ZGlmZiAtLWdpdCBhLy5naXRpZ25vcmUgYi8uZ2l0aWdub3JlCmluZGV4IGVkZWQ5YzMuLjI5NDEzMzEgMTAwNjQ0Ci0tLSBhLy5naXRpZ25vcmUKKysrIGIvLmdpdGlnbm9yZQpAQCAtMSwyICsxLDIgQEAKLS9iaW4vDQotL3RhcmdldC8KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCitiaW4vCit0YXJnZXQvClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvLnByb2plY3QgYi8ucHJvamVjdAppbmRleCA2MzIyMWZkLi44YTllOGE0IDEwMDY0NAotLS0gYS8ucHJvamVjdAorKysgYi8ucHJvamVjdApAQCAtMSwxMSArMSwxMSBAQAotPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCi08cHJvamVjdERlc2NyaXB0aW9uPg0KLQk8bmFtZT5vcmcuZWNsaXBzZS5wYXB5cnVzLXJvYm90bWw8L25hbWU+DQotCTxjb21tZW50PjwvY29tbWVudD4NCi0JPHByb2plY3RzPg0KLQk8L3Byb2plY3RzPg0KLQk8YnVpbGRTcGVjPg0KLQk8L2J1aWxkU3BlYz4NCi0JPG5hdHVyZXM+DQotCTwvbmF0dXJlcz4NCi08L3Byb2plY3REZXNjcmlwdGlvbj4NCis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHByb2plY3REZXNjcmlwdGlvbj4KKwk8bmFtZT5vcmcuZWNsaXBzZS5wYXB5cnVzLXJvYm90bWw8L25hbWU+CisJPGNvbW1lbnQ+PC9jb21tZW50PgorCTxwcm9qZWN0cz4KKwk8L3Byb2plY3RzPgorCTxidWlsZFNwZWM+CisJPC9idWlsZFNwZWM+CisJPG5hdHVyZXM+CisJPC9uYXR1cmVzPgorPC9wcm9qZWN0RGVzY3JpcHRpb24+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzLy5naXRpZ25vcmUgYi9nZW5lcmF0b3JzLy5naXRpZ25vcmUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGJlNjEyOQotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvLmdpdGlnbm9yZQpAQCAtMCwwICsxLDEwIEBACitiaW4vCit0YXJnZXQvCisqLmphdmEuX3RyYWNlCisqLnB5YworLkRTX1N0b3JlCisqLnh0ZW5kYmluCisqLmdtZmdlbi51bWwKKworIyBXb3Jrc3BhY2UgbWV0YWRhdGEgZm9sZGVyIGNyZWF0ZWQgYnkgT29tcGggd2hlbiBsYXVuY2hpbmcgdGVzdHMuCit0ZXN0cy8qKi8ubWV0YWRhdGEvCmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzLy5wcm9qZWN0IGIvZ2VuZXJhdG9ycy8ucHJvamVjdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wNzk0OGRlCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy8ucHJvamVjdApAQCAtMCwwICsxLDE3IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHByb2plY3REZXNjcmlwdGlvbj4KKwk8bmFtZT5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9yczwvbmFtZT4KKwk8Y29tbWVudD48L2NvbW1lbnQ+CisJPHByb2plY3RzPgorCTwvcHJvamVjdHM+CisJPGJ1aWxkU3BlYz4KKwkJPGJ1aWxkQ29tbWFuZD4KKwkJCTxuYW1lPm9yZy5lY2xpcHNlLm0yZS5jb3JlLm1hdmVuMkJ1aWxkZXI8L25hbWU+CisJCQk8YXJndW1lbnRzPgorCQkJPC9hcmd1bWVudHM+CisJCTwvYnVpbGRDb21tYW5kPgorCTwvYnVpbGRTcGVjPgorCTxuYXR1cmVzPgorCQk8bmF0dXJlPm9yZy5lY2xpcHNlLm0yZS5jb3JlLm1hdmVuMk5hdHVyZTwvbmF0dXJlPgorCTwvbmF0dXJlcz4KKzwvcHJvamVjdERlc2NyaXB0aW9uPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuY29yZS5yZXNvdXJjZXMucHJlZnMgYi9nZW5lcmF0b3JzLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5wcmVmcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45OWYyNmMwCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuY29yZS5yZXNvdXJjZXMucHJlZnMKQEAgLTAsMCArMSwyIEBACitlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQorZW5jb2RpbmcvPHByb2plY3Q+PVVURi04CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5tMmUuY29yZS5wcmVmcyBiL2dlbmVyYXRvcnMvLnNldHRpbmdzL29yZy5lY2xpcHNlLm0yZS5jb3JlLnByZWZzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY4OTdhN2YKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5tMmUuY29yZS5wcmVmcwpAQCAtMCwwICsxLDQgQEAKK2FjdGl2ZVByb2ZpbGVzPQorZWNsaXBzZS5wcmVmZXJlbmNlcy52ZXJzaW9uPTEKK3Jlc29sdmVXb3Jrc3BhY2VQcm9qZWN0cz10cnVlCit2ZXJzaW9uPTEKZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLy5jbGFzc3BhdGggYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi8uY2xhc3NwYXRoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc5ODA0OGQKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi8uY2xhc3NwYXRoCkBAIC0wLDAgKzEsNyBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxjbGFzc3BhdGg+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KMlNFLTEuNSIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLnBkZS5jb3JlLnJlcXVpcmVkUGx1Z2lucyIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJzcmMiIHBhdGg9InNyYy8iLz4KKwk8Y2xhc3NwYXRoZW50cnkga2luZD0ib3V0cHV0IiBwYXRoPSJ0YXJnZXQvY2xhc3NlcyIvPgorPC9jbGFzc3BhdGg+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi8ucHJvamVjdCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLy5wcm9qZWN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI3YzJmZWMKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi8ucHJvamVjdApAQCAtMCwwICsxLDQ4IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHByb2plY3REZXNjcmlwdGlvbj4KKwk8bmFtZT5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb248L25hbWU+CisJPGNvbW1lbnQ+PC9jb21tZW50PgorCTxwcm9qZWN0cz4KKwk8L3Byb2plY3RzPgorCTxidWlsZFNwZWM+CisJCTxidWlsZENvbW1hbmQ+CisJCQk8bmFtZT5vcmcuZWNsaXBzZS5qZHQuY29yZS5qYXZhYnVpbGRlcjwvbmFtZT4KKwkJCTxhcmd1bWVudHM+CisJCQk8L2FyZ3VtZW50cz4KKwkJPC9idWlsZENvbW1hbmQ+CisJCTxidWlsZENvbW1hbmQ+CisJCQk8bmFtZT5vcmcuZWNsaXBzZS5wZGUuTWFuaWZlc3RCdWlsZGVyPC9uYW1lPgorCQkJPGFyZ3VtZW50cz4KKwkJCTwvYXJndW1lbnRzPgorCQk8L2J1aWxkQ29tbWFuZD4KKwkJPGJ1aWxkQ29tbWFuZD4KKwkJCTxuYW1lPm9yZy5lY2xpcHNlLnBkZS5TY2hlbWFCdWlsZGVyPC9uYW1lPgorCQkJPGFyZ3VtZW50cz4KKwkJCTwvYXJndW1lbnRzPgorCQk8L2J1aWxkQ29tbWFuZD4KKwkJPGJ1aWxkQ29tbWFuZD4KKwkJCTxuYW1lPm9yZy5lY2xpcHNlLmFjY2VsZW8uaWRlLnVpLmFjY2VsZW9CdWlsZGVyPC9uYW1lPgorCQkJPGFyZ3VtZW50cz4KKwkJCQk8ZGljdGlvbmFyeT4KKwkJCQkJPGtleT5jb21wbGlhbmNlPC9rZXk+CisJCQkJCTx2YWx1ZT5wcmFnbWF0aWM8L3ZhbHVlPgorCQkJCTwvZGljdGlvbmFyeT4KKwkJCQk8ZGljdGlvbmFyeT4KKwkJCQkJPGtleT5yZXNvdXJjZS5raW5kPC9rZXk+CisJCQkJCTx2YWx1ZT54bWk8L3ZhbHVlPgorCQkJCTwvZGljdGlvbmFyeT4KKwkJCTwvYXJndW1lbnRzPgorCQk8L2J1aWxkQ29tbWFuZD4KKwkJPGJ1aWxkQ29tbWFuZD4KKwkJCTxuYW1lPm9yZy5lY2xpcHNlLm0yZS5jb3JlLm1hdmVuMkJ1aWxkZXI8L25hbWU+CisJCQk8YXJndW1lbnRzPgorCQkJPC9hcmd1bWVudHM+CisJCTwvYnVpbGRDb21tYW5kPgorCTwvYnVpbGRTcGVjPgorCTxuYXR1cmVzPgorCQk8bmF0dXJlPm9yZy5lY2xpcHNlLm0yZS5jb3JlLm1hdmVuMk5hdHVyZTwvbmF0dXJlPgorCQk8bmF0dXJlPm9yZy5lY2xpcHNlLmFjY2VsZW8uaWRlLnVpLmFjY2VsZW9OYXR1cmU8L25hdHVyZT4KKwkJPG5hdHVyZT5vcmcuZWNsaXBzZS5wZGUuUGx1Z2luTmF0dXJlPC9uYXR1cmU+CisJCTxuYXR1cmU+b3JnLmVjbGlwc2UuamR0LmNvcmUuamF2YW5hdHVyZTwvbmF0dXJlPgorCTwvbmF0dXJlcz4KKzwvcHJvamVjdERlc2NyaXB0aW9uPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vLnNldHRpbmdzL29yZy5lY2xpcHNlLmNvcmUucmVzb3VyY2VzLnByZWZzIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vLnNldHRpbmdzL29yZy5lY2xpcHNlLmNvcmUucmVzb3VyY2VzLnByZWZzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk5ZjI2YzAKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuY29yZS5yZXNvdXJjZXMucHJlZnMKQEAgLTAsMCArMSwyIEBACitlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQorZW5jb2RpbmcvPHByb2plY3Q+PVVURi04CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDE2ZjRmYgotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcwpAQCAtMCwwICsxLDExIEBACitlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi5pbmxpbmVKc3JCeXRlY29kZT1lbmFibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnRhcmdldFBsYXRmb3JtPTEuNQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi51bnVzZWRMb2NhbD1wcmVzZXJ2ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29tcGxpYW5jZT0xLjUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLmxpbmVOdW1iZXI9Z2VuZXJhdGUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLmxvY2FsVmFyaWFibGU9Z2VuZXJhdGUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLnNvdXJjZUZpbGU9Z2VuZXJhdGUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uYXNzZXJ0SWRlbnRpZmllcj1lcnJvcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbnVtSWRlbnRpZmllcj1lcnJvcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuc291cmNlPTEuNQpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vLnNldHRpbmdzL29yZy5lY2xpcHNlLm0yZS5jb3JlLnByZWZzIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vLnNldHRpbmdzL29yZy5lY2xpcHNlLm0yZS5jb3JlLnByZWZzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY4OTdhN2YKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UubTJlLmNvcmUucHJlZnMKQEAgLTAsMCArMSw0IEBACithY3RpdmVQcm9maWxlcz0KK2VjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCityZXNvbHZlV29ya3NwYWNlUHJvamVjdHM9dHJ1ZQordmVyc2lvbj0xCmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9NRVRBLUlORi9NQU5JRkVTVC5NRiBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL01FVEEtSU5GL01BTklGRVNULk1GCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdiNTdhNGQKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9NRVRBLUlORi9NQU5JRkVTVC5NRgpAQCAtMCwwICsxLDMwIEBACitNYW5pZmVzdC1WZXJzaW9uOiAxLjAKK0V4cG9ydC1QYWNrYWdlOiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24sCisgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllczsgdXNlczo9Im9yZy5lY2xpcHNlLmVtZi5lY29yZS5yZXNvdXJjZSwKKyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUsCisgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLAorIG9yZy5lY2xpcHNlLmFjY2VsZW8uZW5naW5lLmdlbmVyYXRpb24uc3RyYXRlZ3ksCisgb3JnLmVjbGlwc2UudW1sMi51bWwsCisgb3JnLmVjbGlwc2UuYWNjZWxlby5lbmdpbmUuc2VydmljZSIKK1JlcXVpcmUtQnVuZGxlOiBvcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWUsCisgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLAorIG9yZy5lY2xpcHNlLmVtZi5lY29yZS54bWksCisgb3JnLmVjbGlwc2Uub2NsLAorIG9yZy5lY2xpcHNlLm9jbC5lY29yZSwKKyBvcmcuZWNsaXBzZS5hY2NlbGVvLmNvbW1vbjtidW5kbGUtdmVyc2lvbj0iMy4xLjAiLAorIG9yZy5lY2xpcHNlLmFjY2VsZW8ucGFyc2VyO2J1bmRsZS12ZXJzaW9uPSIzLjEuMCIsCisgb3JnLmVjbGlwc2UuYWNjZWxlby5tb2RlbDtidW5kbGUtdmVyc2lvbj0iMy4xLjAiLAorIG9yZy5lY2xpcHNlLmFjY2VsZW8ucHJvZmlsZXI7YnVuZGxlLXZlcnNpb249IjMuMS4wIiwKKyBvcmcuZWNsaXBzZS5hY2NlbGVvLmVuZ2luZTtidW5kbGUtdmVyc2lvbj0iMy4xLjAiLAorIG9yZy5lY2xpcHNlLnVtbDIudW1sO2J1bmRsZS12ZXJzaW9uPSIzLjEuMiIsCisgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sO2J1bmRsZS12ZXJzaW9uPSIxLjIuMCIsCisgb3JnLmVjbGlwc2UucGFweXJ1cy51bWwudG9vbHMudXRpbHM7YnVuZGxlLXZlcnNpb249IjEuMi4wIgorQnVuZGxlLVZlbmRvcjogRWNsaXBzZSBNb2RlbGluZyBQcm9qZWN0CitFY2xpcHNlLUxhenlTdGFydDogdHJ1ZQorQnVuZGxlLUFjdGl2YXRpb25Qb2xpY3k6IGxhenkKK0J1bmRsZS1WZXJzaW9uOiAxLjIuMC5xdWFsaWZpZXIKK0J1bmRsZS1OYW1lOiBSb2JvdE1MIGdlbmVyYXRvcnMgY29tbW9uIHF1ZXJpZXMgKEluY3ViYXRpb24pCitCdW5kbGUtQWN0aXZhdG9yOiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24uQWN0aXZhdG9yCitCdW5kbGUtTWFuaWZlc3RWZXJzaW9uOiAyCitCdW5kbGUtU3ltYm9saWNOYW1lOiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24KK0J1bmRsZS1SZXF1aXJlZEV4ZWN1dGlvbkVudmlyb25tZW50OiBKMlNFLTEuNQpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYWJvdXQuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Fib3V0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjE3MzIxZgotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Fib3V0Lmh0bWwKQEAgLTAsMCArMSwyOCBAQAorPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgU3RyaWN0Ly9FTiIKKyAgICAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtc3RyaWN0LmR0ZCI+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Cis8aGVhZD4KKzxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEiLz4KKzx0aXRsZT5BYm91dDwvdGl0bGU+Cis8L2hlYWQ+Cis8Ym9keSBsYW5nPSJFTi1VUyI+Cis8aDI+QWJvdXQgVGhpcyBDb250ZW50PC9oMj4KKyAKKzxwPkp1bHkgMjMsIDIwMTM8L3A+CQorPGgzPkxpY2Vuc2U8L2gzPgorCis8cD5UaGUgRWNsaXBzZSBGb3VuZGF0aW9uIG1ha2VzIGF2YWlsYWJsZSBhbGwgY29udGVudCBpbiB0aGlzIHBsdWctaW4gKCZxdW90O0NvbnRlbnQmcXVvdDspLiAgVW5sZXNzIG90aGVyd2lzZSAKK2luZGljYXRlZCBiZWxvdywgdGhlIENvbnRlbnQgaXMgcHJvdmlkZWQgdG8geW91IHVuZGVyIHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB0aGUKK0VjbGlwc2UgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAxLjAgKCZxdW90O0VQTCZxdW90OykuICBBIGNvcHkgb2YgdGhlIEVQTCBpcyBhdmFpbGFibGUgCithdCA8YSBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbCI+aHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWw8L2E+LgorRm9yIHB1cnBvc2VzIG9mIHRoZSBFUEwsICZxdW90O1Byb2dyYW0mcXVvdDsgd2lsbCBtZWFuIHRoZSBDb250ZW50LjwvcD4KKworPHA+SWYgeW91IGRpZCBub3QgcmVjZWl2ZSB0aGlzIENvbnRlbnQgZGlyZWN0bHkgZnJvbSB0aGUgRWNsaXBzZSBGb3VuZGF0aW9uLCB0aGUgQ29udGVudCBpcyAKK2JlaW5nIHJlZGlzdHJpYnV0ZWQgYnkgYW5vdGhlciBwYXJ0eSAoJnF1b3Q7UmVkaXN0cmlidXRvciZxdW90OykgYW5kIGRpZmZlcmVudCB0ZXJtcyBhbmQgY29uZGl0aW9ucyBtYXkKK2FwcGx5IHRvIHlvdXIgdXNlIG9mIGFueSBvYmplY3QgY29kZSBpbiB0aGUgQ29udGVudC4gIENoZWNrIHRoZSBSZWRpc3RyaWJ1dG9yJ3MgbGljZW5zZSB0aGF0IHdhcyAKK3Byb3ZpZGVkIHdpdGggdGhlIENvbnRlbnQuICBJZiBubyBzdWNoIGxpY2Vuc2UgZXhpc3RzLCBjb250YWN0IHRoZSBSZWRpc3RyaWJ1dG9yLiAgVW5sZXNzIG90aGVyd2lzZQoraW5kaWNhdGVkIGJlbG93LCB0aGUgdGVybXMgYW5kIGNvbmRpdGlvbnMgb2YgdGhlIEVQTCBzdGlsbCBhcHBseSB0byBhbnkgc291cmNlIGNvZGUgaW4gdGhlIENvbnRlbnQKK2FuZCBzdWNoIHNvdXJjZSBjb2RlIG1heSBiZSBvYnRhaW5lZCBhdCA8YSBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnLyI+aHR0cDovL3d3dy5lY2xpcHNlLm9yZzwvYT4uPC9wPgorCis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9idWlsZC5hY2NlbGVvIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYnVpbGQuYWNjZWxlbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mYjE0ZGNmCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYnVpbGQuYWNjZWxlbwpAQCAtMCwwICsxLDI2IEBACis8IS0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KKzwhLS0gQ3VzdG9tIHRhcmdldHMuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tPgorPCEtLSBTZXQgY3VzdG9tQnVpbGRDYWxsYmFja3MgPSBidWlsZC5hY2NlbGVvIGluIHlvdXIgYnVpbGQucHJvcGVydGllcy4gICAgLS0+Cis8IS0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KKzxwcm9qZWN0IG5hbWU9IkJ1aWxkIEFjY2VsZW8gTW9kdWxlIiBkZWZhdWx0PSJub0RlZmF1bHQiPiAgICAKKyAgICA8IS0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgorICAgIDwhLS0gRGVmYXVsdCB0YXJnZXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0+CisgICAgPCEtLSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KKyAgICA8dGFyZ2V0IG5hbWU9Im5vRGVmYXVsdCI+CisgICAgICAgIDxlY2hvIG1lc3NhZ2U9IlRoaXMgZmlsZSBtdXN0IGJlIGNhbGxlZCB3aXRoIGV4cGxpY2l0IHRhcmdldHMiIC8+CisgICAgPC90YXJnZXQ+CisKKyAgICA8IS0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgorICAgIDwhLS0gVGhpcyB3aWxsIGJlIGNhbGxlZCBhdXRvbWF0aWNhbGx5IGFmdGVyIHRoZSBjb21waWxhdGlvbiBvZiBlYWNoICAgLS0+CisgICAgPCEtLSBCdW5kbGUuLi4gaW4gZGVwZW5kZW5jeSBvcmRlci4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLT4KKyAgICA8IS0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgorICAgIDx0YXJnZXQgbmFtZT0icG9zdC5jb21waWxlLkBkb3QiPgorICAgICAgICA8YWNjZWxlb0NvbXBpbGVyIAorICAgICAgICAgICAgc291cmNlRm9sZGVyPSIke3RhcmdldC5mb2xkZXJ9IgorICAgICAgICAgICAgb3V0cHV0Rm9sZGVyPSIke3RhcmdldC5mb2xkZXJ9IgorICAgICAgICAgICAgZGVwZW5kZW5jaWVzPSIiCisgICAgICAgICAgICBiaW5hcnlSZXNvdXJjZT0iZmFsc2UiCisgICAgICAgICAgICBwYWNrYWdlc1RvUmVnaXN0ZXI9IiI+CisgICAgICAgIDwvYWNjZWxlb0NvbXBpbGVyPgorICAgIDwvdGFyZ2V0PiAgICAKKzwvcHJvamVjdD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2J1aWxkLnByb3BlcnRpZXMgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9idWlsZC5wcm9wZXJ0aWVzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZmOTBlNzMKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9idWlsZC5wcm9wZXJ0aWVzCkBAIC0wLDAgKzEsOSBAQAorc291cmNlLi4gPSBzcmMvCitvdXRwdXQuLiA9IGJpbi8KK2Jpbi5pbmNsdWRlcyA9IE1FVEEtSU5GLyxcCisgICAgICAgICAgICAgICAuLFwKKyAgICAgICAgICAgICAgIGFib3V0Lmh0bWwKK2N1c3RvbUJ1aWxkQ2FsbGJhY2tzID0gYnVpbGQuYWNjZWxlbworc3JjLmluY2x1ZGVzID0gLmNsYXNzcGF0aCxcCisgICAgICAgICAgICAgICBidWlsZC5wcm9wZXJ0aWVzLFwKKyAgICAgICAgICAgICAgIGFib3V0Lmh0bWwKZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2NvbmZpZ18xLnhtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2NvbmZpZ18xLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NzgyMDlhCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vY29uZmlnXzEueG1sCkBAIC0wLDAgKzEsMzcgQEAKKzxjb25maWc+CisKKwk8IS0tIFVzZXIgbGlicmFyaWVzICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrIC0tPgorCTx1c2VyLWxpYnJhcmllcz4KKwkJPGxpYnJhcnk+bGliQmFzaWNGbHlpbmcuc288L2xpYnJhcnk+CisJPC91c2VyLWxpYnJhcmllcz4KKworCTwhLS0gTWF0bGFiIGNvbmZpZ3VyYXRpb24gKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysgLS0+CisJPE1hdGxhYiBpbml0U3RyaW5nPSIiPgorCQk8YWRkMnBhdGg+LjwvYWRkMnBhdGg+CisJPC9NYXRsYWI+CisKKwk8IS0tIEVudmlyb25tZW50IGNvbmZpZ3VyYXRpb24gKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysgLS0+CisJPEVudmlyb25tZW50PnRlcnJhaW4vbG9jYWxzLnhtbDwvRW52aXJvbm1lbnQ+CisKKwk8IS0tIFJvb3QgOiBSb290ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrIC0tPgorCTxpbnN0YW5jZSBwcm90bz0iUm9vdCIgbmFtZT0iUm9vdCI+CisJCQorCQk8Y3ljbGU+PExvbmc+MTwvTG9uZz48L2N5Y2xlPgorCQk8dGltZT48TG9uZz4xPC9Mb25nPjwvdGltZT4KKwkJPHRpbWVzdGVwPjxMb25nPjE8L0xvbmc+PC90aW1lc3RlcD4KKwkJCisJCTwhLS0gYWlyY3JhZnQgOiBBaXJjcmFmdCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKyAtLT4KKwkJPGluc3RhbmNlIHByb3RvPSJBaXJjcmFmdCIgbmFtZT0iVTEiPgorCQkJCisJCQk8TklEPjxMb25nPjE8L0xvbmc+PC9OSUQ+CisKKwkJPC9pbnN0YW5jZT4gCisJCTwhLS0gZW9mIGFpcmNyYWZ0IDogQWlyY3JhZnQgLS0+CisJCTwhLS0gKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKyAtLT4JCQorCQkKKwk8L2luc3RhbmNlPiAKKwk8IS0tIGVvZiBSb290IDogUm9vdCAtLT4KKwk8IS0tICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysgLS0+CisJCisKKzwvY29uZmlnPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL2FsbGNsYXNzZXMtZnJhbWUuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9hbGxjbGFzc2VzLWZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDZmNGZhNgotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9hbGxjbGFzc2VzLWZyYW1lLmh0bWwKQEAgLTAsMCArMSw0MyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNi4wXzI0KSBvbiBXZWQgT2N0IDE3IDE5OjMzOjA1IENFU1QgMjAxMiAtLT4KKzxUSVRMRT4KK0FsbCBDbGFzc2VzCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJkYXRlIiBDT05URU5UPSIyMDEyLTEwLTE3Ij4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9InN0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiPgorPEZPTlQgc2l6ZT0iKzEiIENMQVNTPSJGcmFtZUhlYWRpbmdGb250Ij4KKzxCPkFsbCBDbGFzc2VzPC9CPjwvRk9OVD4KKzxCUj4KKworPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgTk9XUkFQPjxGT05UIENMQVNTPSJGcmFtZUl0ZW1Gb250Ij48QSBIUkVGPSJvcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9BY3RpdmF0b3IuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbiIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5BY3RpdmF0b3I8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5BcmNoaXRlY3R1cmVRdWVyaWVzPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5EYXRhVHlwZVF1ZXJpZXM8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRGVwbG95bWVudFF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiIHRhcmdldD0iY2xhc3NGcmFtZSI+RGVwbG95bWVudFF1ZXJpZXM8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRlNNUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5GU01RdWVyaWVzPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkdlbmVyYWxRdWVyaWVzPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5NTVF1ZXJpZXM8L0E+Cis8QlI+Cis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2MvYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2MvYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGFmNGNjZAotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbApAQCAtMCwwICsxLDQzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS42LjBfMjQpIG9uIFdlZCBPY3QgMTcgMTk6MzM6MDUgQ0VTVCAyMDEyIC0tPgorPFRJVExFPgorQWxsIENsYXNzZXMKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImRhdGUiIENPTlRFTlQ9IjIwMTItMTAtMTciPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0ic3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSI+Cis8Rk9OVCBzaXplPSIrMSIgQ0xBU1M9IkZyYW1lSGVhZGluZ0ZvbnQiPgorPEI+QWxsIENsYXNzZXM8L0I+PC9GT05UPgorPEJSPgorCis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBOT1dSQVA+PEZPTlQgQ0xBU1M9IkZyYW1lSXRlbUZvbnQiPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uIj5BY3RpdmF0b3I8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+QXJjaGl0ZWN0dXJlUXVlcmllczwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkRhdGFUeXBlUXVlcmllczwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EZXBsb3ltZW50UXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+RGVwbG95bWVudFF1ZXJpZXM8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRlNNUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+RlNNUXVlcmllczwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+R2VuZXJhbFF1ZXJpZXM8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5NTVF1ZXJpZXM8L0E+Cis8QlI+Cis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2MvY29uc3RhbnQtdmFsdWVzLmh0bWwgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2MvY29uc3RhbnQtdmFsdWVzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjU3YzU4MgotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9jb25zdGFudC12YWx1ZXMuaHRtbApAQCAtMCwwICsxLDE5MiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNi4wXzI0KSBvbiBXZWQgT2N0IDE3IDE5OjMzOjA1IENFU1QgMjAxMiAtLT4KKzxUSVRMRT4KK0NvbnN0YW50IEZpZWxkIFZhbHVlcworPC9USVRMRT4KKworPE1FVEEgTkFNRT0iZGF0ZSIgQ09OVEVOVD0iMjAxMi0xMC0xNyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSJzdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIGlmIChsb2NhdGlvbi5ocmVmLmluZGV4T2YoJ2lzLWV4dGVybmFsPXRydWUnKSA9PSAtMSkgeworICAgICAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkNvbnN0YW50IEZpZWxkIFZhbHVlcyI7CisgICAgfQorfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKzxIUj4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Im92ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJvdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJkZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImluZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJoZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9ImluZGV4Lmh0bWw/Y29uc3RhbnQtdmFsdWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iY29uc3RhbnQtdmFsdWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9ImFsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMT4KK0NvbnN0YW50IEZpZWxkIFZhbHVlczwvSDE+Cis8L0NFTlRFUj4KKzxIUiBTSVpFPSI0IiBOT1NIQURFPgorPEI+Q29udGVudHM8L0I+PFVMPgorPExJPjxBIEhSRUY9IiNvcmcuZWNsaXBzZSI+b3JnLmVjbGlwc2UuKjwvQT4KKzwvVUw+CisKKzxBIE5BTUU9Im9yZy5lY2xpcHNlIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEZPTlQgU0laRT0iKzIiPgorb3JnLmVjbGlwc2UuKjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMyI+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uIj5BY3RpdmF0b3I8L0E+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5BY3RpdmF0b3IuUExVR0lOX0lEIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sI1BMVUdJTl9JRCI+UExVR0lOX0lEPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbiI8L0NPREU+PC9URD4KKzwvVFI+Cis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorCis8UD4KKworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIzIj5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPk1NUXVlcmllczwvQT48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5NTVF1ZXJpZXMuTU9EVUxFX0ZJTEVfTkFNRSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwjTU9EVUxFX0ZJTEVfTkFNRSI+TU9EVUxFX0ZJTEVfTkFNRTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPiJNTVF1ZXJpZXMiPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKworPFA+CisKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0ib3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Im92ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImRlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImhlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iaW5kZXguaHRtbD9jb25zdGFudC12YWx1ZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJjb25zdGFudC12YWx1ZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSJhbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9kZXByZWNhdGVkLWxpc3QuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9kZXByZWNhdGVkLWxpc3QuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NzFkNjM5Ci0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL2RlcHJlY2F0ZWQtbGlzdC5odG1sCkBAIC0wLDAgKzEsMTc2IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS42LjBfMjQpIG9uIFdlZCBPY3QgMTcgMTk6MzM6MDUgQ0VTVCAyMDEyIC0tPgorPFRJVExFPgorRGVwcmVjYXRlZCBMaXN0Cis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJkYXRlIiBDT05URU5UPSIyMDEyLTEwLTE3Ij4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9InN0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgaWYgKGxvY2F0aW9uLmhyZWYuaW5kZXhPZignaXMtZXh0ZXJuYWw9dHJ1ZScpID09IC0xKSB7CisgICAgICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iRGVwcmVjYXRlZCBMaXN0IjsKKyAgICB9Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorPEhSPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0ib3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Im92ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImluZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJoZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9ImluZGV4Lmh0bWw/ZGVwcmVjYXRlZC1saXN0Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iZGVwcmVjYXRlZC1saXN0Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9ImFsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPkRlcHJlY2F0ZWQgQVBJPC9CPjwvSDI+Cis8L0NFTlRFUj4KKzxIUiBTSVpFPSI0IiBOT1NIQURFPgorPEI+Q29udGVudHM8L0I+PFVMPgorPExJPjxBIEhSRUY9IiNtZXRob2QiPkRlcHJlY2F0ZWQgTWV0aG9kczwvQT4KKzwvVUw+CisKKzxBIE5BTUU9Im1ldGhvZCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkRlcHJlY2F0ZWQgTWV0aG9kczwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSJvcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNnZXRFbGVtZW50c1dpdGhJbmhlcml0ZWRTdGVyZW90eXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsLCBqYXZhLmxhbmcuU3RyaW5nKSI+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5HZW5lcmFsUXVlcmllcy5nZXRFbGVtZW50c1dpdGhJbmhlcml0ZWRTdGVyZW90eXBlKE1vZGVsLCBTdHJpbmcpPC9BPgorPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PEk+dG8gYmUgcmVwbGFjZWQgd2l0aCBjYWxscyB0byB0aGUgUm9ib3RNTCBBUEkuIFJlcGxhY2VkIGJ5IGdldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUgKE1vZGVsIG1vZGVsLCBTdGVyZW90eXBlQ2xhc3Mgc2MpPC9JPiZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0ib3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCwgamF2YS5sYW5nLlN0cmluZykiPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuR2VuZXJhbFF1ZXJpZXMuZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZShNb2RlbCwgU3RyaW5nKTwvQT4KKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxJPnRvIGJlIHJlcGxhY2VkIHdpdGggY2FsbHMgdG8gdGhlIFJvYm90TUwgQVBJLiBSZXBsYWNlZCBieSBnZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlIChNb2RlbCBtb2RlbCwgU3RlcmVvdHlwZUNsYXNzIHNjKTwvST4mbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudFdpdGhTdGVyZW90eXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzLCBqYXZhLmxhbmcuU3RyaW5nKSI+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzLmdldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnRXaXRoU3RlcmVvdHlwZShDbGFzcywgU3RyaW5nKTwvQT4KKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxJPnJlcGxhY2VkIGJ5IGdldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnQob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgYykgd2hpY2ggdXNlcyB0aGUgUm9ib3RNTCBBUEkgaW5zdGVhZCBvZiBzdGVyZW90eXBlIG5hbWVzLjwvST4mbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI2dldFN0ZXJlb3R5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkdlbmVyYWxRdWVyaWVzLmdldFN0ZXJlb3R5cGUoQ2xhc3MpPC9BPgorPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PEk+c3VwZXJzZWRlZCBieSB0aGUgUm9ib3RNTCBBUEkuPC9JPiZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJvdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0ib3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImhlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iaW5kZXguaHRtbD9kZXByZWNhdGVkLWxpc3QuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJkZXByZWNhdGVkLWxpc3QuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSJhbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9oZWxwLWRvYy5odG1sIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL2hlbHAtZG9jLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmU3YWY0OAotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9oZWxwLWRvYy5odG1sCkBAIC0wLDAgKzEsMjIzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS42LjBfMjQpIG9uIFdlZCBPY3QgMTcgMTk6MzM6MDUgQ0VTVCAyMDEyIC0tPgorPFRJVExFPgorQVBJIEhlbHAKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImRhdGUiIENPTlRFTlQ9IjIwMTItMTAtMTciPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0ic3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBpZiAobG9jYXRpb24uaHJlZi5pbmRleE9mKCdpcy1leHRlcm5hbD10cnVlJykgPT0gLTEpIHsKKyAgICAgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJBUEkgSGVscCI7CisgICAgfQorfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKzxIUj4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Im92ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJvdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJkZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImluZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkhlbHA8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iaW5kZXguaHRtbD9oZWxwLWRvYy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImhlbHAtZG9jLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9ImFsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMT4KK0hvdyBUaGlzIEFQSSBEb2N1bWVudCBJcyBPcmdhbml6ZWQ8L0gxPgorPC9DRU5URVI+CitUaGlzIEFQSSAoQXBwbGljYXRpb24gUHJvZ3JhbW1pbmcgSW50ZXJmYWNlKSBkb2N1bWVudCBoYXMgcGFnZXMgY29ycmVzcG9uZGluZyB0byB0aGUgaXRlbXMgaW4gdGhlIG5hdmlnYXRpb24gYmFyLCBkZXNjcmliZWQgYXMgZm9sbG93cy48SDM+CitPdmVydmlldzwvSDM+Cis8QkxPQ0tRVU9URT4KKworPFA+CitUaGUgPEEgSFJFRj0ib3ZlcnZpZXctc3VtbWFyeS5odG1sIj5PdmVydmlldzwvQT4gcGFnZSBpcyB0aGUgZnJvbnQgcGFnZSBvZiB0aGlzIEFQSSBkb2N1bWVudCBhbmQgcHJvdmlkZXMgYSBsaXN0IG9mIGFsbCBwYWNrYWdlcyB3aXRoIGEgc3VtbWFyeSBmb3IgZWFjaC4gIFRoaXMgcGFnZSBjYW4gYWxzbyBjb250YWluIGFuIG92ZXJhbGwgZGVzY3JpcHRpb24gb2YgdGhlIHNldCBvZiBwYWNrYWdlcy48L0JMT0NLUVVPVEU+Cis8SDM+CitQYWNrYWdlPC9IMz4KKzxCTE9DS1FVT1RFPgorCis8UD4KK0VhY2ggcGFja2FnZSBoYXMgYSBwYWdlIHRoYXQgY29udGFpbnMgYSBsaXN0IG9mIGl0cyBjbGFzc2VzIGFuZCBpbnRlcmZhY2VzLCB3aXRoIGEgc3VtbWFyeSBmb3IgZWFjaC4gVGhpcyBwYWdlIGNhbiBjb250YWluIGZvdXIgY2F0ZWdvcmllczo8VUw+Cis8TEk+SW50ZXJmYWNlcyAoaXRhbGljKTxMST5DbGFzc2VzPExJPkVudW1zPExJPkV4Y2VwdGlvbnM8TEk+RXJyb3JzPExJPkFubm90YXRpb24gVHlwZXM8L1VMPgorPC9CTE9DS1FVT1RFPgorPEgzPgorQ2xhc3MvSW50ZXJmYWNlPC9IMz4KKzxCTE9DS1FVT1RFPgorCis8UD4KK0VhY2ggY2xhc3MsIGludGVyZmFjZSwgbmVzdGVkIGNsYXNzIGFuZCBuZXN0ZWQgaW50ZXJmYWNlIGhhcyBpdHMgb3duIHNlcGFyYXRlIHBhZ2UuIEVhY2ggb2YgdGhlc2UgcGFnZXMgaGFzIHRocmVlIHNlY3Rpb25zIGNvbnNpc3Rpbmcgb2YgYSBjbGFzcy9pbnRlcmZhY2UgZGVzY3JpcHRpb24sIHN1bW1hcnkgdGFibGVzLCBhbmQgZGV0YWlsZWQgbWVtYmVyIGRlc2NyaXB0aW9uczo8VUw+Cis8TEk+Q2xhc3MgaW5oZXJpdGFuY2UgZGlhZ3JhbTxMST5EaXJlY3QgU3ViY2xhc3NlczxMST5BbGwgS25vd24gU3ViaW50ZXJmYWNlczxMST5BbGwgS25vd24gSW1wbGVtZW50aW5nIENsYXNzZXM8TEk+Q2xhc3MvaW50ZXJmYWNlIGRlY2xhcmF0aW9uPExJPkNsYXNzL2ludGVyZmFjZSBkZXNjcmlwdGlvbgorPFA+Cis8TEk+TmVzdGVkIENsYXNzIFN1bW1hcnk8TEk+RmllbGQgU3VtbWFyeTxMST5Db25zdHJ1Y3RvciBTdW1tYXJ5PExJPk1ldGhvZCBTdW1tYXJ5Cis8UD4KKzxMST5GaWVsZCBEZXRhaWw8TEk+Q29uc3RydWN0b3IgRGV0YWlsPExJPk1ldGhvZCBEZXRhaWw8L1VMPgorRWFjaCBzdW1tYXJ5IGVudHJ5IGNvbnRhaW5zIHRoZSBmaXJzdCBzZW50ZW5jZSBmcm9tIHRoZSBkZXRhaWxlZCBkZXNjcmlwdGlvbiBmb3IgdGhhdCBpdGVtLiBUaGUgc3VtbWFyeSBlbnRyaWVzIGFyZSBhbHBoYWJldGljYWwsIHdoaWxlIHRoZSBkZXRhaWxlZCBkZXNjcmlwdGlvbnMgYXJlIGluIHRoZSBvcmRlciB0aGV5IGFwcGVhciBpbiB0aGUgc291cmNlIGNvZGUuIFRoaXMgcHJlc2VydmVzIHRoZSBsb2dpY2FsIGdyb3VwaW5ncyBlc3RhYmxpc2hlZCBieSB0aGUgcHJvZ3JhbW1lci48L0JMT0NLUVVPVEU+Cis8L0JMT0NLUVVPVEU+Cis8SDM+CitBbm5vdGF0aW9uIFR5cGU8L0gzPgorPEJMT0NLUVVPVEU+CisKKzxQPgorRWFjaCBhbm5vdGF0aW9uIHR5cGUgaGFzIGl0cyBvd24gc2VwYXJhdGUgcGFnZSB3aXRoIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6PFVMPgorPExJPkFubm90YXRpb24gVHlwZSBkZWNsYXJhdGlvbjxMST5Bbm5vdGF0aW9uIFR5cGUgZGVzY3JpcHRpb248TEk+UmVxdWlyZWQgRWxlbWVudCBTdW1tYXJ5PExJPk9wdGlvbmFsIEVsZW1lbnQgU3VtbWFyeTxMST5FbGVtZW50IERldGFpbDwvVUw+Cis8L0JMT0NLUVVPVEU+Cis8L0JMT0NLUVVPVEU+Cis8SDM+CitFbnVtPC9IMz4KKzxCTE9DS1FVT1RFPgorCis8UD4KK0VhY2ggZW51bSBoYXMgaXRzIG93biBzZXBhcmF0ZSBwYWdlIHdpdGggdGhlIGZvbGxvd2luZyBzZWN0aW9uczo8VUw+Cis8TEk+RW51bSBkZWNsYXJhdGlvbjxMST5FbnVtIGRlc2NyaXB0aW9uPExJPkVudW0gQ29uc3RhbnQgU3VtbWFyeTxMST5FbnVtIENvbnN0YW50IERldGFpbDwvVUw+Cis8L0JMT0NLUVVPVEU+Cis8SDM+CitVc2U8L0gzPgorPEJMT0NLUVVPVEU+CitFYWNoIGRvY3VtZW50ZWQgcGFja2FnZSwgY2xhc3MgYW5kIGludGVyZmFjZSBoYXMgaXRzIG93biBVc2UgcGFnZS4gIFRoaXMgcGFnZSBkZXNjcmliZXMgd2hhdCBwYWNrYWdlcywgY2xhc3NlcywgbWV0aG9kcywgY29uc3RydWN0b3JzIGFuZCBmaWVsZHMgdXNlIGFueSBwYXJ0IG9mIHRoZSBnaXZlbiBjbGFzcyBvciBwYWNrYWdlLiBHaXZlbiBhIGNsYXNzIG9yIGludGVyZmFjZSBBLCBpdHMgVXNlIHBhZ2UgaW5jbHVkZXMgc3ViY2xhc3NlcyBvZiBBLCBmaWVsZHMgZGVjbGFyZWQgYXMgQSwgbWV0aG9kcyB0aGF0IHJldHVybiBBLCBhbmQgbWV0aG9kcyBhbmQgY29uc3RydWN0b3JzIHdpdGggcGFyYW1ldGVycyBvZiB0eXBlIEEuICBZb3UgY2FuIGFjY2VzcyB0aGlzIHBhZ2UgYnkgZmlyc3QgZ29pbmcgdG8gdGhlIHBhY2thZ2UsIGNsYXNzIG9yIGludGVyZmFjZSwgdGhlbiBjbGlja2luZyBvbiB0aGUgIlVzZSIgbGluayBpbiB0aGUgbmF2aWdhdGlvbiBiYXIuPC9CTE9DS1FVT1RFPgorPEgzPgorVHJlZSAoQ2xhc3MgSGllcmFyY2h5KTwvSDM+Cis8QkxPQ0tRVU9URT4KK1RoZXJlIGlzIGEgPEEgSFJFRj0ib3ZlcnZpZXctdHJlZS5odG1sIj5DbGFzcyBIaWVyYXJjaHk8L0E+IHBhZ2UgZm9yIGFsbCBwYWNrYWdlcywgcGx1cyBhIGhpZXJhcmNoeSBmb3IgZWFjaCBwYWNrYWdlLiBFYWNoIGhpZXJhcmNoeSBwYWdlIGNvbnRhaW5zIGEgbGlzdCBvZiBjbGFzc2VzIGFuZCBhIGxpc3Qgb2YgaW50ZXJmYWNlcy4gVGhlIGNsYXNzZXMgYXJlIG9yZ2FuaXplZCBieSBpbmhlcml0YW5jZSBzdHJ1Y3R1cmUgc3RhcnRpbmcgd2l0aCA8Y29kZT5qYXZhLmxhbmcuT2JqZWN0PC9jb2RlPi4gVGhlIGludGVyZmFjZXMgZG8gbm90IGluaGVyaXQgZnJvbSA8Y29kZT5qYXZhLmxhbmcuT2JqZWN0PC9jb2RlPi48VUw+Cis8TEk+V2hlbiB2aWV3aW5nIHRoZSBPdmVydmlldyBwYWdlLCBjbGlja2luZyBvbiAiVHJlZSIgZGlzcGxheXMgdGhlIGhpZXJhcmNoeSBmb3IgYWxsIHBhY2thZ2VzLjxMST5XaGVuIHZpZXdpbmcgYSBwYXJ0aWN1bGFyIHBhY2thZ2UsIGNsYXNzIG9yIGludGVyZmFjZSBwYWdlLCBjbGlja2luZyAiVHJlZSIgZGlzcGxheXMgdGhlIGhpZXJhcmNoeSBmb3Igb25seSB0aGF0IHBhY2thZ2UuPC9VTD4KKzwvQkxPQ0tRVU9URT4KKzxIMz4KK0RlcHJlY2F0ZWQgQVBJPC9IMz4KKzxCTE9DS1FVT1RFPgorVGhlIDxBIEhSRUY9ImRlcHJlY2F0ZWQtbGlzdC5odG1sIj5EZXByZWNhdGVkIEFQSTwvQT4gcGFnZSBsaXN0cyBhbGwgb2YgdGhlIEFQSSB0aGF0IGhhdmUgYmVlbiBkZXByZWNhdGVkLiBBIGRlcHJlY2F0ZWQgQVBJIGlzIG5vdCByZWNvbW1lbmRlZCBmb3IgdXNlLCBnZW5lcmFsbHkgZHVlIHRvIGltcHJvdmVtZW50cywgYW5kIGEgcmVwbGFjZW1lbnQgQVBJIGlzIHVzdWFsbHkgZ2l2ZW4uIERlcHJlY2F0ZWQgQVBJcyBtYXkgYmUgcmVtb3ZlZCBpbiBmdXR1cmUgaW1wbGVtZW50YXRpb25zLjwvQkxPQ0tRVU9URT4KKzxIMz4KK0luZGV4PC9IMz4KKzxCTE9DS1FVT1RFPgorVGhlIDxBIEhSRUY9ImluZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+SW5kZXg8L0E+IGNvbnRhaW5zIGFuIGFscGhhYmV0aWMgbGlzdCBvZiBhbGwgY2xhc3NlcywgaW50ZXJmYWNlcywgY29uc3RydWN0b3JzLCBtZXRob2RzLCBhbmQgZmllbGRzLjwvQkxPQ0tRVU9URT4KKzxIMz4KK1ByZXYvTmV4dDwvSDM+CitUaGVzZSBsaW5rcyB0YWtlIHlvdSB0byB0aGUgbmV4dCBvciBwcmV2aW91cyBjbGFzcywgaW50ZXJmYWNlLCBwYWNrYWdlLCBvciByZWxhdGVkIHBhZ2UuPEgzPgorRnJhbWVzL05vIEZyYW1lczwvSDM+CitUaGVzZSBsaW5rcyBzaG93IGFuZCBoaWRlIHRoZSBIVE1MIGZyYW1lcy4gIEFsbCBwYWdlcyBhcmUgYXZhaWxhYmxlIHdpdGggb3Igd2l0aG91dCBmcmFtZXMuCis8UD4KKzxIMz4KK1NlcmlhbGl6ZWQgRm9ybTwvSDM+CitFYWNoIHNlcmlhbGl6YWJsZSBvciBleHRlcm5hbGl6YWJsZSBjbGFzcyBoYXMgYSBkZXNjcmlwdGlvbiBvZiBpdHMgc2VyaWFsaXphdGlvbiBmaWVsZHMgYW5kIG1ldGhvZHMuIFRoaXMgaW5mb3JtYXRpb24gaXMgb2YgaW50ZXJlc3QgdG8gcmUtaW1wbGVtZW50b3JzLCBub3QgdG8gZGV2ZWxvcGVycyB1c2luZyB0aGUgQVBJLiBXaGlsZSB0aGVyZSBpcyBubyBsaW5rIGluIHRoZSBuYXZpZ2F0aW9uIGJhciwgeW91IGNhbiBnZXQgdG8gdGhpcyBpbmZvcm1hdGlvbiBieSBnb2luZyB0byBhbnkgc2VyaWFsaXplZCBjbGFzcyBhbmQgY2xpY2tpbmcgIlNlcmlhbGl6ZWQgRm9ybSIgaW4gdGhlICJTZWUgYWxzbyIgc2VjdGlvbiBvZiB0aGUgY2xhc3MgZGVzY3JpcHRpb24uCis8UD4KKzxIMz4KK0NvbnN0YW50IEZpZWxkIFZhbHVlczwvSDM+CitUaGUgPGEgaHJlZj0iY29uc3RhbnQtdmFsdWVzLmh0bWwiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvYT4gcGFnZSBsaXN0cyB0aGUgc3RhdGljIGZpbmFsIGZpZWxkcyBhbmQgdGhlaXIgdmFsdWVzLgorPFA+Cis8Rk9OVCBTSVpFPSItMSI+Cis8RU0+CitUaGlzIGhlbHAgZmlsZSBhcHBsaWVzIHRvIEFQSSBkb2N1bWVudGF0aW9uIGdlbmVyYXRlZCB1c2luZyB0aGUgc3RhbmRhcmQgZG9jbGV0LjwvRU0+Cis8L0ZPTlQ+Cis8QlI+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJvdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0ib3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJpbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5IZWxwPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9ImluZGV4Lmh0bWw/aGVscC1kb2MuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJoZWxwLWRvYy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9ImFsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSJhbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmU1NzkyMAotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwKQEAgLTAsMCArMSwxNDggQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjYuMF8yNCkgb24gV2VkIE9jdCAxNyAxOTozMzowNSBDRVNUIDIwMTIgLS0+Cis8VElUTEU+CitBLUluZGV4Cis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJkYXRlIiBDT05URU5UPSIyMDEyLTEwLTE3Ij4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgaWYgKGxvY2F0aW9uLmhyZWYuaW5kZXhPZignaXMtZXh0ZXJuYWw9dHJ1ZScpID09IC0xKSB7CisgICAgICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iQS1JbmRleCI7CisgICAgfQorfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKzxIUj4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+SW5kZXg8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYgTEVUVEVSJm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0yLmh0bWwiPjxCPk5FWFQgTEVUVEVSPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uL2luZGV4Lmh0bWw/aW5kZXgtZmlsZXNpbmRleC0xLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5EPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+TTwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPlQ8L0E+IDxIUj4KKzxBIE5BTUU9Il9BXyI+PCEtLSAtLT48L0E+PEgyPgorPEI+QTwvQj48L0gyPgorPERMPgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uIj48Qj5BY3RpdmF0b3I8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb248L0E+PEREPlRoZSBhY3RpdmF0b3IgY2xhc3MgY29udHJvbHMgdGhlIHBsdWctaW4gbGlmZSBjeWNsZS48RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vQWN0aXZhdG9yLmh0bWwjQWN0aXZhdG9yKCkiPjxCPkFjdGl2YXRvcigpPC9CPjwvQT4gLSAKK0NvbnN0cnVjdG9yIGZvciBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24uPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vQWN0aXZhdG9yLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24iPkFjdGl2YXRvcjwvQT4KKzxERD5UaGUgY29uc3RydWN0b3IuCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPjxCPkFyY2hpdGVjdHVyZVF1ZXJpZXM8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllczwvQT48REQ+Jm5ic3A7PERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjQXJjaGl0ZWN0dXJlUXVlcmllcygpIj48Qj5BcmNoaXRlY3R1cmVRdWVyaWVzKCk8L0I+PC9BPiAtIAorQ29uc3RydWN0b3IgZm9yIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkFyY2hpdGVjdHVyZVF1ZXJpZXM8L0E+Cis8REQ+Jm5ic3A7Cis8L0RMPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViBMRVRURVImbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTIuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTEuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0xLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEEgSFJFRj0iaW5kZXgtMS5odG1sIj5BPC9BPiA8QSBIUkVGPSJpbmRleC0yLmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTMuaHRtbCI+RjwvQT4gPEEgSFJFRj0iaW5kZXgtNC5odG1sIj5HPC9BPiA8QSBIUkVGPSJpbmRleC01Lmh0bWwiPkg8L0E+IDxBIEhSRUY9ImluZGV4LTYuaHRtbCI+STwvQT4gPEEgSFJFRj0iaW5kZXgtNy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC04Lmh0bWwiPk88L0E+IDxBIEhSRUY9ImluZGV4LTkuaHRtbCI+UDwvQT4gPEEgSFJFRj0iaW5kZXgtMTAuaHRtbCI+UjwvQT4gPEEgSFJFRj0iaW5kZXgtMTEuaHRtbCI+UzwvQT4gPEEgSFJFRj0iaW5kZXgtMTIuaHRtbCI+VDwvQT4gPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMTAuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9pbmRleC1maWxlcy9pbmRleC0xMC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc3MjQxMWQKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMTAuaHRtbApAQCAtMCwwICsxLDE1MiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNi4wXzI0KSBvbiBXZWQgT2N0IDE3IDE5OjMzOjA1IENFU1QgMjAxMiAtLT4KKzxUSVRMRT4KK1ItSW5kZXgKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImRhdGUiIENPTlRFTlQ9IjIwMTItMTAtMTciPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBpZiAobG9jYXRpb24uaHJlZi5pbmRleE9mKCdpcy1leHRlcm5hbD10cnVlJykgPT0gLTEpIHsKKyAgICAgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJSLUluZGV4IjsKKyAgICB9Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorPEhSPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtOS5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0xMS5odG1sIj48Qj5ORVhUIExFVFRFUjwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtMTAuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0xMC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5EPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+TTwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPlQ8L0E+IDxIUj4KKzxBIE5BTUU9Il9SXyI+PCEtLSAtLT48L0E+PEgyPgorPEI+UjwvQj48L0gyPgorPERMPgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCNyZWdpc3RlclBhY2thZ2VzKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5yZXNvdXJjZS5SZXNvdXJjZVNldCkiPjxCPnJlZ2lzdGVyUGFja2FnZXMoUmVzb3VyY2VTZXQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPk1NUXVlcmllczwvQT4KKzxERD5UaGlzIGNhbiBiZSB1c2VkIHRvIHVwZGF0ZSB0aGUgcmVzb3VyY2Ugc2V0J3MgcGFja2FnZSByZWdpc3RyeSB3aXRoIGFsbCBuZWVkZWQgRVBhY2thZ2VzLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCNyZWdpc3RlclJlc291cmNlRmFjdG9yaWVzKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5yZXNvdXJjZS5SZXNvdXJjZVNldCkiPjxCPnJlZ2lzdGVyUmVzb3VyY2VGYWN0b3JpZXMoUmVzb3VyY2VTZXQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPk1NUXVlcmllczwvQT4KKzxERD5UaGlzIGNhbiBiZSB1c2VkIHRvIHVwZGF0ZSB0aGUgcmVzb3VyY2Ugc2V0J3MgcmVzb3VyY2UgZmFjdG9yeSByZWdpc3RyeSB3aXRoIGFsbCBuZWVkZWQgZmFjdG9yaWVzLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI3JlbW92ZUJyYWNrZXRzKGphdmEubGFuZy5TdHJpbmcpIj48Qj5yZW1vdmVCcmFja2V0cyhTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+R2VuZXJhbFF1ZXJpZXM8L0E+Cis8REQ+U3RyaW5nIG1hbmlwdWxhdGlvbiBmdW5jdGlvbiA6CisgcmVtb3ZlIGJyYWNrZXRzIGZyb20gYSBzdHJpbmcKKzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC05Lmh0bWwiPjxCPlBSRVYgTEVUVEVSPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTExLmh0bWwiPjxCPk5FWFQgTEVUVEVSPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uL2luZGV4Lmh0bWw/aW5kZXgtZmlsZXNpbmRleC0xMC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTEwLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEEgSFJFRj0iaW5kZXgtMS5odG1sIj5BPC9BPiA8QSBIUkVGPSJpbmRleC0yLmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTMuaHRtbCI+RjwvQT4gPEEgSFJFRj0iaW5kZXgtNC5odG1sIj5HPC9BPiA8QSBIUkVGPSJpbmRleC01Lmh0bWwiPkg8L0E+IDxBIEhSRUY9ImluZGV4LTYuaHRtbCI+STwvQT4gPEEgSFJFRj0iaW5kZXgtNy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC04Lmh0bWwiPk88L0E+IDxBIEhSRUY9ImluZGV4LTkuaHRtbCI+UDwvQT4gPEEgSFJFRj0iaW5kZXgtMTAuaHRtbCI+UjwvQT4gPEEgSFJFRj0iaW5kZXgtMTEuaHRtbCI+UzwvQT4gPEEgSFJFRj0iaW5kZXgtMTIuaHRtbCI+VDwvQT4gPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMTEuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9pbmRleC1maWxlcy9pbmRleC0xMS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZjNDIzZTQKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMTEuaHRtbApAQCAtMCwwICsxLDE0OCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNi4wXzI0KSBvbiBXZWQgT2N0IDE3IDE5OjMzOjA1IENFU1QgMjAxMiAtLT4KKzxUSVRMRT4KK1MtSW5kZXgKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImRhdGUiIENPTlRFTlQ9IjIwMTItMTAtMTciPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBpZiAobG9jYXRpb24uaHJlZi5pbmRleE9mKCdpcy1leHRlcm5hbD10cnVlJykgPT0gLTEpIHsKKyAgICAgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJTLUluZGV4IjsKKyAgICB9Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorPEhSPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTAuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTIuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTExLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTEuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+TzwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5UPC9BPiA8SFI+Cis8QSBOQU1FPSJfU18iPjwhLS0gLS0+PC9BPjxIMj4KKzxCPlM8L0I+PC9IMj4KKzxETD4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9BY3RpdmF0b3IuaHRtbCNzdGFydChvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQ29udGV4dCkiPjxCPnN0YXJ0KEJ1bmRsZUNvbnRleHQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24uPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vQWN0aXZhdG9yLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24iPkFjdGl2YXRvcjwvQT4KKzxERD4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9BY3RpdmF0b3IuaHRtbCNzdG9wKG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0KSI+PEI+c3RvcChCdW5kbGVDb250ZXh0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uIj5BY3RpdmF0b3I8L0E+Cis8REQ+Cis8L0RMPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTAuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTIuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTExLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTEuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+TzwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5UPC9BPiA8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9pbmRleC1maWxlcy9pbmRleC0xMi5odG1sIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL2luZGV4LWZpbGVzL2luZGV4LTEyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmE3MTJiMQotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9pbmRleC1maWxlcy9pbmRleC0xMi5odG1sCkBAIC0wLDAgKzEsMTQ1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS42LjBfMjQpIG9uIFdlZCBPY3QgMTcgMTk6MzM6MDUgQ0VTVCAyMDEyIC0tPgorPFRJVExFPgorVC1JbmRleAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0iZGF0ZSIgQ09OVEVOVD0iMjAxMi0xMC0xNyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIGlmIChsb2NhdGlvbi5ocmVmLmluZGV4T2YoJ2lzLWV4dGVybmFsPXRydWUnKSA9PSAtMSkgeworICAgICAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlQtSW5kZXgiOworICAgIH0KK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+Cis8SFI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC0xMS5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDtORVhUIExFVFRFUjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTEyLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTIuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+TzwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5UPC9BPiA8SFI+Cis8QSBOQU1FPSJfVF8iPjwhLS0gLS0+PC9BPjxIMj4KKzxCPlQ8L0I+PC9IMj4KKzxETD4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwjVEVNUExBVEVfTkFNRVMiPjxCPlRFTVBMQVRFX05BTUVTPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPk1NUXVlcmllczwvQT4KKzxERD5UaGUgbmFtZSBvZiB0aGUgdGVtcGxhdGVzIHRoYXQgYXJlIHRvIGJlIGdlbmVyYXRlZC4KKzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC0xMS5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDtORVhUIExFVFRFUjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTEyLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTIuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+TzwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5UPC9BPiA8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9pbmRleC1maWxlcy9pbmRleC0xMy5odG1sIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL2luZGV4LWZpbGVzL2luZGV4LTEzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2MxMmRjMgotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9pbmRleC1maWxlcy9pbmRleC0xMy5odG1sCkBAIC0wLDAgKzEsMTQ1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS42LjBfMjQpIG9uIFdlZCBGZWIgMjIgMTE6MjQ6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitULUluZGV4Cis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJkYXRlIiBDT05URU5UPSIyMDEyLTAyLTIyIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgaWYgKGxvY2F0aW9uLmhyZWYuaW5kZXhPZignaXMtZXh0ZXJuYWw9dHJ1ZScpID09IC0xKSB7CisgICAgICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVC1JbmRleCI7CisgICAgfQorfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKzxIUj4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+SW5kZXg8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPjxCPlBSRVYgTEVUVEVSPC9CPjwvQT4mbmJzcDsKKyZuYnNwO05FWFQgTEVUVEVSPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtMTMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0xMy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5EPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkU8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RjwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5HPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkg8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+STwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPk88L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTEzLmh0bWwiPlQ8L0E+IDxIUj4KKzxBIE5BTUU9Il9UXyI+PCEtLSAtLT48L0E+PEgyPgorPEI+VDwvQj48L0gyPgorPERMPgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCNURU1QTEFURV9OQU1FUyI+PEI+VEVNUExBVEVfTkFNRVM8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGNsYXNzIG9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMiPk1NUXVlcmllczwvQT4KKzxERD5UaGUgbmFtZSBvZiB0aGUgdGVtcGxhdGVzIHRoYXQgYXJlIHRvIGJlIGdlbmVyYXRlZC4KKzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC0xMi5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDtORVhUIExFVFRFUjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTEzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5FPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+TTwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0xMy5odG1sIj5UPC9BPiA8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9pbmRleC1maWxlcy9pbmRleC0yLmh0bWwgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUyZjdiZjYKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMi5odG1sCkBAIC0wLDAgKzEsMTU0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS42LjBfMjQpIG9uIFdlZCBPY3QgMTcgMTk6MzM6MDUgQ0VTVCAyMDEyIC0tPgorPFRJVExFPgorRC1JbmRleAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0iZGF0ZSIgQ09OVEVOVD0iMjAxMi0xMC0xNyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIGlmIChsb2NhdGlvbi5ocmVmLmluZGV4T2YoJ2lzLWV4dGVybmFsPXRydWUnKSA9PSAtMSkgeworICAgICAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkQtSW5kZXgiOworICAgIH0KK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+Cis8SFI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC0xLmh0bWwiPjxCPlBSRVYgTEVUVEVSPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTMuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTIuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0yLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEEgSFJFRj0iaW5kZXgtMS5odG1sIj5BPC9BPiA8QSBIUkVGPSJpbmRleC0yLmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTMuaHRtbCI+RjwvQT4gPEEgSFJFRj0iaW5kZXgtNC5odG1sIj5HPC9BPiA8QSBIUkVGPSJpbmRleC01Lmh0bWwiPkg8L0E+IDxBIEhSRUY9ImluZGV4LTYuaHRtbCI+STwvQT4gPEEgSFJFRj0iaW5kZXgtNy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC04Lmh0bWwiPk88L0E+IDxBIEhSRUY9ImluZGV4LTkuaHRtbCI+UDwvQT4gPEEgSFJFRj0iaW5kZXgtMTAuaHRtbCI+UjwvQT4gPEEgSFJFRj0iaW5kZXgtMTEuaHRtbCI+UzwvQT4gPEEgSFJFRj0iaW5kZXgtMTIuaHRtbCI+VDwvQT4gPEhSPgorPEEgTkFNRT0iX0RfIj48IS0tIC0tPjwvQT48SDI+Cis8Qj5EPC9CPjwvSDI+Cis8REw+Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+PEI+RGF0YVR5cGVRdWVyaWVzPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXM8L0E+PEREPiZuYnNwOzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmh0bWwjRGF0YVR5cGVRdWVyaWVzKCkiPjxCPkRhdGFUeXBlUXVlcmllcygpPC9CPjwvQT4gLSAKK0NvbnN0cnVjdG9yIGZvciBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkRhdGFUeXBlUXVlcmllczwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2RlZmluZXNDb25uZWN0aW9ucyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPjxCPmRlZmluZXNDb25uZWN0aW9ucyhDbGFzcyk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5BcmNoaXRlY3R1cmVRdWVyaWVzPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EZXBsb3ltZW50UXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+PEI+RGVwbG95bWVudFF1ZXJpZXM8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllczwvQT48REQ+Jm5ic3A7PERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EZXBsb3ltZW50UXVlcmllcy5odG1sI0RlcGxveW1lbnRRdWVyaWVzKCkiPjxCPkRlcGxveW1lbnRRdWVyaWVzKCk8L0I+PC9BPiAtIAorQ29uc3RydWN0b3IgZm9yIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RlcGxveW1lbnRRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5EZXBsb3ltZW50UXVlcmllczwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwjZG9HZW5lcmF0ZShvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuTW9uaXRvcikiPjxCPmRvR2VuZXJhdGUoTW9uaXRvcik8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+TU1RdWVyaWVzPC9BPgorPEREPkxhdW5jaGVzIHRoZSBnZW5lcmF0aW9uIGRlc2NyaWJlZCBieSB0aGlzIGluc3RhbmNlLgorPC9ETD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+SW5kZXg8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMy5odG1sIj48Qj5ORVhUIExFVFRFUjwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtMi5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTIuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+TzwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5UPC9BPiA8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9pbmRleC1maWxlcy9pbmRleC0zLmh0bWwgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRiY2MxNjYKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMy5odG1sCkBAIC0wLDAgKzEsMTUxIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS42LjBfMjQpIG9uIFdlZCBPY3QgMTcgMTk6MzM6MDUgQ0VTVCAyMDEyIC0tPgorPFRJVExFPgorRi1JbmRleAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0iZGF0ZSIgQ09OVEVOVD0iMjAxMi0xMC0xNyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIGlmIChsb2NhdGlvbi5ocmVmLmluZGV4T2YoJ2lzLWV4dGVybmFsPXRydWUnKSA9PSAtMSkgeworICAgICAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkYtSW5kZXgiOworICAgIH0KK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+Cis8SFI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC0yLmh0bWwiPjxCPlBSRVYgTEVUVEVSPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTQuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0zLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEEgSFJFRj0iaW5kZXgtMS5odG1sIj5BPC9BPiA8QSBIUkVGPSJpbmRleC0yLmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTMuaHRtbCI+RjwvQT4gPEEgSFJFRj0iaW5kZXgtNC5odG1sIj5HPC9BPiA8QSBIUkVGPSJpbmRleC01Lmh0bWwiPkg8L0E+IDxBIEhSRUY9ImluZGV4LTYuaHRtbCI+STwvQT4gPEEgSFJFRj0iaW5kZXgtNy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC04Lmh0bWwiPk88L0E+IDxBIEhSRUY9ImluZGV4LTkuaHRtbCI+UDwvQT4gPEEgSFJFRj0iaW5kZXgtMTAuaHRtbCI+UjwvQT4gPEEgSFJFRj0iaW5kZXgtMTEuaHRtbCI+UzwvQT4gPEEgSFJFRj0iaW5kZXgtMTIuaHRtbCI+VDwvQT4gPEhSPgorPEEgTkFNRT0iX0ZfIj48IS0tIC0tPjwvQT48SDI+Cis8Qj5GPC9CPjwvSDI+Cis8REw+Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjZmluZENsYXNzSW5Nb2RlbChvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCwgamF2YS5sYW5nLlN0cmluZykiPjxCPmZpbmRDbGFzc0luTW9kZWwoTW9kZWwsIFN0cmluZyk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+R2VuZXJhbFF1ZXJpZXM8L0E+Cis8REQ+RmluZCBhIGNsYXNzIHdpdGggYSBnaXZlbiBuYW1lIGluIHRoZSBtb2RlbC4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNmaW5kQ2xhc3NJblBhY2thZ2Uob3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmZpbmRDbGFzc0luUGFja2FnZShQYWNrYWdlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkdlbmVyYWxRdWVyaWVzPC9BPgorPEREPkZpbmQgYSBjbGFzcyB3aXRoIGEgZ2l2ZW4gbmFtZSBpbiBhIHBhY2thZ2UuCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0ZTTVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPjxCPkZTTVF1ZXJpZXM8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllczwvQT48REQ+Jm5ic3A7PERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9GU01RdWVyaWVzLmh0bWwjRlNNUXVlcmllcygpIj48Qj5GU01RdWVyaWVzKCk8L0I+PC9BPiAtIAorQ29uc3RydWN0b3IgZm9yIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0ZTTVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkZTTVF1ZXJpZXM8L0E+Cis8REQ+Jm5ic3A7Cis8L0RMPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtMi5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC00Lmh0bWwiPjxCPk5FWFQgTEVUVEVSPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uL2luZGV4Lmh0bWw/aW5kZXgtZmlsZXNpbmRleC0zLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5EPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+TTwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPlQ8L0E+IDxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL2luZGV4LWZpbGVzL2luZGV4LTQuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9pbmRleC1maWxlcy9pbmRleC00Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjM1ZGFlNAotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9pbmRleC1maWxlcy9pbmRleC00Lmh0bWwKQEAgLTAsMCArMSwyODYgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjYuMF8yNCkgb24gV2VkIE9jdCAxNyAxOTozMzowNSBDRVNUIDIwMTIgLS0+Cis8VElUTEU+CitHLUluZGV4Cis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJkYXRlIiBDT05URU5UPSIyMDEyLTEwLTE3Ij4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgaWYgKGxvY2F0aW9uLmhyZWYuaW5kZXhPZignaXMtZXh0ZXJuYWw9dHJ1ZScpID09IC0xKSB7CisgICAgICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iRy1JbmRleCI7CisgICAgfQorfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKzxIUj4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+SW5kZXg8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9ImluZGV4LTMuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtNS5odG1sIj48Qj5ORVhUIExFVFRFUjwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtNC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+TzwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5UPC9BPiA8SFI+Cis8QSBOQU1FPSJfR18iPjwhLS0gLS0+PC9BPjxIMj4KKzxCPkc8L0I+PC9IMj4KKzxETD4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPjxCPkdlbmVyYWxRdWVyaWVzPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXM8L0E+PEREPiZuYnNwOzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNHZW5lcmFsUXVlcmllcygpIj48Qj5HZW5lcmFsUXVlcmllcygpPC9CPjwvQT4gLSAKK0NvbnN0cnVjdG9yIGZvciBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+R2VuZXJhbFF1ZXJpZXM8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXRBbGxTdWJDb21wb25lbnRzSW5DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPjxCPmdldEFsbFN1YkNvbXBvbmVudHNJbkNsYXNzKENsYXNzKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkFyY2hpdGVjdHVyZVF1ZXJpZXM8L0E+Cis8REQ+T24gYSBnaXZlbiBjbGFzcyAoYSBSb2JvdE1MIHN5c3RlbSksIHJldHJpZXZlIGFsbCB0aGUgY29udGFpbmVkIHN5c3RlbXMuCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjZ2V0QXR0cmlidXRlVmFsdWUob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MsIGphdmEubGFuZy5TdHJpbmcsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5nZXRBdHRyaWJ1dGVWYWx1ZShDbGFzcywgU3RyaW5nLCBTdHJpbmcpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkdlbmVyYWxRdWVyaWVzPC9BPgorPEREPlJldHVybiB0aGUgdmFsdWUgb2YgYSBnaXZlbiBhdHRyaWJ1dGUgdXNpbmcgdGhlIGdpdmVuIHN0ZXJlb3R5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNnZXRBdHRyaWJ1dGVWYWx1ZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcywgamF2YS5sYW5nLlN0cmluZywgamF2YS5sYW5nLlN0cmluZywgamF2YS5sYW5nLlN0cmluZykiPjxCPmdldEF0dHJpYnV0ZVZhbHVlKENsYXNzLCBTdHJpbmcsIFN0cmluZywgU3RyaW5nKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5HZW5lcmFsUXVlcmllczwvQT4KKzxERD5SZXR1cm4gdGhlIHZhbHVlIG9mIGEgZ2l2ZW4gYXR0cmlidXRlIHVzaW5nIHRoZSBnaXZlbiBzdGVyZW90eXBlIAorIElmIGF0dHJpYnV0ZSBpcyBub3QgZGVmaW5lZCwgdGhlbiByZXR1cm4gYSBkZWZhdWx0IHZhbHVlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjZ2V0QXR0cmlidXRlVmFsdWVzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzLCBqYXZhLmxhbmcuU3RyaW5nLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Z2V0QXR0cmlidXRlVmFsdWVzKENsYXNzLCBTdHJpbmcsIFN0cmluZyk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+R2VuZXJhbFF1ZXJpZXM8L0E+Cis8REQ+UmV0dXJuIHRoZSB2YWx1ZXMgb2YgYSBnaXZlbiBhdHRyaWJ1dGUgdXNpbmcgdGhlIGdpdmVuIHN0ZXJlb3R5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldENvbXBvbmVudEZpbGVOYW1lKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Z2V0Q29tcG9uZW50RmlsZU5hbWUoQ2xhc3MsIFN0cmluZyk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5BcmNoaXRlY3R1cmVRdWVyaWVzPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjZ2V0Q29tcG9uZW50TW9kZWxzKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsKSI+PEI+Z2V0Q29tcG9uZW50TW9kZWxzKE1vZGVsKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkFyY2hpdGVjdHVyZVF1ZXJpZXM8L0E+Cis8REQ+UmV0cmlldmVzIGFsbCB0aGUgY29tcG9uZW50IG1vZGVscyBhdmFpbGFibGUgaW5zaWRlIGEgUm9ib3RNTCBtb2RlbC4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldENvbm5lY3RlZFBvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPjxCPmdldENvbm5lY3RlZFBvcnQoUG9ydCk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5BcmNoaXRlY3R1cmVRdWVyaWVzPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjZ2V0Q29ubmVjdGlvbkRlZmluaXRpb24ob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKSI+PEI+Z2V0Q29ubmVjdGlvbkRlZmluaXRpb24oQ29ubmVjdG9yKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkFyY2hpdGVjdHVyZVF1ZXJpZXM8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXRDb25uZWN0aW9uT3RoZXJTaWRlKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj48Qj5nZXRDb25uZWN0aW9uT3RoZXJTaWRlKFBvcnQpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+QXJjaGl0ZWN0dXJlUXVlcmllczwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmh0bWwjZ2V0Q3BwQ2xhc3NGb3JEYXRhdFR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUpIj48Qj5nZXRDcHBDbGFzc0ZvckRhdGF0VHlwZShEYXRhVHlwZSk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+RGF0YVR5cGVRdWVyaWVzPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sI2dldERlZmF1bHQoKSI+PEI+Z2V0RGVmYXVsdCgpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uIj5BY3RpdmF0b3I8L0E+Cis8REQ+UmV0dXJucyB0aGUgc2hhcmVkIGluc3RhbmNlLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjZ2V0RGVzdENvbXBvbmVudEZvckNvbm5lY3RvcihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IpIj48Qj5nZXREZXN0Q29tcG9uZW50Rm9yQ29ubmVjdG9yKENvbm5lY3Rvcik8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5BcmNoaXRlY3R1cmVRdWVyaWVzPC9BPgorPEREPkdldCB0aGUgZGVzdGluYXRpb24gY29tcG9uZW50IGluc3RhbmNlIG9mIGEgY29ubmVjdG9yCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXREZXN0Q29tcG9uZW50SW5zdGFuY2VOYW1lRm9yQ29ubmVjdG9yKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcikiPjxCPmdldERlc3RDb21wb25lbnRJbnN0YW5jZU5hbWVGb3JDb25uZWN0b3IoQ29ubmVjdG9yKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkFyY2hpdGVjdHVyZVF1ZXJpZXM8L0E+Cis8REQ+UmV0cmlldmUgdGhlIGluc3RhbmNlIG5hbWUgb2YgYSBjb21wb25lbnQgYXQgdGhlIGRlc3RpbmF0aW9uIG9mIGEgY29ubmVjdG9yLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjZ2V0RGVzdENvbXBvbmVudFR5cGVOYW1lRm9yQ29ubmVjdG9yKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcikiPjxCPmdldERlc3RDb21wb25lbnRUeXBlTmFtZUZvckNvbm5lY3RvcihDb25uZWN0b3IpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+QXJjaGl0ZWN0dXJlUXVlcmllczwvQT4KKzxERD5SZXRyaWV2ZSB0aGUgbW9kZWwgbmFtZSAob3IgdHlwZSBuYW1lKSBvZiBhIGNvbXBvbmVudCBhdCB0aGUgZGVzdGluYXRpb24gb2YgYSBjb25uZWN0b3IuCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXREZXN0UG9ydE5hbWUob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKSI+PEI+Z2V0RGVzdFBvcnROYW1lKENvbm5lY3Rvcik8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5BcmNoaXRlY3R1cmVRdWVyaWVzPC9BPgorPEREPkdldCB0aGUgZGVzdGluYXRpb24gcG9ydCBuYW1lIG9mIGEgY29ubmVjdG9yCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sI2dldEVsZW1lbnRzRGF0YVR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwpIj48Qj5nZXRFbGVtZW50c0RhdGFUeXBlKE1vZGVsKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5EYXRhVHlwZVF1ZXJpZXM8L0E+Cis8REQ+R2V0IGFsbCB1c2VyLWRlZmluZWQgZGF0YXR5cGVzLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI2dldEVsZW1lbnRzV2l0aEluaGVyaXRlZFN0ZXJlb3R5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5nZXRFbGVtZW50c1dpdGhJbmhlcml0ZWRTdGVyZW90eXBlKE1vZGVsLCBTdHJpbmcpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkdlbmVyYWxRdWVyaWVzPC9BPgorPEREPjxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwOzxJPnRvIGJlIHJlcGxhY2VkIHdpdGggY2FsbHMgdG8gdGhlIFJvYm90TUwgQVBJLiBSZXBsYWNlZCBieSBnZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlIChNb2RlbCBtb2RlbCwgU3RlcmVvdHlwZUNsYXNzIHNjKTwvST4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNnZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Z2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZShNb2RlbCwgU3RyaW5nKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5HZW5lcmFsUXVlcmllczwvQT4KKzxERD48Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST50byBiZSByZXBsYWNlZCB3aXRoIGNhbGxzIHRvIHRoZSBSb2JvdE1MIEFQSS4gUmVwbGFjZWQgYnkgZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZSAoTW9kZWwgbW9kZWwsIFN0ZXJlb3R5cGVDbGFzcyBzYyk8L0k+Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXRFeHRlcm5hbElucHV0Q29ubmVjdG9ycyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPjxCPmdldEV4dGVybmFsSW5wdXRDb25uZWN0b3JzKENsYXNzKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkFyY2hpdGVjdHVyZVF1ZXJpZXM8L0E+Cis8REQ+UmV0cmlldmVzIGFsbCB0aGUgY29ubmVjdG9ycyBiZXR3ZWVuIHRoZSBpbnB1dCBjb21wb25lbnQgbW9kZWwgYm91bmRhcmllcyBhbmQgc3ViY29tcG9uZW50cyB0aGF0IGFyZSBpbnNpZGUgdGhlIG1vZGVsLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjZ2V0RXh0ZXJuYWxPdXRwdXRDb25uZWN0b3JzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+PEI+Z2V0RXh0ZXJuYWxPdXRwdXRDb25uZWN0b3JzKENsYXNzKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkFyY2hpdGVjdHVyZVF1ZXJpZXM8L0E+Cis8REQ+UmV0cmlldmVzIGFsbCB0aGUgY29ubmVjdG9ycyBiZXR3ZWVuIHN1YmNvbXBvbmVudHMgdGhhdCBhcmUgaW5zaWRlIHRoZSBjb21wb25lbnQgbW9kZWwgYW5kIHRoZSBjb21wb25lbnQgbW9kZWwgb3V0cHV0cy4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwjZ2V0R2VuZXJhdGlvbkxpc3RlbmVycygpIj48Qj5nZXRHZW5lcmF0aW9uTGlzdGVuZXJzKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+TU1RdWVyaWVzPC9BPgorPEREPklmIHRoaXMgZ2VuZXJhdG9yIG5lZWRzIHRvIGxpc3RlbiB0byB0ZXh0IGdlbmVyYXRpb24gZXZlbnRzLCBsaXN0ZW5lcnMgY2FuIGJlIHJldHVybmVkIGZyb20gaGVyZS4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwjZ2V0R2VuZXJhdGlvblN0cmF0ZWd5KCkiPjxCPmdldEdlbmVyYXRpb25TdHJhdGVneSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPk1NUXVlcmllczwvQT4KKzxERD5JZiB5b3UgbmVlZCB0byBjaGFuZ2UgdGhlIHdheSBmaWxlcyBhcmUgZ2VuZXJhdGVkLCB0aGlzIGlzIHlvdXIgZW50cnkgcG9pbnQuCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXRJbnB1dFBvcnRzRm9yRWxlbWVudChvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+PEI+Z2V0SW5wdXRQb3J0c0ZvckVsZW1lbnQoRWxlbWVudCk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5BcmNoaXRlY3R1cmVRdWVyaWVzPC9BPgorPEREPkFzIGl0cyBuYW1lIHNheXMsIHJldHJpZXZlcyB0aGUgaW5wdXQgcG9ydHMgZm9yIGEgZ2l2ZW4gZWxlbWVudC4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNnZXRJbnN0YW5jZU11bHRpcGxpY2l0eShvcmcuZWNsaXBzZS51bWwyLnVtbC5Qcm9wZXJ0eSkiPjxCPmdldEluc3RhbmNlTXVsdGlwbGljaXR5KFByb3BlcnR5KTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5HZW5lcmFsUXVlcmllczwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRGVwbG95bWVudFF1ZXJpZXMuaHRtbCNnZXRJbnN0YW5jZVNwZWNpZmljYXRpb25zSW5Nb2RlbChvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCkiPjxCPmdldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNJbk1vZGVsKE1vZGVsKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RlcGxveW1lbnRRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5EZXBsb3ltZW50UXVlcmllczwvQT4KKzxERD5SZXR1cm4gdGhlIGxpc3Qgb2YgaW5zdGFuY2Ugc3BlY2lmaWNhdGlvbnMgaW4gYSBtb2RlbAorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EZXBsb3ltZW50UXVlcmllcy5odG1sI2dldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNJblBhY2thZ2Uob3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZSkiPjxCPmdldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNJblBhY2thZ2UoUGFja2FnZSk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EZXBsb3ltZW50UXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+RGVwbG95bWVudFF1ZXJpZXM8L0E+Cis8REQ+UmV0dXJuIHRoZSBsaXN0IG9mIGluc3RhbmNlIHNwZWNpZmljYXRpb25zIGluIGEgcGFja2FnZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjZ2V0SW50ZXJuYWxDb25uZWN0b3JzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+PEI+Z2V0SW50ZXJuYWxDb25uZWN0b3JzKENsYXNzKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkFyY2hpdGVjdHVyZVF1ZXJpZXM8L0E+Cis8REQ+UmV0cmlldmVzIGFsbCB0aGUgY29ubmVjdG9ycyBiZXR3ZWVuIHN1YmNvbXBvbmVudHMgaW5zaWRlIGEgZ2l2ZW4gY29tcG9uZW50IG1vZGVsLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudChvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPjxCPmdldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnQoQ2xhc3MpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+QXJjaGl0ZWN0dXJlUXVlcmllczwvQT4KKzxERD5PbiBhIGdpdmVuIGNsYXNzIChhIFJvYm90TUwgc3lzdGVtKSwgcmV0cmlldmUgYWxsIHRoZSBjb250YWluZWQgc3lzdGVtcy4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnRXaXRoU3RlcmVvdHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcywgamF2YS5sYW5nLlN0cmluZykiPjxCPmdldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnRXaXRoU3RlcmVvdHlwZShDbGFzcywgU3RyaW5nKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkFyY2hpdGVjdHVyZVF1ZXJpZXM8L0E+Cis8REQ+PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEk+cmVwbGFjZWQgYnkgZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudChvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyBjKSB3aGljaCB1c2VzIHRoZSBSb2JvdE1MIEFQSSBpbnN0ZWFkIG9mIHN0ZXJlb3R5cGUgbmFtZXMuPC9JPgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuaHRtbCNnZXRNZXRhbW9kZWxDb21wb3NlZERhdGFUeXBlcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+PEI+Z2V0TWV0YW1vZGVsQ29tcG9zZWREYXRhVHlwZXMoRWxlbWVudCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+RGF0YVR5cGVRdWVyaWVzPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCNnZXRNb2R1bGVOYW1lKCkiPjxCPmdldE1vZHVsZU5hbWUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5NTVF1ZXJpZXM8L0E+Cis8REQ+VGhpcyB3aWxsIGJlIGNhbGxlZCBpbiBvcmRlciB0byBmaW5kIGFuZCBsb2FkIHRoZSBtb2R1bGUgdGhhdCB3aWxsIGJlIGxhdW5jaGVkIHRocm91Z2ggdGhpcyBsYXVuY2hlci4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldE91dHB1dFBvcnRzRm9yRWxlbWVudChvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+PEI+Z2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50KEVsZW1lbnQpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+QXJjaGl0ZWN0dXJlUXVlcmllczwvQT4KKzxERD5BcyBpdHMgbmFtZSBzYXlzLCByZXRyaWV2ZXMgdGhlIG91dHB1dCBwb3J0cyBmb3IgYSBnaXZlbiBlbGVtZW50LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EZXBsb3ltZW50UXVlcmllcy5odG1sI2dldFBhcmVudE5hbWUob3JnLmVjbGlwc2UudW1sMi51bWwuSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSI+PEI+Z2V0UGFyZW50TmFtZShJbnN0YW5jZVNwZWNpZmljYXRpb24pPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRGVwbG95bWVudFF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkRlcGxveW1lbnRRdWVyaWVzPC9BPgorPEREPlJldHVybiB0aGUgcGFyZW50IG5hbWUgb2YgYW4gaW5zdGFuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmh0bWwjZ2V0UG9ydERhdGFUeXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj48Qj5nZXRQb3J0RGF0YVR5cGUoUG9ydCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+RGF0YVR5cGVRdWVyaWVzPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCNnZXRQcm9wZXJ0aWVzKCkiPjxCPmdldFByb3BlcnRpZXMoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5NTVF1ZXJpZXM8L0E+Cis8REQ+SWYgdGhlIG1vZHVsZShzKSBjYWxsZWQgYnkgdGhpcyBsYXVuY2hlciByZXF1aXJlIHByb3BlcnRpZXMgZmlsZXMsIHJldHVybiB0aGVpciBxdWFsaWZpZWQgcGF0aCBmcm9tCisgaGVyZS5UYWtlIG5vdGUgdGhhdCB0aGUgZmlyc3QgYWRkZWQgcHJvcGVydGllcyBmaWxlcyB3aWxsIHRha2UgcHJlY2VkZW5jZSBvdmVyIHN1YnNlcXVlbnQgb25lcyBpZiB0aGV5CisgY29udGFpbiBjb25mbGljdGluZyBrZXlzLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjZ2V0Um9vdENsYXNzRm9yTW9kZWwob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwpIj48Qj5nZXRSb290Q2xhc3NGb3JNb2RlbChNb2RlbCk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5BcmNoaXRlY3R1cmVRdWVyaWVzPC9BPgorPEREPlJldHJpZXZlcyB0aGUgaGlnaGVzdCBsZXZlbCBjbGFzcyBpbnRvIHdoaWNoIGEgZ2l2ZW4gbW9kZWwgaXMgY29udGFpbmVkLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjZ2V0U291cmNlQ29tcG9uZW50Rm9yQ29ubmVjdG9yKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcikiPjxCPmdldFNvdXJjZUNvbXBvbmVudEZvckNvbm5lY3RvcihDb25uZWN0b3IpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+QXJjaGl0ZWN0dXJlUXVlcmllczwvQT4KKzxERD5HZXQgdGhlIHNvdXJjZSBjb21wb25lbnQgaW5zdGFuY2Ugb2YgYSBjb25uZWN0b3IKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldFNvdXJjZUNvbXBvbmVudEluc3RhbmNlTmFtZUZvckNvbm5lY3RvcihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IpIj48Qj5nZXRTb3VyY2VDb21wb25lbnRJbnN0YW5jZU5hbWVGb3JDb25uZWN0b3IoQ29ubmVjdG9yKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkFyY2hpdGVjdHVyZVF1ZXJpZXM8L0E+Cis8REQ+UmV0cmlldmUgdGhlIGluc3RhbmNlIG5hbWUgb2YgYSBjb21wb25lbnQgYXQgdGhlIHNvdXJjZSBvZiBhIGNvbm5lY3Rvci4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldFNvdXJjZUNvbXBvbmVudFR5cGVOYW1lRm9yQ29ubmVjdG9yKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcikiPjxCPmdldFNvdXJjZUNvbXBvbmVudFR5cGVOYW1lRm9yQ29ubmVjdG9yKENvbm5lY3Rvcik8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5BcmNoaXRlY3R1cmVRdWVyaWVzPC9BPgorPEREPlJldHJpZXZlIHRoZSBtb2RlbCBuYW1lIG9mIGEgY29tcG9uZW50IGF0IHRoZSBzb3VyY2Ugb2YgYSBjb25uZWN0b3IuCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXRTb3VyY2VQb3J0TmFtZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IpIj48Qj5nZXRTb3VyY2VQb3J0TmFtZShDb25uZWN0b3IpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+QXJjaGl0ZWN0dXJlUXVlcmllczwvQT4KKzxERD5HZXQgdGhlIHNvdXJjZSBwb3J0IG5hbWUgb2YgYSBjb25uZWN0b3IuCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0ZTTVF1ZXJpZXMuaHRtbCNnZXRTdGF0ZU1hY2hpbmVzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpIj48Qj5nZXRTdGF0ZU1hY2hpbmVzKEVsZW1lbnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9GU01RdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5GU01RdWVyaWVzPC9BPgorPEREPkZpbmQgYWxsIHN0YXRlIG1hY2hpbmVzIGluIGEgY29tcG9uZW50LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9GU01RdWVyaWVzLmh0bWwjZ2V0U3RhdGVzKG9yZy5lY2xpcHNlLnVtbDIudW1sLlN0YXRlTWFjaGluZSkiPjxCPmdldFN0YXRlcyhTdGF0ZU1hY2hpbmUpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9GU01RdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5GU01RdWVyaWVzPC9BPgorPEREPkZpbmQgYWxsIHN0YXRlcyBpbiBhIHN0YXRlIG1hY2hpbmUuCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjZ2V0U3RlcmVvdHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPjxCPmdldFN0ZXJlb3R5cGUoQ2xhc3MpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkdlbmVyYWxRdWVyaWVzPC9BPgorPEREPjxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwOzxJPnN1cGVyc2VkZWQgYnkgdGhlIFJvYm90TUwgQVBJLjwvST4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNnZXRTdGVyZW90eXBlSW5oZXJpdGVkRnJvbShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcywgamF2YS5sYW5nLlN0cmluZykiPjxCPmdldFN0ZXJlb3R5cGVJbmhlcml0ZWRGcm9tKENsYXNzLCBTdHJpbmcpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkdlbmVyYWxRdWVyaWVzPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCNnZXRUZW1wbGF0ZU5hbWVzKCkiPjxCPmdldFRlbXBsYXRlTmFtZXMoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5NTVF1ZXJpZXM8L0E+Cis8REQ+VGhpcyB3aWxsIGJlIHVzZWQgdG8gZ2V0IHRoZSBsaXN0IG9mIHRlbXBsYXRlcyB0aGF0IGFyZSB0byBiZSBsYXVuY2hlZCBieSB0aGlzIGxhdW5jaGVyLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9GU01RdWVyaWVzLmh0bWwjZ2V0VHJhbnNpdGlvbnMob3JnLmVjbGlwc2UudW1sMi51bWwuU3RhdGVNYWNoaW5lKSI+PEI+Z2V0VHJhbnNpdGlvbnMoU3RhdGVNYWNoaW5lKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRlNNUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+RlNNUXVlcmllczwvQT4KKzxERD5GaW5kIGFsbCB0cmFuc2l0aW9ucyBpbiBhIHN0YXRlIG1hY2hpbmUuCis8L0RMPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtMy5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC01Lmh0bWwiPjxCPk5FWFQgTEVUVEVSPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uL2luZGV4Lmh0bWw/aW5kZXgtZmlsZXNpbmRleC00Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtNC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5EPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+TTwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPlQ8L0E+IDxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL2luZGV4LWZpbGVzL2luZGV4LTUuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9pbmRleC1maWxlcy9pbmRleC01Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDViNjdkMwotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9pbmRleC1maWxlcy9pbmRleC01Lmh0bWwKQEAgLTAsMCArMSwxNDggQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjYuMF8yNCkgb24gV2VkIE9jdCAxNyAxOTozMzowNSBDRVNUIDIwMTIgLS0+Cis8VElUTEU+CitILUluZGV4Cis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJkYXRlIiBDT05URU5UPSIyMDEyLTEwLTE3Ij4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgaWYgKGxvY2F0aW9uLmhyZWYuaW5kZXhPZignaXMtZXh0ZXJuYWw9dHJ1ZScpID09IC0xKSB7CisgICAgICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iSC1JbmRleCI7CisgICAgfQorfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKzxIUj4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+SW5kZXg8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9ImluZGV4LTQuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtNi5odG1sIj48Qj5ORVhUIExFVFRFUjwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtNS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+TzwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5UPC9BPiA8SFI+Cis8QSBOQU1FPSJfSF8iPjwhLS0gLS0+PC9BPjxIMj4KKzxCPkg8L0I+PC9IMj4KKzxETD4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNoYXNTdGVyZW90eXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzLCBqYXZhLmxhbmcuQ2xhc3MpIj48Qj5oYXNTdGVyZW90eXBlKENsYXNzLCBDbGFzcyk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+R2VuZXJhbFF1ZXJpZXM8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjaGFzU3RlcmVvdHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcywgamF2YS5sYW5nLlN0cmluZykiPjxCPmhhc1N0ZXJlb3R5cGUoQ2xhc3MsIFN0cmluZyk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+R2VuZXJhbFF1ZXJpZXM8L0E+Cis8REQ+UmV0dXJuIHRydWUgaWYgYSBnaXZlbiBjbGFzcyBoYXMgc3BlY2lmaWVkIHN0ZXJlb3R5cGUuCis8L0RMPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtNC5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC02Lmh0bWwiPjxCPk5FWFQgTEVUVEVSPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uL2luZGV4Lmh0bWw/aW5kZXgtZmlsZXNpbmRleC01Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtNS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5EPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+TTwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPlQ8L0E+IDxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL2luZGV4LWZpbGVzL2luZGV4LTYuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9pbmRleC1maWxlcy9pbmRleC02Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDhkN2Q0MQotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9pbmRleC1maWxlcy9pbmRleC02Lmh0bWwKQEAgLTAsMCArMSwyMjAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjYuMF8yNCkgb24gV2VkIE9jdCAxNyAxOTozMzowNSBDRVNUIDIwMTIgLS0+Cis8VElUTEU+CitJLUluZGV4Cis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJkYXRlIiBDT05URU5UPSIyMDEyLTEwLTE3Ij4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgaWYgKGxvY2F0aW9uLmhyZWYuaW5kZXhPZignaXMtZXh0ZXJuYWw9dHJ1ZScpID09IC0xKSB7CisgICAgICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iSS1JbmRleCI7CisgICAgfQorfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKzxIUj4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+SW5kZXg8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9ImluZGV4LTUuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtNy5odG1sIj48Qj5ORVhUIExFVFRFUjwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtNi5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTYuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+TzwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5UPC9BPiA8SFI+Cis8QSBOQU1FPSJfSV8iPjwhLS0gLS0+PC9BPjxIMj4KKzxCPkk8L0I+PC9IMj4KKzxETD4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNpbmhlcml0c0Zyb20ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5pbmhlcml0c0Zyb20oQ2xhc3MsIFN0cmluZyk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+R2VuZXJhbFF1ZXJpZXM8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjaW5oZXJpdHNGcm9tKG9yZy5lY2xpcHNlLnVtbDIudW1sLlN0ZXJlb3R5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5pbmhlcml0c0Zyb20oU3RlcmVvdHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5HZW5lcmFsUXVlcmllczwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNpbnNwZWN0Q2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj48Qj5pbnNwZWN0Q2xhc3MoQ2xhc3MpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkdlbmVyYWxRdWVyaWVzPC9BPgorPEREPkRlYnVnIGZ1bmN0aW9uLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjaW5zcGVjdERhdGFGbG93UG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+PEI+aW5zcGVjdERhdGFGbG93UG9ydChQb3J0KTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkFyY2hpdGVjdHVyZVF1ZXJpZXM8L0E+Cis8REQ+RGVidWcgZnVuY3Rpb246IHByaW50cyBpbmZvIGFib3V0IGEgZ2l2ZW4gZGF0YWZsb3cgcG9ydC4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNpbnNwZWN0RGF0YVR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUpIj48Qj5pbnNwZWN0RGF0YVR5cGUoRGF0YVR5cGUpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkdlbmVyYWxRdWVyaWVzPC9BPgorPEREPkRlYnVnIGZ1bmN0aW9uLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI2luc3BlY3RNb2RlbChvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCkiPjxCPmluc3BlY3RNb2RlbChNb2RlbCk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+R2VuZXJhbFF1ZXJpZXM8L0E+Cis8REQ+Rm9uY3Rpb24gZGUgdGVzdCBwb3VyIGluc3BlY3RlciB1biBtb2Tvv71sZSBVTUwyCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjaW5zcGVjdFBvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPjxCPmluc3BlY3RQb3J0KFBvcnQpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkdlbmVyYWxRdWVyaWVzPC9BPgorPEREPkRlYnVnIGZ1bmN0aW9uLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjaW5zcGVjdFNlcnZpY2VQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj48Qj5pbnNwZWN0U2VydmljZVBvcnQoUG9ydCk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5BcmNoaXRlY3R1cmVRdWVyaWVzPC9BPgorPEREPkRlYnVnIGZ1bmN0aW9uLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjaXNBbklucHV0UG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+PEI+aXNBbklucHV0UG9ydChQb3J0KTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkFyY2hpdGVjdHVyZVF1ZXJpZXM8L0E+Cis8REQ+Rm9yIERhdGFGbG93IHBvcnRzOiBpcyBpdCBhbiBJbnB1dCBQb3J0ID8KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2lzQW5PdXRwdXRQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj48Qj5pc0FuT3V0cHV0UG9ydChQb3J0KTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkFyY2hpdGVjdHVyZVF1ZXJpZXM8L0E+Cis8REQ+Rm9yIERhdGFGbG93IHBvcnRzOiBpcyBpdCBhbiBPdXRwdXQgUG9ydCA/Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNpc0FQcm92aWRlZFBvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPjxCPmlzQVByb3ZpZGVkUG9ydChQb3J0KTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkFyY2hpdGVjdHVyZVF1ZXJpZXM8L0E+Cis8REQ+Rm9yIFJvYm90TUwgU2VydmljZVBvcnRzOiBpcyB0aGUgcG9ydCBhICJQcm92aWRlZCIgcG9ydD8KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2lzQVJlcXVpcmVkUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+PEI+aXNBUmVxdWlyZWRQb3J0KFBvcnQpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+QXJjaGl0ZWN0dXJlUXVlcmllczwvQT4KKzxERD5Gb3IgUm9ib3RNTCBTZXJ2aWNlUG9ydHM6IGlzIHRoZSBwb3J0IGEgIlJlcXVpcmVkIiBwb3J0PworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI2lzQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCkiPjxCPmlzQ2xhc3MoRWxlbWVudCk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+R2VuZXJhbFF1ZXJpZXM8L0E+Cis8REQ+SXMgdGhpcyBlbGVtZW50IGEgVU1MIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNpc0Nvbm5lY3Rpb25WYWxpZChvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IpIj48Qj5pc0Nvbm5lY3Rpb25WYWxpZChDb25uZWN0b3IpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+QXJjaGl0ZWN0dXJlUXVlcmllczwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2lzRGF0YUZsb3dQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj48Qj5pc0RhdGFGbG93UG9ydChQb3J0KTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkFyY2hpdGVjdHVyZVF1ZXJpZXM8L0E+Cis8REQ+SXMgdGhpcyBwcm9wZXJ0eSBhIERhdGFGbG93IFBvcnQKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNpc0RhdGFUeXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpIj48Qj5pc0RhdGFUeXBlKEVsZW1lbnQpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkdlbmVyYWxRdWVyaWVzPC9BPgorPEREPklzIHRoaXMgZWxlbWVudCBhIFVNTCBEYXRhVHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI2lzSW5zdGFuY2VTcGVjaWZpY2F0aW9uKG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpIj48Qj5pc0luc3RhbmNlU3BlY2lmaWNhdGlvbihFbGVtZW50KTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5HZW5lcmFsUXVlcmllczwvQT4KKzxERD5JcyB0aGlzIGVsZW1lbnQgYW4gaW5zdGFuY2Ugc3BlY2lmaWNhdGlvbgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI2lzSW50ZXJmYWNlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpIj48Qj5pc0ludGVyZmFjZShFbGVtZW50KTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5HZW5lcmFsUXVlcmllczwvQT4KKzxERD5JcyB0aGlzIGVsZW1lbnQgYSBVTUwgaW50ZXJmYWNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNpc01hY3JvQ29tcG9uZW50KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+PEI+aXNNYWNyb0NvbXBvbmVudChDbGFzcyk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5BcmNoaXRlY3R1cmVRdWVyaWVzPC9BPgorPEREPkRvZXMgdGhpcyBjbGFzcyBjb250YWluIHByb3BlcnRpZXMgdGhhdCBhcmUgY2xhc3NlcyB0aGVtc2VsdmVzID8KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNpc1BvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCkiPjxCPmlzUG9ydChFbGVtZW50KTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5HZW5lcmFsUXVlcmllczwvQT4KKzxERD5JcyB0aGlzIHByb3BlcnR5IGEgUG9ydAorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjaXNQb3J0Q29ubmVjdGVkKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj48Qj5pc1BvcnRDb25uZWN0ZWQoUG9ydCk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5BcmNoaXRlY3R1cmVRdWVyaWVzPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuaHRtbCNpc1ByaW1pdGl2ZVR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCkiPjxCPmlzUHJpbWl0aXZlVHlwZShFbGVtZW50KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5EYXRhVHlwZVF1ZXJpZXM8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjaXNQcm9wZXJ0eShvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+PEI+aXNQcm9wZXJ0eShFbGVtZW50KTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5HZW5lcmFsUXVlcmllczwvQT4KKzxERD5JcyB0aGlzIGVsZW1lbnQgYSBVTUwgUHJvcGVydHkKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmh0bWwjaXNSb2JvdE1MRGF0YVR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCwgamF2YS5sYW5nLlN0cmluZykiPjxCPmlzUm9ib3RNTERhdGFUeXBlKEVsZW1lbnQsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+RGF0YVR5cGVRdWVyaWVzPC9BPgorPEREPklzIHRoZSBwcm92aWRlZCBEYXRhVHlwZSBvbmUgb2YgdGhlIFJvYm90TUwgbWV0YW1vZGVsIGRhdGF0eXBlcyA/Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNpc1Jvb3RNb2RlbChvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCkiPjxCPmlzUm9vdE1vZGVsKE1vZGVsKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPkFyY2hpdGVjdHVyZVF1ZXJpZXM8L0E+Cis8REQ+SXMgdGhlIGVsdCBhdCB0aGUgcm9vdCBvZiB0aGUgbW9kZWwgaGllcmFyY2h5ID8KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2lzU2VydmljZVBvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPjxCPmlzU2VydmljZVBvcnQoUG9ydCk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5BcmNoaXRlY3R1cmVRdWVyaWVzPC9BPgorPEREPklzIHRoaXMgcHJvcGVydHkgYSBTZXJ2aWNlIFBvcnQKKzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC01Lmh0bWwiPjxCPlBSRVYgTEVUVEVSPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTcuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTYuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC02Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEEgSFJFRj0iaW5kZXgtMS5odG1sIj5BPC9BPiA8QSBIUkVGPSJpbmRleC0yLmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTMuaHRtbCI+RjwvQT4gPEEgSFJFRj0iaW5kZXgtNC5odG1sIj5HPC9BPiA8QSBIUkVGPSJpbmRleC01Lmh0bWwiPkg8L0E+IDxBIEhSRUY9ImluZGV4LTYuaHRtbCI+STwvQT4gPEEgSFJFRj0iaW5kZXgtNy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC04Lmh0bWwiPk88L0E+IDxBIEhSRUY9ImluZGV4LTkuaHRtbCI+UDwvQT4gPEEgSFJFRj0iaW5kZXgtMTAuaHRtbCI+UjwvQT4gPEEgSFJFRj0iaW5kZXgtMTEuaHRtbCI+UzwvQT4gPEEgSFJFRj0iaW5kZXgtMTIuaHRtbCI+VDwvQT4gPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtNy5odG1sIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL2luZGV4LWZpbGVzL2luZGV4LTcuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NDMzYTJhCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL2luZGV4LWZpbGVzL2luZGV4LTcuaHRtbApAQCAtMCwwICsxLDE1NyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNi4wXzI0KSBvbiBXZWQgT2N0IDE3IDE5OjMzOjA1IENFU1QgMjAxMiAtLT4KKzxUSVRMRT4KK00tSW5kZXgKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImRhdGUiIENPTlRFTlQ9IjIwMTItMTAtMTciPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBpZiAobG9jYXRpb24uaHJlZi5pbmRleE9mKCdpcy1leHRlcm5hbD10cnVlJykgPT0gLTEpIHsKKyAgICAgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJNLUluZGV4IjsKKyAgICB9Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorPEhSPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtNi5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC04Lmh0bWwiPjxCPk5FWFQgTEVUVEVSPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uL2luZGV4Lmh0bWw/aW5kZXgtZmlsZXNpbmRleC03Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtNy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5EPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+TTwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPlQ8L0E+IDxIUj4KKzxBIE5BTUU9Il9NXyI+PCEtLSAtLT48L0E+PEgyPgorPEI+TTwvQj48L0gyPgorPERMPgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCNtYWluKGphdmEubGFuZy5TdHJpbmdbXSkiPjxCPm1haW4oU3RyaW5nW10pPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5NTVF1ZXJpZXM8L0E+Cis8REQ+VGhpcyBjYW4gYmUgdXNlZCB0byBsYXVuY2ggdGhlIGdlbmVyYXRpb24gZnJvbSBhIHN0YW5kYWxvbmUgYXBwbGljYXRpb24uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+PEI+TU1RdWVyaWVzPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXM8L0E+PEREPkVudHJ5IHBvaW50IG9mIHRoZSAnTU1RdWVyaWVzJyBnZW5lcmF0aW9uIG1vZHVsZS48RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sI01NUXVlcmllcygpIj48Qj5NTVF1ZXJpZXMoKTwvQj48L0E+IC0gCitDb25zdHJ1Y3RvciBmb3IgY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5NTVF1ZXJpZXM8L0E+Cis8REQ+QWxsb3dzIHRoZSBwdWJsaWMgY29uc3RydWN0b3IgdG8gYmUgdXNlZC4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwjTU1RdWVyaWVzKG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5VUkksIGphdmEuaW8uRmlsZSwgamF2YS51dGlsLkxpc3QpIj48Qj5NTVF1ZXJpZXMoVVJJLCBGaWxlLCBMaXN0Jmx0Oz8gZXh0ZW5kcyBPYmplY3QmZ3Q7KTwvQj48L0E+IC0gCitDb25zdHJ1Y3RvciBmb3IgY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5NTVF1ZXJpZXM8L0E+Cis8REQ+VGhpcyBhbGxvd3MgY2xpZW50cyB0byBpbnN0YW50aWF0ZXMgYSBnZW5lcmF0b3Igd2l0aCBhbGwgcmVxdWlyZWQgaW5mb3JtYXRpb24uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sI01NUXVlcmllcyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgamF2YS5pby5GaWxlLCBqYXZhLnV0aWwuTGlzdCkiPjxCPk1NUXVlcmllcyhFT2JqZWN0LCBGaWxlLCBMaXN0Jmx0Oz8gZXh0ZW5kcyBPYmplY3QmZ3Q7KTwvQj48L0E+IC0gCitDb25zdHJ1Y3RvciBmb3IgY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5NTVF1ZXJpZXM8L0E+Cis8REQ+VGhpcyBhbGxvd3MgY2xpZW50cyB0byBpbnN0YW50aWF0ZXMgYSBnZW5lcmF0b3Igd2l0aCBhbGwgcmVxdWlyZWQgaW5mb3JtYXRpb24uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sI01PRFVMRV9GSUxFX05BTUUiPjxCPk1PRFVMRV9GSUxFX05BTUU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+TU1RdWVyaWVzPC9BPgorPEREPlRoZSBuYW1lIG9mIHRoZSBtb2R1bGUuCis8L0RMPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtNi5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC04Lmh0bWwiPjxCPk5FWFQgTEVUVEVSPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uL2luZGV4Lmh0bWw/aW5kZXgtZmlsZXNpbmRleC03Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtNy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5EPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+TTwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPlQ8L0E+IDxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL2luZGV4LWZpbGVzL2luZGV4LTguaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9pbmRleC1maWxlcy9pbmRleC04Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzUwMjVlOAotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9pbmRleC1maWxlcy9pbmRleC04Lmh0bWwKQEAgLTAsMCArMSwxNDIgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjYuMF8yNCkgb24gV2VkIE9jdCAxNyAxOTozMzowNSBDRVNUIDIwMTIgLS0+Cis8VElUTEU+CitPLUluZGV4Cis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJkYXRlIiBDT05URU5UPSIyMDEyLTEwLTE3Ij4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgaWYgKGxvY2F0aW9uLmhyZWYuaW5kZXhPZignaXMtZXh0ZXJuYWw9dHJ1ZScpID09IC0xKSB7CisgICAgICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iTy1JbmRleCI7CisgICAgfQorfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKzxIUj4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+SW5kZXg8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9ImluZGV4LTcuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtOS5odG1sIj48Qj5ORVhUIExFVFRFUjwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtOC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTguaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+TzwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5UPC9BPiA8SFI+Cis8QSBOQU1FPSJfT18iPjwhLS0gLS0+PC9BPjxIMj4KKzxCPk88L0I+PC9IMj4KKzxETD4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uPC9CPjwvQT4gLSBwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbjxERD4mbmJzcDs8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzPC9CPjwvQT4gLSBwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXM8REQ+Jm5ic3A7PC9ETD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+SW5kZXg8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9ImluZGV4LTcuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtOS5odG1sIj48Qj5ORVhUIExFVFRFUjwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtOC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTguaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+TzwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5UPC9BPiA8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9pbmRleC1maWxlcy9pbmRleC05Lmh0bWwgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtOS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmEzYmExZWIKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtOS5odG1sCkBAIC0wLDAgKzEsMTQ1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS42LjBfMjQpIG9uIFdlZCBPY3QgMTcgMTk6MzM6MDUgQ0VTVCAyMDEyIC0tPgorPFRJVExFPgorUC1JbmRleAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0iZGF0ZSIgQ09OVEVOVD0iMjAxMi0xMC0xNyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIGlmIChsb2NhdGlvbi5ocmVmLmluZGV4T2YoJ2lzLWV4dGVybmFsPXRydWUnKSA9PSAtMSkgeworICAgICAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlAtSW5kZXgiOworICAgIH0KK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+Cis8SFI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC04Lmh0bWwiPjxCPlBSRVYgTEVUVEVSPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPjxCPk5FWFQgTEVUVEVSPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uL2luZGV4Lmh0bWw/aW5kZXgtZmlsZXNpbmRleC05Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtOS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5EPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+TTwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPlQ8L0E+IDxIUj4KKzxBIE5BTUU9Il9QXyI+PCEtLSAtLT48L0E+PEgyPgorPEI+UDwvQj48L0gyPgorPERMPgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sI1BMVUdJTl9JRCI+PEI+UExVR0lOX0lEPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24uPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vQWN0aXZhdG9yLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24iPkFjdGl2YXRvcjwvQT4KKzxERD5UaGUgcGx1Zy1pbiBJRC4KKzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC04Lmh0bWwiPjxCPlBSRVYgTEVUVEVSPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPjxCPk5FWFQgTEVUVEVSPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uL2luZGV4Lmh0bWw/aW5kZXgtZmlsZXNpbmRleC05Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtOS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5EPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+TTwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPlQ8L0E+IDxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL2luZGV4Lmh0bWwgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2MvaW5kZXguaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xZmVjMjQ5Ci0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL2luZGV4Lmh0bWwKQEAgLTAsMCArMSwzOSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgRnJhbWVzZXQvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvZnJhbWVzZXQuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyBvbiBXZWQgT2N0IDE3IDE5OjMzOjA1IENFU1QgMjAxMi0tPgorPFRJVExFPgorR2VuZXJhdGVkIERvY3VtZW50YXRpb24gKFVudGl0bGVkKQorPC9USVRMRT4KKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICB0YXJnZXRQYWdlID0gIiIgKyB3aW5kb3cubG9jYXRpb24uc2VhcmNoOworICAgIGlmICh0YXJnZXRQYWdlICE9ICIiICYmIHRhcmdldFBhZ2UgIT0gInVuZGVmaW5lZCIpCisgICAgICAgIHRhcmdldFBhZ2UgPSB0YXJnZXRQYWdlLnN1YnN0cmluZygxKTsKKyAgICBpZiAodGFyZ2V0UGFnZS5pbmRleE9mKCI6IikgIT0gLTEpCisgICAgICAgIHRhcmdldFBhZ2UgPSAidW5kZWZpbmVkIjsKKyAgICBmdW5jdGlvbiBsb2FkRnJhbWVzKCkgeworICAgICAgICBpZiAodGFyZ2V0UGFnZSAhPSAiIiAmJiB0YXJnZXRQYWdlICE9ICJ1bmRlZmluZWQiKQorICAgICAgICAgICAgIHRvcC5jbGFzc0ZyYW1lLmxvY2F0aW9uID0gdG9wLnRhcmdldFBhZ2U7CisgICAgfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorPC9IRUFEPgorPEZSQU1FU0VUIGNvbHM9IjIwJSw4MCUiIHRpdGxlPSIiIG9uTG9hZD0idG9wLmxvYWRGcmFtZXMoKSI+Cis8RlJBTUVTRVQgcm93cz0iMzAlLDcwJSIgdGl0bGU9IiIgb25Mb2FkPSJ0b3AubG9hZEZyYW1lcygpIj4KKzxGUkFNRSBzcmM9Im92ZXJ2aWV3LWZyYW1lLmh0bWwiIG5hbWU9InBhY2thZ2VMaXN0RnJhbWUiIHRpdGxlPSJBbGwgUGFja2FnZXMiPgorPEZSQU1FIHNyYz0iYWxsY2xhc3Nlcy1mcmFtZS5odG1sIiBuYW1lPSJwYWNrYWdlRnJhbWUiIHRpdGxlPSJBbGwgY2xhc3NlcyBhbmQgaW50ZXJmYWNlcyAoZXhjZXB0IG5vbi1zdGF0aWMgbmVzdGVkIHR5cGVzKSI+Cis8L0ZSQU1FU0VUPgorPEZSQU1FIHNyYz0ib3ZlcnZpZXctc3VtbWFyeS5odG1sIiBuYW1lPSJjbGFzc0ZyYW1lIiB0aXRsZT0iUGFja2FnZSwgY2xhc3MgYW5kIGludGVyZmFjZSBkZXNjcmlwdGlvbnMiIHNjcm9sbGluZz0ieWVzIj4KKzxOT0ZSQU1FUz4KKzxIMj4KK0ZyYW1lIEFsZXJ0PC9IMj4KKworPFA+CitUaGlzIGRvY3VtZW50IGlzIGRlc2lnbmVkIHRvIGJlIHZpZXdlZCB1c2luZyB0aGUgZnJhbWVzIGZlYXR1cmUuIElmIHlvdSBzZWUgdGhpcyBtZXNzYWdlLCB5b3UgYXJlIHVzaW5nIGEgbm9uLWZyYW1lLWNhcGFibGUgd2ViIGNsaWVudC4KKzxCUj4KK0xpbmsgdG88QSBIUkVGPSJvdmVydmlldy1zdW1tYXJ5Lmh0bWwiPk5vbi1mcmFtZSB2ZXJzaW9uLjwvQT4KKzwvTk9GUkFNRVM+Cis8L0ZSQU1FU0VUPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAwMjY1MTUKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vQWN0aXZhdG9yLmh0bWwKQEAgLTAsMCArMSwzOTUgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjYuMF8yNCkgb24gV2VkIEZlYiAyMiAxMToyNDozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK0FjdGl2YXRvcgorPC9USVRMRT4KKworPE1FVEEgTkFNRT0iZGF0ZSIgQ09OVEVOVD0iMjAxMi0wMi0yMiI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIGlmIChsb2NhdGlvbi5ocmVmLmluZGV4T2YoJ2lzLWV4dGVybmFsPXRydWUnKSA9PSAtMSkgeworICAgICAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkFjdGl2YXRvciI7CisgICAgfQorfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKzxIUj4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvQWN0aXZhdG9yLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWIENMQVNTJm5ic3A7CismbmJzcDtORVhUIENMQVNTPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFjdGl2YXRvci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX2RldGFpbCI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW88L0ZPTlQ+Cis8QlI+CitDbGFzcyBBY3RpdmF0b3I8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5QbHVnaW4KKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5BY3RpdmF0b3I8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5vcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQWN0aXZhdG9yPC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+QWN0aXZhdG9yPC9CPjxEVD5leHRlbmRzIG9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5QbHVnaW48L0RMPgorPC9QUkU+CisKKzxQPgorVGhlIGFjdGl2YXRvciBjbGFzcyBjb250cm9scyB0aGUgcGx1Zy1pbiBsaWZlIGN5Y2xlLgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wcml2YXRlIHN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8iPkFjdGl2YXRvcjwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vQWN0aXZhdG9yLmh0bWwjcGx1Z2luIj5wbHVnaW48L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIHNoYXJlZCBpbnN0YW5jZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9BY3RpdmF0b3IuaHRtbCNQTFVHSU5fSUQiPlBMVUdJTl9JRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgcGx1Zy1pbiBJRC48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLlBsdWdpbiI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWUuUGx1Z2luPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+UExVR0lOX1BSRUZFUkVOQ0VfU0NPUEUsIFBSRUZFUkVOQ0VTX0RFRkFVTFRfT1ZFUlJJREVfQkFTRV9OQU1FLCBQUkVGRVJFTkNFU19ERUZBVUxUX09WRVJSSURFX0ZJTEVfTkFNRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT0gQ09OU1RSVUNUT1IgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0iY29uc3RydWN0b3Jfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vQWN0aXZhdG9yLmh0bWwjQWN0aXZhdG9yKCkiPkFjdGl2YXRvcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBjb25zdHJ1Y3Rvci48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8iPkFjdGl2YXRvcjwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vQWN0aXZhdG9yLmh0bWwjZ2V0RGVmYXVsdCgpIj5nZXREZWZhdWx0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgc2hhcmVkIGluc3RhbmNlLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sI3N0YXJ0KG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0KSI+c3RhcnQ8L0E+PC9CPihvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQ29udGV4dCZuYnNwO2NvbnRleHQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9BY3RpdmF0b3IuaHRtbCNzdG9wKG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0KSI+c3RvcDwvQT48L0I+KG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0Jm5ic3A7Y29udGV4dCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLlBsdWdpbiI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLlBsdWdpbjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmZpbmQsIGZpbmQsIGdldEJ1bmRsZSwgZ2V0RGVzY3JpcHRvciwgZ2V0TG9nLCBnZXRQbHVnaW5QcmVmZXJlbmNlcywgZ2V0U3RhdGVMb2NhdGlvbiwgaW5pdGlhbGl6ZURlZmF1bHRQbHVnaW5QcmVmZXJlbmNlcywgaW50ZXJuYWxJbml0aWFsaXplRGVmYXVsdFBsdWdpblByZWZlcmVuY2VzLCBpc0RlYnVnZ2luZywgb3BlblN0cmVhbSwgb3BlblN0cmVhbSwgc2F2ZVBsdWdpblByZWZlcmVuY2VzLCBzZXREZWJ1Z2dpbmcsIHNodXRkb3duLCBzdGFydHVwLCB0b1N0cmluZzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5jbG9uZSwgZXF1YWxzLCBmaW5hbGl6ZSwgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBGSUVMRCBERVRBSUwgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJQTFVHSU5fSUQiPjwhLS0gLS0+PC9BPjxIMz4KK1BMVUdJTl9JRDwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCBqYXZhLmxhbmcuU3RyaW5nIDxCPlBMVUdJTl9JRDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgcGx1Zy1pbiBJRC4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8uQWN0aXZhdG9yLlBMVUdJTl9JRCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJwbHVnaW4iPjwhLS0gLS0+PC9BPjxIMz4KK3BsdWdpbjwvSDM+Cis8UFJFPgorcHJpdmF0ZSBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vQWN0aXZhdG9yLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlbyI+QWN0aXZhdG9yPC9BPiA8Qj5wbHVnaW48L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIHNoYXJlZCBpbnN0YW5jZS4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+CisKKzwhLS0gPT09PT09PT09IENPTlNUUlVDVE9SIERFVEFJTCA9PT09PT09PSAtLT4KKworPEEgTkFNRT0iY29uc3RydWN0b3JfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+Q29uc3RydWN0b3IgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9IkFjdGl2YXRvcigpIj48IS0tIC0tPjwvQT48SDM+CitBY3RpdmF0b3I8L0gzPgorPFBSRT4KK3B1YmxpYyA8Qj5BY3RpdmF0b3I8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5UaGUgY29uc3RydWN0b3IuCis8UD4KKzwvREw+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0ic3RhcnQob3JnLm9zZ2kuZnJhbWV3b3JrLkJ1bmRsZUNvbnRleHQpIj48IS0tIC0tPjwvQT48SDM+CitzdGFydDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c3RhcnQ8L0I+KG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0Jm5ic3A7Y29udGV4dCkKKyAgICAgICAgICAgdGhyb3dzIGphdmEubGFuZy5FeGNlcHRpb248L1BSRT4KKzxETD4KKzxERD4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5zdGFydDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVBY3RpdmF0b3I8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPnN0YXJ0PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWUuUGx1Z2luPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlRocm93czo8L0I+Cis8REQ+PENPREU+amF2YS5sYW5nLkV4Y2VwdGlvbjwvQ09ERT48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5QbHVnaW4uc3RhcnQob3JnLm9zZ2kuZnJhbWV3b3JrLkJ1bmRsZUNvbnRleHQpPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic3RvcChvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQ29udGV4dCkiPjwhLS0gLS0+PC9BPjxIMz4KK3N0b3A8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnN0b3A8L0I+KG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0Jm5ic3A7Y29udGV4dCkKKyAgICAgICAgICB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbjwvUFJFPgorPERMPgorPEREPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPnN0b3A8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQWN0aXZhdG9yPC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5zdG9wPC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWUuUGx1Z2luPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlRocm93czo8L0I+Cis8REQ+PENPREU+amF2YS5sYW5nLkV4Y2VwdGlvbjwvQ09ERT48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5QbHVnaW4uc3RvcChvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQ29udGV4dCk8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXREZWZhdWx0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldERlZmF1bHQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vQWN0aXZhdG9yLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlbyI+QWN0aXZhdG9yPC9BPiA8Qj5nZXREZWZhdWx0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgc2hhcmVkIGluc3RhbmNlLgorPFA+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzaGFyZWQgaW5zdGFuY2U8L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0FjdGl2YXRvci5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViBDTEFTUyZuYnNwOworJm5ic3A7TkVYVCBDTEFTUzwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9BY3RpdmF0b3IuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJBY3RpdmF0b3IuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX3N1bW1hcnkiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3Jfc3VtbWFyeSI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9kZXRhaWwiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL2NsYXNzLXVzZS9BY3RpdmF0b3IuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9jbGFzcy11c2UvQWN0aXZhdG9yLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTA5ODhiNQotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9jbGFzcy11c2UvQWN0aXZhdG9yLmh0bWwKQEAgLTAsMCArMSwxOTYgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjYuMF8yNCkgb24gV2VkIEZlYiAyMiAxMToyNDozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8uQWN0aXZhdG9yCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJkYXRlIiBDT05URU5UPSIyMDEyLTAyLTIyIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgaWYgKGxvY2F0aW9uLmhyZWYuaW5kZXhPZignaXMtZXh0ZXJuYWw9dHJ1ZScpID09IC0xKSB7CisgICAgICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5BY3RpdmF0b3IiOworICAgIH0KK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+Cis8SFI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9BY3RpdmF0b3IuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vXGNsYXNzLXVzZUFjdGl2YXRvci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFjdGl2YXRvci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLkFjdGl2YXRvcjwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vQWN0aXZhdG9yLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlbyI+QWN0aXZhdG9yPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlbyI+PEI+b3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW88L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9BY3RpdmF0b3IuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvIj5BY3RpdmF0b3I8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlbzwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5GaWVsZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvPC9BPiBkZWNsYXJlZCBhcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9BY3RpdmF0b3IuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvIj5BY3RpdmF0b3I8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wcml2YXRlIHN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8iPkFjdGl2YXRvcjwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+QWN0aXZhdG9yLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9BY3RpdmF0b3IuaHRtbCNwbHVnaW4iPnBsdWdpbjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgc2hhcmVkIGluc3RhbmNlLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW88L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8iPkFjdGl2YXRvcjwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8iPkFjdGl2YXRvcjwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+QWN0aXZhdG9yLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9BY3RpdmF0b3IuaHRtbCNnZXREZWZhdWx0KCkiPmdldERlZmF1bHQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBzaGFyZWQgaW5zdGFuY2UuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8iPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9cY2xhc3MtdXNlQWN0aXZhdG9yLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWN0aXZhdG9yLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUyNDM5MDgKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbApAQCAtMCwwICsxLDExMDUgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjYuMF8yNCkgb24gV2VkIEZlYiAyMiAxMToyNDozMCBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK0FyY2hpdGVjdHVyZVF1ZXJpZXMKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImRhdGUiIENPTlRFTlQ9IjIwMTItMDItMjIiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBpZiAobG9jYXRpb24uaHJlZi5pbmRleE9mKCdpcy1leHRlcm5hbD10cnVlJykgPT0gLTEpIHsKKyAgICAgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJBcmNoaXRlY3R1cmVRdWVyaWVzIjsKKyAgICB9Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorPEhSPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWIENMQVNTJm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX3N1bW1hcnkiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9kZXRhaWwiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllczwvRk9OVD4KKzxCUj4KK0NsYXNzIEFyY2hpdGVjdHVyZVF1ZXJpZXM8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzPC9CPgorPC9QUkU+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+QXJjaGl0ZWN0dXJlUXVlcmllczwvQj48RFQ+ZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0PC9ETD4KKzwvUFJFPgorCis8UD4KKzxETD4KKzxEVD48Qj5BdXRob3I6PC9CPjwvRFQ+CisgIDxERD5zY2R0bnNtPC9ERD4KKzwvREw+Cis8SFI+CisKKzxQPgorCis8IS0tID09PT09PT09IENPTlNUUlVDVE9SIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImNvbnN0cnVjdG9yX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5Db25zdHJ1Y3RvciBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjQXJjaGl0ZWN0dXJlUXVlcmllcygpIj5BcmNoaXRlY3R1cmVRdWVyaWVzPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuQm9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2RlZmluZXNDb25uZWN0aW9ucyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPmRlZmluZXNDb25uZWN0aW9uczwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7Y2wpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS51dGlsLkxpc3QmbHQ7b3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHkmZ3Q7PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjZ2V0QWxsU3ViQ29tcG9uZW50c0luQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5nZXRBbGxTdWJDb21wb25lbnRzSW5DbGFzczwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7Yyk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO09uIGEgZ2l2ZW4gY2xhc3MgKGEgUFJPVEVVUyBzeXN0ZW0pLCByZXRyaWV2ZSBhbGwgdGhlIGNvbnRhaW5lZCBzeXN0ZW1zLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjZ2V0Q29tcG9uZW50RmlsZU5hbWUob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MsIGphdmEubGFuZy5TdHJpbmcpIj5nZXRDb21wb25lbnRGaWxlTmFtZTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7YywKKyAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtlbmQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldENvbm5lY3RlZFBvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPmdldENvbm5lY3RlZFBvcnQ8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jm5ic3A7cG9ydCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjZ2V0Q29ubmVjdGlvbkRlZmluaXRpb24ob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKSI+Z2V0Q29ubmVjdGlvbkRlZmluaXRpb248L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3ImbmJzcDtjb25uZWN0b3IpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldENvbm5lY3Rpb25PdGhlclNpZGUob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPmdldENvbm5lY3Rpb25PdGhlclNpZGU8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jm5ic3A7cDEpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXREZXN0Q29tcG9uZW50Rm9yQ29ubmVjdG9yKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcikiPmdldERlc3RDb21wb25lbnRGb3JDb25uZWN0b3I8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3ImbmJzcDtjb25uKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7R2V0IHRoZSBkZXN0aW5hdGlvbiBjb21wb25lbnQgaW5zdGFuY2Ugb2YgYSBjb25uZWN0b3I8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldERlc3RDb21wb25lbnRJbnN0YW5jZU5hbWVGb3JDb25uZWN0b3Iob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKSI+Z2V0RGVzdENvbXBvbmVudEluc3RhbmNlTmFtZUZvckNvbm5lY3RvcjwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciZuYnNwO2Nvbm4pPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXRyaWV2ZSB0aGUgaW5zdGFuY2UgbmFtZSBvZiBhIGNvbXBvbmVudCBhdCB0aGUgZGVzdGluYXRpb24gb2YgYSBjb25uZWN0b3IuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXREZXN0Q29tcG9uZW50VHlwZU5hbWVGb3JDb25uZWN0b3Iob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKSI+Z2V0RGVzdENvbXBvbmVudFR5cGVOYW1lRm9yQ29ubmVjdG9yPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yJm5ic3A7Y29ubik8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHJpZXZlIHRoZSBtb2RlbCBuYW1lIChvciB0eXBlIG5hbWUpIG9mIGEgY29tcG9uZW50IGF0IHRoZSBkZXN0aW5hdGlvbiBvZiBhIGNvbm5lY3Rvci48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHJpdmF0ZSBzdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXREZXN0UG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IsIG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnRbXSkiPmdldERlc3RQb3J0PC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yJm5ic3A7Y29ubiwKKyAgICAgICAgICAgIG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnRbXSZuYnNwO2Rlc3RfcG9ydCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHJpZXZlcyB0aGUgZGVzdGluYXRpb24gcG9ydCBmb3IgYSBnaXZlbiBjb25uZWN0b3I8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldERlc3RQb3J0TmFtZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IpIj5nZXREZXN0UG9ydE5hbWU8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3ImbmJzcDtjb25uKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7R2V0IHRoZSBkZXN0aW5hdGlvbiBwb3J0IG5hbWUgb2YgYSBjb25uZWN0b3I8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS51dGlsLkxpc3QmbHQ7b3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yJmd0OzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldEV4dGVybmFsSW5wdXRDb25uZWN0b3JzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+Z2V0RXh0ZXJuYWxJbnB1dENvbm5lY3RvcnM8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2MpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXRyaWV2ZXMgYWxsIHRoZSBjb25uZWN0b3JzIGJldHdlZW4gdGhlIGlucHV0IGNvbXBvbmVudCBtb2RlbCBib3VuZGFyaWVzIGFuZCBzdWJjb21wb25lbnRzIHRoYXQgYXJlIGluc2lkZSB0aGUgbW9kZWwuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXRFeHRlcm5hbE91dHB1dENvbm5lY3RvcnMob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5nZXRFeHRlcm5hbE91dHB1dENvbm5lY3RvcnM8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2MpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXRyaWV2ZXMgYWxsIHRoZSBjb25uZWN0b3JzIGJldHdlZW4gc3ViY29tcG9uZW50cyB0aGF0IGFyZSBpbnNpZGUgdGhlIGNvbXBvbmVudCBtb2RlbCBhbmQgdGhlIGNvbXBvbmVudCBtb2RlbCBvdXRwdXRzLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLnV0aWwuTGlzdCZsdDtvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jmd0OzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldElucHV0UG9ydHNGb3JFbGVtZW50KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpIj5nZXRJbnB1dFBvcnRzRm9yRWxlbWVudDwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQmbmJzcDtlbHQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBcyBpdHMgbmFtZSBzYXlzLCByZXRyaWV2ZXMgdGhlIGlucHV0IHBvcnRzIGZvciBhIGdpdmVuIGVsZW1lbnQuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXRJbnRlcm5hbENvbm5lY3RvcnMob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5nZXRJbnRlcm5hbENvbm5lY3RvcnM8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2MpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXRyaWV2ZXMgYWxsIHRoZSBjb25uZWN0b3JzIGJldHdlZW4gc3ViY29tcG9uZW50cyBpbnNpZGUgYSBnaXZlbiBjb21wb25lbnQgbW9kZWwuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5Jmd0OzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnQob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5nZXRMZXZlbDFTdWJDb21wb25lbnRzRm9yQ29tcG9uZW50PC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MmbmJzcDtjKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7T24gYSBnaXZlbiBjbGFzcyAoYSBQUk9URVVTIHN5c3RlbSksIHJldHJpZXZlIGFsbCB0aGUgY29udGFpbmVkIHN5c3RlbXMuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5Jmd0OzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnRXaXRoU3RlcmVvdHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcywgamF2YS5sYW5nLlN0cmluZykiPmdldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnRXaXRoU3RlcmVvdHlwZTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7YywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7c3RlcmVvdHlwZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO09uIGEgZ2l2ZW4gY2xhc3MgKGEgUFJPVEVVUyBzeXN0ZW0pLCByZXRyaWV2ZSBhbGwgdGhlIGNvbnRhaW5lZCBzeXN0ZW1zLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLnV0aWwuTGlzdCZsdDtvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jmd0OzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldE91dHB1dFBvcnRzRm9yRWxlbWVudChvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+Z2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50PC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCZuYnNwO2VsdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FzIGl0cyBuYW1lIHNheXMsIHJldHJpZXZlcyB0aGUgb3V0cHV0IHBvcnRzIGZvciBhIGdpdmVuIGVsZW1lbnQuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLk5hbWVkRWxlbWVudCZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXRQcm90ZXVzQ29tcG9uZW50TW9kZWxzKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsKSI+Z2V0UHJvdGV1c0NvbXBvbmVudE1vZGVsczwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsJm5ic3A7bW9kZWwpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXRyaWV2ZXMgYWxsIHRoZSBjb21wb25lbnQgbW9kZWxzIGF2YWlsYWJsZSBpbnNpZGUgYSBQUk9URVVTIG1vZGVsLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldFJvb3RDbGFzc0Zvck1vZGVsKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsKSI+Z2V0Um9vdENsYXNzRm9yTW9kZWw8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCZuYnNwO20pPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXRyaWV2ZXMgdGhlIGhpZ2hlc3QgbGV2ZWwgY2xhc3MgaW50byB3aGljaCBhIGdpdmVuIG1vZGVsIGlzIGNvbnRhaW5lZC48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXRTb3VyY2VDb21wb25lbnRGb3JDb25uZWN0b3Iob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKSI+Z2V0U291cmNlQ29tcG9uZW50Rm9yQ29ubmVjdG9yPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yJm5ic3A7Y29ubik8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0dldCB0aGUgc291cmNlIGNvbXBvbmVudCBpbnN0YW5jZSBvZiBhIGNvbm5lY3RvcjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjZ2V0U291cmNlQ29tcG9uZW50SW5zdGFuY2VOYW1lRm9yQ29ubmVjdG9yKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcikiPmdldFNvdXJjZUNvbXBvbmVudEluc3RhbmNlTmFtZUZvckNvbm5lY3RvcjwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciZuYnNwO2Nvbm4pPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXRyaWV2ZSB0aGUgaW5zdGFuY2UgbmFtZSBvZiBhIGNvbXBvbmVudCBhdCB0aGUgc291cmNlIG9mIGEgY29ubmVjdG9yLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjZ2V0U291cmNlQ29tcG9uZW50VHlwZU5hbWVGb3JDb25uZWN0b3Iob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKSI+Z2V0U291cmNlQ29tcG9uZW50VHlwZU5hbWVGb3JDb25uZWN0b3I8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3ImbmJzcDtjb25uKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0cmlldmUgdGhlIG1vZGVsIG5hbWUgb2YgYSBjb21wb25lbnQgYXQgdGhlIHNvdXJjZSBvZiBhIGNvbm5lY3Rvci48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHJpdmF0ZSBzdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXRTb3VyY2VQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3Rvciwgb3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydFtdKSI+Z2V0U291cmNlUG9ydDwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciZuYnNwO2Nvbm4sCisgICAgICAgICAgICAgIG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnRbXSZuYnNwO2Rlc3RfcG9ydCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHJpZXZlcyB0aGUgc291cmNlIHBvcnQgZm9yIGEgZ2l2ZW4gY29ubmVjdG9yPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXRTb3VyY2VQb3J0TmFtZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IpIj5nZXRTb3VyY2VQb3J0TmFtZTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciZuYnNwO2Nvbm4pPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtHZXQgdGhlIHNvdXJjZSBwb3J0IG5hbWUgb2YgYSBjb25uZWN0b3IuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXRTdGVyZW90eXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+Z2V0U3RlcmVvdHlwZTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7Y2wpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST5zdXBlcnNlZGVkIGJ5IHRoZSBSb2JvdE1MIEFQSS48L0k+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNpbnNwZWN0RGF0YUZsb3dQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj5pbnNwZWN0RGF0YUZsb3dQb3J0PC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCZuYnNwO3BvcnQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtEZWJ1ZyBmdW5jdGlvbjogcHJpbnRzIGluZm8gYWJvdXQgYSBnaXZlbiBkYXRhZmxvdyBwb3J0LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjaW5zcGVjdFNlcnZpY2VQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj5pbnNwZWN0U2VydmljZVBvcnQ8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jm5ic3A7cG9ydCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0RlYnVnIGZ1bmN0aW9uLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuQm9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2lzQW5JbnB1dFBvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPmlzQW5JbnB1dFBvcnQ8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jm5ic3A7cG9ydCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0ZvciBEYXRhRmxvdyBwb3J0czogaXMgaXQgYW4gSW5wdXQgUG9ydCA/PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5Cb29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjaXNBbk91dHB1dFBvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPmlzQW5PdXRwdXRQb3J0PC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCZuYnNwO3BvcnQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtGb3IgRGF0YUZsb3cgcG9ydHM6IGlzIGl0IGFuIE91dHB1dCBQb3J0ID88L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLkJvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNpc0FQcm92aWRlZFBvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPmlzQVByb3ZpZGVkUG9ydDwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQmbmJzcDtwb3J0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Rm9yIFJvYm90TUwgU2VydmljZVBvcnRzOiBpcyB0aGUgcG9ydCBhICJQcm92aWRlZCIgcG9ydD88L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLkJvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNpc0FSZXF1aXJlZFBvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPmlzQVJlcXVpcmVkUG9ydDwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQmbmJzcDtwb3J0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Rm9yIFJvYm90TUwgU2VydmljZVBvcnRzOiBpcyB0aGUgcG9ydCBhICJSZXF1aXJlZCIgcG9ydD88L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLkJvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNpc0Nvbm5lY3Rpb25WYWxpZChvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IpIj5pc0Nvbm5lY3Rpb25WYWxpZDwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciZuYnNwO2Nvbm5lY3Rvcik8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuQm9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2lzRGF0YUZsb3dQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj5pc0RhdGFGbG93UG9ydDwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQmbmJzcDtwb3J0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7SXMgdGhpcyBwcm9wZXJ0eSBhIERhdGFGbG93IFBvcnQ8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHJpdmF0ZSBzdGF0aWMmbmJzcDtib29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjaXNEZXN0UG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3JFbmQsIG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj5pc0Rlc3RQb3J0PC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yRW5kJm5ic3A7ZW5kLAorICAgICAgICAgICBvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jm5ic3A7cCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NoZWNrcyB3aGV0aGVyIG9yIG5vdCBhIHBvcnQgaXMgYSAiZGVzdGluYXRpb24gcG9ydCIgZnJvbSB0aGUgcG9pbnQgb2YgdmlldyBvZiBhIGdpdmVuIGNvbm5lY3Rvci48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLkJvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNpc01hY3JvQ29tcG9uZW50KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+aXNNYWNyb0NvbXBvbmVudDwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7Yyk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0RvZXMgdGhpcyBjbGFzcyBjb250YWluIHByb3BlcnRpZXMgdGhhdCBhcmUgY2xhc3NlcyB0aGVtc2VsdmVzID88L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLkJvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNpc1BvcnRDb25uZWN0ZWQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPmlzUG9ydENvbm5lY3RlZDwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQmbmJzcDtwMSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuQm9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2lzUm9vdE1vZGVsKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsKSI+aXNSb290TW9kZWw8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCZuYnNwO2VsdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0lzIHRoZSBlbHQgYXQgdGhlIHJvb3Qgb2YgdGhlIG1vZGVsIGhpZXJhcmNoeSA/PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5Cb29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjaXNTZXJ2aWNlUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+aXNTZXJ2aWNlUG9ydDwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQmbmJzcDtwb3J0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7SXMgdGhpcyBwcm9wZXJ0eSBhIFNlcnZpY2UgUG9ydDwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wcml2YXRlIHN0YXRpYyZuYnNwO2Jvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNpc1NvdXJjZVBvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yRW5kLCBvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+aXNTb3VyY2VQb3J0PC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yRW5kJm5ic3A7ZW5kLAorICAgICAgICAgICAgIG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQmbmJzcDtwKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q2hlY2tzIHdoZXRoZXIgb3Igbm90IGEgcG9ydCBpcyBhICJzb3VyY2UgcG9ydCIgZnJvbSB0aGUgcG9pbnQgb2YgdmlldyBvZiBhIGdpdmVuIGNvbm5lY3Rvci48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5jbG9uZSwgZXF1YWxzLCBmaW5hbGl6ZSwgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgdG9TdHJpbmcsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT0gQ09OU1RSVUNUT1IgREVUQUlMID09PT09PT09IC0tPgorCis8QSBOQU1FPSJjb25zdHJ1Y3Rvcl9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5Db25zdHJ1Y3RvciBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iQXJjaGl0ZWN0dXJlUXVlcmllcygpIj48IS0tIC0tPjwvQT48SDM+CitBcmNoaXRlY3R1cmVRdWVyaWVzPC9IMz4KKzxQUkU+CitwdWJsaWMgPEI+QXJjaGl0ZWN0dXJlUXVlcmllczwvQj4oKTwvUFJFPgorPERMPgorPC9ETD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJpc1NvdXJjZVBvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yRW5kLCBvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+PCEtLSAtLT48L0E+PEgzPgoraXNTb3VyY2VQb3J0PC9IMz4KKzxQUkU+Citwcml2YXRlIHN0YXRpYyBib29sZWFuIDxCPmlzU291cmNlUG9ydDwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yRW5kJm5ic3A7ZW5kLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCZuYnNwO3ApPC9QUkU+Cis8REw+Cis8REQ+Q2hlY2tzIHdoZXRoZXIgb3Igbm90IGEgcG9ydCBpcyBhICJzb3VyY2UgcG9ydCIgZnJvbSB0aGUgcG9pbnQgb2YgdmlldyBvZiBhIGdpdmVuIGNvbm5lY3Rvci4KKyBBIHNvdXJjZSBwb3J0IGNhbiBiZSBhbiBvdXRwdXQgcG9ydCBmb3IgYSBjb25uZWN0b3Igc3RlcHBpbmcgb3V0IG9mIGEgY29tcG9uZW50IG9yIGl0IGNhbiBiZQorIGFuIGlucHV0IHBvcnQgZm9yIGEgY29ubmVjdG9yIGxpbmtpbmcgYSBjb21wb25lbnQgbW9kZWwgaW5wdXQgcG9ydCB0byBhIGNvbXBvbmVudCBpbnB1dCBwb3J0CisgaW5zaWRlIHRoZSBjb21wb25lbnQgbW9kZWwgKGUuZy4gZnJvbSB0aGUgbW9kZWwgYm91bmRhcmllcyB0byBhIGNvbXBvbmVudCBpbnNpZGUgdGhlIG1vZGVsKS4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaXNEZXN0UG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3JFbmQsIG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj48IS0tIC0tPjwvQT48SDM+Citpc0Rlc3RQb3J0PC9IMz4KKzxQUkU+Citwcml2YXRlIHN0YXRpYyBib29sZWFuIDxCPmlzRGVzdFBvcnQ8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvckVuZCZuYnNwO2VuZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jm5ic3A7cCk8L1BSRT4KKzxETD4KKzxERD5DaGVja3Mgd2hldGhlciBvciBub3QgYSBwb3J0IGlzIGEgImRlc3RpbmF0aW9uIHBvcnQiIGZyb20gdGhlIHBvaW50IG9mIHZpZXcgb2YgYSBnaXZlbiBjb25uZWN0b3IuCisgQSBkZXN0aW5hdGlvbiBwb3J0IGNhbiBiZSBhbiBpbnB1dCBwb3J0IGZvciBhIGNvbm5lY3RvciBzdGVwcGluZyBvdXQgb2YgYSBjb21wb25lbnQgb3IgaXQgY2FuIGJlCisgYW4gb3V0cHV0IHBvcnQgZm9yIGEgY29ubmVjdG9yIGxpbmtpbmcgYSBjb21wb25lbnQgbW9kZWwgb3V0cHV0IHBvcnQgdG8gYSBjb21wb25lbnQgb3V0cHV0IHBvcnQKKyBpbnNpZGUgdGhlIGNvbXBvbmVudCBtb2RlbCAoZS5nLiBmcm9tIGEgY29tcG9uZW50IGluc2lkZSB0aGUgbW9kZWwgdG8gdGhlIG1vZGVsIGJvdW5kYXJpZXMpLgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTb3VyY2VQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3Rvciwgb3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydFtdKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U291cmNlUG9ydDwvSDM+Cis8UFJFPgorcHJpdmF0ZSBzdGF0aWMgaW50IDxCPmdldFNvdXJjZVBvcnQ8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciZuYnNwO2Nvbm4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0W10mbmJzcDtkZXN0X3BvcnQpPC9QUkU+Cis8REw+Cis8REQ+UmV0cmlldmVzIHRoZSBzb3VyY2UgcG9ydCBmb3IgYSBnaXZlbiBjb25uZWN0b3IKKzxQPgorPEREPjxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPmFuZCBpc1NvdXJjZVBvcnQ8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXREZXN0UG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IsIG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnRbXSkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldERlc3RQb3J0PC9IMz4KKzxQUkU+Citwcml2YXRlIHN0YXRpYyBpbnQgPEI+Z2V0RGVzdFBvcnQ8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciZuYnNwO2Nvbm4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydFtdJm5ic3A7ZGVzdF9wb3J0KTwvUFJFPgorPERMPgorPEREPlJldHJpZXZlcyB0aGUgZGVzdGluYXRpb24gcG9ydCBmb3IgYSBnaXZlbiBjb25uZWN0b3IKKzxQPgorPEREPjxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPmFuZCBpc1NvdXJjZVBvcnQ8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTb3VyY2VQb3J0TmFtZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTb3VyY2VQb3J0TmFtZTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldFNvdXJjZVBvcnROYW1lPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3ImbmJzcDtjb25uKTwvUFJFPgorPERMPgorPEREPkdldCB0aGUgc291cmNlIHBvcnQgbmFtZSBvZiBhIGNvbm5lY3Rvci4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U291cmNlQ29tcG9uZW50VHlwZU5hbWVGb3JDb25uZWN0b3Iob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U291cmNlQ29tcG9uZW50VHlwZU5hbWVGb3JDb25uZWN0b3I8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRTb3VyY2VDb21wb25lbnRUeXBlTmFtZUZvckNvbm5lY3RvcjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yJm5ic3A7Y29ubik8L1BSRT4KKzxETD4KKzxERD5SZXRyaWV2ZSB0aGUgbW9kZWwgbmFtZSBvZiBhIGNvbXBvbmVudCBhdCB0aGUgc291cmNlIG9mIGEgY29ubmVjdG9yLgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5jb25uPC9DT0RFPiAtIAorPERUPjxCPlJldHVybnM6PC9CPjxERD5hIHN0cmluZyBvciBudWxsIGlmIG5vIGNvbXBvbmVudCBoYXMgYmVlbiBmb3VuZCBhdCB0aGUgc291cmNlIG9mIGEgY29ubmVjdG9yLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U291cmNlQ29tcG9uZW50SW5zdGFuY2VOYW1lRm9yQ29ubmVjdG9yKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcikiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFNvdXJjZUNvbXBvbmVudEluc3RhbmNlTmFtZUZvckNvbm5lY3RvcjwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldFNvdXJjZUNvbXBvbmVudEluc3RhbmNlTmFtZUZvckNvbm5lY3RvcjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yJm5ic3A7Y29ubik8L1BSRT4KKzxETD4KKzxERD5SZXRyaWV2ZSB0aGUgaW5zdGFuY2UgbmFtZSBvZiBhIGNvbXBvbmVudCBhdCB0aGUgc291cmNlIG9mIGEgY29ubmVjdG9yLgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5jb25uPC9DT0RFPiAtIAorPERUPjxCPlJldHVybnM6PC9CPjxERD5hIHN0cmluZyBvciBudWxsIGlmIG5vIGNvbXBvbmVudCBoYXMgYmVlbiBmb3VuZCBhdCB0aGUgc291cmNlIG9mIGEgY29ubmVjdG9yLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U291cmNlQ29tcG9uZW50Rm9yQ29ubmVjdG9yKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcikiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFNvdXJjZUNvbXBvbmVudEZvckNvbm5lY3RvcjwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBvcmcuZWNsaXBzZS51bWwyLnVtbC5Qcm9wZXJ0eSA8Qj5nZXRTb3VyY2VDb21wb25lbnRGb3JDb25uZWN0b3I8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciZuYnNwO2Nvbm4pPC9QUkU+Cis8REw+Cis8REQ+R2V0IHRoZSBzb3VyY2UgY29tcG9uZW50IGluc3RhbmNlIG9mIGEgY29ubmVjdG9yCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldERlc3RQb3J0TmFtZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IpIj48IS0tIC0tPjwvQT48SDM+CitnZXREZXN0UG9ydE5hbWU8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXREZXN0UG9ydE5hbWU8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciZuYnNwO2Nvbm4pPC9QUkU+Cis8REw+Cis8REQ+R2V0IHRoZSBkZXN0aW5hdGlvbiBwb3J0IG5hbWUgb2YgYSBjb25uZWN0b3IKKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RGVzdENvbXBvbmVudEZvckNvbm5lY3RvcihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IpIj48IS0tIC0tPjwvQT48SDM+CitnZXREZXN0Q29tcG9uZW50Rm9yQ29ubmVjdG9yPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5IDxCPmdldERlc3RDb21wb25lbnRGb3JDb25uZWN0b3I8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciZuYnNwO2Nvbm4pPC9QUkU+Cis8REw+Cis8REQ+R2V0IHRoZSBkZXN0aW5hdGlvbiBjb21wb25lbnQgaW5zdGFuY2Ugb2YgYSBjb25uZWN0b3IKKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RGVzdENvbXBvbmVudFR5cGVOYW1lRm9yQ29ubmVjdG9yKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcikiPjwhLS0gLS0+PC9BPjxIMz4KK2dldERlc3RDb21wb25lbnRUeXBlTmFtZUZvckNvbm5lY3RvcjwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldERlc3RDb21wb25lbnRUeXBlTmFtZUZvckNvbm5lY3RvcjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yJm5ic3A7Y29ubik8L1BSRT4KKzxETD4KKzxERD5SZXRyaWV2ZSB0aGUgbW9kZWwgbmFtZSAob3IgdHlwZSBuYW1lKSBvZiBhIGNvbXBvbmVudCBhdCB0aGUgZGVzdGluYXRpb24gb2YgYSBjb25uZWN0b3IuCis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmNvbm48L0NPREU+IC0gCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgc3RyaW5nIG9yIG51bGwgaWYgbm8gY29tcG9uZW50IGhhcyBiZWVuIGZvdW5kIGF0IHRoZSBkZXN0aW5hdGlvbiBvZiBhIGNvbm5lY3Rvci48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldERlc3RDb21wb25lbnRJbnN0YW5jZU5hbWVGb3JDb25uZWN0b3Iob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0RGVzdENvbXBvbmVudEluc3RhbmNlTmFtZUZvckNvbm5lY3RvcjwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldERlc3RDb21wb25lbnRJbnN0YW5jZU5hbWVGb3JDb25uZWN0b3I8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciZuYnNwO2Nvbm4pPC9QUkU+Cis8REw+Cis8REQ+UmV0cmlldmUgdGhlIGluc3RhbmNlIG5hbWUgb2YgYSBjb21wb25lbnQgYXQgdGhlIGRlc3RpbmF0aW9uIG9mIGEgY29ubmVjdG9yLgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5jb25uPC9DT0RFPiAtIAorPERUPjxCPlJldHVybnM6PC9CPjxERD5hIHN0cmluZyBvciBudWxsIGlmIG5vIGNvbXBvbmVudCBoYXMgYmVlbiBmb3VuZCBhdCB0aGUgZGVzdGluYXRpb24gb2YgYSBjb25uZWN0b3IuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRJbnRlcm5hbENvbm5lY3RvcnMob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj48IS0tIC0tPjwvQT48SDM+CitnZXRJbnRlcm5hbENvbm5lY3RvcnM8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgamF2YS51dGlsLkxpc3QmbHQ7b3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yJmd0OyA8Qj5nZXRJbnRlcm5hbENvbm5lY3RvcnM8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7Yyk8L1BSRT4KKzxETD4KKzxERD5SZXRyaWV2ZXMgYWxsIHRoZSBjb25uZWN0b3JzIGJldHdlZW4gc3ViY29tcG9uZW50cyBpbnNpZGUgYSBnaXZlbiBjb21wb25lbnQgbW9kZWwuCisgKGRvZXMgbm90IHJldHJpZXZlIGNvbm5lY3RvcnMgYmV0d2VlbiBjb21wb25lbnQgbW9kZWwgYm91bmRhcmllcyBhbmQgc3ViY29tcG9uZW50cyBpbnNpZGUgdGhlIG1vZGVsKS4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RXh0ZXJuYWxJbnB1dENvbm5lY3RvcnMob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj48IS0tIC0tPjwvQT48SDM+CitnZXRFeHRlcm5hbElucHV0Q29ubmVjdG9yczwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLnV0aWwuTGlzdCZsdDtvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3ImZ3Q7IDxCPmdldEV4dGVybmFsSW5wdXRDb25uZWN0b3JzPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2MpPC9QUkU+Cis8REw+Cis8REQ+UmV0cmlldmVzIGFsbCB0aGUgY29ubmVjdG9ycyBiZXR3ZWVuIHRoZSBpbnB1dCBjb21wb25lbnQgbW9kZWwgYm91bmRhcmllcyBhbmQgc3ViY29tcG9uZW50cyB0aGF0IGFyZSBpbnNpZGUgdGhlIG1vZGVsLgorIChkb2VzIG5vdCByZXRyaWV2ZSBjb25uZWN0b3JzIGJldHdlZW4gc3ViY29tcG9uZW50cyBpbnNpZGUgdGhlIGNvbXBvbmVudCBtb2RlbCwgbm9yIGNvbm5lY3RvcnMgZnJvbSBzdWJjb21wb25lbnRzIHRvIGNvbXBvbmVudCBtb2RlbCBvdXRwdXRzKS4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RXh0ZXJuYWxPdXRwdXRDb25uZWN0b3JzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0RXh0ZXJuYWxPdXRwdXRDb25uZWN0b3JzPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciZndDsgPEI+Z2V0RXh0ZXJuYWxPdXRwdXRDb25uZWN0b3JzPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2MpPC9QUkU+Cis8REw+Cis8REQ+UmV0cmlldmVzIGFsbCB0aGUgY29ubmVjdG9ycyBiZXR3ZWVuIHN1YmNvbXBvbmVudHMgdGhhdCBhcmUgaW5zaWRlIHRoZSBjb21wb25lbnQgbW9kZWwgYW5kIHRoZSBjb21wb25lbnQgbW9kZWwgb3V0cHV0cy4KKyAoZG9lcyBub3QgcmV0cmlldmUgY29ubmVjdG9ycyBiZXR3ZWVuIHN1YmNvbXBvbmVudHMgaW5zaWRlIHRoZSBjb21wb25lbnQgbW9kZWwsIG5vciBjb25uZWN0b3JzIGZyb20gY29tcG9uZW50IG1vZGVsIGlucHV0cyB0byBzdWJjb21wb25lbnRzKS4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Um9vdENsYXNzRm9yTW9kZWwob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwpIj48IS0tIC0tPjwvQT48SDM+CitnZXRSb290Q2xhc3NGb3JNb2RlbDwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyA8Qj5nZXRSb290Q2xhc3NGb3JNb2RlbDwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwmbmJzcDttKTwvUFJFPgorPERMPgorPEREPlJldHJpZXZlcyB0aGUgaGlnaGVzdCBsZXZlbCBjbGFzcyBpbnRvIHdoaWNoIGEgZ2l2ZW4gbW9kZWwgaXMgY29udGFpbmVkLgorIChhIG1vZGVsIGNhbiBiZSBjb250YWluZWQgaW4gYSBtb2RlbCAuLi4gd2hpY2ggaXMgY29udGFpbmVkIGluIGEgY2xhc3MpLgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRBbGxTdWJDb21wb25lbnRzSW5DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEFsbFN1YkNvbXBvbmVudHNJbkNsYXNzPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5Jmd0OyA8Qj5nZXRBbGxTdWJDb21wb25lbnRzSW5DbGFzczwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MmbmJzcDtjKTwvUFJFPgorPERMPgorPEREPk9uIGEgZ2l2ZW4gY2xhc3MgKGEgUFJPVEVVUyBzeXN0ZW0pLCByZXRyaWV2ZSBhbGwgdGhlIGNvbnRhaW5lZCBzeXN0ZW1zLgorIFJlY3Vyc2l2ZS4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudChvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPjwhLS0gLS0+PC9BPjxIMz4KK2dldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgamF2YS51dGlsLkxpc3QmbHQ7b3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHkmZ3Q7IDxCPmdldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnQ8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7Yyk8L1BSRT4KKzxETD4KKzxERD5PbiBhIGdpdmVuIGNsYXNzIChhIFBST1RFVVMgc3lzdGVtKSwgcmV0cmlldmUgYWxsIHRoZSBjb250YWluZWQgc3lzdGVtcy4KKyBOb3QgcmVjdXJzaXZlLiBSZXRyaWV2ZXMgb25seSBvbmUgbGV2ZWwgZGVlcC4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudFdpdGhTdGVyZW90eXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudFdpdGhTdGVyZW90eXBlPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5Jmd0OyA8Qj5nZXRMZXZlbDFTdWJDb21wb25lbnRzRm9yQ29tcG9uZW50V2l0aFN0ZXJlb3R5cGU8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7YywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7c3RlcmVvdHlwZSk8L1BSRT4KKzxETD4KKzxERD5PbiBhIGdpdmVuIGNsYXNzIChhIFBST1RFVVMgc3lzdGVtKSwgcmV0cmlldmUgYWxsIHRoZSBjb250YWluZWQgc3lzdGVtcy4KKyBOb3QgcmVjdXJzaXZlLiBSZXRyaWV2ZXMgb25seSBvbmUgbGV2ZWwgZGVlcC4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpIj48IS0tIC0tPjwvQT48SDM+CitnZXRPdXRwdXRQb3J0c0ZvckVsZW1lbnQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgamF2YS51dGlsLkxpc3QmbHQ7b3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCZndDsgPEI+Z2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50Jm5ic3A7ZWx0KTwvUFJFPgorPERMPgorPEREPkFzIGl0cyBuYW1lIHNheXMsIHJldHJpZXZlcyB0aGUgb3V0cHV0IHBvcnRzIGZvciBhIGdpdmVuIGVsZW1lbnQuCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldElucHV0UG9ydHNGb3JFbGVtZW50KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpIj48IS0tIC0tPjwvQT48SDM+CitnZXRJbnB1dFBvcnRzRm9yRWxlbWVudDwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLnV0aWwuTGlzdCZsdDtvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jmd0OyA8Qj5nZXRJbnB1dFBvcnRzRm9yRWxlbWVudDwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCZuYnNwO2VsdCk8L1BSRT4KKzxETD4KKzxERD5BcyBpdHMgbmFtZSBzYXlzLCByZXRyaWV2ZXMgdGhlIGlucHV0IHBvcnRzIGZvciBhIGdpdmVuIGVsZW1lbnQuCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFByb3RldXNDb21wb25lbnRNb2RlbHMob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwpIj48IS0tIC0tPjwvQT48SDM+CitnZXRQcm90ZXVzQ29tcG9uZW50TW9kZWxzPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLk5hbWVkRWxlbWVudCZndDsgPEI+Z2V0UHJvdGV1c0NvbXBvbmVudE1vZGVsczwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwmbmJzcDttb2RlbCk8L1BSRT4KKzxETD4KKzxERD5SZXRyaWV2ZXMgYWxsIHRoZSBjb21wb25lbnQgbW9kZWxzIGF2YWlsYWJsZSBpbnNpZGUgYSBQUk9URVVTIG1vZGVsLgorIFRoaXMgaXMgYmFzZWQgb24gc3RlcmVvdHlwZSBuYW1lcy4gTm90IHJvYnVzdC4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaXNSb290TW9kZWwob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwpIj48IS0tIC0tPjwvQT48SDM+Citpc1Jvb3RNb2RlbDwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuQm9vbGVhbiA8Qj5pc1Jvb3RNb2RlbDwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwmbmJzcDtlbHQpPC9QUkU+Cis8REw+Cis8REQ+SXMgdGhlIGVsdCBhdCB0aGUgcm9vdCBvZiB0aGUgbW9kZWwgaGllcmFyY2h5ID8KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZWx0PC9DT0RFPiAtIAorPERUPjxCPlJldHVybnM6PC9CPjxERD48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImlzTWFjcm9Db21wb25lbnQob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj48IS0tIC0tPjwvQT48SDM+Citpc01hY3JvQ29tcG9uZW50PC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5Cb29sZWFuIDxCPmlzTWFjcm9Db21wb25lbnQ8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7Yyk8L1BSRT4KKzxETD4KKzxERD5Eb2VzIHRoaXMgY2xhc3MgY29udGFpbiBwcm9wZXJ0aWVzIHRoYXQgYXJlIGNsYXNzZXMgdGhlbXNlbHZlcyA/CisgKGkuZS4gaXMgdGhpcyBjbGFzcyBhIGNvbnRhaW5lciBvZiBzdWItY2xhc3NlcykKKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+YzwvQ09ERT4gLSAKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRDb21wb25lbnRGaWxlTmFtZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcywgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2dldENvbXBvbmVudEZpbGVOYW1lPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0Q29tcG9uZW50RmlsZU5hbWU8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7YywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7ZW5kKTwvUFJFPgorPERMPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaXNQb3J0Q29ubmVjdGVkKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj48IS0tIC0tPjwvQT48SDM+Citpc1BvcnRDb25uZWN0ZWQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgamF2YS5sYW5nLkJvb2xlYW4gPEI+aXNQb3J0Q29ubmVjdGVkPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jm5ic3A7cDEpPC9QUkU+Cis8REw+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRDb25uZWN0aW9uT3RoZXJTaWRlKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj48IS0tIC0tPjwvQT48SDM+CitnZXRDb25uZWN0aW9uT3RoZXJTaWRlPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0Q29ubmVjdGlvbk90aGVyU2lkZTwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCZuYnNwO3AxKTwvUFJFPgorPERMPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaXNEYXRhRmxvd1BvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPjwhLS0gLS0+PC9BPjxIMz4KK2lzRGF0YUZsb3dQb3J0PC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5Cb29sZWFuIDxCPmlzRGF0YUZsb3dQb3J0PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jm5ic3A7cG9ydCk8L1BSRT4KKzxETD4KKzxERD5JcyB0aGlzIHByb3BlcnR5IGEgRGF0YUZsb3cgUG9ydAorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5wb3J0PC9DT0RFPiAtIAorPERUPjxCPlJldHVybnM6PC9CPjxERD5pcyB0aGlzIGEgRGF0YUZsb3cgcG9ydCA/PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJpc0FuSW5wdXRQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj48IS0tIC0tPjwvQT48SDM+Citpc0FuSW5wdXRQb3J0PC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5Cb29sZWFuIDxCPmlzQW5JbnB1dFBvcnQ8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQmbmJzcDtwb3J0KTwvUFJFPgorPERMPgorPEREPkZvciBEYXRhRmxvdyBwb3J0czogaXMgaXQgYW4gSW5wdXQgUG9ydCA/Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnBvcnQ8L0NPREU+IC0gCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmZhbHNlIGlmIHRoZSBwb3J0IGlzIG5vdCBhIERhdGFGbG93UG9ydCBvciBub3QgYW4gaW5wdXQgcG9ydC48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImlzQW5PdXRwdXRQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj48IS0tIC0tPjwvQT48SDM+Citpc0FuT3V0cHV0UG9ydDwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuQm9vbGVhbiA8Qj5pc0FuT3V0cHV0UG9ydDwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCZuYnNwO3BvcnQpPC9QUkU+Cis8REw+Cis8REQ+Rm9yIERhdGFGbG93IHBvcnRzOiBpcyBpdCBhbiBPdXRwdXQgUG9ydCA/Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnBvcnQ8L0NPREU+IC0gCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmZhbHNlIGlmIHRoZSBwb3J0IGlzIG5vdCBhIERhdGFGbG93UG9ydCBvciBub3QgYW4gb3V0cHV0IHBvcnQuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJpc0FQcm92aWRlZFBvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPjwhLS0gLS0+PC9BPjxIMz4KK2lzQVByb3ZpZGVkUG9ydDwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuQm9vbGVhbiA8Qj5pc0FQcm92aWRlZFBvcnQ8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQmbmJzcDtwb3J0KTwvUFJFPgorPERMPgorPEREPkZvciBSb2JvdE1MIFNlcnZpY2VQb3J0czogaXMgdGhlIHBvcnQgYSAiUHJvdmlkZWQiIHBvcnQ/Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnBvcnQ8L0NPREU+IC0gCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmZhbHNlIGlmIHRoZSBwb3J0IGlzIG5vdCBhIFNlcnZpY2VQb3J0IG9yIG5vdCBhICJQcm92aWRlZCIgU2VydmljZVBvcnQuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJpc0FSZXF1aXJlZFBvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPjwhLS0gLS0+PC9BPjxIMz4KK2lzQVJlcXVpcmVkUG9ydDwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuQm9vbGVhbiA8Qj5pc0FSZXF1aXJlZFBvcnQ8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQmbmJzcDtwb3J0KTwvUFJFPgorPERMPgorPEREPkZvciBSb2JvdE1MIFNlcnZpY2VQb3J0czogaXMgdGhlIHBvcnQgYSAiUmVxdWlyZWQiIHBvcnQ/Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnBvcnQ8L0NPREU+IC0gCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmZhbHNlIGlmIHRoZSBwb3J0IGlzIG5vdCBhIFNlcnZpY2VQb3J0IG9yIG5vdCBhICJSZXF1aXJlZCIgU2VydmljZVBvcnQuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJpc1NlcnZpY2VQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj48IS0tIC0tPjwvQT48SDM+Citpc1NlcnZpY2VQb3J0PC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5Cb29sZWFuIDxCPmlzU2VydmljZVBvcnQ8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQmbmJzcDtwb3J0KTwvUFJFPgorPERMPgorPEREPklzIHRoaXMgcHJvcGVydHkgYSBTZXJ2aWNlIFBvcnQKKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+cG9ydDwvQ09ERT4gLSAKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+aXMgdGhpcyBhIHNlcnZpY2UgcG9ydCA/PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJkZWZpbmVzQ29ubmVjdGlvbnMob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj48IS0tIC0tPjwvQT48SDM+CitkZWZpbmVzQ29ubmVjdGlvbnM8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgamF2YS5sYW5nLkJvb2xlYW4gPEI+ZGVmaW5lc0Nvbm5lY3Rpb25zPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2NsKTwvUFJFPgorPERMPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaXNDb25uZWN0aW9uVmFsaWQob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKSI+PCEtLSAtLT48L0E+PEgzPgoraXNDb25uZWN0aW9uVmFsaWQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgamF2YS5sYW5nLkJvb2xlYW4gPEI+aXNDb25uZWN0aW9uVmFsaWQ8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciZuYnNwO2Nvbm5lY3Rvcik8L1BSRT4KKzxETD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldENvbm5lY3Rpb25EZWZpbml0aW9uKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcikiPjwhLS0gLS0+PC9BPjxIMz4KK2dldENvbm5lY3Rpb25EZWZpbml0aW9uPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0Q29ubmVjdGlvbkRlZmluaXRpb248L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciZuYnNwO2Nvbm5lY3Rvcik8L1BSRT4KKzxETD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldENvbm5lY3RlZFBvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldENvbm5lY3RlZFBvcnQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgb3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCA8Qj5nZXRDb25uZWN0ZWRQb3J0PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jm5ic3A7cG9ydCk8L1BSRT4KKzxETD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFN0ZXJlb3R5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTdGVyZW90eXBlPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0U3RlcmVvdHlwZTwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MmbmJzcDtjbCk8L1BSRT4KKzxETD4KKzxERD48Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST5zdXBlcnNlZGVkIGJ5IHRoZSBSb2JvdE1MIEFQSS48L0k+Cis8UD4KKzxERD5HZXQgdGhlIGZpcnN0IHN0ZXJlb3R5cGUgYXBwbGllZCB0byBhIGdpdmVuIGNsYXNzLgorIFdhcm5pbmc6IG90aGVyIHN0ZXJlb3R5cGVzIGFyZSBpZ25vcmVkLiBUbyB1c2Ugd2l0aCBjYXJlLgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJpbnNwZWN0RGF0YUZsb3dQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj48IS0tIC0tPjwvQT48SDM+CitpbnNwZWN0RGF0YUZsb3dQb3J0PC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIHZvaWQgPEI+aW5zcGVjdERhdGFGbG93UG9ydDwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCZuYnNwO3BvcnQpPC9QUkU+Cis8REw+Cis8REQ+RGVidWcgZnVuY3Rpb246IHByaW50cyBpbmZvIGFib3V0IGEgZ2l2ZW4gZGF0YWZsb3cgcG9ydC4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaW5zcGVjdFNlcnZpY2VQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj48IS0tIC0tPjwvQT48SDM+CitpbnNwZWN0U2VydmljZVBvcnQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgdm9pZCA8Qj5pbnNwZWN0U2VydmljZVBvcnQ8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQmbmJzcDtwb3J0KTwvUFJFPgorPERMPgorPEREPkRlYnVnIGZ1bmN0aW9uLiBQcmludHMgaW5mbyBhYm91dCBhIGdpdmVuIHNlcnZpY2UgcG9ydC4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViBDTEFTUyZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJBcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3JfZGV0YWlsIj5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmh0bWwgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFjNGM0Y2YKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sCkBAIC0wLDAgKzEsMjk3IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS42LjBfMjQpIG9uIFdlZCBGZWIgMjIgMTE6MjQ6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitEYXRhVHlwZVF1ZXJpZXMKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImRhdGUiIENPTlRFTlQ9IjIwMTItMDItMjIiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBpZiAobG9jYXRpb24uaHJlZi5pbmRleE9mKCdpcy1leHRlcm5hbD10cnVlJykgPT0gLTEpIHsKKyAgICAgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJEYXRhVHlwZVF1ZXJpZXMiOworICAgIH0KK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+Cis8SFI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0RhdGFUeXBlUXVlcmllcy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcyI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRlNNUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkRhdGFUeXBlUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3Jfc3VtbWFyeSI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX2RldGFpbCI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzPC9GT05UPgorPEJSPgorQ2xhc3MgRGF0YVR5cGVRdWVyaWVzPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMuRGF0YVR5cGVRdWVyaWVzPC9CPgorPC9QUkU+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+RGF0YVR5cGVRdWVyaWVzPC9CPjxEVD5leHRlbmRzIGphdmEubGFuZy5PYmplY3Q8L0RMPgorPC9QUkU+CisKKzxQPgorPEhSPgorCis8UD4KKworPCEtLSA9PT09PT09PSBDT05TVFJVQ1RPUiBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+Q29uc3RydWN0b3IgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmh0bWwjRGF0YVR5cGVRdWVyaWVzKCkiPkRhdGFUeXBlUXVlcmllczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmh0bWwjRW51bVBST1RFVVNEYXRhVHlwZXMob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwpIj5FbnVtUFJPVEVVU0RhdGFUeXBlczwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsJm5ic3A7bW9kZWwpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHJpdmF0ZSAmbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuaHRtbCNnZXRFbGVtZW50c0RhdGFUeXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQsIGphdmEudXRpbC5MaW5rZWRMaXN0KSI+Z2V0RWxlbWVudHNEYXRhVHlwZTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQmbmJzcDtwYXJlbnRfZWx0LAorICAgICAgICAgICAgICAgICAgICBqYXZhLnV0aWwuTGlua2VkTGlzdCZsdDtvcmcuZWNsaXBzZS51bWwyLnVtbC5OYW1lZEVsZW1lbnQmZ3Q7Jm5ic3A7dGFyZ2V0X2xpc3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZWN1cnNpdmUgc3ViLWZ1bmN0aW9uIHRvIGJyb3dzZSBtb2RlbCBhbmQgZ2V0IGFsbCB1c2VyLWRlZmluZWQgZGF0YXR5cGVzLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLnV0aWwuTGlzdCZsdDtvcmcuZWNsaXBzZS51bWwyLnVtbC5OYW1lZEVsZW1lbnQmZ3Q7PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuaHRtbCNnZXRFbGVtZW50c0RhdGFUeXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsKSI+Z2V0RWxlbWVudHNEYXRhVHlwZTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsJm5ic3A7bW9kZWwpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtHZXQgYWxsIHVzZXItZGVmaW5lZCBkYXRhdHlwZXMuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Y2xvbmUsIGVxdWFscywgZmluYWxpemUsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHRvU3RyaW5nLCB3YWl0LCB3YWl0LCB3YWl0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09IENPTlNUUlVDVE9SIERFVEFJTCA9PT09PT09PSAtLT4KKworPEEgTkFNRT0iY29uc3RydWN0b3JfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+Q29uc3RydWN0b3IgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9IkRhdGFUeXBlUXVlcmllcygpIj48IS0tIC0tPjwvQT48SDM+CitEYXRhVHlwZVF1ZXJpZXM8L0gzPgorPFBSRT4KK3B1YmxpYyA8Qj5EYXRhVHlwZVF1ZXJpZXM8L0I+KCk8L1BSRT4KKzxETD4KKzwvREw+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iRW51bVBST1RFVVNEYXRhVHlwZXMob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwpIj48IS0tIC0tPjwvQT48SDM+CitFbnVtUFJPVEVVU0RhdGFUeXBlczwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+RW51bVBST1RFVVNEYXRhVHlwZXM8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsJm5ic3A7bW9kZWwpPC9QUkU+Cis8REw+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRFbGVtZW50c0RhdGFUeXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0RWxlbWVudHNEYXRhVHlwZTwvSDM+Cis8UFJFPgorcHVibGljIGphdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLk5hbWVkRWxlbWVudCZndDsgPEI+Z2V0RWxlbWVudHNEYXRhVHlwZTwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwmbmJzcDttb2RlbCk8L1BSRT4KKzxETD4KKzxERD5HZXQgYWxsIHVzZXItZGVmaW5lZCBkYXRhdHlwZXMuCis8UD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+QSBsaXN0IG9mIGRhdGF0eXBlczwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RWxlbWVudHNEYXRhVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50LCBqYXZhLnV0aWwuTGlua2VkTGlzdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEVsZW1lbnRzRGF0YVR5cGU8L0gzPgorPFBSRT4KK3ByaXZhdGUgdm9pZCA8Qj5nZXRFbGVtZW50c0RhdGFUeXBlPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50Jm5ic3A7cGFyZW50X2VsdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEudXRpbC5MaW5rZWRMaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLk5hbWVkRWxlbWVudCZndDsmbmJzcDt0YXJnZXRfbGlzdCk8L1BSRT4KKzxETD4KKzxERD5SZWN1cnNpdmUgc3ViLWZ1bmN0aW9uIHRvIGJyb3dzZSBtb2RlbCBhbmQgZ2V0IGFsbCB1c2VyLWRlZmluZWQgZGF0YXR5cGVzLgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9EYXRhVHlwZVF1ZXJpZXMuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0ZTTVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcyI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJEYXRhVHlwZVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX3N1bW1hcnkiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9kZXRhaWwiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9GU01RdWVyaWVzLmh0bWwgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0ZTTVF1ZXJpZXMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kZGFjMzA4Ci0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9GU01RdWVyaWVzLmh0bWwKQEAgLTAsMCArMSwyOTkgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjYuMF8yNCkgb24gV2VkIEZlYiAyMiAxMToyNDozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK0ZTTVF1ZXJpZXMKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImRhdGUiIENPTlRFTlQ9IjIwMTItMDItMjIiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBpZiAobG9jYXRpb24uaHJlZi5pbmRleE9mKCdpcy1leHRlcm5hbD10cnVlJykgPT0gLTEpIHsKKyAgICAgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJGU01RdWVyaWVzIjsKKyAgICB9Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorPEhSPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9GU01RdWVyaWVzLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRlNNUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkZTTVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX3N1bW1hcnkiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9kZXRhaWwiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllczwvRk9OVD4KKzxCUj4KK0NsYXNzIEZTTVF1ZXJpZXM8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcy5GU01RdWVyaWVzPC9CPgorPC9QUkU+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+RlNNUXVlcmllczwvQj48RFQ+ZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0PC9ETD4KKzwvUFJFPgorCis8UD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT0gQ09OU1RSVUNUT1IgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0iY29uc3RydWN0b3Jfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0ZTTVF1ZXJpZXMuaHRtbCNGU01RdWVyaWVzKCkiPkZTTVF1ZXJpZXM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLlN0YXRlTWFjaGluZSZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0ZTTVF1ZXJpZXMuaHRtbCNnZXRTdGF0ZU1hY2hpbmVzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpIj5nZXRTdGF0ZU1hY2hpbmVzPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCZuYnNwO2VsdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0ZpbmQgYWxsIHN0YXRlIG1hY2hpbmVzIGluIGEgY29tcG9uZW50LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLnV0aWwuTGlzdCZsdDtvcmcuZWNsaXBzZS51bWwyLnVtbC5WZXJ0ZXgmZ3Q7PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9GU01RdWVyaWVzLmh0bWwjZ2V0U3RhdGVzKG9yZy5lY2xpcHNlLnVtbDIudW1sLlN0YXRlTWFjaGluZSkiPmdldFN0YXRlczwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlN0YXRlTWFjaGluZSZuYnNwO3NtKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7RmluZCBhbGwgc3RhdGVzIGluIGEgc3RhdGUgbWFjaGluZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS51dGlsLkxpc3QmbHQ7b3JnLmVjbGlwc2UudW1sMi51bWwuVHJhbnNpdGlvbiZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0ZTTVF1ZXJpZXMuaHRtbCNnZXRUcmFuc2l0aW9ucyhvcmcuZWNsaXBzZS51bWwyLnVtbC5TdGF0ZU1hY2hpbmUpIj5nZXRUcmFuc2l0aW9uczwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlN0YXRlTWFjaGluZSZuYnNwO3NtKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7RmluZCBhbGwgdHJhbnNpdGlvbnMgaW4gYSBzdGF0ZSBtYWNoaW5lLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmNsb25lLCBlcXVhbHMsIGZpbmFsaXplLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB0b1N0cmluZywgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PSBDT05TVFJVQ1RPUiBERVRBSUwgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImNvbnN0cnVjdG9yX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJGU01RdWVyaWVzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK0ZTTVF1ZXJpZXM8L0gzPgorPFBSRT4KK3B1YmxpYyA8Qj5GU01RdWVyaWVzPC9CPigpPC9QUkU+Cis8REw+Cis8L0RMPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImdldFN0YXRlcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5TdGF0ZU1hY2hpbmUpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTdGF0ZXM8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLnV0aWwuTGlzdCZsdDtvcmcuZWNsaXBzZS51bWwyLnVtbC5WZXJ0ZXgmZ3Q7IDxCPmdldFN0YXRlczwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuU3RhdGVNYWNoaW5lJm5ic3A7c20pPC9QUkU+Cis8REw+Cis8REQ+RmluZCBhbGwgc3RhdGVzIGluIGEgc3RhdGUgbWFjaGluZS4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+c208L0NPREU+IC0gYSBzdGF0ZSBtYWNoaW5lCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbGlzdCBvZiBzdGF0ZXM8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFRyYW5zaXRpb25zKG9yZy5lY2xpcHNlLnVtbDIudW1sLlN0YXRlTWFjaGluZSkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFRyYW5zaXRpb25zPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS51dGlsLkxpc3QmbHQ7b3JnLmVjbGlwc2UudW1sMi51bWwuVHJhbnNpdGlvbiZndDsgPEI+Z2V0VHJhbnNpdGlvbnM8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlN0YXRlTWFjaGluZSZuYnNwO3NtKTwvUFJFPgorPERMPgorPEREPkZpbmQgYWxsIHRyYW5zaXRpb25zIGluIGEgc3RhdGUgbWFjaGluZS4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+c208L0NPREU+IC0gYSBzdGF0ZSBtYWNoaW5lCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbGlzdCBvZiB0cmFuc2l0aW9uczwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U3RhdGVNYWNoaW5lcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U3RhdGVNYWNoaW5lczwvSDM+Cis8UFJFPgorcHVibGljIGphdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLlN0YXRlTWFjaGluZSZndDsgPEI+Z2V0U3RhdGVNYWNoaW5lczwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCZuYnNwO2VsdCk8L1BSRT4KKzxETD4KKzxERD5GaW5kIGFsbCBzdGF0ZSBtYWNoaW5lcyBpbiBhIGNvbXBvbmVudC4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZWx0PC9DT0RFPiAtIAorPERUPjxCPlJldHVybnM6PC9CPjxERD5hIGxpc3Qgb2Ygc3RhdGUgbWFjaGluZXM8L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0ZTTVF1ZXJpZXMuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcyI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcyI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9GU01RdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRlNNUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3Jfc3VtbWFyeSI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX2RldGFpbCI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjU3M2U2ZQotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbApAQCAtMCwwICsxLDY0MyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNi4wXzI0KSBvbiBXZWQgRmViIDIyIDExOjI0OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorR2VuZXJhbFF1ZXJpZXMKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImRhdGUiIENPTlRFTlQ9IjIwMTItMDItMjIiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBpZiAobG9jYXRpb24uaHJlZi5pbmRleE9mKCdpcy1leHRlcm5hbD10cnVlJykgPT0gLTEpIHsKKyAgICAgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJHZW5lcmFsUXVlcmllcyI7CisgICAgfQorfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKzxIUj4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvR2VuZXJhbFF1ZXJpZXMuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9GU01RdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX3N1bW1hcnkiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9kZXRhaWwiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllczwvRk9OVD4KKzxCUj4KK0NsYXNzIEdlbmVyYWxRdWVyaWVzPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMuR2VuZXJhbFF1ZXJpZXM8L0I+Cis8L1BSRT4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5HZW5lcmFsUXVlcmllczwvQj48RFQ+ZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0PC9ETD4KKzwvUFJFPgorCis8UD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT0gQ09OU1RSVUNUT1IgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0iY29uc3RydWN0b3Jfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjR2VuZXJhbFF1ZXJpZXMoKSI+R2VuZXJhbFF1ZXJpZXM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI2ZpbmRDbGFzc0luTW9kZWwob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwsIGphdmEubGFuZy5TdHJpbmcpIj5maW5kQ2xhc3NJbk1vZGVsPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwmbmJzcDttb2RlbCwKKyAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO25hbWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtGaW5kIGEgY2xhc3Mgd2l0aCBhIGdpdmVuIG5hbWUgaW4gdGhlIG1vZGVsLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNmaW5kQ2xhc3NJblBhY2thZ2Uob3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZSwgamF2YS5sYW5nLlN0cmluZykiPmZpbmRDbGFzc0luUGFja2FnZTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhY2thZ2UmbmJzcDtwYWNrLAorICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtuYW1lKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7RmluZCBhIGNsYXNzIHdpdGggYSBnaXZlbiBuYW1lIGluIGEgcGFja2FnZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNnZXRBdHRyaWJ1dGVWYWx1ZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcywgamF2YS5sYW5nLlN0cmluZywgamF2YS5sYW5nLlN0cmluZykiPmdldEF0dHJpYnV0ZVZhbHVlPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MmbmJzcDtjbCwKKyAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDthdHRyLAorICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO3N0bmFtZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybiB0aGUgdmFsdWUgb2YgYSBnaXZlbiBhdHRyaWJ1dGUgdXNpbmcgdGhlIGdpdmVuIHN0ZXJlb3R5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS51dGlsLkxpc3QmbHQ7amF2YS5sYW5nLlN0cmluZyZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjZ2V0QXR0cmlidXRlVmFsdWVzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzLCBqYXZhLmxhbmcuU3RyaW5nLCBqYXZhLmxhbmcuU3RyaW5nKSI+Z2V0QXR0cmlidXRlVmFsdWVzPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MmbmJzcDtjbCwKKyAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7YXR0ciwKKyAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7c3RuYW1lKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJuIHRoZSB2YWx1ZXMgb2YgYSBnaXZlbiBhdHRyaWJ1dGUgdXNpbmcgdGhlIGdpdmVuIHN0ZXJlb3R5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHJvdGVjdGVkIHN0YXRpYyZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50LCBqYXZhLmxhbmcuQ2xhc3MsIGphdmEudXRpbC5MaW5rZWRMaXN0KSI+Z2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQmbmJzcDtwYXJlbnRfZWx0LAorICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuQ2xhc3MmbmJzcDtjbGF6eiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS51dGlsLkxpbmtlZExpc3QmbHQ7b3JnLmVjbGlwc2UudW1sMi51bWwuTmFtZWRFbGVtZW50Jmd0OyZuYnNwO3RhcmdldF9saXN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnByaXZhdGUgc3RhdGljJm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNnZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQsIGphdmEubGFuZy5TdHJpbmcsIGphdmEudXRpbC5MaW5rZWRMaXN0KSI+Z2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQmbmJzcDtwYXJlbnRfZWx0LAorICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7c3RlcmVvdHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS51dGlsLkxpbmtlZExpc3QmbHQ7b3JnLmVjbGlwc2UudW1sMi51bWwuTmFtZWRFbGVtZW50Jmd0OyZuYnNwO3RhcmdldF9saXN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEk+dG8gYmUgcmVwbGFjZWQgd2l0aCBjYWxscyB0byB0aGUgUm9ib3RNTCBBUEkuPC9JPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLnV0aWwuTGlzdCZsdDtvcmcuZWNsaXBzZS51bWwyLnVtbC5OYW1lZEVsZW1lbnQmZ3Q7PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI2dldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwsIGphdmEubGFuZy5TdHJpbmcpIj5nZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwmbmJzcDttb2RlbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO3N0ZXJlb3R5cGUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST50byBiZSByZXBsYWNlZCB3aXRoIGNhbGxzIHRvIHRoZSBSb2JvdE1MIEFQSS4gUmVwbGFjZWQgYnkgZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZSAoTW9kZWwgbW9kZWwsIFN0ZXJlb3R5cGVDbGFzcyBzYyk8L0k+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjZ2V0SW5zdGFuY2VNdWx0aXBsaWNpdHkob3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHkpIj5nZXRJbnN0YW5jZU11bHRpcGxpY2l0eTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5Jm5ic3A7cCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuQm9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNoYXNTdGVyZW90eXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzLCBqYXZhLmxhbmcuU3RyaW5nKSI+aGFzU3RlcmVvdHlwZTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7Y2wsCisgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtzKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJuIHRydWUgaWYgYSBnaXZlbiBjbGFzcyBoYXMgc3BlY2lmaWVkIHN0ZXJlb3R5cGUuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjaW5zcGVjdENsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+aW5zcGVjdENsYXNzPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MmbmJzcDtjbCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0RlYnVnIGZ1bmN0aW9uLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI2luc3BlY3REYXRhVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5EYXRhVHlwZSkiPmluc3BlY3REYXRhVHlwZTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlJm5ic3A7ZGF0YXR5cGUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtEZWJ1ZyBmdW5jdGlvbi48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLkJvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjaW5zcGVjdE1vZGVsKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsKSI+aW5zcGVjdE1vZGVsPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwmbmJzcDttb2RlbCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0ZvbmN0aW9uIGRlIHRlc3QgcG91ciBpbnNwZWN0ZXIgdW4gbW9k77+9bGUgVU1MMjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI2luc3BlY3RQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj5pbnNwZWN0UG9ydDwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQmbmJzcDtwb3J0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7RGVidWcgZnVuY3Rpb24uPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5Cb29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI2lzQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCkiPmlzQ2xhc3M8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50Jm5ic3A7ZWx0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7SXMgdGhpcyBlbGVtZW50IGEgVU1MIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5Cb29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI2lzRGF0YVR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCkiPmlzRGF0YVR5cGU8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50Jm5ic3A7ZWx0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7SXMgdGhpcyBlbGVtZW50IGEgVU1MIERhdGFUeXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5Cb29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI2lzSW50ZXJmYWNlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpIj5pc0ludGVyZmFjZTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQmbmJzcDtlbHQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtJcyB0aGlzIGVsZW1lbnQgYSBVTUwgaW50ZXJmYWNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5Cb29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI2lzUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+aXNQb3J0PC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCZuYnNwO3Byb3ApPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtJcyB0aGlzIHByb3BlcnR5IGEgUG9ydDwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuQm9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNpc1Byb3BlcnR5KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpIj5pc1Byb3BlcnR5PC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCZuYnNwO2VsdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0lzIHRoaXMgZWxlbWVudCBhIFVNTCBQcm9wZXJ0eTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmNsb25lLCBlcXVhbHMsIGZpbmFsaXplLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB0b1N0cmluZywgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PSBDT05TVFJVQ1RPUiBERVRBSUwgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImNvbnN0cnVjdG9yX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJHZW5lcmFsUXVlcmllcygpIj48IS0tIC0tPjwvQT48SDM+CitHZW5lcmFsUXVlcmllczwvSDM+Cis8UFJFPgorcHVibGljIDxCPkdlbmVyYWxRdWVyaWVzPC9CPigpPC9QUkU+Cis8REw+Cis8L0RMPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImdldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCwgamF2YS5sYW5nLkNsYXNzLCBqYXZhLnV0aWwuTGlua2VkTGlzdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGU8L0gzPgorPFBSRT4KK3Byb3RlY3RlZCBzdGF0aWMgdm9pZCA8Qj5nZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50Jm5ic3A7cGFyZW50X2VsdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5DbGFzcyZuYnNwO2NsYXp6LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS51dGlsLkxpbmtlZExpc3QmbHQ7b3JnLmVjbGlwc2UudW1sMi51bWwuTmFtZWRFbGVtZW50Jmd0OyZuYnNwO3RhcmdldF9saXN0KTwvUFJFPgorPERMPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGU8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgamF2YS51dGlsLkxpc3QmbHQ7b3JnLmVjbGlwc2UudW1sMi51bWwuTmFtZWRFbGVtZW50Jmd0OyA8Qj5nZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCZuYnNwO21vZGVsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO3N0ZXJlb3R5cGUpPC9QUkU+Cis8REw+Cis8REQ+PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEk+dG8gYmUgcmVwbGFjZWQgd2l0aCBjYWxscyB0byB0aGUgUm9ib3RNTCBBUEkuIFJlcGxhY2VkIGJ5IGdldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUgKE1vZGVsIG1vZGVsLCBTdGVyZW90eXBlQ2xhc3Mgc2MpPC9JPgorPFA+Cis8REQ+UmVjdXJzaXZlIHJldHJpZXZlIG9mIGFsbCBlbGVtZW50cyB3aXRoIGEgZ2l2ZW4gc3RlcmVvdHlwZSBpbiB0aGUgbW9kZWwuCis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm1vZGVsPC9DT0RFPiAtIE1vZGVsIHRvIHNlYXJjaCBpbi48REQ+PENPREU+c3RlcmVvdHlwZTwvQ09ERT4gLSBUaGUgc3RlcmVvdHlwZSBuYW1lIChlLmcuICJTZW5zb3IiLCAiQWN0dWF0b3IiLCAiU3ViU3lzdGVtIi4uLikKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+QSBsaXN0IG9mIE5hbWVkRWxlbWVudHMgaGF2aW5nIHRoZSBzcGVjaWZpZWQgc3RlcmVvdHlwZS48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCwgamF2YS5sYW5nLlN0cmluZywgamF2YS51dGlsLkxpbmtlZExpc3QpIj48IS0tIC0tPjwvQT48SDM+CitnZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlPC9IMz4KKzxQUkU+Citwcml2YXRlIHN0YXRpYyB2b2lkIDxCPmdldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGU8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQmbmJzcDtwYXJlbnRfZWx0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtzdGVyZW90eXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEudXRpbC5MaW5rZWRMaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLk5hbWVkRWxlbWVudCZndDsmbmJzcDt0YXJnZXRfbGlzdCk8L1BSRT4KKzxETD4KKzxERD48Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST50byBiZSByZXBsYWNlZCB3aXRoIGNhbGxzIHRvIHRoZSBSb2JvdE1MIEFQSS48L0k+Cis8UD4KKzxERD5TYW1lIGFzIGdldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUoTW9kZWwgbW9kZWwuLi4pIHNlYXJjaGVzIGluIGFuIEVsZW1lbnQgbWVtYmVycywgbm90IGluIGEgTW9kZWwgbWVtYmVycy4KKyBUaGlzIGZ1bmN0aW9uIGlzIHByaXZhdGUgYW5kIHVzZWQgYnkgZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZShNb2RlbCBtb2RlbC4uLikKKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+cGFyZW50X2VsdDwvQ09ERT4gLSA8REQ+PENPREU+c3RlcmVvdHlwZTwvQ09ERT4gLSA8REQ+PENPREU+dGFyZ2V0X2xpc3Q8L0NPREU+IC0gPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJoYXNTdGVyZW90eXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgoraGFzU3RlcmVvdHlwZTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuQm9vbGVhbiA8Qj5oYXNTdGVyZW90eXBlPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2NsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtzKTwvUFJFPgorPERMPgorPEREPlJldHVybiB0cnVlIGlmIGEgZ2l2ZW4gY2xhc3MgaGFzIHNwZWNpZmllZCBzdGVyZW90eXBlLgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJpc0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpIj48IS0tIC0tPjwvQT48SDM+Citpc0NsYXNzPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5Cb29sZWFuIDxCPmlzQ2xhc3M8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQmbmJzcDtlbHQpPC9QUkU+Cis8REw+Cis8REQ+SXMgdGhpcyBlbGVtZW50IGEgVU1MIGNsYXNzCis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVsZW1lbnQ8L0NPREU+IC0gCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmlzIHRoaXMgYSBVTUwgY2xhc3MgPzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaXNEYXRhVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+PCEtLSAtLT48L0E+PEgzPgoraXNEYXRhVHlwZTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuQm9vbGVhbiA8Qj5pc0RhdGFUeXBlPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50Jm5ic3A7ZWx0KTwvUFJFPgorPERMPgorPEREPklzIHRoaXMgZWxlbWVudCBhIFVNTCBEYXRhVHlwZQorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lbGVtZW50PC9DT0RFPiAtIAorPERUPjxCPlJldHVybnM6PC9CPjxERD5pcyB0aGlzIGEgVU1MIERhdGFUeXBlID88L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImlzSW50ZXJmYWNlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpIj48IS0tIC0tPjwvQT48SDM+Citpc0ludGVyZmFjZTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuQm9vbGVhbiA8Qj5pc0ludGVyZmFjZTwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCZuYnNwO2VsdCk8L1BSRT4KKzxETD4KKzxERD5JcyB0aGlzIGVsZW1lbnQgYSBVTUwgaW50ZXJmYWNlCis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVsZW1lbnQ8L0NPREU+IC0gCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmlzIHRoaXMgYSBVTUwgY2xhc3MgPzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaXNQcm9wZXJ0eShvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+PCEtLSAtLT48L0E+PEgzPgoraXNQcm9wZXJ0eTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuQm9vbGVhbiA8Qj5pc1Byb3BlcnR5PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50Jm5ic3A7ZWx0KTwvUFJFPgorPERMPgorPEREPklzIHRoaXMgZWxlbWVudCBhIFVNTCBQcm9wZXJ0eQorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lbGVtZW50PC9DT0RFPiAtIAorPERUPjxCPlJldHVybnM6PC9CPjxERD5pcyB0aGlzIGEgVU1MIFByb3BlcnR5ID88L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImlzUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+PCEtLSAtLT48L0E+PEgzPgoraXNQb3J0PC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5Cb29sZWFuIDxCPmlzUG9ydDwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCZuYnNwO3Byb3ApPC9QUkU+Cis8REw+Cis8REQ+SXMgdGhpcyBwcm9wZXJ0eSBhIFBvcnQKKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+cHJvcGVydHk8L0NPREU+IC0gCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmlzIHRoaXMgYSBwb3J0ID88L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEluc3RhbmNlTXVsdGlwbGljaXR5KG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5KSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0SW5zdGFuY2VNdWx0aXBsaWNpdHk8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRJbnN0YW5jZU11bHRpcGxpY2l0eTwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHkmbmJzcDtwKTwvUFJFPgorPERMPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0QXR0cmlidXRlVmFsdWUob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MsIGphdmEubGFuZy5TdHJpbmcsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitnZXRBdHRyaWJ1dGVWYWx1ZTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldEF0dHJpYnV0ZVZhbHVlPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2NsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDthdHRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtzdG5hbWUpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJuIHRoZSB2YWx1ZSBvZiBhIGdpdmVuIGF0dHJpYnV0ZSB1c2luZyB0aGUgZ2l2ZW4gc3RlcmVvdHlwZQorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRBdHRyaWJ1dGVWYWx1ZXMob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MsIGphdmEubGFuZy5TdHJpbmcsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitnZXRBdHRyaWJ1dGVWYWx1ZXM8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgamF2YS51dGlsLkxpc3QmbHQ7amF2YS5sYW5nLlN0cmluZyZndDsgPEI+Z2V0QXR0cmlidXRlVmFsdWVzPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2NsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2F0dHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7c3RuYW1lKTwvUFJFPgorPERMPgorPEREPlJldHVybiB0aGUgdmFsdWVzIG9mIGEgZ2l2ZW4gYXR0cmlidXRlIHVzaW5nIHRoZSBnaXZlbiBzdGVyZW90eXBlCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImZpbmRDbGFzc0luTW9kZWwob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitmaW5kQ2xhc3NJbk1vZGVsPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzIDxCPmZpbmRDbGFzc0luTW9kZWw8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsJm5ic3A7bW9kZWwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO25hbWUpPC9QUkU+Cis8REw+Cis8REQ+RmluZCBhIGNsYXNzIHdpdGggYSBnaXZlbiBuYW1lIGluIHRoZSBtb2RlbC4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZmluZENsYXNzSW5QYWNrYWdlKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhY2thZ2UsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitmaW5kQ2xhc3NJblBhY2thZ2U8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgPEI+ZmluZENsYXNzSW5QYWNrYWdlPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlJm5ic3A7cGFjaywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtuYW1lKTwvUFJFPgorPERMPgorPEREPkZpbmQgYSBjbGFzcyB3aXRoIGEgZ2l2ZW4gbmFtZSBpbiBhIHBhY2thZ2UuCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9Imluc3BlY3REYXRhVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5EYXRhVHlwZSkiPjwhLS0gLS0+PC9BPjxIMz4KK2luc3BlY3REYXRhVHlwZTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyB2b2lkIDxCPmluc3BlY3REYXRhVHlwZTwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUmbmJzcDtkYXRhdHlwZSk8L1BSRT4KKzxETD4KKzxERD5EZWJ1ZyBmdW5jdGlvbi4gUHJpbnRzIGluZm8gYWJvdXQgYSBnaXZlbiBkYXRhdHlwZS4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaW5zcGVjdENsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+PCEtLSAtLT48L0E+PEgzPgoraW5zcGVjdENsYXNzPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIHZvaWQgPEI+aW5zcGVjdENsYXNzPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2NsKTwvUFJFPgorPERMPgorPEREPkRlYnVnIGZ1bmN0aW9uLgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJpbnNwZWN0UG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+PCEtLSAtLT48L0E+PEgzPgoraW5zcGVjdFBvcnQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgdm9pZCA8Qj5pbnNwZWN0UG9ydDwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCZuYnNwO3BvcnQpPC9QUkU+Cis8REw+Cis8REQ+RGVidWcgZnVuY3Rpb24uIFByaW50cyBpbmZvIGFib3V0IGEgZ2l2ZW4gcG9ydC4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaW5zcGVjdE1vZGVsKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsKSI+PCEtLSAtLT48L0E+PEgzPgoraW5zcGVjdE1vZGVsPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5Cb29sZWFuIDxCPmluc3BlY3RNb2RlbDwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwmbmJzcDttb2RlbCk8L1BSRT4KKzxETD4KKzxERD5Gb25jdGlvbiBkZSB0ZXN0IHBvdXIgaW5zcGVjdGVyIHVuIG1vZO+/vWxlIFVNTDIKKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bW9kZWw8L0NPREU+IC0gCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPjwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvR2VuZXJhbFF1ZXJpZXMuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9GU01RdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX3N1bW1hcnkiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9kZXRhaWwiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTg2MDE4YQotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwKQEAgLTAsMCArMSw2MjggQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjYuMF8yNCkgb24gV2VkIEZlYiAyMiAxMToyNDozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK01NUXVlcmllcworPC9USVRMRT4KKworPE1FVEEgTkFNRT0iZGF0ZSIgQ09OVEVOVD0iMjAxMi0wMi0yMiI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIGlmIChsb2NhdGlvbi5ocmVmLmluZGV4T2YoJ2lzLWV4dGVybmFsPXRydWUnKSA9PSAtMSkgeworICAgICAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9Ik1NUXVlcmllcyI7CisgICAgfQorfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKzxIUj4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvTU1RdWVyaWVzLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcyI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDtORVhUIENMQVNTPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJNTVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX3N1bW1hcnkiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3Jfc3VtbWFyeSI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9kZXRhaWwiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllczwvRk9OVD4KKzxCUj4KK0NsYXNzIE1NUXVlcmllczwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuYWNjZWxlby5lbmdpbmUuc2VydmljZS5BYnN0cmFjdEFjY2VsZW9HZW5lcmF0b3IKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMuTU1RdWVyaWVzPC9CPgorPC9QUkU+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+TU1RdWVyaWVzPC9CPjxEVD5leHRlbmRzIG9yZy5lY2xpcHNlLmFjY2VsZW8uZW5naW5lLnNlcnZpY2UuQWJzdHJhY3RBY2NlbGVvR2VuZXJhdG9yPC9ETD4KKzwvUFJFPgorCis8UD4KK0VudHJ5IHBvaW50IG9mIHRoZSAnTU1RdWVyaWVzJyBnZW5lcmF0aW9uIG1vZHVsZS4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwjTU9EVUxFX0ZJTEVfTkFNRSI+TU9EVUxFX0ZJTEVfTkFNRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbmFtZSBvZiB0aGUgbW9kdWxlLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuU3RyaW5nW108L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sI1RFTVBMQVRFX05BTUVTIj5URU1QTEFURV9OQU1FUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbmFtZSBvZiB0aGUgdGVtcGxhdGVzIHRoYXQgYXJlIHRvIGJlIGdlbmVyYXRlZC48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuYWNjZWxlby5lbmdpbmUuc2VydmljZS5BYnN0cmFjdEFjY2VsZW9HZW5lcmF0b3IiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuYWNjZWxlby5lbmdpbmUuc2VydmljZS5BYnN0cmFjdEFjY2VsZW9HZW5lcmF0b3I8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5hY2NlbGVvUHJvcGVydGllc0xvYWRlclNlcnZpY2UsIGdlbmVyYXRpb25Bcmd1bWVudHMsIGdlbmVyYXRpb25JRCwgZ2VuZXJhdGlvbkxpc3RlbmVycywgbW9kZWwsIG1vZHVsZSwgb3JpZ2luYWxSZXNvdXJjZXMsIHByb3BlcnRpZXNGaWxlcywgcmVzb3VyY2VGYWN0b3J5UmVnaXN0cnksIHRhcmdldEZvbGRlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT0gQ09OU1RSVUNUT1IgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0iY29uc3RydWN0b3Jfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sI01NUXVlcmllcygpIj5NTVF1ZXJpZXM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbGxvd3MgdGhlIHB1YmxpYyBjb25zdHJ1Y3RvciB0byBiZSB1c2VkLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sI01NUXVlcmllcyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgamF2YS5pby5GaWxlLCBqYXZhLnV0aWwuTGlzdCkiPk1NUXVlcmllczwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Jm5ic3A7bW9kZWwsCisgICAgICAgICAgamF2YS5pby5GaWxlJm5ic3A7dGFyZ2V0Rm9sZGVyLAorICAgICAgICAgIGphdmEudXRpbC5MaXN0Jmx0Oz8gZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0Jmd0OyZuYnNwO2FyZ3VtZW50cyk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoaXMgYWxsb3dzIGNsaWVudHMgdG8gaW5zdGFudGlhdGVzIGEgZ2VuZXJhdG9yIHdpdGggYWxsIHJlcXVpcmVkIGluZm9ybWF0aW9uLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sI01NUXVlcmllcyhvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuVVJJLCBqYXZhLmlvLkZpbGUsIGphdmEudXRpbC5MaXN0KSI+TU1RdWVyaWVzPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLlVSSSZuYnNwO21vZGVsVVJJLAorICAgICAgICAgIGphdmEuaW8uRmlsZSZuYnNwO3RhcmdldEZvbGRlciwKKyAgICAgICAgICBqYXZhLnV0aWwuTGlzdCZsdDs/IGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCZndDsmbmJzcDthcmd1bWVudHMpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGlzIGFsbG93cyBjbGllbnRzIHRvIGluc3RhbnRpYXRlcyBhIGdlbmVyYXRvciB3aXRoIGFsbCByZXF1aXJlZCBpbmZvcm1hdGlvbi48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sI2RvR2VuZXJhdGUob3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLk1vbml0b3IpIj5kb0dlbmVyYXRlPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLk1vbml0b3ImbmJzcDttb25pdG9yKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7TGF1bmNoZXMgdGhlIGdlbmVyYXRpb24gZGVzY3JpYmVkIGJ5IHRoaXMgaW5zdGFuY2UuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLmFjY2VsZW8uZW5naW5lLmV2ZW50LklBY2NlbGVvVGV4dEdlbmVyYXRpb25MaXN0ZW5lciZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sI2dldEdlbmVyYXRpb25MaXN0ZW5lcnMoKSI+Z2V0R2VuZXJhdGlvbkxpc3RlbmVyczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0lmIHRoaXMgZ2VuZXJhdG9yIG5lZWRzIHRvIGxpc3RlbiB0byB0ZXh0IGdlbmVyYXRpb24gZXZlbnRzLCBsaXN0ZW5lcnMgY2FuIGJlIHJldHVybmVkIGZyb20gaGVyZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuYWNjZWxlby5lbmdpbmUuZ2VuZXJhdGlvbi5zdHJhdGVneS5JQWNjZWxlb0dlbmVyYXRpb25TdHJhdGVneTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwjZ2V0R2VuZXJhdGlvblN0cmF0ZWd5KCkiPmdldEdlbmVyYXRpb25TdHJhdGVneTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0lmIHlvdSBuZWVkIHRvIGNoYW5nZSB0aGUgd2F5IGZpbGVzIGFyZSBnZW5lcmF0ZWQsIHRoaXMgaXMgeW91ciBlbnRyeSBwb2ludC48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwjZ2V0TW9kdWxlTmFtZSgpIj5nZXRNb2R1bGVOYW1lPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhpcyB3aWxsIGJlIGNhbGxlZCBpbiBvcmRlciB0byBmaW5kIGFuZCBsb2FkIHRoZSBtb2R1bGUgdGhhdCB3aWxsIGJlIGxhdW5jaGVkIHRocm91Z2ggdGhpcyBsYXVuY2hlci48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS51dGlsLkxpc3QmbHQ7amF2YS5sYW5nLlN0cmluZyZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sI2dldFByb3BlcnRpZXMoKSI+Z2V0UHJvcGVydGllczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0lmIHRoZSBtb2R1bGUocykgY2FsbGVkIGJ5IHRoaXMgbGF1bmNoZXIgcmVxdWlyZSBwcm9wZXJ0aWVzIGZpbGVzLCByZXR1cm4gdGhlaXIgcXVhbGlmaWVkIHBhdGggZnJvbQorIGhlcmUuVGFrZSBub3RlIHRoYXQgdGhlIGZpcnN0IGFkZGVkIHByb3BlcnRpZXMgZmlsZXMgd2lsbCB0YWtlIHByZWNlZGVuY2Ugb3ZlciBzdWJzZXF1ZW50IG9uZXMgaWYgdGhleQorIGNvbnRhaW4gY29uZmxpY3Rpbmcga2V5cy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZ1tdPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCNnZXRUZW1wbGF0ZU5hbWVzKCkiPmdldFRlbXBsYXRlTmFtZXM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGlzIHdpbGwgYmUgdXNlZCB0byBnZXQgdGhlIGxpc3Qgb2YgdGVtcGxhdGVzIHRoYXQgYXJlIHRvIGJlIGxhdW5jaGVkIGJ5IHRoaXMgbGF1bmNoZXIuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sI21haW4oamF2YS5sYW5nLlN0cmluZ1tdKSI+bWFpbjwvQT48L0I+KGphdmEubGFuZy5TdHJpbmdbXSZuYnNwO2FyZ3MpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGlzIGNhbiBiZSB1c2VkIHRvIGxhdW5jaCB0aGUgZ2VuZXJhdGlvbiBmcm9tIGEgc3RhbmRhbG9uZSBhcHBsaWNhdGlvbi48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwjcmVnaXN0ZXJQYWNrYWdlcyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuUmVzb3VyY2VTZXQpIj5yZWdpc3RlclBhY2thZ2VzPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLnJlc291cmNlLlJlc291cmNlU2V0Jm5ic3A7cmVzb3VyY2VTZXQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGlzIGNhbiBiZSB1c2VkIHRvIHVwZGF0ZSB0aGUgcmVzb3VyY2Ugc2V0J3MgcGFja2FnZSByZWdpc3RyeSB3aXRoIGFsbCBuZWVkZWQgRVBhY2thZ2VzLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCNyZWdpc3RlclJlc291cmNlRmFjdG9yaWVzKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5yZXNvdXJjZS5SZXNvdXJjZVNldCkiPnJlZ2lzdGVyUmVzb3VyY2VGYWN0b3JpZXM8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuUmVzb3VyY2VTZXQmbmJzcDtyZXNvdXJjZVNldCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoaXMgY2FuIGJlIHVzZWQgdG8gdXBkYXRlIHRoZSByZXNvdXJjZSBzZXQncyByZXNvdXJjZSBmYWN0b3J5IHJlZ2lzdHJ5IHdpdGggYWxsIG5lZWRlZCBmYWN0b3JpZXMuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5hY2NlbGVvLmVuZ2luZS5zZXJ2aWNlLkFic3RyYWN0QWNjZWxlb0dlbmVyYXRvciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuYWNjZWxlby5lbmdpbmUuc2VydmljZS5BYnN0cmFjdEFjY2VsZW9HZW5lcmF0b3I8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5hZGRHZW5lcmF0aW9uTGlzdGVuZXIsIGFkZExpc3RlbmVycywgYWRkUHJvcGVydGllcywgYWRkUHJvcGVydGllc0ZpbGUsIGNsZWFyUGFja2FnZVJlZ2lzdHJ5LCBjcmVhdGVBY2NlbGVvU2VydmljZSwgY3JlYXRlVGVtcGxhdGVVUkksIGNyZWF0ZVVSSUNvbnZlcnRlciwgZmluZE1vZHVsZVVSTCwgZ2VuZXJhdGUsIGdldEFyZ3VtZW50cywgZ2V0TW9kZWwsIGdldE1vZHVsZSwgZ2V0T0NMU3RkTGliUGFja2FnZSwgZ2V0UHJvcGVydGllc0xvYWRlclNlcnZpY2UsIGdldFRhcmdldEZvbGRlciwgaW5pdGlhbGl6ZSwgaW5pdGlhbGl6ZSwgaXNJbldvcmtzcGFjZSwgcG9zdEdlbmVyYXRlLCBzZXRHZW5lcmF0aW9uSUQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Y2xvbmUsIGVxdWFscywgZmluYWxpemUsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHRvU3RyaW5nLCB3YWl0LCB3YWl0LCB3YWl0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IEZJRUxEIERFVEFJTCA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9Ik1PRFVMRV9GSUxFX05BTUUiPjwhLS0gLS0+PC9BPjxIMz4KK01PRFVMRV9GSUxFX05BTUU8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgamF2YS5sYW5nLlN0cmluZyA8Qj5NT0RVTEVfRklMRV9OQU1FPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBuYW1lIG9mIHRoZSBtb2R1bGUuCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcy5NTVF1ZXJpZXMuTU9EVUxFX0ZJTEVfTkFNRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJURU1QTEFURV9OQU1FUyI+PCEtLSAtLT48L0E+PEgzPgorVEVNUExBVEVfTkFNRVM8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgamF2YS5sYW5nLlN0cmluZ1tdIDxCPlRFTVBMQVRFX05BTUVTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBuYW1lIG9mIHRoZSB0ZW1wbGF0ZXMgdGhhdCBhcmUgdG8gYmUgZ2VuZXJhdGVkLgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKworPCEtLSA9PT09PT09PT0gQ09OU1RSVUNUT1IgREVUQUlMID09PT09PT09IC0tPgorCis8QSBOQU1FPSJjb25zdHJ1Y3Rvcl9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5Db25zdHJ1Y3RvciBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iTU1RdWVyaWVzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK01NUXVlcmllczwvSDM+Cis8UFJFPgorcHVibGljIDxCPk1NUXVlcmllczwvQj4oKTwvUFJFPgorPERMPgorPEREPkFsbG93cyB0aGUgcHVibGljIGNvbnN0cnVjdG9yIHRvIGJlIHVzZWQuIE5vdGUgdGhhdCBhIGdlbmVyYXRvciBjcmVhdGVkCisgdGhpcyB3YXkgY2Fubm90IGJlIHVzZWQgdG8gbGF1bmNoIGdlbmVyYXRpb25zIGJlZm9yZSBvbmUgb2YKKyA8Q09ERT5BYnN0cmFjdEFjY2VsZW9HZW5lcmF0b3IuaW5pdGlhbGl6ZShFT2JqZWN0LCBGaWxlLCBMaXN0KTwvQ09ERT4gb3IKKyA8Q09ERT5BYnN0cmFjdEFjY2VsZW9HZW5lcmF0b3IuaW5pdGlhbGl6ZShVUkksIEZpbGUsIExpc3QpPC9DT0RFPiBpcyBjYWxsZWQuCisgPHA+CisgVGhlIG1haW4gcmVhc29uIGZvciB0aGlzIGNvbnN0cnVjdG9yIGlzIHRvIGFsbG93IGNsaWVudHMgb2YgdGhpcworIGdlbmVyYXRpb24gdG8gY2FsbCBpdCBmcm9tIGFub3RoZXIgSmF2YSBmaWxlLCBhcyBpdCBhbGxvd3MgZm9yIHRoZQorIHJldHJpZXZhbCBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwjZ2V0UHJvcGVydGllcygpIj48Q09ERT5nZXRQcm9wZXJ0aWVzKCk8L0NPREU+PC9BPiBhbmQKKyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwjZ2V0R2VuZXJhdGlvbkxpc3RlbmVycygpIj48Q09ERT5nZXRHZW5lcmF0aW9uTGlzdGVuZXJzKCk8L0NPREU+PC9BPi4KKyA8L3A+Cis8UD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9Ik1NUXVlcmllcyhvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuVVJJLCBqYXZhLmlvLkZpbGUsIGphdmEudXRpbC5MaXN0KSI+PCEtLSAtLT48L0E+PEgzPgorTU1RdWVyaWVzPC9IMz4KKzxQUkU+CitwdWJsaWMgPEI+TU1RdWVyaWVzPC9CPihvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuVVJJJm5ic3A7bW9kZWxVUkksCisgICAgICAgICAgICAgICAgIGphdmEuaW8uRmlsZSZuYnNwO3RhcmdldEZvbGRlciwKKyAgICAgICAgICAgICAgICAgamF2YS51dGlsLkxpc3QmbHQ7PyBleHRlbmRzIGphdmEubGFuZy5PYmplY3QmZ3Q7Jm5ic3A7YXJndW1lbnRzKQorICAgICAgICAgIHRocm93cyBqYXZhLmlvLklPRXhjZXB0aW9uPC9QUkU+Cis8REw+Cis8REQ+VGhpcyBhbGxvd3MgY2xpZW50cyB0byBpbnN0YW50aWF0ZXMgYSBnZW5lcmF0b3Igd2l0aCBhbGwgcmVxdWlyZWQgaW5mb3JtYXRpb24uCis8UD4KKzxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bW9kZWxVUkk8L0NPREU+IC0gVVJJIHdoZXJlIHRoZSBtb2RlbCBvbiB3aGljaCB0aGlzIGdlbmVyYXRvciB3aWxsIGJlIHVzZWQgaXMgbG9jYXRlZC48REQ+PENPREU+dGFyZ2V0Rm9sZGVyPC9DT0RFPiAtIFRoaXMgd2lsbCBiZSB1c2VkIGFzIHRoZSBvdXRwdXQgZm9sZGVyIGZvciB0aGlzIGdlbmVyYXRpb24gOiBpdCB3aWxsIGJlIHRoZSBiYXNlIHBhdGgKKyAgICAgICAgICAgIGFnYWluc3Qgd2hpY2ggYWxsIGZpbGUgYmxvY2sgVVJMcyB3aWxsIGJlIHJlc29sdmVkLjxERD48Q09ERT5hcmd1bWVudHM8L0NPREU+IC0gSWYgdGhlIHRlbXBsYXRlIHdoaWNoIHdpbGwgYmUgY2FsbGVkIHJlcXVpcmVzIG1vcmUgdGhhbiBvbmUgYXJndW1lbnQgdGFrZW4gZnJvbSB0aGUgbW9kZWwsCisgICAgICAgICAgICBwYXNzIHRoZW0gaGVyZS4KKzxEVD48Qj5UaHJvd3M6PC9CPgorPEREPjxDT0RFPmphdmEuaW8uSU9FeGNlcHRpb248L0NPREU+IC0gVGhpcyBjYW4gYmUgdGhyb3duIGluIHRocmVlIHNjZW5hcmlvcyA6IHRoZSBtb2R1bGUgY2Fubm90IGJlIGZvdW5kLCBpdCBjYW5ub3QgYmUgbG9hZGVkLCBvcgorICAgICAgICAgICAgIHRoZSBtb2RlbCBjYW5ub3QgYmUgbG9hZGVkLjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJNTVF1ZXJpZXMob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIGphdmEuaW8uRmlsZSwgamF2YS51dGlsLkxpc3QpIj48IS0tIC0tPjwvQT48SDM+CitNTVF1ZXJpZXM8L0gzPgorPFBSRT4KK3B1YmxpYyA8Qj5NTVF1ZXJpZXM8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Jm5ic3A7bW9kZWwsCisgICAgICAgICAgICAgICAgIGphdmEuaW8uRmlsZSZuYnNwO3RhcmdldEZvbGRlciwKKyAgICAgICAgICAgICAgICAgamF2YS51dGlsLkxpc3QmbHQ7PyBleHRlbmRzIGphdmEubGFuZy5PYmplY3QmZ3Q7Jm5ic3A7YXJndW1lbnRzKQorICAgICAgICAgIHRocm93cyBqYXZhLmlvLklPRXhjZXB0aW9uPC9QUkU+Cis8REw+Cis8REQ+VGhpcyBhbGxvd3MgY2xpZW50cyB0byBpbnN0YW50aWF0ZXMgYSBnZW5lcmF0b3Igd2l0aCBhbGwgcmVxdWlyZWQgaW5mb3JtYXRpb24uCis8UD4KKzxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bW9kZWw8L0NPREU+IC0gV2UnbGwgaXRlcmF0ZSBvdmVyIHRoZSBjb250ZW50IG9mIHRoaXMgZWxlbWVudCB0byBmaW5kIE9iamVjdHMgbWF0Y2hpbmcgdGhlIGZpcnN0IHBhcmFtZXRlcgorICAgICAgICAgICAgb2YgdGhlIHRlbXBsYXRlIHdlIG5lZWQgdG8gY2FsbC48REQ+PENPREU+dGFyZ2V0Rm9sZGVyPC9DT0RFPiAtIFRoaXMgd2lsbCBiZSB1c2VkIGFzIHRoZSBvdXRwdXQgZm9sZGVyIGZvciB0aGlzIGdlbmVyYXRpb24gOiBpdCB3aWxsIGJlIHRoZSBiYXNlIHBhdGgKKyAgICAgICAgICAgIGFnYWluc3Qgd2hpY2ggYWxsIGZpbGUgYmxvY2sgVVJMcyB3aWxsIGJlIHJlc29sdmVkLjxERD48Q09ERT5hcmd1bWVudHM8L0NPREU+IC0gSWYgdGhlIHRlbXBsYXRlIHdoaWNoIHdpbGwgYmUgY2FsbGVkIHJlcXVpcmVzIG1vcmUgdGhhbiBvbmUgYXJndW1lbnQgdGFrZW4gZnJvbSB0aGUgbW9kZWwsCisgICAgICAgICAgICBwYXNzIHRoZW0gaGVyZS4KKzxEVD48Qj5UaHJvd3M6PC9CPgorPEREPjxDT0RFPmphdmEuaW8uSU9FeGNlcHRpb248L0NPREU+IC0gVGhpcyBjYW4gYmUgdGhyb3duIGluIHR3byBzY2VuYXJpb3MgOiB0aGUgbW9kdWxlIGNhbm5vdCBiZSBmb3VuZCwgb3IgaXQgY2Fubm90IGJlIGxvYWRlZC48L0RMPgorPC9ETD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJtYWluKGphdmEubGFuZy5TdHJpbmdbXSkiPjwhLS0gLS0+PC9BPjxIMz4KK21haW48L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgdm9pZCA8Qj5tYWluPC9CPihqYXZhLmxhbmcuU3RyaW5nW10mbmJzcDthcmdzKTwvUFJFPgorPERMPgorPEREPlRoaXMgY2FuIGJlIHVzZWQgdG8gbGF1bmNoIHRoZSBnZW5lcmF0aW9uIGZyb20gYSBzdGFuZGFsb25lIGFwcGxpY2F0aW9uLgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5hcmdzPC9DT0RFPiAtIEFyZ3VtZW50cyBvZiB0aGUgZ2VuZXJhdGlvbi48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImRvR2VuZXJhdGUob3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLk1vbml0b3IpIj48IS0tIC0tPjwvQT48SDM+Citkb0dlbmVyYXRlPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5kb0dlbmVyYXRlPC9CPihvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuTW9uaXRvciZuYnNwO21vbml0b3IpCisgICAgICAgICAgICAgICAgdGhyb3dzIGphdmEuaW8uSU9FeGNlcHRpb248L1BSRT4KKzxETD4KKzxERD5MYXVuY2hlcyB0aGUgZ2VuZXJhdGlvbiBkZXNjcmliZWQgYnkgdGhpcyBpbnN0YW5jZS4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5kb0dlbmVyYXRlPC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS5hY2NlbGVvLmVuZ2luZS5zZXJ2aWNlLkFic3RyYWN0QWNjZWxlb0dlbmVyYXRvcjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm1vbml0b3I8L0NPREU+IC0gVGhpcyB3aWxsIGJlIHVzZWQgdG8gZGlzcGxheSBwcm9ncmVzcyBpbmZvcm1hdGlvbiB0byB0aGUgdXNlci4KKzxEVD48Qj5UaHJvd3M6PC9CPgorPEREPjxDT0RFPmphdmEuaW8uSU9FeGNlcHRpb248L0NPREU+IC0gVGhpcyB3aWxsIGJlIHRocm93biBpZiBhbnkgb2YgdGhlIG91dHB1dCBmaWxlcyBjYW5ub3QgYmUgc2F2ZWQgdG8gZGlzay48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEdlbmVyYXRpb25MaXN0ZW5lcnMoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0R2VuZXJhdGlvbkxpc3RlbmVyczwvSDM+Cis8UFJFPgorcHVibGljIGphdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLmFjY2VsZW8uZW5naW5lLmV2ZW50LklBY2NlbGVvVGV4dEdlbmVyYXRpb25MaXN0ZW5lciZndDsgPEI+Z2V0R2VuZXJhdGlvbkxpc3RlbmVyczwvQj4oKTwvUFJFPgorPERMPgorPEREPklmIHRoaXMgZ2VuZXJhdG9yIG5lZWRzIHRvIGxpc3RlbiB0byB0ZXh0IGdlbmVyYXRpb24gZXZlbnRzLCBsaXN0ZW5lcnMgY2FuIGJlIHJldHVybmVkIGZyb20gaGVyZS4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5nZXRHZW5lcmF0aW9uTGlzdGVuZXJzPC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS5hY2NlbGVvLmVuZ2luZS5zZXJ2aWNlLkFic3RyYWN0QWNjZWxlb0dlbmVyYXRvcjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+TGlzdCBvZiBsaXN0ZW5lcnMgdGhhdCBhcmUgdG8gYmUgbm90aWZpZWQgd2hlbiB0ZXh0IGlzIGdlbmVyYXRlZCB0aHJvdWdoIHRoaXMgbGF1bmNoLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0R2VuZXJhdGlvblN0cmF0ZWd5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEdlbmVyYXRpb25TdHJhdGVneTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmFjY2VsZW8uZW5naW5lLmdlbmVyYXRpb24uc3RyYXRlZ3kuSUFjY2VsZW9HZW5lcmF0aW9uU3RyYXRlZ3kgPEI+Z2V0R2VuZXJhdGlvblN0cmF0ZWd5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+SWYgeW91IG5lZWQgdG8gY2hhbmdlIHRoZSB3YXkgZmlsZXMgYXJlIGdlbmVyYXRlZCwgdGhpcyBpcyB5b3VyIGVudHJ5IHBvaW50LgorIDxwPgorIFRoZSBkZWZhdWx0IGlzIDxDT0RFPkRlZmF1bHRTdHJhdGVneTwvQ09ERT47IGl0IGdlbmVyYXRlcworIGZpbGVzIG9uIHRoZSBmbHkuIElmIHlvdSBvbmx5IG5lZWQgdG8gcHJldmlldyB0aGUgcmVzdWx0cywgcmV0dXJuIGEgbmV3CisgPENPREU+UHJldmlld1N0cmF0ZWd5PC9DT0RFPi4gQm90aCBvZiB0aGVzZSBhcmVuJ3QgYXdhcmUgb2YKKyB0aGUgcnVubmluZyBFY2xpcHNlIGFuZCBjYW4gYmUgdXNlZCBzdGFuZGFsb25lLgorIDwvcD4KKyA8cD4KKyBJZiB5b3UgbmVlZCB0aGUgZmlsZSBnZW5lcmF0aW9uIHRvIGJlIGF3YXJlIG9mIHRoZSB3b3Jrc3BhY2UgKEEgdHlwaWNhbCBleGFtcGxlIGlzIHdoZW4geW91IHdhbm5hCisgb3ZlcnJpZGUgZmlsZXMgdGhhdCBhcmUgdW5kZXIgY2xlYXIgY2FzZSBvciBhbnkgb3RoZXIgVkNTIHRoYXQgY291bGQgZm9yYmlkIHRoZSBvdmVycmlkaW5nKSwgdGhlbgorIHJldHVybiBhIG5ldyA8Q09ERT5Xb3Jrc3BhY2VBd2FyZVN0cmF0ZWd5PC9DT0RFPi4KKyA8Yj5Ob3RlPC9iPiwgaG93ZXZlciwgdGhhdCB0aGlzIDxiPmNhbm5vdDwvYj4gYmUgdXNlZCBzdGFuZGFsb25lLgorIDwvcD4KKyA8cD4KKyBBbGwgdGhyZWUgb2YgdGhlc2UgZGVmYXVsdCBzdHJhdGVnaWVzIHN1cHBvcnQgbWVyZ2luZyB0aHJvdWdoIEpNZXJnZS4KKyA8L3A+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+Z2V0R2VuZXJhdGlvblN0cmF0ZWd5PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS5hY2NlbGVvLmVuZ2luZS5zZXJ2aWNlLkFic3RyYWN0QWNjZWxlb0dlbmVyYXRvcjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+VGhlIGdlbmVyYXRpb24gc3RyYXRlZ3kgdGhhdCBpcyB0byBiZSB1c2VkIGZvciBnZW5lcmF0aW9ucyBsYXVuY2hlZCB0aHJvdWdoIHRoaXMgbGF1bmNoZXIuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRNb2R1bGVOYW1lKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldE1vZHVsZU5hbWU8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldE1vZHVsZU5hbWU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5UaGlzIHdpbGwgYmUgY2FsbGVkIGluIG9yZGVyIHRvIGZpbmQgYW5kIGxvYWQgdGhlIG1vZHVsZSB0aGF0IHdpbGwgYmUgbGF1bmNoZWQgdGhyb3VnaCB0aGlzIGxhdW5jaGVyLgorIFdlIGV4cGVjdCB0aGlzIG5hbWUgbm90IHRvIGNvbnRhaW4gZmlsZSBleHRlbnNpb24sIGFuZCB0aGUgbW9kdWxlIHRvIGJlIGxvY2F0ZWQgYmVzaWRlIHRoZSBsYXVuY2hlci4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5nZXRNb2R1bGVOYW1lPC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS5hY2NlbGVvLmVuZ2luZS5zZXJ2aWNlLkFic3RyYWN0QWNjZWxlb0dlbmVyYXRvcjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+VGhlIG5hbWUgb2YgdGhlIG1vZHVsZSB0aGF0IGlzIHRvIGJlIGxhdW5jaGVkLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UHJvcGVydGllcygpIj48IS0tIC0tPjwvQT48SDM+CitnZXRQcm9wZXJ0aWVzPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS51dGlsLkxpc3QmbHQ7amF2YS5sYW5nLlN0cmluZyZndDsgPEI+Z2V0UHJvcGVydGllczwvQj4oKTwvUFJFPgorPERMPgorPEREPklmIHRoZSBtb2R1bGUocykgY2FsbGVkIGJ5IHRoaXMgbGF1bmNoZXIgcmVxdWlyZSBwcm9wZXJ0aWVzIGZpbGVzLCByZXR1cm4gdGhlaXIgcXVhbGlmaWVkIHBhdGggZnJvbQorIGhlcmUuVGFrZSBub3RlIHRoYXQgdGhlIGZpcnN0IGFkZGVkIHByb3BlcnRpZXMgZmlsZXMgd2lsbCB0YWtlIHByZWNlZGVuY2Ugb3ZlciBzdWJzZXF1ZW50IG9uZXMgaWYgdGhleQorIGNvbnRhaW4gY29uZmxpY3Rpbmcga2V5cy4KKyA8cD4KKyBQcm9wZXJ0aWVzIG5lZWQgdG8gYmUgaW4gc291cmNlIGZvbGRlcnMsIHRoZSBwYXRoIHRoYXQgd2UgZXhwZWN0IHRvIGdldCBhcyBhIHJlc3VsdCBvZiB0aGlzIGNhbGwgYXJlIG9mCisgdGhlIGZvcm0gJmx0O3BhY2thZ2U+LiZsdDtwcm9wZXJ0aWVzIGZpbGUgbmFtZSB3aXRob3V0IGV4dGVuc2lvbj4uIEZvciBleGFtcGxlLCBpZiB5b3UgaGF2ZSBhIGZpbGUKKyBuYW1lZCAibWVzc2FnZXMucHJvcGVydGllcyIgaW4gcGFja2FnZSAib3JnLmVjbGlwc2UuYWNjZWxlby5zYW1wbGUiLCB0aGUgcGF0aCB0aGF0IG5lZWRzIGJlIHJldHVybmVkIGJ5CisgYSBjYWxsIHRvIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCNnZXRQcm9wZXJ0aWVzKCkiPjxDT0RFPmdldFByb3BlcnRpZXMoKTwvQ09ERT48L0E+IGlzICJvcmcuZWNsaXBzZS5hY2NlbGVvLnNhbXBsZS5tZXNzYWdlcyIuCisgPC9wPgorPFA+Cis8REQ+PERMPgorPERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmdldFByb3BlcnRpZXM8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmFjY2VsZW8uZW5naW5lLnNlcnZpY2UuQWJzdHJhY3RBY2NlbGVvR2VuZXJhdG9yPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5UaGUgbGlzdCBvZiBwcm9wZXJ0aWVzIGZpbGUgd2UgbmVlZCB0byBhZGQgdG8gdGhlIGdlbmVyYXRpb24gY29udGV4dC48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5SZXNvdXJjZUJ1bmRsZS5nZXRCdW5kbGUoU3RyaW5nKTwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFRlbXBsYXRlTmFtZXMoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0VGVtcGxhdGVOYW1lczwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmdbXSA8Qj5nZXRUZW1wbGF0ZU5hbWVzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+VGhpcyB3aWxsIGJlIHVzZWQgdG8gZ2V0IHRoZSBsaXN0IG9mIHRlbXBsYXRlcyB0aGF0IGFyZSB0byBiZSBsYXVuY2hlZCBieSB0aGlzIGxhdW5jaGVyLgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmdldFRlbXBsYXRlTmFtZXM8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmFjY2VsZW8uZW5naW5lLnNlcnZpY2UuQWJzdHJhY3RBY2NlbGVvR2VuZXJhdG9yPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5UaGUgbGlzdCBvZiB0ZW1wbGF0ZXMgdG8gY2FsbCBvbiB0aGUgbW9kdWxlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCNnZXRNb2R1bGVOYW1lKCkiPjxDT0RFPmdldE1vZHVsZU5hbWUoKTwvQ09ERT48L0E+LjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0icmVnaXN0ZXJQYWNrYWdlcyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuUmVzb3VyY2VTZXQpIj48IS0tIC0tPjwvQT48SDM+CityZWdpc3RlclBhY2thZ2VzPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5yZWdpc3RlclBhY2thZ2VzPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuUmVzb3VyY2VTZXQmbmJzcDtyZXNvdXJjZVNldCk8L1BSRT4KKzxETD4KKzxERD5UaGlzIGNhbiBiZSB1c2VkIHRvIHVwZGF0ZSB0aGUgcmVzb3VyY2Ugc2V0J3MgcGFja2FnZSByZWdpc3RyeSB3aXRoIGFsbCBuZWVkZWQgRVBhY2thZ2VzLgorPFA+Cis8REQ+PERMPgorPERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPnJlZ2lzdGVyUGFja2FnZXM8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmFjY2VsZW8uZW5naW5lLnNlcnZpY2UuQWJzdHJhY3RBY2NlbGVvR2VuZXJhdG9yPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+cmVzb3VyY2VTZXQ8L0NPREU+IC0gVGhlIHJlc291cmNlIHNldCB3aGljaCByZWdpc3RyeSBoYXMgdG8gYmUgdXBkYXRlZC48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InJlZ2lzdGVyUmVzb3VyY2VGYWN0b3JpZXMob3JnLmVjbGlwc2UuZW1mLmVjb3JlLnJlc291cmNlLlJlc291cmNlU2V0KSI+PCEtLSAtLT48L0E+PEgzPgorcmVnaXN0ZXJSZXNvdXJjZUZhY3RvcmllczwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+cmVnaXN0ZXJSZXNvdXJjZUZhY3RvcmllczwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLnJlc291cmNlLlJlc291cmNlU2V0Jm5ic3A7cmVzb3VyY2VTZXQpPC9QUkU+Cis8REw+Cis8REQ+VGhpcyBjYW4gYmUgdXNlZCB0byB1cGRhdGUgdGhlIHJlc291cmNlIHNldCdzIHJlc291cmNlIGZhY3RvcnkgcmVnaXN0cnkgd2l0aCBhbGwgbmVlZGVkIGZhY3Rvcmllcy4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5yZWdpc3RlclJlc291cmNlRmFjdG9yaWVzPC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS5hY2NlbGVvLmVuZ2luZS5zZXJ2aWNlLkFic3RyYWN0QWNjZWxlb0dlbmVyYXRvcjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnJlc291cmNlU2V0PC9DT0RFPiAtIFRoZSByZXNvdXJjZSBzZXQgd2hpY2ggcmVnaXN0cnkgaGFzIHRvIGJlIHVwZGF0ZWQuPC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9NTVF1ZXJpZXMuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwO05FWFQgQ0xBU1M8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ik1NUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX2RldGFpbCI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL2NsYXNzLXVzZS9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL2NsYXNzLXVzZS9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWM5ZWQxZgotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvY2xhc3MtdXNlL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbApAQCAtMCwwICsxLDE0NCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNi4wXzI0KSBvbiBXZWQgRmViIDIyIDExOjI0OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcworPC9USVRMRT4KKworPE1FVEEgTkFNRT0iZGF0ZSIgQ09OVEVOVD0iMjAxMi0wMi0yMiI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIGlmIChsb2NhdGlvbi5ocmVmLmluZGV4T2YoJ2lzLWV4dGVybmFsPXRydWUnKSA9PSAtMSkgeworICAgICAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMiOworICAgIH0KK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+Cis8SFI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL1xjbGFzcy11c2VBcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvXGNsYXNzLXVzZUFyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJBcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL2NsYXNzLXVzZS9EYXRhVHlwZVF1ZXJpZXMuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvY2xhc3MtdXNlL0RhdGFUeXBlUXVlcmllcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI2ZTYxNTcKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL2NsYXNzLXVzZS9EYXRhVHlwZVF1ZXJpZXMuaHRtbApAQCAtMCwwICsxLDE0NCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNi4wXzI0KSBvbiBXZWQgRmViIDIyIDExOjI0OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMuRGF0YVR5cGVRdWVyaWVzCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJkYXRlIiBDT05URU5UPSIyMDEyLTAyLTIyIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgaWYgKGxvY2F0aW9uLmhyZWYuaW5kZXhPZignaXMtZXh0ZXJuYWw9dHJ1ZScpID09IC0xKSB7CisgICAgICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMuRGF0YVR5cGVRdWVyaWVzIjsKKyAgICB9Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorPEhSPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL1xjbGFzcy11c2VEYXRhVHlwZVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJEYXRhVHlwZVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMuRGF0YVR5cGVRdWVyaWVzPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcy5EYXRhVHlwZVF1ZXJpZXMKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL1xjbGFzcy11c2VEYXRhVHlwZVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJEYXRhVHlwZVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvY2xhc3MtdXNlL0ZTTVF1ZXJpZXMuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvY2xhc3MtdXNlL0ZTTVF1ZXJpZXMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42YTk1ZjlhCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9jbGFzcy11c2UvRlNNUXVlcmllcy5odG1sCkBAIC0wLDAgKzEsMTQ0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS42LjBfMjQpIG9uIFdlZCBGZWIgMjIgMTE6MjQ6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcy5GU01RdWVyaWVzCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJkYXRlIiBDT05URU5UPSIyMDEyLTAyLTIyIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgaWYgKGxvY2F0aW9uLmhyZWYuaW5kZXhPZignaXMtZXh0ZXJuYWw9dHJ1ZScpID09IC0xKSB7CisgICAgICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMuRlNNUXVlcmllcyI7CisgICAgfQorfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKzxIUj4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9GU01RdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvXGNsYXNzLXVzZUZTTVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJGU01RdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgQ2xhc3M8YnI+b3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzLkZTTVF1ZXJpZXM8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzLkZTTVF1ZXJpZXMKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0ZTTVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcyI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9cY2xhc3MtdXNlRlNNUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkZTTVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvY2xhc3MtdXNlL0dlbmVyYWxRdWVyaWVzLmh0bWwgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL2NsYXNzLXVzZS9HZW5lcmFsUXVlcmllcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVmYzNjOWIKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL2NsYXNzLXVzZS9HZW5lcmFsUXVlcmllcy5odG1sCkBAIC0wLDAgKzEsMTQ0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS42LjBfMjQpIG9uIFdlZCBGZWIgMjIgMTE6MjQ6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcy5HZW5lcmFsUXVlcmllcworPC9USVRMRT4KKworPE1FVEEgTkFNRT0iZGF0ZSIgQ09OVEVOVD0iMjAxMi0wMi0yMiI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIGlmIChsb2NhdGlvbi5ocmVmLmluZGV4T2YoJ2lzLWV4dGVybmFsPXRydWUnKSA9PSAtMSkgeworICAgICAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzLkdlbmVyYWxRdWVyaWVzIjsKKyAgICB9Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorPEhSPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvXGNsYXNzLXVzZUdlbmVyYWxRdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMuR2VuZXJhbFF1ZXJpZXM8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzLkdlbmVyYWxRdWVyaWVzCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL1xjbGFzcy11c2VHZW5lcmFsUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkdlbmVyYWxRdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL2NsYXNzLXVzZS9NTVF1ZXJpZXMuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvY2xhc3MtdXNlL01NUXVlcmllcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFhN2QxYzgKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL2NsYXNzLXVzZS9NTVF1ZXJpZXMuaHRtbApAQCAtMCwwICsxLDE0NCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNi4wXzI0KSBvbiBXZWQgRmViIDIyIDExOjI0OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMuTU1RdWVyaWVzCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJkYXRlIiBDT05URU5UPSIyMDEyLTAyLTIyIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgaWYgKGxvY2F0aW9uLmhyZWYuaW5kZXhPZignaXMtZXh0ZXJuYWw9dHJ1ZScpID09IC0xKSB7CisgICAgICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMuTU1RdWVyaWVzIjsKKyAgICB9Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorPEhSPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL1xjbGFzcy11c2VNTVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJNTVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMuTU1RdWVyaWVzPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcy5NTVF1ZXJpZXMKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL1xjbGFzcy11c2VNTVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJNTVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvcGFja2FnZS1mcmFtZS5odG1sIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9wYWNrYWdlLWZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2MxMjMwMQotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvcGFja2FnZS1mcmFtZS5odG1sCkBAIC0wLDAgKzEsNDAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjYuMF8yNCkgb24gV2VkIEZlYiAyMiAxMToyNDozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK29yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcworPC9USVRMRT4KKworPE1FVEEgTkFNRT0iZGF0ZSIgQ09OVEVOVD0iMjAxMi0wMi0yMiI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIj4KKzxGT05UIHNpemU9IisxIiBDTEFTUz0iRnJhbWVUaXRsZUZvbnQiPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPm9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllczwvQT48L0ZPTlQ+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBOT1dSQVA+PEZPTlQgc2l6ZT0iKzEiIENMQVNTPSJGcmFtZUhlYWRpbmdGb250Ij4KK0NsYXNzZXM8L0ZPTlQ+Jm5ic3A7Cis8Rk9OVCBDTEFTUz0iRnJhbWVJdGVtRm9udCI+Cis8QlI+Cis8QSBIUkVGPSJBcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMiIHRhcmdldD0iY2xhc3NGcmFtZSI+QXJjaGl0ZWN0dXJlUXVlcmllczwvQT4KKzxCUj4KKzxBIEhSRUY9IkRhdGFUeXBlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkRhdGFUeXBlUXVlcmllczwvQT4KKzxCUj4KKzxBIEhSRUY9IkZTTVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcyIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5GU01RdWVyaWVzPC9BPgorPEJSPgorPEEgSFJFRj0iR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcyIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5HZW5lcmFsUXVlcmllczwvQT4KKzxCUj4KKzxBIEhSRUY9Ik1NUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPk1NUXVlcmllczwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorCisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL3BhY2thZ2Utc3VtbWFyeS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQwNDVlZDIKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL3BhY2thZ2Utc3VtbWFyeS5odG1sCkBAIC0wLDAgKzEsMTczIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS42LjBfMjQpIG9uIFdlZCBGZWIgMjIgMTE6MjQ6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImRhdGUiIENPTlRFTlQ9IjIwMTItMDItMjIiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBpZiAobG9jYXRpb24uaHJlZi5pbmRleE9mKCdpcy1leHRlcm5hbD10cnVlJykgPT0gLTEpIHsKKyAgICAgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMiOworICAgIH0KK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+Cis8SFI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5QYWNrYWdlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5QUkVWIFBBQ0tBR0U8L0I+PC9BPiZuYnNwOworJm5ic3A7TkVYVCBQQUNLQUdFPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8SDI+CitQYWNrYWdlIG9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcworPC9IMj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5DbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMiPkFyY2hpdGVjdHVyZVF1ZXJpZXM8L0E+PC9CPjwvVEQ+Cis8VEQ+Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMiPkRhdGFUeXBlUXVlcmllczwvQT48L0I+PC9URD4KKzxURD4mbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9GU01RdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMiPkZTTVF1ZXJpZXM8L0E+PC9CPjwvVEQ+Cis8VEQ+Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcyI+R2VuZXJhbFF1ZXJpZXM8L0E+PC9CPjwvVEQ+Cis8VEQ+Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMiPk1NUXVlcmllczwvQT48L0I+PC9URD4KKzxURD5FbnRyeSBwb2ludCBvZiB0aGUgJ01NUXVlcmllcycgZ2VuZXJhdGlvbiBtb2R1bGUuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7CisKKzxQPgorPERMPgorPC9ETD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlBhY2thZ2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPlBSRVYgUEFDS0FHRTwvQj48L0E+Jm5ic3A7CismbmJzcDtORVhUIFBBQ0tBR0U8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9wYWNrYWdlLXRyZWUuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvcGFja2FnZS10cmVlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzE0NTRkMwotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvcGFja2FnZS10cmVlLmh0bWwKQEAgLTAsMCArMSwxNTUgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjYuMF8yNCkgb24gV2VkIEZlYiAyMiAxMToyNDozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK29yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcyBDbGFzcyBIaWVyYXJjaHkKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImRhdGUiIENPTlRFTlQ9IjIwMTItMDItMjIiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBpZiAobG9jYXRpb24uaHJlZi5pbmRleE9mKCdpcy1leHRlcm5hbD10cnVlJykgPT0gLTEpIHsKKyAgICAgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMgQ2xhc3MgSGllcmFyY2h5IjsKKyAgICB9Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorPEhSPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VHJlZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vcGFja2FnZS10cmVlLmh0bWwiPjxCPlBSRVY8L0I+PC9BPiZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvcGFja2FnZS10cmVlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KK0hpZXJhcmNoeSBGb3IgUGFja2FnZSBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMKKzwvSDI+Cis8L0NFTlRFUj4KKzxETD4KKzxEVD48Qj5QYWNrYWdlIEhpZXJhcmNoaWVzOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctdHJlZS5odG1sIj5BbGwgUGFja2FnZXM8L0E+PC9ETD4KKzxIUj4KKzxIMj4KK0NsYXNzIEhpZXJhcmNoeQorPC9IMj4KKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPmphdmEubGFuZy5PYmplY3Q8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5hY2NlbGVvLmVuZ2luZS5zZXJ2aWNlLkFic3RyYWN0QWNjZWxlb0dlbmVyYXRvcjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcy48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMiPjxCPk1NUXVlcmllczwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcy48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzIj48Qj5BcmNoaXRlY3R1cmVRdWVyaWVzPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzIj48Qj5EYXRhVHlwZVF1ZXJpZXM8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcy48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRlNNUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzIj48Qj5GU01RdWVyaWVzPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMiPjxCPkdlbmVyYWxRdWVyaWVzPC9CPjwvQT48L1VMPgorPC9VTD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlRyZWU8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL3BhY2thZ2UtdHJlZS5odG1sIj48Qj5QUkVWPC9CPjwvQT4mbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL3BhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9wYWNrYWdlLXVzZS5odG1sIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9wYWNrYWdlLXVzZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkxNzBhNDAKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL3BhY2thZ2UtdXNlLmh0bWwKQEAgLTAsMCArMSwxNDQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjYuMF8yNCkgb24gV2VkIEZlYiAyMiAxMToyNDozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgUGFja2FnZSBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImRhdGUiIENPTlRFTlQ9IjIwMTItMDItMjIiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBpZiAobG9jYXRpb24uaHJlZi5pbmRleE9mKCdpcy1leHRlcm5hbD10cnVlJykgPT0gLTEpIHsKKyAgICAgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIFBhY2thZ2Ugb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzIjsKKyAgICB9Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorPEhSPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvcGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIFBhY2thZ2U8YnI+b3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ubW1xdWVyaWVzPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9wYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vcGFja2FnZS1mcmFtZS5odG1sIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL3BhY2thZ2UtZnJhbWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MGRkNzhiCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL3BhY2thZ2UtZnJhbWUuaHRtbApAQCAtMCwwICsxLDMyIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS42LjBfMjQpIG9uIFdlZCBGZWIgMjIgMTE6MjQ6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlbworPC9USVRMRT4KKworPE1FVEEgTkFNRT0iZGF0ZSIgQ09OVEVOVD0iMjAxMi0wMi0yMiI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIj4KKzxGT05UIHNpemU9IisxIiBDTEFTUz0iRnJhbWVUaXRsZUZvbnQiPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiIHRhcmdldD0iY2xhc3NGcmFtZSI+b3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW88L0E+PC9GT05UPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgTk9XUkFQPjxGT05UIHNpemU9IisxIiBDTEFTUz0iRnJhbWVIZWFkaW5nRm9udCI+CitDbGFzc2VzPC9GT05UPiZuYnNwOworPEZPTlQgQ0xBU1M9IkZyYW1lSXRlbUZvbnQiPgorPEJSPgorPEEgSFJFRj0iQWN0aXZhdG9yLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlbyIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5BY3RpdmF0b3I8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKworCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vcGFja2FnZS1zdW1tYXJ5Lmh0bWwgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vcGFja2FnZS1zdW1tYXJ5Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDE1MjJiNQotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXN1bW1hcnkuaHRtbApAQCAtMCwwICsxLDE1NyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNi4wXzI0KSBvbiBXZWQgRmViIDIyIDExOjI0OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8KKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImRhdGUiIENPTlRFTlQ9IjIwMTItMDItMjIiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBpZiAobG9jYXRpb24uaHJlZi5pbmRleE9mKCdpcy1leHRlcm5hbD10cnVlJykgPT0gLTEpIHsKKyAgICAgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlbyI7CisgICAgfQorfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKzxIUj4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlBhY2thZ2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViBQQUNLQUdFJm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPk5FWFQgUEFDS0FHRTwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxIMj4KK1BhY2thZ2Ugb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8KKzwvSDI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+Q2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9BY3RpdmF0b3IuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvIj5BY3RpdmF0b3I8L0E+PC9CPjwvVEQ+Cis8VEQ+VGhlIGFjdGl2YXRvciBjbGFzcyBjb250cm9scyB0aGUgcGx1Zy1pbiBsaWZlIGN5Y2xlLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworCis8UD4KKzxETD4KKzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5QYWNrYWdlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYgUEFDS0FHRSZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5ORVhUIFBBQ0tBR0U8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXRyZWUuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXRyZWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45ZjJiYjg4Ci0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL3BhY2thZ2UtdHJlZS5odG1sCkBAIC0wLDAgKzEsMTU2IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS42LjBfMjQpIG9uIFdlZCBGZWIgMjIgMTE6MjQ6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlbyBDbGFzcyBIaWVyYXJjaHkKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImRhdGUiIENPTlRFTlQ9IjIwMTItMDItMjIiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBpZiAobG9jYXRpb24uaHJlZi5pbmRleE9mKCdpcy1leHRlcm5hbD10cnVlJykgPT0gLTEpIHsKKyAgICAgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlbyBDbGFzcyBIaWVyYXJjaHkiOworICAgIH0KK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+Cis8SFI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5UcmVlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvcGFja2FnZS10cmVlLmh0bWwiPjxCPk5FWFQ8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorSGllcmFyY2h5IEZvciBQYWNrYWdlIG9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvCis8L0gyPgorPC9DRU5URVI+Cis8REw+Cis8RFQ+PEI+UGFja2FnZSBIaWVyYXJjaGllczo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+QWxsIFBhY2thZ2VzPC9BPjwvREw+Cis8SFI+Cis8SDI+CitDbGFzcyBIaWVyYXJjaHkKKzwvSDI+Cis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5qYXZhLmxhbmcuT2JqZWN0PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLlBsdWdpbiAoaW1wbGVtZW50cyBvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQWN0aXZhdG9yKQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8uPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vQWN0aXZhdG9yLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlbyI+PEI+QWN0aXZhdG9yPC9CPjwvQT48L1VMPgorPC9VTD4KKzwvVUw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5UcmVlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvcGFja2FnZS10cmVlLmh0bWwiPjxCPk5FWFQ8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXVzZS5odG1sIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL3BhY2thZ2UtdXNlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTI3OWE2MwotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXVzZS5odG1sCkBAIC0wLDAgKzEsMTcwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS42LjBfMjQpIG9uIFdlZCBGZWIgMjIgMTE6MjQ6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIFBhY2thZ2Ugb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8KKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImRhdGUiIENPTlRFTlQ9IjIwMTItMDItMjIiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBpZiAobG9jYXRpb24uaHJlZi5pbmRleE9mKCdpcy1leHRlcm5hbD10cnVlJykgPT0gLTEpIHsKKyAgICAgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIFBhY2thZ2Ugb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8iOworICAgIH0KK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+Cis8SFI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL3BhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBQYWNrYWdlPGJyPm9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW88L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvIj48Qj5vcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlbzwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitDbGFzc2VzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlbzwvQT4gdXNlZCBieSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wcm90ZXVzL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW88L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcHJvdGV1cy9nZW5lcmF0b3JzL2FjY2VsZW8vY2xhc3MtdXNlL0FjdGl2YXRvci5odG1sI29yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvIj48Qj5BY3RpdmF0b3I8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGFjdGl2YXRvciBjbGFzcyBjb250cm9scyB0aGUgcGx1Zy1pbiBsaWZlIGN5Y2xlLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3Byb3RldXMvZ2VuZXJhdG9ycy9hY2NlbGVvL3BhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9BY3RpdmF0b3IuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9BY3RpdmF0b3IuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kOGY4Y2I0Ci0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sCkBAIC0wLDAgKzEsMzc1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS42LjBfMjQpIG9uIFdlZCBPY3QgMTcgMTk6MzM6MDUgQ0VTVCAyMDEyIC0tPgorPFRJVExFPgorQWN0aXZhdG9yCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJkYXRlIiBDT05URU5UPSIyMDEyLTEwLTE3Ij4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgaWYgKGxvY2F0aW9uLmhyZWYuaW5kZXhPZignaXMtZXh0ZXJuYWw9dHJ1ZScpID09IC0xKSB7CisgICAgICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iQWN0aXZhdG9yIjsKKyAgICB9Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorPEhSPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9BY3RpdmF0b3IuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYgQ0xBU1MmbmJzcDsKKyZuYnNwO05FWFQgQ0xBU1M8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vQWN0aXZhdG9yLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWN0aXZhdG9yLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX3N1bW1hcnkiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwOzxBIEhSRUY9IiNmaWVsZF9kZXRhaWwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3JfZGV0YWlsIj5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb248L0ZPTlQ+Cis8QlI+CitDbGFzcyBBY3RpdmF0b3I8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5QbHVnaW4KKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24uQWN0aXZhdG9yPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLm9zZ2kuZnJhbWV3b3JrLkJ1bmRsZUFjdGl2YXRvcjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGNsYXNzIDxCPkFjdGl2YXRvcjwvQj48RFQ+ZXh0ZW5kcyBvcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWUuUGx1Z2luPC9ETD4KKzwvUFJFPgorCis8UD4KK1RoZSBhY3RpdmF0b3IgY2xhc3MgY29udHJvbHMgdGhlIHBsdWctaW4gbGlmZSBjeWNsZS4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9BY3RpdmF0b3IuaHRtbCNQTFVHSU5fSUQiPlBMVUdJTl9JRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgcGx1Zy1pbiBJRC48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLlBsdWdpbiI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWUuUGx1Z2luPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+UExVR0lOX1BSRUZFUkVOQ0VfU0NPUEUsIFBSRUZFUkVOQ0VTX0RFRkFVTFRfT1ZFUlJJREVfQkFTRV9OQU1FLCBQUkVGRVJFTkNFU19ERUZBVUxUX09WRVJSSURFX0ZJTEVfTkFNRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT0gQ09OU1RSVUNUT1IgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0iY29uc3RydWN0b3Jfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vQWN0aXZhdG9yLmh0bWwjQWN0aXZhdG9yKCkiPkFjdGl2YXRvcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBjb25zdHJ1Y3Rvci48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uIj5BY3RpdmF0b3I8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sI2dldERlZmF1bHQoKSI+Z2V0RGVmYXVsdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHNoYXJlZCBpbnN0YW5jZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9BY3RpdmF0b3IuaHRtbCNzdGFydChvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQ29udGV4dCkiPnN0YXJ0PC9BPjwvQj4ob3JnLm9zZ2kuZnJhbWV3b3JrLkJ1bmRsZUNvbnRleHQmbmJzcDtjb250ZXh0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vQWN0aXZhdG9yLmh0bWwjc3RvcChvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQ29udGV4dCkiPnN0b3A8L0E+PC9CPihvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQ29udGV4dCZuYnNwO2NvbnRleHQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmNvcmUucnVudGltZS5QbHVnaW4iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5QbHVnaW48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5maW5kLCBmaW5kLCBnZXRCdW5kbGUsIGdldERlc2NyaXB0b3IsIGdldExvZywgZ2V0UGx1Z2luUHJlZmVyZW5jZXMsIGdldFN0YXRlTG9jYXRpb24sIGludGVybmFsSW5pdGlhbGl6ZURlZmF1bHRQbHVnaW5QcmVmZXJlbmNlcywgaXNEZWJ1Z2dpbmcsIG9wZW5TdHJlYW0sIG9wZW5TdHJlYW0sIHNhdmVQbHVnaW5QcmVmZXJlbmNlcywgc2V0RGVidWdnaW5nLCBzaHV0ZG93biwgc3RhcnR1cCwgdG9TdHJpbmc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB3YWl0LCB3YWl0LCB3YWl0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IEZJRUxEIERFVEFJTCA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9IlBMVUdJTl9JRCI+PCEtLSAtLT48L0E+PEgzPgorUExVR0lOX0lEPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGZpbmFsIGphdmEubGFuZy5TdHJpbmcgPEI+UExVR0lOX0lEPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBwbHVnLWluIElELgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24uQWN0aXZhdG9yLlBMVUdJTl9JRCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorCis8IS0tID09PT09PT09PSBDT05TVFJVQ1RPUiBERVRBSUwgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImNvbnN0cnVjdG9yX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJBY3RpdmF0b3IoKSI+PCEtLSAtLT48L0E+PEgzPgorQWN0aXZhdG9yPC9IMz4KKzxQUkU+CitwdWJsaWMgPEI+QWN0aXZhdG9yPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+VGhlIGNvbnN0cnVjdG9yLgorPFA+Cis8L0RMPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9InN0YXJ0KG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0KSI+PCEtLSAtLT48L0E+PEgzPgorc3RhcnQ8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnN0YXJ0PC9CPihvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQ29udGV4dCZuYnNwO2NvbnRleHQpCisgICAgICAgICAgIHRocm93cyBqYXZhLmxhbmcuRXhjZXB0aW9uPC9QUkU+Cis8REw+Cis8REQ+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+c3RhcnQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQWN0aXZhdG9yPC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5zdGFydDwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLlBsdWdpbjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5UaHJvd3M6PC9CPgorPEREPjxDT0RFPmphdmEubGFuZy5FeGNlcHRpb248L0NPREU+PERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+UGx1Z2luLnN0YXJ0KG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0KTwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InN0b3Aob3JnLm9zZ2kuZnJhbWV3b3JrLkJ1bmRsZUNvbnRleHQpIj48IS0tIC0tPjwvQT48SDM+CitzdG9wPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zdG9wPC9CPihvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQ29udGV4dCZuYnNwO2NvbnRleHQpCisgICAgICAgICAgdGhyb3dzIGphdmEubGFuZy5FeGNlcHRpb248L1BSRT4KKzxETD4KKzxERD4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5zdG9wPC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLm9zZ2kuZnJhbWV3b3JrLkJ1bmRsZUFjdGl2YXRvcjwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+c3RvcDwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLlBsdWdpbjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5UaHJvd3M6PC9CPgorPEREPjxDT0RFPmphdmEubGFuZy5FeGNlcHRpb248L0NPREU+PERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+UGx1Z2luLnN0b3Aob3JnLm9zZ2kuZnJhbWV3b3JrLkJ1bmRsZUNvbnRleHQpPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RGVmYXVsdCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXREZWZhdWx0PC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uIj5BY3RpdmF0b3I8L0E+IDxCPmdldERlZmF1bHQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBzaGFyZWQgaW5zdGFuY2UuCis8UD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHNoYXJlZCBpbnN0YW5jZTwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvQWN0aXZhdG9yLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWIENMQVNTJm5ic3A7CismbmJzcDtORVhUIENMQVNTPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFjdGl2YXRvci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX2RldGFpbCI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vY2xhc3MtdXNlL0FjdGl2YXRvci5odG1sIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL2NsYXNzLXVzZS9BY3RpdmF0b3IuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41ZTJiNzM2Ci0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL2NsYXNzLXVzZS9BY3RpdmF0b3IuaHRtbApAQCAtMCwwICsxLDE4MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNi4wXzI0KSBvbiBXZWQgT2N0IDE3IDE5OjMzOjA1IENFU1QgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLkFjdGl2YXRvcgorPC9USVRMRT4KKworPE1FVEEgTkFNRT0iZGF0ZSIgQ09OVEVOVD0iMjAxMi0xMC0xNyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIGlmIChsb2NhdGlvbi5ocmVmLmluZGV4T2YoJ2lzLWV4dGVybmFsPXRydWUnKSA9PSAtMSkgeworICAgICAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLkFjdGl2YXRvciI7CisgICAgfQorfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKzxIUj4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vXGNsYXNzLXVzZUFjdGl2YXRvci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFjdGl2YXRvci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5BY3RpdmF0b3I8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uIj5BY3RpdmF0b3I8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbiI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uIj5BY3RpdmF0b3I8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb248L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9BY3RpdmF0b3IuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbiI+QWN0aXZhdG9yPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vQWN0aXZhdG9yLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24iPkFjdGl2YXRvcjwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+QWN0aXZhdG9yLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9BY3RpdmF0b3IuaHRtbCNnZXREZWZhdWx0KCkiPmdldERlZmF1bHQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBzaGFyZWQgaW5zdGFuY2UuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vXGNsYXNzLXVzZUFjdGl2YXRvci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFjdGl2YXRvci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MjZmYjQ1Ci0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwKQEAgLTAsMCArMSw5ODQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjYuMF8yNCkgb24gV2VkIE9jdCAxNyAxOTozMzowNCBDRVNUIDIwMTIgLS0+Cis8VElUTEU+CitBcmNoaXRlY3R1cmVRdWVyaWVzCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJkYXRlIiBDT05URU5UPSIyMDEyLTEwLTE3Ij4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgaWYgKGxvY2F0aW9uLmhyZWYuaW5kZXhPZignaXMtZXh0ZXJuYWw9dHJ1ZScpID09IC0xKSB7CisgICAgICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iQXJjaGl0ZWN0dXJlUXVlcmllcyI7CisgICAgfQorfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKzxIUj4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViBDTEFTUyZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3Jfc3VtbWFyeSI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX2RldGFpbCI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllczwvRk9OVD4KKzxCUj4KK0NsYXNzIEFyY2hpdGVjdHVyZVF1ZXJpZXM8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllczwvQj4KKzwvUFJFPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGNsYXNzIDxCPkFyY2hpdGVjdHVyZVF1ZXJpZXM8L0I+PERUPmV4dGVuZHMgamF2YS5sYW5nLk9iamVjdDwvREw+Cis8L1BSRT4KKworPFA+Cis8REw+Cis8RFQ+PEI+QXV0aG9yOjwvQj48L0RUPgorICA8REQ+c2NkdG5zbTwvREQ+Cis8L0RMPgorPEhSPgorCis8UD4KKworPCEtLSA9PT09PT09PSBDT05TVFJVQ1RPUiBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+Q29uc3RydWN0b3IgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI0FyY2hpdGVjdHVyZVF1ZXJpZXMoKSI+QXJjaGl0ZWN0dXJlUXVlcmllczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLkJvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNkZWZpbmVzQ29ubmVjdGlvbnMob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5kZWZpbmVzQ29ubmVjdGlvbnM8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2NsKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5Jmd0OzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldEFsbFN1YkNvbXBvbmVudHNJbkNsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+Z2V0QWxsU3ViQ29tcG9uZW50c0luQ2xhc3M8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2MpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtPbiBhIGdpdmVuIGNsYXNzIChhIFJvYm90TUwgc3lzdGVtKSwgcmV0cmlldmUgYWxsIHRoZSBjb250YWluZWQgc3lzdGVtcy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldENvbXBvbmVudEZpbGVOYW1lKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzLCBqYXZhLmxhbmcuU3RyaW5nKSI+Z2V0Q29tcG9uZW50RmlsZU5hbWU8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2MsCisgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7ZW5kKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLk5hbWVkRWxlbWVudCZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXRDb21wb25lbnRNb2RlbHMob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwpIj5nZXRDb21wb25lbnRNb2RlbHM8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCZuYnNwO21vZGVsKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0cmlldmVzIGFsbCB0aGUgY29tcG9uZW50IG1vZGVscyBhdmFpbGFibGUgaW5zaWRlIGEgUm9ib3RNTCBtb2RlbC48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldENvbm5lY3RlZFBvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPmdldENvbm5lY3RlZFBvcnQ8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jm5ic3A7cG9ydCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjZ2V0Q29ubmVjdGlvbkRlZmluaXRpb24ob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKSI+Z2V0Q29ubmVjdGlvbkRlZmluaXRpb248L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3ImbmJzcDtjb25uZWN0b3IpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldENvbm5lY3Rpb25PdGhlclNpZGUob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPmdldENvbm5lY3Rpb25PdGhlclNpZGU8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jm5ic3A7cDEpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXREZXN0Q29tcG9uZW50Rm9yQ29ubmVjdG9yKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcikiPmdldERlc3RDb21wb25lbnRGb3JDb25uZWN0b3I8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3ImbmJzcDtjb25uKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7R2V0IHRoZSBkZXN0aW5hdGlvbiBjb21wb25lbnQgaW5zdGFuY2Ugb2YgYSBjb25uZWN0b3I8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldERlc3RDb21wb25lbnRJbnN0YW5jZU5hbWVGb3JDb25uZWN0b3Iob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKSI+Z2V0RGVzdENvbXBvbmVudEluc3RhbmNlTmFtZUZvckNvbm5lY3RvcjwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciZuYnNwO2Nvbm4pPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXRyaWV2ZSB0aGUgaW5zdGFuY2UgbmFtZSBvZiBhIGNvbXBvbmVudCBhdCB0aGUgZGVzdGluYXRpb24gb2YgYSBjb25uZWN0b3IuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXREZXN0Q29tcG9uZW50VHlwZU5hbWVGb3JDb25uZWN0b3Iob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKSI+Z2V0RGVzdENvbXBvbmVudFR5cGVOYW1lRm9yQ29ubmVjdG9yPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yJm5ic3A7Y29ubik8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHJpZXZlIHRoZSBtb2RlbCBuYW1lIChvciB0eXBlIG5hbWUpIG9mIGEgY29tcG9uZW50IGF0IHRoZSBkZXN0aW5hdGlvbiBvZiBhIGNvbm5lY3Rvci48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldERlc3RQb3J0TmFtZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IpIj5nZXREZXN0UG9ydE5hbWU8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3ImbmJzcDtjb25uKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7R2V0IHRoZSBkZXN0aW5hdGlvbiBwb3J0IG5hbWUgb2YgYSBjb25uZWN0b3I8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS51dGlsLkxpc3QmbHQ7b3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yJmd0OzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldEV4dGVybmFsSW5wdXRDb25uZWN0b3JzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+Z2V0RXh0ZXJuYWxJbnB1dENvbm5lY3RvcnM8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2MpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXRyaWV2ZXMgYWxsIHRoZSBjb25uZWN0b3JzIGJldHdlZW4gdGhlIGlucHV0IGNvbXBvbmVudCBtb2RlbCBib3VuZGFyaWVzIGFuZCBzdWJjb21wb25lbnRzIHRoYXQgYXJlIGluc2lkZSB0aGUgbW9kZWwuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXRFeHRlcm5hbE91dHB1dENvbm5lY3RvcnMob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5nZXRFeHRlcm5hbE91dHB1dENvbm5lY3RvcnM8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2MpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXRyaWV2ZXMgYWxsIHRoZSBjb25uZWN0b3JzIGJldHdlZW4gc3ViY29tcG9uZW50cyB0aGF0IGFyZSBpbnNpZGUgdGhlIGNvbXBvbmVudCBtb2RlbCBhbmQgdGhlIGNvbXBvbmVudCBtb2RlbCBvdXRwdXRzLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLnV0aWwuTGlzdCZsdDtvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jmd0OzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldElucHV0UG9ydHNGb3JFbGVtZW50KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpIj5nZXRJbnB1dFBvcnRzRm9yRWxlbWVudDwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQmbmJzcDtlbHQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBcyBpdHMgbmFtZSBzYXlzLCByZXRyaWV2ZXMgdGhlIGlucHV0IHBvcnRzIGZvciBhIGdpdmVuIGVsZW1lbnQuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXRJbnRlcm5hbENvbm5lY3RvcnMob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5nZXRJbnRlcm5hbENvbm5lY3RvcnM8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2MpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXRyaWV2ZXMgYWxsIHRoZSBjb25uZWN0b3JzIGJldHdlZW4gc3ViY29tcG9uZW50cyBpbnNpZGUgYSBnaXZlbiBjb21wb25lbnQgbW9kZWwuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5Jmd0OzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnQob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5nZXRMZXZlbDFTdWJDb21wb25lbnRzRm9yQ29tcG9uZW50PC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MmbmJzcDtjKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7T24gYSBnaXZlbiBjbGFzcyAoYSBSb2JvdE1MIHN5c3RlbSksIHJldHJpZXZlIGFsbCB0aGUgY29udGFpbmVkIHN5c3RlbXMuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5Jmd0OzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnRXaXRoU3RlcmVvdHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcywgamF2YS5sYW5nLlN0cmluZykiPmdldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnRXaXRoU3RlcmVvdHlwZTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7YywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7c3RlcmVvdHlwZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwOzxJPnJlcGxhY2VkIGJ5IGdldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnQob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgYykgd2hpY2ggdXNlcyB0aGUgUm9ib3RNTCBBUEkgaW5zdGVhZCBvZiBzdGVyZW90eXBlIG5hbWVzLjwvST48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS51dGlsLkxpc3QmbHQ7b3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXRPdXRwdXRQb3J0c0ZvckVsZW1lbnQob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCkiPmdldE91dHB1dFBvcnRzRm9yRWxlbWVudDwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQmbmJzcDtlbHQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBcyBpdHMgbmFtZSBzYXlzLCByZXRyaWV2ZXMgdGhlIG91dHB1dCBwb3J0cyBmb3IgYSBnaXZlbiBlbGVtZW50LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldFJvb3RDbGFzc0Zvck1vZGVsKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsKSI+Z2V0Um9vdENsYXNzRm9yTW9kZWw8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCZuYnNwO20pPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXRyaWV2ZXMgdGhlIGhpZ2hlc3QgbGV2ZWwgY2xhc3MgaW50byB3aGljaCBhIGdpdmVuIG1vZGVsIGlzIGNvbnRhaW5lZC48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNnZXRTb3VyY2VDb21wb25lbnRGb3JDb25uZWN0b3Iob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKSI+Z2V0U291cmNlQ29tcG9uZW50Rm9yQ29ubmVjdG9yPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yJm5ic3A7Y29ubik8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0dldCB0aGUgc291cmNlIGNvbXBvbmVudCBpbnN0YW5jZSBvZiBhIGNvbm5lY3RvcjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjZ2V0U291cmNlQ29tcG9uZW50SW5zdGFuY2VOYW1lRm9yQ29ubmVjdG9yKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcikiPmdldFNvdXJjZUNvbXBvbmVudEluc3RhbmNlTmFtZUZvckNvbm5lY3RvcjwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciZuYnNwO2Nvbm4pPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXRyaWV2ZSB0aGUgaW5zdGFuY2UgbmFtZSBvZiBhIGNvbXBvbmVudCBhdCB0aGUgc291cmNlIG9mIGEgY29ubmVjdG9yLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjZ2V0U291cmNlQ29tcG9uZW50VHlwZU5hbWVGb3JDb25uZWN0b3Iob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKSI+Z2V0U291cmNlQ29tcG9uZW50VHlwZU5hbWVGb3JDb25uZWN0b3I8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3ImbmJzcDtjb25uKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0cmlldmUgdGhlIG1vZGVsIG5hbWUgb2YgYSBjb21wb25lbnQgYXQgdGhlIHNvdXJjZSBvZiBhIGNvbm5lY3Rvci48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2dldFNvdXJjZVBvcnROYW1lKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcikiPmdldFNvdXJjZVBvcnROYW1lPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yJm5ic3A7Y29ubik8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0dldCB0aGUgc291cmNlIHBvcnQgbmFtZSBvZiBhIGNvbm5lY3Rvci48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2luc3BlY3REYXRhRmxvd1BvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPmluc3BlY3REYXRhRmxvd1BvcnQ8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jm5ic3A7cG9ydCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0RlYnVnIGZ1bmN0aW9uOiBwcmludHMgaW5mbyBhYm91dCBhIGdpdmVuIGRhdGFmbG93IHBvcnQuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNpbnNwZWN0U2VydmljZVBvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPmluc3BlY3RTZXJ2aWNlUG9ydDwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQmbmJzcDtwb3J0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7RGVidWcgZnVuY3Rpb24uPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5Cb29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjaXNBbklucHV0UG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+aXNBbklucHV0UG9ydDwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQmbmJzcDtwb3J0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Rm9yIERhdGFGbG93IHBvcnRzOiBpcyBpdCBhbiBJbnB1dCBQb3J0ID88L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLkJvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNpc0FuT3V0cHV0UG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+aXNBbk91dHB1dFBvcnQ8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jm5ic3A7cG9ydCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0ZvciBEYXRhRmxvdyBwb3J0czogaXMgaXQgYW4gT3V0cHV0IFBvcnQgPzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuQm9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2lzQVByb3ZpZGVkUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+aXNBUHJvdmlkZWRQb3J0PC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCZuYnNwO3BvcnQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtGb3IgUm9ib3RNTCBTZXJ2aWNlUG9ydHM6IGlzIHRoZSBwb3J0IGEgIlByb3ZpZGVkIiBwb3J0PzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuQm9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2lzQVJlcXVpcmVkUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+aXNBUmVxdWlyZWRQb3J0PC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCZuYnNwO3BvcnQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtGb3IgUm9ib3RNTCBTZXJ2aWNlUG9ydHM6IGlzIHRoZSBwb3J0IGEgIlJlcXVpcmVkIiBwb3J0PzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuQm9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2lzQ29ubmVjdGlvblZhbGlkKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcikiPmlzQ29ubmVjdGlvblZhbGlkPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yJm5ic3A7Y29ubmVjdG9yKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5Cb29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjaXNEYXRhRmxvd1BvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPmlzRGF0YUZsb3dQb3J0PC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCZuYnNwO3BvcnQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtJcyB0aGlzIHByb3BlcnR5IGEgRGF0YUZsb3cgUG9ydDwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuQm9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2lzTWFjcm9Db21wb25lbnQob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5pc01hY3JvQ29tcG9uZW50PC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MmbmJzcDtjKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7RG9lcyB0aGlzIGNsYXNzIGNvbnRhaW4gcHJvcGVydGllcyB0aGF0IGFyZSBjbGFzc2VzIHRoZW1zZWx2ZXMgPzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuQm9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sI2lzUG9ydENvbm5lY3RlZChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+aXNQb3J0Q29ubmVjdGVkPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCZuYnNwO3AxKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5Cb29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwjaXNSb290TW9kZWwob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwpIj5pc1Jvb3RNb2RlbDwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsJm5ic3A7ZWx0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7SXMgdGhlIGVsdCBhdCB0aGUgcm9vdCBvZiB0aGUgbW9kZWwgaGllcmFyY2h5ID88L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLkJvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCNpc1NlcnZpY2VQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj5pc1NlcnZpY2VQb3J0PC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCZuYnNwO3BvcnQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtJcyB0aGlzIHByb3BlcnR5IGEgU2VydmljZSBQb3J0PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB0b1N0cmluZywgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PSBDT05TVFJVQ1RPUiBERVRBSUwgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImNvbnN0cnVjdG9yX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJBcmNoaXRlY3R1cmVRdWVyaWVzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK0FyY2hpdGVjdHVyZVF1ZXJpZXM8L0gzPgorPFBSRT4KK3B1YmxpYyA8Qj5BcmNoaXRlY3R1cmVRdWVyaWVzPC9CPigpPC9QUkU+Cis8REw+Cis8L0RMPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImdldFNvdXJjZVBvcnROYW1lKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcikiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFNvdXJjZVBvcnROYW1lPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0U291cmNlUG9ydE5hbWU8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciZuYnNwO2Nvbm4pPC9QUkU+Cis8REw+Cis8REQ+R2V0IHRoZSBzb3VyY2UgcG9ydCBuYW1lIG9mIGEgY29ubmVjdG9yLgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTb3VyY2VDb21wb25lbnRUeXBlTmFtZUZvckNvbm5lY3RvcihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTb3VyY2VDb21wb25lbnRUeXBlTmFtZUZvckNvbm5lY3RvcjwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldFNvdXJjZUNvbXBvbmVudFR5cGVOYW1lRm9yQ29ubmVjdG9yPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3ImbmJzcDtjb25uKTwvUFJFPgorPERMPgorPEREPlJldHJpZXZlIHRoZSBtb2RlbCBuYW1lIG9mIGEgY29tcG9uZW50IGF0IHRoZSBzb3VyY2Ugb2YgYSBjb25uZWN0b3IuCis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmNvbm48L0NPREU+IC0gCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgc3RyaW5nIG9yIG51bGwgaWYgbm8gY29tcG9uZW50IGhhcyBiZWVuIGZvdW5kIGF0IHRoZSBzb3VyY2Ugb2YgYSBjb25uZWN0b3IuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTb3VyY2VDb21wb25lbnRJbnN0YW5jZU5hbWVGb3JDb25uZWN0b3Iob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U291cmNlQ29tcG9uZW50SW5zdGFuY2VOYW1lRm9yQ29ubmVjdG9yPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0U291cmNlQ29tcG9uZW50SW5zdGFuY2VOYW1lRm9yQ29ubmVjdG9yPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3ImbmJzcDtjb25uKTwvUFJFPgorPERMPgorPEREPlJldHJpZXZlIHRoZSBpbnN0YW5jZSBuYW1lIG9mIGEgY29tcG9uZW50IGF0IHRoZSBzb3VyY2Ugb2YgYSBjb25uZWN0b3IuCis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmNvbm48L0NPREU+IC0gCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgc3RyaW5nIG9yIG51bGwgaWYgbm8gY29tcG9uZW50IGhhcyBiZWVuIGZvdW5kIGF0IHRoZSBzb3VyY2Ugb2YgYSBjb25uZWN0b3IuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTb3VyY2VDb21wb25lbnRGb3JDb25uZWN0b3Iob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U291cmNlQ29tcG9uZW50Rm9yQ29ubmVjdG9yPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5IDxCPmdldFNvdXJjZUNvbXBvbmVudEZvckNvbm5lY3RvcjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yJm5ic3A7Y29ubik8L1BSRT4KKzxETD4KKzxERD5HZXQgdGhlIHNvdXJjZSBjb21wb25lbnQgaW5zdGFuY2Ugb2YgYSBjb25uZWN0b3IKKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RGVzdFBvcnROYW1lKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcikiPjwhLS0gLS0+PC9BPjxIMz4KK2dldERlc3RQb3J0TmFtZTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldERlc3RQb3J0TmFtZTwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yJm5ic3A7Y29ubik8L1BSRT4KKzxETD4KKzxERD5HZXQgdGhlIGRlc3RpbmF0aW9uIHBvcnQgbmFtZSBvZiBhIGNvbm5lY3RvcgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXREZXN0Q29tcG9uZW50Rm9yQ29ubmVjdG9yKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcikiPjwhLS0gLS0+PC9BPjxIMz4KK2dldERlc3RDb21wb25lbnRGb3JDb25uZWN0b3I8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgb3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHkgPEI+Z2V0RGVzdENvbXBvbmVudEZvckNvbm5lY3RvcjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yJm5ic3A7Y29ubik8L1BSRT4KKzxETD4KKzxERD5HZXQgdGhlIGRlc3RpbmF0aW9uIGNvbXBvbmVudCBpbnN0YW5jZSBvZiBhIGNvbm5lY3RvcgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXREZXN0Q29tcG9uZW50VHlwZU5hbWVGb3JDb25uZWN0b3Iob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0RGVzdENvbXBvbmVudFR5cGVOYW1lRm9yQ29ubmVjdG9yPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0RGVzdENvbXBvbmVudFR5cGVOYW1lRm9yQ29ubmVjdG9yPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3ImbmJzcDtjb25uKTwvUFJFPgorPERMPgorPEREPlJldHJpZXZlIHRoZSBtb2RlbCBuYW1lIChvciB0eXBlIG5hbWUpIG9mIGEgY29tcG9uZW50IGF0IHRoZSBkZXN0aW5hdGlvbiBvZiBhIGNvbm5lY3Rvci4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+Y29ubjwvQ09ERT4gLSAKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YSBzdHJpbmcgb3IgbnVsbCBpZiBubyBjb21wb25lbnQgaGFzIGJlZW4gZm91bmQgYXQgdGhlIGRlc3RpbmF0aW9uIG9mIGEgY29ubmVjdG9yLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RGVzdENvbXBvbmVudEluc3RhbmNlTmFtZUZvckNvbm5lY3RvcihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IpIj48IS0tIC0tPjwvQT48SDM+CitnZXREZXN0Q29tcG9uZW50SW5zdGFuY2VOYW1lRm9yQ29ubmVjdG9yPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0RGVzdENvbXBvbmVudEluc3RhbmNlTmFtZUZvckNvbm5lY3RvcjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yJm5ic3A7Y29ubik8L1BSRT4KKzxETD4KKzxERD5SZXRyaWV2ZSB0aGUgaW5zdGFuY2UgbmFtZSBvZiBhIGNvbXBvbmVudCBhdCB0aGUgZGVzdGluYXRpb24gb2YgYSBjb25uZWN0b3IuCis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmNvbm48L0NPREU+IC0gCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgc3RyaW5nIG9yIG51bGwgaWYgbm8gY29tcG9uZW50IGhhcyBiZWVuIGZvdW5kIGF0IHRoZSBkZXN0aW5hdGlvbiBvZiBhIGNvbm5lY3Rvci48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEludGVybmFsQ29ubmVjdG9ycyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEludGVybmFsQ29ubmVjdG9yczwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLnV0aWwuTGlzdCZsdDtvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3ImZ3Q7IDxCPmdldEludGVybmFsQ29ubmVjdG9yczwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MmbmJzcDtjKTwvUFJFPgorPERMPgorPEREPlJldHJpZXZlcyBhbGwgdGhlIGNvbm5lY3RvcnMgYmV0d2VlbiBzdWJjb21wb25lbnRzIGluc2lkZSBhIGdpdmVuIGNvbXBvbmVudCBtb2RlbC4KKyAoZG9lcyBub3QgcmV0cmlldmUgY29ubmVjdG9ycyBiZXR3ZWVuIGNvbXBvbmVudCBtb2RlbCBib3VuZGFyaWVzIGFuZCBzdWJjb21wb25lbnRzIGluc2lkZSB0aGUgbW9kZWwpLgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRFeHRlcm5hbElucHV0Q29ubmVjdG9ycyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEV4dGVybmFsSW5wdXRDb25uZWN0b3JzPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciZndDsgPEI+Z2V0RXh0ZXJuYWxJbnB1dENvbm5lY3RvcnM8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7Yyk8L1BSRT4KKzxETD4KKzxERD5SZXRyaWV2ZXMgYWxsIHRoZSBjb25uZWN0b3JzIGJldHdlZW4gdGhlIGlucHV0IGNvbXBvbmVudCBtb2RlbCBib3VuZGFyaWVzIGFuZCBzdWJjb21wb25lbnRzIHRoYXQgYXJlIGluc2lkZSB0aGUgbW9kZWwuCisgKGRvZXMgbm90IHJldHJpZXZlIGNvbm5lY3RvcnMgYmV0d2VlbiBzdWJjb21wb25lbnRzIGluc2lkZSB0aGUgY29tcG9uZW50IG1vZGVsLCBub3IgY29ubmVjdG9ycyBmcm9tIHN1YmNvbXBvbmVudHMgdG8gY29tcG9uZW50IG1vZGVsIG91dHB1dHMpLgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRFeHRlcm5hbE91dHB1dENvbm5lY3RvcnMob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj48IS0tIC0tPjwvQT48SDM+CitnZXRFeHRlcm5hbE91dHB1dENvbm5lY3RvcnM8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgamF2YS51dGlsLkxpc3QmbHQ7b3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yJmd0OyA8Qj5nZXRFeHRlcm5hbE91dHB1dENvbm5lY3RvcnM8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7Yyk8L1BSRT4KKzxETD4KKzxERD5SZXRyaWV2ZXMgYWxsIHRoZSBjb25uZWN0b3JzIGJldHdlZW4gc3ViY29tcG9uZW50cyB0aGF0IGFyZSBpbnNpZGUgdGhlIGNvbXBvbmVudCBtb2RlbCBhbmQgdGhlIGNvbXBvbmVudCBtb2RlbCBvdXRwdXRzLgorIChkb2VzIG5vdCByZXRyaWV2ZSBjb25uZWN0b3JzIGJldHdlZW4gc3ViY29tcG9uZW50cyBpbnNpZGUgdGhlIGNvbXBvbmVudCBtb2RlbCwgbm9yIGNvbm5lY3RvcnMgZnJvbSBjb21wb25lbnQgbW9kZWwgaW5wdXRzIHRvIHN1YmNvbXBvbmVudHMpLgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRSb290Q2xhc3NGb3JNb2RlbChvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFJvb3RDbGFzc0Zvck1vZGVsPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzIDxCPmdldFJvb3RDbGFzc0Zvck1vZGVsPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCZuYnNwO20pPC9QUkU+Cis8REw+Cis8REQ+UmV0cmlldmVzIHRoZSBoaWdoZXN0IGxldmVsIGNsYXNzIGludG8gd2hpY2ggYSBnaXZlbiBtb2RlbCBpcyBjb250YWluZWQuCisgKGEgbW9kZWwgY2FuIGJlIGNvbnRhaW5lZCBpbiBhIG1vZGVsIC4uLiB3aGljaCBpcyBjb250YWluZWQgaW4gYSBjbGFzcykuCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEFsbFN1YkNvbXBvbmVudHNJbkNsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QWxsU3ViQ29tcG9uZW50c0luQ2xhc3M8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgamF2YS51dGlsLkxpc3QmbHQ7b3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHkmZ3Q7IDxCPmdldEFsbFN1YkNvbXBvbmVudHNJbkNsYXNzPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2MpPC9QUkU+Cis8REw+Cis8REQ+T24gYSBnaXZlbiBjbGFzcyAoYSBSb2JvdE1MIHN5c3RlbSksIHJldHJpZXZlIGFsbCB0aGUgY29udGFpbmVkIHN5c3RlbXMuCisgUmVjdXJzaXZlLgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRMZXZlbDFTdWJDb21wb25lbnRzRm9yQ29tcG9uZW50KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudDwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLnV0aWwuTGlzdCZsdDtvcmcuZWNsaXBzZS51bWwyLnVtbC5Qcm9wZXJ0eSZndDsgPEI+Z2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudDwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MmbmJzcDtjKTwvUFJFPgorPERMPgorPEREPk9uIGEgZ2l2ZW4gY2xhc3MgKGEgUm9ib3RNTCBzeXN0ZW0pLCByZXRyaWV2ZSBhbGwgdGhlIGNvbnRhaW5lZCBzeXN0ZW1zLgorIE5vdCByZWN1cnNpdmUuIFJldHJpZXZlcyBvbmx5IG9uZSBsZXZlbCBkZWVwLgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRMZXZlbDFTdWJDb21wb25lbnRzRm9yQ29tcG9uZW50V2l0aFN0ZXJlb3R5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitnZXRMZXZlbDFTdWJDb21wb25lbnRzRm9yQ29tcG9uZW50V2l0aFN0ZXJlb3R5cGU8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgamF2YS51dGlsLkxpc3QmbHQ7b3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHkmZ3Q7IDxCPmdldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnRXaXRoU3RlcmVvdHlwZTwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MmbmJzcDtjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtzdGVyZW90eXBlKTwvUFJFPgorPERMPgorPEREPjxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwOzxJPnJlcGxhY2VkIGJ5IGdldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnQob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgYykgd2hpY2ggdXNlcyB0aGUgUm9ib3RNTCBBUEkgaW5zdGVhZCBvZiBzdGVyZW90eXBlIG5hbWVzLjwvST4KKzxQPgorPEREPk9uIGEgZ2l2ZW4gY2xhc3MgKGEgUm9ib3RNTCBzeXN0ZW0pLCByZXRyaWV2ZSBhbGwgdGhlIGNvbnRhaW5lZCBzeXN0ZW1zLgorIE5vdCByZWN1cnNpdmUuIFJldHJpZXZlcyBvbmx5IG9uZSBsZXZlbCBkZWVwLgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRPdXRwdXRQb3J0c0ZvckVsZW1lbnQob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldE91dHB1dFBvcnRzRm9yRWxlbWVudDwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLnV0aWwuTGlzdCZsdDtvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jmd0OyA8Qj5nZXRPdXRwdXRQb3J0c0ZvckVsZW1lbnQ8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQmbmJzcDtlbHQpPC9QUkU+Cis8REw+Cis8REQ+QXMgaXRzIG5hbWUgc2F5cywgcmV0cmlldmVzIHRoZSBvdXRwdXQgcG9ydHMgZm9yIGEgZ2l2ZW4gZWxlbWVudC4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0SW5wdXRQb3J0c0ZvckVsZW1lbnQob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldElucHV0UG9ydHNGb3JFbGVtZW50PC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQmZ3Q7IDxCPmdldElucHV0UG9ydHNGb3JFbGVtZW50PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50Jm5ic3A7ZWx0KTwvUFJFPgorPERMPgorPEREPkFzIGl0cyBuYW1lIHNheXMsIHJldHJpZXZlcyB0aGUgaW5wdXQgcG9ydHMgZm9yIGEgZ2l2ZW4gZWxlbWVudC4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Q29tcG9uZW50TW9kZWxzKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Q29tcG9uZW50TW9kZWxzPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLk5hbWVkRWxlbWVudCZndDsgPEI+Z2V0Q29tcG9uZW50TW9kZWxzPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCZuYnNwO21vZGVsKTwvUFJFPgorPERMPgorPEREPlJldHJpZXZlcyBhbGwgdGhlIGNvbXBvbmVudCBtb2RlbHMgYXZhaWxhYmxlIGluc2lkZSBhIFJvYm90TUwgbW9kZWwuCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImlzUm9vdE1vZGVsKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsKSI+PCEtLSAtLT48L0E+PEgzPgoraXNSb290TW9kZWw8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgamF2YS5sYW5nLkJvb2xlYW4gPEI+aXNSb290TW9kZWw8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsJm5ic3A7ZWx0KTwvUFJFPgorPERMPgorPEREPklzIHRoZSBlbHQgYXQgdGhlIHJvb3Qgb2YgdGhlIG1vZGVsIGhpZXJhcmNoeSA/Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVsdDwvQ09ERT4gLSAKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJpc01hY3JvQ29tcG9uZW50KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+PCEtLSAtLT48L0E+PEgzPgoraXNNYWNyb0NvbXBvbmVudDwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuQm9vbGVhbiA8Qj5pc01hY3JvQ29tcG9uZW50PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2MpPC9QUkU+Cis8REw+Cis8REQ+RG9lcyB0aGlzIGNsYXNzIGNvbnRhaW4gcHJvcGVydGllcyB0aGF0IGFyZSBjbGFzc2VzIHRoZW1zZWx2ZXMgPworIChpLmUuIGlzIHRoaXMgY2xhc3MgYSBjb250YWluZXIgb2Ygc3ViLWNsYXNzZXMpCis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmM8L0NPREU+IC0gCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Q29tcG9uZW50RmlsZU5hbWUob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitnZXRDb21wb25lbnRGaWxlTmFtZTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldENvbXBvbmVudEZpbGVOYW1lPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2VuZCk8L1BSRT4KKzxETD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImlzUG9ydENvbm5lY3RlZChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+PCEtLSAtLT48L0E+PEgzPgoraXNQb3J0Q29ubmVjdGVkPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5Cb29sZWFuIDxCPmlzUG9ydENvbm5lY3RlZDwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCZuYnNwO3AxKTwvUFJFPgorPERMPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Q29ubmVjdGlvbk90aGVyU2lkZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Q29ubmVjdGlvbk90aGVyU2lkZTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldENvbm5lY3Rpb25PdGhlclNpZGU8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQmbmJzcDtwMSk8L1BSRT4KKzxETD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImlzRGF0YUZsb3dQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj48IS0tIC0tPjwvQT48SDM+Citpc0RhdGFGbG93UG9ydDwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuQm9vbGVhbiA8Qj5pc0RhdGFGbG93UG9ydDwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCZuYnNwO3BvcnQpPC9QUkU+Cis8REw+Cis8REQ+SXMgdGhpcyBwcm9wZXJ0eSBhIERhdGFGbG93IFBvcnQKKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+cG9ydDwvQ09ERT4gLSAKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+aXMgdGhpcyBhIERhdGFGbG93IHBvcnQgPzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaXNBbklucHV0UG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+PCEtLSAtLT48L0E+PEgzPgoraXNBbklucHV0UG9ydDwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuQm9vbGVhbiA8Qj5pc0FuSW5wdXRQb3J0PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jm5ic3A7cG9ydCk8L1BSRT4KKzxETD4KKzxERD5Gb3IgRGF0YUZsb3cgcG9ydHM6IGlzIGl0IGFuIElucHV0IFBvcnQgPworPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5wb3J0PC9DT0RFPiAtIAorPERUPjxCPlJldHVybnM6PC9CPjxERD5mYWxzZSBpZiB0aGUgcG9ydCBpcyBub3QgYSBEYXRhRmxvd1BvcnQgb3Igbm90IGFuIGlucHV0IHBvcnQuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJpc0FuT3V0cHV0UG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+PCEtLSAtLT48L0E+PEgzPgoraXNBbk91dHB1dFBvcnQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgamF2YS5sYW5nLkJvb2xlYW4gPEI+aXNBbk91dHB1dFBvcnQ8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQmbmJzcDtwb3J0KTwvUFJFPgorPERMPgorPEREPkZvciBEYXRhRmxvdyBwb3J0czogaXMgaXQgYW4gT3V0cHV0IFBvcnQgPworPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5wb3J0PC9DT0RFPiAtIAorPERUPjxCPlJldHVybnM6PC9CPjxERD5mYWxzZSBpZiB0aGUgcG9ydCBpcyBub3QgYSBEYXRhRmxvd1BvcnQgb3Igbm90IGFuIG91dHB1dCBwb3J0LjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaXNBUHJvdmlkZWRQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj48IS0tIC0tPjwvQT48SDM+Citpc0FQcm92aWRlZFBvcnQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgamF2YS5sYW5nLkJvb2xlYW4gPEI+aXNBUHJvdmlkZWRQb3J0PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jm5ic3A7cG9ydCk8L1BSRT4KKzxETD4KKzxERD5Gb3IgUm9ib3RNTCBTZXJ2aWNlUG9ydHM6IGlzIHRoZSBwb3J0IGEgIlByb3ZpZGVkIiBwb3J0PworPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5wb3J0PC9DT0RFPiAtIAorPERUPjxCPlJldHVybnM6PC9CPjxERD5mYWxzZSBpZiB0aGUgcG9ydCBpcyBub3QgYSBTZXJ2aWNlUG9ydCBvciBub3QgYSAiUHJvdmlkZWQiIFNlcnZpY2VQb3J0LjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaXNBUmVxdWlyZWRQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj48IS0tIC0tPjwvQT48SDM+Citpc0FSZXF1aXJlZFBvcnQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgamF2YS5sYW5nLkJvb2xlYW4gPEI+aXNBUmVxdWlyZWRQb3J0PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jm5ic3A7cG9ydCk8L1BSRT4KKzxETD4KKzxERD5Gb3IgUm9ib3RNTCBTZXJ2aWNlUG9ydHM6IGlzIHRoZSBwb3J0IGEgIlJlcXVpcmVkIiBwb3J0PworPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5wb3J0PC9DT0RFPiAtIAorPERUPjxCPlJldHVybnM6PC9CPjxERD5mYWxzZSBpZiB0aGUgcG9ydCBpcyBub3QgYSBTZXJ2aWNlUG9ydCBvciBub3QgYSAiUmVxdWlyZWQiIFNlcnZpY2VQb3J0LjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaXNTZXJ2aWNlUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+PCEtLSAtLT48L0E+PEgzPgoraXNTZXJ2aWNlUG9ydDwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuQm9vbGVhbiA8Qj5pc1NlcnZpY2VQb3J0PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jm5ic3A7cG9ydCk8L1BSRT4KKzxETD4KKzxERD5JcyB0aGlzIHByb3BlcnR5IGEgU2VydmljZSBQb3J0Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnBvcnQ8L0NPREU+IC0gCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmlzIHRoaXMgYSBzZXJ2aWNlIHBvcnQgPzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZGVmaW5lc0Nvbm5lY3Rpb25zKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+PCEtLSAtLT48L0E+PEgzPgorZGVmaW5lc0Nvbm5lY3Rpb25zPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5Cb29sZWFuIDxCPmRlZmluZXNDb25uZWN0aW9uczwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MmbmJzcDtjbCk8L1BSRT4KKzxETD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImlzQ29ubmVjdGlvblZhbGlkKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcikiPjwhLS0gLS0+PC9BPjxIMz4KK2lzQ29ubmVjdGlvblZhbGlkPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5Cb29sZWFuIDxCPmlzQ29ubmVjdGlvblZhbGlkPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3ImbmJzcDtjb25uZWN0b3IpPC9QUkU+Cis8REw+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRDb25uZWN0aW9uRGVmaW5pdGlvbihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IpIj48IS0tIC0tPjwvQT48SDM+CitnZXRDb25uZWN0aW9uRGVmaW5pdGlvbjwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldENvbm5lY3Rpb25EZWZpbml0aW9uPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3ImbmJzcDtjb25uZWN0b3IpPC9QUkU+Cis8REw+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRDb25uZWN0ZWRQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj48IS0tIC0tPjwvQT48SDM+CitnZXRDb25uZWN0ZWRQb3J0PC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQgPEI+Z2V0Q29ubmVjdGVkUG9ydDwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCZuYnNwO3BvcnQpPC9QUkU+Cis8REw+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJpbnNwZWN0RGF0YUZsb3dQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj48IS0tIC0tPjwvQT48SDM+CitpbnNwZWN0RGF0YUZsb3dQb3J0PC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIHZvaWQgPEI+aW5zcGVjdERhdGFGbG93UG9ydDwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCZuYnNwO3BvcnQpPC9QUkU+Cis8REw+Cis8REQ+RGVidWcgZnVuY3Rpb246IHByaW50cyBpbmZvIGFib3V0IGEgZ2l2ZW4gZGF0YWZsb3cgcG9ydC4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaW5zcGVjdFNlcnZpY2VQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj48IS0tIC0tPjwvQT48SDM+CitpbnNwZWN0U2VydmljZVBvcnQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgdm9pZCA8Qj5pbnNwZWN0U2VydmljZVBvcnQ8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQmbmJzcDtwb3J0KTwvUFJFPgorPERMPgorPEREPkRlYnVnIGZ1bmN0aW9uLiBQcmludHMgaW5mbyBhYm91dCBhIGdpdmVuIHNlcnZpY2UgcG9ydC4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViBDTEFTUyZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3Jfc3VtbWFyeSI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX2RldGFpbCI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZThhZWMxCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuaHRtbApAQCAtMCwwICsxLDM1NSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNi4wXzI0KSBvbiBXZWQgT2N0IDE3IDE5OjMzOjA1IENFU1QgMjAxMiAtLT4KKzxUSVRMRT4KK0RhdGFUeXBlUXVlcmllcworPC9USVRMRT4KKworPE1FVEEgTkFNRT0iZGF0ZSIgQ09OVEVOVD0iMjAxMi0xMC0xNyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIGlmIChsb2NhdGlvbi5ocmVmLmluZGV4T2YoJ2lzLWV4dGVybmFsPXRydWUnKSA9PSAtMSkgeworICAgICAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkRhdGFUeXBlUXVlcmllcyI7CisgICAgfQorfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKzxIUj4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvRGF0YVR5cGVRdWVyaWVzLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRGVwbG95bWVudFF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRGF0YVR5cGVRdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3JfZGV0YWlsIj5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzPC9GT05UPgorPEJSPgorQ2xhc3MgRGF0YVR5cGVRdWVyaWVzPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkRhdGFUeXBlUXVlcmllczwvQj4KKzwvUFJFPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGNsYXNzIDxCPkRhdGFUeXBlUXVlcmllczwvQj48RFQ+ZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0PC9ETD4KKzwvUFJFPgorCis8UD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT0gQ09OU1RSVUNUT1IgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0iY29uc3RydWN0b3Jfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sI0RhdGFUeXBlUXVlcmllcygpIj5EYXRhVHlwZVF1ZXJpZXM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sI2dldENwcENsYXNzRm9yRGF0YXRUeXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlKSI+Z2V0Q3BwQ2xhc3NGb3JEYXRhdFR5cGU8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5EYXRhVHlwZSZuYnNwO2R0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLk5hbWVkRWxlbWVudCZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sI2dldEVsZW1lbnRzRGF0YVR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwpIj5nZXRFbGVtZW50c0RhdGFUeXBlPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwmbmJzcDttb2RlbCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0dldCBhbGwgdXNlci1kZWZpbmVkIGRhdGF0eXBlcy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS51dGlsLkxpc3QmbHQ7b3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUmZ3Q7PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuaHRtbCNnZXRNZXRhbW9kZWxDb21wb3NlZERhdGFUeXBlcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+Z2V0TWV0YW1vZGVsQ29tcG9zZWREYXRhVHlwZXM8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50Jm5ic3A7cm9vdGVsdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS51bWwyLnVtbC5EYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmh0bWwjZ2V0UG9ydERhdGFUeXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj5nZXRQb3J0RGF0YVR5cGU8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jm5ic3A7cG9ydCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtib29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuaHRtbCNpc1ByaW1pdGl2ZVR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCkiPmlzUHJpbWl0aXZlVHlwZTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQmbmJzcDtlbHQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Ym9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmh0bWwjaXNSb2JvdE1MRGF0YVR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCwgamF2YS5sYW5nLlN0cmluZykiPmlzUm9ib3RNTERhdGFUeXBlPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCZuYnNwO3Jvb3RfbW9kZWwsCisgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7ZGF0YXR5cGVfbmFtZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0lzIHRoZSBwcm92aWRlZCBEYXRhVHlwZSBvbmUgb2YgdGhlIFJvYm90TUwgbWV0YW1vZGVsIGRhdGF0eXBlcyA/PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB0b1N0cmluZywgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PSBDT05TVFJVQ1RPUiBERVRBSUwgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImNvbnN0cnVjdG9yX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJEYXRhVHlwZVF1ZXJpZXMoKSI+PCEtLSAtLT48L0E+PEgzPgorRGF0YVR5cGVRdWVyaWVzPC9IMz4KKzxQUkU+CitwdWJsaWMgPEI+RGF0YVR5cGVRdWVyaWVzPC9CPigpPC9QUkU+Cis8REw+Cis8L0RMPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImdldE1ldGFtb2RlbENvbXBvc2VkRGF0YVR5cGVzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpIj48IS0tIC0tPjwvQT48SDM+CitnZXRNZXRhbW9kZWxDb21wb3NlZERhdGFUeXBlczwvSDM+Cis8UFJFPgorcHVibGljIGphdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlJmd0OyA8Qj5nZXRNZXRhbW9kZWxDb21wb3NlZERhdGFUeXBlczwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCZuYnNwO3Jvb3RlbHQpPC9QUkU+Cis8REw+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJpc1JvYm90TUxEYXRhVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50LCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgoraXNSb2JvdE1MRGF0YVR5cGU8L0gzPgorPFBSRT4KK3B1YmxpYyBib29sZWFuIDxCPmlzUm9ib3RNTERhdGFUeXBlPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50Jm5ic3A7cm9vdF9tb2RlbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtkYXRhdHlwZV9uYW1lKTwvUFJFPgorPERMPgorPEREPklzIHRoZSBwcm92aWRlZCBEYXRhVHlwZSBvbmUgb2YgdGhlIFJvYm90TUwgbWV0YW1vZGVsIGRhdGF0eXBlcyA/Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmR0PC9DT0RFPiAtIAorPERUPjxCPlJldHVybnM6PC9CPjxERD48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldENwcENsYXNzRm9yRGF0YXRUeXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Q3BwQ2xhc3NGb3JEYXRhdFR5cGU8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldENwcENsYXNzRm9yRGF0YXRUeXBlPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5EYXRhVHlwZSZuYnNwO2R0KTwvUFJFPgorPERMPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RWxlbWVudHNEYXRhVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEVsZW1lbnRzRGF0YVR5cGU8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLnV0aWwuTGlzdCZsdDtvcmcuZWNsaXBzZS51bWwyLnVtbC5OYW1lZEVsZW1lbnQmZ3Q7IDxCPmdldEVsZW1lbnRzRGF0YVR5cGU8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsJm5ic3A7bW9kZWwpPC9QUkU+Cis8REw+Cis8REQ+R2V0IGFsbCB1c2VyLWRlZmluZWQgZGF0YXR5cGVzLgorPFA+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPkEgbGlzdCBvZiBkYXRhdHlwZXM8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBvcnREYXRhVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UG9ydERhdGFUeXBlPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUgPEI+Z2V0UG9ydERhdGFUeXBlPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jm5ic3A7cG9ydCk8L1BSRT4KKzxETD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImlzUHJpbWl0aXZlVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+PCEtLSAtLT48L0E+PEgzPgoraXNQcmltaXRpdmVUeXBlPC9IMz4KKzxQUkU+CitwdWJsaWMgYm9vbGVhbiA8Qj5pc1ByaW1pdGl2ZVR5cGU8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQmbmJzcDtlbHQpPC9QUkU+Cis8REw+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9EYXRhVHlwZVF1ZXJpZXMuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EZXBsb3ltZW50UXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJEYXRhVHlwZVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX3N1bW1hcnkiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9kZXRhaWwiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EZXBsb3ltZW50UXVlcmllcy5odG1sIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EZXBsb3ltZW50UXVlcmllcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY3NWI1ZWQKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RlcGxveW1lbnRRdWVyaWVzLmh0bWwKQEAgLTAsMCArMSwyOTkgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjYuMF8yNCkgb24gV2VkIE9jdCAxNyAxOTozMzowNSBDRVNUIDIwMTIgLS0+Cis8VElUTEU+CitEZXBsb3ltZW50UXVlcmllcworPC9USVRMRT4KKworPE1FVEEgTkFNRT0iZGF0ZSIgQ09OVEVOVD0iMjAxMi0xMC0xNyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIGlmIChsb2NhdGlvbi5ocmVmLmluZGV4T2YoJ2lzLWV4dGVybmFsPXRydWUnKSA9PSAtMSkgeworICAgICAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkRlcGxveW1lbnRRdWVyaWVzIjsKKyAgICB9Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorPEhSPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9EZXBsb3ltZW50UXVlcmllcy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRlNNUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EZXBsb3ltZW50UXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkRlcGxveW1lbnRRdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3JfZGV0YWlsIj5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzPC9GT05UPgorPEJSPgorQ2xhc3MgRGVwbG95bWVudFF1ZXJpZXM8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuRGVwbG95bWVudFF1ZXJpZXM8L0I+Cis8L1BSRT4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5EZXBsb3ltZW50UXVlcmllczwvQj48RFQ+ZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0PC9ETD4KKzwvUFJFPgorCis8UD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT0gQ09OU1RSVUNUT1IgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0iY29uc3RydWN0b3Jfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RlcGxveW1lbnRRdWVyaWVzLmh0bWwjRGVwbG95bWVudFF1ZXJpZXMoKSI+RGVwbG95bWVudFF1ZXJpZXM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLkluc3RhbmNlU3BlY2lmaWNhdGlvbiZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RlcGxveW1lbnRRdWVyaWVzLmh0bWwjZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9uc0luTW9kZWwob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwpIj5nZXRJbnN0YW5jZVNwZWNpZmljYXRpb25zSW5Nb2RlbDwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsJm5ic3A7bW9kZWwpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm4gdGhlIGxpc3Qgb2YgaW5zdGFuY2Ugc3BlY2lmaWNhdGlvbnMgaW4gYSBtb2RlbDwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLnV0aWwuTGlzdCZsdDtvcmcuZWNsaXBzZS51bWwyLnVtbC5JbnN0YW5jZVNwZWNpZmljYXRpb24mZ3Q7PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EZXBsb3ltZW50UXVlcmllcy5odG1sI2dldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNJblBhY2thZ2Uob3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZSkiPmdldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNJblBhY2thZ2U8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlJm5ic3A7cGFjayk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybiB0aGUgbGlzdCBvZiBpbnN0YW5jZSBzcGVjaWZpY2F0aW9ucyBpbiBhIHBhY2thZ2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRGVwbG95bWVudFF1ZXJpZXMuaHRtbCNnZXRQYXJlbnROYW1lKG9yZy5lY2xpcHNlLnVtbDIudW1sLkluc3RhbmNlU3BlY2lmaWNhdGlvbikiPmdldFBhcmVudE5hbWU8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5JbnN0YW5jZVNwZWNpZmljYXRpb24mbmJzcDtpbnN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJuIHRoZSBwYXJlbnQgbmFtZSBvZiBhbiBpbnN0YW5jZTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVxdWFscywgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgdG9TdHJpbmcsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT0gQ09OU1RSVUNUT1IgREVUQUlMID09PT09PT09IC0tPgorCis8QSBOQU1FPSJjb25zdHJ1Y3Rvcl9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5Db25zdHJ1Y3RvciBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iRGVwbG95bWVudFF1ZXJpZXMoKSI+PCEtLSAtLT48L0E+PEgzPgorRGVwbG95bWVudFF1ZXJpZXM8L0gzPgorPFBSRT4KK3B1YmxpYyA8Qj5EZXBsb3ltZW50UXVlcmllczwvQj4oKTwvUFJFPgorPERMPgorPC9ETD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJnZXRJbnN0YW5jZVNwZWNpZmljYXRpb25zSW5Nb2RlbChvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNJbk1vZGVsPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLkluc3RhbmNlU3BlY2lmaWNhdGlvbiZndDsgPEI+Z2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9uc0luTW9kZWw8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsJm5ic3A7bW9kZWwpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJuIHRoZSBsaXN0IG9mIGluc3RhbmNlIHNwZWNpZmljYXRpb25zIGluIGEgbW9kZWwKKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bW9kZWw8L0NPREU+IC0gCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPkEgbGlzdCBvZiBJbnN0YW5jZVNwZWNpZmljYXRpb24gb2YgYWxsIGluc3RhbmNlIHNwZWNpZmljYXRpb25zPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRJbnN0YW5jZVNwZWNpZmljYXRpb25zSW5QYWNrYWdlKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhY2thZ2UpIj48IS0tIC0tPjwvQT48SDM+CitnZXRJbnN0YW5jZVNwZWNpZmljYXRpb25zSW5QYWNrYWdlPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLkluc3RhbmNlU3BlY2lmaWNhdGlvbiZndDsgPEI+Z2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9uc0luUGFja2FnZTwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZSZuYnNwO3BhY2spPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJuIHRoZSBsaXN0IG9mIGluc3RhbmNlIHNwZWNpZmljYXRpb25zIGluIGEgcGFja2FnZQorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5wYWNrPC9DT0RFPiAtIAorPERUPjxCPlJldHVybnM6PC9CPjxERD5BIGxpc3Qgb2YgSW5zdGFuY2VTcGVjaWZpY2F0aW9uIG9mIGFsbCBpbnN0YW5jZSBzcGVjaWZpY2F0aW9uczwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UGFyZW50TmFtZShvcmcuZWNsaXBzZS51bWwyLnVtbC5JbnN0YW5jZVNwZWNpZmljYXRpb24pIj48IS0tIC0tPjwvQT48SDM+CitnZXRQYXJlbnROYW1lPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0UGFyZW50TmFtZTwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuSW5zdGFuY2VTcGVjaWZpY2F0aW9uJm5ic3A7aW5zdCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm4gdGhlIHBhcmVudCBuYW1lIG9mIGFuIGluc3RhbmNlCis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmluc3Q8L0NPREU+IC0gCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPlBhcmVudCBuYW1lIG9mIGFuIGluc3RhbmNlPC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9EZXBsb3ltZW50UXVlcmllcy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRlNNUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EZXBsb3ltZW50UXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkRlcGxveW1lbnRRdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3JfZGV0YWlsIj5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRlNNUXVlcmllcy5odG1sIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9GU01RdWVyaWVzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTM4NWJmMQotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRlNNUXVlcmllcy5odG1sCkBAIC0wLDAgKzEsMjk5IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS42LjBfMjQpIG9uIFdlZCBPY3QgMTcgMTk6MzM6MDUgQ0VTVCAyMDEyIC0tPgorPFRJVExFPgorRlNNUXVlcmllcworPC9USVRMRT4KKworPE1FVEEgTkFNRT0iZGF0ZSIgQ09OVEVOVD0iMjAxMi0xMC0xNyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIGlmIChsb2NhdGlvbi5ocmVmLmluZGV4T2YoJ2lzLWV4dGVybmFsPXRydWUnKSA9PSAtMSkgeworICAgICAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkZTTVF1ZXJpZXMiOworICAgIH0KK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+Cis8SFI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0ZTTVF1ZXJpZXMuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EZXBsb3ltZW50UXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRlNNUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkZTTVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX3N1bW1hcnkiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9kZXRhaWwiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXM8L0ZPTlQ+Cis8QlI+CitDbGFzcyBGU01RdWVyaWVzPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkZTTVF1ZXJpZXM8L0I+Cis8L1BSRT4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5GU01RdWVyaWVzPC9CPjxEVD5leHRlbmRzIGphdmEubGFuZy5PYmplY3Q8L0RMPgorPC9QUkU+CisKKzxQPgorPEhSPgorCis8UD4KKworPCEtLSA9PT09PT09PSBDT05TVFJVQ1RPUiBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+Q29uc3RydWN0b3IgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRlNNUXVlcmllcy5odG1sI0ZTTVF1ZXJpZXMoKSI+RlNNUXVlcmllczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS51dGlsLkxpc3QmbHQ7b3JnLmVjbGlwc2UudW1sMi51bWwuU3RhdGVNYWNoaW5lJmd0OzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRlNNUXVlcmllcy5odG1sI2dldFN0YXRlTWFjaGluZXMob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCkiPmdldFN0YXRlTWFjaGluZXM8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50Jm5ic3A7ZWx0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7RmluZCBhbGwgc3RhdGUgbWFjaGluZXMgaW4gYSBjb21wb25lbnQuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLlZlcnRleCZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0ZTTVF1ZXJpZXMuaHRtbCNnZXRTdGF0ZXMob3JnLmVjbGlwc2UudW1sMi51bWwuU3RhdGVNYWNoaW5lKSI+Z2V0U3RhdGVzPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuU3RhdGVNYWNoaW5lJm5ic3A7c20pPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtGaW5kIGFsbCBzdGF0ZXMgaW4gYSBzdGF0ZSBtYWNoaW5lLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLnV0aWwuTGlzdCZsdDtvcmcuZWNsaXBzZS51bWwyLnVtbC5UcmFuc2l0aW9uJmd0OzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRlNNUXVlcmllcy5odG1sI2dldFRyYW5zaXRpb25zKG9yZy5lY2xpcHNlLnVtbDIudW1sLlN0YXRlTWFjaGluZSkiPmdldFRyYW5zaXRpb25zPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuU3RhdGVNYWNoaW5lJm5ic3A7c20pPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtGaW5kIGFsbCB0cmFuc2l0aW9ucyBpbiBhIHN0YXRlIG1hY2hpbmUuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB0b1N0cmluZywgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PSBDT05TVFJVQ1RPUiBERVRBSUwgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImNvbnN0cnVjdG9yX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJGU01RdWVyaWVzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK0ZTTVF1ZXJpZXM8L0gzPgorPFBSRT4KK3B1YmxpYyA8Qj5GU01RdWVyaWVzPC9CPigpPC9QUkU+Cis8REw+Cis8L0RMPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImdldFN0YXRlcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5TdGF0ZU1hY2hpbmUpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTdGF0ZXM8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLnV0aWwuTGlzdCZsdDtvcmcuZWNsaXBzZS51bWwyLnVtbC5WZXJ0ZXgmZ3Q7IDxCPmdldFN0YXRlczwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuU3RhdGVNYWNoaW5lJm5ic3A7c20pPC9QUkU+Cis8REw+Cis8REQ+RmluZCBhbGwgc3RhdGVzIGluIGEgc3RhdGUgbWFjaGluZS4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+c208L0NPREU+IC0gYSBzdGF0ZSBtYWNoaW5lCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbGlzdCBvZiBzdGF0ZXM8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFRyYW5zaXRpb25zKG9yZy5lY2xpcHNlLnVtbDIudW1sLlN0YXRlTWFjaGluZSkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFRyYW5zaXRpb25zPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS51dGlsLkxpc3QmbHQ7b3JnLmVjbGlwc2UudW1sMi51bWwuVHJhbnNpdGlvbiZndDsgPEI+Z2V0VHJhbnNpdGlvbnM8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlN0YXRlTWFjaGluZSZuYnNwO3NtKTwvUFJFPgorPERMPgorPEREPkZpbmQgYWxsIHRyYW5zaXRpb25zIGluIGEgc3RhdGUgbWFjaGluZS4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+c208L0NPREU+IC0gYSBzdGF0ZSBtYWNoaW5lCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbGlzdCBvZiB0cmFuc2l0aW9uczwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U3RhdGVNYWNoaW5lcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U3RhdGVNYWNoaW5lczwvSDM+Cis8UFJFPgorcHVibGljIGphdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLlN0YXRlTWFjaGluZSZndDsgPEI+Z2V0U3RhdGVNYWNoaW5lczwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCZuYnNwO2VsdCk8L1BSRT4KKzxETD4KKzxERD5GaW5kIGFsbCBzdGF0ZSBtYWNoaW5lcyBpbiBhIGNvbXBvbmVudC4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZWx0PC9DT0RFPiAtIAorPERUPjxCPlJldHVybnM6PC9CPjxERD5hIGxpc3Qgb2Ygc3RhdGUgbWFjaGluZXM8L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0ZTTVF1ZXJpZXMuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EZXBsb3ltZW50UXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRlNNUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkZTTVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX3N1bW1hcnkiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9kZXRhaWwiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjlhNWE1OTcKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwKQEAgLTAsMCArMSw4MDEgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjYuMF8yNCkgb24gV2VkIE9jdCAxNyAxOTozMzowNSBDRVNUIDIwMTIgLS0+Cis8VElUTEU+CitHZW5lcmFsUXVlcmllcworPC9USVRMRT4KKworPE1FVEEgTkFNRT0iZGF0ZSIgQ09OVEVOVD0iMjAxMi0xMC0xNyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIGlmIChsb2NhdGlvbi5ocmVmLmluZGV4T2YoJ2lzLWV4dGVybmFsPXRydWUnKSA9PSAtMSkgeworICAgICAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkdlbmVyYWxRdWVyaWVzIjsKKyAgICB9Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorPEhSPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9HZW5lcmFsUXVlcmllcy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0ZTTVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkdlbmVyYWxRdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3JfZGV0YWlsIj5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzPC9GT05UPgorPEJSPgorQ2xhc3MgR2VuZXJhbFF1ZXJpZXM8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuR2VuZXJhbFF1ZXJpZXM8L0I+Cis8L1BSRT4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5HZW5lcmFsUXVlcmllczwvQj48RFQ+ZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0PC9ETD4KKzwvUFJFPgorCis8UD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT0gQ09OU1RSVUNUT1IgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0iY29uc3RydWN0b3Jfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjR2VuZXJhbFF1ZXJpZXMoKSI+R2VuZXJhbFF1ZXJpZXM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI2ZpbmRDbGFzc0luTW9kZWwob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwsIGphdmEubGFuZy5TdHJpbmcpIj5maW5kQ2xhc3NJbk1vZGVsPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwmbmJzcDttb2RlbCwKKyAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO25hbWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtGaW5kIGEgY2xhc3Mgd2l0aCBhIGdpdmVuIG5hbWUgaW4gdGhlIG1vZGVsLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNmaW5kQ2xhc3NJblBhY2thZ2Uob3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZSwgamF2YS5sYW5nLlN0cmluZykiPmZpbmRDbGFzc0luUGFja2FnZTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhY2thZ2UmbmJzcDtwYWNrLAorICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtuYW1lKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7RmluZCBhIGNsYXNzIHdpdGggYSBnaXZlbiBuYW1lIGluIGEgcGFja2FnZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNnZXRBdHRyaWJ1dGVWYWx1ZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcywgamF2YS5sYW5nLlN0cmluZywgamF2YS5sYW5nLlN0cmluZykiPmdldEF0dHJpYnV0ZVZhbHVlPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MmbmJzcDtjbCwKKyAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDthdHRyLAorICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO3N0bmFtZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybiB0aGUgdmFsdWUgb2YgYSBnaXZlbiBhdHRyaWJ1dGUgdXNpbmcgdGhlIGdpdmVuIHN0ZXJlb3R5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNnZXRBdHRyaWJ1dGVWYWx1ZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcywgamF2YS5sYW5nLlN0cmluZywgamF2YS5sYW5nLlN0cmluZywgamF2YS5sYW5nLlN0cmluZykiPmdldEF0dHJpYnV0ZVZhbHVlPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MmbmJzcDtjbCwKKyAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDthdHRyLAorICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO3N0bmFtZSwKKyAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtkZWZhdWx0VmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm4gdGhlIHZhbHVlIG9mIGEgZ2l2ZW4gYXR0cmlidXRlIHVzaW5nIHRoZSBnaXZlbiBzdGVyZW90eXBlIAorIElmIGF0dHJpYnV0ZSBpcyBub3QgZGVmaW5lZCwgdGhlbiByZXR1cm4gYSBkZWZhdWx0IHZhbHVlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEudXRpbC5MaXN0Jmx0O2phdmEubGFuZy5TdHJpbmcmZ3Q7PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI2dldEF0dHJpYnV0ZVZhbHVlcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcywgamF2YS5sYW5nLlN0cmluZywgamF2YS5sYW5nLlN0cmluZykiPmdldEF0dHJpYnV0ZVZhbHVlczwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7Y2wsCisgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2F0dHIsCisgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO3N0bmFtZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybiB0aGUgdmFsdWVzIG9mIGEgZ2l2ZW4gYXR0cmlidXRlIHVzaW5nIHRoZSBnaXZlbiBzdGVyZW90eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLk5hbWVkRWxlbWVudCZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjZ2V0RWxlbWVudHNXaXRoSW5oZXJpdGVkU3RlcmVvdHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCwgamF2YS5sYW5nLlN0cmluZykiPmdldEVsZW1lbnRzV2l0aEluaGVyaXRlZFN0ZXJlb3R5cGU8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCZuYnNwO21vZGVsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7c3RlcmVvdHlwZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwOzxJPnRvIGJlIHJlcGxhY2VkIHdpdGggY2FsbHMgdG8gdGhlIFJvYm90TUwgQVBJLiBSZXBsYWNlZCBieSBnZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlIChNb2RlbCBtb2RlbCwgU3RlcmVvdHlwZUNsYXNzIHNjKTwvST48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS51dGlsLkxpc3QmbHQ7b3JnLmVjbGlwc2UudW1sMi51bWwuTmFtZWRFbGVtZW50Jmd0OzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNnZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsLCBqYXZhLmxhbmcuU3RyaW5nKSI+Z2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsJm5ic3A7bW9kZWwsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtzdGVyZW90eXBlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEk+dG8gYmUgcmVwbGFjZWQgd2l0aCBjYWxscyB0byB0aGUgUm9ib3RNTCBBUEkuIFJlcGxhY2VkIGJ5IGdldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUgKE1vZGVsIG1vZGVsLCBTdGVyZW90eXBlQ2xhc3Mgc2MpPC9JPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI2dldEluc3RhbmNlTXVsdGlwbGljaXR5KG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5KSI+Z2V0SW5zdGFuY2VNdWx0aXBsaWNpdHk8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Qcm9wZXJ0eSZuYnNwO3ApPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNnZXRTdGVyZW90eXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+Z2V0U3RlcmVvdHlwZTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7Y2wpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST5zdXBlcnNlZGVkIGJ5IHRoZSBSb2JvdE1MIEFQSS48L0k+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjZ2V0U3RlcmVvdHlwZUluaGVyaXRlZEZyb20ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MsIGphdmEubGFuZy5TdHJpbmcpIj5nZXRTdGVyZW90eXBlSW5oZXJpdGVkRnJvbTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7Y2wsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7c3RuYW1lKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5Cb29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI2hhc1N0ZXJlb3R5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MsIGphdmEubGFuZy5DbGFzcykiPmhhc1N0ZXJlb3R5cGU8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2NsLAorICAgICAgICAgICAgICBqYXZhLmxhbmcuQ2xhc3MmbmJzcDtzdGVyZW90eXBlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5Cb29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI2hhc1N0ZXJlb3R5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MsIGphdmEubGFuZy5TdHJpbmcpIj5oYXNTdGVyZW90eXBlPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MmbmJzcDtjbCwKKyAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO3MpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm4gdHJ1ZSBpZiBhIGdpdmVuIGNsYXNzIGhhcyBzcGVjaWZpZWQgc3RlcmVvdHlwZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLkJvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjaW5oZXJpdHNGcm9tKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzLCBqYXZhLmxhbmcuU3RyaW5nKSI+aW5oZXJpdHNGcm9tPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MmbmJzcDtjbCwKKyAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7c3RuYW1lKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5Cb29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI2luaGVyaXRzRnJvbShvcmcuZWNsaXBzZS51bWwyLnVtbC5TdGVyZW90eXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+aW5oZXJpdHNGcm9tPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuU3RlcmVvdHlwZSZuYnNwO3N0LAorICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtzdG5hbWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNpbnNwZWN0Q2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5pbnNwZWN0Q2xhc3M8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2NsKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7RGVidWcgZnVuY3Rpb24uPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjaW5zcGVjdERhdGFUeXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlKSI+aW5zcGVjdERhdGFUeXBlPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUmbmJzcDtkYXRhdHlwZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0RlYnVnIGZ1bmN0aW9uLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuQm9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNpbnNwZWN0TW9kZWwob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwpIj5pbnNwZWN0TW9kZWw8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCZuYnNwO21vZGVsKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Rm9uY3Rpb24gZGUgdGVzdCBwb3VyIGluc3BlY3RlciB1biBtb2Tvv71sZSBVTUwyPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjaW5zcGVjdFBvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPmluc3BlY3RQb3J0PC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCZuYnNwO3BvcnQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtEZWJ1ZyBmdW5jdGlvbi48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLkJvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjaXNDbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+aXNDbGFzczwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQmbmJzcDtlbHQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtJcyB0aGlzIGVsZW1lbnQgYSBVTUwgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLkJvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjaXNEYXRhVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+aXNEYXRhVHlwZTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQmbmJzcDtlbHQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtJcyB0aGlzIGVsZW1lbnQgYSBVTUwgRGF0YVR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLkJvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwjaXNJbnN0YW5jZVNwZWNpZmljYXRpb24ob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCkiPmlzSW5zdGFuY2VTcGVjaWZpY2F0aW9uPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCZuYnNwO2VsdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0lzIHRoaXMgZWxlbWVudCBhbiBpbnN0YW5jZSBzcGVjaWZpY2F0aW9uPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5Cb29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI2lzSW50ZXJmYWNlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpIj5pc0ludGVyZmFjZTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQmbmJzcDtlbHQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtJcyB0aGlzIGVsZW1lbnQgYSBVTUwgaW50ZXJmYWNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5Cb29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI2lzUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+aXNQb3J0PC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCZuYnNwO3Byb3ApPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtJcyB0aGlzIHByb3BlcnR5IGEgUG9ydDwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuQm9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCNpc1Byb3BlcnR5KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpIj5pc1Byb3BlcnR5PC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCZuYnNwO2VsdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0lzIHRoaXMgZWxlbWVudCBhIFVNTCBQcm9wZXJ0eTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5odG1sI3JlbW92ZUJyYWNrZXRzKGphdmEubGFuZy5TdHJpbmcpIj5yZW1vdmVCcmFja2V0czwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtzdHIpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTdHJpbmcgbWFuaXB1bGF0aW9uIGZ1bmN0aW9uIDoKKyByZW1vdmUgYnJhY2tldHMgZnJvbSBhIHN0cmluZzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVxdWFscywgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgdG9TdHJpbmcsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT0gQ09OU1RSVUNUT1IgREVUQUlMID09PT09PT09IC0tPgorCis8QSBOQU1FPSJjb25zdHJ1Y3Rvcl9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5Db25zdHJ1Y3RvciBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iR2VuZXJhbFF1ZXJpZXMoKSI+PCEtLSAtLT48L0E+PEgzPgorR2VuZXJhbFF1ZXJpZXM8L0gzPgorPFBSRT4KK3B1YmxpYyA8Qj5HZW5lcmFsUXVlcmllczwvQj4oKTwvUFJFPgorPERMPgorPC9ETD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJnZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLnV0aWwuTGlzdCZsdDtvcmcuZWNsaXBzZS51bWwyLnVtbC5OYW1lZEVsZW1lbnQmZ3Q7IDxCPmdldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGU8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsJm5ic3A7bW9kZWwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7c3RlcmVvdHlwZSk8L1BSRT4KKzxETD4KKzxERD48Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST50byBiZSByZXBsYWNlZCB3aXRoIGNhbGxzIHRvIHRoZSBSb2JvdE1MIEFQSS4gUmVwbGFjZWQgYnkgZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZSAoTW9kZWwgbW9kZWwsIFN0ZXJlb3R5cGVDbGFzcyBzYyk8L0k+Cis8UD4KKzxERD5SZWN1cnNpdmUgcmV0cmlldmUgb2YgYWxsIGVsZW1lbnRzIHdpdGggYSBnaXZlbiBzdGVyZW90eXBlIGluIHRoZSBtb2RlbC4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bW9kZWw8L0NPREU+IC0gTW9kZWwgdG8gc2VhcmNoIGluLjxERD48Q09ERT5zdGVyZW90eXBlPC9DT0RFPiAtIFRoZSBzdGVyZW90eXBlIG5hbWUgKGUuZy4gIlNlbnNvciIsICJBY3R1YXRvciIsICJTdWJTeXN0ZW0iLi4uKQorPERUPjxCPlJldHVybnM6PC9CPjxERD5BIGxpc3Qgb2YgTmFtZWRFbGVtZW50cyBoYXZpbmcgdGhlIHNwZWNpZmllZCBzdGVyZW90eXBlLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RWxlbWVudHNXaXRoSW5oZXJpdGVkU3RlcmVvdHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEVsZW1lbnRzV2l0aEluaGVyaXRlZFN0ZXJlb3R5cGU8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgamF2YS51dGlsLkxpc3QmbHQ7b3JnLmVjbGlwc2UudW1sMi51bWwuTmFtZWRFbGVtZW50Jmd0OyA8Qj5nZXRFbGVtZW50c1dpdGhJbmhlcml0ZWRTdGVyZW90eXBlPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCZuYnNwO21vZGVsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO3N0ZXJlb3R5cGUpPC9QUkU+Cis8REw+Cis8REQ+PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEk+dG8gYmUgcmVwbGFjZWQgd2l0aCBjYWxscyB0byB0aGUgUm9ib3RNTCBBUEkuIFJlcGxhY2VkIGJ5IGdldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUgKE1vZGVsIG1vZGVsLCBTdGVyZW90eXBlQ2xhc3Mgc2MpPC9JPgorPFA+Cis8REQ+UmVjdXJzaXZlIHJldHJpZXZlIG9mIGFsbCBlbGVtZW50IHdpdGggYSBnaXZlbiBpbmhlcml0ZWQgc3RlcmVvdHlwZSBpbiB0aGUgbW9kZWwuCis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm1vZGVsPC9DT0RFPiAtIE1vZGVsIHRvIHNlYXJjaCBpbi48REQ+PENPREU+c3RlcmVvdHlwZTwvQ09ERT4gLSBUaGUgc3RlcmVvdHlwZSBuYW1lIChlLmcuICJTZW5zb3IiLCAiQWN0dWF0b3IiLCAiU3ViU3lzdGVtIi4uLikKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+QSBsaXN0IG9mIE5hbWVkRWxlbWVudHMgaGF2aW5nIHRoZSBzcGVjaWZpZWQgc3RlcmVvdHlwZS48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFN0ZXJlb3R5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTdGVyZW90eXBlPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0U3RlcmVvdHlwZTwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MmbmJzcDtjbCk8L1BSRT4KKzxETD4KKzxERD48Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST5zdXBlcnNlZGVkIGJ5IHRoZSBSb2JvdE1MIEFQSS48L0k+Cis8UD4KKzxERD5HZXQgdGhlIGZpcnN0IHN0ZXJlb3R5cGUgYXBwbGllZCB0byBhIGdpdmVuIGNsYXNzLgorIFdhcm5pbmc6IG90aGVyIHN0ZXJlb3R5cGVzIGFyZSBpZ25vcmVkLiBUbyB1c2Ugd2l0aCBjYXJlLgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJpbmhlcml0c0Zyb20ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+Citpbmhlcml0c0Zyb208L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgamF2YS5sYW5nLkJvb2xlYW4gPEI+aW5oZXJpdHNGcm9tPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2NsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO3N0bmFtZSk8L1BSRT4KKzxETD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImluaGVyaXRzRnJvbShvcmcuZWNsaXBzZS51bWwyLnVtbC5TdGVyZW90eXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgoraW5oZXJpdHNGcm9tPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5Cb29sZWFuIDxCPmluaGVyaXRzRnJvbTwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuU3RlcmVvdHlwZSZuYnNwO3N0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO3N0bmFtZSk8L1BSRT4KKzxETD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFN0ZXJlb3R5cGVJbmhlcml0ZWRGcm9tKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U3RlcmVvdHlwZUluaGVyaXRlZEZyb208L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRTdGVyZW90eXBlSW5oZXJpdGVkRnJvbTwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MmbmJzcDtjbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7c3RuYW1lKTwvUFJFPgorPERMPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaGFzU3RlcmVvdHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcywgamF2YS5sYW5nLkNsYXNzKSI+PCEtLSAtLT48L0E+PEgzPgoraGFzU3RlcmVvdHlwZTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuQm9vbGVhbiA8Qj5oYXNTdGVyZW90eXBlPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2NsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5DbGFzcyZuYnNwO3N0ZXJlb3R5cGUpPC9QUkU+Cis8REw+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJoYXNTdGVyZW90eXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgoraGFzU3RlcmVvdHlwZTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuQm9vbGVhbiA8Qj5oYXNTdGVyZW90eXBlPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2NsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtzKTwvUFJFPgorPERMPgorPEREPlJldHVybiB0cnVlIGlmIGEgZ2l2ZW4gY2xhc3MgaGFzIHNwZWNpZmllZCBzdGVyZW90eXBlLgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJpc0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpIj48IS0tIC0tPjwvQT48SDM+Citpc0NsYXNzPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5Cb29sZWFuIDxCPmlzQ2xhc3M8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQmbmJzcDtlbHQpPC9QUkU+Cis8REw+Cis8REQ+SXMgdGhpcyBlbGVtZW50IGEgVU1MIGNsYXNzCis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVsZW1lbnQ8L0NPREU+IC0gCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmlzIHRoaXMgYSBVTUwgY2xhc3MgPzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaXNEYXRhVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+PCEtLSAtLT48L0E+PEgzPgoraXNEYXRhVHlwZTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuQm9vbGVhbiA8Qj5pc0RhdGFUeXBlPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50Jm5ic3A7ZWx0KTwvUFJFPgorPERMPgorPEREPklzIHRoaXMgZWxlbWVudCBhIFVNTCBEYXRhVHlwZQorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lbGVtZW50PC9DT0RFPiAtIAorPERUPjxCPlJldHVybnM6PC9CPjxERD5pcyB0aGlzIGEgVU1MIERhdGFUeXBlID88L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImlzSW50ZXJmYWNlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpIj48IS0tIC0tPjwvQT48SDM+Citpc0ludGVyZmFjZTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuQm9vbGVhbiA8Qj5pc0ludGVyZmFjZTwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCZuYnNwO2VsdCk8L1BSRT4KKzxETD4KKzxERD5JcyB0aGlzIGVsZW1lbnQgYSBVTUwgaW50ZXJmYWNlCis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVsZW1lbnQ8L0NPREU+IC0gCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmlzIHRoaXMgYSBVTUwgY2xhc3MgPzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaXNQcm9wZXJ0eShvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+PCEtLSAtLT48L0E+PEgzPgoraXNQcm9wZXJ0eTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuQm9vbGVhbiA8Qj5pc1Byb3BlcnR5PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50Jm5ic3A7ZWx0KTwvUFJFPgorPERMPgorPEREPklzIHRoaXMgZWxlbWVudCBhIFVNTCBQcm9wZXJ0eQorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lbGVtZW50PC9DT0RFPiAtIAorPERUPjxCPlJldHVybnM6PC9CPjxERD5pcyB0aGlzIGEgVU1MIFByb3BlcnR5ID88L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImlzUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+PCEtLSAtLT48L0E+PEgzPgoraXNQb3J0PC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5Cb29sZWFuIDxCPmlzUG9ydDwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCZuYnNwO3Byb3ApPC9QUkU+Cis8REw+Cis8REQ+SXMgdGhpcyBwcm9wZXJ0eSBhIFBvcnQKKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+cHJvcGVydHk8L0NPREU+IC0gCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmlzIHRoaXMgYSBwb3J0ID88L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImlzSW5zdGFuY2VTcGVjaWZpY2F0aW9uKG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpIj48IS0tIC0tPjwvQT48SDM+Citpc0luc3RhbmNlU3BlY2lmaWNhdGlvbjwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuQm9vbGVhbiA8Qj5pc0luc3RhbmNlU3BlY2lmaWNhdGlvbjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCZuYnNwO2VsdCk8L1BSRT4KKzxETD4KKzxERD5JcyB0aGlzIGVsZW1lbnQgYW4gaW5zdGFuY2Ugc3BlY2lmaWNhdGlvbgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lbGVtZW50PC9DT0RFPiAtIAorPERUPjxCPlJldHVybnM6PC9CPjxERD5pcyB0aGlzIGFuIGluc3RhbmNlIHNwZWNpZmljYXRpb24gPzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0SW5zdGFuY2VNdWx0aXBsaWNpdHkob3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHkpIj48IS0tIC0tPjwvQT48SDM+CitnZXRJbnN0YW5jZU11bHRpcGxpY2l0eTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldEluc3RhbmNlTXVsdGlwbGljaXR5PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Qcm9wZXJ0eSZuYnNwO3ApPC9QUkU+Cis8REw+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRBdHRyaWJ1dGVWYWx1ZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcywgamF2YS5sYW5nLlN0cmluZywgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEF0dHJpYnV0ZVZhbHVlPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0QXR0cmlidXRlVmFsdWU8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7Y2wsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2F0dHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO3N0bmFtZSk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm4gdGhlIHZhbHVlIG9mIGEgZ2l2ZW4gYXR0cmlidXRlIHVzaW5nIHRoZSBnaXZlbiBzdGVyZW90eXBlCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEF0dHJpYnV0ZVZhbHVlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzLCBqYXZhLmxhbmcuU3RyaW5nLCBqYXZhLmxhbmcuU3RyaW5nLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QXR0cmlidXRlVmFsdWU8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRBdHRyaWJ1dGVWYWx1ZTwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MmbmJzcDtjbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7YXR0ciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7c3RuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtkZWZhdWx0VmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJuIHRoZSB2YWx1ZSBvZiBhIGdpdmVuIGF0dHJpYnV0ZSB1c2luZyB0aGUgZ2l2ZW4gc3RlcmVvdHlwZSAKKyBJZiBhdHRyaWJ1dGUgaXMgbm90IGRlZmluZWQsIHRoZW4gcmV0dXJuIGEgZGVmYXVsdCB2YWx1ZQorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRBdHRyaWJ1dGVWYWx1ZXMob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MsIGphdmEubGFuZy5TdHJpbmcsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitnZXRBdHRyaWJ1dGVWYWx1ZXM8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgamF2YS51dGlsLkxpc3QmbHQ7amF2YS5sYW5nLlN0cmluZyZndDsgPEI+Z2V0QXR0cmlidXRlVmFsdWVzPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2NsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2F0dHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7c3RuYW1lKTwvUFJFPgorPERMPgorPEREPlJldHVybiB0aGUgdmFsdWVzIG9mIGEgZ2l2ZW4gYXR0cmlidXRlIHVzaW5nIHRoZSBnaXZlbiBzdGVyZW90eXBlCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImZpbmRDbGFzc0luTW9kZWwob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitmaW5kQ2xhc3NJbk1vZGVsPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzIDxCPmZpbmRDbGFzc0luTW9kZWw8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsJm5ic3A7bW9kZWwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO25hbWUpPC9QUkU+Cis8REw+Cis8REQ+RmluZCBhIGNsYXNzIHdpdGggYSBnaXZlbiBuYW1lIGluIHRoZSBtb2RlbC4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZmluZENsYXNzSW5QYWNrYWdlKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhY2thZ2UsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitmaW5kQ2xhc3NJblBhY2thZ2U8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgPEI+ZmluZENsYXNzSW5QYWNrYWdlPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlJm5ic3A7cGFjaywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtuYW1lKTwvUFJFPgorPERMPgorPEREPkZpbmQgYSBjbGFzcyB3aXRoIGEgZ2l2ZW4gbmFtZSBpbiBhIHBhY2thZ2UuCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9Imluc3BlY3REYXRhVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5EYXRhVHlwZSkiPjwhLS0gLS0+PC9BPjxIMz4KK2luc3BlY3REYXRhVHlwZTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyB2b2lkIDxCPmluc3BlY3REYXRhVHlwZTwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUmbmJzcDtkYXRhdHlwZSk8L1BSRT4KKzxETD4KKzxERD5EZWJ1ZyBmdW5jdGlvbi4gUHJpbnRzIGluZm8gYWJvdXQgYSBnaXZlbiBkYXRhdHlwZS4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaW5zcGVjdENsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+PCEtLSAtLT48L0E+PEgzPgoraW5zcGVjdENsYXNzPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIHZvaWQgPEI+aW5zcGVjdENsYXNzPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO2NsKTwvUFJFPgorPERMPgorPEREPkRlYnVnIGZ1bmN0aW9uLgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJpbnNwZWN0UG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+PCEtLSAtLT48L0E+PEgzPgoraW5zcGVjdFBvcnQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgdm9pZCA8Qj5pbnNwZWN0UG9ydDwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCZuYnNwO3BvcnQpPC9QUkU+Cis8REw+Cis8REQ+RGVidWcgZnVuY3Rpb24uIFByaW50cyBpbmZvIGFib3V0IGEgZ2l2ZW4gcG9ydC4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaW5zcGVjdE1vZGVsKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsKSI+PCEtLSAtLT48L0E+PEgzPgoraW5zcGVjdE1vZGVsPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGphdmEubGFuZy5Cb29sZWFuIDxCPmluc3BlY3RNb2RlbDwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwmbmJzcDttb2RlbCk8L1BSRT4KKzxETD4KKzxERD5Gb25jdGlvbiBkZSB0ZXN0IHBvdXIgaW5zcGVjdGVyIHVuIG1vZO+/vWxlIFVNTDIKKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bW9kZWw8L0NPREU+IC0gCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0icmVtb3ZlQnJhY2tldHMoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3JlbW92ZUJyYWNrZXRzPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5yZW1vdmVCcmFja2V0czwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3N0cik8L1BSRT4KKzxETD4KKzxERD5TdHJpbmcgbWFuaXB1bGF0aW9uIGZ1bmN0aW9uIDoKKyByZW1vdmUgYnJhY2tldHMgZnJvbSBhIHN0cmluZworPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5zdHI8L0NPREU+IC0gCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPjwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvR2VuZXJhbFF1ZXJpZXMuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9GU01RdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJHZW5lcmFsUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3Jfc3VtbWFyeSI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX2RldGFpbCI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MGMyNDdmCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbApAQCAtMCwwICsxLDYxOSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNi4wXzI0KSBvbiBXZWQgT2N0IDE3IDE5OjMzOjA1IENFU1QgMjAxMiAtLT4KKzxUSVRMRT4KK01NUXVlcmllcworPC9USVRMRT4KKworPE1FVEEgTkFNRT0iZGF0ZSIgQ09OVEVOVD0iMjAxMi0xMC0xNyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIGlmIChsb2NhdGlvbi5ocmVmLmluZGV4T2YoJ2lzLWV4dGVybmFsPXRydWUnKSA9PSAtMSkgeworICAgICAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9Ik1NUXVlcmllcyI7CisgICAgfQorfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKzxIUj4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvTU1RdWVyaWVzLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7TkVYVCBDTEFTUzwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iTU1RdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX3N1bW1hcnkiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwOzxBIEhSRUY9IiNmaWVsZF9kZXRhaWwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3JfZGV0YWlsIj5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzPC9GT05UPgorPEJSPgorQ2xhc3MgTU1RdWVyaWVzPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5hY2NlbGVvLmVuZ2luZS5zZXJ2aWNlLkFic3RyYWN0QWNjZWxlb0dlbmVyYXRvcgorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuTU1RdWVyaWVzPC9CPgorPC9QUkU+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+TU1RdWVyaWVzPC9CPjxEVD5leHRlbmRzIG9yZy5lY2xpcHNlLmFjY2VsZW8uZW5naW5lLnNlcnZpY2UuQWJzdHJhY3RBY2NlbGVvR2VuZXJhdG9yPC9ETD4KKzwvUFJFPgorCis8UD4KK0VudHJ5IHBvaW50IG9mIHRoZSAnTU1RdWVyaWVzJyBnZW5lcmF0aW9uIG1vZHVsZS4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwjTU9EVUxFX0ZJTEVfTkFNRSI+TU9EVUxFX0ZJTEVfTkFNRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbmFtZSBvZiB0aGUgbW9kdWxlLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuU3RyaW5nW108L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sI1RFTVBMQVRFX05BTUVTIj5URU1QTEFURV9OQU1FUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbmFtZSBvZiB0aGUgdGVtcGxhdGVzIHRoYXQgYXJlIHRvIGJlIGdlbmVyYXRlZC48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT0gQ09OU1RSVUNUT1IgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0iY29uc3RydWN0b3Jfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sI01NUXVlcmllcygpIj5NTVF1ZXJpZXM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbGxvd3MgdGhlIHB1YmxpYyBjb25zdHJ1Y3RvciB0byBiZSB1c2VkLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sI01NUXVlcmllcyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgamF2YS5pby5GaWxlLCBqYXZhLnV0aWwuTGlzdCkiPk1NUXVlcmllczwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Jm5ic3A7bW9kZWwsCisgICAgICAgICAgamF2YS5pby5GaWxlJm5ic3A7dGFyZ2V0Rm9sZGVyLAorICAgICAgICAgIGphdmEudXRpbC5MaXN0Jmx0Oz8gZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0Jmd0OyZuYnNwO2FyZ3VtZW50cyk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoaXMgYWxsb3dzIGNsaWVudHMgdG8gaW5zdGFudGlhdGVzIGEgZ2VuZXJhdG9yIHdpdGggYWxsIHJlcXVpcmVkIGluZm9ybWF0aW9uLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sI01NUXVlcmllcyhvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuVVJJLCBqYXZhLmlvLkZpbGUsIGphdmEudXRpbC5MaXN0KSI+TU1RdWVyaWVzPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLlVSSSZuYnNwO21vZGVsVVJJLAorICAgICAgICAgIGphdmEuaW8uRmlsZSZuYnNwO3RhcmdldEZvbGRlciwKKyAgICAgICAgICBqYXZhLnV0aWwuTGlzdCZsdDs/IGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCZndDsmbmJzcDthcmd1bWVudHMpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGlzIGFsbG93cyBjbGllbnRzIHRvIGluc3RhbnRpYXRlcyBhIGdlbmVyYXRvciB3aXRoIGFsbCByZXF1aXJlZCBpbmZvcm1hdGlvbi48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sI2RvR2VuZXJhdGUob3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLk1vbml0b3IpIj5kb0dlbmVyYXRlPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLk1vbml0b3ImbmJzcDttb25pdG9yKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7TGF1bmNoZXMgdGhlIGdlbmVyYXRpb24gZGVzY3JpYmVkIGJ5IHRoaXMgaW5zdGFuY2UuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEudXRpbC5MaXN0Jmx0O29yZy5lY2xpcHNlLmFjY2VsZW8uZW5naW5lLmV2ZW50LklBY2NlbGVvVGV4dEdlbmVyYXRpb25MaXN0ZW5lciZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sI2dldEdlbmVyYXRpb25MaXN0ZW5lcnMoKSI+Z2V0R2VuZXJhdGlvbkxpc3RlbmVyczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0lmIHRoaXMgZ2VuZXJhdG9yIG5lZWRzIHRvIGxpc3RlbiB0byB0ZXh0IGdlbmVyYXRpb24gZXZlbnRzLCBsaXN0ZW5lcnMgY2FuIGJlIHJldHVybmVkIGZyb20gaGVyZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuYWNjZWxlby5lbmdpbmUuZ2VuZXJhdGlvbi5zdHJhdGVneS5JQWNjZWxlb0dlbmVyYXRpb25TdHJhdGVneTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwjZ2V0R2VuZXJhdGlvblN0cmF0ZWd5KCkiPmdldEdlbmVyYXRpb25TdHJhdGVneTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0lmIHlvdSBuZWVkIHRvIGNoYW5nZSB0aGUgd2F5IGZpbGVzIGFyZSBnZW5lcmF0ZWQsIHRoaXMgaXMgeW91ciBlbnRyeSBwb2ludC48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwjZ2V0TW9kdWxlTmFtZSgpIj5nZXRNb2R1bGVOYW1lPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhpcyB3aWxsIGJlIGNhbGxlZCBpbiBvcmRlciB0byBmaW5kIGFuZCBsb2FkIHRoZSBtb2R1bGUgdGhhdCB3aWxsIGJlIGxhdW5jaGVkIHRocm91Z2ggdGhpcyBsYXVuY2hlci48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS51dGlsLkxpc3QmbHQ7amF2YS5sYW5nLlN0cmluZyZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sI2dldFByb3BlcnRpZXMoKSI+Z2V0UHJvcGVydGllczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0lmIHRoZSBtb2R1bGUocykgY2FsbGVkIGJ5IHRoaXMgbGF1bmNoZXIgcmVxdWlyZSBwcm9wZXJ0aWVzIGZpbGVzLCByZXR1cm4gdGhlaXIgcXVhbGlmaWVkIHBhdGggZnJvbQorIGhlcmUuVGFrZSBub3RlIHRoYXQgdGhlIGZpcnN0IGFkZGVkIHByb3BlcnRpZXMgZmlsZXMgd2lsbCB0YWtlIHByZWNlZGVuY2Ugb3ZlciBzdWJzZXF1ZW50IG9uZXMgaWYgdGhleQorIGNvbnRhaW4gY29uZmxpY3Rpbmcga2V5cy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZ1tdPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCNnZXRUZW1wbGF0ZU5hbWVzKCkiPmdldFRlbXBsYXRlTmFtZXM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGlzIHdpbGwgYmUgdXNlZCB0byBnZXQgdGhlIGxpc3Qgb2YgdGVtcGxhdGVzIHRoYXQgYXJlIHRvIGJlIGxhdW5jaGVkIGJ5IHRoaXMgbGF1bmNoZXIuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sI21haW4oamF2YS5sYW5nLlN0cmluZ1tdKSI+bWFpbjwvQT48L0I+KGphdmEubGFuZy5TdHJpbmdbXSZuYnNwO2FyZ3MpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGlzIGNhbiBiZSB1c2VkIHRvIGxhdW5jaCB0aGUgZ2VuZXJhdGlvbiBmcm9tIGEgc3RhbmRhbG9uZSBhcHBsaWNhdGlvbi48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvTU1RdWVyaWVzLmh0bWwjcmVnaXN0ZXJQYWNrYWdlcyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuUmVzb3VyY2VTZXQpIj5yZWdpc3RlclBhY2thZ2VzPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLnJlc291cmNlLlJlc291cmNlU2V0Jm5ic3A7cmVzb3VyY2VTZXQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGlzIGNhbiBiZSB1c2VkIHRvIHVwZGF0ZSB0aGUgcmVzb3VyY2Ugc2V0J3MgcGFja2FnZSByZWdpc3RyeSB3aXRoIGFsbCBuZWVkZWQgRVBhY2thZ2VzLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCNyZWdpc3RlclJlc291cmNlRmFjdG9yaWVzKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5yZXNvdXJjZS5SZXNvdXJjZVNldCkiPnJlZ2lzdGVyUmVzb3VyY2VGYWN0b3JpZXM8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuUmVzb3VyY2VTZXQmbmJzcDtyZXNvdXJjZVNldCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoaXMgY2FuIGJlIHVzZWQgdG8gdXBkYXRlIHRoZSByZXNvdXJjZSBzZXQncyByZXNvdXJjZSBmYWN0b3J5IHJlZ2lzdHJ5IHdpdGggYWxsIG5lZWRlZCBmYWN0b3JpZXMuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5hY2NlbGVvLmVuZ2luZS5zZXJ2aWNlLkFic3RyYWN0QWNjZWxlb0dlbmVyYXRvciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuYWNjZWxlby5lbmdpbmUuc2VydmljZS5BYnN0cmFjdEFjY2VsZW9HZW5lcmF0b3I8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5hZGRHZW5lcmF0aW9uTGlzdGVuZXIsIGFkZFByb3BlcnRpZXNGaWxlLCBnZW5lcmF0ZSwgZ2V0QXJndW1lbnRzLCBnZXRNb2RlbCwgZ2V0TW9kdWxlLCBnZXRQcm9wZXJ0aWVzTG9hZGVyU2VydmljZSwgZ2V0VGFyZ2V0Rm9sZGVyLCBpbml0aWFsaXplLCBpbml0aWFsaXplLCBpc0luV29ya3NwYWNlLCBzZXRHZW5lcmF0aW9uSUQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB0b1N0cmluZywgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBGSUVMRCBERVRBSUwgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJNT0RVTEVfRklMRV9OQU1FIj48IS0tIC0tPjwvQT48SDM+CitNT0RVTEVfRklMRV9OQU1FPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGZpbmFsIGphdmEubGFuZy5TdHJpbmcgPEI+TU9EVUxFX0ZJTEVfTkFNRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbmFtZSBvZiB0aGUgbW9kdWxlLgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLk1NUXVlcmllcy5NT0RVTEVfRklMRV9OQU1FIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlRFTVBMQVRFX05BTUVTIj48IS0tIC0tPjwvQT48SDM+CitURU1QTEFURV9OQU1FUzwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCBqYXZhLmxhbmcuU3RyaW5nW10gPEI+VEVNUExBVEVfTkFNRVM8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG5hbWUgb2YgdGhlIHRlbXBsYXRlcyB0aGF0IGFyZSB0byBiZSBnZW5lcmF0ZWQuCis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorCis8IS0tID09PT09PT09PSBDT05TVFJVQ1RPUiBERVRBSUwgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImNvbnN0cnVjdG9yX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJNTVF1ZXJpZXMoKSI+PCEtLSAtLT48L0E+PEgzPgorTU1RdWVyaWVzPC9IMz4KKzxQUkU+CitwdWJsaWMgPEI+TU1RdWVyaWVzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+QWxsb3dzIHRoZSBwdWJsaWMgY29uc3RydWN0b3IgdG8gYmUgdXNlZC4gTm90ZSB0aGF0IGEgZ2VuZXJhdG9yIGNyZWF0ZWQKKyB0aGlzIHdheSBjYW5ub3QgYmUgdXNlZCB0byBsYXVuY2ggZ2VuZXJhdGlvbnMgYmVmb3JlIG9uZSBvZgorIDxDT0RFPkFic3RyYWN0QWNjZWxlb0dlbmVyYXRvci5pbml0aWFsaXplKEVPYmplY3QsIEZpbGUsIExpc3QpPC9DT0RFPiBvcgorIDxDT0RFPkFic3RyYWN0QWNjZWxlb0dlbmVyYXRvci5pbml0aWFsaXplKFVSSSwgRmlsZSwgTGlzdCk8L0NPREU+IGlzIGNhbGxlZC4KKyA8cD4KKyBUaGUgbWFpbiByZWFzb24gZm9yIHRoaXMgY29uc3RydWN0b3IgaXMgdG8gYWxsb3cgY2xpZW50cyBvZiB0aGlzCisgZ2VuZXJhdGlvbiB0byBjYWxsIGl0IGZyb20gYW5vdGhlciBKYXZhIGZpbGUsIGFzIGl0IGFsbG93cyBmb3IgdGhlCisgcmV0cmlldmFsIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCNnZXRQcm9wZXJ0aWVzKCkiPjxDT0RFPmdldFByb3BlcnRpZXMoKTwvQ09ERT48L0E+IGFuZAorIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCNnZXRHZW5lcmF0aW9uTGlzdGVuZXJzKCkiPjxDT0RFPmdldEdlbmVyYXRpb25MaXN0ZW5lcnMoKTwvQ09ERT48L0E+LgorIDwvcD4KKzxQPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTU1RdWVyaWVzKG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5VUkksIGphdmEuaW8uRmlsZSwgamF2YS51dGlsLkxpc3QpIj48IS0tIC0tPjwvQT48SDM+CitNTVF1ZXJpZXM8L0gzPgorPFBSRT4KK3B1YmxpYyA8Qj5NTVF1ZXJpZXM8L0I+KG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5VUkkmbmJzcDttb2RlbFVSSSwKKyAgICAgICAgICAgICAgICAgamF2YS5pby5GaWxlJm5ic3A7dGFyZ2V0Rm9sZGVyLAorICAgICAgICAgICAgICAgICBqYXZhLnV0aWwuTGlzdCZsdDs/IGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCZndDsmbmJzcDthcmd1bWVudHMpCisgICAgICAgICAgdGhyb3dzIGphdmEuaW8uSU9FeGNlcHRpb248L1BSRT4KKzxETD4KKzxERD5UaGlzIGFsbG93cyBjbGllbnRzIHRvIGluc3RhbnRpYXRlcyBhIGdlbmVyYXRvciB3aXRoIGFsbCByZXF1aXJlZCBpbmZvcm1hdGlvbi4KKzxQPgorPERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5tb2RlbFVSSTwvQ09ERT4gLSBVUkkgd2hlcmUgdGhlIG1vZGVsIG9uIHdoaWNoIHRoaXMgZ2VuZXJhdG9yIHdpbGwgYmUgdXNlZCBpcyBsb2NhdGVkLjxERD48Q09ERT50YXJnZXRGb2xkZXI8L0NPREU+IC0gVGhpcyB3aWxsIGJlIHVzZWQgYXMgdGhlIG91dHB1dCBmb2xkZXIgZm9yIHRoaXMgZ2VuZXJhdGlvbiA6IGl0IHdpbGwgYmUgdGhlIGJhc2UgcGF0aAorICAgICAgICAgICAgYWdhaW5zdCB3aGljaCBhbGwgZmlsZSBibG9jayBVUkxzIHdpbGwgYmUgcmVzb2x2ZWQuPEREPjxDT0RFPmFyZ3VtZW50czwvQ09ERT4gLSBJZiB0aGUgdGVtcGxhdGUgd2hpY2ggd2lsbCBiZSBjYWxsZWQgcmVxdWlyZXMgbW9yZSB0aGFuIG9uZSBhcmd1bWVudCB0YWtlbiBmcm9tIHRoZSBtb2RlbCwKKyAgICAgICAgICAgIHBhc3MgdGhlbSBoZXJlLgorPERUPjxCPlRocm93czo8L0I+Cis8REQ+PENPREU+amF2YS5pby5JT0V4Y2VwdGlvbjwvQ09ERT4gLSBUaGlzIGNhbiBiZSB0aHJvd24gaW4gdGhyZWUgc2NlbmFyaW9zIDogdGhlIG1vZHVsZSBjYW5ub3QgYmUgZm91bmQsIGl0IGNhbm5vdCBiZSBsb2FkZWQsIG9yCisgICAgICAgICAgICAgdGhlIG1vZGVsIGNhbm5vdCBiZSBsb2FkZWQuPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9Ik1NUXVlcmllcyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgamF2YS5pby5GaWxlLCBqYXZhLnV0aWwuTGlzdCkiPjwhLS0gLS0+PC9BPjxIMz4KK01NUXVlcmllczwvSDM+Cis8UFJFPgorcHVibGljIDxCPk1NUXVlcmllczwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QmbmJzcDttb2RlbCwKKyAgICAgICAgICAgICAgICAgamF2YS5pby5GaWxlJm5ic3A7dGFyZ2V0Rm9sZGVyLAorICAgICAgICAgICAgICAgICBqYXZhLnV0aWwuTGlzdCZsdDs/IGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCZndDsmbmJzcDthcmd1bWVudHMpCisgICAgICAgICAgdGhyb3dzIGphdmEuaW8uSU9FeGNlcHRpb248L1BSRT4KKzxETD4KKzxERD5UaGlzIGFsbG93cyBjbGllbnRzIHRvIGluc3RhbnRpYXRlcyBhIGdlbmVyYXRvciB3aXRoIGFsbCByZXF1aXJlZCBpbmZvcm1hdGlvbi4KKzxQPgorPERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5tb2RlbDwvQ09ERT4gLSBXZSdsbCBpdGVyYXRlIG92ZXIgdGhlIGNvbnRlbnQgb2YgdGhpcyBlbGVtZW50IHRvIGZpbmQgT2JqZWN0cyBtYXRjaGluZyB0aGUgZmlyc3QgcGFyYW1ldGVyCisgICAgICAgICAgICBvZiB0aGUgdGVtcGxhdGUgd2UgbmVlZCB0byBjYWxsLjxERD48Q09ERT50YXJnZXRGb2xkZXI8L0NPREU+IC0gVGhpcyB3aWxsIGJlIHVzZWQgYXMgdGhlIG91dHB1dCBmb2xkZXIgZm9yIHRoaXMgZ2VuZXJhdGlvbiA6IGl0IHdpbGwgYmUgdGhlIGJhc2UgcGF0aAorICAgICAgICAgICAgYWdhaW5zdCB3aGljaCBhbGwgZmlsZSBibG9jayBVUkxzIHdpbGwgYmUgcmVzb2x2ZWQuPEREPjxDT0RFPmFyZ3VtZW50czwvQ09ERT4gLSBJZiB0aGUgdGVtcGxhdGUgd2hpY2ggd2lsbCBiZSBjYWxsZWQgcmVxdWlyZXMgbW9yZSB0aGFuIG9uZSBhcmd1bWVudCB0YWtlbiBmcm9tIHRoZSBtb2RlbCwKKyAgICAgICAgICAgIHBhc3MgdGhlbSBoZXJlLgorPERUPjxCPlRocm93czo8L0I+Cis8REQ+PENPREU+amF2YS5pby5JT0V4Y2VwdGlvbjwvQ09ERT4gLSBUaGlzIGNhbiBiZSB0aHJvd24gaW4gdHdvIHNjZW5hcmlvcyA6IHRoZSBtb2R1bGUgY2Fubm90IGJlIGZvdW5kLCBvciBpdCBjYW5ub3QgYmUgbG9hZGVkLjwvREw+Cis8L0RMPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9Im1haW4oamF2YS5sYW5nLlN0cmluZ1tdKSI+PCEtLSAtLT48L0E+PEgzPgorbWFpbjwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyB2b2lkIDxCPm1haW48L0I+KGphdmEubGFuZy5TdHJpbmdbXSZuYnNwO2FyZ3MpPC9QUkU+Cis8REw+Cis8REQ+VGhpcyBjYW4gYmUgdXNlZCB0byBsYXVuY2ggdGhlIGdlbmVyYXRpb24gZnJvbSBhIHN0YW5kYWxvbmUgYXBwbGljYXRpb24uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmFyZ3M8L0NPREU+IC0gQXJndW1lbnRzIG9mIHRoZSBnZW5lcmF0aW9uLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZG9HZW5lcmF0ZShvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuTW9uaXRvcikiPjwhLS0gLS0+PC9BPjxIMz4KK2RvR2VuZXJhdGU8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmRvR2VuZXJhdGU8L0I+KG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5Nb25pdG9yJm5ic3A7bW9uaXRvcikKKyAgICAgICAgICAgICAgICB0aHJvd3MgamF2YS5pby5JT0V4Y2VwdGlvbjwvUFJFPgorPERMPgorPEREPkxhdW5jaGVzIHRoZSBnZW5lcmF0aW9uIGRlc2NyaWJlZCBieSB0aGlzIGluc3RhbmNlLgorPFA+Cis8REQ+PERMPgorPERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmRvR2VuZXJhdGU8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmFjY2VsZW8uZW5naW5lLnNlcnZpY2UuQWJzdHJhY3RBY2NlbGVvR2VuZXJhdG9yPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bW9uaXRvcjwvQ09ERT4gLSBUaGlzIHdpbGwgYmUgdXNlZCB0byBkaXNwbGF5IHByb2dyZXNzIGluZm9ybWF0aW9uIHRvIHRoZSB1c2VyLgorPERUPjxCPlRocm93czo8L0I+Cis8REQ+PENPREU+amF2YS5pby5JT0V4Y2VwdGlvbjwvQ09ERT4gLSBUaGlzIHdpbGwgYmUgdGhyb3duIGlmIGFueSBvZiB0aGUgb3V0cHV0IGZpbGVzIGNhbm5vdCBiZSBzYXZlZCB0byBkaXNrLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0R2VuZXJhdGlvbkxpc3RlbmVycygpIj48IS0tIC0tPjwvQT48SDM+CitnZXRHZW5lcmF0aW9uTGlzdGVuZXJzPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS51dGlsLkxpc3QmbHQ7b3JnLmVjbGlwc2UuYWNjZWxlby5lbmdpbmUuZXZlbnQuSUFjY2VsZW9UZXh0R2VuZXJhdGlvbkxpc3RlbmVyJmd0OyA8Qj5nZXRHZW5lcmF0aW9uTGlzdGVuZXJzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+SWYgdGhpcyBnZW5lcmF0b3IgbmVlZHMgdG8gbGlzdGVuIHRvIHRleHQgZ2VuZXJhdGlvbiBldmVudHMsIGxpc3RlbmVycyBjYW4gYmUgcmV0dXJuZWQgZnJvbSBoZXJlLgorPFA+Cis8REQ+PERMPgorPERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmdldEdlbmVyYXRpb25MaXN0ZW5lcnM8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmFjY2VsZW8uZW5naW5lLnNlcnZpY2UuQWJzdHJhY3RBY2NlbGVvR2VuZXJhdG9yPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5MaXN0IG9mIGxpc3RlbmVycyB0aGF0IGFyZSB0byBiZSBub3RpZmllZCB3aGVuIHRleHQgaXMgZ2VuZXJhdGVkIHRocm91Z2ggdGhpcyBsYXVuY2guPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRHZW5lcmF0aW9uU3RyYXRlZ3koKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0R2VuZXJhdGlvblN0cmF0ZWd5PC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuYWNjZWxlby5lbmdpbmUuZ2VuZXJhdGlvbi5zdHJhdGVneS5JQWNjZWxlb0dlbmVyYXRpb25TdHJhdGVneSA8Qj5nZXRHZW5lcmF0aW9uU3RyYXRlZ3k8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5JZiB5b3UgbmVlZCB0byBjaGFuZ2UgdGhlIHdheSBmaWxlcyBhcmUgZ2VuZXJhdGVkLCB0aGlzIGlzIHlvdXIgZW50cnkgcG9pbnQuCisgPHA+CisgVGhlIGRlZmF1bHQgaXMgPENPREU+RGVmYXVsdFN0cmF0ZWd5PC9DT0RFPjsgaXQgZ2VuZXJhdGVzCisgZmlsZXMgb24gdGhlIGZseS4gSWYgeW91IG9ubHkgbmVlZCB0byBwcmV2aWV3IHRoZSByZXN1bHRzLCByZXR1cm4gYSBuZXcKKyA8Q09ERT5QcmV2aWV3U3RyYXRlZ3k8L0NPREU+LiBCb3RoIG9mIHRoZXNlIGFyZW4ndCBhd2FyZSBvZgorIHRoZSBydW5uaW5nIEVjbGlwc2UgYW5kIGNhbiBiZSB1c2VkIHN0YW5kYWxvbmUuCisgPC9wPgorIDxwPgorIElmIHlvdSBuZWVkIHRoZSBmaWxlIGdlbmVyYXRpb24gdG8gYmUgYXdhcmUgb2YgdGhlIHdvcmtzcGFjZSAoQSB0eXBpY2FsIGV4YW1wbGUgaXMgd2hlbiB5b3Ugd2FubmEKKyBvdmVycmlkZSBmaWxlcyB0aGF0IGFyZSB1bmRlciBjbGVhciBjYXNlIG9yIGFueSBvdGhlciBWQ1MgdGhhdCBjb3VsZCBmb3JiaWQgdGhlIG92ZXJyaWRpbmcpLCB0aGVuCisgcmV0dXJuIGEgbmV3IDxDT0RFPldvcmtzcGFjZUF3YXJlU3RyYXRlZ3k8L0NPREU+LgorIDxiPk5vdGU8L2I+LCBob3dldmVyLCB0aGF0IHRoaXMgPGI+Y2Fubm90PC9iPiBiZSB1c2VkIHN0YW5kYWxvbmUuCisgPC9wPgorIDxwPgorIEFsbCB0aHJlZSBvZiB0aGVzZSBkZWZhdWx0IHN0cmF0ZWdpZXMgc3VwcG9ydCBtZXJnaW5nIHRocm91Z2ggSk1lcmdlLgorIDwvcD4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5nZXRHZW5lcmF0aW9uU3RyYXRlZ3k8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmFjY2VsZW8uZW5naW5lLnNlcnZpY2UuQWJzdHJhY3RBY2NlbGVvR2VuZXJhdG9yPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5UaGUgZ2VuZXJhdGlvbiBzdHJhdGVneSB0aGF0IGlzIHRvIGJlIHVzZWQgZm9yIGdlbmVyYXRpb25zIGxhdW5jaGVkIHRocm91Z2ggdGhpcyBsYXVuY2hlci48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldE1vZHVsZU5hbWUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TW9kdWxlTmFtZTwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0TW9kdWxlTmFtZTwvQj4oKTwvUFJFPgorPERMPgorPEREPlRoaXMgd2lsbCBiZSBjYWxsZWQgaW4gb3JkZXIgdG8gZmluZCBhbmQgbG9hZCB0aGUgbW9kdWxlIHRoYXQgd2lsbCBiZSBsYXVuY2hlZCB0aHJvdWdoIHRoaXMgbGF1bmNoZXIuCisgV2UgZXhwZWN0IHRoaXMgbmFtZSBub3QgdG8gY29udGFpbiBmaWxlIGV4dGVuc2lvbiwgYW5kIHRoZSBtb2R1bGUgdG8gYmUgbG9jYXRlZCBiZXNpZGUgdGhlIGxhdW5jaGVyLgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmdldE1vZHVsZU5hbWU8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmFjY2VsZW8uZW5naW5lLnNlcnZpY2UuQWJzdHJhY3RBY2NlbGVvR2VuZXJhdG9yPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5UaGUgbmFtZSBvZiB0aGUgbW9kdWxlIHRoYXQgaXMgdG8gYmUgbGF1bmNoZWQuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRQcm9wZXJ0aWVzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFByb3BlcnRpZXM8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLnV0aWwuTGlzdCZsdDtqYXZhLmxhbmcuU3RyaW5nJmd0OyA8Qj5nZXRQcm9wZXJ0aWVzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+SWYgdGhlIG1vZHVsZShzKSBjYWxsZWQgYnkgdGhpcyBsYXVuY2hlciByZXF1aXJlIHByb3BlcnRpZXMgZmlsZXMsIHJldHVybiB0aGVpciBxdWFsaWZpZWQgcGF0aCBmcm9tCisgaGVyZS5UYWtlIG5vdGUgdGhhdCB0aGUgZmlyc3QgYWRkZWQgcHJvcGVydGllcyBmaWxlcyB3aWxsIHRha2UgcHJlY2VkZW5jZSBvdmVyIHN1YnNlcXVlbnQgb25lcyBpZiB0aGV5CisgY29udGFpbiBjb25mbGljdGluZyBrZXlzLgorIDxwPgorIFByb3BlcnRpZXMgbmVlZCB0byBiZSBpbiBzb3VyY2UgZm9sZGVycywgdGhlIHBhdGggdGhhdCB3ZSBleHBlY3QgdG8gZ2V0IGFzIGEgcmVzdWx0IG9mIHRoaXMgY2FsbCBhcmUgb2YKKyB0aGUgZm9ybSAmbHQ7cGFja2FnZT4uJmx0O3Byb3BlcnRpZXMgZmlsZSBuYW1lIHdpdGhvdXQgZXh0ZW5zaW9uPi4gRm9yIGV4YW1wbGUsIGlmIHlvdSBoYXZlIGEgZmlsZQorIG5hbWVkICJtZXNzYWdlcy5wcm9wZXJ0aWVzIiBpbiBwYWNrYWdlICJvcmcuZWNsaXBzZS5hY2NlbGVvLnNhbXBsZSIsIHRoZSBwYXRoIHRoYXQgbmVlZHMgYmUgcmV0dXJuZWQgYnkKKyBhIGNhbGwgdG8gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sI2dldFByb3BlcnRpZXMoKSI+PENPREU+Z2V0UHJvcGVydGllcygpPC9DT0RFPjwvQT4gaXMgIm9yZy5lY2xpcHNlLmFjY2VsZW8uc2FtcGxlLm1lc3NhZ2VzIi4KKyA8L3A+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+Z2V0UHJvcGVydGllczwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuYWNjZWxlby5lbmdpbmUuc2VydmljZS5BYnN0cmFjdEFjY2VsZW9HZW5lcmF0b3I8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPlRoZSBsaXN0IG9mIHByb3BlcnRpZXMgZmlsZSB3ZSBuZWVkIHRvIGFkZCB0byB0aGUgZ2VuZXJhdGlvbiBjb250ZXh0LjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlJlc291cmNlQnVuZGxlLmdldEJ1bmRsZShTdHJpbmcpPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0VGVtcGxhdGVOYW1lcygpIj48IS0tIC0tPjwvQT48SDM+CitnZXRUZW1wbGF0ZU5hbWVzPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZ1tdIDxCPmdldFRlbXBsYXRlTmFtZXM8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5UaGlzIHdpbGwgYmUgdXNlZCB0byBnZXQgdGhlIGxpc3Qgb2YgdGVtcGxhdGVzIHRoYXQgYXJlIHRvIGJlIGxhdW5jaGVkIGJ5IHRoaXMgbGF1bmNoZXIuCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+Z2V0VGVtcGxhdGVOYW1lczwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuYWNjZWxlby5lbmdpbmUuc2VydmljZS5BYnN0cmFjdEFjY2VsZW9HZW5lcmF0b3I8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPlRoZSBsaXN0IG9mIHRlbXBsYXRlcyB0byBjYWxsIG9uIHRoZSBtb2R1bGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sI2dldE1vZHVsZU5hbWUoKSI+PENPREU+Z2V0TW9kdWxlTmFtZSgpPC9DT0RFPjwvQT4uPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJyZWdpc3RlclBhY2thZ2VzKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5yZXNvdXJjZS5SZXNvdXJjZVNldCkiPjwhLS0gLS0+PC9BPjxIMz4KK3JlZ2lzdGVyUGFja2FnZXM8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnJlZ2lzdGVyUGFja2FnZXM8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5yZXNvdXJjZS5SZXNvdXJjZVNldCZuYnNwO3Jlc291cmNlU2V0KTwvUFJFPgorPERMPgorPEREPlRoaXMgY2FuIGJlIHVzZWQgdG8gdXBkYXRlIHRoZSByZXNvdXJjZSBzZXQncyBwYWNrYWdlIHJlZ2lzdHJ5IHdpdGggYWxsIG5lZWRlZCBFUGFja2FnZXMuCis8UD4KKzxERD48REw+Cis8RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+cmVnaXN0ZXJQYWNrYWdlczwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuYWNjZWxlby5lbmdpbmUuc2VydmljZS5BYnN0cmFjdEFjY2VsZW9HZW5lcmF0b3I8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5yZXNvdXJjZVNldDwvQ09ERT4gLSBUaGUgcmVzb3VyY2Ugc2V0IHdoaWNoIHJlZ2lzdHJ5IGhhcyB0byBiZSB1cGRhdGVkLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0icmVnaXN0ZXJSZXNvdXJjZUZhY3RvcmllcyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuUmVzb3VyY2VTZXQpIj48IS0tIC0tPjwvQT48SDM+CityZWdpc3RlclJlc291cmNlRmFjdG9yaWVzPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5yZWdpc3RlclJlc291cmNlRmFjdG9yaWVzPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuUmVzb3VyY2VTZXQmbmJzcDtyZXNvdXJjZVNldCk8L1BSRT4KKzxETD4KKzxERD5UaGlzIGNhbiBiZSB1c2VkIHRvIHVwZGF0ZSB0aGUgcmVzb3VyY2Ugc2V0J3MgcmVzb3VyY2UgZmFjdG9yeSByZWdpc3RyeSB3aXRoIGFsbCBuZWVkZWQgZmFjdG9yaWVzLgorPFA+Cis8REQ+PERMPgorPERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPnJlZ2lzdGVyUmVzb3VyY2VGYWN0b3JpZXM8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmFjY2VsZW8uZW5naW5lLnNlcnZpY2UuQWJzdHJhY3RBY2NlbGVvR2VuZXJhdG9yPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+cmVzb3VyY2VTZXQ8L0NPREU+IC0gVGhlIHJlc291cmNlIHNldCB3aGljaCByZWdpc3RyeSBoYXMgdG8gYmUgdXBkYXRlZC48L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL01NUXVlcmllcy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwO05FWFQgQ0xBU1M8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ik1NUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX2RldGFpbCI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL2NsYXNzLXVzZS9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL2NsYXNzLXVzZS9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGY4MjdhNgotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvY2xhc3MtdXNlL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbApAQCAtMCwwICsxLDE0NCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNi4wXzI0KSBvbiBXZWQgT2N0IDE3IDE5OjMzOjA1IENFU1QgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJkYXRlIiBDT05URU5UPSIyMDEyLTEwLTE3Ij4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgaWYgKGxvY2F0aW9uLmhyZWYuaW5kZXhPZignaXMtZXh0ZXJuYWw9dHJ1ZScpID09IC0xKSB7CisgICAgICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMiOworICAgIH0KK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+Cis8SFI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9cY2xhc3MtdXNlQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXM8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL1xjbGFzcy11c2VBcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9jbGFzcy11c2UvRGF0YVR5cGVRdWVyaWVzLmh0bWwgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL2NsYXNzLXVzZS9EYXRhVHlwZVF1ZXJpZXMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44MjVlM2IzCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9jbGFzcy11c2UvRGF0YVR5cGVRdWVyaWVzLmh0bWwKQEAgLTAsMCArMSwxNDQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjYuMF8yNCkgb24gV2VkIE9jdCAxNyAxOTozMzowNSBDRVNUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuRGF0YVR5cGVRdWVyaWVzCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJkYXRlIiBDT05URU5UPSIyMDEyLTEwLTE3Ij4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgaWYgKGxvY2F0aW9uLmhyZWYuaW5kZXhPZignaXMtZXh0ZXJuYWw9dHJ1ZScpID09IC0xKSB7CisgICAgICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkRhdGFUeXBlUXVlcmllcyI7CisgICAgfQorfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKzxIUj4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvXGNsYXNzLXVzZURhdGFUeXBlUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkRhdGFUeXBlUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuRGF0YVR5cGVRdWVyaWVzPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuRGF0YVR5cGVRdWVyaWVzCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvXGNsYXNzLXVzZURhdGFUeXBlUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkRhdGFUeXBlUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9jbGFzcy11c2UvRGVwbG95bWVudFF1ZXJpZXMuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvY2xhc3MtdXNlL0RlcGxveW1lbnRRdWVyaWVzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmY3MDg2NAotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvY2xhc3MtdXNlL0RlcGxveW1lbnRRdWVyaWVzLmh0bWwKQEAgLTAsMCArMSwxNDQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjYuMF8yNCkgb24gV2VkIE9jdCAxNyAxOTozMzowNSBDRVNUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuRGVwbG95bWVudFF1ZXJpZXMKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImRhdGUiIENPTlRFTlQ9IjIwMTItMTAtMTciPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBpZiAobG9jYXRpb24uaHJlZi5pbmRleE9mKCdpcy1leHRlcm5hbD10cnVlJykgPT0gLTEpIHsKKyAgICAgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuRGVwbG95bWVudFF1ZXJpZXMiOworICAgIH0KK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+Cis8SFI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRGVwbG95bWVudFF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvXGNsYXNzLXVzZURlcGxveW1lbnRRdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRGVwbG95bWVudFF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkRlcGxveW1lbnRRdWVyaWVzPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuRGVwbG95bWVudFF1ZXJpZXMKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RlcGxveW1lbnRRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL1xjbGFzcy11c2VEZXBsb3ltZW50UXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkRlcGxveW1lbnRRdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL2NsYXNzLXVzZS9GU01RdWVyaWVzLmh0bWwgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL2NsYXNzLXVzZS9GU01RdWVyaWVzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODUzZGM1NwotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvY2xhc3MtdXNlL0ZTTVF1ZXJpZXMuaHRtbApAQCAtMCwwICsxLDE0NCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNi4wXzI0KSBvbiBXZWQgT2N0IDE3IDE5OjMzOjA1IENFU1QgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5GU01RdWVyaWVzCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJkYXRlIiBDT05URU5UPSIyMDEyLTEwLTE3Ij4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgaWYgKGxvY2F0aW9uLmhyZWYuaW5kZXhPZignaXMtZXh0ZXJuYWw9dHJ1ZScpID09IC0xKSB7CisgICAgICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkZTTVF1ZXJpZXMiOworICAgIH0KK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+Cis8SFI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvRlNNUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9cY2xhc3MtdXNlRlNNUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkZTTVF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkZTTVF1ZXJpZXM8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5GU01RdWVyaWVzCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9GU01RdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL1xjbGFzcy11c2VGU01RdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRlNNUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9jbGFzcy11c2UvR2VuZXJhbFF1ZXJpZXMuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvY2xhc3MtdXNlL0dlbmVyYWxRdWVyaWVzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzZiMGM0OAotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvY2xhc3MtdXNlL0dlbmVyYWxRdWVyaWVzLmh0bWwKQEAgLTAsMCArMSwxNDQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjYuMF8yNCkgb24gV2VkIE9jdCAxNyAxOTozMzowNSBDRVNUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuR2VuZXJhbFF1ZXJpZXMKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImRhdGUiIENPTlRFTlQ9IjIwMTItMTAtMTciPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBpZiAobG9jYXRpb24uaHJlZi5pbmRleE9mKCdpcy1leHRlcm5hbD10cnVlJykgPT0gLTEpIHsKKyAgICAgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuR2VuZXJhbFF1ZXJpZXMiOworICAgIH0KK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+Cis8SFI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvXGNsYXNzLXVzZUdlbmVyYWxRdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkdlbmVyYWxRdWVyaWVzPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuR2VuZXJhbFF1ZXJpZXMKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL1xjbGFzcy11c2VHZW5lcmFsUXVlcmllcy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkdlbmVyYWxRdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL2NsYXNzLXVzZS9NTVF1ZXJpZXMuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvY2xhc3MtdXNlL01NUXVlcmllcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY3Mjk0NjAKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL2NsYXNzLXVzZS9NTVF1ZXJpZXMuaHRtbApAQCAtMCwwICsxLDE0NCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNi4wXzI0KSBvbiBXZWQgT2N0IDE3IDE5OjMzOjA1IENFU1QgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5NTVF1ZXJpZXMKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImRhdGUiIENPTlRFTlQ9IjIwMTItMTAtMTciPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBpZiAobG9jYXRpb24uaHJlZi5pbmRleE9mKCdpcy1leHRlcm5hbD10cnVlJykgPT0gLTEpIHsKKyAgICAgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuTU1RdWVyaWVzIjsKKyAgICB9Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorPEhSPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9cY2xhc3MtdXNlTU1RdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iTU1RdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgQ2xhc3M8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5NTVF1ZXJpZXM8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5NTVF1ZXJpZXMKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL01NUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9cY2xhc3MtdXNlTU1RdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iTU1RdWVyaWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL3BhY2thZ2UtZnJhbWUuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvcGFja2FnZS1mcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUxNmFjMTMKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL3BhY2thZ2UtZnJhbWUuaHRtbApAQCAtMCwwICsxLDQyIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS42LjBfMjQpIG9uIFdlZCBPY3QgMTcgMTk6MzM6MDUgQ0VTVCAyMDEyIC0tPgorPFRJVExFPgorb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcworPC9USVRMRT4KKworPE1FVEEgTkFNRT0iZGF0ZSIgQ09OVEVOVD0iMjAxMi0xMC0xNyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIj4KKzxGT05UIHNpemU9IisxIiBDTEFTUz0iRnJhbWVUaXRsZUZvbnQiPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXM8L0E+PC9GT05UPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgTk9XUkFQPjxGT05UIHNpemU9IisxIiBDTEFTUz0iRnJhbWVIZWFkaW5nRm9udCI+CitDbGFzc2VzPC9GT05UPiZuYnNwOworPEZPTlQgQ0xBU1M9IkZyYW1lSXRlbUZvbnQiPgorPEJSPgorPEEgSFJFRj0iQXJjaGl0ZWN0dXJlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5BcmNoaXRlY3R1cmVRdWVyaWVzPC9BPgorPEJSPgorPEEgSFJFRj0iRGF0YVR5cGVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkRhdGFUeXBlUXVlcmllczwvQT4KKzxCUj4KKzxBIEhSRUY9IkRlcGxveW1lbnRRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkRlcGxveW1lbnRRdWVyaWVzPC9BPgorPEJSPgorPEEgSFJFRj0iRlNNUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5GU01RdWVyaWVzPC9BPgorPEJSPgorPEEgSFJFRj0iR2VuZXJhbFF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiIHRhcmdldD0iY2xhc3NGcmFtZSI+R2VuZXJhbFF1ZXJpZXM8L0E+Cis8QlI+Cis8QSBIUkVGPSJNTVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiIHRhcmdldD0iY2xhc3NGcmFtZSI+TU1RdWVyaWVzPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+CisKKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzllODFjZQotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwKQEAgLTAsMCArMSwxNzcgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjYuMF8yNCkgb24gV2VkIE9jdCAxNyAxOTozMzowNSBDRVNUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJkYXRlIiBDT05URU5UPSIyMDEyLTEwLTE3Ij4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgaWYgKGxvY2F0aW9uLmhyZWYuaW5kZXhPZignaXMtZXh0ZXJuYWw9dHJ1ZScpID09IC0xKSB7CisgICAgICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI7CisgICAgfQorfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKzxIUj4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlBhY2thZ2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPlBSRVYgUEFDS0FHRTwvQj48L0E+Jm5ic3A7CismbmJzcDtORVhUIFBBQ0tBR0U8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxIMj4KK1BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcworPC9IMj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5DbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5BcmNoaXRlY3R1cmVRdWVyaWVzPC9BPjwvQj48L1REPgorPFREPiZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+RGF0YVR5cGVRdWVyaWVzPC9BPjwvQj48L1REPgorPFREPiZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RlcGxveW1lbnRRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5EZXBsb3ltZW50UXVlcmllczwvQT48L0I+PC9URD4KKzxURD4mbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9GU01RdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5GU01RdWVyaWVzPC9BPjwvQj48L1REPgorPFREPiZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj5HZW5lcmFsUXVlcmllczwvQT48L0I+PC9URD4KKzxURD4mbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPk1NUXVlcmllczwvQT48L0I+PC9URD4KKzxURD5FbnRyeSBwb2ludCBvZiB0aGUgJ01NUXVlcmllcycgZ2VuZXJhdGlvbiBtb2R1bGUuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7CisKKzxQPgorPERMPgorPC9ETD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlBhY2thZ2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPlBSRVYgUEFDS0FHRTwvQj48L0E+Jm5ic3A7CismbmJzcDtORVhUIFBBQ0tBR0U8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9wYWNrYWdlLXRyZWUuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvcGFja2FnZS10cmVlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDI4YTlmNwotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvcGFja2FnZS10cmVlLmh0bWwKQEAgLTAsMCArMSwxNTUgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjYuMF8yNCkgb24gV2VkIE9jdCAxNyAxOTozMzowNSBDRVNUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIENsYXNzIEhpZXJhcmNoeQorPC9USVRMRT4KKworPE1FVEEgTkFNRT0iZGF0ZSIgQ09OVEVOVD0iMjAxMi0xMC0xNyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIGlmIChsb2NhdGlvbi5ocmVmLmluZGV4T2YoJ2lzLWV4dGVybmFsPXRydWUnKSA9PSAtMSkgeworICAgICAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMgQ2xhc3MgSGllcmFyY2h5IjsKKyAgICB9Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorPEhSPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VHJlZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vcGFja2FnZS10cmVlLmh0bWwiPjxCPlBSRVY8L0I+PC9BPiZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvcGFja2FnZS10cmVlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KK0hpZXJhcmNoeSBGb3IgUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzCis8L0gyPgorPC9DRU5URVI+Cis8REw+Cis8RFQ+PEI+UGFja2FnZSBIaWVyYXJjaGllczo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+QWxsIFBhY2thZ2VzPC9BPjwvREw+Cis8SFI+Cis8SDI+CitDbGFzcyBIaWVyYXJjaHkKKzwvSDI+Cis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5qYXZhLmxhbmcuT2JqZWN0PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuYWNjZWxlby5lbmdpbmUuc2VydmljZS5BYnN0cmFjdEFjY2VsZW9HZW5lcmF0b3I8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPjxCPk1NUXVlcmllczwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPjxCPkFyY2hpdGVjdHVyZVF1ZXJpZXM8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+PEI+RGF0YVR5cGVRdWVyaWVzPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EZXBsb3ltZW50UXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+PEI+RGVwbG95bWVudFF1ZXJpZXM8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0ZTTVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPjxCPkZTTVF1ZXJpZXM8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj48Qj5HZW5lcmFsUXVlcmllczwvQj48L0E+PC9VTD4KKzwvVUw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5UcmVlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXRyZWUuaHRtbCI+PEI+UFJFVjwvQj48L0E+Jm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9wYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvcGFja2FnZS11c2UuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvcGFja2FnZS11c2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lYTNhMDczCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9wYWNrYWdlLXVzZS5odG1sCkBAIC0wLDAgKzEsMTQ0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS42LjBfMjQpIG9uIFdlZCBPY3QgMTcgMTk6MzM6MDUgQ0VTVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBQYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImRhdGUiIENPTlRFTlQ9IjIwMTItMTAtMTciPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBpZiAobG9jYXRpb24uaHJlZi5pbmRleE9mKCdpcy1leHRlcm5hbD10cnVlJykgPT0gLTEpIHsKKyAgICAgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIFBhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI7CisgICAgfQorfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKzxIUj4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL3BhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBQYWNrYWdlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXM8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9wYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vcGFja2FnZS1mcmFtZS5odG1sIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL3BhY2thZ2UtZnJhbWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40YzkzYjhjCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL3BhY2thZ2UtZnJhbWUuaHRtbApAQCAtMCwwICsxLDMyIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS42LjBfMjQpIG9uIFdlZCBPY3QgMTcgMTk6MzM6MDUgQ0VTVCAyMDEyIC0tPgorPFRJVExFPgorb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJkYXRlIiBDT05URU5UPSIyMDEyLTEwLTE3Ij4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiPgorPEZPTlQgc2l6ZT0iKzEiIENMQVNTPSJGcmFtZVRpdGxlRm9udCI+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb248L0E+PC9GT05UPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgTk9XUkFQPjxGT05UIHNpemU9IisxIiBDTEFTUz0iRnJhbWVIZWFkaW5nRm9udCI+CitDbGFzc2VzPC9GT05UPiZuYnNwOworPEZPTlQgQ0xBU1M9IkZyYW1lSXRlbUZvbnQiPgorPEJSPgorPEEgSFJFRj0iQWN0aXZhdG9yLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24iIHRhcmdldD0iY2xhc3NGcmFtZSI+QWN0aXZhdG9yPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+CisKKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL3BhY2thZ2Utc3VtbWFyeS5odG1sIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL3BhY2thZ2Utc3VtbWFyeS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ1ZjIxMTQKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vcGFja2FnZS1zdW1tYXJ5Lmh0bWwKQEAgLTAsMCArMSwxNTcgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjYuMF8yNCkgb24gV2VkIE9jdCAxNyAxOTozMzowNSBDRVNUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24KKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImRhdGUiIENPTlRFTlQ9IjIwMTItMTAtMTciPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBpZiAobG9jYXRpb24uaHJlZi5pbmRleE9mKCdpcy1leHRlcm5hbD10cnVlJykgPT0gLTEpIHsKKyAgICAgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24iOworICAgIH0KK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+Cis8SFI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5QYWNrYWdlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYgUEFDS0FHRSZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5ORVhUIFBBQ0tBR0U8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8SDI+CitQYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbgorPC9IMj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5DbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uIj5BY3RpdmF0b3I8L0E+PC9CPjwvVEQ+Cis8VEQ+VGhlIGFjdGl2YXRvciBjbGFzcyBjb250cm9scyB0aGUgcGx1Zy1pbiBsaWZlIGN5Y2xlLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworCis8UD4KKzxETD4KKzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5QYWNrYWdlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYgUEFDS0FHRSZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5ORVhUIFBBQ0tBR0U8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXRyZWUuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXRyZWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMTBhZWM2Ci0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL3BhY2thZ2UtdHJlZS5odG1sCkBAIC0wLDAgKzEsMTU2IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS42LjBfMjQpIG9uIFdlZCBPY3QgMTcgMTk6MzM6MDUgQ0VTVCAyMDEyIC0tPgorPFRJVExFPgorb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uIENsYXNzIEhpZXJhcmNoeQorPC9USVRMRT4KKworPE1FVEEgTkFNRT0iZGF0ZSIgQ09OVEVOVD0iMjAxMi0xMC0xNyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIGlmIChsb2NhdGlvbi5ocmVmLmluZGV4T2YoJ2lzLWV4dGVybmFsPXRydWUnKSA9PSAtMSkgeworICAgICAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbiBDbGFzcyBIaWVyYXJjaHkiOworICAgIH0KK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+Cis8SFI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5UcmVlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvcGFja2FnZS10cmVlLmh0bWwiPjxCPk5FWFQ8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorSGllcmFyY2h5IEZvciBQYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbgorPC9IMj4KKzwvQ0VOVEVSPgorPERMPgorPERUPjxCPlBhY2thZ2UgSGllcmFyY2hpZXM6PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy10cmVlLmh0bWwiPkFsbCBQYWNrYWdlczwvQT48L0RMPgorPEhSPgorPEgyPgorQ2xhc3MgSGllcmFyY2h5Cis8L0gyPgorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+amF2YS5sYW5nLk9iamVjdDxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5QbHVnaW4gKGltcGxlbWVudHMgb3JnLm9zZ2kuZnJhbWV3b3JrLkJ1bmRsZUFjdGl2YXRvcikKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9BY3RpdmF0b3IuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbiI+PEI+QWN0aXZhdG9yPC9CPjwvQT48L1VMPgorPC9VTD4KKzwvVUw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5UcmVlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9tbXF1ZXJpZXMvcGFja2FnZS10cmVlLmh0bWwiPjxCPk5FWFQ8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXVzZS5odG1sIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL3BhY2thZ2UtdXNlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjRkNzU4NgotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXVzZS5odG1sCkBAIC0wLDAgKzEsMTcwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS42LjBfMjQpIG9uIFdlZCBPY3QgMTcgMTk6MzM6MDUgQ0VTVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBQYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbgorPC9USVRMRT4KKworPE1FVEEgTkFNRT0iZGF0ZSIgQ09OVEVOVD0iMjAxMi0xMC0xNyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIGlmIChsb2NhdGlvbi5ocmVmLmluZGV4T2YoJ2lzLWV4dGVybmFsPXRydWUnKSA9PSAtMSkgeworICAgICAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24iOworICAgIH0KK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+Cis8SFI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL3BhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBQYWNrYWdlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbjwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbjwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb248L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbiI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK0NsYXNzZXMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbjwvQT4gdXNlZCBieSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL2NsYXNzLXVzZS9BY3RpdmF0b3IuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24iPjxCPkFjdGl2YXRvcjwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgYWN0aXZhdG9yIGNsYXNzIGNvbnRyb2xzIHRoZSBwbHVnLWluIGxpZmUgY3ljbGUuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vcGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL292ZXJ2aWV3LWZyYW1lLmh0bWwgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3ZlcnZpZXctZnJhbWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jY2NlOTVkCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL292ZXJ2aWV3LWZyYW1lLmh0bWwKQEAgLTAsMCArMSw0NCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNi4wXzI0KSBvbiBXZWQgT2N0IDE3IDE5OjMzOjA1IENFU1QgMjAxMiAtLT4KKzxUSVRMRT4KK092ZXJ2aWV3IExpc3QKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImRhdGUiIENPTlRFTlQ9IjIwMTItMTAtMTciPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0ic3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSI+CisKKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBTVU1NQVJZPSIiPgorPFRSPgorPFRIIEFMSUdOPSJsZWZ0IiBOT1dSQVA+PEZPTlQgc2l6ZT0iKzEiIENMQVNTPSJGcmFtZVRpdGxlRm9udCI+Cis8Qj48L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgTk9XUkFQPjxGT05UIENMQVNTPSJGcmFtZUl0ZW1Gb250Ij48QSBIUkVGPSJhbGxjbGFzc2VzLWZyYW1lLmh0bWwiIHRhcmdldD0icGFja2FnZUZyYW1lIj5BbGwgQ2xhc3NlczwvQT48L0ZPTlQ+Cis8UD4KKzxGT05UIHNpemU9IisxIiBDTEFTUz0iRnJhbWVIZWFkaW5nRm9udCI+CitQYWNrYWdlczwvRk9OVD4KKzxCUj4KKzxGT05UIENMQVNTPSJGcmFtZUl0ZW1Gb250Ij48QSBIUkVGPSJvcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLWZyYW1lLmh0bWwiIHRhcmdldD0icGFja2FnZUZyYW1lIj5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb248L0E+PC9GT05UPgorPEJSPgorPEZPTlQgQ0xBU1M9IkZyYW1lSXRlbUZvbnQiPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9wYWNrYWdlLWZyYW1lLmh0bWwiIHRhcmdldD0icGFja2FnZUZyYW1lIj5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzPC9BPjwvRk9OVD4KKzxCUj4KKzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKworPFA+CismbmJzcDsKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vdmVydmlldy1zdW1tYXJ5Lmh0bWwgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3ZlcnZpZXctc3VtbWFyeS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ1YWQzZTkKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvb3ZlcnZpZXctc3VtbWFyeS5odG1sCkBAIC0wLDAgKzEsMTU1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS42LjBfMjQpIG9uIFdlZCBPY3QgMTcgMTk6MzM6MDUgQ0VTVCAyMDEyIC0tPgorPFRJVExFPgorT3ZlcnZpZXcKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImRhdGUiIENPTlRFTlQ9IjIwMTItMTAtMTciPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0ic3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBpZiAobG9jYXRpb24uaHJlZi5pbmRleE9mKCdpcy1leHRlcm5hbD10cnVlJykgPT0gLTEpIHsKKyAgICAgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJPdmVydmlldyI7CisgICAgfQorfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKzxIUj4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJvdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJkZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImluZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJoZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9ImluZGV4Lmh0bWw/b3ZlcnZpZXctc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Im92ZXJ2aWV3LXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSJhbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+UGFja2FnZXM8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjIwJSI+PEI+PEEgSFJFRj0ib3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbjwvQT48L0I+PC9URD4KKzxURD4mbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIyMCUiPjxCPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllczwvQT48L0I+PC9URD4KKzxURD4mbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CisKKzxQPgorJm5ic3A7PEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5PdmVydmlldzwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Im92ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImRlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImhlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iaW5kZXguaHRtbD9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0ib3ZlcnZpZXctc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9ImFsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSJhbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL292ZXJ2aWV3LXRyZWUuaHRtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vdmVydmlldy10cmVlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGU2N2M5NQotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9vdmVydmlldy10cmVlLmh0bWwKQEAgLTAsMCArMSwxNTcgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjYuMF8yNCkgb24gV2VkIE9jdCAxNyAxOTozMzowNSBDRVNUIDIwMTIgLS0+Cis8VElUTEU+CitDbGFzcyBIaWVyYXJjaHkKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImRhdGUiIENPTlRFTlQ9IjIwMTItMTAtMTciPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0ic3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBpZiAobG9jYXRpb24uaHJlZi5pbmRleE9mKCdpcy1leHRlcm5hbD10cnVlJykgPT0gLTEpIHsKKyAgICAgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJDbGFzcyBIaWVyYXJjaHkiOworICAgIH0KK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+Cis8SFI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJvdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5UcmVlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJpbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSJpbmRleC5odG1sP292ZXJ2aWV3LXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJvdmVydmlldy10cmVlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9ImFsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KK0hpZXJhcmNoeSBGb3IgQWxsIFBhY2thZ2VzPC9IMj4KKzwvQ0VOVEVSPgorPERMPgorPERUPjxCPlBhY2thZ2UgSGllcmFyY2hpZXM6PC9CPjxERD48QSBIUkVGPSJvcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9wYWNrYWdlLXRyZWUuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uPC9BPiwgPEEgSFJFRj0ib3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL3BhY2thZ2UtdHJlZS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzPC9BPjwvREw+Cis8SFI+Cis8SDI+CitDbGFzcyBIaWVyYXJjaHkKKzwvSDI+Cis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5qYXZhLmxhbmcuT2JqZWN0PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuYWNjZWxlby5lbmdpbmUuc2VydmljZS5BYnN0cmFjdEFjY2VsZW9HZW5lcmF0b3I8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9NTVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPjxCPk1NUXVlcmllczwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPjxCPkFyY2hpdGVjdHVyZVF1ZXJpZXM8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+PEI+RGF0YVR5cGVRdWVyaWVzPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL21tcXVlcmllcy9EZXBsb3ltZW50UXVlcmllcy5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcyI+PEI+RGVwbG95bWVudFF1ZXJpZXM8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0ZTTVF1ZXJpZXMuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMiPjxCPkZTTVF1ZXJpZXM8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2Uvcm9ib3RtbC9nZW5lcmF0b3JzL2FjY2VsZW8vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzIj48Qj5HZW5lcmFsUXVlcmllczwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLlBsdWdpbiAoaW1wbGVtZW50cyBvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQWN0aXZhdG9yKQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3JvYm90bWwvZ2VuZXJhdG9ycy9hY2NlbGVvL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uIj48Qj5BY3RpdmF0b3I8L0I+PC9BPjwvVUw+Cis8L1VMPgorPC9VTD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Im92ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlRyZWU8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJkZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImluZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJoZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9ImluZGV4Lmh0bWw/b3ZlcnZpZXctdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Im92ZXJ2aWV3LXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSJhbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9wYWNrYWdlLWxpc3QgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2MvcGFja2FnZS1saXN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFkMDFlODUKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2MvcGFja2FnZS1saXN0CkBAIC0wLDAgKzEsMiBAQAorb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uCitvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzCmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2MvcmVzb3VyY2VzL2luaGVyaXQuZ2lmIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL3Jlc291cmNlcy9pbmhlcml0LmdpZgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jODE0ODY3Ci0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vZG9jL3Jlc291cmNlcy9pbmhlcml0LmdpZgpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvc3R5bGVzaGVldC5jc3MgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9kb2Mvc3R5bGVzaGVldC5jc3MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmVhOWU1MQotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2RvYy9zdHlsZXNoZWV0LmNzcwpAQCAtMCwwICsxLDI5IEBACisvKiBKYXZhZG9jIHN0eWxlIHNoZWV0ICovCisKKy8qIERlZmluZSBjb2xvcnMsIGZvbnRzIGFuZCBvdGhlciBzdHlsZSBhdHRyaWJ1dGVzIGhlcmUgdG8gb3ZlcnJpZGUgdGhlIGRlZmF1bHRzICovCisKKy8qIFBhZ2UgYmFja2dyb3VuZCBjb2xvciAqLworYm9keSB7IGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7IGNvbG9yOiMwMDAwMDAgfQorCisvKiBIZWFkaW5ncyAqLworaDEgeyBmb250LXNpemU6IDE0NSUgfQorCisvKiBUYWJsZSBjb2xvcnMgKi8KKy5UYWJsZUhlYWRpbmdDb2xvciAgICAgeyBiYWNrZ3JvdW5kOiAjQ0NDQ0ZGOyBjb2xvcjojMDAwMDAwIH0gLyogRGFyayBtYXV2ZSAqLworLlRhYmxlU3ViSGVhZGluZ0NvbG9yICB7IGJhY2tncm91bmQ6ICNFRUVFRkY7IGNvbG9yOiMwMDAwMDAgfSAvKiBMaWdodCBtYXV2ZSAqLworLlRhYmxlUm93Q29sb3IgICAgICAgICB7IGJhY2tncm91bmQ6ICNGRkZGRkY7IGNvbG9yOiMwMDAwMDAgfSAvKiBXaGl0ZSAqLworCisvKiBGb250IHVzZWQgaW4gbGVmdC1oYW5kIGZyYW1lIGxpc3RzICovCisuRnJhbWVUaXRsZUZvbnQgICB7IGZvbnQtc2l6ZTogMTAwJTsgZm9udC1mYW1pbHk6IEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7IGNvbG9yOiMwMDAwMDAgfQorLkZyYW1lSGVhZGluZ0ZvbnQgeyBmb250LXNpemU6ICA5MCU7IGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmOyBjb2xvcjojMDAwMDAwIH0KKy5GcmFtZUl0ZW1Gb250ICAgIHsgZm9udC1zaXplOiAgOTAlOyBmb250LWZhbWlseTogSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjsgY29sb3I6IzAwMDAwMCB9CisKKy8qIE5hdmlnYXRpb24gYmFyIGZvbnRzIGFuZCBjb2xvcnMgKi8KKy5OYXZCYXJDZWxsMSAgICB7IGJhY2tncm91bmQtY29sb3I6I0VFRUVGRjsgY29sb3I6IzAwMDAwMH0gLyogTGlnaHQgbWF1dmUgKi8KKy5OYXZCYXJDZWxsMVJldiB7IGJhY2tncm91bmQtY29sb3I6IzAwMDA4QjsgY29sb3I6I0ZGRkZGRn0gLyogRGFyayBCbHVlICovCisuTmF2QmFyRm9udDEgICAgeyBmb250LWZhbWlseTogQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjsgY29sb3I6IzAwMDAwMDtjb2xvcjojMDAwMDAwO30KKy5OYXZCYXJGb250MVJldiB7IGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmOyBjb2xvcjojRkZGRkZGO2NvbG9yOiNGRkZGRkY7fQorCisuTmF2QmFyQ2VsbDIgICAgeyBmb250LWZhbWlseTogQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjsgYmFja2dyb3VuZC1jb2xvcjojRkZGRkZGOyBjb2xvcjojMDAwMDAwfQorLk5hdkJhckNlbGwzICAgIHsgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7IGJhY2tncm91bmQtY29sb3I6I0ZGRkZGRjsgY29sb3I6IzAwMDAwMH0KKwpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vcG9tLnhtbCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL3BvbS54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2ZhZWZhYQotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL3BvbS54bWwKQEAgLTAsMCArMSwxMSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxwcm9qZWN0PgorCTxtb2RlbFZlcnNpb24+NC4wLjA8L21vZGVsVmVyc2lvbj4KKwk8cGFyZW50PgorCQk8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9yczwvYXJ0aWZhY3RJZD4KKwkJPGdyb3VwSWQ+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sPC9ncm91cElkPgorCQk8dmVyc2lvbj4xLjIuMC1TTkFQU0hPVDwvdmVyc2lvbj4KKwk8L3BhcmVudD4KKwk8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb248L2FydGlmYWN0SWQ+CisJPHBhY2thZ2luZz5lY2xpcHNlLXBsdWdpbjwvcGFja2FnaW5nPgorPC9wcm9qZWN0PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vQWN0aXZhdG9yLmphdmEgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL0FjdGl2YXRvci5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjcwYzEzOGQKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL0FjdGl2YXRvci5qYXZhCkBAIC0wLDAgKzEsNjggQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMDgsIDIwMTAgT2Jlby4KKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogICAgIE9iZW8gLSBpbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb247CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWUuUGx1Z2luOworaW1wb3J0IG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0OworCisvKioKKyAqIFRoZSBhY3RpdmF0b3IgY2xhc3MgY29udHJvbHMgdGhlIHBsdWctaW4gbGlmZSBjeWNsZS4KKyAqLworcHVibGljIGNsYXNzIEFjdGl2YXRvciBleHRlbmRzIFBsdWdpbiB7CisKKwkvKioKKwkgKiBUaGUgcGx1Zy1pbiBJRC4KKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIFN0cmluZyBQTFVHSU5fSUQgPSAib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uIjsKKworCS8qKgorCSAqIFRoZSBzaGFyZWQgaW5zdGFuY2UuCisJICovCisJcHJpdmF0ZSBzdGF0aWMgQWN0aXZhdG9yIHBsdWdpbjsKKworCS8qKgorCSAqIFRoZSBjb25zdHJ1Y3Rvci4KKwkgKi8KKwlwdWJsaWMgQWN0aXZhdG9yKCkgeworCX0KKworCS8qKgorCSAqIHtAaW5oZXJpdERvY30KKwkgKgorCSAqIEBzZWUgb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLlBsdWdpbiNzdGFydChvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQ29udGV4dCkKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBzdGFydChCdW5kbGVDb250ZXh0IGNvbnRleHQpIHRocm93cyBFeGNlcHRpb24geworCQlzdXBlci5zdGFydChjb250ZXh0KTsKKwkJcGx1Z2luID0gdGhpczsKKwl9CisKKwkvKioKKwkgKiB7QGluaGVyaXREb2N9CisJICoKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5QbHVnaW4jc3RvcChvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQ29udGV4dCkKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBzdG9wKEJ1bmRsZUNvbnRleHQgY29udGV4dCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCXBsdWdpbiA9IG51bGw7CisJCXN1cGVyLnN0b3AoY29udGV4dCk7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgc2hhcmVkIGluc3RhbmNlLgorCSAqCisJICogQHJldHVybiB0aGUgc2hhcmVkIGluc3RhbmNlCisJICovCisJcHVibGljIHN0YXRpYyBBY3RpdmF0b3IgZ2V0RGVmYXVsdCgpIHsKKwkJcmV0dXJuIHBsdWdpbjsKKwl9CisKK30KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lZjljOGVlCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsCkBAIC0wLDAgKzEsMzY2NCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzx4bWk6WE1JIHhtaTp2ZXJzaW9uPSIyLjAiIHhtbG5zOnhtaT0iaHR0cDovL3d3dy5vbWcub3JnL1hNSSIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgeG1sbnM6ZWNvcmU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUiIHhtbG5zOm10bD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9hY2NlbGVvL210bC8zLjAiIHhtbG5zOm9jbC5lY29yZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvRWNvcmUiPgorICA8bXRsOk1vZHVsZSBuYW1lPSJBcmNoaXRlY3R1cmVRdWVyaWVzIiBuc1VSST0ib3JnOjplY2xpcHNlOjpwYXB5cnVzOjpyb2JvdG1sOjpnZW5lcmF0b3JzOjpjb21tb246Om1tcXVlcmllczo6QXJjaGl0ZWN0dXJlUXVlcmllcyIgc3RhcnRIZWFkZXJQb3NpdGlvbj0iNjE4IiBlbmRIZWFkZXJQb3NpdGlvbj0iOTQwIj4KKyAgICA8aW5wdXQ+CisgICAgICA8dGFrZXNUeXBlc0Zyb20gaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvIi8+CisgICAgPC9pbnB1dD4KKyAgICA8aW5wdXQ+CisgICAgICA8dGFrZXNUeXBlc0Zyb20gaHJlZj0iaHR0cDovL1BhcHlydXMvUm9ib3RNTC8xIy8iLz4KKyAgICA8L2lucHV0PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0U291cmNlUG9ydE5hbWUiIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImNvbm4iPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii81Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJnZXRTb3VyY2VQb3J0TmFtZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoQ29ubmVjdG9yKSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImNvbm4iIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldFNvdXJjZVBvcnROYW1lL2Nvbm4iPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgIDwvZXhwcmVzc2lvbj4KKyAgICAgIDx0eXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0U291cmNlQ29tcG9uZW50Rm9yQ29ubmVjdG9yIiB2aXNpYmlsaXR5PSJQdWJsaWMiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJjb25uIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvOCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0U291cmNlQ29tcG9uZW50Rm9yQ29ubmVjdG9yKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcikiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShDb25uZWN0b3IpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iY29ubiIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0U291cmNlQ29tcG9uZW50Rm9yQ29ubmVjdG9yL2Nvbm4iPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgIDwvZXhwcmVzc2lvbj4KKyAgICAgIDx0eXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0U291cmNlQ29tcG9uZW50VHlwZU5hbWVGb3JDb25uZWN0b3IiIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImNvbm4iPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii8xMSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0U291cmNlQ29tcG9uZW50VHlwZU5hbWVGb3JDb25uZWN0b3Iob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKENvbm5lY3RvcikiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjb25uIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRTb3VyY2VDb21wb25lbnRUeXBlTmFtZUZvckNvbm5lY3Rvci9jb25uIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6UXVlcnkiIG5hbWU9ImdldFNvdXJjZUNvbXBvbmVudEluc3RhbmNlTmFtZUZvckNvbm5lY3RvciIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iY29ubiI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzE0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJnZXRTb3VyY2VDb21wb25lbnRJbnN0YW5jZU5hbWVGb3JDb25uZWN0b3Iob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKENvbm5lY3RvcikiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjb25uIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRTb3VyY2VDb21wb25lbnRJbnN0YW5jZU5hbWVGb3JDb25uZWN0b3IvY29ubiI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgICAgPHR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJnZXREZXN0UG9ydE5hbWUiIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImNvbm4iPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii8xNyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0RGVzdFBvcnROYW1lKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcikiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShDb25uZWN0b3IpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iY29ubiIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0RGVzdFBvcnROYW1lL2Nvbm4iPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgIDwvZXhwcmVzc2lvbj4KKyAgICAgIDx0eXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0RGVzdENvbXBvbmVudEZvckNvbm5lY3RvciIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iY29ubiI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzIwIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJnZXREZXN0Q29tcG9uZW50Rm9yQ29ubmVjdG9yKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcikiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShDb25uZWN0b3IpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iY29ubiIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0RGVzdENvbXBvbmVudEZvckNvbm5lY3Rvci9jb25uIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6UXVlcnkiIG5hbWU9ImdldERlc3RDb21wb25lbnRUeXBlTmFtZUZvckNvbm5lY3RvciIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iY29ubiI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzIzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJnZXREZXN0Q29tcG9uZW50VHlwZU5hbWVGb3JDb25uZWN0b3Iob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKENvbm5lY3RvcikiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjb25uIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXREZXN0Q29tcG9uZW50VHlwZU5hbWVGb3JDb25uZWN0b3IvY29ubiI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgICAgPHR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJnZXREZXN0Q29tcG9uZW50SW5zdGFuY2VOYW1lRm9yQ29ubmVjdG9yIiB2aXNpYmlsaXR5PSJQdWJsaWMiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJjb25uIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvMjYiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImdldERlc3RDb21wb25lbnRJbnN0YW5jZU5hbWVGb3JDb25uZWN0b3Iob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKENvbm5lY3RvcikiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjb25uIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXREZXN0Q29tcG9uZW50SW5zdGFuY2VOYW1lRm9yQ29ubmVjdG9yL2Nvbm4iPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgIDwvZXhwcmVzc2lvbj4KKyAgICAgIDx0eXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0SW50ZXJuYWxDb25uZWN0b3JzIiB2aXNpYmlsaXR5PSJQdWJsaWMiIHR5cGU9Ii8zL1NlcXVlbmNlKENvbm5lY3RvcikiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJjIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii8yOSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJnZXRJbnRlcm5hbENvbm5lY3RvcnMob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoQ2xhc3MpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRJbnRlcm5hbENvbm5lY3RvcnMvYyI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJnZXRFeHRlcm5hbElucHV0Q29ubmVjdG9ycyIgdmlzaWJpbGl0eT0iUHVibGljIiB0eXBlPSIvMy9TZXF1ZW5jZShDb25uZWN0b3IpIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iYyI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvMzIiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0RXh0ZXJuYWxJbnB1dENvbm5lY3RvcnMob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoQ2xhc3MpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRFeHRlcm5hbElucHV0Q29ubmVjdG9ycy9jIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgIDwvZXhwcmVzc2lvbj4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6UXVlcnkiIG5hbWU9ImdldEV4dGVybmFsT3V0cHV0Q29ubmVjdG9ycyIgdmlzaWJpbGl0eT0iUHVibGljIiB0eXBlPSIvMy9TZXF1ZW5jZShDb25uZWN0b3IpIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iYyI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvMzUiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0RXh0ZXJuYWxPdXRwdXRDb25uZWN0b3JzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKENsYXNzKSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYyIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0RXh0ZXJuYWxPdXRwdXRDb25uZWN0b3JzL2MiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0QWxsU3ViQ29tcG9uZW50c0luQ2xhc3MiIHZpc2liaWxpdHk9IlB1YmxpYyIgdHlwZT0iLzMvU2VxdWVuY2UoUHJvcGVydHkpIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iY2xhc3MiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzM4Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImdldEFsbFN1YkNvbXBvbmVudHNJbkNsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKENsYXNzKSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iY2xhc3MiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldEFsbFN1YkNvbXBvbmVudHNJbkNsYXNzL2NsYXNzIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgIDwvZXhwcmVzc2lvbj4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6UXVlcnkiIG5hbWU9ImdldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnQiIHZpc2liaWxpdHk9IlB1YmxpYyIgdHlwZT0iLzMvU2VxdWVuY2UoUHJvcGVydHkpIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iY2xhc3MiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzQxIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImdldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnQob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoQ2xhc3MpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjbGFzcyIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudC9jbGFzcyI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJnZXRMZXZlbDFTdWJDb21wb25lbnRzRm9yQ29tcG9uZW50V2l0aFN0ZXJlb3R5cGUiIHZpc2liaWxpdHk9IlB1YmxpYyIgdHlwZT0iLzMvU2VxdWVuY2UoUHJvcGVydHkpIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iY2xhc3MiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0ic3RlcmVvdHlwZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvNDQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudFdpdGhTdGVyZW90eXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzLCBqYXZhLmxhbmcuU3RyaW5nKSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKE9jbEFueSkiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImNsYXNzIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRMZXZlbDFTdWJDb21wb25lbnRzRm9yQ29tcG9uZW50V2l0aFN0ZXJlb3R5cGUvY2xhc3MiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic3RlcmVvdHlwZSIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudFdpdGhTdGVyZW90eXBlL3N0ZXJlb3R5cGUiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50IiB2aXNpYmlsaXR5PSJQdWJsaWMiIHR5cGU9Ii8zL1NlcXVlbmNlKFBvcnQpIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iZWx0Ij4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzQ3Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoRWxlbWVudCkiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZWx0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRPdXRwdXRQb3J0c0ZvckVsZW1lbnQvZWx0Ij4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0SW5wdXRQb3J0c0ZvckVsZW1lbnQiIHZpc2liaWxpdHk9IlB1YmxpYyIgdHlwZT0iLzMvU2VxdWVuY2UoUG9ydCkiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJlbHQiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvNTAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJnZXRJbnB1dFBvcnRzRm9yRWxlbWVudChvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKEVsZW1lbnQpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0SW5wdXRQb3J0c0ZvckVsZW1lbnQvZWx0Ij4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0T25Qb3J0IiB2aXNpYmlsaXR5PSJQdWJsaWMiIHR5cGU9Ii8zL1NlcXVlbmNlKFByb3BlcnR5KSI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9InBhcmFtIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9QYXJhbWV0ZXIiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvNTMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUGFyYW1ldGVyIi8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0T25Qb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhcmFtZXRlcikiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShQYXJhbWV0ZXIpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BhcmFtZXRlciIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icGFyYW0iIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldE9uUG9ydC9wYXJhbSI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUGFyYW1ldGVyIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0Q29tcG9uZW50TW9kZWxzIiB2aXNpYmlsaXR5PSJQdWJsaWMiIHR5cGU9Ii8zL1NlcXVlbmNlKE5hbWVkRWxlbWVudCkiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJtb2RlbCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvNTYiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0Q29tcG9uZW50TW9kZWxzKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsKSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKE1vZGVsKSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldENvbXBvbmVudE1vZGVscy9tb2RlbCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJpc01hY3JvQ29tcG9uZW50IiB2aXNpYmlsaXR5PSJQdWJsaWMiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJjbGFzcyI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvNTkiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iaXNNYWNyb0NvbXBvbmVudChvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShDbGFzcykiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImNsYXNzIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9pc01hY3JvQ29tcG9uZW50L2NsYXNzIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgIDwvZXhwcmVzc2lvbj4KKyAgICAgIDx0eXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6UXVlcnkiIG5hbWU9Imhhc05hdGl2ZUltcGxlbWVudGF0aW9uIiB2aXNpYmlsaXR5PSJQdWJsaWMiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJjbGFzcyI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvNjIiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iaGFzTmF0aXZlSW1wbGVtZW50YXRpb24ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoQ2xhc3MpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjbGFzcyIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvaGFzTmF0aXZlSW1wbGVtZW50YXRpb24vY2xhc3MiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgICAgPHR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0TmF0aXZlTGlicmFyeVBhdGhGb3JDb21wb25lbnQiIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImNsYXNzIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii82NSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJnZXROYXRpdmVMaWJyYXJ5UGF0aEZvckNvbXBvbmVudChvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShDbGFzcykiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImNsYXNzIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXROYXRpdmVMaWJyYXJ5UGF0aEZvckNvbXBvbmVudC9jbGFzcyI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6UXVlcnkiIG5hbWU9ImdldE5hdGl2ZUNvbXBvbmVudE5hbWVGb3JDb21wb25lbnQiIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImNsYXNzIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii82OCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJnZXROYXRpdmVDb21wb25lbnROYW1lRm9yQ29tcG9uZW50KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKENsYXNzKSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iY2xhc3MiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldE5hdGl2ZUNvbXBvbmVudE5hbWVGb3JDb21wb25lbnQvY2xhc3MiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgICAgPHR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJnZXRDb21wb25lbnRGaWxlTmFtZSIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iY2xhc3NpZmllciI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3NpZmllciIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImVuZCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvNzEiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3NpZmllciIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJnZXRDb21wb25lbnRGaWxlTmFtZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzc2lmaWVyLGphdmEubGFuZy5TdHJpbmcpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoT2NsQW55KSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzc2lmaWVyIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjbGFzc2lmaWVyIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRDb21wb25lbnRGaWxlTmFtZS9jbGFzc2lmaWVyIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzc2lmaWVyIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZW5kIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRDb21wb25lbnRGaWxlTmFtZS9lbmQiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgICAgPHR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJnZXRPdXRwdXRQb3J0QnVmZmVyU2l6ZSIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0icCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii83NCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImdldE91dHB1dFBvcnRCdWZmZXJTaXplKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoUG9ydCkiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0T3V0cHV0UG9ydEJ1ZmZlclNpemUvcCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgIDwvZXhwcmVzc2lvbj4KKyAgICAgIDx0eXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6UXVlcnkiIG5hbWU9ImlzRGF0YUZsb3dQb3J0IiB2aXNpYmlsaXR5PSJQdWJsaWMiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJlbHQiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvNzciPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJpc0RhdGFGbG93UG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKFBvcnQpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvaXNEYXRhRmxvd1BvcnQvZWx0Ij4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgICAgPHR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iaXNTZXJ2aWNlUG9ydCIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iZWx0Ij4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzgwIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iaXNTZXJ2aWNlUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKFBvcnQpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvaXNTZXJ2aWNlUG9ydC9lbHQiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJkZWZpbmVzQ29ubmVjdGlvbnMiIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImNsIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii84MyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJkZWZpbmVzQ29ubmVjdGlvbnMob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoQ2xhc3MpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZGVmaW5lc0Nvbm5lY3Rpb25zL2NsIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgIDwvZXhwcmVzc2lvbj4KKyAgICAgIDx0eXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6UXVlcnkiIG5hbWU9ImlzQ29ubmVjdGlvblZhbGlkIiB2aXNpYmlsaXR5PSJQdWJsaWMiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJjb25uIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvODYiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImlzQ29ubmVjdGlvblZhbGlkKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcikiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShDb25uZWN0b3IpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iY29ubiIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvaXNDb25uZWN0aW9uVmFsaWQvY29ubiI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgICAgPHR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0Q29ubmVjdGlvbkRlZmluaXRpb24iIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImNvbm4iPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii84OSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0Q29ubmVjdGlvbkRlZmluaXRpb24ob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKENvbm5lY3RvcikiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjb25uIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRDb25uZWN0aW9uRGVmaW5pdGlvbi9jb25uIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6UXVlcnkiIG5hbWU9ImdldENvbm5lY3RlZFBvcnQiIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9InBvcnQiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvOTIiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJnZXRDb25uZWN0ZWRQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoUG9ydCkiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icG9ydCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0Q29ubmVjdGVkUG9ydC9wb3J0Ij4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgICAgPHR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6UXVlcnkiIG5hbWU9ImdldENvbm5lY3Rpb25zRnJvbVBvcnQiIHZpc2liaWxpdHk9IlB1YmxpYyIgdHlwZT0iLzMvU2VxdWVuY2UoQ29ubmVjdG9yKSI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9InBvcnQiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvOTUiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJnZXRDb25uZWN0aW9uc0Zyb21Qb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoUG9ydCkiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icG9ydCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0Q29ubmVjdGlvbnNGcm9tUG9ydC9wb3J0Ij4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iaXNBbklucHV0UG9ydCIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0icG9ydCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii85OCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImlzQW5JbnB1dFBvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShQb3J0KSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9pc0FuSW5wdXRQb3J0L3BvcnQiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJpc0FuT3V0cHV0UG9ydCIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0icG9ydCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii8xMDEiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJpc0FuT3V0cHV0UG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKFBvcnQpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InBvcnQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2lzQW5PdXRwdXRQb3J0L3BvcnQiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJpc0FQcm92aWRlZFBvcnQiIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9InBvcnQiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvMTA0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iaXNBUHJvdmlkZWRQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoUG9ydCkiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icG9ydCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvaXNBUHJvdmlkZWRQb3J0L3BvcnQiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJpc0FSZXF1aXJlZFBvcnQiIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9InBvcnQiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvMTA3Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iaXNBUmVxdWlyZWRQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoUG9ydCkiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icG9ydCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvaXNBUmVxdWlyZWRQb3J0L3BvcnQiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJnZXRDb25uZWN0aW9uT3RoZXJTaWRlIiB2aXNpYmlsaXR5PSJQdWJsaWMiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJwb3J0Ij4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzExMCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImdldENvbm5lY3Rpb25PdGhlclNpZGUob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShQb3J0KSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRDb25uZWN0aW9uT3RoZXJTaWRlL3BvcnQiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6UXVlcnkiIG5hbWU9ImlzUG9ydENvbm5lY3RlZCIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0icG9ydCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii8xMTMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJpc1BvcnRDb25uZWN0ZWQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShQb3J0KSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9pc1BvcnRDb25uZWN0ZWQvcG9ydCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgIDwvZXhwcmVzc2lvbj4KKyAgICAgIDx0eXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6UXVlcnkiIG5hbWU9ImlzUm9vdE1vZGVsIiB2aXNpYmlsaXR5PSJQdWJsaWMiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJlbHQiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzExNiI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJpc1Jvb3RNb2RlbChvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCkiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShNb2RlbCkiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvaXNSb290TW9kZWwvZWx0Ij4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgIDwvZXhwcmVzc2lvbj4KKyAgICAgIDx0eXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6UXVlcnkiIG5hbWU9ImdldFJvb3RDbGFzc0Zvck1vZGVsIiB2aXNpYmlsaXR5PSJQdWJsaWMiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJtb2RlbCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvMTE5Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImdldFJvb3RDbGFzc0Zvck1vZGVsKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsKSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKE1vZGVsKSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldFJvb3RDbGFzc0Zvck1vZGVsL21vZGVsIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgIDwvZXhwcmVzc2lvbj4KKyAgICAgIDx0eXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iaXNBbkFuY2VzdG9yT2YiIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImN1cnJlbnRfY2xhc3MiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0ib3RoZXJfY2xhc3MiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzEyMiI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJpc0FuQW5jZXN0b3JPZihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcywgb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoQ2xhc3MpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjdXJyZW50X2NsYXNzIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9pc0FuQW5jZXN0b3JPZi9jdXJyZW50X2NsYXNzIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im90aGVyX2NsYXNzIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9pc0FuQW5jZXN0b3JPZi9vdGhlcl9jbGFzcyI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJpc0FuSW5wdXRPdXRwdXRQb3J0IiB2aXNpYmlsaXR5PSJQdWJsaWMiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJwb3J0Ij4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzEyNSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImlzQW5JbnB1dE91dHB1dFBvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShQb3J0KSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9pc0FuSW5wdXRPdXRwdXRQb3J0L3BvcnQiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgIDwvbXRsOk1vZHVsZT4KKyAgPGVjb3JlOkVQYWNrYWdlIG5hbWU9ImFkZGl0aW9ucyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTdHJpbmdfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSW50ZWdlcl9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUmVhbF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1JlYWwiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRU9iamVjdF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldFNvdXJjZVBvcnROYW1lIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZ2V0U291cmNlUG9ydE5hbWUiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29ubiI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0U291cmNlQ29tcG9uZW50Rm9yQ29ubmVjdG9yIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZ2V0U291cmNlQ29tcG9uZW50Rm9yQ29ubmVjdG9yIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbm4iPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldFNvdXJjZUNvbXBvbmVudFR5cGVOYW1lRm9yQ29ubmVjdG9yIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZ2V0U291cmNlQ29tcG9uZW50VHlwZU5hbWVGb3JDb25uZWN0b3IiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29ubiI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0U291cmNlQ29tcG9uZW50SW5zdGFuY2VOYW1lRm9yQ29ubmVjdG9yIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZ2V0U291cmNlQ29tcG9uZW50SW5zdGFuY2VOYW1lRm9yQ29ubmVjdG9yIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbm4iPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldERlc3RQb3J0TmFtZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dldERlc3RQb3J0TmFtZSIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb25uIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXREZXN0Q29tcG9uZW50Rm9yQ29ubmVjdG9yIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVzdENvbXBvbmVudEZvckNvbm5lY3RvciIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb25uIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXREZXN0Q29tcG9uZW50VHlwZU5hbWVGb3JDb25uZWN0b3IiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZXREZXN0Q29tcG9uZW50VHlwZU5hbWVGb3JDb25uZWN0b3IiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29ubiI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0RGVzdENvbXBvbmVudEluc3RhbmNlTmFtZUZvckNvbm5lY3RvciI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dldERlc3RDb21wb25lbnRJbnN0YW5jZU5hbWVGb3JDb25uZWN0b3IiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29ubiI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0SW50ZXJuYWxDb25uZWN0b3JzIiBlVHlwZT0iLzMvU2VxdWVuY2UoQ29ubmVjdG9yKSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dldEludGVybmFsQ29ubmVjdG9ycyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRFeHRlcm5hbElucHV0Q29ubmVjdG9ycyIgZVR5cGU9Ii8zL1NlcXVlbmNlKENvbm5lY3RvcikiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZXRFeHRlcm5hbElucHV0Q29ubmVjdG9ycyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRFeHRlcm5hbE91dHB1dENvbm5lY3RvcnMiIGVUeXBlPSIvMy9TZXF1ZW5jZShDb25uZWN0b3IpIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZ2V0RXh0ZXJuYWxPdXRwdXRDb25uZWN0b3JzIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldEFsbFN1YkNvbXBvbmVudHNJbkNsYXNzIiBlVHlwZT0iLzMvU2VxdWVuY2UoUHJvcGVydHkpIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZ2V0QWxsU3ViQ29tcG9uZW50c0luQ2xhc3MiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNsYXNzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnQiIGVUeXBlPSIvMy9TZXF1ZW5jZShQcm9wZXJ0eSkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZXRMZXZlbDFTdWJDb21wb25lbnRzRm9yQ29tcG9uZW50Ii8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjbGFzcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRMZXZlbDFTdWJDb21wb25lbnRzRm9yQ29tcG9uZW50V2l0aFN0ZXJlb3R5cGUiIGVUeXBlPSIvMy9TZXF1ZW5jZShQcm9wZXJ0eSkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZXRMZXZlbDFTdWJDb21wb25lbnRzRm9yQ29tcG9uZW50V2l0aFN0ZXJlb3R5cGUiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNsYXNzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJzdGVyZW90eXBlIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldE91dHB1dFBvcnRzRm9yRWxlbWVudCIgZVR5cGU9Ii8zL1NlcXVlbmNlKFBvcnQpIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50Ii8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbHQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRJbnB1dFBvcnRzRm9yRWxlbWVudCIgZVR5cGU9Ii8zL1NlcXVlbmNlKFBvcnQpIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZ2V0SW5wdXRQb3J0c0ZvckVsZW1lbnQiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImVsdCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldE9uUG9ydCIgZVR5cGU9Ii8zL1NlcXVlbmNlKFByb3BlcnR5KSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dldE9uUG9ydCIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icGFyYW0iPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUGFyYW1ldGVyIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldENvbXBvbmVudE1vZGVscyIgZVR5cGU9Ii8zL1NlcXVlbmNlKE5hbWVkRWxlbWVudCkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZXRDb21wb25lbnRNb2RlbHMiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im1vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzTWFjcm9Db21wb25lbnQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9pc01hY3JvQ29tcG9uZW50Ii8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjbGFzcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJoYXNOYXRpdmVJbXBsZW1lbnRhdGlvbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2hhc05hdGl2ZUltcGxlbWVudGF0aW9uIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjbGFzcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXROYXRpdmVMaWJyYXJ5UGF0aEZvckNvbXBvbmVudCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dldE5hdGl2ZUxpYnJhcnlQYXRoRm9yQ29tcG9uZW50Ii8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNsYXNzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldE5hdGl2ZUNvbXBvbmVudE5hbWVGb3JDb21wb25lbnQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZXROYXRpdmVDb21wb25lbnROYW1lRm9yQ29tcG9uZW50Ii8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNsYXNzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldENvbXBvbmVudEZpbGVOYW1lIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZ2V0Q29tcG9uZW50RmlsZU5hbWUiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY2xhc3NpZmllciI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzc2lmaWVyIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbmQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0T3V0cHV0UG9ydEJ1ZmZlclNpemUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZXRPdXRwdXRQb3J0QnVmZmVyU2l6ZSIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzRGF0YUZsb3dQb3J0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvaXNEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImVsdCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzU2VydmljZVBvcnQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9pc1NlcnZpY2VQb3J0Ii8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbHQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJkZWZpbmVzQ29ubmVjdGlvbnMiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9kZWZpbmVzQ29ubmVjdGlvbnMiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzQ29ubmVjdGlvblZhbGlkIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvaXNDb25uZWN0aW9uVmFsaWQiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbm4iPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldENvbm5lY3Rpb25EZWZpbml0aW9uIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZ2V0Q29ubmVjdGlvbkRlZmluaXRpb24iLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29ubiI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0Q29ubmVjdGVkUG9ydCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dldENvbm5lY3RlZFBvcnQiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJwb3J0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0Q29ubmVjdGlvbnNGcm9tUG9ydCIgZVR5cGU9Ii8zL1NlcXVlbmNlKENvbm5lY3RvcikiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZXRDb25uZWN0aW9uc0Zyb21Qb3J0Ii8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJwb3J0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNBbklucHV0UG9ydCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2lzQW5JbnB1dFBvcnQiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InBvcnQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc0FuT3V0cHV0UG9ydCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2lzQW5PdXRwdXRQb3J0Ii8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJwb3J0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNBUHJvdmlkZWRQb3J0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvaXNBUHJvdmlkZWRQb3J0Ii8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJwb3J0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNBUmVxdWlyZWRQb3J0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvaXNBUmVxdWlyZWRQb3J0Ii8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJwb3J0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0Q29ubmVjdGlvbk90aGVyU2lkZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dldENvbm5lY3Rpb25PdGhlclNpZGUiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icG9ydCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzUG9ydENvbm5lY3RlZCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2lzUG9ydENvbm5lY3RlZCIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icG9ydCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzUm9vdE1vZGVsIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvaXNSb290TW9kZWwiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImVsdCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRSb290Q2xhc3NGb3JNb2RlbCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dldFJvb3RDbGFzc0Zvck1vZGVsIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im1vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzQW5BbmNlc3Rvck9mIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvaXNBbkFuY2VzdG9yT2YiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImN1cnJlbnRfY2xhc3MiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im90aGVyX2NsYXNzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzQW5JbnB1dE91dHB1dFBvcnQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9pc0FuSW5wdXRPdXRwdXRQb3J0Ii8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJwb3J0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPY2xBbnlfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9Imludm9rZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwgbm9uLXN0YW5kYXJkIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNsYXNzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJtZXRob2QiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImFyZ3VtZW50cyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6U2VxdWVuY2VUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2FjY2VsZW8vbXRsLzMuMC9tdGxub25zdGRsaWIuZWNvcmUjLy9TZXF1ZW5jZShPY2xBbnkpIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ29sbGVjdGlvbihUKV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0NvbGxlY3Rpb24oVCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU2VxdWVuY2UoVClfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TZXF1ZW5jZShUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPcmRlcmVkU2V0KFQpX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT3JkZXJlZFNldChUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb25uZWN0b3JfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ2xhc3NfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFbGVtZW50X0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQYXJhbWV0ZXJfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9QYXJhbWV0ZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iTW9kZWxfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDbGFzc2lmaWVyX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3NpZmllciIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQb3J0X0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgIDwvZWNvcmU6RVBhY2thZ2U+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8ZWNvcmU6RVBhY2thZ2UgbmFtZT0iY29sbGVjdGlvbnMiPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIG5hbWU9IlNlcXVlbmNlKENvbm5lY3RvcikiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuTGlzdCI+CisgICAgICA8ZWxlbWVudFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIG5hbWU9IlNlcXVlbmNlKFByb3BlcnR5KSIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEudXRpbC5MaXN0Ij4KKyAgICAgIDxlbGVtZW50VHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJvY2wuZWNvcmU6U2VxdWVuY2VUeXBlIiBuYW1lPSJTZXF1ZW5jZShQb3J0KSIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEudXRpbC5MaXN0Ij4KKyAgICAgIDxlbGVtZW50VHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIG5hbWU9IlNlcXVlbmNlKE5hbWVkRWxlbWVudCkiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuTGlzdCI+CisgICAgICA8ZWxlbWVudFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIG5hbWU9IlNlcXVlbmNlKE9jbEFueSkiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuTGlzdCI+CisgICAgICA8ZWxlbWVudFR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgbmFtZT0iU2VxdWVuY2UoQ2xhc3MpIiBpbnN0YW5jZUNsYXNzTmFtZT0iamF2YS51dGlsLkxpc3QiPgorICAgICAgPGVsZW1lbnRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIG5hbWU9IlNlcXVlbmNlKEVsZW1lbnQpIiBpbnN0YW5jZUNsYXNzTmFtZT0iamF2YS51dGlsLkxpc3QiPgorICAgICAgPGVsZW1lbnRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgbmFtZT0iU2VxdWVuY2UoUGFyYW1ldGVyKSIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEudXRpbC5MaXN0Ij4KKyAgICAgIDxlbGVtZW50VHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUGFyYW1ldGVyIi8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgbmFtZT0iU2VxdWVuY2UoTW9kZWwpIiBpbnN0YW5jZUNsYXNzTmFtZT0iamF2YS51dGlsLkxpc3QiPgorICAgICAgPGVsZW1lbnRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICA8L2Vjb3JlOkVQYWNrYWdlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9QYXJhbWV0ZXIiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9QYXJhbWV0ZXIiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzaWZpZXIiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzc2lmaWVyIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxlY29yZTpFQW5ub3RhdGlvbiBzb3VyY2U9InBvc2l0aW9ucyI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4wIiByZWZlcmVuY2VzPSIvMC9nZXRTb3VyY2VQb3J0TmFtZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzIyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk0MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEiIHJlZmVyZW5jZXM9Ii8wL2dldFNvdXJjZVBvcnROYW1lL2Nvbm4iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3NzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yIiByZWZlcmVuY2VzPSIvMC9nZXRTb3VyY2VQb3J0TmFtZS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3ODUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTM4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zIiByZWZlcmVuY2VzPSIvMC9nZXRTb3VyY2VQb3J0TmFtZS8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40IiByZWZlcmVuY2VzPSIvMC9nZXRTb3VyY2VQb3J0TmFtZS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUiIHJlZmVyZW5jZXM9Ii8wL2dldFNvdXJjZVBvcnROYW1lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4NzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42IiByZWZlcmVuY2VzPSIvMC9nZXRTb3VyY2VQb3J0TmFtZS8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTIzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNyIgcmVmZXJlbmNlcz0iLzAvZ2V0U291cmNlUG9ydE5hbWUvJS8lLjIvJS9jb25uIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTM2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44IiByZWZlcmVuY2VzPSIvMC9nZXRTb3VyY2VDb21wb25lbnRGb3JDb25uZWN0b3IiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTkyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOSIgcmVmZXJlbmNlcz0iLzAvZ2V0U291cmNlQ29tcG9uZW50Rm9yQ29ubmVjdG9yL2Nvbm4iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk4OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDA1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTAiIHJlZmVyZW5jZXM9Ii8wL2dldFNvdXJjZUNvbXBvbmVudEZvckNvbm5lY3Rvci8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDIyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExODgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExIiByZWZlcmVuY2VzPSIvMC9nZXRTb3VyY2VDb21wb25lbnRGb3JDb25uZWN0b3IvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTIiIHJlZmVyZW5jZXM9Ii8wL2dldFNvdXJjZUNvbXBvbmVudEZvckNvbm5lY3Rvci8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwMjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTEwNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTMiIHJlZmVyZW5jZXM9Ii8wL2dldFNvdXJjZUNvbXBvbmVudEZvckNvbm5lY3Rvci8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTEwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTcxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNCIgcmVmZXJlbmNlcz0iLzAvZ2V0U291cmNlQ29tcG9uZW50Rm9yQ29ubmVjdG9yLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExODciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1IiByZWZlcmVuY2VzPSIvMC9nZXRTb3VyY2VDb21wb25lbnRGb3JDb25uZWN0b3IvJS8lLjIvJS9jb25uIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTgyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2IiByZWZlcmVuY2VzPSIvMC9nZXRTb3VyY2VDb21wb25lbnRUeXBlTmFtZUZvckNvbm5lY3RvciI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNDU2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTciIHJlZmVyZW5jZXM9Ii8wL2dldFNvdXJjZUNvbXBvbmVudFR5cGVOYW1lRm9yQ29ubmVjdG9yL2Nvbm4iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEyNDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTI2MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4IiByZWZlcmVuY2VzPSIvMC9nZXRTb3VyY2VDb21wb25lbnRUeXBlTmFtZUZvckNvbm5lY3Rvci8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjc4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE0NTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5IiByZWZlcmVuY2VzPSIvMC9nZXRTb3VyY2VDb21wb25lbnRUeXBlTmFtZUZvckNvbm5lY3Rvci8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMCIgcmVmZXJlbmNlcz0iLzAvZ2V0U291cmNlQ29tcG9uZW50VHlwZU5hbWVGb3JDb25uZWN0b3IvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjg1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEzNjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIxIiByZWZlcmVuY2VzPSIvMC9nZXRTb3VyY2VDb21wb25lbnRUeXBlTmFtZUZvckNvbm5lY3Rvci8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTM2MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNDM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMiIgcmVmZXJlbmNlcz0iLzAvZ2V0U291cmNlQ29tcG9uZW50VHlwZU5hbWVGb3JDb25uZWN0b3IvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0MzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQ1MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjMiIHJlZmVyZW5jZXM9Ii8wL2dldFNvdXJjZUNvbXBvbmVudFR5cGVOYW1lRm9yQ29ubmVjdG9yLyUvJS4yLyUvY29ubiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTQ0NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNDUwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNCIgcmVmZXJlbmNlcz0iLzAvZ2V0U291cmNlQ29tcG9uZW50SW5zdGFuY2VOYW1lRm9yQ29ubmVjdG9yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNDU4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE3MjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNSIgcmVmZXJlbmNlcz0iLzAvZ2V0U291cmNlQ29tcG9uZW50SW5zdGFuY2VOYW1lRm9yQ29ubmVjdG9yL2Nvbm4iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE1MTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTUzMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI2IiByZWZlcmVuY2VzPSIvMC9nZXRTb3VyY2VDb21wb25lbnRJbnN0YW5jZU5hbWVGb3JDb25uZWN0b3IvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTU0NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNzI0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNyIgcmVmZXJlbmNlcz0iLzAvZ2V0U291cmNlQ29tcG9uZW50SW5zdGFuY2VOYW1lRm9yQ29ubmVjdG9yLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4IiByZWZlcmVuY2VzPSIvMC9nZXRTb3VyY2VDb21wb25lbnRJbnN0YW5jZU5hbWVGb3JDb25uZWN0b3IvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNTUzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE2MzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5IiByZWZlcmVuY2VzPSIvMC9nZXRTb3VyY2VDb21wb25lbnRJbnN0YW5jZU5hbWVGb3JDb25uZWN0b3IvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE2MzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTcwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzAiIHJlZmVyZW5jZXM9Ii8wL2dldFNvdXJjZUNvbXBvbmVudEluc3RhbmNlTmFtZUZvckNvbm5lY3Rvci8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTcwOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNzIzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMSIgcmVmZXJlbmNlcz0iLzAvZ2V0U291cmNlQ29tcG9uZW50SW5zdGFuY2VOYW1lRm9yQ29ubmVjdG9yLyUvJS4yLyUvY29ubiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTcxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNzIyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMiIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVzdFBvcnROYW1lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNzMwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5NDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjMyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMyIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVzdFBvcnROYW1lL2Nvbm4iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE3NjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTc3NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM0IiByZWZlcmVuY2VzPSIvMC9nZXREZXN0UG9ydE5hbWUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTc5MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTQyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNSIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVzdFBvcnROYW1lLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM2IiByZWZlcmVuY2VzPSIvMC9nZXREZXN0UG9ydE5hbWUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNzk4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4NzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM3IiByZWZlcmVuY2VzPSIvMC9nZXREZXN0UG9ydE5hbWUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4NzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTkyNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzgiIHJlZmVyZW5jZXM9Ii8wL2dldERlc3RQb3J0TmFtZS8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTkyNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTQxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zOSIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVzdFBvcnROYW1lLyUvJS4yLyUvY29ubiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTkzNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTQwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MCIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVzdENvbXBvbmVudEZvckNvbm5lY3RvciI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTk0OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTkyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzNSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDEiIHJlZmVyZW5jZXM9Ii8wL2dldERlc3RDb21wb25lbnRGb3JDb25uZWN0b3IvY29ubiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTk5MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMDA3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzNSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDIiIHJlZmVyZW5jZXM9Ii8wL2dldERlc3RDb21wb25lbnRGb3JDb25uZWN0b3IvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjAyNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTg4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MyIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVzdENvbXBvbmVudEZvckNvbm5lY3Rvci8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NCIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVzdENvbXBvbmVudEZvckNvbm5lY3Rvci8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIwMzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjEwOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDUiIHJlZmVyZW5jZXM9Ii8wL2dldERlc3RDb21wb25lbnRGb3JDb25uZWN0b3IvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxMDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjE3MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDYiIHJlZmVyZW5jZXM9Ii8wL2dldERlc3RDb21wb25lbnRGb3JDb25uZWN0b3IvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxNzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjE4NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDciIHJlZmVyZW5jZXM9Ii8wL2dldERlc3RDb21wb25lbnRGb3JDb25uZWN0b3IvJS8lLjIvJS9jb25uIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMTgyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIxODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ4IiByZWZlcmVuY2VzPSIvMC9nZXREZXN0Q29tcG9uZW50VHlwZU5hbWVGb3JDb25uZWN0b3IiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxOTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjQ1MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ5IiByZWZlcmVuY2VzPSIvMC9nZXREZXN0Q29tcG9uZW50VHlwZU5hbWVGb3JDb25uZWN0b3IvY29ubiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjI0NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzOCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTAiIHJlZmVyZW5jZXM9Ii8wL2dldERlc3RDb21wb25lbnRUeXBlTmFtZUZvckNvbm5lY3Rvci8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMjc2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI0NDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUxIiByZWZlcmVuY2VzPSIvMC9nZXREZXN0Q29tcG9uZW50VHlwZU5hbWVGb3JDb25uZWN0b3IvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTIiIHJlZmVyZW5jZXM9Ii8wL2dldERlc3RDb21wb25lbnRUeXBlTmFtZUZvckNvbm5lY3Rvci8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyODMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjM2MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTMiIHJlZmVyZW5jZXM9Ii8wL2dldERlc3RDb21wb25lbnRUeXBlTmFtZUZvckNvbm5lY3Rvci8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjM2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNDMxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41NCIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVzdENvbXBvbmVudFR5cGVOYW1lRm9yQ29ubmVjdG9yLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNDMzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI0NDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU1IiByZWZlcmVuY2VzPSIvMC9nZXREZXN0Q29tcG9uZW50VHlwZU5hbWVGb3JDb25uZWN0b3IvJS8lLjIvJS9jb25uIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNDQyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI0NDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU2IiByZWZlcmVuY2VzPSIvMC9nZXREZXN0Q29tcG9uZW50SW5zdGFuY2VOYW1lRm9yQ29ubmVjdG9yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNDU0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI3MjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41NyIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVzdENvbXBvbmVudEluc3RhbmNlTmFtZUZvckNvbm5lY3Rvci9jb25uIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNTA5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI1MjUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41OCIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVzdENvbXBvbmVudEluc3RhbmNlTmFtZUZvckNvbm5lY3Rvci8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNTQwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI3MTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU5IiByZWZlcmVuY2VzPSIvMC9nZXREZXN0Q29tcG9uZW50SW5zdGFuY2VOYW1lRm9yQ29ubmVjdG9yLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjYwIiByZWZlcmVuY2VzPSIvMC9nZXREZXN0Q29tcG9uZW50SW5zdGFuY2VOYW1lRm9yQ29ubmVjdG9yLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjU0NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjI0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MSIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVzdENvbXBvbmVudEluc3RhbmNlTmFtZUZvckNvbm5lY3Rvci8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjYyNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjk5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MiIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVzdENvbXBvbmVudEluc3RhbmNlTmFtZUZvckNvbm5lY3Rvci8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjcwMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNzE1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MyIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVzdENvbXBvbmVudEluc3RhbmNlTmFtZUZvckNvbm5lY3Rvci8lLyUuMi8lL2Nvbm4iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI3MTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjcxNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjQiIHJlZmVyZW5jZXM9Ii8wL2dldEludGVybmFsQ29ubmVjdG9ycyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjcyMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyOTQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0NCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjUiIHJlZmVyZW5jZXM9Ii8wL2dldEludGVybmFsQ29ubmVjdG9ycy9jIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNzU4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI3NjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQ0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42NiIgcmVmZXJlbmNlcz0iLzAvZ2V0SW50ZXJuYWxDb25uZWN0b3JzLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI3OTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjk0NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjciIHJlZmVyZW5jZXM9Ii8wL2dldEludGVybmFsQ29ubmVjdG9ycy8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42OCIgcmVmZXJlbmNlcz0iLzAvZ2V0SW50ZXJuYWxDb25uZWN0b3JzLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjgwMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyODc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42OSIgcmVmZXJlbmNlcz0iLzAvZ2V0SW50ZXJuYWxDb25uZWN0b3JzLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyODgwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI5MzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjcwIiByZWZlcmVuY2VzPSIvMC9nZXRJbnRlcm5hbENvbm5lY3RvcnMvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI5MzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjk0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzEiIHJlZmVyZW5jZXM9Ii8wL2dldEludGVybmFsQ29ubmVjdG9ycy8lLyUuMi8lL2MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI5NDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjk0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzIiIHJlZmVyZW5jZXM9Ii8wL2dldEV4dGVybmFsSW5wdXRDb25uZWN0b3JzIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyOTUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMxODgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQ3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43MyIgcmVmZXJlbmNlcz0iLzAvZ2V0RXh0ZXJuYWxJbnB1dENvbm5lY3RvcnMvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjk5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMDAxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzQiIHJlZmVyZW5jZXM9Ii8wL2dldEV4dGVybmFsSW5wdXRDb25uZWN0b3JzLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMwMjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzE4NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzUiIHJlZmVyZW5jZXM9Ii8wL2dldEV4dGVybmFsSW5wdXRDb25uZWN0b3JzLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjc2IiByZWZlcmVuY2VzPSIvMC9nZXRFeHRlcm5hbElucHV0Q29ubmVjdG9ycy8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMwMzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzExMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzciIHJlZmVyZW5jZXM9Ii8wL2dldEV4dGVybmFsSW5wdXRDb25uZWN0b3JzLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMTE0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMxNzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjc4IiByZWZlcmVuY2VzPSIvMC9nZXRFeHRlcm5hbElucHV0Q29ubmVjdG9ycy8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzE3MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMTgzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43OSIgcmVmZXJlbmNlcz0iLzAvZ2V0RXh0ZXJuYWxJbnB1dENvbm5lY3RvcnMvJS8lLjIvJS9jIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMTgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMxODIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjgwIiByZWZlcmVuY2VzPSIvMC9nZXRFeHRlcm5hbE91dHB1dENvbm5lY3RvcnMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMxOTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzQyOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjgxIiByZWZlcmVuY2VzPSIvMC9nZXRFeHRlcm5hbE91dHB1dENvbm5lY3RvcnMvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzIzMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMjQxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1MCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODIiIHJlZmVyZW5jZXM9Ii8wL2dldEV4dGVybmFsT3V0cHV0Q29ubmVjdG9ycy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMjY5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM0MjUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjgzIiByZWZlcmVuY2VzPSIvMC9nZXRFeHRlcm5hbE91dHB1dENvbm5lY3RvcnMvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODQiIHJlZmVyZW5jZXM9Ii8wL2dldEV4dGVybmFsT3V0cHV0Q29ubmVjdG9ycy8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMyNzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzM1MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODUiIHJlZmVyZW5jZXM9Ii8wL2dldEV4dGVybmFsT3V0cHV0Q29ubmVjdG9ycy8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzM1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNDExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44NiIgcmVmZXJlbmNlcz0iLzAvZ2V0RXh0ZXJuYWxPdXRwdXRDb25uZWN0b3JzLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNDEzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM0MjQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjg3IiByZWZlcmVuY2VzPSIvMC9nZXRFeHRlcm5hbE91dHB1dENvbm5lY3RvcnMvJS8lLjIvJS9jIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNDIyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM0MjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjg4IiByZWZlcmVuY2VzPSIvMC9nZXRBbGxTdWJDb21wb25lbnRzSW5DbGFzcyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzQzMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNjc2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1MyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODkiIHJlZmVyZW5jZXM9Ii8wL2dldEFsbFN1YkNvbXBvbmVudHNJbkNsYXNzL2NsYXNzIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNDcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM0ODUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjUzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45MCIgcmVmZXJlbmNlcz0iLzAvZ2V0QWxsU3ViQ29tcG9uZW50c0luQ2xhc3MvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzUxMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNjcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45MSIgcmVmZXJlbmNlcz0iLzAvZ2V0QWxsU3ViQ29tcG9uZW50c0luQ2xhc3MvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTIiIHJlZmVyZW5jZXM9Ii8wL2dldEFsbFN1YkNvbXBvbmVudHNJbkNsYXNzLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzUxOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNTk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45MyIgcmVmZXJlbmNlcz0iLzAvZ2V0QWxsU3ViQ29tcG9uZW50c0luQ2xhc3MvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM1OTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzY1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTQiIHJlZmVyZW5jZXM9Ii8wL2dldEFsbFN1YkNvbXBvbmVudHNJbkNsYXNzLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNjU2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM2NzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjk1IiByZWZlcmVuY2VzPSIvMC9nZXRBbGxTdWJDb21wb25lbnRzSW5DbGFzcy8lLyUuMi8lL2NsYXNzIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNjY1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM2NzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjk2IiByZWZlcmVuY2VzPSIvMC9nZXRMZXZlbDFTdWJDb21wb25lbnRzRm9yQ29tcG9uZW50Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNjc4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM5MzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjU2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45NyIgcmVmZXJlbmNlcz0iLzAvZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudC9jbGFzcyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzcyNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNzQwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1NiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTgiIHJlZmVyZW5jZXM9Ii8wL2dldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzc2NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzOTM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45OSIgcmVmZXJlbmNlcz0iLzAvZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudC8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDAiIHJlZmVyZW5jZXM9Ii8wL2dldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnQvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNzc0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM4NTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwMSIgcmVmZXJlbmNlcz0iLzAvZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudC8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzg1MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzOTE3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDIiIHJlZmVyZW5jZXM9Ii8wL2dldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnQvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM5MTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzkzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTAzIiByZWZlcmVuY2VzPSIvMC9nZXRMZXZlbDFTdWJDb21wb25lbnRzRm9yQ29tcG9uZW50LyUvJS4yLyUvY2xhc3MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM5MjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzkzMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTA0IiByZWZlcmVuY2VzPSIvMC9nZXRMZXZlbDFTdWJDb21wb25lbnRzRm9yQ29tcG9uZW50V2l0aFN0ZXJlb3R5cGUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM5NDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDI4MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwNSIgcmVmZXJlbmNlcz0iLzAvZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudFdpdGhTdGVyZW90eXBlL2NsYXNzIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MDA0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQwMTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjU5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDYiIHJlZmVyZW5jZXM9Ii8wL2dldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnRXaXRoU3RlcmVvdHlwZS9zdGVyZW90eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MDE5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQwMzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjU5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDciIHJlZmVyZW5jZXM9Ii8wL2dldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnRXaXRoU3RlcmVvdHlwZS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MDY1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQyNzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwOCIgcmVmZXJlbmNlcz0iLzAvZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudFdpdGhTdGVyZW90eXBlLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwOSIgcmVmZXJlbmNlcz0iLzAvZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudFdpdGhTdGVyZW90eXBlLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDA3MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MTQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTAiIHJlZmVyZW5jZXM9Ii8wL2dldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnRXaXRoU3RlcmVvdHlwZS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDE1MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MjQ3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTEiIHJlZmVyZW5jZXM9Ii8wL2dldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnRXaXRoU3RlcmVvdHlwZS8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDI0OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0Mjc2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTIiIHJlZmVyZW5jZXM9Ii8wL2dldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnRXaXRoU3RlcmVvdHlwZS8lLyUuMi8lL2NsYXNzIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MjU4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQyNjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExMyIgcmVmZXJlbmNlcz0iLzAvZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudFdpdGhTdGVyZW90eXBlLyUvJS4yLyUuMS9zdGVyZW90eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MjY1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQyNzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExNCIgcmVmZXJlbmNlcz0iLzAvZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MjgzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ1MjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjYyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTUiIHJlZmVyZW5jZXM9Ii8wL2dldE91dHB1dFBvcnRzRm9yRWxlbWVudC9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQzMjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDMzNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExNiIgcmVmZXJlbmNlcz0iLzAvZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQzNTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDUxNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTE3IiByZWZlcmVuY2VzPSIvMC9nZXRPdXRwdXRQb3J0c0ZvckVsZW1lbnQvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTE4IiByZWZlcmVuY2VzPSIvMC9nZXRPdXRwdXRQb3J0c0ZvckVsZW1lbnQvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MzY1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ0NDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExOSIgcmVmZXJlbmNlcz0iLzAvZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50LyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NDQ0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ1MDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyMCIgcmVmZXJlbmNlcz0iLzAvZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50LyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NTAyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ1MTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyMSIgcmVmZXJlbmNlcz0iLzAvZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50LyUvJS4yLyUvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NTExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ1MTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyMiIgcmVmZXJlbmNlcz0iLzAvZ2V0SW5wdXRQb3J0c0ZvckVsZW1lbnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ1MjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDc1NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyMyIgcmVmZXJlbmNlcz0iLzAvZ2V0SW5wdXRQb3J0c0ZvckVsZW1lbnQvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NTYwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ1NzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjY1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjQiIHJlZmVyZW5jZXM9Ii8wL2dldElucHV0UG9ydHNGb3JFbGVtZW50LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ1OTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDc1MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTI1IiByZWZlcmVuY2VzPSIvMC9nZXRJbnB1dFBvcnRzRm9yRWxlbWVudC8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjYiIHJlZmVyZW5jZXM9Ii8wL2dldElucHV0UG9ydHNGb3JFbGVtZW50LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDYwMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NjgwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjciIHJlZmVyZW5jZXM9Ii8wL2dldElucHV0UG9ydHNGb3JFbGVtZW50LyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NjgyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ3MzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyOCIgcmVmZXJlbmNlcz0iLzAvZ2V0SW5wdXRQb3J0c0ZvckVsZW1lbnQvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ3MzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDc1MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTI5IiByZWZlcmVuY2VzPSIvMC9nZXRJbnB1dFBvcnRzRm9yRWxlbWVudC8lLyUuMi8lL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDc0OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NzUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMzAiIHJlZmVyZW5jZXM9Ii8wL2dldE9uUG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDc1OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0OTcxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTMxIiByZWZlcmVuY2VzPSIvMC9nZXRPblBvcnQvcGFyYW0iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ3ODMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDgwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzMiIgcmVmZXJlbmNlcz0iLzAvZ2V0T25Qb3J0LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ4MjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDk2NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTMzIiByZWZlcmVuY2VzPSIvMC9nZXRPblBvcnQvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTM0IiByZWZlcmVuY2VzPSIvMC9nZXRPblBvcnQvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0ODM0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ5MDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzNSIgcmVmZXJlbmNlcz0iLzAvZ2V0T25Qb3J0LyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0OTA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ5NDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzNiIgcmVmZXJlbmNlcz0iLzAvZ2V0T25Qb3J0LyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0OTUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ5NjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzNyIgcmVmZXJlbmNlcz0iLzAvZ2V0T25Qb3J0LyUvJS4yLyUvcGFyYW0iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ5NjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDk2NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTM4IiByZWZlcmVuY2VzPSIvMC9nZXRDb21wb25lbnRNb2RlbHMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ5NzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTIwNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNzEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzOSIgcmVmZXJlbmNlcz0iLzAvZ2V0Q29tcG9uZW50TW9kZWxzL21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MDA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUwMTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjcxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNDAiIHJlZmVyZW5jZXM9Ii8wL2dldENvbXBvbmVudE1vZGVscy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MDUwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUyMDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0MSIgcmVmZXJlbmNlcz0iLzAvZ2V0Q29tcG9uZW50TW9kZWxzLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0MiIgcmVmZXJlbmNlcz0iLzAvZ2V0Q29tcG9uZW50TW9kZWxzLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTA1NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MTM0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNDMiIHJlZmVyZW5jZXM9Ii8wL2dldENvbXBvbmVudE1vZGVscy8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTEzNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MTg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNDQiIHJlZmVyZW5jZXM9Ii8wL2dldENvbXBvbmVudE1vZGVscy8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTE4NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MjAxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNDUiIHJlZmVyZW5jZXM9Ii8wL2dldENvbXBvbmVudE1vZGVscy8lLyUuMi8lL21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MTk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUyMDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0NiIgcmVmZXJlbmNlcz0iLzAvaXNNYWNyb0NvbXBvbmVudCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTIwOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NDI0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3NCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQ3IiByZWZlcmVuY2VzPSIvMC9pc01hY3JvQ29tcG9uZW50L2NsYXNzIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MjM5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUyNTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijc0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNDgiIHJlZmVyZW5jZXM9Ii8wL2lzTWFjcm9Db21wb25lbnQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTI2OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NDE5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNDkiIHJlZmVyZW5jZXM9Ii8wL2lzTWFjcm9Db21wb25lbnQvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTUwIiByZWZlcmVuY2VzPSIvMC9pc01hY3JvQ29tcG9uZW50LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTI3NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MzUzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNTEiIHJlZmVyZW5jZXM9Ii8wL2lzTWFjcm9Db21wb25lbnQvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUzNTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTQwMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTUyIiByZWZlcmVuY2VzPSIvMC9pc01hY3JvQ29tcG9uZW50LyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NDAzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU0MTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1MyIgcmVmZXJlbmNlcz0iLzAvaXNNYWNyb0NvbXBvbmVudC8lLyUuMi8lL2NsYXNzIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NDEyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU0MTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1NCIgcmVmZXJlbmNlcz0iLzAvaGFzTmF0aXZlSW1wbGVtZW50YXRpb24iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU0MjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTY1NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNzciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1NSIgcmVmZXJlbmNlcz0iLzAvaGFzTmF0aXZlSW1wbGVtZW50YXRpb24vY2xhc3MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU0NjQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTQ3NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNzciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1NiIgcmVmZXJlbmNlcz0iLzAvaGFzTmF0aXZlSW1wbGVtZW50YXRpb24vJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTQ5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NjUwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNTciIHJlZmVyZW5jZXM9Ii8wL2hhc05hdGl2ZUltcGxlbWVudGF0aW9uLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1OCIgcmVmZXJlbmNlcz0iLzAvaGFzTmF0aXZlSW1wbGVtZW50YXRpb24vJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NTAwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU1NzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1OSIgcmVmZXJlbmNlcz0iLzAvaGFzTmF0aXZlSW1wbGVtZW50YXRpb24vJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU1NzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTYzMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTYwIiByZWZlcmVuY2VzPSIvMC9oYXNOYXRpdmVJbXBsZW1lbnRhdGlvbi8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTYzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NjQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNjEiIHJlZmVyZW5jZXM9Ii8wL2hhc05hdGl2ZUltcGxlbWVudGF0aW9uLyUvJS4yLyUvY2xhc3MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU2NDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTY0OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTYyIiByZWZlcmVuY2VzPSIvMC9nZXROYXRpdmVMaWJyYXJ5UGF0aEZvckNvbXBvbmVudCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTY1NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1OTAzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI4MCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTYzIiByZWZlcmVuY2VzPSIvMC9nZXROYXRpdmVMaWJyYXJ5UGF0aEZvckNvbXBvbmVudC9jbGFzcyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTcwNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NzE3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI4MCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTY0IiByZWZlcmVuY2VzPSIvMC9nZXROYXRpdmVMaWJyYXJ5UGF0aEZvckNvbXBvbmVudC8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NzMyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU4OTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2NSIgcmVmZXJlbmNlcz0iLzAvZ2V0TmF0aXZlTGlicmFyeVBhdGhGb3JDb21wb25lbnQvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTY2IiByZWZlcmVuY2VzPSIvMC9nZXROYXRpdmVMaWJyYXJ5UGF0aEZvckNvbXBvbmVudC8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU3MzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTgxNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTY3IiByZWZlcmVuY2VzPSIvMC9nZXROYXRpdmVMaWJyYXJ5UGF0aEZvckNvbXBvbmVudC8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTgxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1ODgwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNjgiIHJlZmVyZW5jZXM9Ii8wL2dldE5hdGl2ZUxpYnJhcnlQYXRoRm9yQ29tcG9uZW50LyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1ODgyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU4OTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2OSIgcmVmZXJlbmNlcz0iLzAvZ2V0TmF0aXZlTGlicmFyeVBhdGhGb3JDb21wb25lbnQvJS8lLjIvJS9jbGFzcyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTg5MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1ODk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNzAiIHJlZmVyZW5jZXM9Ii8wL2dldE5hdGl2ZUNvbXBvbmVudE5hbWVGb3JDb21wb25lbnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU5MDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjE1NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iODMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3MSIgcmVmZXJlbmNlcz0iLzAvZ2V0TmF0aXZlQ29tcG9uZW50TmFtZUZvckNvbXBvbmVudC9jbGFzcyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTk1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1OTY3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI4MyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTcyIiByZWZlcmVuY2VzPSIvMC9nZXROYXRpdmVDb21wb25lbnROYW1lRm9yQ29tcG9uZW50LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU5ODIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjE1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTczIiByZWZlcmVuY2VzPSIvMC9nZXROYXRpdmVDb21wb25lbnROYW1lRm9yQ29tcG9uZW50LyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3NCIgcmVmZXJlbmNlcz0iLzAvZ2V0TmF0aXZlQ29tcG9uZW50TmFtZUZvckNvbXBvbmVudC8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU5ODkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjA2NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTc1IiByZWZlcmVuY2VzPSIvMC9nZXROYXRpdmVDb21wb25lbnROYW1lRm9yQ29tcG9uZW50LyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2MDY4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjYxMzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3NiIgcmVmZXJlbmNlcz0iLzAvZ2V0TmF0aXZlQ29tcG9uZW50TmFtZUZvckNvbXBvbmVudC8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjEzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2MTQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNzciIHJlZmVyZW5jZXM9Ii8wL2dldE5hdGl2ZUNvbXBvbmVudE5hbWVGb3JDb21wb25lbnQvJS8lLjIvJS9jbGFzcyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjE0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2MTQ4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNzgiIHJlZmVyZW5jZXM9Ii8wL2dldENvbXBvbmVudEZpbGVOYW1lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2MTU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY0MzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijg2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNzkiIHJlZmVyZW5jZXM9Ii8wL2dldENvbXBvbmVudEZpbGVOYW1lL2NsYXNzaWZpZXIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjYxOTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjIxNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iODYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4MCIgcmVmZXJlbmNlcz0iLzAvZ2V0Q29tcG9uZW50RmlsZU5hbWUvZW5kIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2MjE3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjYyMjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijg2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xODEiIHJlZmVyZW5jZXM9Ii8wL2dldENvbXBvbmVudEZpbGVOYW1lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjYyNDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjQzMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTgyIiByZWZlcmVuY2VzPSIvMC9nZXRDb21wb25lbnRGaWxlTmFtZS8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xODMiIHJlZmVyZW5jZXM9Ii8wL2dldENvbXBvbmVudEZpbGVOYW1lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjI1MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2MzI5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xODQiIHJlZmVyZW5jZXM9Ii8wL2dldENvbXBvbmVudEZpbGVOYW1lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2MzMxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY0MDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4NSIgcmVmZXJlbmNlcz0iLzAvZ2V0Q29tcG9uZW50RmlsZU5hbWUvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY0MDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjQyOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTg2IiByZWZlcmVuY2VzPSIvMC9nZXRDb21wb25lbnRGaWxlTmFtZS8lLyUuMi8lL2NsYXNzaWZpZXIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY0MTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjQyNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTg3IiByZWZlcmVuY2VzPSIvMC9nZXRDb21wb25lbnRGaWxlTmFtZS8lLyUuMi8lLjEvZW5kIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NDI1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY0MjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4OCIgcmVmZXJlbmNlcz0iLzAvZ2V0T3V0cHV0UG9ydEJ1ZmZlclNpemUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY0MzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjY1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iODkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4OSIgcmVmZXJlbmNlcz0iLzAvZ2V0T3V0cHV0UG9ydEJ1ZmZlclNpemUvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjQ3NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NDgzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI4OSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTkwIiByZWZlcmVuY2VzPSIvMC9nZXRPdXRwdXRQb3J0QnVmZmVyU2l6ZS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NDk5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY2NTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5MSIgcmVmZXJlbmNlcz0iLzAvZ2V0T3V0cHV0UG9ydEJ1ZmZlclNpemUvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTkyIiByZWZlcmVuY2VzPSIvMC9nZXRPdXRwdXRQb3J0QnVmZmVyU2l6ZS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY1MDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjU4MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTkzIiByZWZlcmVuY2VzPSIvMC9nZXRPdXRwdXRQb3J0QnVmZmVyU2l6ZS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjU4NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NjM3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xOTQiIHJlZmVyZW5jZXM9Ii8wL2dldE91dHB1dFBvcnRCdWZmZXJTaXplLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NjM5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY2NTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5NSIgcmVmZXJlbmNlcz0iLzAvZ2V0T3V0cHV0UG9ydEJ1ZmZlclNpemUvJS8lLjIvJS9wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NjQ4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY2NDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5NiIgcmVmZXJlbmNlcz0iLzAvaXNEYXRhRmxvd1BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY2NTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjg2NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iOTIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5NyIgcmVmZXJlbmNlcz0iLzAvaXNEYXRhRmxvd1BvcnQvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2Njg3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY2OTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjkyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xOTgiIHJlZmVyZW5jZXM9Ii8wL2lzRGF0YUZsb3dQb3J0LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY3MTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjg1OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTk5IiByZWZlcmVuY2VzPSIvMC9pc0RhdGFGbG93UG9ydC8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMDAiIHJlZmVyZW5jZXM9Ii8wL2lzRGF0YUZsb3dQb3J0LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjcyMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2Nzk4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMDEiIHJlZmVyZW5jZXM9Ii8wL2lzRGF0YUZsb3dQb3J0LyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2ODAwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY4NDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIwMiIgcmVmZXJlbmNlcz0iLzAvaXNEYXRhRmxvd1BvcnQvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY4NDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjg1OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjAzIiByZWZlcmVuY2VzPSIvMC9pc0RhdGFGbG93UG9ydC8lLyUuMi8lL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjg1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2ODU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMDQiIHJlZmVyZW5jZXM9Ii8wL2lzU2VydmljZVBvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY4NjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzA3MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iOTUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIwNSIgcmVmZXJlbmNlcz0iLzAvaXNTZXJ2aWNlUG9ydC9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY4OTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjkwNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iOTUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIwNiIgcmVmZXJlbmNlcz0iLzAvaXNTZXJ2aWNlUG9ydC8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2OTIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcwNjUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIwNyIgcmVmZXJlbmNlcz0iLzAvaXNTZXJ2aWNlUG9ydC8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMDgiIHJlZmVyZW5jZXM9Ii8wL2lzU2VydmljZVBvcnQvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2OTI4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcwMDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIwOSIgcmVmZXJlbmNlcz0iLzAvaXNTZXJ2aWNlUG9ydC8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzAwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3MDQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMTAiIHJlZmVyZW5jZXM9Ii8wL2lzU2VydmljZVBvcnQvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcwNTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzA2NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjExIiByZWZlcmVuY2VzPSIvMC9pc1NlcnZpY2VQb3J0LyUvJS4yLyUvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MDYwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcwNjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIxMiIgcmVmZXJlbmNlcz0iLzAvZGVmaW5lc0Nvbm5lY3Rpb25zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MDcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcyODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijk4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMTMiIHJlZmVyZW5jZXM9Ii8wL2RlZmluZXNDb25uZWN0aW9ucy9jbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzEwNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3MTE1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI5OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjE0IiByZWZlcmVuY2VzPSIvMC9kZWZpbmVzQ29ubmVjdGlvbnMvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzEzMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3MjgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMTUiIHJlZmVyZW5jZXM9Ii8wL2RlZmluZXNDb25uZWN0aW9ucy8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMTYiIHJlZmVyZW5jZXM9Ii8wL2RlZmluZXNDb25uZWN0aW9ucy8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcxMzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzIxNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjE3IiByZWZlcmVuY2VzPSIvMC9kZWZpbmVzQ29ubmVjdGlvbnMvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcyMTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzI2NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjE4IiByZWZlcmVuY2VzPSIvMC9kZWZpbmVzQ29ubmVjdGlvbnMvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcyNjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzI4MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjE5IiByZWZlcmVuY2VzPSIvMC9kZWZpbmVzQ29ubmVjdGlvbnMvJS8lLjIvJS9jbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzI3NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3Mjc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMjAiIHJlZmVyZW5jZXM9Ii8wL2lzQ29ubmVjdGlvblZhbGlkIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3Mjg4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijc1MTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEwMSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjIxIiByZWZlcmVuY2VzPSIvMC9pc0Nvbm5lY3Rpb25WYWxpZC9jb25uIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MzIwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjczMzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEwMSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjIyIiByZWZlcmVuY2VzPSIvMC9pc0Nvbm5lY3Rpb25WYWxpZC8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MzUzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijc1MDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIyMyIgcmVmZXJlbmNlcz0iLzAvaXNDb25uZWN0aW9uVmFsaWQvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjI0IiByZWZlcmVuY2VzPSIvMC9pc0Nvbm5lY3Rpb25WYWxpZC8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjczNjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzQzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjI1IiByZWZlcmVuY2VzPSIvMC9pc0Nvbm5lY3Rpb25WYWxpZC8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzQzOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3NDkwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMjYiIHJlZmVyZW5jZXM9Ii8wL2lzQ29ubmVjdGlvblZhbGlkLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3NDkyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijc1MDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIyNyIgcmVmZXJlbmNlcz0iLzAvaXNDb25uZWN0aW9uVmFsaWQvJS8lLjIvJS9jb25uIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3NTAxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijc1MDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIyOCIgcmVmZXJlbmNlcz0iLzAvZ2V0Q29ubmVjdGlvbkRlZmluaXRpb24iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc1MTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzc0OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTA0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMjkiIHJlZmVyZW5jZXM9Ii8wL2dldENvbm5lY3Rpb25EZWZpbml0aW9uL2Nvbm4iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc1NTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzU2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTA0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMzAiIHJlZmVyZW5jZXM9Ii8wL2dldENvbm5lY3Rpb25EZWZpbml0aW9uLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc1ODQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzc0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjMxIiByZWZlcmVuY2VzPSIvMC9nZXRDb25uZWN0aW9uRGVmaW5pdGlvbi8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMzIiIHJlZmVyZW5jZXM9Ii8wL2dldENvbm5lY3Rpb25EZWZpbml0aW9uLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzU5MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3NjY4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMzMiIHJlZmVyZW5jZXM9Ii8wL2dldENvbm5lY3Rpb25EZWZpbml0aW9uLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3NjcwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijc3MjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIzNCIgcmVmZXJlbmNlcz0iLzAvZ2V0Q29ubmVjdGlvbkRlZmluaXRpb24vJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc3MjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzc0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjM1IiByZWZlcmVuY2VzPSIvMC9nZXRDb25uZWN0aW9uRGVmaW5pdGlvbi8lLyUuMi8lL2Nvbm4iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc3MzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzc0MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjM2IiByZWZlcmVuY2VzPSIvMC9nZXRDb25uZWN0ZWRQb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3NzUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijc5NTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEwNyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjM3IiByZWZlcmVuY2VzPSIvMC9nZXRDb25uZWN0ZWRQb3J0L3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc3ODIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzc5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTA3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMzgiIHJlZmVyZW5jZXM9Ii8wL2dldENvbm5lY3RlZFBvcnQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzgwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3OTU1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMzkiIHJlZmVyZW5jZXM9Ii8wL2dldENvbm5lY3RlZFBvcnQvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQwIiByZWZlcmVuY2VzPSIvMC9nZXRDb25uZWN0ZWRQb3J0LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzgxNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3ODkxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNDEiIHJlZmVyZW5jZXM9Ii8wL2dldENvbm5lY3RlZFBvcnQvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc4OTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzkzOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQyIiByZWZlcmVuY2VzPSIvMC9nZXRDb25uZWN0ZWRQb3J0LyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3OTQwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijc5NTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI0MyIgcmVmZXJlbmNlcz0iLzAvZ2V0Q29ubmVjdGVkUG9ydC8lLyUuMi8lL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc5NDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzk1MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQ0IiByZWZlcmVuY2VzPSIvMC9nZXRDb25uZWN0aW9uc0Zyb21Qb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3OTYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjgxOTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjExMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQ1IiByZWZlcmVuY2VzPSIvMC9nZXRDb25uZWN0aW9uc0Zyb21Qb3J0L3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc5OTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODAwOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTEwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNDYiIHJlZmVyZW5jZXM9Ii8wL2dldENvbm5lY3Rpb25zRnJvbVBvcnQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODAzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4MTkwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNDciIHJlZmVyZW5jZXM9Ii8wL2dldENvbm5lY3Rpb25zRnJvbVBvcnQvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQ4IiByZWZlcmVuY2VzPSIvMC9nZXRDb25uZWN0aW9uc0Zyb21Qb3J0LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODA0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4MTIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNDkiIHJlZmVyZW5jZXM9Ii8wL2dldENvbm5lY3Rpb25zRnJvbVBvcnQvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjgxMjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODE3MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjUwIiByZWZlcmVuY2VzPSIvMC9nZXRDb25uZWN0aW9uc0Zyb21Qb3J0LyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4MTc1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjgxODkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI1MSIgcmVmZXJlbmNlcz0iLzAvZ2V0Q29ubmVjdGlvbnNGcm9tUG9ydC8lLyUuMi8lL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjgxODQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODE4OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjUyIiByZWZlcmVuY2VzPSIvMC9pc0FuSW5wdXRQb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4MTk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg0MDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjExMyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjUzIiByZWZlcmVuY2VzPSIvMC9pc0FuSW5wdXRQb3J0L3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjgyMjQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODIzNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTEzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNTQiIHJlZmVyZW5jZXM9Ii8wL2lzQW5JbnB1dFBvcnQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODI1MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4Mzk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNTUiIHJlZmVyZW5jZXM9Ii8wL2lzQW5JbnB1dFBvcnQvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjU2IiByZWZlcmVuY2VzPSIvMC9pc0FuSW5wdXRQb3J0LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODI1OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4MzM2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNTciIHJlZmVyZW5jZXM9Ii8wL2lzQW5JbnB1dFBvcnQvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjgzMzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODM4MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjU4IiByZWZlcmVuY2VzPSIvMC9pc0FuSW5wdXRQb3J0LyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4MzgyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjgzOTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI1OSIgcmVmZXJlbmNlcz0iLzAvaXNBbklucHV0UG9ydC8lLyUuMi8lL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjgzOTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODM5NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjYwIiByZWZlcmVuY2VzPSIvMC9pc0FuT3V0cHV0UG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODQwNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NjEyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMTYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI2MSIgcmVmZXJlbmNlcz0iLzAvaXNBbk91dHB1dFBvcnQvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODQzMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NDQ0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMTYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI2MiIgcmVmZXJlbmNlcz0iLzAvaXNBbk91dHB1dFBvcnQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODQ2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NjA3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNjMiIHJlZmVyZW5jZXM9Ii8wL2lzQW5PdXRwdXRQb3J0LyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI2NCIgcmVmZXJlbmNlcz0iLzAvaXNBbk91dHB1dFBvcnQvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4NDY4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg1NDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI2NSIgcmVmZXJlbmNlcz0iLzAvaXNBbk91dHB1dFBvcnQvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg1NDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODU5MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjY2IiByZWZlcmVuY2VzPSIvMC9pc0FuT3V0cHV0UG9ydC8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODU5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NjA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNjciIHJlZmVyZW5jZXM9Ii8wL2lzQW5PdXRwdXRQb3J0LyUvJS4yLyUvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODYwMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NjA1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNjgiIHJlZmVyZW5jZXM9Ii8wL2lzQVByb3ZpZGVkUG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODYxNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4ODI0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMTkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI2OSIgcmVmZXJlbmNlcz0iLzAvaXNBUHJvdmlkZWRQb3J0L3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg2NDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODY1NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTE5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNzAiIHJlZmVyZW5jZXM9Ii8wL2lzQVByb3ZpZGVkUG9ydC8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4NjcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg4MTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI3MSIgcmVmZXJlbmNlcz0iLzAvaXNBUHJvdmlkZWRQb3J0LyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI3MiIgcmVmZXJlbmNlcz0iLzAvaXNBUHJvdmlkZWRQb3J0LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODY3OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NzU2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNzMiIHJlZmVyZW5jZXM9Ii8wL2lzQVByb3ZpZGVkUG9ydC8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODc1OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4ODAyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNzQiIHJlZmVyZW5jZXM9Ii8wL2lzQVByb3ZpZGVkUG9ydC8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODgwNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4ODE4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNzUiIHJlZmVyZW5jZXM9Ii8wL2lzQVByb3ZpZGVkUG9ydC8lLyUuMi8lL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg4MTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODgxNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjc2IiByZWZlcmVuY2VzPSIvMC9pc0FSZXF1aXJlZFBvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg4MjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTAzNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTIyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNzciIHJlZmVyZW5jZXM9Ii8wL2lzQVJlcXVpcmVkUG9ydC9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4ODU2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg4NjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEyMiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjc4IiByZWZlcmVuY2VzPSIvMC9pc0FSZXF1aXJlZFBvcnQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODg4NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5MDMxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNzkiIHJlZmVyZW5jZXM9Ii8wL2lzQVJlcXVpcmVkUG9ydC8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yODAiIHJlZmVyZW5jZXM9Ii8wL2lzQVJlcXVpcmVkUG9ydC8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg4OTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODk2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjgxIiByZWZlcmVuY2VzPSIvMC9pc0FSZXF1aXJlZFBvcnQvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg5NzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTAxNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjgyIiByZWZlcmVuY2VzPSIvMC9pc0FSZXF1aXJlZFBvcnQvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjkwMTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTAzMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjgzIiByZWZlcmVuY2VzPSIvMC9pc0FSZXF1aXJlZFBvcnQvJS8lLjIvJS9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MDI1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkwMjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4NCIgcmVmZXJlbmNlcz0iLzAvZ2V0Q29ubmVjdGlvbk90aGVyU2lkZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTAzOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5MjYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMjUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4NSIgcmVmZXJlbmNlcz0iLzAvZ2V0Q29ubmVjdGlvbk90aGVyU2lkZS9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MDc1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkwODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEyNSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjg2IiByZWZlcmVuY2VzPSIvMC9nZXRDb25uZWN0aW9uT3RoZXJTaWRlLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjkxMDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTI1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjg3IiByZWZlcmVuY2VzPSIvMC9nZXRDb25uZWN0aW9uT3RoZXJTaWRlLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4OCIgcmVmZXJlbmNlcz0iLzAvZ2V0Q29ubmVjdGlvbk90aGVyU2lkZS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjkxMDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTE4NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjg5IiByZWZlcmVuY2VzPSIvMC9nZXRDb25uZWN0aW9uT3RoZXJTaWRlLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MTg4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkyMzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5MCIgcmVmZXJlbmNlcz0iLzAvZ2V0Q29ubmVjdGlvbk90aGVyU2lkZS8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTI0MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5MjU1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOTEiIHJlZmVyZW5jZXM9Ii8wL2dldENvbm5lY3Rpb25PdGhlclNpZGUvJS8lLjIvJS9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MjUwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkyNTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5MiIgcmVmZXJlbmNlcz0iLzAvaXNQb3J0Q29ubmVjdGVkIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MjYzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk0NzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEyOCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjkzIiByZWZlcmVuY2VzPSIvMC9pc1BvcnRDb25uZWN0ZWQvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTI5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5MzA0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMjgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5NCIgcmVmZXJlbmNlcz0iLzAvaXNQb3J0Q29ubmVjdGVkLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjkzMjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTQ2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjk1IiByZWZlcmVuY2VzPSIvMC9pc1BvcnRDb25uZWN0ZWQvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjk2IiByZWZlcmVuY2VzPSIvMC9pc1BvcnRDb25uZWN0ZWQvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MzI4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk0MDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5NyIgcmVmZXJlbmNlcz0iLzAvaXNQb3J0Q29ubmVjdGVkLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5NDA3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk0NTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5OCIgcmVmZXJlbmNlcz0iLzAvaXNQb3J0Q29ubmVjdGVkLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5NDUzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk0NjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5OSIgcmVmZXJlbmNlcz0iLzAvaXNQb3J0Q29ubmVjdGVkLyUvJS4yLyUvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTQ2MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5NDY2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMDAiIHJlZmVyZW5jZXM9Ii8wL2lzUm9vdE1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5NDc1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk2NzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEzMSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzAxIiByZWZlcmVuY2VzPSIvMC9pc1Jvb3RNb2RlbC9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk1MDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTUxMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTMxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMDIiIHJlZmVyZW5jZXM9Ii8wL2lzUm9vdE1vZGVsLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk1MjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTY3MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzAzIiByZWZlcmVuY2VzPSIvMC9pc1Jvb3RNb2RlbC8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMDQiIHJlZmVyZW5jZXM9Ii8wL2lzUm9vdE1vZGVsLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTUzNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5NjEzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMDUiIHJlZmVyZW5jZXM9Ii8wL2lzUm9vdE1vZGVsLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5NjE1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk2NTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMwNiIgcmVmZXJlbmNlcz0iLzAvaXNSb290TW9kZWwvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk2NTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTY3MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzA3IiByZWZlcmVuY2VzPSIvMC9pc1Jvb3RNb2RlbC8lLyUuMi8lL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTY2NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5NjcwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMDgiIHJlZmVyZW5jZXM9Ii8wL2dldFJvb3RDbGFzc0Zvck1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5Njc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk4OTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEzNCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzA5IiByZWZlcmVuY2VzPSIvMC9nZXRSb290Q2xhc3NGb3JNb2RlbC9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTcxNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5NzI3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMzQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMxMCIgcmVmZXJlbmNlcz0iLzAvZ2V0Um9vdENsYXNzRm9yTW9kZWwvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTc0MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5ODk0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMTEiIHJlZmVyZW5jZXM9Ii8wL2dldFJvb3RDbGFzc0Zvck1vZGVsLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMxMiIgcmVmZXJlbmNlcz0iLzAvZ2V0Um9vdENsYXNzRm9yTW9kZWwvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5NzQ4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk4MjUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMxMyIgcmVmZXJlbmNlcz0iLzAvZ2V0Um9vdENsYXNzRm9yTW9kZWwvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk4MjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTg3NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzE0IiByZWZlcmVuY2VzPSIvMC9nZXRSb290Q2xhc3NGb3JNb2RlbC8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTg3OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5ODkzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMTUiIHJlZmVyZW5jZXM9Ii8wL2dldFJvb3RDbGFzc0Zvck1vZGVsLyUvJS4yLyUvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk4ODciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTg5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzE2IiByZWZlcmVuY2VzPSIvMC9pc0FuQW5jZXN0b3JPZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTkwMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDE5MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTM4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMTciIHJlZmVyZW5jZXM9Ii8wL2lzQW5BbmNlc3Rvck9mL2N1cnJlbnRfY2xhc3MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk5MzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTk1MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTM4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMTgiIHJlZmVyZW5jZXM9Ii8wL2lzQW5BbmNlc3Rvck9mL290aGVyX2NsYXNzIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5OTU0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk5NzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEzOCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzE5IiByZWZlcmVuY2VzPSIvMC9pc0FuQW5jZXN0b3JPZi8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5OTg5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwMTg2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMjAiIHJlZmVyZW5jZXM9Ii8wL2lzQW5BbmNlc3Rvck9mLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMyMSIgcmVmZXJlbmNlcz0iLzAvaXNBbkFuY2VzdG9yT2YvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5OTk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwMDczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMjIiIHJlZmVyZW5jZXM9Ii8wL2lzQW5BbmNlc3Rvck9mLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDA3NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDE0NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzIzIiByZWZlcmVuY2VzPSIvMC9pc0FuQW5jZXN0b3JPZi8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTAxNDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTAxODUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMyNCIgcmVmZXJlbmNlcz0iLzAvaXNBbkFuY2VzdG9yT2YvJS8lLjIvJS9jdXJyZW50X2NsYXNzIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDE1OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDE3MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzI1IiByZWZlcmVuY2VzPSIvMC9pc0FuQW5jZXN0b3JPZi8lLyUuMi8lLjEvb3RoZXJfY2xhc3MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwMTczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwMTg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMjYiIHJlZmVyZW5jZXM9Ii8wL2lzQW5JbnB1dE91dHB1dFBvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwMTk0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwNDEwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNDIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMyNyIgcmVmZXJlbmNlcz0iLzAvaXNBbklucHV0T3V0cHV0UG9ydC9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDIyOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDIzOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTQyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMjgiIHJlZmVyZW5jZXM9Ii8wL2lzQW5JbnB1dE91dHB1dFBvcnQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTAyNTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTA0MDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMyOSIgcmVmZXJlbmNlcz0iLzAvaXNBbklucHV0T3V0cHV0UG9ydC8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMzAiIHJlZmVyZW5jZXM9Ii8wL2lzQW5JbnB1dE91dHB1dFBvcnQvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDI2MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDMzOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzMxIiByZWZlcmVuY2VzPSIvMC9pc0FuSW5wdXRPdXRwdXRQb3J0LyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDM0MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDM4OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzMyIiByZWZlcmVuY2VzPSIvMC9pc0FuSW5wdXRPdXRwdXRQb3J0LyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDM5MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDQwNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzMzIiByZWZlcmVuY2VzPSIvMC9pc0FuSW5wdXRPdXRwdXRQb3J0LyUvJS4yLyUvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTA0MDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTA0MDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lY29yZTpFQW5ub3RhdGlvbj4KKzwveG1pOlhNST4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuamF2YSBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wZTFiM2U4Ci0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5qYXZhCkBAIC0wLDAgKzEsNzg2IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBQUk9URVVTIFByb2plY3QgY29uc29ydGl1bS4KKyAqCisgKgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgTmljb2xhcyBEVSBMQUMgKElOVEVNUE9SQSkgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXM7CisKK2ltcG9ydCBqYXZhLnV0aWwuTGlua2VkTGlzdDsKK2ltcG9ydCBqYXZhLnV0aWwuTGlzdDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EYXRhRmxvd0RpcmVjdGlvbktpbmQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRhdGFGbG93UG9ydDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2VydmljZUZsb3dLaW5kOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlUG9ydDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3I7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yRW5kOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWw7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuTmFtZWRFbGVtZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuU3RlcmVvdHlwZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5UeXBlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLnV0aWwuVU1MVXRpbDsKKworCisKKy8qKgorICoKKyAqIEBhdXRob3Igc2NkdG5zbQorICoKKyAqLworcHVibGljIGNsYXNzIEFyY2hpdGVjdHVyZVF1ZXJpZXMgeworCisJLyoqCisJICogQ2hlY2tzIHdoZXRoZXIgb3Igbm90IGEgcG9ydCBpcyBhICJzb3VyY2UgcG9ydCIgZnJvbSB0aGUgcG9pbnQgb2YgdmlldyBvZiBhIGdpdmVuIGNvbm5lY3Rvci4KKwkgKiBBIHNvdXJjZSBwb3J0IGNhbiBiZSBhbiBvdXRwdXQgcG9ydCBmb3IgYSBjb25uZWN0b3Igc3RlcHBpbmcgb3V0IG9mIGEgY29tcG9uZW50IG9yIGl0IGNhbiBiZQorCSAqIGFuIGlucHV0IHBvcnQgZm9yIGEgY29ubmVjdG9yIGxpbmtpbmcgYSBjb21wb25lbnQgbW9kZWwgaW5wdXQgcG9ydCB0byBhIGNvbXBvbmVudCBpbnB1dCBwb3J0CisJICogaW5zaWRlIHRoZSBjb21wb25lbnQgbW9kZWwgKGUuZy4gZnJvbSB0aGUgbW9kZWwgYm91bmRhcmllcyB0byBhIGNvbXBvbmVudCBpbnNpZGUgdGhlIG1vZGVsKS4KKwkgKi8KKwlzdGF0aWMgcHJpdmF0ZSBib29sZWFuIGlzU291cmNlUG9ydChDb25uZWN0b3JFbmQgZW5kLCBQb3J0IHApIHsKKwkJcmV0dXJuICgoaXNBbklucHV0UG9ydChwKSAmJiBlbmQuZ2V0UGFydFdpdGhQb3J0KCkgPT0gbnVsbCkgfHwgKGlzQW5PdXRwdXRQb3J0KHApICYmIGVuZC5nZXRQYXJ0V2l0aFBvcnQoKSAhPSBudWxsKSk7CisKKwl9CisKKwkvKioKKwkgKiBDaGVja3Mgd2hldGhlciBvciBub3QgYSBwb3J0IGlzIGEgImRlc3RpbmF0aW9uIHBvcnQiIGZyb20gdGhlIHBvaW50IG9mIHZpZXcgb2YgYSBnaXZlbiBjb25uZWN0b3IuCisJICogQSBkZXN0aW5hdGlvbiBwb3J0IGNhbiBiZSBhbiBpbnB1dCBwb3J0IGZvciBhIGNvbm5lY3RvciBzdGVwcGluZyBvdXQgb2YgYSBjb21wb25lbnQgb3IgaXQgY2FuIGJlCisJICogYW4gb3V0cHV0IHBvcnQgZm9yIGEgY29ubmVjdG9yIGxpbmtpbmcgYSBjb21wb25lbnQgbW9kZWwgb3V0cHV0IHBvcnQgdG8gYSBjb21wb25lbnQgb3V0cHV0IHBvcnQKKwkgKiBpbnNpZGUgdGhlIGNvbXBvbmVudCBtb2RlbCAoZS5nLiBmcm9tIGEgY29tcG9uZW50IGluc2lkZSB0aGUgbW9kZWwgdG8gdGhlIG1vZGVsIGJvdW5kYXJpZXMpLgorCSAqLworCXN0YXRpYyBwcml2YXRlIGJvb2xlYW4gaXNEZXN0UG9ydChDb25uZWN0b3JFbmQgZW5kLCBQb3J0IHApIHsKKwkJcmV0dXJuICgoaXNBbk91dHB1dFBvcnQocCkgJiYgZW5kLmdldFBhcnRXaXRoUG9ydCgpID09IG51bGwpIHx8IChpc0FuSW5wdXRQb3J0KHApICYmIGVuZC5nZXRQYXJ0V2l0aFBvcnQoKSAhPSBudWxsKSk7CisKKwl9CisKKwkvKioKKwkgKiBSZXRyaWV2ZXMgdGhlIHNvdXJjZSBwb3J0IGZvciBhIGdpdmVuIGNvbm5lY3RvcgorCSAqCisJICogQHNlZSBpc0Rlc3RQb3J0IGFuZCBpc1NvdXJjZVBvcnQKKwkgKi8KKwlzdGF0aWMgcHJpdmF0ZSBpbnQgZ2V0U291cmNlUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IgY29ubiwgUG9ydFtdIGRlc3RfcG9ydCkgeworCisJCWlmIChjb25uLmdldEVuZHMoKS5nZXQoMCkuZ2V0Um9sZSgpIGluc3RhbmNlb2YgUG9ydCkgeworCQkJUG9ydCB0ZXN0XzEgPSAoUG9ydCkgY29ubi5nZXRFbmRzKCkuZ2V0KDApLmdldFJvbGUoKTsKKwkJCWlmIChpc1NvdXJjZVBvcnQoY29ubi5nZXRFbmRzKCkuZ2V0KDApLCB0ZXN0XzEpKSB7CisJCQkJZGVzdF9wb3J0WzBdID0gdGVzdF8xOworCQkJCXJldHVybiAwOworCQkJfQorCQkJUG9ydCB0ZXN0XzIgPSAoUG9ydCkgY29ubi5nZXRFbmRzKCkuZ2V0KDEpLmdldFJvbGUoKTsKKwkJCWlmIChpc1NvdXJjZVBvcnQoY29ubi5nZXRFbmRzKCkuZ2V0KDEpLCB0ZXN0XzIpKSB7CisJCQkJZGVzdF9wb3J0WzBdID0gdGVzdF8yOworCQkJCXJldHVybiAxOworCQkJfQorCQl9CisJCWRlc3RfcG9ydCA9IG51bGw7CisJCXJldHVybiAtMTsKKwl9CisKKwkvKioKKwkgKiBSZXRyaWV2ZXMgdGhlIGRlc3RpbmF0aW9uIHBvcnQgZm9yIGEgZ2l2ZW4gY29ubmVjdG9yCisJICoKKwkgKiBAc2VlIGlzRGVzdFBvcnQgYW5kIGlzU291cmNlUG9ydAorCSAqLworCXB1YmxpYyBzdGF0aWMgaW50IGdldERlc3RQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciBjb25uLCBQb3J0W10gZGVzdF9wb3J0KSB7CisJCWlmIChjb25uLmdldEVuZHMoKS5nZXQoMCkuZ2V0Um9sZSgpIGluc3RhbmNlb2YgUG9ydCkgeworCQkJUG9ydCB0ZXN0XzEgPSAoUG9ydCkgY29ubi5nZXRFbmRzKCkuZ2V0KDApLmdldFJvbGUoKTsKKwkJCWlmIChpc0Rlc3RQb3J0KGNvbm4uZ2V0RW5kcygpLmdldCgwKSwgdGVzdF8xKSkgeworCQkJCWRlc3RfcG9ydFswXSA9IHRlc3RfMTsKKwkJCQlyZXR1cm4gMDsKKwkJCX0KKwkJCVBvcnQgdGVzdF8yID0gKFBvcnQpIGNvbm4uZ2V0RW5kcygpLmdldCgxKS5nZXRSb2xlKCk7CisJCQlpZiAoaXNEZXN0UG9ydChjb25uLmdldEVuZHMoKS5nZXQoMSksIHRlc3RfMikpIHsKKwkJCQlkZXN0X3BvcnRbMF0gPSB0ZXN0XzI7CisJCQkJcmV0dXJuIDE7CisJCQl9CisJCX0KKwkJZGVzdF9wb3J0ID0gbnVsbDsKKwkJcmV0dXJuIC0xOworCX0KKworCS8qKgorCSAqIEdldCB0aGUgc291cmNlIHBvcnQgbmFtZSBvZiBhIGNvbm5lY3Rvci4KKwkgKi8KKwlzdGF0aWMgcHVibGljIFN0cmluZyBnZXRTb3VyY2VQb3J0TmFtZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IgY29ubikgeworCQlTdHJpbmcgaW5wdXROYW1lOworCQlQb3J0W10gaW5wdXRQb3J0ID0gbmV3IFBvcnRbMV07CisJCWludCBpbmRleCA9IGdldFNvdXJjZVBvcnQoY29ubiwgaW5wdXRQb3J0KTsKKwkJaWYgKGluZGV4IDwgMCkgeworCQkJcmV0dXJuICJVbmtub3duIjsKKwkJfQorCisJCWlucHV0TmFtZSA9IGlucHV0UG9ydFswXS5nZXROYW1lKCk7CisKKwkJcmV0dXJuIGlucHV0TmFtZTsKKwl9CisKKwkvKioKKwkgKiBSZXRyaWV2ZSB0aGUgbW9kZWwgbmFtZSBvZiBhIGNvbXBvbmVudCBhdCB0aGUgc291cmNlIG9mIGEgY29ubmVjdG9yLgorCSAqCisJICogQHBhcmFtIGNvbm4KKwkgKiBAcmV0dXJuIGEgc3RyaW5nIG9yIG51bGwgaWYgbm8gY29tcG9uZW50IGhhcyBiZWVuIGZvdW5kIGF0IHRoZSBzb3VyY2Ugb2YgYSBjb25uZWN0b3IuCisJICovCisJc3RhdGljIHB1YmxpYyBTdHJpbmcgZ2V0U291cmNlQ29tcG9uZW50VHlwZU5hbWVGb3JDb25uZWN0b3Iob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yIGNvbm4pIHsKKwkJUHJvcGVydHkgcHJvcCA9IGdldFNvdXJjZUNvbXBvbmVudEZvckNvbm5lY3Rvcihjb25uKTsKKwkJaWYgKHByb3AgPT0gbnVsbCkgeworCQkJcmV0dXJuIG51bGw7CisJCX0KKwkJcmV0dXJuIHByb3AuZ2V0VHlwZSgpLmdldE5hbWUoKTsKKwl9CisKKwkvKioKKwkgKiBSZXRyaWV2ZSB0aGUgaW5zdGFuY2UgbmFtZSBvZiBhIGNvbXBvbmVudCBhdCB0aGUgc291cmNlIG9mIGEgY29ubmVjdG9yLgorCSAqCisJICogQHBhcmFtIGNvbm4KKwkgKiBAcmV0dXJuIGEgc3RyaW5nIG9yIG51bGwgaWYgbm8gY29tcG9uZW50IGhhcyBiZWVuIGZvdW5kIGF0IHRoZSBzb3VyY2Ugb2YgYSBjb25uZWN0b3IuCisJICovCisJc3RhdGljIHB1YmxpYyBTdHJpbmcgZ2V0U291cmNlQ29tcG9uZW50SW5zdGFuY2VOYW1lRm9yQ29ubmVjdG9yKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciBjb25uKSB7CisJCVByb3BlcnR5IHByb3AgPSBnZXRTb3VyY2VDb21wb25lbnRGb3JDb25uZWN0b3IoY29ubik7CisJCWlmIChwcm9wID09IG51bGwpIHsKKwkJCXJldHVybiBudWxsOworCQl9CisJCXJldHVybiBwcm9wLmdldE5hbWUoKTsKKwl9CisKKwkvKioKKwkgKiBHZXQgdGhlIHNvdXJjZSBjb21wb25lbnQgaW5zdGFuY2Ugb2YgYSBjb25uZWN0b3IKKwkgKi8KKwlzdGF0aWMgcHVibGljIG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5IGdldFNvdXJjZUNvbXBvbmVudEZvckNvbm5lY3RvcihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IgY29ubikgeworCQlQcm9wZXJ0eSBpbnB1dDsKKwkJUG9ydFtdIGlucHV0UG9ydCA9IG5ldyBQb3J0WzFdOworCQlpbnQgaW5kZXggPSBnZXRTb3VyY2VQb3J0KGNvbm4sIGlucHV0UG9ydCk7CisJCWlmICgoaW5kZXggPCAwKSB8fCAoY29ubi5nZXRFbmRzKCkuZ2V0KGluZGV4KS5nZXRQYXJ0V2l0aFBvcnQoKSA9PSBudWxsKSkgeworCQkJcmV0dXJuIG51bGw7CisJCX0gZWxzZSB7CisJCQlpbnB1dCA9IGNvbm4uZ2V0RW5kcygpLmdldChpbmRleCkuZ2V0UGFydFdpdGhQb3J0KCk7CisJCX0KKwkJcmV0dXJuIGlucHV0OworCX0KKworCS8qKgorCSAqIEdldCB0aGUgZGVzdGluYXRpb24gcG9ydCBuYW1lIG9mIGEgY29ubmVjdG9yCisJICovCisJc3RhdGljIHB1YmxpYyBTdHJpbmcgZ2V0RGVzdFBvcnROYW1lKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciBjb25uKSB7CisJCVN0cmluZyBvdXRwdXROYW1lOworCQlQb3J0W10gb3V0cHV0UG9ydCA9IG5ldyBQb3J0WzFdOworCQlpbnQgaW5kZXggPSBnZXREZXN0UG9ydChjb25uLCBvdXRwdXRQb3J0KTsKKwkJaWYgKGluZGV4IDwgMCkgeworCQkJcmV0dXJuICJVbmtub3duIjsKKwkJfQorCisJCW91dHB1dE5hbWUgPSBvdXRwdXRQb3J0WzBdLmdldE5hbWUoKTsKKworCQlyZXR1cm4gb3V0cHV0TmFtZTsKKwl9CisKKwkvKioKKwkgKiBHZXQgdGhlIGRlc3RpbmF0aW9uIGNvbXBvbmVudCBpbnN0YW5jZSBvZiBhIGNvbm5lY3RvcgorCSAqLworCXN0YXRpYyBwdWJsaWMgb3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHkgZ2V0RGVzdENvbXBvbmVudEZvckNvbm5lY3RvcihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IgY29ubikgeworCQlQcm9wZXJ0eSBvdXRwdXQ7CisJCVBvcnRbXSBvdXRwdXRQb3J0ID0gbmV3IFBvcnRbMV07CisJCWludCBpbmRleCA9IGdldERlc3RQb3J0KGNvbm4sIG91dHB1dFBvcnQpOworCQlpZiAoKGluZGV4IDwgMCkgfHwgKGNvbm4uZ2V0RW5kcygpLmdldChpbmRleCkuZ2V0UGFydFdpdGhQb3J0KCkgPT0gbnVsbCkpIHsKKwkJCXJldHVybiBudWxsOworCQl9IGVsc2UgeworCQkJb3V0cHV0ID0gY29ubi5nZXRFbmRzKCkuZ2V0KGluZGV4KS5nZXRQYXJ0V2l0aFBvcnQoKTsKKwkJfQorCQlyZXR1cm4gb3V0cHV0OworCX0KKworCS8qKgorCSAqIFJldHJpZXZlIHRoZSBtb2RlbCBuYW1lIChvciB0eXBlIG5hbWUpIG9mIGEgY29tcG9uZW50IGF0IHRoZSBkZXN0aW5hdGlvbiBvZiBhIGNvbm5lY3Rvci4KKwkgKgorCSAqIEBwYXJhbSBjb25uCisJICogQHJldHVybiBhIHN0cmluZyBvciBudWxsIGlmIG5vIGNvbXBvbmVudCBoYXMgYmVlbiBmb3VuZCBhdCB0aGUgZGVzdGluYXRpb24gb2YgYSBjb25uZWN0b3IuCisJICovCisJc3RhdGljIHB1YmxpYyBTdHJpbmcgZ2V0RGVzdENvbXBvbmVudFR5cGVOYW1lRm9yQ29ubmVjdG9yKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciBjb25uKSB7CisJCVByb3BlcnR5IHByb3AgPSBnZXREZXN0Q29tcG9uZW50Rm9yQ29ubmVjdG9yKGNvbm4pOworCQlpZiAocHJvcCA9PSBudWxsKSB7CisJCQlyZXR1cm4gbnVsbDsKKwkJfQorCQlyZXR1cm4gcHJvcC5nZXRUeXBlKCkuZ2V0TmFtZSgpOworCX0KKworCS8qKgorCSAqIFJldHJpZXZlIHRoZSBpbnN0YW5jZSBuYW1lIG9mIGEgY29tcG9uZW50IGF0IHRoZSBkZXN0aW5hdGlvbiBvZiBhIGNvbm5lY3Rvci4KKwkgKgorCSAqIEBwYXJhbSBjb25uCisJICogQHJldHVybiBhIHN0cmluZyBvciBudWxsIGlmIG5vIGNvbXBvbmVudCBoYXMgYmVlbiBmb3VuZCBhdCB0aGUgZGVzdGluYXRpb24gb2YgYSBjb25uZWN0b3IuCisJICovCisJc3RhdGljIHB1YmxpYyBTdHJpbmcgZ2V0RGVzdENvbXBvbmVudEluc3RhbmNlTmFtZUZvckNvbm5lY3RvcihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IgY29ubikgeworCQlQcm9wZXJ0eSBwcm9wID0gZ2V0RGVzdENvbXBvbmVudEZvckNvbm5lY3Rvcihjb25uKTsKKwkJaWYgKHByb3AgPT0gbnVsbCkgeworCQkJcmV0dXJuIG51bGw7CisJCX0KKwkJcmV0dXJuIHByb3AuZ2V0TmFtZSgpOworCX0KKworCS8qKgorCSAqIFJldHJpZXZlcyBhbGwgdGhlIGNvbm5lY3RvcnMgYmV0d2VlbiBzdWJjb21wb25lbnRzIGluc2lkZSBhIGdpdmVuIGNvbXBvbmVudCBtb2RlbC4KKwkgKiAoZG9lcyBub3QgcmV0cmlldmUgY29ubmVjdG9ycyBiZXR3ZWVuIGNvbXBvbmVudCBtb2RlbCBib3VuZGFyaWVzIGFuZCBzdWJjb21wb25lbnRzIGluc2lkZSB0aGUgbW9kZWwpLgorCSAqLworCXN0YXRpYyBwdWJsaWMgTGlzdDxvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3I+IGdldEludGVybmFsQ29ubmVjdG9ycyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyBjKSB7CisJCUxpbmtlZExpc3Q8b3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yPiBjb25uZWN0b3JzID0gbmV3IExpbmtlZExpc3Q8b3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yPigpOworCQlmb3IgKENvbm5lY3RvciBjb25uIDogYy5nZXRPd25lZENvbm5lY3RvcnMoKSkgeworCQkJaWYgKGNvbm4uZ2V0RW5kcygpLnNpemUoKSA+PSAyICYmIChjb25uLmdldEVuZHMoKS5nZXQoMCkuZ2V0UGFydFdpdGhQb3J0KCkgIT0gbnVsbCkgJiYgKGNvbm4uZ2V0RW5kcygpLmdldCgxKS5nZXRQYXJ0V2l0aFBvcnQoKSAhPSBudWxsKSkgeworCQkJCWNvbm5lY3RvcnMuYWRkKGNvbm4pOworCQkJfQorCQl9CisJCXJldHVybiBjb25uZWN0b3JzOworCX0KKworCS8qKgorCSAqIFJldHJpZXZlcyBhbGwgdGhlIGNvbm5lY3RvcnMgYmV0d2VlbiB0aGUgaW5wdXQgY29tcG9uZW50IG1vZGVsIGJvdW5kYXJpZXMgYW5kIHN1YmNvbXBvbmVudHMgdGhhdCBhcmUgaW5zaWRlIHRoZSBtb2RlbC4KKwkgKiAoZG9lcyBub3QgcmV0cmlldmUgY29ubmVjdG9ycyBiZXR3ZWVuIHN1YmNvbXBvbmVudHMgaW5zaWRlIHRoZSBjb21wb25lbnQgbW9kZWwsIG5vciBjb25uZWN0b3JzIGZyb20gc3ViY29tcG9uZW50cyB0byBjb21wb25lbnQgbW9kZWwgb3V0cHV0cykuCisJICovCisJc3RhdGljIHB1YmxpYyBMaXN0PG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3Rvcj4gZ2V0RXh0ZXJuYWxJbnB1dENvbm5lY3RvcnMob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgYykgeworCQlMaW5rZWRMaXN0PG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3Rvcj4gY29ubmVjdG9ycyA9IG5ldyBMaW5rZWRMaXN0PG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3Rvcj4oKTsKKwkJZm9yIChDb25uZWN0b3IgY29ubiA6IGMuZ2V0T3duZWRDb25uZWN0b3JzKCkpIHsKKwkJCWlmIChjb25uLmdldEVuZHMoKS5zaXplKCkgPj0gMikgey8vICYmIChjb25uLmdldEVuZHMoKS5nZXQoMSkuZ2V0UGFydFdpdGhQb3J0KCkgIT0gbnVsbCkpIHsKKwkJCQlpZiAoY29ubi5nZXRFbmRzKCkuZ2V0KDApLmdldFJvbGUoKSBpbnN0YW5jZW9mIFBvcnQgJiYgY29ubi5nZXRFbmRzKCkuZ2V0KDEpLmdldFJvbGUoKSBpbnN0YW5jZW9mIFBvcnQpIHsKKwkJCQkJUG9ydCBwb3J0XzEgPSAoUG9ydCkgY29ubi5nZXRFbmRzKCkuZ2V0KDApLmdldFJvbGUoKTsKKwkJCQkJUG9ydCBwb3J0XzIgPSAoUG9ydCkgY29ubi5nZXRFbmRzKCkuZ2V0KDEpLmdldFJvbGUoKTsKKwkJCQkJaWYgKChpc0FuSW5wdXRQb3J0KHBvcnRfMSkgJiYgY29ubi5nZXRFbmRzKCkuZ2V0KDApLmdldFBhcnRXaXRoUG9ydCgpID09IG51bGwpIHx8IChpc0FuSW5wdXRQb3J0KHBvcnRfMikgJiYgY29ubi5nZXRFbmRzKCkuZ2V0KDEpLmdldFBhcnRXaXRoUG9ydCgpID09IG51bGwpKSB7CisJCQkJCQljb25uZWN0b3JzLmFkZChjb25uKTsKKwkJCQkJfQorCQkJCX0KKwkJCX0KKwkJfQorCQlyZXR1cm4gY29ubmVjdG9yczsKKwl9CisKKwkvKioKKwkgKiBSZXRyaWV2ZXMgYWxsIHRoZSBjb25uZWN0b3JzIGJldHdlZW4gc3ViY29tcG9uZW50cyB0aGF0IGFyZSBpbnNpZGUgdGhlIGNvbXBvbmVudCBtb2RlbCBhbmQgdGhlIGNvbXBvbmVudCBtb2RlbCBvdXRwdXRzLgorCSAqIChkb2VzIG5vdCByZXRyaWV2ZSBjb25uZWN0b3JzIGJldHdlZW4gc3ViY29tcG9uZW50cyBpbnNpZGUgdGhlIGNvbXBvbmVudCBtb2RlbCwgbm9yIGNvbm5lY3RvcnMgZnJvbSBjb21wb25lbnQgbW9kZWwgaW5wdXRzIHRvIHN1YmNvbXBvbmVudHMpLgorCSAqLworCXN0YXRpYyBwdWJsaWMgTGlzdDxvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3I+IGdldEV4dGVybmFsT3V0cHV0Q29ubmVjdG9ycyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyBjKSB7CisJCUxpbmtlZExpc3Q8b3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yPiBjb25uZWN0b3JzID0gbmV3IExpbmtlZExpc3Q8b3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yPigpOworCQlmb3IgKENvbm5lY3RvciBjb25uIDogYy5nZXRPd25lZENvbm5lY3RvcnMoKSkgeworCQkJaWYgKGNvbm4uZ2V0RW5kcygpLnNpemUoKSA+PSAyKSB7Ly8gJiYgKGNvbm4uZ2V0RW5kcygpLmdldCgwKS5nZXRQYXJ0V2l0aFBvcnQoKSAhPSBudWxsKSkgeworCQkJCWlmIChjb25uLmdldEVuZHMoKS5nZXQoMCkuZ2V0Um9sZSgpIGluc3RhbmNlb2YgUG9ydCAmJiBjb25uLmdldEVuZHMoKS5nZXQoMSkuZ2V0Um9sZSgpIGluc3RhbmNlb2YgUG9ydCkgeworCQkJCQlQb3J0IHBvcnRfMSA9IChQb3J0KSBjb25uLmdldEVuZHMoKS5nZXQoMCkuZ2V0Um9sZSgpOworCQkJCQlQb3J0IHBvcnRfMiA9IChQb3J0KSBjb25uLmdldEVuZHMoKS5nZXQoMSkuZ2V0Um9sZSgpOworCQkJCQlpZiAoKGlzQW5PdXRwdXRQb3J0KHBvcnRfMSkgJiYgY29ubi5nZXRFbmRzKCkuZ2V0KDApLmdldFBhcnRXaXRoUG9ydCgpID09IG51bGwpIHx8IChpc0FuT3V0cHV0UG9ydChwb3J0XzIpICYmIGNvbm4uZ2V0RW5kcygpLmdldCgxKS5nZXRQYXJ0V2l0aFBvcnQoKSA9PSBudWxsKSkgeworCQkJCQkJY29ubmVjdG9ycy5hZGQoY29ubik7CisJCQkJCX0KKwkJCQl9CisJCQl9CisJCX0KKwkJcmV0dXJuIGNvbm5lY3RvcnM7CisJfQorCisJLyoqCisJICogUmV0cmlldmVzIHRoZSBoaWdoZXN0IGxldmVsIGNsYXNzIGludG8gd2hpY2ggYSBnaXZlbiBtb2RlbCBpcyBjb250YWluZWQuCisJICogKGEgbW9kZWwgY2FuIGJlIGNvbnRhaW5lZCBpbiBhIG1vZGVsIC4uLiB3aGljaCBpcyBjb250YWluZWQgaW4gYSBjbGFzcykuCisJICovCisJc3RhdGljIHB1YmxpYyBvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyBnZXRSb290Q2xhc3NGb3JNb2RlbChvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCBtKSB7CisJCWZvciAoRWxlbWVudCBuZSA6IG0uZ2V0T3duZWRFbGVtZW50cygpKSB7CisJCQlpZiAobmUgaW5zdGFuY2VvZiBvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykgeworCQkJCXJldHVybiAob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIG5lOworCQkJfSBlbHNlIGlmIChuZSBpbnN0YW5jZW9mIG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsKSB7CisJCQkJcmV0dXJuIGdldFJvb3RDbGFzc0Zvck1vZGVsKChvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCkgbmUpOworCQkJfQorCQl9CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIE9uIGEgZ2l2ZW4gY2xhc3MgKGEgUm9ib3RNTCBzeXN0ZW0pLCByZXRyaWV2ZSBhbGwgdGhlIGNvbnRhaW5lZCBzeXN0ZW1zLgorCSAqIFJlY3Vyc2l2ZS4KKwkgKi8KKwlzdGF0aWMgcHVibGljIExpc3Q8b3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk+IGdldEFsbFN1YkNvbXBvbmVudHNJbkNsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzIGMpIHsKKwkJTGlua2VkTGlzdDxvcmcuZWNsaXBzZS51bWwyLnVtbC5Qcm9wZXJ0eT4gc3ViX2NvbXBvbmVudHMgPSBuZXcgTGlua2VkTGlzdDxvcmcuZWNsaXBzZS51bWwyLnVtbC5Qcm9wZXJ0eT4oKTsKKwkJTGlzdDxvcmcuZWNsaXBzZS51bWwyLnVtbC5Qcm9wZXJ0eT4gbGV2ZWxfMSA9IGdldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnQoYyk7CisJCXN1Yl9jb21wb25lbnRzLmFkZEFsbChsZXZlbF8xKTsKKwkJZm9yIChQcm9wZXJ0eSBwcm9wIDogbGV2ZWxfMSkgeworCQkJTGlzdDxQcm9wZXJ0eT4gbmV4dF9sZXZlbHMgPSBnZXRBbGxTdWJDb21wb25lbnRzSW5DbGFzcygob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIHByb3AuZ2V0VHlwZSgpKTsKKwkJCXN1Yl9jb21wb25lbnRzLmFkZEFsbChuZXh0X2xldmVscyk7CisJCX0KKwkJcmV0dXJuIHN1Yl9jb21wb25lbnRzOworCX0KKworCS8qKgorCSAqIE9uIGEgZ2l2ZW4gY2xhc3MgKGEgUm9ib3RNTCBzeXN0ZW0pLCByZXRyaWV2ZSBhbGwgdGhlIGNvbnRhaW5lZCBzeXN0ZW1zLgorCSAqIE5vdCByZWN1cnNpdmUuIFJldHJpZXZlcyBvbmx5IG9uZSBsZXZlbCBkZWVwLgorCSAqLworCXN0YXRpYyBwdWJsaWMgTGlzdDxvcmcuZWNsaXBzZS51bWwyLnVtbC5Qcm9wZXJ0eT4gZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudChvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyBjKSB7CisJCUxpbmtlZExpc3Q8b3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk+IHN1Yl9jb21wb25lbnRzID0gbmV3IExpbmtlZExpc3Q8b3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk+KCk7CisJCWZvciAob3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHkgcHJvcCA6IGMuZ2V0QWxsQXR0cmlidXRlcygpKSB7CisJCQlUeXBlIHQgPSBwcm9wLmdldFR5cGUoKTsKKwkJCWlmICh0IGluc3RhbmNlb2Ygb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIHsKKwkJCQlpZiAoR2VuZXJhbFF1ZXJpZXMuaGFzU3RlcmVvdHlwZSgob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIHQsIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0uY2xhc3MpKSB7CisJCQkJCXN1Yl9jb21wb25lbnRzLmFkZChwcm9wKTsKKwkJCQl9CisJCQl9CisJCX0KKwkJcmV0dXJuIHN1Yl9jb21wb25lbnRzOworCX0KKworCS8qKgorCSAqIE9uIGEgZ2l2ZW4gY2xhc3MgKGEgUm9ib3RNTCBzeXN0ZW0pLCByZXRyaWV2ZSBhbGwgdGhlIGNvbnRhaW5lZCBzeXN0ZW1zLgorCSAqIE5vdCByZWN1cnNpdmUuIFJldHJpZXZlcyBvbmx5IG9uZSBsZXZlbCBkZWVwLgorCSAqCisJICogQGRlcHJlY2F0ZWQgcmVwbGFjZWQgYnkgZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudChvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyBjKSB3aGljaCB1c2VzIHRoZSBSb2JvdE1MIEFQSSBpbnN0ZWFkIG9mIHN0ZXJlb3R5cGUKKwkgKiAgICAgICAgICAgICBuYW1lcy4KKwkgKi8KKwlARGVwcmVjYXRlZAorCXN0YXRpYyBwdWJsaWMgTGlzdDxvcmcuZWNsaXBzZS51bWwyLnVtbC5Qcm9wZXJ0eT4gZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudFdpdGhTdGVyZW90eXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzIGMsIFN0cmluZyBzdGVyZW90eXBlKSB7CisJCUxpbmtlZExpc3Q8b3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk+IHN1Yl9jb21wb25lbnRzID0gbmV3IExpbmtlZExpc3Q8b3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk+KCk7CisJCWZvciAoUHJvcGVydHkgcHJvcCA6IGMuZ2V0QWxsQXR0cmlidXRlcygpKSB7CisJCQlUeXBlIHQgPSBwcm9wLmdldFR5cGUoKTsKKwkJCWlmICh0IGluc3RhbmNlb2Ygb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIHsKKwkJCQkvLyBpZihHZW5lcmFsUXVlcmllcy5oYXNTdGVyZW90eXBlKChvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykgdCwgc3RlcmVvdHlwZSkpCisJCQkJaWYgKEdlbmVyYWxRdWVyaWVzLmluaGVyaXRzRnJvbSgob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIHQsIHN0ZXJlb3R5cGUpKSB7CisJCQkJCXN1Yl9jb21wb25lbnRzLmFkZChwcm9wKTsKKwkJCQl9CisJCQl9CisJCX0KKwkJcmV0dXJuIHN1Yl9jb21wb25lbnRzOworCX0KKworCisJLyoqCisJICogQXMgaXRzIG5hbWUgc2F5cywgcmV0cmlldmVzIHRoZSBvdXRwdXQgcG9ydHMgZm9yIGEgZ2l2ZW4gZWxlbWVudC4KKwkgKi8KKwlzdGF0aWMgcHVibGljIExpc3Q8b3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydD4gZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50KEVsZW1lbnQgZWx0KSB7CisJCUxpbmtlZExpc3Q8b3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydD4gZm91bmRfb3V0cHV0X3BvcnRzID0gbmV3IExpbmtlZExpc3Q8b3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydD4oKTsKKwkJZm9yIChFbGVtZW50IGNoaWxkIDogZWx0LmdldE93bmVkRWxlbWVudHMoKSkgeworCQkJaWYgKGNoaWxkIGluc3RhbmNlb2Ygb3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkgeworCQkJCWlmIChpc0FuT3V0cHV0UG9ydCgob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkgY2hpbGQpKSB7CisJCQkJCWZvdW5kX291dHB1dF9wb3J0cy5hZGQoKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIGNoaWxkKTsKKwkJCQl9CisJCQl9CisJCX0KKwkJcmV0dXJuIGZvdW5kX291dHB1dF9wb3J0czsKKwl9CisKKwkvKioKKwkgKiBBcyBpdHMgbmFtZSBzYXlzLCByZXRyaWV2ZXMgdGhlIGlucHV0IHBvcnRzIGZvciBhIGdpdmVuIGVsZW1lbnQuCisJICovCisJc3RhdGljIHB1YmxpYyBMaXN0PFBvcnQ+IGdldElucHV0UG9ydHNGb3JFbGVtZW50KEVsZW1lbnQgZWx0KSB7CisJCUxpbmtlZExpc3Q8UG9ydD4gZm91bmRfaW5wdXRfcG9ydHMgPSBuZXcgTGlua2VkTGlzdDxvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0PigpOworCQlmb3IgKEVsZW1lbnQgY2hpbGQgOiBlbHQuZ2V0T3duZWRFbGVtZW50cygpKSB7CisJCQlpZiAoY2hpbGQgaW5zdGFuY2VvZiBOYW1lZEVsZW1lbnQgJiYgY2hpbGQgaW5zdGFuY2VvZiBvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSB7CisJCQkJaWYgKGlzQW5JbnB1dFBvcnQoKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIGNoaWxkKSkgeworCQkJCQlQb3J0IGZvdW5kX3BvcnQgPSAob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkgY2hpbGQ7CisJCQkJCWZvdW5kX2lucHV0X3BvcnRzLmFkZChmb3VuZF9wb3J0KTsKKwkJCQl9CisJCQl9CisJCX0KKwkJcmV0dXJuIGZvdW5kX2lucHV0X3BvcnRzOworCX0KKworCXN0YXRpYyBwdWJsaWMgTGlzdDxvcmcuZWNsaXBzZS51bWwyLnVtbC5Qcm9wZXJ0eT4gZ2V0T25Qb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhcmFtZXRlciBwYXJhbSkgeworCQlMaW5rZWRMaXN0PG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5PiByZXN1bHQgPSBuZXcgTGlua2VkTGlzdDxvcmcuZWNsaXBzZS51bWwyLnVtbC5Qcm9wZXJ0eT4oKTsKKwkJZm9yIChTdGVyZW90eXBlIHN0IDogcGFyYW0uZ2V0QXBwbGllZFN0ZXJlb3R5cGVzKCkpIHsKKwkJCWlmIChzdC5nZXROYW1lKCkuY29udGFpbnMoIk9uUG9ydCIpKSB7CisJCQkJZm9yIChQcm9wZXJ0eSBwIDogc3QuZ2V0QXR0cmlidXRlcygpKSB7CisJCQkJCXJlc3VsdC5hZGQocCk7CisJCQkJfQorCQkJfQorCQl9CisKKwkJcmV0dXJuIHJlc3VsdDsKKwl9CisKKwkvKioKKwkgKiBSZXRyaWV2ZXMgYWxsIHRoZSBjb21wb25lbnQgbW9kZWxzIGF2YWlsYWJsZSBpbnNpZGUgYSBSb2JvdE1MIG1vZGVsLgorCSAqLworCXN0YXRpYyBwdWJsaWMgTGlzdDxOYW1lZEVsZW1lbnQ+IGdldENvbXBvbmVudE1vZGVscyhNb2RlbCBtb2RlbCkgeworCQlMaW5rZWRMaXN0PE5hbWVkRWxlbWVudD4gZm91bmRfZWx0cyA9IG5ldyBMaW5rZWRMaXN0PE5hbWVkRWxlbWVudD4oKTsKKwkJZm9yIChFbGVtZW50IGVsdCA6IG1vZGVsLmFsbE93bmVkRWxlbWVudHMoKSkgeworCQkJaWYgKGVsdCBpbnN0YW5jZW9mIG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSB7CisJCQkJaWYgKEdlbmVyYWxRdWVyaWVzLmhhc1N0ZXJlb3R5cGUoKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSBlbHQsIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0uY2xhc3MpICYmIGZhbHNlID09IEdlbmVyYWxRdWVyaWVzLmhhc1N0ZXJlb3R5cGUoKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSBlbHQsIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QbGF0Zm9ybS5jbGFzcykpIHsKKwkJCQkJZm91bmRfZWx0cy5hZGQoKE5hbWVkRWxlbWVudCkgZWx0KTsKKwkJCQl9CisJCQl9CisJCX0KKwkJcmV0dXJuIGZvdW5kX2VsdHM7CisJfQorCisJLyoqCisJICogSXMgdGhlIGVsdCBhdCB0aGUgcm9vdCBvZiB0aGUgbW9kZWwgaGllcmFyY2h5ID8KKwkgKgorCSAqIEBwYXJhbSBlbHQKKwkgKiBAcmV0dXJuCisJICovCisJc3RhdGljIHB1YmxpYyBCb29sZWFuIGlzUm9vdE1vZGVsKE1vZGVsIGVsdCkgeworCQlpZiAoZWx0ID09IG51bGwpIHsKKwkJCXJldHVybiBmYWxzZTsKKwkJfQorCQlyZXR1cm4gKGVsdC5nZXRPd25lcigpID09IG51bGwpOworCX0KKworCS8qKgorCSAqIERvZXMgdGhpcyBjbGFzcyBjb250YWluIHByb3BlcnRpZXMgdGhhdCBhcmUgY2xhc3NlcyB0aGVtc2VsdmVzID8KKwkgKiAoaS5lLiBpcyB0aGlzIGNsYXNzIGEgY29udGFpbmVyIG9mIHN1Yi1jbGFzc2VzKQorCSAqCisJICogQHBhcmFtIGMKKwkgKiBAcmV0dXJuCisJICovCisJc3RhdGljIHB1YmxpYyBCb29sZWFuIGlzTWFjcm9Db21wb25lbnQob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgYykgeworCQlib29sZWFuIHJlc3VsdCA9IGZhbHNlOworCQlpZiAoZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudChjKS5zaXplKCkgPiAwKSB7CisJCQlyZXN1bHQgPSB0cnVlOworCQl9CisJCXJldHVybiByZXN1bHQ7CisJfQorCisJc3RhdGljIHB1YmxpYyBCb29sZWFuIGhhc05hdGl2ZUltcGxlbWVudGF0aW9uKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzIGMpIHsKKwkJb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSBzeXMgPSBvcmcuZWNsaXBzZS51bWwyLnVtbC51dGlsLlVNTFV0aWwuZ2V0U3RlcmVvdHlwZUFwcGxpY2F0aW9uKGMsIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0uY2xhc3MpOworCQlpZiAoc3lzID09IG51bGwpIHsKKwkJCXJldHVybiBmYWxzZTsKKwkJfQorCQlyZXR1cm4gc3lzLmlzTmF0aXZlKCk7CisJfQorCisJc3RhdGljIHB1YmxpYyBTdHJpbmcgZ2V0TmF0aXZlTGlicmFyeVBhdGhGb3JDb21wb25lbnQob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgYykgeworCQlvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtIHN5cyA9IG9yZy5lY2xpcHNlLnVtbDIudW1sLnV0aWwuVU1MVXRpbC5nZXRTdGVyZW90eXBlQXBwbGljYXRpb24oYywgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbS5jbGFzcyk7CisJCWlmIChzeXMgPT0gbnVsbCkgeworCQkJcmV0dXJuIG51bGw7CisJCX0KKwkJcmV0dXJuIHN5cy5nZXRMaWJyYXJ5UGF0aCgpOworCX0KKworCXN0YXRpYyBwdWJsaWMgU3RyaW5nIGdldE5hdGl2ZUNvbXBvbmVudE5hbWVGb3JDb21wb25lbnQob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgYykgeworCQlvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtIHN5cyA9IG9yZy5lY2xpcHNlLnVtbDIudW1sLnV0aWwuVU1MVXRpbC5nZXRTdGVyZW90eXBlQXBwbGljYXRpb24oYywgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbS5jbGFzcyk7CisJCWlmIChzeXMgPT0gbnVsbCkgeworCQkJcmV0dXJuIG51bGw7CisJCX0KKwkJcmV0dXJuIHN5cy5nZXRMaWJyYXJ5Q29tcG9uZW50TmFtZSgpOworCX0KKworCXN0YXRpYyBwdWJsaWMgaW50IGdldE91dHB1dFBvcnRCdWZmZXJTaXplKFBvcnQgcCkgeworCQlvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGF0YUZsb3dQb3J0IGRmcCA9IG9yZy5lY2xpcHNlLnVtbDIudW1sLnV0aWwuVU1MVXRpbC5nZXRTdGVyZW90eXBlQXBwbGljYXRpb24ocCwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRhdGFGbG93UG9ydC5jbGFzcyk7CisJCWlmIChkZnAgPT0gbnVsbCkgeworCQkJcmV0dXJuIDA7CisJCX0KKwkJcmV0dXJuIGRmcC5nZXRCdWZmZXJTaXplKCk7CisJfQorCisJLyoqCisJICoKKwkgKi8KKwlzdGF0aWMgcHVibGljIFN0cmluZyBnZXRDb21wb25lbnRGaWxlTmFtZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyBjLCBTdHJpbmcgZW5kKSB7CisJCXJldHVybiBjLmdldE5hbWUoKSArIGVuZDsKKwl9CisKKwkvKioKKwkgKiBAVE9ETzogYXV0aG9yIHRvIGFkZCBzb21lIGRvYy4KKwkgKi8KKwlzdGF0aWMgcHVibGljIEJvb2xlYW4gaXNQb3J0Q29ubmVjdGVkKFBvcnQgcDEpIHsKKwkJaWYgKHAxLmdldEVuZHMoKS5zaXplKCkgPiAwKSB7CisJCQlDb25uZWN0b3IgY29ubiA9IChDb25uZWN0b3IpIHAxLmdldEVuZHMoKS5nZXQoMCkuZ2V0T3duZXIoKTsKKwkJCXJldHVybiBpc0Nvbm5lY3Rpb25WYWxpZChjb25uKTsKKwkJfSBlbHNlIHsKKwkJCXJldHVybiBmYWxzZTsKKwkJfQorCX0KKworCS8qKgorCSAqIEBUT0RPOiBhdXRob3IgdG8gYWRkIHNvbWUgZG9jLiBNaWRkbGV3YXJlIHNwZWNpZmljPworCSAqLworCXN0YXRpYyBwdWJsaWMgU3RyaW5nIGdldENvbm5lY3Rpb25PdGhlclNpZGUoUG9ydCBwMSkgeworCQlpZiAocDEuZ2V0RW5kcygpLnNpemUoKSA+IDApIHsKKwkJCUNvbm5lY3RvciBjb25uID0gKENvbm5lY3RvcikgcDEuZ2V0RW5kcygpLmdldCgwKS5nZXRPd25lcigpOworCQkJQ29ubmVjdG9yRW5kIGUxID0gY29ubi5nZXRFbmRzKCkuZ2V0KDApOworCQkJQ29ubmVjdG9yRW5kIGUyID0gY29ubi5nZXRFbmRzKCkuZ2V0KDEpOworCQkJUG9ydCBwMiA9IG51bGw7CisJCQlqYXZhLmxhbmcuU3lzdGVtLm91dC5wcmludGxuKCJwMT0iICsgcDEuZ2V0TmFtZSgpKTsKKwkJCVByb3BlcnR5IGMyID0gbnVsbDsKKwkJCWlmIChlMS5nZXRSb2xlKCkgPT0gcDEpIHsKKwkJCQlwMiA9IChQb3J0KSBlMi5nZXRSb2xlKCk7CisJCQkJYzIgPSBlMi5nZXRQYXJ0V2l0aFBvcnQoKTsKKwkJCQlqYXZhLmxhbmcuU3lzdGVtLm91dC5wcmludGxuKCIxIC0gcDI9IiArIHAyLmdldE5hbWUoKSArICIsIGMyPSIgKyBjMi5nZXROYW1lKCkpOworCQkJfSBlbHNlIGlmIChlMi5nZXRSb2xlKCkgPT0gcDEpIHsKKwkJCQlwMiA9IChQb3J0KSBlMS5nZXRSb2xlKCk7CisJCQkJYzIgPSBlMS5nZXRQYXJ0V2l0aFBvcnQoKTsKKwkJCQlqYXZhLmxhbmcuU3lzdGVtLm91dC5wcmludGxuKCIyIC0gcDI9IiArIHAyLmdldE5hbWUoKSArICIsIGMyPSIgKyBjMi5nZXROYW1lKCkpOworCQkJfQorCQkJaWYgKGMyLmdldE5hbWUoKS5lcXVhbHMoKChOYW1lZEVsZW1lbnQpIGNvbm4uZ2V0T3duZXIoKSkuZ2V0TmFtZSgpKSkgeworCQkJCXJldHVybiAiQCIgKyBwMi5nZXROYW1lKCk7CisJCQl9IGVsc2UgeworCQkJCXJldHVybiAiQCIgKyBjMi5nZXROYW1lKCkgKyAiLiIgKyBwMi5nZXROYW1lKCk7CisJCQl9CisJCX0gZWxzZSB7CisJCQlyZXR1cm4gIj8/Pz8/IjsKKwkJfQorCX0KKworCS8qKgorCSAqIElzIHRoaXMgcHJvcGVydHkgYSBEYXRhRmxvdyBQb3J0CisJICoKKwkgKiBAcGFyYW0gcG9ydAorCSAqIEByZXR1cm4gaXMgdGhpcyBhIERhdGFGbG93IHBvcnQgPworCSAqLworCXN0YXRpYyBwdWJsaWMgQm9vbGVhbiBpc0RhdGFGbG93UG9ydChQb3J0IHBvcnQpIHsKKwkJRGF0YUZsb3dQb3J0IGRmcCA9IFVNTFV0aWwuZ2V0U3RlcmVvdHlwZUFwcGxpY2F0aW9uKHBvcnQsIERhdGFGbG93UG9ydC5jbGFzcyk7CisJCWlmIChkZnAgPT0gbnVsbCkgeworCQkJcmV0dXJuIGZhbHNlOworCQl9CisJCXJldHVybiB0cnVlOworCX0KKworCS8qKgorCSAqIEZvciBEYXRhRmxvdyBwb3J0czogaXMgaXQgYW4gSW5wdXQgUG9ydCA/CisJICoKKwkgKiBAcGFyYW0gcG9ydAorCSAqIEByZXR1cm4gZmFsc2UgaWYgdGhlIHBvcnQgaXMgbm90IGEgRGF0YUZsb3dQb3J0IG9yIG5vdCBhbiBpbnB1dCBwb3J0LgorCSAqLworCXN0YXRpYyBwdWJsaWMgQm9vbGVhbiBpc0FuSW5wdXRQb3J0KFBvcnQgcG9ydCkgeworCQl0cnkgeworCQkJRGF0YUZsb3dQb3J0IGRmcCA9IFVNTFV0aWwuZ2V0U3RlcmVvdHlwZUFwcGxpY2F0aW9uKHBvcnQsIERhdGFGbG93UG9ydC5jbGFzcyk7CisJCQlpZiAoZGZwID09IG51bGwpIHsKKwkJCQlyZXR1cm4gZmFsc2U7CisJCQl9CisJCQlpZiAoZGZwLmdldERpcmVjdGlvbigpID09IERhdGFGbG93RGlyZWN0aW9uS2luZC5JTikgeworCQkJCXJldHVybiB0cnVlOworCQkJfQorCQkJcmV0dXJuIGZhbHNlOworCQl9IGNhdGNoIChFeGNlcHRpb24gZSkgeworCQkJamF2YS5sYW5nLlN5c3RlbS5vdXQucHJpbnRsbigiRVhDRVBUSU9OIGNhdWdodDoiICsgZS50b1N0cmluZygpKTsKKwkJfQorCQlyZXR1cm4gZmFsc2U7CisJfQorCisJLyoqCisJICogRm9yIERhdGFGbG93IHBvcnRzOiBpcyBpdCBhbiBPdXRwdXQgUG9ydCA/CisJICoKKwkgKiBAcGFyYW0gcG9ydAorCSAqIEByZXR1cm4gZmFsc2UgaWYgdGhlIHBvcnQgaXMgbm90IGEgRGF0YUZsb3dQb3J0IG9yIG5vdCBhbiBvdXRwdXQgcG9ydC4KKwkgKi8KKwlzdGF0aWMgcHVibGljIEJvb2xlYW4gaXNBbk91dHB1dFBvcnQoUG9ydCBwb3J0KSB7CisJCXRyeSB7CisJCQlEYXRhRmxvd1BvcnQgZGZwID0gVU1MVXRpbC5nZXRTdGVyZW90eXBlQXBwbGljYXRpb24ocG9ydCwgRGF0YUZsb3dQb3J0LmNsYXNzKTsKKwkJCWlmIChkZnAgPT0gbnVsbCkgeworCQkJCXJldHVybiBmYWxzZTsKKwkJCX0KKwkJCWlmIChkZnAuZ2V0RGlyZWN0aW9uKCkgPT0gRGF0YUZsb3dEaXJlY3Rpb25LaW5kLk9VVCkgeworCQkJCXJldHVybiB0cnVlOworCQkJfQorCQkJcmV0dXJuIGZhbHNlOworCQl9IGNhdGNoIChFeGNlcHRpb24gZSkgeworCQkJamF2YS5sYW5nLlN5c3RlbS5vdXQucHJpbnRsbigiRVhDRVBUSU9OIGNhdWdodDoiICsgZS50b1N0cmluZygpKTsKKwkJfQorCQlyZXR1cm4gZmFsc2U7CisJfQorCisJLyoqCisJICogRm9yIFJvYm90TUwgU2VydmljZVBvcnRzOiBpcyB0aGUgcG9ydCBhICJQcm92aWRlZCIgcG9ydD8KKwkgKgorCSAqIEBwYXJhbSBwb3J0CisJICogQHJldHVybiBmYWxzZSBpZiB0aGUgcG9ydCBpcyBub3QgYSBTZXJ2aWNlUG9ydCBvciBub3QgYSAiUHJvdmlkZWQiIFNlcnZpY2VQb3J0LgorCSAqLworCXN0YXRpYyBwdWJsaWMgQm9vbGVhbiBpc0FQcm92aWRlZFBvcnQoUG9ydCBwb3J0KSB7CisJCXRyeSB7CisJCQlTZXJ2aWNlUG9ydCBzcCA9IFVNTFV0aWwuZ2V0U3RlcmVvdHlwZUFwcGxpY2F0aW9uKHBvcnQsIFNlcnZpY2VQb3J0LmNsYXNzKTsKKwkJCWlmIChzcCA9PSBudWxsKSB7CisJCQkJcmV0dXJuIGZhbHNlOworCQkJfQorCQkJaWYgKHNwLmdldEtpbmQoKSA9PSBTZXJ2aWNlRmxvd0tpbmQuUFJPVklERUQpIHsKKwkJCQlyZXR1cm4gdHJ1ZTsKKwkJCX0KKwkJCXJldHVybiBmYWxzZTsKKwkJfSBjYXRjaCAoRXhjZXB0aW9uIGUpIHsKKwkJCWphdmEubGFuZy5TeXN0ZW0ub3V0LnByaW50bG4oIkVYQ0VQVElPTiBjYXVnaHQ6IiArIGUudG9TdHJpbmcoKSk7CisJCX0KKwkJcmV0dXJuIGZhbHNlOworCX0KKworCS8qKgorCSAqIEZvciBSb2JvdE1MIFNlcnZpY2VQb3J0czogaXMgdGhlIHBvcnQgYSAiUmVxdWlyZWQiIHBvcnQ/CisJICoKKwkgKiBAcGFyYW0gcG9ydAorCSAqIEByZXR1cm4gZmFsc2UgaWYgdGhlIHBvcnQgaXMgbm90IGEgU2VydmljZVBvcnQgb3Igbm90IGEgIlJlcXVpcmVkIiBTZXJ2aWNlUG9ydC4KKwkgKi8KKwlzdGF0aWMgcHVibGljIEJvb2xlYW4gaXNBUmVxdWlyZWRQb3J0KFBvcnQgcG9ydCkgeworCQl0cnkgeworCQkJU2VydmljZVBvcnQgc3AgPSBVTUxVdGlsLmdldFN0ZXJlb3R5cGVBcHBsaWNhdGlvbihwb3J0LCBTZXJ2aWNlUG9ydC5jbGFzcyk7CisJCQlpZiAoc3AgPT0gbnVsbCkgeworCQkJCXJldHVybiBmYWxzZTsKKwkJCX0KKwkJCWlmIChzcC5nZXRLaW5kKCkgPT0gU2VydmljZUZsb3dLaW5kLlJFUVVJUkVEKSB7CisJCQkJcmV0dXJuIHRydWU7CisJCQl9CisJCQlyZXR1cm4gZmFsc2U7CisJCX0gY2F0Y2ggKEV4Y2VwdGlvbiBlKSB7CisJCQlqYXZhLmxhbmcuU3lzdGVtLm91dC5wcmludGxuKCJFWENFUFRJT04gY2F1Z2h0OiIgKyBlLnRvU3RyaW5nKCkpOworCQl9CisJCXJldHVybiBmYWxzZTsKKwl9CisKKwkvKioKKwkgKiBJcyB0aGlzIHByb3BlcnR5IGEgU2VydmljZSBQb3J0CisJICoKKwkgKiBAcGFyYW0gcG9ydAorCSAqIEByZXR1cm4gaXMgdGhpcyBhIHNlcnZpY2UgcG9ydCA/CisJICovCisJc3RhdGljIHB1YmxpYyBCb29sZWFuIGlzU2VydmljZVBvcnQoUG9ydCBwb3J0KSB7CisJCVNlcnZpY2VQb3J0IHNlcnZpY2Vwb3J0ID0gVU1MVXRpbC5nZXRTdGVyZW90eXBlQXBwbGljYXRpb24ocG9ydCwgU2VydmljZVBvcnQuY2xhc3MpOworCQlyZXR1cm4gc2VydmljZXBvcnQgIT0gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBAVE9PRDogYXV0aG9yIHRvIGFkZCBzb21lIGRvYy4KKwkgKi8KKwlzdGF0aWMgcHVibGljIEJvb2xlYW4gZGVmaW5lc0Nvbm5lY3Rpb25zKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzIGNsKSB7CisJCXJldHVybiBjbC5nZXRPd25lZENvbm5lY3RvcnMoKS5zaXplKCkgPiAwOworCX0KKworCS8qKgorCSAqIEBUT0RPOiBhdXRob3IgdG8gYWRkIHNvbWUgZG9jCisJICovCisJc3RhdGljIHB1YmxpYyBCb29sZWFuIGlzQ29ubmVjdGlvblZhbGlkKENvbm5lY3RvciBjb25uZWN0b3IpIHsKKwkJaWYgKGNvbm5lY3Rvci5nZXRFbmRzKCkuc2l6ZSgpICE9IDIpIHsKKwkJCXJldHVybiBmYWxzZTsKKwkJfQorCQlmb3IgKENvbm5lY3RvckVuZCBjZW5kIDogY29ubmVjdG9yLmdldEVuZHMoKSkgeworCQkJaWYgKChjZW5kLmdldFJvbGUoKSA9PSBudWxsKSB8fCAoY2VuZC5nZXRQYXJ0V2l0aFBvcnQoKSA9PSBudWxsKSkgeworCQkJCXJldHVybiBmYWxzZTsKKwkJCX0KKwkJfQorCQlyZXR1cm4gdHJ1ZTsKKwl9CisKKwkvKioKKwkgKiBAVE9ETzogdGhpcyBzZWVtcyB0byBiZSBtaWRkbGV3YXJlIHNwZWNpZmljLiBUbyBiZSBtb3ZlZCB0byBjb3JyZXNwb25kaW5nIG1pZGRsZXdhcmUgZ2VuZXJhdG9yIHByb2plY3QuCisJICovCisJc3RhdGljIHB1YmxpYyBTdHJpbmcgZ2V0Q29ubmVjdGlvbkRlZmluaXRpb24oQ29ubmVjdG9yIGNvbm5lY3RvcikgeworCQlDb25uZWN0b3JFbmQgZTEgPSBjb25uZWN0b3IuZ2V0RW5kcygpLmdldCgwKTsKKwkJQ29ubmVjdG9yRW5kIGUyID0gY29ubmVjdG9yLmdldEVuZHMoKS5nZXQoMSk7CisJCXJldHVybiBlMS5nZXRQYXJ0V2l0aFBvcnQoKS5nZXROYW1lKCkgKyAiLiIgKyBlMS5nZXRSb2xlKCkuZ2V0TmFtZSgpICsgIi5jb25uZWN0VG8oIiArIGUyLmdldFBhcnRXaXRoUG9ydCgpLmdldE5hbWUoKSArICIuIiArIGUyLmdldFJvbGUoKS5nZXROYW1lKCkgKyAiKSI7CisJfQorCisJc3RhdGljIHB1YmxpYyBQb3J0IGdldENvbm5lY3RlZFBvcnQoUG9ydCBwb3J0KSB7CisJCWlmIChwb3J0LmdldEVuZHMoKS5zaXplKCkgPT0gMCkgeworCQkJcmV0dXJuIG51bGw7CisJCX0KKworCQlDb25uZWN0b3IgY29ubiA9IChDb25uZWN0b3IpIHBvcnQuZ2V0RW5kcygpLmdldCgwKS5nZXRPd25lcigpOworCQlDb25uZWN0b3JFbmQgZTEgPSBjb25uLmdldEVuZHMoKS5nZXQoMCk7CisJCUNvbm5lY3RvckVuZCBlMiA9IGNvbm4uZ2V0RW5kcygpLmdldCgxKTsKKwkJcmV0dXJuIChlMS5nZXRSb2xlKCkgPT0gcG9ydCkgPyAoUG9ydCkgZTIuZ2V0Um9sZSgpIDogKFBvcnQpIGUxLmdldFJvbGUoKTsKKwl9CisKKwkvKioKKwkgKiBHZXQgZXh0ZXJuYWwgY29ubmVjdG9ycyB0byBhIHBvcnQKKwkgKgorCSAqIEBwYXJhbSBwb3J0CisJICogQHJldHVybiBhIGxpc3Qgb2YgY29ubmVjdG9ycyB3aGljaCBhcmUgY29ubmVjdGVkIHRvIHRoZSBwb3J0LgorCSAqLworCXN0YXRpYyBwdWJsaWMgTGlzdDxvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3I+IGdldENvbm5lY3Rpb25zRnJvbVBvcnQoUG9ydCBwb3J0KSB7CisJCUxpbmtlZExpc3Q8b3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yPiBjb25uZWN0b3JzID0gbmV3IExpbmtlZExpc3Q8b3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yPigpOworCisJCWZvciAoQ29ubmVjdG9yRW5kIGNvbm5FbmQgOiBwb3J0LmdldEVuZHMoKSkgeworCQkJQ29ubmVjdG9yIGNvbm4gPSAoQ29ubmVjdG9yKSBjb25uRW5kLmdldE93bmVyKCk7CisKKwkJCWlmIChjb25uLmdldEVuZHMoKS5zaXplKCkgPj0gMiAmJiBjb25uLmdldEVuZHMoKS5nZXQoMCkuZ2V0UGFydFdpdGhQb3J0KCkgIT0gbnVsbCAmJiBjb25uLmdldEVuZHMoKS5nZXQoMSkuZ2V0UGFydFdpdGhQb3J0KCkgIT0gbnVsbCkgeworCQkJCWNvbm5lY3RvcnMuYWRkKGNvbm4pOworCQkJfQorCQl9CisKKwkJcmV0dXJuIGNvbm5lY3RvcnM7CisJfQorCisJLyoqCisJICogRGVidWcgZnVuY3Rpb246IHByaW50cyBpbmZvIGFib3V0IGEgZ2l2ZW4gZGF0YWZsb3cgcG9ydC4KKwkgKi8KKwlzdGF0aWMgcHVibGljIHZvaWQgaW5zcGVjdERhdGFGbG93UG9ydChQb3J0IHBvcnQpIHsKKwkJLy8KKwkJU3RlcmVvdHlwZSBwc3QgPSBwb3J0LmdldEFwcGxpZWRTdGVyZW90eXBlcygpLmdldCgwKTsKKworCQkvLyBUeXBlIGR1IHBvcnQKKwkJaWYgKHBvcnQuZ2V0VHlwZSgpICE9IG51bGwpIHsKKwkJCWphdmEubGFuZy5TeXN0ZW0ub3V0LnByaW50bG4oIlx0XHQqIHR5cGU6ICIgKyBwb3J0LmdldFR5cGUoKS5nZXROYW1lKCkpOworCQl9IGVsc2UgeworCQkJamF2YS5sYW5nLlN5c3RlbS5lcnIucHJpbnRsbigiXHRcdFx0KiBwb3J0ICIgKyBwb3J0LmdldE5hbWUoKSArICIgaGFzIG5vIHR5cGUgISAiKTsKKwkJfQorCQkvLworCQkvLworCQkvLyBBIHBhcnRpciBkZXMgYXR0cmlidXRzIGNpLWRlc3NvdXMsIG9uIHBldXQgcsOpY3Vww6lyZXI6CisJCS8vIC0gbGEgdGFpbGxlIGR1IGJ1ZmZlcgorCQkvLyAtIGxhIGRpcmVjdGlvbiAow6ludW3DqXLDqSBJTiBvdSBPVVQpCisJCS8vIC0gbGUgcHJvdG9jb2xlIGRlIHN5bmNocm9uaXphdGlvbiAow6ludW3DqXLDqSBTWU5DSCBvdSBBU1lOQ0ggb3UgVU5ERUZJTkVEKQorCQkvLworCQlmb3IgKFByb3BlcnR5IHByb3BTdCA6IHBzdC5nZXRBbGxBdHRyaWJ1dGVzKCkpIHsKKwkJCWphdmEubGFuZy5TeXN0ZW0ub3V0LnByaW50bG4oIlx0XHQqIHBvcnQgc3RlcmVvdHlwZSBoYXMgYXR0cmlidXRlOiAiICsgcHJvcFN0LmdldE5hbWUoKSArICIgLSAiICsgcG9ydC5nZXRWYWx1ZShwc3QsIHByb3BTdC5nZXROYW1lKCkpKTsKKwkJfQorCisJfQorCisJLyoqCisJICogRGVidWcgZnVuY3Rpb24uIFByaW50cyBpbmZvIGFib3V0IGEgZ2l2ZW4gc2VydmljZSBwb3J0LgorCSAqLworCXN0YXRpYyBwdWJsaWMgdm9pZCBpbnNwZWN0U2VydmljZVBvcnQoUG9ydCBwb3J0KSB7CisJCS8vCisJCVN0ZXJlb3R5cGUgcHN0ID0gcG9ydC5nZXRBcHBsaWVkU3RlcmVvdHlwZXMoKS5nZXQoMCk7CisKKwkJLy8KKwkJaWYgKHBvcnQuZ2V0VHlwZSgpICE9IG51bGwpIHsKKwkJCWphdmEubGFuZy5TeXN0ZW0ub3V0LnByaW50bG4oIlx0XHQqIHR5cGU6ICIgKyBwb3J0LmdldFR5cGUoKS5nZXROYW1lKCkpOworCQl9IGVsc2UgeworCQkJamF2YS5sYW5nLlN5c3RlbS5lcnIucHJpbnRsbigiXHRcdFx0KiBwb3J0ICIgKyBwb3J0LmdldE5hbWUoKSArICIgaGFzIG5vIHR5cGUgISAiKTsKKwkJfQorCQkvLyBBIHBhcnRpciBkZXMgYXR0cmlidXRzIGNpLWRlc3NvdXMsIG9uIHBldXQgcsOpY3Vww6lyZXI6CisJCS8vIC0gbGUgdHlwZSBkJ2ludGVyZmFjZSjDqW51bcOpcsOpIFByb3ZpZGVkIG91IFJlcXVpcmVkKQorCQkvLyAtIGxlIHByb3RvY29sZSBkZSBzeW5jaHJvbml6YXRpb24gKMOpbnVtw6lyw6kgU1lOQ0ggb3UgQVNZTkNIIG91IFVOREVGSU5FRCkKKwkJLy8KKworCQlmb3IgKFByb3BlcnR5IHByb3BTdCA6IHBzdC5nZXRBbGxBdHRyaWJ1dGVzKCkpIHsKKwkJCWphdmEubGFuZy5TeXN0ZW0ub3V0LnByaW50bG4oIlx0XHQqIHBvcnQgc3RlcmVvdHlwZSBoYXMgYXR0cmlidXRlOiAiICsgcHJvcFN0LmdldE5hbWUoKSArICIgLSAiICsgcG9ydC5nZXRWYWx1ZShwc3QsIHByb3BTdC5nZXROYW1lKCkpKTsKKwkJfQorCX0KKworCXN0YXRpYyBwdWJsaWMgQm9vbGVhbiBpc0FuQW5jZXN0b3JPZihDbGFzcyBjdXJyZW50X2VsdCwgQ2xhc3Mgb3RoZXJfZWx0KSB7CisJCUJvb2xlYW4gcmVzdWx0ID0gZmFsc2U7CisJCWlmIChjdXJyZW50X2VsdCAhPSBudWxsICYmIG90aGVyX2VsdCAhPSBudWxsKSB7CisJCQlpZiAoY3VycmVudF9lbHQgPT0gb3RoZXJfZWx0KSB7CisJCQkJcmVzdWx0ID0gdHJ1ZTsKKwkJCX0gZWxzZSB7CisJCQkJZm9yIChDbGFzcyBwYXJlbnQgOiBjdXJyZW50X2VsdC5nZXRTdXBlckNsYXNzZXMoKSkgeworCQkJCQljdXJyZW50X2VsdCA9IHBhcmVudDsKKwkJCQkJaWYgKG90aGVyX2VsdCA9PSBjdXJyZW50X2VsdCkgeworCQkJCQkJcmVzdWx0ID0gdHJ1ZTsKKwkJCQkJCWJyZWFrOworCQkJCQl9CisJCQkJfQorCQkJfQorCQl9CisKKwkJcmV0dXJuIHJlc3VsdDsKKwl9CisKKwkvKioKKwkgKiBGb3IgRGF0YUZsb3cgcG9ydHM6IGlzIGl0IGFuIE91dHB1dCBQb3J0ID8KKwkgKgorCSAqIEBwYXJhbSBwb3J0CisJICogQHJldHVybiBmYWxzZSBpZiB0aGUgcG9ydCBpcyBub3QgYSBEYXRhRmxvd1BvcnQgb3Igbm90IGFuIGlucHV0L291dHB1dCBwb3J0LgorCSAqLworCXN0YXRpYyBwdWJsaWMgQm9vbGVhbiBpc0FuSW5wdXRPdXRwdXRQb3J0KFBvcnQgcG9ydCkgeworCQl0cnkgeworCQkJRGF0YUZsb3dQb3J0IGRmcCA9IFVNTFV0aWwuZ2V0U3RlcmVvdHlwZUFwcGxpY2F0aW9uKHBvcnQsIERhdGFGbG93UG9ydC5jbGFzcyk7CisJCQlpZiAoZGZwID09IG51bGwpIHsKKwkJCQlyZXR1cm4gZmFsc2U7CisJCQl9CisJCQlpZiAoZGZwLmdldERpcmVjdGlvbigpID09IERhdGFGbG93RGlyZWN0aW9uS2luZC5JTk9VVCkgeworCQkJCXJldHVybiB0cnVlOworCQkJfQorCQkJcmV0dXJuIGZhbHNlOworCQl9IGNhdGNoIChFeGNlcHRpb24gZSkgeworCQkJamF2YS5sYW5nLlN5c3RlbS5vdXQucHJpbnRsbigiRVhDRVBUSU9OIGNhdWdodDoiICsgZS50b1N0cmluZygpKTsKKwkJfQorCQlyZXR1cm4gZmFsc2U7CisJfQorCit9CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLm10bCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMubXRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNmZjgzN2EKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLm10bApAQCAtMCwwICsxLDE0NCBAQAorW2NvbW1lbnQgZW5jb2RpbmcgPSBVVEYtOCAvXQorW2NvbW1lbnRdCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBQUk9URVVTIFByb2plY3QgY29uc29ydGl1bS4KKyAqCisgKiAgICAKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIE5pY29sYXMgRFUgTEFDIChJTlRFTVBPUkEpIC0gSW5pdGlhbCBBUEkgYW5kIGltcGxlbWVudGF0aW9uCisgKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworWy9jb21tZW50XQorW21vZHVsZSBBcmNoaXRlY3R1cmVRdWVyaWVzKCdodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMy4wLjAvVU1MJywgJ2h0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMScpXQorIAorCitbcXVlcnkgcHVibGljIGdldFNvdXJjZVBvcnROYW1lKGNvbm4gOiBDb25uZWN0b3IpIDogU3RyaW5nID0KKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcycsJ2dldFNvdXJjZVBvcnROYW1lKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciknLCBTZXF1ZW5jZXtjb25ufSkKKy9dCitbcXVlcnkgcHVibGljIGdldFNvdXJjZUNvbXBvbmVudEZvckNvbm5lY3Rvcihjb25uIDogQ29ubmVjdG9yKSA6IFByb3BlcnR5ID0KKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcycsJ2dldFNvdXJjZUNvbXBvbmVudEZvckNvbm5lY3RvcihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IpJywgU2VxdWVuY2V7Y29ubn0pCisvXQorW3F1ZXJ5IHB1YmxpYyBnZXRTb3VyY2VDb21wb25lbnRUeXBlTmFtZUZvckNvbm5lY3Rvcihjb25uIDogQ29ubmVjdG9yKSA6IFN0cmluZyA9CisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMnLCdnZXRTb3VyY2VDb21wb25lbnRUeXBlTmFtZUZvckNvbm5lY3RvcihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IpJywgU2VxdWVuY2V7Y29ubn0pCisvXQorW3F1ZXJ5IHB1YmxpYyBnZXRTb3VyY2VDb21wb25lbnRJbnN0YW5jZU5hbWVGb3JDb25uZWN0b3IoY29ubiA6IENvbm5lY3RvcikgOiBTdHJpbmcgPQorCWludm9rZSgnb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzJywnZ2V0U291cmNlQ29tcG9uZW50SW5zdGFuY2VOYW1lRm9yQ29ubmVjdG9yKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvciknLCBTZXF1ZW5jZXtjb25ufSkKKy9dCitbcXVlcnkgcHVibGljIGdldERlc3RQb3J0TmFtZShjb25uIDogQ29ubmVjdG9yKSA6IFN0cmluZyA9CisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMnLCdnZXREZXN0UG9ydE5hbWUob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKScsIFNlcXVlbmNle2Nvbm59KQorL10KK1txdWVyeSBwdWJsaWMgZ2V0RGVzdENvbXBvbmVudEZvckNvbm5lY3Rvcihjb25uIDogQ29ubmVjdG9yKSA6IFByb3BlcnR5ID0KKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcycsJ2dldERlc3RDb21wb25lbnRGb3JDb25uZWN0b3Iob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKScsIFNlcXVlbmNle2Nvbm59KQorL10KK1txdWVyeSBwdWJsaWMgZ2V0RGVzdENvbXBvbmVudFR5cGVOYW1lRm9yQ29ubmVjdG9yKGNvbm4gOiBDb25uZWN0b3IpIDogU3RyaW5nID0KKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcycsJ2dldERlc3RDb21wb25lbnRUeXBlTmFtZUZvckNvbm5lY3RvcihvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3IpJywgU2VxdWVuY2V7Y29ubn0pCisvXQorW3F1ZXJ5IHB1YmxpYyBnZXREZXN0Q29tcG9uZW50SW5zdGFuY2VOYW1lRm9yQ29ubmVjdG9yKGNvbm4gOiBDb25uZWN0b3IpIDogU3RyaW5nID0KKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcycsJ2dldERlc3RDb21wb25lbnRJbnN0YW5jZU5hbWVGb3JDb25uZWN0b3Iob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKScsIFNlcXVlbmNle2Nvbm59KQorL10KK1txdWVyeSBwdWJsaWMgZ2V0SW50ZXJuYWxDb25uZWN0b3JzKGMgOiBDbGFzcykgOiBTZXF1ZW5jZShDb25uZWN0b3IpID0KKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcycsJ2dldEludGVybmFsQ29ubmVjdG9ycyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyknLCBTZXF1ZW5jZXtjfSkKKy9dCitbcXVlcnkgcHVibGljIGdldEV4dGVybmFsSW5wdXRDb25uZWN0b3JzKGMgOiBDbGFzcykgOiBTZXF1ZW5jZShDb25uZWN0b3IpID0KKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcycsJ2dldEV4dGVybmFsSW5wdXRDb25uZWN0b3JzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKScsIFNlcXVlbmNle2N9KQorL10KK1txdWVyeSBwdWJsaWMgZ2V0RXh0ZXJuYWxPdXRwdXRDb25uZWN0b3JzKGMgOiBDbGFzcykgOiBTZXF1ZW5jZShDb25uZWN0b3IpID0KKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcycsJ2dldEV4dGVybmFsT3V0cHV0Q29ubmVjdG9ycyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyknLCBTZXF1ZW5jZXtjfSkKKy9dCitbcXVlcnkgcHVibGljIGdldEFsbFN1YkNvbXBvbmVudHNJbkNsYXNzKGNsYXNzIDogQ2xhc3MpIDogU2VxdWVuY2UoUHJvcGVydHkpID0KKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcycsICdnZXRBbGxTdWJDb21wb25lbnRzSW5DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyknLCBTZXF1ZW5jZXtjbGFzc30pCisvXQorW3F1ZXJ5IHB1YmxpYyBnZXRMZXZlbDFTdWJDb21wb25lbnRzRm9yQ29tcG9uZW50KGNsYXNzIDogQ2xhc3MpIDogU2VxdWVuY2UoUHJvcGVydHkpID0KKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcycsICdnZXRMZXZlbDFTdWJDb21wb25lbnRzRm9yQ29tcG9uZW50KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKScsIFNlcXVlbmNle2NsYXNzfSkKKy9dCitbcXVlcnkgcHVibGljIGdldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnRXaXRoU3RlcmVvdHlwZShjbGFzcyA6IENsYXNzLCBzdGVyZW90eXBlIDogU3RyaW5nKSA6IFNlcXVlbmNlKFByb3BlcnR5KSA9CisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMnLCAnZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudFdpdGhTdGVyZW90eXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzLCBqYXZhLmxhbmcuU3RyaW5nKScsIFNlcXVlbmNle2NsYXNzLCBzdGVyZW90eXBlfSkKKy9dCitbcXVlcnkgcHVibGljIGdldE91dHB1dFBvcnRzRm9yRWxlbWVudChlbHQgOiBFbGVtZW50KSA6IFNlcXVlbmNlKFBvcnQpID0KKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcycsICdnZXRPdXRwdXRQb3J0c0ZvckVsZW1lbnQob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCknLCBTZXF1ZW5jZXtlbHR9KQorL10KK1txdWVyeSBwdWJsaWMgZ2V0SW5wdXRQb3J0c0ZvckVsZW1lbnQoZWx0IDogRWxlbWVudCkgOiBTZXF1ZW5jZShQb3J0KSA9CisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMnLCAnZ2V0SW5wdXRQb3J0c0ZvckVsZW1lbnQob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCknLCBTZXF1ZW5jZXtlbHR9KQorL10KK1txdWVyeSBwdWJsaWMgZ2V0T25Qb3J0KHBhcmFtIDogUGFyYW1ldGVyKSA6IFNlcXVlbmNlKFByb3BlcnR5KSA9CisJaW52b2tlKCdvcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcycsICdnZXRPblBvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUGFyYW1ldGVyKScsIFNlcXVlbmNle3BhcmFtfSkKKy9dCitbcXVlcnkgcHVibGljIGdldENvbXBvbmVudE1vZGVscyhtb2RlbCA6IE1vZGVsKSA6IFNlcXVlbmNlKE5hbWVkRWxlbWVudCkgPQorCWludm9rZSgnb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzJywgJ2dldENvbXBvbmVudE1vZGVscyhvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCknLCBTZXF1ZW5jZXttb2RlbH0pCisvXQorW3F1ZXJ5IHB1YmxpYyBpc01hY3JvQ29tcG9uZW50KGNsYXNzIDogQ2xhc3MpIDogQm9vbGVhbiA9IAorCWludm9rZSgnb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzJywgJ2lzTWFjcm9Db21wb25lbnQob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpJywgU2VxdWVuY2V7Y2xhc3N9KSAKKy9dCitbcXVlcnkgcHVibGljIGhhc05hdGl2ZUltcGxlbWVudGF0aW9uKGNsYXNzIDogQ2xhc3MpIDogQm9vbGVhbiA9CisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMnLCAnaGFzTmF0aXZlSW1wbGVtZW50YXRpb24ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpJywgU2VxdWVuY2V7Y2xhc3N9KSAKKy9dCitbcXVlcnkgcHVibGljIGdldE5hdGl2ZUxpYnJhcnlQYXRoRm9yQ29tcG9uZW50KGNsYXNzIDogQ2xhc3MpIDogU3RyaW5nID0KKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcycsICdnZXROYXRpdmVMaWJyYXJ5UGF0aEZvckNvbXBvbmVudChvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyknLCBTZXF1ZW5jZXtjbGFzc30pIAorL10KK1txdWVyeSBwdWJsaWMgZ2V0TmF0aXZlQ29tcG9uZW50TmFtZUZvckNvbXBvbmVudChjbGFzcyA6IENsYXNzKSA6IFN0cmluZyA9CisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMnLCAnZ2V0TmF0aXZlQ29tcG9uZW50TmFtZUZvckNvbXBvbmVudChvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyknLCBTZXF1ZW5jZXtjbGFzc30pIAorL10KK1txdWVyeSBwdWJsaWMgZ2V0Q29tcG9uZW50RmlsZU5hbWUoY2xhc3NpZmllciA6IENsYXNzaWZpZXIsIGVuZCA6IFN0cmluZykgOiBTdHJpbmcgPSAKKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcycsICdnZXRDb21wb25lbnRGaWxlTmFtZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzc2lmaWVyLGphdmEubGFuZy5TdHJpbmcpJywgU2VxdWVuY2V7Y2xhc3NpZmllcixlbmR9KSAKKy9dCitbcXVlcnkgcHVibGljIGdldE91dHB1dFBvcnRCdWZmZXJTaXplKHAgOiBQb3J0KSA6IEludGVnZXIgPQorIGludm9rZSgnb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzJywgJ2dldE91dHB1dFBvcnRCdWZmZXJTaXplKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpJywgU2VxdWVuY2V7cH0pIAorL10KK1txdWVyeSBwdWJsaWMgaXNEYXRhRmxvd1BvcnQoZWx0IDogUG9ydCkgOiBCb29sZWFuID0gCisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMnLCAnaXNEYXRhRmxvd1BvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCknLCBTZXF1ZW5jZXtlbHR9KSAKKy9dCitbcXVlcnkgcHVibGljIGlzU2VydmljZVBvcnQoZWx0IDogUG9ydCkgOiBCb29sZWFuID0gCisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMnLCAnaXNTZXJ2aWNlUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KScsIFNlcXVlbmNle2VsdH0pIAorL10KK1txdWVyeSBwdWJsaWMgZGVmaW5lc0Nvbm5lY3Rpb25zKGNsIDogQ2xhc3MpIDogQm9vbGVhbiA9IAorCWludm9rZSgnb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzJywgJ2RlZmluZXNDb25uZWN0aW9ucyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyknLCBTZXF1ZW5jZXtjbH0pIAorL10KK1txdWVyeSBwdWJsaWMgaXNDb25uZWN0aW9uVmFsaWQoY29ubiA6IENvbm5lY3RvcikgOiBCb29sZWFuID0gCisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMnLCAnaXNDb25uZWN0aW9uVmFsaWQob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKScsIFNlcXVlbmNle2Nvbm59KSAKKy9dCitbcXVlcnkgcHVibGljIGdldENvbm5lY3Rpb25EZWZpbml0aW9uKGNvbm4gOiBDb25uZWN0b3IpIDogU3RyaW5nID0gCisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMnLCAnZ2V0Q29ubmVjdGlvbkRlZmluaXRpb24ob3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yKScsIFNlcXVlbmNle2Nvbm59KSAKKy9dCitbcXVlcnkgcHVibGljIGdldENvbm5lY3RlZFBvcnQocG9ydCA6IFBvcnQpIDogUG9ydCA9IAorCWludm9rZSgnb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzJywgJ2dldENvbm5lY3RlZFBvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCknLCBTZXF1ZW5jZXtwb3J0fSkKKy9dCitbcXVlcnkgcHVibGljIGdldENvbm5lY3Rpb25zRnJvbVBvcnQocG9ydCA6IFBvcnQpIDogU2VxdWVuY2UoQ29ubmVjdG9yKSA9CisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMnLCdnZXRDb25uZWN0aW9uc0Zyb21Qb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpJywgU2VxdWVuY2V7cG9ydH0pCisvXQorW3F1ZXJ5IHB1YmxpYyBpc0FuSW5wdXRQb3J0KHBvcnQgOiBQb3J0KSA6IEJvb2xlYW4gPSAKKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcycsICdpc0FuSW5wdXRQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpJywgU2VxdWVuY2V7cG9ydH0pIAorL10KK1txdWVyeSBwdWJsaWMgaXNBbk91dHB1dFBvcnQocG9ydCA6IFBvcnQpIDogQm9vbGVhbiA9IAorCWludm9rZSgnb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzJywgJ2lzQW5PdXRwdXRQb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpJywgU2VxdWVuY2V7cG9ydH0pIAorL10KK1txdWVyeSBwdWJsaWMgaXNBUHJvdmlkZWRQb3J0KHBvcnQgOiBQb3J0KSA6IEJvb2xlYW4gPSAKKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcycsICdpc0FQcm92aWRlZFBvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCknLCBTZXF1ZW5jZXtwb3J0fSkgCisvXQorW3F1ZXJ5IHB1YmxpYyBpc0FSZXF1aXJlZFBvcnQocG9ydCA6IFBvcnQpIDogQm9vbGVhbiA9IAorCWludm9rZSgnb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzJywgJ2lzQVJlcXVpcmVkUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KScsIFNlcXVlbmNle3BvcnR9KSAKKy9dCitbcXVlcnkgcHVibGljIGdldENvbm5lY3Rpb25PdGhlclNpZGUocG9ydCA6IFBvcnQpIDogU3RyaW5nID0gCisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMnLCAnZ2V0Q29ubmVjdGlvbk90aGVyU2lkZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KScsIFNlcXVlbmNle3BvcnR9KSAKKy9dCitbcXVlcnkgcHVibGljIGlzUG9ydENvbm5lY3RlZChwb3J0IDogUG9ydCkgOiBCb29sZWFuID0gCisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMnLCAnaXNQb3J0Q29ubmVjdGVkKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpJywgU2VxdWVuY2V7cG9ydH0pIAorL10KK1txdWVyeSBwdWJsaWMgaXNSb290TW9kZWwoZWx0IDogTW9kZWwpIDogQm9vbGVhbiA9IAorCWludm9rZSgnb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzJywgJ2lzUm9vdE1vZGVsKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsKScsIFNlcXVlbmNle2VsdH0pIAorL10KK1txdWVyeSBwdWJsaWMgZ2V0Um9vdENsYXNzRm9yTW9kZWwobW9kZWwgOiBNb2RlbCkgOiBDbGFzcyA9CisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXMnLCdnZXRSb290Q2xhc3NGb3JNb2RlbChvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCknLCBTZXF1ZW5jZXttb2RlbH0pCisvXQorCitbcXVlcnkgcHVibGljIGlzQW5BbmNlc3Rvck9mKGN1cnJlbnRfY2xhc3MgOiBDbGFzcywgb3RoZXJfY2xhc3MgOiBDbGFzcykgOiBCb29sZWFuID0KKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuQXJjaGl0ZWN0dXJlUXVlcmllcycsICdpc0FuQW5jZXN0b3JPZihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcywgb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpJywgU2VxdWVuY2V7Y3VycmVudF9jbGFzcywgb3RoZXJfY2xhc3N9KQorL10KKworW3F1ZXJ5IHB1YmxpYyBpc0FuSW5wdXRPdXRwdXRQb3J0KHBvcnQgOiBQb3J0KSA6IEJvb2xlYW4gPQorCWludm9rZSgnb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5BcmNoaXRlY3R1cmVRdWVyaWVzJywgJ2lzQW5JbnB1dE91dHB1dFBvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCknLCBTZXF1ZW5jZXtwb3J0fSkKKy9dCmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuZW10bCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5lbXRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjlmMTgzM2MKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuZW10bApAQCAtMCwwICsxLDU0NiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzx4bWk6WE1JIHhtaTp2ZXJzaW9uPSIyLjAiIHhtbG5zOnhtaT0iaHR0cDovL3d3dy5vbWcub3JnL1hNSSIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgeG1sbnM6ZWNvcmU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUiIHhtbG5zOm10bD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9hY2NlbGVvL210bC8zLjAiIHhtbG5zOm9jbC5lY29yZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvRWNvcmUiPgorICA8bXRsOk1vZHVsZSBuYW1lPSJEYXRhVHlwZVF1ZXJpZXMiIG5zVVJJPSJvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmNvbW1vbjo6bW1xdWVyaWVzOjpEYXRhVHlwZVF1ZXJpZXMiIHN0YXJ0SGVhZGVyUG9zaXRpb249IjMwIiBlbmRIZWFkZXJQb3NpdGlvbj0iMzgwIj4KKyAgICA8aW5wdXQ+CisgICAgICA8dGFrZXNUeXBlc0Zyb20gaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvIi8+CisgICAgPC9pbnB1dD4KKyAgICA8aW5wdXQ+CisgICAgICA8dGFrZXNUeXBlc0Zyb20gaHJlZj0iaHR0cDovL1BhcHlydXMvUm9ib3RNTC8xIy8iLz4KKyAgICA8L2lucHV0PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0TWV0YW1vZGVsQ29tcG9zZWREYXRhVHlwZXMiIHZpc2liaWxpdHk9IlB1YmxpYyIgdHlwZT0iLzMvU2VxdWVuY2UoRGF0YVR5cGUpIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0icm9vdGVsdCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii81Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5EYXRhVHlwZVF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJnZXRNZXRhbW9kZWxDb21wb3NlZERhdGFUeXBlcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKEVsZW1lbnQpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InJvb3RlbHQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldE1ldGFtb2RlbENvbXBvc2VkRGF0YVR5cGVzL3Jvb3RlbHQiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJpc1JvYm90TUxEYXRhVHlwZSIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0icm9vdF9tb2RlbCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImRhdGF0eXBlX25hbWUiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzgiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkRhdGFUeXBlUXVlcmllcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImlzUm9ib3RNTERhdGFUeXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQsIGphdmEubGFuZy5TdHJpbmcpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoT2NsQW55KSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJyb290X21vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9pc1JvYm90TUxEYXRhVHlwZS9yb290X21vZGVsIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZGF0YXR5cGVfbmFtZSIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvaXNSb2JvdE1MRGF0YVR5cGUvZGF0YXR5cGVfbmFtZSI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJnZXRDcHBDbGFzc0ZvckRhdGF0VHlwZSIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iZHQiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzExIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuRGF0YVR5cGVRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0Q3BwQ2xhc3NGb3JEYXRhdFR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoRGF0YVR5cGUpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJkdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0Q3BwQ2xhc3NGb3JEYXRhdFR5cGUvZHQiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgICAgPHR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJnZXRFbGVtZW50c0RhdGFUeXBlIiB2aXNpYmlsaXR5PSJQdWJsaWMiIHR5cGU9Ii8zL1NlcXVlbmNlKE5hbWVkRWxlbWVudCkiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJlbHQiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzE0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuRGF0YVR5cGVRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0RWxlbWVudHNEYXRhVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCkiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShNb2RlbCkiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0RWxlbWVudHNEYXRhVHlwZS9lbHQiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iaXNQcmltaXRpdmVUeXBlIiB2aXNpYmlsaXR5PSJQdWJsaWMiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJlbHQiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvMTciPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkRhdGFUeXBlUXVlcmllcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImlzUHJpbWl0aXZlVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKEVsZW1lbnQpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvaXNQcmltaXRpdmVUeXBlL2VsdCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgIDwvZXhwcmVzc2lvbj4KKyAgICAgIDx0eXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgPC9tdGw6TW9kdWxlPgorICA8ZWNvcmU6RVBhY2thZ2UgbmFtZT0iYWRkaXRpb25zIj4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlN0cmluZ19DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJJbnRlZ2VyX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJSZWFsX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvUmVhbCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFT2JqZWN0X0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0TWV0YW1vZGVsQ29tcG9zZWREYXRhVHlwZXMiIGVUeXBlPSIvMy9TZXF1ZW5jZShEYXRhVHlwZSkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZXRNZXRhbW9kZWxDb21wb3NlZERhdGFUeXBlcyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icm9vdGVsdCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzUm9ib3RNTERhdGFUeXBlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvaXNSb2JvdE1MRGF0YVR5cGUiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InJvb3RfbW9kZWwiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGF0YXR5cGVfbmFtZSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRDcHBDbGFzc0ZvckRhdGF0VHlwZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dldENwcENsYXNzRm9yRGF0YXRUeXBlIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImR0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldEVsZW1lbnRzRGF0YVR5cGUiIGVUeXBlPSIvMy9TZXF1ZW5jZShOYW1lZEVsZW1lbnQpIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZ2V0RWxlbWVudHNEYXRhVHlwZSIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZWx0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzUHJpbWl0aXZlVHlwZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2lzUHJpbWl0aXZlVHlwZSIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZWx0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPY2xBbnlfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9Imludm9rZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwgbm9uLXN0YW5kYXJkIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNsYXNzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJtZXRob2QiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImFyZ3VtZW50cyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6U2VxdWVuY2VUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2FjY2VsZW8vbXRsLzMuMC9tdGxub25zdGRsaWIuZWNvcmUjLy9TZXF1ZW5jZShPY2xBbnkpIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ29sbGVjdGlvbihUKV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0NvbGxlY3Rpb24oVCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU2VxdWVuY2UoVClfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TZXF1ZW5jZShUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPcmRlcmVkU2V0KFQpX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT3JkZXJlZFNldChUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFbGVtZW50X0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJEYXRhVHlwZV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik1vZGVsX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICA8L2Vjb3JlOkVQYWNrYWdlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPGVjb3JlOkVQYWNrYWdlIG5hbWU9ImNvbGxlY3Rpb25zIj4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJvY2wuZWNvcmU6U2VxdWVuY2VUeXBlIiBuYW1lPSJTZXF1ZW5jZShEYXRhVHlwZSkiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuTGlzdCI+CisgICAgICA8ZWxlbWVudFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgbmFtZT0iU2VxdWVuY2UoTmFtZWRFbGVtZW50KSIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEudXRpbC5MaXN0Ij4KKyAgICAgIDxlbGVtZW50VHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgbmFtZT0iU2VxdWVuY2UoRWxlbWVudCkiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuTGlzdCI+CisgICAgICA8ZWxlbWVudFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJvY2wuZWNvcmU6U2VxdWVuY2VUeXBlIiBuYW1lPSJTZXF1ZW5jZShPY2xBbnkpIiBpbnN0YW5jZUNsYXNzTmFtZT0iamF2YS51dGlsLkxpc3QiPgorICAgICAgPGVsZW1lbnRUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIG5hbWU9IlNlcXVlbmNlKE1vZGVsKSIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEudXRpbC5MaXN0Ij4KKyAgICAgIDxlbGVtZW50VHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgPC9lY29yZTpFUGFja2FnZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRGF0YVR5cGUiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxlY29yZTpFQW5ub3RhdGlvbiBzb3VyY2U9InBvc2l0aW9ucyI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4wIiByZWZlcmVuY2VzPSIvMC9nZXRNZXRhbW9kZWxDb21wb3NlZERhdGFUeXBlcyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTI3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM4MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMSIgcmVmZXJlbmNlcz0iLzAvZ2V0TWV0YW1vZGVsQ29tcG9zZWREYXRhVHlwZXMvcm9vdGVsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTcxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMiIgcmVmZXJlbmNlcz0iLzAvZ2V0TWV0YW1vZGVsQ29tcG9zZWREYXRhVHlwZXMvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjE1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM3OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMyIgcmVmZXJlbmNlcz0iLzAvZ2V0TWV0YW1vZGVsQ29tcG9zZWREYXRhVHlwZXMvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNCIgcmVmZXJlbmNlcz0iLzAvZ2V0TWV0YW1vZGVsQ29tcG9zZWREYXRhVHlwZXMvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41IiByZWZlcmVuY2VzPSIvMC9nZXRNZXRhbW9kZWxDb21wb3NlZERhdGFUeXBlcy8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM1OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNiIgcmVmZXJlbmNlcz0iLzAvZ2V0TWV0YW1vZGVsQ29tcG9zZWREYXRhVHlwZXMvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM2MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjciIHJlZmVyZW5jZXM9Ii8wL2dldE1ldGFtb2RlbENvbXBvc2VkRGF0YVR5cGVzLyUvJS4yLyUvcm9vdGVsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzY5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM3NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOCIgcmVmZXJlbmNlcz0iLzAvaXNSb2JvdE1MRGF0YVR5cGUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM4NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjkiIHJlZmVyZW5jZXM9Ii8wL2lzUm9ib3RNTERhdGFUeXBlL3Jvb3RfbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQxNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwIiByZWZlcmVuY2VzPSIvMC9pc1JvYm90TUxEYXRhVHlwZS9kYXRhdHlwZV9uYW1lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDYwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMSIgcmVmZXJlbmNlcz0iLzAvaXNSb2JvdE1MRGF0YVR5cGUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDc2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY2MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTIiIHJlZmVyZW5jZXM9Ii8wL2lzUm9ib3RNTERhdGFUeXBlLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzIiByZWZlcmVuY2VzPSIvMC9pc1JvYm90TUxEYXRhVHlwZS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ4MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0IiByZWZlcmVuY2VzPSIvMC9pc1JvYm90TUxEYXRhVHlwZS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTU4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjYyNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTUiIHJlZmVyZW5jZXM9Ii8wL2lzUm9ib3RNTERhdGFUeXBlLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2MjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNiIgcmVmZXJlbmNlcz0iLzAvaXNSb2JvdE1MRGF0YVR5cGUvJS8lLjIvJS9yb290X21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2MzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNyIgcmVmZXJlbmNlcz0iLzAvaXNSb2JvdE1MRGF0YVR5cGUvJS8lLjIvJS4xL2RhdGF0eXBlX25hbWUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY0NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4IiByZWZlcmVuY2VzPSIvMC9nZXRDcHBDbGFzc0ZvckRhdGF0VHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjY4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg5MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5IiByZWZlcmVuY2VzPSIvMC9nZXRDcHBDbGFzc0ZvckRhdGF0VHlwZS9kdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcxOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIwIiByZWZlcmVuY2VzPSIvMC9nZXRDcHBDbGFzc0ZvckRhdGF0VHlwZS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODg3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMSIgcmVmZXJlbmNlcz0iLzAvZ2V0Q3BwQ2xhc3NGb3JEYXRhdFR5cGUvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjIiIHJlZmVyZW5jZXM9Ii8wL2dldENwcENsYXNzRm9yRGF0YXRUeXBlLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzQxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjgxNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjMiIHJlZmVyZW5jZXM9Ii8wL2dldENwcENsYXNzRm9yRGF0YXRUeXBlLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4MTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNCIgcmVmZXJlbmNlcz0iLzAvZ2V0Q3BwQ2xhc3NGb3JEYXRhdFR5cGUvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg3NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4ODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI1IiByZWZlcmVuY2VzPSIvMC9nZXRDcHBDbGFzc0ZvckRhdGF0VHlwZS8lLyUuMi8lL2R0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4ODMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODg1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNiIgcmVmZXJlbmNlcz0iLzAvZ2V0RWxlbWVudHNEYXRhVHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODkzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExMjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNyIgcmVmZXJlbmNlcz0iLzAvZ2V0RWxlbWVudHNEYXRhVHlwZS9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjkyNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5MzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOCIgcmVmZXJlbmNlcz0iLzAvZ2V0RWxlbWVudHNEYXRhVHlwZS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5NjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTExNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjkiIHJlZmVyZW5jZXM9Ii8wL2dldEVsZW1lbnRzRGF0YVR5cGUvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzAiIHJlZmVyZW5jZXM9Ii8wL2dldEVsZW1lbnRzRGF0YVR5cGUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5NzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTA0OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzEiIHJlZmVyZW5jZXM9Ii8wL2dldEVsZW1lbnRzRGF0YVR5cGUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwNTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTEwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzIiIHJlZmVyZW5jZXM9Ii8wL2dldEVsZW1lbnRzRGF0YVR5cGUvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExMDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTExNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzMiIHJlZmVyZW5jZXM9Ii8wL2dldEVsZW1lbnRzRGF0YVR5cGUvJS8lLjIvJS9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExMTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTExNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzQiIHJlZmVyZW5jZXM9Ii8wL2lzUHJpbWl0aXZlVHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTEyMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMzMwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzUiIHJlZmVyZW5jZXM9Ii8wL2lzUHJpbWl0aXZlVHlwZS9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE2NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM2IiByZWZlcmVuY2VzPSIvMC9pc1ByaW1pdGl2ZVR5cGUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE4MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMzI2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNyIgcmVmZXJlbmNlcz0iLzAvaXNQcmltaXRpdmVUeXBlLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM4IiByZWZlcmVuY2VzPSIvMC9pc1ByaW1pdGl2ZVR5cGUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTg4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEyNjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM5IiByZWZlcmVuY2VzPSIvMC9pc1ByaW1pdGl2ZVR5cGUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEyNjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTMxMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDAiIHJlZmVyZW5jZXM9Ii8wL2lzUHJpbWl0aXZlVHlwZS8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTMxMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMzI1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MSIgcmVmZXJlbmNlcz0iLzAvaXNQcmltaXRpdmVUeXBlLyUvJS4yLyUvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMzIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEzMjQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lY29yZTpFQW5ub3RhdGlvbj4KKzwveG1pOlhNST4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5qYXZhIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDZjMWM1YQotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5qYXZhCkBAIC0wLDAgKzEsMTkyIEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBQUk9URVVTIFByb2plY3QgY29uc29ydGl1bS4KKyAqCisgKgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgTmljb2xhcyBEVSBMQUMgKElOVEVNUE9SQSkgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllczsKKworaW1wb3J0IGphdmEudXRpbC5MaW5rZWRMaXN0OworaW1wb3J0IGphdmEudXRpbC5MaXN0OworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuRW51bWVyYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuRW51bWVyYXRpb25MaXRlcmFsOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLk5hbWVkRWxlbWVudDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUHJpbWl0aXZlVHlwZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5Qcm9wZXJ0eTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5UeXBlOworCitwdWJsaWMgY2xhc3MgRGF0YVR5cGVRdWVyaWVzIHsKKworCXB1YmxpYyBzdGF0aWMgU3RyaW5nIG5ld2xpbmUgPSBTeXN0ZW0uZ2V0UHJvcGVydHkoImxpbmUuc2VwYXJhdG9yIik7CisKKwlwdWJsaWMgTGlzdDxEYXRhVHlwZT4gZ2V0TWV0YW1vZGVsQ29tcG9zZWREYXRhVHlwZXMoRWxlbWVudCByb290ZWx0KSB7CisJCUxpbmtlZExpc3Q8RGF0YVR5cGU+IHJlc3VsdHMgPSBuZXcgTGlua2VkTGlzdDxEYXRhVHlwZT4oKTsKKwkJaWYgKHJvb3RlbHQgaW5zdGFuY2VvZiBNb2RlbCkgeworCQkJRUxpc3Q8UGFja2FnZT4gcGFja2FnZXMgPSAoKE1vZGVsKSByb290ZWx0KS5nZXRJbXBvcnRlZFBhY2thZ2VzKCk7CisJCQlmb3IgKFBhY2thZ2UgcCA6IHBhY2thZ2VzKSB7CisJCQkJRUxpc3Q8RWxlbWVudD4gZWx0cyA9IHAuZ2V0T3duZWRFbGVtZW50cygpOworCQkJCWZvciAoRWxlbWVudCBlbHQgOiBlbHRzKSB7CisJCQkJCWlmIChlbHQgaW5zdGFuY2VvZiBQcmltaXRpdmVUeXBlKSB7CisJCQkJCX0gZWxzZSBpZiAoZWx0IGluc3RhbmNlb2YgRGF0YVR5cGUpIHsKKwkJCQkJCXJlc3VsdHMuYWRkKChEYXRhVHlwZSkgZWx0KTsKKwkJCQkJfSBlbHNlIGlmIChlbHQgaW5zdGFuY2VvZiBQYWNrYWdlKSB7CisJCQkJCQlyZXN1bHRzLmFkZEFsbChnZXRNZXRhbW9kZWxDb21wb3NlZERhdGFUeXBlcyhlbHQpKTsKKwkJCQkJfQorCQkJCX0KKwkJCX0KKwkJfSBlbHNlIGlmIChyb290ZWx0IGluc3RhbmNlb2YgUGFja2FnZSkgeworCQkJUGFja2FnZSBwID0gKFBhY2thZ2UpIHJvb3RlbHQ7CisJCQlFTGlzdDxFbGVtZW50PiBlbHRzID0gcC5nZXRPd25lZEVsZW1lbnRzKCk7CisJCQlmb3IgKEVsZW1lbnQgZWx0IDogZWx0cykgeworCQkJCWlmIChlbHQgaW5zdGFuY2VvZiBQcmltaXRpdmVUeXBlKSB7CisJCQkJfSBlbHNlIGlmIChlbHQgaW5zdGFuY2VvZiBEYXRhVHlwZSkgeworCQkJCQlyZXN1bHRzLmFkZCgoRGF0YVR5cGUpIGVsdCk7CisJCQkJfSBlbHNlIGlmIChlbHQgaW5zdGFuY2VvZiBQYWNrYWdlKSB7CisJCQkJCXJlc3VsdHMuYWRkQWxsKGdldE1ldGFtb2RlbENvbXBvc2VkRGF0YVR5cGVzKGVsdCkpOworCQkJCX0KKwkJCX0KKwkJfQorCQlyZXR1cm4gcmVzdWx0czsKKwl9CisKKwkvKioKKwkgKiBJcyB0aGUgcHJvdmlkZWQgRGF0YVR5cGUgb25lIG9mIHRoZSBSb2JvdE1MIG1ldGFtb2RlbCBkYXRhdHlwZXMgPworCSAqCisJICogQHBhcmFtIGR0CisJICogQHJldHVybgorCSAqLworCXB1YmxpYyBzdGF0aWMgYm9vbGVhbiBpc1JvYm90TUxEYXRhVHlwZShFbGVtZW50IHJvb3RfbW9kZWwsIFN0cmluZyBkYXRhdHlwZV9uYW1lKSB7CisJCXRyeSB7CisJCQlpZiAocm9vdF9tb2RlbCBpbnN0YW5jZW9mIE1vZGVsKSB7CisJCQkJRUxpc3Q8UGFja2FnZT4gcGFja2FnZXMgPSAoKE1vZGVsKSByb290X21vZGVsKS5nZXRJbXBvcnRlZFBhY2thZ2VzKCk7CisJCQkJZm9yIChQYWNrYWdlIHAgOiBwYWNrYWdlcykgeworCQkJCQlFTGlzdDxFbGVtZW50PiBlbHRzID0gcC5nZXRPd25lZEVsZW1lbnRzKCk7CisJCQkJCWZvciAoRWxlbWVudCBlbHQgOiBlbHRzKSB7CisJCQkJCQlpZiAoZWx0IGluc3RhbmNlb2YgRGF0YVR5cGUgJiYgZGF0YXR5cGVfbmFtZS5jb21wYXJlVG8oKChEYXRhVHlwZSkgZWx0KS5nZXROYW1lKCkpID09IDApIHsKKwkJCQkJCQlyZXR1cm4gdHJ1ZTsKKwkJCQkJCX0gZWxzZSBpZiAoZWx0IGluc3RhbmNlb2YgUGFja2FnZSkgeworCQkJCQkJCWlmIChpc1JvYm90TUxEYXRhVHlwZShlbHQsIGRhdGF0eXBlX25hbWUpKSB7CisJCQkJCQkJCXJldHVybiB0cnVlOworCQkJCQkJCX0KKwkJCQkJCX0KKwkJCQkJfQorCQkJCX0KKwkJCX0gZWxzZSBpZiAocm9vdF9tb2RlbCBpbnN0YW5jZW9mIFBhY2thZ2UpIHsKKwkJCQlFTGlzdDxFbGVtZW50PiBlbHRzID0gKChQYWNrYWdlKSByb290X21vZGVsKS5nZXRPd25lZEVsZW1lbnRzKCk7CisJCQkJZm9yIChFbGVtZW50IGVsdCA6IGVsdHMpIHsKKwkJCQkJaWYgKGVsdCBpbnN0YW5jZW9mIERhdGFUeXBlICYmIGRhdGF0eXBlX25hbWUuY29tcGFyZVRvKCgoRGF0YVR5cGUpIGVsdCkuZ2V0TmFtZSgpKSA9PSAwKSB7CisJCQkJCQlyZXR1cm4gdHJ1ZTsKKwkJCQkJfSBlbHNlIGlmIChlbHQgaW5zdGFuY2VvZiBQYWNrYWdlKSB7CisJCQkJCQlpZiAoaXNSb2JvdE1MRGF0YVR5cGUoZWx0LCBkYXRhdHlwZV9uYW1lKSkgeworCQkJCQkJCXJldHVybiB0cnVlOworCQkJCQkJfQorCQkJCQl9CisJCQkJfQorCQkJfQorCQl9IGNhdGNoIChFeGNlcHRpb24gZSkgeworCQkJU3lzdGVtLm91dC5wcmludGxuKGUudG9TdHJpbmcoKSk7CisJCX0KKwkJcmV0dXJuIGZhbHNlOworCX0KKworCXB1YmxpYyBTdHJpbmcgZ2V0Q3BwQ2xhc3NGb3JEYXRhdFR5cGUoRGF0YVR5cGUgZHQpIHsKKwkJdHJ5IHsKKwkJCVN0cmluZyBzID0gIiI7CisJCQlpZiAoZHQgaW5zdGFuY2VvZiBFbnVtZXJhdGlvbikgeworCQkJCUVudW1lcmF0aW9uIGVuID0gKEVudW1lcmF0aW9uKSBkdDsKKwkJCQlzID0gImVudW0gIiArIGVuLmdldE5hbWUoKSArICIgeyIgKyBuZXdsaW5lOworCQkJCUVMaXN0PEVudW1lcmF0aW9uTGl0ZXJhbD4gbGl0ZXJhbHMgPSBlbi5nZXRPd25lZExpdGVyYWxzKCk7CisJCQkJZm9yIChFbnVtZXJhdGlvbkxpdGVyYWwgbGl0ZXJhbCA6IGxpdGVyYWxzKSB7CisJCQkJCXMgKz0gIlx0IiArIGxpdGVyYWwuZ2V0TmFtZSgpICsgIiwiICsgbmV3bGluZTsKKwkJCQl9CisJCQl9IGVsc2UgaWYgKGR0IGluc3RhbmNlb2YgRW51bWVyYXRpb25MaXRlcmFsKSB7CisJCQkJLy8gZG8gbm90aGluZy4KKwkJCX0gZWxzZSB7CisJCQkJRUxpc3Q8UHJvcGVydHk+IGF0dHJpYnV0ZXMgPSBkdC5nZXRPd25lZEF0dHJpYnV0ZXMoKTsKKwkJCQlzID0gImNsYXNzICIgKyBkdC5nZXROYW1lKCkgKyAiIHsiICsgbmV3bGluZSArICJcdHB1YmxpYzoiICsgbmV3bGluZTsKKwkJCQlmb3IgKFByb3BlcnR5IGF0dHJpYnV0ZSA6IGF0dHJpYnV0ZXMpIHsKKwkJCQkJU3RyaW5nIHR5cGVfbmFtZTsKKwkJCQkJaWYgKGF0dHJpYnV0ZS5nZXRUeXBlKCkgIT0gbnVsbCkgeworCQkJCQkJdHlwZV9uYW1lID0gYXR0cmlidXRlLmdldFR5cGUoKS5nZXROYW1lKCk7CisJCQkJCX0gZWxzZSB7CisJCQkJCQl0eXBlX25hbWUgPSAiVW5rbm93bl9OVUxMX0lOX01PREVMIjsKKwkJCQkJfQorCQkJCQlpZiAoYXR0cmlidXRlLmdldFVwcGVyKCkgPCAwKSB7CisJCQkJCQlzICs9ICJcdHN0ZDo6dmVjdG9yPCIgKyB0eXBlX25hbWUgKyAiPiAiICsgYXR0cmlidXRlLmdldE5hbWUoKSArICI7IiArIG5ld2xpbmU7CisJCQkJCX0gZWxzZSBpZiAoYXR0cmlidXRlLmdldFVwcGVyKCkgPD0gMSkgeworCQkJCQkJcyArPSAiXHQiICsgdHlwZV9uYW1lICsgIiAiICsgYXR0cmlidXRlLmdldE5hbWUoKSArICI7IiArIG5ld2xpbmU7CisJCQkJCX0gZWxzZSBpZiAoYXR0cmlidXRlLmdldFVwcGVyKCkgPT0gYXR0cmlidXRlLmdldExvd2VyKCkpIHsKKwkJCQkJCXMgKz0gIlx0IiArIHR5cGVfbmFtZSArICIgIiArIGF0dHJpYnV0ZS5nZXROYW1lKCkgKyAiWyIgKyBhdHRyaWJ1dGUuZ2V0VXBwZXIoKSArICJdOyIgKyBuZXdsaW5lOworCQkJCQl9IGVsc2UgeworCQkJCQkJcyArPSAiXHRzdGQ6OnZlY3RvcjwiICsgdHlwZV9uYW1lICsgIj4gIiArIGF0dHJpYnV0ZS5nZXROYW1lKCkgKyAiOyIgKyBuZXdsaW5lOworCQkJCQl9CisJCQkJfQorCQkJfQorCQkJcyArPSAifTsiICsgbmV3bGluZTsKKwkJCXJldHVybiBzOworCQl9IGNhdGNoIChFeGNlcHRpb24gZSkgeworCQkJamF2YS5sYW5nLlN5c3RlbS5vdXQucHJpbnRsbihlLmdldE1lc3NhZ2UoKSk7CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogR2V0IGFsbCB1c2VyLWRlZmluZWQgZGF0YXR5cGVzLgorCSAqCisJICogQHJldHVybiBBIGxpc3Qgb2YgZGF0YXR5cGVzCisJICovCisJcHVibGljIExpc3Q8TmFtZWRFbGVtZW50PiBnZXRFbGVtZW50c0RhdGFUeXBlKE1vZGVsIG1vZGVsKSB7CisJCUxpbmtlZExpc3Q8TmFtZWRFbGVtZW50PiBmb3VuZF9lbHRzID0gbmV3IExpbmtlZExpc3Q8TmFtZWRFbGVtZW50PigpOworCQlmb3IgKE5hbWVkRWxlbWVudCBuZSA6IG1vZGVsLmdldE93bmVkTWVtYmVycygpKSB7CisJCQlpZiAobmUgaW5zdGFuY2VvZiBvcmcuZWNsaXBzZS51bWwyLnVtbC5EYXRhVHlwZSkgeworCQkJCWZvdW5kX2VsdHMuYWRkKG5lKTsKKwkJCX0KKwkJCWdldEVsZW1lbnRzRGF0YVR5cGUobmUsIGZvdW5kX2VsdHMpOworCisJCX0KKwkJcmV0dXJuIGZvdW5kX2VsdHM7CisJfQorCisJLyoqCisJICogUmVjdXJzaXZlIHN1Yi1mdW5jdGlvbiB0byBicm93c2UgbW9kZWwgYW5kIGdldCBhbGwgdXNlci1kZWZpbmVkIGRhdGF0eXBlcy4KKwkgKi8KKwlwcml2YXRlIHZvaWQgZ2V0RWxlbWVudHNEYXRhVHlwZShFbGVtZW50IHBhcmVudF9lbHQsIExpbmtlZExpc3Q8TmFtZWRFbGVtZW50PiB0YXJnZXRfbGlzdCkgeworCQlmb3IgKEVsZW1lbnQgbmUgOiBwYXJlbnRfZWx0LmdldE93bmVkRWxlbWVudHMoKSkgeworCQkJaWYgKG5lIGluc3RhbmNlb2Ygb3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUpIHsKKwkJCQl0YXJnZXRfbGlzdC5hZGQoKE5hbWVkRWxlbWVudCkgbmUpOworCQkJfQorCQkJZ2V0RWxlbWVudHNEYXRhVHlwZShuZSwgdGFyZ2V0X2xpc3QpOworCQl9CisJCXJldHVybjsKKwl9CisKKwlwdWJsaWMgRGF0YVR5cGUgZ2V0UG9ydERhdGFUeXBlKFBvcnQgcG9ydCkgeworCQlUeXBlIHQgPSBwb3J0LmdldFR5cGUoKTsKKwkJaWYgKHQgIT0gbnVsbCAmJiB0IGluc3RhbmNlb2YgRGF0YVR5cGUpIHsKKwkJCXJldHVybiAoRGF0YVR5cGUpIHQ7CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJcHVibGljIHN0YXRpYyBib29sZWFuIGlzUHJpbWl0aXZlVHlwZShFbGVtZW50IGVsdCkgeworCQlpZiAoZWx0IGluc3RhbmNlb2YgUHJpbWl0aXZlVHlwZSkgeworCQkJcmV0dXJuIHRydWU7CisJCX0KKwkJcmV0dXJuIGZhbHNlOworCX0KK30KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5tdGwgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMubXRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc3MWU3MmIKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMubXRsCkBAIC0wLDAgKzEsMTggQEAKK1tjb21tZW50IGVuY29kaW5nID0gVVRGLTggL10KK1ttb2R1bGUgRGF0YVR5cGVRdWVyaWVzKCdodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMy4wLjAvVU1MJywgJ2h0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMScpXQorCitbcXVlcnkgcHVibGljIGdldE1ldGFtb2RlbENvbXBvc2VkRGF0YVR5cGVzKHJvb3RlbHQgOiBFbGVtZW50KSA6IFNlcXVlbmNlKERhdGFUeXBlKSA9CisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkRhdGFUeXBlUXVlcmllcycsICdnZXRNZXRhbW9kZWxDb21wb3NlZERhdGFUeXBlcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KScsIFNlcXVlbmNle3Jvb3RlbHR9KQorL10KK1txdWVyeSBwdWJsaWMgaXNSb2JvdE1MRGF0YVR5cGUocm9vdF9tb2RlbCA6IEVsZW1lbnQsIGRhdGF0eXBlX25hbWUgOiBTdHJpbmcpIDogQm9vbGVhbiA9CisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkRhdGFUeXBlUXVlcmllcycsICdpc1JvYm90TUxEYXRhVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50LCBqYXZhLmxhbmcuU3RyaW5nKScsIFNlcXVlbmNle3Jvb3RfbW9kZWwsZGF0YXR5cGVfbmFtZX0pCisvXQorW3F1ZXJ5IHB1YmxpYyBnZXRDcHBDbGFzc0ZvckRhdGF0VHlwZShkdCA6IERhdGFUeXBlKSA6IFN0cmluZyA9CisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkRhdGFUeXBlUXVlcmllcycsICdnZXRDcHBDbGFzc0ZvckRhdGF0VHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5EYXRhVHlwZSknLCBTZXF1ZW5jZXtkdH0pCisvXQorW3F1ZXJ5IHB1YmxpYyBnZXRFbGVtZW50c0RhdGFUeXBlKGVsdCA6IE1vZGVsKSA6IFNlcXVlbmNlKE5hbWVkRWxlbWVudCkgPQorCWludm9rZSgnb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5EYXRhVHlwZVF1ZXJpZXMnLCAnZ2V0RWxlbWVudHNEYXRhVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCknLCBTZXF1ZW5jZXtlbHR9KQorL10KK1txdWVyeSBwdWJsaWMgaXNQcmltaXRpdmVUeXBlKGVsdCA6IEVsZW1lbnQpIDogQm9vbGVhbiA9CisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkRhdGFUeXBlUXVlcmllcycsICdpc1ByaW1pdGl2ZVR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCknLCBTZXF1ZW5jZXtlbHR9KQorL10KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0RlcGxveW1lbnRRdWVyaWVzLmVtdGwgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9EZXBsb3ltZW50UXVlcmllcy5lbXRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ1ZDdmNzgKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9EZXBsb3ltZW50UXVlcmllcy5lbXRsCkBAIC0wLDAgKzEsMTI3NSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzx4bWk6WE1JIHhtaTp2ZXJzaW9uPSIyLjAiIHhtbG5zOnhtaT0iaHR0cDovL3d3dy5vbWcub3JnL1hNSSIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgeG1sbnM6ZWNvcmU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUiIHhtbG5zOm10bD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9hY2NlbGVvL210bC8zLjAiIHhtbG5zOm9jbC5lY29yZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvRWNvcmUiPgorICA8bXRsOk1vZHVsZSBuYW1lPSJEZXBsb3ltZW50UXVlcmllcyIgbnNVUkk9Im9yZzo6ZWNsaXBzZTo6cGFweXJ1czo6cm9ib3RtbDo6Z2VuZXJhdG9yczo6Y29tbW9uOjptbXF1ZXJpZXM6OkRlcGxveW1lbnRRdWVyaWVzIiBzdGFydEhlYWRlclBvc2l0aW9uPSI2NzUiIGVuZEhlYWRlclBvc2l0aW9uPSIxMTE4Ij4KKyAgICA8aW5wdXQ+CisgICAgICA8dGFrZXNUeXBlc0Zyb20gaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvIi8+CisgICAgPC9pbnB1dD4KKyAgICA8aW5wdXQ+CisgICAgICA8dGFrZXNUeXBlc0Zyb20gaHJlZj0iaHR0cDovL1BhcHlydXMvUm9ib3RNTC8xIy8iLz4KKyAgICA8L2lucHV0PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpDb21tZW50Ij4KKyAgICAgIDxib2R5IHN0YXJ0UG9zaXRpb249Ijc4MyIgZW5kUG9zaXRpb249Ijg1MSIgdmFsdWU9IiAmI3hEOyYjeEE7VGhlc2UgZnVuY3Rpb25zIGFyZSBpbXBsZW1lbnRlZCBpbiBmaWxlIERlcGxveW1lbnRRdWVyaWVzLmphdmEuJiN4RDsmI3hBOyIvPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9ucyIgdmlzaWJpbGl0eT0iUHVibGljIiB0eXBlPSIvMy9TZXF1ZW5jZShJbnN0YW5jZVNwZWNpZmljYXRpb24pIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iZWx0Ij4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii81Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuRGVwbG95bWVudFF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJnZXRJbnN0YW5jZVNwZWNpZmljYXRpb25zSW5Nb2RlbChvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCkiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShNb2RlbCkiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9ucy9lbHQiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9uc0ZvclBsYXRmb3JtIiB2aXNpYmlsaXR5PSJQdWJsaWMiIHR5cGU9Ii8zL1NlcXVlbmNlKEluc3RhbmNlU3BlY2lmaWNhdGlvbikiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJlbHQiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0icGZuIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii84Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuRGVwbG95bWVudFF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJnZXRJbnN0YW5jZVNwZWNpZmljYXRpb25zRm9yUGxhdGZvcm0ob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwsIGphdmEubGFuZy5TdHJpbmcpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoT2NsQW55KSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZWx0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRJbnN0YW5jZVNwZWNpZmljYXRpb25zRm9yUGxhdGZvcm0vZWx0Ij4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InBmbiIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9uc0ZvclBsYXRmb3JtL3BmbiI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJnZXRJbnN0YW5jZVNwZWNpZmljYXRpb25zRm9yUGxhdGZvcm0yIiB2aXNpYmlsaXR5PSJQdWJsaWMiIHR5cGU9Ii8zL1NlcXVlbmNlKEluc3RhbmNlU3BlY2lmaWNhdGlvbikiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJtb2RlbCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJwZm1OYW1lIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii8xMSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkRlcGxveW1lbnRRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9uc0ZvclBsYXRmb3JtMihvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCwgamF2YS5sYW5nLlN0cmluZykiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShPY2xBbnkpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJtb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9uc0ZvclBsYXRmb3JtMi9tb2RlbCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwZm1OYW1lIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRJbnN0YW5jZVNwZWNpZmljYXRpb25zRm9yUGxhdGZvcm0yL3BmbU5hbWUiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0UGFyZW50TmFtZSIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iaW5zdCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vSW5zdGFuY2VTcGVjaWZpY2F0aW9uIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzE0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0luc3RhbmNlU3BlY2lmaWNhdGlvbiIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkRlcGxveW1lbnRRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0UGFyZW50TmFtZShvcmcuZWNsaXBzZS51bWwyLnVtbC5JbnN0YW5jZVNwZWNpZmljYXRpb24pIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9JbnN0YW5jZVNwZWNpZmljYXRpb24iLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Imluc3QiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldFBhcmVudE5hbWUvaW5zdCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vSW5zdGFuY2VTcGVjaWZpY2F0aW9uIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgICAgPHR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJnZXRJbnN0YW5jZSIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iZWx0Ij4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9Imluc3QiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0luc3RhbmNlU3BlY2lmaWNhdGlvbiIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii8xNyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkRlcGxveW1lbnRRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0SW5zdGFuY2Uob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwsb3JnLmVjbGlwc2UudW1sMi51bWwuSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKFBhY2thZ2VhYmxlRWxlbWVudCkiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0SW5zdGFuY2UvZWx0Ij4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vSW5zdGFuY2VTcGVjaWZpY2F0aW9uIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJpbnN0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRJbnN0YW5jZS9pbnN0Ij4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9JbnN0YW5jZVNwZWNpZmljYXRpb24iLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6UXVlcnkiIG5hbWU9ImlzQWxsb2NhdGVkVG8iIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9Imluc3QiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0luc3RhbmNlU3BlY2lmaWNhdGlvbiIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9InBmbiI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvMjAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vSW5zdGFuY2VTcGVjaWZpY2F0aW9uIi8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuRGVwbG95bWVudFF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJpc0FsbG9jYXRlZFRvKG9yZy5lY2xpcHNlLnVtbDIudW1sLkluc3RhbmNlU3BlY2lmaWNhdGlvbixqYXZhLmxhbmcuU3RyaW5nKSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKE9jbEFueSkiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vSW5zdGFuY2VTcGVjaWZpY2F0aW9uIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJpbnN0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9pc0FsbG9jYXRlZFRvL2luc3QiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0luc3RhbmNlU3BlY2lmaWNhdGlvbiIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InBmbiIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvaXNBbGxvY2F0ZWRUby9wZm4iPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgICAgPHR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0QWxsb2NhdGlvbk5hbWUiIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9Imluc3QiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0luc3RhbmNlU3BlY2lmaWNhdGlvbiIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii8yMyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9JbnN0YW5jZVNwZWNpZmljYXRpb24iLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5EZXBsb3ltZW50UXVlcmllcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImdldEFsbG9jYXRpb25OYW1lKG9yZy5lY2xpcHNlLnVtbDIudW1sLkluc3RhbmNlU3BlY2lmaWNhdGlvbikiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShJbnN0YW5jZVNwZWNpZmljYXRpb24pIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0luc3RhbmNlU3BlY2lmaWNhdGlvbiIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iaW5zdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0QWxsb2NhdGlvbk5hbWUvaW5zdCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vSW5zdGFuY2VTcGVjaWZpY2F0aW9uIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgICAgPHR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJnZXREZWZpbmVkQ29tcG9uZW50c0ZvclBsYXRmb3JtIiB2aXNpYmlsaXR5PSJQdWJsaWMiIHR5cGU9Ii8zL1NlcXVlbmNlKENsYXNzKSI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImVsdCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJwZm4iPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzI2Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuRGVwbG95bWVudFF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJnZXREZWZpbmVkQ29tcG9uZW50c0ZvclBsYXRmb3JtKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsLCBqYXZhLmxhbmcuU3RyaW5nKSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKE9jbEFueSkiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0RGVmaW5lZENvbXBvbmVudHNGb3JQbGF0Zm9ybS9lbHQiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icGZuIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXREZWZpbmVkQ29tcG9uZW50c0ZvclBsYXRmb3JtL3BmbiI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJnZXREZWZpbmVkQ29tcG9uZW50c0ZvclBsYXRmb3JtMiIgdmlzaWJpbGl0eT0iUHVibGljIiB0eXBlPSIvMy9TZXF1ZW5jZShDbGFzcykiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJtb2RlbCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJwZm1OYW1lIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii8yOSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkRlcGxveW1lbnRRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0RGVmaW5lZENvbXBvbmVudHNGb3JQbGF0Zm9ybTIob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwsIGphdmEubGFuZy5TdHJpbmcpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoT2NsQW55KSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldERlZmluZWRDb21wb25lbnRzRm9yUGxhdGZvcm0yL21vZGVsIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InBmbU5hbWUiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldERlZmluZWRDb21wb25lbnRzRm9yUGxhdGZvcm0yL3BmbU5hbWUiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0RGVwbG95bWVudFBsYW5zSW5Nb2RlbCIgdmlzaWJpbGl0eT0iUHVibGljIiB0eXBlPSIvMy9TZXF1ZW5jZShEZXBsb3ltZW50UGxhbikiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJtb2RlbCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvMzIiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5EZXBsb3ltZW50UXVlcmllcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImdldERlcGxveW1lbnRQbGFuc0luTW9kZWwob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoTW9kZWwpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJtb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0RGVwbG95bWVudFBsYW5zSW5Nb2RlbC9tb2RlbCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJnZXREZXBsb3ltZW50UGxhblBhY2thZ2VzSW5Nb2RlbCIgdmlzaWJpbGl0eT0iUHVibGljIiB0eXBlPSIvMy9TZXF1ZW5jZShQYWNrYWdlKSI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9Im1vZGVsIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii8zNSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkRlcGxveW1lbnRRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0RGVwbG95bWVudFBsYW5QYWNrYWdlc0luTW9kZWwob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoTW9kZWwpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJtb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0RGVwbG95bWVudFBsYW5QYWNrYWdlc0luTW9kZWwvbW9kZWwiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0RGVwbG95bWVudFBsYW5JbnN0YW5jZVNwZWNzRm9yUGxhdGZvcm0iIHZpc2liaWxpdHk9IlB1YmxpYyIgdHlwZT0iLzMvU2VxdWVuY2UoSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImRlcGxveW1lbnRQbGFuIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9QYWNrYWdlIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0icGZtTmFtZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvMzgiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUGFja2FnZSIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkRlcGxveW1lbnRRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0RGVwbG95bWVudFBsYW5JbnN0YW5jZVNwZWNzRm9yUGxhdGZvcm0ob3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZSwgamF2YS5sYW5nLlN0cmluZykiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShPY2xBbnkpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BhY2thZ2UiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImRlcGxveW1lbnRQbGFuIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXREZXBsb3ltZW50UGxhbkluc3RhbmNlU3BlY3NGb3JQbGF0Zm9ybS9kZXBsb3ltZW50UGxhbiI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUGFja2FnZSIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InBmbU5hbWUiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldERlcGxveW1lbnRQbGFuSW5zdGFuY2VTcGVjc0ZvclBsYXRmb3JtL3BmbU5hbWUiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICA8L210bDpNb2R1bGU+CisgIDxlY29yZTpFUGFja2FnZSBuYW1lPSJhZGRpdGlvbnMiPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU3RyaW5nX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkludGVnZXJfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlJlYWxfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9SZWFsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkVPYmplY3RfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRJbnN0YW5jZVNwZWNpZmljYXRpb25zIiBlVHlwZT0iLzMvU2VxdWVuY2UoSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dldEluc3RhbmNlU3BlY2lmaWNhdGlvbnMiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImVsdCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRJbnN0YW5jZVNwZWNpZmljYXRpb25zRm9yUGxhdGZvcm0iIGVUeXBlPSIvMy9TZXF1ZW5jZShJbnN0YW5jZVNwZWNpZmljYXRpb24pIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9uc0ZvclBsYXRmb3JtIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbHQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InBmbiI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRJbnN0YW5jZVNwZWNpZmljYXRpb25zRm9yUGxhdGZvcm0yIiBlVHlwZT0iLzMvU2VxdWVuY2UoSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNGb3JQbGF0Zm9ybTIiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im1vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJwZm1OYW1lIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldFBhcmVudE5hbWUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZXRQYXJlbnROYW1lIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Imluc3QiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vSW5zdGFuY2VTcGVjaWZpY2F0aW9uIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldEluc3RhbmNlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZ2V0SW5zdGFuY2UiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZWx0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJpbnN0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0luc3RhbmNlU3BlY2lmaWNhdGlvbiIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc0FsbG9jYXRlZFRvIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvaXNBbGxvY2F0ZWRUbyIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iaW5zdCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9JbnN0YW5jZVNwZWNpZmljYXRpb24iLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InBmbiI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRBbGxvY2F0aW9uTmFtZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dldEFsbG9jYXRpb25OYW1lIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Imluc3QiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vSW5zdGFuY2VTcGVjaWZpY2F0aW9uIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldERlZmluZWRDb21wb25lbnRzRm9yUGxhdGZvcm0iIGVUeXBlPSIvMy9TZXF1ZW5jZShDbGFzcykiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZXREZWZpbmVkQ29tcG9uZW50c0ZvclBsYXRmb3JtIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbHQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InBmbiI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXREZWZpbmVkQ29tcG9uZW50c0ZvclBsYXRmb3JtMiIgZVR5cGU9Ii8zL1NlcXVlbmNlKENsYXNzKSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dldERlZmluZWRDb21wb25lbnRzRm9yUGxhdGZvcm0yIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJtb2RlbCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icGZtTmFtZSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXREZXBsb3ltZW50UGxhbnNJbk1vZGVsIiBlVHlwZT0iLzMvU2VxdWVuY2UoRGVwbG95bWVudFBsYW4pIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVwbG95bWVudFBsYW5zSW5Nb2RlbCIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibW9kZWwiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0RGVwbG95bWVudFBsYW5QYWNrYWdlc0luTW9kZWwiIGVUeXBlPSIvMy9TZXF1ZW5jZShQYWNrYWdlKSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dldERlcGxveW1lbnRQbGFuUGFja2FnZXNJbk1vZGVsIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJtb2RlbCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXREZXBsb3ltZW50UGxhbkluc3RhbmNlU3BlY3NGb3JQbGF0Zm9ybSIgZVR5cGU9Ii8zL1NlcXVlbmNlKEluc3RhbmNlU3BlY2lmaWNhdGlvbikiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZXREZXBsb3ltZW50UGxhbkluc3RhbmNlU3BlY3NGb3JQbGF0Zm9ybSIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGVwbG95bWVudFBsYW4iPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUGFja2FnZSIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icGZtTmFtZSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9jbEFueV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaW52b2tlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCBub24tc3RhbmRhcmQiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY2xhc3MiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im1ldGhvZCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYXJndW1lbnRzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvYWNjZWxlby9tdGwvMy4wL210bG5vbnN0ZGxpYi5lY29yZSMvL1NlcXVlbmNlKE9jbEFueSkiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb2xsZWN0aW9uKFQpX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQ29sbGVjdGlvbihUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTZXF1ZW5jZShUKV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1NlcXVlbmNlKFQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9yZGVyZWRTZXQoVClfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PcmRlcmVkU2V0KFQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik1vZGVsX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSW5zdGFuY2VTcGVjaWZpY2F0aW9uX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vSW5zdGFuY2VTcGVjaWZpY2F0aW9uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlBhY2thZ2VfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9QYWNrYWdlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgPC9lY29yZTpFUGFja2FnZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxlY29yZTpFUGFja2FnZSBuYW1lPSJjb2xsZWN0aW9ucyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgbmFtZT0iU2VxdWVuY2UoSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEudXRpbC5MaXN0Ij4KKyAgICAgIDxlbGVtZW50VHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vSW5zdGFuY2VTcGVjaWZpY2F0aW9uIi8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgbmFtZT0iU2VxdWVuY2UoQ2xhc3MpIiBpbnN0YW5jZUNsYXNzTmFtZT0iamF2YS51dGlsLkxpc3QiPgorICAgICAgPGVsZW1lbnRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIG5hbWU9IlNlcXVlbmNlKERlcGxveW1lbnRQbGFuKSIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEudXRpbC5MaXN0Ij4KKyAgICAgIDxlbGVtZW50VHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEjLy9EZXBsb3ltZW50UGxhbiIvPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIG5hbWU9IlNlcXVlbmNlKFBhY2thZ2UpIiBpbnN0YW5jZUNsYXNzTmFtZT0iamF2YS51dGlsLkxpc3QiPgorICAgICAgPGVsZW1lbnRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9QYWNrYWdlIi8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgbmFtZT0iU2VxdWVuY2UoTW9kZWwpIiBpbnN0YW5jZUNsYXNzTmFtZT0iamF2YS51dGlsLkxpc3QiPgorICAgICAgPGVsZW1lbnRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIG5hbWU9IlNlcXVlbmNlKE9jbEFueSkiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuTGlzdCI+CisgICAgICA8ZWxlbWVudFR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgbmFtZT0iU2VxdWVuY2UoUGFja2FnZWFibGVFbGVtZW50KSIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEudXRpbC5MaXN0Ij4KKyAgICAgIDxlbGVtZW50VHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUGFja2FnZWFibGVFbGVtZW50Ii8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgIDwvZWNvcmU6RVBhY2thZ2U+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9JbnN0YW5jZVNwZWNpZmljYXRpb24iLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9JbnN0YW5jZVNwZWNpZmljYXRpb24iLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9JbnN0YW5jZVNwZWNpZmljYXRpb24iLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9JbnN0YW5jZVNwZWNpZmljYXRpb24iLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vSW5zdGFuY2VTcGVjaWZpY2F0aW9uIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vSW5zdGFuY2VTcGVjaWZpY2F0aW9uIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUGFja2FnZSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BhY2thZ2UiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8ZWNvcmU6RUFubm90YXRpb24gc291cmNlPSJwb3NpdGlvbnMiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMCIgcmVmZXJlbmNlcz0iLzAvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzc0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMSIgcmVmZXJlbmNlcz0iLzAvZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9ucyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODYzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExMjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yIiByZWZlcmVuY2VzPSIvMC9nZXRJbnN0YW5jZVNwZWNpZmljYXRpb25zL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTAzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkxNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMiIHJlZmVyZW5jZXM9Ii8wL2dldEluc3RhbmNlU3BlY2lmaWNhdGlvbnMvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTU0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExMTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQiIHJlZmVyZW5jZXM9Ii8wL2dldEluc3RhbmNlU3BlY2lmaWNhdGlvbnMvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNSIgcmVmZXJlbmNlcz0iLzAvZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9ucy8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDM2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42IiByZWZlcmVuY2VzPSIvMC9nZXRJbnN0YW5jZVNwZWNpZmljYXRpb25zLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDM4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExMDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjciIHJlZmVyZW5jZXM9Ii8wL2dldEluc3RhbmNlU3BlY2lmaWNhdGlvbnMvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExMDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTExNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOCIgcmVmZXJlbmNlcz0iLzAvZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9ucy8lLyUuMi8lL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTExMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTE0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45IiByZWZlcmVuY2VzPSIvMC9nZXRJbnN0YW5jZVNwZWNpZmljYXRpb25zRm9yUGxhdGZvcm0iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExMjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQzMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwIiByZWZlcmVuY2VzPSIvMC9nZXRJbnN0YW5jZVNwZWNpZmljYXRpb25zRm9yUGxhdGZvcm0vZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExODQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMSIgcmVmZXJlbmNlcz0iLzAvZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9uc0ZvclBsYXRmb3JtL3BmbiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE4NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTIiIHJlZmVyZW5jZXM9Ii8wL2dldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNGb3JQbGF0Zm9ybS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjM4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE0MjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzIiByZWZlcmVuY2VzPSIvMC9nZXRJbnN0YW5jZVNwZWNpZmljYXRpb25zRm9yUGxhdGZvcm0vJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQiIHJlZmVyZW5jZXM9Ii8wL2dldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNGb3JQbGF0Zm9ybS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEyNDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTMyMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTUiIHJlZmVyZW5jZXM9Ii8wL2dldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNGb3JQbGF0Zm9ybS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTMyMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNDA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNiIgcmVmZXJlbmNlcz0iLzAvZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9uc0ZvclBsYXRmb3JtLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNDA4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE0MjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3IiByZWZlcmVuY2VzPSIvMC9nZXRJbnN0YW5jZVNwZWNpZmljYXRpb25zRm9yUGxhdGZvcm0vJS8lLjIvJS9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0MTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQyMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTgiIHJlZmVyZW5jZXM9Ii8wL2dldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNGb3JQbGF0Zm9ybS8lLyUuMi8lLjEvcGZuIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNDIyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE0MjUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5IiByZWZlcmVuY2VzPSIvMC9nZXRJbnN0YW5jZVNwZWNpZmljYXRpb25zRm9yUGxhdGZvcm0yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNDMzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE3NTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMCIgcmVmZXJlbmNlcz0iLzAvZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9uc0ZvclBsYXRmb3JtMi9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTQ4NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNDk4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyOSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjEiIHJlZmVyZW5jZXM9Ii8wL2dldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNGb3JQbGF0Zm9ybTIvcGZtTmFtZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTUwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNTE2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyOSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjIiIHJlZmVyZW5jZXM9Ii8wL2dldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNGb3JQbGF0Zm9ybTIvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTU1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNzUyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMyIgcmVmZXJlbmNlcz0iLzAvZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9uc0ZvclBsYXRmb3JtMi8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNCIgcmVmZXJlbmNlcz0iLzAvZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9uc0ZvclBsYXRmb3JtMi8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE1NjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTYzOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjUiIHJlZmVyZW5jZXM9Ii8wL2dldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNGb3JQbGF0Zm9ybTIvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE2NDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTcyNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjYiIHJlZmVyZW5jZXM9Ii8wL2dldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNGb3JQbGF0Zm9ybTIvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE3MjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTc1MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjciIHJlZmVyZW5jZXM9Ii8wL2dldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNGb3JQbGF0Zm9ybTIvJS8lLjIvJS9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTczNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNzQxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOCIgcmVmZXJlbmNlcz0iLzAvZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9uc0ZvclBsYXRmb3JtMi8lLyUuMi8lLjEvcGZtTmFtZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTc0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNzUwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOSIgcmVmZXJlbmNlcz0iLzAvZ2V0UGFyZW50TmFtZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTc1OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTk0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzMiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzAiIHJlZmVyZW5jZXM9Ii8wL2dldFBhcmVudE5hbWUvaW5zdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTc4NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxODE1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzMiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzEiIHJlZmVyZW5jZXM9Ii8wL2dldFBhcmVudE5hbWUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTgzMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTkwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMiIgcmVmZXJlbmNlcz0iLzAvZ2V0UGFyZW50TmFtZS8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMyIgcmVmZXJlbmNlcz0iLzAvZ2V0UGFyZW50TmFtZS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4MzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTkxMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzQiIHJlZmVyZW5jZXM9Ii8wL2dldFBhcmVudE5hbWUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE5MTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTk3MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzUiIHJlZmVyZW5jZXM9Ii8wL2dldFBhcmVudE5hbWUvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE5NzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTk4OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzYiIHJlZmVyZW5jZXM9Ii8wL2dldFBhcmVudE5hbWUvJS8lLjIvJS9pbnN0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5ODgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM3IiByZWZlcmVuY2VzPSIvMC9nZXRJbnN0YW5jZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTk5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjc0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzNSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzgiIHJlZmVyZW5jZXM9Ii8wL2dldEluc3RhbmNlL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjAyMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMDMzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzNSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzkiIHJlZmVyZW5jZXM9Ii8wL2dldEluc3RhbmNlL2luc3QiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIwMzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjA2MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQwIiByZWZlcmVuY2VzPSIvMC9nZXRJbnN0YW5jZS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMDgwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIyNzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQxIiByZWZlcmVuY2VzPSIvMC9nZXRJbnN0YW5jZS8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MiIgcmVmZXJlbmNlcz0iLzAvZ2V0SW5zdGFuY2UvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMDg3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIxNjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQzIiByZWZlcmVuY2VzPSIvMC9nZXRJbnN0YW5jZS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjE2NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjQ4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NCIgcmVmZXJlbmNlcz0iLzAvZ2V0SW5zdGFuY2UvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyNTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjI2OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDUiIHJlZmVyZW5jZXM9Ii8wL2dldEluc3RhbmNlLyUvJS4yLyUvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMjU5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIyNjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ2IiByZWZlcmVuY2VzPSIvMC9nZXRJbnN0YW5jZS8lLyUuMi8lLjEvaW5zdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjI2NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjY4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NyIgcmVmZXJlbmNlcz0iLzAvaXNBbGxvY2F0ZWRUbyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjI3NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTQ3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzOCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDgiIHJlZmVyZW5jZXM9Ii8wL2lzQWxsb2NhdGVkVG8vaW5zdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjMwNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzMyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzOCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDkiIHJlZmVyZW5jZXM9Ii8wL2lzQWxsb2NhdGVkVG8vcGZuIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMzM0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIzNDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41MCIgcmVmZXJlbmNlcz0iLzAvaXNBbGxvY2F0ZWRUby8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMzYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI1NDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUxIiByZWZlcmVuY2VzPSIvMC9pc0FsbG9jYXRlZFRvLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUyIiByZWZlcmVuY2VzPSIvMC9pc0FsbG9jYXRlZFRvLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjM2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNDQzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41MyIgcmVmZXJlbmNlcz0iLzAvaXNBbGxvY2F0ZWRUby8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjQ0NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41NCIgcmVmZXJlbmNlcz0iLzAvaXNBbGxvY2F0ZWRUby8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjUyMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTQyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41NSIgcmVmZXJlbmNlcz0iLzAvaXNBbGxvY2F0ZWRUby8lLyUuMi8lL2luc3QiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI1MzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjUzNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTYiIHJlZmVyZW5jZXM9Ii8wL2lzQWxsb2NhdGVkVG8vJS8lLjIvJS4xL3BmbiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjUzOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTQxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41NyIgcmVmZXJlbmNlcz0iLzAvZ2V0QWxsb2NhdGlvbk5hbWUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI1NDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjc5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU4IiByZWZlcmVuY2VzPSIvMC9nZXRBbGxvY2F0aW9uTmFtZS9pbnN0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNTgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI2MDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41OSIgcmVmZXJlbmNlcz0iLzAvZ2V0QWxsb2NhdGlvbk5hbWUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjYyNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNzg4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MCIgcmVmZXJlbmNlcz0iLzAvZ2V0QWxsb2NhdGlvbk5hbWUvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjEiIHJlZmVyZW5jZXM9Ii8wL2dldEFsbG9jYXRpb25OYW1lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjYzMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNzA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MiIgcmVmZXJlbmNlcz0iLzAvZ2V0QWxsb2NhdGlvbk5hbWUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI3MDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjc3MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjMiIHJlZmVyZW5jZXM9Ii8wL2dldEFsbG9jYXRpb25OYW1lLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNzczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI3ODciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjY0IiByZWZlcmVuY2VzPSIvMC9nZXRBbGxvY2F0aW9uTmFtZS8lLyUuMi8lL2luc3QiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI3ODIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjc4NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjUiIHJlZmVyZW5jZXM9Ii8wL2dldERlZmluZWRDb21wb25lbnRzRm9yUGxhdGZvcm0iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI3OTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzA3NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjY2IiByZWZlcmVuY2VzPSIvMC9nZXREZWZpbmVkQ29tcG9uZW50c0ZvclBsYXRmb3JtL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjg0MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyODUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0NCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjciIHJlZmVyZW5jZXM9Ii8wL2dldERlZmluZWRDb21wb25lbnRzRm9yUGxhdGZvcm0vcGZuIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyODUzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI4NjQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQ0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42OCIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVmaW5lZENvbXBvbmVudHNGb3JQbGF0Zm9ybS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyODg5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMwNzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjY5IiByZWZlcmVuY2VzPSIvMC9nZXREZWZpbmVkQ29tcG9uZW50c0ZvclBsYXRmb3JtLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjcwIiByZWZlcmVuY2VzPSIvMC9nZXREZWZpbmVkQ29tcG9uZW50c0ZvclBsYXRmb3JtLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjg5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyOTcxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43MSIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVmaW5lZENvbXBvbmVudHNGb3JQbGF0Zm9ybS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjk3MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMDUyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43MiIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVmaW5lZENvbXBvbmVudHNGb3JQbGF0Zm9ybS8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzA1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMDcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43MyIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVmaW5lZENvbXBvbmVudHNGb3JQbGF0Zm9ybS8lLyUuMi8lL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzA2MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMDY2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43NCIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVmaW5lZENvbXBvbmVudHNGb3JQbGF0Zm9ybS8lLyUuMi8lLjEvcGZuIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMDY4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMwNzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjc1IiByZWZlcmVuY2VzPSIvMC9nZXREZWZpbmVkQ29tcG9uZW50c0ZvclBsYXRmb3JtMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzA3OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMzc3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzYiIHJlZmVyZW5jZXM9Ii8wL2dldERlZmluZWRDb21wb25lbnRzRm9yUGxhdGZvcm0yL21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMTI2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMxMzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQ3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43NyIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVmaW5lZENvbXBvbmVudHNGb3JQbGF0Zm9ybTIvcGZtTmFtZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzE0MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMTU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzgiIHJlZmVyZW5jZXM9Ii8wL2dldERlZmluZWRDb21wb25lbnRzRm9yUGxhdGZvcm0yLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMxODEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzM3MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzkiIHJlZmVyZW5jZXM9Ii8wL2dldERlZmluZWRDb21wb25lbnRzRm9yUGxhdGZvcm0yLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjgwIiByZWZlcmVuY2VzPSIvMC9nZXREZWZpbmVkQ29tcG9uZW50c0ZvclBsYXRmb3JtMi8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMxODgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzI2MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODEiIHJlZmVyZW5jZXM9Ii8wL2dldERlZmluZWRDb21wb25lbnRzRm9yUGxhdGZvcm0yLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMjY1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMzNDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjgyIiByZWZlcmVuY2VzPSIvMC9nZXREZWZpbmVkQ29tcG9uZW50c0ZvclBsYXRmb3JtMi8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzM0NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMzcxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44MyIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVmaW5lZENvbXBvbmVudHNGb3JQbGF0Zm9ybTIvJS8lLjIvJS9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzM1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMzYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44NCIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVmaW5lZENvbXBvbmVudHNGb3JQbGF0Zm9ybTIvJS8lLjIvJS4xL3BmbU5hbWUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMzNjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzM3MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODUiIHJlZmVyZW5jZXM9Ii8wL2dldERlcGxveW1lbnRQbGFuc0luTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMzNzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzYyNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjg2IiByZWZlcmVuY2VzPSIvMC9nZXREZXBsb3ltZW50UGxhbnNJbk1vZGVsL21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNDE5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM0MzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjUwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44NyIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVwbG95bWVudFBsYW5zSW5Nb2RlbC8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNDY1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM2MjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjg4IiByZWZlcmVuY2VzPSIvMC9nZXREZXBsb3ltZW50UGxhbnNJbk1vZGVsLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjg5IiByZWZlcmVuY2VzPSIvMC9nZXREZXBsb3ltZW50UGxhbnNJbk1vZGVsLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzQ3MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNTQ3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45MCIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVwbG95bWVudFBsYW5zSW5Nb2RlbC8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzU0OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNjA0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45MSIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVwbG95bWVudFBsYW5zSW5Nb2RlbC8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzYwNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNjIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45MiIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVwbG95bWVudFBsYW5zSW5Nb2RlbC8lLyUuMi8lL21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNjE1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM2MjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjkzIiByZWZlcmVuY2VzPSIvMC9nZXREZXBsb3ltZW50UGxhblBhY2thZ2VzSW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzYyOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzODg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1MyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTQiIHJlZmVyZW5jZXM9Ii8wL2dldERlcGxveW1lbnRQbGFuUGFja2FnZXNJbk1vZGVsL21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNjc2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM2ODkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjUzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45NSIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVwbG95bWVudFBsYW5QYWNrYWdlc0luTW9kZWwvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzcxNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzODc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45NiIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVwbG95bWVudFBsYW5QYWNrYWdlc0luTW9kZWwvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTciIHJlZmVyZW5jZXM9Ii8wL2dldERlcGxveW1lbnRQbGFuUGFja2FnZXNJbk1vZGVsLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzcyMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNzk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45OCIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVwbG95bWVudFBsYW5QYWNrYWdlc0luTW9kZWwvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM3OTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzg2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTkiIHJlZmVyZW5jZXM9Ii8wL2dldERlcGxveW1lbnRQbGFuUGFja2FnZXNJbk1vZGVsLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzODYzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM4NzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwMCIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVwbG95bWVudFBsYW5QYWNrYWdlc0luTW9kZWwvJS8lLjIvJS9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzg3MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzODc3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDEiIHJlZmVyZW5jZXM9Ii8wL2dldERlcGxveW1lbnRQbGFuSW5zdGFuY2VTcGVjc0ZvclBsYXRmb3JtIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzODg2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQyNDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjU2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDIiIHJlZmVyZW5jZXM9Ii8wL2dldERlcGxveW1lbnRQbGFuSW5zdGFuY2VTcGVjc0ZvclBsYXRmb3JtL2RlcGxveW1lbnRQbGFuIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzOTQyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM5NjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjU2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDMiIHJlZmVyZW5jZXM9Ii8wL2dldERlcGxveW1lbnRQbGFuSW5zdGFuY2VTcGVjc0ZvclBsYXRmb3JtL3BmbU5hbWUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM5NjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzk4NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwNCIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVwbG95bWVudFBsYW5JbnN0YW5jZVNwZWNzRm9yUGxhdGZvcm0vJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDAyNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MjM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDUiIHJlZmVyZW5jZXM9Ii8wL2dldERlcGxveW1lbnRQbGFuSW5zdGFuY2VTcGVjc0ZvclBsYXRmb3JtLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwNiIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVwbG95bWVudFBsYW5JbnN0YW5jZVNwZWNzRm9yUGxhdGZvcm0vJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MDMxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQxMDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwNyIgcmVmZXJlbmNlcz0iLzAvZ2V0RGVwbG95bWVudFBsYW5JbnN0YW5jZVNwZWNzRm9yUGxhdGZvcm0vJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQxMDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDE5OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTA4IiByZWZlcmVuY2VzPSIvMC9nZXREZXBsb3ltZW50UGxhbkluc3RhbmNlU3BlY3NGb3JQbGF0Zm9ybS8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDIwMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MjM0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDkiIHJlZmVyZW5jZXM9Ii8wL2dldERlcGxveW1lbnRQbGFuSW5zdGFuY2VTcGVjc0ZvclBsYXRmb3JtLyUvJS4yLyUvZGVwbG95bWVudFBsYW4iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQyMTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDIyNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTEwIiByZWZlcmVuY2VzPSIvMC9nZXREZXBsb3ltZW50UGxhbkluc3RhbmNlU3BlY3NGb3JQbGF0Zm9ybS8lLyUuMi8lLjEvcGZtTmFtZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDIyNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MjMzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZWNvcmU6RUFubm90YXRpb24+Cis8L3htaTpYTUk+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9EZXBsb3ltZW50UXVlcmllcy5qYXZhIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvRGVwbG95bWVudFF1ZXJpZXMuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNDdlZmRiCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvRGVwbG95bWVudFF1ZXJpZXMuamF2YQpAQCAtMCwwICsxLDQwMyBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTMgUFJPVEVVUyBQcm9qZWN0IENvbnNvcnRpdW0uCisgKgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogU2ViYXN0aWVuIEJPTk5FVCAoRUZGSURFTkNFKSAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICogTmljb2xhcyBEVSBMQUMgKElOVEVNUE9SQSkgLSBBZGRpdGlvbmFsIG1ldGhvZHMgYW5kIGEgZmV3IHVwZGF0ZXMuCisgKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXM7CisKK2ltcG9ydCBqYXZhLnV0aWwuSGFzaFNldDsKK2ltcG9ydCBqYXZhLnV0aWwuTGlua2VkTGlzdDsKK2ltcG9ydCBqYXZhLnV0aWwuTGlzdDsKK2ltcG9ydCBqYXZhLnV0aWwuU2V0OworCitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsbG9jYXRlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EZXBsb3ltZW50UGxhbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzc2lmaWVyOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkRlcGVuZGVuY3k7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5JbnN0YW5jZVNwZWNpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWw7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuTmFtZWRFbGVtZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLnV0aWwuVU1MVXRpbDsKKworcHVibGljIGNsYXNzIERlcGxveW1lbnRRdWVyaWVzIHsKKworCS8qKgorCSAqIFJldHVybiB0aGUgbGlzdCBvZiBpbnN0YW5jZSBzcGVjaWZpY2F0aW9ucyBpbiBhIG1vZGVsCisJICoKKwkgKiBAcGFyYW0gbW9kZWwKKwkgKiBAcmV0dXJuIEEgbGlzdCBvZiBJbnN0YW5jZVNwZWNpZmljYXRpb24gb2YgYWxsIGluc3RhbmNlIHNwZWNpZmljYXRpb25zCisJICovCisJc3RhdGljIHB1YmxpYyBMaXN0PEluc3RhbmNlU3BlY2lmaWNhdGlvbj4gZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9uc0luTW9kZWwoTW9kZWwgbW9kZWwpIHsKKwkJTGlua2VkTGlzdDxJbnN0YW5jZVNwZWNpZmljYXRpb24+IGZvdW5kX2VsdHMgPSBuZXcgTGlua2VkTGlzdDxJbnN0YW5jZVNwZWNpZmljYXRpb24+KCk7CisJCWZvciAoRWxlbWVudCBuZSA6IG1vZGVsLmdldE93bmVkRWxlbWVudHMoKSkgeworCQkJaWYgKG5lIGluc3RhbmNlb2YgTmFtZWRFbGVtZW50KSB7CisJCQkJaWYgKG5lIGluc3RhbmNlb2Ygb3JnLmVjbGlwc2UudW1sMi51bWwuSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSB7CisJCQkJCWZvdW5kX2VsdHMuYWRkKChJbnN0YW5jZVNwZWNpZmljYXRpb24pIG5lKTsKKwkJCQkJLy8gU3lzdGVtLm91dC5wcmludGxuKCJJbnN0YW5jZSA6ICIrKChOYW1lZEVsZW1lbnQpIG5lKS5nZXROYW1lKCkpOworCQkJCX0gZWxzZSBpZiAobmUgaW5zdGFuY2VvZiBvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlKSB7CisJCQkJCWZvdW5kX2VsdHMuYWRkQWxsKGdldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNJblBhY2thZ2UoKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhY2thZ2UpIG5lKSk7CisJCQkJfQorCQkJfSBlbHNlIGlmIChuZSBpbnN0YW5jZW9mIE1vZGVsKSB7CisJCQkJZm91bmRfZWx0cy5hZGRBbGwoZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9uc0luTW9kZWwoKE1vZGVsKSBuZSkpOworCQkJfQorCQl9CisJCS8vIGlmKGZvdW5kX2VsdHMuaXNFbXB0eSgpKXsKKwkJLy8gU3lzdGVtLm91dC5wcmludGxuKCJJbnN0YW5jZXMgbGlzdCBlbXB0eSIpOworCQkvLyB9CisJCXJldHVybiBmb3VuZF9lbHRzOworCX0KKworCS8qKgorCSAqIFJldHVybiB0aGUgbGlzdCBvZiBpbnN0YW5jZSBzcGVjaWZpY2F0aW9ucyBpbiBhIHBhY2thZ2UKKwkgKgorCSAqIEBwYXJhbSBwYWNrCisJICogQHJldHVybiBBIGxpc3Qgb2YgSW5zdGFuY2VTcGVjaWZpY2F0aW9uIG9mIGFsbCBpbnN0YW5jZSBzcGVjaWZpY2F0aW9ucworCSAqLworCXN0YXRpYyBwdWJsaWMgTGlzdDxJbnN0YW5jZVNwZWNpZmljYXRpb24+IGdldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNJblBhY2thZ2Uob3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZSBwYWNrKSB7CisJCUxpbmtlZExpc3Q8SW5zdGFuY2VTcGVjaWZpY2F0aW9uPiBmb3VuZF9lbHRzID0gbmV3IExpbmtlZExpc3Q8SW5zdGFuY2VTcGVjaWZpY2F0aW9uPigpOworCQlmb3IgKEVsZW1lbnQgbmUgOiBwYWNrLmdldE93bmVkRWxlbWVudHMoKSkgeworCQkJaWYgKG5lIGluc3RhbmNlb2YgTmFtZWRFbGVtZW50KSB7CisJCQkJaWYgKG5lIGluc3RhbmNlb2Ygb3JnLmVjbGlwc2UudW1sMi51bWwuSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSB7CisJCQkJCWZvdW5kX2VsdHMuYWRkKChJbnN0YW5jZVNwZWNpZmljYXRpb24pIG5lKTsKKwkJCQl9IGVsc2UgaWYgKG5lIGluc3RhbmNlb2Ygb3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZSkgeworCQkJCQlmb3VuZF9lbHRzLmFkZEFsbChnZXRJbnN0YW5jZVNwZWNpZmljYXRpb25zSW5QYWNrYWdlKChvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlKSBuZSkpOworCQkJCX0KKwkJCX0gZWxzZSBpZiAobmUgaW5zdGFuY2VvZiBNb2RlbCkgeworCQkJCWZvdW5kX2VsdHMuYWRkQWxsKGdldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNJbk1vZGVsKChNb2RlbCkgbmUpKTsKKwkJCX0KKwkJfQorCQlyZXR1cm4gZm91bmRfZWx0czsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm4gdGhlIGxpc3Qgb2YgaW5zdGFuY2Ugc3BlY2lmaWNhdGlvbnMgYWxsb2NhdGVkIHRvIGdpdmVuIHBsYXRmb3JtCisJICoKKwkgKiBAcGFyYW0gbW9kZWwKKwkgKiBAcGFyYW0KKwkgKiBAcmV0dXJuIEEgbGlzdCBvZiBJbnN0YW5jZVNwZWNpZmljYXRpb24gb2YgYWxsIGluc3RhbmNlIHNwZWNpZmljYXRpb25zCisJICovCisJc3RhdGljIHB1YmxpYyBMaXN0PEluc3RhbmNlU3BlY2lmaWNhdGlvbj4gZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9uc0ZvclBsYXRmb3JtKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsIG1vZGVsLCBqYXZhLmxhbmcuU3RyaW5nIHBmbikgeworCQlMaXN0PEluc3RhbmNlU3BlY2lmaWNhdGlvbj4gZm91bmRfZWx0cyA9IG5ldyBMaW5rZWRMaXN0PEluc3RhbmNlU3BlY2lmaWNhdGlvbj4oKTsKKwkJZm9yIChJbnN0YW5jZVNwZWNpZmljYXRpb24gaW5zdGFuY2VTcGVjaWZpY2F0aW9uIDogZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9uc0luTW9kZWwobW9kZWwpKSB7CisJCQlpZiAoaXNBbGxvY2F0ZWRUbyhpbnN0YW5jZVNwZWNpZmljYXRpb24sIHBmbikpIHsKKwkJCQlmb3VuZF9lbHRzLmFkZChpbnN0YW5jZVNwZWNpZmljYXRpb24pOworCQkJfQorCQl9CisJCXJldHVybiBmb3VuZF9lbHRzOworCX0KKworCS8qKgorCSAqIFJldHVybiB0aGUgbGlzdCBvZiBpbnN0YW5jZSBzcGVjaWZpY2F0aW9ucyBhbGxvY2F0ZWQgdG8gZ2l2ZW4gcGxhdGZvcm0uIFNob3VsZCBiZSBlcXVpdmFsZW50IHRvIGdldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNGb3JQbGF0Zm9ybSwgYnV0CisJICogZGlmZmVyZW50IGltcGxlbWVudGF0aW9uLgorCSAqCisJICogQHBhcmFtIG1vZGVsCisJICogQHBhcmFtIHRhcmdldFBsYXRmb3JtTmFtZQorCSAqICAgICAgICAgICAgTmFtZSBvZiB0aGUgcmVxdWVzdGVkIHRhcmdldCBwbGF0Zm9ybSB0eXBlLgorCSAqIEByZXR1cm4gQSBsaXN0IG9mIEluc3RhbmNlU3BlY2lmaWNhdGlvbiBvZiBhbGwgaW5zdGFuY2Ugc3BlY2lmaWNhdGlvbnMuCisJICovCisJc3RhdGljIHB1YmxpYyBMaXN0PEluc3RhbmNlU3BlY2lmaWNhdGlvbj4gZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9uc0ZvclBsYXRmb3JtMihvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCBtb2RlbCwgU3RyaW5nIHRhcmdldFBsYXRmb3JtTmFtZSkgeyAvLyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGxhdGZvcm0gdGFyZ2V0UGxhdGZvcm0pIHsKKwkJLy8gVGhlIGxpc3QgdG8gcmV0dXJuIGluIHRoZSBlbmQuCisJCUxpc3Q8SW5zdGFuY2VTcGVjaWZpY2F0aW9uPiBmb3VuZF9lbHRzID0gbmV3IExpbmtlZExpc3Q8SW5zdGFuY2VTcGVjaWZpY2F0aW9uPigpOworCQlmb3IgKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhY2thZ2UgZHBQY2sgOiBnZXREZXBsb3ltZW50UGxhblBhY2thZ2VzSW5Nb2RlbChtb2RlbCkpIHsKKwkJCWZvdW5kX2VsdHMuYWRkQWxsKGdldERlcGxveW1lbnRQbGFuSW5zdGFuY2VTcGVjc0ZvclBsYXRmb3JtKGRwUGNrLCB0YXJnZXRQbGF0Zm9ybU5hbWUpKTsKKwkJfQorCQlyZXR1cm4gZm91bmRfZWx0czsKKwl9CisKKworCS8qKgorCSAqIFJldHVybiB0aGUgcGFyZW50IG5hbWUgb2YgYW4gaW5zdGFuY2UKKwkgKgorCSAqIEBwYXJhbSBpbnN0CisJICogQHJldHVybiBQYXJlbnQgbmFtZSBvZiBhbiBpbnN0YW5jZQorCSAqLworCXN0YXRpYyBwdWJsaWMgamF2YS5sYW5nLlN0cmluZyBnZXRQYXJlbnROYW1lKEluc3RhbmNlU3BlY2lmaWNhdGlvbiBpbnN0KSB7CisJCVN0cmluZyBuYW1lID0gaW5zdC5nZXROYW1lKCk7CisKKwkJSW50ZWdlciBpZHggPSBuYW1lLmxhc3RJbmRleE9mKCcuJyk7CisJCWlmIChpZHggIT0gLTEpIHsKKwkJCXJldHVybiBuYW1lLnN1YnN0cmluZygwLCBpZHgpOworCQl9IGVsc2UgeworCQkJcmV0dXJuIG51bGw7CisJCX0KKwl9CisKKworCS8qKgorCSAqIEdldCByZWFsIGluc3RhbmNlIGZyb20gSW5zdGFuY2VTcGVjaWZpY2F0aW9uIG9iamVjdAorCSAqCisJICogQHBhcmFtIG1vZGVsCisJICogQHBhcmFtIGluc3RhbmNlU3BlY2lmaWNhdGlvbgorCSAqIEByZXR1cm4gdGhlIGluc3RhbmNlIGlmIGZvdW5kLCBvciBlbHNlIG51bGwKKwkgKi8KKwlzdGF0aWMgcHVibGljIFByb3BlcnR5IGdldEluc3RhbmNlKE1vZGVsIG1vZGVsLCBJbnN0YW5jZVNwZWNpZmljYXRpb24gaW5zdGFuY2VTcGVjaWZpY2F0aW9uKSB7CisJCUxpc3Q8b3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk+IGwgPSBBcmNoaXRlY3R1cmVRdWVyaWVzLmdldEFsbFN1YkNvbXBvbmVudHNJbkNsYXNzKEFyY2hpdGVjdHVyZVF1ZXJpZXMuZ2V0Um9vdENsYXNzRm9yTW9kZWwobW9kZWwpKTsKKworCQlmb3IgKFByb3BlcnR5IHAgOiBsKSB7CisJCQlTdHJpbmdbXSBzdHIgPSBpbnN0YW5jZVNwZWNpZmljYXRpb24uZ2V0TmFtZSgpLnNwbGl0KCJcXC4iKTsKKworCQkJaWYgKHN0ci5sZW5ndGggPiAwICYmIHAuZ2V0TmFtZSgpLmVxdWFscyhzdHJbc3RyLmxlbmd0aCAtIDFdKSkgeworCQkJCXJldHVybiBwOworCQkJfQorCQl9CisKKwkJcmV0dXJuIG51bGw7CisJfQorCisKKwkvKioKKwkgKiBGdW5jdGlvbiB0byBrbm93IGlmIHRoZSBpbnN0YW5jZSBtdXN0IGJlIGdlbmVyYXRlZCBieSB0aGUgcGxhdGZvcm0gb3Igbm90LgorCSAqCisJICogQHBhcmFtIGluc3RhbmNlU3BlY2lmaWNhdGlvbgorCSAqIEBwYXJhbSBwbGF0Zm9ybU5hbWUKKwkgKiBAcmV0dXJuIHRydWUgaWYgdGhlIGluc3RhbmNlIGlzIGFsbG9jYXRlZCB0byB0aGUgcGxhdGZvcm0gd2hpY2ggbmFtZSBpcyBnaXZlbiBpbiBwYXJhbWV0ZXIKKwkgKi8KKwlzdGF0aWMgcHVibGljIGJvb2xlYW4gaXNBbGxvY2F0ZWRUbyhJbnN0YW5jZVNwZWNpZmljYXRpb24gaW5zdFNwZWMsIFN0cmluZyBwbGF0Zm9ybU5hbWUpIHsKKwkJaWYgKGluc3RTcGVjID09IG51bGwgfHwgcGxhdGZvcm1OYW1lID09IG51bGwpIHsKKwkJCXJldHVybiBmYWxzZTsKKwkJfQorCQlmb3IgKERlcGVuZGVuY3kgZGVwIDogaW5zdFNwZWMuZ2V0Q2xpZW50RGVwZW5kZW5jaWVzKCkpIHsKKwkJCUFsbG9jYXRlIGFsbG9jID0gVU1MVXRpbC5nZXRTdGVyZW90eXBlQXBwbGljYXRpb24oZGVwLCBBbGxvY2F0ZS5jbGFzcyk7CisJCQlpZiAoYWxsb2MgPT0gbnVsbCkgeworCQkJCWNvbnRpbnVlOworCQkJfQorCQkJZm9yIChOYW1lZEVsZW1lbnQgbmVsdCA6IGRlcC5nZXRTdXBwbGllcnMoKSkgeworCQkJCWlmIChpc1BsYXRmb3JtSW5zdGFuY2VTcGVjaWZpY2F0aW9uRnJvbVBsYXRmb3JtKG5lbHQsIHBsYXRmb3JtTmFtZSkpIHsKKwkJCQkJcmV0dXJuIHRydWU7CisJCQkJfQorCQkJfQorCQl9CisKKwkJcmV0dXJuIGZhbHNlOworCX0KKworCS8qKgorCSAqIFJldHJpZXZlcyB0aGUgZGVwbG95bWVudCBwbGFucyBkZWZpbmVkIGluIGEgZ2l2ZW4gbW9kZWwuCisJICoKKwkgKiBAcGFyYW0gbW9kZWwKKwkgKiBAcmV0dXJuIEEgbGlzdCBvZiBEZXBsb3ltZW50UGxhbnMgZGVmaW5lZCBpbiB0aGUgbW9kZWwuCisJICovCisJc3RhdGljIHB1YmxpYyBMaXN0PERlcGxveW1lbnRQbGFuPiBnZXREZXBsb3ltZW50UGxhbnNJbk1vZGVsKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsIG1vZGVsKSB7CisJCUxpc3Q8RGVwbG95bWVudFBsYW4+IGRlcF9wbGFucyA9IG5ldyBMaW5rZWRMaXN0PERlcGxveW1lbnRQbGFuPigpOworCQlmb3IgKEVsZW1lbnQgZWx0IDogbW9kZWwuZ2V0T3duZWRFbGVtZW50cygpKSB7CisJCQlpZiAoZWx0IGluc3RhbmNlb2Ygb3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZSkgeworCQkJCURlcGxveW1lbnRQbGFuIGRwID0gVU1MVXRpbC5nZXRTdGVyZW90eXBlQXBwbGljYXRpb24oZWx0LCBEZXBsb3ltZW50UGxhbi5jbGFzcyk7CisJCQkJaWYgKGRwICE9IG51bGwpIHsKKwkJCQkJZGVwX3BsYW5zLmFkZChkcCk7CisJCQkJfSBlbHNlIHsKKwkJCQkJZGVwX3BsYW5zLmFkZEFsbChnZXREZXBsb3ltZW50UGxhbnNJblBhY2thZ2UoKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhY2thZ2UpIGVsdCkpOworCQkJCX0KKwkJCX0KKwkJfQorCQlyZXR1cm4gZGVwX3BsYW5zOworCX0KKworCS8qKgorCSAqIFJldHJpZXZlcyB0aGUgZGVwbG95bWVudCBwbGFucyBkZWZpbmVkIGluIGEgZ2l2ZW4gcGFja2FnZS4KKwkgKgorCSAqIEBwYXJhbSBwY2sKKwkgKiBAcmV0dXJuCisJICovCisJc3RhdGljIHByb3RlY3RlZCBMaXN0PERlcGxveW1lbnRQbGFuPiBnZXREZXBsb3ltZW50UGxhbnNJblBhY2thZ2Uob3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZSBwY2spIHsKKwkJTGlzdDxEZXBsb3ltZW50UGxhbj4gZGVwX3BsYW5zID0gbmV3IExpbmtlZExpc3Q8RGVwbG95bWVudFBsYW4+KCk7CisJCWZvciAoRWxlbWVudCBlbHQgOiBwY2suZ2V0T3duZWRFbGVtZW50cygpKSB7CisJCQlpZiAoZWx0IGluc3RhbmNlb2Ygb3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZSkgeworCQkJCURlcGxveW1lbnRQbGFuIGRwID0gVU1MVXRpbC5nZXRTdGVyZW90eXBlQXBwbGljYXRpb24oZWx0LCBEZXBsb3ltZW50UGxhbi5jbGFzcyk7CisJCQkJaWYgKGRwICE9IG51bGwpIHsKKwkJCQkJZGVwX3BsYW5zLmFkZChkcCk7CisJCQkJfSBlbHNlIHsKKwkJCQkJZGVwX3BsYW5zLmFkZEFsbChnZXREZXBsb3ltZW50UGxhbnNJblBhY2thZ2UoKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhY2thZ2UpIGVsdCkpOworCQkJCX0KKwkJCX0KKwkJfQorCQlyZXR1cm4gZGVwX3BsYW5zOworCX0KKworCS8qKgorCSAqIFJldHJpZXZlcyB0aGUgUGFja2FnZXMgaW4gd2hpY2ggRGVwbG95bWVudCBwbGFucyBhcmUgZGVmaW5lZCBpbiB0aGUgbW9kZWwuCisJICoKKwkgKiBAcGFyYW0gbW9kZWwKKwkgKiBAcmV0dXJuCisJICovCisJc3RhdGljIHB1YmxpYyBMaXN0PG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhY2thZ2U+IGdldERlcGxveW1lbnRQbGFuUGFja2FnZXNJbk1vZGVsKE1vZGVsIG1vZGVsKSB7CisJCUxpc3Q8RGVwbG95bWVudFBsYW4+IGRwcyA9IGdldERlcGxveW1lbnRQbGFuc0luTW9kZWwobW9kZWwpOworCQlMaW5rZWRMaXN0PG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhY2thZ2U+IHBja3MgPSBuZXcgTGlua2VkTGlzdDxvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlPigpOworCQlmb3IgKERlcGxveW1lbnRQbGFuIGRwIDogZHBzKSB7CisJCQlwY2tzLmFkZChkcC5nZXRCYXNlX1BhY2thZ2UoKSk7CisJCX0KKwkJcmV0dXJuIHBja3M7CisJfQorCisJLyoqCisJICogUmV0cmlldmVzIHRoZSBJbnN0YW5jZVNwZWNmaWNpYXRpb25zIGFsbG9jYXRlZCB0byBhIGdpdmVuIFBsYXRmb3JtIHdpdGhpbiBhIGdpdmVuIERlcGxveW1lbnRQbGFuLgorCSAqCisJICogQHBhcmFtIGRlcGxveW1lbnRQbGFuCisJICogQHBhcmFtIHRhcmdldFBsYXRmb3JtTmFtZQorCSAqIEByZXR1cm4KKwkgKi8KKwlzdGF0aWMgcHVibGljIExpc3Q8SW5zdGFuY2VTcGVjaWZpY2F0aW9uPiBnZXREZXBsb3ltZW50UGxhbkluc3RhbmNlU3BlY3NGb3JQbGF0Zm9ybShvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlIGRlcGxveW1lbnRQbGFuLCBTdHJpbmcgdGFyZ2V0UGxhdGZvcm1OYW1lKSB7CisJCS8vIFRoZSBsaXN0IHRvIHJldHVybiBpbiB0aGUgZW5kLgorCQlMaXN0PEluc3RhbmNlU3BlY2lmaWNhdGlvbj4gZm91bmRfZWx0cyA9IG5ldyBMaW5rZWRMaXN0PEluc3RhbmNlU3BlY2lmaWNhdGlvbj4oKTsKKworCQkvLyBJcyB0aGUgZmlyc3QgYXJndW1lbnQgcmVhbGx5IGEgRGVwbG95bWVudCBwbGFuID8gKGEgUGFja2FnZSB3aXRoIGEgRGVwbG95bWVudFBsYW4gU3RlcmVvVHlwZSkKKwkJRGVwbG95bWVudFBsYW4gZHAgPSBvcmcuZWNsaXBzZS51bWwyLnVtbC51dGlsLlVNTFV0aWwuZ2V0U3RlcmVvdHlwZUFwcGxpY2F0aW9uKGRlcGxveW1lbnRQbGFuLCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGVwbG95bWVudFBsYW4uY2xhc3MpOworCQlpZiAoZHAgPT0gbnVsbCkgeworCQkJcmV0dXJuIGZvdW5kX2VsdHM7CisJCX0KKworCQkvLyBMZXQncyBnZXQgYWxsIHRoZSBBbGxvY2F0ZSBlbGVtZW50cyBpbiB0aGUgRGVwbG95bWVudFBsYW4sIGFuZCBjaGVjayBpZiB0aGUgc3VwcGxpZXIgKHRoZSB0YXJnZXQgcGxhdGZvcm0pIGNvcnJlc3BvbmRzIHRvIHRoZSBzZWNvbmQgYXJndW1lbnQuCisJCWZvciAoRWxlbWVudCBlbHQgOiBkZXBsb3ltZW50UGxhbi5nZXRPd25lZEVsZW1lbnRzKCkpIHsKKwkJCWlmIChlbHQgaW5zdGFuY2VvZiBEZXBlbmRlbmN5KSB7CisJCQkJLy8gSXMgaXQgYSBEZXBlbmRlbmN5IHdpdGggYW4gIkFsbG9jYXRlIiBzdGVyZW90eXBlID8KKwkJCQlEZXBlbmRlbmN5IGRlcCA9IChEZXBlbmRlbmN5KSBlbHQ7CisJCQkJQWxsb2NhdGUgYWxsb2MgPSBvcmcuZWNsaXBzZS51bWwyLnVtbC51dGlsLlVNTFV0aWwuZ2V0U3RlcmVvdHlwZUFwcGxpY2F0aW9uKGVsdCwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsbG9jYXRlLmNsYXNzKTsKKwkJCQlpZiAoYWxsb2MgPT0gbnVsbCkgeworCQkJCQljb250aW51ZTsKKwkJCQl9CisKKwkJCQkvLyBMZXQncyBzdG9yZSB0aGUgcG90ZW50aWFsIGNsaWVudCAodGhlIGNvbXBvbmVudCBpbnN0YW5jZSkgb2YgdGhlIEFsbG9jYXRlLgorCQkJCS8vIGZvciBmdXR1cmUgYWRkaXRpb24gdG8gdGhlIGxpc3QgdG8gcmV0dXJuLgorCQkJCUluc3RhbmNlU3BlY2lmaWNhdGlvbiBjbGllbnRfaW5zdGFuY2Vfc3BlYyA9IG51bGw7CisJCQkJZm9yIChOYW1lZEVsZW1lbnQgY2xpZW50X2VsdCA6IGRlcC5nZXRDbGllbnRzKCkpIHsKKwkJCQkJaWYgKGZhbHNlID09IChjbGllbnRfZWx0IGluc3RhbmNlb2YgSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSkgeworCQkJCQkJY29udGludWU7CisJCQkJCX0KKwkJCQkJY2xpZW50X2luc3RhbmNlX3NwZWMgPSAoSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSBjbGllbnRfZWx0OworCQkJCQlicmVhazsKKwkJCQl9CisJCQkJaWYgKGNsaWVudF9pbnN0YW5jZV9zcGVjID09IG51bGwpIHsKKwkJCQkJY29udGludWU7CisJCQkJfQorCisJCQkJLy8gSXMgaXQgYWxsb2NhdGVkIHRvIHRoZSBwbGF0Zm9ybSBwcm92aWRlZCBhcyBhcmd1bWVudCA/CisJCQkJZm9yIChOYW1lZEVsZW1lbnQgbmVsdCA6IGRlcC5nZXRTdXBwbGllcnMoKSkgeworCQkJCQlpZiAoaXNQbGF0Zm9ybUluc3RhbmNlU3BlY2lmaWNhdGlvbkZyb21QbGF0Zm9ybShuZWx0LCB0YXJnZXRQbGF0Zm9ybU5hbWUpKSB7CisJCQkJCQlmb3VuZF9lbHRzLmFkZChjbGllbnRfaW5zdGFuY2Vfc3BlYyk7CisJCQkJCX0KKwkJCQl9CisJCQl9CisJCX0KKwkJcmV0dXJuIGZvdW5kX2VsdHM7CisJfQorCisJLyoqCisJICogRnVuY3Rpb24gdG8ga25vdyB0aGUgY29udGVudCBvZiBhbGxvY2F0aW9uIHN0cmluZy4KKwkgKgorCSAqIEBwYXJhbSBpbnN0YW5jZVNwZWNpZmljYXRpb24KKwkgKiBAcmV0dXJuIHRoZSBhbGxvY2F0aW9uIHN0cmluZworCSAqLworCXN0YXRpYyBwdWJsaWMgU3RyaW5nIGdldEFsbG9jYXRpb25OYW1lKEluc3RhbmNlU3BlY2lmaWNhdGlvbiBpbnN0YW5jZVNwZWNpZmljYXRpb24pIHsKKwkJaWYgKGluc3RhbmNlU3BlY2lmaWNhdGlvbi5nZXRDbGllbnREZXBlbmRlbmNpZXMoKS5zaXplKCkgPT0gMCkgeworCQkJcmV0dXJuIG5ldyBTdHJpbmcoKTsKKwkJfQorCisJCS8vIGlsIG4neSBhIHRvdWpvdXJzIHF1J3VuIGVsZW1lbnQKKwkJRGVwZW5kZW5jeSBkID0gaW5zdGFuY2VTcGVjaWZpY2F0aW9uLmdldENsaWVudERlcGVuZGVuY2llcygpLmdldCgwKTsKKworCQlyZXR1cm4gZC5nZXROYW1lKCk7CisJfQorCisJLyoqCisJICogRnVuY3Rpb24gdG8ga25vdyB3aGljaCBjbGFzcyBtdXN0IGJlIGdlbmVyYXRlZCBieSB0aGUgcGxhdGZvcm0gb3Igbm90LgorCSAqCisJICogQHBhcmFtIG1vZGVsCisJICogQHBhcmFtIHBsYXRmb3JtTmFtZQorCSAqIEByZXR1cm4gYWxsIGNsYXNzZXMgdGhhdCBhcmUgaW5zdGFuY2lhdGVkIGZvciB0aGUgcGxhdGZvcm0gInBmbiIKKwkgKi8KKwlzdGF0aWMgcHVibGljIExpc3Q8b3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3M+IGdldERlZmluZWRDb21wb25lbnRzRm9yUGxhdGZvcm0oTW9kZWwgbW9kZWwsIFN0cmluZyBwbGF0Zm9ybU5hbWUpIHsKKwkJLy8gU3lzdGVtLm91dC5wcmludGxuKCJnZXREZWZpbmVkQ29tcG9uZW50c0ZvclBsYXRmb3JtIik7CisJCUxpbmtlZExpc3Q8b3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3M+IGZvdW5kX2NsYXNzZXMgPSBuZXcgTGlua2VkTGlzdDxvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcz4oKTsKKworCQlMaXN0PEluc3RhbmNlU3BlY2lmaWNhdGlvbj4gaW5zdGFuY2VzID0gZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9uc0ZvclBsYXRmb3JtKG1vZGVsLCBwbGF0Zm9ybU5hbWUpOworCQlmb3IgKEluc3RhbmNlU3BlY2lmaWNhdGlvbiBpbnN0YW5jZVNwZWNpZmljYXRpb24gOiBpbnN0YW5jZXMpIHsKKwkJCS8vIFN5c3RlbS5vdXQucHJpbnRsbigiaW5zdGFuY2UgOiAiICsgaW5zdGFuY2VTcGVjaWZpY2F0aW9uLmdldE5hbWUoKSk7CisKKwkJCWZvciAob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3NpZmllciBjbGFzc2lmaWVyIDogaW5zdGFuY2VTcGVjaWZpY2F0aW9uLmdldENsYXNzaWZpZXJzKCkpIHsKKwkJCQlmb3VuZF9jbGFzc2VzLmFkZChHZW5lcmFsUXVlcmllcy5maW5kQ2xhc3NJbk1vZGVsKG1vZGVsLCBjbGFzc2lmaWVyLmdldE5hbWUoKSkpOworCisJCQkJLy8gb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgdGhlQ2xhc3MgPSBHZW5lcmFsUXVlcmllcy5maW5kQ2xhc3NJbk1vZGVsKG1vZGVsLCBjbGFzc2lmaWVyLmdldE5hbWUoKSk7CisJCQkJLy8gU3lzdGVtLm91dC5wcmludGxuKCJcdGNsYXNzIDogIiArIHRoZUNsYXNzLmdldE5hbWUoKSk7CisJCQl9CisJCX0KKwkJcmV0dXJuIGZvdW5kX2NsYXNzZXM7CisJfQorCisJLyoqCisJICogRnVuY3Rpb24gdG8ga25vdyB3aGljaCBjbGFzcyBtdXN0IGJlIGdlbmVyYXRlZCBieSB0aGUgcGxhdGZvcm0gb3Igbm90LiBTaG91bGQgYmUgZXF1aXZhbGVudCB0byBnZXREZWZpbmVkQ29tcG9uZW50c0ZvclBsYXRmb3JtIGJ1dCB3aXRoIGEKKwkgKiBkaWZmZXJlbnQgaW1wbGVtZW50YXRpb24uCisJICoKKwkgKiBAcGFyYW0gbW9kZWwKKwkgKiBAcGFyYW0gcGxhdGZvcm1OYW1lCisJICogQHJldHVybiBhbGwgY2xhc3NlcyB0aGF0IGFyZSBpbnN0YW5jaWF0ZWQgZm9yIHRoZSBwbGF0Zm9ybSAicGZuIgorCSAqLworCXN0YXRpYyBwdWJsaWMgTGlzdDxvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcz4gZ2V0RGVmaW5lZENvbXBvbmVudHNGb3JQbGF0Zm9ybTIoTW9kZWwgbW9kZWwsIFN0cmluZyBwbGF0Zm9ybU5hbWUpIC8vIFBsYXRmb3JtIHBsYXRmb3JtKQorCXsKKwkJTGlua2VkTGlzdDxvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcz4gZm91bmRfY2xhc3NlcyA9IG5ldyBMaW5rZWRMaXN0PG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzPigpOworCQlMaXN0PEluc3RhbmNlU3BlY2lmaWNhdGlvbj4gaW5zdF9zcGVjcyA9IGdldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNGb3JQbGF0Zm9ybTIobW9kZWwsIHBsYXRmb3JtTmFtZSk7CisJCWZvciAoSW5zdGFuY2VTcGVjaWZpY2F0aW9uIGluc3Rfc3BlYyA6IGluc3Rfc3BlY3MpIHsKKwkJCWZvciAob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3NpZmllciBjbGFzc2lmaWVyIDogaW5zdF9zcGVjLmdldENsYXNzaWZpZXJzKCkpIHsKKwkJCQlmb3VuZF9jbGFzc2VzLmFkZChHZW5lcmFsUXVlcmllcy5maW5kQ2xhc3NJbk1vZGVsKG1vZGVsLCBjbGFzc2lmaWVyLmdldE5hbWUoKSkpOworCQkJfQorCQl9CisKKwkJLy8gcmVtb3ZlIGR1cGxpY2F0ZXMKKwkJU2V0PG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzPiBuZXdfc2V0ID0gbmV3IEhhc2hTZXQ8b3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3M+KGZvdW5kX2NsYXNzZXMpOworCQlMaXN0PG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzPiBmb3VuZF9jbGFzc2VzXzIgPSBuZXcgTGlua2VkTGlzdDxvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcz4obmV3X3NldCk7CisKKwkJcmV0dXJuIGZvdW5kX2NsYXNzZXNfMjsKKwl9CisKKwkvKioKKwkgKiBDaGVja3Mgd2hldGhlciBvciBub3QgYSBQbGF0Zm9ybSBpbnN0YW5jZSBzcGVjaWZpY2F0aW9uIGhhcyBhIGdpdmVuIHBsYXRmb3JtIHR5cGUuCisJICoKKwkgKiBAcGFyYW0gcGxhdGZvcm1JbnN0YW5jZVNwZWNpZmljYXRpb24KKwkgKiBAcGFyYW0gZXhwZWN0ZWRQbGF0Zm9ybU5hbWUKKwkgKiBAcmV0dXJuCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBib29sZWFuIGlzUGxhdGZvcm1JbnN0YW5jZVNwZWNpZmljYXRpb25Gcm9tUGxhdGZvcm0oTmFtZWRFbGVtZW50IHBsYXRmb3JtSW5zdGFuY2VTcGVjaWZpY2F0aW9uLCBTdHJpbmcgZXhwZWN0ZWRQbGF0Zm9ybU5hbWUpIC8vIFBsYXRmb3JtIGV4cGVjdGVkUGxhdGZvcm0pCisJeworCQlpZiAocGxhdGZvcm1JbnN0YW5jZVNwZWNpZmljYXRpb24gaW5zdGFuY2VvZiBJbnN0YW5jZVNwZWNpZmljYXRpb24pIHsKKwkJCUluc3RhbmNlU3BlY2lmaWNhdGlvbiBwbGF0Zm9ybUluc3RhbmNlID0gKEluc3RhbmNlU3BlY2lmaWNhdGlvbikgcGxhdGZvcm1JbnN0YW5jZVNwZWNpZmljYXRpb247CisJCQlmb3IgKENsYXNzaWZpZXIgY2xhc3NpZmllciA6IHBsYXRmb3JtSW5zdGFuY2UuZ2V0Q2xhc3NpZmllcnMoKSkgeworCQkJCWlmIChjbGFzc2lmaWVyLmdldE5hbWUoKS50b0xvd2VyQ2FzZSgpLmNvbXBhcmVUbyhleHBlY3RlZFBsYXRmb3JtTmFtZSkgPT0gMCkgeworCQkJCQlyZXR1cm4gdHJ1ZTsKKwkJCQkJLyoKKwkJCQkJICogUm9ib3RpY01pZGRsZXdhcmUgbWR3ID0gVU1MVXRpbC5nZXRTdGVyZW90eXBlQXBwbGljYXRpb24oY2xhc3NpZmllciwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNNaWRkbGV3YXJlLmNsYXNzKTsKKwkJCQkJICogUm9ib3RpY1NpbXVsYXRvciBzaW0gPSBVTUxVdGlsLmdldFN0ZXJlb3R5cGVBcHBsaWNhdGlvbihjbGFzc2lmaWVyLCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY1NpbXVsYXRvci5jbGFzcyk7CisJCQkJCSAqIGlmIChtZHcgIT0gbnVsbCkgeworCQkJCQkgKiAvL1RoZSB0YXJnZXQgcGxhdGZvcm0gc2VlbXMgdG8gYmUgYSBtaWRkbGV3YXJlLgorCQkJCQkgKiAvL01pZGRsZXdhcmVzIGFyZSBpZGVudGlmaWVkIGJ5IHRoZWlyICJraW5kIi4KKwkJCQkJICogaWYgKGV4cGVjdGVkUGxhdGZvcm0gaW5zdGFuY2VvZiBSb2JvdGljTWlkZGxld2FyZSkgeworCQkJCQkgKiBpZiAobWR3LmdldEtpbmQoKSA9PSAoKFJvYm90aWNNaWRkbGV3YXJlKWV4cGVjdGVkUGxhdGZvcm0pLmdldEtpbmQoKSkgeworCQkJCQkgKiAvL1lFRUVFSEFBQUEgISEhCisJCQkJCSAqIHJldHVybiB0cnVlOworCQkJCQkgKiB9CisJCQkJCSAqIH0KKwkJCQkJICogfQorCQkJCQkgKiBpZiAoc2ltICE9IG51bGwgJiYgZXhwZWN0ZWRQbGF0Zm9ybSBpbnN0YW5jZW9mIFJvYm90aWNTaW11bGF0b3IpIHsKKwkJCQkJICogLy9UaGUgdGFyZ2V0IHBsYXRmb3JtIHNlZW1zIHRvIGJlIGEgc2ltdWxhdG9yLgorCQkJCQkgKiAvL1NpbXVsYXRvcnMgYXJlIGp1c3QgZGVyaXZlZCBjbGFzc2VzLgorCQkJCQkgKiBpZiAoc2ltLmdldENsYXNzKCkuZ2V0TmFtZSgpLmNvbXBhcmVUbygoKFJvYm90aWNTaW11bGF0b3IpZXhwZWN0ZWRQbGF0Zm9ybSkuZ2V0Q2xhc3MoKS5nZXROYW1lKCkpID09IDApIHsKKwkJCQkJICogLy9ZRUVFRUVIQUFBQUFBICEhIQorCQkJCQkgKiByZXR1cm4gdHJ1ZTsKKwkJCQkJICogfQorCQkJCQkgKiB9CisJCQkJCSAqLworCQkJCX0KKwkJCX0KKwkJfQorCQlyZXR1cm4gZmFsc2U7CisJfQorfQpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvRGVwbG95bWVudFF1ZXJpZXMubXRsIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvRGVwbG95bWVudFF1ZXJpZXMubXRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJiYzc4OWQKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9EZXBsb3ltZW50UXVlcmllcy5tdGwKQEAgLTAsMCArMSw1OSBAQAorW2NvbW1lbnQgZW5jb2RpbmcgPSBVVEYtOCAvXQorW2NvbW1lbnRdCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBQUk9URVVTIFByb2plY3QgY29uc29ydGl1bS4KKyAqCisgKiAgICAKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogU2ViYXN0aWVuIEJPTk5FVCAoRUZGSURFTkNFKSAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbiAKKyAqICBOaWNvbGFzIERVIExBQyAoSU5URU1QT1JBKSAtIEFkZGl0aW9uYWwgbWV0aG9kcy4gCisgKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworWy9jb21tZW50XQorW21vZHVsZSBEZXBsb3ltZW50UXVlcmllcygnaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCcsICdodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEnKV0KKworW2NvbW1lbnRdIAorVGhlc2UgZnVuY3Rpb25zIGFyZSBpbXBsZW1lbnRlZCBpbiBmaWxlIERlcGxveW1lbnRRdWVyaWVzLmphdmEuCitbL2NvbW1lbnRdCitbcXVlcnkgcHVibGljIGdldEluc3RhbmNlU3BlY2lmaWNhdGlvbnMoZWx0IDogTW9kZWwpIDogU2VxdWVuY2UoSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSA9CisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkRlcGxveW1lbnRRdWVyaWVzJywgJ2dldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNJbk1vZGVsKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsKScsIFNlcXVlbmNle2VsdH0pCisvXQorW3F1ZXJ5IHB1YmxpYyBnZXRJbnN0YW5jZVNwZWNpZmljYXRpb25zRm9yUGxhdGZvcm0oZWx0IDogTW9kZWwsIHBmbjogU3RyaW5nKSA6IFNlcXVlbmNlKEluc3RhbmNlU3BlY2lmaWNhdGlvbikgPSAKKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuRGVwbG95bWVudFF1ZXJpZXMnLCAnZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9uc0ZvclBsYXRmb3JtKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsLCBqYXZhLmxhbmcuU3RyaW5nKScsIFNlcXVlbmNle2VsdCwgcGZufSkKKy9dCitbcXVlcnkgcHVibGljIGdldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNGb3JQbGF0Zm9ybTIobW9kZWwgOiBNb2RlbCwgcGZtTmFtZSA6IFN0cmluZykgOiBTZXF1ZW5jZShJbnN0YW5jZVNwZWNpZmljYXRpb24pCisJPSBpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuRGVwbG95bWVudFF1ZXJpZXMnLCAnZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9uc0ZvclBsYXRmb3JtMihvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCwgamF2YS5sYW5nLlN0cmluZyknLCBTZXF1ZW5jZXttb2RlbCwgcGZtTmFtZX0pIAorL10KK1txdWVyeSBwdWJsaWMgZ2V0UGFyZW50TmFtZShpbnN0IDogSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSA6IFN0cmluZyA9CisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkRlcGxveW1lbnRRdWVyaWVzJywgJ2dldFBhcmVudE5hbWUob3JnLmVjbGlwc2UudW1sMi51bWwuSW5zdGFuY2VTcGVjaWZpY2F0aW9uKScsIFNlcXVlbmNle2luc3R9KQorL10KK1txdWVyeSBwdWJsaWMgZ2V0SW5zdGFuY2UoZWx0IDogTW9kZWwsIGluc3QgOiBJbnN0YW5jZVNwZWNpZmljYXRpb24pIDogUHJvcGVydHkgPQorCWludm9rZSgnb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5EZXBsb3ltZW50UXVlcmllcycsICdnZXRJbnN0YW5jZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCxvcmcuZWNsaXBzZS51bWwyLnVtbC5JbnN0YW5jZVNwZWNpZmljYXRpb24pJywgU2VxdWVuY2V7ZWx0LCBpbnN0fSkKKy9dCitbcXVlcnkgcHVibGljIGlzQWxsb2NhdGVkVG8oaW5zdCA6IEluc3RhbmNlU3BlY2lmaWNhdGlvbiwgcGZuOiBTdHJpbmcpIDogQm9vbGVhbiA9CisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkRlcGxveW1lbnRRdWVyaWVzJywgJ2lzQWxsb2NhdGVkVG8ob3JnLmVjbGlwc2UudW1sMi51bWwuSW5zdGFuY2VTcGVjaWZpY2F0aW9uLGphdmEubGFuZy5TdHJpbmcpJywgU2VxdWVuY2V7aW5zdCwgcGZufSkKKy9dCitbcXVlcnkgcHVibGljIGdldEFsbG9jYXRpb25OYW1lKGluc3QgOiBJbnN0YW5jZVNwZWNpZmljYXRpb24pIDogU3RyaW5nID0KKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuRGVwbG95bWVudFF1ZXJpZXMnLCAnZ2V0QWxsb2NhdGlvbk5hbWUob3JnLmVjbGlwc2UudW1sMi51bWwuSW5zdGFuY2VTcGVjaWZpY2F0aW9uKScsIFNlcXVlbmNle2luc3R9KQorL10KK1txdWVyeSBwdWJsaWMgZ2V0RGVmaW5lZENvbXBvbmVudHNGb3JQbGF0Zm9ybShlbHQgOiBNb2RlbCwgcGZuOiBTdHJpbmcpIDogU2VxdWVuY2UoQ2xhc3MpID0gCisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkRlcGxveW1lbnRRdWVyaWVzJywgJ2dldERlZmluZWRDb21wb25lbnRzRm9yUGxhdGZvcm0ob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwsIGphdmEubGFuZy5TdHJpbmcpJywgU2VxdWVuY2V7ZWx0LCBwZm59KQorL10KK1txdWVyeSBwdWJsaWMgZ2V0RGVmaW5lZENvbXBvbmVudHNGb3JQbGF0Zm9ybTIobW9kZWwgOiBNb2RlbCwgcGZtTmFtZSA6IFN0cmluZykgOiBTZXF1ZW5jZShDbGFzcykKKwk9IGludm9rZSgnb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5EZXBsb3ltZW50UXVlcmllcycsICdnZXREZWZpbmVkQ29tcG9uZW50c0ZvclBsYXRmb3JtMihvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCwgamF2YS5sYW5nLlN0cmluZyknLCBTZXF1ZW5jZXttb2RlbCwgcGZtTmFtZX0pIAorL10KK1txdWVyeSBwdWJsaWMgZ2V0RGVwbG95bWVudFBsYW5zSW5Nb2RlbChtb2RlbCA6IE1vZGVsKSA6IFNlcXVlbmNlKERlcGxveW1lbnRQbGFuKQorCT0gaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkRlcGxveW1lbnRRdWVyaWVzJywgJ2dldERlcGxveW1lbnRQbGFuc0luTW9kZWwob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwpJywgU2VxdWVuY2V7bW9kZWx9KSAKKy9dCitbcXVlcnkgcHVibGljIGdldERlcGxveW1lbnRQbGFuUGFja2FnZXNJbk1vZGVsKG1vZGVsIDogTW9kZWwpIDogU2VxdWVuY2UoUGFja2FnZSkKKwk9IGludm9rZSgnb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5EZXBsb3ltZW50UXVlcmllcycsICdnZXREZXBsb3ltZW50UGxhblBhY2thZ2VzSW5Nb2RlbChvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCknLCBTZXF1ZW5jZXttb2RlbH0pIAorL10KK1txdWVyeSBwdWJsaWMgZ2V0RGVwbG95bWVudFBsYW5JbnN0YW5jZVNwZWNzRm9yUGxhdGZvcm0oZGVwbG95bWVudFBsYW4gOiBQYWNrYWdlLCBwZm1OYW1lIDogU3RyaW5nKSA6IFNlcXVlbmNlKEluc3RhbmNlU3BlY2lmaWNhdGlvbikKKwk9IGludm9rZSgnb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5EZXBsb3ltZW50UXVlcmllcycsICdnZXREZXBsb3ltZW50UGxhbkluc3RhbmNlU3BlY3NGb3JQbGF0Zm9ybShvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlLCBqYXZhLmxhbmcuU3RyaW5nKScsIFNlcXVlbmNle2RlcGxveW1lbnRQbGFuLCBwZm1OYW1lfSkgCisvXQorCmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9GU01RdWVyaWVzLmVtdGwgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9GU01RdWVyaWVzLmVtdGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTYyMjExOAotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0ZTTVF1ZXJpZXMuZW10bApAQCAtMCwwICsxLDQ0MCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzx4bWk6WE1JIHhtaTp2ZXJzaW9uPSIyLjAiIHhtbG5zOnhtaT0iaHR0cDovL3d3dy5vbWcub3JnL1hNSSIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgeG1sbnM6ZWNvcmU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUiIHhtbG5zOm10bD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9hY2NlbGVvL210bC8zLjAiIHhtbG5zOm9jbC5lY29yZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvRWNvcmUiPgorICA8bXRsOk1vZHVsZSBuYW1lPSJGU01RdWVyaWVzIiBuc1VSST0ib3JnOjplY2xpcHNlOjpwYXB5cnVzOjpyb2JvdG1sOjpnZW5lcmF0b3JzOjpjb21tb246Om1tcXVlcmllczo6RlNNUXVlcmllcyIgc3RhcnRIZWFkZXJQb3NpdGlvbj0iNjIyIiBlbmRIZWFkZXJQb3NpdGlvbj0iOTYyIj4KKyAgICA8aW5wdXQ+CisgICAgICA8dGFrZXNUeXBlc0Zyb20gaHJlZj0iaHR0cDovL1BhcHlydXMvUm9ib3RNTC8xIy8iLz4KKyAgICA8L2lucHV0PgorICAgIDxpbnB1dD4KKyAgICAgIDx0YWtlc1R5cGVzRnJvbSBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8iLz4KKyAgICA8L2lucHV0PgorICAgIDxpbnB1dD4KKyAgICAgIDx0YWtlc1R5cGVzRnJvbSBocmVmPSJodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEjLyIvPgorICAgIDwvaW5wdXQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJnZXRTdGF0ZU1hY2hpbmVzIiB2aXNpYmlsaXR5PSJQdWJsaWMiIHR5cGU9Ii8zL1NlcXVlbmNlKFN0YXRlTWFjaGluZSkiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJlbHQiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvNSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuRlNNUXVlcmllcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImdldFN0YXRlTWFjaGluZXMob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCkiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShFbGVtZW50KSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJlbHQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldFN0YXRlTWFjaGluZXMvZWx0Ij4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0U3RhdGVzIiB2aXNpYmlsaXR5PSJQdWJsaWMiIHR5cGU9Ii8zL1NlcXVlbmNlKFZlcnRleCkiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJzbSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vU3RhdGVNYWNoaW5lIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzgiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vU3RhdGVNYWNoaW5lIi8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuRlNNUXVlcmllcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImdldFN0YXRlcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5TdGF0ZU1hY2hpbmUpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoU3RhdGVNYWNoaW5lKSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9TdGF0ZU1hY2hpbmUiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNtIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRTdGF0ZXMvc20iPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1N0YXRlTWFjaGluZSIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgIDwvZXhwcmVzc2lvbj4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6UXVlcnkiIG5hbWU9ImdldFRyYW5zaXRpb25zIiB2aXNpYmlsaXR5PSJQdWJsaWMiIHR5cGU9Ii8zL1NlcXVlbmNlKFRyYW5zaXRpb24pIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0ic20iPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1N0YXRlTWFjaGluZSIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii8xMSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9TdGF0ZU1hY2hpbmUiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5GU01RdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0VHJhbnNpdGlvbnMob3JnLmVjbGlwc2UudW1sMi51bWwuU3RhdGVNYWNoaW5lKSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKFN0YXRlTWFjaGluZSkiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vU3RhdGVNYWNoaW5lIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzbSIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0VHJhbnNpdGlvbnMvc20iPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1N0YXRlTWFjaGluZSIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgIDwvZXhwcmVzc2lvbj4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6UXVlcnkiIG5hbWU9ImdlbmVyYXRlT3BlcmF0aW9uU3RhdGVTdHJpbmciIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9InZlcnRleCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVmVydGV4Ii8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzE0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1ZlcnRleCIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkZTTVF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJnZW5lcmF0ZU9wZXJhdGlvblN0YXRlU3RyaW5nKG9yZy5lY2xpcHNlLnVtbDIudW1sLlZlcnRleCkiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShWZXJ0ZXgpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1ZlcnRleCIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0idmVydGV4IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZU9wZXJhdGlvblN0YXRlU3RyaW5nL3ZlcnRleCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVmVydGV4Ii8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgICAgPHR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgIDwvbXRsOk1vZHVsZT4KKyAgPGVjb3JlOkVQYWNrYWdlIG5hbWU9ImFkZGl0aW9ucyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTdHJpbmdfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSW50ZWdlcl9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUmVhbF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1JlYWwiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRU9iamVjdF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldFN0YXRlTWFjaGluZXMiIGVUeXBlPSIvMy9TZXF1ZW5jZShTdGF0ZU1hY2hpbmUpIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZ2V0U3RhdGVNYWNoaW5lcyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZWx0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0U3RhdGVzIiBlVHlwZT0iLzMvU2VxdWVuY2UoVmVydGV4KSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dldFN0YXRlcyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ic20iPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vU3RhdGVNYWNoaW5lIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldFRyYW5zaXRpb25zIiBlVHlwZT0iLzMvU2VxdWVuY2UoVHJhbnNpdGlvbikiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZXRUcmFuc2l0aW9ucyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ic20iPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vU3RhdGVNYWNoaW5lIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdlbmVyYXRlT3BlcmF0aW9uU3RhdGVTdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZU9wZXJhdGlvblN0YXRlU3RyaW5nIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InZlcnRleCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9WZXJ0ZXgiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPY2xBbnlfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9Imludm9rZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwgbm9uLXN0YW5kYXJkIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNsYXNzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJtZXRob2QiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImFyZ3VtZW50cyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6U2VxdWVuY2VUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2FjY2VsZW8vbXRsLzMuMC9tdGxub25zdGRsaWIuZWNvcmUjLy9TZXF1ZW5jZShPY2xBbnkpIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ29sbGVjdGlvbihUKV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0NvbGxlY3Rpb24oVCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU2VxdWVuY2UoVClfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TZXF1ZW5jZShUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPcmRlcmVkU2V0KFQpX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT3JkZXJlZFNldChUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFbGVtZW50X0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTdGF0ZU1hY2hpbmVfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9TdGF0ZU1hY2hpbmUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iVmVydGV4X0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVmVydGV4Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgPC9lY29yZTpFUGFja2FnZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxlY29yZTpFUGFja2FnZSBuYW1lPSJjb2xsZWN0aW9ucyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgbmFtZT0iU2VxdWVuY2UoU3RhdGVNYWNoaW5lKSIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEudXRpbC5MaXN0Ij4KKyAgICAgIDxlbGVtZW50VHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vU3RhdGVNYWNoaW5lIi8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgbmFtZT0iU2VxdWVuY2UoVmVydGV4KSIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEudXRpbC5MaXN0Ij4KKyAgICAgIDxlbGVtZW50VHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVmVydGV4Ii8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgbmFtZT0iU2VxdWVuY2UoVHJhbnNpdGlvbikiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuTGlzdCI+CisgICAgICA8ZWxlbWVudFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL1BhcHlydXMvUm9ib3RNTC8xIy8vVHJhbnNpdGlvbiIvPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIG5hbWU9IlNlcXVlbmNlKEVsZW1lbnQpIiBpbnN0YW5jZUNsYXNzTmFtZT0iamF2YS51dGlsLkxpc3QiPgorICAgICAgPGVsZW1lbnRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEudXRpbC5MaXN0Ij4KKyAgICAgIDxlbGVtZW50VHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgPC9lY29yZTpFUGFja2FnZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1N0YXRlTWFjaGluZSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1N0YXRlTWFjaGluZSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9TdGF0ZU1hY2hpbmUiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9TdGF0ZU1hY2hpbmUiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVmVydGV4Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVmVydGV4Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPGVjb3JlOkVBbm5vdGF0aW9uIHNvdXJjZT0icG9zaXRpb25zIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjAiIHJlZmVyZW5jZXM9Ii8wL2dldFN0YXRlTWFjaGluZXMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5NjQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xIiByZWZlcmVuY2VzPSIvMC9nZXRTdGF0ZU1hY2hpbmVzL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzc1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijc4OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIiIHJlZmVyZW5jZXM9Ii8wL2dldFN0YXRlTWFjaGluZXMvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODE5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk2MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMyIgcmVmZXJlbmNlcz0iLzAvZ2V0U3RhdGVNYWNoaW5lcy8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40IiByZWZlcmVuY2VzPSIvMC9nZXRTdGF0ZU1hY2hpbmVzLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODI2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNSIgcmVmZXJlbmNlcz0iLzAvZ2V0U3RhdGVNYWNoaW5lcy8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNiIgcmVmZXJlbmNlcz0iLzAvZ2V0U3RhdGVNYWNoaW5lcy8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk1OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNyIgcmVmZXJlbmNlcz0iLzAvZ2V0U3RhdGVNYWNoaW5lcy8lLyUuMi8lL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTU1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk1OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOCIgcmVmZXJlbmNlcz0iLzAvZ2V0U3RhdGVzIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5NjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE3NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjkiIHJlZmVyZW5jZXM9Ii8wL2dldFN0YXRlcy9zbSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTkwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwMDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMCIgcmVmZXJlbmNlcz0iLzAvZ2V0U3RhdGVzLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwMzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE3MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTEiIHJlZmVyZW5jZXM9Ii8wL2dldFN0YXRlcy8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMiIgcmVmZXJlbmNlcz0iLzAvZ2V0U3RhdGVzLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTAzOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTA3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMyIgcmVmZXJlbmNlcz0iLzAvZ2V0U3RhdGVzLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTA5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExNTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0IiByZWZlcmVuY2VzPSIvMC9nZXRTdGF0ZXMvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE2OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTUiIHJlZmVyZW5jZXM9Ii8wL2dldFN0YXRlcy8lLyUuMi8lL3NtIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTY2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExNjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2IiByZWZlcmVuY2VzPSIvMC9nZXRUcmFuc2l0aW9ucyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE3NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMzk4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTciIHJlZmVyZW5jZXM9Ii8wL2dldFRyYW5zaXRpb25zL3NtIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjA1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEyMjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xOCIgcmVmZXJlbmNlcz0iLzAvZ2V0VHJhbnNpdGlvbnMvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTI1MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMzk0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xOSIgcmVmZXJlbmNlcz0iLzAvZ2V0VHJhbnNpdGlvbnMvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjAiIHJlZmVyZW5jZXM9Ii8wL2dldFRyYW5zaXRpb25zLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTI1OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMzI2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMSIgcmVmZXJlbmNlcz0iLzAvZ2V0VHJhbnNpdGlvbnMvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEzMjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTM3OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjIiIHJlZmVyZW5jZXM9Ii8wL2dldFRyYW5zaXRpb25zLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMzgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEzOTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIzIiByZWZlcmVuY2VzPSIvMC9nZXRUcmFuc2l0aW9ucy8lLyUuMi8lL3NtIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMzkwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEzOTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZU9wZXJhdGlvblN0YXRlU3RyaW5nIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNDAwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE2MzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjMwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVPcGVyYXRpb25TdGF0ZVN0cmluZy92ZXJ0ZXgiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0NDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQ1OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZU9wZXJhdGlvblN0YXRlU3RyaW5nLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0NzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTYyOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlT3BlcmF0aW9uU3RhdGVTdHJpbmcvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlT3BlcmF0aW9uU3RhdGVTdHJpbmcvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNDgwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE1NDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZU9wZXJhdGlvblN0YXRlU3RyaW5nLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNTUwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE2MDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZU9wZXJhdGlvblN0YXRlU3RyaW5nLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNjExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE2MjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZU9wZXJhdGlvblN0YXRlU3RyaW5nLyUvJS4yLyUvdmVydGV4Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNjIwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE2MjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lY29yZTpFQW5ub3RhdGlvbj4KKzwveG1pOlhNST4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0ZTTVF1ZXJpZXMuamF2YSBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0ZTTVF1ZXJpZXMuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZmQ4OTJjCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvRlNNUXVlcmllcy5qYXZhCkBAIC0wLDAgKzEsMTA0IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBQUk9URVVTIFByb2plY3QgY29uc29ydGl1bS4KKyAqCisgKgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgU2ViYXN0aWVuIEJPTk5FVCAoRUZGSURFTkNFKSAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzOworCitpbXBvcnQgamF2YS51dGlsLkxpbmtlZExpc3Q7CitpbXBvcnQgamF2YS51dGlsLkxpc3Q7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlN0YXRlTWFjaGluZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC51dGlsLlVNTFV0aWw7CisKK3B1YmxpYyBjbGFzcyBGU01RdWVyaWVzIHsKKworCS8qKgorCSAqIEZpbmQgYWxsIHN0YXRlcyBpbiBhIHN0YXRlIG1hY2hpbmUuCisJICoKKwkgKiBAcGFyYW0gc20KKwkgKiAgICAgICAgICAgIGEgc3RhdGUgbWFjaGluZQorCSAqIEByZXR1cm4gYSBsaXN0IG9mIHN0YXRlcworCSAqIEB0b2RvIGEgdmFsaWRlciBwYXIgTmljb2xhcworCSAqLworCXB1YmxpYyBMaXN0PG9yZy5lY2xpcHNlLnVtbDIudW1sLlZlcnRleD4gZ2V0U3RhdGVzKFN0YXRlTWFjaGluZSBzbSkgeworCQlMaW5rZWRMaXN0PG9yZy5lY2xpcHNlLnVtbDIudW1sLlZlcnRleD4gcmVzID0gbmV3IExpbmtlZExpc3Q8b3JnLmVjbGlwc2UudW1sMi51bWwuVmVydGV4PigpOworCQlmb3IgKG9yZy5lY2xpcHNlLnVtbDIudW1sLlJlZ2lvbiByZWdpb24gOiBzbS5nZXRSZWdpb25zKCkpIHsKKwkJCWZvciAob3JnLmVjbGlwc2UudW1sMi51bWwuVmVydGV4IHZlcnRleCA6IHJlZ2lvbi5nZXRTdWJ2ZXJ0aWNlcygpKSB7CisJCQkJcmVzLmFkZCh2ZXJ0ZXgpOworCQkJfQorCQl9CisKKwkJcmV0dXJuIHJlczsKKwl9CisKKwkvKioKKwkgKiBGaW5kIGFsbCB0cmFuc2l0aW9ucyBpbiBhIHN0YXRlIG1hY2hpbmUuCisJICoKKwkgKiBAcGFyYW0gc20KKwkgKiAgICAgICAgICAgIGEgc3RhdGUgbWFjaGluZQorCSAqIEByZXR1cm4gYSBsaXN0IG9mIHRyYW5zaXRpb25zCisJICogQHRvZG8gYSB2YWxpZGVyIHBhciBOaWNvbGFzCisJICovCisJcHVibGljIExpc3Q8b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlRyYW5zaXRpb24+IGdldFRyYW5zaXRpb25zKFN0YXRlTWFjaGluZSBzbSkgeworCQlMaW5rZWRMaXN0PG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5UcmFuc2l0aW9uPiByZXMgPSBuZXcgTGlua2VkTGlzdDxvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVHJhbnNpdGlvbj4oKTsKKwkJZm9yIChvcmcuZWNsaXBzZS51bWwyLnVtbC5SZWdpb24gcmVnaW9uIDogc20uZ2V0UmVnaW9ucygpKSB7CisJCQlmb3IgKG9yZy5lY2xpcHNlLnVtbDIudW1sLlRyYW5zaXRpb24gdHJhbnNpdGlvbiA6IHJlZ2lvbi5nZXRUcmFuc2l0aW9ucygpKSB7CisJCQkJb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlRyYW5zaXRpb24gcm9ib3RtbF90cmFuc2l0aW9uID0gVU1MVXRpbC5nZXRTdGVyZW90eXBlQXBwbGljYXRpb24odHJhbnNpdGlvbiwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlRyYW5zaXRpb24uY2xhc3MpOworCQkJCWlmIChyb2JvdG1sX3RyYW5zaXRpb24gIT0gbnVsbCkgeworCQkJCQlyZXMuYWRkKHJvYm90bWxfdHJhbnNpdGlvbik7CisJCQkJfQorCQkJfQorCQl9CisJCXJldHVybiByZXM7CisJfQorCisJLyoqCisJICogRmluZCBhbGwgc3RhdGUgbWFjaGluZXMgaW4gYSBjb21wb25lbnQuCisJICoKKwkgKiBAcGFyYW0gZWx0CisJICogQHJldHVybiBhIGxpc3Qgb2Ygc3RhdGUgbWFjaGluZXMKKwkgKiBAdG9kbyBhIHZhbGlkZXIgcGFyIE5pY29sYXMKKwkgKi8KKwlwdWJsaWMgTGlzdDxTdGF0ZU1hY2hpbmU+IGdldFN0YXRlTWFjaGluZXMoRWxlbWVudCBlbHQpIHsKKwkJTGlua2VkTGlzdDxTdGF0ZU1hY2hpbmU+IHJlcyA9IG5ldyBMaW5rZWRMaXN0PFN0YXRlTWFjaGluZT4oKTsKKworCQlmb3IgKEVsZW1lbnQgY2hpbGQgOiBlbHQuZ2V0T3duZWRFbGVtZW50cygpKSB7CisJCQlpZiAoY2hpbGQgaW5zdGFuY2VvZiBTdGF0ZU1hY2hpbmUpIHsKKwkJCQlyZXMuYWRkKChTdGF0ZU1hY2hpbmUpIGNoaWxkKTsKKwkJCX0KKwkJfQorCisJCXJldHVybiByZXM7CisJfQorCisJLyoqCisJICogR2VuZXJhdGUgdGhlIHN0YXRlIG9wZXJhdGlvbgorCSAqCisJICogQHBhcmFtIHZlcnRleAorCSAqIEByZXR1cm4KKwkgKi8KKwkvLyBwdWJsaWMgU3RyaW5nIGdlbmVyYXRlT3BlcmF0aW9uU3RhdGVTdHJpbmcob3JnLmVjbGlwc2UudW1sMi51bWwuVmVydGV4IHZlcnRleCkgeworCS8vIFN0cmluZyByZXN1bHQgPSAiIjsKKwkvLyBpZih2ZXJ0ZXggaW5zdGFuY2VvZiBTdGF0ZSkgeworCS8vIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGF0ZSBzdGF0ZSA9IFVNTFV0aWwuZ2V0U3RlcmVvdHlwZUFwcGxpY2F0aW9uKHZlcnRleCwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0YXRlLmNsYXNzKTsKKwkvLyBpZihzdGF0ZSAhPSBudWxsKSB7CisJLy8gaWYoc3RhdGUuZ2V0T3BlcmF0aW9uKCkgIT0gbnVsbCkgeworCS8vIFN0cmluZyBvcGVyYXRpb24gPSBzdGF0ZS5nZXRPcGVyYXRpb24oKS5nZXRCYXNlX09wZXJhdGlvbigpLmdldE5hbWUoKTsKKwkvLyByZXN1bHQgPSBvcGVyYXRpb247CisJLy8gfQorCS8vIH0KKwkvLyB9CisJLy8gcmV0dXJuIHJlc3VsdDsKKwkvLyB9Cit9CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9GU01RdWVyaWVzLm10bCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0ZTTVF1ZXJpZXMubXRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZkZmE1YjQKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9GU01RdWVyaWVzLm10bApAQCAtMCwwICsxLDMzIEBACitbY29tbWVudCBlbmNvZGluZyA9IFVURi04IC9dCitbY29tbWVudF0KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIFBST1RFVVMgUHJvamVjdCBjb25zb3J0aXVtLgorICoKKyAqICAgIAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiBTZWJhc3RpZW4gQk9OTkVUIChFRkZJREVOQ0UpIC0gSW5pdGlhbCBBUEkgYW5kIGltcGxlbWVudGF0aW9uIAorICoKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK1svY29tbWVudF0KKworW21vZHVsZSBGU01RdWVyaWVzKCdodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEnLCAnaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzMuMC4wL1VNTCcsICdodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEnKV0KKworCitbcXVlcnkgcHVibGljIGdldFN0YXRlTWFjaGluZXMoZWx0IDogRWxlbWVudCkgOiBTZXF1ZW5jZShTdGF0ZU1hY2hpbmUpID0KKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuRlNNUXVlcmllcycsICdnZXRTdGF0ZU1hY2hpbmVzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpJywgU2VxdWVuY2V7ZWx0fSkKKy9dCitbcXVlcnkgcHVibGljIGdldFN0YXRlcyhzbSA6IFN0YXRlTWFjaGluZSkgOiBTZXF1ZW5jZShWZXJ0ZXgpID0KKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuRlNNUXVlcmllcycsICdnZXRTdGF0ZXMob3JnLmVjbGlwc2UudW1sMi51bWwuU3RhdGVNYWNoaW5lKScsIFNlcXVlbmNle3NtfSkKKy9dCitbcXVlcnkgcHVibGljIGdldFRyYW5zaXRpb25zKHNtIDogU3RhdGVNYWNoaW5lKSA6IFNlcXVlbmNlKFRyYW5zaXRpb24pID0KKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuRlNNUXVlcmllcycsICdnZXRUcmFuc2l0aW9ucyhvcmcuZWNsaXBzZS51bWwyLnVtbC5TdGF0ZU1hY2hpbmUpJywgU2VxdWVuY2V7c219KQorL10KK1txdWVyeSBwdWJsaWMgZ2VuZXJhdGVPcGVyYXRpb25TdGF0ZVN0cmluZyh2ZXJ0ZXggOiBWZXJ0ZXgpIDogU3RyaW5nID0KKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuRlNNUXVlcmllcycsICdnZW5lcmF0ZU9wZXJhdGlvblN0YXRlU3RyaW5nKG9yZy5lY2xpcHNlLnVtbDIudW1sLlZlcnRleCknLCBTZXF1ZW5jZXt2ZXJ0ZXh9KQorL10KKwpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuZW10bCBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmVtdGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzAzYmRiMAotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmVtdGwKQEAgLTAsMCArMSwyMjI5IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHhtaTpYTUkgeG1pOnZlcnNpb249IjIuMCIgeG1sbnM6eG1pPSJodHRwOi8vd3d3Lm9tZy5vcmcvWE1JIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczplY29yZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSIgeG1sbnM6bXRsPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2FjY2VsZW8vbXRsLzMuMCIgeG1sbnM6b2NsLmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9FY29yZSI+CisgIDxtdGw6TW9kdWxlIG5hbWU9IkdlbmVyYWxRdWVyaWVzIiBuc1VSST0ib3JnOjplY2xpcHNlOjpwYXB5cnVzOjpyb2JvdG1sOjpnZW5lcmF0b3JzOjpjb21tb246Om1tcXVlcmllczo6R2VuZXJhbFF1ZXJpZXMiIHN0YXJ0SGVhZGVyUG9zaXRpb249IjYwMyIgZW5kSGVhZGVyUG9zaXRpb249IjY5NCI+CisgICAgPGlucHV0PgorICAgICAgPHRha2VzVHlwZXNGcm9tIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLyIvPgorICAgIDwvaW5wdXQ+CisgICAgPGlucHV0PgorICAgICAgPHRha2VzVHlwZXNGcm9tIGhyZWY9Imh0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMSMvIi8+CisgICAgPC9pbnB1dD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6Q29tbWVudCI+CisgICAgICA8Ym9keSBzdGFydFBvc2l0aW9uPSI3MDkiIGVuZFBvc2l0aW9uPSI5MDIiIHZhbHVlPSIgJiN4RDsmI3hBOy0gRMOpY2xhcmF0aW9uIGRlIGZvbmN0aW9uIGphdmEgcGVybWV0dGFudCBkJ2ludGVycm9nZXIgbGUgbW9kw6hsZSYjeEQ7JiN4QTstIENlcyBmb25jdGlvbnMgc29udCBpbXBsw6ltZW50w6llcyBkYW5zIGxlIGZpY2hpZXIgJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuR2VuZXJhbFF1ZXJpZXMnJiN4RDsmI3hBOyIvPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZSIgdmlzaWJpbGl0eT0iUHVibGljIiB0eXBlPSIvMy9TZXF1ZW5jZShOYW1lZEVsZW1lbnQpIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iZWx0Ij4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9InN0ZXJlb3R5cGUiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzUiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5HZW5lcmFsUXVlcmllcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImdldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwsamF2YS5sYW5nLlN0cmluZykiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShPY2xBbnkpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJlbHQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUvZWx0Ij4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InN0ZXJlb3R5cGUiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUvc3RlcmVvdHlwZSI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJnZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlIiB2aXNpYmlsaXR5PSJQdWJsaWMiIHR5cGU9Ii8zL1NlcXVlbmNlKE5hbWVkRWxlbWVudCkiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJjbGFzcyI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJzdGVyZW90eXBlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii84Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuR2VuZXJhbFF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJnZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsLGphdmEubGFuZy5TdHJpbmcpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoT2NsQW55KSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iY2xhc3MiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUuMS9jbGFzcyI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzdGVyZW90eXBlIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlLjEvc3RlcmVvdHlwZSI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJnZXRFbGVtZW50c1dpdGhJbmhlcml0ZWRTdGVyZW90eXBlIiB2aXNpYmlsaXR5PSJQdWJsaWMiIHR5cGU9Ii8zL1NlcXVlbmNlKE5hbWVkRWxlbWVudCkiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJlbHQiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0ic3RlcmVvdHlwZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvMTEiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5HZW5lcmFsUXVlcmllcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImdldEVsZW1lbnRzV2l0aEluaGVyaXRlZFN0ZXJlb3R5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwsamF2YS5sYW5nLlN0cmluZykiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShPY2xBbnkpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJlbHQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldEVsZW1lbnRzV2l0aEluaGVyaXRlZFN0ZXJlb3R5cGUvZWx0Ij4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InN0ZXJlb3R5cGUiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldEVsZW1lbnRzV2l0aEluaGVyaXRlZFN0ZXJlb3R5cGUvc3RlcmVvdHlwZSI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJpbnNwZWN0TW9kZWwiIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9Im1vZGVsIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii8xNCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkdlbmVyYWxRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iaW5zcGVjdE1vZGVsKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsKSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKE1vZGVsKSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2luc3BlY3RNb2RlbC9tb2RlbCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJpbnNwZWN0Q2xhc3MiIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImVsdCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvMTciPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5HZW5lcmFsUXVlcmllcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Imluc3BlY3RDbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShDbGFzcykiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvaW5zcGVjdENsYXNzL2VsdCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJpc0NsYXNzIiB2aXNpYmlsaXR5PSJQdWJsaWMiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJlbHQiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvMjAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkdlbmVyYWxRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iaXNDbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKEVsZW1lbnQpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvaXNDbGFzcy9lbHQiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJpc0RhdGFUeXBlIiB2aXNpYmlsaXR5PSJQdWJsaWMiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJlbHQiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvMjMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkdlbmVyYWxRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iaXNEYXRhVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKEVsZW1lbnQpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvaXNEYXRhVHlwZS9lbHQiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJpc0ludGVyZmFjZSIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iZWx0Ij4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzI2Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5HZW5lcmFsUXVlcmllcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImlzSW50ZXJmYWNlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoRWxlbWVudCkiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZWx0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9pc0ludGVyZmFjZS9lbHQiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJpc1Byb3BlcnR5IiB2aXNpYmlsaXR5PSJQdWJsaWMiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJlbHQiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvMjkiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkdlbmVyYWxRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iaXNQcm9wZXJ0eShvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKEVsZW1lbnQpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvaXNQcm9wZXJ0eS9lbHQiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJpc1BvcnQiIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImVsdCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii8zMiI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuR2VuZXJhbFF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJpc1BvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudCkiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShFbGVtZW50KSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJlbHQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2lzUG9ydC9lbHQiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJnZXRDb21wb25lbnRGaWxlTmFtZSIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iY2xhc3MiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iZW5kIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii8zNSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkdlbmVyYWxRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0Q29tcG9uZW50RmlsZU5hbWUob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MsamF2YS5sYW5nLlN0cmluZykiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShPY2xBbnkpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjbGFzcyIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0Q29tcG9uZW50RmlsZU5hbWUvY2xhc3MiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZW5kIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRDb21wb25lbnRGaWxlTmFtZS9lbmQiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgICAgPHR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJnZXRTdGVyZW90eXBlIiB2aXNpYmlsaXR5PSJQdWJsaWMiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJlbHQiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzM4Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuR2VuZXJhbFF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJnZXRTdGVyZW90eXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKENsYXNzKSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZWx0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRTdGVyZW90eXBlL2VsdCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6UXVlcnkiIG5hbWU9Imhhc1N0ZXJlb3R5cGUiIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImVsdCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJzIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii80MSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkdlbmVyYWxRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iaGFzU3RlcmVvdHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcywgamF2YS5sYW5nLlN0cmluZykiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShPY2xBbnkpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJlbHQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2hhc1N0ZXJlb3R5cGUvZWx0Ij4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2hhc1N0ZXJlb3R5cGUvcyI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJpbmhlcml0c0Zyb20iIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImVsdCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJzdGVyZW90eXBlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii80NCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkdlbmVyYWxRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iaW5oZXJpdHNGcm9tKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzLCBqYXZhLmxhbmcuU3RyaW5nKSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKE9jbEFueSkiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvaW5oZXJpdHNGcm9tL2VsdCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzdGVyZW90eXBlIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9pbmhlcml0c0Zyb20vc3RlcmVvdHlwZSI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJnZXRTdGVyZW90eXBlSW5oZXJpdGVkRnJvbSIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iZWx0Ij4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9InN0ZXJlb3R5cGUiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzQ3Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuR2VuZXJhbFF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJnZXRTdGVyZW90eXBlSW5oZXJpdGVkRnJvbShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcywgamF2YS5sYW5nLlN0cmluZykiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShPY2xBbnkpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJlbHQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldFN0ZXJlb3R5cGVJbmhlcml0ZWRGcm9tL2VsdCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzdGVyZW90eXBlIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRTdGVyZW90eXBlSW5oZXJpdGVkRnJvbS9zdGVyZW90eXBlIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgIDwvZXhwcmVzc2lvbj4KKyAgICAgIDx0eXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0QXR0cmlidXRlVmFsdWUiIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImVsdCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJhdHRyIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9InN0ZXJlb3R5cGUiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzUwIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuR2VuZXJhbFF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJnZXRBdHRyaWJ1dGVWYWx1ZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcywgamF2YS5sYW5nLlN0cmluZywgamF2YS5sYW5nLlN0cmluZykiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShPY2xBbnkpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJlbHQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldEF0dHJpYnV0ZVZhbHVlL2VsdCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJhdHRyIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRBdHRyaWJ1dGVWYWx1ZS9hdHRyIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InN0ZXJlb3R5cGUiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldEF0dHJpYnV0ZVZhbHVlL3N0ZXJlb3R5cGUiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgICAgPHR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJnZXRBdHRyaWJ1dGVWYWx1ZSIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iZWx0Ij4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImF0dHIiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0ic3RlcmVvdHlwZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJkZWZhdWx0VmFsdWUiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzUzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuR2VuZXJhbFF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJnZXRBdHRyaWJ1dGVWYWx1ZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcywgamF2YS5sYW5nLlN0cmluZywgamF2YS5sYW5nLlN0cmluZywgamF2YS5sYW5nLlN0cmluZykiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShPY2xBbnkpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJlbHQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldEF0dHJpYnV0ZVZhbHVlLjEvZWx0Ij4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImF0dHIiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldEF0dHJpYnV0ZVZhbHVlLjEvYXR0ciI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzdGVyZW90eXBlIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRBdHRyaWJ1dGVWYWx1ZS4xL3N0ZXJlb3R5cGUiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZGVmYXVsdFZhbHVlIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRBdHRyaWJ1dGVWYWx1ZS4xL2RlZmF1bHRWYWx1ZSI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6UXVlcnkiIG5hbWU9ImdldEF0dHJpYnV0ZVZhbHVlcyIgdmlzaWJpbGl0eT0iUHVibGljIiB0eXBlPSIvMy9TZXF1ZW5jZShTdHJpbmcpIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iZWx0Ij4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImF0dHIiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0ic3RlcmVvdHlwZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvNTYiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5HZW5lcmFsUXVlcmllcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImdldEF0dHJpYnV0ZVZhbHVlcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcywgamF2YS5sYW5nLlN0cmluZywgamF2YS5sYW5nLlN0cmluZykiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShPY2xBbnkpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJlbHQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldEF0dHJpYnV0ZVZhbHVlcy9lbHQiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYXR0ciIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0QXR0cmlidXRlVmFsdWVzL2F0dHIiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic3RlcmVvdHlwZSIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0QXR0cmlidXRlVmFsdWVzL3N0ZXJlb3R5cGUiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZmluZENsYXNzSW5Nb2RlbCIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0ibW9kZWwiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0ibmFtZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvNTkiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5HZW5lcmFsUXVlcmllcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImZpbmRDbGFzc0luTW9kZWwob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwsIGphdmEubGFuZy5TdHJpbmcpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzMvU2VxdWVuY2UoT2NsQW55KSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2ZpbmRDbGFzc0luTW9kZWwvbW9kZWwiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibmFtZSIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZmluZENsYXNzSW5Nb2RlbC9uYW1lIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgIDwvZXhwcmVzc2lvbj4KKyAgICAgIDx0eXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0SW5zdGFuY2VNdWx0aXBsaWNpdHkiIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImVsdCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvNjIiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5HZW5lcmFsUXVlcmllcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImdldEluc3RhbmNlTXVsdGlwbGljaXR5KG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5KSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii8zL1NlcXVlbmNlKFByb3BlcnR5KSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZWx0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRJbnN0YW5jZU11bHRpcGxpY2l0eS9lbHQiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgPC9leHByZXNzaW9uPgorICAgICAgPHR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJyZW1vdmVCcmFja2V0cyIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0ic3RyIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii82NSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkdlbmVyYWxRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0icmVtb3ZlQnJhY2tldHMoamF2YS5sYW5nLlN0cmluZykiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvMy9TZXF1ZW5jZShTdHJpbmcpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzdHIiIHJlZmVycmVkVmFyaWFibGU9Ii8wL3JlbW92ZUJyYWNrZXRzL3N0ciI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgPC9tdGw6TW9kdWxlPgorICA8ZWNvcmU6RVBhY2thZ2UgbmFtZT0iYWRkaXRpb25zIj4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlN0cmluZ19DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJJbnRlZ2VyX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJSZWFsX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvUmVhbCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFT2JqZWN0X0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZSIgZVR5cGU9Ii8zL1NlcXVlbmNlKE5hbWVkRWxlbWVudCkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbHQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InN0ZXJlb3R5cGUiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZSIgZVR5cGU9Ii8zL1NlcXVlbmNlKE5hbWVkRWxlbWVudCkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlLjEiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNsYXNzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJzdGVyZW90eXBlIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldEVsZW1lbnRzV2l0aEluaGVyaXRlZFN0ZXJlb3R5cGUiIGVUeXBlPSIvMy9TZXF1ZW5jZShOYW1lZEVsZW1lbnQpIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZ2V0RWxlbWVudHNXaXRoSW5oZXJpdGVkU3RlcmVvdHlwZSIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZWx0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJzdGVyZW90eXBlIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9Imluc3BlY3RNb2RlbCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2luc3BlY3RNb2RlbCIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibW9kZWwiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaW5zcGVjdENsYXNzIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvaW5zcGVjdENsYXNzIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbHQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNDbGFzcyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2lzQ2xhc3MiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImVsdCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzRGF0YVR5cGUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9pc0RhdGFUeXBlIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbHQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc0ludGVyZmFjZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2lzSW50ZXJmYWNlIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbHQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc1Byb3BlcnR5Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvaXNQcm9wZXJ0eSIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZWx0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNQb3J0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvaXNQb3J0Ii8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbHQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRDb21wb25lbnRGaWxlTmFtZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dldENvbXBvbmVudEZpbGVOYW1lIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNsYXNzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbmQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0U3RlcmVvdHlwZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dldFN0ZXJlb3R5cGUiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZWx0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9Imhhc1N0ZXJlb3R5cGUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9oYXNTdGVyZW90eXBlIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbHQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaW5oZXJpdHNGcm9tIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvaW5oZXJpdHNGcm9tIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbHQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InN0ZXJlb3R5cGUiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0U3RlcmVvdHlwZUluaGVyaXRlZEZyb20iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZXRTdGVyZW90eXBlSW5oZXJpdGVkRnJvbSIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbHQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InN0ZXJlb3R5cGUiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0QXR0cmlidXRlVmFsdWUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZXRBdHRyaWJ1dGVWYWx1ZSIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbHQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImF0dHIiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InN0ZXJlb3R5cGUiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0QXR0cmlidXRlVmFsdWUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZXRBdHRyaWJ1dGVWYWx1ZS4xIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImVsdCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYXR0ciI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ic3RlcmVvdHlwZSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGVmYXVsdFZhbHVlIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldEF0dHJpYnV0ZVZhbHVlcyIgZVR5cGU9Ii8zL1NlcXVlbmNlKFN0cmluZykiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZXRBdHRyaWJ1dGVWYWx1ZXMiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImVsdCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYXR0ciI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ic3RlcmVvdHlwZSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJmaW5kQ2xhc3NJbk1vZGVsIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZmluZENsYXNzSW5Nb2RlbCIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJtb2RlbCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibmFtZSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRJbnN0YW5jZU11bHRpcGxpY2l0eSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dldEluc3RhbmNlTXVsdGlwbGljaXR5Ii8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImVsdCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJyZW1vdmVCcmFja2V0cyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL3JlbW92ZUJyYWNrZXRzIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InN0ciI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9jbEFueV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaW52b2tlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCBub24tc3RhbmRhcmQiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY2xhc3MiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im1ldGhvZCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYXJndW1lbnRzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvYWNjZWxlby9tdGwvMy4wL210bG5vbnN0ZGxpYi5lY29yZSMvL1NlcXVlbmNlKE9jbEFueSkiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb2xsZWN0aW9uKFQpX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQ29sbGVjdGlvbihUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTZXF1ZW5jZShUKV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1NlcXVlbmNlKFQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9yZGVyZWRTZXQoVClfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PcmRlcmVkU2V0KFQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik1vZGVsX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ2xhc3NfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFbGVtZW50X0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQcm9wZXJ0eV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgPC9lY29yZTpFUGFja2FnZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxlY29yZTpFUGFja2FnZSBuYW1lPSJjb2xsZWN0aW9ucyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgbmFtZT0iU2VxdWVuY2UoTmFtZWRFbGVtZW50KSIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEudXRpbC5MaXN0Ij4KKyAgICAgIDxlbGVtZW50VHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgbmFtZT0iU2VxdWVuY2UoU3RyaW5nKSIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEudXRpbC5MaXN0Ij4KKyAgICAgIDxlbGVtZW50VHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJvY2wuZWNvcmU6U2VxdWVuY2VUeXBlIiBuYW1lPSJTZXF1ZW5jZShPY2xBbnkpIiBpbnN0YW5jZUNsYXNzTmFtZT0iamF2YS51dGlsLkxpc3QiPgorICAgICAgPGVsZW1lbnRUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIG5hbWU9IlNlcXVlbmNlKE1vZGVsKSIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEudXRpbC5MaXN0Ij4KKyAgICAgIDxlbGVtZW50VHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJvY2wuZWNvcmU6U2VxdWVuY2VUeXBlIiBuYW1lPSJTZXF1ZW5jZShDbGFzcykiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuTGlzdCI+CisgICAgICA8ZWxlbWVudFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgbmFtZT0iU2VxdWVuY2UoRWxlbWVudCkiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuTGlzdCI+CisgICAgICA8ZWxlbWVudFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJvY2wuZWNvcmU6U2VxdWVuY2VUeXBlIiBuYW1lPSJTZXF1ZW5jZShQcm9wZXJ0eSkiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuTGlzdCI+CisgICAgICA8ZWxlbWVudFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgIDwvZWNvcmU6RVBhY2thZ2U+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPGVjb3JlOkVBbm5vdGF0aW9uIHNvdXJjZT0icG9zaXRpb25zIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjAiIHJlZmVyZW5jZXM9Ii8wLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5MTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEiIHJlZmVyZW5jZXM9Ii8wL2dldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjkxNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjAxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMiIgcmVmZXJlbmNlcz0iLzAvZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZS9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5NjUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zIiByZWZlcmVuY2VzPSIvMC9nZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlL3N0ZXJlb3R5cGUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk2NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5ODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40IiByZWZlcmVuY2VzPSIvMC9nZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwMTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE5NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNSIgcmVmZXJlbmNlcz0iLzAvZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZS8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42IiByZWZlcmVuY2VzPSIvMC9nZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTAyNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43IiByZWZlcmVuY2VzPSIvMC9nZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDk4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExNzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjgiIHJlZmVyZW5jZXM9Ii8wL2dldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOSIgcmVmZXJlbmNlcz0iLzAvZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZS8lLyUuMi8lL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE4MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMCIgcmVmZXJlbmNlcz0iLzAvZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZS8lLyUuMi8lLjEvc3RlcmVvdHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE4NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMSIgcmVmZXJlbmNlcz0iLzAvZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjAzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE0OTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMiIgcmVmZXJlbmNlcz0iLzAvZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZS4xL2NsYXNzIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjQzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEyNTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMyIgcmVmZXJlbmNlcz0iLzAvZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZS4xL3N0ZXJlb3R5cGUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEyNTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTI3NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0IiByZWZlcmVuY2VzPSIvMC9nZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlLjEvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTMwOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNDkwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNSIgcmVmZXJlbmNlcz0iLzAvZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZS4xLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2IiByZWZlcmVuY2VzPSIvMC9nZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlLjEvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMzE1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEzODciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3IiByZWZlcmVuY2VzPSIvMC9nZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlLjEvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEzODkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQ2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTgiIHJlZmVyZW5jZXM9Ii8wL2dldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUuMS8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTQ2MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNDg5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xOSIgcmVmZXJlbmNlcz0iLzAvZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZS4xLyUvJS4yLyUvY2xhc3MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0NzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQ3NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjAiIHJlZmVyZW5jZXM9Ii8wL2dldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUuMS8lLyUuMi8lLjEvc3RlcmVvdHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTQ3OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNDg4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMSIgcmVmZXJlbmNlcz0iLzAvZ2V0RWxlbWVudHNXaXRoSW5oZXJpdGVkU3RlcmVvdHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTQ5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxODAxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjIiIHJlZmVyZW5jZXM9Ii8wL2dldEVsZW1lbnRzV2l0aEluaGVyaXRlZFN0ZXJlb3R5cGUvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNTQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE1NTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjMwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMyIgcmVmZXJlbmNlcz0iLzAvZ2V0RWxlbWVudHNXaXRoSW5oZXJpdGVkU3RlcmVvdHlwZS9zdGVyZW90eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNTU4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE1NzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjMwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNCIgcmVmZXJlbmNlcz0iLzAvZ2V0RWxlbWVudHNXaXRoSW5oZXJpdGVkU3RlcmVvdHlwZS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNjA4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE3OTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI1IiByZWZlcmVuY2VzPSIvMC9nZXRFbGVtZW50c1dpdGhJbmhlcml0ZWRTdGVyZW90eXBlLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI2IiByZWZlcmVuY2VzPSIvMC9nZXRFbGVtZW50c1dpdGhJbmhlcml0ZWRTdGVyZW90eXBlLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTYxNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNjg3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNyIgcmVmZXJlbmNlcz0iLzAvZ2V0RWxlbWVudHNXaXRoSW5oZXJpdGVkU3RlcmVvdHlwZS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTY4OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNzcwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOCIgcmVmZXJlbmNlcz0iLzAvZ2V0RWxlbWVudHNXaXRoSW5oZXJpdGVkU3RlcmVvdHlwZS8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTc3MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNzk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOSIgcmVmZXJlbmNlcz0iLzAvZ2V0RWxlbWVudHNXaXRoSW5oZXJpdGVkU3RlcmVvdHlwZS8lLyUuMi8lL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTc4MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNzg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMCIgcmVmZXJlbmNlcz0iLzAvZ2V0RWxlbWVudHNXaXRoSW5oZXJpdGVkU3RlcmVvdHlwZS8lLyUuMi8lLjEvc3RlcmVvdHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTc4NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNzk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMSIgcmVmZXJlbmNlcz0iLzAvaW5zcGVjdE1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxODAzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIwMDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjMzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMiIgcmVmZXJlbmNlcz0iLzAvaW5zcGVjdE1vZGVsL21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxODMwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4NDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjMzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMyIgcmVmZXJlbmNlcz0iLzAvaW5zcGVjdE1vZGVsLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4NjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjAwMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzQiIHJlZmVyZW5jZXM9Ii8wL2luc3BlY3RNb2RlbC8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNSIgcmVmZXJlbmNlcz0iLzAvaW5zcGVjdE1vZGVsLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTg2NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTM5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNiIgcmVmZXJlbmNlcz0iLzAvaW5zcGVjdE1vZGVsLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTQxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5ODMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM3IiByZWZlcmVuY2VzPSIvMC9pbnNwZWN0TW9kZWwvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE5ODUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjAwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzgiIHJlZmVyZW5jZXM9Ii8wL2luc3BlY3RNb2RlbC8lLyUuMi8lL21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTk0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5OTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM5IiByZWZlcmVuY2VzPSIvMC9pbnNwZWN0Q2xhc3MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIwMDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjIwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQwIiByZWZlcmVuY2VzPSIvMC9pbnNwZWN0Q2xhc3MvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMDM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIwNDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MSIgcmVmZXJlbmNlcz0iLzAvaW5zcGVjdENsYXNzLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIwNjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjIwMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDIiIHJlZmVyZW5jZXM9Ii8wL2luc3BlY3RDbGFzcy8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MyIgcmVmZXJlbmNlcz0iLzAvaW5zcGVjdENsYXNzLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjA3MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTQyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NCIgcmVmZXJlbmNlcz0iLzAvaW5zcGVjdENsYXNzLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMTQ0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIxODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ1IiByZWZlcmVuY2VzPSIvMC9pbnNwZWN0Q2xhc3MvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxODgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjIwMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDYiIHJlZmVyZW5jZXM9Ii8wL2luc3BlY3RDbGFzcy8lLyUuMi8lL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjE5NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjAwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NyIgcmVmZXJlbmNlcz0iLzAvaXNDbGFzcyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjIwOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNDAyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzOSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDgiIHJlZmVyZW5jZXM9Ii8wL2lzQ2xhc3MvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMjMxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIyNDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40OSIgcmVmZXJlbmNlcz0iLzAvaXNDbGFzcy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMjYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIzOTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUwIiByZWZlcmVuY2VzPSIvMC9pc0NsYXNzLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUxIiByZWZlcmVuY2VzPSIvMC9pc0NsYXNzLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjI2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzQwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41MiIgcmVmZXJlbmNlcz0iLzAvaXNDbGFzcy8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjM0MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41MyIgcmVmZXJlbmNlcz0iLzAvaXNDbGFzcy8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjM4MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41NCIgcmVmZXJlbmNlcz0iLzAvaXNDbGFzcy8lLyUuMi8lL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjM5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41NSIgcmVmZXJlbmNlcz0iLzAvaXNEYXRhVHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjQwNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjAzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0MiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTYiIHJlZmVyZW5jZXM9Ii8wL2lzRGF0YVR5cGUvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNDI5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI0NDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41NyIgcmVmZXJlbmNlcz0iLzAvaXNEYXRhVHlwZS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNDU5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI1OTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU4IiByZWZlcmVuY2VzPSIvMC9pc0RhdGFUeXBlLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU5IiByZWZlcmVuY2VzPSIvMC9pc0RhdGFUeXBlLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjQ2NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTM4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MCIgcmVmZXJlbmNlcz0iLzAvaXNEYXRhVHlwZS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjU0MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTgyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MSIgcmVmZXJlbmNlcz0iLzAvaXNEYXRhVHlwZS8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjU4NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MiIgcmVmZXJlbmNlcz0iLzAvaXNEYXRhVHlwZS8lLyUuMi8lL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjU5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MyIgcmVmZXJlbmNlcz0iLzAvaXNJbnRlcmZhY2UiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI2MDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjgwNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjY0IiByZWZlcmVuY2VzPSIvMC9pc0ludGVyZmFjZS9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI2MzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjY0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjY1IiByZWZlcmVuY2VzPSIvMC9pc0ludGVyZmFjZS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNjYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI4MDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjY2IiByZWZlcmVuY2VzPSIvMC9pc0ludGVyZmFjZS8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42NyIgcmVmZXJlbmNlcz0iLzAvaXNJbnRlcmZhY2UvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNjY4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI3NDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjY4IiByZWZlcmVuY2VzPSIvMC9pc0ludGVyZmFjZS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjc0MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNzg1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42OSIgcmVmZXJlbmNlcz0iLzAvaXNJbnRlcmZhY2UvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI3ODciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjgwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzAiIHJlZmVyZW5jZXM9Ii8wL2lzSW50ZXJmYWNlLyUvJS4yLyUvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNzk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI3OTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjcxIiByZWZlcmVuY2VzPSIvMC9pc1Byb3BlcnR5Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyODA4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMwMDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQ4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43MiIgcmVmZXJlbmNlcz0iLzAvaXNQcm9wZXJ0eS9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI4MzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjg0NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjczIiByZWZlcmVuY2VzPSIvMC9pc1Byb3BlcnR5LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI4NjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzAwMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzQiIHJlZmVyZW5jZXM9Ii8wL2lzUHJvcGVydHkvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzUiIHJlZmVyZW5jZXM9Ii8wL2lzUHJvcGVydHkvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyODcwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI5NDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjc2IiByZWZlcmVuY2VzPSIvMC9pc1Byb3BlcnR5LyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyOTQ0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI5ODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjc3IiByZWZlcmVuY2VzPSIvMC9pc1Byb3BlcnR5LyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyOTg4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMwMDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjc4IiByZWZlcmVuY2VzPSIvMC9pc1Byb3BlcnR5LyUvJS4yLyUvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyOTk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMwMDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjc5IiByZWZlcmVuY2VzPSIvMC9pc1BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMwMDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzIwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjgwIiByZWZlcmVuY2VzPSIvMC9pc1BvcnQvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMDMwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMwNDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjUxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44MSIgcmVmZXJlbmNlcz0iLzAvaXNQb3J0LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMwNjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzE5NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODIiIHJlZmVyZW5jZXM9Ii8wL2lzUG9ydC8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44MyIgcmVmZXJlbmNlcz0iLzAvaXNQb3J0LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzA2NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMTM5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44NCIgcmVmZXJlbmNlcz0iLzAvaXNQb3J0LyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMTQxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMxNzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjg1IiByZWZlcmVuY2VzPSIvMC9pc1BvcnQvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMxODEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzE5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODYiIHJlZmVyZW5jZXM9Ii8wL2lzUG9ydC8lLyUuMi8lL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzE5MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMTkzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44NyIgcmVmZXJlbmNlcz0iLzAvZ2V0Q29tcG9uZW50RmlsZU5hbWUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMyMDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzQ1NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjg4IiByZWZlcmVuY2VzPSIvMC9nZXRDb21wb25lbnRGaWxlTmFtZS9jbGFzcyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzIzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMjUwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1NCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODkiIHJlZmVyZW5jZXM9Ii8wL2dldENvbXBvbmVudEZpbGVOYW1lL2VuZCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzI1MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMjY0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1NCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTAiIHJlZmVyZW5jZXM9Ii8wL2dldENvbXBvbmVudEZpbGVOYW1lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMyODAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzQ1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTEiIHJlZmVyZW5jZXM9Ii8wL2dldENvbXBvbmVudEZpbGVOYW1lLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjkyIiByZWZlcmVuY2VzPSIvMC9nZXRDb21wb25lbnRGaWxlTmFtZS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMyODciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzM1OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTMiIHJlZmVyZW5jZXM9Ii8wL2dldENvbXBvbmVudEZpbGVOYW1lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMzYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM0MjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjk0IiByZWZlcmVuY2VzPSIvMC9nZXRDb21wb25lbnRGaWxlTmFtZS8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzQzMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNDQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45NSIgcmVmZXJlbmNlcz0iLzAvZ2V0Q29tcG9uZW50RmlsZU5hbWUvJS8lLjIvJS9jbGFzcyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzQzOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNDQ0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45NiIgcmVmZXJlbmNlcz0iLzAvZ2V0Q29tcG9uZW50RmlsZU5hbWUvJS8lLjIvJS4xL2VuZCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzQ0NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNDQ4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45NyIgcmVmZXJlbmNlcz0iLzAvZ2V0U3RlcmVvdHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzQ1NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNjU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTgiIHJlZmVyZW5jZXM9Ii8wL2dldFN0ZXJlb3R5cGUvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNDg1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM0OTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjU3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45OSIgcmVmZXJlbmNlcz0iLzAvZ2V0U3RlcmVvdHlwZS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNTEyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM2NTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwMCIgcmVmZXJlbmNlcz0iLzAvZ2V0U3RlcmVvdHlwZS8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDEiIHJlZmVyZW5jZXM9Ii8wL2dldFN0ZXJlb3R5cGUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNTE5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM1OTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwMiIgcmVmZXJlbmNlcz0iLzAvZ2V0U3RlcmVvdHlwZS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzU5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNjM2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDMiIHJlZmVyZW5jZXM9Ii8wL2dldFN0ZXJlb3R5cGUvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM2MzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzY1MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTA0IiByZWZlcmVuY2VzPSIvMC9nZXRTdGVyZW90eXBlLyUvJS4yLyUvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNjQ3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM2NTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwNSIgcmVmZXJlbmNlcz0iLzAvaGFzU3RlcmVvdHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzY1OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzODkxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2MCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTA2IiByZWZlcmVuY2VzPSIvMC9oYXNTdGVyZW90eXBlL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzY4NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNjk4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2MCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTA3IiByZWZlcmVuY2VzPSIvMC9oYXNTdGVyZW90eXBlL3MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM3MDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzcxMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwOCIgcmVmZXJlbmNlcz0iLzAvaGFzU3RlcmVvdHlwZS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNzI2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM4ODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwOSIgcmVmZXJlbmNlcz0iLzAvaGFzU3RlcmVvdHlwZS8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTAiIHJlZmVyZW5jZXM9Ii8wL2hhc1N0ZXJlb3R5cGUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNzMzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM4MDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExMSIgcmVmZXJlbmNlcz0iLzAvaGFzU3RlcmVvdHlwZS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzgwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzODY4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTIiIHJlZmVyZW5jZXM9Ii8wL2hhc1N0ZXJlb3R5cGUvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM4NzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzg4NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTEzIiByZWZlcmVuY2VzPSIvMC9oYXNTdGVyZW90eXBlLyUvJS4yLyUvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzODc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM4ODIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExNCIgcmVmZXJlbmNlcz0iLzAvaGFzU3RlcmVvdHlwZS8lLyUuMi8lLjEvcyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzg4MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzODg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTUiIHJlZmVyZW5jZXM9Ii8wL2luaGVyaXRzRnJvbSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzg5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MTQwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2MyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTE2IiByZWZlcmVuY2VzPSIvMC9pbmhlcml0c0Zyb20vZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzOTIwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM5MzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjYzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTciIHJlZmVyZW5jZXM9Ii8wL2luaGVyaXRzRnJvbS9zdGVyZW90eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzOTMyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM5NTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjYzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTgiIHJlZmVyZW5jZXM9Ii8wL2luaGVyaXRzRnJvbS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzOTY3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQxMzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExOSIgcmVmZXJlbmNlcz0iLzAvaW5oZXJpdHNGcm9tLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyMCIgcmVmZXJlbmNlcz0iLzAvaW5oZXJpdHNGcm9tLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzk3NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MDQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjEiIHJlZmVyZW5jZXM9Ii8wL2luaGVyaXRzRnJvbS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDA0OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MTA4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjIiIHJlZmVyZW5jZXM9Ii8wL2luaGVyaXRzRnJvbS8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDExMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MTM0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjMiIHJlZmVyZW5jZXM9Ii8wL2luaGVyaXRzRnJvbS8lLyUuMi8lL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDExOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MTIyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjQiIHJlZmVyZW5jZXM9Ii8wL2luaGVyaXRzRnJvbS8lLyUuMi8lLjEvc3RlcmVvdHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDEyMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MTMzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjUiIHJlZmVyZW5jZXM9Ii8wL2dldFN0ZXJlb3R5cGVJbmhlcml0ZWRGcm9tIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MTQyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ0MTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjY2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjYiIHJlZmVyZW5jZXM9Ii8wL2dldFN0ZXJlb3R5cGVJbmhlcml0ZWRGcm9tL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDE4MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MTkzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2NiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTI3IiByZWZlcmVuY2VzPSIvMC9nZXRTdGVyZW90eXBlSW5oZXJpdGVkRnJvbS9zdGVyZW90eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MTk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQyMTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjY2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjgiIHJlZmVyZW5jZXM9Ii8wL2dldFN0ZXJlb3R5cGVJbmhlcml0ZWRGcm9tLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQyMjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDQxMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTI5IiByZWZlcmVuY2VzPSIvMC9nZXRTdGVyZW90eXBlSW5oZXJpdGVkRnJvbS8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMzAiIHJlZmVyZW5jZXM9Ii8wL2dldFN0ZXJlb3R5cGVJbmhlcml0ZWRGcm9tLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDIzNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MzA4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMzEiIHJlZmVyZW5jZXM9Ii8wL2dldFN0ZXJlb3R5cGVJbmhlcml0ZWRGcm9tLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MzEwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQzODQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzMiIgcmVmZXJlbmNlcz0iLzAvZ2V0U3RlcmVvdHlwZUluaGVyaXRlZEZyb20vJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQzODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDQxMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTMzIiByZWZlcmVuY2VzPSIvMC9nZXRTdGVyZW90eXBlSW5oZXJpdGVkRnJvbS8lLyUuMi8lL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDM5NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0Mzk4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMzQiIHJlZmVyZW5jZXM9Ii8wL2dldFN0ZXJlb3R5cGVJbmhlcml0ZWRGcm9tLyUvJS4yLyUuMS9zdGVyZW90eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0Mzk5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ0MDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzNSIgcmVmZXJlbmNlcz0iLzAvZ2V0QXR0cmlidXRlVmFsdWUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ0MTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDcxMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzNiIgcmVmZXJlbmNlcz0iLzAvZ2V0QXR0cmlidXRlVmFsdWUvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NDUwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ0NjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjY5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMzciIHJlZmVyZW5jZXM9Ii8wL2dldEF0dHJpYnV0ZVZhbHVlL2F0dHIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ0NjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDQ3NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzOCIgcmVmZXJlbmNlcz0iLzAvZ2V0QXR0cmlidXRlVmFsdWUvc3RlcmVvdHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDQ3OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NDk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2OSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTM5IiByZWZlcmVuY2VzPSIvMC9nZXRBdHRyaWJ1dGVWYWx1ZS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NTEyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ3MDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0MCIgcmVmZXJlbmNlcz0iLzAvZ2V0QXR0cmlidXRlVmFsdWUvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQxIiByZWZlcmVuY2VzPSIvMC9nZXRBdHRyaWJ1dGVWYWx1ZS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ1MTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDU5MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQyIiByZWZlcmVuY2VzPSIvMC9nZXRBdHRyaWJ1dGVWYWx1ZS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDU5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0Njc2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNDMiIHJlZmVyZW5jZXM9Ii8wL2dldEF0dHJpYnV0ZVZhbHVlLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0Njc4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ3MDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0NCIgcmVmZXJlbmNlcz0iLzAvZ2V0QXR0cmlidXRlVmFsdWUvJS8lLjIvJS9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ2ODciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDY5MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQ1IiByZWZlcmVuY2VzPSIvMC9nZXRBdHRyaWJ1dGVWYWx1ZS8lLyUuMi8lLjEvYXR0ciI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDY5MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0Njk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNDYiIHJlZmVyZW5jZXM9Ii8wL2dldEF0dHJpYnV0ZVZhbHVlLyUvJS4yLyUuMi9zdGVyZW90eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0Njk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ3MDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0NyIgcmVmZXJlbmNlcz0iLzAvZ2V0QXR0cmlidXRlVmFsdWUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDcxNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MDY1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3MiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQ4IiByZWZlcmVuY2VzPSIvMC9nZXRBdHRyaWJ1dGVWYWx1ZS4xL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDc0NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NzU4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3MiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQ5IiByZWZlcmVuY2VzPSIvMC9nZXRBdHRyaWJ1dGVWYWx1ZS4xL2F0dHIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ3NjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDc3MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNzIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1MCIgcmVmZXJlbmNlcz0iLzAvZ2V0QXR0cmlidXRlVmFsdWUuMS9zdGVyZW90eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0Nzc1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ3OTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjcyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNTEiIHJlZmVyZW5jZXM9Ii8wL2dldEF0dHJpYnV0ZVZhbHVlLjEvZGVmYXVsdFZhbHVlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0Nzk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ4MTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjcyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNTIiIHJlZmVyZW5jZXM9Ii8wL2dldEF0dHJpYnV0ZVZhbHVlLjEvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDgzMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MDYwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNTMiIHJlZmVyZW5jZXM9Ii8wL2dldEF0dHJpYnV0ZVZhbHVlLjEvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTU0IiByZWZlcmVuY2VzPSIvMC9nZXRBdHRyaWJ1dGVWYWx1ZS4xLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDgzOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0OTExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNTUiIHJlZmVyZW5jZXM9Ii8wL2dldEF0dHJpYnV0ZVZhbHVlLjEvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ5MTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTAxNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTU2IiByZWZlcmVuY2VzPSIvMC9nZXRBdHRyaWJ1dGVWYWx1ZS4xLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MDE2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUwNTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1NyIgcmVmZXJlbmNlcz0iLzAvZ2V0QXR0cmlidXRlVmFsdWUuMS8lLyUuMi8lL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTAyNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MDI4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNTgiIHJlZmVyZW5jZXM9Ii8wL2dldEF0dHJpYnV0ZVZhbHVlLjEvJS8lLjIvJS4xL2F0dHIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUwMjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTAzMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTU5IiByZWZlcmVuY2VzPSIvMC9nZXRBdHRyaWJ1dGVWYWx1ZS4xLyUvJS4yLyUuMi9zdGVyZW90eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MDM0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUwNDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2MCIgcmVmZXJlbmNlcz0iLzAvZ2V0QXR0cmlidXRlVmFsdWUuMS8lLyUuMi8lLjMvZGVmYXVsdFZhbHVlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MDQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUwNTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2MSIgcmVmZXJlbmNlcz0iLzAvZ2V0QXR0cmlidXRlVmFsdWVzIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MDY3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUzNzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijc1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNjIiIHJlZmVyZW5jZXM9Ii8wL2dldEF0dHJpYnV0ZVZhbHVlcy9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUxMDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTExMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNzUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2MyIgcmVmZXJlbmNlcz0iLzAvZ2V0QXR0cmlidXRlVmFsdWVzL2F0dHIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUxMTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTEyNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNzUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2NCIgcmVmZXJlbmNlcz0iLzAvZ2V0QXR0cmlidXRlVmFsdWVzL3N0ZXJlb3R5cGUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUxMjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTE0NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNzUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2NSIgcmVmZXJlbmNlcz0iLzAvZ2V0QXR0cmlidXRlVmFsdWVzLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUxNzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTM2OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTY2IiByZWZlcmVuY2VzPSIvMC9nZXRBdHRyaWJ1dGVWYWx1ZXMvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTY3IiByZWZlcmVuY2VzPSIvMC9nZXRBdHRyaWJ1dGVWYWx1ZXMvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MTc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUyNTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2OCIgcmVmZXJlbmNlcz0iLzAvZ2V0QXR0cmlidXRlVmFsdWVzLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MjUzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUzMzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2OSIgcmVmZXJlbmNlcz0iLzAvZ2V0QXR0cmlidXRlVmFsdWVzLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MzM5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUzNjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3MCIgcmVmZXJlbmNlcz0iLzAvZ2V0QXR0cmlidXRlVmFsdWVzLyUvJS4yLyUvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MzQ4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUzNTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3MSIgcmVmZXJlbmNlcz0iLzAvZ2V0QXR0cmlidXRlVmFsdWVzLyUvJS4yLyUuMS9hdHRyIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MzUyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUzNTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3MiIgcmVmZXJlbmNlcz0iLzAvZ2V0QXR0cmlidXRlVmFsdWVzLyUvJS4yLyUuMi9zdGVyZW90eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MzU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUzNjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3MyIgcmVmZXJlbmNlcz0iLzAvZmluZENsYXNzSW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTM3NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NjIyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTc0IiByZWZlcmVuY2VzPSIvMC9maW5kQ2xhc3NJbk1vZGVsL21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NDA3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU0MjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijc4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNzUiIHJlZmVyZW5jZXM9Ii8wL2ZpbmRDbGFzc0luTW9kZWwvbmFtZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTQyMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NDM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTc2IiByZWZlcmVuY2VzPSIvMC9maW5kQ2xhc3NJbk1vZGVsLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU0NDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTYxNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTc3IiByZWZlcmVuY2VzPSIvMC9maW5kQ2xhc3NJbk1vZGVsLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3OCIgcmVmZXJlbmNlcz0iLzAvZmluZENsYXNzSW5Nb2RlbC8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU0NTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTUyOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTc5IiByZWZlcmVuY2VzPSIvMC9maW5kQ2xhc3NJbk1vZGVsLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NTMwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU1OTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4MCIgcmVmZXJlbmNlcz0iLzAvZmluZENsYXNzSW5Nb2RlbC8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTU5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NjE2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xODEiIHJlZmVyZW5jZXM9Ii8wL2ZpbmRDbGFzc0luTW9kZWwvJS8lLjIvJS9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTYwNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NjEwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xODIiIHJlZmVyZW5jZXM9Ii8wL2ZpbmRDbGFzc0luTW9kZWwvJS8lLjIvJS4xL25hbWUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU2MTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTYxNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTgzIiByZWZlcmVuY2VzPSIvMC9nZXRJbnN0YW5jZU11bHRpcGxpY2l0eSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTYyNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1ODUwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI4MSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTg0IiByZWZlcmVuY2VzPSIvMC9nZXRJbnN0YW5jZU11bHRpcGxpY2l0eS9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU2NjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTY3NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iODEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4NSIgcmVmZXJlbmNlcz0iLzAvZ2V0SW5zdGFuY2VNdWx0aXBsaWNpdHkvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTY5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1ODQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xODYiIHJlZmVyZW5jZXM9Ii8wL2dldEluc3RhbmNlTXVsdGlwbGljaXR5LyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4NyIgcmVmZXJlbmNlcz0iLzAvZ2V0SW5zdGFuY2VNdWx0aXBsaWNpdHkvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1Njk5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU3NzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4OCIgcmVmZXJlbmNlcz0iLzAvZ2V0SW5zdGFuY2VNdWx0aXBsaWNpdHkvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU3NzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTgyOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTg5IiByZWZlcmVuY2VzPSIvMC9nZXRJbnN0YW5jZU11bHRpcGxpY2l0eS8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTgzMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1ODQ0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xOTAiIHJlZmVyZW5jZXM9Ii8wL2dldEluc3RhbmNlTXVsdGlwbGljaXR5LyUvJS4yLyUvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1ODQwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU4NDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5MSIgcmVmZXJlbmNlcz0iLzAvcmVtb3ZlQnJhY2tldHMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU4NTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjA0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iODQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5MiIgcmVmZXJlbmNlcz0iLzAvcmVtb3ZlQnJhY2tldHMvc3RyIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1ODgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU4OTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijg0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xOTMiIHJlZmVyZW5jZXM9Ii8wL3JlbW92ZUJyYWNrZXRzLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU5MDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjAzOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTk0IiByZWZlcmVuY2VzPSIvMC9yZW1vdmVCcmFja2V0cy8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xOTUiIHJlZmVyZW5jZXM9Ii8wL3JlbW92ZUJyYWNrZXRzLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTkxNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1OTg3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xOTYiIHJlZmVyZW5jZXM9Ii8wL3JlbW92ZUJyYWNrZXRzLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1OTg5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjYwMjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5NyIgcmVmZXJlbmNlcz0iLzAvcmVtb3ZlQnJhY2tldHMvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjYwMjUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjAzOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTk4IiByZWZlcmVuY2VzPSIvMC9yZW1vdmVCcmFja2V0cy8lLyUuMi8lL3N0ciI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjAzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2MDM3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZWNvcmU6RUFubm90YXRpb24+Cis8L3htaTpYTUk+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5qYXZhIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iY2U3ZTVkCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuamF2YQpAQCAtMCwwICsxLDU5OSBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTMgUFJPVEVVUyBQcm9qZWN0IGNvbnNvcnRpdW0uCisgKgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIE5pY29sYXMgRFUgTEFDIChJTlRFTVBPUkEpIC0gSW5pdGlhbCBBUEkgYW5kIGltcGxlbWVudGF0aW9uCisgKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXM7CisKK2ltcG9ydCBqYXZhLnV0aWwuTGlua2VkTGlzdDsKK2ltcG9ydCBqYXZhLnV0aWwuTGlzdDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0b3I7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yRW5kOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuSW5zdGFuY2VTcGVjaWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLk5hbWVkRWxlbWVudDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5PcGVyYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZWFibGVFbGVtZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuU3RlcmVvdHlwZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5UeXBlOworCitwdWJsaWMgY2xhc3MgR2VuZXJhbFF1ZXJpZXMgeworCisJLyoqCisJICogUmV0cmlldmUgYWxsIHN1Yi1lbGVtZW50cyAob2YgdHlwZSBDbGFzcykgZm9yIGEgZ2l2ZW4gZWxlbWVudCB0aGF0IGhhdmUgdGhlIHByb3ZpZGVkIHN0ZXJlb3R5cGUuCisJICogQmFzaWNhbGx5LCByZXRyaWV2ZXMgYWxsIHRoZSBjb21wb25lbnQgbW9kZWxzIGluc2lkZSBhIFJvYm90TUwgbW9kZWwuCisJICoKKwkgKiBAcGFyYW0gcGFyZW50X2VsdAorCSAqICAgICAgICAgICAgdGhlIHJvb3QgZWxlbWVudCB0byBpbnNwZWN0CisJICogQHBhcmFtIGNsYXp6CisJICogICAgICAgICAgICB0aGUgc3RlcmVvdHlwZSBjbGFzcyB3ZSBhcmUgbG9va2luZyBmb3IuIFVzdWFsbHkgc29tZXRoaW5nIGxpa2UgLi4uUm9ib3RNTC5TZW5zb3JTeXN0ZW0KKwkgKiBAcGFyYW0gdGFyZ2V0X2xpc3QKKwkgKiAgICAgICAgICAgIHRoZSBsaXN0IGluIHdoaWNoIHRoZSBmb3VuZCBlbGVtZW50cyB3aWxsIGJlIHN0b3JlZC4KKwkgKi8KKwlzdGF0aWMgcHJvdGVjdGVkIHZvaWQgZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZShFbGVtZW50IHBhcmVudF9lbHQsIENsYXNzIGNsYXp6LCBMaW5rZWRMaXN0PE5hbWVkRWxlbWVudD4gdGFyZ2V0X2xpc3QpIHsKKwkJaWYgKHBhcmVudF9lbHQgaW5zdGFuY2VvZiBvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykgeworCQkJZm9yIChFT2JqZWN0IHN0ZXJlb0FwcGxpY2F0aW9uIDogcGFyZW50X2VsdC5nZXRTdGVyZW90eXBlQXBwbGljYXRpb25zKCkpIHsKKwkJCQkvLyBjaGVjayB3aGV0aGVyIHRoZSBzdGVyZW90eXBlIGlzIGFuIGluc3RhbmNlIG9mIHRoZSBwYXNzZWQgcGFyYW1ldGVyIGNsYXp6CisJCQkJaWYgKGNsYXp6LmlzSW5zdGFuY2Uoc3RlcmVvQXBwbGljYXRpb24pKSB7CisJCQkJCXRhcmdldF9saXN0LmFkZCgoTmFtZWRFbGVtZW50KSBwYXJlbnRfZWx0KTsKKwkJCQl9CisJCQl9CisJCX0KKwkJZm9yIChFbGVtZW50IG5lIDogcGFyZW50X2VsdC5nZXRPd25lZEVsZW1lbnRzKCkpIHsKKwkJCWlmIChuZSBpbnN0YW5jZW9mIE5hbWVkRWxlbWVudCkgeworCQkJCWlmIChuZSBpbnN0YW5jZW9mIG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSB7CisJCQkJCWZvciAoRU9iamVjdCBzdGVyZW9BcHBsaWNhdGlvbiA6IG5lLmdldFN0ZXJlb3R5cGVBcHBsaWNhdGlvbnMoKSkgeworCQkJCQkJLy8gY2hlY2sgd2hldGhlciB0aGUgc3RlcmVvdHlwZSBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgcGFzc2VkIHBhcmFtZXRlciBjbGF6egorCQkJCQkJaWYgKGNsYXp6LmlzSW5zdGFuY2Uoc3RlcmVvQXBwbGljYXRpb24pKSB7CisJCQkJCQkJdGFyZ2V0X2xpc3QuYWRkKChOYW1lZEVsZW1lbnQpIG5lKTsKKwkJCQkJCX0KKwkJCQkJfQorCQkJCQlnZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlKG5lLCBjbGF6eiwgdGFyZ2V0X2xpc3QpOworCQkJCX0KKwkJCX0KKwkJfQorCQlyZXR1cm47CisJfQorCisJLyoqCisJICogUmVjdXJzaXZlIHJldHJpZXZlIG9mIGFsbCBlbGVtZW50cyB3aXRoIGEgZ2l2ZW4gc3RlcmVvdHlwZSBpbiB0aGUgbW9kZWwuCisJICoKKwkgKiBAcGFyYW0gbW9kZWwKKwkgKiAgICAgICAgICAgIE1vZGVsIHRvIHNlYXJjaCBpbi4KKwkgKiBAcGFyYW0gc3RlcmVvdHlwZQorCSAqICAgICAgICAgICAgVGhlIHN0ZXJlb3R5cGUgbmFtZSAoZS5nLiAiU2Vuc29yIiwgIkFjdHVhdG9yIiwgIlN1YlN5c3RlbSIuLi4pCisJICogQHJldHVybiBBIGxpc3Qgb2YgTmFtZWRFbGVtZW50cyBoYXZpbmcgdGhlIHNwZWNpZmllZCBzdGVyZW90eXBlLgorCSAqIEBkZXByZWNhdGVkIHRvIGJlIHJlcGxhY2VkIHdpdGggY2FsbHMgdG8gdGhlIFJvYm90TUwgQVBJLiBSZXBsYWNlZCBieSBnZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlIChNb2RlbCBtb2RlbCwgU3RlcmVvdHlwZUNsYXNzIHNjKQorCSAqLworCUBEZXByZWNhdGVkCisJc3RhdGljIHB1YmxpYyBMaXN0PE5hbWVkRWxlbWVudD4gZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZShNb2RlbCBtb2RlbCwgU3RyaW5nIHN0ZXJlb3R5cGUpIHsKKwkJTGlua2VkTGlzdDxOYW1lZEVsZW1lbnQ+IGZvdW5kX2VsdHMgPSBuZXcgTGlua2VkTGlzdDxOYW1lZEVsZW1lbnQ+KCk7CisJCWZvciAoRWxlbWVudCBuZSA6IG1vZGVsLmdldE93bmVkRWxlbWVudHMoKSkgeworCQkJaWYgKG5lIGluc3RhbmNlb2YgTmFtZWRFbGVtZW50KSB7CisJCQkJaWYgKG5lIGluc3RhbmNlb2Ygb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIHsKKwkJCQkJaWYgKGhhc1N0ZXJlb3R5cGUoKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSBuZSwgc3RlcmVvdHlwZSkpIHsKKwkJCQkJCWZvdW5kX2VsdHMuYWRkKChOYW1lZEVsZW1lbnQpIG5lKTsKKwkJCQkJfQorCQkJCX0KKwkJCX0gZWxzZSBpZiAobmUgaW5zdGFuY2VvZiBNb2RlbCkgeworCQkJCWZvdW5kX2VsdHMuYWRkQWxsKGdldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUoKE1vZGVsKSBuZSwgc3RlcmVvdHlwZSkpOworCQkJfQorCQkJZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZShuZSwgc3RlcmVvdHlwZSwgZm91bmRfZWx0cyk7CisJCX0KKwkJcmV0dXJuIGZvdW5kX2VsdHM7CisJfQorCisJLyoqCisJICogU2FtZSBhcyBnZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlKE1vZGVsIG1vZGVsLi4uKSBzZWFyY2hlcyBpbiBhbiBFbGVtZW50IG1lbWJlcnMsIG5vdCBpbiBhIE1vZGVsIG1lbWJlcnMuCisJICogVGhpcyBmdW5jdGlvbiBpcyBwcml2YXRlIGFuZCB1c2VkIGJ5IGdldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUoTW9kZWwgbW9kZWwuLi4pCisJICoKKwkgKiBAcGFyYW0gcGFyZW50X2VsdAorCSAqIEBwYXJhbSBzdGVyZW90eXBlCisJICogQHBhcmFtIHRhcmdldF9saXN0CisJICogQGRlcHJlY2F0ZWQgdG8gYmUgcmVwbGFjZWQgd2l0aCBjYWxscyB0byB0aGUgUm9ib3RNTCBBUEkuCisJICovCisJQERlcHJlY2F0ZWQKKwlzdGF0aWMgcHJpdmF0ZSB2b2lkIGdldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUoRWxlbWVudCBwYXJlbnRfZWx0LCBTdHJpbmcgc3RlcmVvdHlwZSwgTGlua2VkTGlzdDxOYW1lZEVsZW1lbnQ+IHRhcmdldF9saXN0KSB7CisJCWZvciAoRWxlbWVudCBuZSA6IHBhcmVudF9lbHQuZ2V0T3duZWRFbGVtZW50cygpKSB7CisJCQlpZiAobmUgaW5zdGFuY2VvZiBOYW1lZEVsZW1lbnQpIHsKKwkJCQlpZiAobmUgaW5zdGFuY2VvZiBvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykgeworCQkJCQlpZiAoaGFzU3RlcmVvdHlwZSgob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIG5lLCBzdGVyZW90eXBlKSkgeworCQkJCQkJdGFyZ2V0X2xpc3QuYWRkKChOYW1lZEVsZW1lbnQpIG5lKTsKKwkJCQkJfQorCQkJCX0KKwkJCQlnZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlKG5lLCBzdGVyZW90eXBlLCB0YXJnZXRfbGlzdCk7CisJCQl9CisJCX0KKwkJcmV0dXJuOworCX0KKworCS8qKgorCSAqIFJlY3Vyc2l2ZSByZXRyaWV2ZSBvZiBhbGwgZWxlbWVudCB3aXRoIGEgZ2l2ZW4gaW5oZXJpdGVkIHN0ZXJlb3R5cGUgaW4gdGhlIG1vZGVsLgorCSAqCisJICogQHBhcmFtIG1vZGVsCisJICogICAgICAgICAgICBNb2RlbCB0byBzZWFyY2ggaW4uCisJICogQHBhcmFtIHN0ZXJlb3R5cGUKKwkgKiAgICAgICAgICAgIFRoZSBzdGVyZW90eXBlIG5hbWUgKGUuZy4gIlNlbnNvciIsICJBY3R1YXRvciIsICJTdWJTeXN0ZW0iLi4uKQorCSAqIEByZXR1cm4gQSBsaXN0IG9mIE5hbWVkRWxlbWVudHMgaGF2aW5nIHRoZSBzcGVjaWZpZWQgc3RlcmVvdHlwZS4KKwkgKiBAZGVwcmVjYXRlZCB0byBiZSByZXBsYWNlZCB3aXRoIGNhbGxzIHRvIHRoZSBSb2JvdE1MIEFQSS4gUmVwbGFjZWQgYnkgZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZSAoTW9kZWwgbW9kZWwsIFN0ZXJlb3R5cGVDbGFzcyBzYykKKwkgKi8KKwlARGVwcmVjYXRlZAorCXN0YXRpYyBwdWJsaWMgTGlzdDxOYW1lZEVsZW1lbnQ+IGdldEVsZW1lbnRzV2l0aEluaGVyaXRlZFN0ZXJlb3R5cGUoTW9kZWwgbW9kZWwsIFN0cmluZyBzdGVyZW90eXBlKSB7CisJCUxpbmtlZExpc3Q8TmFtZWRFbGVtZW50PiBmb3VuZF9lbHRzID0gbmV3IExpbmtlZExpc3Q8TmFtZWRFbGVtZW50PigpOworCQlmb3IgKEVsZW1lbnQgbmUgOiBtb2RlbC5nZXRPd25lZEVsZW1lbnRzKCkpIHsKKwkJCWlmIChuZSBpbnN0YW5jZW9mIE5hbWVkRWxlbWVudCkgeworCQkJCWlmIChuZSBpbnN0YW5jZW9mIG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSB7CisJCQkJCWlmIChpbmhlcml0c0Zyb20oKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSBuZSwgc3RlcmVvdHlwZSkpIHsKKwkJCQkJCWZvdW5kX2VsdHMuYWRkKChOYW1lZEVsZW1lbnQpIG5lKTsKKwkJCQkJfQorCQkJCX0KKwkJCX0gZWxzZSBpZiAobmUgaW5zdGFuY2VvZiBNb2RlbCkgeworCQkJCWZvdW5kX2VsdHMuYWRkQWxsKGdldEVsZW1lbnRzV2l0aEluaGVyaXRlZFN0ZXJlb3R5cGUoKE1vZGVsKSBuZSwgc3RlcmVvdHlwZSkpOworCQkJfQorCQkJZ2V0RWxlbWVudHNXaXRoSW5oZXJpdGVkU3RlcmVvdHlwZShuZSwgc3RlcmVvdHlwZSwgZm91bmRfZWx0cyk7CisJCX0KKwkJcmV0dXJuIGZvdW5kX2VsdHM7CisJfQorCisJLyoqCisJICogU2FtZSBhcyBnZXRFbGVtZW50c1dpdGhJbmhlcml0ZWRTdGVyZW90eXBlKE1vZGVsIG1vZGVsLi4uKSBzZWFyY2hlcyBpbiBhbiBFbGVtZW50IG1lbWJlcnMsIG5vdCBpbiBhIE1vZGVsIG1lbWJlcnMuCisJICogVGhpcyBmdW5jdGlvbiBpcyBwcml2YXRlIGFuZCB1c2VkIGJ5IGdldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUoTW9kZWwgbW9kZWwuLi4pCisJICoKKwkgKiBAcGFyYW0gcGFyZW50X2VsdAorCSAqIEBwYXJhbSBzdGVyZW90eXBlCisJICogQHBhcmFtIHRhcmdldF9saXN0CisJICogQGRlcHJlY2F0ZWQgdG8gYmUgcmVwbGFjZWQgd2l0aCBjYWxscyB0byB0aGUgUm9ib3RNTCBBUEkuCisJICovCisJQERlcHJlY2F0ZWQKKwlzdGF0aWMgcHJpdmF0ZSB2b2lkIGdldEVsZW1lbnRzV2l0aEluaGVyaXRlZFN0ZXJlb3R5cGUoRWxlbWVudCBwYXJlbnRfZWx0LCBTdHJpbmcgc3RlcmVvdHlwZSwgTGlua2VkTGlzdDxOYW1lZEVsZW1lbnQ+IHRhcmdldF9saXN0KSB7CisJCWZvciAoRWxlbWVudCBuZSA6IHBhcmVudF9lbHQuZ2V0T3duZWRFbGVtZW50cygpKSB7CisJCQlpZiAobmUgaW5zdGFuY2VvZiBOYW1lZEVsZW1lbnQpIHsKKwkJCQkvLyBTeXN0ZW0ub3V0LnByaW50bG4oKChOYW1lZEVsZW1lbnQpbmUpLmdldE5hbWUoKSk7CisJCQkJaWYgKG5lIGluc3RhbmNlb2Ygb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIHsKKwkJCQkJaWYgKGluaGVyaXRzRnJvbSgob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIG5lLCBzdGVyZW90eXBlKSkgeworCQkJCQkJdGFyZ2V0X2xpc3QuYWRkKChOYW1lZEVsZW1lbnQpIG5lKTsKKwkJCQkJfQorCQkJCQkvLyBTdHJpbmcgY3VycmVudF9zdGVyZW90eXBlID0gdGhpcy5nZXRTdGVyZW90eXBlKChvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyluZSk7CisJCQkJCS8vIC8vaWYgKHN0ZXJlb3R5cGUgIT0gIi0tIikKKwkJCQkJLy8gLy8gU3lzdGVtLm91dC5wcmludGxuKCJTVEVSRU9UWVBFOiAiICsgc3RlcmVvdHlwZSk7CisJCQkJCS8vIGlmIChjdXJyZW50X3N0ZXJlb3R5cGUuY29tcGFyZVRvKHN0ZXJlb3R5cGUpPT0wKSB7CisJCQkJCS8vIC8vU3lzdGVtLm91dC5wcmludGxuKCJGT1VORCBBIFNFTlNPUjogIiArICgoTmFtZWRFbGVtZW50KW5lKS5nZXROYW1lKCkpOworCQkJCQkvLyB0YXJnZXRfbGlzdC5hZGQoKE5hbWVkRWxlbWVudCluZSk7CisJCQkJCS8vIH0KKwkJCQl9CisJCQkJZ2V0RWxlbWVudHNXaXRoSW5oZXJpdGVkU3RlcmVvdHlwZShuZSwgc3RlcmVvdHlwZSwgdGFyZ2V0X2xpc3QpOworCQkJfQorCQl9CisJCXJldHVybjsKKwl9CisKKwkvKioKKwkgKiBHZXQgdGhlIGZpcnN0IHN0ZXJlb3R5cGUgYXBwbGllZCB0byBhIGdpdmVuIGNsYXNzLgorCSAqIFdhcm5pbmc6IG90aGVyIHN0ZXJlb3R5cGVzIGFyZSBpZ25vcmVkLiBUbyB1c2Ugd2l0aCBjYXJlLgorCSAqCisJICogQGRlcHJlY2F0ZWQgc3VwZXJzZWRlZCBieSB0aGUgUm9ib3RNTCBBUEkuCisJICovCisJQERlcHJlY2F0ZWQKKwlzdGF0aWMgcHVibGljIFN0cmluZyBnZXRTdGVyZW90eXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzIGNsKSB7CisJCWlmIChjbC5nZXRBcHBsaWVkU3RlcmVvdHlwZXMoKS5zaXplKCkgPT0gMSkgeworCQkJcmV0dXJuIGNsLmdldEFwcGxpZWRTdGVyZW90eXBlcygpLmdldCgwKS5nZXROYW1lKCk7CisJCX0gZWxzZSB7CisJCQlyZXR1cm4gIi0tIjsKKwkJfQorCX0KKworCXN0YXRpYyBwdWJsaWMgQm9vbGVhbiBpbmhlcml0c0Zyb20ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgY2wsIFN0cmluZyBzdG5hbWUpIHsKKwkJZm9yIChTdGVyZW90eXBlIHN0IDogY2wuZ2V0QXBwbGllZFN0ZXJlb3R5cGVzKCkpIHsKKwkJCWlmIChzdC5nZXROYW1lKCkuZXF1YWxzKHN0bmFtZSkpIHsKKwkJCQlyZXR1cm4gdHJ1ZTsKKwkJCX0gZWxzZSB7CisJCQkJaWYgKGluaGVyaXRzRnJvbShzdCwgc3RuYW1lKSkgeworCQkJCQlyZXR1cm4gdHJ1ZTsKKwkJCQl9CisJCQl9CisJCX0KKwkJcmV0dXJuIGZhbHNlOworCX0KKworCXN0YXRpYyBwdWJsaWMgQm9vbGVhbiBpbmhlcml0c0Zyb20ob3JnLmVjbGlwc2UudW1sMi51bWwuU3RlcmVvdHlwZSBzdCwgU3RyaW5nIHN0bmFtZSkgeworCQlpZiAoc3QuZ2V0TmFtZSgpLmVxdWFscyhzdG5hbWUpKSB7CisJCQlyZXR1cm4gdHJ1ZTsKKwkJfSBlbHNlIHsKKwkJCWZvciAob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3Mgc2NsIDogc3QuZ2V0U3VwZXJDbGFzc2VzKCkpIHsKKwkJCQlpZiAoaW5oZXJpdHNGcm9tKChvcmcuZWNsaXBzZS51bWwyLnVtbC5TdGVyZW90eXBlKSBzY2wsIHN0bmFtZSkpIHsKKwkJCQkJcmV0dXJuIHRydWU7CisJCQkJfQorCQkJfQorCQl9CisJCXJldHVybiBmYWxzZTsKKwl9CisKKwlzdGF0aWMgcHVibGljIFN0cmluZyBnZXRTdGVyZW90eXBlSW5oZXJpdGVkRnJvbShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyBjbCwgU3RyaW5nIHN0bmFtZSkgeworCQlmb3IgKFN0ZXJlb3R5cGUgc3QgOiBjbC5nZXRBcHBsaWVkU3RlcmVvdHlwZXMoKSkgeworCQkJaWYgKGluaGVyaXRzRnJvbShzdCwgc3RuYW1lKSkgeworCQkJCXJldHVybiBzdC5nZXROYW1lKCk7CisJCQl9CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJc3RhdGljIHB1YmxpYyBCb29sZWFuIGhhc1N0ZXJlb3R5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgY2wsIENsYXNzIHN0ZXJlb3R5cGUpIHsKKwkJZm9yIChFT2JqZWN0IHN0ZXJlb0FwcGxpY2F0aW9uIDogY2wuZ2V0U3RlcmVvdHlwZUFwcGxpY2F0aW9ucygpKSB7CisJCQkvLyBjaGVjayB3aGV0aGVyIHRoZSBzdGVyZW90eXBlIGlzIGFuIGluc3RhbmNlIG9mIHRoZSBwYXNzZWQgcGFyYW1ldGVyIGNsYXp6CisJCQlpZiAoc3RlcmVvdHlwZS5pc0luc3RhbmNlKHN0ZXJlb0FwcGxpY2F0aW9uKSkgeworCQkJCXJldHVybiB0cnVlOworCQkJfQorCQl9CisJCXJldHVybiBmYWxzZTsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm4gdHJ1ZSBpZiBhIGdpdmVuIGNsYXNzIGhhcyBzcGVjaWZpZWQgc3RlcmVvdHlwZS4KKwkgKi8KKwlzdGF0aWMgcHVibGljIEJvb2xlYW4gaGFzU3RlcmVvdHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyBjbCwgU3RyaW5nIHMpIHsKKwkJZm9yIChTdGVyZW90eXBlIHN0IDogY2wuZ2V0QXBwbGllZFN0ZXJlb3R5cGVzKCkpIHsKKwkJCWlmIChzdC5nZXROYW1lKCkuZXF1YWxzKHMpKSB7CisJCQkJcmV0dXJuIHRydWU7CisJCQl9CisJCX0KKwkJcmV0dXJuIGZhbHNlOworCX0KKworCS8qKgorCSAqIElzIHRoaXMgZWxlbWVudCBhIFVNTCBjbGFzcworCSAqCisJICogQHBhcmFtIGVsZW1lbnQKKwkgKiBAcmV0dXJuIGlzIHRoaXMgYSBVTUwgY2xhc3MgPworCSAqLworCXN0YXRpYyBwdWJsaWMgQm9vbGVhbiBpc0NsYXNzKEVsZW1lbnQgZWx0KSB7CisJCXJldHVybiBlbHQgaW5zdGFuY2VvZiBvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzczsKKwl9CisKKwkvKioKKwkgKiBJcyB0aGlzIGVsZW1lbnQgYSBVTUwgRGF0YVR5cGUKKwkgKgorCSAqIEBwYXJhbSBlbGVtZW50CisJICogQHJldHVybiBpcyB0aGlzIGEgVU1MIERhdGFUeXBlID8KKwkgKi8KKwlzdGF0aWMgcHVibGljIEJvb2xlYW4gaXNEYXRhVHlwZShFbGVtZW50IGVsdCkgeworCQlib29sZWFuIGIgPSAoZWx0IGluc3RhbmNlb2Ygb3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUpOworCQkvLyBTeXN0ZW0ub3V0LnByaW50bG4oKChOYW1lZEVsZW1lbnQpZWx0KS5nZXROYW1lKCkrIiAtIGlzRGF0YVR5cGU6ICIrYisiICIrZWx0LmdldEFwcGxpZWRTdGVyZW90eXBlcygpKTsKKwkJcmV0dXJuIGI7CisJfQorCisJLyoqCisJICogSXMgdGhpcyBlbGVtZW50IGEgVU1MIGludGVyZmFjZQorCSAqCisJICogQHBhcmFtIGVsZW1lbnQKKwkgKiBAcmV0dXJuIGlzIHRoaXMgYSBVTUwgY2xhc3MgPworCSAqLworCXN0YXRpYyBwdWJsaWMgQm9vbGVhbiBpc0ludGVyZmFjZShFbGVtZW50IGVsdCkgeworCQlib29sZWFuIGIgPSAoZWx0IGluc3RhbmNlb2Ygb3JnLmVjbGlwc2UudW1sMi51bWwuSW50ZXJmYWNlKTsKKwkJLy8gU3lzdGVtLm91dC5wcmludGxuKCgoTmFtZWRFbGVtZW50KWVsdCkuZ2V0TmFtZSgpKyIgLSBpc0ludGVyZmFjZTogIitiKyIgIitlbHQuZ2V0QXBwbGllZFN0ZXJlb3R5cGVzKCkpOworCQlyZXR1cm4gYjsKKwl9CisKKwkvKioKKwkgKiBJcyB0aGlzIGVsZW1lbnQgYSBVTUwgUHJvcGVydHkKKwkgKgorCSAqIEBwYXJhbSBlbGVtZW50CisJICogQHJldHVybiBpcyB0aGlzIGEgVU1MIFByb3BlcnR5ID8KKwkgKi8KKwlzdGF0aWMgcHVibGljIEJvb2xlYW4gaXNQcm9wZXJ0eShFbGVtZW50IGVsdCkgeworCQlyZXR1cm4gZWx0IGluc3RhbmNlb2YgUHJvcGVydHk7CisJfQorCisJLyoqCisJICogSXMgdGhpcyBwcm9wZXJ0eSBhIFBvcnQKKwkgKgorCSAqIEBwYXJhbSBwcm9wZXJ0eQorCSAqIEByZXR1cm4gaXMgdGhpcyBhIHBvcnQgPworCSAqLworCXN0YXRpYyBwdWJsaWMgQm9vbGVhbiBpc1BvcnQoRWxlbWVudCBwcm9wKSB7CisJCXJldHVybiBwcm9wIGluc3RhbmNlb2YgUG9ydDsKKwl9CisKKwkvKioKKwkgKiBJcyB0aGlzIGVsZW1lbnQgYW4gaW5zdGFuY2Ugc3BlY2lmaWNhdGlvbgorCSAqCisJICogQHBhcmFtIGVsZW1lbnQKKwkgKiBAcmV0dXJuIGlzIHRoaXMgYW4gaW5zdGFuY2Ugc3BlY2lmaWNhdGlvbiA/CisJICovCisJc3RhdGljIHB1YmxpYyBCb29sZWFuIGlzSW5zdGFuY2VTcGVjaWZpY2F0aW9uKEVsZW1lbnQgZWx0KSB7CisJCXJldHVybiBlbHQgaW5zdGFuY2VvZiBJbnN0YW5jZVNwZWNpZmljYXRpb247CisJfQorCisJLyoqCisJICogQFRPRE86IHRoaXMgc2VlbXMgdG8gYmUgbWlkZGxld2FyZSBzcGVjaWZpYy4gVG8gYmUgbW92ZWQgdG8gY29ycmVzcG9uZGluZyBtaWRkbGV3YXJlIGdlbmVyYXRvciBwcm9qZWN0LgorCSAqLworCXN0YXRpYyBwdWJsaWMgU3RyaW5nIGdldEluc3RhbmNlTXVsdGlwbGljaXR5KFByb3BlcnR5IHApIHsKKwkJdHJ5IHsKKwkJCWlmICgocC5nZXRMb3dlcigpID09IDEpICYmIChwLmdldFVwcGVyKCkgPT0gMSkpIHsKKwkJCQlyZXR1cm4gIiI7CisJCQl9IGVsc2UgaWYgKChwLmdldExvd2VyKCkgPT0gcC5nZXRVcHBlcigpKSkgeworCQkJCXJldHVybiAiWyIgKyBwLmdldExvd2VyKCkgKyAiXSI7CisJCQl9IGVsc2UgeworCQkJCXJldHVybiAiW10iOworCQkJfQorCQl9IGNhdGNoIChFeGNlcHRpb24gZSkgeworCQkJamF2YS5sYW5nLlN5c3RlbS5vdXQucHJpbnRsbihlKTsKKwkJCWUucHJpbnRTdGFja1RyYWNlKCk7CisJCQlyZXR1cm4gIiI7CisJCX0KKwl9CisKKwkvKioKKwkgKiBSZXR1cm4gdGhlIHZhbHVlIG9mIGEgZ2l2ZW4gYXR0cmlidXRlIHVzaW5nIHRoZSBnaXZlbiBzdGVyZW90eXBlCisJICovCisJc3RhdGljIHB1YmxpYyBTdHJpbmcgZ2V0QXR0cmlidXRlVmFsdWUob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgY2wsIFN0cmluZyBhdHRyLCBTdHJpbmcgc3RuYW1lKSB7CisJCWZvciAoU3RlcmVvdHlwZSBzdCA6IGNsLmdldEFwcGxpZWRTdGVyZW90eXBlcygpKSB7CisJCQlpZiAoc3QuZ2V0TmFtZSgpLmVxdWFscyhzdG5hbWUpKSB7CisJCQkJT2JqZWN0IG8gPSBjbC5nZXRWYWx1ZShzdCwgYXR0cik7CisJCQkJaWYgKG8gIT0gbnVsbCkgeworCQkJCQlpZiAobyBpbnN0YW5jZW9mIE5hbWVkRWxlbWVudCkgeworCQkJCQkJU3RyaW5nIHYgPSAoKE5hbWVkRWxlbWVudCkgbykuZ2V0TmFtZSgpOworCQkJCQkJcmV0dXJuIHY7CisJCQkJCX0gZWxzZSBpZiAobyBpbnN0YW5jZW9mIFN0cmluZykgeworCQkJCQkJcmV0dXJuIChTdHJpbmcpIG87CisJCQkJCX0gZWxzZSBpZiAobyBpbnN0YW5jZW9mIEVMaXN0KSB7CisJCQkJCQlpZiAoKChFTGlzdDxPYmplY3Q+KSBvKS5pc0VtcHR5KCkpIHsKKwkJCQkJCQlyZXR1cm4gbnVsbDsKKwkJCQkJCX0KKwkJCQkJCXJldHVybiAoKEVMaXN0PE9iamVjdD4pIG8pLmdldCgwKS50b1N0cmluZygpOworCQkJCQl9IGVsc2UgeworCQkJCQkJcmV0dXJuIG8udG9TdHJpbmcoKTsKKwkJCQkJfQorCQkJCX0KKwkJCX0KKwkJfQorCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm4gdGhlIHZhbHVlIG9mIGEgZ2l2ZW4gYXR0cmlidXRlIHVzaW5nIHRoZSBnaXZlbiBzdGVyZW90eXBlCisJICogSWYgYXR0cmlidXRlIGlzIG5vdCBkZWZpbmVkLCB0aGVuIHJldHVybiBhIGRlZmF1bHQgdmFsdWUKKwkgKi8KKwlzdGF0aWMgcHVibGljIFN0cmluZyBnZXRBdHRyaWJ1dGVWYWx1ZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyBjbCwgU3RyaW5nIGF0dHIsIFN0cmluZyBzdG5hbWUsIFN0cmluZyBkZWZhdWx0VmFsdWUpIHsKKwkJU3RyaW5nIHJlc3VsdCA9IG51bGw7CisJCXJlc3VsdCA9IGdldEF0dHJpYnV0ZVZhbHVlKGNsLCBhdHRyLCBzdG5hbWUpOworCQkvLyBTeXN0ZW0ub3V0LnByaW50bG4oInZhbHVlIDogIiArIHJlc3VsdCk7CisKKwkJaWYgKHJlc3VsdCA9PSBudWxsIHx8IHJlc3VsdC5sZW5ndGgoKSA9PSAwKSB7CisJCQlyZXR1cm4gZGVmYXVsdFZhbHVlOworCQl9CisJCXJldHVybiByZXN1bHQ7CisKKwl9CisKKwkvKioKKwkgKiBSZXR1cm4gdGhlIHZhbHVlcyBvZiBhIGdpdmVuIGF0dHJpYnV0ZSB1c2luZyB0aGUgZ2l2ZW4gc3RlcmVvdHlwZQorCSAqLworCXN0YXRpYyBwdWJsaWMgTGlzdDxTdHJpbmc+IGdldEF0dHJpYnV0ZVZhbHVlcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyBjbCwgU3RyaW5nIGF0dHIsIFN0cmluZyBzdG5hbWUpIHsKKwkJTGlua2VkTGlzdDxTdHJpbmc+IHJlc3VsdCA9IG5ldyBMaW5rZWRMaXN0PFN0cmluZz4oKTsKKwkJZm9yIChTdGVyZW90eXBlIHN0IDogY2wuZ2V0QXBwbGllZFN0ZXJlb3R5cGVzKCkpIHsKKwkJCWlmIChzdC5nZXROYW1lKCkuZXF1YWxzKHN0bmFtZSkpIHsKKwkJCQlPYmplY3QgbyA9IGNsLmdldFZhbHVlKHN0LCBhdHRyKTsKKwkJCQlpZiAobyAhPSBudWxsKSB7CisJCQkJCWlmIChvIGluc3RhbmNlb2YgTmFtZWRFbGVtZW50KSB7CisJCQkJCQlyZXN1bHQuYWRkKCgoTmFtZWRFbGVtZW50KSBvKS5nZXROYW1lKCkpOworCQkJCQl9IGVsc2UgaWYgKG8gaW5zdGFuY2VvZiBTdHJpbmcpIHsKKwkJCQkJCXJlc3VsdC5hZGQoKFN0cmluZykgbyk7CisJCQkJCX0gZWxzZSBpZiAobyBpbnN0YW5jZW9mIEVMaXN0KSB7CisJCQkJCQkvLyBTeXN0ZW0ub3V0LnByaW50bG4oIlZhbHVlcyB0eXBlOiAiICsgby5nZXRDbGFzcygpLmdldE5hbWUoKSApOworCQkJCQkJZm9yIChpbnQgaSA9IDA7IGkgPCAoKEVMaXN0PE9iamVjdD4pIG8pLnNpemUoKTsgaSsrKSB7CisJCQkJCQkJcmVzdWx0LmFkZCgoKEVMaXN0PE9iamVjdD4pIG8pLmdldChpKS50b1N0cmluZygpKTsKKwkJCQkJCQkvLyBTeXN0ZW0ub3V0LnByaW50bG4oImVsZW1lbnQgIiArIGkgKyAiIDogIiArICgoRUxpc3Q8T2JqZWN0PikgbykuZ2V0KGkpKTsKKwkJCQkJCX0KKwkJCQkJfSBlbHNlIHsKKwkJCQkJCXJlc3VsdC5hZGQoby50b1N0cmluZygpKTsKKwkJCQkJfQorCQkJCX0KKwkJCX0KKwkJfQorCQlyZXR1cm4gcmVzdWx0OworCX0KKworCS8qKgorCSAqIEZpbmQgYSBjbGFzcyB3aXRoIGEgZ2l2ZW4gbmFtZSBpbiB0aGUgbW9kZWwuCisJICovCisJc3RhdGljIHB1YmxpYyBvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyBmaW5kQ2xhc3NJbk1vZGVsKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsIG1vZGVsLCBTdHJpbmcgbmFtZSkgeworCQlmb3IgKEVsZW1lbnQgbmUgOiBtb2RlbC5nZXRPd25lZEVsZW1lbnRzKCkpIHsKKwkJCWlmIChuZSBpbnN0YW5jZW9mIE5hbWVkRWxlbWVudCkgeworCQkJCWlmIChuZSBpbnN0YW5jZW9mIG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSB7CisJCQkJCWlmICgoKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSBuZSkuZ2V0TmFtZSgpLmVxdWFscyhuYW1lKSkgeworCQkJCQkJcmV0dXJuIChvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykgbmU7CisJCQkJCX0KKwkJCQl9IGVsc2UgaWYgKG5lIGluc3RhbmNlb2Ygb3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZSkgeworCQkJCQlvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyByZXN1bHQgPSBmaW5kQ2xhc3NJblBhY2thZ2UoKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhY2thZ2UpIG5lLCBuYW1lKTsKKwkJCQkJaWYgKHJlc3VsdCAhPSBudWxsKSB7CisJCQkJCQlyZXR1cm4gcmVzdWx0OworCQkJCQl9CisJCQkJfQorCQkJfSBlbHNlIGlmIChuZSBpbnN0YW5jZW9mIE1vZGVsKSB7CisJCQkJb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgcmVzdWx0ID0gZmluZENsYXNzSW5Nb2RlbCgoTW9kZWwpIG5lLCBuYW1lKTsKKwkJCQlpZiAocmVzdWx0ICE9IG51bGwpIHsKKwkJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCQl9CisJCQl9CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogRmluZCBhIGNsYXNzIHdpdGggYSBnaXZlbiBuYW1lIGluIGEgcGFja2FnZS4KKwkgKi8KKwlzdGF0aWMgcHVibGljIG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzIGZpbmRDbGFzc0luUGFja2FnZShvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlIHBhY2ssIFN0cmluZyBuYW1lKSB7CisJCWZvciAoRWxlbWVudCBuZSA6IHBhY2suZ2V0T3duZWRFbGVtZW50cygpKSB7CisJCQlpZiAobmUgaW5zdGFuY2VvZiBOYW1lZEVsZW1lbnQpIHsKKwkJCQkvLyBTeXN0ZW0ub3V0LnByaW50bG4oKChOYW1lZEVsZW1lbnQpIG5lKS5nZXROYW1lKCkpOworCQkJCWlmIChuZSBpbnN0YW5jZW9mIG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSB7CisJCQkJCWlmICgoKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSBuZSkuZ2V0TmFtZSgpLmVxdWFscyhuYW1lKSkgeworCQkJCQkJcmV0dXJuIChvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykgbmU7CisJCQkJCX0KKwkJCQl9IGVsc2UgaWYgKG5lIGluc3RhbmNlb2Ygb3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZSkgeworCQkJCQlvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyByZXN1bHQgPSBmaW5kQ2xhc3NJblBhY2thZ2UoKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhY2thZ2UpIG5lLCBuYW1lKTsKKwkJCQkJaWYgKHJlc3VsdCAhPSBudWxsKSB7CisJCQkJCQlyZXR1cm4gcmVzdWx0OworCQkJCQl9CisJCQkJfQorCQkJfSBlbHNlIGlmIChuZSBpbnN0YW5jZW9mIE1vZGVsKSB7CisJCQkJb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgcmVzdWx0ID0gZmluZENsYXNzSW5Nb2RlbCgoTW9kZWwpIG5lLCBuYW1lKTsKKwkJCQlpZiAocmVzdWx0ICE9IG51bGwpIHsKKwkJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCQl9CisJCQl9CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogRGVidWcgZnVuY3Rpb24uIFByaW50cyBpbmZvIGFib3V0IGEgZ2l2ZW4gZGF0YXR5cGUuCisJICovCisJc3RhdGljIHB1YmxpYyB2b2lkIGluc3BlY3REYXRhVHlwZShEYXRhVHlwZSBkYXRhdHlwZSkgeworCQlqYXZhLmxhbmcuU3lzdGVtLm91dC5wcmludGxuKCJcdFx0KiBkYXRhIHR5cGU6ICIgKyBkYXRhdHlwZS5nZXROYW1lKCkpOworCX0KKworCS8qKgorCSAqIERlYnVnIGZ1bmN0aW9uLgorCSAqLworCXN0YXRpYyBwdWJsaWMgdm9pZCBpbnNwZWN0Q2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgY2wpIHsKKworCQkvLyBzdXBlciBjbGFzc2VzIG9mIHRoaXMgY2xhc3NlcworCQlqYXZhLmxhbmcuU3lzdGVtLm91dC5wcmludGxuKCJcdCogc3VwZXIgY2xhc3NlczogIiArIGNsLmdldFN1cGVyQ2xhc3NlcygpKTsKKworCQkvLyBzdGVyZW90eXBlcyBvZiB0aGlzIGNsYXNzCisJCWZvciAoU3RlcmVvdHlwZSBzdCA6IGNsLmdldEFwcGxpZWRTdGVyZW90eXBlcygpKSB7CisJCQlqYXZhLmxhbmcuU3lzdGVtLm91dC5wcmludGxuKCJcdCogYXBwbGllZCBzdGVyZW90eXBlOiAiICsgc3QuZ2V0TmFtZSgpKTsKKwkJfQorCisJCS8vIHByb3BlcnRpZXMgb2YgdGhpcyBjbGFzcworCQlmb3IgKFByb3BlcnR5IHByb3AgOiBjbC5nZXRBbGxBdHRyaWJ1dGVzKCkpIHsKKworCQkJamF2YS5sYW5nLlN5c3RlbS5vdXQucHJpbnRsbigiXHQqIHByb3BlcnR5OiAiICsgcHJvcC5nZXROYW1lKCkpOworCisJCQkvLyBUaGlzIGlzIGEgUG9ydAorCQkJaWYgKGlzUG9ydChwcm9wKSkgeworCQkJCWluc3BlY3RQb3J0KChQb3J0KSBwcm9wKTsKKwkJCX0gZWxzZSB7CisJCQkJVHlwZSBwcm9wVHlwZSA9IHByb3AuZ2V0VHlwZSgpOworCQkJCWlmIChpc0RhdGFUeXBlKHByb3BUeXBlKSkgeworCQkJCQlqYXZhLmxhbmcuU3lzdGVtLm91dC5wcmludGxuKCJcdFx0KiBwcm9wZXJ0eSByZWFkIGZyb20gc3RlcmVvdHlwZTogIiArIHByb3AuZ2V0TmFtZSgpKTsKKwkJCQl9IGVsc2UgaWYgKGlzQ2xhc3MocHJvcFR5cGUpKSB7CisJCQkJCWphdmEubGFuZy5TeXN0ZW0ub3V0LnByaW50bG4oIlx0XHQqIGNsYXNzIHN1YiBpbnN0YW5jZSA6ICIgKyBwcm9wVHlwZS5nZXROYW1lKCkgKyAiIC0gIiArIHByb3AuZ2V0VXBwZXIoKSArICIgLSAiICsgcHJvcC5nZXRMb3dlcigpKTsKKwkJCQl9IGVsc2UgeworCQkJCQlqYXZhLmxhbmcuU3lzdGVtLmVyci5wcmludGxuKCJVTktPTldOIFBST1BFUlRZIFRZUEUgISIpOworCQkJCX0KKwkJCX0KKwkJfQorCQlmb3IgKENvbm5lY3RvciBjb25uZWN0b3IgOiBjbC5nZXRPd25lZENvbm5lY3RvcnMoKSkgeworCQkJamF2YS5sYW5nLlN5c3RlbS5vdXQucHJpbnRsbigiXHQqIG93bmVkIGNvbm5lY3RvcjogIiArIGNvbm5lY3Rvci5nZXROYW1lKCkpOworCQkJZm9yIChDb25uZWN0b3JFbmQgY2VuZCA6IGNvbm5lY3Rvci5nZXRFbmRzKCkpIHsKKwkJCQlpZiAoKGNlbmQuZ2V0Um9sZSgpICE9IG51bGwpICYmIChjZW5kLmdldFBhcnRXaXRoUG9ydCgpICE9IG51bGwpKSB7CisJCQkJCWphdmEubGFuZy5TeXN0ZW0ub3V0LnByaW50bG4oIlx0XHQqIGZyb20gcHJvcGVydHk6ICIgKyBjZW5kLmdldFJvbGUoKS5nZXROYW1lKCkgKyAiIGluIGluc3RhbmNlICIgKyBjZW5kLmdldFBhcnRXaXRoUG9ydCgpLmdldE5hbWUoKSk7CisJCQkJfSBlbHNlIHsKKwkJCQkJamF2YS5sYW5nLlN5c3RlbS5lcnIucHJpbnRsbigiXHRcdCogVW5jb25uZWN0ZWQgUG9ydCAhIik7CisJCQkJCWphdmEubGFuZy5TeXN0ZW0ub3V0LnByaW50bG4oKTsKKwkJCQl9CisJCQl9CisJCX0KKwkJZm9yIChPcGVyYXRpb24gb3AgOiBjbC5nZXRBbGxPcGVyYXRpb25zKCkpIHsKKwkJCWphdmEubGFuZy5TeXN0ZW0ub3V0LnByaW50bG4oIlx0KiBvcGVyYXRpb246ICIgKyBvcC5nZXROYW1lKCkgKyAiIC0gZGF0YXR5cGU6ICIgKyBvcC5nZXREYXRhdHlwZSgpICsgIiAtIGludGVyZmFjZTogIiArIG9wLmdldEludGVyZmFjZSgpKTsKKwkJfQorCisJfQorCisKKwkvKioKKwkgKiBEZWJ1ZyBmdW5jdGlvbi4gUHJpbnRzIGluZm8gYWJvdXQgYSBnaXZlbiBwb3J0LgorCSAqLworCXN0YXRpYyBwdWJsaWMgdm9pZCBpbnNwZWN0UG9ydChQb3J0IHBvcnQpIHsKKwkJaWYgKEFyY2hpdGVjdHVyZVF1ZXJpZXMuaXNEYXRhRmxvd1BvcnQocG9ydCkpIHsKKwkJCUFyY2hpdGVjdHVyZVF1ZXJpZXMuaW5zcGVjdERhdGFGbG93UG9ydChwb3J0KTsKKwkJfSBlbHNlIGlmIChBcmNoaXRlY3R1cmVRdWVyaWVzLmlzU2VydmljZVBvcnQocG9ydCkpIHsKKwkJCUFyY2hpdGVjdHVyZVF1ZXJpZXMuaW5zcGVjdFNlcnZpY2VQb3J0KHBvcnQpOworCQl9IGVsc2UgeworCQkJamF2YS5sYW5nLlN5c3RlbS5lcnIucHJpbnRsbigiVU5LT05XTiBQT1JUICEiKTsKKwkJfQorCX0KKworCS8qKgorCSAqIEZvbmN0aW9uIGRlIHRlc3QgcG91ciBpbnNwZWN0ZXIgdW4gbW9k77+9bGUgVU1MMgorCSAqCisJICogQHBhcmFtIG1vZGVsCisJICogQHJldHVybgorCSAqLworCXN0YXRpYyBwdWJsaWMgQm9vbGVhbiBpbnNwZWN0TW9kZWwoTW9kZWwgbW9kZWwpIHsKKwkJdHJ5IHsKKwkJCS8vIG1vZGVsIG5hbWUKKwkJCWphdmEubGFuZy5TeXN0ZW0ub3V0LnByaW50bG4oIiogbW9kZWwgbmFtZTogIiArIG1vZGVsLmdldE5hbWUoKSk7CisKKwkJCS8vCisJCQkvLyBCaWJsaW90aMOocXVlIGRlIERhdGFUeXBlcyBzZXJhIGltcG9ydMOpZQorCQkJLy8KKwkJCWZvciAoUGFja2FnZWFibGVFbGVtZW50IGVsdCA6IG1vZGVsLmdldEltcG9ydGVkRWxlbWVudHMoKSkgeworCQkJCWphdmEubGFuZy5TeXN0ZW0ub3V0LnByaW50bG4oIiogbW9kZWwgaW1wb3J0ZWQgcGFja2FnZWFibGUgZWxlbWVudDogIiArIGVsdCk7CisJCQl9CisJCQkvLworCQkJLy8gUGV1dC3DqnRyZSA/CisJCQkvLworCQkJZm9yIChvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlIGVsdCA6IG1vZGVsLmdldEltcG9ydGVkUGFja2FnZXMoKSkgeworCQkJCWphdmEubGFuZy5TeXN0ZW0ub3V0LnByaW50bG4oIiogbW9kZWwgaW1wb3J0ZWQgcGFja2FnZTogIiArIGVsdCk7CisJCQl9CisJCQkvLworCQkJLy8gUsOpY3Vww6lyZXIgUGFja2FnZSBwYXIgUGFja2FnZSBzaSBwb3NzaWJsZSAoY2YgbcOpdGhvZG9sb2dpZSBPdXRpbCBSb2JvdE1MKQorCQkJLy8KKwkJCWZvciAob3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZSBlbHQgOiBtb2RlbC5nZXROZXN0ZWRQYWNrYWdlcygpKSB7CisJCQkJamF2YS5sYW5nLlN5c3RlbS5vdXQucHJpbnRsbigiKiBtb2RlbCBuZXN0ZWQgcGFja2FnZTogIiArIGVsdCk7CisJCQl9CisJCQkvLworCQkJLy8gUGFyY291cnMgZGVzIMOpbMOpbWVudHMgY29udGVudXMgZGFucyBsZSBtb2TDqGxlCisJCQkvLworCQkJZm9yIChOYW1lZEVsZW1lbnQgZWx0IDogbW9kZWwuZ2V0TWVtYmVycygpKSB7CisJCQkJamF2YS5sYW5nLlN5c3RlbS5vdXQucHJpbnRsbigiKiBtb2RlbCBtZW1iZXI6ICIgKyBlbHQuZ2V0TmFtZSgpKTsKKwkJCQlpZiAoaXNDbGFzcyhlbHQpKSB7CisJCQkJCWluc3BlY3RDbGFzcygob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIGVsdCk7CisJCQkJfSBlbHNlIGlmIChpc0RhdGFUeXBlKGVsdCkpIHsKKwkJCQkJaW5zcGVjdERhdGFUeXBlKChEYXRhVHlwZSkgZWx0KTsKKwkJCQl9IGVsc2UgaWYgKGlzSW50ZXJmYWNlKGVsdCkpIHsKKwkJCQkJamF2YS5sYW5nLlN5c3RlbS5vdXQucHJpbnRsbigiXHQqIGludGVyZmFjZSBkZWZpbml0aW9uIDogIiArIGVsdC5nZXROYW1lKCkpOworCisJCQkJfSBlbHNlIHsKKwkJCQkJamF2YS5sYW5nLlN5c3RlbS5lcnIucHJpbnRsbigiXHQqIHVua25vd24gZWxlbWVudDogIiArIGVsdCk7CisJCQkJfQorCisJCQl9CisKKwkJfSBjYXRjaCAoRXhjZXB0aW9uIGUpIHsKKwkJCWphdmEubGFuZy5TeXN0ZW0ub3V0LnByaW50bG4oZSk7CisJCQllLnByaW50U3RhY2tUcmFjZSgpOworCQl9CisJCXJldHVybiB0cnVlOworCX0KKworCS8qKgorCSAqIFN0cmluZyBtYW5pcHVsYXRpb24gZnVuY3Rpb24gOgorCSAqIHJlbW92ZSBicmFja2V0cyBmcm9tIGEgc3RyaW5nCisJICoKKwkgKiBAcGFyYW0gc3RyCisJICogQHJldHVybgorCSAqLworCXB1YmxpYyBTdHJpbmcgcmVtb3ZlQnJhY2tldHMoamF2YS5sYW5nLlN0cmluZyBzdHIpIHsKKwkJcmV0dXJuIHN0ci5yZXBsYWNlQWxsKCJbXFxbXFxdXSIsICIiKTsKKwl9Cit9CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5tdGwgYi9nZW5lcmF0b3JzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5tdGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGVkYzJmNAotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLm10bApAQCAtMCwwICsxLDg2IEBACitbY29tbWVudCBlbmNvZGluZyA9IFVURi04IC9dCitbY29tbWVudF0KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIFBST1RFVVMgUHJvamVjdCBjb25zb3J0aXVtLgorICoKKyAqICAgIAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgTmljb2xhcyBEVSBMQUMgKElOVEVNUE9SQSkgLSBJbml0aWFsIEFQSS4gCisgKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworWy9jb21tZW50XQorCitbbW9kdWxlIEdlbmVyYWxRdWVyaWVzKCdodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMy4wLjAvVU1MJywgJ2h0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMScpL10KKworW2NvbW1lbnRdIAorLSBEw6ljbGFyYXRpb24gZGUgZm9uY3Rpb24gamF2YSBwZXJtZXR0YW50IGQnaW50ZXJyb2dlciBsZSBtb2TDqGxlCistIENlcyBmb25jdGlvbnMgc29udCBpbXBsw6ltZW50w6llcyBkYW5zIGxlIGZpY2hpZXIgJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuR2VuZXJhbFF1ZXJpZXMnCitbL2NvbW1lbnRdCitbcXVlcnkgcHVibGljIGdldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUoZWx0IDogTW9kZWwsIHN0ZXJlb3R5cGUgOiBTdHJpbmcpIDogU2VxdWVuY2UoTmFtZWRFbGVtZW50KSA9CisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkdlbmVyYWxRdWVyaWVzJywgJ2dldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwsamF2YS5sYW5nLlN0cmluZyknLCBTZXF1ZW5jZXtlbHQsc3RlcmVvdHlwZX0pCisvXQorW3F1ZXJ5IHB1YmxpYyBnZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlKGNsYXNzIDogQ2xhc3MsIHN0ZXJlb3R5cGUgOiBTdHJpbmcpIDogU2VxdWVuY2UoTmFtZWRFbGVtZW50KSA9CisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkdlbmVyYWxRdWVyaWVzJywgJ2dldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwsamF2YS5sYW5nLlN0cmluZyknLCBTZXF1ZW5jZXtjbGFzcyxzdGVyZW90eXBlfSkKKy9dCitbcXVlcnkgcHVibGljIGdldEVsZW1lbnRzV2l0aEluaGVyaXRlZFN0ZXJlb3R5cGUoZWx0IDogTW9kZWwsIHN0ZXJlb3R5cGUgOiBTdHJpbmcpIDogU2VxdWVuY2UoTmFtZWRFbGVtZW50KSA9CisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkdlbmVyYWxRdWVyaWVzJywgJ2dldEVsZW1lbnRzV2l0aEluaGVyaXRlZFN0ZXJlb3R5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuTW9kZWwsamF2YS5sYW5nLlN0cmluZyknLCBTZXF1ZW5jZXtlbHQsc3RlcmVvdHlwZX0pCisvXQorW3F1ZXJ5IHB1YmxpYyBpbnNwZWN0TW9kZWwobW9kZWwgOiBNb2RlbCkgOiBCb29sZWFuID0gCisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkdlbmVyYWxRdWVyaWVzJywgJ2luc3BlY3RNb2RlbChvcmcuZWNsaXBzZS51bWwyLnVtbC5Nb2RlbCknLCBTZXF1ZW5jZXttb2RlbH0pIAorL10KK1txdWVyeSBwdWJsaWMgaW5zcGVjdENsYXNzKGVsdCA6IENsYXNzKSA6IEJvb2xlYW4gPSAKKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuR2VuZXJhbFF1ZXJpZXMnLCAnaW5zcGVjdENsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKScsIFNlcXVlbmNle2VsdH0pIAorL10KK1txdWVyeSBwdWJsaWMgaXNDbGFzcyhlbHQgOiBFbGVtZW50KSA6IEJvb2xlYW4gPSAKKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuR2VuZXJhbFF1ZXJpZXMnLCAnaXNDbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KScsIFNlcXVlbmNle2VsdH0pIAorL10KK1txdWVyeSBwdWJsaWMgaXNEYXRhVHlwZShlbHQgOiBFbGVtZW50KSA6IEJvb2xlYW4gPSAKKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuR2VuZXJhbFF1ZXJpZXMnLCAnaXNEYXRhVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KScsIFNlcXVlbmNle2VsdH0pIAorL10KK1txdWVyeSBwdWJsaWMgaXNJbnRlcmZhY2UoZWx0IDogRWxlbWVudCkgOiBCb29sZWFuID0gCisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkdlbmVyYWxRdWVyaWVzJywgJ2lzSW50ZXJmYWNlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpJywgU2VxdWVuY2V7ZWx0fSkgCisvXQorW3F1ZXJ5IHB1YmxpYyBpc1Byb3BlcnR5KGVsdCA6IEVsZW1lbnQpIDogQm9vbGVhbiA9IAorCWludm9rZSgnb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5HZW5lcmFsUXVlcmllcycsICdpc1Byb3BlcnR5KG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQpJywgU2VxdWVuY2V7ZWx0fSkgCisvXQorW3F1ZXJ5IHB1YmxpYyBpc1BvcnQoZWx0IDogRWxlbWVudCkgOiBCb29sZWFuID0gCisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkdlbmVyYWxRdWVyaWVzJywgJ2lzUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50KScsIFNlcXVlbmNle2VsdH0pIAorL10KK1txdWVyeSBwdWJsaWMgZ2V0Q29tcG9uZW50RmlsZU5hbWUoY2xhc3MgOiBDbGFzcywgZW5kIDogU3RyaW5nKSA6IFN0cmluZyA9IAorCWludm9rZSgnb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5HZW5lcmFsUXVlcmllcycsICdnZXRDb21wb25lbnRGaWxlTmFtZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyxqYXZhLmxhbmcuU3RyaW5nKScsIFNlcXVlbmNle2NsYXNzLGVuZH0pIAorL10KK1txdWVyeSBwdWJsaWMgZ2V0U3RlcmVvdHlwZShlbHQgOiBDbGFzcykgOiBTdHJpbmcgPSAKKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuR2VuZXJhbFF1ZXJpZXMnLCAnZ2V0U3RlcmVvdHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyknLCBTZXF1ZW5jZXtlbHR9KSAKKy9dCitbcXVlcnkgcHVibGljIGhhc1N0ZXJlb3R5cGUoZWx0IDogQ2xhc3MsIHMgOiBTdHJpbmcpIDogQm9vbGVhbiA9CisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkdlbmVyYWxRdWVyaWVzJywgJ2hhc1N0ZXJlb3R5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MsIGphdmEubGFuZy5TdHJpbmcpJywgU2VxdWVuY2V7ZWx0LHN9KSAKKy9dCitbcXVlcnkgcHVibGljIGluaGVyaXRzRnJvbShlbHQ6IENsYXNzLCBzdGVyZW90eXBlIDogU3RyaW5nKSA6IEJvb2xlYW4gPQorCWludm9rZSgnb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5HZW5lcmFsUXVlcmllcycsICdpbmhlcml0c0Zyb20ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MsIGphdmEubGFuZy5TdHJpbmcpJywgU2VxdWVuY2V7ZWx0LHN0ZXJlb3R5cGV9KSAKKy9dCitbcXVlcnkgcHVibGljIGdldFN0ZXJlb3R5cGVJbmhlcml0ZWRGcm9tKGVsdDogQ2xhc3MsIHN0ZXJlb3R5cGUgOiBTdHJpbmcpIDogU3RyaW5nID0KKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuR2VuZXJhbFF1ZXJpZXMnLCAnZ2V0U3RlcmVvdHlwZUluaGVyaXRlZEZyb20ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MsIGphdmEubGFuZy5TdHJpbmcpJywgU2VxdWVuY2V7ZWx0LHN0ZXJlb3R5cGV9KSAKKy9dCitbcXVlcnkgcHVibGljIGdldEF0dHJpYnV0ZVZhbHVlKGVsdCA6IENsYXNzLCBhdHRyIDogU3RyaW5nLCBzdGVyZW90eXBlIDogU3RyaW5nKSA6IFN0cmluZyA9CisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkdlbmVyYWxRdWVyaWVzJywgJ2dldEF0dHJpYnV0ZVZhbHVlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzLCBqYXZhLmxhbmcuU3RyaW5nLCBqYXZhLmxhbmcuU3RyaW5nKScsIFNlcXVlbmNle2VsdCxhdHRyLHN0ZXJlb3R5cGV9KSAKKy9dCitbcXVlcnkgcHVibGljIGdldEF0dHJpYnV0ZVZhbHVlKGVsdCA6IENsYXNzLCBhdHRyIDogU3RyaW5nLCBzdGVyZW90eXBlIDogU3RyaW5nLCBkZWZhdWx0VmFsdWUgOiBTdHJpbmcpIDogU3RyaW5nID0KKwlpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi5tbXF1ZXJpZXMuR2VuZXJhbFF1ZXJpZXMnLCAnZ2V0QXR0cmlidXRlVmFsdWUob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MsIGphdmEubGFuZy5TdHJpbmcsIGphdmEubGFuZy5TdHJpbmcsIGphdmEubGFuZy5TdHJpbmcpJywgU2VxdWVuY2V7ZWx0LGF0dHIsc3RlcmVvdHlwZSwgZGVmYXVsdFZhbHVlfSkgCisvXQorW3F1ZXJ5IHB1YmxpYyBnZXRBdHRyaWJ1dGVWYWx1ZXMoZWx0IDogQ2xhc3MsIGF0dHIgOiBTdHJpbmcsIHN0ZXJlb3R5cGUgOiBTdHJpbmcpIDogU2VxdWVuY2UoU3RyaW5nKSA9CisJaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkdlbmVyYWxRdWVyaWVzJywgJ2dldEF0dHJpYnV0ZVZhbHVlcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcywgamF2YS5sYW5nLlN0cmluZywgamF2YS5sYW5nLlN0cmluZyknLCBTZXF1ZW5jZXtlbHQsYXR0cixzdGVyZW90eXBlfSkgCisvXQorW3F1ZXJ5IHB1YmxpYyBmaW5kQ2xhc3NJbk1vZGVsKG1vZGVsIDogTW9kZWwsIG5hbWUgOiBTdHJpbmcpIDogQ2xhc3MgPQorCWludm9rZSgnb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5HZW5lcmFsUXVlcmllcycsICdmaW5kQ2xhc3NJbk1vZGVsKG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsLCBqYXZhLmxhbmcuU3RyaW5nKScsIFNlcXVlbmNle21vZGVsLG5hbWV9KSAKKy9dCitbcXVlcnkgcHVibGljIGdldEluc3RhbmNlTXVsdGlwbGljaXR5KGVsdCA6IFByb3BlcnR5KSA6IFN0cmluZyA9IAorCWludm9rZSgnb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5HZW5lcmFsUXVlcmllcycsICdnZXRJbnN0YW5jZU11bHRpcGxpY2l0eShvcmcuZWNsaXBzZS51bWwyLnVtbC5Qcm9wZXJ0eSknLCBTZXF1ZW5jZXtlbHR9KSAKKy9dCitbcXVlcnkgcHVibGljIHJlbW92ZUJyYWNrZXRzKHN0ciA6IFN0cmluZykgOiBTdHJpbmcgPQorCWludm9rZSgnb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllcy5HZW5lcmFsUXVlcmllcycsICdyZW1vdmVCcmFja2V0cyhqYXZhLmxhbmcuU3RyaW5nKScsIFNlcXVlbmNle3N0cn0pIAorL10KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL01NUXVlcmllcy5qYXZhIGIvZ2VuZXJhdG9ycy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvTU1RdWVyaWVzLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTQzMDQ3YwotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL01NUXVlcmllcy5qYXZhCkBAIC0wLDAgKzEsMjYxIEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDA4LCAyMDEwIE9iZW8uCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICAgICBPYmVvIC0gaW5pdGlhbCBBUEkgYW5kIGltcGxlbWVudGF0aW9uCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uLm1tcXVlcmllczsKKworaW1wb3J0IGphdmEuaW8uRmlsZTsKK2ltcG9ydCBqYXZhLmlvLklPRXhjZXB0aW9uOworaW1wb3J0IGphdmEudXRpbC5BcnJheUxpc3Q7CitpbXBvcnQgamF2YS51dGlsLkxpc3Q7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5hY2NlbGVvLmVuZ2luZS5ldmVudC5JQWNjZWxlb1RleHRHZW5lcmF0aW9uTGlzdGVuZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UuYWNjZWxlby5lbmdpbmUuZ2VuZXJhdGlvbi5zdHJhdGVneS5JQWNjZWxlb0dlbmVyYXRpb25TdHJhdGVneTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5hY2NlbGVvLmVuZ2luZS5zZXJ2aWNlLkFic3RyYWN0QWNjZWxlb0dlbmVyYXRvcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuQmFzaWNNb25pdG9yOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5Nb25pdG9yOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5VUkk7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnJlc291cmNlLlJlc291cmNlU2V0OworCisvKioKKyAqIEVudHJ5IHBvaW50IG9mIHRoZSAnTU1RdWVyaWVzJyBnZW5lcmF0aW9uIG1vZHVsZS4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBNTVF1ZXJpZXMgZXh0ZW5kcyBBYnN0cmFjdEFjY2VsZW9HZW5lcmF0b3IgeworCisJLyoqCisJICogVGhlIG5hbWUgb2YgdGhlIG1vZHVsZS4KKwkgKgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIFN0cmluZyBNT0RVTEVfRklMRV9OQU1FID0gIk1NUXVlcmllcyI7CisKKwkvKioKKwkgKiBUaGUgbmFtZSBvZiB0aGUgdGVtcGxhdGVzIHRoYXQgYXJlIHRvIGJlIGdlbmVyYXRlZC4KKwkgKgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIFN0cmluZ1tdIFRFTVBMQVRFX05BTUVTID0geyAiTU1RdWVyaWVzIiwgfTsKKworCS8qKgorCSAqIEFsbG93cyB0aGUgcHVibGljIGNvbnN0cnVjdG9yIHRvIGJlIHVzZWQuIE5vdGUgdGhhdCBhIGdlbmVyYXRvciBjcmVhdGVkCisJICogdGhpcyB3YXkgY2Fubm90IGJlIHVzZWQgdG8gbGF1bmNoIGdlbmVyYXRpb25zIGJlZm9yZSBvbmUgb2Yge0BsaW5rICNpbml0aWFsaXplKEVPYmplY3QsIEZpbGUsIExpc3QpfSBvciB7QGxpbmsgI2luaXRpYWxpemUoVVJJLCBGaWxlLCBMaXN0KX0gaXMKKwkgKiBjYWxsZWQuCisJICogPHA+CisJICogVGhlIG1haW4gcmVhc29uIGZvciB0aGlzIGNvbnN0cnVjdG9yIGlzIHRvIGFsbG93IGNsaWVudHMgb2YgdGhpcyBnZW5lcmF0aW9uIHRvIGNhbGwgaXQgZnJvbSBhbm90aGVyIEphdmEgZmlsZSwgYXMgaXQgYWxsb3dzIGZvciB0aGUgcmV0cmlldmFsIG9mIHtAbGluayAjZ2V0UHJvcGVydGllcygpfSBhbmQge0BsaW5rICNnZXRHZW5lcmF0aW9uTGlzdGVuZXJzKCl9LgorCSAqIDwvcD4KKwkgKgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTU1RdWVyaWVzKCkgeworCQkvLyBFbXB0eSBpbXBsZW1lbnRhdGlvbgorCX0KKworCS8qKgorCSAqIFRoaXMgYWxsb3dzIGNsaWVudHMgdG8gaW5zdGFudGlhdGVzIGEgZ2VuZXJhdG9yIHdpdGggYWxsIHJlcXVpcmVkIGluZm9ybWF0aW9uLgorCSAqCisJICogQHBhcmFtIG1vZGVsVVJJCisJICogICAgICAgICAgICBVUkkgd2hlcmUgdGhlIG1vZGVsIG9uIHdoaWNoIHRoaXMgZ2VuZXJhdG9yIHdpbGwgYmUgdXNlZCBpcyBsb2NhdGVkLgorCSAqIEBwYXJhbSB0YXJnZXRGb2xkZXIKKwkgKiAgICAgICAgICAgIFRoaXMgd2lsbCBiZSB1c2VkIGFzIHRoZSBvdXRwdXQgZm9sZGVyIGZvciB0aGlzIGdlbmVyYXRpb24gOiBpdCB3aWxsIGJlIHRoZSBiYXNlIHBhdGgKKwkgKiAgICAgICAgICAgIGFnYWluc3Qgd2hpY2ggYWxsIGZpbGUgYmxvY2sgVVJMcyB3aWxsIGJlIHJlc29sdmVkLgorCSAqIEBwYXJhbSBhcmd1bWVudHMKKwkgKiAgICAgICAgICAgIElmIHRoZSB0ZW1wbGF0ZSB3aGljaCB3aWxsIGJlIGNhbGxlZCByZXF1aXJlcyBtb3JlIHRoYW4gb25lIGFyZ3VtZW50IHRha2VuIGZyb20gdGhlIG1vZGVsLAorCSAqICAgICAgICAgICAgcGFzcyB0aGVtIGhlcmUuCisJICogQHRocm93cyBJT0V4Y2VwdGlvbgorCSAqICAgICAgICAgICAgIFRoaXMgY2FuIGJlIHRocm93biBpbiB0aHJlZSBzY2VuYXJpb3MgOiB0aGUgbW9kdWxlIGNhbm5vdCBiZSBmb3VuZCwgaXQgY2Fubm90IGJlIGxvYWRlZCwgb3IKKwkgKiAgICAgICAgICAgICB0aGUgbW9kZWwgY2Fubm90IGJlIGxvYWRlZC4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE1NUXVlcmllcyhVUkkgbW9kZWxVUkksIEZpbGUgdGFyZ2V0Rm9sZGVyLCBMaXN0PD8gZXh0ZW5kcyBPYmplY3Q+IGFyZ3VtZW50cykgdGhyb3dzIElPRXhjZXB0aW9uIHsKKwkJaW5pdGlhbGl6ZShtb2RlbFVSSSwgdGFyZ2V0Rm9sZGVyLCBhcmd1bWVudHMpOworCX0KKworCS8qKgorCSAqIFRoaXMgYWxsb3dzIGNsaWVudHMgdG8gaW5zdGFudGlhdGVzIGEgZ2VuZXJhdG9yIHdpdGggYWxsIHJlcXVpcmVkIGluZm9ybWF0aW9uLgorCSAqCisJICogQHBhcmFtIG1vZGVsCisJICogICAgICAgICAgICBXZSdsbCBpdGVyYXRlIG92ZXIgdGhlIGNvbnRlbnQgb2YgdGhpcyBlbGVtZW50IHRvIGZpbmQgT2JqZWN0cyBtYXRjaGluZyB0aGUgZmlyc3QgcGFyYW1ldGVyCisJICogICAgICAgICAgICBvZiB0aGUgdGVtcGxhdGUgd2UgbmVlZCB0byBjYWxsLgorCSAqIEBwYXJhbSB0YXJnZXRGb2xkZXIKKwkgKiAgICAgICAgICAgIFRoaXMgd2lsbCBiZSB1c2VkIGFzIHRoZSBvdXRwdXQgZm9sZGVyIGZvciB0aGlzIGdlbmVyYXRpb24gOiBpdCB3aWxsIGJlIHRoZSBiYXNlIHBhdGgKKwkgKiAgICAgICAgICAgIGFnYWluc3Qgd2hpY2ggYWxsIGZpbGUgYmxvY2sgVVJMcyB3aWxsIGJlIHJlc29sdmVkLgorCSAqIEBwYXJhbSBhcmd1bWVudHMKKwkgKiAgICAgICAgICAgIElmIHRoZSB0ZW1wbGF0ZSB3aGljaCB3aWxsIGJlIGNhbGxlZCByZXF1aXJlcyBtb3JlIHRoYW4gb25lIGFyZ3VtZW50IHRha2VuIGZyb20gdGhlIG1vZGVsLAorCSAqICAgICAgICAgICAgcGFzcyB0aGVtIGhlcmUuCisJICogQHRocm93cyBJT0V4Y2VwdGlvbgorCSAqICAgICAgICAgICAgIFRoaXMgY2FuIGJlIHRocm93biBpbiB0d28gc2NlbmFyaW9zIDogdGhlIG1vZHVsZSBjYW5ub3QgYmUgZm91bmQsIG9yIGl0IGNhbm5vdCBiZSBsb2FkZWQuCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBNTVF1ZXJpZXMoRU9iamVjdCBtb2RlbCwgRmlsZSB0YXJnZXRGb2xkZXIsIExpc3Q8PyBleHRlbmRzIE9iamVjdD4gYXJndW1lbnRzKSB0aHJvd3MgSU9FeGNlcHRpb24geworCQlpbml0aWFsaXplKG1vZGVsLCB0YXJnZXRGb2xkZXIsIGFyZ3VtZW50cyk7CisJfQorCisJLyoqCisJICogVGhpcyBjYW4gYmUgdXNlZCB0byBsYXVuY2ggdGhlIGdlbmVyYXRpb24gZnJvbSBhIHN0YW5kYWxvbmUgYXBwbGljYXRpb24uCisJICoKKwkgKiBAcGFyYW0gYXJncworCSAqICAgICAgICAgICAgQXJndW1lbnRzIG9mIHRoZSBnZW5lcmF0aW9uLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKSB7CisJCXRyeSB7CisJCQlpZiAoYXJncy5sZW5ndGggPCAyKSB7CisJCQkJU3lzdGVtLm91dC5wcmludGxuKCJBcmd1bWVudHMgbm90IHZhbGlkIDoge21vZGVsLCBmb2xkZXJ9LiIpOworCQkJfSBlbHNlIHsKKwkJCQlVUkkgbW9kZWxVUkkgPSBVUkkuY3JlYXRlRmlsZVVSSShhcmdzWzBdKTsKKwkJCQlGaWxlIGZvbGRlciA9IG5ldyBGaWxlKGFyZ3NbMV0pOworCQkJCUxpc3Q8U3RyaW5nPiBhcmd1bWVudHMgPSBuZXcgQXJyYXlMaXN0PFN0cmluZz4oKTsKKwkJCQlmb3IgKGludCBpID0gMjsgaSA8IGFyZ3MubGVuZ3RoOyBpKyspIHsKKwkJCQkJYXJndW1lbnRzLmFkZChhcmdzW2ldKTsKKwkJCQl9CisJCQkJTU1RdWVyaWVzIGdlbmVyYXRvciA9IG5ldyBNTVF1ZXJpZXMobW9kZWxVUkksIGZvbGRlciwgYXJndW1lbnRzKTsKKwkJCQlnZW5lcmF0b3IuZG9HZW5lcmF0ZShuZXcgQmFzaWNNb25pdG9yKCkpOworCQkJfQorCQl9IGNhdGNoIChJT0V4Y2VwdGlvbiBlKSB7CisJCQllLnByaW50U3RhY2tUcmFjZSgpOworCQl9CisJfQorCisJLyoqCisJICogTGF1bmNoZXMgdGhlIGdlbmVyYXRpb24gZGVzY3JpYmVkIGJ5IHRoaXMgaW5zdGFuY2UuCisJICoKKwkgKiBAcGFyYW0gbW9uaXRvcgorCSAqICAgICAgICAgICAgVGhpcyB3aWxsIGJlIHVzZWQgdG8gZGlzcGxheSBwcm9ncmVzcyBpbmZvcm1hdGlvbiB0byB0aGUgdXNlci4KKwkgKiBAdGhyb3dzIElPRXhjZXB0aW9uCisJICogICAgICAgICAgICAgVGhpcyB3aWxsIGJlIHRocm93biBpZiBhbnkgb2YgdGhlIG91dHB1dCBmaWxlcyBjYW5ub3QgYmUgc2F2ZWQgdG8gZGlzay4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZG9HZW5lcmF0ZShNb25pdG9yIG1vbml0b3IpIHRocm93cyBJT0V4Y2VwdGlvbiB7CisJCS8qCisJCSAqIFRPRE8gaWYgeW91IHdpc2ggdG8gY2hhbmdlIHRoZSBnZW5lcmF0aW9uIGFzIGEgd2hvbGUsIG92ZXJyaWRlIHRoaXMuCisJCSAqIFRoZSBkZWZhdWx0IGJlaGF2aW9yIHNob3VsZCBiZSBzdWZmaWNpZW50IGluIG1vc3QgY2FzZXMuCisJCSAqLworCQlzdXBlci5kb0dlbmVyYXRlKG1vbml0b3IpOworCX0KKworCS8qKgorCSAqIElmIHRoaXMgZ2VuZXJhdG9yIG5lZWRzIHRvIGxpc3RlbiB0byB0ZXh0IGdlbmVyYXRpb24gZXZlbnRzLCBsaXN0ZW5lcnMgY2FuIGJlIHJldHVybmVkIGZyb20gaGVyZS4KKwkgKgorCSAqIEByZXR1cm4gTGlzdCBvZiBsaXN0ZW5lcnMgdGhhdCBhcmUgdG8gYmUgbm90aWZpZWQgd2hlbiB0ZXh0IGlzIGdlbmVyYXRlZCB0aHJvdWdoIHRoaXMgbGF1bmNoLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTGlzdDxJQWNjZWxlb1RleHRHZW5lcmF0aW9uTGlzdGVuZXI+IGdldEdlbmVyYXRpb25MaXN0ZW5lcnMoKSB7CisJCUxpc3Q8SUFjY2VsZW9UZXh0R2VuZXJhdGlvbkxpc3RlbmVyPiBsaXN0ZW5lcnMgPSBzdXBlci5nZXRHZW5lcmF0aW9uTGlzdGVuZXJzKCk7CisJCS8vIFRPRE8gaWYgeW91IG5lZWQgdG8gbGlzdGVuIHRvIGdlbmVyYXRpb24gZXZlbnQsIGFkZCBsaXN0ZW5lcnMgdG8gdGhlIGxpc3QgaGVyZQorCQlyZXR1cm4gbGlzdGVuZXJzOworCX0KKworCS8qKgorCSAqIElmIHlvdSBuZWVkIHRvIGNoYW5nZSB0aGUgd2F5IGZpbGVzIGFyZSBnZW5lcmF0ZWQsIHRoaXMgaXMgeW91ciBlbnRyeSBwb2ludC4KKwkgKiA8cD4KKwkgKiBUaGUgZGVmYXVsdCBpcyB7QGxpbmsgb3JnLmVjbGlwc2UuYWNjZWxlby5lbmdpbmUuZ2VuZXJhdGlvbi5zdHJhdGVneS5EZWZhdWx0U3RyYXRlZ3l9OyBpdCBnZW5lcmF0ZXMgZmlsZXMgb24gdGhlIGZseS4gSWYgeW91IG9ubHkgbmVlZCB0byBwcmV2aWV3IHRoZSByZXN1bHRzLCByZXR1cm4gYSBuZXcge0BsaW5rIG9yZy5lY2xpcHNlLmFjY2VsZW8uZW5naW5lLmdlbmVyYXRpb24uc3RyYXRlZ3kuUHJldmlld1N0cmF0ZWd5fS4gQm90aCBvZgorCSAqIHRoZXNlIGFyZW4ndCBhd2FyZSBvZiB0aGUgcnVubmluZyBFY2xpcHNlIGFuZCBjYW4gYmUgdXNlZCBzdGFuZGFsb25lLgorCSAqIDwvcD4KKwkgKiA8cD4KKwkgKiBJZiB5b3UgbmVlZCB0aGUgZmlsZSBnZW5lcmF0aW9uIHRvIGJlIGF3YXJlIG9mIHRoZSB3b3Jrc3BhY2UgKEEgdHlwaWNhbCBleGFtcGxlIGlzIHdoZW4geW91IHdhbm5hIG92ZXJyaWRlIGZpbGVzIHRoYXQgYXJlIHVuZGVyIGNsZWFyIGNhc2Ugb3IgYW55IG90aGVyIFZDUyB0aGF0IGNvdWxkIGZvcmJpZCB0aGUgb3ZlcnJpZGluZyksIHRoZW4gcmV0dXJuIGEgbmV3CisJICoge0BsaW5rIG9yZy5lY2xpcHNlLmFjY2VsZW8uZW5naW5lLmdlbmVyYXRpb24uc3RyYXRlZ3kuV29ya3NwYWNlQXdhcmVTdHJhdGVneX0uIDxiPk5vdGU8L2I+LCBob3dldmVyLCB0aGF0IHRoaXMgPGI+Y2Fubm90PC9iPiBiZSB1c2VkIHN0YW5kYWxvbmUuCisJICogPC9wPgorCSAqIDxwPgorCSAqIEFsbCB0aHJlZSBvZiB0aGVzZSBkZWZhdWx0IHN0cmF0ZWdpZXMgc3VwcG9ydCBtZXJnaW5nIHRocm91Z2ggSk1lcmdlLgorCSAqIDwvcD4KKwkgKgorCSAqIEByZXR1cm4gVGhlIGdlbmVyYXRpb24gc3RyYXRlZ3kgdGhhdCBpcyB0byBiZSB1c2VkIGZvciBnZW5lcmF0aW9ucyBsYXVuY2hlZCB0aHJvdWdoIHRoaXMgbGF1bmNoZXIuCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBJQWNjZWxlb0dlbmVyYXRpb25TdHJhdGVneSBnZXRHZW5lcmF0aW9uU3RyYXRlZ3koKSB7CisJCXJldHVybiBzdXBlci5nZXRHZW5lcmF0aW9uU3RyYXRlZ3koKTsKKwl9CisKKwkvKioKKwkgKiBUaGlzIHdpbGwgYmUgY2FsbGVkIGluIG9yZGVyIHRvIGZpbmQgYW5kIGxvYWQgdGhlIG1vZHVsZSB0aGF0IHdpbGwgYmUgbGF1bmNoZWQgdGhyb3VnaCB0aGlzIGxhdW5jaGVyLgorCSAqIFdlIGV4cGVjdCB0aGlzIG5hbWUgbm90IHRvIGNvbnRhaW4gZmlsZSBleHRlbnNpb24sIGFuZCB0aGUgbW9kdWxlIHRvIGJlIGxvY2F0ZWQgYmVzaWRlIHRoZSBsYXVuY2hlci4KKwkgKgorCSAqIEByZXR1cm4gVGhlIG5hbWUgb2YgdGhlIG1vZHVsZSB0aGF0IGlzIHRvIGJlIGxhdW5jaGVkLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIGdldE1vZHVsZU5hbWUoKSB7CisJCXJldHVybiBNT0RVTEVfRklMRV9OQU1FOworCX0KKworCS8qKgorCSAqIElmIHRoZSBtb2R1bGUocykgY2FsbGVkIGJ5IHRoaXMgbGF1bmNoZXIgcmVxdWlyZSBwcm9wZXJ0aWVzIGZpbGVzLCByZXR1cm4gdGhlaXIgcXVhbGlmaWVkIHBhdGggZnJvbQorCSAqIGhlcmUuVGFrZSBub3RlIHRoYXQgdGhlIGZpcnN0IGFkZGVkIHByb3BlcnRpZXMgZmlsZXMgd2lsbCB0YWtlIHByZWNlZGVuY2Ugb3ZlciBzdWJzZXF1ZW50IG9uZXMgaWYgdGhleQorCSAqIGNvbnRhaW4gY29uZmxpY3Rpbmcga2V5cy4KKwkgKiA8cD4KKwkgKiBQcm9wZXJ0aWVzIG5lZWQgdG8gYmUgaW4gc291cmNlIGZvbGRlcnMsIHRoZSBwYXRoIHRoYXQgd2UgZXhwZWN0IHRvIGdldCBhcyBhIHJlc3VsdCBvZiB0aGlzIGNhbGwgYXJlIG9mIHRoZSBmb3JtICZsdDtwYWNrYWdlPi4mbHQ7cHJvcGVydGllcyBmaWxlIG5hbWUgd2l0aG91dCBleHRlbnNpb24+LiBGb3IgZXhhbXBsZSwgaWYgeW91IGhhdmUgYSBmaWxlIG5hbWVkICJtZXNzYWdlcy5wcm9wZXJ0aWVzIiBpbiBwYWNrYWdlCisJICogIm9yZy5lY2xpcHNlLmFjY2VsZW8uc2FtcGxlIiwgdGhlIHBhdGggdGhhdCBuZWVkcyBiZSByZXR1cm5lZCBieSBhIGNhbGwgdG8ge0BsaW5rICNnZXRQcm9wZXJ0aWVzKCl9IGlzICJvcmcuZWNsaXBzZS5hY2NlbGVvLnNhbXBsZS5tZXNzYWdlcyIuCisJICogPC9wPgorCSAqCisJICogQHJldHVybiBUaGUgbGlzdCBvZiBwcm9wZXJ0aWVzIGZpbGUgd2UgbmVlZCB0byBhZGQgdG8gdGhlIGdlbmVyYXRpb24gY29udGV4dC4KKwkgKiBAc2VlIGphdmEudXRpbC5SZXNvdXJjZUJ1bmRsZSNnZXRCdW5kbGUoU3RyaW5nKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTGlzdDxTdHJpbmc+IGdldFByb3BlcnRpZXMoKSB7CisJCUxpc3Q8U3RyaW5nPiBwcm9wZXJ0aWVzRmlsZXMgPSBzdXBlci5nZXRQcm9wZXJ0aWVzKCk7CisJCS8qCisJCSAqIFRPRE8gaWYgeW91ciBnZW5lcmF0aW9uIG1vZHVsZSByZXF1aXJlcyBhY2Nlc3MgdG8gcHJvcGVydGllcyBmaWxlcywKKwkJICogYWRkIHRoZWlyIHF1YWxpZmllZCBwYXRoIHRvIHRoZSBsaXN0IGhlcmUuIFByb3BlcnRpZXMgZmlsZXMgYXJlCisJCSAqIGV4cGVjdGVkIHRvIGJlIGluIHNvdXJjZSBmb2xkZXJzLCBhbmQgdGhlIHBhdGggaGVyZSB0byBiZSB0aGUKKwkJICogcXVhbGlmaWVkIHBhdGggYXMgaWYgcmVmZXJyaW5nIHRvIGEgSmF2YSBjbGFzcy4gRm9yIGV4YW1wbGUsIGlmIHlvdQorCQkgKiBoYXZlIGEgZmlsZSBuYW1lZCAibWVzc2FnZXMucHJvcGVydGllcyIgaW4gcGFja2FnZQorCQkgKiAib3JnLmVjbGlwc2UuYWNjZWxlby5zYW1wbGUiLCB0aGUgcGF0aCB0aGF0IG5lZWRzIGJlIGFkZGVkIHRvIHRoaXMKKwkJICogbGlzdCBpcyAib3JnLmVjbGlwc2UuYWNjZWxlby5zYW1wbGUubWVzc2FnZXMiLgorCQkgKi8KKwkJcmV0dXJuIHByb3BlcnRpZXNGaWxlczsKKwl9CisKKwkvKioKKwkgKiBUaGlzIHdpbGwgYmUgdXNlZCB0byBnZXQgdGhlIGxpc3Qgb2YgdGVtcGxhdGVzIHRoYXQgYXJlIHRvIGJlIGxhdW5jaGVkIGJ5IHRoaXMgbGF1bmNoZXIuCisJICoKKwkgKiBAcmV0dXJuIFRoZSBsaXN0IG9mIHRlbXBsYXRlcyB0byBjYWxsIG9uIHRoZSBtb2R1bGUge0BsaW5rICNnZXRNb2R1bGVOYW1lKCl9LgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nW10gZ2V0VGVtcGxhdGVOYW1lcygpIHsKKwkJcmV0dXJuIFRFTVBMQVRFX05BTUVTOworCX0KKworCS8qKgorCSAqIFRoaXMgY2FuIGJlIHVzZWQgdG8gdXBkYXRlIHRoZSByZXNvdXJjZSBzZXQncyBwYWNrYWdlIHJlZ2lzdHJ5IHdpdGggYWxsIG5lZWRlZCBFUGFja2FnZXMuCisJICoKKwkgKiBAcGFyYW0gcmVzb3VyY2VTZXQKKwkgKiAgICAgICAgICAgIFRoZSByZXNvdXJjZSBzZXQgd2hpY2ggcmVnaXN0cnkgaGFzIHRvIGJlIHVwZGF0ZWQuCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIHJlZ2lzdGVyUGFja2FnZXMoUmVzb3VyY2VTZXQgcmVzb3VyY2VTZXQpIHsKKwkJc3VwZXIucmVnaXN0ZXJQYWNrYWdlcyhyZXNvdXJjZVNldCk7CisJCXJlc291cmNlU2V0LmdldFBhY2thZ2VSZWdpc3RyeSgpLnB1dChvcmcuZWNsaXBzZS51bWwyLnVtbC5VTUxQYWNrYWdlLmVJTlNUQU5DRS5nZXROc1VSSSgpLCBvcmcuZWNsaXBzZS51bWwyLnVtbC5VTUxQYWNrYWdlLmVJTlNUQU5DRSk7CisJCS8vIFRPRE8gSWYgeW91IG5lZWQgYWRkaXRpb25hbCBwYWNrYWdlIHJlZ2lzdHJhdGlvbnMsIGRvIHRoZW0gaGVyZS4gVGhlIGZvbGxvd2luZyBsaW5lIGlzIGFuIGV4YW1wbGUgZm9yIFVNTC4KKwkJLy8gcmVzb3VyY2VTZXQuZ2V0UGFja2FnZVJlZ2lzdHJ5KCkucHV0KFVNTFBhY2thZ2UuZU5TX1VSSSwgVU1MUGFja2FnZS5lSU5TVEFOQ0UpOworCX0KKworCS8qKgorCSAqIFRoaXMgY2FuIGJlIHVzZWQgdG8gdXBkYXRlIHRoZSByZXNvdXJjZSBzZXQncyByZXNvdXJjZSBmYWN0b3J5IHJlZ2lzdHJ5IHdpdGggYWxsIG5lZWRlZCBmYWN0b3JpZXMuCisJICoKKwkgKiBAcGFyYW0gcmVzb3VyY2VTZXQKKwkgKiAgICAgICAgICAgIFRoZSByZXNvdXJjZSBzZXQgd2hpY2ggcmVnaXN0cnkgaGFzIHRvIGJlIHVwZGF0ZWQuCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIHJlZ2lzdGVyUmVzb3VyY2VGYWN0b3JpZXMoUmVzb3VyY2VTZXQgcmVzb3VyY2VTZXQpIHsKKwkJc3VwZXIucmVnaXN0ZXJSZXNvdXJjZUZhY3RvcmllcyhyZXNvdXJjZVNldCk7CisJCS8vIFRPRE8gSWYgeW91IG5lZWQgYWRkaXRpb25hbCByZXNvdXJjZSBmYWN0b3JpZXMgcmVnaXN0cmF0aW9ucywgZG8gdGhlbSBoZXJlLiBUaGUgZm9sbG93aW5nIGxpbmUgaXMgYW4gZXhhbXBsZSBmb3IgVU1MLgorCQkvLyByZXNvdXJjZVNldC5nZXRSZXNvdXJjZUZhY3RvcnlSZWdpc3RyeSgpLmdldEV4dGVuc2lvblRvRmFjdG9yeU1hcCgpLnB1dChVTUxSZXNvdXJjZS5GSUxFX0VYVEVOU0lPTiwgVU1MUmVzb3VyY2UuRmFjdG9yeS5JTlNUQU5DRSk7CisJfQorCit9CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL3BvbS54bWwgYi9nZW5lcmF0b3JzL3BvbS54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjE1MzBhOQotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvcG9tLnhtbApAQCAtMCwwICsxLDE1IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHByb2plY3Q+CisJPG1vZGVsVmVyc2lvbj40LjAuMDwvbW9kZWxWZXJzaW9uPgorCTxwYXJlbnQ+CisJCTxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5wYXJlbnQ8L2FydGlmYWN0SWQ+CisJCTxncm91cElkPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbDwvZ3JvdXBJZD4KKwkJPHZlcnNpb24+MS4yLjAtU05BUFNIT1Q8L3ZlcnNpb24+CisJPC9wYXJlbnQ+CisJPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnM8L2FydGlmYWN0SWQ+CisJPHBhY2thZ2luZz5wb208L3BhY2thZ2luZz4KKwk8bW9kdWxlcz4KKwkJPG1vZHVsZT5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb248L21vZHVsZT4KKwkJPG1vZHVsZT5ydG1hcHM8L21vZHVsZT4KKwk8L21vZHVsZXM+Cis8L3Byb2plY3Q+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvLnByb2plY3QgYi9nZW5lcmF0b3JzL3J0bWFwcy8ucHJvamVjdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mOTkxMGIwCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvLnByb2plY3QKQEAgLTAsMCArMSwxNyBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxwcm9qZWN0RGVzY3JpcHRpb24+CisJPG5hbWU+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMucnRtYXBzPC9uYW1lPgorCTxjb21tZW50PjwvY29tbWVudD4KKwk8cHJvamVjdHM+CisJPC9wcm9qZWN0cz4KKwk8YnVpbGRTcGVjPgorCQk8YnVpbGRDb21tYW5kPgorCQkJPG5hbWU+b3JnLmVjbGlwc2UubTJlLmNvcmUubWF2ZW4yQnVpbGRlcjwvbmFtZT4KKwkJCTxhcmd1bWVudHM+CisJCQk8L2FyZ3VtZW50cz4KKwkJPC9idWlsZENvbW1hbmQ+CisJPC9idWlsZFNwZWM+CisJPG5hdHVyZXM+CisJCTxuYXR1cmU+b3JnLmVjbGlwc2UubTJlLmNvcmUubWF2ZW4yTmF0dXJlPC9uYXR1cmU+CisJPC9uYXR1cmVzPgorPC9wcm9qZWN0RGVzY3JpcHRpb24+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL3J0bWFwcy8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuY29yZS5yZXNvdXJjZXMucHJlZnMgYi9nZW5lcmF0b3JzL3J0bWFwcy8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuY29yZS5yZXNvdXJjZXMucHJlZnMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTlmMjZjMAotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvcnRtYXBzLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5wcmVmcwpAQCAtMCwwICsxLDIgQEAKK2VjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCitlbmNvZGluZy88cHJvamVjdD49VVRGLTgKZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5tMmUuY29yZS5wcmVmcyBiL2dlbmVyYXRvcnMvcnRtYXBzLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5tMmUuY29yZS5wcmVmcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mODk3YTdmCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvLnNldHRpbmdzL29yZy5lY2xpcHNlLm0yZS5jb3JlLnByZWZzCkBAIC0wLDAgKzEsNCBAQAorYWN0aXZlUHJvZmlsZXM9CitlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQorcmVzb2x2ZVdvcmtzcGFjZVByb2plY3RzPXRydWUKK3ZlcnNpb249MQpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy51aS8uY2xhc3NwYXRoIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy51aS8uY2xhc3NwYXRoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc5ODA0OGQKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLnVpLy5jbGFzc3BhdGgKQEAgLTAsMCArMSw3IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPGNsYXNzcGF0aD4KKwk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLkpSRV9DT05UQUlORVIvb3JnLmVjbGlwc2UuamR0LmludGVybmFsLmRlYnVnLnVpLmxhdW5jaGVyLlN0YW5kYXJkVk1UeXBlL0oyU0UtMS41Ii8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UucGRlLmNvcmUucmVxdWlyZWRQbHVnaW5zIi8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9InNyYyIgcGF0aD0ic3JjLyIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJvdXRwdXQiIHBhdGg9InRhcmdldC9jbGFzc2VzIi8+Cis8L2NsYXNzcGF0aD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkvLnByb2plY3QgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLnVpLy5wcm9qZWN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJhNjhiNjAKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLnVpLy5wcm9qZWN0CkBAIC0wLDAgKzEsMzQgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8cHJvamVjdERlc2NyaXB0aW9uPgorCTxuYW1lPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWk8L25hbWU+CisJPGNvbW1lbnQ+PC9jb21tZW50PgorCTxwcm9qZWN0cz4KKwk8L3Byb2plY3RzPgorCTxidWlsZFNwZWM+CisJCTxidWlsZENvbW1hbmQ+CisJCQk8bmFtZT5vcmcuZWNsaXBzZS5qZHQuY29yZS5qYXZhYnVpbGRlcjwvbmFtZT4KKwkJCTxhcmd1bWVudHM+CisJCQk8L2FyZ3VtZW50cz4KKwkJPC9idWlsZENvbW1hbmQ+CisJCTxidWlsZENvbW1hbmQ+CisJCQk8bmFtZT5vcmcuZWNsaXBzZS5wZGUuTWFuaWZlc3RCdWlsZGVyPC9uYW1lPgorCQkJPGFyZ3VtZW50cz4KKwkJCTwvYXJndW1lbnRzPgorCQk8L2J1aWxkQ29tbWFuZD4KKwkJPGJ1aWxkQ29tbWFuZD4KKwkJCTxuYW1lPm9yZy5lY2xpcHNlLnBkZS5TY2hlbWFCdWlsZGVyPC9uYW1lPgorCQkJPGFyZ3VtZW50cz4KKwkJCTwvYXJndW1lbnRzPgorCQk8L2J1aWxkQ29tbWFuZD4KKwkJPGJ1aWxkQ29tbWFuZD4KKwkJCTxuYW1lPm9yZy5lY2xpcHNlLm0yZS5jb3JlLm1hdmVuMkJ1aWxkZXI8L25hbWU+CisJCQk8YXJndW1lbnRzPgorCQkJPC9hcmd1bWVudHM+CisJCTwvYnVpbGRDb21tYW5kPgorCTwvYnVpbGRTcGVjPgorCTxuYXR1cmVzPgorCQk8bmF0dXJlPm9yZy5lY2xpcHNlLm0yZS5jb3JlLm1hdmVuMk5hdHVyZTwvbmF0dXJlPgorCQk8bmF0dXJlPm9yZy5lY2xpcHNlLnBkZS5QbHVnaW5OYXR1cmU8L25hdHVyZT4KKwkJPG5hdHVyZT5vcmcuZWNsaXBzZS5qZHQuY29yZS5qYXZhbmF0dXJlPC9uYXR1cmU+CisJPC9uYXR1cmVzPgorPC9wcm9qZWN0RGVzY3JpcHRpb24+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLnVpLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5wcmVmcyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkvLnNldHRpbmdzL29yZy5lY2xpcHNlLmNvcmUucmVzb3VyY2VzLnByZWZzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk5ZjI2YzAKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLnVpLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5wcmVmcwpAQCAtMCwwICsxLDIgQEAKK2VjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCitlbmNvZGluZy88cHJvamVjdD49VVRGLTgKZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy51aS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjBlMmI1NAotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCkBAIC0wLDAgKzEsMTIgQEAKKyNUdWUgT2N0IDE4IDEwOjMwOjM0IENFU1QgMjAxMQorZWNsaXBzZS5wcmVmZXJlbmNlcy52ZXJzaW9uPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4uaW5saW5lSnNyQnl0ZWNvZGU9ZW5hYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi50YXJnZXRQbGF0Zm9ybT0xLjUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udW51c2VkTG9jYWw9cHJlc2VydmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvbXBsaWFuY2U9MS41CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5saW5lTnVtYmVyPWdlbmVyYXRlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5sb2NhbFZhcmlhYmxlPWdlbmVyYXRlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5zb3VyY2VGaWxlPWdlbmVyYXRlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmFzc2VydElkZW50aWZpZXI9ZXJyb3IKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW51bUlkZW50aWZpZXI9ZXJyb3IKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnNvdXJjZT0xLjUKZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkvLnNldHRpbmdzL29yZy5lY2xpcHNlLm0yZS5jb3JlLnByZWZzIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy51aS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UubTJlLmNvcmUucHJlZnMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjg5N2E3ZgotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkvLnNldHRpbmdzL29yZy5lY2xpcHNlLm0yZS5jb3JlLnByZWZzCkBAIC0wLDAgKzEsNCBAQAorYWN0aXZlUHJvZmlsZXM9CitlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQorcmVzb2x2ZVdvcmtzcGFjZVByb2plY3RzPXRydWUKK3ZlcnNpb249MQpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy51aS9NRVRBLUlORi9NQU5JRkVTVC5NRiBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkvTUVUQS1JTkYvTUFOSUZFU1QuTUYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGMxNWIzZQotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkvTUVUQS1JTkYvTUFOSUZFU1QuTUYKQEAgLTAsMCArMSwzNCBAQAorTWFuaWZlc3QtVmVyc2lvbjogMS4wCitSZXF1aXJlLUJ1bmRsZTogb3JnLmVjbGlwc2UudWksCisgb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLAorIG9yZy5lY2xpcHNlLmNvcmUucmVzb3VyY2VzLAorIG9yZy5lY2xpcHNlLmVtZi5lY29yZSwKKyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUueG1pLAorIG9yZy5lY2xpcHNlLm9jbCwKKyBvcmcuZWNsaXBzZS5vY2wuZWNvcmUsCisgb3JnLmVjbGlwc2UuYWNjZWxlby5tb2RlbCwKKyBvcmcuZWNsaXBzZS5hY2NlbGVvLmVuZ2luZSwKKyBvcmcuZWNsaXBzZS5nbWYucnVudGltZS5lbWYuY29tbWFuZHMuY29yZTtidW5kbGUtdmVyc2lvbj0iMS40LjAiLAorIG9yZy5lY2xpcHNlLmdtZi5ydW50aW1lLmNvbW1vbi51aTtidW5kbGUtdmVyc2lvbj0iMS41LjAiLAorIG9yZy5lY2xpcHNlLnBhcHlydXMuZWRpdG9yO2J1bmRsZS12ZXJzaW9uPSIxLjIuMCIsCisgb3JnLmVjbGlwc2UucGFweXJ1cy5pbmZyYS53aWRnZXRzO2J1bmRsZS12ZXJzaW9uPSIxLjIuMCIsCisgb3JnLmVjbGlwc2UucGFweXJ1cy51bWwubW9kZWxleHBsb3JlcjtidW5kbGUtdmVyc2lvbj0iMS4yLjAiLAorIG9yZy5lY2xpcHNlLnBhcHlydXMuaW5mcmEud2lkZ2V0cy50b29sYm94O2J1bmRsZS12ZXJzaW9uPSIxLjIuMCIsCisgb3JnLmVjbGlwc2UucGFweXJ1cy51bWwubW9kZWxleHBsb3Jlci53aWRnZXRzO2J1bmRsZS12ZXJzaW9uPSIxLjIuMCIsCisgb3JnLmVjbGlwc2UucGFweXJ1cy5pbmZyYS5jb3JlO2J1bmRsZS12ZXJzaW9uPSIxLjIuMCIsCisgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcztidW5kbGUtdmVyc2lvbj0iMS4yLjAiLAorIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbjtidW5kbGUtdmVyc2lvbj0iMS4yLjAiLAorIG9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MubW9kZWxleHBsb3JlcjtidW5kbGUtdmVyc2lvbj0iMS4yLjAiLAorIG9yZy5lY2xpcHNlLnBhcHlydXMuaW5mcmEuZW1mO2J1bmRsZS12ZXJzaW9uPSIxLjIuMCIsCisgb3JnLmVjbGlwc2UucGFweXJ1cy5pbmZyYS5jb3JlLmxvZztidW5kbGUtdmVyc2lvbj0iMS4yLjAiLAorIG9yZy5lY2xpcHNlLnBhcHlydXMuaW5mcmEuZ21mZGlhZy5jb21tYW5kcztidW5kbGUtdmVyc2lvbj0iMS4yLjAiLAorIG9yZy5lY2xpcHNlLnBhcHlydXMuZXh0ZW5zaW9ucG9pbnRzLmVkaXRvcnM7YnVuZGxlLXZlcnNpb249IjEuMi4wIgorQnVuZGxlLVZlbmRvcjogRWNsaXBzZSBNb2RlbGluZyBQcm9qZWN0CitFY2xpcHNlLUxhenlTdGFydDogdHJ1ZQorQnVuZGxlLUFjdGl2YXRpb25Qb2xpY3k6IGxhenkKK0J1bmRsZS1WZXJzaW9uOiAxLjIuMC5xdWFsaWZpZXIKK0J1bmRsZS1OYW1lOiBSb2JvdE1MIFJUTWFwcyBHZW5lcmF0b3IgTW9kdWxlIElERSBQbHVnLWluIChJbmN1YmF0aW9uKQorQnVuZGxlLUFjdGl2YXRvcjogb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy51aS5BY3RpdmF0b3IKK0J1bmRsZS1NYW5pZmVzdFZlcnNpb246IDIKK0J1bmRsZS1TeW1ib2xpY05hbWU6IG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWk7c2luZ2xldG9uOj10cnVlCitCdW5kbGUtUmVxdWlyZWRFeGVjdXRpb25FbnZpcm9ubWVudDogSjJTRS0xLjUKZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkvYWJvdXQuaHRtbCBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkvYWJvdXQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMTczMjFmCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy51aS9hYm91dC5odG1sCkBAIC0wLDAgKzEsMjggQEAKKzwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFN0cmljdC8vRU4iCisgICAgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXN0cmljdC5kdGQiPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorPGhlYWQ+Cis8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1JU08tODg1OS0xIi8+Cis8dGl0bGU+QWJvdXQ8L3RpdGxlPgorPC9oZWFkPgorPGJvZHkgbGFuZz0iRU4tVVMiPgorPGgyPkFib3V0IFRoaXMgQ29udGVudDwvaDI+CisgCis8cD5KdWx5IDIzLCAyMDEzPC9wPgkKKzxoMz5MaWNlbnNlPC9oMz4KKworPHA+VGhlIEVjbGlwc2UgRm91bmRhdGlvbiBtYWtlcyBhdmFpbGFibGUgYWxsIGNvbnRlbnQgaW4gdGhpcyBwbHVnLWluICgmcXVvdDtDb250ZW50JnF1b3Q7KS4gIFVubGVzcyBvdGhlcndpc2UgCitpbmRpY2F0ZWQgYmVsb3csIHRoZSBDb250ZW50IGlzIHByb3ZpZGVkIHRvIHlvdSB1bmRlciB0aGUgdGVybXMgYW5kIGNvbmRpdGlvbnMgb2YgdGhlCitFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMS4wICgmcXVvdDtFUEwmcXVvdDspLiAgQSBjb3B5IG9mIHRoZSBFUEwgaXMgYXZhaWxhYmxlIAorYXQgPGEgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwiPmh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sPC9hPi4KK0ZvciBwdXJwb3NlcyBvZiB0aGUgRVBMLCAmcXVvdDtQcm9ncmFtJnF1b3Q7IHdpbGwgbWVhbiB0aGUgQ29udGVudC48L3A+CisKKzxwPklmIHlvdSBkaWQgbm90IHJlY2VpdmUgdGhpcyBDb250ZW50IGRpcmVjdGx5IGZyb20gdGhlIEVjbGlwc2UgRm91bmRhdGlvbiwgdGhlIENvbnRlbnQgaXMgCitiZWluZyByZWRpc3RyaWJ1dGVkIGJ5IGFub3RoZXIgcGFydHkgKCZxdW90O1JlZGlzdHJpYnV0b3ImcXVvdDspIGFuZCBkaWZmZXJlbnQgdGVybXMgYW5kIGNvbmRpdGlvbnMgbWF5CithcHBseSB0byB5b3VyIHVzZSBvZiBhbnkgb2JqZWN0IGNvZGUgaW4gdGhlIENvbnRlbnQuICBDaGVjayB0aGUgUmVkaXN0cmlidXRvcidzIGxpY2Vuc2UgdGhhdCB3YXMgCitwcm92aWRlZCB3aXRoIHRoZSBDb250ZW50LiAgSWYgbm8gc3VjaCBsaWNlbnNlIGV4aXN0cywgY29udGFjdCB0aGUgUmVkaXN0cmlidXRvci4gIFVubGVzcyBvdGhlcndpc2UKK2luZGljYXRlZCBiZWxvdywgdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIG9mIHRoZSBFUEwgc3RpbGwgYXBwbHkgdG8gYW55IHNvdXJjZSBjb2RlIGluIHRoZSBDb250ZW50CithbmQgc3VjaCBzb3VyY2UgY29kZSBtYXkgYmUgb2J0YWluZWQgYXQgPGEgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy8iPmh0dHA6Ly93d3cuZWNsaXBzZS5vcmc8L2E+LjwvcD4KKworPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy51aS9idWlsZC5wcm9wZXJ0aWVzIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy51aS9idWlsZC5wcm9wZXJ0aWVzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE2MTE4ZDgKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLnVpL2J1aWxkLnByb3BlcnRpZXMKQEAgLTAsMCArMSwxMSBAQAorc291cmNlLi4gPSBzcmMvCitvdXRwdXQuLiA9IGJpbi8KK2Jpbi5pbmNsdWRlcyA9IE1FVEEtSU5GLyxcCisgICAgICAgICAgICAgICAuLFwKKyAgICAgICAgICAgICAgIHBsdWdpbi54bWwsXAorICAgICAgICAgICAgICAgaWNvbnMvLFwKKyAgICAgICAgICAgICAgIGFib3V0Lmh0bWwKK3NyYy5pbmNsdWRlcyA9IC5jbGFzc3BhdGgsXAorICAgICAgICAgICAgICAgYnVpbGQucHJvcGVydGllcyxcCisgICAgICAgICAgICAgICBhYm91dC5odG1sCisKZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkvaWNvbnMvZGVmYXVsdC5naWYgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLnVpL2ljb25zL2RlZmF1bHQuZ2lmCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZhMDRjNDkKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLnVpL2ljb25zL2RlZmF1bHQuZ2lmCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkvaWNvbnMvcnRtYXBzX2ljb24uZ2lmIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy51aS9pY29ucy9ydG1hcHNfaWNvbi5naWYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmYyYWNiYwotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkvaWNvbnMvcnRtYXBzX2ljb24uZ2lmCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkvcGx1Z2luLnhtbCBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkvcGx1Z2luLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iZjBlMDNlCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy51aS9wbHVnaW4ueG1sCkBAIC0wLDAgKzEsNjAgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8P2VjbGlwc2UgdmVyc2lvbj0iMy4yIj8+Cis8cGx1Z2luPgorICAgPGV4dGVuc2lvbiBwb2ludD0ib3JnLmVjbGlwc2UudWkucG9wdXBNZW51cyI+CisgICAgICA8b2JqZWN0Q29udHJpYnV0aW9uCisgICAgICAgICAgICBhZGFwdGFibGU9InRydWUiCisgICAgICAgICAgICBvYmplY3RDbGFzcz0ib3JnLmVjbGlwc2UuY29yZS5yZXNvdXJjZXMuSUZpbGUiCisgICAgICAgICAgICBuYW1lRmlsdGVyPSIqLnVtbCIKKyAgICAgICAgICAgIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLnVpLnBvcHVwTWVudXMuY29udHJpYnV0aW9uLklGaWxlIj4KKyAgICAgICAgIDxtZW51IGlkPSJvcmcuZWNsaXBzZS5hY2NlbGVvLm1vZHVsZS5tZW51IiBsYWJlbD0iUm9ib3RNTCBHZW5lcmF0b3JzIiBwYXRoPSJhZGRpdGlvbnNBY2NlbGVvIj4KKyAgICAgICAgICAgICAgIDxncm91cE1hcmtlciBuYW1lPSJhY2NlbGVvIi8+IAorICAgICAgICAgPC9tZW51PgorICAgICAgICAgPGFjdGlvbgorICAgICAgICAgICAgICAgY2xhc3M9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkucG9wdXBNZW51cy5BY2NlbGVvR2VuZXJhdGVSVE1hcHNBY3Rpb24iCisgICAgICAgICAgICAgICBlbmFibGVzRm9yPSIrIgorICAgICAgICAgICAgICAgaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkucG9wdXBNZW51cy5hY2NlbGVvR2VuZXJhdGVSVE1hcHNBY3Rpb24iCisgICAgICAgICAgICAgICBpY29uPSJpY29ucy9ydG1hcHNfaWNvbi5naWYiCisgICAgICAgICAgICAgICBsYWJlbD0iR2VuZXJhdGUgdG8gUlRNYXBzIgorICAgICAgICAgICAgICAgbWVudWJhclBhdGg9Im9yZy5lY2xpcHNlLmFjY2VsZW8ubW9kdWxlLm1lbnUvYWNjZWxlbyIvPgorICAgICAgPC9vYmplY3RDb250cmlidXRpb24+CisgICA8L2V4dGVuc2lvbj4KKyAgCisgICA8ZXh0ZW5zaW9uCisgICAgICAgICBwb2ludD0ib3JnLmVjbGlwc2UudWkubWVudXMiPgorICAgICAgPG1lbnVDb250cmlidXRpb24KKyAgICAgICAgICAgIGFsbFBvcHVwcz0idHJ1ZSIKKyAgICAgICAgICAgIGxvY2F0aW9uVVJJPSJwb3B1cDpvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90TUwubW9kZWxleHBsb3Jlci5wb3B1cG1lbnUuZ2VuZXJhdGUiPgorICAgICAgICAgPGNvbW1hbmQKKyAgICAgICAgICAgICAgIGNvbW1hbmRJZD0ib3JnLmVjbGlwc2Uucm9ib3RNTC5nZW5lcmF0ZVJUTWFwc0NvbW1hbmQiCisgICAgICAgICAgICAgICBpY29uPSJpY29ucy9ydG1hcHNfaWNvbi5naWYiCisgICAgICAgICAgICAgICBpZD0ib3JnLmVjbGlwc2Uucm9ib3RNTC5nZW5lcmF0ZVJUTWFwc0NvbW1hbmQiCisgICAgICAgICAgICAgICBsYWJlbD0iR2VuZXJhdGUgdG8gUlRNYXBzIgorICAgICAgICAgICAgICAgc3R5bGU9InB1c2giCisgICAgICAgICAgICAgICB0b29sdGlwPSJHZW5lcmF0ZSBjb2RlIHRvIFJUTWFwcyBtaWRkbGV3YXJlIj4KKyAgICAgICAgICAgIDwhLS12aXNpYmxlV2hlbj4KKwkJCQk8cmVmZXJlbmNlCisgICAgICAgICAgICAgICAgICAgICBkZWZpbml0aW9uSWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi5Jc1BhcHlydXNBY3RpdmVXaXRoUm9ib3RtbCI+CisgICAgICAgICAgICAgICA8L3JlZmVyZW5jZT4JCQkJCQkJCisJCQk8L3Zpc2libGVXaGVuLS0+CQkKKyAgICAgICAgIDwvY29tbWFuZD4KKyAgICAgIDwvbWVudUNvbnRyaWJ1dGlvbj4KKyAgIDwvZXh0ZW5zaW9uPgorICAgPGV4dGVuc2lvbgorICAgICAgICAgcG9pbnQ9Im9yZy5lY2xpcHNlLnVpLmNvbW1hbmRzIj4KKyAgICAgIDxjb21tYW5kCisgICAgICAgICAgICBjYXRlZ29yeUlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLmVkaXRvci5jYXRlZ29yeSIKKyAgICAgICAgICAgIGRlc2NyaXB0aW9uPSJHZW5lcmF0ZSB0byBSVE1hcHMgbWlkZGxld2FyZSIKKyAgICAgICAgICAgIGlkPSJvcmcuZWNsaXBzZS5yb2JvdE1MLmdlbmVyYXRlUlRNYXBzQ29tbWFuZCIKKyAgICAgICAgICAgIG5hbWU9IkdlbmVyYXRlIHRvIFJUTWFwcyI+CisgICAgICA8L2NvbW1hbmQ+CisgICA8L2V4dGVuc2lvbj4KKyAgIDxleHRlbnNpb24KKyAgICAgICAgIHBvaW50PSJvcmcuZWNsaXBzZS51aS5oYW5kbGVycyI+CisgICAgICA8aGFuZGxlcgorICAgICAgICAgICAgY2xhc3M9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkuaGFuZGxlci5BY2NlbGVvR2VuZXJhdGVSVE1hcHNDb21tYW5kSGFuZGxlciIKKyAgICAgICAgICAgIGNvbW1hbmRJZD0ib3JnLmVjbGlwc2Uucm9ib3RNTC5nZW5lcmF0ZVJUTWFwc0NvbW1hbmQiPgorICAgICAgPC9oYW5kbGVyPgorICAgPC9leHRlbnNpb24+CisgICAKKzwvcGx1Z2luPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy51aS9wb20ueG1sIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy51aS9wb20ueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA1MDA2OTEKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLnVpL3BvbS54bWwKQEAgLTAsMCArMSwxMSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxwcm9qZWN0PgorCTxtb2RlbFZlcnNpb24+NC4wLjA8L21vZGVsVmVyc2lvbj4KKwk8cGFyZW50PgorCQk8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5ydG1hcHM8L2FydGlmYWN0SWQ+CisJCTxncm91cElkPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbDwvZ3JvdXBJZD4KKwkJPHZlcnNpb24+MS4yLjAtU05BUFNIT1Q8L3ZlcnNpb24+CisJPC9wYXJlbnQ+CisJPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy51aTwvYXJ0aWZhY3RJZD4KKwk8cGFja2FnaW5nPmVjbGlwc2UtcGx1Z2luPC9wYWNrYWdpbmc+Cis8L3Byb2plY3Q+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy51aS9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy91aS9BY3RpdmF0b3IuamF2YSBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvdWkvQWN0aXZhdG9yLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWEwNTBhZgotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvdWkvQWN0aXZhdG9yLmphdmEKQEAgLTAsMCArMSw3NCBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAwOCwgMjAxMSBPYmVvLgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgICAgT2JlbyAtIGluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWk7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLmluZnJhLmNvcmUubG9nLkxvZ0hlbHBlcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS51aS5wbHVnaW4uQWJzdHJhY3RVSVBsdWdpbjsKK2ltcG9ydCBvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQ29udGV4dDsKKworLyoqCisgKiBUaGUgYWN0aXZhdG9yIGNsYXNzIGNvbnRyb2xzIHRoZSBwbHVnLWluIGxpZmUgY3ljbGUuCisgKi8KK3B1YmxpYyBjbGFzcyBBY3RpdmF0b3IgZXh0ZW5kcyBBYnN0cmFjdFVJUGx1Z2luIHsKKworCS8qKgorCSAqIFRoZSBwbHVnLWluIElELgorCSAqLworCXB1YmxpYyBzdGF0aWMgZmluYWwgU3RyaW5nIFBMVUdJTl9JRCA9ICJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLnVpIjsKKworCS8qKgorCSAqIFRoZSBzaGFyZWQgaW5zdGFuY2UuCisJICovCisJcHJpdmF0ZSBzdGF0aWMgQWN0aXZhdG9yIHBsdWdpbjsKKworCXB1YmxpYyBzdGF0aWMgTG9nSGVscGVyIGxvZzsKKworCS8qKgorCSAqIFRoZSBjb25zdHJ1Y3Rvci4KKwkgKi8KKwlwdWJsaWMgQWN0aXZhdG9yKCkgeworCX0KKworCS8qKgorCSAqIHtAaW5oZXJpdERvY30KKwkgKgorCSAqIEBzZWUgb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLlBsdWdpbiNzdGFydChvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQ29udGV4dCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgc3RhcnQoQnVuZGxlQ29udGV4dCBjb250ZXh0KSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJc3VwZXIuc3RhcnQoY29udGV4dCk7CisJCXBsdWdpbiA9IHRoaXM7CisJCWxvZyA9IG5ldyBMb2dIZWxwZXIodGhpcyk7CisJfQorCisJLyoqCisJICoge0Bpbmhlcml0RG9jfQorCSAqCisJICogQHNlZSBvcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWUuUGx1Z2luI3N0b3Aob3JnLm9zZ2kuZnJhbWV3b3JrLkJ1bmRsZUNvbnRleHQpCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIHN0b3AoQnVuZGxlQ29udGV4dCBjb250ZXh0KSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJcGx1Z2luID0gbnVsbDsKKwkJc3VwZXIuc3RvcChjb250ZXh0KTsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBzaGFyZWQgaW5zdGFuY2UuCisJICoKKwkgKiBAcmV0dXJuIHRoZSBzaGFyZWQgaW5zdGFuY2UKKwkgKi8KKwlwdWJsaWMgc3RhdGljIEFjdGl2YXRvciBnZXREZWZhdWx0KCkgeworCQlyZXR1cm4gcGx1Z2luOworCX0KKworfQpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy51aS9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy91aS9jb21tb24vR2VuZXJhdGVBbGwuamF2YSBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvdWkvY29tbW9uL0dlbmVyYXRlQWxsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDg5OTE0NAotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvdWkvY29tbW9uL0dlbmVyYXRlQWxsLmphdmEKQEAgLTAsMCArMSwxNDkgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMDgsIDIwMTEgT2Jlby4KKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogICAgIE9iZW8gLSBpbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLnVpLmNvbW1vbjsKKworaW1wb3J0IGphdmEuaW8uSU9FeGNlcHRpb247CitpbXBvcnQgamF2YS5uZXQuVVJMOworaW1wb3J0IGphdmEudXRpbC5BcnJheUxpc3Q7CitpbXBvcnQgamF2YS51dGlsLkVudW1lcmF0aW9uOworaW1wb3J0IGphdmEudXRpbC5MaXN0OworCitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5yZXNvdXJjZXMuSUNvbnRhaW5lcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWUuSVBhdGg7CitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLklQcm9ncmVzc01vbml0b3I7CitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLlBhdGg7CitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLlBsYXRmb3JtOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5CYXNpY01vbml0b3I7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLlVSSTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLkdlbmVyYXRlX3J0bWFwczsKK2ltcG9ydCBvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlOworCisvKioKKyAqIE1haW4gZW50cnkgcG9pbnQgb2YgdGhlICdSVE1hcHMnIGdlbmVyYXRpb24gbW9kdWxlLgorICovCitwdWJsaWMgY2xhc3MgR2VuZXJhdGVBbGwgeworCisJLyoqCisJICogVGhlIG1vZGVsIFVSSS4KKwkgKi8KKwlwcml2YXRlIFVSSSBtb2RlbFVSSTsKKworCS8qKgorCSAqIFRoZSBvdXRwdXQgZm9sZGVyLgorCSAqLworCXByaXZhdGUgSUNvbnRhaW5lciB0YXJnZXRGb2xkZXI7CisKKwkvKioKKwkgKiBUaGUgb3RoZXIgYXJndW1lbnRzLgorCSAqLworCUxpc3Q8PyBleHRlbmRzIE9iamVjdD4gYXJndW1lbnRzOworCisJLyoqCisJICogQ29uc3RydWN0b3IuCisJICoKKwkgKiBAcGFyYW0gbW9kZWxVUkkKKwkgKiAgICAgICAgICAgIGlzIHRoZSBVUkkgb2YgdGhlIG1vZGVsLgorCSAqIEBwYXJhbSB0YXJnZXRGb2xkZXIKKwkgKiAgICAgICAgICAgIGlzIHRoZSBvdXRwdXQgZm9sZGVyCisJICogQHBhcmFtIGFyZ3VtZW50cworCSAqICAgICAgICAgICAgYXJlIHRoZSBvdGhlciBhcmd1bWVudHMKKwkgKiBAdGhyb3dzIElPRXhjZXB0aW9uCisJICogICAgICAgICAgICAgVGhyb3duIHdoZW4gdGhlIG91dHB1dCBjYW5ub3QgYmUgc2F2ZWQuCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBHZW5lcmF0ZUFsbChVUkkgbW9kZWxVUkksIElDb250YWluZXIgdGFyZ2V0Rm9sZGVyLCBMaXN0PD8gZXh0ZW5kcyBPYmplY3Q+IGFyZ3VtZW50cykgeworCQl0aGlzLm1vZGVsVVJJID0gbW9kZWxVUkk7CisJCXRoaXMudGFyZ2V0Rm9sZGVyID0gdGFyZ2V0Rm9sZGVyOworCQl0aGlzLmFyZ3VtZW50cyA9IGFyZ3VtZW50czsKKwl9CisKKwkvKioKKwkgKiBMYXVuY2hlcyB0aGUgZ2VuZXJhdGlvbi4KKwkgKgorCSAqIEBwYXJhbSBtb25pdG9yCisJICogICAgICAgICAgICBUaGlzIHdpbGwgYmUgdXNlZCB0byBkaXNwbGF5IHByb2dyZXNzIGluZm9ybWF0aW9uIHRvIHRoZSB1c2VyLgorCSAqIEB0aHJvd3MgSU9FeGNlcHRpb24KKwkgKiAgICAgICAgICAgICBUaHJvd24gd2hlbiB0aGUgb3V0cHV0IGNhbm5vdCBiZSBzYXZlZC4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgZG9HZW5lcmF0ZShJUHJvZ3Jlc3NNb25pdG9yIG1vbml0b3IpIHRocm93cyBJT0V4Y2VwdGlvbiB7CisJCWlmICghdGFyZ2V0Rm9sZGVyLmdldExvY2F0aW9uKCkudG9GaWxlKCkuZXhpc3RzKCkpIHsKKwkJCXRhcmdldEZvbGRlci5nZXRMb2NhdGlvbigpLnRvRmlsZSgpLm1rZGlycygpOworCQl9CisKKwkJLy8gZmluYWwgVVJJIHRlbXBsYXRlMCA9IGdldFRlbXBsYXRlVVJJKCJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzIiwgbmV3IFBhdGgoIi9vcmcvZWNsaXBzZS9yb2JvdG1sL2dlbmVyYXRvcnMvYWNjZWxlby9ydG1hcHMvbWFpbi9nZW5lcmF0ZV9ydG1hcHMuZW10bCIpKTsKKwkJLy8gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy5tYWluLkdlbmVyYXRlX3J0bWFwcyBnZW4wID0gbmV3IG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMubWFpbi5HZW5lcmF0ZV9ydG1hcHMobW9kZWxVUkksIHRhcmdldEZvbGRlci5nZXRMb2NhdGlvbigpLnRvRmlsZSgpLCBhcmd1bWVudHMpIHsKKwkJLy8gcHJvdGVjdGVkIFVSSSBjcmVhdGVUZW1wbGF0ZVVSSShTdHJpbmcgZW50cnkpIHsKKwkJLy8gcmV0dXJuIHRlbXBsYXRlMDsKKwkJLy8gfQorCQkvLyB9OworCQkvLyBnZW4wLmRvR2VuZXJhdGUoQmFzaWNNb25pdG9yLnRvTW9uaXRvcihtb25pdG9yKSk7CisJCW1vbml0b3Iuc3ViVGFzaygiTG9hZGluZy4uLiIpOworCQlHZW5lcmF0ZV9ydG1hcHMgZ2VuMCA9IG5ldyBHZW5lcmF0ZV9ydG1hcHMobW9kZWxVUkksIHRhcmdldEZvbGRlci5nZXRMb2NhdGlvbigpLnRvRmlsZSgpLCBhcmd1bWVudHMpOworCQltb25pdG9yLndvcmtlZCgxKTsKKwkJU3RyaW5nIGdlbmVyYXRpb25JRCA9IG9yZy5lY2xpcHNlLmFjY2VsZW8uZW5naW5lLnV0aWxzLkFjY2VsZW9MYXVuY2hpbmdVdGlsLmNvbXB1dGVVSVByb2plY3RJRCgib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcyIsICJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLm1haW4uR2VuZXJhdGVfcnRtYXBzIiwKKwkJCQltb2RlbFVSSS50b1N0cmluZygpLCB0YXJnZXRGb2xkZXIuZ2V0RnVsbFBhdGgoKS50b1N0cmluZygpLCBuZXcgQXJyYXlMaXN0PFN0cmluZz4oKSk7CisJCWdlbjAuc2V0R2VuZXJhdGlvbklEKGdlbmVyYXRpb25JRCk7CisJCWdlbjAuZG9HZW5lcmF0ZShCYXNpY01vbml0b3IudG9Nb25pdG9yKG1vbml0b3IpKTsKKworCisJfQorCisJLyoqCisJICogRmluZHMgdGhlIHRlbXBsYXRlIGluIHRoZSBwbHVnLWluLiBSZXR1cm5zIHRoZSB0ZW1wbGF0ZSBwbHVnLWluIFVSSS4KKwkgKgorCSAqIEBwYXJhbSBidW5kbGVJRAorCSAqICAgICAgICAgICAgaXMgdGhlIHBsdWctaW4gSUQKKwkgKiBAcGFyYW0gcmVsYXRpdmVQYXRoCisJICogICAgICAgICAgICBpcyB0aGUgcmVsYXRpdmUgcGF0aCBvZiB0aGUgdGVtcGxhdGUgaW4gdGhlIHBsdWctaW4KKwkgKiBAcmV0dXJuIHRoZSB0ZW1wbGF0ZSBVUkkKKwkgKiBAdGhyb3dzIElPRXhjZXB0aW9uCisJICogQGdlbmVyYXRlZAorCSAqLworCUBTdXBwcmVzc1dhcm5pbmdzKHsgInVudXNlZCIgfSkKKwlwcml2YXRlIFVSSSBnZXRUZW1wbGF0ZVVSSShTdHJpbmcgYnVuZGxlSUQsIElQYXRoIHJlbGF0aXZlUGF0aCkgdGhyb3dzIElPRXhjZXB0aW9uIHsKKwkJQnVuZGxlIGJ1bmRsZSA9IFBsYXRmb3JtLmdldEJ1bmRsZShidW5kbGVJRCk7CisJCWlmIChidW5kbGUgPT0gbnVsbCkgeworCQkJLy8gbm8gbmVlZCB0byBnbyBhbnkgZnVydGhlcgorCQkJcmV0dXJuIFVSSS5jcmVhdGVQbGF0Zm9ybVJlc291cmNlVVJJKG5ldyBQYXRoKGJ1bmRsZUlEKS5hcHBlbmQocmVsYXRpdmVQYXRoKS50b1N0cmluZygpLCBmYWxzZSk7CisJCX0KKwkJVVJMIHVybCA9IGJ1bmRsZS5nZXRFbnRyeShyZWxhdGl2ZVBhdGgudG9TdHJpbmcoKSk7CisJCWlmICh1cmwgPT0gbnVsbCAmJiByZWxhdGl2ZVBhdGguc2VnbWVudENvdW50KCkgPiAxKSB7CisJCQlFbnVtZXJhdGlvbjxVUkw+IGVudHJpZXMgPSBidW5kbGUuZmluZEVudHJpZXMoIi8iLCAiKi5lbXRsIiwgdHJ1ZSk7CisJCQlpZiAoZW50cmllcyAhPSBudWxsKSB7CisJCQkJU3RyaW5nW10gc2VnbWVudHNSZWxhdGl2ZVBhdGggPSByZWxhdGl2ZVBhdGguc2VnbWVudHMoKTsKKwkJCQl3aGlsZSAodXJsID09IG51bGwgJiYgZW50cmllcy5oYXNNb3JlRWxlbWVudHMoKSkgeworCQkJCQlVUkwgZW50cnkgPSBlbnRyaWVzLm5leHRFbGVtZW50KCk7CisJCQkJCUlQYXRoIHBhdGggPSBuZXcgUGF0aChlbnRyeS5nZXRQYXRoKCkpOworCQkJCQlpZiAocGF0aC5zZWdtZW50Q291bnQoKSA+IHJlbGF0aXZlUGF0aC5zZWdtZW50Q291bnQoKSkgeworCQkJCQkJcGF0aCA9IHBhdGgucmVtb3ZlRmlyc3RTZWdtZW50cyhwYXRoLnNlZ21lbnRDb3VudCgpIC0gcmVsYXRpdmVQYXRoLnNlZ21lbnRDb3VudCgpKTsKKwkJCQkJfQorCQkJCQlTdHJpbmdbXSBzZWdtZW50c1BhdGggPSBwYXRoLnNlZ21lbnRzKCk7CisJCQkJCWJvb2xlYW4gZXF1YWxzID0gc2VnbWVudHNQYXRoLmxlbmd0aCA9PSBzZWdtZW50c1JlbGF0aXZlUGF0aC5sZW5ndGg7CisJCQkJCWZvciAoaW50IGkgPSAwOyBlcXVhbHMgJiYgaSA8IHNlZ21lbnRzUGF0aC5sZW5ndGg7IGkrKykgeworCQkJCQkJZXF1YWxzID0gc2VnbWVudHNQYXRoW2ldLmVxdWFscyhzZWdtZW50c1JlbGF0aXZlUGF0aFtpXSk7CisJCQkJCX0KKwkJCQkJaWYgKGVxdWFscykgeworCQkJCQkJdXJsID0gYnVuZGxlLmdldEVudHJ5KGVudHJ5LmdldFBhdGgoKSk7CisJCQkJCX0KKwkJCQl9CisJCQl9CisJCX0KKwkJVVJJIHJlc3VsdDsKKwkJaWYgKHVybCAhPSBudWxsKSB7CisJCQlyZXN1bHQgPSBVUkkuY3JlYXRlUGxhdGZvcm1QbHVnaW5VUkkobmV3IFBhdGgoYnVuZGxlSUQpLmFwcGVuZChuZXcgUGF0aCh1cmwuZ2V0UGF0aCgpKSkudG9TdHJpbmcoKSwgZmFsc2UpOworCQl9IGVsc2UgeworCQkJcmVzdWx0ID0gVVJJLmNyZWF0ZVBsYXRmb3JtUmVzb3VyY2VVUkkobmV3IFBhdGgoYnVuZGxlSUQpLmFwcGVuZChyZWxhdGl2ZVBhdGgpLnRvU3RyaW5nKCksIGZhbHNlKTsKKwkJfQorCQlyZXR1cm4gcmVzdWx0OworCX0KKworfQpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy51aS9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy91aS9oYW5kbGVyL0FjY2VsZW9HZW5lcmF0ZVJUTWFwc0NvbW1hbmRIYW5kbGVyLmphdmEgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLnVpL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL3VpL2hhbmRsZXIvQWNjZWxlb0dlbmVyYXRlUlRNYXBzQ29tbWFuZEhhbmRsZXIuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNzAxZTk3Ci0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy51aS9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy91aS9oYW5kbGVyL0FjY2VsZW9HZW5lcmF0ZVJUTWFwc0NvbW1hbmRIYW5kbGVyLmphdmEKQEAgLTAsMCArMSw5OSBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTEgQ0VBIExJU1QuCisgKgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBESE9VSUIgKENFQSBMSVNUKSAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy51aS5oYW5kbGVyOworCitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5jb21tYW5kcy5BYnN0cmFjdEhhbmRsZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5jb21tYW5kcy5FeGVjdXRpb25FdmVudDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5jb3JlLmNvbW1hbmRzLkV4ZWN1dGlvbkV4Y2VwdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWUuTnVsbFByb2dyZXNzTW9uaXRvcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuVVJJOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi50cmFuc2FjdGlvbi5UcmFuc2FjdGlvbmFsRWRpdGluZ0RvbWFpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5nbWYucnVudGltZS5jb21tb24uY29yZS5jb21tYW5kLklDb21tYW5kOworaW1wb3J0IG9yZy5lY2xpcHNlLmpmYWNlLnZpZXdlcnMuSVNlbGVjdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZmFjZS52aWV3ZXJzLklTdHJ1Y3R1cmVkU2VsZWN0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuaW5mcmEuY29yZS5zZXJ2aWNlcy5TZXJ2aWNlRXhjZXB0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuaW5mcmEuZW1mLnV0aWxzLkVNRkhlbHBlcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLmluZnJhLmVtZi51dGlscy5TZXJ2aWNlVXRpbHNGb3JFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkuQWN0aXZhdG9yOworaW1wb3J0IG9yZy5lY2xpcHNlLnVpLmhhbmRsZXJzLkhhbmRsZXJVdGlsOworCisKKworLy8gVE9ETzogQXV0by1nZW5lcmF0ZWQgSmF2YWRvYworLyoqCisgKiBUaGUgQ2xhc3MgQWNjZWxlb0dlbmVyYXRlUlRNYXBzQ29tbWFuZEhhbmRsZXIuCisgKi8KK3B1YmxpYyBjbGFzcyBBY2NlbGVvR2VuZXJhdGVSVE1hcHNDb21tYW5kSGFuZGxlciBleHRlbmRzIEFic3RyYWN0SGFuZGxlciB7CisKKwkvKiogVGhlIHJ0bWFwcyBmb2xkZXIuICovCisJcHJpdmF0ZSBmaW5hbCBTdHJpbmcgcnRtYXBzRm9sZGVyID0gInJ0bWFwcy1nZW5lcmF0ZWQtZmlsZXMiOworCisJLy8gLyoqCisJLy8gKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMubW9kZWxleHBsb3Jlci5oYW5kbGVyLkFic3RyYWN0Q29tbWFuZEhhbmRsZXIjZ2V0Q29tbWFuZCgpCisJLy8gKgorCS8vICogQHJldHVybgorCS8vICovCisJLy8KKwkvLyBAT3ZlcnJpZGUKKwkvLyBwcm90ZWN0ZWQgQ29tbWFuZCBnZXRDb21tYW5kKCkgeworCS8vIExpc3Q8RU9iamVjdD4gc2VsZWN0ZWRPYmplY3RzID0gZ2V0U2VsZWN0ZWRFbGVtZW50cygpOworCS8vIEVPYmplY3Qgc2VsZWN0ZWRFbGVtZW50ID0gZ2V0U2VsZWN0ZWRFbGVtZW50KCk7CisJLy8gTGlzdDw/PiBzZWxlY3Rpb24gPSBnZXRTZWxlY3Rpb24oKTsKKwkvLyBUcmFuc2FjdGlvbmFsRWRpdGluZ0RvbWFpbiBlZGl0aW5nRG9tYWluID0gZ2V0RWRpdGluZ0RvbWFpbigpOworCS8vIGlmICgoc2VsZWN0ZWRPYmplY3RzICE9IG51bGwpICYmIChzZWxlY3RlZE9iamVjdHMuc2l6ZSgpPjApKXsKKwkvLyBFT2JqZWN0IHNlbGVjdGVkT2JqZWN0ID0gc2VsZWN0ZWRPYmplY3RzLmdldCgwKTsKKwkvLyBVUkkgdGFyZ2V0Rm9sZGVyVVJJID0gc2VsZWN0ZWRPYmplY3QuZVJlc291cmNlKCkuZ2V0VVJJKCk7CisJLy8gaW50IGxhc3RpbmRleCA9IHRhcmdldEZvbGRlclVSSS50b1BsYXRmb3JtU3RyaW5nKGZhbHNlKS5sYXN0SW5kZXhPZigiLyIpOworCS8vIFN0cmluZyB0YXJnZXRQYXRoID0gdGFyZ2V0Rm9sZGVyVVJJLnRvUGxhdGZvcm1TdHJpbmcoZmFsc2UpLnN1YnN0cmluZygwLCBsYXN0aW5kZXgpOworCS8vIHJldHVybiBuZXcgb3JnLmVjbGlwc2UucGFweXJ1cy5jb21tYW5kcy53cmFwcGVycy5HTUZ0b0VNRkNvbW1hbmRXcmFwcGVyKG5ldyBHZW5lcmF0ZVJUTWFwc0NvZGVDb21tYW5kKCJHZW5lcmF0ZSBSVE1hcHMgY29kZSBjb21tYW5kIiwgZWRpdGluZ0RvbWFpbiwgc2VsZWN0ZWRPYmplY3QsIHRhcmdldFBhdGggKyBydG1hcHNGb2xkZXIpKTsKKwkvLyB9CisJLy8KKwkvLworCS8vIHJldHVybiBudWxsOworCS8vCisJLy8KKwkvLyB9CisKKwlwdWJsaWMgT2JqZWN0IGV4ZWN1dGUoRXhlY3V0aW9uRXZlbnQgZXZlbnQpIHRocm93cyBFeGVjdXRpb25FeGNlcHRpb24geworCQlJU2VsZWN0aW9uIHNlbGVjdGlvbiA9IEhhbmRsZXJVdGlsLmdldEN1cnJlbnRTZWxlY3Rpb24oZXZlbnQpOworCisJCWlmIChzZWxlY3Rpb24gaW5zdGFuY2VvZiBJU3RydWN0dXJlZFNlbGVjdGlvbikgeworCQkJSVN0cnVjdHVyZWRTZWxlY3Rpb24gc3RydWN0dXJlZFNlbGVjdGlvbiA9IChJU3RydWN0dXJlZFNlbGVjdGlvbikgc2VsZWN0aW9uOworCQkJRU9iamVjdCBzZWxlY3RlZEVsZW1lbnQgPSBFTUZIZWxwZXIuZ2V0RU9iamVjdChzdHJ1Y3R1cmVkU2VsZWN0aW9uLmdldEZpcnN0RWxlbWVudCgpKTsKKwkJCWlmIChzZWxlY3RlZEVsZW1lbnQgPT0gbnVsbCkgeworCQkJCXJldHVybiBudWxsOworCQkJfQorCisJCQlVUkkgcmVzb3VyY2VVUkkgPSBzZWxlY3RlZEVsZW1lbnQuZVJlc291cmNlKCkuZ2V0VVJJKCk7CisJCQkvLyBpbnQgbGFzdFNlZ21lbnQgPSByZXNvdXJjZVVSSS5zZWdtZW50Q291bnQoKSAtIDE7CisJCQlVUkkgdGFyZ2V0Rm9sZGVyVVJJID0gcmVzb3VyY2VVUkkudHJpbVNlZ21lbnRzKDEpLmFwcGVuZFNlZ21lbnQocnRtYXBzRm9sZGVyKTsKKworCQkJdHJ5IHsKKwkJCQlUcmFuc2FjdGlvbmFsRWRpdGluZ0RvbWFpbiBlZGl0aW5nRG9tYWluID0gU2VydmljZVV0aWxzRm9yRU9iamVjdC5nZXRJbnN0YW5jZSgpLmdldFRyYW5zYWN0aW9uYWxFZGl0aW5nRG9tYWluKHNlbGVjdGVkRWxlbWVudCk7CisKKwkJCQlJQ29tbWFuZCBnZW5lcmF0aW9uQ29tbWFuZCA9IG5ldyBHZW5lcmF0ZVJUTWFwc0NvZGVDb21tYW5kKCJHZW5lcmF0ZSBSVE1hcHMgY29kZSBjb21tYW5kIiwgZWRpdGluZ0RvbWFpbiwgc2VsZWN0ZWRFbGVtZW50LCB0YXJnZXRGb2xkZXJVUkkudG9QbGF0Zm9ybVN0cmluZyh0cnVlKSk7CisKKwkJCQlpZiAoZ2VuZXJhdGlvbkNvbW1hbmQuY2FuRXhlY3V0ZSgpKSB7CisJCQkJCWdlbmVyYXRpb25Db21tYW5kLmV4ZWN1dGUobmV3IE51bGxQcm9ncmVzc01vbml0b3IoKSwgbnVsbCk7CisJCQkJfQorCQkJfSBjYXRjaCAoU2VydmljZUV4Y2VwdGlvbiBleCkgeworCQkJCUFjdGl2YXRvci5sb2cuZXJyb3IoZXgpOworCQkJfQorCQl9CisKKwkJcmV0dXJuIG51bGw7CisJfQorCit9CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLnVpL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL3VpL2hhbmRsZXIvQWNjZWxlb1JUTWFwc0NvZGVHZW5lcmF0b3IuamF2YSBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvdWkvaGFuZGxlci9BY2NlbGVvUlRNYXBzQ29kZUdlbmVyYXRvci5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU2OWIyNmMKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLnVpL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL3VpL2hhbmRsZXIvQWNjZWxlb1JUTWFwc0NvZGVHZW5lcmF0b3IuamF2YQpAQCAtMCwwICsxLDgwIEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMSBDRUEgTElTVC4KKyAqCisgKgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgU2FhZGlhIERIT1VJQiAoQ0VBIExJU1QpIC0gSW5pdGlhbCBBUEkgYW5kIGltcGxlbWVudGF0aW9uCisgKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLnVpLmhhbmRsZXI7CisKK2ltcG9ydCBqYXZhLmlvLkZpbGU7CitpbXBvcnQgamF2YS5pby5JT0V4Y2VwdGlvbjsKK2ltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbnM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLmluZnJhLndpZGdldHMudG9vbGJveC5ub3RpZmljYXRpb24uVHlwZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLmluZnJhLndpZGdldHMudG9vbGJveC5ub3RpZmljYXRpb24uYnVpbGRlcnMuQ29tYmluZWRQb3B1cEFuZFZpZXdCdWlsZGVyOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuaW5mcmEud2lkZ2V0cy50b29sYm94Lm5vdGlmaWNhdGlvbi5idWlsZGVycy5Ob3RpZmljYXRpb25CdWlsZGVyOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuaW5mcmEud2lkZ2V0cy51dGlsLkZpbGVVdGlsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMuR2VuZXJhdGVfcnRtYXBzOworCisKKy8vIFRPRE86IEF1dG8tZ2VuZXJhdGVkIEphdmFkb2MKKy8qKgorICogVGhlIENsYXNzIEFjY2VsZW9SVE1hcHNDb2RlR2VuZXJhdG9yLgorICovCitwdWJsaWMgY2xhc3MgQWNjZWxlb1JUTWFwc0NvZGVHZW5lcmF0b3IgeworCisJLyoqIFRoZSBpbnB1dCBtb2RlbCBmb3IgdGhlIGFjY2VsZW8gZ2VuZXJhdG9yLiAqLworCXByaXZhdGUgRU9iamVjdCBnZW5lcmF0aW9uSW5wdXRNb2RlbDsKKworCS8qKiB0aGUgcnRtYXBzIHNvdXJjZSBmb2xkZXIuICovCisJcHJpdmF0ZSBGaWxlIHJ0bWFwc1RhcmdldEZvbGRlcjsKKworCS8qKgorCSAqIEluc3RhbnRpYXRlcyBhIG5ldyBhY2NlbGVvIHJ0IG1hcHMgY29kZSBnZW5lcmF0b3IuCisJICovCisJcHVibGljIEFjY2VsZW9SVE1hcHNDb2RlR2VuZXJhdG9yKCkgeworCQlzdXBlcigpOworCQkvLyBUT0RPIEF1dG8tZ2VuZXJhdGVkIGNvbnN0cnVjdG9yIHN0dWIKKwl9CisKKwkvKioKKwkgKiBSdW4gYWNjZWxlbyB0cmFuc2Zvcm1hdGlvbi4KKwkgKgorCSAqIEBwYXJhbSBnZW5lcmF0aW9uSW5wdXRNb2RlbAorCSAqICAgICAgICAgICAgdGhlIGdlbmVyYXRpb24gaW5wdXQgbW9kZWwKKwkgKiBAcGFyYW0gcnRtYXBzVGFyZ2V0Rm9sZGVyUGF0aAorCSAqICAgICAgICAgICAgdGhlIHJ0bWFwcyB0YXJnZXQgZm9sZGVyIHBhdGgKKwkgKi8KKwlwdWJsaWMgdm9pZCBydW5BY2NlbGVvVHJhbnNmb3JtYXRpb24oRU9iamVjdCBnZW5lcmF0aW9uSW5wdXRNb2RlbCwgU3RyaW5nIHJ0bWFwc1RhcmdldEZvbGRlclBhdGgpIHsKKwkJdGhpcy5nZW5lcmF0aW9uSW5wdXRNb2RlbCA9IGdlbmVyYXRpb25JbnB1dE1vZGVsOworCQl0aGlzLnJ0bWFwc1RhcmdldEZvbGRlciA9IG5ldyBGaWxlKHJ0bWFwc1RhcmdldEZvbGRlclBhdGgpOworCQlpZiAodGhpcy5nZW5lcmF0aW9uSW5wdXRNb2RlbCAhPSBudWxsICYmIHRoaXMucnRtYXBzVGFyZ2V0Rm9sZGVyICE9IG51bGwpIHsKKwkJCXRyeSB7CisKKwkJCQlGaWxlIHRhcmdldEZvbGRlciA9IEZpbGVVdGlsLmdldFdvcmtzcGFjZUZpbGUocnRtYXBzVGFyZ2V0Rm9sZGVyUGF0aCk7CisJCQkJaWYgKCF0YXJnZXRGb2xkZXIuZ2V0UGFyZW50RmlsZSgpLmV4aXN0cygpKSB7CisJCQkJCXRhcmdldEZvbGRlci5nZXRQYXJlbnRGaWxlKCkubWtkaXJzKCk7CisJCQkJfQorCQkJCS8vIEluc3RhbnRpYXRlIGEgbmV3IGFjY2VsZW8gZ2VuZXJhdG9yCisJCQkJR2VuZXJhdGVfcnRtYXBzIGdlbmVyYXRlID0gbmV3IEdlbmVyYXRlX3J0bWFwcyh0aGlzLmdlbmVyYXRpb25JbnB1dE1vZGVsLCB0YXJnZXRGb2xkZXIsIENvbGxlY3Rpb25zLkVNUFRZX0xJU1QpOworCisJCQkJZ2VuZXJhdGUuZG9HZW5lcmF0ZShudWxsKTsKKwkJCX0gY2F0Y2ggKElPRXhjZXB0aW9uIGUpIHsKKwkJCQkvLyBUT0RPIEF1dG8tZ2VuZXJhdGVkIGNhdGNoIGJsb2NrCisJCQkJZS5wcmludFN0YWNrVHJhY2UoKTsKKwkJCX0KKwkJfSBlbHNlIHsKKwkJCW5ldyBOb3RpZmljYXRpb25CdWlsZGVyKCkuc2V0QnVpbGRlckNsYXNzKENvbWJpbmVkUG9wdXBBbmRWaWV3QnVpbGRlci5jbGFzcykuc2V0VHlwZShUeXBlLkVSUk9SKS5zZXRUaXRsZSgiQWNjZWxlbyBnZW5yYXRpb24gZXJyb3IiKS5zZXRNZXNzYWdlKCJZb3UgaGF2ZSB0byBzZXQgdGhlIHBhcmFtZXRlcnMgb2YgdGhlIGdlbmVyYXRpb24iKS5ydW4oKTsKKwkJfQorCisJfQorCit9CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLnVpL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL3VpL2hhbmRsZXIvR2VuZXJhdGVSVE1hcHNDb2RlQ29tbWFuZC5qYXZhIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy51aS9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy91aS9oYW5kbGVyL0dlbmVyYXRlUlRNYXBzQ29kZUNvbW1hbmQuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mNWFkYzc2Ci0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy51aS9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy91aS9oYW5kbGVyL0dlbmVyYXRlUlRNYXBzQ29kZUNvbW1hbmQuamF2YQpAQCAtMCwwICsxLDEyMiBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTEgQ0VBIExJU1QuCisgKgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBESE9VSUIgKENFQSBMSVNUKSAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy51aS5oYW5kbGVyOworCitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb25zOworCitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5jb21tYW5kcy5FeGVjdXRpb25FeGNlcHRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLklBZGFwdGFibGU7CitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLklQcm9ncmVzc01vbml0b3I7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLnRyYW5zYWN0aW9uLlRyYW5zYWN0aW9uYWxFZGl0aW5nRG9tYWluOworaW1wb3J0IG9yZy5lY2xpcHNlLmdtZi5ydW50aW1lLmNvbW1vbi5jb3JlLmNvbW1hbmQuQ29tbWFuZFJlc3VsdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5nbWYucnVudGltZS5lbWYuY29tbWFuZHMuY29yZS5jb21tYW5kLkFic3RyYWN0VHJhbnNhY3Rpb25hbENvbW1hbmQ7CitpbXBvcnQgb3JnLmVjbGlwc2Uuc3d0LndpZGdldHMuU2hlbGw7CitpbXBvcnQgb3JnLmVjbGlwc2UudWkuUGxhdGZvcm1VSTsKKworCisvLyBUT0RPOiBBdXRvLWdlbmVyYXRlZCBKYXZhZG9jCisvKioKKyAqIFRoZSBDbGFzcyBHZW5lcmF0ZVJUTWFwc0NvZGVDb21tYW5kLgorICovCitwdWJsaWMgY2xhc3MgR2VuZXJhdGVSVE1hcHNDb2RlQ29tbWFuZCBleHRlbmRzIEFic3RyYWN0VHJhbnNhY3Rpb25hbENvbW1hbmQgeworCisJLyoqIFRoZSB0cmFuc2FjdGlvbmFsIGVkaXRpb24gZG9tYWluLiAqLworCXByaXZhdGUgZmluYWwgVHJhbnNhY3Rpb25hbEVkaXRpbmdEb21haW4gZG9tYWluOworCisJLyoqIFRoZSBzZWxlY3RlZCBlbGVtZW50LiAqLworCXByaXZhdGUgZmluYWwgRU9iamVjdCBzZWxlY3RlZEVsZW1lbnQ7CisKKwkvKiogVGhlIHJ0bWFwcyB0YXJnZXQgZm9sZGVyIHBhdGguICovCisJcHJpdmF0ZSBmaW5hbCBTdHJpbmcgcnRtYXBzVGFyZ2V0Rm9sZGVyUGF0aDsKKworCisJLyoqCisJICogSW5zdGFudGlhdGVzIGEgbmV3IGdlbmVyYXRlIHJ0IG1hcHMgY29kZSBjb21tYW5kLgorCSAqCisJICogQHBhcmFtIGxhYmVsCisJICogICAgICAgICAgICB0aGUgbGFiZWwKKwkgKiBAcGFyYW0gZG9tYWluCisJICogICAgICAgICAgICB0aGUgZG9tYWluCisJICogQHBhcmFtIHNlbGVjdGVkRWxlbWVudAorCSAqICAgICAgICAgICAgdGhlIHNlbGVjdGVkIGVsZW1lbnQKKwkgKiBAcGFyYW0gcnRtYXBzVGFyZ2V0Rm9sZGVyUGF0aAorCSAqICAgICAgICAgICAgdGhlIHJ0bWFwcyB0YXJnZXQgZm9sZGVyIHBhdGgKKwkgKi8KKwlwdWJsaWMgR2VuZXJhdGVSVE1hcHNDb2RlQ29tbWFuZChTdHJpbmcgbGFiZWwsIFRyYW5zYWN0aW9uYWxFZGl0aW5nRG9tYWluIGRvbWFpbiwgRU9iamVjdCBzZWxlY3RlZEVsZW1lbnQsIFN0cmluZyBydG1hcHNUYXJnZXRGb2xkZXJQYXRoKSB7CisJCXN1cGVyKGRvbWFpbiwgbGFiZWwsIENvbGxlY3Rpb25zLkVNUFRZX0xJU1QpOworCQl0aGlzLmRvbWFpbiA9IGRvbWFpbjsKKwkJdGhpcy5zZWxlY3RlZEVsZW1lbnQgPSBzZWxlY3RlZEVsZW1lbnQ7CisJCXRoaXMucnRtYXBzVGFyZ2V0Rm9sZGVyUGF0aCA9IHJ0bWFwc1RhcmdldEZvbGRlclBhdGg7CisJfQorCisKKwkvKioKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLmdtZi5ydW50aW1lLmVtZi5jb21tYW5kcy5jb3JlLmNvbW1hbmQuQWJzdHJhY3RUcmFuc2FjdGlvbmFsQ29tbWFuZCNkb0V4ZWN1dGVXaXRoUmVzdWx0KG9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5JUHJvZ3Jlc3NNb25pdG9yLCBvcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWUuSUFkYXB0YWJsZSkKKwkgKgorCSAqIEBwYXJhbSBtb25pdG9yCisJICogQHBhcmFtIGluZm8KKwkgKiBAcmV0dXJuCisJICogQHRocm93cyBFeGVjdXRpb25FeGNlcHRpb24KKwkgKi8KKworCUBPdmVycmlkZQorCXByb3RlY3RlZCBDb21tYW5kUmVzdWx0IGRvRXhlY3V0ZVdpdGhSZXN1bHQoSVByb2dyZXNzTW9uaXRvciBtb25pdG9yLCBJQWRhcHRhYmxlIGluZm8pIHRocm93cyBFeGVjdXRpb25FeGNlcHRpb24geworCQkvLyBUT0RPIEF1dG8tZ2VuZXJhdGVkIG1ldGhvZCBzdHViCisKKworCQkvLyBTeXN0ZW0uZXJyLnByaW50bG4oIk1vZGVsIEV4bG9yZXIgZ2VuZXJhdGlvbiBtZW51IFJUTWFwcyIpOworCisJCVNoZWxsIHNoZWxsID0gUGxhdGZvcm1VSS5nZXRXb3JrYmVuY2goKS5nZXRBY3RpdmVXb3JrYmVuY2hXaW5kb3coKS5nZXRTaGVsbCgpOworCQkvLyBmaW5hbCBQcm9ncmVzc01vbml0b3JEaWFsb2cgbW9uaXRvcmRpYWxvZyA9IG5ldyBQcm9ncmVzc01vbml0b3JEaWFsb2coc2hlbGwpOworCQlBY2NlbGVvUlRNYXBzQ29kZUdlbmVyYXRvciBjb2RlR2VuZXJhdG9yID0gbmV3IEFjY2VsZW9SVE1hcHNDb2RlR2VuZXJhdG9yKCk7CisJCWNvZGVHZW5lcmF0b3IucnVuQWNjZWxlb1RyYW5zZm9ybWF0aW9uKHNlbGVjdGVkRWxlbWVudCwgcnRtYXBzVGFyZ2V0Rm9sZGVyUGF0aCk7CisJCS8qCisJCSAqIHRyeSB7CisJCSAqCisJCSAqIG1vbml0b3JkaWFsb2cucnVuKHRydWUsIHRydWUsIG5ldyBJUnVubmFibGVXaXRoUHJvZ3Jlc3MoKSB7CisJCSAqCisJCSAqCisJCSAqIHB1YmxpYyB2b2lkIHJ1bihJUHJvZ3Jlc3NNb25pdG9yIG1vbml0b3IpCisJCSAqIHRocm93cyBJbnZvY2F0aW9uVGFyZ2V0RXhjZXB0aW9uLCBJbnRlcnJ1cHRlZEV4Y2VwdGlvbiB7CisJCSAqIG1vbml0b3IuYmVnaW5UYXNrKCJHZW5lcmF0aW5nIEFjY2VsZW8gZmlsZXMiLCAxMDApOworCQkgKiBBY2NlbGVvUlRNYXBzQ29kZUdlbmVyYXRvciBjb2RlR2VuZXJhdG9yID0gbmV3IEFjY2VsZW9SVE1hcHNDb2RlR2VuZXJhdG9yKCk7CisJCSAqIGNvZGVHZW5lcmF0b3IucnVuQWNjZWxlb1RyYW5zZm9ybWF0aW9uKHNlbGVjdGVkRWxlbWVudCwgcnRtYXBzVGFyZ2V0Rm9sZGVyUGF0aCk7CisJCSAqIG1vbml0b3IuZG9uZSgpOworCQkgKiB9CisJCSAqCisJCSAqIH0pOworCQkgKgorCQkgKiB9IGNhdGNoIChJbnZvY2F0aW9uVGFyZ2V0RXhjZXB0aW9uIGUpIHsKKwkJICogLy8gVE9ETyBBdXRvLWdlbmVyYXRlZCBjYXRjaCBibG9jaworCQkgKiBlLnByaW50U3RhY2tUcmFjZSgpOworCQkgKiB9IGNhdGNoIChJbnRlcnJ1cHRlZEV4Y2VwdGlvbiBlKSB7CisJCSAqIC8vIFRPRE8gQXV0by1nZW5lcmF0ZWQgY2F0Y2ggYmxvY2sKKwkJICogZS5wcmludFN0YWNrVHJhY2UoKTsKKwkJICogfQorCQkgKi8KKworCisJCXJldHVybiBDb21tYW5kUmVzdWx0Lm5ld09LQ29tbWFuZFJlc3VsdCgpOworCX0KKworCS8qKgorCSAqIHtAaW5oZXJpdERvY30KKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBjYW5FeGVjdXRlKCkgeworCisJCXJldHVybiAoc2VsZWN0ZWRFbGVtZW50ICE9IG51bGwgJiYgcnRtYXBzVGFyZ2V0Rm9sZGVyUGF0aCAhPSBudWxsICYmIGRvbWFpbiAhPSBudWxsKTsKKwl9Cit9CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLnVpL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL3VpL3BvcHVwTWVudXMvQWNjZWxlb0dlbmVyYXRlUlRNYXBzQWN0aW9uLmphdmEgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLnVpL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL3VpL3BvcHVwTWVudXMvQWNjZWxlb0dlbmVyYXRlUlRNYXBzQWN0aW9uLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzkwNjliNgotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvdWkvcG9wdXBNZW51cy9BY2NlbGVvR2VuZXJhdGVSVE1hcHNBY3Rpb24uamF2YQpAQCAtMCwwICsxLDExNyBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAwOCwgMjAxMSBPYmVvLgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgICAgT2JlbyAtIGluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkucG9wdXBNZW51czsKKworaW1wb3J0IGphdmEuaW8uSU9FeGNlcHRpb247CitpbXBvcnQgamF2YS5sYW5nLnJlZmxlY3QuSW52b2NhdGlvblRhcmdldEV4Y2VwdGlvbjsKK2ltcG9ydCBqYXZhLnV0aWwuQXJyYXlMaXN0OworaW1wb3J0IGphdmEudXRpbC5JdGVyYXRvcjsKK2ltcG9ydCBqYXZhLnV0aWwuTGlzdDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmNvcmUucmVzb3VyY2VzLklDb250YWluZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5yZXNvdXJjZXMuSUZpbGU7CitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5yZXNvdXJjZXMuSVJlc291cmNlOworaW1wb3J0IG9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5Db3JlRXhjZXB0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5JUHJvZ3Jlc3NNb25pdG9yOworaW1wb3J0IG9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5JU3RhdHVzOworaW1wb3J0IG9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5TdGF0dXM7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLlVSSTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZmFjZS5hY3Rpb24uSUFjdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZmFjZS5vcGVyYXRpb24uSVJ1bm5hYmxlV2l0aFByb2dyZXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmpmYWNlLnZpZXdlcnMuSVNlbGVjdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZmFjZS52aWV3ZXJzLklTdHJ1Y3R1cmVkU2VsZWN0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkuQWN0aXZhdG9yOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMudWkuY29tbW9uLkdlbmVyYXRlQWxsOworaW1wb3J0IG9yZy5lY2xpcHNlLnVpLklBY3Rpb25EZWxlZ2F0ZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51aS5QbGF0Zm9ybVVJOworaW1wb3J0IG9yZy5lY2xpcHNlLnVpLmFjdGlvbnMuQWN0aW9uRGVsZWdhdGU7CisKKy8qKgorICogUlRNYXBzIGNvZGUgZ2VuZXJhdGlvbi4KKyAqLworcHVibGljIGNsYXNzIEFjY2VsZW9HZW5lcmF0ZVJUTWFwc0FjdGlvbiBleHRlbmRzIEFjdGlvbkRlbGVnYXRlIGltcGxlbWVudHMgSUFjdGlvbkRlbGVnYXRlIHsKKworCS8qKgorCSAqIFNlbGVjdGVkIG1vZGVsIGZpbGVzLgorCSAqLworCXByb3RlY3RlZCBMaXN0PElGaWxlPiBmaWxlczsKKworCS8qKgorCSAqIHtAaW5oZXJpdERvY30KKwkgKgorCSAqIEBzZWUgb3JnLmVjbGlwc2UudWkuYWN0aW9ucy5BY3Rpb25EZWxlZ2F0ZSNzZWxlY3Rpb25DaGFuZ2VkKG9yZy5lY2xpcHNlLmpmYWNlLmFjdGlvbi5JQWN0aW9uLCBvcmcuZWNsaXBzZS5qZmFjZS52aWV3ZXJzLklTZWxlY3Rpb24pCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCUBTdXBwcmVzc1dhcm5pbmdzKCJ1bmNoZWNrZWQiKQorCXB1YmxpYyB2b2lkIHNlbGVjdGlvbkNoYW5nZWQoSUFjdGlvbiBhY3Rpb24sIElTZWxlY3Rpb24gc2VsZWN0aW9uKSB7CisJCWlmIChzZWxlY3Rpb24gaW5zdGFuY2VvZiBJU3RydWN0dXJlZFNlbGVjdGlvbikgeworCQkJZmlsZXMgPSAoKElTdHJ1Y3R1cmVkU2VsZWN0aW9uKSBzZWxlY3Rpb24pLnRvTGlzdCgpOworCQl9CisJfQorCisJLyoqCisJICoge0Bpbmhlcml0RG9jfQorCSAqCisJICogQHNlZSBvcmcuZWNsaXBzZS51aS5hY3Rpb25zLkFjdGlvbkRlbGVnYXRlI3J1bihvcmcuZWNsaXBzZS5qZmFjZS5hY3Rpb24uSUFjdGlvbikKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgcnVuKElBY3Rpb24gYWN0aW9uKSB7CisJCWlmIChmaWxlcyAhPSBudWxsKSB7CisJCQlJUnVubmFibGVXaXRoUHJvZ3Jlc3Mgb3BlcmF0aW9uID0gbmV3IElSdW5uYWJsZVdpdGhQcm9ncmVzcygpIHsKKworCQkJCXB1YmxpYyB2b2lkIHJ1bihJUHJvZ3Jlc3NNb25pdG9yIG1vbml0b3IpIHsKKwkJCQkJdHJ5IHsKKwkJCQkJCUl0ZXJhdG9yPElGaWxlPiBmaWxlc0l0ID0gZmlsZXMuaXRlcmF0b3IoKTsKKwkJCQkJCXdoaWxlIChmaWxlc0l0Lmhhc05leHQoKSkgeworCQkJCQkJCUlGaWxlIG1vZGVsID0gZmlsZXNJdC5uZXh0KCk7CisJCQkJCQkJVVJJIG1vZGVsVVJJID0gVVJJLmNyZWF0ZVBsYXRmb3JtUmVzb3VyY2VVUkkobW9kZWwuZ2V0RnVsbFBhdGgoKS50b1N0cmluZygpLCB0cnVlKTsKKwkJCQkJCQl0cnkgeworCQkJCQkJCQlJQ29udGFpbmVyIHRhcmdldCA9IG1vZGVsLmdldFByb2plY3QoKS5nZXRGb2xkZXIoInJ0bWFwcy1nZW5lcmF0ZWQtZmlsZXMiKTsKKwkJCQkJCQkJR2VuZXJhdGVBbGwgZ2VuZXJhdG9yID0gbmV3IEdlbmVyYXRlQWxsKG1vZGVsVVJJLCB0YXJnZXQsIGdldEFyZ3VtZW50cygpKTsKKwkJCQkJCQkJZ2VuZXJhdG9yLmRvR2VuZXJhdGUobW9uaXRvcik7CisJCQkJCQkJfSBjYXRjaCAoSU9FeGNlcHRpb24gZSkgeworCQkJCQkJCQlJU3RhdHVzIHN0YXR1cyA9IG5ldyBTdGF0dXMoSVN0YXR1cy5FUlJPUiwgQWN0aXZhdG9yLlBMVUdJTl9JRCwgZS5nZXRNZXNzYWdlKCksIGUpOworCQkJCQkJCQlBY3RpdmF0b3IuZ2V0RGVmYXVsdCgpLmdldExvZygpLmxvZyhzdGF0dXMpOworCQkJCQkJCX0gZmluYWxseSB7CisJCQkJCQkJCW1vZGVsLmdldFByb2plY3QoKS5yZWZyZXNoTG9jYWwoSVJlc291cmNlLkRFUFRIX0lORklOSVRFLCBtb25pdG9yKTsKKwkJCQkJCQl9CisJCQkJCQl9CisJCQkJCX0gY2F0Y2ggKENvcmVFeGNlcHRpb24gZSkgeworCQkJCQkJSVN0YXR1cyBzdGF0dXMgPSBuZXcgU3RhdHVzKElTdGF0dXMuRVJST1IsIEFjdGl2YXRvci5QTFVHSU5fSUQsIGUuZ2V0TWVzc2FnZSgpLCBlKTsKKwkJCQkJCUFjdGl2YXRvci5nZXREZWZhdWx0KCkuZ2V0TG9nKCkubG9nKHN0YXR1cyk7CisJCQkJCX0KKwkJCQl9CisJCQl9OworCQkJdHJ5IHsKKwkJCQlQbGF0Zm9ybVVJLmdldFdvcmtiZW5jaCgpLmdldFByb2dyZXNzU2VydmljZSgpLnJ1bih0cnVlLCB0cnVlLCBvcGVyYXRpb24pOworCQkJfSBjYXRjaCAoSW52b2NhdGlvblRhcmdldEV4Y2VwdGlvbiBlKSB7CisJCQkJSVN0YXR1cyBzdGF0dXMgPSBuZXcgU3RhdHVzKElTdGF0dXMuRVJST1IsIEFjdGl2YXRvci5QTFVHSU5fSUQsIGUuZ2V0TWVzc2FnZSgpLCBlKTsKKwkJCQlBY3RpdmF0b3IuZ2V0RGVmYXVsdCgpLmdldExvZygpLmxvZyhzdGF0dXMpOworCQkJfSBjYXRjaCAoSW50ZXJydXB0ZWRFeGNlcHRpb24gZSkgeworCQkJCUlTdGF0dXMgc3RhdHVzID0gbmV3IFN0YXR1cyhJU3RhdHVzLkVSUk9SLCBBY3RpdmF0b3IuUExVR0lOX0lELCBlLmdldE1lc3NhZ2UoKSwgZSk7CisJCQkJQWN0aXZhdG9yLmdldERlZmF1bHQoKS5nZXRMb2coKS5sb2coc3RhdHVzKTsKKwkJCX0KKwkJfQorCX0KKworCS8qKgorCSAqIENvbXB1dGVzIHRoZSBhcmd1bWVudHMgb2YgdGhlIGdlbmVyYXRvci4KKwkgKgorCSAqIEByZXR1cm4gdGhlIGFyZ3VtZW50cworCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgTGlzdDw/IGV4dGVuZHMgT2JqZWN0PiBnZXRBcmd1bWVudHMoKSB7CisJCXJldHVybiBuZXcgQXJyYXlMaXN0PFN0cmluZz4oKTsKKwl9CisKK30KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvLmNsYXNzcGF0aCBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvLmNsYXNzcGF0aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43OTgwNDhkCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy8uY2xhc3NwYXRoCkBAIC0wLDAgKzEsNyBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxjbGFzc3BhdGg+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KMlNFLTEuNSIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLnBkZS5jb3JlLnJlcXVpcmVkUGx1Z2lucyIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJzcmMiIHBhdGg9InNyYy8iLz4KKwk8Y2xhc3NwYXRoZW50cnkga2luZD0ib3V0cHV0IiBwYXRoPSJ0YXJnZXQvY2xhc3NlcyIvPgorPC9jbGFzc3BhdGg+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLy5wcm9qZWN0IGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy8ucHJvamVjdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xY2FhZjEyCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy8ucHJvamVjdApAQCAtMCwwICsxLDUyIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHByb2plY3REZXNjcmlwdGlvbj4KKwk8bmFtZT5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzPC9uYW1lPgorCTxjb21tZW50PjwvY29tbWVudD4KKwk8cHJvamVjdHM+CisJPC9wcm9qZWN0cz4KKwk8YnVpbGRTcGVjPgorCQk8YnVpbGRDb21tYW5kPgorCQkJPG5hbWU+b3JnLmVjbGlwc2UuamR0LmNvcmUuamF2YWJ1aWxkZXI8L25hbWU+CisJCQk8YXJndW1lbnRzPgorCQkJPC9hcmd1bWVudHM+CisJCTwvYnVpbGRDb21tYW5kPgorCQk8YnVpbGRDb21tYW5kPgorCQkJPG5hbWU+b3JnLmVjbGlwc2UuYWNjZWxlby5pZGUudWkuYWNjZWxlb0J1aWxkZXI8L25hbWU+CisJCQk8YXJndW1lbnRzPgorCQkJCTxkaWN0aW9uYXJ5PgorCQkJCQk8a2V5PmNvbXBpbGF0aW9uLmtpbmQ8L2tleT4KKwkJCQkJPHZhbHVlPmNvbXBpbGF0aW9uLmFic29sdXRlLnBhdGg8L3ZhbHVlPgorCQkJCTwvZGljdGlvbmFyeT4KKwkJCQk8ZGljdGlvbmFyeT4KKwkJCQkJPGtleT5jb21wbGlhbmNlPC9rZXk+CisJCQkJCTx2YWx1ZT5wcmFnbWF0aWM8L3ZhbHVlPgorCQkJCTwvZGljdGlvbmFyeT4KKwkJCQk8ZGljdGlvbmFyeT4KKwkJCQkJPGtleT5yZXNvdXJjZS5raW5kPC9rZXk+CisJCQkJCTx2YWx1ZT54bWk8L3ZhbHVlPgorCQkJCTwvZGljdGlvbmFyeT4KKwkJCTwvYXJndW1lbnRzPgorCQk8L2J1aWxkQ29tbWFuZD4KKwkJPGJ1aWxkQ29tbWFuZD4KKwkJCTxuYW1lPm9yZy5lY2xpcHNlLnBkZS5NYW5pZmVzdEJ1aWxkZXI8L25hbWU+CisJCQk8YXJndW1lbnRzPgorCQkJPC9hcmd1bWVudHM+CisJCTwvYnVpbGRDb21tYW5kPgorCQk8YnVpbGRDb21tYW5kPgorCQkJPG5hbWU+b3JnLmVjbGlwc2UucGRlLlNjaGVtYUJ1aWxkZXI8L25hbWU+CisJCQk8YXJndW1lbnRzPgorCQkJPC9hcmd1bWVudHM+CisJCTwvYnVpbGRDb21tYW5kPgorCQk8YnVpbGRDb21tYW5kPgorCQkJPG5hbWU+b3JnLmVjbGlwc2UubTJlLmNvcmUubWF2ZW4yQnVpbGRlcjwvbmFtZT4KKwkJCTxhcmd1bWVudHM+CisJCQk8L2FyZ3VtZW50cz4KKwkJPC9idWlsZENvbW1hbmQ+CisJPC9idWlsZFNwZWM+CisJPG5hdHVyZXM+CisJCTxuYXR1cmU+b3JnLmVjbGlwc2UubTJlLmNvcmUubWF2ZW4yTmF0dXJlPC9uYXR1cmU+CisJCTxuYXR1cmU+b3JnLmVjbGlwc2UuYWNjZWxlby5pZGUudWkuYWNjZWxlb05hdHVyZTwvbmF0dXJlPgorCQk8bmF0dXJlPm9yZy5lY2xpcHNlLnBkZS5QbHVnaW5OYXR1cmU8L25hdHVyZT4KKwkJPG5hdHVyZT5vcmcuZWNsaXBzZS5qZHQuY29yZS5qYXZhbmF0dXJlPC9uYXR1cmU+CisJPC9uYXR1cmVzPgorPC9wcm9qZWN0RGVzY3JpcHRpb24+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5wcmVmcyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvLnNldHRpbmdzL29yZy5lY2xpcHNlLmNvcmUucmVzb3VyY2VzLnByZWZzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk5ZjI2YzAKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5wcmVmcwpAQCAtMCwwICsxLDIgQEAKK2VjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCitlbmNvZGluZy88cHJvamVjdD49VVRGLTgKZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmJiOTY3MwotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCkBAIC0wLDAgKzEsMTIgQEAKKyNXZWQgQXByIDA0IDEzOjI5OjA5IENFU1QgMjAxMgorZWNsaXBzZS5wcmVmZXJlbmNlcy52ZXJzaW9uPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4uaW5saW5lSnNyQnl0ZWNvZGU9ZW5hYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi50YXJnZXRQbGF0Zm9ybT0xLjUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udW51c2VkTG9jYWw9cHJlc2VydmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvbXBsaWFuY2U9MS41CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5saW5lTnVtYmVyPWdlbmVyYXRlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5sb2NhbFZhcmlhYmxlPWdlbmVyYXRlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5zb3VyY2VGaWxlPWdlbmVyYXRlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmFzc2VydElkZW50aWZpZXI9ZXJyb3IKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW51bUlkZW50aWZpZXI9ZXJyb3IKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnNvdXJjZT0xLjUKZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvLnNldHRpbmdzL29yZy5lY2xpcHNlLm0yZS5jb3JlLnByZWZzIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UubTJlLmNvcmUucHJlZnMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjg5N2E3ZgotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvLnNldHRpbmdzL29yZy5lY2xpcHNlLm0yZS5jb3JlLnByZWZzCkBAIC0wLDAgKzEsNCBAQAorYWN0aXZlUHJvZmlsZXM9CitlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQorcmVzb2x2ZVdvcmtzcGFjZVByb2plY3RzPXRydWUKK3ZlcnNpb249MQpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9NRVRBLUlORi9NQU5JRkVTVC5NRiBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvTUVUQS1JTkYvTUFOSUZFU1QuTUYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjI4NmFlMQotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvTUVUQS1JTkYvTUFOSUZFU1QuTUYKQEAgLTAsMCArMSwyOSBAQAorTWFuaWZlc3QtVmVyc2lvbjogMS4wCitFeHBvcnQtUGFja2FnZTogb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwczsgdXNlczo9Im9yZy5lY2xpcHNlLmVtZi5lY29yZS5yZXNvdXJjZSwKKyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUsCisgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLAorIG9yZy5lY2xpcHNlLmFjY2VsZW8uZW5naW5lLmdlbmVyYXRpb24uc3RyYXRlZ3ksCisgb3JnLmVjbGlwc2UuYWNjZWxlby5lbmdpbmUuc2VydmljZSIKK1JlcXVpcmUtQnVuZGxlOiBvcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWU7YnVuZGxlLXZlcnNpb249IjMuNy4wIiwKKyBvcmcuZWNsaXBzZS5lbWYuZWNvcmU7YnVuZGxlLXZlcnNpb249IjIuNy4wIiwKKyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUueG1pO2J1bmRsZS12ZXJzaW9uPSIyLjcuMCIsCisgb3JnLmVjbGlwc2Uub2NsO2J1bmRsZS12ZXJzaW9uPSIzLjEuMCIsCisgb3JnLmVjbGlwc2Uub2NsLmVjb3JlO2J1bmRsZS12ZXJzaW9uPSIzLjEuMSIsCisgb3JnLmVjbGlwc2UuYWNjZWxlby5jb21tb247YnVuZGxlLXZlcnNpb249IjMuMS4wIiwKKyBvcmcuZWNsaXBzZS5hY2NlbGVvLnBhcnNlcjtidW5kbGUtdmVyc2lvbj0iMy4xLjAiLAorIG9yZy5lY2xpcHNlLmFjY2VsZW8ubW9kZWw7YnVuZGxlLXZlcnNpb249IjMuMS4wIiwKKyBvcmcuZWNsaXBzZS5hY2NlbGVvLnByb2ZpbGVyO2J1bmRsZS12ZXJzaW9uPSIzLjEuMCIsCisgb3JnLmVjbGlwc2UuYWNjZWxlby5lbmdpbmU7YnVuZGxlLXZlcnNpb249IjMuMS4wIiwKKyBvcmcuZWNsaXBzZS51bWwyLnVtbDtidW5kbGUtdmVyc2lvbj0iMy4yLjEwMCIsCisgb3JnLmVjbGlwc2UuY29yZS5yZXNvdXJjZXM7YnVuZGxlLXZlcnNpb249IjMuNy4xMDAiLAorIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbjtidW5kbGUtdmVyc2lvbj0iMS4yLjAiLAorIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbDtidW5kbGUtdmVyc2lvbj0iMS4yLjAiCitCdW5kbGUtVmVuZG9yOiBFY2xpcHNlIE1vZGVsaW5nIFByb2plY3QKK0VjbGlwc2UtTGF6eVN0YXJ0OiB0cnVlCitCdW5kbGUtQWN0aXZhdGlvblBvbGljeTogbGF6eQorQnVuZGxlLVZlcnNpb246IDEuMi4wLnF1YWxpZmllcgorQnVuZGxlLU5hbWU6IFJUTWFwcyBnZW5lcmF0b3IgZm9yIFJvYm90TUwgKEluY3ViYXRpb24pCitCdW5kbGUtQWN0aXZhdG9yOiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLkFjdGl2YXRvcgorQnVuZGxlLU1hbmlmZXN0VmVyc2lvbjogMgorQnVuZGxlLVN5bWJvbGljTmFtZTogb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcztzaW5nbGV0b246PXRydWUKK0J1bmRsZS1SZXF1aXJlZEV4ZWN1dGlvbkVudmlyb25tZW50OiBKMlNFLTEuNQpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9hYm91dC5odG1sIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9hYm91dC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIxNzMyMWYKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL2Fib3V0Lmh0bWwKQEAgLTAsMCArMSwyOCBAQAorPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgU3RyaWN0Ly9FTiIKKyAgICAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtc3RyaWN0LmR0ZCI+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Cis8aGVhZD4KKzxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEiLz4KKzx0aXRsZT5BYm91dDwvdGl0bGU+Cis8L2hlYWQ+Cis8Ym9keSBsYW5nPSJFTi1VUyI+Cis8aDI+QWJvdXQgVGhpcyBDb250ZW50PC9oMj4KKyAKKzxwPkp1bHkgMjMsIDIwMTM8L3A+CQorPGgzPkxpY2Vuc2U8L2gzPgorCis8cD5UaGUgRWNsaXBzZSBGb3VuZGF0aW9uIG1ha2VzIGF2YWlsYWJsZSBhbGwgY29udGVudCBpbiB0aGlzIHBsdWctaW4gKCZxdW90O0NvbnRlbnQmcXVvdDspLiAgVW5sZXNzIG90aGVyd2lzZSAKK2luZGljYXRlZCBiZWxvdywgdGhlIENvbnRlbnQgaXMgcHJvdmlkZWQgdG8geW91IHVuZGVyIHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB0aGUKK0VjbGlwc2UgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAxLjAgKCZxdW90O0VQTCZxdW90OykuICBBIGNvcHkgb2YgdGhlIEVQTCBpcyBhdmFpbGFibGUgCithdCA8YSBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbCI+aHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWw8L2E+LgorRm9yIHB1cnBvc2VzIG9mIHRoZSBFUEwsICZxdW90O1Byb2dyYW0mcXVvdDsgd2lsbCBtZWFuIHRoZSBDb250ZW50LjwvcD4KKworPHA+SWYgeW91IGRpZCBub3QgcmVjZWl2ZSB0aGlzIENvbnRlbnQgZGlyZWN0bHkgZnJvbSB0aGUgRWNsaXBzZSBGb3VuZGF0aW9uLCB0aGUgQ29udGVudCBpcyAKK2JlaW5nIHJlZGlzdHJpYnV0ZWQgYnkgYW5vdGhlciBwYXJ0eSAoJnF1b3Q7UmVkaXN0cmlidXRvciZxdW90OykgYW5kIGRpZmZlcmVudCB0ZXJtcyBhbmQgY29uZGl0aW9ucyBtYXkKK2FwcGx5IHRvIHlvdXIgdXNlIG9mIGFueSBvYmplY3QgY29kZSBpbiB0aGUgQ29udGVudC4gIENoZWNrIHRoZSBSZWRpc3RyaWJ1dG9yJ3MgbGljZW5zZSB0aGF0IHdhcyAKK3Byb3ZpZGVkIHdpdGggdGhlIENvbnRlbnQuICBJZiBubyBzdWNoIGxpY2Vuc2UgZXhpc3RzLCBjb250YWN0IHRoZSBSZWRpc3RyaWJ1dG9yLiAgVW5sZXNzIG90aGVyd2lzZQoraW5kaWNhdGVkIGJlbG93LCB0aGUgdGVybXMgYW5kIGNvbmRpdGlvbnMgb2YgdGhlIEVQTCBzdGlsbCBhcHBseSB0byBhbnkgc291cmNlIGNvZGUgaW4gdGhlIENvbnRlbnQKK2FuZCBzdWNoIHNvdXJjZSBjb2RlIG1heSBiZSBvYnRhaW5lZCBhdCA8YSBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnLyI+aHR0cDovL3d3dy5lY2xpcHNlLm9yZzwvYT4uPC9wPgorCis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL2J1aWxkLmFjY2VsZW8gYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL2J1aWxkLmFjY2VsZW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWE1ZjdjMAotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvYnVpbGQuYWNjZWxlbwpAQCAtMCwwICsxLDI2IEBACis8IS0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KKzwhLS0gQ3VzdG9tIHRhcmdldHMuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tPgorPCEtLSBTZXQgY3VzdG9tQnVpbGRDYWxsYmFja3MgPSBidWlsZC5hY2NlbGVvIGluIHlvdXIgYnVpbGQucHJvcGVydGllcy4gICAgLS0+Cis8IS0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KKzxwcm9qZWN0IG5hbWU9IkJ1aWxkIEFjY2VsZW8gTW9kdWxlIiBkZWZhdWx0PSJub0RlZmF1bHQiPiAgICAKKyAgICA8IS0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgorICAgIDwhLS0gRGVmYXVsdCB0YXJnZXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0+CisgICAgPCEtLSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KKyAgICA8dGFyZ2V0IG5hbWU9Im5vRGVmYXVsdCI+CisgICAgICAgIDxlY2hvIG1lc3NhZ2U9IlRoaXMgZmlsZSBtdXN0IGJlIGNhbGxlZCB3aXRoIGV4cGxpY2l0IHRhcmdldHMiIC8+CisgICAgPC90YXJnZXQ+CisKKyAgICA8IS0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgorICAgIDwhLS0gVGhpcyB3aWxsIGJlIGNhbGxlZCBhdXRvbWF0aWNhbGx5IGFmdGVyIHRoZSBjb21waWxhdGlvbiBvZiBlYWNoICAgLS0+CisgICAgPCEtLSBCdW5kbGUuLi4gaW4gZGVwZW5kZW5jeSBvcmRlci4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLT4KKyAgICA8IS0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgorICAgIDx0YXJnZXQgbmFtZT0icG9zdC5jb21waWxlLkBkb3QiPgorICAgICAgICA8YWNjZWxlb0NvbXBpbGVyIAorICAgICAgICAgICAgc291cmNlRm9sZGVyPSIke3RhcmdldC5mb2xkZXJ9IgorICAgICAgICAgICAgb3V0cHV0Rm9sZGVyPSIke3RhcmdldC5mb2xkZXJ9IgorICAgICAgICAgICAgZGVwZW5kZW5jaWVzPSIke3RhcmdldC5mb2xkZXJ9Ly4uLy4uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbjsiCisgICAgICAgICAgICBiaW5hcnlSZXNvdXJjZT0iZmFsc2UiCisgICAgICAgICAgICBwYWNrYWdlc1RvUmVnaXN0ZXI9IiI+CisgICAgICAgIDwvYWNjZWxlb0NvbXBpbGVyPgorICAgIDwvdGFyZ2V0PiAgICAKKzwvcHJvamVjdD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvYnVpbGQucHJvcGVydGllcyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvYnVpbGQucHJvcGVydGllcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40M2VkMTQ0Ci0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9idWlsZC5wcm9wZXJ0aWVzCkBAIC0wLDAgKzEsMTAgQEAKK3NvdXJjZS4uID0gc3JjLworb3V0cHV0Li4gPSBiaW4vCitiaW4uaW5jbHVkZXMgPSBNRVRBLUlORi8sXAorICAgICAgICAgICAgICAgLixcCisgICAgICAgICAgICAgICBhYm91dC5odG1sCitjdXN0b21CdWlsZENhbGxiYWNrcyA9IGJ1aWxkLmFjY2VsZW8KK3NyYy5pbmNsdWRlcyA9IGJ1aWxkLnByb3BlcnRpZXMsXAorICAgICAgICAgICAgICAgYnVpbGQuYWNjZWxlbyxcCisgICAgICAgICAgICAgICAuY2xhc3NwYXRoLFwKKyAgICAgICAgICAgICAgIGFib3V0Lmh0bWwKZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvcG9tLnhtbCBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvcG9tLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNmQ1MWQzCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9wb20ueG1sCkBAIC0wLDAgKzEsMTEgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8cHJvamVjdD4KKwk8bW9kZWxWZXJzaW9uPjQuMC4wPC9tb2RlbFZlcnNpb24+CisJPHBhcmVudD4KKwkJPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMucnRtYXBzPC9hcnRpZmFjdElkPgorCQk8Z3JvdXBJZD5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWw8L2dyb3VwSWQ+CisJCTx2ZXJzaW9uPjEuMi4wLVNOQVBTSE9UPC92ZXJzaW9uPgorCTwvcGFyZW50PgorCTxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHM8L2FydGlmYWN0SWQ+CisJPHBhY2thZ2luZz5lY2xpcHNlLXBsdWdpbjwvcGFja2FnaW5nPgorPC9wcm9qZWN0PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvQWN0aXZhdG9yLmphdmEgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL0FjdGl2YXRvci5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVkMDMzMDYKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL0FjdGl2YXRvci5qYXZhCkBAIC0wLDAgKzEsNjggQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMDgsIDIwMTEgT2Jlby4KKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogICAgIE9iZW8gLSBpbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLlBsdWdpbjsKK2ltcG9ydCBvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQ29udGV4dDsKKworLyoqCisgKiBUaGUgYWN0aXZhdG9yIGNsYXNzIGNvbnRyb2xzIHRoZSBwbHVnLWluIGxpZmUgY3ljbGUuCisgKi8KK3B1YmxpYyBjbGFzcyBBY3RpdmF0b3IgZXh0ZW5kcyBQbHVnaW4geworCisJLyoqCisJICogVGhlIHBsdWctaW4gSUQuCisJICovCisJcHVibGljIHN0YXRpYyBmaW5hbCBTdHJpbmcgUExVR0lOX0lEID0gIm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMiOworCisJLyoqCisJICogVGhlIHNoYXJlZCBpbnN0YW5jZS4KKwkgKi8KKwlwcml2YXRlIHN0YXRpYyBBY3RpdmF0b3IgcGx1Z2luOworCisJLyoqCisJICogVGhlIGNvbnN0cnVjdG9yLgorCSAqLworCXB1YmxpYyBBY3RpdmF0b3IoKSB7CisJfQorCisJLyoqCisJICoge0Bpbmhlcml0RG9jfQorCSAqCisJICogQHNlZSBvcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWUuUGx1Z2luI3N0YXJ0KG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0KQorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIHN0YXJ0KEJ1bmRsZUNvbnRleHQgY29udGV4dCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCXN1cGVyLnN0YXJ0KGNvbnRleHQpOworCQlwbHVnaW4gPSB0aGlzOworCX0KKworCS8qKgorCSAqIHtAaW5oZXJpdERvY30KKwkgKgorCSAqIEBzZWUgb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLlBsdWdpbiNzdG9wKG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0KQorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIHN0b3AoQnVuZGxlQ29udGV4dCBjb250ZXh0KSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJcGx1Z2luID0gbnVsbDsKKwkJc3VwZXIuc3RvcChjb250ZXh0KTsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBzaGFyZWQgaW5zdGFuY2UuCisJICoKKwkgKiBAcmV0dXJuIHRoZSBzaGFyZWQgaW5zdGFuY2UKKwkgKi8KKwlwdWJsaWMgc3RhdGljIEFjdGl2YXRvciBnZXREZWZhdWx0KCkgeworCQlyZXR1cm4gcGx1Z2luOworCX0KKworfQpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9HZW5lcmF0ZV9ydG1hcHMuamF2YSBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvR2VuZXJhdGVfcnRtYXBzLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTQ0YjQ0ZgotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvR2VuZXJhdGVfcnRtYXBzLmphdmEKQEAgLTAsMCArMSw0MjAgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMDgsIDIwMTEgT2Jlby4KKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogICAgIE9iZW8gLSBpbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzOworCitpbXBvcnQgamF2YS5pby5GaWxlOworaW1wb3J0IGphdmEuaW8uSU9FeGNlcHRpb247CitpbXBvcnQgamF2YS51dGlsLkFycmF5TGlzdDsKK2ltcG9ydCBqYXZhLnV0aWwuTGlzdDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmFjY2VsZW8uZW5naW5lLmV2ZW50LklBY2NlbGVvVGV4dEdlbmVyYXRpb25MaXN0ZW5lcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5hY2NlbGVvLmVuZ2luZS5nZW5lcmF0aW9uLnN0cmF0ZWd5LklBY2NlbGVvR2VuZXJhdGlvblN0cmF0ZWd5OworaW1wb3J0IG9yZy5lY2xpcHNlLmFjY2VsZW8uZW5naW5lLnNlcnZpY2UuQWJzdHJhY3RBY2NlbGVvR2VuZXJhdG9yOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5CYXNpY01vbml0b3I7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLk1vbml0b3I7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLlVSSTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnJlc291cmNlLlJlc291cmNlOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5yZXNvdXJjZS5SZXNvdXJjZVNldDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5yZXNvdXJjZS5VTUxSZXNvdXJjZTsKKworLyoqCisgKiBFbnRyeSBwb2ludCBvZiB0aGUgJ0dlbmVyYXRlX3J0bWFwcycgZ2VuZXJhdGlvbiBtb2R1bGUuCisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgR2VuZXJhdGVfcnRtYXBzIGV4dGVuZHMgQWJzdHJhY3RBY2NlbGVvR2VuZXJhdG9yIHsKKworCS8qKgorCSAqIFRoZSBuYW1lIG9mIHRoZSBtb2R1bGUuCisJICoKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHN0YXRpYyBmaW5hbCBTdHJpbmcgTU9EVUxFX0ZJTEVfTkFNRSA9ICIvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9nZW5lcmF0ZV9ydG1hcHMiOworCisJLyoqCisJICogVGhlIG5hbWUgb2YgdGhlIHRlbXBsYXRlcyB0aGF0IGFyZSB0byBiZSBnZW5lcmF0ZWQuCisJICoKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHN0YXRpYyBmaW5hbCBTdHJpbmdbXSBURU1QTEFURV9OQU1FUyA9IHsgImdlbmVyYXRlUlRNYXBzRGlhZ3JhbSIgfTsKKworCS8qKgorCSAqIFRoZSBsaXN0IG9mIHByb3BlcnRpZXMgZmlsZXMgZnJvbSB0aGUgbGF1bmNoIHBhcmFtZXRlcnMgKExhdW5jaCBjb25maWd1cmF0aW9uKS4KKwkgKgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIExpc3Q8U3RyaW5nPiBwcm9wZXJ0aWVzRmlsZXMgPSBuZXcgQXJyYXlMaXN0PFN0cmluZz4oKTsKKworCS8qKgorCSAqIEFsbG93cyB0aGUgcHVibGljIGNvbnN0cnVjdG9yIHRvIGJlIHVzZWQuIE5vdGUgdGhhdCBhIGdlbmVyYXRvciBjcmVhdGVkCisJICogdGhpcyB3YXkgY2Fubm90IGJlIHVzZWQgdG8gbGF1bmNoIGdlbmVyYXRpb25zIGJlZm9yZSBvbmUgb2Yge0BsaW5rICNpbml0aWFsaXplKEVPYmplY3QsIEZpbGUsIExpc3QpfSBvciB7QGxpbmsgI2luaXRpYWxpemUoVVJJLCBGaWxlLCBMaXN0KX0gaXMKKwkgKiBjYWxsZWQuCisJICogPHA+CisJICogVGhlIG1haW4gcmVhc29uIGZvciB0aGlzIGNvbnN0cnVjdG9yIGlzIHRvIGFsbG93IGNsaWVudHMgb2YgdGhpcyBnZW5lcmF0aW9uIHRvIGNhbGwgaXQgZnJvbSBhbm90aGVyIEphdmEgZmlsZSwgYXMgaXQgYWxsb3dzIGZvciB0aGUgcmV0cmlldmFsIG9mIHtAbGluayAjZ2V0UHJvcGVydGllcygpfSBhbmQge0BsaW5rICNnZXRHZW5lcmF0aW9uTGlzdGVuZXJzKCl9LgorCSAqIDwvcD4KKwkgKgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgR2VuZXJhdGVfcnRtYXBzKCkgeworCQkvLyBFbXB0eSBpbXBsZW1lbnRhdGlvbgorCX0KKworCS8qKgorCSAqIFRoaXMgYWxsb3dzIGNsaWVudHMgdG8gaW5zdGFudGlhdGVzIGEgZ2VuZXJhdG9yIHdpdGggYWxsIHJlcXVpcmVkIGluZm9ybWF0aW9uLgorCSAqCisJICogQHBhcmFtIG1vZGVsVVJJCisJICogICAgICAgICAgICBVUkkgd2hlcmUgdGhlIG1vZGVsIG9uIHdoaWNoIHRoaXMgZ2VuZXJhdG9yIHdpbGwgYmUgdXNlZCBpcyBsb2NhdGVkLgorCSAqIEBwYXJhbSB0YXJnZXRGb2xkZXIKKwkgKiAgICAgICAgICAgIFRoaXMgd2lsbCBiZSB1c2VkIGFzIHRoZSBvdXRwdXQgZm9sZGVyIGZvciB0aGlzIGdlbmVyYXRpb24gOiBpdCB3aWxsIGJlIHRoZSBiYXNlIHBhdGgKKwkgKiAgICAgICAgICAgIGFnYWluc3Qgd2hpY2ggYWxsIGZpbGUgYmxvY2sgVVJMcyB3aWxsIGJlIHJlc29sdmVkLgorCSAqIEBwYXJhbSBhcmd1bWVudHMKKwkgKiAgICAgICAgICAgIElmIHRoZSB0ZW1wbGF0ZSB3aGljaCB3aWxsIGJlIGNhbGxlZCByZXF1aXJlcyBtb3JlIHRoYW4gb25lIGFyZ3VtZW50IHRha2VuIGZyb20gdGhlIG1vZGVsLAorCSAqICAgICAgICAgICAgcGFzcyB0aGVtIGhlcmUuCisJICogQHRocm93cyBJT0V4Y2VwdGlvbgorCSAqICAgICAgICAgICAgIFRoaXMgY2FuIGJlIHRocm93biBpbiB0aHJlZSBzY2VuYXJpb3MgOiB0aGUgbW9kdWxlIGNhbm5vdCBiZSBmb3VuZCwgaXQgY2Fubm90IGJlIGxvYWRlZCwgb3IKKwkgKiAgICAgICAgICAgICB0aGUgbW9kZWwgY2Fubm90IGJlIGxvYWRlZC4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEdlbmVyYXRlX3J0bWFwcyhVUkkgbW9kZWxVUkksIEZpbGUgdGFyZ2V0Rm9sZGVyLCBMaXN0PD8gZXh0ZW5kcyBPYmplY3Q+IGFyZ3VtZW50cykgdGhyb3dzIElPRXhjZXB0aW9uIHsKKwkJaW5pdGlhbGl6ZShtb2RlbFVSSSwgdGFyZ2V0Rm9sZGVyLCBhcmd1bWVudHMpOworCX0KKworCS8qKgorCSAqIFRoaXMgYWxsb3dzIGNsaWVudHMgdG8gaW5zdGFudGlhdGVzIGEgZ2VuZXJhdG9yIHdpdGggYWxsIHJlcXVpcmVkIGluZm9ybWF0aW9uLgorCSAqCisJICogQHBhcmFtIG1vZGVsCisJICogICAgICAgICAgICBXZSdsbCBpdGVyYXRlIG92ZXIgdGhlIGNvbnRlbnQgb2YgdGhpcyBlbGVtZW50IHRvIGZpbmQgT2JqZWN0cyBtYXRjaGluZyB0aGUgZmlyc3QgcGFyYW1ldGVyCisJICogICAgICAgICAgICBvZiB0aGUgdGVtcGxhdGUgd2UgbmVlZCB0byBjYWxsLgorCSAqIEBwYXJhbSB0YXJnZXRGb2xkZXIKKwkgKiAgICAgICAgICAgIFRoaXMgd2lsbCBiZSB1c2VkIGFzIHRoZSBvdXRwdXQgZm9sZGVyIGZvciB0aGlzIGdlbmVyYXRpb24gOiBpdCB3aWxsIGJlIHRoZSBiYXNlIHBhdGgKKwkgKiAgICAgICAgICAgIGFnYWluc3Qgd2hpY2ggYWxsIGZpbGUgYmxvY2sgVVJMcyB3aWxsIGJlIHJlc29sdmVkLgorCSAqIEBwYXJhbSBhcmd1bWVudHMKKwkgKiAgICAgICAgICAgIElmIHRoZSB0ZW1wbGF0ZSB3aGljaCB3aWxsIGJlIGNhbGxlZCByZXF1aXJlcyBtb3JlIHRoYW4gb25lIGFyZ3VtZW50IHRha2VuIGZyb20gdGhlIG1vZGVsLAorCSAqICAgICAgICAgICAgcGFzcyB0aGVtIGhlcmUuCisJICogQHRocm93cyBJT0V4Y2VwdGlvbgorCSAqICAgICAgICAgICAgIFRoaXMgY2FuIGJlIHRocm93biBpbiB0d28gc2NlbmFyaW9zIDogdGhlIG1vZHVsZSBjYW5ub3QgYmUgZm91bmQsIG9yIGl0IGNhbm5vdCBiZSBsb2FkZWQuCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBHZW5lcmF0ZV9ydG1hcHMoRU9iamVjdCBtb2RlbCwgRmlsZSB0YXJnZXRGb2xkZXIsIExpc3Q8PyBleHRlbmRzIE9iamVjdD4gYXJndW1lbnRzKSB0aHJvd3MgSU9FeGNlcHRpb24geworCQlpbml0aWFsaXplKG1vZGVsLCB0YXJnZXRGb2xkZXIsIGFyZ3VtZW50cyk7CisJfQorCisJLyoqCisJICogVGhpcyBjYW4gYmUgdXNlZCB0byBsYXVuY2ggdGhlIGdlbmVyYXRpb24gZnJvbSBhIHN0YW5kYWxvbmUgYXBwbGljYXRpb24uCisJICoKKwkgKiBAcGFyYW0gYXJncworCSAqICAgICAgICAgICAgQXJndW1lbnRzIG9mIHRoZSBnZW5lcmF0aW9uLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKSB7CisJCXRyeSB7CisJCQlpZiAoYXJncy5sZW5ndGggPCAyKSB7CisJCQkJU3lzdGVtLm91dC5wcmludGxuKCJBcmd1bWVudHMgbm90IHZhbGlkIDoge21vZGVsLCBmb2xkZXJ9LiIpOworCQkJfSBlbHNlIHsKKwkJCQlVUkkgbW9kZWxVUkkgPSBVUkkuY3JlYXRlRmlsZVVSSShhcmdzWzBdKTsKKwkJCQlGaWxlIGZvbGRlciA9IG5ldyBGaWxlKGFyZ3NbMV0pOworCisJCQkJTGlzdDxTdHJpbmc+IGFyZ3VtZW50cyA9IG5ldyBBcnJheUxpc3Q8U3RyaW5nPigpOworCisJCQkJLyoKKwkJCQkgKiBJZiB5b3Ugd2FudCB0byBjaGFuZ2UgdGhlIGNvbnRlbnQgb2YgdGhpcyBtZXRob2QsIGRvIE5PVCBmb3JnZXQgdG8gY2hhbmdlIHRoZSAiQGdlbmVyYXRlZCIKKwkJCQkgKiB0YWcgaW4gdGhlIEphdmFkb2Mgb2YgdGhpcyBtZXRob2QgdG8gIkBnZW5lcmF0ZWQgTk9UIi4gV2l0aG91dCB0aGlzIG5ldyB0YWcsIGFueSBjb21waWxhdGlvbgorCQkJCSAqIG9mIHRoZSBBY2NlbGVvIG1vZHVsZSB3aXRoIHRoZSBtYWluIHRlbXBsYXRlIHRoYXQgaGFzIGNhdXNlZCB0aGUgY3JlYXRpb24gb2YgdGhpcyBjbGFzcyB3aWxsCisJCQkJICogcmV2ZXJ0IHlvdXIgbW9kaWZpY2F0aW9ucy4KKwkJCQkgKi8KKworCQkJCS8qCisJCQkJICogQWRkIGluIHRoaXMgbGlzdCBhbGwgdGhlIGFyZ3VtZW50cyB1c2VkIGJ5IHRoZSBzdGFydGluZyBwb2ludCBvZiB0aGUgZ2VuZXJhdGlvbgorCQkJCSAqIElmIHlvdXIgbWFpbiB0ZW1wbGF0ZSBpcyBjYWxsZWQgb24gYW4gZWxlbWVudCBvZiB5b3VyIG1vZGVsIGFuZCBhIFN0cmluZywgeW91IGNhbgorCQkJCSAqIGFkZCBpbiAiYXJndW1lbnRzIiB0aGlzICJTdHJpbmciIGF0dHJpYnV0ZS4KKwkJCQkgKi8KKworCQkJCUdlbmVyYXRlX3J0bWFwcyBnZW5lcmF0b3IgPSBuZXcgR2VuZXJhdGVfcnRtYXBzKG1vZGVsVVJJLCBmb2xkZXIsIGFyZ3VtZW50cyk7CisKKwkJCQkvKgorCQkJCSAqIEFkZCB0aGUgcHJvcGVydGllcyBmcm9tIHRoZSBsYXVuY2ggYXJndW1lbnRzLgorCQkJCSAqIElmIHlvdSB3YW50IHRvIHByb2dyYW1tYXRpY2FsbHkgYWRkIG5ldyBwcm9wZXJ0aWVzLCBhZGQgdGhlbSBpbiAicHJvcGVydGllc0ZpbGVzIgorCQkJCSAqIFlvdSBjYW4gYWRkIHRoZSBhYnNvbHV0ZSBwYXRoIG9mIGEgcHJvcGVydGllcyBmaWxlcywgb3IgZXZlbiBhIHByb2plY3QgcmVsYXRpdmUgcGF0aC4KKwkJCQkgKiBJZiB5b3Ugd2FudCB0byBhZGQgYW5vdGhlciAicHJvdG9jb2wiIGZvciB5b3VyIHByb3BlcnRpZXMgZmlsZXMsIHBsZWFzZSBvdmVycmlkZQorCQkJCSAqICJnZXRQcm9wZXJ0aWVzTG9hZGVyU2VydmljZShBY2NlbGVvU2VydmljZSkiIGluIG9yZGVyIHRvIHJldHVybiBhIG5ldyBwcm9wZXJ0eSBsb2FkZXIuCisJCQkJICogVGhlIGJlaGF2aW9yIG9mIHRoZSBwcm9wZXJ0aWVzIGxvYWRlciBzZXJ2aWNlIGlzIGV4cGxhaW5lZCBpbiB0aGUgQWNjZWxlbyBkb2N1bWVudGF0aW9uCisJCQkJICogKEhlbHAgLT4gSGVscCBDb250ZW50cykuCisJCQkJICovCisKKwkJCQlmb3IgKGludCBpID0gMjsgaSA8IGFyZ3MubGVuZ3RoOyBpKyspIHsKKwkJCQkJZ2VuZXJhdG9yLmFkZFByb3BlcnRpZXNGaWxlKGFyZ3NbaV0pOworCQkJCX0KKworCQkJCWdlbmVyYXRvci5kb0dlbmVyYXRlKG5ldyBCYXNpY01vbml0b3IoKSk7CisJCQl9CisJCX0gY2F0Y2ggKElPRXhjZXB0aW9uIGUpIHsKKwkJCWUucHJpbnRTdGFja1RyYWNlKCk7CisJCX0KKwl9CisKKwkvKioKKwkgKiBMYXVuY2hlcyB0aGUgZ2VuZXJhdGlvbiBkZXNjcmliZWQgYnkgdGhpcyBpbnN0YW5jZS4KKwkgKgorCSAqIEBwYXJhbSBtb25pdG9yCisJICogICAgICAgICAgICBUaGlzIHdpbGwgYmUgdXNlZCB0byBkaXNwbGF5IHByb2dyZXNzIGluZm9ybWF0aW9uIHRvIHRoZSB1c2VyLgorCSAqIEB0aHJvd3MgSU9FeGNlcHRpb24KKwkgKiAgICAgICAgICAgICBUaGlzIHdpbGwgYmUgdGhyb3duIGlmIGFueSBvZiB0aGUgb3V0cHV0IGZpbGVzIGNhbm5vdCBiZSBzYXZlZCB0byBkaXNrLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBkb0dlbmVyYXRlKE1vbml0b3IgbW9uaXRvcikgdGhyb3dzIElPRXhjZXB0aW9uIHsKKwkJLyoKKwkJICogVE9ETyBpZiB5b3Ugd2lzaCB0byBjaGFuZ2UgdGhlIGdlbmVyYXRpb24gYXMgYSB3aG9sZSwgb3ZlcnJpZGUgdGhpcy4gVGhlIGRlZmF1bHQgYmVoYXZpb3Igc2hvdWxkCisJCSAqIGJlIHN1ZmZpY2llbnQgaW4gbW9zdCBjYXNlcy4gSWYgeW91IHdhbnQgdG8gY2hhbmdlIHRoZSBjb250ZW50IG9mIHRoaXMgbWV0aG9kLCBkbyBOT1QgZm9yZ2V0IHRvCisJCSAqIGNoYW5nZSB0aGUgIkBnZW5lcmF0ZWQiIHRhZyBpbiB0aGUgSmF2YWRvYyBvZiB0aGlzIG1ldGhvZCB0byAiQGdlbmVyYXRlZCBOT1QiLiBXaXRob3V0IHRoaXMgbmV3IHRhZywKKwkJICogYW55IGNvbXBpbGF0aW9uIG9mIHRoZSBBY2NlbGVvIG1vZHVsZSB3aXRoIHRoZSBtYWluIHRlbXBsYXRlIHRoYXQgaGFzIGNhdXNlZCB0aGUgY3JlYXRpb24gb2YgdGhpcworCQkgKiBjbGFzcyB3aWxsIHJldmVydCB5b3VyIG1vZGlmaWNhdGlvbnMuIElmIHlvdSBlbmNvdW50ZXIgYSBwcm9ibGVtIHdpdGggYW4gdW5yZXNvbHZlZCBwcm94eSBkdXJpbmcgdGhlCisJCSAqIGdlbmVyYXRpb24sIHlvdSBjYW4gcmVtb3ZlIHRoZSBjb21tZW50cyBpbiB0aGUgZm9sbG93aW5nIGluc3RydWN0aW9ucyB0byBjaGVjayBmb3IgcHJvYmxlbXMuIFBsZWFzZQorCQkgKiBub3RlIHRoYXQgdGhvc2UgaW5zdHJ1Y3Rpb25zIG1heSBoYXZlIGEgc2lnbmlmaWNhbnQgaW1wYWN0IG9uIHRoZSBwZXJmb3JtYW5jZXMuCisJCSAqLworCisJCS8vIG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLkVjb3JlVXRpbC5yZXNvbHZlQWxsKG1vZGVsKTsKKworCQkvKgorCQkgKiBJZiB5b3Ugd2FudCB0byBjaGVjayBmb3IgcG90ZW50aWFsIGVycm9ycyBpbiB5b3VyIG1vZGVscyBiZWZvcmUgdGhlIGxhdW5jaCBvZiB0aGUgZ2VuZXJhdGlvbiwgeW91CisJCSAqIHVzZSB0aGUgY29kZSBiZWxvdy4KKwkJICovCisKKwkJLy8gaWYgKG1vZGVsICE9IG51bGwgJiYgbW9kZWwuZVJlc291cmNlKCkgIT0gbnVsbCkgeworCQkvLyBMaXN0PG9yZy5lY2xpcHNlLmVtZi5lY29yZS5yZXNvdXJjZS5SZXNvdXJjZS5EaWFnbm9zdGljPiBlcnJvcnMgPSBtb2RlbC5lUmVzb3VyY2UoKS5nZXRFcnJvcnMoKTsKKwkJLy8gZm9yIChvcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuUmVzb3VyY2UuRGlhZ25vc3RpYyBkaWFnbm9zdGljIDogZXJyb3JzKSB7CisJCS8vIFN5c3RlbS5lcnIucHJpbnRsbihkaWFnbm9zdGljLnRvU3RyaW5nKCkpOworCQkvLyB9CisJCS8vIH0KKworCQlzdXBlci5kb0dlbmVyYXRlKG1vbml0b3IpOworCX0KKworCS8qKgorCSAqIElmIHRoaXMgZ2VuZXJhdG9yIG5lZWRzIHRvIGxpc3RlbiB0byB0ZXh0IGdlbmVyYXRpb24gZXZlbnRzLCBsaXN0ZW5lcnMgY2FuIGJlIHJldHVybmVkIGZyb20gaGVyZS4KKwkgKgorCSAqIEByZXR1cm4gTGlzdCBvZiBsaXN0ZW5lcnMgdGhhdCBhcmUgdG8gYmUgbm90aWZpZWQgd2hlbiB0ZXh0IGlzIGdlbmVyYXRlZCB0aHJvdWdoIHRoaXMgbGF1bmNoLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTGlzdDxJQWNjZWxlb1RleHRHZW5lcmF0aW9uTGlzdGVuZXI+IGdldEdlbmVyYXRpb25MaXN0ZW5lcnMoKSB7CisJCUxpc3Q8SUFjY2VsZW9UZXh0R2VuZXJhdGlvbkxpc3RlbmVyPiBsaXN0ZW5lcnMgPSBzdXBlci5nZXRHZW5lcmF0aW9uTGlzdGVuZXJzKCk7CisJCS8qCisJCSAqIFRPRE8gaWYgeW91IG5lZWQgdG8gbGlzdGVuIHRvIGdlbmVyYXRpb24gZXZlbnQsIGFkZCBsaXN0ZW5lcnMgdG8gdGhlIGxpc3QgaGVyZS4gSWYgeW91IHdhbnQgdG8gY2hhbmdlCisJCSAqIHRoZSBjb250ZW50IG9mIHRoaXMgbWV0aG9kLCBkbyBOT1QgZm9yZ2V0IHRvIGNoYW5nZSB0aGUgIkBnZW5lcmF0ZWQiIHRhZyBpbiB0aGUgSmF2YWRvYyBvZiB0aGlzIG1ldGhvZAorCQkgKiB0byAiQGdlbmVyYXRlZCBOT1QiLiBXaXRob3V0IHRoaXMgbmV3IHRhZywgYW55IGNvbXBpbGF0aW9uIG9mIHRoZSBBY2NlbGVvIG1vZHVsZSB3aXRoIHRoZSBtYWluIHRlbXBsYXRlCisJCSAqIHRoYXQgaGFzIGNhdXNlZCB0aGUgY3JlYXRpb24gb2YgdGhpcyBjbGFzcyB3aWxsIHJldmVydCB5b3VyIG1vZGlmaWNhdGlvbnMuCisJCSAqLworCQlyZXR1cm4gbGlzdGVuZXJzOworCX0KKworCS8qKgorCSAqIElmIHlvdSBuZWVkIHRvIGNoYW5nZSB0aGUgd2F5IGZpbGVzIGFyZSBnZW5lcmF0ZWQsIHRoaXMgaXMgeW91ciBlbnRyeSBwb2ludC4KKwkgKiA8cD4KKwkgKiBUaGUgZGVmYXVsdCBpcyB7QGxpbmsgb3JnLmVjbGlwc2UuYWNjZWxlby5lbmdpbmUuZ2VuZXJhdGlvbi5zdHJhdGVneS5EZWZhdWx0U3RyYXRlZ3l9OyBpdCBnZW5lcmF0ZXMgZmlsZXMgb24gdGhlIGZseS4gSWYgeW91IG9ubHkgbmVlZCB0byBwcmV2aWV3IHRoZSByZXN1bHRzLCByZXR1cm4gYSBuZXcge0BsaW5rIG9yZy5lY2xpcHNlLmFjY2VsZW8uZW5naW5lLmdlbmVyYXRpb24uc3RyYXRlZ3kuUHJldmlld1N0cmF0ZWd5fS4gQm90aCBvZgorCSAqIHRoZXNlIGFyZW4ndCBhd2FyZSBvZiB0aGUgcnVubmluZyBFY2xpcHNlIGFuZCBjYW4gYmUgdXNlZCBzdGFuZGFsb25lLgorCSAqIDwvcD4KKwkgKiA8cD4KKwkgKiBJZiB5b3UgbmVlZCB0aGUgZmlsZSBnZW5lcmF0aW9uIHRvIGJlIGF3YXJlIG9mIHRoZSB3b3Jrc3BhY2UgKEEgdHlwaWNhbCBleGFtcGxlIGlzIHdoZW4geW91IHdhbm5hIG92ZXJyaWRlIGZpbGVzIHRoYXQgYXJlIHVuZGVyIGNsZWFyIGNhc2Ugb3IgYW55IG90aGVyIFZDUyB0aGF0IGNvdWxkIGZvcmJpZCB0aGUgb3ZlcnJpZGluZyksIHRoZW4gcmV0dXJuIGEgbmV3CisJICoge0BsaW5rIG9yZy5lY2xpcHNlLmFjY2VsZW8uZW5naW5lLmdlbmVyYXRpb24uc3RyYXRlZ3kuV29ya3NwYWNlQXdhcmVTdHJhdGVneX0uIDxiPk5vdGU8L2I+LCBob3dldmVyLCB0aGF0IHRoaXMgPGI+Y2Fubm90PC9iPiBiZSB1c2VkIHN0YW5kYWxvbmUuCisJICogPC9wPgorCSAqIDxwPgorCSAqIEFsbCB0aHJlZSBvZiB0aGVzZSBkZWZhdWx0IHN0cmF0ZWdpZXMgc3VwcG9ydCBtZXJnaW5nIHRocm91Z2ggSk1lcmdlLgorCSAqIDwvcD4KKwkgKgorCSAqIEByZXR1cm4gVGhlIGdlbmVyYXRpb24gc3RyYXRlZ3kgdGhhdCBpcyB0byBiZSB1c2VkIGZvciBnZW5lcmF0aW9ucyBsYXVuY2hlZCB0aHJvdWdoIHRoaXMgbGF1bmNoZXIuCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBJQWNjZWxlb0dlbmVyYXRpb25TdHJhdGVneSBnZXRHZW5lcmF0aW9uU3RyYXRlZ3koKSB7CisJCXJldHVybiBzdXBlci5nZXRHZW5lcmF0aW9uU3RyYXRlZ3koKTsKKwl9CisKKwkvKioKKwkgKiBUaGlzIHdpbGwgYmUgY2FsbGVkIGluIG9yZGVyIHRvIGZpbmQgYW5kIGxvYWQgdGhlIG1vZHVsZSB0aGF0IHdpbGwgYmUgbGF1bmNoZWQgdGhyb3VnaCB0aGlzIGxhdW5jaGVyLgorCSAqIFdlIGV4cGVjdCB0aGlzIG5hbWUgbm90IHRvIGNvbnRhaW4gZmlsZSBleHRlbnNpb24sIGFuZCB0aGUgbW9kdWxlIHRvIGJlIGxvY2F0ZWQgYmVzaWRlIHRoZSBsYXVuY2hlci4KKwkgKgorCSAqIEByZXR1cm4gVGhlIG5hbWUgb2YgdGhlIG1vZHVsZSB0aGF0IGlzIHRvIGJlIGxhdW5jaGVkLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIGdldE1vZHVsZU5hbWUoKSB7CisJCXJldHVybiBNT0RVTEVfRklMRV9OQU1FOworCX0KKworCS8qKgorCSAqIElmIHRoZSBtb2R1bGUocykgY2FsbGVkIGJ5IHRoaXMgbGF1bmNoZXIgcmVxdWlyZSBwcm9wZXJ0aWVzIGZpbGVzLCByZXR1cm4gdGhlaXIgcXVhbGlmaWVkIHBhdGggZnJvbQorCSAqIGhlcmUuVGFrZSBub3RlIHRoYXQgdGhlIGZpcnN0IGFkZGVkIHByb3BlcnRpZXMgZmlsZXMgd2lsbCB0YWtlIHByZWNlZGVuY2Ugb3ZlciBzdWJzZXF1ZW50IG9uZXMgaWYgdGhleQorCSAqIGNvbnRhaW4gY29uZmxpY3Rpbmcga2V5cy4KKwkgKiA8cD4KKwkgKiBQcm9wZXJ0aWVzIG5lZWQgdG8gYmUgaW4gc291cmNlIGZvbGRlcnMsIHRoZSBwYXRoIHRoYXQgd2UgZXhwZWN0IHRvIGdldCBhcyBhIHJlc3VsdCBvZiB0aGlzIGNhbGwgYXJlIG9mIHRoZSBmb3JtICZsdDtwYWNrYWdlPi4mbHQ7cHJvcGVydGllcyBmaWxlIG5hbWUgd2l0aG91dCBleHRlbnNpb24+LiBGb3IgZXhhbXBsZSwgaWYgeW91IGhhdmUgYSBmaWxlIG5hbWVkICJtZXNzYWdlcy5wcm9wZXJ0aWVzIiBpbiBwYWNrYWdlCisJICogIm9yZy5lY2xpcHNlLmFjY2VsZW8uc2FtcGxlIiwgdGhlIHBhdGggdGhhdCBuZWVkcyBiZSByZXR1cm5lZCBieSBhIGNhbGwgdG8ge0BsaW5rICNnZXRQcm9wZXJ0aWVzKCl9IGlzICJvcmcuZWNsaXBzZS5hY2NlbGVvLnNhbXBsZS5tZXNzYWdlcyIuCisJICogPC9wPgorCSAqCisJICogQHJldHVybiBUaGUgbGlzdCBvZiBwcm9wZXJ0aWVzIGZpbGUgd2UgbmVlZCB0byBhZGQgdG8gdGhlIGdlbmVyYXRpb24gY29udGV4dC4KKwkgKiBAc2VlIGphdmEudXRpbC5SZXNvdXJjZUJ1bmRsZSNnZXRCdW5kbGUoU3RyaW5nKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTGlzdDxTdHJpbmc+IGdldFByb3BlcnRpZXMoKSB7CisJCS8qCisJCSAqIElmIHlvdSB3YW50IHRvIGNoYW5nZSB0aGUgY29udGVudCBvZiB0aGlzIG1ldGhvZCwgZG8gTk9UIGZvcmdldCB0byBjaGFuZ2UgdGhlICJAZ2VuZXJhdGVkIgorCQkgKiB0YWcgaW4gdGhlIEphdmFkb2Mgb2YgdGhpcyBtZXRob2QgdG8gIkBnZW5lcmF0ZWQgTk9UIi4gV2l0aG91dCB0aGlzIG5ldyB0YWcsIGFueSBjb21waWxhdGlvbgorCQkgKiBvZiB0aGUgQWNjZWxlbyBtb2R1bGUgd2l0aCB0aGUgbWFpbiB0ZW1wbGF0ZSB0aGF0IGhhcyBjYXVzZWQgdGhlIGNyZWF0aW9uIG9mIHRoaXMgY2xhc3Mgd2lsbAorCQkgKiByZXZlcnQgeW91ciBtb2RpZmljYXRpb25zLgorCQkgKi8KKworCQkvKgorCQkgKiBUT0RPIGlmIHlvdXIgZ2VuZXJhdGlvbiBtb2R1bGUgcmVxdWlyZXMgYWNjZXNzIHRvIHByb3BlcnRpZXMgZmlsZXMsIGFkZCB0aGVpciBxdWFsaWZpZWQgcGF0aCB0byB0aGUgbGlzdCBoZXJlLgorCQkgKgorCQkgKiBQcm9wZXJ0aWVzIGZpbGVzIGNhbiBiZSBsb2NhdGVkIGluIGFuIEVjbGlwc2UgcGx1Zy1pbiBvciBpbiB0aGUgZmlsZSBzeXN0ZW0gKGFsbCBBY2NlbGVvIHByb2plY3RzIGFyZSBFY2xpcHNlCisJCSAqIHBsdWctaW4pLiBJbiBvcmRlciB0byB1c2UgcHJvcGVydGllcyBmaWxlcyBsb2NhdGVkIGluIGFuIEVjbGlwc2UgcGx1Z2luLCB5b3UgbmVlZCB0byBhZGQgdGhlIHBhdGggb2YgdGhlIHByb3BlcnRpZXMKKwkJICogZmlsZXMgdG8gdGhlICJwcm9wZXJ0aWVzRmlsZXMiIGxpc3Q6CisJCSAqCisJCSAqIGZpbmFsIFN0cmluZyBwcmVmaXggPSAicGxhdGZvcm06L3BsdWdpbi8iOworCQkgKiBmaW5hbCBTdHJpbmcgcGx1Z2luTmFtZSA9ICJvcmcuZWNsaXBzZS5hY2NlbGVvLm1vZHVsZS5zYW1wbGUiOworCQkgKiBmaW5hbCBTdHJpbmcgcGFja2FnZVBhdGggPSAiL29yZy9lY2xpcHNlL2FjY2VsZW8vbW9kdWxlL3NhbXBsZS9wcm9wZXJ0aWVzLyI7CisJCSAqIGZpbmFsIFN0cmluZyBmaWxlTmFtZSA9ICJkZWZhdWx0LnByb3BlcnRpZXMiOworCQkgKiBwcm9wZXJ0aWVzRmlsZXMuYWRkKHByZWZpeCArIHBsdWdpbk5hbWUgKyBwYWNrYWdlUGF0aCArIGZpbGVOYW1lKTsKKwkJICoKKwkJICogV2l0aCB0aGlzIG1lY2hhbmlzbSwgeW91IGNhbiBsb2FkIHByb3BlcnRpZXMgZmlsZXMgZnJvbSB5b3VyIHBsdWdpbiBvciBmcm9tIGFub3RoZXIgcGx1Z2luLgorCQkgKgorCQkgKiBZb3UgbWF5IHdhbnQgdG8gbG9hZCBwcm9wZXJ0aWVzIGZpbGVzIGZyb20gdGhlIGZpbGUgc3lzdGVtLCBmb3IgdGhhdCB5b3UgbmVlZCB0byBhZGQgdGhlIGFic29sdXRlIHBhdGggb2YgdGhlIGZpbGU6CisJCSAqCisJCSAqIHByb3BlcnRpZXNGaWxlcy5hZGQoIkM6XFVzZXJzXE15TmFtZVxNeUZpbGUucHJvcGVydGllcyIpOworCQkgKgorCQkgKiBJZiB5b3Ugd2FudCB0byBsZXQgeW91ciB1c2VycyBhZGQgcHJvcGVydGllcyBmaWxlcyBsb2NhdGVkIGluIHRoZSBzYW1lIGZvbGRlciBhcyB0aGUgbW9kZWw6CisJCSAqCisJCSAqIGlmIChFTUZQbHVnaW4uSVNfRUNMSVBTRV9SVU5OSU5HICYmIG1vZGVsICE9IG51bGwgJiYgbW9kZWwuZVJlc291cmNlKCkgIT0gbnVsbCkgeworCQkgKiBwcm9wZXJ0aWVzRmlsZXMuYWRkQWxsKEFjY2VsZW9FbmdpbmVVdGlscy5nZXRQcm9wZXJ0aWVzRmlsZXNOZWFyTW9kZWwobW9kZWwuZVJlc291cmNlKCkpKTsKKwkJICogfQorCQkgKgorCQkgKiBUbyBsZWFybiBtb3JlIGFib3V0IFByb3BlcnRpZXMgRmlsZXMsIGhhdmUgYSBsb29rIGF0IHRoZSBBY2NlbGVvIGRvY3VtZW50YXRpb24gKEhlbHAgLT4gSGVscCBDb250ZW50cykuCisJCSAqLworCQlyZXR1cm4gcHJvcGVydGllc0ZpbGVzOworCX0KKworCS8qKgorCSAqIEFkZHMgYSBwcm9wZXJ0aWVzIGZpbGUgaW4gdGhlIGxpc3Qgb2YgcHJvcGVydGllcyBmaWxlcy4KKwkgKgorCSAqIEBwYXJhbSBwcm9wZXJ0aWVzRmlsZQorCSAqICAgICAgICAgICAgVGhlIHByb3BlcnRpZXMgZmlsZSB0byBhZGQuCisJICogQGdlbmVyYXRlZAorCSAqIEBzaW5jZSAzLjEKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBhZGRQcm9wZXJ0aWVzRmlsZShTdHJpbmcgcHJvcGVydGllc0ZpbGUpIHsKKwkJdGhpcy5wcm9wZXJ0aWVzRmlsZXMuYWRkKHByb3BlcnRpZXNGaWxlKTsKKwl9CisKKwkvKioKKwkgKiBUaGlzIHdpbGwgYmUgdXNlZCB0byBnZXQgdGhlIGxpc3Qgb2YgdGVtcGxhdGVzIHRoYXQgYXJlIHRvIGJlIGxhdW5jaGVkIGJ5IHRoaXMgbGF1bmNoZXIuCisJICoKKwkgKiBAcmV0dXJuIFRoZSBsaXN0IG9mIHRlbXBsYXRlcyB0byBjYWxsIG9uIHRoZSBtb2R1bGUge0BsaW5rICNnZXRNb2R1bGVOYW1lKCl9LgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nW10gZ2V0VGVtcGxhdGVOYW1lcygpIHsKKwkJcmV0dXJuIFRFTVBMQVRFX05BTUVTOworCX0KKworCS8qKgorCSAqIFRoaXMgY2FuIGJlIHVzZWQgdG8gdXBkYXRlIHRoZSByZXNvdXJjZSBzZXQncyBwYWNrYWdlIHJlZ2lzdHJ5IHdpdGggYWxsIG5lZWRlZCBFUGFja2FnZXMuCisJICoKKwkgKiBAcGFyYW0gcmVzb3VyY2VTZXQKKwkgKiAgICAgICAgICAgIFRoZSByZXNvdXJjZSBzZXQgd2hpY2ggcmVnaXN0cnkgaGFzIHRvIGJlIHVwZGF0ZWQuCisJICogQGdlbmVyYXRlZCBOT1QKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCByZWdpc3RlclBhY2thZ2VzKFJlc291cmNlU2V0IHJlc291cmNlU2V0KSB7CisKKwkJc3VwZXIucmVnaXN0ZXJQYWNrYWdlcyhyZXNvdXJjZVNldCk7CisKKwkJLy8KKwkJRVBhY2thZ2UuUmVnaXN0cnkgcGFja2FnZVJlZ2lzdHJ5ID0gcmVzb3VyY2VTZXQuZ2V0UGFja2FnZVJlZ2lzdHJ5KCk7CisJCVJlc291cmNlLkZhY3RvcnkuUmVnaXN0cnkgZmFjdG9yeVJlZ2lzdHJ5ID0gcmVzb3VyY2VTZXQuZ2V0UmVzb3VyY2VGYWN0b3J5UmVnaXN0cnkoKTsKKwkJLy8gTWFwPFVSSSwgVVJJPiB1cmlNYXAgPSByZXNvdXJjZVNldC5nZXRVUklDb252ZXJ0ZXIoKS5nZXRVUklNYXAoKTsKKworCQkvLworCQlpZiAoIWlzSW5Xb3Jrc3BhY2Uob3JnLmVjbGlwc2UudW1sMi51bWwuVU1MUGFja2FnZS5jbGFzcykpIHsKKwkJCXJlc291cmNlU2V0LmdldFBhY2thZ2VSZWdpc3RyeSgpLnB1dChvcmcuZWNsaXBzZS51bWwyLnVtbC5VTUxQYWNrYWdlLmVJTlNUQU5DRS5nZXROc1VSSSgpLCBvcmcuZWNsaXBzZS51bWwyLnVtbC5VTUxQYWNrYWdlLmVJTlNUQU5DRSk7CisJCQlmYWN0b3J5UmVnaXN0cnkuZ2V0RXh0ZW5zaW9uVG9GYWN0b3J5TWFwKCkucHV0KFVNTFJlc291cmNlLkZJTEVfRVhURU5TSU9OLCBVTUxSZXNvdXJjZS5GYWN0b3J5LklOU1RBTkNFKTsKKwkJfQorCQlpZiAoIWlzSW5Xb3Jrc3BhY2Uob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLmNsYXNzKSkgeworCQkJcmVzb3VyY2VTZXQuZ2V0UGFja2FnZVJlZ2lzdHJ5KCkucHV0KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5lSU5TVEFOQ0UuZ2V0TnNVUkkoKSwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLmVJTlNUQU5DRSk7CisJCX0KKworCQkvKgorCQkgKiBUT0RPIElmIHlvdSBuZWVkIGFkZGl0aW9uYWwgcGFja2FnZSByZWdpc3RyYXRpb25zLCB5b3UgY2FuIHJlZ2lzdGVyIHRoZW0gaGVyZS4gVGhlIGZvbGxvd2luZyBsaW5lCisJCSAqIChpbiBjb21tZW50KSBpcyBhbiBleGFtcGxlIG9mIHRoZSBwYWNrYWdlIHJlZ2lzdHJhdGlvbiBmb3IgVU1MLiBJZiB5b3Ugd2FudCB0byBjaGFuZ2UgdGhlIGNvbnRlbnQKKwkJICogb2YgdGhpcyBtZXRob2QsIGRvIE5PVCBmb3JnZXQgdG8gY2hhbmdlIHRoZSAiQGdlbmVyYXRlZCIgdGFnIGluIHRoZSBKYXZhZG9jIG9mIHRoaXMgbWV0aG9kIHRvCisJCSAqICJAZ2VuZXJhdGVkIE5PVCIuIFdpdGhvdXQgdGhpcyBuZXcgdGFnLCBhbnkgY29tcGlsYXRpb24gb2YgdGhlIEFjY2VsZW8gbW9kdWxlIHdpdGggdGhlIG1haW4gdGVtcGxhdGUKKwkJICogdGhhdCBoYXMgY2F1c2VkIHRoZSBjcmVhdGlvbiBvZiB0aGlzIGNsYXNzIHdpbGwgcmV2ZXJ0IHlvdXIgbW9kaWZpY2F0aW9ucy4gWW91IGNhbiB1c2UgdGhlIG1ldGhvZAorCQkgKiAiaXNJbldvcmtzcGFjZShDbGFzcyBjKSIgdG8gY2hlY2sgaWYgdGhlIHBhY2thZ2UgdGhhdCB5b3UgYXJlIGFib3V0IHRvIHJlZ2lzdGVyIGlzIGluIHRoZSB3b3Jrc3BhY2UuCisJCSAqIFRvIHJlZ2lzdGVyIGEgcGFja2FnZSBwcm9wZXJseSwgcGxlYXNlIGZvbGxvdyB0aGUgZm9sbG93aW5nIGNvbnZlbnRpb25zOgorCQkgKgorCQkgKiBpZiAoIWlzSW5Xb3Jrc3BhY2UoVU1MUGFja2FnZS5jbGFzcykpIHsKKwkJICogLy8gVGhlIG5vcm1hbCBwYWNrYWdlIHJlZ2lzdHJhdGlvbiBpZiB5b3VyIG1ldGFtb2RlbCBpcyBpbiBhIHBsdWdpbi4KKwkJICogcmVzb3VyY2VTZXQuZ2V0UGFja2FnZVJlZ2lzdHJ5KCkucHV0KFVNTFBhY2thZ2UuZU5TX1VSSSwgVU1MUGFja2FnZS5lSU5TVEFOQ0UpOworCQkgKiB9IGVsc2UgeworCQkgKiAvLyBUaGUgcGFja2FnZSByZWdpc3RyYXRpb24gdGhhdCB3aWxsIGJlIHVzZWQgaWYgdGhlIG1ldGFtb2RlbCBpcyBub3QgZGVwbG95ZWQgaW4gYSBwbHVnaW4uCisJCSAqIC8vIFRoaXMgc2hvdWxkIGJlIHVzZWQgaWYgeW91ciBtZXRhbW9kZWwgaXMgaW4geW91ciB3b3Jrc3BhY2UgYW5kIGlmIHlvdSBhcmUgdXNpbmcgYmluYXJ5IHJlc291cmNlIHNlcmlhbGl6YXRpb24uCisJCSAqIHJlc291cmNlU2V0LmdldFBhY2thZ2VSZWdpc3RyeSgpLnB1dCgiL215cHJvamVjdC9teWZvbGRlci9teXN1YmZvbGRlci9NeVVNTE1ldGFtb2RlbC5lY29yZSIsIFVNTFBhY2thZ2UuZUlOU1RBTkNFKTsKKwkJICogfQorCQkgKi8KKworCQkvLworCisJCS8vIHRyeSB7CisJCS8vIFVSSSB1cmkgPSBVUkkuY3JlYXRlUGxhdGZvcm1QbHVnaW5VUkkoIm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9tb2RlbC9Qcm90ZXVzUHJvZmlsZS5wcm9maWxlLnVtbCIsIHRydWUpOworCQkvLworCQkvLyBSZXNvdXJjZSByZXMgPSByZXNvdXJjZVNldC5nZXRSZXNvdXJjZSh1cmksIHRydWUpOworCQkvLyBQcm9maWxlIHByb2ZpbGUgPSAoUHJvZmlsZSlyZXMuZ2V0Q29udGVudHMoKS5nZXQoMCk7CisJCS8vIEVQYWNrYWdlIGVwYWNrYWdlID0gcHJvZmlsZS5nZXREZWZpbml0aW9uKCk7CisJCS8vIHBhY2thZ2VSZWdpc3RyeS5wdXQoZXBhY2thZ2UuZ2V0TnNVUkkoKSwgZXBhY2thZ2UpOworCQkvLyB9IGNhdGNoIChFeGNlcHRpb24gZSkgeworCQkvLyBTeXN0ZW0ub3V0LnByaW50bG4oIi0tLS0gZXJyb3IgbG9hZGluZyBwcm9maWxlOiAiICsgZSk7CisJCS8vIGUucHJpbnRTdGFja1RyYWNlKCk7CisJCS8vIH0KKwl9CisKKwkvKioKKwkgKiBUaGlzIGNhbiBiZSB1c2VkIHRvIHVwZGF0ZSB0aGUgcmVzb3VyY2Ugc2V0J3MgcmVzb3VyY2UgZmFjdG9yeSByZWdpc3RyeSB3aXRoIGFsbCBuZWVkZWQgZmFjdG9yaWVzLgorCSAqCisJICogQHBhcmFtIHJlc291cmNlU2V0CisJICogICAgICAgICAgICBUaGUgcmVzb3VyY2Ugc2V0IHdoaWNoIHJlZ2lzdHJ5IGhhcyB0byBiZSB1cGRhdGVkLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCByZWdpc3RlclJlc291cmNlRmFjdG9yaWVzKFJlc291cmNlU2V0IHJlc291cmNlU2V0KSB7CisJCXN1cGVyLnJlZ2lzdGVyUmVzb3VyY2VGYWN0b3JpZXMocmVzb3VyY2VTZXQpOworCQkvKgorCQkgKiBJZiB5b3Ugd2FudCB0byBjaGFuZ2UgdGhlIGNvbnRlbnQgb2YgdGhpcyBtZXRob2QsIGRvIE5PVCBmb3JnZXQgdG8gY2hhbmdlIHRoZSAiQGdlbmVyYXRlZCIKKwkJICogdGFnIGluIHRoZSBKYXZhZG9jIG9mIHRoaXMgbWV0aG9kIHRvICJAZ2VuZXJhdGVkIE5PVCIuIFdpdGhvdXQgdGhpcyBuZXcgdGFnLCBhbnkgY29tcGlsYXRpb24KKwkJICogb2YgdGhlIEFjY2VsZW8gbW9kdWxlIHdpdGggdGhlIG1haW4gdGVtcGxhdGUgdGhhdCBoYXMgY2F1c2VkIHRoZSBjcmVhdGlvbiBvZiB0aGlzIGNsYXNzIHdpbGwKKwkJICogcmV2ZXJ0IHlvdXIgbW9kaWZpY2F0aW9ucy4KKwkJICovCisKKwkJLyoKKwkJICogVE9ETyBJZiB5b3UgbmVlZCBhZGRpdGlvbmFsIHJlc291cmNlIGZhY3RvcmllcyByZWdpc3RyYXRpb25zLCB5b3UgY2FuIHJlZ2lzdGVyIHRoZW0gaGVyZS4gdGhlIGZvbGxvd2luZyBsaW5lCisJCSAqIChpbiBjb21tZW50KSBpcyBhbiBleGFtcGxlIG9mIHRoZSByZXNvdXJjZSBmYWN0b3J5IHJlZ2lzdHJhdGlvbiBmb3IgVU1MLgorCQkgKgorCQkgKiBJZiB5b3Ugd2FudCB0byB1c2UgdGhlIGdlbmVyYXRvciBpbiBzdGFuZCBhbG9uZSwgdGhlIHJlc291cmNlIGZhY3RvcnkgcmVnaXN0cmF0aW9uIHdpbGwgYmUgcmVxdWlyZWQuCisJCSAqCisJCSAqIFRvIGxlYXJuIG1vcmUgYWJvdXQgdGhlIHJlZ2lzdHJhdGlvbiBvZiBSZXNvdXJjZSBGYWN0b3JpZXMsIGhhdmUgYSBsb29rIGF0IHRoZSBBY2NlbGVvIGRvY3VtZW50YXRpb24gKEhlbHAgLT4gSGVscCBDb250ZW50cykuCisJCSAqLworCisJCS8vIHJlc291cmNlU2V0LmdldFJlc291cmNlRmFjdG9yeVJlZ2lzdHJ5KCkuZ2V0RXh0ZW5zaW9uVG9GYWN0b3J5TWFwKCkucHV0KFVNTFJlc291cmNlLkZJTEVfRVhURU5TSU9OLCBVTUxSZXNvdXJjZS5GYWN0b3J5LklOU1RBTkNFKTsKKwl9CisKK30KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvUlRNYXBzRGF0YVR5cGVRdWVyaWVzLmVtdGwgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL1JUTWFwc0RhdGFUeXBlUXVlcmllcy5lbXRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZjNTExZjQKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL1JUTWFwc0RhdGFUeXBlUXVlcmllcy5lbXRsCkBAIC0wLDAgKzEsMTA1MCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iQ3AxMjUyIj8+Cis8eG1pOlhNSSB4bWk6dmVyc2lvbj0iMi4wIiB4bWxuczp4bWk9Imh0dHA6Ly93d3cub21nLm9yZy9YTUkiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zOmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIiB4bWxuczptdGw9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvYWNjZWxlby9tdGwvMy4wIiB4bWxuczpvY2wuZWNvcmU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL0Vjb3JlIj4KKyAgPG10bDpNb2R1bGUgbmFtZT0iUlRNYXBzRGF0YVR5cGVRdWVyaWVzIiBuc1VSST0ib3JnOjplY2xpcHNlOjpwYXB5cnVzOjpyb2JvdG1sOjpnZW5lcmF0b3JzOjppbnRlbXBvcmE6OnJ0bWFwczo6UlRNYXBzRGF0YVR5cGVRdWVyaWVzIiBzdGFydEhlYWRlclBvc2l0aW9uPSI3NzQiIGVuZEhlYWRlclBvc2l0aW9uPSI4NzIiPgorICAgIDxpbnB1dD4KKyAgICAgIDx0YWtlc1R5cGVzRnJvbSBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8iLz4KKyAgICA8L2lucHV0PgorICAgIDxpbnB1dD4KKyAgICAgIDx0YWtlc1R5cGVzRnJvbSBocmVmPSJodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEjLyIvPgorICAgIDwvaW5wdXQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlF1ZXJ5IiBuYW1lPSJnZXRNQVBTSU9FbHRBY2Nlc3NGdW5jdGlvbiIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0idHlwZV9uYW1lIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImlvZWx0X25hbWUiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0icmV0dXJuX3Zhcl9uYW1lIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii81Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMuUlRNYXBzRGF0YVR5cGVRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0TUFQU0lPRWx0QWNjZXNzRnVuY3Rpb24oamF2YS5sYW5nLlN0cmluZywgamF2YS5sYW5nLlN0cmluZywgamF2YS5sYW5nLlN0cmluZykiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvNC9TZXF1ZW5jZShTdHJpbmcpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJ0eXBlX25hbWUiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldE1BUFNJT0VsdEFjY2Vzc0Z1bmN0aW9uL3R5cGVfbmFtZSI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJpb2VsdF9uYW1lIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRNQVBTSU9FbHRBY2Nlc3NGdW5jdGlvbi9pb2VsdF9uYW1lIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InJldHVybl92YXJfbmFtZSIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0TUFQU0lPRWx0QWNjZXNzRnVuY3Rpb24vcmV0dXJuX3Zhcl9uYW1lIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgIDwvZXhwcmVzc2lvbj4KKyAgICAgIDx0eXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0UlRNYXBzT3V0cHV0RGVmRm9yUHJpbWl0aXZlVHlwZSIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iYXJnMCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJhcmcxIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImFyZzIiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii84Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMuUlRNYXBzRGF0YVR5cGVRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0UlRNYXBzT3V0cHV0RGVmRm9yUHJpbWl0aXZlVHlwZShqYXZhLmxhbmcuU3RyaW5nLCBqYXZhLmxhbmcuU3RyaW5nLCBpbnQpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzQvU2VxdWVuY2UoT2NsQW55KSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYXJnMCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0UlRNYXBzT3V0cHV0RGVmRm9yUHJpbWl0aXZlVHlwZS9hcmcwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImFyZzEiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldFJUTWFwc091dHB1dERlZkZvclByaW1pdGl2ZVR5cGUvYXJnMSI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYXJnMiIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0UlRNYXBzT3V0cHV0RGVmRm9yUHJpbWl0aXZlVHlwZS9hcmcyIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6UXVlcnkiIG5hbWU9ImdldFJUTWFwc0lucHV0RGVmRm9yUHJpbWl0aXZlVHlwZSIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iYXJnMCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJhcmcxIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgICA8ZXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9PY2xBbnlfQ2xhc3MvaW52b2tlIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InNlbGYiIHJlZmVycmVkVmFyaWFibGU9Ii8xMSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLlJUTWFwc0RhdGFUeXBlUXVlcmllcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImdldFJUTWFwc0lucHV0RGVmRm9yUHJpbWl0aXZlVHlwZShqYXZhLmxhbmcuU3RyaW5nLCBqYXZhLmxhbmcuU3RyaW5nKSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uTGl0ZXJhbEV4cCIgZVR5cGU9Ii80L1NlcXVlbmNlKFN0cmluZykiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImFyZzAiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldFJUTWFwc0lucHV0RGVmRm9yUHJpbWl0aXZlVHlwZS9hcmcwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImFyZzEiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldFJUTWFwc0lucHV0RGVmRm9yUHJpbWl0aXZlVHlwZS9hcmcxIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgIDwvZXhwcmVzc2lvbj4KKyAgICAgIDx0eXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0UGNrT3V0cHV0RGlyIiB2aXNpYmlsaXR5PSJQdWJsaWMiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJhcmciPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzE0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMuUlRNYXBzRGF0YVR5cGVRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0UGNrT3V0cHV0RGlyKGphdmEubGFuZy5TdHJpbmcpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzQvU2VxdWVuY2UoU3RyaW5nKSIga2luZD0iU2VxdWVuY2UiPgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYXJnIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRQY2tPdXRwdXREaXIvYXJnIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgIDwvZXhwcmVzc2lvbj4KKyAgICAgIDx0eXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iZ2V0TmJFbGVtZW50c0luVmVjdG9yIiB2aXNpYmlsaXR5PSJQdWJsaWMiPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJ0eXBlX25hbWUiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iaW9lbHRfbmFtZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJyZXR1cm5fdmFsdWVfbmFtZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvMTciPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy5SVE1hcHNEYXRhVHlwZVF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJnZXROYkVsZW1lbnRzSW5WZWN0b3IoamF2YS5sYW5nLlN0cmluZywgamF2YS5sYW5nLlN0cmluZywgamF2YS5sYW5nLlN0cmluZykiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvNC9TZXF1ZW5jZShTdHJpbmcpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJ0eXBlX25hbWUiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldE5iRWxlbWVudHNJblZlY3Rvci90eXBlX25hbWUiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iaW9lbHRfbmFtZSIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2V0TmJFbGVtZW50c0luVmVjdG9yL2lvZWx0X25hbWUiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icmV0dXJuX3ZhbHVlX25hbWUiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldE5iRWxlbWVudHNJblZlY3Rvci9yZXR1cm5fdmFsdWVfbmFtZSI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6UXVlcnkiIG5hbWU9InNldFZlY3RvclNpemVGb3JWZWN0b3IiIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9InR5cGVfbmFtZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJuYl9lbGVtZW50cyI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iaW9lbHRfbmFtZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvMjAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy5SVE1hcHNEYXRhVHlwZVF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJzZXRWZWN0b3JTaXplRm9yVmVjdG9yKGphdmEubGFuZy5TdHJpbmcsIGludCwgamF2YS5sYW5nLlN0cmluZykiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvNC9TZXF1ZW5jZShPY2xBbnkpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJ0eXBlX25hbWUiIHJlZmVycmVkVmFyaWFibGU9Ii8wL3NldFZlY3RvclNpemVGb3JWZWN0b3IvdHlwZV9uYW1lIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJuYl9lbGVtZW50cyIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvc2V0VmVjdG9yU2l6ZUZvclZlY3Rvci9uYl9lbGVtZW50cyI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICA8L2l0ZW0+CisgICAgICAgICAgPC9wYXJ0PgorICAgICAgICAgIDxwYXJ0IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkl0ZW0iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPGl0ZW0geHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iaW9lbHRfbmFtZSIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvc2V0VmVjdG9yU2l6ZUZvclZlY3Rvci9pb2VsdF9uYW1lIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgIDwvZXhwcmVzc2lvbj4KKyAgICAgIDx0eXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpRdWVyeSIgbmFtZT0iaGFzUlRNYXBzTmF0aXZlSW1wbGVtZW50YXRpb24iIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImMiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzIzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMuUlRNYXBzRGF0YVR5cGVRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iaGFzUlRNYXBzTmF0aXZlSW1wbGVtZW50YXRpb24ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzQvU2VxdWVuY2UoQ2xhc3MpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9oYXNSVE1hcHNOYXRpdmVJbXBsZW1lbnRhdGlvbi9jIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgPC9pdGVtPgorICAgICAgICAgIDwvcGFydD4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgIDwvZXhwcmVzc2lvbj4KKyAgICAgIDx0eXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6UXVlcnkiIG5hbWU9ImdldFJUTWFwc05hdGl2ZUNvbXBvbmVudE5hbWVGcm9tR2VuZXJpY0F0dHJpYnV0ZSIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iYyI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPGV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvT2NsQW55X0NsYXNzL2ludm9rZSI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJzZWxmIiByZWZlcnJlZFZhcmlhYmxlPSIvMjYiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9zb3VyY2U+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy5SVE1hcHNEYXRhVHlwZVF1ZXJpZXMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJnZXRSVE1hcHNOYXRpdmVDb21wb25lbnROYW1lRnJvbUdlbmVyaWNBdHRyaWJ1dGUob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25MaXRlcmFsRXhwIiBlVHlwZT0iLzQvU2VxdWVuY2UoQ2xhc3MpIiBraW5kPSJTZXF1ZW5jZSI+CisgICAgICAgICAgPHBhcnQgeHNpOnR5cGU9Im9jbC5lY29yZTpDb2xsZWN0aW9uSXRlbSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICA8aXRlbSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZXRSVE1hcHNOYXRpdmVDb21wb25lbnROYW1lRnJvbUdlbmVyaWNBdHRyaWJ1dGUvYyI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6UXVlcnkiIG5hbWU9ImdldFJUTWFwc05hdGl2ZUxpYnJhcnlQYXRoRnJvbUdlbmVyaWNBdHRyaWJ1dGUiIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImMiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxleHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL09jbEFueV9DbGFzcy9pbnZva2UiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic2VsZiIgcmVmZXJyZWRWYXJpYWJsZT0iLzI5Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvc291cmNlPgorICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMuUlRNYXBzRGF0YVR5cGVRdWVyaWVzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZ2V0UlRNYXBzTmF0aXZlTGlicmFyeVBhdGhGcm9tR2VuZXJpY0F0dHJpYnV0ZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29sbGVjdGlvbkxpdGVyYWxFeHAiIGVUeXBlPSIvNC9TZXF1ZW5jZShDbGFzcykiIGtpbmQ9IlNlcXVlbmNlIj4KKyAgICAgICAgICA8cGFydCB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbGxlY3Rpb25JdGVtIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgIDxpdGVtIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dldFJUTWFwc05hdGl2ZUxpYnJhcnlQYXRoRnJvbUdlbmVyaWNBdHRyaWJ1dGUvYyI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgIDwvaXRlbT4KKyAgICAgICAgICA8L3BhcnQ+CisgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICA8L2V4cHJlc3Npb24+CisgICAgICA8dHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgPC9tdGw6TW9kdWxlPgorICA8ZWNvcmU6RVBhY2thZ2UgbmFtZT0iYWRkaXRpb25zIj4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlN0cmluZ19DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJJbnRlZ2VyX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJSZWFsX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvUmVhbCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFT2JqZWN0X0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0TUFQU0lPRWx0QWNjZXNzRnVuY3Rpb24iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZXRNQVBTSU9FbHRBY2Nlc3NGdW5jdGlvbiIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJ0eXBlX25hbWUiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImlvZWx0X25hbWUiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InJldHVybl92YXJfbmFtZSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRSVE1hcHNPdXRwdXREZWZGb3JQcmltaXRpdmVUeXBlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZ2V0UlRNYXBzT3V0cHV0RGVmRm9yUHJpbWl0aXZlVHlwZSIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJhcmcwIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJhcmcxIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJhcmcyIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRSVE1hcHNJbnB1dERlZkZvclByaW1pdGl2ZVR5cGUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZXRSVE1hcHNJbnB1dERlZkZvclByaW1pdGl2ZVR5cGUiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYXJnMCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYXJnMSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRQY2tPdXRwdXREaXIiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZXRQY2tPdXRwdXREaXIiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYXJnIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldE5iRWxlbWVudHNJblZlY3RvciI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dldE5iRWxlbWVudHNJblZlY3RvciIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJ0eXBlX25hbWUiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImlvZWx0X25hbWUiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InJldHVybl92YWx1ZV9uYW1lIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9InNldFZlY3RvclNpemVGb3JWZWN0b3IiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9zZXRWZWN0b3JTaXplRm9yVmVjdG9yIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InR5cGVfbmFtZSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibmJfZWxlbWVudHMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJpb2VsdF9uYW1lIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9Imhhc1JUTWFwc05hdGl2ZUltcGxlbWVudGF0aW9uIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvaGFzUlRNYXBzTmF0aXZlSW1wbGVtZW50YXRpb24iLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0UlRNYXBzTmF0aXZlQ29tcG9uZW50TmFtZUZyb21HZW5lcmljQXR0cmlidXRlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZ2V0UlRNYXBzTmF0aXZlQ29tcG9uZW50TmFtZUZyb21HZW5lcmljQXR0cmlidXRlIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0UlRNYXBzTmF0aXZlTGlicmFyeVBhdGhGcm9tR2VuZXJpY0F0dHJpYnV0ZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dldFJUTWFwc05hdGl2ZUxpYnJhcnlQYXRoRnJvbUdlbmVyaWNBdHRyaWJ1dGUiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9jbEFueV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaW52b2tlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCBub24tc3RhbmRhcmQiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY2xhc3MiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im1ldGhvZCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYXJndW1lbnRzIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvYWNjZWxlby9tdGwvMy4wL210bG5vbnN0ZGxpYi5lY29yZSMvL1NlcXVlbmNlKE9jbEFueSkiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb2xsZWN0aW9uKFQpX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQ29sbGVjdGlvbihUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTZXF1ZW5jZShUKV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1NlcXVlbmNlKFQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9yZGVyZWRTZXQoVClfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PcmRlcmVkU2V0KFQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNsYXNzX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICA8L2Vjb3JlOkVQYWNrYWdlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8ZWNvcmU6RVBhY2thZ2UgbmFtZT0iY29sbGVjdGlvbnMiPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIG5hbWU9IlNlcXVlbmNlKFN0cmluZykiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuTGlzdCI+CisgICAgICA8ZWxlbWVudFR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgbmFtZT0iU2VxdWVuY2UoT2NsQW55KSIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEudXRpbC5MaXN0Ij4KKyAgICAgIDxlbGVtZW50VHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJvY2wuZWNvcmU6U2VxdWVuY2VUeXBlIiBuYW1lPSJTZXF1ZW5jZShDbGFzcykiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuTGlzdCI+CisgICAgICA8ZWxlbWVudFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgIDwvZWNvcmU6RVBhY2thZ2U+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8ZWNvcmU6RUFubm90YXRpb24gc291cmNlPSJwb3NpdGlvbnMiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMCIgcmVmZXJlbmNlcz0iLzAvZ2V0TUFQU0lPRWx0QWNjZXNzRnVuY3Rpb24iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg3OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMSIgcmVmZXJlbmNlcz0iLzAvZ2V0TUFQU0lPRWx0QWNjZXNzRnVuY3Rpb24vdHlwZV9uYW1lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTM3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMiIgcmVmZXJlbmNlcz0iLzAvZ2V0TUFQU0lPRWx0QWNjZXNzRnVuY3Rpb24vaW9lbHRfbmFtZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTM5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk1OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMiIHJlZmVyZW5jZXM9Ii8wL2dldE1BUFNJT0VsdEFjY2Vzc0Z1bmN0aW9uL3JldHVybl92YXJfbmFtZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTYwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk4NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQiIHJlZmVyZW5jZXM9Ii8wL2dldE1BUFNJT0VsdEFjY2Vzc0Z1bmN0aW9uLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk5OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjE4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41IiByZWZlcmVuY2VzPSIvMC9nZXRNQVBTSU9FbHRBY2Nlc3NGdW5jdGlvbi8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42IiByZWZlcmVuY2VzPSIvMC9nZXRNQVBTSU9FbHRBY2Nlc3NGdW5jdGlvbi8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwMDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTA4NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNyIgcmVmZXJlbmNlcz0iLzAvZ2V0TUFQU0lPRWx0QWNjZXNzRnVuY3Rpb24vJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwODciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE2OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOCIgcmVmZXJlbmNlcz0iLzAvZ2V0TUFQU0lPRWx0QWNjZXNzRnVuY3Rpb24vJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTIxNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOSIgcmVmZXJlbmNlcz0iLzAvZ2V0TUFQU0lPRWx0QWNjZXNzRnVuY3Rpb24vJS8lLjIvJS90eXBlX25hbWUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExODAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE4OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTAiIHJlZmVyZW5jZXM9Ii8wL2dldE1BUFNJT0VsdEFjY2Vzc0Z1bmN0aW9uLyUvJS4yLyUuMS9pb2VsdF9uYW1lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTkwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEyMDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExIiByZWZlcmVuY2VzPSIvMC9nZXRNQVBTSU9FbHRBY2Nlc3NGdW5jdGlvbi8lLyUuMi8lLjIvcmV0dXJuX3Zhcl9uYW1lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjAxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEyMTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyIiByZWZlcmVuY2VzPSIvMC9nZXRSVE1hcHNPdXRwdXREZWZGb3JQcmltaXRpdmVUeXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjI2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE1MzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMyIgcmVmZXJlbmNlcz0iLzAvZ2V0UlRNYXBzT3V0cHV0RGVmRm9yUHJpbWl0aXZlVHlwZS9hcmcwIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjc1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEyODgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNCIgcmVmZXJlbmNlcz0iLzAvZ2V0UlRNYXBzT3V0cHV0RGVmRm9yUHJpbWl0aXZlVHlwZS9hcmcxIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjkwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEzMDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNSIgcmVmZXJlbmNlcz0iLzAvZ2V0UlRNYXBzT3V0cHV0RGVmRm9yUHJpbWl0aXZlVHlwZS9hcmcyIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMzA1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEzMTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNiIgcmVmZXJlbmNlcz0iLzAvZ2V0UlRNYXBzT3V0cHV0RGVmRm9yUHJpbWl0aXZlVHlwZS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMzM0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE1MjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3IiByZWZlcmVuY2VzPSIvMC9nZXRSVE1hcHNPdXRwdXREZWZGb3JQcmltaXRpdmVUeXBlLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4IiByZWZlcmVuY2VzPSIvMC9nZXRSVE1hcHNPdXRwdXREZWZGb3JQcmltaXRpdmVUeXBlLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTM0MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNDIwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xOSIgcmVmZXJlbmNlcz0iLzAvZ2V0UlRNYXBzT3V0cHV0RGVmRm9yUHJpbWl0aXZlVHlwZS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTQyMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNDk5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMCIgcmVmZXJlbmNlcz0iLzAvZ2V0UlRNYXBzT3V0cHV0RGVmRm9yUHJpbWl0aXZlVHlwZS8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTUwMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNTI3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMSIgcmVmZXJlbmNlcz0iLzAvZ2V0UlRNYXBzT3V0cHV0RGVmRm9yUHJpbWl0aXZlVHlwZS8lLyUuMi8lL2FyZzAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE1MTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTUxNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjIiIHJlZmVyZW5jZXM9Ii8wL2dldFJUTWFwc091dHB1dERlZkZvclByaW1pdGl2ZVR5cGUvJS8lLjIvJS4xL2FyZzEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE1MTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTUyMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjMiIHJlZmVyZW5jZXM9Ii8wL2dldFJUTWFwc091dHB1dERlZkZvclByaW1pdGl2ZVR5cGUvJS8lLjIvJS4yL2FyZzIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE1MjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTUyNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQiIHJlZmVyZW5jZXM9Ii8wL2dldFJUTWFwc0lucHV0RGVmRm9yUHJpbWl0aXZlVHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTUzNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxODExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjUiIHJlZmVyZW5jZXM9Ii8wL2dldFJUTWFwc0lucHV0RGVmRm9yUHJpbWl0aXZlVHlwZS9hcmcwIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNTgzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE1OTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNiIgcmVmZXJlbmNlcz0iLzAvZ2V0UlRNYXBzSW5wdXREZWZGb3JQcmltaXRpdmVUeXBlL2FyZzEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE1OTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTYxMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI3IiByZWZlcmVuY2VzPSIvMC9nZXRSVE1hcHNJbnB1dERlZkZvclByaW1pdGl2ZVR5cGUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTYyNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxODA4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOCIgcmVmZXJlbmNlcz0iLzAvZ2V0UlRNYXBzSW5wdXREZWZGb3JQcmltaXRpdmVUeXBlLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5IiByZWZlcmVuY2VzPSIvMC9nZXRSVE1hcHNJbnB1dERlZkZvclByaW1pdGl2ZVR5cGUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNjMzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE3MTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMwIiByZWZlcmVuY2VzPSIvMC9nZXRSVE1hcHNJbnB1dERlZkZvclByaW1pdGl2ZVR5cGUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE3MTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTc4NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzEiIHJlZmVyZW5jZXM9Ii8wL2dldFJUTWFwc0lucHV0RGVmRm9yUHJpbWl0aXZlVHlwZS8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTc4NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxODA3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMiIgcmVmZXJlbmNlcz0iLzAvZ2V0UlRNYXBzSW5wdXREZWZGb3JQcmltaXRpdmVUeXBlLyUvJS4yLyUvYXJnMCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTc5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxODAwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMyIgcmVmZXJlbmNlcz0iLzAvZ2V0UlRNYXBzSW5wdXREZWZGb3JQcmltaXRpdmVUeXBlLyUvJS4yLyUuMS9hcmcxIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxODAyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4MDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM0IiByZWZlcmVuY2VzPSIvMC9nZXRQY2tPdXRwdXREaXIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4MTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjAxNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM1IiByZWZlcmVuY2VzPSIvMC9nZXRQY2tPdXRwdXREaXIvYXJnIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxODQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4NTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjMwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNiIgcmVmZXJlbmNlcz0iLzAvZ2V0UGNrT3V0cHV0RGlyLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4NzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjAxMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzciIHJlZmVyZW5jZXM9Ii8wL2dldFBja091dHB1dERpci8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zOCIgcmVmZXJlbmNlcz0iLzAvZ2V0UGNrT3V0cHV0RGlyLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTg3OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTU4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zOSIgcmVmZXJlbmNlcz0iLzAvZ2V0UGNrT3V0cHV0RGlyLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTYwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5OTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQwIiByZWZlcmVuY2VzPSIvMC9nZXRQY2tPdXRwdXREaXIvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE5OTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjAxMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDEiIHJlZmVyZW5jZXM9Ii8wL2dldFBja091dHB1dERpci8lLyUuMi8lL2FyZyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjAwNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMDA5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MiIgcmVmZXJlbmNlcz0iLzAvZ2V0TmJFbGVtZW50c0luVmVjdG9yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMDE4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIzNTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjMzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MyIgcmVmZXJlbmNlcz0iLzAvZ2V0TmJFbGVtZW50c0luVmVjdG9yL3R5cGVfbmFtZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjA1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMDcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzMyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDQiIHJlZmVyZW5jZXM9Ii8wL2dldE5iRWxlbWVudHNJblZlY3Rvci9pb2VsdF9uYW1lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMDc0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIwOTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjMzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NSIgcmVmZXJlbmNlcz0iLzAvZ2V0TmJFbGVtZW50c0luVmVjdG9yL3JldHVybl92YWx1ZV9uYW1lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMDk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIxMjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjMzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NiIgcmVmZXJlbmNlcz0iLzAvZ2V0TmJFbGVtZW50c0luVmVjdG9yLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxMzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjM1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDciIHJlZmVyZW5jZXM9Ii8wL2dldE5iRWxlbWVudHNJblZlY3Rvci8lL3NlbGYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ii0xIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40OCIgcmVmZXJlbmNlcz0iLzAvZ2V0TmJFbGVtZW50c0luVmVjdG9yLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjE0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjIyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40OSIgcmVmZXJlbmNlcz0iLzAvZ2V0TmJFbGVtZW50c0luVmVjdG9yLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMjI0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIzMDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUwIiByZWZlcmVuY2VzPSIvMC9nZXROYkVsZW1lbnRzSW5WZWN0b3IvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIzMDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjM1MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTEiIHJlZmVyZW5jZXM9Ii8wL2dldE5iRWxlbWVudHNJblZlY3Rvci8lLyUuMi8lL3R5cGVfbmFtZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjMxMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41MiIgcmVmZXJlbmNlcz0iLzAvZ2V0TmJFbGVtZW50c0luVmVjdG9yLyUvJS4yLyUuMS9pb2VsdF9uYW1lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMzIzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIzMzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUzIiByZWZlcmVuY2VzPSIvMC9nZXROYkVsZW1lbnRzSW5WZWN0b3IvJS8lLjIvJS4yL3JldHVybl92YWx1ZV9uYW1lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMzM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIzNTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU0IiByZWZlcmVuY2VzPSIvMC9zZXRWZWN0b3JTaXplRm9yVmVjdG9yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMzYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI2NzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41NSIgcmVmZXJlbmNlcz0iLzAvc2V0VmVjdG9yU2l6ZUZvclZlY3Rvci90eXBlX25hbWUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIzOTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjQxNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU2IiByZWZlcmVuY2VzPSIvMC9zZXRWZWN0b3JTaXplRm9yVmVjdG9yL25iX2VsZW1lbnRzIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNDE4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI0MzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41NyIgcmVmZXJlbmNlcz0iLzAvc2V0VmVjdG9yU2l6ZUZvclZlY3Rvci9pb2VsdF9uYW1lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNDQxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI0NjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41OCIgcmVmZXJlbmNlcz0iLzAvc2V0VmVjdG9yU2l6ZUZvclZlY3Rvci8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNDc1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI2NzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU5IiByZWZlcmVuY2VzPSIvMC9zZXRWZWN0b3JTaXplRm9yVmVjdG9yLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjYwIiByZWZlcmVuY2VzPSIvMC9zZXRWZWN0b3JTaXplRm9yVmVjdG9yLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjQ4MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MSIgcmVmZXJlbmNlcz0iLzAvc2V0VmVjdG9yU2l6ZUZvclZlY3Rvci8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjU2MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjI4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MiIgcmVmZXJlbmNlcz0iLzAvc2V0VmVjdG9yU2l6ZUZvclZlY3Rvci8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjYzMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjc0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MyIgcmVmZXJlbmNlcz0iLzAvc2V0VmVjdG9yU2l6ZUZvclZlY3Rvci8lLyUuMi8lL3R5cGVfbmFtZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjYzOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjQ4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42NCIgcmVmZXJlbmNlcz0iLzAvc2V0VmVjdG9yU2l6ZUZvclZlY3Rvci8lLyUuMi8lLjEvbmJfZWxlbWVudHMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI2NTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjY2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjUiIHJlZmVyZW5jZXM9Ii8wL3NldFZlY3RvclNpemVGb3JWZWN0b3IvJS8lLjIvJS4yL2lvZWx0X25hbWUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI2NjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjY3MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjYiIHJlZmVyZW5jZXM9Ii8wL2hhc1JUTWFwc05hdGl2ZUltcGxlbWVudGF0aW9uIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNjgyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI5MTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42NyIgcmVmZXJlbmNlcz0iLzAvaGFzUlRNYXBzTmF0aXZlSW1wbGVtZW50YXRpb24vYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjcyNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNzM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzOSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjgiIHJlZmVyZW5jZXM9Ii8wL2hhc1JUTWFwc05hdGl2ZUltcGxlbWVudGF0aW9uLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI3NTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjkxMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjkiIHJlZmVyZW5jZXM9Ii8wL2hhc1JUTWFwc05hdGl2ZUltcGxlbWVudGF0aW9uLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjcwIiByZWZlcmVuY2VzPSIvMC9oYXNSVE1hcHNOYXRpdmVJbXBsZW1lbnRhdGlvbi8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI3NTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjgzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzEiIHJlZmVyZW5jZXM9Ii8wL2hhc1JUTWFwc05hdGl2ZUltcGxlbWVudGF0aW9uLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyODM5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI4OTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjcyIiByZWZlcmVuY2VzPSIvMC9oYXNSVE1hcHNOYXRpdmVJbXBsZW1lbnRhdGlvbi8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjkwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyOTExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43MyIgcmVmZXJlbmNlcz0iLzAvaGFzUlRNYXBzTmF0aXZlSW1wbGVtZW50YXRpb24vJS8lLjIvJS9jIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyOTA5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI5MTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjc0IiByZWZlcmVuY2VzPSIvMC9nZXRSVE1hcHNOYXRpdmVDb21wb25lbnROYW1lRnJvbUdlbmVyaWNBdHRyaWJ1dGUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI5MTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzE4OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjc1IiByZWZlcmVuY2VzPSIvMC9nZXRSVE1hcHNOYXRpdmVDb21wb25lbnROYW1lRnJvbUdlbmVyaWNBdHRyaWJ1dGUvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjk4MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyOTkxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0MiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzYiIHJlZmVyZW5jZXM9Ii8wL2dldFJUTWFwc05hdGl2ZUNvbXBvbmVudE5hbWVGcm9tR2VuZXJpY0F0dHJpYnV0ZS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMDA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMxODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjc3IiByZWZlcmVuY2VzPSIvMC9nZXRSVE1hcHNOYXRpdmVDb21wb25lbnROYW1lRnJvbUdlbmVyaWNBdHRyaWJ1dGUvJS9zZWxmIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSItMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzgiIHJlZmVyZW5jZXM9Ii8wL2dldFJUTWFwc05hdGl2ZUNvbXBvbmVudE5hbWVGcm9tR2VuZXJpY0F0dHJpYnV0ZS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMwMTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzA5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzkiIHJlZmVyZW5jZXM9Ii8wL2dldFJUTWFwc05hdGl2ZUNvbXBvbmVudE5hbWVGcm9tR2VuZXJpY0F0dHJpYnV0ZS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzA5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMTcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44MCIgcmVmZXJlbmNlcz0iLzAvZ2V0UlRNYXBzTmF0aXZlQ29tcG9uZW50TmFtZUZyb21HZW5lcmljQXR0cmlidXRlLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMTc0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMxODUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjgxIiByZWZlcmVuY2VzPSIvMC9nZXRSVE1hcHNOYXRpdmVDb21wb25lbnROYW1lRnJvbUdlbmVyaWNBdHRyaWJ1dGUvJS8lLjIvJS9jIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMTgzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMxODQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjgyIiByZWZlcmVuY2VzPSIvMC9nZXRSVE1hcHNOYXRpdmVMaWJyYXJ5UGF0aEZyb21HZW5lcmljQXR0cmlidXRlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMTkzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM0NTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQ1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44MyIgcmVmZXJlbmNlcz0iLzAvZ2V0UlRNYXBzTmF0aXZlTGlicmFyeVBhdGhGcm9tR2VuZXJpY0F0dHJpYnV0ZS9jIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMjU0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMyNjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQ1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44NCIgcmVmZXJlbmNlcz0iLzAvZ2V0UlRNYXBzTmF0aXZlTGlicmFyeVBhdGhGcm9tR2VuZXJpY0F0dHJpYnV0ZS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMjc4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM0NTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjg1IiByZWZlcmVuY2VzPSIvMC9nZXRSVE1hcHNOYXRpdmVMaWJyYXJ5UGF0aEZyb21HZW5lcmljQXR0cmlidXRlLyUvc2VsZiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iLTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjg2IiByZWZlcmVuY2VzPSIvMC9nZXRSVE1hcHNOYXRpdmVMaWJyYXJ5UGF0aEZyb21HZW5lcmljQXR0cmlidXRlLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzI4NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMzY0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44NyIgcmVmZXJlbmNlcz0iLzAvZ2V0UlRNYXBzTmF0aXZlTGlicmFyeVBhdGhGcm9tR2VuZXJpY0F0dHJpYnV0ZS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzM2NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNDQyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44OCIgcmVmZXJlbmNlcz0iLzAvZ2V0UlRNYXBzTmF0aXZlTGlicmFyeVBhdGhGcm9tR2VuZXJpY0F0dHJpYnV0ZS8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzQ0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNDU1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44OSIgcmVmZXJlbmNlcz0iLzAvZ2V0UlRNYXBzTmF0aXZlTGlicmFyeVBhdGhGcm9tR2VuZXJpY0F0dHJpYnV0ZS8lLyUuMi8lL2MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM0NTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzQ1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2Vjb3JlOkVBbm5vdGF0aW9uPgorPC94bWk6WE1JPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9SVE1hcHNEYXRhVHlwZVF1ZXJpZXMuamF2YSBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvUlRNYXBzRGF0YVR5cGVRdWVyaWVzLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWE5NDRlMgotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvUlRNYXBzRGF0YVR5cGVRdWVyaWVzLmphdmEKQEAgLTAsMCArMSwxODMgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIElOVEVNUE9SQSBTLkEuCisgKgorICogVGhpcyBzb2Z0d2FyZSBpcyBhIGNvbXB1dGVyIHByb2dyYW0gd2hvc2UgcHVycG9zZSBpcyB0byB0cmFuc2Zvcm0gUm9ib3RNTCBtb2RlbHMKKyAqIGludG8gUlRNYXBzIGRpYWdyYW1zIGFuZCBSVE1hcHMgY29tcG9uZW50cyB2aWEgc291cmNlIGNvZGUgZ2VuZXJhdGlvbiB0ZWNobmlxdWVzLgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIE5pY29sYXMgRFUgTEFDIChJTlRFTVBPUkEpIC0gSW5pdGlhbCBBUEkgYW5kIGltcGxlbWVudGF0aW9uCisgKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24ubW1xdWVyaWVzLkFyY2hpdGVjdHVyZVF1ZXJpZXM7CisKK3B1YmxpYyBjbGFzcyBSVE1hcHNEYXRhVHlwZVF1ZXJpZXMgeworCisJcHVibGljIFN0cmluZyBnZXROYkVsZW1lbnRzSW5WZWN0b3IoU3RyaW5nIHR5cGVfbmFtZSwgU3RyaW5nIGlvZWx0X25hbWUsIFN0cmluZyByZXR1cm5fdmFsdWVfbmFtZSkgeworCQlpZiAodHlwZV9uYW1lLmNvbXBhcmVUbygiQm9vbCIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiSW50OCIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiVUludDgiKSA9PSAwIHx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIkludDE2IikgPT0gMCB8fCB0eXBlX25hbWUuY29tcGFyZVRvKCJVSW50MTYiKSA9PSAwIHx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIkludDMyIikgPT0gMAorCQkJCXx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIkJ5dGUiKSA9PSAwIHx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIkNoYXIiKSA9PSAwIHx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIlVJbnQzMiIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiSW50NjQiKSA9PSAwIHx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIlVJbnQ2NCIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiVGltZSIpID09IDAKKwkJCQl8fCB0eXBlX25hbWUuY29tcGFyZVRvKCJEdXJhdGlvbiIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiRmxvYXQzMiIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiRmxvYXQ2NCIpID09IDApCisKKwkJeworCQkJcmV0dXJuICJpbnQgIiArIHJldHVybl92YWx1ZV9uYW1lICsgIiA9ICIgKyBpb2VsdF9uYW1lICsgIi0+VmVjdG9yU2l6ZSgpOyI7CisJCX0gZWxzZSBpZiAodHlwZV9uYW1lLmNvbXBhcmVUbygiU3RyaW5nIikgPT0gMCkgeworCQkJcmV0dXJuICJbU3RyaW5ncyBhcmUgbm90IHN1cHBvcnRlZCB5ZXQuXSI7CisJCX0gZWxzZSB7CisJCQlyZXR1cm4gImludCAiICsgcmV0dXJuX3ZhbHVlX25hbWUgKyAiID0gIiArIGlvZWx0X25hbWUgKyAiLT5WZWN0b3JTaXplKCkgLyBzaXplb2YoIiArIHR5cGVfbmFtZSArICIpOyI7CisJCX0KKwl9CisKKwlwdWJsaWMgU3RyaW5nIHNldFZlY3RvclNpemVGb3JWZWN0b3IoU3RyaW5nIHR5cGVfbmFtZSwgaW50IG5iX2VsZW1lbnRzLCBTdHJpbmcgaW9lbHRfbmFtZSkgeworCQlpZiAodHlwZV9uYW1lLmNvbXBhcmVUbygiQm9vbCIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiSW50OCIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiVUludDgiKSA9PSAwIHx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIkludDE2IikgPT0gMCB8fCB0eXBlX25hbWUuY29tcGFyZVRvKCJVSW50MTYiKSA9PSAwIHx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIkludDMyIikgPT0gMAorCQkJCXx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIkJ5dGUiKSA9PSAwIHx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIkNoYXIiKSA9PSAwIHx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIlVJbnQzMiIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiSW50NjQiKSA9PSAwIHx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIlVJbnQ2NCIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiVGltZSIpID09IDAKKwkJCQl8fCB0eXBlX25hbWUuY29tcGFyZVRvKCJEdXJhdGlvbiIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiRmxvYXQzMiIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiRmxvYXQ2NCIpID09IDApCisKKwkJeworCQkJcmV0dXJuIGlvZWx0X25hbWUgKyAiLT5WZWN0b3JTaXplKCkgPSAiICsgbmJfZWxlbWVudHMgKyAiOyI7CisJCX0gZWxzZSBpZiAodHlwZV9uYW1lLmNvbXBhcmVUbygiU3RyaW5nIikgPT0gMCkgeworCQkJcmV0dXJuICJbU3RyaW5ncyBhcmUgbm90IHN1cHBvcnRlZCB5ZXQuXSI7CisJCX0gZWxzZSB7CisJCQlyZXR1cm4gaW9lbHRfbmFtZSArICItPlZlY3RvclNpemUoKSA9ICIgKyBuYl9lbGVtZW50cyArICIgKiBzaXplb2YoIiArIHR5cGVfbmFtZSArICIpOyI7CisJCX0KKwl9CisKKwlwdWJsaWMgU3RyaW5nIGdldE1BUFNJT0VsdEFjY2Vzc0Z1bmN0aW9uKFN0cmluZyB0eXBlX25hbWUsIFN0cmluZyBpb2VsdF9uYW1lLCBTdHJpbmcgcmV0dXJuX3Zhcl9uYW1lKSB7CisJCWlmICh0eXBlX25hbWUuY29tcGFyZVRvKCJCb29sIikgPT0gMCB8fCB0eXBlX25hbWUuY29tcGFyZVRvKCJJbnQ4IikgPT0gMCB8fCB0eXBlX25hbWUuY29tcGFyZVRvKCJVSW50OCIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiSW50MTYiKSA9PSAwIHx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIlVJbnQxNiIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiSW50MzIiKSA9PSAwKSB7CisJCQlyZXR1cm4gIk1BUFNJbnQzMiogIiArIHJldHVybl92YXJfbmFtZSArICIgPSAmIiArIGlvZWx0X25hbWUgKyAiLT5JbnRlZ2VyMzIoKTsiOworCQl9IGVsc2UgaWYgKHR5cGVfbmFtZS5jb21wYXJlVG8oIkJ5dGUiKSA9PSAwIHx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIkNoYXIiKSA9PSAwKSB7CisJCQlyZXR1cm4gImNoYXIqICIgKyByZXR1cm5fdmFyX25hbWUgKyAiID0gIiArIGlvZWx0X25hbWUgKyAiLT5TdHJlYW04KCk7IjsKKwkJfSBlbHNlIGlmICh0eXBlX25hbWUuY29tcGFyZVRvKCJVSW50MzIiKSA9PSAwIHx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIkludDY0IikgPT0gMCB8fCB0eXBlX25hbWUuY29tcGFyZVRvKCJVSW50NjQiKSA9PSAwIHx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIlRpbWUiKSA9PSAwIHx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIkR1cmF0aW9uIikgPT0gMCkgeworCQkJcmV0dXJuICJNQVBTSW50NjQqICIgKyByZXR1cm5fdmFyX25hbWUgKyAiID0gJiIgKyBpb2VsdF9uYW1lICsgIi0+SW50ZWdlcjY0KCk7IjsKKwkJfSBlbHNlIGlmICh0eXBlX25hbWUuY29tcGFyZVRvKCJGbG9hdDMyIikgPT0gMCkgeworCQkJcmV0dXJuICJNQVBTRmxvYXQzMiogIiArIHJldHVybl92YXJfbmFtZSArICIgPSAmIiArIGlvZWx0X25hbWUgKyAiLT5GbG9hdDMyKCk7IjsKKwkJfSBlbHNlIGlmICh0eXBlX25hbWUuY29tcGFyZVRvKCJGbG9hdDY0IikgPT0gMCkgeworCQkJcmV0dXJuICJNQVBTRmxvYXQ2NCogIiArIHJldHVybl92YXJfbmFtZSArICIgPSAmIiArIGlvZWx0X25hbWUgKyAiLT5GbG9hdDY0KCk7IjsKKwkJfSBlbHNlIGlmICh0eXBlX25hbWUuY29tcGFyZVRvKCJTdHJpbmciKSA9PSAwKSB7CisJCQlyZXR1cm4gIltTdHJpbmdzIGFyZSBub3Qgc3VwcG9ydGVkIHlldC5dIjsKKwkJfSBlbHNlIHsKKwkJCXJldHVybiB0eXBlX25hbWUgKyAiKiAiICsgcmV0dXJuX3Zhcl9uYW1lICsgIiA9ICgiICsgdHlwZV9uYW1lICsgIiopIiArIGlvZWx0X25hbWUgKyAiLT5EYXRhKCk7IjsKKwkJfQorCX0KKworCXB1YmxpYyBTdHJpbmcgZ2V0TUFQU0lPRWx0UmV0dXJuVHlwZShTdHJpbmcgdHlwZV9uYW1lKSB7CisJCWlmICh0eXBlX25hbWUuY29tcGFyZVRvKCJCb29sIikgPT0gMCB8fCB0eXBlX25hbWUuY29tcGFyZVRvKCJJbnQ4IikgPT0gMCB8fCB0eXBlX25hbWUuY29tcGFyZVRvKCJVSW50OCIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiSW50MTYiKSA9PSAwIHx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIlVJbnQxNiIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiSW50MzIiKSA9PSAwKSB7CisJCQlyZXR1cm4gIk1BUFNJbnQzMioiOworCQl9IGVsc2UgaWYgKHR5cGVfbmFtZS5jb21wYXJlVG8oIkJ5dGUiKSA9PSAwIHx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIkNoYXIiKSA9PSAwKSB7CisJCQlyZXR1cm4gIk1BUFNVSW50OCoiOworCQl9IGVsc2UgaWYgKHR5cGVfbmFtZS5jb21wYXJlVG8oIlVJbnQzMiIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiSW50NjQiKSA9PSAwIHx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIlVJbnQ2NCIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiVGltZSIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiRHVyYXRpb24iKSA9PSAwKSB7CisJCQlyZXR1cm4gIk1BUFNJbnQ2NCoiOworCQl9IGVsc2UgaWYgKHR5cGVfbmFtZS5jb21wYXJlVG8oIkZsb2F0MzIiKSA9PSAwKSB7CisJCQlyZXR1cm4gIk1BUFNGbG9hdDMyKiAiOworCQl9IGVsc2UgaWYgKHR5cGVfbmFtZS5jb21wYXJlVG8oIkZsb2F0NjQiKSA9PSAwKSB7CisJCQlyZXR1cm4gIk1BUFNGbG9hdDY0KiI7CisJCX0gZWxzZSBpZiAodHlwZV9uYW1lLmNvbXBhcmVUbygiU3RyaW5nIikgPT0gMCkgeworCQkJcmV0dXJuICJNQVBTUm9ib3RNTFN0cmluZyoiOworCQl9IGVsc2UgeworCQkJcmV0dXJuIHR5cGVfbmFtZSArICIqIjsKKwkJfQorCisJfQorCisJcHVibGljIFN0cmluZyBnZXRSVE1hcHNPdXRwdXREZWZGb3JQcmltaXRpdmVUeXBlKFN0cmluZyBvdXRwdXRfbmFtZSwgU3RyaW5nIHR5cGVfbmFtZSwgaW50IG11bHRpcGxpY2l0eSkgeworCQlTdHJpbmcgcyA9ICJNQVBTX09VVFBVVChcIiIgKyBvdXRwdXRfbmFtZSArICJcIiwiOworCQlpZiAodHlwZV9uYW1lLmNvbXBhcmVUbygiQm9vbCIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiSW50OCIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiVUludDgiKSA9PSAwIHx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIkludDE2IikgPT0gMCB8fCB0eXBlX25hbWUuY29tcGFyZVRvKCJVSW50MTYiKSA9PSAwIHx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIkludDMyIikgPT0gMCkgeworCQkJcyArPSAiTUFQUzo6SW50ZWdlcjMyIjsKKwkJfSBlbHNlIGlmICh0eXBlX25hbWUuY29tcGFyZVRvKCJCeXRlIikgPT0gMCB8fCB0eXBlX25hbWUuY29tcGFyZVRvKCJDaGFyIikgPT0gMCkgeworCQkJcyArPSAiTUFQUzo6U3RyZWFtOCI7CisJCX0gZWxzZSBpZiAodHlwZV9uYW1lLmNvbXBhcmVUbygiVUludDMyIikgPT0gMCB8fCB0eXBlX25hbWUuY29tcGFyZVRvKCJJbnQ2NCIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiVUludDY0IikgPT0gMCB8fCB0eXBlX25hbWUuY29tcGFyZVRvKCJUaW1lIikgPT0gMCB8fCB0eXBlX25hbWUuY29tcGFyZVRvKCJEdXJhdGlvbiIpID09IDApIHsKKwkJCXMgKz0gIk1BUFM6OkludGVnZXI2NCI7CisJCX0gZWxzZSBpZiAodHlwZV9uYW1lLmNvbXBhcmVUbygiRmxvYXQzMiIpID09IDApIHsKKwkJCXMgKz0gIk1BUFM6OkZsb2F0MzIiOworCQl9IGVsc2UgaWYgKHR5cGVfbmFtZS5jb21wYXJlVG8oIkZsb2F0NjQiKSA9PSAwKSB7CisJCQlzICs9ICJNQVBTOjpGbG9hdDY0IjsKKwkJfSBlbHNlIGlmICh0eXBlX25hbWUuY29tcGFyZVRvKCJTdHJpbmciKSA9PSAwKSB7CisJCQlyZXR1cm4gIk1BUFNfT1VUUFVUX1VTRVJfU1RSVUNUVVJFKCIgKyBvdXRwdXRfbmFtZSArICIsTUFQU1JvYm90TUxTdHJpbmcpIjsKKwkJfQorCQlzICs9ICIsTlVMTCxOVUxMLCI7CisJCWlmIChtdWx0aXBsaWNpdHkgPD0gMCkgeworCQkJcyArPSAiREVGQVVMVF9NQVhfT1VUUFVUX1ZFQ1RPUl9TSVpFIjsKKwkJfSBlbHNlIHsKKwkJCXMgKz0gbXVsdGlwbGljaXR5OworCQl9CisJCXMgKz0gIikiOworCQlyZXR1cm4gczsKKwl9CisKKwlwdWJsaWMgU3RyaW5nIGdldFJUTWFwc0lucHV0RGVmRm9yUHJpbWl0aXZlVHlwZShTdHJpbmcgaW5wdXRfbmFtZSwgU3RyaW5nIHR5cGVfbmFtZSkgeworCQlTdHJpbmcgcyA9ICJNQVBTX0lOUFVUKFwiIiArIGlucHV0X25hbWUgKyAiXCIsIjsKKwkJaWYgKHR5cGVfbmFtZS5jb21wYXJlVG8oIkJvb2wiKSA9PSAwIHx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIkludDgiKSA9PSAwIHx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIlVJbnQ4IikgPT0gMCB8fCB0eXBlX25hbWUuY29tcGFyZVRvKCJJbnQxNiIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiVUludDE2IikgPT0gMCB8fCB0eXBlX25hbWUuY29tcGFyZVRvKCJJbnQzMiIpID09IDApIHsKKwkJCXMgKz0gIk1BUFM6OkZpbHRlckludGVnZXIzMiI7CisJCX0gZWxzZSBpZiAodHlwZV9uYW1lLmNvbXBhcmVUbygiQnl0ZSIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiQ2hhciIpID09IDApIHsKKwkJCXMgKz0gIk1BUFM6OkZpbHRlclN0cmVhbTgiOworCQl9IGVsc2UgaWYgKHR5cGVfbmFtZS5jb21wYXJlVG8oIlVJbnQzMiIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiSW50NjQiKSA9PSAwIHx8IHR5cGVfbmFtZS5jb21wYXJlVG8oIlVJbnQ2NCIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiVGltZSIpID09IDAgfHwgdHlwZV9uYW1lLmNvbXBhcmVUbygiRHVyYXRpb24iKSA9PSAwKSB7CisJCQlzICs9ICJNQVBTOjpGaWx0ZXJJbnRlZ2VyNjQiOworCQl9IGVsc2UgaWYgKHR5cGVfbmFtZS5jb21wYXJlVG8oIkZsb2F0MzIiKSA9PSAwKSB7CisJCQlzICs9ICJNQVBTOjpGaWx0ZXJGbG9hdDMyIjsKKwkJfSBlbHNlIGlmICh0eXBlX25hbWUuY29tcGFyZVRvKCJGbG9hdDY0IikgPT0gMCkgeworCQkJcyArPSAiTUFQUzo6RmlsdGVyRmxvYXQ2NCI7CisJCX0gZWxzZSBpZiAodHlwZV9uYW1lLmNvbXBhcmVUbygiU3RyaW5nIikgPT0gMCkgeworCQkJcyArPSAiTUFQU0ZpbHRlclJvYm90TUxTdHJpbmciOworCQl9CisJCXMgKz0gIixNQVBTOjpGaWZvUmVhZGVyKSI7CisJCXJldHVybiBzOworCX0KKworCXB1YmxpYyBTdHJpbmcgZ2V0UGNrT3V0cHV0RGlyKFN0cmluZyBkdW1teSkgeworCQlTdHJpbmcgb3MgPSBTeXN0ZW0uZ2V0UHJvcGVydHkoIm9zLm5hbWUiKTsKKwkJaWYgKG9zLnRvTG93ZXJDYXNlKCkuc3RhcnRzV2l0aCgibGludXgiKSkgeworCQkJcmV0dXJuICJwYWNrYWdlcy9saW51eF94ODYvIjsKKwkJfSBlbHNlIHsKKwkJCXJldHVybiAicGFja2FnZXMvIjsKKwkJfQorCX0KKworCXB1YmxpYyBib29sZWFuIGhhc1JUTWFwc05hdGl2ZUltcGxlbWVudGF0aW9uKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzIGMpIHsKKwkJaWYgKEFyY2hpdGVjdHVyZVF1ZXJpZXMuaGFzTmF0aXZlSW1wbGVtZW50YXRpb24oYykpIHsKKwkJCWlmIChnZXRSVE1hcHNOYXRpdmVMaWJyYXJ5UGF0aEZyb21HZW5lcmljQXR0cmlidXRlKGMpICE9IG51bGwgJiYgZ2V0UlRNYXBzTmF0aXZlQ29tcG9uZW50TmFtZUZyb21HZW5lcmljQXR0cmlidXRlKGMpICE9IG51bGwpIHsKKwkJCQlyZXR1cm4gdHJ1ZTsKKwkJCX0KKwkJfQorCQlyZXR1cm4gZmFsc2U7CisJfQorCisJcHVibGljIFN0cmluZyBnZXRSVE1hcHNOYXRpdmVMaWJyYXJ5UGF0aEZyb21HZW5lcmljQXR0cmlidXRlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzIGMpIHsKKwkJaWYgKEFyY2hpdGVjdHVyZVF1ZXJpZXMuaGFzTmF0aXZlSW1wbGVtZW50YXRpb24oYykpIHsKKwkJCVN0cmluZyBuYXRpdmVfbGlicyA9IEFyY2hpdGVjdHVyZVF1ZXJpZXMuZ2V0TmF0aXZlTGlicmFyeVBhdGhGb3JDb21wb25lbnQoYyk7CisJCQlpZiAobmF0aXZlX2xpYnMgPT0gbnVsbCkgeworCQkJCXJldHVybiBudWxsOworCQkJfQorCQkJcmV0dXJuIGdldFJUTWFwc1NwZWNpZmljVmFsdWVGcm9tU3RyaW5nQXR0cmlidXRlKG5hdGl2ZV9saWJzKTsKKwkJfQorCQlyZXR1cm4gbnVsbDsKKwl9CisKKwlwdWJsaWMgU3RyaW5nIGdldFJUTWFwc05hdGl2ZUNvbXBvbmVudE5hbWVGcm9tR2VuZXJpY0F0dHJpYnV0ZShvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyBjKSB7CisJCWlmIChBcmNoaXRlY3R1cmVRdWVyaWVzLmhhc05hdGl2ZUltcGxlbWVudGF0aW9uKGMpKSB7CisJCQlTdHJpbmcgbmF0aXZlX2NvbXBzID0gQXJjaGl0ZWN0dXJlUXVlcmllcy5nZXROYXRpdmVDb21wb25lbnROYW1lRm9yQ29tcG9uZW50KGMpOworCQkJaWYgKG5hdGl2ZV9jb21wcyA9PSBudWxsKSB7CisJCQkJcmV0dXJuIG51bGw7CisJCQl9CisJCQlyZXR1cm4gZ2V0UlRNYXBzU3BlY2lmaWNWYWx1ZUZyb21TdHJpbmdBdHRyaWJ1dGUobmF0aXZlX2NvbXBzKTsKKwkJfQorCQlyZXR1cm4gbnVsbDsKKwl9CisKKwlwdWJsaWMgU3RyaW5nIGdldFJUTWFwc1NwZWNpZmljVmFsdWVGcm9tU3RyaW5nQXR0cmlidXRlKFN0cmluZyBhdHRyaWJ1dGUpIHsKKwkJU3RyaW5nW10gc2VjdGlvbnMgPSBhdHRyaWJ1dGUuc3BsaXQoIjsiKTsKKwkJZm9yIChpbnQgaSA9IDA7IGkgPCBzZWN0aW9ucy5sZW5ndGg7IGkrKykgeworCQkJU3RyaW5nW10ga2V5X3ZhbHVlID0gc2VjdGlvbnNbaV0uc3BsaXQoIj0iKTsKKwkJCWlmIChrZXlfdmFsdWVbMF0uZXF1YWxzSWdub3JlQ2FzZSgicnRtYXBzIikpIHsKKwkJCQlyZXR1cm4ga2V5X3ZhbHVlWzFdOworCQkJfQorCQl9CisJCXJldHVybiBudWxsOworCX0KKworfQpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9SVE1hcHNEYXRhVHlwZVF1ZXJpZXMubXRsIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9SVE1hcHNEYXRhVHlwZVF1ZXJpZXMubXRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQxMTJlN2EKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL1JUTWFwc0RhdGFUeXBlUXVlcmllcy5tdGwKQEAgLTAsMCArMSw0NiBAQAorW2NvbW1lbnQgZW5jb2RpbmcgPSBDcDEyNTIgL10KK1tjb21tZW50XQorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTMgSU5URU1QT1JBIFMuQS4KKyAqCisgKiBUaGlzIHNvZnR3YXJlIGlzIGEgY29tcHV0ZXIgcHJvZ3JhbSB3aG9zZSBwdXJwb3NlIGlzIHRvIHRyYW5zZm9ybSBSb2JvdE1MIG1vZGVscworICogaW50byBSVE1hcHMgZGlhZ3JhbXMgYW5kIFJUTWFwcyBjb21wb25lbnRzIHZpYSBzb3VyY2UgY29kZSBnZW5lcmF0aW9uIHRlY2huaXF1ZXMuCisgKiAKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIE5pY29sYXMgRFUgTEFDIChJTlRFTVBPUkEpIC0gSW5pdGlhbCBBUEkgYW5kIGltcGxlbWVudGF0aW9uCisgKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworWy9jb21tZW50XQorW21vZHVsZSBSVE1hcHNEYXRhVHlwZVF1ZXJpZXMoJ2h0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8zLjAuMC9VTUwnLCAnaHR0cDovL1BhcHlydXMvUm9ib3RNTC8xJykvXQorCitbcXVlcnkgcHVibGljIGdldE1BUFNJT0VsdEFjY2Vzc0Z1bmN0aW9uKHR5cGVfbmFtZSA6IFN0cmluZywgaW9lbHRfbmFtZSA6IFN0cmluZywgcmV0dXJuX3Zhcl9uYW1lIDogU3RyaW5nKSA6IFN0cmluZworCT0gaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLlJUTWFwc0RhdGFUeXBlUXVlcmllcycsICdnZXRNQVBTSU9FbHRBY2Nlc3NGdW5jdGlvbihqYXZhLmxhbmcuU3RyaW5nLCBqYXZhLmxhbmcuU3RyaW5nLCBqYXZhLmxhbmcuU3RyaW5nKScsIFNlcXVlbmNle3R5cGVfbmFtZSxpb2VsdF9uYW1lLHJldHVybl92YXJfbmFtZX0pIC9dCisJCitbcXVlcnkgcHVibGljIGdldFJUTWFwc091dHB1dERlZkZvclByaW1pdGl2ZVR5cGUoYXJnMCA6IFN0cmluZywgYXJnMSA6IFN0cmluZywgYXJnMiA6IEludGVnZXIpIDogU3RyaW5nCisJPSBpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMuUlRNYXBzRGF0YVR5cGVRdWVyaWVzJywgJ2dldFJUTWFwc091dHB1dERlZkZvclByaW1pdGl2ZVR5cGUoamF2YS5sYW5nLlN0cmluZywgamF2YS5sYW5nLlN0cmluZywgaW50KScsIFNlcXVlbmNle2FyZzAsIGFyZzEsIGFyZzJ9KSAvXQorCitbcXVlcnkgcHVibGljIGdldFJUTWFwc0lucHV0RGVmRm9yUHJpbWl0aXZlVHlwZShhcmcwIDogU3RyaW5nLCBhcmcxIDogU3RyaW5nKSA6IFN0cmluZworCT0gaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLlJUTWFwc0RhdGFUeXBlUXVlcmllcycsICdnZXRSVE1hcHNJbnB1dERlZkZvclByaW1pdGl2ZVR5cGUoamF2YS5sYW5nLlN0cmluZywgamF2YS5sYW5nLlN0cmluZyknLCBTZXF1ZW5jZXthcmcwLCBhcmcxfSkgL10KKworW3F1ZXJ5IHB1YmxpYyBnZXRQY2tPdXRwdXREaXIoYXJnIDogU3RyaW5nKSA6IFN0cmluZworCT0gaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLlJUTWFwc0RhdGFUeXBlUXVlcmllcycsICdnZXRQY2tPdXRwdXREaXIoamF2YS5sYW5nLlN0cmluZyknLCBTZXF1ZW5jZXthcmd9KSAvXQorCitbcXVlcnkgcHVibGljIGdldE5iRWxlbWVudHNJblZlY3Rvcih0eXBlX25hbWUgOiBTdHJpbmcsIGlvZWx0X25hbWUgOiBTdHJpbmcsIHJldHVybl92YWx1ZV9uYW1lIDogU3RyaW5nKSA6IFN0cmluZworCT0gaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLlJUTWFwc0RhdGFUeXBlUXVlcmllcycsICdnZXROYkVsZW1lbnRzSW5WZWN0b3IoamF2YS5sYW5nLlN0cmluZywgamF2YS5sYW5nLlN0cmluZywgamF2YS5sYW5nLlN0cmluZyknLCBTZXF1ZW5jZXt0eXBlX25hbWUsIGlvZWx0X25hbWUsIHJldHVybl92YWx1ZV9uYW1lfSkgL10KKworW3F1ZXJ5IHB1YmxpYyBzZXRWZWN0b3JTaXplRm9yVmVjdG9yKHR5cGVfbmFtZSA6IFN0cmluZywgbmJfZWxlbWVudHMgOiBJbnRlZ2VyLCBpb2VsdF9uYW1lIDogU3RyaW5nKSA6IFN0cmluZworCT0gaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLlJUTWFwc0RhdGFUeXBlUXVlcmllcycsICdzZXRWZWN0b3JTaXplRm9yVmVjdG9yKGphdmEubGFuZy5TdHJpbmcsIGludCwgamF2YS5sYW5nLlN0cmluZyknLCBTZXF1ZW5jZXt0eXBlX25hbWUsIG5iX2VsZW1lbnRzLCBpb2VsdF9uYW1lfSkgL10KKworW3F1ZXJ5IHB1YmxpYyBoYXNSVE1hcHNOYXRpdmVJbXBsZW1lbnRhdGlvbihjIDogQ2xhc3MpIDogQm9vbGVhbgorCT0gaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLlJUTWFwc0RhdGFUeXBlUXVlcmllcycsICdoYXNSVE1hcHNOYXRpdmVJbXBsZW1lbnRhdGlvbihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyknLCBTZXF1ZW5jZXtjfSkgL10KKworW3F1ZXJ5IHB1YmxpYyBnZXRSVE1hcHNOYXRpdmVDb21wb25lbnROYW1lRnJvbUdlbmVyaWNBdHRyaWJ1dGUoYyA6IENsYXNzKSA6IFN0cmluZworCT0gaW52b2tlKCdvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLlJUTWFwc0RhdGFUeXBlUXVlcmllcycsICdnZXRSVE1hcHNOYXRpdmVDb21wb25lbnROYW1lRnJvbUdlbmVyaWNBdHRyaWJ1dGUob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpJywgU2VxdWVuY2V7Y30pIC9dCisKK1txdWVyeSBwdWJsaWMgZ2V0UlRNYXBzTmF0aXZlTGlicmFyeVBhdGhGcm9tR2VuZXJpY0F0dHJpYnV0ZShjIDogQ2xhc3MpIDogU3RyaW5nCisJPSBpbnZva2UoJ29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMuUlRNYXBzRGF0YVR5cGVRdWVyaWVzJywgJ2dldFJUTWFwc05hdGl2ZUxpYnJhcnlQYXRoRnJvbUdlbmVyaWNBdHRyaWJ1dGUob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpJywgU2VxdWVuY2V7Y30pIC9dCmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc19jb21wb25lbnRfY3BwLmVtdGwgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc19jb21wb25lbnRfY3BwLmVtdGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWY5OWY1NQotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX2NvbXBvbmVudF9jcHAuZW10bApAQCAtMCwwICsxLDQyODIgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8eG1pOlhNSSB4bWk6dmVyc2lvbj0iMi4wIiB4bWxuczp4bWk9Imh0dHA6Ly93d3cub21nLm9yZy9YTUkiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zOmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIiB4bWxuczptdGw9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvYWNjZWxlby9tdGwvMy4wIiB4bWxuczpvY2wuZWNvcmU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL0Vjb3JlIj4KKyAgPG10bDpNb2R1bGUgbmFtZT0iZ2VuZXJhdGVfcnRtYXBzX2NvbXBvbmVudF9jcHAiIG5zVVJJPSJvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmludGVtcG9yYTo6cnRtYXBzOjpmaWxlczo6Z2VuZXJhdGVfcnRtYXBzX2NvbXBvbmVudF9jcHAiIHN0YXJ0SGVhZGVyUG9zaXRpb249Ijc3NSIgZW5kSGVhZGVyUG9zaXRpb249Ijk3MiI+CisgICAgPGlucHV0PgorICAgICAgPHRha2VzVHlwZXNGcm9tIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLyIvPgorICAgIDwvaW5wdXQ+CisgICAgPGlucHV0PgorICAgICAgPHRha2VzVHlwZXNGcm9tIGhyZWY9Imh0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMSMvIi8+CisgICAgPC9pbnB1dD4KKyAgICA8aW1wb3J0cyBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0dlbmVyYWxRdWVyaWVzLmVtdGwjLzAiLz4KKyAgICA8aW1wb3J0cyBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMCIvPgorICAgIDxpbXBvcnRzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAiLz4KKyAgICA8aW1wb3J0cyBocmVmPSIuLi9SVE1hcHNEYXRhVHlwZVF1ZXJpZXMuZW10bCMvMCIvPgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpUZW1wbGF0ZSIgbmFtZT0iZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAiIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZpbGVCbG9jayIgb3Blbk1vZGU9Ik92ZXJXcml0ZSI+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7I2luY2x1ZGUgJnF1b3Q7bWFwc18iLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwL2MiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLmgmcXVvdDsmI3hEOyYjeEE7Ly8gIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6UHJvdGVjdGVkQXJlYUJsb2NrIj4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOy8vICIvPgorICAgICAgICAgIDxtYXJrZXIgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IkFkZGl0aW9uYWwgaW5jbHVkZXMiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDwvbWFya2VyPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7JiN4RDsmI3hBOy8vIFVzZSB0aGUgbWFjcm9zIHRvIGRlY2xhcmUgdGhlIGlucHV0cyYjeEQ7JiN4QTtNQVBTX0JFR0lOX0lOUFVUU19ERUZJTklUSU9OKE1BUFMiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwL2MiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iKSYjeEQ7JiN4QTsiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpMZXRCbG9jayI+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGb3JCbG9jayI+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOklmQmxvY2siPgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4OTsiLz4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi9SVE1hcHNEYXRhVHlwZVF1ZXJpZXMuZW10bCMvMC9nZXRSVE1hcHNJbnB1dERlZkZvclByaW1pdGl2ZVR5cGUiLz4KKyAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNy8lL3BvcnQiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNy8lL3BvcnQiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlZEVsZW1lbnQvdHlwZSIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyIvPgorICAgICAgICAgICAgICA8aWZFeHByIHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAvaXNQcmltaXRpdmVUeXBlIi8+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZSIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNy8lL3BvcnQiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlZEVsZW1lbnQvdHlwZSIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDwvaWZFeHByPgorICAgICAgICAgICAgICA8ZWxzZT4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4OTtNQVBTX0lOUFVUKCZxdW90OyIvPgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icG9ydCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjcvJS9wb3J0Ij4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiZxdW90OyxNQVBTRmlsdGVyIi8+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZSIvPgorICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InBvcnQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS43LyUvcG9ydCI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGVkRWxlbWVudC90eXBlIi8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IixNQVBTOjpGaWZvUmVhZGVyKSYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgICAgPC9lbHNlPgorICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgPGxvb3BWYXJpYWJsZSBuYW1lPSJwb3J0Ij4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICA8L2xvb3BWYXJpYWJsZT4KKyAgICAgICAgICAgIDxpdGVyU2V0IHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIiBlVHlwZT0iLzEzL1NlcXVlbmNlKFBvcnQpIj4KKyAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0SW5wdXRQb3J0c0ZvckVsZW1lbnQiLz4KKyAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjcvZWx0Ij4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgIDwvaXRlclNldD4KKyAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgPGxldFZhcmlhYmxlIG5hbWU9ImVsdCI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgIDxpbml0RXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC9jIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlRXhwIiBlVHlwZT0iLzExL0VsZW1lbnQiPgorICAgICAgICAgICAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55X0NsYXNzL29jbEFzVHlwZSIvPgorICAgICAgICAgICAgPC9pbml0RXhwcmVzc2lvbj4KKyAgICAgICAgICA8L2xldFZhcmlhYmxlPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIvLyAmI3g5OyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOlByb3RlY3RlZEFyZWFCbG9jayI+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsvLyAmI3g5OyIvPgorICAgICAgICAgIDxtYXJrZXIgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IkFkZGl0aW9uYWwgaW5wdXQgZGVmaW5pdGlvbnMiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDwvbWFya2VyPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7TUFQU19FTkRfSU5QVVRTX0RFRklOSVRJT04mI3hEOyYjeEE7JiN4RDsmI3hBOy8vIFVzZSB0aGUgbWFjcm9zIHRvIGRlY2xhcmUgdGhlIG91dHB1dHMmI3hEOyYjeEE7TUFQU19CRUdJTl9PVVRQVVRTX0RFRklOSVRJT04oTUFQUyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYyIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvYyI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIpJiN4RDsmI3hBOyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkxldEJsb2NrIj4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZvckJsb2NrIj4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6SWZCbG9jayI+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5OyIvPgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uL1JUTWFwc0RhdGFUeXBlUXVlcmllcy5lbXRsIy8wL2dldFJUTWFwc091dHB1dERlZkZvclByaW1pdGl2ZVR5cGUiLz4KKyAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMTMvJS9wb3J0Ij4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlIi8+CisgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icG9ydCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjEzLyUvcG9ydCI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGVkRWxlbWVudC90eXBlIi8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMTMvJS9wb3J0Ij4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTXVsdGlwbGljaXR5RWxlbWVudC91cHBlciIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgICAgPGlmRXhwciB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5lbXRsIy8wL2lzUHJpbWl0aXZlVHlwZSIvPgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icG9ydCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjEzLyUvcG9ydCI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGVkRWxlbWVudC90eXBlIi8+CisgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPC9pZkV4cHI+CisgICAgICAgICAgICAgIDxlbHNlPgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5Oy8vRGVjbGFyZSBhIHZlY3RvciBvZiBtYXggMCBlbGVtZW50cyBpbiBvcmRlciB0byBiZSBhYmxlIHRvIGhhbmRsZSB0aGUgb3V0cHV0IGJ1ZmZlcnMmI3hEOyYjeEE7JiN4OTsvL2FsbG9jYXRpb24gJnF1b3Q7bWFudWFsbHkmcXVvdDsgbGF0ZXIgKGluIDo6QmlydGgoKSkuJiN4RDsmI3hBOyYjeDk7TUFQU19PVVRQVVRfVVNFUl9TVFJVQ1RVUkVTX1ZFQ1RPUigmcXVvdDsiLz4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InBvcnQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xMy8lL3BvcnQiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJnF1b3Q7LCIvPgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMTMvJS9wb3J0Ij4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZWRFbGVtZW50L3R5cGUiLz4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLCAwKSYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgICAgPC9lbHNlPgorICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgPGxvb3BWYXJpYWJsZSBuYW1lPSJwb3J0Ij4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICA8L2xvb3BWYXJpYWJsZT4KKyAgICAgICAgICAgIDxpdGVyU2V0IHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIiBlVHlwZT0iLzEzL1NlcXVlbmNlKFBvcnQpIj4KKyAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50Ii8+CisgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJlbHQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xMy9lbHQiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgPC9pdGVyU2V0PgorICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICA8bGV0VmFyaWFibGUgbmFtZT0iZWx0Ij4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICAgICAgPGluaXRFeHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwL2MiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVFeHAiIGVUeXBlPSIvMTEvRWxlbWVudCI+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnlfQ2xhc3Mvb2NsQXNUeXBlIi8+CisgICAgICAgICAgICA8L2luaXRFeHByZXNzaW9uPgorICAgICAgICAgIDwvbGV0VmFyaWFibGU+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii8vICYjeDk7Ii8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6UHJvdGVjdGVkQXJlYUJsb2NrIj4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOy8vICYjeDk7Ii8+CisgICAgICAgICAgPG1hcmtlciB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iQWRkaXRpb25hbCBvdXRwdXQgZGVmaW5pdGlvbnMiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDwvbWFya2VyPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7TUFQU19FTkRfT1VUUFVUU19ERUZJTklUSU9OJiN4RDsmI3hBOyYjeEQ7JiN4QTsvLyBVc2UgdGhlIG1hY3JvcyB0byBkZWNsYXJlIHRoZSBwcm9wZXJ0aWVzJiN4RDsmI3hBO01BUFNfQkVHSU5fUFJPUEVSVElFU19ERUZJTklUSU9OKE1BUFMiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwL2MiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iKSYjeEQ7JiN4QTsvLyAmI3g5OyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOlByb3RlY3RlZEFyZWFCbG9jayI+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsvLyAmI3g5OyIvPgorICAgICAgICAgIDxtYXJrZXIgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IkFkZGl0aW9uYWwgcHJvcGVydHkgZGVmaW5pdGlvbnMiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDwvbWFya2VyPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7TUFQU19FTkRfUFJPUEVSVElFU19ERUZJTklUSU9OJiN4RDsmI3hBOyYjeEQ7JiN4QTsvLyBVc2UgdGhlIG1hY3JvcyB0byBkZWNsYXJlIHRoZSBhY3Rpb25zJiN4RDsmI3hBO01BUFNfQkVHSU5fQUNUSU9OU19ERUZJTklUSU9OKE1BUFMiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwL2MiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iKSYjeEQ7JiN4QTsvLyAmI3g5OyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOlByb3RlY3RlZEFyZWFCbG9jayI+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsvLyAmI3g5OyIvPgorICAgICAgICAgIDxtYXJrZXIgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IkFkZGl0aW9uYWwgYWN0aW9uIGRlZmluaXRpb25zIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8L21hcmtlcj4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBO01BUFNfRU5EX0FDVElPTlNfREVGSU5JVElPTiYjeEQ7JiN4QTsmI3hEOyYjeEE7Ly8gVXNlIHRoZSBtYWNyb3MgdG8gZGVjbGFyZSB0aGlzIGNvbXBvbmVudCAoIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC9jIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IikgYmVoYXZpb3VyJiN4RDsmI3hBO01BUFNfQ09NUE9ORU5UX0RFRklOSVRJT04oTUFQUyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYyIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvYyI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIsJnF1b3Q7Ii8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC9jIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiZxdW90OywmcXVvdDsxLjAmcXVvdDssMTI4LCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsgIE1BUFM6OlRocmVhZGVkLE1BUFM6OlRocmVhZGVkLCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsgIC0xLCAvLyBOYiBvZiBpbnB1dHMuIExlYXZlIC0xIHRvIHVzZSB0aGUgbnVtYmVyIG9mIGRlY2xhcmVkIGlucHV0IGRlZmluaXRpb25zJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyAgLTEsIC8vIE5iIG9mIG91dHB1dHMuIExlYXZlIC0xIHRvIHVzZSB0aGUgbnVtYmVyIG9mIGRlY2xhcmVkIG91dHB1dCBkZWZpbml0aW9ucyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsgIC0xLCAvLyBOYiBvZiBwcm9wZXJ0aWVzLiBMZWF2ZSAtMSB0byB1c2UgdGhlIG51bWJlciBvZiBkZWNsYXJlZCBwcm9wZXJ0eSBkZWZpbml0aW9ucyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsgIC0xKSAvLyBOYiBvZiBhY3Rpb25zLiBMZWF2ZSAtMSB0byB1c2UgdGhlIG51bWJlciBvZiBkZWNsYXJlZCBhY3Rpb24gZGVmaW5pdGlvbnMmI3hEOyYjeEE7JiN4RDsmI3hBOyYjeEQ7JiN4QTsvLyAiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpQcm90ZWN0ZWRBcmVhQmxvY2siPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7Ly8gIi8+CisgICAgICAgICAgPG1hcmtlciB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iT3ZlcmxvYWRlZCBtZXRob2RzIGZyb20gTUFQU0NvbXBvbmVudCAoRHluYW1pYywgU2V0Li4uIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8L21hcmtlcj4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyYjeEQ7JiN4QTsvLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqJiN4RDsmI3hBOy8vIElOSVRJQUxJWkFUSU9OIEZVTkNUSU9OLiYjeEQ7JiN4QTsvLyBDQUxMRUQgT05DRSBBVCBESUFHUkFNIEVYRUNVVElPTiBTVEFSVC4mI3hEOyYjeEE7Ly8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiYjeEQ7JiN4QTt2b2lkIE1BUFMiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwL2MiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iOjpCaXJ0aCgpJiN4RDsmI3hBO3smI3hEOyYjeEE7JiN4RDsmI3hBOyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOklmQmxvY2siPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5Oy8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiomI3hEOyYjeEE7JiN4OTsvL091dHB1dCBidWZmZXJzIGFsbG9jYXRpb24gJiN4RDsmI3hBOyYjeDk7Ly9QZXJmb3JtZWQgJnF1b3Q7YnkgaGFuZCZxdW90OyAodGhlIGNvZGUgaXMgcXVpdGUgdWdseSBidXQgaXQgaXMmI3hEOyYjeEE7JiN4OTsvL3RoZSBvbmx5IHdheSBmb3IgdGhlIG1vc3QgZ2VuZXJpYyBjYXNlcyB3ZSBoYXZlIHRvIGRlYWwgd2l0aCYjeEQ7JiN4QTsmI3g5Oy8vaW4gUm9ib3RNTCkuJiN4RDsmI3hBOyYjeDk7Ly8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZvckJsb2NrIj4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6SWZCbG9jayI+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5O18iLz4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InBvcnQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvcG9ydCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il9idWZmZXJzLkNsZWFyKCk7JiN4RDsmI3hBOyYjeDk7TUFQU0lPTW9uaXRvciAmYW1wO21vbml0b3JfIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xL3BvcnQiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSI9T3V0cHV0KCIvPgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJpIiByZWZlcnJlZFZhcmlhYmxlPSIvNjkiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpJbnRlZ2VyTGl0ZXJhbEV4cCIgaW50ZWdlclN5bWJvbD0iMSI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlcl9DbGFzcy8tIi8+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IikuTW9uaXRvcigpOyYjeEQ7JiN4QTsmI3g5O01BUFNGYXN0SU9IYW5kbGUgaXRfIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xL3BvcnQiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSI7JiN4RDsmI3hBOyYjeDk7aXRfIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xL3BvcnQiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSI9bW9uaXRvcl8iLz4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InBvcnQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvcG9ydCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii5Jbml0QmVnaW4oKTsmI3hEOyYjeEE7JiN4OTt3aGlsZSAoaXRfIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xL3BvcnQiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIpIHsmI3hEOyYjeEE7JiN4OTsmI3g5O01BUFNJT0VsdCAmYW1wO0lPRWx0XyIvPgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icG9ydCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS9wb3J0Ij4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iPW1vbml0b3JfIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xL3BvcnQiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJbIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Iml0XyIvPgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icG9ydCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS9wb3J0Ij4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iXSI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSI7JiN4RDsmI3hBOyYjeDk7JiN4OTtJT0VsdF8iLz4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InBvcnQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvcG9ydCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii5EYXRhKCkgPSAodm9pZCopIG5ldyAiLz4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZSIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xL3BvcnQiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlZEVsZW1lbnQvdHlwZSIvPgorICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iWzFdIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IjsgLy9UT0RPOiByZXBsYWNlIDEgYnkgcG9ydC51cHBlci4mI3hEOyYjeEE7JiN4OTsmI3g5O2lmIChJT0VsdF8iLz4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InBvcnQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvcG9ydCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii5EYXRhKCkgPT0gTlVMTCkmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7RXJyb3IoJnF1b3Q7Tm90IGVub3VnaCBtZW1vcnkuJnF1b3Q7KTsmI3hEOyYjeEE7JiN4OTsmI3g5O18iLz4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InBvcnQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvcG9ydCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il9idWZmZXJzLkFwcGVuZCgoIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icG9ydCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS9wb3J0Ij4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZWRFbGVtZW50L3R5cGUiLz4KKyAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiopSU9FbHRfIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xL3BvcnQiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIuRGF0YSgpKTsmI3hEOyYjeEE7JiN4OTsmI3g5O21vbml0b3JfIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xL3BvcnQiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIuSW5pdE5leHQoaXRfIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xL3BvcnQiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIpOyYjeEQ7JiN4QTsmI3g5O30mI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICAgIDxpZkV4cHIgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAvaXNQcmltaXRpdmVUeXBlIi8+CisgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xL3BvcnQiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlZEVsZW1lbnQvdHlwZSIvPgorICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpCb29sZWFuTGl0ZXJhbEV4cCIgYm9vbGVhblN5bWJvbD0iZmFsc2UiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW5fQ2xhc3MvPSIvPgorICAgICAgICAgICAgICA8L2lmRXhwcj4KKyAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgIDxsb29wVmFyaWFibGUgbmFtZT0icG9ydCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgPC9sb29wVmFyaWFibGU+CisgICAgICAgICAgICA8aXRlclNldCB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiIgZVR5cGU9Ii8xMy9TZXF1ZW5jZShQb3J0KSI+CisgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldE91dHB1dFBvcnRzRm9yRWxlbWVudCIvPgorICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwL2MiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVFeHAiIGVUeXBlPSIvMTEvRWxlbWVudCI+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnlfQ2xhc3Mvb2NsQXNUeXBlIi8+CisgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICA8L2l0ZXJTZXQ+CisgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgIDxpZkV4cHIgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iIGVUeXBlPSIvMTMvU2VxdWVuY2UoUG9ydCkiPgorICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldE91dHB1dFBvcnRzRm9yRWxlbWVudCIvPgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwL2MiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVFeHAiIGVUeXBlPSIvMTEvRWxlbWVudCI+CisgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnlfQ2xhc3Mvb2NsQXNUeXBlIi8+CisgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1NlcXVlbmNlKFQpX0NsYXNzL3NpemUiLz4KKyAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6SW50ZWdlckxpdGVyYWxFeHAiIGludGVnZXJTeW1ib2w9IjAiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXJfQ2xhc3MvJTNFIi8+CisgICAgICAgICAgPC9pZkV4cHI+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpJZkJsb2NrIj4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyYjeDk7Ly9Jbml0aWFsaXplIGEgbWVtYmVyIGFycmF5IGNvbnRhaW5pbmcgcG9pbnRlcnMgdG8gdGhlIGNvbXBvbmVudCBpbnB1dHMgZm9yJiN4RDsmI3hBOyYjeDk7Ly91c2UgaW4gdGhlIENvcmUoKSBmdW5jdGlvbiB3aXRoIHRoZSBhc3luY2hyb25vdXMgU3RhcnRSZWFkaW5nLiYjeEQ7JiN4QTsmI3g5O19uYl9pbnB1dHMgPSAiLz4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iIGVUeXBlPSIvMTMvU2VxdWVuY2UoUG9ydCkiPgorICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRJbnB1dFBvcnRzRm9yRWxlbWVudCIvPgorICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwL2MiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVFeHAiIGVUeXBlPSIvMTEvRWxlbWVudCI+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnlfQ2xhc3Mvb2NsQXNUeXBlIi8+CisgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1NlcXVlbmNlKFQpX0NsYXNzL3NpemUiLz4KKyAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IjsmI3hEOyYjeEE7JiN4OTtfaW5wdXRzID0gbmV3IE1BUFNJbnB1dCoiLz4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iW19uYl9pbnB1dHNdIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IjsmI3hEOyYjeEE7JiN4OTtmb3IgKGludCBpPTA7IGkmbHQ7X25iX2lucHV0czsgaSsrKSB7JiN4RDsmI3hBOyYjeDk7JiN4OTtfaW5wdXRzIi8+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IltpXSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIgPSAmYW1wO0lucHV0KGkpOyYjeEQ7JiN4QTsmI3g5O30mI3hEOyYjeEE7Ii8+CisgICAgICAgICAgPGlmRXhwciB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiIgZVR5cGU9Ii8xMy9TZXF1ZW5jZShQb3J0KSI+CisgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0SW5wdXRQb3J0c0ZvckVsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC9jIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlRXhwIiBlVHlwZT0iLzExL0VsZW1lbnQiPgorICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55X0NsYXNzL29jbEFzVHlwZSIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TZXF1ZW5jZShUKV9DbGFzcy9zaXplIi8+CisgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkludGVnZXJMaXRlcmFsRXhwIiBpbnRlZ2VyU3ltYm9sPSIwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyX0NsYXNzLyUzRSIvPgorICAgICAgICAgIDwvaWZFeHByPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7Ly8gJiN4OTsiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpQcm90ZWN0ZWRBcmVhQmxvY2siPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7Ly8gJiN4OTsiLz4KKyAgICAgICAgICA8bWFya2VyIHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJVc2VyLXNwZWNpZmljIGluaXRhbGl6YXRpb25zIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8L21hcmtlcj4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyYjeEQ7JiN4QTt9JiN4RDsmI3hBOyYjeEQ7JiN4QTsvLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiomI3hEOyYjeEE7Ly8gQ29yZSgpIElTIFRIRSBNQUlOIEVYRUNVVElPTiBMT09QIEZVTkNUSU9OLiYjeEQ7JiN4QTsvLyBUSEUgT05FIEFORCBPTkxZIEJMT0NLSU5HIENBTEwgSU4gSEVSRSBTSEFMTCBCRSBUSEUgU3RhcnRSZWFkaW5nIGZ1bmN0aW9uLiYjeEQ7JiN4QTsvLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiomI3hEOyYjeEE7dm9pZCBNQVBTIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC9jIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ijo6Q29yZSgpICYjeEQ7JiN4QTt7JiN4RDsmI3hBOyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOklmQmxvY2siPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5Oy8vV2l0aG91dCBzcGVjaWZpY2F0aW9uIG9mIHJlYWRpbmcgcG9saWNpZXMsIGxldCdzIGltcGxlbWVudCB0aGUgbW9zdCBnZW5lcmljIGNhc2U6JiN4RDsmI3hBOyYjeDk7Ly9hbiBhc3luY2hyb25vdXMgYmxvY2tpbmcgcmVhZCBvbiBhbGwgdGhlIGlucHV0cy4mI3hEOyYjeEE7JiN4OTtpbnQgaW5wdXRfdGhhdF9hbnN3ZXJlZDsmI3hEOyYjeEE7JiN4OTtNQVBTSU9FbHQqIGlvZWx0X2luID0gU3RhcnRSZWFkaW5nKF9uYl9pbnB1dHMsIF9pbnB1dHMsICZhbXA7aW5wdXRfdGhhdF9hbnN3ZXJlZCk7JiN4RDsmI3hBOyYjeDk7aWYgKGlvZWx0X2luID09IE5VTEwpJiN4RDsmI3hBOyYjeDk7JiN4OTtyZXR1cm47JiN4RDsmI3hBOyYjeEQ7JiN4QTsmI3g5O01BUFNUaW1lc3RhbXAgdGltZXN0YW1wX2luID0gaW9lbHRfaW4tPlRpbWVzdGFtcCgpOyYjeEQ7JiN4QTsmI3hEOyYjeEE7JiN4OTtzd2l0Y2ggKGlucHV0X3RoYXRfYW5zd2VyZWQpIHsmI3hEOyYjeEE7Ii8+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGb3JCbG9jayI+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4OTsmI3g5O2Nhc2UgIi8+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImkiIHJlZmVycmVkVmFyaWFibGU9Ii84NiI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkludGVnZXJMaXRlcmFsRXhwIiBpbnRlZ2VyU3ltYm9sPSIxIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyX0NsYXNzLy0iLz4KKyAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSI6IC8vV2UgcmVjZWl2ZWQgYW4gZWxlbWVudCBmcm9tIHBvcnQgIi8+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDIvJS4xL3BvcnQiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7eyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsiLz4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi9SVE1hcHNEYXRhVHlwZVF1ZXJpZXMuZW10bCMvMC9nZXROYkVsZW1lbnRzSW5WZWN0b3IiLz4KKyAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icG9ydCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQyLyUuMS9wb3J0Ij4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZWRFbGVtZW50L3R5cGUiLz4KKyAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iaW9lbHRfaW4iPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJjb3VudCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsiLz4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi9SVE1hcHNEYXRhVHlwZVF1ZXJpZXMuZW10bCMvMC9nZXRNQVBTSU9FbHRBY2Nlc3NGdW5jdGlvbiIvPgorICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZSIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDIvJS4xL3BvcnQiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlZEVsZW1lbnQvdHlwZSIvPgorICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJpb2VsdF9pbiI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImRhdGFfaW4iPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Ii8+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDIvJS4xL3BvcnQiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlZEVsZW1lbnQvdHlwZSIvPgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il9SZWNlaXZlZF9vbl8iLz4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InBvcnQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjEvcG9ydCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iX0luUG9ydChkYXRhX2luLGNvdW50LCBpb2VsdF9pbi0+VGltZXN0YW1wKCkpOyYjeDk7JiN4OTsmI3g5OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTt9ICYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTticmVhazsmI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICA8bG9vcFZhcmlhYmxlIG5hbWU9InBvcnQiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgIDwvbG9vcFZhcmlhYmxlPgorICAgICAgICAgICAgPGl0ZXJTZXQgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iIGVUeXBlPSIvMTMvU2VxdWVuY2UoUG9ydCkiPgorICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRJbnB1dFBvcnRzRm9yRWxlbWVudCIvPgorICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwL2MiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVFeHAiIGVUeXBlPSIvMTEvRWxlbWVudCI+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnlfQ2xhc3Mvb2NsQXNUeXBlIi8+CisgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICA8L2l0ZXJTZXQ+CisgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5OyYjeDk7ZGVmYXVsdDomI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7RXJyb3IoJnF1b3Q7VW5rbm93biBpbnB1dC4mcXVvdDspOyYjeDk7JiN4RDsmI3hBOyYjeDk7fSYjeEQ7JiN4QTsvLyAmI3g5OyIvPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6UHJvdGVjdGVkQXJlYUJsb2NrIj4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7Ly8gJiN4OTsiLz4KKyAgICAgICAgICAgIDxtYXJrZXIgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IkNvcmUgcHJvY2Vzc2luZyI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDwvbWFya2VyPgorICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyIvPgorICAgICAgICAgIDxpZkV4cHIgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iIGVUeXBlPSIvMTMvU2VxdWVuY2UoUG9ydCkiPgorICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldElucHV0UG9ydHNGb3JFbGVtZW50Ii8+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYyIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvYyI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VHlwZUV4cCIgZVR5cGU9Ii8xMS9FbGVtZW50Ij4KKyAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueV9DbGFzcy9vY2xBc1R5cGUiLz4KKyAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU2VxdWVuY2UoVClfQ2xhc3Mvc2l6ZSIvPgorICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpJbnRlZ2VyTGl0ZXJhbEV4cCIgaW50ZWdlclN5bWJvbD0iMCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlcl9DbGFzcy8lM0UiLz4KKyAgICAgICAgICA8L2lmRXhwcj4KKyAgICAgICAgICA8ZWxzZT4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5Oy8vVGhlcmUgYXJlIG5vIGlucHV0cyB0byByZWFkIGZyb20gaW4gdGhpcyBjb21wb25lbnQuJiN4RDsmI3hBOyYjeDk7Ly9NYWtlIHN1cmUgeW91IGhhdmUgb25lIGFuZCBvbmx5IGJsb2NraW5nIGZ1bmN0aW9uIChSZXN0LCBXYWl0LCBNQVBTOjpTbGVlcCwgc2VsZWN0LCB3aGF0ZXZlci4uLikmI3hEOyYjeEE7JiN4OTsvL2luc2lkZSBDb3JlKCkuJiN4RDsmI3hBOy8vICYjeDk7Ii8+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOlByb3RlY3RlZEFyZWFCbG9jayI+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7JiN4OTtXYWl0NEV2ZW50KGlzRHlpbmdFdmVudCk7IC8vUGF1c2UgdGhlIGN1cnJlbnQgdGhyZWFkIHVudGlsIHNodXRkb3duLiYjeEQ7JiN4QTsvLyAmI3g5OyIvPgorICAgICAgICAgICAgICA8bWFya2VyIHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJDb3JlIHByb2Nlc3Npbmcgd2l0aCBubyBpbnB1dHMiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPC9tYXJrZXI+CisgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyIvPgorICAgICAgICAgIDwvZWxzZT4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBO30mI3hEOyYjeEE7JiN4RDsmI3hBOyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOklmQmxvY2siPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7Ly8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqJiN4RDsmI3hBOy8vIElOUFVUIE1FVEhPRFMgQ0FMTEVEIEZST00gVEhFIENvcmUoKSBNRVRIT0QgV0hFTkVWRVIgQSBTQU1QTEUgSVMgUkVDRUlWRUQgT04gQU4gSU5QVVQgUE9SVCYjeEQ7JiN4QTsvLyBOT1RFIFRIQVQgSU4gQ09SRSwgT1RIRVIgU0FNUExJTkcgU1RSQVRFR0lFUyBDT1VMRCBCRSBBVkFJTEFCRSAoU1lOQ0hST05JWkVELCBUUklHR0VSRUQsIFJFU0FNUExJTkcuLi4pJiN4RDsmI3hBOy8vIEJVVCBBUkUgTk9UIElNUExFTUVOVEVEIFlFVC4mI3hEOyYjeEE7Ly8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqJiN4RDsmI3hBOyYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZvckJsb2NrIj4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIvL1RoaXMgY2FsbGJhY2sgd2lsbCBiZSBjYWxsZWQgZWFjaCB0aW1lIGEgbmV3IHNhbXBsZSBpcyByZWNlaXZlZCBvbiB0aGUgY29ycmVzcG9uZGluZyBpbnB1dCBwb3J0LiYjeEQ7JiN4QTt2b2lkIE1BUFMiLz4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwL2MiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSI6OiIvPgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZSIvPgorICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icG9ydCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ0LyUuMS9wb3J0Ij4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZWRFbGVtZW50L3R5cGUiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJfUmVjZWl2ZWRfb25fIi8+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDQvJS4xL3BvcnQiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il9JblBvcnQoIi8+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDQvJS4xL3BvcnQiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlZEVsZW1lbnQvdHlwZSIvPgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiogZGF0YV9pbiwgaW50IGNvdW50LCBNQVBTVGltZXN0YW1wIHQpJiN4RDsmI3hBO3smI3hEOyYjeEE7Ly8mI3g5OyIvPgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpQcm90ZWN0ZWRBcmVhQmxvY2siPgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOy8vJiN4OTsiLz4KKyAgICAgICAgICAgICAgPG1hcmtlciB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IlByb2Nlc3NpbmcgY29kZSBmb3Igc2FtcGxlcyByZWNlaXZlZCBvbiAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlIi8+CisgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icG9ydCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ0LyUuMS9wb3J0Ij4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZWRFbGVtZW50L3R5cGUiLz4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDwvbWFya2VyPgorICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTt9JiN4RDsmI3hBOyIvPgorICAgICAgICAgICAgPGxvb3BWYXJpYWJsZSBuYW1lPSJwb3J0Ij4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICA8L2xvb3BWYXJpYWJsZT4KKyAgICAgICAgICAgIDxpdGVyU2V0IHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIiBlVHlwZT0iLzEzL1NlcXVlbmNlKFBvcnQpIj4KKyAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0SW5wdXRQb3J0c0ZvckVsZW1lbnQiLz4KKyAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC9jIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlRXhwIiBlVHlwZT0iLzExL0VsZW1lbnQiPgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55X0NsYXNzL29jbEFzVHlwZSIvPgorICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgPC9pdGVyU2V0PgorICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICA8aWZFeHByIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIiBlVHlwZT0iLzEzL1NlcXVlbmNlKFBvcnQpIj4KKyAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRJbnB1dFBvcnRzRm9yRWxlbWVudCIvPgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwL2MiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVFeHAiIGVUeXBlPSIvMTEvRWxlbWVudCI+CisgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnlfQ2xhc3Mvb2NsQXNUeXBlIi8+CisgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1NlcXVlbmNlKFQpX0NsYXNzL3NpemUiLz4KKyAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6SW50ZWdlckxpdGVyYWxFeHAiIGludGVnZXJTeW1ib2w9IjAiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXJfQ2xhc3MvJTNFIi8+CisgICAgICAgICAgPC9pZkV4cHI+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsmI3hEOyYjeEE7Ii8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6SWZCbG9jayI+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiYjeEQ7JiN4QTsvLyBPVVRQVVQgTUVUSE9EUyBUTyBCRSBDQUxMRUQgQlkgVEhFIFBST0dSQU1NRVIgRk9SIEVNSVRUSU5HIEEgU0FNUExFIE9OIEFOIE9VVFBVVCBQT1JULiYjeEQ7JiN4QTsvLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiomI3hEOyYjeEE7JiN4RDsmI3hBOyIvPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6Rm9yQmxvY2siPgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii8vVG8gYmUgY29tcGxldGVkIGJ5IHByb2dyYW1tZXIsIHRoZW4gY2FsbGVkIGJ5IHByb2dyYW1tZXIgd2hlbmV2ZXIgbmVjZXNzYXJ5IGluIG9yZGVyIHRvJiN4RDsmI3hBOy8vb3V0cHV0IGEgZGF0YSBzYW1wbGUgb24gb3V0cHV0IHBvcnQgIi8+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xL3BvcnQiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTt2b2lkIE1BUFMiLz4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwL2MiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSI6Ok91dHB1dF8iLz4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InBvcnQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEvcG9ydCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iKE1BUFNUaW1lc3RhbXAgdCkmI3hEOyYjeEE7eyYjeEQ7JiN4QTsmI3g5O01BUFNJT0VsdCogaW9lbHRvdXQgPSBTdGFydFdyaXRpbmcoT3V0cHV0KCZxdW90OyIvPgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icG9ydCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMS9wb3J0Ij4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImcXVvdDspKTsmI3hEOyYjeEE7JiN4RDsmI3hBOy8vICYjeDk7Ii8+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOlByb3RlY3RlZEFyZWFCbG9jayI+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7JiN4OTtpbnQgY291bnRfIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icG9ydCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMS9wb3J0Ij4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZWRFbGVtZW50L3R5cGUiLz4KKyAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il9vdXQgPSAxOyAmI3g5Oy8vY2hhbmdlZCBpdCB0byB0aGUgbnVtYmVyIG9mIHNhbXBsZXMgdG8gd3JpdGUgaW4gb3V0cHV0IE1BUFNJT0VsdCAmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTsmI3g5OyYjeDk7JiN4OTsmI3g5OyYjeDk7JiN4OTsmI3g5Oy8vKGJ1dCBuZXZlciBtb3JlIHRoYW4gdGhlIG1heCB2ZWN0b3Igc2l6ZSBhbGxvY2F0ZWQgb24gdGhlIG91dHB1dCkuJiN4RDsmI3hBOyYjeDk7Ii8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vUlRNYXBzRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAvZ2V0TUFQU0lPRWx0QWNjZXNzRnVuY3Rpb24iLz4KKyAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZSIvPgorICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InBvcnQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEvcG9ydCI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGVkRWxlbWVudC90eXBlIi8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iaW9lbHRvdXQiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJkYXRhX291dCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyYjeEQ7JiN4QTsmI3g5Oy8vRmlsbCBpbiBkYXRhX291dCBoZXJlLiYjeEQ7JiN4QTsmI3g5Oy8vLi4uLiYjeEQ7JiN4QTsmI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6SWZCbG9jayI+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeDk7aW9lbHRvdXQtPlZlY3RvclNpemUoKSA9ICBjb3VudF8iLz4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlIi8+CisgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icG9ydCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMS9wb3J0Ij4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZWRFbGVtZW50L3R5cGUiLz4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iX291dCAqIHNpemVvZigiLz4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlIi8+CisgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icG9ydCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMS9wb3J0Ij4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZWRFbGVtZW50L3R5cGUiLz4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iKTsgLy9Gb3Igbm9uLXN0YW5kYXJkIGRhdGF0eXBlcywgYnkgY29udmVudGlvbiwgICYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgICAgICA8aWZFeHByIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAvaXNQcmltaXRpdmVUeXBlIi8+CisgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlIi8+CisgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xL3BvcnQiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlZEVsZW1lbnQvdHlwZSIvPgorICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpCb29sZWFuTGl0ZXJhbEV4cCIgYm9vbGVhblN5bWJvbD0iZmFsc2UiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW5fQ2xhc3MvPSIvPgorICAgICAgICAgICAgICAgIDwvaWZFeHByPgorICAgICAgICAgICAgICAgIDxlbHNlPgorICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeDk7aW9lbHRvdXQtPlZlY3RvclNpemUoKSA9ICBjb3VudF8iLz4KKyAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InBvcnQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEvcG9ydCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGVkRWxlbWVudC90eXBlIi8+CisgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iX291dDsgLy9OdW1iZXIgb2YgZWxlbWVudHMgaW4gb3V0cHV0IHZlY3RvciAobm90IG51bWJlciBvZiBieXRlcykuJiN4RDsmI3hBOyIvPgorICAgICAgICAgICAgICAgIDwvZWxzZT4KKyAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLy8mI3g5OyIvPgorICAgICAgICAgICAgICA8bWFya2VyIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL1N0cmluZ19DbGFzcy8rIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJPdXRwdXQgb24gIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icG9ydCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMS9wb3J0Ij4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIgaW1wbGVtZW50YXRpb24iPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDwvbWFya2VyPgorICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsmI3hEOyYjeEE7JiN4OTtpb2VsdG91dC0+VGltZXN0YW1wKCkgPSB0OyYjeDk7JiN4RDsmI3hBOyYjeDk7U3RvcFdyaXRpbmcoaW9lbHRvdXQpOyYjeEQ7JiN4QTt9JiN4RDsmI3hBOyIvPgorICAgICAgICAgICAgPGxvb3BWYXJpYWJsZSBuYW1lPSJwb3J0Ij4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICA8L2xvb3BWYXJpYWJsZT4KKyAgICAgICAgICAgIDxpdGVyU2V0IHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIiBlVHlwZT0iLzEzL1NlcXVlbmNlKFBvcnQpIj4KKyAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50Ii8+CisgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYyIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvYyI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VHlwZUV4cCIgZVR5cGU9Ii8xMS9FbGVtZW50Ij4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueV9DbGFzcy9vY2xBc1R5cGUiLz4KKyAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgIDwvaXRlclNldD4KKyAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgPGlmRXhwciB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiIgZVR5cGU9Ii8xMy9TZXF1ZW5jZShQb3J0KSI+CisgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50Ii8+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYyIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvYyI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VHlwZUV4cCIgZVR5cGU9Ii8xMS9FbGVtZW50Ij4KKyAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueV9DbGFzcy9vY2xBc1R5cGUiLz4KKyAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU2VxdWVuY2UoVClfQ2xhc3Mvc2l6ZSIvPgorICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpJbnRlZ2VyTGl0ZXJhbEV4cCIgaW50ZWdlclN5bWJvbD0iMCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlcl9DbGFzcy8lM0UiLz4KKyAgICAgICAgICA8L2lmRXhwcj4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOy8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiYjeEQ7JiN4QTsvLyBSRUxFQVNFIEZVTkNUSU9OLiYjeEQ7JiN4QTsvLyBDQUxMRUQgT05DRSBXSEVOIERJQUdSQU1TIFNUT1BTIEVYRUNVVElORyBPUiBBRlRFUiBBIENBTEwgVE8gRXJyb3IoJnF1b3Q7Li4uJnF1b3Q7KTsgSU4gQmlydGggT1IgQ29yZS4mI3hEOyYjeEE7Ly8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqJiN4RDsmI3hBO3ZvaWQgTUFQUyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYyIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvYyI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSI6OkRlYXRoKCkmI3hEOyYjeEE7eyYjeEQ7JiN4QTsvLyAmI3g5OyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOlByb3RlY3RlZEFyZWFCbG9jayI+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsvLyAmI3g5OyIvPgorICAgICAgICAgIDxtYXJrZXIgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IkRlYXRoIGltcGxlbWVudGF0aW9uIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8L21hcmtlcj4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyYjeEQ7JiN4QTt9JiN4RDsmI3hBOyYjeEQ7JiN4QTsiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpJZkJsb2NrIj4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqJiN4RDsmI3hBOy8vIE9WRVJMT0FERUQgTUVUSE9EOiBXSUxMIEJFIENBTExFRCBBVCBESUFHUkFNIEVYRUNVVElPTiBTSFVURE9XTiBPTkNFIEFMTCBUSEUgQ09NUE9ORU5UUyBIQVZFIEdPTkUgVEhST1VHSCBEZWF0aCgpLiYjeEQ7JiN4QTsvLyBUSElTIElTIFRIRSBQTEFDRSBXSEVSRSBUTyBSRUxFQVNFIEJVRkZFUlMgVEhBVCBXRVJFIERZTkFNSUNBTExZIEFMTE9DQVRFRCBCWSBUSEUgUFJPR1JBTU1FUiBJTiBCSVJUSC4gJiN4RDsmI3hBOy8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiYjeEQ7JiN4QTt2b2lkIE1BUFMiLz4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwL2MiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ijo6RnJlZUJ1ZmZlcnMoKSYjeEQ7JiN4QTt7JiN4RDsmI3hBOyYjeDk7Ly9MZXQncyByZWxlYXNlIHRoZSBtZW1vcnkgd2UgYWxsb2NhdGVkIG9uIHRoZSBvdXRwdXQgYnVmZmVycy4mI3hEOyYjeEE7Ii8+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpMZXRCbG9jayI+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZvckJsb2NrIj4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpJZkJsb2NrIj4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4OTtNQVBTTGlzdEl0ZXJhdG9yIGl0XyIvPgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icG9ydCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUyLyUuMy8lL3BvcnQiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iOyYjeEQ7JiN4QTsmI3g5O01BUFNGb3JhbGxJdGVtcyhpdF8iLz4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InBvcnQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjMvJS9wb3J0Ij4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IixfIi8+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTIvJS4zLyUvcG9ydCI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJfYnVmZmVycykgeyYjeEQ7JiN4QTsmI3g5OyYjeDk7ZGVsZXRlICIvPgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJbXSI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIgXyIvPgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icG9ydCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUyLyUuMy8lL3BvcnQiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iX2J1ZmZlcnMiLz4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iWyI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJpdF8iLz4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InBvcnQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjMvJS9wb3J0Ij4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiAiLz4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iXSI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSI7JiN4RDsmI3hBOyYjeDk7fSYjeEQ7JiN4QTsmI3g5O18iLz4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InBvcnQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjMvJS9wb3J0Ij4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il9idWZmZXJzLkNsZWFyKCk7JiN4RDsmI3hBOyIvPgorICAgICAgICAgICAgICAgIDxpZkV4cHIgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuZW10bCMvMC9pc1ByaW1pdGl2ZVR5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InBvcnQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjMvJS9wb3J0Ij4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZWRFbGVtZW50L3R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Qm9vbGVhbkxpdGVyYWxFeHAiIGJvb2xlYW5TeW1ib2w9ImZhbHNlIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuX0NsYXNzLz0iLz4KKyAgICAgICAgICAgICAgICA8L2lmRXhwcj4KKyAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICA8bG9vcFZhcmlhYmxlIG5hbWU9InBvcnQiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICA8L2xvb3BWYXJpYWJsZT4KKyAgICAgICAgICAgICAgPGl0ZXJTZXQgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iIGVUeXBlPSIvMTMvU2VxdWVuY2UoUG9ydCkiPgorICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldE91dHB1dFBvcnRzRm9yRWxlbWVudCIvPgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJlbHQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjMvZWx0Ij4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDwvaXRlclNldD4KKyAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgIDxsZXRWYXJpYWJsZSBuYW1lPSJlbHQiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgPGluaXRFeHByZXNzaW9uIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC9jIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlRXhwIiBlVHlwZT0iLzExL0VsZW1lbnQiPgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55X0NsYXNzL29jbEFzVHlwZSIvPgorICAgICAgICAgICAgICA8L2luaXRFeHByZXNzaW9uPgorICAgICAgICAgICAgPC9sZXRWYXJpYWJsZT4KKyAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeDk7JiN4RDsmI3hBOyYjeDk7TUFQU0NvbXBvbmVudDo6RnJlZUJ1ZmZlcnMoKTsmI3hEOyYjeEE7fSYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICA8aWZFeHByIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIiBlVHlwZT0iLzEzL1NlcXVlbmNlKFBvcnQpIj4KKyAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRPdXRwdXRQb3J0c0ZvckVsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC9jIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlRXhwIiBlVHlwZT0iLzExL0VsZW1lbnQiPgorICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55X0NsYXNzL29jbEFzVHlwZSIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TZXF1ZW5jZShUKV9DbGFzcy9zaXplIi8+CisgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkludGVnZXJMaXRlcmFsRXhwIiBpbnRlZ2VyU3ltYm9sPSIwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyX0NsYXNzLyUzRSIvPgorICAgICAgICAgIDwvaWZFeHByPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7Ly8gIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6UHJvdGVjdGVkQXJlYUJsb2NrIj4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOy8vICIvPgorICAgICAgICAgIDxtYXJrZXIgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvU3RyaW5nX0NsYXNzLysiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iQWRkaXRpb25hbCBtZXRob2RzIGZvciBNQVBTIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYyIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvYyI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICA8L21hcmtlcj4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyYjeEQ7JiN4QTsiLz4KKyAgICAgICAgPGZpbGVVcmwgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvU3RyaW5nX0NsYXNzLysiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL1N0cmluZ19DbGFzcy8rIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvU3RyaW5nX0NsYXNzLysiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvU3RyaW5nX0NsYXNzLysiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJ1c2VyX3Nkay8iPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InJvb3RfbW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwL3Jvb3RfbW9kZWwiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIudS9zcmMvbWFwc18iPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwL2MiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIuY3BwIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8L2ZpbGVVcmw+CisgICAgICAgIDxjaGFyc2V0IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJVVEYtOCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2NoYXJzZXQ+CisgICAgICA8L2JvZHk+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9ImMiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0icm9vdF9tb2RlbCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICA8L210bDpNb2R1bGU+CisgIDxlY29yZTpFUGFja2FnZSBuYW1lPSJhZGRpdGlvbnMiPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU3RyaW5nX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSIrIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCBub24tc3RhbmRhcmQiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ib3RoZXIiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJJbnRlZ2VyX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJSZWFsX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvUmVhbCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFT2JqZWN0X0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcCIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJyb290X21vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldE91dHB1dFBvcnRzRm9yRWxlbWVudCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldE91dHB1dFBvcnRzRm9yRWxlbWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6U2VxdWVuY2VUeXBlIiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMy9TZXF1ZW5jZShQb3J0KSIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZWx0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0SW5wdXRQb3J0c0ZvckVsZW1lbnQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRJbnB1dFBvcnRzRm9yRWxlbWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6U2VxdWVuY2VUeXBlIiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMy9TZXF1ZW5jZShQb3J0KSIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZWx0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNQcmltaXRpdmVUeXBlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuZW10bCMvMC9pc1ByaW1pdGl2ZVR5cGUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbHQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRNQVBTSU9FbHRBY2Nlc3NGdW5jdGlvbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uL1JUTWFwc0RhdGFUeXBlUXVlcmllcy5lbXRsIy8wL2dldE1BUFNJT0VsdEFjY2Vzc0Z1bmN0aW9uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJ0eXBlX25hbWUiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImlvZWx0X25hbWUiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InJldHVybl92YXJfbmFtZSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRSVE1hcHNPdXRwdXREZWZGb3JQcmltaXRpdmVUeXBlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iLi4vUlRNYXBzRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAvZ2V0UlRNYXBzT3V0cHV0RGVmRm9yUHJpbWl0aXZlVHlwZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYXJnMCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYXJnMSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYXJnMiI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0UlRNYXBzSW5wdXREZWZGb3JQcmltaXRpdmVUeXBlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iLi4vUlRNYXBzRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAvZ2V0UlRNYXBzSW5wdXREZWZGb3JQcmltaXRpdmVUeXBlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJhcmcwIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJhcmcxIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldE5iRWxlbWVudHNJblZlY3RvciI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uL1JUTWFwc0RhdGFUeXBlUXVlcmllcy5lbXRsIy8wL2dldE5iRWxlbWVudHNJblZlY3RvciIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0idHlwZV9uYW1lIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJpb2VsdF9uYW1lIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJyZXR1cm5fdmFsdWVfbmFtZSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9jbEFueV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb2xsZWN0aW9uKFQpX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQ29sbGVjdGlvbihUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTZXF1ZW5jZShUKV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1NlcXVlbmNlKFQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9yZGVyZWRTZXQoVClfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PcmRlcmVkU2V0KFQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNsYXNzX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iTW9kZWxfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFbGVtZW50X0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQcm9wZXJ0eV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNvbm5lY3Rvcl9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQYXJhbWV0ZXJfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9QYXJhbWV0ZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ2xhc3NpZmllcl9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzaWZpZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUG9ydF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRGF0YVR5cGVfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9EYXRhVHlwZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgIDwvZWNvcmU6RVBhY2thZ2U+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPGVjb3JlOkVQYWNrYWdlIG5hbWU9InR5cGVzIj4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJvY2wuZWNvcmU6VHlwZVR5cGUiIG5hbWU9IkVsZW1lbnQiPgorICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICA8L2Vjb3JlOkVQYWNrYWdlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxlY29yZTpFUGFja2FnZSBuYW1lPSJjb2xsZWN0aW9ucyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgbmFtZT0iU2VxdWVuY2UoUG9ydCkiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuTGlzdCI+CisgICAgICA8ZWxlbWVudFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgPC9lY29yZTpFUGFja2FnZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJpIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJpIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0iaSI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9ImkiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJpIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJpIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0iaSI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxlY29yZTpFQW5ub3RhdGlvbiBzb3VyY2U9InBvc2l0aW9ucyI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4wIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTI2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTA0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEzMzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTEwMzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0MjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQ0NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNDQ3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE0NTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xL2MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0NDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQ0OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0NTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQ2MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNDYzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE1MTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjMxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNDk4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE1MDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjMyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMy8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0NzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQ5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE1MTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTU5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTU5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNjAwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTU5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNTk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE2MDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTYwNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTYwNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTEyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzNiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS43LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE2NTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTkwMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNy8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE3MDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTg5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNy8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTczOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNzQwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzOSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS43LyUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE3NDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTgwMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS43LyUvJS8lLjEvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTc3NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNzg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjcvJS8lLyUuMS8lL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE3NzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTc3OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS43LyUvJS8lLjEvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNzg2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4MDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNy8lLyUvJS4xLyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNzg2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE3OTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNy8lLyUvJS4xLyUuMS8lL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE3ODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTc5MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS43LyUvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4MDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTgwNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNy8lLyUvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNzA4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE3MzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNy8lLyUvJS4zLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE3MjUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTczNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS43LyUvJS8lLjMvJS9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNzI1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE3MjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNy8lLyUvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxODA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4ODkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjcvJS8lLyUuNC8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxODE0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4MjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjcvJS8lLyUuNC8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4MjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTgzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS43LyUvJS8lLjQvJS4xL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4MjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTgzMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS43LyUvJS8lLjQvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxODM5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4NTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjcvJS8lLyUuNC8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4NTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTg2NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS43LyUvJS8lLjQvJS4zLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4NTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTg2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS43LyUvJS8lLjQvJS4zLyUvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTg1MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxODU2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjcvJS8lLyUuNC8lLjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4NjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTg4OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNy8lL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE2NTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTY2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNy8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTY3MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNjk5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjcvJS8lLjEvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNjk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE2OTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNy9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE2MTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTY0NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNy9lbHQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTYyOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNjQ4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjcvZWx0LyUvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTYyOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNjI5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjcvZWx0LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTY0MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNjQ3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjgiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE5MTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTkxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuOSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTkxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTgwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0NSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS45LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE5NjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTk2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuOS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE5MzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTk2MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xMCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTk4MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMDg4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjA4OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMDk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjExL2MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIwODkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjA5MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjA5NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTAwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1MCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjEwMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1MSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xMy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMTQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI1NDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjUyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjEzLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjIwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTM5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1MyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xMy8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjIzNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjM2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1NCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xMy8lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMjM3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIzMTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMTMvJS8lLyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMjcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIyODEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMTMvJS8lLyUuMS8lL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyNzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjI3NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xMy8lLyUvJS4xLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjI4MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjEzLyUvJS8lLjEvJS4xLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyODMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjI5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xMy8lLyUvJS4xLyUuMS8lL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyODMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjI4NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xMy8lLyUvJS4xLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjI5OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzA5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjEzLyUvJS8lLjEvJS4yL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyOTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjMwMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xMy8lLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMzEyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIzMTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjU1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjEzLyUvJS8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyMDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjIzMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xMy8lLyUvJS4zLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyMjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjIzMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xMy8lLyUvJS4zLyUvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjIyMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjI1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjEzLyUvJS8lLjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIzMTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjUzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjY4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMTMvJS8lLyUuNC8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMzIzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI0OTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjU2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjEzLyUvJS8lLjQvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNDk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI1MDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjcwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMTMvJS8lLyUuNC8lLjEvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjQ5NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTAxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjEzLyUvJS8lLjQvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNTA4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI1MTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjU4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjEzLyUvJS8lLjQvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNTExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI1MjUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjczIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMTMvJS8lLyUuNC8lLjMvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjUxMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTIwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjEzLyUvJS8lLjQvJS4zLyUvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjUxMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTE1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjEzLyUvJS8lLjQvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNTI3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI1MzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjU4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjEzLyUvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjE1MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTYzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1MiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xMy8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjE2NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjEzLyUvJS4xL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjE5MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTk0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjEzL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjEwNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTQyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1MSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xMy9lbHQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjEyMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTQzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjEzL2VsdC8lL2MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxMjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjEyNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xMy9lbHQvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMTM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIxNDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjgzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMTQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI1NTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjU2MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjg0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMTUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI1NjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjYyNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjg1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMTUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjYwOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjE0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2MyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xNS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI1NzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjYwNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjYyNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNzQxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2NCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xNyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjc0MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNzQ4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjE3L2MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI3NDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjc0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xOCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjc1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNzU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xOSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjc1NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyODIyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4xOS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyODA0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI4MTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjY5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjE5LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjc2OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyODAyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjIwIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyODIyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI5MzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjcwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjIxIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyOTM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI5NDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjk2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMjEvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjkzNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyOTM2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjIyIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyOTQzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI5NTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjczIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjIzIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyOTUwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMwMTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijc0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjIzLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI5OTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzAwMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNzUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjIzLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjk2MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyOTkzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4yNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzAxMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMDkxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3NiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTAyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMjUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMwOTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzA5OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTAzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMjUvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzA5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMDkzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4yNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzEwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMTQzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTA1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMjciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMxNDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzE1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTA2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMjcvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzE0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMTQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4yOCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzE1MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMTU0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3OSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTA4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMjkiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMxNTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzE2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTA5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMjkvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzE1NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMTU2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zMCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzE2MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNTY4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3OSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTExIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM1NjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzY1NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iODciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjMxLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM2MzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzY0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iODgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjMxLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzU4MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNjM2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzY1NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzODQzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI4OSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTE1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM4NDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzg1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTE2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzMvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzg0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzODQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzg1MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzODY4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI5NCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTE4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM4NjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTAwMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iOTciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM5MzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDI1MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iOTgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDI1MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0OTk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMDQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MzI2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ5ODUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEwNSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTIyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDM2OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MzcxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMDYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDM3MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MzgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvJS8lLjEvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDM3MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0Mzc2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQzODMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDQyNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTA2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvJS8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ0MjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDQzNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTI3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xLyUvJS4zL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ0MjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDQzMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTI4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xLyUvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NDM4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ0NDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEwNyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTI5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xLyUvJS41Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NDQ3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ0NTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuNS9pIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NDQ3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ0NDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuNS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NDQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ0NTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDQ1MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NDg3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMDciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuNyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDQ4OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NDk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMzQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvJS8lLjcvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDQ4OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NDkyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMzUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvJS8lLjgiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ0OTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDUwNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTA4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMzYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvJS8lLjkiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ1MDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDUxNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTM3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xLyUvJS45L3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ1MDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDUxMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTM4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xLyUvJS4xMCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDUxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NTI3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMDkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuMTEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ1MjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDUzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xLyUvJS4xMS9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NTI4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ1MzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuMTIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ1MzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDU2NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTA5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNDIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvJS8lLjEzIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NTY2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ1NzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuMTMvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDU2NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NTcwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNDQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvJS8lLjE0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NTc3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ2MDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjExMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQ1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xLyUvJS4xNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDYwMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NjExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNDYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvJS8lLjE1L3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ2MDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDYwNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQ3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xLyUvJS4xNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDYxMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NjIyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMTEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuMTciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ2MjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDYzMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQ5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xLyUvJS4xNy9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NjIzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ2MjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuMTgiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ2MzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDYzOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTUxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xLyUvJS4xOSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDY0MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NjQzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMTEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuMjAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ2NDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDY1MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTUzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xLyUvJS4yMC9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NjQ0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ2NDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuMjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ2NTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDY1OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTU1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xLyUvJS4yMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDY2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NjcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMTEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuMjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ2NzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDY4MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTU3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xLyUvJS4yMy9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NjczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ2NzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuMjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ2ODQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDcwNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTEyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNTkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvJS8lLjI1Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NzA3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ3MjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuMjUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDcwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NzE2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNjEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvJS8lLjI1LyUvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDcwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NzExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNjIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvJS8lLjI2Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NzI0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ3MjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuMjciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ3MzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDc3OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTEyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvJS8lLjI4Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NzgwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ3ODkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuMjgvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDc4MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0Nzg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNjYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvJS8lLjI5Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NzkxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ4NDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjExMyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTY3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xLyUvJS4zMCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDg0NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0ODU1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNjgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvJS8lLjMwL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ4NDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDg1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTY5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xLyUvJS4zMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDg1NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0ODc0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMTUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuMzIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ4NzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDg4OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTcxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xLyUvJS4zMi8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0ODc1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ4ODQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuMzIvJS9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0ODc1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ4NzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuMzMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ4OTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDg5OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTE1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNzQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvJS8lLjM0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0OTAwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ5MDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuMzQvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDkwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0OTA0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNzYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvJS8lLjM1Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0OTExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ5MzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjExNSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTc3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xLyUvJS4zNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDkzMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0OTQyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNzgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvJS8lLjM2L3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ5MzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDkzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTc5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xLyUvJS4zNyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDk0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0OTU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMTYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuMzgiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ5NTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDk2NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTgxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xLyUvJS4zOC9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0OTU4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ5NjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuMzkiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ5NjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDk3NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTE2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xODMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvJS8lLjQwIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MzMwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQzNjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuNDAvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDMzMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MzU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xODUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvJS8lLjQwLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDM0NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MzU2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xODYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvJS8lLjQwLyUvJS9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MzQ3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQzNTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS8lLyUuNDAvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MzYwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQzNjUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMS9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MjU5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQyNzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEwNCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTg5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDI3MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MzE5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xOTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNS8lLjEvJS4xLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQyOTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDMxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTkxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xLyUuMS8lL2MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQyOTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDI5OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTkyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4xLyUuMS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQzMTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDMxNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTkzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzODczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM5MzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMi8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzODczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM5MjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMi8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM4NzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzkxOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTk2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzUvJS4yLyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzODk4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM5MTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMi8lLyUvJS9jIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzODk4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM4OTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMi8lLyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzOTEwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM5MTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM1LyUuMi8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM5MzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzkzMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjAwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUwMDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTQxNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTIxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMDEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNi8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MDcwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUyMzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEyMiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjAyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzYvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MjMyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUyODUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIwMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM2LyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MjMyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUyNzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIwNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM2LyUuMS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUyNTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTI3NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjA1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzYvJS4xLyUvJS9jIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MjU2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUyNTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIwNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM2LyUuMS8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTI2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1Mjc1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMDciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNi8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUyODciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTMxNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTI1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMDgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNi8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUzMTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTMzMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjA5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzYvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MzMyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUzODEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEyNiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjEwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzYvJS41Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MzgyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUzODciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIxMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM2LyUuNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTM4OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NDA4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMjgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIxMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM2LyUuNyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTAxMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MDY3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMTMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNi8lLjcvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTAxMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MDYzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMTQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNi8lLjcvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MDEwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUwNTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIxNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM2LyUuNy8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTAzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MDU0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMTYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNi8lLjcvJS8lLyUvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTAzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MDM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNi8lLjcvJS8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTA0NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MDUzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zNi8lLjcvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MDY2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUwNjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIxOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM3Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NDE3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU0MjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEzMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjIwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzgiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU0MjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTQ4NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTMyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMjEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS4zOC8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NDY3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU0NzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEzMyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjIyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuMzgvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NDM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU0NjUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIyMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjM5Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NDg1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU3OTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEzNCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjI0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU3OTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTc5NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjI1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDAvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTc5MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NzkyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMjYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40MSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTc5OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1ODEzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNDEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIyNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQyIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1ODE0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcwODQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE0MyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjI4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDIvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTg3OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2MjUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNDQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIyOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQyLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjI1MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NjQ4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNTQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIzMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQyLyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2MzIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjYzMjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE1NSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjMxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDIvJS4xLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjMyOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2MzMyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMzIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjEvJS4xL2kiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjYzMjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjMzMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjMzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDIvJS4xLyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2MzMxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjYzMzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIzNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQyLyUuMS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjYzMzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjM3MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTU1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMzUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjEvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2MzcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjYzODEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIzNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQyLyUuMS8lLjMvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjM3MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2Mzc2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMzciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjEvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2MzgzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjYzOTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE1NSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjM4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDIvJS4xLyUuNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjM5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NDUyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMzkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjEvJS41LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY0MTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjQzMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDIvJS4xLyUuNS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY0MTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjQyNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDIvJS4xLyUuNS8lLyUvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjQxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NDIyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNDIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjEvJS41LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjQzMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NDQzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNDMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjEvJS41LyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjQ0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NDUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNDQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjEvJS42Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NDU0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY0NTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE1OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQ1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDIvJS4xLyUuNyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjQ2MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NTIzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNDYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjEvJS43LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY0ODciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjUwMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQ3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDIvJS4xLyUuNy8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY0ODciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjQ5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQ4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDIvJS4xLyUuNy8lLyUvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjQ4NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NDkxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNDkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjEvJS43LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjUwMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NTEyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjEvJS43LyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjUxMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NTIyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjEvJS44Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NTI1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY1MzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE1OSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjUyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDIvJS4xLyUuOSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjUzMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NTQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNTMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjEvJS45LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY1MzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjU0MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjU0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDIvJS4xLyUuOS8lL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY1MzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjUzNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjU1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDIvJS4xLyUuMTAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY1NDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjU2MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTU5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNTYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjEvJS4xMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjU2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NTcwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjEvJS4xMS9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NTYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY1NjUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI1OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQyLyUuMS8lLjEyIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NTcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY2NDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE1OSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjU5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDIvJS4xL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjYyNTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjI2OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTU0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNjAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjEvJS4xMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjI3MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2MzE3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNjEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjEvJS4xMy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2Mjk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjYzMTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI2MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQyLyUuMS8lLjEzLyUvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjI5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2Mjk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNjMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjEvJS4xMy8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjYzMDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjMxNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjY0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDIvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NjUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY3MDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE2MiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjY1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDIvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NzAxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY3NTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE2NiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjY2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDIvJS4zLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY3MzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjczOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTY3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNjciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjMvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NzEzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY3MzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI2OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQyLyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjc1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NzUyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNjgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI2OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQyLyUuNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTgxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1ODc1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNzAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTgxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1ODcxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNzEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1ODE4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU4NjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI3MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQyLyUuNS8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTg0MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1ODYyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNzMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjUvJS8lLyUvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTg0MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1ODQzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNzQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjUvJS8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTg1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1ODYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNzUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Mi8lLjUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1ODc0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU4NzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI3NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQyLyUuNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjc1MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3MDc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNjgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI3NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQyLyUuNi8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NzYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY5NDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE2OSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjc4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDIvJS42LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjk0MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3MDc2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNzIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI3OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQyLyUuNi8lLjEvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjk4NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3MDY0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNzMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQyLyUuNi8lLjEvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2OTUzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY5ODUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQyLyUuNi8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcwNzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzA3OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTc1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yODIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40MyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzA4NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3MDkzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNzYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MDkzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjgwMDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE3OSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjg0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzE1NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3NTkzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxODAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ0LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzU5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3OTk4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxODciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ0LyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3NjYzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijc3NzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE4OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjg3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDQvJS4xLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzc3MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3Nzc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yODgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40NC8lLjEvJS4xL2MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc3NzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzc3NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjg5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDQvJS4xLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzc4MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3NzgzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxODkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ0LyUuMS8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc3ODQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzc5OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjkxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDQvJS4xLyUuMy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3Nzg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijc3OTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ0LyUuMS8lLjMvJS9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3Nzg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijc3ODgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ0LyUuMS8lLjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc4MDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzgxMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTg5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOTQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40NC8lLjEvJS41Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3ODE0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijc4MjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ0LyUuMS8lLjUvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzgxNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3ODE4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOTYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40NC8lLjEvJS42Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3ODI1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijc4MzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE4OSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjk3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDQvJS4xLyUuNyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzgzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3ODQ4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40NC8lLjEvJS43LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc4MzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzg0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjk5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDQvJS4xLyUuNy8lL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc4MzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzgzOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzAwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDQvJS4xLyUuOCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzg1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3ODk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxODkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMwMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ0LyUuMS8lLjkiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc4OTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzk4NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTkxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMDIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40NC8lLjEvJS45LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc5NjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzk3NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTkyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMDMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40NC8lLjEvJS45LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzkwOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3OTY3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMDQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40NC8lLjEvJS45LyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3OTA4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijc5NTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMwNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ0LyUuMS8lLjkvJS4xLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzk1MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3OTY3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMDYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40NC8lLjEvJS45LyUuMS8lLjEvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzk1MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3OTYyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMDciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40NC8lLjEvJS45LyUuMS8lLjEvJS9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3OTUzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijc5NTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMwOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ0LyUuMS8lLjEwIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3OTg2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijc5OTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE5MyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzA5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDQvJS4xL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc2MDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzYxMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTg3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40NC8lLjEvJS4xMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzYxNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3NjU5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40NC8lLjEvJS4xMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3NjM4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijc2NTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMxMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ0LyUuMS8lLjExLyUvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzYzOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3NjM5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMTMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40NC8lLjEvJS4xMS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc2NTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzY1NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzE0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDQvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MDk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcxNTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMxNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ0LyUuMi8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MDk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcxNTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMxNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ0LyUuMi8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcwOTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzE0MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzE3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDQvJS4yLyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MTIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcxNDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMxOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ0LyUuMi8lLyUvJS9jIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MTIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcxMjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMxOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ0LyUuMi8lLyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MTMzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcxNDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMyMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ0LyUuMi8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcxNTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzE1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzIxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjgwMDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODAxMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTk2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMjIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40NiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODAxMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5NDcwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxOTgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMyMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjgwNzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODM2NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTk5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjgzNjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTQ2MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjAzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMjUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODQzNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NTY1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMDQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMyNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg1NjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODU3NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzI3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xLyUuMS9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4NTY2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg1NzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMyOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg1NzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODU4OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjA2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMjkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4NTg5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg1OTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMzMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMS8lLjMvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODU4OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NTkwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMzEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4NTk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg2MDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIwNiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzMyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xLyUuNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODYwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NjE2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMzMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEvJS41L3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg2MDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODYxMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzM0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xLyUuNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODYxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4Njg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMDYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMzNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMS8lLjciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg2ODUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODY5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzM2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xLyUuNy9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4Njg1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg2ODkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMzNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMS8lLjgiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg2OTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODcwOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjA4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMzgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEvJS45Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4NzA4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkzOTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIxMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzM5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xLyUuOS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4NzY2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg3NzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIxMSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzQwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xLyUuOS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg3ODAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODc5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzQxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xLyUuOS8lLjEvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODc4MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4Nzg5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNDIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEvJS45LyUuMS8lL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg3ODAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODc4NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzQzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xLyUuOS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg3OTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODk1OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjExIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNDQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEvJS45LyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODk1OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5MDIzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNDUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEvJS45LyUuMy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4OTg2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkwMDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM0NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMS8lLjkvJS4zLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODk4NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4OTk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNDciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEvJS45LyUuMy8lLyUvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODk4NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4OTkwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNDgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEvJS45LyUuMy8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjkwMDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTAxMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzQ5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xLyUuOS8lLjMvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MDEyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkwMjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM1MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMS8lLjkvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MDI1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkwNjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIxNCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzUxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xLyUuOS8lLjUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjkwNjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTM3NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjE4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNTIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEvJS45LyUuNS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MTEyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkxNDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIxOCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzUzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xLyUuOS8lLjUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MTQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkxNjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM1NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMS8lLjkvJS41LyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MTQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkxNTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM1NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMS8lLjkvJS41LyUuMS8lL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjkxNDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTE1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzU2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xLyUuOS8lLjUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MTYyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkxNzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIxOSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzU3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xLyUuOS8lLjUvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MTc3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkxOTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM1OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMS8lLjkvJS41LyUuMy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MTc3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkxODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM1OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMS8lLjkvJS41LyUuMy8lL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjkxNzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTE4MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzYwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xLyUuOS8lLjUvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MTkzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkyNDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIxOSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzYxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xLyUuOS8lLjUvJS41Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MDcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkxMDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM2MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMS8lLjkvJS41LyUuNS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MDczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkwOTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM2MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMS8lLjkvJS41LyUuNS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjkwODkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTA5OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzY0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xLyUuOS8lLjUvJS41LyUvJS9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MDg5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkwOTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM2NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMS8lLjkvJS41LyUuNS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjkxMDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTEwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzY2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xLyUuOS8lLjUvJS42Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MjQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkzNzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIyMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzY3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xLyUuOS8lLjUvJS42LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjkyNTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTI4NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjIxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNjgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEvJS45LyUuNS8lLjYvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5Mjg3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkzMDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM2OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMS8lLjkvJS41LyUuNi8lLjEvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTI4NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5Mjk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNzAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEvJS45LyUuNS8lLjYvJS4xLyUvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTI4NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5MjkxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNzEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEvJS45LyUuNS8lLjYvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MzAzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkzNzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIyMSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzcyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xLyUuOS8lLjYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjkzNzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTM4MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjIzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNzMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEvJS45LyUuNyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODcyMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NzY0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNzQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEvJS45LyUuNy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4NzIwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg3NDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM3NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMS8lLjkvJS43LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODcyMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NzMyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNzYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEvJS45LyUuNy8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODczNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NzQ0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNzciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEvJS45LyUuNy8lLyUuMS9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4NzM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg3MzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM3OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMS8lLjkvJS43LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODc0NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NzY0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNzkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEvJS4xMCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTM5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5NDU2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMjQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM4MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMS9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4MzcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjgzODMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIwMyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzgxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xLyUuMTEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjgzODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODQzMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzgyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xLyUuMTEvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODQxMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NDMxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zODMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjEvJS4xMS8lL2MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg0MTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODQxMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzg0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDYvJS4xLyUuMTEvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4NDIzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg0MzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM4NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODAxNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4MDczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zODYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjIvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODAxNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4MDY5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zODciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjIvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4MDE1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjgwNjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM4OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ2LyUuMi8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODA0MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4MDYwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zODkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjIvJS8lLyUvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODA0MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4MDQxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zOTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjIvJS8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODA1MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4MDU5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zOTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40Ni8lLjIvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4MDcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjgwNzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM5MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjQ3Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5NDcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk3OTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIzMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzkzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDgiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk3OTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTgwNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzk0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNDgvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTc5OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5ODAwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zOTUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS40OSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTgwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5ODI1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMzUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM5NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUwIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5ODI1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk4NzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIzNyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzk3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTAvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTg2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5ODY3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMzgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM5OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUwLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTgzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5ODU5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zOTkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41MSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTg3OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5ODg4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMzkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQwMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUyIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5ODg4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwOTQzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNDIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQwMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUyLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk5NTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTA0MjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI0MyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDAyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTIvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDQyOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDQzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDAzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTIvJS4xL2MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwNDI4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwNDI5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MDQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwNDM2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwNTIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNDciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQwNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUyLyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTA1MjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTA4OTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI1MCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDA2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTIvJS4zLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwNTcwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwODg4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNTEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQwNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUyLyUuMy8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwNjI2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwODc4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNTIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQwOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUyLyUuMy8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTA2NjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTA2OTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI1MyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDA5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTIvJS4zLyUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwNjkxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwNzAwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjMvJS8lLyUuMS9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDY5MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDY5NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDExIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTIvJS4zLyUvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwNzAyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwNzI1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNTMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQxMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUyLyUuMy8lLyUvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDcyNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDczNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDEzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTIvJS4zLyUvJS8lLjMvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTA3MjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTA3MzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQxNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUyLyUuMy8lLyUvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDczNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDczOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjU0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MTUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjMvJS8lLyUuNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTA3NDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTA3NDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQxNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUyLyUuMy8lLyUvJS41L3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwNzQwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwNzQ0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjMvJS8lLyUuNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTA3NTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTA3NzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI1NCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDE4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTIvJS4zLyUvJS8lLjciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwNzc0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwNzc4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MTkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjMvJS8lLyUuOCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTA3ODAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTA3ODIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI1NSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDIwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTIvJS4zLyUvJS8lLjkiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwNzgzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwNzkyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MjEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjMvJS8lLyUuOS9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDc4MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDc4NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDIyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTIvJS4zLyUvJS8lLjEwIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDc5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDgwMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjU1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MjMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjMvJS8lLyUuMTEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwODAzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwODA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjMvJS8lLyUuMTIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwODA4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwODExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNTUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQyNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUyLyUuMy8lLyUvJS4xMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTA4MTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTA4MjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQyNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUyLyUuMy8lLyUvJS4xMy9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDgxMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDgxNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDI3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTIvJS4zLyUvJS8lLjE0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDgyMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDgyNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjU1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MjgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjMvJS8lLyUuMTUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwODI1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwODI4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MjkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjMvJS8lLyUuMTYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwODMwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwODM5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNTUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQzMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUyLyUuMy8lLyUvJS4xNyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTA4NDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTA4NDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQzMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUyLyUuMy8lLyUvJS4xNy9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDg0MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDg0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDMyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTIvJS4zLyUvJS8lLjE4Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDg1MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDg3MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjU3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MzMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjMvJS8lLyUuMTkiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwNjMwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwNjY2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MzQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjMvJS8lLyUuMTkvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTA2MzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTA2NTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQzNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUyLyUuMy8lLyUvJS4xOS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwNjQ3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwNjU2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MzYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjMvJS8lLyUuMTkvJS8lL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwNjQ3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwNjUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MzciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjMvJS8lLyUuMTkvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDY2MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDY2NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDM4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTIvJS4zLyUvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTA1NzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTA1ODciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI1MSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDM5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTIvJS4zLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDU5MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDYxOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDQwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTIvJS4zLyUvJS4xL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTA2MTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTA2MTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ0MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUyLyUuMy9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwNTI4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwNTY0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNTAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ0MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUyLyUuMy9lbHQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTA1NDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTA1NjUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ0MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUyLyUuMy9lbHQvJS9jIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDU0NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDU0NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDQ0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTIvJS4zL2VsdC8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwNTU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwNTY0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NDUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwOTAwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwOTM4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNjEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ0NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUyLyUuNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTg5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5OTUwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NDciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTg5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5OTQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NDgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5ODkyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk5MzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ0OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUyLyUuNS8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTkxNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5OTM3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjUvJS8lLyUvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTkxNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5OTE4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjUvJS8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTkyOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5OTM2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NTIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Mi8lLjUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5OTQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk5NTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ1MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjUzIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDk0NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDk1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjY1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NTQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41NCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTA5NTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTEwMTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI2NiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDU1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTEwMDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTEwMDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI2NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDU2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTQvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDk2MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTAwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDU3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTQvJS4xLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwOTYyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwOTkxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41NC8lLjEvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDk5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTAwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDU5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTQvJS4xLyUuMS9jIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDk5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDk5NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDYwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExMDE5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExMDIzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNjgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ2MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjU2Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMzQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE0MDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ2MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjU2LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEzNDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDYzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTYvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMzQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEzOTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ2NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjU2LyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMzQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEzNzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ2NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjU2LyUvJS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEzNDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTM1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDY2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTYvJS8lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMzU5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEzNzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ2NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjU2LyUvJS8lLyUuMS9yb290X21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMzU5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEzNjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ2OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAvJS8lLjU2LyUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEzNzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTM5MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDY5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTYvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEzOTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDcwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTYvJS8lLjEvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTM5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMzk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NzEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwLyUvJS41Ni8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0MDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQwOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDcyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC8lLyUuNTciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0MTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQyNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDczIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcC9jIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMzA1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEzMTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NzQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwL3Jvb3RfbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEzMTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTMzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lY29yZTpFQW5ub3RhdGlvbj4KKzwveG1pOlhNST4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX2NvbXBvbmVudF9jcHAubXRsIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfY29tcG9uZW50X2NwcC5tdGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjJlNjNhMAotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX2NvbXBvbmVudF9jcHAubXRsCkBAIC0wLDAgKzEsMjcwIEBACitbY29tbWVudCBlbmNvZGluZyA9IFVURi04IC9dCitbY29tbWVudF0KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIElOVEVNUE9SQSBTLkEuCisgKgorICogVGhpcyBzb2Z0d2FyZSBpcyBhIGNvbXB1dGVyIHByb2dyYW0gd2hvc2UgcHVycG9zZSBpcyB0byB0cmFuc2Zvcm0gUm9ib3RNTCBtb2RlbHMKKyAqIGludG8gUlRNYXBzIGRpYWdyYW1zIGFuZCBSVE1hcHMgY29tcG9uZW50cyB2aWEgc291cmNlIGNvZGUgZ2VuZXJhdGlvbiB0ZWNobmlxdWVzLgorICogCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBOaWNvbGFzIERVIExBQyAoSU5URU1QT1JBKSAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK1svY29tbWVudF0KKworW21vZHVsZSBnZW5lcmF0ZV9ydG1hcHNfY29tcG9uZW50X2NwcCgnaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzMuMC4wL1VNTCcsICdodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEnKV0KKworW2ltcG9ydCBvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmNvbW1vbjo6bW1xdWVyaWVzOjpHZW5lcmFsUXVlcmllcyAvXQorW2ltcG9ydCBvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmNvbW1vbjo6bW1xdWVyaWVzOjpBcmNoaXRlY3R1cmVRdWVyaWVzIC9dCitbaW1wb3J0IG9yZzo6ZWNsaXBzZTo6cGFweXJ1czo6cm9ib3RtbDo6Z2VuZXJhdG9yczo6Y29tbW9uOjptbXF1ZXJpZXM6OkRhdGFUeXBlUXVlcmllcyAvXQorW2ltcG9ydCBvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmludGVtcG9yYTo6cnRtYXBzOjpSVE1hcHNEYXRhVHlwZVF1ZXJpZXMgL10KKworW3RlbXBsYXRlIHB1YmxpYyBnZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcChjIDogQ2xhc3MsIHJvb3RfbW9kZWwgOiBNb2RlbCldCitbZmlsZSAoJ3VzZXJfc2RrLycgKyByb290X21vZGVsLm5hbWUgKyAnLnUvc3JjL21hcHNfJyArIGMubmFtZSArICcuY3BwJywgZmFsc2UsICdVVEYtOCcpXQorCisjaW5jbHVkZSAibWFwc19bYy5uYW1lL10uaCIKKy8vIFtwcm90ZWN0ZWQgKCdBZGRpdGlvbmFsIGluY2x1ZGVzJyldCisvLyBbL3Byb3RlY3RlZF0KKworLy8gVXNlIHRoZSBtYWNyb3MgdG8gZGVjbGFyZSB0aGUgaW5wdXRzCitNQVBTX0JFR0lOX0lOUFVUU19ERUZJTklUSU9OKE1BUFNbYy5uYW1lL10pCisJW2xldCBlbHQgOiBFbGVtZW50ID0gYy5vY2xBc1R5cGUoRWxlbWVudCldCisJW2ZvciAocG9ydCA6IFBvcnQgfCBnZXRJbnB1dFBvcnRzRm9yRWxlbWVudChlbHQpKV0KKwlbaWYgKGlzUHJpbWl0aXZlVHlwZShwb3J0LnR5cGUpKV0KKwlbZ2V0UlRNYXBzSW5wdXREZWZGb3JQcmltaXRpdmVUeXBlKHBvcnQubmFtZSwgcG9ydC50eXBlLm5hbWUpL10KKwlbZWxzZV0KKwlNQVBTX0lOUFVUKCJbcG9ydC5uYW1lL10iLE1BUFNGaWx0ZXJbcG9ydC50eXBlLm5hbWUvXSxNQVBTOjpGaWZvUmVhZGVyKQorCVsvaWZdCisJWy9mb3JdCisJWy9sZXRdCisvLyAJW3Byb3RlY3RlZCAoJ0FkZGl0aW9uYWwgaW5wdXQgZGVmaW5pdGlvbnMnKV0KKy8vIAlbL3Byb3RlY3RlZF0KK01BUFNfRU5EX0lOUFVUU19ERUZJTklUSU9OCisKKy8vIFVzZSB0aGUgbWFjcm9zIHRvIGRlY2xhcmUgdGhlIG91dHB1dHMKK01BUFNfQkVHSU5fT1VUUFVUU19ERUZJTklUSU9OKE1BUFNbYy5uYW1lL10pCisJW2xldCBlbHQgOiBFbGVtZW50ID0gYy5vY2xBc1R5cGUoRWxlbWVudCldCisJW2ZvciAocG9ydCA6IFBvcnQgfCBnZXRPdXRwdXRQb3J0c0ZvckVsZW1lbnQoZWx0KSldCisJW2lmIChpc1ByaW1pdGl2ZVR5cGUocG9ydC50eXBlKSldCisJW2dldFJUTWFwc091dHB1dERlZkZvclByaW1pdGl2ZVR5cGUocG9ydC5uYW1lLCBwb3J0LnR5cGUubmFtZSwgcG9ydC51cHBlcikvXQorCVtlbHNlXQorCS8vRGVjbGFyZSBhIHZlY3RvciBvZiBtYXggMCBlbGVtZW50cyBpbiBvcmRlciB0byBiZSBhYmxlIHRvIGhhbmRsZSB0aGUgb3V0cHV0IGJ1ZmZlcnMKKwkvL2FsbG9jYXRpb24gIm1hbnVhbGx5IiBsYXRlciAoaW4gOjpCaXJ0aCgpKS4KKwlNQVBTX09VVFBVVF9VU0VSX1NUUlVDVFVSRVNfVkVDVE9SKCJbcG9ydC5uYW1lL10iLFtwb3J0LnR5cGUubmFtZS9dLCAwKQorCVsvaWZdCisJWy9mb3JdCisJWy9sZXRdCisvLyAJW3Byb3RlY3RlZCAoJ0FkZGl0aW9uYWwgb3V0cHV0IGRlZmluaXRpb25zJyldCisvLyAJWy9wcm90ZWN0ZWRdCitNQVBTX0VORF9PVVRQVVRTX0RFRklOSVRJT04KKworLy8gVXNlIHRoZSBtYWNyb3MgdG8gZGVjbGFyZSB0aGUgcHJvcGVydGllcworTUFQU19CRUdJTl9QUk9QRVJUSUVTX0RFRklOSVRJT04oTUFQU1tjLm5hbWUvXSkKKy8vIAlbcHJvdGVjdGVkICgnQWRkaXRpb25hbCBwcm9wZXJ0eSBkZWZpbml0aW9ucycpXQorLy8gCVsvcHJvdGVjdGVkXQorTUFQU19FTkRfUFJPUEVSVElFU19ERUZJTklUSU9OCisKKy8vIFVzZSB0aGUgbWFjcm9zIHRvIGRlY2xhcmUgdGhlIGFjdGlvbnMKK01BUFNfQkVHSU5fQUNUSU9OU19ERUZJTklUSU9OKE1BUFNbYy5uYW1lL10pCisvLyAJW3Byb3RlY3RlZCAoJ0FkZGl0aW9uYWwgYWN0aW9uIGRlZmluaXRpb25zJyldCisvLyAJWy9wcm90ZWN0ZWRdCitNQVBTX0VORF9BQ1RJT05TX0RFRklOSVRJT04KKworLy8gVXNlIHRoZSBtYWNyb3MgdG8gZGVjbGFyZSB0aGlzIGNvbXBvbmVudCAoW2MubmFtZS9dKSBiZWhhdmlvdXIKK01BUFNfQ09NUE9ORU5UX0RFRklOSVRJT04oTUFQU1tjLm5hbWUvXSwiW2MubmFtZS9dIiwiMS4wIiwxMjgsCisJCQkgIE1BUFM6OlRocmVhZGVkLE1BUFM6OlRocmVhZGVkLAorCQkJICAtMSwgLy8gTmIgb2YgaW5wdXRzLiBMZWF2ZSAtMSB0byB1c2UgdGhlIG51bWJlciBvZiBkZWNsYXJlZCBpbnB1dCBkZWZpbml0aW9ucworCQkJICAtMSwgLy8gTmIgb2Ygb3V0cHV0cy4gTGVhdmUgLTEgdG8gdXNlIHRoZSBudW1iZXIgb2YgZGVjbGFyZWQgb3V0cHV0IGRlZmluaXRpb25zCisJCQkgIC0xLCAvLyBOYiBvZiBwcm9wZXJ0aWVzLiBMZWF2ZSAtMSB0byB1c2UgdGhlIG51bWJlciBvZiBkZWNsYXJlZCBwcm9wZXJ0eSBkZWZpbml0aW9ucworCQkJICAtMSkgLy8gTmIgb2YgYWN0aW9ucy4gTGVhdmUgLTEgdG8gdXNlIHRoZSBudW1iZXIgb2YgZGVjbGFyZWQgYWN0aW9uIGRlZmluaXRpb25zCisKKworLy8gW3Byb3RlY3RlZCAoJ092ZXJsb2FkZWQgbWV0aG9kcyBmcm9tIE1BUFNDb21wb25lbnQgKER5bmFtaWMsIFNldC4uLicpXQorLy8gWy9wcm90ZWN0ZWRdCisKKy8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy8vIElOSVRJQUxJWkFUSU9OIEZVTkNUSU9OLgorLy8gQ0FMTEVEIE9OQ0UgQVQgRElBR1JBTSBFWEVDVVRJT04gU1RBUlQuCisvLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCit2b2lkIE1BUFNbYy5uYW1lL106OkJpcnRoKCkKK3sKKworCVtpZiBnZXRPdXRwdXRQb3J0c0ZvckVsZW1lbnQoYy5vY2xBc1R5cGUoRWxlbWVudCkpLT5zaXplKCkgPiAwXQorCS8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKwkvL091dHB1dCBidWZmZXJzIGFsbG9jYXRpb24gCisJLy9QZXJmb3JtZWQgImJ5IGhhbmQiICh0aGUgY29kZSBpcyBxdWl0ZSB1Z2x5IGJ1dCBpdCBpcworCS8vdGhlIG9ubHkgd2F5IGZvciB0aGUgbW9zdCBnZW5lcmljIGNhc2VzIHdlIGhhdmUgdG8gZGVhbCB3aXRoCisJLy9pbiBSb2JvdE1MKS4KKwkvLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisJCVtmb3IgKHBvcnQgOiBQb3J0IHwgZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50KGMub2NsQXNUeXBlKEVsZW1lbnQpKSldCisJCQlbaWYgKGlzUHJpbWl0aXZlVHlwZShwb3J0LnR5cGUpID0gZmFsc2UpXQorCV9bcG9ydC5uYW1lL11fYnVmZmVycy5DbGVhcigpOworCU1BUFNJT01vbml0b3IgJm1vbml0b3JfW3BvcnQubmFtZS9dPU91dHB1dChbaS0xL10pLk1vbml0b3IoKTsKKwlNQVBTRmFzdElPSGFuZGxlIGl0X1twb3J0Lm5hbWUvXTsKKwlpdF9bcG9ydC5uYW1lL109bW9uaXRvcl9bcG9ydC5uYW1lL10uSW5pdEJlZ2luKCk7CisJd2hpbGUgKGl0X1twb3J0Lm5hbWUvXSkgeworCQlNQVBTSU9FbHQgJklPRWx0X1twb3J0Lm5hbWUvXT1tb25pdG9yX1twb3J0Lm5hbWUvXVsnWycvXWl0X1twb3J0Lm5hbWUvXVsnXScvXTsKKwkJSU9FbHRfW3BvcnQubmFtZS9dLkRhdGEoKSA9ICh2b2lkKikgbmV3IFtwb3J0LnR5cGUubmFtZS9dWydbMV0nL107IC8vVE9ETzogcmVwbGFjZSAxIGJ5IHBvcnQudXBwZXIuCisJCWlmIChJT0VsdF9bcG9ydC5uYW1lL10uRGF0YSgpID09IE5VTEwpCisJCQlFcnJvcigiTm90IGVub3VnaCBtZW1vcnkuIik7CisJCV9bcG9ydC5uYW1lL11fYnVmZmVycy5BcHBlbmQoKFtwb3J0LnR5cGUubmFtZS9dKilJT0VsdF9bcG9ydC5uYW1lL10uRGF0YSgpKTsKKwkJbW9uaXRvcl9bcG9ydC5uYW1lL10uSW5pdE5leHQoaXRfW3BvcnQubmFtZS9dKTsKKwl9CisJCQlbL2lmXQorCQlbL2Zvcl0KKwlbL2lmXQorCVtpZiBnZXRJbnB1dFBvcnRzRm9yRWxlbWVudChjLm9jbEFzVHlwZShFbGVtZW50KSktPnNpemUoKSA+IDBdCisKKwkvL0luaXRpYWxpemUgYSBtZW1iZXIgYXJyYXkgY29udGFpbmluZyBwb2ludGVycyB0byB0aGUgY29tcG9uZW50IGlucHV0cyBmb3IKKwkvL3VzZSBpbiB0aGUgQ29yZSgpIGZ1bmN0aW9uIHdpdGggdGhlIGFzeW5jaHJvbm91cyBTdGFydFJlYWRpbmcuCisJX25iX2lucHV0cyA9IFtnZXRJbnB1dFBvcnRzRm9yRWxlbWVudChjLm9jbEFzVHlwZShFbGVtZW50KSktPnNpemUoKS9dOworCV9pbnB1dHMgPSBuZXcgTUFQU0lucHV0KlsnW19uYl9pbnB1dHNdJy9dOworCWZvciAoaW50IGk9MDsgaTxfbmJfaW5wdXRzOyBpKyspIHsKKwkJX2lucHV0c1snW2ldJy9dID0gJklucHV0KGkpOworCX0KKwlbL2lmXSAKKworLy8gCVtwcm90ZWN0ZWQgKCdVc2VyLXNwZWNpZmljIGluaXRhbGl6YXRpb25zJyldCisvLyAJWy9wcm90ZWN0ZWRdCisKK30KKworLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisvLyBDb3JlKCkgSVMgVEhFIE1BSU4gRVhFQ1VUSU9OIExPT1AgRlVOQ1RJT04uCisvLyBUSEUgT05FIEFORCBPTkxZIEJMT0NLSU5HIENBTEwgSU4gSEVSRSBTSEFMTCBCRSBUSEUgU3RhcnRSZWFkaW5nIGZ1bmN0aW9uLgorLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCit2b2lkIE1BUFNbYy5uYW1lL106OkNvcmUoKSAKK3sKKwlbaWYgZ2V0SW5wdXRQb3J0c0ZvckVsZW1lbnQoYy5vY2xBc1R5cGUoRWxlbWVudCkpLT5zaXplKCkgPiAwXQorCS8vV2l0aG91dCBzcGVjaWZpY2F0aW9uIG9mIHJlYWRpbmcgcG9saWNpZXMsIGxldCdzIGltcGxlbWVudCB0aGUgbW9zdCBnZW5lcmljIGNhc2U6CisJLy9hbiBhc3luY2hyb25vdXMgYmxvY2tpbmcgcmVhZCBvbiBhbGwgdGhlIGlucHV0cy4KKwlpbnQgaW5wdXRfdGhhdF9hbnN3ZXJlZDsKKwlNQVBTSU9FbHQqIGlvZWx0X2luID0gU3RhcnRSZWFkaW5nKF9uYl9pbnB1dHMsIF9pbnB1dHMsICZpbnB1dF90aGF0X2Fuc3dlcmVkKTsKKwlpZiAoaW9lbHRfaW4gPT0gTlVMTCkKKwkJcmV0dXJuOworCisJTUFQU1RpbWVzdGFtcCB0aW1lc3RhbXBfaW4gPSBpb2VsdF9pbi0+VGltZXN0YW1wKCk7CisKKwlzd2l0Y2ggKGlucHV0X3RoYXRfYW5zd2VyZWQpIHsKKwlbZm9yIChwb3J0IDogUG9ydCB8IGdldElucHV0UG9ydHNGb3JFbGVtZW50KGMub2NsQXNUeXBlKEVsZW1lbnQpKSldCisJCWNhc2UgW2ktMS9dOiAvL1dlIHJlY2VpdmVkIGFuIGVsZW1lbnQgZnJvbSBwb3J0IFtwb3J0Lm5hbWUvXS4KKwkJCXsKKwkJCVtnZXROYkVsZW1lbnRzSW5WZWN0b3IocG9ydC50eXBlLm5hbWUsJ2lvZWx0X2luJywnY291bnQnKS9dCisJCQlbZ2V0TUFQU0lPRWx0QWNjZXNzRnVuY3Rpb24ocG9ydC50eXBlLm5hbWUsJ2lvZWx0X2luJywnZGF0YV9pbicpL10KKwkJCVtwb3J0LnR5cGUubmFtZS9dX1JlY2VpdmVkX29uX1twb3J0Lm5hbWUvXV9JblBvcnQoZGF0YV9pbixjb3VudCwgaW9lbHRfaW4tPlRpbWVzdGFtcCgpKTsJCQkKKwkJCX0gCisJCQlicmVhazsKKwlbL2Zvcl0JCisJCWRlZmF1bHQ6CisJCQlFcnJvcigiVW5rbm93biBpbnB1dC4iKTsJCisJfQorLy8gCVtwcm90ZWN0ZWQgKCdDb3JlIHByb2Nlc3NpbmcnKV0KKy8vIAlbL3Byb3RlY3RlZF0KKwlbZWxzZV0KKwkvL1RoZXJlIGFyZSBubyBpbnB1dHMgdG8gcmVhZCBmcm9tIGluIHRoaXMgY29tcG9uZW50LgorCS8vTWFrZSBzdXJlIHlvdSBoYXZlIG9uZSBhbmQgb25seSBibG9ja2luZyBmdW5jdGlvbiAoUmVzdCwgV2FpdCwgTUFQUzo6U2xlZXAsIHNlbGVjdCwgd2hhdGV2ZXIuLi4pCisJLy9pbnNpZGUgQ29yZSgpLgorLy8gCVtwcm90ZWN0ZWQgKCdDb3JlIHByb2Nlc3Npbmcgd2l0aCBubyBpbnB1dHMnKV0KKwlXYWl0NEV2ZW50KGlzRHlpbmdFdmVudCk7IC8vUGF1c2UgdGhlIGN1cnJlbnQgdGhyZWFkIHVudGlsIHNodXRkb3duLgorLy8gCVsvcHJvdGVjdGVkXQorCVsvaWZdCisKK30KKworW2lmIGdldElucHV0UG9ydHNGb3JFbGVtZW50KGMub2NsQXNUeXBlKEVsZW1lbnQpKS0+c2l6ZSgpID4gMF0KKworLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisvLyBJTlBVVCBNRVRIT0RTIENBTExFRCBGUk9NIFRIRSBDb3JlKCkgTUVUSE9EIFdIRU5FVkVSIEEgU0FNUExFIElTIFJFQ0VJVkVEIE9OIEFOIElOUFVUIFBPUlQKKy8vIE5PVEUgVEhBVCBJTiBDT1JFLCBPVEhFUiBTQU1QTElORyBTVFJBVEVHSUVTIENPVUxEIEJFIEFWQUlMQUJFIChTWU5DSFJPTklaRUQsIFRSSUdHRVJFRCwgUkVTQU1QTElORy4uLikKKy8vIEJVVCBBUkUgTk9UIElNUExFTUVOVEVEIFlFVC4KKy8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorCisJW2ZvciAocG9ydCA6IFBvcnQgfCBnZXRJbnB1dFBvcnRzRm9yRWxlbWVudChjLm9jbEFzVHlwZShFbGVtZW50KSkpXQorLy9UaGlzIGNhbGxiYWNrIHdpbGwgYmUgY2FsbGVkIGVhY2ggdGltZSBhIG5ldyBzYW1wbGUgaXMgcmVjZWl2ZWQgb24gdGhlIGNvcnJlc3BvbmRpbmcgaW5wdXQgcG9ydC4KK3ZvaWQgTUFQU1tjLm5hbWUvXTo6W3BvcnQudHlwZS5uYW1lL11fUmVjZWl2ZWRfb25fW3BvcnQubmFtZS9dX0luUG9ydChbcG9ydC50eXBlLm5hbWUvXSogZGF0YV9pbiwgaW50IGNvdW50LCBNQVBTVGltZXN0YW1wIHQpCit7CisvLwlbcHJvdGVjdGVkICgnUHJvY2Vzc2luZyBjb2RlIGZvciBzYW1wbGVzIHJlY2VpdmVkIG9uICcgKyBwb3J0LnR5cGUubmFtZSldCisvLwlbL3Byb3RlY3RlZF0KK30KKwlbL2Zvcl0KK1svaWZdCisKKworW2lmIGdldE91dHB1dFBvcnRzRm9yRWxlbWVudChjLm9jbEFzVHlwZShFbGVtZW50KSktPnNpemUoKSA+IDBdCisvLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy8vIE9VVFBVVCBNRVRIT0RTIFRPIEJFIENBTExFRCBCWSBUSEUgUFJPR1JBTU1FUiBGT1IgRU1JVFRJTkcgQSBTQU1QTEUgT04gQU4gT1VUUFVUIFBPUlQuCisvLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKworCVtmb3IgKHBvcnQgOiBQb3J0IHwgZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50KGMub2NsQXNUeXBlKEVsZW1lbnQpKSldCisvL1RvIGJlIGNvbXBsZXRlZCBieSBwcm9ncmFtbWVyLCB0aGVuIGNhbGxlZCBieSBwcm9ncmFtbWVyIHdoZW5ldmVyIG5lY2Vzc2FyeSBpbiBvcmRlciB0bworLy9vdXRwdXQgYSBkYXRhIHNhbXBsZSBvbiBvdXRwdXQgcG9ydCBbcG9ydC5uYW1lL10KK3ZvaWQgTUFQU1tjLm5hbWUvXTo6T3V0cHV0X1twb3J0Lm5hbWUvXShNQVBTVGltZXN0YW1wIHQpCit7CisJTUFQU0lPRWx0KiBpb2VsdG91dCA9IFN0YXJ0V3JpdGluZyhPdXRwdXQoIltwb3J0Lm5hbWUvXSIpKTsKKworLy8gCVtwcm90ZWN0ZWQgKCdPdXRwdXQgb24gJyArIHBvcnQubmFtZSArICcgaW1wbGVtZW50YXRpb24nKV0KKwlpbnQgY291bnRfW3BvcnQudHlwZS5uYW1lL11fb3V0ID0gMTsgCS8vY2hhbmdlZCBpdCB0byB0aGUgbnVtYmVyIG9mIHNhbXBsZXMgdG8gd3JpdGUgaW4gb3V0cHV0IE1BUFNJT0VsdCAKKwkJCQkJCQkJCQkJLy8oYnV0IG5ldmVyIG1vcmUgdGhhbiB0aGUgbWF4IHZlY3RvciBzaXplIGFsbG9jYXRlZCBvbiB0aGUgb3V0cHV0KS4KKwlbZ2V0TUFQU0lPRWx0QWNjZXNzRnVuY3Rpb24ocG9ydC50eXBlLm5hbWUsJ2lvZWx0b3V0JywnZGF0YV9vdXQnKS9dCisKKwkvL0ZpbGwgaW4gZGF0YV9vdXQgaGVyZS4KKwkvLy4uLi4KKworCVtpZiAoaXNQcmltaXRpdmVUeXBlKHBvcnQudHlwZSkgPSBmYWxzZSldCQorCWlvZWx0b3V0LT5WZWN0b3JTaXplKCkgPSAgY291bnRfW3BvcnQudHlwZS5uYW1lL11fb3V0ICogc2l6ZW9mKFtwb3J0LnR5cGUubmFtZS9dKTsgLy9Gb3Igbm9uLXN0YW5kYXJkIGRhdGF0eXBlcywgYnkgY29udmVudGlvbiwgIAorCVtlbHNlXQorCWlvZWx0b3V0LT5WZWN0b3JTaXplKCkgPSAgY291bnRfW3BvcnQudHlwZS5uYW1lL11fb3V0OyAvL051bWJlciBvZiBlbGVtZW50cyBpbiBvdXRwdXQgdmVjdG9yIChub3QgbnVtYmVyIG9mIGJ5dGVzKS4KKwlbL2lmXQorLy8JWy9wcm90ZWN0ZWRdCisKKwlpb2VsdG91dC0+VGltZXN0YW1wKCkgPSB0OwkKKwlTdG9wV3JpdGluZyhpb2VsdG91dCk7Cit9CisJWy9mb3JdCitbL2lmXQorCisvLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy8vIFJFTEVBU0UgRlVOQ1RJT04uCisvLyBDQUxMRUQgT05DRSBXSEVOIERJQUdSQU1TIFNUT1BTIEVYRUNVVElORyBPUiBBRlRFUiBBIENBTEwgVE8gRXJyb3IoIi4uLiIpOyBJTiBCaXJ0aCBPUiBDb3JlLgorLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCit2b2lkIE1BUFNbYy5uYW1lL106OkRlYXRoKCkKK3sKKy8vIAlbcHJvdGVjdGVkICgnRGVhdGggaW1wbGVtZW50YXRpb24nKV0KKy8vIAlbL3Byb3RlY3RlZF0KKworfQorCitbaWYgZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50KGMub2NsQXNUeXBlKEVsZW1lbnQpKS0+c2l6ZSgpID4gMF0KKy8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLy8gT1ZFUkxPQURFRCBNRVRIT0Q6IFdJTEwgQkUgQ0FMTEVEIEFUIERJQUdSQU0gRVhFQ1VUSU9OIFNIVVRET1dOIE9OQ0UgQUxMIFRIRSBDT01QT05FTlRTIEhBVkUgR09ORSBUSFJPVUdIIERlYXRoKCkuCisvLyBUSElTIElTIFRIRSBQTEFDRSBXSEVSRSBUTyBSRUxFQVNFIEJVRkZFUlMgVEhBVCBXRVJFIERZTkFNSUNBTExZIEFMTE9DQVRFRCBCWSBUSEUgUFJPR1JBTU1FUiBJTiBCSVJUSC4gCisvLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKK3ZvaWQgTUFQU1tjLm5hbWUvXTo6RnJlZUJ1ZmZlcnMoKQoreworCS8vTGV0J3MgcmVsZWFzZSB0aGUgbWVtb3J5IHdlIGFsbG9jYXRlZCBvbiB0aGUgb3V0cHV0IGJ1ZmZlcnMuCisJCVtsZXQgZWx0IDogRWxlbWVudCA9IGMub2NsQXNUeXBlKEVsZW1lbnQpXQkKKwkJW2ZvciAocG9ydCA6IFBvcnQgfCBnZXRPdXRwdXRQb3J0c0ZvckVsZW1lbnQoZWx0KSldCisJCQlbaWYgKGlzUHJpbWl0aXZlVHlwZShwb3J0LnR5cGUpID0gZmFsc2UpXQorCU1BUFNMaXN0SXRlcmF0b3IgaXRfW3BvcnQubmFtZS9dOworCU1BUFNGb3JhbGxJdGVtcyhpdF9bcG9ydC5uYW1lL10sX1twb3J0Lm5hbWUvXV9idWZmZXJzKSB7CisJCWRlbGV0ZSBbJ1tdJy9dIF9bcG9ydC5uYW1lL11fYnVmZmVyc1snWycvXWl0X1twb3J0Lm5hbWUvXSBbJ10nL107CisJfQorCV9bcG9ydC5uYW1lL11fYnVmZmVycy5DbGVhcigpOworCQkJWy9pZl0KKwkJWy9mb3JdCisJCVsvbGV0XQorCQorCU1BUFNDb21wb25lbnQ6OkZyZWVCdWZmZXJzKCk7Cit9CitbL2lmXQorCisvLyBbcHJvdGVjdGVkICgnQWRkaXRpb25hbCBtZXRob2RzIGZvciBNQVBTJyArIGMubmFtZSldCisvLyBbL3Byb3RlY3RlZF0KKworWy9maWxlXQorWy90ZW1wbGF0ZV0KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX2NvbXBvbmVudF9ocHAuZW10bCBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX2NvbXBvbmVudF9ocHAuZW10bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NWRjOGJiCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfY29tcG9uZW50X2hwcC5lbXRsCkBAIC0wLDAgKzEsMTI0NSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzx4bWk6WE1JIHhtaTp2ZXJzaW9uPSIyLjAiIHhtbG5zOnhtaT0iaHR0cDovL3d3dy5vbWcub3JnL1hNSSIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgeG1sbnM6ZWNvcmU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUiIHhtbG5zOm10bD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9hY2NlbGVvL210bC8zLjAiIHhtbG5zOm9jbC5lY29yZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvRWNvcmUiPgorICA8bXRsOk1vZHVsZSBuYW1lPSJnZW5lcmF0ZV9ydG1hcHNfY29tcG9uZW50X2hwcCIgbnNVUkk9Im9yZzo6ZWNsaXBzZTo6cGFweXJ1czo6cm9ib3RtbDo6Z2VuZXJhdG9yczo6aW50ZW1wb3JhOjpydG1hcHM6OmZpbGVzOjpnZW5lcmF0ZV9ydG1hcHNfY29tcG9uZW50X2hwcCIgc3RhcnRIZWFkZXJQb3NpdGlvbj0iNzczIiBlbmRIZWFkZXJQb3NpdGlvbj0iOTc1Ij4KKyAgICA8aW5wdXQ+CisgICAgICA8dGFrZXNUeXBlc0Zyb20gaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvIi8+CisgICAgPC9pbnB1dD4KKyAgICA8aW5wdXQ+CisgICAgICA8dGFrZXNUeXBlc0Zyb20gaHJlZj0iaHR0cDovL1BhcHlydXMvUm9ib3RNTC8xIy8iLz4KKyAgICA8L2lucHV0PgorICAgIDxpbXBvcnRzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wIi8+CisgICAgPGltcG9ydHMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuZW10bCMvMCIvPgorICAgIDxpbXBvcnRzIGhyZWY9Ii4uL1JUTWFwc0RhdGFUeXBlUXVlcmllcy5lbXRsIy8wIi8+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlRlbXBsYXRlIiBuYW1lPSJnZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcCIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6RmlsZUJsb2NrIiBvcGVuTW9kZT0iT3ZlcldyaXRlIj4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiNpZm5kZWYgX19NQVBTXyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYyIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvYyI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJfSFBQX18mI3hEOyYjeEE7I2RlZmluZSBfX01BUFNfIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC9jIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il9IUFBfXyYjeEQ7JiN4QTsmI3hEOyYjeEE7I2luY2x1ZGUgJnF1b3Q7Ii8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJyb290X21vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC9yb290X21vZGVsIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii8iLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InJvb3RfbW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwL3Jvb3RfbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iX2RhdGF0eXBlc19hbGwuaCZxdW90OyYjeEQ7JiN4QTsjaW5jbHVkZSAmcXVvdDtyb2JvdG1sL21hcHNfcm9ib3RtbF9kYXRhdHlwZV9maWx0ZXJzLmgmcXVvdDsmI3hEOyYjeEE7I2luY2x1ZGUgJnF1b3Q7Ii8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJyb290X21vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC9yb290X21vZGVsIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii8iLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InJvb3RfbW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwL3Jvb3RfbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iX2RhdGF0eXBlX2ZpbHRlcnMuaCZxdW90OyYjeEQ7JiN4QTsjaW5jbHVkZSAmcXVvdDttYXBzLmhwcCZxdW90OyYjeEQ7JiN4QTsmI3hEOyYjeEE7Ly8gIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6UHJvdGVjdGVkQXJlYUJsb2NrIj4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOy8vICIvPgorICAgICAgICAgIDxtYXJrZXIgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IkFkZGl0aW9uYWwgaW5jbHVkZXMiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDwvbWFya2VyPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7JiN4RDsmI3hBOy8vICIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOlByb3RlY3RlZEFyZWFCbG9jayI+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsjZGVmaW5lIERFRkFVTFRfT1VUUFVUX01BWF9WRUNUT1JfU0laRSAxMDI0JiN4RDsmI3hBOy8vICIvPgorICAgICAgICAgIDxtYXJrZXIgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IkRlZmF1bHQgbWF4IG91dHB1dCB2ZWN0b3Igc2l6ZSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPC9tYXJrZXI+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsmI3hEOyYjeEE7Y2xhc3MgTUFQUyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYyIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvYyI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIgOiBwdWJsaWMgTUFQU0NvbXBvbmVudCYjeEQ7JiN4QTt7JiN4RDsmI3hBOyYjeDk7Ly8gVXNlIHN0YW5kYXJkIGhlYWRlciBkZWZpbml0aW9uIG1hY3JvJiN4RDsmI3hBOyYjeDk7TUFQU19DT01QT05FTlRfU1RBTkRBUkRfSEVBREVSX0NPREUoTUFQUyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYyIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvYyI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIpJiN4RDsmI3hBOy8vICYjeDk7Ii8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6UHJvdGVjdGVkQXJlYUJsb2NrIj4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOy8vICYjeDk7Ii8+CisgICAgICAgICAgPG1hcmtlciB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iT3ZlcmxvYWRlZCBtZXRob2RzIGRlY2xhcmF0aW9ucyAoRHluYW1pYywgU2V0Li4uKSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPC9tYXJrZXI+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTtwcml2YXRlIDomI3hEOyYjeEE7JiN4OTsvLyBQbGFjZSBoZXJlIHlvdXIgc3BlY2lmaWMgbWV0aG9kcyBhbmQgYXR0cmlidXRlcyYjeEQ7JiN4QTsiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpMZXRCbG9jayI+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpJZkJsb2NrIj4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5O2ludCAmI3g5OyYjeDk7X25iX2lucHV0czsmI3hEOyYjeEE7JiN4OTtNQVBTSW5wdXQqKiBfaW5wdXRzOyYjeEQ7JiN4QTsmI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZvckJsb2NrIj4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeDk7dm9pZCAiLz4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZSIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS8lLjEvcG9ydCI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGVkRWxlbWVudC90eXBlIi8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJfUmVjZWl2ZWRfb25fIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS8lLjEvcG9ydCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il9JblBvcnQoIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icG9ydCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjIzLyUvJS4xL3BvcnQiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlZEVsZW1lbnQvdHlwZSIvPgorICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iKiBkYXRhX2luLCBpbnQgY291bnQsIE1BUFNUaW1lc3RhbXAgdCk7JiN4RDsmI3hBOyIvPgorICAgICAgICAgICAgICA8bG9vcFZhcmlhYmxlIG5hbWU9InBvcnQiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICA8L2xvb3BWYXJpYWJsZT4KKyAgICAgICAgICAgICAgPGl0ZXJTZXQgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iIGVUeXBlPSIvMjEvU2VxdWVuY2UoUG9ydCkiPgorICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldElucHV0UG9ydHNGb3JFbGVtZW50Ii8+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjIzL2VsdCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICA8L2l0ZXJTZXQ+CisgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICA8aWZFeHByIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iIGVUeXBlPSIvMjEvU2VxdWVuY2UoUG9ydCkiPgorICAgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0SW5wdXRQb3J0c0ZvckVsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJlbHQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy9lbHQiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU2VxdWVuY2UoVClfQ2xhc3Mvc2l6ZSIvPgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6SW50ZWdlckxpdGVyYWxFeHAiIGludGVnZXJTeW1ib2w9IjAiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXJfQ2xhc3MvJTNFIi8+CisgICAgICAgICAgICA8L2lmRXhwcj4KKyAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeDk7JiN4RDsmI3hBOyYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZvckJsb2NrIj4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6SWZCbG9jayI+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5O01BUFNMaXN0Jmx0OyIvPgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlIi8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InBvcnQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lLjIvcG9ydCI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGVkRWxlbWVudC90eXBlIi8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIqPiBfIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS4yL3BvcnQiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJfYnVmZmVyczsmI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICAgIDxpZkV4cHIgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAvaXNQcmltaXRpdmVUeXBlIi8+CisgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS4yL3BvcnQiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlZEVsZW1lbnQvdHlwZSIvPgorICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpCb29sZWFuTGl0ZXJhbEV4cCIgYm9vbGVhblN5bWJvbD0iZmFsc2UiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW5fQ2xhc3MvPSIvPgorICAgICAgICAgICAgICA8L2lmRXhwcj4KKyAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgIDxsb29wVmFyaWFibGUgbmFtZT0icG9ydCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgPC9sb29wVmFyaWFibGU+CisgICAgICAgICAgICA8aXRlclNldCB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiIgZVR5cGU9Ii8yMS9TZXF1ZW5jZShQb3J0KSI+CisgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldE91dHB1dFBvcnRzRm9yRWxlbWVudCIvPgorICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZWx0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvZWx0Ij4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgIDwvaXRlclNldD4KKyAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZvckJsb2NrIj4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5OyYjeDk7dm9pZCBPdXRwdXRfIi8+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS40L3BvcnQiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IihNQVBTVGltZXN0YW1wIHQpOyYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgIDxsb29wVmFyaWFibGUgbmFtZT0icG9ydCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgPC9sb29wVmFyaWFibGU+CisgICAgICAgICAgICA8aXRlclNldCB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiIgZVR5cGU9Ii8yMS9TZXF1ZW5jZShQb3J0KSI+CisgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldE91dHB1dFBvcnRzRm9yRWxlbWVudCIvPgorICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZWx0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvZWx0Ij4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgIDwvaXRlclNldD4KKyAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOklmQmxvY2siPgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeDk7Ly9BcyB3ZSBtYXkgYWxsb2NhdGUgb3V0cHV0IGJ1ZmZlcnMgJnF1b3Q7YnkgaGFuZCZxdW90Oywgd2UgbmVlZCB0byBoYW5kbGUgZGUtYWxsb2NhdGlvbiBhcyB3ZWxsJiN4RDsmI3hBOyYjeDk7Ly9zbyB3ZSBuZWVkIHRvIG92ZXJsb2FkIHRoZSBGcmVlQnVmZmVycyBtZXRob2QuJiN4RDsmI3hBOyYjeDk7dm9pZCBGcmVlQnVmZmVycygpOyYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgIDxpZkV4cHIgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiIgZVR5cGU9Ii8yMS9TZXF1ZW5jZShQb3J0KSI+CisgICAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRPdXRwdXRQb3J0c0ZvckVsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJlbHQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy9lbHQiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU2VxdWVuY2UoVClfQ2xhc3Mvc2l6ZSIvPgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6SW50ZWdlckxpdGVyYWxFeHAiIGludGVnZXJTeW1ib2w9IjAiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXJfQ2xhc3MvJTNFIi8+CisgICAgICAgICAgICA8L2lmRXhwcj4KKyAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgPGxldFZhcmlhYmxlIG5hbWU9ImVsdCI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgIDxpbml0RXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC9jIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlRXhwIiBlVHlwZT0iLzE5L0VsZW1lbnQiPgorICAgICAgICAgICAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55X0NsYXNzL29jbEFzVHlwZSIvPgorICAgICAgICAgICAgPC9pbml0RXhwcmVzc2lvbj4KKyAgICAgICAgICA8L2xldFZhcmlhYmxlPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7Ly8gJiN4OTsiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpQcm90ZWN0ZWRBcmVhQmxvY2siPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7Ly8gJiN4OTsiLz4KKyAgICAgICAgICA8bWFya2VyIHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJBZGRpdGlvbmFsIG1lbWJlcnMgYW5kIG1ldGhvZHMiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDwvbWFya2VyPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7fTsmI3hEOyYjeEE7JiN4RDsmI3hBOyNlbmRpZiAvL19fTUFQU18iLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwL2MiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iX0hQUF9fJiN4RDsmI3hBOyIvPgorICAgICAgICA8ZmlsZVVybCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvU3RyaW5nX0NsYXNzLysiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9InVzZXJfc2RrLyI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icm9vdF9tb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvcm9vdF9tb2RlbCI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii51L2xvY2FsX2ludGVyZmFjZXMvbWFwc18iPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwL2MiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIuaCI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPC9maWxlVXJsPgorICAgICAgICA8Y2hhcnNldCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iVVRGLTgiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9jaGFyc2V0PgorICAgICAgPC9ib2R5PgorICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsiLz4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iYyI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJyb290X21vZGVsIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgIDwvbXRsOk1vZHVsZT4KKyAgPGVjb3JlOkVQYWNrYWdlIG5hbWU9ImFkZGl0aW9ucyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTdHJpbmdfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9IisiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIG5vbi1zdGFuZGFyZCIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJvdGhlciI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkludGVnZXJfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlJlYWxfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9SZWFsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkVPYmplY3RfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InJvb3RfbW9kZWwiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8zL1NlcXVlbmNlKFBvcnQpIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbHQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRJbnB1dFBvcnRzRm9yRWxlbWVudCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldElucHV0UG9ydHNGb3JFbGVtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8zL1NlcXVlbmNlKFBvcnQpIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbHQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc1ByaW1pdGl2ZVR5cGUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5lbXRsIy8wL2lzUHJpbWl0aXZlVHlwZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImVsdCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iT2NsQW55X0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNvbGxlY3Rpb24oVClfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Db2xsZWN0aW9uKFQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlNlcXVlbmNlKFQpX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU2VxdWVuY2UoVCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iT3JkZXJlZFNldChUKV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09yZGVyZWRTZXQoVCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ2xhc3NfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb25uZWN0b3JfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRWxlbWVudF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUGFyYW1ldGVyX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUGFyYW1ldGVyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik1vZGVsX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ2xhc3NpZmllcl9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzaWZpZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUG9ydF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRGF0YVR5cGVfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9EYXRhVHlwZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgIDwvZWNvcmU6RVBhY2thZ2U+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxlY29yZTpFUGFja2FnZSBuYW1lPSJ0eXBlcyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVUeXBlIiBuYW1lPSJFbGVtZW50Ij4KKyAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgPC9lY29yZTpFUGFja2FnZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8ZWNvcmU6RVBhY2thZ2UgbmFtZT0iY29sbGVjdGlvbnMiPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIG5hbWU9IlNlcXVlbmNlKFBvcnQpIiBpbnN0YW5jZUNsYXNzTmFtZT0iamF2YS51dGlsLkxpc3QiPgorICAgICAgPGVsZW1lbnRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgIDwvZWNvcmU6RVBhY2thZ2U+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9ImkiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0iaSI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0iaSI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8ZWNvcmU6RUFubm90YXRpb24gc291cmNlPSJwb3NpdGlvbnMiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzA3MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEyNDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzA1NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTM1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMzY1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyOCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEzNjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTM3MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjEvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTM2NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMzY3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTM3NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMzk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyOCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEzOTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQwNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjMvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTM5OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMzk5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTQwNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNDI2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyOSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0MjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQ0MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS41L3Jvb3RfbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0MjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS42Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNDQ0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE0NDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjMxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0NDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQ2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS43L3Jvb3RfbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0NDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQ1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS44Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNDYzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE1NDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjMxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjkiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE1NDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTU2MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS45L3Jvb3RfbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE1NDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTU1NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4xMCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTU2MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNTYzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzMyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4xMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTU2NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNTc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjExL3Jvb3RfbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE1NjQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTU3NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4xMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTU4MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNjI5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzMyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4xMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTYyOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNjgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzNiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4xMy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNjY0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE2NjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjEzLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTY0MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNjYyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjE0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNjgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE2ODgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjE1Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNjg4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE3OTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjE1LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE3MzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTc4NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMTUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNzAwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE3MzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMTYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE3OTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTgxMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMTciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4MTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTgxNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4xNy9jIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxODExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4MTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMTgiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4MTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTkzMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMTkiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE5MzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTkzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4xOS9jIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTMxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5MzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE5MzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTk0NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE5NDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjAyOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjEvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjAxMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMDE3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE5NTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjAwOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjAyOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMDk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0OSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjA5NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyOTM3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1MSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMTQwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI0MTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjUyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjIzLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjE5MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1MiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjIzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNDExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1NiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lLyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMjg5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIyOTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjU3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjIzLyUvJS4xLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjI5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzEwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjIzLyUvJS4xLyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMjk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIzMDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS8lLjEvJS4xLyUvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjI5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzAwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjIzLyUvJS4xLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjMxMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzI1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lLyUuMS8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIzMjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjMzNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lLyUuMS8lLjMvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjMyNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzMwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjIzLyUvJS4xLyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjMzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lLyUuMS8lLjUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIzNDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjM2MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lLyUuMS8lLjUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjM0NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzU1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjIzLyUvJS4xLyUuNS8lL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIzNDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjM1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lLyUuMS8lLjYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIzNjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjQwMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS8lLjEvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjI0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjU0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1NiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lLyUuMS8lLjciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyNTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjI4NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lLyUuMS8lLjcvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMjgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIyODQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxNDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjE4NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lLyUuMi8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMTQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIxODEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjYwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS8lLjIvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMTQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIxNzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjYxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS8lLjIvJS8lL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjE2OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjIzLyUvJS4yLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjE4NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTg1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjIzLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjQyMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNDI2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2MCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI0MjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjU5NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjY1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS4yLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI0ODIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjU4NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjY2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS4yLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjUyNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2NCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lLjIvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI1MzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjU1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lLjIvJS8lLjEvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjUzNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjIzLyUuMi8lLyUuMS8lL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI1MzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjU0MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lLjIvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI1NTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjU1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjcxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS4yLyUvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNTU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI1NjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjcyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS4yLyUvJS4zL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI1NTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjU2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lLjIvJS8lLjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI1NjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjU3OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjc0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS4yLyUvJS41Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNDg2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI1MjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjc1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS4yLyUvJS41LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI0ODciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjUxMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lLjIvJS8lLjUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNTAzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI1MTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjc3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS4yLyUvJS41LyUvJS9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNTAzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI1MDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjc4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS4yLyUvJS41LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjUxNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjIzLyUuMi9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNDMzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI0NDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjYyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjIzLyUuMi8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI0NDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjQ3NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lLjIvJS4xL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjQ3MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNDc1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjIzLyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjU5NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTk5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lLjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI2MDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjcwNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjg0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS40LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI2NTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjY2NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjg1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS40LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjY2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjc3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjIzLyUuNC8lLjEvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjY2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjIzLyUuNC8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI2NzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjY5OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjg4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS40L3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI2MDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjYxNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjg5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS40LyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjYyMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjIzLyUuNC8lLjMvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNjQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI2NDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjkxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS41Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNzA4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI3MTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjcxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjIzLyUuNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjcxMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyOTI5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3MiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lLjYvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjc2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyOTIzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3MyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lLjYvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNzE1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI3NTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjk1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS42LyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNzE2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI3NTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjk2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvJS42LyUuMS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI3MTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjc0NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lLjYvJS4xLyUvJS9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI3NDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjc0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy8lLjYvJS4xLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjc1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNzU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjIzL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjEwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTM2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1MSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTAwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvZWx0LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxMTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjEzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTAxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjMvZWx0LyUvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjExNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTE4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yMy9lbHQvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMTI5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIxMzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjI0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyOTM5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI5NDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijc4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjk0NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMDA5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3OSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTA1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjk5MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyOTk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI4MCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTA2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyOTU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI5ODkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjI2Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMDA5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMwMzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjgxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yNyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzAzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMDQwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yNy9jIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMDM0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMwMzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjI4Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMDQyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMwNTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjgzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yOSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTI1NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMzMwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yOS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjU1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEzMjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjI5LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTI1NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMzE0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yOS8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTI1NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yOS8lLyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjU1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEyNjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjI5LyUvJS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTI2OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yOS8lLyUvJS8lLjEvcm9vdF9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTI2OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwLyUvJS4yOS8lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjg3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEzMTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjI5LyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMzE3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEzMjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjI5LyUvJS4xL2MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEzMTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTMxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTIxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcC8lLyUuMjkvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMzI2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEzMzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS8lLjMwIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMzM5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEzNDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMDU5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMwNjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijg1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwL2MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEyMTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTIyNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAvcm9vdF9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTIyNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjQ0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2Vjb3JlOkVBbm5vdGF0aW9uPgorPC94bWk6WE1JPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfY29tcG9uZW50X2hwcC5tdGwgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc19jb21wb25lbnRfaHBwLm10bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lZTc3MDUxCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfY29tcG9uZW50X2hwcC5tdGwKQEAgLTAsMCArMSw4NiBAQAorW2NvbW1lbnQgZW5jb2RpbmcgPSBVVEYtOCAvXQorW2NvbW1lbnRdCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBJTlRFTVBPUkEgUy5BLgorICoKKyAqIFRoaXMgc29mdHdhcmUgaXMgYSBjb21wdXRlciBwcm9ncmFtIHdob3NlIHB1cnBvc2UgaXMgdG8gdHJhbnNmb3JtIFJvYm90TUwgbW9kZWxzCisgKiBpbnRvIFJUTWFwcyBkaWFncmFtcyBhbmQgUlRNYXBzIGNvbXBvbmVudHMgdmlhIHNvdXJjZSBjb2RlIGdlbmVyYXRpb24gdGVjaG5pcXVlcy4KKyAqIAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgTmljb2xhcyBEVSBMQUMgKElOVEVNUE9SQSkgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCitbL2NvbW1lbnRdCitbbW9kdWxlIGdlbmVyYXRlX3J0bWFwc19jb21wb25lbnRfaHBwKCdodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMy4wLjAvVU1MJywgJ2h0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMScpXQorCitbaW1wb3J0IG9yZzo6ZWNsaXBzZTo6cGFweXJ1czo6cm9ib3RtbDo6Z2VuZXJhdG9yczo6Y29tbW9uOjptbXF1ZXJpZXM6OkFyY2hpdGVjdHVyZVF1ZXJpZXMgL10KK1tpbXBvcnQgb3JnOjplY2xpcHNlOjpwYXB5cnVzOjpyb2JvdG1sOjpnZW5lcmF0b3JzOjpjb21tb246Om1tcXVlcmllczo6RGF0YVR5cGVRdWVyaWVzIC9dCitbaW1wb3J0IG9yZzo6ZWNsaXBzZTo6cGFweXJ1czo6cm9ib3RtbDo6Z2VuZXJhdG9yczo6aW50ZW1wb3JhOjpydG1hcHM6OlJUTWFwc0RhdGFUeXBlUXVlcmllcyAvXQorCisKK1t0ZW1wbGF0ZSBwdWJsaWMgZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAoYyA6IENsYXNzLCByb290X21vZGVsIDogTW9kZWwpXQorW2ZpbGUgKCd1c2VyX3Nkay8nICsgcm9vdF9tb2RlbC5uYW1lICsgJy51L2xvY2FsX2ludGVyZmFjZXMvbWFwc18nICsgYy5uYW1lICsgJy5oJywgZmFsc2UsICdVVEYtOCcpXQorI2lmbmRlZiBfX01BUFNfW2MubmFtZS9dX0hQUF9fCisjZGVmaW5lIF9fTUFQU19bYy5uYW1lL11fSFBQX18KKworI2luY2x1ZGUgIltyb290X21vZGVsLm5hbWUvXS9bcm9vdF9tb2RlbC5uYW1lL11fZGF0YXR5cGVzX2FsbC5oIgorI2luY2x1ZGUgInJvYm90bWwvbWFwc19yb2JvdG1sX2RhdGF0eXBlX2ZpbHRlcnMuaCIKKyNpbmNsdWRlICJbcm9vdF9tb2RlbC5uYW1lL10vW3Jvb3RfbW9kZWwubmFtZS9dX2RhdGF0eXBlX2ZpbHRlcnMuaCIKKyNpbmNsdWRlICJtYXBzLmhwcCIKKworLy8gW3Byb3RlY3RlZCAoJ0FkZGl0aW9uYWwgaW5jbHVkZXMnKV0KKy8vIFsvcHJvdGVjdGVkXQorCisvLyBbcHJvdGVjdGVkICgnRGVmYXVsdCBtYXggb3V0cHV0IHZlY3RvciBzaXplJyldCisjZGVmaW5lIERFRkFVTFRfT1VUUFVUX01BWF9WRUNUT1JfU0laRSAxMDI0CisvLyBbL3Byb3RlY3RlZF0KKworY2xhc3MgTUFQU1tjLm5hbWUvXSA6IHB1YmxpYyBNQVBTQ29tcG9uZW50Cit7CisJLy8gVXNlIHN0YW5kYXJkIGhlYWRlciBkZWZpbml0aW9uIG1hY3JvCisJTUFQU19DT01QT05FTlRfU1RBTkRBUkRfSEVBREVSX0NPREUoTUFQU1tjLm5hbWUvXSkKKy8vIAlbcHJvdGVjdGVkICgnT3ZlcmxvYWRlZCBtZXRob2RzIGRlY2xhcmF0aW9ucyAoRHluYW1pYywgU2V0Li4uKScpXQorLy8gCVsvcHJvdGVjdGVkXQorcHJpdmF0ZSA6CisJLy8gUGxhY2UgaGVyZSB5b3VyIHNwZWNpZmljIG1ldGhvZHMgYW5kIGF0dHJpYnV0ZXMKK1tsZXQgZWx0IDogRWxlbWVudCA9IGMub2NsQXNUeXBlKEVsZW1lbnQpXQorCVtpZiAoZ2V0SW5wdXRQb3J0c0ZvckVsZW1lbnQoZWx0KS0+c2l6ZSgpID4gMCldCQorCWludCAJCV9uYl9pbnB1dHM7CisJTUFQU0lucHV0KiogX2lucHV0czsKKworCQlbZm9yIChwb3J0IDogUG9ydCB8IGdldElucHV0UG9ydHNGb3JFbGVtZW50KGVsdCkpXQorCXZvaWQgW3BvcnQudHlwZS5uYW1lL11fUmVjZWl2ZWRfb25fW3BvcnQubmFtZS9dX0luUG9ydChbcG9ydC50eXBlLm5hbWUvXSogZGF0YV9pbiwgaW50IGNvdW50LCBNQVBTVGltZXN0YW1wIHQpOworCQlbL2Zvcl0KKwlbL2lmXQorCQorCisJW2ZvciAocG9ydCA6IFBvcnQgfCBnZXRPdXRwdXRQb3J0c0ZvckVsZW1lbnQoZWx0KSldCisJCVtpZiAoaXNQcmltaXRpdmVUeXBlKHBvcnQudHlwZSkgPSBmYWxzZSldCisJTUFQU0xpc3Q8W3BvcnQudHlwZS5uYW1lL10qPiBfW3BvcnQubmFtZS9dX2J1ZmZlcnM7CisJCVsvaWZdCisJWy9mb3JdCisKKwlbZm9yIChwb3J0IDogUG9ydCB8IGdldE91dHB1dFBvcnRzRm9yRWxlbWVudChlbHQpKV0KKwkJdm9pZCBPdXRwdXRfW3BvcnQubmFtZS9dKE1BUFNUaW1lc3RhbXAgdCk7CisJWy9mb3JdCisKKwlbaWYgKGdldE91dHB1dFBvcnRzRm9yRWxlbWVudChlbHQpLT5zaXplKCkgPiAwKV0KKwkvL0FzIHdlIG1heSBhbGxvY2F0ZSBvdXRwdXQgYnVmZmVycyAiYnkgaGFuZCIsIHdlIG5lZWQgdG8gaGFuZGxlIGRlLWFsbG9jYXRpb24gYXMgd2VsbAorCS8vc28gd2UgbmVlZCB0byBvdmVybG9hZCB0aGUgRnJlZUJ1ZmZlcnMgbWV0aG9kLgorCXZvaWQgRnJlZUJ1ZmZlcnMoKTsKKwlbL2lmXQorWy9sZXRdCisKKy8vIAlbcHJvdGVjdGVkICgnQWRkaXRpb25hbCBtZW1iZXJzIGFuZCBtZXRob2RzJyldCisvLyAJWy9wcm90ZWN0ZWRdCit9OworCisjZW5kaWYgLy9fX01BUFNfW2MubmFtZS9dX0hQUF9fCitbL2ZpbGVdCisKK1svdGVtcGxhdGVdCmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc19kaWFncmFtX3J0ZC5lbXRsIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfZGlhZ3JhbV9ydGQuZW10bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNDM0ZThiCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfZGlhZ3JhbV9ydGQuZW10bApAQCAtMCwwICsxLDMzMTUgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8eG1pOlhNSSB4bWk6dmVyc2lvbj0iMi4wIiB4bWxuczp4bWk9Imh0dHA6Ly93d3cub21nLm9yZy9YTUkiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zOmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIiB4bWxuczptdGw9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvYWNjZWxlby9tdGwvMy4wIiB4bWxuczpvY2wuZWNvcmU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL0Vjb3JlIj4KKyAgPG10bDpNb2R1bGUgbmFtZT0iZ2VuZXJhdGVfcnRtYXBzX2RpYWdyYW1fcnRkIiBuc1VSST0ib3JnOjplY2xpcHNlOjpwYXB5cnVzOjpyb2JvdG1sOjpnZW5lcmF0b3JzOjppbnRlbXBvcmE6OnJ0bWFwczo6ZmlsZXM6OmdlbmVyYXRlX3J0bWFwc19kaWFncmFtX3J0ZCIgc3RhcnRIZWFkZXJQb3NpdGlvbj0iNzczIiBlbmRIZWFkZXJQb3NpdGlvbj0iOTY4Ij4KKyAgICA8aW5wdXQ+CisgICAgICA8dGFrZXNUeXBlc0Zyb20gaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvIi8+CisgICAgPC9pbnB1dD4KKyAgICA8aW5wdXQ+CisgICAgICA8dGFrZXNUeXBlc0Zyb20gaHJlZj0iaHR0cDovL1BhcHlydXMvUm9ib3RNTC8xIy8iLz4KKyAgICA8L2lucHV0PgorICAgIDxpbXBvcnRzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuZW10bCMvMCIvPgorICAgIDxpbXBvcnRzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wIi8+CisgICAgPGltcG9ydHMgaHJlZj0iLi4vUlRNYXBzRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAiLz4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6VGVtcGxhdGUiIG5hbWU9ImdlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURCIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxpbml0PgorICAgICAgICA8dmFyaWFibGUgbmFtZT0idmVydF9zcGFjaW5nIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgIDxpbml0RXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOkludGVnZXJMaXRlcmFsRXhwIiBpbnRlZ2VyU3ltYm9sPSI1MCI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgIDwvaW5pdEV4cHJlc3Npb24+CisgICAgICAgIDwvdmFyaWFibGU+CisgICAgICAgIDx2YXJpYWJsZSBuYW1lPSJob3Jfc3BhY2luZyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICA8aW5pdEV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpJbnRlZ2VyTGl0ZXJhbEV4cCIgaW50ZWdlclN5bWJvbD0iNTAiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICA8L2luaXRFeHByZXNzaW9uPgorICAgICAgICA8L3ZhcmlhYmxlPgorICAgICAgPC9pbml0PgorICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsmI3hEOyYjeEE7Ii8+CisgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZpbGVCbG9jayIgb3Blbk1vZGU9Ik92ZXJXcml0ZSI+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImbHQ7P3htbCB2ZXJzaW9uPSZxdW90OzEuMCZxdW90OyBlbmNvZGluZz0mcXVvdDtVVEYtOCZxdW90OyBzdGFuZGFsb25lPSZxdW90O25vJnF1b3Q7Pz4mI3hEOyYjeEE7Jmx0O1JUTWFwc0RpYWdyYW0geG1sbnM9JnF1b3Q7aHR0cDovL3NjaGVtYXMuaW50ZW1wb3JhLmNvbS9SVE1hcHMvMjAxMS9SVE1hcHNGaWxlcyZxdW90OyB4bWxuczp4c2k9JnF1b3Q7aHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UmcXVvdDsgRW5naW5lVmVyc2lvbj0mcXVvdDs0LjEmcXVvdDsgdmVyc2lvbj0mcXVvdDs0LjEmcXVvdDsgeHNpOnNjaGVtYUxvY2F0aW9uPSZxdW90O2h0dHA6Ly9zY2hlbWFzLmludGVtcG9yYS5jb20vUlRNYXBzLzIwMTEvUlRNYXBzRmlsZXMgaHR0cDovL3d3dy5pbnRlbXBvcmEuY29tL3NjaGVtYXMvUlRNYXBzLzIwMTEvUlRNYXBzRGlhZ3JhbS54c2QgaHR0cDovL3NjaGVtYXMuaW50ZW1wb3JhLmNvbS9SVE1hcHMvMjAxMS9SVE1hcHNGaWxlcyBodHRwOi8vd3d3LmludGVtcG9yYS5jb20vc2NoZW1hcy9SVE1hcHMvMjAxMS9SVE1hcHNEaWFncmFtX1JUQm9hcmRWaWV3LnhzZCZxdW90Oz4mI3hEOyYjeEE7ICAmbHQ7UmVxdWlyZWRQYWNrYWdlcz4mI3hEOyYjeEE7ICAgICZsdDtGaWxlPiZsdDshIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJbIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IkNEQVRBIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJbIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii9kdW1teS9hYnNvbHV0ZS9wYXRoL2Zvci9ydG1hcHNfIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJtb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlREL21vZGVsIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii5wY2siLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il0iPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iXSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSI+JiN4RDsmI3hBOyAgICAgICZsdDtSZWxhdGl2ZT4mbHQ7ISIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iWyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJDREFUQSIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iWyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIlUlRNQVBTX0RJQUdSQU1ESVIlL3VzZXJfc2RrLyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uL1JUTWFwc0RhdGFUeXBlUXVlcmllcy5lbXRsIy8wL2dldFBja091dHB1dERpciIvPgorICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iZHVtbXkiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9InJ0bWFwc18iLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLnBjayIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iXSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJdIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ij4mbHQ7L1JlbGF0aXZlPiYjeEQ7JiN4QTsgICAgJmx0Oy9GaWxlPiYjeEQ7JiN4QTsgICZsdDsvUmVxdWlyZWRQYWNrYWdlcz4mI3hEOyYjeEE7ICAmbHQ7UmVxdWlyZWRNYWNyb1BhY2thZ2VzPiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGb3JCbG9jayI+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpMZXRCbG9jayI+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOklmQmxvY2siPgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4OTsmI3g5OyZsdDtGaWxlPiZsdDshIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJbIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IkNEQVRBIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJbIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi9SVE1hcHNEYXRhVHlwZVF1ZXJpZXMuZW10bCMvMC9nZXRSVE1hcHNOYXRpdmVMaWJyYXJ5UGF0aEZyb21HZW5lcmljQXR0cmlidXRlIi8+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lL2MiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il0iPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iXSI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSI+JiN4RDsmI3hBOyYjeDk7ICAgICAgJmx0O1JlbGF0aXZlPiZsdDshIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJbIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IkNEQVRBIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJbIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi9SVE1hcHNEYXRhVHlwZVF1ZXJpZXMuZW10bCMvMC9nZXRSVE1hcHNOYXRpdmVMaWJyYXJ5UGF0aEZyb21HZW5lcmljQXR0cmlidXRlIi8+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lL2MiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il0iPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iXSI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSI+Jmx0Oy9SZWxhdGl2ZT4mI3hEOyYjeEE7JiN4OTsgICAgJmx0Oy9GaWxlPiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgICAgPGlmRXhwciB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vUlRNYXBzRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAvaGFzUlRNYXBzTmF0aXZlSW1wbGVtZW50YXRpb24iLz4KKyAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMjEvJS9jIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpCb29sZWFuTGl0ZXJhbEV4cCIgYm9vbGVhblN5bWJvbD0idHJ1ZSI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbl9DbGFzcy89Ii8+CisgICAgICAgICAgICAgIDwvaWZFeHByPgorICAgICAgICAgICAgICA8ZWxzZUlmPgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIgICAgJmx0O0ZpbGU+Jmx0OyEiLz4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iWyI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJDREFUQSIvPgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJbIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii9kdW1teS9hYnNvbHV0ZS9wYXRoL2Zvci8iLz4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lL2MiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIucnRtYyI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJdIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il0iPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iPiYjeEQ7JiN4QTsgICAgICAmbHQ7UmVsYXRpdmU+Jmx0OyEiLz4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iWyI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJDREFUQSIvPgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJbIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiVSVE1BUFNfRElBR1JBTURJUiUvIi8+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvU3RyaW5nX0NsYXNzLysiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMjEvJS9jIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLnJ0bWMiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iXSI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJdIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ij4mbHQ7L1JlbGF0aXZlPiYjeEQ7JiN4QTsgICAgJmx0Oy9GaWxlPiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgICAgICA8aWZFeHByIHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9pc01hY3JvQ29tcG9uZW50Ii8+CisgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYyIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjIxLyUvYyI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgPC9pZkV4cHI+CisgICAgICAgICAgICAgIDwvZWxzZUlmPgorICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgPGxldFZhcmlhYmxlIG5hbWU9ImMiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgIDxpbml0RXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjIxL2VsdCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVFeHAiIGVUeXBlPSIvMjQvQ2xhc3MiPgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueV9DbGFzcy9vY2xBc1R5cGUiLz4KKyAgICAgICAgICAgICAgPC9pbml0RXhwcmVzc2lvbj4KKyAgICAgICAgICAgIDwvbGV0VmFyaWFibGU+CisgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgIDxsb29wVmFyaWFibGUgbmFtZT0iZWx0Ij4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgICAgICAgICAgPC9sb29wVmFyaWFibGU+CisgICAgICAgICAgPGl0ZXJTZXQgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iIGVUeXBlPSIvMjEvU2VxdWVuY2UoTmFtZWRFbGVtZW50KSI+CisgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRDb21wb25lbnRNb2RlbHMiLz4KKyAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJtb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlREL21vZGVsIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICA8L2l0ZXJTZXQ+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiAgJmx0Oy9SZXF1aXJlZE1hY3JvUGFja2FnZXM+JiN4RDsmI3hBOyAgJmx0O01hY3JvQ29tcG9uZW50RGVmaW5pdGlvbnMvPiYjeEQ7JiN4QTsgICZsdDtFbmdpbmVQcm9wZXJ0aWVzPiYjeEQ7JiN4QTsgICAgJmx0O1Byb3BlcnR5IExvbmdOYW1lPSZxdW90O0VuZ2luZS5zdGFydFRpbWVzcGVlZCZxdW90OyBUeXBlPSZxdW90OzEmcXVvdDs+MTAwMCZsdDsvUHJvcGVydHk+JiN4RDsmI3hBOyAgICAmbHQ7UHJvcGVydHkgTG9uZ05hbWU9JnF1b3Q7RW5naW5lLnN0YXJ0VGltZSZxdW90OyBUeXBlPSZxdW90OzEmcXVvdDs+MCZsdDsvUHJvcGVydHk+JiN4RDsmI3hBOyAgICAmbHQ7UHJvcGVydHkgTG9uZ05hbWU9JnF1b3Q7RW5naW5lLnNlc3Npb24mcXVvdDsgVHlwZT0mcXVvdDszJnF1b3Q7PiZsdDshIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJbIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IkNEQVRBIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJbIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9InVuc3BlY2lmaWVkIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJdIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il0iPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iPiZsdDsvUHJvcGVydHk+JiN4RDsmI3hBOyAgICAmbHQ7UHJvcGVydHkgTG9uZ05hbWU9JnF1b3Q7RW5naW5lLnJlY29yZGluZ0F0U3RhcnQmcXVvdDsgVHlwZT0mcXVvdDswJnF1b3Q7PnRydWUmbHQ7L1Byb3BlcnR5PiYjeEQ7JiN4QTsgICAgJmx0O1Byb3BlcnR5IExvbmdOYW1lPSZxdW90O0VuZ2luZS5yZWNvcmRpbmcmcXVvdDsgVHlwZT0mcXVvdDswJnF1b3Q7PnRydWUmbHQ7L1Byb3BlcnR5PiYjeEQ7JiN4QTsgICAgJmx0O1Byb3BlcnR5IExvbmdOYW1lPSZxdW90O0VuZ2luZS5zZXF1ZW50aWFsU3RhcnQmcXVvdDsgVHlwZT0mcXVvdDswJnF1b3Q7PmZhbHNlJmx0Oy9Qcm9wZXJ0eT4mI3hEOyYjeEE7ICAgICZsdDtQcm9wZXJ0eSBMb25nTmFtZT0mcXVvdDtFbmdpbmUuYXV0b0RldGVjdFN0YXJ0VGltZSZxdW90OyBUeXBlPSZxdW90OzAmcXVvdDs+dHJ1ZSZsdDsvUHJvcGVydHk+JiN4RDsmI3hBOyAgICAmbHQ7UHJvcGVydHkgTG9uZ05hbWU9JnF1b3Q7RW5naW5lLmNvcmVGdW5jdGlvbnNUb1NhdmVJbkRpYWcmcXVvdDsgVHlwZT0mcXVvdDs0JnF1b3Q7PiZsdDshIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJbIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IkNEQVRBIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJbIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IjB8LTEiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il0iPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iXSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSI+Jmx0Oy9Qcm9wZXJ0eT4mI3hEOyYjeEE7ICAmbHQ7L0VuZ2luZVByb3BlcnRpZXM+JiN4RDsmI3hBOyAgJmx0O0Nsb2Nrc01hbmFnZW1lbnQ+JiN4RDsmI3hBOyAgICAmbHQ7UHJvcGVydHkgTG9uZ05hbWU9JnF1b3Q7Q2xvY2tzTWFuYWdlbWVudC5hY3RpdmVDbG9jayZxdW90OyBUeXBlPSZxdW90OzQmcXVvdDs+Jmx0OyEiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IlsiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iQ0RBVEEiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IlsiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iMXwwfFJUTWFwc19zdGFuZGFyZF9jbG9jayIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iXSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJdIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ij4mbHQ7L1Byb3BlcnR5PiYjeEQ7JiN4QTsgICZsdDsvQ2xvY2tzTWFuYWdlbWVudD4mI3hEOyYjeEE7Ii8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6TGV0QmxvY2siPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6Rm9yQmxvY2siPgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpJZkJsb2NrIj4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeDk7JiN4OTsmI3g5OyAgICAmbHQ7TWFjcm9Db21wb25lbnQgSW5zdGFuY2VOYW1lPSZxdW90OyIvPgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icHJvcCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvcHJvcCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImcXVvdDsgTW9kZWw9JnF1b3Q7Ii8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vUlRNYXBzRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAvZ2V0UlRNYXBzTmF0aXZlQ29tcG9uZW50TmFtZUZyb21HZW5lcmljQXR0cmlidXRlIi8+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlIi8+CisgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icHJvcCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvcHJvcCI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlZEVsZW1lbnQvdHlwZSIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlRXhwIiBlVHlwZT0iLzI0L0NsYXNzIj4KKyAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnlfQ2xhc3Mvb2NsQXNUeXBlIi8+CisgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJnF1b3Q7IHg9JnF1b3Q7Ii8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJpIiByZWZlcnJlZFZhcmlhYmxlPSIvOTIiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iaG9yX3NwYWNpbmciIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC9AaW5pdC9AdmFyaWFibGUuMSI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlcl9DbGFzcy8qIi8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6SW50ZWdlckxpdGVyYWxFeHAiIGludGVnZXJTeW1ib2w9IjUwIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyX0NsYXNzLysiLz4KKyAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJnF1b3Q7IHk9JnF1b3Q7Ii8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImkiIHJlZmVycmVkVmFyaWFibGU9Ii85MiI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJ2ZXJ0X3NwYWNpbmciIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC9AaW5pdC9AdmFyaWFibGUuMCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlcl9DbGFzcy8qIi8+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiZxdW90OyB6PSZxdW90OzAmcXVvdDs+JiN4RDsmI3hBOyIvPgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZvckJsb2NrIj4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkxldEJsb2NrIj4KKyAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6SWZCbG9jayI+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5OyYjeDk7JiN4OTsmI3g5OyAgICAgICZsdDtPdXRwdXRQcm9wZXJ0eU92ZXJsb2FkIExvbmdOYW1lPSZxdW90OyIvPgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjkvcCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii5maWZvc2l6ZSZxdW90OyBUeXBlPSZxdW90OzEmcXVvdDs+Ii8+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImJ1ZmZzaXplIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuOS8lL2J1ZmZzaXplIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImbHQ7L091dHB1dFByb3BlcnR5T3ZlcmxvYWQ+JiN4RDsmI3hBOyIvPgorICAgICAgICAgICAgICAgICAgICA8aWZFeHByIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImJ1ZmZzaXplIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuOS8lL2J1ZmZzaXplIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6SW50ZWdlckxpdGVyYWxFeHAiIGludGVnZXJTeW1ib2w9IjAiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXJfQ2xhc3MvJTNFIi8+CisgICAgICAgICAgICAgICAgICAgIDwvaWZFeHByPgorICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgPGxldFZhcmlhYmxlIG5hbWU9ImJ1ZmZzaXplIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgICAgPGluaXRFeHByZXNzaW9uIHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldE91dHB1dFBvcnRCdWZmZXJTaXplIi8+CisgICAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InAiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS45L3AiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgICAgPC9pbml0RXhwcmVzc2lvbj4KKyAgICAgICAgICAgICAgICAgIDwvbGV0VmFyaWFibGU+CisgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgIDxsb29wVmFyaWFibGUgbmFtZT0icCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICA8L2xvb3BWYXJpYWJsZT4KKyAgICAgICAgICAgICAgICA8aXRlclNldCB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiIgZVR5cGU9Ii8yMS9TZXF1ZW5jZShQb3J0KSI+CisgICAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRPdXRwdXRQb3J0c0ZvckVsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlIi8+CisgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwcm9wIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS9wcm9wIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGVkRWxlbWVudC90eXBlIi8+CisgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlRXhwIiBlVHlwZT0iLzI0L0VsZW1lbnQiPgorICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55X0NsYXNzL29jbEFzVHlwZSIvPgorICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICA8L2l0ZXJTZXQ+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeDk7JiN4OTsmI3g5OyAgICAmbHQ7L01hY3JvQ29tcG9uZW50PiYjeDk7JiN4OTsmI3g5OyYjeDk7JiN4OTsmI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICAgIDxpZkV4cHIgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uL1JUTWFwc0RhdGFUeXBlUXVlcmllcy5lbXRsIy8wL2hhc1JUTWFwc05hdGl2ZUltcGxlbWVudGF0aW9uIi8+CisgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InByb3AiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lL3Byb3AiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZWRFbGVtZW50L3R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVFeHAiIGVUeXBlPSIvMjQvQ2xhc3MiPgorICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueV9DbGFzcy9vY2xBc1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Qm9vbGVhbkxpdGVyYWxFeHAiIGJvb2xlYW5TeW1ib2w9InRydWUiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW5fQ2xhc3MvPSIvPgorICAgICAgICAgICAgICA8L2lmRXhwcj4KKyAgICAgICAgICAgICAgPGVsc2VJZj4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4OTsmI3g5OyYjeDk7ICAgICZsdDtNYWNyb0NvbXBvbmVudCBJbnN0YW5jZU5hbWU9JnF1b3Q7Ii8+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwcm9wIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS9wcm9wIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImcXVvdDsgTW9kZWw9JnF1b3Q7bWFjcm9fIi8+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZSIvPgorICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InByb3AiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lL3Byb3AiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZWRFbGVtZW50L3R5cGUiLz4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJnF1b3Q7IHg9JnF1b3Q7Ii8+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iaSIgcmVmZXJyZWRWYXJpYWJsZT0iLzkyIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Imhvcl9zcGFjaW5nIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvQGluaXQvQHZhcmlhYmxlLjEiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXJfQ2xhc3MvKiIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpJbnRlZ2VyTGl0ZXJhbEV4cCIgaW50ZWdlclN5bWJvbD0iNTAiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXJfQ2xhc3MvKyIvPgorICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJnF1b3Q7IHk9JnF1b3Q7Ii8+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImkiIHJlZmVycmVkVmFyaWFibGU9Ii85MiI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJ2ZXJ0X3NwYWNpbmciIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC9AaW5pdC9AdmFyaWFibGUuMCI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlcl9DbGFzcy8qIi8+CisgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImcXVvdDsgej0mcXVvdDswJnF1b3Q7PiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZvckJsb2NrIj4KKyAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6TGV0QmxvY2siPgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOklmQmxvY2siPgorICAgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5OyYjeDk7JiN4OTsmI3g5OyAgICAgICZsdDtPdXRwdXRQcm9wZXJ0eU92ZXJsb2FkIExvbmdOYW1lPSZxdW90OyIvPgorICAgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjEyLyUuOS9wIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii5maWZvc2l6ZSZxdW90OyBUeXBlPSZxdW90OzEmcXVvdDs+Ii8+CisgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYnVmZnNpemUiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS4xMi8lLjkvJS9idWZmc2l6ZSI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJmx0Oy9PdXRwdXRQcm9wZXJ0eU92ZXJsb2FkPiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8aWZFeHByIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJidWZmc2l6ZSIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjEyLyUuOS8lL2J1ZmZzaXplIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6SW50ZWdlckxpdGVyYWxFeHAiIGludGVnZXJTeW1ib2w9IjAiPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXJfQ2xhc3MvJTNFIi8+CisgICAgICAgICAgICAgICAgICAgICAgPC9pZkV4cHI+CisgICAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgICAgPGxldFZhcmlhYmxlIG5hbWU9ImJ1ZmZzaXplIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgICAgIDxpbml0RXhwcmVzc2lvbiB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0T3V0cHV0UG9ydEJ1ZmZlclNpemUiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuMTIvJS45L3AiPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgICAgPC9pbml0RXhwcmVzc2lvbj4KKyAgICAgICAgICAgICAgICAgICAgPC9sZXRWYXJpYWJsZT4KKyAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgIDxsb29wVmFyaWFibGUgbmFtZT0icCI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICAgICAgPC9sb29wVmFyaWFibGU+CisgICAgICAgICAgICAgICAgICA8aXRlclNldCB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiIgZVR5cGU9Ii8yMS9TZXF1ZW5jZShQb3J0KSI+CisgICAgICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldE91dHB1dFBvcnRzRm9yRWxlbWVudCIvPgorICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwcm9wIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS9wcm9wIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGVkRWxlbWVudC90eXBlIi8+CisgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VHlwZUV4cCIgZVR5cGU9Ii8yNC9FbGVtZW50Ij4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueV9DbGFzcy9vY2xBc1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgIDwvaXRlclNldD4KKyAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeDk7JiN4OTsmI3g5OyAgICAmbHQ7L01hY3JvQ29tcG9uZW50PiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgICAgICA8aWZFeHByIHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9pc01hY3JvQ29tcG9uZW50Ii8+CisgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InByb3AiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lL3Byb3AiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZWRFbGVtZW50L3R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVFeHAiIGVUeXBlPSIvMjQvQ2xhc3MiPgorICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueV9DbGFzcy9vY2xBc1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgPC9pZkV4cHI+CisgICAgICAgICAgICAgIDwvZWxzZUlmPgorICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgPGxvb3BWYXJpYWJsZSBuYW1lPSJwcm9wIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgPC9sb29wVmFyaWFibGU+CisgICAgICAgICAgICA8aXRlclNldCB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiIgZVR5cGU9Ii8yMS9TZXF1ZW5jZShQcm9wZXJ0eSkiPgorICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRMZXZlbDFTdWJDb21wb25lbnRzRm9yQ29tcG9uZW50Ii8+CisgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJtYWluX2NvbXAiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC9tYWluX2NvbXAiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgIDwvaXRlclNldD4KKyAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGb3JCbG9jayI+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOklmQmxvY2siPgorICAgICAgICAgICAgICA8aWZFeHByIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi9SVE1hcHNEYXRhVHlwZVF1ZXJpZXMuZW10bCMvMC9oYXNSVE1hcHNOYXRpdmVJbXBsZW1lbnRhdGlvbiIvPgorICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlIi8+CisgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwcm9wIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xL3Byb3AiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZWRFbGVtZW50L3R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVFeHAiIGVUeXBlPSIvMjQvQ2xhc3MiPgorICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueV9DbGFzcy9vY2xBc1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Qm9vbGVhbkxpdGVyYWxFeHAiIGJvb2xlYW5TeW1ib2w9InRydWUiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW5fQ2xhc3MvPSIvPgorICAgICAgICAgICAgICA8L2lmRXhwcj4KKyAgICAgICAgICAgICAgPGVsc2VJZj4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4OTsmI3g5OyAgICAmI3g5OyZsdDtDb21wb25lbnQgSW5zdGFuY2VOYW1lPSZxdW90OyIvPgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icHJvcCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS9wcm9wIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImcXVvdDsgTW9kZWw9JnF1b3Q7Ii8+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZSIvPgorICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InByb3AiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvcHJvcCI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlZEVsZW1lbnQvdHlwZSIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImcXVvdDsgeD0mcXVvdDsiLz4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iaSIgcmVmZXJyZWRWYXJpYWJsZT0iLzExOCI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJob3Jfc3BhY2luZyIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlREL0Bpbml0L0B2YXJpYWJsZS4xIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyX0NsYXNzLyoiLz4KKyAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiZxdW90OyB5PSZxdW90OyIvPgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJpIiByZWZlcnJlZFZhcmlhYmxlPSIvMTE4Ij4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InZlcnRfc3BhY2luZyIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlREL0Bpbml0L0B2YXJpYWJsZS4wIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyX0NsYXNzLyoiLz4KKyAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiZxdW90OyB6PSZxdW90OzAmcXVvdDs+JiN4RDsmI3hBOyIvPgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6Rm9yQmxvY2siPgorICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpMZXRCbG9jayI+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6SWZCbG9jayI+CisgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeDk7JiN4OTsmI3g5OyYjeDk7ICAgICAgJmx0O091dHB1dCBMb25nTmFtZT0mcXVvdDsiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InByb3AiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvcHJvcCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLiIvPgorICAgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUuMS8lLjkvcCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImcXVvdDsgTmFtZT0mcXVvdDsiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InAiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45L3AiPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJnF1b3Q7PiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5OyAgICAgICAgJmx0O1Byb3BlcnR5IExvbmdOYW1lPSZxdW90OyIvPgorICAgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icHJvcCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS9wcm9wIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIuIi8+CisgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuOS9wIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii5maWZvc2l6ZSZxdW90OyBUeXBlPSZxdW90OzEmcXVvdDs+Ii8+CisgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYnVmZnNpemUiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45LyUvYnVmZnNpemUiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiZsdDsvUHJvcGVydHk+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7ICAgICAgICAmbHQ7UHJvcGVydHkgTG9uZ05hbWU9JnF1b3Q7Ii8+CisgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwcm9wIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xL3Byb3AiPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii4iLz4KKyAgICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InAiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45L3AiPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLnBlcmlvZGljJnF1b3Q7IFR5cGU9JnF1b3Q7MCZxdW90Oz5mYWxzZSZsdDsvUHJvcGVydHk+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7ICAgICAgICAmbHQ7UHJvcGVydHkgTG9uZ05hbWU9JnF1b3Q7Ii8+CisgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwcm9wIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xL3Byb3AiPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii4iLz4KKyAgICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InAiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45L3AiPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLnN1YnNhbXBsaW5nJnF1b3Q7IFR5cGU9JnF1b3Q7MSZxdW90Oz4xJmx0Oy9Qcm9wZXJ0eT4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTsgICAgICAmbHQ7L091dHB1dD4mI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICAgICAgICAgICAgPGlmRXhwciB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYnVmZnNpemUiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45LyUvYnVmZnNpemUiPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpJbnRlZ2VyTGl0ZXJhbEV4cCIgaW50ZWdlclN5bWJvbD0iMCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlcl9DbGFzcy8lM0UiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L2lmRXhwcj4KKyAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICA8bGV0VmFyaWFibGUgbmFtZT0iYnVmZnNpemUiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgICAgPGluaXRFeHByZXNzaW9uIHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRPdXRwdXRQb3J0QnVmZmVyU2l6ZSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InAiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45L3AiPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgICAgPC9pbml0RXhwcmVzc2lvbj4KKyAgICAgICAgICAgICAgICAgICAgPC9sZXRWYXJpYWJsZT4KKyAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgIDxsb29wVmFyaWFibGUgbmFtZT0icCI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICAgICAgPC9sb29wVmFyaWFibGU+CisgICAgICAgICAgICAgICAgICA8aXRlclNldCB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiIgZVR5cGU9Ii8yMS9TZXF1ZW5jZShQb3J0KSI+CisgICAgICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldE91dHB1dFBvcnRzRm9yRWxlbWVudCIvPgorICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwcm9wIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xL3Byb3AiPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZWRFbGVtZW50L3R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlRXhwIiBlVHlwZT0iLzI0L0VsZW1lbnQiPgorICAgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55X0NsYXNzL29jbEFzVHlwZSIvPgorICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgPC9pdGVyU2V0PgorICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4OTsmI3g5OyAgICAmI3g5OyZsdDsvQ29tcG9uZW50PiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgICAgICA8aWZFeHByIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2lzTWFjcm9Db21wb25lbnQiLz4KKyAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InByb3AiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvcHJvcCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlZEVsZW1lbnQvdHlwZSIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVFeHAiIGVUeXBlPSIvMjQvQ2xhc3MiPgorICAgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueV9DbGFzcy9vY2xBc1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Qm9vbGVhbkxpdGVyYWxFeHAiIGJvb2xlYW5TeW1ib2w9ImZhbHNlIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuX0NsYXNzLz0iLz4KKyAgICAgICAgICAgICAgICA8L2lmRXhwcj4KKyAgICAgICAgICAgICAgPC9lbHNlSWY+CisgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICA8bG9vcFZhcmlhYmxlIG5hbWU9InByb3AiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICA8L2xvb3BWYXJpYWJsZT4KKyAgICAgICAgICAgIDxpdGVyU2V0IHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIiBlVHlwZT0iLzIxL1NlcXVlbmNlKFByb3BlcnR5KSI+CisgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnQiLz4KKyAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1haW5fY29tcCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0L21haW5fY29tcCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgPC9pdGVyU2V0PgorICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZvckJsb2NrIj4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6TGV0QmxvY2siPgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkxldEJsb2NrIj4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4OTsmI3g5OyYjeDk7Jmx0O0Nvbm5lY3Rpb24gSW5wdXQ9JnF1b3Q7Ii8+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJkc3RfY29tcCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMi8lL2RzdF9jb21wIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIuIi8+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0RGVzdFBvcnROYW1lIi8+CisgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iY29ubiIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMi9jb25uIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImcXVvdDsgT3V0cHV0PSZxdW90OyIvPgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic3JjX2NvbXAiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjIvJS8lL3NyY19jb21wIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIuIi8+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0U291cmNlUG9ydE5hbWUiLz4KKyAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjb25uIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4yL2Nvbm4iPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiZxdW90Oy8+JiN4RDsmI3hBOyIvPgorICAgICAgICAgICAgICAgIDxsZXRWYXJpYWJsZSBuYW1lPSJzcmNfY29tcCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgICA8aW5pdEV4cHJlc3Npb24geHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldFNvdXJjZUNvbXBvbmVudEZvckNvbm5lY3RvciIvPgorICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iY29ubiIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMi9jb25uIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgPC9pbml0RXhwcmVzc2lvbj4KKyAgICAgICAgICAgICAgICA8L2xldFZhcmlhYmxlPgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxsZXRWYXJpYWJsZSBuYW1lPSJkc3RfY29tcCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgIDxpbml0RXhwcmVzc2lvbiB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXREZXN0Q29tcG9uZW50Rm9yQ29ubmVjdG9yIi8+CisgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iY29ubiIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMi9jb25uIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgPC9pbml0RXhwcmVzc2lvbj4KKyAgICAgICAgICAgICAgPC9sZXRWYXJpYWJsZT4KKyAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgIDxsb29wVmFyaWFibGUgbmFtZT0iY29ubiI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICAgICAgICA8L2xvb3BWYXJpYWJsZT4KKyAgICAgICAgICAgIDxpdGVyU2V0IHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIiBlVHlwZT0iLzIxL1NlcXVlbmNlKENvbm5lY3RvcikiPgorICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRJbnRlcm5hbENvbm5lY3RvcnMiLz4KKyAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1haW5fY29tcCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0L21haW5fY29tcCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgPC9pdGVyU2V0PgorICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJmx0O1JUQm9hcmRWaWV3IElEPSZxdW90O0phdmFTdHVkaW8xLjAmcXVvdDs+JiN4RDsmI3hBOyAgICAmbHQ7RGVzY3JpcHRpb24vPiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZvckJsb2NrIj4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5OyAgICAmbHQ7Q29tcG9uZW50Qm94IEluc3RhbmNlTmFtZT0mcXVvdDsiLz4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InByb3AiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjQvcHJvcCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiZxdW90OyByZXZlcnNlZD0mcXVvdDtmYWxzZSZxdW90Oz4mI3hEOyYjeEE7JiN4OTsgICAgICAmbHQ7RGVzY3JpcHRpb24vPiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5OyAgICAmbHQ7L0NvbXBvbmVudEJveD4mI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICA8bG9vcFZhcmlhYmxlIG5hbWU9InByb3AiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICA8L2xvb3BWYXJpYWJsZT4KKyAgICAgICAgICAgIDxpdGVyU2V0IHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIiBlVHlwZT0iLzIxL1NlcXVlbmNlKFByb3BlcnR5KSI+CisgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnQiLz4KKyAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1haW5fY29tcCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0L21haW5fY29tcCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgPC9pdGVyU2V0PgorICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iICAmbHQ7L1JUQm9hcmRWaWV3PiYjeEQ7JiN4QTsmbHQ7L1JUTWFwc0RpYWdyYW0+JiN4RDsmI3hBOyIvPgorICAgICAgICAgIDxsZXRWYXJpYWJsZSBuYW1lPSJtYWluX2NvbXAiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgPGluaXRFeHByZXNzaW9uIHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRSb290Q2xhc3NGb3JNb2RlbCIvPgorICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC9tb2RlbCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgPC9pbml0RXhwcmVzc2lvbj4KKyAgICAgICAgICA8L2xldFZhcmlhYmxlPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxmaWxlVXJsIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL1N0cmluZ19DbGFzcy8rIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvbW9kZWwiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii5ydGQiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDwvZmlsZVVybD4KKyAgICAgICAgPGNoYXJzZXQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IlVURi04Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvY2hhcnNldD4KKyAgICAgIDwvYm9keT4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0ibW9kZWwiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgPC9tdGw6TW9kdWxlPgorICA8ZWNvcmU6RVBhY2thZ2UgbmFtZT0iYWRkaXRpb25zIj4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlN0cmluZ19DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iKyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwgbm9uLXN0YW5kYXJkIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im90aGVyIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSW50ZWdlcl9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUmVhbF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1JlYWwiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRU9iamVjdF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURCIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJtb2RlbCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRTb3VyY2VQb3J0TmFtZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldFNvdXJjZVBvcnROYW1lIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb25uIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRTb3VyY2VDb21wb25lbnRGb3JDb25uZWN0b3IiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRTb3VyY2VDb21wb25lbnRGb3JDb25uZWN0b3IiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbm4iPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldERlc3RQb3J0TmFtZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldERlc3RQb3J0TmFtZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29ubiI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0RGVzdENvbXBvbmVudEZvckNvbm5lY3RvciI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldERlc3RDb21wb25lbnRGb3JDb25uZWN0b3IiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbm4iPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldEludGVybmFsQ29ubmVjdG9ycyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldEludGVybmFsQ29ubmVjdG9ycyIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6U2VxdWVuY2VUeXBlIiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMy9TZXF1ZW5jZShDb25uZWN0b3IpIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRMZXZlbDFTdWJDb21wb25lbnRzRm9yQ29tcG9uZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8zL1NlcXVlbmNlKFByb3BlcnR5KSIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY2xhc3MiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8zL1NlcXVlbmNlKFBvcnQpIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbHQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRDb21wb25lbnRNb2RlbHMiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRDb21wb25lbnRNb2RlbHMiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzMvU2VxdWVuY2UoTmFtZWRFbGVtZW50KSIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibW9kZWwiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNNYWNyb0NvbXBvbmVudCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2lzTWFjcm9Db21wb25lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjbGFzcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRPdXRwdXRQb3J0QnVmZmVyU2l6ZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldE91dHB1dFBvcnRCdWZmZXJTaXplIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldFJvb3RDbGFzc0Zvck1vZGVsIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0Um9vdENsYXNzRm9yTW9kZWwiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im1vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldFBja091dHB1dERpciI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uL1JUTWFwc0RhdGFUeXBlUXVlcmllcy5lbXRsIy8wL2dldFBja091dHB1dERpciIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYXJnIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9Imhhc1JUTWFwc05hdGl2ZUltcGxlbWVudGF0aW9uIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iLi4vUlRNYXBzRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAvaGFzUlRNYXBzTmF0aXZlSW1wbGVtZW50YXRpb24iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldFJUTWFwc05hdGl2ZUNvbXBvbmVudE5hbWVGcm9tR2VuZXJpY0F0dHJpYnV0ZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uL1JUTWFwc0RhdGFUeXBlUXVlcmllcy5lbXRsIy8wL2dldFJUTWFwc05hdGl2ZUNvbXBvbmVudE5hbWVGcm9tR2VuZXJpY0F0dHJpYnV0ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRSVE1hcHNOYXRpdmVMaWJyYXJ5UGF0aEZyb21HZW5lcmljQXR0cmlidXRlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iLi4vUlRNYXBzRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAvZ2V0UlRNYXBzTmF0aXZlTGlicmFyeVBhdGhGcm9tR2VuZXJpY0F0dHJpYnV0ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9jbEFueV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb2xsZWN0aW9uKFQpX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQ29sbGVjdGlvbihUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTZXF1ZW5jZShUKV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1NlcXVlbmNlKFQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9yZGVyZWRTZXQoVClfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PcmRlcmVkU2V0KFQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik1vZGVsX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ2xhc3NfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFbGVtZW50X0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQcm9wZXJ0eV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNvbm5lY3Rvcl9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQYXJhbWV0ZXJfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9QYXJhbWV0ZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ2xhc3NpZmllcl9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzaWZpZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUG9ydF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICA8L2Vjb3JlOkVQYWNrYWdlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPGVjb3JlOkVQYWNrYWdlIG5hbWU9ImNvbGxlY3Rpb25zIj4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJvY2wuZWNvcmU6U2VxdWVuY2VUeXBlIiBuYW1lPSJTZXF1ZW5jZShOYW1lZEVsZW1lbnQpIiBpbnN0YW5jZUNsYXNzTmFtZT0iamF2YS51dGlsLkxpc3QiPgorICAgICAgPGVsZW1lbnRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJvY2wuZWNvcmU6U2VxdWVuY2VUeXBlIiBuYW1lPSJTZXF1ZW5jZShQcm9wZXJ0eSkiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuTGlzdCI+CisgICAgICA8ZWxlbWVudFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgbmFtZT0iU2VxdWVuY2UoUG9ydCkiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuTGlzdCI+CisgICAgICA8ZWxlbWVudFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJvY2wuZWNvcmU6U2VxdWVuY2VUeXBlIiBuYW1lPSJTZXF1ZW5jZShDb25uZWN0b3IpIiBpbnN0YW5jZUNsYXNzTmFtZT0iamF2YS51dGlsLkxpc3QiPgorICAgICAgPGVsZW1lbnRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgPC9lY29yZTpFUGFja2FnZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8ZWNvcmU6RVBhY2thZ2UgbmFtZT0idHlwZXMiPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlVHlwZSIgbmFtZT0iQ2xhc3MiPgorICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJvY2wuZWNvcmU6VHlwZVR5cGUiIG5hbWU9IkVsZW1lbnQiPgorICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICA8L2Vjb3JlOkVQYWNrYWdlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0iaSI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9ImkiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJpIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9ImkiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9ImkiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0iaSI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9ImkiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0iaSI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8ZWNvcmU6RUFubm90YXRpb24gc291cmNlPSJwb3NpdGlvbnMiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlREIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTY4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk3MDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvQGluaXQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEyMjUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTI4MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC9AaW5pdC9AdmFyaWFibGUuMCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTIyNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjUzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlREL0Bpbml0L0B2YXJpYWJsZS4wLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEyNTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTI1MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlREL0Bpbml0L0B2YXJpYWJsZS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjU1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEyODEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvQGluaXQvQHZhcmlhYmxlLjEvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTI3OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTI4NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjkwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTI5MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5NjkyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyOSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMzM3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4NTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjMwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTg1OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxODYyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4NjQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTg2OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTg3MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxODczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4NzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTkwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTkwOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTE4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjUvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE5MDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTkxMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS42Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTIwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5MjQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjMzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE5MjUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTkyOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS44Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTMxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5MzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuOSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTkzNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzMyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4xMCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTk1OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjExIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTYzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5NjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjEyIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTY5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5NzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMTMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE5NzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjAwMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMTQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIwMDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjAyOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4xNC8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMDIwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIwMjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMTUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIwMzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjAzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMTYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIwMzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjA0OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4xNi9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjAzOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMDQzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjE3Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMDUwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIwNTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjE4Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMDU1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIwNTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMTkiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIwNjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjA2NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjA2NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTQzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzNCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjE0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNzc3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzOCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMjAxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI3NjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjIxLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjI0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNzU4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0MCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjI5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzAyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0MSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMzAzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIzMDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMjEvJS8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjMwOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzEzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0MSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lLyUvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMzE0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIzMTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMjEvJS8lLyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjMyMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzcwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjIxLyUvJS8lLjQvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjMyMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjIxLyUvJS8lLjUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIzNzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjM3NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lLyUvJS42Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMzc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIzODIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMjEvJS8lLyUuNyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjM4NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNDA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0MSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lLyUvJS44Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNDA3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI0MTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMjEvJS8lLyUuOSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjQxMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNDE3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0MiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lLyUvJS4xMCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjQxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNDIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjIxLyUvJS8lLjExIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNDI0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI0NzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMjEvJS8lLyUuMTEvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjQyNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNDI1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjIxLyUvJS8lLjEyIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNDc3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI0ODAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMjEvJS8lLyUuMTMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI0ODMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjQ4NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lLyUvJS4xNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjQ4OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTE2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0MiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lLyUvJS4xNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjI0NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjg5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjIxLyUvJS8lLjE1LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyNDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjI4MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lLyUvJS4xNS8lL2MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyNDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjI0OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lLyUvJS4xNS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyODQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjI4OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lLyUvJS4xNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjUxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNzUzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0NCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lLyUvJS4xNi8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNTUwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI1NjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQ1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjIxLyUvJS8lLjE2LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjU2MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTY2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjIxLyUvJS8lLjE2LyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjU2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0NSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lLyUvJS4xNi8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI1NzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjU3NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lLyUvJS4xNi8lLjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI1NzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjYwNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjYyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMjEvJS8lLyUuMTYvJS41Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNjA1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI2MjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjYzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMjEvJS8lLyUuMTYvJS41LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI2MDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjYxMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lLyUvJS4xNi8lLjUvJS9jIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNjA1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI2MDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjY1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMjEvJS8lLyUuMTYvJS41LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjYxNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjIxLyUvJS8lLjE2LyUuNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjYyNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjI3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjIxLyUvJS8lLjE2LyUuNyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjYzMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjMzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjIxLyUvJS8lLjE2LyUuOCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjYzNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjU2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0NSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lLyUvJS4xNi8lLjkiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI2NTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjY2MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lLyUvJS4xNi8lLjEwIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNjYyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI2NjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQ2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjIxLyUvJS8lLjE2LyUuMTEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI2NjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjY3MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lLyUvJS4xNi8lLjEyIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNjczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI2OTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQ2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjIxLyUvJS8lLjE2LyUuMTMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI2OTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjcxMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lLyUvJS4xNi8lLjEzLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI2OTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjcwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lLyUvJS4xNi8lLjEzLyUvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjY5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjIxLyUvJS8lLjE2LyUuMTMvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNzAzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI3MTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjc3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMjEvJS8lLyUuMTYvJS4xNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjcxMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNzE2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjIxLyUvJS8lLjE2LyUuMTUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI3MTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjcyMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lLyUvJS4xNi8lLjE2Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNzI0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI3NTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQ2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjIxLyUvJS8lLjE2LyUuMTciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI1MjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjU0NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lLyUvJS4xNi8lLjE3L2MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI1NDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjU0NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lL2MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyMDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjIzOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjgzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMjEvJS9jLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyMTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjIzOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lL2MvJS9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyMTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjIyMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yMS8lL2MvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMjMzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIyMzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjg2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMjEvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMTUwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIxNjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjIxLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjE3MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjIxLyUuMS9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjE4OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTk0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjIyIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNzc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMwNTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjUxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjIzIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMDUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMwNTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjkxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMwNTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzA2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjkyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMjUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMwNjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzA2NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzA2NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMDc4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1NiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4yNyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzA3OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMDgyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjI4Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMDg1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMwODgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjk2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMjkiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMwOTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzQ2OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjk3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMzAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM0NzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzQ3MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4zMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzQ3NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNDgwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2MSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4zMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzQ4MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNDg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4zMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzQ4NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNDkwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2MSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTAxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMzQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM0OTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzQ5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTAyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMzUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM0OTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzUwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTAzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuMzYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM1MDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzYyNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjM3Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNjI3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM2MzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjM4Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNjMyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM2MzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjY0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS4zOSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzYzOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNjQxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40MCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzY0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNjY4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2NCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTA4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM2NjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzY3MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTA5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM2NzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzY3OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTEwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM2ODAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzcxNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MzUyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk2ODIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijc1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NDEwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjYxNDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijc2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ0ODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjEzNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNzciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NTYwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ1OTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijc4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NTk4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ2MDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjEvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDU5OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NjAyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NjA5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ2MTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijc4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NjE5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ2OTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjMvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDYxOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NjQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS4zLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDYxOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NjI4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS4zLyUvJS9wcm9wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NjE5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ2MjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjMvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ2MzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDY0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTIzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDY5OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NzAzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTI0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDcwNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NzI0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS41LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ3MDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDcxOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTI2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuNS8lL2kiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ3MDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDcwNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTI3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuNS8lL2hvcl9zcGFjaW5nIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NzA4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ3MTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NzIyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ3MjQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ3MjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDczMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNzgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ3MzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDc0OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTMxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuNy9pIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NzMyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ3MzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjcvdmVydF9zcGFjaW5nIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NzM2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ3NDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjgiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ3NTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDc2MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNzgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjkiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUwMDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTMxMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iODMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjkvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTA4MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1Mjk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI4NCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTM2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuOS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUxNDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTI4MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iODUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjkvJS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUxNjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTIwNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iODYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjkvJS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTIwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MjEzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMzkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS45LyUvJS8lLjEvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTIwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MjA4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNDAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS45LyUvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUyMTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTIzNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iODYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjkvJS8lL2J1ZmZzaXplIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MjM2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUyNDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjkvJS8lLyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTI0NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MjczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI4NiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuOS8lLyUvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MTQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUxNTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjkvJS8lLyUuNC9idWZmc2l6ZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTE0NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MTU0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNDUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS45LyUvJS8lLjQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTE1NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MTU4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNDYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS45LyUvYnVmZnNpemUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUwODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTEzMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iODQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjkvJS9idWZmc2l6ZS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MTA4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUxMzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjkvJS9idWZmc2l6ZS8lL3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUxMzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTEzMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQ5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuOS9wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MDA3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUwMTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjgzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS45LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTAxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MDcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS45LyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MDQzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUwNzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjkvJS4xLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTA0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MDUyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNTMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS45LyUuMS8lLyUvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTA0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MDQ3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNTQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS45LyUuMS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTA2MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MDcwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNTUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS4xMCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTMxMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MzQzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI5MCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTU2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuMTEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ0OTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDU1NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTU3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuMTEvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDQ5MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NTQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS4xMS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ0OTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDUxNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTU5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuMTEvJS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ0OTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDUwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTYwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuMTEvJS8lLyUvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDQ5MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NDk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNjEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS4xMS8lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NTExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ1MTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjExLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDU1MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NTU2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNjMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS4xMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTM0NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2MTMwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI5MSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTY0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuMTIvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTQwNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NDQyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI5MiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTY1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuMTIvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NDQzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU0NTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjEyLyUuMS9wcm9wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NDQzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU0NDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjEyLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTQ1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NDY5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI5MiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTY4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuMTIvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NDcwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU0ODQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjEyLyUuMy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NDcwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU0NzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjEyLyUuMy8lL3Byb3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU0NzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTQ3NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTcxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuMTIvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NDg2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU0OTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjkyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNzIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS4xMi8lLjUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU0OTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTUxMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTczIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuMTIvJS41LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU0OTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTUwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTc0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuMTIvJS41LyUvaSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTQ5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NDkzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNzUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS4xMi8lLjUvJS9ob3Jfc3BhY2luZyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTQ5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NTA3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNzYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS4xMi8lLjUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NTEwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU1MTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjEyLyUuNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTUxNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NTE5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI5MiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTc4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuMTIvJS43Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NTIwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU1MzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjEyLyUuNy9pIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NTIwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU1MjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjEyLyUuNy92ZXJ0X3NwYWNpbmciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU1MjQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTUzNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTgxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuMTIvJS44Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NTM4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU1NDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjkyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xODIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS4xMi8lLjkiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU3ODkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjA5OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iOTciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjEyLyUuOS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1ODY5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjYwODQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijk4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xODQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS4xMi8lLjkvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1OTI5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjYwNzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijk5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xODUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS4xMi8lLjkvJS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU5NTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTk5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTAwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xODYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS4xMi8lLjkvJS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTk5NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2MDAxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xODciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS4xMi8lLjkvJS8lLyUuMS9wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1OTk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU5OTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjEyLyUuOS8lLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2MDAzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjYwMjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEwMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTg5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuMTIvJS45LyUvJS9idWZmc2l6ZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjAyNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2MDMyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xOTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS4xMi8lLjkvJS8lLyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjAzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2MDYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMDAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjEyLyUuOS8lLyUvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1OTMzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU5NDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjEyLyUuOS8lLyUvJS40L2J1ZmZzaXplIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1OTM0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU5NDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjEyLyUuOS8lLyUvJS40LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU5NDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTk0NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTk0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuMTIvJS45LyUvYnVmZnNpemUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU4NzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTkyMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iOTgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjEyLyUuOS8lL2J1ZmZzaXplLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU4OTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTkyMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTk2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuMTIvJS45LyUvYnVmZnNpemUvJS9wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1OTIwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU5MjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjEyLyUuOS9wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1Nzk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU4MDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijk3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xOTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS4xMi8lLjkvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1ODA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU4NjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjEyLyUuOS8lLjEvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTgzMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1ODU5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMDAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS4xMi8lLjkvJS4xLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTgzMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1ODQwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMDEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLyUvJS4xMi8lLjkvJS4xLyUvJS9wcm9wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1ODMxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU4MzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIwMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjEyLyUuOS8lLjEvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU4NTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTg1OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjAzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuMTIvJS4xMCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjEwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2MTI2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMDQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIwNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjEyLyUuMTEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUzNTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTQwMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjA1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuMTIvJS4xMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1Mzc0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU0MDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIwNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjEyLyUuMTEvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1Mzc0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUzODMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIwNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS8lLjEyLyUuMTEvJS8lL3Byb3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUzNzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTM3OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjA4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS8lLyUuMTIvJS4xMS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTM5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1Mzk5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMDkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lL3Byb3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ0MTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDQzMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNzYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIxMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NDMzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ0NzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIxMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUvJS4xL21haW5fY29tcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDQ2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NDc3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMTIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjYxNTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzU4NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTA3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMTMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjIyNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3NTc2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMDgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIxNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjYyMzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjI5OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjE1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2MjMyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjYyOTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIxNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2MjMyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjYyNTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIxNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUvJS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjYyMzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjI0MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjE4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS8lLyUvJS9wcm9wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2MjMyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjYyMzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIxOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUvJS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjI1MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2MjU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMjAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjI5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2Mjk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMjEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjYzOTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzU3MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTEwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMjIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjQ1OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NDkwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMTEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIyMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUuMS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY0OTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjUwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjI0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuMS9wcm9wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NDkxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY0OTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIyNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUuMS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY1MDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjUxMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTExIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMjYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NTEyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY1MjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIyNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUuMS8lLjMvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjUxMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NTIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMjgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS4zLyUvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjUxMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NTE2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMjkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NTI4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY1MzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjExMSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjMwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjUzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NTQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMzEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS41L2kiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY1MzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjUzNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjMyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuNS9ob3Jfc3BhY2luZyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjUzOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NTQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMzMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS42Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NTUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY1NTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjExMSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjM0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuNyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjU1NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NTczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMzUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS43L2kiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY1NTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjU1OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjM2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuNy92ZXJ0X3NwYWNpbmciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY1NjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjU3MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjM3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuOCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjU3NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NTg1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMTEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIzOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUuMS8lLjkiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY4NjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzQzOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTE4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMzkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY5NDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzQyNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTE5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNDAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzAwOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3NDEyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI0MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUuMS8lLjkvJS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcwMjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzA1NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTIxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNDIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45LyUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcwNTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzA2NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuOS8lLyUvJS4xL3Byb3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcwNTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzA2MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQ0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuOS8lLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MDY5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcwNzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEyMSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQ1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuOS8lLyUvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MDcxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcwNzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI0NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUuMS8lLjkvJS8lLyUuMy9wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MDcxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcwNzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI0NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUuMS8lLjkvJS8lLyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzA3OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3MDg3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMjEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI0OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUuMS8lLjkvJS8lLyUuNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzA4OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3MDk0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNDkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45LyUvJS8lLjUvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzA4OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3MDg5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45LyUvJS8lLjYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcwOTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzEzMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTIxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45LyUvJS8lLjciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcxMzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzE0MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjUyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuOS8lLyUvJS43L3Byb3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcxMzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzEzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjUzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuOS8lLyUvJS44Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MTQ0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcxNDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEyMiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjU0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuOS8lLyUvJS45Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MTQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcxNTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI1NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUuMS8lLjkvJS8lLyUuOS9wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MTQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcxNDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI1NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUuMS8lLjkvJS8lLyUuMTAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcxNTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzE3NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTIyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45LyUvJS9idWZmc2l6ZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzE3NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3MTgzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45LyUvJS8lLjExIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MTg1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcyMzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEyMiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjU5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuOS8lLyUvJS4xMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzIzMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3MjQwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNjAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45LyUvJS8lLjEyL3Byb3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcyMzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzIzNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjYxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuOS8lLyUvJS4xMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzI0MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3MjQzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMjMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI2MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUuMS8lLjkvJS8lLyUuMTQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcyNDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzI1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjYzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuOS8lLyUvJS4xNC9wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MjQ0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcyNDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI2NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUuMS8lLjkvJS8lLyUuMTUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcyNTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzMyMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTIzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNjUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45LyUvJS8lLjE2Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MzIzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjczMzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI2NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUuMS8lLjkvJS8lLyUuMTYvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzMyMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3MzI3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNjciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45LyUvJS8lLjE3Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MzM0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjczMzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEyNCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjY4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuOS8lLyUvJS4xOCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzMzNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3MzQyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNjkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45LyUvJS8lLjE4L3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjczMzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzMzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjcwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuOS8lLyUvJS4xOSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzM0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3NDAyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMjQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI3MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUuMS8lLjkvJS8lLyUuMjAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcwMTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzAyNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjcyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuOS8lLyUvJS4yMC9idWZmc2l6ZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzAxMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3MDIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNzMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45LyUvJS8lLjIwLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcwMjQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzAyNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjc0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuOS8lL2J1ZmZzaXplIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2OTUzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcwMDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjExOSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjc1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuOS8lL2J1ZmZzaXplLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY5NzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzAwMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjc2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuOS8lL2J1ZmZzaXplLyUvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjk5OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3MDAwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNzciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45L3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY4NzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjg4MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTE4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNzgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjg4NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2OTM5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNzkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45LyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2OTEwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY5MzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUuMS8lLjkvJS4xLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjkxMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2OTE5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yODEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45LyUuMS8lLyUvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjkxMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2OTE0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yODIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS45LyUuMS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjkzMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2OTM3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yODMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS4xMCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzU0NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3NTY3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMzIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUuMS8lLjExIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NDAzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY0NTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUuMS8lLjExLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY0MDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjQ0OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjg2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuMTEvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NDIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY0NDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUuMS8lLjExLyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NDIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY0MzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLyUuMS8lLjExLyUvJS8lL3Byb3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY0MjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjQyNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjg5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xLyUvJS4xLyUuMTEvJS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjQ0MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NDQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS8lLjEvJS4xMS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY0NDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjQ1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjkxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4xL3Byb3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjYxNTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjE3MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTA3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOTIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjEvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2MTc0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjYyMTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMS8lLjEvbWFpbl9jb21wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2MjA5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjYyMTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODM3MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4ODI4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNTUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMi8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4NDM2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg4MTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE1NiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjk2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4yLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODUwMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4ODA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNTciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMi8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODU2OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NTkxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNTgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMi8lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4NTkyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg2MDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMi8lLyUvJS4xL2RzdF9jb21wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4NTkyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg2MDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMwMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMi8lLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4NjA3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg2MDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE1OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzAxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4yLyUvJS8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg2MDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODYzMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzAyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4yLyUvJS8lLjMvY29ubiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODYyNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NjI5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMDMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjIvJS8lLyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODYzMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NjQyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNTgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMwNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMi8lLyUvJS41Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4NjQzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg2NTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMwNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMi8lLyUvJS41L3NyY19jb21wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4NjQzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg2NTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMwNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMi8lLyUvJS42Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4NjU4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg2NTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE1OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzA3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4yLyUvJS8lLjciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg2NjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODY4MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzA4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4yLyUvJS8lLjcvY29ubiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODY3OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NjgyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMDkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjIvJS8lLyUuOCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODY4NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NjkwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNTgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMxMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMi8lLyUvc3JjX2NvbXAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg1MDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODU2NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTU3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjIvJS8lL3NyY19jb21wLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg1MzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODU2NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzEyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4yLyUvJS9zcmNfY29tcC8lL2Nvbm4iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg1NjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODU2NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzEzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4yLyUvZHN0X2NvbXAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg0NDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODQ5NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTU2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMTQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjIvJS9kc3RfY29tcC8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4NDY0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg0OTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMxNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMi8lL2RzdF9jb21wLyUvY29ubiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODQ5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NDk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMTYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjIvY29ubiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODM3OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4Mzk0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNTUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMxNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuMi8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjgzOTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODQyOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzE4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4yLyUuMS9tYWluX2NvbXAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg0MTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODQyOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzE5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MDI4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkwODIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE2NiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzIwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MDg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk0NjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE2OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzIxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS40LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjkxNTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTE4OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTY5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMjIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjQvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MTkwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkxOTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMyMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuNC8lLjEvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTE5MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5MTk0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjQvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MjAxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkyNDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE2OSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzI1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS40LyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTQzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5NDU5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNzciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMyNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0LyUuNC9wcm9wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MDkwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkxMDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE2OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzI3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDQvJS40LyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTEwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5MTUyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMjgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjQvJS40L21haW5fY29tcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTE0MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5MTUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMjkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC8lLjUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk2MzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTY3NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTgxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMzAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NC9tYWluX2NvbXAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQzNTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDQwNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNzUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMzMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0L21haW5fY29tcC8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0Mzc4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ0MDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMzMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ0L21haW5fY29tcC8lL21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0Mzk5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ0MDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMzMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ1Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjk4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEzMTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMzNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlRELyUuMS8lLjQ1LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEyOTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTMwOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzM1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDUvJS9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTI5OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMzAzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMzYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURC8lLjEvJS40NS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEzMTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTMxNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzM3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvJS4xLyUuNDYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEzMjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTMzMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzM4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEyMTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTIyMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lY29yZTpFQW5ub3RhdGlvbj4KKzwveG1pOlhNST4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX2RpYWdyYW1fcnRkLm10bCBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX2RpYWdyYW1fcnRkLm10bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMmJlZjhiCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfZGlhZ3JhbV9ydGQubXRsCkBAIC0wLDAgKzEsMTg1IEBACitbY29tbWVudCBlbmNvZGluZyA9IFVURi04IC9dCitbY29tbWVudF0KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIElOVEVNUE9SQSBTLkEuCisgKgorICogVGhpcyBzb2Z0d2FyZSBpcyBhIGNvbXB1dGVyIHByb2dyYW0gd2hvc2UgcHVycG9zZSBpcyB0byB0cmFuc2Zvcm0gUm9ib3RNTCBtb2RlbHMKKyAqIGludG8gUlRNYXBzIGRpYWdyYW1zIGFuZCBSVE1hcHMgY29tcG9uZW50cyB2aWEgc291cmNlIGNvZGUgZ2VuZXJhdGlvbiB0ZWNobmlxdWVzLgorICogCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBOaWNvbGFzIERVIExBQyAoSU5URU1QT1JBKSAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK1svY29tbWVudF0KK1ttb2R1bGUgZ2VuZXJhdGVfcnRtYXBzX2RpYWdyYW1fcnRkKCdodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMy4wLjAvVU1MJywgJ2h0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMScpXQorCitbaW1wb3J0IG9yZzo6ZWNsaXBzZTo6cGFweXJ1czo6cm9ib3RtbDo6Z2VuZXJhdG9yczo6Y29tbW9uOjptbXF1ZXJpZXM6OkdlbmVyYWxRdWVyaWVzIC9dCitbaW1wb3J0IG9yZzo6ZWNsaXBzZTo6cGFweXJ1czo6cm9ib3RtbDo6Z2VuZXJhdG9yczo6Y29tbW9uOjptbXF1ZXJpZXM6OkFyY2hpdGVjdHVyZVF1ZXJpZXMgL10KK1tpbXBvcnQgb3JnOjplY2xpcHNlOjpwYXB5cnVzOjpyb2JvdG1sOjpnZW5lcmF0b3JzOjppbnRlbXBvcmE6OnJ0bWFwczo6UlRNYXBzRGF0YVR5cGVRdWVyaWVzIC9dCisKKworW3RlbXBsYXRlIHB1YmxpYyBnZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQobW9kZWwgOiBNb2RlbCkge3ZlcnRfc3BhY2luZyA6IEludGVnZXIgPSA1MDsgaG9yX3NwYWNpbmcgOiBJbnRlZ2VyID0gNTA7fV0KKworCisJW2ZpbGUgKG1vZGVsLm5hbWUgKyAnLnJ0ZCcsIGZhbHNlLCAnVVRGLTgnKV0KKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04IiBzdGFuZGFsb25lPSJubyI/PgorPFJUTWFwc0RpYWdyYW0geG1sbnM9Imh0dHA6Ly9zY2hlbWFzLmludGVtcG9yYS5jb20vUlRNYXBzLzIwMTEvUlRNYXBzRmlsZXMiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIEVuZ2luZVZlcnNpb249IjQuMSIgdmVyc2lvbj0iNC4xIiB4c2k6c2NoZW1hTG9jYXRpb249Imh0dHA6Ly9zY2hlbWFzLmludGVtcG9yYS5jb20vUlRNYXBzLzIwMTEvUlRNYXBzRmlsZXMgaHR0cDovL3d3dy5pbnRlbXBvcmEuY29tL3NjaGVtYXMvUlRNYXBzLzIwMTEvUlRNYXBzRGlhZ3JhbS54c2QgaHR0cDovL3NjaGVtYXMuaW50ZW1wb3JhLmNvbS9SVE1hcHMvMjAxMS9SVE1hcHNGaWxlcyBodHRwOi8vd3d3LmludGVtcG9yYS5jb20vc2NoZW1hcy9SVE1hcHMvMjAxMS9SVE1hcHNEaWFncmFtX1JUQm9hcmRWaWV3LnhzZCI+CisgIDxSZXF1aXJlZFBhY2thZ2VzPgorICAgIDxGaWxlPjwhWydbJy9dQ0RBVEFbJ1snL10vZHVtbXkvYWJzb2x1dGUvcGF0aC9mb3IvcnRtYXBzX1ttb2RlbC5uYW1lL10ucGNrWyddJy9dWyddJy9dPgorICAgICAgPFJlbGF0aXZlPjwhWydbJy9dQ0RBVEFbJ1snL10lUlRNQVBTX0RJQUdSQU1ESVIlL3VzZXJfc2RrL1tnZXRQY2tPdXRwdXREaXIoJ2R1bW15JykvXXJ0bWFwc19bbW9kZWwubmFtZS9dLnBja1snXScvXVsnXScvXT48L1JlbGF0aXZlPgorICAgIDwvRmlsZT4KKyAgPC9SZXF1aXJlZFBhY2thZ2VzPgorICA8UmVxdWlyZWRNYWNyb1BhY2thZ2VzPgorCVtmb3IgKGVsdDogTmFtZWRFbGVtZW50IHwgZ2V0Q29tcG9uZW50TW9kZWxzKG1vZGVsKSldCisJCVtsZXQgYyA6IENsYXNzID0gZWx0Lm9jbEFzVHlwZShDbGFzcyldCisJCVtpZiAoYy5oYXNSVE1hcHNOYXRpdmVJbXBsZW1lbnRhdGlvbigpID0gdHJ1ZSldCisJCTxGaWxlPjwhWydbJy9dQ0RBVEFbJ1snL11bYy5nZXRSVE1hcHNOYXRpdmVMaWJyYXJ5UGF0aEZyb21HZW5lcmljQXR0cmlidXRlKCkvXVsnXScvXVsnXScvXT4KKwkgICAgICA8UmVsYXRpdmU+PCFbJ1snL11DREFUQVsnWycvXVtjLmdldFJUTWFwc05hdGl2ZUxpYnJhcnlQYXRoRnJvbUdlbmVyaWNBdHRyaWJ1dGUoKS9dWyddJy9dWyddJy9dPjwvUmVsYXRpdmU+CisJICAgIDwvRmlsZT4KKwkJW2Vsc2VpZiAoaXNNYWNyb0NvbXBvbmVudChjKSldCisgICAgPEZpbGU+PCFbJ1snL11DREFUQVsnWycvXS9kdW1teS9hYnNvbHV0ZS9wYXRoL2Zvci9bYy5uYW1lICsgJy5ydG1jJy9dWyddJy9dWyddJy9dPgorICAgICAgPFJlbGF0aXZlPjwhWydbJy9dQ0RBVEFbJ1snL10lUlRNQVBTX0RJQUdSQU1ESVIlL1tjLm5hbWUgKyAnLnJ0bWMnL11bJ10nL11bJ10nL10+PC9SZWxhdGl2ZT4KKyAgICA8L0ZpbGU+CisJCVsvaWZdCisJCVsvbGV0XQorCVsvZm9yXQorICA8L1JlcXVpcmVkTWFjcm9QYWNrYWdlcz4KKyAgPE1hY3JvQ29tcG9uZW50RGVmaW5pdGlvbnMvPgorICA8RW5naW5lUHJvcGVydGllcz4KKyAgICA8UHJvcGVydHkgTG9uZ05hbWU9IkVuZ2luZS5zdGFydFRpbWVzcGVlZCIgVHlwZT0iMSI+MTAwMDwvUHJvcGVydHk+CisgICAgPFByb3BlcnR5IExvbmdOYW1lPSJFbmdpbmUuc3RhcnRUaW1lIiBUeXBlPSIxIj4wPC9Qcm9wZXJ0eT4KKyAgICA8UHJvcGVydHkgTG9uZ05hbWU9IkVuZ2luZS5zZXNzaW9uIiBUeXBlPSIzIj48IVsnWycvXUNEQVRBWydbJy9ddW5zcGVjaWZpZWRbJ10nL11bJ10nL10+PC9Qcm9wZXJ0eT4KKyAgICA8UHJvcGVydHkgTG9uZ05hbWU9IkVuZ2luZS5yZWNvcmRpbmdBdFN0YXJ0IiBUeXBlPSIwIj50cnVlPC9Qcm9wZXJ0eT4KKyAgICA8UHJvcGVydHkgTG9uZ05hbWU9IkVuZ2luZS5yZWNvcmRpbmciIFR5cGU9IjAiPnRydWU8L1Byb3BlcnR5PgorICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iRW5naW5lLnNlcXVlbnRpYWxTdGFydCIgVHlwZT0iMCI+ZmFsc2U8L1Byb3BlcnR5PgorICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iRW5naW5lLmF1dG9EZXRlY3RTdGFydFRpbWUiIFR5cGU9IjAiPnRydWU8L1Byb3BlcnR5PgorICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iRW5naW5lLmNvcmVGdW5jdGlvbnNUb1NhdmVJbkRpYWciIFR5cGU9IjQiPjwhWydbJy9dQ0RBVEFbJ1snL10wfC0xWyddJy9dWyddJy9dPjwvUHJvcGVydHk+CisgIDwvRW5naW5lUHJvcGVydGllcz4KKyAgPENsb2Nrc01hbmFnZW1lbnQ+CisgICAgPFByb3BlcnR5IExvbmdOYW1lPSJDbG9ja3NNYW5hZ2VtZW50LmFjdGl2ZUNsb2NrIiBUeXBlPSI0Ij48IVsnWycvXUNEQVRBWydbJy9dMXwwfFJUTWFwc19zdGFuZGFyZF9jbG9ja1snXScvXVsnXScvXT48L1Byb3BlcnR5PgorICA8L0Nsb2Nrc01hbmFnZW1lbnQ+CisgIFtjb21tZW50XQorCTxNYWNyb0NvbXBvbmVudCBJbnN0YW5jZU5hbWU9Im15X21hY3JvX2NvbXBvbmVudF82IiBNb2RlbD0ibXlfbWFjcm9fY29tcG9uZW50IiB4PSI1MjgiIHk9IjI2NCIgej0iMCI+CisJICAgIDxJbnB1dFByb3BlcnR5T3ZlcmxvYWQgTG9uZ05hbWU9ImlucHV0XzEucmVhZGVyVHlwZSIgVHlwZT0iMSI+MDwvSW5wdXRQcm9wZXJ0eU92ZXJsb2FkPgorCSAgICA8SW5wdXRQcm9wZXJ0eU92ZXJsb2FkIExvbmdOYW1lPSJpbnB1dF8xLnN1YnNhbXBsaW5nIiBUeXBlPSIxIj4xPC9JbnB1dFByb3BlcnR5T3ZlcmxvYWQ+CisJICAgIDxPdXRwdXRQcm9wZXJ0eU92ZXJsb2FkIExvbmdOYW1lPSJvdXRwdXRfMS5zdWJzYW1wbGluZyIgVHlwZT0iMSI+MTwvT3V0cHV0UHJvcGVydHlPdmVybG9hZD4KKwkgICAgPE91dHB1dFByb3BlcnR5T3ZlcmxvYWQgTG9uZ05hbWU9Im91dHB1dF8xLmZpZm9zaXplIiBUeXBlPSIxIj4xNjwvT3V0cHV0UHJvcGVydHlPdmVybG9hZD4KKwkgICAgPE91dHB1dFByb3BlcnR5T3ZlcmxvYWQgTG9uZ05hbWU9Im91dHB1dF8xLnBlcmlvZGljIiBUeXBlPSIwIj5mYWxzZTwvT3V0cHV0UHJvcGVydHlPdmVybG9hZD4KKyAgCTwvTWFjcm9Db21wb25lbnQ+CisJWy9jb21tZW50XQorCVtsZXQgbWFpbl9jb21wIDogQ2xhc3MgPSBnZXRSb290Q2xhc3NGb3JNb2RlbChtb2RlbCldCisJCQlbZm9yIChwcm9wOiBQcm9wZXJ0eSB8IGdldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnQobWFpbl9jb21wKSldCisJCQkJW2lmIChwcm9wLnR5cGUub2NsQXNUeXBlKENsYXNzKS5oYXNSVE1hcHNOYXRpdmVJbXBsZW1lbnRhdGlvbigpID0gdHJ1ZSldCisJCQkgICAgPE1hY3JvQ29tcG9uZW50IEluc3RhbmNlTmFtZT0iW3Byb3AubmFtZS9dIiBNb2RlbD0iW3Byb3AudHlwZS5vY2xBc1R5cGUoQ2xhc3MpLmdldFJUTWFwc05hdGl2ZUNvbXBvbmVudE5hbWVGcm9tR2VuZXJpY0F0dHJpYnV0ZSgpL10iIHg9IltpICogaG9yX3NwYWNpbmcgKyA1MC9dIiB5PSJbaSAqIHZlcnRfc3BhY2luZy9dIiB6PSIwIj4KKwkJCSAgICAgIFtjb21tZW50XQorCQkJCSAgPElucHV0UHJvcGVydHlPdmVybG9hZCBMb25nTmFtZT0ic3RyZWFtX2luLnJlYWRlclR5cGUiIFR5cGU9IjEiPjA8L0lucHV0UHJvcGVydHlPdmVybG9hZD4KKwkJCSAgICAgIDxPdXRwdXRQcm9wZXJ0eU92ZXJsb2FkIExvbmdOYW1lPSJwb3NpdGlvbi5maWZvc2l6ZSIgVHlwZT0iMSI+MTY8L091dHB1dFByb3BlcnR5T3ZlcmxvYWQ+CisJCQkJICBbL2NvbW1lbnRdCisJCQkJICBbZm9yIChwIDogUG9ydCB8IGdldE91dHB1dFBvcnRzRm9yRWxlbWVudChwcm9wLnR5cGUub2NsQXNUeXBlKEVsZW1lbnQpKSldCisJCQkJCVtsZXQgYnVmZnNpemUgOiBJbnRlZ2VyID0gZ2V0T3V0cHV0UG9ydEJ1ZmZlclNpemUocCldCisJCQkJCVtpZiAoYnVmZnNpemUgPiAwKV0KKwkJCQkgICAgICA8T3V0cHV0UHJvcGVydHlPdmVybG9hZCBMb25nTmFtZT0iW3AubmFtZS9dLmZpZm9zaXplIiBUeXBlPSIxIj5bYnVmZnNpemUvXTwvT3V0cHV0UHJvcGVydHlPdmVybG9hZD4KKwkJCQkJWy9pZl0KKwkJCQkJWy9sZXRdCisJCQkJICBbL2Zvcl0KKwkJCSAgICA8L01hY3JvQ29tcG9uZW50PgkJCQkJCisJCQkJW2Vsc2VpZiAgKGlzTWFjcm9Db21wb25lbnQocHJvcC50eXBlLm9jbEFzVHlwZShDbGFzcykpKV0KKwkJCSAgICA8TWFjcm9Db21wb25lbnQgSW5zdGFuY2VOYW1lPSJbcHJvcC5uYW1lL10iIE1vZGVsPSJtYWNyb19bcHJvcC50eXBlLm5hbWUvXSIgeD0iW2kgKiBob3Jfc3BhY2luZyArIDUwL10iIHk9IltpICogdmVydF9zcGFjaW5nL10iIHo9IjAiPgorCQkJICAgICAgW2NvbW1lbnRdCisJCQkJICA8SW5wdXRQcm9wZXJ0eU92ZXJsb2FkIExvbmdOYW1lPSJzdHJlYW1faW4ucmVhZGVyVHlwZSIgVHlwZT0iMSI+MDwvSW5wdXRQcm9wZXJ0eU92ZXJsb2FkPgorCQkJICAgICAgPE91dHB1dFByb3BlcnR5T3ZlcmxvYWQgTG9uZ05hbWU9InBvc2l0aW9uLmZpZm9zaXplIiBUeXBlPSIxIj4xNjwvT3V0cHV0UHJvcGVydHlPdmVybG9hZD4KKwkJCQkgIFsvY29tbWVudF0KKwkJCQkgIFtmb3IgKHAgOiBQb3J0IHwgZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50KHByb3AudHlwZS5vY2xBc1R5cGUoRWxlbWVudCkpKV0KKwkJCQkJW2xldCBidWZmc2l6ZSA6IEludGVnZXIgPSBnZXRPdXRwdXRQb3J0QnVmZmVyU2l6ZShwKV0KKwkJCQkJW2lmIChidWZmc2l6ZSA+IDApXQorCQkJCSAgICAgIDxPdXRwdXRQcm9wZXJ0eU92ZXJsb2FkIExvbmdOYW1lPSJbcC5uYW1lL10uZmlmb3NpemUiIFR5cGU9IjEiPltidWZmc2l6ZS9dPC9PdXRwdXRQcm9wZXJ0eU92ZXJsb2FkPgorCQkJCQlbL2lmXQorCQkJCQlbL2xldF0KKwkJCQkgIFsvZm9yXQorCQkJICAgIDwvTWFjcm9Db21wb25lbnQ+CisJCQkJWy9pZl0KKwkJCVsvZm9yXQorCQkJW2ZvciAocHJvcDogUHJvcGVydHkgfCBnZXRMZXZlbDFTdWJDb21wb25lbnRzRm9yQ29tcG9uZW50KG1haW5fY29tcCkpXQorCQkJCVtpZiAocHJvcC50eXBlLm9jbEFzVHlwZShDbGFzcykuaGFzUlRNYXBzTmF0aXZlSW1wbGVtZW50YXRpb24oKSA9IHRydWUpXQorCQkJCQlbY29tbWVudF1EbyBub3RoaW5nOiBpdCB3aWxsIGJlIGluc3RhbmNpYXRlZCBhcyBhIG5hdGl2ZSBtYWNyby1jb21wb25lbnQuWy9jb21tZW50XQorCQkJCVtlbHNlaWYgKGlzTWFjcm9Db21wb25lbnQocHJvcC50eXBlLm9jbEFzVHlwZShDbGFzcykpPWZhbHNlKV0KKwkJICAgIAk8Q29tcG9uZW50IEluc3RhbmNlTmFtZT0iW3Byb3AubmFtZS9dIiBNb2RlbD0iW3Byb3AudHlwZS5uYW1lL10iIHg9IltpICogaG9yX3NwYWNpbmcvXSIgeT0iW2kgKiB2ZXJ0X3NwYWNpbmcvXSIgej0iMCI+CisJCQkJICBbY29tbWVudF0KKwkJCSAgICAgIDxJbnB1dCBMb25nTmFtZT0iUkdCMllVVl83LmlucHV0IiBOYW1lPSJpbnB1dCI+CisJCQkgICAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iUkdCMllVVl83LmlucHV0LnJlYWRlclR5cGUiIFR5cGU9IjEiPjA8L1Byb3BlcnR5PgorCQkJICAgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IlJHQjJZVVZfNy5pbnB1dC5zdWJzYW1wbGluZyIgVHlwZT0iMSI+MTwvUHJvcGVydHk+CisJCQkgICAgICA8L0lucHV0PgorCQkJCSAgWy9jb21tZW50XQorCQkJCSAgW2ZvciAocCA6IFBvcnQgfCBnZXRPdXRwdXRQb3J0c0ZvckVsZW1lbnQocHJvcC50eXBlLm9jbEFzVHlwZShFbGVtZW50KSkpXQorCQkJCQlbbGV0IGJ1ZmZzaXplIDogSW50ZWdlciA9IGdldE91dHB1dFBvcnRCdWZmZXJTaXplKHApXQorCQkJCQlbaWYgKGJ1ZmZzaXplID4gMCldCisJCQkJICAgICAgPE91dHB1dCBMb25nTmFtZT0iW3Byb3AubmFtZS9dLltwLm5hbWUvXSIgTmFtZT0iW3AubmFtZS9dIj4KKwkJCQkgICAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iW3Byb3AubmFtZS9dLltwLm5hbWUvXS5maWZvc2l6ZSIgVHlwZT0iMSI+W2J1ZmZzaXplL108L1Byb3BlcnR5PgorCQkJCSAgICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJbcHJvcC5uYW1lL10uW3AubmFtZS9dLnBlcmlvZGljIiBUeXBlPSIwIj5mYWxzZTwvUHJvcGVydHk+CisJCQkJICAgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9Iltwcm9wLm5hbWUvXS5bcC5uYW1lL10uc3Vic2FtcGxpbmciIFR5cGU9IjEiPjE8L1Byb3BlcnR5PgorCQkJCSAgICAgIDwvT3V0cHV0PgorCQkJCQlbL2lmXQorCQkJCQlbL2xldF0KKwkJCQkgIFsvZm9yXQorCQkJCVtjb21tZW50XQorCQkJICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJSR0IyWVVWXzcucGxhbmFyIiBUeXBlPSIwIj5mYWxzZTwvUHJvcGVydHk+CisJCQkJWy9jb21tZW50XQorCQkgICAgCTwvQ29tcG9uZW50PgorCQkJCVsvaWZdCisJCQlbL2Zvcl0KKwlbY29tbWVudF0KKwlbZm9yIChlbHQ6IE5hbWVkRWxlbWVudCB8IGdldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUobW9kZWwsJ1NlbnNvcicpKV0KKwkJW2xldCBjIDogQ2xhc3MgPSBlbHQub2NsQXNUeXBlKENsYXNzKV0KKwkJICA8Q29tcG9uZW50IEluc3RhbmNlTmFtZT0iW2MubmFtZS9dX2kiIE1vZGVsPSJbYy5uYW1lL10iIHg9IjEwMCIgeT0iW2kgKiB2ZXJ0X3NwYWNpbmcvXSIgej0iMCI+CisJCSAgPC9Db21wb25lbnQ+CisJCVsvbGV0XQorCVsvZm9yXQorCVtmb3IgKGVsdDogTmFtZWRFbGVtZW50IHwgZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZShtb2RlbCwnU3lzdGVtJykpXQorCQlbbGV0IGMgOiBDbGFzcyA9IGVsdC5vY2xBc1R5cGUoQ2xhc3MpXQorCQkgIDxDb21wb25lbnQgSW5zdGFuY2VOYW1lPSJbYy5uYW1lL11faSIgTW9kZWw9IltjLm5hbWUvXSIgeD0iMzAwIiB5PSJbaSAqIHZlcnRfc3BhY2luZy9dIiB6PSIwIj4KKwkJICA8L0NvbXBvbmVudD4KKwkJWy9sZXRdCisJWy9mb3JdCisJW2ZvciAoZWx0OiBOYW1lZEVsZW1lbnQgfCBnZXRFbGVtZW50c1dpdGhTdGVyZW90eXBlKG1vZGVsLCdBY3R1YXRvcicpKV0KKwkJW2xldCBjIDogQ2xhc3MgPSBlbHQub2NsQXNUeXBlKENsYXNzKV0KKwkJICA8Q29tcG9uZW50IEluc3RhbmNlTmFtZT0iW2MubmFtZS9dX2kiIE1vZGVsPSJbYy5uYW1lL10iIHg9IjUwMCIgeT0iW2kgKiB2ZXJ0X3NwYWNpbmcvXSIgej0iMCI+CisJCSAgPC9Db21wb25lbnQ+CisJCVsvbGV0XQorCVsvZm9yXQorCVsvY29tbWVudF0KKwkJCVtmb3IgKGNvbm4gOiBDb25uZWN0b3IgfCBnZXRJbnRlcm5hbENvbm5lY3RvcnMobWFpbl9jb21wKSldCisJCQlbbGV0IGRzdF9jb21wIDogUHJvcGVydHkgPSBnZXREZXN0Q29tcG9uZW50Rm9yQ29ubmVjdG9yKGNvbm4pXQorCQkJW2xldCBzcmNfY29tcCA6IFByb3BlcnR5ID0gZ2V0U291cmNlQ29tcG9uZW50Rm9yQ29ubmVjdG9yKGNvbm4pXQorCQkJPENvbm5lY3Rpb24gSW5wdXQ9Iltkc3RfY29tcC5uYW1lL10uW2dldERlc3RQb3J0TmFtZShjb25uKS9dIiBPdXRwdXQ9IltzcmNfY29tcC5uYW1lL10uW2dldFNvdXJjZVBvcnROYW1lKGNvbm4pL10iLz4KKwkJICAgIFtjb21tZW50XTxDb25uZWN0aW9uIElucHV0PSJHUFNfTk1FQTAxODNfMy5pU3RyZWFtOCIgT3V0cHV0PSJTZXJpYWxQb3J0XzIuc3RyZWFtT3V0cHV0Ii8+Wy9jb21tZW50XQorCQkJWy9sZXRdCisJCQlbL2xldF0KKwkJCVsvZm9yXQorCVtjb21tZW50XQorICA8Q29ubmVjdGlvbiBJbnB1dD0iSW1hZ2VWaWV3ZXJfVk1SOV81LmlucHV0IiBPdXRwdXQ9Im15X21hY3JvX2NvbXBvbmVudF82Lm91dHB1dF8xIi8+CisgIDxDb25uZWN0aW9uIElucHV0PSJteV9tYWNyb19jb21wb25lbnRfNi5pbnB1dF8xIiBPdXRwdXQ9IldlYmNhbV8xLm91dHB1dElwbEltYWdlIi8+Wy9jb21tZW50XQorPFJUQm9hcmRWaWV3IElEPSJKYXZhU3R1ZGlvMS4wIj4KKyAgICA8RGVzY3JpcHRpb24vPgorCQlbZm9yIChwcm9wOiBQcm9wZXJ0eSB8IGdldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnQobWFpbl9jb21wKSldCisJICAgIDxDb21wb25lbnRCb3ggSW5zdGFuY2VOYW1lPSJbcHJvcC5uYW1lL10iIHJldmVyc2VkPSJmYWxzZSI+CisJICAgICAgPERlc2NyaXB0aW9uLz4KKwkgICAgICBbY29tbWVudF08SW5wdXRJbmZvcyBOYW1lPSJpbnB1dCI+CisJICAgICAgICA8RGVzY3JpcHRpb24vPgorCSAgICAgIDwvSW5wdXRJbmZvcz4KKwkgICAgICA8T3V0cHV0SW5mb3MgTmFtZT0ib3V0cHV0SXBsSW1hZ2UiPgorCSAgICAgICAgPERlc2NyaXB0aW9uLz4KKwkgICAgICA8L091dHB1dEluZm9zPlsvY29tbWVudF0KKwkgICAgPC9Db21wb25lbnRCb3g+CisJWy9mb3JdCisgICAgW2NvbW1lbnRdPENvbm5lY3Rpb25TaGFwZSBJbnN0YW5jZU5hbWU9IkltYWdlVmlld2VyX1ZNUjlfNS5pbnB1dCIgY29sb3I9IjAiLz4KKyAgICA8Q29ubmVjdGlvblNoYXBlIEluc3RhbmNlTmFtZT0ibXlfbWFjcm9fY29tcG9uZW50XzYuaW5wdXRfMSIgY29sb3I9IjAiLz5bL2NvbW1lbnRdCisgIDwvUlRCb2FyZFZpZXc+Cis8L1JUTWFwc0RpYWdyYW0+CisJWy9sZXRdCisJWy9maWxlXQorWy90ZW1wbGF0ZV0KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX21hY3JvY29tcG9uZW50X3J0bWMuZW10bCBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX21hY3JvY29tcG9uZW50X3J0bWMuZW10bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mY2VkYjg0Ci0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfbWFjcm9jb21wb25lbnRfcnRtYy5lbXRsCkBAIC0wLDAgKzEsMzk1OCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzx4bWk6WE1JIHhtaTp2ZXJzaW9uPSIyLjAiIHhtbG5zOnhtaT0iaHR0cDovL3d3dy5vbWcub3JnL1hNSSIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgeG1sbnM6ZWNvcmU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUiIHhtbG5zOm10bD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9hY2NlbGVvL210bC8zLjAiIHhtbG5zOm9jbC5lY29yZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvRWNvcmUiPgorICA8bXRsOk1vZHVsZSBuYW1lPSJnZW5lcmF0ZV9ydG1hcHNfbWFjcm9jb21wb25lbnRfcnRtYyIgbnNVUkk9Im9yZzo6ZWNsaXBzZTo6cGFweXJ1czo6cm9ib3RtbDo6Z2VuZXJhdG9yczo6aW50ZW1wb3JhOjpydG1hcHM6OmZpbGVzOjpnZW5lcmF0ZV9ydG1hcHNfbWFjcm9jb21wb25lbnRfcnRtYyIgc3RhcnRIZWFkZXJQb3NpdGlvbj0iNzc1IiBlbmRIZWFkZXJQb3NpdGlvbj0iOTc4Ij4KKyAgICA8aW5wdXQ+CisgICAgICA8dGFrZXNUeXBlc0Zyb20gaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvIi8+CisgICAgPC9pbnB1dD4KKyAgICA8aW5wdXQ+CisgICAgICA8dGFrZXNUeXBlc0Zyb20gaHJlZj0iaHR0cDovL1BhcHlydXMvUm9ib3RNTC8xIy8iLz4KKyAgICA8L2lucHV0PgorICAgIDxpbXBvcnRzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuZW10bCMvMCIvPgorICAgIDxpbXBvcnRzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wIi8+CisgICAgPGltcG9ydHMgaHJlZj0iLi4vUlRNYXBzRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAiLz4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6VGVtcGxhdGUiIG5hbWU9ImdlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlIiB2aXNpYmlsaXR5PSJQdWJsaWMiPgorICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGb3JCbG9jayI+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6TGV0QmxvY2siPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6SWZCbG9jayI+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZpbGVCbG9jayIgb3Blbk1vZGU9Ik92ZXJXcml0ZSI+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImbHQ7P3htbCB2ZXJzaW9uPSZxdW90OzEuMCZxdW90OyBlbmNvZGluZz0mcXVvdDtVVEYtOCZxdW90OyBzdGFuZGFsb25lPSZxdW90O25vJnF1b3Q7Pz4mI3hEOyYjeEE7Jmx0O01hY3JvUGFja2FnZSB4bWxucz0mcXVvdDtodHRwOi8vc2NoZW1hcy5pbnRlbXBvcmEuY29tL1JUTWFwcy8yMDExL1JUTWFwc0ZpbGVzJnF1b3Q7IHhtbG5zOnhzaT0mcXVvdDtodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSZxdW90OyB2ZXJzaW9uPSZxdW90OzQuMSZxdW90OyB4c2k6c2NoZW1hTG9jYXRpb249JnF1b3Q7aHR0cDovL3NjaGVtYXMuaW50ZW1wb3JhLmNvbS9SVE1hcHMvMjAxMS9SVE1hcHNGaWxlcyBodHRwOi8vd3d3LmludGVtcG9yYS5jb20vc2NoZW1hcy9SVE1hcHMvMjAxMS9SVE1hcHNEaWFncmFtLnhzZCBodHRwOi8vc2NoZW1hcy5pbnRlbXBvcmEuY29tL1JUTWFwcy8yMDExL1JUTWFwc0ZpbGVzIGh0dHA6Ly93d3cuaW50ZW1wb3JhLmNvbS9zY2hlbWFzL1JUTWFwcy8yMDExL1JUTWFwc0RpYWdyYW1fUlRCb2FyZFZpZXcueHNkJnF1b3Q7PiYjeEQ7JiN4QTsgICAgJmx0O1JlcXVpcmVkUGFja2FnZXM+JiN4RDsmI3hBOyYjeDk7ICAgICZsdDtGaWxlPiZsdDshIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJbIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IkNEQVRBIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJbIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii9kdW1teS9hYnNvbHV0ZS9wYXRoL2Zvci9ydG1hcHNfIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJyb290X21vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS9yb290X21vZGVsIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii5wY2siLz4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il0iPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iXSI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSI+JiN4RDsmI3hBOyYjeDk7ICAgICAgJmx0O1JlbGF0aXZlPiZsdDshIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJbIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IkNEQVRBIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJbIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiVSVE1BUFNfRElBR1JBTURJUiUvdXNlcl9zZGsvIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vUlRNYXBzRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAvZ2V0UGNrT3V0cHV0RGlyIi8+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJkdW1teSI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0icnRtYXBzXyIvPgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icm9vdF9tb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2Uvcm9vdF9tb2RlbCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIucGNrIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJdIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il0iPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iPiZsdDsvUmVsYXRpdmU+JiN4RDsmI3hBOyYjeDk7ICAgICZsdDsvRmlsZT4mI3hEOyYjeEE7ICAgICZsdDsvUmVxdWlyZWRQYWNrYWdlcz4mI3hEOyYjeEE7ICAgICZsdDtSZXF1aXJlZE1hY3JvUGFja2FnZXM+JiN4RDsmI3hBOyIvPgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZvckJsb2NrIj4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOklmQmxvY2siPgorICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeDk7JiN4OTsmbHQ7RmlsZT4mbHQ7ISIvPgorICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IlsiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iQ0RBVEEiLz4KKyAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJbIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uL1JUTWFwc0RhdGFUeXBlUXVlcmllcy5lbXRsIy8wL2dldFJUTWFwc05hdGl2ZUxpYnJhcnlQYXRoRnJvbUdlbmVyaWNBdHRyaWJ1dGUiLz4KKyAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InByb3AiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMS9wcm9wIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGVkRWxlbWVudC90eXBlIi8+CisgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VHlwZUV4cCIgZVR5cGU9Ii85L0NsYXNzIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnlfQ2xhc3Mvb2NsQXNUeXBlIi8+CisgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iXSI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJdIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ij4mI3hEOyYjeEE7JiN4OTsgICAgICAmbHQ7UmVsYXRpdmU+Jmx0OyEiLz4KKyAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJbIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IkNEQVRBIi8+CisgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iWyI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi9SVE1hcHNEYXRhVHlwZVF1ZXJpZXMuZW10bCMvMC9nZXRSVE1hcHNOYXRpdmVMaWJyYXJ5UGF0aEZyb21HZW5lcmljQXR0cmlidXRlIi8+CisgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwcm9wIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjEvcHJvcCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlZEVsZW1lbnQvdHlwZSIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVFeHAiIGVUeXBlPSIvOS9DbGFzcyI+CisgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55X0NsYXNzL29jbEFzVHlwZSIvPgorICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il0iPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iXSI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSI+Jmx0Oy9SZWxhdGl2ZT4mI3hEOyYjeEE7JiN4OTsgICAgJmx0Oy9GaWxlPiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgICAgICAgIDxpZkV4cHIgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi9SVE1hcHNEYXRhVHlwZVF1ZXJpZXMuZW10bCMvMC9oYXNSVE1hcHNOYXRpdmVJbXBsZW1lbnRhdGlvbiIvPgorICAgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InByb3AiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMS9wcm9wIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGVkRWxlbWVudC90eXBlIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVFeHAiIGVUeXBlPSIvOS9DbGFzcyI+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55X0NsYXNzL29jbEFzVHlwZSIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpCb29sZWFuTGl0ZXJhbEV4cCIgYm9vbGVhblN5bWJvbD0idHJ1ZSI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbl9DbGFzcy89Ii8+CisgICAgICAgICAgICAgICAgICA8L2lmRXhwcj4KKyAgICAgICAgICAgICAgICAgIDxlbHNlLz4KKyAgICAgICAgICAgICAgICAgIDxlbHNlSWY+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5OyYjeDk7Jmx0O0ZpbGU+Jmx0OyEiLz4KKyAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IlsiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iQ0RBVEEiLz4KKyAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IlsiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iL2R1bW15L2Fic29sdXRlL3BhdGgvZm9yLyIvPgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InByb3AiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMS9wcm9wIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGVkRWxlbWVudC90eXBlIi8+CisgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIucnRtYyIvPgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iXSI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJdIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ij4mI3hEOyYjeEE7JiN4OTsgICAgICAmbHQ7UmVsYXRpdmU+Jmx0OyEiLz4KKyAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IlsiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iQ0RBVEEiLz4KKyAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IlsiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJVJUTUFQU19ESUFHUkFNRElSJS8iLz4KKyAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwcm9wIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjEvcHJvcCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlZEVsZW1lbnQvdHlwZSIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLnJ0bWMiLz4KKyAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il0iPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iXSI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSI+Jmx0Oy9SZWxhdGl2ZT4mI3hEOyYjeEE7JiN4OTsgICAgJmx0Oy9GaWxlPiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgICAgICAgICAgPGlmRXhwciB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9pc01hY3JvQ29tcG9uZW50Ii8+CisgICAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icHJvcCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxL3Byb3AiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZWRFbGVtZW50L3R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VHlwZUV4cCIgZVR5cGU9Ii85L0NsYXNzIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnlfQ2xhc3Mvb2NsQXNUeXBlIi8+CisgICAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgICAgPC9pZkV4cHI+CisgICAgICAgICAgICAgICAgICA8L2Vsc2VJZj4KKyAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgPGxvb3BWYXJpYWJsZSBuYW1lPSJwcm9wIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICAgICAgICAgICAgICA8L2xvb3BWYXJpYWJsZT4KKyAgICAgICAgICAgICAgICA8aXRlclNldCB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiIgZVR5cGU9Ii82L1NlcXVlbmNlKFByb3BlcnR5KSI+CisgICAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRMZXZlbDFTdWJDb21wb25lbnRzRm9yQ29tcG9uZW50Ii8+CisgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYyIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lL2MiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgIDwvaXRlclNldD4KKyAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4OTsmbHQ7L1JlcXVpcmVkTWFjcm9QYWNrYWdlcz4mI3hEOyYjeEE7JiN4OTsmI3g5OyAgJmx0O01hY3JvQ29tcG9uZW50TW9kZWwgTW9kZWw9JnF1b3Q7bWFjcm9fIi8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvYyI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImcXVvdDsgVmVyc2lvbj0mcXVvdDsmcXVvdDs+JiN4RDsmI3hBOyYjeDk7JiN4OTsgICAgJmx0O01hY3JvQ29tcG9uZW50RGVmaW5pdGlvbnMvPiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGb3JCbG9jayI+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpJZkJsb2NrIj4KKyAgICAgICAgICAgICAgICAgIDxpZkV4cHIgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi9SVE1hcHNEYXRhVHlwZVF1ZXJpZXMuZW10bCMvMC9oYXNSVE1hcHNOYXRpdmVJbXBsZW1lbnRhdGlvbiIvPgorICAgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InByb3AiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS9wcm9wIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGVkRWxlbWVudC90eXBlIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVFeHAiIGVUeXBlPSIvOS9DbGFzcyI+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55X0NsYXNzL29jbEFzVHlwZSIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpCb29sZWFuTGl0ZXJhbEV4cCIgYm9vbGVhblN5bWJvbD0idHJ1ZSI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbl9DbGFzcy89Ii8+CisgICAgICAgICAgICAgICAgICA8L2lmRXhwcj4KKyAgICAgICAgICAgICAgICAgIDxlbHNlSWY+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5OyYjeDk7ICAgICYjeDk7Jmx0O0NvbXBvbmVudCBJbnN0YW5jZU5hbWU9JnF1b3Q7Ii8+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwcm9wIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvcHJvcCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImcXVvdDsgTW9kZWw9JnF1b3Q7Ii8+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icHJvcCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1L3Byb3AiPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZWRFbGVtZW50L3R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiZxdW90OyB4PSZxdW90OyIvPgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iaSIgcmVmZXJyZWRWYXJpYWJsZT0iLzc3Ij4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6SW50ZWdlckxpdGVyYWxFeHAiIGludGVnZXJTeW1ib2w9IjUwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyX0NsYXNzLyoiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpJbnRlZ2VyTGl0ZXJhbEV4cCIgaW50ZWdlclN5bWJvbD0iNTAiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXJfQ2xhc3MvKyIvPgorICAgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImcXVvdDsgeT0mcXVvdDsiLz4KKyAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImkiIHJlZmVycmVkVmFyaWFibGU9Ii83NyI+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkludGVnZXJMaXRlcmFsRXhwIiBpbnRlZ2VyU3ltYm9sPSI1MCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlcl9DbGFzcy8qIi8+CisgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6SW50ZWdlckxpdGVyYWxFeHAiIGludGVnZXJTeW1ib2w9IjUwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyX0NsYXNzLysiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJnF1b3Q7IHo9JnF1b3Q7MCZxdW90Oz4mI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6Rm9yQmxvY2siPgorICAgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6TGV0QmxvY2siPgorICAgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpJZkJsb2NrIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeDk7JiN4OTsmI3g5OyYjeDk7ICAgICAgJmx0O091dHB1dCBMb25nTmFtZT0mcXVvdDsiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InByb3AiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS9wcm9wIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii4iLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InAiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjkvcCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiZxdW90OyBOYW1lPSZxdW90OyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1LyUvJS4xLyUuOS9wIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJnF1b3Q7PiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5OyAgICAgICAgJmx0O1Byb3BlcnR5IExvbmdOYW1lPSZxdW90OyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icHJvcCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1L3Byb3AiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLiIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1LyUvJS4xLyUuOS9wIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLmZpZm9zaXplJnF1b3Q7IFR5cGU9JnF1b3Q7MSZxdW90Oz4iLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYnVmZnNpemUiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjkvJS9idWZmc2l6ZSI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJmx0Oy9Qcm9wZXJ0eT4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTsgICAgICAgICZsdDtQcm9wZXJ0eSBMb25nTmFtZT0mcXVvdDsiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InByb3AiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS9wcm9wIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii4iLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InAiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjkvcCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii5wZXJpb2RpYyZxdW90OyBUeXBlPSZxdW90OzAmcXVvdDs+ZmFsc2UmbHQ7L1Byb3BlcnR5PiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5OyAgICAgICAgJmx0O1Byb3BlcnR5IExvbmdOYW1lPSZxdW90OyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icHJvcCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1L3Byb3AiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLiIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1LyUvJS4xLyUuOS9wIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLnN1YnNhbXBsaW5nJnF1b3Q7IFR5cGU9JnF1b3Q7MSZxdW90Oz4xJmx0Oy9Qcm9wZXJ0eT4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTsgICAgICAmbHQ7L091dHB1dD4mI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxpZkV4cHIgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYnVmZnNpemUiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjkvJS9idWZmc2l6ZSI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkludGVnZXJMaXRlcmFsRXhwIiBpbnRlZ2VyU3ltYm9sPSIwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyX0NsYXNzLyUzRSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8L2lmRXhwcj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxsZXRWYXJpYWJsZSBuYW1lPSJidWZmc2l6ZSI+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbml0RXhwcmVzc2lvbiB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRPdXRwdXRQb3J0QnVmZmVyU2l6ZSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45L3AiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPC9pbml0RXhwcmVzc2lvbj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvbGV0VmFyaWFibGU+CisgICAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICAgIDxsb29wVmFyaWFibGUgbmFtZT0icCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L2xvb3BWYXJpYWJsZT4KKyAgICAgICAgICAgICAgICAgICAgICA8aXRlclNldCB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiIgZVR5cGU9Ii82L1NlcXVlbmNlKFBvcnQpIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldE91dHB1dFBvcnRzRm9yRWxlbWVudCIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InByb3AiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS9wcm9wIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGVkRWxlbWVudC90eXBlIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlRXhwIiBlVHlwZT0iLzkvRWxlbWVudCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnlfQ2xhc3Mvb2NsQXNUeXBlIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICAgIDwvaXRlclNldD4KKyAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4OTsmI3g5OyAgICAmI3g5OyZsdDsvQ29tcG9uZW50PiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgICAgICAgICAgPGlmRXhwciB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvaXNNYWNyb0NvbXBvbmVudCIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwcm9wIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvcHJvcCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlZEVsZW1lbnQvdHlwZSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VHlwZUV4cCIgZVR5cGU9Ii85L0NsYXNzIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnlfQ2xhc3Mvb2NsQXNUeXBlIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkJvb2xlYW5MaXRlcmFsRXhwIiBib29sZWFuU3ltYm9sPSJmYWxzZSI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbl9DbGFzcy89Ii8+CisgICAgICAgICAgICAgICAgICAgIDwvaWZFeHByPgorICAgICAgICAgICAgICAgICAgPC9lbHNlSWY+CisgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgIDxsb29wVmFyaWFibGUgbmFtZT0icHJvcCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgPC9sb29wVmFyaWFibGU+CisgICAgICAgICAgICAgICAgPGl0ZXJTZXQgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iIGVUeXBlPSIvNi9TZXF1ZW5jZShQcm9wZXJ0eSkiPgorICAgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudCIvPgorICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS9jIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICA8L2l0ZXJTZXQ+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGb3JCbG9jayI+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpJZkJsb2NrIj4KKyAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5OyYjeDk7JiN4OTsgICAgJmx0O01hY3JvQ29tcG9uZW50IEluc3RhbmNlTmFtZT0mcXVvdDsiLz4KKyAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InByb3AiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi9wcm9wIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJnF1b3Q7IE1vZGVsPSZxdW90OyIvPgorICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uL1JUTWFwc0RhdGFUeXBlUXVlcmllcy5lbXRsIy8wL2dldFJUTWFwc05hdGl2ZUNvbXBvbmVudE5hbWVGcm9tR2VuZXJpY0F0dHJpYnV0ZSIvPgorICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icHJvcCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2L3Byb3AiPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZWRFbGVtZW50L3R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlRXhwIiBlVHlwZT0iLzkvQ2xhc3MiPgorICAgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueV9DbGFzcy9vY2xBc1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImcXVvdDsgeD0mcXVvdDsiLz4KKyAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iaSIgcmVmZXJyZWRWYXJpYWJsZT0iLzEwNyI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkludGVnZXJMaXRlcmFsRXhwIiBpbnRlZ2VyU3ltYm9sPSI1MCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlcl9DbGFzcy8qIi8+CisgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpJbnRlZ2VyTGl0ZXJhbEV4cCIgaW50ZWdlclN5bWJvbD0iNTAiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXJfQ2xhc3MvKyIvPgorICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiZxdW90OyB5PSZxdW90OyIvPgorICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJpIiByZWZlcnJlZFZhcmlhYmxlPSIvMTA3Ij4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6SW50ZWdlckxpdGVyYWxFeHAiIGludGVnZXJTeW1ib2w9IjUwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyX0NsYXNzLyoiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkludGVnZXJMaXRlcmFsRXhwIiBpbnRlZ2VyU3ltYm9sPSIxNTAiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXJfQ2xhc3MvKyIvPgorICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiZxdW90OyB6PSZxdW90OzAmcXVvdDs+JiN4RDsmI3hBOyIvPgorICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGb3JCbG9jayI+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6TGV0QmxvY2siPgorICAgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6SWZCbG9jayI+CisgICAgICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4OTsmI3g5OyYjeDk7JiN4OTsgICAgICAmbHQ7T3V0cHV0UHJvcGVydHlPdmVybG9hZCBMb25nTmFtZT0mcXVvdDsiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InAiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuOS9wIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIuZmlmb3NpemUmcXVvdDsgVHlwZT0mcXVvdDsxJnF1b3Q7PiIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYnVmZnNpemUiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuOS8lL2J1ZmZzaXplIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImbHQ7L091dHB1dFByb3BlcnR5T3ZlcmxvYWQ+JiN4RDsmI3hBOyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPGlmRXhwciB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImJ1ZmZzaXplIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjkvJS9idWZmc2l6ZSI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkludGVnZXJMaXRlcmFsRXhwIiBpbnRlZ2VyU3ltYm9sPSIwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyX0NsYXNzLyUzRSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPC9pZkV4cHI+CisgICAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICAgIDxsZXRWYXJpYWJsZSBuYW1lPSJidWZmc2l6ZSI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPGluaXRFeHByZXNzaW9uIHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0T3V0cHV0UG9ydEJ1ZmZlclNpemUiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InAiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuOS9wIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvaW5pdEV4cHJlc3Npb24+CisgICAgICAgICAgICAgICAgICAgICAgPC9sZXRWYXJpYWJsZT4KKyAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICA8bG9vcFZhcmlhYmxlIG5hbWU9InAiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICAgICAgICA8L2xvb3BWYXJpYWJsZT4KKyAgICAgICAgICAgICAgICAgICAgPGl0ZXJTZXQgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iIGVUeXBlPSIvNi9TZXF1ZW5jZShQb3J0KSI+CisgICAgICAgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50Ii8+CisgICAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwcm9wIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvcHJvcCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlZEVsZW1lbnQvdHlwZSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlRXhwIiBlVHlwZT0iLzkvRWxlbWVudCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnlfQ2xhc3Mvb2NsQXNUeXBlIi8+CisgICAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgICAgPC9pdGVyU2V0PgorICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeDk7JiN4OTsmI3g5OyAgICAmbHQ7L01hY3JvQ29tcG9uZW50PiYjeDk7JiN4OTsmI3g5OyYjeDk7JiN4OTsmI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICAgICAgICA8aWZFeHByIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vUlRNYXBzRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAvaGFzUlRNYXBzTmF0aXZlSW1wbGVtZW50YXRpb24iLz4KKyAgICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwcm9wIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvcHJvcCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlZEVsZW1lbnQvdHlwZSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlRXhwIiBlVHlwZT0iLzkvQ2xhc3MiPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueV9DbGFzcy9vY2xBc1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Qm9vbGVhbkxpdGVyYWxFeHAiIGJvb2xlYW5TeW1ib2w9InRydWUiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW5fQ2xhc3MvPSIvPgorICAgICAgICAgICAgICAgICAgPC9pZkV4cHI+CisgICAgICAgICAgICAgICAgICA8ZWxzZUlmPgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4OTsmI3g5OyYjeDk7ICAgICZsdDtNYWNyb0NvbXBvbmVudCBJbnN0YW5jZU5hbWU9JnF1b3Q7Ii8+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwcm9wIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvcHJvcCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImcXVvdDsgTW9kZWw9JnF1b3Q7bWFjcm9fIi8+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icHJvcCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2L3Byb3AiPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZWRFbGVtZW50L3R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiZxdW90OyB4PSZxdW90OyIvPgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iaSIgcmVmZXJyZWRWYXJpYWJsZT0iLzEwNyI+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkludGVnZXJMaXRlcmFsRXhwIiBpbnRlZ2VyU3ltYm9sPSI1MCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlcl9DbGFzcy8qIi8+CisgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6SW50ZWdlckxpdGVyYWxFeHAiIGludGVnZXJTeW1ib2w9IjUwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyX0NsYXNzLysiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJnF1b3Q7IHk9JnF1b3Q7Ii8+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJpIiByZWZlcnJlZFZhcmlhYmxlPSIvMTA3Ij4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6SW50ZWdlckxpdGVyYWxFeHAiIGludGVnZXJTeW1ib2w9IjUwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyX0NsYXNzLyoiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpJbnRlZ2VyTGl0ZXJhbEV4cCIgaW50ZWdlclN5bWJvbD0iMTUwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyX0NsYXNzLysiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJnF1b3Q7IHo9JnF1b3Q7MCZxdW90Oz4mI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6Rm9yQmxvY2siPgorICAgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6TGV0QmxvY2siPgorICAgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpJZkJsb2NrIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeDk7JiN4OTsmI3g5OyYjeDk7ICAgICAgJmx0O091dHB1dFByb3BlcnR5T3ZlcmxvYWQgTG9uZ05hbWU9JnF1b3Q7Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjEyLyUuOS9wIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLmZpZm9zaXplJnF1b3Q7IFR5cGU9JnF1b3Q7MSZxdW90Oz4iLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYnVmZnNpemUiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuMTIvJS45LyUvYnVmZnNpemUiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiZsdDsvT3V0cHV0UHJvcGVydHlPdmVybG9hZD4mI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxpZkV4cHIgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYnVmZnNpemUiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuMTIvJS45LyUvYnVmZnNpemUiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpJbnRlZ2VyTGl0ZXJhbEV4cCIgaW50ZWdlclN5bWJvbD0iMCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlcl9DbGFzcy8lM0UiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPC9pZkV4cHI+CisgICAgICAgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICAgICAgICA8bGV0VmFyaWFibGUgbmFtZT0iYnVmZnNpemUiPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5pdEV4cHJlc3Npb24geHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0T3V0cHV0UG9ydEJ1ZmZlclNpemUiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS4xMi8lLjkvcCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICAgICAgICA8L2luaXRFeHByZXNzaW9uPgorICAgICAgICAgICAgICAgICAgICAgICAgPC9sZXRWYXJpYWJsZT4KKyAgICAgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICAgICAgPGxvb3BWYXJpYWJsZSBuYW1lPSJwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvbG9vcFZhcmlhYmxlPgorICAgICAgICAgICAgICAgICAgICAgIDxpdGVyU2V0IHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIiBlVHlwZT0iLzYvU2VxdWVuY2UoUG9ydCkiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icHJvcCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2L3Byb3AiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZWRFbGVtZW50L3R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVFeHAiIGVUeXBlPSIvOS9FbGVtZW50Ij4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueV9DbGFzcy9vY2xBc1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgICAgPC9pdGVyU2V0PgorICAgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5OyYjeDk7JiN4OTsgICAgJmx0Oy9NYWNyb0NvbXBvbmVudD4mI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICAgICAgICAgIDxpZkV4cHIgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvaXNNYWNyb0NvbXBvbmVudCIvPgorICAgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InByb3AiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi9wcm9wIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGVkRWxlbWVudC90eXBlIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVFeHAiIGVUeXBlPSIvOS9DbGFzcyI+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55X0NsYXNzL29jbEFzVHlwZSIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgIDwvaWZFeHByPgorICAgICAgICAgICAgICAgICAgPC9lbHNlSWY+CisgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgIDxsb29wVmFyaWFibGUgbmFtZT0icHJvcCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgPC9sb29wVmFyaWFibGU+CisgICAgICAgICAgICAgICAgPGl0ZXJTZXQgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iIGVUeXBlPSIvNi9TZXF1ZW5jZShQcm9wZXJ0eSkiPgorICAgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudCIvPgorICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS9jIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICA8L2l0ZXJTZXQ+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGb3JCbG9jayI+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpMZXRCbG9jayI+CisgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkxldEJsb2NrIj4KKyAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeDk7JiN4OTsmI3g5OyZsdDtDb25uZWN0aW9uIElucHV0PSZxdW90OyIvPgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZHN0X2NvbXAiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNy8lL2RzdF9jb21wIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii4iLz4KKyAgICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXREZXN0UG9ydE5hbWUiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iY29ubiIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI3L2Nvbm4iPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImcXVvdDsgT3V0cHV0PSZxdW90OyIvPgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic3JjX2NvbXAiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNy8lLyUvc3JjX2NvbXAiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLiIvPgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldFNvdXJjZVBvcnROYW1lIi8+CisgICAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImNvbm4iIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNy9jb25uIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJnF1b3Q7Lz4mI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICAgICAgICAgIDxsZXRWYXJpYWJsZSBuYW1lPSJzcmNfY29tcCI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgICAgIDxpbml0RXhwcmVzc2lvbiB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRTb3VyY2VDb21wb25lbnRGb3JDb25uZWN0b3IiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjb25uIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjcvY29ubiI+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICAgIDwvaW5pdEV4cHJlc3Npb24+CisgICAgICAgICAgICAgICAgICAgIDwvbGV0VmFyaWFibGU+CisgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICA8bGV0VmFyaWFibGUgbmFtZT0iZHN0X2NvbXAiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgICAgIDxpbml0RXhwcmVzc2lvbiB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldERlc3RDb21wb25lbnRGb3JDb25uZWN0b3IiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iY29ubiIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI3L2Nvbm4iPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICA8L2luaXRFeHByZXNzaW9uPgorICAgICAgICAgICAgICAgICAgPC9sZXRWYXJpYWJsZT4KKyAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgPGxvb3BWYXJpYWJsZSBuYW1lPSJjb25uIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICAgICAgICAgICAgPC9sb29wVmFyaWFibGU+CisgICAgICAgICAgICAgICAgPGl0ZXJTZXQgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iIGVUeXBlPSIvNi9TZXF1ZW5jZShDb25uZWN0b3IpIj4KKyAgICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldEludGVybmFsQ29ubmVjdG9ycyIvPgorICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS9jIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICA8L2l0ZXJTZXQ+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGb3JCbG9jayI+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpMZXRCbG9jayI+CisgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4OTsmI3g5OyAgICAmbHQ7SW5wdXQgTmFtZT0mcXVvdDsiLz4KKyAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRTb3VyY2VQb3J0TmFtZSIvPgorICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iY29ubiIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI4L2Nvbm4iPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJnF1b3Q7IFRhcmdldD0mcXVvdDsiLz4KKyAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImRzdF9jb21wIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjgvJS9kc3RfY29tcCI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii4iLz4KKyAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXREZXN0UG9ydE5hbWUiLz4KKyAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImNvbm4iIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yOC9jb25uIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiZxdW90Oy8+JiN4RDsmI3hBOyIvPgorICAgICAgICAgICAgICAgICAgPGxldFZhcmlhYmxlIG5hbWU9ImRzdF9jb21wIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgICA8aW5pdEV4cHJlc3Npb24geHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXREZXN0Q29tcG9uZW50Rm9yQ29ubmVjdG9yIi8+CisgICAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImNvbm4iIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yOC9jb25uIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgICAgPC9pbml0RXhwcmVzc2lvbj4KKyAgICAgICAgICAgICAgICAgIDwvbGV0VmFyaWFibGU+CisgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgIDxsb29wVmFyaWFibGUgbmFtZT0iY29ubiI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgICAgICAgICAgIDwvbG9vcFZhcmlhYmxlPgorICAgICAgICAgICAgICAgIDxpdGVyU2V0IHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIiBlVHlwZT0iLzYvU2VxdWVuY2UoQ29ubmVjdG9yKSI+CisgICAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRFeHRlcm5hbElucHV0Q29ubmVjdG9ycyIvPgorICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS9jIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICA8L2l0ZXJTZXQ+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGb3JCbG9jayI+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpMZXRCbG9jayI+CisgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4OTsmI3g5OyAgICAmbHQ7T3V0cHV0IE5hbWU9JnF1b3Q7Ii8+CisgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0RGVzdFBvcnROYW1lIi8+CisgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjb25uIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjkvY29ubiI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImcXVvdDsgVGFyZ2V0PSZxdW90OyIvPgorICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ic3JjX2NvbXAiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yOS8lL3NyY19jb21wIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLiIvPgorICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldFNvdXJjZVBvcnROYW1lIi8+CisgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjb25uIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjkvY29ubiI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImcXVvdDsvPiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgICAgICAgIDxsZXRWYXJpYWJsZSBuYW1lPSJzcmNfY29tcCI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICAgICAgICAgICAgICAgICAgPGluaXRFeHByZXNzaW9uIHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0U291cmNlQ29tcG9uZW50Rm9yQ29ubmVjdG9yIi8+CisgICAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImNvbm4iIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yOS9jb25uIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgICAgPC9pbml0RXhwcmVzc2lvbj4KKyAgICAgICAgICAgICAgICAgIDwvbGV0VmFyaWFibGU+CisgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgIDxsb29wVmFyaWFibGUgbmFtZT0iY29ubiI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgICAgICAgICAgIDwvbG9vcFZhcmlhYmxlPgorICAgICAgICAgICAgICAgIDxpdGVyU2V0IHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIiBlVHlwZT0iLzYvU2VxdWVuY2UoQ29ubmVjdG9yKSI+CisgICAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRFeHRlcm5hbE91dHB1dENvbm5lY3RvcnMiLz4KKyAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvYyI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgPC9pdGVyU2V0PgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5OyYjeDk7ICAgICZsdDtSVEJvYXJkVmlldyBJRD0mcXVvdDtKYXZhU3R1ZGlvMS4wJnF1b3Q7PiYjeEQ7JiN4QTsmI3g5OyYjeDk7ICAgICAgJmx0O0Rlc2NyaXB0aW9uLz4mI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6Rm9yQmxvY2siPgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5OyYjeDk7JiN4OTsgICAgICAmbHQ7Q29tcG9uZW50Qm94IEluc3RhbmNlTmFtZT0mcXVvdDsiLz4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InByb3AiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4zMS9wcm9wIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImcXVvdDsgcmV2ZXJzZWQ9JnF1b3Q7ZmFsc2UmcXVvdDs+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyAgICAgICAgJmx0O0Rlc2NyaXB0aW9uLz4mI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeDk7JiN4OTsmI3g5OyAgICAgICZsdDsvQ29tcG9uZW50Qm94PiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgICAgICA8bG9vcFZhcmlhYmxlIG5hbWU9InByb3AiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgIDwvbG9vcFZhcmlhYmxlPgorICAgICAgICAgICAgICAgIDxpdGVyU2V0IHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIiBlVHlwZT0iLzYvU2VxdWVuY2UoUHJvcGVydHkpIj4KKyAgICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnQiLz4KKyAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvYyI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgPC9pdGVyU2V0PgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6TGV0QmxvY2siPgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6Rm9yQmxvY2siPgorICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeDk7JiN4OTsgICAgICAmI3g5OyZsdDtJbnB1dEJveCBJbnN0YW5jZU5hbWU9JnF1b3Q7Ii8+CisgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwb3J0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMzIvJS9wb3J0Ij4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImcXVvdDsgcmV2ZXJzZWQ9JnF1b3Q7ZmFsc2UmcXVvdDsgeD0mcXVvdDs1MCZxdW90OyB5PSZxdW90OyIvPgorICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkludGVnZXJMaXRlcmFsRXhwIiBpbnRlZ2VyU3ltYm9sPSIxMDAiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iaSIgcmVmZXJyZWRWYXJpYWJsZT0iLzE0NSI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkludGVnZXJMaXRlcmFsRXhwIiBpbnRlZ2VyU3ltYm9sPSI1MCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlcl9DbGFzcy8qIi8+CisgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXJfQ2xhc3MvKyIvPgorICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiZxdW90OyB6PSZxdW90Oy0xJnF1b3Q7PiYjeEQ7JiN4QTsmI3g5OyYjeDk7ICAgICAgICAmbHQ7RGVzY3JpcHRpb24vPiYjeEQ7JiN4QTsmI3g5OyYjeDk7ICAgICAgJiN4OTsmbHQ7L0lucHV0Qm94PiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgICAgICAgIDxsb29wVmFyaWFibGUgbmFtZT0icG9ydCI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICAgICAgICAgICAgPC9sb29wVmFyaWFibGU+CisgICAgICAgICAgICAgICAgICA8aXRlclNldCB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiIgZVR5cGU9Ii82L1NlcXVlbmNlKFBvcnQpIj4KKyAgICAgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0SW5wdXRQb3J0c0ZvckVsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjMyL2VsdCI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICA8L2l0ZXJTZXQ+CisgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6Rm9yQmxvY2siPgorICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeDk7JiN4OTsmI3g5OyAgICAgICZsdDtPdXRwdXRCb3ggSW5zdGFuY2VOYW1lPSZxdW90OyIvPgorICAgICAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icG9ydCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjMyLyUuMS9wb3J0Ij4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImcXVvdDsgcmV2ZXJzZWQ9JnF1b3Q7ZmFsc2UmcXVvdDsgeD0mcXVvdDs2MDAmcXVvdDsgeT0mcXVvdDsiLz4KKyAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpJbnRlZ2VyTGl0ZXJhbEV4cCIgaW50ZWdlclN5bWJvbD0iMTAwIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImkiIHJlZmVycmVkVmFyaWFibGU9Ii8xNTEiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpJbnRlZ2VyTGl0ZXJhbEV4cCIgaW50ZWdlclN5bWJvbD0iNTAiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXJfQ2xhc3MvKiIvPgorICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyX0NsYXNzLysiLz4KKyAgICAgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImcXVvdDsgej0mcXVvdDstMSZxdW90Oz4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7ICAgICAgICAmbHQ7RGVzY3JpcHRpb24vPiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsgICAgICAmbHQ7L091dHB1dEJveD4mI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICAgICAgICA8bG9vcFZhcmlhYmxlIG5hbWU9InBvcnQiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgICAgICAgICAgIDwvbG9vcFZhcmlhYmxlPgorICAgICAgICAgICAgICAgICAgPGl0ZXJTZXQgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iIGVUeXBlPSIvNi9TZXF1ZW5jZShQb3J0KSI+CisgICAgICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldE91dHB1dFBvcnRzRm9yRWxlbWVudCIvPgorICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZWx0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMzIvZWx0Ij4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgIDwvaXRlclNldD4KKyAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgPGxldFZhcmlhYmxlIG5hbWU9ImVsdCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgIDxpbml0RXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvYyI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VHlwZUV4cCIgZVR5cGU9Ii85L0VsZW1lbnQiPgorICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55X0NsYXNzL29jbEFzVHlwZSIvPgorICAgICAgICAgICAgICAgICAgPC9pbml0RXhwcmVzc2lvbj4KKyAgICAgICAgICAgICAgICA8L2xldFZhcmlhYmxlPgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5OyYjeDk7ICAgICZsdDsvUlRCb2FyZFZpZXc+JiN4RDsmI3hBOyYjeDk7ICAmbHQ7L01hY3JvQ29tcG9uZW50TW9kZWw+JiN4RDsmI3hBOyZsdDsvTWFjcm9QYWNrYWdlPiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgICAgPGZpbGVVcmwgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvU3RyaW5nX0NsYXNzLysiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYyIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lL2MiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii5ydG1jIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICA8L2ZpbGVVcmw+CisgICAgICAgICAgICAgIDxjaGFyc2V0IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJVVEYtOCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8L2NoYXJzZXQ+CisgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICA8aWZFeHByIHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvaXNNYWNyb0NvbXBvbmVudCIvPgorICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYyIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lL2MiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgIDwvaWZFeHByPgorICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICA8bGV0VmFyaWFibGUgbmFtZT0iYyI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICA8aW5pdEV4cHJlc3Npb24geHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS9lbHQiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlRXhwIiBlVHlwZT0iLzkvQ2xhc3MiPgorICAgICAgICAgICAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueV9DbGFzcy9vY2xBc1R5cGUiLz4KKyAgICAgICAgICAgIDwvaW5pdEV4cHJlc3Npb24+CisgICAgICAgICAgPC9sZXRWYXJpYWJsZT4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8bG9vcFZhcmlhYmxlIG5hbWU9ImVsdCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgPC9sb29wVmFyaWFibGU+CisgICAgICAgIDxpdGVyU2V0IHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIiBlVHlwZT0iLzYvU2VxdWVuY2UoTmFtZWRFbGVtZW50KSI+CisgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0Q29tcG9uZW50TW9kZWxzIi8+CisgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InJvb3RfbW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlL3Jvb3RfbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDwvaXRlclNldD4KKyAgICAgIDwvYm9keT4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0icm9vdF9tb2RlbCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICA8L210bDpNb2R1bGU+CisgIDxlY29yZTpFUGFja2FnZSBuYW1lPSJhZGRpdGlvbnMiPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU3RyaW5nX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSIrIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCBub24tc3RhbmRhcmQiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ib3RoZXIiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJJbnRlZ2VyX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJSZWFsX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvUmVhbCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFT2JqZWN0X0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZSIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJyb290X21vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldFNvdXJjZVBvcnROYW1lIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0U291cmNlUG9ydE5hbWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbm4iPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldFNvdXJjZUNvbXBvbmVudEZvckNvbm5lY3RvciI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldFNvdXJjZUNvbXBvbmVudEZvckNvbm5lY3RvciIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29ubiI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0RGVzdFBvcnROYW1lIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0RGVzdFBvcnROYW1lIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb25uIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXREZXN0Q29tcG9uZW50Rm9yQ29ubmVjdG9yIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0RGVzdENvbXBvbmVudEZvckNvbm5lY3RvciIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29ubiI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0SW50ZXJuYWxDb25uZWN0b3JzIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0SW50ZXJuYWxDb25uZWN0b3JzIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8zL1NlcXVlbmNlKENvbm5lY3RvcikiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0RXh0ZXJuYWxJbnB1dENvbm5lY3RvcnMiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRFeHRlcm5hbElucHV0Q29ubmVjdG9ycyIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6U2VxdWVuY2VUeXBlIiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMy9TZXF1ZW5jZShDb25uZWN0b3IpIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldEV4dGVybmFsT3V0cHV0Q29ubmVjdG9ycyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldEV4dGVybmFsT3V0cHV0Q29ubmVjdG9ycyIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6U2VxdWVuY2VUeXBlIiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMy9TZXF1ZW5jZShDb25uZWN0b3IpIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldExldmVsMVN1YkNvbXBvbmVudHNGb3JDb21wb25lbnQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRMZXZlbDFTdWJDb21wb25lbnRzRm9yQ29tcG9uZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8zL1NlcXVlbmNlKFByb3BlcnR5KSIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY2xhc3MiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8zL1NlcXVlbmNlKFBvcnQpIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbHQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRJbnB1dFBvcnRzRm9yRWxlbWVudCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldElucHV0UG9ydHNGb3JFbGVtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8zL1NlcXVlbmNlKFBvcnQpIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbHQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRDb21wb25lbnRNb2RlbHMiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRDb21wb25lbnRNb2RlbHMiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzMvU2VxdWVuY2UoTmFtZWRFbGVtZW50KSIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibW9kZWwiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNNYWNyb0NvbXBvbmVudCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2lzTWFjcm9Db21wb25lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjbGFzcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRPdXRwdXRQb3J0QnVmZmVyU2l6ZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldE91dHB1dFBvcnRCdWZmZXJTaXplIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldFBja091dHB1dERpciI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uL1JUTWFwc0RhdGFUeXBlUXVlcmllcy5lbXRsIy8wL2dldFBja091dHB1dERpciIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYXJnIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9Imhhc1JUTWFwc05hdGl2ZUltcGxlbWVudGF0aW9uIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iLi4vUlRNYXBzRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAvaGFzUlRNYXBzTmF0aXZlSW1wbGVtZW50YXRpb24iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldFJUTWFwc05hdGl2ZUNvbXBvbmVudE5hbWVGcm9tR2VuZXJpY0F0dHJpYnV0ZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uL1JUTWFwc0RhdGFUeXBlUXVlcmllcy5lbXRsIy8wL2dldFJUTWFwc05hdGl2ZUNvbXBvbmVudE5hbWVGcm9tR2VuZXJpY0F0dHJpYnV0ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRSVE1hcHNOYXRpdmVMaWJyYXJ5UGF0aEZyb21HZW5lcmljQXR0cmlidXRlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iLi4vUlRNYXBzRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAvZ2V0UlRNYXBzTmF0aXZlTGlicmFyeVBhdGhGcm9tR2VuZXJpY0F0dHJpYnV0ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9jbEFueV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb2xsZWN0aW9uKFQpX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQ29sbGVjdGlvbihUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTZXF1ZW5jZShUKV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1NlcXVlbmNlKFQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9yZGVyZWRTZXQoVClfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PcmRlcmVkU2V0KFQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik1vZGVsX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ2xhc3NfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFbGVtZW50X0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQcm9wZXJ0eV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNvbm5lY3Rvcl9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQYXJhbWV0ZXJfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9QYXJhbWV0ZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ2xhc3NpZmllcl9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzaWZpZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUG9ydF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICA8L2Vjb3JlOkVQYWNrYWdlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPGVjb3JlOkVQYWNrYWdlIG5hbWU9ImNvbGxlY3Rpb25zIj4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJvY2wuZWNvcmU6U2VxdWVuY2VUeXBlIiBuYW1lPSJTZXF1ZW5jZShOYW1lZEVsZW1lbnQpIiBpbnN0YW5jZUNsYXNzTmFtZT0iamF2YS51dGlsLkxpc3QiPgorICAgICAgPGVsZW1lbnRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJvY2wuZWNvcmU6U2VxdWVuY2VUeXBlIiBuYW1lPSJTZXF1ZW5jZShQcm9wZXJ0eSkiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuTGlzdCI+CisgICAgICA8ZWxlbWVudFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgbmFtZT0iU2VxdWVuY2UoUG9ydCkiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuTGlzdCI+CisgICAgICA8ZWxlbWVudFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJvY2wuZWNvcmU6U2VxdWVuY2VUeXBlIiBuYW1lPSJTZXF1ZW5jZShDb25uZWN0b3IpIiBpbnN0YW5jZUNsYXNzTmFtZT0iamF2YS51dGlsLkxpc3QiPgorICAgICAgPGVsZW1lbnRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgPC9lY29yZTpFUGFja2FnZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8ZWNvcmU6RVBhY2thZ2UgbmFtZT0idHlwZXMiPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlVHlwZSIgbmFtZT0iQ2xhc3MiPgorICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJvY2wuZWNvcmU6VHlwZVR5cGUiIG5hbWU9IkVsZW1lbnQiPgorICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICA8L2Vjb3JlOkVQYWNrYWdlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJpIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0iaSI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0iaSI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0iaSI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9ImkiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9ImkiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9ImkiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9ImkiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ29ubmVjdG9yIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9ImkiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJpIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJpIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJpIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9ImkiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPGVjb3JlOkVBbm5vdGF0aW9uIHNvdXJjZT0icG9zaXRpb25zIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTc2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkyMjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjUyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkyMTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEzMTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTIwNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMzU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkxOTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMzg5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkxODQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjMwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0MzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTkzNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTM2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5MzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTQxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5NDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTk0NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTUwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTk1MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzNCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS41Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTg1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIwMDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuNS9yb290X21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTg1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5OTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjAwMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMDA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzNCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS43Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMDA3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIwMTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuOCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjAxMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMDE2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjkiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIwMTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjA0MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMTAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIwNDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjA0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4xMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjA0NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMDUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzNSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4xMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjA1MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMDU1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjEzIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMDU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIwODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjE0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMDg3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIxMTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMTQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjEwMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTEwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjE1Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMTEzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIxMjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjE2Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMTIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIxMzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMTYvcm9vdF9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjEyMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTMxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjE3Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMTM4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIxNDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjE4Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMTQzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIxNDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMTkiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxNDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjE1MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjE1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjM2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzNSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjIzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMDEyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzOSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMzAzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMwMDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjM3NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzg3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0MSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjM4OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzkxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMzkzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIzOTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMzk5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI0MDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjEvJS8lLjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI0MDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjQ4MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMS8lLyUuNC8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNDA1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI0MzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjEvJS8lLjQvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNDA1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI0MTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjEvJS8lLjQvJS8lL3Byb3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI0MDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjQwOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMS8lLyUuNC8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjQyNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNDMwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS41Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNDgzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI0ODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjEvJS8lLjYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI0ODkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjQ5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMS8lLyUuNyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjQ5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTE2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0MSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMS8lLyUuOCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjUxNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTIwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS45Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNTIyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI1MjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4xMCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjUyOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTMxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4xMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjUzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjA5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4xMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNTM0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI1NjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjEvJS8lLjExLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjUzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTQzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4xMS8lLyUvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjUzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTM4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4xMS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjU1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTU5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4xMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjYxMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjE1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4xMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjYxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4xNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjYyMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0MiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMS8lLyUuMTUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIzMDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjM3NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMS8lLyUuMTUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjMwOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzY2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4xNS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIzMDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjMzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMS8lLyUuMTUvJS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIzMDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjMxNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMS8lLyUuMTUvJS8lLyUvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjMwOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzEyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4xNS8lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMzI4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIzMzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjYwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjEvJS8lLjE1LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjM2OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4xNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjkxOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyOTk4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMS8lLyUuMTciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI2NTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjkxOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjYzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjEvJS8lLjE3LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI3MTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjcyMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjY0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjEvJS8lLjE3LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjcyMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNzI0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4xNy8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI3MjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjczMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjY2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjEvJS8lLjE3LyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjczMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNzM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4xNy8lLjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI3MzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjc2MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjY4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjEvJS8lLjE3LyUuNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjc2MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNzc3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4xNy8lLjUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjc2MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNzcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4xNy8lLjUvJS9wcm9wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNzYzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI3NjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjcxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjEvJS8lLjE3LyUuNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjc3OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNzg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0NSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMS8lLyUuMTcvJS43Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNzg1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI3ODgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjczIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjEvJS8lLjE3LyUuOCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjc5MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNzk0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4xNy8lLjkiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI3OTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjgxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjc1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjEvJS8lLjE3LyUuMTAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI4MTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjgyMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMS8lLyUuMTcvJS4xMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjgyNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyODI5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0NiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMS8lLyUuMTcvJS4xMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjgzMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyODMzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4xNy8lLjEzIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyODM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI4NTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQ2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4xNy8lLjE0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyODU2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI4NzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjgwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjEvJS8lLjE3LyUuMTQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjg1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyODY1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4xNy8lLjE0LyUvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjg1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyODYwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4xNy8lLjE1Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyODcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI4NzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQ2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4xNy8lLjE2Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyODc4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI4ODEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjg0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjEvJS8lLjE3LyUuMTciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI4ODQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjg4NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMS8lLyUuMTcvJS4xOCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjg4OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyOTE3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0NiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMS8lLyUuMTcvJS4xOSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjY2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNzA3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4xNy8lLjE5LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI2NzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjcwNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMS8lLyUuMTcvJS4xOS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI2NzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjY4OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMS8lLyUuMTcvJS4xOS8lLyUvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjY3OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjgzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIxLyUvJS4xNy8lLjE5LyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNjk5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI3MDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjkxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjEvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjI0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzOSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyNjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjI5NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yMS8lLjEvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjI5NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIyIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMDE0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMwNzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjUyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjIzIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMDgwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMwODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjk2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjMvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzA4MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMDgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMDg4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMxMzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjUzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMTQyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ5MDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjU1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMyMTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDg5MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzIxNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMjgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzIxNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMjczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMjE1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMyNDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1LyUvJS8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzIxNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMjI0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUvJS8lLyUvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzIxNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMjE5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUvJS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzIzNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMjQwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMjc2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMyODAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1LyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMzc4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ4ODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjU4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNDQzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM0NzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjU5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM0NzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzQ4NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTEwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS4xL3Byb3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM0NzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzQ4MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTExIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNDg3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM0OTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjU5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM0OTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzUxMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTEzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS4zLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM0OTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzUwNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTE0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS4zLyUvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzQ5NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNTAxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM1MTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzUxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1LyUvJS4xLyUuNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzUxOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNTMwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzUxOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNTI1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjUvJS9pIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNTE5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM1MjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1LyUvJS4xLyUuNS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM1MjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzUyNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTIwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS41LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzUyOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNTMwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM1MzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzUzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1LyUvJS4xLyUuNyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzUzOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNTQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjcvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzUzOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNTQ0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjcvJS9pIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNTM4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM1MzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1LyUvJS4xLyUuNy8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM1NDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzU0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTI2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS43LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzU0NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNTQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjgiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM1NTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzU2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1LyUvJS4xLyUuOSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzg0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NDE1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2NiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTI5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM5MjQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDQwMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1LyUvJS4xLyUuOS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM5ODQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDM4OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1LyUvJS4xLyUuOS8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDAwNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MDMzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2OSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTMyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQwMzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDA0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTMzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUvJS8lLjEvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDAzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MDM4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMzQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjkvJS8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDA0NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MDQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2OSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTM1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUvJS8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQwNDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDA1MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTM2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUvJS8lLjMvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDA0NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MDQ4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMzciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjkvJS8lLyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDA1NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MDYzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2OSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTM4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUvJS8lLjUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQwNjQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDA3MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTM5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUvJS8lLjUvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDA2NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MDY1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNDAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjkvJS8lLyUuNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDA3MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MTA4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2OSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUvJS8lLjciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQxMDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDExOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUvJS8lLjcvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDEwOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MTEzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNDMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjkvJS8lLyUuOCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDEyMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MTIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3MCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQ0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUvJS8lLjkiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQxMjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDEyOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQ1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUvJS8lLjkvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDEyMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MTIzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNDYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjkvJS8lLyUuMTAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQxMzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDE1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNzAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1LyUvJS4xLyUuOS8lLyUvYnVmZnNpemUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQxNTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDE1OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQ4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUvJS8lLjExIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MTYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQyMDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjcwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNDkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjkvJS8lLyUuMTIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQyMDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDIxNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTUwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUvJS8lLjEyL3Byb3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQyMDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDIxMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTUxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUvJS8lLjEzIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MjE4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQyMTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjcxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNTIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjkvJS8lLyUuMTQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQyMjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDIyNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTUzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUvJS8lLjE0L3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQyMjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDIyMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTU0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUvJS8lLjE1Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MjI4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQyOTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjcxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNTUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjkvJS8lLyUuMTYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQyOTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDMwOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTU2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUvJS8lLjE2L3Byb3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQyOTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDMwMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTU3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUvJS8lLjE3Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MzEwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQzMTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjcyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjkvJS8lLyUuMTgiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQzMTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDMxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTU5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUvJS8lLjE4L3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQzMTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDMxMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTYwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUvJS8lLjE5Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MzIwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQzNzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjcyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNjEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjkvJS8lLyUuMjAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM5ODgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDAwMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTYyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUvJS8lLjIwL2J1ZmZzaXplIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzOTg5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM5OTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1LyUvJS4xLyUuOS8lLyUvJS4yMC8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0MDAwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQwMDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1LyUvJS4xLyUuOS8lL2J1ZmZzaXplIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzOTI5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM5NzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjY3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNjUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjkvJS9idWZmc2l6ZS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzOTUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM5NzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1LyUvJS4xLyUuOS8lL2J1ZmZzaXplLyUvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzk3NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzOTc2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNjciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjkvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzg1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzODU4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2NiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTY4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzg2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzOTE1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNjkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjkvJS4xLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM4ODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzkxNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTcwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUuMS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM4ODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzg5NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTcxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS45LyUuMS8lLyUvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzg4NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzODkwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNzIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjkvJS4xLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzOTA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM5MTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1LyUvJS4xLyUuMTAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ4NjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDg4MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iODUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1LyUvJS4xLyUuMTEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMzODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzQ0MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTc1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS4xMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMzg3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM0MzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1LyUvJS4xLyUuMTEvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNDA0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM0MzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1LyUvJS4xLyUuMTEvJS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM0MDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzQxMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTc4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS8lLjEvJS4xMS8lLyUvJS9wcm9wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNDA0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM0MDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI1LyUvJS4xLyUuMTEvJS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzQyNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNDI5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xODAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLyUuMS8lLjExLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzQzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNDM5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xODEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS9wcm9wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMTQ4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMxNjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjU1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xODIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMxNjUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzIwMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTgzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjUvJS4xL2MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMyMDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzIwMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTg0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ5MDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjYwOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iODgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ5NzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjU5NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iODkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTA0OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MDg2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI5MCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTg3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUwODciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTA5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTg4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjEvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTA4NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MDkxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xODkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTA5OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MTA3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI5MCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTkwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUxMDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTE4NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTkxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjMvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTEwOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MTM0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xOTIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuMy8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUxMDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTExNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTkzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjMvJS8lL3Byb3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUxMDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTExMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTk0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjMvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUxMjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTEzMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTk1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUxODciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTE5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iOTAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS41Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MTkzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUyMDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS41LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUxOTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTE5OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTk4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjUvJS9pIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MTkzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUxOTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS41LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTE5NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MTk5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMDAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuNS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUyMDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTIwNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjAxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUyMDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTIxMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iOTAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIwMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS43Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MjEyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUyMjQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIwMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS43LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUyMTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTIxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjA0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjcvJS9pIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MjEyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUyMTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIwNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS43LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTIxNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MjE4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMDYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuNy8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUyMjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTIyNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjA3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjgiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUyMjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTIzNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iOTAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIwOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS45Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NDc3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU3ODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijk1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMDkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuOS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NTU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU3NzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijk2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuOS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU2MTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTc1OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iOTciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIxMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS45LyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NjM4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU2ODIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijk4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMTIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuOS8lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NjgzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU2ODkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIxMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS45LyUvJS8lLjEvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTY4MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1Njg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMTQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuOS8lLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NjkxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU3MTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijk4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMTUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuOS8lLyUvYnVmZnNpemUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU3MTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTcyMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjE2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjkvJS8lLyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTcyMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NzQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI5OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjE3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjkvJS8lLyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTYyMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NjM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuOS8lLyUvJS40L2J1ZmZzaXplIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NjIyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU2MzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIxOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS45LyUvJS8lLjQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTYzMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NjM0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMjAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuOS8lL2J1ZmZzaXplIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NTYyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU2MDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijk2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMjEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuOS8lL2J1ZmZzaXplLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU1ODQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTYxMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjIyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjkvJS9idWZmc2l6ZS8lL3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU2MDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTYwOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjIzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjkvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTQ4MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NDkxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI5NSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjI0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjkvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NDk0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU1NDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIyNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS45LyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NTE5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU1NDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIyNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS45LyUuMS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU1MTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTUyOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjI3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjkvJS4xLyUvJS9wcm9wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NTE5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU1MjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIyOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS45LyUuMS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTUzOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NTQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMjkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuMTAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU3ODgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTgxOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTAyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMzAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuMTEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ5NzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTA0NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjMxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjExLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ5ODAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTAzOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjMyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjExLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDk4MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MDA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMzMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuMTEvJS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ5ODAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDk4OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjM0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjExLyUvJS8lL3Byb3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ5ODAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDk4NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjM1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjExLyUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUwMDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTAwNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjM2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjExLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTA0MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MDQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMzciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuMTIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU4MjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjU5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTAzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMzgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuMTIvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTg4MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1OTE3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMDQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIzOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS4xMi8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU5MTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTkyNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjEyLyUuMS9wcm9wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1OTE4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU5MjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI0MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS4xMi8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU5MjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTk0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTA0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNDIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuMTIvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1OTQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU5NTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI0MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS4xMi8lLjMvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTk0NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1OTU0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNDQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuMTIvJS4zLyUvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTk0NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1OTQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNDUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuMTIvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1OTYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU5NjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEwNCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQ2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjEyLyUuNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTk2NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1OTc4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNDciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuMTIvJS41LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU5NjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTk3MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQ4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjEyLyUuNS8lL2kiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU5NjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTk2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQ5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjEyLyUuNS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU5NzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTk3MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjUwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjEyLyUuNS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU5NzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTk3OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjUxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjEyLyUuNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTk4MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1OTg1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMDQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI1MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS4xMi8lLjciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU5ODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTk5OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjUzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjEyLyUuNy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1OTg2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU5OTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI1NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS4xMi8lLjcvJS9pIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1OTg2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU5ODciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI1NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS4xMi8lLjcvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1OTkwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU5OTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI1NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS4xMi8lLjcvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1OTk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU5OTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI1NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS4xMi8lLjgiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjYwMDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjAxMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTA0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuMTIvJS45Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2MjUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY1NjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEwOSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjU5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjEyLyUuOS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2MzMxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY1NDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjExMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjYwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjEyLyUuOS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjYzOTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjUzMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTExIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNjEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuMTIvJS45LyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NDEyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY0NTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjExMiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjYyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjEyLyUuOS8lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NDU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY0NjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI2MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS4xMi8lLjkvJS8lLyUuMS9wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NDU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY0NTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI2NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS4xMi8lLjkvJS8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjQ2NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NDg1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMTIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI2NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS4xMi8lLjkvJS8lL2J1ZmZzaXplIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NDg2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY0OTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI2NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS4xMi8lLjkvJS8lLyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjQ5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NTIzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMTIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI2NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS4xMi8lLjkvJS8lLyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjM5NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NDA5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNjgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuMTIvJS45LyUvJS8lLjQvYnVmZnNpemUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjYzOTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjQwNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjY5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjEyLyUuOS8lLyUvJS40LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY0MDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjQwOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjcwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjEyLyUuOS8lL2J1ZmZzaXplIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2MzM2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjYzODMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjExMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjcxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjEyLyUuOS8lL2J1ZmZzaXplLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjYzNTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjM4NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjcyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjEyLyUuOS8lL2J1ZmZzaXplLyUvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjM4MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2MzgzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNzMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuMTIvJS45L3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjYyNTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjI2NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTA5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNzQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuMTIvJS45LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjI2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2MzIyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNzUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuMTIvJS45LyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2MjkzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjYzMjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI3NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS4xMi8lLjkvJS4xLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjI5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2MzAyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNzciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuMTIvJS45LyUuMS8lLyUvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjI5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2Mjk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNzgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuMTIvJS45LyUuMS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjMxMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2MzIwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNzkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLyUuMTIvJS4xMCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjU2MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NTg4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMTYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS4xMi8lLjExIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1ODMxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU4NzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS4xMi8lLjExLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU4NDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTg3NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjgyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjYvJS8lLjEyLyUuMTEvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1ODQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU4NTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS4xMi8lLjExLyUvJS9wcm9wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1ODQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU4NTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUvJS4xMi8lLjExLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1ODY5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU4NzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2L3Byb3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ5MTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDkyNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iODgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI2LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDkzMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0OTY3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yODciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNi8lLjEvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDk2NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0OTY2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yODgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjYxMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3MDYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMTkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI3LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY2NjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzA1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNy8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY3MzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzAzOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTIxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNy8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjgwMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2ODI0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMjIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI3LyUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY4MjUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjgzOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjkzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjcvJS8lLyUuMS9kc3RfY29tcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjgyNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2ODMzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOTQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNy8lLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2ODQwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY4NDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEyMiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjk1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjcvJS8lLyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjg0MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2ODYzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOTYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNy8lLyUvJS4zL2Nvbm4iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY4NTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjg2MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjk3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjcvJS8lLyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjg2NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2ODc1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMjIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI3LyUvJS8lLjUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY4NzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjg4OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjk5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjcvJS8lLyUuNS9zcmNfY29tcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjg3NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2ODg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMDAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNy8lLyUvJS42Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2ODkxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY4OTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEyMiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzAxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjcvJS8lLyUuNyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjg5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2OTE2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMDIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNy8lLyUvJS43L2Nvbm4iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY5MTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjkxNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzAzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjcvJS8lLyUuOCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjkxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2OTIzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMjIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMwNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI3LyUvJS9zcmNfY29tcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjc0MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2Nzk5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMjEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMwNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI3LyUvJS9zcmNfY29tcC8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NzY0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY4MDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMwNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI3LyUvJS9zcmNfY29tcC8lL2Nvbm4iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjY3OTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNjc5OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzA3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjcvJS9kc3RfY29tcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjY3NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NzMwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMwOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI3LyUvZHN0X2NvbXAvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjY5NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NzMxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMDkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNy8lL2RzdF9jb21wLyUvY29ubiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNjcyNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI2NzMwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yNy9jb25uIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NjE5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY2MzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjExOSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzExIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjcvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NjM4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY2NjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMxMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI3LyUuMS9jIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI2NjYwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjY2NjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMxMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI4Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MDY2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjczOTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEyNyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzE0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjgvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzEyNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3MzAxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMjgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMxNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI4LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzE5MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3MjEwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMjkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMxNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI4LyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MjExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcyMzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMxNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI4LyUvJS4xL2Nvbm4iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcyMjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzIzMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzE4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjgvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcyMzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzI0NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTI5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMTkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yOC8lLyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzI0NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3MjYwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMjAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yOC8lLyUuMy9kc3RfY29tcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzI0NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3MjU1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMjEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yOC8lLyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzI2MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3MjYzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMjkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMyMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI4LyUvJS41Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MjY0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcyODUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMyMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI4LyUvJS41L2Nvbm4iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcyODAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzI4NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzI0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjgvJS8lLjYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcyODciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzI5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTI5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMjUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yOC8lL2RzdF9jb21wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MTMyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcxODgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEyOCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzI2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjgvJS9kc3RfY29tcC8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MTU1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcxODkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMyNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI4LyUvZHN0X2NvbXAvJS9jb25uIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3MTg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjcxODgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMyOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI4L2Nvbm4iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcwNzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzA4OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTI3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMjkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yOC8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcwOTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzEyMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzMwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjgvJS4xL2MiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjcxMTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzExOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzMxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjkiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc0MDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzczMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTMzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMzIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yOS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3NDY1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijc2NDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEzNCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzMzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjkvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3NTMxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijc1NTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEzNSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzM0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjkvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc1NTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzU3MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzM1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjkvJS8lLjEvY29ubiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzU2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3NTcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMzYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yOS8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzU3NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3NTg1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMzUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMzNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI5LyUvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3NTg2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijc1OTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMzOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI5LyUvJS4zL3NyY19jb21wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3NTg2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijc1OTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMzOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI5LyUvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI3NjAxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijc2MDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEzNSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzQwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjkvJS8lLjUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc2MDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzYyNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzQxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjkvJS8lLjUvY29ubiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzYyMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3NjI1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNDIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yOS8lLyUuNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzYyOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3NjMzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMzUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM0MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI5LyUvc3JjX2NvbXAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc0NzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzUyOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTM0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNDQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yOS8lL3NyY19jb21wLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc0OTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzUyOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzQ1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjkvJS9zcmNfY29tcC8lL2Nvbm4iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijc1MjQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNzUyOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzQ2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMjkvY29ubiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzQwOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3NDI1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMzMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM0NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjI5LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzQyOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3NDU4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNDgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4yOS8lLjEvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNzQ1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI3NDU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNDkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4zMCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODAxMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4MDc3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNDYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM1MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjMxIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4MDgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg2MDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE0OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzUxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMzEvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODE0NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4MTgyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNDkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM1MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjMxLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODE4MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4MTkyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNTMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4zMS8lLjEvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODE4MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4MTg3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNTQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4zMS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjgxOTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODI0MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTQ5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNTUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4zMS8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg1NjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODU5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTYyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNTYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4zMS9wcm9wIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4MDg3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjgxMDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE0OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzU3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMzEvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4MTA0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjgxNDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM1OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjMxLyUuNC9jIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4MTM5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjgxNDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM1OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjMyIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4NjExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkxMDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE2NCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzYwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMzIvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODY2MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4ODcxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNjUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM2MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjMyLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODcxMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NzQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNjYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM2MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjMyLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4NzQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg3NTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM2MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjMyLyUvJS4xL3BvcnQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg3NDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODc1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzY0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMzIvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg3NTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODc4NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTY2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNjUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4zMi8lLyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODc4NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4Nzk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNjYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4zMi8lLyUuMy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4Nzg3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg3OTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM2NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjMyLyUvJS4zLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODc5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4Nzk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNjgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4zMi8lLyUuMy8lLjEvaSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODc5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4Nzk0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNjkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4zMi8lLyUuMy8lLjEvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODc5NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4Nzk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNzAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4zMi8lLyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODc5OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4ODU4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNjYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM3MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjMyLyUvcG9ydCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODY2NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4Njc3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNjUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM3MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjMyLyUvJS41Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4NjgwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg3MDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM3MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjMyLyUvJS41L2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODcwNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NzA3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNzQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4zMi8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg4NzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTA5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTcwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNzUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4zMi8lLjEvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODkzMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4OTY1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNzEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM3NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjMyLyUuMS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg5NjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODk3NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzc3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMzIvJS4xLyUuMS9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4OTY2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg5NzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM3OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjMyLyUuMS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg5NzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTAwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTcxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNzkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4zMi8lLjEvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MDA4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkwMTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM4MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjMyLyUuMS8lLjMvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTAwOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5MDExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zODEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4zMi8lLjEvJS4zLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTAxNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5MDE4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zODIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4zMi8lLjEvJS4zLyUuMS9pIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MDE0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjkwMTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM4MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjMyLyUuMS8lLjMvJS4xLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjkwMTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTAxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzg0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMzIvJS4xLyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTAyMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5MDgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNzEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM4NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjMyLyUuMS9wb3J0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4ODg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg4OTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE3MCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzg2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMzIvJS4xLyUuNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODg5OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4OTI3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zODciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4zMi8lLjEvJS41L2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODkyMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4OTI2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zODgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4zMi9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg2MTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODY1MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTY0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zODkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4zMi9lbHQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODYzMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI4NjUzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zOTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4zMi9lbHQvJS9jIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4NjMzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijg2MzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM5MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjMyL2VsdC8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg2NDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iODY1MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzkyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMzMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjkxMDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTE3MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTc2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zOTMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4zNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTM5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNDEyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zOTQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4zNC8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMzk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE0MDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM5NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLyUvJS8lLjM0LyUvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTM5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMzk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zOTYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS8lLyUvJS4zNC8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0MDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQxMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzk3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLyUuMzUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0MjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQyOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzk4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEzNjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTM4MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzk5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvJS8lLjEvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTM3OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMzgwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MDAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS9jIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMzE5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEzNTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MDEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS9jLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEzMzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTM1MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDAyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZS8lLyUvYy8lL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTMzMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMzM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MDMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS9jLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTM0NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMzUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MDQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjU4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEyNzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MDUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjc4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEzMDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQwNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UvJS8lLjEvcm9vdF9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTI5NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMzA3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MDciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlL3Jvb3RfbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEyMjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTI0NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lY29yZTpFQW5ub3RhdGlvbj4KKzwveG1pOlhNST4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX21hY3JvY29tcG9uZW50X3J0bWMubXRsIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfbWFjcm9jb21wb25lbnRfcnRtYy5tdGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTMwYzViOQotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX21hY3JvY29tcG9uZW50X3J0bWMubXRsCkBAIC0wLDAgKzEsMTgzIEBACitbY29tbWVudCBlbmNvZGluZyA9IFVURi04IC9dCitbY29tbWVudF0KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIElOVEVNUE9SQSBTLkEuCisgKgorICogVGhpcyBzb2Z0d2FyZSBpcyBhIGNvbXB1dGVyIHByb2dyYW0gd2hvc2UgcHVycG9zZSBpcyB0byB0cmFuc2Zvcm0gUm9ib3RNTCBtb2RlbHMKKyAqIGludG8gUlRNYXBzIGRpYWdyYW1zIGFuZCBSVE1hcHMgY29tcG9uZW50cyB2aWEgc291cmNlIGNvZGUgZ2VuZXJhdGlvbiB0ZWNobmlxdWVzLgorICogCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBOaWNvbGFzIERVIExBQyAoSU5URU1QT1JBKSAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK1svY29tbWVudF0KKworW21vZHVsZSBnZW5lcmF0ZV9ydG1hcHNfbWFjcm9jb21wb25lbnRfcnRtYygnaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzMuMC4wL1VNTCcsICdodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEnKV0KKworW2ltcG9ydCBvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmNvbW1vbjo6bW1xdWVyaWVzOjpHZW5lcmFsUXVlcmllcyAvXQorW2ltcG9ydCBvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmNvbW1vbjo6bW1xdWVyaWVzOjpBcmNoaXRlY3R1cmVRdWVyaWVzIC9dCitbaW1wb3J0IG9yZzo6ZWNsaXBzZTo6cGFweXJ1czo6cm9ib3RtbDo6Z2VuZXJhdG9yczo6aW50ZW1wb3JhOjpydG1hcHM6OlJUTWFwc0RhdGFUeXBlUXVlcmllcyAvXQorCitbdGVtcGxhdGUgcHVibGljIGdlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlKHJvb3RfbW9kZWwgOiBNb2RlbCldCisJW2ZvciAoZWx0OiBOYW1lZEVsZW1lbnQgfCBnZXRDb21wb25lbnRNb2RlbHMocm9vdF9tb2RlbCkpXQorCQlbbGV0IGMgOiBDbGFzcyA9IGVsdC5vY2xBc1R5cGUoQ2xhc3MpXQorCQkJW2lmIChpc01hY3JvQ29tcG9uZW50KGMpKV0KKwkJCQlbZmlsZSAoYy5uYW1lICsgJy5ydG1jJywgZmFsc2UsICdVVEYtOCcpXQorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cis8TWFjcm9QYWNrYWdlIHhtbG5zPSJodHRwOi8vc2NoZW1hcy5pbnRlbXBvcmEuY29tL1JUTWFwcy8yMDExL1JUTWFwc0ZpbGVzIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB2ZXJzaW9uPSI0LjEiIHhzaTpzY2hlbWFMb2NhdGlvbj0iaHR0cDovL3NjaGVtYXMuaW50ZW1wb3JhLmNvbS9SVE1hcHMvMjAxMS9SVE1hcHNGaWxlcyBodHRwOi8vd3d3LmludGVtcG9yYS5jb20vc2NoZW1hcy9SVE1hcHMvMjAxMS9SVE1hcHNEaWFncmFtLnhzZCBodHRwOi8vc2NoZW1hcy5pbnRlbXBvcmEuY29tL1JUTWFwcy8yMDExL1JUTWFwc0ZpbGVzIGh0dHA6Ly93d3cuaW50ZW1wb3JhLmNvbS9zY2hlbWFzL1JUTWFwcy8yMDExL1JUTWFwc0RpYWdyYW1fUlRCb2FyZFZpZXcueHNkIj4KKyAgICA8UmVxdWlyZWRQYWNrYWdlcz4KKwkgICAgPEZpbGU+PCFbJ1snL11DREFUQVsnWycvXS9kdW1teS9hYnNvbHV0ZS9wYXRoL2Zvci9ydG1hcHNfW3Jvb3RfbW9kZWwubmFtZS9dLnBja1snXScvXVsnXScvXT4KKwkgICAgICA8UmVsYXRpdmU+PCFbJ1snL11DREFUQVsnWycvXSVSVE1BUFNfRElBR1JBTURJUiUvdXNlcl9zZGsvW2dldFBja091dHB1dERpcignZHVtbXknKS9dcnRtYXBzX1tyb290X21vZGVsLm5hbWUvXS5wY2tbJ10nL11bJ10nL10+PC9SZWxhdGl2ZT4KKwkgICAgPC9GaWxlPgorICAgIDwvUmVxdWlyZWRQYWNrYWdlcz4KKyAgICA8UmVxdWlyZWRNYWNyb1BhY2thZ2VzPgorCVtmb3IgKHByb3A6IFByb3BlcnR5IHwgZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudChjKSldCisJCVtpZiAocHJvcC50eXBlLm9jbEFzVHlwZShDbGFzcykuaGFzUlRNYXBzTmF0aXZlSW1wbGVtZW50YXRpb24oKSA9IHRydWUpXQorCQk8RmlsZT48IVsnWycvXUNEQVRBWydbJy9dW3Byb3AudHlwZS5vY2xBc1R5cGUoQ2xhc3MpLmdldFJUTWFwc05hdGl2ZUxpYnJhcnlQYXRoRnJvbUdlbmVyaWNBdHRyaWJ1dGUoKS9dWyddJy9dWyddJy9dPgorCSAgICAgIDxSZWxhdGl2ZT48IVsnWycvXUNEQVRBWydbJy9dW3Byb3AudHlwZS5vY2xBc1R5cGUoQ2xhc3MpLmdldFJUTWFwc05hdGl2ZUxpYnJhcnlQYXRoRnJvbUdlbmVyaWNBdHRyaWJ1dGUoKS9dWyddJy9dWyddJy9dPjwvUmVsYXRpdmU+CisJICAgIDwvRmlsZT4KKwkJW2Vsc2VpZiAoaXNNYWNyb0NvbXBvbmVudChwcm9wLnR5cGUub2NsQXNUeXBlKENsYXNzKSkpXQorCQk8RmlsZT48IVsnWycvXUNEQVRBWydbJy9dL2R1bW15L2Fic29sdXRlL3BhdGgvZm9yL1twcm9wLnR5cGUubmFtZS9dLnJ0bWNbJ10nL11bJ10nL10+CisJICAgICAgPFJlbGF0aXZlPjwhWydbJy9dQ0RBVEFbJ1snL10lUlRNQVBTX0RJQUdSQU1ESVIlL1twcm9wLnR5cGUubmFtZS9dLnJ0bWNbJ10nL11bJ10nL10+PC9SZWxhdGl2ZT4KKwkgICAgPC9GaWxlPgorCQlbZWxzZV0KKwkJCVtjb21tZW50XUJPT09PT09PTzogW3Byb3AudHlwZS5vY2xBc1R5cGUoQ2xhc3MpLm5hbWUvXVsvY29tbWVudF0KKwkJWy9pZl0KKwlbL2Zvcl0KKwk8L1JlcXVpcmVkTWFjcm9QYWNrYWdlcz4KKwkJICA8TWFjcm9Db21wb25lbnRNb2RlbCBNb2RlbD0ibWFjcm9fW2MubmFtZS9dIiBWZXJzaW9uPSIiPgorCQkgICAgPE1hY3JvQ29tcG9uZW50RGVmaW5pdGlvbnMvPgorCQkJW2ZvciAocHJvcDogUHJvcGVydHkgfCBnZXRMZXZlbDFTdWJDb21wb25lbnRzRm9yQ29tcG9uZW50KGMpKV0KKwkJCQlbaWYgKHByb3AudHlwZS5vY2xBc1R5cGUoQ2xhc3MpLmhhc1JUTWFwc05hdGl2ZUltcGxlbWVudGF0aW9uKCkgPSB0cnVlKV0KKwkJCQkJW2NvbW1lbnRdRG8gbm90aGluZzogaXQgd2lsbCBiZSBpbnN0YW5jaWF0ZWQgYXMgYSBuYXRpdmUgbWFjcm8tY29tcG9uZW50LlsvY29tbWVudF0KKwkJCQlbZWxzZWlmIChpc01hY3JvQ29tcG9uZW50KHByb3AudHlwZS5vY2xBc1R5cGUoQ2xhc3MpKSA9IGZhbHNlKV0KKwkJICAgIAk8Q29tcG9uZW50IEluc3RhbmNlTmFtZT0iW3Byb3AubmFtZS9dIiBNb2RlbD0iW3Byb3AudHlwZS5uYW1lL10iIHg9IltpICogNTAgKyA1MC9dIiB5PSJbaSAqIDUwICsgNTAvXSIgej0iMCI+CisJCQkJICBbY29tbWVudF0KKwkJCSAgICAgIDxJbnB1dCBMb25nTmFtZT0iUkdCMllVVl83LmlucHV0IiBOYW1lPSJpbnB1dCI+CisJCQkgICAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iUkdCMllVVl83LmlucHV0LnJlYWRlclR5cGUiIFR5cGU9IjEiPjA8L1Byb3BlcnR5PgorCQkJICAgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IlJHQjJZVVZfNy5pbnB1dC5zdWJzYW1wbGluZyIgVHlwZT0iMSI+MTwvUHJvcGVydHk+CisJCQkgICAgICA8L0lucHV0PgorCQkJCSAgWy9jb21tZW50XQorCQkJCSAgW2ZvciAocCA6IFBvcnQgfCBnZXRPdXRwdXRQb3J0c0ZvckVsZW1lbnQocHJvcC50eXBlLm9jbEFzVHlwZShFbGVtZW50KSkpXQorCQkJCQlbbGV0IGJ1ZmZzaXplIDogSW50ZWdlciA9IGdldE91dHB1dFBvcnRCdWZmZXJTaXplKHApXQorCQkJCQlbaWYgKGJ1ZmZzaXplID4gMCldCisJCQkJICAgICAgPE91dHB1dCBMb25nTmFtZT0iW3Byb3AubmFtZS9dLltwLm5hbWUvXSIgTmFtZT0iW3AubmFtZS9dIj4KKwkJCQkgICAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iW3Byb3AubmFtZS9dLltwLm5hbWUvXS5maWZvc2l6ZSIgVHlwZT0iMSI+W2J1ZmZzaXplL108L1Byb3BlcnR5PgorCQkJCSAgICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJbcHJvcC5uYW1lL10uW3AubmFtZS9dLnBlcmlvZGljIiBUeXBlPSIwIj5mYWxzZTwvUHJvcGVydHk+CisJCQkJICAgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9Iltwcm9wLm5hbWUvXS5bcC5uYW1lL10uc3Vic2FtcGxpbmciIFR5cGU9IjEiPjE8L1Byb3BlcnR5PgorCQkJCSAgICAgIDwvT3V0cHV0PgorCQkJCQlbL2lmXQorCQkJCQlbL2xldF0KKwkJCQkgIFsvZm9yXQorCQkJICAgICAgW2NvbW1lbnRdCisJCQkgICAgICA8T3V0cHV0IExvbmdOYW1lPSJSR0IyWVVWXzcub3V0cHV0IiBOYW1lPSJvdXRwdXQiPgorCQkJICAgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IlJHQjJZVVZfNy5vdXRwdXQuZmlmb3NpemUiIFR5cGU9IjEiPjE2PC9Qcm9wZXJ0eT4KKwkJCSAgICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJSR0IyWVVWXzcub3V0cHV0LnBlcmlvZGljIiBUeXBlPSIwIj5mYWxzZTwvUHJvcGVydHk+CisJCQkgICAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iUkdCMllVVl83Lm91dHB1dC5zdWJzYW1wbGluZyIgVHlwZT0iMSI+MTwvUHJvcGVydHk+CisJCQkgICAgICA8L091dHB1dD4KKwkJCSAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iUkdCMllVVl83LnBsYW5hciIgVHlwZT0iMCI+ZmFsc2U8L1Byb3BlcnR5PgorCQkJCSAgWy9jb21tZW50XQorCQkgICAgCTwvQ29tcG9uZW50PgorCQkJCVsvaWZdCisJCQlbL2Zvcl0KKwkJCVtmb3IgKHByb3A6IFByb3BlcnR5IHwgZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudChjKSldCisJCQkJW2lmIChwcm9wLnR5cGUub2NsQXNUeXBlKENsYXNzKS5oYXNSVE1hcHNOYXRpdmVJbXBsZW1lbnRhdGlvbigpID0gdHJ1ZSldCisJCQkgICAgPE1hY3JvQ29tcG9uZW50IEluc3RhbmNlTmFtZT0iW3Byb3AubmFtZS9dIiBNb2RlbD0iW3Byb3AudHlwZS5vY2xBc1R5cGUoQ2xhc3MpLmdldFJUTWFwc05hdGl2ZUNvbXBvbmVudE5hbWVGcm9tR2VuZXJpY0F0dHJpYnV0ZSgpL10iIHg9IltpICogNTAgKyA1MC9dIiB5PSJbaSAqIDUwICsgMTUwL10iIHo9IjAiPgorCQkJICAgICAgW2NvbW1lbnRdCisJCQkJICA8SW5wdXRQcm9wZXJ0eU92ZXJsb2FkIExvbmdOYW1lPSJzdHJlYW1faW4ucmVhZGVyVHlwZSIgVHlwZT0iMSI+MDwvSW5wdXRQcm9wZXJ0eU92ZXJsb2FkPgorCQkJICAgICAgPE91dHB1dFByb3BlcnR5T3ZlcmxvYWQgTG9uZ05hbWU9InBvc2l0aW9uLmZpZm9zaXplIiBUeXBlPSIxIj4xNjwvT3V0cHV0UHJvcGVydHlPdmVybG9hZD4KKwkJCQkgIFsvY29tbWVudF0KKwkJCQkgIFtmb3IgKHAgOiBQb3J0IHwgZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50KHByb3AudHlwZS5vY2xBc1R5cGUoRWxlbWVudCkpKV0KKwkJCQkJW2xldCBidWZmc2l6ZSA6IEludGVnZXIgPSBnZXRPdXRwdXRQb3J0QnVmZmVyU2l6ZShwKV0KKwkJCQkJW2lmIChidWZmc2l6ZSA+IDApXQorCQkJCSAgICAgIDxPdXRwdXRQcm9wZXJ0eU92ZXJsb2FkIExvbmdOYW1lPSJbcC5uYW1lL10uZmlmb3NpemUiIFR5cGU9IjEiPltidWZmc2l6ZS9dPC9PdXRwdXRQcm9wZXJ0eU92ZXJsb2FkPgorCQkJCQlbL2lmXQorCQkJCQlbL2xldF0KKwkJCQkgIFsvZm9yXQorCQkJICAgIDwvTWFjcm9Db21wb25lbnQ+CQkJCQkKKwkJCQlbZWxzZWlmIChpc01hY3JvQ29tcG9uZW50KHByb3AudHlwZS5vY2xBc1R5cGUoQ2xhc3MpKSldCisJCQkgICAgPE1hY3JvQ29tcG9uZW50IEluc3RhbmNlTmFtZT0iW3Byb3AubmFtZS9dIiBNb2RlbD0ibWFjcm9fW3Byb3AudHlwZS5uYW1lL10iIHg9IltpICogNTAgKyA1MC9dIiB5PSJbaSAqIDUwICsgMTUwL10iIHo9IjAiPgorCQkJICAgICAgW2NvbW1lbnRdCisJCQkJICA8SW5wdXRQcm9wZXJ0eU92ZXJsb2FkIExvbmdOYW1lPSJzdHJlYW1faW4ucmVhZGVyVHlwZSIgVHlwZT0iMSI+MDwvSW5wdXRQcm9wZXJ0eU92ZXJsb2FkPgorCQkJICAgICAgPE91dHB1dFByb3BlcnR5T3ZlcmxvYWQgTG9uZ05hbWU9InBvc2l0aW9uLmZpZm9zaXplIiBUeXBlPSIxIj4xNjwvT3V0cHV0UHJvcGVydHlPdmVybG9hZD4KKwkJCQkgIFsvY29tbWVudF0KKwkJCQkgIFtmb3IgKHAgOiBQb3J0IHwgZ2V0T3V0cHV0UG9ydHNGb3JFbGVtZW50KHByb3AudHlwZS5vY2xBc1R5cGUoRWxlbWVudCkpKV0KKwkJCQkJW2xldCBidWZmc2l6ZSA6IEludGVnZXIgPSBnZXRPdXRwdXRQb3J0QnVmZmVyU2l6ZShwKV0KKwkJCQkJW2lmIChidWZmc2l6ZSA+IDApXQorCQkJCSAgICAgIDxPdXRwdXRQcm9wZXJ0eU92ZXJsb2FkIExvbmdOYW1lPSJbcC5uYW1lL10uZmlmb3NpemUiIFR5cGU9IjEiPltidWZmc2l6ZS9dPC9PdXRwdXRQcm9wZXJ0eU92ZXJsb2FkPgorCQkJCQlbL2lmXQorCQkJCQlbL2xldF0KKwkJCQkgIFsvZm9yXQorCQkJICAgIDwvTWFjcm9Db21wb25lbnQ+CisJCQkJWy9pZl0KKwkJCVsvZm9yXQorCQkJW2ZvciAoY29ubiA6IENvbm5lY3RvciB8IGdldEludGVybmFsQ29ubmVjdG9ycyhjKSldCisJCQlbbGV0IGRzdF9jb21wIDogUHJvcGVydHkgPSBnZXREZXN0Q29tcG9uZW50Rm9yQ29ubmVjdG9yKGNvbm4pXQorCQkJW2xldCBzcmNfY29tcCA6IFByb3BlcnR5ID0gZ2V0U291cmNlQ29tcG9uZW50Rm9yQ29ubmVjdG9yKGNvbm4pXQorCQkJPENvbm5lY3Rpb24gSW5wdXQ9Iltkc3RfY29tcC5uYW1lL10uW2dldERlc3RQb3J0TmFtZShjb25uKS9dIiBPdXRwdXQ9IltzcmNfY29tcC5uYW1lL10uW2dldFNvdXJjZVBvcnROYW1lKGNvbm4pL10iLz4KKwkJICAgIFtjb21tZW50XTxDb25uZWN0aW9uIElucHV0PSJHUFNfTk1FQTAxODNfMy5pU3RyZWFtOCIgT3V0cHV0PSJTZXJpYWxQb3J0XzIuc3RyZWFtT3V0cHV0Ii8+Wy9jb21tZW50XQorCQkJWy9sZXRdCisJCQlbL2xldF0KKwkJCVsvZm9yXQorCQkJW2ZvciAoY29ubiA6IENvbm5lY3RvciB8IGdldEV4dGVybmFsSW5wdXRDb25uZWN0b3JzKGMpKV0KKwkJCVtsZXQgZHN0X2NvbXAgOiBQcm9wZXJ0eSA9IGdldERlc3RDb21wb25lbnRGb3JDb25uZWN0b3IoY29ubildCisJCSAgICA8SW5wdXQgTmFtZT0iW2dldFNvdXJjZVBvcnROYW1lKGNvbm4pL10iIFRhcmdldD0iW2RzdF9jb21wLm5hbWUvXS5bZ2V0RGVzdFBvcnROYW1lKGNvbm4pL10iLz4KKwkJCVsvbGV0XQorCQkgICAgW2NvbW1lbnRdPElucHV0IE5hbWU9InN0cmVhbV9pbiIgVGFyZ2V0PSJTZXJpYWxQb3J0XzIuc3RyZWFtSW5wdXQiLz5bL2NvbW1lbnRdCisJCQlbL2Zvcl0KKwkJCVtmb3IgKGNvbm4gOiBDb25uZWN0b3IgfCBnZXRFeHRlcm5hbE91dHB1dENvbm5lY3RvcnMoYykpXQorCQkJW2xldCBzcmNfY29tcCA6IFByb3BlcnR5ID0gZ2V0U291cmNlQ29tcG9uZW50Rm9yQ29ubmVjdG9yKGNvbm4pXQorCQkgICAgPE91dHB1dCBOYW1lPSJbZ2V0RGVzdFBvcnROYW1lKGNvbm4pL10iIFRhcmdldD0iW3NyY19jb21wLm5hbWUvXS5bZ2V0U291cmNlUG9ydE5hbWUoY29ubikvXSIvPgorCQkJWy9sZXRdCisJCQlbY29tbWVudF0gPE91dHB1dCBOYW1lPSJwb3NpdGlvbiIgVGFyZ2V0PSJHUFNfbWFjaGluLm9Qb3NpdGlvbiIvPlsvY29tbWVudF0KKwkJCVsvZm9yXQorCQlbY29tbWVudF0KKwkJWy9jb21tZW50XQorCQkJW2NvbW1lbnRdCisJCSAgICA8Q29ubmVjdGlvbiBJbnB1dD0iR1BTX05NRUEwMTgzXzMuaVN0cmVhbTgiIE91dHB1dD0iU2VyaWFsUG9ydF8yLnN0cmVhbU91dHB1dCIvPgorCQkgICAgPElucHV0IE5hbWU9InN0cmVhbV9pbiIgVGFyZ2V0PSJTZXJpYWxQb3J0XzIuc3RyZWFtSW5wdXQiLz4KKwkJICAgIDxPdXRwdXQgTmFtZT0icG9zaXRpb24iIFRhcmdldD0iR1BTX05NRUEwMTgzXzMub1Bvc2l0aW9uIi8+CisJCQlbL2NvbW1lbnRdCisJCSAgICA8UlRCb2FyZFZpZXcgSUQ9IkphdmFTdHVkaW8xLjAiPgorCQkgICAgICA8RGVzY3JpcHRpb24vPgorCQkJCVtmb3IgKHByb3A6IFByb3BlcnR5IHwgZ2V0TGV2ZWwxU3ViQ29tcG9uZW50c0ZvckNvbXBvbmVudChjKSldCisJCQkgICAgICA8Q29tcG9uZW50Qm94IEluc3RhbmNlTmFtZT0iW3Byb3AubmFtZS9dIiByZXZlcnNlZD0iZmFsc2UiPgorCQkJICAgICAgICA8RGVzY3JpcHRpb24vPgorCQkJCQlbY29tbWVudF0KKwkJCSAgICAgICAgPElucHV0SW5mb3MgTmFtZT0ic3RyZWFtX2luIj4KKwkJCSAgICAgICAgICA8RGVzY3JpcHRpb24vPgorCQkJICAgICAgICA8L0lucHV0SW5mb3M+CisJCQkgICAgICAgIDxPdXRwdXRJbmZvcyBOYW1lPSJwb3NpdGlvbiI+CisJCQkgICAgICAgICAgPERlc2NyaXB0aW9uLz4KKwkJCSAgICAgICAgPC9PdXRwdXRJbmZvcz4KKwkJCSAgICAgICAgPE91dHB1dEluZm9zIE5hbWU9InV0Y190aW1lIj4KKwkJCSAgICAgICAgICA8RGVzY3JpcHRpb24vPgorCQkJICAgICAgICA8L091dHB1dEluZm9zPgorCQkJCQlbL2NvbW1lbnRdCisJCQkgICAgICA8L0NvbXBvbmVudEJveD4KKwkJCQlbL2Zvcl0KKwkJCQkJW2xldCBlbHQgOiBFbGVtZW50ID0gYy5vY2xBc1R5cGUoRWxlbWVudCldCisJCQkJCVtmb3IgKHBvcnQgOiBQb3J0IHwgZ2V0SW5wdXRQb3J0c0ZvckVsZW1lbnQoZWx0KSldCisJCSAgICAgIAk8SW5wdXRCb3ggSW5zdGFuY2VOYW1lPSJbcG9ydC5uYW1lL10iIHJldmVyc2VkPSJmYWxzZSIgeD0iNTAiIHk9IlsxMDAgKyBpKjUwL10iIHo9Ii0xIj4KKwkJICAgICAgICA8RGVzY3JpcHRpb24vPgorCQkgICAgICAJPC9JbnB1dEJveD4KKwkJCQkgIAlbL2Zvcl0KKwkJCQkJW2ZvciAocG9ydCA6IFBvcnQgfCBnZXRPdXRwdXRQb3J0c0ZvckVsZW1lbnQoZWx0KSldCisJCQkgICAgICA8T3V0cHV0Qm94IEluc3RhbmNlTmFtZT0iW3BvcnQubmFtZS9dIiByZXZlcnNlZD0iZmFsc2UiIHg9IjYwMCIgeT0iWzEwMCArIGkqNTAvXSIgej0iLTEiPgorCQkJICAgICAgICA8RGVzY3JpcHRpb24vPgorCQkJICAgICAgPC9PdXRwdXRCb3g+CisJCQkJCVsvZm9yXQorCQkJCQlbL2xldF0KKwkJICAgIDwvUlRCb2FyZFZpZXc+CisJICA8L01hY3JvQ29tcG9uZW50TW9kZWw+Cis8L01hY3JvUGFja2FnZT4KKwkJCQlbL2ZpbGVdCisJCQlbL2lmXQorCQlbL2xldF0KKwlbL2Zvcl0KK1svdGVtcGxhdGVdCmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc19tYWtlZmlsZS5lbXRsIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfbWFrZWZpbGUuZW10bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mODRiM2Q3Ci0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfbWFrZWZpbGUuZW10bApAQCAtMCwwICsxLDU1NCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzx4bWk6WE1JIHhtaTp2ZXJzaW9uPSIyLjAiIHhtbG5zOnhtaT0iaHR0cDovL3d3dy5vbWcub3JnL1hNSSIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgeG1sbnM6ZWNvcmU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUiIHhtbG5zOm10bD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9hY2NlbGVvL210bC8zLjAiIHhtbG5zOm9jbC5lY29yZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvRWNvcmUiPgorICA8bXRsOk1vZHVsZSBuYW1lPSJnZW5lcmF0ZV9ydG1hcHNfbWFrZWZpbGUiIG5zVVJJPSJvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmludGVtcG9yYTo6cnRtYXBzOjpmaWxlczo6Z2VuZXJhdGVfcnRtYXBzX21ha2VmaWxlIiBzdGFydEhlYWRlclBvc2l0aW9uPSI3NzMiIGVuZEhlYWRlclBvc2l0aW9uPSI5NjUiPgorICAgIDxpbnB1dD4KKyAgICAgIDx0YWtlc1R5cGVzRnJvbSBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8iLz4KKyAgICA8L2lucHV0PgorICAgIDxpbnB1dD4KKyAgICAgIDx0YWtlc1R5cGVzRnJvbSBocmVmPSJodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEjLyIvPgorICAgIDwvaW5wdXQ+CisgICAgPGltcG9ydHMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5lbXRsIy8wIi8+CisgICAgPGltcG9ydHMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAiLz4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6VGVtcGxhdGUiIG5hbWU9ImdlbmVyYXRlUlRNYXBzTWFrZWZpbGUiIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyIvPgorICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGaWxlQmxvY2siIG9wZW5Nb2RlPSJPdmVyV3JpdGUiPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyYjeEQ7JiN4QTsjIFJUTWFwcyBNYWtlZmlsZSYjeEQ7JiN4QTsjIENvcHlyaWdodCAyMDAyLTIwMTEgKEMpIEludGVtcG9yYSBTLkEuJiN4RDsmI3hBOyYjeEQ7JiN4QTtST09URElSICA6PSAkKHJlYWxwYXRoICQoQ1VSRElSKS8uLikmI3hEOyYjeEE7aWZlcSAoJChST09URElSKSwpJiN4RDsmI3hBOyQoZXJyb3IgUGxlYXNlIHVzZSBtYWtlIGF0IGxlYXN0IHZlcnNpb24gMy44MSkmI3hEOyYjeEE7ZW5kaWYmI3hEOyYjeEE7JiN4RDsmI3hBOyMgQWRkIEMrKyBzb3VyY2VzIGhlcmUmI3hEOyYjeEE7c291cmNlcyAgPSAgXCYjeEQ7JiN4QTsiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGb3JCbG9jayI+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpJZkJsb2NrIj4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5OyYjeDk7bWFwc18iLz4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNYWtlZmlsZS8lLjEvJS4yL2VsdCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIuY3BwIFwmI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICA8aWZFeHByIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvaXNNYWNyb0NvbXBvbmVudCIvPgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJlbHQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvJS4xLyUuMi9lbHQiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlRXhwIiBlVHlwZT0iLzExL0NsYXNzIj4KKyAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnlfQ2xhc3Mvb2NsQXNUeXBlIi8+CisgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkJvb2xlYW5MaXRlcmFsRXhwIiBib29sZWFuU3ltYm9sPSJmYWxzZSI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbl9DbGFzcy89Ii8+CisgICAgICAgICAgICA8L2lmRXhwcj4KKyAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgPGxvb3BWYXJpYWJsZSBuYW1lPSJlbHQiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICA8L2xvb3BWYXJpYWJsZT4KKyAgICAgICAgICA8aXRlclNldCB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiIgZVR5cGU9Ii84L1NlcXVlbmNlKE5hbWVkRWxlbWVudCkiPgorICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0Q29tcG9uZW50TW9kZWxzIi8+CisgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvbW9kZWwiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgIDwvaXRlclNldD4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iIyAiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpQcm90ZWN0ZWRBcmVhQmxvY2siPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7IyAiLz4KKyAgICAgICAgICA8bWFya2VyIHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJBZGRpdGlvbmFsIEMrKyBzb3VyY2VzIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8L21hcmtlcj4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyYjeEQ7JiN4QTsjIEFkZCBDIHNvdXJjZXMgaGVyZSYjeEQ7JiN4QTsjICIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOlByb3RlY3RlZEFyZWFCbG9jayI+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTtjc291cmNlcyA9ICYjeEQ7JiN4QTsjICIvPgorICAgICAgICAgIDxtYXJrZXIgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IkFkZGl0aW9uYWwgQyBzb3VyY2VzIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8L21hcmtlcj4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyYjeEQ7JiN4QTtQQ0sgICAgICA9IHJ0bWFwc18iLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01ha2VmaWxlL21vZGVsIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii5wY2sgJiN4RDsmI3hBOyYjeEQ7JiN4QTsjIFRvIGFkZCBvcHRpb25zIHRvIGxpbms6JiN4RDsmI3hBOyMgIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6UHJvdGVjdGVkQXJlYUJsb2NrIj4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyMgTERMSUJTICArPSAtbE15TGliJiN4RDsmI3hBOyMgTERGTEFHUyArPSAtTC9teS9kaXJlY3RvcnkvJiN4RDsmI3hBOyMgIi8+CisgICAgICAgICAgPG1hcmtlciB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iQWRkaXRpb25hbCBsaWJyYXJpZXMiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDwvbWFya2VyPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7JiN4RDsmI3hBOyMgVG8gYWRkIG9wdGlvbnMgdG8gdGhlIGNvbXBpbGVyOiYjeEQ7JiN4QTsjICIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOlByb3RlY3RlZEFyZWFCbG9jayI+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsjIENGTEFHUyAgICs9IG15IHNwZWNpZmljIEMgZmxhZ3MmI3hEOyYjeEE7IyBDWFhGTEFHUyArPSBteSBzcGVjaWZpYyBDKysgZmxhZ3MmI3hEOyYjeEE7Q1BQRkxBR1MgKz0gLUkuLi9pbmNsdWRlJiN4RDsmI3hBOyMgIi8+CisgICAgICAgICAgPG1hcmtlciB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iQWRkaXRpb25hbCBjb21waWxlciBvcHRpb25zIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8L21hcmtlcj4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyYjeEQ7JiN4QTthbGw6IHBjayYjeEQ7JiN4QTsmI3hEOyYjeEE7UlRNQVBTX1NES0RJUiA/PS9vcHQvcnRtYXBzJiN4RDsmI3hBO2luY2x1ZGUgJChSVE1BUFNfU0RLRElSKS90ZW1wbGF0ZXMudS9tYWtlZmlsZS5pbmMmI3hEOyYjeEE7JiN4RDsmI3hBOyIvPgorICAgICAgICA8ZmlsZVVybCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvU3RyaW5nX0NsYXNzLysiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0idXNlcl9zZGsvIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvbW9kZWwiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIudS9tYWtlZmlsZSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPC9maWxlVXJsPgorICAgICAgICA8Y2hhcnNldCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iVVRGLTgiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9jaGFyc2V0PgorICAgICAgPC9ib2R5PgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJtb2RlbCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICA8L210bDpNb2R1bGU+CisgIDxlY29yZTpFUGFja2FnZSBuYW1lPSJhZGRpdGlvbnMiPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU3RyaW5nX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSIrIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCBub24tc3RhbmRhcmQiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ib3RoZXIiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJJbnRlZ2VyX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJSZWFsX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvUmVhbCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFT2JqZWN0X0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2VuZXJhdGVSVE1hcHNNYWtlZmlsZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibW9kZWwiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0Q29tcG9uZW50TW9kZWxzIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0Q29tcG9uZW50TW9kZWxzIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8zL1NlcXVlbmNlKE5hbWVkRWxlbWVudCkiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im1vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzTWFjcm9Db21wb25lbnQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9pc01hY3JvQ29tcG9uZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY2xhc3MiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPY2xBbnlfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ29sbGVjdGlvbihUKV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0NvbGxlY3Rpb24oVCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU2VxdWVuY2UoVClfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TZXF1ZW5jZShUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPcmRlcmVkU2V0KFQpX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT3JkZXJlZFNldChUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJNb2RlbF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNsYXNzX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRWxlbWVudF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUHJvcGVydHlfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb25uZWN0b3JfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUGFyYW1ldGVyX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUGFyYW1ldGVyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNsYXNzaWZpZXJfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzc2lmaWVyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlBvcnRfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgPC9lY29yZTpFUGFja2FnZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8ZWNvcmU6RVBhY2thZ2UgbmFtZT0iY29sbGVjdGlvbnMiPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIG5hbWU9IlNlcXVlbmNlKE5hbWVkRWxlbWVudCkiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuTGlzdCI+CisgICAgICA8ZWxlbWVudFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICA8L2Vjb3JlOkVQYWNrYWdlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxlY29yZTpFUGFja2FnZSBuYW1lPSJ0eXBlcyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVUeXBlIiBuYW1lPSJDbGFzcyI+CisgICAgICA8cmVmZXJyZWRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICA8L2Vjb3JlOkVQYWNrYWdlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0iaSI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPGVjb3JlOkVBbm5vdGF0aW9uIHNvdXJjZT0icG9zaXRpb25zIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwNjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjU1NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTEyNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTI3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWtlZmlsZS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExMjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjU0MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvJS4xLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExOTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvJS4xLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTUzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNzU1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzOCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWtlZmlsZS8lLjEvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNzU2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5MTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjUwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01ha2VmaWxlLyUuMS8lLjIvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTgxMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTAxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1MSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWtlZmlsZS8lLjEvJS4yLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTg2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxODc1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1MiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWtlZmlsZS8lLjEvJS4yLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxODc2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4ODQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvJS4xLyUuMi8lLyUuMS9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4NzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTg3OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvJS4xLyUuMi8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTg4NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxODk0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1MiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvJS4xLyUuMi8lLyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTgxNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxODY1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWtlZmlsZS8lLjEvJS4yLyUvJS4zLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4MTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTg1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvJS4xLyUuMi8lLyUuMy8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4MzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTg1NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvJS4xLyUuMi8lLyUuMy8lLyUvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxODM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4MzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01ha2VmaWxlLyUuMS8lLjIvJS8lLjMvJS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4NDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTg1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvJS4xLyUuMi8lLyUuMy8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4NTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTg2NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvJS4xLyUuMi9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE3NjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTc3OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01ha2VmaWxlLyUuMS8lLjIvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNzgyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4MDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01ha2VmaWxlLyUuMS8lLjIvJS4xL21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxODAxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4MDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01ha2VmaWxlLyUuMS8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE5MTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTkxNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01ha2VmaWxlLyUuMS8lLjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE5MTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTk2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01ha2VmaWxlLyUuMS8lLjQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTk1MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTU2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1NiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvJS4xLyUuNC8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE5MjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTk1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvJS4xLyUuNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTk2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvJS4xLyUuNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTk5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMDYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1OSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvJS4xLyUuNi8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMDMyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIwNDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjYwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWtlZmlsZS8lLjEvJS42LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjAwOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMDMwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWtlZmlsZS8lLjEvJS43Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMDYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIwODMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjYyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWtlZmlsZS8lLjEvJS44Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMDg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIwOTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01ha2VmaWxlLyUuMS8lLjgvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIwODQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjA4OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvJS4xLyUuOSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjA5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTM0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2MyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvJS4xLyUuMTAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxMzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjIzOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01ha2VmaWxlLyUuMS8lLjEwLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxNzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjIyNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01ha2VmaWxlLyUuMS8lLjEwLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjE0NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTY4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWtlZmlsZS8lLjEvJS4xMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjIzOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjgwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3MCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvJS4xLyUuMTIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyODAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjQzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNzIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01ha2VmaWxlLyUuMS8lLjEyLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIzMjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjQyNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNzMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01ha2VmaWxlLyUuMS8lLjEyLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjI5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWtlZmlsZS8lLjEvJS4xMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjQzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvJS4xLyUuMTQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExMzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE3NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvJS4xLyUuMTQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTEzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTU4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNYWtlZmlsZS8lLjEvJS4xNC8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExMzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE0NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvJS4xLyUuMTQvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE1OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvJS4xLyUuMTQvJS8lLjEvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE1MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUvJS4xLyUuMTQvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExNzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01ha2VmaWxlLyUuMS8lLjE1Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTgzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExOTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01ha2VmaWxlL21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTA4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExMjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZWNvcmU6RUFubm90YXRpb24+Cis8L3htaTpYTUk+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc19tYWtlZmlsZS5tdGwgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc19tYWtlZmlsZS5tdGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzAyOTE1NwotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX21ha2VmaWxlLm10bApAQCAtMCwwICsxLDg0IEBACitbY29tbWVudCBlbmNvZGluZyA9IFVURi04IC9dCitbY29tbWVudF0KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIElOVEVNUE9SQSBTLkEuCisgKgorICogVGhpcyBzb2Z0d2FyZSBpcyBhIGNvbXB1dGVyIHByb2dyYW0gd2hvc2UgcHVycG9zZSBpcyB0byB0cmFuc2Zvcm0gUm9ib3RNTCBtb2RlbHMKKyAqIGludG8gUlRNYXBzIGRpYWdyYW1zIGFuZCBSVE1hcHMgY29tcG9uZW50cyB2aWEgc291cmNlIGNvZGUgZ2VuZXJhdGlvbiB0ZWNobmlxdWVzLgorICogCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBOaWNvbGFzIERVIExBQyAoSU5URU1QT1JBKSAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK1svY29tbWVudF0KK1ttb2R1bGUgZ2VuZXJhdGVfcnRtYXBzX21ha2VmaWxlKCdodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMy4wLjAvVU1MJywgJ2h0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMScpXQorCitbaW1wb3J0IG9yZzo6ZWNsaXBzZTo6cGFweXJ1czo6cm9ib3RtbDo6Z2VuZXJhdG9yczo6Y29tbW9uOjptbXF1ZXJpZXM6OkdlbmVyYWxRdWVyaWVzIC9dCitbaW1wb3J0IG9yZzo6ZWNsaXBzZTo6cGFweXJ1czo6cm9ib3RtbDo6Z2VuZXJhdG9yczo6Y29tbW9uOjptbXF1ZXJpZXM6OkFyY2hpdGVjdHVyZVF1ZXJpZXMgL10KKworCitbdGVtcGxhdGUgcHVibGljIGdlbmVyYXRlUlRNYXBzTWFrZWZpbGUobW9kZWwgOiBNb2RlbCldCisKK1tmaWxlICgndXNlcl9zZGsvJyArIG1vZGVsLm5hbWUgKyAnLnUvbWFrZWZpbGUnLCBmYWxzZSwgJ1VURi04JyldCisKKwlbY29tbWVudF1bZm9yIChlbHQ6IE5hbWVkRWxlbWVudCB8IGdldEVsZW1lbnRzV2l0aFN0ZXJlb3R5cGUobW9kZWwsJ1NlbnNvcicpKV0KKwkJU2Vuc29yOiBbZWx0Lm5hbWUvXQorCVsvZm9yXQorCVtmb3IgKGVsdDogTmFtZWRFbGVtZW50IHwgZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZShtb2RlbCwnQWN0dWF0b3InKSldCisJCUFjdHVhdG9yOiBbZWx0Lm5hbWUvXQorCVsvZm9yXQorCVtmb3IgKGVsdDogTmFtZWRFbGVtZW50IHwgZ2V0RWxlbWVudHNXaXRoU3RlcmVvdHlwZShtb2RlbCwnU3lzdGVtJykpXQorCQlTdWJzeXN0ZW06IFtlbHQubmFtZS9dCisJWy9mb3JdWy9jb21tZW50XQorCisKKyMgUlRNYXBzIE1ha2VmaWxlCisjIENvcHlyaWdodCAyMDAyLTIwMTEgKEMpIEludGVtcG9yYSBTLkEuCisKK1JPT1RESVIgIDo9ICQocmVhbHBhdGggJChDVVJESVIpLy4uKQoraWZlcSAoJChST09URElSKSwpCiskKGVycm9yIFBsZWFzZSB1c2UgbWFrZSBhdCBsZWFzdCB2ZXJzaW9uIDMuODEpCitlbmRpZgorCisjIEFkZCBDKysgc291cmNlcyBoZXJlCitzb3VyY2VzICA9ICBcCisJW2ZvciAoZWx0OiBOYW1lZEVsZW1lbnQgfCBnZXRDb21wb25lbnRNb2RlbHMobW9kZWwpKV0KKwkJW2lmIChpc01hY3JvQ29tcG9uZW50KGVsdC5vY2xBc1R5cGUoQ2xhc3MpKSA9IGZhbHNlKV0KKwkJbWFwc19bZWx0Lm5hbWUvXS5jcHAgXAorCQlbL2lmXQorCVsvZm9yXQorIyBbcHJvdGVjdGVkICgnQWRkaXRpb25hbCBDKysgc291cmNlcycpXQorIyBbL3Byb3RlY3RlZF0KKworIyBBZGQgQyBzb3VyY2VzIGhlcmUKKyMgW3Byb3RlY3RlZCAoJ0FkZGl0aW9uYWwgQyBzb3VyY2VzJyldCitjc291cmNlcyA9IAorIyBbL3Byb3RlY3RlZF0KKworUENLICAgICAgPSBydG1hcHNfW21vZGVsLm5hbWUvXS5wY2sgCisKKyMgVG8gYWRkIG9wdGlvbnMgdG8gbGluazoKKyMgW3Byb3RlY3RlZCAoJ0FkZGl0aW9uYWwgbGlicmFyaWVzJyldCisjIExETElCUyAgKz0gLWxNeUxpYgorIyBMREZMQUdTICs9IC1ML215L2RpcmVjdG9yeS8KKyMgWy9wcm90ZWN0ZWRdCisKKyMgVG8gYWRkIG9wdGlvbnMgdG8gdGhlIGNvbXBpbGVyOgorIyBbcHJvdGVjdGVkICgnQWRkaXRpb25hbCBjb21waWxlciBvcHRpb25zJyldCisjIENGTEFHUyAgICs9IG15IHNwZWNpZmljIEMgZmxhZ3MKKyMgQ1hYRkxBR1MgKz0gbXkgc3BlY2lmaWMgQysrIGZsYWdzCitDUFBGTEFHUyArPSAtSS4uL2luY2x1ZGUKKyMgWy9wcm90ZWN0ZWRdCisKK2FsbDogcGNrCisKK1JUTUFQU19TREtESVIgPz0vb3B0L3J0bWFwcworaW5jbHVkZSAkKFJUTUFQU19TREtESVIpL3RlbXBsYXRlcy51L21ha2VmaWxlLmluYworCitbL2ZpbGVdCitbL3RlbXBsYXRlXQpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfbW9kZWxfZGF0YXR5cGVzX2guZW10bCBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX21vZGVsX2RhdGF0eXBlc19oLmVtdGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDVlZmY3YgotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX21vZGVsX2RhdGF0eXBlc19oLmVtdGwKQEAgLTAsMCArMSwxNjUxIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHhtaTpYTUkgeG1pOnZlcnNpb249IjIuMCIgeG1sbnM6eG1pPSJodHRwOi8vd3d3Lm9tZy5vcmcvWE1JIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczplY29yZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSIgeG1sbnM6bXRsPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2FjY2VsZW8vbXRsLzMuMCIgeG1sbnM6b2NsLmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9FY29yZSI+CisgIDxtdGw6TW9kdWxlIG5hbWU9ImdlbmVyYXRlX3J0bWFwc19tb2RlbF9kYXRhdHlwZXNfaCIgbnNVUkk9Im9yZzo6ZWNsaXBzZTo6cGFweXJ1czo6cm9ib3RtbDo6Z2VuZXJhdG9yczo6aW50ZW1wb3JhOjpydG1hcHM6OmZpbGVzOjpnZW5lcmF0ZV9ydG1hcHNfbW9kZWxfZGF0YXR5cGVzX2giIHN0YXJ0SGVhZGVyUG9zaXRpb249Ijc3MyIgZW5kSGVhZGVyUG9zaXRpb249Ijk3NSI+CisgICAgPGlucHV0PgorICAgICAgPHRha2VzVHlwZXNGcm9tIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLyIvPgorICAgIDwvaW5wdXQ+CisgICAgPGlucHV0PgorICAgICAgPHRha2VzVHlwZXNGcm9tIGhyZWY9Imh0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMSMvIi8+CisgICAgPC9pbnB1dD4KKyAgICA8aW1wb3J0cyBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5lbXRsIy8wIi8+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlRlbXBsYXRlIiBuYW1lPSJnZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzIiB2aXNpYmlsaXR5PSJQdWJsaWMiPgorICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGaWxlQmxvY2siIG9wZW5Nb2RlPSJPdmVyV3JpdGUiPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iI2lmbmRlZiBfX1JUTUFQU18iLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InJvb3RfbW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvcm9vdF9tb2RlbCI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJfREFUQVRZUEVTX0NPTU1PTl9IX18mI3hEOyYjeEE7I2RlZmluZSBfX1JUTUFQU18iLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InJvb3RfbW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvcm9vdF9tb2RlbCI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJfREFUQVRZUEVTX0NPTU1PTl9IX18mI3hEOyYjeEE7JiN4RDsmI3hBOyNpbmNsdWRlICZxdW90O3JvYm90bWwvbWFwc19yb2JvdG1sX2RhdGF0eXBlc19hbGwuaCZxdW90OyYjeEQ7JiN4QTsmI3hEOyYjeEE7JiN4RDsmI3hBOy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLyYjeEQ7JiN4QTsvKiBEQVRBIFRZUEVTIEZPUldBUkQgREVDTEFSQVRJT05TKi8mI3hEOyYjeEE7LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovJiN4RDsmI3hBOyYjeEQ7JiN4QTsiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGb3JCbG9jayI+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpJZkJsb2NrIj4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJlbnVtICIvPgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZGF0YXR5cGUiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjUvZGF0YXR5cGUiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iOyYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgIDxpZkV4cHIgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJkYXRhdHlwZSIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNS9kYXRhdHlwZSI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVFeHAiIGVUeXBlPSIvMTMvRW51bWVyYXRpb24iPgorICAgICAgICAgICAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VudW1lcmF0aW9uIi8+CisgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueV9DbGFzcy9vY2xJc0tpbmRPZiIvPgorICAgICAgICAgICAgPC9pZkV4cHI+CisgICAgICAgICAgICA8ZWxzZT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImNsYXNzICIvPgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZGF0YXR5cGUiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjUvZGF0YXR5cGUiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IjsmI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICA8L2Vsc2U+CisgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgIDxsb29wVmFyaWFibGUgbmFtZT0iZGF0YXR5cGUiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICA8L2xvb3BWYXJpYWJsZT4KKyAgICAgICAgICA8aXRlclNldCB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiIgZVR5cGU9Ii8xMC9TZXF1ZW5jZShOYW1lZEVsZW1lbnQpIj4KKyAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAvZ2V0RWxlbWVudHNEYXRhVHlwZSIvPgorICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InJvb3RfbW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvcm9vdF9tb2RlbCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgPC9pdGVyU2V0PgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovJiN4RDsmI3hBOy8qIENPTVBPU0VEIERBVEEgVFlQRVMgSU5DTFVERSBGSUxFUyovJiN4RDsmI3hBOy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLyYjeEQ7JiN4QTsiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGb3JCbG9jayI+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiNpbmNsdWRlICZsdDsiLz4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InJvb3RfbW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvcm9vdF9tb2RlbCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLyIvPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZGF0YXR5cGUiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvZGF0YXR5cGUiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIuaD4mI3hEOyYjeEE7Ii8+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGaWxlQmxvY2siIG9wZW5Nb2RlPSJPdmVyV3JpdGUiPgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiNpZm5kZWYgX19fIi8+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJkYXRhdHlwZSIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy9kYXRhdHlwZSI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJfSF9fJiN4RDsmI3hBOyNkZWZpbmUgX19fIi8+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJkYXRhdHlwZSIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy9kYXRhdHlwZSI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJfSF9fJiN4RDsmI3hBOyYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6Rm9yQmxvY2siPgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOklmQmxvY2siPgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6SWZCbG9jayI+CisgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iI2luY2x1ZGUgJnF1b3Q7cm9ib3RtbC8iLz4KKyAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InByb3AiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41LyUuNS9wcm9wIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGVkRWxlbWVudC90eXBlIi8+CisgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLmgmcXVvdDsmI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICAgICAgICA8aWZFeHByIHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuZW10bCMvMC9pc1JvYm90TUxEYXRhVHlwZSIvPgorICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InJvb3RfbW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvcm9vdF9tb2RlbCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VHlwZUV4cCIgZVR5cGU9Ii8xMy9FbGVtZW50Ij4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueV9DbGFzcy9vY2xBc1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icHJvcCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS41L3Byb3AiPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZWRFbGVtZW50L3R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICA8L2lmRXhwcj4KKyAgICAgICAgICAgICAgICAgIDxlbHNlPgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iI2luY2x1ZGUgJnF1b3Q7Ii8+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJyb290X21vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzL3Jvb3RfbW9kZWwiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLyIvPgorICAgICAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InByb3AiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41LyUuNS9wcm9wIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1R5cGVkRWxlbWVudC90eXBlIi8+CisgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIuaCZxdW90OyYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgICAgICAgIDwvZWxzZT4KKyAgICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgICAgPGlmRXhwciB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5lbXRsIy8wL2lzUHJpbWl0aXZlVHlwZSIvPgorICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJwcm9wIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS43LyUuNS8lLjUvcHJvcCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlZEVsZW1lbnQvdHlwZSIvPgorICAgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVFeHAiIGVUeXBlPSIvMTMvRWxlbWVudCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnlfQ2xhc3Mvb2NsQXNUeXBlIi8+CisgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkJvb2xlYW5MaXRlcmFsRXhwIiBib29sZWFuU3ltYm9sPSJmYWxzZSI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbl9DbGFzcy89Ii8+CisgICAgICAgICAgICAgICAgPC9pZkV4cHI+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGxvb3BWYXJpYWJsZSBuYW1lPSJwcm9wIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgIDwvbG9vcFZhcmlhYmxlPgorICAgICAgICAgICAgICA8aXRlclNldCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIGVUeXBlPSIvMTAvU2V0KFByb3BlcnR5KSI+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9EYXRhVHlwZSIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJkYXRhdHlwZSIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy9kYXRhdHlwZSI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVFeHAiIGVUeXBlPSIvMTMvRGF0YVR5cGUiPgorICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9EYXRhVHlwZSIvPgorICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueV9DbGFzcy9vY2xBc1R5cGUiLz4KKyAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzc2lmaWVyL2dldEFsbEF0dHJpYnV0ZXMiLz4KKyAgICAgICAgICAgICAgPC9pdGVyU2V0PgorICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5lbXRsIy8wL2dldENwcENsYXNzRm9yRGF0YXRUeXBlIi8+CisgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRGF0YVR5cGUiLz4KKyAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImRhdGF0eXBlIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS43L2RhdGF0eXBlIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VHlwZUV4cCIgZVR5cGU9Ii8xMy9EYXRhVHlwZSI+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9EYXRhVHlwZSIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55X0NsYXNzL29jbEFzVHlwZSIvPgorICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsmI3hEOyYjeEE7I2VuZGlmIC8vX19fIi8+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJkYXRhdHlwZSIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy9kYXRhdHlwZSI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJfSF9fJiN4RDsmI3hBOyIvPgorICAgICAgICAgICAgPGZpbGVVcmwgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvU3RyaW5nX0NsYXNzLysiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvU3RyaW5nX0NsYXNzLysiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL1N0cmluZ19DbGFzcy8rIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvU3RyaW5nX0NsYXNzLysiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9InVzZXJfc2RrL2luY2x1ZGUvIj4KKyAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InJvb3RfbW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvcm9vdF9tb2RlbCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii8iPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImRhdGF0eXBlIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS43L2RhdGF0eXBlIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii5oIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICA8L2ZpbGVVcmw+CisgICAgICAgICAgICA8Y2hhcnNldCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iVVRGLTgiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8L2NoYXJzZXQ+CisgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgIDxsb29wVmFyaWFibGUgbmFtZT0iZGF0YXR5cGUiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICA8L2xvb3BWYXJpYWJsZT4KKyAgICAgICAgICA8aXRlclNldCB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiIgZVR5cGU9Ii8xMC9TZXF1ZW5jZShOYW1lZEVsZW1lbnQpIj4KKyAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAvZ2V0RWxlbWVudHNEYXRhVHlwZSIvPgorICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InJvb3RfbW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvcm9vdF9tb2RlbCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgPC9pdGVyU2V0PgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7I2VuZGlmIC8vX19SVE1BUFNfIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJyb290X21vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzL3Jvb3RfbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iX19EQVRBVFlQRVNfSF9fJiN4RDsmI3hBOyIvPgorICAgICAgICA8ZmlsZVVybCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvU3RyaW5nX0NsYXNzLysiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9InVzZXJfc2RrL2luY2x1ZGUvIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJyb290X21vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzL3Jvb3RfbW9kZWwiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIvIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJyb290X21vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzL3Jvb3RfbW9kZWwiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJfZGF0YXR5cGVzX2FsbC5oIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8L2ZpbGVVcmw+CisgICAgICAgIDxjaGFyc2V0IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJVVEYtOCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2NoYXJzZXQ+CisgICAgICA8L2JvZHk+CisgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyIvPgorICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGaWxlQmxvY2siIG9wZW5Nb2RlPSJPdmVyV3JpdGUiPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iI2lmbmRlZiBfX01BUFNfIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJyb290X21vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzL3Jvb3RfbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iX0RBVEFUWVBFX0ZJTFRFUlNfSF9fJiN4RDsmI3hBOyNkZWZpbmUgX19NQVBTXyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icm9vdF9tb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy9yb290X21vZGVsIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il9EQVRBVFlQRV9GSUxURVJTX0hfXyYjeEQ7JiN4QTsmI3hEOyYjeEE7JiN4RDsmI3hBOyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZvckJsb2NrIj4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iI2luY2x1ZGUgJnF1b3Q7Ii8+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJyb290X21vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzL3Jvb3RfbW9kZWwiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii8iLz4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImRhdGF0eXBlIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUuMi8lLjUvZGF0YXR5cGUiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIuaCZxdW90OyYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICA8bG9vcFZhcmlhYmxlIG5hbWU9ImRhdGF0eXBlIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgICAgICAgICAgPC9sb29wVmFyaWFibGU+CisgICAgICAgICAgPGl0ZXJTZXQgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iIGVUeXBlPSIvMTAvU2VxdWVuY2UoTmFtZWRFbGVtZW50KSI+CisgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5lbXRsIy8wL2dldEVsZW1lbnRzRGF0YVR5cGUiLz4KKyAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJyb290X21vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzL3Jvb3RfbW9kZWwiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgIDwvaXRlclNldD4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iI2luY2x1ZGUgJnF1b3Q7bWFwcy5ocHAmcXVvdDsmI3hEOyYjeEE7JiN4RDsmI3hBOyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZvckJsb2NrIj4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLy8gVGhlIFJUTWFwcyBpbnB1dCBmaWx0ZXIgZm9yIHRoZSBzdHJ1Y3R1cmUgIi8+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJkYXRhdHlwZSIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLjIvJS43L2RhdGF0eXBlIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBO2NvbnN0IE1BUFNUeXBlRmlsdGVyQmFzZSBNQVBTRmlsdGVyIi8+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJkYXRhdHlwZSIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLjIvJS43L2RhdGF0eXBlIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iID0gTUFQU19GSUxURVJfVVNFUl9TVFJVQ1RVUkUoIi8+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJkYXRhdHlwZSIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLjIvJS43L2RhdGF0eXBlIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iKTsmI3hEOyYjeEE7Ii8+CisgICAgICAgICAgPGxvb3BWYXJpYWJsZSBuYW1lPSJkYXRhdHlwZSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICAgICAgICAgIDwvbG9vcFZhcmlhYmxlPgorICAgICAgICAgIDxpdGVyU2V0IHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIiBlVHlwZT0iLzEwL1NlcXVlbmNlKE5hbWVkRWxlbWVudCkiPgorICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuZW10bCMvMC9nZXRFbGVtZW50c0RhdGFUeXBlIi8+CisgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icm9vdF9tb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy9yb290X21vZGVsIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICA8L2l0ZXJTZXQ+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsjZW5kaWYgLy9fX01BUFNfIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJyb290X21vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzL3Jvb3RfbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iX0RBVEFUWVBFX0ZJTFRFUlNfSF9fJiN4RDsmI3hBOyIvPgorICAgICAgICA8ZmlsZVVybCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvU3RyaW5nX0NsYXNzLysiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9InVzZXJfc2RrL2luY2x1ZGUvIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJyb290X21vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzL3Jvb3RfbW9kZWwiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIvIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJyb290X21vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzL3Jvb3RfbW9kZWwiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJfZGF0YXR5cGVfZmlsdGVycy5oIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8L2ZpbGVVcmw+CisgICAgICAgIDxjaGFyc2V0IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJVVEYtOCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2NoYXJzZXQ+CisgICAgICA8L2JvZHk+CisgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyIvPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJyb290X21vZGVsIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgIDwvbXRsOk1vZHVsZT4KKyAgPGVjb3JlOkVQYWNrYWdlIG5hbWU9ImFkZGl0aW9ucyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTdHJpbmdfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9IisiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIG5vbi1zdGFuZGFyZCIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJvdGhlciI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkludGVnZXJfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlJlYWxfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9SZWFsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkVPYmplY3RfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcyIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJyb290X21vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzUm9ib3RNTERhdGFUeXBlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuZW10bCMvMC9pc1JvYm90TUxEYXRhVHlwZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InJvb3RfbW9kZWwiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGF0YXR5cGVfbmFtZSI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRDcHBDbGFzc0ZvckRhdGF0VHlwZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAvZ2V0Q3BwQ2xhc3NGb3JEYXRhdFR5cGUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImR0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldEVsZW1lbnRzRGF0YVR5cGUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5lbXRsIy8wL2dldEVsZW1lbnRzRGF0YVR5cGUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuZW10bCMvMy9TZXF1ZW5jZShOYW1lZEVsZW1lbnQpIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbHQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNQcmltaXRpdmVUeXBlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuZW10bCMvMC9pc1ByaW1pdGl2ZVR5cGUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbHQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9jbEFueV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb2xsZWN0aW9uKFQpX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQ29sbGVjdGlvbihUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTZXF1ZW5jZShUKV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1NlcXVlbmNlKFQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9yZGVyZWRTZXQoVClfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PcmRlcmVkU2V0KFQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik1vZGVsX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRWxlbWVudF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRGF0YVR5cGVfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9EYXRhVHlwZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgIDwvZWNvcmU6RVBhY2thZ2U+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxlY29yZTpFUGFja2FnZSBuYW1lPSJjb2xsZWN0aW9ucyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgbmFtZT0iU2VxdWVuY2UoTmFtZWRFbGVtZW50KSIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEudXRpbC5MaXN0Ij4KKyAgICAgIDxlbGVtZW50VHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNldFR5cGUiIG5hbWU9IlNldChQcm9wZXJ0eSkiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuU2V0Ij4KKyAgICAgIDxlbGVtZW50VHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgPC9lY29yZTpFUGFja2FnZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8ZWNvcmU6RVBhY2thZ2UgbmFtZT0idHlwZXMiPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlVHlwZSIgbmFtZT0iRW51bWVyYXRpb24iPgorICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRW51bWVyYXRpb24iLz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJvY2wuZWNvcmU6VHlwZVR5cGUiIG5hbWU9IkRhdGFUeXBlIj4KKyAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVUeXBlIiBuYW1lPSJFbGVtZW50Ij4KKyAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgPC9lY29yZTpFUGFja2FnZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9ImkiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0iaSI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJpIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9ImkiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJpIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPGVjb3JlOkVBbm5vdGF0aW9uIHNvdXJjZT0icG9zaXRpb25zIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk4MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMjY5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI1NjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE1OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTc1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE3NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTkxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS4xL3Jvb3RfbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE4NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjMzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTIzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS4zL3Jvb3RfbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEyMzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTI0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTI1MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNDYzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTQ2MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNjQyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzNSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTUzMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNjM0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzNiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNTcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE1NzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTU3OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNTkxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNS8lLyUuMS9kYXRhdHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTU3OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNTg2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNS8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTU5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNTk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzNyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjUvJS8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE1MzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTU2OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjUvJS8lLjMvZGF0YXR5cGUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE1MzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTU0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjUvJS8lLjMvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTU1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNTY3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNS8lLyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTU5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNjI5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzOCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjUvJS8lLjQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTYwNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNjEwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzOSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjUvJS8lLjQvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNjExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE2MjQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS41LyUvJS40LyUuMS9kYXRhdHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTYxMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNjE5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNS8lLyUuNC8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE2MjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTYyOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS41L2RhdGF0eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNDY5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE0OTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0OTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTUyNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjUvJS4xL3Jvb3RfbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE1MTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTUyNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE2NDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTc4MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS43Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNzgwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI1MDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQ2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxODQ3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4NTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQ3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4NTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTg3MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS4xL3Jvb3RfbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4NTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTg2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxODc1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4NzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQ3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4NzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTg5MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS4zL2RhdGF0eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxODc3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4ODUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS43LyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTg5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxODk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxODk4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI0OTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQ4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTk5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMDAzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0OSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjAwNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMDE3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS4xL2RhdGF0eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMDA0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIwMTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS43LyUuNS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIwMTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjAzNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS43LyUuNS8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIwMzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjA1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41LyUuMy9kYXRhdHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjAzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMDQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMDUyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIwNjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjUwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS41Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMDYwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIzOTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjUyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS41LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxMzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjM4MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS43LyUuNS8lLjUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMTk4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIzNzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjU0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS41LyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMjcwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIyODgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjU1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS41LyUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyODkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjMwMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41LyUuNS8lLyUvJS4xLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyODkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjI5OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41LyUuNS8lLyUvJS4xLyUvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjI4OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjkzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS41LyUvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIzMDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjMxMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS43LyUuNS8lLjUvJS8lLyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjIwMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjY3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS41LyUvJS8lLjMvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjIyMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjUwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS41LyUvJS8lLjMvJS9yb290X21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMjIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIyMzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS43LyUuNS8lLjUvJS8lLyUuMy8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyNDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjI0OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41LyUuNS8lLyUvJS4zLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjI1MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjY1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS41LyUvJS8lLjMvJS4xLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyNTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjI2MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41LyUuNS8lLyUvJS4zLyUuMS8lL3Byb3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyNTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjI1NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41LyUuNS8lLyUvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMzExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIzNzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjU2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS41LyUvJS8lLjQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjMxOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzI5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41LyUuNS8lLyUvJS40LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjMzMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS41LyUvJS8lLjQvJS4xL3Jvb3RfbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIzMzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjM0MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41LyUuNS8lLyUvJS40LyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjM0NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzQ4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41LyUuNS8lLyUvJS40LyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjM0OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzYzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS41LyUvJS8lLjQvJS4zLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIzNDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjM1OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41LyUuNS8lLyUvJS40LyUuMy8lL3Byb3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIzNDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjM1MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41LyUuNS8lLyUvJS40LyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjM2NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzcwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41LyUuNS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjEzOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTk0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS41LyUvJS4xLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxNDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjE4NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41LyUuNS8lLyUuMS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxNTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjE4NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41LyUuNS8lLyUuMS8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjE1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTY1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS41LyUvJS4xLyUvJS8lL3Byb3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxNTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjE2MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41LyUuNS8lLyUuMS8lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMTc2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIxODMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjczIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS43LyUuNS8lLjUvJS8lLjEvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMTg4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIxOTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjc0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS43LyUuNS8lLjUvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjA2NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMDgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1MiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41LyUuNS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIwODQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjEzMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41LyUuNS8lLjEvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjA4NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTEyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS41LyUuMS8lL2RhdGF0eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMDg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIwOTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjc4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS43LyUuNS8lLjUvJS4xLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjEwMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS42Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMzkzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIzOTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjYxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS43Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMzk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI0NDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjgxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS43LyUuNS8lLjcvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjQyMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNDQ4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS43LyUvZGF0YXR5cGUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI0MjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjQyOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41LyUuNy8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI0MzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjQ0NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41LyUuOCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjQ1MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNDY3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2MyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvJS41LyUuOSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjQ2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNDgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS45L2RhdGF0eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNDY4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI0NzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjg3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS43LyUuNS8lLjEwIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNDgzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI0ODkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjY0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS4xMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTkwNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTcxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS4xMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTA1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5NjQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjkwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS43LyUuNS8lLjExLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTkwNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTQ4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS4xMS8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTkwNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTQyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS4xMS8lLyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTA1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5MjQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjkzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS43LyUuNS8lLjExLyUvJS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTkyNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTQyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS4xMS8lLyUvJS8lLjEvcm9vdF9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTkyNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTM3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS4xMS8lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5NDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjk2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS43LyUuNS8lLjExLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5NjQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjk3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS43LyUuNS8lLjExLyUvJS4xL2RhdGF0eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5NTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjk4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS43LyUuNS8lLjExLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTk2NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTcxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjUvJS4xMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTk4MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTg3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMDAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS8lLjcvZGF0YXR5cGUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE3ODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTgwOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuNy8lLjYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4MTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTg0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTAyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS43LyUuNi9yb290X21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxODMyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4NDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuOCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjUwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTI3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTA0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS45Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNTI4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI1NDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuOS9yb290X21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNTI4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI1MzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuMTAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI1NDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjU2MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuMTEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwNTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTEzOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTA4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS4xMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDU2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExMTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuMTEvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDU2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwOTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuMTEvJS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwNTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTA5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTExIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS4xMS8lLyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDU2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwNzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuMTEvJS8lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDc4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwOTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuMTEvJS8lLyUvJS4xL3Jvb3RfbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwNzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTA4OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTE0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS4xMS8lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwOTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuMTEvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExMDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTExNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTE2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUvJS4xMS8lLyUuMS9yb290X21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTAyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExMTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuMTEvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTIwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExMzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLyUuMTIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTE5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjU3MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNTczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3MCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTIwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjU3MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMjU0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3MSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTIxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUuMi8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNjg1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI3MDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjcyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS4yLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjcwMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNzE2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS4yLyUuMS9yb290X21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNzAxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI3MTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLjIvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNzE4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI3NTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjcyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS4yLyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjc1NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNzcyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS4yLyUuMy9yb290X21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNzU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI3NjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLjIvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNzc0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI4MDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjczIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMjgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS4yLyUuNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjgwMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyOTI0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3NiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTI5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUuMi8lLjUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjg2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyODc4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTMwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUuMi8lLjUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyODc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI4OTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLjIvJS41LyUuMS9yb290X21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyODc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI4ODkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLjIvJS41LyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjg5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyODk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTMzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUuMi8lLjUvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyODk4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI5MTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLjIvJS41LyUuMy9kYXRhdHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjg5OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyOTA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMzUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS4yLyUuNS8lLjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI5MTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjkxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNzciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLjIvJS41L2RhdGF0eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyODA3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI4MzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijc2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMzciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS4yLyUuNS8lLjUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI4MzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjg2NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTM4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUuMi8lLjUvJS41L3Jvb3RfbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI4NTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjg2MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTM5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUuMi8lLjYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI5MjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjk0OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNzkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLjIvJS43Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyOTQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMxODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjgxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNDEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS4yLyUuNy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMDE2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMwNjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjgyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNDIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS4yLyUuNy8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMwNjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzA3NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUuMi8lLjcvJS4xL2RhdGF0eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMDYyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMwNzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLjIvJS43LyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzA3NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMTE0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI4MyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQ1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUuMi8lLjcvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMTE1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMxMjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLjIvJS43LyUuMy9kYXRhdHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzExNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMTIzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNDciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS4yLyUuNy8lLjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMxMzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzE2MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iODMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLjIvJS43LyUuNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzE2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMTc0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNDkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS4yLyUuNy8lLjUvZGF0YXR5cGUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMxNjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzE2OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTUwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUuMi8lLjcvJS42Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMTc2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMxODAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjgzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS4yLyUuNy9kYXRhdHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjk1NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyOTc4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI4MSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTUyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUuMi8lLjcvJS43Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyOTgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMwMTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLjIvJS43LyUuNy9yb290X21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMDAxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMwMTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLjIvJS44Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMTg4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMyMDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijg1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNTUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS4yLyUuOSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzIwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMjIyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNTYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS4yLyUuOS9yb290X21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMjA3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMyMTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLjIvJS4xMCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzIyNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMjQ3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI4NiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTU4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUuMi8lLjExIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNTgwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI2NjUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLjIvJS4xMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNTgwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI2NDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLjIvJS4xMS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI1ODAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjYyMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTYxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUuMi8lLjExLyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNTgwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI2MTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLjIvJS4xMS8lLyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNTgwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI1OTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLjIvJS4xMS8lLyUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI2MDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjYxNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTY0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzLyUuMi8lLjExLyUvJS8lLyUuMS9yb290X21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNjAyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI2MTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLjIvJS4xMS8lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNjIwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI2MjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLjIvJS4xMS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjYyNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjQxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNjciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS4yLyUuMTEvJS8lLjEvcm9vdF9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjYyNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjM2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNjgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS4yLyUuMTEvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNjQ0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI2NjUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNNb2RlbERhdGFUeXBlcy8lLjIvJS4xMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjY3NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNzAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMjU2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMyNTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijg4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNzEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMvcm9vdF9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTAyNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2Vjb3JlOkVBbm5vdGF0aW9uPgorPC94bWk6WE1JPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfbW9kZWxfZGF0YXR5cGVzX2gubXRsIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfbW9kZWxfZGF0YXR5cGVzX2gubXRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRhOTc3MjIKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc19tb2RlbF9kYXRhdHlwZXNfaC5tdGwKQEAgLTAsMCArMSw4OSBAQAorW2NvbW1lbnQgZW5jb2RpbmcgPSBVVEYtOCAvXQorW2NvbW1lbnRdCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBJTlRFTVBPUkEgUy5BLgorICoKKyAqIFRoaXMgc29mdHdhcmUgaXMgYSBjb21wdXRlciBwcm9ncmFtIHdob3NlIHB1cnBvc2UgaXMgdG8gdHJhbnNmb3JtIFJvYm90TUwgbW9kZWxzCisgKiBpbnRvIFJUTWFwcyBkaWFncmFtcyBhbmQgUlRNYXBzIGNvbXBvbmVudHMgdmlhIHNvdXJjZSBjb2RlIGdlbmVyYXRpb24gdGVjaG5pcXVlcy4KKyAqIAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgTmljb2xhcyBEVSBMQUMgKElOVEVNUE9SQSkgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCitbL2NvbW1lbnRdCitbbW9kdWxlIGdlbmVyYXRlX3J0bWFwc19tb2RlbF9kYXRhdHlwZXNfaCgnaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzMuMC4wL1VNTCcsICdodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEnKV0KKworW2ltcG9ydCBvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmNvbW1vbjo6bW1xdWVyaWVzOjpEYXRhVHlwZVF1ZXJpZXMgL10KKworW3RlbXBsYXRlIHB1YmxpYyBnZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzKHJvb3RfbW9kZWwgOiBNb2RlbCldCitbZmlsZSAoJ3VzZXJfc2RrL2luY2x1ZGUvJyArIHJvb3RfbW9kZWwubmFtZSArICcvJyArIHJvb3RfbW9kZWwubmFtZSArICdfZGF0YXR5cGVzX2FsbC5oJywgZmFsc2UsICdVVEYtOCcpXQorI2lmbmRlZiBfX1JUTUFQU19bcm9vdF9tb2RlbC5uYW1lL11fREFUQVRZUEVTX0NPTU1PTl9IX18KKyNkZWZpbmUgX19SVE1BUFNfW3Jvb3RfbW9kZWwubmFtZS9dX0RBVEFUWVBFU19DT01NT05fSF9fCisKKyNpbmNsdWRlICJyb2JvdG1sL21hcHNfcm9ib3RtbF9kYXRhdHlwZXNfYWxsLmgiCisKKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKiBEQVRBIFRZUEVTIEZPUldBUkQgREVDTEFSQVRJT05TKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCitbZm9yIChkYXRhdHlwZSA6IE5hbWVkRWxlbWVudCB8IGdldEVsZW1lbnRzRGF0YVR5cGUocm9vdF9tb2RlbCkpXQorW2lmIChkYXRhdHlwZS5vY2xJc0tpbmRPZihFbnVtZXJhdGlvbikpXQorZW51bSBbZGF0YXR5cGUubmFtZS9dOworW2Vsc2VdCitjbGFzcyBbZGF0YXR5cGUubmFtZS9dOworWy9pZl0KK1svZm9yXQorCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qIENPTVBPU0VEIERBVEEgVFlQRVMgSU5DTFVERSBGSUxFUyovCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK1tmb3IgKGRhdGF0eXBlIDogTmFtZWRFbGVtZW50IHwgZ2V0RWxlbWVudHNEYXRhVHlwZShyb290X21vZGVsKSldCisjaW5jbHVkZSA8W3Jvb3RfbW9kZWwubmFtZS9dL1tkYXRhdHlwZS5uYW1lL10uaD4KKwlbZmlsZSAoJ3VzZXJfc2RrL2luY2x1ZGUvJyArIHJvb3RfbW9kZWwubmFtZSArICcvJyArIGRhdGF0eXBlLm5hbWUgKyAnLmgnLCBmYWxzZSwgJ1VURi04JykpXQorI2lmbmRlZiBfX19bZGF0YXR5cGUubmFtZS9dX0hfXworI2RlZmluZSBfX19bZGF0YXR5cGUubmFtZS9dX0hfXworCitbZm9yIChwcm9wIDogUHJvcGVydHkgfCBkYXRhdHlwZS5vY2xBc1R5cGUoRGF0YVR5cGUpLmdldEFsbEF0dHJpYnV0ZXMoKSldCitbaWYgKGlzUHJpbWl0aXZlVHlwZShwcm9wLnR5cGUub2NsQXNUeXBlKEVsZW1lbnQpKSA9IGZhbHNlKV0KKwlbaWYgKGlzUm9ib3RNTERhdGFUeXBlKHJvb3RfbW9kZWwub2NsQXNUeXBlKEVsZW1lbnQpLHByb3AudHlwZS5uYW1lKSldCisjaW5jbHVkZSAicm9ib3RtbC9bcHJvcC50eXBlLm5hbWUvXS5oIgorCVtlbHNlXQorI2luY2x1ZGUgIltyb290X21vZGVsLm5hbWUvXS9bcHJvcC50eXBlLm5hbWUvXS5oIgorCVsvaWZdCitbL2lmXQorWy9mb3JdCisKK1tnZXRDcHBDbGFzc0ZvckRhdGF0VHlwZShkYXRhdHlwZS5vY2xBc1R5cGUoRGF0YVR5cGUpKS9dCisKKyNlbmRpZiAvL19fX1tkYXRhdHlwZS5uYW1lL11fSF9fCisJWy9maWxlXQorWy9mb3JdCisKKyNlbmRpZiAvL19fUlRNQVBTX1tyb290X21vZGVsLm5hbWUvXV9fREFUQVRZUEVTX0hfXworWy9maWxlXQorCitbZmlsZSAoJ3VzZXJfc2RrL2luY2x1ZGUvJyArIHJvb3RfbW9kZWwubmFtZSArICcvJyArIHJvb3RfbW9kZWwubmFtZSArICdfZGF0YXR5cGVfZmlsdGVycy5oJywgZmFsc2UsICdVVEYtOCcpXQorI2lmbmRlZiBfX01BUFNfW3Jvb3RfbW9kZWwubmFtZS9dX0RBVEFUWVBFX0ZJTFRFUlNfSF9fCisjZGVmaW5lIF9fTUFQU19bcm9vdF9tb2RlbC5uYW1lL11fREFUQVRZUEVfRklMVEVSU19IX18KKworCitbZm9yIChkYXRhdHlwZSA6IE5hbWVkRWxlbWVudCB8IGdldEVsZW1lbnRzRGF0YVR5cGUocm9vdF9tb2RlbCkpXQorI2luY2x1ZGUgIltyb290X21vZGVsLm5hbWUvXS9bZGF0YXR5cGUubmFtZS9dLmgiCitbL2Zvcl0KKyNpbmNsdWRlICJtYXBzLmhwcCIKKworW2ZvciAoZGF0YXR5cGUgOiBOYW1lZEVsZW1lbnQgfCBnZXRFbGVtZW50c0RhdGFUeXBlKHJvb3RfbW9kZWwpKV0KKy8vIFRoZSBSVE1hcHMgaW5wdXQgZmlsdGVyIGZvciB0aGUgc3RydWN0dXJlIFtkYXRhdHlwZS5uYW1lL10KK2NvbnN0IE1BUFNUeXBlRmlsdGVyQmFzZSBNQVBTRmlsdGVyW2RhdGF0eXBlLm5hbWUvXSA9IE1BUFNfRklMVEVSX1VTRVJfU1RSVUNUVVJFKFtkYXRhdHlwZS5uYW1lL10pOworWy9mb3JdCisKKyNlbmRpZiAvL19fTUFQU19bcm9vdF9tb2RlbC5uYW1lL11fREFUQVRZUEVfRklMVEVSU19IX18KK1svZmlsZV0KKworWy90ZW1wbGF0ZV0KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3Bja2luZm8uZW10bCBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3Bja2luZm8uZW10bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jMmEzZTY5Ci0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfcGNraW5mby5lbXRsCkBAIC0wLDAgKzEsMjkwIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHhtaTpYTUkgeG1pOnZlcnNpb249IjIuMCIgeG1sbnM6eG1pPSJodHRwOi8vd3d3Lm9tZy5vcmcvWE1JIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczplY29yZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSIgeG1sbnM6bXRsPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2FjY2VsZW8vbXRsLzMuMCIgeG1sbnM6b2NsLmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9FY29yZSI+CisgIDxtdGw6TW9kdWxlIG5hbWU9ImdlbmVyYXRlX3J0bWFwc19wY2tpbmZvIiBuc1VSST0ib3JnOjplY2xpcHNlOjpwYXB5cnVzOjpyb2JvdG1sOjpnZW5lcmF0b3JzOjppbnRlbXBvcmE6OnJ0bWFwczo6ZmlsZXM6OmdlbmVyYXRlX3J0bWFwc19wY2tpbmZvIiBzdGFydEhlYWRlclBvc2l0aW9uPSI3NzMiIGVuZEhlYWRlclBvc2l0aW9uPSItMSI+CisgICAgPGlucHV0PgorICAgICAgPHRha2VzVHlwZXNGcm9tIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLyIvPgorICAgIDwvaW5wdXQ+CisgICAgPGlucHV0PgorICAgICAgPHRha2VzVHlwZXNGcm9tIGhyZWY9Imh0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMSMvIi8+CisgICAgPC9pbnB1dD4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6VGVtcGxhdGUiIG5hbWU9ImdlbmVyYXRlUlRNYXBzUGNrSW5mbyIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7Ii8+CisgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZpbGVCbG9jayIgb3Blbk1vZGU9Ik92ZXJXcml0ZSI+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIjIFBhY2thZ2UgaW5mb3JtYXRpb24mI3hEOyYjeEE7IyAiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpQcm90ZWN0ZWRBcmVhQmxvY2siPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7VkVSU0lPTj0xLjAmI3hEOyYjeEE7REVTQ1JJUFRJT049VXNlciBwYWNrYWdlJiN4RDsmI3hBOyMgIi8+CisgICAgICAgICAgPG1hcmtlciB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iVmVyc2lvbiBudW1iZXIiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDwvbWFya2VyPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7JiN4RDsmI3hBOyMgTE9HJiN4RDsmI3hBOyMgIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6UHJvdGVjdGVkQXJlYUJsb2NrIj4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyMgMS4wOiBpbml0aWFsIHJlbGVhc2UmI3hEOyYjeEE7IyAiLz4KKyAgICAgICAgICA8bWFya2VyIHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJWZXJzaW9uIGluZm8iPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDwvbWFya2VyPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7JiN4RDsmI3hBOyIvPgorICAgICAgICA8ZmlsZVVybCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvU3RyaW5nX0NsYXNzLysiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9InVzZXJfc2RrLyI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iYU1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc1Bja0luZm8vYU1vZGVsIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLnUvIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJhTW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzUGNrSW5mby9hTW9kZWwiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIucGNraW5mbyI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPC9maWxlVXJsPgorICAgICAgICA8Y2hhcnNldCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iVVRGLTgiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9jaGFyc2V0PgorICAgICAgPC9ib2R5PgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJhTW9kZWwiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgPC9tdGw6TW9kdWxlPgorICA8ZWNvcmU6RVBhY2thZ2UgbmFtZT0iYWRkaXRpb25zIj4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlN0cmluZ19DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iKyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwgbm9uLXN0YW5kYXJkIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im90aGVyIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSW50ZWdlcl9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUmVhbF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1JlYWwiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRU9iamVjdF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdlbmVyYXRlUlRNYXBzUGNrSW5mbyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUGNrSW5mbyIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJhTW9kZWwiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPY2xBbnlfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ29sbGVjdGlvbihUKV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0NvbGxlY3Rpb24oVCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU2VxdWVuY2UoVClfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TZXF1ZW5jZShUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPcmRlcmVkU2V0KFQpX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT3JkZXJlZFNldChUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJNb2RlbF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgPC9lY29yZTpFUGFja2FnZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxlY29yZTpFQW5ub3RhdGlvbiBzb3VyY2U9InBvc2l0aW9ucyI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4wIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1Bja0luZm8iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijg4MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjQxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNQY2tJbmZvLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjkzNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5MzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1Bja0luZm8vJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5MzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTIyOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUGNrSW5mby8lLjEvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTAyNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNQY2tJbmZvLyUuMS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwNTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTEzNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUGNrSW5mby8lLjEvJS4xLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwODEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTEyNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUGNrSW5mby8lLjEvJS4xLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTA2MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1Bja0luZm8vJS4xLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTEzNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNQY2tJbmZvLyUuMS8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTIxNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUGNrSW5mby8lLjEvJS4zLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTIwNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1Bja0luZm8vJS4xLyUuMy8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE3NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUGNrSW5mby8lLjEvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjE3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEyMjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNQY2tJbmZvLyUuMS8lLjUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk0NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNQY2tJbmZvLyUuMS8lLjUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUGNrSW5mby8lLjEvJS41LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk3OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUGNrSW5mby8lLjEvJS41LyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5NDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTcxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNQY2tJbmZvLyUuMS8lLjUvJS8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk1NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUGNrSW5mby8lLjEvJS41LyUvJS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTYwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk3MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUGNrSW5mby8lLjEvJS41LyUvJS8lLyUuMS9hTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk2MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5NjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1Bja0luZm8vJS4xLyUuNS8lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5NzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNQY2tJbmZvLyUuMS8lLjUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk4MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5OTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1Bja0luZm8vJS4xLyUuNS8lLyUuMS9hTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk4MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5ODgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1Bja0luZm8vJS4xLyUuNS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNQY2tJbmZvLyUuMS8lLjYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwMTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTAyMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUGNrSW5mby9hTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjkxOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5MzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZWNvcmU6RUFubm90YXRpb24+Cis8L3htaTpYTUk+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc19wY2tpbmZvLm10bCBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3Bja2luZm8ubXRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFiMTk5NmYKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc19wY2tpbmZvLm10bApAQCAtMCwwICsxLDM3IEBACitbY29tbWVudCBlbmNvZGluZyA9IFVURi04IC9dCitbY29tbWVudF0KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIElOVEVNUE9SQSBTLkEuCisgKgorICogVGhpcyBzb2Z0d2FyZSBpcyBhIGNvbXB1dGVyIHByb2dyYW0gd2hvc2UgcHVycG9zZSBpcyB0byB0cmFuc2Zvcm0gUm9ib3RNTCBtb2RlbHMKKyAqIGludG8gUlRNYXBzIGRpYWdyYW1zIGFuZCBSVE1hcHMgY29tcG9uZW50cyB2aWEgc291cmNlIGNvZGUgZ2VuZXJhdGlvbiB0ZWNobmlxdWVzLgorICogCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBOaWNvbGFzIERVIExBQyAoSU5URU1QT1JBKSAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK1svY29tbWVudF0KK1ttb2R1bGUgZ2VuZXJhdGVfcnRtYXBzX3Bja2luZm8oJ2h0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8zLjAuMC9VTUwnLCAnaHR0cDovL1BhcHlydXMvUm9ib3RNTC8xJyldCisKKworW3RlbXBsYXRlIHB1YmxpYyBnZW5lcmF0ZVJUTWFwc1Bja0luZm8oYU1vZGVsIDogTW9kZWwpXQorCitbZmlsZSAoJ3VzZXJfc2RrLycgKyBhTW9kZWwubmFtZSArICcudS8nICsgYU1vZGVsLm5hbWUgKyAnLnBja2luZm8nLCBmYWxzZSwgJ1VURi04JyldCisjIFBhY2thZ2UgaW5mb3JtYXRpb24KKyMgW3Byb3RlY3RlZCAoJ1ZlcnNpb24gbnVtYmVyJyldCitWRVJTSU9OPTEuMAorREVTQ1JJUFRJT049VXNlciBwYWNrYWdlCisjIFsvcHJvdGVjdGVkXQorCisjIExPRworIyBbcHJvdGVjdGVkICgnVmVyc2lvbiBpbmZvJyldCisjIDEuMDogaW5pdGlhbCByZWxlYXNlCisjIFsvcHJvdGVjdGVkXQorCitbL2ZpbGVdCitbL3RlbXBsYXRlXQpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfcm9ib3RtbF9kYXRhdHlwZXNfaC5lbXRsIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfcm9ib3RtbF9kYXRhdHlwZXNfaC5lbXRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI2NmYzZjAKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc19yb2JvdG1sX2RhdGF0eXBlc19oLmVtdGwKQEAgLTAsMCArMSwxMDA2IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHhtaTpYTUkgeG1pOnZlcnNpb249IjIuMCIgeG1sbnM6eG1pPSJodHRwOi8vd3d3Lm9tZy5vcmcvWE1JIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczplY29yZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSIgeG1sbnM6bXRsPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2FjY2VsZW8vbXRsLzMuMCIgeG1sbnM6b2NsLmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9FY29yZSI+CisgIDxtdGw6TW9kdWxlIG5hbWU9ImdlbmVyYXRlX3J0bWFwc19yb2JvdG1sX2RhdGF0eXBlc19oIiBuc1VSST0ib3JnOjplY2xpcHNlOjpwYXB5cnVzOjpyb2JvdG1sOjpnZW5lcmF0b3JzOjppbnRlbXBvcmE6OnJ0bWFwczo6ZmlsZXM6OmdlbmVyYXRlX3J0bWFwc19yb2JvdG1sX2RhdGF0eXBlc19oIiBzdGFydEhlYWRlclBvc2l0aW9uPSI3NzMiIGVuZEhlYWRlclBvc2l0aW9uPSI5NzciPgorICAgIDxpbnB1dD4KKyAgICAgIDx0YWtlc1R5cGVzRnJvbSBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8iLz4KKyAgICA8L2lucHV0PgorICAgIDxpbnB1dD4KKyAgICAgIDx0YWtlc1R5cGVzRnJvbSBocmVmPSJodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEjLyIvPgorICAgIDwvaW5wdXQ+CisgICAgPGltcG9ydHMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuZW10bCMvMCIvPgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpUZW1wbGF0ZSIgbmFtZT0iZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzIiB2aXNpYmlsaXR5PSJQdWJsaWMiPgorICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGaWxlQmxvY2siIG9wZW5Nb2RlPSJPdmVyV3JpdGUiPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iI2lmbmRlZiBfX01BUFNfUk9CT1RNTF9EQVRBVFlQRVNfSF9fJiN4RDsmI3hBOyNkZWZpbmUgX19NQVBTX1JPQk9UTUxfREFUQVRZUEVTX0hfXyYjeEQ7JiN4QTsmI3hEOyYjeEE7I2luY2x1ZGUgJnF1b3Q7cm9ib3RtbC9tYXBzX3JvYm90bWxfcHJpbWl0aXZlX2RhdGF0eXBlcy5oJnF1b3Q7JiN4RDsmI3hBOyYjeEQ7JiN4QTsmI3hEOyYjeEE7LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovJiN4RDsmI3hBOy8qIENPTVBPU0VEIERBVEEgVFlQRVMgRk9SV0FSRCBERUNMQVJBVElPTlMqLyYjeEQ7JiN4QTsvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8mI3hEOyYjeEE7JiN4RDsmI3hBOyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZvckJsb2NrIj4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOklmQmxvY2siPgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImVudW0gIi8+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJkYXRhdHlwZSIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4xL2RhdGF0eXBlIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iOyYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgIDxpZkV4cHIgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJkYXRhdHlwZSIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4xL2RhdGF0eXBlIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlRXhwIiBlVHlwZT0iLzgvRW51bWVyYXRpb24iPgorICAgICAgICAgICAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VudW1lcmF0aW9uIi8+CisgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueV9DbGFzcy9vY2xJc0tpbmRPZiIvPgorICAgICAgICAgICAgPC9pZkV4cHI+CisgICAgICAgICAgICA8ZWxzZT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9ImNsYXNzICIvPgorICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZGF0YXR5cGUiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMS9kYXRhdHlwZSI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSI7JiN4RDsmI3hBOyIvPgorICAgICAgICAgICAgPC9lbHNlPgorICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICA8bG9vcFZhcmlhYmxlIG5hbWU9ImRhdGF0eXBlIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRGF0YVR5cGUiLz4KKyAgICAgICAgICA8L2xvb3BWYXJpYWJsZT4KKyAgICAgICAgICA8aXRlclNldCB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiIgZVR5cGU9Ii85L1NlcXVlbmNlKERhdGFUeXBlKSI+CisgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5lbXRsIy8wL2dldE1ldGFtb2RlbENvbXBvc2VkRGF0YVR5cGVzIi8+CisgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icm9vdF9tb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzL3Jvb3RfbW9kZWwiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVFeHAiIGVUeXBlPSIvOC9FbGVtZW50Ij4KKyAgICAgICAgICAgICAgICA8cmVmZXJyZWRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueV9DbGFzcy9vY2xBc1R5cGUiLz4KKyAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgPC9pdGVyU2V0PgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovJiN4RDsmI3hBOy8qIENPTVBPU0VEIERBVEEgVFlQRVMgSU5DTFVERSBGSUxFUyovJiN4RDsmI3hBOy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLyYjeEQ7JiN4QTsiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGb3JCbG9jayI+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiNpbmNsdWRlICZxdW90O3JvYm90bWwvIi8+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJkYXRhdHlwZSIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4zL2RhdGF0eXBlIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9EYXRhVHlwZSIvPgorICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIuaCZxdW90OyYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZpbGVCbG9jayIgb3Blbk1vZGU9Ik92ZXJXcml0ZSI+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iI2lmbmRlZiBfX18iLz4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImRhdGF0eXBlIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS8lLjMvZGF0YXR5cGUiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRGF0YVR5cGUiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJfSF9fJiN4RDsmI3hBOyNkZWZpbmUgX19fIi8+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJkYXRhdHlwZSIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4zL2RhdGF0eXBlIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iX0hfXyYjeEQ7JiN4QTsmI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZvckJsb2NrIj4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpJZkJsb2NrIj4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iI2luY2x1ZGUgJnF1b3Q7cm9ib3RtbC8iLz4KKyAgICAgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlIi8+CisgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icHJvcCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4zLyUuMy8lLjUvcHJvcCI+CisgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlZEVsZW1lbnQvdHlwZSIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIuaCZxdW90OyYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgICAgICA8aWZFeHByIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAvaXNQcmltaXRpdmVUeXBlIi8+CisgICAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UeXBlIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InByb3AiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy8lLjMvJS41L3Byb3AiPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vVHlwZWRFbGVtZW50L3R5cGUiLz4KKyAgICAgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlRXhwIiBlVHlwZT0iLzgvRWxlbWVudCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnlfQ2xhc3Mvb2NsQXNUeXBlIi8+CisgICAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkJvb2xlYW5MaXRlcmFsRXhwIiBib29sZWFuU3ltYm9sPSJmYWxzZSI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbl9DbGFzcy89Ii8+CisgICAgICAgICAgICAgICAgPC9pZkV4cHI+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGxvb3BWYXJpYWJsZSBuYW1lPSJwcm9wIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgICAgICAgIDwvbG9vcFZhcmlhYmxlPgorICAgICAgICAgICAgICA8aXRlclNldCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIGVUeXBlPSIvOS9TZXQoUHJvcGVydHkpIj4KKyAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImRhdGF0eXBlIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS8lLjMvZGF0YXR5cGUiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9EYXRhVHlwZSIvPgorICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzaWZpZXIvZ2V0QWxsQXR0cmlidXRlcyIvPgorICAgICAgICAgICAgICA8L2l0ZXJTZXQ+CisgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyIvPgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAvZ2V0Q3BwQ2xhc3NGb3JEYXRhdFR5cGUiLz4KKyAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImRhdGF0eXBlIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS8lLjMvZGF0YXR5cGUiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRGF0YVR5cGUiLz4KKyAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7JiN4RDsmI3hBOyNlbmRpZiAvL19fXyIvPgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZGF0YXR5cGUiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy9kYXRhdHlwZSI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9EYXRhVHlwZSIvPgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il9IX18mI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICA8ZmlsZVVybCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9InVzZXJfc2RrL2luY2x1ZGUvcm9ib3RtbC8iPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImRhdGF0eXBlIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS8lLjMvZGF0YXR5cGUiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIuaCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgPC9maWxlVXJsPgorICAgICAgICAgICAgPGNoYXJzZXQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IlVURi04Ij4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPC9jaGFyc2V0PgorICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICA8bG9vcFZhcmlhYmxlIG5hbWU9ImRhdGF0eXBlIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRGF0YVR5cGUiLz4KKyAgICAgICAgICA8L2xvb3BWYXJpYWJsZT4KKyAgICAgICAgICA8aXRlclNldCB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiIgZVR5cGU9Ii85L1NlcXVlbmNlKERhdGFUeXBlKSI+CisgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5lbXRsIy8wL2dldE1ldGFtb2RlbENvbXBvc2VkRGF0YVR5cGVzIi8+CisgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0icm9vdF9tb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzL3Jvb3RfbW9kZWwiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVFeHAiIGVUeXBlPSIvOC9FbGVtZW50Ij4KKyAgICAgICAgICAgICAgICA8cmVmZXJyZWRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueV9DbGFzcy9vY2xBc1R5cGUiLz4KKyAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgPC9pdGVyU2V0PgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7I2VuZGlmIC8vX19NQVBTX1JPQk9UTUxfREFUQVRZUEVTX0hfXyYjeEQ7JiN4QTsiLz4KKyAgICAgICAgPGZpbGVVcmwgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9InVzZXJfc2RrL2luY2x1ZGUvcm9ib3RtbC9tYXBzX3JvYm90bWxfZGF0YXR5cGVzX2FsbC5oIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvZmlsZVVybD4KKyAgICAgICAgPGNoYXJzZXQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IlVURi04Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvY2hhcnNldD4KKyAgICAgIDwvYm9keT4KKyAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7Ii8+CisgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZpbGVCbG9jayIgb3Blbk1vZGU9Ik92ZXJXcml0ZSI+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIjaWZuZGVmIF9fTUFQU19ST0JPVE1MX0RBVEFUWVBFX0ZJTFRFUlNfSF9fJiN4RDsmI3hBOyNkZWZpbmUgX19NQVBTX1JPQk9UTUxfREFUQVRZUEVfRklMVEVSU19IX18mI3hEOyYjeEE7JiN4RDsmI3hBOyNpbmNsdWRlICZxdW90O21hcHMuaHBwJnF1b3Q7JiN4RDsmI3hBOyYjeEQ7JiN4QTtjb25zdCBNQVBTVHlwZUZpbHRlckJhc2UgTUFQU0ZpbHRlclJvYm90TUxTdHJpbmcgPSBNQVBTX0ZJTFRFUl9VU0VSX1NUUlVDVFVSRShNQVBTUm9ib3RNTFN0cmluZyk7JiN4RDsmI3hBOyYjeEQ7JiN4QTsiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGb3JCbG9jayI+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsvLyBUaGUgUlRNYXBzIGlucHV0IGZpbHRlciBmb3IgdGhlIHN0cnVjdHVyZSAiLz4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImRhdGF0eXBlIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS4yLyUuMS9kYXRhdHlwZSI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRGF0YVR5cGUiLz4KKyAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBO2NvbnN0IE1BUFNUeXBlRmlsdGVyQmFzZSBNQVBTRmlsdGVyIi8+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJkYXRhdHlwZSIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUuMi8lLjEvZGF0YXR5cGUiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiA9IE1BUFNfRklMVEVSX1VTRVJfU1RSVUNUVVJFKCIvPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZGF0YXR5cGUiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLjIvJS4xL2RhdGF0eXBlIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9EYXRhVHlwZSIvPgorICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIpOyYjeEQ7JiN4QTsmI3hEOyYjeEE7Ii8+CisgICAgICAgICAgPGxvb3BWYXJpYWJsZSBuYW1lPSJkYXRhdHlwZSI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgICAgICAgICAgPC9sb29wVmFyaWFibGU+CisgICAgICAgICAgPGl0ZXJTZXQgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iIGVUeXBlPSIvOS9TZXF1ZW5jZShEYXRhVHlwZSkiPgorICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuZW10bCMvMC9nZXRNZXRhbW9kZWxDb21wb3NlZERhdGFUeXBlcyIvPgorICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9InJvb3RfbW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy9yb290X21vZGVsIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlRXhwIiBlVHlwZT0iLzgvRWxlbWVudCI+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnlfQ2xhc3Mvb2NsQXNUeXBlIi8+CisgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgIDwvaXRlclNldD4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyNlbmRpZiAvL19fTUFQU19ST0JPVE1MX0RBVEFUWVBFX0ZJTFRFUlNfSF9fJiN4RDsmI3hBOyIvPgorICAgICAgICA8ZmlsZVVybCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0idXNlcl9zZGsvaW5jbHVkZS9yb2JvdG1sL21hcHNfcm9ib3RtbF9kYXRhdHlwZV9maWx0ZXJzLmgiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9maWxlVXJsPgorICAgICAgICA8Y2hhcnNldCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iVVRGLTgiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9jaGFyc2V0PgorICAgICAgPC9ib2R5PgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJyb290X21vZGVsIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgIDwvbXRsOk1vZHVsZT4KKyAgPGVjb3JlOkVQYWNrYWdlIG5hbWU9ImFkZGl0aW9ucyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTdHJpbmdfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9IisiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIG5vbi1zdGFuZGFyZCIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJvdGhlciI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkludGVnZXJfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlJlYWxfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9SZWFsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkVPYmplY3RfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icm9vdF9tb2RlbCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRNZXRhbW9kZWxDb21wb3NlZERhdGFUeXBlcyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAvZ2V0TWV0YW1vZGVsQ29tcG9zZWREYXRhVHlwZXMiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9EYXRhVHlwZVF1ZXJpZXMuZW10bCMvMy9TZXF1ZW5jZShEYXRhVHlwZSkiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InJvb3RlbHQiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRDcHBDbGFzc0ZvckRhdGF0VHlwZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAvZ2V0Q3BwQ2xhc3NGb3JEYXRhdFR5cGUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImR0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzUHJpbWl0aXZlVHlwZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvRGF0YVR5cGVRdWVyaWVzLmVtdGwjLzAvaXNQcmltaXRpdmVUeXBlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZWx0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPY2xBbnlfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ29sbGVjdGlvbihUKV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0NvbGxlY3Rpb24oVCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU2VxdWVuY2UoVClfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TZXF1ZW5jZShUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPcmRlcmVkU2V0KFQpX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT3JkZXJlZFNldChUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJNb2RlbF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkVsZW1lbnRfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkRhdGFUeXBlX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRGF0YVR5cGUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICA8L2Vjb3JlOkVQYWNrYWdlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxlY29yZTpFUGFja2FnZSBuYW1lPSJ0eXBlcyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVUeXBlIiBuYW1lPSJFbGVtZW50Ij4KKyAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJvY2wuZWNvcmU6VHlwZVR5cGUiIG5hbWU9IkVudW1lcmF0aW9uIj4KKyAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VudW1lcmF0aW9uIi8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgIDwvZWNvcmU6RVBhY2thZ2U+CisgIDxlY29yZTpFUGFja2FnZSBuYW1lPSJjb2xsZWN0aW9ucyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgbmFtZT0iU2VxdWVuY2UoRGF0YVR5cGUpIiBpbnN0YW5jZUNsYXNzTmFtZT0iamF2YS51dGlsLkxpc3QiPgorICAgICAgPGVsZW1lbnRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9EYXRhVHlwZSIvPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXRUeXBlIiBuYW1lPSJTZXQoUHJvcGVydHkpIiBpbnN0YW5jZUNsYXNzTmFtZT0iamF2YS51dGlsLlNldCI+CisgICAgICA8ZWxlbWVudFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgIDwvZWNvcmU6RVBhY2thZ2U+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRGF0YVR5cGUiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9EYXRhVHlwZSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0iaSI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRGF0YVR5cGUiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9EYXRhVHlwZSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRGF0YVR5cGUiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9EYXRhVHlwZSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRGF0YVR5cGUiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0iaSI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9EYXRhVHlwZSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0iaSI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9EYXRhVHlwZSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRGF0YVR5cGUiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9EYXRhVHlwZSIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9ImkiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPGVjb3JlOkVBbm5vdGF0aW9uIHNvdXJjZT0icG9zaXRpb25zIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTgzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI5OTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTA1MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTEzNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNDE1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNDE1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE2MTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS8lLjEvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTUwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNjExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzNiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4xLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTU0OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNTU0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzNyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4xLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNTU1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE1NjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMS8lLyUuMS9kYXRhdHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTU1NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNTYzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS8lLjEvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE1NzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTU3MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMS8lLyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTUxMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNTQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4xLyUvJS4zL2RhdGF0eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNTEyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE1MjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS8lLjEvJS8lLjMvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTUzMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNTQ0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4xLyUvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNTczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE2MDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4xLyUvJS40LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE1ODEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTU4NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS8lLjEvJS8lLjQvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNTg4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE2MDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS8lLjEvJS8lLjQvJS4xL2RhdGF0eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNTg4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE1OTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS8lLjEvJS8lLjQvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNjAzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE2MDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4xL2RhdGF0eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNDIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE0NDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjM1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4xLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTQ0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNTAzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4xLyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNDczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE1MDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS8lLjEvJS4xLyUvcm9vdF9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTQ3MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNDgzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4xLyUuMS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0OTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTUwMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTYyMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNzU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0MiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTc1NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjk5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0NiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxODQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4NjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQ3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4zLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTg2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxODgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4zLyUuMS9kYXRhdHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTg2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxODc2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4zLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTg4MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxODg4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4ODkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjI5MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS8lLjMvJS4zLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE5NjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTk3OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS8lLjMvJS4zLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTk3OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTkyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4zLyUuMy8lLjEvZGF0YXR5cGUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE5NzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTk4NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy8lLjMvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTk0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIwMTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQ5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4zLyUuMy8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIwMTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjAyNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy8lLjMvJS4zL2RhdGF0eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMDEyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIwMjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS8lLjMvJS4zLyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjAyNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMDM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1MCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy8lLjMvJS41Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMDM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIyMDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjUyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4zLyUuMy8lLjUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjA5MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1MyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy8lLjMvJS41LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjE1MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTcwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1NCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy8lLjMvJS41LyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMTcxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIxODUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS8lLjMvJS4zLyUuNS8lLyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMTcxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIxODAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS8lLjMvJS4zLyUuNS8lLyUuMS8lL3Byb3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxNzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjE3NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy8lLjMvJS41LyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMTg3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIxOTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjU0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4zLyUuMy8lLjUvJS8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIwOTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjE0OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy8lLjMvJS41LyUvJS4zLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIwOTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjE0MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy8lLjMvJS41LyUvJS4zLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjExMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTM5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4zLyUuMy8lLjUvJS8lLjMvJS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxMTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjEyMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy8lLjMvJS41LyUvJS4zLyUvJS8lL3Byb3AiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxMTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjExNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy8lLjMvJS41LyUvJS4zLyUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxMzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjEzOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy8lLjMvJS41LyUvJS4zLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjE0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTQ4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4zLyUuMy8lLjUvcHJvcCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjA0MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMDU2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1MiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy8lLjMvJS41LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjA1OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMDg2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4zLyUuMy8lLjUvJS4xL2RhdGF0eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMDU5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIwNjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS8lLjMvJS4zLyUuNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjIwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjA5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy8lLjMvJS43Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMjEwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIyNDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS8lLjMvJS4zLyUuNy9kYXRhdHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjIzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjQyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4zLyUuMy8lLjgiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyNDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjI2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS8lLjMvJS4zLyUuOSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjI2MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjc1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4zLyUuMy8lLjkvZGF0YXR5cGUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyNjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjI3MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy8lLjMvJS4xMCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjI3NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjgzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2MCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy8lLjMvJS4xMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTg5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4zLyUuMy8lLjExLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4OTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTkzOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy8lLjMvJS4xMS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4OTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTkyMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy8lLjMvJS4xMS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTkyNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTM5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4zLyUuMy8lLjExLyUvJS4xL2RhdGF0eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTI2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5MzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjY1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS8lLjMvJS4zLyUuMTEvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTQyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5NDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjY2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS8lLjMvJS4zLyUuMTIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE5NTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTk2MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy9kYXRhdHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTc2MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNzgyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0NiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy8lLjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE3ODUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTg0NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy8lLjQvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTgxNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxODQ0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUvJS4zLyUuNC8lL3Jvb3RfbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4MTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTgyNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuMy8lLjQvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxODM2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4NDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjcyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS8lLjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIzMDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjM0MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjczIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS8lLjUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwNjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTExNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLyUuNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTEyNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTMxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjM1MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzUzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2NiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIzNTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjk3NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjc3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS4yLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI0MzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjY1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjc4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS4yLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjY1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyOTIwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3NSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLjIvJS4xLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI3NDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjc5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNzYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjgwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS4yLyUuMS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI3OTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjgwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLjIvJS4xLyUuMS9kYXRhdHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjc5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyODAyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUuMi8lLjEvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyODA5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI4NDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijc4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUuMi8lLjEvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyODQ3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI4NjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjg0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS4yLyUuMS8lLjMvZGF0YXR5cGUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI4NDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjg1NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLjIvJS4xLyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjg2MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyODkyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuODYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLjIvJS4xLyUuNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjg5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyOTA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUuMi8lLjEvJS41L2RhdGF0eXBlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyODkzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI5MDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjg4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS4yLyUuMS8lLjYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI5MDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjkxNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNzgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjg5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvJS4yLyUuMS9kYXRhdHlwZSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjY2MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNjc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI3NSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLjIvJS4xLyUuNyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjY4MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyNzQyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUuMi8lLjEvJS43LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI3MTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjc0MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLjIvJS4xLyUuNy8lL3Jvb3RfbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI3MTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjcyMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLjIvJS4xLyUuNy8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI3MzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjc0MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLjIvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyOTIyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI5NzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjgxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzLyUuMi8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIzNjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjQxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOTYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcy8lLjIvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNDI3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI0MzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjk3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMvcm9vdF9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTAzMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2Vjb3JlOkVBbm5vdGF0aW9uPgorPC94bWk6WE1JPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfcm9ib3RtbF9kYXRhdHlwZXNfaC5tdGwgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc19yb2JvdG1sX2RhdGF0eXBlc19oLm10bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kYmQ5Yjg0Ci0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfcm9ib3RtbF9kYXRhdHlwZXNfaC5tdGwKQEAgLTAsMCArMSw4NCBAQAorW2NvbW1lbnQgZW5jb2RpbmcgPSBVVEYtOCAvXQorW2NvbW1lbnRdCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBJTlRFTVBPUkEgUy5BLgorICoKKyAqIFRoaXMgc29mdHdhcmUgaXMgYSBjb21wdXRlciBwcm9ncmFtIHdob3NlIHB1cnBvc2UgaXMgdG8gdHJhbnNmb3JtIFJvYm90TUwgbW9kZWxzCisgKiBpbnRvIFJUTWFwcyBkaWFncmFtcyBhbmQgUlRNYXBzIGNvbXBvbmVudHMgdmlhIHNvdXJjZSBjb2RlIGdlbmVyYXRpb24gdGVjaG5pcXVlcy4KKyAqIAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgTmljb2xhcyBEVSBMQUMgKElOVEVNUE9SQSkgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCitbL2NvbW1lbnRdCitbbW9kdWxlIGdlbmVyYXRlX3J0bWFwc19yb2JvdG1sX2RhdGF0eXBlc19oKCdodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMy4wLjAvVU1MJywgJ2h0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMScpXQorCitbaW1wb3J0IG9yZzo6ZWNsaXBzZTo6cGFweXJ1czo6cm9ib3RtbDo6Z2VuZXJhdG9yczo6Y29tbW9uOjptbXF1ZXJpZXM6OkRhdGFUeXBlUXVlcmllcyAvXQorCitbdGVtcGxhdGUgcHVibGljIGdlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcyhyb290X21vZGVsIDogTW9kZWwpXQorW2ZpbGUgKCd1c2VyX3Nkay9pbmNsdWRlL3JvYm90bWwvbWFwc19yb2JvdG1sX2RhdGF0eXBlc19hbGwuaCcsIGZhbHNlLCAnVVRGLTgnKV0KKyNpZm5kZWYgX19NQVBTX1JPQk9UTUxfREFUQVRZUEVTX0hfXworI2RlZmluZSBfX01BUFNfUk9CT1RNTF9EQVRBVFlQRVNfSF9fCisKKyNpbmNsdWRlICJyb2JvdG1sL21hcHNfcm9ib3RtbF9wcmltaXRpdmVfZGF0YXR5cGVzLmgiCisKKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKiBDT01QT1NFRCBEQVRBIFRZUEVTIEZPUldBUkQgREVDTEFSQVRJT05TKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCitbZm9yIChkYXRhdHlwZSA6IERhdGFUeXBlIHwgZ2V0TWV0YW1vZGVsQ29tcG9zZWREYXRhVHlwZXMocm9vdF9tb2RlbC5vY2xBc1R5cGUoRWxlbWVudCkpKV0KK1tpZiAoZGF0YXR5cGUub2NsSXNLaW5kT2YoRW51bWVyYXRpb24pKV0KK2VudW0gW2RhdGF0eXBlLm5hbWUvXTsKK1tlbHNlXQorY2xhc3MgW2RhdGF0eXBlLm5hbWUvXTsKK1svaWZdCitbL2Zvcl0KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKiBDT01QT1NFRCBEQVRBIFRZUEVTIElOQ0xVREUgRklMRVMqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCitbZm9yIChkYXRhdHlwZSA6IERhdGFUeXBlIHwgZ2V0TWV0YW1vZGVsQ29tcG9zZWREYXRhVHlwZXMocm9vdF9tb2RlbC5vY2xBc1R5cGUoRWxlbWVudCkpKV0KKyNpbmNsdWRlICJyb2JvdG1sL1tkYXRhdHlwZS5uYW1lL10uaCIKKwlbZmlsZSAoJ3VzZXJfc2RrL2luY2x1ZGUvcm9ib3RtbC8nICsgZGF0YXR5cGUubmFtZSArICcuaCcsIGZhbHNlLCAnVVRGLTgnKSldCisjaWZuZGVmIF9fX1tkYXRhdHlwZS5uYW1lL11fSF9fCisjZGVmaW5lIF9fX1tkYXRhdHlwZS5uYW1lL11fSF9fCisKK1tmb3IgKHByb3AgOiBQcm9wZXJ0eSB8IGRhdGF0eXBlLmdldEFsbEF0dHJpYnV0ZXMoKSldCitbaWYgKGlzUHJpbWl0aXZlVHlwZShwcm9wLnR5cGUub2NsQXNUeXBlKEVsZW1lbnQpKSA9IGZhbHNlKV0KKyNpbmNsdWRlICJyb2JvdG1sL1twcm9wLnR5cGUubmFtZS9dLmgiCitbL2lmXQorWy9mb3JdCisKK1tnZXRDcHBDbGFzc0ZvckRhdGF0VHlwZShkYXRhdHlwZSkvXQorCisjZW5kaWYgLy9fX19bZGF0YXR5cGUubmFtZS9dX0hfXworCVsvZmlsZV0KK1svZm9yXQorCisjZW5kaWYgLy9fX01BUFNfUk9CT1RNTF9EQVRBVFlQRVNfSF9fCitbL2ZpbGVdCisKK1tmaWxlICgndXNlcl9zZGsvaW5jbHVkZS9yb2JvdG1sL21hcHNfcm9ib3RtbF9kYXRhdHlwZV9maWx0ZXJzLmgnLCBmYWxzZSwgJ1VURi04JyldCisjaWZuZGVmIF9fTUFQU19ST0JPVE1MX0RBVEFUWVBFX0ZJTFRFUlNfSF9fCisjZGVmaW5lIF9fTUFQU19ST0JPVE1MX0RBVEFUWVBFX0ZJTFRFUlNfSF9fCisKKyNpbmNsdWRlICJtYXBzLmhwcCIKKworY29uc3QgTUFQU1R5cGVGaWx0ZXJCYXNlIE1BUFNGaWx0ZXJSb2JvdE1MU3RyaW5nID0gTUFQU19GSUxURVJfVVNFUl9TVFJVQ1RVUkUoTUFQU1JvYm90TUxTdHJpbmcpOworCitbZm9yIChkYXRhdHlwZSA6IERhdGFUeXBlIHwgZ2V0TWV0YW1vZGVsQ29tcG9zZWREYXRhVHlwZXMocm9vdF9tb2RlbC5vY2xBc1R5cGUoRWxlbWVudCkpKV0KKworLy8gVGhlIFJUTWFwcyBpbnB1dCBmaWx0ZXIgZm9yIHRoZSBzdHJ1Y3R1cmUgW2RhdGF0eXBlLm5hbWUvXQorY29uc3QgTUFQU1R5cGVGaWx0ZXJCYXNlIE1BUFNGaWx0ZXJbZGF0YXR5cGUubmFtZS9dID0gTUFQU19GSUxURVJfVVNFUl9TVFJVQ1RVUkUoW2RhdGF0eXBlLm5hbWUvXSk7CisKK1svZm9yXQorCisjZW5kaWYgLy9fX01BUFNfUk9CT1RNTF9EQVRBVFlQRV9GSUxURVJTX0hfXworWy9maWxlXQorWy90ZW1wbGF0ZV0KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3JvYm90bWxfcHJpbWl0aXZlX2RhdGF0eXBlc19oLmVtdGwgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc19yb2JvdG1sX3ByaW1pdGl2ZV9kYXRhdHlwZXNfaC5lbXRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNjM2IzMWQKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc19yb2JvdG1sX3ByaW1pdGl2ZV9kYXRhdHlwZXNfaC5lbXRsCkBAIC0wLDAgKzEsMTUyIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHhtaTpYTUkgeG1pOnZlcnNpb249IjIuMCIgeG1sbnM6eG1pPSJodHRwOi8vd3d3Lm9tZy5vcmcvWE1JIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczplY29yZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSIgeG1sbnM6bXRsPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2FjY2VsZW8vbXRsLzMuMCIgeG1sbnM6b2NsLmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9FY29yZSI+CisgIDxtdGw6TW9kdWxlIG5hbWU9ImdlbmVyYXRlX3J0bWFwc19yb2JvdG1sX3ByaW1pdGl2ZV9kYXRhdHlwZXNfaCIgbnNVUkk9Im9yZzo6ZWNsaXBzZTo6cGFweXJ1czo6cm9ib3RtbDo6Z2VuZXJhdG9yczo6aW50ZW1wb3JhOjpydG1hcHM6OmZpbGVzOjpnZW5lcmF0ZV9ydG1hcHNfcm9ib3RtbF9wcmltaXRpdmVfZGF0YXR5cGVzX2giIHN0YXJ0SGVhZGVyUG9zaXRpb249Ijc3MyIgZW5kSGVhZGVyUG9zaXRpb249Ijk4NyI+CisgICAgPGlucHV0PgorICAgICAgPHRha2VzVHlwZXNGcm9tIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLyIvPgorICAgIDwvaW5wdXQ+CisgICAgPGlucHV0PgorICAgICAgPHRha2VzVHlwZXNGcm9tIGhyZWY9Imh0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMSMvIi8+CisgICAgPC9pbnB1dD4KKyAgICA8aW1wb3J0cyBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0RhdGFUeXBlUXVlcmllcy5lbXRsIy8wIi8+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlRlbXBsYXRlIiBuYW1lPSJnZW5lcmF0ZVJUTWFwc1JvYm90TUxQcmltaXRpdmVEYXRhVHlwZXMiIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZpbGVCbG9jayIgb3Blbk1vZGU9Ik92ZXJXcml0ZSI+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIjaWZuZGVmIF9fTUFQU19ST0JPVE1MX1BSSU1JVElWRV9EQVRBVFlQRVNfSF9fJiN4RDsmI3hBOyNkZWZpbmUgX19NQVBTX1JPQk9UTUxfUFJJTUlUSVZFX0RBVEFUWVBFU19IX18mI3hEOyYjeEE7JiN4RDsmI3hBOyNpbmNsdWRlICZsdDtzdHJpbmc+JiN4RDsmI3hBOyNpbmNsdWRlICZsdDt2ZWN0b3I+JiN4RDsmI3hBOyYjeEQ7JiN4QTsjaW5jbHVkZSAmcXVvdDttYXBzX3R5cGVzLmgmcXVvdDsmI3hEOyYjeEE7JiN4RDsmI3hBOy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8mI3hEOyYjeEE7LyogUFJJTUlUSVZFIERBVEEgVFlQRVMgKi8mI3hEOyYjeEE7LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLyYjeEQ7JiN4QTt0eXBlZGVmIGJvb2wgQm9vbDsmI3hEOyYjeEE7dHlwZWRlZiBNQVBTVUludDggQnl0ZTsmI3hEOyYjeEE7dHlwZWRlZiBNQVBTVUludDggQ2hhcjsmI3hEOyYjeEE7dHlwZWRlZiBNQVBTSW50OCBJbnQ4OyYjeEQ7JiN4QTt0eXBlZGVmIE1BUFNVSW50OCBVSW50ODsmI3hEOyYjeEE7dHlwZWRlZiBNQVBTSW50MTYgSW50MTY7JiN4RDsmI3hBO3R5cGVkZWYgTUFQU1VJbnQxNiBVSW50MTY7JiN4RDsmI3hBO3R5cGVkZWYgTUFQU0ludDMyIEludDMyOyYjeEQ7JiN4QTt0eXBlZGVmIE1BUFNVSW50MzIgVUludDMyOyYjeEQ7JiN4QTt0eXBlZGVmIE1BUFNJbnQ2NCBJbnQ2NDsmI3hEOyYjeEE7dHlwZWRlZiBNQVBTVUludDY0IFVJbnQ2NDsmI3hEOyYjeEE7dHlwZWRlZiBNQVBTRmxvYXQzMiBGbG9hdDMyOyYjeEQ7JiN4QTt0eXBlZGVmIE1BUFNGbG9hdDY0IEZsb2F0NjQ7JiN4RDsmI3hBOyYjeEQ7JiN4QTt0eXBlZGVmIHN0ZDo6c3RyaW5nIFN0cmluZzsmI3hEOyYjeEE7JiN4RDsmI3hBO3R5cGVkZWYgTUFQU1RpbWVzdGFtcCAmI3g5O1RpbWU7JiN4RDsmI3hBO3R5cGVkZWYgTUFQU0RlbGF5ICYjeDk7JiN4OTtEdXJhdGlvbjsmI3hEOyYjeEE7JiN4RDsmI3hBO2NsYXNzIE1BUFNSb2JvdE1MU3RyaW5nIHsmI3hEOyYjeEE7JiN4OTtzdGQ6OnN0cmluZyB0ZXh0OyYjeEQ7JiN4QTt9OyYjeEQ7JiN4QTsmI3hEOyYjeEE7I2VuZGlmIC8vX19NQVBTX1JPQk9UTUxfUFJJTUlUSVZFX0RBVEFUWVBFU19IX18mI3hEOyYjeEE7Ii8+CisgICAgICAgIDxmaWxlVXJsIHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJ1c2VyX3Nkay9pbmNsdWRlL3JvYm90bWwvbWFwc19yb2JvdG1sX3ByaW1pdGl2ZV9kYXRhdHlwZXMuaCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2ZpbGVVcmw+CisgICAgICAgIDxjaGFyc2V0IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJVVEYtOCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2NoYXJzZXQ+CisgICAgICA8L2JvZHk+CisgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyIvPgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJyb290X21vZGVsIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgIDwvbXRsOk1vZHVsZT4KKyAgPGVjb3JlOkVQYWNrYWdlIG5hbWU9ImFkZGl0aW9ucyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTdHJpbmdfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSW50ZWdlcl9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUmVhbF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1JlYWwiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRU9iamVjdF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdlbmVyYXRlUlRNYXBzUm9ib3RNTFByaW1pdGl2ZURhdGFUeXBlcyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTFByaW1pdGl2ZURhdGFUeXBlcyIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJyb290X21vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iT2NsQW55X0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNvbGxlY3Rpb24oVClfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Db2xsZWN0aW9uKFQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlNlcXVlbmNlKFQpX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU2VxdWVuY2UoVCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iT3JkZXJlZFNldChUKV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09yZGVyZWRTZXQoVCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iTW9kZWxfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFbGVtZW50X0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJEYXRhVHlwZV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0RhdGFUeXBlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgPC9lY29yZTpFUGFja2FnZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPGVjb3JlOkVBbm5vdGF0aW9uIHNvdXJjZT0icG9zaXRpb25zIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTFByaW1pdGl2ZURhdGFUeXBlcyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTkzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5OTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxQcmltaXRpdmVEYXRhVHlwZXMvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTA3MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MUHJpbWl0aXZlRGF0YVR5cGVzLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE2MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTc3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MUHJpbWl0aXZlRGF0YVR5cGVzLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExNDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzUm9ib3RNTFByaW1pdGl2ZURhdGFUeXBlcy8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE0OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTU2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxQcmltaXRpdmVEYXRhVHlwZXMvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTg2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5ODgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjYxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxQcmltaXRpdmVEYXRhVHlwZXMvcm9vdF9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTA1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMDY4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2Vjb3JlOkVBbm5vdGF0aW9uPgorPC94bWk6WE1JPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfcm9ib3RtbF9wcmltaXRpdmVfZGF0YXR5cGVzX2gubXRsIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfcm9ib3RtbF9wcmltaXRpdmVfZGF0YXR5cGVzX2gubXRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBlMzZmYjMKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc19yb2JvdG1sX3ByaW1pdGl2ZV9kYXRhdHlwZXNfaC5tdGwKQEAgLTAsMCArMSw2MiBAQAorW2NvbW1lbnQgZW5jb2RpbmcgPSBVVEYtOCAvXQorW2NvbW1lbnRdCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBJTlRFTVBPUkEgUy5BLgorICoKKyAqIFRoaXMgc29mdHdhcmUgaXMgYSBjb21wdXRlciBwcm9ncmFtIHdob3NlIHB1cnBvc2UgaXMgdG8gdHJhbnNmb3JtIFJvYm90TUwgbW9kZWxzCisgKiBpbnRvIFJUTWFwcyBkaWFncmFtcyBhbmQgUlRNYXBzIGNvbXBvbmVudHMgdmlhIHNvdXJjZSBjb2RlIGdlbmVyYXRpb24gdGVjaG5pcXVlcy4KKyAqIAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgTmljb2xhcyBEVSBMQUMgKElOVEVNUE9SQSkgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCitbL2NvbW1lbnRdCitbbW9kdWxlIGdlbmVyYXRlX3J0bWFwc19yb2JvdG1sX3ByaW1pdGl2ZV9kYXRhdHlwZXNfaCgnaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzMuMC4wL1VNTCcsICdodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEnKV0KKworW2ltcG9ydCBvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmNvbW1vbjo6bW1xdWVyaWVzOjpEYXRhVHlwZVF1ZXJpZXMgL10KKworW3RlbXBsYXRlIHB1YmxpYyBnZW5lcmF0ZVJUTWFwc1JvYm90TUxQcmltaXRpdmVEYXRhVHlwZXMocm9vdF9tb2RlbCA6IE1vZGVsKV0KK1tmaWxlICgndXNlcl9zZGsvaW5jbHVkZS9yb2JvdG1sL21hcHNfcm9ib3RtbF9wcmltaXRpdmVfZGF0YXR5cGVzLmgnLCBmYWxzZSwgJ1VURi04JyldCisjaWZuZGVmIF9fTUFQU19ST0JPVE1MX1BSSU1JVElWRV9EQVRBVFlQRVNfSF9fCisjZGVmaW5lIF9fTUFQU19ST0JPVE1MX1BSSU1JVElWRV9EQVRBVFlQRVNfSF9fCisKKyNpbmNsdWRlIDxzdHJpbmc+CisjaW5jbHVkZSA8dmVjdG9yPgorCisjaW5jbHVkZSAibWFwc190eXBlcy5oIgorCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKiBQUklNSVRJVkUgREFUQSBUWVBFUyAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwordHlwZWRlZiBib29sIEJvb2w7Cit0eXBlZGVmIE1BUFNVSW50OCBCeXRlOwordHlwZWRlZiBNQVBTVUludDggQ2hhcjsKK3R5cGVkZWYgTUFQU0ludDggSW50ODsKK3R5cGVkZWYgTUFQU1VJbnQ4IFVJbnQ4OwordHlwZWRlZiBNQVBTSW50MTYgSW50MTY7Cit0eXBlZGVmIE1BUFNVSW50MTYgVUludDE2OwordHlwZWRlZiBNQVBTSW50MzIgSW50MzI7Cit0eXBlZGVmIE1BUFNVSW50MzIgVUludDMyOwordHlwZWRlZiBNQVBTSW50NjQgSW50NjQ7Cit0eXBlZGVmIE1BUFNVSW50NjQgVUludDY0OwordHlwZWRlZiBNQVBTRmxvYXQzMiBGbG9hdDMyOwordHlwZWRlZiBNQVBTRmxvYXQ2NCBGbG9hdDY0OworCit0eXBlZGVmIHN0ZDo6c3RyaW5nIFN0cmluZzsKKwordHlwZWRlZiBNQVBTVGltZXN0YW1wIAlUaW1lOwordHlwZWRlZiBNQVBTRGVsYXkgCQlEdXJhdGlvbjsKKworY2xhc3MgTUFQU1JvYm90TUxTdHJpbmcgeworCXN0ZDo6c3RyaW5nIHRleHQ7Cit9OworCisjZW5kaWYgLy9fX01BUFNfUk9CT1RNTF9QUklNSVRJVkVfREFUQVRZUEVTX0hfXworWy9maWxlXQorCitbL3RlbXBsYXRlXQpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfdmMyMDA1X3Byb2plY3RfdmNwcm9qLmVtdGwgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc192YzIwMDVfcHJvamVjdF92Y3Byb2ouZW10bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45YTYyZWVlCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfdmMyMDA1X3Byb2plY3RfdmNwcm9qLmVtdGwKQEAgLTAsMCArMSw3ODMgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8eG1pOlhNSSB4bWk6dmVyc2lvbj0iMi4wIiB4bWxuczp4bWk9Imh0dHA6Ly93d3cub21nLm9yZy9YTUkiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zOmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIiB4bWxuczptdGw9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvYWNjZWxlby9tdGwvMy4wIiB4bWxuczpvY2wuZWNvcmU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL0Vjb3JlIj4KKyAgPG10bDpNb2R1bGUgbmFtZT0iZ2VuZXJhdGVfcnRtYXBzX3ZjMjAwNV9wcm9qZWN0X3ZjcHJvaiIgbnNVUkk9Im9yZzo6ZWNsaXBzZTo6cGFweXJ1czo6cm9ib3RtbDo6Z2VuZXJhdG9yczo6aW50ZW1wb3JhOjpydG1hcHM6OmZpbGVzOjpnZW5lcmF0ZV9ydG1hcHNfdmMyMDA1X3Byb2plY3RfdmNwcm9qIiBzdGFydEhlYWRlclBvc2l0aW9uPSI3NzMiIGVuZEhlYWRlclBvc2l0aW9uPSI5NzgiPgorICAgIDxpbnB1dD4KKyAgICAgIDx0YWtlc1R5cGVzRnJvbSBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8iLz4KKyAgICA8L2lucHV0PgorICAgIDxpbnB1dD4KKyAgICAgIDx0YWtlc1R5cGVzRnJvbSBocmVmPSJodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEjLyIvPgorICAgIDwvaW5wdXQ+CisgICAgPGltcG9ydHMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5lbXRsIy8wIi8+CisgICAgPGltcG9ydHMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAiLz4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6VGVtcGxhdGUiIG5hbWU9ImdlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSiIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7Ii8+CisgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZpbGVCbG9jayIgb3Blbk1vZGU9Ik92ZXJXcml0ZSI+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImbHQ7P3htbCB2ZXJzaW9uPSZxdW90OzEuMCZxdW90OyBlbmNvZGluZz0mcXVvdDtXaW5kb3dzLTEyNTImcXVvdDs/PiYjeEQ7JiN4QTsmbHQ7VmlzdWFsU3R1ZGlvUHJvamVjdCYjeEQ7JiN4QTsmI3g5O1Byb2plY3RUeXBlPSZxdW90O1Zpc3VhbCBDKysmcXVvdDsmI3hEOyYjeEE7JiN4OTtWZXJzaW9uPSZxdW90OzgsMDAmcXVvdDsmI3hEOyYjeEE7JiN4OTtOYW1lPSZxdW90O3J0bWFwc18iLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJnF1b3Q7JiN4RDsmI3hBOyYjeDk7UHJvamVjdEdVSUQ9JnF1b3Q7e0EzNkUwNzA1LTcyOUYtNEFGRC04REU3LUVGMjA1RjVGQkNFRX0mcXVvdDsmI3hEOyYjeEE7JiN4OTtSb290TmFtZXNwYWNlPSZxdW90O3J0bWFwc18iLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJnF1b3Q7JiN4RDsmI3hBOyYjeDk7U2NjTG9jYWxQYXRoPSZxdW90Oy4mcXVvdDsmI3hEOyYjeEE7JiN4OTs+JiN4RDsmI3hBOyYjeDk7Jmx0O1BsYXRmb3Jtcz4mI3hEOyYjeEE7JiN4OTsmI3g5OyZsdDtQbGF0Zm9ybSYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1dpbjMyJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsvPiYjeEQ7JiN4QTsmI3g5OyZsdDsvUGxhdGZvcm1zPiYjeEQ7JiN4QTsmI3g5OyZsdDtUb29sRmlsZXM+JiN4RDsmI3hBOyYjeDk7Jmx0Oy9Ub29sRmlsZXM+JiN4RDsmI3hBOyYjeDk7Jmx0O0NvbmZpZ3VyYXRpb25zPiYjeEQ7JiN4QTsmI3g5OyYjeDk7Jmx0O0NvbmZpZ3VyYXRpb24mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtSZWxlYXNlfFdpbjMyJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5O0NvbmZpZ3VyYXRpb25UeXBlPSZxdW90OzImcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7SW5oZXJpdGVkUHJvcGVydHlTaGVldHM9JnF1b3Q7JChSVE1BUFNfU0RLRElSKVx0ZW1wbGF0ZXMudVxSVE1hcHNfeDg2X1JlbGVhc2VfdmMyMDA1LnZzcHJvcHMmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7VXNlT2ZNRkM9JnF1b3Q7MCZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTtBVExNaW5pbWl6ZXNDUnVuVGltZUxpYnJhcnlVc2FnZT0mcXVvdDtmYWxzZSZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTtDaGFyYWN0ZXJTZXQ9JnF1b3Q7MiZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTs+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ1ByZUJ1aWxkRXZlbnRUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ0N1c3RvbUJ1aWxkVG9vbCZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsvPiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmbHQ7VG9vbCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7VkNYTUxEYXRhR2VuZXJhdG9yVG9vbCZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsvPiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmbHQ7VG9vbCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7VkNXZWJTZXJ2aWNlUHJveHlHZW5lcmF0b3JUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ01JRExUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyZsdDshLS0gIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6UHJvdGVjdGVkQXJlYUJsb2NrIj4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iICYjeEQ7JiN4QTstLT4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDQ0xDb21waWxlclRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPSZxdW90Oy4uXGluY2x1ZGUmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7Jmx0OyEtLSAiLz4KKyAgICAgICAgICA8bWFya2VyIHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJBZGRpdGlvbmFsIGluY2x1ZGVzIC0gUmVsZWFzZSBXaW4zMiI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPC9tYXJrZXI+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTstLT4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDTWFuYWdlZFJlc291cmNlQ29tcGlsZXJUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ1Jlc291cmNlQ29tcGlsZXJUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ1ByZUxpbmtFdmVudFRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7Jmx0OyEtLSAiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpQcm90ZWN0ZWRBcmVhQmxvY2siPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIgJiN4RDsmI3hBOy0tPiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmbHQ7VG9vbCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7VkNMaW5rZXJUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7QWRkaXRpb25hbERlcGVuZGVuY2llcz0mcXVvdDttc3ZjcHJ0LmxpYiZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O0FkZGl0aW9uYWxMaWJyYXJ5RGlyZWN0b3JpZXM9JnF1b3Q7JnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyZsdDshLS0gIi8+CisgICAgICAgICAgPG1hcmtlciB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iQWRkaXRpb25hbCBsaWJzIC0gUmVsZWFzZSBXaW4zMiI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPC9tYXJrZXI+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTstLT4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDQUxpbmtUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ01hbmlmZXN0VG9vbCZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsvPiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmbHQ7VG9vbCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7VkNYRENNYWtlVG9vbCZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsvPiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmbHQ7VG9vbCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7VkNCc2NNYWtlVG9vbCZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsvPiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmbHQ7VG9vbCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7VkNGeENvcFRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDQXBwVmVyaWZpZXJUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ1dlYkRlcGxveW1lbnRUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ1Bvc3RCdWlsZEV2ZW50VG9vbCZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsvPiYjeEQ7JiN4QTsmI3g5OyYjeDk7Jmx0Oy9Db25maWd1cmF0aW9uPiYjeEQ7JiN4QTsmI3g5OyYjeDk7Jmx0O0NvbmZpZ3VyYXRpb24mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtEZWJ1Z3xXaW4zMiZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTtDb25maWd1cmF0aW9uVHlwZT0mcXVvdDsyJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5O0luaGVyaXRlZFByb3BlcnR5U2hlZXRzPSZxdW90OyQoUlRNQVBTX1NES0RJUilcdGVtcGxhdGVzLnVcUlRNYXBzX3g4Nl9EZWJ1Z192YzIwMDUudnNwcm9wcyZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTtVc2VPZk1GQz0mcXVvdDswJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5O0FUTE1pbmltaXplc0NSdW5UaW1lTGlicmFyeVVzYWdlPSZxdW90O2ZhbHNlJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5O0NoYXJhY3RlclNldD0mcXVvdDsyJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oz4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDUHJlQnVpbGRFdmVudFRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDQ3VzdG9tQnVpbGRUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ1hNTERhdGFHZW5lcmF0b3JUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ1dlYlNlcnZpY2VQcm94eUdlbmVyYXRvclRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDTUlETFRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7Jmx0OyEtLSAiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpQcm90ZWN0ZWRBcmVhQmxvY2siPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIgJiN4RDsmI3hBOy0tPiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmbHQ7VG9vbCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7VkNDTENvbXBpbGVyVG9vbCZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O0FkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM9JnF1b3Q7Li5caW5jbHVkZSZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsvPiYjeEQ7JiN4QTsmbHQ7IS0tICIvPgorICAgICAgICAgIDxtYXJrZXIgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IkFkZGl0aW9uYWwgaW5jbHVkZXMgLSBEZWJ1ZyBXaW4zMiI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPC9tYXJrZXI+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTstLT4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDTWFuYWdlZFJlc291cmNlQ29tcGlsZXJUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ1Jlc291cmNlQ29tcGlsZXJUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ1ByZUxpbmtFdmVudFRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7Jmx0OyEtLSAiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpQcm90ZWN0ZWRBcmVhQmxvY2siPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIgJiN4RDsmI3hBOy0tPiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmbHQ7VG9vbCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7VkNMaW5rZXJUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7QWRkaXRpb25hbERlcGVuZGVuY2llcz0mcXVvdDttc3ZjcHJ0LmxpYiZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O0FkZGl0aW9uYWxMaWJyYXJ5RGlyZWN0b3JpZXM9JnF1b3Q7JnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyZsdDshLS0gIi8+CisgICAgICAgICAgPG1hcmtlciB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iQWRkaXRpb25hbCBsaWJzIC0gRGVidWcgV2luMzIiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDwvbWFya2VyPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7LS0+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ0FMaW5rVG9vbCZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsvPiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmbHQ7VG9vbCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7VkNNYW5pZmVzdFRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDWERDTWFrZVRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDQnNjTWFrZVRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDRnhDb3BUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ0FwcFZlcmlmaWVyVG9vbCZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsvPiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmbHQ7VG9vbCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7VkNXZWJEZXBsb3ltZW50VG9vbCZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsvPiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmbHQ7VG9vbCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7VkNQb3N0QnVpbGRFdmVudFRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7JiN4OTsmI3g5OyZsdDsvQ29uZmlndXJhdGlvbj4mI3hEOyYjeEE7JiN4OTsmbHQ7L0NvbmZpZ3VyYXRpb25zPiYjeEQ7JiN4QTsmI3g5OyZsdDtSZWZlcmVuY2VzPiYjeEQ7JiN4QTsmI3g5OyZsdDsvUmVmZXJlbmNlcz4mI3hEOyYjeEE7JiN4OTsmbHQ7RmlsZXM+JiN4RDsmI3hBOyYjeDk7JiN4OTsmbHQ7RmlsdGVyJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7c3JjJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oz4mI3hEOyYjeEE7Ii8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6Rm9yQmxvY2siPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6SWZCbG9jayI+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4OTsmI3g5OyYjeDk7Jmx0O0ZpbGUgUmVsYXRpdmVQYXRoPSZxdW90Oy5cc3JjXG1hcHNfIi8+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJlbHQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xMy9lbHQiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLmNwcCZxdW90Oy8+JiN4RDsmI3hBOyIvPgorICAgICAgICAgICAgPGlmRXhwciB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2lzTWFjcm9Db21wb25lbnQiLz4KKyAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZWx0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuMTMvZWx0Ij4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VHlwZUV4cCIgZVR5cGU9Ii8xNy9DbGFzcyI+CisgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55X0NsYXNzL29jbEFzVHlwZSIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpCb29sZWFuTGl0ZXJhbEV4cCIgYm9vbGVhblN5bWJvbD0iZmFsc2UiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW5fQ2xhc3MvPSIvPgorICAgICAgICAgICAgPC9pZkV4cHI+CisgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgIDxsb29wVmFyaWFibGUgbmFtZT0iZWx0Ij4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgICAgICAgICAgPC9sb29wVmFyaWFibGU+CisgICAgICAgICAgPGl0ZXJTZXQgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iIGVUeXBlPSIvMTQvU2VxdWVuY2UoTmFtZWRFbGVtZW50KSI+CisgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRDb21wb25lbnRNb2RlbHMiLz4KKyAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJtb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KL21vZGVsIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICA8L2l0ZXJTZXQ+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeDk7JiN4OTsmbHQ7L0ZpbHRlcj4mI3hEOyYjeEE7JiN4OTsmI3g5OyZsdDtGaWx0ZXImI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtsb2NhbF9pbnRlcmZhY2VzJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oz4mI3hEOyYjeEE7Ii8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6Rm9yQmxvY2siPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6SWZCbG9jayI+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4OTsmI3g5OyYjeDk7Jmx0O0ZpbGUgUmVsYXRpdmVQYXRoPSZxdW90Oy5cbG9jYWxfaW50ZXJmYWNlc1xtYXBzXyIvPgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZWx0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuMTUvZWx0Ij4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii5oJnF1b3Q7Lz4mI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICA8aWZFeHByIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvaXNNYWNyb0NvbXBvbmVudCIvPgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJlbHQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xNS9lbHQiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlRXhwIiBlVHlwZT0iLzE3L0NsYXNzIj4KKyAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnlfQ2xhc3Mvb2NsQXNUeXBlIi8+CisgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkJvb2xlYW5MaXRlcmFsRXhwIiBib29sZWFuU3ltYm9sPSJmYWxzZSI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbl9DbGFzcy89Ii8+CisgICAgICAgICAgICA8L2lmRXhwcj4KKyAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgPGxvb3BWYXJpYWJsZSBuYW1lPSJlbHQiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICA8L2xvb3BWYXJpYWJsZT4KKyAgICAgICAgICA8aXRlclNldCB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiIgZVR5cGU9Ii8xNC9TZXF1ZW5jZShOYW1lZEVsZW1lbnQpIj4KKyAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldENvbXBvbmVudE1vZGVscyIvPgorICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovbW9kZWwiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgIDwvaXRlclNldD4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4OTsmI3g5OyZsdDsvRmlsdGVyPiYjeEQ7JiN4QTsmI3g5OyYjeDk7Jmx0O0ZpbGUmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7UmVsYXRpdmVQYXRoPSZxdW90Oy5cIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJtb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KL21vZGVsIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii5wY2tpbmZvJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oz4mI3hEOyYjeEE7JiN4OTsmI3g5OyZsdDsvRmlsZT4mI3hEOyYjeEE7JiN4OTsmbHQ7L0ZpbGVzPiYjeEQ7JiN4QTsmI3g5OyZsdDtHbG9iYWxzPiYjeEQ7JiN4QTsmI3g5OyZsdDsvR2xvYmFscz4mI3hEOyYjeEE7Jmx0Oy9WaXN1YWxTdHVkaW9Qcm9qZWN0PiYjeEQ7JiN4QTsmI3hEOyYjeEE7Ii8+CisgICAgICAgIDxmaWxlVXJsIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL1N0cmluZ19DbGFzcy8rIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL1N0cmluZ19DbGFzcy8rIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL1N0cmluZ19DbGFzcy8rIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0idXNlcl9zZGsvIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJtb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KL21vZGVsIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLnUvcnRtYXBzXyI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi9tb2RlbCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il92YzIwMDUudmNwcm9qIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8L2ZpbGVVcmw+CisgICAgICAgIDxjaGFyc2V0IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJVVEYtOCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2NoYXJzZXQ+CisgICAgICA8L2JvZHk+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9Im1vZGVsIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgIDwvbXRsOk1vZHVsZT4KKyAgPGVjb3JlOkVQYWNrYWdlIG5hbWU9ImFkZGl0aW9ucyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTdHJpbmdfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9IisiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIG5vbi1zdGFuZGFyZCIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJvdGhlciI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkludGVnZXJfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlJlYWxfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9SZWFsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkVPYmplY3RfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0oiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0oiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibW9kZWwiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0Q29tcG9uZW50TW9kZWxzIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0Q29tcG9uZW50TW9kZWxzIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8zL1NlcXVlbmNlKE5hbWVkRWxlbWVudCkiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im1vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzTWFjcm9Db21wb25lbnQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9pc01hY3JvQ29tcG9uZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY2xhc3MiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPY2xBbnlfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ29sbGVjdGlvbihUKV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0NvbGxlY3Rpb24oVCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU2VxdWVuY2UoVClfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TZXF1ZW5jZShUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPcmRlcmVkU2V0KFQpX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT3JkZXJlZFNldChUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJNb2RlbF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNsYXNzX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRWxlbWVudF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUHJvcGVydHlfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb25uZWN0b3JfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUGFyYW1ldGVyX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUGFyYW1ldGVyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNsYXNzaWZpZXJfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzc2lmaWVyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlBvcnRfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgPC9lY29yZTpFUGFja2FnZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8ZWNvcmU6RVBhY2thZ2UgbmFtZT0iY29sbGVjdGlvbnMiPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIG5hbWU9IlNlcXVlbmNlKE5hbWVkRWxlbWVudCkiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuTGlzdCI+CisgICAgICA8ZWxlbWVudFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICA8L2Vjb3JlOkVQYWNrYWdlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxlY29yZTpFUGFja2FnZSBuYW1lPSJ0eXBlcyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVUeXBlIiBuYW1lPSJDbGFzcyI+CisgICAgICA8cmVmZXJyZWRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICA8L2Vjb3JlOkVQYWNrYWdlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0iaSI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9ImkiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8ZWNvcmU6RUFubm90YXRpb24gc291cmNlPSJwb3NpdGlvbnMiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUxNTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE0NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE0OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MTM4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KLyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEzNzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTM3NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMzg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuMS9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTM3NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMzc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTM4NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNDY3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzMSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KLyUuMS8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0NjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQ3OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KLyUuMS8lLjMvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0NjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQ3MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KLyUuMS8lLjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0ODAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjEyMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjEyMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjkyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS41LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxNzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjI4MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuNS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxMzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjE3MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS42Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMjkyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI0NjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijc0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KLyUuMS8lLjciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI0NjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjY1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iODQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuNy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNTEwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI2NDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijg0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KLyUuMS8lLjcvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNDc1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI1MDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuOCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjY1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNTQxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI5MiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS45Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNTQxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM3MDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE0MSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS45LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM1OTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzY5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTQxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KLyUuMS8lLjkvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNTUzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM1ODgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuMTAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM3MDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzg3OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTQ4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KLyUuMS8lLjExIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzODc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQwNzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE1OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzOTI0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQwNTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE1OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xMS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM4OTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzkyMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDA3MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NTQ4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNjYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuMTMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ1NDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDczMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTk5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KLyUuMS8lLjEzLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ2MDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDcyMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjAwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KLyUuMS8lLjEzLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDY2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0Njk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMDEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuMTMvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ2OTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDcwNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xMy8lLyUuMS9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ2OTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDY5OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xMy8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDcwNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NzE1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMDEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuMTMvJS8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ2MTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDY1OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xMy8lLyUuMy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NjExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ2NDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuMTMvJS8lLjMvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NjI4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ2NDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuMTMvJS8lLjMvJS8lL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDYyOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NjMxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KLyUuMS8lLjEzLyUvJS4zLyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NjQyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ2NDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuMTMvJS8lLjMvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NjUyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ2NTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuMTMvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NTU1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ1NzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE5OSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xMy8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ1NzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDYwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xMy8lLjEvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ1OTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDU5OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDczMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NzkxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMDQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuMTUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ3OTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDk4NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjA4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KLyUuMS8lLjE1LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ4NDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDk3NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjA5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KLyUuMS8lLjE1LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDkwNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0OTUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMTAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuMTUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ5NTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDk2MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xNS8lLyUuMS9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ5NTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDk1NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xNS8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDk2MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0OTY5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMTAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuMTUvJS8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ4NTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDkwMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xNS8lLyUuMy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0ODU0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ4OTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuMTUvJS8lLjMvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0ODcxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ4OTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuMTUvJS8lLjMvJS8lL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDg3MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0ODc0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KLyUuMS8lLjE1LyUvJS4zLyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0ODg1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ4OTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuMTUvJS8lLjMvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0ODk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ5MDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuMTUvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0Nzk4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ4MTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIwOCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xNS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ4MTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDg0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xNS8lLjEvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ4MzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDg0MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDk4NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MDI4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMTMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuMTciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUwMjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTAzOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xNy9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTAyOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MDM0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KLyUuMS8lLjE4Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MDQxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUxMzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIxNSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xOSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjI2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KLyUuMS8lLjE5LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTIwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xOS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xOS8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KLyUuMS8lLjE5LyUvJS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE2NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xOS8lLyUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE3OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xOS8lLyUvJS8lLjEvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE3NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xOS8lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTgyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExOTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjY5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovJS4xLyUuMTkvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExOTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTIwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSi8lLjEvJS4xOS8lLyUuMS9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE5NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjAyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KLyUuMS8lLjE5LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTIxMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjI2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KLyUuMS8lLjIwIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEyNDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjczIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0ovbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExMzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lY29yZTpFQW5ub3RhdGlvbj4KKzwveG1pOlhNST4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3ZjMjAwNV9wcm9qZWN0X3ZjcHJvai5tdGwgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc192YzIwMDVfcHJvamVjdF92Y3Byb2oubXRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUxOWI5MjEKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc192YzIwMDVfcHJvamVjdF92Y3Byb2oubXRsCkBAIC0wLDAgKzEsMjI0IEBACitbY29tbWVudCBlbmNvZGluZyA9IFVURi04IC9dCitbY29tbWVudF0KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIElOVEVNUE9SQSBTLkEuCisgKgorICogVGhpcyBzb2Z0d2FyZSBpcyBhIGNvbXB1dGVyIHByb2dyYW0gd2hvc2UgcHVycG9zZSBpcyB0byB0cmFuc2Zvcm0gUm9ib3RNTCBtb2RlbHMKKyAqIGludG8gUlRNYXBzIGRpYWdyYW1zIGFuZCBSVE1hcHMgY29tcG9uZW50cyB2aWEgc291cmNlIGNvZGUgZ2VuZXJhdGlvbiB0ZWNobmlxdWVzLgorICogCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBOaWNvbGFzIERVIExBQyAoSU5URU1QT1JBKSAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK1svY29tbWVudF0KK1ttb2R1bGUgZ2VuZXJhdGVfcnRtYXBzX3ZjMjAwNV9wcm9qZWN0X3ZjcHJvaignaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzMuMC4wL1VNTCcsICdodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEnKV0KKworW2ltcG9ydCBvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmNvbW1vbjo6bW1xdWVyaWVzOjpHZW5lcmFsUXVlcmllcyAvXQorW2ltcG9ydCBvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmNvbW1vbjo6bW1xdWVyaWVzOjpBcmNoaXRlY3R1cmVRdWVyaWVzIC9dCisKK1t0ZW1wbGF0ZSBwdWJsaWMgZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KKG1vZGVsIDogTW9kZWwpXQorCitbZmlsZSAoJ3VzZXJfc2RrLycrIG1vZGVsLm5hbWUgKyAnLnUvcnRtYXBzXycgKyBtb2RlbC5uYW1lICsgJ192YzIwMDUudmNwcm9qJywgZmFsc2UsICdVVEYtOCcpXQorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iV2luZG93cy0xMjUyIj8+Cis8VmlzdWFsU3R1ZGlvUHJvamVjdAorCVByb2plY3RUeXBlPSJWaXN1YWwgQysrIgorCVZlcnNpb249IjgsMDAiCisJTmFtZT0icnRtYXBzX1ttb2RlbC5uYW1lL10iCisJUHJvamVjdEdVSUQ9IntBMzZFMDcwNS03MjlGLTRBRkQtOERFNy1FRjIwNUY1RkJDRUV9IgorCVJvb3ROYW1lc3BhY2U9InJ0bWFwc19bbW9kZWwubmFtZS9dIgorCVNjY0xvY2FsUGF0aD0iLiIKKwk+CisJPFBsYXRmb3Jtcz4KKwkJPFBsYXRmb3JtCisJCQlOYW1lPSJXaW4zMiIKKwkJLz4KKwk8L1BsYXRmb3Jtcz4KKwk8VG9vbEZpbGVzPgorCTwvVG9vbEZpbGVzPgorCTxDb25maWd1cmF0aW9ucz4KKwkJPENvbmZpZ3VyYXRpb24KKwkJCU5hbWU9IlJlbGVhc2V8V2luMzIiCisJCQlDb25maWd1cmF0aW9uVHlwZT0iMiIKKwkJCUluaGVyaXRlZFByb3BlcnR5U2hlZXRzPSIkKFJUTUFQU19TREtESVIpXHRlbXBsYXRlcy51XFJUTWFwc194ODZfUmVsZWFzZV92YzIwMDUudnNwcm9wcyIKKwkJCVVzZU9mTUZDPSIwIgorCQkJQVRMTWluaW1pemVzQ1J1blRpbWVMaWJyYXJ5VXNhZ2U9ImZhbHNlIgorCQkJQ2hhcmFjdGVyU2V0PSIyIgorCQkJPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ1ByZUJ1aWxkRXZlbnRUb29sIgorCQkJLz4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNDdXN0b21CdWlsZFRvb2wiCisJCQkvPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ1hNTERhdGFHZW5lcmF0b3JUb29sIgorCQkJLz4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNXZWJTZXJ2aWNlUHJveHlHZW5lcmF0b3JUb29sIgorCQkJLz4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNNSURMVG9vbCIKKwkJCS8+Cis8IS0tIFtwcm90ZWN0ZWQgKCdBZGRpdGlvbmFsIGluY2x1ZGVzIC0gUmVsZWFzZSBXaW4zMicpXSAKKy0tPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgorCQkJCUFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM9Ii4uXGluY2x1ZGUiCisJCQkvPgorPCEtLSBbL3Byb3RlY3RlZF0KKy0tPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ01hbmFnZWRSZXNvdXJjZUNvbXBpbGVyVG9vbCIKKwkJCS8+CisJCQk8VG9vbAorCQkJCU5hbWU9IlZDUmVzb3VyY2VDb21waWxlclRvb2wiCisJCQkvPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ1ByZUxpbmtFdmVudFRvb2wiCisJCQkvPgorPCEtLSBbcHJvdGVjdGVkICgnQWRkaXRpb25hbCBsaWJzIC0gUmVsZWFzZSBXaW4zMicpXSAKKy0tPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ0xpbmtlclRvb2wiCisJCQkJQWRkaXRpb25hbERlcGVuZGVuY2llcz0ibXN2Y3BydC5saWIiCisJCQkJQWRkaXRpb25hbExpYnJhcnlEaXJlY3Rvcmllcz0iIgorCQkJLz4KKzwhLS0gWy9wcm90ZWN0ZWRdCistLT4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNBTGlua1Rvb2wiCisJCQkvPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ01hbmlmZXN0VG9vbCIKKwkJCS8+CisJCQk8VG9vbAorCQkJCU5hbWU9IlZDWERDTWFrZVRvb2wiCisJCQkvPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ0JzY01ha2VUb29sIgorCQkJLz4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNGeENvcFRvb2wiCisJCQkvPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ0FwcFZlcmlmaWVyVG9vbCIKKwkJCS8+CisJCQk8VG9vbAorCQkJCU5hbWU9IlZDV2ViRGVwbG95bWVudFRvb2wiCisJCQkvPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ1Bvc3RCdWlsZEV2ZW50VG9vbCIKKwkJCS8+CisJCTwvQ29uZmlndXJhdGlvbj4KKwkJPENvbmZpZ3VyYXRpb24KKwkJCU5hbWU9IkRlYnVnfFdpbjMyIgorCQkJQ29uZmlndXJhdGlvblR5cGU9IjIiCisJCQlJbmhlcml0ZWRQcm9wZXJ0eVNoZWV0cz0iJChSVE1BUFNfU0RLRElSKVx0ZW1wbGF0ZXMudVxSVE1hcHNfeDg2X0RlYnVnX3ZjMjAwNS52c3Byb3BzIgorCQkJVXNlT2ZNRkM9IjAiCisJCQlBVExNaW5pbWl6ZXNDUnVuVGltZUxpYnJhcnlVc2FnZT0iZmFsc2UiCisJCQlDaGFyYWN0ZXJTZXQ9IjIiCisJCQk+CisJCQk8VG9vbAorCQkJCU5hbWU9IlZDUHJlQnVpbGRFdmVudFRvb2wiCisJCQkvPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ0N1c3RvbUJ1aWxkVG9vbCIKKwkJCS8+CisJCQk8VG9vbAorCQkJCU5hbWU9IlZDWE1MRGF0YUdlbmVyYXRvclRvb2wiCisJCQkvPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ1dlYlNlcnZpY2VQcm94eUdlbmVyYXRvclRvb2wiCisJCQkvPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ01JRExUb29sIgorCQkJLz4KKzwhLS0gW3Byb3RlY3RlZCAoJ0FkZGl0aW9uYWwgaW5jbHVkZXMgLSBEZWJ1ZyBXaW4zMicpXSAKKy0tPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgorCQkJCUFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM9Ii4uXGluY2x1ZGUiCisJCQkvPgorPCEtLSBbL3Byb3RlY3RlZF0KKy0tPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ01hbmFnZWRSZXNvdXJjZUNvbXBpbGVyVG9vbCIKKwkJCS8+CisJCQk8VG9vbAorCQkJCU5hbWU9IlZDUmVzb3VyY2VDb21waWxlclRvb2wiCisJCQkvPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ1ByZUxpbmtFdmVudFRvb2wiCisJCQkvPgorPCEtLSBbcHJvdGVjdGVkICgnQWRkaXRpb25hbCBsaWJzIC0gRGVidWcgV2luMzInKV0gCistLT4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNMaW5rZXJUb29sIgorCQkJCUFkZGl0aW9uYWxEZXBlbmRlbmNpZXM9Im1zdmNwcnQubGliIgorCQkJCUFkZGl0aW9uYWxMaWJyYXJ5RGlyZWN0b3JpZXM9IiIKKwkJCS8+Cis8IS0tIFsvcHJvdGVjdGVkXQorLS0+CisJCQk8VG9vbAorCQkJCU5hbWU9IlZDQUxpbmtUb29sIgorCQkJLz4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNNYW5pZmVzdFRvb2wiCisJCQkvPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ1hEQ01ha2VUb29sIgorCQkJLz4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNCc2NNYWtlVG9vbCIKKwkJCS8+CisJCQk8VG9vbAorCQkJCU5hbWU9IlZDRnhDb3BUb29sIgorCQkJLz4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNBcHBWZXJpZmllclRvb2wiCisJCQkvPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ1dlYkRlcGxveW1lbnRUb29sIgorCQkJLz4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNQb3N0QnVpbGRFdmVudFRvb2wiCisJCQkvPgorCQk8L0NvbmZpZ3VyYXRpb24+CisJPC9Db25maWd1cmF0aW9ucz4KKwk8UmVmZXJlbmNlcz4KKwk8L1JlZmVyZW5jZXM+CisJPEZpbGVzPgorCQk8RmlsdGVyCisJCQlOYW1lPSJzcmMiCisJCQk+CisJW2ZvciAoZWx0OiBOYW1lZEVsZW1lbnQgfCBnZXRDb21wb25lbnRNb2RlbHMobW9kZWwpKV0KKwkJW2lmIChpc01hY3JvQ29tcG9uZW50KGVsdC5vY2xBc1R5cGUoQ2xhc3MpKSA9IGZhbHNlKV0KKwkJCTxGaWxlIFJlbGF0aXZlUGF0aD0iLlxzcmNcbWFwc19bZWx0Lm5hbWUvXS5jcHAiLz4KKwkJWy9pZl0KKwlbL2Zvcl0KKwkJPC9GaWx0ZXI+CisJCTxGaWx0ZXIKKwkJCU5hbWU9ImxvY2FsX2ludGVyZmFjZXMiCisJCQk+CisJW2ZvciAoZWx0OiBOYW1lZEVsZW1lbnQgfCBnZXRDb21wb25lbnRNb2RlbHMobW9kZWwpKV0KKwkJW2lmIChpc01hY3JvQ29tcG9uZW50KGVsdC5vY2xBc1R5cGUoQ2xhc3MpKSA9IGZhbHNlKV0KKwkJCTxGaWxlIFJlbGF0aXZlUGF0aD0iLlxsb2NhbF9pbnRlcmZhY2VzXG1hcHNfW2VsdC5uYW1lL10uaCIvPgorCQlbL2lmXQorCVsvZm9yXQorCQk8L0ZpbHRlcj4KKwkJPEZpbGUKKwkJCVJlbGF0aXZlUGF0aD0iLlxbbW9kZWwubmFtZS9dLnBja2luZm8iCisJCQk+CisJCTwvRmlsZT4KKwk8L0ZpbGVzPgorCTxHbG9iYWxzPgorCTwvR2xvYmFscz4KKzwvVmlzdWFsU3R1ZGlvUHJvamVjdD4KKworWy9maWxlXQorWy90ZW1wbGF0ZV0KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3ZjMjAwNV9zb2x1dGlvbl9zbG4uZW10bCBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3ZjMjAwNV9zb2x1dGlvbl9zbG4uZW10bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jNWI4NGY0Ci0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfdmMyMDA1X3NvbHV0aW9uX3Nsbi5lbXRsCkBAIC0wLDAgKzEsMjE5IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHhtaTpYTUkgeG1pOnZlcnNpb249IjIuMCIgeG1sbnM6eG1pPSJodHRwOi8vd3d3Lm9tZy5vcmcvWE1JIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczplY29yZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSIgeG1sbnM6bXRsPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2FjY2VsZW8vbXRsLzMuMCIgeG1sbnM6b2NsLmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9FY29yZSI+CisgIDxtdGw6TW9kdWxlIG5hbWU9ImdlbmVyYXRlX3J0bWFwc192YzIwMDVfc29sdXRpb25fc2xuIiBuc1VSST0ib3JnOjplY2xpcHNlOjpwYXB5cnVzOjpyb2JvdG1sOjpnZW5lcmF0b3JzOjppbnRlbXBvcmE6OnJ0bWFwczo6ZmlsZXM6OmdlbmVyYXRlX3J0bWFwc192YzIwMDVfc29sdXRpb25fc2xuIiBzdGFydEhlYWRlclBvc2l0aW9uPSI3NzMiIGVuZEhlYWRlclBvc2l0aW9uPSIxMTYzIj4KKyAgICA8aW5wdXQ+CisgICAgICA8dGFrZXNUeXBlc0Zyb20gaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvIi8+CisgICAgPC9pbnB1dD4KKyAgICA8aW5wdXQ+CisgICAgICA8dGFrZXNUeXBlc0Zyb20gaHJlZj0iaHR0cDovL1BhcHlydXMvUm9ib3RNTC8xIy8iLz4KKyAgICA8L2lucHV0PgorICAgIDxvd25lZE1vZHVsZUVsZW1lbnQgeHNpOnR5cGU9Im10bDpUZW1wbGF0ZSIgbmFtZT0iZ2VuZXJhdGVSVE1hcHNWQzIwMDVTb2x1dGlvblNMTiIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7Ii8+CisgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZpbGVCbG9jayIgb3Blbk1vZGU9Ik92ZXJXcml0ZSI+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJNaWNyb3NvZnQgVmlzdWFsIFN0dWRpbyBTb2x1dGlvbiBGaWxlLCBGb3JtYXQgVmVyc2lvbiA5LjAwJiN4RDsmI3hBOyMgVmlzdWFsIFN0dWRpbyAyMDA1JiN4RDsmI3hBO1Byb2plY3QoJnF1b3Q7ezhCQzlDRUI4LThCNEEtMTFEMC04RDExLTAwQTBDOTFCQzk0Mn0mcXVvdDspID0gJnF1b3Q7Ii8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJtb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVTb2x1dGlvblNMTi9tb2RlbCI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImcXVvdDssICZxdW90OyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1U29sdXRpb25TTE4vbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLnVccnRtYXBzXyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1U29sdXRpb25TTE4vbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iX3ZjMjAwNS52Y3Byb2omcXVvdDssICZxdW90O3tBMzZFMDcwNS03MjlGLTRBRkQtOERFNy1FRjIwNUY1RkJDRUV9JnF1b3Q7JiN4RDsmI3hBO0VuZFByb2plY3QmI3hEOyYjeEE7R2xvYmFsJiN4RDsmI3hBOyYjeDk7R2xvYmFsU2VjdGlvbihTb2x1dGlvbkNvbmZpZ3VyYXRpb25QbGF0Zm9ybXMpID0gcHJlU29sdXRpb24mI3hEOyYjeEE7JiN4OTsmI3g5O0RlYnVnfFdpbjMyID0gRGVidWd8V2luMzImI3hEOyYjeEE7JiN4OTsmI3g5O1JlbGVhc2V8V2luMzIgPSBSZWxlYXNlfFdpbjMyJiN4RDsmI3hBOyYjeDk7RW5kR2xvYmFsU2VjdGlvbiYjeEQ7JiN4QTsmI3g5O0dsb2JhbFNlY3Rpb24oUHJvamVjdENvbmZpZ3VyYXRpb25QbGF0Zm9ybXMpID0gcG9zdFNvbHV0aW9uJiN4RDsmI3hBOyYjeDk7JiN4OTt7QTM2RTA3MDUtNzI5Ri00QUZELThERTctRUYyMDVGNUZCQ0VFfS5EZWJ1Z3xXaW4zMi5BY3RpdmVDZmcgPSBEZWJ1Z3xXaW4zMiYjeEQ7JiN4QTsmI3g5OyYjeDk7e0EzNkUwNzA1LTcyOUYtNEFGRC04REU3LUVGMjA1RjVGQkNFRX0uRGVidWd8V2luMzIuQnVpbGQuMCA9IERlYnVnfFdpbjMyJiN4RDsmI3hBOyYjeDk7JiN4OTt7QTM2RTA3MDUtNzI5Ri00QUZELThERTctRUYyMDVGNUZCQ0VFfS5SZWxlYXNlfFdpbjMyLkFjdGl2ZUNmZyA9IFJlbGVhc2V8V2luMzImI3hEOyYjeEE7JiN4OTsmI3g5O3tBMzZFMDcwNS03MjlGLTRBRkQtOERFNy1FRjIwNUY1RkJDRUV9LlJlbGVhc2V8V2luMzIuQnVpbGQuMCA9IFJlbGVhc2V8V2luMzImI3hEOyYjeEE7JiN4OTtFbmRHbG9iYWxTZWN0aW9uJiN4RDsmI3hBOyYjeDk7R2xvYmFsU2VjdGlvbihTb2x1dGlvblByb3BlcnRpZXMpID0gcHJlU29sdXRpb24mI3hEOyYjeEE7JiN4OTsmI3g5O0hpZGVTb2x1dGlvbk5vZGUgPSBGQUxTRSYjeEQ7JiN4QTsmI3g5O0VuZEdsb2JhbFNlY3Rpb24mI3hEOyYjeEE7RW5kR2xvYmFsJiN4RDsmI3hBOyYjeEQ7JiN4QTsiLz4KKyAgICAgICAgPGZpbGVVcmwgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9InVzZXJfc2RrL21hcHNfc2RrX3ZjMjAwNS5zbG4iPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9maWxlVXJsPgorICAgICAgICA8Y2hhcnNldCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iVVRGLTgiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9jaGFyc2V0PgorICAgICAgPC9ib2R5PgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJtb2RlbCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICA8L210bDpNb2R1bGU+CisgIDxlY29yZTpFUGFja2FnZSBuYW1lPSJhZGRpdGlvbnMiPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU3RyaW5nX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkludGVnZXJfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlJlYWxfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9SZWFsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkVPYmplY3RfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZW5lcmF0ZVJUTWFwc1ZDMjAwNVNvbHV0aW9uU0xOIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVTb2x1dGlvblNMTiIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJtb2RlbCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9jbEFueV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb2xsZWN0aW9uKFQpX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQ29sbGVjdGlvbihUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTZXF1ZW5jZShUKV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1NlcXVlbmNlKFQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9yZGVyZWRTZXQoVClfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PcmRlcmVkU2V0KFQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik1vZGVsX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICA8L2Vjb3JlOkVQYWNrYWdlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8ZWNvcmU6RUFubm90YXRpb24gc291cmNlPSJwb3NpdGlvbnMiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVTb2x1dGlvblNMTiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODkyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5NTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVNvbHV0aW9uU0xOLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk1OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5NjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVNvbHV0aW9uU0xOLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTYwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5NDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVNvbHV0aW9uU0xOLyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDE3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExNTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVNvbHV0aW9uU0xOLyUuMS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE2MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVTb2x1dGlvblNMTi8lLjEvJS4xL21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTUzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExNTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1U29sdXRpb25TTE4vJS4xLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE2NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTY5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVTb2x1dGlvblNMTi8lLjEvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTcwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExODAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1U29sdXRpb25TTE4vJS4xLyUuMy9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE3MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTc1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVNvbHV0aW9uU0xOLyUuMS8lLjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExODIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVNvbHV0aW9uU0xOLyUuMS8lLjUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExOTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTIwMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1U29sdXRpb25TTE4vJS4xLyUuNS9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTk4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVTb2x1dGlvblNMTi8lLjEvJS42Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjA1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5MzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVTb2x1dGlvblNMTi8lLjEvJS43Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5NjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDVTb2x1dGlvblNMTi8lLjEvJS44Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwMTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVNvbHV0aW9uU0xOL21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5NDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTU0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2Vjb3JlOkVBbm5vdGF0aW9uPgorPC94bWk6WE1JPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfdmMyMDA1X3NvbHV0aW9uX3Nsbi5tdGwgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc192YzIwMDVfc29sdXRpb25fc2xuLm10bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNjY5ZTZkCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfdmMyMDA1X3NvbHV0aW9uX3Nsbi5tdGwKQEAgLTAsMCArMSw0NiBAQAorW2NvbW1lbnQgZW5jb2RpbmcgPSBVVEYtOCAvXQorW2NvbW1lbnRdCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBJTlRFTVBPUkEgUy5BLgorICoKKyAqIFRoaXMgc29mdHdhcmUgaXMgYSBjb21wdXRlciBwcm9ncmFtIHdob3NlIHB1cnBvc2UgaXMgdG8gdHJhbnNmb3JtIFJvYm90TUwgbW9kZWxzCisgKiBpbnRvIFJUTWFwcyBkaWFncmFtcyBhbmQgUlRNYXBzIGNvbXBvbmVudHMgdmlhIHNvdXJjZSBjb2RlIGdlbmVyYXRpb24gdGVjaG5pcXVlcy4KKyAqIAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgTmljb2xhcyBEVSBMQUMgKElOVEVNUE9SQSkgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCitbL2NvbW1lbnRdCitbbW9kdWxlIGdlbmVyYXRlX3J0bWFwc192YzIwMDVfc29sdXRpb25fc2xuKCdodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMy4wLjAvVU1MJywgJ2h0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMScpXQorCisKK1t0ZW1wbGF0ZSBwdWJsaWMgZ2VuZXJhdGVSVE1hcHNWQzIwMDVTb2x1dGlvblNMTihtb2RlbCA6IE1vZGVsKV0KKworW2ZpbGUgKCd1c2VyX3Nkay9tYXBzX3Nka192YzIwMDUuc2xuJywgZmFsc2UsICdVVEYtOCcpXQorTWljcm9zb2Z0IFZpc3VhbCBTdHVkaW8gU29sdXRpb24gRmlsZSwgRm9ybWF0IFZlcnNpb24gOS4wMAorIyBWaXN1YWwgU3R1ZGlvIDIwMDUKK1Byb2plY3QoIns4QkM5Q0VCOC04QjRBLTExRDAtOEQxMS0wMEEwQzkxQkM5NDJ9IikgPSAiW21vZGVsLm5hbWUvXSIsICJbbW9kZWwubmFtZS9dLnVccnRtYXBzX1ttb2RlbC5uYW1lL11fdmMyMDA1LnZjcHJvaiIsICJ7QTM2RTA3MDUtNzI5Ri00QUZELThERTctRUYyMDVGNUZCQ0VFfSIKK0VuZFByb2plY3QKK0dsb2JhbAorCUdsb2JhbFNlY3Rpb24oU29sdXRpb25Db25maWd1cmF0aW9uUGxhdGZvcm1zKSA9IHByZVNvbHV0aW9uCisJCURlYnVnfFdpbjMyID0gRGVidWd8V2luMzIKKwkJUmVsZWFzZXxXaW4zMiA9IFJlbGVhc2V8V2luMzIKKwlFbmRHbG9iYWxTZWN0aW9uCisJR2xvYmFsU2VjdGlvbihQcm9qZWN0Q29uZmlndXJhdGlvblBsYXRmb3JtcykgPSBwb3N0U29sdXRpb24KKwkJe0EzNkUwNzA1LTcyOUYtNEFGRC04REU3LUVGMjA1RjVGQkNFRX0uRGVidWd8V2luMzIuQWN0aXZlQ2ZnID0gRGVidWd8V2luMzIKKwkJe0EzNkUwNzA1LTcyOUYtNEFGRC04REU3LUVGMjA1RjVGQkNFRX0uRGVidWd8V2luMzIuQnVpbGQuMCA9IERlYnVnfFdpbjMyCisJCXtBMzZFMDcwNS03MjlGLTRBRkQtOERFNy1FRjIwNUY1RkJDRUV9LlJlbGVhc2V8V2luMzIuQWN0aXZlQ2ZnID0gUmVsZWFzZXxXaW4zMgorCQl7QTM2RTA3MDUtNzI5Ri00QUZELThERTctRUYyMDVGNUZCQ0VFfS5SZWxlYXNlfFdpbjMyLkJ1aWxkLjAgPSBSZWxlYXNlfFdpbjMyCisJRW5kR2xvYmFsU2VjdGlvbgorCUdsb2JhbFNlY3Rpb24oU29sdXRpb25Qcm9wZXJ0aWVzKSA9IHByZVNvbHV0aW9uCisJCUhpZGVTb2x1dGlvbk5vZGUgPSBGQUxTRQorCUVuZEdsb2JhbFNlY3Rpb24KK0VuZEdsb2JhbAorCitbL2ZpbGVdCitbL3RlbXBsYXRlXQpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfdmMyMDA4X3Byb2plY3RfdmNwcm9qLmVtdGwgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc192YzIwMDhfcHJvamVjdF92Y3Byb2ouZW10bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44NzUxZjZiCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfdmMyMDA4X3Byb2plY3RfdmNwcm9qLmVtdGwKQEAgLTAsMCArMSw3ODMgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8eG1pOlhNSSB4bWk6dmVyc2lvbj0iMi4wIiB4bWxuczp4bWk9Imh0dHA6Ly93d3cub21nLm9yZy9YTUkiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zOmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIiB4bWxuczptdGw9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvYWNjZWxlby9tdGwvMy4wIiB4bWxuczpvY2wuZWNvcmU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL0Vjb3JlIj4KKyAgPG10bDpNb2R1bGUgbmFtZT0iZ2VuZXJhdGVfcnRtYXBzX3ZjMjAwOF9wcm9qZWN0X3ZjcHJvaiIgbnNVUkk9Im9yZzo6ZWNsaXBzZTo6cGFweXJ1czo6cm9ib3RtbDo6Z2VuZXJhdG9yczo6aW50ZW1wb3JhOjpydG1hcHM6OmZpbGVzOjpnZW5lcmF0ZV9ydG1hcHNfdmMyMDA4X3Byb2plY3RfdmNwcm9qIiBzdGFydEhlYWRlclBvc2l0aW9uPSI3NzMiIGVuZEhlYWRlclBvc2l0aW9uPSI5NzgiPgorICAgIDxpbnB1dD4KKyAgICAgIDx0YWtlc1R5cGVzRnJvbSBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8iLz4KKyAgICA8L2lucHV0PgorICAgIDxpbnB1dD4KKyAgICAgIDx0YWtlc1R5cGVzRnJvbSBocmVmPSJodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEjLyIvPgorICAgIDwvaW5wdXQ+CisgICAgPGltcG9ydHMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5lbXRsIy8wIi8+CisgICAgPGltcG9ydHMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAiLz4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6VGVtcGxhdGUiIG5hbWU9ImdlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSiIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7Ii8+CisgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZpbGVCbG9jayIgb3Blbk1vZGU9Ik92ZXJXcml0ZSI+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImbHQ7P3htbCB2ZXJzaW9uPSZxdW90OzEuMCZxdW90OyBlbmNvZGluZz0mcXVvdDtXaW5kb3dzLTEyNTImcXVvdDs/PiYjeEQ7JiN4QTsmbHQ7VmlzdWFsU3R1ZGlvUHJvamVjdCYjeEQ7JiN4QTsmI3g5O1Byb2plY3RUeXBlPSZxdW90O1Zpc3VhbCBDKysmcXVvdDsmI3hEOyYjeEE7JiN4OTtWZXJzaW9uPSZxdW90OzksMDAmcXVvdDsmI3hEOyYjeEE7JiN4OTtOYW1lPSZxdW90O3J0bWFwc18iLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJnF1b3Q7JiN4RDsmI3hBOyYjeDk7UHJvamVjdEdVSUQ9JnF1b3Q7e0EzNkUwNzA1LTcyOUYtNEFGRC04REU3LUVGMjA1RjVGQkNFRX0mcXVvdDsmI3hEOyYjeEE7JiN4OTtSb290TmFtZXNwYWNlPSZxdW90O3J0bWFwc18iLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJnF1b3Q7JiN4RDsmI3hBOyYjeDk7U2NjTG9jYWxQYXRoPSZxdW90Oy4mcXVvdDsmI3hEOyYjeEE7JiN4OTtUYXJnZXRGcmFtZXdvcmtWZXJzaW9uPSZxdW90OzEzMTA3MiZxdW90OyYjeEQ7JiN4QTsmI3g5Oz4mI3hEOyYjeEE7JiN4OTsmbHQ7UGxhdGZvcm1zPiYjeEQ7JiN4QTsmI3g5OyYjeDk7Jmx0O1BsYXRmb3JtJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7V2luMzImcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyYjeDk7Jmx0Oy9QbGF0Zm9ybXM+JiN4RDsmI3hBOyYjeDk7Jmx0O1Rvb2xGaWxlcz4mI3hEOyYjeEE7JiN4OTsmbHQ7L1Rvb2xGaWxlcz4mI3hEOyYjeEE7JiN4OTsmbHQ7Q29uZmlndXJhdGlvbnM+JiN4RDsmI3hBOyYjeDk7JiN4OTsmbHQ7Q29uZmlndXJhdGlvbiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1JlbGVhc2V8V2luMzImcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Q29uZmlndXJhdGlvblR5cGU9JnF1b3Q7MiZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTtJbmhlcml0ZWRQcm9wZXJ0eVNoZWV0cz0mcXVvdDskKFJUTUFQU19TREtESVIpXHRlbXBsYXRlcy51XFJUTWFwc194ODZfUmVsZWFzZV92YzIwMDgudnNwcm9wcyZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTtVc2VPZk1GQz0mcXVvdDswJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5O0FUTE1pbmltaXplc0NSdW5UaW1lTGlicmFyeVVzYWdlPSZxdW90O2ZhbHNlJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5O0NoYXJhY3RlclNldD0mcXVvdDsyJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oz4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDUHJlQnVpbGRFdmVudFRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDQ3VzdG9tQnVpbGRUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ1hNTERhdGFHZW5lcmF0b3JUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ1dlYlNlcnZpY2VQcm94eUdlbmVyYXRvclRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDTUlETFRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7Jmx0OyEtLSAiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpQcm90ZWN0ZWRBcmVhQmxvY2siPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIgJiN4RDsmI3hBOy0tPiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmbHQ7VG9vbCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7VkNDTENvbXBpbGVyVG9vbCZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O0FkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM9JnF1b3Q7Li5caW5jbHVkZSZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsvPiYjeEQ7JiN4QTsmbHQ7IS0tICIvPgorICAgICAgICAgIDxtYXJrZXIgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IkFkZGl0aW9uYWwgaW5jbHVkZXMgLSBSZWxlYXNlIFdpbjMyIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8L21hcmtlcj4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOy0tPiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmbHQ7VG9vbCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7VkNNYW5hZ2VkUmVzb3VyY2VDb21waWxlclRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDUmVzb3VyY2VDb21waWxlclRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDUHJlTGlua0V2ZW50VG9vbCZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsvPiYjeEQ7JiN4QTsmbHQ7IS0tICIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOlByb3RlY3RlZEFyZWFCbG9jayI+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiAmI3hEOyYjeEE7LS0+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ0xpbmtlclRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtSYW5kb21pemVkQmFzZUFkZHJlc3M9JnF1b3Q7MSZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O0RhdGFFeGVjdXRpb25QcmV2ZW50aW9uPSZxdW90OzAmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPSZxdW90O21zdmNwcnQubGliJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7QWRkaXRpb25hbExpYnJhcnlEaXJlY3Rvcmllcz0mcXVvdDsmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7Jmx0OyEtLSAiLz4KKyAgICAgICAgICA8bWFya2VyIHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJBZGRpdGlvbmFsIGxpYnMgLSBSZWxlYXNlIFdpbjMyIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8L21hcmtlcj4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOy0tPiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmbHQ7VG9vbCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7VkNBTGlua1Rvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDTWFuaWZlc3RUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ1hEQ01ha2VUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ0JzY01ha2VUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ0Z4Q29wVG9vbCZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsvPiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmbHQ7VG9vbCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7VkNBcHBWZXJpZmllclRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDUG9zdEJ1aWxkRXZlbnRUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyYjeDk7JiN4OTsmbHQ7L0NvbmZpZ3VyYXRpb24+JiN4RDsmI3hBOyYjeDk7JiN4OTsmbHQ7Q29uZmlndXJhdGlvbiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O0RlYnVnfFdpbjMyJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5O0NvbmZpZ3VyYXRpb25UeXBlPSZxdW90OzImcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7SW5oZXJpdGVkUHJvcGVydHlTaGVldHM9JnF1b3Q7JChSVE1BUFNfU0RLRElSKVx0ZW1wbGF0ZXMudVxSVE1hcHNfeDg2X0RlYnVnX3ZjMjAwOC52c3Byb3BzJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5O1VzZU9mTUZDPSZxdW90OzAmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7QVRMTWluaW1pemVzQ1J1blRpbWVMaWJyYXJ5VXNhZ2U9JnF1b3Q7ZmFsc2UmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Q2hhcmFjdGVyU2V0PSZxdW90OzImcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7PiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmbHQ7VG9vbCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7VkNQcmVCdWlsZEV2ZW50VG9vbCZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsvPiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmbHQ7VG9vbCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7VkNDdXN0b21CdWlsZFRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDWE1MRGF0YUdlbmVyYXRvclRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDV2ViU2VydmljZVByb3h5R2VuZXJhdG9yVG9vbCZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsvPiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmbHQ7VG9vbCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7VkNNSURMVG9vbCZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsvPiYjeEQ7JiN4QTsmbHQ7IS0tICIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOlByb3RlY3RlZEFyZWFCbG9jayI+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiAmI3hEOyYjeEE7LS0+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ0NMQ29tcGlsZXJUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7QWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcz0mcXVvdDsuLlxpbmNsdWRlJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyZsdDshLS0gIi8+CisgICAgICAgICAgPG1hcmtlciB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iQWRkaXRpb25hbCBpbmNsdWRlcyAtIERlYnVnIFdpbjMyIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8L21hcmtlcj4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOy0tPiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmbHQ7VG9vbCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7VkNNYW5hZ2VkUmVzb3VyY2VDb21waWxlclRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDUmVzb3VyY2VDb21waWxlclRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDUHJlTGlua0V2ZW50VG9vbCZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsvPiYjeEQ7JiN4QTsmbHQ7IS0tICIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOlByb3RlY3RlZEFyZWFCbG9jayI+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiAmI3hEOyYjeEE7LS0+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ0xpbmtlclRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPSZxdW90O21zdmNwcnQubGliJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7QWRkaXRpb25hbExpYnJhcnlEaXJlY3Rvcmllcz0mcXVvdDsmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtSYW5kb21pemVkQmFzZUFkZHJlc3M9JnF1b3Q7MSZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O0RhdGFFeGVjdXRpb25QcmV2ZW50aW9uPSZxdW90OzAmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7Jmx0OyEtLSAiLz4KKyAgICAgICAgICA8bWFya2VyIHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJBZGRpdGlvbmFsIGxpYnMgLSBEZWJ1ZyBXaW4zMiI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPC9tYXJrZXI+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTstLT4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDQUxpbmtUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ01hbmlmZXN0VG9vbCZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsvPiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmbHQ7VG9vbCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7VkNYRENNYWtlVG9vbCZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsvPiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmbHQ7VG9vbCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7VkNCc2NNYWtlVG9vbCZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsvPiYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmbHQ7VG9vbCYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsmI3g5O05hbWU9JnF1b3Q7VkNGeENvcFRvb2wmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Lz4mI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7Jmx0O1Rvb2wmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O1ZDQXBwVmVyaWZpZXJUb29sJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oy8+JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyZsdDtUb29sJiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtWQ1Bvc3RCdWlsZEV2ZW50VG9vbCZxdW90OyYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTsvPiYjeEQ7JiN4QTsmI3g5OyYjeDk7Jmx0Oy9Db25maWd1cmF0aW9uPiYjeEQ7JiN4QTsmI3g5OyZsdDsvQ29uZmlndXJhdGlvbnM+JiN4RDsmI3hBOyYjeDk7Jmx0O1JlZmVyZW5jZXM+JiN4RDsmI3hBOyYjeDk7Jmx0Oy9SZWZlcmVuY2VzPiYjeEQ7JiN4QTsmI3g5OyZsdDtGaWxlcz4mI3hEOyYjeEE7JiN4OTsmI3g5OyZsdDtGaWx0ZXImI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7TmFtZT0mcXVvdDtzcmMmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7PiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGb3JCbG9jayI+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpJZkJsb2NrIj4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5OyYjeDk7JiN4OTsmbHQ7RmlsZSBSZWxhdGl2ZVBhdGg9JnF1b3Q7LlxzcmNcbWFwc18iLz4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KLyUuMS8lLjEzL2VsdCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIuY3BwJnF1b3Q7Lz4mI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICA8aWZFeHByIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvaXNNYWNyb0NvbXBvbmVudCIvPgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJlbHQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xMy9lbHQiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlRXhwIiBlVHlwZT0iLzE3L0NsYXNzIj4KKyAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnlfQ2xhc3Mvb2NsQXNUeXBlIi8+CisgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkJvb2xlYW5MaXRlcmFsRXhwIiBib29sZWFuU3ltYm9sPSJmYWxzZSI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbl9DbGFzcy89Ii8+CisgICAgICAgICAgICA8L2lmRXhwcj4KKyAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgPGxvb3BWYXJpYWJsZSBuYW1lPSJlbHQiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICA8L2xvb3BWYXJpYWJsZT4KKyAgICAgICAgICA8aXRlclNldCB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiIgZVR5cGU9Ii8xNC9TZXF1ZW5jZShOYW1lZEVsZW1lbnQpIj4KKyAgICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2dldENvbXBvbmVudE1vZGVscyIvPgorICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovbW9kZWwiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgIDwvaXRlclNldD4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4OTsmI3g5OyZsdDsvRmlsdGVyPiYjeEQ7JiN4QTsmI3g5OyYjeDk7Jmx0O0ZpbHRlciYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTtOYW1lPSZxdW90O2xvY2FsX2ludGVyZmFjZXMmcXVvdDsmI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7PiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGb3JCbG9jayI+CisgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpJZkJsb2NrIj4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5OyYjeDk7JiN4OTsmbHQ7RmlsZSBSZWxhdGl2ZVBhdGg9JnF1b3Q7Llxsb2NhbF9pbnRlcmZhY2VzXG1hcHNfIi8+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJlbHQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xNS9lbHQiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLmgmcXVvdDsvPiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgIDxpZkV4cHIgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9pc01hY3JvQ29tcG9uZW50Ii8+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KLyUuMS8lLjE1L2VsdCI+CisgICAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVFeHAiIGVUeXBlPSIvMTcvQ2xhc3MiPgorICAgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueV9DbGFzcy9vY2xBc1R5cGUiLz4KKyAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6Qm9vbGVhbkxpdGVyYWxFeHAiIGJvb2xlYW5TeW1ib2w9ImZhbHNlIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuX0NsYXNzLz0iLz4KKyAgICAgICAgICAgIDwvaWZFeHByPgorICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICA8bG9vcFZhcmlhYmxlIG5hbWU9ImVsdCI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICAgICAgICAgIDwvbG9vcFZhcmlhYmxlPgorICAgICAgICAgIDxpdGVyU2V0IHhzaTp0eXBlPSJtdGw6UXVlcnlJbnZvY2F0aW9uIiBlVHlwZT0iLzE0L1NlcXVlbmNlKE5hbWVkRWxlbWVudCkiPgorICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0Q29tcG9uZW50TW9kZWxzIi8+CisgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi9tb2RlbCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgPC9pdGVyU2V0PgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3g5OyYjeDk7Jmx0Oy9GaWx0ZXI+JiN4RDsmI3hBOyYjeDk7JiN4OTsmbHQ7RmlsZSYjeEQ7JiN4QTsmI3g5OyYjeDk7JiN4OTtSZWxhdGl2ZVBhdGg9JnF1b3Q7LlxydG1hcHNfIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJtb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KL21vZGVsIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii5wY2tpbmZvJnF1b3Q7JiN4RDsmI3hBOyYjeDk7JiN4OTsmI3g5Oz4mI3hEOyYjeEE7JiN4OTsmI3g5OyZsdDsvRmlsZT4mI3hEOyYjeEE7JiN4OTsmbHQ7L0ZpbGVzPiYjeEQ7JiN4QTsmI3g5OyZsdDtHbG9iYWxzPiYjeEQ7JiN4QTsmI3g5OyZsdDsvR2xvYmFscz4mI3hEOyYjeEE7Jmx0Oy9WaXN1YWxTdHVkaW9Qcm9qZWN0PiYjeEQ7JiN4QTsmI3hEOyYjeEE7Ii8+CisgICAgICAgIDxmaWxlVXJsIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL1N0cmluZ19DbGFzcy8rIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL1N0cmluZ19DbGFzcy8rIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCIgcmVmZXJyZWRPcGVyYXRpb249Ii8xL1N0cmluZ19DbGFzcy8rIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0idXNlcl9zZGsvIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJtb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KL21vZGVsIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLnUvcnRtYXBzXyI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi9tb2RlbCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il92YzIwMDgudmNwcm9qIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8L2ZpbGVVcmw+CisgICAgICAgIDxjaGFyc2V0IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJVVEYtOCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2NoYXJzZXQ+CisgICAgICA8L2JvZHk+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9Im1vZGVsIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgIDwvbXRsOk1vZHVsZT4KKyAgPGVjb3JlOkVQYWNrYWdlIG5hbWU9ImFkZGl0aW9ucyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTdHJpbmdfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9IisiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIG5vbi1zdGFuZGFyZCIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJvdGhlciI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6QW55VHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkludGVnZXJfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlJlYWxfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9SZWFsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkVPYmplY3RfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0oiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0oiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibW9kZWwiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0Q29tcG9uZW50TW9kZWxzIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0Q29tcG9uZW50TW9kZWxzIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8zL1NlcXVlbmNlKE5hbWVkRWxlbWVudCkiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im1vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzTWFjcm9Db21wb25lbnQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9pc01hY3JvQ29tcG9uZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY2xhc3MiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPY2xBbnlfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ29sbGVjdGlvbihUKV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0NvbGxlY3Rpb24oVCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU2VxdWVuY2UoVClfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TZXF1ZW5jZShUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPcmRlcmVkU2V0KFQpX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT3JkZXJlZFNldChUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJNb2RlbF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNsYXNzX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRWxlbWVudF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUHJvcGVydHlfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb25uZWN0b3JfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUGFyYW1ldGVyX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUGFyYW1ldGVyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNsYXNzaWZpZXJfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzc2lmaWVyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlBvcnRfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgPC9lY29yZTpFUGFja2FnZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8ZWNvcmU6RVBhY2thZ2UgbmFtZT0iY29sbGVjdGlvbnMiPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIG5hbWU9IlNlcXVlbmNlKE5hbWVkRWxlbWVudCkiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuTGlzdCI+CisgICAgICA8ZWxlbWVudFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICA8L2Vjb3JlOkVQYWNrYWdlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxlY29yZTpFUGFja2FnZSBuYW1lPSJ0eXBlcyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVUeXBlIiBuYW1lPSJDbGFzcyI+CisgICAgICA8cmVmZXJyZWRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICA8L2Vjb3JlOkVQYWNrYWdlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0iaSI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9ImkiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8ZWNvcmU6RUFubm90YXRpb24gc291cmNlPSJwb3NpdGlvbnMiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUyMjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE0NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE0OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MjA5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KLyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEzNzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTM3NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMzg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuMS9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTM3NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMzc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTM4NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNDY3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIzMSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KLyUuMS8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0NjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQ3OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KLyUuMS8lLjMvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0NjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQ3MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KLyUuMS8lLjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0ODAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjE1NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMzMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjE1NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzI2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS41LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyMDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjMxNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuNS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxNjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjIwNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS42Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMzI2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI0OTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijc1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KLyUuMS8lLjciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjI0OTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjc1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iODUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuNy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNTQ0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI3NDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijg1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KLyUuMS8lLjcvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyNTA5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjI1NDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuOCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjc1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNTkwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI5NSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS45Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNTkwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM3NTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE0MSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS45LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM2MzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzc0NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTQxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KLyUuMS8lLjkvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNjAyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM2MzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuMTAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM3NTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzkyOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTQ4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KLyUuMS8lLjExIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzOTI4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQxODMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE1OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzOTczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQxNzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE1OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xMS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM5NDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzk3MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDE4MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NjEyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxNjgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuMTMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ2MTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDc5NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTk4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KLyUuMS8lLjEzLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ2NzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDc4NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTk5Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KLyUuMS8lLjEzLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDcyNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NzU5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMDAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuMTMvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ3NjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDc2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xMy8lLyUuMS9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ3NjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDc2MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xMy8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDc3MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0Nzc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMDAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuMTMvJS8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ2NzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDcyMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xMy8lLyUuMy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0Njc1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ3MTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuMTMvJS8lLjMvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NjkyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ3MTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuMTMvJS8lLjMvJS8lL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDY5MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0Njk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KLyUuMS8lLjEzLyUvJS4zLyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NzA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ3MTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuMTMvJS8lLjMvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NzE2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ3MjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuMTMvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NjE5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ2MzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjE5OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xMy8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ2MzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDY2NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xMy8lLjEvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ2NTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDY2MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDc5NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0ODU1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMDMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuMTUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ4NTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTA0OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjA3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KLyUuMS8lLjE1LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ5MTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTA0MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjA4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KLyUuMS8lLjE1LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDk2OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MDE1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMDkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuMTUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUwMTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTAyNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xNS8lLyUuMS9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUwMTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTAxOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xNS8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTAyNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MDMzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMDkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuMTUvJS8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ5MTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDk2NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xNS8lLyUuMy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0OTE4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ5NTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuMTUvJS8lLjMvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0OTM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ5NTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuMTUvJS8lLjMvJS8lL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDkzNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0OTM4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KLyUuMS8lLjE1LyUvJS4zLyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0OTQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ5NTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuMTUvJS8lLjMvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0OTU5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ5NjQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuMTUvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0ODYyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ4NzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIwNyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xNS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ4ODIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDkwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xNS8lLjEvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ5MDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDkwNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTA1MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MDk5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMTIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuMTciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUxMDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTExMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xNy9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTEwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MTA1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KLyUuMS8lLjE4Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MTEyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUyMDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIxNCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xOSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjI2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KLyUuMS8lLjE5LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTIwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xOS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xOS8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KLyUuMS8lLjE5LyUvJS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE2NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xOS8lLyUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE3OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xOS8lLyUvJS8lLjEvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE3NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xOS8lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTgyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExOTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjY5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovJS4xLyUuMTkvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExOTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTIwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSi8lLjEvJS4xOS8lLyUuMS9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE5NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjAyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KLyUuMS8lLjE5LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTIxMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjI2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KLyUuMS8lLjIwIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEyNDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjczIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0ovbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExMzAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lY29yZTpFQW5ub3RhdGlvbj4KKzwveG1pOlhNST4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3ZjMjAwOF9wcm9qZWN0X3ZjcHJvai5tdGwgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc192YzIwMDhfcHJvamVjdF92Y3Byb2oubXRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUxNGEzN2QKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc192YzIwMDhfcHJvamVjdF92Y3Byb2oubXRsCkBAIC0wLDAgKzEsMjIzIEBACitbY29tbWVudCBlbmNvZGluZyA9IFVURi04IC9dCitbY29tbWVudF0KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIElOVEVNUE9SQSBTLkEuCisgKgorICogVGhpcyBzb2Z0d2FyZSBpcyBhIGNvbXB1dGVyIHByb2dyYW0gd2hvc2UgcHVycG9zZSBpcyB0byB0cmFuc2Zvcm0gUm9ib3RNTCBtb2RlbHMKKyAqIGludG8gUlRNYXBzIGRpYWdyYW1zIGFuZCBSVE1hcHMgY29tcG9uZW50cyB2aWEgc291cmNlIGNvZGUgZ2VuZXJhdGlvbiB0ZWNobmlxdWVzLgorICogCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBOaWNvbGFzIERVIExBQyAoSU5URU1QT1JBKSAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK1svY29tbWVudF0KK1ttb2R1bGUgZ2VuZXJhdGVfcnRtYXBzX3ZjMjAwOF9wcm9qZWN0X3ZjcHJvaignaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzMuMC4wL1VNTCcsICdodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEnKV0KKworW2ltcG9ydCBvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmNvbW1vbjo6bW1xdWVyaWVzOjpHZW5lcmFsUXVlcmllcyAvXQorW2ltcG9ydCBvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmNvbW1vbjo6bW1xdWVyaWVzOjpBcmNoaXRlY3R1cmVRdWVyaWVzIC9dCisKK1t0ZW1wbGF0ZSBwdWJsaWMgZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KKG1vZGVsIDogTW9kZWwpXQorCitbZmlsZSAoJ3VzZXJfc2RrLycrIG1vZGVsLm5hbWUgKyAnLnUvcnRtYXBzXycgKyBtb2RlbC5uYW1lICsgJ192YzIwMDgudmNwcm9qJywgZmFsc2UsICdVVEYtOCcpXQorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iV2luZG93cy0xMjUyIj8+Cis8VmlzdWFsU3R1ZGlvUHJvamVjdAorCVByb2plY3RUeXBlPSJWaXN1YWwgQysrIgorCVZlcnNpb249IjksMDAiCisJTmFtZT0icnRtYXBzX1ttb2RlbC5uYW1lL10iCisJUHJvamVjdEdVSUQ9IntBMzZFMDcwNS03MjlGLTRBRkQtOERFNy1FRjIwNUY1RkJDRUV9IgorCVJvb3ROYW1lc3BhY2U9InJ0bWFwc19bbW9kZWwubmFtZS9dIgorCVNjY0xvY2FsUGF0aD0iLiIKKwlUYXJnZXRGcmFtZXdvcmtWZXJzaW9uPSIxMzEwNzIiCisJPgorCTxQbGF0Zm9ybXM+CisJCTxQbGF0Zm9ybQorCQkJTmFtZT0iV2luMzIiCisJCS8+CisJPC9QbGF0Zm9ybXM+CisJPFRvb2xGaWxlcz4KKwk8L1Rvb2xGaWxlcz4KKwk8Q29uZmlndXJhdGlvbnM+CisJCTxDb25maWd1cmF0aW9uCisJCQlOYW1lPSJSZWxlYXNlfFdpbjMyIgorCQkJQ29uZmlndXJhdGlvblR5cGU9IjIiCisJCQlJbmhlcml0ZWRQcm9wZXJ0eVNoZWV0cz0iJChSVE1BUFNfU0RLRElSKVx0ZW1wbGF0ZXMudVxSVE1hcHNfeDg2X1JlbGVhc2VfdmMyMDA4LnZzcHJvcHMiCisJCQlVc2VPZk1GQz0iMCIKKwkJCUFUTE1pbmltaXplc0NSdW5UaW1lTGlicmFyeVVzYWdlPSJmYWxzZSIKKwkJCUNoYXJhY3RlclNldD0iMiIKKwkJCT4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNQcmVCdWlsZEV2ZW50VG9vbCIKKwkJCS8+CisJCQk8VG9vbAorCQkJCU5hbWU9IlZDQ3VzdG9tQnVpbGRUb29sIgorCQkJLz4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNYTUxEYXRhR2VuZXJhdG9yVG9vbCIKKwkJCS8+CisJCQk8VG9vbAorCQkJCU5hbWU9IlZDV2ViU2VydmljZVByb3h5R2VuZXJhdG9yVG9vbCIKKwkJCS8+CisJCQk8VG9vbAorCQkJCU5hbWU9IlZDTUlETFRvb2wiCisJCQkvPgorPCEtLSBbcHJvdGVjdGVkICgnQWRkaXRpb25hbCBpbmNsdWRlcyAtIFJlbGVhc2UgV2luMzInKV0gCistLT4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKKwkJCQlBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPSIuLlxpbmNsdWRlIgorCQkJLz4KKzwhLS0gWy9wcm90ZWN0ZWRdCistLT4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNNYW5hZ2VkUmVzb3VyY2VDb21waWxlclRvb2wiCisJCQkvPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ1Jlc291cmNlQ29tcGlsZXJUb29sIgorCQkJLz4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNQcmVMaW5rRXZlbnRUb29sIgorCQkJLz4KKzwhLS0gW3Byb3RlY3RlZCAoJ0FkZGl0aW9uYWwgbGlicyAtIFJlbGVhc2UgV2luMzInKV0gCistLT4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNMaW5rZXJUb29sIgorCQkJCVJhbmRvbWl6ZWRCYXNlQWRkcmVzcz0iMSIKKwkJCQlEYXRhRXhlY3V0aW9uUHJldmVudGlvbj0iMCIKKwkJCQlBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPSJtc3ZjcHJ0LmxpYiIKKwkJCQlBZGRpdGlvbmFsTGlicmFyeURpcmVjdG9yaWVzPSIiCisJCQkvPgorPCEtLSBbL3Byb3RlY3RlZF0KKy0tPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ0FMaW5rVG9vbCIKKwkJCS8+CisJCQk8VG9vbAorCQkJCU5hbWU9IlZDTWFuaWZlc3RUb29sIgorCQkJLz4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNYRENNYWtlVG9vbCIKKwkJCS8+CisJCQk8VG9vbAorCQkJCU5hbWU9IlZDQnNjTWFrZVRvb2wiCisJCQkvPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ0Z4Q29wVG9vbCIKKwkJCS8+CisJCQk8VG9vbAorCQkJCU5hbWU9IlZDQXBwVmVyaWZpZXJUb29sIgorCQkJLz4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNQb3N0QnVpbGRFdmVudFRvb2wiCisJCQkvPgorCQk8L0NvbmZpZ3VyYXRpb24+CisJCTxDb25maWd1cmF0aW9uCisJCQlOYW1lPSJEZWJ1Z3xXaW4zMiIKKwkJCUNvbmZpZ3VyYXRpb25UeXBlPSIyIgorCQkJSW5oZXJpdGVkUHJvcGVydHlTaGVldHM9IiQoUlRNQVBTX1NES0RJUilcdGVtcGxhdGVzLnVcUlRNYXBzX3g4Nl9EZWJ1Z192YzIwMDgudnNwcm9wcyIKKwkJCVVzZU9mTUZDPSIwIgorCQkJQVRMTWluaW1pemVzQ1J1blRpbWVMaWJyYXJ5VXNhZ2U9ImZhbHNlIgorCQkJQ2hhcmFjdGVyU2V0PSIyIgorCQkJPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ1ByZUJ1aWxkRXZlbnRUb29sIgorCQkJLz4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNDdXN0b21CdWlsZFRvb2wiCisJCQkvPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ1hNTERhdGFHZW5lcmF0b3JUb29sIgorCQkJLz4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNXZWJTZXJ2aWNlUHJveHlHZW5lcmF0b3JUb29sIgorCQkJLz4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNNSURMVG9vbCIKKwkJCS8+Cis8IS0tIFtwcm90ZWN0ZWQgKCdBZGRpdGlvbmFsIGluY2x1ZGVzIC0gRGVidWcgV2luMzInKV0gCistLT4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKKwkJCQlBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPSIuLlxpbmNsdWRlIgorCQkJLz4KKzwhLS0gWy9wcm90ZWN0ZWRdCistLT4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNNYW5hZ2VkUmVzb3VyY2VDb21waWxlclRvb2wiCisJCQkvPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ1Jlc291cmNlQ29tcGlsZXJUb29sIgorCQkJLz4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNQcmVMaW5rRXZlbnRUb29sIgorCQkJLz4KKzwhLS0gW3Byb3RlY3RlZCAoJ0FkZGl0aW9uYWwgbGlicyAtIERlYnVnIFdpbjMyJyldIAorLS0+CisJCQk8VG9vbAorCQkJCU5hbWU9IlZDTGlua2VyVG9vbCIKKwkJCQlBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPSJtc3ZjcHJ0LmxpYiIKKwkJCQlBZGRpdGlvbmFsTGlicmFyeURpcmVjdG9yaWVzPSIiCisJCQkJUmFuZG9taXplZEJhc2VBZGRyZXNzPSIxIgorCQkJCURhdGFFeGVjdXRpb25QcmV2ZW50aW9uPSIwIgorCQkJLz4KKzwhLS0gWy9wcm90ZWN0ZWRdCistLT4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNBTGlua1Rvb2wiCisJCQkvPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ01hbmlmZXN0VG9vbCIKKwkJCS8+CisJCQk8VG9vbAorCQkJCU5hbWU9IlZDWERDTWFrZVRvb2wiCisJCQkvPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ0JzY01ha2VUb29sIgorCQkJLz4KKwkJCTxUb29sCisJCQkJTmFtZT0iVkNGeENvcFRvb2wiCisJCQkvPgorCQkJPFRvb2wKKwkJCQlOYW1lPSJWQ0FwcFZlcmlmaWVyVG9vbCIKKwkJCS8+CisJCQk8VG9vbAorCQkJCU5hbWU9IlZDUG9zdEJ1aWxkRXZlbnRUb29sIgorCQkJLz4KKwkJPC9Db25maWd1cmF0aW9uPgorCTwvQ29uZmlndXJhdGlvbnM+CisJPFJlZmVyZW5jZXM+CisJPC9SZWZlcmVuY2VzPgorCTxGaWxlcz4KKwkJPEZpbHRlcgorCQkJTmFtZT0ic3JjIgorCQkJPgorCVtmb3IgKGVsdDogTmFtZWRFbGVtZW50IHwgZ2V0Q29tcG9uZW50TW9kZWxzKG1vZGVsKSldCisJCVtpZiAoaXNNYWNyb0NvbXBvbmVudChlbHQub2NsQXNUeXBlKENsYXNzKSkgPSBmYWxzZSldCisJCQk8RmlsZSBSZWxhdGl2ZVBhdGg9Ii5cc3JjXG1hcHNfW2VsdC5uYW1lL10uY3BwIi8+CisJCVsvaWZdCisJWy9mb3JdCisJCTwvRmlsdGVyPgorCQk8RmlsdGVyCisJCQlOYW1lPSJsb2NhbF9pbnRlcmZhY2VzIgorCQkJPgorCVtmb3IgKGVsdDogTmFtZWRFbGVtZW50IHwgZ2V0Q29tcG9uZW50TW9kZWxzKG1vZGVsKSldCisJCVtpZiAoaXNNYWNyb0NvbXBvbmVudChlbHQub2NsQXNUeXBlKENsYXNzKSkgPSBmYWxzZSldCisJCQk8RmlsZSBSZWxhdGl2ZVBhdGg9Ii5cbG9jYWxfaW50ZXJmYWNlc1xtYXBzX1tlbHQubmFtZS9dLmgiLz4KKwkJWy9pZl0KKwlbL2Zvcl0KKwkJPC9GaWx0ZXI+CisJCTxGaWxlCisJCQlSZWxhdGl2ZVBhdGg9Ii5ccnRtYXBzX1ttb2RlbC5uYW1lL10ucGNraW5mbyIKKwkJCT4KKwkJPC9GaWxlPgorCTwvRmlsZXM+CisJPEdsb2JhbHM+CisJPC9HbG9iYWxzPgorPC9WaXN1YWxTdHVkaW9Qcm9qZWN0PgorCitbL2ZpbGVdCitbL3RlbXBsYXRlXQpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfdmMyMDA4X3NvbHV0aW9uX3Nsbi5lbXRsIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfdmMyMDA4X3NvbHV0aW9uX3Nsbi5lbXRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJhMWE3ZGMKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc192YzIwMDhfc29sdXRpb25fc2xuLmVtdGwKQEAgLTAsMCArMSwyMTkgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8eG1pOlhNSSB4bWk6dmVyc2lvbj0iMi4wIiB4bWxuczp4bWk9Imh0dHA6Ly93d3cub21nLm9yZy9YTUkiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zOmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIiB4bWxuczptdGw9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvYWNjZWxlby9tdGwvMy4wIiB4bWxuczpvY2wuZWNvcmU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL0Vjb3JlIj4KKyAgPG10bDpNb2R1bGUgbmFtZT0iZ2VuZXJhdGVfcnRtYXBzX3ZjMjAwOF9zb2x1dGlvbl9zbG4iIG5zVVJJPSJvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmludGVtcG9yYTo6cnRtYXBzOjpmaWxlczo6Z2VuZXJhdGVfcnRtYXBzX3ZjMjAwOF9zb2x1dGlvbl9zbG4iIHN0YXJ0SGVhZGVyUG9zaXRpb249Ijc3MyIgZW5kSGVhZGVyUG9zaXRpb249IjExNjQiPgorICAgIDxpbnB1dD4KKyAgICAgIDx0YWtlc1R5cGVzRnJvbSBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8iLz4KKyAgICA8L2lucHV0PgorICAgIDxpbnB1dD4KKyAgICAgIDx0YWtlc1R5cGVzRnJvbSBocmVmPSJodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEjLyIvPgorICAgIDwvaW5wdXQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlRlbXBsYXRlIiBuYW1lPSJnZW5lcmF0ZVJUTWFwc1ZDMjAwOFNvbHV0aW9uU0xOIiB2aXNpYmlsaXR5PSJQdWJsaWMiPgorICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsiLz4KKyAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6RmlsZUJsb2NrIiBvcGVuTW9kZT0iT3ZlcldyaXRlIj4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ik1pY3Jvc29mdCBWaXN1YWwgU3R1ZGlvIFNvbHV0aW9uIEZpbGUsIEZvcm1hdCBWZXJzaW9uIDEwLjAwJiN4RDsmI3hBOyMgVmlzdWFsIFN0dWRpbyAyMDA4JiN4RDsmI3hBO1Byb2plY3QoJnF1b3Q7ezhCQzlDRUI4LThCNEEtMTFEMC04RDExLTAwQTBDOTFCQzk0Mn0mcXVvdDspID0gJnF1b3Q7Ii8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJtb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhTb2x1dGlvblNMTi9tb2RlbCI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImcXVvdDssICZxdW90OyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4U29sdXRpb25TTE4vbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLnVccnRtYXBzXyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4U29sdXRpb25TTE4vbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iX3ZjMjAwOC52Y3Byb2omcXVvdDssICZxdW90O3tBMzZFMDcwNS03MjlGLTRBRkQtOERFNy1FRjIwNUY1RkJDRUV9JnF1b3Q7JiN4RDsmI3hBO0VuZFByb2plY3QmI3hEOyYjeEE7R2xvYmFsJiN4RDsmI3hBOyYjeDk7R2xvYmFsU2VjdGlvbihTb2x1dGlvbkNvbmZpZ3VyYXRpb25QbGF0Zm9ybXMpID0gcHJlU29sdXRpb24mI3hEOyYjeEE7JiN4OTsmI3g5O0RlYnVnfFdpbjMyID0gRGVidWd8V2luMzImI3hEOyYjeEE7JiN4OTsmI3g5O1JlbGVhc2V8V2luMzIgPSBSZWxlYXNlfFdpbjMyJiN4RDsmI3hBOyYjeDk7RW5kR2xvYmFsU2VjdGlvbiYjeEQ7JiN4QTsmI3g5O0dsb2JhbFNlY3Rpb24oUHJvamVjdENvbmZpZ3VyYXRpb25QbGF0Zm9ybXMpID0gcG9zdFNvbHV0aW9uJiN4RDsmI3hBOyYjeDk7JiN4OTt7QTM2RTA3MDUtNzI5Ri00QUZELThERTctRUYyMDVGNUZCQ0VFfS5EZWJ1Z3xXaW4zMi5BY3RpdmVDZmcgPSBEZWJ1Z3xXaW4zMiYjeEQ7JiN4QTsmI3g5OyYjeDk7e0EzNkUwNzA1LTcyOUYtNEFGRC04REU3LUVGMjA1RjVGQkNFRX0uRGVidWd8V2luMzIuQnVpbGQuMCA9IERlYnVnfFdpbjMyJiN4RDsmI3hBOyYjeDk7JiN4OTt7QTM2RTA3MDUtNzI5Ri00QUZELThERTctRUYyMDVGNUZCQ0VFfS5SZWxlYXNlfFdpbjMyLkFjdGl2ZUNmZyA9IFJlbGVhc2V8V2luMzImI3hEOyYjeEE7JiN4OTsmI3g5O3tBMzZFMDcwNS03MjlGLTRBRkQtOERFNy1FRjIwNUY1RkJDRUV9LlJlbGVhc2V8V2luMzIuQnVpbGQuMCA9IFJlbGVhc2V8V2luMzImI3hEOyYjeEE7JiN4OTtFbmRHbG9iYWxTZWN0aW9uJiN4RDsmI3hBOyYjeDk7R2xvYmFsU2VjdGlvbihTb2x1dGlvblByb3BlcnRpZXMpID0gcHJlU29sdXRpb24mI3hEOyYjeEE7JiN4OTsmI3g5O0hpZGVTb2x1dGlvbk5vZGUgPSBGQUxTRSYjeEQ7JiN4QTsmI3g5O0VuZEdsb2JhbFNlY3Rpb24mI3hEOyYjeEE7RW5kR2xvYmFsJiN4RDsmI3hBOyYjeEQ7JiN4QTsiLz4KKyAgICAgICAgPGZpbGVVcmwgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9InVzZXJfc2RrL21hcHNfc2RrX3ZjMjAwOC5zbG4iPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9maWxlVXJsPgorICAgICAgICA8Y2hhcnNldCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iVVRGLTgiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9jaGFyc2V0PgorICAgICAgPC9ib2R5PgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJtb2RlbCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICA8L210bDpNb2R1bGU+CisgIDxlY29yZTpFUGFja2FnZSBuYW1lPSJhZGRpdGlvbnMiPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU3RyaW5nX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkludGVnZXJfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9JbnRlZ2VyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlJlYWxfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9SZWFsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkVPYmplY3RfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZW5lcmF0ZVJUTWFwc1ZDMjAwOFNvbHV0aW9uU0xOIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhTb2x1dGlvblNMTiIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJtb2RlbCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9jbEFueV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb2xsZWN0aW9uKFQpX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQ29sbGVjdGlvbihUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTZXF1ZW5jZShUKV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1NlcXVlbmNlKFQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9yZGVyZWRTZXQoVClfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PcmRlcmVkU2V0KFQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik1vZGVsX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICA8L2Vjb3JlOkVQYWNrYWdlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8ZWNvcmU6RUFubm90YXRpb24gc291cmNlPSJwb3NpdGlvbnMiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhTb2x1dGlvblNMTiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iODkyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5NTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFNvbHV0aW9uU0xOLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk1OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5NjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFNvbHV0aW9uU0xOLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTYwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5NDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFNvbHV0aW9uU0xOLyUuMS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDE3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExNTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFNvbHV0aW9uU0xOLyUuMS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE2NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhTb2x1dGlvblNMTi8lLjEvJS4xL21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTU0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExNTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4U29sdXRpb25TTE4vJS4xLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE2NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTcwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhTb2x1dGlvblNMTi8lLjEvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTcxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExODEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4U29sdXRpb25TTE4vJS4xLyUuMy9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE3MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTc2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFNvbHV0aW9uU0xOLyUuMS8lLjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExODMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFNvbHV0aW9uU0xOLyUuMS8lLjUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExOTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTIwNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4U29sdXRpb25TTE4vJS4xLyUuNS9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTk5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhTb2x1dGlvblNMTi8lLjEvJS42Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5MzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI3Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhTb2x1dGlvblNMTi8lLjEvJS43Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5NjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhTb2x1dGlvblNMTi8lLjEvJS44Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMDA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEwMTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFNvbHV0aW9uU0xOL21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5NDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iOTU0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyMiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2Vjb3JlOkVBbm5vdGF0aW9uPgorPC94bWk6WE1JPgpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfdmMyMDA4X3NvbHV0aW9uX3Nsbi5tdGwgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc192YzIwMDhfc29sdXRpb25fc2xuLm10bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zODZlZWRkCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfdmMyMDA4X3NvbHV0aW9uX3Nsbi5tdGwKQEAgLTAsMCArMSw0NiBAQAorW2NvbW1lbnQgZW5jb2RpbmcgPSBVVEYtOCAvXQorW2NvbW1lbnRdCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBJTlRFTVBPUkEgUy5BLgorICoKKyAqIFRoaXMgc29mdHdhcmUgaXMgYSBjb21wdXRlciBwcm9ncmFtIHdob3NlIHB1cnBvc2UgaXMgdG8gdHJhbnNmb3JtIFJvYm90TUwgbW9kZWxzCisgKiBpbnRvIFJUTWFwcyBkaWFncmFtcyBhbmQgUlRNYXBzIGNvbXBvbmVudHMgdmlhIHNvdXJjZSBjb2RlIGdlbmVyYXRpb24gdGVjaG5pcXVlcy4KKyAqIAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgTmljb2xhcyBEVSBMQUMgKElOVEVNUE9SQSkgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCitbL2NvbW1lbnRdCitbbW9kdWxlIGdlbmVyYXRlX3J0bWFwc192YzIwMDhfc29sdXRpb25fc2xuKCdodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMy4wLjAvVU1MJywgJ2h0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMScpXQorCisKK1t0ZW1wbGF0ZSBwdWJsaWMgZ2VuZXJhdGVSVE1hcHNWQzIwMDhTb2x1dGlvblNMTihtb2RlbCA6IE1vZGVsKV0KKworW2ZpbGUgKCd1c2VyX3Nkay9tYXBzX3Nka192YzIwMDguc2xuJywgZmFsc2UsICdVVEYtOCcpXQorTWljcm9zb2Z0IFZpc3VhbCBTdHVkaW8gU29sdXRpb24gRmlsZSwgRm9ybWF0IFZlcnNpb24gMTAuMDAKKyMgVmlzdWFsIFN0dWRpbyAyMDA4CitQcm9qZWN0KCJ7OEJDOUNFQjgtOEI0QS0xMUQwLThEMTEtMDBBMEM5MUJDOTQyfSIpID0gIlttb2RlbC5uYW1lL10iLCAiW21vZGVsLm5hbWUvXS51XHJ0bWFwc19bbW9kZWwubmFtZS9dX3ZjMjAwOC52Y3Byb2oiLCAie0EzNkUwNzA1LTcyOUYtNEFGRC04REU3LUVGMjA1RjVGQkNFRX0iCitFbmRQcm9qZWN0CitHbG9iYWwKKwlHbG9iYWxTZWN0aW9uKFNvbHV0aW9uQ29uZmlndXJhdGlvblBsYXRmb3JtcykgPSBwcmVTb2x1dGlvbgorCQlEZWJ1Z3xXaW4zMiA9IERlYnVnfFdpbjMyCisJCVJlbGVhc2V8V2luMzIgPSBSZWxlYXNlfFdpbjMyCisJRW5kR2xvYmFsU2VjdGlvbgorCUdsb2JhbFNlY3Rpb24oUHJvamVjdENvbmZpZ3VyYXRpb25QbGF0Zm9ybXMpID0gcG9zdFNvbHV0aW9uCisJCXtBMzZFMDcwNS03MjlGLTRBRkQtOERFNy1FRjIwNUY1RkJDRUV9LkRlYnVnfFdpbjMyLkFjdGl2ZUNmZyA9IERlYnVnfFdpbjMyCisJCXtBMzZFMDcwNS03MjlGLTRBRkQtOERFNy1FRjIwNUY1RkJDRUV9LkRlYnVnfFdpbjMyLkJ1aWxkLjAgPSBEZWJ1Z3xXaW4zMgorCQl7QTM2RTA3MDUtNzI5Ri00QUZELThERTctRUYyMDVGNUZCQ0VFfS5SZWxlYXNlfFdpbjMyLkFjdGl2ZUNmZyA9IFJlbGVhc2V8V2luMzIKKwkJe0EzNkUwNzA1LTcyOUYtNEFGRC04REU3LUVGMjA1RjVGQkNFRX0uUmVsZWFzZXxXaW4zMi5CdWlsZC4wID0gUmVsZWFzZXxXaW4zMgorCUVuZEdsb2JhbFNlY3Rpb24KKwlHbG9iYWxTZWN0aW9uKFNvbHV0aW9uUHJvcGVydGllcykgPSBwcmVTb2x1dGlvbgorCQlIaWRlU29sdXRpb25Ob2RlID0gRkFMU0UKKwlFbmRHbG9iYWxTZWN0aW9uCitFbmRHbG9iYWwKKworWy9maWxlXQorWy90ZW1wbGF0ZV0KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3ZjMjAxMF9wcm9qZWN0X3ZjeHByb2ouZW10bCBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3ZjMjAxMF9wcm9qZWN0X3ZjeHByb2ouZW10bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iOWYwOThjCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfdmMyMDEwX3Byb2plY3RfdmN4cHJvai5lbXRsCkBAIC0wLDAgKzEsNzgzIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHhtaTpYTUkgeG1pOnZlcnNpb249IjIuMCIgeG1sbnM6eG1pPSJodHRwOi8vd3d3Lm9tZy5vcmcvWE1JIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczplY29yZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSIgeG1sbnM6bXRsPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2FjY2VsZW8vbXRsLzMuMCIgeG1sbnM6b2NsLmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9FY29yZSI+CisgIDxtdGw6TW9kdWxlIG5hbWU9ImdlbmVyYXRlX3J0bWFwc192YzIwMTBfcHJvamVjdF92Y3hwcm9qIiBuc1VSST0ib3JnOjplY2xpcHNlOjpwYXB5cnVzOjpyb2JvdG1sOjpnZW5lcmF0b3JzOjppbnRlbXBvcmE6OnJ0bWFwczo6ZmlsZXM6OmdlbmVyYXRlX3J0bWFwc192YzIwMTBfcHJvamVjdF92Y3hwcm9qIiBzdGFydEhlYWRlclBvc2l0aW9uPSI3NzMiIGVuZEhlYWRlclBvc2l0aW9uPSI5NzkiPgorICAgIDxpbnB1dD4KKyAgICAgIDx0YWtlc1R5cGVzRnJvbSBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8iLz4KKyAgICA8L2lucHV0PgorICAgIDxpbnB1dD4KKyAgICAgIDx0YWtlc1R5cGVzRnJvbSBocmVmPSJodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEjLyIvPgorICAgIDwvaW5wdXQ+CisgICAgPGltcG9ydHMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9HZW5lcmFsUXVlcmllcy5lbXRsIy8wIi8+CisgICAgPGltcG9ydHMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAiLz4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6VGVtcGxhdGUiIG5hbWU9ImdlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0oiIHZpc2liaWxpdHk9IlB1YmxpYyI+CisgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyIvPgorICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpGaWxlQmxvY2siIG9wZW5Nb2RlPSJPdmVyV3JpdGUiPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJmx0Oz94bWwgdmVyc2lvbj0mcXVvdDsxLjAmcXVvdDsgZW5jb2Rpbmc9JnF1b3Q7dXRmLTgmcXVvdDs/PiYjeEQ7JiN4QTsmbHQ7UHJvamVjdCBEZWZhdWx0VGFyZ2V0cz0mcXVvdDtCdWlsZCZxdW90OyBUb29sc1ZlcnNpb249JnF1b3Q7NC4wJnF1b3Q7IHhtbG5zPSZxdW90O2h0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vZGV2ZWxvcGVyL21zYnVpbGQvMjAwMyZxdW90Oz4mI3hEOyYjeEE7ICAmbHQ7SXRlbUdyb3VwIExhYmVsPSZxdW90O1Byb2plY3RDb25maWd1cmF0aW9ucyZxdW90Oz4mI3hEOyYjeEE7ICAgICZsdDtQcm9qZWN0Q29uZmlndXJhdGlvbiBJbmNsdWRlPSZxdW90O0RlYnVnfFdpbjMyJnF1b3Q7PiYjeEQ7JiN4QTsgICAgICAmbHQ7Q29uZmlndXJhdGlvbj5EZWJ1ZyZsdDsvQ29uZmlndXJhdGlvbj4mI3hEOyYjeEE7ICAgICAgJmx0O1BsYXRmb3JtPldpbjMyJmx0Oy9QbGF0Zm9ybT4mI3hEOyYjeEE7ICAgICZsdDsvUHJvamVjdENvbmZpZ3VyYXRpb24+JiN4RDsmI3hBOyAgICAmbHQ7UHJvamVjdENvbmZpZ3VyYXRpb24gSW5jbHVkZT0mcXVvdDtSZWxlYXNlfFdpbjMyJnF1b3Q7PiYjeEQ7JiN4QTsgICAgICAmbHQ7Q29uZmlndXJhdGlvbj5SZWxlYXNlJmx0Oy9Db25maWd1cmF0aW9uPiYjeEQ7JiN4QTsgICAgICAmbHQ7UGxhdGZvcm0+V2luMzImbHQ7L1BsYXRmb3JtPiYjeEQ7JiN4QTsgICAgJmx0Oy9Qcm9qZWN0Q29uZmlndXJhdGlvbj4mI3hEOyYjeEE7ICAmbHQ7L0l0ZW1Hcm91cD4mI3hEOyYjeEE7ICAmbHQ7UHJvcGVydHlHcm91cCBMYWJlbD0mcXVvdDtHbG9iYWxzJnF1b3Q7PiYjeEQ7JiN4QTsgICAgJmx0O1Byb2plY3ROYW1lPnJ0bWFwc18iLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KL21vZGVsIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiZsdDsvUHJvamVjdE5hbWU+JiN4RDsmI3hBOyAgICAmbHQ7UHJvamVjdEd1aWQ+e0EzNkUwNzA1LTcyOUYtNEFGRC04REU3LUVGMjA1RjVGQkNFRX0mbHQ7L1Byb2plY3RHdWlkPiYjeEQ7JiN4QTsgICAgJmx0O1Jvb3ROYW1lc3BhY2U+cnRtYXBzXyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJmx0Oy9Sb290TmFtZXNwYWNlPiYjeEQ7JiN4QTsgICAgJmx0O1NjY0xvY2FsUGF0aD4uJmx0Oy9TY2NMb2NhbFBhdGg+JiN4RDsmI3hBOyAgJmx0Oy9Qcm9wZXJ0eUdyb3VwPiYjeEQ7JiN4QTsgICZsdDtJbXBvcnQgUHJvamVjdD0mcXVvdDskKFZDVGFyZ2V0c1BhdGgpXE1pY3Jvc29mdC5DcHAuRGVmYXVsdC5wcm9wcyZxdW90OyAvPiYjeEQ7JiN4QTsgICZsdDtQcm9wZXJ0eUdyb3VwIENvbmRpdGlvbj0mcXVvdDsnJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMicmcXVvdDsgTGFiZWw9JnF1b3Q7Q29uZmlndXJhdGlvbiZxdW90Oz4mI3hEOyYjeEE7ICAgICZsdDtDb25maWd1cmF0aW9uVHlwZT5EeW5hbWljTGlicmFyeSZsdDsvQ29uZmlndXJhdGlvblR5cGU+JiN4RDsmI3hBOyAgICAmbHQ7VXNlT2ZNZmM+ZmFsc2UmbHQ7L1VzZU9mTWZjPiYjeEQ7JiN4QTsgICAgJmx0O0NoYXJhY3RlclNldD5NdWx0aUJ5dGUmbHQ7L0NoYXJhY3RlclNldD4mI3hEOyYjeEE7ICAmbHQ7L1Byb3BlcnR5R3JvdXA+JiN4RDsmI3hBOyAgJmx0O1Byb3BlcnR5R3JvdXAgQ29uZGl0aW9uPSZxdW90OyckKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2luMzInJnF1b3Q7IExhYmVsPSZxdW90O0NvbmZpZ3VyYXRpb24mcXVvdDs+JiN4RDsmI3hBOyAgICAmbHQ7Q29uZmlndXJhdGlvblR5cGU+RHluYW1pY0xpYnJhcnkmbHQ7L0NvbmZpZ3VyYXRpb25UeXBlPiYjeEQ7JiN4QTsgICAgJmx0O1VzZU9mTWZjPmZhbHNlJmx0Oy9Vc2VPZk1mYz4mI3hEOyYjeEE7ICAgICZsdDtDaGFyYWN0ZXJTZXQ+TXVsdGlCeXRlJmx0Oy9DaGFyYWN0ZXJTZXQ+JiN4RDsmI3hBOyAgJmx0Oy9Qcm9wZXJ0eUdyb3VwPiYjeEQ7JiN4QTsgICZsdDtJbXBvcnQgUHJvamVjdD0mcXVvdDskKFZDVGFyZ2V0c1BhdGgpXE1pY3Jvc29mdC5DcHAucHJvcHMmcXVvdDsgLz4mI3hEOyYjeEE7ICAmbHQ7SW1wb3J0R3JvdXAgTGFiZWw9JnF1b3Q7RXh0ZW5zaW9uU2V0dGluZ3MmcXVvdDs+JiN4RDsmI3hBOyAgJmx0Oy9JbXBvcnRHcm91cD4mI3hEOyYjeEE7ICAmbHQ7SW1wb3J0R3JvdXAgQ29uZGl0aW9uPSZxdW90OyckKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyZxdW90OyBMYWJlbD0mcXVvdDtQcm9wZXJ0eVNoZWV0cyZxdW90Oz4mI3hEOyYjeEE7ICAgICZsdDtJbXBvcnQgUHJvamVjdD0mcXVvdDskKFVzZXJSb290RGlyKVxNaWNyb3NvZnQuQ3BwLiQoUGxhdGZvcm0pLnVzZXIucHJvcHMmcXVvdDsgQ29uZGl0aW9uPSZxdW90O2V4aXN0cygnJChVc2VyUm9vdERpcilcTWljcm9zb2Z0LkNwcC4kKFBsYXRmb3JtKS51c2VyLnByb3BzJykmcXVvdDsgTGFiZWw9JnF1b3Q7TG9jYWxBcHBEYXRhUGxhdGZvcm0mcXVvdDsgLz4mI3hEOyYjeEE7ICAgICZsdDtJbXBvcnQgUHJvamVjdD0mcXVvdDskKFJUTUFQU19TREtESVIpXHRlbXBsYXRlcy51XFJUTWFwc194ODZfRGVidWdfdmMyMDEwLnByb3BzJnF1b3Q7IC8+JiN4RDsmI3hBOyAgJmx0Oy9JbXBvcnRHcm91cD4mI3hEOyYjeEE7ICAmbHQ7SW1wb3J0R3JvdXAgQ29uZGl0aW9uPSZxdW90OyckKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2luMzInJnF1b3Q7IExhYmVsPSZxdW90O1Byb3BlcnR5U2hlZXRzJnF1b3Q7PiYjeEQ7JiN4QTsgICAgJmx0O0ltcG9ydCBQcm9qZWN0PSZxdW90OyQoVXNlclJvb3REaXIpXE1pY3Jvc29mdC5DcHAuJChQbGF0Zm9ybSkudXNlci5wcm9wcyZxdW90OyBDb25kaXRpb249JnF1b3Q7ZXhpc3RzKCckKFVzZXJSb290RGlyKVxNaWNyb3NvZnQuQ3BwLiQoUGxhdGZvcm0pLnVzZXIucHJvcHMnKSZxdW90OyBMYWJlbD0mcXVvdDtMb2NhbEFwcERhdGFQbGF0Zm9ybSZxdW90OyAvPiYjeEQ7JiN4QTsgICAgJmx0O0ltcG9ydCBQcm9qZWN0PSZxdW90OyQoUlRNQVBTX1NES0RJUilcdGVtcGxhdGVzLnVcUlRNYXBzX3g4Nl9SZWxlYXNlX3ZjMjAxMC5wcm9wcyZxdW90OyAvPiYjeEQ7JiN4QTsgICZsdDsvSW1wb3J0R3JvdXA+JiN4RDsmI3hBOyAgJmx0O1Byb3BlcnR5R3JvdXAgTGFiZWw9JnF1b3Q7VXNlck1hY3JvcyZxdW90OyAvPiYjeEQ7JiN4QTsgICZsdDtQcm9wZXJ0eUdyb3VwPiYjeEQ7JiN4QTsgICAgJmx0O19Qcm9qZWN0RmlsZVZlcnNpb24+MTAuMC4zMDMxOS4xJmx0Oy9fUHJvamVjdEZpbGVWZXJzaW9uPiYjeEQ7JiN4QTsgICZsdDsvUHJvcGVydHlHcm91cD4mI3hEOyYjeEE7ICAmbHQ7SXRlbURlZmluaXRpb25Hcm91cCBDb25kaXRpb249JnF1b3Q7JyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMicmcXVvdDs+JiN4RDsmI3hBOyZsdDshLS0gIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6UHJvdGVjdGVkQXJlYUJsb2NrIj4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iICYjeEQ7JiN4QTstLT4mI3hEOyYjeEE7ICAgICZsdDtMaW5rPiYjeEQ7JiN4QTsgICAgICAmbHQ7RGF0YUV4ZWN1dGlvblByZXZlbnRpb24+JiN4RDsmI3hBOyAgICAgICZsdDsvRGF0YUV4ZWN1dGlvblByZXZlbnRpb24+JiN4RDsmI3hBOyAgICAgICZsdDtBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPm1zdmNwcnQubGliOyUoQWRkaXRpb25hbERlcGVuZGVuY2llcykmbHQ7L0FkZGl0aW9uYWxEZXBlbmRlbmNpZXM+JiN4RDsmI3hBOyAgICAmbHQ7L0xpbms+JiN4RDsmI3hBOyZsdDshLS0gIi8+CisgICAgICAgICAgPG1hcmtlciB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iQWRkaXRpb25hbCBsaWJzIC0gUmVsZWFzZSBXaW4zMiI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPC9tYXJrZXI+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiAmI3hEOyYjeEE7LS0+JiN4RDsmI3hBOyZsdDshLS0gIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6UHJvdGVjdGVkQXJlYUJsb2NrIj4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iICYjeEQ7JiN4QTstLT4mI3hEOyYjeEE7ICAgICZsdDtDbENvbXBpbGU+JiN4RDsmI3hBOyAgICAgICZsdDtBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPi4uXGluY2x1ZGU7JShBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzKSZsdDsvQWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcz4mI3hEOyYjeEE7ICAgICZsdDsvQ2xDb21waWxlPiYjeEQ7JiN4QTsmbHQ7IS0tICIvPgorICAgICAgICAgIDxtYXJrZXIgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IkFkZGl0aW9uYWwgaW5jbHVkZXMgLSBSZWxlYXNlIFdpbjMyIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8L21hcmtlcj4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iICYjeEQ7JiN4QTstLT4mI3hEOyYjeEE7ICAmbHQ7L0l0ZW1EZWZpbml0aW9uR3JvdXA+JiN4RDsmI3hBOyAgJmx0O0l0ZW1EZWZpbml0aW9uR3JvdXAgQ29uZGl0aW9uPSZxdW90OyckKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyZxdW90Oz4mI3hEOyYjeEE7Jmx0OyEtLSAiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpQcm90ZWN0ZWRBcmVhQmxvY2siPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIgJiN4RDsmI3hBOy0tPiYjeEQ7JiN4QTsgICAgJmx0O0xpbms+JiN4RDsmI3hBOyAgICAgICZsdDtEYXRhRXhlY3V0aW9uUHJldmVudGlvbj4mI3hEOyYjeEE7ICAgICAgJmx0Oy9EYXRhRXhlY3V0aW9uUHJldmVudGlvbj4mI3hEOyYjeEE7ICAgICAgJmx0O0FkZGl0aW9uYWxEZXBlbmRlbmNpZXM+bXN2Y3BydC5saWI7JShBZGRpdGlvbmFsRGVwZW5kZW5jaWVzKSZsdDsvQWRkaXRpb25hbERlcGVuZGVuY2llcz4mI3hEOyYjeEE7ICAgICZsdDsvTGluaz4mI3hEOyYjeEE7Jmx0OyEtLSAiLz4KKyAgICAgICAgICA8bWFya2VyIHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJBZGRpdGlvbmFsIGxpYnMgLSBEZWJ1ZyBXaW4zMiI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPC9tYXJrZXI+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiAmI3hEOyYjeEE7LS0+JiN4RDsmI3hBOyZsdDshLS0gIi8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6UHJvdGVjdGVkQXJlYUJsb2NrIj4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iICYjeEQ7JiN4QTstLT4mI3hEOyYjeEE7ICAgICZsdDtDbENvbXBpbGU+JiN4RDsmI3hBOyAgICAgICZsdDtBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPi4uXGluY2x1ZGU7JShBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzKSZsdDsvQWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcz4mI3hEOyYjeEE7ICAgICZsdDsvQ2xDb21waWxlPiYjeEQ7JiN4QTsmbHQ7IS0tICIvPgorICAgICAgICAgIDxtYXJrZXIgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IkFkZGl0aW9uYWwgaW5jbHVkZXMgLSBEZWJ1ZyBXaW4zMiI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPC9tYXJrZXI+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiAmI3hEOyYjeEE7LS0+JiN4RDsmI3hBOyAgJmx0Oy9JdGVtRGVmaW5pdGlvbkdyb3VwPiYjeEQ7JiN4QTsgICZsdDtJdGVtR3JvdXAgTGFiZWw9JnF1b3Q7UlRNYXBzX3NvdXJjZXMmcXVvdDs+JiN4RDsmI3hBOyAgICAmbHQ7Tm9uZSBJbmNsdWRlPSZxdW90O3J0bWFwc18iLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KL21vZGVsIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii5wY2tpbmZvJnF1b3Q7IC8+JiN4RDsmI3hBOyAgJmx0Oy9JdGVtR3JvdXA+JiN4RDsmI3hBOyAgJmx0O0l0ZW1Hcm91cCBMYWJlbD0mcXVvdDtSVE1hcHNfaGVhZGVycyZxdW90Oz4mI3hEOyYjeEE7Ii8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6Rm9yQmxvY2siPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6SWZCbG9jayI+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4OTsmI3g5OyYjeDk7Jmx0O0NsQ29tcGlsZSBJbmNsdWRlPSZxdW90O3NyY1xtYXBzXyIvPgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZWx0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjE1L2VsdCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIuY3BwJnF1b3Q7Lz4mI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICA8aWZFeHByIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvaXNNYWNyb0NvbXBvbmVudCIvPgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJlbHQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuMTUvZWx0Ij4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VHlwZUV4cCIgZVR5cGU9Ii8xOC9DbGFzcyI+CisgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55X0NsYXNzL29jbEFzVHlwZSIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpCb29sZWFuTGl0ZXJhbEV4cCIgYm9vbGVhblN5bWJvbD0iZmFsc2UiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW5fQ2xhc3MvPSIvPgorICAgICAgICAgICAgPC9pZkV4cHI+CisgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgIDxsb29wVmFyaWFibGUgbmFtZT0iZWx0Ij4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgICAgICAgICAgPC9sb29wVmFyaWFibGU+CisgICAgICAgICAgPGl0ZXJTZXQgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iIGVUeXBlPSIvMTUvU2VxdWVuY2UoTmFtZWRFbGVtZW50KSI+CisgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRDb21wb25lbnRNb2RlbHMiLz4KKyAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJtb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi9tb2RlbCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgPC9pdGVyU2V0PgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIgICZsdDsvSXRlbUdyb3VwPiYjeEQ7JiN4QTsgICZsdDtJdGVtR3JvdXA+JiN4RDsmI3hBOyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZvckJsb2NrIj4KKyAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOklmQmxvY2siPgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeDk7JiN4OTsmI3g5OyZsdDtDbEluY2x1ZGUgSW5jbHVkZT0mcXVvdDtsb2NhbF9pbnRlcmZhY2VzXG1hcHNfIi8+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJlbHQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuMTcvZWx0Ij4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii5oJnF1b3Q7Lz4mI3hEOyYjeEE7Ii8+CisgICAgICAgICAgICA8aWZFeHByIHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvaXNNYWNyb0NvbXBvbmVudCIvPgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJlbHQiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuMTcvZWx0Ij4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VHlwZUV4cCIgZVR5cGU9Ii8xOC9DbGFzcyI+CisgICAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55X0NsYXNzL29jbEFzVHlwZSIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpCb29sZWFuTGl0ZXJhbEV4cCIgYm9vbGVhblN5bWJvbD0iZmFsc2UiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW5fQ2xhc3MvPSIvPgorICAgICAgICAgICAgPC9pZkV4cHI+CisgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgIDxsb29wVmFyaWFibGUgbmFtZT0iZWx0Ij4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgICAgICAgICAgPC9sb29wVmFyaWFibGU+CisgICAgICAgICAgPGl0ZXJTZXQgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iIGVUeXBlPSIvMTUvU2VxdWVuY2UoTmFtZWRFbGVtZW50KSI+CisgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRDb21wb25lbnRNb2RlbHMiLz4KKyAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJtb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi9tb2RlbCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgPC9pdGVyU2V0PgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIgICZsdDsvSXRlbUdyb3VwPiYjeEQ7JiN4QTsgICZsdDtJbXBvcnQgUHJvamVjdD0mcXVvdDskKFZDVGFyZ2V0c1BhdGgpXE1pY3Jvc29mdC5DcHAudGFyZ2V0cyZxdW90OyAvPiYjeEQ7JiN4QTsgICZsdDtJbXBvcnRHcm91cCBMYWJlbD0mcXVvdDtFeHRlbnNpb25UYXJnZXRzJnF1b3Q7PiYjeEQ7JiN4QTsgICZsdDsvSW1wb3J0R3JvdXA+JiN4RDsmI3hBOyZsdDsvUHJvamVjdD4mI3hEOyYjeEE7JiN4RDsmI3hBOyIvPgorICAgICAgICA8ZmlsZVVybCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvU3RyaW5nX0NsYXNzLysiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9InVzZXJfc2RrLyI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovbW9kZWwiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIudS9ydG1hcHNfIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJtb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi9tb2RlbCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il92YzIwMTAudmN4cHJvaiI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPC9maWxlVXJsPgorICAgICAgICA8Y2hhcnNldCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iVVRGLTgiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPC9jaGFyc2V0PgorICAgICAgPC9ib2R5PgorICAgICAgPHBhcmFtZXRlciBuYW1lPSJtb2RlbCI+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgIDwvcGFyYW1ldGVyPgorICAgIDwvb3duZWRNb2R1bGVFbGVtZW50PgorICA8L210bDpNb2R1bGU+CisgIDxlY29yZTpFUGFja2FnZSBuYW1lPSJhZGRpdGlvbnMiPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU3RyaW5nX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSIrIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCBub24tc3RhbmRhcmQiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ib3RoZXIiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOkFueVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJJbnRlZ2VyX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJSZWFsX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvUmVhbCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFT2JqZWN0X0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU9iamVjdCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0oiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibW9kZWwiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0Q29tcG9uZW50TW9kZWxzIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0Q29tcG9uZW50TW9kZWxzIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8zL1NlcXVlbmNlKE5hbWVkRWxlbWVudCkiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im1vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzTWFjcm9Db21wb25lbnQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9pc01hY3JvQ29tcG9uZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY2xhc3MiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPY2xBbnlfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ29sbGVjdGlvbihUKV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0NvbGxlY3Rpb24oVCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU2VxdWVuY2UoVClfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TZXF1ZW5jZShUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPcmRlcmVkU2V0KFQpX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT3JkZXJlZFNldChUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJNb2RlbF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNsYXNzX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRWxlbWVudF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUHJvcGVydHlfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb25uZWN0b3JfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUGFyYW1ldGVyX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUGFyYW1ldGVyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNsYXNzaWZpZXJfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzc2lmaWVyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlBvcnRfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgPC9lY29yZTpFUGFja2FnZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxlY29yZTpFUGFja2FnZSBuYW1lPSJjb2xsZWN0aW9ucyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgbmFtZT0iU2VxdWVuY2UoTmFtZWRFbGVtZW50KSIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEudXRpbC5MaXN0Ij4KKyAgICAgIDxlbGVtZW50VHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgIDwvZWNvcmU6RVBhY2thZ2U+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPGVjb3JlOkVQYWNrYWdlIG5hbWU9InR5cGVzIj4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJvY2wuZWNvcmU6VHlwZVR5cGUiIG5hbWU9IkNsYXNzIj4KKyAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgIDwvZWNvcmU6RVBhY2thZ2U+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJpIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0iaSI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8ZWNvcmU6RUFubm90YXRpb24gc291cmNlPSJwb3NpdGlvbnMiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTA4MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NjE2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExNTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI1Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE1MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NjAzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lLjEvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTI0OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxODQwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lLjEvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxODQxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4NTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuMS9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTg0MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxODQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4NTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTk2NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTk2NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTc3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjMvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE5NjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTk3MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lLjEvJS40Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTc5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM3NTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lLjEvJS41Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNzUyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQwMTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjcyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lLjEvJS41LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM3OTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzk5OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNzIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNzY0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM3OTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQwMTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDAyMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNzkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQwMjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDI0NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iODEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjcvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDA3NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MjMzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI4MSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuNy8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQwMzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDA3MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuOCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDI0NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0MzY3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI4NiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuOSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDM2NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NjIzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI5MCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuOS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0NDEyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ2MTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjkwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lLjEvJS45LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDM3OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NDEwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lLjEvJS4xMCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDYyMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NjM2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI5NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuMTEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ2MzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDg1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iOTkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjExLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjQ2ODUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNDg0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iOTkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjExLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDY0OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0NjgzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lLjEvJS4xMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNDg1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI0OTU0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMDQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjEzIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0OTU1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ5NjUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjEzL21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0OTU1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjQ5NjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjE0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI0OTY3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUwMzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEwOCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuMTUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUwMzYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTIxNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTExIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lLjEvJS4xNS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MDkzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUyMDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjExMiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuMTUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MTQ4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUxODAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjExMyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuMTUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUxODEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTE4OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuMTUvJS8lLjEvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MTgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUxODQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjE1LyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MTkxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUyMDAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjExMyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuMTUvJS8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUwOTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTE0NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuMTUvJS8lLjMvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTA5OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MTM2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lLjEvJS4xNS8lLyUuMy8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUxMTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTEzNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuMTUvJS8lLjMvJS8lL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTExNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MTE4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lLjEvJS4xNS8lLyUuMy8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTEyOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MTM0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lLjEvJS4xNS8lLyUuMy8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUxMzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTE0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuMTUvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MDQyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUwNTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjExMSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuMTUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MDYyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUwODciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjE1LyUuMS9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTA4MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MDg2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lLjEvJS4xNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTIxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MjQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMTYiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjE3Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MjUwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU0NDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjExOCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuMTcvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTMwNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NDMyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMTkiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjE3LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTM2MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NDA3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjE3LyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NDA4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU0MTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjE3LyUvJS4xL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTQwOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NDExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lLjEvJS4xNy8lLyUuMiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTQxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NDI1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjE3LyUvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MzExIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUzNTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjE3LyUvJS4zLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUzMTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTM1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuMTcvJS8lLjMvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MzI5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUzNDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjE3LyUvJS4zLyUvJS9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUzMjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTMzMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuMTcvJS8lLjMvJS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUzNDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTM0OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuMTcvJS8lLjMvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MzUzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUzNTgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjE3L2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTI1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MjczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMTgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjE3LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTI3NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MzAxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lLjEvJS4xNy8lLjEvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUyOTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTMwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuMTgiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU0NDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTU5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTIzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lLjEvJS4xOSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE1OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjI5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lLjEvJS4xOS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTU4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEyMDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjYzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjE5LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE1OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lLjEvJS4xOS8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE1OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lLjEvJS4xOS8lLyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTU4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExNjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjY2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KLyUuMS8lLjE5LyUvJS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE3MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42NyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lLjEvJS4xOS8lLyUvJS8lLjEvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE3NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuMTkvJS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE4NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lLjEvJS4xOS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE5OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjA5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lLjEvJS4xOS8lLyUuMS9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE5OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjA0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSi8lLjEvJS4xOS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEyMTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTIyOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovJS4xLyUuMjAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEyMzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTI0NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0ovbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExMzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE0NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lY29yZTpFQW5ub3RhdGlvbj4KKzwveG1pOlhNST4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3ZjMjAxMF9wcm9qZWN0X3ZjeHByb2oubXRsIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfdmMyMDEwX3Byb2plY3RfdmN4cHJvai5tdGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2Q3NWNlYwotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3ZjMjAxMF9wcm9qZWN0X3ZjeHByb2oubXRsCkBAIC0wLDAgKzEsMTMwIEBACitbY29tbWVudCBlbmNvZGluZyA9IFVURi04IC9dCitbY29tbWVudF0KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIElOVEVNUE9SQSBTLkEuCisgKgorICogVGhpcyBzb2Z0d2FyZSBpcyBhIGNvbXB1dGVyIHByb2dyYW0gd2hvc2UgcHVycG9zZSBpcyB0byB0cmFuc2Zvcm0gUm9ib3RNTCBtb2RlbHMKKyAqIGludG8gUlRNYXBzIGRpYWdyYW1zIGFuZCBSVE1hcHMgY29tcG9uZW50cyB2aWEgc291cmNlIGNvZGUgZ2VuZXJhdGlvbiB0ZWNobmlxdWVzLgorICogCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBOaWNvbGFzIERVIExBQyAoSU5URU1QT1JBKSAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK1svY29tbWVudF0KK1ttb2R1bGUgZ2VuZXJhdGVfcnRtYXBzX3ZjMjAxMF9wcm9qZWN0X3ZjeHByb2ooJ2h0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8zLjAuMC9VTUwnLCAnaHR0cDovL1BhcHlydXMvUm9ib3RNTC8xJyldCisKK1tpbXBvcnQgb3JnOjplY2xpcHNlOjpwYXB5cnVzOjpyb2JvdG1sOjpnZW5lcmF0b3JzOjpjb21tb246Om1tcXVlcmllczo6R2VuZXJhbFF1ZXJpZXMgL10KK1tpbXBvcnQgb3JnOjplY2xpcHNlOjpwYXB5cnVzOjpyb2JvdG1sOjpnZW5lcmF0b3JzOjpjb21tb246Om1tcXVlcmllczo6QXJjaGl0ZWN0dXJlUXVlcmllcyAvXQorCitbdGVtcGxhdGUgcHVibGljIGdlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0oobW9kZWwgOiBNb2RlbCldCisKK1tmaWxlICgndXNlcl9zZGsvJysgbW9kZWwubmFtZSArICcudS9ydG1hcHNfJyArIG1vZGVsLm5hbWUgKyAnX3ZjMjAxMC52Y3hwcm9qJywgZmFsc2UsICdVVEYtOCcpXQorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KKzxQcm9qZWN0IERlZmF1bHRUYXJnZXRzPSJCdWlsZCIgVG9vbHNWZXJzaW9uPSI0LjAiIHhtbG5zPSJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL2RldmVsb3Blci9tc2J1aWxkLzIwMDMiPgorICA8SXRlbUdyb3VwIExhYmVsPSJQcm9qZWN0Q29uZmlndXJhdGlvbnMiPgorICAgIDxQcm9qZWN0Q29uZmlndXJhdGlvbiBJbmNsdWRlPSJEZWJ1Z3xXaW4zMiI+CisgICAgICA8Q29uZmlndXJhdGlvbj5EZWJ1ZzwvQ29uZmlndXJhdGlvbj4KKyAgICAgIDxQbGF0Zm9ybT5XaW4zMjwvUGxhdGZvcm0+CisgICAgPC9Qcm9qZWN0Q29uZmlndXJhdGlvbj4KKyAgICA8UHJvamVjdENvbmZpZ3VyYXRpb24gSW5jbHVkZT0iUmVsZWFzZXxXaW4zMiI+CisgICAgICA8Q29uZmlndXJhdGlvbj5SZWxlYXNlPC9Db25maWd1cmF0aW9uPgorICAgICAgPFBsYXRmb3JtPldpbjMyPC9QbGF0Zm9ybT4KKyAgICA8L1Byb2plY3RDb25maWd1cmF0aW9uPgorICA8L0l0ZW1Hcm91cD4KKyAgPFByb3BlcnR5R3JvdXAgTGFiZWw9Ikdsb2JhbHMiPgorICAgIDxQcm9qZWN0TmFtZT5ydG1hcHNfW21vZGVsLm5hbWUvXTwvUHJvamVjdE5hbWU+CisgICAgPFByb2plY3RHdWlkPntBMzZFMDcwNS03MjlGLTRBRkQtOERFNy1FRjIwNUY1RkJDRUV9PC9Qcm9qZWN0R3VpZD4KKyAgICA8Um9vdE5hbWVzcGFjZT5ydG1hcHNfW21vZGVsLm5hbWUvXTwvUm9vdE5hbWVzcGFjZT4KKyAgICA8U2NjTG9jYWxQYXRoPi48L1NjY0xvY2FsUGF0aD4KKyAgPC9Qcm9wZXJ0eUdyb3VwPgorICA8SW1wb3J0IFByb2plY3Q9IiQoVkNUYXJnZXRzUGF0aClcTWljcm9zb2Z0LkNwcC5EZWZhdWx0LnByb3BzIiAvPgorICA8UHJvcGVydHlHcm91cCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyIgTGFiZWw9IkNvbmZpZ3VyYXRpb24iPgorICAgIDxDb25maWd1cmF0aW9uVHlwZT5EeW5hbWljTGlicmFyeTwvQ29uZmlndXJhdGlvblR5cGU+CisgICAgPFVzZU9mTWZjPmZhbHNlPC9Vc2VPZk1mYz4KKyAgICA8Q2hhcmFjdGVyU2V0Pk11bHRpQnl0ZTwvQ2hhcmFjdGVyU2V0PgorICA8L1Byb3BlcnR5R3JvdXA+CisgIDxQcm9wZXJ0eUdyb3VwIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciIExhYmVsPSJDb25maWd1cmF0aW9uIj4KKyAgICA8Q29uZmlndXJhdGlvblR5cGU+RHluYW1pY0xpYnJhcnk8L0NvbmZpZ3VyYXRpb25UeXBlPgorICAgIDxVc2VPZk1mYz5mYWxzZTwvVXNlT2ZNZmM+CisgICAgPENoYXJhY3RlclNldD5NdWx0aUJ5dGU8L0NoYXJhY3RlclNldD4KKyAgPC9Qcm9wZXJ0eUdyb3VwPgorICA8SW1wb3J0IFByb2plY3Q9IiQoVkNUYXJnZXRzUGF0aClcTWljcm9zb2Z0LkNwcC5wcm9wcyIgLz4KKyAgPEltcG9ydEdyb3VwIExhYmVsPSJFeHRlbnNpb25TZXR0aW5ncyI+CisgIDwvSW1wb3J0R3JvdXA+CisgIDxJbXBvcnRHcm91cCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyIgTGFiZWw9IlByb3BlcnR5U2hlZXRzIj4KKyAgICA8SW1wb3J0IFByb2plY3Q9IiQoVXNlclJvb3REaXIpXE1pY3Jvc29mdC5DcHAuJChQbGF0Zm9ybSkudXNlci5wcm9wcyIgQ29uZGl0aW9uPSJleGlzdHMoJyQoVXNlclJvb3REaXIpXE1pY3Jvc29mdC5DcHAuJChQbGF0Zm9ybSkudXNlci5wcm9wcycpIiBMYWJlbD0iTG9jYWxBcHBEYXRhUGxhdGZvcm0iIC8+CisgICAgPEltcG9ydCBQcm9qZWN0PSIkKFJUTUFQU19TREtESVIpXHRlbXBsYXRlcy51XFJUTWFwc194ODZfRGVidWdfdmMyMDEwLnByb3BzIiAvPgorICA8L0ltcG9ydEdyb3VwPgorICA8SW1wb3J0R3JvdXAgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfFdpbjMyJyIgTGFiZWw9IlByb3BlcnR5U2hlZXRzIj4KKyAgICA8SW1wb3J0IFByb2plY3Q9IiQoVXNlclJvb3REaXIpXE1pY3Jvc29mdC5DcHAuJChQbGF0Zm9ybSkudXNlci5wcm9wcyIgQ29uZGl0aW9uPSJleGlzdHMoJyQoVXNlclJvb3REaXIpXE1pY3Jvc29mdC5DcHAuJChQbGF0Zm9ybSkudXNlci5wcm9wcycpIiBMYWJlbD0iTG9jYWxBcHBEYXRhUGxhdGZvcm0iIC8+CisgICAgPEltcG9ydCBQcm9qZWN0PSIkKFJUTUFQU19TREtESVIpXHRlbXBsYXRlcy51XFJUTWFwc194ODZfUmVsZWFzZV92YzIwMTAucHJvcHMiIC8+CisgIDwvSW1wb3J0R3JvdXA+CisgIDxQcm9wZXJ0eUdyb3VwIExhYmVsPSJVc2VyTWFjcm9zIiAvPgorICA8UHJvcGVydHlHcm91cD4KKyAgICA8X1Byb2plY3RGaWxlVmVyc2lvbj4xMC4wLjMwMzE5LjE8L19Qcm9qZWN0RmlsZVZlcnNpb24+CisgIDwvUHJvcGVydHlHcm91cD4KKyAgPEl0ZW1EZWZpbml0aW9uR3JvdXAgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfFdpbjMyJyI+Cis8IS0tIFtwcm90ZWN0ZWQgKCdBZGRpdGlvbmFsIGxpYnMgLSBSZWxlYXNlIFdpbjMyJyldIAorLS0+CisgICAgPExpbms+CisgICAgICA8RGF0YUV4ZWN1dGlvblByZXZlbnRpb24+CisgICAgICA8L0RhdGFFeGVjdXRpb25QcmV2ZW50aW9uPgorICAgICAgPEFkZGl0aW9uYWxEZXBlbmRlbmNpZXM+bXN2Y3BydC5saWI7JShBZGRpdGlvbmFsRGVwZW5kZW5jaWVzKTwvQWRkaXRpb25hbERlcGVuZGVuY2llcz4KKyAgICA8L0xpbms+Cis8IS0tIFsvcHJvdGVjdGVkXSAKKy0tPgorPCEtLSBbcHJvdGVjdGVkICgnQWRkaXRpb25hbCBpbmNsdWRlcyAtIFJlbGVhc2UgV2luMzInKV0gCistLT4KKyAgICA8Q2xDb21waWxlPgorICAgICAgPEFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM+Li5caW5jbHVkZTslKEFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXMpPC9BZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPgorICAgIDwvQ2xDb21waWxlPgorPCEtLSBbL3Byb3RlY3RlZF0gCistLT4KKyAgPC9JdGVtRGVmaW5pdGlvbkdyb3VwPgorICA8SXRlbURlZmluaXRpb25Hcm91cCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+Cis8IS0tIFtwcm90ZWN0ZWQgKCdBZGRpdGlvbmFsIGxpYnMgLSBEZWJ1ZyBXaW4zMicpXSAKKy0tPgorICAgIDxMaW5rPgorICAgICAgPERhdGFFeGVjdXRpb25QcmV2ZW50aW9uPgorICAgICAgPC9EYXRhRXhlY3V0aW9uUHJldmVudGlvbj4KKyAgICAgIDxBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPm1zdmNwcnQubGliOyUoQWRkaXRpb25hbERlcGVuZGVuY2llcyk8L0FkZGl0aW9uYWxEZXBlbmRlbmNpZXM+CisgICAgPC9MaW5rPgorPCEtLSBbL3Byb3RlY3RlZF0gCistLT4KKzwhLS0gW3Byb3RlY3RlZCAoJ0FkZGl0aW9uYWwgaW5jbHVkZXMgLSBEZWJ1ZyBXaW4zMicpXSAKKy0tPgorICAgIDxDbENvbXBpbGU+CisgICAgICA8QWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcz4uLlxpbmNsdWRlOyUoQWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcyk8L0FkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM+CisgICAgPC9DbENvbXBpbGU+Cis8IS0tIFsvcHJvdGVjdGVkXSAKKy0tPgorICA8L0l0ZW1EZWZpbml0aW9uR3JvdXA+CisgIDxJdGVtR3JvdXAgTGFiZWw9IlJUTWFwc19zb3VyY2VzIj4KKyAgICA8Tm9uZSBJbmNsdWRlPSJydG1hcHNfW21vZGVsLm5hbWUvXS5wY2tpbmZvIiAvPgorICA8L0l0ZW1Hcm91cD4KKyAgPEl0ZW1Hcm91cCBMYWJlbD0iUlRNYXBzX2hlYWRlcnMiPgorCVtmb3IgKGVsdDogTmFtZWRFbGVtZW50IHwgZ2V0Q29tcG9uZW50TW9kZWxzKG1vZGVsKSldCisJCVtpZiAoaXNNYWNyb0NvbXBvbmVudChlbHQub2NsQXNUeXBlKENsYXNzKSkgPSBmYWxzZSldCisJCQk8Q2xDb21waWxlIEluY2x1ZGU9InNyY1xtYXBzX1tlbHQubmFtZS9dLmNwcCIvPgorCQlbL2lmXQorCVsvZm9yXQorICA8L0l0ZW1Hcm91cD4KKyAgPEl0ZW1Hcm91cD4KKwlbZm9yIChlbHQ6IE5hbWVkRWxlbWVudCB8IGdldENvbXBvbmVudE1vZGVscyhtb2RlbCkpXQorCQlbaWYgKGlzTWFjcm9Db21wb25lbnQoZWx0Lm9jbEFzVHlwZShDbGFzcykpID0gZmFsc2UpXQorCQkJPENsSW5jbHVkZSBJbmNsdWRlPSJsb2NhbF9pbnRlcmZhY2VzXG1hcHNfW2VsdC5uYW1lL10uaCIvPgorCQlbL2lmXQorCVsvZm9yXQorICA8L0l0ZW1Hcm91cD4KKyAgPEltcG9ydCBQcm9qZWN0PSIkKFZDVGFyZ2V0c1BhdGgpXE1pY3Jvc29mdC5DcHAudGFyZ2V0cyIgLz4KKyAgPEltcG9ydEdyb3VwIExhYmVsPSJFeHRlbnNpb25UYXJnZXRzIj4KKyAgPC9JbXBvcnRHcm91cD4KKzwvUHJvamVjdD4KKworWy9maWxlXQorWy90ZW1wbGF0ZV0KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3ZjMjAxMF9wcm9qZWN0X3ZjeHByb2pfZmlsdGVycy5lbXRsIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfdmMyMDEwX3Byb2plY3RfdmN4cHJval9maWx0ZXJzLmVtdGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGY4MjNhNQotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3ZjMjAxMF9wcm9qZWN0X3ZjeHByb2pfZmlsdGVycy5lbXRsCkBAIC0wLDAgKzEsNjExIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHhtaTpYTUkgeG1pOnZlcnNpb249IjIuMCIgeG1sbnM6eG1pPSJodHRwOi8vd3d3Lm9tZy5vcmcvWE1JIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczplY29yZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSIgeG1sbnM6bXRsPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2FjY2VsZW8vbXRsLzMuMCIgeG1sbnM6b2NsLmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9FY29yZSI+CisgIDxtdGw6TW9kdWxlIG5hbWU9ImdlbmVyYXRlX3J0bWFwc192YzIwMTBfcHJvamVjdF92Y3hwcm9qX2ZpbHRlcnMiIG5zVVJJPSJvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmludGVtcG9yYTo6cnRtYXBzOjpmaWxlczo6Z2VuZXJhdGVfcnRtYXBzX3ZjMjAxMF9wcm9qZWN0X3ZjeHByb2pfZmlsdGVycyIgc3RhcnRIZWFkZXJQb3NpdGlvbj0iNzczIiBlbmRIZWFkZXJQb3NpdGlvbj0iOTg3Ij4KKyAgICA8aW5wdXQ+CisgICAgICA8dGFrZXNUeXBlc0Zyb20gaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvIi8+CisgICAgPC9pbnB1dD4KKyAgICA8aW5wdXQ+CisgICAgICA8dGFrZXNUeXBlc0Zyb20gaHJlZj0iaHR0cDovL1BhcHlydXMvUm9ib3RNTC8xIy8iLz4KKyAgICA8L2lucHV0PgorICAgIDxpbXBvcnRzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuZW10bCMvMCIvPgorICAgIDxpbXBvcnRzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wIi8+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlRlbXBsYXRlIiBuYW1lPSJnZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUyIgdmlzaWJpbGl0eT0iUHVibGljIj4KKyAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7Ii8+CisgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOkZpbGVCbG9jayIgb3Blbk1vZGU9Ik92ZXJXcml0ZSI+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImbHQ7P3htbCB2ZXJzaW9uPSZxdW90OzEuMCZxdW90OyBlbmNvZGluZz0mcXVvdDt1dGYtOCZxdW90Oz8+JiN4RDsmI3hBOyZsdDtQcm9qZWN0IFRvb2xzVmVyc2lvbj0mcXVvdDs0LjAmcXVvdDsgeG1sbnM9JnF1b3Q7aHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS9kZXZlbG9wZXIvbXNidWlsZC8yMDAzJnF1b3Q7PiYjeEQ7JiN4QTsgICZsdDtJdGVtR3JvdXA+JiN4RDsmI3hBOyAgICAmbHQ7Tm9uZSBJbmNsdWRlPSZxdW90O3J0bWFwc18iLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy9tb2RlbCI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgPHJlZmVycmVkUHJvcGVydHkgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQvbmFtZSIvPgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIucGNraW5mbyZxdW90OyAvPiYjeEQ7JiN4QTsgICZsdDsvSXRlbUdyb3VwPiYjeEQ7JiN4QTsgICZsdDtJdGVtR3JvdXA+JiN4RDsmI3hBOyAgICAmbHQ7RmlsdGVyIEluY2x1ZGU9JnF1b3Q7c3JjJnF1b3Q7PiYjeEQ7JiN4QTsgICAgICAmbHQ7VW5pcXVlSWRlbnRpZmllcj57YTViOWMwODMtODQ0ZS00YmVhLThkZWItYzA4NjgyNThjZjZmfSZsdDsvVW5pcXVlSWRlbnRpZmllcj4mI3hEOyYjeEE7ICAgICZsdDsvRmlsdGVyPiYjeEQ7JiN4QTsgICAgJmx0O0ZpbHRlciBJbmNsdWRlPSZxdW90O2xvY2FsX2ludGVyZmFjZXMmcXVvdDs+JiN4RDsmI3hBOyAgICAgICZsdDtVbmlxdWVJZGVudGlmaWVyPntkNzZhMzY2Yy04MTRiLTRmZTItYjg1Yi1lOWUyYmFiMzc3YzN9Jmx0Oy9VbmlxdWVJZGVudGlmaWVyPiYjeEQ7JiN4QTsgICAgJmx0Oy9GaWx0ZXI+JiN4RDsmI3hBOyAgJmx0Oy9JdGVtR3JvdXA+JiN4RDsmI3hBOyAgJmx0O0l0ZW1Hcm91cD4mI3hEOyYjeEE7Ii8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6Rm9yQmxvY2siPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6SWZCbG9jayI+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4OTsmI3g5OyYjeDk7Jmx0O0NsQ29tcGlsZSBJbmNsdWRlPSZxdW90O3NyY1xtYXBzXyIvPgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZWx0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS4zL2VsdCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIuY3BwJnF1b3Q7PiYjeEQ7JiN4QTsgICAgICAmI3g5OyYjeDk7JiN4OTsmbHQ7RmlsdGVyPnNyYyZsdDsvRmlsdGVyPiYjeEQ7JiN4QTsgICAgJiN4OTsmI3g5OyZsdDsvQ2xDb21waWxlPiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgIDxpZkV4cHIgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9pc01hY3JvQ29tcG9uZW50Ii8+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSkZJTFRFUlMvJS4xLyUuMy9lbHQiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlRXhwIiBlVHlwZT0iLzEyL0NsYXNzIj4KKyAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnlfQ2xhc3Mvb2NsQXNUeXBlIi8+CisgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkJvb2xlYW5MaXRlcmFsRXhwIiBib29sZWFuU3ltYm9sPSJmYWxzZSI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbl9DbGFzcy89Ii8+CisgICAgICAgICAgICA8L2lmRXhwcj4KKyAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgPGxvb3BWYXJpYWJsZSBuYW1lPSJlbHQiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICA8L2xvb3BWYXJpYWJsZT4KKyAgICAgICAgICA8aXRlclNldCB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiIgZVR5cGU9Ii85L1NlcXVlbmNlKE5hbWVkRWxlbWVudCkiPgorICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0Q29tcG9uZW50TW9kZWxzIi8+CisgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTL21vZGVsIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICA8L2l0ZXJTZXQ+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiAgJmx0Oy9JdGVtR3JvdXA+JiN4RDsmI3hBOyAgJmx0O0l0ZW1Hcm91cD4mI3hEOyYjeEE7Ii8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6Rm9yQmxvY2siPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6SWZCbG9jayI+CisgICAgICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4OTsmI3g5OyAgICAmbHQ7Q2xJbmNsdWRlIEluY2x1ZGU9JnF1b3Q7bG9jYWxfaW50ZXJmYWNlc1xtYXBzXyIvPgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0iZWx0IiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS41L2VsdCI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSIuaCZxdW90Oz4mI3hEOyYjeEE7JiN4OTsmI3g5OyAgICAgICZsdDtGaWx0ZXI+bG9jYWxfaW50ZXJmYWNlcyZsdDsvRmlsdGVyPiYjeEQ7JiN4QTsmI3g5OyYjeDk7ICAgICZsdDsvQ2xJbmNsdWRlPiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgIDxpZkV4cHIgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9pc01hY3JvQ29tcG9uZW50Ii8+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6T3BlcmF0aW9uQ2FsbEV4cCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSkZJTFRFUlMvJS4xLyUuNS9lbHQiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpUeXBlRXhwIiBlVHlwZT0iLzEyL0NsYXNzIj4KKyAgICAgICAgICAgICAgICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRPcGVyYXRpb24geHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnlfQ2xhc3Mvb2NsQXNUeXBlIi8+CisgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkJvb2xlYW5MaXRlcmFsRXhwIiBib29sZWFuU3ltYm9sPSJmYWxzZSI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0Jvb2xlYW4iLz4KKyAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbl9DbGFzcy89Ii8+CisgICAgICAgICAgICA8L2lmRXhwcj4KKyAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgPGxvb3BWYXJpYWJsZSBuYW1lPSJlbHQiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgICA8L2xvb3BWYXJpYWJsZT4KKyAgICAgICAgICA8aXRlclNldCB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiIgZVR5cGU9Ii85L1NlcXVlbmNlKE5hbWVkRWxlbWVudCkiPgorICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0Q29tcG9uZW50TW9kZWxzIi8+CisgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTL21vZGVsIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICA8L2l0ZXJTZXQ+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiAgJmx0Oy9JdGVtR3JvdXA+JiN4RDsmI3hBOyZsdDsvUHJvamVjdD4mI3hEOyYjeEE7JiN4RDsmI3hBOyIvPgorICAgICAgICA8ZmlsZVVybCB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpPcGVyYXRpb25DYWxsRXhwIiByZWZlcnJlZE9wZXJhdGlvbj0iLzEvU3RyaW5nX0NsYXNzLysiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiIHJlZmVycmVkT3BlcmF0aW9uPSIvMS9TdHJpbmdfQ2xhc3MvKyI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9InVzZXJfc2RrLyI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJvcGVydHlDYWxsRXhwIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTL21vZGVsIj4KKyAgICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iLnUvcnRtYXBzXyI+CisgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgPC9zb3VyY2U+CisgICAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTL21vZGVsIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iX3ZjMjAxMC52Y3hwcm9qLmZpbHRlcnMiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDwvZmlsZVVybD4KKyAgICAgICAgPGNoYXJzZXQgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IlVURi04Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDwvY2hhcnNldD4KKyAgICAgIDwvYm9keT4KKyAgICAgIDxwYXJhbWV0ZXIgbmFtZT0ibW9kZWwiPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICA8L3BhcmFtZXRlcj4KKyAgICA8L293bmVkTW9kdWxlRWxlbWVudD4KKyAgPC9tdGw6TW9kdWxlPgorICA8ZWNvcmU6RVBhY2thZ2UgbmFtZT0iYWRkaXRpb25zIj4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlN0cmluZ19DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iKyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwgbm9uLXN0YW5kYXJkIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im90aGVyIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpBbnlUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSW50ZWdlcl9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUmVhbF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1JlYWwiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRU9iamVjdF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSkZJTFRFUlMiLz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibW9kZWwiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0Q29tcG9uZW50TW9kZWxzIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvZ2V0Q29tcG9uZW50TW9kZWxzIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8zL1NlcXVlbmNlKE5hbWVkRWxlbWVudCkiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im1vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzTWFjcm9Db21wb25lbnQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9pc01hY3JvQ29tcG9uZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY2xhc3MiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPY2xBbnlfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PY2xBbnkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ29sbGVjdGlvbihUKV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0NvbGxlY3Rpb24oVCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU2VxdWVuY2UoVClfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TZXF1ZW5jZShUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPcmRlcmVkU2V0KFQpX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT3JkZXJlZFNldChUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJNb2RlbF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNsYXNzX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRWxlbWVudF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0VsZW1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUHJvcGVydHlfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb25uZWN0b3JfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUGFyYW1ldGVyX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUGFyYW1ldGVyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNsYXNzaWZpZXJfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzc2lmaWVyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlBvcnRfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qb3J0Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgPC9lY29yZTpFUGFja2FnZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxlY29yZTpFUGFja2FnZSBuYW1lPSJjb2xsZWN0aW9ucyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgbmFtZT0iU2VxdWVuY2UoTmFtZWRFbGVtZW50KSIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEudXRpbC5MaXN0Ij4KKyAgICAgIDxlbGVtZW50VHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgIDwvZWNvcmU6RVBhY2thZ2U+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPGVjb3JlOkVQYWNrYWdlIG5hbWU9InR5cGVzIj4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJvY2wuZWNvcmU6VHlwZVR5cGUiIG5hbWU9IkNsYXNzIj4KKyAgICAgIDxyZWZlcnJlZFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgIDwvZWNvcmU6RVBhY2thZ2U+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJpIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvSW50ZWdlciIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0iaSI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8ZWNvcmU6RUFubm90YXRpb24gc291cmNlPSJwb3NpdGlvbnMiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSkZJTFRFUlMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwODgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjM3MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNjQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE2NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE2NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMzU3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyNiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSkZJTFRFUlMvJS4xLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEyNzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQ0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTLyUuMS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE0NDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTQ1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSkZJTFRFUlMvJS4xLyUuMS9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTQ0NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxNDQ5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNDU2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE3OTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjMwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxNzk4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIwMjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQxIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS4zLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4NTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjAxOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTLyUuMS8lLjMvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTEwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5NDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSkZJTFRFUlMvJS4xLyUuMy8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTk0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxOTUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSkZJTFRFUlMvJS4xLyUuMy8lLyUuMS9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE5NDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTk0NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTLyUuMS8lLjMvJS8lLjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE5NTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjAxMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS4zLyUvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxODU5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5MDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS4zLyUvJS4zLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4NjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTg5OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTLyUuMS8lLjMvJS8lLjMvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxODc3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4OTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS4zLyUvJS4zLyUvJS9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4NzciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTg4MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTLyUuMS8lLjMvJS8lLjMvJS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjE4OTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTg5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTLyUuMS8lLjMvJS8lLjMvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxOTAxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE5MDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS4zL2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTgwNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxODIxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0MSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTLyUuMS8lLjMvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxODI0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjE4NDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS4zLyUuMS9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTg0MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxODQ4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSkZJTFRFUlMvJS4xLyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjAzMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMDYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTLyUuMS8lLjUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIwNjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjMxOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS41LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxMTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjMwOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS41LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjE3NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMjIyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1MiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTLyUuMS8lLjUvJS8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIyMjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjIzMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTLyUuMS8lLjUvJS8lLjEvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMjIzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIyMjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS41LyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMjMzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIzMDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjUyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSkZJTFRFUlMvJS4xLyUuNS8lLyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjEyMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTcxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSkZJTFRFUlMvJS4xLyUuNS8lLyUuMy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMTI0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIxNjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS41LyUvJS4zLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjE0MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSkZJTFRFUlMvJS4xLyUuNS8lLyUuMy8lLyUvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMTQxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIxNDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS41LyUvJS4zLyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIyMTU1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjIxNjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS41LyUvJS4zLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjE2NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTcwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSkZJTFRFUlMvJS4xLyUuNS9lbHQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIwNjgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjA4NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS41LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMjA4OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIyMTEzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSkZJTFRFUlMvJS4xLyUuNS8lLjEvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIxMDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjExMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTLyUuMS8lLjYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjIzMjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMjM1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS43Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEyNTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQwIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS43LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTIyNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTLyUuMS8lLjcvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEyMTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS43LyUvJS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExOTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS43LyUvJS8lLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE4NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTLyUuMS8lLjcvJS8lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTg2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExOTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ1IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS43LyUvJS8lLyUuMS9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE4NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTkxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSkZJTFRFUlMvJS4xLyUuNy8lLyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTk5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEyMTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS43LyUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjE0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEyMjQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS43LyUvJS4xL21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMjE0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEyMTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUy8lLjEvJS43LyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTIyNyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjUyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSkZJTFRFUlMvJS4xLyUuOCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTI2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjY4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSkZJTFRFUlMvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNDciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE2MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lY29yZTpFQW5ub3RhdGlvbj4KKzwveG1pOlhNST4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3ZjMjAxMF9wcm9qZWN0X3ZjeHByb2pfZmlsdGVycy5tdGwgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc192YzIwMTBfcHJvamVjdF92Y3hwcm9qX2ZpbHRlcnMubXRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM3ODJmMDcKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc192YzIwMTBfcHJvamVjdF92Y3hwcm9qX2ZpbHRlcnMubXRsCkBAIC0wLDAgKzEsNjEgQEAKK1tjb21tZW50IGVuY29kaW5nID0gVVRGLTggL10KK1tjb21tZW50XQorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTMgSU5URU1QT1JBIFMuQS4KKyAqCisgKiBUaGlzIHNvZnR3YXJlIGlzIGEgY29tcHV0ZXIgcHJvZ3JhbSB3aG9zZSBwdXJwb3NlIGlzIHRvIHRyYW5zZm9ybSBSb2JvdE1MIG1vZGVscworICogaW50byBSVE1hcHMgZGlhZ3JhbXMgYW5kIFJUTWFwcyBjb21wb25lbnRzIHZpYSBzb3VyY2UgY29kZSBnZW5lcmF0aW9uIHRlY2huaXF1ZXMuCisgKiAKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIE5pY29sYXMgRFUgTEFDIChJTlRFTVBPUkEpIC0gSW5pdGlhbCBBUEkgYW5kIGltcGxlbWVudGF0aW9uCisgKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworWy9jb21tZW50XQorW21vZHVsZSBnZW5lcmF0ZV9ydG1hcHNfdmMyMDEwX3Byb2plY3RfdmN4cHJval9maWx0ZXJzKCdodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMy4wLjAvVU1MJywgJ2h0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMScpXQorCitbaW1wb3J0IG9yZzo6ZWNsaXBzZTo6cGFweXJ1czo6cm9ib3RtbDo6Z2VuZXJhdG9yczo6Y29tbW9uOjptbXF1ZXJpZXM6OkdlbmVyYWxRdWVyaWVzIC9dCitbaW1wb3J0IG9yZzo6ZWNsaXBzZTo6cGFweXJ1czo6cm9ib3RtbDo6Z2VuZXJhdG9yczo6Y29tbW9uOjptbXF1ZXJpZXM6OkFyY2hpdGVjdHVyZVF1ZXJpZXMgL10KKworW3RlbXBsYXRlIHB1YmxpYyBnZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KRklMVEVSUyhtb2RlbCA6IE1vZGVsKV0KKworW2ZpbGUgKCd1c2VyX3Nkay8nKyBtb2RlbC5uYW1lICsgJy51L3J0bWFwc18nICsgbW9kZWwubmFtZSArICdfdmMyMDEwLnZjeHByb2ouZmlsdGVycycsIGZhbHNlLCAnVVRGLTgnKV0KKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9InV0Zi04Ij8+Cis8UHJvamVjdCBUb29sc1ZlcnNpb249IjQuMCIgeG1sbnM9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vZGV2ZWxvcGVyL21zYnVpbGQvMjAwMyI+CisgIDxJdGVtR3JvdXA+CisgICAgPE5vbmUgSW5jbHVkZT0icnRtYXBzX1ttb2RlbC5uYW1lL10ucGNraW5mbyIgLz4KKyAgPC9JdGVtR3JvdXA+CisgIDxJdGVtR3JvdXA+CisgICAgPEZpbHRlciBJbmNsdWRlPSJzcmMiPgorICAgICAgPFVuaXF1ZUlkZW50aWZpZXI+e2E1YjljMDgzLTg0NGUtNGJlYS04ZGViLWMwODY4MjU4Y2Y2Zn08L1VuaXF1ZUlkZW50aWZpZXI+CisgICAgPC9GaWx0ZXI+CisgICAgPEZpbHRlciBJbmNsdWRlPSJsb2NhbF9pbnRlcmZhY2VzIj4KKyAgICAgIDxVbmlxdWVJZGVudGlmaWVyPntkNzZhMzY2Yy04MTRiLTRmZTItYjg1Yi1lOWUyYmFiMzc3YzN9PC9VbmlxdWVJZGVudGlmaWVyPgorICAgIDwvRmlsdGVyPgorICA8L0l0ZW1Hcm91cD4KKyAgPEl0ZW1Hcm91cD4KKwlbZm9yIChlbHQ6IE5hbWVkRWxlbWVudCB8IGdldENvbXBvbmVudE1vZGVscyhtb2RlbCkpXQorCQlbaWYgKGlzTWFjcm9Db21wb25lbnQoZWx0Lm9jbEFzVHlwZShDbGFzcykpID0gZmFsc2UpXQorCQkJPENsQ29tcGlsZSBJbmNsdWRlPSJzcmNcbWFwc19bZWx0Lm5hbWUvXS5jcHAiPgorICAgICAgCQkJPEZpbHRlcj5zcmM8L0ZpbHRlcj4KKyAgICAJCTwvQ2xDb21waWxlPgorCQlbL2lmXQorCVsvZm9yXQorICA8L0l0ZW1Hcm91cD4KKyAgPEl0ZW1Hcm91cD4KKwlbZm9yIChlbHQ6IE5hbWVkRWxlbWVudCB8IGdldENvbXBvbmVudE1vZGVscyhtb2RlbCkpXQorCQlbaWYgKGlzTWFjcm9Db21wb25lbnQoZWx0Lm9jbEFzVHlwZShDbGFzcykpID0gZmFsc2UpXQorCQkgICAgPENsSW5jbHVkZSBJbmNsdWRlPSJsb2NhbF9pbnRlcmZhY2VzXG1hcHNfW2VsdC5uYW1lL10uaCI+CisJCSAgICAgIDxGaWx0ZXI+bG9jYWxfaW50ZXJmYWNlczwvRmlsdGVyPgorCQkgICAgPC9DbEluY2x1ZGU+CisJCVsvaWZdCisJWy9mb3JdCisgIDwvSXRlbUdyb3VwPgorPC9Qcm9qZWN0PgorCitbL2ZpbGVdCitbL3RlbXBsYXRlXQpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfdmMyMDEwX3NvbHV0aW9uX3Nsbi5lbXRsIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9maWxlcy9nZW5lcmF0ZV9ydG1hcHNfdmMyMDEwX3NvbHV0aW9uX3Nsbi5lbXRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE1ZGU0YjgKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc192YzIwMTBfc29sdXRpb25fc2xuLmVtdGwKQEAgLTAsMCArMSwyMTkgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8eG1pOlhNSSB4bWk6dmVyc2lvbj0iMi4wIiB4bWxuczp4bWk9Imh0dHA6Ly93d3cub21nLm9yZy9YTUkiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zOmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIiB4bWxuczptdGw9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvYWNjZWxlby9tdGwvMy4wIiB4bWxuczpvY2wuZWNvcmU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL0Vjb3JlIj4KKyAgPG10bDpNb2R1bGUgbmFtZT0iZ2VuZXJhdGVfcnRtYXBzX3ZjMjAxMF9zb2x1dGlvbl9zbG4iIG5zVVJJPSJvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmludGVtcG9yYTo6cnRtYXBzOjpmaWxlczo6Z2VuZXJhdGVfcnRtYXBzX3ZjMjAxMF9zb2x1dGlvbl9zbG4iIHN0YXJ0SGVhZGVyUG9zaXRpb249Ijc3MyIgZW5kSGVhZGVyUG9zaXRpb249IjExNjYiPgorICAgIDxpbnB1dD4KKyAgICAgIDx0YWtlc1R5cGVzRnJvbSBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8iLz4KKyAgICA8L2lucHV0PgorICAgIDxpbnB1dD4KKyAgICAgIDx0YWtlc1R5cGVzRnJvbSBocmVmPSJodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEjLyIvPgorICAgIDwvaW5wdXQ+CisgICAgPG93bmVkTW9kdWxlRWxlbWVudCB4c2k6dHlwZT0ibXRsOlRlbXBsYXRlIiBuYW1lPSJnZW5lcmF0ZVJUTWFwc1ZDMjAxMFNvbHV0aW9uU0xOIiB2aXNpYmlsaXR5PSJQdWJsaWMiPgorICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsiLz4KKyAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6RmlsZUJsb2NrIiBvcGVuTW9kZT0iT3ZlcldyaXRlIj4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTtNaWNyb3NvZnQgVmlzdWFsIFN0dWRpbyBTb2x1dGlvbiBGaWxlLCBGb3JtYXQgVmVyc2lvbiAxMS4wMCYjeEQ7JiN4QTsjIFZpc3VhbCBTdHVkaW8gMjAxMCYjeEQ7JiN4QTtQcm9qZWN0KCZxdW90O3s4QkM5Q0VCOC04QjRBLTExRDAtOEQxMS0wMEEwQzkxQkM5NDJ9JnF1b3Q7KSA9ICZxdW90OyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByb3BlcnR5Q2FsbEV4cCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxzb3VyY2UgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwU29sdXRpb25TTE4vbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgIDxyZWZlcnJlZFByb3BlcnR5IHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50L25hbWUiLz4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJnF1b3Q7LCAmcXVvdDsiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFNvbHV0aW9uU0xOL21vZGVsIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Ii51XHJ0bWFwc18iLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpQcm9wZXJ0eUNhbGxFeHAiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFNvbHV0aW9uU0xOL21vZGVsIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICA8L3NvdXJjZT4KKyAgICAgICAgICA8cmVmZXJyZWRQcm9wZXJ0eSB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudC9uYW1lIi8+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9Il92YzIwMTAudmN4cHJvaiZxdW90OywgJnF1b3Q7e0EzNkUwNzA1LTcyOUYtNEFGRC04REU3LUVGMjA1RjVGQkNFRX0mcXVvdDsmI3hEOyYjeEE7RW5kUHJvamVjdCYjeEQ7JiN4QTtHbG9iYWwmI3hEOyYjeEE7JiN4OTtHbG9iYWxTZWN0aW9uKFNvbHV0aW9uQ29uZmlndXJhdGlvblBsYXRmb3JtcykgPSBwcmVTb2x1dGlvbiYjeEQ7JiN4QTsmI3g5OyYjeDk7RGVidWd8V2luMzIgPSBEZWJ1Z3xXaW4zMiYjeEQ7JiN4QTsmI3g5OyYjeDk7UmVsZWFzZXxXaW4zMiA9IFJlbGVhc2V8V2luMzImI3hEOyYjeEE7JiN4OTtFbmRHbG9iYWxTZWN0aW9uJiN4RDsmI3hBOyYjeDk7R2xvYmFsU2VjdGlvbihQcm9qZWN0Q29uZmlndXJhdGlvblBsYXRmb3JtcykgPSBwb3N0U29sdXRpb24mI3hEOyYjeEE7JiN4OTsmI3g5O3tBMzZFMDcwNS03MjlGLTRBRkQtOERFNy1FRjIwNUY1RkJDRUV9LkRlYnVnfFdpbjMyLkFjdGl2ZUNmZyA9IERlYnVnfFdpbjMyJiN4RDsmI3hBOyYjeDk7JiN4OTt7QTM2RTA3MDUtNzI5Ri00QUZELThERTctRUYyMDVGNUZCQ0VFfS5EZWJ1Z3xXaW4zMi5CdWlsZC4wID0gRGVidWd8V2luMzImI3hEOyYjeEE7JiN4OTsmI3g5O3tBMzZFMDcwNS03MjlGLTRBRkQtOERFNy1FRjIwNUY1RkJDRUV9LlJlbGVhc2V8V2luMzIuQWN0aXZlQ2ZnID0gUmVsZWFzZXxXaW4zMiYjeEQ7JiN4QTsmI3g5OyYjeDk7e0EzNkUwNzA1LTcyOUYtNEFGRC04REU3LUVGMjA1RjVGQkNFRX0uUmVsZWFzZXxXaW4zMi5CdWlsZC4wID0gUmVsZWFzZXxXaW4zMiYjeEQ7JiN4QTsmI3g5O0VuZEdsb2JhbFNlY3Rpb24mI3hEOyYjeEE7JiN4OTtHbG9iYWxTZWN0aW9uKFNvbHV0aW9uUHJvcGVydGllcykgPSBwcmVTb2x1dGlvbiYjeEQ7JiN4QTsmI3g5OyYjeDk7SGlkZVNvbHV0aW9uTm9kZSA9IEZBTFNFJiN4RDsmI3hBOyYjeDk7RW5kR2xvYmFsU2VjdGlvbiYjeEQ7JiN4QTtFbmRHbG9iYWwmI3hEOyYjeEE7JiN4RDsmI3hBOyIvPgorICAgICAgICA8ZmlsZVVybCB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0idXNlcl9zZGsvbWFwc19zZGtfdmMyMDEwLnNsbiI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2ZpbGVVcmw+CisgICAgICAgIDxjaGFyc2V0IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSJVVEYtOCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8L2NoYXJzZXQ+CisgICAgICA8L2JvZHk+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9Im1vZGVsIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgIDwvbXRsOk1vZHVsZT4KKyAgPGVjb3JlOkVQYWNrYWdlIG5hbWU9ImFkZGl0aW9ucyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTdHJpbmdfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSW50ZWdlcl9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUmVhbF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1JlYWwiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRU9iamVjdF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdlbmVyYXRlUlRNYXBzVkMyMDEwU29sdXRpb25TTE4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFNvbHV0aW9uU0xOIi8+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im1vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iT2NsQW55X0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvT2NsQW55Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNvbGxlY3Rpb24oVClfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Db2xsZWN0aW9uKFQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlNlcXVlbmNlKFQpX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU2VxdWVuY2UoVCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iT3JkZXJlZFNldChUKV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09yZGVyZWRTZXQoVCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iTW9kZWxfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgIDwvZWNvcmU6RVBhY2thZ2U+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FT2JqZWN0Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxlY29yZTpFQW5ub3RhdGlvbiBzb3VyY2U9InBvc2l0aW9ucyI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4wIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFNvbHV0aW9uU0xOIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI4OTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTk1OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjIiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwU29sdXRpb25TTE4vJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iOTU4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9Ijk2MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwU29sdXRpb25TTE4vJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI5NjAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTk0NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwU29sdXRpb25TTE4vJS4xLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwMTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE1NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwU29sdXRpb25TTE4vJS4xLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE1NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTY2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFNvbHV0aW9uU0xOLyUuMS8lLjEvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBTb2x1dGlvblNMTi8lLjEvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTY4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExNzIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjI4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFNvbHV0aW9uU0xOLyUuMS8lLjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjExNzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTE4MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuOCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBTb2x1dGlvblNMTi8lLjEvJS4zL21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjExNzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwU29sdXRpb25TTE4vJS4xLyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE4NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMTk1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIyOCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwU29sdXRpb25TTE4vJS4xLyUuNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMTE5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIxMjA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMTBTb2x1dGlvblNMTi8lLjEvJS41L21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIxMTk2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjEyMDEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFNvbHV0aW9uU0xOLyUuMS8lLjYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEyMDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTkzOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMjgiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFNvbHV0aW9uU0xOLyUuMS8lLjciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk2NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5OTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE0IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFNvbHV0aW9uU0xOLyUuMS8lLjgiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjEwMDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMTAxMyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwU29sdXRpb25TTE4vbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9Ijk0MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI5NTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjIyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZWNvcmU6RUFubm90YXRpb24+Cis8L3htaTpYTUk+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc192YzIwMTBfc29sdXRpb25fc2xuLm10bCBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3ZjMjAxMF9zb2x1dGlvbl9zbG4ubXRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM1ZTg4NmQKLS0tIC9kZXYvbnVsbAorKysgYi9nZW5lcmF0b3JzL3J0bWFwcy9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9pbnRlbXBvcmEvcnRtYXBzL2ZpbGVzL2dlbmVyYXRlX3J0bWFwc192YzIwMTBfc29sdXRpb25fc2xuLm10bApAQCAtMCwwICsxLDQ3IEBACitbY29tbWVudCBlbmNvZGluZyA9IFVURi04IC9dCitbY29tbWVudF0KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIElOVEVNUE9SQSBTLkEuCisgKgorICogVGhpcyBzb2Z0d2FyZSBpcyBhIGNvbXB1dGVyIHByb2dyYW0gd2hvc2UgcHVycG9zZSBpcyB0byB0cmFuc2Zvcm0gUm9ib3RNTCBtb2RlbHMKKyAqIGludG8gUlRNYXBzIGRpYWdyYW1zIGFuZCBSVE1hcHMgY29tcG9uZW50cyB2aWEgc291cmNlIGNvZGUgZ2VuZXJhdGlvbiB0ZWNobmlxdWVzLgorICogCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBOaWNvbGFzIERVIExBQyAoSU5URU1QT1JBKSAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK1svY29tbWVudF0KK1ttb2R1bGUgZ2VuZXJhdGVfcnRtYXBzX3ZjMjAxMF9zb2x1dGlvbl9zbG4oJ2h0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8zLjAuMC9VTUwnLCAnaHR0cDovL1BhcHlydXMvUm9ib3RNTC8xJyldCisKKworW3RlbXBsYXRlIHB1YmxpYyBnZW5lcmF0ZVJUTWFwc1ZDMjAxMFNvbHV0aW9uU0xOKG1vZGVsIDogTW9kZWwpXQorCitbZmlsZSAoJ3VzZXJfc2RrL21hcHNfc2RrX3ZjMjAxMC5zbG4nLCBmYWxzZSwgJ1VURi04JyldCisKK01pY3Jvc29mdCBWaXN1YWwgU3R1ZGlvIFNvbHV0aW9uIEZpbGUsIEZvcm1hdCBWZXJzaW9uIDExLjAwCisjIFZpc3VhbCBTdHVkaW8gMjAxMAorUHJvamVjdCgiezhCQzlDRUI4LThCNEEtMTFEMC04RDExLTAwQTBDOTFCQzk0Mn0iKSA9ICJbbW9kZWwubmFtZS9dIiwgIlttb2RlbC5uYW1lL10udVxydG1hcHNfW21vZGVsLm5hbWUvXV92YzIwMTAudmN4cHJvaiIsICJ7QTM2RTA3MDUtNzI5Ri00QUZELThERTctRUYyMDVGNUZCQ0VFfSIKK0VuZFByb2plY3QKK0dsb2JhbAorCUdsb2JhbFNlY3Rpb24oU29sdXRpb25Db25maWd1cmF0aW9uUGxhdGZvcm1zKSA9IHByZVNvbHV0aW9uCisJCURlYnVnfFdpbjMyID0gRGVidWd8V2luMzIKKwkJUmVsZWFzZXxXaW4zMiA9IFJlbGVhc2V8V2luMzIKKwlFbmRHbG9iYWxTZWN0aW9uCisJR2xvYmFsU2VjdGlvbihQcm9qZWN0Q29uZmlndXJhdGlvblBsYXRmb3JtcykgPSBwb3N0U29sdXRpb24KKwkJe0EzNkUwNzA1LTcyOUYtNEFGRC04REU3LUVGMjA1RjVGQkNFRX0uRGVidWd8V2luMzIuQWN0aXZlQ2ZnID0gRGVidWd8V2luMzIKKwkJe0EzNkUwNzA1LTcyOUYtNEFGRC04REU3LUVGMjA1RjVGQkNFRX0uRGVidWd8V2luMzIuQnVpbGQuMCA9IERlYnVnfFdpbjMyCisJCXtBMzZFMDcwNS03MjlGLTRBRkQtOERFNy1FRjIwNUY1RkJDRUV9LlJlbGVhc2V8V2luMzIuQWN0aXZlQ2ZnID0gUmVsZWFzZXxXaW4zMgorCQl7QTM2RTA3MDUtNzI5Ri00QUZELThERTctRUYyMDVGNUZCQ0VFfS5SZWxlYXNlfFdpbjMyLkJ1aWxkLjAgPSBSZWxlYXNlfFdpbjMyCisJRW5kR2xvYmFsU2VjdGlvbgorCUdsb2JhbFNlY3Rpb24oU29sdXRpb25Qcm9wZXJ0aWVzKSA9IHByZVNvbHV0aW9uCisJCUhpZGVTb2x1dGlvbk5vZGUgPSBGQUxTRQorCUVuZEdsb2JhbFNlY3Rpb24KK0VuZEdsb2JhbAorCitbL2ZpbGVdCitbL3RlbXBsYXRlXQpkaWZmIC0tZ2l0IGEvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9nZW5lcmF0ZV9ydG1hcHMuZW10bCBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZ2VuZXJhdGVfcnRtYXBzLmVtdGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDQyYTZiZQotLS0gL2Rldi9udWxsCisrKyBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZ2VuZXJhdGVfcnRtYXBzLmVtdGwKQEAgLTAsMCArMSwxMDIxIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHhtaTpYTUkgeG1pOnZlcnNpb249IjIuMCIgeG1sbnM6eG1pPSJodHRwOi8vd3d3Lm9tZy5vcmcvWE1JIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczplY29yZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSIgeG1sbnM6bXRsPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2FjY2VsZW8vbXRsLzMuMCIgeG1sbnM6b2NsLmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9FY29yZSI+CisgIDxtdGw6TW9kdWxlIG5hbWU9ImdlbmVyYXRlX3J0bWFwcyIgbnNVUkk9Im9yZzo6ZWNsaXBzZTo6cGFweXJ1czo6cm9ib3RtbDo6Z2VuZXJhdG9yczo6aW50ZW1wb3JhOjpydG1hcHM6OmdlbmVyYXRlX3J0bWFwcyIgc3RhcnRIZWFkZXJQb3NpdGlvbj0iNzczIiBlbmRIZWFkZXJQb3NpdGlvbj0iOTU0Ij4KKyAgICA8aW5wdXQ+CisgICAgICA8dGFrZXNUeXBlc0Zyb20gaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvIi8+CisgICAgPC9pbnB1dD4KKyAgICA8aW5wdXQ+CisgICAgICA8dGFrZXNUeXBlc0Zyb20gaHJlZj0iaHR0cDovL1BhcHlydXMvUm9ib3RNTC8xIy8iLz4KKyAgICA8L2lucHV0PgorICAgIDxpbXBvcnRzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvR2VuZXJhbFF1ZXJpZXMuZW10bCMvMCIvPgorICAgIDxpbXBvcnRzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wIi8+CisgICAgPGltcG9ydHMgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9EZXBsb3ltZW50UXVlcmllcy5lbXRsIy8wIi8+CisgICAgPGltcG9ydHMgaHJlZj0iZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX2NvbXBvbmVudF9jcHAuZW10bCMvMCIvPgorICAgIDxpbXBvcnRzIGhyZWY9ImZpbGVzL2dlbmVyYXRlX3J0bWFwc19jb21wb25lbnRfaHBwLmVtdGwjLzAiLz4KKyAgICA8aW1wb3J0cyBocmVmPSJmaWxlcy9nZW5lcmF0ZV9ydG1hcHNfcm9ib3RtbF9wcmltaXRpdmVfZGF0YXR5cGVzX2guZW10bCMvMCIvPgorICAgIDxpbXBvcnRzIGhyZWY9ImZpbGVzL2dlbmVyYXRlX3J0bWFwc19yb2JvdG1sX2RhdGF0eXBlc19oLmVtdGwjLzAiLz4KKyAgICA8aW1wb3J0cyBocmVmPSJmaWxlcy9nZW5lcmF0ZV9ydG1hcHNfbW9kZWxfZGF0YXR5cGVzX2guZW10bCMvMCIvPgorICAgIDxpbXBvcnRzIGhyZWY9ImZpbGVzL2dlbmVyYXRlX3J0bWFwc19tYWNyb2NvbXBvbmVudF9ydG1jLmVtdGwjLzAiLz4KKyAgICA8aW1wb3J0cyBocmVmPSJmaWxlcy9nZW5lcmF0ZV9ydG1hcHNfZGlhZ3JhbV9ydGQuZW10bCMvMCIvPgorICAgIDxpbXBvcnRzIGhyZWY9ImZpbGVzL2dlbmVyYXRlX3J0bWFwc19tYWtlZmlsZS5lbXRsIy8wIi8+CisgICAgPGltcG9ydHMgaHJlZj0iZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3Bja2luZm8uZW10bCMvMCIvPgorICAgIDxpbXBvcnRzIGhyZWY9ImZpbGVzL2dlbmVyYXRlX3J0bWFwc192YzIwMDVfcHJvamVjdF92Y3Byb2ouZW10bCMvMCIvPgorICAgIDxpbXBvcnRzIGhyZWY9ImZpbGVzL2dlbmVyYXRlX3J0bWFwc192YzIwMDVfc29sdXRpb25fc2xuLmVtdGwjLzAiLz4KKyAgICA8aW1wb3J0cyBocmVmPSJmaWxlcy9nZW5lcmF0ZV9ydG1hcHNfdmMyMDA4X3Byb2plY3RfdmNwcm9qLmVtdGwjLzAiLz4KKyAgICA8aW1wb3J0cyBocmVmPSJmaWxlcy9nZW5lcmF0ZV9ydG1hcHNfdmMyMDA4X3NvbHV0aW9uX3Nsbi5lbXRsIy8wIi8+CisgICAgPGltcG9ydHMgaHJlZj0iZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3ZjMjAxMF9wcm9qZWN0X3ZjeHByb2ouZW10bCMvMCIvPgorICAgIDxpbXBvcnRzIGhyZWY9ImZpbGVzL2dlbmVyYXRlX3J0bWFwc192YzIwMTBfcHJvamVjdF92Y3hwcm9qX2ZpbHRlcnMuZW10bCMvMCIvPgorICAgIDxpbXBvcnRzIGhyZWY9ImZpbGVzL2dlbmVyYXRlX3J0bWFwc192YzIwMTBfc29sdXRpb25fc2xuLmVtdGwjLzAiLz4KKyAgICA8b3duZWRNb2R1bGVFbGVtZW50IHhzaTp0eXBlPSJtdGw6VGVtcGxhdGUiIG5hbWU9ImdlbmVyYXRlUlRNYXBzRGlhZ3JhbSIgdmlzaWJpbGl0eT0iUHVibGljIiBtYWluPSJ0cnVlIj4KKyAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7Ii8+CisgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOklmQmxvY2siPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4OTsmI3g5OyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOlRlbXBsYXRlSW52b2NhdGlvbiI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9ImZpbGVzL2dlbmVyYXRlX3J0bWFwc19kaWFncmFtX3J0ZC5lbXRsIy8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbVJURCIvPgorICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJtb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtL21vZGVsIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7JiN4OTsmI3hEOyYjeEE7JiN4OTsmI3g5OyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOlRlbXBsYXRlSW52b2NhdGlvbiI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9ImZpbGVzL2dlbmVyYXRlX3J0bWFwc19tYWtlZmlsZS5lbXRsIy8wL2dlbmVyYXRlUlRNYXBzTWFrZWZpbGUiLz4KKyAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS9tb2RlbCI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyYjeDk7JiN4RDsmI3hBOyYjeDk7JiN4OTsiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpUZW1wbGF0ZUludm9jYXRpb24iPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSJmaWxlcy9nZW5lcmF0ZV9ydG1hcHNfcGNraW5mby5lbXRsIy8wL2dlbmVyYXRlUlRNYXBzUGNrSW5mbyIvPgorICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJtb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtL21vZGVsIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7JiN4OTsmI3hEOyYjeEE7JiN4OTsmI3g5OyIvPgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ibXRsOlRlbXBsYXRlSW52b2NhdGlvbiI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICAgIDxkZWZpbml0aW9uIGhyZWY9ImZpbGVzL2dlbmVyYXRlX3J0bWFwc192YzIwMDVfcHJvamVjdF92Y3Byb2ouZW10bCMvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0oiLz4KKyAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS9tb2RlbCI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyYjeDk7JiN4OTsiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpUZW1wbGF0ZUludm9jYXRpb24iPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSJmaWxlcy9nZW5lcmF0ZV9ydG1hcHNfdmMyMDA4X3Byb2plY3RfdmNwcm9qLmVtdGwjLzAvZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KIi8+CisgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsmI3g5OyYjeDk7Ii8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6VGVtcGxhdGVJbnZvY2F0aW9uIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3ZjMjAxMF9wcm9qZWN0X3ZjeHByb2ouZW10bCMvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFByb2plY3RWQ1hQUk9KIi8+CisgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsmI3g5OyYjeDk7Ii8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6VGVtcGxhdGVJbnZvY2F0aW9uIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3ZjMjAxMF9wcm9qZWN0X3ZjeHByb2pfZmlsdGVycy5lbXRsIy8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTIi8+CisgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsmI3g5OyYjeEQ7JiN4QTsmI3g5OyYjeDk7Ii8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6VGVtcGxhdGVJbnZvY2F0aW9uIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3ZjMjAwNV9zb2x1dGlvbl9zbG4uZW10bCMvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVNvbHV0aW9uU0xOIi8+CisgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsmI3g5OyYjeDk7Ii8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6VGVtcGxhdGVJbnZvY2F0aW9uIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3ZjMjAwOF9zb2x1dGlvbl9zbG4uZW10bCMvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFNvbHV0aW9uU0xOIi8+CisgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsmI3g5OyYjeDk7Ii8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6VGVtcGxhdGVJbnZvY2F0aW9uIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3ZjMjAxMF9zb2x1dGlvbl9zbG4uZW10bCMvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFNvbHV0aW9uU0xOIi8+CisgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsmI3g5OyYjeEQ7JiN4QTsmI3g5OyYjeDk7Ii8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6VGVtcGxhdGVJbnZvY2F0aW9uIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3JvYm90bWxfcHJpbWl0aXZlX2RhdGF0eXBlc19oLmVtdGwjLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MUHJpbWl0aXZlRGF0YVR5cGVzIi8+CisgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsmI3g5OyYjeDk7Ii8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6VGVtcGxhdGVJbnZvY2F0aW9uIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3JvYm90bWxfZGF0YXR5cGVzX2guZW10bCMvMC9nZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMiLz4KKyAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS9tb2RlbCI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPC9ib2R5PgorICAgICAgICA8Ym9keSB4c2k6dHlwZT0ib2NsLmVjb3JlOlN0cmluZ0xpdGVyYWxFeHAiIHN0cmluZ1N5bWJvbD0iJiN4RDsmI3hBOyYjeDk7JiN4OTsiLz4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpUZW1wbGF0ZUludm9jYXRpb24iPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSJmaWxlcy9nZW5lcmF0ZV9ydG1hcHNfbW9kZWxfZGF0YXR5cGVzX2guZW10bCMvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzIi8+CisgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vbW9kZWwiPgorICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsmI3hEOyYjeEE7Ii8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6Rm9yQmxvY2siPgorICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6TGV0QmxvY2siPgorICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpJZkJsb2NrIj4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeDk7JiN4OTsmI3g5OyYjeDk7Ii8+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6VGVtcGxhdGVJbnZvY2F0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX2NvbXBvbmVudF9ocHAuZW10bCMvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcCIvPgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJjIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xLyUuMjcvJS9jIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJtb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtL21vZGVsIj4KKyAgICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICA8L2JvZHk+CisgICAgICAgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7JiN4OTsmI3g5OyYjeDk7JiN4OTsiLz4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im10bDpUZW1wbGF0ZUludm9jYXRpb24iPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSJmaWxlcy9nZW5lcmF0ZV9ydG1hcHNfY29tcG9uZW50X2NwcC5lbXRsIy8wL2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwIi8+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4yNy8lL2MiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9Im1vZGVsIiByZWZlcnJlZFZhcmlhYmxlPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vbW9kZWwiPgorICAgICAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgIDwvYm9keT4KKyAgICAgICAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsiLz4KKyAgICAgICAgICAgICAgPGlmRXhwciB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgICAgICAgPHNvdXJjZSB4c2k6dHlwZT0ibXRsOlF1ZXJ5SW52b2NhdGlvbiI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvaXNNYWNyb0NvbXBvbmVudCIvPgorICAgICAgICAgICAgICAgICAgPGFyZ3VtZW50IHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImMiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4yNy8lL2MiPgorICAgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOkJvb2xlYW5MaXRlcmFsRXhwIiBib29sZWFuU3ltYm9sPSJmYWxzZSI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICAgICAgICAgIDwvYXJndW1lbnQ+CisgICAgICAgICAgICAgICAgPHJlZmVycmVkT3BlcmF0aW9uIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbl9DbGFzcy89Ii8+CisgICAgICAgICAgICAgIDwvaWZFeHByPgorICAgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgICAgPGxldFZhcmlhYmxlIG5hbWU9ImMiPgorICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgICAgICAgIDxpbml0RXhwcmVzc2lvbiB4c2k6dHlwZT0ib2NsLmVjb3JlOk9wZXJhdGlvbkNhbGxFeHAiPgorICAgICAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICA8c291cmNlIHhzaTp0eXBlPSJvY2wuZWNvcmU6VmFyaWFibGVFeHAiIG5hbWU9ImVsdCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtLyUuMS8lLjI3L2VsdCI+CisgICAgICAgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICAgICAgICAgICAgICAgIDwvc291cmNlPgorICAgICAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVFeHAiIGVUeXBlPSIvMjMvQ2xhc3MiPgorICAgICAgICAgICAgICAgICAgPHJlZmVycmVkVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICAgICAgICAgIDxyZWZlcnJlZE9wZXJhdGlvbiB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueV9DbGFzcy9vY2xBc1R5cGUiLz4KKyAgICAgICAgICAgICAgPC9pbml0RXhwcmVzc2lvbj4KKyAgICAgICAgICAgIDwvbGV0VmFyaWFibGU+CisgICAgICAgICAgPC9ib2R5PgorICAgICAgICAgIDxsb29wVmFyaWFibGUgbmFtZT0iZWx0Ij4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgICAgICAgICAgPC9sb29wVmFyaWFibGU+CisgICAgICAgICAgPGl0ZXJTZXQgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iIGVUeXBlPSIvMjAvU2VxdWVuY2UoTmFtZWRFbGVtZW50KSI+CisgICAgICAgICAgICA8ZGVmaW5pdGlvbiBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRDb21wb25lbnRNb2RlbHMiLz4KKyAgICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJtb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtL21vZGVsIj4KKyAgICAgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgICA8L2l0ZXJTZXQ+CisgICAgICAgIDwvYm9keT4KKyAgICAgICAgPGJvZHkgeHNpOnR5cGU9Im9jbC5lY29yZTpTdHJpbmdMaXRlcmFsRXhwIiBzdHJpbmdTeW1ib2w9IiYjeEQ7JiN4QTsmI3g5OyYjeDk7Ii8+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJtdGw6VGVtcGxhdGVJbnZvY2F0aW9uIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX21hY3JvY29tcG9uZW50X3J0bWMuZW10bCMvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZSIvPgorICAgICAgICAgIDxhcmd1bWVudCB4c2k6dHlwZT0ib2NsLmVjb3JlOlZhcmlhYmxlRXhwIiBuYW1lPSJtb2RlbCIgcmVmZXJyZWRWYXJpYWJsZT0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtL21vZGVsIj4KKyAgICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgICA8L2FyZ3VtZW50PgorICAgICAgICA8L2JvZHk+CisgICAgICAgIDxib2R5IHhzaTp0eXBlPSJvY2wuZWNvcmU6U3RyaW5nTGl0ZXJhbEV4cCIgc3RyaW5nU3ltYm9sPSImI3hEOyYjeEE7Ii8+CisgICAgICAgIDxpZkV4cHIgeHNpOnR5cGU9Im10bDpRdWVyeUludm9jYXRpb24iPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgICAgPGRlZmluaXRpb24gaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzAvaXNSb290TW9kZWwiLz4KKyAgICAgICAgICA8YXJndW1lbnQgeHNpOnR5cGU9Im9jbC5lY29yZTpWYXJpYWJsZUV4cCIgbmFtZT0ibW9kZWwiIHJlZmVycmVkVmFyaWFibGU9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS9tb2RlbCI+CisgICAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgICAgPC9hcmd1bWVudD4KKyAgICAgICAgPC9pZkV4cHI+CisgICAgICA8L2JvZHk+CisgICAgICA8cGFyYW1ldGVyIG5hbWU9Im1vZGVsIj4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgPC9wYXJhbWV0ZXI+CisgICAgPC9vd25lZE1vZHVsZUVsZW1lbnQ+CisgIDwvbXRsOk1vZHVsZT4KKyAgPGVjb3JlOkVQYWNrYWdlIG5hbWU9ImFkZGl0aW9ucyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTdHJpbmdfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSW50ZWdlcl9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUmVhbF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1JlYWwiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRU9iamVjdF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdlbmVyYXRlUlRNYXBzRGlhZ3JhbSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbSIvPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJtb2RlbCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRDb21wb25lbnRNb2RlbHMiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9jb21tb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuY29tbW9uL2Jpbi9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZ2VuZXJhdG9ycy9jb21tb24vbW1xdWVyaWVzL0FyY2hpdGVjdHVyZVF1ZXJpZXMuZW10bCMvMC9nZXRDb21wb25lbnRNb2RlbHMiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlNlcXVlbmNlVHlwZSIgaHJlZj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29tbW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmNvbW1vbi9iaW4vb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvY29tbW9uL21tcXVlcmllcy9BcmNoaXRlY3R1cmVRdWVyaWVzLmVtdGwjLzMvU2VxdWVuY2UoTmFtZWRFbGVtZW50KSIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibW9kZWwiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNNYWNyb0NvbXBvbmVudCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2lzTWFjcm9Db21wb25lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9Cb29sZWFuIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjbGFzcyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc1Jvb3RNb2RlbCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbW1vbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5jb21tb24vYmluL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2NvbW1vbi9tbXF1ZXJpZXMvQXJjaGl0ZWN0dXJlUXVlcmllcy5lbXRsIy8wL2lzUm9vdE1vZGVsIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQm9vbGVhbiIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZWx0Ij4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdlbmVyYXRlUlRNYXBzQ29tcG9uZW50Q3BwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX2NvbXBvbmVudF9jcHAuZW10bCMvMC9nZW5lcmF0ZVJUTWFwc0NvbXBvbmVudENwcCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYyI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icm9vdF9tb2RlbCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZW5lcmF0ZVJUTWFwc0NvbXBvbmVudEhwcCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9ImZpbGVzL2dlbmVyYXRlX3J0bWFwc19jb21wb25lbnRfaHBwLmVtdGwjLzAvZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRIcHAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImMiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InJvb3RfbW9kZWwiPgorICAgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvZU9wZXJhdGlvbnM+CisgICAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2VuZXJhdGVSVE1hcHNSb2JvdE1MUHJpbWl0aXZlRGF0YVR5cGVzIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3JvYm90bWxfcHJpbWl0aXZlX2RhdGF0eXBlc19oLmVtdGwjLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MUHJpbWl0aXZlRGF0YVR5cGVzIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJyb290X21vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdlbmVyYXRlUlRNYXBzUm9ib3RNTERhdGFUeXBlcyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9ImZpbGVzL2dlbmVyYXRlX3J0bWFwc19yb2JvdG1sX2RhdGF0eXBlc19oLmVtdGwjLzAvZ2VuZXJhdGVSVE1hcHNSb2JvdE1MRGF0YVR5cGVzIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJyb290X21vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdlbmVyYXRlUlRNYXBzTW9kZWxEYXRhVHlwZXMiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJmaWxlcy9nZW5lcmF0ZV9ydG1hcHNfbW9kZWxfZGF0YXR5cGVzX2guZW10bCMvMC9nZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJyb290X21vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdlbmVyYXRlUlRNYXBzTWFjcm9Db21wb25lbnRQYWNrYWdlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX21hY3JvY29tcG9uZW50X3J0bWMuZW10bCMvMC9nZW5lcmF0ZVJUTWFwc01hY3JvQ29tcG9uZW50UGFja2FnZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icm9vdF9tb2RlbCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJmaWxlcy9nZW5lcmF0ZV9ydG1hcHNfZGlhZ3JhbV9ydGQuZW10bCMvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW1SVEQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im1vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdlbmVyYXRlUlRNYXBzTWFrZWZpbGUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJmaWxlcy9nZW5lcmF0ZV9ydG1hcHNfbWFrZWZpbGUuZW10bCMvMC9nZW5lcmF0ZVJUTWFwc01ha2VmaWxlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJtb2RlbCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZW5lcmF0ZVJUTWFwc1Bja0luZm8iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJmaWxlcy9nZW5lcmF0ZV9ydG1hcHNfcGNraW5mby5lbXRsIy8wL2dlbmVyYXRlUlRNYXBzUGNrSW5mbyIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1N0cmluZyIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYU1vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdlbmVyYXRlUlRNYXBzVkMyMDA1UHJvamVjdFZDUFJPSiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9ImZpbGVzL2dlbmVyYXRlX3J0bWFwc192YzIwMDVfcHJvamVjdF92Y3Byb2ouZW10bCMvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwNVByb2plY3RWQ1BST0oiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im1vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdlbmVyYXRlUlRNYXBzVkMyMDA1U29sdXRpb25TTE4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJmaWxlcy9nZW5lcmF0ZV9ydG1hcHNfdmMyMDA1X3NvbHV0aW9uX3Nsbi5lbXRsIy8wL2dlbmVyYXRlUlRNYXBzVkMyMDA1U29sdXRpb25TTE4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im1vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdlbmVyYXRlUlRNYXBzVkMyMDA4UHJvamVjdFZDUFJPSiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0ib2NsLmVjb3JlOkNvbnN0cmFpbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJNVEwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9ImZpbGVzL2dlbmVyYXRlX3J0bWFwc192YzIwMDhfcHJvamVjdF92Y3Byb2ouZW10bCMvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAwOFByb2plY3RWQ1BST0oiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im1vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdlbmVyYXRlUlRNYXBzVkMyMDA4U29sdXRpb25TTE4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJmaWxlcy9nZW5lcmF0ZV9ydG1hcHNfdmMyMDA4X3NvbHV0aW9uX3Nsbi5lbXRsIy8wL2dlbmVyYXRlUlRNYXBzVkMyMDA4U29sdXRpb25TTE4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im1vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0oiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgICA8Y29udGVudHMgeHNpOnR5cGU9Im9jbC5lY29yZTpDb25zdHJhaW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iTVRMIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJmaWxlcy9nZW5lcmF0ZV9ydG1hcHNfdmMyMDEwX3Byb2plY3RfdmN4cHJvai5lbXRsIy8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0oiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlVHlwZSB4c2k6dHlwZT0ib2NsLmVjb3JlOlByaW1pdGl2ZVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9TdHJpbmciLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im1vZGVsIj4KKyAgICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8L2VPcGVyYXRpb25zPgorICAgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3ZjMjAxMF9wcm9qZWN0X3ZjeHByb2pfZmlsdGVycy5lbXRsIy8wL2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJtb2RlbCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZW5lcmF0ZVJUTWFwc1ZDMjAxMFNvbHV0aW9uU0xOIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJvY2wuZWNvcmU6Q29uc3RyYWludCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Ik1UTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iZmlsZXMvZ2VuZXJhdGVfcnRtYXBzX3ZjMjAxMF9zb2x1dGlvbl9zbG4uZW10bCMvMC9nZW5lcmF0ZVJUTWFwc1ZDMjAxMFNvbHV0aW9uU0xOIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJtb2RlbCI+CisgICAgICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9jbEFueV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL09jbEFueSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb2xsZWN0aW9uKFQpX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvQ29sbGVjdGlvbihUKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTZXF1ZW5jZShUKV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL1NlcXVlbmNlKFQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9yZGVyZWRTZXQoVClfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL29jbHN0ZGxpYi5lY29yZSMvMC9PcmRlcmVkU2V0KFQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik1vZGVsX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ2xhc3NfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFbGVtZW50X0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQcm9wZXJ0eV9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNvbm5lY3Rvcl9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Nvbm5lY3RvciIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQYXJhbWV0ZXJfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9QYXJhbWV0ZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ2xhc3NpZmllcl9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzaWZpZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUG9ydF9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvT0NMIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSW5zdGFuY2VTcGVjaWZpY2F0aW9uX0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9PQ0wiPgorICAgICAgICA8cmVmZXJlbmNlcyBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vSW5zdGFuY2VTcGVjaWZpY2F0aW9uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlBhY2thZ2VfQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvb2NsLzEuMS4wL09DTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9QYWNrYWdlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VDbGFzc2lmaWVycz4KKyAgPC9lY29yZTpFUGFja2FnZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9Im9jbC5lY29yZTpQcmltaXRpdmVUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL29jbC8xLjEuMC9vY2xzdGRsaWIuZWNvcmUjLzAvU3RyaW5nIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL01vZGVsIi8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8ZWNvcmU6RVBhY2thZ2UgbmFtZT0iY29sbGVjdGlvbnMiPgorICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9Im9jbC5lY29yZTpTZXF1ZW5jZVR5cGUiIG5hbWU9IlNlcXVlbmNlKE5hbWVkRWxlbWVudCkiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuTGlzdCI+CisgICAgICA8ZWxlbWVudFR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL05hbWVkRWxlbWVudCIvPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICA8L2Vjb3JlOkVQYWNrYWdlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9OYW1lZEVsZW1lbnQiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxlY29yZTpFUGFja2FnZSBuYW1lPSJ0eXBlcyI+CisgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0ib2NsLmVjb3JlOlR5cGVUeXBlIiBuYW1lPSJDbGFzcyI+CisgICAgICA8cmVmZXJyZWRUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgIDwvZUNsYXNzaWZpZXJzPgorICA8L2Vjb3JlOkVQYWNrYWdlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTmFtZWRFbGVtZW50Ii8+CisgIDwvb2NsLmVjb3JlOlZhcmlhYmxlPgorICA8b2NsLmVjb3JlOlZhcmlhYmxlIG5hbWU9InNlbGYiPgorICAgIDxlVHlwZSB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vTW9kZWwiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0iaSI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJvY2wuZWNvcmU6UHJpbWl0aXZlVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9vY2wvMS4xLjAvb2Nsc3RkbGliLmVjb3JlIy8wL0ludGVnZXIiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxvY2wuZWNvcmU6VmFyaWFibGUgbmFtZT0ic2VsZiI+CisgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Nb2RlbCIvPgorICA8L29jbC5lY29yZTpWYXJpYWJsZT4KKyAgPG9jbC5lY29yZTpWYXJpYWJsZSBuYW1lPSJzZWxmIj4KKyAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VPYmplY3QiLz4KKyAgPC9vY2wuZWNvcmU6VmFyaWFibGU+CisgIDxlY29yZTpFQW5ub3RhdGlvbiBzb3VyY2U9InBvc2l0aW9ucyI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4wIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0iPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMwMjMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTU4NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMDk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMwOTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMTUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU1NzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQ0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xLyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMxNzgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzE4MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMTgxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMyMTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4xL21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMjA2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMyMTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMjE0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMyMjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjQ2Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xLyUuMyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzIyMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMjUxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy44IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xLyUuMy9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzI0NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMjUwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy45IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xLyUuNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzI1NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMjYxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI0OCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS41Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMjYyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMyOTAiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjExIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xLyUuNS9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzI4NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMjg5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtLyUuMS8lLjYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMyOTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzMwMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjEzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xLyUuNyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzMwMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMzQxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtLyUuMS8lLjcvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMzMzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzM0MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS44Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMzQ0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMzNDgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjUyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4xNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtLyUuMS8lLjkiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMzNDkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzM4OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS45L21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMzgzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMzODgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xLyUuMTAiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMzOTIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzM5NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjE5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xLyUuMTEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMzOTciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzQzOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4xMS9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzQzMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNDM3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtLyUuMS8lLjEyIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNDQxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM0NDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjU0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yMiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtLyUuMS8lLjEzIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNDQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM0OTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjIzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xLyUuMTMvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM0ODgiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzQ5MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4xNCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzQ5NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNTA0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1NSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4xNSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzUwNSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNTQzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4yNiIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtLyUuMS8lLjE1L21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNTM3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM1NDIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xLyUuMTYiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM1NDYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzU1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNTciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjI4IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xLyUuMTciPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM1NTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzU4OSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMjkiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4xNy9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzU4MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNTg4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtLyUuMS8lLjE4Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNTkyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM1OTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjU4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zMSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtLyUuMS8lLjE5Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNTk3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM2MzUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjMyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xLyUuMTkvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM2MjkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzYzNCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4yMCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzYzOCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNjQ1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI1OSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4yMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzY0NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNjkyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zNSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtLyUuMS8lLjIxL21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNjg2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM2OTEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM2IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xLyUuMjIiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM2OTQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzY5OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNjEiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjM3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xLyUuMjMiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM2OTkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzczNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuMzgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4yMy9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzczMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNzM1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy4zOSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtLyUuMS8lLjI0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNzM5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM3NDMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjYyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtLyUuMS8lLjI1Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzNzQ0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjM3NzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xLyUuMjUvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjM3NzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzc3OCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDIiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4yNiI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzc4MiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzNzg2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI2MyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDMiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4yNyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTI2MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NTE0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI5NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4yNy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MzE4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU1MDQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijk4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtLyUuMS8lLjI3LyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTM2MSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NDkzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI5OSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNDYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4yNy8lLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTM5NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NDAxIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMDAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjQ3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xLyUuMjcvJS8lLyUuMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTQwMiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NDM3Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtLyUuMS8lLjI3LyUvJS8lLjEvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTQyOSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NDMwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy40OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtLyUuMS8lLjI3LyUvJS8lLjEvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU0MzEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTQzNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4yNy8lLyUvJS4yIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NDM5Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU0NDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEwMSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTEiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4yNy8lLyUvJS4zIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NDQ2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU0ODEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xLyUuMjcvJS8lLyUuMy9jIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NDczIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU0NzQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjUzIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xLyUuMjcvJS8lLyUuMy9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTQ3NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NDgwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41NCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtLyUuMS8lLjI3LyUvJS8lLjQiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU0ODMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTQ4NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMTAyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41NSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtLyUuMS8lLjI3LyUvJS8lLjUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUzNjUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTM5NCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4yNy8lLyUvJS41LyUiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUzNjYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTM4NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNTciIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4yNy8lLyUvJS41LyUvYyI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTM4MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1Mzg0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy41OCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtLyUuMS8lLjI3LyUvJS8lLjUvJS4xIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1Mzg4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUzOTMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjU5IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xLyUuMjcvJS9jIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MzIzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUzNTUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9Ijk4Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MCIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtLyUuMS8lLjI3LyUvYy8lIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MzM2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUzNTYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjYxIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xLyUuMjcvJS9jLyUvZWx0Ij4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1MzM2Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjUzMzkiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjYyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xLyUuMjcvJS9jLyUvJSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTM1MCIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MzU1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42MyIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtLyUuMS8lLjI3L2VsdCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTI2NiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1MjgzIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSI5NyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjQiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4yNy8lLjEiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUyODYiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTMxMSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjUiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4yNy8lLjEvbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjUzMDUiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTMxMCIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjYiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4yOCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTUxNiIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NTIwIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIxMDUiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjY3IiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vJS4xLyUuMjkiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjU1MjEiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iNTU2MyIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iMCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNjgiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4yOS9tb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iNTU1NyIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSI1NTYyIi8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy42OSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtLyUuMS8lLjMwIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSI1NTY1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjU1NjciLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjEwNyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJwb3NpdGlvbnMuNzAiIHJlZmVyZW5jZXM9Ii8wL2dlbmVyYXRlUlRNYXBzRGlhZ3JhbS8lLjEvJS4zMSI+CisgICAgICA8ZGV0YWlscyBrZXk9InN0YXJ0IiB2YWx1ZT0iMzE1NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJlbmQiIHZhbHVlPSIzMTc1Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImxpbmUiIHZhbHVlPSIwIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBvc2l0aW9ucy43MSIgcmVmZXJlbmNlcz0iLzAvZ2VuZXJhdGVSVE1hcHNEaWFncmFtLyUuMS8lLjMxL21vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0ic3RhcnQiIHZhbHVlPSIzMTY4Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9ImVuZCIgdmFsdWU9IjMxNzMiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibGluZSIgdmFsdWU9IjAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icG9zaXRpb25zLjcyIiByZWZlcmVuY2VzPSIvMC9nZW5lcmF0ZVJUTWFwc0RpYWdyYW0vbW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJzdGFydCIgdmFsdWU9IjMwNjIiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0iZW5kIiB2YWx1ZT0iMzA3NSIvPgorICAgICAgPGRldGFpbHMga2V5PSJsaW5lIiB2YWx1ZT0iNDAiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lY29yZTpFQW5ub3RhdGlvbj4KKzwveG1pOlhNST4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZ2VuZXJhdGVfcnRtYXBzLm10bCBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9nZW5lcmF0b3JzL2ludGVtcG9yYS9ydG1hcHMvZ2VuZXJhdGVfcnRtYXBzLm10bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wZTQ5NWJlCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2dlbmVyYXRvcnMvaW50ZW1wb3JhL3J0bWFwcy9nZW5lcmF0ZV9ydG1hcHMubXRsCkBAIC0wLDAgKzEsMTA4IEBACitbY29tbWVudCBlbmNvZGluZyA9IFVURi04IC9dCitbY29tbWVudF0KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIElOVEVNUE9SQSBTLkEuCisgKgorICogVGhpcyBzb2Z0d2FyZSBpcyBhIGNvbXB1dGVyIHByb2dyYW0gd2hvc2UgcHVycG9zZSBpcyB0byB0cmFuc2Zvcm0gUm9ib3RNTCBtb2RlbHMKKyAqIGludG8gUlRNYXBzIGRpYWdyYW1zIGFuZCBSVE1hcHMgY29tcG9uZW50cyB2aWEgc291cmNlIGNvZGUgZ2VuZXJhdGlvbiB0ZWNobmlxdWVzLgorICogCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBOaWNvbGFzIERVIExBQyAoSU5URU1QT1JBKSAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK1svY29tbWVudF0KK1ttb2R1bGUgZ2VuZXJhdGVfcnRtYXBzKCdodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMy4wLjAvVU1MJywgJ2h0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMScpXQorW2ltcG9ydCBvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmNvbW1vbjo6bW1xdWVyaWVzOjpHZW5lcmFsUXVlcmllcyAvXQorW2ltcG9ydCBvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmNvbW1vbjo6bW1xdWVyaWVzOjpBcmNoaXRlY3R1cmVRdWVyaWVzIC9dCitbaW1wb3J0IG9yZzo6ZWNsaXBzZTo6cGFweXJ1czo6cm9ib3RtbDo6Z2VuZXJhdG9yczo6Y29tbW9uOjptbXF1ZXJpZXM6OkRlcGxveW1lbnRRdWVyaWVzIC9dCitbaW1wb3J0IG9yZzo6ZWNsaXBzZTo6cGFweXJ1czo6cm9ib3RtbDo6Z2VuZXJhdG9yczo6aW50ZW1wb3JhOjpydG1hcHM6OmZpbGVzOjpnZW5lcmF0ZV9ydG1hcHNfY29tcG9uZW50X2NwcCAvXQorW2ltcG9ydCBvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmludGVtcG9yYTo6cnRtYXBzOjpmaWxlczo6Z2VuZXJhdGVfcnRtYXBzX2NvbXBvbmVudF9ocHAgL10KK1tpbXBvcnQgb3JnOjplY2xpcHNlOjpwYXB5cnVzOjpyb2JvdG1sOjpnZW5lcmF0b3JzOjppbnRlbXBvcmE6OnJ0bWFwczo6ZmlsZXM6OmdlbmVyYXRlX3J0bWFwc19yb2JvdG1sX3ByaW1pdGl2ZV9kYXRhdHlwZXNfaCAvXQorW2ltcG9ydCBvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmludGVtcG9yYTo6cnRtYXBzOjpmaWxlczo6Z2VuZXJhdGVfcnRtYXBzX3JvYm90bWxfZGF0YXR5cGVzX2ggL10KK1tpbXBvcnQgb3JnOjplY2xpcHNlOjpwYXB5cnVzOjpyb2JvdG1sOjpnZW5lcmF0b3JzOjppbnRlbXBvcmE6OnJ0bWFwczo6ZmlsZXM6OmdlbmVyYXRlX3J0bWFwc19tb2RlbF9kYXRhdHlwZXNfaCAvXQorW2ltcG9ydCBvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmludGVtcG9yYTo6cnRtYXBzOjpmaWxlczo6Z2VuZXJhdGVfcnRtYXBzX21hY3JvY29tcG9uZW50X3J0bWMgL10KK1tpbXBvcnQgb3JnOjplY2xpcHNlOjpwYXB5cnVzOjpyb2JvdG1sOjpnZW5lcmF0b3JzOjppbnRlbXBvcmE6OnJ0bWFwczo6ZmlsZXM6OmdlbmVyYXRlX3J0bWFwc19kaWFncmFtX3J0ZCAvXQorW2ltcG9ydCBvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmludGVtcG9yYTo6cnRtYXBzOjpmaWxlczo6Z2VuZXJhdGVfcnRtYXBzX21ha2VmaWxlIC9dCitbaW1wb3J0IG9yZzo6ZWNsaXBzZTo6cGFweXJ1czo6cm9ib3RtbDo6Z2VuZXJhdG9yczo6aW50ZW1wb3JhOjpydG1hcHM6OmZpbGVzOjpnZW5lcmF0ZV9ydG1hcHNfcGNraW5mbyAvXQorW2ltcG9ydCBvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmludGVtcG9yYTo6cnRtYXBzOjpmaWxlczo6Z2VuZXJhdGVfcnRtYXBzX3ZjMjAwNV9wcm9qZWN0X3ZjcHJvaiAvXSAKK1tpbXBvcnQgb3JnOjplY2xpcHNlOjpwYXB5cnVzOjpyb2JvdG1sOjpnZW5lcmF0b3JzOjppbnRlbXBvcmE6OnJ0bWFwczo6ZmlsZXM6OmdlbmVyYXRlX3J0bWFwc192YzIwMDVfc29sdXRpb25fc2xuIC9dCitbaW1wb3J0IG9yZzo6ZWNsaXBzZTo6cGFweXJ1czo6cm9ib3RtbDo6Z2VuZXJhdG9yczo6aW50ZW1wb3JhOjpydG1hcHM6OmZpbGVzOjpnZW5lcmF0ZV9ydG1hcHNfdmMyMDA4X3Byb2plY3RfdmNwcm9qIC9dIAorW2ltcG9ydCBvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmludGVtcG9yYTo6cnRtYXBzOjpmaWxlczo6Z2VuZXJhdGVfcnRtYXBzX3ZjMjAwOF9zb2x1dGlvbl9zbG4gL10KK1tpbXBvcnQgb3JnOjplY2xpcHNlOjpwYXB5cnVzOjpyb2JvdG1sOjpnZW5lcmF0b3JzOjppbnRlbXBvcmE6OnJ0bWFwczo6ZmlsZXM6OmdlbmVyYXRlX3J0bWFwc192YzIwMTBfcHJvamVjdF92Y3hwcm9qIC9dIAorW2ltcG9ydCBvcmc6OmVjbGlwc2U6OnBhcHlydXM6OnJvYm90bWw6OmdlbmVyYXRvcnM6OmludGVtcG9yYTo6cnRtYXBzOjpmaWxlczo6Z2VuZXJhdGVfcnRtYXBzX3ZjMjAxMF9wcm9qZWN0X3ZjeHByb2pfZmlsdGVycyAvXSAKK1tpbXBvcnQgb3JnOjplY2xpcHNlOjpwYXB5cnVzOjpyb2JvdG1sOjpnZW5lcmF0b3JzOjppbnRlbXBvcmE6OnJ0bWFwczo6ZmlsZXM6OmdlbmVyYXRlX3J0bWFwc192YzIwMTBfc29sdXRpb25fc2xuIC9dCisKK1t0ZW1wbGF0ZSBwdWJsaWMgZ2VuZXJhdGVSVE1hcHNEaWFncmFtKG1vZGVsIDogTW9kZWwpXQorW2NvbW1lbnQgQG1haW4vXQorCitbY29tbWVudF1SVE1hcHMgbWFpbiBkaWFncmFtIGdlbmVyYXRpb25bL2NvbW1lbnRdCisJW2lmIChpc1Jvb3RNb2RlbChtb2RlbCkpXQorCQlbZ2VuZXJhdGVSVE1hcHNEaWFncmFtUlREKG1vZGVsKS9dCisJCisJCVtnZW5lcmF0ZVJUTWFwc01ha2VmaWxlKG1vZGVsKSAvXQorCQorCQlbZ2VuZXJhdGVSVE1hcHNQY2tJbmZvKG1vZGVsKSAvXQorCQorCQlbZ2VuZXJhdGVSVE1hcHNWQzIwMDVQcm9qZWN0VkNQUk9KKG1vZGVsKSAvXQorCQlbZ2VuZXJhdGVSVE1hcHNWQzIwMDhQcm9qZWN0VkNQUk9KKG1vZGVsKSAvXQorCQlbZ2VuZXJhdGVSVE1hcHNWQzIwMTBQcm9qZWN0VkNYUFJPSihtb2RlbCkgL10KKwkJW2dlbmVyYXRlUlRNYXBzVkMyMDEwUHJvamVjdFZDWFBST0pGSUxURVJTKG1vZGVsKSAvXQorCQorCQlbZ2VuZXJhdGVSVE1hcHNWQzIwMDVTb2x1dGlvblNMTihtb2RlbCkgL10KKwkJW2dlbmVyYXRlUlRNYXBzVkMyMDA4U29sdXRpb25TTE4obW9kZWwpIC9dCisJCVtnZW5lcmF0ZVJUTWFwc1ZDMjAxMFNvbHV0aW9uU0xOKG1vZGVsKSAvXQorCQorCQlbZ2VuZXJhdGVSVE1hcHNSb2JvdE1MUHJpbWl0aXZlRGF0YVR5cGVzKG1vZGVsKS9dCisJCVtnZW5lcmF0ZVJUTWFwc1JvYm90TUxEYXRhVHlwZXMobW9kZWwpIC9dCisJCVtnZW5lcmF0ZVJUTWFwc01vZGVsRGF0YVR5cGVzKG1vZGVsKSAvXQorCisJCVtjb21tZW50XUZvciBhbGwgY2xhc3NlcyBpbiB0aGUgbW9kZWwsIGdlbmVyYXRlIGVpdGhlciBhIGNvbXBvbmVudCBjcHAgYW5kIGggc291cmNlIGNvZGUsIG9yIGEgbWFjcm8tY29tcG9uZW50LlsvY29tbWVudF0KKwkJW2NvbW1lbnRdCisJCVtmaWxlICgnem9iLnR4dCcsIGZhbHNlLCAnVVRGLTgnKV0KKwkJW2xldCBzZXEgOiBTZXF1ZW5jZShQYWNrYWdlKSAgPSBnZXREZXBsb3ltZW50UGxhblBhY2thZ2VzSW5Nb2RlbChtb2RlbCldCisJCVtmb3IgKHBjayA6IFBhY2thZ2UgfCBzZXEpXQorCQkJRm91bmQgYSBEZXBsb3ltZW50IFBsYW4gISEhIFlFZUVFSEFBQSAhISA6IFtwY2submFtZS9dCisJCVsvZm9yXQorCQlbL2xldF0KKwkJW2xldCBjb21wcyA6IFNlcXVlbmNlKENsYXNzKSA9IGdldERlZmluZWRDb21wb25lbnRzRm9yUGxhdGZvcm0obW9kZWwsJ3J0bWFwcycpXQorCQkJW2ZvciAoY29tcCA6IENsYXNzIHwgY29tcHMpXQorCQkJCUZvdW5kIGEgY2xhc3MgZGVwbG95ZWQgb24gUlRNYXBzOiBbY29tcC5uYW1lL10KKwkJCVsvZm9yXQorCQlbL2xldF0KKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKwkJW2xldCBjb21wcyA6IFNlcXVlbmNlKENsYXNzKSA9IGdldERlZmluZWRDb21wb25lbnRzRm9yUGxhdGZvcm0yKG1vZGVsLCdydG1hcHMnKV0KKwkJCVtmb3IgKGNvbXAgOiBDbGFzcyB8IGNvbXBzKV0KKwkJCQlGb3VuZCBhIGNsYXNzIGRlcGxveWVkIG9uIFJUTWFwczogW2NvbXAubmFtZS9dCisJCQlbL2Zvcl0KKwkJWy9sZXRdCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisJCVtsZXQgaW5zdHNwZWNzIDogU2VxdWVuY2UoSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSA9IGdldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNGb3JQbGF0Zm9ybShtb2RlbCwncnRtYXBzJyldCisJCQlbZm9yIChpbnN0c3BlYyA6IEluc3RhbmNlU3BlY2lmaWNhdGlvbiB8IGluc3RzcGVjcyldCisJCQkJRm91bmQgYW4gaW5zdGFuY2Ugc3BlYyBmb3IgUlRNYXBzOiBbaW5zdHNwZWMubmFtZS9dCisJCQlbL2Zvcl0KKwkJWy9sZXRdCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisJCVtsZXQgaW5zdHNwZWNzIDogU2VxdWVuY2UoSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSA9IGdldEluc3RhbmNlU3BlY2lmaWNhdGlvbnNGb3JQbGF0Zm9ybTIobW9kZWwsJ3J0bWFwcycpXQorCQkJW2ZvciAoaW5zdHNwZWMgOiBJbnN0YW5jZVNwZWNpZmljYXRpb24gfCBpbnN0c3BlY3MpXQorCQkJCUZvdW5kIGFuIGluc3RhbmNlIHNwZWMgZm9yIFJUTWFwczogW2luc3RzcGVjLm5hbWUvXQorCQkJWy9mb3JdCisJCVsvbGV0XQorCQlbL2ZpbGVdCisJCVsvY29tbWVudF0KKwkJW2ZvciAoZWx0OiBOYW1lZEVsZW1lbnQgfCBnZXRDb21wb25lbnRNb2RlbHMobW9kZWwpKV0KKwkJCVtsZXQgYyA6IENsYXNzID0gZWx0Lm9jbEFzVHlwZShDbGFzcyldCisJCQlbaWYgKGlzTWFjcm9Db21wb25lbnQoYykgPSBmYWxzZSldCisJCQkJW2dlbmVyYXRlUlRNYXBzQ29tcG9uZW50SHBwKGMsbW9kZWwpL10KKwkJCQlbZ2VuZXJhdGVSVE1hcHNDb21wb25lbnRDcHAoYyxtb2RlbCkvXQorCQkJWy9pZl0KKwkJCVsvbGV0XQorCQlbL2Zvcl0KKworCQlbZ2VuZXJhdGVSVE1hcHNNYWNyb0NvbXBvbmVudFBhY2thZ2UobW9kZWwpL10KKwlbL2lmXQorWy90ZW1wbGF0ZV0KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvdGFza3MvZ2VuZXJhdGVfcnRtYXBzLnhtbCBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvdGFza3MvZ2VuZXJhdGVfcnRtYXBzLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zOTMwYThiCi0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy90YXNrcy9nZW5lcmF0ZV9ydG1hcHMueG1sCkBAIC0wLDAgKzEsNzMgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8cHJvamVjdCBkZWZhdWx0PSJnZW5lcmF0ZV9ydG1hcHMiIG5hbWU9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMiPgorICAgIDxwcm9wZXJ0eSBuYW1lPSJFQ0xJUFNFX0hPTUUiIHZhbHVlPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9lY2xpcHNlXzQuMyIvPgorICAgIDxwcm9wZXJ0eSBuYW1lPSJFQ0xJUFNFX1dPUktTUEFDRSIgdmFsdWU9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL1VzZXJzL05pY29sYXMvd29ya3NwYWNlXzQuM19wcm90ZXVzIi8+CisKKyAgICA8IS0tIFRoZSBjbGFzc3BhdGggd2l0aCBvbmx5IHRoZSBkZXBlbmRlbmNpZXMgdXNlZCBieSB0aGUgcHJvamVjdCAtLT4KKyAgICA8cGF0aCBpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy5saWJyYXJ5Y2xhc3NwYXRoIj4KKyAgICAgICAgPHBhdGhlbGVtZW50IGxvY2F0aW9uPSIke0VDTElQU0VfV09SS1NQQUNFfS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzL2JpbiIvPgorICAgICAgICA8cGF0aGVsZW1lbnQgbG9jYXRpb249IiR7RUNMSVBTRV9IT01FfS9wbHVnaW5zL29yZy5lY2xpcHNlLmNvcmUucnVudGltZV8zLjkuMC52MjAxMzAzMjYtMTI1NS5qYXIiLz4KKyAgICAgICAgPHBhdGhlbGVtZW50IGxvY2F0aW9uPSIke0VDTElQU0VfSE9NRX0vcGx1Z2lucy9vcmcuZWNsaXBzZS5vc2dpXzMuOS4wLnYyMDEzMDUyOS0xNzEwLmphciIvPgorICAgICAgICA8cGF0aGVsZW1lbnQgbG9jYXRpb249IiR7RUNMSVBTRV9IT01FfS9wbHVnaW5zL29yZy5lY2xpcHNlLmVxdWlub3guY29tbW9uXzMuNi4yMDAudjIwMTMwNDAyLTE1MDUuamFyIi8+CisgICAgICAgIDxwYXRoZWxlbWVudCBsb2NhdGlvbj0iJHtFQ0xJUFNFX0hPTUV9L3BsdWdpbnMvb3JnLmVjbGlwc2UuY29yZS5qb2JzXzMuNS4zMDAudjIwMTMwNDI5LTE4MTMuamFyIi8+CisgICAgICAgIDxwYXRoZWxlbWVudCBsb2NhdGlvbj0iJHtFQ0xJUFNFX0hPTUV9L3BsdWdpbnMvb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLmNvbXBhdGliaWxpdHkucmVnaXN0cnlfMy41LjIwMC52MjAxMzA1MTQtMTI1Ni9ydW50aW1lX3JlZ2lzdHJ5X2NvbXBhdGliaWxpdHkuamFyIi8+CisgICAgICAgIDxwYXRoZWxlbWVudCBsb2NhdGlvbj0iJHtFQ0xJUFNFX0hPTUV9L3BsdWdpbnMvb3JnLmVjbGlwc2UuZXF1aW5veC5yZWdpc3RyeV8zLjUuMzAwLnYyMDEzMDMyNy0xNDQyLmphciIvPgorICAgICAgICA8cGF0aGVsZW1lbnQgbG9jYXRpb249IiR7RUNMSVBTRV9IT01FfS9wbHVnaW5zL29yZy5lY2xpcHNlLmVxdWlub3gucHJlZmVyZW5jZXNfMy41LjEwMC52MjAxMzA0MjItMTUzOC5qYXIiLz4KKyAgICAgICAgPHBhdGhlbGVtZW50IGxvY2F0aW9uPSIke0VDTElQU0VfSE9NRX0vcGx1Z2lucy9vcmcuZWNsaXBzZS5jb3JlLmNvbnRlbnR0eXBlXzMuNC4yMDAudjIwMTMwMzI2LTEyNTUuamFyIi8+CisgICAgICAgIDxwYXRoZWxlbWVudCBsb2NhdGlvbj0iJHtFQ0xJUFNFX0hPTUV9L3BsdWdpbnMvb3JnLmVjbGlwc2UuZXF1aW5veC5hcHBfMS4zLjEwMC52MjAxMzAzMjctMTQ0Mi5qYXIiLz4KKyAgICAgICAgPHBhdGhlbGVtZW50IGxvY2F0aW9uPSIke0VDTElQU0VfSE9NRX0vcGx1Z2lucy9vcmcuZWNsaXBzZS5lbWYuZWNvcmVfMi45LjAudjIwMTMwNTI4LTA3NDIuamFyIi8+CisgICAgICAgIDxwYXRoZWxlbWVudCBsb2NhdGlvbj0iJHtFQ0xJUFNFX0hPTUV9L3BsdWdpbnMvb3JnLmVjbGlwc2UuZW1mLmNvbW1vbl8yLjkuMC52MjAxMzA1MjgtMDc0Mi5qYXIiLz4KKyAgICAgICAgPHBhdGhlbGVtZW50IGxvY2F0aW9uPSIke0VDTElQU0VfSE9NRX0vcGx1Z2lucy9vcmcuZWNsaXBzZS5lbWYuZWNvcmUueG1pXzIuOS4wLnYyMDEzMDUyOC0wNzQyLmphciIvPgorICAgICAgICA8cGF0aGVsZW1lbnQgbG9jYXRpb249IiR7RUNMSVBTRV9IT01FfS9wbHVnaW5zL29yZy5lY2xpcHNlLm9jbF8zLjMuMC52MjAxMzA2MTAtMTMxNy5qYXIiLz4KKyAgICAgICAgPHBhdGhlbGVtZW50IGxvY2F0aW9uPSIke0VDTElQU0VfSE9NRX0vcGx1Z2lucy9scGcucnVudGltZS5qYXZhXzIuMC4xNy52MjAxMDA0MjcxNjQwLmphciIvPgorICAgICAgICA8cGF0aGVsZW1lbnQgbG9jYXRpb249IiR7RUNMSVBTRV9IT01FfS9wbHVnaW5zL29yZy5lY2xpcHNlLm9jbC5jb21tb25fMS4xLjAudjIwMTMwNTMxLTA1NDQuamFyIi8+CisgICAgICAgIDxwYXRoZWxlbWVudCBsb2NhdGlvbj0iJHtFQ0xJUFNFX0hPTUV9L3BsdWdpbnMvb3JnLmVjbGlwc2Uub2NsLmVjb3JlXzMuMy4wLnYyMDEzMDUyMC0xMjIyLmphciIvPgorICAgICAgICA8cGF0aGVsZW1lbnQgbG9jYXRpb249IiR7RUNMSVBTRV9IT01FfS9wbHVnaW5zL29yZy5lY2xpcHNlLmFjY2VsZW8uY29tbW9uXzMuNC4wLjIwMTMwNjEwMTQ1OC5qYXIiLz4KKyAgICAgICAgPHBhdGhlbGVtZW50IGxvY2F0aW9uPSIke0VDTElQU0VfSE9NRX0vcGx1Z2lucy9vcmcuZWNsaXBzZS5hY2NlbGVvLnBhcnNlcl8zLjQuMC4yMDEzMDYxMDE0NTguamFyIi8+CisgICAgICAgIDxwYXRoZWxlbWVudCBsb2NhdGlvbj0iJHtFQ0xJUFNFX0hPTUV9L3BsdWdpbnMvb3JnLmVjbGlwc2UuYWNjZWxlby5tb2RlbF8zLjQuMC4yMDEzMDYxMDE0NTguamFyIi8+CisgICAgICAgIDxwYXRoZWxlbWVudCBsb2NhdGlvbj0iJHtFQ0xJUFNFX0hPTUV9L3BsdWdpbnMvb3JnLmVjbGlwc2UuYWNjZWxlby5wcm9maWxlcl8zLjQuMC4yMDEzMDYxMDE0NTguamFyIi8+CisgICAgICAgIDxwYXRoZWxlbWVudCBsb2NhdGlvbj0iJHtFQ0xJUFNFX0hPTUV9L3BsdWdpbnMvb3JnLmVjbGlwc2UuYWNjZWxlby5lbmdpbmVfMy40LjAuMjAxMzA2MTAxNDU4LmphciIvPgorICAgICAgICA8cGF0aGVsZW1lbnQgbG9jYXRpb249IiR7RUNMSVBTRV9IT01FfS9wbHVnaW5zL29yZy5lY2xpcHNlLmVtZi5jb2RlZ2VuLmVjb3JlXzIuOS4wLnYyMDEzMDYxMC0wNDA2LmphciIvPgorICAgICAgICA8cGF0aGVsZW1lbnQgbG9jYXRpb249IiR7RUNMSVBTRV9IT01FfS9wbHVnaW5zL29yZy5lY2xpcHNlLmVtZi5jb2RlZ2VuXzIuOS4wLnYyMDEzMDYxMC0wNDA2LmphciIvPgorICAgICAgICA8cGF0aGVsZW1lbnQgbG9jYXRpb249IiR7RUNMSVBTRV9IT01FfS9wbHVnaW5zL29yZy5lY2xpcHNlLnVtbDIudW1sXzQuMS4wLnYyMDEzMDYxMC0wNzEyLmphciIvPgorICAgICAgICA8cGF0aGVsZW1lbnQgbG9jYXRpb249IiR7RUNMSVBTRV9IT01FfS9wbHVnaW5zL29yZy5lY2xpcHNlLnVtbDIuY29tbW9uXzEuOC4wLnYyMDEzMDYxMC0wNzEyLmphciIvPgorICAgICAgICA8cGF0aGVsZW1lbnQgbG9jYXRpb249IiR7RUNMSVBTRV9IT01FfS9wbHVnaW5zL29yZy5lY2xpcHNlLnVtbDIudHlwZXNfMS4xLjAudjIwMTMwNjEwLTA3MTIuamFyIi8+CisgICAgICAgIDxwYXRoZWxlbWVudCBsb2NhdGlvbj0iJHtFQ0xJUFNFX0hPTUV9L3BsdWdpbnMvb3JnLmVjbGlwc2UuZW1mLm1hcHBpbmcuZWNvcmUyeG1sXzIuNy4wLnYyMDEzMDYxMC0wNDA2LmphciIvPgorICAgICAgICA8cGF0aGVsZW1lbnQgbG9jYXRpb249IiR7RUNMSVBTRV9IT01FfS9wbHVnaW5zL29yZy5lY2xpcHNlLmVtZi52YWxpZGF0aW9uXzEuNy4wLjIwMTMwNjExMTM0MS5qYXIiLz4KKyAgICAgICAgPHBhdGhlbGVtZW50IGxvY2F0aW9uPSIke0VDTElQU0VfSE9NRX0vcGx1Z2lucy9vcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlc18zLjguMTAwLnYyMDEzMDUyMS0yMDI2LmphciIvPgorICAgICAgICA8cGF0aGVsZW1lbnQgbG9jYXRpb249IiR7RUNMSVBTRV9IT01FfS9wbHVnaW5zL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbF8wLjEwLjEudjIwMTMwNzIzMTI0My5qYXIiLz4KKyAgICA8L3BhdGg+CisKKyAgICA8cGF0aCBpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy5jbGFzc3BhdGgiPgorICAgICAgICA8cGF0aCByZWZpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy5saWJyYXJ5Y2xhc3NwYXRoIi8+CisgICAgPC9wYXRoPgorCisgICAgPCEtLSBUaGUgY2xhc3NwYXRoIHdpdGggb25seSB0aGUgamFycyBhdmFpbGFibGUgaW4gdGhlIHBsdWdpbiBmb2xkZXIgb2YgRWNsaXBzZSAtLT4KKyAgICA8cGF0aCBpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy5saWJyYXJ5Y2xhc3NwYXRoLmFsbGphcnMiPgorICAgICAgICA8cGF0aGVsZW1lbnQgbG9jYXRpb249Ii4uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvYmluIi8+CisgICAgICAgIDxmaWxlc2V0IGRpcj0iJHtFQ0xJUFNFX0hPTUV9L3BsdWdpbnMvIiBpbmNsdWRlcz0iKi5qYXIiLz4KKyAgICA8L3BhdGg+CisKKyAgICA8cGF0aCBpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy5jbGFzc3BhdGguYWxsamFycyI+CisgICAgICAgIDxwYXRoIHJlZmlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLmxpYnJhcnljbGFzc3BhdGguYWxsamFycyIvPgorICAgIDwvcGF0aD4KKworICAgIDwhLS0gVGhlIGRlZmF1bHQgdGFzayB3aXRoIHRoZSBqYXJzIHVzZWQgYnkgdGhpcyBwcm9qZWN0IC0tPgorICAgIDx0YXJnZXQgbmFtZT0iZ2VuZXJhdGVfcnRtYXBzIj4KKyAgICAgICAgPGphdmEgY2xhc3NuYW1lPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLkdlbmVyYXRlX3J0bWFwcyIgY2xhc3NwYXRocmVmPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLmNsYXNzcGF0aCI+CisgICAgICAgICAgICA8YXJnIHZhbHVlPSIke21vZGVsfSIvPgorICAgICAgICAgICAgPGFyZyB2YWx1ZT0iJHt0YXJnZXR9Ii8+CisgICAgICAgIDwvamF2YT4KKyAgICA8L3RhcmdldD4KKworICAgIDwhLS0KKyAgICAgICAgSW4gY2FzZSBvZiBwcm9ibGVtIHlvdSBjYW4gYWxzbyB0cnkgd2l0aCBhbGwgdGhlIGphciBhdmFpbGFibGUgaW4geW91ciBFY2xpcHNlCisgICAgICAgIEtlZXAgaW4gbWluZCB0aGF0IGhhdmluZyB0d28gdmVyc2lvbnMgb2YgdGhlIHNhbWUgamFyIGNhbiBjcmVhdGUgcHJvYmxlbXMKKyAgICAtLT4KKyAgICA8dGFyZ2V0IG5hbWU9ImdlbmVyYXRlX3J0bWFwcy5hbGxqYXJzIj4KKyAgICAgICAgPGphdmEgY2xhc3NuYW1lPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLkdlbmVyYXRlX3J0bWFwcyIgY2xhc3NwYXRocmVmPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLmNsYXNzcGF0aCI+CisgICAgICAgICAgICA8YXJnIHZhbHVlPSIke21vZGVsfSIvPgorICAgICAgICAgICAgPGFyZyB2YWx1ZT0iJHt0YXJnZXR9Ii8+CisgICAgICAgIDwvamF2YT4KKyAgICA8L3RhcmdldD4KKzwvcHJvamVjdD4KZGlmZiAtLWdpdCBhL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvdGFza3MvZ2VuZXJhdGVfcnRtYXBzVGFyZ2V0LnhtbCBiL2dlbmVyYXRvcnMvcnRtYXBzL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHMvdGFza3MvZ2VuZXJhdGVfcnRtYXBzVGFyZ2V0LnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMDQwZDg2Ci0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy90YXNrcy9nZW5lcmF0ZV9ydG1hcHNUYXJnZXQueG1sCkBAIC0wLDAgKzEsMTkgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+CisKKzwhLS0gUGxhY2UgdGhpcyBmaWxlIGluIHRoZSB0YXJnZXQgcHJvamVjdCBhbmQgY2FsbCBpdCB3aXRoICJFeHRlcm5hbCBUb29scyA+IFJ1biBBcyA+IEFudCBCdWlsZCIgLS0+Cis8IS0tIFlvdSBoYXZlIHRvIGNoYW5nZSB0aGUgTU9ERUwgYW5kIHRoZSBUQVJHRVQgdmFsdWVzIC0tPgorCis8cHJvamVjdCBiYXNlZGlyPSIuIiBkZWZhdWx0PSJnZW5lcmF0ZV9ydG1hcHNTYW1wbGUiIG5hbWU9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHNTYW1wbGUiPgorCTxpbXBvcnQgZmlsZT0iLi4vLi4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmdlbmVyYXRvcnMuaW50ZW1wb3JhLnJ0bWFwcy90YXNrcy9nZW5lcmF0ZV9ydG1hcHMueG1sIi8+CisKKyAgICA8IS0tIENoYW5nZSB0aGUgdmFsdWVzIG9mIE1PREVMIGFuZCBUQVJHRVQgdG8gcG9pbnQgdG8geW91ciBtb2RlbCBhbmQgb3V0cHV0IGZvbGRlciAtLT4KKwk8cHJvcGVydHkgbmFtZT0iTU9ERUwiIHZhbHVlPSIke2Jhc2VkaXJ9L21vZGVsL2ZpbGUueG1pIi8+CisJPHByb3BlcnR5IG5hbWU9IlRBUkdFVCIgdmFsdWU9IiR7YmFzZWRpcn0vc3JjLWdlbiIvPgorCisJPHRhcmdldCBuYW1lPSJnZW5lcmF0ZV9ydG1hcHNTYW1wbGUiIGRlc2NyaXB0aW9uPSJHZW5lcmF0ZSBmaWxlcyBpbiAnVEFSR0VUJyI+CisJCTxhbnRjYWxsIHRhcmdldD0iZ2VuZXJhdGVfcnRtYXBzIiA+CisJCQk8cGFyYW0gbmFtZT0ibW9kZWwiIHZhbHVlPSIke01PREVMfSIvPgorCQkJPHBhcmFtIG5hbWU9InRhcmdldCIgdmFsdWU9IiR7VEFSR0VUfSIvPgorCQk8L2FudGNhbGw+CisJPC90YXJnZXQ+Cis8L3Byb2plY3Q+CmRpZmYgLS1naXQgYS9nZW5lcmF0b3JzL3J0bWFwcy9wb20ueG1sIGIvZ2VuZXJhdG9ycy9ydG1hcHMvcG9tLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MjQ2ZWM0Ci0tLSAvZGV2L251bGwKKysrIGIvZ2VuZXJhdG9ycy9ydG1hcHMvcG9tLnhtbApAQCAtMCwwICsxLDE1IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHByb2plY3Q+CisJPG1vZGVsVmVyc2lvbj40LjAuMDwvbW9kZWxWZXJzaW9uPgorCTxwYXJlbnQ+CisJCTxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzPC9hcnRpZmFjdElkPgorCQk8Z3JvdXBJZD5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWw8L2dyb3VwSWQ+CisJCTx2ZXJzaW9uPjEuMi4wLVNOQVBTSE9UPC92ZXJzaW9uPgorCTwvcGFyZW50PgorCTxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLnJ0bWFwczwvYXJ0aWZhY3RJZD4KKwk8cGFja2FnaW5nPnBvbTwvcGFja2FnaW5nPgorCTxtb2R1bGVzPgorCQk8bW9kdWxlPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5nZW5lcmF0b3JzLmludGVtcG9yYS5ydG1hcHM8L21vZHVsZT4KKwkJPG1vZHVsZT5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZ2VuZXJhdG9ycy5pbnRlbXBvcmEucnRtYXBzLnVpPC9tb2R1bGU+CisJPC9tb2R1bGVzPgorPC9wcm9qZWN0PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50Ly5jbGFzc3BhdGggYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC8uY2xhc3NwYXRoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc5ODA0OGQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC8uY2xhc3NwYXRoCkBAIC0wLDAgKzEsNyBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxjbGFzc3BhdGg+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KMlNFLTEuNSIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLnBkZS5jb3JlLnJlcXVpcmVkUGx1Z2lucyIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJzcmMiIHBhdGg9InNyYy8iLz4KKwk8Y2xhc3NwYXRoZW50cnkga2luZD0ib3V0cHV0IiBwYXRoPSJ0YXJnZXQvY2xhc3NlcyIvPgorPC9jbGFzc3BhdGg+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC8ucHJvamVjdCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50Ly5wcm9qZWN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE1MzA0NjYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC8ucHJvamVjdApAQCAtMCwwICsxLDM0IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHByb2plY3REZXNjcmlwdGlvbj4KKwk8bmFtZT5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudDwvbmFtZT4KKwk8Y29tbWVudD48L2NvbW1lbnQ+CisJPHByb2plY3RzPgorCTwvcHJvamVjdHM+CisJPGJ1aWxkU3BlYz4KKwkJPGJ1aWxkQ29tbWFuZD4KKwkJCTxuYW1lPm9yZy5lY2xpcHNlLmpkdC5jb3JlLmphdmFidWlsZGVyPC9uYW1lPgorCQkJPGFyZ3VtZW50cz4KKwkJCTwvYXJndW1lbnRzPgorCQk8L2J1aWxkQ29tbWFuZD4KKwkJPGJ1aWxkQ29tbWFuZD4KKwkJCTxuYW1lPm9yZy5lY2xpcHNlLnBkZS5NYW5pZmVzdEJ1aWxkZXI8L25hbWU+CisJCQk8YXJndW1lbnRzPgorCQkJPC9hcmd1bWVudHM+CisJCTwvYnVpbGRDb21tYW5kPgorCQk8YnVpbGRDb21tYW5kPgorCQkJPG5hbWU+b3JnLmVjbGlwc2UucGRlLlNjaGVtYUJ1aWxkZXI8L25hbWU+CisJCQk8YXJndW1lbnRzPgorCQkJPC9hcmd1bWVudHM+CisJCTwvYnVpbGRDb21tYW5kPgorCQk8YnVpbGRDb21tYW5kPgorCQkJPG5hbWU+b3JnLmVjbGlwc2UubTJlLmNvcmUubWF2ZW4yQnVpbGRlcjwvbmFtZT4KKwkJCTxhcmd1bWVudHM+CisJCQk8L2FyZ3VtZW50cz4KKwkJPC9idWlsZENvbW1hbmQ+CisJPC9idWlsZFNwZWM+CisJPG5hdHVyZXM+CisJCTxuYXR1cmU+b3JnLmVjbGlwc2UubTJlLmNvcmUubWF2ZW4yTmF0dXJlPC9uYXR1cmU+CisJCTxuYXR1cmU+b3JnLmVjbGlwc2UucGRlLlBsdWdpbk5hdHVyZTwvbmF0dXJlPgorCQk8bmF0dXJlPm9yZy5lY2xpcHNlLmpkdC5jb3JlLmphdmFuYXR1cmU8L25hdHVyZT4KKwk8L25hdHVyZXM+Cis8L3Byb2plY3REZXNjcmlwdGlvbj4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5wcmVmcyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5wcmVmcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45OWYyNmMwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvLnNldHRpbmdzL29yZy5lY2xpcHNlLmNvcmUucmVzb3VyY2VzLnByZWZzCkBAIC0wLDAgKzEsMiBAQAorZWNsaXBzZS5wcmVmZXJlbmNlcy52ZXJzaW9uPTEKK2VuY29kaW5nLzxwcm9qZWN0Pj1VVEYtOApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQxNmY0ZmIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKQEAgLTAsMCArMSwxMSBAQAorZWNsaXBzZS5wcmVmZXJlbmNlcy52ZXJzaW9uPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4uaW5saW5lSnNyQnl0ZWNvZGU9ZW5hYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi50YXJnZXRQbGF0Zm9ybT0xLjUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udW51c2VkTG9jYWw9cHJlc2VydmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvbXBsaWFuY2U9MS41CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5saW5lTnVtYmVyPWdlbmVyYXRlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5sb2NhbFZhcmlhYmxlPWdlbmVyYXRlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5kZWJ1Zy5zb3VyY2VGaWxlPWdlbmVyYXRlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmFzc2VydElkZW50aWZpZXI9ZXJyb3IKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW51bUlkZW50aWZpZXI9ZXJyb3IKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnNvdXJjZT0xLjUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5tMmUuY29yZS5wcmVmcyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5tMmUuY29yZS5wcmVmcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mODk3YTdmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvLnNldHRpbmdzL29yZy5lY2xpcHNlLm0yZS5jb3JlLnByZWZzCkBAIC0wLDAgKzEsNCBAQAorYWN0aXZlUHJvZmlsZXM9CitlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQorcmVzb2x2ZVdvcmtzcGFjZVByb2plY3RzPXRydWUKK3ZlcnNpb249MQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvTUVUQS1JTkYvTUFOSUZFU1QuTUYgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC9NRVRBLUlORi9NQU5JRkVTVC5NRgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNTE1YTU4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvTUVUQS1JTkYvTUFOSUZFU1QuTUYKQEAgLTAsMCArMSwyMiBAQAorTWFuaWZlc3QtVmVyc2lvbjogMS4wCitSZXF1aXJlLUJ1bmRsZTogb3JnLmVjbGlwc2UudWksCisgb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLAorIG9yZy5lY2xpcHNlLmVtZjtidW5kbGUtdmVyc2lvbj0iMi42LjAiLAorIG9yZy5lY2xpcHNlLmVtZi5lY29yZSwKKyBvcmcuZWNsaXBzZS5nbWYucnVudGltZS5jb21tb24uY29yZSwKKyBvcmcuZWNsaXBzZS51bWwyLnVtbCwKKyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWw7YnVuZGxlLXZlcnNpb249IjEuMi4wIiwKKyBvcmcuZWNsaXBzZS5nZWYsCisgb3JnLmVjbGlwc2UuZ21mLnJ1bnRpbWUubm90YXRpb24uZWRpdCwKKyBvcmcuZWNsaXBzZS5lbWYudHJhbnNhY3Rpb24sCisgb3JnLmVjbGlwc2UuZ21mLnJ1bnRpbWUuZW1mLmNvbW1hbmRzLmNvcmUsCisgb3JnLmVjbGlwc2UucGFweXJ1cy5pbmZyYS5jb3JlO2J1bmRsZS12ZXJzaW9uPSIxLjIuMCIKK0J1bmRsZS1WZW5kb3I6ICVCdW5kbGUtVmVuZG9yCitCdW5kbGUtQWN0aXZhdGlvblBvbGljeTogbGF6eQorQnVuZGxlLVZlcnNpb246IDEuMi4wLnF1YWxpZmllcgorQnVuZGxlLUxvY2FsaXphdGlvbjogcGx1Z2luCitCdW5kbGUtTmFtZTogJUJ1bmRsZS1OYW1lCitCdW5kbGUtQWN0aXZhdG9yOiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC5BY3RpdmF0b3IKK0J1bmRsZS1NYW5pZmVzdFZlcnNpb246IDIKK0J1bmRsZS1TeW1ib2xpY05hbWU6IG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50O3NpbmdsZXRvbjo9dHJ1ZQorQnVuZGxlLVJlcXVpcmVkRXhlY3V0aW9uRW52aXJvbm1lbnQ6IEoyU0UtMS41CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC9hYm91dC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvYWJvdXQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kMzVkNWFlCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvYWJvdXQuaHRtbApAQCAtMCwwICsxLDI4IEBACis8IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBTdHJpY3QvL0VOIgorICAgICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS1zdHJpY3QuZHRkIj4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKzxoZWFkPgorPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMSIvPgorPHRpdGxlPkFib3V0PC90aXRsZT4KKzwvaGVhZD4KKzxib2R5IGxhbmc9IkVOLVVTIj4KKzxoMj5BYm91dCBUaGlzIENvbnRlbnQ8L2gyPgorIAorPHA+SnVuZSA1LCAyMDA3PC9wPgkKKzxoMz5MaWNlbnNlPC9oMz4KKworPHA+VGhlIEVjbGlwc2UgRm91bmRhdGlvbiBtYWtlcyBhdmFpbGFibGUgYWxsIGNvbnRlbnQgaW4gdGhpcyBwbHVnLWluICgmcXVvdDtDb250ZW50JnF1b3Q7KS4gIFVubGVzcyBvdGhlcndpc2UgCitpbmRpY2F0ZWQgYmVsb3csIHRoZSBDb250ZW50IGlzIHByb3ZpZGVkIHRvIHlvdSB1bmRlciB0aGUgdGVybXMgYW5kIGNvbmRpdGlvbnMgb2YgdGhlCitFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMS4wICgmcXVvdDtFUEwmcXVvdDspLiAgQSBjb3B5IG9mIHRoZSBFUEwgaXMgYXZhaWxhYmxlIAorYXQgPGEgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwiPmh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sPC9hPi4KK0ZvciBwdXJwb3NlcyBvZiB0aGUgRVBMLCAmcXVvdDtQcm9ncmFtJnF1b3Q7IHdpbGwgbWVhbiB0aGUgQ29udGVudC48L3A+CisKKzxwPklmIHlvdSBkaWQgbm90IHJlY2VpdmUgdGhpcyBDb250ZW50IGRpcmVjdGx5IGZyb20gdGhlIEVjbGlwc2UgRm91bmRhdGlvbiwgdGhlIENvbnRlbnQgaXMgCitiZWluZyByZWRpc3RyaWJ1dGVkIGJ5IGFub3RoZXIgcGFydHkgKCZxdW90O1JlZGlzdHJpYnV0b3ImcXVvdDspIGFuZCBkaWZmZXJlbnQgdGVybXMgYW5kIGNvbmRpdGlvbnMgbWF5CithcHBseSB0byB5b3VyIHVzZSBvZiBhbnkgb2JqZWN0IGNvZGUgaW4gdGhlIENvbnRlbnQuICBDaGVjayB0aGUgUmVkaXN0cmlidXRvcidzIGxpY2Vuc2UgdGhhdCB3YXMgCitwcm92aWRlZCB3aXRoIHRoZSBDb250ZW50LiAgSWYgbm8gc3VjaCBsaWNlbnNlIGV4aXN0cywgY29udGFjdCB0aGUgUmVkaXN0cmlidXRvci4gIFVubGVzcyBvdGhlcndpc2UKK2luZGljYXRlZCBiZWxvdywgdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIG9mIHRoZSBFUEwgc3RpbGwgYXBwbHkgdG8gYW55IHNvdXJjZSBjb2RlIGluIHRoZSBDb250ZW50CithbmQgc3VjaCBzb3VyY2UgY29kZSBtYXkgYmUgb2J0YWluZWQgYXQgPGEgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy8iPmh0dHA6Ly93d3cuZWNsaXBzZS5vcmc8L2E+LjwvcD4KKworPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvYnVpbGQucHJvcGVydGllcyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L2J1aWxkLnByb3BlcnRpZXMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGQ2NDhjYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L2J1aWxkLnByb3BlcnRpZXMKQEAgLTAsMCArMSw5IEBACitzb3VyY2UuLiA9IHNyYy8KK291dHB1dC4uID0gYmluLworYmluLmluY2x1ZGVzID0gTUVUQS1JTkYvLFwKKyAgICAgICAgICAgICAgIC4sXAorICAgICAgICAgICAgICAgcGx1Z2luLnhtbCxcCisgICAgICAgICAgICAgICBwbHVnaW4ucHJvcGVydGllcyxcCisgICAgICAgICAgICAgICBpY29ucy8sXAorICAgICAgICAgICAgICAgYWJvdXQuaHRtbAorc3JjLmluY2x1ZGVzID0gYWJvdXQuaHRtbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvaWNvbnMvYWxsb2NhdGlvbi5naWYgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC9pY29ucy9hbGxvY2F0aW9uLmdpZgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jZWQ2MzRmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvaWNvbnMvYWxsb2NhdGlvbi5naWYKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvaWNvbnMvZGVwUGxhbi5naWYgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC9pY29ucy9kZXBQbGFuLmdpZgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43MTJhMjQ4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvaWNvbnMvZGVwUGxhbi5naWYKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvcGx1Z2luLnByb3BlcnRpZXMgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC9wbHVnaW4ucHJvcGVydGllcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wY2VkNWM3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvcGx1Z2luLnByb3BlcnRpZXMKQEAgLTAsMCArMSwzIEBACisjUHJvcGVydGllcyBmaWxlIGZvciBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudAorQnVuZGxlLVZlbmRvciA9IEVjbGlwc2UgTW9kZWxpbmcgUHJvamVjdAorQnVuZGxlLU5hbWUgPSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudCAoSW5jdWJhdGlvbikKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC9wbHVnaW4ueG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvcGx1Z2luLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNzljOWE5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvcGx1Z2luLnhtbApAQCAtMCwwICsxLDEzNSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzw/ZWNsaXBzZSB2ZXJzaW9uPSIzLjQiPz4KKzxwbHVnaW4+CisgICAKKyAgIDxleHRlbnNpb24KKyAgICAgICAgIHBvaW50PSJvcmcuZWNsaXBzZS51aS5jb21tYW5kcyI+CisgICAgICA8Y29tbWFuZAorICAgICAgICAgICAgY2F0ZWdvcnlJZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5lZGl0b3IuY2F0ZWdvcnkiCisgICAgICAgICAgICBkZWZhdWx0SGFuZGxlcj0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQuaGFuZGxlcnMuQ3JlYXRlRGVwUGxhbkhhbmRsZXIiCisgICAgICAgICAgICBkZXNjcmlwdGlvbj0iQ3JlYXRlIGRlcGxveW1lbnQgcGxhbiIKKyAgICAgICAgICAgIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC5tZW51QWN0aW9ucy5DcmVhdGVEZXBQbGFuQ21kIgorICAgICAgICAgICAgbmFtZT0iZHVtbXkiPgorICAgICAgPC9jb21tYW5kPgorICAgICAgPGNvbW1hbmQKKyAgICAgICAgICAgIGNhdGVnb3J5SWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuZWRpdG9yLmNhdGVnb3J5IgorICAgICAgICAgICAgZGVmYXVsdEhhbmRsZXI9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50LmhhbmRsZXJzLkNyZWF0ZVBsYXRmb3JtSGFuZGxlciIKKyAgICAgICAgICAgIGRlc2NyaXB0aW9uPSJDcmVhdGUgcGxhdGZvcm0gZGVmaW5pdGlvbiIKKyAgICAgICAgICAgIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC5tZW51QWN0aW9ucy5DcmVhdGVQbGF0Zm9ybUNtZCIKKyAgICAgICAgICAgIG5hbWU9ImR1bW15Ij4KKyAgICAgIDwvY29tbWFuZD4KKyAgICAgIDxjb21tYW5kCisgICAgICAgICAgICBjYXRlZ29yeUlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLmVkaXRvci5jYXRlZ29yeSIKKyAgICAgICAgICAgIGRlZmF1bHRIYW5kbGVyPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC5oYW5kbGVycy5Db25maWd1cmVJbnN0YW5jZUhhbmRsZXIiCisgICAgICAgICAgICBkZXNjcmlwdGlvbj0iQ29uZmlndXJlIGluc3RhbmNlIgorICAgICAgICAgICAgaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50Lm1lbnVBY3Rpb25zLkNvbmZpZ3VyZUluc3RhbmNlQ21kIgorICAgICAgICAgICAgbmFtZT0iZHVtbXkiPgorICAgICAgPC9jb21tYW5kPgorICAgICAgPGNvbW1hbmQKKyAgICAgICAgICAgIGNhdGVnb3J5SWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuZWRpdG9yLmNhdGVnb3J5IgorICAgICAgICAgICAgZGVmYXVsdEhhbmRsZXI9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50LmhhbmRsZXJzLkFsbG9jYXRlSGFuZGxlciIKKyAgICAgICAgICAgIGRlc2NyaXB0aW9uPSJBbGxvY2F0ZSB0byBub2RlIgorICAgICAgICAgICAgaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50Lm1lbnVBY3Rpb25zLkFsbG9jYXRlQ21kIgorICAgICAgICAgICAgbmFtZT0iZHVtbXkiPgorICAgICAgPC9jb21tYW5kPgorICAgPC9leHRlbnNpb24+CisgICA8ZXh0ZW5zaW9uCisgICAgICAgICBwb2ludD0ib3JnLmVjbGlwc2UudWkubWVudXMiPgorICAgICAgPG1lbnVDb250cmlidXRpb24KKyAgICAgICAgICAgIGFsbFBvcHVwcz0iZmFsc2UiCisgICAgICAgICAgICBsb2NhdGlvblVSST0icG9wdXA6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5tb2RlbGV4cGxvcmVyLm1vZGVsZXhwbG9yZXIucG9wdXAiPgorICAgICAgICAgPGNvbW1hbmQKKyAgICAgICAgICAgICAgIGNvbW1hbmRJZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQubWVudUFjdGlvbnMuQ3JlYXRlRGVwUGxhbkNtZCIKKyAgICAgICAgICAgICAgIGljb249Imljb25zL2RlcFBsYW4uZ2lmIgorICAgICAgICAgICAgICAgaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50Lm1lbnVBY3Rpb25zLkNyZWF0ZURlcFBsYW5NZW51IgorICAgICAgICAgICAgICAgbGFiZWw9IkNyZWF0ZSBkZXBsb3ltZW50IHBsYW4iCisgICAgICAgICAgICAgICBtbmVtb25pYz0iZCIKKyAgICAgICAgICAgICAgIG1vZGU9IkZPUkNFX1RFWFQiCisgICAgICAgICAgICAgICBzdHlsZT0icHVzaCI+CisgICAgICAgICAgICA8dmlzaWJsZVdoZW4+CisJCQkJPHJlZmVyZW5jZQorICAgICAgICAgICAgICAgICAgICAgZGVmaW5pdGlvbklkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24uSXNQYXB5cnVzQWN0aXZlV2l0aFJvYm90bWwiPgorICAgICAgICAgICAgICAgPC9yZWZlcmVuY2U+CQkJCQkJCQorCQkJPC92aXNpYmxlV2hlbj4JCisgICAgICAgICA8L2NvbW1hbmQ+CisgICAgICAgICA8Y29tbWFuZAorICAgICAgICAgICAgICAgY29tbWFuZElkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC5tZW51QWN0aW9ucy5DcmVhdGVQbGF0Zm9ybUNtZCIKKyAgICAgICAgICAgICAgIGljb249Imljb25zL2RlcFBsYW4uZ2lmIgorICAgICAgICAgICAgICAgaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50Lm1lbnVBY3Rpb25zLkNyZWF0ZVBsYXRmb3JtTWVudSIKKyAgICAgICAgICAgICAgIGxhYmVsPSJDcmVhdGUgcGxhdGZvcm0gZGVmaW5pdGlvbiIKKyAgICAgICAgICAgICAgIG1uZW1vbmljPSJkIgorICAgICAgICAgICAgICAgbW9kZT0iRk9SQ0VfVEVYVCIKKyAgICAgICAgICAgICAgIHN0eWxlPSJwdXNoIj4KKyAgICAgICAgICAgPHZpc2libGVXaGVuPgorCQkJCTxyZWZlcmVuY2UKKyAgICAgICAgICAgICAgICAgICAgIGRlZmluaXRpb25JZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLklzUGFweXJ1c0FjdGl2ZVdpdGhSb2JvdG1sIj4KKyAgICAgICAgICAgICAgIDwvcmVmZXJlbmNlPgkJCQkJCQkKKwkJCTwvdmlzaWJsZVdoZW4+CQorICAgICAgICAgPC9jb21tYW5kPgorICAgICAgICAgCisgICAgICAgICAgPGNvbW1hbmQKKyAgICAgICAgICAgICAgIGNvbW1hbmRJZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQubWVudUFjdGlvbnMuQWxsb2NhdGVDbWQiCisgICAgICAgICAgICAgICBpY29uPSJpY29ucy9hbGxvY2F0aW9uLmdpZiIKKyAgICAgICAgICAgICAgIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC5tZW51QWN0aW9ucy5BbGxvY2F0ZU1lbnUiCisgICAgICAgICAgICAgICBsYWJlbD0iQWxsb2NhdGUgdG8gbm9kZSIKKyAgICAgICAgICAgICAgIG1uZW1vbmljPSJBIgorICAgICAgICAgICAgICAgbW9kZT0iRk9SQ0VfVEVYVCIKKyAgICAgICAgICAgICAgIHN0eWxlPSJwdXNoIj4KKyAgICAgICAgICAgPHZpc2libGVXaGVuPgorCQkJCTxyZWZlcmVuY2UKKyAgICAgICAgICAgICAgICAgICAgIGRlZmluaXRpb25JZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLklzUGFweXJ1c0FjdGl2ZVdpdGhSb2JvdG1sIj4KKyAgICAgICAgICAgICAgIDwvcmVmZXJlbmNlPgkJCQkJCQkKKwkJCTwvdmlzaWJsZVdoZW4+CQorICAgICAgICAgPC9jb21tYW5kPgorICAgICAgICAgIDwvbWVudUNvbnRyaWJ1dGlvbj4KKyAgICAgICAgICAgPG1lbnVDb250cmlidXRpb24KKyAgICAgICAgICAgIGFsbFBvcHVwcz0iZmFsc2UiCisgICAgICAgICAgICBsb2NhdGlvblVSST0icG9wdXA6b3JnLmVjbGlwc2UuZ21mLnJ1bnRpbWUuZGlhZ3JhbS51aS5EaWFncmFtRWRpdG9yQ29udGV4dE1lbnUiPgorICAgICAgICAgPGNvbW1hbmQKKyAgICAgICAgICAgICAgIGNvbW1hbmRJZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQubWVudUFjdGlvbnMuQ3JlYXRlRGVwUGxhbkNtZCIKKyAgICAgICAgICAgICAgIGljb249Imljb25zL2RlcFBsYW4uZ2lmIgorICAgICAgICAgICAgICAgaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50Lm1lbnVBY3Rpb25zLkNyZWF0ZURlcFBsYW5NZW51IgorICAgICAgICAgICAgICAgbGFiZWw9IkNyZWF0ZSBkZXBsb3ltZW50IHBsYW4iCisgICAgICAgICAgICAgICBtbmVtb25pYz0iZCIKKyAgICAgICAgICAgICAgIG1vZGU9IkZPUkNFX1RFWFQiCisgICAgICAgICAgICAgICBzdHlsZT0icHVzaCI+CisgICAgICAgICAgICA8dmlzaWJsZVdoZW4+CisJCQkJPHJlZmVyZW5jZQorICAgICAgICAgICAgICAgICAgICAgZGVmaW5pdGlvbklkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24uSXNQYXB5cnVzQWN0aXZlV2l0aFJvYm90bWwiPgorICAgICAgICAgICAgICAgPC9yZWZlcmVuY2U+CQkJCQkJCQorCQkJPC92aXNpYmxlV2hlbj4JCisgICAgICAgICA8L2NvbW1hbmQ+CisgICAgICAgICA8Y29tbWFuZAorICAgICAgICAgICAgICAgY29tbWFuZElkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC5tZW51QWN0aW9ucy5DcmVhdGVQbGF0Zm9ybUNtZCIKKyAgICAgICAgICAgICAgIGljb249Imljb25zL2RlcFBsYW4uZ2lmIgorICAgICAgICAgICAgICAgaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50Lm1lbnVBY3Rpb25zLkNyZWF0ZVBsYXRmb3JtTWVudSIKKyAgICAgICAgICAgICAgIGxhYmVsPSJDcmVhdGUgcGxhdGZvcm0gZGVmaW5pdGlvbiIKKyAgICAgICAgICAgICAgIG1uZW1vbmljPSJkIgorICAgICAgICAgICAgICAgbW9kZT0iRk9SQ0VfVEVYVCIKKyAgICAgICAgICAgICAgIHN0eWxlPSJwdXNoIj4KKyAgICAgICAgICAgIDx2aXNpYmxlV2hlbj4KKwkJCQk8cmVmZXJlbmNlCisgICAgICAgICAgICAgICAgICAgICBkZWZpbml0aW9uSWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi5Jc1BhcHlydXNBY3RpdmVXaXRoUm9ib3RtbCI+CisgICAgICAgICAgICAgICA8L3JlZmVyZW5jZT4JCQkJCQkJCisJCQk8L3Zpc2libGVXaGVuPgkKKyAgICAgICAgIDwvY29tbWFuZD4KKyAgICAgICAgIDxjb21tYW5kCisgICAgICAgICAgICAgICBjb21tYW5kSWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50Lm1lbnVBY3Rpb25zLkFsbG9jYXRlQ21kIgorICAgICAgICAgICAgICAgaWNvbj0iaWNvbnMvYWxsb2NhdGlvbi5naWYiCisgICAgICAgICAgICAgICBpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQubWVudUFjdGlvbnMuQWxsb2NhdGVNZW51IgorICAgICAgICAgICAgICAgbGFiZWw9IkFsbG9jYXRlIHRvIG5vZGUiCisgICAgICAgICAgICAgICBtbmVtb25pYz0iQSIKKyAgICAgICAgICAgICAgIG1vZGU9IkZPUkNFX1RFWFQiCisgICAgICAgICAgICAgICBzdHlsZT0icHVzaCI+CisgICAgICAgICAgICA8dmlzaWJsZVdoZW4+CisJCQkJPHJlZmVyZW5jZQorICAgICAgICAgICAgICAgICAgICAgZGVmaW5pdGlvbklkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24uSXNQYXB5cnVzQWN0aXZlV2l0aFJvYm90bWwiPgorICAgICAgICAgICAgICAgPC9yZWZlcmVuY2U+CQkJCQkJCQorCQkJPC92aXNpYmxlV2hlbj4JCisgICAgICAgICA8L2NvbW1hbmQ+CisgICAgICAgICA8L21lbnVDb250cmlidXRpb24+CisKKyAgICAgICAgICAKKyAgICAgICAgIDwvZXh0ZW5zaW9uPgorCis8L3BsdWdpbj4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3BvbS54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC9wb20ueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmViOWIxODUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC9wb20ueG1sCkBAIC0wLDAgKzEsMTEgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8cHJvamVjdD4KKwk8bW9kZWxWZXJzaW9uPjQuMC4wPC9tb2RlbFZlcnNpb24+CisJPHBhcmVudD4KKwkJPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBhcmVudDwvYXJ0aWZhY3RJZD4KKwkJPGdyb3VwSWQ+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sPC9ncm91cElkPgorCQk8dmVyc2lvbj4xLjIuMC1TTkFQU0hPVDwvdmVyc2lvbj4KKwk8L3BhcmVudD4KKwk8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudDwvYXJ0aWZhY3RJZD4KKwk8cGFja2FnaW5nPmVjbGlwc2UtcGx1Z2luPC9wYWNrYWdpbmc+Cis8L3Byb2plY3Q+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L0FjdGl2YXRvci5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L0FjdGl2YXRvci5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAzZjVkNTAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RlcGxveW1lbnQvQWN0aXZhdG9yLmphdmEKQEAgLTAsMCArMSw2NSBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTMgQ0VBIExJU1QuCisgKgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgU2FhZGlhIERob3VpYiAoQ0VBIExJU1QpIHNhYWRpYS5kaG91aWJAY2VhLmZyIC0gSW5pdGlhbCBBUEkgYW5kIGltcGxlbWVudGF0aW9uCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50OworCitpbXBvcnQgb3JnLmVjbGlwc2UudWkucGx1Z2luLkFic3RyYWN0VUlQbHVnaW47CitpbXBvcnQgb3JnLm9zZ2kuZnJhbWV3b3JrLkJ1bmRsZUNvbnRleHQ7CisKKy8qKgorICogVGhlIGFjdGl2YXRvciBjbGFzcyBjb250cm9scyB0aGUgcGx1Zy1pbiBsaWZlIGN5Y2xlCisgKi8KK3B1YmxpYyBjbGFzcyBBY3RpdmF0b3IgZXh0ZW5kcyBBYnN0cmFjdFVJUGx1Z2luIHsKKworCS8vIFRoZSBwbHVnLWluIElECisJcHVibGljIHN0YXRpYyBmaW5hbCBTdHJpbmcgUExVR0lOX0lEID0gIm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50IjsgLy8kTk9OLU5MUy0xJAorCisJLy8gVGhlIHNoYXJlZCBpbnN0YW5jZQorCXByaXZhdGUgc3RhdGljIEFjdGl2YXRvciBwbHVnaW47CisKKwkvKioKKwkgKiBUaGUgY29uc3RydWN0b3IKKwkgKi8KKwlwdWJsaWMgQWN0aXZhdG9yKCkgeworCX0KKworCS8qCisJICogKG5vbi1KYXZhZG9jKQorCSAqCisJICogQHNlZSBvcmcuZWNsaXBzZS51aS5wbHVnaW4uQWJzdHJhY3RVSVBsdWdpbiNzdGFydChvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQ29udGV4dCkKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBzdGFydChCdW5kbGVDb250ZXh0IGNvbnRleHQpIHRocm93cyBFeGNlcHRpb24geworCQlzdXBlci5zdGFydChjb250ZXh0KTsKKwkJcGx1Z2luID0gdGhpczsKKwl9CisKKwkvKgorCSAqIChub24tSmF2YWRvYykKKwkgKgorCSAqIEBzZWUgb3JnLmVjbGlwc2UudWkucGx1Z2luLkFic3RyYWN0VUlQbHVnaW4jc3RvcChvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQ29udGV4dCkKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBzdG9wKEJ1bmRsZUNvbnRleHQgY29udGV4dCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCXBsdWdpbiA9IG51bGw7CisJCXN1cGVyLnN0b3AoY29udGV4dCk7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgc2hhcmVkIGluc3RhbmNlCisJICoKKwkgKiBAcmV0dXJuIHRoZSBzaGFyZWQgaW5zdGFuY2UKKwkgKi8KKwlwdWJsaWMgc3RhdGljIEFjdGl2YXRvciBnZXREZWZhdWx0KCkgeworCQlyZXR1cm4gcGx1Z2luOworCX0KKworfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L0FsbG9jVXRpbHMuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9BbGxvY1V0aWxzLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjUxMGYxNAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9BbGxvY1V0aWxzLmphdmEKQEAgLTAsMCArMSwyODQgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIENFQSBMSVNULgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBEaG91aWIgKENFQSBMSVNUKSBzYWFkaWEuZGhvdWliQGNlYS5mciAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudDsKKworaW1wb3J0IGphdmEudXRpbC5JdGVyYXRvcjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuVW5pcXVlRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsbG9jYXRlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkFic3RyYWN0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzaWZpZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuRGlyZWN0ZWRSZWxhdGlvbnNoaXA7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5JbnN0YW5jZVNwZWNpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuTmFtZWRFbGVtZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLk5vZGU7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5VTUxQYWNrYWdlOworCisKKworcHVibGljIGNsYXNzIEFsbG9jVXRpbHMgeworCisJLyoqCisJICogUmV0cmlldmUgYSBsaXN0IG9mIG5vZGVzIHRvIHdoaWNoIHRoZSBpbnN0YW5jZSBpcyBhbGxvY2F0ZWQgdG8gKm9yKgorCSAqIHRvIHdoaWNoIG9uZSBvZiB0aGUgY29udGFpbmVkIGluc3RhbmNlcyBpcyBhbGxvY2F0ZWQgdG8gKHJlY3Vyc2l2ZWx5KQorCSAqCisJICogQHBhcmFtIGluc3RhbmNlCisJICogQHJldHVybiBhIGxpc3Qgb2Ygbm9kZXMKKwkgKi8KKwlwdWJsaWMgc3RhdGljIEVMaXN0PEluc3RhbmNlU3BlY2lmaWNhdGlvbj4gZ2V0QWxsTm9kZXMoSW5zdGFuY2VTcGVjaWZpY2F0aW9uIGluc3RhbmNlKSB7CisJCUVMaXN0PEluc3RhbmNlU3BlY2lmaWNhdGlvbj4gbm9kZUxpc3QgPSBnZXROb2RlcyhpbnN0YW5jZSk7CisJCWZvciAoSW5zdGFuY2VTcGVjaWZpY2F0aW9uIGNvbnRhaW5lZEluc3RhbmNlIDogRGVwVXRpbHMuZ2V0Q29udGFpbmVkSW5zdGFuY2VzKGluc3RhbmNlKSkgeworCQkJbm9kZUxpc3QuYWRkQWxsKGdldEFsbE5vZGVzKGNvbnRhaW5lZEluc3RhbmNlKSk7CisJCX0KKwkJcmV0dXJuIG5vZGVMaXN0OworCX0KKworCS8qKgorCSAqIFJldHJpZXZlIGEgbGlzdCBvZiBub2RlcyB0byB3aGljaCB0aGUgaW5zdGFuY2UgaXMgYWxsb2NhdGVkIHRvICpvcioKKwkgKiB0byB3aGljaCBvbmUgb2YgdGhlIGNvbnRhaW5pbmcgaW5zdGFuY2VzIGlzIGV4cGxpY2l0bHkgYWxsb2NhdGVkCisJICoKKwkgKiBAcGFyYW0gaW5zdGFuY2UKKwkgKiBAcmV0dXJuIGEgbGlzdCBvZiBub2RlcworCSAqLworCXB1YmxpYyBzdGF0aWMgRUxpc3Q8SW5zdGFuY2VTcGVjaWZpY2F0aW9uPiBnZXRBbGxOb2Rlc09yVGhyZWFkc1BhcmVudChJbnN0YW5jZVNwZWNpZmljYXRpb24gaW5zdGFuY2UpIHsKKwkJRUxpc3Q8SW5zdGFuY2VTcGVjaWZpY2F0aW9uPiBub2RlTGlzdCA9IGdldE5vZGVzT3JUaHJlYWRzKGluc3RhbmNlKTsKKwkJUGFja2FnZSBjZHAgPSBpbnN0YW5jZS5nZXROZWFyZXN0UGFja2FnZSgpOworCQkvLyBUT0RPOiBub3QgdmVyeSBlZmZpY2llbnQ6IGxvb3AgZWFjaCB0aW1lIG92ZXIgYWxsIGluc3RhbmNlIHNwZWNpZmljYXRpb25zCisJCWZvciAoTmFtZWRFbGVtZW50IHBhcmVudE5FIDogY2RwLmdldE1lbWJlcnMoKSkgeworCQkJaWYgKHBhcmVudE5FIGluc3RhbmNlb2YgSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSB7CisJCQkJLy8gcG9zc2libGUgcGFyZW50IGluc3RhbmNlIHNwZWNpZmljYXRpb24KKwkJCQlJbnN0YW5jZVNwZWNpZmljYXRpb24gcGFyZW50SVMgPSAoSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSBwYXJlbnRORTsKKwkJCQlpZiAoRGVwVXRpbHMuZ2V0Q29udGFpbmVkSW5zdGFuY2VzKHBhcmVudElTKS5jb250YWlucyhpbnN0YW5jZSkpIHsKKwkJCQkJbm9kZUxpc3QuYWRkQWxsKGdldEFsbE5vZGVzT3JUaHJlYWRzUGFyZW50KHBhcmVudElTKSk7CisJCQkJfQorCQkJfQorCQl9CisJCXJldHVybiBub2RlTGlzdDsKKwl9CisKKwlwdWJsaWMgc3RhdGljIEluc3RhbmNlU3BlY2lmaWNhdGlvbiBnZXROb2RlKEluc3RhbmNlU3BlY2lmaWNhdGlvbiBpbnN0YW5jZSkgeworCQlFTGlzdDxJbnN0YW5jZVNwZWNpZmljYXRpb24+IG5vZGVMaXN0ID0gZ2V0Tm9kZXMoaW5zdGFuY2UpOworCQlpZiAobm9kZUxpc3Quc2l6ZSgpICE9IDApIHsKKwkJCXJldHVybiBub2RlTGlzdC5nZXQoMCk7CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJcHVibGljIHN0YXRpYyBJbnN0YW5jZVNwZWNpZmljYXRpb24gZ2V0Tm9kZU9yVGhyZWFkKEluc3RhbmNlU3BlY2lmaWNhdGlvbiBpbnN0YW5jZU9yVGhyZWFkKSB7CisJCUVMaXN0PEluc3RhbmNlU3BlY2lmaWNhdGlvbj4gbm9kZUxpc3QgPSBnZXROb2Rlc09yVGhyZWFkcyhpbnN0YW5jZU9yVGhyZWFkKTsKKwkJaWYgKG5vZGVMaXN0LnNpemUoKSAhPSAwKSB7CisJCQlyZXR1cm4gbm9kZUxpc3QuZ2V0KDApOworCQl9CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFRoaXMgbWV0aG9kIHJldHVybnMgYSBsaXN0IG9mIG5vZGVzIHdoZW4gZ2l2ZW4gYW4gaW5zdGFuY2UuCisJICogSXQgaXMgYmFzZWQgb24gTUFSVEUgQWxsb2NhdGlvbiAoYSBzdGVyZW90eXBlZCBhYnN0cmFjdGlvbikgd2hpY2ggaXMgYSBnZW5lcmljCisJICogbWVjaGFuaXNtIHRvIGRlcGxveSBVTUwgZWxlbWVudHMgdG8gbm9kZXMuCisJICoKKwkgKiBAcGFyYW0gaW5zdGFuY2VPclRocmVhZAorCSAqICAgICAgICAgICAgVGhlIGluc3RhbmNlIHRoYXQgc2hvdWxkIGJlIGRlcGxveWVkCisJICogQHJldHVybgorCSAqLworCXB1YmxpYyBzdGF0aWMgRUxpc3Q8SW5zdGFuY2VTcGVjaWZpY2F0aW9uPiBnZXROb2Rlc09yVGhyZWFkcyhOYW1lZEVsZW1lbnQgaW5zdGFuY2VPclRocmVhZCkgeworCQlFTGlzdDxJbnN0YW5jZVNwZWNpZmljYXRpb24+IG5vZGVMaXN0ID0gbmV3IFVuaXF1ZUVMaXN0PEluc3RhbmNlU3BlY2lmaWNhdGlvbj4oKTsKKworCQlmb3IgKERpcmVjdGVkUmVsYXRpb25zaGlwIHJlbGF0aW9uc2hpcCA6IGluc3RhbmNlT3JUaHJlYWQuZ2V0U291cmNlRGlyZWN0ZWRSZWxhdGlvbnNoaXBzKFVNTFBhY2thZ2UuZUlOU1RBTkNFLmdldEFic3RyYWN0aW9uKCkpKSB7CisJCQlBYnN0cmFjdGlvbiBhYnN0cmFjdGlvbiA9IChBYnN0cmFjdGlvbikgcmVsYXRpb25zaGlwOworCQkJaWYgKFN0VXRpbHMuaXNBcHBsaWVkKGFic3RyYWN0aW9uLCBBbGxvY2F0ZS5jbGFzcykpIHsKKwkJCQlmb3IgKEVsZW1lbnQgdGFyZ2V0IDogYWJzdHJhY3Rpb24uZ2V0VGFyZ2V0cygpKSB7CisJCQkJCWlmICh0YXJnZXQgaW5zdGFuY2VvZiBJbnN0YW5jZVNwZWNpZmljYXRpb24pIHsKKwkJCQkJCW5vZGVMaXN0LmFkZCgoSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSB0YXJnZXQpOworCQkJCQl9CisJCQkJfQorCQkJfQorCQl9CisJCXJldHVybiBub2RlTGlzdDsKKwl9CisKKwkvKioKKwkgKiBUaGlzIG1ldGhvZCByZXR1cm5zIGEgbGlzdCBvZiBub2RlcyB3aGVuIGdpdmVuIGFuIGluc3RhbmNlLgorCSAqIEl0IGlzIGJhc2VkIG9uIE1BUlRFIEFsbG9jYXRpb24gKGEgc3RlcmVvdHlwZWQgYWJzdHJhY3Rpb24pIHdoaWNoIGlzIGEgZ2VuZXJpYworCSAqIG1lY2hhbmlzbSB0byBkZXBsb3kgVU1MIGVsZW1lbnRzIHRvIG5vZGVzLgorCSAqCisJICogQHBhcmFtIGluc3RhbmNlT3JUaHJlYWQKKwkgKiAgICAgICAgICAgIFRoZSBpbnN0YW5jZSB0aGF0IHNob3VsZCBiZSBkZXBsb3llZAorCSAqIEByZXR1cm4KKwkgKi8KKwlwdWJsaWMgc3RhdGljIEVMaXN0PEluc3RhbmNlU3BlY2lmaWNhdGlvbj4gZ2V0Tm9kZXMoTmFtZWRFbGVtZW50IGluc3RhbmNlT3JUaHJlYWQpIHsKKwkJRUxpc3Q8SW5zdGFuY2VTcGVjaWZpY2F0aW9uPiBub2RlTGlzdCA9IG5ldyBVbmlxdWVFTGlzdDxJbnN0YW5jZVNwZWNpZmljYXRpb24+KCk7CisJCUVMaXN0PEluc3RhbmNlU3BlY2lmaWNhdGlvbj4gbm9kZU9yVGhyZWFkcyA9IGdldE5vZGVzT3JUaHJlYWRzKGluc3RhbmNlT3JUaHJlYWQpOworCQlmb3IgKEluc3RhbmNlU3BlY2lmaWNhdGlvbiBub2RlT3JUaHJlYWQgOiBub2RlT3JUaHJlYWRzKQorCQl7CisJCQlDbGFzc2lmaWVyIG5vZGVPclRocmVhZEMgPSBEZXBVdGlscy5nZXRDbGFzc2lmaWVyKG5vZGVPclRocmVhZCk7CisJCQkvLyBpZihTdFV0aWxzLmlzQXBwbGllZChub2RlT3JUaHJlYWRDLCBTd1NjaGVkdWxhYmxlUmVzb3VyY2UuY2xhc3MpKSB7CisJCQkvLyAvLyB0cmVhZCBjYXNlIHRoYXQgaW5zdGFuY2UgaXMgYWxsb2NhdGVkIHRvIGEgdGhyZWFkCisJCQkvLyAvLyBmb2xsb3cgYWxsb2NhdGlvbiBvZiBUaHJlYWQKKwkJCS8vIG5vZGVMaXN0LmFkZChnZXROb2RlKG5vZGVPclRocmVhZCkpOworCQkJLy8gfQorCQkJLy8gZWxzZSB7CisJCQlub2RlTGlzdC5hZGQobm9kZU9yVGhyZWFkKTsKKwkJCS8vIH0KKwkJfQorCQlyZXR1cm4gbm9kZUxpc3Q7CisJfQorCisJLyoqCisJICogVGhpcyBtZXRob2QgdXBkYXRlcyAoYW5kIG9wdGlvbmFsbHkgcmVtb3ZlcykgdGhlIGFsbG9jYXRpb25zIG9mIGFuIGluc3RhbmNlCisJICoKKwkgKiBAcGFyYW0gaW5zdGFuY2UKKwkgKiAgICAgICAgICAgIFRoZSBpbnN0YW5jZSB0aGF0IHNob3VsZCBiZSBkZXBsb3llZAorCSAqIEBwYXJhbSBvbGROb2RlCisJICogICAgICAgICAgICB0aGUgb2xkIG5vZGUgYWxsb2NhdGlvbgorCSAqIEBwYXJhbSBuZXdOb2RlCisJICogICAgICAgICAgICB0aGUgbmV3IG5vZGUgYWxsb2NhdGlvbiwgbWF5IGJlIG51bGwgdG8gaW5kaWNhdGUgcmVtb3ZhbAorCSAqIEByZXR1cm4KKwkgKi8KKwlwdWJsaWMgc3RhdGljIEVMaXN0PE5vZGU+IHVwZGF0ZUFsbG9jYXRpb24oSW5zdGFuY2VTcGVjaWZpY2F0aW9uIGluc3RhbmNlLCBJbnN0YW5jZVNwZWNpZmljYXRpb24gb2xkTm9kZSwgSW5zdGFuY2VTcGVjaWZpY2F0aW9uIG5ld05vZGUpIHsKKwkJRUxpc3Q8Tm9kZT4gbm9kZUxpc3QgPSBuZXcgVW5pcXVlRUxpc3Q8Tm9kZT4oKTsKKworCQlJdGVyYXRvcjxEaXJlY3RlZFJlbGF0aW9uc2hpcD4gcmVsU2hpcEl0ID0KKwkJCQlpbnN0YW5jZS5nZXRTb3VyY2VEaXJlY3RlZFJlbGF0aW9uc2hpcHMoVU1MUGFja2FnZS5lSU5TVEFOQ0UuZ2V0QWJzdHJhY3Rpb24oKSkuaXRlcmF0b3IoKTsKKworCQl3aGlsZSAocmVsU2hpcEl0Lmhhc05leHQoKSkgeworCQkJQWJzdHJhY3Rpb24gYWJzdHJhY3Rpb24gPSAoQWJzdHJhY3Rpb24pIHJlbFNoaXBJdC5uZXh0KCk7CisJCQlpZiAoU3RVdGlscy5pc0FwcGxpZWQoYWJzdHJhY3Rpb24sIEFsbG9jYXRlLmNsYXNzKSkgeworCQkJCUVMaXN0PE5hbWVkRWxlbWVudD4gc3VwcGxpZXJzID0gYWJzdHJhY3Rpb24uZ2V0U3VwcGxpZXJzKCk7IC8vIHVzZSBzdXBwbGllcnMgaW5zdGVhZCBvZiB0YXJnZXRzIChkZXJpdmVkKQorCQkJCWZvciAoaW50IGluZGV4ID0gMDsgaW5kZXggPCBzdXBwbGllcnMuc2l6ZSgpOyBpbmRleCsrKSB7CisJCQkJCWlmIChzdXBwbGllcnMuZ2V0KGluZGV4KSA9PSBvbGROb2RlKSB7CisJCQkJCQlpZiAobmV3Tm9kZSA9PSBudWxsKSB7CisJCQkJCQkJLy8gcmVtb3ZlIHJlbGF0aW9uc2hpcCBjb21wbGV0ZWx5LCBzaW5jZSB3ZSBhc3N1bWUgYSBzaW5nbGUgdGFyZ2V0CisJCQkJCQkJLy8gKGNhbm5vdCBjYWxsIHJlbW92ZSBvbiByZWxTaGlwSXQsIHNpbmNlIGxpc3QgaXMgZGVyaXZlZCkKKwkJCQkJCQlhYnN0cmFjdGlvbi5kZXN0cm95KCk7CisJCQkJCQl9IGVsc2UgeworCQkJCQkJCXN1cHBsaWVycy5zZXQoaW5kZXgsIG5ld05vZGUpOworCQkJCQkJfQorCQkJCQkJYnJlYWs7CisJCQkJCX0KKwkJCQl9CisJCQl9CisJCX0KKwkJcmV0dXJuIG5vZGVMaXN0OworCX0KKworCS8vIC8qKgorCS8vICogUmV0cmlldmUgYSBsaXN0IG9mIG5vZGVzIHRvIHdoaWNoIHRoZSBpbnN0YW5jZSBpcyBhbGxvY2F0ZWQgdG8gKm9yKgorCS8vICogdG8gd2hpY2ggb25lIG9mIHRoZSBjb250YWluZWQgaW5zdGFuY2VzIGlzIGFsbG9jYXRlZCB0byAocmVjdXJzaXZlbHkpCisJLy8gKgorCS8vICogQHBhcmFtIGluc3RhbmNlCisJLy8gKiBAcGFyYW0gQQorCS8vICogcG9ydCBvZiB0aGUgY29tcG9zaXRlLiBDb250YWluZWQgaW5zdGFuY2VzIGFyZSBleGFtaW5lZCBvbmx5IGlmCisJLy8gKiB0aGV5IGhhdmUgYSBjb25uZWN0aW9uIHdpdGggdGhpcyBwb3J0LgorCS8vICogQHJldHVybiBhIGxpc3Qgb2Ygbm9kZXMKKwkvLyAqLworCS8vIHB1YmxpYyBzdGF0aWMgRUxpc3Q8SW5zdGFuY2VTcGVjaWZpY2F0aW9uPiBnZXRBbGxOb2Rlc0ZvclBvcnQoSW5zdGFuY2VTcGVjaWZpY2F0aW9uIGluc3RhbmNlLCBQb3J0IHBvcnQpIHsKKwkvLyBFTGlzdDxJbnN0YW5jZVNwZWNpZmljYXRpb24+IG5vZGVMaXN0ID0gZ2V0Tm9kZXMoaW5zdGFuY2UpOworCS8vIENsYXNzaWZpZXIgY29tcG9zaXRlID0gRGVwVXRpbHMuZ2V0Q2xhc3NpZmllcihpbnN0YW5jZSk7CisJLy8gaWYoY29tcG9zaXRlIGluc3RhbmNlb2YgQ2xhc3MpIHsKKwkvLyBDbGFzcyBjb21wb3NpdGVDTCA9IChDbGFzcyljb21wb3NpdGU7CisJLy8gZm9yKFNsb3Qgc2xvdCA6IGluc3RhbmNlLmdldFNsb3RzKCkpIHsKKwkvLyBQcm9wZXJ0eSBjb250YWluZWRQcm9wZXJ0eSA9IChQcm9wZXJ0eSlzbG90LmdldERlZmluaW5nRmVhdHVyZSgpOworCS8vCisJLy8gZm9yKENvbm5lY3RvciBjb25uZWN0aW9uIDogY29tcG9zaXRlQ0wuZ2V0T3duZWRDb25uZWN0b3JzKCkpIHsKKwkvLyAvLyBpcyBvbmUgY29ubmVjdG9yIGVuZCB0YXJnZXRlZCBhdCB0aGUgY29udGFpbmVkUHJvcGVydHkgPworCS8vIENvbm5lY3RvckVuZCBlbmQgPSBDb25uZWN0b3JVdGlscy5jb25uRW5kRm9yUGFydChjb25uZWN0aW9uLCBjb250YWluZWRQcm9wZXJ0eSk7CisJLy8gaWYoZW5kID09IG51bGwpCisJLy8gY29udGludWU7CisJLy8KKwkvLyAvLyBkb2VzIHRoZSBjb25uZWN0b3IgYXQgdGhlIHNhbWUgY29ubmVjdCB0aGUgY29tcG9zaXRlJ3MgcG9ydD8KKwkvLyBpZihDb25uZWN0b3JVdGlscy5jb25uZWN0c1BvcnQoY29ubmVjdGlvbiwgcG9ydCkpIHsKKwkvLyBQb3J0IGNvbnRhaW5lZFBvcnQgPSAoUG9ydCllbmQuZ2V0Um9sZSgpOworCS8vIG5vZGVMaXN0LmFkZEFsbChnZXRBbGxOb2Rlc0ZvclBvcnQoRGVwVXRpbHMuZ2V0SW5zdGFuY2Uoc2xvdCksIGNvbnRhaW5lZFBvcnQpKTsKKwkvLyB9CisJLy8gfQorCS8vIH0KKwkvLyB9CisJLy8gcmV0dXJuIG5vZGVMaXN0OworCS8vIH0KKworCXB1YmxpYyBzdGF0aWMgYm9vbGVhbiBhbGxvY2F0ZShJbnN0YW5jZVNwZWNpZmljYXRpb24gaW5zdGFuY2UsIEluc3RhbmNlU3BlY2lmaWNhdGlvbiBub2RlKSB7CisJCVBhY2thZ2UgY2RwID0gKFBhY2thZ2UpIGluc3RhbmNlLmdldE93bmVyKCk7CisJCUFic3RyYWN0aW9uIGFsbG9jYXRpb24gPSAoQWJzdHJhY3Rpb24pCisJCQkJY2RwLmNyZWF0ZVBhY2thZ2VkRWxlbWVudCgiYWxsb2NhdGUgdG8gIiArIG5vZGUuZ2V0TmFtZSgpLCBVTUxQYWNrYWdlLmVJTlNUQU5DRS5nZXRBYnN0cmFjdGlvbigpKTsKKwkJaWYgKFN0VXRpbHMuYXBwbHkoYWxsb2NhdGlvbiwgQWxsb2NhdGUuY2xhc3MpID09IG51bGwpIHsKKwkJCS8vIHN0ZXJlb3R5cGUgYXBwbGljYXRpb24gZmFpbGVkCisJCQlyZXR1cm4gZmFsc2U7CisJCX0KKwkJYWxsb2NhdGlvbi5nZXRDbGllbnRzKCkuYWRkKGluc3RhbmNlKTsKKwkJYWxsb2NhdGlvbi5nZXRTdXBwbGllcnMoKS5hZGQobm9kZSk7CisJCXJldHVybiB0cnVlOworCX0KKworCS8vIC8qKgorCS8vICogQXNzaWduIG5vZGUgbmFtZSB0byBsZWFmcworCS8vICoKKwkvLyAqIEBwYXJhbSBpbnN0YW5jZQorCS8vICogQHBhcmFtIEEKKwkvLyAqIHBvcnQgb2YgdGhlIGNvbXBvc2l0ZS4gQ29udGFpbmVkIGluc3RhbmNlcyBhcmUgZXhhbWluZWQgb25seSBpZiB0aGUKKwkvLyAqIGhhdmUgYSBjb25uZWN0aW9uIHdpdGggdGhpcyBwb3J0LiBJZiBudWxsLCBubyBzdWItaW5zdGFuY2VzIGFyZSBleGFtaW5lZAorCS8vICogQHBhcmFtIG5vZGVzCisJLy8gKiBBIGxpc3Qgb2Ygbm9kZXMgdG8gd2hpY2ggbGVhZnMgYXJlIGFsbG9jYXRlZAorCS8vICovCisJLy8gcHVibGljIHN0YXRpYyB2b2lkIHByb3BhZ2F0ZU5vZGVzVmlhUG9ydChJbnN0YW5jZVNwZWNpZmljYXRpb24gaW5zdGFuY2UsIFBvcnQgcG9ydCwgRUxpc3Q8SW5zdGFuY2VTcGVjaWZpY2F0aW9uPiBub2RlcykgeworCS8vIGlmKGluc3RhbmNlID09IG51bGwpIHsKKwkvLyByZXR1cm47CisJLy8gfQorCS8vIEVMaXN0PFNsb3Q+IHNsb3RzID0gaW5zdGFuY2UuZ2V0U2xvdHMoKTsKKwkvLyBDbGFzcyBjb21wb3NpdGUgPSBEZXBVdGlscy5nZXRJbXBsZW1lbnRhdGlvbihpbnN0YW5jZSk7CisJLy8gLyoKKwkvLyAqIENvbXBvbmVudEltcGwgY29tcG9uZW50SW1wbCA9CisJLy8gKiBTdFV0aWxzLmdldEFwcGxpY2F0aW9uKGNvbXBvc2l0ZSwgQ29tcG9uZW50SW1wbC5jbGFzcyk7CisJLy8gKiBpZighKChjb21wb25lbnRJbXBsICE9IG51bGwpICYmIGNvbXBvbmVudEltcGwuaXNJc0Fzc2VtYmx5KCkpKSB7CisJLy8gKiAvLyBkbyBub3Qgc2V0IG5vZGVzIG9uIGFuIGFzc2VtYmx5CisJLy8gKiAvLyBob3ctdG8gYXNzdXJlIHRvIHNldCBvbmx5IGxlYWZzPworCS8vICogZm9yKEluc3RhbmNlU3BlY2lmaWNhdGlvbiBub2RlIDogbm9kZXMpIHsKKwkvLyAqIEFsbG9jVXRpbHMuYWxsb2NhdGUoaW5zdGFuY2UsIG5vZGUpOworCS8vICogfQorCS8vICogfQorCS8vICovCisJLy8gaWYoKGNvbXBvc2l0ZSAhPSBudWxsKSAmJiAocG9ydCAhPSBudWxsKSkgeworCS8vIENsYXNzIGNvbXBvc2l0ZUNMID0gKENsYXNzKWNvbXBvc2l0ZTsKKwkvLyBmb3IoU2xvdCBzbG90IDogc2xvdHMpIHsKKwkvLyBQcm9wZXJ0eSBjb250YWluZWRQcm9wZXJ0eSA9IChQcm9wZXJ0eSlzbG90LmdldERlZmluaW5nRmVhdHVyZSgpOworCS8vCisJLy8gLy8gRkNNLlBhcnQgZmNtUGFydCA9IFN0VXRpbHMuZ2V0QXBwbGljYXRpb24oY29udGFpbmVkUHJvcGVydHksIEZDTS5QYXJ0LmNsYXNzKTsKKwkvLyAvLyBpZihmY21QYXJ0ICE9IG51bGwpIHsKKwkvLyAvLyBFTGlzdDxQb3J0PiBjb2xvY2F0ZVdpdGhQb3J0ID0gZmNtUGFydC5nZXRDb2xvY2F0ZVdpdGhQb3J0KCk7CisJLy8gLy8gLy8gaXMgdGhlIHBvcnQgd2l0aGluIHRoZSBsaXN0PworCS8vIC8vIGlmKFV0aWxzLmdldE5hbWVkRWxlbWVudEZyb21MaXN0KGNvbG9jYXRlV2l0aFBvcnQsIHBvcnQuZ2V0TmFtZSgpKSAhPSBudWxsKSB7CisJLy8gLy8gLy8gY29tcGFyZSBxdWFsaWZpZWQgbmFtZSwgc2luY2UgY29udGFpbmVkUG9ydCAoc3RlcmVvdHlwZSBhdHRyaWJ1dGUpCisJLy8gLy8gLy8gcG9pbnRzIHRvIGEgc291cmNlIG1vZGVsIGVsZW1lbnQKKwkvLyAvLyBwcm9wYWdhdGVOb2Rlc1ZpYVBvcnQoRGVwVXRpbHMuZ2V0SW5zdGFuY2Uoc2xvdCksIHBvcnQsIG5vZGVzKTsKKwkvLyAvLyBjb250aW51ZTsKKwkvLyAvLyB9CisJLy8gLy8gfQorCS8vIGZvcihDb25uZWN0b3IgY29ubmVjdGlvbiA6IGNvbXBvc2l0ZUNMLmdldE93bmVkQ29ubmVjdG9ycygpKSB7CisJLy8gaWYoQ29ubmVjdG9yVXRpbHMuY29ubmVjdHNQb3J0KGNvbm5lY3Rpb24sIHBvcnQpKSB7CisJLy8gTG9nLmxvZyhMb2cuSU5GT19NU0csIExvZy5UUkFGT19DT05ORUNUT1IsICJjb25uZWN0b3I6ICIgKyBjb25uZWN0aW9uLmdldE5hbWUoKSk7CisJLy8gTG9nLmxvZyhMb2cuSU5GT19NU0csIExvZy5UUkFGT19DT05ORUNUT1IsICJlbmQxOiAiICsgY29ubmVjdGlvbi5nZXRFbmRzKCkuZ2V0KDApLmdldFBhcnRXaXRoUG9ydCgpKTsKKwkvLyBMb2cubG9nKExvZy5JTkZPX01TRywgTG9nLlRSQUZPX0NPTk5FQ1RPUiwgImVuZDI6ICIgKyBjb25uZWN0aW9uLmdldEVuZHMoKS5nZXQoMSkuZ2V0UGFydFdpdGhQb3J0KCkpOworCS8vIENvbm5lY3RvckVuZCBlbmQgPSBDb25uZWN0b3JVdGlscy5jb25uRW5kRm9yUGFydChjb25uZWN0aW9uLCBjb250YWluZWRQcm9wZXJ0eSk7CisJLy8gLy8gb3RoZXIgY29ubmVjdG9yIGVuZCB0YXJnZXRlZCBhdCBjb250YWluZWRQcm9wZXJ0eT8KKwkvLyBpZihlbmQgIT0gbnVsbCkgeworCS8vIFBvcnQgY29udGFpbmVkUG9ydCA9IChQb3J0KWVuZC5nZXRSb2xlKCk7CisJLy8gcHJvcGFnYXRlTm9kZXNWaWFQb3J0KERlcFV0aWxzLmdldEluc3RhbmNlKHNsb3QpLCBjb250YWluZWRQb3J0LCBub2Rlcyk7CisJLy8gfQorCS8vIH0KKwkvLyB9CisJLy8gfQorCS8vIH0KKwkvLyB9Cit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RlcGxveW1lbnQvQ29tbWFuZFN1cHBvcnQuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9Db21tYW5kU3VwcG9ydC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUzNmFmZDYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RlcGxveW1lbnQvQ29tbWFuZFN1cHBvcnQuamF2YQpAQCAtMCwwICsxLDEwNCBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTMgQ0VBIExJU1QuCisgKgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgU2FhZGlhIERob3VpYiAoQ0VBIExJU1QpIHNhYWRpYS5kaG91aWJAY2VhLmZyIC0gSW5pdGlhbCBBUEkgYW5kIGltcGxlbWVudGF0aW9uCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQ7CisKK2ltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbnM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5jb3JlLmNvbW1hbmRzLkV4ZWN1dGlvbkV4Y2VwdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5jb3JlLmNvbW1hbmRzLm9wZXJhdGlvbnMuSU9wZXJhdGlvbkhpc3Rvcnk7CitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5jb21tYW5kcy5vcGVyYXRpb25zLk9wZXJhdGlvbkhpc3RvcnlGYWN0b3J5OworaW1wb3J0IG9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5JQWRhcHRhYmxlOworaW1wb3J0IG9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5JUHJvZ3Jlc3NNb25pdG9yOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi50cmFuc2FjdGlvbi5UcmFuc2FjdGlvbmFsRWRpdGluZ0RvbWFpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5nbWYucnVudGltZS5jb21tb24uY29yZS5jb21tYW5kLkNvbW1hbmRSZXN1bHQ7CitpbXBvcnQgb3JnLmVjbGlwc2UuZ21mLnJ1bnRpbWUuZW1mLmNvbW1hbmRzLmNvcmUuY29tbWFuZC5BYnN0cmFjdFRyYW5zYWN0aW9uYWxDb21tYW5kOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuaW5mcmEuY29yZS5zZXJ2aWNlcy5TZXJ2aWNlRXhjZXB0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuaW5mcmEuY29yZS51dGlscy5TZXJ2aWNlVXRpbHNGb3JBY3Rpb25IYW5kbGVyczsKKworLyoqCisgKiBVdGlsaXR5IGZ1bmN0aW9uLiBBbGxvdyBleGVjdXRpb24gb2YgY29tbWFuZHMgb24gYSB0cmFuc2FjdGlvbmFsIGNvbW1hbmQgc3RhY2sKKyAqCisgKiBAYXV0aG9yIGFuc2dhcgorICoKKyAqLworQFN1cHByZXNzV2FybmluZ3MoImRlcHJlY2F0aW9uIikKK3B1YmxpYyBjbGFzcyBDb21tYW5kU3VwcG9ydCB7CisKKwkvKioKKwkgKiBFeGVjdXRlIHRoZSBwYXNzZWQgUnVubmFibGUgd2l0aGluIGEgY29tbWFuZAorCSAqCisJICogQHBhcmFtIGxhYmVsCisJICogQHBhcmFtIGNvbW1hbmQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIHZvaWQgZXhlYyhTdHJpbmcgbGFiZWwsIGZpbmFsIFJ1bm5hYmxlIGNvbW1hbmQpIHsKKwkJU2VydmljZVV0aWxzRm9yQWN0aW9uSGFuZGxlcnMgc2VydmljZVV0aWxzID0gU2VydmljZVV0aWxzRm9yQWN0aW9uSGFuZGxlcnMuZ2V0SW5zdGFuY2UoKTsKKwkJdHJ5IHsKKwkJCWV4ZWMoc2VydmljZVV0aWxzLmdldFRyYW5zYWN0aW9uYWxFZGl0aW5nRG9tYWluKCksIGxhYmVsLCBjb21tYW5kKTsKKwkJfSBjYXRjaCAoU2VydmljZUV4Y2VwdGlvbiBlKSB7CisJCQlMb2cubG9nKExvZy5FUlJPUl9NU0csIExvZy5VVElMUywgIkNhbiBub3QgZ2V0IGVkaXRpbmcgZG9tYWluIik7CisJCX0KKwl9CisKKwkvKioKKwkgKiBFeGVjdXRlIHRoZSBwYXNzZWQgUnVubmFibGUgd2l0aCByZXN1bHQgd2l0aGluIGEgY29tbWFuZAorCSAqCisJICogQHBhcmFtIGxhYmVsCisJICogQHBhcmFtIGNvbW1hbmQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIHZvaWQgZXhlYyhTdHJpbmcgbGFiZWwsIGZpbmFsIFJ1bm5hYmxlV2l0aFJlc3VsdCBjb21tYW5kKSB7CisJCVNlcnZpY2VVdGlsc0ZvckFjdGlvbkhhbmRsZXJzIHNlcnZpY2VVdGlscyA9IFNlcnZpY2VVdGlsc0ZvckFjdGlvbkhhbmRsZXJzLmdldEluc3RhbmNlKCk7CisJCUlPcGVyYXRpb25IaXN0b3J5IGhpc3RvcnkgPSBPcGVyYXRpb25IaXN0b3J5RmFjdG9yeS5nZXRPcGVyYXRpb25IaXN0b3J5KCk7CisJCXRyeSB7CisJCQloaXN0b3J5LmV4ZWN1dGUobmV3IEFic3RyYWN0VHJhbnNhY3Rpb25hbENvbW1hbmQoc2VydmljZVV0aWxzLmdldFRyYW5zYWN0aW9uYWxFZGl0aW5nRG9tYWluKCksCisJCQkJCWxhYmVsLCBDb2xsZWN0aW9ucy5FTVBUWV9MSVNUKSB7CisKKwkJCQlAT3ZlcnJpZGUKKwkJCQlwdWJsaWMgQ29tbWFuZFJlc3VsdCBkb0V4ZWN1dGVXaXRoUmVzdWx0KElQcm9ncmVzc01vbml0b3IgZHVtbXksIElBZGFwdGFibGUgaW5mbykgeworCQkJCQlyZXR1cm4gY29tbWFuZC5ydW4oKTsKKwkJCQl9CisJCQl9LCBudWxsLCBudWxsKTsKKwkJfSBjYXRjaCAoRXhlY3V0aW9uRXhjZXB0aW9uIGUpIHsKKwkJCUxvZy5sb2coTG9nLkVSUk9SX01TRywgTG9nLlVUSUxTLCAiZXJyb3IgZHVyaW5nIGNvbW1hbmQgZXhlY3V0aW9uIik7CisJCX0gY2F0Y2ggKFNlcnZpY2VFeGNlcHRpb24gZSkgeworCQkJTG9nLmxvZyhMb2cuRVJST1JfTVNHLCBMb2cuVVRJTFMsICJDYW4gbm90IGdldCBlZGl0aW5nIGRvbWFpbiIpOworCQl9CisJfQorCisJLyoqCisJICogRXhlY3V0ZSB0aGUgcGFzc2VkIFJ1bm5hYmxlIHdpdGhpbiBhIGNvbW1hbmQKKwkgKgorCSAqIEBwYXJhbSBsYWJlbAorCSAqIEBwYXJhbSBjb21tYW5kCisJICovCisJcHVibGljIHN0YXRpYyB2b2lkIGV4ZWMoVHJhbnNhY3Rpb25hbEVkaXRpbmdEb21haW4gZG9tYWluLCBTdHJpbmcgbGFiZWwsIGZpbmFsIFJ1bm5hYmxlIGNvbW1hbmQpIHsKKwkJaWYgKGRvbWFpbiA9PSBudWxsKSB7CisJCQljb21tYW5kLnJ1bigpOworCQl9CisJCWVsc2UgeworCQkJSU9wZXJhdGlvbkhpc3RvcnkgaGlzdG9yeSA9IE9wZXJhdGlvbkhpc3RvcnlGYWN0b3J5LmdldE9wZXJhdGlvbkhpc3RvcnkoKTsKKwkJCXRyeSB7CisJCQkJaGlzdG9yeS5leGVjdXRlKG5ldyBBYnN0cmFjdFRyYW5zYWN0aW9uYWxDb21tYW5kKGRvbWFpbiwgbGFiZWwsIENvbGxlY3Rpb25zLkVNUFRZX0xJU1QpIHsKKworCQkJCQlAT3ZlcnJpZGUKKwkJCQkJcHVibGljIENvbW1hbmRSZXN1bHQgZG9FeGVjdXRlV2l0aFJlc3VsdChJUHJvZ3Jlc3NNb25pdG9yIGR1bW15LCBJQWRhcHRhYmxlIGluZm8pIHsKKwkJCQkJCWNvbW1hbmQucnVuKCk7CisJCQkJCQlyZXR1cm4gQ29tbWFuZFJlc3VsdC5uZXdPS0NvbW1hbmRSZXN1bHQoKTsKKwkJCQkJfQorCQkJCX0sIG51bGwsIG51bGwpOworCQkJfSBjYXRjaCAoRXhlY3V0aW9uRXhjZXB0aW9uIGUpIHsKKwkJCQllLnByaW50U3RhY2tUcmFjZSgpOworCQkJfQorCQl9CisJfQorCit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RlcGxveW1lbnQvQ29weS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L0NvcHkuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hYzU5ODYyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L0NvcHkuamF2YQpAQCAtMCwwICsxLDgyNSBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTMgQ0VBIExJU1QuCisgKgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgU2FhZGlhIERob3VpYiAoQ0VBIExJU1QpIHNhYWRpYS5kaG91aWJAY2VhLmZyIC0gSW5pdGlhbCBBUEkgYW5kIGltcGxlbWVudGF0aW9uCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50OworCitpbXBvcnQgamF2YS51dGlsLkhhc2hNYXA7CitpbXBvcnQgamF2YS51dGlsLkl0ZXJhdG9yOworaW1wb3J0IGphdmEudXRpbC5MaXN0OworaW1wb3J0IGphdmEudXRpbC5NYXA7CitpbXBvcnQgamF2YS51dGlsLlN0YWNrOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkJhc2ljRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVTdHJ1Y3R1cmFsRmVhdHVyZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuUmVzb3VyY2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuRWNvcmVVdGlsLkNvcGllcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5JbnRlcm5hbEVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS54bWkuWE1MUmVzb3VyY2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQubGlzdGVuZXIuQ29weUxpc3RlbmVyOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkJlaGF2aW9yOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzaWZpZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5GZWF0dXJlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkxpdGVyYWxCb29sZWFuOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkxpdGVyYWxJbnRlZ2VyOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkxpdGVyYWxOdWxsOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkxpdGVyYWxTdHJpbmc7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuTGl0ZXJhbFVubGltaXRlZE5hdHVyYWw7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuTXVsdGlwbGljaXR5RWxlbWVudDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5OYW1lZEVsZW1lbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuTmFtZXNwYWNlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLk9wYXF1ZUV4cHJlc3Npb247CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuT3BlcmF0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZWFibGVFbGVtZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlNsb3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuU3RlcmVvdHlwZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5WYWx1ZVNwZWNpZmljYXRpb247CisKKy8qKgorICogaW5mb3JtYXRpb24gYWJvdXQgc291cmNlIGFuZCB0YXJnZXQgcGFja2FnZXMgd2l0aGluIGEgbW9kZWwgdHJhbnNmb3JtYXRpb24KKyAqCisgKiBAYXV0aG9yIGFuc2dhcgorICoKKyAqLworcHVibGljIGNsYXNzIENvcHkgZXh0ZW5kcyBDb3BpZXIgeworCisJcHVibGljIENvcHkoUGFja2FnZSBzb3VyY2VfLCBQYWNrYWdlIHRhcmdldF8sIGJvb2xlYW4gY29weUV4dFJlc291cmNlc18pIHsKKwkJc291cmNlID0gc291cmNlXzsKKwkJdGFyZ2V0ID0gdGFyZ2V0XzsKKwkJLy8gdXNlT3JpZ2luYWxSZWZlcmVuY2VzID0gZmFsc2U7CisJCWNvcHlFeHRSZWZlcmVuY2VzID0gY29weUV4dFJlc291cmNlc187CisJCXByZUNvcHlMaXN0ZW5lcnMgPSBuZXcgQmFzaWNFTGlzdDxDb3B5TGlzdGVuZXI+KCk7CisJCXBvc3RDb3B5TGlzdGVuZXJzID0gbmV3IEJhc2ljRUxpc3Q8Q29weUxpc3RlbmVyPigpOworCQl0ZW1wbGF0ZU1hcEluZm8gPSBuZXcgSGFzaE1hcDxFT2JqZWN0LCBNYXA8RU9iamVjdCwgRU9iamVjdD4+KCk7CisJCXN0YW5kYXJkTWFwID0gbmV3IEhhc2hNYXA8RU9iamVjdCwgRU9iamVjdD4oKTsKKwkJc2hhbGxvd01hcCA9IG5ldyBIYXNoTWFwPEVPYmplY3QsIEJvb2xlYW4+KCk7CisJCWJvdW5kUGFja2FnZXMgPSBuZXcgU3RhY2s8TmFtZXNwYWNlPigpOworCQlpZiAoY29weUV4dFJlZmVyZW5jZXMpIHsKKwkJCS8vIG9yaWdpbmFsIHNvdXJjZSBwYWNrYWdlIGJlY29tZXMgYSBzdWItcGFja2FnZSBpbiB0aGUgdGFyZ2V0IG1vZGVsCisJCQlQYWNrYWdlIG5ld1NvdXJjZVJvb3QgPSB0YXJnZXQuY3JlYXRlTmVzdGVkUGFja2FnZShzb3VyY2UuZ2V0TmFtZSgpKTsKKwkJCXB1dChzb3VyY2UsIG5ld1NvdXJjZVJvb3QpOworCQl9CisJCWVsc2UgeworCQkJcHV0KHNvdXJjZSwgdGFyZ2V0KTsKKwkJfQorCX07CisKKwkvKioKKyAqCisgKi8KKwlwcml2YXRlIHN0YXRpYyBmaW5hbCBsb25nIHNlcmlhbFZlcnNpb25VSUQgPSAtMTY2NDAxMzU0NTY2MTYzNTI4OUw7CisKKwkvKioKKwkgKiBTb3VyY2UgbW9kZWwgd2l0aGluIGEgdHJhbnNmb3JtYXRpb24KKwkgKi8KKworCXB1YmxpYyBQYWNrYWdlIHNvdXJjZTsKKworCS8qKgorCSAqIFRhcmdldCBtb2RlbCB3aXRoaW4gYSB0cmFuc2Zvcm1hdGlvbgorCSAqLworCXB1YmxpYyBQYWNrYWdlIHRhcmdldDsKKworCS8qKgorCSAqIGlmIHRydWUsIGNvcHkgcGFja2FnZXMgb3IgZWxlbWVudHMgdGhhdCBhcmUgaW1wb3J0ZWQgaW50byB0aGUgdGFyZ2V0CisJICogbW9kZWwKKwkgKi8KKwlwdWJsaWMgYm9vbGVhbiBjb3B5RXh0UmVmZXJlbmNlczsKKworCS8qKgorCSAqIEJvdW5kIHBhY2thZ2UgdGVtcGxhdGUKKwkgKi8KKwlwcml2YXRlIE5hbWVzcGFjZSBib3VuZFBhY2thZ2U7CisKKwkvKioKKwkgKiBNYXAgdG8gaWRlbnRpZnkgdGFyZ2V0IG9iamVjdHMgd2hlbiBnaXZlbiBzb3VyY2Ugb2JqZWN0cworCSAqLworCXByaXZhdGUgTWFwPEVPYmplY3QsIEVPYmplY3Q+IHN0YW5kYXJkTWFwOworCisJLyoqCisJICogTWFwIHRvIGlkZW50aWZ5IHRhcmdldCBvYmplY3RzIHdoZW4gZ2l2ZW4gc291cmNlIG9iamVjdHMKKwkgKi8KKwlwcml2YXRlIE1hcDxFT2JqZWN0LCBFT2JqZWN0PiB0ZW1wbGF0ZU1hcDsKKworCS8qKgorCSAqIFNldCBvZiBtYXBzIGZvciB0ZW1wbGF0ZSBpbnN0YW50aWF0aW9ucworCSAqLworCXByaXZhdGUgTWFwPEVPYmplY3QsIE1hcDxFT2JqZWN0LCBFT2JqZWN0Pj4gdGVtcGxhdGVNYXBJbmZvOworCisJLyoqCisJICogTWFwIHVzaW5nIGEgdGFyZ2V0IEVPYmplY3QgYXMga2V5CisJICovCisJcHJpdmF0ZSBNYXA8RU9iamVjdCwgQm9vbGVhbj4gc2hhbGxvd01hcDsKKworCS8qKgorCSAqIEVsZW1lbnRzIHdpdGhpbiBwYWNrYWdlIHRlbXBsYXRlcyBtdXN0IGJlIHRyZWF0ZWQgZGlmZmVyZW50bHksIHdlIGhhdmUgdG8gZW5zdXJlIHRoYXQ6CisJICogKDEpIHNldmVyYWwgaW5zdGFudGlhdGlvbnMgd2l0aCBzYW1lIGJpbmRpbmcgb2YgdGhlIHNhbWUgcGFja2FnZSB0ZW1wbGF0ZSBkbyBub3QgbGVhZCB0byBkb3VibGUgY29waWVzCisJICogKHlldCwgaXQgbWF5IGJlIHBvc3NpYmxlIHRoYXQgYSAybmQgaW5zdGFudGlhdGlvbiBhZGRzIGNvbnRlbnRzLCBlLmcuIHRoZSB0cmFjZSBwYWNrYWdlIHRlbXBsYXRlIGNvdWxkIGJlCisJICogaW5zdGFudGlhdGVkIGNvbnRhaW5pbmcgb25seSBPVEYgdHJhY2UgKGFuZCBzdXBlcmNsYXNzZXMpLCBhIHNlY29uZCBpbnN0YW50aWF0aW9uIG1pZ2h0IGFkZCBhIGRpZmZlcmVudCB0cmFjZQorCSAqIGltcGxlbWVudGF0aW9uKQorCSAqICgyKSBzZXZlcmFsIGluc3RhbnRpYXRpb25zIHdpdGggZGlmZmVyZW50IGJpbmRpbmcgZG8gbm90IHByZXZlbnQgY2xhc3NlcyBmcm9tIGJlaW5nIGNvcGllZCB0aGF0IGhhdmUgYWxyZWFkeQorCSAqIGJlZW4gY29waWVkIGVhcmxpZXIuCisJICogVGhlIHNvbHV0aW9uIGlzIHRvIHVzZSBhIGRpZmZlcmVudCBtYXAgZm9yIHRoZSBlbGVtZW50cyB3aXRoIHBhY2thZ2UgdGVtcGxhdGUuIFRoaXMgbWFwIGlzIGluc3RhbnRpYXRlZCBvbmNlCisJICogZm9yIGVhY2ggYmluZGluZyAobWFuYWdlZCBieSB0aGUgVGVtcGxhdGVJbnN0YW50aWF0aW9uIGNsYXNzKQorCSAqLworCXB1YmxpYyBNYXA8RU9iamVjdCwgRU9iamVjdD4gZ2V0TWFwKEVPYmplY3Qgc291cmNlRU9iaikgeworCQlib29sZWFuIHdpdGhpblRlbXBsYXRlID0gd2l0aGluVGVtcGxhdGUoc291cmNlRU9iaik7CisJCXJldHVybiB3aXRoaW5UZW1wbGF0ZSA/CisJCQkJdGVtcGxhdGVNYXAgOgorCQkJCXN0YW5kYXJkTWFwOworCX0KKworCUBPdmVycmlkZQorCXB1YmxpYyBFT2JqZWN0IGdldChPYmplY3Qgc291cmNlRU9iaikgeworCQlpZiAoc291cmNlRU9iaiBpbnN0YW5jZW9mIEVPYmplY3QpIHsKKwkJCU1hcDxFT2JqZWN0LCBFT2JqZWN0PiBtYXAgPSBnZXRNYXAoKEVPYmplY3QpIHNvdXJjZUVPYmopOworCQkJcmV0dXJuIG1hcC5nZXQoc291cmNlRU9iaik7CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJQE92ZXJyaWRlCisJcHVibGljIEVPYmplY3QgcHV0KEVPYmplY3Qgc291cmNlRU9iaiwgRU9iamVjdCB0YXJnZXRFT2JqKSB7CisJCWlmIChzb3VyY2VFT2JqIGluc3RhbmNlb2YgRU9iamVjdCkgeworCQkJTWFwPEVPYmplY3QsIEVPYmplY3Q+IG1hcCA9IGdldE1hcChzb3VyY2VFT2JqKTsKKwkJCXJldHVybiBtYXAucHV0KHNvdXJjZUVPYmosIHRhcmdldEVPYmopOworCQl9CisJCXJldHVybiBudWxsOworCX0KKworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGNvbnRhaW5zS2V5KE9iamVjdCBzb3VyY2VFT2JqKSB7CisJCWlmIChzb3VyY2VFT2JqIGluc3RhbmNlb2YgRU9iamVjdCkgeworCQkJTWFwPEVPYmplY3QsIEVPYmplY3Q+IG1hcCA9IGdldE1hcCgoRU9iamVjdCkgc291cmNlRU9iaik7CisJCQlyZXR1cm4gbWFwLmNvbnRhaW5zS2V5KHNvdXJjZUVPYmopOworCQl9CisJCXJldHVybiBmYWxzZTsKKwl9CisKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgRU9iamVjdCByZW1vdmUoT2JqZWN0IHNvdXJjZUVPYmopIHsKKwkJaWYgKHNvdXJjZUVPYmogaW5zdGFuY2VvZiBFT2JqZWN0KSB7CisJCQlNYXA8RU9iamVjdCwgRU9iamVjdD4gbWFwID0gZ2V0TWFwKChFT2JqZWN0KSBzb3VyY2VFT2JqKTsKKwkJCXJldHVybiBtYXAucmVtb3ZlKHNvdXJjZUVPYmopOworCQl9CisJCXJldHVybiBudWxsOworCX0KKworCXB1YmxpYyB2b2lkIHNldFNoYWxsb3coRU9iamVjdCB0YXJnZXRFT2JqLCBib29sZWFuIGlzU2hhbGxvdykgeworCQlzaGFsbG93TWFwLnB1dCh0YXJnZXRFT2JqLCBpc1NoYWxsb3cpOworCX0KKworCS8qKgorCSAqIHJldHVybiB0cnVlLCBpZiBhIHNoYWxsb3cgY29weSBvZiB0aGUgcGFzc2VkIEVPYmplY3QgZXhpc3RzCisJICoKKwkgKiBAcGFyYW0gc291cmNlRU9iagorCSAqIEByZXR1cm4KKwkgKi8KKwlwdWJsaWMgYm9vbGVhbiBpc1NoYWxsb3coRU9iamVjdCB0YXJnZXRFT2JqKSB7CisJCUJvb2xlYW4gc2hhbGxvdyA9IHNoYWxsb3dNYXAuZ2V0KHRhcmdldEVPYmopOworCQlpZiAoc2hhbGxvdyAhPSBudWxsKSB7CisJCQlyZXR1cm4gc2hhbGxvdzsKKwkJfQorCQlyZXR1cm4gZmFsc2U7CisJfQorCisJLy8gcHVibGljIE5hbWVzcGFjZSBnZXRQYWNrYWdlVGVtcGxhdGUoKSB7CisJLy8gcmV0dXJuIG51bGw7CisJLy8gfQorCisJLyoqCisJICogU2V0IHRoZSByZWZlcmVuY2Ugb2YgYSBib3VuZCBwYWNrYWdlIHRlbXBsYXRlLiBJdCBtdXN0IGJlIGEgbWVtYmVyIG9mIHRoZSB0YXJnZXQgbW9kZWwuCisJICogU2V0dGluZyB0aGUgcGFja2FnZSB0ZW1wbGF0ZSBpcyByZXF1aXJlZCB0byBhc3N1cmUgdGhhdCBlbGVtZW50cyB0aGF0IGFyZSBwYXJ0IG9mIGEgZGlmZmVyZW50CisJICogcmVzb3VyY2UgZ2V0IGNvcGllZCAoZGVwZW5kaW5nIG9uIHRoZSBjb3B5RXh0UmVmZXJlbmNlcyBmbGFnLCB0aGlzIGlzIG5vdCB0aGUgY2FzZSkKKwkgKgorCSAqIEBwYXJhbSBwYWNrYWdlVGVtcGxhdGUKKwkgKiAgICAgICAgICAgIFJlZmVyZW5jZSB0byBwYWNrYWdlICh3aXRoIGEgdGVtcGxhdGUgc2lnbmF0dXJlKSBpbiBzb3VyY2UgbW9kZWwgdGhhdCBzaG91bGQgYmUgaW5zdGFudGlhdGVkCisJICogQHBhcmFtIGJvdW5kUGFja2FnZQorCSAqICAgICAgICAgICAgUmVmZXJlbmNlIHRvIChhbiBpbml0aWFsbHkgZW1wdHkpIHBhY2thZ2UgaW4gd2hpY2ggdGhlIHBhY2thdGUgdGVtcGxhdGUgd2lsbCBiZSBpbnN0YW50aWF0ZWQKKwkgKiAgICAgICAgICAgIGR1cmluZyB0aGUgY29weSBwcm9jZXNzCisJICovCisJcHVibGljIHZvaWQgc2V0UGFja2FnZVRlbXBsYXRlKE5hbWVzcGFjZSBwYWNrYWdlVGVtcGxhdGUsIE5hbWVzcGFjZSBib3VuZFBhY2thZ2UpIHsKKwkJdGhpcy5ib3VuZFBhY2thZ2UgPSBib3VuZFBhY2thZ2U7CisJCWlmIChwYWNrYWdlVGVtcGxhdGUgPT0gbnVsbCkgeworCQkJcmV0dXJuOworCQl9CisJCXRlbXBsYXRlTWFwID0KKwkJCQl0ZW1wbGF0ZU1hcEluZm8uZ2V0KGJvdW5kUGFja2FnZSk7CisJCWlmICh0ZW1wbGF0ZU1hcCA9PSBudWxsKSB7CisJCQl0ZW1wbGF0ZU1hcCA9IG5ldyBIYXNoTWFwPEVPYmplY3QsIEVPYmplY3Q+KCk7CisJCQl0ZW1wbGF0ZU1hcEluZm8ucHV0KGJvdW5kUGFja2FnZSwgdGVtcGxhdGVNYXApOworCQl9CisJCS8vIGRlY2xhcmUgcmVsYXRpb24gYmV0d2VlbiBwYWNrYWdlVGVtcGxhdGUgYW5kIGJvdW5kIHBhY2thZ2UKKwkJLy8gYnV0OiB0aGUgb3duZXIgb2YgdGhlIHBhY2thZ2UgdGVtcGxhdGUgaXMgbm90IGVxdWFsIHRvIHRoZSBwYWNrYWdlVGVtcGxhdGUgKGUuZy4gcGVyQ2xhc3MpCisJCS8vIHNpbmNlIHdlIGNhbiBleHRlbmQgcGFja2FnZSB0ZW1wbGF0ZXMgaW4gZGlmZmVyZW50IG1vZGVscy4KKwkJc3RhbmRhcmRNYXAucHV0KHBhY2thZ2VUZW1wbGF0ZSwgYm91bmRQYWNrYWdlKTsKKwl9CisKKwlwdWJsaWMgdm9pZCBwdXNoUGFja2FnZVRlbXBsYXRlKCkgeworCQlib3VuZFBhY2thZ2VzLnB1c2goYm91bmRQYWNrYWdlKTsKKwl9CisKKwlwdWJsaWMgdm9pZCBwb3BQYWNrYWdlVGVtcGxhdGUoKSB7CisJCWJvdW5kUGFja2FnZSA9IGJvdW5kUGFja2FnZXMucG9wKCk7CisJCXRlbXBsYXRlTWFwID0KKwkJCQl0ZW1wbGF0ZU1hcEluZm8uZ2V0KGJvdW5kUGFja2FnZSk7CisJfQorCisJcHJpdmF0ZSBTdGFjazxOYW1lc3BhY2U+IGJvdW5kUGFja2FnZXM7CisKKwlwdWJsaWMgdm9pZCByZW1vdmVGb3JDb3B5KEVPYmplY3QgZWxlbWVudCkgeworCQl0ZW1wbGF0ZU1hcC5yZW1vdmUoZWxlbWVudCk7CisJCUVDbGFzcyBlQ2xhc3MgPSBlbGVtZW50LmVDbGFzcygpOworCQlmb3IgKGludCBpID0gMCwgc2l6ZSA9IGVDbGFzcy5nZXRGZWF0dXJlQ291bnQoKTsgaSA8IHNpemU7ICsraSkKKwkJeworCQkJRVN0cnVjdHVyYWxGZWF0dXJlIGVTdHJ1Y3R1cmFsRmVhdHVyZSA9IGVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmUoaSk7CisJCQlpZiAoZVN0cnVjdHVyYWxGZWF0dXJlLmlzQ2hhbmdlYWJsZSgpICYmICFlU3RydWN0dXJhbEZlYXR1cmUuaXNEZXJpdmVkKCkpCisJCQl7CisJCQkJaWYgKGVTdHJ1Y3R1cmFsRmVhdHVyZSBpbnN0YW5jZW9mIEVBdHRyaWJ1dGUpIHsKKwkJCQkJLy8gY29weUF0dHJpYnV0ZSgoRUF0dHJpYnV0ZSllU3RydWN0dXJhbEZlYXR1cmUsIHNvdXJjZUVPYmosIHRhcmdldEVPYmopOworCQkJCX0KKwkJCQllbHNlIHsKKwkJCQkJRVJlZmVyZW5jZSBlUmVmZXJlbmNlID0gKEVSZWZlcmVuY2UpIGVTdHJ1Y3R1cmFsRmVhdHVyZTsKKwkJCQkJaWYgKGVSZWZlcmVuY2UuaXNDb250YWlubWVudCgpKSB7CisJCQkJCQlmb3IgKEVPYmplY3QgcmVmIDogZ2V0UmVmcyhlUmVmZXJlbmNlLCBlbGVtZW50KSkgeworCQkJCQkJCXJlbW92ZUZvckNvcHkocmVmKTsKKwkJCQkJCX0KKwkJCQkJfQorCQkJCQllbHNlIGlmICghZVJlZmVyZW5jZS5pc0NvbnRhaW5lcigpKSB7CisJCQkJCQkvLyBub3QgY29udGFpbmVkLCBidXQgY29weSByZWZlcmVuY2UgYXMgd2VsbAorCisJCQkJCX0KKwkJCQl9CisJCQl9CisJCX0KKwl9CisKKwlAU3VwcHJlc3NXYXJuaW5ncygidW5jaGVja2VkIikKKwlwdWJsaWMgRUxpc3Q8RU9iamVjdD4gZ2V0UmVmcyhFUmVmZXJlbmNlIGVSZWZlcmVuY2UsIEVPYmplY3QgZU9iamVjdCkgeworCQlFTGlzdDxFT2JqZWN0PiByZWZzID0gbmV3IEJhc2ljRUxpc3Q8RU9iamVjdD4oKTsKKwkJaWYgKGVPYmplY3QuZUlzU2V0KGVSZWZlcmVuY2UpKSB7CisJCQlpZiAoZVJlZmVyZW5jZS5pc01hbnkoKSkgeworCQkJCS8vIEBTdXBwcmVzc1dhcm5pbmdzKCJ1bmNoZWNrZWQiKQorCQkJCXJlZnMuYWRkQWxsKChMaXN0PEVPYmplY3Q+KSBlT2JqZWN0LmVHZXQoZVJlZmVyZW5jZSkpOworCQkJfSBlbHNlIHsKKwkJCQlyZWZzLmFkZCgoRU9iamVjdCkgZU9iamVjdC5lR2V0KGVSZWZlcmVuY2UpKTsKKwkJCX0KKwkJfQorCQlyZXR1cm4gcmVmczsKKwl9CisKKwlwdWJsaWMgYm9vbGVhbiB3aXRoaW5UZW1wbGF0ZShFT2JqZWN0IGVsZW1lbnQpIHsKKwkJaWYgKGJvdW5kUGFja2FnZSAhPSBudWxsKSB7CisJCQlFT2JqZWN0IG93bmVyID0gZWxlbWVudDsKKwkJCXdoaWxlIChvd25lciAhPSBudWxsKSB7CisJCQkJb3duZXIgPSBvd25lci5lQ29udGFpbmVyKCk7CisJCQkJaWYgKGdldChvd25lcikgPT0gYm91bmRQYWNrYWdlKSB7CisJCQkJCXJldHVybiB0cnVlOworCQkJCX0KKwkJCX0KKwkJfQorCQlyZXR1cm4gZmFsc2U7CisJfQorCisJLyoqCisJICogUmV0dXJucyBhIGNvcHkgb2YgdGhlIGdpdmVuIGVPYmplY3QuCisJICoKKwkgKiBOb3JtYWxseSwgd2UgZG8gbm90IHdhbnQgdG8gY29weSBlbGVtZW50cyB0aGF0IGFyZSBmcm9tIGEgZGlmZmVyZW50CisJICogcmVzb3VyY2UuIFRoZXJlIGFyZSB0d28gZXhjZXB0aW9ucyAoMSkgaWYgdGhpcyBpcyBleHBsaWNpdGx5IHNwZWNpZmllZAorCSAqIChmb3IgcHJvZHVjaW5nICJjb21wbGV0ZSIgbW9kZWxzKSAoMikgaWYgd2Ugd2FudCB0byBjb3B5IGVsZW1lbnRzIGZyb20gYQorCSAqIHRlbXBsYXRlIGludG8gdGhlIHRhcmdldCBtb2RlbC4KKwkgKgorCSAqIEBwYXJhbSBzb3VyY2VFT2JqCisJICogICAgICAgICAgICB0aGUgb2JqZWN0IHRvIGNvcHkuCisJICogQHJldHVybiB0aGUgY29weS4KKwkgKi8KKwlAU3VwcHJlc3NXYXJuaW5ncygidW5jaGVja2VkIikKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgRU9iamVjdCBjb3B5KEVPYmplY3Qgc291cmNlRU9iaikgeworCQlib29sZWFuIHdpdGhpblRlbXBsYXRlID0gd2l0aGluVGVtcGxhdGUoc291cmNlRU9iaik7CisKKwkJRU9iamVjdCB0YXJnZXRFT2JqID0gZ2V0KHNvdXJjZUVPYmopOworCisJCWJvb2xlYW4gc2hhbGxvd0NvcHkgPSAodGFyZ2V0RU9iaiAhPSBudWxsKSAmJiBpc1NoYWxsb3codGFyZ2V0RU9iaik7CisKKwkJaWYgKCh0YXJnZXRFT2JqICE9IG51bGwpICYmICFzaGFsbG93Q29weSkgeworCQkJLy8gY29weSBhbHJlYWR5IGV4aXN0cywgcmV0dXJuCisJCQlyZXR1cm4gdGFyZ2V0RU9iajsKKwkJfQorCQlzZXRTaGFsbG93KHRhcmdldEVPYmosIGZhbHNlKTsKKworCQlpZiAoc291cmNlRU9iaiA9PSBudWxsKSB7CisJCQkvLyB0aGlzIGNhc2UgbWF5IGhhcHBlbiwgaWYgZWxlbWVudHMgd2VyZSBzeXN0ZW1hdGNpYWxseSBjb3BpZWQgd2l0aG91dCBjaGVja2luZyBmb3IKKwkJCS8vIG51bGwgcmVmZXJlbmNlcyBpbiB0aGUgYXBwbGljYXRpb24gY29kZSAoZS5nLiBpZiB3ZSBjb3B5IGEgcGFydC13aXRoLXBvcnQgd2hpY2ggbWlnaHQKKwkJCS8vIGJlIG51bGwgaW4gY2FzZSBvZiBkZWxlZ2F0aW9uIG9yIGNvbm5lY3RvcnMgd2l0aG91dCBwb3J0cworCQkJcmV0dXJuIG51bGw7CisJCX0KKwkJYm9vbGVhbiBzYW1lUmVzb3VyY2UgPSAoc291cmNlRU9iai5lUmVzb3VyY2UoKSA9PSBzb3VyY2UuZVJlc291cmNlKCkpOworCQlpZiAoIXNhbWVSZXNvdXJjZSAmJiAhY29weUV4dFJlZmVyZW5jZXMgJiYgIXdpdGhpblRlbXBsYXRlKSB7CisJCQkvLyBkbyBub3QgY29weSBpZiB3aXRoaW4gZGlmZmVyZW50IHJlc291cmNlLCB1bmxlc3MKKwkJCS8vIDEuIGNvcHlJbXBvcnRzCisJCQkvLyAyLiB3aXRoaW4gcGFja2FnZSB0ZW1wbGF0ZQorCQkJcmV0dXJuIHNvdXJjZUVPYmo7CisJCX0KKworCQlpZiAoc291cmNlRU9iaiBpbnN0YW5jZW9mIFN0ZXJlb3R5cGUpIHsKKwkJCS8vIGRvIG5vdCBjb3B5IFN0ZXJlb3R5cGVzLCBhcyBpdCB3b3VsZCBpbXBseSBjb3B5aW5nIG1ldGEtbW9kZWwgZWxlbWVudHMgKHRoZSBiYXNlX1gKKwkJCS8vIGF0dHJpYnV0ZSBvZiB0aGUgc3RlcmVvdHlwZSBpcyB0eXBlZCB3aXRoIGEgbWV0YS1tb2RlbCBlbGVtZW50KQorCQkJcmV0dXJuIHNvdXJjZUVPYmo7CisJCX0KKworCQlmb3IgKENvcHlMaXN0ZW5lciBsaXN0ZW5lciA6IHByZUNvcHlMaXN0ZW5lcnMpIHsKKwkJCUVPYmplY3QgcmVzdWx0ID0gbGlzdGVuZXIuY29weUVPYmplY3QodGhpcywgc291cmNlRU9iaik7CisJCQlpZiAocmVzdWx0ICE9IHNvdXJjZUVPYmopIHsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQl9CisKKwkJaWYgKHNvdXJjZUVPYmogaW5zdGFuY2VvZiBOYW1lZEVsZW1lbnQpIHsKKwkJCVN0cmluZyBuYW1lID0gKChOYW1lZEVsZW1lbnQpIHNvdXJjZUVPYmopLmdldFF1YWxpZmllZE5hbWUoKTsKKwkJCS8vIFN5c3RlbS5lcnIucHJpbnRsbigiZUMzTWNvcGllcjogIiArIG5hbWUpOworCQkJaWYgKChuYW1lICE9IG51bGwpICYmIG5hbWUuc3RhcnRzV2l0aCgidW1sOjoiKSkgeworCQkJCUxvZy5sb2coTG9nLkVSUk9SX01TRywgTG9nLlRSQUZPX0NPUFksICJjb3B5IGZvciBtZXRhLW1vZGVsIGVsZW1lbnQgXCIiICsgbmFtZSArICJcIiByZXF1ZXN0ZWQuIFJldHVybiBvcmlnaW5hbCBlbGVtZW50Iik7CisJCQkJcmV0dXJuIHNvdXJjZUVPYmo7CisJCQl9CisJCQlpZiAoKG5hbWUgIT0gbnVsbCkgJiYgbmFtZS5zdGFydHNXaXRoKCJQcm9kdWNlckNvbnN1bWVyIikpIHsKKwkJCQlpZiAoVXRpbHMuZ2V0VG9wKChOYW1lZEVsZW1lbnQpIHNvdXJjZUVPYmopICE9IHNvdXJjZSkgeworCQkJCQlTeXN0ZW0uZXJyLnByaW50bG4obmFtZSk7CisJCQkJfQorCQkJfQorCQl9CisJCS8vIGFkZGl0aW9uYWwgc2FuaXR5IGNoZWNrOiB3YW50IHRvIGF2b2lkIGNvcHlpbmcgKGluc3RlYWQgb2YgaW5zdGFudGlhdGluZykgZWxlbWVudHMKKwkJLy8gb2YgYSBwYWNrYWdlIHRlbXBsYXRlCisJCWlmICgoc291cmNlRU9iaiBpbnN0YW5jZW9mIFBhY2thZ2UpICYmICghd2l0aGluVGVtcGxhdGUpKSB7CisJCQlpZiAoKChQYWNrYWdlKSBzb3VyY2VFT2JqKS5nZXRPd25lZFRlbXBsYXRlU2lnbmF0dXJlKCkgIT0gbnVsbCkgeworCQkJCUxvZy5sb2coTG9nLldBUk5JTkdfTVNHLCBMb2cuVFJBRk9fQ09QWSwgIndhcm5pbmc6IGNvcHlpbmcgYSBwYWNrYWdlIHRlbXBsYXRlIHdpdGhvdXQgaW5zdGFudGlhdGluZyBhIHRlbXBsYXRlIik7CisJCQl9CisJCX0KKworCQlpZiAoc2hhbGxvd0NvcHkpIHsKKwkJCS8vIHNoYWxsb3dDb3B5IGlzIHRydWU6IGEgY29weSBleGlzdHMgYWxyZWFkeQorCQl9CisJCWVsc2UgeworCQkJdGFyZ2V0RU9iaiA9IGNyZWF0ZUNvcHkoc291cmNlRU9iaik7CisJCQlwdXQoc291cmNlRU9iaiwgdGFyZ2V0RU9iaik7CisKKwkJCWNyZWF0ZVNoYWxsb3dDb250YWluZXIoc291cmNlRU9iaik7CisJCX0KKwkJRUNsYXNzIGVDbGFzcyA9IHNvdXJjZUVPYmouZUNsYXNzKCk7CisJCWZvciAoaW50IGkgPSAwLCBzaXplID0gZUNsYXNzLmdldEZlYXR1cmVDb3VudCgpOyBpIDwgc2l6ZTsgKytpKQorCQl7CisJCQlFU3RydWN0dXJhbEZlYXR1cmUgZVN0cnVjdHVyYWxGZWF0dXJlID0gZUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZShpKTsKKwkJCWlmIChlU3RydWN0dXJhbEZlYXR1cmUuaXNDaGFuZ2VhYmxlKCkgJiYgIWVTdHJ1Y3R1cmFsRmVhdHVyZS5pc0Rlcml2ZWQoKSkKKwkJCXsKKwkJCQlpZiAoZVN0cnVjdHVyYWxGZWF0dXJlIGluc3RhbmNlb2YgRUF0dHJpYnV0ZSkgeworCQkJCQljb3B5QXR0cmlidXRlKChFQXR0cmlidXRlKSBlU3RydWN0dXJhbEZlYXR1cmUsIHNvdXJjZUVPYmosIHRhcmdldEVPYmopOworCQkJCX0KKwkJCQllbHNlIHsKKwkJCQkJRVJlZmVyZW5jZSBlUmVmZXJlbmNlID0gKEVSZWZlcmVuY2UpIGVTdHJ1Y3R1cmFsRmVhdHVyZTsKKwkJCQkJaWYgKGVSZWZlcmVuY2UuaXNDb250YWlubWVudCgpKSB7CisJCQkJCQljb3B5Q29udGFpbm1lbnQoZVJlZmVyZW5jZSwgc291cmNlRU9iaiwgdGFyZ2V0RU9iaik7CisJCQkJCX0KKwkJCQkJLy8gc29tZSBjb250YWlubWVudCByZWxhdGlvbnNoaXBzIHJlcXVpcmUgY29weWluZyB0aGUgY29udGFpbmVyIGNvbXBsZXRlbHkKKwkJCQkJLy8gZS5nLiBpZiBhbiBvd25lZCB0ZW1wbGF0ZSBzaWduYXR1cmUgaXMgcmVmZXJlbmNlZCwgd2UgbmVlZCB0byBmb2xsb3cgdGhlICJ0ZW1wbGF0ZSIKKwkJCQkJLy8gcmVmZXJlbmNlLCB3aGljaCBzdWJzZXRzIHRoZSAib3duZXIiIHJlbGF0aW9uc2hpcC4KKwkJCQkJLy8gZS5nLiBpZiBhbiBvcGVyYXRpb24gaXMgcmVmZXJlbmNlZCwgd2UgbmVlZCB0byBjb3B5IHRoZSB3aG9sZSBpbnRlcmZhY2UKKwkJCQkJLy8gQ3VycmVudGx5OiBvbmx5IHRoZSBzdGFuZGFyZCBvd25pbmcgcmVmZXJlbmNlIGlzIG5vdCBjb3BpZWQgcmVjdXJzaXZlbHkuCisJCQkJCS8vIGVsc2UgaWYoIWVSZWZlcmVuY2UuaXNDb250YWluZXIoKSkgeworCQkJCQllbHNlIGlmICghZVJlZmVyZW5jZS5nZXROYW1lKCkuZXF1YWxzKCJvd25lciIpKSB7CisJCQkJCQkvLyBub3QgY29udGFpbmVkLCBidXQgY29weSByZWZlcmVuY2UgYXMgd2VsbAorCQkJCQkJT2JqZWN0IGZlYXR1cmUgPSBzb3VyY2VFT2JqLmVHZXQoZVN0cnVjdHVyYWxGZWF0dXJlKTsKKwkJCQkJCWlmIChmZWF0dXJlIGluc3RhbmNlb2YgRWxlbWVudCkgeworCQkJCQkJCWNvcHkoKEVsZW1lbnQpIGZlYXR1cmUpOworCQkJCQkJfSBlbHNlIGlmIChmZWF0dXJlIGluc3RhbmNlb2YgRUxpc3QpIHsKKwkJCQkJCQljb3B5QWxsKChFTGlzdDxPYmplY3Q+KSBmZWF0dXJlKTsKKwkJCQkJCX0KKwkJCQkJCWNvcHlSZWZlcmVuY2UoZVJlZmVyZW5jZSwgc291cmNlRU9iaiwgdGFyZ2V0RU9iaik7CisJCQkJCX0KKwkJCQl9CisJCQl9CisJCX0KKwkJY29weVByb3h5VVJJKHNvdXJjZUVPYmosIHRhcmdldEVPYmopOworCQljb3B5SUQoc291cmNlRU9iaiwgdGFyZ2V0RU9iaik7CisKKwkJaWYgKHNvdXJjZUVPYmogaW5zdGFuY2VvZiBFbGVtZW50KSB7CisJCQkvLyBUT0RPOiBoYW5kbGUgc3RlcmVvdHlwZSBjb3B5IGluIGEgZ2VuZXJpYyB3YXkKKwkJCVN0VXRpbHMuY29weVN0ZXJlb3R5cGVzKHRoaXMsIChFbGVtZW50KSBzb3VyY2VFT2JqLCAoRWxlbWVudCkgdGFyZ2V0RU9iaik7CisJCX0KKworCQlmb3IgKENvcHlMaXN0ZW5lciBsaXN0ZW5lciA6IHBvc3RDb3B5TGlzdGVuZXJzKSB7CisJCQlFT2JqZWN0IHJlc3VsdCA9IGxpc3RlbmVyLmNvcHlFT2JqZWN0KHRoaXMsIHRhcmdldEVPYmopOworCQkJaWYgKHJlc3VsdCAhPSB0YXJnZXRFT2JqKSB7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJfQorCisJCXJldHVybiB0YXJnZXRFT2JqOworCX0KKworCS8qKgorCSAqIENvcHkgdGhlIGNvbnRhaW5tZW50IG9mIGFuIGVsZW1lbnQgd2l0aCByZXNwZWN0IHRvIGEgY2VydGFpbiByZWZlcmVuY2UKKwkgKgorCSAqIEBzZWUgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuRWNvcmVVdGlsLkNvcGllciNjb3B5Q29udGFpbm1lbnQob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2UsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkKKwkgKiAgICAgIERpZmZlcmVuY2VzIHRvIHJlZmVyZW5jZWQgZnVuY3Rpb24gaW4gRUNvcmVVdGlsCisJICogICAgICAtIElmIGFuIGVsZW1lbnQgaW4gY29weUFsbCBpcyBudWxsLCBpdCBpcyBub3QgYWRkZWQKKwkgKiAgICAgIC0gTGlzdCBlbGVtZW50cyBhcmUgYWx3YXlzIGNsZWFyZWQgYmVmb3JlIGNvcHlpbmcsIHNpbmNlIHRoZSBsaXN0IGVsZW1lbnRzIG1heSBhbHJlYWR5IGhhdmUgYmVlbgorCSAqICAgICAgcGFydGlhbGx5IGZpbGxlZCBieSBhIHByZXZpb3VzIHNoYWxsb3cgY29weQorCSAqCisJICogQHBhcmFtIGVSZWZlcmVuY2UKKwkgKiAgICAgICAgICAgIGEgcmVmZXJlbmNlLCBzdWNoIGFzIGZvciBpbnN0YW5jZSBwYWNrYWdlZEVsZW1lbnQgKHRoZQorCSAqICAgICAgICAgICAgY2FsbGVyIG5lZWRzIHRvIGNoZWNrLCBpcyB0aGlzIHJlZmVyZW5jZSBpcyBhIGNvbnRhaW5tZW50IHJlZmVyZW5jZSkuCisJICogQHBhcmFtIGVPYmplY3QKKwkgKiAgICAgICAgICAgIHRoZSBzb3VyY2UgZU9iamVjdAorCSAqIEBwYXJhbSBjb3B5RU9iamVjdAorCSAqICAgICAgICAgICAgdGhlIGNvcHkgb2YgdGhpcyBlT2JqZWN0CisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIHZvaWQgY29weUNvbnRhaW5tZW50KEVSZWZlcmVuY2UgZVJlZmVyZW5jZSwgRU9iamVjdCBlT2JqZWN0LCBFT2JqZWN0IGNvcHlFT2JqZWN0KSB7CisJCWlmIChlT2JqZWN0LmVJc1NldChlUmVmZXJlbmNlKSkgeworCQkJaWYgKGVSZWZlcmVuY2UuaXNNYW55KCkpIHsKKwkJCQlAU3VwcHJlc3NXYXJuaW5ncygidW5jaGVja2VkIikKKwkJCQlMaXN0PEVPYmplY3Q+IHNvdXJjZSA9IChMaXN0PEVPYmplY3Q+KSBlT2JqZWN0LmVHZXQoZVJlZmVyZW5jZSk7CisJCQkJQFN1cHByZXNzV2FybmluZ3MoInVuY2hlY2tlZCIpCisJCQkJTGlzdDxFT2JqZWN0PiB0YXJnZXQgPSAoTGlzdDxFT2JqZWN0PikgY29weUVPYmplY3QuZUdldChnZXRUYXJnZXQoZVJlZmVyZW5jZSkpOworCQkJCS8vIGRvIG5vdCBjbGVhciAod291bGQgcmVtb3ZlIGVsZW1lbnRzIHRoYXQgYXJlIGFkZGVkIGJ5IGNvcHkgbGlzdGVuZXJzKQorCQkJCS8vIEJ1dDogYmV0dGVyIGVuZm9yY2UgZXhhY3QgY29weT8gKGxpc3RlbmVycyBjb3VsZCBvbmx5IGFkZCBpbiBhIHBvc3QtY29weSBzdGVwKQorCQkJCS8vIHRhcmdldC5jbGVhcigpOworCQkJCWlmICghc291cmNlLmlzRW1wdHkoKSkgeworCQkJCQlmb3IgKEVPYmplY3QgY29weUVPYmogOiBjb3B5QWxsKHNvdXJjZSkpIHsKKwkJCQkJCWlmIChjb3B5RU9iaiAhPSBudWxsKSB7CisJCQkJCQkJdGFyZ2V0LmFkZChjb3B5RU9iaik7CisJCQkJCQl9CisJCQkJCX0KKwkJCQl9CisJCQl9IGVsc2UgeworCQkJCUVPYmplY3QgY2hpbGRFT2JqZWN0ID0gKEVPYmplY3QpIGVPYmplY3QuZUdldChlUmVmZXJlbmNlKTsKKwkJCQljb3B5RU9iamVjdC5lU2V0KGdldFRhcmdldChlUmVmZXJlbmNlKSwgY2hpbGRFT2JqZWN0ID09IG51bGwgPyBudWxsIDogY29weShjaGlsZEVPYmplY3QpKTsKKwkJCX0KKwkJfQorCX0KKworCS8qKgorCSAqIENvcHkgdGhlIGNvbnRhaW5tZW50IGluIGEgInNoYWxsb3ciIHdheSwgaS5lLiBjb3B5IHJlZmVyZW5jZXMgdG8gY29udGFpbmVkIG9iamVjdHMsIGlmIHRoZXNlIGV4aXN0IGFscmVhZHkuCisJICogSWYgY2FsbGVkIGZvciBpbnN0YW5jZSBmb3IgYSBwYWNrYWdlLCBpdCB3aWxsIGFkZCB0aG9zZSBlbGVtZW50cyB0byB0aGUgcGFja2FnZWRFbGVtZW50cyBsaXN0IG9mIHRoZQorCSAqIHRhcmdldCBwYWNrYWdlLCB0aGF0IGhhdmUgYWxyZWFkeSBiZWVuIGNvcGllZC4KKwkgKgorCSAqIEBwYXJhbSBlUmVmZXJlbmNlCisJICogQHBhcmFtIGVPYmplY3QKKwkgKiBAcGFyYW0gY29weUVPYmplY3QKKwkgKi8KKwlwcm90ZWN0ZWQgdm9pZCBzaGFsbG93Q29weUNvbnRhaW5tZW50KEVSZWZlcmVuY2UgZVJlZmVyZW5jZSwgRU9iamVjdCBlT2JqZWN0LCBFT2JqZWN0IGNvcHlFT2JqZWN0KSB7CisJCWlmIChlT2JqZWN0LmVJc1NldChlUmVmZXJlbmNlKSkgeworCQkJaWYgKGVSZWZlcmVuY2UuaXNNYW55KCkpIHsKKwkJCQlAU3VwcHJlc3NXYXJuaW5ncygidW5jaGVja2VkIikKKwkJCQlMaXN0PEVPYmplY3Q+IHNvdXJjZSA9IChMaXN0PEVPYmplY3Q+KSBlT2JqZWN0LmVHZXQoZVJlZmVyZW5jZSk7CisJCQkJQFN1cHByZXNzV2FybmluZ3MoInVuY2hlY2tlZCIpCisJCQkJTGlzdDxFT2JqZWN0PiB0YXJnZXQgPSAoTGlzdDxFT2JqZWN0PikgY29weUVPYmplY3QuZUdldChnZXRUYXJnZXQoZVJlZmVyZW5jZSkpOworCQkJCWlmIChzb3VyY2UuaXNFbXB0eSgpKSB7CisJCQkJCXRhcmdldC5jbGVhcigpOworCQkJCX0gZWxzZSB7CisJCQkJCWZvciAoRU9iamVjdCBzb3VyY2VFT2JqIDogc291cmNlKSB7CisJCQkJCQkvLyBpZiBlT2JqZWN0IGhhcyBhbHJlYWR5IGJlZW4gY29waWVkLCBhZGQgaXQKKwkJCQkJCUVPYmplY3QgY29weUVPYmogPSBnZXQoc291cmNlRU9iaik7CisJCQkJCQlpZiAoKGNvcHlFT2JqICE9IG51bGwpICYmICghdGFyZ2V0LmNvbnRhaW5zKGNvcHlFT2JqKSkpIHsKKwkJCQkJCQl0YXJnZXQuYWRkKGNvcHlFT2JqKTsKKwkJCQkJCX0KKwkJCQkJfQorCQkJCX0KKwkJCX0gZWxzZSB7CisJCQkJRU9iamVjdCBjaGlsZEVPYmplY3QgPSAoRU9iamVjdCkgZU9iamVjdC5lR2V0KGVSZWZlcmVuY2UpOworCQkJCWNvcHlFT2JqZWN0LmVTZXQoZ2V0VGFyZ2V0KGVSZWZlcmVuY2UpLCBjaGlsZEVPYmplY3QgPT0gbnVsbCA/IG51bGwgOiBjb3B5KGNoaWxkRU9iamVjdCkpOworCQkJfQorCQl9CisJfQorCisJLyoqCisJICogQ3JlYXRlIGEgInNoYWxsb3ciIGNvbnRhaW5lciBmb3IgYW4gb2JqZWN0LCBpLmUuIGNyZWF0ZSAocmVjdXJzaXZlbHkpIHRoZSBvd25lciB3aXRob3V0CisJICogYWRkaW5nIGFsbCBvdGhlciBjaGlsZHJlbiBvZiB0aGlzIG93bmVyIChlLmcuIGluIGNhc2Ugb2YgYSBwYWNrYWdlLCB0aGUgcGFja2FnZSBpdHNlbGYgd2lsbAorCSAqIGJlIGNyZWF0ZWQsIGJ1dCBub3QgYWxsIGVsZW1lbnRzIHdpdGhpbiB0aGF0IHBhY2thZ2UpLgorCSAqCisJICogQHBhcmFtIHNvdXJjZUVPYmoKKwkgKi8KKwlwdWJsaWMgdm9pZCBjcmVhdGVTaGFsbG93Q29udGFpbmVyKEVPYmplY3Qgc291cmNlRU9iaikgeworCQlFT2JqZWN0IG93bmVyID0gc291cmNlRU9iai5lQ29udGFpbmVyKCk7CisJCUVPYmplY3QgY29weSA9IG51bGw7CisJCXdoaWxlIChvd25lciAhPSBudWxsKSB7CisJCQlpZiAoY29udGFpbnNLZXkob3duZXIpKSB7CisJCQkJLy8gb3duZXIgaXMgaW4gbWFwLCBzdGlsbCBuZWVkIHRvIHJlLWNvcHkgKHVwZGF0ZSkgdGhlIGNvbnRhaW5tZW50CisJCQkJLy8gcmVmZXJlbmNlcywgc2luY2Ugb25lIG9mIHRoZSBjaGlsZHJlbiBkaWQgbm90IGV4aXN0IGJlZm9yZQorCQkJCS8vCisJCQkJc2hhbGxvd0NvcHkob3duZXIpOworCQkJCXJldHVybjsKKwkJCX0KKwkJCWNvcHkgPSBzaGFsbG93Q29weShvd25lcik7CisJCQlpZiAoY29weSBpbnN0YW5jZW9mIE5hbWVkRWxlbWVudCkgeworCQkJCSgoTmFtZWRFbGVtZW50KSBjb3B5KS5zZXROYW1lKCgoTmFtZWRFbGVtZW50KSBvd25lcikuZ2V0TmFtZSgpKTsKKwkJCX0KKwkJCW93bmVyID0gb3duZXIuZUNvbnRhaW5lcigpOworCQl9CisJCWlmIChjb3B5IGluc3RhbmNlb2YgUGFja2FnZWFibGVFbGVtZW50KSB7CisJCQkvLyBpZiB3ZSBjb3B5IGV4dGVybmFsIHJlc291cmNlcywgd2UgbWlnaHQgcmVhY2ggdGhlICJ0b3AiIG9uIHRoZSBzb3VyY2UgbGV2ZWwKKwkJCS8vIHdoaWNoIGJlY29tZXMgYSBzdWItcGFja2FnZSBvZiB0aGUgbmV3IG1vZGVsLgorCQkJdGFyZ2V0LmdldFBhY2thZ2VkRWxlbWVudHMoKS5hZGQoKFBhY2thZ2VhYmxlRWxlbWVudCkgY29weSk7CisJCX0KKwl9CisKKwkvKioKKwkgKiBNYWtlIGEgc2hhbGxvdyBjb3B5IG9mIGFuIGVsZW1lbnQsIGkuZS4gb25seSBjcmVhdGUgdGhlIGVsZW1lbnQgaXRzZWxmIGFuZCBub3QKKwkgKiBhbGwgb2YgaXRzIGNvbnRlbnRzLiBJZiBhIHN1YnNldCBvZiB0aGUgY29udGFpbmluZyBlbGVtZW50cyBhbHJlYWR5IGV4aXN0IGluIHRoZSBjb3BpZWQKKwkgKiBtb2RlbCwgdXBkYXRlIHRoZSBjb250YWlubWVudCByZWZlcmVuY2VzIHBvaW50aW5nIHRvIHRoZXNlLiBUaGUgZnVuY3Rpb24gbWF5IGJlIGNhbGxlZAorCSAqIG11bHRpcGxlIHRpbWVzIGluIG9yZGVyIHRvIGFkZCBlbGVtZW50cyB0byB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlcyB0aGF0CisJICogaGF2ZSBiZWVuIGNvcGllZCBzaW5jZSB0aGUgcHJldmlvdXMgY2FsbCAoaS5lLiBpdCBpcyBwb3NzaWJsZSB0byBtYWtlIGEgc2hhbGxvdyBjb3B5CisJICogb2YgYSBwYWNrYWdlIGFmdGVyIGEgc2luZ2xlIGNsYXNzIHdpdGhpbiBpdCBoYXMgYmVlbiBjb3BpZWQuIEl0IG1heSBiZSBjYWxsZWQgYWdhaW4sCisJICogb25jZSBhIHNlY29uZCBjbGFzcyB3aXRoaW4gdGhlIHBhY2thZ2UgaGFzIGJlZW4gY29waWVkID0+IHRoZSBwYWNrYWdlZEVsZW1lbnRzIHJlZmVyZW5jZQorCSAqIG9mIHRoZSBwYWNrYWdlIHdpbGwgYmUgdXBkYXRlZCkuCisJICoKKwkgKiBAcGFyYW0gc291cmNlRU9iagorCSAqIEByZXR1cm4KKwkgKi8KKwlwdWJsaWMgRU9iamVjdCBzaGFsbG93Q29weShFT2JqZWN0IHNvdXJjZUVPYmopIHsKKwkJRU9iamVjdCB0YXJnZXRFT2JqID0gZ2V0KHNvdXJjZUVPYmopOworCQlpZiAodGFyZ2V0RU9iaiA9PSBudWxsKSB7CisJCQl0YXJnZXRFT2JqID0gY3JlYXRlQ29weShzb3VyY2VFT2JqKTsKKwkJCXB1dChzb3VyY2VFT2JqLCB0YXJnZXRFT2JqKTsKKwkJCXNldFNoYWxsb3codGFyZ2V0RU9iaiwgdHJ1ZSk7CisJCX0KKwkJaWYgKChzb3VyY2VFT2JqIGluc3RhbmNlb2YgRWxlbWVudCkgJiYgKHRhcmdldEVPYmogaW5zdGFuY2VvZiBFbGVtZW50KSkgeworCQkJLy8gVE9ETzogY2Fubm90IGNvcHkgc3RlcmVvdHlwZXMgb25seSBhZnRlciBjcmVhdGlvbiwgc2luY2UgZUNvbnRhaW5lciBkb2VzCisJCQkvLyBub3QgZXhpc3QgYXQgdGhpcyBtb21lbnQuIE5lZWQgdG8gcHV0IHRoYXQgaW50ZWxsaWdlbnRseSBpbnRvIGNyZWF0ZVNoYWxsb3dDb250YWluZXIKKwkJCVN0VXRpbHMuY29weVN0ZXJlb3R5cGVzKHRoaXMsIChFbGVtZW50KSBzb3VyY2VFT2JqLCAoRWxlbWVudCkgdGFyZ2V0RU9iaik7CisJCX0KKworCQlFQ2xhc3MgZUNsYXNzID0gc291cmNlRU9iai5lQ2xhc3MoKTsKKworCQlmb3IgKGludCBpID0gMCwgc2l6ZSA9IGVDbGFzcy5nZXRGZWF0dXJlQ291bnQoKTsgaSA8IHNpemU7ICsraSkgeworCQkJRVN0cnVjdHVyYWxGZWF0dXJlIGVTdHJ1Y3R1cmFsRmVhdHVyZSA9IGVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmUoaSk7CisJCQlpZiAoZVN0cnVjdHVyYWxGZWF0dXJlLmlzQ2hhbmdlYWJsZSgpICYmICFlU3RydWN0dXJhbEZlYXR1cmUuaXNEZXJpdmVkKCkpIHsKKwkJCQlpZiAoZVN0cnVjdHVyYWxGZWF0dXJlIGluc3RhbmNlb2YgRUF0dHJpYnV0ZSkgeworCQkJCQkvLyBjb3B5QXR0cmlidXRlKChFQXR0cmlidXRlKWVTdHJ1Y3R1cmFsRmVhdHVyZSwgc291cmNlRU9iaiwgdGFyZ2V0RU9iaik7CisJCQkJfSBlbHNlIHsKKwkJCQkJRVJlZmVyZW5jZSBlUmVmZXJlbmNlID0gKEVSZWZlcmVuY2UpIGVTdHJ1Y3R1cmFsRmVhdHVyZTsKKwkJCQkJaWYgKGVSZWZlcmVuY2UuaXNDb250YWlubWVudCgpKSB7CisJCQkJCQlzaGFsbG93Q29weUNvbnRhaW5tZW50KGVSZWZlcmVuY2UsIHNvdXJjZUVPYmosIHRhcmdldEVPYmopOworCQkJCQl9CisJCQkJfQorCQkJfQorCQl9CisJCXJldHVybiB0YXJnZXRFT2JqOworCX0KKworCUBTdXBwcmVzc1dhcm5pbmdzKCJ1bmNoZWNrZWQiKQorCXB1YmxpYyA8VCBleHRlbmRzIEVsZW1lbnQ+IFQgZ2V0Q29weShUIHNvdXJjZSkgeworCQlyZXR1cm4gKFQpIGNvcHkoc291cmNlKTsKKwl9CisKKwlwdWJsaWMgRUxpc3Q8Q29weUxpc3RlbmVyPiBwcmVDb3B5TGlzdGVuZXJzOworCisJcHVibGljIEVMaXN0PENvcHlMaXN0ZW5lcj4gcG9zdENvcHlMaXN0ZW5lcnM7CisKKwkvKioKKwkgKiBDYWxsZWQgdG8gaGFuZGxlIHRoZSBjb3B5aW5nIG9mIGEgY3Jvc3MgcmVmZXJlbmNlOworCSAqIHRoaXMgYWRkcyB2YWx1ZXMgb3Igc2V0cyBhIHNpbmdsZSB2YWx1ZSBhcyBhcHByb3ByaWF0ZSBmb3IgdGhlIG11bHRpcGxpY2l0eQorCSAqIHdoaWxlIG9taXR0aW5nIGFueSBiaWRpcmVjdGlvbmFsIHJlZmVyZW5jZSB0aGF0IGlzbid0IGluIHRoZSBjb3B5IG1hcC4KKwkgKgorCSAqIEBwYXJhbSBlUmVmZXJlbmNlCisJICogICAgICAgICAgICB0aGUgcmVmZXJlbmNlIHRvIGNvcHkuCisJICogQHBhcmFtIGVPYmplY3QKKwkgKiAgICAgICAgICAgIHRoZSBvYmplY3QgZnJvbSB3aGljaCB0byBjb3B5LgorCSAqIEBwYXJhbSBjb3B5RU9iamVjdAorCSAqICAgICAgICAgICAgdGhlIG9iamVjdCB0byBjb3B5IHRvLgorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCB2b2lkIGNvcHlSZWZlcmVuY2UoRVJlZmVyZW5jZSBlUmVmZXJlbmNlLCBFT2JqZWN0IGVPYmplY3QsIEVPYmplY3QgY29weUVPYmplY3QpCisJeworCQlpZiAoZU9iamVjdC5lSXNTZXQoZVJlZmVyZW5jZSkpIHsKKwkJCWlmIChlUmVmZXJlbmNlLmlzTWFueSgpKSB7CisJCQkJQFN1cHByZXNzV2FybmluZ3MoInVuY2hlY2tlZCIpCisJCQkJSW50ZXJuYWxFTGlzdDxFT2JqZWN0PiBzb3VyY2UgPSAoSW50ZXJuYWxFTGlzdDxFT2JqZWN0PikgZU9iamVjdC5lR2V0KGVSZWZlcmVuY2UpOworCQkJCUBTdXBwcmVzc1dhcm5pbmdzKCJ1bmNoZWNrZWQiKQorCQkJCUludGVybmFsRUxpc3Q8RU9iamVjdD4gdGFyZ2V0ID0gKEludGVybmFsRUxpc3Q8RU9iamVjdD4pIGNvcHlFT2JqZWN0LmVHZXQoZ2V0VGFyZ2V0KGVSZWZlcmVuY2UpKTsKKwkJCQlpZiAoc291cmNlLmlzRW1wdHkoKSkgeworCQkJCQl0YXJnZXQuY2xlYXIoKTsKKwkJCQl9CisJCQkJZWxzZSB7CisJCQkJCWJvb2xlYW4gaXNCaWRpcmVjdGlvbmFsID0gZVJlZmVyZW5jZS5nZXRFT3Bwb3NpdGUoKSAhPSBudWxsOworCQkJCQlpbnQgaW5kZXggPSAwOworCQkJCQlmb3IgKEl0ZXJhdG9yPEVPYmplY3Q+IGsgPSByZXNvbHZlUHJveGllcyA/IHNvdXJjZS5pdGVyYXRvcigpIDogc291cmNlLmJhc2ljSXRlcmF0b3IoKTsgay5oYXNOZXh0KCk7KSB7CisJCQkJCQlFT2JqZWN0IHJlZmVyZW5jZWRFT2JqZWN0ID0gay5uZXh0KCk7CisJCQkJCQlFT2JqZWN0IGNvcHlSZWZlcmVuY2VkRU9iamVjdCA9IGdldChyZWZlcmVuY2VkRU9iamVjdCk7CisJCQkJCQlpZiAoY29weVJlZmVyZW5jZWRFT2JqZWN0ID09IG51bGwpIHsKKwkJCQkJCQlpZiAodXNlT3JpZ2luYWxSZWZlcmVuY2VzICYmICFpc0JpZGlyZWN0aW9uYWwpIHsKKwkJCQkJCQkJdGFyZ2V0LmFkZFVuaXF1ZShpbmRleCwgcmVmZXJlbmNlZEVPYmplY3QpOworCQkJCQkJCQkrK2luZGV4OworCQkJCQkJCX0KKwkJCQkJCX0KKwkJCQkJCWVsc2UgeworCQkJCQkJCWlmIChpc0JpZGlyZWN0aW9uYWwpIHsKKwkJCQkJCQkJaW50IHBvc2l0aW9uID0gdGFyZ2V0LmluZGV4T2YoY29weVJlZmVyZW5jZWRFT2JqZWN0KTsKKwkJCQkJCQkJaWYgKHBvc2l0aW9uID09IC0xKSB7CisJCQkJCQkJCQl0YXJnZXQuYWRkVW5pcXVlKGluZGV4LCBjb3B5UmVmZXJlbmNlZEVPYmplY3QpOworCQkJCQkJCQl9CisJCQkJCQkJCWVsc2UgaWYgKGluZGV4ICE9IHBvc2l0aW9uKSB7CisJCQkJCQkJCQl0YXJnZXQubW92ZShpbmRleCwgY29weVJlZmVyZW5jZWRFT2JqZWN0KTsKKwkJCQkJCQkJfQorCQkJCQkJCX0KKwkJCQkJCQllbHNlIGlmICghdGFyZ2V0LmNvbnRhaW5zKGNvcHlSZWZlcmVuY2VkRU9iamVjdCkpIHsKKwkJCQkJCQkJLy8gVE9ETzogZG9lcyBub3QgYWxsb3cgbXVsdGlwbGUgaWRlbnRpY2FsIGVsZW1lbnRzIGluIHRoZSBsaXN0LiBQcm9ibGVtYXRpYz8KKwkJCQkJCQkJLy8gQ2hlY2sgYWJvdmUgaXMgbmVjZXNzYXJ5LCBzaW5jZSBzb21lIHJlZmVyZW5jZXMgdGhhdCBhcmUgbm90CisJCQkJCQkJCS8vIHBhcnQgb2YgdGhlIGNvbnRhaW5tZW50IG1heSBoYXZlIGFscmVhZHkgYmVlbiBjb3BpZWQgKGUuZy4gaW4gY2FzZSBvZgorCQkJCQkJCQkvLyBhIFRlbXBsYXRlU2lnbmF0dXJlICJvd25lZFBhcmFtZXRlciIgc3Vic2V0cyAicGFyYW1ldGVyIiwgdGh1cyBjb3B5aW5nCisJCQkJCQkJCS8vIG93bmVkUGFyYW1ldGVyIGFzIHBhcnQgb2YgdGhlIGNvbnRhaW5tZW50IGFkZHMgYSB0ZW1wbGF0ZSBwYXJhbWV0ZXIpCisJCQkJCQkJCXRhcmdldC5hZGRVbmlxdWUoaW5kZXgsIGNvcHlSZWZlcmVuY2VkRU9iamVjdCk7CisJCQkJCQkJfQorCQkJCQkJCSsraW5kZXg7CisJCQkJCQl9CisJCQkJCX0KKwkJCQl9CisJCQl9CisJCQllbHNlIHsKKwkJCQlPYmplY3QgcmVmZXJlbmNlZEVPYmplY3QgPSBlT2JqZWN0LmVHZXQoZVJlZmVyZW5jZSwgcmVzb2x2ZVByb3hpZXMpOworCQkJCWlmIChyZWZlcmVuY2VkRU9iamVjdCA9PSBudWxsKSB7CisJCQkJCWNvcHlFT2JqZWN0LmVTZXQoZ2V0VGFyZ2V0KGVSZWZlcmVuY2UpLCBudWxsKTsKKwkJCQl9CisJCQkJZWxzZSBpZiAocmVmZXJlbmNlZEVPYmplY3QgaW5zdGFuY2VvZiBFT2JqZWN0KSB7CisJCQkJCS8vIGRpZmZlcmVuY2UgdG8gb3JpZ2luYWwgY29kZSBpbiBFY29yZVV0aWw6IHdlIG9idGFpbiBhIGNvcHkgKHdoaWNoIG1pZ2h0IGJlIG51bGwgb3IgdGhlCisJCQkJCS8vIHNvdXJjZSBvYmplY3QpIG9mIHRoZSByZWZlcmVuY2VkIEVPYmplY3QuIFRoaXMgYXNzdXJlcyB0aGF0IHdlIG9ubHkgc2V0IGEgdmFsdWUgb2YgYQorCQkJCQkvLyByZWZlcmVuY2UgdG8gc29tZXRoaW5nIHdlIGFjdHVhbGx5IHdhbnQgdG8gaGF2ZSBpbiB0aGUgdGFyZ2V0IG1vZGVsLgorCQkJCQkvLyBTcGVjaWZpYyBwcm9ibGVtYXRpYyBjYXNlIGluIG9yaWdpbmFsIGNvZGU6IGNsYXNzaWZpZXJCZWhhdmlvciBpcyBhIHJlZmVyZW5jZSwgYnV0IGFzc2lnbmluZyBzdWNoCisJCQkJCS8vIGEgYmVoYXZpb3Igd2lsbCBhbHNvIGFkZCBhbiBvd25lZCBiZWhhdmlvci4gSWYgd2UgYXNzaWduIGEgcmVmZXJlbmNlZEVPYmplY3QgKGEgYmVoYXZpb3IpIGZyb20gdGhlCisJCQkJCS8vIHNvdXJjZSBtb2RlbCBpbiB0aGUgdGFyZ2V0LCB3ZSB3aWxsIGFjdHVhbGx5IHJlbW92ZSBpdCBmcm9tIHRoZSBzb3VyY2UgbW9kZWwgKGFzIGl0IGlzIHVuaXF1ZWx5IG93bmVkKS4KKwkJCQkJRU9iamVjdCBjb3B5UmVmZXJlbmNlZEVPYmplY3QgPSBjb3B5KChFT2JqZWN0KSByZWZlcmVuY2VkRU9iamVjdCk7CisJCQkJCWlmIChjb3B5UmVmZXJlbmNlZEVPYmplY3QgIT0gbnVsbCkgeworCQkJCQkJY29weUVPYmplY3QuZVNldChnZXRUYXJnZXQoZVJlZmVyZW5jZSksIGNvcHlSZWZlcmVuY2VkRU9iamVjdCk7CisJCQkJCX0KKwkJCQl9CisJCQl9CisJCX0KKwl9CisKKwkvKioKKwkgKiBDb3B5IGFsbCBtZXRob2RzIGZyb20gdGhlIHBhc3NlZCBzb3VyY2UtbW9kZWwgY2xhc3MuCisJICogVGhpcyBmdW5jdGlvbiBpcyB1c2VmdWwsIGlmIHRoZSBwYXNzZWQgY2xhc3Mgb25seSBleGlzdAorCSAqIGFzIGEgc2hhbGxvdyBjb3B5LgorCSAqCisJICogQHBhcmFtIHNvdXJjZQorCSAqICAgICAgICAgICAgQSBjbGFzcyB3aXRoaW4gdGhlIHNvdXJjZSBtb2RlbAorCSAqLworCXB1YmxpYyB2b2lkIGNvcHlNZXRob2RzKENsYXNzIHNvdXJjZSkgeworCQlmb3IgKEJlaGF2aW9yIG1ldGhvZCA6IHNvdXJjZS5nZXRPd25lZEJlaGF2aW9ycygpKSB7CisJCQlnZXRDb3B5KG1ldGhvZCk7CisJCX0KKwl9CisKKwkvKioKKwkgKiBDb3B5IGFsbCBhdHRyaWJ1dGVzIGZyb20gdGhlIHNvdXJjZS1tb2RlbCBjbGFzc2lmaWVyCisJICogVGhpcyBmdW5jdGlvbiBpcyB1c2VmdWwsIGlmIHRoZSBwYXNzZWQgY2xhc3Mgb25seSBleGlzdAorCSAqIGFzIGEgc2hhbGxvdyBjb3B5LgorCSAqCisJICogQHBhcmFtIHNvdXJjZQorCSAqICAgICAgICAgICAgQSBjbGFzc2lmaWVyIHdpdGhpbiB0aGUgc291cmNlIG1vZGVsCisJICovCisJcHVibGljIHZvaWQgY29weUF0dHJpYnV0ZXMoQ2xhc3NpZmllciBzb3VyY2UpIHsKKwkJZm9yIChQcm9wZXJ0eSBhdHRyaWJ1dGUgOiBzb3VyY2UuZ2V0QXR0cmlidXRlcygpKSB7CisJCQlnZXRDb3B5KGF0dHJpYnV0ZSk7CisJCX0KKwl9CisKKwkvKioKKwkgKiBjb3B5IGFsbCBvcGVyYXRpb25zIGZyb20gdGhlIHNvdXJjZS1tb2RlbCBjbGFzc2lmaWVyLgorCSAqIFRoaXMgZnVuY3Rpb24gaXMgdXNlZnVsLCBpZiB0aGUgcGFzc2VkIGNsYXNzIG9ubHkgZXhpc3QKKwkgKiBhcyBhIHNoYWxsb3cgY29weS4KKwkgKgorCSAqIEBwYXJhbSBzb3VyY2UKKwkgKiAgICAgICAgICAgIEEgY2xhc3NpZmllciB3aXRoaW4gdGhlIHNvdXJjZSBtb2RlbAorCSAqLworCXB1YmxpYyB2b2lkIGNvcHlPcGVyYXRpb25zKENsYXNzaWZpZXIgc291cmNlKSB7CisJCWZvciAoT3BlcmF0aW9uIG9wZXJhdGlvbiA6IHNvdXJjZS5nZXRPcGVyYXRpb25zKCkpIHsKKwkJCWdldENvcHkob3BlcmF0aW9uKTsKKwkJfQorCX0KKworCS8vIFRPRE86IHRoZSBmdW5jdGlvbnMgdGhhdCBmb2xsb3cgYXJlIHN0YXRpYyBhbmQgc2hvdWxkIG5vdCBiZSBwYXJ0IG9mIHRoaXMgY2xhc3MKKwkvLyBhcyB0aGV5IHVzZSBhIGRpZmZlcmVudCB3YXkgb2YgY29weWluZyB0aGluZ3MuCisKKworCXB1YmxpYyBzdGF0aWMgdm9pZCBjb3B5RmVhdHVyZU1vZGlmaWVycyhGZWF0dXJlIHNvdXJjZSwgRmVhdHVyZSB0YXJnZXQpIHsKKwkJdGFyZ2V0LnNldElzU3RhdGljKHNvdXJjZS5pc1N0YXRpYygpKTsKKwkJdGFyZ2V0LnNldElzTGVhZihzb3VyY2UuaXNMZWFmKCkpOworCX0KKworCXB1YmxpYyBzdGF0aWMgdm9pZCBjb3B5TXVsdEVsZW1Nb2RpZmllcnMoTXVsdGlwbGljaXR5RWxlbWVudCBzb3VyY2UsIE11bHRpcGxpY2l0eUVsZW1lbnQgdGFyZ2V0KSB7CisJCXRhcmdldC5zZXRJc09yZGVyZWQoc291cmNlLmlzT3JkZXJlZCgpKTsKKwkJdGFyZ2V0LnNldElzVW5pcXVlKHNvdXJjZS5pc1VuaXF1ZSgpKTsKKwkJdGFyZ2V0LnNldExvd2VyKHNvdXJjZS5nZXRMb3dlcigpKTsKKwkJdGFyZ2V0LnNldFVwcGVyKHNvdXJjZS5nZXRVcHBlcigpKTsKKwl9CisKKwkvKioKKwkgKiBDb3B5IGEgdmFsdWUgdG8gYSB0YXJnZXQgc2xvdAorCSAqCisJICogQHBhcmFtIHNtVmFsdWUKKwkgKiBAcGFyYW0gdGFyZ2V0CisJICogQHJldHVybgorCSAqLworCXB1YmxpYyBzdGF0aWMgVmFsdWVTcGVjaWZpY2F0aW9uIGNvcHlWYWx1ZShWYWx1ZVNwZWNpZmljYXRpb24gdmFsdWUsIFNsb3QgdGFyZ2V0KSB7CisJCVZhbHVlU3BlY2lmaWNhdGlvbiBuZXdWYWx1ZSA9IHRhcmdldC5jcmVhdGVWYWx1ZSh2YWx1ZS5nZXROYW1lKCksIHZhbHVlLmdldFR5cGUoKSwgdmFsdWUuZUNsYXNzKCkpOworCQlyZXR1cm4gY29weVZhbHVlKHZhbHVlLCBuZXdWYWx1ZSk7CisJfQorCisJcHVibGljIHN0YXRpYyBWYWx1ZVNwZWNpZmljYXRpb24gY29weURlZmF1bHRWYWx1ZShQcm9wZXJ0eSBzb3VyY2UsIFByb3BlcnR5IHRhcmdldCkgeworCQlWYWx1ZVNwZWNpZmljYXRpb24gdmFsdWUgPSBzb3VyY2UuZ2V0RGVmYXVsdFZhbHVlKCk7CisJCWlmICh2YWx1ZSAhPSBudWxsKSB7CisJCQlWYWx1ZVNwZWNpZmljYXRpb24gbmV3VmFsdWUgPSB0YXJnZXQuY3JlYXRlRGVmYXVsdFZhbHVlKHZhbHVlLmdldE5hbWUoKSwgdmFsdWUuZ2V0VHlwZSgpLCB2YWx1ZS5lQ2xhc3MoKSk7CisJCQlyZXR1cm4gY29weVZhbHVlKHZhbHVlLCBuZXdWYWx1ZSk7CisJCX0gZWxzZSB7CisJCQlyZXR1cm4gbnVsbDsKKwkJfQorCX0KKworCXB1YmxpYyBzdGF0aWMgVmFsdWVTcGVjaWZpY2F0aW9uIGNvcHlWYWx1ZShWYWx1ZVNwZWNpZmljYXRpb24gc21WYWx1ZSwgVmFsdWVTcGVjaWZpY2F0aW9uIHRtVmFsdWUpIHsKKwkJaWYgKHNtVmFsdWUgaW5zdGFuY2VvZiBPcGFxdWVFeHByZXNzaW9uKSB7CisJCQlPcGFxdWVFeHByZXNzaW9uIG9lVmFsdWUgPSAoT3BhcXVlRXhwcmVzc2lvbikgc21WYWx1ZTsKKwkJCU9wYXF1ZUV4cHJlc3Npb24gbm9lVmFsdWUgPSAoT3BhcXVlRXhwcmVzc2lvbikgdG1WYWx1ZTsKKwkJCWZvciAoU3RyaW5nIGxhbmd1YWdlIDogb2VWYWx1ZS5nZXRMYW5ndWFnZXMoKSkgeworCQkJCW5vZVZhbHVlLmdldExhbmd1YWdlcygpLmFkZChsYW5ndWFnZSk7CisJCQl9CisJCQlmb3IgKFN0cmluZyBib2R5IDogb2VWYWx1ZS5nZXRCb2RpZXMoKSkgeworCQkJCW5vZVZhbHVlLmdldEJvZGllcygpLmFkZChib2R5KTsKKwkJCX0KKwkJfSBlbHNlIGlmIChzbVZhbHVlIGluc3RhbmNlb2YgTGl0ZXJhbFN0cmluZykgeworCQkJKChMaXRlcmFsU3RyaW5nKSB0bVZhbHVlKS5zZXRWYWx1ZSgoKExpdGVyYWxTdHJpbmcpIHNtVmFsdWUpLmdldFZhbHVlKCkpOworCQl9IGVsc2UgaWYgKHNtVmFsdWUgaW5zdGFuY2VvZiBMaXRlcmFsSW50ZWdlcikgeworCQkJKChMaXRlcmFsSW50ZWdlcikgdG1WYWx1ZSkuc2V0VmFsdWUoKChMaXRlcmFsSW50ZWdlcikgc21WYWx1ZSkuZ2V0VmFsdWUoKSk7CisJCX0gZWxzZSBpZiAoc21WYWx1ZSBpbnN0YW5jZW9mIExpdGVyYWxVbmxpbWl0ZWROYXR1cmFsKSB7CisJCQkoKExpdGVyYWxVbmxpbWl0ZWROYXR1cmFsKSB0bVZhbHVlKS5zZXRWYWx1ZSgoKExpdGVyYWxVbmxpbWl0ZWROYXR1cmFsKSBzbVZhbHVlKS5nZXRWYWx1ZSgpKTsKKwkJfSBlbHNlIGlmIChzbVZhbHVlIGluc3RhbmNlb2YgTGl0ZXJhbEJvb2xlYW4pIHsKKwkJCSgoTGl0ZXJhbEJvb2xlYW4pIHRtVmFsdWUpLnNldFZhbHVlKCgoTGl0ZXJhbEJvb2xlYW4pIHNtVmFsdWUpLmJvb2xlYW5WYWx1ZSgpKTsKKwkJfSBlbHNlIGlmIChzbVZhbHVlIGluc3RhbmNlb2YgTGl0ZXJhbE51bGwpIHsKKwkJfQorCQlyZXR1cm4gdG1WYWx1ZTsKKwl9CisKKwkvKioKKwkgKiBDb3B5IHRoZSAoWE1MKSBJRCBmcm9tIHRoZSBzb3VyY2UgdG8gdGhlIGRlc3RpbmF0aW9uIG1vZGVsIGVsZW1lbnQuIFRoaXMKKwkgKiBpcyB1c2VmdWwsIGlmIHlvdSB3YW50IHRvIGNyZWF0ZSBhIGRpYWdyYW0gZm9yIChwYXJ0cyBvZikgdGhlIGdlbmVyYXRlZAorCSAqIHRhcmdldCBtb2RlbC4gT3RoZXJ3aXNlLCB0aGUgSURzIHdvdWxkIGNoYW5nZSB3aXRoIGVhY2ggZ2VuZXJhdGlvbiBhbmQKKwkgKiByZWZlcmVuY2VzIGZyb20gdGhlIGRpYWdyYW0gdG8gbW9kZWwgZWxlbWVudHMgd291bGQgYnJlYWsgKG9mIGNvdXJzZSwKKwkgKiB0aGV5IGNvdWxkIHN0aWxsIGJyZWFrLCBmb3IgaW5zdGFuY2UgaWYgc3RydWN0dXJhbCBtb2RpZmljYXRpb25zIG9mIHRoZQorCSAqIHNvdXJjZSBtb2RlbCBhcmUgbWFkZSkuCisJICoKKwkgKiBAcGFyYW0gc291cmNlCisJICogICAgICAgICAgICBzb3VyY2UgbW9kZWwgZWxlbWVudAorCSAqIEBwYXJhbSBkZXN0CisJICogICAgICAgICAgICBjb3JyZXNwb25kaW5nIHRhcmdldCBtb2RlbCBlbGVtZW50CisJICovCisJcHVibGljIHN0YXRpYyB2b2lkIGNvcHlJRChFT2JqZWN0IHNvdXJjZSwgRU9iamVjdCB0YXJnZXQpIHsKKwkJY29weUlEKHNvdXJjZSwgdGFyZ2V0LCAiIik7CisJfQorCisJLyoqCisJICogQ29weSB0aGUgKFhNTCkgSUQgZnJvbSB0aGUgc291cmNlIHRvIHRoZSBkZXN0aW5hdGlvbiBtb2RlbCBlbGVtZW50LgorCSAqIFByZWZpeCB0aGUgSUQgd2l0aCBhIHN0cmluZyBwYXNzZWQgYXMgcGFyYW1ldGVyCisJICoKKwkgKiBAcGFyYW0gc291cmNlCisJICogICAgICAgICAgICBzb3VyY2UgbW9kZWwgZWxlbWVudAorCSAqIEBwYXJhbSBkZXN0CisJICogICAgICAgICAgICBjb3JyZXNwb25kaW5nIHRhcmdldCBtb2RlbCBlbGVtZW50CisJICogQHBhcmFtIHByZWZpeAorCSAqICAgICAgICAgICAgYSBwcmVmaXggZm9yIHRoZSB0YXJnZXQgbW9kZWwgSUQKKwkgKi8KKwlAU3VwcHJlc3NXYXJuaW5ncygiZGVwcmVjYXRpb24iKQorCXB1YmxpYyBzdGF0aWMgdm9pZCBjb3B5SUQoRU9iamVjdCBzb3VyY2UsIEVPYmplY3QgdGFyZ2V0LCBTdHJpbmcgcHJlZml4KSB7CisJCVJlc291cmNlIHJlc291cmNlU291cmNlID0gc291cmNlLmVSZXNvdXJjZSgpOworCQlSZXNvdXJjZSByZXNvdXJjZVRhcmdldCA9IHRhcmdldC5lUmVzb3VyY2UoKTsKKwkJLy8gVE9ETzogdXNlIEVjb3JlVXRpbCBnZXRVUkkgKEludGVybmFsRU9iamVjdCkgaW5zdGVhZD8KKworCQlpZiAoKHJlc291cmNlU291cmNlIGluc3RhbmNlb2YgWE1MUmVzb3VyY2UpICYmIChyZXNvdXJjZVRhcmdldCBpbnN0YW5jZW9mIFhNTFJlc291cmNlKSkgeworCQkJWE1MUmVzb3VyY2UgeG1sUmVzU291cmNlID0gKFhNTFJlc291cmNlKSByZXNvdXJjZVNvdXJjZTsKKwkJCVhNTFJlc291cmNlIHhtbFJlc1RhcmdldCA9IChYTUxSZXNvdXJjZSkgcmVzb3VyY2VUYXJnZXQ7CisJCQlTdHJpbmcgaWQgPSBwcmVmaXggKyB4bWxSZXNTb3VyY2UuZ2V0SUQoc291cmNlKTsKKwkJCWludCBjb3VudGVyID0gMDsKKwkJCVN0cmluZyB1bmlxdWVJRCA9IGlkOworCQkJd2hpbGUgKHhtbFJlc1RhcmdldC5nZXRJRFRvRU9iamVjdE1hcCgpLmNvbnRhaW5zS2V5KHVuaXF1ZUlEKSkgeworCQkJCXVuaXF1ZUlEID0gaWQgKyBjb3VudGVyOworCQkJCWNvdW50ZXIrKzsKKwkJCX0KKwkJCXhtbFJlc1RhcmdldC5zZXRJRCh0YXJnZXQsIHVuaXF1ZUlEKTsKKwkJfQorCX0KK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9EZXBDcmVhdGlvbi5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L0RlcENyZWF0aW9uLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjA0NDI1MgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9EZXBDcmVhdGlvbi5qYXZhCkBAIC0wLDAgKzEsNDcyIEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBDRUEgTElTVC4KKyAqCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBTYWFkaWEgRGhvdWliIChDRUEgTElTVCkgc2FhZGlhLmRob3VpYkBjZWEuZnIgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQ7CisKK2ltcG9ydCBqYXZhLnV0aWwuSGFzaE1hcDsKK2ltcG9ydCBqYXZhLnV0aWwuTWFwOworaW1wb3J0IGphdmEudXRpbC5TdGFjazsKKworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzaWZpZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuSW5zdGFuY2VTcGVjaWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkluc3RhbmNlVmFsdWU7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuTm9kZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuU2xvdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5TdHJ1Y3R1cmFsRmVhdHVyZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5UeXBlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlVNTFBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuVmFsdWVTcGVjaWZpY2F0aW9uOworCitwdWJsaWMgY2xhc3MgRGVwQ3JlYXRpb24geworCisJcHJpdmF0ZSBzdGF0aWMgTWFwPE9iamVjdCwgSW50ZWdlcj4gbWFwOworCisJLyoqCisJICogQ3JlYXRlIGEgc2xvdCBhbmQgYWRkIGFuIGluc3RhbmNlIHZhbHVlIGFzc29jaWF0ZWQgd2l0aCBhIHBhcnQgaW5zdGFuY2UKKwkgKiBzcGVjaWZpY2F0aW9uLgorCSAqCisJICogQHBhcmFtIGlzCisJICogICAgICAgICAgICB0aGUgaW5zdGFuY2Ugc3BlY2lmaWNhdGlvbiBmb3Igd2hpY2ggYSBzbG90IHNob3VsZCBiZSBjcmVhdGVkCisJICogQHBhcmFtIHBhcnRJUworCSAqICAgICAgICAgICAgdGhlIGluc3RhbmNlIHNwZWNpZmljYXRpb24gYXNzb2NpYXRlZCB3aXRoIHRoZSBzbG90ICh0byBiZQorCSAqICAgICAgICAgICAgcHJlY2lzZSB3aXRoIHNsb3QncyBpbnN0YW5jZSB2YWx1ZSkKKwkgKiBAcGFyYW0gcGFydAorCSAqICAgICAgICAgICAgdGhlIHBhcnQgYXNzb2NpYXRlZCB3aXRoIHRoZSBzbG90LCBpLmUuIGl0cyBkZWZpbmluZyBmZWF0dXJlCisJICogQHJldHVybiBUaGUgY3JlYXRlZCBzbG90CisJICovCisJcHVibGljIHN0YXRpYyBTbG90IGNyZWF0ZVNsb3QoSW5zdGFuY2VTcGVjaWZpY2F0aW9uIGlzLAorCQkJSW5zdGFuY2VTcGVjaWZpY2F0aW9uIHBhcnRJUywgUHJvcGVydHkgcGFydCkgeworCQkvLyB0aGUgaW5zdGFuY2Ugc3BlY2lmaWNhdGlvbiBvZiB0aGUgY29tcG9zaXRlIGhhcyBhIHNsb3QgZm9yIGVhY2ggcGFydAorCQkvLyBhbmQgaXQgcG9pbnRzCisJCS8vIHRvIHRoZSBpbnN0YW5jZSBzcGVjaWZpY2F0aW9uIGFzc29jaWF0ZWQgd2l0aCB0aGUgcGFydC4KKwkJU2xvdCBzbG90ID0gaXMuY3JlYXRlU2xvdCgpOworCQlzbG90LnNldERlZmluaW5nRmVhdHVyZShwYXJ0KTsKKworCQlJbnN0YW5jZVZhbHVlIGl2ID0gKEluc3RhbmNlVmFsdWUpIHNsb3QuY3JlYXRlVmFsdWUobnVsbCwgbnVsbCwKKwkJCQlVTUxQYWNrYWdlLmVJTlNUQU5DRS5nZXRJbnN0YW5jZVZhbHVlKCkpOworCQlpdi5zZXRJbnN0YW5jZShwYXJ0SVMpOworCQlyZXR1cm4gc2xvdDsKKworCX0KKworCS8qKgorCSAqIENyZWF0ZSBhIFNsb3QgYW5kIGEgdmFsdWUgZm9yIGEgY29uZmlndXJhdGlvbiBhdHRyaWJ1dGUKKwkgKgorCSAqIEBwYXJhbSBhdHRyaWJ1dGUKKwkgKi8KKwlwdWJsaWMgc3RhdGljIFNsb3QgY3JlYXRlU2xvdEZvckNvbmZpZ1Byb3AoSW5zdGFuY2VTcGVjaWZpY2F0aW9uIGlzLAorCQkJUHJvcGVydHkgYXR0cmlidXRlKSB7CisKKwkJU2xvdCBzbG90ID0gaXMuY3JlYXRlU2xvdCgpOworCQlzbG90LnNldERlZmluaW5nRmVhdHVyZShhdHRyaWJ1dGUpOworCQkvLyBGb3IgcHJpbWl0aXZlIHR5cGVzLCB0aGUgVU1MIHR5cGUgZG9lcyBub3QgcHJvdmlkZSBzdWZmaWNpZW50CisJCS8vIGluZm9ybWF0aW9uIHRvIGRlY2lkZQorCQkvLyB3aGV0aGVyIGl0IGlzIGEgc3RyaW5nIG9yIGEgbnVtZXJpY2FsIHZhbHVlLiBJbiBjYXNlIG9mIHRoZSBDKysKKwkJLy8gcHJvZmlsZSwgcHJpbWl0aXZlCisJCS8vIFVNTCB0eXBlcyBkZW5vdGUgYSBsYW5ndWFnZSBzcGVjaWZpYyB0eXBlLCBidXQgd2Ugd2FudCB0byBhdm9pZCBDKysKKwkJLy8gc3BlY2lmaWMgY29kZSwgaWYKKwkJLy8gcG9zc2libGUuCisJCS8vID0+IHByYWdtYXRpYyBzb2x1dGlvbjogdXNlIExpdGVyYWxTdHJpbmcgYXMgZGVmYXVsdCwgdW5sZXNzIGEgY2hlY2sKKwkJLy8gZm9yIHNvbWUga25vd24gbnVtZXJpY2FsCisJCS8vIHByaW1pdGl2ZSB0eXBlcyBob2xkcyAoaW4gcGFydGljdWxhciB0aGUgVU1MIGFzIHdlbGwgYXMgUW9tcGFzcyBDT1JCQQorCQkvLyB0eXBlcykKKwkJLy8gSW4gYWRkaXRpb24sIHN0cmluZyB2YWx1ZXMgYXJlIG5vdCBhdXRvbWF0aWNhbGx5IHF1b3RlZCwgaS5lLiBpdCBpcworCQkvLyBwb3NzaWJsZSB0byBlbnRlciBlLmcuCisJCS8vIGEgZmxvYXQgdmFsdWUgYXMgYSBzdHJpbmcgZXhwcmVzc2lvbiAoaXQgYWxzbyBtZWFucyB0aGF0IGEgInJlYWwiCisJCS8vIHN0cmluZyB2YWx1ZSBtdXN0IGJlIHF1b3RlZAorCQkvLyBieSB0aGUgdXNlcikuCisJCVR5cGUgdHlwZSA9IGF0dHJpYnV0ZS5nZXRUeXBlKCk7CisJCWlmICh0eXBlICE9IG51bGwpIHsKKwkJCVN0cmluZyBuYW1lID0gdHlwZS5nZXROYW1lKCk7CisJCQlTdHJpbmcgcW5hbWUgPSB0eXBlLmdldFF1YWxpZmllZE5hbWUoKTsKKwkJCWlmIChuYW1lLmVxdWFscygiSW50ZWdlciIpKSB7CisJCQkJc2xvdC5jcmVhdGVWYWx1ZSgidmFsdWUgZm9yICIgKyBhdHRyaWJ1dGUuZ2V0TmFtZSgpLCB0eXBlLAorCQkJCQkJVU1MUGFja2FnZS5lSU5TVEFOQ0UuZ2V0TGl0ZXJhbEludGVnZXIoKSk7CisJCQl9IGVsc2UgaWYgKG5hbWUuZXF1YWxzKCJCb29sZWFuIikpIHsKKwkJCQlzbG90LmNyZWF0ZVZhbHVlKCJ2YWx1ZSBmb3IgIiArIGF0dHJpYnV0ZS5nZXROYW1lKCksIHR5cGUsCisJCQkJCQlVTUxQYWNrYWdlLmVJTlNUQU5DRS5nZXRMaXRlcmFsQm9vbGVhbigpKTsKKwkJCX0gZWxzZSB7CisJCQkJc2xvdC5jcmVhdGVWYWx1ZSgidmFsdWUgZm9yICIgKyBhdHRyaWJ1dGUuZ2V0TmFtZSgpLCB0eXBlLAorCQkJCQkJVU1MUGFja2FnZS5lSU5TVEFOQ0UuZ2V0TGl0ZXJhbFN0cmluZygpKTsKKwkJCX0KKwkJfQorCQlyZXR1cm4gc2xvdDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGUgYSBzdHJpbmcgc2xvdCBhbmQgYSB2YWx1ZSBmb3IgYSBjb25maWd1cmF0aW9uIGF0dHJpYnV0ZQorCSAqCisJICogQHBhcmFtIGF0dHJpYnV0ZQorCSAqLworCXB1YmxpYyBzdGF0aWMgU2xvdCBjcmVhdGVTdHJpbmdTbG90Rm9yQ29uZmlnUHJvcChJbnN0YW5jZVNwZWNpZmljYXRpb24gaXMsCisJCQlQcm9wZXJ0eSBhdHRyaWJ1dGUpIHsKKworCQlTbG90IHNsb3QgPSBpcy5jcmVhdGVTbG90KCk7CisJCXNsb3Quc2V0RGVmaW5pbmdGZWF0dXJlKGF0dHJpYnV0ZSk7CisJCVR5cGUgdHlwZSA9IGF0dHJpYnV0ZS5nZXRUeXBlKCk7CisJCWlmICh0eXBlICE9IG51bGwpIHsKKwkJCXNsb3QuY3JlYXRlVmFsdWUoInZhbHVlIGZvciAiICsgYXR0cmlidXRlLmdldE5hbWUoKSwgdHlwZSwKKwkJCQkJVU1MUGFja2FnZS5lSU5TVEFOQ0UuZ2V0TGl0ZXJhbFN0cmluZygpKTsKKwkJfQorCQlyZXR1cm4gc2xvdDsKKwl9CisKKwkvKioKKwkgKiBjcmVhdGUgYSBkZXBsb3ltZW50IHBsYW4sIGkuZS4gYSBzZXQgb2YgaW5zdGFuY2VzIHRoYXQgY29ycmVzcG9uZCB0byBhbgorCSAqIGltcGxlbWVudGF0aW9uIHdoaWNoIGlzIHBvdGVudGlhbGx5IGEgY29tcG9zaXRlLiBJbiBjYXNlIG9mIHRoZSBsYXR0ZXIsCisJICogdGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgcmVjdXJzaXZlbHkgdG8gY3JlYXRlIGRlcGxveW1lbnQgcGxhbnMgZm9yIHRoZQorCSAqIHBhcnRzLiBTaW5jZSBhIGNvbXBvc2l0ZSBpbXBsZW1lbnRhdGlvbiBtYXkgb3B0aW9uYWxseSBzcGVjaWZ5IG9ubHkgdGhlCisJICogdHlwZSBvZiBwYXJ0cyAobm90IHRoZSBjb25jcmV0ZSBpbXBsZW1lbnRhdGlvbiksIHRoaXMgZnVuY3Rpb24gYWxzbworCSAqIHN1cHBvcnRzIHRoYXQgYSB0eXBlIGlzIHBhc3NlZC4gSW4gdGhpcyBjYXNlLCBhbiBpbXBsZW1lbnRhdGlvbiBpcworCSAqIGF1dG9tYXRpY2FsbHkgYXNzaWduZWQuCisJICoKKwkgKiBAcGFyYW0gY2RwCisJICogICAgICAgICAgICB0aGUgZGVwbG95bWVudCBwbGFuIChwYWNrYWdlKSBpbiB3aGljaCB0byBjcmVhdGUgaW5zdGFuY2VzCisJICogQHBhcmFtIHR5cGVPckltcGxlbQorCSAqICAgICAgICAgICAgdGhlIHR5cGUKKwkgKiBAcGFyYW0gbmFuZQorCSAqICAgICAgICAgICAgdGhlIG5hbWUgb2YgdGhlIGluc3RhbmNlCisJICogQHBhcmFtIGNyZWF0ZVNsb3RzRm9yQ29uZmlnVmFsdWVzCisJICogICAgICAgICAgICBpZiB0cnVlLCBjcmVhdGUgc2xvdHMgZm9yIGNvbmZpZ3VyYXRpb24gdmFsdWVzCisJICovCisJcHVibGljIHN0YXRpYyBJbnN0YW5jZVNwZWNpZmljYXRpb24gY3JlYXRlRGVwUGxhbihQYWNrYWdlIGNkcCwKKwkJCUNsYXNzIHR5cGVPckltcGxlbSwgU3RyaW5nIG5hbWUsIGJvb2xlYW4gY3JlYXRlU2xvdHNGb3JDb25maWdWYWx1ZXMpCisJCQl0aHJvd3MgVHJhbnNmb3JtYXRpb25FeGNlcHRpb24KKwl7CisJCXJldHVybiBjcmVhdGVEZXBQbGFuKGNkcCwgdHlwZU9ySW1wbGVtLCBuYW1lLCBjcmVhdGVTbG90c0ZvckNvbmZpZ1ZhbHVlcywgbmV3IFN0YWNrPENsYXNzaWZpZXI+KCkpOworCX0KKworCXB1YmxpYyBzdGF0aWMgSW5zdGFuY2VTcGVjaWZpY2F0aW9uIGNyZWF0ZURlcFBsYW4oUGFja2FnZSBjZHAsCisJCQlDbGFzcyB0eXBlT3JJbXBsZW0sIFN0cmluZyBuYW1lLCBib29sZWFuIGNyZWF0ZVNsb3RzRm9yQ29uZmlnVmFsdWVzLCBTdGFjazxDbGFzc2lmaWVyPiB2aXNpdGVkQ2xhc3NpZmllcnMpCisJCQl0aHJvd3MgVHJhbnNmb3JtYXRpb25FeGNlcHRpb24KKwl7CisJCS8vIGNyZWF0ZSBhbiBpbnN0YW5jZSBzcGVjaWZpY2F0aW9uIGZvciB0aGUgY29tcG9zaXRlCisJCWlmICh2aXNpdGVkQ2xhc3NpZmllcnMuY29udGFpbnModHlwZU9ySW1wbGVtKSkgeworCQkJU3RyaW5nIHBhdGggPSAiIjsKKwkJCWZvciAoQ2xhc3NpZmllciBjbCA6IHZpc2l0ZWRDbGFzc2lmaWVycykgeworCQkJCWlmIChwYXRoLmxlbmd0aCgpID4gMCkgeworCQkJCQlwYXRoICs9ICIsICI7CisJCQkJfQorCQkJCXBhdGggKz0gY2wuZ2V0TmFtZSgpOworCQkJfQorCQkJcGF0aCArPSAiLCAiICsgdHlwZU9ySW1wbGVtLmdldE5hbWUoKTsKKwkJCXRocm93IG5ldyBUcmFuc2Zvcm1hdGlvbkV4Y2VwdGlvbigiQ2xhc3MgXCIiICsgdHlwZU9ySW1wbGVtLmdldFF1YWxpZmllZE5hbWUoKSArCisJCQkJCSJcIiBpcyByZWZlcmVuY2VkIGluIGEgY2lyY2xlISBUaHVzLCBhbiBpbmZpbml0ZSBudW1iZXIgb2YgaW5zdGFuY2Ugc3BlY2lmaWNhdGlvbnMgd291bGQgYmUgcmVxdWlyZWQuXG5cbiIgKworCQkJCQkicmVjdXJzaW9uIHBhdGg6ICIgKyBwYXRoKTsKKwkJfQorCQl2aXNpdGVkQ2xhc3NpZmllcnMucHVzaCh0eXBlT3JJbXBsZW0pOworCisJCUluc3RhbmNlU3BlY2lmaWNhdGlvbiBpcyA9IChJbnN0YW5jZVNwZWNpZmljYXRpb24pCisJCQkJY2RwLmNyZWF0ZVBhY2thZ2VkRWxlbWVudChuYW1lLCBVTUxQYWNrYWdlLmVJTlNUQU5DRS5nZXRJbnN0YW5jZVNwZWNpZmljYXRpb24oKSk7CisKKwkJLy8gVE9ETzogaGFjaywgY291bGQgYmUgbmFtZWQgZGlmZmVyZW50bHkuCisJCWlmIChuYW1lLmVxdWFscygibWFpbkluc3RhbmNlIikpIHsKKwkJCURlcFV0aWxzLnNldE1haW5JbnN0YW5jZShjZHAsIGlzKTsKKwkJfQorCisJCUNsYXNzIGltcGxlbWVudGF0aW9uID0gbnVsbDsKKworCQkvLyB0cmVhdCBIVyBhcmNoaXRlY3R1cmUgb3Igbm9kZXMgYXMgaW1wbGVtZW50YXRpb25zCisJCWlmIChVdGlscy5pc0NvbXBJbXBsKHR5cGVPckltcGxlbSkKKwkJCQl8fCB0eXBlT3JJbXBsZW0gaW5zdGFuY2VvZiBOb2RlKSB7CisJCQkvLyBpbXBsZW1lbnRhdGlvbiBpcyBrbm93biA9PiBtdXN0IGJlIGFibGUgdG8gZG8gdGhpcy4KKwkJCWlmICh0eXBlT3JJbXBsZW0gaW5zdGFuY2VvZiBDbGFzcykgeworCQkJCWltcGxlbWVudGF0aW9uID0gdHlwZU9ySW1wbGVtOworCQkJfQorCQl9CisKKwkJaWYgKCEoaW1wbGVtZW50YXRpb24gaW5zdGFuY2VvZiBDbGFzcykpIHsKKwkJCXRocm93IG5ldyBUcmFuc2Zvcm1hdGlvbkV4Y2VwdGlvbigKKwkJCQkJImNhbm5vdCBmaW5kIHN1aXRhYmxlIGltcGxlbWVudGF0aW9uIGZvciBpbnN0YW5jZSA8IiArIG5hbWUKKwkJCQkJCQkrICI+IChnaXZlbiB0eXBlIDwiICsgdHlwZU9ySW1wbGVtLmdldE5hbWUoKSArICI+KSIpOworCQl9CisJCS8vIGVsc2UgaW1wbGVtZW50YXRpb24gaXMgaW5zdGFuY2Ugb2YgQ2xhc3MgKGFuZCBub3QgbnVsbCkKKworCQlpcy5nZXRDbGFzc2lmaWVycygpLmFkZChpbXBsZW1lbnRhdGlvbik7CisJCS8vIGFkZCBjb25uZWN0b3IgYW5kIGNvbnRhaW5lciBpbXBsZW1lbnRhdGlvbnMKKworCisKKworCQlmb3IgKFByb3BlcnR5IGF0dHJpYnV0ZSA6IGltcGxlbWVudGF0aW9uLmdldEFsbEF0dHJpYnV0ZXMoKSkgeworCQkJLy8gbG9vcCBvdmVyIGFsbCBhdHRyaWJ1dGVzIChub3Qgb25seSBwYXJ0cywgc2luY2Ugd2UgbmVlZCB0bworCQkJLy8gY2FwdHVyZSBzaW5nbGV0b25zKQorCQkJaWYgKGF0dHJpYnV0ZSBpbnN0YW5jZW9mIFBvcnQpIHsKKwkJCQljb250aW51ZTsKKwkJCX0KKwkJCVR5cGUgdHlwZSA9IGF0dHJpYnV0ZS5nZXRUeXBlKCk7CisKKwkJCWlmIChVdGlscy5pc0NvbXBvc2l0aW9uKGF0dHJpYnV0ZSkpIHsKKwkJCQkvLyBjb21wb3NpdGlvbiwgYXR0cmlidXRlIGlzIGEgcGFydAorCQkJCWlmICgoKHR5cGUgaW5zdGFuY2VvZiBDbGFzcykgJiYgVXRpbHMuaXNDb21wb25lbnQoKENsYXNzKSB0eXBlKSkgfHwgdHlwZSBpbnN0YW5jZW9mIE5vZGUpIHsKKwkJCQkJQ2xhc3MgY2wgPSAoQ2xhc3MpIHR5cGU7CisKKwkJCQkJLy8gaGFjazogYWQtaG9jIHJlcGxpY2F0aW9uIHN1cHBvcnQuIEJldHRlciBzb2x1dGlvbiB2aWEgZGVzaWduIHBhdHRlcm5zCisJCQkJCWludCB1cHBlciA9IGF0dHJpYnV0ZS5nZXRVcHBlcigpOworCQkJCQlTdHJpbmcgaW5maXggPSAiIjsKKworCQkJCQkvLyBUT0RPOiBjaGVjayB2YWxpZGF0aW9uIGNvbnN0cmFpbnRzCisJCQkJCWZvciAoaW50IGkgPSAwOyBpIDwgdXBwZXI7IGkrKykgeworCQkJCQkJU3RyaW5nIHBhcnROYW1lID0gbmFtZSArICIuIiArIGF0dHJpYnV0ZS5nZXROYW1lKCk7CisJCQkJCQlpZiAodXBwZXIgPiAxKSB7CisJCQkJCQkJcGFydE5hbWUgKz0gIl8iICsgaW5maXggKyBpOworCQkJCQkJfQorCQkJCQkJSW5zdGFuY2VTcGVjaWZpY2F0aW9uIHBhcnRJUyA9IGNyZWF0ZURlcFBsYW4oY2RwLCBjbCwKKwkJCQkJCQkJcGFydE5hbWUsIGNyZWF0ZVNsb3RzRm9yQ29uZmlnVmFsdWVzLCB2aXNpdGVkQ2xhc3NpZmllcnMpOworCisJCQkJCQljcmVhdGVTbG90KGlzLCBwYXJ0SVMsIGF0dHJpYnV0ZSk7CisJCQkJCX0KKwkJCQl9CisJCQl9IGVsc2UgaWYgKHR5cGUgaW5zdGFuY2VvZiBDbGFzcykgeworCQkJCS8vIG5vIGNvbXBvc2l0aW9uIC0gb25seSBjcmVhdGUgc2xvdCwgaWYgYSBzaW5nbGV0b24KKwkJCQkvLyAob3RoZXJ3aXNlLCBpdCdzIG5vdCBjbGVhciB3aXRoIHdoaWNoIGluc3RhbmNlIHRoZSBzbG90CisJCQkJLy8gc2hvdWxkIGJlIGFzc29jaWF0ZWQpCisJCQkJTG9nLmxvZyhMb2cuSU5GT19NU0csIExvZy5ERVBMT1lNRU5ULAorCQkJCQkJIkRlcENyZWF0aW9uLmNyZWF0ZURlcFBsYW46ICIgKyB0eXBlLmdldFF1YWxpZmllZE5hbWUoKSk7CisJCQkJLy8gaWYoVXRpbHMuaXNTaW5nbGV0b24oKENsYXNzKXR5cGUpKSB7CisJCQkJLy8gLy8gaXMgYSBzaW5nbGV0b24gLSBleGFjdGx5IG9uZSBpbnN0YW5jZSBleGlzdHMKKwkJCQkvLyAvLyB1c2UgYSBjb21tb24gaW5zdGFuY2UgcHJlZml4IGZvciBzaW5nbGV0b25zCisJCQkJLy8gU3RyaW5nIHBhcnROYW1lID0gInNpbmdsZXRvbl8iICsgYXR0cmlidXRlLmdldE5hbWUoKTsKKwkJCQkvLyBQYWNrYWdlYWJsZUVsZW1lbnQgcGUgPSBjZHAuZ2V0UGFja2FnZWRFbGVtZW50KHBhcnROYW1lKTsKKwkJCQkvLworCQkJCS8vIGlmKHBlIGluc3RhbmNlb2YgSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSB7CisJCQkJLy8gLy8gaW5zdGFuY2Ugc3BlY2lmaWNhdGlvbiBmb3Igc2luZ2xldG9uIGV4aXN0cyBhbHJlYWR5CisJCQkJLy8gU2xvdCBzbG90ID0gY3JlYXRlU2xvdChpcywgKEluc3RhbmNlU3BlY2lmaWNhdGlvbilwZSwKKwkJCQkvLyBhdHRyaWJ1dGUpOworCQkJCS8vIHNsb3Quc2V0RGVmaW5pbmdGZWF0dXJlKGF0dHJpYnV0ZSk7CisJCQkJLy8gfSBlbHNlIGlmKHR5cGUgaW5zdGFuY2VvZiBDbGFzcykgeworCQkJCS8vIC8vIGluc3RhbmNlIHNwZWNpZmljYXRpb24gZm9yIHNpbmdsZXRvbiBkb2VzIG5vdCBleGlzdAorCQkJCS8vIC8vID0+IGNyZWF0ZQorCQkJCS8vIC8vIFtjYXNlIHRoYXQgYSBub24taW5zdGFuY2Ugc3BlY2lmaWNhdGlvbiB3aXRoIHRoZSBuYW1lCisJCQkJLy8gLy8gPHBhcnROYW1lPiBleGlzdHMgYWxyZWFkeQorCQkJCS8vIC8vIGlzIG5vdCBoYW5kbGVkXQorCQkJCS8vIEluc3RhbmNlU3BlY2lmaWNhdGlvbiBwYXJ0SVMgPSBjcmVhdGVEZXBQbGFuKGNkcCwKKwkJCQkvLyAoQ2xhc3MpdHlwZSwgcGFydE5hbWUsIGNyZWF0ZVNsb3RzRm9yQ29uZmlnVmFsdWVzLCB2aXNpdGVkQ2xhc3NpZmllcnMpOworCQkJCS8vIFNsb3Qgc2xvdCA9IGNyZWF0ZVNsb3QoaXMsIHBhcnRJUywgYXR0cmlidXRlKTsKKwkJCQkvLyBzbG90LnNldERlZmluaW5nRmVhdHVyZShhdHRyaWJ1dGUpOworCQkJCS8vIH0KKwkJCQkvLyB9CisJCQl9IGVsc2UgaWYgKHR5cGUgPT0gbnVsbCkgeworCQkJCXRocm93IG5ldyBUcmFuc2Zvcm1hdGlvbkV4Y2VwdGlvbigidHlwZSBvZiBhdHRyaWJ1dGUgXCIiCisJCQkJCQkrIGF0dHJpYnV0ZS5nZXROYW1lKCkgKyAiXCIgd2l0aGluIGNsYXNzIFwiIgorCQkJCQkJKyBpbXBsZW1lbnRhdGlvbi5nZXROYW1lKCkgKyAiXCIgaXMgbm90IGRlZmluZWQiKTsKKwkJCX0KKwkJfQorCQl2aXNpdGVkQ2xhc3NpZmllcnMucG9wKCk7CisJCXJldHVybiBpczsKKwl9CisKKworCisJLyoqCisJICogY3JlYXRlIGEgZGVwbG95bWVudCBwbGFuLCBpLmUuIGEgc2V0IG9mIGluc3RhbmNlcyB0aGF0IGNvcnJlc3BvbmQgdG8gYW4KKwkgKiBpbXBsZW1lbnRhdGlvbiB3aGljaCBpcyBwb3RlbnRpYWxseSBhIGNvbXBvc2l0ZS4gSW4gY2FzZSBvZiB0aGUgbGF0dGVyLAorCSAqIHRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIHJlY3Vyc2l2ZWx5IHRvIGNyZWF0ZSBkZXBsb3ltZW50IHBsYW5zIGZvciB0aGUKKwkgKiBwYXJ0cy4gU2luY2UgYSBjb21wb3NpdGUgaW1wbGVtZW50YXRpb24gbWF5IG9wdGlvbmFsbHkgc3BlY2lmeSBvbmx5IHRoZQorCSAqIHR5cGUgb2YgcGFydHMgKG5vdCB0aGUgY29uY3JldGUgaW1wbGVtZW50YXRpb24pLCB0aGlzIGZ1bmN0aW9uIGFsc28KKwkgKiBzdXBwb3J0cyB0aGF0IGEgdHlwZSBpcyBwYXNzZWQuIEluIHRoaXMgY2FzZSwgYW4gaW1wbGVtZW50YXRpb24gaXMKKwkgKiBhdXRvbWF0aWNhbGx5IGFzc2lnbmVkLgorCSAqCisJICogQHBhcmFtIGNkcAorCSAqICAgICAgICAgICAgdGhlIGRlcGxveW1lbnQgcGxhbiAocGFja2FnZSkgaW4gd2hpY2ggdG8gY3JlYXRlIGluc3RhbmNlcworCSAqIEBwYXJhbSB0eXBlT3JJbXBsZW0KKwkgKiAgICAgICAgICAgIHRoZSB0eXBlCisJICogQHBhcmFtIG5hbmUKKwkgKiAgICAgICAgICAgIHRoZSBuYW1lIG9mIHRoZSBpbnN0YW5jZQorCSAqIEBwYXJhbSBjcmVhdGVTbG90c0ZvckNvbmZpZ1ZhbHVlcworCSAqICAgICAgICAgICAgaWYgdHJ1ZSwgY3JlYXRlIHNsb3RzIGZvciBjb25maWd1cmF0aW9uIHZhbHVlcworCSAqLworCXB1YmxpYyBzdGF0aWMgSW5zdGFuY2VTcGVjaWZpY2F0aW9uIGNyZWF0ZVBsYXRmb3JtSW5zdGFuY2VzKAorCQkJUGFja2FnZSBwbGF0Zm9ybSwgQ2xhc3MgaW1wbGVtZW50YXRpb24sIFN0cmluZyBuYW1lKQorCQkJdGhyb3dzIFRyYW5zZm9ybWF0aW9uRXhjZXB0aW9uIHsKKwkJLy8gY3JlYXRlIGFuIGluc3RhbmNlIHNwZWNpZmljYXRpb24gZm9yIHRoZSBjb21wb3NpdGUKKwkJSW5zdGFuY2VTcGVjaWZpY2F0aW9uIGlzID0gbnVsbDsKKwkJaWYgKG5hbWUgIT0gbnVsbCkgeworCQkJLy8gZG9ubid0IGNyZWF0ZSBpbnN0YW5jZSBzcGVjaWZpY2F0aW9uIGZvciByb290IGVsZW1lbnQgKGRldGVjdGFibGUgdmlhIHRoZSBlbXB0eSBuYW1lKQorCQkJaXMgPSAoSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSBwbGF0Zm9ybS5jcmVhdGVQYWNrYWdlZEVsZW1lbnQobmFtZSwKKwkJCQkJVU1MUGFja2FnZS5lSU5TVEFOQ0UuZ2V0SW5zdGFuY2VTcGVjaWZpY2F0aW9uKCkpOworCQkJaXMuZ2V0Q2xhc3NpZmllcnMoKS5hZGQoaW1wbGVtZW50YXRpb24pOworCQl9CisKKwkJLy8gYWRkIGNvbm5lY3RvciBhbmQgY29udGFpbmVyIGltcGxlbWVudGF0aW9ucworCisJCWZvciAoUHJvcGVydHkgYXR0cmlidXRlIDogaW1wbGVtZW50YXRpb24uZ2V0QWxsQXR0cmlidXRlcygpKSB7CisJCQkvLyBsb29wIG92ZXIgYWxsIGF0dHJpYnV0ZXMgKG5vdCBvbmx5IHBhcnRzLCBzaW5jZSB3ZSBuZWVkIHRvCisJCQkvLyBjYXB0dXJlIHNpbmdsZXRvbnMpCisJCQlpZiAoYXR0cmlidXRlIGluc3RhbmNlb2YgUG9ydCkgeworCQkJCWNvbnRpbnVlOworCQkJfQorCQkJVHlwZSB0eXBlID0gYXR0cmlidXRlLmdldFR5cGUoKTsKKworCQkJaWYgKFV0aWxzLmlzQ29tcG9zaXRpb24oYXR0cmlidXRlKSkgeworCQkJCS8vIGNvbXBvc2l0aW9uLCBhdHRyaWJ1dGUgaXMgYSBwYXJ0CisJCQkJaWYgKHR5cGUgaW5zdGFuY2VvZiBDbGFzcykgeyAvLyBzaG91bGQgYmUgYSBub2RlLCBidXQgZG8gbm90IHJlcXVpcmUgaXQKKwkJCQkJQ2xhc3MgY2wgPSAoQ2xhc3MpIHR5cGU7CisKKwkJCQkJLy8gaGFjazogYWQtaG9jIHJlcGxpY2F0aW9uIHN1cHBvcnQuIEJldHRlciBzb2x1dGlvbiB2aWEKKwkJCQkJLy8gRGVzaWduIHBhdHRlcm5zCisJCQkJCWludCB1cHBlciA9IGF0dHJpYnV0ZS5nZXRVcHBlcigpOworCQkJCQlTdHJpbmcgaW5maXggPSAiIjsKKwkJCQkJLy8gVE9ETzogY2hlY2sgdmFsaWRhdGlvbiBjb25zdHJhaW50cworCQkJCQlmb3IgKGludCBpID0gMDsgaSA8IHVwcGVyOyBpKyspIHsKKwkJCQkJCS8vIHByZWZpeCB3aXRoIG5hbWUsIHVubGVzcyBudWxsCisJCQkJCQlTdHJpbmcgcGFydE5hbWUgPSAobmFtZSAhPSBudWxsKSA/IG5hbWUgKyAiLiIgOiAiIjsKKwkJCQkJCXBhcnROYW1lICs9IGF0dHJpYnV0ZS5nZXROYW1lKCk7CisJCQkJCQlpZiAodXBwZXIgPiAxKSB7CisJCQkJCQkJcGFydE5hbWUgKz0gIl8iICsgaW5maXggKyBpOworCQkJCQkJfQorCQkJCQkJSW5zdGFuY2VTcGVjaWZpY2F0aW9uIHBhcnRJUyA9IGNyZWF0ZVBsYXRmb3JtSW5zdGFuY2VzKAorCQkJCQkJCQlwbGF0Zm9ybSwgY2wsIHBhcnROYW1lKTsKKworCQkJCQkJaWYgKGlzICE9IG51bGwpIHsKKwkJCQkJCQljcmVhdGVTbG90KGlzLCBwYXJ0SVMsIGF0dHJpYnV0ZSk7CisJCQkJCQl9CisJCQkJCX0KKwkJCQl9CisJCQl9CisJCX0KKwkJcmV0dXJuIGlzOworCX0KKworCS8qKgorCSAqIEluaXRpYWxpemUgdGhlIGF1dG9tYXRpYyB2YWx1ZXMgd2l0aGluIGEgZGVwbG95bWVudCBwbGFuIC0gYW5kIHRoZSB1cGRhdGUKKwkgKiBldmVudHVhbCBjb3BpZXMgb2YgdGhlc2UgdmFsdWVzLgorCSAqCisJICogQHBhcmFtIGlzCisJICogICAgICAgICAgICB0aGUgbWFpbiBpbnN0YW5jZSBvZiB0aGUgZGVwbG95bWVudCBwbGFuCisJICovCisJcHVibGljIHN0YXRpYyB2b2lkIGluaXRBdXRvVmFsdWVzKEluc3RhbmNlU3BlY2lmaWNhdGlvbiBpcykgeworCQltYXAgPSBuZXcgSGFzaE1hcDxPYmplY3QsIEludGVnZXI+KCk7CisJCWluaXRBdXRvVmFsdWVzSGVscGVyKGlzKTsKKwkJU3RhY2s8SW5zdGFuY2VTcGVjaWZpY2F0aW9uPiBpc1N0YWNrID0gbmV3IFN0YWNrPEluc3RhbmNlU3BlY2lmaWNhdGlvbj4oKTsKKwkJY29weUF1dG9WYWx1ZXMoaXNTdGFjaywgaXMpOworCX0KKworCS8qKgorCSAqIEluaXRpYWxpemUgdGhlIGF1dG9tYXRpYyB2YWx1ZXMgd2l0aGluIGEgZGVwbG95bWVudCBwbGFuLgorCSAqCisJICogQHBhcmFtIGlzCisJICogICAgICAgICAgICB0aGUgbWFpbiBpbnN0YW5jZSBvZiB0aGUgZGVwbG95bWVudCBwbGFuCisJICovCisJcHVibGljIHN0YXRpYyB2b2lkIGluaXRBdXRvVmFsdWVzSGVscGVyKEluc3RhbmNlU3BlY2lmaWNhdGlvbiBpcykgeworCQlmb3IgKFNsb3Qgc2xvdCA6IGlzLmdldFNsb3RzKCkpIHsKKwkJCVN0cnVjdHVyYWxGZWF0dXJlIHNmID0gc2xvdC5nZXREZWZpbmluZ0ZlYXR1cmUoKTsKKworCQl9CisJfQorCisJLyoqCisJICogSW5pdGlhbGl6ZSB0aGUgYXV0b21hdGljIHZhbHVlcyB3aXRoaW4gYSBkZXBsb3ltZW50IHBsYW4uCisJICoKKwkgKiBAcGFyYW0gaXMKKwkgKiAgICAgICAgICAgIHRoZSBtYWluIGluc3RhbmNlIG9mIHRoZSBkZXBsb3ltZW50IHBsYW4KKwkgKi8KKwlwdWJsaWMgc3RhdGljIHZvaWQgY29weUF1dG9WYWx1ZXMoU3RhY2s8SW5zdGFuY2VTcGVjaWZpY2F0aW9uPiBpc1N0YWNrLAorCQkJSW5zdGFuY2VTcGVjaWZpY2F0aW9uIGlzKSB7CisJCWlzU3RhY2sucHVzaChpcyk7CisJCWZvciAoU2xvdCBzbG90IDogaXMuZ2V0U2xvdHMoKSkgeworCQkJU3RydWN0dXJhbEZlYXR1cmUgc2YgPSBzbG90LmdldERlZmluaW5nRmVhdHVyZSgpOworCQkJaWYgKHNmID09IG51bGwpIHsKKwkJCQkvLyB0aHJvdyBuZXcgVHJhbnNmb3JtYXRpb25FeGNlcHRpb24gKGlzLmdldE5hbWUoKSArICIgaGFzIGEgc2xvdCB3aXRob3V0IGRlZmluaW5nIGZlYXR1cmUiKTsKKwkJCQlTeXN0ZW0uZXJyLnByaW50bG4oaXMuZ2V0TmFtZSgpKTsKKwkJCQlicmVhazsKKwkJCX0KKworCQkJLy8gcmVjdXJzaW9uIGluIGNhc2Ugb2YgdmFsdWVzIHRoYXQgYXJlIGluc3RhbmNlIHZhbHVlcworCQkJZm9yIChWYWx1ZVNwZWNpZmljYXRpb24gdnMgOiBzbG90LmdldFZhbHVlcygpKSB7CisJCQkJaWYgKHZzIGluc3RhbmNlb2YgSW5zdGFuY2VWYWx1ZSkgeworCQkJCQlJbnN0YW5jZVNwZWNpZmljYXRpb24gc3ViSVMgPSAoKEluc3RhbmNlVmFsdWUpIHZzKS5nZXRJbnN0YW5jZSgpOworCQkJCQlpZiAoc3ViSVMgIT0gbnVsbCkgeworCQkJCQkJY29weUF1dG9WYWx1ZXMoaXNTdGFjaywgc3ViSVMpOworCQkJCQl9CisJCQkJfQorCQkJfQorCQl9CisJCWlzU3RhY2sucG9wKCk7CisJfQorCisJLyoqCisJICogdHJ5IHRvIGZpbmQgYSB2YWx1ZSAoVmFsdWVTcGVjaWZpY2F0aW9uKSBmb3IgdGhlIHBhc3NlZCBzb3VyY2UgZWxlbWVudCwKKwkgKiBiZWdpbm5pbmcgYSB0aGUgImRlZXBlc3QiIGluc3RhbmNlIHNwZWNpZmljYXRpb24gb2YgdGhlIHBhc3NlZCBzdGFjay4gSWYKKwkgKiBub3QgZm91bmQsIGNvbnRpbnVlIGF0IGVsZW1lbnRzIGhpZ2hlciB1cCBpbiB0aGUgaGllcmFyY2h5CisJICoKKwkgKiBAcGFyYW0gaXNTdGFjaworCSAqICAgICAgICAgICAgYSBzdGFjayBvZiBpbnN0YW5jZSBzcGVjaWZpY2F0aW9ucyBjb3JyZXNwb25kaW5nIHRvIGEgcGF0aAorCSAqICAgICAgICAgICAgd2l0aGluIGFuIGluc3RhbmNlIHRyZWUKKwkgKiBAcGFyYW0gc291cmNlCisJICogICAgICAgICAgICBhIHByb3BlcnR5IChkZWZpbmluZyBmZWF0dXJlKSBmb3Igd2hpY2ggd2Ugc2VhcmNoIGFuIGluc3RhbmNlCisJICogICAgICAgICAgICBzcGVjaWZpY2F0aW9uCisJICogQHJldHVybiBUaGUgdmFsdWUgc3BlY2lmaWNhdGlvbnMgZm9yIHRoZSBwYXNzZWQgc291cmNlIHByb3BlcnR5IG9yIG51bGwKKwkgKi8KKworCXB1YmxpYyBzdGF0aWMgVmFsdWVTcGVjaWZpY2F0aW9uIGdldE5lYXJlc3RWYWx1ZSgKKwkJCVN0YWNrPEluc3RhbmNlU3BlY2lmaWNhdGlvbj4gaXNTdGFjaywgUHJvcGVydHkgc291cmNlKSB7CisJCVN0YWNrPEluc3RhbmNlU3BlY2lmaWNhdGlvbj4gY29weSA9IG5ldyBTdGFjazxJbnN0YW5jZVNwZWNpZmljYXRpb24+KCk7CisJCWNvcHkuYWRkQWxsKGlzU3RhY2spOworCQl3aGlsZSAoIWNvcHkuaXNFbXB0eSgpKSB7CisJCQlJbnN0YW5jZVNwZWNpZmljYXRpb24gcG9wID0gY29weS5wb3AoKTsKKwkJCVZhbHVlU3BlY2lmaWNhdGlvbiB2cyA9IGdldE5lYXJlc3RWYWx1ZUhlbHBlcihpc1N0YWNrLCBwb3AsIHNvdXJjZSk7CisJCQlpZiAodnMgIT0gbnVsbCkgeworCQkJCXJldHVybiB2czsKKwkJCX0KKwkJfQorCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBIZWxwZXIgZm9yIGdldE5lYXJlc3RWYWx1ZTogc2VhcmNoIGZvciBhbiBpbnN0YW5jZSBzcGVjaWZpY2F0aW9uIHRoYXQgaGFzCisJICogc291cmNlIGFzIGRlZmluaW5nIGZlYXR1cmUuIFN0YXJ0IGF0IHRoZSBwYXNzZWQgaW5zdGFuY2Ugc3BlY2lmaWNhdGlvbiwKKwkgKiBidXQgZG8gbm90IHJlY3Vyc2VkIGludG8gZWxlbWVudHMgdGhhdCBhcmUgY29udGFpbmVkIGluIHRoZSBzdGFjay4KKwkgKgorCSAqIEBwYXJhbSBpc1N0YWNrCisJICogICAgICAgICAgICBBIHN0YWNrIG9mIGluc3RhbmNlIHNwZWNpZmljYXRpb25zIGNvcnJlc3BvbmRpbmcgdG8gYSBwYXRoCisJICogICAgICAgICAgICB3aXRoaW4gYW4gaW5zdGFuY2UgdHJlZQorCSAqIEBwYXJhbSBpcworCSAqICAgICAgICAgICAgdGhlIHN0YXJ0aW5nIGluc3RhbmNlIHNwZWNpZmljYXRpb24KKwkgKiBAcGFyYW0gc291cmNlCisJICogICAgICAgICAgICBzb3VyY2UgYSBwcm9wZXJ0eSAoZGVmaW5pbmcgZmVhdHVyZSkgZm9yIHdoaWNoIHdlIHNlYXJjaCBhbgorCSAqICAgICAgICAgICAgaW5zdGFuY2Ugc3BlY2lmaWNhdGlvbgorCSAqIEByZXR1cm4gVGhlIHZhbHVlIHNwZWNpZmljYXRpb25zIGZvciB0aGUgcGFzc2VkIHNvdXJjZSBwcm9wZXJ0eSBvciBudWxsCisJICovCisJcHVibGljIHN0YXRpYyBWYWx1ZVNwZWNpZmljYXRpb24gZ2V0TmVhcmVzdFZhbHVlSGVscGVyKAorCQkJU3RhY2s8SW5zdGFuY2VTcGVjaWZpY2F0aW9uPiBpc1N0YWNrLCBJbnN0YW5jZVNwZWNpZmljYXRpb24gaXMsCisJCQlQcm9wZXJ0eSBzb3VyY2UpIHsKKwkJZm9yIChTbG90IHNsb3QgOiBpcy5nZXRTbG90cygpKSB7CisJCQlTdHJ1Y3R1cmFsRmVhdHVyZSBzZiA9IHNsb3QuZ2V0RGVmaW5pbmdGZWF0dXJlKCk7CisJCQlpZiAoc2YgPT0gc291cmNlKSB7CisJCQkJLy8gZm91bmQgcHJvcGVydHksIG5vdyByZXR1cm4gZmlyc3QgdmFsdWUgc3BlY2lmaWNhdGlvbgorCQkJCWZvciAoVmFsdWVTcGVjaWZpY2F0aW9uIHZzIDogc2xvdC5nZXRWYWx1ZXMoKSkgeworCQkJCQlyZXR1cm4gdnM7CisJCQkJfQorCQkJCXJldHVybiBudWxsOworCQkJfQorCisJCQkvLyByZWN1cnNpb24gaW4gY2FzZSBvZiB2YWx1ZXMgdGhhdCBhcmUgaW5zdGFuY2UgdmFsdWVzCisJCQlmb3IgKFZhbHVlU3BlY2lmaWNhdGlvbiB2cyA6IHNsb3QuZ2V0VmFsdWVzKCkpIHsKKwkJCQlpZiAodnMgaW5zdGFuY2VvZiBJbnN0YW5jZVZhbHVlKSB7CisJCQkJCUluc3RhbmNlU3BlY2lmaWNhdGlvbiBzdWJJUyA9ICgoSW5zdGFuY2VWYWx1ZSkgdnMpCisJCQkJCQkJLmdldEluc3RhbmNlKCk7CisJCQkJCWlmICghaXNTdGFjay5jb250YWlucyhzdWJJUykpIHsKKwkJCQkJCS8vIG9ubHkgcmVjdXJzZSwgaWYgbm90IGNvbnRhaW5lZCBpbiBzdGFjayBvZiBpbnN0YW5jZQorCQkJCQkJLy8gc3BlY2lmaWNhdGlvbnMgKGF2b2lkIHRyYXZlcnNpbmcKKwkJCQkJCS8vIHRoZSBzYW1lIGVsZW1lbnRzIG11bHRpcGxlIHRpbWVzKQorCQkJCQkJcmV0dXJuIGdldE5lYXJlc3RWYWx1ZUhlbHBlcihpc1N0YWNrLCBzdWJJUywgc291cmNlKTsKKwkJCQkJfQorCQkJCX0KKwkJCX0KKwkJfQorCQlyZXR1cm4gbnVsbDsKKwl9Cit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RlcGxveW1lbnQvRGVwUGxhblN5bmMuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9EZXBQbGFuU3luYy5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY4YjYxOWUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RlcGxveW1lbnQvRGVwUGxhblN5bmMuamF2YQpAQCAtMCwwICsxLDEzNSBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTMgQ0VBIExJU1QuCisgKgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgU2FhZGlhIERob3VpYiAoQ0VBIExJU1QpIHNhYWRpYS5kaG91aWJAY2VhLmZyIC0gSW5pdGlhbCBBUEkgYW5kIGltcGxlbWVudGF0aW9uCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50OworCitpbXBvcnQgamF2YS51dGlsLkl0ZXJhdG9yOworCitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRlcGxveW1lbnRQbGFuOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuSW5zdGFuY2VTcGVjaWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkluc3RhbmNlVmFsdWU7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuTmFtZWRFbGVtZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuU2xvdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5UeXBlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlZhbHVlU3BlY2lmaWNhdGlvbjsKKworCisvKioKKyAqIEN1cnJlbnRseSB1bnVzZWQgc3luY2hyb25pemF0aW9uIGZvciBkZXBsb3ltZW50IHBsYW5zLgorICoKKyAqIEBzZWUgY29tcC5jZWEuZWMzbS5nZW50b29scy5jb3JlLmxpc3RlbmVycy5EZXBQbGFuTGlzdGVuZXIKKyAqCisgKiBAYXV0aG9yIGFuc2dhcgorICovCitwdWJsaWMgY2xhc3MgRGVwUGxhblN5bmMgeworCisJLyoqCisJICogU3luY2hyb25pemUgYSBkZXBsb3ltZW50IHBsYW46IHJlbW92ZSBzbG90cyB0aGF0IHJlZmVyIHRvIHByb3BlcnRpZXMgdGhhdCBleGlzdCBubyBsb25nZXIKKwkgKiBhbmQgYWRkIHRob3NlIHRoYXQgZG8gbm90IGV4aXN0IHlldAorCSAqCisJICogQHBhcmFtIGVsZW1lbnQKKwkgKiAgICAgICAgICAgIGFuIGFyYml0cmFyeSBlbGVtZW50IG9mIHRoZSBzb3VyY2UgbW9kZWwgKGkuZS4gdGhlIG1vZGVsIHRoYXQgd2lsbAorCSAqICAgICAgICAgICAgc3RvcmUgdGhlIGRlcGxveW1lbnQgcGxhbgorCSAqIEB0aHJvd3MgVHJhbnNmb3JtYXRpb25FeGNlcHRpb24KKwkgKi8KKwlwdWJsaWMgc3RhdGljIHZvaWQgc3luY0FsbERlcFBsYW5zKEVsZW1lbnQgZWxlbWVudCkgeworCQlmb3IgKFBhY2thZ2UgZGVwUGxhbiA6IERlcFBsYW5VdGlscy5nZXRBbGxEZXBQbGFucyhlbGVtZW50KSkgeworCQkJc3luY0RlcFBsYW4oZGVwUGxhbik7CisJCX0KKwl9CisKKwkvKioKKwkgKiBTeW5jaHJvbml6ZSBhIGRlcGxveW1lbnQgcGxhbjogcmVtb3ZlIHNsb3RzIHRoYXQgcmVmZXIgdG8gcHJvcGVydGllcyB0aGF0IGV4aXN0IG5vIGxvbmdlcgorCSAqIGFuZCBhZGQgdGhvc2UgdGhhdCBkbyBub3QgZXhpc3QgeWV0CisJICoKKwkgKiBAcGFyYW0gZGVwUGxhbgorCSAqIEB0aHJvd3MgVHJhbnNmb3JtYXRpb25FeGNlcHRpb24KKwkgKi8KKwlwdWJsaWMgc3RhdGljIHZvaWQgc3luY0RlcFBsYW4oUGFja2FnZSBkZXBQbGFuKSB7CisJCXJlbW92ZVVudXNlZFNsb3RzKGRlcFBsYW4pOworCQkvLyBFTGlzdDxJbnN0YW5jZVNwZWNpZmljYXRpb24+IGxpc3QgPSBuZXcgQmFzaWNFTGlzdDxJbnN0YW5jZVNwZWNpZmljYXRpb24+KCk7CisJCURlcGxveW1lbnRQbGFuIGNkcCA9IFN0VXRpbHMuZ2V0QXBwbGljYXRpb24oZGVwUGxhbiwgRGVwbG95bWVudFBsYW4uY2xhc3MpOworCQlpZiAoY2RwID09IG51bGwpIHsKKwkJCXJldHVybjsKKwkJfQorCQlJbnN0YW5jZVNwZWNpZmljYXRpb24gbWFpbkluc3RhbmNlID0gY2RwLmdldE1haW5JbnN0YW5jZSgpOworCQlhZGRDRFAoZGVwUGxhbiwgbWFpbkluc3RhbmNlLCBtYWluSW5zdGFuY2UuZ2V0TmFtZSgpKTsKKwkJLy8gbm93IGFkZCBlbGVtZW50cyB0aGF0IGFyZSBub3QgaW4gdGhlIHBsYW4gLSBhbHRob3VnaCB0aGV5IHNob3VsZAorCQkvLyBhdm9pZCB0byByZXBsaWNhdGUgY29kZSBhbHJlYWR5IGluIGRlcC1jcmVhdGlvbi4gPT4gY3JlYXRlRGVwUGxhbih0b3ApCisJCS8vIHN0cmF0ZWd5OiBjcmVhdGUgbmV3IGRlcC1wbGFuIGFuZCBjb21wYXJlPworCX0KKworCXByaXZhdGUgc3RhdGljIHZvaWQgYWRkQ0RQKFBhY2thZ2UgZGVwUGxhbiwgSW5zdGFuY2VTcGVjaWZpY2F0aW9uIGluc3RhbmNlLCBTdHJpbmcgY2Fub25pY2FsTmFtZSkKKwl7CisJCUNsYXNzIGltcGxlbWVudGF0aW9uID0gRGVwVXRpbHMuZ2V0SW1wbGVtZW50YXRpb24oaW5zdGFuY2UpOworCQlpZiAoIWluc3RhbmNlLmdldE5hbWUoKS5lcXVhbHMoY2Fub25pY2FsTmFtZSkpIHsKKwkJCWluc3RhbmNlLnNldE5hbWUoY2Fub25pY2FsTmFtZSk7CisJCX0KKwkJLy8gY2hlY2sgc3ViLWluc3RhbmNlcworCQlmb3IgKFNsb3Qgc2xvdCA6IGluc3RhbmNlLmdldFNsb3RzKCkpIHsKKwkJCUluc3RhbmNlU3BlY2lmaWNhdGlvbiBzdWJJbnN0YW5jZSA9IERlcFV0aWxzLmdldEluc3RhbmNlKHNsb3QpOworCQkJaWYgKHN1Ykluc3RhbmNlICE9IG51bGwpIHsKKwkJCQlhZGRDRFAoZGVwUGxhbiwgc3ViSW5zdGFuY2UsIGNhbm9uaWNhbE5hbWUgKyAiLiIgKyBzbG90LmdldERlZmluaW5nRmVhdHVyZSgpLmdldE5hbWUoKSk7CisJCQl9CisJCX0KKwkJZm9yIChQcm9wZXJ0eSBhdHRyaWJ1dGUgOiBVdGlscy5nZXRQYXJ0cyhpbXBsZW1lbnRhdGlvbikpIHsKKwkJCVR5cGUgdHlwZSA9IGF0dHJpYnV0ZS5nZXRUeXBlKCk7CisJCQlpZiAodHlwZSBpbnN0YW5jZW9mIENsYXNzKSB7CisJCQkJaWYgKCFoYXNTbG90KGluc3RhbmNlLCBhdHRyaWJ1dGUpKSB7CisJCQkJCXRyeSB7CisJCQkJCQlJbnN0YW5jZVNwZWNpZmljYXRpb24gcGFydElTID0KKwkJCQkJCQkJRGVwQ3JlYXRpb24uY3JlYXRlRGVwUGxhbihkZXBQbGFuLCAoQ2xhc3MpIHR5cGUsIGluc3RhbmNlLmdldE5hbWUoKSArICIuIiArIGF0dHJpYnV0ZS5nZXROYW1lKCksIHRydWUpOworCQkJCQkJRGVwUGxhblV0aWxzLmNyZWF0ZVNsb3QoZGVwUGxhbiwgaW5zdGFuY2UsIHBhcnRJUywgYXR0cmlidXRlKTsKKwkJCQkJfSBjYXRjaCAoVHJhbnNmb3JtYXRpb25FeGNlcHRpb24gZSkgeworCQkJCQkJTG9nLmxvZyhMb2cuRVJST1JfTVNHLCBMb2cuREVQTE9ZTUVOVCwgZS5nZXRNZXNzYWdlKCkpOworCQkJCQl9CisJCQkJfQorCQkJfQorCQl9CisJfQorCisJcHJpdmF0ZSBzdGF0aWMgYm9vbGVhbiBoYXNTbG90KEluc3RhbmNlU3BlY2lmaWNhdGlvbiBpbnN0YW5jZSwgUHJvcGVydHkgYXR0cmlidXRlKSB7CisJCWZvciAoU2xvdCBzbG90IDogaW5zdGFuY2UuZ2V0U2xvdHMoKSkgeworCQkJaWYgKHNsb3QuZ2V0RGVmaW5pbmdGZWF0dXJlKCkgPT0gYXR0cmlidXRlKSB7CisJCQkJcmV0dXJuIHRydWU7CisJCQl9CisJCX0KKwkJcmV0dXJuIGZhbHNlOworCX0KKworCXB1YmxpYyBzdGF0aWMgdm9pZCByZW1vdmVVbnVzZWRTbG90cyhQYWNrYWdlIGRlcFBsYW4pIHsKKwkJLy8gcmVtb3ZlIGVsZW1lbnRzIHRoYXQgYXJlIG5vIGxvbmdlciBpbiB0aGUgcGxhbgorCQlmb3IgKE5hbWVkRWxlbWVudCBtZW1iZXIgOiBkZXBQbGFuLmdldE1lbWJlcnMoKSkgeworCQkJaWYgKG1lbWJlciBpbnN0YW5jZW9mIEluc3RhbmNlU3BlY2lmaWNhdGlvbikgeworCQkJCUluc3RhbmNlU3BlY2lmaWNhdGlvbiBpbnN0YW5jZSA9IChJbnN0YW5jZVNwZWNpZmljYXRpb24pIG1lbWJlcjsKKwkJCQlJdGVyYXRvcjxTbG90PiBzbG90SXQgPSBpbnN0YW5jZS5nZXRTbG90cygpLml0ZXJhdG9yKCk7CisJCQkJd2hpbGUgKHNsb3RJdC5oYXNOZXh0KCkpIHsKKwkJCQkJU2xvdCBzbG90ID0gc2xvdEl0Lm5leHQoKTsKKwkJCQkJaWYgKHNsb3QuZ2V0RGVmaW5pbmdGZWF0dXJlKCkgPT0gbnVsbCkgeworCQkJCQkJLy8gcHJvcGVydHkgaGFzIGJlZW4gcmVtb3ZlZCA9PiByZW1vdmUgYXNzb2NpYXRlZCBzbG90CisJCQkJCQlmb3IgKFZhbHVlU3BlY2lmaWNhdGlvbiB2YWx1ZSA6IHNsb3QuZ2V0VmFsdWVzKCkpIHsKKwkJCQkJCQlpZiAodmFsdWUgaW5zdGFuY2VvZiBJbnN0YW5jZVZhbHVlKSB7CisJCQkJCQkJCUluc3RhbmNlU3BlY2lmaWNhdGlvbiBpcyA9ICgoSW5zdGFuY2VWYWx1ZSkgdmFsdWUpLmdldEluc3RhbmNlKCk7CisJCQkJCQkJCURlcFBsYW5VdGlscy5kZWxEZXBQbGFuKGlzKTsKKwkJCQkJCQl9CisJCQkJCQl9CisJCQkJCQlzbG90LmRlc3Ryb3koKTsKKwkJCQkJCXNsb3RJdC5yZW1vdmUoKTsKKwkJCQkJfQorCQkJCX0KKwkJCX0KKwkJfQorCX0KK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9EZXBQbGFuVXRpbHMuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9EZXBQbGFuVXRpbHMuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43MDM3ZmExCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L0RlcFBsYW5VdGlscy5qYXZhCkBAIC0wLDAgKzEsMzE5IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBDRUEgTElTVC4KKyAqCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBTYWFkaWEgRGhvdWliIChDRUEgTElTVCkgc2FhZGlhLmRob3VpYkBjZWEuZnIgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQ7CisKK2ltcG9ydCBqYXZhLnV0aWwuSXRlcmF0b3I7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuQmFzaWNFTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3I7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVOYW1lZEVsZW1lbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRlcGxveW1lbnRQbGFuOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzaWZpZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5FbnVtZXJhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5FbnVtZXJhdGlvbkxpdGVyYWw7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuSW5zdGFuY2VTcGVjaWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkluc3RhbmNlVmFsdWU7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuTGl0ZXJhbEludGVnZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuTGl0ZXJhbFN0cmluZzsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuU2xvdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5VTUxQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlZhbHVlU3BlY2lmaWNhdGlvbjsKKworcHVibGljIGNsYXNzIERlcFBsYW5VdGlscyB7CisKKwlwdWJsaWMgc3RhdGljIGZpbmFsIFN0cmluZyBkZXBQbGFuRm9sZGVyID0gImRlcGxveW1lbnQiOworCisJLyoqCisJICogUmV0dXJuIHRoZSBwYWNrYWdlIGluIHdoaWNoIGRlcGxveW1lbnQgcGxhbnMgYXJlIHN0b3JlZC4gQ2F2ZWF0OiBuZWVkcyB0byBiZSBleGVjdXRlZCB3aXRoaW4gYQorCSAqIHRyYW5zaXRpb24sIHNpbmNlIHRoZSBkZXBsb3ltZW50IHBsYW4gcGFja2FnZSB3aWxsIGJlIGNyZWF0ZWQsIGlmIGl0IGRvZXMgbm90IGV4aXN0IHlldC4KKwkgKgorCSAqIEBwYXJhbSBlbGVtZW50CisJICogICAgICAgICAgICBhbiBhcmJpdHJhcnkgZWxlbWVudCBvZiB0aGUgc291cmNlIG1vZGVsIChpLmUuIHRoZSBtb2RlbCB0aGF0IHdpbGwKKwkgKiAgICAgICAgICAgIHN0b3JlIHRoZSBkZXBsb3ltZW50IHBsYW4KKwkgKiBAcmV0dXJuIHBhY2thZ2UgaW4gd2hpY2ggZGVwbG95bWVudCBwbGFucyBhcmUgc3RvcmVkCisJICovCisJcHVibGljIHN0YXRpYyBQYWNrYWdlIGdldERlcFBsYW5Sb290KEVsZW1lbnQgZWxlbWVudCkgeworCQlyZXR1cm4gVXRpbHMuZ2V0Um9vdChlbGVtZW50LCBkZXBQbGFuRm9sZGVyKTsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm4gYWxsIGRlcGxveW1lbnQgcGxhbnMKKwkgKgorCSAqIEBwYXJhbSBlbGVtZW50CisJICogICAgICAgICAgICBhbiBhcmJpdHJhcnkgZWxlbWVudCBvZiB0aGUgc291cmNlIG1vZGVsIChpLmUuIHRoZSBtb2RlbCB0aGF0IHdpbGwKKwkgKiAgICAgICAgICAgIHN0b3JlIHRoZSBkZXBsb3ltZW50IHBsYW4KKwkgKiBAcmV0dXJuCisJICovCisJcHVibGljIHN0YXRpYyBFTGlzdDxQYWNrYWdlPiBnZXRBbGxEZXBQbGFucyhFbGVtZW50IGVsZW1lbnQpIHsKKwkJUGFja2FnZSByb290ID0gVXRpbHMuZ2V0VG9wKGVsZW1lbnQpOworCQlQYWNrYWdlIGRlcFBsYW5Sb290ID0gcm9vdC5nZXROZXN0ZWRQYWNrYWdlKGRlcFBsYW5Gb2xkZXIpOworCQlFTGlzdDxQYWNrYWdlPiBkZXBQbGFuTGlzdCA9IG5ldyBCYXNpY0VMaXN0PFBhY2thZ2U+KCk7CisJCWlmIChkZXBQbGFuUm9vdCAhPSBudWxsKSB7CisJCQlmb3IgKFBhY2thZ2UgcGtnIDogZGVwUGxhblJvb3QuZ2V0TmVzdGVkUGFja2FnZXMoKSkgeworCQkJCWlmIChTdFV0aWxzLmlzQXBwbGllZChwa2csIERlcGxveW1lbnRQbGFuLmNsYXNzKSkgeworCQkJCQlkZXBQbGFuTGlzdC5hZGQocGtnKTsKKwkJCQl9CisJCQl9CisJCX0KKwkJcmV0dXJuIGRlcFBsYW5MaXN0OworCX0KKworCXB1YmxpYyBzdGF0aWMgdm9pZCBkZWxEZXBQbGFuKEluc3RhbmNlU3BlY2lmaWNhdGlvbiBpcykgeworCQlJdGVyYXRvcjxTbG90PiBzbG90cyA9IGlzLmdldFNsb3RzKCkuaXRlcmF0b3IoKTsKKwkJd2hpbGUgKHNsb3RzLmhhc05leHQoKSkgeworCQkJU2xvdCBzbG90ID0gc2xvdHMubmV4dCgpOworCQkJSW5zdGFuY2VTcGVjaWZpY2F0aW9uIHN1Ykluc3RhbmNlID0gZ2V0SW5zdGFuY2Uoc2xvdCk7CisJCQlpZiAoc3ViSW5zdGFuY2UgIT0gbnVsbCkgeworCQkJCWRlbERlcFBsYW4oc3ViSW5zdGFuY2UpOworCQkJfQorCQl9CisJCUVsZW1lbnQgb3duZXIgPSBpcy5nZXRPd25lcigpOworCQlpZiAob3duZXIgaW5zdGFuY2VvZiBQYWNrYWdlKSB7CisJCQkoKFBhY2thZ2UpIG93bmVyKS5nZXRQYWNrYWdlZEVsZW1lbnRzKCkucmVtb3ZlKGlzKTsKKwkJfQorCX0KKworCS8qKgorCSAqIFJldHVybiB0aGUgaW5zdGFuY2UgdGhhdCBpcyBkZWZpbmVkIGJ5IGEgc2xvdCB2YWx1ZQorCSAqCisJICogQHBhcmFtIHNsb3QKKwkgKiBAcmV0dXJuIHRoZSBmaXJzdCBzbG90IHRoYXQgY29ycmVzcG9uZHMgdG8gYW4gaW5zdGFuY2Ugc3BlY2lmaWNhdGlvbgorCSAqLworCXB1YmxpYyBzdGF0aWMgSW5zdGFuY2VTcGVjaWZpY2F0aW9uIGdldEluc3RhbmNlKFNsb3Qgc2xvdCkgeworCQlJdGVyYXRvcjxWYWx1ZVNwZWNpZmljYXRpb24+IHZhbHVlcyA9IHNsb3QuZ2V0VmFsdWVzKCkuaXRlcmF0b3IoKTsKKwkJd2hpbGUgKHZhbHVlcy5oYXNOZXh0KCkpIHsKKwkJCVZhbHVlU3BlY2lmaWNhdGlvbiB2YWx1ZSA9IHZhbHVlcy5uZXh0KCk7CisJCQkvLyBpbnN0YW5jZXMgYXJlIGFjY2Vzc2libGUgdmlhIFZhbHVlU3BlY2lmaWNhdGlvbiBzdWJjbGFzcyBJbnN0YW5jZVZhbHVlCisJCQlpZiAodmFsdWUgaW5zdGFuY2VvZiBJbnN0YW5jZVZhbHVlKSB7CisJCQkJcmV0dXJuICgoSW5zdGFuY2VWYWx1ZSkgdmFsdWUpLmdldEluc3RhbmNlKCk7CisJCQl9CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogY3JlYXRlIGEgc2xvdCBmb3IgYSBnaXZlbiBzdWItaW5zdGFuY2Ugc3BlY2lmaWNhdGlvbi4KKwkgKgorCSAqIEBwYXJhbSBjZHAKKwkgKiAgICAgICAgICAgIGEgZGVwbG95bWVudCBwbGFuCisJICogQHBhcmFtIGlzCisJICogICAgICAgICAgICBhbiBpbnN0YW5jZSBzcGVjaWZpY2F0aW9uIGZvciBhIGNvbXBvc2l0ZSBjbGFzcworCSAqIEBwYXJhbSBwYXJ0SVMKKwkgKiAgICAgICAgICAgIHRoZSBpbnN0YW5jZSBzcGVjaWZpY2F0aW9uIG9mIGEgcGFydCB3aXRoaW4gdGhlIGNvbXBvc2l0ZQorCSAqIEBwYXJhbSBwYXJ0CisJICogICAgICAgICAgICB0aGUgcGFydCB3aXRoaW4gdGhlIGNvbXBvc2l0ZQorCSAqLworCXB1YmxpYyBzdGF0aWMgU2xvdCBjcmVhdGVTbG90KFBhY2thZ2UgY2RwLCBJbnN0YW5jZVNwZWNpZmljYXRpb24gaXMsIEluc3RhbmNlU3BlY2lmaWNhdGlvbiBwYXJ0SVMsIFByb3BlcnR5IHBhcnQpIHsKKwkJLy8gdGhlIGluc3RhbmNlIHNwZWNpZmljYXRpb24gb2YgdGhlIGNvbXBvc2l0ZSBoYXMgYSBzbG90IGZvciBlYWNoIHBhcnQgYW5kIGl0IHBvaW50cworCQkvLyB0byB0aGUgaW5zdGFuY2Ugc3BlY2lmaWNhdGlvbiBhc3NvY2lhdGVkIHdpdGggdGhlIHBhcnQuCisJCVNsb3Qgc2xvdCA9IGlzLmNyZWF0ZVNsb3QoKTsKKwkJc2xvdC5zZXREZWZpbmluZ0ZlYXR1cmUocGFydCk7CisKKwkJSW5zdGFuY2VWYWx1ZSBpdiA9IChJbnN0YW5jZVZhbHVlKQorCQkJCXNsb3QuY3JlYXRlVmFsdWUobnVsbCwgbnVsbCwgVU1MUGFja2FnZS5lSU5TVEFOQ0UuZ2V0SW5zdGFuY2VWYWx1ZSgpKTsKKwkJaXYuc2V0SW5zdGFuY2UocGFydElTKTsKKwkJcmV0dXJuIHNsb3Q7CisKKwl9CisKKwkvKioKKwkgKiBBcHBseSB0aGUgc3RlcmVvdHlwZSBkZXBsb3ltZW50IHBsYW4gYW5kIHNldCB0aGUgbWFpbkluc3RhbmNlIHZhbHVlCisJICoKKwkgKiBAcGFyYW0gY2RwCisJICogICAgICAgICAgICB0aGUgZGVwbG95bWVudCBwbGFuCisJICogQHBhcmFtIG1haW4KKwkgKiAgICAgICAgICAgIGluc3RhbmNlIHRoZSB0b3AtbGV2ZWwgaW5zdGFuY2Ugc3BlY2lmaWNhdGlvbiBvZiB0aGUgcGxhbgorCSAqLworCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRNYWluSW5zdGFuY2UoUGFja2FnZSBjZHAsIEluc3RhbmNlU3BlY2lmaWNhdGlvbiBtYWluSW5zdGFuY2UpIHsKKwkJRGVwbG95bWVudFBsYW4gY2RwQXBwID0gU3RVdGlscy5hcHBseUFwcChjZHAsIERlcGxveW1lbnRQbGFuLmNsYXNzKTsKKwkJaWYgKGNkcEFwcCAhPSBudWxsKSB7CisJCQljZHBBcHAuc2V0TWFpbkluc3RhbmNlKG1haW5JbnN0YW5jZSk7CisJCX0KKwl9CisKKwkvKioKKwkgKiBBdXRvbWF0aWNhbGx5IGNob29zZSBhbiBpbXBsZW1lbnRhdGlvbiwgaS5lLiBjaG9vc2UgdGhlIGZpcnN0IGltcGxlbWVudGF0aW9uCisJICogd2l0aGluIHRoZSBjb21wb25lbnQgbW9kZWwgdGhhdCBpbXBsZW1lbnRzIGEgZ2l2ZW4gY29tcG9uZW50IHR5cGUuCisJICovCisJcHVibGljIHN0YXRpYyBDbGFzcyBhdXRvQ2hvb3NlSW1wbGVtZW50YXRpb24oQ2xhc3NpZmllciBjb21wb25lbnRUeXBlKSB7CisJCS8vIGNob29zZSBpbXBsZW1lbnRhdGlvbiBhdXRvbWF0aWNhbGx5OiBnZXQgdGhlIGZpcnN0IG9uZSB0aGF0IGltcGxlbWVudHMgdGhlIHBhc3NlZCB0eXBlCisJCS8vIChwcm9ibGVtOiBmdXJ0aGVyIHRyZWUgZXhwYW5zaW9uIG1pZ2h0IGRlcGVuZCBvbiBjaG9zZW4gaW1wbGVtZW50YXRpb24pCisJCS8vIGdldCByZWZlcmVuY2UgdG8gY29tcG9uZW50IG1vZGVsLCB0aGVuIHNlYXJjaCBhbGwgY2xhc3NlcyBjb250YWluZWQgaW4gaXQuCisJCVBhY2thZ2UgY29tcE1vZGVsID0gVXRpbHMuZ2V0Um9vdChjb21wb25lbnRUeXBlLCAiQ29tcG9uZW50TW9kZWwiKTsKKwkJSXRlcmF0b3I8RWxlbWVudD4gZWxlbWVudHMgPSBjb21wTW9kZWwuYWxsT3duZWRFbGVtZW50cygpLml0ZXJhdG9yKCk7CisJCXdoaWxlIChlbGVtZW50cy5oYXNOZXh0KCkpIHsKKwkJCUVsZW1lbnQgZWxlbWVudCA9IGVsZW1lbnRzLm5leHQoKTsKKwkJCWlmIChlbGVtZW50IGluc3RhbmNlb2YgQ2xhc3MpIHsKKwkJCQlDbGFzcyBjYW5kaWRhdGUgPSAoQ2xhc3MpIGVsZW1lbnQ7CisJCQkJaWYgKGNhbmRpZGF0ZS5nZXRTdXBlckNsYXNzKGNvbXBvbmVudFR5cGUuZ2V0TmFtZSgpKSAhPSBudWxsKSB7CisJCQkJCXJldHVybiBjYW5kaWRhdGU7CisJCQkJfQorCQkJfQorCQl9CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIGNyZWF0ZSBhIGRlcGxveW1lbnQgcGxhbiwgaS5lLiBhIHNldCBvZiBpbnN0YW5jZXMKKwkgKiBBdXRvbWF0aWMgY2hvaWNlIG9mIGltcGxlbWVudGF0aW9ucyAob3RoZXJ3aXNlIGxlYXZlIHVuYXNzaWduZWQpCisJICoKKwkgKiBAcGFyYW0gY29tcG9zaXRlCisJICogICAgICAgICAgICBTeXN0ZW0gY29tcG9zaXRlCisJICovCisJcHVibGljIHN0YXRpYyBJbnN0YW5jZVNwZWNpZmljYXRpb24gY3JlYXRlRGVwUGxhbihQYWNrYWdlIGNkcCwgQ2xhc3NpZmllciBjb21wb3NpdGUsIFN0cmluZyBuYW1lKSB7CisJCS8vIGNyZWF0ZSBhbiBpbnN0YW5jZSBzcGVjaWZpY2F0aW9uIGZvciB0aGUgY29tcG9zaXRlCisJCUluc3RhbmNlU3BlY2lmaWNhdGlvbiBpcyA9IChJbnN0YW5jZVNwZWNpZmljYXRpb24pCisJCQkJY2RwLmNyZWF0ZVBhY2thZ2VkRWxlbWVudChuYW1lLCBVTUxQYWNrYWdlLmVJTlNUQU5DRS5nZXRJbnN0YW5jZVNwZWNpZmljYXRpb24oKSk7CisKKwkJaWYgKG5hbWUgPT0gIm1haW5JbnN0YW5jZSIpIHsKKwkJCXNldE1haW5JbnN0YW5jZShjZHAsIGlzKTsKKwkJfQorCisJCUNsYXNzIGltcGxlbWVudGF0aW9uID0gbnVsbDsKKworCQlpZiAoVXRpbHMuaXNDb21wSW1wbChjb21wb3NpdGUpKSB7CisJCQkvLyBpbXBsZW1lbnRhdGlvbiBpcyBrbm93biA9PiBtdXN0IGJlIGFibGUgdG8gZG8gdGhpcy4KKwkJCWlmIChjb21wb3NpdGUgaW5zdGFuY2VvZiBDbGFzcykgeworCQkJCWltcGxlbWVudGF0aW9uID0gKENsYXNzKSBjb21wb3NpdGU7CisJCQl9CisJCX0gZWxzZSB7CisJCQkvLyBUT0RPOiByZWFsbHkgbmVlZCB0aGF0PyAoYmV0dGVyIGluZGljYXRlIHRvIHVzZXIgdGhhdCBoZSBuZWVkcyB0byBjaG9vc2U/KQorCQkJLy8gbmVlZCBoaW50IG9uIHR5cGUgbGV2ZWwgKGlmIHdlIHdhbnQgdG8gYXZvaWQgbG9vc2luZyBpbmZvcm1hdGlvbikKKwkJCWltcGxlbWVudGF0aW9uID0gYXV0b0Nob29zZUltcGxlbWVudGF0aW9uKGNvbXBvc2l0ZSk7CisJCX0KKworCQlpZiAoIShpbXBsZW1lbnRhdGlvbiBpbnN0YW5jZW9mIENsYXNzKSkgeworCQkJcmV0dXJuIGlzOworCQl9CisJCS8vIGVsc2UgaW1wbGVtZW50YXRpb24gaXMgaW5zdGFuY2Ugb2YgQ2xhc3MgKGFuZCBub3QgbnVsbCkKKworCQlpcy5nZXRDbGFzc2lmaWVycygpLmFkZChpbXBsZW1lbnRhdGlvbik7CisJCS8qCisJCSAqIGlmIChoYXNTdGVyZW90eXBlIChjb21wb3NpdGUpLCBjb250YWluZXJJbXBsZW1lbnRhdGlvbikgeworCQkgKiBpcy5nZXRDbGFzc2lmaWVycyAoKS5hZGQgKGNvbnRhaW5lckltcGxlbSk7CisJCSAqIH0KKwkJICovCisKKwkJZm9yIChQcm9wZXJ0eSBwYXJ0IDogVXRpbHMuZ2V0UGFydHMoaW1wbGVtZW50YXRpb24pKSB7CisJCQlpZiAocGFydCBpbnN0YW5jZW9mIFBvcnQpIHsKKwkJCQljb250aW51ZTsKKwkJCX0KKwkJCUluc3RhbmNlU3BlY2lmaWNhdGlvbiBwYXJ0SVMgPQorCQkJCQljcmVhdGVEZXBQbGFuKGNkcCwgKENsYXNzaWZpZXIpIHBhcnQuZ2V0VHlwZSgpLCBuYW1lICsgIi4iICsgcGFydC5nZXROYW1lKCkpOworCisJCQljcmVhdGVTbG90KGNkcCwgaXMsIHBhcnRJUywgcGFydCk7CisJCX0KKwkJcmV0dXJuIGlzOworCX0KKworCXB1YmxpYyBzdGF0aWMgdm9pZCBjb25maWd1cmVQcm9wZXJ0eShJbnN0YW5jZVNwZWNpZmljYXRpb24gaW5zdGFuY2UsIEVOYW1lZEVsZW1lbnQgcHJvcGVydHksIFN0cmluZyB2YWx1ZSkgeworCQljb25maWd1cmVQcm9wZXJ0eShpbnN0YW5jZSwgcHJvcGVydHkuZ2V0TmFtZSgpLCB2YWx1ZSk7CisJfQorCisJcHVibGljIHN0YXRpYyB2b2lkIGNvbmZpZ3VyZVByb3BlcnR5KEluc3RhbmNlU3BlY2lmaWNhdGlvbiBpbnN0YW5jZSwgU3RyaW5nIHByb3BlcnR5TmFtZSwgU3RyaW5nIHZhbHVlKSB7CisJCUNsYXNzaWZpZXIgZXh0ZW5zaW9uID0gRGVwVXRpbHMuZ2V0Q2xhc3NpZmllcihpbnN0YW5jZSk7CisJCVByb3BlcnR5IGF0dHJpYnV0ZSA9IChQcm9wZXJ0eSkgVXRpbHMuZ2V0TmFtZWRFbGVtZW50RnJvbUxpc3QoZXh0ZW5zaW9uLmdldEFsbEF0dHJpYnV0ZXMoKSwgcHJvcGVydHlOYW1lKTsKKwkJaWYgKGF0dHJpYnV0ZSA9PSBudWxsKSB7CisJCQl0aHJvdyBuZXcgUnVudGltZUV4Y2VwdGlvbigiY2Fubm90IGZpbmQgYXR0cmlidXRlICIgKyBwcm9wZXJ0eU5hbWUgKyAiIGluIGNsYXNzaWZpZXIgIiArIGV4dGVuc2lvbi5nZXROYW1lKCkpOworCQl9CisJCWlmIChhdHRyaWJ1dGUuZ2V0VHlwZSgpIGluc3RhbmNlb2YgRW51bWVyYXRpb24pIHsKKwkJCWNvbmZpZ3VyZUVudW1Qcm9wZXJ0eShpbnN0YW5jZSwgcHJvcGVydHlOYW1lLCB2YWx1ZSk7CisJCX0KKwkJZWxzZSB7CisJCQkvLyBjcmVhdGUgYSBzbG90IGZvciBhIHN0cmluZyB2YWx1ZQorCQkJU2xvdCBzbG90U3RyaW5nVmFsID0gRGVwQ3JlYXRpb24uY3JlYXRlU2xvdEZvckNvbmZpZ1Byb3AoaW5zdGFuY2UsIGF0dHJpYnV0ZSk7CisJCQlpZiAoc2xvdFN0cmluZ1ZhbC5nZXRWYWx1ZXMoKS5nZXQoMCkgaW5zdGFuY2VvZiBMaXRlcmFsU3RyaW5nKSB7CisJCQkJKChMaXRlcmFsU3RyaW5nKSBzbG90U3RyaW5nVmFsLmdldFZhbHVlcygpLmdldCgwKSkuc2V0VmFsdWUodmFsdWUpOworCQkJfQorCQkJZWxzZSB7CisJCQkJLy8gaW5kaWNhdGVzIHRoYXQgb3BlcmF0aW9uIGhhcyBiZWVuIGNhbGxlZCBhbHRob3VnaCB0eXBlcyBkbyBub3QgbWF0Y2gKKwkJCQl0aHJvdyBuZXcgUnVudGltZUV4Y2VwdGlvbigiY29uZmlndXJhdGlvbiBvZiBwcm9wZXJ0eSAiICsgcHJvcGVydHlOYW1lICsgIiBmYWlsZWQ6IHR5cGUgaXMgbm90IGEgc3RyaW5nIik7CisJCQl9CisJCX0KKworCX0KKworCXB1YmxpYyBzdGF0aWMgdm9pZCBjb25maWd1cmVQcm9wZXJ0eShJbnN0YW5jZVNwZWNpZmljYXRpb24gaW5zdGFuY2UsIEVOYW1lZEVsZW1lbnQgcHJvcGVydHksIGludCB2YWx1ZSkgeworCQljb25maWd1cmVQcm9wZXJ0eShpbnN0YW5jZSwgcHJvcGVydHkuZ2V0TmFtZSgpLCB2YWx1ZSk7CisJfQorCisJcHVibGljIHN0YXRpYyB2b2lkIGNvbmZpZ3VyZVByb3BlcnR5KEluc3RhbmNlU3BlY2lmaWNhdGlvbiBpbnN0YW5jZSwgU3RyaW5nIHByb3BlcnR5TmFtZSwgaW50IHZhbHVlKSB7CisJCUNsYXNzaWZpZXIgZXh0ZW5zaW9uID0gRGVwVXRpbHMuZ2V0Q2xhc3NpZmllcihpbnN0YW5jZSk7CisJCVByb3BlcnR5IGF0dHJpYnV0ZSA9IChQcm9wZXJ0eSkgVXRpbHMuZ2V0TmFtZWRFbGVtZW50RnJvbUxpc3QoZXh0ZW5zaW9uLmdldEFsbEF0dHJpYnV0ZXMoKSwgcHJvcGVydHlOYW1lKTsKKwkJaWYgKGF0dHJpYnV0ZSA9PSBudWxsKSB7CisJCQl0aHJvdyBuZXcgUnVudGltZUV4Y2VwdGlvbigiY2Fubm90IGZpbmQgYXR0cmlidXRlICIgKyBwcm9wZXJ0eU5hbWUgKyAiIGluIGNsYXNzaWZpZXIgIiArIGV4dGVuc2lvbi5nZXROYW1lKCkpOworCQl9CisJCVNsb3Qgc2xvdEludFZhbCA9IGluc3RhbmNlLmNyZWF0ZVNsb3QoKTsKKwkJc2xvdEludFZhbC5zZXREZWZpbmluZ0ZlYXR1cmUoYXR0cmlidXRlKTsKKwkJTGl0ZXJhbEludGVnZXIgaW50VmFsdWUgPSAoTGl0ZXJhbEludGVnZXIpCisJCQkJc2xvdEludFZhbC5jcmVhdGVWYWx1ZSgidmFsdWUgZm9yICIgKyBhdHRyaWJ1dGUuZ2V0TmFtZSgpLCBhdHRyaWJ1dGUuZ2V0VHlwZSgpLCBVTUxQYWNrYWdlLmVJTlNUQU5DRS5nZXRMaXRlcmFsSW50ZWdlcigpKTsKKwkJaW50VmFsdWUuc2V0VmFsdWUodmFsdWUpOworCisJfQorCisJLyoqCisJICogQ29udmVuaWVuY2UgZnVuY3Rpb246IGFsbG93IHRoYXQgYW4gZWNvcmUgbmFtZWQgZWxlbWVudCBpcyBwYXNzZWQgaW5zdGVhZCBvZiBhIHByb3BlcnR5IG5hbWUuIFRoaXMgaXMgdXNlZnVsIGlmIHRoZQorCSAqIHBhcmFtZXRlciB0aGF0IHNob3VsZCBiZSBjb25maWd1cmVkIHN0ZW1zIGZyb20gYSBzdGF0aWMgcHJvZmlsZSBbVE9ETzogc2hvdWxkIG5vdCBiZSBpbiB0aGUgZ2VuZXJhbCBjbGFzcyBzdXBwb3J0LCBidXQKKwkgKiBpbiB0aGUgaW5zdGFuY2UgY29uZmlndXJhdG9ycyBmb3IgUlQtRGVzY3JpYmUpCisJICoKKwkgKiBAcGFyYW0gaW5zdGFuY2UKKwkgKiBAcGFyYW0gZXh0ZW5zaW9uCisJICogQHBhcmFtIHByb3BlcnR5CisJICogQHBhcmFtIHZhbHVlCisJICovCisJcHVibGljIHN0YXRpYyB2b2lkIGNvbmZpZ3VyZVByb3BlcnR5KEluc3RhbmNlU3BlY2lmaWNhdGlvbiBpbnN0YW5jZSwgRU5hbWVkRWxlbWVudCBwcm9wZXJ0eSwgRW51bWVyYXRvciB2YWx1ZSkgeworCQljb25maWd1cmVQcm9wZXJ0eShpbnN0YW5jZSwgcHJvcGVydHkuZ2V0TmFtZSgpLCB2YWx1ZSk7CisJfQorCisJLyoqCisJICogY29uZmlndXJlIGEgcHJvcGVydHkgZm9yIGFuIGVudW1lcmF0aW9uLiBFbnVtZXJhdGlvbnMgYXJlIGEgYml0IGRpZmZpY3VsdCB0byBoYW5kbGUsIHNpbmNlIHRoZSBlbnVtZXJhdGlvbiBsaXRlcmFsIGl0c2VsZgorCSAqIG11c3QgYmUgY3JlYXRlZCBmaXJzdCBpbiBmb3JtIG9mIGFuIGluc3RhbmNlIHNwZWNpZmljYXRpb24KKwkgKgorCSAqIEBwYXJhbSBpbnN0YW5jZQorCSAqICAgICAgICAgICAgVGhlIGluc3RhbmNlIG9mIHdoaWNoIGFuIGF0dHJpYnV0ZSBzaG91bGQgYmUgY29uZmlndXJlZC4KKwkgKiBAcGFyYW0gcHJvcGVydHlOYW1lCisJICogICAgICAgICAgICBUaGUgbmFtZSBvZiB0aGUgcHJvcGVydHkgdGhhdCBzaG91bGQgYmUgY29uZmlndXJlZAorCSAqIEBwYXJhbSB2YWx1ZQorCSAqICAgICAgICAgICAgaXRzIHZhbHVlIGluIGZvcm0gb2YgYW4gZWxlbWVudCBvZiBhIHN0YXRpYyBwcm9maWxlIFtUT0RPOiBub3QgZ2VuZXJhbCBlbm91Z2g/XQorCSAqLworCXB1YmxpYyBzdGF0aWMgdm9pZCBjb25maWd1cmVQcm9wZXJ0eShJbnN0YW5jZVNwZWNpZmljYXRpb24gaW5zdGFuY2UsIFN0cmluZyBwcm9wZXJ0eU5hbWUsIEVudW1lcmF0b3IgdmFsdWUpIHsKKwkJY29uZmlndXJlUHJvcGVydHkoaW5zdGFuY2UsIHByb3BlcnR5TmFtZSwgdmFsdWUuZ2V0TmFtZSgpKTsKKwl9CisKKwlwdWJsaWMgc3RhdGljIHZvaWQgY29uZmlndXJlRW51bVByb3BlcnR5KEluc3RhbmNlU3BlY2lmaWNhdGlvbiBpbnN0YW5jZSwgU3RyaW5nIHByb3BlcnR5TmFtZSwgU3RyaW5nIGxpdGVyYWxOYW1lKSB7CisJCUNsYXNzaWZpZXIgZXh0ZW5zaW9uID0gRGVwVXRpbHMuZ2V0Q2xhc3NpZmllcihpbnN0YW5jZSk7CisJCVByb3BlcnR5IGF0dHJpYnV0ZSA9IChQcm9wZXJ0eSkgVXRpbHMuZ2V0TmFtZWRFbGVtZW50RnJvbUxpc3QoZXh0ZW5zaW9uLmdldEFsbEF0dHJpYnV0ZXMoKSwgcHJvcGVydHlOYW1lKTsKKwkJaWYgKGF0dHJpYnV0ZSA9PSBudWxsKSB7CisJCQl0aHJvdyBuZXcgUnVudGltZUV4Y2VwdGlvbigiY2Fubm90IGZpbmQgYXR0cmlidXRlICIgKyBwcm9wZXJ0eU5hbWUgKyAiIGluIGNsYXNzaWZpZXIgIiArIGV4dGVuc2lvbi5nZXROYW1lKCkpOworCQl9CisKKwkJaWYgKGF0dHJpYnV0ZS5nZXRUeXBlKCkgaW5zdGFuY2VvZiBFbnVtZXJhdGlvbikgeworCQkJRW51bWVyYXRpb24gZW51bWVyYXRpb24gPSAoRW51bWVyYXRpb24pIGF0dHJpYnV0ZS5nZXRUeXBlKCk7CisJCQlmb3IgKEVudW1lcmF0aW9uTGl0ZXJhbCBlbnVtTGl0ZXJhbCA6IGVudW1lcmF0aW9uLmdldE93bmVkTGl0ZXJhbHMoKSkgeworCQkJCWlmIChlbnVtTGl0ZXJhbC5nZXRMYWJlbCgpLmVxdWFscyhsaXRlcmFsTmFtZSkpIHsKKwkJCQkJU2xvdCBzbG90RW51bVZhbCA9IGluc3RhbmNlLmNyZWF0ZVNsb3QoKTsKKwkJCQkJc2xvdEVudW1WYWwuc2V0RGVmaW5pbmdGZWF0dXJlKGF0dHJpYnV0ZSk7CisJCQkJCUluc3RhbmNlVmFsdWUgZW51bUxpdFZhbHVlID0gKEluc3RhbmNlVmFsdWUpCisJCQkJCQkJc2xvdEVudW1WYWwuY3JlYXRlVmFsdWUoInZhbHVlIGZvciAiICsgYXR0cmlidXRlLmdldE5hbWUoKSwgYXR0cmlidXRlLmdldFR5cGUoKSwgVU1MUGFja2FnZS5lSU5TVEFOQ0UuZ2V0SW5zdGFuY2VWYWx1ZSgpKTsKKwkJCQkJZW51bUxpdFZhbHVlLnNldEluc3RhbmNlKGVudW1MaXRlcmFsKTsKKwkJCQkJYnJlYWs7CisJCQkJfQorCQkJfQorCQl9CisJfQorfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L0RlcFV0aWxzLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RlcGxveW1lbnQvRGVwVXRpbHMuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MGVmYWJkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L0RlcFV0aWxzLmphdmEKQEAgLTAsMCArMSwzMTAgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIENFQSBMSVNULgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBEaG91aWIgKENFQSBMSVNUKSBzYWFkaWEuZGhvdWliQGNlYS5mciAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudDsKKworaW1wb3J0IGphdmEudXRpbC5JdGVyYXRvcjsKK2ltcG9ydCBqYXZhLnV0aWwuU3RhY2s7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuQmFzaWNFTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLlVuaXF1ZUVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FU3RydWN0dXJhbEZlYXR1cmUuU2V0dGluZzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGVwbG95bWVudFBsYW47CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi5jb21tb24udXRpbC5VTUwyVXRpbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5BZ2dyZWdhdGlvbktpbmQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3NpZmllcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkluc3RhbmNlU3BlY2lmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5JbnN0YW5jZVZhbHVlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZWFibGVFbGVtZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlNsb3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuU3RydWN0dXJhbEZlYXR1cmU7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuVmFsdWVTcGVjaWZpY2F0aW9uOworCisKKy8qKgorICogVXRpbGl0aWVzIGFyb3VuZCBpbnN0YW5jZXMgKHdpdGhpbiBkZXBsb3ltZW50IHBsYW4pCisgKiBbRGVwUGxhblV0aWxzP10KKyAqIFtidXQgbWlzc2luZzogY3JlYXRpb24sIC4uLiwgYWxsb2NhdGlvbj9dCisgKiBTdHJ1Y3R1cmF0aW9uID8/CisgKgorICogQGF1dGhvciBhbnNnYXIKKyAqCisgKi8KK3B1YmxpYyBjbGFzcyBEZXBVdGlscyB7CisKKworCisJLyoqCisJICogRmluZCBhIHN1YiBpbnN0YW5jZSB2aWEgaXRzIG5hbWUuIFRoaXMgaXMgaW4gcGFydGljdWxhciB1c2VmdWwgZm9yIGNvbm5lY3RvcnMgdGhhdCBjYW5ub3QgYmUKKwkgKiBmb3VuZCB2aWEgYSBzbG90LCBzaW5jZSBVTUwgb25seSBzdXBwb3J0cyBzdHJ1Y3R1cmFsIGZlYXR1cmVzIChhIGNvbm5lY3RvciBpcyBvbmx5IGEgZmVhdHVyZSkKKwkgKiBpbiB0aGUgZGVmaW5pbmdGZWF0dXJlIGF0dHJpYnV0ZSBvZiBhIHNsb3QuCisJICoKKwkgKiBAcGFyYW0gb3duaW5nSW5zdGFuY2UKKwkgKiAgICAgICAgICAgIGFuIG93bmluZyBpbnN0YW5jZQorCSAqIEBwYXJhbSBuYW1lCisJICogICAgICAgICAgICBuYW1lIG9mIHRoZSBzdWItZWxlbWVudCAodW5xdWFsaWZpZWQpCisJICogQHJldHVybiB0aGUgZm91bmQgc3ViLWluc3RhbmNlIG9yIG51bGwKKwkgKi8KKwlwdWJsaWMgc3RhdGljIEluc3RhbmNlU3BlY2lmaWNhdGlvbiBnZXROYW1lZFN1Ykluc3RhbmNlKEluc3RhbmNlU3BlY2lmaWNhdGlvbiBvd25pbmdJbnN0YW5jZSwgU3RyaW5nIG5hbWUpIHsKKwkJRWxlbWVudCBjZHAgPSBvd25pbmdJbnN0YW5jZS5nZXRPd25lcigpOworCQlTdHJpbmcgY2FuZGlkYXRlTmFtZSA9IG93bmluZ0luc3RhbmNlLmdldE5hbWUoKSArICIuIiArIG5hbWU7CisJCWlmIChjZHAgaW5zdGFuY2VvZiBQYWNrYWdlKSB7CisJCQlmb3IgKFBhY2thZ2VhYmxlRWxlbWVudCBpbnN0YW5jZSA6ICgoUGFja2FnZSkgY2RwKS5nZXRQYWNrYWdlZEVsZW1lbnRzKCkpIHsKKwkJCQlpZiAoaW5zdGFuY2UgaW5zdGFuY2VvZiBJbnN0YW5jZVNwZWNpZmljYXRpb24pIHsKKwkJCQkJSW5zdGFuY2VTcGVjaWZpY2F0aW9uIGNhbmRpZGF0ZSA9IChJbnN0YW5jZVNwZWNpZmljYXRpb24pIGluc3RhbmNlOworCisJCQkJCWlmIChjYW5kaWRhdGVOYW1lICE9IG51bGwpIHsKKwkJCQkJCWlmIChjYW5kaWRhdGVOYW1lLmVxdWFscyhjYW5kaWRhdGUuZ2V0TmFtZSgpKSkgeworCQkJCQkJCXJldHVybiBjYW5kaWRhdGU7CisJCQkJCQl9CisJCQkJCX0KKwkJCQl9CisJCQl9CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisKKworCS8qKgorCSAqIHJldHVybiBhbiBpbnN0YW5jZSBzcGVjaWZpY2F0aW9uIGZvciB0aGUgbWFpbiBpbnN0YW5jZSB3aXRoaW4KKwkgKiBhIHBhY2thZ2UuCisJICoKKwkgKiBAcGFyYW0gY2RwCisJICogICAgICAgICAgICB0aGUgZGVwbG95bWVudCBwbGFuCisJICovCisJcHVibGljIHN0YXRpYyBJbnN0YW5jZVNwZWNpZmljYXRpb24gZ2V0TWFpbkluc3RhbmNlKFBhY2thZ2UgY2RwKSB7CisJCURlcGxveW1lbnRQbGFuIGRwID0gU3RVdGlscy5nZXRBcHBsaWNhdGlvbihjZHAsIERlcGxveW1lbnRQbGFuLmNsYXNzKTsKKwkJcmV0dXJuIGRwLmdldE1haW5JbnN0YW5jZSgpOworCX0KKworCS8qKgorCSAqIEFwcGx5IHRoZSBzdGVyZW90eXBlIGRlcGxveW1lbnQgcGxhbiBhbmQgc2V0IHRoZSBtYWluSW5zdGFuY2UgdmFsdWUKKwkgKgorCSAqIEBwYXJhbSBjZHAKKwkgKiAgICAgICAgICAgIHRoZSBkZXBsb3ltZW50IHBsYW4KKwkgKiBAcGFyYW0gbWFpbgorCSAqICAgICAgICAgICAgaW5zdGFuY2UgdGhlIHRvcC1sZXZlbCBpbnN0YW5jZSBzcGVjaWZpY2F0aW9uIG9mIHRoZSBwbGFuCisJICovCisJcHVibGljIHN0YXRpYyB2b2lkIHNldE1haW5JbnN0YW5jZShQYWNrYWdlIGNkcCwgSW5zdGFuY2VTcGVjaWZpY2F0aW9uIG1haW5JbnN0YW5jZSkgeworCQlTdFV0aWxzLmFwcGx5KGNkcCwgRGVwbG95bWVudFBsYW4uY2xhc3MpOworCQlEZXBsb3ltZW50UGxhbiBkcCA9IFN0VXRpbHMuZ2V0QXBwbGljYXRpb24oY2RwLCBEZXBsb3ltZW50UGxhbi5jbGFzcyk7CisJCWRwLnNldE1haW5JbnN0YW5jZShtYWluSW5zdGFuY2UpOworCX0KKworCS8qKgorCSAqIHJldHVybiB0aGUgaW1wbGVtZW50YXRpb24gYXNzb2NpYXRlZCB3aXRoIGFuIGluc3RhbmNlIHNwZWNpZmljYXRpb24sIGkuZS4gYQorCSAqIENsYXNzLgorCSAqCisJICogQHBhcmFtIGluc3RhbmNlCisJICogQHJldHVybgorCSAqLworCXB1YmxpYyBzdGF0aWMgQ2xhc3MgZ2V0SW1wbGVtZW50YXRpb24oSW5zdGFuY2VTcGVjaWZpY2F0aW9uIGluc3RhbmNlKSB7CisJCUNsYXNzaWZpZXIgY2wgPSBnZXRDbGFzc2lmaWVyKGluc3RhbmNlKTsKKwkJaWYgKGNsIGluc3RhbmNlb2YgQ2xhc3MpIHsKKwkJCXJldHVybiAoQ2xhc3MpIGNsOworCQl9CisJCXJldHVybiBudWxsOworCX0KKworCisKKwkvKioKKwkgKiBSZXR1cm4gdGhlIGZpcnN0IGNsYXNzaWZpZXIgcmVmZXJlbmNlZCBieSBhbiBpbnN0YW5jZSBzcGVjaWZpY2F0aW9uLiBXaGVyZWFzIFVNTCBzdXBwb3J0cworCSAqIGEgc2V0IG9mIGNsYXNzaWZpZXJzLCB3ZSBhc3N1bWUgdGhhdCB0aGF0IGFuIGluc3RhbmNlIHNwZWNpZmljYXRpb24gaGFzIG9ubHkgb25lLgorCSAqCisJICogQHBhcmFtIGluc3RhbmNlCisJICogICAgICAgICAgICB0aGUgaW5zdGFuY2UsIGZvciB3aGljaCB3ZSBhcmUgaW50ZXJlc3RlZCBpbiB0eXBlIGluZm9ybWF0aW9uCisJICovCisJcHVibGljIHN0YXRpYyBDbGFzc2lmaWVyIGdldENsYXNzaWZpZXIoSW5zdGFuY2VTcGVjaWZpY2F0aW9uIGluc3RhbmNlKSB7CisJCUl0ZXJhdG9yPENsYXNzaWZpZXI+IGNsYXNzaWZpZXJJdCA9IGluc3RhbmNlLmdldENsYXNzaWZpZXJzKCkuaXRlcmF0b3IoKTsKKwkJLy8gc2ltcGx5IHJldHVybiB0aGUgZmlyc3QgZWxlbWVudCAoaWYgdGhlcmUgaXMgYW55KQorCQlpZiAoY2xhc3NpZmllckl0Lmhhc05leHQoKSkgeworCQkJcmV0dXJuIGNsYXNzaWZpZXJJdC5uZXh0KCk7CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJuIHRoZSBmaXJzdCBpbnN0YW5jZSBzcGVjaWZpY2F0aW9uIHdpdGhpbiBhIGRlcGxveW1lbnQgcGxhbiB0aGF0IGluc3RhbnRpYXRlcyBhIGdpdmVuCisJICogY2xhc3NpZmllcgorCSAqCisJICogQHBhcmFtIGNkcAorCSAqICAgICAgICAgICAgdGhlIGRlcGxveW1lbnQgcGxhbgorCSAqIEBwYXJhbSBjbAorCSAqICAgICAgICAgICAgdGhlIGNsYXNzaWZpZXIKKwkgKiBAcmV0dXJuCisJICovCisJcHVibGljIHN0YXRpYyBJbnN0YW5jZVNwZWNpZmljYXRpb24gZ2V0SW5zdGFuY2VGb3JDbGFzc2lmaWVyKFBhY2thZ2UgY2RwLCBDbGFzc2lmaWVyIGNsKSB7CisJCWZvciAoUGFja2FnZWFibGVFbGVtZW50IHBlIDogY2RwLmdldFBhY2thZ2VkRWxlbWVudHMoKSkgeworCQkJaWYgKHBlIGluc3RhbmNlb2YgSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSB7CisJCQkJSW5zdGFuY2VTcGVjaWZpY2F0aW9uIGlzID0gKEluc3RhbmNlU3BlY2lmaWNhdGlvbikgcGU7CisJCQkJaWYgKGdldENsYXNzaWZpZXIoaXMpID09IGNsKSB7CisJCQkJCXJldHVybiBpczsKKwkJCQl9CisJCQl9CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJuIHRoZSAodW5pcXVlKSBsaXN0IG9mIGltcGxlbWVudGF0aW9ucyB0aGF0IGFyZSBjb250YWluZWQgd2l0aGluIGFuCisJICogaW5zdGFuY2Ugc3BlY2lmaWNhdGlvbgorCSAqLworCXB1YmxpYyBzdGF0aWMgRUxpc3Q8Q2xhc3NpZmllcj4gZ2V0Q29udGFpbmVkSW1wbGVtZW50YXRpb25zKEluc3RhbmNlU3BlY2lmaWNhdGlvbiBpcykgeworCQlJdGVyYXRvcjxJbnN0YW5jZVNwZWNpZmljYXRpb24+IGluc3RhbmNlcyA9IGdldENvbnRhaW5lZEluc3RhbmNlcyhpcykuaXRlcmF0b3IoKTsKKwkJRUxpc3Q8Q2xhc3NpZmllcj4gbGlzdCA9IG5ldyBVbmlxdWVFTGlzdDxDbGFzc2lmaWVyPigpOworCQl3aGlsZSAoaW5zdGFuY2VzLmhhc05leHQoKSkgeworCQkJQ2xhc3NpZmllciBpbXBsZW1lbnRhdGlvbiA9IGdldENsYXNzaWZpZXIoaW5zdGFuY2VzLm5leHQoKSk7CisJCQlsaXN0LmFkZChpbXBsZW1lbnRhdGlvbik7CisJCX0KKwkJcmV0dXJuIGxpc3Q7CisJfQorCisJLyoqCisJICogUmV0dXJuIHRoZSBzbG90IHRoYXQgaXMgYXNzb2NpYXRlZCB3aXRoIGEgcHJvcGVydHkKKwkgKgorCSAqIEBwYXJhbSBpcworCSAqICAgICAgICAgICAgYW4gaW5zdGFuY2Ugc3BlY2lmaWNhdGlvbiAob2YgYSBjbGFzcyBoYXZpbmcgcHJvcGVydGllcykKKwkgKiBAcGFyYW0gcHJvcGVydHkKKwkgKiAgICAgICAgICAgIEEgcHJvcGVydHkgb2YgdGhlIGNsYXNzaWZpZXIgYXNzb2NpYXRlZCB3aXRoIHRoZSBwYXNzZWQgaW5zdGFuY2Ugc3BlY2lmaWNhdGlvbgorCSAqIEByZXR1cm4gdGhlIGFzc29jaWF0ZWQgc2xvdCBvciBudWxsLCBpZiBpdCBkb2VzIG5vdCBleGlzdAorCSAqLworCXB1YmxpYyBzdGF0aWMgU2xvdCBnZXRTbG90KEluc3RhbmNlU3BlY2lmaWNhdGlvbiBpcywgUHJvcGVydHkgcHJvcGVydHkpIHsKKwkJSXRlcmF0b3I8U2xvdD4gc2xvdHMgPSBpcy5nZXRTbG90cygpLml0ZXJhdG9yKCk7CisJCXdoaWxlIChzbG90cy5oYXNOZXh0KCkpIHsKKwkJCVNsb3Qgc2xvdCA9IHNsb3RzLm5leHQoKTsKKwkJCWlmIChzbG90LmdldERlZmluaW5nRmVhdHVyZSgpID09IHByb3BlcnR5KSB7CisJCQkJcmV0dXJuIHNsb3Q7CisJCQl9CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJuIHRoZSBpbnN0YW5jZSByZWZlcmVuY2VkIGJ5IGEgc2xvdCB2YWx1ZSwgaS5lLiB0aGUgZmlyc3QgaW5zdGFuY2UgdmFsdWUgYXNzb2NpYXRlZAorCSAqIHdpdGggYSBzbG90CisJICoKKwkgKiBAcGFyYW0gc2xvdAorCSAqIEByZXR1cm4KKwkgKi8KKwlwdWJsaWMgc3RhdGljIEluc3RhbmNlU3BlY2lmaWNhdGlvbiBnZXRJbnN0YW5jZShTbG90IHNsb3QpIHsKKwkJZm9yIChWYWx1ZVNwZWNpZmljYXRpb24gdmFsdWUgOiBzbG90LmdldFZhbHVlcygpKSB7CisJCQkvLyBpbnN0YW5jZXMgYXJlIGFjY2Vzc2libGUgdmlhIFZhbHVlU3BlY2lmaWNhdGlvbiBzdWJjbGFzcyBJbnN0YW5jZVZhbHVlCisJCQlpZiAodmFsdWUgaW5zdGFuY2VvZiBJbnN0YW5jZVZhbHVlKSB7CisJCQkJcmV0dXJuICgoSW5zdGFuY2VWYWx1ZSkgdmFsdWUpLmdldEluc3RhbmNlKCk7CisJCQl9CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogVGhpcyBtZXRob2QgcmV0dXJucyB0aGUgaW5zdGFuY2VzIGNvbnRhaW5lZCB3aXRoaW4gYSBjb21wb3NpdGUgaW5zdGFuY2UKKwkgKiBzcGVjaWZpY2F0aW9uIGZvciBhbiBhc3NlbWJseS4KKwkgKi8KKwlwdWJsaWMgc3RhdGljIEVMaXN0PEluc3RhbmNlU3BlY2lmaWNhdGlvbj4gZ2V0Q29udGFpbmVkSW5zdGFuY2VzKEluc3RhbmNlU3BlY2lmaWNhdGlvbiBpcykgeworCQlFTGlzdDxJbnN0YW5jZVNwZWNpZmljYXRpb24+IGNvbnRhaW5lZCA9IG5ldyBCYXNpY0VMaXN0PEluc3RhbmNlU3BlY2lmaWNhdGlvbj4oKTsKKwkJZm9yIChTbG90IHNsb3QgOiBpcy5nZXRTbG90cygpKSB7CisJCQlJbnN0YW5jZVNwZWNpZmljYXRpb24gaW5zdGFuY2UgPSBnZXRJbnN0YW5jZShzbG90KTsKKwkJCWlmIChpbnN0YW5jZSAhPSBudWxsKSB7CisJCQkJY29udGFpbmVkLmFkZChpbnN0YW5jZSk7CisJCQl9CisJCX0KKwkJcmV0dXJuIGNvbnRhaW5lZDsKKwl9CisKKwkvKioKKwkgKiByZXR1cm4gYWxsIHNsb3RzIHRoYXQgcmVmZXJlbmNlIGFuIGluc3RhbmNlIHNwZWNpZmljYXRpb24KKwkgKgorCSAqIEBwYXJhbSBpcworCSAqIEByZXR1cm4KKwkgKi8KKwlwdWJsaWMgc3RhdGljIEVMaXN0PFNsb3Q+IGdldFJlZmVyZW5jaW5nU2xvdHMoSW5zdGFuY2VTcGVjaWZpY2F0aW9uIGlzKSB7CisJCUVMaXN0PFNsb3Q+IGxpc3QgPSBuZXcgQmFzaWNFTGlzdDxTbG90PigpOworCQlmb3IgKFNldHRpbmcgc2V0dGluZyA6IFVNTDJVdGlsLmdldE5vbk5hdmlnYWJsZUludmVyc2VSZWZlcmVuY2VzKGlzKSkgeworCQkJLy8gbm8gdHJpZ2dlciBpcyByZWZlcmVuY2luZyB0aGUgZXZlbnQgYW55IG1vcmUsIGRlbGV0ZSBjYWxsIGV2ZW50CisJCQlFT2JqZWN0IGVPYmogPSBzZXR0aW5nLmdldEVPYmplY3QoKTsKKwkJCWlmIChlT2JqIGluc3RhbmNlb2YgVmFsdWVTcGVjaWZpY2F0aW9uKSB7CisJCQkJVmFsdWVTcGVjaWZpY2F0aW9uIHZzID0gKFZhbHVlU3BlY2lmaWNhdGlvbikgZU9iajsKKwkJCQlFbGVtZW50IG93bmVyID0gdnMuZ2V0T3duZXIoKTsKKwkJCQlpZiAob3duZXIgaW5zdGFuY2VvZiBTbG90KSB7CisJCQkJCWxpc3QuYWRkKChTbG90KSBvd25lcik7CisJCQkJfQorCQkJfQorCQl9CisJCXJldHVybiBsaXN0OworCX0KKworCS8qKgorCSAqIFJldHVybiBhbiBpbnN0YW5jZSBzcGVjaWZpY2F0aW9uIHRoYXQgcmVmZXJzIHRvIHRoZSBjb21wb3NpdGUgaW4gd2hpY2ggdGhlCisJICogcGFzc2VkIGluc3RhbmNlIGlzIGNvbnRhaW5lZAorCSAqCisJICogQHBhcmFtIGlzCisJICogICAgICAgICAgICBhbiBpbnN0YW5jZSB0aGF0IGlzIGNvbnRhaW5lZCB3aXRoaW4gYW4gY29tcG9zaXRlIChpLmUuIHRoYXQKKwkgKiAgICAgICAgICAgIGJlbG9uZ3MgdG8gYSBwYXJ0IG9mIHRoaXMgY29tcG9zaXRlKS4KKwkgKiBAcmV0dXJuCisJICovCisJcHVibGljIHN0YXRpYyBTbG90IGdldFBhcmVudFNsb3QoSW5zdGFuY2VTcGVjaWZpY2F0aW9uIGlzKSB7CisJCWZvciAoU2xvdCBzbG90IDogZ2V0UmVmZXJlbmNpbmdTbG90cyhpcykpIHsKKwkJCS8vIG5vIHRyaWdnZXIgaXMgcmVmZXJlbmNpbmcgdGhlIGV2ZW50IGFueSBtb3JlLCBkZWxldGUgY2FsbCBldmVudAorCQkJaWYgKHNsb3QuZ2V0RGVmaW5pbmdGZWF0dXJlKCkgaW5zdGFuY2VvZiBQcm9wZXJ0eSkgeworCQkJCWlmICgoKFByb3BlcnR5KSBzbG90LmdldERlZmluaW5nRmVhdHVyZSgpKS5nZXRBZ2dyZWdhdGlvbigpID09IEFnZ3JlZ2F0aW9uS2luZC5DT01QT1NJVEVfTElURVJBTCkgeworCQkJCQlyZXR1cm4gc2xvdDsKKwkJCQl9CisJCQl9CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJuIGFuIGluc3RhbmNlIHNwZWNpZmljYXRpb24gdGhhdCByZWZlcnMgdG8gdGhlIGNvbXBvc2l0ZSBpbiB3aGljaCB0aGUKKwkgKiBwYXNzZWQgaW5zdGFuY2UgaXMgY29udGFpbmVkCisJICoKKwkgKiBAcGFyYW0gaXMKKwkgKiAgICAgICAgICAgIGFuIGluc3RhbmNlIHRoYXQgaXMgY29udGFpbmVkIHdpdGhpbiBhbiBjb21wb3NpdGUgKGkuZS4gdGhhdAorCSAqICAgICAgICAgICAgYmVsb25ncyB0byBhIHBhcnQgb2YgdGhpcyBjb21wb3NpdGUpLgorCSAqIEByZXR1cm4KKwkgKi8KKwlwdWJsaWMgc3RhdGljIEluc3RhbmNlU3BlY2lmaWNhdGlvbiBnZXRQYXJlbnRJUyhJbnN0YW5jZVNwZWNpZmljYXRpb24gaXMpIHsKKwkJU2xvdCBwYXJlbnRTbG90ID0gZ2V0UGFyZW50U2xvdChpcyk7CisJCWlmIChwYXJlbnRTbG90ICE9IG51bGwpIHsKKwkJCXJldHVybiBwYXJlbnRTbG90LmdldE93bmluZ0luc3RhbmNlKCk7CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJcHVibGljIHN0YXRpYyBTdGFjazxTbG90PiBnZXRBY2Nlc3NQYXRoKEluc3RhbmNlU3BlY2lmaWNhdGlvbiBpcykgeworCQlTdGFjazxTbG90PiBwYXRoID0gbmV3IFN0YWNrPFNsb3Q+KCk7CisJCXdoaWxlIChpcyAhPSBudWxsKSB7CisJCQlTbG90IHBhcmVudFNsb3QgPSBnZXRQYXJlbnRTbG90KGlzKTsKKwkJCWlmIChwYXJlbnRTbG90ID09IG51bGwpIHsKKwkJCQlicmVhazsKKwkJCX0KKwkJCXBhdGguaW5zZXJ0RWxlbWVudEF0KHBhcmVudFNsb3QsIDApOworCQkJaXMgPSBwYXJlbnRTbG90LmdldE93bmluZ0luc3RhbmNlKCk7CisJCX0KKwkJcmV0dXJuIHBhdGg7CisJfQorCisJcHVibGljIHN0YXRpYyBib29sZWFuIGlzU2hhcmVkKFNsb3Qgc2xvdCkgeworCQlTdHJ1Y3R1cmFsRmVhdHVyZSBkZiA9IHNsb3QuZ2V0RGVmaW5pbmdGZWF0dXJlKCk7CisJCWlmIChkZiBpbnN0YW5jZW9mIFByb3BlcnR5KSB7CisJCQlyZXR1cm4gKChQcm9wZXJ0eSkgZGYpLmdldEFnZ3JlZ2F0aW9uKCkgPT0gQWdncmVnYXRpb25LaW5kLlNIQVJFRF9MSVRFUkFMOworCQl9CisJCXJldHVybiBmYWxzZTsKKwl9Cit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RlcGxveW1lbnQvRGlhbG9nVXRpbHMuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9EaWFsb2dVdGlscy5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgwM2Q2NzMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RlcGxveW1lbnQvRGlhbG9nVXRpbHMuamF2YQpAQCAtMCwwICsxLDEwMCBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTMgQ0VBIExJU1QuCisgKgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgU2FhZGlhIERob3VpYiAoQ0VBIExJU1QpIHNhYWRpYS5kaG91aWJAY2VhLmZyIC0gSW5pdGlhbCBBUEkgYW5kIGltcGxlbWVudGF0aW9uCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50OworCitpbXBvcnQgb3JnLmVjbGlwc2UuamZhY2Uudmlld2Vycy5JTGFiZWxQcm92aWRlcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5zd3QuU1dUOworaW1wb3J0IG9yZy5lY2xpcHNlLnN3dC5sYXlvdXQuR3JpZERhdGE7CitpbXBvcnQgb3JnLmVjbGlwc2Uuc3d0LmxheW91dC5HcmlkTGF5b3V0OworaW1wb3J0IG9yZy5lY2xpcHNlLnN3dC53aWRnZXRzLkJ1dHRvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5zd3Qud2lkZ2V0cy5Db21ibzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5zd3Qud2lkZ2V0cy5Db21wb3NpdGU7CitpbXBvcnQgb3JnLmVjbGlwc2Uuc3d0LndpZGdldHMuTGFiZWw7CitpbXBvcnQgb3JnLmVjbGlwc2UudWkuZGlhbG9ncy5GaWx0ZXJlZExpc3Q7CisKKworcHVibGljIGNsYXNzIERpYWxvZ1V0aWxzIHsKKworCXB1YmxpYyBzdGF0aWMgRmlsdGVyZWRMaXN0IGNyZWF0ZUZpbHRlcmVkTGlzdChDb21wb3NpdGUgcGFyZW50LCBJTGFiZWxQcm92aWRlciBsYWJlbFByb3ZpZGVyLAorCQkJaW50IHdpZHRoLCBpbnQgaGVpZ2h0LCBpbnQgc3R5bGUpIHsKKwkJRmlsdGVyZWRMaXN0IGxpc3QgPSBuZXcgRmlsdGVyZWRMaXN0KHBhcmVudCwgc3R5bGUsIGxhYmVsUHJvdmlkZXIsCisJCQkJdHJ1ZSwgdHJ1ZSwgdHJ1ZSk7CisKKwkJR3JpZERhdGEgZGF0YSA9IG5ldyBHcmlkRGF0YSgpOworCQlkYXRhLndpZHRoSGludCA9IHdpZHRoOworCQkvLyBkYXRhLmhlaWdodEhpbnQgPSBjb252ZXJ0SGVpZ2h0SW5DaGFyc1RvUGl4ZWxzKGhlaWdodCk7CisJCWRhdGEuaGVpZ2h0SGludCA9IGhlaWdodDsKKwkJZGF0YS5ncmFiRXhjZXNzVmVydGljYWxTcGFjZSA9IHRydWU7CisJCWRhdGEuZ3JhYkV4Y2Vzc0hvcml6b250YWxTcGFjZSA9IHRydWU7CisJCWRhdGEuaG9yaXpvbnRhbEFsaWdubWVudCA9IEdyaWREYXRhLkZJTEw7CisJCWRhdGEudmVydGljYWxBbGlnbm1lbnQgPSBHcmlkRGF0YS5GSUxMOworCQlsaXN0LnNldExheW91dERhdGEoZGF0YSk7CisJCWxpc3Quc2V0Rm9udChwYXJlbnQuZ2V0Rm9udCgpKTsKKwkJcmV0dXJuIGxpc3Q7CisJfQorCisJLyoKKwkgKiBwdWJsaWMgc3RhdGljIExpc3QgY3JlYXRlTGlzdCAoQ29tcG9zaXRlIHBhcmVudCwgSUxhYmVsUHJvdmlkZXIgbGFiZWxQcm92aWRlciwKKwkgKiBpbnQgd2lkdGgsIGludCBoZWlnaHQsIGludCBzdHlsZSkKKwkgKiB7CisJICogc3R5bGUgPSBTV1QuQk9SREVSIHwgU1dULlZfU0NST0xMIHwgU1dULkhfU0NST0xMIHwgc3R5bGU7CisJICoKKwkgKiBMaXN0IGxpc3QgPSBuZXcgTGlzdCAocGFyZW50LCBzdHlsZSk7CisJICoKKwkgKiBHcmlkRGF0YSBkYXRhID0gbmV3IEdyaWREYXRhKCk7CisJICogZGF0YS53aWR0aEhpbnQgPSB3aWR0aDsKKwkgKiAvLyBkYXRhLmhlaWdodEhpbnQgPSBjb252ZXJ0SGVpZ2h0SW5DaGFyc1RvUGl4ZWxzKGhlaWdodCk7CisJICogZGF0YS5oZWlnaHRIaW50ID0gaGVpZ2h0OworCSAqIGRhdGEuZ3JhYkV4Y2Vzc1ZlcnRpY2FsU3BhY2UgPSB0cnVlOworCSAqIGRhdGEuZ3JhYkV4Y2Vzc0hvcml6b250YWxTcGFjZSA9IHRydWU7CisJICogZGF0YS5ob3Jpem9udGFsQWxpZ25tZW50ID0gR3JpZERhdGEuRklMTDsKKwkgKiBkYXRhLnZlcnRpY2FsQWxpZ25tZW50ID0gR3JpZERhdGEuRklMTDsKKwkgKiBsaXN0LnNldExheW91dERhdGEoZGF0YSk7CisJICogbGlzdC5zZXRGb250IChwYXJlbnQuZ2V0Rm9udCgpKTsKKwkgKiByZXR1cm4gbGlzdDsKKwkgKiB9CisJICovCisKKwlwdWJsaWMgc3RhdGljIENvbWJvIGNyZWF0ZUNvbWJvV2l0aFRleHQoQ29tcG9zaXRlIHBhcmVudCwgU3RyaW5nIGxhYmVsLCBpbnQgZmxhZ3MsIGludCBjb21wRmxhZ3MpIHsKKwkJQ29tcG9zaXRlIGNvbWJvQ29tcG9zaXRlID0gbmV3IENvbXBvc2l0ZShwYXJlbnQsIGNvbXBGbGFncyk7CisJCWNvbWJvQ29tcG9zaXRlLnNldExheW91dChuZXcgR3JpZExheW91dCgyLCBmYWxzZSkpOworCQlMYWJlbCBjb21ib0xhYmVsID0gbmV3IExhYmVsKGNvbWJvQ29tcG9zaXRlLCBTV1QuTk9ORSk7CisJCWNvbWJvTGFiZWwuc2V0VGV4dChsYWJlbCk7CisJCUNvbWJvIGNvbWJvID0gbmV3IENvbWJvKGNvbWJvQ29tcG9zaXRlLCBmbGFncyk7CisJCWNvbWJvQ29tcG9zaXRlLnBhY2soKTsKKwkJcmV0dXJuIGNvbWJvOworCX0KKworCXB1YmxpYyBzdGF0aWMgQnV0dG9uIGNyZWF0ZUJ1dHRvbldpdGhUZXh0KENvbXBvc2l0ZSBwYXJlbnQsIFN0cmluZyBsYWJlbCwgaW50IGZsYWdzLCBpbnQgY29tcEZsYWdzKSB7CisJCUNvbXBvc2l0ZSBidXR0b25Db21wb3NpdGUgPSBuZXcgQ29tcG9zaXRlKHBhcmVudCwgY29tcEZsYWdzKTsKKwkJYnV0dG9uQ29tcG9zaXRlLnNldExheW91dChuZXcgR3JpZExheW91dCgyLCBmYWxzZSkpOworCQlMYWJlbCBidXR0b25MYWJlbCA9IG5ldyBMYWJlbChidXR0b25Db21wb3NpdGUsIFNXVC5OT05FKTsKKwkJYnV0dG9uTGFiZWwuc2V0VGV4dChsYWJlbCk7CisJCUJ1dHRvbiBidXR0b24gPSBuZXcgQnV0dG9uKGJ1dHRvbkNvbXBvc2l0ZSwgZmxhZ3MpOworCQlidXR0b25Db21wb3NpdGUucGFjaygpOworCQlyZXR1cm4gYnV0dG9uOworCX0KKworCS8qKgorCSAqIENyZWF0ZSBhIEdyaWREYXRhIG9iamVjdCB3aGljaCBmaWxscyB0aGUgYXZhaWxhYmxlIHZlcnRpY2FsIGFuZCBob3Jpem9udGFsIHNwYWNlCisJICoKKwkgKiBAcmV0dXJuCisJICovCisJcHVibGljIHN0YXRpYyBHcmlkRGF0YSBjcmVhdGVGaWxsR3JpZERhdGEoKSB7CisJCUdyaWREYXRhIGdyaWREYXRhID0gbmV3IEdyaWREYXRhKCk7CisJCWdyaWREYXRhLmdyYWJFeGNlc3NWZXJ0aWNhbFNwYWNlID0gdHJ1ZTsKKwkJZ3JpZERhdGEuZ3JhYkV4Y2Vzc0hvcml6b250YWxTcGFjZSA9IHRydWU7CisJCWdyaWREYXRhLmhvcml6b250YWxBbGlnbm1lbnQgPSBHcmlkRGF0YS5GSUxMOworCQlncmlkRGF0YS52ZXJ0aWNhbEFsaWdubWVudCA9IEdyaWREYXRhLkZJTEw7CisJCXJldHVybiBncmlkRGF0YTsKKwl9Cit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RlcGxveW1lbnQvTG9nLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RlcGxveW1lbnQvTG9nLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzU5ODhiNQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9Mb2cuamF2YQpAQCAtMCwwICsxLDg2IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBDRUEgTElTVC4KKyAqCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBTYWFkaWEgRGhvdWliIChDRUEgTElTVCkgc2FhZGlhLmRob3VpYkBjZWEuZnIgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQ7CisKK2ltcG9ydCBqYXZhLnV0aWwuSGFzaE1hcDsKK2ltcG9ydCBqYXZhLnV0aWwuTWFwOworCisvKioKKyAqIFZlcnkgc2ltcGxlIG1lc3NhZ2UgbG9nZ2luZyBjbGFzcworICoKKyAqIEBhdXRob3IgYW5zZ2FyCisgKgorICovCitwdWJsaWMgY2xhc3MgTG9nIHsKKworCXB1YmxpYyBzdGF0aWMgZmluYWwgaW50IEVSUk9SX01TRyA9IDE7CisKKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBJTkZPX01TRyA9IDI7CisKKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBXQVJOSU5HX01TRyA9IDQ7CisKKworCXB1YmxpYyBzdGF0aWMgZmluYWwgaW50IFRSQUZPX0NPTk5FQ1RPUiA9IDE7CisKKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBUUkFGT19DT05UQUlORVIgPSAyOworCisJcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgVFJBRk9fQ09QWSA9IDQ7CisKKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBUUkFGT19TWU5DID0gODsKKworCXB1YmxpYyBzdGF0aWMgZmluYWwgaW50IFRFTVBMQVRFX0JJTkRJTkcgPSAweDEwOworCisJcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgVEVNUExBVEVfSU5TVEFOVElBVElPTiA9IDB4MjA7CisKKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBERVBMT1lNRU5UID0gMHg0MDsKKworCXB1YmxpYyBzdGF0aWMgZmluYWwgaW50IERJQUxPR1MgPSAweDgwOworCisJcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgVVRJTFMgPSAweDEwMDsKKworCXB1YmxpYyBzdGF0aWMgZmluYWwgaW50IENPREVHRU4gPSAweDIwMDsKKworCXB1YmxpYyBzdGF0aWMgZmluYWwgaW50IENBTENfUE9SVEtJTkQgPSAweDQwMDsKKworCXN0YXRpYyBNYXA8SW50ZWdlciwgU3RyaW5nPiBtb2R1bGVNYXA7CisKKwlzdGF0aWMgU3RyaW5nIGdldE1vZHVsZUluZm8oaW50IG1vZHVsZUtpbmQpIHsKKwkJaWYgKG1vZHVsZU1hcCA9PSBudWxsKSB7CisJCQltb2R1bGVNYXAgPSBuZXcgSGFzaE1hcDxJbnRlZ2VyLCBTdHJpbmc+KCk7CisJCQltb2R1bGVNYXAucHV0KFRSQUZPX0NPTk5FQ1RPUiwgIlRyYWZvIGNvbm5lY3RvciIpOworCQkJbW9kdWxlTWFwLnB1dChUUkFGT19DT05UQUlORVIsICJUcmFmbyBjb250YWluZXIiKTsKKwkJCW1vZHVsZU1hcC5wdXQoVFJBRk9fQ09QWSwgIlRyYWZvIGNvcHkiKTsKKwkJCW1vZHVsZU1hcC5wdXQoVFJBRk9fU1lOQywgIlN5bmNocm9uaXphdGlvbiIpOworCQkJbW9kdWxlTWFwLnB1dChURU1QTEFURV9CSU5ESU5HLCAiVGVtcGxhdGUgYmluZGluZyIpOworCQkJbW9kdWxlTWFwLnB1dChURU1QTEFURV9JTlNUQU5USUFUSU9OLCAiVGVtcGxhdGUgaW5zdGFudGlhdGlvbiIpOworCQkJbW9kdWxlTWFwLnB1dChERVBMT1lNRU5ULCAiVGVtcGxhdGUgYmluZGluZyIpOworCQkJbW9kdWxlTWFwLnB1dChESUFMT0dTLCAiUW9tcGFzcyBkaWFsb2dzIik7CisJCQltb2R1bGVNYXAucHV0KFVUSUxTLCAiVXRpbHMiKTsKKwkJCW1vZHVsZU1hcC5wdXQoQ09ERUdFTiwgIkNvZGUgZ2VuZXJhdGlvbiIpOworCQkJbW9kdWxlTWFwLnB1dChDQUxDX1BPUlRLSU5ELCAiQ2FsY3VsYXRlIHBvcnRraW5kIik7CisJCX0KKwkJcmV0dXJuICJNb2R1bGUgIiArIG1vZHVsZU1hcC5nZXQobW9kdWxlS2luZCkgKyAiOiAiOworCX0KKworCXB1YmxpYyBzdGF0aWMgdm9pZCBsb2coaW50IG1zZ0tpbmQsIGludCBtb2R1bGVLaW5kLCBTdHJpbmcgbWVzc2FnZSkgeworCQlpZiAobXNnS2luZCA9PSBFUlJPUl9NU0cpIHsKKwkJCVN5c3RlbS5lcnIucHJpbnRsbihnZXRNb2R1bGVJbmZvKG1vZHVsZUtpbmQpICsgbWVzc2FnZSk7CisJCX0gZWxzZSBpZiAobXNnS2luZCA9PSBJTkZPX01TRykgeworCQkJaWYgKChtb2R1bGVLaW5kICYgbW9kdWxlRmlsdGVyKSAhPSAwKSB7CisJCQkJU3lzdGVtLm91dC5wcmludGxuKGdldE1vZHVsZUluZm8obW9kdWxlS2luZCkgKyBtZXNzYWdlKTsKKwkJCX0KKwkJfQorCX0KKworCS8vIFRPRE86IG1ha2UgaXQgYSBjb25maWd1cmF0aW9uIHByb3BlcnR5CisJc3RhdGljIGludCBtb2R1bGVGaWx0ZXIgPSAwOworfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L1J1bm5hYmxlV2l0aFJlc3VsdC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L1J1bm5hYmxlV2l0aFJlc3VsdC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFhNWZhMWEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RlcGxveW1lbnQvUnVubmFibGVXaXRoUmVzdWx0LmphdmEKQEAgLTAsMCArMSwyNiBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTMgQ0VBIExJU1QuCisgKgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgU2FhZGlhIERob3VpYiAoQ0VBIExJU1QpIHNhYWRpYS5kaG91aWJAY2VhLmZyIC0gSW5pdGlhbCBBUEkgYW5kIGltcGxlbWVudGF0aW9uCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50OworCitpbXBvcnQgb3JnLmVjbGlwc2UuZ21mLnJ1bnRpbWUuY29tbW9uLmNvcmUuY29tbWFuZC5Db21tYW5kUmVzdWx0OworCitwdWJsaWMgaW50ZXJmYWNlIFJ1bm5hYmxlV2l0aFJlc3VsdCB7CisKKwkvKioKKwkgKiBFeGVjdXRlIGEgY29tbWFkCisJICoKKwkgKiBAcmV0dXJuIENvbW1hbmRSZXN1bHQubmV3T0tDb21tYW5kUmVzdWx0KCkgaWYgc3VjY2Vzc2Z1bAorCSAqICAgICAgICAgQ29tbWFuZFJlc3VsdC5uZXdFcnJvckNvbW1hbmRSZXN1bHQoLi4pIG9yCisJICogICAgICAgICBDb21tYW5kUmV1c2x0Lm5ld0NhbmNlbENvbW1hbmRSZXN1bHQoLi4pIG90aGVyd2lzZQorCSAqLworCXB1YmxpYyBDb21tYW5kUmVzdWx0IHJ1bigpOworfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L1N0VXRpbHMuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9TdFV0aWxzLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmMzNTFjNQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9TdFV0aWxzLmphdmEKQEAgLTAsMCArMSw0NDAgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIENFQSBMSVNULgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBEaG91aWIgKENFQSBMSVNUKSBzYWFkaWEuZGhvdWliQGNlYS5mciAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5CYXNpY0VMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlN0ZXJlb3R5cGU7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwudXRpbC5VTUxVdGlsOworCisvKioKKyAqIFNvbWUgZnVuY3Rpb25zIGFyb3VuZCBzdGVyZW90eXBlIHVzYWdlLgorICogVE9ETzogb3JpZ2luYWxseSBkZXZlbG9wZWQgd2l0aG91dCB1c2Ugb2Ygc3RhdGljIHByb2ZpbGUuIEl0IHRodXMgY29udGFpbnMgbWFueSBmdW5jdGlvbnMKKyAqIHRoYXQgYXJlIG5vIGxvbmdlciBuZWVkZWQgKGUuZy4gZ2V0Qm9vbGVhbikgPT4gbmVlZHMgc29tZSBjbGVhbnVwCisgKgorICogQGF1dGhvciBhbnNnYXIKKyAqCisgKi8KK3B1YmxpYyBjbGFzcyBTdFV0aWxzIHsKKworCS8qKgorCSAqIFRoaXMgbWV0aG9kIHZlcmlmaWVzIGlmIGEgc3RlcmVvdHlwZSBpcyBhcHBsaWVkIG9uIGFuIFVNTCBlbGVtZW50CisJICoKKwkgKiBAcGFyYW0gZWxlbWVudAorCSAqICAgICAgICAgICAgQSBVTUwgZWxlbWVudAorCSAqIEBwYXJhbSBzdHJfbmFtZQorCSAqICAgICAgICAgICAgYSBxdWFsaWZpZWQgc3RlcmVvdHlwZSBuYW1lCisJICovCisJcHVibGljIHN0YXRpYyBib29sZWFuIGlzQXBwbGllZChFbGVtZW50IGVsZW1lbnQsIFN0cmluZyBzdHJfbmFtZSkgeworCQlyZXR1cm4gKGVsZW1lbnQuZ2V0QXBwbGllZFN0ZXJlb3R5cGUoc3RyX25hbWUpICE9IG51bGwpOworCX0KKworCS8qKgorCSAqIFRoaXMgbWV0aG9kIHZlcmlmaWVzIGlmIGEgc3RlcmVvdHlwZSBpcyBhcHBsaWVkIG9uIGFuIFVNTCBlbGVtZW50CisJICoKKwkgKiBAcGFyYW0gZWxlbWVudAorCSAqICAgICAgICAgICAgQSBVTUwgZWxlbWVudAorCSAqIEBwYXJhbSB0aGUKKwkgKiAgICAgICAgICAgIGNsYXNzIG9mIGFuIGVsZW1lbnQgb2YgYSBzdGF0aWMgcHJvZmlsZQorCSAqLworCXB1YmxpYyBzdGF0aWMgYm9vbGVhbiBpc0FwcGxpZWQoRWxlbWVudCBlbGVtZW50LCBqYXZhLmxhbmcuQ2xhc3M8PyBleHRlbmRzIEVPYmplY3Q+IGNsYXp6KSB7CisJCWZvciAoRU9iamVjdCBzdGVyZW9BcHBsaWNhdGlvbiA6IGVsZW1lbnQuZ2V0U3RlcmVvdHlwZUFwcGxpY2F0aW9ucygpKSB7CisJCQkvLyBjaGVjayB3aGV0aGVyIHRoZSBzdGVyZW90eXBlIGlzIGEgc3ViY2xhc3Mgb2YgdGhlIHBhc3NlZCBwYXJhbWV0ZXIgY2xhenoKKwkJCWlmIChjbGF6ei5pc0Fzc2lnbmFibGVGcm9tKHN0ZXJlb0FwcGxpY2F0aW9uLmdldENsYXNzKCkpKSB7CisJCQkJcmV0dXJuIHRydWU7CisJCQl9CisJCX0KKwkJcmV0dXJuIGZhbHNlOworCX0KKworCS8qKgorCSAqIFJldHVybiB0aGUgYXR0cmlidXRlIG9mIGEgc3RlcmVvdHlwZS4gSWYgdGhlIGF0dHJpYnV0ZSB0eXBlIGlzIGEgbW9kZWwgcmVmZXJlbmNlLAorCSAqIHVzZSB0aGUgZnVuY3Rpb24gZ2V0QXR0cmlidXRlQmFzZSBpbnN0ZWFkLgorCSAqCisJICogQHBhcmFtIGVsZW1lbnQKKwkgKiAgICAgICAgICAgIHRoZSBlbGVtZW50IHdoaWNoIGhvbGRzIHRoZSBzdGVyZW90eXBlCisJICogQHBhcmFtIHN0ZXJlb19uYW1lCisJICogICAgICAgICAgICB0aGUgbmFtZSBvZiB0aGUgc3RlcmVvdHlwZQorCSAqIEBwYXJhbSBhdHRyaWJfbmFtZQorCSAqICAgICAgICAgICAgdGhlIG5hbWUgb2YgYW4gYXR0cmlidXRlIG9mIHRoaXMgc3RlcmVvdHlwZQorCSAqIEByZXR1cm4gVGhlIHZhbHVlIHRoYXQgaXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBzdGVyZW90eXBlIGF0dHJpYnV0ZQorCSAqLworCXB1YmxpYyBzdGF0aWMgT2JqZWN0IGdldEF0dHJpYnV0ZShFbGVtZW50IGVsZW1lbnQsIFN0cmluZyBzdGVyZW9fbmFtZSwgU3RyaW5nIGF0dHJpYl9uYW1lKSB7CisJCVN0ZXJlb3R5cGUgc3RlcmVvdHlwZSA9IGVsZW1lbnQuZ2V0QXBwbGllZFN0ZXJlb3R5cGUoc3RlcmVvX25hbWUpOworCQlpZiAoc3RlcmVvdHlwZSA9PSBudWxsKSB7CisJCQlyZXR1cm4gbnVsbDsKKwkJfQorCQlyZXR1cm4gZWxlbWVudC5nZXRWYWx1ZShzdGVyZW90eXBlLCBhdHRyaWJfbmFtZSk7CisJfQorCisJLyoqCisJICogU2V0IHRoZSB2YWx1ZSBvZiBhIHN0ZXJlb3R5cGUgYXR0cmlidXRlCisJICoKKwkgKiBAcGFyYW0gZWxlbWVudAorCSAqICAgICAgICAgICAgdGhlIGVsZW1lbnQgd2hpY2ggaG9sZHMgdGhlIHN0ZXJlb3R5cGUKKwkgKiBAcGFyYW0gc3RlcmVvX25hbWUKKwkgKiAgICAgICAgICAgIHRoZSBuYW1lIG9mIHRoZSBzdGVyZW90eXBlCisJICogQHBhcmFtIGF0dHJpYl9uYW1lCisJICogICAgICAgICAgICB0aGUgbmFtZSBvZiBhbiBhdHRyaWJ1dGUgb2YgdGhpcyBzdGVyZW90eXBlCisJICogQHBhcmFtIHZhbHVlCisJICogICAgICAgICAgICB0aGUgdmFsdWUgdGhhdCBpcyBhc3NvY2lhdGVkIHdpdGggdGhlIHN0ZXJlb3R5cGUgYXR0cmlidXRlCisJICovCisJcHVibGljIHN0YXRpYyB2b2lkIHNldEF0dHJpYnV0ZShFbGVtZW50IGVsZW1lbnQsIFN0cmluZyBzdGVyZW9fbmFtZSwgU3RyaW5nIGF0dHJfbmFtZSwgT2JqZWN0IHZhbHVlKSB7CisJCVN0ZXJlb3R5cGUgc3QgPSBhcHBseShlbGVtZW50LCBzdGVyZW9fbmFtZSk7CisJCWlmIChzdCAhPSBudWxsKSB7CisJCQllbGVtZW50LnNldFZhbHVlKHN0LCBhdHRyX25hbWUsIHZhbHVlKTsKKwkJfQorCX0KKworCS8qKgorCSAqIFJldHVybiB0aGUgc3RlcmVvdHlwZSBhcHBsaWNhdGlvbi4gTGlrZSBnZXRBcHBsaWNhdGlvbiBiZWxvdywgZXhjZXB0CisJICogdGhhdCB0aGUgcGFzc2VkIHN0ZXJlb3R5cGUgaXMgYSBzdHJpbmcuCisJICoKKwkgKiBAcGFyYW0gZWxlbWVudAorCSAqIEBwYXJhbSBzdGVyZW9fbmFtZQorCSAqICAgICAgICAgICAgdGhlIHF1YWxpZmllZCBuYW1lIG9mIGEgc3RlcmVvdHlwZS4gQXBwbGljYXRpb25zIG9mIGNvbXBhdGlibGUgc3ViLXR5cGVzIHdpbGwgYmUgcmV0dXJuZWQgYXMgd2VsbCAoaWYgZXhhY3Qgc3RlcmVvdHlwZSBpcyBub3QgYXBwbGllZCkKKwkgKiBAcmV0dXJuCisJICovCisJcHVibGljIHN0YXRpYyBFT2JqZWN0IGdldEFwcGxpY2F0aW9uKEVsZW1lbnQgZWxlbWVudCwgU3RyaW5nIHN0ZXJlb19uYW1lKSB7CisKKwkJU3RlcmVvdHlwZSBzdGVyZW90eXBlID0gZWxlbWVudC5nZXRBcHBsaWNhYmxlU3RlcmVvdHlwZShzdGVyZW9fbmFtZSk7CisJCWlmIChzdGVyZW90eXBlICE9IG51bGwpIHsKKwkJCUVPYmplY3QgYXBwbGljYXRpb24gPSBlbGVtZW50LmdldFN0ZXJlb3R5cGVBcHBsaWNhdGlvbihzdGVyZW90eXBlKTsKKwkJCWlmIChhcHBsaWNhdGlvbiAhPSBudWxsKSB7CisJCQkJcmV0dXJuIGFwcGxpY2F0aW9uOworCQkJfQorCQkJLy8gbm90IGZvdW5kLCBub3cgdHJ5IHN1Yi1zdGVyZW90eXBlcworCQkJZm9yIChTdGVyZW90eXBlIHN1YlN0ZXJlbyA6IGVsZW1lbnQuZ2V0QXBwbGllZFN1YnN0ZXJlb3R5cGVzKHN0ZXJlb3R5cGUpKSB7CisJCQkJYXBwbGljYXRpb24gPSBlbGVtZW50LmdldFN0ZXJlb3R5cGVBcHBsaWNhdGlvbihzdWJTdGVyZW8pOworCQkJCWlmIChhcHBsaWNhdGlvbiAhPSBudWxsKSB7CisJCQkJCXJldHVybiBhcHBsaWNhdGlvbjsKKwkJCQl9CisJCQl9CisJCX0KKwkJcmV0dXJuIG51bGw7CisKKwl9CisKKwkvKioKKwkgKiBSZXR1cm4gdGhlIHN0ZXJlb3R5cGUgYXBwbGljYXRpb24gYnkgcGFzc2luZyBhbiBlbGVtZW50IG9mIHRoZSBzdGF0aWMgcHJvZmlsZQorCSAqCisJICogQHBhcmFtIGVsZW1lbnQKKwkgKiAgICAgICAgICAgIHRoZSBVTUwgbW9kZWwgZWxlbWVudAorCSAqIEBwYXJhbSBjbGF6egorCSAqICAgICAgICAgICAgdGhlIGNsYXNzIG9mIGFuIGVsZW1lbnQgb2YgYSBzdGF0aWMgcHJvZmlsZS4gQ29tcGF0aWJsZSBzdWItdHlwZXMgd2lsbCBiZSByZXR1cm5lZCBhcyB3ZWxsCisJICogQHJldHVybiB0aGUgc3RlcmVvdHlwZSBhcHBsaWNhdGlvbiAoZmlyc3QgY29tcGF0aWJsZSB3aXRoIHBhc3NlZCBjbGF6eikgb3IgbnVsbAorCSAqLworCUBTdXBwcmVzc1dhcm5pbmdzKCJ1bmNoZWNrZWQiKQorCXB1YmxpYyBzdGF0aWMgPFQgZXh0ZW5kcyBFT2JqZWN0PiBUIGdldEFwcGxpY2F0aW9uKEVsZW1lbnQgZWxlbWVudCwgamF2YS5sYW5nLkNsYXNzPFQ+IGNsYXp6KSB7CisJCWZvciAoRU9iamVjdCBzdGVyZW9BcHBsaWNhdGlvbiA6IGVsZW1lbnQuZ2V0U3RlcmVvdHlwZUFwcGxpY2F0aW9ucygpKSB7CisJCQkvLyBjaGVjayB3aGV0aGVyIHRoZSBzdGVyZW90eXBlIGlzIGFuIGluc3RhbmNlIG9mIHRoZSBwYXNzZWQgcGFyYW1ldGVyIGNsYXp6CisJCQlpZiAoY2xhenouaXNJbnN0YW5jZShzdGVyZW9BcHBsaWNhdGlvbikpIHsKKwkJCQlyZXR1cm4gKFQpIHN0ZXJlb0FwcGxpY2F0aW9uOworCQkJfQorCQl9CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIEFwcGx5IGEgc3RlcmVvdHlwZS4gVGhlIHN0ZXJlb3R5cGUgaXMgbm90IGFwcGxpZWQsIGlmIGFscmVhZHkgYSBzdWItc3RlcmVvdHlwZSBpcyBhcHBsaWVkLgorCSAqIElmIHlvdSB3YW50IHRvIGFwcGx5IHRoZSBuZXcgc3RlcmVvdHlwZSBhbHNvIGluIHRoaXMgY2FzZSwgdXNlIGFwcGx5RXhhY3QgaW5zdGVhZC4KKwkgKgorCSAqIEBwYXJhbSBlbGVtZW50CisJICogICAgICAgICAgICB0aGUgZWxlbWVudAorCSAqIEBwYXJhbSBzdGVyZW9fbmFtZQorCSAqICAgICAgICAgICAgdGhlIHN0ZXJlb3R5cGUgbmFtZQorCSAqIEByZXR1cm4KKwkgKi8KKwlwdWJsaWMgc3RhdGljIFN0ZXJlb3R5cGUgYXBwbHkoRWxlbWVudCBlbGVtZW50LCBTdHJpbmcgc3RlcmVvX25hbWUpIHsKKwkJU3RlcmVvdHlwZSBzdGVyZW90eXBlID0gZWxlbWVudC5nZXRBcHBsaWNhYmxlU3RlcmVvdHlwZShzdGVyZW9fbmFtZSk7CisJCWlmIChzdGVyZW90eXBlICE9IG51bGwpIHsKKwkJCUVMaXN0PFN0ZXJlb3R5cGU+IHN1YlN0ZXJlb3MgPSBlbGVtZW50LmdldEFwcGxpZWRTdWJzdGVyZW90eXBlcyhzdGVyZW90eXBlKTsKKwkJCWJvb2xlYW4gYWxyZWFkeUFwcGxpZWQgPSAoc3ViU3RlcmVvcy5zaXplKCkgPiAwKTsKKwkJCWlmICghYWxyZWFkeUFwcGxpZWQpIHsKKwkJCQkvLyBpdCBzZWVtcyB0aGF0IHN1YlN0ZXJvdHlwZXMgZG8gbm90IGluY2x1ZGUgdGhlIHN0ZXJlb3R5cGUgaXRzZWxmCisJCQkJaWYgKGVsZW1lbnQuZ2V0U3RlcmVvdHlwZUFwcGxpY2F0aW9uKHN0ZXJlb3R5cGUpID09IG51bGwpIHsKKwkJCQkJZWxlbWVudC5hcHBseVN0ZXJlb3R5cGUoc3RlcmVvdHlwZSk7CisJCQkJfQorCQkJfQorCQl9CisJCXJldHVybiBzdGVyZW90eXBlOworCX0KKworCS8qKgorCSAqIHVuYXBwbHkgYSBzdGVyZW90eXBlIHdoZW4gdGhlIG5hbWUgb2YgdGhlIHN0ZXJlb3R5cGUgaXMgZ2l2ZW4uCisJICoKKwkgKiBAcGFyYW0gZWxlbWVudAorCSAqICAgICAgICAgICAgdGhlIGVsZW1lbnQKKwkgKiBAcGFyYW0gc3RlcmVvX25hbWUKKwkgKiAgICAgICAgICAgIHRoZSBzdGVyZW90eXBlIG5hbWUKKwkgKiBAcmV0dXJuCisJICovCisJcHVibGljIHN0YXRpYyB2b2lkIHVuYXBwbHkoRWxlbWVudCBlbGVtZW50LCBTdHJpbmcgc3RlcmVvX25hbWUpIHsKKwkJU3RlcmVvdHlwZSBzdGVyZW90eXBlID0gZWxlbWVudC5nZXRBcHBsaWNhYmxlU3RlcmVvdHlwZShzdGVyZW9fbmFtZSk7CisJCWlmIChzdGVyZW90eXBlICE9IG51bGwpIHsKKwkJCWlmIChlbGVtZW50LmdldFN0ZXJlb3R5cGVBcHBsaWNhdGlvbihzdGVyZW90eXBlKSAhPSBudWxsKSB7CisJCQkJZWxlbWVudC51bmFwcGx5U3RlcmVvdHlwZShzdGVyZW90eXBlKTsKKwkJCX0KKwkJfQorCX0KKworCS8qKgorCSAqIEFwcGx5IGEgc3RlcmVvdHlwZSBhbmQgcmV0dXJuIHRoZSBzdGVyZW90eXBlIGFwcGxpY2F0aW9uIChpZiBzdWNjZXNzZnVsKS4KKwkgKiBUaGUgc3RlcmVvdHlwZSBpcyBub3QgYXBwbGllZCwgaWYgYWxyZWFkeSBhIHN1Yi1zdGVyZW90eXBlIGlzIGFwcGxpZWQuCisJICogSWYgeW91IHdhbnQgdG8gYXBwbHkgdGhlIG5ldyBzdGVyZW90eXBlIGFsc28gaW4gdGhpcyBjYXNlLCB1c2UgYXBwbHlFeGFjdCBpbnN0ZWFkLgorCSAqCisJICogQHBhcmFtIGVsZW1lbnQKKwkgKiAgICAgICAgICAgIHRoZSBlbGVtZW50CisJICogQHBhcmFtIHN0ZXJlb19uYW1lCisJICogICAgICAgICAgICB0aGUgc3RlcmVvdHlwZSBuYW1lCisJICogQHJldHVybgorCSAqLworCXB1YmxpYyBzdGF0aWMgPFQgZXh0ZW5kcyBFT2JqZWN0PiBUIGFwcGx5QXBwKEVsZW1lbnQgZWxlbWVudCwgamF2YS5sYW5nLkNsYXNzPFQ+IGNsYXp6KSB7CisJCWlmIChhcHBseShlbGVtZW50LCBjbGF6eikgIT0gbnVsbCkgeworCQkJcmV0dXJuIGdldEFwcGxpY2F0aW9uKGVsZW1lbnQsIGNsYXp6KTsKKwkJfQorCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBAcGFyYW0gZWxlbWVudAorCSAqIEBwYXJhbSBzdGVyZW9fbmFtZQorCSAqIEByZXR1cm4KKwkgKi8KKwlwdWJsaWMgc3RhdGljIFN0ZXJlb3R5cGUgYXBwbHlFeGFjdChFbGVtZW50IGVsZW1lbnQsIFN0cmluZyBzdGVyZW9fbmFtZSkgeworCQlTdGVyZW90eXBlIHN0ZXJlb3R5cGUgPSBlbGVtZW50LmdldEFwcGxpY2FibGVTdGVyZW90eXBlKHN0ZXJlb19uYW1lKTsKKwkJaWYgKHN0ZXJlb3R5cGUgIT0gbnVsbCkgeworCQkJU3RlcmVvdHlwZSBhbHJlYWR5QXBwbGllZCA9IGVsZW1lbnQuZ2V0QXBwbGllZFN1YnN0ZXJlb3R5cGUoc3RlcmVvdHlwZSwgc3RlcmVvX25hbWUpOworCQkJaWYgKGFscmVhZHlBcHBsaWVkID09IG51bGwpIHsKKwkJCQllbGVtZW50LmFwcGx5U3RlcmVvdHlwZShzdGVyZW90eXBlKTsKKwkJCX0KKwkJfQorCQlyZXR1cm4gc3RlcmVvdHlwZTsKKwl9CisKKwkvKioKKwkgKiBBcHBseSBhIHN0ZXJlb3R5cGUuCisJICogQ2F2ZWF0OiB0aGUgZnVuY3Rpb24gcmVsaWVzIG9uIHRoZSBjb3JyZXNwb25kZW5jZSBiZXR3ZWVuIHRoZSBmdWxseSBxdWFsaWZpZWQKKwkgKiBzdGVyZW90eXBlIG5hbWUgYW5kIHRoZSBwYWNrYWdlIG5hbWUgd2l0aGluIHRoZSBzdGF0aWMgcHJvZmlsZS4gVGhlIGxhdHRlciBtYXkKKwkgKiB1c2UgYSBkaWZmZXJlbnQgcHJlZml4IChhcyBpdCBpcyB0aGUgY2FzZSB3aXRoIHRoZSBNQVJURSBhbmFseXNpcyAmIGRlc2lnbiBwcm9maWxlKS4KKwkgKgorCSAqIEBwYXJhbSBlbGVtZW50CisJICogICAgICAgICAgICB0aGUgZWxlbWVudAorCSAqIEBwYXJhbSBjbGFzcyBhIGNsYXNzIG9mIGEgc3RhdGljIHByb2ZpbGUKKwkgKiBAcmV0dXJuCisJICovCisJcHVibGljIHN0YXRpYyBTdGVyZW90eXBlIGFwcGx5KEVsZW1lbnQgZWxlbWVudCwgamF2YS5sYW5nLkNsYXNzPD8gZXh0ZW5kcyBFT2JqZWN0PiBjbGF6eikgeworCQlyZXR1cm4gYXBwbHkoZWxlbWVudCwgZ2V0U3RlcmVvTmFtZShlbGVtZW50LCBjbGF6eikpOworCX0KKworCS8qKgorCSAqIFVuYXBwbHkgYSBzdGVyZW90eXBlLgorCSAqIENhdmVhdDogdGhlIGZ1bmN0aW9uIHJlbGllcyBvbiB0aGUgY29ycmVzcG9uZGVuY2UgYmV0d2VlbiB0aGUgZnVsbHkgcXVhbGlmaWVkCisJICogc3RlcmVvdHlwZSBuYW1lIGFuZCB0aGUgcGFja2FnZSBuYW1lIHdpdGhpbiB0aGUgc3RhdGljIHByb2ZpbGUuIFRoZSBsYXR0ZXIgbWF5CisJICogdXNlIGEgZGlmZmVyZW50IHByZWZpeCAoYXMgaXQgaXMgdGhlIGNhc2Ugd2l0aCB0aGUgTUFSVEUgYW5hbHlzaXMgJiBkZXNpZ24gcHJvZmlsZSkuCisJICoKKwkgKiBAcGFyYW0gZWxlbWVudAorCSAqICAgICAgICAgICAgdGhlIGVsZW1lbnQKKwkgKiBAcGFyYW0gc3RlcmVvX25hbWUKKwkgKiAgICAgICAgICAgIHRoZSBzdGVyZW90eXBlIG5hbWUKKwkgKiBAcmV0dXJuCisJICovCisJcHVibGljIHN0YXRpYyB2b2lkIHVuYXBwbHkoRWxlbWVudCBlbGVtZW50LCBqYXZhLmxhbmcuQ2xhc3M8PyBleHRlbmRzIEVPYmplY3Q+IGNsYXp6KSB7CisJCXVuYXBwbHkoZWxlbWVudCwgZ2V0U3RlcmVvTmFtZShlbGVtZW50LCBjbGF6eikpOworCX0KKworCS8qKgorCSAqIEFwcGx5IGEgc3RlcmVvdHlwZS4KKwkgKiBDYXZlYXQ6IHRoZSBmdW5jdGlvbiByZWxpZXMgb24gdGhlIGNvcnJlc3BvbmRlbmNlIGJldHdlZW4gdGhlIGZ1bGx5IHF1YWxpZmllZAorCSAqIHN0ZXJlb3R5cGUgbmFtZSBhbmQgdGhlIHBhY2thZ2UgbmFtZSB3aXRoaW4gdGhlIHN0YXRpYyBwcm9maWxlLiBUaGUgbGF0dGVyIG1heQorCSAqIHVzZSBhIGRpZmZlcmVudCBwcmVmaXggKGFzIGl0IGlzIHRoZSBjYXNlIHdpdGggdGhlIE1BUlRFIGFuYWx5c2lzICYgZGVzaWduIHByb2ZpbGUpLgorCSAqCisJICogQHBhcmFtIGVsZW1lbnQKKwkgKiAgICAgICAgICAgIHRoZSBlbGVtZW50CisJICogQHBhcmFtIHN0ZXJlb19uYW1lCisJICogICAgICAgICAgICB0aGUgc3RlcmVvdHlwZSBuYW1lCisJICogQHJldHVybgorCSAqLworCXB1YmxpYyBzdGF0aWMgU3RlcmVvdHlwZSBhcHBseUV4YWN0KEVsZW1lbnQgZWxlbWVudCwgamF2YS5sYW5nLkNsYXNzPD8gZXh0ZW5kcyBFT2JqZWN0PiBjbGF6eikgeworCQlyZXR1cm4gYXBwbHlFeGFjdChlbGVtZW50LCBnZXRTdGVyZW9OYW1lKGVsZW1lbnQsIGNsYXp6KSk7CisJfQorCisJLyoqCisJICogVGhpcyBmdW5jdGlvbiBzaG91bGQgYmUgdXNlZCBpZiBzdGVyZW90eXBlIGF0dHJpYnV0ZXMgYXJlIGluIHR1cm4gdHlwZWQgYnkgc3RlcmVvdHlwZWQKKwkgKiBlbGVtZW50cyBhbmQgdGhlIHVzZXIgd2FudHMgdG8gcmV0cmlldmUgdGhlIHVuZGVybHlpbmcgYmFzZSBlbGVtZW50cyAoaW5zdGVhZCBvZiB0aGUgc3RlcmVvdHlwZSBhcHBsaWNhdGlvbikKKwkgKiBUaGUgZnVuY3Rpb24gYXBwbGllcyB0aGUgZ2V0QmFzZUVsZW1lbnQgb3BlcmF0aW9uIHRvIHRoZSByZXN1bHQgb2YgdGhlCisJICogZ2V0U3RlcmVvdHlwZUF0dHJpYnV0ZSBmdW5jdGlvbiBhYm92ZS4KKwkgKgorCSAqIEBwYXJhbSBlbGVtZW50CisJICogICAgICAgICAgICB0aGUgZWxlbWVudCB3aGlsZSBob2xkcyB0aGUgc3RlcmVvdHlwZQorCSAqIEBwYXJhbSBzdGVyZW9fbmFtZQorCSAqICAgICAgICAgICAgdGhlIG5hbWUgb2YgdGhlIHN0ZXJlb3R5cGUKKwkgKiBAcGFyYW0gYXR0cmliX25hbWUKKwkgKiAgICAgICAgICAgIHRoZSBuYW1lIG9mIGFuIGF0dHJpYnV0ZSBvZiB0aGlzIHN0ZXJlb3R5cGUKKwkgKiBAcmV0dXJuIFRoZSB2YWx1ZSB0aGF0IGlzIGFzc29jaWF0ZWQgd2l0aCB0aGUgc3RlcmVvdHlwZSBhdHRyaWJ1dGUKKwkgKi8KKwlwdWJsaWMgc3RhdGljIEVsZW1lbnQgZ2V0QXR0cmlidXRlQmFzZShFbGVtZW50IGVsZW1lbnQsIFN0cmluZyBzdGVyZW9fbmFtZSwgU3RyaW5nIGF0dHJpYl9uYW1lKSB7CisJCU9iamVjdCBvYmogPSBnZXRBdHRyaWJ1dGUoZWxlbWVudCwgc3RlcmVvX25hbWUsIGF0dHJpYl9uYW1lKTsKKwkJaWYgKG9iaiBpbnN0YW5jZW9mIEVPYmplY3QpIHsKKwkJCXJldHVybiBVTUxVdGlsLmdldEJhc2VFbGVtZW50KChFT2JqZWN0KSBvYmopOworCQl9IGVsc2UgeworCQkJcmV0dXJuIG51bGw7CisJCX0KKwl9CisKKwkvKioKKwkgKiBDb3B5IHRoZSBzdGVyZW90eXBlIGFwcGxpY2F0aW9uIGZyb20gYSBzb3VyY2UgdG8gYSBkZXN0aW5hdGlvbiBlbGVtZW50LiBUaGUKKwkgKiBmdW5jdGlvbiB3aWxsIGFsc28gY29weSB0aGUgc3RlcmVvdHlwZSBhdHRyaWJ1dGVzLgorCSAqCisJICogQHBhcmFtIHNvdXJjZQorCSAqIEBwYXJhbSBkZXN0aW5hdGlvbgorCSAqIEByZXR1cm4KKwkgKi8KKwlwdWJsaWMgc3RhdGljIHZvaWQgY29weVN0ZXJlb3R5cGVzKENvcHkgY29weSwgRWxlbWVudCBzb3VyY2UsIEVsZW1lbnQgZGVzdGluYXRpb24pIHsKKworCQlmb3IgKFN0ZXJlb3R5cGUgc3RlcmVvdHlwZSA6IHNvdXJjZS5nZXRBcHBsaWVkU3RlcmVvdHlwZXMoKSkgeworCQkJU3RyaW5nIHN0ZXJlb05hbWUgPSBzdGVyZW90eXBlLmdldFF1YWxpZmllZE5hbWUoKTsKKworCQkJLy8gSGFjazogZG8gbm90IGNvcHkgZGVyaXZlZCBlbGVtZW50IHN0ZXJlb3R5cGUuIFByb2JsZW06IHdoZW4gdGVtcGxhdGVzIGFyZSBpbnN0YW50aWF0ZWQsCisJCQkvLyBzb21lIG9wZXJhdGlvbnMgYXJlIGRlcml2ZWQgZnJvbSBpbnRlcmZhY2Ugb3BlcmF0aW9ucyB3aGljaCBpbiB0dXJuIGFyZSBkZXJpdmVkIGZyb20gdGhlCisJCQkvLyBmb3JtYWwgdGVtcGxhdGUgcGFyYW1ldGVyIChlLmcuIEZJRk8pLiBTaW5jZSBpbnRlcmZhY2UgZGVyaXZlZCBmcm9tIHBvcnRzIGFyZSBwdXQgaW50byBhCisJCQkvLyB0b3AtbGV2ZWwgZGlyZWN0b3J5ICJkZXJpdmVkIGVsZW1lbnRzIiwgdGhleSBtYXkgYmUgb3V0c2lkZSB0aGUgcGFja2FnZSB0ZW1wbGF0ZSBhbmQgZG8gbm90CisJCQkvLyBnZXQgcmVwbGFjZWQuCisJCQljb3B5QXR0cmlidXRlcyhjb3B5LCBzdGVyZW90eXBlLmdldFF1YWxpZmllZE5hbWUoKSwgc291cmNlLCBkZXN0aW5hdGlvbik7CisKKwkJfQorCX0KKworCXB1YmxpYyBzdGF0aWMgdm9pZCBjb3B5U3RlcmVvdHlwZXMoRWxlbWVudCBzb3VyY2UsIEVsZW1lbnQgZGVzdGluYXRpb24pIHsKKwkJY29weVN0ZXJlb3R5cGVzKG51bGwsIHNvdXJjZSwgZGVzdGluYXRpb24pOworCX0KKworCS8qKgorCSAqIGNvcHkgc3RlcmVvdHlwZSBhdHRyaWJ1dGVzLgorCSAqCisJICogVE9ETzogdmVyaWZ5IGlmIGl0IGlzIG5lY2Vzc2FyeSB0byBkaXN0aW5ndWlzaCBiZXR3ZWVuIHN0ZXJlb1NvdXJjZSBhbmQgc3RlcmVvRGVzdAorCSAqICh0aGV5IHNob3VsZCBiZSBpZGVudGljYWwsIGlmIHRoZSByZXNvdXJjZSBzZXRzIGFyZSkuCisJICogPT4gc2ltcGxpZnkgY29kZQorCSAqCisJICogQHBhcmFtIHN0ZXJlb3R5cGVOYW1lCisJICogQHBhcmFtIHNvdXJjZQorCSAqIEBwYXJhbSBkZXN0aW5hdGlvbgorCSAqIEByZXR1cm4KKwkgKi8KKwlAU3VwcHJlc3NXYXJuaW5ncyh7ICJ1bmNoZWNrZWQiIH0pCisJcHVibGljIHN0YXRpYyBib29sZWFuIGNvcHlBdHRyaWJ1dGVzKENvcHkgY29weSwgU3RyaW5nIHN0ZXJlb3R5cGVOYW1lLCBFbGVtZW50IHNvdXJjZSwgRWxlbWVudCBkZXN0aW5hdGlvbikgeworCQlTdGVyZW90eXBlIHN0ZXJlb1NvdXJjZSA9IHNvdXJjZS5nZXRBcHBsaWVkU3RlcmVvdHlwZShzdGVyZW90eXBlTmFtZSk7CisJCVN0ZXJlb3R5cGUgc3RlcmVvRGVzdCA9IGRlc3RpbmF0aW9uLmdldEFwcGxpY2FibGVTdGVyZW90eXBlKHN0ZXJlb3R5cGVOYW1lKTsKKworCQlpZiAoKHN0ZXJlb1NvdXJjZSA9PSBudWxsKSB8fCAoc3RlcmVvRGVzdCA9PSBudWxsKSkgeworCQkJcmV0dXJuIGZhbHNlOworCQl9CisJCVN0ZXJlb3R5cGUgYWxyZWFkeUFwcGxpZWQgPSBkZXN0aW5hdGlvbi5nZXRBcHBsaWVkU3RlcmVvdHlwZShzdGVyZW90eXBlTmFtZSk7CisJCWlmIChhbHJlYWR5QXBwbGllZCA9PSBudWxsKSB7CisJCQkvLyBvbmx5IGFwcGx5IHN0ZXJlb3R5cGUsIGlmIG5vdCBhbHJlYWR5IGFwcGxpZWQKKwkJCWRlc3RpbmF0aW9uLmFwcGx5U3RlcmVvdHlwZShzdGVyZW9EZXN0KTsKKwkJfQorCisJCS8vIGdldEFsbEF0dHJpYnV0ZXM/IChidXQgaGF2ZSB0byBhdm9pZCBhdHRyaWJ1dGUgYmFzZV9DbGFzcyB3aGljaCByZXNldHMgc3RlcmVvdHlwZSBhcHBsaWNhdGlvbikKKwkJZm9yIChQcm9wZXJ0eSBhdHRyaWJ1dGUgOiBzdGVyZW9Tb3VyY2UuZ2V0QWxsQXR0cmlidXRlcygpKSB7CisJCQlTdHJpbmcgYXR0ck5hbWUgPSBhdHRyaWJ1dGUuZ2V0TmFtZSgpOworCisJCQlpZiAoYXR0ck5hbWUubGVuZ3RoKCkgPj0gNSkgeworCQkJCS8vIGRvIG5vdCBjb3B5IGJhc2VfIHN0ZXJlb3R5cGVzIChiYXNlX2NsYXNzLCBiYXNlX3BhY2thZ2UgYW5kIGJhc2VfUGFja2FnZUltcG9ydCkKKwkJCQlpZiAoYXR0ck5hbWUuc3RhcnRzV2l0aCgiYmFzZV8iKSkgeworCQkJCQljb250aW51ZTsKKwkJCQl9CisJCQl9CisJCQkvLyBkbyBub3QgY29weSBkZXJpdmVkIGF0dHJpYnV0ZXMKKwkJCWlmIChhdHRyaWJ1dGUuaXNEZXJpdmVkKCkpIHsKKwkJCQljb250aW51ZTsKKwkJCX0KKworCQkJT2JqZWN0IHZhbHVlID0gc291cmNlLmdldFZhbHVlKHN0ZXJlb1NvdXJjZSwgYXR0ck5hbWUpOworCQkJLy8gaGFuZGxlIHNwZWNpZmljIGNhc2U6IG5lZWQgdG8gY29weSByZWZlcmVuY2VkIGNvbnRhaW5lckV4dCwgc2luY2UgaXQgcG9pbnRzIHRvIGVsZW1lbnQKKwkJCS8vIGluIHRoZSBvcmlnaW5hbCBtb2RlbC4KKwkJCS8qCisJCQkgKiBpZiAoKHZhbHVlIGluc3RhbmNlb2YgRU9iamVjdCkgJiYgKGF0dHJOYW1lLmVxdWFscyAoImNvbnRhaW5lckV4dCIpKSkgeworCQkJICogY29udGludWU7CisJCQkgKiB9CisJCQkgKi8KKworCQkJaWYgKHZhbHVlIGluc3RhbmNlb2YgRUxpc3QpIHsKKwkJCQkvLyBjb3B5IGxpc3QKKwkJCQlFTGlzdDxPYmplY3Q+IG5ld0xpc3QgPSBuZXcgQmFzaWNFTGlzdDxPYmplY3Q+KCk7CisJCQkJZm9yIChPYmplY3QgdmFsdWVFbCA6IChFTGlzdDxPYmplY3Q+KSB2YWx1ZSkgeworCQkJCQlpZiAoKGNvcHkgIT0gbnVsbCkgJiYgKHZhbHVlRWwgaW5zdGFuY2VvZiBFbGVtZW50KSkgeworCQkJCQkJbmV3TGlzdC5hZGQoY29weS5nZXRDb3B5KChFbGVtZW50KSB2YWx1ZUVsKSk7CisJCQkJCX0gZWxzZSB7CisJCQkJCQluZXdMaXN0LmFkZCh2YWx1ZUVsKTsKKwkJCQkJfQorCQkJCX0KKwkJCQlpZiAobmV3TGlzdC5zaXplKCkgPiAwKSB7CisJCQkJCWRlc3RpbmF0aW9uLnNldFZhbHVlKHN0ZXJlb0Rlc3QsIGF0dHJOYW1lLCBuZXdMaXN0KTsKKwkJCQl9CisJCQl9IGVsc2UgaWYgKChjb3B5ICE9IG51bGwpICYmICh2YWx1ZSBpbnN0YW5jZW9mIEVsZW1lbnQpKSB7CisJCQkJZGVzdGluYXRpb24uc2V0VmFsdWUoc3RlcmVvRGVzdCwgYXR0ck5hbWUsIGNvcHkuZ2V0Q29weSgoRWxlbWVudCkgdmFsdWUpKTsKKwkJCX0gZWxzZSB7CisJCQkJZGVzdGluYXRpb24uc2V0VmFsdWUoc3RlcmVvRGVzdCwgYXR0ck5hbWUsIHZhbHVlKTsKKwkJCX0KKwkJfQorCisJCXJldHVybiB0cnVlOworCX0KKworCXB1YmxpYyBzdGF0aWMgYm9vbGVhbiBjb3B5QXR0cmlidXRlKFN0cmluZyBzdGVyZW90eXBlTmFtZSwgU3RyaW5nIGF0dHJpYnV0ZSwgRWxlbWVudCBzb3VyY2UsIEVsZW1lbnQgZGVzdGluYXRpb24pIHsKKwkJU3RlcmVvdHlwZSBzdGVyZW90eXBlID0gc291cmNlLmdldEFwcGxpZWRTdGVyZW90eXBlKHN0ZXJlb3R5cGVOYW1lKTsKKwkJaWYgKHN0ZXJlb3R5cGUgPT0gbnVsbCkgeworCQkJcmV0dXJuIGZhbHNlOworCQl9CisJCU9iamVjdCB2YWx1ZSA9IHNvdXJjZS5nZXRWYWx1ZShzdGVyZW90eXBlLCBhdHRyaWJ1dGUpOworCQlkZXN0aW5hdGlvbi5hcHBseVN0ZXJlb3R5cGUoc3RlcmVvdHlwZSk7CisJCWRlc3RpbmF0aW9uLnNldFZhbHVlKHN0ZXJlb3R5cGUsIGF0dHJpYnV0ZSwgdmFsdWUpOworCQlyZXR1cm4gdHJ1ZTsKKwl9CisKKwkvLyBwdWJsaWMgc3RhdGljIG9yZy5lY2xpcHNlLnBhcHlydXMuRkNNLkNvbm5lY3RvciBnZXRDb25uZWN0b3IoQ29ubmVjdG9yIGNvbm5lY3RvcikgeworCS8vIHJldHVybiBnZXRBcHBsaWNhdGlvbihjb25uZWN0b3IsIG9yZy5lY2xpcHNlLnBhcHlydXMuRkNNLkNvbm5lY3Rvci5jbGFzcyk7CisJLy8gfQorCS8vCisJLy8gcHVibGljIHN0YXRpYyBib29sZWFuIGlzQ29ubmVjdG9yKENvbm5lY3RvciBjYW5kaWRhdGUpIHsKKwkvLyByZXR1cm4gU3RVdGlscy5pc0FwcGxpZWQoY2FuZGlkYXRlLCBvcmcuZWNsaXBzZS5wYXB5cnVzLkZDTS5Db25uZWN0b3IuY2xhc3MpOworCS8vIH0KKworCXB1YmxpYyBzdGF0aWMgU3RlcmVvdHlwZSBnZXRTdGVyZW8oRWxlbWVudCBlbGVtZW50LCBqYXZhLmxhbmcuQ2xhc3M8PyBleHRlbmRzIEVPYmplY3Q+IGNsYXp6KSB7CisJCXJldHVybiBlbGVtZW50LmdldEFwcGxpZWRTdGVyZW90eXBlKGdldFN0ZXJlb05hbWUoZWxlbWVudCwgY2xhenopKTsKKwl9CisKKwkvKioKKwkgKiBHZXQgdGhlIHN0ZXJlb3R5cGUtbmFtZSB0aGF0IG1heSByZWxhdGUgdG8gdGhlIG5hbWUgb2YgYW4gaW50ZXJmYWNlIHdpdGhpbiBhIHN0YXRpYyBwcm9maWxlLgorCSAqIE5vdGUgdGhhdCB0aGUgY2xhc3MgbmFtZSB3aXRoaW4gYSBzdGF0aWMgcHJvZmlsZSBtaWdodCBoYXZlIGEgcHJlZml4LCBzdWNoIGFzIG9yZy5lY2xpcHNlLnBhcHlydXMuIFRoaXMKKwkgKiBmdW5jdGlvbnMgdHJpZXMgdG8gcmVtb3ZlIHByZWZpeGVzIGl0ZXJhdGl2ZWx5LCBpZiBhIHN0ZXJlb3R5cGUgaXMgbm90IGFwcGxpY2FibGUuCisJICoKKwkgKiBAcGFyYW0gY2xhenoKKwkgKiBAcmV0dXJuCisJICovCisJcHVibGljIHN0YXRpYyBTdHJpbmcgZ2V0U3RlcmVvTmFtZShFbGVtZW50IGVsZW1lbnQsIGphdmEubGFuZy5DbGFzczw/IGV4dGVuZHMgRU9iamVjdD4gY2xhenopIHsKKwkJU3RyaW5nIG5hbWUgPSBjbGF6ei5nZXROYW1lKCkucmVwbGFjZSgiLiIsICI6OiIpOyAvLyROT04tTkxTLTEkIC8vJE5PTi1OTFMtMiQ7CisJCXdoaWxlIChlbGVtZW50LmdldEFwcGxpY2FibGVTdGVyZW90eXBlKG5hbWUpID09IG51bGwpIHsKKwkJCWludCBpbmRleCA9IG5hbWUuaW5kZXhPZigiOjoiKTsgLy8kTk9OLU5MUy0xJAorCQkJaWYgKGluZGV4ID09IC0xKSB7CisJCQkJcmV0dXJuIG51bGw7CisJCQl9CisJCQluYW1lID0gbmFtZS5zdWJzdHJpbmcoaW5kZXggKyAyKTsKKwkJfQorCQlyZXR1cm4gbmFtZTsKKwl9CisKK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9UcmFuc2Zvcm1hdGlvbkV4Y2VwdGlvbi5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L1RyYW5zZm9ybWF0aW9uRXhjZXB0aW9uLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjY0ODk0MwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9UcmFuc2Zvcm1hdGlvbkV4Y2VwdGlvbi5qYXZhCkBAIC0wLDAgKzEsMjIgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIENFQSBMSVNULgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBEaG91aWIgKENFQSBMSVNUKSBzYWFkaWEuZGhvdWliQGNlYS5mciAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudDsKKworcHVibGljIGNsYXNzIFRyYW5zZm9ybWF0aW9uRXhjZXB0aW9uIGV4dGVuZHMgRXhjZXB0aW9uIHsKKworCXB1YmxpYyBUcmFuc2Zvcm1hdGlvbkV4Y2VwdGlvbihTdHJpbmcgcmVhc29uKSB7CisJCXN1cGVyKHJlYXNvbik7CisJfQorCisJLy8gU3RyaW5nIG1fcmVhc29uOworCWZpbmFsIHN0YXRpYyBsb25nIHNlcmlhbFZlcnNpb25VSUQgPSAxMjM0OworfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L1V0aWxzLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RlcGxveW1lbnQvVXRpbHMuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZDhjMTY5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L1V0aWxzLmphdmEKQEAgLTAsMCArMSw1MzYgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIENFQSBMSVNULgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBEaG91aWIgKENFQSBMSVNUKSBzYWFkaWEuZGhvdWliQGNlYS5mciAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudDsKKworaW1wb3J0IGphdmEuaW8uSU9FeGNlcHRpb247CitpbXBvcnQgamF2YS5uZXQuTWFsZm9ybWVkVVJMRXhjZXB0aW9uOworaW1wb3J0IGphdmEubmV0LlVSTDsKK2ltcG9ydCBqYXZhLnV0aWwuSXRlcmF0b3I7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWUuRmlsZUxvY2F0b3I7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkJhc2ljRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5VbmlxdWVFTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuUmVzb3VyY2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5pbmZyYS5jb3JlLnNlcnZpY2VzLlNlcnZpY2VFeGNlcHRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5pbmZyYS5jb3JlLnV0aWxzLlNlcnZpY2VVdGlsc0ZvckFjdGlvbkhhbmRsZXJzOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkFnZ3JlZ2F0aW9uS2luZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzc2lmaWVyOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuSW5zdGFuY2VTcGVjaWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkludGVyZmFjZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5OYW1lZEVsZW1lbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuTmFtZXNwYWNlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLk9wZXJhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuVHlwZTsKKworcHVibGljIGNsYXNzIFV0aWxzIHsKKworCS8qKgorCSAqIFJldHJpZXZlIGFuIGVsZW1lbnQgZnJvbSBhIGxpc3Qgb2YgbmFtZWQgZWxlbWVudHMgdmlhIGl0cyBuYW1lCisJICoKKwkgKiBAcGFyYW0gbmFtZWRFbGVtZW50TGlzdAorCSAqIEBwYXJhbSBuYW1lCisJICogQHJldHVybgorCSAqLworCXB1YmxpYyBzdGF0aWMgTmFtZWRFbGVtZW50IGdldE5hbWVkRWxlbWVudEZyb21MaXN0KAorCQkJRUxpc3Q8PyBleHRlbmRzIE5hbWVkRWxlbWVudD4gbmFtZWRFbGVtZW50TGlzdCwgU3RyaW5nIG5hbWUpIHsKKwkJSXRlcmF0b3I8PyBleHRlbmRzIE5hbWVkRWxlbWVudD4gbmFtZWRFbGVtZW50cyA9IG5hbWVkRWxlbWVudExpc3QKKwkJCQkuaXRlcmF0b3IoKTsKKwkJd2hpbGUgKG5hbWVkRWxlbWVudHMuaGFzTmV4dCgpKSB7CisJCQlOYW1lZEVsZW1lbnQgbmFtZWRFbGVtZW50ID0gbmFtZWRFbGVtZW50cy5uZXh0KCk7CisJCQlpZiAobmFtZWRFbGVtZW50LmdldE5hbWUoKS5lcXVhbHMobmFtZSkpIHsKKwkJCQlyZXR1cm4gbmFtZWRFbGVtZW50OworCQkJfQorCQl9CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIHJldHVybiB0aGUgdG9wLWxldmVsIG93bmVyIG9mIGFuIGVsZW1lbnQuIFRoaXMgZnVuY3Rpb24gcmV0dXJucyB0aGUgc2FtZQorCSAqIHZhbHVlIGFzIGdldE1vZGVsLCBpZiB0aGUgdG9wLWxldmVsIGVsZW1lbnQgaXMgYSBtb2RlbC4gV2hpbGUgdGhpcyBpcyB0aGUKKwkgKiBjYXNlIGZvciBtb2RlbHMsIG1vZGVsIGxpYnJhcmllcyBoYXZlIGEgdG9wLWxldmVsIHBhY2thZ2UgKG5vdCBhIG1vZGVsKS4KKwkgKiBJbiB0aGlzIGNhc2UsIGdldFRvcCByZXR1cm5zIHRoZSB0b3AtbGV2ZWwgcGFja2FnZSB3aGVyZWFzIGdldE1vZGVsIHdvdWxkCisJICogcmV0dXJuIG51bGwuCisJICoKKwkgKiBAcGFyYW0gZWxlbWVudAorCSAqIEByZXR1cm4gdGhlIHRvcC1sZXZlbCBvd25pbmcgcGFja2FnZQorCSAqLworCXB1YmxpYyBzdGF0aWMgUGFja2FnZSBnZXRUb3AoRWxlbWVudCBlbGVtZW50KSB7CisJCXdoaWxlIChlbGVtZW50ICE9IG51bGwpIHsKKwkJCUVsZW1lbnQgb3duZXIgPSBlbGVtZW50LmdldE93bmVyKCk7CisJCQlpZiAob3duZXIgPT0gbnVsbCkgeworCQkJCWlmIChlbGVtZW50IGluc3RhbmNlb2YgUGFja2FnZSkgeworCQkJCQlyZXR1cm4gKFBhY2thZ2UpIGVsZW1lbnQ7CisJCQkJfQorCQkJfQorCQkJZWxlbWVudCA9IG93bmVyOworCQl9CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIEBwYXJhbSBlbGVtZW50CisJICogICAgICAgICAgICBhbiBlbGVtZW50IHdoaWNoIGlzIG93bmVkIGJ5IGEgbW9kZWwuCisJICogQHBhcmFtIHN1YmZvbGRlcgorCSAqICAgICAgICAgICAgdGhlIG5hbWUgb2YgYSBzdWItZm9sZGVyIHdpdGhpbiByb290IChjcmVhdGVkLCBpZiBub3QKKwkgKiAgICAgICAgICAgIGV4aXN0ZW50KQorCSAqIEByZXR1cm4gYSByZWZlcmVuY2UgdG8gdGhlIHN1YiBmb2xkZXIgd2l0aGluIHRoZSByb290IG9mIHRoZSBtb2RlbCB0aGF0CisJICogICAgICAgICBiZWxvbmdzIHRvIHRoZSBwYXNzZWQgZWxlbWVudC4KKwkgKi8KKwlwdWJsaWMgc3RhdGljIFBhY2thZ2UgZ2V0Um9vdChFbGVtZW50IGVsZW1lbnQsIFN0cmluZyBzdWJmb2xkZXIpIHsKKwkJUGFja2FnZSByb290ID0gZ2V0VG9wKGVsZW1lbnQpOworCQlpZiAocm9vdC5nZXROZXN0ZWRQYWNrYWdlKHN1YmZvbGRlcikgIT0gbnVsbCkgeworCQkJcmV0dXJuIHJvb3QuZ2V0TmVzdGVkUGFja2FnZShzdWJmb2xkZXIpOworCQl9IGVsc2UgeworCQkJcmV0dXJuIHJvb3QuY3JlYXRlTmVzdGVkUGFja2FnZShzdWJmb2xkZXIpOworCQl9CisJfQorCisJLyoqCisJICogQ29udmVuaWVuY2UgbWV0aG9kIGVuYWJsaW5nIHRvIGFwcGx5IGdldE93bmVkT3BlcmF0aW9uIGVxdWFsbHkgdG8gY2xhc3NlcworCSAqIGFuZCBpbnRlcmZhY2VzCisJICoKKwkgKiBAcGFyYW0gY2wKKwkgKiBAcGFyYW0gbmFtZQorCSAqIEBwYXJhbSBwYXJhbU5hbWVzCisJICogQHBhcmFtIHBhcmFtVHlwZXMKKwkgKiBAcmV0dXJuCisJICovCisJcHVibGljIHN0YXRpYyBPcGVyYXRpb24gY3JlYXRlT3duZWRPcGVyYXRpb24oQ2xhc3NpZmllciBjbCwgU3RyaW5nIG5hbWUsCisJCQlFTGlzdDxTdHJpbmc+IHBhcmFtTmFtZXMsIEVMaXN0PFR5cGU+IHBhcmFtVHlwZXMsIFR5cGUgcmV0VHlwZSkgeworCQlpZiAoY2wgaW5zdGFuY2VvZiBDbGFzcykgeworCQkJcmV0dXJuICgoQ2xhc3MpIGNsKS5jcmVhdGVPd25lZE9wZXJhdGlvbihuYW1lLCBwYXJhbU5hbWVzLAorCQkJCQlwYXJhbVR5cGVzLCByZXRUeXBlKTsKKwkJfSBlbHNlIGlmIChjbCBpbnN0YW5jZW9mIEludGVyZmFjZSkgeworCQkJcmV0dXJuICgoSW50ZXJmYWNlKSBjbCkuY3JlYXRlT3duZWRPcGVyYXRpb24obmFtZSwgcGFyYW1OYW1lcywKKwkJCQkJcGFyYW1UeXBlcywgcmV0VHlwZSk7CisJCX0gZWxzZSB7CisJCQlyZXR1cm4gbnVsbDsKKwkJfQorCX0KKworCXB1YmxpYyBzdGF0aWMgT3BlcmF0aW9uIGdldE93bmVkT3BlcmF0aW9uKENsYXNzaWZpZXIgY2wsIFN0cmluZyBuYW1lLAorCQkJRUxpc3Q8U3RyaW5nPiBwYXJhbU5hbWVzLCBFTGlzdDxUeXBlPiBwYXJhbVR5cGVzKSB7CisJCWlmIChjbCBpbnN0YW5jZW9mIENsYXNzKSB7CisJCQlyZXR1cm4gKChDbGFzcykgY2wpLmdldE93bmVkT3BlcmF0aW9uKG5hbWUsIHBhcmFtTmFtZXMsIHBhcmFtVHlwZXMpOworCQl9IGVsc2UgaWYgKGNsIGluc3RhbmNlb2YgSW50ZXJmYWNlKSB7CisJCQlyZXR1cm4gKChJbnRlcmZhY2UpIGNsKS5nZXRPd25lZE9wZXJhdGlvbihuYW1lLCBwYXJhbU5hbWVzLAorCQkJCQlwYXJhbVR5cGVzKTsKKwkJfSBlbHNlIHsKKwkJCXJldHVybiBudWxsOworCQl9CisJfQorCisJLyoqCisJICogdGhpcyBtZXRob2QgcmV0dXJucyB0aGUgY29tcG9uZW50IHR5cGUgb2YgYW4gaW1wbGVtZW50YXRpb24uIEl0IGlzIGJhc2VkCisJICogb24gdGhlIG1vZGVsaW5nIGNvbnZlbnRpb24gdGhhdCBpbXBsZW1lbiB0YXRpb25zIGluaGVyaXQgZnJvbSB0eXBlcy4KKwkgKi8KKwlwdWJsaWMgc3RhdGljIENsYXNzIGNvbXBvbmVudFR5cGUoQ2xhc3MgaW1wbGVtZW50YXRpb24pIHsKKwkJaWYgKFV0aWxzLmlzQ29tcEltcGwoaW1wbGVtZW50YXRpb24pKSB7CisJCQlJdGVyYXRvcjxDbGFzcz4gc3VwZXJjbGFzc2VzID0gaW1wbGVtZW50YXRpb24uZ2V0U3VwZXJDbGFzc2VzKCkKKwkJCQkJLml0ZXJhdG9yKCk7CisJCQl3aGlsZSAoc3VwZXJjbGFzc2VzLmhhc05leHQoKSkgeworCQkJCUNsYXNzIGNvbXBvbmVudFR5cGUgPSBzdXBlcmNsYXNzZXMubmV4dCgpOworCQkJCWlmIChVdGlscy5pc0NvbXBUeXBlKGNvbXBvbmVudFR5cGUpKSB7CisJCQkJCXJldHVybiBjb21wb25lbnRUeXBlOworCQkJCX0KKwkJCX0KKwkJfQorCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiByZXR1cm4gdHJ1ZSwgaWYgYSBjb21wb25lbnQgKGltcGxlbWVudGF0aW9uKSBpcyBhIGNvbXBvc2l0ZSwgaS5lLiBoYXMKKwkgKiBpbm5lciBwYXJ0cworCSAqLworCXB1YmxpYyBzdGF0aWMgYm9vbGVhbiBpc0NvbXBvc2l0ZShDbGFzcyBpbXBsZW1lbnRhdGlvbikgeworCQlyZXR1cm4gVXRpbHMuaXNDb21wSW1wbChpbXBsZW1lbnRhdGlvbikKKwkJCQkmJiAoZ2V0UGFydHMoaW1wbGVtZW50YXRpb24pLnNpemUoKSA+IDApOworCX0KKworCXB1YmxpYyBzdGF0aWMgRUxpc3Q8UHJvcGVydHk+IGdldFBhcnRzKENsYXNzIGltcGxlbWVudGF0aW9uKSB7CisKKwkJcmV0dXJuIGltcGxlbWVudGF0aW9uLmdldFBhcnRzKCk7CisKKwl9CisKKworCS8qKgorCSAqIEBwYXJhbSBhdHRyaWJ1dGUKKwkgKiAgICAgICAgICAgIGFuIGF0dHJpYnV0ZQorCSAqIEByZXR1cm4gdHJ1ZSwgaWYgdGhlIGFnZ3JlZ2F0aW9uIGtpbmQgaXMgY29uc2lkZXJlZCBhcyBhIGNvbXBvc2l0aW9uCisJICovCisJcHVibGljIHN0YXRpYyBib29sZWFuIGlzQ29tcG9zaXRpb24oUHJvcGVydHkgYXR0cmlidXRlKSB7CisJCWlmICh0cmVhdE5vbmVBc0NvbXBvc2l0ZSgpKSB7CisJCQlyZXR1cm4gKGF0dHJpYnV0ZS5nZXRBZ2dyZWdhdGlvbigpICE9IEFnZ3JlZ2F0aW9uS2luZC5TSEFSRURfTElURVJBTCk7CisJCX0KKwkJZWxzZSB7CisJCQlyZXR1cm4gKGF0dHJpYnV0ZS5nZXRBZ2dyZWdhdGlvbigpID09IEFnZ3JlZ2F0aW9uS2luZC5DT01QT1NJVEVfTElURVJBTCk7CisJCX0KKwl9CisKKwkvKioKKwkgKiByZXR1cm4gdHJ1ZSwgaWYgYW4gaW5zdGFuY2Ugc3BlY2lmaWNhdGlvbiBpcyBhIGNvbXBvc2l0ZSwgaS5lLiBoYXMgPiAxCisJICogc2xvdHMgVE9ETzogZGlzdGluZ3Vpc2ggcGFydHMgYW5kIGNvbmZpZ3VyYXRpb24gYXR0cmlidXRlcworCSAqLworCisJcHVibGljIHN0YXRpYyBib29sZWFuIGlzQ29tcG9zaXRlKEluc3RhbmNlU3BlY2lmaWNhdGlvbiBpcykgeworCQlyZXR1cm4gKGlzLmdldFNsb3RzKCkuc2l6ZSgpID4gMCk7CisJfQorCisJLyoqCisJICogR2V0IGFuIGVsZW1lbnQgdmlhIGl0cyBxdWFsaWZpZWQgbmFtZS4gV2lsbCBmaW5kIGVsZW1lbnRzIGZyb20gdGhlIHJvb3QKKwkgKiBtb2RlbCBhbmQgZWxlbWVudHMgaW4gaW1wb3J0ZWQgbW9kZWxzLiBBbHNvIHN1cHBvcnRzIHRhcmdldCBtb2RlbCBpbgorCSAqIHdoaWNoIGltcG9ydHMgaGF2ZSBiZWVuIGNvcGllZCAod2hpbGUga2VlcGluZyB0aGUgdG9wLWxldmVsIG5hbWUpCisJICoKKwkgKiBAcGFyYW0gcm9vdAorCSAqIEBwYXJhbSBxdWFsaWZpZWROYW1lCisJICogQHJldHVybgorCSAqLworCXB1YmxpYyBzdGF0aWMgTmFtZWRFbGVtZW50IGdldFF1YWxpZmllZEVsZW1lbnQoUGFja2FnZSByb290LAorCQkJU3RyaW5nIHF1YWxpZmllZE5hbWUpIHsKKwkJTmFtZWRFbGVtZW50IG5hbWVkRWxlbWVudCA9IG51bGw7CisJCWludCBpbmRleCA9IHF1YWxpZmllZE5hbWUuaW5kZXhPZigiOjoiKTsKKwkJaWYgKGluZGV4ICE9IC0xKSB7CisJCQkvLyBmaXJzdCB0cnkgdXNpbmcgYSBwYXRoIHdpdGhvdXQgdG9wIGVsZW1lbnQgKHNpbmNlCisJCQkvLyBnZXRRdWFsaWZpZWRFbGVtZW50IGlzIHR5cGljYWxseSB1c2VkIGZvcgorCQkJLy8gaW1wb3J0ZWQgZWxlbWVudHMpCisJCQlTdHJpbmcgcmVtYWluZGVyID0gcXVhbGlmaWVkTmFtZS5zdWJzdHJpbmcoaW5kZXggKyAyKTsKKwkJCW5hbWVkRWxlbWVudCA9IGdldFF1YWxpZmllZEVsZW1lbnQocm9vdCwgcmVtYWluZGVyLCBxdWFsaWZpZWROYW1lKTsKKwkJfQorCQlpZiAobmFtZWRFbGVtZW50ID09IG51bGwpIHsKKwkJCS8vIHRyeSB3aXRoIGNvbXBsZXRlIG5hbWUgYXMgcGF0aCBuYW1lLCBidXQgYXNzdW1lIHRoYXQgdGhlIGVsZW1lbnQKKwkJCS8vIGhhcyBiZWVuIGNvcGllZCBpbnRvIHRoZSBtb2RlbCwKKwkJCS8vIGkuZS4gcXVhbGlmaWVkTmFtZSBpcyBwcmVmaXhlZCBieSBtb2RlbCBuYW1lCisJCQluYW1lZEVsZW1lbnQgPSBnZXRRdWFsaWZpZWRFbGVtZW50KHJvb3QsIHF1YWxpZmllZE5hbWUsCisJCQkJCXJvb3QuZ2V0TmFtZSgpICsgIjo6IiArIHF1YWxpZmllZE5hbWUpOworCQl9CisJCXJldHVybiBuYW1lZEVsZW1lbnQ7CisJfQorCisJLyoqCisJICogUmV0cmlldmUgYW4gZWxlbWVudCB2aWEgaXRzIHF1YWxpZmllZCBuYW1lIHdpdGhpbiBhIHBhY2thZ2UgVGhlIHNlZ21lbnRzCisJICogb2YgdGhlIHBhY2thZ2UgbWF5IGJlIG5vbiB1bmlxdWUgZHVlIHRvIGltcG9ydHMKKwkgKgorCSAqIEByZXR1cm4gdGhlIGZvdW5kIGVsZW1lbnQsIGlmIGl0IGV4aXN0cworCSAqLworCXB1YmxpYyBzdGF0aWMgTmFtZWRFbGVtZW50IGdldFF1YWxpZmllZEVsZW1lbnQoUGFja2FnZSByb290LAorCQkJU3RyaW5nIHJlbWFpbmluZ1BhdGgsIFN0cmluZyBxdWFsaWZpZWROYW1lKSB7CisJCWlmIChyb290ID09IG51bGwpIHsKKwkJCXJldHVybiBudWxsOworCQl9CisJCWlmICghcmVtYWluaW5nUGF0aC5jb250YWlucygiOjoiKSkgeworCQkJZm9yIChOYW1lZEVsZW1lbnQgY2FuZGlkYXRlIDogcm9vdC5nZXRNZW1iZXJzKCkpIHsKKwkJCQlTdHJpbmcgbmFtZSA9IGNhbmRpZGF0ZS5nZXROYW1lKCk7CisJCQkJaWYgKChuYW1lICE9IG51bGwpICYmIG5hbWUuZXF1YWxzKHJlbWFpbmluZ1BhdGgpKSB7CisJCQkJCWlmIChjYW5kaWRhdGUuZ2V0UXVhbGlmaWVkTmFtZSgpLmVxdWFscyhxdWFsaWZpZWROYW1lKSkgeworCQkJCQkJcmV0dXJuIGNhbmRpZGF0ZTsKKwkJCQkJfQorCQkJCX0KKwkJCX0KKwkJfSBlbHNlIHsKKwkJCVN0cmluZyBzZWdtZW50ID0gcmVtYWluaW5nUGF0aC5zcGxpdCgiOjoiKVswXTsKKwkJCVN0cmluZyByZW1haW5kZXIgPSByZW1haW5pbmdQYXRoLnN1YnN0cmluZyhzZWdtZW50Lmxlbmd0aCgpICsgMik7CisJCQlmb3IgKEVsZW1lbnQgZWxlbWVudCA6IHJvb3QuZ2V0TWVtYmVycygpKSB7CisJCQkJaWYgKGVsZW1lbnQgaW5zdGFuY2VvZiBQYWNrYWdlKSB7CisJCQkJCWlmICgoKE5hbWVkRWxlbWVudCkgZWxlbWVudCkuZ2V0TmFtZSgpLmVxdWFscyhzZWdtZW50KSkgeworCQkJCQkJTmFtZWRFbGVtZW50IGZvdW5kRWxlbWVudCA9IGdldFF1YWxpZmllZEVsZW1lbnQoCisJCQkJCQkJCShQYWNrYWdlKSBlbGVtZW50LCByZW1haW5kZXIsIHF1YWxpZmllZE5hbWUpOworCQkJCQkJLy8gcmV0dXJuLCBpZiBub3QgZm91bmQKKwkJCQkJCWlmIChmb3VuZEVsZW1lbnQgIT0gbnVsbCkgeworCQkJCQkJCXJldHVybiBmb3VuZEVsZW1lbnQ7CisJCQkJCQl9CisJCQkJCX0KKwkJCQl9CisJCQl9CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogU2ltcGxlIGNoZWNrIHdoZXRoZXIgYW4gZWxlbWVudCBpcyBpbiBhIGRpZmZlcmVudCBtb2RlbCB0aGFuIHRoZSBwYXNzZWQKKwkgKiBwYWNrYWdlIEl0IHdpbGwgcmV0dXJuIHRydWUsIHdoZW5ldmVyIHRoZSB0aGUgdG9wIGVsZW1lbnRzIGRvIG5vdCBtYXRjaC4KKwkgKiBUaGlzIGlzIGFsd2F5cyB0cnVlLCBpZiB0aGUgMm5kIGJlbG9uZ3MgdG8gYSBkaWZmZXJlbnQgbW9kZWwsIHdoZXRoZXIKKwkgKiBpbXBvcnRlZCBvciBub3QuIFRoaXMgZGlzdGluY3Rpb24gaXMgaG93ZXZlciBub3QgcmVxdWlyZWQgaW4gb3VyIGNvbnRleHQuCisJICovCisJcHVibGljIHN0YXRpYyBib29sZWFuIGlzRWxlbWVudEluRGlmZmVyZW50TW9kZWwoUGFja2FnZSBtb2RlbCwKKwkJCU5hbWVkRWxlbWVudCBuYW1lZEVsZW1lbnQpIHsKKwkJcmV0dXJuIG1vZGVsICE9IGdldFRvcChuYW1lZEVsZW1lbnQpOworCX0KKworCS8qKgorCSAqIENoZWNrIHdoZXRoZXIgYW4gZWxlbWVudCAocmVmZXJlbmNlZCBmcm9tIHRoZSBzb3VyY2UgbW9kZWwpIGlzIHBhcnQgb2YgYQorCSAqIHBhY2thZ2UgdGhhdCBpcyBpbXBvcnRlZCBvbiB0b3AtbGV2ZWwgYnkgdGhlIHRhcmdldCBtb2RlbC4gSXQgd2lsbCBhbHdheXMKKwkgKiByZXR1cm4gZmFsc2UsIGlmIHRoZSBwYXNzZWQgZWxlbWVudCBpcyBwYXJ0IG9mIHRoZSBzb3VyY2UgbW9kZWwuCisJICoKKwkgKiBAcGFyYW0gc2F0CisJICogICAgICAgICAgICBzb3VyY2UgYW5kIHRhcmdldCBtb2RlbCBpbmZvcm1hdGlvbgorCSAqIEBwYXJhbSBuYW1lZEVsZW1lbnQKKwkgKiAgICAgICAgICAgIGEgbmFtZWQgZWxlbWVudAorCSAqIEByZXR1cm4gdHJ1ZSwgaWYgaW1wb3J0ZWQgKG9uIHRvcCBsZXZlbCksIGZhbHNlIG90aGVyd2lzZQorCSAqLworCXB1YmxpYyBzdGF0aWMgYm9vbGVhbiBpc0VsZW1lbnRJbXBvcnRlZChDb3B5IHNhdCwgTmFtZWRFbGVtZW50IG5hbWVkRWxlbWVudCkgeworCQlpZiAoaXNFbGVtZW50SW5EaWZmZXJlbnRNb2RlbChzYXQuc291cmNlLCBuYW1lZEVsZW1lbnQpKSB7CisJCQlTdHJpbmcgcXVhbGlmaWVkTmFtZSA9IG5hbWVkRWxlbWVudC5nZXRRdWFsaWZpZWROYW1lKCk7CisJCQlpbnQgaW5kZXggPSBxdWFsaWZpZWROYW1lLmluZGV4T2YoIjo6Iik7CisJCQkvLyByZW1vdmUgdG9wIGxldmVsIGVsZW1lbnQgb2YgbmFtZQorCQkJaWYgKGluZGV4ICE9IC0xKSB7CisJCQkJcXVhbGlmaWVkTmFtZSA9IHF1YWxpZmllZE5hbWUuc3Vic3RyaW5nKGluZGV4ICsgMik7CisJCQl9CisJCQkvLyBjaGVjayB3aGV0aGVyIHRoZSBlbGVtZW50IGlzIHJlYWNoYWJsZSBmcm9tIHRoZSB0YXJnZXQgcm9vdAorCQkJaWYgKGdldFF1YWxpZmllZEVsZW1lbnQoc2F0LnRhcmdldCwgcXVhbGlmaWVkTmFtZSkgIT0gbnVsbCkgeworCQkJCXJldHVybiB0cnVlOworCQkJfQorCQkJLyoKKwkJCSAqIGRvIG5vdCB1c2UgcGFja2FnZUltcG9ydHMsIHNpbmNlIGltcG9ydCBpcyB0cmFuc2l0aXYgYW5kIHdvdWxkCisJCQkgKiBub3QgY2FwdHVyZSBhbGwgY2FzZXMgUGFja2FnZSB0b3AgPSBnZXRUb3AgKG5hbWVkRWxlbWVudCk7IGZvcgorCQkJICogKFBhY2thZ2VJbXBvcnQgcGFja2FnZUltcG9ydCA6IHNhdC50YXJnZXQuZ2V0UGFja2FnZUltcG9ydHMoKSkgeworCQkJICogaWYgKHBhY2thZ2VJbXBvcnQuZ2V0SW1wb3J0ZWRQYWNrYWdlICgpID09IHRvcCkgeyByZXR1cm4gdHJ1ZTsgfQorCQkJICogfQorCQkJICovCisJCX0KKwkJcmV0dXJuIGZhbHNlOworCX0KKworCS8qKgorCSAqIENoZWNrIHdoZXRoZXIgYSBuYW1lZCBlbGVtZW50IGV4aXN0cyB3aXRoaW4gdGhlIHRhcmdldCBtb2RlbC4gVGhpcworCSAqIGZ1bmN0aW9uIGV2YWx1YXRlcyB0aGUgY29weUltcG9ydCBmbGFnLiBJZiB0cnVlLCBpdCBhc3N1bWVzIHRoYXQgdGhlCisJICogb3JpZ2luYWwgbW9kZWwgYXMgd2VsbCBhcyBpbXBvcnRzIGNvcnJlc3BvbmQgdG8gYSB0b3AgbGV2ZWwgcGFja2FnZQorCSAqIHdpdGhpbiB0aGUgdGFyZ2V0IG1vZGVsLiBJZiBpbXBvcnRzIGFyZSBub3QgY29waWVkLCB0aGUgZnVuY3Rpb24gYXNzdW1lcworCSAqIHRoYXQgYWxsIGVsZW1lbnRzIG9mIGEgZGlmZmVyZW50IG1vZGVsIGFyZSBhY3R1YWxseSByZWFjaGFibGUgdmlhIHRoZQorCSAqIGltcG9ydCByZWxhdGlvbnNoaXAKKwkgKgorCSAqIEBwYXJhbSBzYXQKKwkgKiBAcGFyYW0gbmFtZWRFbGVtZW50CisJICogQHJldHVybiB0aGUgY29ycmVzcG9uZGluZyBlbGVtZW50IHdpdGhpbiB0aGUgdGFyZ2V0IG1vZGVsIC0gaWYgaXQgZXhpdHMKKwkgKi8KKwlwdWJsaWMgc3RhdGljIE5hbWVkRWxlbWVudCBnZXRFeGlzdGluZ05FaW5UYXJnZXQoQ29weSBzYXQsCisJCQlOYW1lZEVsZW1lbnQgbmFtZWRFbGVtZW50KSB7CisJCWlmIChzYXQuY29weUV4dFJlZmVyZW5jZXMpIHsKKwkJCS8vIGNvcHkgaW1wb3J0cyBpbnRvIG5ldyBtb2RlbAorCQkJLy8gcmV0dXJuIGV4aXN0aW5nIGVsZW1lbnQgKG9yIG51bGwpCisJCQlyZXR1cm4gZ2V0RXhpc3RpbmdFbGVtZW50KHNhdC50YXJnZXQsIG5hbWVkRWxlbWVudCwgZmFsc2UpOworCQl9IGVsc2UgeworCQkJLy8gZWxlbWVudHMgdGhhdCBhcmUgaW1wb3J0ZWQgc2hvdWxkIG5vdCBiZSBjb3BpZWQuCisJCQkvLyBGdW5jdGlvbiBhc3N1bWVzIHRoYXQgYWxsIGVsZW1lbnRzIHRoYXQgYXJlIGluIGEgZGlmZmVyZW50IG1vZGVsCisJCQkvLyBhcmUgYWN0dWFsbHkKKwkJCS8vIHJlYWNoYWJsZSB2aWEgaW1wb3J0IHJlbGF0aW9ucywgaS5lLiBleGlzdCBhbHJlYWR5CisJCQlpZiAoaXNFbGVtZW50SW5EaWZmZXJlbnRNb2RlbChzYXQuc291cmNlLCBuYW1lZEVsZW1lbnQpKSB7CisJCQkJcmV0dXJuIG5hbWVkRWxlbWVudDsKKwkJCX0KKwkJCXJldHVybiBnZXRFeGlzdGluZ0VsZW1lbnQoc2F0LnRhcmdldCwgbmFtZWRFbGVtZW50LCBmYWxzZSk7CisJCX0KKwl9CisKKwlwdWJsaWMgc3RhdGljIE5hbWVkRWxlbWVudCBnZXRFeGlzdGluZ0VsZW1lbnQoUGFja2FnZSBtb2RlbCwKKwkJCU5hbWVkRWxlbWVudCBuYW1lZEVsZW1lbnQsIGJvb2xlYW4gc2tpcFRvcCkgeworCQlFTGlzdDxOYW1lc3BhY2U+IGxpc3QgPSBuYW1lZEVsZW1lbnQuYWxsTmFtZXNwYWNlcygpOworCQlpbnQgb2Zmc2V0ID0gKHNraXBUb3AgPyAyIDogMSk7CisJCS8vIHN0YXJ0IHdpdGggbGlzdCBzaXplIC0gMiwgaS5lLiBza2lwIGxhc3QgZWxlbWVudCB3aGljaCBwb2ludHMgdG8gdGhlCisJCS8vIG5hbWUgb2YgdGhlCisJCS8vIChwb3RlbnRpYWxseSkgaW1wb3J0ZWQgbW9kZWwsIHNpbmNlIGdldEltcG9ydGVkRWxlbWVudCB3aWxsIHN0YXJ0CisJCS8vIHRoZXJlLgorCQlQYWNrYWdlIGN1cnJlbnRQa2cgPSBtb2RlbDsKKwkJZm9yIChpbnQgaSA9IGxpc3Quc2l6ZSgpIC0gb2Zmc2V0OyBpID49IDA7IGktLSkgeworCQkJU3RyaW5nIG5hbWUgPSBsaXN0LmdldChpKS5nZXROYW1lKCk7CisJCQlOYW1lZEVsZW1lbnQgbWVtYmVyID0gY3VycmVudFBrZy5nZXRNZW1iZXIobmFtZSk7CisJCQlpZiAobWVtYmVyIGluc3RhbmNlb2YgUGFja2FnZSkgeworCQkJCWN1cnJlbnRQa2cgPSAoUGFja2FnZSkgbWVtYmVyOworCQkJfSBlbHNlIHsKKwkJCQlyZXR1cm4gbnVsbDsKKwkJCX0KKwkJfQorCQlTdHJpbmcgbmFtZSA9IG5hbWVkRWxlbWVudC5nZXROYW1lKCk7CisJCXJldHVybiBjdXJyZW50UGtnLmdldE1lbWJlcihuYW1lKTsKKwl9CisKKwkvKioKKwkgKiBDaGVjayB3aGV0aGVyIGEgY2xhc3MgY29udGFpbnMgYSBub24tcG9ydCBhdHRyaWJ1dGUgb2YgYSBnaXZlbiBuYW1lCisJICoKKwkgKiBAcGFyYW0gY2wKKwkgKiBAcmV0dXJuCisJICovCisJcHVibGljIHN0YXRpYyBib29sZWFuIGhhc05vblBvcnRPd25lZEF0dHJpYnV0ZShDbGFzcyBjbCwgU3RyaW5nIG5hbWUpIHsKKwkJZm9yIChQcm9wZXJ0eSBwIDogY2wuZ2V0T3duZWRBdHRyaWJ1dGVzKCkpIHsKKwkJCWlmICghKHAgaW5zdGFuY2VvZiBQb3J0KSkgeworCQkJCWlmIChwLmdldE5hbWUoKS5lcXVhbHMobmFtZSkpIHsKKwkJCQkJcmV0dXJuIHRydWU7CisJCQkJfQorCQkJfQorCQl9CisKKwkJcmV0dXJuIGZhbHNlOworCX0KKworCXB1YmxpYyBzdGF0aWMgPFQgZXh0ZW5kcyBFT2JqZWN0PiBFTGlzdDxUPiBnZXRBbGxFbGVtZW50c09mVHlwZShFbGVtZW50IGV4YW1pbmVFbGVtZW50LCBqYXZhLmxhbmcuQ2xhc3M8VD4gY2xhenopCisJeworCQlFTGlzdDxFbGVtZW50PiB2aXNpdGVkUGFja2FnZXMgPSBuZXcgQmFzaWNFTGlzdDxFbGVtZW50PigpOworCQlyZXR1cm4gZ2V0QWxsRWxlbWVudHNPZlR5cGUoZXhhbWluZUVsZW1lbnQsIGNsYXp6LCB2aXNpdGVkUGFja2FnZXMpOworCX0KKworCUBTdXBwcmVzc1dhcm5pbmdzKCJ1bmNoZWNrZWQiKQorCXB1YmxpYyBzdGF0aWMgPFQgZXh0ZW5kcyBFT2JqZWN0PiBFTGlzdDxUPiBnZXRBbGxFbGVtZW50c09mVHlwZShFbGVtZW50IGV4YW1pbmVFbGVtZW50LCBqYXZhLmxhbmcuQ2xhc3M8VD4gY2xhenosIEVMaXN0PEVsZW1lbnQ+IHZpc2l0ZWRQYWNrYWdlcykKKwl7CisJCUVMaXN0PFQ+IGxpc3QgPSBuZXcgVW5pcXVlRUxpc3Q8VD4oKTsKKwkJZm9yIChFbGVtZW50IGVsZW1lbnQgOiBleGFtaW5lRWxlbWVudC5hbGxPd25lZEVsZW1lbnRzKCkpIHsKKwkJCWlmIChlbGVtZW50IGluc3RhbmNlb2YgUGFja2FnZSkgeworCQkJCWlmICghdmlzaXRlZFBhY2thZ2VzLmNvbnRhaW5zKGVsZW1lbnQpKSB7CisJCQkJCXZpc2l0ZWRQYWNrYWdlcy5hZGQoZWxlbWVudCk7CisJCQkJCWxpc3QuYWRkQWxsKGdldEFsbEVsZW1lbnRzT2ZUeXBlKGVsZW1lbnQsIGNsYXp6LAorCQkJCQkJCXZpc2l0ZWRQYWNrYWdlcykpOworCQkJCX0KKwkJCX0gZWxzZSBpZiAoY2xhenouaXNJbnN0YW5jZShlbGVtZW50KSkgeworCQkJCWxpc3QuYWRkKChUKSBlbGVtZW50KTsKKwkJCX0KKwkJfQorCQlyZXR1cm4gbGlzdDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm4gdGhlIHRvcCBlbGVtZW50IG9mIHRoZSBtb2RlbCB0aGF0IGlzIGN1cnJlbnRseSBlZGl0ZWQuIFRoaXMgZnVuY3Rpb24gaXMgYmFzZWQgb24gdGhlCisJICogYXNzdW1wdGlvbiB0aGF0IHRoZSB1c2VyIG1vZGVsIGlzIHRoZSBmaXJzdCByZXNvdXJjZSB0aGF0IGlzIGxvYWRlZCBpbnRvIHRoZSBtb2RlbCBzZXQuCisJICogVXNlIHRoaXMgZnVuY3Rpb24gaW5zdGVhZCBvZiBVdGlscy5nZXRUb3AgKG9yIGdldE1vZGVsKSBpZiB5b3Ugd2FudCB0byBhdm9pZCBuYXZpZ2F0aW5nIHRvIHRoZQorCSAqIHJvb3Qgb2YgYW4gaW1wb3J0ZWQgbW9kZWwuCisJICoKKwkgKiBAcmV0dXJuIHRoZSB0b3AgbGV2ZWwgcGFja2FnZSBvZiB0aGUgbW9kZWwgY3VycmVudGx5IGxvYWRlZCBpbnRvIGFuIGVkaXRvci4KKwkgKi8KKwlwdWJsaWMgc3RhdGljIFBhY2thZ2UgZ2V0VXNlck1vZGVsKCkgeworCQlTZXJ2aWNlVXRpbHNGb3JBY3Rpb25IYW5kbGVycyBzZXJ2aWNlVXRpbHMgPSBTZXJ2aWNlVXRpbHNGb3JBY3Rpb25IYW5kbGVycy5nZXRJbnN0YW5jZSgpOworCQl0cnkgeworCQkJLy8gSVBhdGggZm4gPSBzZXJ2aWNlVXRpbHMuZ2V0TW9kZWxTZXQoKS5nZXRGaWxlbmFtZVdpdGhvdXRFeHRlbnNpb24oKTsKKwkJCUVMaXN0PFJlc291cmNlPiByZXNvdXJjZXMgPSBzZXJ2aWNlVXRpbHMuZ2V0TW9kZWxTZXQoKS5nZXRSZXNvdXJjZXMoKTsKKwkJCWlmIChyZXNvdXJjZXMuc2l6ZSgpID49IDMpIHsKKwkJCQkvLyBjaGVjayBmaXJzdCB0aHJlZSByZXNvdXJjZXMgKGRpLCBub3RhdGlvbiwgdW1sKQorCQkJCWZvciAoaW50IGkgPSAwOyBpIDwgMzsgaSsrKSB7CisJCQkJCVJlc291cmNlIHVzZXJSZXNvdXJjZSA9IHJlc291cmNlcy5nZXQoaSk7CisJCQkJCWlmICh1c2VyUmVzb3VyY2UuZ2V0Q29udGVudHMoKS5zaXplKCkgPiAwKSB7CisJCQkJCQlFT2JqZWN0IHRvcEVPYmogPSB1c2VyUmVzb3VyY2UuZ2V0Q29udGVudHMoKS5nZXQoMCk7CisJCQkJCQlpZiAodG9wRU9iaiBpbnN0YW5jZW9mIFBhY2thZ2UpIHsKKwkJCQkJCQlyZXR1cm4gKFBhY2thZ2UpIHRvcEVPYmo7CisJCQkJCQl9CisJCQkJCX0KKwkJCQl9CisJCQl9CisJCX0gY2F0Y2ggKFNlcnZpY2VFeGNlcHRpb24gZSkgeworCQl9CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIEBwYXJhbSBhCisJICogICAgICAgICAgICBwb3RlbnRpYWwgaW1wbGVtZW50YXRpb24KKwkgKiBAcmV0dXJuIHRydWUsIGlmIHBhc3NlZCBjbGFzc2lmaWVyIGlzIGFuIGltcGxlbWVudGF0aW9uIChpLmUuIGRlY2xhcmVkCisJICogICAgICAgICB2aWEgc3RlcmVvdHlwZXMgYXMgY29tcG9uZW50IG9yIGNvbm5lY3RvciBpbXBsZW1lbnRhdGlvbiAoYSBzdWItdHlwZSBvZiBjb21wb25lbnQgaW1wbGVtZW50YXRpb25zLAorCSAqICAgICAgICAgdGhlcmVmb3JlIG5vIGFkZGl0aW9uYWwgY2hlY2sgaXMgcmVxdWlyZWQpCisJICovCisJcHVibGljIHN0YXRpYyBib29sZWFuIGlzQ29tcEltcGwoQ2xhc3NpZmllciBpbXBsZW1lbnRhdGlvbikgeworCQlyZXR1cm4gIWltcGxlbWVudGF0aW9uLmlzQWJzdHJhY3QoKTsKKwl9CisKKwkvKioKKwkgKiBDaGVjayB3aGV0aGVyIHRoZSBwYXNzZWQgY2xhc3MgaXMgYSBjb21wb25lbnQgdHlwZSAoYW5kIG5vdCBhIGNvbXBvbmVudCBpbXBsZW1lbnRhdGlvbikuCisJICogVGhpcyBpbmNsdWRlcyBjb25uZWN0b3IgYW5kIGNvbnRhaW5lciB0eXBlcyBhcyB3ZWxsLgorCSAqCisJICogQHBhcmFtIGNvbXBvbmVudAorCSAqIEByZXR1cm4KKwkgKi8KKwlwdWJsaWMgc3RhdGljIGJvb2xlYW4gaXNDb21wVHlwZShDbGFzcyBjb21wb25lbnQpIHsKKwkJcmV0dXJuIGNvbXBvbmVudC5pc0Fic3RyYWN0KCk7CisJfQorCisJLy8gcHVibGljIHN0YXRpYyBib29sZWFuIGlzU2luZ2xldG9uKENsYXNzIGNvbXBvbmVudCkgeworCS8vIHJldHVybiBTdFV0aWxzLmlzQXBwbGllZChjb21wb25lbnQsIFNpbmdsZXRvbi5jbGFzcyk7CisJLy8gfQorCisJcHVibGljIHN0YXRpYyBib29sZWFuIHRyZWF0Tm9uZUFzQ29tcG9zaXRlKCkgeworCisJCXJldHVybiB0cnVlOworCX0KKworCS8vIHB1YmxpYyBzdGF0aWMgYm9vbGVhbiBhbGxBdHRyaWJ1dGVzQXJlQ29uZmlnQXR0cmlidXRzKCkgeworCS8vIElQcmVmZXJlbmNlU3RvcmUgc3RvcmUgPSBvcmcuZWNsaXBzZS5wYXB5cnVzLnFvbXBhc3MuZGVzaWduZXIuY29yZS5BY3RpdmF0b3IuZ2V0RGVmYXVsdCgpLmdldFByZWZlcmVuY2VTdG9yZSgpOworCS8vIHJldHVybiBzdG9yZS5nZXRCb29sZWFuKFFvbXBhc3NQcmVmZXJlbmNlQ29uc3RhbnRzLlBfQUxMX0FUVFJJQlVURVNfQVJFX0NPTkZJR19BVFRSSUJVVEVTKTsKKwkvLyB9CisKKwkvKioKKwkgKiBUcnVlLCBpZiBlaXRoZXIgYSBjb21wb25lbnQgaW1wbGVtZW50YXRpb24gb3IgYSB0eXBlCisJICoKKwkgKiBAcGFyYW0gY29tcG9uZW50CisJICogQHJldHVybgorCSAqLworCXB1YmxpYyBzdGF0aWMgYm9vbGVhbiBpc0NvbXBvbmVudChDbGFzcyBjb21wb25lbnQpIHsKKwkJcmV0dXJuIChpc0NvbXBUeXBlKGNvbXBvbmVudCkgfHwgaXNDb21wSW1wbChjb21wb25lbnQpKTsKKwl9CisKKwkvLyAvKioKKwkvLyAqIFJldHVybiB0aGUgcnVsZXMgYXNzb2NpYXRlZCB3aXRoIGEgY29tcG9uZW50CisJLy8gKgorCS8vICogQHBhcmFtIGNvbXBvbmVudAorCS8vICogQHJldHVybgorCS8vICovCisJLy8gcHVibGljIHN0YXRpYyBFTGlzdDxDb250YWluZXJSdWxlPiBnZXRSdWxlcyhDbGFzcyBjb21wb25lbnQpIHsKKwkvLyBSdWxlQXBwbGljYXRpb24gcnVsZUFwcGxpY2F0aW9uID0gU3RVdGlscy5nZXRBcHBsaWNhdGlvbihjb21wb25lbnQsIFJ1bGVBcHBsaWNhdGlvbi5jbGFzcyk7CisJLy8gaWYocnVsZUFwcGxpY2F0aW9uICE9IG51bGwpIHsKKwkvLyByZXR1cm4gcnVsZUFwcGxpY2F0aW9uLmdldENvbnRhaW5lclJ1bGUoKTsKKwkvLyB9CisJLy8gcmV0dXJuIG51bGw7CisJLy8gfQorCisJLyoqCisJICogUmV0dXJuIHRoZSBhYnNvbHV0ZSBmaWxlIG5hbWUgdG8gYSBmaWxlIG5hbWUgZ2l2ZW4gZS5nLiBpbiB0aGUgZm9ybSBwbGF0Zm9ybTovcGx1Z2luL3h4eAorCSAqCisJICogQHBhcmFtIGZpbGVOYW1lCisJICogICAgICAgICAgICB0aGUgZmlsZSBuYW1lIHVzaW5nIGVjbGlwc2UgZWxlbWVudHMgc3VjaCBhcyBwbGF0Zm9ybTovcGx1Z2luCisJICogQHJldHVybiB0aGUgYWJzb2x1dGUgZmlsZSBuYW1lCisJICovCisJcHVibGljIHN0YXRpYyBTdHJpbmcgZ2V0QWJzb2x1dGVGTihTdHJpbmcgZmlsZU5hbWUpIHsKKwkJdHJ5IHsKKwkJCVVSTCBhYnNvbHV0ZVVSTCA9IEZpbGVMb2NhdG9yLnRvRmlsZVVSTChuZXcgVVJMKGZpbGVOYW1lKSk7CisJCQlyZXR1cm4gYWJzb2x1dGVVUkwuZ2V0RmlsZSgpOworCQl9IGNhdGNoIChNYWxmb3JtZWRVUkxFeGNlcHRpb24gZSkgeworCQl9IGNhdGNoIChJT0V4Y2VwdGlvbiBlKSB7CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJLy8gLy8gVE9ETzogbmVlZCBhIGdlbmVyaWMgdXRpbGl0eSBmdW5jdGlvbiBmb3IgZ2V0dGluZyBhbGwgZWxlbWVudHMgb2JleWluZyBhIGNlcnRhaW4KKwkvLyAvLyBjcml0ZXJpYSBmcm9tIGEgbW9kZWwKKwkvLyBwdWJsaWMgc3RhdGljIEVMaXN0PENvbnRhaW5lclJ1bGU+IGdldEFsbFJ1bGVzKFBhY2thZ2UgcGtnKSB7CisJLy8gRUxpc3Q8UGFja2FnZT4gdmlzaXRlZFBhY2thZ2VzID0gbmV3IEJhc2ljRUxpc3Q8UGFja2FnZT4oKTsKKwkvLyBFTGlzdDxDb250YWluZXJSdWxlPiBjb250UnVsZUxpc3QgPSBuZXcgQmFzaWNFTGlzdDxDb250YWluZXJSdWxlPigpOworCS8vIGdldEFsbFJ1bGVzKHBrZywgdmlzaXRlZFBhY2thZ2VzLCBjb250UnVsZUxpc3QpOworCS8vIHJldHVybiBjb250UnVsZUxpc3Q7CisJLy8gfQorCisJLy8gcHVibGljIHN0YXRpYyB2b2lkIGdldEFsbFJ1bGVzKFBhY2thZ2UgcGtnLCBFTGlzdDxQYWNrYWdlPiB2aXNpdGVkUGFja2FnZXMsIEVMaXN0PENvbnRhaW5lclJ1bGU+IGNvbnRSdWxlTGlzdCkgeworCS8vIGZvcihFbGVtZW50IGVsIDogcGtnLmdldE1lbWJlcnMoKSkgeworCS8vIGlmKGVsIGluc3RhbmNlb2YgUGFja2FnZSkgeworCS8vIGlmKCF2aXNpdGVkUGFja2FnZXMuY29udGFpbnMoZWwpKSB7CisJLy8gdmlzaXRlZFBhY2thZ2VzLmFkZCgoUGFja2FnZSllbCk7CisJLy8gZ2V0QWxsUnVsZXMoKFBhY2thZ2UpZWwsIHZpc2l0ZWRQYWNrYWdlcywgY29udFJ1bGVMaXN0KTsKKwkvLyB9CisJLy8gfQorCS8vIGVsc2UgaWYoZWwgaW5zdGFuY2VvZiBDbGFzcykgeworCS8vIGlmKFN0VXRpbHMuaXNBcHBsaWVkKGVsLCBDb250YWluZXJSdWxlLmNsYXNzKSkgeworCS8vIENvbnRhaW5lclJ1bGUgcnVsZSA9IFN0VXRpbHMuZ2V0QXBwbGljYXRpb24oKENsYXNzKWVsLCBDb250YWluZXJSdWxlLmNsYXNzKTsKKwkvLyBjb250UnVsZUxpc3QuYWRkKHJ1bGUpOworCS8vIH0KKwkvLyB9CisJLy8gfQorCS8vIH0KK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9kaWFsb2cvQWxsb2NhdGlvbkRpYWxvZy5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L2RpYWxvZy9BbGxvY2F0aW9uRGlhbG9nLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmVkYTIyOQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9kaWFsb2cvQWxsb2NhdGlvbkRpYWxvZy5qYXZhCkBAIC0wLDAgKzEsMzA2IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBDRUEgTElTVC4KKyAqCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBTYWFkaWEgRGhvdWliIChDRUEgTElTVCkgc2FhZGlhLmRob3VpYkBjZWEuZnIgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQuZGlhbG9nOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZHJhdzJkLkxhYmVsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5CYXNpY0VMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGVwbG95bWVudFBsYW47CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQuQWxsb2NVdGlsczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC5EZXBVdGlsczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC5EaWFsb2dVdGlsczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC5TdFV0aWxzOworaW1wb3J0IG9yZy5lY2xpcHNlLnN3dC5TV1Q7CitpbXBvcnQgb3JnLmVjbGlwc2Uuc3d0LmV2ZW50cy5TZWxlY3Rpb25BZGFwdGVyOworaW1wb3J0IG9yZy5lY2xpcHNlLnN3dC5ldmVudHMuU2VsZWN0aW9uRXZlbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2Uuc3d0LmxheW91dC5HcmlkRGF0YTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5zd3Qud2lkZ2V0cy5Db21ibzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5zd3Qud2lkZ2V0cy5Db21wb3NpdGU7CitpbXBvcnQgb3JnLmVjbGlwc2Uuc3d0LndpZGdldHMuQ29udHJvbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5zd3Qud2lkZ2V0cy5TaGVsbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5zd3Qud2lkZ2V0cy5UcmVlOworaW1wb3J0IG9yZy5lY2xpcHNlLnN3dC53aWRnZXRzLlRyZWVDb2x1bW47CitpbXBvcnQgb3JnLmVjbGlwc2Uuc3d0LndpZGdldHMuVHJlZUl0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UudWkuZGlhbG9ncy5TZWxlY3Rpb25TdGF0dXNEaWFsb2c7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3NpZmllcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkluc3RhbmNlU3BlY2lmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlOworCisvKioKKyAqIFNlbGVjdCBhIGNvbm5lY3RvciB0eXBlIGFuZCBpbXBsZW1lbnRhdGlvbiAoZ3JvdXApCisgKiBUT0RPOiBzaG93IGluZm9ybWF0aW9uIGFib3V0IHRoZSB1c2VkIGNvbm5lY3RvciBbdXNhZ2UsIGltcGxlbSBwcm9wZXJ0aWVzLCAuLi5dCisgKiBzaW1pbGFyIGhlbHAgZm9yIHBvcnRzPworICoKKyAqIEBhdXRob3IgYW5zZ2FyCisgKgorICovCisKKy8qCisgKiBMaXN0U2VsZWN0aW9uRGlhbG9nIGxzZCA9IG5ldyBMaXN0U2VsZWN0aW9uRGlhbG9nKHdpbmRvdy5nZXRTaGVsbCgpLCBsaXN0LCBuZXcgQXJyYXlDb250ZW50UHJvdmlkZXIoKSwgbmV3IExhYmVsUHJvdmlkZXIoKSwKKyAqICJMaXN0U2VsZWN0aW9uRGlhbG9nIE1lc3NhZ2UiKTsKKyAqIGxzZC5zZXRJbml0aWFsU2VsZWN0aW9ucyhsaXN0LnRvQXJyYXkoKSk7CisgKiBsc2Quc2V0VGl0bGUoIlNlbGVjdCAjIG9mIE5vYmVsIFByaXplIE5vbWluYXRpb25zIDoiKTsKKyAqIGxzZC5vcGVuKCk7CisgKi8KK3B1YmxpYyBjbGFzcyBBbGxvY2F0aW9uRGlhbG9nIGV4dGVuZHMgU2VsZWN0aW9uU3RhdHVzRGlhbG9nIHsKKworCXByaXZhdGUgRGVwbG95bWVudFBsYW4gbV9jZHA7CisKKwkvLyBwcm90ZWN0ZWQgRUxpc3Q8UGFja2FnZT4gdmlzaXRlZFBhY2thZ2VzOworCS8vIHByb3RlY3RlZCBGaWx0ZXJlZExpc3QgZlJ1bGVzOworCXByaXZhdGUgVHJlZSBmVHJlZTsKKworCXByaXZhdGUgTGFiZWwgZkxhYmVsOworCisJcHJpdmF0ZSBDb21ibyBmQWxsb2M7CisKKwlwcml2YXRlIEluc3RhbmNlU3BlY2lmaWNhdGlvbiBjdXJyZW50SVM7CisKKwlwcml2YXRlIEVMaXN0PEluc3RhbmNlU3BlY2lmaWNhdGlvbj4gbm9kZU9yVGhyZWFkTGlzdDsKKworCXB1YmxpYyBBbGxvY2F0aW9uRGlhbG9nKFNoZWxsIHBhcmVudCwgUGFja2FnZSBjZHApIHsKKwkJc3VwZXIocGFyZW50KTsKKwkJLy8gbV9jZHAgPSBjZHA7CisJCW1fY2RwID0gU3RVdGlscy5nZXRBcHBsaWNhdGlvbihjZHAsIERlcGxveW1lbnRQbGFuLmNsYXNzKTsKKwkJdmlzaXRlZFBhY2thZ2VzID0gbmV3IEJhc2ljRUxpc3Q8UGFja2FnZT4oKTsKKwkJbm9kZU9yVGhyZWFkTGlzdCA9IG5ldyBCYXNpY0VMaXN0PEluc3RhbmNlU3BlY2lmaWNhdGlvbj4oKTsKKwkJbm9kZU9yVGhyZWFkTGlzdC5hZGQobnVsbCk7IC8vIGR1bW15IGVudHJ5IGZvciBubyBhbGxvY2F0aW9uCisJCWdldEFsbE5vZGVzT3JUaHJlYWRzKGNkcC5nZXRNb2RlbCgpLCBub2RlT3JUaHJlYWRMaXN0KTsKKwl9CisKKwkvKioKKwkgKiBAc2VlIFNlbGVjdGlvblN0YXR1c0RpYWxvZyNjb21wdXRlUmVzdWx0KCkKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgdm9pZCBjb21wdXRlUmVzdWx0KCkgeworCQkvLyBub3RoaW5nIHRvIGRvCisJfQorCisJQE92ZXJyaWRlCisJcHVibGljIENvbnRyb2wgY3JlYXRlRGlhbG9nQXJlYShDb21wb3NpdGUgcGFyZW50KSB7CisJCUNvbXBvc2l0ZSBjb250ZW50cyA9IChDb21wb3NpdGUpIHN1cGVyLmNyZWF0ZURpYWxvZ0FyZWEocGFyZW50KTsKKwkJLy8gKHBhcmVudCwgIkNvbnRhaW5lciBydWxlcyIsICJBdmFpbC4gZXh0ZW5zaW9ucy9pbnRlcmNlcHRvcnMiKTsKKworCQlmVHJlZSA9IG5ldyBUcmVlKGNvbnRlbnRzLCBTV1QuSF9TQ1JPTEwgfCBTV1QuQk9SREVSKTsKKwkJZlRyZWUuc2V0SGVhZGVyVmlzaWJsZSh0cnVlKTsKKwkJR3JpZERhdGEgZGF0YSA9IG5ldyBHcmlkRGF0YShHcmlkRGF0YS5GSUxMX0JPVEgpOworCQlmVHJlZS5zZXRMYXlvdXREYXRhKGRhdGEpOworCQlkYXRhLmhlaWdodEhpbnQgPSAxNTA7CisJCS8vIGRhdGEud2lkdGhIaW50ID0gMjAwOworCisJCS8vIFR1cm4gb2ZmIGRyYXdpbmcgdG8gYXZvaWQgZmxpY2tlcgorCQlmVHJlZS5zZXRSZWRyYXcoZmFsc2UpOworCisJCVRyZWVDb2x1bW4gaW5zdGFuY2VzID0gbmV3IFRyZWVDb2x1bW4oZlRyZWUsIFNXVC5MRUZUKTsKKwkJaW5zdGFuY2VzLnNldFRleHQoIkluc3RhbmNlIik7CisJCWluc3RhbmNlcy5zZXRXaWR0aCgyMDApOworCQlUcmVlQ29sdW1uIGV4cGxpY2l0QWxsb2MgPSBuZXcgVHJlZUNvbHVtbihmVHJlZSwgU1dULkxFRlQpOworCQlleHBsaWNpdEFsbG9jLnNldFRleHQoImV4cGxpY2l0IGFsbG9jYXRpb24iKTsKKwkJZXhwbGljaXRBbGxvYy5zZXRXaWR0aCgxNTApOworCQlUcmVlQ29sdW1uIGltcGxpY2l0QWxsb2MgPSBuZXcgVHJlZUNvbHVtbihmVHJlZSwgU1dULkxFRlQpOworCQlpbXBsaWNpdEFsbG9jLnNldFRleHQoImltcGxpY2l0IGFsbG9jYXRpb24iKTsKKwkJaW1wbGljaXRBbGxvYy5zZXRXaWR0aCgxNTApOworCisJCWZpbGxUcmVlKGZUcmVlLCBudWxsLCBtX2NkcC5nZXRNYWluSW5zdGFuY2UoKSk7CisKKwkJLy8gVHVybiBkcmF3aW5nIGJhY2sgb24hCisJCWZUcmVlLnNldFJlZHJhdyh0cnVlKTsKKworCQlmVHJlZS5hZGRTZWxlY3Rpb25MaXN0ZW5lcihuZXcgU2VsZWN0aW9uQWRhcHRlcigpIHsKKworCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgdm9pZCB3aWRnZXRTZWxlY3RlZChTZWxlY3Rpb25FdmVudCBlKSB7CisJCQkJaWYgKGZUcmVlLmdldFNlbGVjdGlvbigpLmxlbmd0aCA+IDApIHsKKwkJCQkJc2VsZWN0SW5zdGFuY2UoZlRyZWUuZ2V0U2VsZWN0aW9uKClbMF0pOworCQkJCX0KKwkJCX0KKwkJfSk7CisKKwkJTGFiZWwgbGFiZWwgPSBuZXcgTGFiZWwoKTsKKwkJbGFiZWwuc2V0VGV4dCgic2VsZXRlY3RlZCBpbnN0YW5jZToiKTsKKwkJZkxhYmVsID0gbmV3IExhYmVsKCk7CisKKwkJY3JlYXRlQWxsb2NJbmZvKGNvbnRlbnRzKTsKKwkJcmV0dXJuIGNvbnRlbnRzOworCX0KKworCS8qKgorCSAqIEhlbHBlciBtZXRob2QgdG8gZmlsbCBhIHRyZWUgd2l0aCBkYXRhCisJICoKKwkgKiBAcGFyYW0gdHJlZQorCSAqICAgICAgICAgICAgdGhlIHRyZWUgdG8gZmlsbAorCSAqLworCXByaXZhdGUgdm9pZCBmaWxsVHJlZShUcmVlIHRyZWUsIFRyZWVJdGVtIHRyZWVJdGVtLCBJbnN0YW5jZVNwZWNpZmljYXRpb24gaXMpIHsKKwkJVHJlZUl0ZW0gaXRlbTsKKwkJaWYgKHRyZWVJdGVtICE9IG51bGwpIHsKKwkJCWl0ZW0gPSBuZXcgVHJlZUl0ZW0odHJlZUl0ZW0sIFNXVC5OT05FKTsKKwkJfSBlbHNlIHsKKwkJCWl0ZW0gPSBuZXcgVHJlZUl0ZW0odHJlZSwgU1dULk5PTkUpOworCQl9CisJCWl0ZW0uc2V0RGF0YShpcyk7CisJCXNldFRleHRGcm9tRGF0YShpdGVtKTsKKworCQkvLyBjcmVhdGUgY2hpbGRyZW4KKwkJZm9yIChJbnN0YW5jZVNwZWNpZmljYXRpb24gc3ViSVMgOiBEZXBVdGlscy5nZXRDb250YWluZWRJbnN0YW5jZXMoaXMpKSB7CisJCQlmaWxsVHJlZSh0cmVlLCBpdGVtLCBzdWJJUyk7CisJCX0KKwl9CisKKwkvLyBvYnRhaW4gbmFtZSBhbmQgZXhwbGljaXQvaW1wbGljaXQgbm9kZSBBbGxvY2F0aW9uCisJcHJvdGVjdGVkIHZvaWQgc2V0VGV4dEZyb21EYXRhKFRyZWVJdGVtIHRpKSB7CisJCU9iamVjdCBkYXRhID0gdGkuZ2V0RGF0YSgpOworCQlpZiAoZGF0YSBpbnN0YW5jZW9mIEluc3RhbmNlU3BlY2lmaWNhdGlvbikgeworCQkJSW5zdGFuY2VTcGVjaWZpY2F0aW9uIGlzID0gKEluc3RhbmNlU3BlY2lmaWNhdGlvbikgZGF0YTsKKworCQkJU3RyaW5nIG5hbWUgPSBpcy5nZXROYW1lKCk7CisJCQlpbnQgaW5kZXggPSBuYW1lLmxhc3RJbmRleE9mKCIuIik7CisJCQlpZiAoaW5kZXggIT0gLTEpIHsKKwkJCQluYW1lID0gbmFtZS5zdWJzdHJpbmcoaW5kZXggKyAxKTsKKwkJCX0KKwkJCUluc3RhbmNlU3BlY2lmaWNhdGlvbiBleHBsaWNpdE5vZGVPclRocmVhZCA9IEFsbG9jVXRpbHMuZ2V0Tm9kZU9yVGhyZWFkKGlzKTsKKwkJCUNsYXNzaWZpZXIgY2wgPSBEZXBVdGlscy5nZXRDbGFzc2lmaWVyKGlzKTsKKwkJCVN0cmluZyBub2RlTmFtZTsKKwkJCWlmIChleHBsaWNpdE5vZGVPclRocmVhZCA9PSBudWxsKSB7CisJCQkJbm9kZU5hbWUgPSAiLSI7CisJCQl9IGVsc2UgeworCQkJCW5vZGVOYW1lID0gZ2V0QWxsb2NOYW1lKGV4cGxpY2l0Tm9kZU9yVGhyZWFkKTsKKwkJCX0KKworCQkJRUxpc3Q8SW5zdGFuY2VTcGVjaWZpY2F0aW9uPiBpbXBsaWNpdE5vZGVzID0gQWxsb2NVdGlscy5nZXRBbGxOb2Rlc09yVGhyZWFkc1BhcmVudChpcyk7CisJCQlpbXBsaWNpdE5vZGVzLmFkZEFsbChBbGxvY1V0aWxzLmdldEFsbE5vZGVzT3JUaHJlYWRzUGFyZW50KGlzKSk7CisJCQlTdHJpbmcgbGlzdCA9ICIiOworCQkJZm9yIChJbnN0YW5jZVNwZWNpZmljYXRpb24gbm9kZSA6IGltcGxpY2l0Tm9kZXMpIHsKKwkJCQlpZiAobGlzdC5lcXVhbHMoIiIpKSB7CisJCQkJCWxpc3QgPSBnZXRBbGxvY05hbWUobm9kZSk7CisJCQkJfSBlbHNlIHsKKwkJCQkJbGlzdCArPSAiLCAiICsgZ2V0QWxsb2NOYW1lKG5vZGUpOworCQkJCX0KKwkJCX0KKwkJCXRpLnNldFRleHQobmV3IFN0cmluZ1tdIHsgbmFtZSwgbm9kZU5hbWUsICJbIiArIGxpc3QgKyAiXSIgfSk7CisJCX0KKwl9CisKKwlwcm90ZWN0ZWQgdm9pZCByZWZyZXNoVHJlZShUcmVlSXRlbSB0aSkgeworCQlzZXRUZXh0RnJvbURhdGEodGkpOworCQlmb3IgKFRyZWVJdGVtIHN1Ykl0ZW0gOiB0aS5nZXRJdGVtcygpKSB7CisJCQlyZWZyZXNoVHJlZShzdWJJdGVtKTsKKwkJfQorCX0KKworCXByaXZhdGUgU3RyaW5nIGdldEFsbG9jTmFtZShJbnN0YW5jZVNwZWNpZmljYXRpb24gbm9kZU9yVGhyZWFkKSB7CisJCWlmIChub2RlT3JUaHJlYWQgPT0gbnVsbCkgeworCQkJcmV0dXJuICJubyBleHBsaWNpdCBhbGxvY2F0aW9uIjsKKwkJfSBlbHNlIHsKKwkJCVN0cmluZyBuYW1lID0gbm9kZU9yVGhyZWFkLmdldE5hbWUoKTsKKwkJCUluc3RhbmNlU3BlY2lmaWNhdGlvbiB0aHJlYWROb2RlID0gQWxsb2NVdGlscy5nZXROb2RlKG5vZGVPclRocmVhZCk7CisJCQlyZXR1cm4gbmFtZSArICh0aHJlYWROb2RlICE9IG51bGwgPyAiIG9uICIgKyB0aHJlYWROb2RlLmdldE5hbWUoKSA6ICIiKTsKKwkJfQorCX0KKworCXByb3RlY3RlZCB2b2lkIGNyZWF0ZUFsbG9jSW5mbyhDb21wb3NpdGUgcGFyZW50KSB7CisJCS8vIGNyZWF0ZSBleHRlbnNpb24ga2luZCBjb21ibworCQlmQWxsb2MgPSBEaWFsb2dVdGlscy5jcmVhdGVDb21ib1dpdGhUZXh0KHBhcmVudCwgIkFsbG9jIHRvIG5vZGU6IiwKKwkJCQlTV1QuRFJPUF9ET1dOIHwgU1dULlJFQURfT05MWSwgU1dULk5PTkUpOworCisJCVN0cmluZyBpdGVtc1tdID0gbmV3IFN0cmluZ1tub2RlT3JUaHJlYWRMaXN0LnNpemUoKV07CisJCWludCBpID0gMDsKKwkJZm9yIChJbnN0YW5jZVNwZWNpZmljYXRpb24gbm9kZU9yVGhyZWFkIDogbm9kZU9yVGhyZWFkTGlzdCkgeworCQkJaXRlbXNbaSsrXSA9IGdldEFsbG9jTmFtZShub2RlT3JUaHJlYWQpOworCQl9CisJCWZBbGxvYy5zZXRJdGVtcyhpdGVtcyk7CisJCWZBbGxvYy5hZGRTZWxlY3Rpb25MaXN0ZW5lcihuZXcgU2VsZWN0aW9uQWRhcHRlcigpIHsKKworCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgdm9pZCB3aWRnZXRTZWxlY3RlZChTZWxlY3Rpb25FdmVudCBldmVudCkgeworCQkJCWlmIChjdXJyZW50SVMgIT0gbnVsbCkgeworCQkJCQl1cGRhdGVBbGxvY2F0aW9uKGN1cnJlbnRJUywgZkFsbG9jLmdldFNlbGVjdGlvbkluZGV4KCkpOworCQkJCQkvLyBzZWxlY3Rpb25Db3VudCBzaG91bGQgYWx3YXlzIGJlIDEKKwkJCQkJZm9yIChUcmVlSXRlbSB0aSA6IGZUcmVlLmdldFNlbGVjdGlvbigpKSB7CisJCQkJCQlyZWZyZXNoVHJlZSh0aSk7CisJCQkJCX0KKwkJCQl9CisJCQl9CisJCX0pOworCisJCWZBbGxvYy5zZXRFbmFibGVkKGZhbHNlKTsKKwl9CisKKwkvKioKKwkgKiBTZWxlY3QgYSBydWxlLCBpLmUuIHVwZGF0ZSB0aGUgdmlzdWFsIHJlcHJlc2VudGF0aW9uIGZyb20gdGhlIHJ1bGUKKwkgKgorCSAqIEBwYXJhbSBydWxlCisJICovCisJcHJvdGVjdGVkIHZvaWQgc2VsZWN0SW5zdGFuY2UoVHJlZUl0ZW0gaXRlbSkgeworCQkvLyBmb3IgKFBvcnQgcG9ydCA6IHJ1bGUuZ2V0UG9ydFNldCAoKSkgeworCQkvLyBmUG9ydHMuc2V0U2VsZWN0aW9uKCkKKwkJLy8gfQorCQljdXJyZW50SVMgPSAoSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSBpdGVtLmdldERhdGEoKTsKKwkJZkxhYmVsLnNldFRleHQoY3VycmVudElTLmdldE5hbWUoKSk7CisKKwkJZkFsbG9jLnNldEVuYWJsZWQodHJ1ZSk7CisJCUluc3RhbmNlU3BlY2lmaWNhdGlvbiBub2RlT3JUaHJlYWQgPSBBbGxvY1V0aWxzLmdldE5vZGVPclRocmVhZChjdXJyZW50SVMpOworCisJCWZvciAoaW50IGkgPSAwOyBpIDwgbm9kZU9yVGhyZWFkTGlzdC5zaXplKCk7IGkrKykgeworCQkJaWYgKG5vZGVPclRocmVhZExpc3QuZ2V0KGkpID09IG5vZGVPclRocmVhZCkgeworCQkJCWZBbGxvYy5zZWxlY3QoaSk7CisJCQl9CisJCX0KKwl9CisKKwlwcml2YXRlIHZvaWQgdXBkYXRlQWxsb2NhdGlvbihJbnN0YW5jZVNwZWNpZmljYXRpb24gaXMsIGludCBpbmRleCkgeworCQlJbnN0YW5jZVNwZWNpZmljYXRpb24gb2xkTm9kZSA9IEFsbG9jVXRpbHMuZ2V0Tm9kZU9yVGhyZWFkKGlzKTsKKwkJSW5zdGFuY2VTcGVjaWZpY2F0aW9uIG5ld05vZGUgPSBub2RlT3JUaHJlYWRMaXN0LmdldChpbmRleCk7CisKKwkJaWYgKG9sZE5vZGUgPT0gbmV3Tm9kZSkgeworCQkJcmV0dXJuOworCQl9CisKKwkJLy8gYWRkIG9yIHVwZGF0ZQorCQlpZiAob2xkTm9kZSA9PSBudWxsKSB7CisKKwkJCUFsbG9jVXRpbHMuYWxsb2NhdGUoaXMsIG5ld05vZGUpOworCisKKwkJfSBlbHNlIHsKKwkJCUFsbG9jVXRpbHMudXBkYXRlQWxsb2NhdGlvbihpcywgb2xkTm9kZSwgbmV3Tm9kZSk7CisJCX0KKwl9CisKKwl2b2lkIGdldEFsbE5vZGVzT3JUaHJlYWRzKFBhY2thZ2UgcGtnLCBFTGlzdDxJbnN0YW5jZVNwZWNpZmljYXRpb24+IG5vZGVMaXN0KSB7CisJCWZvciAoRWxlbWVudCBlbCA6IHBrZy5nZXRNZW1iZXJzKCkpIHsKKwkJCWlmIChlbCBpbnN0YW5jZW9mIFBhY2thZ2UpIHsKKwkJCQlpZiAoIXZpc2l0ZWRQYWNrYWdlcy5jb250YWlucyhlbCkpIHsKKwkJCQkJdmlzaXRlZFBhY2thZ2VzLmFkZCgoUGFja2FnZSkgZWwpOworCQkJCQlnZXRBbGxOb2Rlc09yVGhyZWFkcygoUGFja2FnZSkgZWwsIG5vZGVMaXN0KTsKKwkJCQl9CisJCQl9CisJCQllbHNlIGlmIChlbCBpbnN0YW5jZW9mIEluc3RhbmNlU3BlY2lmaWNhdGlvbikgeworCQkJCUNsYXNzaWZpZXIgY2wgPSBEZXBVdGlscy5nZXRDbGFzc2lmaWVyKChJbnN0YW5jZVNwZWNpZmljYXRpb24pIGVsKTsKKwkJCQlpZiAoY2wgIT0gbnVsbCkgeworCQkJCQlpZiAoKGNsIGluc3RhbmNlb2YgQ2xhc3MpKSB7CisJCQkJCQkvLyBjaGVjayB0aGF0IGluc3RhbmNlcyBhcmUgbm90IHBhcnQgb2YgYSBkZXBsb3ltZW50IHBsYW4KKwkJCQkJCS8vIFtUT0RPOl0gY2hlY2sgdGhhdCBvd25lciBvZiBpbnN0YW5jZSBpcyBhIHBsYXRmb3JtIGRlZmluaXRpb24KKwkJCQkJCWlmICghU3RVdGlscy5pc0FwcGxpZWQoZWwuZ2V0T3duZXIoKSwgRGVwbG95bWVudFBsYW4uY2xhc3MpKSB7CisJCQkJCQkJbm9kZUxpc3QuYWRkKChJbnN0YW5jZVNwZWNpZmljYXRpb24pIGVsKTsKKwkJCQkJCX0KKwkJCQkJfQorCQkJCX0KKwkJCX0KKwkJfQorCX0KKworCisKKwlwcml2YXRlIEVMaXN0PFBhY2thZ2U+IHZpc2l0ZWRQYWNrYWdlczsKK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9kaWFsb2cvQXR0cmlidXRlTGFiZWxQcm92aWRlci5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L2RpYWxvZy9BdHRyaWJ1dGVMYWJlbFByb3ZpZGVyLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjk5YTUxMgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9kaWFsb2cvQXR0cmlidXRlTGFiZWxQcm92aWRlci5qYXZhCkBAIC0wLDAgKzEsMzMgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIENFQSBMSVNULgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBEaG91aWIgKENFQSBMSVNUKSBzYWFkaWEuZGhvdWliQGNlYS5mciAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC5kaWFsb2c7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZmFjZS52aWV3ZXJzLkxhYmVsUHJvdmlkZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuVHlwZTsKKworcHVibGljIGNsYXNzIEF0dHJpYnV0ZUxhYmVsUHJvdmlkZXIgZXh0ZW5kcyBMYWJlbFByb3ZpZGVyIHsKKworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgZ2V0VGV4dChPYmplY3QgZWxlbWVudCkgeworCQlpZiAoZWxlbWVudCBpbnN0YW5jZW9mIFByb3BlcnR5KSB7CisJCQlQcm9wZXJ0eSBwID0gKFByb3BlcnR5KSBlbGVtZW50OworCQkJVHlwZSB0eXBlID0gcC5nZXRUeXBlKCk7CisJCQlyZXR1cm4gcC5nZXRDbGFzc18oKS5nZXROYW1lKCkgKyAiLiIgKyBwLmdldE5hbWUoKSArICgodHlwZSAhPSBudWxsKSA/CisJCQkJCSIgOiAiICsgdHlwZS5nZXRRdWFsaWZpZWROYW1lKCkgOgorCQkJCQkiIik7CisJCX0KKwkJZWxzZSB7CisJCQlyZXR1cm4gImludmFsaWQiOworCQl9CisJfQorfTsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9kaWFsb2cvQ29uZmlndXJlSW5zdGFuY2VEaWFsb2cuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9kaWFsb2cvQ29uZmlndXJlSW5zdGFuY2VEaWFsb2cuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mNTVjNjlmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L2RpYWxvZy9Db25maWd1cmVJbnN0YW5jZURpYWxvZy5qYXZhCkBAIC0wLDAgKzEsNTIwIEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBDRUEgTElTVC4KKyAqCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBTYWFkaWEgRGhvdWliIChDRUEgTElTVCkgc2FhZGlhLmRob3VpYkBjZWEuZnIgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQuZGlhbG9nOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkJhc2ljRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmpmYWNlLmRpYWxvZ3MuTWVzc2FnZURpYWxvZzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZmFjZS52aWV3ZXJzLkFycmF5Q29udGVudFByb3ZpZGVyOworaW1wb3J0IG9yZy5lY2xpcHNlLmpmYWNlLnZpZXdlcnMuSVNlbGVjdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZmFjZS52aWV3ZXJzLklTZWxlY3Rpb25DaGFuZ2VkTGlzdGVuZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UuamZhY2Uudmlld2Vycy5JVHJlZUNvbnRlbnRQcm92aWRlcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZmFjZS52aWV3ZXJzLlNlbGVjdGlvbkNoYW5nZWRFdmVudDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZmFjZS52aWV3ZXJzLlN0cnVjdHVyZWRTZWxlY3Rpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuamZhY2Uudmlld2Vycy5UYWJsZVZpZXdlcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZmFjZS52aWV3ZXJzLlRyZWVWaWV3ZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UuamZhY2Uudmlld2Vycy5WaWV3ZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQuRGVwQ3JlYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQuRGVwUGxhblN5bmM7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQuRGVwUGxhblV0aWxzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50LkRlcFV0aWxzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50LkRpYWxvZ1V0aWxzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50LlV0aWxzOworaW1wb3J0IG9yZy5lY2xpcHNlLnN3dC5TV1Q7CitpbXBvcnQgb3JnLmVjbGlwc2Uuc3d0LmV2ZW50cy5Gb2N1c0V2ZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnN3dC5ldmVudHMuRm9jdXNMaXN0ZW5lcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5zd3QubGF5b3V0LkdyaWREYXRhOworaW1wb3J0IG9yZy5lY2xpcHNlLnN3dC5sYXlvdXQuR3JpZExheW91dDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5zd3QubGF5b3V0LlJvd0xheW91dDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5zd3Qud2lkZ2V0cy5Db21wb3NpdGU7CitpbXBvcnQgb3JnLmVjbGlwc2Uuc3d0LndpZGdldHMuQ29udHJvbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5zd3Qud2lkZ2V0cy5Hcm91cDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5zd3Qud2lkZ2V0cy5MYWJlbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5zd3Qud2lkZ2V0cy5TaGVsbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5zd3Qud2lkZ2V0cy5UZXh0OworaW1wb3J0IG9yZy5lY2xpcHNlLnN3dC53aWRnZXRzLlRyZWVJdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnVpLmRpYWxvZ3MuU2VsZWN0aW9uU3RhdHVzRGlhbG9nOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzaWZpZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuRmVhdHVyZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5JbnN0YW5jZVNwZWNpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuTGl0ZXJhbEJvb2xlYW47CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuTGl0ZXJhbEludGVnZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuTGl0ZXJhbFN0cmluZzsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhY2thZ2VhYmxlRWxlbWVudDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5Qcm9wZXJ0eTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5TbG90OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlR5cGU7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuVmFsdWVTcGVjaWZpY2F0aW9uOworCisvKioKKyAqIFNlbGVjdCBjb250YWluZXIgcnVsZXMsIGVpdGhlciBmcm9tIGEgbGlzdCBvZiBnbG9iYWxseSBkZWZpbmVkIHJ1bGVzIG9yIGZyb20KKyAqIGxvY2FsIHJ1bGVzIHdoaWNoIG1heSBiZSBjcmVhdGVkICJvbiB0aGUgZmx5IiBieSB0aGlzIGRpYWxvZy4KKyAqCisgKiBUT0RPOiBleHRlbmQgcnVsZSBhcHBsaWNhdGlvbiB0byBpbnN0YW5jZXMgKHByb2JsZW1hdGljLCBzaW5jZSBydWxlcworICogdHJhbnNmb3JtYXRpb24gaXMgZG9uZSBvbiB0eXBlIGxldmVsKQorICoKKyAqIEBhdXRob3IgYW5zZ2FyCisgKi8KK3B1YmxpYyBjbGFzcyBDb25maWd1cmVJbnN0YW5jZURpYWxvZyBleHRlbmRzIFNlbGVjdGlvblN0YXR1c0RpYWxvZyB7CisKKwlwcm90ZWN0ZWQgQ2xhc3MgbV9jb21wb25lbnQ7CisKKwlwcm90ZWN0ZWQgTGFiZWwgZkRlc2NyaXB0aW9uTGFiZWw7CisKKwlwcm90ZWN0ZWQgVGV4dCBmRGVzY3JpcHRpb247CisKKwlwcm90ZWN0ZWQgVHJlZVZpZXdlciBmSW5zdGFuY2VMaXN0OworCisJcHJvdGVjdGVkIFRhYmxlVmlld2VyIGZQcm9wZXJ0eUxpc3Q7CisKKwlwcm90ZWN0ZWQgUHJvcGVydHkgbV9jdXJyZW50QXR0cmlidXRlOworCisJcHJvdGVjdGVkIGZpbmFsIFN0cmluZyB2YWx1ZUxhYmVsUHJlZml4ID0gIlZhbHVlOiI7CisKKwlwcm90ZWN0ZWQgTGFiZWwgZlZhbHVlTGFiZWw7CisKKwlwcm90ZWN0ZWQgVGV4dCBmVmFsdWU7CisKKwlwcm90ZWN0ZWQgUGFja2FnZSBtX21vZGVsOworCisJcHJvdGVjdGVkIEZlYXR1cmUgbV9mZWF0dXJlOworCisJcHJvdGVjdGVkIEVMaXN0PFBhY2thZ2U+IHZpc2l0ZWRQYWNrYWdlczsKKworCXByb3RlY3RlZCBib29sZWFuIG1fcnVsZVByb3BlcnRpZXNPbmx5OworCisJcHJvdGVjdGVkIEluc3RhbmNlU3BlY2lmaWNhdGlvbiBtX2luc3RhbmNlOworCisJRUxpc3Q8SW5zdGFuY2VTcGVjaWZpY2F0aW9uPiBtX2luc3RhbmNlTGlzdDsKKworCXB1YmxpYyBDb25maWd1cmVJbnN0YW5jZURpYWxvZyhTaGVsbCBwYXJlbnQpIHsKKwkJc3VwZXIocGFyZW50KTsKKwl9CisKKwlwdWJsaWMgYm9vbGVhbiBpbml0KENsYXNzIGNvbXBvbmVudCkgeworCQkvLyB2aXNpdGVkUGFja2FnZXMgPSBuZXcgQmFzaWNFTGlzdDxQYWNrYWdlPiAoKTsKKwkJRGVwUGxhblN5bmMuc3luY0FsbERlcFBsYW5zKGNvbXBvbmVudCk7CisJCW1fY29tcG9uZW50ID0gY29tcG9uZW50OworCQltX2luc3RhbmNlID0gbnVsbDsKKwkJbV9mZWF0dXJlID0gbnVsbDsKKwkJbV9tb2RlbCA9IFV0aWxzLmdldFVzZXJNb2RlbCgpOworCQlyZXR1cm4gY2hlY2tBbmRHZXRJbnN0YW5jZXMoKTsKKwl9CisKKwlwdWJsaWMgYm9vbGVhbiBpbml0KEluc3RhbmNlU3BlY2lmaWNhdGlvbiBpbnN0YW5jZSkgeworCQkvLyB2aXNpdGVkUGFja2FnZXMgPSBuZXcgQmFzaWNFTGlzdDxQYWNrYWdlPiAoKTsKKwkJRGVwUGxhblN5bmMuc3luY0RlcFBsYW4oaW5zdGFuY2UuZ2V0TmVhcmVzdFBhY2thZ2UoKSk7CisJCW1fY29tcG9uZW50ID0gRGVwVXRpbHMuZ2V0SW1wbGVtZW50YXRpb24oaW5zdGFuY2UpOworCQltX2luc3RhbmNlID0gaW5zdGFuY2U7CisJCW1fZmVhdHVyZSA9IG51bGw7CisJCW1fbW9kZWwgPSBVdGlscy5nZXRVc2VyTW9kZWwoKTsKKwkJcmV0dXJuIGNoZWNrQW5kR2V0SW5zdGFuY2VzKCk7CisJfQorCisJcHVibGljIGJvb2xlYW4gaW5pdChGZWF0dXJlIGZlYXR1cmUpIHsKKwkJLy8gdmlzaXRlZFBhY2thZ2VzID0gbmV3IEJhc2ljRUxpc3Q8UGFja2FnZT4gKCk7CisJCW1fZmVhdHVyZSA9IGZlYXR1cmU7CisJCW1fbW9kZWwgPSBVdGlscy5nZXRVc2VyTW9kZWwoKTsKKwkJbV9pbnN0YW5jZSA9IG51bGw7CisJCWlmIChmZWF0dXJlIGluc3RhbmNlb2YgUHJvcGVydHkpIHsKKwkJCVR5cGUgdHlwZSA9ICgoUHJvcGVydHkpIGZlYXR1cmUpLmdldFR5cGUoKTsKKwkJCWlmICh0eXBlIGluc3RhbmNlb2YgQ2xhc3MpIHsKKwkJCQltX2NvbXBvbmVudCA9IChDbGFzcykgdHlwZTsKKwkJCQlyZXR1cm4gY2hlY2tBbmRHZXRJbnN0YW5jZXMoKTsKKwkJCX0KKwkJfQorCQlyZXR1cm4gZmFsc2U7CisJfQorCisKKwkvKioKKwkgKiByZXRyaWV2ZSB0aGUgaW5zdGFuY2UgbGlzdC4gUmV0dXJucyBmYWxzZSwgaWYgbm8gZGVwbG95bWVudHBsYW4gY291bGQgYmUgZm91bmQuCisJICoKKwkgKiBAcmV0dXJuCisJICovCisJcHVibGljIGJvb2xlYW4gY2hlY2tBbmRHZXRJbnN0YW5jZXMoKSB7CisJCXZpc2l0ZWRQYWNrYWdlcyA9IG5ldyBCYXNpY0VMaXN0PFBhY2thZ2U+KCk7CisJCW1faW5zdGFuY2VMaXN0ID0gbmV3IEJhc2ljRUxpc3Q8SW5zdGFuY2VTcGVjaWZpY2F0aW9uPigpOworCisJCWdldEluc3RhbmNlcyhtX2luc3RhbmNlTGlzdCk7CisJCWlmIChtX2luc3RhbmNlTGlzdC5zaXplKCkgPT0gMCkgeworCQkJU2hlbGwgc2hlbGwgPSBuZXcgU2hlbGwoKTsKKwkJCWlmIChEZXBQbGFuVXRpbHMuZ2V0QWxsRGVwUGxhbnMobV9tb2RlbCkuc2l6ZSgpID09IDApIHsKKwkJCQlNZXNzYWdlRGlhbG9nLm9wZW5JbmZvcm1hdGlvbihzaGVsbCwgIkluc3RhbmNlIGNvbmZpZ3VyYXRpb24iLAorCQkJCQkJIk5vIGRlcGxveW1lbnQgcGxhbnMgYXJlIGRlZmluZWQuIENyZWF0ZSBhIGRlcGxveW1lbnQgcGxhbiBiZWZvcmUgY29uZmlndXJpbmcgaW5zdGFuY2VzIik7CisJCQkJcmV0dXJuIGZhbHNlOworCQkJfQorCQkJZWxzZSBpZiAoTWVzc2FnZURpYWxvZy5vcGVuQ29uZmlybShzaGVsbCwgIkluc3RhbmNlIGNvbmZpZ3VyYXRpb24iLAorCQkJCQkiVGhlIGxpc3Qgb2YgYXZhaWxhYmxlIGluc3RhbmNlcyBpcyBlbXB0eS4gU3luY2hyb25pemUgZGVwbG95bWVudCBwbGFucz8iKSkgeworCQkJCURlcFBsYW5TeW5jLnN5bmNBbGxEZXBQbGFucyhtX21vZGVsKTsKKwkJCQl2aXNpdGVkUGFja2FnZXMgPSBuZXcgQmFzaWNFTGlzdDxQYWNrYWdlPigpOworCQkJCWdldEluc3RhbmNlcyhtX2luc3RhbmNlTGlzdCk7CisJCQkJaWYgKG1faW5zdGFuY2VMaXN0LnNpemUoKSA9PSAwKSB7CisJCQkJCU1lc3NhZ2VEaWFsb2cub3BlbkluZm9ybWF0aW9uKHNoZWxsLCAiSW5zdGFuY2UgY29uZmlndXJhdGlvbiIsCisJCQkJCQkJIlRoZXJlIGFyZSBzdGlsbCBubyBpbnN0YW5jZXMgYXZhaWxhYmxlXG4iICsKKwkJCQkJCQkJCSJDaGVjayB3aGV0aGVyIHlvdSBjcmVhdGVkIGFscmVhZHkgYSBkZXBsb3ltZW50IHBsYW4gZm9yIHlvdXIgc3lzdGVtLiIgKworCQkJCQkJCQkJIkNoZWNrIGFzIHdlbGwsIGlmIHRoZSBwYXJ0cyBpbiB5b3VyIGEgY29tcG9zaXRlIHVzZSBcImNvbXBvc2l0ZVwiIGFzIGFnZ3JlZ2F0aW9uIGtpbmRcbi4iICsKKwkJCQkJCQkJCSIoUmVzdWx0cyBvZiBkZXBsb3ltZW50IHBsYW4gc3luY2hyb25pemF0aW9ucyB3aWxsIGJlIHVucm9sbGVkKSIpOworCQkJCQlyZXR1cm4gZmFsc2U7CisJCQkJfQorCQkJfQorCQl9CisJCXJldHVybiB0cnVlOworCX0KKworCS8qKgorCSAqIEBzZWUgU2VsZWN0aW9uU3RhdHVzRGlhbG9nI2NvbXB1dGVSZXN1bHQoKQorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCB2b2lkIGNvbXB1dGVSZXN1bHQoKSB7CisJCS8vIG5vdGhpbmcgdG8gZG8KKwl9CisKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgQ29udHJvbCBjcmVhdGVEaWFsb2dBcmVhKENvbXBvc2l0ZSBwYXJlbnQpIHsKKwkJQ29tcG9zaXRlIGNvbnRlbnRzID0gKENvbXBvc2l0ZSkgc3VwZXIuY3JlYXRlRGlhbG9nQXJlYShwYXJlbnQpOworCQkvLyAocGFyZW50LCAiQ29udGFpbmVyIHJ1bGVzIiwgIkF2YWlsLiBleHRlbnNpb25zL2ludGVyY2VwdG9ycyIpOworCisJCWNyZWF0ZUluc3RhbmNlU2VsZWN0aW9uR3JvdXAoY29udGVudHMpOworCQljcmVhdGVJbnN0YW5jZUNvbmZpZ3VyYXRpb25Hcm91cChjb250ZW50cyk7CisJCXJldHVybiBjb250ZW50czsKKwl9CisKKwlwcm90ZWN0ZWQgdm9pZCBjcmVhdGVJbnN0YW5jZVNlbGVjdGlvbkdyb3VwKENvbXBvc2l0ZSBwYXJlbnQpIHsKKwkJQ29tcG9zaXRlIGluc3RhbmNlU2VsZWN0aW9uID0gbmV3IENvbXBvc2l0ZShwYXJlbnQsIFNXVC5OT05FKTsKKwkJR3JpZExheW91dCBncmlkID0gbmV3IEdyaWRMYXlvdXQoMSwgdHJ1ZSk7CisJCUdyaWREYXRhIGdyb3VwR3JpZERhdGEgPSBuZXcgR3JpZERhdGEoKTsKKworCQlncm91cEdyaWREYXRhLmdyYWJFeGNlc3NWZXJ0aWNhbFNwYWNlID0gdHJ1ZTsKKwkJZ3JvdXBHcmlkRGF0YS5ncmFiRXhjZXNzSG9yaXpvbnRhbFNwYWNlID0gdHJ1ZTsKKwkJZ3JvdXBHcmlkRGF0YS5ob3Jpem9udGFsQWxpZ25tZW50ID0gR3JpZERhdGEuRklMTDsKKwkJZ3JvdXBHcmlkRGF0YS52ZXJ0aWNhbEFsaWdubWVudCA9IEdyaWREYXRhLkZJTEw7CisJCWluc3RhbmNlU2VsZWN0aW9uLnNldExheW91dChncmlkKTsKKwkJaW5zdGFuY2VTZWxlY3Rpb24uc2V0TGF5b3V0RGF0YShncm91cEdyaWREYXRhKTsKKworCQkvKgorCQkgKiBmUnVsZXMgPSBEaWFsb2dVdGlscy5jcmVhdGVGaWx0ZXJlZExpc3QgKHJ1bGVTZWxHcm91cCwgbmV3CisJCSAqIFJ1bGVMYWJlbFByb3ZpZGVyKCksIDIwMCwgMjAwLCBTV1QuQk9SREVSIHwgU1dULlZfU0NST0xMIHwKKwkJICogU1dULkhfU0NST0xMKTsKKwkJICovCisKKwkJLy8KKwkJLy8gLS0tLS0tLS0tLS0tLS0tIGluc3RhbmNlIHNlbGVjdGlvbiAtLS0tLS0tLS0tLS0tLS0tLS0tCisJCS8vCisJCUdyb3VwIGluc3RhbmNlU2VsR3JvdXAgPSBuZXcgR3JvdXAoaW5zdGFuY2VTZWxlY3Rpb24sIFNXVC5CT1JERVIpOworCQlpbnN0YW5jZVNlbEdyb3VwLnNldFRleHQoIiBhc3NvY2lhdGVkIGluc3RhbmNlIHNwZWNpZmljYXRpb25zICIpOworCQkvLyBydWxlR3JvdXAuc2V0TGF5b3V0KG5ldyBSb3dMYXlvdXQgKFNXVC5WRVJUSUNBTCkpOworCQlpbnN0YW5jZVNlbEdyb3VwLnNldExheW91dChuZXcgR3JpZExheW91dCgxLCBmYWxzZSkpOworCQlpbnN0YW5jZVNlbEdyb3VwLnNldExheW91dERhdGEoZ3JvdXBHcmlkRGF0YSk7CisKKwkJZkluc3RhbmNlTGlzdCA9IG5ldyBUcmVlVmlld2VyKGluc3RhbmNlU2VsR3JvdXAsIFNXVC5CT1JERVIpOworCisJCUdyaWREYXRhIGRhdGEgPSBuZXcgR3JpZERhdGEoR3JpZERhdGEuRklMTF9CT1RIKTsKKwkJZGF0YS5oZWlnaHRIaW50ID0gMTAwOworCQlkYXRhLndpZHRoSGludCA9IDM1MDsKKworCQlmSW5zdGFuY2VMaXN0LmdldFRyZWUoKS5zZXRMYXlvdXREYXRhKGRhdGEpOworCQlmSW5zdGFuY2VMaXN0LnNldExhYmVsUHJvdmlkZXIobmV3IEluc3RhbmNlTGFiZWxQcm92aWRlcigpKTsKKwkJZkluc3RhbmNlTGlzdC5zZXRDb250ZW50UHJvdmlkZXIobmV3IElUcmVlQ29udGVudFByb3ZpZGVyKCkgeworCisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyB2b2lkIGlucHV0Q2hhbmdlZChWaWV3ZXIgdmlld2VyLCBPYmplY3Qgb2xkSW5wdXQsIE9iamVjdCBuZXdJbnB1dCkgeworCQkJfQorCisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyB2b2lkIGRpc3Bvc2UoKSB7CisJCQl9CisKKwkJCUBPdmVycmlkZQorCQkJcHVibGljIGJvb2xlYW4gaGFzQ2hpbGRyZW4oT2JqZWN0IGVsZW1lbnQpIHsKKwkJCQlyZXR1cm4gZ2V0Q2hpbGRyZW4oZWxlbWVudCkubGVuZ3RoID4gMDsKKwkJCX0KKworCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgT2JqZWN0IGdldFBhcmVudChPYmplY3QgZWxlbWVudCkgeworCQkJCXJldHVybiBudWxsOworCQkJfQorCisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBPYmplY3RbXSBnZXRFbGVtZW50cyhPYmplY3QgaW5wdXRFbGVtZW50KSB7CisJCQkJcmV0dXJuIChPYmplY3RbXSkgaW5wdXRFbGVtZW50OworCQkJfQorCisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBPYmplY3RbXSBnZXRDaGlsZHJlbihPYmplY3QgcGFyZW50RWxlbWVudCkgeworCQkJCWlmIChwYXJlbnRFbGVtZW50IGluc3RhbmNlb2YgSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSB7CisJCQkJCXJldHVybiBEZXBVdGlscy5nZXRDb250YWluZWRJbnN0YW5jZXMoKEluc3RhbmNlU3BlY2lmaWNhdGlvbikgcGFyZW50RWxlbWVudCkudG9BcnJheSgpOworCQkJCX0KKwkJCQlyZXR1cm4gbmV3IE9iamVjdFswXTsKKwkJCX0KKwkJfSk7CisKKwkJZkluc3RhbmNlTGlzdC5zZXRJbnB1dChtX2luc3RhbmNlTGlzdC50b0FycmF5KCkpOworCQlmSW5zdGFuY2VMaXN0LmFkZFNlbGVjdGlvbkNoYW5nZWRMaXN0ZW5lcihuZXcgSVNlbGVjdGlvbkNoYW5nZWRMaXN0ZW5lcigpIHsKKworCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgdm9pZCBzZWxlY3Rpb25DaGFuZ2VkKFNlbGVjdGlvbkNoYW5nZWRFdmVudCBldmVudCkgeworCQkJCUlTZWxlY3Rpb24gc2VsZWN0aW9uID0gZkluc3RhbmNlTGlzdC5nZXRTZWxlY3Rpb24oKTsKKwkJCQlpZiAoc2VsZWN0aW9uIGluc3RhbmNlb2YgU3RydWN0dXJlZFNlbGVjdGlvbikgeworCQkJCQlPYmplY3RbXSBzZWxlY3RlZCA9ICgoU3RydWN0dXJlZFNlbGVjdGlvbikgc2VsZWN0aW9uKQorCQkJCQkJCS50b0FycmF5KCk7CisJCQkJCWlmICgoc2VsZWN0ZWQubGVuZ3RoID09IDEpCisJCQkJCQkJJiYgKHNlbGVjdGVkWzBdIGluc3RhbmNlb2YgSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSkgeworCQkJCQkJbV9pbnN0YW5jZSA9IChJbnN0YW5jZVNwZWNpZmljYXRpb24pIHNlbGVjdGVkWzBdOworCQkJCQkJQ2xhc3NpZmllciBjbCA9IERlcFV0aWxzLmdldENsYXNzaWZpZXIobV9pbnN0YW5jZSk7CisJCQkJCQlmUHJvcGVydHlMaXN0LnNldElucHV0KGdldENvbmZpZ0F0dHJpYnV0ZXMoY2wpLnRvQXJyYXkoKSk7CisJCQkJCQlzZWxlY3RQcm9wZXJ0eShtX2N1cnJlbnRBdHRyaWJ1dGUpOworCQkJCQl9CisJCQkJfQorCQkJfQorCQl9KTsKKwkJaWYgKG1faW5zdGFuY2UgIT0gbnVsbCkgeworCQkJaW50IGluZGV4ID0gbV9pbnN0YW5jZUxpc3QuaW5kZXhPZihtX2luc3RhbmNlKTsKKwkJCWlmIChpbmRleCAhPSAtMSkgeworCQkJCVRyZWVJdGVtIHRyZWVJdGVtID0gZkluc3RhbmNlTGlzdC5nZXRUcmVlKCkuZ2V0SXRlbShpbmRleCk7CisJCQkJZkluc3RhbmNlTGlzdC5nZXRUcmVlKCkuc2V0U2VsZWN0aW9uKHRyZWVJdGVtKTsKKwkJCX0KKwkJfQorCX0KKworCS8vIGNyZWF0ZSBpbnN0YW5jZSBjb25maWd1cmF0aW9uIGdyb3VwCisJcHJvdGVjdGVkIHZvaWQgY3JlYXRlSW5zdGFuY2VDb25maWd1cmF0aW9uR3JvdXAoQ29tcG9zaXRlIHBhcmVudCkgeworCQlHcmlkRGF0YSBncm91cEdyaWREYXRhID0gRGlhbG9nVXRpbHMuY3JlYXRlRmlsbEdyaWREYXRhKCk7CisKKwkJR3JvdXAgaW5zdGFuY2VDb25maWd1cmF0aW9uR3JvdXAgPSBuZXcgR3JvdXAocGFyZW50LCBTV1QuQk9SREVSKTsKKwkJaW5zdGFuY2VDb25maWd1cmF0aW9uR3JvdXAuc2V0VGV4dCgiIENvbmZpZ3VyYXRpb24gIik7CisJCWluc3RhbmNlQ29uZmlndXJhdGlvbkdyb3VwLnNldExheW91dChuZXcgUm93TGF5b3V0KFNXVC5WRVJUSUNBTCkpOworCQlpbnN0YW5jZUNvbmZpZ3VyYXRpb25Hcm91cC5zZXRMYXlvdXQobmV3IEdyaWRMYXlvdXQoMSwgZmFsc2UpKTsKKwkJaW5zdGFuY2VDb25maWd1cmF0aW9uR3JvdXAuc2V0TGF5b3V0RGF0YShncm91cEdyaWREYXRhKTsKKworCQkvLyBmUnVsZU5hbWUgPSBuZXcgVGV4dCAocnVsZUluZm9Hcm91cCwgU1dULk5PTkUpOworCQlMYWJlbCBjb25maWdMID0gbmV3IExhYmVsKGluc3RhbmNlQ29uZmlndXJhdGlvbkdyb3VwLCBTV1QuTk9ORSk7CisJCWNvbmZpZ0wuc2V0VGV4dCgiQXZhaWxhYmxlIHByb3BlcnRpZXM6Iik7CisKKwkJZlByb3BlcnR5TGlzdCA9IG5ldyBUYWJsZVZpZXdlcihpbnN0YW5jZUNvbmZpZ3VyYXRpb25Hcm91cCwgU1dULkJPUkRFUik7CisJCWZQcm9wZXJ0eUxpc3Quc2V0TGFiZWxQcm92aWRlcihuZXcgQXR0cmlidXRlTGFiZWxQcm92aWRlcigpKTsKKwkJZlByb3BlcnR5TGlzdC5zZXRDb250ZW50UHJvdmlkZXIobmV3IEFycmF5Q29udGVudFByb3ZpZGVyKCkpOworCQlmUHJvcGVydHlMaXN0LnNldElucHV0KGdldENvbmZpZ0F0dHJpYnV0ZXMobV9jb21wb25lbnQpLnRvQXJyYXkoKSk7CisJCWZQcm9wZXJ0eUxpc3QKKwkJCQkuYWRkU2VsZWN0aW9uQ2hhbmdlZExpc3RlbmVyKG5ldyBJU2VsZWN0aW9uQ2hhbmdlZExpc3RlbmVyKCkgeworCisJCQkJCUBPdmVycmlkZQorCQkJCQlwdWJsaWMgdm9pZCBzZWxlY3Rpb25DaGFuZ2VkKFNlbGVjdGlvbkNoYW5nZWRFdmVudCBldmVudCkgeworCQkJCQkJSVNlbGVjdGlvbiBzZWxlY3Rpb24gPSBmUHJvcGVydHlMaXN0LmdldFNlbGVjdGlvbigpOworCQkJCQkJaWYgKHNlbGVjdGlvbiBpbnN0YW5jZW9mIFN0cnVjdHVyZWRTZWxlY3Rpb24pIHsKKwkJCQkJCQlPYmplY3RbXSBzZWxlY3RlZCA9ICgoU3RydWN0dXJlZFNlbGVjdGlvbikgc2VsZWN0aW9uKQorCQkJCQkJCQkJLnRvQXJyYXkoKTsKKwkJCQkJCQlpZiAoKHNlbGVjdGVkLmxlbmd0aCA9PSAxKQorCQkJCQkJCQkJJiYgKHNlbGVjdGVkWzBdIGluc3RhbmNlb2YgUHJvcGVydHkpKSB7CisJCQkJCQkJCXNlbGVjdFByb3BlcnR5KChQcm9wZXJ0eSkgc2VsZWN0ZWRbMF0pOworCQkJCQkJCX0KKwkJCQkJCX0KKwkJCQkJfQorCQkJCX0pOworCisJCWZWYWx1ZUxhYmVsID0gbmV3IExhYmVsKGluc3RhbmNlQ29uZmlndXJhdGlvbkdyb3VwLCBTV1QuTk9ORSk7CisKKwkJR3JpZERhdGEgc3BhbjIgPSBuZXcgR3JpZERhdGEoKTsKKwkJc3BhbjIuaG9yaXpvbnRhbEFsaWdubWVudCA9IEdyaWREYXRhLkZJTEw7CisJCXNwYW4yLmdyYWJFeGNlc3NIb3Jpem9udGFsU3BhY2UgPSB0cnVlOworCQlzcGFuMi5oZWlnaHRIaW50ID0gNzA7CisJCWZQcm9wZXJ0eUxpc3QuZ2V0VGFibGUoKS5zZXRMYXlvdXREYXRhKHNwYW4yKTsKKworCQlmVmFsdWUgPSBuZXcgVGV4dChpbnN0YW5jZUNvbmZpZ3VyYXRpb25Hcm91cCwgU1dULldSQVApOworCQlzcGFuMiA9IG5ldyBHcmlkRGF0YSgpOworCQlzcGFuMi5ob3Jpem9udGFsQWxpZ25tZW50ID0gR3JpZERhdGEuRklMTDsKKwkJc3BhbjIuZ3JhYkV4Y2Vzc0hvcml6b250YWxTcGFjZSA9IHRydWU7CisJCWZWYWx1ZS5zZXRMYXlvdXREYXRhKHNwYW4yKTsKKwkJZlZhbHVlLmFkZEZvY3VzTGlzdGVuZXIobmV3IEZvY3VzTGlzdGVuZXIoKSB7CisKKwkJCUBPdmVycmlkZQorCQkJcHVibGljIHZvaWQgZm9jdXNMb3N0KEZvY3VzRXZlbnQgZSkgeworCQkJCS8vIHN0b3JlIHZhbHVlLCBvbmNlIGZvY3VzIGlzIGxvc3QgKGRpZmZlcmVudCBlbGVtZW50IGlzCisJCQkJLy8gc2VsZWN0ZWQpCisJCQkJU3RyaW5nIHZhbHVlU3RyID0gZlZhbHVlLmdldFRleHQoKTsKKwkJCQlTbG90IHZhbHVlU2xvdCA9IG51bGw7CisJCQkJaWYgKG1faW5zdGFuY2UgPT0gbnVsbCkgeworCQkJCQkvLyBubyBpbnN0YW5jZSBoYXMgYmVlbiBzZWxlY3RlZAorCQkJCQkvLyAoZmllbGQgc2hvdWxkIGJlIGluYWN0aXZlLCBpZiBub3Qgc2VsZWN0ZWQpCisJCQkJCXJldHVybjsKKwkJCQl9CisJCQkJZm9yIChTbG90IHNsb3QgOiBtX2luc3RhbmNlLmdldFNsb3RzKCkpIHsKKwkJCQkJaWYgKHNsb3QuZ2V0RGVmaW5pbmdGZWF0dXJlKCkgPT0gbV9jdXJyZW50QXR0cmlidXRlKSB7CisJCQkJCQl2YWx1ZVNsb3QgPSBzbG90OworCQkJCQl9CisJCQkJfQorCQkJCWlmICh2YWx1ZVNsb3QgPT0gbnVsbCkgeworCQkJCQkvLyBzbG90IGRvZXMgbm90IGV4aXN0IHlldCwgY3JlYXRlCisJCQkJCXZhbHVlU2xvdCA9IERlcENyZWF0aW9uLmNyZWF0ZVNsb3RGb3JDb25maWdQcm9wKG1faW5zdGFuY2UsCisJCQkJCQkJbV9jdXJyZW50QXR0cmlidXRlKTsKKwkJCQl9CisJCQkJZm9yIChWYWx1ZVNwZWNpZmljYXRpb24gdmFsdWUgOiB2YWx1ZVNsb3QuZ2V0VmFsdWVzKCkpIHsKKwkJCQkJaWYgKHZhbHVlIGluc3RhbmNlb2YgTGl0ZXJhbFN0cmluZykgeworCQkJCQkJKChMaXRlcmFsU3RyaW5nKSB2YWx1ZSkuc2V0VmFsdWUodmFsdWVTdHIpOworCQkJCQl9IGVsc2UgaWYgKHZhbHVlIGluc3RhbmNlb2YgTGl0ZXJhbEludGVnZXIpIHsKKwkJCQkJCSgoTGl0ZXJhbEludGVnZXIpIHZhbHVlKS5zZXRWYWx1ZShJbnRlZ2VyCisJCQkJCQkJCS5wYXJzZUludCh2YWx1ZVN0cikpOworCQkJCQl9IGVsc2UgaWYgKHZhbHVlIGluc3RhbmNlb2YgTGl0ZXJhbEJvb2xlYW4pIHsKKwkJCQkJCSgoTGl0ZXJhbEJvb2xlYW4pIHZhbHVlKS5zZXRWYWx1ZShCb29sZWFuCisJCQkJCQkJCS5wYXJzZUJvb2xlYW4odmFsdWVTdHIpKTsKKwkJCQkJfQorCQkJCX0KKwkJCX0KKworCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgdm9pZCBmb2N1c0dhaW5lZChGb2N1c0V2ZW50IGUpIHsKKwkJCX0KKwkJfSk7CisKKwkJZkRlc2NyaXB0aW9uTGFiZWwgPSBuZXcgTGFiZWwoaW5zdGFuY2VDb25maWd1cmF0aW9uR3JvdXAsIFNXVC5OT05FKTsKKwkJZkRlc2NyaXB0aW9uTGFiZWwuc2V0VGV4dCgiRGVzY3JpcHRpb246Iik7CisJCWZEZXNjcmlwdGlvbkxhYmVsLnNldExheW91dERhdGEoc3BhbjIpOworCisJCXNwYW4yID0gbmV3IEdyaWREYXRhKCk7CisJCXNwYW4yLmhvcml6b250YWxBbGlnbm1lbnQgPSBHcmlkRGF0YS5GSUxMOworCQlzcGFuMi5ncmFiRXhjZXNzSG9yaXpvbnRhbFNwYWNlID0gdHJ1ZTsKKwkJc3BhbjIuZ3JhYkV4Y2Vzc1ZlcnRpY2FsU3BhY2UgPSB0cnVlOworCQlzcGFuMi52ZXJ0aWNhbEFsaWdubWVudCA9IEdyaWREYXRhLkZJTEw7CisJCXNwYW4yLmhlaWdodEhpbnQgPSA4MDsKKworCQlmRGVzY3JpcHRpb24gPSBuZXcgVGV4dChpbnN0YW5jZUNvbmZpZ3VyYXRpb25Hcm91cCwgU1dULk5PTkUgfCBTV1QuV1JBUAorCQkJCXwgU1dULlZfU0NST0xMIHwgU1dULlJFQURfT05MWSk7CisJCWZEZXNjcmlwdGlvbi5zZXRMYXlvdXREYXRhKHNwYW4yKTsKKwkJLy8gY3JlYXRlTWVzc2FnZUFyZWEgKHJ1bGVJbmZvR3JvdXApOworCQlpbnN0YW5jZUNvbmZpZ3VyYXRpb25Hcm91cC5wYWNrKCk7CisJCXNldEVuYWJsZWQoZmFsc2UpOworCX0KKworCS8qKgorCSAqIFNlbGVjdCBhIHJ1bGUsIGkuZS4gdXBkYXRlIHRoZSB2aXN1YWwgcmVwcmVzZW50YXRpb24gZnJvbSB0aGUgcnVsZQorCSAqCisJICogQHBhcmFtIHJ1bGUKKwkgKi8KKwlwcm90ZWN0ZWQgdm9pZCBzZWxlY3RQcm9wZXJ0eShQcm9wZXJ0eSBhdHRyaWJ1dGUpIHsKKwkJbV9jdXJyZW50QXR0cmlidXRlID0gYXR0cmlidXRlOworCQlpZiAoKGF0dHJpYnV0ZSA9PSBudWxsKSB8fCAoZlZhbHVlID09IG51bGwpKSB7CisJCQlzZXRFbmFibGVkKGZhbHNlKTsKKwkJCXJldHVybjsKKwkJfQorCQlzZXRFbmFibGVkKHRydWUpOworCQlmRGVzY3JpcHRpb24uc2V0VGV4dChEZXNjcmlwdGlvbi5nZXREZXNjcmlwdGlvbihhdHRyaWJ1dGUsICJub3QgYXZhaWxhYmxlIikpOworCQlmVmFsdWVMYWJlbC5zZXRUZXh0KGdldFZhbHVlTGFiZWwoYXR0cmlidXRlKSk7CisJCWZvciAoU2xvdCBzbG90IDogbV9pbnN0YW5jZS5nZXRTbG90cygpKSB7CisJCQlpZiAoc2xvdC5nZXREZWZpbmluZ0ZlYXR1cmUoKSA9PSBtX2N1cnJlbnRBdHRyaWJ1dGUpIHsKKwkJCQlmb3IgKFZhbHVlU3BlY2lmaWNhdGlvbiB2YWx1ZSA6IHNsb3QuZ2V0VmFsdWVzKCkpIHsKKwkJCQkJaWYgKHZhbHVlIGluc3RhbmNlb2YgTGl0ZXJhbEludGVnZXIpIHsKKwkJCQkJCUludGVnZXIgaW50VmFsID0gKChMaXRlcmFsSW50ZWdlcikgdmFsdWUpLmdldFZhbHVlKCk7CisJCQkJCQlmVmFsdWUuc2V0VGV4dChpbnRWYWwudG9TdHJpbmcoKSk7CisJCQkJCQlyZXR1cm47CisJCQkJCX0KKwkJCQkJZWxzZSBpZiAodmFsdWUgaW5zdGFuY2VvZiBMaXRlcmFsQm9vbGVhbikgeworCQkJCQkJQm9vbGVhbiBib29sVmFsID0gKChMaXRlcmFsQm9vbGVhbikgdmFsdWUpLmJvb2xlYW5WYWx1ZSgpOworCQkJCQkJZlZhbHVlLnNldFRleHQoYm9vbFZhbC50b1N0cmluZygpKTsKKwkJCQkJCXJldHVybjsKKwkJCQkJfQorCQkJCQllbHNlIGlmICh2YWx1ZSBpbnN0YW5jZW9mIExpdGVyYWxTdHJpbmcpIHsKKwkJCQkJCWZWYWx1ZS5zZXRUZXh0KCgoTGl0ZXJhbFN0cmluZykgdmFsdWUpLmdldFZhbHVlKCkpOworCQkJCQkJcmV0dXJuOworCQkJCQl9CisJCQkJfQorCQkJfQorCQl9CisJCWZWYWx1ZS5zZXRUZXh0KCIiKTsKKwl9CisKKwlwcml2YXRlIHZvaWQgc2V0RW5hYmxlZChib29sZWFuIGVuYWJsZWQpIHsKKwkJZkRlc2NyaXB0aW9uTGFiZWwuc2V0RW5hYmxlZChlbmFibGVkKTsKKwkJZkRlc2NyaXB0aW9uLnNldEVuYWJsZWQoZW5hYmxlZCk7CisJCWZWYWx1ZUxhYmVsLnNldEVuYWJsZWQoZW5hYmxlZCk7CisJCWZWYWx1ZS5zZXRFbmFibGVkKGVuYWJsZWQpOworCQlpZiAoIWVuYWJsZWQpIHsKKwkJCWZWYWx1ZS5zZXRUZXh0KCIiKTsKKwkJCWZEZXNjcmlwdGlvbi5zZXRUZXh0KCIiKTsKKwkJCWZWYWx1ZUxhYmVsLnNldFRleHQodmFsdWVMYWJlbFByZWZpeCk7CisJCX0KKwl9CisKKwlwcml2YXRlIFN0cmluZyBnZXRWYWx1ZUxhYmVsKFByb3BlcnR5IGF0dHJpYnV0ZSkgeworCQlTdHJpbmcgbGFiZWwgPSB2YWx1ZUxhYmVsUHJlZml4OworCQlpZiAoYXR0cmlidXRlLmdldERlZmF1bHQoKSAhPSBudWxsKSB7CisJCQlyZXR1cm4gbGFiZWwgKyAiIChEZWZhdWx0ID0gIiArIGF0dHJpYnV0ZS5nZXREZWZhdWx0KCkgKyAiKSI7CisJCX0KKwkJcmV0dXJuIGxhYmVsOworCX0KKworCS8vIFRPRE8oPyk6IG5lZWQgYSBnZW5lcmljIHV0aWxpdHkgZnVuY3Rpb24gZm9yIGdldHRpbmcgYWxsIGVsZW1lbnRzIG9iZXlpbmcgYQorCS8vIGNlcnRhaW4gY3JpdGVyaWEgZnJvbSBhIG1vZGVsCisJdm9pZCBnZXRJbnN0YW5jZXMoRUxpc3Q8SW5zdGFuY2VTcGVjaWZpY2F0aW9uPiBpbnN0YW5jZUxpc3QpIHsKKwkJUGFja2FnZSBkZXBsb3ltZW50UGxhbnMgPSBVdGlscy5nZXRSb290KG1fbW9kZWwsICJEZXBsb3ltZW50UGxhbnMiKTsKKwkJU3RyaW5nIGZlYXR1cmVDYW5kaWRhdGVOYW1lID0gbnVsbDsKKwkJZm9yIChQYWNrYWdlYWJsZUVsZW1lbnQgZGVwbG95bWVudFBsYW4gOiBkZXBsb3ltZW50UGxhbnMKKwkJCQkuZ2V0UGFja2FnZWRFbGVtZW50cygpKSB7CisJCQlpZiAoZGVwbG95bWVudFBsYW4gaW5zdGFuY2VvZiBQYWNrYWdlKSB7CisJCQkJZm9yIChQYWNrYWdlYWJsZUVsZW1lbnQgaW5zdGFuY2UgOiAoKFBhY2thZ2UpIGRlcGxveW1lbnRQbGFuKS5nZXRQYWNrYWdlZEVsZW1lbnRzKCkpIHsKKwkJCQkJaWYgKGluc3RhbmNlIGluc3RhbmNlb2YgSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSB7CisJCQkJCQlJbnN0YW5jZVNwZWNpZmljYXRpb24gY2FuZGlkYXRlID0gKEluc3RhbmNlU3BlY2lmaWNhdGlvbikgaW5zdGFuY2U7CisJCQkJCQlpZiAobV9mZWF0dXJlIGluc3RhbmNlb2YgUHJvcGVydHkpIHsKKwkJCQkJCQlmb3IgKFNsb3Qgc2xvdCA6IGNhbmRpZGF0ZS5nZXRTbG90cygpKSB7CisJCQkJCQkJCWlmIChzbG90LmdldERlZmluaW5nRmVhdHVyZSgpID09IG1fZmVhdHVyZSkgeworCQkJCQkJCQkJaW5zdGFuY2VMaXN0CisJCQkJCQkJCQkJCS5hZGQoRGVwVXRpbHMuZ2V0SW5zdGFuY2Uoc2xvdCkpOworCQkJCQkJCQl9CisJCQkJCQkJfQorCQkJCQkJfSBlbHNlIGlmIChtX2ZlYXR1cmUgaW5zdGFuY2VvZiBDb25uZWN0b3IpIHsKKwkJCQkJCQkvLyBDb25uZWN0b3IgY2Fubm90IGJlIGZvdW5kIGRpcmVjdGx5LCBzaW5jZSB0aGVyZSBpcyBubyBzbG90IGluIGNvbnRhaW5pbmcgY29tcG9zaXRlIChkZWZpbmluZworCQkJCQkJCS8vIGZlYXR1cmUgaXMgYSBzdHJ1Y3R1cmFsLWZlYXR1cmUsIG5vdCBhIGZlYXR1cmUpOiBmaW5kIHZpYSBuYW1lLgorCQkJCQkJCUVsZW1lbnQgb3duZXIgPSBtX2ZlYXR1cmUuZ2V0T3duZXIoKTsKKwkJCQkJCQlpZiAoRGVwVXRpbHMuZ2V0SW1wbGVtZW50YXRpb24oY2FuZGlkYXRlKSA9PSBvd25lcikgeworCQkJCQkJCQkvLyBpbnN0YW5jZSBpcyBmb3Igb3duZXIgb2YgZmVhdHVyZTogZXhhbWluZSBuYW1lCisJCQkJCQkJCWZlYXR1cmVDYW5kaWRhdGVOYW1lID0gY2FuZGlkYXRlLmdldE5hbWUoKSArICIuIiArIG1fZmVhdHVyZS5nZXROYW1lKCk7CisJCQkJCQkJfQorCQkJCQkJCWVsc2UgaWYgKGZlYXR1cmVDYW5kaWRhdGVOYW1lICE9IG51bGwpIHsKKwkJCQkJCQkJaWYgKGZlYXR1cmVDYW5kaWRhdGVOYW1lLmVxdWFscyhjYW5kaWRhdGUuZ2V0TmFtZSgpKSkgeworCQkJCQkJCQkJaW5zdGFuY2VMaXN0LmFkZChjYW5kaWRhdGUpOworCQkJCQkJCQl9CisJCQkJCQkJfQorCQkJCQkJfSBlbHNlIGlmIChEZXBVdGlscy5nZXRJbXBsZW1lbnRhdGlvbihjYW5kaWRhdGUpID09IG1fY29tcG9uZW50KSB7CisJCQkJCQkJaW5zdGFuY2VMaXN0LmFkZChjYW5kaWRhdGUpOworCQkJCQkJfQorCQkJCQl9CisJCQkJfQorCQkJfQorCQl9CisJfQorCisJcHJpdmF0ZSBFTGlzdDxQcm9wZXJ0eT4gZ2V0Q29uZmlnQXR0cmlidXRlcyhDbGFzc2lmaWVyIGNvbXBvbmVudCkgeworCQlFTGlzdDxQcm9wZXJ0eT4gbGlzdCA9IG5ldyBCYXNpY0VMaXN0PFByb3BlcnR5PigpOworCQkvLyAvLyBhZGQgcHJvcGVydGllcyBvZiBjb21wb25lbnQKKwkJLy8gbGlzdC5hZGRBbGwoQ29uZmlnVXRpbHMuZ2V0Q29uZmlnQXR0cmlidXRlcyhjb21wb25lbnQpKTsKKwkJLy8gLy8gbm93IGFkZCBwcm9wZXJ0aWVzIG9mIGNvbnRhaW5lciBydWxlcworCQkvLyAvLyBUT0RPOiBpcyBpdCBwb3NzaWJsZSB0aGF0IG11bHRpcGxlIGNvbnRhaW5lciBleHRlbnNpb25zIG9mIHRoZSBzYW1lCisJCS8vIC8vIHR5cGUgZXhpc3QsIGFuZCBpZiB5ZXMsIGhvdyBkbyB3ZSBjb25maWd1cmUgdGhlc2U/CisJCS8vIGlmKGNvbXBvbmVudCBpbnN0YW5jZW9mIENsYXNzKSB7CisJCS8vIEVMaXN0PENvbnRhaW5lclJ1bGU+IHJ1bGVzID0gVXRpbHMuZ2V0UnVsZXMoKENsYXNzKWNvbXBvbmVudCk7CisJCS8vIGlmKHJ1bGVzICE9IG51bGwpIHsKKwkJLy8gZm9yKENvbnRhaW5lclJ1bGUgYVJ1bGUgOiBydWxlcykgeworCQkvLyAvLyAobWFueSwgaW4gY2FzZSBvZiBhIGNvbXBvc2l0ZSBydWxlKQorCQkvLyB0cnkgeworCQkvLyBsaXN0LmFkZEFsbChDb25maWdVdGlscy5nZXRDb25maWdBdHRyaWJ1dGVzKGFSdWxlKSk7CisJCS8vIH0gY2F0Y2ggKFRyYW5zZm9ybWF0aW9uRXhjZXB0aW9uIGUpIHsKKwkJLy8gfQorCQkvLyB9CisJCS8vIH0KKwkJLy8gfQorCQlyZXR1cm4gbGlzdDsKKwl9CisKK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9kaWFsb2cvRGVzY3JpcHRpb24uamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9kaWFsb2cvRGVzY3JpcHRpb24uamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jYWUwOTA5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L2RpYWxvZy9EZXNjcmlwdGlvbi5qYXZhCkBAIC0wLDAgKzEsODAgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIENFQSBMSVNULgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBEaG91aWIgKENFQSBMSVNUKSBzYWFkaWEuZGhvdWliQGNlYS5mciAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC5kaWFsb2c7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5Db21tZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQ7CisKK3B1YmxpYyBjbGFzcyBEZXNjcmlwdGlvbiB7CisKKwkvKioKKwkgKiBSZXR1cm4gYSBkZXNjcmlwdGlvbiBvZiBhbiBlbGVtZW50LiBCeSBkZWZhdWx0IHNlYXJjaCBjb21tZW50cyB0aGF0IGFyZQorCSAqIG93bmVkIGJ5IHRoaXMgZWxlbWVudHMgb3duZXIgKGUuZy4gdGhlIGNsYXNzLCBpZiB3ZSBzZWFyY2ggZm9yIGEgZGVzY3JpcHRpb24gb2YgYSBwcm9wZXJ0eSBvciB0aGUgb3duaW5nIHBhY2thZ2UsCisJICogaWYgd2Ugc2VhcmNoIGZvciBhIGRlc2NyaXB0aW9uIG9mIGEgY2xhc3MpCisJICoKKwkgKiBAcGFyYW0gZWxlbWVudAorCSAqICAgICAgICAgICAgdGhlIGVsZW1lbnQgZm9yIHdoaWNoIHRvIG9idGFpbiBhIGRlc2NyaXB0aW9uCisJICogQHJldHVybiB0aGUgZGVzY3JpcHRpb24gb2YgdGhlIGVsZW1lbnQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIFN0cmluZyBnZXREZXNjcmlwdGlvbihFbGVtZW50IGVsZW1lbnQpIHsKKwkJcmV0dXJuIGdldERlc2NyaXB0aW9uKGVsZW1lbnQuZ2V0T3duZXIoKSwgZWxlbWVudCk7CisJfQorCisJLyoqCisJICogQ29udmVuaWVuY2UgZnVuY3Rpb246IFJldHVybiBhIGRlc2NyaXB0aW9uIG9mIGFuIGVsZW1lbnQuIEl0IHdpbGwgZGVsZWdhdGUgdG8KKwkgKiBkZWZhdWx0IGdldERlc2NyaXB0aW9uLCBidXQgcmV0dXJucyBhIHVzZXIgc3BlY2lmaWVkIHRleHQsIGlmIGEgZGVzY3JpcHRpb24gaXMKKwkgKiBub3QgYXZhaWxhYmxlIGluIHRoZSBtb2RlbC4KKwkgKgorCSAqIEBwYXJhbSBlbGVtZW50CisJICogQHBhcmFtIHVuYXZhaWxhYmxlCisJICogICAgICAgICAgICBUaGUgdGV4dCB0aGF0IGlzIHJldHVybiwgaWYgbm8gZGVzY3JpcHRpb24gaXMgYXZhaWxhYmxlCisJICogQHJldHVybgorCSAqLworCXB1YmxpYyBzdGF0aWMgU3RyaW5nIGdldERlc2NyaXB0aW9uKEVsZW1lbnQgZWxlbWVudCwgU3RyaW5nIHVuYXZhaWxhYmxlKSB7CisJCVN0cmluZyBkZXNjcmlwdGlvbiA9IGdldERlc2NyaXB0aW9uKGVsZW1lbnQpOworCQlpZiAoZGVzY3JpcHRpb24gIT0gbnVsbCkgeworCQkJcmV0dXJuIGRlc2NyaXB0aW9uOworCQl9CisJCWVsc2UgeworCQkJcmV0dXJuIHVuYXZhaWxhYmxlOworCQl9CisJfQorCisJLyoqCisJICogUmV0dXJuIGEgZGVzY3JpcHRpb24gb3IgaW1wbGVtZW50YXRpb24gZGVzY3JpcHRpb24gb2YgYW4gZWxlbWVudCwgaS5lLiB0aGUKKwkgKiBmaXJzdCBvd25lZCBjb21tZW50IHRoYXQgYW5ub3RhdGVkIHRoZSBwYXNzZWQgZWxlbWVudAorCSAqCisJICogQHBhcmFtIHRoZQorCSAqICAgICAgICAgICAgb3duZXIgb2YgdGhlIGNvbW1lbnQKKwkgKiAgICAgICAgICAgIHRoZSBlbGVtZW50IGZvciB3aGljaCB0byBvYnRhaW4gYSBkZXNjcmlwdGlvbgorCSAqIEBwYXJhbSBhbm5vdGF0ZWQKKwkgKiAgICAgICAgICAgIGVsZW1lbnQKKwkgKiAgICAgICAgICAgIHRoZSBlbGVtZW50IGZvciB3aGljaCB0byBvYnRhaW4gYSBkZXNjcmlwdGlvbgorCSAqIEByZXR1cm4gdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBlbGVtZW50CisJICovCisJcHVibGljIHN0YXRpYyBTdHJpbmcgZ2V0RGVzY3JpcHRpb24oRWxlbWVudCBvd25lciwgRWxlbWVudCBhbm5vdGF0ZWRFbGVtZW50KSB7CisJCWlmIChvd25lciA9PSBudWxsKSB7CisJCQlyZXR1cm4gbnVsbDsKKwkJfQorCQkvLyBsb29wIG92ZXIgYWxsIG93bmVkIGNvbW1lbnRzLCBjaGVjayB0aG9zZSB0aGF0IGJlZ2lucyB3aXRoCisJCS8vICJkZXNjcmlwdGlvbiIKKwkJZm9yIChDb21tZW50IGNvbW1lbnQgOiBvd25lci5nZXRPd25lZENvbW1lbnRzKCkpIHsKKwkJCS8vIGlkZW50aWZ5ICJyaWdodCIgY29tbWVudCB2aWEgYW5ub3RhdGVkIGVsZW1lbnQgcmVmICh0byBhIHNwZWNpZmljCisJCQkvLyBjbGFzcyBvZiB0aGUgQmFzaWNDYWxscyBsaWJyYXJ5KSBpbnN0ZWFkPworCQkJaWYgKGNvbW1lbnQuZ2V0QW5ub3RhdGVkRWxlbWVudHMoKS5jb250YWlucyhhbm5vdGF0ZWRFbGVtZW50KSkgeworCQkJCXJldHVybiBjb21tZW50LmdldEJvZHkoKTsKKwkJCX0KKworCQl9CisJCXJldHVybiAibm90IGF2YWlsYWJsZSI7CisJfQorfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L2RpYWxvZy9JbnN0YW5jZUxhYmVsUHJvdmlkZXIuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9kaWFsb2cvSW5zdGFuY2VMYWJlbFByb3ZpZGVyLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzVmNmIxNgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9kaWFsb2cvSW5zdGFuY2VMYWJlbFByb3ZpZGVyLmphdmEKQEAgLTAsMCArMSwzNiBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTMgQ0VBIExJU1QuCisgKgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgU2FhZGlhIERob3VpYiAoQ0VBIExJU1QpIHNhYWRpYS5kaG91aWJAY2VhLmZyIC0gSW5pdGlhbCBBUEkgYW5kIGltcGxlbWVudGF0aW9uCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50LmRpYWxvZzsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmpmYWNlLnZpZXdlcnMuTGFiZWxQcm92aWRlcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLk5hbWVkRWxlbWVudDsKKworcHVibGljIGNsYXNzIEluc3RhbmNlTGFiZWxQcm92aWRlciBleHRlbmRzIExhYmVsUHJvdmlkZXIgeworCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyBnZXRUZXh0KE9iamVjdCBlbGVtZW50KSB7CisJCWlmIChlbGVtZW50IGluc3RhbmNlb2YgTmFtZWRFbGVtZW50KSB7CisJCQlTdHJpbmcgaW5zdGFuY2VOYW1lID0gKChOYW1lZEVsZW1lbnQpIGVsZW1lbnQpLmdldE5hbWUoKTsKKwkJCUVsZW1lbnQgb3duZXIgPSAoKEVsZW1lbnQpIGVsZW1lbnQpLmdldE93bmVyKCk7CisJCQlpZiAob3duZXIgaW5zdGFuY2VvZiBOYW1lZEVsZW1lbnQpIHsKKwkJCQlyZXR1cm4gIlBsYW4gIiArICgoTmFtZWRFbGVtZW50KSBvd25lcikuZ2V0TmFtZSgpICsgIjogIiArIGluc3RhbmNlTmFtZTsKKwkJCX0KKwkJCWVsc2UgeworCQkJCXJldHVybiBpbnN0YW5jZU5hbWU7CisJCQl9CisJCX0KKwkJZWxzZSB7CisJCQlyZXR1cm4gIm5vdCBhIG5hbWVkIGVsZW1lbnQiOworCQl9CisJfQorfTsKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9oYW5kbGVycy9BbGxvY2F0ZUhhbmRsZXIuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9oYW5kbGVycy9BbGxvY2F0ZUhhbmRsZXIuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNjE3OTk4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L2hhbmRsZXJzL0FsbG9jYXRlSGFuZGxlci5qYXZhCkBAIC0wLDAgKzEsOTEgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIENFQSBMSVNULgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBEaG91aWIgKENFQSBMSVNUKSBzYWFkaWEuZGhvdWliQGNlYS5mciAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50LmhhbmRsZXJzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5jb21tYW5kcy5FeGVjdXRpb25FdmVudDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5nbWYucnVudGltZS5jb21tb24uY29yZS5jb21tYW5kLkNvbW1hbmRSZXN1bHQ7CitpbXBvcnQgb3JnLmVjbGlwc2UuamZhY2UuZGlhbG9ncy5JRGlhbG9nQ29uc3RhbnRzOworaW1wb3J0IG9yZy5lY2xpcHNlLmpmYWNlLmRpYWxvZ3MuTWVzc2FnZURpYWxvZzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGVwbG95bWVudFBsYW47CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQuQ29tbWFuZFN1cHBvcnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQuRGVwVXRpbHM7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQuUnVubmFibGVXaXRoUmVzdWx0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50LlN0VXRpbHM7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQuZGlhbG9nLkFsbG9jYXRpb25EaWFsb2c7CitpbXBvcnQgb3JnLmVjbGlwc2Uuc3d0LndpZGdldHMuU2hlbGw7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZTsKKworLyoqCisgKiBJbXBsZW1lbnRhdGlvbiBjbGFzcyBmb3IgQ2xhc3NBY3Rpb24gYWN0aW9uCisgKi8KK3B1YmxpYyBjbGFzcyBBbGxvY2F0ZUhhbmRsZXIgZXh0ZW5kcyBDbWRIYW5kbGVyIHsKKworCS8qKgorCSAqIHtAaW5oZXJpdERvY30KKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBpc0VuYWJsZWQoKSB7CisJCXVwZGF0ZVNlbGVjdGVkRU9iamVjdCgpOworCQlFT2JqZWN0IHNlbGVjdGVkT2JqID0gZ2V0U2VsZWN0ZWRFT2JqZWN0KCk7CisJCWlmIChzZWxlY3RlZE9iaiBpbnN0YW5jZW9mIFBhY2thZ2UpIHsKKwkJCXJldHVybiAoU3RVdGlscy5pc0FwcGxpZWQoKFBhY2thZ2UpIHNlbGVjdGVkT2JqLCBEZXBsb3ltZW50UGxhbi5jbGFzcykpOworCQl9CisJCXJldHVybiBmYWxzZTsKKwl9CisKKwkvKioKKwkgKiB7QGluaGVyaXREb2N9CisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBleGVjdXRlKEV4ZWN1dGlvbkV2ZW50IGV2ZW50KSB7CisJCWlmICghKGdldFNlbGVjdGVkRU9iamVjdCgpIGluc3RhbmNlb2YgUGFja2FnZSkpIHsKKwkJCXJldHVybiBudWxsOworCQl9CisKKwkJZmluYWwgUGFja2FnZSBjZHAgPSAoUGFja2FnZSkgZ2V0U2VsZWN0ZWRFT2JqZWN0KCk7CisJCWZpbmFsIFNoZWxsIHNoZWxsID0gbmV3IFNoZWxsKCk7CisKKwkJLy8gY29tLmNlYS5lYzNtLnZzbC5QYXJzZVZTTC50ZXN0KCk7CisJCWlmIChEZXBVdGlscy5nZXRNYWluSW5zdGFuY2UoY2RwKSA9PSBudWxsKSB7CisJCQlNZXNzYWdlRGlhbG9nLm9wZW5JbmZvcm1hdGlvbihzaGVsbCwgIkVycm9yIiwKKwkJCQkJIkRlcGxveW1lbnQgcGxhbiBoYXMgbm8gbWFpbiBpbnN0YW5jZSAoY2hlY2sgc3RlcmVvdHlwZSBhdHRyaWJ1dGUgbWFpbkluc3RhbmNlKSIpOworCQkJcmV0dXJuIG51bGw7CisJCX0KKworCQkvLyAxLiBzZWxlY3QgcG9zc2libGUgY29ubmVjdG9ycyBhY2NvcmRpbmcgdG8gcG9ydCB0eXBlcworCQkvLyAob25seSBzaG93IGNvbXBhdGlibGUgY29ubmVjdG9ycyBjaGVjay1ib3g/KQorCQkvLyAyLiBzZWxlY3QgaW1wbGVtZW50YXRpb24gZ3JvdXAgYWNjb3JkaW5nIHRvIGNvbm5lY3RvciB0eXBlCisKKwkJLy8gY29udGFpbmVyIGRpYWxvZzogZWl0aGVyIGV4dGVuc2lvbiwgcnVsZSBvciBpbnRlcmNlcHRvcgorCQkvLyBob3d0byBzZWxlY3Q/IHdoaWNoPyAoYW5kIGhvd3RvIGFkZC9yZW1vdmU/KSAtIFN0ZCAtIGRpYWxvZyBpcyBnb29kPworCQlDb21tYW5kU3VwcG9ydC5leGVjKCJJbnN0YW5jZSBhbGxvY2F0aW9uIiwgbmV3IFJ1bm5hYmxlV2l0aFJlc3VsdCgpIHsKKworCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQ29tbWFuZFJlc3VsdCBydW4oKSB7CisJCQkJQWxsb2NhdGlvbkRpYWxvZyBhbGxvY0RpYWxvZyA9CisJCQkJCQluZXcgQWxsb2NhdGlvbkRpYWxvZyhzaGVsbCwgY2RwKTsKKwkJCQlhbGxvY0RpYWxvZy5zZXRUaXRsZSgiQWxsb2NhdGUgaW5zdGFuY2VzIik7CisJCQkJYWxsb2NEaWFsb2cub3BlbigpOworCQkJCWlmIChhbGxvY0RpYWxvZy5nZXRSZXR1cm5Db2RlKCkgPT0gSURpYWxvZ0NvbnN0YW50cy5PS19JRCkgeworCQkJCQlyZXR1cm4gQ29tbWFuZFJlc3VsdC5uZXdPS0NvbW1hbmRSZXN1bHQoKTsKKwkJCQl9CisJCQkJZWxzZSB7CisJCQkJCXJldHVybiBDb21tYW5kUmVzdWx0Lm5ld0NhbmNlbGxlZENvbW1hbmRSZXN1bHQoKTsKKwkJCQl9CisJCQl9CisJCX0pOworCisJCXJldHVybiBudWxsOworCX0KK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9oYW5kbGVycy9DbWRIYW5kbGVyLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RlcGxveW1lbnQvaGFuZGxlcnMvQ21kSGFuZGxlci5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVlM2FjNzMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RlcGxveW1lbnQvaGFuZGxlcnMvQ21kSGFuZGxlci5qYXZhCkBAIC0wLDAgKzEsMTQzIEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBDRUEgTElTVC4KKyAqCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBTYWFkaWEgRGhvdWliIChDRUEgTElTVCkgc2FhZGlhLmRob3VpYkBjZWEuZnIgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC5oYW5kbGVyczsKKworCitpbXBvcnQgamF2YS51dGlsLkl0ZXJhdG9yOworaW1wb3J0IGphdmEudXRpbC5MaXN0OworaW1wb3J0IGphdmEudXRpbC5WZWN0b3I7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5jb3JlLmNvbW1hbmRzLkFic3RyYWN0SGFuZGxlcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5jb3JlLmNvbW1hbmRzLkV4ZWN1dGlvbkV2ZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5JQWRhcHRhYmxlOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmdlZi5HcmFwaGljYWxFZGl0UGFydDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5nbWYucnVudGltZS5ub3RhdGlvbi5WaWV3OworaW1wb3J0IG9yZy5lY2xpcHNlLmpmYWNlLmFjdGlvbi5JQWN0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmpmYWNlLnZpZXdlcnMuSVNlbGVjdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZmFjZS52aWV3ZXJzLklTdHJ1Y3R1cmVkU2VsZWN0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLnN3dC53aWRnZXRzLkRpc3BsYXk7CitpbXBvcnQgb3JnLmVjbGlwc2Uuc3d0LndpZGdldHMuU2hlbGw7CitpbXBvcnQgb3JnLmVjbGlwc2UudWkuSU9iamVjdEFjdGlvbkRlbGVnYXRlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVpLklXb3JrYmVuY2hQYXJ0OworaW1wb3J0IG9yZy5lY2xpcHNlLnVpLlBsYXRmb3JtVUk7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuRWxlbWVudDsKKworCisKKworLyoqCisgKiBIYW5kbGVyIGZvciB0aGUgY29tbWFuZCBvZiBjdXN0b21pemF0aW9uIG9mIHRoZSBjb250ZW50IG9mIHRoZSBwcm9wZXJ0aWVzIHZpZXcKKyAqIFRoZSBzYW1lIGNsYXNzIGlzIHVzZWQgZm9yIG1lbnUgYWN0aW9ucyB3aXRoaW4gbW9kZWwgZXhwbG9yZXIgYW5kIGRpYWdyYW0KKyAqLworcHVibGljIGNsYXNzIENtZEhhbmRsZXIgZXh0ZW5kcyBBYnN0cmFjdEhhbmRsZXIgaW1wbGVtZW50cyBJT2JqZWN0QWN0aW9uRGVsZWdhdGUgeworCisJLyoqCisJICoge0Bpbmhlcml0RG9jfQorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZXhlY3V0ZShFeGVjdXRpb25FdmVudCBldmVudCkgeworCQlEaXNwbGF5IGN1cnJlbnQgPSBEaXNwbGF5LmdldEN1cnJlbnQoKTsKKworCQlpZiAoY3VycmVudCA9PSBudWxsKSB7CisJCQljdXJyZW50ID0gRGlzcGxheS5nZXREZWZhdWx0KCk7CisJCX0KKwkJU2hlbGwgc2hlbGwgPSBjdXJyZW50LmdldEFjdGl2ZVNoZWxsKCk7CisKKwkJaWYgKHNoZWxsID09IG51bGwpIHsKKwkJCS8vIEFjdGl2YXRvci5sb2cuZXJyb3IoImltcG9zc2libGUgdG8gZmluZCBhIHNoZWxsIHRvIG9wZW4gdGhlIG1lc3NhZ2UgZGlhbG9nIiwgbnVsbCk7CisJCX0KKworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDb252ZXJ0IGVhY2ggc2VsZWN0ZWQgZWxlbWVudHMgZnJvbSB0aGUgZXhwbG9yYXRvciBtZW51LCBvciBtb2RlbGluZyB2aWV3CisJICogdG8gYW4gRU9iamVjdCBhbmQgYWRkIGl0IHRvIGEgbGlzdAorCSAqCisJICogQHJldHVybiBsaXN0IG9mIEVPYmplY3QKKwkgKi8KKwlwdWJsaWMgdm9pZCB1cGRhdGVTZWxlY3RlZEVPYmplY3QoKSB7CisJCVZlY3RvcjxFT2JqZWN0PiBjdXJyZW50U2VsZWN0ZWRFT2JqZWN0cyA9IG5ldyBWZWN0b3I8RU9iamVjdD4oKTsKKworCQkvLyBSZXRyaWV2ZSBzZWxlY3RlZCBlbGVtZW50cworCQlJU3RydWN0dXJlZFNlbGVjdGlvbiBzZWxlY3Rpb24gPSAoSVN0cnVjdHVyZWRTZWxlY3Rpb24pIFBsYXRmb3JtVUkKKwkJCQkuZ2V0V29ya2JlbmNoKCkuZ2V0QWN0aXZlV29ya2JlbmNoV2luZG93KCkKKwkJCQkuZ2V0U2VsZWN0aW9uU2VydmljZSgpLmdldFNlbGVjdGlvbigpOworCisJCUl0ZXJhdG9yPD8+IGVsdEl0ID0gc2VsZWN0aW9uLml0ZXJhdG9yKCk7CisKKwkJd2hpbGUgKGVsdEl0Lmhhc05leHQoKSkgeworCQkJT2JqZWN0IGN1cnJlbnRPYmplY3QgPSBlbHRJdC5uZXh0KCk7CisKKwkJCS8vIElmIHRoZSBvYmplY3QgaXMgYW4gZWRpdCBwYXJ0LCB0cnkgdG8gZ2V0IHNlbWFudGljIGJyaWRnZQorCQkJaWYgKGN1cnJlbnRPYmplY3QgaW5zdGFuY2VvZiBHcmFwaGljYWxFZGl0UGFydCkgeworCQkJCUdyYXBoaWNhbEVkaXRQYXJ0IGVkaXRQYXJ0ID0gKEdyYXBoaWNhbEVkaXRQYXJ0KSBjdXJyZW50T2JqZWN0OworCQkJCWlmIChlZGl0UGFydC5nZXRNb2RlbCgpIGluc3RhbmNlb2YgVmlldykgeworCQkJCQlWaWV3IHZpZXcgPSAoVmlldykgZWRpdFBhcnQuZ2V0TW9kZWwoKTsKKwkJCQkJaWYgKHZpZXcuZ2V0RWxlbWVudCgpIGluc3RhbmNlb2YgRWxlbWVudCkgeworCQkJCQkJY3VycmVudE9iamVjdCA9IHZpZXcuZ2V0RWxlbWVudCgpOworCQkJCQl9CisJCQkJfQorCQkJfQorCisJCQkvLyBjaGVjayB3aGV0aGVyIHBhcnQgb2YgbW9kZWwgZXhwbG9yZXIKKwkJCWlmIChjdXJyZW50T2JqZWN0IGluc3RhbmNlb2YgSUFkYXB0YWJsZSkgeworCQkJCS8vIG1vZGlzY28gTW9kZWxFbGVtZW50SXRlbSBzdXBwb3J0cyBJQWRhcHRhYmxlIChjbGVhbmVyIHRoYW4gY2FzdCAvIGRlcGVuZGVuY3kgd2l0aCBtb2Rpc2NvKQorCQkJCWN1cnJlbnRPYmplY3QgPSAoKElBZGFwdGFibGUpIGN1cnJlbnRPYmplY3QpLmdldEFkYXB0ZXIoRU9iamVjdC5jbGFzcyk7CisJCQl9CisKKwkJCS8vIElmIGVsZW1lbnQgaXMgYSBVTUwgRWxlbWVudAorCQkJaWYgKGN1cnJlbnRPYmplY3QgaW5zdGFuY2VvZiBFbGVtZW50KSB7CisJCQkJY3VycmVudFNlbGVjdGVkRU9iamVjdHMuYWRkKChFT2JqZWN0KSBjdXJyZW50T2JqZWN0KTsKKwkJCX0KKworCQl9CisJCXNlbGVjdGVkRU9iamVjdHMgPSBjdXJyZW50U2VsZWN0ZWRFT2JqZWN0czsKKwl9CisKKwkvKioKKwkgKiBDb252ZXJ0IGVhY2ggc2VsZWN0ZWQgZWxlbWVudHMgZnJvbSB0aGUgZXhwbG9yZXIgbWVudSwgb3IgbW9kZWxpbmcgdmlldworCSAqIHRvIGFuIEVPYmplY3QgYW5kIGFkZCBpdCB0byBhIGxpc3QKKwkgKgorCSAqIEByZXR1cm4gbGlzdCBvZiBFT2JqZWN0CisJICovCisJcHVibGljIEVPYmplY3QgZ2V0U2VsZWN0ZWRFT2JqZWN0KCkgeworCQlpZiAoc2VsZWN0ZWRFT2JqZWN0cy5zaXplKCkgPiAwKSB7CisJCQlyZXR1cm4gc2VsZWN0ZWRFT2JqZWN0cy5nZXQoMCk7CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJcHVibGljIExpc3Q8RU9iamVjdD4gZ2V0U2VsZWN0ZWRFT2JqZWN0cygpIHsKKwkJcmV0dXJuIHNlbGVjdGVkRU9iamVjdHM7CisJfQorCisJcHJpdmF0ZSBMaXN0PEVPYmplY3Q+IHNlbGVjdGVkRU9iamVjdHM7CisKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBydW4oSUFjdGlvbiBhY3Rpb24pIHsKKwkJLy8gbWV0aG9kIGZyb20gYWN0aW9uLWRlbGVnYXRlCisJfQorCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgc2VsZWN0aW9uQ2hhbmdlZChJQWN0aW9uIGFjdGlvbiwgSVNlbGVjdGlvbiBzZWxlY3Rpb24pIHsKKwkJLy8gbWV0aG9kIGZyb20gYWN0aW9uLWRlbGVnYXRlCisJCXVwZGF0ZVNlbGVjdGVkRU9iamVjdCgpOyAvLyByZXF1aXJlZD8/CisJfQorCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgc2V0QWN0aXZlUGFydChJQWN0aW9uIGFjdGlvbiwgSVdvcmtiZW5jaFBhcnQgdGFyZ2V0UGFydCkgeworCQkvLyBUT0RPIEF1dG8tZ2VuZXJhdGVkIG1ldGhvZCBzdHViCisJfQorfQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9oYW5kbGVycy9Db25maWd1cmVJbnN0YW5jZUhhbmRsZXIuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9oYW5kbGVycy9Db25maWd1cmVJbnN0YW5jZUhhbmRsZXIuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NDI2Nzk5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L2hhbmRsZXJzL0NvbmZpZ3VyZUluc3RhbmNlSGFuZGxlci5qYXZhCkBAIC0wLDAgKzEsMTMyIEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBDRUEgTElTVC4KKyAqCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBTYWFkaWEgRGhvdWliIChDRUEgTElTVCkgc2FhZGlhLmRob3VpYkBjZWEuZnIgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC5oYW5kbGVyczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmNvcmUuY29tbWFuZHMuRXhlY3V0aW9uRXZlbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZ21mLnJ1bnRpbWUuY29tbW9uLmNvcmUuY29tbWFuZC5Db21tYW5kUmVzdWx0OworaW1wb3J0IG9yZy5lY2xpcHNlLmpmYWNlLmRpYWxvZ3MuSURpYWxvZ0NvbnN0YW50czsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC5Db21tYW5kU3VwcG9ydDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC5SdW5uYWJsZVdpdGhSZXN1bHQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQuZGlhbG9nLkNvbmZpZ3VyZUluc3RhbmNlRGlhbG9nOworaW1wb3J0IG9yZy5lY2xpcHNlLnN3dC53aWRnZXRzLlNoZWxsOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5GZWF0dXJlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkluc3RhbmNlU3BlY2lmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5OYW1lZEVsZW1lbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk7CisKKy8qKgorICogSW1wbGVtZW50YXRpb24gY2xhc3MgZm9yIENsYXNzQWN0aW9uIGFjdGlvbgorICovCitwdWJsaWMgY2xhc3MgQ29uZmlndXJlSW5zdGFuY2VIYW5kbGVyIGV4dGVuZHMgQ21kSGFuZGxlciB7CisKKwkvKioKKwkgKiB7QGluaGVyaXREb2N9CisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gaXNFbmFibGVkKCkgeworCQl1cGRhdGVTZWxlY3RlZEVPYmplY3QoKTsKKwkJRU9iamVjdCBzZWxlY3RlZE9iaiA9IGdldFNlbGVjdGVkRU9iamVjdCgpOworCQlpZiAoKHNlbGVjdGVkT2JqIGluc3RhbmNlb2YgQ2xhc3MpIHx8CisJCQkJKHNlbGVjdGVkT2JqIGluc3RhbmNlb2YgQ29ubmVjdG9yKSB8fAorCQkJCShzZWxlY3RlZE9iaiBpbnN0YW5jZW9mIFByb3BlcnR5KSB8fAorCQkJCShzZWxlY3RlZE9iaiBpbnN0YW5jZW9mIEluc3RhbmNlU3BlY2lmaWNhdGlvbikpIHsKKwkJCXJldHVybiB0cnVlOworCQl9CisJCXJldHVybiBmYWxzZTsKKwl9CisKKwkvKgorCSAqIChub24tSmF2YWRvYykKKwkgKgorCSAqIEBzZWUgb3JnLmVjbGlwc2UudWkuSUFjdGlvbkRlbGVnYXRlI3J1bihvcmcuZWNsaXBzZS5qZmFjZS5hY3Rpb24uSUFjdGlvbikKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGV4ZWN1dGUoRXhlY3V0aW9uRXZlbnQgZXZlbnQpIHsKKwkJaWYgKCEoZ2V0U2VsZWN0ZWRFT2JqZWN0KCkgaW5zdGFuY2VvZiBOYW1lZEVsZW1lbnQpKSB7CisJCQlyZXR1cm4gbnVsbDsKKwkJfQorCisJCWZpbmFsIE5hbWVkRWxlbWVudCBlbGVtZW50ID0gKE5hbWVkRWxlbWVudCkgZ2V0U2VsZWN0ZWRFT2JqZWN0KCk7CisJCWZpbmFsIFNoZWxsIHNoZWxsID0gbmV3IFNoZWxsKCk7CisKKwkJLy8gMS4gc2VsZWN0IHBvc3NpYmxlIGNvbm5lY3RvcnMgYWNjb3JkaW5nIHRvIHBvcnQgdHlwZXMKKwkJLy8gKG9ubHkgc2hvdyBjb21wYXRpYmxlIGNvbm5lY3RvcnMgY2hlY2stYm94PykKKwkJLy8gMi4gc2VsZWN0IGltcGxlbWVudGF0aW9uIGdyb3VwIGFjY29yZGluZyB0byBjb25uZWN0b3IgdHlwZQorCisJCWlmIChlbGVtZW50IGluc3RhbmNlb2YgQ2xhc3MpIHsKKwkJCS8vIGNvbnRhaW5lciBkaWFsb2c6IGVpdGhlciBleHRlbnNpb24sIHJ1bGUgb3IgaW50ZXJjZXB0b3IKKwkJCS8vIGhvd3RvIHNlbGVjdD8gd2hpY2g/IChhbmQgaG93dG8gYWRkL3JlbW92ZT8pIC0gU3RkIC0gZGlhbG9nIGlzIGdvb2Q/CisJCQlDb21tYW5kU3VwcG9ydC5leGVjKCJDb25maWd1cmUgYXNzb2NpYXRlZCBjb21wb25lbnQgaW5zdGFuY2UiLCBuZXcgUnVubmFibGVXaXRoUmVzdWx0KCkgeworCisJCQkJQE92ZXJyaWRlCisJCQkJcHVibGljIENvbW1hbmRSZXN1bHQgcnVuKCkgeworCQkJCQlDb25maWd1cmVJbnN0YW5jZURpYWxvZyBjb25maWd1cmVJbnN0YW5jZURpYWxvZyA9CisJCQkJCQkJbmV3IENvbmZpZ3VyZUluc3RhbmNlRGlhbG9nKHNoZWxsKTsKKwkJCQkJaWYgKGNvbmZpZ3VyZUluc3RhbmNlRGlhbG9nLmluaXQoKENsYXNzKSBlbGVtZW50KSkgeworCQkJCQkJY29uZmlndXJlSW5zdGFuY2VEaWFsb2cuc2V0VGl0bGUoIkNvbmZpZ3VyZSBpbnN0YW5jZSIpOworCQkJCQkJY29uZmlndXJlSW5zdGFuY2VEaWFsb2cuc2V0TWVzc2FnZSgiQ29uZmlndXJlIGluc3RhbmNlIGZvciBjb21wb25lbnQgIiArIGVsZW1lbnQuZ2V0TmFtZSgpKTsKKwkJCQkJCWNvbmZpZ3VyZUluc3RhbmNlRGlhbG9nLm9wZW4oKTsKKwkJCQkJCWlmIChjb25maWd1cmVJbnN0YW5jZURpYWxvZy5nZXRSZXR1cm5Db2RlKCkgPT0gSURpYWxvZ0NvbnN0YW50cy5PS19JRCkgeworCQkJCQkJCXJldHVybiBDb21tYW5kUmVzdWx0Lm5ld09LQ29tbWFuZFJlc3VsdCgpOworCQkJCQkJfQorCQkJCQl9CisJCQkJCXJldHVybiBDb21tYW5kUmVzdWx0Lm5ld0NhbmNlbGxlZENvbW1hbmRSZXN1bHQoKTsKKwkJCQl9CisJCQl9KTsKKwkJfSBlbHNlIGlmIChlbGVtZW50IGluc3RhbmNlb2YgRmVhdHVyZSkgeworCQkJLy8gY29udGFpbmVyIGRpYWxvZzogZWl0aGVyIGV4dGVuc2lvbiwgcnVsZSBvciBpbnRlcmNlcHRvcgorCQkJLy8gaG93dG8gc2VsZWN0PyB3aGljaD8gKGFuZCBob3d0byBhZGQvcmVtb3ZlPykgLSBTdGQgLSBkaWFsb2cgaXMgZ29vZD8KKwkJCUNvbW1hbmRTdXBwb3J0LmV4ZWMoIkNvbmZpZ3VyZSBhc3NvY2lhdGVkIGluc3RhbmNlIiwgbmV3IFJ1bm5hYmxlV2l0aFJlc3VsdCgpIHsKKworCQkJCUBPdmVycmlkZQorCQkJCXB1YmxpYyBDb21tYW5kUmVzdWx0IHJ1bigpIHsKKwkJCQkJQ29uZmlndXJlSW5zdGFuY2VEaWFsb2cgY29uZmlndXJlSW5zdGFuY2VEaWFsb2cgPQorCQkJCQkJCW5ldyBDb25maWd1cmVJbnN0YW5jZURpYWxvZyhzaGVsbCk7CisJCQkJCWlmIChjb25maWd1cmVJbnN0YW5jZURpYWxvZy5pbml0KChGZWF0dXJlKSBlbGVtZW50KSkgeworCQkJCQkJY29uZmlndXJlSW5zdGFuY2VEaWFsb2cuc2V0VGl0bGUoIkNvbmZpZ3VyZSBpbnN0YW5jZSIpOworCQkJCQkJY29uZmlndXJlSW5zdGFuY2VEaWFsb2cuc2V0TWVzc2FnZSgiQ29uZmlndXJlIGluc3RhbmNlIGZvciBwcm9wZXJ0eS9jb25uZWN0b3IgIiArIGVsZW1lbnQuZ2V0TmFtZSgpKTsKKwkJCQkJCWNvbmZpZ3VyZUluc3RhbmNlRGlhbG9nLm9wZW4oKTsKKwkJCQkJCWlmIChjb25maWd1cmVJbnN0YW5jZURpYWxvZy5nZXRSZXR1cm5Db2RlKCkgPT0gSURpYWxvZ0NvbnN0YW50cy5PS19JRCkgeworCQkJCQkJCXJldHVybiBDb21tYW5kUmVzdWx0Lm5ld09LQ29tbWFuZFJlc3VsdCgpOworCQkJCQkJfQorCQkJCQl9CisJCQkJCXJldHVybiBDb21tYW5kUmVzdWx0Lm5ld0NhbmNlbGxlZENvbW1hbmRSZXN1bHQoKTsKKwkJCQl9CisJCQl9KTsKKworCisJCX0gZWxzZSBpZiAoZWxlbWVudCBpbnN0YW5jZW9mIEluc3RhbmNlU3BlY2lmaWNhdGlvbikgeworCisJCQlDb21tYW5kU3VwcG9ydC5leGVjKCJDb25maWd1cmUgaW5zdGFuY2UiLCBuZXcgUnVubmFibGVXaXRoUmVzdWx0KCkgeworCisJCQkJQE92ZXJyaWRlCisJCQkJcHVibGljIENvbW1hbmRSZXN1bHQgcnVuKCkgeworCQkJCQlDb25maWd1cmVJbnN0YW5jZURpYWxvZyBjb25maWd1cmVJbnN0YW5jZURpYWxvZyA9CisJCQkJCQkJbmV3IENvbmZpZ3VyZUluc3RhbmNlRGlhbG9nKHNoZWxsKTsKKwkJCQkJaWYgKGNvbmZpZ3VyZUluc3RhbmNlRGlhbG9nLmluaXQoKEluc3RhbmNlU3BlY2lmaWNhdGlvbikgZWxlbWVudCkpIHsKKwkJCQkJCWNvbmZpZ3VyZUluc3RhbmNlRGlhbG9nLnNldE1lc3NhZ2UoIkNvbmZpZ3VyZSBpbnN0YW5jZSAiICsgZWxlbWVudC5nZXROYW1lKCkpOworCQkJCQkJY29uZmlndXJlSW5zdGFuY2VEaWFsb2cub3BlbigpOworCQkJCQkJaWYgKGNvbmZpZ3VyZUluc3RhbmNlRGlhbG9nLmdldFJldHVybkNvZGUoKSA9PSBJRGlhbG9nQ29uc3RhbnRzLk9LX0lEKSB7CisJCQkJCQkJcmV0dXJuIENvbW1hbmRSZXN1bHQubmV3T0tDb21tYW5kUmVzdWx0KCk7CisJCQkJCQl9CisJCQkJCX0KKwkJCQkJcmV0dXJuIENvbW1hbmRSZXN1bHQubmV3Q2FuY2VsbGVkQ29tbWFuZFJlc3VsdCgpOworCQkJCX0KKwkJCX0pOworCQl9CisJCXJldHVybiBudWxsOworCX0KK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9oYW5kbGVycy9DcmVhdGVEZXBQbGFuSGFuZGxlci5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L2hhbmRsZXJzL0NyZWF0ZURlcFBsYW5IYW5kbGVyLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWI5MmNmZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9oYW5kbGVycy9DcmVhdGVEZXBQbGFuSGFuZGxlci5qYXZhCkBAIC0wLDAgKzEsMTUyIEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBDRUEgTElTVC4KKyAqCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBTYWFkaWEgRGhvdWliIChDRUEgTElTVCkgc2FhZGlhLmRob3VpYkBjZWEuZnIgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQuaGFuZGxlcnM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5jb3JlLmNvbW1hbmRzLkV4ZWN1dGlvbkV2ZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmdtZi5ydW50aW1lLmNvbW1vbi5jb3JlLmNvbW1hbmQuQ29tbWFuZFJlc3VsdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZmFjZS5kaWFsb2dzLk1lc3NhZ2VEaWFsb2c7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRlcGxveW1lbnRQbGFuOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FbnZpcm9ubWVudDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC5Db21tYW5kU3VwcG9ydDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC5EZXBDcmVhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC5EZXBQbGFuU3luYzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC5EZXBQbGFuVXRpbHM7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQuUnVubmFibGVXaXRoUmVzdWx0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50LlN0VXRpbHM7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQuVHJhbnNmb3JtYXRpb25FeGNlcHRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQuVXRpbHM7CitpbXBvcnQgb3JnLmVjbGlwc2Uuc3d0LndpZGdldHMuU2hlbGw7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuSW5zdGFuY2VTcGVjaWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLk5hbWVkRWxlbWVudDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlN0ZXJlb3R5cGU7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwudXRpbC5VTUxVdGlsOworCitwdWJsaWMgY2xhc3MgQ3JlYXRlRGVwUGxhbkhhbmRsZXIgZXh0ZW5kcyBDbWRIYW5kbGVyIHsKKworCXByaXZhdGUgZmluYWwgU3RyaW5nIERlcFBsYW5Qb3N0Zml4ID0gIkRlcFBsYW4iOworCisJcHJpdmF0ZSBQYWNrYWdlIGRlcFBsYW5zOworCisJLyoqCisJICoge0Bpbmhlcml0RG9jfQorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGlzRW5hYmxlZCgpIHsKKwkJdXBkYXRlU2VsZWN0ZWRFT2JqZWN0KCk7CisJCUVPYmplY3Qgc2VsZWN0ZWRPYmogPSBnZXRTZWxlY3RlZEVPYmplY3QoKTsKKwkJaWYgKHNlbGVjdGVkT2JqIGluc3RhbmNlb2YgQ2xhc3MgICYmIGlzRW52aXJvbm1lbnQoKENsYXNzKSBzZWxlY3RlZE9iaikpIHsKKwkJCXJldHVybiB0cnVlOworCQl9CisJCXJldHVybiBmYWxzZTsKKwl9CisKKwlwcml2YXRlIGJvb2xlYW4gaXNFbnZpcm9ubWVudChDbGFzcyBlbHQpIHsKKwkJRW52aXJvbm1lbnQgZW52aXJvbm1lbnQgPSBVTUxVdGlsLmdldFN0ZXJlb3R5cGVBcHBsaWNhdGlvbihlbHQsIEVudmlyb25tZW50LmNsYXNzKTsKKwkJaWYgKGVudmlyb25tZW50ICE9IG51bGwpIHsKKwkJCXJldHVybiB0cnVlOworCQl9CisKKwkJcmV0dXJuIGZhbHNlOworCisJfQorCisJLyoqCisJICoge0Bpbmhlcml0RG9jfQorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZXhlY3V0ZShFeGVjdXRpb25FdmVudCBldmVudCkgeworCQlpZiAoIShnZXRTZWxlY3RlZEVPYmplY3QoKSBpbnN0YW5jZW9mIENsYXNzKSkgeworCQkJcmV0dXJuIG51bGw7CisJCX0KKwkJZmluYWwgQ2xhc3Mgc2VsZWN0ZWRDb21wb3NpdGUgPSAoQ2xhc3MpIGdldFNlbGVjdGVkRU9iamVjdCgpOworCisJCUNvbW1hbmRTdXBwb3J0LmV4ZWMoIkNyZWF0ZSBkZXBsb3ltZW50IHBsYW5zIiwgbmV3IFJ1bm5hYmxlKCkgeworCisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyB2b2lkIHJ1bigpIHsKKwkJCQkvLyBleGVjdXRlIHdpdGggdHJhbnNhY3Rpb24gc3VwcG9ydAorCQkJCWRlcFBsYW5zID0gRGVwUGxhblV0aWxzLmdldERlcFBsYW5Sb290KHNlbGVjdGVkQ29tcG9zaXRlKTsKKwkJCX0KKwkJfSk7CisKKwkJdHJ5IHsKKwkJCVN0cmluZyBuYW1lID0gc2VsZWN0ZWRDb21wb3NpdGUuZ2V0TmFtZSgpICsgRGVwUGxhblBvc3RmaXg7CisJCQlpZiAoZGVwUGxhbnMuZ2V0TWVtYmVyKG5hbWUpICE9IG51bGwpIHsKKwkJCQlTaGVsbCBzaGVsbCA9IG5ldyBTaGVsbCgpOworCQkJCVN0cmluZyBkaWFsb2dCdXR0b25MYWJlbHNbXSA9IG5ldyBTdHJpbmdbXSB7CisJCQkJCQkiQ2FuY2VsIiwKKwkJCQkJCSJTeW5jaHJvbml6ZSIsCisJCQkJCQkiY3JlYXRlIG5ldyAoYXV0byBudW1iZXIgbmFtZSkiCisJCQkJfTsKKwkJCQlNZXNzYWdlRGlhbG9nIGRpYWxvZyA9IG5ldyBNZXNzYWdlRGlhbG9nKHNoZWxsLCAiV2hhdCBzaG91bGQgSSBkbz8iLCBudWxsLAorCQkJCQkJIkRlcGxveW1lbnQgcGxhbiB3aXRoIG5hbWUgXCIiICsgbmFtZSArICJcIiBleGlzdHMgYWxyZWFkeS4gWW91IGNhbiBhbHdheXMgc3luY2hyb25pemUgYW4gIiArCisJCQkJCQkJCSJleGlzdGluZyBkZXBsb3ltZW50IHBsYW4gdmlhIHRoZSBjb250ZXh0IG1lbnUgXCJTeW5jaHJvbml6ZSBkZXJpdmVkIGVsZW1lbnRzXCIiLAorCQkJCQkJTWVzc2FnZURpYWxvZy5RVUVTVElPTiwgZGlhbG9nQnV0dG9uTGFiZWxzLCAwKTsKKwkJCQlpbnQgcmVzdWx0ID0gZGlhbG9nLm9wZW4oKTsKKwkJCQlpZiAocmVzdWx0ID09IDApIHsKKwkJCQkJcmV0dXJuIG51bGw7CisJCQkJfQorCQkJCWVsc2UgaWYgKHJlc3VsdCA9PSAxKSB7CisJCQkJCU5hbWVkRWxlbWVudCBleGlzdGluZyA9IGRlcFBsYW5zLmdldE1lbWJlcihuYW1lKTsKKwkJCQkJaWYgKGV4aXN0aW5nIGluc3RhbmNlb2YgUGFja2FnZSkgeworCQkJCQkJRGVwUGxhblN5bmMuc3luY0RlcFBsYW4oKFBhY2thZ2UpIGV4aXN0aW5nKTsKKwkJCQkJfQorCQkJCQllbHNlIHsKKwkJCQkJCU1lc3NhZ2VEaWFsb2cub3BlbkVycm9yKHNoZWxsLCAiQ2Fubm90IHN5bmNocm9uaXplIiwgIkVsZW1lbnQgd2l0aCBuYW1lIFwiIiArIG5hbWUgKyAiXCIgZXhpc3RzLCBidXQgaXMgbm90IGEgcGFja2FnZSIpOworCQkJCQl9CisJCQkJfQorCQkJCWVsc2UgeworCQkJCQlmb3IgKGludCBpID0gMjs7IGkrKykgeworCQkJCQkJbmFtZSA9IHNlbGVjdGVkQ29tcG9zaXRlLmdldE5hbWUoKSArIERlcFBsYW5Qb3N0Zml4ICsgaTsKKwkJCQkJCWlmIChkZXBQbGFucy5nZXRNZW1iZXIobmFtZSkgPT0gbnVsbCkgeworCQkJCQkJCWJyZWFrOworCQkJCQkJfQorCQkJCQl9CisKKwkJCQl9CisJCQl9CisJCQlmaW5hbCBTdHJpbmcgZGVwUGxhbk5hbWUgPSBuYW1lOworCisJCQlDb21tYW5kU3VwcG9ydC5leGVjKCJDcmVhdGUgZGVwbG95bWVudCBwbGFuIiwgbmV3IFJ1bm5hYmxlV2l0aFJlc3VsdCgpIHsKKworCQkJCUBPdmVycmlkZQorCQkJCXB1YmxpYyBDb21tYW5kUmVzdWx0IHJ1bigpIHsKKwkJCQkJUGFja2FnZSBjZHAgPSBkZXBQbGFucy5jcmVhdGVOZXN0ZWRQYWNrYWdlKGRlcFBsYW5OYW1lKTsKKwkJCQkJU3RlcmVvdHlwZSBzdCA9IFN0VXRpbHMuYXBwbHkoY2RwLCBEZXBsb3ltZW50UGxhbi5jbGFzcyk7CisJCQkJCWlmIChzdCA9PSBudWxsKSB7CisJCQkJCQlNZXNzYWdlRGlhbG9nLm9wZW5JbmZvcm1hdGlvbihuZXcgU2hlbGwoKSwgIkNhbm5vdCBjcmVhdGUgZGVwbG95bWVudCBwbGFuIiwKKwkJCQkJCQkJIkFwcGxpY2F0aW9uIG9mIHN0ZXJlb3R5cGUgXCJSb2JvdE1MOjpEZXBsb3ltZW50UGxhblwiIGZhaWxlZC4gQ2hlY2ssIGlmIFJvYm90TUwgcHJvZmlsZSBpcyBhcHBsaWVkIik7CisJCQkJCQlyZXR1cm4gQ29tbWFuZFJlc3VsdC5uZXdFcnJvckNvbW1hbmRSZXN1bHQoImNhbm5vdCBjcmVhdGUgZGVwbG95bWVudCBwbGFuIik7CisJCQkJCX0KKwkJCQkJdHJ5IHsKKwkJCQkJCUluc3RhbmNlU3BlY2lmaWNhdGlvbiBuZXdSb290SVMgPQorCQkJCQkJCQlEZXBDcmVhdGlvbi5jcmVhdGVEZXBQbGFuKGNkcCwgc2VsZWN0ZWRDb21wb3NpdGUsICJtYWluSW5zdGFuY2UiLCB0cnVlKTsKKwkJCQkJCURlcENyZWF0aW9uLmluaXRBdXRvVmFsdWVzKG5ld1Jvb3RJUyk7CisJCQkJCQlyZXR1cm4gQ29tbWFuZFJlc3VsdC5uZXdPS0NvbW1hbmRSZXN1bHQoKTsKKwkJCQkJfQorCQkJCQljYXRjaCAoVHJhbnNmb3JtYXRpb25FeGNlcHRpb24gZSkgeworCQkJCQkJTWVzc2FnZURpYWxvZy5vcGVuSW5mb3JtYXRpb24obmV3IFNoZWxsKCksICJFcnJvciBkdXJpbmcgZGVwbG95bWVudCBwbGFuIGNyZWF0aW9uIiwKKwkJCQkJCQkJZS5nZXRNZXNzYWdlKCkpOworCQkJCQkJcmV0dXJuIENvbW1hbmRSZXN1bHQubmV3RXJyb3JDb21tYW5kUmVzdWx0KGUuZ2V0TWVzc2FnZSgpKTsKKwkJCQkJfQorCQkJCX0KKwkJCX0pOworCisJCX0gY2F0Y2ggKEV4Y2VwdGlvbiBlKSB7CisJCQllLnByaW50U3RhY2tUcmFjZSgpOworCQl9CisJCXJldHVybiBudWxsOworCX0KK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9oYW5kbGVycy9DcmVhdGVQbGF0Zm9ybUhhbmRsZXIuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9oYW5kbGVycy9DcmVhdGVQbGF0Zm9ybUhhbmRsZXIuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMzczZmI2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L2hhbmRsZXJzL0NyZWF0ZVBsYXRmb3JtSGFuZGxlci5qYXZhCkBAIC0wLDAgKzEsMTAwIEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBDRUEgTElTVC4KKyAqCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBTYWFkaWEgRGhvdWliIChDRUEgTElTVCkgc2FhZGlhLmRob3VpYkBjZWEuZnIgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQuaGFuZGxlcnM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5jb3JlLmNvbW1hbmRzLkV4ZWN1dGlvbkV2ZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmpmYWNlLmRpYWxvZ3MuTWVzc2FnZURpYWxvZzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGxhdGZvcm07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQuQ29tbWFuZFN1cHBvcnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQuRGVwQ3JlYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQuVHJhbnNmb3JtYXRpb25FeGNlcHRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQuVXRpbHM7CitpbXBvcnQgb3JnLmVjbGlwc2Uuc3d0LndpZGdldHMuU2hlbGw7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC51dGlsLlVNTFV0aWw7CisKK3B1YmxpYyBjbGFzcyBDcmVhdGVQbGF0Zm9ybUhhbmRsZXIgZXh0ZW5kcyBDbWRIYW5kbGVyIHsKKworCXByaXZhdGUgUGFja2FnZSBwbGF0Zm9ybTsKKworCS8qKgorCSAqIHtAaW5oZXJpdERvY30KKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBpc0VuYWJsZWQoKSB7CisJCXVwZGF0ZVNlbGVjdGVkRU9iamVjdCgpOworCQlFT2JqZWN0IHNlbGVjdGVkT2JqID0gZ2V0U2VsZWN0ZWRFT2JqZWN0KCk7CisJCWlmIChzZWxlY3RlZE9iaiBpbnN0YW5jZW9mIENsYXNzICYmIGlzUGxhdGZvcm0oKENsYXNzKSBzZWxlY3RlZE9iaikpIHsKKwkJCXJldHVybiB0cnVlOworCQl9CisJCXJldHVybiBmYWxzZTsKKwl9CisKKwlwcml2YXRlIGJvb2xlYW4gaXNQbGF0Zm9ybShDbGFzcyBlbHQpIHsKKwkJUGxhdGZvcm0gcGxhdGZvcm0gPSBVTUxVdGlsLmdldFN0ZXJlb3R5cGVBcHBsaWNhdGlvbihlbHQsIFBsYXRmb3JtLmNsYXNzKTsKKwkJaWYgKHBsYXRmb3JtICE9IG51bGwpIHsKKwkJCXJldHVybiB0cnVlOworCQl9CisJCXJldHVybiBmYWxzZTsKKworCisJfQorCisJLyoqCisJICoge0Bpbmhlcml0RG9jfQorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZXhlY3V0ZShFeGVjdXRpb25FdmVudCBldmVudCkgeworCQlpZiAoIShnZXRTZWxlY3RlZEVPYmplY3QoKSBpbnN0YW5jZW9mIENsYXNzKSkgeworCQkJcmV0dXJuIG51bGw7CisJCX0KKwkJZmluYWwgQ2xhc3Mgc2VsZWN0ZWRDb21wb3NpdGUgPSAoQ2xhc3MpIGdldFNlbGVjdGVkRU9iamVjdCgpOworCisJCUNvbW1hbmRTdXBwb3J0LmV4ZWMoIkNyZWF0ZSBwbGF0Zm9ybSBtb2RlbCIsIG5ldyBSdW5uYWJsZSgpIHsKKworCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgdm9pZCBydW4oKSB7CisJCQkJLy8gZXhlY3V0ZSB3aXRoIHRyYW5zYWN0aW9uIHN1cHBvcnQKKwkJCQlwbGF0Zm9ybSA9IFV0aWxzLmdldFJvb3Qoc2VsZWN0ZWRDb21wb3NpdGUsICJQbGF0Zm9ybU1vZGVsIik7CisJCQl9CisJCX0pOworCisJCWZpbmFsIFN0cmluZyBuZXdQbGF0Zm9ybSA9IHNlbGVjdGVkQ29tcG9zaXRlLmdldE5hbWUoKSArICJQbGF0Zm9ybSI7CisKKwkJdHJ5IHsKKwkJCWlmIChwbGF0Zm9ybS5nZXRNZW1iZXIobmV3UGxhdGZvcm0pICE9IG51bGwpIHsKKwkJCQlTaGVsbCBzaGVsbCA9IG5ldyBTaGVsbCgpOworCQkJCU1lc3NhZ2VEaWFsb2cub3BlbkluZm9ybWF0aW9uKHNoZWxsLCAiRXJyb3IiLAorCQkJCQkJIlBsYXRmb3JtIGRlZmluaXRpb24gXCIiICsgbmV3UGxhdGZvcm0gKyAiXCIgZXhpc3RzIGFscmVhZHkiKTsKKwkJCX0gZWxzZSB7CisJCQkJQ29tbWFuZFN1cHBvcnQuZXhlYygiQ3JlYXRlIHBsYXRmb3JtIGRlZmluaXRpb24iLCBuZXcgUnVubmFibGUoKSB7CisKKwkJCQkJQE92ZXJyaWRlCisJCQkJCXB1YmxpYyB2b2lkIHJ1bigpIHsKKwkJCQkJCVBhY2thZ2UgcGxhdGZvcm1Qa2cgPSBwbGF0Zm9ybS5jcmVhdGVOZXN0ZWRQYWNrYWdlKG5ld1BsYXRmb3JtKTsKKwkJCQkJCXRyeSB7CisJCQkJCQkJRGVwQ3JlYXRpb24uY3JlYXRlUGxhdGZvcm1JbnN0YW5jZXMocGxhdGZvcm1Qa2csIHNlbGVjdGVkQ29tcG9zaXRlLCBudWxsKTsKKwkJCQkJCX0KKwkJCQkJCWNhdGNoIChUcmFuc2Zvcm1hdGlvbkV4Y2VwdGlvbiBlKSB7CisJCQkJCQkJU3lzdGVtLmVyci5wcmludGxuKGUpOworCQkJCQkJfQorCQkJCQl9CisJCQkJfSk7CisJCQl9CisJCX0gY2F0Y2ggKEV4Y2VwdGlvbiBlKSB7CisJCQllLnByaW50U3RhY2tUcmFjZSgpOworCQl9CisJCXJldHVybiBudWxsOworCX0KK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9saXN0ZW5lci9Db3B5TGlzdGVuZXIuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGVwbG95bWVudC9saXN0ZW5lci9Db3B5TGlzdGVuZXIuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jNzViM2MwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kZXBsb3ltZW50L2xpc3RlbmVyL0NvcHlMaXN0ZW5lci5qYXZhCkBAIC0wLDAgKzEsMzUgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIENFQSBMSVNULgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBEaG91aWIgKENFQSBMSVNUKSBzYWFkaWEuZGhvdWliQGNlYS5mciAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGVwbG95bWVudC5saXN0ZW5lcjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kZXBsb3ltZW50LkNvcHk7CisKKy8qKgorICogSW50ZXJmYWNlIGZvciBsaXN0ZW5lcnMgdGhhdCBhcmUgbm90aWZpZWQgZm9yIHRoZSBhZGRpdGlvbiBvZiBhIGNsYXNzaWZpZXIKKyAqIHZpYSBjb3B5CisgKgorICogQHNlZSBjb20uY2VhLmVjM20uZ2VudG9vbHMuY29yZS50cmFuc2Zvcm1hdGlvbnMuQ29weQorICovCitwdWJsaWMgaW50ZXJmYWNlIENvcHlMaXN0ZW5lciB7CisKKwkvKioKKwkgKiBJcyBjYWxsZWQgZm9yIGVhY2ggRU9iamVjdCB0aGF0IGlzIGNvcGllZC4gSWYgaXQgcmV0dXJucyBudWxsLCB0aGUKKwkgKiBpbmRpY2F0ZWQgb2JqZWN0IHNob3VsZCBub3QgYmUgY29waWVkLiBJZiBpdCByZXR1cm5zIGEgZGlmZmVyZW50IG9iamVjdAorCSAqIHRoYW4gdGhlIHBhc3NlZCBFT2JqZWN0LCB0aGlzIG9iamVjdCBpcyB1c2VkICh0aGUgcmV0dXJuZWQgb2JqZWN0IG9mIHRoZQorCSAqIGZpcnN0IGxpc3RlbmVyIGlzIHVzZWQpLgorCSAqCisJICogQHBhcmFtIHNvdXJjZUVPYmoKKwkgKiAgICAgICAgICAgIHRoZSBhZGRlZCBjbGFzc2lmaWVyCisJICovCisJcHVibGljIEVPYmplY3QgY29weUVPYmplY3QoQ29weSBjb3B5LCBFT2JqZWN0IHNvdXJjZUVPYmopOworfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLy5jbGFzc3BhdGggYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vLmNsYXNzcGF0aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yODhhNzgwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLy5jbGFzc3BhdGgKQEAgLTAsMCArMSw3IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPGNsYXNzcGF0aD4KKwk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLkpSRV9DT05UQUlORVIvb3JnLmVjbGlwc2UuamR0LmludGVybmFsLmRlYnVnLnVpLmxhdW5jaGVyLlN0YW5kYXJkVk1UeXBlL0oyU0UtMS41Ii8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UucGRlLmNvcmUucmVxdWlyZWRQbHVnaW5zIi8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9InNyYyIgcGF0aD0ic3JjIi8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9Im91dHB1dCIgcGF0aD0idGFyZ2V0L2NsYXNzZXMiLz4KKzwvY2xhc3NwYXRoPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLy5wcm9qZWN0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLy5wcm9qZWN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZmMjg2ZDIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vLnByb2plY3QKQEAgLTAsMCArMSw0MCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxwcm9qZWN0RGVzY3JpcHRpb24+CisJPG5hbWU+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uPC9uYW1lPgorCTxjb21tZW50PjwvY29tbWVudD4KKwk8cHJvamVjdHM+CisJPC9wcm9qZWN0cz4KKwk8YnVpbGRTcGVjPgorCQk8YnVpbGRDb21tYW5kPgorCQkJPG5hbWU+b3JnLmVjbGlwc2UueHRleHQudWkuc2hhcmVkLnh0ZXh0QnVpbGRlcjwvbmFtZT4KKwkJCTxhcmd1bWVudHM+CisJCQk8L2FyZ3VtZW50cz4KKwkJPC9idWlsZENvbW1hbmQ+CisJCTxidWlsZENvbW1hbmQ+CisJCQk8bmFtZT5vcmcuZWNsaXBzZS5qZHQuY29yZS5qYXZhYnVpbGRlcjwvbmFtZT4KKwkJCTxhcmd1bWVudHM+CisJCQk8L2FyZ3VtZW50cz4KKwkJPC9idWlsZENvbW1hbmQ+CisJCTxidWlsZENvbW1hbmQ+CisJCQk8bmFtZT5vcmcuZWNsaXBzZS5wZGUuTWFuaWZlc3RCdWlsZGVyPC9uYW1lPgorCQkJPGFyZ3VtZW50cz4KKwkJCTwvYXJndW1lbnRzPgorCQk8L2J1aWxkQ29tbWFuZD4KKwkJPGJ1aWxkQ29tbWFuZD4KKwkJCTxuYW1lPm9yZy5lY2xpcHNlLnBkZS5TY2hlbWFCdWlsZGVyPC9uYW1lPgorCQkJPGFyZ3VtZW50cz4KKwkJCTwvYXJndW1lbnRzPgorCQk8L2J1aWxkQ29tbWFuZD4KKwkJPGJ1aWxkQ29tbWFuZD4KKwkJCTxuYW1lPm9yZy5lY2xpcHNlLm0yZS5jb3JlLm1hdmVuMkJ1aWxkZXI8L25hbWU+CisJCQk8YXJndW1lbnRzPgorCQkJPC9hcmd1bWVudHM+CisJCTwvYnVpbGRDb21tYW5kPgorCTwvYnVpbGRTcGVjPgorCTxuYXR1cmVzPgorCQk8bmF0dXJlPm9yZy5lY2xpcHNlLm0yZS5jb3JlLm1hdmVuMk5hdHVyZTwvbmF0dXJlPgorCQk8bmF0dXJlPm9yZy5lY2xpcHNlLnBkZS5QbHVnaW5OYXR1cmU8L25hdHVyZT4KKwkJPG5hdHVyZT5vcmcuZWNsaXBzZS5qZHQuY29yZS5qYXZhbmF0dXJlPC9uYXR1cmU+CisJCTxuYXR1cmU+b3JnLmVjbGlwc2UueHRleHQudWkuc2hhcmVkLnh0ZXh0TmF0dXJlPC9uYXR1cmU+CisJPC9uYXR1cmVzPgorPC9wcm9qZWN0RGVzY3JpcHRpb24+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vLnNldHRpbmdzL29yZy5lY2xpcHNlLmNvcmUucmVzb3VyY2VzLnByZWZzIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5wcmVmcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45OWYyNmMwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5wcmVmcwpAQCAtMCwwICsxLDIgQEAKK2VjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCitlbmNvZGluZy88cHJvamVjdD49VVRGLTgKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQxNmY0ZmIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCkBAIC0wLDAgKzEsMTEgQEAKK2VjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLmlubGluZUpzckJ5dGVjb2RlPWVuYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MS41CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnVudXNlZExvY2FsPXByZXNlcnZlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlPTEuNQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubGluZU51bWJlcj1nZW5lcmF0ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubG9jYWxWYXJpYWJsZT1nZW5lcmF0ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcuc291cmNlRmlsZT1nZW5lcmF0ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5hc3NlcnRJZGVudGlmaWVyPWVycm9yCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVudW1JZGVudGlmaWVyPWVycm9yCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5zb3VyY2U9MS41CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vLnNldHRpbmdzL29yZy5lY2xpcHNlLm0yZS5jb3JlLnByZWZzIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5tMmUuY29yZS5wcmVmcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mODk3YTdmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5tMmUuY29yZS5wcmVmcwpAQCAtMCwwICsxLDQgQEAKK2FjdGl2ZVByb2ZpbGVzPQorZWNsaXBzZS5wcmVmZXJlbmNlcy52ZXJzaW9uPTEKK3Jlc29sdmVXb3Jrc3BhY2VQcm9qZWN0cz10cnVlCit2ZXJzaW9uPTEKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9NRVRBLUlORi9NQU5JRkVTVC5NRiBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9NRVRBLUlORi9NQU5JRkVTVC5NRgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NzYwZjdmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL01FVEEtSU5GL01BTklGRVNULk1GCkBAIC0wLDAgKzEsMzIgQEAKK01hbmlmZXN0LVZlcnNpb246IDEuMAorRXhwb3J0LVBhY2thZ2U6IG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi5jb21tYW5kcywKKyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24uZWRpdHBvbGljaWVzCitSZXF1aXJlLUJ1bmRsZTogb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLAorIG9yZy5lY2xpcHNlLnBhcHlydXMuaW5mcmEuY29yZTtidW5kbGUtdmVyc2lvbj0iMS4yLjAiLAorIG9yZy5lY2xpcHNlLnVtbDIudW1sO2J1bmRsZS12ZXJzaW9uPSI0LjEuMCIsCisgb3JnLmVjbGlwc2UucGFweXJ1cy51bWwudG9vbHMudXRpbHM7YnVuZGxlLXZlcnNpb249IjEuMi4wIiwKKyBvcmcuZWNsaXBzZS5jb3JlLmV4cHJlc3Npb25zLAorIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbDtidW5kbGUtdmVyc2lvbj0iMS4yLjAiLAorIG9yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXM7YnVuZGxlLXZlcnNpb249IjEuMi4wIiwKKyBvcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5kaWFncmFtLmNvbW1vbjtidW5kbGUtdmVyc2lvbj0iMS4yLjAiLAorIG9yZy5lY2xpcHNlLmdtZi5ydW50aW1lLmdlZi51aTtidW5kbGUtdmVyc2lvbj0iMS40LjEiLAorIG9yZy5lY2xpcHNlLnBhcHlydXMuaW5mcmEudmlld3BvaW50cy5wb2xpY3k7YnVuZGxlLXZlcnNpb249IjEuMi4wIiwKKyBvcmcuZWNsaXBzZS5wYXB5cnVzLmluZnJhLmdtZmRpYWcuY29tbW9uO2J1bmRsZS12ZXJzaW9uPSIxLjIuMCIsCisgb3JnLmVjbGlwc2UuZ21mLnJ1bnRpbWUuZGlhZ3JhbS51aTtidW5kbGUtdmVyc2lvbj0iMS43LjAiLAorIG9yZy5lY2xpcHNlLnBhcHlydXMudW1sLmRpYWdyYW0uY29tcG9zaXRlO2J1bmRsZS12ZXJzaW9uPSIxLjIuMCIsCisgb3JnLmVjbGlwc2UucGFweXJ1cy5pbmZyYS5jb3JlLmxvZztidW5kbGUtdmVyc2lvbj0iMS4yLjAiLAorIG9yZy5lY2xpcHNlLnBhcHlydXMuaW5mcmEuZW1mO2J1bmRsZS12ZXJzaW9uPSIxLjIuMCIsCisgb3JnLmVjbGlwc2UucGFweXJ1cy51bWwudG9vbHM7YnVuZGxlLXZlcnNpb249IjEuMi4wIiwKKyBvcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5kaWFncmFtLmNvbW11bmljYXRpb247YnVuZGxlLXZlcnNpb249IjEuMi4wIiwKKyBvcmcuZWNsaXBzZS51aS5pZGU7YnVuZGxlLXZlcnNpb249IjMuOS4wIiwKKyBvcmcuZWNsaXBzZS5nbWYucnVudGltZS5ub3RhdGlvbi5lZGl0LAorIG9yZy5lY2xpcHNlLnBhcHlydXMudW1sLmRpYWdyYW0uY2xheno7YnVuZGxlLXZlcnNpb249IjEuMi4wIgorQnVuZGxlLVZlbmRvcjogJUJ1bmRsZS1WZW5kb3IKK0J1bmRsZS1BY3RpdmF0aW9uUG9saWN5OiBsYXp5CitCdW5kbGUtVmVyc2lvbjogMS4yLjAucXVhbGlmaWVyCitCdW5kbGUtTG9jYWxpemF0aW9uOiBwbHVnaW4KK0J1bmRsZS1OYW1lOiAlQnVuZGxlLU5hbWUKK0J1bmRsZS1BY3RpdmF0b3I6IG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi5BY3RpdmF0b3IKK0J1bmRsZS1NYW5pZmVzdFZlcnNpb246IDIKK0J1bmRsZS1TeW1ib2xpY05hbWU6IG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbjtzaW5nbGV0b246PXRydWUKK0J1bmRsZS1SZXF1aXJlZEV4ZWN1dGlvbkVudmlyb25tZW50OiBKMlNFLTEuNQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2Fib3V0Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vYWJvdXQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kMzVkNWFlCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2Fib3V0Lmh0bWwKQEAgLTAsMCArMSwyOCBAQAorPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgU3RyaWN0Ly9FTiIKKyAgICAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtc3RyaWN0LmR0ZCI+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Cis8aGVhZD4KKzxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEiLz4KKzx0aXRsZT5BYm91dDwvdGl0bGU+Cis8L2hlYWQ+Cis8Ym9keSBsYW5nPSJFTi1VUyI+Cis8aDI+QWJvdXQgVGhpcyBDb250ZW50PC9oMj4KKyAKKzxwPkp1bmUgNSwgMjAwNzwvcD4JCis8aDM+TGljZW5zZTwvaDM+CisKKzxwPlRoZSBFY2xpcHNlIEZvdW5kYXRpb24gbWFrZXMgYXZhaWxhYmxlIGFsbCBjb250ZW50IGluIHRoaXMgcGx1Zy1pbiAoJnF1b3Q7Q29udGVudCZxdW90OykuICBVbmxlc3Mgb3RoZXJ3aXNlIAoraW5kaWNhdGVkIGJlbG93LCB0aGUgQ29udGVudCBpcyBwcm92aWRlZCB0byB5b3UgdW5kZXIgdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIG9mIHRoZQorRWNsaXBzZSBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDEuMCAoJnF1b3Q7RVBMJnF1b3Q7KS4gIEEgY29weSBvZiB0aGUgRVBMIGlzIGF2YWlsYWJsZSAKK2F0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sIj5odHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbDwvYT4uCitGb3IgcHVycG9zZXMgb2YgdGhlIEVQTCwgJnF1b3Q7UHJvZ3JhbSZxdW90OyB3aWxsIG1lYW4gdGhlIENvbnRlbnQuPC9wPgorCis8cD5JZiB5b3UgZGlkIG5vdCByZWNlaXZlIHRoaXMgQ29udGVudCBkaXJlY3RseSBmcm9tIHRoZSBFY2xpcHNlIEZvdW5kYXRpb24sIHRoZSBDb250ZW50IGlzIAorYmVpbmcgcmVkaXN0cmlidXRlZCBieSBhbm90aGVyIHBhcnR5ICgmcXVvdDtSZWRpc3RyaWJ1dG9yJnF1b3Q7KSBhbmQgZGlmZmVyZW50IHRlcm1zIGFuZCBjb25kaXRpb25zIG1heQorYXBwbHkgdG8geW91ciB1c2Ugb2YgYW55IG9iamVjdCBjb2RlIGluIHRoZSBDb250ZW50LiAgQ2hlY2sgdGhlIFJlZGlzdHJpYnV0b3IncyBsaWNlbnNlIHRoYXQgd2FzIAorcHJvdmlkZWQgd2l0aCB0aGUgQ29udGVudC4gIElmIG5vIHN1Y2ggbGljZW5zZSBleGlzdHMsIGNvbnRhY3QgdGhlIFJlZGlzdHJpYnV0b3IuICBVbmxlc3Mgb3RoZXJ3aXNlCitpbmRpY2F0ZWQgYmVsb3csIHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB0aGUgRVBMIHN0aWxsIGFwcGx5IHRvIGFueSBzb3VyY2UgY29kZSBpbiB0aGUgQ29udGVudAorYW5kIHN1Y2ggc291cmNlIGNvZGUgbWF5IGJlIG9idGFpbmVkIGF0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvIj5odHRwOi8vd3d3LmVjbGlwc2Uub3JnPC9hPi48L3A+CisKKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9idWlsZC5wcm9wZXJ0aWVzIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2J1aWxkLnByb3BlcnRpZXMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjc4NmI4NQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9idWlsZC5wcm9wZXJ0aWVzCkBAIC0wLDAgKzEsMTMgQEAKK3NvdXJjZS4uID0gc3JjLworb3V0cHV0Li4gPSBiaW4vCitiaW4uaW5jbHVkZXMgPSBNRVRBLUlORi8sXAorICAgICAgICAgICAgICAgLixcCisgICAgICAgICAgICAgICBwbHVnaW4ueG1sLFwKKyAgICAgICAgICAgICAgIHBsdWdpbi5wcm9wZXJ0aWVzLFwKKyAgICAgICAgICAgICAgIGljb25zLyxcCisgICAgICAgICAgICAgICBidWlsZC5wcm9wZXJ0aWVzLFwKKyAgICAgICAgICAgICAgIGFib3V0Lmh0bWwsXAorICAgICAgICAgICAgICAgdmlld3BvaW50cy8sXAorICAgICAgICAgICAgICAgZGlhZ3JhbXMvLFwKKyAgICAgICAgICAgICAgIGNzcy8KK3NyYy5pbmNsdWRlcyA9IGFib3V0Lmh0bWwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9jc3Mvc3R5bGUuY3NzIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2Nzcy9zdHlsZS5jc3MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2ZiYWQxMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9jc3Mvc3R5bGUuY3NzCkBAIC0wLDAgKzEsMTMgQEAKK1Byb3BlcnR5IHttYXNrTGFiZWw6bmFtZTsgZWxlbWVudEljb246ZmFsc2U7fQorUHJvcGVydHlbdHlwZV0ge21hc2tMYWJlbDpuYW1lIHR5cGU7IH0KK1BvcnQge21hc2tMYWJlbDpuYW1lO2Rpc3BsYXlJY29uOnRydWU7fQorQ29tcG9zaXRlU3RydWN0dXJlRGlhZ3JhbSBMYWJlbFt0eXBlPSI2MDI5Il17CisgICAgICAgICAgICAgICAgdmlzaWJsZTogZmFsc2U7Cit9CitDbGFzcyB7ZGlzcGxheUljb246dHJ1ZTt9CitDb25uZWN0b3IgPiBMYWJlbCB7CisgICAgdmlzaWJsZTogZmFsc2U7Cit9CitQcm9wZXJ0eSwgUG9ydCwgQ29ubmVjdG9yIHsKKwljYW5vbmljYWw6dHJ1ZTsKK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9kaWFncmFtcy9hcmNoaXRlY3R1cmUvYXJjaGl0ZWN0dXJlLmdpZiBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9kaWFncmFtcy9hcmNoaXRlY3R1cmUvYXJjaGl0ZWN0dXJlLmdpZgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40MTcyODhhCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2RpYWdyYW1zL2FyY2hpdGVjdHVyZS9hcmNoaXRlY3R1cmUuZ2lmCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9kaWFncmFtcy9hcmNoaXRlY3R1cmUvYXJjaGl0ZWN0dXJlLnBhbGV0dGUueG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2RpYWdyYW1zL2FyY2hpdGVjdHVyZS9hcmNoaXRlY3R1cmUucGFsZXR0ZS54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGE3ZmRmYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9kaWFncmFtcy9hcmNoaXRlY3R1cmUvYXJjaGl0ZWN0dXJlLnBhbGV0dGUueG1sCkBAIC0wLDAgKzEsMTYyIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCIgc3RhbmRhbG9uZT0ibm8iPz4KKzxwYWxldHRlRGVmaW5pdGlvbj4KKwk8Y29udGVudD4KKwkJPGRyYXdlcgorCQkJaWNvbnBhdGg9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UuZ21mLnJ1bnRpbWUuZGlhZ3JhbS51aS9pY29ucy9ncm91cC5naWYiCisJCQlpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uYXJjaGl0ZWN0dXJlLlVNTF9BcmNoaXRlY3R1cmVfX1Rvb2xzIgorCQkJbmFtZT0iUm9ib3RNTCBUb29scyI+CisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IFJvYm90IiBpZD0iY29tcG9uZW50ZGVmLnRvb2wuc3lzdGVtIgorCQkJCW5hbWU9IlJvYm90IiByZWZUb29sSWQ9ImNvbXBvc2l0ZS50b29sLmNsYXNzIgorCQkJCWljb25wYXRoPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8wM19yb2JvdF9zeXN0ZW0ucG5nIj4KKwkJCQk8cG9zdEFjdGlvbiBpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5hcHBseXN0ZXJlb3R5cGVhY3Rpb25wcm92aWRlciI+CisJCQkJCTxzdGVyZW90eXBlc1RvQXBwbHk+CisJCQkJCQk8c3RlcmVvdHlwZSBzdGVyZW90eXBlTmFtZT0iUm9ib3RNTDo6Um9ib3QiPjwvc3RlcmVvdHlwZT4KKwkJCQkJPC9zdGVyZW90eXBlc1RvQXBwbHk+CisJCQkJPC9wb3N0QWN0aW9uPgorCQkJCTxwb3N0QWN0aW9uCisJCQkJCWlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnBvc3RhY3Rpb24uY2hhbmdlU3RlcmVvdHlwZURpc3BsYXlQcm92aWRlciIKKwkJCQkJZGlzcGxheUtpbmQ9Ikljb25TdGVyZW90eXBlIiBkaXNwbGF5UGxhY2U9IkNvbXBhcnRtZW50Ij48L3Bvc3RBY3Rpb24+CisJCQk8L2FzcGVjdFRvb2w+CisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IFJvYm90aWMgU3lzdGVtIiBpZD0iYXJjaGl0ZWN0dXJlLnRvb2wuc3lzdGVtIgorCQkJCW5hbWU9IlN5c3RlbSIgcmVmVG9vbElkPSJjb21wb3NpdGUudG9vbC5jbGFzcyIKKwkJCQlpY29ucGF0aD0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMDJfc3lzdGVtLnBuZyI+CisJCQkJPHBvc3RBY3Rpb24gaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuYXBwbHlzdGVyZW90eXBlYWN0aW9ucHJvdmlkZXIiPgorCQkJCQk8c3RlcmVvdHlwZXNUb0FwcGx5PgorCQkJCQkJPHN0ZXJlb3R5cGUgc3RlcmVvdHlwZU5hbWU9IlJvYm90TUw6OlJvYm90aWNTeXN0ZW0iPjwvc3RlcmVvdHlwZT4KKwkJCQkJPC9zdGVyZW90eXBlc1RvQXBwbHk+CisJCQkJPC9wb3N0QWN0aW9uPgorCQkJCTxwb3N0QWN0aW9uIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnBvc3RhY3Rpb24uY2hhbmdlU3RlcmVvdHlwZURpc3BsYXlQcm92aWRlciIgZGlzcGxheUtpbmQ9Ikljb25TdGVyZW90eXBlIiBkaXNwbGF5UGxhY2U9IkNvbXBhcnRtZW50Ij48L3Bvc3RBY3Rpb24+CisJCQk8L2FzcGVjdFRvb2w+CisJCQk8YXNwZWN0VG9vbCBuYW1lPSJTZW5zb3IiIGlkPSJhcmNoaXRlY3R1cmUudG9vbC5zZW5zb3JfY29tcG9uZW50IgorCQkJCXJlZlRvb2xJZD0iY29tcG9zaXRlLnRvb2wuY2xhc3MiIGRlc2NyaXB0aW9uPSJDcmVhdGUgYSBuZXcgU2Vuc29yQ29tcG9uZW50IgorCQkJCWljb25wYXRoPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8wN19zZW5zb3JfZHJpdmVyLnBuZyI+CisJCQkJPHBvc3RBY3Rpb24gaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuYXBwbHlzdGVyZW90eXBlYWN0aW9ucHJvdmlkZXIiPgorCQkJCQk8c3RlcmVvdHlwZXNUb0FwcGx5PgorCQkJCQkJPHN0ZXJlb3R5cGUgc3RlcmVvdHlwZU5hbWU9IlJvYm90TUw6OlNlbnNvclN5c3RlbSI+PC9zdGVyZW90eXBlPgorCQkJCQk8L3N0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQk8L3Bvc3RBY3Rpb24+CisJCQkJPHBvc3RBY3Rpb24KKwkJCQkJaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucG9zdGFjdGlvbi5jaGFuZ2VTdGVyZW90eXBlRGlzcGxheVByb3ZpZGVyIgorCQkJCQlkaXNwbGF5S2luZD0iSWNvblN0ZXJlb3R5cGUiIGRpc3BsYXlQbGFjZT0iQ29tcGFydG1lbnQiPjwvcG9zdEFjdGlvbj4KKworCQkJPC9hc3BlY3RUb29sPgorCQkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IkNyZWF0ZSBhIG5ldyBBY3R1YXRvckNvbXBvbmVudCIKKwkJCQlpZD0iYXJjaGl0ZWN0dXJlLnRvb2wuYWN0dWF0b3JfY29tcG9uZW50IiBuYW1lPSJBY3R1YXRvciIKKwkJCQlyZWZUb29sSWQ9ImNvbXBvc2l0ZS50b29sLmNsYXNzIgorCQkJCWljb25wYXRoPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8xM19hY3Rpb24ucG5nIj4KKwkJCQk8cG9zdEFjdGlvbiBpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5hcHBseXN0ZXJlb3R5cGVhY3Rpb25wcm92aWRlciI+CisJCQkJCTxzdGVyZW90eXBlc1RvQXBwbHk+CisJCQkJCQk8c3RlcmVvdHlwZSBzdGVyZW90eXBlTmFtZT0iUm9ib3RNTDo6QWN0dWF0b3JTeXN0ZW0iPjwvc3RlcmVvdHlwZT4KKwkJCQkJPC9zdGVyZW90eXBlc1RvQXBwbHk+CisJCQkJPC9wb3N0QWN0aW9uPgorCQkJCTxwb3N0QWN0aW9uCisJCQkJCWlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnBvc3RhY3Rpb24uY2hhbmdlU3RlcmVvdHlwZURpc3BsYXlQcm92aWRlciIKKwkJCQkJZGlzcGxheUtpbmQ9Ikljb25TdGVyZW90eXBlIiBkaXNwbGF5UGxhY2U9IkNvbXBhcnRtZW50Ij48L3Bvc3RBY3Rpb24+CisJCQk8L2FzcGVjdFRvb2w+CisJCQkKKworCQkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IkNyZWF0ZSBhIG5ldyBJTiBGbG93UG9ydCIgaWQ9ImFyY2hpdGVjdHVyZS50b29sLnBvcnRfaW4iCisJCQkJbmFtZT0iRmxvdyBQb3J0IChJTikiIHJlZlRvb2xJZD0iY29tcG9zaXRlLnRvb2wucG9ydCIKKwkJCQlpY29ucGF0aD0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvSW4ucG5nIj4KKworCQkJCTxwb3N0QWN0aW9uIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLmFwcGx5c3RlcmVvdHlwZWFjdGlvbnByb3ZpZGVyIj4KKwkJCQkJPHN0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQkJCTxzdGVyZW90eXBlIHN0ZXJlb3R5cGVOYW1lPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiPgorCisJCQkJCQkJCisJCQkJCQkJPHByb3BlcnR5IHByb3BlcnR5TmFtZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0OjpkaXJlY3Rpb24iPgorCQkJCQkJCQk8dmFsdWU+aW48L3ZhbHVlPgorCQkJCQkJCTwvcHJvcGVydHk+CisJCQkJCQk8L3N0ZXJlb3R5cGU+CisJCQkJCTwvc3RlcmVvdHlwZXNUb0FwcGx5PgorCQkJCTwvcG9zdEFjdGlvbj4KKwkJCQk8cG9zdEFjdGlvbgorCQkJCQlpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5wb3N0YWN0aW9uLmNoYW5nZVN0ZXJlb3R5cGVEaXNwbGF5UHJvdmlkZXIiCisJCQkJCWRpc3BsYXlLaW5kPSJJY29uU3RlcmVvdHlwZSIgZGlzcGxheVBsYWNlPSJDb21wYXJ0bWVudCI+PC9wb3N0QWN0aW9uPgorCQkJPC9hc3BlY3RUb29sPgorCQkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IkNyZWF0ZSBhIG5ldyBPVVQgRmxvd1BvcnQiIGlkPSJhcmNoaXRlY3R1cmUudG9vbC5wb3J0X291dCIKKwkJCQlyZWZUb29sSWQ9ImNvbXBvc2l0ZS50b29sLnBvcnQiIG5hbWU9IkZsb3cgUG9ydCAoT1VUKSIKKwkJCQlpY29ucGF0aD0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvT3V0LnBuZyI+CisJCQkJPHBvc3RBY3Rpb24gaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuYXBwbHlzdGVyZW90eXBlYWN0aW9ucHJvdmlkZXIiPgorCQkJCQk8c3RlcmVvdHlwZXNUb0FwcGx5PgorCQkJCQkJPHN0ZXJlb3R5cGUgc3RlcmVvdHlwZU5hbWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCI+CisJCQkJCQkJPHByb3BlcnR5IHByb3BlcnR5TmFtZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0OjpkaXJlY3Rpb24iPgorCQkJCQkJCQk8dmFsdWU+b3V0PC92YWx1ZT4KKwkJCQkJCQk8L3Byb3BlcnR5PgorCQkJCQkJPC9zdGVyZW90eXBlPgorCQkJCQk8L3N0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQk8L3Bvc3RBY3Rpb24+CisJCQkJPHBvc3RBY3Rpb24KKwkJCQkJaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucG9zdGFjdGlvbi5jaGFuZ2VTdGVyZW90eXBlRGlzcGxheVByb3ZpZGVyIgorCQkJCQlkaXNwbGF5S2luZD0iSWNvblN0ZXJlb3R5cGUiIGRpc3BsYXlQbGFjZT0iQ29tcGFydG1lbnQiPjwvcG9zdEFjdGlvbj4KKwkJCTwvYXNwZWN0VG9vbD4KKwkJCTxhc3BlY3RUb29sIGRlc2NyaXB0aW9uPSJDcmVhdGUgYSBuZXcgSU5PVVQgRmxvd1BvcnQiIGlkPSJjb21wb25lbnRkZWYudG9vbC5wb3J0X2lub3V0IgorCQkJCXJlZlRvb2xJZD0iY29tcG9zaXRlLnRvb2wucG9ydCIgbmFtZT0iRmxvdyBQb3J0IChJTk9VVCkiCisJCQkJaWNvbnBhdGg9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zL3BvcnRzL0luT3V0LnBuZyI+CisJCQkJPHBvc3RBY3Rpb24gaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuYXBwbHlzdGVyZW90eXBlYWN0aW9ucHJvdmlkZXIiPgorCQkJCQk8c3RlcmVvdHlwZXNUb0FwcGx5PgorCQkJCQkJPHN0ZXJlb3R5cGUgc3RlcmVvdHlwZU5hbWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCI+CisJCQkJCQkJPHByb3BlcnR5IHByb3BlcnR5TmFtZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0OjpkaXJlY3Rpb24iPgorCQkJCQkJCQk8dmFsdWU+aW5vdXQ8L3ZhbHVlPgorCQkJCQkJCTwvcHJvcGVydHk+CisJCQkJCQk8L3N0ZXJlb3R5cGU+CisJCQkJCTwvc3RlcmVvdHlwZXNUb0FwcGx5PgorCQkJCTwvcG9zdEFjdGlvbj4KKwkJCQk8cG9zdEFjdGlvbgorCQkJCQlpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5wb3N0YWN0aW9uLmNoYW5nZVN0ZXJlb3R5cGVEaXNwbGF5UHJvdmlkZXIiCisJCQkJCWRpc3BsYXlLaW5kPSJJY29uU3RlcmVvdHlwZSIgZGlzcGxheVBsYWNlPSJDb21wYXJ0bWVudCI+PC9wb3N0QWN0aW9uPgorCQkJPC9hc3BlY3RUb29sPgorCQkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IkNyZWF0ZSBhIG5ldyBQcm92aWRlZCBTZXJ2aWNlUG9ydCIKKwkJCQlpZD0iYXJjaGl0ZWN0dXJlLnRvb2wucG9ydF9wcm92aWRlZCIgbmFtZT0iU2VydmljZSBQb3J0IChQcm8pIgorCQkJCXJlZlRvb2xJZD0iY29tcG9zaXRlLnRvb2wucG9ydCIKKwkJCQlpY29ucGF0aD0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvUHJvdmlkZWQucG5nIj4KKworCQkJCTxwb3N0QWN0aW9uIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLmFwcGx5c3RlcmVvdHlwZWFjdGlvbnByb3ZpZGVyIj4KKwkJCQkJPHN0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQkJCTxzdGVyZW90eXBlIHN0ZXJlb3R5cGVOYW1lPSJSb2JvdE1MOjpTZXJ2aWNlUG9ydCI+CisJCQkJCQkJPHByb3BlcnR5IHByb3BlcnR5TmFtZT0iUm9ib3RNTDo6U2VydmljZVBvcnQ6OmtpbmQiPgorCQkJCQkJCQk8dmFsdWU+cHJvdmlkZWQ8L3ZhbHVlPgorCQkJCQkJCTwvcHJvcGVydHk+CisJCQkJCQk8L3N0ZXJlb3R5cGU+CisJCQkJCTwvc3RlcmVvdHlwZXNUb0FwcGx5PgorCQkJCTwvcG9zdEFjdGlvbj4KKwkJCQk8cG9zdEFjdGlvbgorCQkJCQlpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5wb3N0YWN0aW9uLmNoYW5nZVN0ZXJlb3R5cGVEaXNwbGF5UHJvdmlkZXIiCisJCQkJCWRpc3BsYXlLaW5kPSJJY29uU3RlcmVvdHlwZSIgZGlzcGxheVBsYWNlPSJDb21wYXJ0bWVudCI+PC9wb3N0QWN0aW9uPgorCQkJPC9hc3BlY3RUb29sPgorCisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IFJlcXVpcmVkIFNlcnZpY2VQb3J0IgorCQkJCWlkPSJhcmNoaXRlY3R1cmUudG9vbC5wb3J0X3JlcXVpcmVkIiBuYW1lPSJTZXJ2aWNlIFBvcnQgKFJlcSkiCisJCQkJcmVmVG9vbElkPSJjb21wb3NpdGUudG9vbC5wb3J0IgorCQkJCWljb25wYXRoPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy9wb3J0cy9SZXF1aXJlZC5wbmciPgorCisJCQkJPHBvc3RBY3Rpb24gaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuYXBwbHlzdGVyZW90eXBlYWN0aW9ucHJvdmlkZXIiPgorCQkJCQk8c3RlcmVvdHlwZXNUb0FwcGx5PgorCQkJCQkJPHN0ZXJlb3R5cGUgc3RlcmVvdHlwZU5hbWU9IlJvYm90TUw6OlNlcnZpY2VQb3J0Ij4KKwkJCQkJCQk8cHJvcGVydHkgcHJvcGVydHlOYW1lPSJSb2JvdE1MOjpTZXJ2aWNlUG9ydDo6a2luZCI+CisJCQkJCQkJCTx2YWx1ZT5yZXF1aXJlZDwvdmFsdWU+CisJCQkJCQkJPC9wcm9wZXJ0eT4KKwkJCQkJCTwvc3RlcmVvdHlwZT4KKwkJCQkJPC9zdGVyZW90eXBlc1RvQXBwbHk+CisJCQkJPC9wb3N0QWN0aW9uPgorCQkJCTxwb3N0QWN0aW9uCisJCQkJCWlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnBvc3RhY3Rpb24uY2hhbmdlU3RlcmVvdHlwZURpc3BsYXlQcm92aWRlciIKKwkJCQkJZGlzcGxheUtpbmQ9Ikljb25TdGVyZW90eXBlIiBkaXNwbGF5UGxhY2U9IkNvbXBhcnRtZW50Ij48L3Bvc3RBY3Rpb24+CisJCQk8L2FzcGVjdFRvb2w+CisJCQkKKwkJCTxhc3BlY3RUb29sIGRlc2NyaXB0aW9uPSJDcmVhdGUgYSBuZXcgQ29ubmVjdG9yIiBpZD0iYXJjaGl0ZWN0dXJlLnRvb2wuY29ubmVjdG9yIgorCQkJCW5hbWU9IkNvbm5lY3RvciIgcmVmVG9vbElkPSJjb21wb3NpdGUudG9vbC5jb25uZWN0b3IiPgorCQkJPC9hc3BlY3RUb29sPgorCQkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IkNyZWF0ZSBhIG5ldyBDb21tZW50IiBpZD0iYXJjaGl0ZWN0dXJlLnRvb2wuY29tbWVudCIKKwkJCQluYW1lPSJDb21tZW50IiByZWZUb29sSWQ9ImNvbXBvc2l0ZS50b29sLmNvbW1lbnQiPgorCQkJPC9hc3BlY3RUb29sPgorCQkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IkNyZWF0ZSBhIG5ldyBDb25zdHJhaW50IiBpZD0iYXJjaGl0ZWN0dXJlLnRvb2wuY29uc3RyYWludCIKKwkJCQluYW1lPSJDb25zdHJhaW50IiByZWZUb29sSWQ9ImNvbXBvc2l0ZS50b29sLmNvbnN0cmFpbnQiPgorCQkJPC9hc3BlY3RUb29sPgorCQkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IkNyZWF0ZSBhIG5ldyBMaW5rIChDb21tZW50L0NvbnN0cmFpbnQpIgorCQkJCWlkPSJhcmNoaXRlY3R1cmUudG9vbC5saW5rIiBuYW1lPSJDb21tZW50L0NvbnN0cmFpbnQgbGluayIKKwkJCQlyZWZUb29sSWQ9ImNvbXBvc2l0ZS50b29sLmxpbmsiPgorCQkJPC9hc3BlY3RUb29sPgorCQk8L2RyYXdlcj4KKwk8L2NvbnRlbnQ+Cis8L3BhbGV0dGVEZWZpbml0aW9uPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2RpYWdyYW1zL2NvbXBvbmVudGRlZi9jb21wb25lbnRkZWYuZ2lmIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2RpYWdyYW1zL2NvbXBvbmVudGRlZi9jb21wb25lbnRkZWYuZ2lmCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI0ZjQzZWQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vZGlhZ3JhbXMvY29tcG9uZW50ZGVmL2NvbXBvbmVudGRlZi5naWYKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2RpYWdyYW1zL2NvbXBvbmVudGRlZi9jb21wb25lbnRkZWYucGFsZXR0ZS54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vZGlhZ3JhbXMvY29tcG9uZW50ZGVmL2NvbXBvbmVudGRlZi5wYWxldHRlLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZDJlZDU4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2RpYWdyYW1zL2NvbXBvbmVudGRlZi9jb21wb25lbnRkZWYucGFsZXR0ZS54bWwKQEAgLTAsMCArMSwzNTcgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04IiBzdGFuZGFsb25lPSJubyI/PgorPHBhbGV0dGVEZWZpbml0aW9uPgorCTxjb250ZW50PgorCQk8ZHJhd2VyCisJCQlpY29ucGF0aD0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5nbWYucnVudGltZS5kaWFncmFtLnVpL2ljb25zL2dyb3VwLmdpZiIKKwkJCWlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21wb25lbnRkZWYuUk9CT1RNTF9Db21wb25lbnRkZWZfX1Rvb2xzIgorCQkJbmFtZT0iU3lzdGVtcy0gUHJvcGVydGllcyI+CisJCQkJCQkKKwkJCTxhc3BlY3RUb29sIGRlc2NyaXB0aW9uPSJDcmVhdGUgYSBuZXcgSGFyZHdhcmUgU3lzdGVtIiBpZD0iY29tcG9uZW50ZGVmLnRvb2wuc3lzdGVtIgorCQkJCW5hbWU9IlJvYm90IiByZWZUb29sSWQ9ImNvbXBvc2l0ZS50b29sLmNsYXNzIgorCQkJCWljb25wYXRoPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8wM19yb2JvdF9zeXN0ZW0ucG5nIj4KKwkJCQk8cG9zdEFjdGlvbiBpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5hcHBseXN0ZXJlb3R5cGVhY3Rpb25wcm92aWRlciI+CisJCQkJCTxzdGVyZW90eXBlc1RvQXBwbHk+CisJCQkJCQk8c3RlcmVvdHlwZSBzdGVyZW90eXBlTmFtZT0iUm9ib3RNTDo6Um9ib3QiPjwvc3RlcmVvdHlwZT4KKwkJCQkJPC9zdGVyZW90eXBlc1RvQXBwbHk+CisJCQkJPC9wb3N0QWN0aW9uPgorCQkJCTxwb3N0QWN0aW9uCisJCQkJCWlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnBvc3RhY3Rpb24uY2hhbmdlU3RlcmVvdHlwZURpc3BsYXlQcm92aWRlciIKKwkJCQkJZGlzcGxheUtpbmQ9Ikljb25TdGVyZW90eXBlIiBkaXNwbGF5UGxhY2U9IkNvbXBhcnRtZW50Ij48L3Bvc3RBY3Rpb24+CisJCQk8L2FzcGVjdFRvb2w+CisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IFJvYm90aWMgU3lzdGVtIiBpZD0iY29tcG9uZW50ZGVmLnRvb2wuc3lzdGVtIgorCQkJCW5hbWU9IlJvYm90aWNTeXN0ZW0iIHJlZlRvb2xJZD0iY29tcG9zaXRlLnRvb2wuY2xhc3MiCisJCQkJaWNvbnBhdGg9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzAyX3N5c3RlbS5wbmciPgorCQkJCTxwb3N0QWN0aW9uIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLmFwcGx5c3RlcmVvdHlwZWFjdGlvbnByb3ZpZGVyIj4KKwkJCQkJPHN0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQkJCTxzdGVyZW90eXBlIHN0ZXJlb3R5cGVOYW1lPSJSb2JvdE1MOjpSb2JvdGljU3lzdGVtIj48L3N0ZXJlb3R5cGU+CisJCQkJCTwvc3RlcmVvdHlwZXNUb0FwcGx5PgorCQkJCTwvcG9zdEFjdGlvbj4KKwkJCQk8cG9zdEFjdGlvbgorCQkJCQlpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5wb3N0YWN0aW9uLmNoYW5nZVN0ZXJlb3R5cGVEaXNwbGF5UHJvdmlkZXIiCisJCQkJCWRpc3BsYXlLaW5kPSJJY29uU3RlcmVvdHlwZSIgZGlzcGxheVBsYWNlPSJDb21wYXJ0bWVudCI+PC9wb3N0QWN0aW9uPgorCQkJPC9hc3BlY3RUb29sPgorCQkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IkNyZWF0ZSBhIG5ldyBTb2Z0d2FyZSIgaWQ9ImNvbXBvbmVudGRlZi50b29sLnNvZnR3YXJlIgorCQkJCW5hbWU9IlNvZnR3YXJlIiByZWZUb29sSWQ9ImNvbXBvc2l0ZS50b29sLmNsYXNzIgorCQkJCWljb25wYXRoPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8xOF9zb2Z0d2FyZS5wbmciPgorCQkJCTxwb3N0QWN0aW9uIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLmFwcGx5c3RlcmVvdHlwZWFjdGlvbnByb3ZpZGVyIj4KKwkJCQkJPHN0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQkJCTxzdGVyZW90eXBlIHN0ZXJlb3R5cGVOYW1lPSJSb2JvdE1MOjpTb2Z0d2FyZSI+PC9zdGVyZW90eXBlPgorCQkJCQk8L3N0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQk8L3Bvc3RBY3Rpb24+CisJCQkJPHBvc3RBY3Rpb24KKwkJCQkJaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucG9zdGFjdGlvbi5jaGFuZ2VTdGVyZW90eXBlRGlzcGxheVByb3ZpZGVyIgorCQkJCQlkaXNwbGF5S2luZD0iSWNvblN0ZXJlb3R5cGUiIGRpc3BsYXlQbGFjZT0iQ29tcGFydG1lbnQiPjwvcG9zdEFjdGlvbj4KKwkJCTwvYXNwZWN0VG9vbD4KKwkJCTxhc3BlY3RUb29sIGRlc2NyaXB0aW9uPSJDcmVhdGUgYSBuZXcgRW52aXJvbm1lbnQiIGlkPSJjb21wb25lbnRkZWYudG9vbC5zeXN0ZW0iCisJCQkJbmFtZT0iRW52aXJvbm1lbnQiIHJlZlRvb2xJZD0iY29tcG9zaXRlLnRvb2wuY2xhc3MiCisJCQkJaWNvbnBhdGg9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzAzX3JvYm90X3N5c3RlbS5wbmciPgorCQkJCTxwb3N0QWN0aW9uIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLmFwcGx5c3RlcmVvdHlwZWFjdGlvbnByb3ZpZGVyIj4KKwkJCQkJPHN0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQkJCTxzdGVyZW90eXBlIHN0ZXJlb3R5cGVOYW1lPSJSb2JvdE1MOjpFbnZpcm9ubWVudCI+PC9zdGVyZW90eXBlPgorCQkJCQk8L3N0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQk8L3Bvc3RBY3Rpb24+CisJCQkJPHBvc3RBY3Rpb24KKwkJCQkJaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucG9zdGFjdGlvbi5jaGFuZ2VTdGVyZW90eXBlRGlzcGxheVByb3ZpZGVyIgorCQkJCQlkaXNwbGF5S2luZD0iSWNvblN0ZXJlb3R5cGUiIGRpc3BsYXlQbGFjZT0iQ29tcGFydG1lbnQiPjwvcG9zdEFjdGlvbj4KKwkJCTwvYXNwZWN0VG9vbD4KKwkJCTwhLS1hc3BlY3RUb29sIGRlc2NyaXB0aW9uPSJDcmVhdGUgYSBuZXcgUHJvcGVydHkiIGlkPSJjb21wb25lbnRkZWYudG9vbC5wcm9wZXJ0eSIKKwkJCQluYW1lPSJQcm9wZXJ0eSIgcmVmVG9vbElkPSJjb21wb3NpdGUudG9vbC5wcm9wZXJ0eSI+CisJCQk8L2FzcGVjdFRvb2wtLT4KKwkJCTwvZHJhd2VyPgorCQkJPGRyYXdlcgorCQkJaWNvbnBhdGg9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UuZ21mLnJ1bnRpbWUuZGlhZ3JhbS51aS9pY29ucy9ncm91cC5naWYiCisJCQlpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tcG9uZW50ZGVmLlJPQk9UTUxfQ29tcG9uZW50ZGVmX19TZW5zb3JzIgorCQkJbmFtZT0iU2Vuc29ycyI+CisJCQk8YXNwZWN0VG9vbCBuYW1lPSJTZW5zb3JTeXN0ZW0iIGlkPSJjb21wb25lbnRkZWYudG9vbC5zZW5zb3JfY29tcG9uZW50IgorCQkJCXJlZlRvb2xJZD0iY29tcG9zaXRlLnRvb2wuY2xhc3MiIGRlc2NyaXB0aW9uPSJDcmVhdGUgYSBuZXcgU2Vuc29yU3lzdGVtIgorCQkJCWljb25wYXRoPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8wN19zZW5zb3JfZHJpdmVyLnBuZyI+CisJCQkJPHBvc3RBY3Rpb24gaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuYXBwbHlzdGVyZW90eXBlYWN0aW9ucHJvdmlkZXIiPgorCQkJCQk8c3RlcmVvdHlwZXNUb0FwcGx5PgorCQkJCQkJPHN0ZXJlb3R5cGUgc3RlcmVvdHlwZU5hbWU9IlJvYm90TUw6OlNlbnNvclN5c3RlbSI+PC9zdGVyZW90eXBlPgorCQkJCQk8L3N0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQk8L3Bvc3RBY3Rpb24+CisJCQkJPHBvc3RBY3Rpb24KKwkJCQkJaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucG9zdGFjdGlvbi5jaGFuZ2VTdGVyZW90eXBlRGlzcGxheVByb3ZpZGVyIgorCQkJCQlkaXNwbGF5S2luZD0iSWNvblN0ZXJlb3R5cGUiIGRpc3BsYXlQbGFjZT0iQ29tcGFydG1lbnQiPjwvcG9zdEFjdGlvbj4KKwkJCTwvYXNwZWN0VG9vbD4KKwkJCTxhc3BlY3RUb29sIG5hbWU9IkNhbWVyYVN5c3RlbSIgaWQ9ImNvbXBvbmVudGRlZi50b29sLkNhbWVyYVN5c3RlbSIKKwkJCQlyZWZUb29sSWQ9ImNvbXBvc2l0ZS50b29sLmNsYXNzIiBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IENhbWVyYVN5c3RlbSIKKwkJCQlpY29ucGF0aD0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMTBfY2FtZXJhX3N5c3RlbS5wbmciPgorCQkJCTxwb3N0QWN0aW9uIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLmFwcGx5c3RlcmVvdHlwZWFjdGlvbnByb3ZpZGVyIj4KKwkJCQkJPHN0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQkJCTxzdGVyZW90eXBlIHN0ZXJlb3R5cGVOYW1lPSJSb2JvdE1MOjpDYW1lcmFTeXN0ZW0iPjwvc3RlcmVvdHlwZT4KKwkJCQkJPC9zdGVyZW90eXBlc1RvQXBwbHk+CisJCQkJPC9wb3N0QWN0aW9uPgorCQkJCTxwb3N0QWN0aW9uCisJCQkJCWlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnBvc3RhY3Rpb24uY2hhbmdlU3RlcmVvdHlwZURpc3BsYXlQcm92aWRlciIKKwkJCQkJZGlzcGxheUtpbmQ9Ikljb25TdGVyZW90eXBlIiBkaXNwbGF5UGxhY2U9IkNvbXBhcnRtZW50Ij48L3Bvc3RBY3Rpb24+CisJCQk8L2FzcGVjdFRvb2w+CisJCQk8YXNwZWN0VG9vbCBuYW1lPSJMaWRhclN5c3RlbSIgaWQ9ImNvbXBvbmVudGRlZi50b29sLkxpZGFyU3lzdGVtIgorCQkJCXJlZlRvb2xJZD0iY29tcG9zaXRlLnRvb2wuY2xhc3MiIGRlc2NyaXB0aW9uPSJDcmVhdGUgYSBuZXcgTGlkYXJTeXN0ZW0iCisJCQkJaWNvbnBhdGg9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzA5X2xpZGFyX3N5c3RlbS5wbmciPgorCQkJCTxwb3N0QWN0aW9uIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLmFwcGx5c3RlcmVvdHlwZWFjdGlvbnByb3ZpZGVyIj4KKwkJCQkJPHN0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQkJCTxzdGVyZW90eXBlIHN0ZXJlb3R5cGVOYW1lPSJSb2JvdE1MOjpMaWRhclN5c3RlbSI+PC9zdGVyZW90eXBlPgorCQkJCQk8L3N0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQk8L3Bvc3RBY3Rpb24+CisJCQkJPHBvc3RBY3Rpb24KKwkJCQkJaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucG9zdGFjdGlvbi5jaGFuZ2VTdGVyZW90eXBlRGlzcGxheVByb3ZpZGVyIgorCQkJCQlkaXNwbGF5S2luZD0iSWNvblN0ZXJlb3R5cGUiIGRpc3BsYXlQbGFjZT0iQ29tcGFydG1lbnQiPjwvcG9zdEFjdGlvbj4KKwkJCTwvYXNwZWN0VG9vbD4KKwkJCTxhc3BlY3RUb29sIG5hbWU9IkdQU1N5c3RlbSIgaWQ9ImNvbXBvbmVudGRlZi50b29sLkdQU1N5c3RlbSIKKwkJCQlyZWZUb29sSWQ9ImNvbXBvc2l0ZS50b29sLmNsYXNzIiBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IEdQU1N5c3RlbSIKKwkJCQlpY29ucGF0aD0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMTlfZ3BzLnBuZyI+CisJCQkJPHBvc3RBY3Rpb24gaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuYXBwbHlzdGVyZW90eXBlYWN0aW9ucHJvdmlkZXIiPgorCQkJCQk8c3RlcmVvdHlwZXNUb0FwcGx5PgorCQkJCQkJPHN0ZXJlb3R5cGUgc3RlcmVvdHlwZU5hbWU9IlJvYm90TUw6OkdQU1N5c3RlbSI+PC9zdGVyZW90eXBlPgorCQkJCQk8L3N0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQk8L3Bvc3RBY3Rpb24+CisJCQkJPHBvc3RBY3Rpb24KKwkJCQkJaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucG9zdGFjdGlvbi5jaGFuZ2VTdGVyZW90eXBlRGlzcGxheVByb3ZpZGVyIgorCQkJCQlkaXNwbGF5S2luZD0iSWNvblN0ZXJlb3R5cGUiIGRpc3BsYXlQbGFjZT0iQ29tcGFydG1lbnQiPjwvcG9zdEFjdGlvbj4KKwkJCTwvYXNwZWN0VG9vbD4KKwkJCTwvZHJhd2VyPgorCQkJPGRyYXdlcgorCQkJaWNvbnBhdGg9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UuZ21mLnJ1bnRpbWUuZGlhZ3JhbS51aS9pY29ucy9ncm91cC5naWYiCisJCQlpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tcG9uZW50ZGVmLlJPQk9UTUxfQ29tcG9uZW50ZGVmX19BY3R1YXRvcnMiCisJCQluYW1lPSJBY3R1YXRvcnMiPgorCQkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IkNyZWF0ZSBhIG5ldyBBY3R1YXRvclN5c3RlbSIKKwkJCQlpZD0iY29tcG9uZW50ZGVmLnRvb2wuYWN0dWF0b3IiIG5hbWU9IkFjdHVhdG9yIgorCQkJCXJlZlRvb2xJZD0iY29tcG9zaXRlLnRvb2wuY2xhc3MiCisJCQkJaWNvbnBhdGg9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzEzX2FjdGlvbi5wbmciPgorCQkJCTxwb3N0QWN0aW9uIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLmFwcGx5c3RlcmVvdHlwZWFjdGlvbnByb3ZpZGVyIj4KKwkJCQkJPHN0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQkJCTxzdGVyZW90eXBlIHN0ZXJlb3R5cGVOYW1lPSJSb2JvdE1MOjpBY3R1YXRvclN5c3RlbSI+PC9zdGVyZW90eXBlPgorCQkJCQk8L3N0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQk8L3Bvc3RBY3Rpb24+CisJCQkJPHBvc3RBY3Rpb24KKwkJCQkJaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucG9zdGFjdGlvbi5jaGFuZ2VTdGVyZW90eXBlRGlzcGxheVByb3ZpZGVyIgorCQkJCQlkaXNwbGF5S2luZD0iSWNvblN0ZXJlb3R5cGUiIGRpc3BsYXlQbGFjZT0iQ29tcGFydG1lbnQiPjwvcG9zdEFjdGlvbj4KKwkJCTwvYXNwZWN0VG9vbD4KKwkJCQorCQkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IkNyZWF0ZSBhIG5ldyBXaGVlbFN5c3RlbSIKKwkJCQlpZD0iY29tcG9uZW50ZGVmLnRvb2wuV2hlZWxTeXN0ZW0iIG5hbWU9IldoZWVsU3lzdGVtIgorCQkJCXJlZlRvb2xJZD0iY29tcG9zaXRlLnRvb2wuY2xhc3MiCisJCQkJaWNvbnBhdGg9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzE1X3doZWVsX3N5c3RlbS5wbmciPgorCQkJCTxwb3N0QWN0aW9uIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLmFwcGx5c3RlcmVvdHlwZWFjdGlvbnByb3ZpZGVyIj4KKwkJCQkJPHN0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQkJCTxzdGVyZW90eXBlIHN0ZXJlb3R5cGVOYW1lPSJSb2JvdE1MOjpTdGVlcmVkV2hlZWxTeXN0ZW0iPjwvc3RlcmVvdHlwZT4KKwkJCQkJPC9zdGVyZW90eXBlc1RvQXBwbHk+CisJCQkJPC9wb3N0QWN0aW9uPgorCQkJCTxwb3N0QWN0aW9uCisJCQkJCWlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnBvc3RhY3Rpb24uY2hhbmdlU3RlcmVvdHlwZURpc3BsYXlQcm92aWRlciIKKwkJCQkJZGlzcGxheUtpbmQ9Ikljb25TdGVyZW90eXBlIiBkaXNwbGF5UGxhY2U9IkNvbXBhcnRtZW50Ij48L3Bvc3RBY3Rpb24+CisJCQk8L2FzcGVjdFRvb2w+CisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IEVuZ2luZVN5c3RlbSIKKwkJCQlpZD0iY29tcG9uZW50ZGVmLnRvb2wuRW5naW5lU3lzdGVtIiBuYW1lPSJFbmdpbmVTeXN0ZW0iCisJCQkJcmVmVG9vbElkPSJjb21wb3NpdGUudG9vbC5jbGFzcyIKKwkJCQlpY29ucGF0aD0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMTRfZW5naW5lX3N5c3RlbS5wbmciPgorCQkJCTxwb3N0QWN0aW9uIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLmFwcGx5c3RlcmVvdHlwZWFjdGlvbnByb3ZpZGVyIj4KKwkJCQkJPHN0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQkJCTxzdGVyZW90eXBlIHN0ZXJlb3R5cGVOYW1lPSJSb2JvdE1MOjpFbmdpbmVTeXN0ZW0iPgorCQkJCQkJCisJCQkJCQk8L3N0ZXJlb3R5cGU+CisJCQkJCTwvc3RlcmVvdHlwZXNUb0FwcGx5PgorCQkJCTwvcG9zdEFjdGlvbj4KKwkJCQk8cG9zdEFjdGlvbgorCQkJCQlpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5wb3N0YWN0aW9uLmNoYW5nZVN0ZXJlb3R5cGVEaXNwbGF5UHJvdmlkZXIiCisJCQkJCWRpc3BsYXlLaW5kPSJJY29uU3RlcmVvdHlwZSIgZGlzcGxheVBsYWNlPSJDb21wYXJ0bWVudCI+PC9wb3N0QWN0aW9uPgorCQkJPC9hc3BlY3RUb29sPgorCQkJPC9kcmF3ZXI+CisJCQk8ZHJhd2VyCisJCQlpY29ucGF0aD0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5nbWYucnVudGltZS5kaWFncmFtLnVpL2ljb25zL2dyb3VwLmdpZiIKKwkJCWlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21wb25lbnRkZWYuUk9CT1RNTF9Db21wb25lbnRkZWZfX0h1bWFub2lkIgorCQkJbmFtZT0iSHVtYW5vaWQgQ29tcG9uZW50cyI+CisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IExlZ1N5c3RlbSIKKwkJCQlpZD0iY29tcG9uZW50ZGVmLnRvb2wubGVnIiBuYW1lPSJMZWciCisJCQkJcmVmVG9vbElkPSJjb21wb3NpdGUudG9vbC5jbGFzcyIKKwkJCQlpY29ucGF0aD0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMTNfYWN0aW9uLnBuZyI+CisJCQkJPHBvc3RBY3Rpb24gaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuYXBwbHlzdGVyZW90eXBlYWN0aW9ucHJvdmlkZXIiPgorCQkJCQk8c3RlcmVvdHlwZXNUb0FwcGx5PgorCQkJCQkJPHN0ZXJlb3R5cGUgc3RlcmVvdHlwZU5hbWU9IlJvYm90TUw6OkxlZ1N5c3RlbSI+PC9zdGVyZW90eXBlPgorCQkJCQk8L3N0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQk8L3Bvc3RBY3Rpb24+CisJCQkJPHBvc3RBY3Rpb24KKwkJCQkJaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucG9zdGFjdGlvbi5jaGFuZ2VTdGVyZW90eXBlRGlzcGxheVByb3ZpZGVyIgorCQkJCQlkaXNwbGF5S2luZD0iSWNvblN0ZXJlb3R5cGUiIGRpc3BsYXlQbGFjZT0iQ29tcGFydG1lbnQiPjwvcG9zdEFjdGlvbj4KKwkJCTwvYXNwZWN0VG9vbD4JCisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IFJvYm90aWNIZWFkIgorCQkJCWlkPSJjb21wb25lbnRkZWYudG9vbC5oZWFkIiBuYW1lPSJIZWFkIgorCQkJCXJlZlRvb2xJZD0iY29tcG9zaXRlLnRvb2wuY2xhc3MiCisJCQkJaWNvbnBhdGg9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzEzX2FjdGlvbi5wbmciPgorCQkJCTxwb3N0QWN0aW9uIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLmFwcGx5c3RlcmVvdHlwZWFjdGlvbnByb3ZpZGVyIj4KKwkJCQkJPHN0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQkJCTxzdGVyZW90eXBlIHN0ZXJlb3R5cGVOYW1lPSJSb2JvdE1MOjpSb2JvdGljSGVhZCI+PC9zdGVyZW90eXBlPgorCQkJCQk8L3N0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQk8L3Bvc3RBY3Rpb24+CisJCQkJPHBvc3RBY3Rpb24KKwkJCQkJaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucG9zdGFjdGlvbi5jaGFuZ2VTdGVyZW90eXBlRGlzcGxheVByb3ZpZGVyIgorCQkJCQlkaXNwbGF5S2luZD0iSWNvblN0ZXJlb3R5cGUiIGRpc3BsYXlQbGFjZT0iQ29tcGFydG1lbnQiPjwvcG9zdEFjdGlvbj4KKwkJCTwvYXNwZWN0VG9vbD4KKwkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IkNyZWF0ZSBhIG5ldyBHcmFzcGluZ1N5c3RlbSIKKwkJCQlpZD0iY29tcG9uZW50ZGVmLnRvb2wuaGVhZCIgbmFtZT0iR3Jhc3BpbmcgU3lzdGVtIgorCQkJCXJlZlRvb2xJZD0iY29tcG9zaXRlLnRvb2wuY2xhc3MiCisJCQkJaWNvbnBhdGg9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzEzX2FjdGlvbi5wbmciPgorCQkJCTxwb3N0QWN0aW9uIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLmFwcGx5c3RlcmVvdHlwZWFjdGlvbnByb3ZpZGVyIj4KKwkJCQkJPHN0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQkJCTxzdGVyZW90eXBlIHN0ZXJlb3R5cGVOYW1lPSJSb2JvdE1MOjpHcmFzcGluZ1N5c3RlbSI+PC9zdGVyZW90eXBlPgorCQkJCQk8L3N0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQk8L3Bvc3RBY3Rpb24+CisJCQkJPHBvc3RBY3Rpb24KKwkJCQkJaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucG9zdGFjdGlvbi5jaGFuZ2VTdGVyZW90eXBlRGlzcGxheVByb3ZpZGVyIgorCQkJCQlkaXNwbGF5S2luZD0iSWNvblN0ZXJlb3R5cGUiIGRpc3BsYXlQbGFjZT0iQ29tcGFydG1lbnQiPjwvcG9zdEFjdGlvbj4KKwkJCTwvYXNwZWN0VG9vbD4KKwkJCTwvZHJhd2VyPgorCQkJPGRyYXdlcgorCQkJaWNvbnBhdGg9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UuZ21mLnJ1bnRpbWUuZGlhZ3JhbS51aS9pY29ucy9ncm91cC5naWYiCisJCQlpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tcG9uZW50ZGVmLlJPQk9UTUxfQ29tcG9uZW50ZGVmX19Qb3J0cyIKKwkJCW5hbWU9IlBvcnRzIj4KKwkJCTxhc3BlY3RUb29sIGRlc2NyaXB0aW9uPSJDcmVhdGUgYSBuZXcgSU4gRmxvd1BvcnQiIGlkPSJjb21wb25lbnRkZWYudG9vbC5wb3J0X2luIgorCQkJCW5hbWU9IkZsb3cgUG9ydCAoSU4pIiByZWZUb29sSWQ9ImNvbXBvc2l0ZS50b29sLnBvcnQiCisJCQkJaWNvbnBhdGg9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zL3BvcnRzL0luLnBuZyI+CisKKwkJCQk8cG9zdEFjdGlvbiBpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5hcHBseXN0ZXJlb3R5cGVhY3Rpb25wcm92aWRlciI+CisJCQkJCTxzdGVyZW90eXBlc1RvQXBwbHk+CisJCQkJCQk8c3RlcmVvdHlwZSBzdGVyZW90eXBlTmFtZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ij4KKwkJCQkJCQk8cHJvcGVydHkgcHJvcGVydHlOYW1lPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQ6OmRpcmVjdGlvbiI+CisJCQkJCQkJCTx2YWx1ZT5pbjwvdmFsdWU+CisJCQkJCQkJPC9wcm9wZXJ0eT4KKwkJCQkJCTwvc3RlcmVvdHlwZT4KKwkJCQkJPC9zdGVyZW90eXBlc1RvQXBwbHk+CisJCQkJPC9wb3N0QWN0aW9uPgorCQkJCTxwb3N0QWN0aW9uCisJCQkJCWlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnBvc3RhY3Rpb24uY2hhbmdlU3RlcmVvdHlwZURpc3BsYXlQcm92aWRlciIKKwkJCQkJZGlzcGxheUtpbmQ9Ikljb25TdGVyZW90eXBlIiBkaXNwbGF5UGxhY2U9IkNvbXBhcnRtZW50Ij48L3Bvc3RBY3Rpb24+CisJCQk8L2FzcGVjdFRvb2w+CisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IE9VVCBGbG93UG9ydCIgaWQ9ImNvbXBvbmVudGRlZi50b29sLnBvcnRfb3V0IgorCQkJCXJlZlRvb2xJZD0iY29tcG9zaXRlLnRvb2wucG9ydCIgbmFtZT0iRmxvdyBQb3J0IChPVVQpIgorCQkJCWljb25wYXRoPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy9wb3J0cy9PdXQucG5nIj4KKwkJCQk8cG9zdEFjdGlvbiBpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5hcHBseXN0ZXJlb3R5cGVhY3Rpb25wcm92aWRlciI+CisJCQkJCTxzdGVyZW90eXBlc1RvQXBwbHk+CisJCQkJCQk8c3RlcmVvdHlwZSBzdGVyZW90eXBlTmFtZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ij4KKwkJCQkJCQk8cHJvcGVydHkgcHJvcGVydHlOYW1lPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQ6OmRpcmVjdGlvbiI+CisJCQkJCQkJCTx2YWx1ZT5vdXQ8L3ZhbHVlPgorCQkJCQkJCTwvcHJvcGVydHk+CisJCQkJCQk8L3N0ZXJlb3R5cGU+CisJCQkJCTwvc3RlcmVvdHlwZXNUb0FwcGx5PgorCQkJCTwvcG9zdEFjdGlvbj4KKwkJCQk8cG9zdEFjdGlvbgorCQkJCQlpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5wb3N0YWN0aW9uLmNoYW5nZVN0ZXJlb3R5cGVEaXNwbGF5UHJvdmlkZXIiCisJCQkJCWRpc3BsYXlLaW5kPSJJY29uU3RlcmVvdHlwZSIgZGlzcGxheVBsYWNlPSJDb21wYXJ0bWVudCI+PC9wb3N0QWN0aW9uPgorCQkJPC9hc3BlY3RUb29sPgorCQkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IkNyZWF0ZSBhIG5ldyBJTk9VVCBGbG93UG9ydCIgaWQ9ImNvbXBvbmVudGRlZi50b29sLnBvcnRfaW5vdXQiCisJCQkJcmVmVG9vbElkPSJjb21wb3NpdGUudG9vbC5wb3J0IiBuYW1lPSJGbG93IFBvcnQgKElOT1VUKSIKKwkJCQlpY29ucGF0aD0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvSW5PdXQucG5nIj4KKwkJCQk8cG9zdEFjdGlvbiBpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5hcHBseXN0ZXJlb3R5cGVhY3Rpb25wcm92aWRlciI+CisJCQkJCTxzdGVyZW90eXBlc1RvQXBwbHk+CisJCQkJCQk8c3RlcmVvdHlwZSBzdGVyZW90eXBlTmFtZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ij4KKwkJCQkJCQk8cHJvcGVydHkgcHJvcGVydHlOYW1lPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQ6OmRpcmVjdGlvbiI+CisJCQkJCQkJCTx2YWx1ZT5pbm91dDwvdmFsdWU+CisJCQkJCQkJPC9wcm9wZXJ0eT4KKwkJCQkJCTwvc3RlcmVvdHlwZT4KKwkJCQkJPC9zdGVyZW90eXBlc1RvQXBwbHk+CisJCQkJPC9wb3N0QWN0aW9uPgorCQkJCTxwb3N0QWN0aW9uCisJCQkJCWlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnBvc3RhY3Rpb24uY2hhbmdlU3RlcmVvdHlwZURpc3BsYXlQcm92aWRlciIKKwkJCQkJZGlzcGxheUtpbmQ9Ikljb25TdGVyZW90eXBlIiBkaXNwbGF5UGxhY2U9IkNvbXBhcnRtZW50Ij48L3Bvc3RBY3Rpb24+CisJCQk8L2FzcGVjdFRvb2w+CisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IFByb3ZpZGVkIFNlcnZpY2VQb3J0IgorCQkJCWlkPSJjb21wb25lbnRkZWYudG9vbC5wb3J0X3Byb3ZpZGVkIiBuYW1lPSJTZXJ2aWNlIFBvcnQgKFBybykiCisJCQkJcmVmVG9vbElkPSJjb21wb3NpdGUudG9vbC5wb3J0IgorCQkJCWljb25wYXRoPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy9wb3J0cy9Qcm92aWRlZC5wbmciPgorCisJCQkJPHBvc3RBY3Rpb24gaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuYXBwbHlzdGVyZW90eXBlYWN0aW9ucHJvdmlkZXIiPgorCQkJCQk8c3RlcmVvdHlwZXNUb0FwcGx5PgorCQkJCQkJPHN0ZXJlb3R5cGUgc3RlcmVvdHlwZU5hbWU9IlJvYm90TUw6OlNlcnZpY2VQb3J0Ij4KKwkJCQkJCQk8cHJvcGVydHkgcHJvcGVydHlOYW1lPSJSb2JvdE1MOjpTZXJ2aWNlUG9ydDo6a2luZCI+CisJCQkJCQkJCTx2YWx1ZT5wcm92aWRlZDwvdmFsdWU+CisJCQkJCQkJPC9wcm9wZXJ0eT4KKwkJCQkJCTwvc3RlcmVvdHlwZT4KKwkJCQkJPC9zdGVyZW90eXBlc1RvQXBwbHk+CisJCQkJPC9wb3N0QWN0aW9uPgorCQkJCTxwb3N0QWN0aW9uCisJCQkJCWlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnBvc3RhY3Rpb24uY2hhbmdlU3RlcmVvdHlwZURpc3BsYXlQcm92aWRlciIKKwkJCQkJZGlzcGxheUtpbmQ9Ikljb25TdGVyZW90eXBlIiBkaXNwbGF5UGxhY2U9IkNvbXBhcnRtZW50Ij48L3Bvc3RBY3Rpb24+CisJCQk8L2FzcGVjdFRvb2w+CisKKwkJCTxhc3BlY3RUb29sIGRlc2NyaXB0aW9uPSJDcmVhdGUgYSBuZXcgUmVxdWlyZWQgU2VydmljZVBvcnQiCisJCQkJaWQ9ImNvbXBvbmVudGRlZi50b29sLnBvcnRfcmVxdWlyZWQiIG5hbWU9IlNlcnZpY2UgUG9ydCAoUmVxKSIKKwkJCQlyZWZUb29sSWQ9ImNvbXBvc2l0ZS50b29sLnBvcnQiCisJCQkJaWNvbnBhdGg9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zL3BvcnRzL1JlcXVpcmVkLnBuZyI+CisKKwkJCQk8cG9zdEFjdGlvbiBpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5hcHBseXN0ZXJlb3R5cGVhY3Rpb25wcm92aWRlciI+CisJCQkJCTxzdGVyZW90eXBlc1RvQXBwbHk+CisJCQkJCQk8c3RlcmVvdHlwZSBzdGVyZW90eXBlTmFtZT0iUm9ib3RNTDo6U2VydmljZVBvcnQiPgorCQkJCQkJCTxwcm9wZXJ0eSBwcm9wZXJ0eU5hbWU9IlJvYm90TUw6OlNlcnZpY2VQb3J0OjpraW5kIj4KKwkJCQkJCQkJPHZhbHVlPnJlcXVpcmVkPC92YWx1ZT4KKwkJCQkJCQk8L3Byb3BlcnR5PgorCQkJCQkJPC9zdGVyZW90eXBlPgorCQkJCQk8L3N0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQk8L3Bvc3RBY3Rpb24+CisJCQkJPHBvc3RBY3Rpb24KKwkJCQkJaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucG9zdGFjdGlvbi5jaGFuZ2VTdGVyZW90eXBlRGlzcGxheVByb3ZpZGVyIgorCQkJCQlkaXNwbGF5S2luZD0iSWNvblN0ZXJlb3R5cGUiIGRpc3BsYXlQbGFjZT0iQ29tcGFydG1lbnQiPjwvcG9zdEFjdGlvbj4KKwkJCTwvYXNwZWN0VG9vbD4KKwkJCQorCQkJPC9kcmF3ZXI+CisJCQk8ZHJhd2VyCisJCQlpY29ucGF0aD0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5nbWYucnVudGltZS5kaWFncmFtLnVpL2ljb25zL2dyb3VwLmdpZiIKKwkJCWlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21wb25lbnRkZWYuUk9CT1RNTF9Db21wb25lbnRkZWZfX1BsYXRmb3JtIgorCQkJbmFtZT0iVGFyZ2V0IFBsYXRmb3JtIj4KKwkJCTxhc3BlY3RUb29sIGRlc2NyaXB0aW9uPSJDcmVhdGUgYSBuZXcgUGxhdGZvcm0iIGlkPSJjb21wb25lbnRkZWYudG9vbC5wbGF0Zm9ybSIKKwkJCQluYW1lPSJQbGF0Zm9ybSIgcmVmVG9vbElkPSJjb21wb3NpdGUudG9vbC5jbGFzcyIKKwkJCQlpY29ucGF0aD0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMDVfcm9ib3RpY19wbGF0Zm9ybS5wbmciPgorCQkJCTxwb3N0QWN0aW9uIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLmFwcGx5c3RlcmVvdHlwZWFjdGlvbnByb3ZpZGVyIj4KKwkJCQk8c3RlcmVvdHlwZXNUb0FwcGx5PgorCQkJCQkJPHN0ZXJlb3R5cGUgc3RlcmVvdHlwZU5hbWU9IlJvYm90TUw6OlBsYXRmb3JtIj48L3N0ZXJlb3R5cGU+CisJCQkJCTwvc3RlcmVvdHlwZXNUb0FwcGx5PgorCQkJCTwvcG9zdEFjdGlvbj4JCisJCQk8L2FzcGVjdFRvb2w+CisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IE1pZGRsZXdhcmUiIGlkPSJjb21wb25lbnRkZWYudG9vbC5taWRkbGV3YXJlIgorCQkJCW5hbWU9Ik1pZGRsZXdhcmUiIHJlZlRvb2xJZD0iY29tcG9zaXRlLnRvb2wuY2xhc3MiCisJCQkJaWNvbnBhdGg9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzA1X3JvYm90aWNfbWlkZGxld2FyZS5wbmciPgorCQkJCTxwb3N0QWN0aW9uIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLmFwcGx5c3RlcmVvdHlwZWFjdGlvbnByb3ZpZGVyIj4KKwkJCQkJPHN0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQkJCTxzdGVyZW90eXBlIHN0ZXJlb3R5cGVOYW1lPSJSb2JvdE1MOjpSb2JvdGljTWlkZGxld2FyZSI+PC9zdGVyZW90eXBlPgorCQkJCQk8L3N0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQk8L3Bvc3RBY3Rpb24+CisJCQk8L2FzcGVjdFRvb2w+CisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IFNpbXVsYXRvciIgaWQ9ImNvbXBvbmVudGRlZi50b29sLnNpbXVsYXRvciIKKwkJCQluYW1lPSJTaW11bGF0b3IiIHJlZlRvb2xJZD0iY29tcG9zaXRlLnRvb2wuY2xhc3MiCisJCQkJaWNvbnBhdGg9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzA0X3JvYm90aWNfc2ltdWxhdG9yLnBuZyI+CisJCQkJPHBvc3RBY3Rpb24gaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuYXBwbHlzdGVyZW90eXBlYWN0aW9ucHJvdmlkZXIiPgorCQkJCQk8c3RlcmVvdHlwZXNUb0FwcGx5PgorCQkJCQkJPHN0ZXJlb3R5cGUgc3RlcmVvdHlwZU5hbWU9IlJvYm90TUw6OlJvYm90aWNTaW11bGF0b3IiPjwvc3RlcmVvdHlwZT4KKwkJCQkJPC9zdGVyZW90eXBlc1RvQXBwbHk+CisJCQkJPC9wb3N0QWN0aW9uPgorCQkJPC9hc3BlY3RUb29sPgorCQk8L2RyYXdlcj4KKwkJCTxkcmF3ZXIKKwkJCWljb25wYXRoPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLmdtZi5ydW50aW1lLmRpYWdyYW0udWkvaWNvbnMvZ3JvdXAuZ2lmIgorCQkJaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbXBvbmVudGRlZi5ST0JPVE1MX0NvbXBvbmVudGRlZl9fQ29tbWVudHMiCisJCQluYW1lPSJDb21tZW50cy9Db25zdHJhaW50cyI+CisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IENvbW1lbnQiIGlkPSJjb21wb25lbnRkZWYudG9vbC5jb21tZW50IgorCQkJCW5hbWU9IkNvbW1lbnQiIHJlZlRvb2xJZD0iY29tcG9zaXRlLnRvb2wuY29tbWVudCI+CisJCQk8L2FzcGVjdFRvb2w+CisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IENvbnN0cmFpbnQiIGlkPSJjb21wb25lbnRkZWYudG9vbC5jb25zdHJhaW50IgorCQkJCW5hbWU9IkNvbnN0cmFpbnQiIHJlZlRvb2xJZD0iY29tcG9zaXRlLnRvb2wuY29uc3RyYWludCI+CisJCQk8L2FzcGVjdFRvb2w+CisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IExpbmsgKENvbW1lbnQvQ29uc3RyYWludCkiCisJCQkJaWQ9ImNvbXBvbmVudGRlZi50b29sLmxpbmsiIG5hbWU9IkNvbW1lbnQvQ29uc3RyYWludCBsaW5rIgorCQkJCXJlZlRvb2xJZD0iY29tcG9zaXRlLnRvb2wubGluayI+CisJCQk8L2FzcGVjdFRvb2w+CisJCQkKKwkJPC9kcmF3ZXI+CisJCTxkcmF3ZXIKKwkJCWljb25wYXRoPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLmdtZi5ydW50aW1lLmRpYWdyYW0udWkvaWNvbnMvZ3JvdXAuZ2lmIgorCQkJaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbXBvbmVudGRlZi5ST0JPVE1MX0NvbXBvbmVudGRlZl9fTGlua3MiCisJCQluYW1lPSJFZGdlcyI+CisJCQkKKwkJCSA8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgR2VuZXJhbGl6YXRpb24gbGluayIgaWQ9ImNvbXBvbmVudGRlZi50b29sLmdlbmVyYWxpemF0aW9uIiAKKwkJCSBuYW1lPSJHZW5lcmFsaXphdGlvbiIgcmVmVG9vbElkPSJjb21wb3NpdGUudG9vbC5nZW5lcmFsaXphdGlvbiI+CisJCQkgPC9hc3BlY3RUb29sPgorCQkJIAorCQkJIAorCQk8L2RyYXdlcj4KKwk8L2NvbnRlbnQ+Cis8L3BhbGV0dGVEZWZpbml0aW9uPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2RpYWdyYW1zL2RhdGF0eXBlZGVmL2RhdGF0eXBlRC5naWYgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vZGlhZ3JhbXMvZGF0YXR5cGVkZWYvZGF0YXR5cGVELmdpZgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMzNjZGM3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2RpYWdyYW1zL2RhdGF0eXBlZGVmL2RhdGF0eXBlRC5naWYKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2RpYWdyYW1zL2RhdGF0eXBlZGVmL2RhdGF0eXBlZGVmLnBhbGV0dGUueG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2RpYWdyYW1zL2RhdGF0eXBlZGVmL2RhdGF0eXBlZGVmLnBhbGV0dGUueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjEzNDY1Y2UKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vZGlhZ3JhbXMvZGF0YXR5cGVkZWYvZGF0YXR5cGVkZWYucGFsZXR0ZS54bWwKQEAgLTAsMCArMSw2OCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cis8cGFsZXR0ZURlZmluaXRpb24+CisJPGNvbnRlbnQ+CisJCTxkcmF3ZXIKKwkJCWljb25wYXRoPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLmdtZi5ydW50aW1lLmRpYWdyYW0udWkvaWNvbnMvZ3JvdXAuZ2lmIgorCQkJaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmRpYWdyYW0uZGF0YXR5cGVkZWYuVU1MX0RhdGF0eXBlRGVmX19Ob2RlcyIgbmFtZT0iTm9kZXMiPgorCQkJCisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IFBhY2thZ2UiIGlkPSJkYXRhdHlwZWRlZi50b29sLnBhY2thZ2UiCisJCQkJbmFtZT0iUGFja2FnZSIgcmVmVG9vbElkPSJjbGF6ei50b29sLnBhY2thZ2UiPgorCQkJPC9hc3BlY3RUb29sPgkJCQorCQkJCisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IERhdGFUeXBlIiBpZD0iZGF0YXR5cGVkZWYudG9vbC5kYXRhdHlwZSIKKwkJCQluYW1lPSJEYXRhVHlwZSIgcmVmVG9vbElkPSJjbGF6ei50b29sLmRhdGF0eXBlIj4KKwkJCTwvYXNwZWN0VG9vbD4KKwkJCTxhc3BlY3RUb29sIGRlc2NyaXB0aW9uPSJDcmVhdGUgYSBuZXcgUHJpbWl0aXZlVHlwZSIgaWQ9ImRhdGF0eXBlZGVmLnRvb2wucHJpbWl0aXZldHlwZSIKKwkJCQluYW1lPSJQcmltaXRpdmVUeXBlIiByZWZUb29sSWQ9ImNsYXp6LnRvb2wucHJpbWl0aXZldHlwZSI+CisJCQk8L2FzcGVjdFRvb2w+CQkJCisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IEVudW1lcmF0aW9uIiBpZD0iZGF0YXR5cGVkZWYudG9vbC5lbnVtZXJhdGlvbiIKKwkJCQluYW1lPSJFbnVtZXJhdGlvbiIgcmVmVG9vbElkPSJjbGF6ei50b29sLmVudW1lcmF0aW9uIj4KKwkJCTwvYXNwZWN0VG9vbD4KKwkJCTxhc3BlY3RUb29sIGRlc2NyaXB0aW9uPSJDcmVhdGUgYSBuZXcgRW51bWVyYXRpb25MaXRlcmFsIiBpZD0iZGF0YXR5cGVkZWYudG9vbC5lbnVtZXJhdGlvbmxpdGVyYWwiCisJCQkJbmFtZT0iRW51bWVyYXRpb25MaXRlcmFsIiByZWZUb29sSWQ9ImNsYXp6LnRvb2wuZW51bWVyYXRpb25saXRlcmFsIj4KKwkJCTwvYXNwZWN0VG9vbD4KKwkJCTxhc3BlY3RUb29sIGRlc2NyaXB0aW9uPSJDcmVhdGUgYSBuZXcgU2lnbmFsIiBpZD0iZGF0YXR5cGVkZWYudG9vbC5zaWduYWwiCisJCQkJbmFtZT0iU2lnbmFsIiByZWZUb29sSWQ9ImNsYXp6LnRvb2wuc2lnbmFsIj4KKwkJCTwvYXNwZWN0VG9vbD4KKwkJCTxhc3BlY3RUb29sIGRlc2NyaXB0aW9uPSJDcmVhdGUgYSBuZXcgUHJvcGVydHkiIGlkPSJkYXRhdHlwZWRlZi50b29sLnByb3BlcnR5IgorCQkJCW5hbWU9IlByb3BlcnR5IiByZWZUb29sSWQ9ImNsYXp6LnRvb2wucHJvcGVydHkiPgorCQkJPC9hc3BlY3RUb29sPgorCQkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IkNyZWF0ZSBhIG5ldyBPcGVyYXRpb24iIGlkPSJkYXRhdHlwZWRlZi50b29sLm9wZXJhdGlvbiIKKwkJCQluYW1lPSJPcGVyYXRpb24iIHJlZlRvb2xJZD0iY2xhenoudG9vbC5vcGVyYXRpb24iPgorCQkJPC9hc3BlY3RUb29sPgorCQkJCisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IENvbW1lbnQiIGlkPSJkYXRhdHlwZWRlZi50b29sLmNvbW1lbnQiCisJCQkJbmFtZT0iQ29tbWVudCIgcmVmVG9vbElkPSJjbGF6ei50b29sLmNvbW1lbnQiPgorCQkJPC9hc3BlY3RUb29sPgorCQkJCisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IENvbnN0cmFpbnQiIGlkPSJkYXRhdHlwZWRlZi50b29sLmNvbnN0cmFpbnQiCisJCQkJbmFtZT0iQ29uc3RyYWludCIgcmVmVG9vbElkPSJjbGF6ei50b29sLmNvbnN0cmFpbnQiPgorCQkJPC9hc3BlY3RUb29sPgorCQkJCisJCTwvZHJhd2VyPgorCQkKKwkJPGRyYXdlcgorCQkJaWNvbnBhdGg9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UuZ21mLnJ1bnRpbWUuZGlhZ3JhbS51aS9pY29ucy9ncm91cC5naWYiCisJCQlpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uZGlhZ3JhbS5kYXRhdHlwZWRlZi5VTUxfRGF0YXR5cGVEZWZfX0VkZ2VzIiBuYW1lPSJFZGdlcyI+CisJCQkKKwkJCTxhc3BlY3RUb29sIGRlc2NyaXB0aW9uPSJDcmVhdGUgYSBuZXcgR2VuZXJhbGl6YXRpb24iIGlkPSJkYXRhdHlwZWRlZi50b29sLmdlbmVyYWxpemF0aW9uIgorCQkJCW5hbWU9IkdlbmVyYWxpemF0aW9uIiByZWZUb29sSWQ9ImNsYXp6LnRvb2wuZ2VuZXJhbGl6YXRpb24iPgorCQkJPC9hc3BlY3RUb29sPgorCQkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IkNyZWF0ZSBhIG5ldyBEZXBlbmRlbmN5IiBpZD0iZGF0YXR5cGVkZWYudG9vbC5kZXBlbmRlbmN5IgorCQkJCW5hbWU9IkRlcGVuZGVuY3kiIHJlZlRvb2xJZD0iY2xhenoudG9vbC5kZXBlbmRlbmN5Ij4KKwkJCTwvYXNwZWN0VG9vbD4JCQorCQkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IkNyZWF0ZSBhIG5ldyBBc3NvY2lhdGlvbiIgaWQ9ImRhdGF0eXBlZGVmLnRvb2wuYXNzb2NpYXRpb24iCisJCQkJbmFtZT0iQXNzb2NpYXRpb24iIHJlZlRvb2xJZD0iY2xhenoudG9vbC5hc3NvY2lhdGlvbiI+CisJCQk8L2FzcGVjdFRvb2w+CQkJCQorCQkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IkNyZWF0ZSBhIG5ldyBQYWNrYWdlTWVyZ2UiIGlkPSJkYXRhdHlwZWRlZi50b29sLnBhY2thZ2VtZXJnZSIKKwkJCQluYW1lPSJQYWNrYWdlTWVyZ2UiIHJlZlRvb2xJZD0iY2xhenoudG9vbC5wYWNrYWdlbWVyZ2UiPgorCQkJPC9hc3BlY3RUb29sPgorCQkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IkNyZWF0ZSBhIG5ldyBFbGVtZW50SW1wb3J0IiBpZD0iZGF0YXR5cGVkZWYudG9vbC5lbGVtZW50aW1wb3J0IgorCQkJCW5hbWU9IkVsZW1lbnRJbXBvcnQiIHJlZlRvb2xJZD0iY2xhenoudG9vbC5lbGVtZW50aW1wb3J0Ij4KKwkJCTwvYXNwZWN0VG9vbD4KKwkJCTxhc3BlY3RUb29sIGRlc2NyaXB0aW9uPSJDcmVhdGUgYSBuZXcgTGluayAoQ29tbWVudC9Db25zdHJhaW50KSIgaWQ9ImRhdGF0eXBlZGVmLnRvb2wubGluayIKKwkJCQluYW1lPSJDb21tZW50L0NvbnN0cmFpbnQgbGluayIgcmVmVG9vbElkPSJjbGF6ei50b29sLmxpbmsiPgorCQkJPC9hc3BlY3RUb29sPgorCQk8L2RyYXdlcj4KKwk8L2NvbnRlbnQ+Cis8L3BhbGV0dGVEZWZpbml0aW9uPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2RpYWdyYW1zL2ludGVyZmFjZWRlZi9pbnRlcmZhY2VJLmdpZiBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9kaWFncmFtcy9pbnRlcmZhY2VkZWYvaW50ZXJmYWNlSS5naWYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjMyOTgwZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9kaWFncmFtcy9pbnRlcmZhY2VkZWYvaW50ZXJmYWNlSS5naWYKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2RpYWdyYW1zL2ludGVyZmFjZWRlZi9pbnRlcmZhY2VkZWYucGFsZXR0ZS54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vZGlhZ3JhbXMvaW50ZXJmYWNlZGVmL2ludGVyZmFjZWRlZi5wYWxldHRlLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNTk5Nzk3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2RpYWdyYW1zL2ludGVyZmFjZWRlZi9pbnRlcmZhY2VkZWYucGFsZXR0ZS54bWwKQEAgLTAsMCArMSw1MCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cis8cGFsZXR0ZURlZmluaXRpb24+CisJPGNvbnRlbnQ+CisJCTxkcmF3ZXIKKwkJCWljb25wYXRoPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLmdtZi5ydW50aW1lLmRpYWdyYW0udWkvaWNvbnMvZ3JvdXAuZ2lmIgorCQkJaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmludGVyZmFjZWRlZi5ST0JPVE1MX0ludGVyZmFjZURlZl9fTm9kZXMiIG5hbWU9Ik5vZGVzIj4KKwkJCTxhc3BlY3RUb29sIGRlc2NyaXB0aW9uPSJDcmVhdGUgYSBuZXcgUGFja2FnZSIgaWQ9ImludGVyZmFjZWRlZi50b29sLnBhY2thZ2UiCisJCQkJbmFtZT0iUGFja2FnZSIgcmVmVG9vbElkPSJjbGF6ei50b29sLnBhY2thZ2UiPgorCQkJPC9hc3BlY3RUb29sPgorCQkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IkNyZWF0ZSBhIG5ldyBJbnRlcmZhY2UiIGlkPSJpbnRlcmZhY2VkZWYudG9vbC5pbnRlcmZhY2UiCisJCQkJbmFtZT0iSW50ZXJmYWNlIiByZWZUb29sSWQ9ImNsYXp6LnRvb2wuaW50ZXJmYWNlIj4KKwkJCTwvYXNwZWN0VG9vbD4KKwkJCTxhc3BlY3RUb29sIGRlc2NyaXB0aW9uPSJDcmVhdGUgYSBuZXcgUHJvcGVydHkiIGlkPSJpbnRlcmZhY2VkZWYudG9vbC5wcm9wZXJ0eSIKKwkJCQluYW1lPSJQcm9wZXJ0eSIgcmVmVG9vbElkPSJjbGF6ei50b29sLnByb3BlcnR5Ij4KKwkJCTwvYXNwZWN0VG9vbD4KKwkJCTxhc3BlY3RUb29sIGRlc2NyaXB0aW9uPSJDcmVhdGUgYSBuZXcgT3BlcmF0aW9uIiBpZD0iaW50ZXJmYWNlZGVmLnRvb2wub3BlcmF0aW9uIgorCQkJCW5hbWU9Ik9wZXJhdGlvbiIgcmVmVG9vbElkPSJjbGF6ei50b29sLm9wZXJhdGlvbiI+CisJCQk8L2FzcGVjdFRvb2w+CisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IFNpZ25hbCIgaWQ9ImludGVyZmFjZWRlZi50b29sLnNpZ25hbCIKKwkJCQluYW1lPSJTaWduYWwiIHJlZlRvb2xJZD0iY2xhenoudG9vbC5zaWduYWwiPgorCQkJPC9hc3BlY3RUb29sPgorCQkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IkNyZWF0ZSBhIG5ldyBSZWNlcHRpb24iIGlkPSJpbnRlcmZhY2VkZWYudG9vbC5yZWNlcHRpb24iCisJCQkJbmFtZT0iU2lnbmFsIiByZWZUb29sSWQ9ImNsYXp6LnRvb2wucmVjZXB0aW9uIj4KKwkJCTwvYXNwZWN0VG9vbD4KKwkJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IENvbW1lbnQiIGlkPSJpbnRlcmZhY2VkZWYudG9vbC5jb21tZW50IgorCQkJCW5hbWU9IkNvbW1lbnQiIHJlZlRvb2xJZD0iY2xhenoudG9vbC5jb21tZW50Ij4KKwkJCTwvYXNwZWN0VG9vbD4KKwkJCTxhc3BlY3RUb29sIGRlc2NyaXB0aW9uPSJDcmVhdGUgYSBuZXcgQ29uc3RyYWludCIgaWQ9ImludGVyZmFjZWRlZi50b29sLmNvbnN0cmFpbnQiCisJCQkJbmFtZT0iQ29uc3RyYWludCIgcmVmVG9vbElkPSJjbGF6ei50b29sLmNvbnN0cmFpbnQiPgorCQkJPC9hc3BlY3RUb29sPgorCQkJPC9kcmF3ZXI+CisJCQk8ZHJhd2VyCisJCQlpY29ucGF0aD0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5nbWYucnVudGltZS5kaWFncmFtLnVpL2ljb25zL2dyb3VwLmdpZiIKKwkJCWlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5pbnRlcmZhY2VkZWYuUk9CT1RNTF9JbnRlcmZhY2VEZWZfX0VkZ2VzIiBuYW1lPSJFZGdlcyI+CisJCQkKKwkJCQorCQkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IkNyZWF0ZSBhIG5ldyBVc2FnZSIgaWQ9ImludGVyZmFjZWRlZi50b29sLnBhY2thZ2VpbXBvcnQiCisJCQkJbmFtZT0iVXNhZ2UiIHJlZlRvb2xJZD0iY2xhenoudG9vbC51c2FnZSI+CisJCQk8L2FzcGVjdFRvb2w+CisJCQkKKwkJCTxhc3BlY3RUb29sIGRlc2NyaXB0aW9uPSJDcmVhdGUgYSBuZXcgUmVhbGl6YXRpb24iIGlkPSJpbnRlcmZhY2VkZWYudG9vbC5wYWNrYWdlbWVyZ2UiCisJCQkJbmFtZT0iUmVhbGl6YXRpb24iIHJlZlRvb2xJZD0iY2xhenoudG9vbC5yZWFsaXphdGlvbiI+CisJCQk8L2FzcGVjdFRvb2w+CisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IExpbmsgKENvbW1lbnQvQ29uc3RyYWludCkiIGlkPSJpbnRlcmZhY2VkZWYudG9vbC5saW5rIgorCQkJCW5hbWU9IkNvbW1lbnQvQ29uc3RyYWludCBsaW5rIiByZWZUb29sSWQ9ImNsYXp6LnRvb2wubGluayI+CisJCQk8L2FzcGVjdFRvb2w+CisJCQkKKwkJPC9kcmF3ZXI+CisJPC9jb250ZW50PgorPC9wYWxldHRlRGVmaW5pdGlvbj4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9pY29ucy9jb2RlX2dlbmVyYXRpb24uZ2lmIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2ljb25zL2NvZGVfZ2VuZXJhdGlvbi5naWYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmEwNGM0OQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9pY29ucy9jb2RlX2dlbmVyYXRpb24uZ2lmCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9pY29ucy9yb2JvdG1sXzE2eDE2LnBuZyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9pY29ucy9yb2JvdG1sXzE2eDE2LnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wMmQyMjViCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2ljb25zL3JvYm90bWxfMTZ4MTYucG5nCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9pY29ucy9yb2JvdG1sXzMyXzMyLnBuZyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9pY29ucy9yb2JvdG1sXzMyXzMyLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kMjQxMGI3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2ljb25zL3JvYm90bWxfMzJfMzIucG5nCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9wbHVnaW4ucHJvcGVydGllcyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9wbHVnaW4ucHJvcGVydGllcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43YWE3M2U1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3BsdWdpbi5wcm9wZXJ0aWVzCkBAIC0wLDAgKzEsMyBAQAorI1Byb3BlcnRpZXMgZmlsZSBmb3Igb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uCitCdW5kbGUtVmVuZG9yID0gIEVjbGlwc2UgTW9kZWxpbmcgUHJvamVjdAorQnVuZGxlLU5hbWUgPSBDb21tb24gcGx1Z2luIGZvciBSb2JvdE1MIChJbmN1YmF0aW9uKQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9wbHVnaW4ueG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3BsdWdpbi54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTM3ZWVhMQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9wbHVnaW4ueG1sCkBAIC0wLDAgKzEsMTkxIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPD9lY2xpcHNlIHZlcnNpb249IjMuNCI/PgorPHBsdWdpbj4KKyAgIDxleHRlbnNpb24KKyAgICAgICAgIHBvaW50PSJvcmcuZWNsaXBzZS5wYXB5cnVzLmluZnJhLmNvcmUucGFweXJ1c0RpYWdyYW0iPgorICAgICAgPGRpYWdyYW1DYXRlZ29yeQorICAgICAgICAgICAgY2xhc3M9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi5jb21tYW5kcy5DcmVhdGVSb2JvdG1sTW9kZWxDb21tYW5kIgorICAgICAgICAgICAgZGVzY3JpcHRpb249IlJvYm90TUwgZGlhZ3JhbXMiCisgICAgICAgICAgICBpY29uPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy9yb2JvdG1sL1JvYm90TUwtMzJ4MzIucG5nIgorICAgICAgICAgICAgaWQ9InJvYm90TUwiCisgICAgICAgICAgICBsYWJlbD0iUm9ib3RNTCI+CisgICAgICA8L2RpYWdyYW1DYXRlZ29yeT4KKyAgICAgIDxlZGl0b3JEaWFncmFtCisgICAgICAgICAgICBhY3Rpb25CYXJDb250cmlidXRvcklkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5kaWFncmFtLmNvbW1vbi5wYXJ0LlVNTERpYWdyYW1BY3Rpb25CYXJDb250cmlidXRvciIKKyAgICAgICAgICAgIGZhY3RvcnlDbGFzcz0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLmZhY3RvcnkuUm9ib3RNTEFyY2hpdGVjdHVyZTJDb21wb3NpdGVEaWFncmFtRmFjdG9yeSIKKyAgICAgICAgICAgIGljb249Imljb25zL3JvYm90bWxfMTZ4MTYucG5nIj4KKyAgICAgIDwvZWRpdG9yRGlhZ3JhbT4KKyAgICAgIDxlZGl0b3JEaWFncmFtCisgICAgICAgICAgICBhY3Rpb25CYXJDb250cmlidXRvcklkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5kaWFncmFtLmNvbW1vbi5wYXJ0LlVNTERpYWdyYW1BY3Rpb25CYXJDb250cmlidXRvciIKKyAgICAgICAgICAgIGZhY3RvcnlDbGFzcz0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLmZhY3RvcnkuUm9ib3RNTENvbXBvbmVudDJDb21wb3NpdGVEaWFncmFtRmFjdG9yeSIKKyAgICAgICAgICAgIGljb249Imljb25zL3JvYm90bWxfMTZ4MTYucG5nIj4KKyAgICAgIDwvZWRpdG9yRGlhZ3JhbT4KKyAgICAgIDxlZGl0b3JEaWFncmFtCisgICAgICAgICAgICBhY3Rpb25CYXJDb250cmlidXRvcklkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5kaWFncmFtLmNvbW1vbi5wYXJ0LlVNTERpYWdyYW1BY3Rpb25CYXJDb250cmlidXRvciIKKyAgICAgICAgICAgIGZhY3RvcnlDbGFzcz0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLmZhY3RvcnkuUm9ib3RNTERhdGF0eXBlMkNsYXNzRGlhZ3JhbUZhY3RvcnkiCisgICAgICAgICAgICBpY29uPSJpY29ucy9yb2JvdG1sXzE2eDE2LnBuZyI+CisgICAgICA8L2VkaXRvckRpYWdyYW0+CisgICAgICA8ZWRpdG9yRGlhZ3JhbQorICAgICAgICAgICAgYWN0aW9uQmFyQ29udHJpYnV0b3JJZD0ib3JnLmVjbGlwc2UucGFweXJ1cy51bWwuZGlhZ3JhbS5jb21tb24ucGFydC5VTUxEaWFncmFtQWN0aW9uQmFyQ29udHJpYnV0b3IiCisgICAgICAgICAgICBmYWN0b3J5Q2xhc3M9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi5mYWN0b3J5LlJvYm90TUxJbnRlcmZhY2UyQ2xhc3NEaWFncmFtRmFjdG9yeSIKKyAgICAgICAgICAgIGljb249Imljb25zL3JvYm90bWxfMTZ4MTYucG5nIj4KKyAgICAgIDwvZWRpdG9yRGlhZ3JhbT4KKyAgIDwvZXh0ZW5zaW9uPgorICAgPGV4dGVuc2lvbgorICAgICAgICAgcG9pbnQ9Im9yZy5lY2xpcHNlLmNvcmUuZXhwcmVzc2lvbnMuZGVmaW5pdGlvbnMiPgorICAgICAgPGRlZmluaXRpb24KKyAgICAgICAgICAgIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24uSXNQYXB5cnVzQWN0aXZlV2l0aFJvYm90bWwiPgorICAgICAgICAgPGFuZD4KKyAgICAgICAgICAgIDx3aXRoCisgICAgICAgICAgICAgICAgICB2YXJpYWJsZT0iYWN0aXZlRWRpdG9ySWQiPgorICAgICAgICAgICAgICAgPGVxdWFscworICAgICAgICAgICAgICAgICAgICAgdmFsdWU9Im9yZy5lY2xpcHNlLnBhcHlydXMuaW5mcmEuY29yZS5wYXB5cnVzRWRpdG9yIj4KKyAgICAgICAgICAgICAgIDwvZXF1YWxzPgorICAgICAgICAgICAgPC93aXRoPgorICAgICAgICAgICAgPHdpdGgKKyAgICAgICAgICAgICAgICAgIHZhcmlhYmxlPSJzZWxlY3Rpb24iPgorICAgICAgICAgICAgICAgPHRlc3QKKyAgICAgICAgICAgICAgICAgICAgIGZvcmNlUGx1Z2luQWN0aXZhdGlvbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICAgICAgIHByb3BlcnR5PSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90bWxTZWxlY3Rpb25UZXN0ZXIuaXNSb2JvdG1sTW9kZWwiCisgICAgICAgICAgICAgICAgICAgICB2YWx1ZT0idHJ1ZSI+CisgICAgICAgICAgICAgICA8L3Rlc3Q+CisgICAgICAgICAgICA8L3dpdGg+CisgICAgICAgICA8L2FuZD4KKyAgICAgIDwvZGVmaW5pdGlvbj4KKyAgIDwvZXh0ZW5zaW9uPgorICAgPGV4dGVuc2lvbgorICAgICAgICAgcG9pbnQ9Im9yZy5lY2xpcHNlLmNvcmUuZXhwcmVzc2lvbnMucHJvcGVydHlUZXN0ZXJzIj4KKyAgICAgIDxwcm9wZXJ0eVRlc3RlcgorICAgICAgICAgICAgY2xhc3M9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi51dGlscy5Sb2JvdG1sU2VsZWN0aW9uVGVzdGVyIgorICAgICAgICAgICAgaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RtbFNlbGVjdGlvblRlc3RlciIKKyAgICAgICAgICAgIG5hbWVzcGFjZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdG1sU2VsZWN0aW9uVGVzdGVyIgorICAgICAgICAgICAgcHJvcGVydGllcz0iaXNSb2JvdG1sTW9kZWwiCisgICAgICAgICAgICB0eXBlPSJvcmcuZWNsaXBzZS5qZmFjZS52aWV3ZXJzLklTZWxlY3Rpb24iPgorICAgICAgPC9wcm9wZXJ0eVRlc3Rlcj4KKyAgIDwvZXh0ZW5zaW9uPgorICAgCis8ZXh0ZW5zaW9uIGlkPSJwYXB5cnVzLnJvYm90TUwubWVudXNwYXB5cnVzLmdlbmVyYXRlIiBuYW1lPSJHZW5lcmF0ZSB0byBNaWRkbGV3YXJlL1NpbXVsYXRvciIgcG9pbnQ9Im9yZy5lY2xpcHNlLnVpLm1lbnVzIj4KKyAgICAgIDxtZW51Q29udHJpYnV0aW9uIGFsbFBvcHVwcz0iZmFsc2UiIGxvY2F0aW9uVVJJPSJwb3B1cDpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLm1vZGVsZXhwbG9yZXIubW9kZWxleHBsb3Jlci5wb3B1cD9hZnRlcj1vcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLm1vZGVsZXhwbG9yZXIucG9wdXBtZW51LmNyZWF0ZWNoaWxkIj4KKyAgICAgICAgIDxtZW51CisgICAgICAgICAgICAgICBpY29uPSJpY29ucy9jb2RlX2dlbmVyYXRpb24uZ2lmIgorICAgICAgICAgICAgICAgaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RNTC5tb2RlbGV4cGxvcmVyLnBvcHVwbWVudS5nZW5lcmF0ZSIKKyAgICAgICAgICAgICAgIGxhYmVsPSJHZW5lcmF0ZSB0byBNaWRkbGV3YXJlL1NpbXVsYXRvciIKKyAgICAgICAgICAgICAgIG1uZW1vbmljPSImYW1wO0ciCisgICAgICAgICAgICAgICB0b29sdGlwPSJHZW5lcmF0ZSBmcm9tIG1vZGVsIHRvIHJvYm90aWMgTWlkZGxld2FyZS9TaW11bGF0b3IiPgorICAgICAgICAgICAgPHZpc2libGVXaGVuCisgICAgICAgICAgICAgICAgICBjaGVja0VuYWJsZWQ9ImZhbHNlIj4KKyAgICAgICAgICAgICAgICAgIDxyZWZlcmVuY2UKKyAgICAgICAgICAgICAgICAgICAgIGRlZmluaXRpb25JZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLklzUGFweXJ1c0FjdGl2ZVdpdGhSb2JvdG1sIj4KKyAgICAgICAgICAgICAgIDwvcmVmZXJlbmNlPgorICAgICAgICAgICAgPC92aXNpYmxlV2hlbj4KKyAgICAgICAgIDwvbWVudT4gICAgIAorICAgICAgIDwvbWVudUNvbnRyaWJ1dGlvbj4KKyAgICAgIDxtZW51Q29udHJpYnV0aW9uCisgICAgICAgICAgICBhbGxQb3B1cHM9ImZhbHNlIgorICAgICAgICAgICAgbG9jYXRpb25VUkk9InBvcHVwOm9yZy5lY2xpcHNlLnVpLm5hdmlnYXRvci5Qcm9qZWN0RXhwbG9yZXIjUG9wdXBNZW51P2FmdGVyPWFkZGl0aW9ucyI+CisgICAgICAgICA8bWVudQorICAgICAgICAgICAgICAgaWNvbj0iaWNvbnMvcm9ib3RtbF8xNngxNi5wbmciCisgICAgICAgICAgICAgICBpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0ubWlncmF0ZSIKKyAgICAgICAgICAgICAgIGxhYmVsPSJSb2JvdE1MIj4KKyAgICAgICAgICAgICAgIDx2aXNpYmxlV2hlbgorICAgICAgICAgICAgICAgICAgY2hlY2tFbmFibGVkPSJmYWxzZSI+CisgICAgICAgICAgICAgICAgICA8cmVmZXJlbmNlCisgICAgICAgICAgICAgICAgICAgICBkZWZpbml0aW9uSWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi5Jc1BhcHlydXNBY3RpdmVXaXRoUm9ib3RtbCI+CisgICAgICAgICAgICAgICA8L3JlZmVyZW5jZT4KKyAgICAgICAgICAgIDwvdmlzaWJsZVdoZW4+CisgICAgICAgICAgICA8Y29tbWFuZAorICAgICAgICAgICAgICAgICAgY29tbWFuZElkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5taWdyYXRlIgorICAgICAgICAgICAgICAgICAgc3R5bGU9InB1c2giPgorICAgICAgICAgICAgICAgICAgPHZpc2libGVXaGVuCisgICAgICAgICAgICAgICAgICAgICBjaGVja0VuYWJsZWQ9ImZhbHNlIj4KKyAgICAgICAgICAgICAgICAgIDx3aXRoCisgICAgICAgICAgICAgICAgICAgICAgICB2YXJpYWJsZT0ic2VsZWN0aW9uIj4KKyAgICAgICAgICAgICAgICAgICAgIDxpdGVyYXRlCisgICAgICAgICAgICAgICAgICAgICAgICAgICBpZkVtcHR5PSJmYWxzZSIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wZXJhdG9yPSJhbmQiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGFkYXB0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPSJvcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5JRmlsZSI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3I+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGVzdAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvcGVydHk9Im9yZy5lY2xpcHNlLmNvcmUucmVzb3VyY2VzLmV4dGVuc2lvbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlPSJkaSI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3Rlc3Q+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGVzdAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvcGVydHk9Im9yZy5lY2xpcHNlLmNvcmUucmVzb3VyY2VzLmV4dGVuc2lvbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlPSJ1bWwiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZXN0PgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRlc3QKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb3BlcnR5PSJvcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5leHRlbnNpb24iCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT0ibm90YXRpb24iPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZXN0PgorICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9vcj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvYWRhcHQ+CisgICAgICAgICAgICAgICAgICAgICA8L2l0ZXJhdGU+CisgICAgICAgICAgICAgICAgICA8L3dpdGg+CisgICAgICAgICAgICAgICA8L3Zpc2libGVXaGVuPgorICAgICAgICAgICAgPC9jb21tYW5kPgorICAgICAgICAgPC9tZW51PgorICAgICAgPC9tZW51Q29udHJpYnV0aW9uPgorIDwvZXh0ZW5zaW9uPiAgICAKKyA8ZXh0ZW5zaW9uCisgICAgICAgICBwb2ludD0ib3JnLmVjbGlwc2UudWkuY29tbWFuZHMiPgorICAgICAgPGNhdGVnb3J5CisgICAgICAgICAgICBkZXNjcmlwdGlvbj0idGhpcyBhIGNhdGVnb3J5IG9mIFJvYm90TUwgY29tbWFuZHMiCisgICAgICAgICAgICBpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdE1MLmdlbmVyYXRpb24uY2F0ZWdvcnkiCisgICAgICAgICAgICBuYW1lPSJSb2JvdE1MIGdlbmVyYXRpb24gQ2F0ZWdvcnkiPgorICAgICAgPC9jYXRlZ29yeT4KKyAgICAgIDxjb21tYW5kCisgICAgICAgICAgICBkZWZhdWx0SGFuZGxlcj0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLm1pZ3JhdGlvbi5NaWdyYXRlRGlhZ3JhbXNIYW5kbGVyIgorICAgICAgICAgICAgaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLm1pZ3JhdGUiCisgICAgICAgICAgICBuYW1lPSJNaWdyYXRlIFJvYm90TUwgZGlhZ3JhbXMgZnJvbSAwLjkgdG8gMS4wIHZlcnNpb24iPgorICAgICAgPC9jb21tYW5kPgorICAgPC9leHRlbnNpb24+CisgPGV4dGVuc2lvbgorICAgICAgIHBvaW50PSJvcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzLmxhbmd1YWdlRWRpdG9yIj4KKyAgICA8ZWRpdG9yCisgICAgICAgICAgZWRpdG9yPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzLndpZGdldHMuTmF0dXJhbExhbmd1YWdlRWRpdG9yIgorICAgICAgICAgIGxhbmd1YWdlPSJhbGYiPgorICAgIDwvZWRpdG9yPgorIDwvZXh0ZW5zaW9uPgorIDxleHRlbnNpb24KKyAgICAgICBwb2ludD0ib3JnLmVjbGlwc2UucGFweXJ1cy5pbmZyYS52aWV3cG9pbnRzLnBvbGljeS5jdXN0b20iPgorICAgIDxjb250cmlidXRpb24KKyAgICAgICAgICBmaWxlPSJ2aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiIKKyAgICAgICAgICBvcmlnaW5hbD0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLmluZnJhLnZpZXdwb2ludHMucG9saWN5L2J1aWx0aW4vZGVmYXVsdC5jb25maWd1cmF0aW9uIj4KKyAgICA8L2NvbnRyaWJ1dGlvbj4KKyA8L2V4dGVuc2lvbj4KKyA8ZXh0ZW5zaW9uCisJcG9pbnQ9Im9yZy5lY2xpcHNlLmdtZi5ydW50aW1lLmRpYWdyYW0udWkuZWRpdHBvbGljeVByb3ZpZGVycyI+CisJPGVkaXRwb2xpY3lQcm92aWRlcgorCQljbGFzcz0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLmVkaXRwb2xpY3kucHJvdmlkZXIuUm9ib3RNTERpYWdyYW1zRWRpdFBvbGljeVByb3ZpZGVyIj4KKwkJPFByaW9yaXR5IG5hbWU9IkxvdyIvPgorCTwvZWRpdHBvbGljeVByb3ZpZGVyPgorPC9leHRlbnNpb24+Cis8ZXh0ZW5zaW9uCisgICAgICBwb2ludD0ib3JnLmVjbGlwc2UucGFweXJ1cy5pbmZyYS5nbWZkaWFnLmNvbW1vbi5kaWFncmFtUmVjb25jaWxlciI+CisgICA8ZGlhZ3JhbVJlY29uY2lsZXIKKyAgICAgICAgIGRpYWdyYW1UeXBlPSJjb21wb25lbnRkZWYiCisgICAgICAgICByZWNvbmNpbGVyQ2xhc3M9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi5taWdyYXRpb24uUm9ib3RNTFJlY29uY2lsZXIiCisgICAgICAgICBzb3VyY2U9IjAuOS4wIgorICAgICAgICAgdGFyZ2V0PSIxLjAuMCI+CisgICA8L2RpYWdyYW1SZWNvbmNpbGVyPgorICAgPGRpYWdyYW1SZWNvbmNpbGVyCisgICAgICAgICBkaWFncmFtVHlwZT0iRGF0YXR5cGVEZWYiCisgICAgICAgICByZWNvbmNpbGVyQ2xhc3M9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi5taWdyYXRpb24uUm9ib3RNTFJlY29uY2lsZXIiCisgICAgICAgICBzb3VyY2U9IjAuOS4wIgorICAgICAgICAgdGFyZ2V0PSIxLjAuMCI+CisgICA8L2RpYWdyYW1SZWNvbmNpbGVyPgorICAgPGRpYWdyYW1SZWNvbmNpbGVyCisgICAgICAgICBkaWFncmFtVHlwZT0iYXJjaGl0ZWN0dXJlIgorICAgICAgICAgcmVjb25jaWxlckNsYXNzPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24ubWlncmF0aW9uLlJvYm90TUxSZWNvbmNpbGVyIgorICAgICAgICAgc291cmNlPSIwLjkuMCIKKyAgICAgICAgIHRhcmdldD0iMS4wLjAiPgorICAgPC9kaWFncmFtUmVjb25jaWxlcj4KKyAgIDxkaWFncmFtUmVjb25jaWxlcgorICAgICAgICAgZGlhZ3JhbVR5cGU9IkludGVyZmFjZURlZiIKKyAgICAgICAgIHJlY29uY2lsZXJDbGFzcz0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLm1pZ3JhdGlvbi5Sb2JvdE1MUmVjb25jaWxlciIKKyAgICAgICAgIHNvdXJjZT0iMC45LjAiCisgICAgICAgICB0YXJnZXQ9IjEuMC4wIj4KKyAgIDwvZGlhZ3JhbVJlY29uY2lsZXI+Cis8L2V4dGVuc2lvbj4KKzwvcGx1Z2luPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3BvbS54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vcG9tLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44MDJlZDZiCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3BvbS54bWwKQEAgLTAsMCArMSwxMSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxwcm9qZWN0PgorCTxtb2RlbFZlcnNpb24+NC4wLjA8L21vZGVsVmVyc2lvbj4KKwk8cGFyZW50PgorCQk8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGFyZW50PC9hcnRpZmFjdElkPgorCQk8Z3JvdXBJZD5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWw8L2dyb3VwSWQ+CisJCTx2ZXJzaW9uPjEuMi4wLVNOQVBTSE9UPC92ZXJzaW9uPgorCTwvcGFyZW50PgorCTxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbjwvYXJ0aWZhY3RJZD4KKwk8cGFja2FnaW5nPmVjbGlwc2UtcGx1Z2luPC9wYWNrYWdpbmc+Cis8L3Byb2plY3Q+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGlhZ3JhbS9jb21tb24vQWN0aXZhdG9yLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kaWFncmFtL2NvbW1vbi9BY3RpdmF0b3IuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNjA2MWM5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGlhZ3JhbS9jb21tb24vQWN0aXZhdG9yLmphdmEKQEAgLTAsMCArMSw3MCBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTMgQ0VBIExJU1QuCisgKgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgU2FhZGlhIERob3VpYiAoQ0VBIExJU1QpIHNhYWRpYS5kaG91aWJAY2VhLmZyIC0gSW5pdGlhbCBBUEkgYW5kIGltcGxlbWVudGF0aW9uCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuaW5mcmEuY29yZS5sb2cuTG9nSGVscGVyOworaW1wb3J0IG9yZy5lY2xpcHNlLnVpLnBsdWdpbi5BYnN0cmFjdFVJUGx1Z2luOworaW1wb3J0IG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0OworCisvKioKKyAqIFRoZSBhY3RpdmF0b3IgY2xhc3MgY29udHJvbHMgdGhlIHBsdWctaW4gbGlmZSBjeWNsZQorICovCitwdWJsaWMgY2xhc3MgQWN0aXZhdG9yIGV4dGVuZHMgQWJzdHJhY3RVSVBsdWdpbiB7CisKKwkvLyBUaGUgcGx1Zy1pbiBJRAorCXB1YmxpYyBzdGF0aWMgZmluYWwgU3RyaW5nIFBMVUdJTl9JRCA9ICJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24iOyAvLyROT04tTkxTLTEkCisKKwkvLyBUaGUgc2hhcmVkIGluc3RhbmNlCisJcHJpdmF0ZSBzdGF0aWMgQWN0aXZhdG9yIHBsdWdpbjsKKworCS8qKiBMb2dnaW5nIGhlbHBlciAqLworCXB1YmxpYyBzdGF0aWMgTG9nSGVscGVyIGxvZzsKKworCS8qKgorCSAqIFRoZSBjb25zdHJ1Y3RvcgorCSAqLworCXB1YmxpYyBBY3RpdmF0b3IoKSB7CisJfQorCisJLyoKKwkgKiAobm9uLUphdmFkb2MpCisJICoKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnVpLnBsdWdpbi5BYnN0cmFjdFVJUGx1Z2luI3N0YXJ0KG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0KQorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIHN0YXJ0KEJ1bmRsZUNvbnRleHQgY29udGV4dCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCXN1cGVyLnN0YXJ0KGNvbnRleHQpOworCQlwbHVnaW4gPSB0aGlzOworCQlsb2cgPSBuZXcgTG9nSGVscGVyKHBsdWdpbik7CisJfQorCisJLyoKKwkgKiAobm9uLUphdmFkb2MpCisJICoKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnVpLnBsdWdpbi5BYnN0cmFjdFVJUGx1Z2luI3N0b3Aob3JnLm9zZ2kuZnJhbWV3b3JrLkJ1bmRsZUNvbnRleHQpCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgc3RvcChCdW5kbGVDb250ZXh0IGNvbnRleHQpIHRocm93cyBFeGNlcHRpb24geworCQlwbHVnaW4gPSBudWxsOworCQlzdXBlci5zdG9wKGNvbnRleHQpOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHNoYXJlZCBpbnN0YW5jZQorCSAqCisJICogQHJldHVybiB0aGUgc2hhcmVkIGluc3RhbmNlCisJICovCisJcHVibGljIHN0YXRpYyBBY3RpdmF0b3IgZ2V0RGVmYXVsdCgpIHsKKwkJcmV0dXJuIHBsdWdpbjsKKwl9CisKK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RpYWdyYW0vY29tbW9uL2NvbW1hbmRzL0NyZWF0ZVJvYm90bWxNb2RlbENvbW1hbmQuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RpYWdyYW0vY29tbW9uL2NvbW1hbmRzL0NyZWF0ZVJvYm90bWxNb2RlbENvbW1hbmQuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iZWM0ZDAyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGlhZ3JhbS9jb21tb24vY29tbWFuZHMvQ3JlYXRlUm9ib3RtbE1vZGVsQ29tbWFuZC5qYXZhCkBAIC0wLDAgKzEsNzggQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIENFQSBMSVNULgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBEaG91aWIgKENFQSBMSVNUKSBzYWFkaWEuZGhvdWliQGNlYS5mciAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24uY29tbWFuZHM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuVVJJOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMudW1sLmRpYWdyYW0uY29tbW9uLmNvbW1hbmRzLk1vZGVsQ3JlYXRpb25Db21tYW5kQmFzZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC50b29scy51dGlscy5QYWNrYWdlVXRpbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5Qcm9maWxlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlVNTEZhY3Rvcnk7CisKK3B1YmxpYyBjbGFzcyBDcmVhdGVSb2JvdG1sTW9kZWxDb21tYW5kIGV4dGVuZHMgTW9kZWxDcmVhdGlvbkNvbW1hbmRCYXNlIHsKKworCXB1YmxpYyBzdGF0aWMgZmluYWwgU3RyaW5nIENPTU1BTkRfSUQgPSAicm9ib3RNTCI7CisKKworCisJcHVibGljIHN0YXRpYyBmaW5hbCBTdHJpbmcgUFJPRklMRVNfUEFUSE1BUCA9ICJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy8iOyAvLyROT04tTkxTLTEkCisKKworCXB1YmxpYyBzdGF0aWMgZmluYWwgU3RyaW5nIFJPQk9UTUxfUFJPRklMRV9VUkkgPSBQUk9GSUxFU19QQVRITUFQICsgIlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sIjsgLy8kTk9OLU5MUy0xJAorCisJLy8gcHVibGljIHN0YXRpYyBmaW5hbCBTdHJpbmcgRkNNX1BST0ZJTEVfVVJJID0gInBhdGhtYXA6Ly9GQ01fUFJPRklMRVMvRkNNLnByb2ZpbGUudW1sIjsKKworCS8vcHVibGljIHN0YXRpYyBmaW5hbCBTdHJpbmcgUk9CT1RNTF9QUk9GSUxFX1VSSSA9IFBST0ZJTEVTX1BBVEhNQVAgKyAiUm9ib3RNTC5wcm9maWxlLnVtbCI7IC8vJE5PTi1OTFMtMSQKKworCisJLyoqCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLmNvcmUuZXh0ZW5zaW9uLmNvbW1hbmRzLk1vZGVsQ3JlYXRpb25Db21tYW5kQmFzZSNjcmVhdGVSb290RWxlbWVudCgpCisJICoKKwkgKiBAcmV0dXJuCisJICovCisKKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRU9iamVjdCBjcmVhdGVSb290RWxlbWVudCgpIHsKKwkJcmV0dXJuIFVNTEZhY3RvcnkuZUlOU1RBTkNFLmNyZWF0ZU1vZGVsKCk7CisJfQorCisJLyoqCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLmNvcmUuZXh0ZW5zaW9uLmNvbW1hbmRzLk1vZGVsQ3JlYXRpb25Db21tYW5kQmFzZSNpbml0aWFsaXplTW9kZWwob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpCisJICoKKwkgKiBAcGFyYW0gb3duZXIKKwkgKi8KKworCUBPdmVycmlkZQorCXByb3RlY3RlZCB2b2lkIGluaXRpYWxpemVNb2RlbChFT2JqZWN0IG93bmVyKSB7CisJCXN1cGVyLmluaXRpYWxpemVNb2RlbChvd25lcik7CisJCSgob3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZSkgb3duZXIpLnNldE5hbWUoZ2V0TW9kZWxOYW1lKCkpOworCisJCS8vIFJldHJpZXZlIHJvYm90bWwgcHJvZmlsZSBhbmQgYXBwbHkgd2l0aCBTdWItcHJvZmlsZQorCQlvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlIHJvYm90bWwgPSBQYWNrYWdlVXRpbC5sb2FkUGFja2FnZShVUkkuY3JlYXRlVVJJKFJPQk9UTUxfUFJPRklMRV9VUkkpLCBvd25lci5lUmVzb3VyY2UoKS5nZXRSZXNvdXJjZVNldCgpKTsKKwkJLy8gb3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZSBmY20gPSBQYWNrYWdlVXRpbC5sb2FkUGFja2FnZShVUkkuY3JlYXRlVVJJKEZDTV9QUk9GSUxFX1VSSSksIG93bmVyLmVSZXNvdXJjZSgpLmdldFJlc291cmNlU2V0KCkpOworCQlpZiAoKHJvYm90bWwgIT0gbnVsbCkgJiYgKHJvYm90bWwgaW5zdGFuY2VvZiBQcm9maWxlKSkgeworCQkJUGFja2FnZVV0aWwuYXBwbHlQcm9maWxlKCgob3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZSkgb3duZXIpLCAob3JnLmVjbGlwc2UudW1sMi51bWwuUHJvZmlsZSkgcm9ib3RtbCwgdHJ1ZSk7CisJCQkvLyBQYWNrYWdlVXRpbC5hcHBseVByb2ZpbGUoKChvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlKW93bmVyKSwgKG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb2ZpbGUpIGZjbSwgdHJ1ZSk7CisJCX0KKwl9CisKKwkvKioKKwkgKiBHZXRzIHRoZSBtb2RlbCBuYW1lLgorCSAqCisJICogQHJldHVybiB0aGUgbW9kZWwgbmFtZQorCSAqLworCXByb3RlY3RlZCBTdHJpbmcgZ2V0TW9kZWxOYW1lKCkgeworCQlyZXR1cm4gIlJvYm90TUxNb2RlbCI7CisJfQorCisKK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RpYWdyYW0vY29tbW9uL2VkaXRwb2xpY2llcy9Qb3J0Tm9kZUxhYmVsRGlzcGxheUVkaXRQb2xpY3kuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RpYWdyYW0vY29tbW9uL2VkaXRwb2xpY2llcy9Qb3J0Tm9kZUxhYmVsRGlzcGxheUVkaXRQb2xpY3kuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41NzExZWEyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGlhZ3JhbS9jb21tb24vZWRpdHBvbGljaWVzL1BvcnROb2RlTGFiZWxEaXNwbGF5RWRpdFBvbGljeS5qYXZhCkBAIC0wLDAgKzEsOTAgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIENFQSBMSVNULgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBEaG91aWIgKENFQSBMSVNUKSBzYWFkaWEuZGhvdWliQGNlYS5mciAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24uZWRpdHBvbGljaWVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZHJhdzJkLklGaWd1cmU7CitpbXBvcnQgb3JnLmVjbGlwc2UuZHJhdzJkLmdlb21ldHJ5LlJlY3RhbmdsZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmdtZi5ydW50aW1lLm5vdGF0aW9uLk5vdGF0aW9uUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5kaWFncmFtLmNvbW1vbi5BY3RpdmF0b3I7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy51bWwuZGlhZ3JhbS5jb21tb24uZWRpdHBvbGljaWVzLkFwcGxpZWRTdGVyZW90eXBlTm9kZUxhYmVsRGlzcGxheUVkaXRQb2xpY3k7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy51bWwuZGlhZ3JhbS5jb21tdW5pY2F0aW9uLmN1c3RvbS5oZWxwZXIuUm90YXRpb25IZWxwZXI7CitpbXBvcnQgb3JnLmVjbGlwc2Uuc3d0LlNXVDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5zd3QuZ3JhcGhpY3MuSW1hZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2Uuc3d0LndpZGdldHMuRGlzcGxheTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5TdGVyZW90eXBlOworCisKKworcHVibGljIGNsYXNzIFBvcnROb2RlTGFiZWxEaXNwbGF5RWRpdFBvbGljeSBleHRlbmRzIEFwcGxpZWRTdGVyZW90eXBlTm9kZUxhYmVsRGlzcGxheUVkaXRQb2xpY3kgeworCisKKworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIG5vdGlmeUNoYW5nZWQoTm90aWZpY2F0aW9uIG5vdGlmaWNhdGlvbikgeworCQlmaW5hbCBPYmplY3QgZmVhdHVyZSA9IG5vdGlmaWNhdGlvbi5nZXRGZWF0dXJlKCk7CisJCWlmIChmZWF0dXJlID09IE5vdGF0aW9uUGFja2FnZS5lSU5TVEFOQ0UuZ2V0TG9jYXRpb25fWCgpIHx8IGZlYXR1cmUgPT0gTm90YXRpb25QYWNrYWdlLmVJTlNUQU5DRS5nZXRMb2NhdGlvbl9ZKCkpIHsKKwkJCURpc3BsYXkuZ2V0RGVmYXVsdCgpLmFzeW5jRXhlYyhuZXcgUnVubmFibGUoKSB7CisKKwkJCQlwdWJsaWMgdm9pZCBydW4oKSB7CisJCQkJCXJlZnJlc2hTdGVyZW90eXBlRGlzcGxheSgpOworCQkJCX0KKwkJCX0pOworCQl9CisJCXN1cGVyLm5vdGlmeUNoYW5nZWQobm90aWZpY2F0aW9uKTsKKwl9CisKKworCisJQE92ZXJyaWRlCisJcHVibGljIEltYWdlIHN0ZXJlb3R5cGVJY29uVG9EaXNwbGF5KCkgeworCisJCS8vIHJldHJpZXZlIHRoZSBmaXJzdCBzdGVyZW90eXBlIGluIHRoZSBsaXN0IG9mIGRpc3BsYXllZCBzdGVyZW90eXBlCisKKwkJCisJCUVMaXN0PFN0ZXJlb3R5cGU+IHN0ZXJlb3R5cGVfbGlzdCA9IGdldFVNTEVsZW1lbnQoKS5nZXRBcHBsaWVkU3RlcmVvdHlwZXMoKTsKKwkJaWYgKHN0ZXJlb3R5cGVfbGlzdC5zaXplKCkgIT0gMCkgeworCQkJU3RlcmVvdHlwZSBzdGVyZW90eXBlID0gc3RlcmVvdHlwZV9saXN0LmdldCgwKTsKKwkJCWlmIChzdGVyZW90eXBlLmdldE5hbWUoKS5lcXVhbHMoIkRhdGFGbG93UG9ydCIpIHx8IHN0ZXJlb3R5cGUuZ2V0TmFtZSgpLmVxdWFscygiU2VydmljZVBvcnQiKSkgeworCQkJCUltYWdlIGljb24gPSBBY3RpdmF0b3IuZ2V0SWNvbkVsZW1lbnQoZ2V0VU1MRWxlbWVudCgpLCBzdGVyZW90eXBlLCBmYWxzZSk7CisKKwkJCQlJRmlndXJlIHBvcnRWaWV3ID0gZ2V0SG9zdEZpZ3VyZSgpOworCQkJCUlGaWd1cmUgcGFyZW50VmlldyA9IHBvcnRWaWV3LmdldFBhcmVudCgpLmdldFBhcmVudCgpOworCisJCQkJUmVjdGFuZ2xlIHBhcmVudEJvdW5kcyA9IHBhcmVudFZpZXcuZ2V0Qm91bmRzKCk7CisJCQkJUmVjdGFuZ2xlIHBvcnRCb3VuZHMgPSBwb3J0Vmlldy5nZXRCb3VuZHMoKTsKKworCQkJCWlmIChwb3J0Qm91bmRzLngoKSA8PSBwYXJlbnRCb3VuZHMueCgpKSB7CisJCQkJCS8vIGxlZnQKKwkJCQkJcmV0dXJuIGljb247CisJCQkJfSBlbHNlIGlmIChwb3J0Qm91bmRzLngoKSA+PSAocGFyZW50Qm91bmRzLnJpZ2h0KCkgLSBwb3J0Qm91bmRzLndpZHRoKCkpKSB7CisJCQkJCS8vIHJpZ2h0CisKKwkJCQkJcmV0dXJuIG5ldyBJbWFnZShpY29uLmdldERldmljZSgpLCBSb3RhdGlvbkhlbHBlci5yb3RhdGVJbWFnZShpY29uLCAxODApLCBTV1QuSU1BR0VfQ09QWSk7CisJCQkJfSBlbHNlIGlmIChwb3J0Qm91bmRzLnkoKSA8PSBwYXJlbnRCb3VuZHMueSgpKSB7CisJCQkJCS8vIHRvcAorCQkJCQlyZXR1cm4gbmV3IEltYWdlKGljb24uZ2V0RGV2aWNlKCksIFJvdGF0aW9uSGVscGVyLnJvdGF0ZUltYWdlKGljb24sIDkwKSwgU1dULklNQUdFX0NPUFkpOworCQkJCX0gZWxzZSBpZiAocG9ydEJvdW5kcy55KCkgPj0gcGFyZW50Qm91bmRzLmJvdHRvbSgpIC0gcG9ydEJvdW5kcy5oZWlnaHQoKSkgeworCQkJCQkvLyBib3R0b20KKwkJCQkJcmV0dXJuIG5ldyBJbWFnZShpY29uLmdldERldmljZSgpLCBSb3RhdGlvbkhlbHBlci5yb3RhdGVJbWFnZShpY29uLCAtOTApLCBTV1QuSU1BR0VfQ09QWSk7CisJCQkJfSBlbHNlIHsKKwkJCQkJcmV0dXJuIG51bGw7CisJCQkJfQorCQkJfQorCQkJcmV0dXJuIEFjdGl2YXRvci5nZXRJY29uRWxlbWVudChnZXRVTUxFbGVtZW50KCksIHN0ZXJlb3R5cGUsIGZhbHNlKTsKKworCQl9CisJCXJldHVybiBudWxsOworCisJfQorfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGlhZ3JhbS9jb21tb24vZWRpdHBvbGljeS9wcm92aWRlci9Sb2JvdE1MRGlhZ3JhbXNFZGl0UG9saWN5UHJvdmlkZXIuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RpYWdyYW0vY29tbW9uL2VkaXRwb2xpY3kvcHJvdmlkZXIvUm9ib3RNTERpYWdyYW1zRWRpdFBvbGljeVByb3ZpZGVyLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTUyNDQyNQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RpYWdyYW0vY29tbW9uL2VkaXRwb2xpY3kvcHJvdmlkZXIvUm9ib3RNTERpYWdyYW1zRWRpdFBvbGljeVByb3ZpZGVyLmphdmEKQEAgLTAsMCArMSw5NCBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTQgQ0VBIExJU1QuCisgKgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgU2FhZGlhIERob3VpYiAoQ0VBIExJU1QpIHNhYWRpYS5kaG91aWJAY2VhLmZyIC0gSW5pdGlhbCBBUEkgYW5kIGltcGxlbWVudGF0aW9uCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi5lZGl0cG9saWN5LnByb3ZpZGVyOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZ2VmLkVkaXRQYXJ0OworaW1wb3J0IG9yZy5lY2xpcHNlLmdlZi5FZGl0UG9saWN5OworaW1wb3J0IG9yZy5lY2xpcHNlLmdtZi5ydW50aW1lLmNvbW1vbi5jb3JlLnNlcnZpY2UuQWJzdHJhY3RQcm92aWRlcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5nbWYucnVudGltZS5jb21tb24uY29yZS5zZXJ2aWNlLklPcGVyYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZ21mLnJ1bnRpbWUuZGlhZ3JhbS5jb3JlLmxpc3RlbmVyLk5vdGlmaWNhdGlvbkxpc3RlbmVyOworaW1wb3J0IG9yZy5lY2xpcHNlLmdtZi5ydW50aW1lLmRpYWdyYW0udWkuZWRpdHBhcnRzLkdyYXBoaWNhbEVkaXRQYXJ0OworaW1wb3J0IG9yZy5lY2xpcHNlLmdtZi5ydW50aW1lLmRpYWdyYW0udWkuc2VydmljZXMuZWRpdHBvbGljeS5DcmVhdGVFZGl0UG9saWNpZXNPcGVyYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZ21mLnJ1bnRpbWUuZGlhZ3JhbS51aS5zZXJ2aWNlcy5lZGl0cG9saWN5LklFZGl0UG9saWN5UHJvdmlkZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UuZ21mLnJ1bnRpbWUubm90YXRpb24uTGF5b3V0Q29uc3RyYWludDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5nbWYucnVudGltZS5ub3RhdGlvbi5Ob3RhdGlvblBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZ21mLnJ1bnRpbWUubm90YXRpb24uU2hhcGU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLmVkaXRwb2xpY2llcy5Qb3J0Tm9kZUxhYmVsRGlzcGxheUVkaXRQb2xpY3k7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy51bWwuZGlhZ3JhbS5jb21tb24uZWRpdHBvbGljaWVzLkFwcGxpZWRTdGVyZW90eXBlTGFiZWxEaXNwbGF5RWRpdFBvbGljeTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5kaWFncmFtLmNvbXBvc2l0ZS5lZGl0LnBhcnRzLkNvbXBvc2l0ZVN0cnVjdHVyZURpYWdyYW1FZGl0UGFydDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5kaWFncmFtLmNvbXBvc2l0ZS5lZGl0LnBhcnRzLlBvcnRFZGl0UGFydDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC50b29scy51dGlscy5VTUxVdGlsOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUHJvZmlsZTsKKworcHVibGljIGNsYXNzIFJvYm90TUxEaWFncmFtc0VkaXRQb2xpY3lQcm92aWRlciBleHRlbmRzIEFic3RyYWN0UHJvdmlkZXIKKwkJaW1wbGVtZW50cyBJRWRpdFBvbGljeVByb3ZpZGVyIHsKKworCXB1YmxpYyBzdGF0aWMgU3RyaW5nIFJPQk9UTUxfSUQgPSAiUm9ib3RNTCI7CisKKwlwdWJsaWMgYm9vbGVhbiBwcm92aWRlcyhJT3BlcmF0aW9uIG9wZXJhdGlvbikgeworCQlDcmVhdGVFZGl0UG9saWNpZXNPcGVyYXRpb24gZXBPcGVyYXRpb24gPSAoQ3JlYXRlRWRpdFBvbGljaWVzT3BlcmF0aW9uKSBvcGVyYXRpb247CisJCWlmICghKGVwT3BlcmF0aW9uLmdldEVkaXRQYXJ0KCkgaW5zdGFuY2VvZiBHcmFwaGljYWxFZGl0UGFydCkpIHsKKwkJCXJldHVybiBmYWxzZTsKKwkJfQorCQlHcmFwaGljYWxFZGl0UGFydCBnZXAgPSAoR3JhcGhpY2FsRWRpdFBhcnQpIGVwT3BlcmF0aW9uLmdldEVkaXRQYXJ0KCk7CisJCVN0cmluZyBkaWFncmFtVHlwZSA9IGdlcC5nZXROb3RhdGlvblZpZXcoKS5nZXREaWFncmFtKCkuZ2V0VHlwZSgpOworCQlpZiAoIUNvbXBvc2l0ZVN0cnVjdHVyZURpYWdyYW1FZGl0UGFydC5NT0RFTF9JRC5lcXVhbHMoZGlhZ3JhbVR5cGUpKSB7CisJCQlyZXR1cm4gZmFsc2U7CisJCX0KKworCQlpZiAoZ2VwIGluc3RhbmNlb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy51bWwuZGlhZ3JhbS5jb21wb3NpdGUuZWRpdC5wYXJ0cy5Qb3J0RWRpdFBhcnQpIHsKKwkJCXJldHVybiB0cnVlOworCQl9CisKKwkJcmV0dXJuIGZhbHNlOworCX0KKworCXB1YmxpYyB2b2lkIGNyZWF0ZUVkaXRQb2xpY2llcyhFZGl0UGFydCBlZGl0UGFydCkgeworCisJCWlmICghKGVkaXRQYXJ0IGluc3RhbmNlb2YgUG9ydEVkaXRQYXJ0KSkgeworCQkJcmV0dXJuOworCQl9CisKKwkJRWxlbWVudCB1bWxFbGVtZW50ID0gVU1MVXRpbC5yZXNvbHZlVU1MRWxlbWVudChlZGl0UGFydCk7CisJCWlmICh1bWxFbGVtZW50ID09IG51bGwpIHsKKwkJCXJldHVybjsKKwkJfQorCisJCWZvciAoUHJvZmlsZSBwcm9maWxlIDogdW1sRWxlbWVudC5nZXROZWFyZXN0UGFja2FnZSgpLmdldEFsbEFwcGxpZWRQcm9maWxlcygpKSB7CisJCQlpZiAoUk9CT1RNTF9JRC5lcXVhbHMocHJvZmlsZS5nZXROYW1lKCkpKSB7CisKKwkJCQlOb3RpZmljYXRpb25MaXN0ZW5lciBlZGl0UG9saWN5ID0gbmV3IFBvcnROb2RlTGFiZWxEaXNwbGF5RWRpdFBvbGljeSgpOworCQkJCWVkaXRQYXJ0Lmluc3RhbGxFZGl0UG9saWN5KAorCQkJCQkJQXBwbGllZFN0ZXJlb3R5cGVMYWJlbERpc3BsYXlFZGl0UG9saWN5LlNURVJFT1RZUEVfTEFCRUxfUE9MSUNZLAorCQkJCQkJKEVkaXRQb2xpY3kpIGVkaXRQb2xpY3kpOworCisJCQkJT2JqZWN0IG1vZGVsID0gZWRpdFBhcnQuZ2V0TW9kZWwoKTsKKworCQkJCWlmIChtb2RlbCBpbnN0YW5jZW9mIFNoYXBlKSB7CisJCQkJCUxheW91dENvbnN0cmFpbnQgbm90aWZpZXIgPSAoKFNoYXBlKSBtb2RlbCkuZ2V0TGF5b3V0Q29uc3RyYWludCgpOworCQkJCQkvLyB0byBmb3JjZSByZWZyZXNoaW5nIHRoZSBwb3J0IGljb24gd2hlbiB0aGUKKwkJCQkJLy8gZGlhZ3JhbSBpcyBvcGVuaW5nCisJCQkJCU5vdGlmaWNhdGlvbiBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwoCisJCQkJCQkJKEludGVybmFsRU9iamVjdCkgbm90aWZpZXIsCisJCQkJCQkJTm90aWZpY2F0aW9uLlNFVCwKKwkJCQkJCQlOb3RhdGlvblBhY2thZ2UuZUlOU1RBTkNFLmdldExvY2F0aW9uX1goKSwKKwkJCQkJCQkwLCAwKTsKKwkJCQkJZWRpdFBvbGljeS5ub3RpZnlDaGFuZ2VkKG5vdGlmaWNhdGlvbik7CisJCQkJfQorCQkJfQorCQl9CisJfQorfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGlhZ3JhbS9jb21tb24vZmFjdG9yeS9Sb2JvdE1MQXJjaGl0ZWN0dXJlMkNvbXBvc2l0ZURpYWdyYW1GYWN0b3J5LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kaWFncmFtL2NvbW1vbi9mYWN0b3J5L1JvYm90TUxBcmNoaXRlY3R1cmUyQ29tcG9zaXRlRGlhZ3JhbUZhY3RvcnkuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jYWQzZDU1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGlhZ3JhbS9jb21tb24vZmFjdG9yeS9Sb2JvdE1MQXJjaGl0ZWN0dXJlMkNvbXBvc2l0ZURpYWdyYW1GYWN0b3J5LmphdmEKQEAgLTAsMCArMSwyNCBAQAorcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24uZmFjdG9yeTsKKworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuaW5mcmEuZ21mZGlhZy5jb21tb24uR21mRWRpdG9yRmFjdG9yeTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24ubWlncmF0aW9uLlJvYm90TUxSZWNvbmNpbGVyOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMudW1sLmRpYWdyYW0uY29tcG9zaXRlLlVtbENvbXBvc2l0ZURpYWdyYW1Gb3JNdWx0aUVkaXRvcjsKKworLyoqCisgKiBUaGlzIGNsYXNzIGlzIHBhcnQgb2YgdGhlIG1pZ3JhdGlvbiBvZiB0aGUgUm9ib3RNTCBkaWFncmFtcywgd2hpY2gsCisgKiBzaW5jZSBQYXB5cnVzIDEuMCBzaG91bGQgYmUgb3BlbmVkIGJ5IHRoZSBjb3JyZXNwb25kaW5nIFVNTCBkaWFncmFtIGVkaXRvcnMsCisgKiBpbiB0aGlzIHBhcnRpY3VsYXIgY2FzZSwge0BsaW5rIFVtbENvbXBvc2l0ZURpYWdyYW1Gb3JNdWx0aUVkaXRvcn0KKyAqIDxwLz4KKyAqIFRoaXMgY2xhc3MgcmVnaXN0ZXJzIHRoZSBjb3JyZXNwb25kaW5nIFVNTCBlZGl0b3IgdG8gdGhlIHJvYm90LU1MIHR5cGUgYW5kIGFsbG93cyB0aGUgbWlncmF0aW9uIGZyYW1ld29yayB0byBwcm9jZWVkLgorICogPHAvPgorICogVGhlIG90aGVyIGNvbXBvbmVudCBvZiB0aGUgcHJvY2VzcyBpcyB7QGxpbmsgUm9ib3RNTFJlY29uY2lsZXJ9IHdoaWNoIGFjdHVhbGx5IHBlcmZvcm1zIG1pZ3JhdGlvbi4KKyAqLworcHVibGljIGNsYXNzIFJvYm90TUxBcmNoaXRlY3R1cmUyQ29tcG9zaXRlRGlhZ3JhbUZhY3RvcnkgZXh0ZW5kcyBHbWZFZGl0b3JGYWN0b3J5IHsKKworCXB1YmxpYyBzdGF0aWMgZmluYWwgU3RyaW5nIE9MRF9ST0JPVF9NTF9UWVBFID0gImFyY2hpdGVjdHVyZSI7CisKKwlwdWJsaWMgUm9ib3RNTEFyY2hpdGVjdHVyZTJDb21wb3NpdGVEaWFncmFtRmFjdG9yeSgpIHsKKwkJc3VwZXIoVW1sQ29tcG9zaXRlRGlhZ3JhbUZvck11bHRpRWRpdG9yLmNsYXNzLCBPTERfUk9CT1RfTUxfVFlQRSk7CisJfQorCit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kaWFncmFtL2NvbW1vbi9mYWN0b3J5L1JvYm90TUxDb21wb25lbnQyQ29tcG9zaXRlRGlhZ3JhbUZhY3RvcnkuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RpYWdyYW0vY29tbW9uL2ZhY3RvcnkvUm9ib3RNTENvbXBvbmVudDJDb21wb3NpdGVEaWFncmFtRmFjdG9yeS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI1ODgzMjEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kaWFncmFtL2NvbW1vbi9mYWN0b3J5L1JvYm90TUxDb21wb25lbnQyQ29tcG9zaXRlRGlhZ3JhbUZhY3RvcnkuamF2YQpAQCAtMCwwICsxLDI1IEBACitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi5mYWN0b3J5OworCitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5pbmZyYS5nbWZkaWFnLmNvbW1vbi5HbWZFZGl0b3JGYWN0b3J5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi5taWdyYXRpb24uUm9ib3RNTFJlY29uY2lsZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy51bWwuZGlhZ3JhbS5jb21wb3NpdGUuVW1sQ29tcG9zaXRlRGlhZ3JhbUZvck11bHRpRWRpdG9yOworCisKKy8qKgorICogVGhpcyBjbGFzcyBpcyBwYXJ0IG9mIHRoZSBtaWdyYXRpb24gb2YgdGhlIFJvYm90TUwgZGlhZ3JhbXMsIHdoaWNoLAorICogc2luY2UgUGFweXJ1cyAxLjAgc2hvdWxkIGJlIG9wZW5lZCBieSB0aGUgY29ycmVzcG9uZGluZyBVTUwgZGlhZ3JhbSBlZGl0b3JzLAorICogaW4gdGhpcyBwYXJ0aWN1bGFyIGNhc2UsIHtAbGluayBVbWxDb21wb3NpdGVEaWFncmFtRm9yTXVsdGlFZGl0b3J9CisgKiA8cC8+CisgKiBUaGlzIGNsYXNzIHJlZ2lzdGVycyB0aGUgY29ycmVzcG9uZGluZyBVTUwgZWRpdG9yIHRvIHRoZSByb2JvdC1NTCB0eXBlIGFuZCBhbGxvd3MgdGhlIG1pZ3JhdGlvbiBmcmFtZXdvcmsgdG8gcHJvY2VlZC4KKyAqIDxwLz4KKyAqIFRoZSBvdGhlciBjb21wb25lbnQgb2YgdGhlIHByb2Nlc3MgaXMge0BsaW5rIFJvYm90TUxSZWNvbmNpbGVyfSB3aGljaCBhY3R1YWxseSBwZXJmb3JtcyBtaWdyYXRpb24uCisgKi8KK3B1YmxpYyBjbGFzcyBSb2JvdE1MQ29tcG9uZW50MkNvbXBvc2l0ZURpYWdyYW1GYWN0b3J5IGV4dGVuZHMgR21mRWRpdG9yRmFjdG9yeSB7CisKKwlwdWJsaWMgc3RhdGljIGZpbmFsIFN0cmluZyBPTERfUk9CT1RfTUxfVFlQRSA9ICJjb21wb25lbnRkZWYiOworCisJcHVibGljIFJvYm90TUxDb21wb25lbnQyQ29tcG9zaXRlRGlhZ3JhbUZhY3RvcnkoKSB7CisJCXN1cGVyKFVtbENvbXBvc2l0ZURpYWdyYW1Gb3JNdWx0aUVkaXRvci5jbGFzcywgT0xEX1JPQk9UX01MX1RZUEUpOworCX0KKworfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGlhZ3JhbS9jb21tb24vZmFjdG9yeS9Sb2JvdE1MRGF0YXR5cGUyQ2xhc3NEaWFncmFtRmFjdG9yeS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGlhZ3JhbS9jb21tb24vZmFjdG9yeS9Sb2JvdE1MRGF0YXR5cGUyQ2xhc3NEaWFncmFtRmFjdG9yeS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmYzNGIwYjIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kaWFncmFtL2NvbW1vbi9mYWN0b3J5L1JvYm90TUxEYXRhdHlwZTJDbGFzc0RpYWdyYW1GYWN0b3J5LmphdmEKQEAgLTAsMCArMSwyNSBAQAorcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24uZmFjdG9yeTsKKworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuaW5mcmEuZ21mZGlhZy5jb21tb24uR21mRWRpdG9yRmFjdG9yeTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24ubWlncmF0aW9uLlJvYm90TUxSZWNvbmNpbGVyOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMudW1sLmRpYWdyYW0uY2xhenouVW1sQ2xhc3NEaWFncmFtRm9yTXVsdGlFZGl0b3I7CisKKworLyoqCisgKiBUaGlzIGNsYXNzIGlzIHBhcnQgb2YgdGhlIG1pZ3JhdGlvbiBvZiB0aGUgUm9ib3RNTCBkaWFncmFtcywgd2hpY2gsCisgKiBzaW5jZSBQYXB5cnVzIDEuMCBzaG91bGQgYmUgb3BlbmVkIGJ5IHRoZSBjb3JyZXNwb25kaW5nIFVNTCBkaWFncmFtIGVkaXRvcnMsCisgKiBpbiB0aGlzIHBhcnRpY3VsYXIgY2FzZSwge0BsaW5rIFVtbENsYXNzRGlhZ3JhbUZvck11bHRpRWRpdG9yfQorICogPHAvPgorICogVGhpcyBjbGFzcyByZWdpc3RlcnMgdGhlIGNvcnJlc3BvbmRpbmcgVU1MIGVkaXRvciB0byB0aGUgcm9ib3QtTUwgdHlwZSBhbmQgYWxsb3dzIHRoZSBtaWdyYXRpb24gZnJhbWV3b3JrIHRvIHByb2NlZWQuCisgKiA8cC8+CisgKiBUaGUgb3RoZXIgY29tcG9uZW50IG9mIHRoZSBwcm9jZXNzIGlzIHtAbGluayBSb2JvdE1MUmVjb25jaWxlcn0gd2hpY2ggYWN0dWFsbHkgcGVyZm9ybXMgbWlncmF0aW9uLgorICovCitwdWJsaWMgY2xhc3MgUm9ib3RNTERhdGF0eXBlMkNsYXNzRGlhZ3JhbUZhY3RvcnkgZXh0ZW5kcyBHbWZFZGl0b3JGYWN0b3J5IHsKKworCXB1YmxpYyBzdGF0aWMgZmluYWwgU3RyaW5nIE9MRF9ST0JPVF9NTF9UWVBFID0gIkRhdGF0eXBlRGVmIjsKKworCXB1YmxpYyBSb2JvdE1MRGF0YXR5cGUyQ2xhc3NEaWFncmFtRmFjdG9yeSgpIHsKKwkJc3VwZXIoVW1sQ2xhc3NEaWFncmFtRm9yTXVsdGlFZGl0b3IuY2xhc3MsIE9MRF9ST0JPVF9NTF9UWVBFKTsKKwl9CisKK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RpYWdyYW0vY29tbW9uL2ZhY3RvcnkvUm9ib3RNTEludGVyZmFjZTJDbGFzc0RpYWdyYW1GYWN0b3J5LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kaWFncmFtL2NvbW1vbi9mYWN0b3J5L1JvYm90TUxJbnRlcmZhY2UyQ2xhc3NEaWFncmFtRmFjdG9yeS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ3ZThhNjYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kaWFncmFtL2NvbW1vbi9mYWN0b3J5L1JvYm90TUxJbnRlcmZhY2UyQ2xhc3NEaWFncmFtRmFjdG9yeS5qYXZhCkBAIC0wLDAgKzEsMjQgQEAKK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLmZhY3Rvcnk7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLmluZnJhLmdtZmRpYWcuY29tbW9uLkdtZkVkaXRvckZhY3Rvcnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLm1pZ3JhdGlvbi5Sb2JvdE1MUmVjb25jaWxlcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5kaWFncmFtLmNsYXp6LlVtbENsYXNzRGlhZ3JhbUZvck11bHRpRWRpdG9yOworCisvKioKKyAqIFRoaXMgY2xhc3MgaXMgcGFydCBvZiB0aGUgbWlncmF0aW9uIG9mIHRoZSBSb2JvdE1MIGRpYWdyYW1zLCB3aGljaCwKKyAqIHNpbmNlIFBhcHlydXMgMS4wIHNob3VsZCBiZSBvcGVuZWQgYnkgdGhlIGNvcnJlc3BvbmRpbmcgVU1MIGRpYWdyYW0gZWRpdG9ycywKKyAqIGluIHRoaXMgcGFydGljdWxhciBjYXNlLCB7QGxpbmsgVW1sQ2xhc3NEaWFncmFtRm9yTXVsdGlFZGl0b3J9CisgKiA8cC8+CisgKiBUaGlzIGNsYXNzIHJlZ2lzdGVycyB0aGUgY29ycmVzcG9uZGluZyBVTUwgZWRpdG9yIHRvIHRoZSByb2JvdC1NTCB0eXBlIGFuZCBhbGxvd3MgdGhlIG1pZ3JhdGlvbiBmcmFtZXdvcmsgdG8gcHJvY2VlZC4KKyAqIDxwLz4KKyAqIFRoZSBvdGhlciBjb21wb25lbnQgb2YgdGhlIHByb2Nlc3MgaXMge0BsaW5rIFJvYm90TUxSZWNvbmNpbGVyfSB3aGljaCBhY3R1YWxseSBwZXJmb3JtcyBtaWdyYXRpb24uCisgKi8KK3B1YmxpYyBjbGFzcyBSb2JvdE1MSW50ZXJmYWNlMkNsYXNzRGlhZ3JhbUZhY3RvcnkgZXh0ZW5kcyBHbWZFZGl0b3JGYWN0b3J5IHsKKworCXB1YmxpYyBzdGF0aWMgZmluYWwgU3RyaW5nIE9MRF9ST0JPVF9NTF9UWVBFID0gIkludGVyZmFjZURlZiI7CisKKwlwdWJsaWMgUm9ib3RNTEludGVyZmFjZTJDbGFzc0RpYWdyYW1GYWN0b3J5KCkgeworCQlzdXBlcihVbWxDbGFzc0RpYWdyYW1Gb3JNdWx0aUVkaXRvci5jbGFzcywgT0xEX1JPQk9UX01MX1RZUEUpOworCX0KKworfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGlhZ3JhbS9jb21tb24vbWlncmF0aW9uL01pZ3JhdGVEaWFncmFtc0hhbmRsZXIuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RpYWdyYW0vY29tbW9uL21pZ3JhdGlvbi9NaWdyYXRlRGlhZ3JhbXNIYW5kbGVyLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjViNmMwMAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RpYWdyYW0vY29tbW9uL21pZ3JhdGlvbi9NaWdyYXRlRGlhZ3JhbXNIYW5kbGVyLmphdmEKQEAgLTAsMCArMSwxNTIgQEAKK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLm1pZ3JhdGlvbjsKKworaW1wb3J0IGphdmEuaW8uSU9FeGNlcHRpb247CitpbXBvcnQgamF2YS51dGlsLkl0ZXJhdG9yOworCitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5jb21tYW5kcy5BYnN0cmFjdEhhbmRsZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5jb21tYW5kcy5FeGVjdXRpb25FdmVudDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5jb3JlLmNvbW1hbmRzLkV4ZWN1dGlvbkV4Y2VwdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5JRmlsZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWUuSVBhdGg7CitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLklQcm9ncmVzc01vbml0b3I7CitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLklTdGF0dXM7CitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLlBsYXRmb3JtOworaW1wb3J0IG9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5TdGF0dXM7CitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLmpvYnMuSm9iOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5VUkk7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnJlc291cmNlLlJlc291cmNlOworaW1wb3J0IG9yZy5lY2xpcHNlLmdtZi5ydW50aW1lLm5vdGF0aW9uLkRpYWdyYW07CitpbXBvcnQgb3JnLmVjbGlwc2UuamZhY2Uudmlld2Vycy5JU2VsZWN0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmpmYWNlLnZpZXdlcnMuSVN0cnVjdHVyZWRTZWxlY3Rpb247CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5pbmZyYS5jb3JlLnJlc291cmNlLk1vZGVsTXVsdGlFeGNlcHRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5pbmZyYS5jb3JlLnJlc291cmNlLk1vZGVsU2V0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuaW5mcmEuY29yZS5yZXNvdXJjZS5Nb2RlbHNSZWFkZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5pbmZyYS5nbWZkaWFnLmNvbW1vbi5tb2RlbC5Ob3RhdGlvbk1vZGVsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuaW5mcmEuZ21mZGlhZy5jb21tb24udXRpbHMuRGlhZ3JhbVV0aWxzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuaW5mcmEudmlld3BvaW50cy5wb2xpY3kuUG9saWN5Q2hlY2tlcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLmluZnJhLnZpZXdwb2ludHMucG9saWN5LlZpZXdQcm90b3R5cGU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLkFjdGl2YXRvcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5kaWFncmFtLmNsYXp6LmVkaXQucGFydHMuTW9kZWxFZGl0UGFydDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5kaWFncmFtLmNvbXBvc2l0ZS5lZGl0LnBhcnRzLkNvbXBvc2l0ZVN0cnVjdHVyZURpYWdyYW1FZGl0UGFydDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51aS5oYW5kbGVycy5IYW5kbGVyVXRpbDsKKworcHVibGljIGNsYXNzIE1pZ3JhdGVEaWFncmFtc0hhbmRsZXIgZXh0ZW5kcyBBYnN0cmFjdEhhbmRsZXIgeworCisJcHVibGljIE9iamVjdCBleGVjdXRlKEV4ZWN1dGlvbkV2ZW50IGV2ZW50KSB0aHJvd3MgRXhlY3V0aW9uRXhjZXB0aW9uIHsKKwkJSVNlbGVjdGlvbiBjdXJyZW50U2VsZWN0aW9uID0gSGFuZGxlclV0aWwuZ2V0Q3VycmVudFNlbGVjdGlvbihldmVudCk7CisJCWlmIChjdXJyZW50U2VsZWN0aW9uLmlzRW1wdHkoKSB8fCAhKGN1cnJlbnRTZWxlY3Rpb24gaW5zdGFuY2VvZiBJU3RydWN0dXJlZFNlbGVjdGlvbikpIHsKKwkJCXJldHVybiBudWxsOworCQl9CisKKwkJSVN0cnVjdHVyZWRTZWxlY3Rpb24gc2VsZWN0aW9uID0gKElTdHJ1Y3R1cmVkU2VsZWN0aW9uKSBjdXJyZW50U2VsZWN0aW9uOworCisJCU9iamVjdCBzZWxlY3RlZEVsZW1lbnQgPSBzZWxlY3Rpb24uZ2V0Rmlyc3RFbGVtZW50KCk7CisKKwkJT2JqZWN0IHNlbGVjdGVkQWRhcHRlciA9IFBsYXRmb3JtLmdldEFkYXB0ZXJNYW5hZ2VyKCkuZ2V0QWRhcHRlcihzZWxlY3RlZEVsZW1lbnQsIElGaWxlLmNsYXNzKTsKKworCisKKwkJaWYgKHNlbGVjdGVkQWRhcHRlciBpbnN0YW5jZW9mIElGaWxlKSB7CisJCQlmaW5hbCBJRmlsZSBzZWxlY3RlZEZpbGUgPSAoSUZpbGUpIHNlbGVjdGVkQWRhcHRlcjsKKworCQkJLy8gTG9hZCB0aGUgbW9kZWwgaW4gYmFja2dyb3VuZCBhbmQgYWRkIGEgdXNlciBpbmZvcm1hdGlvbgorCQkJSm9iIG9wZW5EaWFsb2dKb2IgPSBuZXcgSm9iKCJTd2l0Y2ggcHJvZmlsZSIpIHsKKworCQkJCUBPdmVycmlkZQorCQkJCXByb3RlY3RlZCBJU3RhdHVzIHJ1bihJUHJvZ3Jlc3NNb25pdG9yIG1vbml0b3IpIHsKKwkJCQkJbW9uaXRvci5iZWdpblRhc2soIk1pZ3JhdGluZyBtb2RlbC4uLiIsIElQcm9ncmVzc01vbml0b3IuVU5LTk9XTik7CisJCQkJCU1vZGVsU2V0IG1vZGVsU2V0ID0gbmV3IE1vZGVsU2V0KCk7CisJCQkJCU1vZGVsc1JlYWRlciByZWFkZXIgPSBuZXcgTW9kZWxzUmVhZGVyKCk7CisJCQkJCXJlYWRlci5yZWFkTW9kZWwobW9kZWxTZXQpOworCisKKwkJCQkJSVBhdGggd29ya3NwYWNlUGF0aCA9IHNlbGVjdGVkRmlsZS5nZXRGdWxsUGF0aCgpOworCisJCQkJCVVSSSB3b3Jrc3BhY2VVUkkgPSBVUkkuY3JlYXRlUGxhdGZvcm1SZXNvdXJjZVVSSSh3b3Jrc3BhY2VQYXRoLnRvU3RyaW5nKCksIHRydWUpOworCisJCQkJCVZpZXdQcm90b3R5cGUgcHJvdG9BcmNoaXRlY3R1cmUgPSBudWxsOworCQkJCQlWaWV3UHJvdG90eXBlIHByb3RvRGF0YXR5cGVEZWYgPSBudWxsOworCQkJCQlWaWV3UHJvdG90eXBlIHByb3RvSW50ZXJmYWNlRGVmID0gbnVsbDsKKwkJCQkJVmlld1Byb3RvdHlwZSBwcm90b0NvbXBvbmVudERlZiA9IG51bGw7CisJCQkJCWZvciAoVmlld1Byb3RvdHlwZSBwcm90byA6IFBvbGljeUNoZWNrZXIuZ2V0Q3VycmVudCgpLmdldEFsbFByb3RvdHlwZXMoKSkgeworCQkJCQkJaWYgKHByb3RvLmdldExhYmVsKCkuY29udGFpbnMoIlJvYm90TUwgQXJjaGl0ZWN0dXJlIikpIHsKKwkJCQkJCQlwcm90b0FyY2hpdGVjdHVyZSA9IHByb3RvOworCQkJCQkJfSBlbHNlIGlmIChwcm90by5nZXRMYWJlbCgpLmNvbnRhaW5zKCJSb2JvdE1MIENvbXBvbmVudCIpKSB7CisJCQkJCQkJcHJvdG9Db21wb25lbnREZWYgPSBwcm90bzsKKwkJCQkJCX0gZWxzZSBpZiAocHJvdG8uZ2V0TGFiZWwoKS5jb250YWlucygiUm9ib3RNTCBJbnRlcmZhY2UiKSkgeworCQkJCQkJCXByb3RvSW50ZXJmYWNlRGVmID0gcHJvdG87CisKKwkJCQkJCX0gZWxzZSBpZiAocHJvdG8uZ2V0TGFiZWwoKS5jb250YWlucygiUm9ib3RNTCBEYXRhdHlwZSIpKSB7CisJCQkJCQkJcHJvdG9EYXRhdHlwZURlZiA9IHByb3RvOworCQkJCQkJfQorCQkJCQl9CisKKworCQkJCQl0cnkgeworCQkJCQkJbW9kZWxTZXQubG9hZE1vZGVscyh3b3Jrc3BhY2VVUkkpOworCQkJCQkJLy8gZG8gdGhlIGRpYWdyYW1zIG1pZ3JhdGlvbgorCQkJCQkJTm90YXRpb25Nb2RlbCBub3RhdGlvbk1vZGVsID0gKE5vdGF0aW9uTW9kZWwpIG1vZGVsU2V0LmdldE1vZGVsKE5vdGF0aW9uTW9kZWwuTU9ERUxfSUQpOworCQkJCQkJaWYgKG5vdGF0aW9uTW9kZWwgIT0gbnVsbCkgeworCQkJCQkJCVJlc291cmNlIG1haW5Ob3RhdGlvblJlc291cmNlID0gbm90YXRpb25Nb2RlbC5nZXRSZXNvdXJjZSgpOworCisJCQkJCQkJSXRlcmF0b3I8RU9iamVjdD4gYWxsQ29udGVudHMgPSBtYWluTm90YXRpb25SZXNvdXJjZS5nZXRBbGxDb250ZW50cygpOworCisJCQkJCQkJd2hpbGUgKGFsbENvbnRlbnRzLmhhc05leHQoKSkgeworCQkJCQkJCQlFT2JqZWN0IGN1cnJlbnRFbGVtZW50ID0gYWxsQ29udGVudHMubmV4dCgpOworCisJCQkJCQkJCWlmIChjdXJyZW50RWxlbWVudCBpbnN0YW5jZW9mIERpYWdyYW0pIHsKKwkJCQkJCQkJCS8vIDEuIENoYW5naW5nIHRoZSB0eXBlIG9mIHRoZSBkaWFncmFtCisJCQkJCQkJCQkvLyBTeXN0ZW0uZXJyLnByaW50bG4oY3VycmVudEVsZW1lbnQpOworCQkJCQkJCQkJaWYgKCgoRGlhZ3JhbSkgY3VycmVudEVsZW1lbnQpLmdldFR5cGUoKS5lcXVhbHNJZ25vcmVDYXNlKCJhcmNoaXRlY3R1cmUiKSkgeworCQkJCQkJCQkJCSgoRGlhZ3JhbSkgY3VycmVudEVsZW1lbnQpLnNldFR5cGUoQ29tcG9zaXRlU3RydWN0dXJlRGlhZ3JhbUVkaXRQYXJ0Lk1PREVMX0lEKTsKKwkJCQkJCQkJCQlEaWFncmFtVXRpbHMuc2V0UHJvdG90eXBlKChEaWFncmFtKSBjdXJyZW50RWxlbWVudCwgcHJvdG9BcmNoaXRlY3R1cmUpOworCQkJCQkJCQkJCURpYWdyYW1VdGlscy5zZXRPd25lcigoKERpYWdyYW0pIGN1cnJlbnRFbGVtZW50KSwgKChEaWFncmFtKSBjdXJyZW50RWxlbWVudCkuZ2V0RWxlbWVudCgpKTsKKworCQkJCQkJCQkJfSBlbHNlIGlmICgoKERpYWdyYW0pIGN1cnJlbnRFbGVtZW50KS5nZXRUeXBlKCkuZXF1YWxzSWdub3JlQ2FzZSgiY29tcG9uZW50ZGVmIikpIHsKKwkJCQkJCQkJCQkoKERpYWdyYW0pIGN1cnJlbnRFbGVtZW50KS5zZXRUeXBlKENvbXBvc2l0ZVN0cnVjdHVyZURpYWdyYW1FZGl0UGFydC5NT0RFTF9JRCk7CisJCQkJCQkJCQkJRGlhZ3JhbVV0aWxzLnNldFByb3RvdHlwZSgoRGlhZ3JhbSkgY3VycmVudEVsZW1lbnQsIHByb3RvQ29tcG9uZW50RGVmKTsKKwkJCQkJCQkJCQlEaWFncmFtVXRpbHMuc2V0T3duZXIoKChEaWFncmFtKSBjdXJyZW50RWxlbWVudCksICgoRGlhZ3JhbSkgY3VycmVudEVsZW1lbnQpLmdldEVsZW1lbnQoKSk7CisJCQkJCQkJCQl9CisKKwkJCQkJCQkJCWVsc2UgaWYgKCgoRGlhZ3JhbSkgY3VycmVudEVsZW1lbnQpLmdldFR5cGUoKS5lcXVhbHNJZ25vcmVDYXNlKCJkYXRhdHlwZWRlZiIpKSB7CisJCQkJCQkJCQkJKChEaWFncmFtKSBjdXJyZW50RWxlbWVudCkuc2V0VHlwZShNb2RlbEVkaXRQYXJ0Lk1PREVMX0lEKTsKKwkJCQkJCQkJCQlEaWFncmFtVXRpbHMuc2V0UHJvdG90eXBlKChEaWFncmFtKSBjdXJyZW50RWxlbWVudCwgcHJvdG9EYXRhdHlwZURlZik7CisJCQkJCQkJCQkJRGlhZ3JhbVV0aWxzLnNldE93bmVyKCgoRGlhZ3JhbSkgY3VycmVudEVsZW1lbnQpLCAoKERpYWdyYW0pIGN1cnJlbnRFbGVtZW50KS5nZXRFbGVtZW50KCkpOworCisJCQkJCQkJCQl9IGVsc2UgaWYgKCgoRGlhZ3JhbSkgY3VycmVudEVsZW1lbnQpLmdldFR5cGUoKS5lcXVhbHNJZ25vcmVDYXNlKCJpbnRlcmZhY2VkZWYiKSkgeworCQkJCQkJCQkJCSgoRGlhZ3JhbSkgY3VycmVudEVsZW1lbnQpLnNldFR5cGUoTW9kZWxFZGl0UGFydC5NT0RFTF9JRCk7CisJCQkJCQkJCQkJRGlhZ3JhbVV0aWxzLnNldFByb3RvdHlwZSgoRGlhZ3JhbSkgY3VycmVudEVsZW1lbnQsIHByb3RvSW50ZXJmYWNlRGVmKTsKKwkJCQkJCQkJCQlEaWFncmFtVXRpbHMuc2V0T3duZXIoKChEaWFncmFtKSBjdXJyZW50RWxlbWVudCksICgoRGlhZ3JhbSkgY3VycmVudEVsZW1lbnQpLmdldEVsZW1lbnQoKSk7CisJCQkJCQkJCQl9CisKKwkJCQkJCQkJfQorCisKKwkJCQkJCQl9Ly8gZW5kIHdoaWxlCisJCQkJCQkJbWFpbk5vdGF0aW9uUmVzb3VyY2Uuc2F2ZShudWxsKTsKKworCQkJCQkJfQorCisJCQkJCX0gY2F0Y2ggKE1vZGVsTXVsdGlFeGNlcHRpb24gZSkgeworCQkJCQkJQWN0aXZhdG9yLmxvZy5lcnJvcihlKTsKKwkJCQkJCXJldHVybiBuZXcgU3RhdHVzKElTdGF0dXMuRVJST1IsIEFjdGl2YXRvci5QTFVHSU5fSUQsIGUuZ2V0TWVzc2FnZSgpLCBlKTsKKwkJCQkJfSBjYXRjaCAoSU9FeGNlcHRpb24gZSkgeworCisJCQkJCQlBY3RpdmF0b3IubG9nLmVycm9yKGUpOworCQkJCQkJcmV0dXJuIG5ldyBTdGF0dXMoSVN0YXR1cy5FUlJPUiwgQWN0aXZhdG9yLlBMVUdJTl9JRCwgZS5nZXRNZXNzYWdlKCksIGUpOworCQkJCQl9CisKKwkJCQkJcmV0dXJuIFN0YXR1cy5PS19TVEFUVVM7CisJCQkJfQorCQkJfTsKKworCQkJb3BlbkRpYWxvZ0pvYi5zZXRVc2VyKHRydWUpOworCisJCQlvcGVuRGlhbG9nSm9iLnNjaGVkdWxlKCk7CisJCX0KKworCQlyZXR1cm4gbnVsbDsKKwl9CisKK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RpYWdyYW0vY29tbW9uL21pZ3JhdGlvbi9Sb2JvdE1MUmVjb25jaWxlci5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGlhZ3JhbS9jb21tb24vbWlncmF0aW9uL1JvYm90TUxSZWNvbmNpbGVyLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWE5ODk5MwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RpYWdyYW0vY29tbW9uL21pZ3JhdGlvbi9Sb2JvdE1MUmVjb25jaWxlci5qYXZhCkBAIC0wLDAgKzEsMTcxIEBACitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi5taWdyYXRpb247CisKK2ltcG9ydCBqYXZhLnV0aWwuSGFzaE1hcDsKK2ltcG9ydCBqYXZhLnV0aWwuTWFwOworCitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5jb21tYW5kcy5FeGVjdXRpb25FeGNlcHRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLklBZGFwdGFibGU7CitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLklQcm9ncmVzc01vbml0b3I7CitpbXBvcnQgb3JnLmVjbGlwc2UuZ21mLnJ1bnRpbWUuY29tbW9uLmNvcmUuY29tbWFuZC5BYnN0cmFjdENvbW1hbmQ7CitpbXBvcnQgb3JnLmVjbGlwc2UuZ21mLnJ1bnRpbWUuY29tbW9uLmNvcmUuY29tbWFuZC5Db21tYW5kUmVzdWx0OworaW1wb3J0IG9yZy5lY2xpcHNlLmdtZi5ydW50aW1lLmNvbW1vbi5jb3JlLmNvbW1hbmQuSUNvbW1hbmQ7CitpbXBvcnQgb3JnLmVjbGlwc2UuZ21mLnJ1bnRpbWUubm90YXRpb24uRGlhZ3JhbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLmluZnJhLmdtZmRpYWcuY29tbW9uLnJlY29uY2lsZXIuRGlhZ3JhbVJlY29uY2lsZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5pbmZyYS5nbWZkaWFnLmNvbW1vbi51dGlscy5EaWFncmFtVXRpbHM7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5pbmZyYS52aWV3cG9pbnRzLnBvbGljeS5Qb2xpY3lDaGVja2VyOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuaW5mcmEudmlld3BvaW50cy5wb2xpY3kuVmlld1Byb3RvdHlwZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24uZmFjdG9yeS5Sb2JvdE1MQXJjaGl0ZWN0dXJlMkNvbXBvc2l0ZURpYWdyYW1GYWN0b3J5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi5mYWN0b3J5LlJvYm90TUxDb21wb25lbnQyQ29tcG9zaXRlRGlhZ3JhbUZhY3Rvcnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLmZhY3RvcnkuUm9ib3RNTERhdGF0eXBlMkNsYXNzRGlhZ3JhbUZhY3Rvcnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uLmZhY3RvcnkuUm9ib3RNTEludGVyZmFjZTJDbGFzc0RpYWdyYW1GYWN0b3J5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMudW1sLmRpYWdyYW0uY2xhenouZWRpdC5wYXJ0cy5Nb2RlbEVkaXRQYXJ0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMudW1sLmRpYWdyYW0uY29tcG9zaXRlLmVkaXQucGFydHMuQ29tcG9zaXRlU3RydWN0dXJlRGlhZ3JhbUVkaXRQYXJ0OworCisKK3B1YmxpYyBjbGFzcyBSb2JvdE1MUmVjb25jaWxlciBleHRlbmRzIERpYWdyYW1SZWNvbmNpbGVyIHsKKworCXByaXZhdGUgc3RhdGljIGZpbmFsIFN0cmluZyBPTERfQVJDSElURUNUVVJFX1RZUEUgPSBSb2JvdE1MQXJjaGl0ZWN0dXJlMkNvbXBvc2l0ZURpYWdyYW1GYWN0b3J5Lk9MRF9ST0JPVF9NTF9UWVBFOworCisJcHJpdmF0ZSBzdGF0aWMgZmluYWwgU3RyaW5nIE9MRF9DT01QT05FTlRfVFlQRSA9IFJvYm90TUxDb21wb25lbnQyQ29tcG9zaXRlRGlhZ3JhbUZhY3RvcnkuT0xEX1JPQk9UX01MX1RZUEU7CisKKwlwcml2YXRlIHN0YXRpYyBmaW5hbCBTdHJpbmcgT0xEX0lOVEVSRkFDRV9UWVBFID0gUm9ib3RNTEludGVyZmFjZTJDbGFzc0RpYWdyYW1GYWN0b3J5Lk9MRF9ST0JPVF9NTF9UWVBFOworCisJcHJpdmF0ZSBzdGF0aWMgZmluYWwgU3RyaW5nIE9MRF9EQVRBVFlQRV9UWVBFID0gUm9ib3RNTERhdGF0eXBlMkNsYXNzRGlhZ3JhbUZhY3RvcnkuT0xEX1JPQk9UX01MX1RZUEU7CisKKwlwcml2YXRlIHN0YXRpYyBmaW5hbCBTdHJpbmcgTkVXX0NMQVNTX0RJQUdSQU0gPSBNb2RlbEVkaXRQYXJ0Lk1PREVMX0lEOworCisJcHJpdmF0ZSBzdGF0aWMgZmluYWwgU3RyaW5nIE5FV19DT01QT1NJVEVfRElBR1JBTSA9IENvbXBvc2l0ZVN0cnVjdHVyZURpYWdyYW1FZGl0UGFydC5NT0RFTF9JRDsKKworCXByaXZhdGUgc3RhdGljIGZpbmFsIE1pZ3JhdGlvbkRhdGEgQVJDSElURUNUVVJFID0gbmV3IE1pZ3JhdGlvbkRhdGEoT0xEX0FSQ0hJVEVDVFVSRV9UWVBFLCBORVdfQ09NUE9TSVRFX0RJQUdSQU0sICJSb2JvdE1MIEFyY2hpdGVjdHVyZSIpOworCisJcHJpdmF0ZSBzdGF0aWMgZmluYWwgTWlncmF0aW9uRGF0YSBDT01QT05FTlQgPSBuZXcgTWlncmF0aW9uRGF0YShPTERfQ09NUE9ORU5UX1RZUEUsIE5FV19DT01QT1NJVEVfRElBR1JBTSwgIlJvYm90TUwgQ29tcG9uZW50Iik7CisKKwlwcml2YXRlIHN0YXRpYyBmaW5hbCBNaWdyYXRpb25EYXRhIElOVEVSRkFDRSA9IG5ldyBNaWdyYXRpb25EYXRhKE9MRF9JTlRFUkZBQ0VfVFlQRSwgTkVXX0NMQVNTX0RJQUdSQU0sICJSb2JvdE1MIEludGVyZmFjZSIpOworCisJcHJpdmF0ZSBzdGF0aWMgZmluYWwgTWlncmF0aW9uRGF0YSBEQVRBVFlQRSA9IG5ldyBNaWdyYXRpb25EYXRhKE9MRF9EQVRBVFlQRV9UWVBFLCBORVdfQ0xBU1NfRElBR1JBTSwgIlJvYm90TUwgRGF0YXR5cGUiKTsKKworCS8qKgorCSAqIE9yaWdpbmFsIGNvZGUgaW4ge0BsaW5rIE1pZ3JhdGVEaWFncmFtc0hhbmRsZXJ9IHVzZXMge0BsaW5rIFN0cmluZyNlcXVhbHNJZ25vcmVDYXNlKFN0cmluZyl9LgorCSAqIDxwLz4KKwkgKiBTbyB0aGUga2V5cyBpbiB0aGlzIG1hcCBhcmUgb2xkIHR5cGVzIHRvTG9zZXJDYXNlLgorCSAqLworCXByaXZhdGUgc3RhdGljIGZpbmFsIE1hcDxTdHJpbmcsIE1pZ3JhdGlvbkRhdGE+IG91ck1pZ3JhdGlvbnM7CisKKwlzdGF0aWMgeworCQlvdXJNaWdyYXRpb25zID0gbmV3IEhhc2hNYXA8U3RyaW5nLCBNaWdyYXRpb25EYXRhPigpOworCQlmb3IgKE1pZ3JhdGlvbkRhdGEgbmV4dCA6IG5ldyBNaWdyYXRpb25EYXRhW10geyBBUkNISVRFQ1RVUkUsIENPTVBPTkVOVCwgSU5URVJGQUNFLCBEQVRBVFlQRSB9KSB7CisJCQlvdXJNaWdyYXRpb25zLnB1dChzYWZlVG9Mb3dlckNhc2UobmV4dC5nZXRPbGRUeXBlKCkpLCBuZXh0KTsKKwkJfQorCX0KKworCUBPdmVycmlkZQorCXB1YmxpYyBJQ29tbWFuZCBnZXRSZWNvbmNpbGVDb21tYW5kKERpYWdyYW0gZGlhZ3JhbSkgeworCQlNaWdyYXRpb25EYXRhIGRhdGEgPSBmaW5kTWlncmF0aW9uKGRpYWdyYW0pOworCQlyZXR1cm4gZGF0YSA9PSBudWxsID8gbnVsbCA6IG5ldyBSb2JvdE1MUmVjb25jaWxlQ29tbWFuZChkaWFncmFtLCBkYXRhKTsKKwl9CisKKwkvKioKKwkgKiBJZ25vcmVzIGNhc2UKKwkgKi8KKwlwcml2YXRlIE1pZ3JhdGlvbkRhdGEgZmluZE1pZ3JhdGlvbihEaWFncmFtIGRpYWdyYW0pIHsKKwkJcmV0dXJuIG91ck1pZ3JhdGlvbnMuZ2V0KHNhZmVUb0xvd2VyQ2FzZShkaWFncmFtLmdldFR5cGUoKSkpOworCX0KKworCXByaXZhdGUgc3RhdGljIFN0cmluZyBzYWZlVG9Mb3dlckNhc2UoU3RyaW5nIHRleHQpIHsKKwkJcmV0dXJuIHRleHQgPT0gbnVsbCA/IG51bGwgOiB0ZXh0LnRvTG93ZXJDYXNlKCk7CisJfQorCisJcHJpdmF0ZSBzdGF0aWMgY2xhc3MgUm9ib3RNTFJlY29uY2lsZUNvbW1hbmQgZXh0ZW5kcyBBYnN0cmFjdENvbW1hbmQgeworCisJCXByaXZhdGUgZmluYWwgRGlhZ3JhbSBteURpYWdyYW07CisKKwkJcHJpdmF0ZSBmaW5hbCBNaWdyYXRpb25EYXRhIG15TWlncmF0aW9uRGF0YTsKKworCQlwdWJsaWMgUm9ib3RNTFJlY29uY2lsZUNvbW1hbmQoRGlhZ3JhbSBkaWFncmFtLCBNaWdyYXRpb25EYXRhIGRhdGEpIHsKKwkJCXN1cGVyKCJNaWdyYXRlIG9sZCBSb2JvdE1MIGRpYWdyYW0iKTsKKwkJCW15RGlhZ3JhbSA9IGRpYWdyYW07CisJCQlteU1pZ3JhdGlvbkRhdGEgPSBkYXRhOworCQl9CisKKwkJQE92ZXJyaWRlCisJCXByb3RlY3RlZCBDb21tYW5kUmVzdWx0IGRvRXhlY3V0ZVdpdGhSZXN1bHQoSVByb2dyZXNzTW9uaXRvciBwcm9ncmVzc01vbml0b3IsIElBZGFwdGFibGUgaW5mbykgdGhyb3dzIEV4ZWN1dGlvbkV4Y2VwdGlvbiB7CisJCQlEaWFncmFtVXRpbHMuc2V0UHJvdG90eXBlKG15RGlhZ3JhbSwgbXlNaWdyYXRpb25EYXRhLmdldFByb3RvdHlwZSgpKTsKKwkJCURpYWdyYW1VdGlscy5zZXRPd25lcihteURpYWdyYW0sIG15RGlhZ3JhbS5nZXRFbGVtZW50KCkpOworCQkJbXlEaWFncmFtLnNldFR5cGUobXlNaWdyYXRpb25EYXRhLmdldE5ld1R5cGUoKSk7CisKKwkJCXJldHVybiBDb21tYW5kUmVzdWx0Lm5ld09LQ29tbWFuZFJlc3VsdCgpOworCQl9CisKKwkJQE92ZXJyaWRlCisJCXB1YmxpYyBib29sZWFuIGNhblVuZG8oKSB7CisJCQlyZXR1cm4gZmFsc2U7CisJCX0KKworCQlAT3ZlcnJpZGUKKwkJcHVibGljIGJvb2xlYW4gY2FuUmVkbygpIHsKKwkJCXJldHVybiBmYWxzZTsKKwkJfQorCisJCUBPdmVycmlkZQorCQlwcm90ZWN0ZWQgQ29tbWFuZFJlc3VsdCBkb1JlZG9XaXRoUmVzdWx0KElQcm9ncmVzc01vbml0b3IgcHJvZ3Jlc3NNb25pdG9yLCBJQWRhcHRhYmxlIGluZm8pIHRocm93cyBFeGVjdXRpb25FeGNlcHRpb24geworCQkJdGhyb3cgbmV3IEV4ZWN1dGlvbkV4Y2VwdGlvbigiU2hvdWxkIG5vdCBiZSBjYWxsZWQsIGNhblJlZG8gZmFsc2UiKTsKKwkJfQorCisJCUBPdmVycmlkZQorCQlwcm90ZWN0ZWQgQ29tbWFuZFJlc3VsdCBkb1VuZG9XaXRoUmVzdWx0KElQcm9ncmVzc01vbml0b3IgcHJvZ3Jlc3NNb25pdG9yLCBJQWRhcHRhYmxlIGluZm8pIHRocm93cyBFeGVjdXRpb25FeGNlcHRpb24geworCQkJdGhyb3cgbmV3IEV4ZWN1dGlvbkV4Y2VwdGlvbigiU2hvdWxkIG5vdCBiZSBjYWxsZWQsIGNhblVuZG8gZmFsc2UiKTsKKwkJfQorCisJfQorCisJLyoqCisJICogRW5jYXBzdWxhdGVzIG1pZ3JhdGlvbiBzY2hlbWUgZnJvbSBnaXZlbiBvbGQgUm9ib3RNTCwgbmV3IFVNTCBkaWFncmFtIHR5cGUgYW5kIGdpdmVuIHByb3RvdHlwZS4KKwkgKiA8cC8+CisJICogSW5zdGFuY2VzIG9mIHRoaXMgY2xhc3MgYXJlIGNvbnNpZGVyZWQgaW52YWxpZCBpZiB0aGUgcHJvdG90eXBlIGlzIG5vdCBrbm93bi4KKwkgKi8KKwlwcml2YXRlIHN0YXRpYyBjbGFzcyBNaWdyYXRpb25EYXRhIHsKKworCQlwcml2YXRlIFZpZXdQcm90b3R5cGUgbXlDYWNoZWRQcm90b3R5cGU7CisKKwkJcHJpdmF0ZSBmaW5hbCBTdHJpbmcgbXlOZXdUeXBlOworCisJCXByaXZhdGUgZmluYWwgU3RyaW5nIG15T2xkVHlwZTsKKworCQlwcml2YXRlIGZpbmFsIFN0cmluZyBteVByb3RvdHlwZUxhYmVsOworCisJCXB1YmxpYyBNaWdyYXRpb25EYXRhKFN0cmluZyBvbGRUeXBlLCBTdHJpbmcgbmV3VHlwZSwgU3RyaW5nIHByb3RvdHlwZUxhYmVsKSB7CisJCQlteU9sZFR5cGUgPSBvbGRUeXBlOworCQkJbXlOZXdUeXBlID0gbmV3VHlwZTsKKwkJCW15UHJvdG90eXBlTGFiZWwgPSBwcm90b3R5cGVMYWJlbDsKKwkJfQorCisJCXB1YmxpYyBTdHJpbmcgZ2V0UHJvdG90eXBlTGFiZWwoKSB7CisJCQlyZXR1cm4gbXlQcm90b3R5cGVMYWJlbDsKKwkJfQorCisJCXB1YmxpYyBTdHJpbmcgZ2V0T2xkVHlwZSgpIHsKKwkJCXJldHVybiBteU9sZFR5cGU7CisJCX0KKworCQlwdWJsaWMgU3RyaW5nIGdldE5ld1R5cGUoKSB7CisJCQlyZXR1cm4gbXlOZXdUeXBlOworCQl9CisKKwkJcHVibGljIFZpZXdQcm90b3R5cGUgZ2V0UHJvdG90eXBlKCkgeworCQkJaWYgKG15Q2FjaGVkUHJvdG90eXBlID09IG51bGwpIHsKKwkJCQlteUNhY2hlZFByb3RvdHlwZSA9IGZpbmRQcm90b3R5cGUobXlQcm90b3R5cGVMYWJlbCk7CisJCQl9CisJCQlyZXR1cm4gbXlDYWNoZWRQcm90b3R5cGU7CisJCX0KKworCQlwcml2YXRlIHN0YXRpYyBWaWV3UHJvdG90eXBlIGZpbmRQcm90b3R5cGUoU3RyaW5nIGxhYmVsKSB7CisJCQlmb3IgKFZpZXdQcm90b3R5cGUgcHJvdG8gOiBQb2xpY3lDaGVja2VyLmdldEN1cnJlbnQoKS5nZXRBbGxQcm90b3R5cGVzKCkpIHsKKwkJCQlpZiAocHJvdG8uZ2V0TGFiZWwoKS5jb250YWlucyhsYWJlbCkpIHsKKwkJCQkJcmV0dXJuIHByb3RvOworCQkJCX0KKwkJCX0KKwkJCXJldHVybiBudWxsOworCQl9CisKKwl9Cit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kaWFncmFtL2NvbW1vbi91dGlscy9Sb2JvdG1sU2VsZWN0aW9uVGVzdGVyLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kaWFncmFtL2NvbW1vbi91dGlscy9Sb2JvdG1sU2VsZWN0aW9uVGVzdGVyLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmI3YTBlMgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RpYWdyYW0vY29tbW9uL3V0aWxzL1JvYm90bWxTZWxlY3Rpb25UZXN0ZXIuamF2YQpAQCAtMCwwICsxLDE0NyBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTMgQ0VBIExJU1QuCisgKgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgU2FhZGlhIERob3VpYiAoQ0VBIExJU1QpIHNhYWRpYS5kaG91aWJAY2VhLmZyIC0gSW5pdGlhbCBBUEkgYW5kIGltcGxlbWVudGF0aW9uCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi51dGlsczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmNvcmUuZXhwcmVzc2lvbnMuUHJvcGVydHlUZXN0ZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5yZXNvdXJjZXMuSUZpbGU7CitpbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLklQYXRoOworaW1wb3J0IG9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5QbGF0Zm9ybTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuVVJJOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmpmYWNlLnZpZXdlcnMuSVNlbGVjdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZmFjZS52aWV3ZXJzLklTdHJ1Y3R1cmVkU2VsZWN0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuaW5mcmEuY29yZS5lZGl0b3IuSU11bHRpRGlhZ3JhbUVkaXRvcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLmluZnJhLmNvcmUucmVzb3VyY2UuTW9kZWxTZXQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5pbmZyYS5jb3JlLnJlc291cmNlLk1vZGVsc1JlYWRlcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLmluZnJhLmVtZi51dGlscy5TZXJ2aWNlVXRpbHNGb3JTZWxlY3Rpb247CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy51bWwudG9vbHMubW9kZWwuVW1sTW9kZWw7CitpbXBvcnQgb3JnLmVjbGlwc2UudWkuSUVkaXRvclBhcnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudWkuUGxhdGZvcm1VSTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlOworCisvKioKKyAqIFRoaXMgY2xhc3MgaXMgYSBQcm9wZXJ0eSB0ZXN0ZXIgdXNlZCB0byBjaGVjayBpZiBjdXJyZW50IG1vZGVsIChtZWFuaW5nIHRoZSBtb2RlbCBjdXJyZW50bHkgb3BlbmVkIGluIFBhcHlydXMpIGlzIGEgUHJvdGV1cyBNb2RlbC4KKyAqIFRoaXMgY2xhc3MgaXMgdXNlZCBpbiBvcmRlciB0byBjcmVhdGUgdGVzdCBmb3IgZGVjaWRpbmcgd2hldGhlciBhIGRpYWdyYW0gY3JlYXRpb24gY29tbWFuZCBzaG91bGQgYmUgdmlzaWJsZSBvciBub3QuCisgKiBUaGlzIHByb3BlcnR5IHRlc3RlciBhc3N1bWVzIHRoYXQgY3VycmVudGx5IGFjdGl2ZSBlZGl0b3IgaXMgUGFweXJ1cywgaXQgc2hvdWxkIGJlIHVzZWQgd2l0aCBjYXJlIChzaW11bHRhbmVvdXNseSB3aXRoIGEgdGVzdCB0byBlbnN1cmUgUGFweXJ1cyBpcworICogY3VycmVudGx5IG9wZW5lZCBhbmQgYWN0aXZlKS4KKyAqCisgKi8KK3B1YmxpYyBjbGFzcyBSb2JvdG1sU2VsZWN0aW9uVGVzdGVyIGV4dGVuZHMgUHJvcGVydHlUZXN0ZXIgeworCisJLyoqIFRlc3RlciBJRCBmb3IgVU1MIE1vZGVsIG5hdHVyZSAqLworCXB1YmxpYyBmaW5hbCBzdGF0aWMgU3RyaW5nIElTX1JPQk9UTUxfTU9ERUwgPSAiaXNSb2JvdG1sTW9kZWwiOworCisKKwkvLyBwdWJsaWMgc3RhdGljIFN0cmluZyBST0JPVE1MX0lEID0gIlJvYm90TUwiOworCisJLyoqIERlZmF1bHQgY29uc3RydWN0b3IgKi8KKwlwdWJsaWMgUm9ib3RtbFNlbGVjdGlvblRlc3RlcigpIHsKKwl9CisKKwkvKiogVGVzdCB0aGUgcmVjZWl2ZXIgYWdhaW5zdCB0aGUgc2VsZWN0ZWQgcHJvcGVydHkgKi8KKwlwdWJsaWMgYm9vbGVhbiB0ZXN0KE9iamVjdCByZWNlaXZlciwgU3RyaW5nIHByb3BlcnR5LCBPYmplY3RbXSBhcmdzLCBPYmplY3QgZXhwZWN0ZWRWYWx1ZSkgeworCisJCS8vIEVuc3VyZSBQYXB5cnVzIGlzIHRoZSBhY3RpdmUgZWRpdG9yCisJCUlFZGl0b3JQYXJ0IGVkaXRvciA9IFBsYXRmb3JtVUkuZ2V0V29ya2JlbmNoKCkuZ2V0QWN0aXZlV29ya2JlbmNoV2luZG93KCkuZ2V0QWN0aXZlUGFnZSgpLmdldEFjdGl2ZUVkaXRvcigpOworCQlpZiAoKGVkaXRvciA9PSBudWxsKSB8fCAoIShlZGl0b3IgaW5zdGFuY2VvZiBJTXVsdGlEaWFncmFtRWRpdG9yKSkpIHsKKwkJCXJldHVybiBmYWxzZTsKKwkJfQorCisJCU9iamVjdCBjdXJyZW50VmFsdWUgPSBudWxsOworCQlpZiAoSVNfUk9CT1RNTF9NT0RFTC5lcXVhbHMocHJvcGVydHkpKSB7CisJCQljdXJyZW50VmFsdWUgPSB0ZXN0Um9ib3RtbE1vZGVsTmF0dXJlKHJlY2VpdmVyKTsKKwkJCXJldHVybiAoY3VycmVudFZhbHVlID09IGV4cGVjdGVkVmFsdWUpOworCQl9CisKKworCQlyZXR1cm4gZmFsc2U7CisJfQorCisJLyoqIFRydWUgaXMgcm9vdCBvYmplY3QgaXMgYSBVTUwgTW9kZWwgd2l0aCBSb2JvdE1MIFByb2ZpbGUgKGFuZCBzdWIgcHJvZmlsZXMpIGFwcGxpZWQgKi8KKwlwcm90ZWN0ZWQgYm9vbGVhbiB0ZXN0Um9ib3RtbE1vZGVsTmF0dXJlKE9iamVjdCByZWNlaXZlcikgeworCQlib29sZWFuIGlzUm9ib3RtbE1vZGVsID0gZmFsc2U7CisKKworCisJCUVPYmplY3Qgcm9vdCA9IGdldFJvb3QocmVjZWl2ZXIpOworCQlpZiAocm9vdCBpbnN0YW5jZW9mIFBhY2thZ2UpIHsKKwkJCXJldHVybiAoKChQYWNrYWdlKSByb290KS5nZXRBcHBsaWVkUHJvZmlsZSgiUm9ib3RNTCIpICE9IG51bGwpOworCisJCQkvLyBGSVg6IFVNTFV0aWwuZ2V0UHJvZmlsZSgpIGxvYWRzIHRoZSBwcm9maWxlIGludG8gdGhlIHJlc291cmNlIHNldC4gVGhpcyBpcyBub3QgZGVzaXJlZC4KKwkJCS8vCisJCQkvLyBQcm9maWxlIHJvYm90bWwgPSBVTUxVdGlsLmdldFByb2ZpbGUoUm9ib3RNTFBhY2thZ2UuZUlOU1RBTkNFLCByb290KTsKKwkJCS8vCisJCQkvLyBpZigoKFBhY2thZ2Upcm9vdCkuaXNQcm9maWxlQXBwbGllZChyb2JvdG1sKSkgeworCQkJLy8gaXNSb2JvdG1sTW9kZWwgPSB0cnVlOworCQkJLy8gfQorCQl9CisKKworCQlyZXR1cm4gaXNSb2JvdG1sTW9kZWw7CisJfQorCisKKwkvKiogUmV0dXJucyB0aGUgcm9vdCBFT2JqZWN0IG9mIGN1cnJlbnRseSBvcGVuZWQgbW9kZWwgKi8KKwlwcml2YXRlIEVPYmplY3QgZ2V0Um9vdChPYmplY3QgcmVjZWl2ZXIpIHsKKwkJRU9iamVjdCByb290ID0gbnVsbDsKKworCQlpZiAocmVjZWl2ZXIgaW5zdGFuY2VvZiBJU2VsZWN0aW9uKSB7CisJCQlJU2VsZWN0aW9uIHNlbGVjdGlvbiA9IChJU2VsZWN0aW9uKSByZWNlaXZlcjsKKwkJCWlmIChzZWxlY3Rpb24uaXNFbXB0eSgpKSB7CisJCQkJcmV0dXJuIG51bGw7CisJCQl9CisKKwkJCXRyeSB7CisJCQkJLy8gdGhpcyBpcyB0aGUgY2FzZSB3aGVyZSB0aGUgc2VsZWN0aW9uIGlzIG9uIHRoZSBQcm9qZWN0IEV4cGxvcmVyCisJCQkJSVN0cnVjdHVyZWRTZWxlY3Rpb24gc2VsZWN0aW9uc3RydWN0dXJlZCA9IChJU3RydWN0dXJlZFNlbGVjdGlvbikgc2VsZWN0aW9uOworCisJCQkJT2JqZWN0IHNlbGVjdGVkRWxlbWVudCA9IHNlbGVjdGlvbnN0cnVjdHVyZWQuZ2V0Rmlyc3RFbGVtZW50KCk7CisKKwkJCQlPYmplY3Qgc2VsZWN0ZWRBZGFwdGVyID0gUGxhdGZvcm0uZ2V0QWRhcHRlck1hbmFnZXIoKS5nZXRBZGFwdGVyKHNlbGVjdGVkRWxlbWVudCwgSUZpbGUuY2xhc3MpOworCisKKwkJCQlpZiAoc2VsZWN0ZWRBZGFwdGVyIGluc3RhbmNlb2YgSUZpbGUpIHsKKwkJCQkJZmluYWwgSUZpbGUgc2VsZWN0ZWRGaWxlID0gKElGaWxlKSBzZWxlY3RlZEFkYXB0ZXI7CisJCQkJCU1vZGVsU2V0IG1vZGVsU2V0ID0gbmV3IE1vZGVsU2V0KCk7CisJCQkJCU1vZGVsc1JlYWRlciByZWFkZXIgPSBuZXcgTW9kZWxzUmVhZGVyKCk7CisJCQkJCXJlYWRlci5yZWFkTW9kZWwobW9kZWxTZXQpOworCisKKwkJCQkJSVBhdGggd29ya3NwYWNlUGF0aCA9IHNlbGVjdGVkRmlsZS5nZXRGdWxsUGF0aCgpOworCisJCQkJCVVSSSB3b3Jrc3BhY2VVUkkgPSBVUkkuY3JlYXRlUGxhdGZvcm1SZXNvdXJjZVVSSSh3b3Jrc3BhY2VQYXRoLnRvU3RyaW5nKCksIHRydWUpOworCQkJCQltb2RlbFNldC5sb2FkTW9kZWxzKHdvcmtzcGFjZVVSSSk7CisKKwkJCQkJVW1sTW9kZWwgb3BlbmVkTW9kZWwgPSAoVW1sTW9kZWwpIG1vZGVsU2V0LmdldE1vZGVsKFVtbE1vZGVsLk1PREVMX0lEKTsKKwkJCQkJaWYgKG9wZW5lZE1vZGVsICE9IG51bGwpIHsKKwkJCQkJCXJvb3QgPSBvcGVuZWRNb2RlbC5sb29rdXBSb290KCk7CisJCQkJCX0KKwkJCQl9IGVsc2UgeworCQkJCQkvLyB0aGlzIGlzIHRoZSBjYXNlIHdoZXJlIHRoZSBzZWxlY3Rpb24gaXMgb24gdGhlIE1vZGVsIEV4cGxvcmVyCisJCQkJCVNlcnZpY2VVdGlsc0ZvclNlbGVjdGlvbiBzZXJ2aWNlVXRpbHMgPSBTZXJ2aWNlVXRpbHNGb3JTZWxlY3Rpb24uZ2V0SW5zdGFuY2UoKTsKKwkJCQkJVW1sTW9kZWwgb3BlbmVkTW9kZWwgPSAoVW1sTW9kZWwpIHNlcnZpY2VVdGlscy5nZXRNb2RlbFNldChzZWxlY3Rpb24pLmdldE1vZGVsKFVtbE1vZGVsLk1PREVMX0lEKTsKKwkJCQkJaWYgKG9wZW5lZE1vZGVsICE9IG51bGwpIHsKKwkJCQkJCXJvb3QgPSBvcGVuZWRNb2RlbC5sb29rdXBSb290KCk7CisJCQkJCX0KKwkJCQl9CisKKwkJCX0gY2F0Y2ggKEV4Y2VwdGlvbiBlKSB7CisJCQkJLy8gSWdub3JlZDogVGhlIHNlbGVjdGlvbiBjYW5ub3QgYmUgdXNlZCB0byByZXRyaWV2ZSB0aGUgU2VydmljZXNSZWdpc3RyeS4KKwkJCQkvLyBEbyBub3QgbG9nIGV4Y2VwdGlvbnM6IHRoaXMgaXMganVzdCBub3QgYSBQYXB5cnVzL1JvYm90TUwgbW9kZWwKKwkJCX0KKwkJfQorCisJCXJldHVybiByb290OworCX0KKworCit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24gYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24KbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uNzdkYmVjOAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbgpAQCAtMCwwICsxLDU0IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPGNvbmZpZ3VyYXRpb246UGFweXJ1c0NvbmZpZ3VyYXRpb24geG1pOnZlcnNpb249IjIuMCIgeG1sbnM6eG1pPSJodHRwOi8vd3d3Lm9tZy5vcmcvWE1JIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczpjb25maWd1cmF0aW9uPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3BhcHlydXMvaW5mcmEvdmlld3BvaW50cy9jb25maWd1cmF0aW9uIiB4bWk6aWQ9Il8wa3lINFBMX0VlT05YUFEybWJ3OXZBIiBkZWZhdWx0U3Rha2Vob2xkZXI9Il8wa3l1OFBMX0VlT05YUFEybWJ3OXZBIj4KKyAgPHN0YWtlaG9sZGVycyB4bWk6aWQ9Il8wa3l1OFBMX0VlT05YUFEybWJ3OXZBIiBuYW1lPSJSb2JvdE1MIE1vZGVsZXIiLz4KKyAgPHZpZXdwb2ludHMgeHNpOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c1ZpZXdwb2ludCIgeG1pOmlkPSJfMGt5dThmTF9FZU9OWFBRMm1idzl2QSIgbmFtZT0iRGVmYXVsdCBQYXB5cnVzIFZpZXdwb2ludCI+CisgICAgPG1vZGVsS2luZHMgeHNpOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIHhtaTppZD0iXzBreldBUExfRWVPTlhQUTJtYnc5dkEiIG5hbWU9IlJvYm90TUwgQXJjaGl0ZWN0dXJlIERlZmluaXRpb24gRGlhZ3JhbSIgaWNvbj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vZGlhZ3JhbXMvYXJjaGl0ZWN0dXJlL2FyY2hpdGVjdHVyZS5naWYiIGltcGxlbWVudGF0aW9uSUQ9IkNvbXBvc2l0ZVN0cnVjdHVyZSIgY2F0ZWdvcmllcz0iXzBrejlHUExfRWVPTlhQUTJtYnc5dkEiIGN1c3RvbVBhbGV0dGU9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2RpYWdyYW1zL2FyY2hpdGVjdHVyZS9hcmNoaXRlY3R1cmUucGFsZXR0ZS54bWwiIGN1c3RvbVN0eWxlPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9jc3Mvc3R5bGUuY3NzIj4KKyAgICAgIDxwcm9maWxlcyBocmVmPSJodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEjLyIvPgorICAgICAgPG1vZGVsUnVsZXMgeG1pOmlkPSJfMGt6V0FmTF9FZU9OWFBRMm1idzl2QSI+CisgICAgICAgIDxlbGVtZW50IGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9QYWNrYWdlIi8+CisgICAgICA8L21vZGVsUnVsZXM+CisgICAgICA8b3duaW5nUnVsZXMgeG1pOmlkPSJfMGt6V0F2TF9FZU9OWFBRMm1idzl2QSI+CisgICAgICAgIDxlbGVtZW50IGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9QYWNrYWdlIi8+CisgICAgICA8L293bmluZ1J1bGVzPgorICAgICAgPGNoaWxkUnVsZXMgeG1pOmlkPSJfMGt6V0FfTF9FZU9OWFBRMm1idzl2QSIvPgorICAgICAgPHBhbGV0dGVSdWxlcyB4bWk6aWQ9Il8wa3pXQlBMX0VlT05YUFEybWJ3OXZBIiBwZXJtaXQ9ImZhbHNlIiBlbGVtZW50PSJjb21wb3NpdGUuZ3JvdXAuKiIvPgorICAgIDwvbW9kZWxLaW5kcz4KKyAgICA8bW9kZWxLaW5kcyB4c2k6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgeG1pOmlkPSJfMGt6V0JmTF9FZU9OWFBRMm1idzl2QSIgbmFtZT0iUm9ib3RNTCBDb21wb25lbnQgRGVmaW5pdGlvbiBEaWFncmFtIiBpY29uPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi9kaWFncmFtcy9jb21wb25lbnRkZWYvY29tcG9uZW50ZGVmLmdpZiIgaW1wbGVtZW50YXRpb25JRD0iQ29tcG9zaXRlU3RydWN0dXJlIiBjYXRlZ29yaWVzPSJfMGt6OUdQTF9FZU9OWFBRMm1idzl2QSIgY3VzdG9tUGFsZXR0ZT0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vZGlhZ3JhbXMvY29tcG9uZW50ZGVmL2NvbXBvbmVudGRlZi5wYWxldHRlLnhtbCIgY3VzdG9tU3R5bGU9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2Nzcy9zdHlsZS5jc3MiPgorICAgICAgPHByb2ZpbGVzIGhyZWY9Imh0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMSMvIi8+CisgICAgICA8bW9kZWxSdWxlcyB4bWk6aWQ9Il8wa3pXQnZMX0VlT05YUFEybWJ3OXZBIj4KKyAgICAgICAgPGVsZW1lbnQgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BhY2thZ2UiLz4KKyAgICAgIDwvbW9kZWxSdWxlcz4KKyAgICAgIDxvd25pbmdSdWxlcyB4bWk6aWQ9Il8wa3pXQl9MX0VlT05YUFEybWJ3OXZBIj4KKyAgICAgICAgPGVsZW1lbnQgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BhY2thZ2UiLz4KKyAgICAgIDwvb3duaW5nUnVsZXM+CisgICAgICA8Y2hpbGRSdWxlcyB4bWk6aWQ9Il8wa3pXQ1BMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgICA8cGFsZXR0ZVJ1bGVzIHhtaTppZD0iXzBreldDZkxfRWVPTlhQUTJtYnc5dkEiIHBlcm1pdD0iZmFsc2UiIGVsZW1lbnQ9ImNvbXBvc2l0ZS5ncm91cC4qIi8+CisgICAgPC9tb2RlbEtpbmRzPgorICAgIDxtb2RlbEtpbmRzIHhzaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiB4bWk6aWQ9Il8wa3pXQ3ZMX0VlT05YUFEybWJ3OXZBIiBuYW1lPSJSb2JvdE1MIERhdGF0eXBlIERlZmluaXRpb24gRGlhZ3JhbSIgaWNvbj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vZGlhZ3JhbXMvZGF0YXR5cGVkZWYvZGF0YXR5cGVELmdpZiIgaW1wbGVtZW50YXRpb25JRD0iUGFweXJ1c1VNTENsYXNzRGlhZ3JhbSIgY2F0ZWdvcmllcz0iXzBrejlHUExfRWVPTlhQUTJtYnc5dkEiIGN1c3RvbVBhbGV0dGU9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2RpYWdyYW1zL2RhdGF0eXBlZGVmL2RhdGF0eXBlZGVmLnBhbGV0dGUueG1sIj4KKyAgICAgIDxwcm9maWxlcyBocmVmPSJodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEjLyIvPgorICAgICAgPG1vZGVsUnVsZXMgeG1pOmlkPSJfMGt6V0NfTF9FZU9OWFBRMm1idzl2QSI+CisgICAgICAgIDxlbGVtZW50IGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9QYWNrYWdlIi8+CisgICAgICA8L21vZGVsUnVsZXM+CisgICAgICA8b3duaW5nUnVsZXMgeG1pOmlkPSJfMGt6V0RQTF9FZU9OWFBRMm1idzl2QSI+CisgICAgICAgIDxlbGVtZW50IGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9QYWNrYWdlIi8+CisgICAgICA8L293bmluZ1J1bGVzPgorICAgICAgPGNoaWxkUnVsZXMgeG1pOmlkPSJfMGt6V0RmTF9FZU9OWFBRMm1idzl2QSIvPgorICAgICAgPHBhbGV0dGVSdWxlcyB4bWk6aWQ9Il8wa3o5RVBMX0VlT05YUFEybWJ3OXZBIiBwZXJtaXQ9ImZhbHNlIiBlbGVtZW50PSJjbGF6ei5ncm91cC4qIi8+CisgICAgICA8cGFsZXR0ZVJ1bGVzIHhtaTppZD0iXzBrejlFZkxfRWVPTlhQUTJtYnc5dkEiIHBlcm1pdD0iZmFsc2UiIGVsZW1lbnQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNsYXp6Ii8+CisgICAgPC9tb2RlbEtpbmRzPgorICAgIDxtb2RlbEtpbmRzIHhzaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiB4bWk6aWQ9Il8wa3o5RXZMX0VlT05YUFEybWJ3OXZBIiBuYW1lPSJSb2JvdE1MIEludGVyZmFjZSBEZWZpbml0aW9uIERpYWdyYW0iIGljb249InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2RpYWdyYW1zL2ludGVyZmFjZWRlZi9pbnRlcmZhY2VJLmdpZiIgaW1wbGVtZW50YXRpb25JRD0iUGFweXJ1c1VNTENsYXNzRGlhZ3JhbSIgY2F0ZWdvcmllcz0iXzBrejlHUExfRWVPTlhQUTJtYnc5dkEiIGN1c3RvbVBhbGV0dGU9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL2RpYWdyYW1zL2ludGVyZmFjZWRlZi9pbnRlcmZhY2VkZWYucGFsZXR0ZS54bWwiPgorICAgICAgPHByb2ZpbGVzIGhyZWY9Imh0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMSMvIi8+CisgICAgICA8bW9kZWxSdWxlcyB4bWk6aWQ9Il8wa3o5RV9MX0VlT05YUFEybWJ3OXZBIj4KKyAgICAgICAgPGVsZW1lbnQgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BhY2thZ2UiLz4KKyAgICAgIDwvbW9kZWxSdWxlcz4KKyAgICAgIDxvd25pbmdSdWxlcyB4bWk6aWQ9Il8wa3o5RlBMX0VlT05YUFEybWJ3OXZBIj4KKyAgICAgICAgPGVsZW1lbnQgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BhY2thZ2UiLz4KKyAgICAgIDwvb3duaW5nUnVsZXM+CisgICAgICA8Y2hpbGRSdWxlcyB4bWk6aWQ9Il8wa3o5RmZMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgICA8cGFsZXR0ZVJ1bGVzIHhtaTppZD0iXzBrejlGdkxfRWVPTlhQUTJtYnc5dkEiIHBlcm1pdD0iZmFsc2UiIGVsZW1lbnQ9ImNsYXp6Lmdyb3VwLioiLz4KKyAgICAgIDxwYWxldHRlUnVsZXMgeG1pOmlkPSJfMGt6OUZfTF9FZU9OWFBRMm1idzl2QSIgcGVybWl0PSJmYWxzZSIgZWxlbWVudD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY2xhenoiLz4KKyAgICA8L21vZGVsS2luZHM+CisgIDwvdmlld3BvaW50cz4KKyAgPG1ldGFtb2RlbCBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8iLz4KKyAgPGNhdGVnb3JpZXMgeG1pOmlkPSJfMGt6OUdQTF9FZU9OWFBRMm1idzl2QSIgbmFtZT0icm9ib3RNTCIvPgorPC9jb25maWd1cmF0aW9uOlBhcHlydXNDb25maWd1cmF0aW9uPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0udWkvLmNsYXNzcGF0aCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLnVpLy5jbGFzc3BhdGgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjg4YTc4MAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLnVpLy5jbGFzc3BhdGgKQEAgLTAsMCArMSw3IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPGNsYXNzcGF0aD4KKwk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLkpSRV9DT05UQUlORVIvb3JnLmVjbGlwc2UuamR0LmludGVybmFsLmRlYnVnLnVpLmxhdW5jaGVyLlN0YW5kYXJkVk1UeXBlL0oyU0UtMS41Ii8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UucGRlLmNvcmUucmVxdWlyZWRQbHVnaW5zIi8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9InNyYyIgcGF0aD0ic3JjIi8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9Im91dHB1dCIgcGF0aD0idGFyZ2V0L2NsYXNzZXMiLz4KKzwvY2xhc3NwYXRoPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0udWkvLnByb2plY3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS51aS8ucHJvamVjdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZmRmNTZiCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0udWkvLnByb2plY3QKQEAgLTAsMCArMSwzNCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxwcm9qZWN0RGVzY3JpcHRpb24+CisJPG5hbWU+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0udWk8L25hbWU+CisJPGNvbW1lbnQ+PC9jb21tZW50PgorCTxwcm9qZWN0cz4KKwk8L3Byb2plY3RzPgorCTxidWlsZFNwZWM+CisJCTxidWlsZENvbW1hbmQ+CisJCQk8bmFtZT5vcmcuZWNsaXBzZS5qZHQuY29yZS5qYXZhYnVpbGRlcjwvbmFtZT4KKwkJCTxhcmd1bWVudHM+CisJCQk8L2FyZ3VtZW50cz4KKwkJPC9idWlsZENvbW1hbmQ+CisJCTxidWlsZENvbW1hbmQ+CisJCQk8bmFtZT5vcmcuZWNsaXBzZS5wZGUuTWFuaWZlc3RCdWlsZGVyPC9uYW1lPgorCQkJPGFyZ3VtZW50cz4KKwkJCTwvYXJndW1lbnRzPgorCQk8L2J1aWxkQ29tbWFuZD4KKwkJPGJ1aWxkQ29tbWFuZD4KKwkJCTxuYW1lPm9yZy5lY2xpcHNlLnBkZS5TY2hlbWFCdWlsZGVyPC9uYW1lPgorCQkJPGFyZ3VtZW50cz4KKwkJCTwvYXJndW1lbnRzPgorCQk8L2J1aWxkQ29tbWFuZD4KKwkJPGJ1aWxkQ29tbWFuZD4KKwkJCTxuYW1lPm9yZy5lY2xpcHNlLm0yZS5jb3JlLm1hdmVuMkJ1aWxkZXI8L25hbWU+CisJCQk8YXJndW1lbnRzPgorCQkJPC9hcmd1bWVudHM+CisJCTwvYnVpbGRDb21tYW5kPgorCTwvYnVpbGRTcGVjPgorCTxuYXR1cmVzPgorCQk8bmF0dXJlPm9yZy5lY2xpcHNlLm0yZS5jb3JlLm1hdmVuMk5hdHVyZTwvbmF0dXJlPgorCQk8bmF0dXJlPm9yZy5lY2xpcHNlLnBkZS5QbHVnaW5OYXR1cmU8L25hdHVyZT4KKwkJPG5hdHVyZT5vcmcuZWNsaXBzZS5qZHQuY29yZS5qYXZhbmF0dXJlPC9uYXR1cmU+CisJPC9uYXR1cmVzPgorPC9wcm9qZWN0RGVzY3JpcHRpb24+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS51aS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuY29yZS5yZXNvdXJjZXMucHJlZnMgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS51aS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuY29yZS5yZXNvdXJjZXMucHJlZnMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTlmMjZjMAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLnVpLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5wcmVmcwpAQCAtMCwwICsxLDIgQEAKK2VjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCitlbmNvZGluZy88cHJvamVjdD49VVRGLTgKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLnVpLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLnVpLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMzk3ZGJkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0udWkvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCkBAIC0wLDAgKzEsOCBAQAorI1R1ZSBKYW4gMTggMTY6MzY6NTMgQ0VUIDIwMTEKK2VjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLmlubGluZUpzckJ5dGVjb2RlPWVuYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MS41CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlPTEuNQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5hc3NlcnRJZGVudGlmaWVyPWVycm9yCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVudW1JZGVudGlmaWVyPWVycm9yCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5zb3VyY2U9MS41CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS51aS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UubTJlLmNvcmUucHJlZnMgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS51aS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UubTJlLmNvcmUucHJlZnMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjg5N2E3ZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLnVpLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5tMmUuY29yZS5wcmVmcwpAQCAtMCwwICsxLDQgQEAKK2FjdGl2ZVByb2ZpbGVzPQorZWNsaXBzZS5wcmVmZXJlbmNlcy52ZXJzaW9uPTEKK3Jlc29sdmVXb3Jrc3BhY2VQcm9qZWN0cz10cnVlCit2ZXJzaW9uPTEKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLnVpL01FVEEtSU5GL01BTklGRVNULk1GIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0udWkvTUVUQS1JTkYvTUFOSUZFU1QuTUYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODIyMWI4NQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLnVpL01FVEEtSU5GL01BTklGRVNULk1GCkBAIC0wLDAgKzEsMjAgQEAKK01hbmlmZXN0LVZlcnNpb246IDEuMAorRXhwb3J0LVBhY2thZ2U6IG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLnVpCitSZXF1aXJlLUJ1bmRsZTogb3JnLmVjbGlwc2UudWksCisgb3JnLmVjbGlwc2UudWkuaWRlLAorIG9yZy5lY2xpcHNlLmNvcmUucnVudGltZSwKKyBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb247YnVuZGxlLXZlcnNpb249IjEuMi4wIiwKKyBvcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5kaWFncmFtLndpemFyZHM7YnVuZGxlLXZlcnNpb249IjEuMi4wIiwKKyBvcmcuZWNsaXBzZS5wYXB5cnVzLmluZnJhLmNvcmU7YnVuZGxlLXZlcnNpb249IjEuMi4wIiwKKyBvcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcztidW5kbGUtdmVyc2lvbj0iMy44LjAiLAorIG9yZy5lY2xpcHNlLnVpLndvcmtiZW5jaDtidW5kbGUtdmVyc2lvbj0iMy4xMDUuMCIsCisgb3JnLmVjbGlwc2UuamZhY2U7YnVuZGxlLXZlcnNpb249IjMuOS4wIgorQnVuZGxlLVZlbmRvcjogJUJ1bmRsZS1WZW5kb3IKK0J1bmRsZS1BY3RpdmF0aW9uUG9saWN5OiBsYXp5CitCdW5kbGUtVmVyc2lvbjogMS4yLjAucXVhbGlmaWVyCitCdW5kbGUtTG9jYWxpemF0aW9uOiBwbHVnaW4KK0J1bmRsZS1OYW1lOiAlQnVuZGxlLU5hbWUKK0J1bmRsZS1BY3RpdmF0b3I6IG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLnVpLkFjdGl2YXRvcgorQnVuZGxlLU1hbmlmZXN0VmVyc2lvbjogMgorQnVuZGxlLVN5bWJvbGljTmFtZTogb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0udWk7c2luZ2xldG9uOj10cnVlCitCdW5kbGUtUmVxdWlyZWRFeGVjdXRpb25FbnZpcm9ubWVudDogSjJTRS0xLjUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLnVpL2Fib3V0Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS51aS9hYm91dC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQzNWQ1YWUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS51aS9hYm91dC5odG1sCkBAIC0wLDAgKzEsMjggQEAKKzwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFN0cmljdC8vRU4iCisgICAgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXN0cmljdC5kdGQiPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorPGhlYWQ+Cis8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1JU08tODg1OS0xIi8+Cis8dGl0bGU+QWJvdXQ8L3RpdGxlPgorPC9oZWFkPgorPGJvZHkgbGFuZz0iRU4tVVMiPgorPGgyPkFib3V0IFRoaXMgQ29udGVudDwvaDI+CisgCis8cD5KdW5lIDUsIDIwMDc8L3A+CQorPGgzPkxpY2Vuc2U8L2gzPgorCis8cD5UaGUgRWNsaXBzZSBGb3VuZGF0aW9uIG1ha2VzIGF2YWlsYWJsZSBhbGwgY29udGVudCBpbiB0aGlzIHBsdWctaW4gKCZxdW90O0NvbnRlbnQmcXVvdDspLiAgVW5sZXNzIG90aGVyd2lzZSAKK2luZGljYXRlZCBiZWxvdywgdGhlIENvbnRlbnQgaXMgcHJvdmlkZWQgdG8geW91IHVuZGVyIHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB0aGUKK0VjbGlwc2UgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAxLjAgKCZxdW90O0VQTCZxdW90OykuICBBIGNvcHkgb2YgdGhlIEVQTCBpcyBhdmFpbGFibGUgCithdCA8YSBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbCI+aHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWw8L2E+LgorRm9yIHB1cnBvc2VzIG9mIHRoZSBFUEwsICZxdW90O1Byb2dyYW0mcXVvdDsgd2lsbCBtZWFuIHRoZSBDb250ZW50LjwvcD4KKworPHA+SWYgeW91IGRpZCBub3QgcmVjZWl2ZSB0aGlzIENvbnRlbnQgZGlyZWN0bHkgZnJvbSB0aGUgRWNsaXBzZSBGb3VuZGF0aW9uLCB0aGUgQ29udGVudCBpcyAKK2JlaW5nIHJlZGlzdHJpYnV0ZWQgYnkgYW5vdGhlciBwYXJ0eSAoJnF1b3Q7UmVkaXN0cmlidXRvciZxdW90OykgYW5kIGRpZmZlcmVudCB0ZXJtcyBhbmQgY29uZGl0aW9ucyBtYXkKK2FwcGx5IHRvIHlvdXIgdXNlIG9mIGFueSBvYmplY3QgY29kZSBpbiB0aGUgQ29udGVudC4gIENoZWNrIHRoZSBSZWRpc3RyaWJ1dG9yJ3MgbGljZW5zZSB0aGF0IHdhcyAKK3Byb3ZpZGVkIHdpdGggdGhlIENvbnRlbnQuICBJZiBubyBzdWNoIGxpY2Vuc2UgZXhpc3RzLCBjb250YWN0IHRoZSBSZWRpc3RyaWJ1dG9yLiAgVW5sZXNzIG90aGVyd2lzZQoraW5kaWNhdGVkIGJlbG93LCB0aGUgdGVybXMgYW5kIGNvbmRpdGlvbnMgb2YgdGhlIEVQTCBzdGlsbCBhcHBseSB0byBhbnkgc291cmNlIGNvZGUgaW4gdGhlIENvbnRlbnQKK2FuZCBzdWNoIHNvdXJjZSBjb2RlIG1heSBiZSBvYnRhaW5lZCBhdCA8YSBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnLyI+aHR0cDovL3d3dy5lY2xpcHNlLm9yZzwvYT4uPC9wPgorCis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS51aS9idWlsZC5wcm9wZXJ0aWVzIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0udWkvYnVpbGQucHJvcGVydGllcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jNTJkZDVmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0udWkvYnVpbGQucHJvcGVydGllcwpAQCAtMCwwICsxLDkgQEAKK3NvdXJjZS4uID0gc3JjLworb3V0cHV0Li4gPSBiaW4vCitiaW4uaW5jbHVkZXMgPSBNRVRBLUlORi8sXAorICAgICAgICAgICAgICAgLixcCisgICAgICAgICAgICAgICBwbHVnaW4ueG1sLFwKKyAgICAgICAgICAgICAgIGljb25zLyxcCisgICAgICAgICAgICAgICBwbHVnaW4ucHJvcGVydGllcyxcCisgICAgICAgICAgICAgICBhYm91dC5odG1sCitzcmMuaW5jbHVkZXMgPSBhYm91dC5odG1sCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS51aS9pY29ucy9uZXdfc3lzbWxfcHJvamVjdC5naWYgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS51aS9pY29ucy9uZXdfc3lzbWxfcHJvamVjdC5naWYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzYzN2U4YQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLnVpL2ljb25zL25ld19zeXNtbF9wcm9qZWN0LmdpZgpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS51aS9wbHVnaW4ucHJvcGVydGllcyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLnVpL3BsdWdpbi5wcm9wZXJ0aWVzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk1OGQzNTcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS51aS9wbHVnaW4ucHJvcGVydGllcwpAQCAtMCwwICsxLDMgQEAKKyNQcm9wZXJ0aWVzIGZpbGUgZm9yIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLnVpCitCdW5kbGUtVmVuZG9yID0gIEVjbGlwc2UgTW9kZWxpbmcgUHJvamVjdAorQnVuZGxlLU5hbWUgPSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS51aSAoSW5jdWJhdGlvbikKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS51aS9wbHVnaW4ueG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0udWkvcGx1Z2luLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xZTdhZjYzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0udWkvcGx1Z2luLnhtbApAQCAtMCwwICsxLDMyIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPD9lY2xpcHNlIHZlcnNpb249IjMuNCI/PgorPHBsdWdpbj4KKyAgIDxleHRlbnNpb24KKyAgICAgICAgIHBvaW50PSJvcmcuZWNsaXBzZS51aS5uZXdXaXphcmRzIj4KKyAgICAgIDx3aXphcmQKKyAgICAgICAgICAgIGNhbkZpbmlzaEVhcmx5PSJmYWxzZSIKKyAgICAgICAgICAgIGNhdGVnb3J5PSJvcmcuZWNsaXBzZS5wYXB5cnVzLndpemFyZHMuY2F0ZWdvcnkiCisgICAgICAgICAgICBjbGFzcz0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0udWkuTmV3Um9ib3RtbE1vZGVsV2l6YXJkIgorICAgICAgICAgICAgZmluYWxQZXJzcGVjdGl2ZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5pbmZyYS5jb3JlLnBlcnNwZWN0aXZlIgorICAgICAgICAgICAgaWNvbj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcm9ib3RtbC9Sb2JvdE1MLTE2eDE2LThiaXRzLnBuZyIKKyAgICAgICAgICAgIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLndpemFyZHMuY3JlYXRlcm9ib3RtbG1vZGVsIgorICAgICAgICAgICAgbmFtZT0iUm9ib3RNTCBNb2RlbCI+CisgICAgICAgICA8c2VsZWN0aW9uCisgICAgICAgICAgICAgICBjbGFzcz0ib3JnLmVjbGlwc2UuY29yZS5yZXNvdXJjZXMuSVJlc291cmNlIj4KKyAgICAgICAgIDwvc2VsZWN0aW9uPgorICAgICAgPC93aXphcmQ+CisgICAgICA8d2l6YXJkCisgICAgICAgICAgICBjYXRlZ29yeT0ib3JnLmVjbGlwc2UucGFweXJ1cy53aXphcmRzLmNhdGVnb3J5IgorICAgICAgICAgICAgY2xhc3M9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLnVpLk5ld1JvYm90bWxQcm9qZWN0V2l6YXJkIgorICAgICAgICAgICAgZmluYWxQZXJzcGVjdGl2ZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5pbmZyYS5jb3JlLnBlcnNwZWN0aXZlIgorICAgICAgICAgICAgaWNvbj0iaWNvbnMvbmV3X3N5c21sX3Byb2plY3QuZ2lmIgorICAgICAgICAgICAgaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMud2l6YXJkcy5jcmVhdGVyb2JvdG1sd2l6YXJkIgorICAgICAgICAgICAgbmFtZT0iUm9ib3RNTCBQcm9qZWN0IgorICAgICAgICAgICAgcHJvamVjdD0idHJ1ZSI+CisgICAgICAgICA8ZGVzY3JpcHRpb24+CisgICAgICAgICAgICBOZXcgUm9ib3RNTCBQcm9qZWN0CisgICAgICAgICA8L2Rlc2NyaXB0aW9uPgorICAgICAgPC93aXphcmQ+CisgICA8L2V4dGVuc2lvbj4KKworPC9wbHVnaW4+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS51aS9wb20ueG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0udWkvcG9tLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mNWRiMzk0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0udWkvcG9tLnhtbApAQCAtMCwwICsxLDExIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHByb2plY3Q+CisJPG1vZGVsVmVyc2lvbj40LjAuMDwvbW9kZWxWZXJzaW9uPgorCTxwYXJlbnQ+CisJCTxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5wYXJlbnQ8L2FydGlmYWN0SWQ+CisJCTxncm91cElkPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbDwvZ3JvdXBJZD4KKwkJPHZlcnNpb24+MS4yLjAtU05BUFNIT1Q8L3ZlcnNpb24+CisJPC9wYXJlbnQ+CisJPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0udWk8L2FydGlmYWN0SWQ+CisJPHBhY2thZ2luZz5lY2xpcHNlLXBsdWdpbjwvcGFja2FnaW5nPgorPC9wcm9qZWN0PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLnVpL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGlhZ3JhbS91aS9BY3RpdmF0b3IuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLnVpL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGlhZ3JhbS91aS9BY3RpdmF0b3IuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40MmZjNDRjCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0udWkvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kaWFncmFtL3VpL0FjdGl2YXRvci5qYXZhCkBAIC0wLDAgKzEsNjUgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIENFQSBMSVNULgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBEaG91aWIgKENFQSBMSVNUKSBzYWFkaWEuZGhvdWliQGNlYS5mciAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS51aTsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5QbHVnaW47CitpbXBvcnQgb3JnLm9zZ2kuZnJhbWV3b3JrLkJ1bmRsZUNvbnRleHQ7CisKKy8qKgorICogVGhlIGFjdGl2YXRvciBjbGFzcyBjb250cm9scyB0aGUgcGx1Zy1pbiBsaWZlIGN5Y2xlCisgKi8KK3B1YmxpYyBjbGFzcyBBY3RpdmF0b3IgZXh0ZW5kcyBQbHVnaW4geworCisJLy8gVGhlIHBsdWctaW4gSUQKKwlwdWJsaWMgc3RhdGljIGZpbmFsIFN0cmluZyBQTFVHSU5fSUQgPSAib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0udWkiOyAvLyROT04tTkxTLTEkCisKKwkvLyBUaGUgc2hhcmVkIGluc3RhbmNlCisJcHJpdmF0ZSBzdGF0aWMgQWN0aXZhdG9yIHBsdWdpbjsKKworCS8qKgorCSAqIFRoZSBjb25zdHJ1Y3RvcgorCSAqLworCXB1YmxpYyBBY3RpdmF0b3IoKSB7CisJfQorCisJLyoKKwkgKiAobm9uLUphdmFkb2MpCisJICoKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnVpLnBsdWdpbi5BYnN0cmFjdFVJUGx1Z2luI3N0YXJ0KG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0KQorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIHN0YXJ0KEJ1bmRsZUNvbnRleHQgY29udGV4dCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCXN1cGVyLnN0YXJ0KGNvbnRleHQpOworCQlwbHVnaW4gPSB0aGlzOworCX0KKworCS8qCisJICogKG5vbi1KYXZhZG9jKQorCSAqCisJICogQHNlZSBvcmcuZWNsaXBzZS51aS5wbHVnaW4uQWJzdHJhY3RVSVBsdWdpbiNzdG9wKG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0KQorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIHN0b3AoQnVuZGxlQ29udGV4dCBjb250ZXh0KSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJcGx1Z2luID0gbnVsbDsKKwkJc3VwZXIuc3RvcChjb250ZXh0KTsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBzaGFyZWQgaW5zdGFuY2UKKwkgKgorCSAqIEByZXR1cm4gdGhlIHNoYXJlZCBpbnN0YW5jZQorCSAqLworCXB1YmxpYyBzdGF0aWMgQWN0aXZhdG9yIGdldERlZmF1bHQoKSB7CisJCXJldHVybiBwbHVnaW47CisJfQorCit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS51aS9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RpYWdyYW0vdWkvTmV3Um9ib3RtbE1vZGVsV2l6YXJkLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS51aS9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RpYWdyYW0vdWkvTmV3Um9ib3RtbE1vZGVsV2l6YXJkLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmNhZTY1NAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLnVpL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZGlhZ3JhbS91aS9OZXdSb2JvdG1sTW9kZWxXaXphcmQuamF2YQpAQCAtMCwwICsxLDc4IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBDRUEgTElTVC4KKyAqCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBTYWFkaWEgRGhvdWliIChDRUEgTElTVCkgc2FhZGlhLmRob3VpYkBjZWEuZnIgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0udWk7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5qZmFjZS52aWV3ZXJzLklTdHJ1Y3R1cmVkU2VsZWN0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi5jb21tYW5kcy5DcmVhdGVSb2JvdG1sTW9kZWxDb21tYW5kOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMudW1sLmRpYWdyYW0ud2l6YXJkcy5DcmVhdGVNb2RlbFdpemFyZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5kaWFncmFtLndpemFyZHMucGFnZXMuU2VsZWN0RGlhZ3JhbUNhdGVnb3J5UGFnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51aS5JV29ya2JlbmNoOworCitwdWJsaWMgY2xhc3MgTmV3Um9ib3RtbE1vZGVsV2l6YXJkIGV4dGVuZHMgQ3JlYXRlTW9kZWxXaXphcmQgeworCisJLyoqCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLndpemFyZHMuQ3JlYXRlTW9kZWxXaXphcmQjaW5pdChvcmcuZWNsaXBzZS51aS5JV29ya2JlbmNoLCBvcmcuZWNsaXBzZS5qZmFjZS52aWV3ZXJzLklTdHJ1Y3R1cmVkU2VsZWN0aW9uKQorCSAqCisJICogQHBhcmFtIHdvcmtiZW5jaAorCSAqIEBwYXJhbSBzZWxlY3Rpb24KKwkgKi8KKworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGluaXQoSVdvcmtiZW5jaCB3b3JrYmVuY2gsIElTdHJ1Y3R1cmVkU2VsZWN0aW9uIHNlbGVjdGlvbikgeworCQlzdXBlci5pbml0KHdvcmtiZW5jaCwgc2VsZWN0aW9uKTsKKwkJc2V0V2luZG93VGl0bGUoIk5ldyBSb2JvdE1MIE1vZGVsIik7CisJfQorCisJLyoqCisJICogSW5zdGFudGlhdGVzIGEgbmV3IG5ldyBQcm90ZXVzIG1vZGVsIHdpemFyZC4KKwkgKi8KKwlwdWJsaWMgTmV3Um9ib3RtbE1vZGVsV2l6YXJkKCkgeworCQlzdXBlcigpOworCisJfQorCisKKworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgZ2V0TW9kZWxLaW5kTmFtZSgpIHsKKwkJLy8gVE9ETyBBdXRvLWdlbmVyYXRlZCBtZXRob2Qgc3R1YgorCisJCXJldHVybiAiUm9ib3RNTCBNb2RlbCI7CisJfQorCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIFN0cmluZ1tdIGdldERpYWdyYW1DYXRlZ29yeUlkcygpIHsKKwkJcmV0dXJuIG5ldyBTdHJpbmdbXSB7IENyZWF0ZVJvYm90bWxNb2RlbENvbW1hbmQuQ09NTUFORF9JRCB9OworCX0KKworCS8qKgorCSAqIHtAaW5oZXJpdERvY30KKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgU2VsZWN0RGlhZ3JhbUNhdGVnb3J5UGFnZSBjcmVhdGVTZWxlY3REaWFncmFtQ2F0ZWdvcnlQYWdlKCkgeworCQkvLyBoZXJlIFJvYm90TUwgaXMgdGhlIG9ubHkgYXZhaWxhYmxlIGNhdGVnb3J5CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIHtAaW5oZXJpdERvY30KKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgdm9pZCBzYXZlRGlhZ3JhbUNhdGVnb3J5U2V0dGluZ3MoKSB7CisJCS8vIGhlcmUgUm9ib3RNTCBpcyB0aGUgb25seSBhdmFpbGFibGUgY2F0ZWdvcnkKKwl9CisKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBpc1BhcHlydXNSb290V2l6YXJkKCkgeworCQlyZXR1cm4gZmFsc2U7CisJfQorfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0udWkvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kaWFncmFtL3VpL05ld1JvYm90bWxQcm9qZWN0V2l6YXJkLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS51aS9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RpYWdyYW0vdWkvTmV3Um9ib3RtbFByb2plY3RXaXphcmQuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xOWEwOGVkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0udWkvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9kaWFncmFtL3VpL05ld1JvYm90bWxQcm9qZWN0V2l6YXJkLmphdmEKQEAgLTAsMCArMSw3NyBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTMgQ0VBIExJU1QuCisgKgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgU2FhZGlhIERob3VpYiAoQ0VBIExJU1QpIHNhYWRpYS5kaG91aWJAY2VhLmZyIC0gSW5pdGlhbCBBUEkgYW5kIGltcGxlbWVudGF0aW9uCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLnVpOworCitpbXBvcnQgb3JnLmVjbGlwc2UuamZhY2Uudmlld2Vycy5JU3RydWN0dXJlZFNlbGVjdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24uY29tbWFuZHMuQ3JlYXRlUm9ib3RtbE1vZGVsQ29tbWFuZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5kaWFncmFtLndpemFyZHMuTmV3UGFweXJ1c1Byb2plY3RXaXphcmQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy51bWwuZGlhZ3JhbS53aXphcmRzLnBhZ2VzLlNlbGVjdERpYWdyYW1DYXRlZ29yeVBhZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UudWkuSVdvcmtiZW5jaDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51aS5kaWFsb2dzLldpemFyZE5ld1Byb2plY3RDcmVhdGlvblBhZ2U7CisKK3B1YmxpYyBjbGFzcyBOZXdSb2JvdG1sUHJvamVjdFdpemFyZCBleHRlbmRzIE5ld1BhcHlydXNQcm9qZWN0V2l6YXJkIHsKKworCS8qKgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy53aXphcmRzLk5ld1BhcHlydXNQcm9qZWN0V2l6YXJkI2luaXQob3JnLmVjbGlwc2UudWkuSVdvcmtiZW5jaCwgb3JnLmVjbGlwc2UuamZhY2Uudmlld2Vycy5JU3RydWN0dXJlZFNlbGVjdGlvbikKKwkgKgorCSAqIEBwYXJhbSB3b3JrYmVuY2gKKwkgKiBAcGFyYW0gc2VsZWN0aW9uCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgaW5pdChJV29ya2JlbmNoIHdvcmtiZW5jaCwgSVN0cnVjdHVyZWRTZWxlY3Rpb24gc2VsZWN0aW9uKSB7CisJCXN1cGVyLmluaXQod29ya2JlbmNoLCBzZWxlY3Rpb24pOworCQlzZXRXaW5kb3dUaXRsZSgiTmV3IFJvYm90TUwgUHJvamVjdCIpOworCX0KKworCS8qKgorCSAqIHtAaW5oZXJpdERvY30KKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgV2l6YXJkTmV3UHJvamVjdENyZWF0aW9uUGFnZSBjcmVhdGVOZXdQcm9qZWN0Q3JlYXRpb25QYWdlKCkgeworCQlXaXphcmROZXdQcm9qZWN0Q3JlYXRpb25QYWdlIG5ld1Byb2plY3RQYWdlID0gc3VwZXIuY3JlYXRlTmV3UHJvamVjdENyZWF0aW9uUGFnZSgpOworCQluZXdQcm9qZWN0UGFnZS5zZXRUaXRsZSgiUGFweXJ1cyBSb2JvdE1MIFByb2plY3QiKTsKKwkJbmV3UHJvamVjdFBhZ2Uuc2V0RGVzY3JpcHRpb24oIkNyZWF0ZSBhIE5ldyBQYXB5cnVzIFJvYm90TUwgUHJvamVjdCIpOworCQlyZXR1cm4gbmV3UHJvamVjdFBhZ2U7CisJfQorCisJLyoqCisJICoge0Bpbmhlcml0RG9jfQorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBTZWxlY3REaWFncmFtQ2F0ZWdvcnlQYWdlIGNyZWF0ZVNlbGVjdERpYWdyYW1DYXRlZ29yeVBhZ2UoKSB7CisJCS8vIGhlcmUgU3lzTUwgaXMgdGhlIG9ubHkgYXZhaWxhYmxlIGNhdGVnb3J5CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIHtAaW5oZXJpdERvY30KKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgdm9pZCBzYXZlRGlhZ3JhbUNhdGVnb3J5U2V0dGluZ3MoKSB7CisJCS8vIGRvIG5vdGhpbmcKKwkJLy8gaGVyZSBTeXNNTCBpcyB0aGUgb25seSBhdmFpbGFibGUgY2F0ZWdvcnkKKwl9CisKKwkvKioKKwkgKiB7QGluaGVyaXREb2N9CisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIFN0cmluZ1tdIGdldERpYWdyYW1DYXRlZ29yeUlkcygpIHsKKwkJcmV0dXJuIG5ldyBTdHJpbmdbXSB7IENyZWF0ZVJvYm90bWxNb2RlbENvbW1hbmQuQ09NTUFORF9JRCB9OworCX0KKworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGlzUGFweXJ1c1Jvb3RXaXphcmQoKSB7CisJCXJldHVybiBmYWxzZTsKKwl9CisKK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvLmNsYXNzcGF0aCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvLmNsYXNzcGF0aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NGM1ZTMxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy8uY2xhc3NwYXRoCkBAIC0wLDAgKzEsNyBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxjbGFzc3BhdGg+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KMlNFLTEuNSIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLnBkZS5jb3JlLnJlcXVpcmVkUGx1Z2lucyIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJzcmMiIHBhdGg9InNyYyIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJvdXRwdXQiIHBhdGg9ImJpbiIvPgorPC9jbGFzc3BhdGg+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jLy5wcm9qZWN0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy8ucHJvamVjdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iODM3NTJjCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy8ucHJvamVjdApAQCAtMCwwICsxLDI4IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHByb2plY3REZXNjcmlwdGlvbj4KKwk8bmFtZT5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jPC9uYW1lPgorCTxjb21tZW50PjwvY29tbWVudD4KKwk8cHJvamVjdHM+CisJPC9wcm9qZWN0cz4KKwk8YnVpbGRTcGVjPgorCQk8YnVpbGRDb21tYW5kPgorCQkJPG5hbWU+b3JnLmVjbGlwc2UuamR0LmNvcmUuamF2YWJ1aWxkZXI8L25hbWU+CisJCQk8YXJndW1lbnRzPgorCQkJPC9hcmd1bWVudHM+CisJCTwvYnVpbGRDb21tYW5kPgorCQk8YnVpbGRDb21tYW5kPgorCQkJPG5hbWU+b3JnLmVjbGlwc2UucGRlLk1hbmlmZXN0QnVpbGRlcjwvbmFtZT4KKwkJCTxhcmd1bWVudHM+CisJCQk8L2FyZ3VtZW50cz4KKwkJPC9idWlsZENvbW1hbmQ+CisJCTxidWlsZENvbW1hbmQ+CisJCQk8bmFtZT5vcmcuZWNsaXBzZS5wZGUuU2NoZW1hQnVpbGRlcjwvbmFtZT4KKwkJCTxhcmd1bWVudHM+CisJCQk8L2FyZ3VtZW50cz4KKwkJPC9idWlsZENvbW1hbmQ+CisJPC9idWlsZFNwZWM+CisJPG5hdHVyZXM+CisJCTxuYXR1cmU+b3JnLmVjbGlwc2UucGRlLlBsdWdpbk5hdHVyZTwvbmF0dXJlPgorCQk8bmF0dXJlPm9yZy5lY2xpcHNlLmpkdC5jb3JlLmphdmFuYXR1cmU8L25hdHVyZT4KKwk8L25hdHVyZXM+Cis8L3Byb2plY3REZXNjcmlwdGlvbj4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjIxYmQ2MQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCkBAIC0wLDAgKzEsOCBAQAorI01vbiBGZWIgMjAgMTY6NTE6MDYgQ0VUIDIwMTIKK2VjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLmlubGluZUpzckJ5dGVjb2RlPWVuYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MS41CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlPTEuNQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5hc3NlcnRJZGVudGlmaWVyPWVycm9yCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVudW1JZGVudGlmaWVyPWVycm9yCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5zb3VyY2U9MS41CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL01FVEEtSU5GL01BTklGRVNULk1GIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9NRVRBLUlORi9NQU5JRkVTVC5NRgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NjhjNWRhCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9NRVRBLUlORi9NQU5JRkVTVC5NRgpAQCAtMCwwICsxLDEyIEBACitNYW5pZmVzdC1WZXJzaW9uOiAxLjAKK1JlcXVpcmUtQnVuZGxlOiBvcmcuZWNsaXBzZS51aSwKKyBvcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWUKK0J1bmRsZS1WZW5kb3I6ICVCdW5kbGUtVmVuZG9yCitCdW5kbGUtQWN0aXZhdGlvblBvbGljeTogbGF6eQorQnVuZGxlLVZlcnNpb246IDEuMi4wLnF1YWxpZmllcgorQnVuZGxlLUxvY2FsaXphdGlvbjogcGx1Z2luCitCdW5kbGUtTmFtZTogJUJ1bmRsZS1OYW1lCitCdW5kbGUtQWN0aXZhdG9yOiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jLkFjdGl2YXRvcgorQnVuZGxlLU1hbmlmZXN0VmVyc2lvbjogMgorQnVuZGxlLVN5bWJvbGljTmFtZTogb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYztzaW5nbGV0b246PXRydWUKK0J1bmRsZS1SZXF1aXJlZEV4ZWN1dGlvbkVudmlyb25tZW50OiBKMlNFLTEuNQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9hYm91dC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9hYm91dC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQzNWQ1YWUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2Fib3V0Lmh0bWwKQEAgLTAsMCArMSwyOCBAQAorPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgU3RyaWN0Ly9FTiIKKyAgICAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtc3RyaWN0LmR0ZCI+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Cis8aGVhZD4KKzxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEiLz4KKzx0aXRsZT5BYm91dDwvdGl0bGU+Cis8L2hlYWQ+Cis8Ym9keSBsYW5nPSJFTi1VUyI+Cis8aDI+QWJvdXQgVGhpcyBDb250ZW50PC9oMj4KKyAKKzxwPkp1bmUgNSwgMjAwNzwvcD4JCis8aDM+TGljZW5zZTwvaDM+CisKKzxwPlRoZSBFY2xpcHNlIEZvdW5kYXRpb24gbWFrZXMgYXZhaWxhYmxlIGFsbCBjb250ZW50IGluIHRoaXMgcGx1Zy1pbiAoJnF1b3Q7Q29udGVudCZxdW90OykuICBVbmxlc3Mgb3RoZXJ3aXNlIAoraW5kaWNhdGVkIGJlbG93LCB0aGUgQ29udGVudCBpcyBwcm92aWRlZCB0byB5b3UgdW5kZXIgdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIG9mIHRoZQorRWNsaXBzZSBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDEuMCAoJnF1b3Q7RVBMJnF1b3Q7KS4gIEEgY29weSBvZiB0aGUgRVBMIGlzIGF2YWlsYWJsZSAKK2F0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sIj5odHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbDwvYT4uCitGb3IgcHVycG9zZXMgb2YgdGhlIEVQTCwgJnF1b3Q7UHJvZ3JhbSZxdW90OyB3aWxsIG1lYW4gdGhlIENvbnRlbnQuPC9wPgorCis8cD5JZiB5b3UgZGlkIG5vdCByZWNlaXZlIHRoaXMgQ29udGVudCBkaXJlY3RseSBmcm9tIHRoZSBFY2xpcHNlIEZvdW5kYXRpb24sIHRoZSBDb250ZW50IGlzIAorYmVpbmcgcmVkaXN0cmlidXRlZCBieSBhbm90aGVyIHBhcnR5ICgmcXVvdDtSZWRpc3RyaWJ1dG9yJnF1b3Q7KSBhbmQgZGlmZmVyZW50IHRlcm1zIGFuZCBjb25kaXRpb25zIG1heQorYXBwbHkgdG8geW91ciB1c2Ugb2YgYW55IG9iamVjdCBjb2RlIGluIHRoZSBDb250ZW50LiAgQ2hlY2sgdGhlIFJlZGlzdHJpYnV0b3IncyBsaWNlbnNlIHRoYXQgd2FzIAorcHJvdmlkZWQgd2l0aCB0aGUgQ29udGVudC4gIElmIG5vIHN1Y2ggbGljZW5zZSBleGlzdHMsIGNvbnRhY3QgdGhlIFJlZGlzdHJpYnV0b3IuICBVbmxlc3Mgb3RoZXJ3aXNlCitpbmRpY2F0ZWQgYmVsb3csIHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB0aGUgRVBMIHN0aWxsIGFwcGx5IHRvIGFueSBzb3VyY2UgY29kZSBpbiB0aGUgQ29udGVudAorYW5kIHN1Y2ggc291cmNlIGNvZGUgbWF5IGJlIG9idGFpbmVkIGF0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvIj5odHRwOi8vd3d3LmVjbGlwc2Uub3JnPC9hPi48L3A+CisKKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvYnVpbGQucHJvcGVydGllcyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvYnVpbGQucHJvcGVydGllcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xODQzNTU2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9idWlsZC5wcm9wZXJ0aWVzCkBAIC0wLDAgKzEsOSBAQAorc291cmNlLi4gPSBzcmMvCitvdXRwdXQuLiA9IGJpbi8KK2Jpbi5pbmNsdWRlcyA9IE1FVEEtSU5GLyxcCisgICAgICAgICAgICAgICAuLFwKKyAgICAgICAgICAgICAgIHBsdWdpbi54bWwsXAorICAgICAgICAgICAgICAgcGx1Z2luLnByb3BlcnRpZXMsXAorICAgICAgICAgICAgICAgY2hlYXRzaGVldHMvLFwKKyAgICAgICAgICAgICAgIGFib3V0Lmh0bWwKK3NyYy5pbmNsdWRlcyA9IGFib3V0Lmh0bWwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvQXJjaGl0ZWN0dXJlRGVmaW50aW9uLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvQXJjaGl0ZWN0dXJlRGVmaW50aW9uLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lNTRiNDVmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9BcmNoaXRlY3R1cmVEZWZpbnRpb24ueG1sCkBAIC0wLDAgKzEsMjcgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Y2hlYXRzaGVldAorICAgICAgdGl0bGU9IkFyY2hpdGVjdHVyZSBkZWZpbml0aW9uIj4KKyAgIDxpbnRybz4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgIEluIHRoaXMgc3RlcCwgeW91IHdpbGwgZGVmaW5lIHRoZSBhcmNoaXRlY3R1cmUgb2YgdGhlIHJvYm90KHMpLiBUaGUgYXJjaGl0ZWN0dXJlIG9mIHRoZSByb2JvdHMgY29uc2lzdHMgaW4gY29tcG9zaW5nIHRoZSByb2JvdCBnbG9iYWwgc3lzdGVtIGJ5IGEgc2V0IG9mIHN1YiBzeXN0ZW1zIGFuZCBjb25uZWN0aW5nIHRoZW0uCisgICAgICA8L2Rlc2NyaXB0aW9uPgorICAgPC9pbnRybz4KKyAgCisgICAgPGl0ZW0gICAgICB0aXRsZT0iRGVmaW5lIHNwZWNpZmljIHJvYm90aWMgc3lzdGVtcyI+CisgICAgICA8ZGVzY3JpcHRpb24+CisgICAgICAgICAgVG8gZGVmaW5lIHNwZWNpZmljIHJvYm90aWMgYXJjaGl0ZWN0dXJlLCB1c2UgdGhlIGFyY2hpdGVjdHVyZSBkZWZpbml0aW9uIGRpYWdyYW0uIAorICAgICAgPC9kZXNjcmlwdGlvbj4KKyAgICAgIDxzdWJpdGVtCisgICAgICAgICAgICBsYWJlbD0iR28gdG8gdGhlIG1vZGVsIGV4cGxvcmVyIHZpZXciPgorICAgICAgICAgICAgPGNvbW1hbmQKKyAgICAgICAgICAgIHJlcXVpcmVkPSJmYWxzZSIKKyAgICAgICAgICAgIHNlcmlhbGl6YXRpb249Im9yZy5lY2xpcHNlLnVpLnZpZXdzLnNob3dWaWV3KG9yZy5lY2xpcHNlLnVpLnZpZXdzLnNob3dWaWV3LnZpZXdJZD1vcmcuZWNsaXBzZS5wYXB5cnVzLm1vZGVsZXhwbG9yZXIubW9kZWxleHBsb3JlcikiLz4KKyAgICAgIDwvc3ViaXRlbT4KKyAgICAgIDxzdWJpdGVtCisgICAgICAgICAgICBsYWJlbD0icmlnaHQgY2xpY2sgb24gdGhlIG1vZGVsLCBhbmQgY2hvb3NlIGNyZWF0ZSBuZXcgZGlhZ3JhbS4gVGhlbiBjaG9vc2UgYXJjaGl0ZWN0dXJlIGRlZmluaXRpb24gZGlhZ3JhbS4iPgorICAgICAgPC9zdWJpdGVtPgorICAgICAgPHN1Yml0ZW0KKyAgICAgICAgICAgIGxhYmVsPSJDcmVhdGUgeW91ciBzcGVjaWZpYyByb2JvdGljIGFyY2hpdGVjdHVyZS4gRHJvcCB0aGUgcm9ib3Qgc3lzdGVtIChpZiBpdCB3YXMgYWxyZWFkeSBjcmVhdGVkIGluIHRoZSBzdGVwcyBiZWZvcmUpIHRvIHRoZSBhcmNoaXRlY3R1cmUgZGlhZ3JhbSwgdGhlbiBkcm9wIHRoZSBzdWIgc3lzdGVtcyBvZiB0aGUgcm9ib3QgaW5zaWRlIHRoZSBpdC4gQ29ubmVjdCB0aGUgZGF0YSBmbG93IHBvcnRzIGFuZCBzZXJ2aWNlIHBvcnRzIG9mIHRoZSBzdWIgc3lzdGVtcy4gWW91IGNhbiBkZWZpbmUgdGhlIGludGVybmFsIGFyY2hpdGVjdHVyZSBvZiB0aGUgc3ViIHN5c3RlbXMgYXMgd2VsbC4iPgorICAgICAgPC9zdWJpdGVtPgorICAgPC9pdGVtPgorPC9jaGVhdHNoZWV0PgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9Db21waWxlU2ltdWxhdG9yLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvQ29tcGlsZVNpbXVsYXRvci54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWVlNzVhYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvQ29tcGlsZVNpbXVsYXRvci54bWwKQEAgLTAsMCArMSwyOCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxjaGVhdHNoZWV0CisgICAgICB0aXRsZT0iQ29tcGlsZSBzaW11bGF0b3IiPgorICAgPGludHJvPgorICAgPGRlc2NyaXB0aW9uPgorICAgICAgRHVyaW5nIHRoaXMgc3RlcCB0aGUgdXNlciBjcmVhdGVzIGFuIGFwcGxpY2F0aW9uIGFibGUgdG8gcnVuIG9uIHRoZSBzcGVjaWZpYyBjb25jZXJuZWQgcHJvY2Vzc29yIC8gT1MuIEluIG9yZGVyIHRvIGJlIGEgY29tcGxldGUgc2ltdWxhdG9yLCBhIGNvbmZpZ3VyYXRpb24gc3RlcCBjYW4gYmUgbmVlZGVkLgorICAgPC9kZXNjcmlwdGlvbj4KKyAgIDwvaW50cm8+CisgICA8aXRlbQorICAgICAgICAgdGl0bGU9IkNvbmZpZ3VyZSBjb21waWxhdGlvbiI+CisgICAgICA8ZGVzY3JpcHRpb24+CisgICAgICAgICBFZGl0IG1ha2VmaWxlcywgZXRjLgorICAgICAgPC9kZXNjcmlwdGlvbj4KKyAgIDwvaXRlbT4KKyAgICAgIAorICAgPGl0ZW0KKyAgICAgICAgIHRpdGxlPSJMYXVuY2ggY29tcGlsYXRpb24iPgorICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgICAgPGI+Qm9keTwvYj4KKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICA8L2l0ZW0+CisgICA8aXRlbQorICAgICAgICAgdGl0bGU9Ik5vIGNvbXBpbGF0aW9uICI+CisgICAgICA8ZGVzY3JpcHRpb24+CisgICAgICAgICBUaGVyZSBhcmUgaW50ZXJwcmV0ZWQgcGxhdGZvcm1zIHRoYXQgZG8gbm90IGFzayBmb3Igc3BlY2lmaWMgdHJhbnNmb3JtYXRpb24gb2YgdGhlIGNvZGUgZ2VuZXJhdGVkIGR1cmluZyB0aGUgcHJldmlvdXMgcGhhc2UuIElmIGl0IGlzIHRoZSBjYXNlIHRoZSB1c2VyIGFjdGl2YXRlcyB0aGlzIGNhc2UgYW5kIHByb2NlZWQgdG8gdGhlIGZvbGxvd2luZyBwaGFzZS4KKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICA8L2l0ZW0+Cis8L2NoZWF0c2hlZXQ+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL0NvbmZpZ3VyZVNpbXVsYXRvci54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL0NvbmZpZ3VyZVNpbXVsYXRvci54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjE1Yzg4MwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvQ29uZmlndXJlU2ltdWxhdG9yLnhtbApAQCAtMCwwICsxLDE1IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPGNoZWF0c2hlZXQKKyAgICAgIHRpdGxlPSJDb25maWd1cmUgc2ltdWxhdG9yIj4KKyAgIDxpbnRybz4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgRHVyaW5nIHRoaXMgc3RlcCB0aGUgdXNlciBoYXMgdG8gY29tcGxldGUgZXZlcnkgb2YgdGhlIGluZm9ybWF0aW9uIG5lZWRlZCB0byBiZSBhYmxlIHRvIGNyZWF0ZSByZXN1bHRzIGFuZCB1c2UgbWV0cmljcy4KKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICA8L2ludHJvPgorICAgPGl0ZW0KKyAgICAgICAgIHRpdGxlPSJJdGVtIj4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgIDxiPkJvZHk8L2I+CisgICAgICA8L2Rlc2NyaXB0aW9uPgorICAgPC9pdGVtPgorPC9jaGVhdHNoZWV0PgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9DcmVhdGUtTG9hZC1MaWJyYXJ5LnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvQ3JlYXRlLUxvYWQtTGlicmFyeS54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTlhMDY1ZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvQ3JlYXRlLUxvYWQtTGlicmFyeS54bWwKQEAgLTAsMCArMSwzMCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxjaGVhdHNoZWV0CisgICAgICB0aXRsZT0iQ3JlYXRlIC8gTG9hZCBleHRlcm5hbCBMaWJyYXJpZXMiPgorICAgPGludHJvPgorICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgICAgPGI+Qm9keTwvYj4KKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICA8L2ludHJvPgorICAgPGl0ZW0KKyAgICAgICAgIHRpdGxlPSJDcmVhdGUiPgorICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgICAgPGI+Qm9keTwvYj4KKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICA8L2l0ZW0+CisgICA8aXRlbQorICAgICAgICAgdGl0bGU9IkxvYWQiPgorICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgICAgPGI+Qm9keTwvYj4KKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICA8L2l0ZW0+CisgICA8aXRlbQorICAgICAgICAgdGl0bGU9IlNhdmUgLyBVcGxvYWQiPgorICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgICAgPGI+Qm9keTwvYj4KKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICAgICA8Y29tbWFuZAorICAgICAgICAgICAgcmVxdWlyZWQ9ImZhbHNlIgorICAgICAgICAgICAgc2VyaWFsaXphdGlvbj0ib3JnLmVjbGlwc2UudWkuY2hlYXRzaGVldHMub3BlbkNoZWF0U2hlZXQiLz4KKyAgIDwvaXRlbT4KKzwvY2hlYXRzaGVldD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvRGF0YVR5cGVzRGVmaW5pdGlvbi54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL0RhdGFUeXBlc0RlZmluaXRpb24ueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc1NWE1YzUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL0RhdGFUeXBlc0RlZmluaXRpb24ueG1sCkBAIC0wLDAgKzEsNTUgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Y2hlYXRzaGVldAorICAgICAgdGl0bGU9IkRhdGEgdHlwZXMgZGVmaW5pdGlvbiI+CisgICA8aW50cm8+CisgICAgICA8ZGVzY3JpcHRpb24+CisgICAgICAgICBUaGUgZmlyc3Qgc3RlcCBvZiBkZWZpbmluZyB0aGUgbW9kZWwgY29uc2lzdHMgaW4gaW1wb3J0aW5nIGFuIGV4aXN0aW5nIGxpYnJhcnkgb2YgZGF0YXR5cGVzIG9yIGRlZmluaW5nIHlvdXIgb3duIHNldCBvZiBzcGVjaWZpYyBkYXRhIHR5cGVzLiBEYXRhIHR5cGVzIGFyZSB1c2VkIHRvIGdpdmUgYSB0eXBlIHRvIGRhdGEgZmxvdyBwb3J0cyBvZiByb2JvdGljIHN5c3RlbXMuCisgICAgICA8L2Rlc2NyaXB0aW9uPgorICAgPC9pbnRybz4KKyAgIDxpdGVtCisgICAgICAgICB0aXRsZT0iRGVmaW5lIFNwZWNpZmljIERhdGEgVHlwZXMiPgorICAgICAKKyAgICAgICA8ZGVzY3JpcHRpb24+CisgICAgICAgICBZb3UgY2FuIGRlZmluZSB5b3VyIG93biBkYXRhIHR5cGVzIHVzaW5nIGRhdGEgdHlwZXMgZGVmaW5pdGlvbiBkaWFncmFtcy4KKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICAgICAgPHN1Yml0ZW0KKyAgICAgICAgICAgIGxhYmVsPSJHbyB0byB0aGUgbW9kZWwgZXhwbG9yZXIgdmlldyI+CisgICAgICAgICAgICA8Y29tbWFuZAorICAgICAgICAgICAgcmVxdWlyZWQ9ImZhbHNlIgorICAgICAgICAgICAgc2VyaWFsaXphdGlvbj0ib3JnLmVjbGlwc2UudWkudmlld3Muc2hvd1ZpZXcob3JnLmVjbGlwc2UudWkudmlld3Muc2hvd1ZpZXcudmlld0lkPW9yZy5lY2xpcHNlLnBhcHlydXMubW9kZWxleHBsb3Jlci5tb2RlbGV4cGxvcmVyKSIvPgorICAgICAgPC9zdWJpdGVtPgorICAgICAgPHN1Yml0ZW0KKyAgICAgICAgICAgIGxhYmVsPSJyaWdodCBjbGljayBvbiB0aGUgbW9kZWwsIGFuZCBjaG9vc2UgY3JlYXRlIG5ldyBkaWFncmFtLiBUaGVuIGNob29zZSBSb2JvdE1MIERhdGEgdHlwZXMgZGVmaW5pdGlvbiBkaWFncmFtLiI+CisgICAgICA8L3N1Yml0ZW0+CisgICAgICA8c3ViaXRlbQorICAgICAgICAgICAgbGFiZWw9IkNyZWF0ZSB5b3VyIHNwZWNpZmljIGRhdGEgdHlwZXMuIj4KKyAgICAgIDwvc3ViaXRlbT4KKyAgIDwvaXRlbT4KKyAgCisgICAgPGl0ZW0KKyAgICAgICAgIHNraXA9InRydWUiCisgICAgICAgICB0aXRsZT0iSW1wb3J0IGEgZGF0YSB0eXBlIGxpYnJhcnkiPgorICAgICAgCisgICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgWW91IGNhbiBpbXBvcnQgYSByZWdpc3RlcmVkIGRhdGEgdHlwZXMgbGlicmFyeS4gICAgIAorICAgICAgPC9kZXNjcmlwdGlvbj4KKyAgICAgICA8c3ViaXRlbQorICAgICAgICAgICAgbGFiZWw9Ik9wZW4gdGhlIHBhcHlydXMgbW9kZWwgZXhwbG9yZXIgdmlldyI+CisgICAgICAgICAgICA8Y29tbWFuZAorICAgICAgICAgICAgcmVxdWlyZWQ9ImZhbHNlIgorICAgICAgICAgICAgc2VyaWFsaXphdGlvbj0ib3JnLmVjbGlwc2UudWkudmlld3Muc2hvd1ZpZXcob3JnLmVjbGlwc2UudWkudmlld3Muc2hvd1ZpZXcudmlld0lkPW9yZy5lY2xpcHNlLnBhcHlydXMubW9kZWxleHBsb3Jlci5tb2RlbGV4cGxvcmVyKSIvPgorICAgICAgPC9zdWJpdGVtPgorICAgICAgIDxzdWJpdGVtCisgICAgICAgICAgICBsYWJlbD0iUmlnaHQgY2xpY2sgb24gdGhlIG1vZGVsIG9yIGEgcGFydCBvZiB0aGUgbW9kZWwiPgorICAgICAgICAgIDxjb21tYW5kCisgICAgICAgICAgICAgICAgcmVxdWlyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICAgIHNlcmlhbGl6YXRpb249Im9yZy5lY2xpcHNlLnVpLmJyb3dzZXIub3BlbkJyb3dzZXIodXJsPWh0dHA6Ly93d3cuZ29vZ2xlLmNvbSkiLz4KKyAgICAgIDwvc3ViaXRlbT4KKyAgICAgICA8c3ViaXRlbQorICAgICAgICAgICAgbGFiZWw9IkNob29zZSBpbXBvcnQgcGFja2FnZSBmcm9tIHJlZ2lzdGVyZWQgbGlicmFyeSI+CisgICAgICA8L3N1Yml0ZW0+CisgICAgICA8c3ViaXRlbQorICAgICAgICAgICAgbGFiZWw9IkNob29zZSB0aGUgZGF0YSB0eXBlcyBsaWJyYXJ5IHRoYXQgeW91IHdhbnQgdG8gaW1wb3J0Ij4KKyAgICAgIDwvc3ViaXRlbT4KKyAgIDwvaXRlbT4+Cis8L2NoZWF0c2hlZXQ+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL0RlZmluZUFzc2Vzc21lbnRDcml0ZXJpYS54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL0RlZmluZUFzc2Vzc21lbnRDcml0ZXJpYS54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjM4NmQxZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvRGVmaW5lQXNzZXNzbWVudENyaXRlcmlhLnhtbApAQCAtMCwwICsxLDE1IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPGNoZWF0c2hlZXQKKyAgICAgIHRpdGxlPSJEZWZpbmUgQXNzZXNzbWVudCBDcml0ZXJpYSI+CisgICA8aW50cm8+CisgICAgICA8ZGVzY3JpcHRpb24+CisgICAgICAgICA8Yj5JbiBvcmRlciB0byBjcmVhdGUgYXNzZXNzbWVudCBjcml0ZXJpYSwgdGhlcmUgYXJlIHNvbWUgdGhpbmdzIHRvIGUgZG9uZTo8L2I+CisgICAgICA8L2Rlc2NyaXB0aW9uPgorICAgPC9pbnRybz4KKyAgIDxpdGVtCisgICAgICAgICB0aXRsZT0iSXRlbSI+CisgICAgICA8ZGVzY3JpcHRpb24+CisgICAgICAgICA8Yj5Cb2R5PC9iPgorICAgICAgPC9kZXNjcmlwdGlvbj4KKyAgIDwvaXRlbT4KKzwvY2hlYXRzaGVldD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvRGVwbG95T25NaWRkbGV3YXJlLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvRGVwbG95T25NaWRkbGV3YXJlLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jNTA1MDVkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9EZXBsb3lPbk1pZGRsZXdhcmUueG1sCkBAIC0wLDAgKzEsMjEgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Y2hlYXRzaGVldAorICAgICAgdGl0bGU9IkRlcGxveSBvbiByb2JvdGljIG1pZGRsZXdhcmVzIj4KKyAgIDxpbnRybz4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgIDxiPkJvZHk8L2I+CisgICAgICA8L2Rlc2NyaXB0aW9uPgorICAgPC9pbnRybz4KKyAgIDxpdGVtCisgICAgICAgICB0aXRsZT0iQ2hvb3NlIHJvYm90aWMgbWlkZGxld2FyZXMiPgorICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgICAgPGI+Qm9keTwvYj4KKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICA8L2l0ZW0+CisgICA8aXRlbQorICAgICAgICAgdGl0bGU9IkRlcGxveSBvbiByb2JvdGljIG1pZGRsZXdhcmVzIj4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgIDxiPkJvZHk8L2I+CisgICAgICA8L2Rlc2NyaXB0aW9uPgorICAgPC9pdGVtPgorPC9jaGVhdHNoZWV0PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvRGVwbG95T25TaW11bGF0b3IueG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9EZXBsb3lPblNpbXVsYXRvci54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjhlNTQyZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvRGVwbG95T25TaW11bGF0b3IueG1sCkBAIC0wLDAgKzEsMjEgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Y2hlYXRzaGVldAorICAgICAgdGl0bGU9IkRlcGxveSBvbiBlbnZpcm9ubWVudCBzaW11bGF0b3IiPgorICAgPGludHJvPgorICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgICAgPGI+Qm9keTwvYj4KKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICA8L2ludHJvPgorICAgPGl0ZW0KKyAgICAgICAgIHRpdGxlPSJDaG9vc2UgZW52aXJvbm1lbnQgc2ltdWxhdG9ycyI+CisgICAgICA8ZGVzY3JpcHRpb24+CisgICAgICAgICA8Yj5Cb2R5PC9iPgorICAgICAgPC9kZXNjcmlwdGlvbj4KKyAgIDwvaXRlbT4KKyAgIDxpdGVtCisgICAgICAgICB0aXRsZT0iRGVwbG95IG9uIGVudmlyb25tZW50IHNpbXVsYXRvcnMiPgorICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgICAgPGI+Qm9keTwvYj4KKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICA8L2l0ZW0+Cis8L2NoZWF0c2hlZXQ+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9EZXBsb3ltZW50Tm9WYWxpZGF0aW9uLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvRGVwbG95bWVudE5vVmFsaWRhdGlvbi54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDA5YzkwNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvRGVwbG95bWVudE5vVmFsaWRhdGlvbi54bWwKQEAgLTAsMCArMSwxNSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxjaGVhdHNoZWV0CisgICAgICB0aXRsZT0iTm8gVmFsaWRhdGlvbiI+CisgICA8aW50cm8+CisgICAgICA8ZGVzY3JpcHRpb24+CisgICAgICAgICBUaGUgdXNlciBjYW4gdmFsaWRhdGUgbGF0ZXIgdGhlIGRlcGxveW1lbnQgbW9kZWwuCisgICAgICA8L2Rlc2NyaXB0aW9uPgorICAgPC9pbnRybz4KKyAgIDxpdGVtCisgICAgICAgICB0aXRsZT0iTm8gdmFsaWRhdGlvbiI+CisgICAgICA8ZGVzY3JpcHRpb24+CisgICAgICAgICBJbiBvcmRlciB0byBzYXZlIGl0cyB1bmZpbmlzaGVkIHdvcmssIHRoZSB1c2VyIGNhbiBjaGVjayBvdXQgdGhlIOKAnG5vIHZhbGlkYXRpb27igJ0gY2FzZSBhbmQgIHByb2NlZWQgdG8gdGhlIGZvbGxvd2luZyBzdGVwLgorICAgICAgPC9kZXNjcmlwdGlvbj4KKyAgIDwvaXRlbT4KKzwvY2hlYXRzaGVldD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvRGVwbG95bWVudFNhdmUueG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9EZXBsb3ltZW50U2F2ZS54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTk0OGU5OQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvRGVwbG95bWVudFNhdmUueG1sCkBAIC0wLDAgKzEsMjkgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Y2hlYXRzaGVldAorICAgICAgdGl0bGU9IlNhdmUgdGhlIHByb2JsZW0iPgorICAgPGludHJvPgorICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgICAgSGVyZSB0aGUgdXNlciB3aWxsIHNhdmUgdGhlIHByb2JsZW0gZGVwbG95bWVudCBtb2RlbCB0byBhIGxvY2FsIGZvbGRlcgorICAgPC9pbnRybz4KKyAgIDxpdGVtCisgICAgICAgICB0aXRsZT0iSXRlbSI+CisgICAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgIDxiPkJvZHk8L2I+CisgICAgICA8L2Rlc2NyaXB0aW9uPiAgCisgICAgICAgIDxzdWJpdGVtCisgICAgICAgICAgICBsYWJlbD0iU2F2ZSB0aGUgZGVwbG95bWVudCBtb2RlbCB0byB0aGUgbG9jYWwgcGFweXJ1cyBwcm9qZWN0IGZvbGRlci4iPgorICAgICAgICAgPGNvbW1hbmQKKyAgICAgICAgICAgICAgIHJlcXVpcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgIHNlcmlhbGl6YXRpb249Im9yZy5lY2xpcHNlLnVpLmZpbGUuc2F2ZSIvPgorICAgICAgPC9zdWJpdGVtPgorICAgICAgPHN1Yml0ZW0KKyAgICAgICAgICAgIGxhYmVsPSJDaG9vc2UgdGhlIGZvbGRlciB3aGVyZSB0byBzYXZlIHRoZSBkZXBsb3ltZW50IG1vZGVsLiI+CisgICAgICAgICA8Y29tbWFuZAorICAgICAgICAgICAgICAgcmVxdWlyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICAgc2VyaWFsaXphdGlvbj0ib3JnLmVjbGlwc2UudWkuZmlsZS5zYXZlQXMiLz4KKyAgICAgIDwvc3ViaXRlbT4KKyAgICAKKyAgICAgIAorICAgICAKKyAgIDwvaXRlbT4KKzwvY2hlYXRzaGVldD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvRGVwbG95bWVudFN0cnVjdHVyYWxWYWxpZGF0aW9uLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvRGVwbG95bWVudFN0cnVjdHVyYWxWYWxpZGF0aW9uLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44NjFmMjk0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9EZXBsb3ltZW50U3RydWN0dXJhbFZhbGlkYXRpb24ueG1sCkBAIC0wLDAgKzEsMzMgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Y2hlYXRzaGVldAorICAgICAgdGl0bGU9Ik1vZGVsIFZhbGlkYXRpb24iPgorPGludHJvPgorCTxkZXNjcmlwdGlvbj4KKwkJVGhlIHVzZXIgY2FuIHZhbGlkYXRlIHRoZSBkZXBsb3ltZW50IG1vZGVsIHRoZSBzYW1lIHdheSBoZSBoYXMgdmFsaWRhdGVkIHRoZSBwcm9ibGVtIG1vZGVsLgorCTwvZGVzY3JpcHRpb24+Cis8L2ludHJvPgorPGl0ZW0gdGl0bGU9IlZlcmlmeSB2YWxpZGF0aW9uIHNldHRpbmdzIiBza2lwPSJ0cnVlIj4KKwk8ZGVzY3JpcHRpb24+CisJCVZlcmlmeSB0aGUgdmFsaWRhdGlvbiBzZXR0aW5ncywgaS5lLiB0aGUgY3VycmVudGx5IGFjdGl2ZSB2YWxpZGF0aW9uIHJ1bGVzIChjb25zdHJhaW50cykuCisJCU9wZW4gdGhlIGVudHJ5ICJNb2RlbCBWYWxpZGF0aW9uIiB3aXRoaW4gV2luZG93L1ByZWZlcmVuY2VzIGFuZCB2ZXJpZnkgdGhlIGFjdGl2ZSBjb25zdHJhaW50cy4KKwkJUm9ib3RNTCByZWxhdGVkIGNvbnN0cmFpbnRzIGFyZSBncm91cGVkLgorCTwvZGVzY3JpcHRpb24+Cis8L2l0ZW0+Cis8aXRlbSB0aXRsZT0iVmFsaWRhdGUgeW91ciBNb2RlbCIgc2tpcD0idHJ1ZSI+CisJPGRlc2NyaXB0aW9uPgorICAgIAlWYWxpZGF0ZSB5b3VyIG1vZGVsLiBDbGljayByaWdodCBvbiBhbiBlbGVtZW50IHdpdGhpbiB0aGUgbW9kZWwgZXhwbG9yZXIuIENob29zZQorICAgIAl0aGUgb3B0aW9uICJWYWxpZGF0ZSBtb2RlbCIuIEVycm9uZW91cyBlbGVtZW50cyB3aWxsIGFwcGVhciBpbiB0aGUgUHJvYmxlbSB2aWV3LAorICAgIAl3aWxsIGJlIG1hcmtlZCBpbiB0aGUgbW9kZWwgZXhwbG9yZXIgYW5kIGluIHRoZSBkaWFncmFtcy4gQ2F2ZWF0OiB0aGUgbW9kZWwgZXhwbG9yZXIKKyAgICAJY3JlYXRlcyBhIHZpc3VhbCBtYXJrZXIgZm9yIHByb2JsZW1zIGZvdW5kIHdpdGhpbiBhIGNoaWxkIHdoZXJlYXMgdGhpcyBpcyBub3QgdGhlIGNhc2UgZm9yCisgICAgCWRpYWdyYW1zLgorCTwvZGVzY3JpcHRpb24+Cis8L2l0ZW0+Cis8aXRlbSB0aXRsZT0iT3BlbiB0aGUgJnF1b3Q7UHJvYmxlbXMmcXVvdDsgdmlldyIgc2tpcD0idHJ1ZSI+CisJPGRlc2NyaXB0aW9uPgorCQlXaW5kb3cgPiBTaG93IFZpZXcgPiBQcm9ibGVtcworCTwvZGVzY3JpcHRpb24+CisgCTxjb21tYW5kCisgICAgICAgcmVxdWlyZWQ9ImZhbHNlIgorICAgICAgIHNlcmlhbGl6YXRpb249Im9yZy5lY2xpcHNlLnVpLnZpZXdzLnNob3dWaWV3KG9yZy5lY2xpcHNlLnVpLnZpZXdzLnNob3dWaWV3LnZpZXdJZD1vcmcuZWNsaXBzZS51aS52aWV3cy5Qcm9ibGVtVmlldykiLz4KKzwvaXRlbT4KKzwvY2hlYXRzaGVldD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvRGVwbG95bWVudFVwbG9hZC54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL0RlcGxveW1lbnRVcGxvYWQueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY2ODQ5N2UKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL0RlcGxveW1lbnRVcGxvYWQueG1sCkBAIC0wLDAgKzEsMTUgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Y2hlYXRzaGVldAorICAgICAgdGl0bGU9IlVwbG9hZCB0aGUgcHJvYmxlbSI+CisgICA8aW50cm8+CisgICAgICA8ZGVzY3JpcHRpb24+CisgICAgICAgVGhlIHVzZXIgY291bGQgdXBsb2FkIHRoZSBkZXBsb3ltZW50IG1vZGVsIHRvIHRoZSByZW1vdGUgc2VydmVyLgorICAgICAgPC9kZXNjcmlwdGlvbj4KKyAgIDwvaW50cm8+CisgICA8aXRlbQorICAgICAgICAgdGl0bGU9IlVwbG9hZCB0byByZW1vdGUgc2VydmVyIj4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgQ2hvb3NlIHRoZSByZW1vdGUgbG9jYXRpb24gd2hlcmUgdGhlIGRlcGxveW1lbnQgbW9kZWwgd2lsbCBiZSB1cGxvYWRlZC4KKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICA8L2l0ZW0+Cis8L2NoZWF0c2hlZXQ+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL0VkaXRBTEZCZWhhdmlvci54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL0VkaXRBTEZCZWhhdmlvci54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGJmNjJlOAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvRWRpdEFMRkJlaGF2aW9yLnhtbApAQCAtMCwwICsxLDQwIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPGNoZWF0c2hlZXQKKyAgICAgIHRpdGxlPSJFZGl0IGFsZ29yaXRobWljIHBhcnRzIHdpdGggQWxmIj4KKyAgIDxpbnRybz4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgIEFsZ29yaXRobWljIHBhcnRzIG9mIGEgc3lzdGVtIG1vZGVsIGNhbiBiZSBlZGl0ZWQgdXNpbmcgdGhlIEFsZiB0ZXh0dWFsIHN5bnRheC4gVGhpcyBjYW4gYmUgZG9uZSBieSBhc3NvY2lhdGluZyBBbGYgYm9kaWVzIHdpdGggb3BlcmF0aW9ucyBvZiBjbGFzc2VzIG9yIGNvbXBvbmVudHMgZGVmaW5lZCBpbiB0aGUgbW9kZWwuIAorICAgICAgPC9kZXNjcmlwdGlvbj4KKyAgIDwvaW50cm8+CisgICA8aXRlbQorICAgCQkgc2tpcCA9ICJ0cnVlIgorICAgICAgICAgdGl0bGU9IkNvbmZpZ3VyZSB0aGUgQWxmIGVkaXRvciI+CisgICAgIAorICAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgIEZpcnN0IG9mIGFsbCwgdGhlIEFsZiBlZGl0b3IgbXVzdCBiZSBjb25maWd1cmVkIGFzIHRoZSBkZWZhdWx0IGVkaXRvciBmb3IgVU1MIG9wZXJhdGlvbnMuCisgICAgICA8L2Rlc2NyaXB0aW9uPgorICAgICAgIDxzdWJpdGVtCisgICAgICAgICAgICBsYWJlbD0iR28gdG8gbWVudSBXaW5kb3dzIC8gUHJlZmVyZW5jZXMgLyBQYXB5cnVzIC8gRW1iZWRkZWQgZWRpdG9ycyI+CisgICAgICA8L3N1Yml0ZW0+CisgICAgICA8c3ViaXRlbQorICAgICAgICAgICAgbGFiZWw9IkluIHRoZSBsaXN0IEVsZW1lbnRzIHRvIGVkaXQsIHNlbGVjdCBvcmcuZWNsaXBzZS51bWwyLnVtbC5PcGVyYXRpb24uIj4KKyAgICAgIDwvc3ViaXRlbT4KKyAgICAgIDxzdWJpdGVtCisgICAgICAgICAgICBsYWJlbD0iSW4gdGhlIGxpc3QgQXNzb2NpYXRlZCBlZGl0b3IsIHNlbGVjdCBBbGYsIHByZXNzIGJ1dHRvbiBEZWZhdWx0LCBhbmQgZmluYWxseSBwcmVzcyBPSy4iPgorICAgICAgPC9zdWJpdGVtPgorICAgPC9pdGVtPgorICAKKyAgICA8aXRlbQorICAgICAgICAgdGl0bGU9IkVkaXQgb3BlcmF0aW9uIGJvZGllcyB3aXRoIEFsZiI+CisgICAgICAKKyAgICAgICA8ZGVzY3JpcHRpb24+CisgICAgICBPbmNlIHRoZSBBbGYgZWRpdG9yIGhhcyBiZWVuIGNvbmZpZ3VyZWQgYXMgdGhlIGRlZmF1bHQgZWRpdG9yIGZvciBVTUwgb3BlcmF0aW9ucywgYm9kaWVzIG9mIG9wZXJhdGlvbnMgY2FuIGJlIGVkaXRlZCB1c2luZyB0aGUgQWxmIHN5bnRheC4gICAgIAorICAgICAgPC9kZXNjcmlwdGlvbj4KKyAgICAgICA8c3ViaXRlbQorICAgICAgICAgICAgbGFiZWw9IlNlbGVjdCBhbiBvcGVyYXRpb24gaW4gdGhlIGFjdGl2ZSBjbGFzcyBkaWFncmFtIChlLmcuLCBpbiB0aGUgb3BlcmF0aW9uIGNvbXBhcnRtZW50IG9mIGEgY2xhc3MpIj4KKyAgICAgIDwvc3ViaXRlbT4KKyAgICAgICA8c3ViaXRlbQorICAgICAgICAgICAgbGFiZWw9IlByZXNzIGtleSBGMi4gQSBwb3B1cCBlZGl0b3Igd2lsbCBvcGVuLCB3aGVyZSBpdCB3aWxsIGJlIHBvc3NpYmxlIHRvIGVkaXQgYm90aCBvcGVyYXRpb24gc2lnbmF0dXJlIGFuZCBib2R5IHVzaW5nIHRoZSBBbGYgc3ludGF4LiBDaGFuZ2VzIHdpbGwgYmUgc2F2ZWQgYXV0b21hdGljYWxseSB3aGVuIGZvY3VzIGlzIGxvc3Qgb3IgY3RybCtlbnRlciBpcyBwcmVzc2VkLiBJbiBvcmRlciB0byBpZ25vcmUgY2hhbmdlcywgc2ltcGx5IHByZXNzIEVzYy4iPgorICAgICAgPC9zdWJpdGVtPgorICAgPC9pdGVtPj4KKzwvY2hlYXRzaGVldD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL0VkaXRGU01zLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvRWRpdEZTTXMueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY1MmEwZGYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL0VkaXRGU01zLnhtbApAQCAtMCwwICsxLDM1IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPGNoZWF0c2hlZXQKKyAgICAgIHRpdGxlPSJFZGl0IEZTTXMiPgorICAgCisgICA8aW50cm8+CisgICAgICA8ZGVzY3JpcHRpb24+CisgICAgICAgICBUbyBzcGVjaWZ5IGEgcm9ib3RpYyBzeXN0ZW0gYmVoYXZpb3IsIHlvdSBjYW4gdXNlIGZpbml0ZSBzdGF0ZSBtYWNoaW5lcyBkaWFncmFtcy4gU2V2ZXJhbCBGU01zIGNhbiBiZSBhdHRhY2hlZCB0byBhIHJvYm90aWMgc3lzdGVtLgorICAgICAgICAgPC9kZXNjcmlwdGlvbj4KKyAgICAgICAgCisgICA8L2ludHJvPiA8aXRlbQorICAgICAgICAgdGl0bGU9IkNyZWF0ZSBuZXcgc3RhdGUgbWFjaGluZSBkaWFncmFtIj4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgIEdvIHRvIHRoZSBtb2RlbCBleHBsb3JlciB2aWV3IGFuZCBzZWxlY3QgdGhlIHJvYm90aWMgc3lzdGVtIHRvIHdoaWNoIHlvdSB3YW50IHRvIGRlc2NyaWJlIHRoZSBiZWhhdmlvciB0aHJvdWdoIGZpbml0ZSBzdGF0ZSBtYWNoaW5lcy4KK1JpZ2h0IGNsaWNrIG9uIGl0IGFuZCBjaG9vc2UgdGhlICZxdW90O25ldyBkaWFncmFtJnF1b3Q7IG1lbnUsIHRoZW4gY2hvb3NlICZxdW90O2NyZWF0ZSBuZXcgc3RhdGUgbWFjaGluZSBkaWFncmFtJnF1b3Q7LiBBIG5ldyBmaW5hdGUgc3RhdGUgbWFjaGluZSB3aWxsIGJlIGNyZWF0ZWQgYW5kIGFkZGVkIHRvIHRoZSBvd25lZEJldmlvciBsaXN0IG9mIHRoZSBzZWxlY3RlZCBzeXN0ZW0uIAorQSBuZXcgZGlhZ3JhbSB3aWxsIGJlIGNyZWF0ZWQgYXMgd2VsbC4gSW4gdGhlIG5leHQgc3RlcCB5b3Ugd2lsbCBncmFwaGljYWxseSBlZGl0IHRoZSBGU00uCitHbyB0byB0aGUgbW9kZWwgZXhwbG9yZXIgdmlldyBhbmQgc2VsZWN0IHRoZSByb2JvdGljIHN5c3RlbSB0byB3aGljaCB5b3Ugd2FudCB0byBkZXNjcmliZSB0aGUgYmVoYXZpb3IgdGhyb3VnaCBmaW5pdGUgc3RhdGUgbWFjaGluZXMuCitSaWdodCBjbGljayBvbiBpdCBhbmQgY2hvb3NlIHRoZSAmcXVvdDtuZXcgZGlhZ3JhbSZxdW90OyBtZW51LCB0aGVuIGNob29zZSAmcXVvdDtjcmVhdGUgbmV3IHN0YXRlIG1hY2hpbmUgZGlhZ3JhbSZxdW90Oy4gQSBuZXcgZmluYXRlIHN0YXRlIG1hY2hpbmUgd2lsbCBiZSBjcmVhdGVkIGFuZCBhZGRlZCB0byB0aGUgb3duZWRCZXZpb3IgbGlzdCBvZiB0aGUgc2VsZWN0ZWQgc3lzdGVtLiAKK0EgbmV3IGRpYWdyYW0gd2lsbCBiZSBjcmVhdGVkIGFzIHdlbGwuIEluIHRoZSBuZXh0IHN0ZXAgeW91IHdpbGwgZ3JhcGhpY2FsbHkgZWRpdCB0aGUgRlNNLgorICAgICAgPC9kZXNjcmlwdGlvbj4KKyAgPGl0ZW0KKyAgICAgICAgdGl0bGU9IkVkaXQgdGhlIGZpbml0ZSBzdGF0ZSBtYWNoaW5lIj4KKyAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgICBUaGUgZmluaXRlIHN0YXRlIG1hY2hpbmUgaXMgaW5pdGlhbGl6ZWQgd2l0aCBhbiBlbXB0eSBzdGF0ZSBtYWNoaW5lLiBUbyBwb3B1bGF0ZSB0aGUgZGlhZ3JhbSwgeW91IAorICAgICA8L2Rlc2NyaXB0aW9uPgorICA8L2l0ZW0+CisgICA8L2l0ZW0+CisgCisgIDxpdGVtCisgICAgICAgIHRpdGxlPSJFZGl0IHRoZSBzdGF0ZSBtYWNoaW5lIj4KKyAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgICA8Yj5Cb2R5PC9iPgorICAgICA8L2Rlc2NyaXB0aW9uPgorICA8L2l0ZW0+CisgICAKKzwvY2hlYXRzaGVldD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvRW52aXJvbm1lbnREZWZpbml0aW9uLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvRW52aXJvbm1lbnREZWZpbml0aW9uLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mYTY0Zjk1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9FbnZpcm9ubWVudERlZmluaXRpb24ueG1sCkBAIC0wLDAgKzEsMjcgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Y2hlYXRzaGVldAorICAgICAgdGl0bGU9IkVudmlyb25tZW50IGRlZmluaXRpb24iPgorICAgPGludHJvPgorICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgICAgSW4gdGhpcyBzdGVwLCB5b3Ugd2lsbCBkZWZpbmUgdGhlIGVudmlyb25tZW50IG9mIHRoZSByb2JvdGljIHN5c3RlbWwuCisgICAgICA8L2Rlc2NyaXB0aW9uPgorICAgPC9pbnRybz4KKyAgIAorICAgPGl0ZW0gICAgICB0aXRsZT0iRGVmaW5lIHNwZWNpZmljIHJvYm90aWMgc3lzdGVtcyI+CisgICAgICA8ZGVzY3JpcHRpb24+CisgICAgICAgICAgVG8gZGVmaW5lIHNwZWNpZmljIHJvYm90aWMgc3lzdGVtcywgdXNlIHRoZSBjb21wb25lbnRzIGRlZmluaXRpb24gZGlhZ3JhbS4gCisgICAgICA8L2Rlc2NyaXB0aW9uPgorICAgICAgPHN1Yml0ZW0KKyAgICAgICAgICAgIGxhYmVsPSJHbyB0byB0aGUgbW9kZWwgZXhwbG9yZXIgdmlldyI+CisgICAgICAgICAgICA8Y29tbWFuZAorICAgICAgICAgICAgcmVxdWlyZWQ9ImZhbHNlIgorICAgICAgICAgICAgc2VyaWFsaXphdGlvbj0ib3JnLmVjbGlwc2UudWkudmlld3Muc2hvd1ZpZXcob3JnLmVjbGlwc2UudWkudmlld3Muc2hvd1ZpZXcudmlld0lkPW9yZy5lY2xpcHNlLnBhcHlydXMubW9kZWxleHBsb3Jlci5tb2RlbGV4cGxvcmVyKSIvPgorICAgICAgPC9zdWJpdGVtPgorICAgICAgPHN1Yml0ZW0KKyAgICAgICAgICAgIGxhYmVsPSJyaWdodCBjbGljayBvbiB0aGUgbW9kZWwsIGFuZCBjaG9vc2UgY3JlYXRlIG5ldyBkaWFncmFtLiBUaGVuIGNob29zZSBDb21wb25lbnRzIGRlZmluaXRpb24gZGlhZ3JhbS4iPgorICAgICAgPC9zdWJpdGVtPgorICAgICAgPHN1Yml0ZW0KKyAgICAgICAgICAgIGxhYmVsPSJDcmVhdGUgeW91ciBzcGVjaWZpYyByb2JvdGljIHN5c3RlbXMuIFlvdSBjYW4gYWRkIERhdGEgRmxvdyBvciBTZXJ2aWNlIHBvcnRzIHRvIHRoZSBzeXN0ZW1zLiBEYXRhIEZsb3cgcG9ydHMgaGF2ZSB0byBiZSB0eXBlZCBieSBhIGRhdGEgdHlwZSwgc2VydmljZSBwb3J0cyBieSBhbiBpbnRlcmZhY2UuIj4KKyAgICAgIDwvc3ViaXRlbT4KKyAgIDwvaXRlbT4KKzwvY2hlYXRzaGVldD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvRXh0ZXJuYWwtTGlicmFyaWVzLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvRXh0ZXJuYWwtTGlicmFyaWVzLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZjNkMDc4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9FeHRlcm5hbC1MaWJyYXJpZXMueG1sCkBAIC0wLDAgKzEsMzEgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Y29tcG9zaXRlQ2hlYXRzaGVldCBuYW1lPSJFeHRlcm5hbCBMaWJyYXJpZXMgRGFzaGJvYXJkIj4KKyAgIDx0YXNrR3JvdXAga2luZD0ic2V0IiBuYW1lPSJFeHRlcm5hbCBMaWJyYXJpZXMiIHNraXA9ImZhbHNlIj4KKyAgICAgIDxpbnRybz4KKyAgICAgICAgIDxiPkludHJvZHVjdGlvbjwvYj4KKyAgICAgIDwvaW50cm8+CisgICAgICA8b25Db21wbGV0aW9uPgorICAgICAgICAgPGI+Q29uY2x1c2lvbjwvYj4KKyAgICAgIDwvb25Db21wbGV0aW9uPgorICAgICAgPHRhc2sga2luZD0iY2hlYXRzaGVldCIgbmFtZT0iQ3JlYXRlIC8gTG9hZCBleHRlcm5hbCBsaWJyYXJ5IGRlc2NyaXB0aW9uIiBza2lwPSJmYWxzZSI+CisgICAgICAgICA8aW50cm8+CisgICAgICAgICAgICA8Yj5JbnRyb2R1Y3Rpb248L2I+CisgICAgICAgICA8L2ludHJvPgorICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgIDxiPkNvbmNsdXNpb248L2I+CisgICAgICAgICA8L29uQ29tcGxldGlvbj4KKyAgICAgICAgIDxwYXJhbSBuYW1lPSJwYXRoIiB2YWx1ZT0iQ3JlYXRlLUxvYWQtTGlicmFyeS54bWwiPgorICAgICAgICAgPC9wYXJhbT4KKyAgICAgIDwvdGFzaz4KKyAgICAgIDx0YXNrIGtpbmQ9ImNoZWF0c2hlZXQiIG5hbWU9IlRhc2siIHNraXA9ImZhbHNlIj4KKyAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgIDxiPkludHJvZHVjdGlvbjwvYj4KKyAgICAgICAgIDwvaW50cm8+CisgICAgICAgICA8b25Db21wbGV0aW9uPgorICAgICAgICAgICAgPGI+Q29uY2x1c2lvbjwvYj4KKyAgICAgICAgIDwvb25Db21wbGV0aW9uPgorICAgICAgICAgPHBhcmFtIG5hbWU9InBhdGgiPgorICAgICAgICAgPC9wYXJhbT4KKyAgICAgIDwvdGFzaz4KKyAgIDwvdGFza0dyb3VwPgorPC9jb21wb3NpdGVDaGVhdHNoZWV0PgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9HZW5lcmF0ZUNQUENvZGVGcm9tVU1MQWxmQ2xhc3NNb2RlbC54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL0dlbmVyYXRlQ1BQQ29kZUZyb21VTUxBbGZDbGFzc01vZGVsLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kZWUyZWE3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9HZW5lcmF0ZUNQUENvZGVGcm9tVU1MQWxmQ2xhc3NNb2RlbC54bWwKQEAgLTAsMCArMSw0MCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxjaGVhdHNoZWV0CisgICAgICB0aXRsZT0iR2VuZXJhdGUgQysrIENvZGUgZnJvbSBVTUwvQWxmIGNsYXNzIG1vZGVsIj4KKyAgIDxpbnRybz4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgIFRoaXMgY2hlYXQgc2hlZXQgZGVzY3JpYmVzIGhvdyBzdHJ1Y3R1cmFsIGFuZCBiZWhhdmlvcmFsIEMrKyBjb2RlIGNhbiBiZSBnZW5lcmF0ZWQgZnJvbSBhbiBvYmplY3Qtb3JpZW50ZWQgVU1MIG1vZGVsLCB3aGVyZSBib2RpZXMgb2Ygb3BlcmF0aW9ucyBhcmUgc3BlY2lmaWVkIHVzaW5nIHRoZSBBbGYgdGV4dHVhbCBzeW50YXguIAorICAgICAgPC9kZXNjcmlwdGlvbj4KKyAgIDwvaW50cm8+CisgICA8aXRlbQorICAgCQkgc2tpcCA9ICJ0cnVlIgorICAgICAgICAgdGl0bGU9IkNvbmZpZ3VyZSB0aGUgVU1ML0FsZiB0byBDKysgY29kZSBnZW5lcmF0b3IiPgorICAgICAKKyAgICAgICA8ZGVzY3JpcHRpb24+CisgICAgICAgICBGaXJzdCBvZiBhbGwsIHRoZSB0YXJnZXQgZm9sZGVycyBmb3IgY29kZSBnZW5lcmF0aW9uIG11c3QgYmUgY29uZmlndXJlZC4KKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICAgICAgPHN1Yml0ZW0KKyAgICAgICAgICAgIGxhYmVsPSJHbyB0byBtZW51IFdpbmRvdyAvIFByZWZlcmVuY2VzIC8gUGFweXJ1cyAvIFVNTC9BbGYgdG8gQysrIENvZGUgR2VuZXJhdG9yIj4KKyAgICAgIDwvc3ViaXRlbT4KKyAgICAgIDxzdWJpdGVtCisgICAgICAgICAgICBsYWJlbD0iU2VsZWN0IHRoZSB0YXJnZXQgcm9vbCBmb2xkZXIgZm9yIGNvZGUgZ2VuZXJhdGlvbiAoQnkgZGVmYXVsdCwgdGhlIHJ1bGUgZm9yIGdlbmVyYXRpb24gaXMgVXNlIGZvbGRlciBvZiB0aGUgdGFyZ2V0IFVNTCBtb2RlbCBhcyByb290KS4iPgorICAgICAgPC9zdWJpdGVtPgorICAgICAgPHN1Yml0ZW0KKyAgICAgICAgICAgIGxhYmVsPSJTcGVjaWZ5IGEgcGF0aCByZWxhdGl2ZSB0byB0aGUgcm9vdCAoZS5nLiBzcmMtZ2VuL2NwcENvZGUpLCBwcmVzcyBBcHBseSwgYW5kIGZpbmFsbHkgT0suIj4KKyAgICAgIDwvc3ViaXRlbT4KKyAgIDwvaXRlbT4KKyAgCisgICAgPGl0ZW0KKyAgICAgICAgIHRpdGxlPSJHZW5lcmF0ZSBjb2RlIGZyb20gYSBVTUwgbW9kZWwiPgorICAgICAgCisgICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgT25jZSB0aGUgVU1ML0FsZiB0byBDKysgY29kZSBnZW5lcmF0b3IgaGFzIGJlZW4gY29uZmlndXJlZCwgY29kZSBnZW5lcmF0aW9uIGNhbiBiZSBhcHBsaWVkIGZyb20gYSBVTUwgbW9kZWwuICAgICAKKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICAgICAgPHN1Yml0ZW0KKyAgICAgICAgICAgIGxhYmVsPSJJbiB0aGUgcHJvamVjdCBleHBsb3Jlciwgc2VsZWN0IHRoZSAudW1sIGZpbGUgZnJvbSB3aGljaCB5b3Ugd2FudCB0byBnZW5lcmF0ZSBjb2RlIj4KKyAgICAgIDwvc3ViaXRlbT4KKyAgICAgICA8c3ViaXRlbQorICAgICAgICAgICAgbGFiZWw9IlJpZ2h0LWNsaWNrLCBwcmVzcyBDKysgY29kZSBnZW5lcmF0aW9uLCBhbmQgZmluYWxseSBHZW5lcmF0ZSBDKysgY29kZSBmcm9tIFVNTC9BbGYgY2xhc3MgbW9kZWwuIj4KKyAgICAgIDwvc3ViaXRlbT4KKyAgIDwvaXRlbT4KKzwvY2hlYXRzaGVldD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL0dlbmVyYXRlU2ltdWxhdG9yLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvR2VuZXJhdGVTaW11bGF0b3IueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE1Mzc4N2MKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL0dlbmVyYXRlU2ltdWxhdG9yLnhtbApAQCAtMCwwICsxLDI3IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPGNoZWF0c2hlZXQKKyAgICAgIHRpdGxlPSJHZW5lcmF0ZSBTaW11bGF0b3IiPgorICAgPGludHJvPgorICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgICAgRHVyaW5nIHRoaXMgc3RlcCwgdGhlIHVzZXIgZ2VuZXJhdGUgdGhlIFBST1RFVVMgc2ltdWxhdG9yIGNvcnJlc3BvbmRpbmcgdG8gaXRzIHByb2JsZW0gbW9kZWwgYW5kIGEgY2hvc2VuIGRlcGxveW1lbnQuIEF0IHRoaXMgc3RlcCwgdGhlIHNpbXVsYXRvciBhcHBsaWNhdGlvbiBjb3VsZCBiZSBub24gZXhlY3V0YWJsZSBhcyB0aGVyZSBpcyBwcm9iYWJseSBmb3Igc29tZSBvZiB0aGUgdW5kZXJseWluZyB0b29scyBjb21waWxhdGlvbiB0byBydW4gYW5kIHBlcmhhcHMgY29uZmlndXJhdGlvbihzKSB0byBhcHBseS4KKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICA8L2ludHJvPgorICAgPGl0ZW0KKyAgICAgICAgIHRpdGxlPSJDaG9vc2UgZGVzdGluYXRpb24gZm9sZGVyIj4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgICBUaGUgZGVmYXVsdCBkZXN0aW5hdGlvbiBmb3IgdGhlIGdlbmVyYXRpb24gaXMgaW50byB0aGUgcHJvYmxlbSBtb2RlbCBwcm9qZWN0IGZvbGRlci4gVGhlIHVzZXIgY291bGQgY2hvb3NlIGFub3RoZXIgZGVzdGluYXRpb24gYmVjYXVzZSBoZSAvIHNoZSBwcmVmZXJzIHRvIHdvcmsgb3V0c2lkZSB0aGUgcGxhdGZvcm0gZm9yIGNvbXBpbGF0aW9uLCB0cmFja2luZywgZXRjIGluc2lkZSBoaXMgLyBoZXIgcHJlZmVycmVkIHRvb2wuCisgICAgICA8L2Rlc2NyaXB0aW9uPgorICAgPC9pdGVtPgorICAgPGl0ZW0KKyAgICAgICAgIHRpdGxlPSJDb25maWd1cmUgZ2VuZXJhdGlvbiAiPgorICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgICAKKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICA8L2l0ZW0+CisgICA8aXRlbQorICAgICAgICAgdGl0bGU9IkxhdW5jaCBnZW5lcmF0aW9uICI+CisgICAgICA8ZGVzY3JpcHRpb24+CisgICAgICAgIAorICAgICAgPC9kZXNjcmlwdGlvbj4KKyAgIDwvaXRlbT4KKzwvY2hlYXRzaGVldD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvSW50ZXJmYWNlc0RlZmludGlvbi54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL0ludGVyZmFjZXNEZWZpbnRpb24ueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkyOGQ3ODQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL0ludGVyZmFjZXNEZWZpbnRpb24ueG1sCkBAIC0wLDAgKzEsMjcgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Y2hlYXRzaGVldAorICAgICAgdGl0bGU9IkRlZmluZSBpbnRlcmZhY2VzIj4KKyAgIDxpbnRybz4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgIEludGVyZmFjZXMgYXJlIHVzZWQgdG8gdHlwZSBTZXJ2aWNlIFBvcnRzLiBUaGV5IGFyZSBjb21wb3NlZCBvZiBhIHNldCBvZiBvcGVyYXRpb25zIHdpdGhvdXQgd2l0aG91dCBzdGF0aW5nIGhvdyBleGFjdGx5IHRoZXkgYXJlIGltcGxlbWVudGVkLgorICAgICAgPC9kZXNjcmlwdGlvbj4KKyAgIDwvaW50cm8+CisgICA8aXRlbSAgICAgIHRpdGxlPSJEZWZpbmUgc3BlY2lmaWMgaW50ZXJmYWNlcyI+CisgICAgICA8ZGVzY3JpcHRpb24+CisgICAgICAgICBUbyBkZWZpbmUgc3BlY2lmaWMgaW50ZXJmYWNlcywgeW91IGhhdmUgdG8gdXNlIGludGVyZmFjZXMgZGVmaW5pdGlvbiBkaWFncmFtcy4KKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICAgICA8c3ViaXRlbQorICAgICAgICAgICAgbGFiZWw9IkdvIHRvIHRoZSBtb2RlbCBleHBsb3JlciB2aWV3Ij4KKyAgICAgICAgICAgIDxjb21tYW5kCisgICAgICAgICAgICByZXF1aXJlZD0iZmFsc2UiCisgICAgICAgICAgICBzZXJpYWxpemF0aW9uPSJvcmcuZWNsaXBzZS51aS52aWV3cy5zaG93VmlldyhvcmcuZWNsaXBzZS51aS52aWV3cy5zaG93Vmlldy52aWV3SWQ9b3JnLmVjbGlwc2UucGFweXJ1cy5tb2RlbGV4cGxvcmVyLm1vZGVsZXhwbG9yZXIpIi8+CisgICAgICA8L3N1Yml0ZW0+CisgICAgICA8c3ViaXRlbQorICAgICAgICAgICAgbGFiZWw9InJpZ2h0IGNsaWNrIG9uIHRoZSBtb2RlbCwgYW5kIGNob29zZSBjcmVhdGUgbmV3IGRpYWdyYW0uIFRoZW4gY2hvb3NlIEludGVyZmFjZXMgZGVmaW5pdGlvbiBkaWFncmFtLiI+CisgICAgICA8L3N1Yml0ZW0+CisgICAgICA8c3ViaXRlbQorICAgICAgICAgICAgbGFiZWw9IkNyZWF0ZSB5b3VyIHNwZWNpZmljIGludGVyZmFjZXMuIj4KKyAgICAgICAgICAgIAorICAgICAgPC9zdWJpdGVtPgorICAgPC9pdGVtPgorPC9jaGVhdHNoZWV0PgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9Mb2FkUHJvYmxlbU1vZGVsLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvTG9hZFByb2JsZW1Nb2RlbC54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2JjZTMwZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvTG9hZFByb2JsZW1Nb2RlbC54bWwKQEAgLTAsMCArMSwxOSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxjb21wb3NpdGVDaGVhdHNoZWV0IG5hbWU9IkxvYWQgYSBwcm9ibGVtIG1vZGVsIj4KKyAgIDx0YXNrR3JvdXAga2luZD0iY2hvaWNlIiBuYW1lPSJMb2FkIHByb2JsZW0gbW9kZWwiIHNraXA9ImZhbHNlIj4KKyAgICAgIDxpbnRybz4KKyAgICAgICAgIDxiPkludHJvZHVjdGlvbjwvYj4KKyAgICAgIDwvaW50cm8+CisgICAgICA8b25Db21wbGV0aW9uPgorICAgICAgICAgPGI+Q29uY2x1c2lvbjwvYj4KKyAgICAgIDwvb25Db21wbGV0aW9uPgorICAgICAgPHRhc2sga2luZD0iY2hlYXRzaGVldCIgbmFtZT0ibG9jYWwgbG9hZCIgc2tpcD0iZmFsc2UiPgorICAgICAgICAgPGludHJvPgorICAgICAgICAgICAgPGI+SW50cm9kdWN0aW9uPC9iPgorICAgICAgICAgPC9pbnRybz4KKyAgICAgICAgIDxvbkNvbXBsZXRpb24+CisgICAgICAgICAgICA8Yj5Db25jbHVzaW9uPC9iPgorICAgICAgICAgPC9vbkNvbXBsZXRpb24+CisgICAgICA8L3Rhc2s+CisgICA8L3Rhc2tHcm91cD4KKzwvY29tcG9zaXRlQ2hlYXRzaGVldD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvTmV3UHJvYmxlbU1vZGVsLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvTmV3UHJvYmxlbU1vZGVsLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNjRiMmYzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9OZXdQcm9ibGVtTW9kZWwueG1sCkBAIC0wLDAgKzEsMjQgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+CisKKzxjaGVhdHNoZWV0IHRpdGxlPSJDcmVhdGluZyBhIG5ldyBQcm9ibGVtIG1vZGVsIj4KKyAgIAorPGludHJvPgorCTxkZXNjcmlwdGlvbj48L2Rlc2NyaXB0aW9uPgorPC9pbnRybz4KKzxpdGVtIHRpdGxlPSJDcmVhdGUgYSBuZXcgIFJvYm90TUwgcHJvamVjdCIgZGlhbG9nPSJ0cnVlIiBza2lwPSJmYWxzZSI+CisJPGRlc2NyaXB0aW9uPgorCQlQZXJmb3JtaW5nIHRoaXMgdGFzayBoYXMgdGhlIHNhbWUgZWZmZWN0IGFzIHRvIG9wZW46PGJyLz5GaWxlICZndDsgTmV3ICZndDsgUHJvamVjdCAmZ3Q7IFJvYm90TUwgcHJvamVjdCAmZ3Q7PGJyLz48YnIvPkF0IHRoaXMgc3RlcCB0aGUgcHJvamVjdCBuYW1lIGFuZCB0aGUgZGVmYXVsdCBjcmVhdGVkIGRpYWdyYW0ocykgaGF2ZSB0byBiZSBjaG9zZW4uIFRoaXMgaXMgbm90IHRvIGJlIGNvbmZ1c2VkIHdpdGggdGhlICZxdW90O1JvYm90TUwgTW9kZWwmcXVvdDsgY2hvaWNlIHRoYXQgYWxsb3dzIHRoZSB1c2VyIHRvIGNyZWF0ZSBhIG5ldyBSb2JvdE1MIG1vZGVsIGluIGFuIGV4aXN0aW5nIHByb2plY3QuCisgICAgPC9kZXNjcmlwdGlvbj4KKyA8Y29tbWFuZAorICAgICAgIHJlcXVpcmVkPSJmYWxzZSIKKyAgICAgICBzZXJpYWxpemF0aW9uPSJvcmcuZWNsaXBzZS51aS5uZXdXaXphcmQobmV3V2l6YXJkSWQ9b3JnLmVjbGlwc2UucGFweXJ1cy53aXphcmRzLmNyZWF0ZXJvYm90bWx3aXphcmQpIi8+Cis8L2l0ZW0+Cis8aXRlbSB0aXRsZT0iT3BlbiBSb2JvdE1MIFBlcnNwZWN0aXZlIiAgZGlhbG9nPSJmYWxzZSIgc2tpcD0iZmFsc2UiPgorCTxkZXNjcmlwdGlvbj4KKwkJQ3JlYXRpb24gb2YgYSBwcm9qZWN0IGluIEVDTElQU0UgZG9lcyBub3QgY2hhbmdlIGJ5IGl0c2VsZiB0aGUgcGVyc3BlY3RpdmUuIFVzZXIgTVVTVCBjaGFuZ2UgaXQgbWFudWFsbHkgYW5kIGl0IGlzIGRvbmUgcGVyZm9ybWluZyB0aGlzIHRhc2sgb2YgdGhlIHdvcmtmbG93LgorCTwvZGVzY3JpcHRpb24+CisJPGNvbW1hbmQKKyAgICAgICByZXF1aXJlZD0idHJ1ZSIKKyAgICAgICBzZXJpYWxpemF0aW9uPSJvcmcuZWNsaXBzZS51aS5wZXJzcGVjdGl2ZXMuc2hvd1BlcnNwZWN0aXZlKG9yZy5lY2xpcHNlLnVpLnBlcnNwZWN0aXZlcy5zaG93UGVyc3BlY3RpdmUucGVyc3BlY3RpdmVJZD1vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGVyc3BlY3RpdmUpIi8+Cis8L2l0ZW0+Cis8L2NoZWF0c2hlZXQ+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL05ld1NvbHV0aW9uTW9kZWwueG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9OZXdTb2x1dGlvbk1vZGVsLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42YTg2MDdlCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9OZXdTb2x1dGlvbk1vZGVsLnhtbApAQCAtMCwwICsxLDI0IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorCis8Y2hlYXRzaGVldCB0aXRsZT0iQ3JlYXRpbmcgYSBuZXcgUHJvYmxlbSBtb2RlbCI+CisgICAKKzxpbnRybz4KKwk8ZGVzY3JpcHRpb24+SW4gdGhpcyBzdGVwIHlvdSB3aWxsIGNyZWF0ZSBhIG5ldyBzb2x1dGlvbiBtb2RlbCBwcm9qZWN0IHdoaWNoIGltcG9ydHMgYSBwcm9ibGVtIG1vZGVsLjwvZGVzY3JpcHRpb24+Cis8L2ludHJvPgorPGl0ZW0gdGl0bGU9Ik9wZW4gUGFweXJ1cyBQZXJzcGVjdGl2ZSIgIGRpYWxvZz0iZmFsc2UiIHNraXA9InRydWUiPgorCTxkZXNjcmlwdGlvbj4gU3RhcnQgIHNldHRpbmcgdXAgeW91ciBlbnZpcm9ubWVudCBwZXJzcGVjdGl2ZS4gPC9kZXNjcmlwdGlvbj4KKyA8Y29tbWFuZAorICAgICAgIHJlcXVpcmVkPSJmYWxzZSIKKyAgICAgICBzZXJpYWxpemF0aW9uPSJvcmcuZWNsaXBzZS51aS5wZXJzcGVjdGl2ZXMuc2hvd1BlcnNwZWN0aXZlKG9yZy5lY2xpcHNlLnVpLnBlcnNwZWN0aXZlcy5zaG93UGVyc3BlY3RpdmUucGVyc3BlY3RpdmVJZD1vcmcuZWNsaXBzZS5wYXB5cnVzLmluZnJhLmNvcmUucGVyc3BlY3RpdmUpIi8+Cis8L2l0ZW0+Cis8aXRlbSB0aXRsZT0iQ3JlYXRlIGEgbmV3ICBwcm90ZXVzIHByb2plY3QiIGRpYWxvZz0idHJ1ZSIgc2tpcD0iZmFsc2UiPgorCTxkZXNjcmlwdGlvbj4KKwkgIAkJU3RhcnQgY3JlYXRpbmcgdGhlIHByb2plY3QgdGhhdCB3aWxsIGhvc3QgeW91ciBzb2x1dGlvbiBtb2RlbC4gCisgICAgICAJCQorRmlsZSAmZ3Q7IE5ldyAmZ3Q7IFByb2plY3QgJmd0OyBQYXB5cnVzIHByb2plY3QgJmd0OyBFbnRlciB5b3VyIHByb2plY3QgbmFtZSwgdGhlbiBzZWxlY3QgcHJvdGV1cyBhcyBkaWFncmFtIGxhbmd1YWdlIGFuZCB0aGUgcHJvYmxlbSBtb2RlbCB0ZW1wbGF0ZS4gT24gdGhlIG5leHQgcGFnZSwgY2hvb3NlIHRoZSBkaWFncmFtcyB0aGF0IHlvdSB3YW50IHRvIGNyZWF0ZSBhbmQgdGhlIHByb2JsZW0gdGVtcGxhdGUgdGhhdCB5b3Ugd2FudCB0byBsb2FkLgorICAgIDwvZGVzY3JpcHRpb24+CisgPGNvbW1hbmQKKyAgICAgICByZXF1aXJlZD0idHJ1ZSIKKyAgICAgICBzZXJpYWxpemF0aW9uPSJvcmcuZWNsaXBzZS51aS5uZXdXaXphcmQobmV3V2l6YXJkSWQ9b3JnLmVjbGlwc2UucGFweXJ1cy53aXphcmRzLjFjcmVhdGVwcm9qZWN0KSIvPgorPC9pdGVtPiAKKzwvY2hlYXRzaGVldD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvT3BlblBlcnNwZWN0aXZlLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvT3BlblBlcnNwZWN0aXZlLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iNzA5ZmE4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9PcGVuUGVyc3BlY3RpdmUueG1sCkBAIC0wLDAgKzEsMTkgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Y2hlYXRzaGVldAorICAgICAgdGl0bGU9Ik9wZW4gUGVyc3BlY3RpdmUiPgorICAgPGludHJvPgorICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgICAgCisgICAgICA8L2Rlc2NyaXB0aW9uPgorICAgPC9pbnRybz4KKyAgIDxpdGVtCisgICAgICAgICBza2lwPSJ0cnVlIgorICAgICAgICAgdGl0bGU9Ik9wZW4gcGVyc3BlY3RpdmUiPgorICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgICAgPGI+VXNlcjwvYj5uZWVkcyBvbmx5IHRvIG9wZW4gUm9ib3RNTCBwZXJzcGVjdGl2ZS4KKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICAgICA8Y29tbWFuZAorICAgICAgICAgICAgcmVxdWlyZWQ9ImZhbHNlIgorICAgICAgICAgICAgc2VyaWFsaXphdGlvbj0ib3JnLmVjbGlwc2UudWkucGVyc3BlY3RpdmVzLnNob3dQZXJzcGVjdGl2ZShvcmcuZWNsaXBzZS51aS5wZXJzcGVjdGl2ZXMuc2hvd1BlcnNwZWN0aXZlLnBlcnNwZWN0aXZlSWQ9b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBlcnNwZWN0aXZlKSIvPgorICAgPC9pdGVtPgorPC9jaGVhdHNoZWV0PgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9QYkJlaGF2aW9yYWxWYWxpZGF0aW9uLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvUGJCZWhhdmlvcmFsVmFsaWRhdGlvbi54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODQ0NDZjYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvUGJCZWhhdmlvcmFsVmFsaWRhdGlvbi54bWwKQEAgLTAsMCArMSwxOSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxjaGVhdHNoZWV0CisgICAgICB0aXRsZT0iTW9kZWwgVmFsaWRhdGlvbiI+Cis8aW50cm8+CisJPGRlc2NyaXB0aW9uPgorCQlUaGUgdXNlciB3aWxsIHZlcmlmeSBoZXJlIHRoYXQgaXRzIHByb2JsZW0gbW9kZWwgY2FuIGJlIG1hcHBlZCBvbnRvIHRoZSBERVZTIHRoZW9yeSBvZiBzeXN0ZW0gbW9kZWxpbmcgKHNlZSBodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0RFVlMpLiBUaGlzIG1hcHBpbmcgbGVhZHMgdG8gdGhlIGNyZWF0aW9uIG9mIGEgc2ltdWxhdG9yIGFsbG93aW5nIHRoZSB1c2VyIHRvIHZlcmlmeSB0aGF0IGl0cyBkYXRhIGFuZCBjb250cm9sIGZsb3cgaXMgYXMgaGUgLyBzaGUgc2F3IGl0LiBUaGUgdW5kZXJseWluZyB1c2VkIHNpbXVsYXRvciBlbmdpbmUgaXMgdGhlIFZMRSBvbmUgKHNlZSBodHRwOi8vd3d3LnZsZS1wcm9qZWN0Lm9yZy8pLgorPC9kZXNjcmlwdGlvbj4KKzwvaW50cm8+Cis8aXRlbQorICAgICAgdGl0bGU9IkxhdW5jaCBiZWhhdmlvcmFsIHZhbGlkYXRpb24iPgorICAgPGRlc2NyaXB0aW9uPgorICAgICBUaGUgdXNlciB3aWxsIGxhdW5jaCB0aGUgYmVoYXZpb3JhbCB2YWxpZGF0aW9uLgorICAgPC9kZXNjcmlwdGlvbj4KKworPC9pdGVtPgorCisKKzwvY2hlYXRzaGVldD4KKwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9QYkNsb3NlLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvUGJDbG9zZS54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDIxMDA0YgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvUGJDbG9zZS54bWwKQEAgLTAsMCArMSwxOCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxjaGVhdHNoZWV0CisgICAgICB0aXRsZT0iQ2xvc2UgcHJvYmxlbSBtb2RlbCI+CisgICA8aW50cm8+CisgICAgICA8ZGVzY3JpcHRpb24+CisgICAgICAgICBPbmNlIHlvdSBoYXZlIGZpbmlzaGVkIG1vZGVsaW5nIHRoZSByb2JvdGljIHByb2JsZW0gYW5kIHNhdmVkIGl0LCB5b3UgY291bGQgY2xvc2UgdGhlIG1vZGVsLgorICAgICAgPC9kZXNjcmlwdGlvbj4KKyAgIDwvaW50cm8+CisgICA8aXRlbQorICAgICAgdGl0bGU9IkNsb3NlIHRoZSBwcm9ibGVtIG1vZGVsLiI+CisgICAgICA8Y29tbWFuZAorICAgICAgICAgICAgcmVxdWlyZWQ9ImZhbHNlIgorICAgICAgICAgICAgc2VyaWFsaXphdGlvbj0ib3JnLmVjbGlwc2UudWkuZmlsZS5jbG9zZSIvPiAgIAorICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgICAgPGI+Qm9keTwvYj4KKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICA8L2l0ZW0+Cis8L2NoZWF0c2hlZXQ+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL1BiTG9hZC54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL1BiTG9hZC54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzM0ZDE5MgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvUGJMb2FkLnhtbApAQCAtMCwwICsxLDIxIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPGNoZWF0c2hlZXQKKyAgICAgIHRpdGxlPSJMb2FkIGEgcHJvYmxlbSAiPgorICAgPGludHJvPgorICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgIFRoZSB1c2VyIGxvYWQgdGhlIHByb2JsZW0gcHJvamVjdHMgZnJvbSB0aGUgcmVtb3RlIHNlcnZlci4gQSBwcm9ibGVtIGlzIHNldCBvZiBwcm9qZWN0cyAoZGVwbG95ZWQgcHJvYmxlbSBtb2RlbCwgc2ltdWxhdG9yIGNvZGUsIGNvbmZpZ3VyYXRpb24gZmlsZXMsIGV0YykKKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICA8L2ludHJvPgorICAgPGl0ZW0KKyAgICAgICAgIHRpdGxlPSJMb2FkIHRoZSBkZXBsb3llZCBwcm9ibGVtIG1vZGVsIj4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgQ2hvb3NlIHRoZSByZW1vdGUgbG9jYXRpb24gZnJvbSB3aGVyZSB0aGUgcHJvYmxlbSBtb2RlbCB3aWxsIGJlIGxvYWRlZC4KKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICA8L2l0ZW0+CisgICA8aXRlbQorICAgICAgICAgdGl0bGU9IkxvYWQgdGhlIHNpbXVsYXRvciBjb2RlIGFuZCBjb25maWd1cmF0aW9uIGZpbGVzIj4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgQ2hvb3NlIHRoZSByZW1vdGUgbG9jYXRpb24gZnJvbSB3aGVyZSB0aGUgc2ltdWxhdG9yIGNvZGUgd2lsbCBiZSBsb2FkZWQuCisgICAgICA8L2Rlc2NyaXB0aW9uPgorICAgPC9pdGVtPgorPC9jaGVhdHNoZWV0PgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9QYk5vVmFsaWRhdGlvbi54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL1BiTm9WYWxpZGF0aW9uLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41Y2VkY2VkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9QYk5vVmFsaWRhdGlvbi54bWwKQEAgLTAsMCArMSwxNSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxjaGVhdHNoZWV0CisgICAgICB0aXRsZT0iTm8gVmFsaWRhdGlvbiI+CisgICA8aW50cm8+CisgICAgICA8ZGVzY3JpcHRpb24+CisgICAgICAgICBUaGUgdXNlciBjYW4gdmFsaWRhdGUgbGF0ZXIgdGhlIG1vZGVsLgorICAgICAgPC9kZXNjcmlwdGlvbj4KKyAgIDwvaW50cm8+CisgICA8aXRlbQorICAgICAgICAgdGl0bGU9Ik5vIHZhbGlkYXRpb24iPgorICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgICAgSW4gb3JkZXIgdG8gc2F2ZSBpdHMgdW5maW5pc2hlZCB3b3JrLCB0aGUgdXNlciBjYW4gY2hlY2sgb3V0IHRoZSDigJxubyB2YWxpZGF0aW9u4oCdIGNhc2UgYW5kICBwcm9jZWVkIHRvIHRoZSBmb2xsb3dpbmcgc3RlcC4KKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICA8L2l0ZW0+Cis8L2NoZWF0c2hlZXQ+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL1BiU2F2ZS54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL1BiU2F2ZS54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGYyYjQ3MwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvUGJTYXZlLnhtbApAQCAtMCwwICsxLDI3IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPGNoZWF0c2hlZXQKKyAgICAgIHRpdGxlPSJTYXZlIHRoZSBwcm9ibGVtIj4KKyAgIDxpbnRybz4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgIEhlcmUgdGhlIHVzZXIgd2lsbCBzYXZlIHRoZSBwcm9ibGVtIG1vZGVsIHRvIGEgbG9jYWwgZm9sZGVyLgorICAgICAgPC9kZXNjcmlwdGlvbj4KKyAgIDwvaW50cm8+CisgICA8aXRlbQorICAgICAgICAgdGl0bGU9IlNhdmUgdG8gbG9jYWwgZm9sZGVyIj4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgIFRoZSB1c2VyIGNhbiBlaXRoZXIgc2F2ZSB0aGUgcHJvYmxlbSBtb2RlbCBpbiB0aGUgc2FtZSBwcm9qZWN0IG1vZGVsLCBvciBjaG9vc2UgYW5vdGhlciBwcm9qZWN0IGZvbGRlciB0byBzYXZlIHRoZSBtb2RlbC4KKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICAgICA8c3ViaXRlbQorICAgICAgICAgICAgbGFiZWw9IkNob29zZSB0aGUgZm9sZGVyIHdoZXJlIHRvIHNhdmUgdGhlIHByb2JsZW0gbW9kZWwuIj4KKyAgICAgICAgIDxjb21tYW5kCisgICAgICAgICAgICAgICByZXF1aXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgICBzZXJpYWxpemF0aW9uPSJvcmcuZWNsaXBzZS51aS5maWxlLnNhdmVBcyIvPgorICAgICAgPC9zdWJpdGVtPgorICAgICAgPHN1Yml0ZW0KKyAgICAgICAgICAgIGxhYmVsPSJTYXZlIHRoZSBwcm9ibGVtIG1vZGVsIHRvIHRoZSBsb2NhbCBwYXB5cnVzIHByb2plY3QgZm9sZGVyLiI+CisgICAgICAgICA8Y29tbWFuZAorICAgICAgICAgICAgICAgcmVxdWlyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICAgc2VyaWFsaXphdGlvbj0ib3JnLmVjbGlwc2UudWkuZmlsZS5zYXZlIi8+CisgICAgICA8L3N1Yml0ZW0+CisgICA8L2l0ZW0+Cis8L2NoZWF0c2hlZXQ+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9QYlN0cnVjdHVyYWxWYWxpZGF0aW9uLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvUGJTdHJ1Y3R1cmFsVmFsaWRhdGlvbi54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmVhMWYzMAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvUGJTdHJ1Y3R1cmFsVmFsaWRhdGlvbi54bWwKQEAgLTAsMCArMSwzNSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxjaGVhdHNoZWV0CisgICAgICB0aXRsZT0iTW9kZWwgVmFsaWRhdGlvbiI+Cis8aW50cm8+CisJPGRlc2NyaXB0aW9uPgorCQlNb2RlbCB2YWxpZGF0aW9uIGVuYWJsZXMgdGhlIHZlcmlmaWNhdGlvbiBvZiBhIGNlcnRhaW4gc2V0IG9mIHJ1bGVzLiBCZXNpZGVzIHRoZSBzdGFuZGFyZCBVTUwgcnVsZXMsCisJCVJvYm90TUwgZGVmaW5lcyBhIGRvemVuIG9mIGFkZGl0aW9uYWwgcnVsZXMsIGZvciBpbnN0YW5jZSBhIHZhbGlkYXRpb24gb2YgdGhlIHR5cGluZyBydWxlcyBmb3IKKwkJcG9ydHMuCisJPC9kZXNjcmlwdGlvbj4KKzwvaW50cm8+Cis8aXRlbSB0aXRsZT0iVmVyaWZ5IHZhbGlkYXRpb24gc2V0dGluZ3MiIHNraXA9InRydWUiPgorCTxkZXNjcmlwdGlvbj4KKwkJVmVyaWZ5IHRoZSB2YWxpZGF0aW9uIHNldHRpbmdzLCBpLmUuIHRoZSBjdXJyZW50bHkgYWN0aXZlIHZhbGlkYXRpb24gcnVsZXMgKGNvbnN0cmFpbnRzKS4KKwkJT3BlbiB0aGUgZW50cnkgIk1vZGVsIFZhbGlkYXRpb24iIHdpdGhpbiBXaW5kb3cvUHJlZmVyZW5jZXMgYW5kIHZlcmlmeSB0aGUgYWN0aXZlIGNvbnN0cmFpbnRzLgorCQlSb2JvdE1MIHJlbGF0ZWQgY29uc3RyYWludHMgYXJlIGdyb3VwZWQuCisJPC9kZXNjcmlwdGlvbj4KKzwvaXRlbT4KKzxpdGVtIHRpdGxlPSJWYWxpZGF0ZSB5b3VyIE1vZGVsIiBza2lwPSJ0cnVlIj4KKwk8ZGVzY3JpcHRpb24+CisgICAgCVZhbGlkYXRlIHlvdXIgbW9kZWwuIENsaWNrIHJpZ2h0IG9uIGFuIGVsZW1lbnQgd2l0aGluIHRoZSBtb2RlbCBleHBsb3Jlci4gQ2hvb3NlCisgICAgCXRoZSBvcHRpb24gIlZhbGlkYXRlIG1vZGVsIi4gRXJyb25lb3VzIGVsZW1lbnRzIHdpbGwgYXBwZWFyIGluIHRoZSBQcm9ibGVtIHZpZXcsCisgICAgCXdpbGwgYmUgbWFya2VkIGluIHRoZSBtb2RlbCBleHBsb3JlciBhbmQgaW4gdGhlIGRpYWdyYW1zLiBDYXZlYXQ6IHRoZSBtb2RlbCBleHBsb3JlcgorICAgIAljcmVhdGVzIGEgdmlzdWFsIG1hcmtlciBmb3IgcHJvYmxlbXMgZm91bmQgd2l0aGluIGEgY2hpbGQgd2hlcmVhcyB0aGlzIGlzIG5vdCB0aGUgY2FzZSBmb3IKKyAgICAJZGlhZ3JhbXMuCisJPC9kZXNjcmlwdGlvbj4KKzwvaXRlbT4KKzxpdGVtIHRpdGxlPSJPcGVuIHRoZSAmcXVvdDtQcm9ibGVtcyZxdW90OyB2aWV3IiBza2lwPSJ0cnVlIj4KKwk8ZGVzY3JpcHRpb24+CisJCVdpbmRvdyA+IFNob3cgVmlldyA+IFByb2JsZW1zCisJPC9kZXNjcmlwdGlvbj4KKyAJPGNvbW1hbmQKKyAgICAgICByZXF1aXJlZD0iZmFsc2UiCisgICAgICAgc2VyaWFsaXphdGlvbj0ib3JnLmVjbGlwc2UudWkudmlld3Muc2hvd1ZpZXcob3JnLmVjbGlwc2UudWkudmlld3Muc2hvd1ZpZXcudmlld0lkPW9yZy5lY2xpcHNlLnVpLnZpZXdzLlByb2JsZW1WaWV3KSIvPgorPC9pdGVtPgorPC9jaGVhdHNoZWV0PgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9QYlVwbG9hZC54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL1BiVXBsb2FkLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNzY0Y2UyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9QYlVwbG9hZC54bWwKQEAgLTAsMCArMSwyOSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxjaGVhdHNoZWV0CisgICAgICB0aXRsZT0iVXBsb2FkIHRoZSBwcm9ibGVtIj4KKyAgIDxpbnRybz4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICBUaGUgdXNlciBjb3VsZCB1cGxvYWQgdGhlIHByb2JsZW0gbW9kZWwgdG8gdGhlIHJlbW90ZSBzZXJ2ZXIuCisgICAgICA8L2Rlc2NyaXB0aW9uPgorICAgPC9pbnRybz4KKyAgIDxpdGVtCisgICAgICAgICB0aXRsZT0iQ29ubmVjdCB0byB0aGUgc3ZuIHJlcG9zaXRvcnkiPgorICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgICAgPGI+U2hvdyB0aGUgc3ZuIHJlcG9zaXRvcnkgdmlldy4gVGhlbiBhZGQgdGhlIHJlcG9zaXRvcnkgdG8geW91ciA8L2I+CisgICAgICAgICAKKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICAgICA8Y29tbWFuZAorICAgICAgICAgICAgcmVxdWlyZWQ9ImZhbHNlIgorICAgICAgICAgICAgc2VyaWFsaXphdGlvbj0ib3JnLmVjbGlwc2UudWkudmlld3Muc2hvd1ZpZXcob3JnLmVjbGlwc2UudWkudmlld3Muc2hvd1ZpZXcudmlld0lkPW9yZy5lY2xpcHNlLnRlYW0uc3ZuLnVpLnJlcG9zaXRvcnkuYnJvd3Nlci5SZXBvc2l0b3J5QnJvd3NlcikiLz4KKyAgICAgIAorICAgPC9pdGVtPgorICAgPGl0ZW0KKyAgICAgICAgIHRpdGxlPSJDb21taXQgdGhlIHByb2JsZW0iPgorICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgICAgPGI+Qm9keTwvYj4KKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICAgICA8Y29tbWFuZAorICAgICAgICAgICAgcmVxdWlyZWQ9ImZhbHNlIgorICAgICAgICAgICAgc2VyaWFsaXphdGlvbj0ib3JnLmVjbGlwc2UudGVhbS5zdm4udWkuY29tbWFuZC5Db21taXRDb21tYW5kIi8+CisgICA8L2l0ZW0+Cis8L2NoZWF0c2hlZXQ+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL1Byb2JsZW1TYXZlLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvUHJvYmxlbVNhdmUueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNmNWUwYjEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL1Byb2JsZW1TYXZlLnhtbApAQCAtMCwwICsxLDE5IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPGNoZWF0c2hlZXQgdGl0bGU9IlNhdmUgdGhlIHByb2JsZW0iPgorICAgPGludHJvPgorICAgICAgPGRlc2NyaXB0aW9uPkhlcmUgdGhlIHVzZXIgd2lsbCBzYXZlIHRoZSBwcm9ibGVtIG1vZGVsIHRvIGEgbG9jYWwgZm9sZGVyPC9kZXNjcmlwdGlvbj4KKyAgIDwvaW50cm8+CisgICA8aXRlbSB0aXRsZT0iSXRlbSI+CisgICAgICAgIDxkZXNjcmlwdGlvbj48Yj5Cb2R5PC9iPjwvZGVzY3JpcHRpb24+ICAKKyAgICAgICAgPHN1Yml0ZW0gbGFiZWw9IlNhdmUgdGhlIHByb2JsZW0gbW9kZWwgdG8gdGhlIGxvY2FsIHBhcHlydXMgcHJvamVjdCBmb2xkZXIuIj4KKyAgICAgICAgIDxjb21tYW5kCisgICAgICAgICAgICAgICByZXF1aXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgICBzZXJpYWxpemF0aW9uPSJvcmcuZWNsaXBzZS51aS5maWxlLnNhdmUiLz4KKyAgICAgIDwvc3ViaXRlbT4KKyAgICAgIDxzdWJpdGVtIGxhYmVsPSJDaG9vc2UgdGhlIGZvbGRlciB3aGVyZSB0byBzYXZlIHRoZSBwcm9ibGVtIG1vZGVsLiI+CisgICAgICAgICA8Y29tbWFuZAorICAgICAgICAgICAgICAgcmVxdWlyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICAgc2VyaWFsaXphdGlvbj0ib3JnLmVjbGlwc2UudWkuZmlsZS5zYXZlQXMiLz4KKyAgICAgIDwvc3ViaXRlbT4KKyAgIDwvaXRlbT4KKzwvY2hlYXRzaGVldD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvUHVibGlzaFByb2JsZW0ueG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9QdWJsaXNoUHJvYmxlbS54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGJkOGJkNAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvUHVibGlzaFByb2JsZW0ueG1sCkBAIC0wLDAgKzEsMzAgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Y2hlYXRzaGVldAorICAgICAgdGl0bGU9IlB1Ymxpc2ggdGhlIHByb2JsZW0iPgorICAgPGludHJvPgorICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgIHB1Ymxpc2gKKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICA8L2ludHJvPgorICAgPGl0ZW0KKyAgICAgICAgIHRpdGxlPSJMb2dpbiB0byB0aGUgcG9ydGFsIj4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgIDxiPklmIHlvdSBkb24mYXBvczt0IGhhdmUgYW4gYWNjb3VudCwgcGxlYXNlIHJlZ2lzdGVyLiBUaGVuIHVwbG9hZCB0aGUgYXJjaGlldmUgZmlsZSB0byB0aGUgYXBwcm9wcmlhdGUgbG9jYXRpb248L2I+CisgICAgICAgICAKKyAgICAgIAorICAgICAgPC9kZXNjcmlwdGlvbj4KKyAgICAgIDxjb21tYW5kCisgICAgICAgICAgICByZXF1aXJlZD0iZmFsc2UiCisgICAgICAgICAgICBzZXJpYWxpemF0aW9uPSJvcmcuZWNsaXBzZS51aS5icm93c2VyLm9wZW5Ccm93c2VyKHVybD1odHRwOi8vcHJvdGV1cy5ib3VyZ2VzLnVuaXYtb3JsZWFucy5mci8/cSUlJT11c2VyL3JlZ2lzdGVyKSIvPgorICAgPC9pdGVtPgorICAgPGl0ZW0KKyAgICAgICAgIHRpdGxlPSJQdWJsaXNoIHRoZSBwcm9ibGVtIj4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgIENyZWF0ZSBhbiBhcmNoaWV2ZSBmaWxlCisgICAgICAgICAKKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICAgICA8Y29tbWFuZAorICAgICAgICAgICAgcmVxdWlyZWQ9ImZhbHNlIgorICAgICAgICAgICAgc2VyaWFsaXphdGlvbj0ib3JnLmVjbGlwc2UudWkuZmlsZS5leHBvcnQoZXhwb3J0V2l6YXJkSWQ9b3JnLmVjbGlwc2UudWkud2l6YXJkcy5leHBvcnQuWmlwRmlsZSkiLz4KKyAgIDwvaXRlbT4KKzwvY2hlYXRzaGVldD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvUm9ib3RpY1N5c3RlbXNEZWZpbml0aW9uLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvUm9ib3RpY1N5c3RlbXNEZWZpbml0aW9uLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43Y2Y3NWE0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9Sb2JvdGljU3lzdGVtc0RlZmluaXRpb24ueG1sCkBAIC0wLDAgKzEsNDMgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Y2hlYXRzaGVldAorICAgICAgdGl0bGU9IlJvYm90aWMgc3lzdGVtcyBkZWZpbml0aW9uIj4KKyAgIDxpbnRybz4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgIEluIHRoaXMgc3RlcCwgeW91IHdpbGwgZGVmaW5lIHRoZSBzcGVjaWZpYyByb2JvdGljIHN5c3RlbXMgZm9yIHRoZSBwcm9ibGVtIG1vZGVsLiAKKyAgICAgICAgIFJvYm90aWMgc3lzdGVtcyBjb3VsZCBiZSByb2JvdHMgYW5kIHRoZWlyIHN1YnN5c3RlbXMgc3VjaCBhcyBzcGVjaWZpYyBhY3R1YXRvcnMsIHNlbnNvcnMsIGV0Yy4KKyAgICAgIDxzdWJpdGVtCisgICAgICAgICAgICBsYWJlbD0iU3ViLVN0ZXAiPgorICAgICAgPC9zdWJpdGVtPgorICAgICAgPC9kZXNjcmlwdGlvbj4KKyAgIDwvaW50cm8+CisgICAKKyAgIDxpdGVtICAgICAgdGl0bGU9IkRlZmluZSBzcGVjaWZpYyBzZW5zb3JzIj4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgICBUbyBkZWZpbmUgc3BlY2lmaWMgcm9ib3RpYyBzeXN0ZW1zLCB1c2UgdGhlIGNvbXBvbmVudHMgZGVmaW5pdGlvbiBkaWFncmFtLiAKKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICAgICA8c3ViaXRlbQorICAgICAgICAgICAgbGFiZWw9IkdvIHRvIHRoZSBtb2RlbCBleHBsb3JlciB2aWV3Ij4KKyAgICAgICAgICAgIDxjb21tYW5kCisgICAgICAgICAgICByZXF1aXJlZD0iZmFsc2UiCisgICAgICAgICAgICBzZXJpYWxpemF0aW9uPSJvcmcuZWNsaXBzZS51aS52aWV3cy5zaG93VmlldyhvcmcuZWNsaXBzZS51aS52aWV3cy5zaG93Vmlldy52aWV3SWQ9b3JnLmVjbGlwc2UucGFweXJ1cy5tb2RlbGV4cGxvcmVyLm1vZGVsZXhwbG9yZXIpIi8+CisgICAgICA8L3N1Yml0ZW0+CisgICAgICA8c3ViaXRlbQorICAgICAgICAgICAgbGFiZWw9InJpZ2h0IGNsaWNrIG9uIHRoZSBtb2RlbCwgYW5kIGNob29zZSBjcmVhdGUgbmV3IGRpYWdyYW0uIFRoZW4gY2hvb3NlIENvbXBvbmVudHMgZGVmaW5pdGlvbiBkaWFncmFtLiI+CisgICAgICA8L3N1Yml0ZW0+CisgICAgICA8c3ViaXRlbQorICAgICAgICAgICAgbGFiZWw9IkNyZWF0ZSB5b3VyIHNwZWNpZmljIHJvYm90aWMgc3lzdGVtcy4gWW91IGNhbiBhZGQgRGF0YSBGbG93IG9yIFNlcnZpY2UgcG9ydHMgdG8gdGhlIHN5c3RlbXMuIERhdGEgRmxvdyBwb3J0cyBoYXZlIHRvIGJlIHR5cGVkIGJ5IGEgZGF0YSB0eXBlLCBzZXJ2aWNlIHBvcnRzIGJ5IGFuIGludGVyZmFjZS4iPgorICAgICAgPC9zdWJpdGVtPgorICAgPC9pdGVtPgorICAgPGl0ZW0KKyAgICAgICAgIHRpdGxlPSJEZWZpbmUgc3BlY2lmaWMgYWN0dWF0b3JzIj4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgIDxiPkJvZHk8L2I+CisgICAgICA8L2Rlc2NyaXB0aW9uPgorICAgPC9pdGVtPgorICAgPGl0ZW0KKyAgICAgICAgIHRpdGxlPSJEZWZpbmUgc3BlY2lmaWMgc3Vic3lzdGVtcyI+CisgICAgICA8ZGVzY3JpcHRpb24+CisgICAgICAgICA8Yj5Cb2R5PC9iPgorICAgICAgPC9kZXNjcmlwdGlvbj4KKyAgIDwvaXRlbT4KKzwvY2hlYXRzaGVldD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvUm9ib3RtbFdvcmtGbG93LnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvUm9ib3RtbFdvcmtGbG93LnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jZmM2MDljCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9Sb2JvdG1sV29ya0Zsb3cueG1sCkBAIC0wLDAgKzEsNDk0IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPGNvbXBvc2l0ZUNoZWF0c2hlZXQgbmFtZT0iUm9ib3RNTCBXb3JrRmxvdyBEYXNoQm9hcmQiPgorICAgPHRhc2tHcm91cCBraW5kPSJjaG9pY2UiIG5hbWU9IlJvYm90TUwgV29ya0Zsb3ciIHNraXA9ImZhbHNlIj4KKyAgICAgIDxpbnRybz4KKyAgICAgICAgIFRoZSBnb2FsIG9mIHRoaXMgd29ya2Zsb3cgaXMgdG8gZmFjaWxpdGF0ZSBpdHMgUHJvYmxlbSBwcm92aWRlciB1c2VyIHRvIGNyZWF0ZSBwcm9ibGVtcyBhbmQgaXRzIFNvbHV0aW9uIHByb3ZpZGVyIHVzZXIgdG8gcHJvdmlkZSBzb2x1dGlvbnMgYWxsb3dpbmcgdGhlbSB0byBpbnRlcmFjdCB3aXRoIHRoZSA8Yj5GcmVuY2ggUm9ib3RpYyBQb3J0YWw8L2I+Ljxici8+PGJyLz5BcyBjYW4gYmUgc2VlbiBiZWxvdyBpbiBvcmRlciB0byBjb21wbGV0ZSB0aGlzIHdvcmtmbG93LCB0aGVyZSBpcyBhIG5lZWQgb24gb25lIGhhbmQgdG8gPGI+Y3JlYXRlIGEgUHJvYmxlbTwvYj4gYW5kIG9uIHRoZSBvdGhlciBoYW5kIHRvIDxiPnByb3ZpZGUgYSBzb2x1dGlvbjwvYj4uIEFzIHRoZSBzb2x1dGlvbiBwcm92aWRlciBvZnRlbiB3b3JrcyBpbnNpZGUgaGlzIHByb3BlciBlbnZpcm9ubWVudCBpbiBvcmRlciB0byBjcmVhdGUgdGhlIHNvbHV0aW9uLCB0aGUgcHJvY2VzcyBkZXZlbG9wcyBtb3JlIHRoZSA8Yj5wcm9ibGVtIGNyZWF0aW9uIHdvcmtmbG93PC9iPiB0aGFuIHRoZSA8Yj5zb2x1dGlvbiBjcmVhdGlvbiB3b3JrZmxvdzwvYj4uPGJyLz48YnIvPlRvIGNvbXBsZXRlIGEgUHJvYmxlbSBtZWFucyB0byA8Yj5wdWJsaXNoIGFuIGV4ZWN1dGFibGUgZW52aXJvbm1lbjwvYj4gYWJsZSB0byBiZSB1c2VkIGJ5IHRoZSBzb2x1dGlvbiBwcm92aWRlciB0byB0ZXN0IGhpcyBzb2x1dGlvbiBhbmQgZm9yIHRoZSBQcm9ibGVtIHByb3ZpZGVyIHRvIGFzc2VzcyBpdC4gTW9yZSBkZXRhaWxzIGFyZSB0byBiZSBmb3VuZCB0aHJvdWdob3V0IHRoZSBXb3JrZmxvdyBkZXNjcmlwdGlvbi4KKyAgICAgIDwvaW50cm8+CisgICAgICA8b25Db21wbGV0aW9uPgorICAgICAgICAgPGI+SGF2aW5nIHJlYWNoZWQgdGhlIGVuZCBkb2YgdGhlIHdvcmtmbG93IG1lYW5zIHRoYXQgYXQgbGVhc3Qgb25lIHNvbHV0aW9uIGlzIG5vdyBwcmVzZW50IGVpdGhlciBvbiB5b3VyIGxvY2FsIGRpc2sgKGluIHRoaXMgY2FzZSB3ZSBob3BlIHlvdSB3aWxsIHB1Ymxpc2ggaXQgb24gdGhlIHdlYnNpdGUpIG9yIHB1Ymxpc2hlZCBvbiB0aHRlIHdlYnNpdGUgYW5kIHRoZW4gdGhlIEZyZW5jaCBSb2JvdGljIGNvbW11bml0eSB0aGFuayB5b3UgZm9yIHlvdXIgZWZmb3J0PC9iPgorICAgICAgPC9vbkNvbXBsZXRpb24+CisgICAgICA8dGFza0dyb3VwIGtpbmQ9InNlcXVlbmNlIiBuYW1lPSJQaGFzZSAxOiBQcm9ibGVtIE1vZGVsIFByZXBhcmF0aW9uIiBza2lwPSJmYWxzZSI+CisgICAgICAgICA8aW50cm8+CisgICAgICAgICAgICBUaGUgUHJvYmxlbSBtb2RlbCBpcyBvYnRhaW5lZCB1c2luZyB0aGUgUm9ib3RNTCBwbGF0Zm9ybS4gSXRzIGdvYWwgaXMgdG8gZGVzY3JpYmUgYSBQcm9ibGVtIHRoYXQgYSA8Yj5Qcm9ibGVtIHByb3ZpZGVyPC9iPiB3YW50cyB0byBwcm92aWRlICB0byB0aGUgY29tbXVuaXR5IHVzaW5nIHRoZSBEU0wgKHN0YW5kcyBmb3IgRG9tYWluIFNwZWNpZmljIExhbmd1YWdlKSBhbmQgdXBsb2FkaW5nIGl0IHRvIHRoZSBGcmVuY2ggUm9ib3RpYyBwb3J0YWwuPGJyLz48YnIvPlRvIDxiPmNyZWF0ZSBhIFByb2JsZW08L2I+IGluIHRoaXMgc2NvcGUgbWVhbnMgdG86PGJyLz48Yj5Nb2RlbCB0aGUgZW52aXJvbm1lbnQ8L2I+IGluIHdoaWNoIGl0cyByb2JvdHMgZXZvbHZlLDxici8+PGI+TW9kZWwgdGhlIHJvYm90czwvYj4gd2l0aCByZXNwZWN0IHRvIHRoZWlyIHBoeXNpY2FsIGNoYXJhY3RlcmlzdGljcyw8YnIvPjxiPk1vZGVsIHRoZWlyIHN5c3RlbXM8L2I+IHRoYXQgd2lsbCBwcm92aWRlIHRoZWlyIGJlaGF2aW91cnM8YnIvPjxiPkRlc2NyaWJlIHRoZSBhc3Nlc3NtZW50IGNyaXRlcmlhPC9iPiBpbiBvcmRlciB0byBhbGxvdyB0aGUgc29sdXRpb24gcHJvdmlkZXIgdG8gdW5kZXJzdGFuZCBob3cgaXRzIHNvbHV0aW9uIHdpbGwgYmUgYXNzZXNzZWQ8YnIvPjxici8+QXQgdGhpcyBzdGVwIHRoZSA8Yj5Qcm9ibGVtIHByb3ZpZGVyPC9iPiBoYXMgbm90IHRvIGRlZmluZSBvbiB3aGljaCBhY3R1YWwgcGxhdGZvcm0ocykgKGVudmlyb25tZW50IHNpbXVsYXRvciwgcm9ib3RpYyBtaWRkbGV3YXJlLCBjb21tdW5pY2F0aW9uIG1pZGRsZXdhcmUpIHRoaXMgPGI+UHJvYmxlbSBtb2RlbDwvYj4gd2lsbCBiZSBkZXBsb3llZC4KKyAgICAgICAgIDwvaW50cm8+CisgICAgICAgICA8b25Db21wbGV0aW9uPgorICAgICAgICAgICAgPGI+RmluaXNoaW5nIHRoaXMgcGhhc2UsIHRoZXJlIGlzIGFuIGV4aXN0aW5nIGFuZCBwdWJsaXNoZWQgTW9kZWwgb2YgdGhlIHByb2JsZW0sIGl0IGlzIHRpbWUgdG8gZGVjaWRlIG9uIHdoaWNoIHBsYXRmb3JtIHRvIGRlcGxveSBpdCBhbmQgcHJvY2VlZCB0byB0aGUgbmV3IHN0ZXAuPC9iPgorICAgICAgICAgPC9vbkNvbXBsZXRpb24+CisgICAgICAgICA8dGFza0dyb3VwIGtpbmQ9ImNob2ljZSIgbmFtZT0iU3RlcCAxOiBDcmVhdGUvTG9hZCBQcm9ibGVtIG1vZGVsIiBza2lwPSJmYWxzZSI+CisgICAgICAgICAgICA8aW50cm8+CisgICAgICAgICAgICAgICBUaGlzIHN0ZXAgYWxsb3dzIHRoZSA8Yj5Qcm9ibGVtIHByb3ZpZGVyPC9iPiBlaXRoZXIgdG8gPGI+Y3JlYXRlIGEgbmV3IFByb2JsZW0gbW9kZWw8L2I+LCBvciB0byA8Yj5sb2FkPC9iPiBhbiBleGlzdGluZyBvbmUgZnJvbSBhIDxiPmxvY2FsIGZvbGRlcjwvYj4gb3IgZnJvbSBhIDxiPnJlbW90ZSBzZXJ2ZXI8L2I+IChpdCBpcyBob3cgYW55IHVzZXIgYWNjZXNzIHRoZSA8Yj5GcmVuY2ggUm9ib3RpYyBwb3J0YWw8L2I+KS4KKyAgICAgICAgICAgIDwvaW50cm8+CisgICAgICAgICAgICA8b25Db21wbGV0aW9uPgorICAgICAgICAgICAgICAgPGI+UHJvYmxlbSBwcm92aWRlciBpcyBub3cgcmVhZHkgdG8gd29yayB3aXRoIGhpcyBQcm9ibGVtIG1vZGVsPC9iPgorICAgICAgICAgICAgPC9vbkNvbXBsZXRpb24+CisgICAgICAgICAgICA8dGFzayBraW5kPSJjaGVhdHNoZWV0IiBuYW1lPSJDcmVhdGUgcHJvYmxlbSBtb2RlbCIgc2tpcD0iZmFsc2UiPgorICAgICAgICAgICAgICAgPGludHJvPgorICAgICAgICAgICAgICAgICAgPGI+UHJvYmxlbSBwcm92aWRlcjwvYj4gaXMgd2lsbGluZyB0byBzdGFydCBoaXMgd29yayBmcm9tIHNjcmF0Y2guIFRoZSBvbmx5IHRoaW5nIG9wZW5lZCBoZXJlIGlzIHRoZSA8Yj5Sb2JvdE1MIHBlcnNwZWN0aXZlPC9iPiBvbnRvIGEgZnJlc2ggbmV3IDxiPlJvYm90TUwgcHJvamVjdDwvYj4uCisgICAgICAgICAgICAgICA8L2ludHJvPgorICAgICAgICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgICAgIDxiPlByb2JsZW0gcHJvdmlkZXIgaGFzIG5vdyBvcGVuZWQgdGhlIFJvYm90TUwgcGVyc3BlY3RpdmUgaW50cm9kdWNpbmcgYSBjb21wbGV0ZSBuZXcgUm9ib3RNTCBwcm9qZWN0PC9iPgorICAgICAgICAgICAgICAgPC9vbkNvbXBsZXRpb24+CisgICAgICAgICAgICAgICA8cGFyYW0gbmFtZT0icGF0aCIgdmFsdWU9Ik5ld1Byb2JsZW1Nb2RlbC54bWwiPgorICAgICAgICAgICAgICAgPC9wYXJhbT4KKyAgICAgICAgICAgIDwvdGFzaz4KKyAgICAgICAgICAgIDx0YXNrIGtpbmQ9ImNoZWF0c2hlZXQiIG5hbWU9Ik9wZW4gUHJvYmxlbSBNb2RlbCIgc2tpcD0iZmFsc2UiPgorICAgICAgICAgICAgICAgPGludHJvPgorICAgICAgICAgICAgICAgICAgPGI+Um9ib3RNTCBwcm9qZWN0PC9iPiBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgd29ya3NwYWNlLiB5b3UgaGF2ZSB0byBnbyBvbiBpdCB3aXRoIHlvdXIgbW91c2UgcG9pbnRlciwgcmlnaHQgY2xpY2sgb24gaXQgYW5kIHRoZW4gY2hvb3NlIHRoZSAmcXVvdDtvcGVuJnF1b3Q7IGNob2ljZSBpbiB0aGUgbWVudS4gVGhlIG9ubHkgdGFzayBpcyB0byBvcGVuIHRoZSBjb3JyZWN0IHBlcnNwZWN0aXZlIChzaG91bGQgYmUgdGhlIFJvYm90TUwgcGVyc3BlY3RpdmUpLgorICAgICAgICAgICAgICAgPC9pbnRybz4KKyAgICAgICAgICAgICAgIDxvbkNvbXBsZXRpb24+CisgICAgICAgICAgICAgICAgICA8Yj5Qcm9ibGVtIHByb3ZpZGVyIGhhcyBub3cgb3BlbmVkIHRoZSBSb2JvdE1MIHBlcnNwZWN0aXZlIHVzaW5nIGFuIGV4aXN0aW5nIFJvYm90TUwgcHJvamVjdCAocHJlc2VudCBpbiBoaXMgd29ya3NwYWNlKTwvYj4KKyAgICAgICAgICAgICAgIDwvb25Db21wbGV0aW9uPgorICAgICAgICAgICAgICAgPHBhcmFtIG5hbWU9InBhdGgiIHZhbHVlPSJPcGVuUGVyc3BlY3RpdmUueG1sIj4KKyAgICAgICAgICAgICAgIDwvcGFyYW0+CisgICAgICAgICAgICA8L3Rhc2s+CisgICAgICAgICAgICA8dGFzayBraW5kPSJjaGVhdHNoZWV0IiBuYW1lPSJMb2FkIHByb2JsZW0gbW9kZWwgZnJvbSBsb2NhbCBmb2xkZXIiIHNraXA9ImZhbHNlIj4KKyAgICAgICAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgICAgICAgIDxiPlByb2JsZW0gcHJvdmlkZXI8L2I+IGlzIHdpbGxpbmcgdG8gc3RhcnQgaGlzIHdvcmsgZnJvbSBhbiBleGlzdGluZyBwcm9qZWN0LiBUaGUgb25seSB0aGluZyBvcGVuZWQgaGVyZSBpcyB0aGUgPGI+Um9ib3RNTCBwZXJzcGVjdGl2ZTwvYj4gb250byBhIDxiPlJvYm90TUwgcHJvamVjdDwvYj4gaW1wb3J0ZWQgZnJvbSBhIGxvY2FsIGZvbGRlci4gIElmIHRoZSBwcm9qZWN0IGlzIGFscmVhZHkgcHJlc2VudCBpbiB0aGUgd29ya3NwYWNlIHRoZW4gdGhlIG9ubHkgdGFzayBpcyB0byBvcGVuIHRoZSBSb2JvdE1MIHBlcnNwZWN0aXZlLgorICAgICAgICAgICAgICAgPC9pbnRybz4KKyAgICAgICAgICAgICAgIDxvbkNvbXBsZXRpb24+CisgICAgICAgICAgICAgICAgICA8Yj5Qcm9ibGVtIHByb3ZpZGVyIGhhcyBub3cgb3BlbmVkIHRoZSBSb2JvdE1MIHBlcnNwZWN0aXZlIGludHJvZHVjaW5nIGEgbG9jYWwgKG1lYW5pbmcgaW4gdGhlIGFjY2Vzc2libGUgZmlsZSBzeXN0ZW0pIGV4aXN0aW5nIFJvYm90TUwgcHJvamVjdDwvYj4KKyAgICAgICAgICAgICAgIDwvb25Db21wbGV0aW9uPgorICAgICAgICAgICAgICAgPHBhcmFtIG5hbWU9InBhdGgiIHZhbHVlPSJsb2NhbGxvYWQueG1sIj4KKyAgICAgICAgICAgICAgIDwvcGFyYW0+CisgICAgICAgICAgICA8L3Rhc2s+CisgICAgICAgICAgICA8dGFzayBraW5kPSJjaGVhdHNoZWV0IiBuYW1lPSJMb2FkIHByb2JsZW0gbW9kZWwgZnJvbSBwb3J0YWwiIHNraXA9ImZhbHNlIj4KKyAgICAgICAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgICAgICAgIDxiPlByb2JsZW0gcHJvdmlkZXI8L2I+IGlzIHdpbGxpbmcgdG8gc3RhcnQgaGlzIHdvcmsgZnJvbSBhbiBleGlzdGluZyBwcm9qZWN0LiBIZSBpcyBkb3dubG9hZGluZyBpdCBmcm9tIHRoZSA8Yj5Sb2JvdGljIHBvcnRhbDwvYj4uIFRoZSBvbmx5IHRoaW5nIG9wZW5lZCBoZXJlIGlzIHRoZSA8Yj5Sb2JvdE1MIHBlcnNwZWN0aXZlPC9iPiBvbnRvIGEgPGI+Um9ib3RNTCBwcm9qZWN0PC9iPiBvcGVuZWQgZnJvbSB0aGUgcmVtb3RlIGxvY2F0aW9uLiBUaGlzIG1lYW5zIHNvbWUgc3RlcHMgYXMgc2VlbiB3aGVuIG9wZW5pbmcgdGhlIHRhc2suPGJyLz48YnIvPkl0IG11c3QgYmUgbm90ZWQgdGhhdCB0aGUgPGI+Um9ib3RpYyBwb3J0YWw8L2I+IGhhcyBiZWVuIGRldmVsb3BlZCBpbiBpdHMgZmlyc3QgaW5zdGFuY2UgdGhhbmtzIHRvIHRoZSBQUk9URVVTIHByamVjdCAoZ28gdG8gaHR0cDovL3d3dy5hbnItcHJvdGV1cy5mcikuCisgICAgICAgICAgICAgICA8L2ludHJvPgorICAgICAgICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgICAgIDxiPlByb2JsZW0gcHJvdmlkZXIgaGFzIG5vdyBvcGVuZWQgdGhlIFJvYm90TUwgcGVyc3BlY3RpdmUgaW50cm9kdWNpbmcgYSByZW1vdGUgKG1lYW5pbmcgb24gYSByZW1vdGUgUmVwb3NpdG9yeSkgZXhpc3RpbmcgUm9ib3RNTCBwcm9qZWN0PC9iPgorICAgICAgICAgICAgICAgPC9vbkNvbXBsZXRpb24+CisgICAgICAgICAgICAgICA8cGFyYW0gbmFtZT0icGF0aCIgdmFsdWU9InJlbW90ZUxvYWQueG1sIj4KKyAgICAgICAgICAgICAgIDwvcGFyYW0+CisgICAgICAgICAgICA8L3Rhc2s+CisgICAgICAgICA8L3Rhc2tHcm91cD4KKyAgICAgICAgIDx0YXNrR3JvdXAga2luZD0ic2V0IiBuYW1lPSJTdGVwIDI6IEVkaXQgUHJvYmxlbSBNb2RlbCIgc2tpcD0iZmFsc2UiPgorICAgICAgICAgICAgPGludHJvPgorICAgICAgICAgICAgICAgPGI+SGF2aW5nIG9wZW5lZCB0aGUgcGFweXJ1cyBwZXJzcGVjdGl2ZSwgdGhlIHVzZXIgaXMgbm93IGFibGUgdG8gbW9kZWwgdGhlIGRpZmZlcmVudCBzeXN0ZW1zIG9mIGl0cyBwcm9ibGVtIG1vZGVsIChyb2JvdGljIHN5c3RlbSBhbmQgZW52aXJvbm1lbnQpLjwvYj48YnIvPjxici8+SW4gb3JkZXIgdG8gbW9kZWwgdGhlIFByb2JsZW0gdGhlIGRpZmZlcmVudCBmb2xsb3dpbmcgc3RlcHMgYXJlIG5lZWRlZDo8YnIvPjxici8+PGI+RGVmaW5pdGlvbiBvZiB0aGUgZGF0YXR5cGVzPC9iPiB0aGF0IHdpbGwgYmUgdXNlZCB0aHJvdWdob3V0IHRoZSBtb2RlbCw8YnIvPjxiPkRlZmluaXRpb24gb2YgdGhlIGRpZmZlcmVudCBpbnRlcmZhY2VzPC9iPiBzcGVjaWZ5aW5nIHRoZSBzZXJ2aWNlcyBhdmFpbGFibGUgb24gcG9ydHMgaGF2ZSB0byBiZSBkZWZpbmVkLiBUaGVzZSBzZXJ2aWNlcyBwcm92aWRlcyB0aGUgcHVibGljIHZpZXcgb2Ygc3lzdGVtIHBhcnRzIHRocm91Z2ggdGhlc2Ugc3BlY2lmaWMgc2VydmljZSBwb3J0cyw8YnIvPjxiPkRlZmluaXRpb24gb2YgdGhlIGRpZmZlcmVudCByb2JvdGljIEFwcGxpY2F0aW9uPC9iPiB0aGF0IHdpbGwgbGVhdmUgdGhlbiBvbiw8YnIvPjxiPkRlZmluaXRpb24gb2YgdGhlIGVudmlyb25tZW50PC9iPiAoaXQgbXVzdCBiZSByZW1pbmRlZCB0aGF0IGl0IGluY2x1ZGVzIHRoZSBoYXJkd2FyZSBwYXJ0cyBvZiB0aGUgcm9ib3QgYW5kIGl0cyByb2JvdGljIHN5c3RlbXMpLgorICAgICAgICAgICAgPC9pbnRybz4KKyAgICAgICAgICAgIDxvbkNvbXBsZXRpb24+CisgICAgICAgICAgICAgICA8Yj5UaGUgUHJvYmxlbSBwcm92aWRlciB1c2VyIGlzIG5vdyByZWFkeSB0byB2YWxpZGF0ZSBoaXMgd29yay48L2I+CisgICAgICAgICAgICA8L29uQ29tcGxldGlvbj4KKyAgICAgICAgICAgIDx0YXNrIGtpbmQ9ImNoZWF0c2hlZXQiIG5hbWU9IkltcG9ydC9EZWZpbmUgZGF0YSB0eXBlcyIgc2tpcD0idHJ1ZSI+CisgICAgICAgICAgICAgICA8aW50cm8+CisgICAgICAgICAgICAgICAgICBUaGUgZmlyc3Qgc3RlcCBvZiBkZWZpbmluZyB0aGUgbW9kZWwgY29uc2lzdHMgaW4gaW1wb3J0aW5nIGFuIGV4aXN0aW5nIGxpYnJhcnkgb2YgZGF0YXR5cGVzIG9yIGRlZmluaW5nIHlvdXIgb3duIHNldCBvZiBzcGVjaWZpYyBkYXRhIHR5cGVzLiBEYXRhIHR5cGVzIGFyZSB1c2VkIHRvIGdpdmUgYSB0eXBlIHRvIGRhdGEgZmxvdyBwb3J0cyBvZiByb2JvdGljIHN5c3RlbXMuCisgICAgICAgICAgICAgICA8L2ludHJvPgorICAgICAgICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgICAgIDxiPk5vdyB0aGF0IGRhdGF0eXBlcyBleGlzdHMsIHdlIGNhbiBwcm9jZWVkIHRvIHRoZSBzZXJ2aWNlcyBhc3NvY2lhdGVkIHRvIHRoZSBkaWZmZXJlbnQgc2VydmljZXMgcG9ydHMuPC9iPgorICAgICAgICAgICAgICAgPC9vbkNvbXBsZXRpb24+CisgICAgICAgICAgICAgICA8cGFyYW0gbmFtZT0icGF0aCIgdmFsdWU9IkRhdGFUeXBlc0RlZmluaXRpb24ueG1sIj4KKyAgICAgICAgICAgICAgIDwvcGFyYW0+CisgICAgICAgICAgICA8L3Rhc2s+CisgICAgICAgICAgICA8dGFzayBraW5kPSJjaGVhdHNoZWV0IiBuYW1lPSJEZWZpbmUgaW50ZXJmYWNlcyIgc2tpcD0idHJ1ZSI+CisgICAgICAgICAgICAgICA8aW50cm8+CisgICAgICAgICAgICAgICAgICBJbnRlcmZhY2VzIGFyZSB1c2VkIHRvIHR5cGUgU2VydmljZSBQb3J0cy4gVGhleSBhcmUgY29tcG9zZWQgb2YgYSBzZXQgb2Ygb3BlcmF0aW9ucyB3aXRob3V0IHN0YXRpbmcgaG93IGV4YWN0bHkgdGhleSBhcmUgaW1wbGVtZW50ZWQuCisgICAgICAgICAgICAgICA8L2ludHJvPgorICAgICAgICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgICAgIDxiPldlIGNhbiBub3cgcHJvY2VlZCB0byB0aGUgZGVmaW5pdGlvbiBvZiB0aGUgUm9ib3RpYyBzeXN0ZW1zLjwvYj4KKyAgICAgICAgICAgICAgIDwvb25Db21wbGV0aW9uPgorICAgICAgICAgICAgICAgPHBhcmFtIG5hbWU9InBhdGgiIHZhbHVlPSJJbnRlcmZhY2VzRGVmaW50aW9uLnhtbCI+CisgICAgICAgICAgICAgICA8L3BhcmFtPgorICAgICAgICAgICAgPC90YXNrPgorICAgICAgICAgICAgPHRhc2sga2luZD0iY2hlYXRzaGVldCIgbmFtZT0iRGVmaW5lIHJvYm90aWMgc3lzdGVtcyIgc2tpcD0idHJ1ZSI+CisgICAgICAgICAgICAgICA8aW50cm8+CisgICAgICAgICAgICAgICAgICBJbiB0aGlzIHN0ZXAsIHlvdSB3aWxsIGRlZmluZSB0aGUgc3BlY2lmaWMgcm9ib3RpYyBzeXN0ZW1zIGZvciB0aGUgcHJvYmxlbSBtb2RlbC4gUm9ib3RpYyBzeXN0ZW1zIGNvdWxkIGJlIHJvYm90cyBhbmQgdGhlaXIgc3Vic3lzdGVtcyBzdWNoIGFzIHNwZWNpZmljIGFjdHVhdG9ycywgc2Vuc29ycywgZXRjLgorICAgICAgICAgICAgICAgPC9pbnRybz4KKyAgICAgICAgICAgICAgIDxvbkNvbXBsZXRpb24+CisgICAgICAgICAgICAgICAgICA8Yj5Db25jbHVzaW9uPC9iPgorICAgICAgICAgICAgICAgPC9vbkNvbXBsZXRpb24+CisgICAgICAgICAgICAgICA8cGFyYW0gbmFtZT0icGF0aCIgdmFsdWU9IlJvYm90aWNTeXN0ZW1zRGVmaW5pdGlvbi54bWwiPgorICAgICAgICAgICAgICAgPC9wYXJhbT4KKyAgICAgICAgICAgIDwvdGFzaz4KKyAgICAgICAgICAgIDx0YXNrR3JvdXAga2luZD0ic2V0IiBuYW1lPSJFZGl0IGNvbXBvbmVudHMgYmVoYXZpb3IiIHNraXA9ImZhbHNlIj4KKyAgICAgICAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgICAgICAgIDxiPkludHJvZHVjdGlvbjwvYj4KKyAgICAgICAgICAgICAgIDwvaW50cm8+CisgICAgICAgICAgICAgICA8b25Db21wbGV0aW9uPgorICAgICAgICAgICAgICAgICAgPGI+Q29uY2x1c2lvbjwvYj4KKyAgICAgICAgICAgICAgIDwvb25Db21wbGV0aW9uPgorICAgICAgICAgICAgICAgPHRhc2sga2luZD0iY2hlYXRzaGVldCIgbmFtZT0iRWRpdCBGaW5pdGUgU3RhdGUgTWFjaGluZXMiIHNraXA9ImZhbHNlIj4KKyAgICAgICAgICAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgICAgICAgICAgIDxiPkludHJvZHVjdGlvbjwvYj4KKyAgICAgICAgICAgICAgICAgIDwvaW50cm8+CisgICAgICAgICAgICAgICAgICA8b25Db21wbGV0aW9uPgorICAgICAgICAgICAgICAgICAgICAgPGI+Q29uY2x1c2lvbjwvYj4KKyAgICAgICAgICAgICAgICAgIDwvb25Db21wbGV0aW9uPgorICAgICAgICAgICAgICAgICAgPHBhcmFtIG5hbWU9InBhdGgiIHZhbHVlPSJFZGl0RlNNcy54bWwiPgorICAgICAgICAgICAgICAgICAgPC9wYXJhbT4KKyAgICAgICAgICAgICAgIDwvdGFzaz4KKyAgICAgICAgICAgICAgIDx0YXNrIGtpbmQ9ImNoZWF0c2hlZXQiIG5hbWU9IkVkaXQgYWxnb3JpdGhtaWMgcGFydHMgd2l0aCBBbGYiIHNraXA9ImZhbHNlIj4KKyAgICAgICAgICAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgICAgICAgICAgIDxiPkludHJvZHVjdGlvbjwvYj4KKyAgICAgICAgICAgICAgICAgIDwvaW50cm8+CisgICAgICAgICAgICAgICAgICA8b25Db21wbGV0aW9uPgorICAgICAgICAgICAgICAgICAgICAgPGI+Q29uY2x1c2lvbjwvYj4KKyAgICAgICAgICAgICAgICAgIDwvb25Db21wbGV0aW9uPgorICAgICAgICAgICAgICAgICAgPHBhcmFtIG5hbWU9InBhdGgiIHZhbHVlPSJFZGl0QUxGQmVoYXZpb3IueG1sIj4KKyAgICAgICAgICAgICAgICAgIDwvcGFyYW0+CisgICAgICAgICAgICAgICA8L3Rhc2s+CisgICAgICAgICAgICA8L3Rhc2tHcm91cD4KKyAgICAgICAgICAgIDx0YXNrIGtpbmQ9ImNoZWF0c2hlZXQiIG5hbWU9IkRlZmluZSB0aGUgYXJjaGl0ZWN0dXJlIG9mIHRoZSByb2JvdGljIHN5c3RlbSIgc2tpcD0iZmFsc2UiPgorICAgICAgICAgICAgICAgPGludHJvPgorICAgICAgICAgICAgICAgICAgPGI+SW50cm9kdWN0aW9uPC9iPgorICAgICAgICAgICAgICAgPC9pbnRybz4KKyAgICAgICAgICAgICAgIDxvbkNvbXBsZXRpb24+CisgICAgICAgICAgICAgICAgICA8Yj5Db25jbHVzaW9uPC9iPgorICAgICAgICAgICAgICAgPC9vbkNvbXBsZXRpb24+CisgICAgICAgICAgICAgICA8cGFyYW0gbmFtZT0icGF0aCIgdmFsdWU9IkFyY2hpdGVjdHVyZURlZmludGlvbi54bWwiPgorICAgICAgICAgICAgICAgPC9wYXJhbT4KKyAgICAgICAgICAgIDwvdGFzaz4KKyAgICAgICAgICAgIDx0YXNrIGtpbmQ9ImNoZWF0c2hlZXQiIG5hbWU9IkRlZmluZSB0aGUgZW52aXJvbm1lbnQiIHNraXA9ImZhbHNlIj4KKyAgICAgICAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgICAgICAgIDxiPkludHJvZHVjdGlvbjwvYj4KKyAgICAgICAgICAgICAgIDwvaW50cm8+CisgICAgICAgICAgICAgICA8b25Db21wbGV0aW9uPgorICAgICAgICAgICAgICAgICAgPGI+Q29uY2x1c2lvbjwvYj4KKyAgICAgICAgICAgICAgIDwvb25Db21wbGV0aW9uPgorICAgICAgICAgICAgICAgPHBhcmFtIG5hbWU9InBhdGgiIHZhbHVlPSJFbnZpcm9ubWVudERlZmluaXRpb24ueG1sIj4KKyAgICAgICAgICAgICAgIDwvcGFyYW0+CisgICAgICAgICAgICA8L3Rhc2s+CisgICAgICAgICAgICA8dGFzayBraW5kPSJjaGVhdHNoZWV0IiBuYW1lPSJEZWZpbmUgdGhlIGFzc2Vzc21lbnQgY3JpdGVyaWEiIHNraXA9ImZhbHNlIj4KKyAgICAgICAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgICAgICAgIDxiPkFzIGRlc2NyaWJlZCBpbiBQaGFzZSAxIGludHJvZHVjdGlvbiwgaW4gb3JkZXIgdG8gY3JlYXRlIGEgcHJvYmxlbSB0aGVyZSBpcyBhIG5lZWQgdG8gZGVzY3JpYmUgaG93IHRvIGFzc2VzcyBpdC48L2I+CisgICAgICAgICAgICAgICA8L2ludHJvPgorICAgICAgICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgICAgIDxiPlRvIGFjaGlldmUgdGhpcyBzdGVwIGlzIHRvIGFjaGlldmUgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBwcm9ibGVtLiBJdCBpcyBub3cgcG9zc2libGUgdG8gdmFsaWRhdGUgZXZlcnl0aGluZyBhbmQgdGhlbiB0byBzYXZlIC8gdXBsb2FkIGl0IG9yIGJldHRlciBwdWJsaXNoIGl0LjwvYj4KKyAgICAgICAgICAgICAgIDwvb25Db21wbGV0aW9uPgorICAgICAgICAgICAgICAgPHBhcmFtIG5hbWU9InBhdGgiIHZhbHVlPSJEZWZpbmVBc3Nlc3NtZW50Q3JpdGVyaWEueG1sIj4KKyAgICAgICAgICAgICAgIDwvcGFyYW0+CisgICAgICAgICAgICA8L3Rhc2s+CisgICAgICAgICA8L3Rhc2tHcm91cD4KKyAgICAgICAgIDx0YXNrR3JvdXAga2luZD0iY2hvaWNlIiBuYW1lPSJTdGVwIDM6IFZhbGlkYXRlIFByb2JsZW0gTW9kZWwiIHNraXA9ImZhbHNlIj4KKyAgICAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgICAgIFZhbGlkYXRpb24gbWVhbnMgdG8gdmVyaWZ5IHRoYXQgdGhlIHByb2JsZW0gbW9kZWwgaXMgY29ycmVjdC4gVGhpcyBjb3JyZWN0aW9uIGNvbmNlcm5zIHR3byBhc3BlY3RzOjxici8+PGJyLz4tIHN0cnVjdHVyYWwgYXNwZWN0czogdmVyaWZpY2F0aW9uIGFyZSBtYWRlIHVwb24gdGhlIGNvbnN0cmFpbnRzIHRoYXQgYXJlIHJlcXVlc3RlZCBieSB0aGUgbWV0YS1tb2RlbDxici8+LSBjb25jZXB0dWFsIHZlcmlmaWNhdGlvbjogdGhyb3VnaCBhbGlnbmVtZW50IHRvIHRoZSBERVZTIHRoZW9yeSwgcHJvb2YgaXMgY3JlYXRlZCBvZiB0aGUgY29tcGxldG5lc3MgYW5kIGNvcnJlY3Rpb25zIG9mIHRoZSBjcmVhdGVkIG1vZGVsLgorICAgICAgICAgICAgPC9pbnRybz4KKyAgICAgICAgICAgIDxvbkNvbXBsZXRpb24+CisgICAgICAgICAgICAgICBUbyBjcm9zcyB2YWxpZGF0aW9uIHN0ZXAgbWVhbnMgdGhlIG1vZGVsIGNhbiBiZSBwcm9tb3RlZCB0byB0aGUgd2Vic2l0ZSBvciBhdCBsZWFzdCB0aGF0IGl0IGlzIHRpbWUgdG8gc2EgdmUgYSB3b3JraW5nIGNvcHkuCisgICAgICAgICAgICA8L29uQ29tcGxldGlvbj4KKyAgICAgICAgICAgIDx0YXNrIGtpbmQ9ImNoZWF0c2hlZXQiIG5hbWU9IlN0cnVjdHVyYWwgdmFsaWRhdGlvbiIgc2tpcD0iZmFsc2UiPgorICAgICAgICAgICAgICAgPGludHJvPgorICAgICAgICAgICAgICAgICAgSGVyZSB0aGUgdXNlciBoYXMgdG8gdmFsaWRhdGUgdGhlIHByb2JsZW0gb3IgYSBwYXJ0IG9mIHRoZSBwcm9ibGVtIG1vZGVsLgorICAgICAgICAgICAgICAgPC9pbnRybz4KKyAgICAgICAgICAgICAgIDxvbkNvbXBsZXRpb24+CisgICAgICAgICAgICAgICAgICA8Yj5Db25jbHVzaW9uPC9iPgorICAgICAgICAgICAgICAgPC9vbkNvbXBsZXRpb24+CisgICAgICAgICAgICAgICA8cGFyYW0gbmFtZT0icGF0aCIgdmFsdWU9IlBiU3RydWN0dXJhbFZhbGlkYXRpb24ueG1sIj4KKyAgICAgICAgICAgICAgIDwvcGFyYW0+CisgICAgICAgICAgICA8L3Rhc2s+CisgICAgICAgICAgICA8dGFzayBraW5kPSJjaGVhdHNoZWV0IiBuYW1lPSJCZWhhdmlvcmFsIHZhbGlkYXRpb24iIHNraXA9ImZhbHNlIj4KKyAgICAgICAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgICAgICAgIEhlcmUsIHRoZSB1c2VyIHdpbGwgdmVyaWZ5IHRoYXQgaXRzIHByb2JsZW0gbW9kZWwgY2FuIGJlIG1hcHBlZCBvbnRvIHRoZSBERVZTIHRoZW9yeSBvZiBzeXN0ZW0gbW9kZWxpbmcuCisgICAgICAgICAgICAgICA8L2ludHJvPgorICAgICAgICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgICAgIDxiPkNvbmNsdXNpb248L2I+CisgICAgICAgICAgICAgICA8L29uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgIDxwYXJhbSBuYW1lPSJwYXRoIiB2YWx1ZT0iUGJCZWhhdmlvcmFsVmFsaWRhdGlvbi54bWwiPgorICAgICAgICAgICAgICAgPC9wYXJhbT4KKyAgICAgICAgICAgIDwvdGFzaz4KKyAgICAgICAgICAgIDx0YXNrIGtpbmQ9ImNoZWF0c2hlZXQiIG5hbWU9Ik5vIHZhbGlkYXRpb24iIHNraXA9ImZhbHNlIj4KKyAgICAgICAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgICAgICAgIEluIG9yZGVyIHRvIHNhdmUgaXRzIHVuZmluaXNoZWQgd29yaywgdGhlIHVzZXIgY2FuIGNoZWNrIG91dCB0aGUg4oCcbm8gdmFsaWRhdGlvbuKAnSBjYXNlIGFuZCAgcHJvY2VlZCB0byB0aGUgZm9sbG93aW5nIHN0ZXAuCisgICAgICAgICAgICAgICA8L2ludHJvPgorICAgICAgICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgICAgIDxiPkNvbmNsdXNpb248L2I+CisgICAgICAgICAgICAgICA8L29uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgIDxwYXJhbSBuYW1lPSJwYXRoIiB2YWx1ZT0iUGJOb1ZhbGlkYXRpb24ueG1sIj4KKyAgICAgICAgICAgICAgIDwvcGFyYW0+CisgICAgICAgICAgICA8L3Rhc2s+CisgICAgICAgICA8L3Rhc2tHcm91cD4KKyAgICAgICAgIDx0YXNrR3JvdXAga2luZD0iY2hvaWNlIiBuYW1lPSJTdGVwIDQ6IFNhdmUvVXBsb2FkIFByb2JsZW0iIHNraXA9ImZhbHNlIj4KKyAgICAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgICAgIFRoaXMgc3RlcCBhbGxvd3MgdGhlIE1vZGVsIHByb2JsZW0gdXNlciB0byBlaXRoZXIgc2F2ZSBoaXMgd29yayBpbiBhbiBpbnRlcm1lZGlhdGUgc3RlcCBvciB0byBwdWJsaXNoIGl0LiBQdWJsaWNhdGlvbiBjYW4gYmUgZG9uZSBlaXRoZXIgdG8gYSBsb2NhbCBmb2xkZXIgb3IgdG8gdGhlIEZyZW5jaCBjb21tdW5pdHkgUm9ib3RpYyBwb3J0YWwuCisgICAgICAgICAgICA8L2ludHJvPgorICAgICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgIDxiPkluIG9yZGVyIHRvIGVuZCB0aGlzIHN0ZXAsIGl0IGlzIG5vdyB0aW1lIHRvIGNsb3NlIHRoZSBNb2RlbCBwcm9ibGVtIG1vZGVsbGluZy48L2I+CisgICAgICAgICAgICA8L29uQ29tcGxldGlvbj4KKyAgICAgICAgICAgIDx0YXNrIGtpbmQ9ImNoZWF0c2hlZXQiIG5hbWU9IlNhdmUgdG8gbG9jYWwgZm9sZGVyIiBza2lwPSJmYWxzZSI+CisgICAgICAgICAgICAgICA8aW50cm8+CisgICAgICAgICAgICAgICAgICA8Yj5JbnRyb2R1Y3Rpb248L2I+CisgICAgICAgICAgICAgICA8L2ludHJvPgorICAgICAgICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgICAgIDxiPkNvbmNsdXNpb248L2I+CisgICAgICAgICAgICAgICA8L29uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgIDxwYXJhbSBuYW1lPSJwYXRoIiB2YWx1ZT0iUHJvYmxlbVNhdmUueG1sIj4KKyAgICAgICAgICAgICAgIDwvcGFyYW0+CisgICAgICAgICAgICA8L3Rhc2s+CisgICAgICAgICAgICA8dGFzayBraW5kPSJjaGVhdHNoZWV0IiBuYW1lPSJVcGxvYWQgdGhlIG1vZGVsIiBza2lwPSJmYWxzZSI+CisgICAgICAgICAgICAgICA8aW50cm8+CisgICAgICAgICAgICAgICAgICBUaGUgdXNlciBjb3VsZCB1cGxvYWQgdGhlIHByb2JsZW0gbW9kZWwgdG8gdGhlIHJlbW90ZSBzZXJ2ZXIuCisgICAgICAgICAgICAgICA8L2ludHJvPgorICAgICAgICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgICAgIDxiPkNvbmNsdXNpb248L2I+CisgICAgICAgICAgICAgICA8L29uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgIDxwYXJhbSBuYW1lPSJwYXRoIiB2YWx1ZT0iUGJVcGxvYWQueG1sIj4KKyAgICAgICAgICAgICAgIDwvcGFyYW0+CisgICAgICAgICAgICA8L3Rhc2s+CisgICAgICAgICA8L3Rhc2tHcm91cD4KKyAgICAgICAgIDx0YXNrR3JvdXAga2luZD0ic2V0IiBuYW1lPSJTdGVwIDU6IENsb3NlIFByb2JsZW0iIHNraXA9ImZhbHNlIj4KKyAgICAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgICAgIFRvIGNsb3NlIHRoZSBwcm9ibGVtIG1lYW5zIHRvIHB1dCBpbnRvIGVmZmVjdCBwb3N0IHByb2Nlc3NpbmcgYWN0aW9ucyBzdWNoIGFzIHRyeWluZyB0byBjb21waWxlIHRoZSBnZW5lcmF0ZWQgc2ltdWxhdGlvbiBpZiBwb3NzaWJsZS4KKyAgICAgICAgICAgIDwvaW50cm8+CisgICAgICAgICAgICA8b25Db21wbGV0aW9uPgorICAgICAgICAgICAgICAgPGI+SXQgaXMgbm93IHRpbWUgZWl0aGVyIHRvIHJlc3Qgb3IgdG8gZ28gdGhyb3VnaCB0aGUgZGVwbG95bWVudCBwaGFzZSB0aGF0IHdpbGwgYWxsb3cgdG8gcHJvY2VlZCBvbnRvIHRoZSBQcm9ibGVtIGNyZWF0aW9uLjwvYj4KKyAgICAgICAgICAgIDwvb25Db21wbGV0aW9uPgorICAgICAgICAgICAgPHRhc2sga2luZD0iY2hlYXRzaGVldCIgbmFtZT0iQ2xvc2UgdGhlIHByb2JsZW0gbW9kZWwiIHNraXA9ImZhbHNlIj4KKyAgICAgICAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgICAgICAgIDxiPkludHJvZHVjdGlvbjwvYj4KKyAgICAgICAgICAgICAgIDwvaW50cm8+CisgICAgICAgICAgICAgICA8b25Db21wbGV0aW9uPgorICAgICAgICAgICAgICAgICAgPGI+Q29uY2x1c2lvbjwvYj4KKyAgICAgICAgICAgICAgIDwvb25Db21wbGV0aW9uPgorICAgICAgICAgICAgICAgPHBhcmFtIG5hbWU9InBhdGgiIHZhbHVlPSJQYkNsb3NlLnhtbCI+CisgICAgICAgICAgICAgICA8L3BhcmFtPgorICAgICAgICAgICAgPC90YXNrPgorICAgICAgICAgPC90YXNrR3JvdXA+CisgICAgICAgICA8dGFzayBraW5kPSJjaGVhdHNoZWV0IiBuYW1lPSJTdGVwIDY6IFB1Ymxpc2ggUHJvYmxlbSBNb2RlbCIgc2tpcD0idHJ1ZSI+CisgICAgICAgICAgICA8aW50cm8+CisgICAgICAgICAgICAgICA8Yj5JbnRyb2R1Y3Rpb248L2I+CisgICAgICAgICAgICA8L2ludHJvPgorICAgICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgIDxiPkNvbmNsdXNpb248L2I+CisgICAgICAgICAgICA8L29uQ29tcGxldGlvbj4KKyAgICAgICAgICAgIDxwYXJhbSBuYW1lPSJwYXRoIiB2YWx1ZT0iUHVibGlzaFByb2JsZW0ueG1sIj4KKyAgICAgICAgICAgIDwvcGFyYW0+CisgICAgICAgICA8L3Rhc2s+CisgICAgICA8L3Rhc2tHcm91cD4KKyAgICAgIDx0YXNrR3JvdXAga2luZD0ic2V0IiBuYW1lPSJQaGFzZSAyOiBQcm9ibGVtIE1vZGVsIERlcGxveW1lbnQiIHNraXA9ImZhbHNlIj4KKyAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgIEluIG9yZGVyIHRvIGtub3cgaG93IHRvIGdlbmVyYXRlIGEgc2ltdWxhdG9yIGFuZCBldmVudHVhbGx5IGNvbmZpZ3VyYXRpb24gZmlsZXMgb3IgaWYgeW91IG9ubHkgd2FudCB0byBtYXAgeW91ciBSb2JvdGljIHN5c3RlbXMgb250byBhbiBleGlzdGluZyByb2JvdCwgdGhlcmUgaXMgYSBuZWVkIHRvIHRlbGwgb24gd2hhdCB0YXJnZXQgdGhlIGRpZmZlcmVudCBwYXJ0cyBvZiB0aGUgUHJvYmxlbSBtb2RlbCB3aWxsIGJlIGRlcGxveWVkLjxici8+VGh1cyBUaGlzIHBoYXNlIGFsbG93cyB0aGUgUHJvYmxlbSBwcm92aWRlciB1c2VyIHRvIG1hcCBpdHMgbW9kZWwgaW50byB0aGUgZGlmZmVyZW50IGFjdHVhbCB0YXJnZXRzIGNvbmNlcm5lZCAocm9ib3RpYyBtaWRkbGV3YXJlcywgZW52aXJvbm1lbnQgc2ltdWxhdG9ycywgZXRjKS48YnIvPkFwYXJ0IGZyb20gdGhlIG9wZW4vbG9hZCBNb2RlbCwgdGhlIHJlbWFpbmluZyBzdGVwcyBhcmUgdG8gZWRpdCB0aGUgZGVwbG95ZW1lbnQgYW5kIHRvIHZhbGlkYXRlIGl0IGJlZm9yZSBzYXZpbmcgYW5kIHB1Ymxpc2hpbmcgdGhlIHdvcmsgdG8gdGhlIHBvcnRhbCBvciBsb2NhbGx5LgorICAgICAgICAgPC9pbnRybz4KKyAgICAgICAgIDxvbkNvbXBsZXRpb24+CisgICAgICAgICAgICBEdXJpbmcgdGhpcyBwaGFzZSwgdGhlIFByb2JsZW0gcHJvdmlkZXIgdXNlciBoYXMgZGVzY3JpYmVkIHdoYXQgd2lsbCBiZSB0aGUgbWFwcGluZyBvZiB0aGUgbW9kZWwuIEl0IGlzIG5vdyBwb3NzaWJsZSB0byBwcm9jZWVkIHRvIHRoZSBnZW5lcmF0aW9uIHBoYXNlIGloZSAgb3JkZXIgdG8gY29tcGxldGUgdGhlIFByb2JsZW0gY3JlYXRpb24uCisgICAgICAgICA8L29uQ29tcGxldGlvbj4KKyAgICAgICAgIDx0YXNrR3JvdXAga2luZD0iY2hvaWNlIiBuYW1lPSJTdGVwIDE6IE9wZW4vTG9hZCBwcm9ibGVtIG1vZGVsIiBza2lwPSJmYWxzZSI+CisgICAgICAgICAgICA8aW50cm8+CisgICAgICAgICAgICAgICBQaGFzZSAyIG1lYW5zIFRIRVJFIElTIGFuIGV4aXN0aW5nIE1vZGVsIHByb2JsZW0gYWxyZWFkeSB2YWxpZGF0ZSBhbmQgdGh1cyBvbiB3aGljaCB3ZSBjYW4gYmVnaW4gdG8gYXBwbHkgYSBkZXBsb3llbWVudCBkZXNjcmlwdGlvbi4gSXQgZXhwbGFpbnMgd2h5IG5vdGhpbmcgaXMgY3JlYXRlZCBhdCB0aGlzIHN0ZXAgYnV0IG9ubHkgb3BlbmVkIGlmIGxvY2FsIG9yIGxvYWRlZCBpZiByZW1vdGUgKG1lYW5pbmcgZnJvbWwgdGhlIHBvcnRhbCkuCisgICAgICAgICAgICA8L2ludHJvPgorICAgICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgIDxiPml0IGlzIG5vdyB0aW1lIHRvIGVkaXQgdGhlIGRlcGxveWVtZW50PC9iPgorICAgICAgICAgICAgPC9vbkNvbXBsZXRpb24+CisgICAgICAgICAgICA8dGFzayBraW5kPSJjaGVhdHNoZWV0IiBuYW1lPSJDcmVhdGUgYSBuZXcgZGVwbG95ZWQgcHJvYmxlbSBtb2RlbCIgc2tpcD0iZmFsc2UiPgorICAgICAgICAgICAgICAgPGludHJvPgorICAgICAgICAgICAgICAgICAgPGI+SW50cm9kdWN0aW9uPC9iPgorICAgICAgICAgICAgICAgPC9pbnRybz4KKyAgICAgICAgICAgICAgIDxvbkNvbXBsZXRpb24+CisgICAgICAgICAgICAgICAgICA8Yj5Db25jbHVzaW9uPC9iPgorICAgICAgICAgICAgICAgPC9vbkNvbXBsZXRpb24+CisgICAgICAgICAgICAgICA8cGFyYW0gbmFtZT0icGF0aCIgdmFsdWU9Ik5ld1Byb2JsZW1Nb2RlbC54bWwiPgorICAgICAgICAgICAgICAgPC9wYXJhbT4KKyAgICAgICAgICAgIDwvdGFzaz4KKyAgICAgICAgICAgIDx0YXNrIGtpbmQ9ImNoZWF0c2hlZXQiIG5hbWU9IkxvYWQgYSBsb2NhbCBkZXBsb3llZCBwcm9ibGVtIG1vZGVsIiBza2lwPSJmYWxzZSI+CisgICAgICAgICAgICAgICA8aW50cm8+CisgICAgICAgICAgICAgICAgICA8Yj5JbnRyb2R1Y3Rpb248L2I+CisgICAgICAgICAgICAgICA8L2ludHJvPgorICAgICAgICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgICAgIDxiPkNvbmNsdXNpb248L2I+CisgICAgICAgICAgICAgICA8L29uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgIDxwYXJhbSBuYW1lPSJwYXRoIiB2YWx1ZT0iTmV3UHJvYmxlbU1vZGVsLnhtbCI+CisgICAgICAgICAgICAgICA8L3BhcmFtPgorICAgICAgICAgICAgPC90YXNrPgorICAgICAgICAgICAgPHRhc2sga2luZD0iY2hlYXRzaGVldCIgbmFtZT0iTG9hZCBhIHJlbW90ZSBkZXBsb3llZCBwcm9ibGVtIG1vZGVsIiBza2lwPSJmYWxzZSI+CisgICAgICAgICAgICAgICA8aW50cm8+CisgICAgICAgICAgICAgICAgICA8Yj5JbnRyb2R1Y3Rpb248L2I+CisgICAgICAgICAgICAgICA8L2ludHJvPgorICAgICAgICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgICAgIDxiPkNvbmNsdXNpb248L2I+CisgICAgICAgICAgICAgICA8L29uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgIDxwYXJhbSBuYW1lPSJwYXRoIiB2YWx1ZT0iTmV3UHJvYmxlbU1vZGVsLnhtbCI+CisgICAgICAgICAgICAgICA8L3BhcmFtPgorICAgICAgICAgICAgPC90YXNrPgorICAgICAgICAgPC90YXNrR3JvdXA+CisgICAgICAgICA8dGFza0dyb3VwIGtpbmQ9ImNob2ljZSIgbmFtZT0iU3RlcCAyOiBFZGl0IGRlcGxveW1lbnQiIHNraXA9ImZhbHNlIj4KKyAgICAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgICAgIER1cmluZyB0aGlzIHN0ZXAgdGhlIGRlcGxveWVtZW50IHdpbGwgaGF2ZSB0byBiZSBkb25lIG1lYW5pbmcgdG8gc3BsaXQgY29tcG9uZW50cyBiZXR3ZWVuIFJvYm90aWMgbWlkZGxld2FyZXMgKHBvdGVudGlhbGx5IG1vcmUgdGhhbiBvbmUpIGFuZCBFbnZpcm9ubWVudCBzaW11bGF0b3JzLiBJbiBSb2JvdCBvbmx5IGRlcGxveWVtZW50IChtZWFuaW5nIHRoZXJlIGlzIG5vIG5lZWQgZm9yIGFuIEVudmlyb25tZW50IHNpbXVsYXRvciBhcyB0aGVyZSBpcyBhIHJlYWwgcm9ib3QgdG8gZGVwbG95IHRoZSBzeXN0ZW0gb24pLCB0aGUgJnF1b3Q7RGVwbG95IG9uIGVudmlyb25tZW50IHN0ZXAmcXVvdDsgY2FuIGJlIHNraXBwZWQuCisgICAgICAgICAgICA8L2ludHJvPgorICAgICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgIEl0IGlzIG5vdyB0aW1lIHRvIHZhbGlkYXRlIHRoZSBkZXBsb3llbWVudCBoZXJlIGJlZm9yZSB3b3JrZWQuCisgICAgICAgICAgICA8L29uQ29tcGxldGlvbj4KKyAgICAgICAgICAgIDx0YXNrIGtpbmQ9ImNoZWF0c2hlZXQiIG5hbWU9IkRlcGxveSBvbiByb2JvdGljIG1pZGRsZXdhcmUiIHNraXA9ImZhbHNlIj4KKyAgICAgICAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgICAgICAgIDxiPkludHJvZHVjdGlvbjwvYj4KKyAgICAgICAgICAgICAgIDwvaW50cm8+CisgICAgICAgICAgICAgICA8b25Db21wbGV0aW9uPgorICAgICAgICAgICAgICAgICAgPGI+Q29uY2x1c2lvbjwvYj4KKyAgICAgICAgICAgICAgIDwvb25Db21wbGV0aW9uPgorICAgICAgICAgICAgPC90YXNrPgorICAgICAgICAgICAgPHRhc2sga2luZD0iY2hlYXRzaGVldCIgbmFtZT0iRGVwbG95IG9uIGVudmlyb25tZW50IHNpbXVsYXRvciIgc2tpcD0iZmFsc2UiPgorICAgICAgICAgICAgICAgPGludHJvPgorICAgICAgICAgICAgICAgICAgPGI+SW50cm9kdWN0aW9uPC9iPgorICAgICAgICAgICAgICAgPC9pbnRybz4KKyAgICAgICAgICAgICAgIDxvbkNvbXBsZXRpb24+CisgICAgICAgICAgICAgICAgICA8Yj5Db25jbHVzaW9uPC9iPgorICAgICAgICAgICAgICAgPC9vbkNvbXBsZXRpb24+CisgICAgICAgICAgICA8L3Rhc2s+CisgICAgICAgICA8L3Rhc2tHcm91cD4KKyAgICAgICAgIDx0YXNrR3JvdXAga2luZD0iY2hvaWNlIiBuYW1lPSJTdGVwIDM6IFZhbGlkYXRlIGRlcGxveW1lbnQiIHNraXA9ImZhbHNlIj4KKyAgICAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgICAgIEFzIGluIHRoZSBNb2RlbCBwcm9ibGVtIHByZXBhcmF0aW9uLCB0aGUgZGVwbG95ZW1lbnQsIGJlaW5nIGEgbW9kZWwgaXRzZWxmLCBjYW4gYmUgdmFsaWRhdGVkIGVpdGhlciBzdHJ1Y3R1cmFsbHksIHVzaW5nIHRoZSBtZXRhLW1vZGVsIGltcGxlbWVudGVkIGNvbnN0cmFpbnRzLCBvciBiZWhhdmlvdXJhbGx5LCB1c2luZyB0aGUgY2FwYWJpbGl0eSB0byBtYXAgb250byB0aGUgREVWUyB0aGVvcnkgdGhlIG1vZGVsIHRodXMgY3JlYXRlZC4KKyAgICAgICAgICAgIDwvaW50cm8+CisgICAgICAgICAgICA8b25Db21wbGV0aW9uPgorICAgICAgICAgICAgICAgV2hhdGV2ZXIgdGhlIHZhbGlkYXRpb24gZG9uZSwgaWYgc3VjY2VzZnVsIGVub3VnaCBpdCBpcyB0aW1lIHRvIHByb2NlZWQgdG8gc2F2ZS91cGxvYWQgc3RlcC4KKyAgICAgICAgICAgIDwvb25Db21wbGV0aW9uPgorICAgICAgICAgICAgPHRhc2sga2luZD0iY2hlYXRzaGVldCIgbmFtZT0iU3RydWN0dXJhbCB2YWxpZGF0aW9uIiBza2lwPSJmYWxzZSI+CisgICAgICAgICAgICAgICA8aW50cm8+CisgICAgICAgICAgICAgICAgICA8Yj5JbnRyb2R1Y3Rpb248L2I+CisgICAgICAgICAgICAgICA8L2ludHJvPgorICAgICAgICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgICAgIDxiPkNvbmNsdXNpb248L2I+CisgICAgICAgICAgICAgICA8L29uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgIDxwYXJhbSBuYW1lPSJwYXRoIiB2YWx1ZT0iRGVwbG95bWVudFN0cnVjdHVyYWxWYWxpZGF0aW9uLnhtbCI+CisgICAgICAgICAgICAgICA8L3BhcmFtPgorICAgICAgICAgICAgPC90YXNrPgorICAgICAgICAgICAgPHRhc2sga2luZD0iY2hlYXRzaGVldCIgbmFtZT0iQmVoYXZpb3JhbCB2YWxpZGF0aW9uIiBza2lwPSJmYWxzZSI+CisgICAgICAgICAgICAgICA8aW50cm8+CisgICAgICAgICAgICAgICAgICA8Yj5jcsOpdGFpb24gZCZhcG9zO3VuZSBzaW11bGF0aW9uIHBhciBERVZTICh2w6lyaWZpY2F0aW9uIGRlIGwmYXBvcztleGlzdGVuY2UgZGUgbGllbnMgZW50cmUgY29tcG9zYW50cyk8L2I+CisgICAgICAgICAgICAgICA8L2ludHJvPgorICAgICAgICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgICAgIDxiPkNvbmNsdXNpb248L2I+CisgICAgICAgICAgICAgICA8L29uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgIDxwYXJhbSBuYW1lPSJwYXRoIiB2YWx1ZT0iTmV3UHJvYmxlbU1vZGVsLnhtbCI+CisgICAgICAgICAgICAgICA8L3BhcmFtPgorICAgICAgICAgICAgPC90YXNrPgorICAgICAgICAgICAgPHRhc2sga2luZD0iY2hlYXRzaGVldCIgbmFtZT0iTm8gdmFsaWRhdGlvbiIgc2tpcD0iZmFsc2UiPgorICAgICAgICAgICAgICAgPGludHJvPgorICAgICAgICAgICAgICAgICAgPGI+SW50cm9kdWN0aW9uPC9iPgorICAgICAgICAgICAgICAgPC9pbnRybz4KKyAgICAgICAgICAgICAgIDxvbkNvbXBsZXRpb24+CisgICAgICAgICAgICAgICAgICA8Yj5Db25jbHVzaW9uPC9iPgorICAgICAgICAgICAgICAgPC9vbkNvbXBsZXRpb24+CisgICAgICAgICAgICAgICA8cGFyYW0gbmFtZT0icGF0aCIgdmFsdWU9IkRlcGxveW1lbnROb1ZhbGlkYXRpb24ueG1sIj4KKyAgICAgICAgICAgICAgIDwvcGFyYW0+CisgICAgICAgICAgICA8L3Rhc2s+CisgICAgICAgICA8L3Rhc2tHcm91cD4KKyAgICAgICAgIDx0YXNrR3JvdXAga2luZD0iY2hvaWNlIiBuYW1lPSJTdGVwIDQ6IFNhdmUvVXBsb2FkIGRlcGxveWVkIHByb2JsZW0gbW9kZWwiIHNraXA9ImZhbHNlIj4KKyAgICAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgICAgIDxiPkludHJvZHVjdGlvbjwvYj4KKyAgICAgICAgICAgIDwvaW50cm8+CisgICAgICAgICAgICA8b25Db21wbGV0aW9uPgorICAgICAgICAgICAgICAgPGI+Q29uY2x1c2lvbjwvYj4KKyAgICAgICAgICAgIDwvb25Db21wbGV0aW9uPgorICAgICAgICAgICAgPHRhc2sga2luZD0iY2hlYXRzaGVldCIgbmFtZT0iU2F2ZSB0byBsb2NhbCBmb2xkZXIiIHNraXA9ImZhbHNlIj4KKyAgICAgICAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgICAgICAgIDxiPkludHJvZHVjdGlvbjwvYj4KKyAgICAgICAgICAgICAgIDwvaW50cm8+CisgICAgICAgICAgICAgICA8b25Db21wbGV0aW9uPgorICAgICAgICAgICAgICAgICAgPGI+Q29uY2x1c2lvbjwvYj4KKyAgICAgICAgICAgICAgIDwvb25Db21wbGV0aW9uPgorICAgICAgICAgICAgICAgPHBhcmFtIG5hbWU9InBhdGgiIHZhbHVlPSJEZXBsb3ltZW50U2F2ZS54bWwiPgorICAgICAgICAgICAgICAgPC9wYXJhbT4KKyAgICAgICAgICAgIDwvdGFzaz4KKyAgICAgICAgICAgIDx0YXNrIGtpbmQ9ImNoZWF0c2hlZXQiIG5hbWU9IlVwbG9hZCB0aGUgZGVwbG95ZWQgc3lzdGVtIiBza2lwPSJmYWxzZSI+CisgICAgICAgICAgICAgICA8aW50cm8+CisgICAgICAgICAgICAgICAgICA8Yj5JbnRyb2R1Y3Rpb248L2I+CisgICAgICAgICAgICAgICA8L2ludHJvPgorICAgICAgICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgICAgIDxiPkNvbmNsdXNpb248L2I+CisgICAgICAgICAgICAgICA8L29uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgIDxwYXJhbSBuYW1lPSJwYXRoIiB2YWx1ZT0iRGVwbG95bWVudFVwbG9hZC54bWwiPgorICAgICAgICAgICAgICAgPC9wYXJhbT4KKyAgICAgICAgICAgIDwvdGFzaz4KKyAgICAgICAgIDwvdGFza0dyb3VwPgorICAgICAgPC90YXNrR3JvdXA+CisgICAgICA8dGFza0dyb3VwIGtpbmQ9InNldCIgbmFtZT0iUGhhc2UgMzogUHJvYmxlbSBnZW5lcmF0aW9uIiBza2lwPSJmYWxzZSI+CisgICAgICAgICA8aW50cm8+CisgICAgICAgICAgICBQcm9ibGVtIGdlbmVyYXRpb24gaXMgdGhlIHBoYXNlIHdoZXJlIHRoZSBQcm9ibGVtIHByb3ZpZGVyIHVzZXIgY29uc29saWRhdGUgaGlzIHdvcmsgYW5kIGNyZWF0ZSBhIHNpbXVsYXRvciBtYW5kYXRvcnkgZm9yIHRoZSBTb2x1dGlvbiBwcm92aWRlciB0byBiZSBhYmxlIHRvIHRlc3QgaGlzIHNvbHV0aW9uLiBUaGUgc2ltdWxhdG9yIGluY2x1ZGVzOjxici8+PGJyLz4tIHRoZSBFbnZpcm9ubWVudCBzaW11bGF0b3IgKGNvbXByaXNpbmcgdGhlIHJvYm90IHBsYXRmb3JtIGFzcGVjdHMpPGJyLz4tIHRoZSBjb21tdW5pY2F0aW9uIG1pZGRsZXdhcmUgKGluIHRoaXMgcGxhdGZvcm0gaW5zdGFuY2UsIFJPUyBtaWRkbGV3YXJlIGlzIHVzZWQpPGJyLz4tIGFuZCB0aGUgcm9ib3QocykmYXBvczsgc3lzdGVtKHMpIHdoaWNoIHJlbGllcyB1cG9uIGEgcm9ib3RpYyBtaWRkbGV3YXJlIChleGlzdGluZyBpbXBsZW1lbnRhdGlvbiBhcmUgQVJST0NBTSwgT1JPQ09TLCBSVC1NQVBTIGFuZCBVUkJJKTxici8+PGJyLz5JZiB0aGUgUHJvYmxlbSBpcyBkaXJlY3RseSBjb25jZXJuaW5nIGEgcm9ib3RpYyBwbGF0Zm9ybSBhdmFpbGFibGUgdG8gdGhlIFByb2JsZWVtIHByb3ZpZGVyIGFzIHdhbGwgYXMgdGhlIFNvbHV0aW9uIHByb3ZpZGluZywgdGhlbiB0aGUgbGFzdCB0d28gc3RlcHMgY2FuIGJlIHNpbXBsaWZpZWQgYXMgdGhlcmUgaXMgb25seSB0aGUgbmVlZCB0byBnZW5lcmF0ZSB0aHIgcm9ib3RpYyBzeXN0ZW0uPGJyLz48YnIvPkZpbmFsaXNpbmcgdGhpcyBwaGFzZSBtZWFucyBmb3IgdGhlIFByb2JsZW0gcHJvdmlkZXIgdXNlciB0byBlbmQgaXRzIHRhc2suCisgICAgICAgICA8L2ludHJvPgorICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgIDxiPkFzIGl0IGlzLCB0aGVyZSBpcyBub3cgYSBwcm9ibGVtIGV4aXN0aW5nIG9uIHRoZSBwb3J0YWwgb3IgbG9jYWxseSB0byB0aGUgZGlzay4gSWYgaXQgaGFzIGJlZW4gcHVibGlzaGVkIG9uIHRoZSBwb3J0YWwgdGhlbiB0aGUgU29sdXRpb24gcHJvdmlkZXIgdXNlciBpcyBhYmxlIHRvIHVzZSB0aGlzIFByb2JlbG0gZGlyZWN0bHkgZnJvbSB0aGUgcG9ydGFsIGFmdGVyIGhhdmluZyBiZWVuIHJlZ2lzdGVyZWQsIGlmIG5vdCB0aGUgbGFzdCBwYXJ0IGlzIHRvIHByb3ZpZGUgdGhlIFByb2JsZW0gdGhyb3VnaCB0aGUgZXhwb3J0IGZ1bmN0aW9uIGFuZCBvbnRvIGEga2V5IGZvciBpbnN0YW5jZS48L2I+CisgICAgICAgICA8L29uQ29tcGxldGlvbj4KKyAgICAgICAgIDx0YXNrIGtpbmQ9ImNoZWF0c2hlZXQiIG5hbWU9IlN0ZXAxOiBnZW5lcmF0ZSBzaW11bGF0b3IiIHNraXA9ImZhbHNlIj4KKyAgICAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgICAgIER1cmluZyB0aGlzIHN0ZXAsIHRoZSB1c2VyIGdlbmVyYXRlIHRoZSBQUk9URVVTIHNpbXVsYXRvciBjb3JyZXNwb25kaW5nIHRvIGl0cyBwcm9ibGVtIG1vZGVsIGFuZCBhIGNob3NlbiBkZXBsb3ltZW50LiBBdCB0aGlzIHN0ZXAsIHRoZSBzaW11bGF0b3IgYXBwbGljYXRpb24gY291bGQgYmUgbm9uIGV4ZWN1dGFibGUgYXMgdGhlcmUgaXMgcHJvYmFibHkgZm9yIHNvbWUgb2YgdGhlIHVuZGVybHlpbmcgdG9vbHMgY29tcGlsYXRpb24gdG8gcnVuIGFuZCBwZXJoYXBzIGNvbmZpZ3VyYXRpb24ocykgdG8gYXBwbHkuCisgICAgICAgICAgICA8L2ludHJvPgorICAgICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgIDxiPkNvbmNsdXNpb248L2I+CisgICAgICAgICAgICA8L29uQ29tcGxldGlvbj4KKyAgICAgICAgICAgIDxwYXJhbSBuYW1lPSJwYXRoIiB2YWx1ZT0iR2VuZXJhdGVTaW11bGF0b3IueG1sIj4KKyAgICAgICAgICAgIDwvcGFyYW0+CisgICAgICAgICA8L3Rhc2s+CisgICAgICAgICA8dGFzayBraW5kPSJjaGVhdHNoZWV0IiBuYW1lPSJTdGVwIDI6IENvbXBpbGUgc2ltdWxhdG9yIiBza2lwPSJmYWxzZSI+CisgICAgICAgICAgICA8aW50cm8+CisgICAgICAgICAgICAgICA8Yj5JbnRyb2R1Y3Rpb248L2I+CisgICAgICAgICAgICA8L2ludHJvPgorICAgICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgIDxiPkNvbmNsdXNpb248L2I+CisgICAgICAgICAgICA8L29uQ29tcGxldGlvbj4KKyAgICAgICAgICAgIDxwYXJhbSBuYW1lPSJwYXRoIiB2YWx1ZT0iQ29tcGlsZVNpbXVsYXRvci54bWwiPgorICAgICAgICAgICAgPC9wYXJhbT4KKyAgICAgICAgIDwvdGFzaz4KKyAgICAgICAgIDx0YXNrIGtpbmQ9ImNoZWF0c2hlZXQiIG5hbWU9IlN0ZXAgMzogQ29uZmlndXJlIFNpbXVsYXRvciIgc2tpcD0iZmFsc2UiPgorICAgICAgICAgICAgPGludHJvPgorICAgICAgICAgICAgICAgRHVyaW5nIHRoaXMgc3RlcCB0aGUgdXNlciBoYXMgdG8gY29tcGxldGUgZXZlcnkgb2YgdGhlIGluZm9ybWF0aW9uIG5lZWRlZCB0byBiZSBhYmxlIHRvIGNyZWF0ZSByZXN1bHRzIGFuZCB1c2UgbWV0cmljcy4KKyAgICAgICAgICAgIDwvaW50cm8+CisgICAgICAgICAgICA8b25Db21wbGV0aW9uPgorICAgICAgICAgICAgICAgPGI+Q29uY2x1c2lvbjwvYj4KKyAgICAgICAgICAgIDwvb25Db21wbGV0aW9uPgorICAgICAgICAgICAgPHBhcmFtIG5hbWU9InBhdGgiIHZhbHVlPSJDb25maWd1cmVTaW11bGF0b3IueG1sIj4KKyAgICAgICAgICAgIDwvcGFyYW0+CisgICAgICAgICA8L3Rhc2s+CisgICAgICAgICA8dGFzayBraW5kPSJjaGVhdHNoZWV0IiBuYW1lPSJTdGVwIDQ6IFJ1biAvIERlYnVnIFNpbXVsYXRvciIgc2tpcD0iZmFsc2UiPgorICAgICAgICAgICAgPGludHJvPgorICAgICAgICAgICAgICAgPGI+SW50cm9kdWN0aW9uPC9iPgorICAgICAgICAgICAgPC9pbnRybz4KKyAgICAgICAgICAgIDxvbkNvbXBsZXRpb24+CisgICAgICAgICAgICAgICA8Yj5Db25jbHVzaW9uPC9iPgorICAgICAgICAgICAgPC9vbkNvbXBsZXRpb24+CisgICAgICAgICAgICA8cGFyYW0gbmFtZT0icGF0aCIgdmFsdWU9IlJ1blNpbXVsYXRvci54bWwiPgorICAgICAgICAgICAgPC9wYXJhbT4KKyAgICAgICAgIDwvdGFzaz4KKyAgICAgIDwvdGFza0dyb3VwPgorICAgICAgPHRhc2tHcm91cCBraW5kPSJzZXF1ZW5jZSIgbmFtZT0iUGhhc2UgNDogU29sdXRpb24gUHJlcGFyYXRpb24iIHNraXA9ImZhbHNlIj4KKyAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgIDxiPkEgc29sdXRpb24gaXMgc29tZXRoaW5nIHRvIGJlIGluc2VydGVkIGludG8gdGhlIFByb2JsZW0gZW52aXJvbm1lbnQgYW5kIG1vcmUgc3BlY2lmaWNhbGx5IGludG8gdGhlIFJvYm90aWMgc3lzdGVtIHBhcnRzIChsaWJyYXJ5IG9mIGZ1bmN0aW9ucywgYXJjaGl0ZWN0dXJlIGRlc2NyaWJlZCB0aHJvdWdoIHRoZSBSb2JvdE1MIG1vZGVsbGluZyBwbGF0Zm9ybSkuPC9iPjxici8+PGJyLz5BcyB0aGUgd2hvbGUgZW52aXJvbm1lbnQgZXhpc3RzLCB0aGVyZSBpcyBub3RoaW5nIG1vcmUgdGhhbiB0byByZWZpbmUgZXZlbnR1YWxseSB0aGUgUHJvYmxlbSBNb2RlbCwgcmVxdWlyaW5nIGV2ZW50dWFsbHkgYSBmdXJ0aGVyIHJlZ2VuZXJhdGlvbiBvZiB0aGUgc2ltdWxhdG9yIGFuZCB0byBwcm92aWRlIGltcGxlbWVudGF0aW9uIG9mIGFsZ29yaXRobXMgYWxsb3dpbmcgdG8gcHJvdmlkZSB0aGUgd2FpdGVkIGZvciBiZWhhdmlvdXIgb2YgdGhlIFJvYm90aWMgc3lzdGVtLgorICAgICAgICAgPC9pbnRybz4KKyAgICAgICAgIDxvbkNvbXBsZXRpb24+CisgICAgICAgICAgICA8Yj5BdCB0aGlzIHN0ZXAgdGhlIFByb2JsZW0gcHJvdmlkZXIgdXNlciBpcyBhYmxlIHRvIGFzc2VzcyB0aGUgc29sdXRpb24gdGhhbmtzIHRvIGVpdGhlciB0aGUgc2V0IG9mIHNpbXVsYXRpb24gcHJvdmlkZWQgcmVzcGVjdGluZyB0aGUgY29uc3RyYWludHMgb24gdGhlIG1ldHJpY3Mgb3IgcnVubmluZyBoaW1zZWxmIHRoZSBzaW11bGF0b3IgaW5jbHVkaW5nIHRoZSBzb2x1dGlvbiBwYXJ0IGFuZCBhbGxvd2luZyBoaW0gdG8gaW50cm9kdWNlIHNvbWUgdW53YWl0ZWQgZm9yIG5ldyBtZXRyaWNzLjwvYj4KKyAgICAgICAgIDwvb25Db21wbGV0aW9uPgorICAgICAgICAgPHRhc2sga2luZD0iY2hlYXRzaGVldCIgbmFtZT0iU3RlcCAxOiBMb2FkIGEgcHJvYmxlbSIgc2tpcD0iZmFsc2UiPgorICAgICAgICAgICAgPGludHJvPgorICAgICAgICAgICAgICAgQSBwcm9ibGVtIGlzIHNldCBvZiBwcm9qZWN0cyAocHJvYmxlbSBtb2RlbCwgZGVwbG95ZWQgcHJvYmxlbSBtb2RlbCwgc2ltdWxhdG9yIGNvZGUsIGNvbmZpZ3VyYXRpb24gZmlsZXMsIGV0YykuIFRoZXkgaGF2ZSB0byBiZSBsb2FkZWQgdG8gd29yayBvbiB0aGUgc29sdXRpb24uCisgICAgICAgICAgICA8L2ludHJvPgorICAgICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgIDxiPkNvbmNsdXNpb248L2I+CisgICAgICAgICAgICA8L29uQ29tcGxldGlvbj4KKyAgICAgICAgICAgIDxwYXJhbSBuYW1lPSJwYXRoIiB2YWx1ZT0iUGJMb2FkLnhtbCI+CisgICAgICAgICAgICA8L3BhcmFtPgorICAgICAgICAgPC90YXNrPgorICAgICAgICAgPHRhc2sga2luZD0iY2hlYXRzaGVldCIgbmFtZT0iU3RlcCAyOiBDcmVhdGUgU29sdXRpb24iIHNraXA9ImZhbHNlIj4KKyAgICAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgICAgIENyZWF0ZSBhIHNvbHV0aW9uIHRocm91Z2ggaW1wb3J0aW5nIGEgZGVwbG95ZWQgcHJvYmxlbSBtb2RlbC4KKyAgICAgICAgICAgIDwvaW50cm8+CisgICAgICAgICAgICA8b25Db21wbGV0aW9uPgorICAgICAgICAgICAgICAgPGI+Q29uY2x1c2lvbjwvYj4KKyAgICAgICAgICAgIDwvb25Db21wbGV0aW9uPgorICAgICAgICAgICAgPHBhcmFtIG5hbWU9InBhdGgiIHZhbHVlPSJOZXdTb2x1dGlvbk1vZGVsLnhtbCI+CisgICAgICAgICAgICA8L3BhcmFtPgorICAgICAgICAgPC90YXNrPgorICAgICAgICAgPHRhc2sga2luZD0iY2hlYXRzaGVldCIgbmFtZT0iU3RlcCAzOiBFZGl0IHNvbHV0aW9uIG1vZGVsIiBza2lwPSJmYWxzZSI+CisgICAgICAgICAgICA8aW50cm8+CisgICAgICAgICAgICAgICBFZGl0IHRoZSBzeXN0ZW1zIHRoYXQgYXJlIHRhZ2dlZCBhcyBzeXN0ZW1zIHRvIHNvbHZlLiBIZXJlLCB0aGUgdXNlciBjYW4gbW9kZWwgdGhlIGludGVybmFsIHN0cnVjdHVyZSBvZiB0aG9zZSBzeXN0ZW1zIHRvIHNvbHZlLCBhbmQgdGhlaXIgYmVoYXZpb3IgdGhyb3VnaCBmaW5pdGUgc3RhdGUgbWFjaGluZXMuCisgICAgICAgICAgICA8L2ludHJvPgorICAgICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgIDxiPkNvbmNsdXNpb248L2I+CisgICAgICAgICAgICA8L29uQ29tcGxldGlvbj4KKyAgICAgICAgIDwvdGFzaz4KKyAgICAgICAgIDx0YXNrIGtpbmQ9ImNoZWF0c2hlZXQiIG5hbWU9IlN0ZXAgNDogRWRpdCAvIE1hcCBhdG9taWMgYmVoYXZpb3IiIHNraXA9ImZhbHNlIj4KKyAgICAgICAgICAgIDxpbnRybz4KKyAgICAgICAgICAgICAgIGVkaXQ6IGRlc2NyaWJlIHRoZSBiZWhhdmlvciBvZiB0aGUgc3lzdGVtIHRvIHNvbHZlIHVzaW5nIGFsZgorbWFwOiB1c2UgYW4gZXh0ZXJuYWwgYWxnb3JpdGhtcyBsaWJyYXJ5IHRvIGFzc29jaWF0ZSBhbiBhbGdvcml0aG1pYyBtb2R1bCB0byB0aGlzIHN5c3RlbQorICAgICAgICAgICAgPC9pbnRybz4KKyAgICAgICAgICAgIDxvbkNvbXBsZXRpb24+CisgICAgICAgICAgICAgICA8Yj5Db25jbHVzaW9uPC9iPgorICAgICAgICAgICAgPC9vbkNvbXBsZXRpb24+CisgICAgICAgICA8L3Rhc2s+CisgICAgICAgICA8dGFzayBraW5kPSJjaGVhdHNoZWV0IiBuYW1lPSJTdGVwIDU6IEdlbmVyYXRlIHRoZSBzb2x1dGlvbiBzaW11bGF0b3IiIHNraXA9InRydWUiPgorICAgICAgICAgICAgPGludHJvPgorICAgICAgICAgICAgICAgSWYgdGhlIHVzZXIgaGFzIGVkaXRlZCB0aGUgc29sdXRpb24gc3lzdGVtcyB1c2luZyBhbGYsIGhlIGhhcyB0byByZWdlbmVyYXRlIGNvZGUgZnJvbSB0aGUgc29sdXRpb24gbW9kZWwuCisgICAgICAgICAgICA8L2ludHJvPgorICAgICAgICAgICAgPG9uQ29tcGxldGlvbj4KKyAgICAgICAgICAgICAgIDxiPkNvbmNsdXNpb248L2I+CisgICAgICAgICAgICA8L29uQ29tcGxldGlvbj4KKyAgICAgICAgIDwvdGFzaz4KKyAgICAgIDwvdGFza0dyb3VwPgorICAgPC90YXNrR3JvdXA+Cis8L2NvbXBvc2l0ZUNoZWF0c2hlZXQ+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL1J1blNpbXVsYXRvci54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL1J1blNpbXVsYXRvci54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTAxZTY4ZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvY2hlYXRzaGVldHMvUnVuU2ltdWxhdG9yLnhtbApAQCAtMCwwICsxLDE1IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPGNoZWF0c2hlZXQKKyAgICAgIHRpdGxlPSJSdW4gLyBEZWJ1ZyBzaW11bGF0b3IiPgorICAgPGludHJvPgorICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgICAgVGhlIHVzZXIgY2FuIHVzZSB0aGUgc3BlY2lmaWMgaW50ZXJmYWNlIGxpbmtlZCB0byB0aGUgc2ltdWxhdG9yIHRvIHBsYXkgd2l0aCBpdCBvciBoZSBjYW4gdXNlIHRoZSB1bmlmaWVkIGFuZCBtaW5pbWFsIGludGVyZmFjZSB0byBydW4gdGhlIHNpbXVsYXRvciBhbmQgY3JlYXRlIHNpbXVsYXRpb25zIGFuZCBtZWFzdXJlcy4KKyAgICAgIDwvZGVzY3JpcHRpb24+CisgICA8L2ludHJvPgorICAgPGl0ZW0KKyAgICAgICAgIHRpdGxlPSJJdGVtIj4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgIDxiPkJvZHk8L2I+CisgICAgICA8L2Rlc2NyaXB0aW9uPgorICAgPC9pdGVtPgorPC9jaGVhdHNoZWV0PgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9sb2NhbGxvYWQueG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9sb2NhbGxvYWQueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjEwNWQ5NTAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL2xvY2FsbG9hZC54bWwKQEAgLTAsMCArMSwyNiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxjaGVhdHNoZWV0CisgICAgICB0aXRsZT0ibG9jYWwgbG9hZCI+CisgICA8aW50cm8+CisgICAgICA8ZGVzY3JpcHRpb24+CisgICAgCisgICAgICA8L2Rlc2NyaXB0aW9uPgorICAgPC9pbnRybz4KKyAgIDxpdGVtCisgICAgICAgICB0aXRsZT0iTG9hZCBmcm9tIGxvY2FsIGZvbGRlciI+CisgICAgICA8Y29tbWFuZAorICAgICAgICAgICAgcmVxdWlyZWQ9InRydWUiCisgICAgICAgICAgICBzZXJpYWxpemF0aW9uPSJvcmcuZWNsaXBzZS51aS5maWxlLmltcG9ydChpbXBvcnRXaXphcmRJZD1vcmcuZWNsaXBzZS51aS53aXphcmRzLmltcG9ydC5FeHRlcm5hbFByb2plY3QpIi8+CisgICAgICA8ZGVzY3JpcHRpb24+CisgICAgICAgICBUaGlzCisgICAgICA8L2Rlc2NyaXB0aW9uPgorICAgPC9pdGVtPgorPGl0ZW0gdGl0bGU9Ik9wZW4gUm9ib3RNTCBQZXJzcGVjdGl2ZSIgIGRpYWxvZz0iZmFsc2UiIHNraXA9InRydWUiPgorCTxkZXNjcmlwdGlvbj4KKwkJQ3JlYXRpb24gb2YgYSBwcm9qZWN0IGluIEVDTElQU0UgZG9lcyBub3QgY2hhbmdlIGJ5IGl0c2VsZiB0aGUgcGVyc3BlY3RpdmUuIFVzZXIgTVVTVCBjaGFuZ2UgaXQgbWFudWFsbHkgYW5kIGl0IGlzIGRvbmUgcGVyZm9ybWluZyB0aGlzIHRhc2sgb2YgdGhlIHdvcmtmbG93LgorCTwvZGVzY3JpcHRpb24+CisJPGNvbW1hbmQKKyAgICAgICByZXF1aXJlZD0idHJ1ZSIKKyAgICAgICBzZXJpYWxpemF0aW9uPSJvcmcuZWNsaXBzZS51aS5wZXJzcGVjdGl2ZXMuc2hvd1BlcnNwZWN0aXZlKG9yZy5lY2xpcHNlLnVpLnBlcnNwZWN0aXZlcy5zaG93UGVyc3BlY3RpdmUucGVyc3BlY3RpdmVJZD1vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGVyc3BlY3RpdmUpIi8+Cis8L2l0ZW0+Cis8L2NoZWF0c2hlZXQ+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2NoZWF0c2hlZXRzL3JlbW90ZUxvYWQueG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9yZW1vdGVMb2FkLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44MTkyMzAzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9jaGVhdHNoZWV0cy9yZW1vdGVMb2FkLnhtbApAQCAtMCwwICsxLDQ2IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPGNoZWF0c2hlZXQKKyAgICAgIHRpdGxlPSJSZW1vdGUgbG9hZCI+CisgICAgPGludHJvPgorICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgICAgSW4gb3JkZXIgdG8gZG93bmxvYWQgYSBQcm9ibGVtIG1vZGVsIGZyb20gdGhlIFJvYm90aWMgUG9ydGFsLCBpdCBpcyBuZWNlc3NhcnkgdG8gZm9sbG93IHRoZSBiZWxvdyBzdGVwczo8YnIvPjxici8+PGI+TG9naW4gdG8gdGhlIFJvYm90aWMgcG9ydGFsPC9iPjogaXQgY2FuIGJlIG5lY2Vzc2FyeSBmaXJzdCB0byByZWdpc3RlciB0byB0aGUgcG9ydGFsPGJyLz48YnIvPjxiPkRvd25sb2FkIHRoZSBwcm9ibGVtIHRvIGEgbG9jYWwgZm9sZGVyIGZyb20gdGhlIHBvcnRhbCByZXBvc2l0b3J5PC9iPjogZ29hbCBpcyB0byBleHRyYWN0IGZyb20gdGhlIHJlcG9zaXRvcnkgdGhlIFByb2JsZW0gbW9kZWwgb24gd2hpY2ggdGhlIFByb2JsZW0gcHJvdmlkZXIgd2FudHMgdG8gd29yazxici8+PGJyLz48Yj5JbXBvcnQgdGhlIHByb2JsZW0gaW50byB0aGUgd29ya3NwYWNlPC9iPjogYXMgaW4gdGhlIHByZXZpb3VzIGNhc2UsIGl0IGlzIG5lY2Vzc2FyeSB0byBtYWtlIFJvYm90TUwgcGxhdGZvcm0gYXdhcmUgb2YgdGhlIGRvd25sb2FkZWQgUHJvYmxlbSBtb2RlbDxici8+PGJyLz48Yj5PcGVuIFJvYm90TUwgcGVyc3BlY3RpdmU8L2I+OiBhbmQgYXMgaW4gdGhlIHByZXZpb3VzIGNhc2UgdGhlIHBlcnNwZWN0aXZlIG11c3QgYmUgb3BlbmVkIG1hbnVhbGx5CisgICAgICA8L2Rlc2NyaXB0aW9uPgorICAgPC9pbnRybz4KKyAgIDxpdGVtCisgICAgICAgICB0aXRsZT0iTG9naW4gdG8gdGhlIFJvYm90aWMgcG9ydGFsIj4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgIDxiPklmIHlvdSBkb24mYXBvczt0IGhhdmUgYW4gYWNjb3VudCwgcGxlYXNlIHJlZ2lzdGVyPC9iPgorICAgICAgPC9kZXNjcmlwdGlvbj4KKyAgICAgIDxjb21tYW5kCisgICAgICAgICAgICByZXF1aXJlZD0iZmFsc2UiCisgICAgICAgICAgICBzZXJpYWxpemF0aW9uPSJvcmcuZWNsaXBzZS51aS5icm93c2VyLm9wZW5Ccm93c2VyKHVybD1odHRwOi8vcHJvdGV1cy5ib3VyZ2VzLnVuaXYtb3JsZWFucy5mci8/cSU9dXNlci9yZWdpc3RlcikiLz4KKyAgICAgIAorICAgICAgCisgICA8L2l0ZW0+CisgICA8aXRlbQorICAgICAgICAgdGl0bGU9IkRvd25sb2FkIHRoZSBQcm9ibGVtIG1vZGVsIj4KKyAgICAgIDxkZXNjcmlwdGlvbj4KKyAgICAgICAgIDxiPkJvZHk8L2I+CisgICAgICA8L2Rlc2NyaXB0aW9uPgorICAgICAgPGNvbW1hbmQKKyAgICAgICAgICAgIHJlcXVpcmVkPSJmYWxzZSIKKyAgICAgICAgICAgIHNlcmlhbGl6YXRpb249Im9yZy5lY2xpcHNlLnRlYW0uc3ZuLnVpLmNvbW1hbmQuQ29tbWl0Q29tbWFuZCIvPgorICAgPC9pdGVtPgorICAgPGl0ZW0KKyAgICAgICAgIHRpdGxlPSJJbXBvcnQgdGhlIHByb2JsZW0iPgorICAgICAgPGRlc2NyaXB0aW9uPgorICAgICAgICAgPGI+SW4gdGhpcyBzdGVwIHlvdSB3aWxsIGltcG9ydCB0aGUgZG93bmxvYWRlZCBwcm9ibGVtIG1vZGVsIHRvIHlvdXIgd29ya3NwYWNlPC9iPgorICAgICAgPC9kZXNjcmlwdGlvbj4KKyAgICAgIDxjb21tYW5kCisgICAgICAgICAgICByZXF1aXJlZD0iZmFsc2UiCisgICAgICAgICAgICBzZXJpYWxpemF0aW9uPSJvcmcuZWNsaXBzZS51aS5maWxlLmltcG9ydChpbXBvcnRXaXphcmRJZD1vcmcuZWNsaXBzZS51aS53aXphcmRzLmltcG9ydC5aaXBGaWxlKSIvPgorICAgPC9pdGVtPgorPGl0ZW0gdGl0bGU9Ik9wZW4gUm9ib3RNTCBQZXJzcGVjdGl2ZSIgIGRpYWxvZz0iZmFsc2UiIHNraXA9InRydWUiPgorCTxkZXNjcmlwdGlvbj4KKwkJQ3JlYXRpb24gb2YgYSBwcm9qZWN0IGluIEVDTElQU0UgZG9lcyBub3QgY2hhbmdlIGJ5IGl0c2VsZiB0aGUgcGVyc3BlY3RpdmUuIFVzZXIgTVVTVCBjaGFuZ2UgaXQgbWFudWFsbHkgYW5kIGl0IGlzIGRvbmUgcGVyZm9ybWluZyB0aGlzIHRhc2sgb2YgdGhlIHdvcmtmbG93LgorCTwvZGVzY3JpcHRpb24+CisJPGNvbW1hbmQKKyAgICAgICByZXF1aXJlZD0idHJ1ZSIKKyAgICAgICBzZXJpYWxpemF0aW9uPSJvcmcuZWNsaXBzZS51aS5wZXJzcGVjdGl2ZXMuc2hvd1BlcnNwZWN0aXZlKG9yZy5lY2xpcHNlLnVpLnBlcnNwZWN0aXZlcy5zaG93UGVyc3BlY3RpdmUucGVyc3BlY3RpdmVJZD1vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGVyc3BlY3RpdmUpIi8+Cis8L2l0ZW0+Cis8L2NoZWF0c2hlZXQ+CmRpZmYgLS1naXQgImEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9oZWxwLy5+bG9jay5Sb2JvdE1MR2V0dGluZ1N0YXJ0ZWQub2R0XDA0MyIgImIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9oZWxwLy5+bG9jay5Sb2JvdE1MR2V0dGluZ1N0YXJ0ZWQub2R0XDA0MyIKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWZmOGY3MQotLS0gL2Rldi9udWxsCisrKyAiYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2hlbHAvLn5sb2NrLlJvYm90TUxHZXR0aW5nU3RhcnRlZC5vZHRcMDQzIgpAQCAtMCwwICsxIEBACissSU5UUkEvU0QyMjYzMTcsSVMwMTAzNzYuaW50cmEuY2VhLmZyLDA5LjA1LjIwMTIgMTQ6MjEsZmlsZTovLy9EOi9Eb2N1bWVudHMlMjBhbmQlMjBzZXR0aW5ncy9TRDIyNjMxNy9BcHBsaWNhdGlvbiUyMERhdGEvT3Blbk9mZmljZS5vcmcvMzsKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2hlbHAvUm9ib3RNTEdldHRpbmdTdGFydGVkLm9kdCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaGVscC9Sb2JvdE1MR2V0dGluZ1N0YXJ0ZWQub2R0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQwMmQ3ZjMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2hlbHAvUm9ib3RNTEdldHRpbmdTdGFydGVkLm9kdApCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2hlbHAvdG9jLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaGVscC90b2MueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk5ODA3YTIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2hlbHAvdG9jLnhtbApAQCAtMCwwICsxLDE1IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPD9OTFMgVFlQRT0ib3JnLmVjbGlwc2UuaGVscC50b2MiPz4KKworPHRvYyBsYWJlbD0iUm9ib3RNTCBHdWlkZSI+CisJPHRvcGljIGxhYmVsPSJVc2VyIEd1aWRlIiA+CisJPHRvcGljIGxhYmVsPSJEZWZpbml0aW9ucyIgIGhyZWY9Imh0bWwvUjAuMi4zLURlZmluaXRpb25zLWhlbHAuaHRtbCI+IAorCTwvdG9waWM+CisJPHRvcGljIGxhYmVsPSJSb2JvdE1MIFdvcmtGbG93IiBocmVmPSJodG1sL1JvYm90TUxDaGVhdFNoZWV0c0hlbHAuaHRtbCIvPgorCTx0b3BpYyBsYWJlbD0iUm9ib3RNTCBNb2RlbGluZyBMYW5ndWFnZSIgaHJlZj0iaHRtbC9Sb2JvdE1MTW9kZWxsaW5nTGFuZ3VhZ2UuaHRtbCIvPgorCTwvdG9waWM+CisJPHRvcGljIGxhYmVsPSJEZXZlbG9wZXIgR3VpZGUiID4KKwk8dG9waWMgbGFiZWw9IkhvdyB0byBjb250cmlidXRlIHRvIHRoZSBjb2RlIGdlbmVyYXRpb24gbWVudSIgIGhyZWY9Imh0bWwvUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uLmh0bWwiPiAKKwk8L3RvcGljPgorCTwvdG9waWM+Cis8L3RvYz4KZGlmZiAtLWdpdCAiYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2h0bWwvLn5sb2NrLlJvYm90TUxHZXR0aW5nU3RhcnRlZC5vZHRcMDQzIiAiYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2h0bWwvLn5sb2NrLlJvYm90TUxHZXR0aW5nU3RhcnRlZC5vZHRcMDQzIgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40YjQ1ZTEwCi0tLSAvZGV2L251bGwKKysrICJiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC8ufmxvY2suUm9ib3RNTEdldHRpbmdTdGFydGVkLm9kdFwwNDMiCkBAIC0wLDAgKzEgQEAKKyxJTlRSQS9TRDIyNjMxNyxJUzAxMDM3Ni5pbnRyYS5jZWEuZnIsMDkuMDUuMjAxMiAxNDozMSxmaWxlOi8vL0Q6L0RvY3VtZW50cyUyMGFuZCUyMHNldHRpbmdzL1NEMjI2MzE3L0FwcGxpY2F0aW9uJTIwRGF0YS9PcGVuT2ZmaWNlLm9yZy8zOwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb24uZG9jIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbi5kb2MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzQyNDc5YgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb24uZG9jCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb24uaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb24uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lYmIxOGUyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbi5odG1sCkBAIC0wLDAgKzEsMzQzNiBAQAorPGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiCit4bWxuczpvPSJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOm9mZmljZTpvZmZpY2UiCit4bWxuczp3PSJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOm9mZmljZTp3b3JkIgoreG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIgoreG1sbnM9Imh0dHA6Ly93d3cudzMub3JnL1RSL1JFQy1odG1sNDAiPgorCis8aGVhZD4KKzxtZXRhIGh0dHAtZXF1aXY9Q29udGVudC1UeXBlIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD13aW5kb3dzLTEyNTIiPgorPG1ldGEgbmFtZT1Qcm9nSWQgY29udGVudD1Xb3JkLkRvY3VtZW50PgorPG1ldGEgbmFtZT1HZW5lcmF0b3IgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTIiPgorPG1ldGEgbmFtZT1PcmlnaW5hdG9yIGNvbnRlbnQ9Ik1pY3Jvc29mdCBXb3JkIDEyIj4KKzxsaW5rIHJlbD1GaWxlLUxpc3QKK2hyZWY9IlBhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9maWxlbGlzdC54bWwiPgorPGxpbmsgcmVsPUVkaXQtVGltZS1EYXRhCitocmVmPSJQYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvZWRpdGRhdGEubXNvIj4KKzwhLS1baWYgIW1zb10+Cis8c3R5bGU+Cit2XDoqIHtiZWhhdmlvcjp1cmwoI2RlZmF1bHQjVk1MKTt9CitvXDoqIHtiZWhhdmlvcjp1cmwoI2RlZmF1bHQjVk1MKTt9Cit3XDoqIHtiZWhhdmlvcjp1cmwoI2RlZmF1bHQjVk1MKTt9Cisuc2hhcGUge2JlaGF2aW9yOnVybCgjZGVmYXVsdCNWTUwpO30KKzwvc3R5bGU+Cis8IVtlbmRpZl0tLT4KKzx0aXRsZT4gPC90aXRsZT4KKzwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPgorIDxvOkRvY3VtZW50UHJvcGVydGllcz4KKyAgPG86QXV0aG9yPlPpYmFzdGllbiBH6XJhcmQ8L286QXV0aG9yPgorICA8bzpMYXN0QXV0aG9yPlNhYWRpYSBESE9VSUI8L286TGFzdEF1dGhvcj4KKyAgPG86UmV2aXNpb24+MjwvbzpSZXZpc2lvbj4KKyAgPG86VG90YWxUaW1lPjk8L286VG90YWxUaW1lPgorICA8bzpMYXN0UHJpbnRlZD4yMDEwLTA2LTA3VDEyOjEwOjAwWjwvbzpMYXN0UHJpbnRlZD4KKyAgPG86Q3JlYXRlZD4yMDEyLTA0LTI0VDEyOjQ5OjAwWjwvbzpDcmVhdGVkPgorICA8bzpMYXN0U2F2ZWQ+MjAxMi0wNC0yNFQxMjo0OTowMFo8L286TGFzdFNhdmVkPgorICA8bzpQYWdlcz4xNTwvbzpQYWdlcz4KKyAgPG86V29yZHM+NTI4PC9vOldvcmRzPgorICA8bzpDaGFyYWN0ZXJzPjI5MDQ8L286Q2hhcmFjdGVycz4KKyAgPG86Q29tcGFueT5DRUE8L286Q29tcGFueT4KKyAgPG86TGluZXM+MjQ8L286TGluZXM+CisgIDxvOlBhcmFncmFwaHM+NjwvbzpQYXJhZ3JhcGhzPgorICA8bzpDaGFyYWN0ZXJzV2l0aFNwYWNlcz4zNDI2PC9vOkNoYXJhY3RlcnNXaXRoU3BhY2VzPgorICA8bzpWZXJzaW9uPjEyLjAwPC9vOlZlcnNpb24+CisgPC9vOkRvY3VtZW50UHJvcGVydGllcz4KKzwveG1sPjwhW2VuZGlmXS0tPgorPGxpbmsgcmVsPXRoZW1lRGF0YQoraHJlZj0iUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL3RoZW1lZGF0YS50aG14Ij4KKzxsaW5rIHJlbD1jb2xvclNjaGVtZU1hcHBpbmcKK2hyZWY9IlBhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9jb2xvcnNjaGVtZW1hcHBpbmcueG1sIj4KKzwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPgorIDx3OldvcmREb2N1bWVudD4KKyAgPHc6VHJhY2tNb3Zlcz5mYWxzZTwvdzpUcmFja01vdmVzPgorICA8dzpUcmFja0Zvcm1hdHRpbmcvPgorICA8dzpEZWZhdWx0VGFibGVTdHlsZSBOdW1iZXI9IjAiPk5vcm1hbDwvdzpEZWZhdWx0VGFibGVTdHlsZT4KKyAgPHc6RHJhd2luZ0dyaWRIb3Jpem9udGFsU3BhY2luZz4wIHB0PC93OkRyYXdpbmdHcmlkSG9yaXpvbnRhbFNwYWNpbmc+CisgIDx3OkRyYXdpbmdHcmlkVmVydGljYWxTcGFjaW5nPjAgcHQ8L3c6RHJhd2luZ0dyaWRWZXJ0aWNhbFNwYWNpbmc+CisgIDx3OkRpc3BsYXlIb3Jpem9udGFsRHJhd2luZ0dyaWRFdmVyeT4wPC93OkRpc3BsYXlIb3Jpem9udGFsRHJhd2luZ0dyaWRFdmVyeT4KKyAgPHc6RGlzcGxheVZlcnRpY2FsRHJhd2luZ0dyaWRFdmVyeT4wPC93OkRpc3BsYXlWZXJ0aWNhbERyYXdpbmdHcmlkRXZlcnk+CisgIDx3OlVzZU1hcmdpbnNGb3JEcmF3aW5nR3JpZE9yaWdpbi8+CisgIDx3OlZhbGlkYXRlQWdhaW5zdFNjaGVtYXMvPgorICA8dzpTYXZlSWZYTUxJbnZhbGlkPmZhbHNlPC93OlNhdmVJZlhNTEludmFsaWQ+CisgIDx3Oklnbm9yZU1peGVkQ29udGVudD5mYWxzZTwvdzpJZ25vcmVNaXhlZENvbnRlbnQ+CisgIDx3OkFsd2F5c1Nob3dQbGFjZWhvbGRlclRleHQ+ZmFsc2U8L3c6QWx3YXlzU2hvd1BsYWNlaG9sZGVyVGV4dD4KKyAgPHc6RG9Ob3RQcm9tb3RlUUYvPgorICA8dzpMaWRUaGVtZU90aGVyPkZSPC93OkxpZFRoZW1lT3RoZXI+CisgIDx3OkxpZFRoZW1lQXNpYW4+WC1OT05FPC93OkxpZFRoZW1lQXNpYW4+CisgIDx3OkxpZFRoZW1lQ29tcGxleFNjcmlwdD5YLU5PTkU8L3c6TGlkVGhlbWVDb21wbGV4U2NyaXB0PgorICA8dzpEcmF3aW5nR3JpZEhvcml6b250YWxPcmlnaW4+MCBwdDwvdzpEcmF3aW5nR3JpZEhvcml6b250YWxPcmlnaW4+CisgIDx3OkRyYXdpbmdHcmlkVmVydGljYWxPcmlnaW4+MCBwdDwvdzpEcmF3aW5nR3JpZFZlcnRpY2FsT3JpZ2luPgorICA8dzpDb21wYXRpYmlsaXR5PgorICAgPHc6U3BhY2VGb3JVTC8+CisgICA8dzpCYWxhbmNlU2luZ2xlQnl0ZURvdWJsZUJ5dGVXaWR0aC8+CisgICA8dzpEb05vdExlYXZlQmFja3NsYXNoQWxvbmUvPgorICAgPHc6VUxUcmFpbFNwYWNlLz4KKyAgIDx3OlVzZVByaW50ZXJNZXRyaWNzLz4KKyAgIDx3OkFkanVzdExpbmVIZWlnaHRJblRhYmxlLz4KKyAgIDx3OkJyZWFrV3JhcHBlZFRhYmxlcy8+CisgICA8dzpTbmFwVG9HcmlkSW5DZWxsLz4KKyAgIDx3OldyYXBUZXh0V2l0aFB1bmN0Lz4KKyAgIDx3OlVzZUFzaWFuQnJlYWtSdWxlcy8+CisgICA8dzpVc2VXb3JkMjAwMlRhYmxlU3R5bGVSdWxlcy8+CisgICA8dzpEb250VXNlSW5kZW50QXNOdW1iZXJpbmdUYWJTdG9wLz4KKyAgIDx3OkZFTGluZUJyZWFrMTEvPgorICAgPHc6V1cxMUluZGVudFJ1bGVzLz4KKyAgIDx3OkRvbnRBdXRvZml0Q29uc3RyYWluZWRUYWJsZXMvPgorICAgPHc6QXV0b2ZpdExpa2VXVzExLz4KKyAgIDx3Okhhbmd1bFdpZHRoTGlrZVdXMTEvPgorICAgPHc6VXNlTm9ybWFsU3R5bGVGb3JMaXN0Lz4KKyAgPC93OkNvbXBhdGliaWxpdHk+CisgIDx3OkJyb3dzZXJMZXZlbD5NaWNyb3NvZnRJbnRlcm5ldEV4cGxvcmVyNDwvdzpCcm93c2VyTGV2ZWw+CisgIDxtOm1hdGhQcj4KKyAgIDxtOm1hdGhGb250IG06dmFsPSJDYW1icmlhIE1hdGgiLz4KKyAgIDxtOmJya0JpbiBtOnZhbD0iYmVmb3JlIi8+CisgICA8bTpicmtCaW5TdWIgbTp2YWw9IiYjNDU7LSIvPgorICAgPG06c21hbGxGcmFjIG06dmFsPSJvZmYiLz4KKyAgIDxtOmRpc3BEZWYvPgorICAgPG06bE1hcmdpbiBtOnZhbD0iMCIvPgorICAgPG06ck1hcmdpbiBtOnZhbD0iMCIvPgorICAgPG06ZGVmSmMgbTp2YWw9ImNlbnRlckdyb3VwIi8+CisgICA8bTp3cmFwSW5kZW50IG06dmFsPSIxNDQwIi8+CisgICA8bTppbnRMaW0gbTp2YWw9InN1YlN1cCIvPgorICAgPG06bmFyeUxpbSBtOnZhbD0idW5kT3ZyIi8+CisgIDwvbTptYXRoUHI+PC93OldvcmREb2N1bWVudD4KKzwveG1sPjwhW2VuZGlmXS0tPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPgorIDx3OkxhdGVudFN0eWxlcyBEZWZMb2NrZWRTdGF0ZT0iZmFsc2UiIERlZlVuaGlkZVdoZW5Vc2VkPSJ0cnVlIgorICBEZWZTZW1pSGlkZGVuPSJ0cnVlIiBEZWZRRm9ybWF0PSJmYWxzZSIgRGVmUHJpb3JpdHk9Ijk5IgorICBMYXRlbnRTdHlsZUNvdW50PSIyNjciPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjAiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJOb3JtYWwiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI5IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyAxIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIFFGb3JtYXQ9InRydWUiIE5hbWU9ImhlYWRpbmcgMiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjkiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJoZWFkaW5nIDMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI5IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIFFGb3JtYXQ9InRydWUiIE5hbWU9ImhlYWRpbmcgNSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjkiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJoZWFkaW5nIDYiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI5IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA3Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIFFGb3JtYXQ9InRydWUiIE5hbWU9ImhlYWRpbmcgOCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjkiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJoZWFkaW5nIDkiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzOSIgTmFtZT0idG9jIDEiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzOSIgTmFtZT0idG9jIDIiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzOSIgTmFtZT0idG9jIDMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzOSIgTmFtZT0idG9jIDQiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzOSIgTmFtZT0idG9jIDUiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzOSIgTmFtZT0idG9jIDYiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzOSIgTmFtZT0idG9jIDciLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzOSIgTmFtZT0idG9jIDgiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzOSIgTmFtZT0idG9jIDkiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzNSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iY2FwdGlvbiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjEwIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iVGl0bGUiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIwIiBOYW1lPSJEZWZhdWx0IFBhcmFncmFwaCBGb250Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMTEiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJTdWJ0aXRsZSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjIyIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iU3Ryb25nIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMjAiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJFbXBoYXNpcyIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjU5IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iVGFibGUgR3JpZCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJQbGFjZWhvbGRlciBUZXh0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIFFGb3JtYXQ9InRydWUiIE5hbWU9Ik5vIFNwYWNpbmciLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IFNoYWRpbmciLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IExpc3QiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IEdyaWQiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDEiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDIiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBMaXN0IDEiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBMaXN0IDIiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBHcmlkIDEiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBHcmlkIDIiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBHcmlkIDMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkRhcmsgTGlzdCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcxIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iQ29sb3JmdWwgU2hhZGluZyIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcyIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iQ29sb3JmdWwgTGlzdCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjczIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iQ29sb3JmdWwgR3JpZCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYwIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTGlnaHQgU2hhZGluZyBBY2NlbnQgMSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYxIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTGlnaHQgTGlzdCBBY2NlbnQgMSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYyIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTGlnaHQgR3JpZCBBY2NlbnQgMSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYzIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIFNoYWRpbmcgMSBBY2NlbnQgMSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY0IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIFNoYWRpbmcgMiBBY2NlbnQgMSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY1IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIExpc3QgMSBBY2NlbnQgMSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJSZXZpc2lvbiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjM0IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iTGlzdCBQYXJhZ3JhcGgiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIyOSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIFFGb3JtYXQ9InRydWUiIE5hbWU9IlF1b3RlIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzAiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJJbnRlbnNlIFF1b3RlIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjYiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gTGlzdCAyIEFjY2VudCAxIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjciIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAxIEFjY2VudCAxIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjgiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAyIEFjY2VudCAxIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjkiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAzIEFjY2VudCAxIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzAiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJEYXJrIExpc3QgQWNjZW50IDEiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIFNoYWRpbmcgQWNjZW50IDEiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIExpc3QgQWNjZW50IDEiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIEdyaWQgQWNjZW50IDEiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IFNoYWRpbmcgQWNjZW50IDIiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IExpc3QgQWNjZW50IDIiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IEdyaWQgQWNjZW50IDIiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDEgQWNjZW50IDIiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDIgQWNjZW50IDIiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBMaXN0IDEgQWNjZW50IDIiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBMaXN0IDIgQWNjZW50IDIiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBHcmlkIDEgQWNjZW50IDIiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBHcmlkIDIgQWNjZW50IDIiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBHcmlkIDMgQWNjZW50IDIiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkRhcmsgTGlzdCBBY2NlbnQgMiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcxIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iQ29sb3JmdWwgU2hhZGluZyBBY2NlbnQgMiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcyIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iQ29sb3JmdWwgTGlzdCBBY2NlbnQgMiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjczIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iQ29sb3JmdWwgR3JpZCBBY2NlbnQgMiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYwIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTGlnaHQgU2hhZGluZyBBY2NlbnQgMyIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYxIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTGlnaHQgTGlzdCBBY2NlbnQgMyIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYyIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTGlnaHQgR3JpZCBBY2NlbnQgMyIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYzIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIFNoYWRpbmcgMSBBY2NlbnQgMyIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY0IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIFNoYWRpbmcgMiBBY2NlbnQgMyIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY1IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIExpc3QgMSBBY2NlbnQgMyIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY2IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIExpc3QgMiBBY2NlbnQgMyIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY3IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIEdyaWQgMSBBY2NlbnQgMyIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY4IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIEdyaWQgMiBBY2NlbnQgMyIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY5IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIEdyaWQgMyBBY2NlbnQgMyIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcwIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iRGFyayBMaXN0IEFjY2VudCAzIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzEiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJDb2xvcmZ1bCBTaGFkaW5nIEFjY2VudCAzIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzIiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJDb2xvcmZ1bCBMaXN0IEFjY2VudCAzIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzMiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJDb2xvcmZ1bCBHcmlkIEFjY2VudCAzIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjAiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJMaWdodCBTaGFkaW5nIEFjY2VudCA0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjEiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJMaWdodCBMaXN0IEFjY2VudCA0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjIiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJMaWdodCBHcmlkIEFjY2VudCA0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjMiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gU2hhZGluZyAxIEFjY2VudCA0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjQiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gU2hhZGluZyAyIEFjY2VudCA0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjUiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gTGlzdCAxIEFjY2VudCA0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjYiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gTGlzdCAyIEFjY2VudCA0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjciIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAxIEFjY2VudCA0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjgiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAyIEFjY2VudCA0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjkiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAzIEFjY2VudCA0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzAiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJEYXJrIExpc3QgQWNjZW50IDQiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIFNoYWRpbmcgQWNjZW50IDQiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIExpc3QgQWNjZW50IDQiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIEdyaWQgQWNjZW50IDQiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IFNoYWRpbmcgQWNjZW50IDUiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IExpc3QgQWNjZW50IDUiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IEdyaWQgQWNjZW50IDUiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDEgQWNjZW50IDUiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDIgQWNjZW50IDUiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBMaXN0IDEgQWNjZW50IDUiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBMaXN0IDIgQWNjZW50IDUiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBHcmlkIDEgQWNjZW50IDUiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBHcmlkIDIgQWNjZW50IDUiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBHcmlkIDMgQWNjZW50IDUiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkRhcmsgTGlzdCBBY2NlbnQgNSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcxIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iQ29sb3JmdWwgU2hhZGluZyBBY2NlbnQgNSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcyIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iQ29sb3JmdWwgTGlzdCBBY2NlbnQgNSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjczIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iQ29sb3JmdWwgR3JpZCBBY2NlbnQgNSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYwIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTGlnaHQgU2hhZGluZyBBY2NlbnQgNiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYxIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTGlnaHQgTGlzdCBBY2NlbnQgNiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYyIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTGlnaHQgR3JpZCBBY2NlbnQgNiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYzIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIFNoYWRpbmcgMSBBY2NlbnQgNiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY0IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIFNoYWRpbmcgMiBBY2NlbnQgNiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY1IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIExpc3QgMSBBY2NlbnQgNiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY2IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIExpc3QgMiBBY2NlbnQgNiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY3IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIEdyaWQgMSBBY2NlbnQgNiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY4IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIEdyaWQgMiBBY2NlbnQgNiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY5IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIEdyaWQgMyBBY2NlbnQgNiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcwIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iRGFyayBMaXN0IEFjY2VudCA2Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzEiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJDb2xvcmZ1bCBTaGFkaW5nIEFjY2VudCA2Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzIiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJDb2xvcmZ1bCBMaXN0IEFjY2VudCA2Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzMiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJDb2xvcmZ1bCBHcmlkIEFjY2VudCA2Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMTkiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJTdWJ0bGUgRW1waGFzaXMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIyMSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIFFGb3JtYXQ9InRydWUiIE5hbWU9IkludGVuc2UgRW1waGFzaXMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzMSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIFFGb3JtYXQ9InRydWUiIE5hbWU9IlN1YnRsZSBSZWZlcmVuY2UiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzMiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIFFGb3JtYXQ9InRydWUiIE5hbWU9IkludGVuc2UgUmVmZXJlbmNlIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzMiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJCb29rIFRpdGxlIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzciIE5hbWU9IkJpYmxpb2dyYXBoeSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjM5IiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJUT0MgSGVhZGluZyIvPgorIDwvdzpMYXRlbnRTdHlsZXM+Cis8L3htbD48IVtlbmRpZl0tLT4KKzxzdHlsZT4KKzwhLS0KKyAvKiBGb250IERlZmluaXRpb25zICovCisgQGZvbnQtZmFjZQorCXtmb250LWZhbWlseToiQ2FtYnJpYSBNYXRoIjsKKwlwYW5vc2UtMToyIDQgNSAzIDUgNCA2IDMgMiA0OworCW1zby1mb250LWNoYXJzZXQ6MDsKKwltc28tZ2VuZXJpYy1mb250LWZhbWlseTpyb21hbjsKKwltc28tZm9udC1waXRjaDp2YXJpYWJsZTsKKwltc28tZm9udC1zaWduYXR1cmU6LTE2MTA2MTE5ODUgMTEwNzMwNDY4MyAwIDAgMTU5IDA7fQorQGZvbnQtZmFjZQorCXtmb250LWZhbWlseToiQXJpYWwgVW5pY29kZSBNUyI7CisJcGFub3NlLTE6MiAxMSA2IDQgMiAyIDIgMiAyIDQ7CisJbXNvLWZvbnQtY2hhcnNldDoxMjg7CisJbXNvLWdlbmVyaWMtZm9udC1mYW1pbHk6c3dpc3M7CisJbXNvLWZvbnQtcGl0Y2g6dmFyaWFibGU7CisJbXNvLWZvbnQtc2lnbmF0dXJlOi0xMzQyMzgyMDkgLTM3MTE5NTkwNSA2MyAwIDQxMjkyNzkgMDt9CitAZm9udC1mYWNlCisJe2ZvbnQtZmFtaWx5OlRhaG9tYTsKKwlwYW5vc2UtMToyIDExIDYgNCAzIDUgNCA0IDIgNDsKKwltc28tZm9udC1jaGFyc2V0OjA7CisJbXNvLWdlbmVyaWMtZm9udC1mYW1pbHk6c3dpc3M7CisJbXNvLWZvbnQtcGl0Y2g6dmFyaWFibGU7CisJbXNvLWZvbnQtc2lnbmF0dXJlOjE2Mjc0MDA4MzkgLTIxNDc0ODM2NDggOCAwIDY2MDQ3IDA7fQorQGZvbnQtZmFjZQorCXtmb250LWZhbWlseTpDQUJvbGQ7CisJbXNvLWZvbnQtY2hhcnNldDowOworCW1zby1nZW5lcmljLWZvbnQtZmFtaWx5OnJvbWFuOworCW1zby1mb250LXBpdGNoOnZhcmlhYmxlOworCW1zby1mb250LXNpZ25hdHVyZTowIDAgMCAwIDAgMDt9CitAZm9udC1mYWNlCisJe2ZvbnQtZmFtaWx5Ok9wZW5TeW1ib2w7CisJcGFub3NlLTE6NSAxIDAgMCAwIDAgMCAwIDAgMDsKKwltc28tZm9udC1jaGFyc2V0OjA7CisJbXNvLWdlbmVyaWMtZm9udC1mYW1pbHk6YXV0bzsKKwltc28tZm9udC1waXRjaDp2YXJpYWJsZTsKKwltc28tZm9udC1zaWduYXR1cmU6LTIxNDc0ODM0NzMgMjY4NTYxNjQyIDAgMCAxIDA7fQorQGZvbnQtZmFjZQorCXtmb250LWZhbWlseToiXEBBcmlhbCBVbmljb2RlIE1TIjsKKwlwYW5vc2UtMToyIDExIDYgNCAyIDIgMiAyIDIgNDsKKwltc28tZm9udC1jaGFyc2V0OjEyODsKKwltc28tZ2VuZXJpYy1mb250LWZhbWlseTpzd2lzczsKKwltc28tZm9udC1waXRjaDp2YXJpYWJsZTsKKwltc28tZm9udC1zaWduYXR1cmU6LTEzNDIzODIwOSAtMzcxMTk1OTA1IDYzIDAgNDEyOTI3OSAwO30KKyAvKiBTdHlsZSBEZWZpbml0aW9ucyAqLworIHAuTXNvTm9ybWFsLCBsaS5Nc29Ob3JtYWwsIGRpdi5Nc29Ob3JtYWwKKwl7bXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtcWZvcm1hdDp5ZXM7CisJbXNvLXN0eWxlLXBhcmVudDoiIjsKKwltYXJnaW4tdG9wOjBjbTsKKwltYXJnaW4tcmlnaHQ6MGNtOworCW1hcmdpbi1ib3R0b206Ni4wcHQ7CisJbWFyZ2luLWxlZnQ6MGNtOworCXRleHQtYWxpZ246anVzdGlmeTsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXB1bmN0dWF0aW9uLXdyYXA6c2ltcGxlOworCXRleHQtYXV0b3NwYWNlOmlkZW9ncmFwaC1udW1lcmljOworCWZvbnQtc2l6ZToxMS4wcHQ7CisJbXNvLWJpZGktZm9udC1zaXplOjEwLjBwdDsKKwlmb250LWZhbWlseToiQXJpYWwiLCJzYW5zLXNlcmlmIjsKKwltc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYmlkaS1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTt9CitoMQorCXttc28tc3R5bGUtdW5oaWRlOm5vOworCW1zby1zdHlsZS1xZm9ybWF0OnllczsKKwltc28tc3R5bGUtbmV4dDpOb3JtYWw7CisJbWFyZ2luLXRvcDowY207CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjEyLjBwdDsKKwltYXJnaW4tbGVmdDoxLjBjbTsKKwl0ZXh0LWluZGVudDotMS4wY207CisJcGFnZS1icmVhay1iZWZvcmU6YWx3YXlzOworCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsKKwltc28tb3V0bGluZS1sZXZlbDoxOworCW1zby1saXN0OmwwIGxldmVsMSBsZm8xOworCW1zby1oeXBoZW5hdGU6bm9uZTsKKwl0YWItc3RvcHM6MS4wY20gNDIuNTVwdDsKKwliYWNrZ3JvdW5kOiNDQ0NDQ0M7CisJcHVuY3R1YXRpb24td3JhcDpzaW1wbGU7CisJdGV4dC1hdXRvc3BhY2U6aWRlb2dyYXBoLW51bWVyaWM7CisJYm9yZGVyOm5vbmU7CisJbXNvLWJvcmRlci10b3AtYWx0OnNvbGlkIGJsYWNrIC41cHQ7CisJbXNvLWJvcmRlci1ib3R0b20tYWx0OnNvbGlkIGJsYWNrIC41cHQ7CisJcGFkZGluZzowY207CisJbXNvLXBhZGRpbmctYWx0OjEuMHB0IDBjbSAxLjBwdCAwY207CisJZm9udC1zaXplOjExLjBwdDsKKwltc28tYmlkaS1mb250LXNpemU6MTAuMHB0OworCWZvbnQtZmFtaWx5OiJBcmlhbCIsInNhbnMtc2VyaWYiOworCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1mb250LWtlcm5pbmc6MHB0OworCW1zby1hbnNpLWxhbmd1YWdlOkVOLVVTOworCW1zby1mYXJlYXN0LWxhbmd1YWdlOkFSLVNBOworCW1zby1iaWRpLWZvbnQtd2VpZ2h0Om5vcm1hbDt9CitoMgorCXttc28tc3R5bGUtdW5oaWRlOm5vOworCW1zby1zdHlsZS1xZm9ybWF0OnllczsKKwltc28tc3R5bGUtcGFyZW50OiJUaXRyZSAxIjsKKwltc28tc3R5bGUtbmV4dDpOb3JtYWw7CisJbWFyZ2luLXRvcDoxMi4wcHQ7CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjEyLjBwdDsKKwltYXJnaW4tbGVmdDoxLjBjbTsKKwl0ZXh0LWluZGVudDotMS4wY207CisJbXNvLXBhZ2luYXRpb246d2lkb3ctb3JwaGFuOworCW1zby1vdXRsaW5lLWxldmVsOjI7CisJbXNvLWxpc3Q6bDAgbGV2ZWwyIGxmbzE7CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXRhYi1zdG9wczoxLjBjbSBsaXN0IDQyLjU1cHQ7CisJcHVuY3R1YXRpb24td3JhcDpzaW1wbGU7CisJdGV4dC1hdXRvc3BhY2U6aWRlb2dyYXBoLW51bWVyaWM7CisJYm9yZGVyOm5vbmU7CisJbXNvLWJvcmRlci10b3AtYWx0OnNvbGlkIGJsYWNrIC41cHQ7CisJbXNvLWJvcmRlci1ib3R0b20tYWx0OnNvbGlkIGJsYWNrIC41cHQ7CisJcGFkZGluZzowY207CisJbXNvLXBhZGRpbmctYWx0OjEuMHB0IDBjbSAxLjBwdCAwY207CisJZm9udC1zaXplOjExLjBwdDsKKwltc28tYmlkaS1mb250LXNpemU6MTAuMHB0OworCWZvbnQtZmFtaWx5OiJBcmlhbCIsInNhbnMtc2VyaWYiOworCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1hbnNpLWxhbmd1YWdlOkVOLVVTOworCW1zby1mYXJlYXN0LWxhbmd1YWdlOkFSLVNBOworCW1zby1iaWRpLWZvbnQtd2VpZ2h0Om5vcm1hbDt9CitoMworCXttc28tc3R5bGUtdW5oaWRlOm5vOworCW1zby1zdHlsZS1xZm9ybWF0OnllczsKKwltc28tc3R5bGUtcGFyZW50OiJUaXRyZSAyIjsKKwltc28tc3R5bGUtbmV4dDpOb3JtYWw7CisJbWFyZ2luLXRvcDoxMi4wcHQ7CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjEyLjBwdDsKKwltYXJnaW4tbGVmdDo0Mi41NXB0OworCXRleHQtaW5kZW50Oi00Mi41NXB0OworCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsKKwltc28tb3V0bGluZS1sZXZlbDozOworCW1zby1saXN0OmwwIGxldmVsMyBsZm8xOworCW1zby1oeXBoZW5hdGU6bm9uZTsKKwl0YWItc3RvcHM6MTQuMTVwdCAxLjBjbSBsaXN0IDQyLjU1cHQ7CisJcHVuY3R1YXRpb24td3JhcDpzaW1wbGU7CisJdGV4dC1hdXRvc3BhY2U6aWRlb2dyYXBoLW51bWVyaWM7CisJYm9yZGVyOm5vbmU7CisJbXNvLWJvcmRlci10b3AtYWx0OnNvbGlkIGJsYWNrIC41cHQ7CisJbXNvLWJvcmRlci1ib3R0b20tYWx0OnNvbGlkIGJsYWNrIC41cHQ7CisJcGFkZGluZzowY207CisJbXNvLXBhZGRpbmctYWx0OjEuMHB0IDBjbSAxLjBwdCAwY207CisJZm9udC1zaXplOjExLjBwdDsKKwltc28tYmlkaS1mb250LXNpemU6MTAuMHB0OworCWZvbnQtZmFtaWx5OiJBcmlhbCIsInNhbnMtc2VyaWYiOworCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1hbnNpLWxhbmd1YWdlOkVOLVVTOworCW1zby1mYXJlYXN0LWxhbmd1YWdlOkFSLVNBOworCW1zby1iaWRpLWZvbnQtd2VpZ2h0Om5vcm1hbDt9CitoNAorCXttc28tc3R5bGUtdW5oaWRlOm5vOworCW1zby1zdHlsZS1xZm9ybWF0OnllczsKKwltc28tc3R5bGUtcGFyZW50OiJUaXRyZSAzIjsKKwltc28tc3R5bGUtbmV4dDpOb3JtYWw7CisJbWFyZ2luLXRvcDoxMi4wcHQ7CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjEyLjBwdDsKKwltYXJnaW4tbGVmdDoxLjBjbTsKKwl0ZXh0LWluZGVudDotMS4wY207CisJbXNvLXBhZ2luYXRpb246d2lkb3ctb3JwaGFuOworCW1zby1vdXRsaW5lLWxldmVsOjQ7CisJbXNvLWxpc3Q6bDAgbGV2ZWw0IGxmbzE7CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXRhYi1zdG9wczoxNC4xNXB0IDEuMGNtOworCXB1bmN0dWF0aW9uLXdyYXA6c2ltcGxlOworCXRleHQtYXV0b3NwYWNlOmlkZW9ncmFwaC1udW1lcmljOworCWJvcmRlcjpub25lOworCW1zby1ib3JkZXItdG9wLWFsdDpzb2xpZCBibGFjayAuNXB0OworCW1zby1ib3JkZXItYm90dG9tLWFsdDpzb2xpZCBibGFjayAuNXB0OworCXBhZGRpbmc6MGNtOworCW1zby1wYWRkaW5nLWFsdDoxLjBwdCAwY20gMS4wcHQgMGNtOworCWZvbnQtc2l6ZTo5LjBwdDsKKwltc28tYmlkaS1mb250LXNpemU6MTAuMHB0OworCWZvbnQtZmFtaWx5OiJBcmlhbCIsInNhbnMtc2VyaWYiOworCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1hbnNpLWxhbmd1YWdlOkVOLVVTOworCW1zby1mYXJlYXN0LWxhbmd1YWdlOkFSLVNBOworCWZvbnQtd2VpZ2h0Om5vcm1hbDt9CitoNQorCXttc28tc3R5bGUtdW5oaWRlOm5vOworCW1zby1zdHlsZS1xZm9ybWF0OnllczsKKwltc28tc3R5bGUtcGFyZW50OiJUaXRyZSA0IjsKKwltc28tc3R5bGUtbmV4dDoiQ29ycHMgZGUgdGV4dGUiOworCW1hcmdpbi10b3A6MTIuMHB0OworCW1hcmdpbi1yaWdodDowY207CisJbWFyZ2luLWJvdHRvbToxMi4wcHQ7CisJbWFyZ2luLWxlZnQ6MS4wY207CisJdGV4dC1pbmRlbnQ6LTEuMGNtOworCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsKKwltc28tb3V0bGluZS1sZXZlbDo1OworCW1zby1saXN0OmwwIGxldmVsNSBsZm8xOworCW1zby1oeXBoZW5hdGU6bm9uZTsKKwl0YWItc3RvcHM6MTQuMTVwdCAxLjBjbTsKKwlwdW5jdHVhdGlvbi13cmFwOnNpbXBsZTsKKwl0ZXh0LWF1dG9zcGFjZTppZGVvZ3JhcGgtbnVtZXJpYzsKKwlib3JkZXI6bm9uZTsKKwltc28tYm9yZGVyLXRvcC1hbHQ6c29saWQgYmxhY2sgLjVwdDsKKwltc28tYm9yZGVyLWJvdHRvbS1hbHQ6c29saWQgYmxhY2sgLjVwdDsKKwlwYWRkaW5nOjBjbTsKKwltc28tcGFkZGluZy1hbHQ6MS4wcHQgMGNtIDEuMHB0IDBjbTsKKwlmb250LXNpemU6OS4wcHQ7CisJbXNvLWJpZGktZm9udC1zaXplOjEwLjBwdDsKKwlmb250LWZhbWlseToiQXJpYWwiLCJzYW5zLXNlcmlmIjsKKwltc28tYmlkaS1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTsKKwlmb250LXdlaWdodDpub3JtYWw7CisJZm9udC1zdHlsZTppdGFsaWM7CisJbXNvLWJpZGktZm9udC1zdHlsZTpub3JtYWw7fQoraDYKKwl7bXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtcWZvcm1hdDp5ZXM7CisJbXNvLXN0eWxlLW5leHQ6Tm9ybWFsOworCW1hcmdpbi10b3A6MGNtOworCW1hcmdpbi1yaWdodDowY207CisJbWFyZ2luLWJvdHRvbTo2LjBwdDsKKwltYXJnaW4tbGVmdDozNS40cHQ7CisJdGV4dC1hbGlnbjpqdXN0aWZ5OworCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsKKwltc28tb3V0bGluZS1sZXZlbDo2OworCW1zby1oeXBoZW5hdGU6bm9uZTsKKwlwdW5jdHVhdGlvbi13cmFwOnNpbXBsZTsKKwl0ZXh0LWF1dG9zcGFjZTppZGVvZ3JhcGgtbnVtZXJpYzsKKwlmb250LXNpemU6MTAuMHB0OworCWZvbnQtZmFtaWx5OiJDQUJvbGQiLCJzZXJpZiI7CisJbXNvLWFuc2ktbGFuZ3VhZ2U6RU4tVVM7CisJbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6QVItU0E7CisJZm9udC13ZWlnaHQ6bm9ybWFsOworCXRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7CisJdGV4dC11bmRlcmxpbmU6c2luZ2xlO30KK3AuTXNvSGVhZGluZzcsIGxpLk1zb0hlYWRpbmc3LCBkaXYuTXNvSGVhZGluZzcKKwl7bXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtcWZvcm1hdDp5ZXM7CisJbXNvLXN0eWxlLW5leHQ6Tm9ybWFsOworCW1hcmdpbi10b3A6MGNtOworCW1hcmdpbi1yaWdodDowY207CisJbWFyZ2luLWJvdHRvbTo2LjBwdDsKKwltYXJnaW4tbGVmdDozNS40cHQ7CisJdGV4dC1hbGlnbjpqdXN0aWZ5OworCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsKKwltc28tb3V0bGluZS1sZXZlbDo3OworCW1zby1oeXBoZW5hdGU6bm9uZTsKKwlwdW5jdHVhdGlvbi13cmFwOnNpbXBsZTsKKwl0ZXh0LWF1dG9zcGFjZTppZGVvZ3JhcGgtbnVtZXJpYzsKKwlmb250LXNpemU6MTAuMHB0OworCWZvbnQtZmFtaWx5OiJDQUJvbGQiLCJzZXJpZiI7CisJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWJpZGktZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWFuc2ktbGFuZ3VhZ2U6RU4tVVM7CisJbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6QVItU0E7CisJZm9udC1zdHlsZTppdGFsaWM7CisJbXNvLWJpZGktZm9udC1zdHlsZTpub3JtYWw7fQorcC5Nc29IZWFkaW5nOCwgbGkuTXNvSGVhZGluZzgsIGRpdi5Nc29IZWFkaW5nOAorCXttc28tc3R5bGUtdW5oaWRlOm5vOworCW1zby1zdHlsZS1xZm9ybWF0OnllczsKKwltc28tc3R5bGUtbmV4dDpOb3JtYWw7CisJbWFyZ2luLXRvcDowY207CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjYuMHB0OworCW1hcmdpbi1sZWZ0OjM1LjRwdDsKKwl0ZXh0LWFsaWduOmp1c3RpZnk7CisJbXNvLXBhZ2luYXRpb246d2lkb3ctb3JwaGFuOworCW1zby1vdXRsaW5lLWxldmVsOjg7CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXB1bmN0dWF0aW9uLXdyYXA6c2ltcGxlOworCXRleHQtYXV0b3NwYWNlOmlkZW9ncmFwaC1udW1lcmljOworCWZvbnQtc2l6ZToxMC4wcHQ7CisJZm9udC1mYW1pbHk6IkNBQm9sZCIsInNlcmlmIjsKKwltc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYmlkaS1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTsKKwlmb250LXN0eWxlOml0YWxpYzsKKwltc28tYmlkaS1mb250LXN0eWxlOm5vcm1hbDt9CitwLk1zb0hlYWRpbmc5LCBsaS5Nc29IZWFkaW5nOSwgZGl2Lk1zb0hlYWRpbmc5CisJe21zby1zdHlsZS11bmhpZGU6bm87CisJbXNvLXN0eWxlLXFmb3JtYXQ6eWVzOworCW1zby1zdHlsZS1uZXh0Ok5vcm1hbDsKKwltYXJnaW4tdG9wOjBjbTsKKwltYXJnaW4tcmlnaHQ6MGNtOworCW1hcmdpbi1ib3R0b206Ni4wcHQ7CisJbWFyZ2luLWxlZnQ6MzUuNHB0OworCXRleHQtYWxpZ246anVzdGlmeTsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJbXNvLW91dGxpbmUtbGV2ZWw6OTsKKwltc28taHlwaGVuYXRlOm5vbmU7CisJcHVuY3R1YXRpb24td3JhcDpzaW1wbGU7CisJdGV4dC1hdXRvc3BhY2U6aWRlb2dyYXBoLW51bWVyaWM7CisJZm9udC1zaXplOjEwLjBwdDsKKwlmb250LWZhbWlseToiQ0FCb2xkIiwic2VyaWYiOworCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1hbnNpLWxhbmd1YWdlOkVOLVVTOworCW1zby1mYXJlYXN0LWxhbmd1YWdlOkFSLVNBOworCWZvbnQtc3R5bGU6aXRhbGljOworCW1zby1iaWRpLWZvbnQtc3R5bGU6bm9ybWFsO30KK3AuTXNvSW5kZXgxLCBsaS5Nc29JbmRleDEsIGRpdi5Nc29JbmRleDEKKwl7bXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtbmV4dDpOb3JtYWw7CisJbWFyZ2luLXRvcDowY207CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjYuMHB0OworCW1hcmdpbi1sZWZ0OjExLjBwdDsKKwl0ZXh0LWFsaWduOmp1c3RpZnk7CisJdGV4dC1pbmRlbnQ6LTExLjBwdDsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXB1bmN0dWF0aW9uLXdyYXA6c2ltcGxlOworCXRleHQtYXV0b3NwYWNlOmlkZW9ncmFwaC1udW1lcmljOworCWZvbnQtc2l6ZToxMS4wcHQ7CisJbXNvLWJpZGktZm9udC1zaXplOjEwLjBwdDsKKwlmb250LWZhbWlseToiQXJpYWwiLCJzYW5zLXNlcmlmIjsKKwltc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYmlkaS1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTt9CitwLk1zb0luZGV4MiwgbGkuTXNvSW5kZXgyLCBkaXYuTXNvSW5kZXgyCisJe21zby1zdHlsZS11bmhpZGU6bm87CisJbXNvLXN0eWxlLW5leHQ6Tm9ybWFsOworCW1hcmdpbi10b3A6MGNtOworCW1hcmdpbi1yaWdodDowY207CisJbWFyZ2luLWJvdHRvbTo2LjBwdDsKKwltYXJnaW4tbGVmdDoyMi4wcHQ7CisJdGV4dC1hbGlnbjpqdXN0aWZ5OworCXRleHQtaW5kZW50Oi0xMS4wcHQ7CisJbXNvLXBhZ2luYXRpb246d2lkb3ctb3JwaGFuOworCW1zby1oeXBoZW5hdGU6bm9uZTsKKwlwdW5jdHVhdGlvbi13cmFwOnNpbXBsZTsKKwl0ZXh0LWF1dG9zcGFjZTppZGVvZ3JhcGgtbnVtZXJpYzsKKwlmb250LXNpemU6MTEuMHB0OworCW1zby1iaWRpLWZvbnQtc2l6ZToxMC4wcHQ7CisJZm9udC1mYW1pbHk6IkFyaWFsIiwic2Fucy1zZXJpZiI7CisJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWJpZGktZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWFuc2ktbGFuZ3VhZ2U6RU4tVVM7CisJbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6QVItU0E7fQorcC5Nc29JbmRleDMsIGxpLk1zb0luZGV4MywgZGl2Lk1zb0luZGV4MworCXttc28tc3R5bGUtdW5oaWRlOm5vOworCW1zby1zdHlsZS1uZXh0Ok5vcm1hbDsKKwltYXJnaW4tdG9wOjBjbTsKKwltYXJnaW4tcmlnaHQ6MGNtOworCW1hcmdpbi1ib3R0b206Ni4wcHQ7CisJbWFyZ2luLWxlZnQ6MzMuMHB0OworCXRleHQtYWxpZ246anVzdGlmeTsKKwl0ZXh0LWluZGVudDotMTEuMHB0OworCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsKKwltc28taHlwaGVuYXRlOm5vbmU7CisJcHVuY3R1YXRpb24td3JhcDpzaW1wbGU7CisJdGV4dC1hdXRvc3BhY2U6aWRlb2dyYXBoLW51bWVyaWM7CisJZm9udC1zaXplOjExLjBwdDsKKwltc28tYmlkaS1mb250LXNpemU6MTAuMHB0OworCWZvbnQtZmFtaWx5OiJBcmlhbCIsInNhbnMtc2VyaWYiOworCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1hbnNpLWxhbmd1YWdlOkVOLVVTOworCW1zby1mYXJlYXN0LWxhbmd1YWdlOkFSLVNBO30KK3AuTXNvVG9jMSwgbGkuTXNvVG9jMSwgZGl2Lk1zb1RvYzEKKwl7bXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtbmV4dDpOb3JtYWw7CisJbWFyZ2luLXRvcDo2LjBwdDsKKwltYXJnaW4tcmlnaHQ6MGNtOworCW1hcmdpbi1ib3R0b206Ni4wcHQ7CisJbWFyZ2luLWxlZnQ6MGNtOworCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsKKwltc28taHlwaGVuYXRlOm5vbmU7CisJcHVuY3R1YXRpb24td3JhcDpzaW1wbGU7CisJdGV4dC1hdXRvc3BhY2U6aWRlb2dyYXBoLW51bWVyaWM7CisJZm9udC1zaXplOjEwLjBwdDsKKwlmb250LWZhbWlseToiQXJpYWwiLCJzYW5zLXNlcmlmIjsKKwltc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTt9CitwLk1zb1RvYzIsIGxpLk1zb1RvYzIsIGRpdi5Nc29Ub2MyCisJe21zby1zdHlsZS11bmhpZGU6bm87CisJbXNvLXN0eWxlLXBhcmVudDoiVE0gMSI7CisJbXNvLXN0eWxlLW5leHQ6Tm9ybWFsOworCW1hcmdpbi10b3A6Ni4wcHQ7CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjBjbTsKKwltYXJnaW4tbGVmdDoxMS4wcHQ7CisJbWFyZ2luLWJvdHRvbTouMDAwMXB0OworCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsKKwltc28taHlwaGVuYXRlOm5vbmU7CisJcHVuY3R1YXRpb24td3JhcDpzaW1wbGU7CisJdGV4dC1hdXRvc3BhY2U6aWRlb2dyYXBoLW51bWVyaWM7CisJZm9udC1zaXplOjEwLjBwdDsKKwltc28tYmlkaS1mb250LXNpemU6MTIuMHB0OworCWZvbnQtZmFtaWx5OiJBcmlhbCIsInNhbnMtc2VyaWYiOworCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1hbnNpLWxhbmd1YWdlOkVOLVVTOworCW1zby1mYXJlYXN0LWxhbmd1YWdlOkFSLVNBO30KK3AuTXNvVG9jMywgbGkuTXNvVG9jMywgZGl2Lk1zb1RvYzMKKwl7bXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtcGFyZW50OiJUTSAyIjsKKwltc28tc3R5bGUtbmV4dDpOb3JtYWw7CisJbWFyZ2luLXRvcDo2LjBwdDsKKwltYXJnaW4tcmlnaHQ6MGNtOworCW1hcmdpbi1ib3R0b206MGNtOworCW1hcmdpbi1sZWZ0OjIyLjBwdDsKKwltYXJnaW4tYm90dG9tOi4wMDAxcHQ7CisJbXNvLXBhZ2luYXRpb246d2lkb3ctb3JwaGFuOworCW1zby1oeXBoZW5hdGU6bm9uZTsKKwlwdW5jdHVhdGlvbi13cmFwOnNpbXBsZTsKKwl0ZXh0LWF1dG9zcGFjZTppZGVvZ3JhcGgtbnVtZXJpYzsKKwlmb250LXNpemU6MTAuMHB0OworCW1zby1iaWRpLWZvbnQtc2l6ZToxMi4wcHQ7CisJZm9udC1mYW1pbHk6IkFyaWFsIiwic2Fucy1zZXJpZiI7CisJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWFuc2ktbGFuZ3VhZ2U6RU4tVVM7CisJbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6QVItU0E7CisJZm9udC1zdHlsZTppdGFsaWM7fQorcC5Nc29Ub2M0LCBsaS5Nc29Ub2M0LCBkaXYuTXNvVG9jNAorCXttc28tc3R5bGUtdW5oaWRlOm5vOworCW1zby1zdHlsZS1wYXJlbnQ6IlRNIDMiOworCW1zby1zdHlsZS1uZXh0Ok5vcm1hbDsKKwltYXJnaW4tdG9wOjYuMHB0OworCW1hcmdpbi1yaWdodDowY207CisJbWFyZ2luLWJvdHRvbTowY207CisJbWFyZ2luLWxlZnQ6MzMuMHB0OworCW1hcmdpbi1ib3R0b206LjAwMDFwdDsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXB1bmN0dWF0aW9uLXdyYXA6c2ltcGxlOworCXRleHQtYXV0b3NwYWNlOmlkZW9ncmFwaC1udW1lcmljOworCWZvbnQtc2l6ZTo5LjBwdDsKKwltc28tYmlkaS1mb250LXNpemU6MTAuNXB0OworCWZvbnQtZmFtaWx5OiJBcmlhbCIsInNhbnMtc2VyaWYiOworCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1hbnNpLWxhbmd1YWdlOkVOLVVTOworCW1zby1mYXJlYXN0LWxhbmd1YWdlOkFSLVNBOworCWZvbnQtc3R5bGU6aXRhbGljO30KK3AuTXNvVG9jNSwgbGkuTXNvVG9jNSwgZGl2Lk1zb1RvYzUKKwl7bXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtcGFyZW50OiJUTSA0IjsKKwltc28tc3R5bGUtbmV4dDpOb3JtYWw7CisJbWFyZ2luLXRvcDo2LjBwdDsKKwltYXJnaW4tcmlnaHQ6MGNtOworCW1hcmdpbi1ib3R0b206MGNtOworCW1hcmdpbi1sZWZ0OjQ0LjBwdDsKKwltYXJnaW4tYm90dG9tOi4wMDAxcHQ7CisJbXNvLXBhZ2luYXRpb246d2lkb3ctb3JwaGFuOworCW1zby1oeXBoZW5hdGU6bm9uZTsKKwlwdW5jdHVhdGlvbi13cmFwOnNpbXBsZTsKKwl0ZXh0LWF1dG9zcGFjZTppZGVvZ3JhcGgtbnVtZXJpYzsKKwlmb250LXNpemU6OS4wcHQ7CisJbXNvLWJpZGktZm9udC1zaXplOjEwLjVwdDsKKwlmb250LWZhbWlseToiQXJpYWwiLCJzYW5zLXNlcmlmIjsKKwltc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTsKKwlmb250LXN0eWxlOml0YWxpYzt9CitwLk1zb1RvYzYsIGxpLk1zb1RvYzYsIGRpdi5Nc29Ub2M2CisJe21zby1zdHlsZS11bmhpZGU6bm87CisJbXNvLXN0eWxlLW5leHQ6Tm9ybWFsOworCW1hcmdpbi10b3A6MGNtOworCW1hcmdpbi1yaWdodDowY207CisJbWFyZ2luLWJvdHRvbTowY207CisJbWFyZ2luLWxlZnQ6NTUuMHB0OworCW1hcmdpbi1ib3R0b206LjAwMDFwdDsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXB1bmN0dWF0aW9uLXdyYXA6c2ltcGxlOworCXRleHQtYXV0b3NwYWNlOmlkZW9ncmFwaC1udW1lcmljOworCWZvbnQtc2l6ZTo5LjBwdDsKKwltc28tYmlkaS1mb250LXNpemU6MTAuNXB0OworCWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iLCJzZXJpZiI7CisJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWFuc2ktbGFuZ3VhZ2U6RU4tVVM7CisJbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6QVItU0E7fQorcC5Nc29Ub2M3LCBsaS5Nc29Ub2M3LCBkaXYuTXNvVG9jNworCXttc28tc3R5bGUtdW5oaWRlOm5vOworCW1zby1zdHlsZS1uZXh0Ok5vcm1hbDsKKwltYXJnaW4tdG9wOjBjbTsKKwltYXJnaW4tcmlnaHQ6MGNtOworCW1hcmdpbi1ib3R0b206MGNtOworCW1hcmdpbi1sZWZ0OjY2LjBwdDsKKwltYXJnaW4tYm90dG9tOi4wMDAxcHQ7CisJbXNvLXBhZ2luYXRpb246d2lkb3ctb3JwaGFuOworCW1zby1oeXBoZW5hdGU6bm9uZTsKKwlwdW5jdHVhdGlvbi13cmFwOnNpbXBsZTsKKwl0ZXh0LWF1dG9zcGFjZTppZGVvZ3JhcGgtbnVtZXJpYzsKKwlmb250LXNpemU6OS4wcHQ7CisJbXNvLWJpZGktZm9udC1zaXplOjEwLjVwdDsKKwlmb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIiwic2VyaWYiOworCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1hbnNpLWxhbmd1YWdlOkVOLVVTOworCW1zby1mYXJlYXN0LWxhbmd1YWdlOkFSLVNBO30KK3AuTXNvVG9jOCwgbGkuTXNvVG9jOCwgZGl2Lk1zb1RvYzgKKwl7bXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtbmV4dDpOb3JtYWw7CisJbWFyZ2luLXRvcDowY207CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjBjbTsKKwltYXJnaW4tbGVmdDo3Ny4wcHQ7CisJbWFyZ2luLWJvdHRvbTouMDAwMXB0OworCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsKKwltc28taHlwaGVuYXRlOm5vbmU7CisJcHVuY3R1YXRpb24td3JhcDpzaW1wbGU7CisJdGV4dC1hdXRvc3BhY2U6aWRlb2dyYXBoLW51bWVyaWM7CisJZm9udC1zaXplOjkuMHB0OworCW1zby1iaWRpLWZvbnQtc2l6ZToxMC41cHQ7CisJZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiIsInNlcmlmIjsKKwltc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTt9CitwLk1zb1RvYzksIGxpLk1zb1RvYzksIGRpdi5Nc29Ub2M5CisJe21zby1zdHlsZS11bmhpZGU6bm87CisJbXNvLXN0eWxlLW5leHQ6Tm9ybWFsOworCW1hcmdpbi10b3A6MGNtOworCW1hcmdpbi1yaWdodDowY207CisJbWFyZ2luLWJvdHRvbTowY207CisJbWFyZ2luLWxlZnQ6ODguMHB0OworCW1hcmdpbi1ib3R0b206LjAwMDFwdDsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXB1bmN0dWF0aW9uLXdyYXA6c2ltcGxlOworCXRleHQtYXV0b3NwYWNlOmlkZW9ncmFwaC1udW1lcmljOworCWZvbnQtc2l6ZTo5LjBwdDsKKwltc28tYmlkaS1mb250LXNpemU6MTAuNXB0OworCWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iLCJzZXJpZiI7CisJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWFuc2ktbGFuZ3VhZ2U6RU4tVVM7CisJbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6QVItU0E7fQorcC5Nc29Gb290bm90ZVRleHQsIGxpLk1zb0Zvb3Rub3RlVGV4dCwgZGl2Lk1zb0Zvb3Rub3RlVGV4dAorCXttc28tc3R5bGUtdW5oaWRlOm5vOworCW1hcmdpbi10b3A6MGNtOworCW1hcmdpbi1yaWdodDowY207CisJbWFyZ2luLWJvdHRvbTo2LjBwdDsKKwltYXJnaW4tbGVmdDowY207CisJdGV4dC1hbGlnbjpqdXN0aWZ5OworCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsKKwltc28taHlwaGVuYXRlOm5vbmU7CisJcHVuY3R1YXRpb24td3JhcDpzaW1wbGU7CisJdGV4dC1hdXRvc3BhY2U6aWRlb2dyYXBoLW51bWVyaWM7CisJZm9udC1zaXplOjguMHB0OworCW1zby1iaWRpLWZvbnQtc2l6ZToxMC4wcHQ7CisJZm9udC1mYW1pbHk6IkFyaWFsIiwic2Fucy1zZXJpZiI7CisJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWJpZGktZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWFuc2ktbGFuZ3VhZ2U6RU4tVVM7CisJbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6QVItU0E7fQorcC5Nc29IZWFkZXIsIGxpLk1zb0hlYWRlciwgZGl2Lk1zb0hlYWRlcgorCXttc28tc3R5bGUtdW5oaWRlOm5vOworCW1hcmdpbi10b3A6MGNtOworCW1hcmdpbi1yaWdodDowY207CisJbWFyZ2luLWJvdHRvbTo2LjBwdDsKKwltYXJnaW4tbGVmdDowY207CisJdGV4dC1hbGlnbjpqdXN0aWZ5OworCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsKKwltc28taHlwaGVuYXRlOm5vbmU7CisJdGFiLXN0b3BzOmNlbnRlciA4LjBjbSByaWdodCAxNi4wY207CisJcHVuY3R1YXRpb24td3JhcDpzaW1wbGU7CisJdGV4dC1hdXRvc3BhY2U6aWRlb2dyYXBoLW51bWVyaWM7CisJZm9udC1zaXplOjExLjBwdDsKKwltc28tYmlkaS1mb250LXNpemU6MTAuMHB0OworCWZvbnQtZmFtaWx5OiJBcmlhbCIsInNhbnMtc2VyaWYiOworCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1hbnNpLWxhbmd1YWdlOkVOLVVTOworCW1zby1mYXJlYXN0LWxhbmd1YWdlOkFSLVNBO30KK3AuTXNvRm9vdGVyLCBsaS5Nc29Gb290ZXIsIGRpdi5Nc29Gb290ZXIKKwl7bXNvLXN0eWxlLXVuaGlkZTpubzsKKwltYXJnaW4tdG9wOjBjbTsKKwltYXJnaW4tcmlnaHQ6MGNtOworCW1hcmdpbi1ib3R0b206Ni4wcHQ7CisJbWFyZ2luLWxlZnQ6MGNtOworCXRleHQtYWxpZ246anVzdGlmeTsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW4gbm8tbGluZS1udW1iZXJzOworCW1zby1oeXBoZW5hdGU6bm9uZTsKKwl0YWItc3RvcHM6Y2VudGVyIDI0MC45cHQgcmlnaHQgNDgxLjg1cHQ7CisJcHVuY3R1YXRpb24td3JhcDpzaW1wbGU7CisJdGV4dC1hdXRvc3BhY2U6aWRlb2dyYXBoLW51bWVyaWM7CisJZm9udC1zaXplOjExLjBwdDsKKwltc28tYmlkaS1mb250LXNpemU6MTAuMHB0OworCWZvbnQtZmFtaWx5OiJBcmlhbCIsInNhbnMtc2VyaWYiOworCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1hbnNpLWxhbmd1YWdlOkVOLVVTOworCW1zby1mYXJlYXN0LWxhbmd1YWdlOkFSLVNBO30KK3AuTXNvSW5kZXhIZWFkaW5nLCBsaS5Nc29JbmRleEhlYWRpbmcsIGRpdi5Nc29JbmRleEhlYWRpbmcKKwl7bXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtbmV4dDoiSW5kZXggMSI7CisJbWFyZ2luLXRvcDowY207CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjYuMHB0OworCW1hcmdpbi1sZWZ0OjBjbTsKKwl0ZXh0LWFsaWduOmp1c3RpZnk7CisJbXNvLXBhZ2luYXRpb246d2lkb3ctb3JwaGFuOworCW1zby1oeXBoZW5hdGU6bm9uZTsKKwlwdW5jdHVhdGlvbi13cmFwOnNpbXBsZTsKKwl0ZXh0LWF1dG9zcGFjZTppZGVvZ3JhcGgtbnVtZXJpYzsKKwlmb250LXNpemU6MTEuMHB0OworCW1zby1iaWRpLWZvbnQtc2l6ZToxMC4wcHQ7CisJZm9udC1mYW1pbHk6IkFyaWFsIiwic2Fucy1zZXJpZiI7CisJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWJpZGktZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWFuc2ktbGFuZ3VhZ2U6RU4tVVM7CisJbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6QVItU0E7fQorcC5Nc29MaXN0LCBsaS5Nc29MaXN0LCBkaXYuTXNvTGlzdAorCXttc28tc3R5bGUtdW5oaWRlOm5vOworCW1zby1zdHlsZS1wYXJlbnQ6IkNvcnBzIGRlIHRleHRlIjsKKwltYXJnaW4tdG9wOjBjbTsKKwltYXJnaW4tcmlnaHQ6MGNtOworCW1hcmdpbi1ib3R0b206Ni4wcHQ7CisJbWFyZ2luLWxlZnQ6MGNtOworCXRleHQtYWxpZ246anVzdGlmeTsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXB1bmN0dWF0aW9uLXdyYXA6c2ltcGxlOworCXRleHQtYXV0b3NwYWNlOmlkZW9ncmFwaC1udW1lcmljOworCWZvbnQtc2l6ZToxMS4wcHQ7CisJbXNvLWJpZGktZm9udC1zaXplOjEwLjBwdDsKKwlmb250LWZhbWlseToiQXJpYWwiLCJzYW5zLXNlcmlmIjsKKwltc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYmlkaS1mb250LWZhbWlseTpUYWhvbWE7CisJbXNvLWFuc2ktbGFuZ3VhZ2U6RU4tVVM7CisJbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6QVItU0E7fQorcC5Nc29Cb2R5VGV4dCwgbGkuTXNvQm9keVRleHQsIGRpdi5Nc29Cb2R5VGV4dAorCXttc28tc3R5bGUtdW5oaWRlOm5vOworCW1hcmdpbi10b3A6MGNtOworCW1hcmdpbi1yaWdodDowY207CisJbWFyZ2luLWJvdHRvbTo2LjBwdDsKKwltYXJnaW4tbGVmdDowY207CisJdGV4dC1hbGlnbjpqdXN0aWZ5OworCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsKKwltc28taHlwaGVuYXRlOm5vbmU7CisJcHVuY3R1YXRpb24td3JhcDpzaW1wbGU7CisJdGV4dC1hdXRvc3BhY2U6aWRlb2dyYXBoLW51bWVyaWM7CisJZm9udC1zaXplOjExLjBwdDsKKwltc28tYmlkaS1mb250LXNpemU6MTAuMHB0OworCWZvbnQtZmFtaWx5OiJBcmlhbCIsInNhbnMtc2VyaWYiOworCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1hbnNpLWxhbmd1YWdlOkVOLVVTOworCW1zby1mYXJlYXN0LWxhbmd1YWdlOkFSLVNBO30KK2E6bGluaywgc3Bhbi5Nc29IeXBlcmxpbmsKKwl7bXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtcGFyZW50OiJQb2xpY2UgcGFyIGTpZmF1dDEiOworCWNvbG9yOmJsdWU7CisJdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTsKKwl0ZXh0LXVuZGVybGluZTpzaW5nbGU7fQorYTp2aXNpdGVkLCBzcGFuLk1zb0h5cGVybGlua0ZvbGxvd2VkCisJe21zby1zdHlsZS11bmhpZGU6bm87CisJbXNvLXN0eWxlLXBhcmVudDoiIjsKKwljb2xvcjptYXJvb247CisJbXNvLWFuc2ktbGFuZ3VhZ2U6IzAwRkY7CisJbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6IzAwRkY7CisJbXNvLWJpZGktbGFuZ3VhZ2U6IzAwRkY7CisJdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTsKKwl0ZXh0LXVuZGVybGluZTpzaW5nbGU7fQorc3Bhbi5DYXJhY3RyZXNkZW5vdGVkZWJhc2RlcGFnZQorCXttc28tc3R5bGUtbmFtZToiQ2FyYWN06HJlcyBkZSBub3RlIGRlIGJhcyBkZSBwYWdlIjsKKwltc28tc3R5bGUtdW5oaWRlOm5vOworCW1zby1zdHlsZS1wYXJlbnQ6IlBvbGljZSBwYXIgZOlmYXV0MSI7CisJbXNvLWFuc2ktZm9udC1zaXplOjguMHB0OworCXBvc2l0aW9uOnJlbGF0aXZlOworCXRvcDotMy4wcHQ7CisJbXNvLXRleHQtcmFpc2U6My4wcHQ7fQorc3Bhbi5DYXJhY3RyZXNkZW51bXJvdGF0aW9uCisJe21zby1zdHlsZS1uYW1lOiJDYXJhY3TocmVzIGRlIG51belyb3RhdGlvbiI7CisJbXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtcGFyZW50OiIiO30KK3NwYW4uUHVjZXMKKwl7bXNvLXN0eWxlLW5hbWU6UHVjZXM7CisJbXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtcGFyZW50OiIiOworCWZvbnQtZmFtaWx5Ok9wZW5TeW1ib2w7CisJbXNvLWFzY2lpLWZvbnQtZmFtaWx5Ok9wZW5TeW1ib2w7CisJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6T3BlblN5bWJvbDsKKwltc28taGFuc2ktZm9udC1mYW1pbHk6T3BlblN5bWJvbDsKKwltc28tYmlkaS1mb250LWZhbWlseTpPcGVuU3ltYm9sO30KK3NwYW4uVGV4dGVzb3VyY2UKKwl7bXNvLXN0eWxlLW5hbWU6IlRleHRlIHNvdXJjZSI7CisJbXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtcGFyZW50OiIiOworCWZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7CisJbXNvLWFzY2lpLWZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7CisJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3IjsKKwltc28taGFuc2ktZm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3IjsKKwltc28tYmlkaS1mb250LWZhbWlseToiQ291cmllciBOZXciO30KK3NwYW4uV1c4TnVtMXoxCisJe21zby1zdHlsZS1uYW1lOldXOE51bTF6MTsKKwltc28tc3R5bGUtdW5oaWRlOm5vOworCW1zby1zdHlsZS1wYXJlbnQ6IiI7CisJZm9udC13ZWlnaHQ6bm9ybWFsO30KK3NwYW4uV1c4TnVtMnoxCisJe21zby1zdHlsZS1uYW1lOldXOE51bTJ6MTsKKwltc28tc3R5bGUtdW5oaWRlOm5vOworCW1zby1zdHlsZS1wYXJlbnQ6IiI7CisJZm9udC13ZWlnaHQ6Ym9sZDsKKwltc28tYmlkaS1mb250LXdlaWdodDpub3JtYWw7fQorc3Bhbi5Qb2xpY2VwYXJkZmF1dDEKKwl7bXNvLXN0eWxlLW5hbWU6IlBvbGljZSBwYXIgZOlmYXV0MSI7CisJbXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtcGFyZW50OiIiO30KK3NwYW4uQ2FyQ2FyCisJe21zby1zdHlsZS1uYW1lOiIgQ2FyIENhciI7CisJbXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtcGFyZW50OiJQb2xpY2UgcGFyIGTpZmF1dDEiOworCW1zby1hbnNpLWZvbnQtc2l6ZToxMS4wcHQ7CisJZm9udC1mYW1pbHk6IkFyaWFsIiwic2Fucy1zZXJpZiI7CisJbXNvLWFzY2lpLWZvbnQtZmFtaWx5OkFyaWFsOworCW1zby1oYW5zaS1mb250LWZhbWlseTpBcmlhbDsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTsKKwltc28tYmlkaS1sYW5ndWFnZTpBUi1TQTt9CitzcGFuLkNhcmFjdHJlc2Rlbm90ZWRlZmluCisJe21zby1zdHlsZS1uYW1lOiJDYXJhY3TocmVzIGRlIG5vdGUgZGUgZmluIjsKKwltc28tc3R5bGUtdW5oaWRlOm5vOworCW1zby1zdHlsZS1wYXJlbnQ6IiI7fQorcC5UaXRyZTEsIGxpLlRpdHJlMSwgZGl2LlRpdHJlMQorCXttc28tc3R5bGUtbmFtZTpUaXRyZTE7CisJbXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtbmV4dDoiQ29ycHMgZGUgdGV4dGUiOworCW1hcmdpbi10b3A6MTIuMHB0OworCW1hcmdpbi1yaWdodDowY207CisJbWFyZ2luLWJvdHRvbTo2LjBwdDsKKwltYXJnaW4tbGVmdDowY207CisJdGV4dC1hbGlnbjpqdXN0aWZ5OworCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsKKwlwYWdlLWJyZWFrLWFmdGVyOmF2b2lkOworCW1zby1oeXBoZW5hdGU6bm9uZTsKKwlwdW5jdHVhdGlvbi13cmFwOnNpbXBsZTsKKwl0ZXh0LWF1dG9zcGFjZTppZGVvZ3JhcGgtbnVtZXJpYzsKKwlmb250LXNpemU6MTQuMHB0OworCWZvbnQtZmFtaWx5OiJBcmlhbCIsInNhbnMtc2VyaWYiOworCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJBcmlhbCBVbmljb2RlIE1TIjsKKwltc28tYmlkaS1mb250LWZhbWlseTpUYWhvbWE7CisJbXNvLWFuc2ktbGFuZ3VhZ2U6RU4tVVM7CisJbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6QVItU0E7fQorcC5QdWNlMWZpbiwgbGkuUHVjZTFmaW4sIGRpdi5QdWNlMWZpbgorCXttc28tc3R5bGUtbmFtZToiUHVjZSAxIGZpbiI7CisJbXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtcGFyZW50Okxpc3RlOworCW1hcmdpbi10b3A6MGNtOworCW1hcmdpbi1yaWdodDowY207CisJbWFyZ2luLWJvdHRvbToxMi4wcHQ7CisJbWFyZ2luLWxlZnQ6MTguMHB0OworCXRleHQtYWxpZ246anVzdGlmeTsKKwl0ZXh0LWluZGVudDotMTguMHB0OworCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsKKwltc28taHlwaGVuYXRlOm5vbmU7CisJcHVuY3R1YXRpb24td3JhcDpzaW1wbGU7CisJdGV4dC1hdXRvc3BhY2U6aWRlb2dyYXBoLW51bWVyaWM7CisJZm9udC1zaXplOjExLjBwdDsKKwltc28tYmlkaS1mb250LXNpemU6MTAuMHB0OworCWZvbnQtZmFtaWx5OiJBcmlhbCIsInNhbnMtc2VyaWYiOworCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1iaWRpLWZvbnQtZmFtaWx5OlRhaG9tYTsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTt9CitwLkNvbnRlbnVkZXRhYmxlYXUsIGxpLkNvbnRlbnVkZXRhYmxlYXUsIGRpdi5Db250ZW51ZGV0YWJsZWF1CisJe21zby1zdHlsZS1uYW1lOiJDb250ZW51IGRlIHRhYmxlYXUiOworCW1zby1zdHlsZS11bmhpZGU6bm87CisJbWFyZ2luLXRvcDowY207CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjYuMHB0OworCW1hcmdpbi1sZWZ0OjBjbTsKKwl0ZXh0LWFsaWduOmp1c3RpZnk7CisJbXNvLXBhZ2luYXRpb246d2lkb3ctb3JwaGFuIG5vLWxpbmUtbnVtYmVyczsKKwltc28taHlwaGVuYXRlOm5vbmU7CisJcHVuY3R1YXRpb24td3JhcDpzaW1wbGU7CisJdGV4dC1hdXRvc3BhY2U6aWRlb2dyYXBoLW51bWVyaWM7CisJZm9udC1zaXplOjExLjBwdDsKKwltc28tYmlkaS1mb250LXNpemU6MTAuMHB0OworCWZvbnQtZmFtaWx5OiJBcmlhbCIsInNhbnMtc2VyaWYiOworCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1hbnNpLWxhbmd1YWdlOkVOLVVTOworCW1zby1mYXJlYXN0LWxhbmd1YWdlOkFSLVNBO30KK3AuVGl0cmVkZXRhYmxlYXUsIGxpLlRpdHJlZGV0YWJsZWF1LCBkaXYuVGl0cmVkZXRhYmxlYXUKKwl7bXNvLXN0eWxlLW5hbWU6IlRpdHJlIGRlIHRhYmxlYXUiOworCW1zby1zdHlsZS11bmhpZGU6bm87CisJbXNvLXN0eWxlLXBhcmVudDoiQ29udGVudSBkZSB0YWJsZWF1IjsKKwltYXJnaW4tdG9wOjBjbTsKKwltYXJnaW4tcmlnaHQ6MGNtOworCW1hcmdpbi1ib3R0b206Ni4wcHQ7CisJbWFyZ2luLWxlZnQ6MGNtOworCXRleHQtYWxpZ246Y2VudGVyOworCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbiBuby1saW5lLW51bWJlcnM7CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXB1bmN0dWF0aW9uLXdyYXA6c2ltcGxlOworCXRleHQtYXV0b3NwYWNlOmlkZW9ncmFwaC1udW1lcmljOworCWZvbnQtc2l6ZToxMS4wcHQ7CisJbXNvLWJpZGktZm9udC1zaXplOjEwLjBwdDsKKwlmb250LWZhbWlseToiQXJpYWwiLCJzYW5zLXNlcmlmIjsKKwltc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYmlkaS1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTsKKwlmb250LXdlaWdodDpib2xkO30KK3AuTGdlbmRlMSwgbGkuTGdlbmRlMSwgZGl2LkxnZW5kZTEKKwl7bXNvLXN0eWxlLW5hbWU6TOlnZW5kZTE7CisJbXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtbmV4dDpOb3JtYWw7CisJbWFyZ2luLXRvcDo2LjBwdDsKKwltYXJnaW4tcmlnaHQ6MGNtOworCW1hcmdpbi1ib3R0b206Ni4wcHQ7CisJbWFyZ2luLWxlZnQ6MGNtOworCXRleHQtYWxpZ246anVzdGlmeTsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXB1bmN0dWF0aW9uLXdyYXA6c2ltcGxlOworCXRleHQtYXV0b3NwYWNlOmlkZW9ncmFwaC1udW1lcmljOworCWZvbnQtc2l6ZToxMS4wcHQ7CisJbXNvLWJpZGktZm9udC1zaXplOjEwLjBwdDsKKwlmb250LWZhbWlseToiQXJpYWwiLCJzYW5zLXNlcmlmIjsKKwltc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYmlkaS1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTsKKwlmb250LXdlaWdodDpib2xkOworCW1zby1iaWRpLWZvbnQtd2VpZ2h0Om5vcm1hbDt9CitwLkNvbnRlbnVkdWNhZHJlLCBsaS5Db250ZW51ZHVjYWRyZSwgZGl2LkNvbnRlbnVkdWNhZHJlCisJe21zby1zdHlsZS1uYW1lOiJDb250ZW51IGR1IGNhZHJlIjsKKwltc28tc3R5bGUtdW5oaWRlOm5vOworCW1zby1zdHlsZS1wYXJlbnQ6IkNvcnBzIGRlIHRleHRlIjsKKwltYXJnaW4tdG9wOjBjbTsKKwltYXJnaW4tcmlnaHQ6MGNtOworCW1hcmdpbi1ib3R0b206Ni4wcHQ7CisJbWFyZ2luLWxlZnQ6MGNtOworCXRleHQtYWxpZ246anVzdGlmeTsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXB1bmN0dWF0aW9uLXdyYXA6c2ltcGxlOworCXRleHQtYXV0b3NwYWNlOmlkZW9ncmFwaC1udW1lcmljOworCWZvbnQtc2l6ZToxMS4wcHQ7CisJbXNvLWJpZGktZm9udC1zaXplOjEwLjBwdDsKKwlmb250LWZhbWlseToiQXJpYWwiLCJzYW5zLXNlcmlmIjsKKwltc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYmlkaS1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTt9CitwLkRlc3NpbiwgbGkuRGVzc2luLCBkaXYuRGVzc2luCisJe21zby1zdHlsZS1uYW1lOkRlc3NpbjsKKwltc28tc3R5bGUtdW5oaWRlOm5vOworCW1zby1zdHlsZS1wYXJlbnQ6TOlnZW5kZTE7CisJbWFyZ2luLXRvcDo2LjBwdDsKKwltYXJnaW4tcmlnaHQ6MGNtOworCW1hcmdpbi1ib3R0b206Ni4wcHQ7CisJbWFyZ2luLWxlZnQ6MGNtOworCXRleHQtYWxpZ246anVzdGlmeTsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXB1bmN0dWF0aW9uLXdyYXA6c2ltcGxlOworCXRleHQtYXV0b3NwYWNlOmlkZW9ncmFwaC1udW1lcmljOworCWZvbnQtc2l6ZToxMS4wcHQ7CisJbXNvLWJpZGktZm9udC1zaXplOjEwLjBwdDsKKwlmb250LWZhbWlseToiQXJpYWwiLCJzYW5zLXNlcmlmIjsKKwltc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYmlkaS1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTsKKwlmb250LXdlaWdodDpib2xkOworCW1zby1iaWRpLWZvbnQtd2VpZ2h0Om5vcm1hbDt9CitwLkluZGV4LCBsaS5JbmRleCwgZGl2LkluZGV4CisJe21zby1zdHlsZS1uYW1lOkluZGV4OworCW1zby1zdHlsZS11bmhpZGU6bm87CisJbWFyZ2luLXRvcDowY207CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjYuMHB0OworCW1hcmdpbi1sZWZ0OjBjbTsKKwl0ZXh0LWFsaWduOmp1c3RpZnk7CisJbXNvLXBhZ2luYXRpb246d2lkb3ctb3JwaGFuIG5vLWxpbmUtbnVtYmVyczsKKwltc28taHlwaGVuYXRlOm5vbmU7CisJcHVuY3R1YXRpb24td3JhcDpzaW1wbGU7CisJdGV4dC1hdXRvc3BhY2U6aWRlb2dyYXBoLW51bWVyaWM7CisJZm9udC1zaXplOjExLjBwdDsKKwltc28tYmlkaS1mb250LXNpemU6MTAuMHB0OworCWZvbnQtZmFtaWx5OiJBcmlhbCIsInNhbnMtc2VyaWYiOworCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1iaWRpLWZvbnQtZmFtaWx5OlRhaG9tYTsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTt9CitwLlRhYmxlZGVzbWF0aXJlc25pdmVhdTEwLCBsaS5UYWJsZWRlc21hdGlyZXNuaXZlYXUxMCwgZGl2LlRhYmxlZGVzbWF0aXJlc25pdmVhdTEwCisJe21zby1zdHlsZS1uYW1lOiJUYWJsZSBkZXMgbWF0aehyZXMgbml2ZWF1IDEwIjsKKwltc28tc3R5bGUtdW5oaWRlOm5vOworCW1zby1zdHlsZS1wYXJlbnQ6SW5kZXg7CisJbWFyZ2luLXRvcDowY207CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjYuMHB0OworCW1hcmdpbi1sZWZ0OjEyNy4zNXB0OworCXRleHQtYWxpZ246anVzdGlmeTsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW4gbm8tbGluZS1udW1iZXJzOworCW1zby1oeXBoZW5hdGU6bm9uZTsKKwl0YWItc3RvcHM6cmlnaHQgZG90dGVkIDM1NC41cHQ7CisJcHVuY3R1YXRpb24td3JhcDpzaW1wbGU7CisJdGV4dC1hdXRvc3BhY2U6aWRlb2dyYXBoLW51bWVyaWM7CisJZm9udC1zaXplOjExLjBwdDsKKwltc28tYmlkaS1mb250LXNpemU6MTAuMHB0OworCWZvbnQtZmFtaWx5OiJBcmlhbCIsInNhbnMtc2VyaWYiOworCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1iaWRpLWZvbnQtZmFtaWx5OlRhaG9tYTsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTt9CitwLlJlcG9ydFRpdGxlLCBsaS5SZXBvcnRUaXRsZSwgZGl2LlJlcG9ydFRpdGxlCisJe21zby1zdHlsZS1uYW1lOiJSZXBvcnQgVGl0bGUiOworCW1zby1zdHlsZS11bmhpZGU6bm87CisJbWFyZ2luLXRvcDo2MC4wcHQ7CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjcyLjBwdDsKKwltYXJnaW4tbGVmdDowY207CisJdGV4dC1hbGlnbjpjZW50ZXI7CisJbXNvLXBhZ2luYXRpb246d2lkb3ctb3JwaGFuOworCW1zby1oeXBoZW5hdGU6bm9uZTsKKwlwdW5jdHVhdGlvbi13cmFwOnNpbXBsZTsKKwl0ZXh0LWF1dG9zcGFjZTppZGVvZ3JhcGgtbnVtZXJpYzsKKwlmb250LXNpemU6MTYuMHB0OworCWZvbnQtZmFtaWx5OiJBcmlhbCIsInNhbnMtc2VyaWYiOworCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCWNvbG9yOm5hdnk7CisJbXNvLWZvbnQta2VybmluZzouNXB0OworCW1zby1hbnNpLWxhbmd1YWdlOiMwMEZGOworCW1zby1mYXJlYXN0LWxhbmd1YWdlOkFSLVNBOworCWZvbnQtd2VpZ2h0OmJvbGQ7CisJbXNvLWJpZGktZm9udC13ZWlnaHQ6bm9ybWFsO30KK3AuSGVhZGluZ05vTnVtYmVyaW5nLCBsaS5IZWFkaW5nTm9OdW1iZXJpbmcsIGRpdi5IZWFkaW5nTm9OdW1iZXJpbmcKKwl7bXNvLXN0eWxlLW5hbWU6IkhlYWRpbmcrTm8gTnVtYmVyaW5nIjsKKwltc28tc3R5bGUtdW5oaWRlOm5vOworCW1hcmdpbi10b3A6MGNtOworCW1hcmdpbi1yaWdodDowY207CisJbWFyZ2luLWJvdHRvbTo2LjBwdDsKKwltYXJnaW4tbGVmdDowY207CisJdGV4dC1hbGlnbjpqdXN0aWZ5OworCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsKKwltc28taHlwaGVuYXRlOm5vbmU7CisJYmFja2dyb3VuZDojRTZFNkU2OworCXB1bmN0dWF0aW9uLXdyYXA6c2ltcGxlOworCXRleHQtYXV0b3NwYWNlOmlkZW9ncmFwaC1udW1lcmljOworCWZvbnQtc2l6ZToxMS4wcHQ7CisJbXNvLWJpZGktZm9udC1zaXplOjEwLjBwdDsKKwlmb250LWZhbWlseToiQXJpYWwiLCJzYW5zLXNlcmlmIjsKKwltc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYmlkaS1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTsKKwlmb250LXdlaWdodDpib2xkOworCW1zby1iaWRpLWZvbnQtd2VpZ2h0Om5vcm1hbDt9CitwLlRhYmxlZGVzaWxsdXN0cmF0aW9uczEsIGxpLlRhYmxlZGVzaWxsdXN0cmF0aW9uczEsIGRpdi5UYWJsZWRlc2lsbHVzdHJhdGlvbnMxCisJe21zby1zdHlsZS1uYW1lOiJUYWJsZSBkZXMgaWxsdXN0cmF0aW9uczEiOworCW1zby1zdHlsZS11bmhpZGU6bm87CisJbXNvLXN0eWxlLW5leHQ6Tm9ybWFsOworCW1hcmdpbi10b3A6MGNtOworCW1hcmdpbi1yaWdodDowY207CisJbWFyZ2luLWJvdHRvbTo2LjBwdDsKKwltYXJnaW4tbGVmdDowY207CisJdGV4dC1hbGlnbjpqdXN0aWZ5OworCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsKKwltc28taHlwaGVuYXRlOm5vbmU7CisJcHVuY3R1YXRpb24td3JhcDpzaW1wbGU7CisJdGV4dC1hdXRvc3BhY2U6aWRlb2dyYXBoLW51bWVyaWM7CisJZm9udC1zaXplOjExLjBwdDsKKwltc28tYmlkaS1mb250LXNpemU6MTAuMHB0OworCWZvbnQtZmFtaWx5OiJBcmlhbCIsInNhbnMtc2VyaWYiOworCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1hbnNpLWxhbmd1YWdlOkVOLVVTOworCW1zby1mYXJlYXN0LWxhbmd1YWdlOkFSLVNBO30KK3AuRXhwbG9yYXRldXJkZWRvY3VtZW50LCBsaS5FeHBsb3JhdGV1cmRlZG9jdW1lbnQsIGRpdi5FeHBsb3JhdGV1cmRlZG9jdW1lbnQKKwl7bXNvLXN0eWxlLW5hbWU6IkV4cGxvcmF0ZXVyIGRlIGRvY3VtZW50IjsKKwltc28tc3R5bGUtdW5oaWRlOm5vOworCW1hcmdpbi10b3A6MGNtOworCW1hcmdpbi1yaWdodDowY207CisJbWFyZ2luLWJvdHRvbTo2LjBwdDsKKwltYXJnaW4tbGVmdDowY207CisJdGV4dC1hbGlnbjpqdXN0aWZ5OworCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsKKwltc28taHlwaGVuYXRlOm5vbmU7CisJYmFja2dyb3VuZDpuYXZ5OworCXB1bmN0dWF0aW9uLXdyYXA6c2ltcGxlOworCXRleHQtYXV0b3NwYWNlOmlkZW9ncmFwaC1udW1lcmljOworCWZvbnQtc2l6ZToxMS4wcHQ7CisJbXNvLWJpZGktZm9udC1zaXplOjEwLjBwdDsKKwlmb250LWZhbWlseToiVGFob21hIiwic2Fucy1zZXJpZiI7CisJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWJpZGktZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWFuc2ktbGFuZ3VhZ2U6RU4tVVM7CisJbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6QVItU0E7fQorcC5MaXN0U3RhcnQsIGxpLkxpc3RTdGFydCwgZGl2Lkxpc3RTdGFydAorCXttc28tc3R5bGUtbmFtZTpMaXN0U3RhcnQ7CisJbXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtcGFyZW50OiIiOworCW1zby1zdHlsZS1uZXh0OiJMaXN0ZSDgIG51belyb3MxIjsKKwltYXJnaW46MGNtOworCW1hcmdpbi1ib3R0b206LjAwMDFwdDsKKwl0ZXh0LWluZGVudDowY207CisJbXNvLXBhZ2luYXRpb246bGluZXMtdG9nZXRoZXI7CisJcGFnZS1icmVhay1hZnRlcjphdm9pZDsKKwltc28tbGlzdDpsMSBsZXZlbDEgbGZvMjsKKwltc28taHlwaGVuYXRlOm5vbmU7CisJdGFiLXN0b3BzOmxpc3QgMjguM3B0OworCWZvbnQtc2l6ZTo5LjBwdDsKKwltc28tYmlkaS1mb250LXNpemU6MTAuMHB0OworCWZvbnQtZmFtaWx5OiJBcmlhbCIsInNhbnMtc2VyaWYiOworCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OkFyaWFsOworCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCWNvbG9yOnB1cnBsZTsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTt9CitwLkluZGV4NDEsIGxpLkluZGV4NDEsIGRpdi5JbmRleDQxCisJe21zby1zdHlsZS1uYW1lOiJJbmRleCA0MSI7CisJbXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtbmV4dDpOb3JtYWw7CisJbWFyZ2luLXRvcDowY207CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjYuMHB0OworCW1hcmdpbi1sZWZ0OjQ0LjBwdDsKKwl0ZXh0LWFsaWduOmp1c3RpZnk7CisJdGV4dC1pbmRlbnQ6LTExLjBwdDsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXB1bmN0dWF0aW9uLXdyYXA6c2ltcGxlOworCXRleHQtYXV0b3NwYWNlOmlkZW9ncmFwaC1udW1lcmljOworCWZvbnQtc2l6ZToxMS4wcHQ7CisJbXNvLWJpZGktZm9udC1zaXplOjEwLjBwdDsKKwlmb250LWZhbWlseToiQXJpYWwiLCJzYW5zLXNlcmlmIjsKKwltc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYmlkaS1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTt9CitwLkluZGV4NTEsIGxpLkluZGV4NTEsIGRpdi5JbmRleDUxCisJe21zby1zdHlsZS1uYW1lOiJJbmRleCA1MSI7CisJbXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtbmV4dDpOb3JtYWw7CisJbWFyZ2luLXRvcDowY207CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjYuMHB0OworCW1hcmdpbi1sZWZ0OjU1LjBwdDsKKwl0ZXh0LWFsaWduOmp1c3RpZnk7CisJdGV4dC1pbmRlbnQ6LTExLjBwdDsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXB1bmN0dWF0aW9uLXdyYXA6c2ltcGxlOworCXRleHQtYXV0b3NwYWNlOmlkZW9ncmFwaC1udW1lcmljOworCWZvbnQtc2l6ZToxMS4wcHQ7CisJbXNvLWJpZGktZm9udC1zaXplOjEwLjBwdDsKKwlmb250LWZhbWlseToiQXJpYWwiLCJzYW5zLXNlcmlmIjsKKwltc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYmlkaS1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTt9CitwLkluZGV4NjEsIGxpLkluZGV4NjEsIGRpdi5JbmRleDYxCisJe21zby1zdHlsZS1uYW1lOiJJbmRleCA2MSI7CisJbXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtbmV4dDpOb3JtYWw7CisJbWFyZ2luLXRvcDowY207CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjYuMHB0OworCW1hcmdpbi1sZWZ0OjY2LjBwdDsKKwl0ZXh0LWFsaWduOmp1c3RpZnk7CisJdGV4dC1pbmRlbnQ6LTExLjBwdDsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXB1bmN0dWF0aW9uLXdyYXA6c2ltcGxlOworCXRleHQtYXV0b3NwYWNlOmlkZW9ncmFwaC1udW1lcmljOworCWZvbnQtc2l6ZToxMS4wcHQ7CisJbXNvLWJpZGktZm9udC1zaXplOjEwLjBwdDsKKwlmb250LWZhbWlseToiQXJpYWwiLCJzYW5zLXNlcmlmIjsKKwltc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYmlkaS1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTt9CitwLkluZGV4NzEsIGxpLkluZGV4NzEsIGRpdi5JbmRleDcxCisJe21zby1zdHlsZS1uYW1lOiJJbmRleCA3MSI7CisJbXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtbmV4dDpOb3JtYWw7CisJbWFyZ2luLXRvcDowY207CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjYuMHB0OworCW1hcmdpbi1sZWZ0Ojc3LjBwdDsKKwl0ZXh0LWFsaWduOmp1c3RpZnk7CisJdGV4dC1pbmRlbnQ6LTExLjBwdDsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXB1bmN0dWF0aW9uLXdyYXA6c2ltcGxlOworCXRleHQtYXV0b3NwYWNlOmlkZW9ncmFwaC1udW1lcmljOworCWZvbnQtc2l6ZToxMS4wcHQ7CisJbXNvLWJpZGktZm9udC1zaXplOjEwLjBwdDsKKwlmb250LWZhbWlseToiQXJpYWwiLCJzYW5zLXNlcmlmIjsKKwltc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYmlkaS1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTt9CitwLkluZGV4ODEsIGxpLkluZGV4ODEsIGRpdi5JbmRleDgxCisJe21zby1zdHlsZS1uYW1lOiJJbmRleCA4MSI7CisJbXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtbmV4dDpOb3JtYWw7CisJbWFyZ2luLXRvcDowY207CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjYuMHB0OworCW1hcmdpbi1sZWZ0Ojg4LjBwdDsKKwl0ZXh0LWFsaWduOmp1c3RpZnk7CisJdGV4dC1pbmRlbnQ6LTExLjBwdDsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXB1bmN0dWF0aW9uLXdyYXA6c2ltcGxlOworCXRleHQtYXV0b3NwYWNlOmlkZW9ncmFwaC1udW1lcmljOworCWZvbnQtc2l6ZToxMS4wcHQ7CisJbXNvLWJpZGktZm9udC1zaXplOjEwLjBwdDsKKwlmb250LWZhbWlseToiQXJpYWwiLCJzYW5zLXNlcmlmIjsKKwltc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYmlkaS1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTt9CitwLkluZGV4OTEsIGxpLkluZGV4OTEsIGRpdi5JbmRleDkxCisJe21zby1zdHlsZS1uYW1lOiJJbmRleCA5MSI7CisJbXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtbmV4dDpOb3JtYWw7CisJbWFyZ2luLXRvcDowY207CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjYuMHB0OworCW1hcmdpbi1sZWZ0Ojk5LjBwdDsKKwl0ZXh0LWFsaWduOmp1c3RpZnk7CisJdGV4dC1pbmRlbnQ6LTExLjBwdDsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXB1bmN0dWF0aW9uLXdyYXA6c2ltcGxlOworCXRleHQtYXV0b3NwYWNlOmlkZW9ncmFwaC1udW1lcmljOworCWZvbnQtc2l6ZToxMS4wcHQ7CisJbXNvLWJpZGktZm9udC1zaXplOjEwLjBwdDsKKwlmb250LWZhbWlseToiQXJpYWwiLCJzYW5zLXNlcmlmIjsKKwltc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYmlkaS1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTt9CitwLkJpYmxpb2dyYXBoeSwgbGkuQmlibGlvZ3JhcGh5LCBkaXYuQmlibGlvZ3JhcGh5CisJe21zby1zdHlsZS1uYW1lOkJpYmxpb2dyYXBoeTsKKwltc28tc3R5bGUtdW5oaWRlOm5vOworCW1hcmdpbi10b3A6NC4wcHQ7CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjQuMHB0OworCW1hcmdpbi1sZWZ0OjBjbTsKKwl0ZXh0LWFsaWduOmp1c3RpZnk7CisJdGV4dC1pbmRlbnQ6MGNtOworCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbiBsaW5lcy10b2dldGhlcjsKKwltc28tbGlzdDpsMiBsZXZlbDEgbGZvMzsKKwltc28taHlwaGVuYXRlOm5vbmU7CisJdGFiLXN0b3BzOmxpc3QgMS4wY207CisJZm9udC1zaXplOjExLjBwdDsKKwltc28tYmlkaS1mb250LXNpemU6MTYuMHB0OworCWZvbnQtZmFtaWx5OiJBcmlhbCIsInNhbnMtc2VyaWYiOworCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1mb250LWtlcm5pbmc6LjVwdDsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTsKKwltc28tYmlkaS1mb250LXdlaWdodDpib2xkO30KK3AuSGVhZGluZ05vTnVtYmVyaW5nTmV3UGFnZSwgbGkuSGVhZGluZ05vTnVtYmVyaW5nTmV3UGFnZSwgZGl2LkhlYWRpbmdOb051bWJlcmluZ05ld1BhZ2UKKwl7bXNvLXN0eWxlLW5hbWU6IkhlYWRpbmcrTm8gTnVtYmVyaW5nK05ldyBQYWdlIjsKKwltc28tc3R5bGUtdW5oaWRlOm5vOworCW1zby1zdHlsZS1wYXJlbnQ6IlRpdHJlIDEiOworCW1zby1zdHlsZS1uZXh0Ok5vcm1hbDsKKwltYXJnaW4tdG9wOjBjbTsKKwltYXJnaW4tcmlnaHQ6MGNtOworCW1hcmdpbi1ib3R0b206MTIuMHB0OworCW1hcmdpbi1sZWZ0OjBjbTsKKwlwYWdlLWJyZWFrLWJlZm9yZTphbHdheXM7CisJbXNvLXBhZ2luYXRpb246d2lkb3ctb3JwaGFuOworCW1zby1vdXRsaW5lLWxldmVsOjE7CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXRhYi1zdG9wczo0Mi41NXB0OworCWJhY2tncm91bmQ6I0NDQ0NDQzsKKwlwdW5jdHVhdGlvbi13cmFwOnNpbXBsZTsKKwl0ZXh0LWF1dG9zcGFjZTppZGVvZ3JhcGgtbnVtZXJpYzsKKwlib3JkZXI6bm9uZTsKKwltc28tYm9yZGVyLXRvcC1hbHQ6c29saWQgYmxhY2sgLjVwdDsKKwltc28tYm9yZGVyLWJvdHRvbS1hbHQ6c29saWQgYmxhY2sgLjVwdDsKKwlwYWRkaW5nOjBjbTsKKwltc28tcGFkZGluZy1hbHQ6MS4wcHQgMGNtIDEuMHB0IDBjbTsKKwlmb250LXNpemU6MTEuMHB0OworCW1zby1iaWRpLWZvbnQtc2l6ZToxMC4wcHQ7CisJZm9udC1mYW1pbHk6IkFyaWFsIiwic2Fucy1zZXJpZiI7CisJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWJpZGktZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWFuc2ktbGFuZ3VhZ2U6RU4tVVM7CisJbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6QVItU0E7CisJZm9udC13ZWlnaHQ6Ym9sZDsKKwltc28tYmlkaS1mb250LXdlaWdodDpub3JtYWw7fQorcC5Cb2xkQ2VudGVyZWQsIGxpLkJvbGRDZW50ZXJlZCwgZGl2LkJvbGRDZW50ZXJlZAorCXttc28tc3R5bGUtbmFtZToiQm9sZCArIENlbnRlcmVkIjsKKwltc28tc3R5bGUtdW5oaWRlOm5vOworCW1hcmdpbi10b3A6MGNtOworCW1hcmdpbi1yaWdodDowY207CisJbWFyZ2luLWJvdHRvbTo2LjBwdDsKKwltYXJnaW4tbGVmdDowY207CisJdGV4dC1hbGlnbjpjZW50ZXI7CisJbXNvLXBhZ2luYXRpb246d2lkb3ctb3JwaGFuOworCW1zby1oeXBoZW5hdGU6bm9uZTsKKwlwdW5jdHVhdGlvbi13cmFwOnNpbXBsZTsKKwl0ZXh0LWF1dG9zcGFjZTppZGVvZ3JhcGgtbnVtZXJpYzsKKwlmb250LXNpemU6MTEuMHB0OworCW1zby1iaWRpLWZvbnQtc2l6ZToxMC4wcHQ7CisJZm9udC1mYW1pbHk6IkFyaWFsIiwic2Fucy1zZXJpZiI7CisJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWJpZGktZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWFuc2ktbGFuZ3VhZ2U6RU4tVVM7CisJbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6QVItU0E7CisJZm9udC13ZWlnaHQ6Ym9sZDt9CitwLkxpc3RlbnVtcm9zMSwgbGkuTGlzdGVudW1yb3MxLCBkaXYuTGlzdGVudW1yb3MxCisJe21zby1zdHlsZS1uYW1lOiJMaXN0ZSDgIG51belyb3MxIjsKKwltc28tc3R5bGUtdW5oaWRlOm5vOworCW1hcmdpbi10b3A6MGNtOworCW1hcmdpbi1yaWdodDowY207CisJbWFyZ2luLWJvdHRvbTo2LjBwdDsKKwltYXJnaW4tbGVmdDowY207CisJdGV4dC1hbGlnbjpqdXN0aWZ5OworCXRleHQtaW5kZW50OjBjbTsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJbXNvLWxpc3Q6bDEgbGV2ZWwxIGxmbzI7CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXRhYi1zdG9wczpsaXN0IDI4LjNwdDsKKwlwdW5jdHVhdGlvbi13cmFwOnNpbXBsZTsKKwl0ZXh0LWF1dG9zcGFjZTppZGVvZ3JhcGgtbnVtZXJpYzsKKwlmb250LXNpemU6MTEuMHB0OworCW1zby1iaWRpLWZvbnQtc2l6ZToxMC4wcHQ7CisJZm9udC1mYW1pbHk6IkFyaWFsIiwic2Fucy1zZXJpZiI7CisJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWJpZGktZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWFuc2ktbGFuZ3VhZ2U6RU4tVVM7CisJbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6QVItU0E7fQorcC5MaXN0ZW51bXJvczIxLCBsaS5MaXN0ZW51bXJvczIxLCBkaXYuTGlzdGVudW1yb3MyMQorCXttc28tc3R5bGUtbmFtZToiTGlzdGUg4CBudW3pcm9zIDIxIjsKKwltc28tc3R5bGUtdW5oaWRlOm5vOworCW1hcmdpbi10b3A6MGNtOworCW1hcmdpbi1yaWdodDowY207CisJbWFyZ2luLWJvdHRvbTo2LjBwdDsKKwltYXJnaW4tbGVmdDowY207CisJdGV4dC1hbGlnbjpqdXN0aWZ5OworCXRleHQtaW5kZW50OjBjbTsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJbXNvLWxpc3Q6bDEgbGV2ZWwxIGxmbzI7CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXRhYi1zdG9wczpsaXN0IDI4LjNwdDsKKwlwdW5jdHVhdGlvbi13cmFwOnNpbXBsZTsKKwl0ZXh0LWF1dG9zcGFjZTppZGVvZ3JhcGgtbnVtZXJpYzsKKwlmb250LXNpemU6MTEuMHB0OworCW1zby1iaWRpLWZvbnQtc2l6ZToxMC4wcHQ7CisJZm9udC1mYW1pbHk6IkFyaWFsIiwic2Fucy1zZXJpZiI7CisJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWJpZGktZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWFuc2ktbGFuZ3VhZ2U6RU4tVVM7CisJbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6QVItU0E7fQorcC5MaXN0ZW51bXJvczMxLCBsaS5MaXN0ZW51bXJvczMxLCBkaXYuTGlzdGVudW1yb3MzMQorCXttc28tc3R5bGUtbmFtZToiTGlzdGUg4CBudW3pcm9zIDMxIjsKKwltc28tc3R5bGUtdW5oaWRlOm5vOworCW1hcmdpbi10b3A6MGNtOworCW1hcmdpbi1yaWdodDowY207CisJbWFyZ2luLWJvdHRvbTo2LjBwdDsKKwltYXJnaW4tbGVmdDowY207CisJdGV4dC1hbGlnbjpqdXN0aWZ5OworCXRleHQtaW5kZW50OjBjbTsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJbXNvLWxpc3Q6bDEgbGV2ZWwxIGxmbzI7CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXRhYi1zdG9wczpsaXN0IDI4LjNwdDsKKwlwdW5jdHVhdGlvbi13cmFwOnNpbXBsZTsKKwl0ZXh0LWF1dG9zcGFjZTppZGVvZ3JhcGgtbnVtZXJpYzsKKwlmb250LXNpemU6MTEuMHB0OworCW1zby1iaWRpLWZvbnQtc2l6ZToxMC4wcHQ7CisJZm9udC1mYW1pbHk6IkFyaWFsIiwic2Fucy1zZXJpZiI7CisJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWJpZGktZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWFuc2ktbGFuZ3VhZ2U6RU4tVVM7CisJbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6QVItU0E7fQorcC5GaWd1cmUsIGxpLkZpZ3VyZSwgZGl2LkZpZ3VyZQorCXttc28tc3R5bGUtbmFtZTpGaWd1cmU7CisJbXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtcGFyZW50OkzpZ2VuZGUxOworCW1hcmdpbi10b3A6Ni4wcHQ7CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjYuMHB0OworCW1hcmdpbi1sZWZ0OjBjbTsKKwl0ZXh0LWFsaWduOmp1c3RpZnk7CisJbXNvLXBhZ2luYXRpb246d2lkb3ctb3JwaGFuOworCW1zby1oeXBoZW5hdGU6bm9uZTsKKwlwdW5jdHVhdGlvbi13cmFwOnNpbXBsZTsKKwl0ZXh0LWF1dG9zcGFjZTppZGVvZ3JhcGgtbnVtZXJpYzsKKwlmb250LXNpemU6MTEuMHB0OworCW1zby1iaWRpLWZvbnQtc2l6ZToxMC4wcHQ7CisJZm9udC1mYW1pbHk6IkFyaWFsIiwic2Fucy1zZXJpZiI7CisJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWJpZGktZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWFuc2ktbGFuZ3VhZ2U6RU4tVVM7CisJbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6QVItU0E7CisJZm9udC13ZWlnaHQ6Ym9sZDsKKwltc28tYmlkaS1mb250LXdlaWdodDpub3JtYWw7fQorcC5UaXRyZTEwLCBsaS5UaXRyZTEwLCBkaXYuVGl0cmUxMAorCXttc28tc3R5bGUtbmFtZToiVGl0cmUgMTAiOworCW1zby1zdHlsZS11bmhpZGU6bm87CisJbXNvLXN0eWxlLXBhcmVudDpUaXRyZTE7CisJbXNvLXN0eWxlLW5leHQ6IkNvcnBzIGRlIHRleHRlIjsKKwltYXJnaW4tdG9wOjEyLjBwdDsKKwltYXJnaW4tcmlnaHQ6MGNtOworCW1hcmdpbi1ib3R0b206Ni4wcHQ7CisJbWFyZ2luLWxlZnQ6MjE2LjBwdDsKKwl0ZXh0LWFsaWduOmp1c3RpZnk7CisJdGV4dC1pbmRlbnQ6LTcyLjBwdDsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJcGFnZS1icmVhay1hZnRlcjphdm9pZDsKKwltc28tb3V0bGluZS1sZXZlbDo5OworCW1zby1saXN0OmwwIGxldmVsOSBsZm8xOworCW1zby1oeXBoZW5hdGU6bm9uZTsKKwl0YWItc3RvcHM6bGlzdCAyMTYuMHB0OworCXB1bmN0dWF0aW9uLXdyYXA6c2ltcGxlOworCXRleHQtYXV0b3NwYWNlOmlkZW9ncmFwaC1udW1lcmljOworCWZvbnQtc2l6ZToxMC41cHQ7CisJZm9udC1mYW1pbHk6IkFyaWFsIiwic2Fucy1zZXJpZiI7CisJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IkFyaWFsIFVuaWNvZGUgTVMiOworCW1zby1iaWRpLWZvbnQtZmFtaWx5OlRhaG9tYTsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTsKKwlmb250LXdlaWdodDpib2xkO30KK3AuQ29udGVudWRlbGlzdGUsIGxpLkNvbnRlbnVkZWxpc3RlLCBkaXYuQ29udGVudWRlbGlzdGUKKwl7bXNvLXN0eWxlLW5hbWU6IkNvbnRlbnUgZGUgbGlzdGUiOworCW1zby1zdHlsZS11bmhpZGU6bm87CisJbWFyZ2luLXRvcDowY207CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjYuMHB0OworCW1hcmdpbi1sZWZ0OjEuMGNtOworCXRleHQtYWxpZ246anVzdGlmeTsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJbXNvLWh5cGhlbmF0ZTpub25lOworCXB1bmN0dWF0aW9uLXdyYXA6c2ltcGxlOworCXRleHQtYXV0b3NwYWNlOmlkZW9ncmFwaC1udW1lcmljOworCWZvbnQtc2l6ZToxMS4wcHQ7CisJbXNvLWJpZGktZm9udC1zaXplOjEwLjBwdDsKKwlmb250LWZhbWlseToiQXJpYWwiLCJzYW5zLXNlcmlmIjsKKwltc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYmlkaS1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTt9CisgLyogUGFnZSBEZWZpbml0aW9ucyAqLworIEBwYWdlCisJe21zby1mb290bm90ZS1zZXBhcmF0b3I6dXJsKCJQYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaGVhZGVyLmh0bWwiKSBmczsKKwltc28tZm9vdG5vdGUtY29udGludWF0aW9uLXNlcGFyYXRvcjp1cmwoIlBhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9oZWFkZXIuaHRtbCIpIGZjczsKKwltc28tZW5kbm90ZS1zZXBhcmF0b3I6dXJsKCJQYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaGVhZGVyLmh0bWwiKSBlczsKKwltc28tZW5kbm90ZS1jb250aW51YXRpb24tc2VwYXJhdG9yOnVybCgiUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2hlYWRlci5odG1sIikgZWNzO30KK0BwYWdlIFdvcmRTZWN0aW9uMQorCXtzaXplOjU5NS4zcHQgODQxLjlwdDsKKwltYXJnaW46NzAuOXB0IDQyLjZwdCA3MC45cHQgNzAuOXB0OworCW1zby1oZWFkZXItbWFyZ2luOjM1LjQ1cHQ7CisJbXNvLWZvb3Rlci1tYXJnaW46MzUuNDVwdDsKKwltc28taGVhZGVyOnVybCgiUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2hlYWRlci5odG1sIikgaDE7CisJbXNvLWV2ZW4tZm9vdGVyOnVybCgiUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2hlYWRlci5odG1sIikgZWYxOworCW1zby1mb290ZXI6dXJsKCJQYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaGVhZGVyLmh0bWwiKSBmMTsKKwltc28tZmlyc3QtaGVhZGVyOnVybCgiUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2hlYWRlci5odG1sIikgZmgxOworCW1zby1maXJzdC1mb290ZXI6dXJsKCJQYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaGVhZGVyLmh0bWwiKSBmZjE7CisJbXNvLXBhcGVyLXNvdXJjZTowO30KK2Rpdi5Xb3JkU2VjdGlvbjEKKwl7cGFnZTpXb3JkU2VjdGlvbjE7fQorQHBhZ2UgV29yZFNlY3Rpb24yCisJe3NpemU6NTk1LjNwdCA4NDEuOXB0OworCW1hcmdpbjo3MC45cHQgNDIuNnB0IDcwLjlwdCA3MC45cHQ7CisJbXNvLWhlYWRlci1tYXJnaW46MzUuNDVwdDsKKwltc28tZm9vdGVyLW1hcmdpbjozNS40NXB0OworCW1zby1oZWFkZXI6dXJsKCJQYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaGVhZGVyLmh0bWwiKSBoMTsKKwltc28tZXZlbi1mb290ZXI6dXJsKCJQYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaGVhZGVyLmh0bWwiKSBlZjE7CisJbXNvLWZvb3Rlcjp1cmwoIlBhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9oZWFkZXIuaHRtbCIpIGYxOworCW1zby1maXJzdC1oZWFkZXI6dXJsKCJQYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaGVhZGVyLmh0bWwiKSBmaDE7CisJbXNvLWZpcnN0LWZvb3Rlcjp1cmwoIlBhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9oZWFkZXIuaHRtbCIpIGZmMTsKKwltc28tcGFwZXItc291cmNlOjA7fQorZGl2LldvcmRTZWN0aW9uMgorCXtwYWdlOldvcmRTZWN0aW9uMjt9CitAcGFnZSBXb3JkU2VjdGlvbjMKKwl7c2l6ZTo1OTUuM3B0IDg0MS45cHQ7CisJbWFyZ2luOjcwLjlwdCA0Mi42cHQgNzAuOXB0IDcwLjlwdDsKKwltc28taGVhZGVyLW1hcmdpbjozNS40NXB0OworCW1zby1mb290ZXItbWFyZ2luOjM1LjQ1cHQ7CisJbXNvLWhlYWRlcjp1cmwoIlBhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9oZWFkZXIuaHRtbCIpIGgxOworCW1zby1ldmVuLWZvb3Rlcjp1cmwoIlBhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9oZWFkZXIuaHRtbCIpIGVmMTsKKwltc28tZm9vdGVyOnVybCgiUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2hlYWRlci5odG1sIikgZjE7CisJbXNvLWZpcnN0LWhlYWRlcjp1cmwoIlBhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9oZWFkZXIuaHRtbCIpIGZoMTsKKwltc28tZmlyc3QtZm9vdGVyOnVybCgiUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2hlYWRlci5odG1sIikgZmYxOworCW1zby1wYXBlci1zb3VyY2U6MDt9CitkaXYuV29yZFNlY3Rpb24zCisJe3BhZ2U6V29yZFNlY3Rpb24zO30KKyAvKiBMaXN0IERlZmluaXRpb25zICovCisgQGxpc3QgbDAKKwl7bXNvLWxpc3QtaWQ6MTsKKwltc28tbGlzdC10ZW1wbGF0ZS1pZHM6MTt9CitAbGlzdCBsMDpsZXZlbDEKKwl7bXNvLWxldmVsLXRleHQ6JTE7CisJbXNvLWxldmVsLXRhYi1zdG9wOjEuMGNtOworCW1zby1sZXZlbC1udW1iZXItcG9zaXRpb246bGVmdDsKKwltYXJnaW4tbGVmdDoxLjBjbTsKKwl0ZXh0LWluZGVudDotMS4wY207fQorQGxpc3QgbDA6bGV2ZWwyCisJe21zby1sZXZlbC10ZXh0OiIlMVwuJTIiOworCW1zby1sZXZlbC10YWItc3RvcDo0Mi41NXB0OworCW1zby1sZXZlbC1udW1iZXItcG9zaXRpb246bGVmdDsKKwltYXJnaW4tbGVmdDo0Mi41NXB0OworCXRleHQtaW5kZW50Oi0xLjBjbTt9CitAbGlzdCBsMDpsZXZlbDMKKwl7bXNvLWxldmVsLXRleHQ6IiUxXC4lMlwuJTMiOworCW1zby1sZXZlbC10YWItc3RvcDo0Mi41NXB0OworCW1zby1sZXZlbC1udW1iZXItcG9zaXRpb246bGVmdDsKKwltYXJnaW4tbGVmdDo0Mi41NXB0OworCXRleHQtaW5kZW50Oi00Mi41NXB0O30KK0BsaXN0IGwwOmxldmVsNAorCXttc28tbGV2ZWwtdGV4dDoiJTFcLiUyXC4lM1wuJTQiOworCW1zby1sZXZlbC10YWItc3RvcDoxLjBjbTsKKwltc28tbGV2ZWwtbnVtYmVyLXBvc2l0aW9uOmxlZnQ7CisJbWFyZ2luLWxlZnQ6MS4wY207CisJdGV4dC1pbmRlbnQ6LTEuMGNtO30KK0BsaXN0IGwwOmxldmVsNQorCXttc28tbGV2ZWwtdGV4dDoiJTFcLiUyXC4lM1wuJTRcLiU1IjsKKwltc28tbGV2ZWwtdGFiLXN0b3A6MS4wY207CisJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0OworCW1hcmdpbi1sZWZ0OjEuMGNtOworCXRleHQtaW5kZW50Oi0xLjBjbTt9CitAbGlzdCBsMDpsZXZlbDYKKwl7bXNvLWxldmVsLXRleHQ6IiUxXC4lMlwuJTNcLiU0XC4lNVwuJTZcLiI7CisJbXNvLWxldmVsLXRhYi1zdG9wOjEzNi44cHQ7CisJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0OworCW1hcmdpbi1sZWZ0OjEzNi44cHQ7CisJdGV4dC1pbmRlbnQ6LTQ2LjhwdDt9CitAbGlzdCBsMDpsZXZlbDcKKwl7bXNvLWxldmVsLXRleHQ6IiUxXC4lMlwuJTNcLiU0XC4lNVwuJTZcLiU3XC4iOworCW1zby1sZXZlbC10YWItc3RvcDoxNjIuMHB0OworCW1zby1sZXZlbC1udW1iZXItcG9zaXRpb246bGVmdDsKKwltYXJnaW4tbGVmdDoxNjIuMHB0OworCXRleHQtaW5kZW50Oi01NC4wcHQ7fQorQGxpc3QgbDA6bGV2ZWw4CisJe21zby1sZXZlbC10ZXh0OiIlMVwuJTJcLiUzXC4lNFwuJTVcLiU2XC4lN1wuJThcLiI7CisJbXNvLWxldmVsLXRhYi1zdG9wOjE4Ny4ycHQ7CisJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0OworCW1hcmdpbi1sZWZ0OjE4Ny4ycHQ7CisJdGV4dC1pbmRlbnQ6LTYxLjJwdDt9CitAbGlzdCBsMDpsZXZlbDkKKwl7bXNvLWxldmVsLXRleHQ6IiUxXC4lMlwuJTNcLiU0XC4lNVwuJTZcLiU3XC4lOFwuJTlcLiI7CisJbXNvLWxldmVsLXRhYi1zdG9wOjIxNi4wcHQ7CisJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0OworCW1hcmdpbi1sZWZ0OjIxNi4wcHQ7CisJdGV4dC1pbmRlbnQ6LTcyLjBwdDt9CitAbGlzdCBsMQorCXttc28tbGlzdC1pZDoyOworCW1zby1saXN0LXRlbXBsYXRlLWlkczoyOworCW1zby1saXN0LW5hbWU6V1c4TnVtMTt9CitAbGlzdCBsMTpsZXZlbDEKKwl7bXNvLWxldmVsLW51bWJlci1mb3JtYXQ6bm9uZTsKKwltc28tbGV2ZWwtc3VmZml4Om5vbmU7CisJbXNvLWxldmVsLXRleHQ6IiI7CisJbXNvLWxldmVsLXRhYi1zdG9wOjI4LjNwdDsKKwltc28tbGV2ZWwtbnVtYmVyLXBvc2l0aW9uOmxlZnQ7CisJbWFyZ2luLWxlZnQ6MjguM3B0OworCXRleHQtaW5kZW50OjBjbTt9CitAbGlzdCBsMTpsZXZlbDIKKwl7bXNvLWxldmVsLXRleHQ6JTI7CisJbXNvLWxldmVsLXRhYi1zdG9wOjE0LjE1cHQ7CisJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0OworCW1hcmdpbi1sZWZ0OjE0LjE1cHQ7CisJdGV4dC1pbmRlbnQ6LTE0LjE1cHQ7CisJbXNvLWFuc2ktZm9udC13ZWlnaHQ6bm9ybWFsO30KK0BsaXN0IGwxOmxldmVsMworCXttc28tbGV2ZWwtbnVtYmVyLWZvcm1hdDphbHBoYS1sb3dlcjsKKwltc28tbGV2ZWwtdGV4dDolMzsKKwltc28tbGV2ZWwtdGFiLXN0b3A6MS4wY207CisJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0OworCW1hcmdpbi1sZWZ0OjEuMGNtOworCXRleHQtaW5kZW50Oi0xNC4ycHQ7CisJbXNvLWFuc2ktZm9udC13ZWlnaHQ6bm9ybWFsO30KK0BsaXN0IGwxOmxldmVsNAorCXttc28tbGV2ZWwtbnVtYmVyLWZvcm1hdDpyb21hbi1sb3dlcjsKKwltc28tbGV2ZWwtdGV4dDolNDsKKwltc28tbGV2ZWwtdGFiLXN0b3A6NDIuNXB0OworCW1zby1sZXZlbC1udW1iZXItcG9zaXRpb246bGVmdDsKKwltYXJnaW4tbGVmdDo0Mi41cHQ7CisJdGV4dC1pbmRlbnQ6LTE0LjE1cHQ7CisJbXNvLWFuc2ktZm9udC13ZWlnaHQ6bm9ybWFsO30KK0BsaXN0IGwxOmxldmVsNQorCXttc28tbGV2ZWwtbnVtYmVyLWZvcm1hdDphbHBoYS1sb3dlcjsKKwltc28tbGV2ZWwtdGV4dDolNTsKKwltc28tbGV2ZWwtdGFiLXN0b3A6OTAuMHB0OworCW1zby1sZXZlbC1udW1iZXItcG9zaXRpb246bGVmdDsKKwltYXJnaW4tbGVmdDo5MC4wcHQ7CisJdGV4dC1pbmRlbnQ6LTE4LjBwdDt9CitAbGlzdCBsMTpsZXZlbDYKKwl7bXNvLWxldmVsLW51bWJlci1mb3JtYXQ6cm9tYW4tbG93ZXI7CisJbXNvLWxldmVsLXRleHQ6JTY7CisJbXNvLWxldmVsLXRhYi1zdG9wOjEwOC4wcHQ7CisJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0OworCW1hcmdpbi1sZWZ0OjEwOC4wcHQ7CisJdGV4dC1pbmRlbnQ6LTE4LjBwdDt9CitAbGlzdCBsMTpsZXZlbDcKKwl7bXNvLWxldmVsLXRleHQ6JTc7CisJbXNvLWxldmVsLXRhYi1zdG9wOjEyNi4wcHQ7CisJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0OworCW1hcmdpbi1sZWZ0OjEyNi4wcHQ7CisJdGV4dC1pbmRlbnQ6LTE4LjBwdDt9CitAbGlzdCBsMTpsZXZlbDgKKwl7bXNvLWxldmVsLW51bWJlci1mb3JtYXQ6YWxwaGEtbG93ZXI7CisJbXNvLWxldmVsLXRleHQ6JTg7CisJbXNvLWxldmVsLXRhYi1zdG9wOjE0NC4wcHQ7CisJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0OworCW1hcmdpbi1sZWZ0OjE0NC4wcHQ7CisJdGV4dC1pbmRlbnQ6LTE4LjBwdDt9CitAbGlzdCBsMTpsZXZlbDkKKwl7bXNvLWxldmVsLW51bWJlci1mb3JtYXQ6cm9tYW4tbG93ZXI7CisJbXNvLWxldmVsLXRleHQ6JTk7CisJbXNvLWxldmVsLXRhYi1zdG9wOjE2Mi4wcHQ7CisJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0OworCW1hcmdpbi1sZWZ0OjE2Mi4wcHQ7CisJdGV4dC1pbmRlbnQ6LTE4LjBwdDt9CitAbGlzdCBsMgorCXttc28tbGlzdC1pZDozOworCW1zby1saXN0LXR5cGU6c2ltcGxlOworCW1zby1saXN0LXRlbXBsYXRlLWlkczozOworCW1zby1saXN0LW5hbWU6V1c4TnVtNDt9CitAbGlzdCBsMjpsZXZlbDEKKwl7bXNvLWxldmVsLXRleHQ6IlxbJTFcXSI7CisJbXNvLWxldmVsLXRhYi1zdG9wOjEuMGNtOworCW1zby1sZXZlbC1udW1iZXItcG9zaXRpb246bGVmdDsKKwltYXJnaW4tbGVmdDoxLjBjbTsKKwl0ZXh0LWluZGVudDotMS4wY207fQorQGxpc3QgbDMKKwl7bXNvLWxpc3QtaWQ6NDsKKwltc28tbGlzdC10ZW1wbGF0ZS1pZHM6NDt9CitAbGlzdCBsMzpsZXZlbDEKKwl7bXNvLWxldmVsLXRleHQ6JTE7CisJbXNvLWxldmVsLXRhYi1zdG9wOjEuMGNtOworCW1zby1sZXZlbC1udW1iZXItcG9zaXRpb246bGVmdDsKKwltYXJnaW4tbGVmdDoxLjBjbTsKKwl0ZXh0LWluZGVudDotMS4wY207fQorQGxpc3QgbDM6bGV2ZWwyCisJe21zby1sZXZlbC10ZXh0OiIlMVwuJTIiOworCW1zby1sZXZlbC10YWItc3RvcDo0Mi41NXB0OworCW1zby1sZXZlbC1udW1iZXItcG9zaXRpb246bGVmdDsKKwltYXJnaW4tbGVmdDo0Mi41NXB0OworCXRleHQtaW5kZW50Oi0xLjBjbTt9CitAbGlzdCBsMzpsZXZlbDMKKwl7bXNvLWxldmVsLXRleHQ6IiUxXC4lMlwuJTMiOworCW1zby1sZXZlbC10YWItc3RvcDo0Mi41NXB0OworCW1zby1sZXZlbC1udW1iZXItcG9zaXRpb246bGVmdDsKKwltYXJnaW4tbGVmdDo0Mi41NXB0OworCXRleHQtaW5kZW50Oi00Mi41NXB0O30KK0BsaXN0IGwzOmxldmVsNAorCXttc28tbGV2ZWwtdGV4dDoiJTFcLiUyXC4lM1wuJTQiOworCW1zby1sZXZlbC10YWItc3RvcDoxLjBjbTsKKwltc28tbGV2ZWwtbnVtYmVyLXBvc2l0aW9uOmxlZnQ7CisJbWFyZ2luLWxlZnQ6MS4wY207CisJdGV4dC1pbmRlbnQ6LTEuMGNtO30KK0BsaXN0IGwzOmxldmVsNQorCXttc28tbGV2ZWwtdGV4dDoiJTFcLiUyXC4lM1wuJTRcLiU1IjsKKwltc28tbGV2ZWwtdGFiLXN0b3A6MS4wY207CisJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0OworCW1hcmdpbi1sZWZ0OjEuMGNtOworCXRleHQtaW5kZW50Oi0xLjBjbTt9CitAbGlzdCBsMzpsZXZlbDYKKwl7bXNvLWxldmVsLXRleHQ6IiUxXC4lMlwuJTNcLiU0XC4lNVwuJTZcLiI7CisJbXNvLWxldmVsLXRhYi1zdG9wOjEzNi44cHQ7CisJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0OworCW1hcmdpbi1sZWZ0OjEzNi44cHQ7CisJdGV4dC1pbmRlbnQ6LTQ2LjhwdDt9CitAbGlzdCBsMzpsZXZlbDcKKwl7bXNvLWxldmVsLXRleHQ6IiUxXC4lMlwuJTNcLiU0XC4lNVwuJTZcLiU3XC4iOworCW1zby1sZXZlbC10YWItc3RvcDoxNjIuMHB0OworCW1zby1sZXZlbC1udW1iZXItcG9zaXRpb246bGVmdDsKKwltYXJnaW4tbGVmdDoxNjIuMHB0OworCXRleHQtaW5kZW50Oi01NC4wcHQ7fQorQGxpc3QgbDM6bGV2ZWw4CisJe21zby1sZXZlbC10ZXh0OiIlMVwuJTJcLiUzXC4lNFwuJTVcLiU2XC4lN1wuJThcLiI7CisJbXNvLWxldmVsLXRhYi1zdG9wOjE4Ny4ycHQ7CisJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0OworCW1hcmdpbi1sZWZ0OjE4Ny4ycHQ7CisJdGV4dC1pbmRlbnQ6LTYxLjJwdDt9CitAbGlzdCBsMzpsZXZlbDkKKwl7bXNvLWxldmVsLXRleHQ6IiUxXC4lMlwuJTNcLiU0XC4lNVwuJTZcLiU3XC4lOFwuJTlcLiI7CisJbXNvLWxldmVsLXRhYi1zdG9wOjIxNi4wcHQ7CisJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0OworCW1hcmdpbi1sZWZ0OjIxNi4wcHQ7CisJdGV4dC1pbmRlbnQ6LTcyLjBwdDt9CitvbAorCXttYXJnaW4tYm90dG9tOjBjbTt9Cit1bAorCXttYXJnaW4tYm90dG9tOjBjbTt9CistLT4KKzwvc3R5bGU+Cis8IS0tW2lmIGd0ZSBtc28gMTBdPgorPHN0eWxlPgorIC8qIFN0eWxlIERlZmluaXRpb25zICovCisgdGFibGUuTXNvTm9ybWFsVGFibGUKKwl7bXNvLXN0eWxlLW5hbWU6IlRhYmxlYXUgTm9ybWFsIjsKKwltc28tdHN0eWxlLXJvd2JhbmQtc2l6ZTowOworCW1zby10c3R5bGUtY29sYmFuZC1zaXplOjA7CisJbXNvLXN0eWxlLW5vc2hvdzp5ZXM7CisJbXNvLXN0eWxlLXByaW9yaXR5Ojk5OworCW1zby1zdHlsZS1wYXJlbnQ6IiI7CisJbXNvLXBhZGRpbmctYWx0OjBjbSA1LjRwdCAwY20gNS40cHQ7CisJbXNvLXBhcmEtbWFyZ2luOjBjbTsKKwltc28tcGFyYS1tYXJnaW4tYm90dG9tOi4wMDAxcHQ7CisJbXNvLXBhZ2luYXRpb246d2lkb3ctb3JwaGFuOworCWZvbnQtc2l6ZToxMC4wcHQ7CisJZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiIsInNlcmlmIjt9Cis8L3N0eWxlPgorPCFbZW5kaWZdLS0+PCEtLVtpZiBndGUgbXNvIDldPjx4bWw+CisgPG86c2hhcGVkZWZhdWx0cyB2OmV4dD0iZWRpdCIgc3BpZG1heD0iMzA3NCI+CisgIDxvOmNvbG9ybWVudSB2OmV4dD0iZWRpdCIgZmlsbGNvbG9yPSJub25lIFs0XSIgc3Ryb2tlY29sb3I9Im5vbmUgWzFdIgorICAgc2hhZG93Y29sb3I9Im5vbmUgWzJdIi8+CisgPC9vOnNoYXBlZGVmYXVsdHM+PC94bWw+PCFbZW5kaWZdLS0+PCEtLVtpZiBndGUgbXNvIDldPjx4bWw+CisgPG86c2hhcGVsYXlvdXQgdjpleHQ9ImVkaXQiPgorICA8bzppZG1hcCB2OmV4dD0iZWRpdCIgZGF0YT0iMiIvPgorIDwvbzpzaGFwZWxheW91dD48L3htbD48IVtlbmRpZl0tLT4KKzwvaGVhZD4KKworPGJvZHkgYmdjb2xvcj13aGl0ZSBsYW5nPUZSIGxpbms9Ymx1ZSB2bGluaz1tYXJvb24gc3R5bGU9J3RhYi1pbnRlcnZhbDozNi4wcHQnPgorCis8ZGl2IGNsYXNzPVdvcmRTZWN0aW9uMT4KKworPHRhYmxlIGNsYXNzPU1zb05vcm1hbFRhYmxlIGJvcmRlcj0wIGNlbGxzcGFjaW5nPTAgY2VsbHBhZGRpbmc9MAorIHN0eWxlPSdib3JkZXItY29sbGFwc2U6Y29sbGFwc2U7bXNvLXBhZGRpbmctYWx0OjQuMjVwdCA0LjI1cHQgNC4yNXB0IDQuMjVwdCc+CisgPHRyIHN0eWxlPSdtc28teWZ0aS1pcm93OjA7bXNvLXlmdGktZmlyc3Ryb3c6eWVzO21zby15ZnRpLWxhc3Ryb3c6eWVzOworICBwYWdlLWJyZWFrLWluc2lkZTphdm9pZDtoZWlnaHQ6ODcuNnB0Jz4KKyAgPHRkIHdpZHRoPTY0OCB2YWxpZ249dG9wIHN0eWxlPSd3aWR0aDo0ODYuMnB0O3BhZGRpbmc6NC4yNXB0IDQuMjVwdCA0LjI1cHQgNC4yNXB0OworICBoZWlnaHQ6ODcuNnB0Jz4KKyAgPHAgY2xhc3M9TXNvTm9ybWFsIGFsaWduPWNlbnRlciBzdHlsZT0ndGV4dC1hbGlnbjpjZW50ZXI7bGF5b3V0LWdyaWQtbW9kZToKKyAgY2hhcic+PHNwYW4gc3R5bGU9J21zby1hbnNpLWxhbmd1YWdlOiMwMEZGJz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUJvbGRDZW50ZXJlZD48IS0tW2lmIGd0ZSB2bWwgMV0+PG86d3JhcGJsb2NrPjx2OnNoYXBldHlwZSBpZD0iX3gwMDAwX3Q3NSIKKyAgICBjb29yZHNpemU9IjIxNjAwLDIxNjAwIiBvOnNwdD0iNzUiIG86cHJlZmVycmVsYXRpdmU9InQiIHBhdGg9Im1ANEA1bEA0QDExQDlAMTFAOUA1eGUiCisgICAgZmlsbGVkPSJmIiBzdHJva2VkPSJmIj4KKyAgICA8djpzdHJva2Ugam9pbnN0eWxlPSJtaXRlciIvPgorICAgIDx2OmZvcm11bGFzPgorICAgICA8djpmIGVxbj0iaWYgbGluZURyYXduIHBpeGVsTGluZVdpZHRoIDAiLz4KKyAgICAgPHY6ZiBlcW49InN1bSBAMCAxIDAiLz4KKyAgICAgPHY6ZiBlcW49InN1bSAwIDAgQDEiLz4KKyAgICAgPHY6ZiBlcW49InByb2QgQDIgMSAyIi8+CisgICAgIDx2OmYgZXFuPSJwcm9kIEAzIDIxNjAwIHBpeGVsV2lkdGgiLz4KKyAgICAgPHY6ZiBlcW49InByb2QgQDMgMjE2MDAgcGl4ZWxIZWlnaHQiLz4KKyAgICAgPHY6ZiBlcW49InN1bSBAMCAwIDEiLz4KKyAgICAgPHY6ZiBlcW49InByb2QgQDYgMSAyIi8+CisgICAgIDx2OmYgZXFuPSJwcm9kIEA3IDIxNjAwIHBpeGVsV2lkdGgiLz4KKyAgICAgPHY6ZiBlcW49InN1bSBAOCAyMTYwMCAwIi8+CisgICAgIDx2OmYgZXFuPSJwcm9kIEA3IDIxNjAwIHBpeGVsSGVpZ2h0Ii8+CisgICAgIDx2OmYgZXFuPSJzdW0gQDEwIDIxNjAwIDAiLz4KKyAgICA8L3Y6Zm9ybXVsYXM+CisgICAgPHY6cGF0aCBvOmV4dHJ1c2lvbm9rPSJmIiBncmFkaWVudHNoYXBlb2s9InQiIG86Y29ubmVjdHR5cGU9InJlY3QiLz4KKyAgICA8bzpsb2NrIHY6ZXh0PSJlZGl0IiBhc3BlY3RyYXRpbz0idCIvPgorICAgPC92OnNoYXBldHlwZT48djpzaGFwZSBpZD0iX3gwMDAwX3MyMDUwIiB0eXBlPSIjX3gwMDAwX3Q3NSIgc3R5bGU9J3Bvc2l0aW9uOmFic29sdXRlOworICAgIGxlZnQ6MDt0ZXh0LWFsaWduOmxlZnQ7bWFyZ2luLWxlZnQ6MzcwLjRwdDttYXJnaW4tdG9wOjA7d2lkdGg6OTguMnB0OworICAgIGhlaWdodDo1MC45NXB0O3otaW5kZXg6MTttc28td3JhcC1kaXN0YW5jZS1sZWZ0OjA7CisgICAgbXNvLXdyYXAtZGlzdGFuY2UtcmlnaHQ6MCcgZmlsbGVkPSJ0Ij4KKyAgICA8djpmaWxsIGNvbG9yMj0iYmxhY2siLz4KKyAgICA8djppbWFnZWRhdGEgc3JjPSJQYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMDEucG5nIgorICAgICBvOnRpdGxlPSIiLz4KKyAgICA8dzp3cmFwIHR5cGU9InRvcEFuZEJvdHRvbSIvPgorICAgPC92OnNoYXBlPjx2OnNoYXBlIGlkPSJfeDAwMDBfczIwNTEiIHR5cGU9IiNfeDAwMDBfdDc1IiBzdHlsZT0ncG9zaXRpb246YWJzb2x1dGU7CisgICAgbGVmdDowO3RleHQtYWxpZ246bGVmdDttYXJnaW4tbGVmdDoyMi44cHQ7bWFyZ2luLXRvcDotMy45cHQ7d2lkdGg6NjQuMTVwdDsKKyAgICBoZWlnaHQ6NjQuMTVwdDt6LWluZGV4OjI7bXNvLXdyYXAtZGlzdGFuY2UtbGVmdDowOworICAgIG1zby13cmFwLWRpc3RhbmNlLXJpZ2h0OjAnIGZpbGxlZD0idCI+CisgICAgPHY6ZmlsbCBjb2xvcjI9ImJsYWNrIi8+CisgICAgPHY6aW1hZ2VkYXRhIHNyYz0iUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2ltYWdlMDAyLmpwZyIKKyAgICAgbzp0aXRsZT0iIi8+CisgICAgPHc6d3JhcCB0eXBlPSJ0b3BBbmRCb3R0b20iLz4KKyAgIDwvdjpzaGFwZT48IVtlbmRpZl0tLT48IVtpZiAhdm1sXT48c3BhbiBzdHlsZT0nbXNvLWlnbm9yZTp2Z2xheW91dCc+CisgICA8dGFibGUgY2VsbHBhZGRpbmc9MCBjZWxsc3BhY2luZz0wPgorICAgIDx0cj4KKyAgICAgPHRkIHdpZHRoPTMwIGhlaWdodD0wPjwvdGQ+CisgICAgIDx0ZCB3aWR0aD04Nj48L3RkPgorICAgICA8dGQgd2lkdGg9Mzc4PjwvdGQ+CisgICAgIDx0ZCB3aWR0aD0xMzE+PC90ZD4KKyAgICA8L3RyPgorICAgIDx0cj4KKyAgICAgPHRkIGhlaWdodD02OD48L3RkPgorICAgICA8dGQgcm93c3Bhbj0yIGFsaWduPWxlZnQgdmFsaWduPXRvcD48aW1nIHdpZHRoPTg2IGhlaWdodD04NgorICAgICBzcmM9IlBhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAwMy5qcGciCisgICAgIHY6c2hhcGVzPSJfeDAwMDBfczIwNTEiPjwvdGQ+CisgICAgIDx0ZD48L3RkPgorICAgICA8dGQgYWxpZ249bGVmdCB2YWxpZ249dG9wPjxpbWcgd2lkdGg9MTMxIGhlaWdodD02OAorICAgICBzcmM9IlBhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAwNC5qcGciCisgICAgIHY6c2hhcGVzPSJfeDAwMDBfczIwNTAiPjwvdGQ+CisgICAgPC90cj4KKyAgICA8dHI+CisgICAgIDx0ZCBoZWlnaHQ9MTg+PC90ZD4KKyAgICA8L3RyPgorICAgPC90YWJsZT4KKyAgIDwvc3Bhbj48IVtlbmRpZl0+PCEtLVtpZiBndGUgdm1sIDFdPjwvbzp3cmFwYmxvY2s+PCFbZW5kaWZdLS0+PGJyCisgIHN0eWxlPSdtc28taWdub3JlOnZnbGF5b3V0JyBjbGVhcj1BTEw+CisgIDwvcD4KKyAgPC90ZD4KKyA8L3RyPgorPC90YWJsZT4KKworPHAgY2xhc3M9TXNvTm9ybWFsIGFsaWduPWNlbnRlciBzdHlsZT0ndGV4dC1hbGlnbjpjZW50ZXInPjxiIHN0eWxlPSdtc28tYmlkaS1mb250LXdlaWdodDoKK25vcm1hbCc+PHNwYW4gbGFuZz1FTi1VUyBzdHlsZT0nZm9udC1zaXplOjE4LjBwdCc+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9iPjwvcD4KKworPHAgY2xhc3M9TXNvTm9ybWFsIGFsaWduPWNlbnRlciBzdHlsZT0ndGV4dC1hbGlnbjpjZW50ZXInPjxiIHN0eWxlPSdtc28tYmlkaS1mb250LXdlaWdodDoKK25vcm1hbCc+PHNwYW4gbGFuZz1FTi1VUyBzdHlsZT0nZm9udC1zaXplOjE4LjBwdCc+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9iPjwvcD4KKworPHAgY2xhc3M9TXNvTm9ybWFsIGFsaWduPWNlbnRlciBzdHlsZT0ndGV4dC1hbGlnbjpjZW50ZXInPjxiIHN0eWxlPSdtc28tYmlkaS1mb250LXdlaWdodDoKK25vcm1hbCc+PHNwYW4gbGFuZz1FTi1VUyBzdHlsZT0nZm9udC1zaXplOjE4LjBwdCc+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9iPjwvcD4KKworPHAgY2xhc3M9TXNvTm9ybWFsIGFsaWduPWNlbnRlciBzdHlsZT0ndGV4dC1hbGlnbjpjZW50ZXInPjxiIHN0eWxlPSdtc28tYmlkaS1mb250LXdlaWdodDoKK25vcm1hbCc+PHNwYW4gbGFuZz1FTi1VUyBzdHlsZT0nZm9udC1zaXplOjE4LjBwdCc+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9iPjwvcD4KKworPHAgY2xhc3M9TXNvTm9ybWFsIGFsaWduPWNlbnRlciBzdHlsZT0ndGV4dC1hbGlnbjpjZW50ZXInPjxiIHN0eWxlPSdtc28tYmlkaS1mb250LXdlaWdodDoKK25vcm1hbCc+PHNwYW4gbGFuZz1FTi1VUyBzdHlsZT0nZm9udC1zaXplOjE4LjBwdCc+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9iPjwvcD4KKworPHAgY2xhc3M9TXNvTm9ybWFsIGFsaWduPWNlbnRlciBzdHlsZT0ndGV4dC1hbGlnbjpjZW50ZXInPjxiIHN0eWxlPSdtc28tYmlkaS1mb250LXdlaWdodDoKK25vcm1hbCc+PHNwYW4gbGFuZz1FTi1VUyBzdHlsZT0nZm9udC1zaXplOjE4LjBwdCc+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9iPjwvcD4KKworPHAgY2xhc3M9TXNvTm9ybWFsIGFsaWduPWNlbnRlciBzdHlsZT0ndGV4dC1hbGlnbjpjZW50ZXInPjxiIHN0eWxlPSdtc28tYmlkaS1mb250LXdlaWdodDoKK25vcm1hbCc+PHNwYW4gbGFuZz1FTi1VUyBzdHlsZT0nZm9udC1zaXplOjE4LjBwdCc+UGFweXJ1cyBUdXRvcmlhbDo8bzpwPjwvbzpwPjwvc3Bhbj48L2I+PC9wPgorCis8cCBjbGFzcz1Nc29Ob3JtYWwgYWxpZ249Y2VudGVyIHN0eWxlPSd0ZXh0LWFsaWduOmNlbnRlcic+PGIgc3R5bGU9J21zby1iaWRpLWZvbnQtd2VpZ2h0Ogorbm9ybWFsJz48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdmb250LXNpemU6MTguMHB0Jz5Ib3cgdG8gY29udHJpYnV0ZSB0byB0aGUgY29kZQorZ2VuZXJhdGlvbiBtZW51PG86cD48L286cD48L3NwYW4+PC9iPjwvcD4KKworPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorCis8cCBjbGFzcz1Nc29Ob3JtYWw+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisKKzxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4KKworPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorCis8cCBjbGFzcz1Nc29Ob3JtYWw+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisKKzxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4KKworPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorCis8cCBjbGFzcz1Nc29Ob3JtYWw+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisKKzxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4KKworPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorCis8cCBjbGFzcz1Nc29Ob3JtYWw+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisKKzxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4KKworPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorCis8cCBjbGFzcz1Nc29Ob3JtYWw+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisKKzxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4KKworPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorCis8dGFibGUgY2xhc3M9TXNvTm9ybWFsVGFibGUgYm9yZGVyPTAgY2VsbHNwYWNpbmc9MCBjZWxscGFkZGluZz0wCisgc3R5bGU9J21hcmdpbi1sZWZ0OjUuNnB0O2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTttc28tcGFkZGluZy1hbHQ6MGNtIDUuNHB0IDBjbSA1LjRwdCc+CisgPHRyIHN0eWxlPSdtc28teWZ0aS1pcm93OjA7bXNvLXlmdGktZmlyc3Ryb3c6eWVzJz4KKyAgPHRkIHdpZHRoPTE4OSB2YWxpZ249dG9wIHN0eWxlPSd3aWR0aDoxNDEuNDVwdDtwYWRkaW5nOjBjbSA1LjRwdCAwY20gNS40cHQnPgorICA8cCBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21hcmdpbi10b3A6Mi44NXB0O21hcmdpbi1yaWdodDowY207bWFyZ2luLWJvdHRvbToKKyAgMi44NXB0O21hcmdpbi1sZWZ0OjBjbTtsYXlvdXQtZ3JpZC1tb2RlOmNoYXInPjxzcGFuIHN0eWxlPSdtc28tYW5zaS1sYW5ndWFnZToKKyAgIzAwRkYnPkVkaXRvcjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKyAgPC90ZD4KKyAgPHRkIHdpZHRoPTQ1NCB2YWxpZ249dG9wIHN0eWxlPSd3aWR0aDozNDAuNXB0O3BhZGRpbmc6MGNtIDUuNHB0IDBjbSA1LjRwdCc+CisgIDxwIGNsYXNzPU1zb05vcm1hbCBzdHlsZT0nbWFyZ2luLXRvcDoyLjg1cHQ7bWFyZ2luLXJpZ2h0OjBjbTttYXJnaW4tYm90dG9tOgorICAyLjg1cHQ7bWFyZ2luLWxlZnQ6MGNtO2xheW91dC1ncmlkLW1vZGU6Y2hhcic+PHNwYW4gc3R5bGU9J21zby1hbnNpLWxhbmd1YWdlOgorICAjMDBGRic+U2FhZGlhIERIT1VJQiAtIENFQSBMSVNUPG86cD48L286cD48L3NwYW4+PC9wPgorICA8L3RkPgorIDwvdHI+CisgPHRyIHN0eWxlPSdtc28teWZ0aS1pcm93OjEnPgorICA8dGQgd2lkdGg9MTg5IHZhbGlnbj10b3Agc3R5bGU9J3dpZHRoOjE0MS40NXB0O3BhZGRpbmc6MGNtIDUuNHB0IDBjbSA1LjRwdCc+CisgIDxwIGNsYXNzPU1zb05vcm1hbCBzdHlsZT0nbWFyZ2luLXRvcDoyLjg1cHQ7bWFyZ2luLXJpZ2h0OjBjbTttYXJnaW4tYm90dG9tOgorICAyLjg1cHQ7bWFyZ2luLWxlZnQ6MGNtO2xheW91dC1ncmlkLW1vZGU6Y2hhcic+PHNwYW4gc3R5bGU9J21zby1hbnNpLWxhbmd1YWdlOgorICAjMDBGRic+U3RhdHVzPG86cD48L286cD48L3NwYW4+PC9wPgorICA8L3RkPgorICA8dGQgd2lkdGg9NDU0IHZhbGlnbj10b3Agc3R5bGU9J3dpZHRoOjM0MC41cHQ7cGFkZGluZzowY20gNS40cHQgMGNtIDUuNHB0Jz4KKyAgPHAgY2xhc3M9TXNvTm9ybWFsIHN0eWxlPSdtYXJnaW4tdG9wOjIuODVwdDttYXJnaW4tcmlnaHQ6MGNtO21hcmdpbi1ib3R0b206CisgIDIuODVwdDttYXJnaW4tbGVmdDowY207bGF5b3V0LWdyaWQtbW9kZTpjaGFyJz48c3BhbiBzdHlsZT0nbXNvLWFuc2ktbGFuZ3VhZ2U6CisgICMwMEZGJz5Qcm9kdWN0aW9uPG86cD48L286cD48L3NwYW4+PC9wPgorICA8L3RkPgorIDwvdHI+CisgPHRyIHN0eWxlPSdtc28teWZ0aS1pcm93OjInPgorICA8dGQgd2lkdGg9MTg5IHZhbGlnbj10b3Agc3R5bGU9J3dpZHRoOjE0MS40NXB0O3BhZGRpbmc6MGNtIDUuNHB0IDBjbSA1LjRwdCc+CisgIDxwIGNsYXNzPU1zb05vcm1hbCBzdHlsZT0nbWFyZ2luLXRvcDoyLjg1cHQ7bWFyZ2luLXJpZ2h0OjBjbTttYXJnaW4tYm90dG9tOgorICAyLjg1cHQ7bWFyZ2luLWxlZnQ6MGNtO2xheW91dC1ncmlkLW1vZGU6Y2hhcic+PHNwYW4gc3R5bGU9J21zby1hbnNpLWxhbmd1YWdlOgorICAjMDBGRic+VmVyc2lvbiBudW1iZXI8bzpwPjwvbzpwPjwvc3Bhbj48L3A+CisgIDwvdGQ+CisgIDx0ZCB3aWR0aD00NTQgdmFsaWduPXRvcCBzdHlsZT0nd2lkdGg6MzQwLjVwdDtwYWRkaW5nOjBjbSA1LjRwdCAwY20gNS40cHQnPgorICA8cCBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21hcmdpbi10b3A6Mi44NXB0O21hcmdpbi1yaWdodDowY207bWFyZ2luLWJvdHRvbToKKyAgMi44NXB0O21hcmdpbi1sZWZ0OjBjbTtsYXlvdXQtZ3JpZC1tb2RlOmNoYXInPjxzcGFuIHN0eWxlPSdtc28tYW5zaS1sYW5ndWFnZToKKyAgIzAwRkYnPjAuMTxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKyAgPC90ZD4KKyA8L3RyPgorIDx0ciBzdHlsZT0nbXNvLXlmdGktaXJvdzozO21zby15ZnRpLWxhc3Ryb3c6eWVzJz4KKyAgPHRkIHdpZHRoPTE4OSB2YWxpZ249dG9wIHN0eWxlPSd3aWR0aDoxNDEuNDVwdDtwYWRkaW5nOjBjbSA1LjRwdCAwY20gNS40cHQnPgorICA8cCBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21hcmdpbi10b3A6Mi44NXB0O21hcmdpbi1yaWdodDowY207bWFyZ2luLWJvdHRvbToKKyAgMi44NXB0O21hcmdpbi1sZWZ0OjBjbTtsYXlvdXQtZ3JpZC1tb2RlOmNoYXInPjxzcGFuIHN0eWxlPSdtc28tYW5zaS1sYW5ndWFnZToKKyAgIzAwRkYnPkRhdGUgb2YgcHJlcGFyYXRpb248bzpwPjwvbzpwPjwvc3Bhbj48L3A+CisgIDwvdGQ+CisgIDx0ZCB3aWR0aD00NTQgdmFsaWduPXRvcCBzdHlsZT0nd2lkdGg6MzQwLjVwdDtwYWRkaW5nOjBjbSA1LjRwdCAwY20gNS40cHQnPgorICA8cCBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21hcmdpbi10b3A6Mi44NXB0O21hcmdpbi1yaWdodDowY207bWFyZ2luLWJvdHRvbToKKyAgMi44NXB0O21hcmdpbi1sZWZ0OjBjbTtsYXlvdXQtZ3JpZC1tb2RlOmNoYXInPjxzcGFuIHN0eWxlPSdtc28tYW5zaS1sYW5ndWFnZToKKyAgIzAwRkYnPjA3LzExLzExPG86cD48L286cD48L3NwYW4+PC9wPgorICA8L3RkPgorIDwvdHI+Cis8L3RhYmxlPgorCis8ZGl2IHN0eWxlPSdtc28tZWxlbWVudDpwYXJhLWJvcmRlci1kaXY7Ym9yZGVyLXRvcDpzb2xpZCBibGFjayAxLjBwdDsKK2JvcmRlci1sZWZ0Om5vbmU7Ym9yZGVyLWJvdHRvbTpzb2xpZCBibGFjayAxLjBwdDtib3JkZXItcmlnaHQ6bm9uZTttc28tYm9yZGVyLXRvcC1hbHQ6Citzb2xpZCBibGFjayAuNXB0O21zby1ib3JkZXItYm90dG9tLWFsdDpzb2xpZCBibGFjayAuNXB0O3BhZGRpbmc6MS4wcHQgMGNtIDEuMHB0IDBjbTsKK2JhY2tncm91bmQ6I0NDQ0NDQyc+CisKKzxwIGNsYXNzPUhlYWRpbmdOb051bWJlcmluZ05ld1BhZ2U+PGEgbmFtZT0iX19SZWZIZWFkaW5nX182NDA3XzU4MzcyODg2NyI+PC9hPjxzcGFuCitsYW5nPUVOLVVTPkF1dGhvcnM8L3NwYW4+PC9wPgorCis8L2Rpdj4KKworPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorCis8cCBjbGFzcz1Nc29Ob3JtYWw+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisKKzx0YWJsZSBjbGFzcz1Nc29Ob3JtYWxUYWJsZSBib3JkZXI9MCBjZWxsc3BhY2luZz0wIGNlbGxwYWRkaW5nPTAKKyBzdHlsZT0nbWFyZ2luLWxlZnQ6NC45NXB0O2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTttc28tcGFkZGluZy1hbHQ6MGNtIDUuNHB0IDBjbSA1LjRwdCc+CisgPHRyIHN0eWxlPSdtc28teWZ0aS1pcm93OjA7bXNvLXlmdGktZmlyc3Ryb3c6eWVzJz4KKyAgPHRkIHdpZHRoPTI0NCB2YWxpZ249dG9wIHN0eWxlPSd3aWR0aDoxODMuMnB0O2JhY2tncm91bmQ6I0ZGRkY5OTtwYWRkaW5nOgorICAwY20gNS40cHQgMGNtIDUuNHB0Jz4KKyAgPHAgY2xhc3M9TXNvTm9ybWFsIHN0eWxlPSdtYXJnaW4tdG9wOjUuNjVwdDttYXJnaW4tcmlnaHQ6MGNtO21hcmdpbi1ib3R0b206CisgIDUuNjVwdDttYXJnaW4tbGVmdDowY207bGF5b3V0LWdyaWQtbW9kZTpjaGFyO2JhY2tncm91bmQ6I0ZGRkY5OSc+PGI+PHNwYW4KKyAgbGFuZz1FTi1VUz5BdXRob3JzIG5hbWUgKGZpcnN0L2xhc3QgbmFtZSk8bzpwPjwvbzpwPjwvc3Bhbj48L2I+PC9wPgorICA8L3RkPgorICA8dGQgd2lkdGg9MTM4IHZhbGlnbj10b3Agc3R5bGU9J3dpZHRoOjEwMy43cHQ7YmFja2dyb3VuZDojRkZGRjk5O3BhZGRpbmc6CisgIDBjbSA1LjRwdCAwY20gNS40cHQnPgorICA8cCBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21hcmdpbi10b3A6NS42NXB0O21hcmdpbi1yaWdodDowY207bWFyZ2luLWJvdHRvbToKKyAgNS42NXB0O21hcmdpbi1sZWZ0OjBjbTtsYXlvdXQtZ3JpZC1tb2RlOmNoYXI7YmFja2dyb3VuZDojRkZGRjk5Jz48Yj48c3BhbgorICBsYW5nPUVOLVVTPkNvbXBhbnk8bzpwPjwvbzpwPjwvc3Bhbj48L2I+PC9wPgorICA8L3RkPgorICA8dGQgd2lkdGg9MjAyIHZhbGlnbj10b3Agc3R5bGU9J3dpZHRoOjE1MS4zcHQ7YmFja2dyb3VuZDojRkZGRjk5O3BhZGRpbmc6CisgIDBjbSA1LjRwdCAwY20gNS40cHQnPgorICA8cCBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21hcmdpbi10b3A6NS42NXB0O21hcmdpbi1yaWdodDowY207bWFyZ2luLWJvdHRvbToKKyAgNS42NXB0O21hcmdpbi1sZWZ0OjBjbTtsYXlvdXQtZ3JpZC1tb2RlOmNoYXI7YmFja2dyb3VuZDojRkZGRjk5Jz48Yj48c3BhbgorICBsYW5nPUVOLVVTPkUtbWFpbDxvOnA+PC9vOnA+PC9zcGFuPjwvYj48L3A+CisgIDwvdGQ+CisgIDx0ZCB3aWR0aD01OSB2YWxpZ249dG9wIHN0eWxlPSd3aWR0aDo0NC40cHQ7YmFja2dyb3VuZDojRkZGRjk5O3BhZGRpbmc6MGNtIDUuNHB0IDBjbSA1LjRwdCc+CisgIDxwIGNsYXNzPU1zb05vcm1hbCBzdHlsZT0nbWFyZ2luLXRvcDo1LjY1cHQ7bWFyZ2luLXJpZ2h0OjBjbTttYXJnaW4tYm90dG9tOgorICA1LjY1cHQ7bWFyZ2luLWxlZnQ6MGNtO2xheW91dC1ncmlkLW1vZGU6Y2hhcjtiYWNrZ3JvdW5kOiNGRkZGOTknPjxiPjxzcGFuCisgIGxhbmc9RU4tVVM+SW5pdGlhbDxvOnA+PC9vOnA+PC9zcGFuPjwvYj48L3A+CisgIDwvdGQ+CisgPC90cj4KKyA8dHIgc3R5bGU9J21zby15ZnRpLWlyb3c6MSc+CisgIDx0ZCB3aWR0aD0yNDQgdmFsaWduPWJvdHRvbSBzdHlsZT0nd2lkdGg6MTgzLjJwdDtwYWRkaW5nOjBjbSA1LjRwdCAwY20gNS40cHQnPgorICA8cCBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21hcmdpbi10b3A6Mi44NXB0O21hcmdpbi1yaWdodDowY207bWFyZ2luLWJvdHRvbToKKyAgMi44NXB0O21hcmdpbi1sZWZ0OjBjbTtsYXlvdXQtZ3JpZC1tb2RlOmNoYXInPjxzcGFuIHN0eWxlPSdmb250LXNpemU6MTAuMHB0OworICBtc28tYW5zaS1sYW5ndWFnZTojMDBGRic+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorICA8L3RkPgorICA8dGQgd2lkdGg9MTM4IHZhbGlnbj1ib3R0b20gc3R5bGU9J3dpZHRoOjEwMy43cHQ7cGFkZGluZzowY20gNS40cHQgMGNtIDUuNHB0Jz4KKyAgPHAgY2xhc3M9TXNvTm9ybWFsIHN0eWxlPSdtYXJnaW4tdG9wOjIuODVwdDttYXJnaW4tcmlnaHQ6MGNtO21hcmdpbi1ib3R0b206CisgIDIuODVwdDttYXJnaW4tbGVmdDowY207bGF5b3V0LWdyaWQtbW9kZTpjaGFyJz48c3BhbiBzdHlsZT0nZm9udC1zaXplOjEwLjBwdDsKKyAgbXNvLWFuc2ktbGFuZ3VhZ2U6IzAwRkYnPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4KKyAgPC90ZD4KKyAgPHRkIHdpZHRoPTIwMiB2YWxpZ249Ym90dG9tIHN0eWxlPSd3aWR0aDoxNTEuM3B0O3BhZGRpbmc6MGNtIDUuNHB0IDBjbSA1LjRwdCc+CisgIDxwIGNsYXNzPU1zb05vcm1hbCBzdHlsZT0nbWFyZ2luLXRvcDoyLjg1cHQ7bWFyZ2luLXJpZ2h0OjBjbTttYXJnaW4tYm90dG9tOgorICAyLjg1cHQ7bWFyZ2luLWxlZnQ6MGNtO2xheW91dC1ncmlkLW1vZGU6Y2hhcic+PHNwYW4gbGFuZz1FTi1VUworICBzdHlsZT0nZm9udC1zaXplOjEwLjBwdCc+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorICA8L3RkPgorICA8dGQgd2lkdGg9NTkgdmFsaWduPWJvdHRvbSBzdHlsZT0nd2lkdGg6NDQuNHB0O3BhZGRpbmc6MGNtIDUuNHB0IDBjbSA1LjRwdCc+CisgIDxwIGNsYXNzPU1zb05vcm1hbCBzdHlsZT0nbWFyZ2luLXRvcDoyLjg1cHQ7bWFyZ2luLXJpZ2h0OjBjbTttYXJnaW4tYm90dG9tOgorICAyLjg1cHQ7bWFyZ2luLWxlZnQ6MGNtO2xheW91dC1ncmlkLW1vZGU6Y2hhcic+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDwvdGQ+CisgPC90cj4KKyA8dHIgc3R5bGU9J21zby15ZnRpLWlyb3c6Mjttc28teWZ0aS1sYXN0cm93Onllcyc+CisgIDx0ZCB3aWR0aD0yNDQgdmFsaWduPWJvdHRvbSBzdHlsZT0nd2lkdGg6MTgzLjJwdDtwYWRkaW5nOjBjbSA1LjRwdCAwY20gNS40cHQnPgorICA8cCBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21hcmdpbi10b3A6Mi44NXB0O21hcmdpbi1yaWdodDowY207bWFyZ2luLWJvdHRvbToKKyAgMi44NXB0O21hcmdpbi1sZWZ0OjBjbTtsYXlvdXQtZ3JpZC1tb2RlOmNoYXInPjxzcGFuIHN0eWxlPSdmb250LXNpemU6MTAuMHB0OworICBtc28tYW5zaS1sYW5ndWFnZTojMDBGRic+U2FhZGlhIERob3VpYjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKyAgPC90ZD4KKyAgPHRkIHdpZHRoPTEzOCB2YWxpZ249Ym90dG9tIHN0eWxlPSd3aWR0aDoxMDMuN3B0O3BhZGRpbmc6MGNtIDUuNHB0IDBjbSA1LjRwdCc+CisgIDxwIGNsYXNzPU1zb05vcm1hbCBzdHlsZT0nbWFyZ2luLXRvcDoyLjg1cHQ7bWFyZ2luLXJpZ2h0OjBjbTttYXJnaW4tYm90dG9tOgorICAyLjg1cHQ7bWFyZ2luLWxlZnQ6MGNtO2xheW91dC1ncmlkLW1vZGU6Y2hhcic+PHNwYW4gc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7CisgIG1zby1hbnNpLWxhbmd1YWdlOiMwMEZGJz5DRUEgTElTVDxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKyAgPC90ZD4KKyAgPHRkIHdpZHRoPTIwMiB2YWxpZ249Ym90dG9tIHN0eWxlPSd3aWR0aDoxNTEuM3B0O3BhZGRpbmc6MGNtIDUuNHB0IDBjbSA1LjRwdCc+CisgIDxwIGNsYXNzPU1zb05vcm1hbCBzdHlsZT0nbWFyZ2luLXRvcDoyLjg1cHQ7bWFyZ2luLXJpZ2h0OjBjbTttYXJnaW4tYm90dG9tOgorICAyLjg1cHQ7bWFyZ2luLWxlZnQ6MGNtO2xheW91dC1ncmlkLW1vZGU6Y2hhcic+PHNwYW4gbGFuZz1FTi1VUz48YQorICBocmVmPSJtYWlsdG86U2ViYXN0aWVuLmdlcmFyZEBjZWEuZnIiPlNhYWRpYS5kaG91aWJAY2VhLmZyPC9hPjwvc3Bhbj48L3A+CisgIDwvdGQ+CisgIDx0ZCB3aWR0aD01OSB2YWxpZ249Ym90dG9tIHN0eWxlPSd3aWR0aDo0NC40cHQ7cGFkZGluZzowY20gNS40cHQgMGNtIDUuNHB0Jz4KKyAgPHAgY2xhc3M9TXNvTm9ybWFsIHN0eWxlPSdtYXJnaW4tdG9wOjIuODVwdDttYXJnaW4tcmlnaHQ6MGNtO21hcmdpbi1ib3R0b206CisgIDIuODVwdDttYXJnaW4tbGVmdDowY207bGF5b3V0LWdyaWQtbW9kZTpjaGFyJz48c3BhbiBsYW5nPUVOLVVTPlNEPC9zcGFuPjwvcD4KKyAgPC90ZD4KKyA8L3RyPgorPC90YWJsZT4KKworPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorCis8cCBjbGFzcz1Nc29Ob3JtYWw+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisKKzxkaXYgc3R5bGU9J21zby1lbGVtZW50OnBhcmEtYm9yZGVyLWRpdjtib3JkZXItdG9wOnNvbGlkIGJsYWNrIDEuMHB0OworYm9yZGVyLWxlZnQ6bm9uZTtib3JkZXItYm90dG9tOnNvbGlkIGJsYWNrIDEuMHB0O2JvcmRlci1yaWdodDpub25lO21zby1ib3JkZXItdG9wLWFsdDoKK3NvbGlkIGJsYWNrIC41cHQ7bXNvLWJvcmRlci1ib3R0b20tYWx0OnNvbGlkIGJsYWNrIC41cHQ7cGFkZGluZzoxLjBwdCAwY20gMS4wcHQgMGNtOworYmFja2dyb3VuZDojQ0NDQ0NDJz4KKworPHAgY2xhc3M9SGVhZGluZ05vTnVtYmVyaW5nTmV3UGFnZT48YSBuYW1lPSJfX1JlZkhlYWRpbmdfXzY0MDlfNTgzNzI4ODY3Ij48L2E+PHNwYW4KK2xhbmc9RU4tVVM+UmV2aXNpb24gY2hhcnQgYW5kIGhpc3RvcnkgbG9nPC9zcGFuPjwvcD4KKworPC9kaXY+CisKKzx0YWJsZSBjbGFzcz1Nc29Ob3JtYWxUYWJsZSBib3JkZXI9MCBjZWxsc3BhY2luZz0wIGNlbGxwYWRkaW5nPTAKKyBzdHlsZT0nbWFyZ2luLWxlZnQ6NC45NXB0O2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTttc28tcGFkZGluZy1hbHQ6MGNtIDUuNHB0IDBjbSA1LjRwdCc+CisgPHRyIHN0eWxlPSdtc28teWZ0aS1pcm93OjA7bXNvLXlmdGktZmlyc3Ryb3c6eWVzJz4KKyAgPHRkIHdpZHRoPTc2IHZhbGlnbj10b3Agc3R5bGU9J3dpZHRoOjIuMGNtO2JhY2tncm91bmQ6I0ZGRkY5OTtwYWRkaW5nOjBjbSA1LjRwdCAwY20gNS40cHQnPgorICA8cCBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21hcmdpbi10b3A6NS42NXB0O21hcmdpbi1yaWdodDowY207bWFyZ2luLWJvdHRvbToKKyAgNS42NXB0O21hcmdpbi1sZWZ0OjBjbTtsYXlvdXQtZ3JpZC1tb2RlOmNoYXI7YmFja2dyb3VuZDojRkZGRjk5Jz48Yj48c3BhbgorICBsYW5nPUVOLVVTPlZlcnNpb24gPG86cD48L286cD48L3NwYW4+PC9iPjwvcD4KKyAgPC90ZD4KKyAgPHRkIHdpZHRoPTk3IHZhbGlnbj10b3Agc3R5bGU9J3dpZHRoOjczLjA1cHQ7YmFja2dyb3VuZDojRkZGRjk5O3BhZGRpbmc6MGNtIDUuNHB0IDBjbSA1LjRwdCc+CisgIDxwIGNsYXNzPU1zb05vcm1hbCBzdHlsZT0nbWFyZ2luLXRvcDo1LjY1cHQ7bWFyZ2luLXJpZ2h0OjBjbTttYXJnaW4tYm90dG9tOgorICA1LjY1cHQ7bWFyZ2luLWxlZnQ6MGNtO2xheW91dC1ncmlkLW1vZGU6Y2hhcjtiYWNrZ3JvdW5kOiNGRkZGOTknPjxiPjxzcGFuCisgIGxhbmc9RU4tVVM+RGF0ZTxvOnA+PC9vOnA+PC9zcGFuPjwvYj48L3A+CisgIDwvdGQ+CisgIDx0ZCB3aWR0aD00NjMgdmFsaWduPXRvcCBzdHlsZT0nd2lkdGg6MzQ3LjBwdDtiYWNrZ3JvdW5kOiNGRkZGOTk7cGFkZGluZzoKKyAgMGNtIDUuNHB0IDBjbSA1LjRwdCc+CisgIDxwIGNsYXNzPU1zb05vcm1hbCBzdHlsZT0nbWFyZ2luLXRvcDo1LjY1cHQ7bWFyZ2luLXJpZ2h0OjBjbTttYXJnaW4tYm90dG9tOgorICA1LjY1cHQ7bWFyZ2luLWxlZnQ6MGNtO2xheW91dC1ncmlkLW1vZGU6Y2hhcjtiYWNrZ3JvdW5kOiNGRkZGOTknPjxiPjxzcGFuCisgIGxhbmc9RU4tVVM+UmVhc29uczxvOnA+PC9vOnA+PC9zcGFuPjwvYj48L3A+CisgIDwvdGQ+CisgPC90cj4KKyA8dHIgc3R5bGU9J21zby15ZnRpLWlyb3c6MSc+CisgIDx0ZCB3aWR0aD03NiB2YWxpZ249dG9wIHN0eWxlPSd3aWR0aDoyLjBjbTtwYWRkaW5nOjBjbSA1LjRwdCAwY20gNS40cHQnPgorICA8cCBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21hcmdpbi10b3A6Mi44NXB0O21hcmdpbi1yaWdodDowY207bWFyZ2luLWJvdHRvbToKKyAgMi44NXB0O21hcmdpbi1sZWZ0OjBjbTtsYXlvdXQtZ3JpZC1tb2RlOmNoYXInPjxzcGFuIGxhbmc9RU4tVVMKKyAgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQnPjAuMTxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKyAgPC90ZD4KKyAgPHRkIHdpZHRoPTk3IHZhbGlnbj10b3Agc3R5bGU9J3dpZHRoOjczLjA1cHQ7cGFkZGluZzowY20gNS40cHQgMGNtIDUuNHB0Jz4KKyAgPHAgY2xhc3M9TXNvTm9ybWFsIHN0eWxlPSdtYXJnaW4tdG9wOjIuODVwdDttYXJnaW4tcmlnaHQ6MGNtO21hcmdpbi1ib3R0b206CisgIDIuODVwdDttYXJnaW4tbGVmdDowY207bGF5b3V0LWdyaWQtbW9kZTpjaGFyJz48c3BhbiBsYW5nPUVOLVVTCisgIHN0eWxlPSdmb250LXNpemU6MTAuMHB0Jz4xOS8xMC8xMTxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKyAgPC90ZD4KKyAgPHRkIHdpZHRoPTQ2MyB2YWxpZ249dG9wIHN0eWxlPSd3aWR0aDozNDcuMHB0O3BhZGRpbmc6MGNtIDUuNHB0IDBjbSA1LjRwdCc+CisgIDxwIGNsYXNzPU1zb05vcm1hbCBzdHlsZT0nbWFyZ2luLXRvcDoyLjg1cHQ7bWFyZ2luLXJpZ2h0OjBjbTttYXJnaW4tYm90dG9tOgorICAyLjg1cHQ7bWFyZ2luLWxlZnQ6MGNtO2xheW91dC1ncmlkLW1vZGU6Y2hhcic+PHNwYW4gbGFuZz1FTi1VUworICBzdHlsZT0nZm9udC1zaXplOjEwLjBwdCc+SW5pdGlhbCBjb250cmlidXRpb24uPG86cD48L286cD48L3NwYW4+PC9wPgorICA8L3RkPgorIDwvdHI+CisgPHRyIHN0eWxlPSdtc28teWZ0aS1pcm93OjInPgorICA8dGQgd2lkdGg9NzYgdmFsaWduPXRvcCBzdHlsZT0nd2lkdGg6Mi4wY207cGFkZGluZzowY20gNS40cHQgMGNtIDUuNHB0Jz4KKyAgPHAgY2xhc3M9TXNvTm9ybWFsIHN0eWxlPSdtYXJnaW4tdG9wOjIuODVwdDttYXJnaW4tcmlnaHQ6MGNtO21hcmdpbi1ib3R0b206CisgIDIuODVwdDttYXJnaW4tbGVmdDowY207bGF5b3V0LWdyaWQtbW9kZTpjaGFyJz48c3BhbiBsYW5nPUVOLVVTCisgIHN0eWxlPSdmb250LXNpemU6MTAuMHB0Jz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDwvdGQ+CisgIDx0ZCB3aWR0aD05NyB2YWxpZ249dG9wIHN0eWxlPSd3aWR0aDo3My4wNXB0O3BhZGRpbmc6MGNtIDUuNHB0IDBjbSA1LjRwdCc+CisgIDxwIGNsYXNzPU1zb05vcm1hbCBzdHlsZT0nbWFyZ2luLXRvcDoyLjg1cHQ7bWFyZ2luLXJpZ2h0OjBjbTttYXJnaW4tYm90dG9tOgorICAyLjg1cHQ7bWFyZ2luLWxlZnQ6MGNtO2xheW91dC1ncmlkLW1vZGU6Y2hhcic+PHNwYW4gbGFuZz1FTi1VUworICBzdHlsZT0nZm9udC1zaXplOjEwLjBwdCc+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorICA8L3RkPgorICA8dGQgd2lkdGg9NDYzIHZhbGlnbj10b3Agc3R5bGU9J3dpZHRoOjM0Ny4wcHQ7cGFkZGluZzowY20gNS40cHQgMGNtIDUuNHB0Jz4KKyAgPHAgY2xhc3M9TXNvTm9ybWFsIHN0eWxlPSdtYXJnaW4tdG9wOjIuODVwdDttYXJnaW4tcmlnaHQ6MGNtO21hcmdpbi1ib3R0b206CisgIDIuODVwdDttYXJnaW4tbGVmdDowY207bGF5b3V0LWdyaWQtbW9kZTpjaGFyJz48c3BhbiBsYW5nPUVOLVVTCisgIHN0eWxlPSdmb250LXNpemU6MTAuMHB0Jz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDwvdGQ+CisgPC90cj4KKyA8dHIgc3R5bGU9J21zby15ZnRpLWlyb3c6Myc+CisgIDx0ZCB3aWR0aD03NiB2YWxpZ249dG9wIHN0eWxlPSd3aWR0aDoyLjBjbTtwYWRkaW5nOjBjbSA1LjRwdCAwY20gNS40cHQnPgorICA8cCBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21hcmdpbi10b3A6Mi44NXB0O21hcmdpbi1yaWdodDowY207bWFyZ2luLWJvdHRvbToKKyAgMi44NXB0O21hcmdpbi1sZWZ0OjBjbTtsYXlvdXQtZ3JpZC1tb2RlOmNoYXInPjxzcGFuIGxhbmc9RU4tVVMKKyAgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQnPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4KKyAgPC90ZD4KKyAgPHRkIHdpZHRoPTk3IHZhbGlnbj10b3Agc3R5bGU9J3dpZHRoOjczLjA1cHQ7cGFkZGluZzowY20gNS40cHQgMGNtIDUuNHB0Jz4KKyAgPHAgY2xhc3M9TXNvTm9ybWFsIHN0eWxlPSdtYXJnaW4tdG9wOjIuODVwdDttYXJnaW4tcmlnaHQ6MGNtO21hcmdpbi1ib3R0b206CisgIDIuODVwdDttYXJnaW4tbGVmdDowY207bGF5b3V0LWdyaWQtbW9kZTpjaGFyJz48c3BhbiBsYW5nPUVOLVVTCisgIHN0eWxlPSdmb250LXNpemU6MTAuMHB0Jz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDwvdGQ+CisgIDx0ZCB3aWR0aD00NjMgdmFsaWduPXRvcCBzdHlsZT0nd2lkdGg6MzQ3LjBwdDtwYWRkaW5nOjBjbSA1LjRwdCAwY20gNS40cHQnPgorICA8cCBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21hcmdpbi10b3A6Mi44NXB0O21hcmdpbi1yaWdodDowY207bWFyZ2luLWJvdHRvbToKKyAgMi44NXB0O21hcmdpbi1sZWZ0OjBjbTtsYXlvdXQtZ3JpZC1tb2RlOmNoYXInPjxzcGFuIGxhbmc9RU4tVVMKKyAgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQnPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4KKyAgPC90ZD4KKyA8L3RyPgorIDx0ciBzdHlsZT0nbXNvLXlmdGktaXJvdzo0Jz4KKyAgPHRkIHdpZHRoPTc2IHZhbGlnbj10b3Agc3R5bGU9J3dpZHRoOjIuMGNtO3BhZGRpbmc6MGNtIDUuNHB0IDBjbSA1LjRwdCc+CisgIDxwIGNsYXNzPU1zb05vcm1hbCBzdHlsZT0nbWFyZ2luLXRvcDoyLjg1cHQ7bWFyZ2luLXJpZ2h0OjBjbTttYXJnaW4tYm90dG9tOgorICAyLjg1cHQ7bWFyZ2luLWxlZnQ6MGNtO2xheW91dC1ncmlkLW1vZGU6Y2hhcic+PHNwYW4gbGFuZz1FTi1VUworICBzdHlsZT0nZm9udC1zaXplOjEwLjBwdCc+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorICA8L3RkPgorICA8dGQgd2lkdGg9OTcgdmFsaWduPXRvcCBzdHlsZT0nd2lkdGg6NzMuMDVwdDtwYWRkaW5nOjBjbSA1LjRwdCAwY20gNS40cHQnPgorICA8cCBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21hcmdpbi10b3A6Mi44NXB0O21hcmdpbi1yaWdodDowY207bWFyZ2luLWJvdHRvbToKKyAgMi44NXB0O21hcmdpbi1sZWZ0OjBjbTtsYXlvdXQtZ3JpZC1tb2RlOmNoYXInPjxzcGFuIGxhbmc9RU4tVVMKKyAgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQnPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4KKyAgPC90ZD4KKyAgPHRkIHdpZHRoPTQ2MyB2YWxpZ249dG9wIHN0eWxlPSd3aWR0aDozNDcuMHB0O3BhZGRpbmc6MGNtIDUuNHB0IDBjbSA1LjRwdCc+CisgIDxwIGNsYXNzPU1zb05vcm1hbCBzdHlsZT0nbWFyZ2luLXRvcDoyLjg1cHQ7bWFyZ2luLXJpZ2h0OjBjbTttYXJnaW4tYm90dG9tOgorICAyLjg1cHQ7bWFyZ2luLWxlZnQ6MGNtO2xheW91dC1ncmlkLW1vZGU6Y2hhcic+PHNwYW4gbGFuZz1FTi1VUworICBzdHlsZT0nZm9udC1zaXplOjEwLjBwdCc+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorICA8L3RkPgorIDwvdHI+CisgPHRyIHN0eWxlPSdtc28teWZ0aS1pcm93OjU7bXNvLXlmdGktbGFzdHJvdzp5ZXMnPgorICA8dGQgd2lkdGg9NzYgdmFsaWduPXRvcCBzdHlsZT0nd2lkdGg6Mi4wY207cGFkZGluZzowY20gNS40cHQgMGNtIDUuNHB0Jz4KKyAgPHAgY2xhc3M9TXNvTm9ybWFsIHN0eWxlPSdtYXJnaW4tdG9wOjIuODVwdDttYXJnaW4tcmlnaHQ6MGNtO21hcmdpbi1ib3R0b206CisgIDIuODVwdDttYXJnaW4tbGVmdDowY207bGF5b3V0LWdyaWQtbW9kZTpjaGFyJz48c3BhbiBsYW5nPUVOLVVTCisgIHN0eWxlPSdmb250LXNpemU6MTAuMHB0Jz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDwvdGQ+CisgIDx0ZCB3aWR0aD05NyB2YWxpZ249dG9wIHN0eWxlPSd3aWR0aDo3My4wNXB0O3BhZGRpbmc6MGNtIDUuNHB0IDBjbSA1LjRwdCc+CisgIDxwIGNsYXNzPU1zb05vcm1hbCBzdHlsZT0nbWFyZ2luLXRvcDoyLjg1cHQ7bWFyZ2luLXJpZ2h0OjBjbTttYXJnaW4tYm90dG9tOgorICAyLjg1cHQ7bWFyZ2luLWxlZnQ6MGNtO2xheW91dC1ncmlkLW1vZGU6Y2hhcic+PHNwYW4gbGFuZz1FTi1VUworICBzdHlsZT0nZm9udC1zaXplOjEwLjBwdCc+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorICA8L3RkPgorICA8dGQgd2lkdGg9NDYzIHZhbGlnbj10b3Agc3R5bGU9J3dpZHRoOjM0Ny4wcHQ7cGFkZGluZzowY20gNS40cHQgMGNtIDUuNHB0Jz4KKyAgPHAgY2xhc3M9TXNvTm9ybWFsIHN0eWxlPSdtYXJnaW4tdG9wOjIuODVwdDttYXJnaW4tcmlnaHQ6MGNtO21hcmdpbi1ib3R0b206CisgIDIuODVwdDttYXJnaW4tbGVmdDowY207bGF5b3V0LWdyaWQtbW9kZTpjaGFyJz48c3BhbiBsYW5nPUVOLVVTCisgIHN0eWxlPSdmb250LXNpemU6MTAuMHB0Jz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDwvdGQ+CisgPC90cj4KKzwvdGFibGU+CisKKzxkaXYgc3R5bGU9J21zby1lbGVtZW50OnBhcmEtYm9yZGVyLWRpdjtib3JkZXItdG9wOnNvbGlkIGJsYWNrIDEuMHB0OworYm9yZGVyLWxlZnQ6bm9uZTtib3JkZXItYm90dG9tOnNvbGlkIGJsYWNrIDEuMHB0O2JvcmRlci1yaWdodDpub25lO21zby1ib3JkZXItdG9wLWFsdDoKK3NvbGlkIGJsYWNrIC41cHQ7bXNvLWJvcmRlci1ib3R0b20tYWx0OnNvbGlkIGJsYWNrIC41cHQ7cGFkZGluZzoxLjBwdCAwY20gMS4wcHQgMGNtOworYmFja2dyb3VuZDojQ0NDQ0NDJz4KKworPHAgY2xhc3M9SGVhZGluZ05vTnVtYmVyaW5nTmV3UGFnZT48YSBuYW1lPSJfX1JlZkhlYWRpbmdfXzY0MTFfNTgzNzI4ODY3Ij48L2E+PHNwYW4KK2xhbmc9RU4tVVM+VGFibGUgb2YgY29udGVudHM8L3NwYW4+PC9wPgorCis8L2Rpdj4KKworPC9kaXY+CisKKzxiIHN0eWxlPSdtc28tYmlkaS1mb250LXdlaWdodDpub3JtYWwnPjxzcGFuIGxhbmc9RU4tVVMgc3R5bGU9J2ZvbnQtc2l6ZToxMS4wcHQ7Cittc28tYmlkaS1mb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiJBcmlhbCIsInNhbnMtc2VyaWYiO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OgorIlRpbWVzIE5ldyBSb21hbiI7bXNvLWJpZGktZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7bXNvLWFuc2ktbGFuZ3VhZ2U6CitFTi1VUzttc28tZmFyZWFzdC1sYW5ndWFnZTpBUi1TQTttc28tYmlkaS1sYW5ndWFnZTpBUi1TQSc+PGJyIGNsZWFyPWFsbAorc3R5bGU9J3BhZ2UtYnJlYWstYmVmb3JlOmF1dG87bXNvLWJyZWFrLXR5cGU6c2VjdGlvbi1icmVhayc+Cis8L3NwYW4+PC9iPgorCis8ZGl2IGNsYXNzPVdvcmRTZWN0aW9uMj4KKworPHAgY2xhc3M9TXNvVG9jMSBzdHlsZT0ndGFiLXN0b3BzOnJpZ2h0IGRvdHRlZCA0ODEuNzVwdCc+PCEtLVtpZiBzdXBwb3J0RmllbGRzXT48c3BhbgorbGFuZz1FTi1VUz48c3BhbiBzdHlsZT0nbXNvLWVsZW1lbnQ6ZmllbGQtYmVnaW4nPjwvc3Bhbj48c3Bhbgorc3R5bGU9J21zby1zcGFjZXJ1bjp5ZXMnPqA8L3NwYW4+VE9DIDxzcGFuIHN0eWxlPSdtc28tZWxlbWVudDpmaWVsZC1zZXBhcmF0b3InPjwvc3Bhbj48L3NwYW4+PCFbZW5kaWZdLS0+PHNwYW4KK2xhbmc9RU4tVVM+PGEgaHJlZj0iI19fUmVmSGVhZGluZ19fNjQwN181ODM3Mjg4NjciPjxzcGFuCitzdHlsZT0nbXNvLXNwYWNlcnVuOnllcyc+oKA8L3NwYW4+QXV0aG9yczxzcGFuIHN0eWxlPSdtc28tdGFiLWNvdW50OjEgZG90dGVkJz4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gPC9zcGFuPjI8L2E+PC9zcGFuPjwvcD4KKworPHAgY2xhc3M9TXNvVG9jMSBzdHlsZT0ndGFiLXN0b3BzOnJpZ2h0IGRvdHRlZCA0ODEuNzVwdCc+PHNwYW4gbGFuZz1FTi1VUz48YQoraHJlZj0iI19fUmVmSGVhZGluZ19fNjQwOV81ODM3Mjg4NjciPjxzcGFuIHN0eWxlPSdtc28tc3BhY2VydW46eWVzJz6gCis8L3NwYW4+UmV2aXNpb24gY2hhcnQgYW5kIGhpc3RvcnkgbG9nPHNwYW4gc3R5bGU9J21zby10YWItY291bnQ6MSBkb3R0ZWQnPi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gPC9zcGFuPjM8L2E+PC9zcGFuPjwvcD4KKworPHAgY2xhc3M9TXNvVG9jMSBzdHlsZT0ndGFiLXN0b3BzOnJpZ2h0IGRvdHRlZCA0ODEuNzVwdCc+PHNwYW4gbGFuZz1FTi1VUz48YQoraHJlZj0iI19fUmVmSGVhZGluZ19fNjQxMV81ODM3Mjg4NjciPjxzcGFuIHN0eWxlPSdtc28tc3BhY2VydW46eWVzJz6gCis8L3NwYW4+VGFibGUgb2YgY29udGVudHM8c3BhbiBzdHlsZT0nbXNvLXRhYi1jb3VudDoxIGRvdHRlZCc+Li4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiA8L3NwYW4+NDwvYT48L3NwYW4+PC9wPgorCis8cCBjbGFzcz1Nc29Ub2MxIHN0eWxlPSd0YWItc3RvcHM6cmlnaHQgZG90dGVkIDQ4MS43NXB0Jz48c3BhbiBsYW5nPUVOLVVTPjxhCitocmVmPSIjX19SZWZIZWFkaW5nX18zMDE5XzcxMzUwODE3NSI+MTxzcGFuIHN0eWxlPSdtc28tc3BhY2VydW46eWVzJz6gCis8L3NwYW4+SW50cm9kdWN0aW9uPHNwYW4gc3R5bGU9J21zby10YWItY291bnQ6MSBkb3R0ZWQnPi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uIDwvc3Bhbj41PC9hPjwvc3Bhbj48L3A+CisKKzxwIGNsYXNzPU1zb1RvYzEgc3R5bGU9J3RhYi1zdG9wczpyaWdodCBkb3R0ZWQgNDgxLjc1cHQnPjxzcGFuIGxhbmc9RU4tVVM+PGEKK2hyZWY9IiNfX1JlZkhlYWRpbmdfXzI3OTBfOTQ5Njk1MjQ2Ij4yPHNwYW4gc3R5bGU9J21zby1zcGFjZXJ1bjp5ZXMnPqAKKzwvc3Bhbj5TZXQgdGhlIEphdmEgZXhlY3V0aW9uIGVudmlyb25tZW50PHNwYW4gc3R5bGU9J21zby10YWItY291bnQ6MSBkb3R0ZWQnPi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uIDwvc3Bhbj42PC9hPjwvc3Bhbj48L3A+CisKKzxwIGNsYXNzPU1zb1RvYzEgc3R5bGU9J3RhYi1zdG9wczpyaWdodCBkb3R0ZWQgNDgxLjc1cHQnPjxzcGFuIGxhbmc9RU4tVVM+PGEKK2hyZWY9IiNfX1JlZkhlYWRpbmdfXzIxODJfOTQ5Njk1MjQ2Ij4zPHNwYW4gc3R5bGU9J21zby1zcGFjZXJ1bjp5ZXMnPqAKKzwvc3Bhbj5BZGQgdGhlIG1lbnUgY29udHJpYnV0aW9uIGV4dGVuc2lvbiBwb2ludDxzcGFuIHN0eWxlPSdtc28tdGFiLWNvdW50OgorMSBkb3R0ZWQnPi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uIDwvc3Bhbj4xMDwvYT48L3NwYW4+PC9wPgorCis8cCBjbGFzcz1Nc29Ub2MxIHN0eWxlPSd0YWItc3RvcHM6cmlnaHQgZG90dGVkIDQ4MS43NXB0Jz48c3BhbiBsYW5nPUVOLVVTPjxhCitocmVmPSIjX19SZWZIZWFkaW5nX18yMTg0Xzk0OTY5NTI0NiI+NDxzcGFuIHN0eWxlPSdtc28tc3BhY2VydW46eWVzJz6gCis8L3NwYW4+QWRkIHRoZSBjb21tYW5kIGV4dGVuc2lvbiBwb2ludDxzcGFuIHN0eWxlPSdtc28tdGFiLWNvdW50OjEgZG90dGVkJz4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiA8L3NwYW4+MTQ8L2E+PC9zcGFuPjwvcD4KKworPHAgY2xhc3M9TXNvVG9jMSBzdHlsZT0ndGFiLXN0b3BzOnJpZ2h0IGRvdHRlZCA0ODEuNzVwdCc+PHNwYW4gbGFuZz1FTi1VUz48YQoraHJlZj0iI19fUmVmSGVhZGluZ19fMjE4Nl85NDk2OTUyNDYiPjU8c3BhbiBzdHlsZT0nbXNvLXNwYWNlcnVuOnllcyc+oAorPC9zcGFuPkFkZCB0aGUgaGFuZGxlciBleHRlbnNpb24gcG9pbnQ8c3BhbiBzdHlsZT0nbXNvLXRhYi1jb3VudDoxIGRvdHRlZCc+Li4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uIDwvc3Bhbj4xNTwvYT48L3NwYW4+PCEtLVtpZiBzdXBwb3J0RmllbGRzXT48c3BhbgorbGFuZz1FTi1VUz48c3BhbiBzdHlsZT0nbXNvLWVsZW1lbnQ6ZmllbGQtZW5kJz48L3NwYW4+PC9zcGFuPjwhW2VuZGlmXS0tPjwvcD4KKworPC9kaXY+CisKKzxzcGFuIGxhbmc9RU4tVVMgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6IkFyaWFsIiwic2Fucy1zZXJpZiI7Cittc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjttc28tYW5zaS1sYW5ndWFnZTpFTi1VUzttc28tZmFyZWFzdC1sYW5ndWFnZToKK0FSLVNBO21zby1iaWRpLWxhbmd1YWdlOkFSLVNBJz48YnIgY2xlYXI9YWxsIHN0eWxlPSdwYWdlLWJyZWFrLWJlZm9yZTphdXRvOworbXNvLWJyZWFrLXR5cGU6c2VjdGlvbi1icmVhayc+Cis8L3NwYW4+CisKKzxkaXYgY2xhc3M9V29yZFNlY3Rpb24zPgorCis8cCBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J3RhYi1zdG9wczpyaWdodCBkb3R0ZWQgNDgxLjQ1cHQnPjxzcGFuIGxhbmc9RU4tVVMKK3N0eWxlPSdmb250LXNpemU6MTAuMHB0O21zby1iaWRpLWZvbnQtZmFtaWx5OkFyaWFsJz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisKKzxwIGNsYXNzPU1zb05vcm1hbD48YSBuYW1lPSJfX1JlZkhlYWRpbmdfXzY0MTNfNTgzNzI4ODY3Ij48L2E+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisKKzxkaXYgc3R5bGU9J21zby1lbGVtZW50OnBhcmEtYm9yZGVyLWRpdjtib3JkZXItdG9wOnNvbGlkIGJsYWNrIDEuMHB0OworYm9yZGVyLWxlZnQ6bm9uZTtib3JkZXItYm90dG9tOnNvbGlkIGJsYWNrIDEuMHB0O2JvcmRlci1yaWdodDpub25lO21zby1ib3JkZXItdG9wLWFsdDoKK3NvbGlkIGJsYWNrIC41cHQ7bXNvLWJvcmRlci1ib3R0b20tYWx0OnNvbGlkIGJsYWNrIC41cHQ7cGFkZGluZzoxLjBwdCAwY20gMS4wcHQgMGNtOworYmFja2dyb3VuZDojQ0NDQ0NDJz4KKworPGgxPjxhIG5hbWU9Il9fUmVmSGVhZGluZ19fMzAxOV83MTM1MDgxNzUiPjwvYT48IVtpZiAhc3VwcG9ydExpc3RzXT48c3BhbgorbGFuZz1FTi1VUyBzdHlsZT0nbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6QXJpYWw7bXNvLWJpZGktZm9udC1mYW1pbHk6QXJpYWwnPjxzcGFuCitzdHlsZT0nbXNvLWxpc3Q6SWdub3JlJz4xPHNwYW4gc3R5bGU9J2ZvbnQ6Ny4wcHQgIlRpbWVzIE5ldyBSb21hbiInPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOworPC9zcGFuPjwvc3Bhbj48L3NwYW4+PCFbZW5kaWZdPjxzcGFuIGxhbmc9RU4tVVM+SW50cm9kdWN0aW9uPC9zcGFuPjwvaDE+CisKKzwvZGl2PgorCis8cCBjbGFzcz1Nc29Ob3JtYWw+PHNwYW4gbGFuZz1FTi1VUz5UaGlzIHR1dG9yaWFsIGV4cGxhaW5zIGhvdyB0byBjb250cmlidXRlIHRvCit0aGUgUm9ib3RNTCBjb2RlIGdlbmVyYXRpb24gbWVudSBpbiB0aGUgcGFweXJ1cyBtb2RlbCBleHBsb3JlciB2aWV3LCBhcyBzaG93bgoraW4gdGhlIGZvbGxvd2luZyBmaWd1cmU6PC9zcGFuPjwvcD4KKworPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorCis8cCBjbGFzcz1Nc29Ob3JtYWw+PCEtLVtpZiBndGUgdm1sIDFdPjxvOndyYXBibG9jaz48djpzaGFwZSBpZD0iX3gwMDAwX3MyMDg0IgorICB0eXBlPSIjX3gwMDAwX3Q3NSIgc3R5bGU9J3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0ZXh0LWFsaWduOmxlZnQ7CisgIG1hcmdpbi1sZWZ0OjA7bWFyZ2luLXRvcDowO3dpZHRoOjQ4MS43cHQ7aGVpZ2h0OjM1MS42cHQ7ei1pbmRleDoyMDsKKyAgbXNvLXdyYXAtZGlzdGFuY2UtbGVmdDowO21zby13cmFwLWRpc3RhbmNlLXJpZ2h0OjA7bXNvLXBvc2l0aW9uLWhvcml6b250YWw6Y2VudGVyJworICBmaWxsZWQ9InQiPgorICA8djpmaWxsIGNvbG9yMj0iYmxhY2siLz4KKyAgPHY6aW1hZ2VkYXRhIHNyYz0iUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2ltYWdlMDA1LnBuZyIKKyAgIG86dGl0bGU9IiIvPgorICA8dzp3cmFwIHR5cGU9InRvcEFuZEJvdHRvbSIvPgorIDwvdjpzaGFwZT48IVtlbmRpZl0tLT48IVtpZiAhdm1sXT48aW1nIHdpZHRoPTY0MiBoZWlnaHQ9NDY5Cisgc3JjPSJQYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMDYuanBnIiB2OnNoYXBlcz0iX3gwMDAwX3MyMDg0Ij48IVtlbmRpZl0+PCEtLVtpZiBndGUgdm1sIDFdPjwvbzp3cmFwYmxvY2s+PCFbZW5kaWZdLS0+PGJyCitzdHlsZT0nbXNvLWlnbm9yZTp2Z2xheW91dCcgY2xlYXI9QUxMPgorPC9wPgorCis8ZGl2IHN0eWxlPSdtc28tZWxlbWVudDpwYXJhLWJvcmRlci1kaXY7Ym9yZGVyLXRvcDpzb2xpZCBibGFjayAxLjBwdDsKK2JvcmRlci1sZWZ0Om5vbmU7Ym9yZGVyLWJvdHRvbTpzb2xpZCBibGFjayAxLjBwdDtib3JkZXItcmlnaHQ6bm9uZTttc28tYm9yZGVyLXRvcC1hbHQ6Citzb2xpZCBibGFjayAuNXB0O21zby1ib3JkZXItYm90dG9tLWFsdDpzb2xpZCBibGFjayAuNXB0O3BhZGRpbmc6MS4wcHQgMGNtIDEuMHB0IDBjbTsKK2JhY2tncm91bmQ6I0NDQ0NDQyc+CisKKzxoMT48YSBuYW1lPSJfX1JlZkhlYWRpbmdfXzI3OTBfOTQ5Njk1MjQ2Ij48L2E+PCFbaWYgIXN1cHBvcnRMaXN0c10+PHNwYW4KK2xhbmc9RU4tVVMgc3R5bGU9J21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OkFyaWFsO21zby1iaWRpLWZvbnQtZmFtaWx5OkFyaWFsJz48c3Bhbgorc3R5bGU9J21zby1saXN0Oklnbm9yZSc+MjxzcGFuIHN0eWxlPSdmb250OjcuMHB0ICJUaW1lcyBOZXcgUm9tYW4iJz4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsKKzwvc3Bhbj48L3NwYW4+PC9zcGFuPjwhW2VuZGlmXT48c3BhbiBsYW5nPUVOLVVTPlNldCB0aGUgSmF2YSBleGVjdXRpb24KK2Vudmlyb25tZW50PC9zcGFuPjwvaDE+CisKKzwvZGl2PgorCis8cCBjbGFzcz1Nc29Ob3JtYWw+PHNwYW4gbGFuZz1FTi1VUz5JdCBpcyB2ZXJ5IGltcG9ydGFudCB0aGF0IHlvdXIgRWNsaXBzZQorcHJvamVjdHMgdXNlIHRoZSBKMlNFLTEuNSwgdGhpcyBpcyB0aGUgamF2YSB2ZXJzaW9uIHVzZWQgYnkgcGFweXJ1cy4gVG8gZG8KK3RoaXMsIGZvbGxvdyB0aGUgc3RlcHMgaW4gdGhlIHRhYmxlOjwvc3Bhbj48L3A+CisKKzx0YWJsZSBjbGFzcz1Nc29Ob3JtYWxUYWJsZSBib3JkZXI9MCBjZWxsc3BhY2luZz0wIGNlbGxwYWRkaW5nPTAKKyBzdHlsZT0nbWFyZ2luLWxlZnQ6Mi43NXB0O2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTttc28tcGFkZGluZy1hbHQ6Mi43NXB0IDIuNzVwdCAyLjc1cHQgMi43NXB0Jz4KKyA8dHIgc3R5bGU9J21zby15ZnRpLWlyb3c6MDttc28teWZ0aS1maXJzdHJvdzp5ZXM7aGVpZ2h0OjQ5My4ycHQnPgorICA8dGQgd2lkdGg9MTI0IHZhbGlnbj10b3Agc3R5bGU9J3dpZHRoOjkyLjdwdDtib3JkZXI6c29saWQgYmxhY2sgMS4wcHQ7CisgIGJvcmRlci1yaWdodDpub25lO21zby1ib3JkZXItdG9wLWFsdDpzb2xpZCBibGFjayAuMjVwdDttc28tYm9yZGVyLWxlZnQtYWx0OgorICBzb2xpZCBibGFjayAuMjVwdDttc28tYm9yZGVyLWJvdHRvbS1hbHQ6c29saWQgYmxhY2sgLjI1cHQ7cGFkZGluZzoyLjc1cHQgMi43NXB0IDIuNzVwdCAyLjc1cHQ7CisgIGhlaWdodDo0OTMuMnB0Jz4KKyAgPGRpdiBzdHlsZT0nbXNvLWVsZW1lbnQ6cGFyYS1ib3JkZXItZGl2O2JvcmRlcjpub25lO2JvcmRlci1ib3R0b206c29saWQgYmxhY2sgMS4wcHQ7CisgIG1zby1ib3JkZXItYm90dG9tLWFsdDpzb2xpZCBibGFjayAuMjVwdDtwYWRkaW5nOjBjbSAwY20gMi4wcHQgMGNtJz4KKyAgPHAgY2xhc3M9Q29udGVudWRldGFibGVhdSBhbGlnbj1jZW50ZXIgc3R5bGU9J3RleHQtYWxpZ246Y2VudGVyO2JvcmRlcjpub25lOworICBtc28tYm9yZGVyLWJvdHRvbS1hbHQ6c29saWQgYmxhY2sgLjI1cHQ7cGFkZGluZzowY207bXNvLXBhZGRpbmctYWx0OjBjbSAwY20gMi4wcHQgMGNtJz48Yj48c3BhbgorICBsYW5nPUVOLVVTPlN0ZXAgMTxvOnA+PC9vOnA+PC9zcGFuPjwvYj48L3A+CisgIDwvZGl2PgorICA8cCBjbGFzcz1Nc29Ob3JtYWwgYWxpZ249Y2VudGVyIHN0eWxlPSd0ZXh0LWFsaWduOmNlbnRlcic+PGI+PHNwYW4KKyAgbGFuZz1FTi1VUz5jbGljayBvbiBwcm9qZWN0IHByb3BlcnRpZXMgPG86cD48L286cD48L3NwYW4+PC9iPjwvcD4KKyAgPC90ZD4KKyAgPHRkIHdpZHRoPTUxOSB2YWxpZ249dG9wIHN0eWxlPSd3aWR0aDozODkuMDVwdDtib3JkZXI6c29saWQgYmxhY2sgMS4wcHQ7CisgIG1zby1ib3JkZXItYWx0OnNvbGlkIGJsYWNrIC4yNXB0O3BhZGRpbmc6Mi43NXB0IDIuNzVwdCAyLjc1cHQgMi43NXB0OworICBoZWlnaHQ6NDkzLjJwdCc+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PCEtLVtpZiBndGUgdm1sIDFdPjx2Omdyb3VwIGlkPSJfeDAwMDBfczIwOTQiCisgICBzdHlsZT0ncG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RleHQtYWxpZ246bGVmdDttYXJnaW4tbGVmdDozLjRwdDsKKyAgIG1hcmdpbi10b3A6MS4xcHQ7d2lkdGg6Mzc1LjY1cHQ7aGVpZ2h0OjQ4Ni40NXB0O3otaW5kZXg6NzsKKyAgIG1zby1wb3NpdGlvbi1ob3Jpem9udGFsLXJlbGF0aXZlOnRleHQ7bXNvLXBvc2l0aW9uLXZlcnRpY2FsLXJlbGF0aXZlOnRleHQnCisgICBjb29yZG9yaWdpbj0iMzM5NywyNzc1IiBjb29yZHNpemU9Ijc1MTMsOTcyOSI+CisgICA8djpzaGFwZSBpZD0iX3gwMDAwX3MyMDU3IiB0eXBlPSIjX3gwMDAwX3Q3NSIgc3R5bGU9J3Bvc2l0aW9uOmFic29sdXRlOworICAgIGxlZnQ6MzM5Nzt0b3A6Mjc3NTt3aWR0aDo3NTEzO2hlaWdodDo5NzI5O21zby13cmFwLWRpc3RhbmNlLWxlZnQ6MDsKKyAgICBtc28td3JhcC1kaXN0YW5jZS1yaWdodDowJyBmaWxsZWQ9InQiPgorICAgIDx2OmZpbGwgY29sb3IyPSJibGFjayIvPgorICAgIDx2OmltYWdlZGF0YSBzcmM9IlBhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAwNy5wbmciCisgICAgIG86dGl0bGU9IiIvPgorICAgPC92OnNoYXBlPjx2OnNoYXBlIGlkPSJfeDAwMDBfczIwNTgiIHR5cGU9IiNfeDAwMDBfdDc1IiBzdHlsZT0ncG9zaXRpb246YWJzb2x1dGU7CisgICAgbGVmdDo1NTM5O3RvcDoxMDcxMTt3aWR0aDoyMzQ1O2hlaWdodDo0MDcnPgorICAgIDx2OmZpbGwgdHlwZT0iZnJhbWUiLz4KKyAgICA8djppbWFnZWRhdGEgc3JjPSJQYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMDgud216IgorICAgICBvOnRpdGxlPSIiLz4KKyAgIDwvdjpzaGFwZT48djpzaGFwZSBpZD0iX3gwMDAwX3MyMDU5IiB0eXBlPSIjX3gwMDAwX3Q3NSIgc3R5bGU9J3Bvc2l0aW9uOmFic29sdXRlOworICAgIGxlZnQ6NDAzMTt0b3A6NjA3Mzt3aWR0aDoyNzQxO2hlaWdodDo0MDcnPgorICAgIDx2OmZpbGwgdHlwZT0iZnJhbWUiLz4KKyAgICA8djppbWFnZWRhdGEgc3JjPSJQYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMDkud216IgorICAgICBvOnRpdGxlPSIiLz4KKyAgIDwvdjpzaGFwZT48L3Y6Z3JvdXA+PCFbZW5kaWZdLS0+PCFbaWYgIXZtbF0+PHNwYW4gc3R5bGU9J21zby1pZ25vcmU6dmdsYXlvdXQ7CisgIHBvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6NztsZWZ0OjBweDttYXJnaW4tbGVmdDo0cHg7bWFyZ2luLXRvcDoxcHg7CisgIHdpZHRoOjUwMXB4O2hlaWdodDo2NDlweCc+PGltZyB3aWR0aD01MDEgaGVpZ2h0PTY0OQorICBzcmM9IlBhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAxMC5qcGciCisgIHY6c2hhcGVzPSJfeDAwMDBfczIwOTQgX3gwMDAwX3MyMDU3IF94MDAwMF9zMjA1OCBfeDAwMDBfczIwNTkiPjwvc3Bhbj48IVtlbmRpZl0+PCEtLVtpZiBndGUgdm1sIDFdPjx2OnJlY3QKKyAgIGlkPSJfeDAwMDBfczIwNTYiIHN0eWxlPSdwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dGV4dC1hbGlnbjpsZWZ0OworICAgbWFyZ2luLWxlZnQ6MjEuMTVwdDttYXJnaW4tdG9wOjM3OS41cHQ7d2lkdGg6MjA0LjU1cHQ7aGVpZ2h0OjE4LjRwdDsKKyAgIHotaW5kZXg6Njttc28td3JhcC1zdHlsZTpub25lO21zby1wb3NpdGlvbi1ob3Jpem9udGFsLXJlbGF0aXZlOnRleHQ7CisgICBtc28tcG9zaXRpb24tdmVydGljYWwtcmVsYXRpdmU6dGV4dDt2LXRleHQtYW5jaG9yOm1pZGRsZScgZmlsbGVkPSJmIgorICAgc3Ryb2tlY29sb3I9Im1hcm9vbiIgc3Ryb2tld2VpZ2h0PSIuNDltbSI+CisgICA8djpzdHJva2UgY29sb3IyPSIjN2ZmZmZmIiBqb2luc3R5bGU9InJvdW5kIi8+CisgIDwvdjpyZWN0PjwhW2VuZGlmXS0tPjwhW2lmICF2bWxdPjxzcGFuIHN0eWxlPSdtc28taWdub3JlOnZnbGF5b3V0O3Bvc2l0aW9uOgorICBhYnNvbHV0ZTt6LWluZGV4OjY7bGVmdDowcHg7bWFyZ2luLWxlZnQ6MjdweDttYXJnaW4tdG9wOjUwNXB4O3dpZHRoOjI3NXB4OworICBoZWlnaHQ6MjdweCc+PGltZyB3aWR0aD0yNzUgaGVpZ2h0PTI3CisgIHNyYz0iUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2ltYWdlMDExLmdpZiIKKyAgdjpzaGFwZXM9Il94MDAwMF9zMjA1NiI+PC9zcGFuPjwhW2VuZGlmXT48L3A+CisgIDwvdGQ+CisgPC90cj4KKyA8dHIgc3R5bGU9J21zby15ZnRpLWlyb3c6MSc+CisgIDx0ZCB3aWR0aD0xMjQgdmFsaWduPXRvcCBzdHlsZT0nd2lkdGg6OTIuN3B0O2JvcmRlci10b3A6bm9uZTtib3JkZXItbGVmdDoKKyAgc29saWQgYmxhY2sgMS4wcHQ7Ym9yZGVyLWJvdHRvbTpzb2xpZCBibGFjayAxLjBwdDtib3JkZXItcmlnaHQ6bm9uZTsKKyAgbXNvLWJvcmRlci1sZWZ0LWFsdDpzb2xpZCBibGFjayAuMjVwdDttc28tYm9yZGVyLWJvdHRvbS1hbHQ6c29saWQgYmxhY2sgLjI1cHQ7CisgIHBhZGRpbmc6Mi43NXB0IDIuNzVwdCAyLjc1cHQgMi43NXB0Jz4KKyAgPGRpdiBzdHlsZT0nbXNvLWVsZW1lbnQ6cGFyYS1ib3JkZXItZGl2O2JvcmRlcjpub25lO2JvcmRlci1ib3R0b206c29saWQgYmxhY2sgMS4wcHQ7CisgIG1zby1ib3JkZXItYm90dG9tLWFsdDpzb2xpZCBibGFjayAuMjVwdDtwYWRkaW5nOjBjbSAwY20gMi4wcHQgMGNtJz4KKyAgPHAgY2xhc3M9Q29udGVudWRldGFibGVhdSBhbGlnbj1jZW50ZXIgc3R5bGU9J3RleHQtYWxpZ246Y2VudGVyO2JvcmRlcjpub25lOworICBtc28tYm9yZGVyLWJvdHRvbS1hbHQ6c29saWQgYmxhY2sgLjI1cHQ7cGFkZGluZzowY207bXNvLXBhZGRpbmctYWx0OjBjbSAwY20gMi4wcHQgMGNtJz48Yj48c3BhbgorICBsYW5nPUVOLVVTPlN0ZXAgMjxvOnA+PC9vOnA+PC9zcGFuPjwvYj48L3A+CisgIDwvZGl2PgorICA8cCBjbGFzcz1Db250ZW51ZGV0YWJsZWF1IGFsaWduPWNlbnRlciBzdHlsZT0ndGV4dC1hbGlnbjpjZW50ZXInPjxiPjxzcGFuCisgIGxhbmc9RU4tVVM+RWRpdCB0aGUgSlJFIHN5c3RlbSBsaWJyYXJ5IGFuZCBzZXQgaXQgdG8gSjJTRS0xLjU8bzpwPjwvbzpwPjwvc3Bhbj48L2I+PC9wPgorICA8L3RkPgorICA8dGQgd2lkdGg9NTE5IHZhbGlnbj10b3Agc3R5bGU9J3dpZHRoOjM4OS4wNXB0O2JvcmRlcjpzb2xpZCBibGFjayAxLjBwdDsKKyAgYm9yZGVyLXRvcDpub25lO21zby1ib3JkZXItbGVmdC1hbHQ6c29saWQgYmxhY2sgLjI1cHQ7bXNvLWJvcmRlci1ib3R0b20tYWx0OgorICBzb2xpZCBibGFjayAuMjVwdDttc28tYm9yZGVyLXJpZ2h0LWFsdDpzb2xpZCBibGFjayAuMjVwdDtwYWRkaW5nOjIuNzVwdCAyLjc1cHQgMi43NXB0IDIuNzVwdCc+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PCEtLVtpZiBndGUgdm1sIDFdPjxvOndyYXBibG9jaz48djpzaGFwZSBpZD0iX3gwMDAwX3MyMDUyIgorICAgIHR5cGU9IiNfeDAwMDBfdDc1IiBzdHlsZT0ncG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RleHQtYWxpZ246bGVmdDsKKyAgICBtYXJnaW4tbGVmdDo0Mi41NXB0O21hcmdpbi10b3A6MDt3aWR0aDozMzMuMXB0O2hlaWdodDozOTguNXB0O3otaW5kZXg6MzsKKyAgICBtc28td3JhcC1kaXN0YW5jZS1sZWZ0OjA7bXNvLXdyYXAtZGlzdGFuY2UtcmlnaHQ6MDsKKyAgICBtc28tcG9zaXRpb24taG9yaXpvbnRhbC1yZWxhdGl2ZTp0ZXh0O21zby1wb3NpdGlvbi12ZXJ0aWNhbC1yZWxhdGl2ZTp0ZXh0JworICAgIGZpbGxlZD0idCI+CisgICAgPHY6ZmlsbCBjb2xvcjI9ImJsYWNrIi8+CisgICAgPHY6aW1hZ2VkYXRhIHNyYz0iUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2ltYWdlMDEyLnBuZyIKKyAgICAgbzp0aXRsZT0iIi8+CisgICAgPHc6d3JhcCB0eXBlPSJ0b3BBbmRCb3R0b20iLz4KKyAgIDwvdjpzaGFwZT48IVtlbmRpZl0tLT48IVtpZiAhdm1sXT48c3BhbiBzdHlsZT0nbXNvLWlnbm9yZTp2Z2xheW91dCc+CisgICA8dGFibGUgY2VsbHBhZGRpbmc9MCBjZWxsc3BhY2luZz0wPgorICAgIDx0cj4KKyAgICAgPHRkIHdpZHRoPTU3IGhlaWdodD0wPjwvdGQ+CisgICAgPC90cj4KKyAgICA8dHI+CisgICAgIDx0ZD48L3RkPgorICAgICA8dGQ+PGltZyB3aWR0aD00NDQgaGVpZ2h0PTUzMQorICAgICBzcmM9IlBhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAxMy5qcGciCisgICAgIHY6c2hhcGVzPSJfeDAwMDBfczIwNTIiPjwvdGQ+CisgICAgPC90cj4KKyAgIDwvdGFibGU+CisgICA8L3NwYW4+PCFbZW5kaWZdPjwhLS1baWYgZ3RlIHZtbCAxXT48L286d3JhcGJsb2NrPjwhW2VuZGlmXS0tPjxicgorICBzdHlsZT0nbXNvLWlnbm9yZTp2Z2xheW91dCcgY2xlYXI9QUxMPgorICA8L3A+CisgIDwvdGQ+CisgPC90cj4KKyA8dHIgc3R5bGU9J21zby15ZnRpLWlyb3c6Mjttc28teWZ0aS1sYXN0cm93Onllcyc+CisgIDx0ZCB3aWR0aD0xMjQgdmFsaWduPXRvcCBzdHlsZT0nd2lkdGg6OTIuN3B0O2JvcmRlci10b3A6bm9uZTtib3JkZXItbGVmdDoKKyAgc29saWQgYmxhY2sgMS4wcHQ7Ym9yZGVyLWJvdHRvbTpzb2xpZCBibGFjayAxLjBwdDtib3JkZXItcmlnaHQ6bm9uZTsKKyAgbXNvLWJvcmRlci1sZWZ0LWFsdDpzb2xpZCBibGFjayAuMjVwdDttc28tYm9yZGVyLWJvdHRvbS1hbHQ6c29saWQgYmxhY2sgLjI1cHQ7CisgIHBhZGRpbmc6Mi43NXB0IDIuNzVwdCAyLjc1cHQgMi43NXB0Jz4KKyAgPGRpdiBzdHlsZT0nbXNvLWVsZW1lbnQ6cGFyYS1ib3JkZXItZGl2O2JvcmRlcjpub25lO2JvcmRlci1ib3R0b206c29saWQgYmxhY2sgMS4wcHQ7CisgIG1zby1ib3JkZXItYm90dG9tLWFsdDpzb2xpZCBibGFjayAuMjVwdDtwYWRkaW5nOjBjbSAwY20gMi4wcHQgMGNtJz4KKyAgPHAgY2xhc3M9Q29udGVudWRldGFibGVhdSBhbGlnbj1jZW50ZXIgc3R5bGU9J3RleHQtYWxpZ246Y2VudGVyO2JvcmRlcjpub25lOworICBtc28tYm9yZGVyLWJvdHRvbS1hbHQ6c29saWQgYmxhY2sgLjI1cHQ7cGFkZGluZzowY207bXNvLXBhZGRpbmctYWx0OjBjbSAwY20gMi4wcHQgMGNtJz48Yj48c3BhbgorICBsYW5nPUVOLVVTPlN0ZXAgMzxvOnA+PC9vOnA+PC9zcGFuPjwvYj48L3A+CisgIDwvZGl2PgorICA8cCBjbGFzcz1Db250ZW51ZGV0YWJsZWF1IGFsaWduPWNlbnRlciBzdHlsZT0ndGV4dC1hbGlnbjpjZW50ZXInPjxiPjxzcGFuCisgIGxhbmc9RU4tVVM+U2V0IHRoZSBtaW5pbXVtIGV4ZWN1dGlvbiBlbnZpcm9ubWVudCBpbiB0aGUgcGx1Zy1pbiBtYW5pZmVzdAorICBlZGl0b3I8bzpwPjwvbzpwPjwvc3Bhbj48L2I+PC9wPgorICA8L3RkPgorICA8dGQgd2lkdGg9NTE5IHZhbGlnbj10b3Agc3R5bGU9J3dpZHRoOjM4OS4wNXB0O2JvcmRlcjpzb2xpZCBibGFjayAxLjBwdDsKKyAgYm9yZGVyLXRvcDpub25lO21zby1ib3JkZXItbGVmdC1hbHQ6c29saWQgYmxhY2sgLjI1cHQ7bXNvLWJvcmRlci1ib3R0b20tYWx0OgorICBzb2xpZCBibGFjayAuMjVwdDttc28tYm9yZGVyLXJpZ2h0LWFsdDpzb2xpZCBibGFjayAuMjVwdDtwYWRkaW5nOjIuNzVwdCAyLjc1cHQgMi43NXB0IDIuNzVwdCc+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PCEtLVtpZiBndGUgdm1sIDFdPjxvOndyYXBibG9jaz48djpzaGFwZSBpZD0iX3gwMDAwX3MyMDUzIgorICAgIHR5cGU9IiNfeDAwMDBfdDc1IiBzdHlsZT0ncG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RleHQtYWxpZ246bGVmdDsKKyAgICBtYXJnaW4tbGVmdDowO21hcmdpbi10b3A6MDt3aWR0aDozODMuNXB0O2hlaWdodDozMDAuODVwdDt6LWluZGV4OjQ7CisgICAgbXNvLXdyYXAtZGlzdGFuY2UtbGVmdDowO21zby13cmFwLWRpc3RhbmNlLXJpZ2h0OjA7CisgICAgbXNvLXBvc2l0aW9uLWhvcml6b250YWw6Y2VudGVyO21zby1wb3NpdGlvbi1ob3Jpem9udGFsLXJlbGF0aXZlOnRleHQ7CisgICAgbXNvLXBvc2l0aW9uLXZlcnRpY2FsLXJlbGF0aXZlOnRleHQnIGZpbGxlZD0idCI+CisgICAgPHY6ZmlsbCBjb2xvcjI9ImJsYWNrIi8+CisgICAgPHY6aW1hZ2VkYXRhIHNyYz0iUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2ltYWdlMDE0LnBuZyIKKyAgICAgbzp0aXRsZT0iIi8+CisgICAgPHc6d3JhcCB0eXBlPSJ0b3BBbmRCb3R0b20iLz4KKyAgIDwvdjpzaGFwZT48IVtlbmRpZl0tLT48IVtpZiAhdm1sXT48aW1nIHdpZHRoPTUxMSBoZWlnaHQ9NDAxCisgICBzcmM9IlBhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAxNS5qcGciCisgICB2OnNoYXBlcz0iX3gwMDAwX3MyMDUzIj48IVtlbmRpZl0+PCEtLVtpZiBndGUgdm1sIDFdPjwvbzp3cmFwYmxvY2s+PCFbZW5kaWZdLS0+PGJyCisgIHN0eWxlPSdtc28taWdub3JlOnZnbGF5b3V0JyBjbGVhcj1BTEw+CisgIDwhLS1baWYgZ3RlIHZtbCAxXT48djpyZWN0IGlkPSJfeDAwMDBfczIwNTUiIHN0eWxlPSdwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7CisgICB0ZXh0LWFsaWduOmxlZnQ7bWFyZ2luLWxlZnQ6Ni44NXB0O21hcmdpbi10b3A6MTcxLjc1cHQ7d2lkdGg6NjQuMDVwdDsKKyAgIGhlaWdodDoxNS43cHQ7ei1pbmRleDo1O21zby13cmFwLXN0eWxlOm5vbmU7CisgICBtc28tcG9zaXRpb24taG9yaXpvbnRhbC1yZWxhdGl2ZTp0ZXh0O21zby1wb3NpdGlvbi12ZXJ0aWNhbC1yZWxhdGl2ZTp0ZXh0OworICAgdi10ZXh0LWFuY2hvcjptaWRkbGUnIGZpbGxlZD0iZiIgc3Ryb2tlY29sb3I9Im1hcm9vbiIgc3Ryb2tld2VpZ2h0PSIuNDltbSI+CisgICA8djpzdHJva2UgY29sb3IyPSIjN2ZmZmZmIiBqb2luc3R5bGU9InJvdW5kIi8+CisgIDwvdjpyZWN0PjwhW2VuZGlmXS0tPjwhW2lmICF2bWxdPjxzcGFuIHN0eWxlPSdtc28taWdub3JlOnZnbGF5b3V0O3Bvc2l0aW9uOgorICBhYnNvbHV0ZTt6LWluZGV4OjU7bGVmdDowcHg7bWFyZ2luLWxlZnQ6OHB4O21hcmdpbi10b3A6MjI4cHg7d2lkdGg6ODhweDsKKyAgaGVpZ2h0OjIzcHgnPjxpbWcgd2lkdGg9ODggaGVpZ2h0PTIzCisgIHNyYz0iUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2ltYWdlMDE2LmdpZiIKKyAgdjpzaGFwZXM9Il94MDAwMF9zMjA1NSI+PC9zcGFuPjwhW2VuZGlmXT48L3A+CisgIDwvdGQ+CisgPC90cj4KKzwvdGFibGU+CisKKzxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4KKworPGRpdiBzdHlsZT0nbXNvLWVsZW1lbnQ6cGFyYS1ib3JkZXItZGl2O2JvcmRlci10b3A6c29saWQgYmxhY2sgMS4wcHQ7Citib3JkZXItbGVmdDpub25lO2JvcmRlci1ib3R0b206c29saWQgYmxhY2sgMS4wcHQ7Ym9yZGVyLXJpZ2h0Om5vbmU7bXNvLWJvcmRlci10b3AtYWx0Ogorc29saWQgYmxhY2sgLjVwdDttc28tYm9yZGVyLWJvdHRvbS1hbHQ6c29saWQgYmxhY2sgLjVwdDtwYWRkaW5nOjEuMHB0IDBjbSAxLjBwdCAwY207CitiYWNrZ3JvdW5kOiNDQ0NDQ0MnPgorCis8aDE+PGEgbmFtZT0iX19SZWZIZWFkaW5nX18yMTgyXzk0OTY5NTI0NiI+PC9hPjwhW2lmICFzdXBwb3J0TGlzdHNdPjxzcGFuCitsYW5nPUVOLVVTIHN0eWxlPSdtc28tZmFyZWFzdC1mb250LWZhbWlseTpBcmlhbDttc28tYmlkaS1mb250LWZhbWlseTpBcmlhbCc+PHNwYW4KK3N0eWxlPSdtc28tbGlzdDpJZ25vcmUnPjM8c3BhbiBzdHlsZT0nZm9udDo3LjBwdCAiVGltZXMgTmV3IFJvbWFuIic+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Cis8L3NwYW4+PC9zcGFuPjwvc3Bhbj48IVtlbmRpZl0+PHNwYW4gbGFuZz1FTi1VUz5BZGQgdGhlIG1lbnUgY29udHJpYnV0aW9uCitleHRlbnNpb24gcG9pbnQ8L3NwYW4+PC9oMT4KKworPC9kaXY+CisKKzxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTPkdvIHRvIHRoZSB1c2VyIGludGVyZmFjZSBwcm9qZWN0LAorb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ueW91cnBsYXRmb3JtLnVpOjwvc3Bhbj48L3A+CisKKzxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTPlRoZW4gb3BlbiB0aGUgcGx1Zy1pbiBtYW5pZmVzdCBlZGl0b3IuPC9zcGFuPjwvcD4KKworPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIGxhbmc9RU4tVVM+SW4gdGhlIEV4dGVuc2lvbnMgY29ybmVyLCB5b3UgYXJlIGdvaW5nIHRvCithZGQgYSBuZXcgZXh0ZW5zaW9uIHRoYXQgd2lsbCBjb250cmlidXRlIHRvIHRoZSBSb2JvdE1MIGNvZGUgZ2VuZXJhdGlvbiBtZW51Ljwvc3Bhbj48L3A+CisKKzxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTPlRvIGRvIHRoaXMsIGZvbGxvdyB0aGUgc3RlcHMgZGVzY3JpYmVkIGluCit0aGUgdGFibGU6PC9zcGFuPjwvcD4KKworPHRhYmxlIGNsYXNzPU1zb05vcm1hbFRhYmxlIGJvcmRlcj0wIGNlbGxzcGFjaW5nPTAgY2VsbHBhZGRpbmc9MAorIHN0eWxlPSdtYXJnaW4tbGVmdDoyLjc1cHQ7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO21zby1wYWRkaW5nLWFsdDoyLjc1cHQgMi43NXB0IDIuNzVwdCAyLjc1cHQnPgorIDx0ciBzdHlsZT0nbXNvLXlmdGktaXJvdzowO21zby15ZnRpLWZpcnN0cm93OnllcztoZWlnaHQ6NDQzLjZwdCc+CisgIDx0ZCB3aWR0aD0xNDQgdmFsaWduPXRvcCBzdHlsZT0nd2lkdGg6MTA4LjM1cHQ7Ym9yZGVyOnNvbGlkIGJsYWNrIDEuMHB0OworICBib3JkZXItcmlnaHQ6bm9uZTttc28tYm9yZGVyLXRvcC1hbHQ6c29saWQgYmxhY2sgLjI1cHQ7bXNvLWJvcmRlci1sZWZ0LWFsdDoKKyAgc29saWQgYmxhY2sgLjI1cHQ7bXNvLWJvcmRlci1ib3R0b20tYWx0OnNvbGlkIGJsYWNrIC4yNXB0O3BhZGRpbmc6Mi43NXB0IDIuNzVwdCAyLjc1cHQgMi43NXB0OworICBoZWlnaHQ6NDQzLjZwdCc+CisgIDxkaXYgc3R5bGU9J21zby1lbGVtZW50OnBhcmEtYm9yZGVyLWRpdjtib3JkZXI6bm9uZTtib3JkZXItYm90dG9tOnNvbGlkIGJsYWNrIDEuMHB0OworICBtc28tYm9yZGVyLWJvdHRvbS1hbHQ6c29saWQgYmxhY2sgLjI1cHQ7cGFkZGluZzowY20gMGNtIDIuMHB0IDBjbSc+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXUgYWxpZ249Y2VudGVyIHN0eWxlPSd0ZXh0LWFsaWduOmNlbnRlcjtib3JkZXI6bm9uZTsKKyAgbXNvLWJvcmRlci1ib3R0b20tYWx0OnNvbGlkIGJsYWNrIC4yNXB0O3BhZGRpbmc6MGNtO21zby1wYWRkaW5nLWFsdDowY20gMGNtIDIuMHB0IDBjbSc+PGI+PHNwYW4KKyAgbGFuZz1FTi1VUz5TdGVwMSA8bzpwPjwvbzpwPjwvc3Bhbj48L2I+PC9wPgorICA8L2Rpdj4KKyAgPHAgY2xhc3M9Q29udGVudWRldGFibGVhdSBhbGlnbj1jZW50ZXIgc3R5bGU9J3RleHQtYWxpZ246Y2VudGVyJz48Yj48c3BhbgorICBsYW5nPUVOLVVTPkdvIHRvIHRoZSBleHRlbnNpb24gY29ybmVyPG86cD48L286cD48L3NwYW4+PC9iPjwvcD4KKyAgPC90ZD4KKyAgPHRkIHdpZHRoPTQ5OCB2YWxpZ249dG9wIHN0eWxlPSd3aWR0aDozNzMuNHB0O2JvcmRlcjpzb2xpZCBibGFjayAxLjBwdDsKKyAgbXNvLWJvcmRlci1hbHQ6c29saWQgYmxhY2sgLjI1cHQ7cGFkZGluZzoyLjc1cHQgMi43NXB0IDIuNzVwdCAyLjc1cHQ7CisgIGhlaWdodDo0NDMuNnB0Jz4KKyAgPHAgY2xhc3M9Q29udGVudWRldGFibGVhdT48IS0tW2lmIGd0ZSB2bWwgMV0+PHY6Z3JvdXAgaWQ9Il94MDAwMF9zMjA5MyIKKyAgIHN0eWxlPSdwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dGV4dC1hbGlnbjpsZWZ0O21hcmdpbi1sZWZ0OjE1LjdwdDsKKyAgIG1hcmdpbi10b3A6MDt3aWR0aDozMzYuNDVwdDtoZWlnaHQ6Mzc4LjRwdDt6LWluZGV4Ojk7CisgICBtc28tcG9zaXRpb24taG9yaXpvbnRhbC1yZWxhdGl2ZTp0ZXh0O21zby1wb3NpdGlvbi12ZXJ0aWNhbC1yZWxhdGl2ZTp0ZXh0JworICAgY29vcmRvcmlnaW49IjM5NTUsMzg3NiIgY29vcmRzaXplPSI2NzI5LDc1NjgiPgorICAgPHY6c2hhcGUgaWQ9Il94MDAwMF9zMjA1NCIgdHlwZT0iI194MDAwMF90NzUiIHN0eWxlPSdwb3NpdGlvbjphYnNvbHV0ZTsKKyAgICBsZWZ0OjM5NTU7dG9wOjM4NzY7d2lkdGg6NjcyOTtoZWlnaHQ6NzE4MTttc28td3JhcC1kaXN0YW5jZS1sZWZ0OjA7CisgICAgbXNvLXdyYXAtZGlzdGFuY2UtcmlnaHQ6MDttc28tcG9zaXRpb24taG9yaXpvbnRhbDpjZW50ZXInIGZpbGxlZD0idCI+CisgICAgPHY6ZmlsbCBjb2xvcjI9ImJsYWNrIi8+CisgICAgPHY6aW1hZ2VkYXRhIHNyYz0iUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2ltYWdlMDE3LnBuZyIKKyAgICAgbzp0aXRsZT0iIi8+CisgICA8L3Y6c2hhcGU+PHY6Z3JvdXAgaWQ9Il94MDAwMF9zMjA5MSIgc3R5bGU9J3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6NTkxODsKKyAgICB0b3A6NTkwNjt3aWR0aDozODkzO2hlaWdodDo1NTM4JyBjb29yZG9yaWdpbj0iNTkxOCw1OTA2IiBjb29yZHNpemU9IjM4OTMsNTUzOCI+CisgICAgPHY6c2hhcGUgaWQ9Il94MDAwMF9zMjA2MCIgdHlwZT0iI194MDAwMF90NzUiIHN0eWxlPSdwb3NpdGlvbjphYnNvbHV0ZTsKKyAgICAgbGVmdDo4NDY4O3RvcDo1OTA2O3dpZHRoOjEzNDM7aGVpZ2h0OjQwNyc+CisgICAgIDx2OmZpbGwgdHlwZT0iZnJhbWUiLz4KKyAgICAgPHY6aW1hZ2VkYXRhIHNyYz0iUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2ltYWdlMDE4LndteiIKKyAgICAgIG86dGl0bGU9IiIvPgorICAgIDwvdjpzaGFwZT48djpzaGFwZXR5cGUgaWQ9Il94MDAwMF90NjciIGNvb3Jkc2l6ZT0iMjE2MDAsMjE2MDAiIG86c3B0PSI2NyIKKyAgICAgYWRqPSIxNjIwMCw1NDAwIiBwYXRoPSJtMEAwbEAxQDBAMSwwQDIsMEAyQDAsMjE2MDBAMCwxMDgwMCwyMTYwMHhlIj4KKyAgICAgPHY6c3Ryb2tlIGpvaW5zdHlsZT0ibWl0ZXIiLz4KKyAgICAgPHY6Zm9ybXVsYXM+CisgICAgICA8djpmIGVxbj0idmFsICMwIi8+CisgICAgICA8djpmIGVxbj0idmFsICMxIi8+CisgICAgICA8djpmIGVxbj0ic3VtIGhlaWdodCAwICMxIi8+CisgICAgICA8djpmIGVxbj0ic3VtIDEwODAwIDAgIzEiLz4KKyAgICAgIDx2OmYgZXFuPSJzdW0gd2lkdGggMCAjMCIvPgorICAgICAgPHY6ZiBlcW49InByb2QgQDQgQDMgMTA4MDAiLz4KKyAgICAgIDx2OmYgZXFuPSJzdW0gd2lkdGggMCBANSIvPgorICAgICA8L3Y6Zm9ybXVsYXM+CisgICAgIDx2OnBhdGggbzpjb25uZWN0dHlwZT0iY3VzdG9tIiBvOmNvbm5lY3Rsb2NzPSIxMDgwMCwwOzAsQDA7MTA4MDAsMjE2MDA7MjE2MDAsQDAiCisgICAgICBvOmNvbm5lY3RhbmdsZXM9IjI3MCwxODAsOTAsMCIgdGV4dGJveHJlY3Q9IkAxLDAsQDIsQDYiLz4KKyAgICAgPHY6aGFuZGxlcz4KKyAgICAgIDx2OmggcG9zaXRpb249IiMxLCMwIiB4cmFuZ2U9IjAsMTA4MDAiIHlyYW5nZT0iMCwyMTYwMCIvPgorICAgICA8L3Y6aGFuZGxlcz4KKyAgICA8L3Y6c2hhcGV0eXBlPjx2OnNoYXBlIGlkPSJfeDAwMDBfczIwNjIiIHR5cGU9IiNfeDAwMDBfdDY3IiBzdHlsZT0ncG9zaXRpb246YWJzb2x1dGU7CisgICAgIGxlZnQ6NTkxODt0b3A6MTExMzA7d2lkdGg6MzI4O2hlaWdodDozMTQ7bXNvLXdyYXAtc3R5bGU6bm9uZTsKKyAgICAgdi10ZXh0LWFuY2hvcjptaWRkbGUnIGZpbGxjb2xvcj0iIzljZiI+CisgICAgIDx2OmZpbGwgY29sb3IyPSIjNjMwIi8+CisgICAgIDx2OnN0cm9rZSBqb2luc3R5bGU9InJvdW5kIi8+CisgICAgPC92OnNoYXBlPjwvdjpncm91cD48L3Y6Z3JvdXA+PCFbZW5kaWZdLS0+PCFbaWYgIXZtbF0+PHNwYW4KKyAgc3R5bGU9J21zby1pZ25vcmU6dmdsYXlvdXQ7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDo5O2xlZnQ6MHB4O21hcmdpbi1sZWZ0OgorICAyMXB4O21hcmdpbi10b3A6MHB4O3dpZHRoOjQ0OXB4O2hlaWdodDo1MDZweCc+PGltZyB3aWR0aD00NDkgaGVpZ2h0PTUwNgorICBzcmM9IlBhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAxOS5naWYiCisgIHY6c2hhcGVzPSJfeDAwMDBfczIwOTMgX3gwMDAwX3MyMDU0IF94MDAwMF9zMjA5MSBfeDAwMDBfczIwNjAgX3gwMDAwX3MyMDYyIj48L3NwYW4+PCFbZW5kaWZdPjwvcD4KKyAgPC90ZD4KKyA8L3RyPgorIDx0ciBzdHlsZT0nbXNvLXlmdGktaXJvdzoxJz4KKyAgPHRkIHdpZHRoPTE0NCB2YWxpZ249dG9wIHN0eWxlPSd3aWR0aDoxMDguMzVwdDtib3JkZXItdG9wOm5vbmU7Ym9yZGVyLWxlZnQ6CisgIHNvbGlkIGJsYWNrIDEuMHB0O2JvcmRlci1ib3R0b206c29saWQgYmxhY2sgMS4wcHQ7Ym9yZGVyLXJpZ2h0Om5vbmU7CisgIG1zby1ib3JkZXItbGVmdC1hbHQ6c29saWQgYmxhY2sgLjI1cHQ7bXNvLWJvcmRlci1ib3R0b20tYWx0OnNvbGlkIGJsYWNrIC4yNXB0OworICBwYWRkaW5nOjIuNzVwdCAyLjc1cHQgMi43NXB0IDIuNzVwdCc+CisgIDxkaXYgc3R5bGU9J21zby1lbGVtZW50OnBhcmEtYm9yZGVyLWRpdjtib3JkZXI6bm9uZTtib3JkZXItYm90dG9tOnNvbGlkIGJsYWNrIDEuMHB0OworICBtc28tYm9yZGVyLWJvdHRvbS1hbHQ6c29saWQgYmxhY2sgLjI1cHQ7cGFkZGluZzowY20gMGNtIDIuMHB0IDBjbSc+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXUgYWxpZ249Y2VudGVyIHN0eWxlPSd0ZXh0LWFsaWduOmNlbnRlcjtib3JkZXI6bm9uZTsKKyAgbXNvLWJvcmRlci1ib3R0b20tYWx0OnNvbGlkIGJsYWNrIC4yNXB0O3BhZGRpbmc6MGNtO21zby1wYWRkaW5nLWFsdDowY20gMGNtIDIuMHB0IDBjbSc+PGI+PHNwYW4KKyAgbGFuZz1FTi1VUz5TdGVwIDI8bzpwPjwvbzpwPjwvc3Bhbj48L2I+PC9wPgorICA8L2Rpdj4KKyAgPHAgY2xhc3M9Q29udGVudWRldGFibGVhdSBhbGlnbj1jZW50ZXIgc3R5bGU9J3RleHQtYWxpZ246Y2VudGVyJz48Yj48c3BhbgorICBsYW5nPUVOLVVTPkFkZCBvcmcuZWNsaXBzZS51aS5tZW51cyBleHRlbnNpb248bzpwPjwvbzpwPjwvc3Bhbj48L2I+PC9wPgorICA8L3RkPgorICA8dGQgd2lkdGg9NDk4IHZhbGlnbj10b3Agc3R5bGU9J3dpZHRoOjM3My40cHQ7Ym9yZGVyOnNvbGlkIGJsYWNrIDEuMHB0OworICBib3JkZXItdG9wOm5vbmU7bXNvLWJvcmRlci1sZWZ0LWFsdDpzb2xpZCBibGFjayAuMjVwdDttc28tYm9yZGVyLWJvdHRvbS1hbHQ6CisgIHNvbGlkIGJsYWNrIC4yNXB0O21zby1ib3JkZXItcmlnaHQtYWx0OnNvbGlkIGJsYWNrIC4yNXB0O3BhZGRpbmc6Mi43NXB0IDIuNzVwdCAyLjc1cHQgMi43NXB0Jz4KKyAgPHAgY2xhc3M9Q29udGVudWRldGFibGVhdT48IS0tW2lmIGd0ZSB2bWwgMV0+PG86d3JhcGJsb2NrPjx2OnNoYXBlIGlkPSJfeDAwMDBfczIwNjEiCisgICAgdHlwZT0iI194MDAwMF90NzUiIHN0eWxlPSdwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dGV4dC1hbGlnbjpsZWZ0OworICAgIG1hcmdpbi1sZWZ0OjA7bWFyZ2luLXRvcDowO3dpZHRoOjMzNi40NXB0O2hlaWdodDo0NjMuMzVwdDt6LWluZGV4Ojg7CisgICAgbXNvLXdyYXAtZGlzdGFuY2UtbGVmdDowO21zby13cmFwLWRpc3RhbmNlLXJpZ2h0OjA7CisgICAgbXNvLXBvc2l0aW9uLWhvcml6b250YWw6Y2VudGVyO21zby1wb3NpdGlvbi1ob3Jpem9udGFsLXJlbGF0aXZlOnRleHQ7CisgICAgbXNvLXBvc2l0aW9uLXZlcnRpY2FsLXJlbGF0aXZlOnRleHQnIGZpbGxlZD0idCI+CisgICAgPHY6ZmlsbCBjb2xvcjI9ImJsYWNrIi8+CisgICAgPHY6aW1hZ2VkYXRhIHNyYz0iUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2ltYWdlMDIwLnBuZyIKKyAgICAgbzp0aXRsZT0iIi8+CisgICAgPHc6d3JhcCB0eXBlPSJ0b3BBbmRCb3R0b20iLz4KKyAgIDwvdjpzaGFwZT48IVtlbmRpZl0tLT48IVtpZiAhdm1sXT48aW1nIHdpZHRoPTQ0OSBoZWlnaHQ9NjE4CisgICBzcmM9IlBhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAyMS5qcGciCisgICB2OnNoYXBlcz0iX3gwMDAwX3MyMDYxIj48IVtlbmRpZl0+PCEtLVtpZiBndGUgdm1sIDFdPjwvbzp3cmFwYmxvY2s+PCFbZW5kaWZdLS0+PGJyCisgIHN0eWxlPSdtc28taWdub3JlOnZnbGF5b3V0JyBjbGVhcj1BTEw+CisgIDwvcD4KKyAgPC90ZD4KKyA8L3RyPgorIDx0ciBzdHlsZT0nbXNvLXlmdGktaXJvdzoyO2hlaWdodDo2MTYuNDVwdCc+CisgIDx0ZCB3aWR0aD0xNDQgdmFsaWduPXRvcCBzdHlsZT0nd2lkdGg6MTA4LjM1cHQ7Ym9yZGVyLXRvcDpub25lO2JvcmRlci1sZWZ0OgorICBzb2xpZCBibGFjayAxLjBwdDtib3JkZXItYm90dG9tOnNvbGlkIGJsYWNrIDEuMHB0O2JvcmRlci1yaWdodDpub25lOworICBtc28tYm9yZGVyLWxlZnQtYWx0OnNvbGlkIGJsYWNrIC4yNXB0O21zby1ib3JkZXItYm90dG9tLWFsdDpzb2xpZCBibGFjayAuMjVwdDsKKyAgcGFkZGluZzoyLjc1cHQgMi43NXB0IDIuNzVwdCAyLjc1cHQ7aGVpZ2h0OjYxNi40NXB0Jz4KKyAgPGRpdiBzdHlsZT0nbXNvLWVsZW1lbnQ6cGFyYS1ib3JkZXItZGl2O2JvcmRlcjpub25lO2JvcmRlci1ib3R0b206c29saWQgYmxhY2sgMS4wcHQ7CisgIG1zby1ib3JkZXItYm90dG9tLWFsdDpzb2xpZCBibGFjayAuMjVwdDtwYWRkaW5nOjBjbSAwY20gMi4wcHQgMGNtJz4KKyAgPHAgY2xhc3M9Q29udGVudWRldGFibGVhdSBhbGlnbj1jZW50ZXIgc3R5bGU9J3RleHQtYWxpZ246Y2VudGVyO2JvcmRlcjpub25lOworICBtc28tYm9yZGVyLWJvdHRvbS1hbHQ6c29saWQgYmxhY2sgLjI1cHQ7cGFkZGluZzowY207bXNvLXBhZGRpbmctYWx0OjBjbSAwY20gMi4wcHQgMGNtJz48Yj48c3BhbgorICBsYW5nPUVOLVVTPlN0ZXAgMzxvOnA+PC9vOnA+PC9zcGFuPjwvYj48L3A+CisgIDwvZGl2PgorICA8cCBjbGFzcz1Db250ZW51ZGV0YWJsZWF1IGFsaWduPWNlbnRlciBzdHlsZT0ndGV4dC1hbGlnbjpjZW50ZXInPjxiPjxzcGFuCisgIGxhbmc9RU4tVVM+QWRkIGEgbmV3IG1lbnUgY29udHJpYnV0aW9uPG86cD48L286cD48L3NwYW4+PC9iPjwvcD4KKyAgPC90ZD4KKyAgPHRkIHdpZHRoPTQ5OCB2YWxpZ249dG9wIHN0eWxlPSd3aWR0aDozNzMuNHB0O2JvcmRlcjpzb2xpZCBibGFjayAxLjBwdDsKKyAgYm9yZGVyLXRvcDpub25lO21zby1ib3JkZXItbGVmdC1hbHQ6c29saWQgYmxhY2sgLjI1cHQ7bXNvLWJvcmRlci1ib3R0b20tYWx0OgorICBzb2xpZCBibGFjayAuMjVwdDttc28tYm9yZGVyLXJpZ2h0LWFsdDpzb2xpZCBibGFjayAuMjVwdDtwYWRkaW5nOjIuNzVwdCAyLjc1cHQgMi43NXB0IDIuNzVwdDsKKyAgaGVpZ2h0OjYxNi40NXB0Jz4KKyAgPHAgY2xhc3M9Q29udGVudWRldGFibGVhdT48IS0tW2lmIGd0ZSB2bWwgMV0+PHY6Z3JvdXAgaWQ9Il94MDAwMF9zMjA5MiIKKyAgIHN0eWxlPSdwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dGV4dC1hbGlnbjpsZWZ0O21hcmdpbi1sZWZ0Oi4wNXB0OworICAgbWFyZ2luLXRvcDoxMi4zcHQ7d2lkdGg6MzY3LjhwdDtoZWlnaHQ6NTg3cHQ7ei1pbmRleDoxMzsKKyAgIG1zby1wb3NpdGlvbi1ob3Jpem9udGFsLXJlbGF0aXZlOnRleHQ7bXNvLXBvc2l0aW9uLXZlcnRpY2FsLXJlbGF0aXZlOnRleHQnCisgICBjb29yZG9yaWdpbj0iMzY0MiwxNTYwIiBjb29yZHNpemU9IjczNTYsMTE3NDAiPgorICAgPHY6c2hhcGUgaWQ9Il94MDAwMF9zMjA2MyIgdHlwZT0iI194MDAwMF90NzUiIHN0eWxlPSdwb3NpdGlvbjphYnNvbHV0ZTsKKyAgICBsZWZ0OjM2NDI7dG9wOjc3MjM7d2lkdGg6NzM1NjtoZWlnaHQ6NTU3Nzttc28td3JhcC1kaXN0YW5jZS1sZWZ0OjA7CisgICAgbXNvLXdyYXAtZGlzdGFuY2UtcmlnaHQ6MDttc28tcG9zaXRpb24taG9yaXpvbnRhbDpjZW50ZXInIGZpbGxlZD0idCI+CisgICAgPHY6ZmlsbCBjb2xvcjI9ImJsYWNrIi8+CisgICAgPHY6aW1hZ2VkYXRhIHNyYz0iUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2ltYWdlMDIyLnBuZyIKKyAgICAgbzp0aXRsZT0iIi8+CisgICA8L3Y6c2hhcGU+PHY6c2hhcGUgaWQ9Il94MDAwMF9zMjA2NCIgdHlwZT0iI194MDAwMF90NzUiIHN0eWxlPSdwb3NpdGlvbjphYnNvbHV0ZTsKKyAgICBsZWZ0OjM5NTU7dG9wOjE1NjA7d2lkdGg6NjcyOTtoZWlnaHQ6NTI5NTttc28td3JhcC1kaXN0YW5jZS1sZWZ0OjA7CisgICAgbXNvLXdyYXAtZGlzdGFuY2UtcmlnaHQ6MDttc28tcG9zaXRpb24taG9yaXpvbnRhbDpjZW50ZXInIGZpbGxlZD0idCI+CisgICAgPHY6ZmlsbCBjb2xvcjI9ImJsYWNrIi8+CisgICAgPHY6aW1hZ2VkYXRhIHNyYz0iUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2ltYWdlMDIzLnBuZyIKKyAgICAgbzp0aXRsZT0iIi8+CisgICA8L3Y6c2hhcGU+PHY6c2hhcGUgaWQ9Il94MDAwMF9zMjA2OSIgdHlwZT0iI194MDAwMF90NjciIHN0eWxlPSdwb3NpdGlvbjphYnNvbHV0ZTsKKyAgICBsZWZ0OjY2OTU7dG9wOjcwMDU7d2lkdGg6NDc4O2hlaWdodDo0MDk7bXNvLXdyYXAtc3R5bGU6bm9uZTsKKyAgICB2LXRleHQtYW5jaG9yOm1pZGRsZScgZmlsbGNvbG9yPSIjOWNmIj4KKyAgICA8djpmaWxsIGNvbG9yMj0iIzYzMCIvPgorICAgIDx2OnN0cm9rZSBqb2luc3R5bGU9InJvdW5kIi8+CisgICA8L3Y6c2hhcGU+PC92Omdyb3VwPjwhW2VuZGlmXS0tPjwhW2lmICF2bWxdPjxzcGFuIHN0eWxlPSdtc28taWdub3JlOnZnbGF5b3V0OworICBwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjEzO2xlZnQ6MHB4O21hcmdpbi1sZWZ0OjBweDttYXJnaW4tdG9wOjE2cHg7CisgIHdpZHRoOjQ5MHB4O2hlaWdodDo3ODNweCc+PGltZyB3aWR0aD00OTAgaGVpZ2h0PTc4MworICBzcmM9IlBhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAyNC5naWYiCisgIHY6c2hhcGVzPSJfeDAwMDBfczIwOTIgX3gwMDAwX3MyMDYzIF94MDAwMF9zMjA2NCBfeDAwMDBfczIwNjkiPjwvc3Bhbj48IVtlbmRpZl0+PCEtLVtpZiBndGUgdm1sIDFdPjx2OnJlY3QKKyAgIGlkPSJfeDAwMDBfczIwNjgiIHN0eWxlPSdwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dGV4dC1hbGlnbjpsZWZ0OworICAgbWFyZ2luLWxlZnQ6OTk5Ljk1cHQ7bWFyZ2luLXRvcDo5Mi42NXB0O3dpZHRoOjIyNy40cHQ7aGVpZ2h0OjExLjVwdDsKKyAgIHotaW5kZXg6MTI7bXNvLXdyYXAtc3R5bGU6bm9uZTt2LXRleHQtYW5jaG9yOm1pZGRsZScgZmlsbGVkPSJmIgorICAgc3Ryb2tlY29sb3I9Im1hcm9vbiIgc3Ryb2tld2VpZ2h0PSIuM21tIj4KKyAgIDx2OnN0cm9rZSBjb2xvcjI9IiM3ZmZmZmYiIGpvaW5zdHlsZT0icm91bmQiLz4KKyAgPC92OnJlY3Q+PHY6c2hhcGUgaWQ9Il94MDAwMF9zMjA3MCIgdHlwZT0iI194MDAwMF90NzUiIHN0eWxlPSdwb3NpdGlvbjphYnNvbHV0ZTsKKyAgIGxlZnQ6MDt0ZXh0LWFsaWduOmxlZnQ7bWFyZ2luLWxlZnQ6OTk5Ljk1cHQ7bWFyZ2luLXRvcDoxNDUuMXB0O3dpZHRoOjI0OC44NXB0OworICAgaGVpZ2h0OjQxLjlwdDt6LWluZGV4OjE0Jz4KKyAgIDx2OmZpbGwgdHlwZT0iZnJhbWUiLz4KKyAgIDx2OmltYWdlZGF0YSBzcmM9IlBhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAyNS53bXoiCisgICAgbzp0aXRsZT0iIi8+CisgIDwvdjpzaGFwZT48IVtlbmRpZl0tLT48IVtpZiAhdm1sXT48c3BhbiBzdHlsZT0nbXNvLWlnbm9yZTp2Z2xheW91dCc+CisgIDx0YWJsZSBjZWxscGFkZGluZz0wIGNlbGxzcGFjaW5nPTAgYWxpZ249bGVmdD4KKyAgIDx0cj4KKyAgICA8dGQgd2lkdGg9MTMzMiBoZWlnaHQ9NzI+PC90ZD4KKyAgICA8dGQgd2lkdGg9MT48L3RkPgorICAgIDx0ZCB3aWR0aD0zMDU+PC90ZD4KKyAgICA8dGQgd2lkdGg9Mjc+PC90ZD4KKyAgIDwvdHI+CisgICA8dHI+CisgICAgPHRkIGhlaWdodD0xOD48L3RkPgorICAgIDx0ZCBjb2xzcGFuPTIgYWxpZ249bGVmdCB2YWxpZ249dG9wPjxpbWcgd2lkdGg9MzA2IGhlaWdodD0xOAorICAgIHNyYz0iUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2ltYWdlMDI2LmdpZiIKKyAgICB2OnNoYXBlcz0iX3gwMDAwX3MyMDY4Ij48L3RkPgorICAgPC90cj4KKyAgIDx0cj4KKyAgICA8dGQgaGVpZ2h0PTUzPjwvdGQ+CisgICA8L3RyPgorICAgPHRyPgorICAgIDx0ZCBoZWlnaHQ9NTY+PC90ZD4KKyAgICA8dGQ+PC90ZD4KKyAgICA8dGQgY29sc3Bhbj0yIGFsaWduPWxlZnQgdmFsaWduPXRvcD48aW1nIHdpZHRoPTMzMiBoZWlnaHQ9NTYKKyAgICBzcmM9IlBhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAyNy5naWYiCisgICAgdjpzaGFwZXM9Il94MDAwMF9zMjA3MCI+PC90ZD4KKyAgIDwvdHI+CisgIDwvdGFibGU+CisgIDwvc3Bhbj48IVtlbmRpZl0+PC9wPgorICA8cCBjbGFzcz1Db250ZW51ZGV0YWJsZWF1PjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorICA8cCBjbGFzcz1Db250ZW51ZGV0YWJsZWF1PjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorICA8cCBjbGFzcz1Db250ZW51ZGV0YWJsZWF1PjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorICA8L3RkPgorIDwvdHI+CisgPHRyIHN0eWxlPSdtc28teWZ0aS1pcm93OjM7bXNvLXlmdGktbGFzdHJvdzp5ZXM7aGVpZ2h0OjM2Mi4wNXB0Jz4KKyAgPHRkIHdpZHRoPTE0NCB2YWxpZ249dG9wIHN0eWxlPSd3aWR0aDoxMDguMzVwdDtib3JkZXItdG9wOm5vbmU7Ym9yZGVyLWxlZnQ6CisgIHNvbGlkIGJsYWNrIDEuMHB0O2JvcmRlci1ib3R0b206c29saWQgYmxhY2sgMS4wcHQ7Ym9yZGVyLXJpZ2h0Om5vbmU7CisgIG1zby1ib3JkZXItbGVmdC1hbHQ6c29saWQgYmxhY2sgLjI1cHQ7bXNvLWJvcmRlci1ib3R0b20tYWx0OnNvbGlkIGJsYWNrIC4yNXB0OworICBwYWRkaW5nOjIuNzVwdCAyLjc1cHQgMi43NXB0IDIuNzVwdDtoZWlnaHQ6MzYyLjA1cHQnPjxiciBzdHlsZT0nbXNvLWlnbm9yZToKKyAgdmdsYXlvdXQnIGNsZWFyPUFMTD4KKyAgPGRpdiBzdHlsZT0nbXNvLWVsZW1lbnQ6cGFyYS1ib3JkZXItZGl2O2JvcmRlcjpub25lO2JvcmRlci1ib3R0b206c29saWQgYmxhY2sgMS4wcHQ7CisgIG1zby1ib3JkZXItYm90dG9tLWFsdDpzb2xpZCBibGFjayAuMjVwdDtwYWRkaW5nOjBjbSAwY20gMi4wcHQgMGNtJz4KKyAgPHAgY2xhc3M9Q29udGVudWRldGFibGVhdSBhbGlnbj1jZW50ZXIgc3R5bGU9J3RleHQtYWxpZ246Y2VudGVyO2JvcmRlcjpub25lOworICBtc28tYm9yZGVyLWJvdHRvbS1hbHQ6c29saWQgYmxhY2sgLjI1cHQ7cGFkZGluZzowY207bXNvLXBhZGRpbmctYWx0OjBjbSAwY20gMi4wcHQgMGNtJz48Yj48c3BhbgorICBsYW5nPUVOLVVTPlN0ZXAgNDxvOnA+PC9vOnA+PC9zcGFuPjwvYj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXUgYWxpZ249Y2VudGVyIHN0eWxlPSd0ZXh0LWFsaWduOmNlbnRlcjtib3JkZXI6bm9uZTsKKyAgbXNvLWJvcmRlci1ib3R0b20tYWx0OnNvbGlkIGJsYWNrIC4yNXB0O3BhZGRpbmc6MGNtO21zby1wYWRkaW5nLWFsdDowY20gMGNtIDIuMHB0IDBjbSc+PGI+PHNwYW4KKyAgbGFuZz1FTi1VUz5BZGQgYSBjb21tYW5kIHRvIHRoZSBtZW51Y29udHJpYnV0aW9uPG86cD48L286cD48L3NwYW4+PC9iPjwvcD4KKyAgPC9kaXY+CisgIDwvdGQ+CisgIDx0ZCB3aWR0aD00OTggdmFsaWduPXRvcCBzdHlsZT0nd2lkdGg6MzczLjRwdDtib3JkZXI6c29saWQgYmxhY2sgMS4wcHQ7CisgIGJvcmRlci10b3A6bm9uZTttc28tYm9yZGVyLWxlZnQtYWx0OnNvbGlkIGJsYWNrIC4yNXB0O21zby1ib3JkZXItYm90dG9tLWFsdDoKKyAgc29saWQgYmxhY2sgLjI1cHQ7bXNvLWJvcmRlci1yaWdodC1hbHQ6c29saWQgYmxhY2sgLjI1cHQ7cGFkZGluZzoyLjc1cHQgMi43NXB0IDIuNzVwdCAyLjc1cHQ7CisgIGhlaWdodDozNjIuMDVwdCc+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PCEtLVtpZiBndGUgdm1sIDFdPjx2OnJlY3QgaWQ9Il94MDAwMF9zMjA2NSIKKyAgIHN0eWxlPSdwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dGV4dC1hbGlnbjpsZWZ0O21hcmdpbi1sZWZ0Ojk5OS45NXB0OworICAgbWFyZ2luLXRvcDo0NC44cHQ7d2lkdGg6MzQ5LjA1cHQ7aGVpZ2h0OjMyNy40cHQ7ei1pbmRleDoxMDt2LXRleHQtYW5jaG9yOm1pZGRsZS1jZW50ZXInCisgICBmaWxsY29sb3I9IiNmZjkiPgorICAgPHY6ZmlsbCBjb2xvcjI9IiMwMDYiLz4KKyAgIDx2OnN0cm9rZSBqb2luc3R5bGU9InJvdW5kIi8+CisgICA8djp0ZXh0Ym94IHN0eWxlPSdtc28tcm90YXRlLXdpdGgtc2hhcGU6dCcgaW5zZXQ9IjAsMCwwLDAiLz4KKyAgPC92OnJlY3Q+PCFbZW5kaWZdLS0+PCFbaWYgIXZtbF0+PHNwYW4gc3R5bGU9J21zby1pZ25vcmU6dmdsYXlvdXQnPgorICA8dGFibGUgY2VsbHBhZGRpbmc9MCBjZWxsc3BhY2luZz0wIGFsaWduPWxlZnQ+CisgICA8dHI+CisgICAgPHRkIHdpZHRoPTEzMzIgaGVpZ2h0PTk+PC90ZD4KKyAgIDwvdHI+CisgICA8dHI+CisgICAgPHRkPjwvdGQ+CisgICAgPHRkIHdpZHRoPTQ3MiBoZWlnaHQ9NDQyIGJnY29sb3I9IiNGRkZGOTkiIHN0eWxlPSdib3JkZXI6Ljc1cHQgc29saWQgYmxhY2s7CisgICAgdmVydGljYWwtYWxpZ246dG9wO2JhY2tncm91bmQ6I0ZGRkY5OSc+PCFbZW5kaWZdPjwhW2lmICFtc29dPjxzcGFuCisgICAgc3R5bGU9J3Bvc2l0aW9uOmFic29sdXRlO21zby1pZ25vcmU6dmdsYXlvdXQ7bGVmdDowcHQ7ei1pbmRleDoxMCc+CisgICAgPHRhYmxlIGNlbGxwYWRkaW5nPTAgY2VsbHNwYWNpbmc9MCB3aWR0aD0iMTAwJSI+CisgICAgIDx0cj4KKyAgICAgIDx0ZD48IVtlbmRpZl0+CisgICAgICA8ZGl2IHY6c2hhcGU9Il94MDAwMF9zMjA2NSIgc3R5bGU9J3BhZGRpbmc6Ljc1cHQgLjc1cHQgLjc1cHQgLjc1cHQnCisgICAgICBjbGFzcz1zaGFwZT4KKyAgICAgIDxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBzdHlsZT0nZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciOworICAgICAgbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijtjb2xvcjpuYXZ5O21zby1hbnNpLWxhbmd1YWdlOkZSJz4mbHQ7ZXh0ZW5zaW9uPG86cD48L286cD48L3NwYW4+PC9wPgorICAgICAgPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7CisgICAgICBtc28tZmFyZWFzdC1mb250LWZhbWlseToiQ291cmllciBOZXciO2NvbG9yOmJsYWNrO21zby1hbnNpLWxhbmd1YWdlOkZSJz48c3BhbgorICAgICAgc3R5bGU9J21zby1zcGFjZXJ1bjp5ZXMnPqCgoKCgoKCgIDwvc3Bhbj48L3NwYW4+PHNwYW4gc3R5bGU9J2ZvbnQtc2l6ZToKKyAgICAgIDEwLjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7CisgICAgICBjb2xvcjpuYXZ5O21zby1hbnNpLWxhbmd1YWdlOkZSJz5wb2ludD08L3NwYW4+PHNwYW4gc3R5bGU9J2ZvbnQtc2l6ZToKKyAgICAgIDEwLjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7CisgICAgICBjb2xvcjpncmVlbjttc28tYW5zaS1sYW5ndWFnZTpGUic+JnF1b3Q7b3JnLmVjbGlwc2UudWkubWVudXMmcXVvdDs8L3NwYW4+PHNwYW4KKyAgICAgIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6CisgICAgICAiQ291cmllciBOZXciO2NvbG9yOm5hdnk7bXNvLWFuc2ktbGFuZ3VhZ2U6RlInPiZndDs8bzpwPjwvbzpwPjwvc3Bhbj48L3A+CisgICAgICA8cCBjbGFzcz1Nc29Ob3JtYWw+PHNwYW4gc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3IjsKKyAgICAgIG1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7Y29sb3I6YmxhY2s7bXNvLWFuc2ktbGFuZ3VhZ2U6RlInPjxzcGFuCisgICAgICBzdHlsZT0nbXNvLXNwYWNlcnVuOnllcyc+oKCgoKAgPC9zcGFuPjwvc3Bhbj48c3BhbiBsYW5nPUVOLVVTCisgICAgICBzdHlsZT0nZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OgorICAgICAgIkNvdXJpZXIgTmV3Ijtjb2xvcjpuYXZ5Jz4mbHQ7bWVudUNvbnRyaWJ1dGlvbjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKyAgICAgIDxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OgorICAgICAgIkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToiQ291cmllciBOZXciO2NvbG9yOmJsYWNrJz48c3BhbgorICAgICAgc3R5bGU9J21zby1zcGFjZXJ1bjp5ZXMnPqCgoKCgoKCgoKCgIDwvc3Bhbj48L3NwYW4+PHNwYW4gbGFuZz1FTi1VUworICAgICAgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToKKyAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eSc+YWxsUG9wdXBzPTwvc3Bhbj48c3BhbiBsYW5nPUVOLVVTCisgICAgICBzdHlsZT0nZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OgorICAgICAgIkNvdXJpZXIgTmV3Ijtjb2xvcjpncmVlbic+JnF1b3Q7dHJ1ZSZxdW90OzxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKyAgICAgIDxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OgorICAgICAgIkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToiQ291cmllciBOZXciO2NvbG9yOmJsYWNrJz48c3BhbgorICAgICAgc3R5bGU9J21zby1zcGFjZXJ1bjp5ZXMnPqCgoKCgoKCgoKCgIDwvc3Bhbj48L3NwYW4+PHNwYW4gbGFuZz1FTi1VUworICAgICAgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToKKyAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eSc+TG9jYXRpb25VUkk9PG86cD48L286cD48L3NwYW4+PC9wPgorICAgICAgPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIGxhbmc9RU4tVVMgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6CisgICAgICAiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7Y29sb3I6Z3JlZW4nPiZxdW90O3BvcHVwOm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RNTC5tb2RlbGV4cGxvcmVyLnBvcHVwbWVudS5nZW5lcmF0ZSZxdW90Ozwvc3Bhbj48c3BhbgorICAgICAgbGFuZz1FTi1VUyBzdHlsZT0nZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OgorICAgICAgIkNvdXJpZXIgTmV3Ijtjb2xvcjpuYXZ5Jz4mZ3Q7PG86cD48L286cD48L3NwYW4+PC9wPgorICAgICAgPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIGxhbmc9RU4tVVMgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6CisgICAgICAiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7Y29sb3I6YmxhY2snPjxzcGFuCisgICAgICBzdHlsZT0nbXNvLXNwYWNlcnVuOnllcyc+oKCgoKCgoKAgPC9zcGFuPjwvc3Bhbj48c3BhbiBsYW5nPUVOLVVTCisgICAgICBzdHlsZT0nZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OgorICAgICAgIkNvdXJpZXIgTmV3Ijtjb2xvcjpuYXZ5Jz4mbHQ7Y29tbWFuZDxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKyAgICAgIDxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OgorICAgICAgIkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToiQ291cmllciBOZXciO2NvbG9yOmJsYWNrJz48c3BhbgorICAgICAgc3R5bGU9J21zby1zcGFjZXJ1bjp5ZXMnPqCgoKCgoKCgoKCgoKCgIDwvc3Bhbj48L3NwYW4+PHNwYW4gbGFuZz1FTi1VUworICAgICAgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToKKyAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eSc+Y29tbWFuZElkPTwvc3Bhbj48c3BhbiBsYW5nPUVOLVVTCisgICAgICBzdHlsZT0nZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OgorICAgICAgIkNvdXJpZXIgTmV3Ijtjb2xvcjpncmVlbic+JnF1b3Q7b3JnLmVjbGlwc2Uucm9ib3RNTC5nZW5lcmF0ZVJUTWFwc0NvbW1hbmQmcXVvdDs8bzpwPjwvbzpwPjwvc3Bhbj48L3A+CisgICAgICA8cCBjbGFzcz1Nc29Ob3JtYWw+PHNwYW4gbGFuZz1FTi1VUyBzdHlsZT0nZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseToKKyAgICAgICJDb3VyaWVyIE5ldyI7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijtjb2xvcjpibGFjayc+PHNwYW4KKyAgICAgIHN0eWxlPSdtc28tc3BhY2VydW46eWVzJz6goKCgoKCgoKCgoKCgoCA8L3NwYW4+PC9zcGFuPjxzcGFuIGxhbmc9RU4tVVMKKyAgICAgIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6CisgICAgICAiQ291cmllciBOZXciO2NvbG9yOm5hdnknPmljb249PC9zcGFuPjxzcGFuIGxhbmc9RU4tVVMgc3R5bGU9J2ZvbnQtc2l6ZToKKyAgICAgIDEwLjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7CisgICAgICBjb2xvcjpncmVlbic+JnF1b3Q7aWNvbnMvZGVmYXVsdC5naWYmcXVvdDs8bzpwPjwvbzpwPjwvc3Bhbj48L3A+CisgICAgICA8cCBjbGFzcz1Nc29Ob3JtYWw+PHNwYW4gbGFuZz1FTi1VUyBzdHlsZT0nZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseToKKyAgICAgICJDb3VyaWVyIE5ldyI7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijtjb2xvcjpibGFjayc+PHNwYW4KKyAgICAgIHN0eWxlPSdtc28tc3BhY2VydW46eWVzJz6goKCgoKCgoKCgoKCgoCA8L3NwYW4+PC9zcGFuPjxzcGFuIGxhbmc9RU4tVVMKKyAgICAgIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6CisgICAgICAiQ291cmllciBOZXciO2NvbG9yOm5hdnknPmlkPTwvc3Bhbj48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdmb250LXNpemU6CisgICAgICAxMC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToiQ291cmllciBOZXciOworICAgICAgY29sb3I6Z3JlZW4nPiZxdW90O29yZy5lY2xpcHNlLnJvYm90TUwuZ2VuZXJhdGVSVE1hcHMmcXVvdDs8bzpwPjwvbzpwPjwvc3Bhbj48L3A+CisgICAgICA8cCBjbGFzcz1Nc29Ob3JtYWw+PHNwYW4gbGFuZz1FTi1VUyBzdHlsZT0nZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseToKKyAgICAgICJDb3VyaWVyIE5ldyI7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijtjb2xvcjpibGFjayc+PHNwYW4KKyAgICAgIHN0eWxlPSdtc28tc3BhY2VydW46eWVzJz6goKCgoKCgoKCgoKCgoCA8L3NwYW4+PC9zcGFuPjxzcGFuIGxhbmc9RU4tVVMKKyAgICAgIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6CisgICAgICAiQ291cmllciBOZXciO2NvbG9yOm5hdnknPmxhYmVsPTwvc3Bhbj48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdmb250LXNpemU6CisgICAgICAxMC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToiQ291cmllciBOZXciOworICAgICAgY29sb3I6Z3JlZW4nPiZxdW90O0dlbmVyYXRlIHRvIFJUTWFwcyZxdW90OzxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKyAgICAgIDxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OgorICAgICAgIkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToiQ291cmllciBOZXciO2NvbG9yOmJsYWNrJz48c3BhbgorICAgICAgc3R5bGU9J21zby1zcGFjZXJ1bjp5ZXMnPqCgoKCgoKCgoKCgoKCgIDwvc3Bhbj48L3NwYW4+PHNwYW4gbGFuZz1FTi1VUworICAgICAgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToKKyAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eSc+c3R5bGU9PC9zcGFuPjxzcGFuIGxhbmc9RU4tVVMgc3R5bGU9J2ZvbnQtc2l6ZToKKyAgICAgIDEwLjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7CisgICAgICBjb2xvcjpncmVlbic+JnF1b3Q7cHVzaCZxdW90OzxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKyAgICAgIDxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OgorICAgICAgIkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToiQ291cmllciBOZXciO2NvbG9yOmJsYWNrJz48c3BhbgorICAgICAgc3R5bGU9J21zby1zcGFjZXJ1bjp5ZXMnPqCgoKCgoKCgoKCgoKCgIDwvc3Bhbj48L3NwYW4+PHNwYW4gbGFuZz1FTi1VUworICAgICAgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToKKyAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eSc+dG9vbHRpcD08L3NwYW4+PHNwYW4gbGFuZz1FTi1VUworICAgICAgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToKKyAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6Z3JlZW4nPiZxdW90O0dlbmVyYXRlIGNvZGUgdG8gUlRNYXBzIG1pZGRsZXdhcmUmcXVvdDs8L3NwYW4+PHNwYW4KKyAgICAgIGxhbmc9RU4tVVMgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToKKyAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eSc+Jmd0OzxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKyAgICAgIDxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OgorICAgICAgIkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToiQ291cmllciBOZXciO2NvbG9yOmJsYWNrJz48c3BhbgorICAgICAgc3R5bGU9J21zby1zcGFjZXJ1bjp5ZXMnPqCgoKCgoKCgoKCgIDwvc3Bhbj48L3NwYW4+PHNwYW4gbGFuZz1FTi1VUworICAgICAgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToKKyAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eSc+Jmx0O3Zpc2libGVXaGVuJmd0OzxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKyAgICAgIDxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OgorICAgICAgIkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToiQ291cmllciBOZXciO2NvbG9yOmJsYWNrJz48c3BhbgorICAgICAgc3R5bGU9J21zby1zcGFjZXJ1bjp5ZXMnPqCgoKCgoKCgoKCgoKCgIDwvc3Bhbj48L3NwYW4+PHNwYW4gbGFuZz1FTi1VUworICAgICAgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToKKyAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eSc+Jmx0O3JlZmVyZW5jZTxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKyAgICAgIDxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OgorICAgICAgIkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToiQ291cmllciBOZXciO2NvbG9yOmJsYWNrJz48c3BhbgorICAgICAgc3R5bGU9J21zby1zcGFjZXJ1bjp5ZXMnPqCgoKCgoKCgoKCgoKCgoKCgoKCgIDwvc3Bhbj48L3NwYW4+PHNwYW4KKyAgICAgIGxhbmc9RU4tVVMgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToKKyAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eSc+RGVmaW5pdGlvbklkPTxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKyAgICAgIDxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OgorICAgICAgIkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToiQ291cmllciBOZXciO2NvbG9yOmdyZWVuJz4mcXVvdDtvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMuZGlhZ3JhbS5jb21tb24uSXNQYXB5cnVzQWN0aXZlV2l0aFByb3RldXMmcXVvdDs8L3NwYW4+PHNwYW4KKyAgICAgIGxhbmc9RU4tVVMgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToKKyAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eSc+Jmd0OzxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKyAgICAgIDxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OgorICAgICAgIkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToiQ291cmllciBOZXciO2NvbG9yOmJsYWNrJz48c3BhbgorICAgICAgc3R5bGU9J21zby1zcGFjZXJ1bjp5ZXMnPqCgoKCgoKCgoKCgoKCgIDwvc3Bhbj48L3NwYW4+PHNwYW4gbGFuZz1FTi1VUworICAgICAgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToKKyAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eSc+Jmx0Oy9yZWZlcmVuY2UmZ3Q7PG86cD48L286cD48L3NwYW4+PC9wPgorICAgICAgPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIGxhbmc9RU4tVVMgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6CisgICAgICAiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7Y29sb3I6YmxhY2snPjxzcGFuCisgICAgICBzdHlsZT0nbXNvLXNwYWNlcnVuOnllcyc+oKCgoKCgoKCgoKAgPC9zcGFuPjwvc3Bhbj48c3BhbiBsYW5nPUVOLVVTCisgICAgICBzdHlsZT0nZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OgorICAgICAgIkNvdXJpZXIgTmV3Ijtjb2xvcjpuYXZ5Jz4mbHQ7L3Zpc2libGVXaGVuJmd0OzxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKyAgICAgIDxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OgorICAgICAgIkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToiQ291cmllciBOZXciO2NvbG9yOmJsYWNrJz48c3BhbgorICAgICAgc3R5bGU9J21zby1zcGFjZXJ1bjp5ZXMnPqCgoKCgoKCgIDwvc3Bhbj48L3NwYW4+PHNwYW4gbGFuZz1FTi1VUworICAgICAgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToKKyAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eSc+Jmx0Oy9jb21tYW5kJmd0OzxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKyAgICAgIDxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OgorICAgICAgIkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToiQ291cmllciBOZXciO2NvbG9yOmJsYWNrJz48c3BhbgorICAgICAgc3R5bGU9J21zby1zcGFjZXJ1bjp5ZXMnPqCgoKCgIDwvc3Bhbj48L3NwYW4+PHNwYW4gbGFuZz1FTi1VUworICAgICAgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToKKyAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eSc+Jmx0Oy9tZW51Q29udHJpYnV0aW9uJmd0OzxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKyAgICAgIDxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OgorICAgICAgIkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToiQ291cmllciBOZXciO2NvbG9yOmJsYWNrJz48c3BhbgorICAgICAgc3R5bGU9J21zby1zcGFjZXJ1bjp5ZXMnPqCgIDwvc3Bhbj48L3NwYW4+PHNwYW4gbGFuZz1FTi1VUworICAgICAgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToKKyAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eSc+Jmx0Oy9leHRlbnNpb24mZ3Q7PG86cD48L286cD48L3NwYW4+PC9wPgorICAgICAgPC9kaXY+CisgICAgICA8IVtpZiAhbXNvXT48L3RkPgorICAgICA8L3RyPgorICAgIDwvdGFibGU+CisgICAgPC9zcGFuPjwhW2VuZGlmXT48IVtpZiAhbXNvICYgIXZtbF0+Jm5ic3A7PCFbZW5kaWZdPjwhW2lmICF2bWxdPjwvdGQ+CisgICA8L3RyPgorICA8L3RhYmxlPgorICA8L3NwYW4+PCFbZW5kaWZdPjwhLS1baWYgZ3RlIHZtbCAxXT48djpncm91cCBpZD0iX3gwMDAwX3MyMDg3IiBzdHlsZT0ncG9zaXRpb246YWJzb2x1dGU7CisgICBsZWZ0OjA7dGV4dC1hbGlnbjpsZWZ0O21hcmdpbi1sZWZ0Oi4wNXB0O21hcmdpbi10b3A6MDt3aWR0aDozNjcuOHB0OworICAgaGVpZ2h0OjMzNi42NXB0O3otaW5kZXg6MTU7bXNvLXBvc2l0aW9uLWhvcml6b250YWwtcmVsYXRpdmU6dGV4dDsKKyAgIG1zby1wb3NpdGlvbi12ZXJ0aWNhbC1yZWxhdGl2ZTp0ZXh0JyBjb29yZG9yaWdpbj0iMzY0MiwxNTYwIiBjb29yZHNpemU9IjczNTYsNjczMyI+CisgICA8djpzaGFwZSBpZD0iX3gwMDAwX3MyMDY3IiB0eXBlPSIjX3gwMDAwX3Q3NSIgc3R5bGU9J3Bvc2l0aW9uOmFic29sdXRlOworICAgIGxlZnQ6MzY0Mjt0b3A6MTU2MDt3aWR0aDo3MzU2O2hlaWdodDo1NzgyO21zby13cmFwLWRpc3RhbmNlLWxlZnQ6MDsKKyAgICBtc28td3JhcC1kaXN0YW5jZS1yaWdodDowO21zby1wb3NpdGlvbi1ob3Jpem9udGFsOmNlbnRlcicgZmlsbGVkPSJ0Ij4KKyAgICA8djpmaWxsIGNvbG9yMj0iYmxhY2siLz4KKyAgICA8djppbWFnZWRhdGEgc3JjPSJQYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMjgucG5nIgorICAgICBvOnRpdGxlPSIiLz4KKyAgIDwvdjpzaGFwZT48djpzaGFwZSBpZD0iX3gwMDAwX3MyMDcxIiB0eXBlPSIjX3gwMDAwX3Q2NyIgc3R5bGU9J3Bvc2l0aW9uOmFic29sdXRlOworICAgIGxlZnQ6NzgyNzt0b3A6NzM0Mjt3aWR0aDoyNTk7aGVpZ2h0Ojk1MTttc28td3JhcC1zdHlsZTpub25lOworICAgIHYtdGV4dC1hbmNob3I6bWlkZGxlJyBmaWxsY29sb3I9IiM5Y2YiPgorICAgIDx2OmZpbGwgY29sb3IyPSIjNjMwIi8+CisgICAgPHY6c3Ryb2tlIGpvaW5zdHlsZT0icm91bmQiLz4KKyAgIDwvdjpzaGFwZT48djpyZWN0IGlkPSJfeDAwMDBfczIwNzIiIHN0eWxlPSdwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Ojc2Nzc7CisgICAgdG9wOjcxMjE7d2lkdGg6NTE4O2hlaWdodDoyMjE7bXNvLXdyYXAtc3R5bGU6bm9uZTt2LXRleHQtYW5jaG9yOm1pZGRsZScKKyAgICBmaWxsZWQ9ImYiIHN0cm9rZWNvbG9yPSJtYXJvb24iIHN0cm9rZXdlaWdodD0iLjNtbSI+CisgICAgPHY6c3Ryb2tlIGNvbG9yMj0iIzdmZmZmZiIgam9pbnN0eWxlPSJyb3VuZCIvPgorICAgPC92OnJlY3Q+PC92Omdyb3VwPjwhW2VuZGlmXS0tPjwhW2lmICF2bWxdPjxzcGFuIHN0eWxlPSdtc28taWdub3JlOnZnbGF5b3V0OworICBwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjE1O2xlZnQ6MHB4O21hcmdpbi1sZWZ0OjBweDttYXJnaW4tdG9wOjBweDsKKyAgd2lkdGg6NDkwcHg7aGVpZ2h0OjQ1MXB4Jz48aW1nIHdpZHRoPTQ5MCBoZWlnaHQ9NDUxCisgIHNyYz0iUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2ltYWdlMDI5LmdpZiIKKyAgdjpzaGFwZXM9Il94MDAwMF9zMjA4NyBfeDAwMDBfczIwNjcgX3gwMDAwX3MyMDcxIF94MDAwMF9zMjA3MiI+PC9zcGFuPjwhW2VuZGlmXT48IS0tW2lmIGd0ZSB2bWwgMV0+PHY6cmVjdAorICAgaWQ9Il94MDAwMF9zMjA2NiIgc3R5bGU9J3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0ZXh0LWFsaWduOmxlZnQ7CisgICBtYXJnaW4tbGVmdDo0OC40cHQ7bWFyZ2luLXRvcDoyODkuMXB0O3dpZHRoOjEyOC4ycHQ7aGVpZ2h0OjQ5LjY1cHQ7CisgICB6LWluZGV4OjExO21zby1wb3NpdGlvbi1ob3Jpem9udGFsLXJlbGF0aXZlOnRleHQ7CisgICBtc28tcG9zaXRpb24tdmVydGljYWwtcmVsYXRpdmU6dGV4dDt2LXRleHQtYW5jaG9yOm1pZGRsZS1jZW50ZXInIGZpbGxlZD0iZiIKKyAgIHN0cm9rZWQ9ImYiPgorICAgPHY6c3Ryb2tlIGpvaW5zdHlsZT0icm91bmQiLz4KKyAgIDx2OnRleHRib3ggc3R5bGU9J21zby1yb3RhdGUtd2l0aC1zaGFwZTp0JyBpbnNldD0iMCwwLDAsMCIvPgorICA8L3Y6cmVjdD48IVtlbmRpZl0tLT48IVtpZiAhdm1sXT48c3BhbiBzdHlsZT0nbXNvLWlnbm9yZTp2Z2xheW91dDtwb3NpdGlvbjoKKyAgYWJzb2x1dGU7ei1pbmRleDoxMTtsZWZ0OjBweDttYXJnaW4tbGVmdDo2NXB4O21hcmdpbi10b3A6Mzg1cHg7d2lkdGg6MTc1cHg7CisgIGhlaWdodDo3MXB4Jz4KKyAgPHRhYmxlIGNlbGxwYWRkaW5nPTAgY2VsbHNwYWNpbmc9MD4KKyAgIDx0cj4KKyAgICA8dGQgd2lkdGg9MTc1IGhlaWdodD03MSBzdHlsZT0ndmVydGljYWwtYWxpZ246dG9wJz48IVtlbmRpZl0+PCFbaWYgIW1zb10+PHNwYW4KKyAgICBzdHlsZT0ncG9zaXRpb246YWJzb2x1dGU7bXNvLWlnbm9yZTp2Z2xheW91dDtsZWZ0OjBwdDt6LWluZGV4OjExJz4KKyAgICA8dGFibGUgY2VsbHBhZGRpbmc9MCBjZWxsc3BhY2luZz0wIHdpZHRoPSIxMDAlIj4KKyAgICAgPHRyPgorICAgICAgPHRkPjwhW2VuZGlmXT4KKyAgICAgIDxkaXYgdjpzaGFwZT0iX3gwMDAwX3MyMDY2IiBzdHlsZT0ncGFkZGluZzowcHQgMHB0IDBwdCAwcHQnIGNsYXNzPXNoYXBlPgorICAgICAgPHAgY2xhc3M9TXNvTm9ybWFsIGFsaWduPWNlbnRlciBzdHlsZT0ndGV4dC1hbGlnbjpjZW50ZXInPjxzcGFuCisgICAgICBsYW5nPUVOLVVTPlRoZSBleHRlbnNpb24gZGV0YWlscyAocGx1Z2luLnhtbCBjb3JuZXIpPC9zcGFuPjwvcD4KKyAgICAgIDwvZGl2PgorICAgICAgPCFbaWYgIW1zb10+PC90ZD4KKyAgICAgPC90cj4KKyAgICA8L3RhYmxlPgorICAgIDwvc3Bhbj48IVtlbmRpZl0+PCFbaWYgIW1zbyAmICF2bWxdPiZuYnNwOzwhW2VuZGlmXT48IVtpZiAhdm1sXT48L3RkPgorICAgPC90cj4KKyAgPC90YWJsZT4KKyAgPC9zcGFuPjwhW2VuZGlmXT48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDwvdGQ+CisgPC90cj4KKzwvdGFibGU+CisKKzxiciBzdHlsZT0nbXNvLWlnbm9yZTp2Z2xheW91dCcgY2xlYXI9QUxMPgorCis8ZGl2IHN0eWxlPSdtc28tZWxlbWVudDpwYXJhLWJvcmRlci1kaXY7Ym9yZGVyLXRvcDpzb2xpZCBibGFjayAxLjBwdDsKK2JvcmRlci1sZWZ0Om5vbmU7Ym9yZGVyLWJvdHRvbTpzb2xpZCBibGFjayAxLjBwdDtib3JkZXItcmlnaHQ6bm9uZTttc28tYm9yZGVyLXRvcC1hbHQ6Citzb2xpZCBibGFjayAuNXB0O21zby1ib3JkZXItYm90dG9tLWFsdDpzb2xpZCBibGFjayAuNXB0O3BhZGRpbmc6MS4wcHQgMGNtIDEuMHB0IDBjbTsKK2JhY2tncm91bmQ6I0NDQ0NDQyc+CisKKzxoMT48YSBuYW1lPSJfX1JlZkhlYWRpbmdfXzIxODRfOTQ5Njk1MjQ2Ij48L2E+PCFbaWYgIXN1cHBvcnRMaXN0c10+PHNwYW4KK2xhbmc9RU4tVVMgc3R5bGU9J21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OkFyaWFsO21zby1iaWRpLWZvbnQtZmFtaWx5OkFyaWFsJz48c3Bhbgorc3R5bGU9J21zby1saXN0Oklnbm9yZSc+NDxzcGFuIHN0eWxlPSdmb250OjcuMHB0ICJUaW1lcyBOZXcgUm9tYW4iJz4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsKKzwvc3Bhbj48L3NwYW4+PC9zcGFuPjwhW2VuZGlmXT48c3BhbiBsYW5nPUVOLVVTPkFkZCB0aGUgY29tbWFuZCBleHRlbnNpb24gcG9pbnQ8L3NwYW4+PC9oMT4KKworPC9kaXY+CisKKzxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTPlRoZW4gYWRkIGFuIGV4dGVuc2lvbiBwb2ludCB0byBkZWZpbmUgdGhlCitjb2RlIGdlbmVyYXRpb24gPGI+Y29tbWFuZDwvYj4gY2FsbGVkIGJ5IHRoZSBwcmV2aW91c2x5IGRlZmluZWQgbWVudS4gQSBjb21tYW5kCitpcyBpcyBhIGRlY2xhcmF0aXZlIGRlc2NyaXB0aW9uIG9mIGEgY29tcG9uZW50IGFuZCBpcyBpbmRlcGVuZGVudCBmcm9tIHRoZQoraW1wbGVtZW50YXRpb24gZGV0YWlscy4gQ29tbWFuZHMgYXJlIGRlZmluZWQgdmlhIHRoZSBleHRlbnNpb24gcG9pbnQKKyZxdW90O29yZy5lY2xpcHNlLnVpLmNvbW1hbmRzJnF1b3Q7LiBBIGNvbW1hbmQgY2FuIGJlIGNhdGVnb3JpemVkLCBhc3NpZ25lZCB0bwordGhlIHVzZXIgaW50ZXJmYWNlIGFuZCBhIGtleSBiaW5kaW5nIGNhbiBiZSBkZWZpbmVkIGZvciB0aGUgY29tbWFuZC4gVGhlCitiZWhhdmlvciBvZiBhIGNvbW1hbmQgY2FuIGJlIGRlZmluZWQgdmlhIGEgaGFuZGxlci48L3NwYW4+PC9wPgorCis8dGFibGUgY2xhc3M9TXNvTm9ybWFsVGFibGUgYm9yZGVyPTAgY2VsbHNwYWNpbmc9MCBjZWxscGFkZGluZz0wCisgc3R5bGU9J21hcmdpbi1sZWZ0OjIuNzVwdDtib3JkZXItY29sbGFwc2U6Y29sbGFwc2U7bXNvLXBhZGRpbmctYWx0OjIuNzVwdCAyLjc1cHQgMi43NXB0IDIuNzVwdCc+CisgPHRyIHN0eWxlPSdtc28teWZ0aS1pcm93OjA7bXNvLXlmdGktZmlyc3Ryb3c6eWVzO21zby15ZnRpLWxhc3Ryb3c6eWVzOworICBoZWlnaHQ6NTEzLjBwdCc+CisgIDx0ZCB3aWR0aD0xNzAgdmFsaWduPXRvcCBzdHlsZT0nd2lkdGg6MTI3LjQ1cHQ7Ym9yZGVyOnNvbGlkIGJsYWNrIDEuMHB0OworICBib3JkZXItcmlnaHQ6bm9uZTttc28tYm9yZGVyLXRvcC1hbHQ6c29saWQgYmxhY2sgLjI1cHQ7bXNvLWJvcmRlci1sZWZ0LWFsdDoKKyAgc29saWQgYmxhY2sgLjI1cHQ7bXNvLWJvcmRlci1ib3R0b20tYWx0OnNvbGlkIGJsYWNrIC4yNXB0O3BhZGRpbmc6Mi43NXB0IDIuNzVwdCAyLjc1cHQgMi43NXB0OworICBoZWlnaHQ6NTEzLjBwdCc+CisgIDxkaXYgc3R5bGU9J21zby1lbGVtZW50OnBhcmEtYm9yZGVyLWRpdjtib3JkZXI6bm9uZTtib3JkZXItYm90dG9tOnNvbGlkIGJsYWNrIDEuMHB0OworICBtc28tYm9yZGVyLWJvdHRvbS1hbHQ6c29saWQgYmxhY2sgLjI1cHQ7cGFkZGluZzowY20gMGNtIDIuMHB0IDBjbSc+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXUgYWxpZ249Y2VudGVyIHN0eWxlPSd0ZXh0LWFsaWduOmNlbnRlcjtib3JkZXI6bm9uZTsKKyAgbXNvLWJvcmRlci1ib3R0b20tYWx0OnNvbGlkIGJsYWNrIC4yNXB0O3BhZGRpbmc6MGNtO21zby1wYWRkaW5nLWFsdDowY20gMGNtIDIuMHB0IDBjbSc+PGI+PHNwYW4KKyAgbGFuZz1FTi1VUz5TdGVwIDxvOnA+PC9vOnA+PC9zcGFuPjwvYj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXUgYWxpZ249Y2VudGVyIHN0eWxlPSd0ZXh0LWFsaWduOmNlbnRlcjtib3JkZXI6bm9uZTsKKyAgbXNvLWJvcmRlci1ib3R0b20tYWx0OnNvbGlkIGJsYWNrIC4yNXB0O3BhZGRpbmc6MGNtO21zby1wYWRkaW5nLWFsdDowY20gMGNtIDIuMHB0IDBjbSc+PGI+PHNwYW4KKyAgbGFuZz1FTi1VUz5BZGQgYSBjb21tYW5kIGV4dGVuc2lvbiBwb2ludDxvOnA+PC9vOnA+PC9zcGFuPjwvYj48L3A+CisgIDwvZGl2PgorICA8L3RkPgorICA8dGQgd2lkdGg9NDcyIHZhbGlnbj10b3Agc3R5bGU9J3dpZHRoOjM1NC4zcHQ7Ym9yZGVyOnNvbGlkIGJsYWNrIDEuMHB0OworICBtc28tYm9yZGVyLWFsdDpzb2xpZCBibGFjayAuMjVwdDtwYWRkaW5nOjIuNzVwdCAyLjc1cHQgMi43NXB0IDIuNzVwdDsKKyAgaGVpZ2h0OjUxMy4wcHQnPgorICA8cCBjbGFzcz1Db250ZW51ZGV0YWJsZWF1PjwhLS1baWYgZ3RlIHZtbCAxXT48djpncm91cCBpZD0iX3gwMDAwX3MyMDg2IgorICAgc3R5bGU9J3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0ZXh0LWFsaWduOmxlZnQ7bWFyZ2luLWxlZnQ6LTEuM3B0OworICAgbWFyZ2luLXRvcDowO3dpZHRoOjM1MC4wNXB0O2hlaWdodDo0OTMuNXB0O3otaW5kZXg6MTc7CisgICBtc28tcG9zaXRpb24taG9yaXpvbnRhbC1yZWxhdGl2ZTp0ZXh0O21zby1wb3NpdGlvbi12ZXJ0aWNhbC1yZWxhdGl2ZTp0ZXh0JworICAgY29vcmRvcmlnaW49IjM5OTYsMzc4MCIgY29vcmRzaXplPSI3MDAxLDk4NzAiPgorICAgPHY6c2hhcGUgaWQ9Il94MDAwMF9zMjA3MyIgdHlwZT0iI194MDAwMF90NzUiIHN0eWxlPSdwb3NpdGlvbjphYnNvbHV0ZTsKKyAgICBsZWZ0OjQwMjM7dG9wOjM3ODA7d2lkdGg6Njk3NDtoZWlnaHQ6NTU4ODttc28td3JhcC1kaXN0YW5jZS1sZWZ0OjA7CisgICAgbXNvLXdyYXAtZGlzdGFuY2UtcmlnaHQ6MDttc28tcG9zaXRpb24taG9yaXpvbnRhbDpjZW50ZXInIGZpbGxlZD0idCI+CisgICAgPHY6ZmlsbCBjb2xvcjI9ImJsYWNrIi8+CisgICAgPHY6aW1hZ2VkYXRhIHNyYz0iUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2ltYWdlMDMwLnBuZyIKKyAgICAgbzp0aXRsZT0iIi8+CisgICA8L3Y6c2hhcGU+PHY6cmVjdCBpZD0iX3gwMDAwX3MyMDc1IiBzdHlsZT0ncG9zaXRpb246YWJzb2x1dGU7bGVmdDo3OTI4OworICAgIHRvcDo5MTUwO3dpZHRoOjUwNDtoZWlnaHQ6MjE4O21zby13cmFwLXN0eWxlOm5vbmU7di10ZXh0LWFuY2hvcjptaWRkbGUnCisgICAgZmlsbGVkPSJmIiBzdHJva2Vjb2xvcj0ibWFyb29uIiBzdHJva2V3ZWlnaHQ9Ii4zbW0iPgorICAgIDx2OnN0cm9rZSBjb2xvcjI9IiM3ZmZmZmYiIGpvaW5zdHlsZT0icm91bmQiLz4KKyAgIDwvdjpyZWN0Pjx2OnNoYXBlIGlkPSJfeDAwMDBfczIwNzYiIHR5cGU9IiNfeDAwMDBfdDY3IiBzdHlsZT0ncG9zaXRpb246YWJzb2x1dGU7CisgICAgbGVmdDo4MTMyO3RvcDo5MzY4O3dpZHRoOjEzOTtoZWlnaHQ6ODk1O21zby13cmFwLXN0eWxlOm5vbmU7CisgICAgdi10ZXh0LWFuY2hvcjptaWRkbGUnIGZpbGxjb2xvcj0iIzljZiI+CisgICAgPHY6ZmlsbCBjb2xvcjI9IiM2MzAiLz4KKyAgICA8djpzdHJva2Ugam9pbnN0eWxlPSJyb3VuZCIvPgorICAgPC92OnNoYXBlPjx2OnJlY3QgaWQ9Il94MDAwMF9zMjA3NyIgc3R5bGU9J3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6Mzk5NjsKKyAgICB0b3A6MTAzMzA7d2lkdGg6Njk4NjtoZWlnaHQ6MzMyMDt2LXRleHQtYW5jaG9yOm1pZGRsZS1jZW50ZXInIGZpbGxjb2xvcj0iI2ZmOSI+CisgICAgPHY6ZmlsbCBjb2xvcjI9IiMwMDYiLz4KKyAgICA8djpzdHJva2Ugam9pbnN0eWxlPSJyb3VuZCIvPgorICAgIDx2OnRleHRib3ggc3R5bGU9J21zby1yb3RhdGUtd2l0aC1zaGFwZTp0JyBpbnNldD0iMCwwLDAsMCI+CisgICAgIDwhW2lmICFtc29dPgorICAgICA8dGFibGUgY2VsbHBhZGRpbmc9MCBjZWxsc3BhY2luZz0wIHdpZHRoPSIxMDAlIj4KKyAgICAgIDx0cj4KKyAgICAgICA8dGQ+PCFbZW5kaWZdPgorICAgICAgIDxkaXY+CisgICAgICAgPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7CisgICAgICAgbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijtjb2xvcjpibGFjayc+PHNwYW4KKyAgICAgICBzdHlsZT0nbXNvLXNwYWNlcnVuOnllcyc+oDwvc3Bhbj48L3NwYW4+PHNwYW4gc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7CisgICAgICAgZm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToiQ291cmllciBOZXciOworICAgICAgIGNvbG9yOm5hdnk7bXNvLWFuc2ktbGFuZ3VhZ2U6RlInPiZsdDtleHRlbnNpb248bzpwPjwvbzpwPjwvc3Bhbj48L3A+CisgICAgICAgPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7CisgICAgICAgbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijtjb2xvcjpibGFjazttc28tYW5zaS1sYW5ndWFnZToKKyAgICAgICBGUic+PHNwYW4gc3R5bGU9J21zby1zcGFjZXJ1bjp5ZXMnPqCgoKCgoKCgIDwvc3Bhbj48L3NwYW4+PHNwYW4KKyAgICAgICBzdHlsZT0nZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OgorICAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eTttc28tYW5zaS1sYW5ndWFnZTpGUic+cG9pbnQ9PC9zcGFuPjxzcGFuCisgICAgICAgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToKKyAgICAgICAiQ291cmllciBOZXciO2NvbG9yOmdyZWVuO21zby1hbnNpLWxhbmd1YWdlOkZSJz4mcXVvdDtvcmcuZWNsaXBzZS51aS5jb21tYW5kcyZxdW90Ozwvc3Bhbj48c3BhbgorICAgICAgIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6CisgICAgICAgIkNvdXJpZXIgTmV3Ijtjb2xvcjpuYXZ5O21zby1hbnNpLWxhbmd1YWdlOkZSJz4mZ3Q7PG86cD48L286cD48L3NwYW4+PC9wPgorICAgICAgIDxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBzdHlsZT0nZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciOworICAgICAgIG1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7Y29sb3I6YmxhY2s7bXNvLWFuc2ktbGFuZ3VhZ2U6CisgICAgICAgRlInPjxzcGFuIHN0eWxlPSdtc28tc3BhY2VydW46eWVzJz6goKCgoCA8L3NwYW4+PC9zcGFuPjxzcGFuCisgICAgICAgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToKKyAgICAgICAiQ291cmllciBOZXciO2NvbG9yOm5hdnk7bXNvLWFuc2ktbGFuZ3VhZ2U6RlInPiZsdDtjb21tYW5kPG86cD48L286cD48L3NwYW4+PC9wPgorICAgICAgIDxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBzdHlsZT0nZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciOworICAgICAgIG1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7Y29sb3I6YmxhY2s7bXNvLWFuc2ktbGFuZ3VhZ2U6CisgICAgICAgRlInPjxzcGFuIHN0eWxlPSdtc28tc3BhY2VydW46eWVzJz6goKCgoKCgoKCgoCA8L3NwYW4+PC9zcGFuPjxzcGFuCisgICAgICAgbGFuZz1FTi1VUyBzdHlsZT0nZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OgorICAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eSc+Y2F0ZWdvcnlJZD08L3NwYW4+PHNwYW4gbGFuZz1FTi1VUworICAgICAgIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6CisgICAgICAgIkNvdXJpZXIgTmV3Ijtjb2xvcjpncmVlbic+JnF1b3Q7b3JnLmVjbGlwc2UucGFweXJ1cy5lZGl0b3IuY2F0ZWdvcnkmcXVvdDs8bzpwPjwvbzpwPjwvc3Bhbj48L3A+CisgICAgICAgPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIGxhbmc9RU4tVVMgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6CisgICAgICAgIkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToiQ291cmllciBOZXciO2NvbG9yOmJsYWNrJz48c3BhbgorICAgICAgIHN0eWxlPSdtc28tc3BhY2VydW46eWVzJz6goKCgoKCgoKCgoCA8L3NwYW4+PC9zcGFuPjxzcGFuIGxhbmc9RU4tVVMKKyAgICAgICBzdHlsZT0nZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OgorICAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eSc+ZGVzY3JpcHRpb249PC9zcGFuPjxzcGFuIGxhbmc9RU4tVVMKKyAgICAgICBzdHlsZT0nZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OgorICAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6Z3JlZW4nPiZxdW90O0dlbmVyYXRlIHRvIFJUTWFwcyBtaWRkbGV3YXJlJnF1b3Q7PG86cD48L286cD48L3NwYW4+PC9wPgorICAgICAgIDxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OgorICAgICAgICJDb3VyaWVyIE5ldyI7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijtjb2xvcjpibGFjayc+PHNwYW4KKyAgICAgICBzdHlsZT0nbXNvLXNwYWNlcnVuOnllcyc+oKCgoKCgoKCgoKAgPC9zcGFuPjwvc3Bhbj48c3BhbiBsYW5nPUVOLVVTCisgICAgICAgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToKKyAgICAgICAiQ291cmllciBOZXciO2NvbG9yOm5hdnknPmlkPTwvc3Bhbj48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdmb250LXNpemU6CisgICAgICAgMTAuMHB0O2ZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3IjsKKyAgICAgICBjb2xvcjpncmVlbic+JnF1b3Q7b3JnLmVjbGlwc2Uucm9ib3RNTC5nZW5lcmF0ZVJUTWFwc0NvbW1hbmQmcXVvdDs8bzpwPjwvbzpwPjwvc3Bhbj48L3A+CisgICAgICAgPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIGxhbmc9RU4tVVMgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6CisgICAgICAgIkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToiQ291cmllciBOZXciO2NvbG9yOmJsYWNrJz48c3BhbgorICAgICAgIHN0eWxlPSdtc28tc3BhY2VydW46eWVzJz6goKCgoKCgoKCgoCA8L3NwYW4+PC9zcGFuPjxzcGFuIGxhbmc9RU4tVVMKKyAgICAgICBzdHlsZT0nZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OgorICAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eSc+bmFtZT08L3NwYW4+PHNwYW4gbGFuZz1FTi1VUyBzdHlsZT0nZm9udC1zaXplOgorICAgICAgIDEwLjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7CisgICAgICAgY29sb3I6Z3JlZW4nPiZxdW90O0dlbmVyYXRlIHRvIFJUTWFwcyZxdW90Ozwvc3Bhbj48c3BhbiBsYW5nPUVOLVVTCisgICAgICAgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToKKyAgICAgICAiQ291cmllciBOZXciO2NvbG9yOm5hdnknPiZndDs8bzpwPjwvbzpwPjwvc3Bhbj48L3A+CisgICAgICAgPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIGxhbmc9RU4tVVMgc3R5bGU9J2ZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6CisgICAgICAgIkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToiQ291cmllciBOZXciO2NvbG9yOmJsYWNrJz48c3BhbgorICAgICAgIHN0eWxlPSdtc28tc3BhY2VydW46eWVzJz6goKCgoCA8L3NwYW4+PC9zcGFuPjxzcGFuIGxhbmc9RU4tVVMKKyAgICAgICBzdHlsZT0nZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OgorICAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eSc+Jmx0Oy9jb21tYW5kJmd0OzxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKyAgICAgICA8cCBjbGFzcz1Nc29Ob3JtYWw+PHNwYW4gbGFuZz1FTi1VUyBzdHlsZT0nZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseToKKyAgICAgICAiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7Y29sb3I6YmxhY2snPjxzcGFuCisgICAgICAgc3R5bGU9J21zby1zcGFjZXJ1bjp5ZXMnPqCgIDwvc3Bhbj48L3NwYW4+PHNwYW4gbGFuZz1FTi1VUworICAgICAgIHN0eWxlPSdmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6CisgICAgICAgIkNvdXJpZXIgTmV3Ijtjb2xvcjpuYXZ5Jz4mbHQ7L2V4dGVuc2lvbiZndDs8bzpwPjwvbzpwPjwvc3Bhbj48L3A+CisgICAgICAgPC9kaXY+CisgICAgICAgPCFbaWYgIW1zb10+PC90ZD4KKyAgICAgIDwvdHI+CisgICAgIDwvdGFibGU+CisgICAgIDwhW2VuZGlmXT48L3Y6dGV4dGJveD4KKyAgIDwvdjpyZWN0Pjwvdjpncm91cD48IVtlbmRpZl0tLT48IVtpZiAhdm1sXT48c3BhbiBzdHlsZT0nbXNvLWlnbm9yZTp2Z2xheW91dDsKKyAgcG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoxNztsZWZ0OjBweDttYXJnaW4tbGVmdDotM3B4O21hcmdpbi10b3A6MHB4OworICB3aWR0aDo0NzJweDtoZWlnaHQ6NjYxcHgnPjxpbWcgd2lkdGg9NDcyIGhlaWdodD02NjEKKyAgc3JjPSJQYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMzEuZ2lmIgorICB2OnNoYXBlcz0iX3gwMDAwX3MyMDg2IF94MDAwMF9zMjA3MyBfeDAwMDBfczIwNzUgX3gwMDAwX3MyMDc2IF94MDAwMF9zMjA3NyI+PC9zcGFuPjwhW2VuZGlmXT48IS0tW2lmIGd0ZSB2bWwgMV0+PHY6cmVjdAorICAgaWQ9Il94MDAwMF9zMjA3NCIgc3R5bGU9J3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0ZXh0LWFsaWduOmxlZnQ7CisgICBtYXJnaW4tbGVmdDoxMi4xcHQ7bWFyZ2luLXRvcDo4Mi42cHQ7d2lkdGg6ODcuODVwdDtoZWlnaHQ6MTYuNjVwdDt6LWluZGV4OjE2OworICAgbXNvLXdyYXAtc3R5bGU6bm9uZTttc28tcG9zaXRpb24taG9yaXpvbnRhbC1yZWxhdGl2ZTp0ZXh0OworICAgbXNvLXBvc2l0aW9uLXZlcnRpY2FsLXJlbGF0aXZlOnRleHQ7di10ZXh0LWFuY2hvcjptaWRkbGUnIGZpbGxlZD0iZiIKKyAgIHN0cm9rZWNvbG9yPSJtYXJvb24iIHN0cm9rZXdlaWdodD0iLjNtbSI+CisgICA8djpzdHJva2UgY29sb3IyPSIjN2ZmZmZmIiBqb2luc3R5bGU9InJvdW5kIi8+CisgIDwvdjpyZWN0PjwhW2VuZGlmXS0tPjwhW2lmICF2bWxdPjxzcGFuIHN0eWxlPSdtc28taWdub3JlOnZnbGF5b3V0O3Bvc2l0aW9uOgorICBhYnNvbHV0ZTt6LWluZGV4OjE2O2xlZnQ6MHB4O21hcmdpbi1sZWZ0OjE1cHg7bWFyZ2luLXRvcDoxMDlweDt3aWR0aDoxMTlweDsKKyAgaGVpZ2h0OjI0cHgnPjxpbWcgd2lkdGg9MTE5IGhlaWdodD0yNAorICBzcmM9IlBhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAzMi5naWYiCisgIHY6c2hhcGVzPSJfeDAwMDBfczIwNzQiPjwvc3Bhbj48IVtlbmRpZl0+PC9wPgorICA8cCBjbGFzcz1Db250ZW51ZGV0YWJsZWF1PjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorICA8cCBjbGFzcz1Db250ZW51ZGV0YWJsZWF1PjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorICA8cCBjbGFzcz1Db250ZW51ZGV0YWJsZWF1PjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorICA8cCBjbGFzcz1Db250ZW51ZGV0YWJsZWF1PjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorICA8cCBjbGFzcz1Db250ZW51ZGV0YWJsZWF1PjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorICA8cCBjbGFzcz1Db250ZW51ZGV0YWJsZWF1PjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorICA8cCBjbGFzcz1Db250ZW51ZGV0YWJsZWF1PjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorICA8cCBjbGFzcz1Db250ZW51ZGV0YWJsZWF1PjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorICA8cCBjbGFzcz1Db250ZW51ZGV0YWJsZWF1PjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorICA8cCBjbGFzcz1Db250ZW51ZGV0YWJsZWF1PjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorICA8cCBjbGFzcz1Db250ZW51ZGV0YWJsZWF1PjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorICA8L3RkPgorIDwvdHI+Cis8L3RhYmxlPgorCis8cCBjbGFzcz1Nc29Ob3JtYWw+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisKKzxkaXYgc3R5bGU9J21zby1lbGVtZW50OnBhcmEtYm9yZGVyLWRpdjtib3JkZXItdG9wOnNvbGlkIGJsYWNrIDEuMHB0OworYm9yZGVyLWxlZnQ6bm9uZTtib3JkZXItYm90dG9tOnNvbGlkIGJsYWNrIDEuMHB0O2JvcmRlci1yaWdodDpub25lO21zby1ib3JkZXItdG9wLWFsdDoKK3NvbGlkIGJsYWNrIC41cHQ7bXNvLWJvcmRlci1ib3R0b20tYWx0OnNvbGlkIGJsYWNrIC41cHQ7cGFkZGluZzoxLjBwdCAwY20gMS4wcHQgMGNtOworYmFja2dyb3VuZDojQ0NDQ0NDJz4KKworPGgxPjxhIG5hbWU9Il9fUmVmSGVhZGluZ19fMjE4Nl85NDk2OTUyNDYiPjwvYT48IVtpZiAhc3VwcG9ydExpc3RzXT48c3BhbgorbGFuZz1FTi1VUyBzdHlsZT0nbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6QXJpYWw7bXNvLWJpZGktZm9udC1mYW1pbHk6QXJpYWwnPjxzcGFuCitzdHlsZT0nbXNvLWxpc3Q6SWdub3JlJz41PHNwYW4gc3R5bGU9J2ZvbnQ6Ny4wcHQgIlRpbWVzIE5ldyBSb21hbiInPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOworPC9zcGFuPjwvc3Bhbj48L3NwYW4+PCFbZW5kaWZdPjxzcGFuIGxhbmc9RU4tVVM+QWRkIHRoZSBoYW5kbGVyIGV4dGVuc2lvbiBwb2ludDwvc3Bhbj48L2gxPgorCis8L2Rpdj4KKworPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIGxhbmc9RU4tVVM+QWRkIGFuIGV4dGVuc2lvbiBwb2ludCB0byBkZWZpbmUgdGhlIDxiPmhhbmRsZXI8L2I+CitvZiB0aGUgY29tbWFuZC4gVGhlIGhhbmRsZXIgaXMgdXNlZCB0byBkZWZpbmUgdGhlIGNvbW1hbmQgYmVoYXZpb3IuPC9zcGFuPjwvcD4KKworPHRhYmxlIGNsYXNzPU1zb05vcm1hbFRhYmxlIGJvcmRlcj0wIGNlbGxzcGFjaW5nPTAgY2VsbHBhZGRpbmc9MAorIHN0eWxlPSdtYXJnaW4tbGVmdDoyLjc1cHQ7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO21zby1wYWRkaW5nLWFsdDoyLjc1cHQgMi43NXB0IDIuNzVwdCAyLjc1cHQnPgorIDx0ciBzdHlsZT0nbXNvLXlmdGktaXJvdzowO21zby15ZnRpLWZpcnN0cm93Onllczttc28teWZ0aS1sYXN0cm93OnllczsKKyAgaGVpZ2h0OjI5NC43NXB0Jz4KKyAgPHRkIHdpZHRoPTEyNiB2YWxpZ249dG9wIHN0eWxlPSd3aWR0aDo5NC43NXB0O2JvcmRlcjpzb2xpZCBibGFjayAxLjBwdDsKKyAgYm9yZGVyLXJpZ2h0Om5vbmU7bXNvLWJvcmRlci10b3AtYWx0OnNvbGlkIGJsYWNrIC4yNXB0O21zby1ib3JkZXItbGVmdC1hbHQ6CisgIHNvbGlkIGJsYWNrIC4yNXB0O21zby1ib3JkZXItYm90dG9tLWFsdDpzb2xpZCBibGFjayAuMjVwdDtwYWRkaW5nOjIuNzVwdCAyLjc1cHQgMi43NXB0IDIuNzVwdDsKKyAgaGVpZ2h0OjI5NC43NXB0Jz4KKyAgPGRpdiBzdHlsZT0nbXNvLWVsZW1lbnQ6cGFyYS1ib3JkZXItZGl2O2JvcmRlcjpub25lO2JvcmRlci1ib3R0b206c29saWQgYmxhY2sgMS4wcHQ7CisgIG1zby1ib3JkZXItYm90dG9tLWFsdDpzb2xpZCBibGFjayAuMjVwdDtwYWRkaW5nOjBjbSAwY20gMi4wcHQgMGNtJz4KKyAgPHAgY2xhc3M9Q29udGVudWRldGFibGVhdSBhbGlnbj1jZW50ZXIgc3R5bGU9J3RleHQtYWxpZ246Y2VudGVyO2JvcmRlcjpub25lOworICBtc28tYm9yZGVyLWJvdHRvbS1hbHQ6c29saWQgYmxhY2sgLjI1cHQ7cGFkZGluZzowY207bXNvLXBhZGRpbmctYWx0OjBjbSAwY20gMi4wcHQgMGNtJz48Yj48c3BhbgorICBsYW5nPUVOLVVTPlN0ZXA8bzpwPjwvbzpwPjwvc3Bhbj48L2I+PC9wPgorICA8L2Rpdj4KKyAgPHAgY2xhc3M9Q29udGVudWRldGFibGVhdSBhbGlnbj1jZW50ZXIgc3R5bGU9J3RleHQtYWxpZ246Y2VudGVyJz48Yj48c3BhbgorICBsYW5nPUVOLVVTPkFkZCB0aGUgaGFuZGxlciBleHRlbnNpb24gcG9pbnQ8bzpwPjwvbzpwPjwvc3Bhbj48L2I+PC9wPgorICA8L3RkPgorICA8dGQgd2lkdGg9NTE2IHZhbGlnbj10b3Agc3R5bGU9J3dpZHRoOjM4Ny4wcHQ7Ym9yZGVyOnNvbGlkIGJsYWNrIDEuMHB0OworICBtc28tYm9yZGVyLWFsdDpzb2xpZCBibGFjayAuMjVwdDtwYWRkaW5nOjIuNzVwdCAyLjc1cHQgMi43NXB0IDIuNzVwdDsKKyAgaGVpZ2h0OjI5NC43NXB0Jz4KKyAgPHAgY2xhc3M9Q29udGVudWRldGFibGVhdT48IS0tW2lmIGd0ZSB2bWwgMV0+PHY6Z3JvdXAgaWQ9Il94MDAwMF9zMjA4NSIKKyAgIHN0eWxlPSdwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dGV4dC1hbGlnbjpsZWZ0O21hcmdpbi1sZWZ0OjE1LjlwdDsKKyAgIG1hcmdpbi10b3A6MDt3aWR0aDozNTYuMjVwdDtoZWlnaHQ6NGluO3otaW5kZXg6MTk7CisgICBtc28tcG9zaXRpb24taG9yaXpvbnRhbC1yZWxhdGl2ZTp0ZXh0O21zby1wb3NpdGlvbi12ZXJ0aWNhbC1yZWxhdGl2ZTp0ZXh0JworICAgY29vcmRvcmlnaW49IjM2ODcsMjc2MiIgY29vcmRzaXplPSI3MTI1LDU3NjAiPgorICAgPHY6c2hhcGUgaWQ9Il94MDAwMF9zMjA3OCIgdHlwZT0iI194MDAwMF90NzUiIHN0eWxlPSdwb3NpdGlvbjphYnNvbHV0ZTsKKyAgICBsZWZ0OjM2OTU7dG9wOjI3NjI7d2lkdGg6Njk3NDtoZWlnaHQ6MzQzNTttc28td3JhcC1kaXN0YW5jZS1sZWZ0OjA7CisgICAgbXNvLXdyYXAtZGlzdGFuY2UtcmlnaHQ6MDttc28tcG9zaXRpb24taG9yaXpvbnRhbDpjZW50ZXInIGZpbGxlZD0idCI+CisgICAgPHY6ZmlsbCBjb2xvcjI9ImJsYWNrIi8+CisgICAgPHY6aW1hZ2VkYXRhIHNyYz0iUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2ltYWdlMDMzLnBuZyIKKyAgICAgbzp0aXRsZT0iIi8+CisgICA8L3Y6c2hhcGU+PHY6cmVjdCBpZD0iX3gwMDAwX3MyMDc5IiBzdHlsZT0ncG9zaXRpb246YWJzb2x1dGU7bGVmdDozOTIzOworICAgIHRvcDo0NDkzO3dpZHRoOjE0MTQ7aGVpZ2h0OjM5Njttc28td3JhcC1zdHlsZTpub25lO3YtdGV4dC1hbmNob3I6bWlkZGxlJworICAgIGZpbGxlZD0iZiIgc3Ryb2tlY29sb3I9Im1hcm9vbiIgc3Ryb2tld2VpZ2h0PSIuM21tIj4KKyAgICA8djpzdHJva2UgY29sb3IyPSIjN2ZmZmZmIiBqb2luc3R5bGU9InJvdW5kIi8+CisgICA8L3Y6cmVjdD48djpzaGFwZSBpZD0iX3gwMDAwX3MyMDgxIiB0eXBlPSIjX3gwMDAwX3Q2NyIgc3R5bGU9J3Bvc2l0aW9uOmFic29sdXRlOworICAgIGxlZnQ6NzUwMTt0b3A6NjI2MDt3aWR0aDoyMjY7aGVpZ2h0OjQ4Mjttc28td3JhcC1zdHlsZTpub25lOworICAgIHYtdGV4dC1hbmNob3I6bWlkZGxlJyBmaWxsY29sb3I9IiM5Y2YiPgorICAgIDx2OmZpbGwgY29sb3IyPSIjNjMwIi8+CisgICAgPHY6c3Ryb2tlIGpvaW5zdHlsZT0icm91bmQiLz4KKyAgIDwvdjpzaGFwZT48djpyZWN0IGlkPSJfeDAwMDBfczIwODIiIHN0eWxlPSdwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjczNjI7CisgICAgdG9wOjU5OTI7d2lkdGg6NDkzO2hlaWdodDoyMDU7bXNvLXdyYXAtc3R5bGU6bm9uZTt2LXRleHQtYW5jaG9yOm1pZGRsZScKKyAgICBmaWxsZWQ9ImYiIHN0cm9rZWNvbG9yPSJtYXJvb24iIHN0cm9rZXdlaWdodD0iLjNtbSI+CisgICAgPHY6c3Ryb2tlIGNvbG9yMj0iIzdmZmZmZiIgam9pbnN0eWxlPSJyb3VuZCIvPgorICAgPC92OnJlY3Q+PHY6cmVjdCBpZD0iX3gwMDAwX3MyMDgzIiBzdHlsZT0ncG9zaXRpb246YWJzb2x1dGU7bGVmdDozNjg3O3RvcDo2OTM2OworICAgIHdpZHRoOjcxMjU7aGVpZ2h0OjE1ODY7di10ZXh0LWFuY2hvcjptaWRkbGUtY2VudGVyJyBmaWxsY29sb3I9IiNmZjkiPgorICAgIDx2OmZpbGwgY29sb3IyPSIjMDA2Ii8+CisgICAgPHY6c3Ryb2tlIGpvaW5zdHlsZT0icm91bmQiLz4KKyAgICA8djp0ZXh0Ym94IHN0eWxlPSdtc28tcm90YXRlLXdpdGgtc2hhcGU6dCcgaW5zZXQ9IjAsMCwwLDAiPgorICAgICA8IVtpZiAhbXNvXT4KKyAgICAgPHRhYmxlIGNlbGxwYWRkaW5nPTAgY2VsbHNwYWNpbmc9MCB3aWR0aD0iMTAwJSI+CisgICAgICA8dHI+CisgICAgICAgPHRkPjwhW2VuZGlmXT4KKyAgICAgICA8ZGl2PgorICAgICAgIDxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBzdHlsZT0nZm9udC1zaXplOjEwLjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciOworICAgICAgIG1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7Y29sb3I6YmxhY2snPjxzcGFuCisgICAgICAgc3R5bGU9J21zby1zcGFjZXJ1bjp5ZXMnPqA8L3NwYW4+PC9zcGFuPjxzcGFuIGxhbmc9RU4tVVMKKyAgICAgICBzdHlsZT0nZm9udC1zaXplOjguMHB0O2ZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6CisgICAgICAgIkNvdXJpZXIgTmV3Ijtjb2xvcjpuYXZ5Jz4mbHQ7ZXh0ZW5zaW9uPG86cD48L286cD48L3NwYW4+PC9wPgorICAgICAgIDxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6CisgICAgICAgIkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToiQ291cmllciBOZXciO2NvbG9yOmJsYWNrJz48c3BhbgorICAgICAgIHN0eWxlPSdtc28tc3BhY2VydW46eWVzJz6goKCgoKCgoCA8L3NwYW4+PC9zcGFuPjxzcGFuIGxhbmc9RU4tVVMKKyAgICAgICBzdHlsZT0nZm9udC1zaXplOjguMHB0O2ZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6CisgICAgICAgIkNvdXJpZXIgTmV3Ijtjb2xvcjpuYXZ5Jz5wb2ludD08L3NwYW4+PHNwYW4gbGFuZz1FTi1VUworICAgICAgIHN0eWxlPSdmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToKKyAgICAgICAiQ291cmllciBOZXciO2NvbG9yOmdyZWVuJz4mcXVvdDtvcmcuZWNsaXBzZS51aS5oYW5kbGVycyZxdW90Ozwvc3Bhbj48c3BhbgorICAgICAgIGxhbmc9RU4tVVMgc3R5bGU9J2ZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OgorICAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eSc+Jmd0OzxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKyAgICAgICA8cCBjbGFzcz1Nc29Ob3JtYWw+PHNwYW4gbGFuZz1FTi1VUyBzdHlsZT0nZm9udC1zaXplOjguMHB0O2ZvbnQtZmFtaWx5OgorICAgICAgICJDb3VyaWVyIE5ldyI7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijtjb2xvcjpibGFjayc+PHNwYW4KKyAgICAgICBzdHlsZT0nbXNvLXNwYWNlcnVuOnllcyc+oKCgoKAgPC9zcGFuPjwvc3Bhbj48c3BhbiBsYW5nPUVOLVVTCisgICAgICAgc3R5bGU9J2ZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OgorICAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eSc+Jmx0O2hhbmRsZXI8bzpwPjwvbzpwPjwvc3Bhbj48L3A+CisgICAgICAgPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIGxhbmc9RU4tVVMgc3R5bGU9J2ZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseToKKyAgICAgICAiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7Y29sb3I6YmxhY2snPjxzcGFuCisgICAgICAgc3R5bGU9J21zby1zcGFjZXJ1bjp5ZXMnPqCgoKCgoKCgoKCgIDwvc3Bhbj48L3NwYW4+PHNwYW4gbGFuZz1FTi1VUworICAgICAgIHN0eWxlPSdmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToKKyAgICAgICAiQ291cmllciBOZXciO2NvbG9yOm5hdnknPkNsYXNzPTwvc3Bhbj48c3BhbiBsYW5nPUVOLVVTCisgICAgICAgc3R5bGU9J2ZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OgorICAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6Z3JlZW4nPiZxdW90O29yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLnJ0bWFwcy51aS48bzpwPjwvbzpwPjwvc3Bhbj48L3A+CisgICAgICAgPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIGxhbmc9RU4tVVMgc3R5bGU9J2ZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseToKKyAgICAgICAiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7Y29sb3I6Z3JlZW4nPmhhbmRsZXIuQWNjZWxlb0dlbmVyYXRlUlRNYXBzQ29tbWFuZEhhbmRsZXImcXVvdDs8bzpwPjwvbzpwPjwvc3Bhbj48L3A+CisgICAgICAgPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIGxhbmc9RU4tVVMgc3R5bGU9J2ZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseToKKyAgICAgICAiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7Y29sb3I6YmxhY2snPjxzcGFuCisgICAgICAgc3R5bGU9J21zby1zcGFjZXJ1bjp5ZXMnPqCgoKCgoKCgoKCgIDwvc3Bhbj48L3NwYW4+PHNwYW4gbGFuZz1FTi1VUworICAgICAgIHN0eWxlPSdmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToKKyAgICAgICAiQ291cmllciBOZXciO2NvbG9yOm5hdnknPmNvbW1hbmRJZD08L3NwYW4+PHNwYW4gbGFuZz1FTi1VUworICAgICAgIHN0eWxlPSdmb250LXNpemU6OC4wcHQ7Zm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tZmFyZWFzdC1mb250LWZhbWlseToKKyAgICAgICAiQ291cmllciBOZXciO2NvbG9yOmdyZWVuJz4mcXVvdDtvcmcuZWNsaXBzZS5yb2JvdE1MLmdlbmVyYXRlUlRNYXBzQ29tbWFuZCZxdW90Ozwvc3Bhbj48c3BhbgorICAgICAgIGxhbmc9RU4tVVMgc3R5bGU9J2ZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OgorICAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eSc+Jmd0OzxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKyAgICAgICA8cCBjbGFzcz1Nc29Ob3JtYWw+PHNwYW4gbGFuZz1FTi1VUyBzdHlsZT0nZm9udC1zaXplOjguMHB0O2ZvbnQtZmFtaWx5OgorICAgICAgICJDb3VyaWVyIE5ldyI7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijtjb2xvcjpibGFjayc+PHNwYW4KKyAgICAgICBzdHlsZT0nbXNvLXNwYWNlcnVuOnllcyc+oKCgoKAgPC9zcGFuPjwvc3Bhbj48c3BhbiBsYW5nPUVOLVVTCisgICAgICAgc3R5bGU9J2ZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OgorICAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eSc+Jmx0Oy9oYW5kbGVyJmd0OzxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKyAgICAgICA8cCBjbGFzcz1Nc29Ob3JtYWw+PHNwYW4gbGFuZz1FTi1VUyBzdHlsZT0nZm9udC1zaXplOjguMHB0O2ZvbnQtZmFtaWx5OgorICAgICAgICJDb3VyaWVyIE5ldyI7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijtjb2xvcjpibGFjayc+PHNwYW4KKyAgICAgICBzdHlsZT0nbXNvLXNwYWNlcnVuOnllcyc+oKAgPC9zcGFuPjwvc3Bhbj48c3BhbiBsYW5nPUVOLVVTCisgICAgICAgc3R5bGU9J2ZvbnQtc2l6ZTo4LjBwdDtmb250LWZhbWlseToiQ291cmllciBOZXciO21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OgorICAgICAgICJDb3VyaWVyIE5ldyI7Y29sb3I6bmF2eSc+Jmx0Oy9leHRlbnNpb24mZ3Q7PG86cD48L286cD48L3NwYW4+PC9wPgorICAgICAgIDwvZGl2PgorICAgICAgIDwhW2lmICFtc29dPjwvdGQ+CisgICAgICA8L3RyPgorICAgICA8L3RhYmxlPgorICAgICA8IVtlbmRpZl0+PC92OnRleHRib3g+CisgICA8L3Y6cmVjdD48L3Y6Z3JvdXA+PCFbZW5kaWZdLS0+PCFbaWYgIXZtbF0+PHNwYW4gc3R5bGU9J21zby1pZ25vcmU6dmdsYXlvdXQ7CisgIHBvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6MTk7bGVmdDowcHg7bWFyZ2luLWxlZnQ6MjBweDttYXJnaW4tdG9wOjBweDsKKyAgd2lkdGg6NDgxcHg7aGVpZ2h0OjM4N3B4Jz48aW1nIHdpZHRoPTQ4MSBoZWlnaHQ9Mzg3CisgIHNyYz0iUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2ltYWdlMDM0LmdpZiIKKyAgdjpzaGFwZXM9Il94MDAwMF9zMjA4NSBfeDAwMDBfczIwNzggX3gwMDAwX3MyMDc5IF94MDAwMF9zMjA4MSBfeDAwMDBfczIwODIgX3gwMDAwX3MyMDgzIj48L3NwYW4+PCFbZW5kaWZdPjwhLS1baWYgZ3RlIHZtbCAxXT48djpyZWN0CisgICBpZD0iX3gwMDAwX3MyMDgwIiBzdHlsZT0ncG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RleHQtYWxpZ246bGVmdDsKKyAgIG1hcmdpbi1sZWZ0OjE3NS41cHQ7bWFyZ2luLXRvcDo1Mi44cHQ7d2lkdGg6MTU1LjlwdDtoZWlnaHQ6MTIuM3B0O3otaW5kZXg6MTg7CisgICBtc28td3JhcC1zdHlsZTpub25lO21zby1wb3NpdGlvbi1ob3Jpem9udGFsLXJlbGF0aXZlOnRleHQ7CisgICBtc28tcG9zaXRpb24tdmVydGljYWwtcmVsYXRpdmU6dGV4dDt2LXRleHQtYW5jaG9yOm1pZGRsZScgZmlsbGVkPSJmIgorICAgc3Ryb2tlY29sb3I9Im1hcm9vbiIgc3Ryb2tld2VpZ2h0PSIuM21tIj4KKyAgIDx2OnN0cm9rZSBjb2xvcjI9IiM3ZmZmZmYiIGpvaW5zdHlsZT0icm91bmQiLz4KKyAgPC92OnJlY3Q+PCFbZW5kaWZdLS0+PCFbaWYgIXZtbF0+PHNwYW4gc3R5bGU9J21zby1pZ25vcmU6dmdsYXlvdXQ7cG9zaXRpb246CisgIGFic29sdXRlO3otaW5kZXg6MTg7bGVmdDowcHg7bWFyZ2luLWxlZnQ6MjMzcHg7bWFyZ2luLXRvcDo2OXB4O3dpZHRoOjIxMHB4OworICBoZWlnaHQ6MTlweCc+PGltZyB3aWR0aD0yMTAgaGVpZ2h0PTE5CisgIHNyYz0iUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2ltYWdlMDM1LmdpZiIKKyAgdjpzaGFwZXM9Il94MDAwMF9zMjA4MCI+PC9zcGFuPjwhW2VuZGlmXT48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDxwIGNsYXNzPUNvbnRlbnVkZXRhYmxlYXU+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisgIDwvdGQ+CisgPC90cj4KKzwvdGFibGU+CisKKzxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4KKworPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIGxhbmc9RU4tVVM+WW91IGNhbiBmaW5kIGFuIGV4YW1wbGUgb2YgYSBnZW5lcmF0aW9uCitjb21tYW5kIGhhbmRsZXIgY2xhc3MgaW4gPC9zcGFuPjxzcGFuIGxhbmc9RU4tVVMgc3R5bGU9J21zby1iaWRpLWZvbnQtc2l6ZToKKzExLjBwdDtjb2xvcjpibGFjayc+kzwvc3Bhbj48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdtc28tYmlkaS1mb250LXNpemU6MTEuMHB0OworbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3Ijttc28tYmlkaS1mb250LWZhbWlseToiQ291cmllciBOZXciOworY29sb3I6YmxhY2snPm9yZy5lY2xpcHNlLnByb3RldXMuZ2VuZXJhdG9ycy5hY2NlbGVvLnJ0bWFwcy51aS5oYW5kbGVyLkFjY2VsZW9HZW5lcmF0ZVJUTWFwc0NvbW1hbmRIYW5kbGVylAorcGFja2FnZS4gW1Byb3RldXMgd3AyIHN2biByZXBvc2l0b3J5OiA8L3NwYW4+PHNwYW4gbGFuZz1FTi1VUz48YQoraHJlZj0iaHR0cHM6Ly9kYXNzYXVsdDMuZGRvLm5ldC9zdm4vcHJvdGV1cy13cDIvdHJ1bmsvUzIuMi44LVJUTWFwcy1jb25uZWN0b3JzL3J0bWFwcy1nZW5lcmF0b3Ivb3JnLmVjbGlwc2UucHJvdGV1cy5nZW5lcmF0b3JzLmFjY2VsZW8ucnRtYXBzLnVpIj5odHRwczovL2Rhc3NhdWx0My5kZG8ubmV0L3N2bi9wcm90ZXVzLXdwMi90cnVuay9TMi4yLjgtUlRNYXBzLWNvbm5lY3RvcnMvcnRtYXBzLWdlbmVyYXRvci9vcmcuZWNsaXBzZS5wcm90ZXVzLmdlbmVyYXRvcnMuYWNjZWxlby5ydG1hcHMudWk8L2E+PC9zcGFuPjxzcGFuCitsYW5nPUVOLVVTIHN0eWxlPSdtc28tYmlkaS1mb250LXNpemU6MTEuMHB0O21zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJDb3VyaWVyIE5ldyI7Cittc28tYmlkaS1mb250LWZhbWlseToiQ291cmllciBOZXciO2NvbG9yOmJsYWNrJz5dIDxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKworPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorCis8L2Rpdj4KKworPC9ib2R5PgorCis8L2h0bWw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2h0bWwvUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2NvbG9yc2NoZW1lbWFwcGluZy54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2h0bWwvUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2NvbG9yc2NoZW1lbWFwcGluZy54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmEwMDY5YwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvY29sb3JzY2hlbWVtYXBwaW5nLnhtbApAQCAtMCwwICsxLDIgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04IiBzdGFuZGFsb25lPSJ5ZXMiPz4KKzxhOmNsck1hcCB4bWxuczphPSJodHRwOi8vc2NoZW1hcy5vcGVueG1sZm9ybWF0cy5vcmcvZHJhd2luZ21sLzIwMDYvbWFpbiIgYmcxPSJsdDEiIHR4MT0iZGsxIiBiZzI9Imx0MiIgdHgyPSJkazIiIGFjY2VudDE9ImFjY2VudDEiIGFjY2VudDI9ImFjY2VudDIiIGFjY2VudDM9ImFjY2VudDMiIGFjY2VudDQ9ImFjY2VudDQiIGFjY2VudDU9ImFjY2VudDUiIGFjY2VudDY9ImFjY2VudDYiIGhsaW5rPSJobGluayIgZm9sSGxpbms9ImZvbEhsaW5rIi8+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9maWxlbGlzdC54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2h0bWwvUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL2ZpbGVsaXN0LnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MGU2MmYyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9maWxlbGlzdC54bWwKQEAgLTAsMCArMSw0MyBAQAorPHhtbCB4bWxuczpvPSJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOm9mZmljZTpvZmZpY2UiPgorIDxvOk1haW5GaWxlIEhSZWY9Ii4uL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbi5odG1sIi8+CisgPG86RmlsZSBIUmVmPSJ0aGVtZWRhdGEudGhteCIvPgorIDxvOkZpbGUgSFJlZj0iY29sb3JzY2hlbWVtYXBwaW5nLnhtbCIvPgorIDxvOkZpbGUgSFJlZj0iaW1hZ2UwMDEucG5nIi8+CisgPG86RmlsZSBIUmVmPSJpbWFnZTAwMi5qcGciLz4KKyA8bzpGaWxlIEhSZWY9ImltYWdlMDAzLmpwZyIvPgorIDxvOkZpbGUgSFJlZj0iaW1hZ2UwMDQuanBnIi8+CisgPG86RmlsZSBIUmVmPSJpbWFnZTAwNS5wbmciLz4KKyA8bzpGaWxlIEhSZWY9ImltYWdlMDA2LmpwZyIvPgorIDxvOkZpbGUgSFJlZj0iaW1hZ2UwMDcucG5nIi8+CisgPG86RmlsZSBIUmVmPSJpbWFnZTAwOC53bXoiLz4KKyA8bzpGaWxlIEhSZWY9ImltYWdlMDA5LndteiIvPgorIDxvOkZpbGUgSFJlZj0iaW1hZ2UwMTAuanBnIi8+CisgPG86RmlsZSBIUmVmPSJpbWFnZTAxMS5naWYiLz4KKyA8bzpGaWxlIEhSZWY9ImltYWdlMDEyLnBuZyIvPgorIDxvOkZpbGUgSFJlZj0iaW1hZ2UwMTMuanBnIi8+CisgPG86RmlsZSBIUmVmPSJpbWFnZTAxNC5wbmciLz4KKyA8bzpGaWxlIEhSZWY9ImltYWdlMDE1LmpwZyIvPgorIDxvOkZpbGUgSFJlZj0iaW1hZ2UwMTYuZ2lmIi8+CisgPG86RmlsZSBIUmVmPSJpbWFnZTAxNy5wbmciLz4KKyA8bzpGaWxlIEhSZWY9ImltYWdlMDE4LndteiIvPgorIDxvOkZpbGUgSFJlZj0iaW1hZ2UwMTkuZ2lmIi8+CisgPG86RmlsZSBIUmVmPSJpbWFnZTAyMC5wbmciLz4KKyA8bzpGaWxlIEhSZWY9ImltYWdlMDIxLmpwZyIvPgorIDxvOkZpbGUgSFJlZj0iaW1hZ2UwMjIucG5nIi8+CisgPG86RmlsZSBIUmVmPSJpbWFnZTAyMy5wbmciLz4KKyA8bzpGaWxlIEhSZWY9ImltYWdlMDI0LmdpZiIvPgorIDxvOkZpbGUgSFJlZj0iaW1hZ2UwMjUud216Ii8+CisgPG86RmlsZSBIUmVmPSJpbWFnZTAyNi5naWYiLz4KKyA8bzpGaWxlIEhSZWY9ImltYWdlMDI3LmdpZiIvPgorIDxvOkZpbGUgSFJlZj0iaW1hZ2UwMjgucG5nIi8+CisgPG86RmlsZSBIUmVmPSJpbWFnZTAyOS5naWYiLz4KKyA8bzpGaWxlIEhSZWY9ImltYWdlMDMwLnBuZyIvPgorIDxvOkZpbGUgSFJlZj0iaW1hZ2UwMzEuZ2lmIi8+CisgPG86RmlsZSBIUmVmPSJpbWFnZTAzMi5naWYiLz4KKyA8bzpGaWxlIEhSZWY9ImltYWdlMDMzLnBuZyIvPgorIDxvOkZpbGUgSFJlZj0iaW1hZ2UwMzQuZ2lmIi8+CisgPG86RmlsZSBIUmVmPSJpbWFnZTAzNS5naWYiLz4KKyA8bzpGaWxlIEhSZWY9ImhlYWRlci5odG1sIi8+CisgPG86RmlsZSBIUmVmPSJpbWFnZTAzNi5wbmciLz4KKyA8bzpGaWxlIEhSZWY9ImZpbGVsaXN0LnhtbCIvPgorPC94bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9oZWFkZXIuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaGVhZGVyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTMwZDRhYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaGVhZGVyLmh0bWwKQEAgLTAsMCArMSwxNTEgQEAKKzxodG1sIHhtbG5zOnY9InVybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206dm1sIgoreG1sbnM6bz0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6b2ZmaWNlIgoreG1sbnM6dz0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIKK3htbG5zOm09Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vb2ZmaWNlLzIwMDQvMTIvb21tbCIKK3htbG5zPSJodHRwOi8vd3d3LnczLm9yZy9UUi9SRUMtaHRtbDQwIj4KKworPGhlYWQ+Cis8bWV0YSBodHRwLWVxdWl2PUNvbnRlbnQtVHlwZSBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9d2luZG93cy0xMjUyIj4KKzxtZXRhIG5hbWU9UHJvZ0lkIGNvbnRlbnQ9V29yZC5Eb2N1bWVudD4KKzxtZXRhIG5hbWU9R2VuZXJhdG9yIGNvbnRlbnQ9Ik1pY3Jvc29mdCBXb3JkIDEyIj4KKzxtZXRhIG5hbWU9T3JpZ2luYXRvciBjb250ZW50PSJNaWNyb3NvZnQgV29yZCAxMiI+Cis8bGluayBpZD1NYWluLUZpbGUgcmVsPU1haW4tRmlsZQoraHJlZj0iLi4vUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uLmh0bWwiPgorPCEtLVtpZiBndGUgbXNvIDldPjx4bWw+CisgPG86c2hhcGVkZWZhdWx0cyB2OmV4dD0iZWRpdCIgc3BpZG1heD0iMzA3NCI+CisgIDxvOmNvbG9ybWVudSB2OmV4dD0iZWRpdCIgZmlsbGNvbG9yPSJub25lIFs0XSIgc3Ryb2tlY29sb3I9Im5vbmUgWzFdIgorICAgc2hhZG93Y29sb3I9Im5vbmUgWzJdIi8+CisgPC9vOnNoYXBlZGVmYXVsdHM+PC94bWw+PCFbZW5kaWZdLS0+PCEtLVtpZiBndGUgbXNvIDldPjx4bWw+CisgPG86c2hhcGVsYXlvdXQgdjpleHQ9ImVkaXQiPgorICA8bzppZG1hcCB2OmV4dD0iZWRpdCIgZGF0YT0iMSIvPgorIDwvbzpzaGFwZWxheW91dD48L3htbD48IVtlbmRpZl0tLT4KKzwvaGVhZD4KKworPGJvZHkgbGFuZz1GUiBsaW5rPWJsdWUgdmxpbms9bWFyb29uPgorCis8ZGl2IHN0eWxlPSdtc28tZWxlbWVudDpmb290bm90ZS1zZXBhcmF0b3InIGlkPWZzPgorCis8cCBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21hcmdpbi1ib3R0b206MGNtO21hcmdpbi1ib3R0b206LjAwMDFwdCc+PHNwYW4KK2xhbmc9RU4tVVM+PHNwYW4gc3R5bGU9J21zby1zcGVjaWFsLWNoYXJhY3Rlcjpmb290bm90ZS1zZXBhcmF0b3InPjwhW2lmICFzdXBwb3J0Rm9vdG5vdGVzXT4KKworPGhyIGFsaWduPWxlZnQgc2l6ZT0xIHdpZHRoPSIzMyUiPgorCis8IVtlbmRpZl0+PC9zcGFuPjwvc3Bhbj48L3A+CisKKzwvZGl2PgorCis8ZGl2IHN0eWxlPSdtc28tZWxlbWVudDpmb290bm90ZS1jb250aW51YXRpb24tc2VwYXJhdG9yJyBpZD1mY3M+CisKKzxwIGNsYXNzPU1zb05vcm1hbCBzdHlsZT0nbWFyZ2luLWJvdHRvbTowY207bWFyZ2luLWJvdHRvbTouMDAwMXB0Jz48c3BhbgorbGFuZz1FTi1VUz48c3BhbiBzdHlsZT0nbXNvLXNwZWNpYWwtY2hhcmFjdGVyOmZvb3Rub3RlLWNvbnRpbnVhdGlvbi1zZXBhcmF0b3InPjwhW2lmICFzdXBwb3J0Rm9vdG5vdGVzXT4KKworPGhyIGFsaWduPWxlZnQgc2l6ZT0xPgorCis8IVtlbmRpZl0+PC9zcGFuPjwvc3Bhbj48L3A+CisKKzwvZGl2PgorCis8ZGl2IHN0eWxlPSdtc28tZWxlbWVudDplbmRub3RlLXNlcGFyYXRvcicgaWQ9ZXM+CisKKzxwIGNsYXNzPU1zb05vcm1hbCBzdHlsZT0nbWFyZ2luLWJvdHRvbTowY207bWFyZ2luLWJvdHRvbTouMDAwMXB0Jz48c3BhbgorbGFuZz1FTi1VUz48c3BhbiBzdHlsZT0nbXNvLXNwZWNpYWwtY2hhcmFjdGVyOmZvb3Rub3RlLXNlcGFyYXRvcic+PCFbaWYgIXN1cHBvcnRGb290bm90ZXNdPgorCis8aHIgYWxpZ249bGVmdCBzaXplPTEgd2lkdGg9IjMzJSI+CisKKzwhW2VuZGlmXT48L3NwYW4+PC9zcGFuPjwvcD4KKworPC9kaXY+CisKKzxkaXYgc3R5bGU9J21zby1lbGVtZW50OmVuZG5vdGUtY29udGludWF0aW9uLXNlcGFyYXRvcicgaWQ9ZWNzPgorCis8cCBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21hcmdpbi1ib3R0b206MGNtO21hcmdpbi1ib3R0b206LjAwMDFwdCc+PHNwYW4KK2xhbmc9RU4tVVM+PHNwYW4gc3R5bGU9J21zby1zcGVjaWFsLWNoYXJhY3Rlcjpmb290bm90ZS1jb250aW51YXRpb24tc2VwYXJhdG9yJz48IVtpZiAhc3VwcG9ydEZvb3Rub3Rlc10+CisKKzxociBhbGlnbj1sZWZ0IHNpemU9MT4KKworPCFbZW5kaWZdPjwvc3Bhbj48L3NwYW4+PC9wPgorCis8L2Rpdj4KKworPGRpdiBzdHlsZT0nbXNvLWVsZW1lbnQ6aGVhZGVyJyBpZD1oMT4KKworPGRpdiBzdHlsZT0nbXNvLWVsZW1lbnQ6cGFyYS1ib3JkZXItZGl2O2JvcmRlcjpub25lO2JvcmRlci1ib3R0b206c29saWQgYmxhY2sgMS4wcHQ7Cittc28tYm9yZGVyLWJvdHRvbS1hbHQ6c29saWQgYmxhY2sgLjVwdDtwYWRkaW5nOjBjbSAwY20gMS4wcHQgMGNtJz4KKworPHAgY2xhc3M9TXNvTm9ybWFsIHN0eWxlPSdtYXJnaW4tdG9wOjYuMHB0O3RhYi1zdG9wczozMy45cHQgY2VudGVyIDE5MS40cHQgbGVmdCAyNzcuNXB0IDM0Ny4zcHQ7Citib3JkZXI6bm9uZTttc28tYm9yZGVyLWJvdHRvbS1hbHQ6c29saWQgYmxhY2sgLjVwdDtwYWRkaW5nOjBjbTttc28tcGFkZGluZy1hbHQ6CiswY20gMGNtIDEuMHB0IDBjbSc+PHNwYW4gbGFuZz1FTi1VUz48IS0tW2lmIGd0ZSB2bWwgMV0+PHY6c2hhcGV0eXBlIGlkPSJfeDAwMDBfdDc1IgorIGNvb3Jkc2l6ZT0iMjE2MDAsMjE2MDAiIG86c3B0PSI3NSIgbzpwcmVmZXJyZWxhdGl2ZT0idCIgcGF0aD0ibUA0QDVsQDRAMTFAOUAxMUA5QDV4ZSIKKyBmaWxsZWQ9ImYiIHN0cm9rZWQ9ImYiPgorIDx2OnN0cm9rZSBqb2luc3R5bGU9Im1pdGVyIi8+CisgPHY6Zm9ybXVsYXM+CisgIDx2OmYgZXFuPSJpZiBsaW5lRHJhd24gcGl4ZWxMaW5lV2lkdGggMCIvPgorICA8djpmIGVxbj0ic3VtIEAwIDEgMCIvPgorICA8djpmIGVxbj0ic3VtIDAgMCBAMSIvPgorICA8djpmIGVxbj0icHJvZCBAMiAxIDIiLz4KKyAgPHY6ZiBlcW49InByb2QgQDMgMjE2MDAgcGl4ZWxXaWR0aCIvPgorICA8djpmIGVxbj0icHJvZCBAMyAyMTYwMCBwaXhlbEhlaWdodCIvPgorICA8djpmIGVxbj0ic3VtIEAwIDAgMSIvPgorICA8djpmIGVxbj0icHJvZCBANiAxIDIiLz4KKyAgPHY6ZiBlcW49InByb2QgQDcgMjE2MDAgcGl4ZWxXaWR0aCIvPgorICA8djpmIGVxbj0ic3VtIEA4IDIxNjAwIDAiLz4KKyAgPHY6ZiBlcW49InByb2QgQDcgMjE2MDAgcGl4ZWxIZWlnaHQiLz4KKyAgPHY6ZiBlcW49InN1bSBAMTAgMjE2MDAgMCIvPgorIDwvdjpmb3JtdWxhcz4KKyA8djpwYXRoIG86ZXh0cnVzaW9ub2s9ImYiIGdyYWRpZW50c2hhcGVvaz0idCIgbzpjb25uZWN0dHlwZT0icmVjdCIvPgorIDxvOmxvY2sgdjpleHQ9ImVkaXQiIGFzcGVjdHJhdGlvPSJ0Ii8+Cis8L3Y6c2hhcGV0eXBlPjx2OnNoYXBlIGlkPSJfeDAwMDBfczEwMjUiIHR5cGU9IiNfeDAwMDBfdDc1IiBzdHlsZT0ncG9zaXRpb246YWJzb2x1dGU7CisgbGVmdDowO3RleHQtYWxpZ246bGVmdDttYXJnaW4tbGVmdDoyLjA1cHQ7bWFyZ2luLXRvcDowO3dpZHRoOjExLjk1cHQ7aGVpZ2h0OjExLjk1cHQ7Cisgei1pbmRleDoxO21zby13cmFwLWRpc3RhbmNlLWxlZnQ6MDttc28td3JhcC1kaXN0YW5jZS1yaWdodDowJyBmaWxsZWQ9InQiPgorIDx2OmZpbGwgY29sb3IyPSJibGFjayIvPgorIDx2OmltYWdlZGF0YSBzcmM9ImltYWdlMDM2LnBuZyIgbzp0aXRsZT0iIi8+CisgPHc6d3JhcCB0eXBlPSJ0b3BBbmRCb3R0b20iLz4KKzwvdjpzaGFwZT48IVtlbmRpZl0tLT48L3NwYW4+PGIgc3R5bGU9J21zby1iaWRpLWZvbnQtd2VpZ2h0Om5vcm1hbCc+PHNwYW4KK2xhbmc9RU4tR0Igc3R5bGU9J21zby1hbnNpLWxhbmd1YWdlOkVOLUdCJz48c3BhbiBzdHlsZT0nbXNvLXRhYi1jb3VudDoxJz6goKCgoKCgoKCgIDwvc3Bhbj5Ib3cKK3RvIGNvbnRyaWJ1dGUgdG8gdGhlIGNvZGUgZ2VuZXJhdGlvbiBtZW51PHNwYW4gc3R5bGU9J21zby10YWItY291bnQ6NCc+oKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoCA8L3NwYW4+VmVyc2lvbgorMC4xPG86cD48L286cD48L3NwYW4+PC9iPjwvcD4KKworPC9kaXY+CisKKzwvZGl2PgorCis8ZGl2IHN0eWxlPSdtc28tZWxlbWVudDpmb290ZXInIGlkPWVmMT4KKworPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIGxhbmc9RU4tVVM+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPgorCis8L2Rpdj4KKworPGRpdiBzdHlsZT0nbXNvLWVsZW1lbnQ6Zm9vdGVyJyBpZD1mMT4KKworPHAgY2xhc3M9TXNvTm9ybWFsIHN0eWxlPSd0YWItc3RvcHM6MTUuMGNtJz48aSBzdHlsZT0nbXNvLWJpZGktZm9udC1zdHlsZTpub3JtYWwnPjxzcGFuCitzdHlsZT0nZm9udC1zaXplOjkuMHB0O21zby1iaWRpLWZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6U3ltYm9sO21zby1hbnNpLWxhbmd1YWdlOgorIzAwRkYnPuM8L3NwYW4+PC9pPjxpIHN0eWxlPSdtc28tYmlkaS1mb250LXN0eWxlOm5vcm1hbCc+PHNwYW4KK3N0eWxlPSdmb250LXNpemU6OS4wcHQ7bXNvLWJpZGktZm9udC1zaXplOjEwLjBwdDttc28tYW5zaS1sYW5ndWFnZTojMDBGRic+IDIwMTEKK1RoZSBQYXB5cnVzIENvbnNvcnRpdW0gPHNwYW4gc3R5bGU9J21zby10YWItY291bnQ6MSc+oKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKAgPC9zcGFuPjwvc3Bhbj48L2k+PCEtLVtpZiBzdXBwb3J0RmllbGRzXT48c3Bhbgorc3R5bGU9J21zby1hbnNpLWxhbmd1YWdlOiMwMEZGJz48c3BhbiBzdHlsZT0nbXNvLWVsZW1lbnQ6ZmllbGQtYmVnaW4nPjwvc3Bhbj48c3Bhbgorc3R5bGU9J21zby1zcGFjZXJ1bjp5ZXMnPqA8L3NwYW4+UEFHRSA8c3BhbiBzdHlsZT0nbXNvLWVsZW1lbnQ6ZmllbGQtc2VwYXJhdG9yJz48L3NwYW4+PC9zcGFuPjwhW2VuZGlmXS0tPjxzcGFuCitzdHlsZT0nbXNvLWFuc2ktbGFuZ3VhZ2U6IzAwRkYnPjxzcGFuIHN0eWxlPSdtc28tbm8tcHJvb2Y6eWVzJz4xNTwvc3Bhbj48L3NwYW4+PCEtLVtpZiBzdXBwb3J0RmllbGRzXT48c3Bhbgorc3R5bGU9J21zby1hbnNpLWxhbmd1YWdlOiMwMEZGJz48c3BhbiBzdHlsZT0nbXNvLWVsZW1lbnQ6ZmllbGQtZW5kJz48L3NwYW4+PC9zcGFuPjwhW2VuZGlmXS0tPjxzcGFuCitzdHlsZT0nbXNvLWFuc2ktbGFuZ3VhZ2U6IzAwRkYnPi88L3NwYW4+PCEtLVtpZiBzdXBwb3J0RmllbGRzXT48c3Bhbgorc3R5bGU9J21zby1hbnNpLWxhbmd1YWdlOiMwMEZGJz48c3BhbiBzdHlsZT0nbXNvLWVsZW1lbnQ6ZmllbGQtYmVnaW4nPjwvc3Bhbj4KK05VTVBBR0VTIFwqQXJhYmljIDxzcGFuIHN0eWxlPSdtc28tZWxlbWVudDpmaWVsZC1zZXBhcmF0b3InPjwvc3Bhbj48L3NwYW4+PCFbZW5kaWZdLS0+PHNwYW4KK3N0eWxlPSdtc28tYW5zaS1sYW5ndWFnZTojMDBGRic+PHNwYW4gc3R5bGU9J21zby1uby1wcm9vZjp5ZXMnPjE1PC9zcGFuPjwvc3Bhbj48IS0tW2lmIHN1cHBvcnRGaWVsZHNdPjxzcGFuCitzdHlsZT0nbXNvLWFuc2ktbGFuZ3VhZ2U6IzAwRkYnPjxzcGFuIHN0eWxlPSdtc28tZWxlbWVudDpmaWVsZC1lbmQnPjwvc3Bhbj48L3NwYW4+PCFbZW5kaWZdLS0+PC9wPgorCis8L2Rpdj4KKworPGRpdiBzdHlsZT0nbXNvLWVsZW1lbnQ6aGVhZGVyJyBpZD1maDE+CisKKzxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4KKworPC9kaXY+CisKKzxkaXYgc3R5bGU9J21zby1lbGVtZW50OmZvb3RlcicgaWQ9ZmYxPgorCis8cCBjbGFzcz1Nc29Ob3JtYWw+PHNwYW4gbGFuZz1FTi1VUz48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+CisKKzwvZGl2PgorCis8L2JvZHk+CisKKzwvaHRtbD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMDEucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAwMS5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2UwMmJjNQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMDEucG5nCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMDIuanBnIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAwMi5qcGcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2MwYmE5OQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMDIuanBnCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMDMuanBnIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAwMy5qcGcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDMyYjc0OAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMDMuanBnCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMDQuanBnIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAwNC5qcGcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWIyOTJiYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMDQuanBnCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMDUucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAwNS5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjVlYjA1NQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMDUucG5nCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMDYuanBnIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAwNi5qcGcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjFiY2ZhNAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMDYuanBnCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMDcucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAwNy5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTY3NDg3NwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMDcucG5nCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMDgud216IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAwOC53bXoKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWVjN2U5OAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMDgud216CkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMDkud216IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAwOS53bXoKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWIyOTk5ZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMDkud216CkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMTAuanBnIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAxMC5qcGcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzVjM2FiNgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMTAuanBnCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMTEuZ2lmIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAxMS5naWYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGE4NGMyYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMTEuZ2lmCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMTIucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAxMi5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODQ5MDRjMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMTIucG5nCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMTMuanBnIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAxMy5qcGcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTIwODAzOAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMTMuanBnCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMTQucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAxNC5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2U4NmQ0ZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMTQucG5nCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMTUuanBnIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAxNS5qcGcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzJmYzFkMQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMTUuanBnCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMTYuZ2lmIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAxNi5naWYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmU0YWU0MgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMTYuZ2lmCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMTcucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAxNy5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWJjYTBjZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMTcucG5nCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMTgud216IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAxOC53bXoKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjg4ZjJhYQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMTgud216CkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMTkuZ2lmIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAxOS5naWYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGVlZjZkYQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMTkuZ2lmCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMjAucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAyMC5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDRmNjE1ZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMjAucG5nCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMjEuanBnIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAyMS5qcGcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzFmOGM0NwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMjEuanBnCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMjIucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAyMi5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmFmMDFlNAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMjIucG5nCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMjMucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAyMy5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDFlMThhMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMjMucG5nCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMjQuZ2lmIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAyNC5naWYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2NlZjJiMQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMjQuZ2lmCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMjUud216IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAyNS53bXoKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTI3NTM2MgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMjUud216CkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMjYuZ2lmIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAyNi5naWYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjI2NGU2MQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMjYuZ2lmCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMjcuZ2lmIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAyNy5naWYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2JjNTMzYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMjcuZ2lmCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMjgucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAyOC5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDE1YmM0YgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMjgucG5nCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMjkuZ2lmIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAyOS5naWYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWZlYmQ1ZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMjkuZ2lmCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMzAucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAzMC5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWVlNjM0NwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMzAucG5nCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMzEuZ2lmIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAzMS5naWYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTAwNjVjZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMzEuZ2lmCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMzIuZ2lmIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAzMi5naWYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTRhNjZjYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMzIuZ2lmCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMzMucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAzMy5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTY5N2JiZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMzMucG5nCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMzQuZ2lmIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAzNC5naWYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjFjMzMyZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMzQuZ2lmCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMzUuZ2lmIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAzNS5naWYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmUwNjU2YQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMzUuZ2lmCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMzYucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1BhcHlydXNUdXRvcmlhbF9HZW5lcmF0aW9uTWVudUNvbnRyaWJ1dGlvbl9maWNoaWVycy9pbWFnZTAzNi5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZThmNzhlZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvaW1hZ2UwMzYucG5nCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9QYXB5cnVzVHV0b3JpYWxfR2VuZXJhdGlvbk1lbnVDb250cmlidXRpb25fZmljaGllcnMvdGhlbWVkYXRhLnRobXggYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2h0bWwvUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL3RoZW1lZGF0YS50aG14Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBlZjgwZTgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2h0bWwvUGFweXJ1c1R1dG9yaWFsX0dlbmVyYXRpb25NZW51Q29udHJpYnV0aW9uX2ZpY2hpZXJzL3RoZW1lZGF0YS50aG14CkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9SMC4yLjMtRGVmaW5pdGlvbnMtaGVscC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1IwLjIuMy1EZWZpbml0aW9ucy1oZWxwLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmUwN2MxMAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9SMC4yLjMtRGVmaW5pdGlvbnMtaGVscC5odG1sCkBAIC0wLDAgKzEsMTA2IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPCFET0NUWVBFIGh0bWwKKyAgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjEgcGx1cyBNYXRoTUwgMi4wLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL01hdGhNTDIvZHRkL3hodG1sLW1hdGgxMS1mLmR0ZCI+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+PCEtLVRoaXMgZmlsZSB3YXMgY29udmVydGVkIHRvIHhodG1sIGJ5IE9wZW5PZmZpY2Uub3JnIC0gc2VlIGh0dHA6Ly94bWwub3Blbm9mZmljZS5vcmcvb2RmMnhodG1sIGZvciBtb3JlIGluZm8uLS0+PGhlYWQgcHJvZmlsZT0iaHR0cDovL2R1YmxpbmNvcmUub3JnL2RvY3VtZW50cy9kY21pLXRlcm1zLyI+PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJhcHBsaWNhdGlvbi94aHRtbCt4bWw7IGNoYXJzZXQ9dXRmLTgiLz48dGl0bGUgeG1sOmxhbmc9ImVuLVVTIj5EZWZpbml0aW9uczwvdGl0bGU+PG1ldGEgbmFtZT0iRENURVJNUy50aXRsZSIgY29udGVudD0iRGVmaW5pdGlvbnMiIHhtbDpsYW5nPSJlbi1VUyIvPjxtZXRhIG5hbWU9IkRDVEVSTVMubGFuZ3VhZ2UiIGNvbnRlbnQ9ImVuLVVTIiBzY2hlbWU9IkRDVEVSTVMuUkZDNDY0NiIvPjxtZXRhIG5hbWU9IkRDVEVSTVMuc291cmNlIiBjb250ZW50PSJodHRwOi8veG1sLm9wZW5vZmZpY2Uub3JnL29kZjJ4aHRtbCIvPjxtZXRhIG5hbWU9IkRDVEVSTVMuY3JlYXRvciIgY29udGVudD0iYnJ1bm8gcGF0aW4iLz48bWV0YSBuYW1lPSJEQ1RFUk1TLmlzc3VlZCIgY29udGVudD0iMjAxMS0wNC0wNFQxODowNjowMC4xMiIgc2NoZW1lPSJEQ1RFUk1TLlczQ0RURiIvPjxtZXRhIG5hbWU9IkRDVEVSTVMuY29udHJpYnV0b3IiIGNvbnRlbnQ9IkJydW5vIFBhdGluIi8+PG1ldGEgbmFtZT0iRENURVJNUy5tb2RpZmllZCIgY29udGVudD0iMjAxMS0wNy0xMVQxNzo0ODoyNi4xNyIgc2NoZW1lPSJEQ1RFUk1TLlczQ0RURiIvPjxtZXRhIG5hbWU9IkRDVEVSTVMucHJvdmVuYW5jZSIgY29udGVudD0iIiB4bWw6bGFuZz0iZW4tVVMiLz48bWV0YSBuYW1lPSJEQ1RFUk1TLnN1YmplY3QiIGNvbnRlbnQ9IlBST1RFVVMgLSBGcmVuY2ggcm9ib3RpYyBwbGF0Zm9ybSwiIHhtbDpsYW5nPSJlbi1VUyIvPjxtZXRhIG5hbWU9IkRDVEVSTVMuZGVzY3JpcHRpb24iIGNvbnRlbnQ9ImJwYXRpbiAtIDA0LzA0LzIwMTEmI3hBOy0gY3JlYXRpb24gw6AgcGFydGlyIGRlcyBkw6lmaW5pdGlvbnMgdGVsbGVzIHF1ZSBwcsOpY2lzw6llcyBkYW5zIGxlcyBkb2N1bWVudHMgUjIuMy4zIGV0IFIxLjIuMSYjeEE7JiN4QTticGF0aW4gLSAyNC8wNC8yMDExJiN4QTstIGludHJvZHVjdGlvbiBkZXMgcmVww6hyZXMgZGUgdGV4dGUgYWZpbiBkZSBwb3V2b2lyIHNlIGTDqXBsYWNlciBzaW1wbGVtZW50IGRhbnMgbGUgdGFibGVhdSYjeEE7JiN4QTticGF0aW4sIHNkZWx0b3VyIC0gMjAvMDUvMjAxMSYjeEE7YnBhdGluLCBzZGVsdG91ciAtIDIzLzA1LzIwMTEmI3hBOy0gY29tcGzDqW1lbnRzIGF1eCBkw6lmaW5pdGlvbnMmI3hBOy0gYWpvdXQgZGVzIGFjcm9ueW1lcyYjeEE7LSBjb2jDqXJlbmNlIGF2ZWMgbCdvbnRvbG9naWUmI3hBOyYjeEE7YnBhdGluIC0gMzAvMDUvMjAxMSYjeEE7LSBtaXNlIGVuIGNvaMOpcmVuY2UgYXZlYyBsZSBkb2N1bWVudCBSMi4zLjMmI3hBOy0gaW50cm9kdWN0aW9uIGRlICYjMzQ7cm9ib3RpYyBzeXN0ZW0gb2Ygc3l0ZW1zJiMzNDsiIHhtbDpsYW5nPSJlbi1VUyIvPjxsaW5rIHJlbD0ic2NoZW1hLkRDIiBocmVmPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgaHJlZmxhbmc9ImVuIi8+PGxpbmsgcmVsPSJzY2hlbWEuRENURVJNUyIgaHJlZj0iaHR0cDovL3B1cmwub3JnL2RjL3Rlcm1zLyIgaHJlZmxhbmc9ImVuIi8+PGxpbmsgcmVsPSJzY2hlbWEuRENUWVBFIiBocmVmPSJodHRwOi8vcHVybC5vcmcvZGMvZGNtaXR5cGUvIiBocmVmbGFuZz0iZW4iLz48bGluayByZWw9InNjaGVtYS5EQ0FNIiBocmVmPSJodHRwOi8vcHVybC5vcmcvZGMvZGNhbS8iIGhyZWZsYW5nPSJlbiIvPjxiYXNlIGhyZWY9Ii4iLz48c3R5bGUgdHlwZT0idGV4dC9jc3MiPgorCUBwYWdlIHsgIH0KKwl0YWJsZSB7IGJvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTsgYm9yZGVyLXNwYWNpbmc6MDsgZW1wdHktY2VsbHM6c2hvdyB9CisJdGQsIHRoIHsgdmVydGljYWwtYWxpZ246dG9wOyBmb250LXNpemU6MTJwdDt9CisJaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7IGNsZWFyOmJvdGggfQorCW9sLCB1bCB7IG1hcmdpbjowOyBwYWRkaW5nOjA7fQorCWxpIHsgbGlzdC1zdHlsZTogbm9uZTsgbWFyZ2luOjA7IHBhZGRpbmc6MDt9CisJPCEtLSAibGkgc3Bhbi5vZGZMaUVuZCIgLSBJRSA3IGlzc3VlLS0+CisJbGkgc3Bhbi4geyBjbGVhcjogYm90aDsgbGluZS1oZWlnaHQ6MDsgd2lkdGg6MDsgaGVpZ2h0OjA7IG1hcmdpbjowOyBwYWRkaW5nOjA7IH0KKwlzcGFuLmZvb3Rub2RlTnVtYmVyIHsgcGFkZGluZy1yaWdodDoxZW07IH0KKwlzcGFuLmFubm90YXRpb25fc3R5bGVfYnlfZmlsdGVyIHsgZm9udC1zaXplOjk1JTsgZm9udC1mYW1pbHk6QXJpYWw7IGJhY2tncm91bmQtY29sb3I6I2ZmZjAwMDsgIG1hcmdpbjowOyBib3JkZXI6MDsgcGFkZGluZzowOyAgfQorCSogeyBtYXJnaW46MDt9CisJLmZyMyB7IGZvbnQtc2l6ZToxMnB0OyB0ZXh0LWFsaWduOmNlbnRlcjsgdmVydGljYWwtYWxpZ246dG9wOyB3cml0aW5nLW1vZGU6bHItdGI7IH0KKwkuUDEzIHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpqdXN0aWZ5ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgfQorCS5QMTQgeyBmb250LXNpemU6OHB0OyBtYXJnaW4tYm90dG9tOjBjbTsgbWFyZ2luLXRvcDowLjEwMWNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyBjb2xvcjojMDAwMDAwOyBmb250LXN0eWxlOm5vcm1hbDsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0Om5vcm1hbDsgfQorCS5QMjAgeyBmb250LXNpemU6OHB0OyBtYXJnaW4tYm90dG9tOjBjbTsgbWFyZ2luLXRvcDowLjEwMWNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyBjb2xvcjojMDAwMDAwOyB9CisJLlAyMSB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi1ib3R0b206MGNtOyBtYXJnaW4tdG9wOjAuMTAxY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGltZXMgTmV3IFJvbWFuOyB3cml0aW5nLW1vZGU6bHItdGI7IGNvbG9yOiMwMDAwMDA7IH0KKwkuUDIyIHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgfQorCS5QMjNfYm9yZGVyU3RhcnQgeyBmb250LXNpemU6OHB0OyBtYXJnaW4tdG9wOjAuMTAxY207IHRleHQtYWxpZ246anVzdGlmeSAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGltZXMgTmV3IFJvbWFuOyB3cml0aW5nLW1vZGU6bHItdGI7IHBhZGRpbmc6MGNtOyBib3JkZXItc3R5bGU6bm9uZTsgcGFkZGluZy1ib3R0b206MGNtOyAgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyB9CisJLlAyMyB7IGZvbnQtc2l6ZTo4cHQ7IHRleHQtYWxpZ246anVzdGlmeSAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGltZXMgTmV3IFJvbWFuOyB3cml0aW5nLW1vZGU6bHItdGI7IHBhZGRpbmc6MGNtOyBib3JkZXItc3R5bGU6bm9uZTsgcGFkZGluZy1ib3R0b206MGNtOyBwYWRkaW5nLXRvcDowLjEwMWNtOyAgYm9yZGVyLXRvcC1zdHlsZTpub25lOyBib3JkZXItYm90dG9tLXN0eWxlOm5vbmU7IH0KKwkuUDIzX2JvcmRlckVuZCB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi1ib3R0b206MGNtOyB0ZXh0LWFsaWduOmp1c3RpZnkgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IHBhZGRpbmctdG9wOjAuMTAxY207ICBib3JkZXItdG9wLXN0eWxlOm5vbmU7fQorCS5QMjUgeyBmb250LXNpemU6OHB0OyBtYXJnaW4tYm90dG9tOjBjbTsgbWFyZ2luLXRvcDowLjEwMWNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyB9CisJLlAyNiB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi1ib3R0b206MGNtOyBtYXJnaW4tdG9wOjAuMTAxY207IHRleHQtYWxpZ246Y2VudGVyICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgfQorCS5QMjcgeyBmb250LXNpemU6OHB0OyBtYXJnaW4tYm90dG9tOjBjbTsgbWFyZ2luLXRvcDowLjEwMWNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyBmb250LXdlaWdodDpib2xkOyB9CisJLlAyOCB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi1ib3R0b206MGNtOyBtYXJnaW4tdG9wOjAuMTAxY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGltZXMgTmV3IFJvbWFuOyB3cml0aW5nLW1vZGU6bHItdGI7IGNvbG9yOiMwMDAwMDA7IGZvbnQtc3R5bGU6bm9ybWFsOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6bm9ybWFsOyB9CisJLlAyOSB7IGZvbnQtc2l6ZTo5cHQ7IG1hcmdpbi1ib3R0b206MGNtOyBtYXJnaW4tdG9wOjAuMTAxY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGhvcm5kYWxlOyB3cml0aW5nLW1vZGU6bHItdGI7IGNvbG9yOiNmZmZmZmY7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgfQorCS5QMzAgeyBmb250LXNpemU6OXB0OyBmb250LXdlaWdodDpib2xkOyBtYXJnaW4tYm90dG9tOjBjbTsgbWFyZ2luLXRvcDowLjEwMWNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRob3JuZGFsZTsgd3JpdGluZy1tb2RlOmxyLXRiOyBjb2xvcjojZmZmZmZmOyBmb250LXN0eWxlOml0YWxpYzsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IH0KKwkuUDMxIHsgZm9udC1zaXplOjhwdDsgZm9udC13ZWlnaHQ6Ym9sZDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgY29sb3I6I2ZmZmZmZjsgZm9udC1zdHlsZTppdGFsaWM7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyB9CisJLlAzMyB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi1ib3R0b206MGNtOyBtYXJnaW4tdG9wOjAuMTAxY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGltZXMgTmV3IFJvbWFuOyB3cml0aW5nLW1vZGU6bHItdGI7IGZvbnQtc3R5bGU6bm9ybWFsOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6bm9ybWFsOyB9CisJLlAzNCB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi1ib3R0b206MGNtOyBtYXJnaW4tdG9wOjAuMTAxY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGltZXMgTmV3IFJvbWFuOyB3cml0aW5nLW1vZGU6bHItdGI7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgfQorCS5QMzUgeyBmb250LXNpemU6OHB0OyBtYXJnaW4tYm90dG9tOjBjbTsgbWFyZ2luLXRvcDowLjEwMWNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyB9CisJLlAzNl9ib3JkZXJTdGFydCB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojMDAwMDAwOyBmb250LXN0eWxlOm5vcm1hbDsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0Om5vcm1hbDsgcGFkZGluZy1ib3R0b206MGNtOyAgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyB9CisJLlAzNiB7IGZvbnQtc2l6ZTo4cHQ7IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGltZXMgTmV3IFJvbWFuOyB3cml0aW5nLW1vZGU6bHItdGI7IGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7IHBhZGRpbmc6MGNtOyBib3JkZXItc3R5bGU6bm9uZTsgY29sb3I6IzAwMDAwMDsgZm9udC1zdHlsZTpub3JtYWw7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpub3JtYWw7IHBhZGRpbmctYm90dG9tOjBjbTsgcGFkZGluZy10b3A6MC4xMDFjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTsgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyB9CisJLlAzNl9ib3JkZXJFbmQgeyBmb250LXNpemU6OHB0OyBtYXJnaW4tYm90dG9tOjBjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojMDAwMDAwOyBmb250LXN0eWxlOm5vcm1hbDsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0Om5vcm1hbDsgcGFkZGluZy10b3A6MC4xMDFjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTt9CisJLlAzN19ib3JkZXJTdGFydCB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojMDAwMDAwOyBmb250LXN0eWxlOm5vcm1hbDsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0Om5vcm1hbDsgcGFkZGluZy1ib3R0b206MGNtOyAgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyB9CisJLlAzNyB7IGZvbnQtc2l6ZTo4cHQ7IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGltZXMgTmV3IFJvbWFuOyB3cml0aW5nLW1vZGU6bHItdGI7IGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7IHBhZGRpbmc6MGNtOyBib3JkZXItc3R5bGU6bm9uZTsgY29sb3I6IzAwMDAwMDsgZm9udC1zdHlsZTpub3JtYWw7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpub3JtYWw7IHBhZGRpbmctYm90dG9tOjBjbTsgcGFkZGluZy10b3A6MC4xMDFjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTsgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyB9CisJLlAzN19ib3JkZXJFbmQgeyBmb250LXNpemU6OHB0OyBtYXJnaW4tYm90dG9tOjBjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojMDAwMDAwOyBmb250LXN0eWxlOm5vcm1hbDsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0Om5vcm1hbDsgcGFkZGluZy10b3A6MC4xMDFjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTt9CisJLlAzOF9ib3JkZXJTdGFydCB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgcGFkZGluZzowY207IGJvcmRlci1sZWZ0LXN0eWxlOm5vbmU7IGJvcmRlci1yaWdodC13aWR0aDowLjA4OGNtOyBib3JkZXItcmlnaHQtc3R5bGU6c29saWQ7IGJvcmRlci1yaWdodC1jb2xvcjojZmYwMDAwOyBib3JkZXItdG9wLXN0eWxlOm5vbmU7IGNvbG9yOiMwMDAwMDA7IGZvbnQtc3R5bGU6bm9ybWFsOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6bm9ybWFsOyBwYWRkaW5nLWJvdHRvbTowY207ICBib3JkZXItYm90dG9tLXN0eWxlOm5vbmU7IH0KKwkuUDM4IHsgZm9udC1zaXplOjhwdDsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgcGFkZGluZzowY207IGJvcmRlci1sZWZ0LXN0eWxlOm5vbmU7IGJvcmRlci1yaWdodC13aWR0aDowLjA4OGNtOyBib3JkZXItcmlnaHQtc3R5bGU6c29saWQ7IGJvcmRlci1yaWdodC1jb2xvcjojZmYwMDAwOyBjb2xvcjojMDAwMDAwOyBmb250LXN0eWxlOm5vcm1hbDsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0Om5vcm1hbDsgcGFkZGluZy1ib3R0b206MGNtOyBwYWRkaW5nLXRvcDowLjEwMWNtOyAgYm9yZGVyLXRvcC1zdHlsZTpub25lOyBib3JkZXItYm90dG9tLXN0eWxlOm5vbmU7IH0KKwkuUDM4X2JvcmRlckVuZCB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi1ib3R0b206MGNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyBwYWRkaW5nOjBjbTsgYm9yZGVyLWxlZnQtc3R5bGU6bm9uZTsgYm9yZGVyLXJpZ2h0LXdpZHRoOjAuMDg4Y207IGJvcmRlci1yaWdodC1zdHlsZTpzb2xpZDsgYm9yZGVyLXJpZ2h0LWNvbG9yOiNmZjAwMDA7IGJvcmRlci1ib3R0b20tc3R5bGU6bm9uZTsgY29sb3I6IzAwMDAwMDsgZm9udC1zdHlsZTpub3JtYWw7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpub3JtYWw7IHBhZGRpbmctdG9wOjAuMTAxY207ICBib3JkZXItdG9wLXN0eWxlOm5vbmU7fQorCS5QMzlfYm9yZGVyU3RhcnQgeyBmb250LXNpemU6OXB0OyBtYXJnaW4tdG9wOjAuMTAxY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGhvcm5kYWxlOyB3cml0aW5nLW1vZGU6bHItdGI7IHBhZGRpbmc6MGNtOyBib3JkZXItc3R5bGU6bm9uZTsgY29sb3I6I2ZmZmZmZjsgZm9udC1zdHlsZTppdGFsaWM7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpib2xkOyBwYWRkaW5nLWJvdHRvbTowY207ICBib3JkZXItYm90dG9tLXN0eWxlOm5vbmU7IH0KKwkuUDM5IHsgZm9udC1zaXplOjlwdDsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaG9ybmRhbGU7IHdyaXRpbmctbW9kZTpsci10YjsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojZmZmZmZmOyBmb250LXN0eWxlOml0YWxpYzsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0OmJvbGQ7IHBhZGRpbmctYm90dG9tOjBjbTsgcGFkZGluZy10b3A6MC4xMDFjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTsgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyB9CisJLlAzOV9ib3JkZXJFbmQgeyBmb250LXNpemU6OXB0OyBtYXJnaW4tYm90dG9tOjBjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaG9ybmRhbGU7IHdyaXRpbmctbW9kZTpsci10YjsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojZmZmZmZmOyBmb250LXN0eWxlOml0YWxpYzsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0OmJvbGQ7IHBhZGRpbmctdG9wOjAuMTAxY207ICBib3JkZXItdG9wLXN0eWxlOm5vbmU7fQorCS5QNDBfYm9yZGVyU3RhcnQgeyBmb250LXNpemU6OXB0OyBtYXJnaW4tdG9wOjBjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaG9ybmRhbGU7IHdyaXRpbmctbW9kZTpsci10YjsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojZmZmZmZmOyBmb250LXN0eWxlOml0YWxpYzsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0OmJvbGQ7IHBhZGRpbmctYm90dG9tOjBjbTsgIGJvcmRlci1ib3R0b20tc3R5bGU6bm9uZTsgfQorCS5QNDAgeyBmb250LXNpemU6OXB0OyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRob3JuZGFsZTsgd3JpdGluZy1tb2RlOmxyLXRiOyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiNmZmZmZmY7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgcGFkZGluZy1ib3R0b206MGNtOyBwYWRkaW5nLXRvcDowY207ICBib3JkZXItdG9wLXN0eWxlOm5vbmU7IGJvcmRlci1ib3R0b20tc3R5bGU6bm9uZTsgfQorCS5QNDBfYm9yZGVyRW5kIHsgZm9udC1zaXplOjlwdDsgbWFyZ2luLWJvdHRvbTowY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGhvcm5kYWxlOyB3cml0aW5nLW1vZGU6bHItdGI7IHBhZGRpbmc6MGNtOyBib3JkZXItc3R5bGU6bm9uZTsgY29sb3I6I2ZmZmZmZjsgZm9udC1zdHlsZTppdGFsaWM7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpib2xkOyBwYWRkaW5nLXRvcDowY207ICBib3JkZXItdG9wLXN0eWxlOm5vbmU7fQorCS5QNDFfYm9yZGVyU3RhcnQgeyBmb250LXNpemU6OXB0OyBtYXJnaW4tdG9wOjBjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaG9ybmRhbGU7IHdyaXRpbmctbW9kZTpsci10YjsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojZmZmZmZmOyBmb250LXN0eWxlOml0YWxpYzsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0OmJvbGQ7IHBhZGRpbmctYm90dG9tOjBjbTsgIGJvcmRlci1ib3R0b20tc3R5bGU6bm9uZTsgfQorCS5QNDEgeyBmb250LXNpemU6OXB0OyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRob3JuZGFsZTsgd3JpdGluZy1tb2RlOmxyLXRiOyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiNmZmZmZmY7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgcGFkZGluZy1ib3R0b206MGNtOyBwYWRkaW5nLXRvcDowY207ICBib3JkZXItdG9wLXN0eWxlOm5vbmU7IGJvcmRlci1ib3R0b20tc3R5bGU6bm9uZTsgfQorCS5QNDFfYm9yZGVyRW5kIHsgZm9udC1zaXplOjlwdDsgbWFyZ2luLWJvdHRvbTowY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGhvcm5kYWxlOyB3cml0aW5nLW1vZGU6bHItdGI7IHBhZGRpbmc6MGNtOyBib3JkZXItc3R5bGU6bm9uZTsgY29sb3I6I2ZmZmZmZjsgZm9udC1zdHlsZTppdGFsaWM7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpib2xkOyBwYWRkaW5nLXRvcDowY207ICBib3JkZXItdG9wLXN0eWxlOm5vbmU7fQorCS5QNDJfYm9yZGVyU3RhcnQgeyBmb250LXNpemU6OXB0OyBtYXJnaW4tdG9wOjBjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaG9ybmRhbGU7IHdyaXRpbmctbW9kZTpsci10YjsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojZmZmZmZmOyBmb250LXN0eWxlOml0YWxpYzsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0OmJvbGQ7IHBhZGRpbmctYm90dG9tOjBjbTsgIGJvcmRlci1ib3R0b20tc3R5bGU6bm9uZTsgfQorCS5QNDIgeyBmb250LXNpemU6OXB0OyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRob3JuZGFsZTsgd3JpdGluZy1tb2RlOmxyLXRiOyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiNmZmZmZmY7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgcGFkZGluZy1ib3R0b206MGNtOyBwYWRkaW5nLXRvcDowY207ICBib3JkZXItdG9wLXN0eWxlOm5vbmU7IGJvcmRlci1ib3R0b20tc3R5bGU6bm9uZTsgfQorCS5QNDJfYm9yZGVyRW5kIHsgZm9udC1zaXplOjlwdDsgbWFyZ2luLWJvdHRvbTowY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGhvcm5kYWxlOyB3cml0aW5nLW1vZGU6bHItdGI7IHBhZGRpbmc6MGNtOyBib3JkZXItc3R5bGU6bm9uZTsgY29sb3I6I2ZmZmZmZjsgZm9udC1zdHlsZTppdGFsaWM7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpib2xkOyBwYWRkaW5nLXRvcDowY207ICBib3JkZXItdG9wLXN0eWxlOm5vbmU7fQorCS5QNDNfYm9yZGVyU3RhcnQgeyBmb250LXNpemU6OXB0OyBtYXJnaW4tdG9wOjBjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaG9ybmRhbGU7IHdyaXRpbmctbW9kZTpsci10YjsgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojZmZmZmZmOyBmb250LXN0eWxlOml0YWxpYzsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0OmJvbGQ7IHBhZGRpbmctYm90dG9tOjBjbTsgIGJvcmRlci1ib3R0b20tc3R5bGU6bm9uZTsgfQorCS5QNDMgeyBmb250LXNpemU6OXB0OyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRob3JuZGFsZTsgd3JpdGluZy1tb2RlOmxyLXRiOyBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiNmZmZmZmY7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgcGFkZGluZy1ib3R0b206MGNtOyBwYWRkaW5nLXRvcDowY207ICBib3JkZXItdG9wLXN0eWxlOm5vbmU7IGJvcmRlci1ib3R0b20tc3R5bGU6bm9uZTsgfQorCS5QNDNfYm9yZGVyRW5kIHsgZm9udC1zaXplOjlwdDsgbWFyZ2luLWJvdHRvbTowY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGhvcm5kYWxlOyB3cml0aW5nLW1vZGU6bHItdGI7IGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7IHBhZGRpbmc6MGNtOyBib3JkZXItc3R5bGU6bm9uZTsgY29sb3I6I2ZmZmZmZjsgZm9udC1zdHlsZTppdGFsaWM7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpib2xkOyBwYWRkaW5nLXRvcDowY207ICBib3JkZXItdG9wLXN0eWxlOm5vbmU7fQorCS5QNDUgeyBmb250LXNpemU6MTBwdDsgZm9udC13ZWlnaHQ6Ym9sZDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpjZW50ZXIgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlBhbGF0aW5vIExpbm90eXBlOyB3cml0aW5nLW1vZGU6bHItdGI7IH0KKwkuUDQ2IHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgfQorCS5QNDcgeyBmb250LXNpemU6OHB0OyBtYXJnaW4tYm90dG9tOjBjbTsgbWFyZ2luLXRvcDowLjEwMWNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyB9CisJLlA0OCB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi1ib3R0b206MGNtOyBtYXJnaW4tdG9wOjAuMTAxY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGltZXMgTmV3IFJvbWFuOyB3cml0aW5nLW1vZGU6bHItdGI7IH0KKwkuZGVmaW5pdGlvbnMgeyB3aWR0aDoxNi45N2NtOyB3cml0aW5nLW1vZGU6bHItdGI7IH0KKwkuZGVmaW5pdGlvbnNfQTEgeyBiYWNrZ3JvdW5kLWNvbG9yOiM2NjMzMDA7IHBhZGRpbmc6MGNtOyBib3JkZXItd2lkdGg6MC4wMTMzY207IGJvcmRlci1zdHlsZTpzb2xpZDsgYm9yZGVyLWNvbG9yOiM0YzE5MDA7IH0KKwkuZGVmaW5pdGlvbnNfQTIgeyB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7IGJhY2tncm91bmQtY29sb3I6Izk5NjYzMzsgcGFkZGluZzowY207IGJvcmRlci1sZWZ0LXdpZHRoOjAuMDEzM2NtOyBib3JkZXItbGVmdC1zdHlsZTpzb2xpZDsgYm9yZGVyLWxlZnQtY29sb3I6IzRjMTkwMDsgYm9yZGVyLXJpZ2h0LXdpZHRoOjAuMDEzM2NtOyBib3JkZXItcmlnaHQtc3R5bGU6c29saWQ7IGJvcmRlci1yaWdodC1jb2xvcjojNGMxOTAwOyBib3JkZXItdG9wLXN0eWxlOm5vbmU7IGJvcmRlci1ib3R0b20td2lkdGg6MC4wMTMzY207IGJvcmRlci1ib3R0b20tc3R5bGU6c29saWQ7IGJvcmRlci1ib3R0b20tY29sb3I6IzRjMTkwMDsgfQorCS5kZWZpbml0aW9uc19CMSB7IGJhY2tncm91bmQtY29sb3I6IzY2MzMwMDsgcGFkZGluZzowY207IGJvcmRlci1sZWZ0LXN0eWxlOm5vbmU7IGJvcmRlci1yaWdodC13aWR0aDowLjAxMzNjbTsgYm9yZGVyLXJpZ2h0LXN0eWxlOnNvbGlkOyBib3JkZXItcmlnaHQtY29sb3I6IzRjMTkwMDsgYm9yZGVyLXRvcC13aWR0aDowLjAxMzNjbTsgYm9yZGVyLXRvcC1zdHlsZTpzb2xpZDsgYm9yZGVyLXRvcC1jb2xvcjojNGMxOTAwOyBib3JkZXItYm90dG9tLXdpZHRoOjAuMDEzM2NtOyBib3JkZXItYm90dG9tLXN0eWxlOnNvbGlkOyBib3JkZXItYm90dG9tLWNvbG9yOiM0YzE5MDA7IH0KKwkuZGVmaW5pdGlvbnNfQjIgeyB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7IGJhY2tncm91bmQtY29sb3I6I2ZmY2M5OTsgcGFkZGluZzowY207IGJvcmRlci1sZWZ0LXN0eWxlOm5vbmU7IGJvcmRlci1yaWdodC13aWR0aDowLjAxMzNjbTsgYm9yZGVyLXJpZ2h0LXN0eWxlOnNvbGlkOyBib3JkZXItcmlnaHQtY29sb3I6I2ZmNjYzMzsgYm9yZGVyLXRvcC1zdHlsZTpub25lOyBib3JkZXItYm90dG9tLXdpZHRoOjAuMDEzM2NtOyBib3JkZXItYm90dG9tLXN0eWxlOnNvbGlkOyBib3JkZXItYm90dG9tLWNvbG9yOiM0YzE5MDA7IH0KKwkuZGVmaW5pdGlvbnNfQjY5IHsgdmVydGljYWwtYWxpZ246bWlkZGxlOyBiYWNrZ3JvdW5kLWNvbG9yOiNmZmNjOTk7IHBhZGRpbmc6MGNtOyBib3JkZXItbGVmdC1zdHlsZTpub25lOyBib3JkZXItcmlnaHQtd2lkdGg6MC4wMTMzY207IGJvcmRlci1yaWdodC1zdHlsZTpzb2xpZDsgYm9yZGVyLXJpZ2h0LWNvbG9yOiNmZjY2MzM7IGJvcmRlci10b3Atc3R5bGU6bm9uZTsgYm9yZGVyLWJvdHRvbS13aWR0aDowLjAxMzNjbTsgYm9yZGVyLWJvdHRvbS1zdHlsZTpzb2xpZDsgYm9yZGVyLWJvdHRvbS1jb2xvcjojZmY2NjMzOyB9CisJLmRlZmluaXRpb25zX0EgeyB3aWR0aDozLjczMWNtOyB9CisJLmRlZmluaXRpb25zX0IgeyB3aWR0aDoxMy4yNGNtOyB9CisJLkJ1bGxldF8yMF9TeW1ib2xzIHsgZm9udC1mYW1pbHk6T3BlblN5bWJvbDsgfQorCS5Gb290bm90ZV8yMF9TeW1ib2wgeyB2ZXJ0aWNhbC1hbGlnbjpzdXBlcjsgZm9udC1zaXplOjU4JTt9CisJLlQxIHsgZm9udC13ZWlnaHQ6bm9ybWFsOyB9CisJLlQxMCB7IGNvbG9yOiMwMDAwMDA7IGZvbnQtd2VpZ2h0Om5vcm1hbDsgfQorCS5UMTEgeyBjb2xvcjojMDAwMDAwOyB9CisJLlQxMiB7IGNvbG9yOiMwMDAwMDA7IGZvbnQtd2VpZ2h0OmJvbGQ7IH0KKwkuVDEzIHsgY29sb3I6IzAwMDAwMDsgZm9udC13ZWlnaHQ6Ym9sZDsgfQorCS5UMTQgeyBjb2xvcjojMDAwMDAwOyBmb250LWZhbWlseTpUaG9ybmRhbGU7IGZvbnQtc2l6ZTo5cHQ7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgfQorCS5UMTUgeyBjb2xvcjojMDAwMDAwOyBmb250LWZhbWlseTpUaG9ybmRhbGU7IGZvbnQtc2l6ZTo5cHQ7IGZvbnQtc3R5bGU6bm9ybWFsOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgfQorCS5UMTcgeyBmb250LXdlaWdodDpib2xkOyB9CisJLlQxOCB7IGZvbnQtd2VpZ2h0OmJvbGQ7IH0KKwkuVDIgeyBjb2xvcjojMDAwMDAwOyB9CisJLlQyMCB7IHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7IGZvbnQtd2VpZ2h0OmJvbGQ7IH0KKwkuVDIxIHsgZm9udC13ZWlnaHQ6Ym9sZDsgfQorCS5UMjIgeyBmb250LXdlaWdodDpib2xkOyB9CisJLlQyMyB7IGZvbnQtd2VpZ2h0OmJvbGQ7IH0KKwkuVDI0IHsgZm9udC13ZWlnaHQ6Ym9sZDsgfQorCS5UMjUgeyBmb250LXdlaWdodDpib2xkOyB9CisJLlQyNiB7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lOyBmb250LXdlaWdodDpib2xkOyB9CisJLlQyNyB7IGZvbnQtc3R5bGU6aXRhbGljOyB9CisJLlQyOCB7IGZvbnQtc3R5bGU6aXRhbGljOyBmb250LXdlaWdodDpub3JtYWw7IH0KKwkuVDI5IHsgZm9udC1zdHlsZTpub3JtYWw7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpub3JtYWw7IH0KKwkuVDMgeyBjb2xvcjojMDAwMDAwOyB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lOyBmb250LXdlaWdodDpib2xkOyB9CisJLlQzMCB7IGZvbnQtc3R5bGU6bm9ybWFsOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgfQorCS5UMzEgeyBmb250LXN0eWxlOml0YWxpYzsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0OmJvbGQ7IH0KKwkuVDMyIHsgZm9udC1zdHlsZTppdGFsaWM7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpub3JtYWw7IH0KKwkuVDMzIHsgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTsgZm9udC13ZWlnaHQ6Ym9sZDsgfQorCS5UNCB7IGNvbG9yOiMwMDAwMDA7IH0KKwkuVDUgeyBjb2xvcjojMDAwMDAwOyB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lOyBmb250LXdlaWdodDpib2xkOyB9CisJLlQ2IHsgY29sb3I6IzAwMDAwMDsgfQorCS5UNyB7IGNvbG9yOiMwMDAwMDA7IGZvbnQtd2VpZ2h0OmJvbGQ7IH0KKwkuVDggeyBjb2xvcjojMDAwMDAwOyBmb250LXdlaWdodDpib2xkOyB9CisJLlQ5IHsgY29sb3I6IzAwMDAwMDsgZm9udC13ZWlnaHQ6bm9ybWFsOyB9CisJPCEtLSBPREYgc3R5bGVzIHdpdGggbm8gcHJvcGVydGllcyByZXByZXNlbnRhYmxlIGFzIENTUyAtLT4KKwkuTnVtYmVyaW5nXzIwX1N5bWJvbHMgLlQxNiAuVDE5IC5UMzQgLlQzNSB7IH0KKwk8L3N0eWxlPjwvaGVhZD48Ym9keSBkaXI9Imx0ciIgc3R5bGU9Im1heC13aWR0aDoyMS4wMDFjbTttYXJnaW4tdG9wOjJjbTsgbWFyZ2luLWJvdHRvbToyY207IG1hcmdpbi1sZWZ0OjJjbTsgbWFyZ2luLXJpZ2h0OjJjbTsgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsgIj48dGFibGUgYm9yZGVyPSIwIiBjZWxsc3BhY2luZz0iMCIgY2VsbHBhZGRpbmc9IjAiIGNsYXNzPSJkZWZpbml0aW9ucyI+PGNvbGdyb3VwPjxjb2wgd2lkdGg9IjE2MyIvPjxjb2wgd2lkdGg9IjU3OSIvPjwvY29sZ3JvdXA+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTEiPjxwIGNsYXNzPSJQMzAiPkVuZ2xpc2ggZGVmLjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjEiPjxwIGNsYXNzPSJQMzEiPk1lYW5pbmc8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQwIj5BY3R1YXRvclN5c3RlbTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI3Ij5TeXN0ZW06QWN0dWF0b3JTeXN0ZW0gOjwvcD48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDMwIj5FbGVjdHJvbWVjaGFuaWNhbDwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij4gc3lzdGVtLCA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMCI+aW5jbHVkaW5nPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMCI+bWVjaGFuaWNhbCA8L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+YW5kIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMwIj5zb2Z0d2FyZSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+Y29tcG9uZW50cywgdG8gbW92ZSBhbmQgY29udHJvbCDCoGEgbWVjaGFuaXNtIG9yIGEgc3lzdGVtLiBJdCBpcyA8L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+b3BlcmF0ZWQgYnkgYSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMCI+c291cmNlIG9mIGVuZXJneTwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij4sIHVzdWFsbHkgaW4gdGhlIGZvcm0gb2YgYW4gZWxlY3RyaWMgY3VycmVudCwgaHlkcmF1bGljIGZsdWlkIHByZXNzdXJlIG9yIHBuZXVtYXRpYyBwcmVzc3VyZSwgYW5kIGNvbnZlcnRzIHRoYXQgZW5lcmd5IGludG8gc29tZSBraW5kIG9mIG1vdGlvbi4gSXQgaXMgY29tbWFuZGVkIGFuZCBjb250cm9sbGVkIHRocm91Z2ggYSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMCI+ZHJpdmVyIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij5vciA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMCI+cmVndWxhdG9yIGRldmljZTwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij4gY29tbW9ubHkgaW5jbHVkZWQgaW4gdGhlIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMwIj5BY3R1YXRvciBTeXN0ZW0gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPmRlZmluaXRpb24uPC9zcGFuPjwvcD48cCBjbGFzcz0iUDMzIj48c3BhbiBjbGFzcz0iVDI2Ij5JTVBPUlRBTlQgV0FSTklOR1M8L3NwYW4+PHNwYW4gY2xhc3M9IlQyMyI+IDogPC9zcGFuPkluIHRoZSBzY29wZSBvZiBQUk9URVVTIHByb2plY3QgdGhlIGZvbGxvd2luZyBjb21tZW50cyBhcmUgYWRkZWQgOjwvcD48cCBjbGFzcz0iUDMzIj4tIFdoZW4gdGhlIDxzcGFuIGNsYXNzPSJUMjMiPkFjdHVhdG9yIDwvc3Bhbj7CoHdvcmQgaXMgdXNlZCBhbG9uZSwgaXQgbWVhbnMgdGhlIDxzcGFuIGNsYXNzPSJUMjMiPkFjdHVhdG9yIFN5c3RlbTwvc3Bhbj4gaW5jbHVkZXMgb25seSBvbmUgbm9uIGRlY29tcG9zYWJsZSBzb2Z0d2FyZSBhbmQgb25lIG5vbiBkZWNvbXBvc2FibGUgaGFyZHdhcmUuIEluIHRoaXMgY2FzZSwgaXQgaXMgc29tZXRpbWVzIGNhbGxlZCA8c3BhbiBjbGFzcz0iVDIzIj5tb3RvcmlzYXRpb248L3NwYW4+IG9yIDxzcGFuIGNsYXNzPSJUMjMiPmVmZmVjdG9yPC9zcGFuPi48L3A+PHAgY2xhc3M9IlAzNSI+PHNwYW4gY2xhc3M9IlQyOSI+LSBDYXJlIGlzIHRvIGJlIHRha2VuIGJldHdlZW4gdGhlIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMwIj5Nb3RvcmlzYXRpb24gU3lzdGVtPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPiwgYWJsZSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMSI+dG8gbW92ZSB0aGUgcm9ib3Qgb3IgcGFydCBvZiBpdDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMyIj4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPmFuZCB0aGUgZGlmZmVyZW50IG90aGVyIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMwIj5BY3R1YXRvcnMgU3lzdGVtczwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij4gYWJsZSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMSI+dG8gaW50ZXJhY3Qgd2l0aCB0aGUgZW52aXJvbm1lbnQ8L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+LiBUaGVzZSBvdGhlciA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMCI+QWN0dWF0b3JzIFN5c3RlbXM8L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+IMKgY2FuIGJlIGNhbGxlZCA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMiI+UGF5bG9hZCBzeXN0ZW1zPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPiw8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMiI+IE9wZXJhdGlvbmFsIHN5c3RlbXM8L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+LCA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMiI+TWlzc2lvbiBtb2R1bGVzPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPiwgZXRjLiAoYXMgYW4gZXhhbXBsZSwgTlJCQywgV2VhcG9ucywgQ29tbXVuaWNhdGlvbnMsIGV0Yy4pLjwvc3Bhbj48L3A+PCEtLU5leHQgJ2Rpdicgd2FzIGEgJ3RleHQ6cCcuLS0+PGRpdiBjbGFzcz0iUDI2Ij4gPCEtLU5leHQgJ2RpdicgaXMgYSBkcmF3OmZyYW1lLi0tPjxkaXYgc3R5bGU9ImhlaWdodDoxMS40NjRjbTt3aWR0aDo1LjQ1MmNtOyBmbG9hdDpsZWZ0OyBwYWRkaW5nOjA7IHBvc2l0aW9uOnJlbGF0aXZlOyBsZWZ0OjBjbTsgIiBjbGFzcz0iZnIzIiBpZD0iaW1hZ2VzMyI+PGltZyBzdHlsZT0iaGVpZ2h0OjExLjQ2NGNtO3dpZHRoOjUuNDUyY207IiBhbHQ9IiIgc3JjPSJkYXRhOmltYWdlLyo7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFYOEFBQU1NQ0FJQUFBQTBEekIyQUFBZzVFbEVRVlI0bk8zZGIyaFZkNTc0OFpQRkI1bDVrc0NBNXBHVEthVllLR2h4UWR0Q2plNkErMFFiV0dXU3dnOWIyRWdHQnJiU1BMQ2dyTjJFaFlHVTlrRVozZFpsSWdQMXl2UkJtakJGSDFSU0g2aVUzWnJMVUtqU1FpSU1teTRzcE93L1lZYng5elYzRzFJMWY3dzU4WFBPdWE4WDd1SGs1Q2J6NGN6a3ZlZmVjKzY1bSs3ZXZadGwyZlIwTmorZkFVdTF0MmU3ZDBjUFVWMmIwdi90M1p0TlRVVVBBb1hVM1ozZHVKRjFka2JQVVVXYkxsNlVIbGpXekV4V3EyV0RnOUZ6Vk5HbXVibm9FYURZL0kxc2tFMUx2K2pweWZic2lab0VDcVJlejhiSG80ZW91dS9WSjZYbjFLbWdRYUJJeHNiVVo4TnRXdjBoQUJ0QWZZQVk2Z1BFVUI4Z2h2b0FNZFFIaUtFK1FBejFBV0tvRHhBanovcTB0YlUxVmhwMzdWaUx5Y25KZ3djUHJ2M3hRR1hrVnA5NnZiNTBmZnYyN1d2NWtaU2V2QVlBeWlXMytuejQ0WWRwZWY3OCtmNysvclMrYW4xU2VuYnMySkhYZnpwUU92blU1OXR2dngwWkdUbHc0RUJmWDk4SEgzeVExb2VHaGpvNk9wWjdmT01KVjNwOFdzbGxBS0IwOHFuUGxTdFgwbkpnWUNBdFgzNzU1ZFNVdENYRjVhRVBUdDFKRHhnY0hIenp6VGUzYk5tU3l3QkE2ZVJUbjQ4Ly9qZ3RkKzNhbFpiNzl1MXJiRm11UGlrOW4zenlTZU5oUU12S29UNjNidDA2YytaTU9wYlp2SGx6K2pJdDAzcmFjdXpZc2FlZWV1ckJ4enZEQldTNTFPZnp6ejlQeXlOSGppeHVTZXVwUG1uN1Erc0RrT1ZTbi83Ky9yUjgrdW1uRjdjMDF0UDJ2cjYrOWY5K29KTFdXNS9HWlQ2am82Tkx6M0NsOWJSbGFHaG9qUmYrQUMxb3ZmVnBYT1l6dE9DaDMxVWY0S0hXVlovR1pUNHJQR0RWQzMrQWxyV3UralF1OHpsLy92eERYOStwMVdyOS9mMHJYUGdEdExKMTFhZHhtYzl5Vis0OC8venoyWW9YL2dDdHJQbjZOQzd6T1hIaVJPTXlud2R0M2JvMWZUYzkrVnJ1d2grZ2xUVmZuOFpsUG9jT0hWcmhNZW03cVQ0dS9BRWUxSHg5K3Z2NzAxT3FsVTlwcGUrbXg3andCM2hROC9WWjR4c21KaVltMXY5TGdPcHhaMVVnaHZvQU1kUUhpS0UrUUF6MUFXS29EeEJEZllBWTZnUEVVQjhnaHZvQU1kUUhpS0UrUUF6MUFXS29EeEJEZllBWTZnUEVVQjhnaHZvQU1kUUhpS0UrUUF6MUFXS29EeEJEZllBWTZnUEVVQjhnaHZvQU1kUUhpS0UrUUF6MUFXS29EeEJEZllBWTY2M1A5SFEyUDUvTEpGWFQzcDd0M3IzZVgyTDNMaWVYM1V1c2RkVm43OTVzYWlxblFhcW91enU3Y1NQcjdHenl4KzNlbGExejl4S3UrZnBjdk9odll4VXpNMW10bGcwT052T3pkdStxMXJON0tZTG02ek0zbCtNWWxkWDBYcko3MThKZUtyVjhYblh1NmNuMjdNbmxOMVZCdlo2TmorZjVDKzNlcFhMZnZVVEpwejdwYitQVXFWeCtVeFdNamVYODUySDNMcFg3N2lXS00rNUFEUFVCWXFnUEVFTjlnQmpxQThSUUh5Q0crZ0F4MUFlSW9UNUFEUFVCWXFnUEVFTjlnQmpxQThSUUh5Q0crZ0F4MUFlSW9UNUFEUFVCWXFnUEVFTjlnQmpxQThSUUg4ak4zTnpjK1BqNG9FODRYQnYxZ2ZWcVJPZkNoUXRUQzU4L3F6NXJwRDdRcFB1aXc2TlNIM2cwb3BNWDlZRTFFWjNjcVErc2JPNWYvbVY4Nzk1SGlFNWJXOXRHemxNUlAvakJEOVFIVmpiM0gvOXhjMjV1WnUwL2NQZnUzUTBicGpwU280dGVuOXUzYjErOWV2V0xMNzRZR1JscGJCa2RIWDMyMldkMzd0elowZEVSTzFzbE5mNy85Z3AvUDZzK29ISjI3TisvNDlTcHQ2ZW5wOCtkTzVlZWZNM016RVNQVkJHRnJzL2s1T1RCZ3dmdjJ6ZzBOSlNXQnc0Y0dCNGUzcjU5ZThSY3RLSWRDOTUrVzRaeVU5ejYxT3YxbEo1VW1kZGVlKzJaWjU3WnZIbHpZM3M2R3JwMDZkTFJvMGRUbTJablo3ZHUzUm83SjYxbU1VTmZmdmxsclZhN2NPRkNXb2tlcXBTS1c1OHpaODZrNWJ2dnZudGZYOUtYQXdNRFhWMWRxVTBwUTJrOWFFQmEzYlp0MjA0dGtLSG1GTDAreXgzYXZQamlpMm1aam9EVWgzRDNaU2g2bk5Jb2JuMEdCd2RUZ0s1ZnY3NTc5KzRIdjl2UjBkRktMM3hTRG8wTVJVOVJHc1d0eitIRGgxTjlubnZ1dWRIUjBSZGVlT0dKSjU1WWZPa0hxSURpMW1mZnZuMFRFeE1IRHg1c25PUnFhSnh1Zi9MSko3M1l2S0ZjTDhkalVOejZaQXVuMWVmbjU2OWN1ZkxaWjU4MXJ2ZFpMRkY2WHZiR0cyOW9FSlJYb2V1VExieStjMkRCOFBEdzdkdTN2L3JxcTYrLy92cm8wYU5uRm56enpUZWVqbTJFVmE4MmhQVXJlbjJXMnJvZ1BTTWJHQmlvMVdyOS9mMGZmZlNSYzE1UVVnV3R6NnFYOC9mMTlhWDZPT01PNVZYUStwdzRjV0prWktSZXIzc3ZCVlJWUWV0ejZOQ2hWSitUSjArZVBYdjJvYS9zWEw1OE9TM2ZlKys5eHo0YWtJK0MxaWNkOGpRT2Y3WnMyVEl4TVpHK1hEeTlkZXZXclU4Ly9UUTk1MHJyKy9mdkR4MFRhRjVCNjVNTUR3OTNkbllPRFEwOStEYjM3THYzdUR2akR1VlYzUG9rcjcvKyt1SERoNjlldlpvT2RocHYrOHJjM3dlcW90RDF5YjQ3eTk3WDEzZjY5T25vV1ZyQ3F1K2U4L1k2OGxMMCtnQlZwVDVBRFBVQllxZ1BFRU45Z0JqcUE4UlFIeUNHK2dBeDFBZUlvVDVBRFBVQllxZ1BFRU45Z0JqcUE4UlFIeUNHK2dBeDFBZUlvVDVBRFBVQllxZ1BFRU45Z0JqcUE4UlFIeUNHK2dBeDhxblA3R3cyTlpYTGI2cUNtemR6L29WMjcxSzU3MTZpNUZPZnNiRjcvOWdnZGkrVjFIeDkydHR6SEtPeW10NUxkdTlhMkV1bDFueDllbnV6cnE1c2JpN0hZU29vN2FXbWY5RHVYVlhUdTVjaVdOZXh6N1ZyV2EyVzNibVQ0enlWMHRlWGJkdlc1TS9hdmF0YXorNmxDTmIxdWs5M2QzYjhlRjZUY0QrN2wycHp4aDJJb1Q1QURQVUJZcWdQRUVOOWdCanFBOFJRSHlDRytnQXgxQWVJb1Q1QURQVUJZcWdQRUVOOWdCanFBOFJRSHlDRytnQXgxQWVJb1Q1QURQVUJZcWdQRUVOOWdCanFBOFJRSHlDRytnQXgxQWVJb1Q1QURQVUJZcWdQRUVOOWdCanFBOFJRSHlDRytnQXgxQWVJb1Q1QURQVUJZcWdQRUVOOWdCanFBOFJRSHlDRytnQXgxQWVJb1Q1QURQVUJZbnl2UHJPejJkUlUwQ0JRSkRkdlJrL1FBcjVYbjdHeGUvOEFIb05ON2UzUkkwQ3grUnZaSUp0NmU3T3VybXh1TG5vUUtLcjBOOEpHdUhmc2MrMWFWcXRsZCs1RXp3TEYwOWVYYmRzV1BVUkYzWHZkcDdzN08zNDhlaENneFRqakRzUlFIeUNHK2dBeDFBZUlvVDVBRFBVQllxZ1BFRU45Z0JqcUE4UlFIeUNHK2dBeDFBZUlvVDVBRFBVQllxZ1BFRU45Z0JqcUE4UlFIeUNHK2dBeDFBZUlvVDVBRFBVQllxZ1BFRU45Z0JqcUE4UlFIeUNHK2dBeDFBZUlvVDVBRFBVQllxZ1BFRU45Z0JqcUE4UlFIeUNHK2dBeC9xOCswOVBaL0h6c0pGQTQ3ZTNaN3QzUlExVFh2ZnJzM1p0TlRVVVBBb1hVM1ozZHVKRjFka2JQVVVXYkxsNlVIbGpXekV4V3EyV0RnOUZ6Vk5HbXVibm9FYURZL0kxc2tPKzk2dHpUayszWkV6VUpGRWk5bm8yUFJ3OVJkZCtyVDByUHFWTkJnMENSakkycHo0Wnp4aDJJb1Q1QURQVUJZcWdQRUVOOWdCanFBOFJRSHlDRytnQXgxQWVJb1Q1QURQVUJZcWdQRUVOOWdCaDUxcWV0cmEyeGN2ZnUzUlVlZHZ2MjdVdVhMazB1U0YrT2pvNys5S2MvM2I1OWU0NlRBTVdYVzMzcTlmclM5ZVZxVXF2Vit2djdsMjRaR2hwS3kvUG56L2YxOWVVMURGQjh1ZFhud3c4L3pCWWlrdUtTMWg5YW4zVFUwMGpQSjU5OHNuUG56bzZPanJSKytmTGx2L3FydjByYnU3dTdkN3VGTjdTTWZPcno3YmZmam95TUhEaHdJQjIvZlBEQkIyazlIZEUwNHJKVWVzS1ZsdGV1WFZ0YW1YMzc5cVV0enozMzNMbHo1OVFIV2tjKzlibHk1VXBhRGd3TXBPWExMNzg4T1RtWnRxUVkzZmV3eGdzOUR5YW1zZVhNbVRPblQ1L09aUjZnK1BLcHo4Y2ZmNXlXdTNidHloYU9aUnBiSHF6UHhNVEVDci9rd2NjREZaWkRmVzdkdXBVT1d3WUhCemR2M3B5K1RNdTBuclljTzNic3FhZWVXc3R2YUx4aXJUN1FVbktveitlZmY1NldSNDRjV2R5UzFsTjkwdlkxMWljOU9LWG5wWmRlV3Y4d1FGbmtVSi9HYWF5bm4zNTZjVXRqUFcxZnkwbjB0OTU2Nnc5LytNUFpzMmNiaDA1QWkxaHZmUnBQbWtaSFI1ZWU0VXJyYWN2UTBOQUtGLzQwMUdxMStmbjUzL3ptTncrZUlBT3FiYjMxYVZ6bU03VGdvZDlkb1Q0cFBSOTg4RUU2NnBFZWFFSHJxay9qTXA4VkhyRGNoVC9ad2hPdTlLMVBQdm5FRXk1b1RldXFUK015bitYZUpORjRVOFdERi83OCs3Ly8rOS8rN2Q5T1RrNm05RFJPendNdGFGMzFhVnptczF4Qm5uLysrZXlCQzMvcTlmcU9IVHZTbHBzM2I2N3hqQmhRU2MzWHAzR1p6NGtUSjVaNzZyUjE2OWIwM2ZUa2EvSENuM1RVYy9Ma3laUWVaN2lBNXV2VHVNem4wS0ZES3p3bWZUZlZaL0hDbjQ4Kytxanhab3N0VzdZODlQRXIzNW9EcUpMbTY5UGYzNStPWWxZK29aNitteDZ6ZU9IUDBhTkhtLzZQQXlxbStmcXM4VGhsNlh1N0hOb0FpOXhaRllpaFBrQU05UUZpcUE4UVEzMkFHT29EeEZBZklJYjZBREhVQjRpaFBrQU05UUZpcUE4UVEzMkFHT29EeEZBZklJYjZBREhVQjRpaFBrQU05UUZpcUE4UVEzMkFHT29EeEZBZklJYjZBREhVQjRpaFBrQU05UUZpcUE4UVEzMkFHT29EeEZBZklJYjZBREhVQjRpaFBrQU05UUZpckxjKzA5UFovSHd1azFSTmUzdTJlL2Q2ZjRuZHU1eGNkaSt4MWxXZnZYdXpxYW1jQnFtaTd1N3N4bzJzczdQSkg3ZDdWN2JPM1V1NDV1dHo4YUsvalZYTXpHUzFXalk0Mk16UDJyMnJXcy91cFFpYXI4L2NYSTVqVkZiVGU4bnVYUXQ3cWRUeWVkVzVweWZic3llWDMxUUY5WG8yUHA3bkw3UjdsOHA5OXhJbG4vcWt2NDFUcDNMNVRWVXdOcGJ6bjRmZHUxVHV1NWNvenJnRE1kUUhpS0UrUUF6MUFXS29EeEJEZllBWTZnUEVVQjhnaHZvQU1kUUhpS0UrUUF6MUFXS29EeEJEZllBWTZnUDV1SERod2k5LytjdmYvLzczZi96akg2Tm5LUWYxZ1hWWmpNNmYvdlNuNkZsS1JuMmdHV2ZQbnYzVnIzNGxPdXVoUHZBSTNubm5uZmZmZi8vTEw3Lzg4NS8vSEQxTDZha1ByRTUwTm9MNndNcEcvdUVmL3Y3dTNVZUlUbHRiMjhaTlV5WHFBeXM3OFhkLzkvLys4eitIUC83NDQzLzd0MzlieXcvY3ZYdDNvMmVxZ05SbzlZRlZkSFQ4K08yM3o2YVYyZG5aNGVGSHlCQXJVeDlZcXgvLytNZG56OHBRYnRRSEhwa001VUo5b0hreXRCN3FBemxZbXFIb1dVcERmU0JQS1VQUkk1U0crZ0F4aWw2ZjI3ZHZYNzE2OVlzdnZoZ1pHV2xzR1IwZGZmYlpaM2Z1M05uUjBSRTdXeVUxcnBSYjRZcVZWUjhBYTFUbytreE9UaDQ4ZVBDK2pVTkRRMmw1NE1DQjRlSGg3ZHUzUjh3RjVLQzQ5YW5YNnlrOXFUS3Z2ZmJhTTg4OHMzbno1c2IyZERSMDZkS2xvMGVQcGpiTnpzNXUzYm8xZGs2Z09jV3R6NWt6WjlMeTNYZmZ2YTh2NmN1QmdZR3VycTdVcHBTaHRCNDBJTEF1UmEvUGNvYzJMNzc0WWxxbUl5RDFnWklxYm4wR0J3ZFRnSzVmdjc1NzkrNEh2OXZSMGVHRlR5aTE0dGJuOE9IRHFUN1BQZmZjNk9qb0N5Kzg4TVFUVHl5KzlBTlVRSEhyczIvZnZvbUppWU1IRHpaT2NqVTBUcmMvK2VTVFhtemVVTzVRdzJOUTNQcGtDNmZWNStmbnIxeTU4dGxubnpXdTkxa3NVWHBlOXNZYmIyZ1FsRmVoNjVNdHZMNXpZTUh3OFBEdDI3ZS8rdXFycjcvKyt1alJvMmNXZlBQTk41Nk9iWVJWcnphRTlTdDZmWmJhdWlBOUl4c1lHS2pWYXYzOS9SOTk5SkZ6WGxCU0JhM1BxcGZ6OS9YMXBmbzQ0dzdsVmRENm5EaHhZbVJrcEY2dmV5OEZWRlZCNjNQbzBLRlVuNU1uVDU0OWUvYWhyK3hjdm53NUxkOTc3NzNIUGhxUWo0TFdKeDN5TkE1L3RtelpNakV4a2I1Y1BMMTE2OWF0VHovOU5EM25TdXY3OSs4UEhSTm9Ya0hya3d3UEQzZDJkZzRORFQzNE52ZnN1L2U0TytNTzVWWGMraVN2di83NjRjT0hyMTY5bWc1MkdtLzd5dHpmQjZxaTBQWEp2anZMM3RmWGQvcjA2ZWhaV3NLcTc1N3o5anJ5VXZUNkFGV2xQa0FNOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIVUI0aWhQa0FNOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIVUI0aWhQa0FNOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIeXFjL3NiRFkxbGN0dnFvS2JOM1AraFhidlVybnZYcUxrVTUreHNYdi8yQ0IyTDVYVWZIM2EyM01jbzdLYTNrdDI3MXJZUzZYV2ZIMTZlN091cm14dUxzZGhLaWp0cGFaLzBPNWRWZE83bHlKWTE3SFB0V3RaclpiZHVaUGpQSlhTMTVkdDI5Ymt6OXE5cTFyUDdxVUkxdlc2VDNkM2R2eDRYcE53UDd1WGFuUEdIWWloUGtBTTlRRmlxQThRUTMyQUdPb0R4RkFmSUliNkFESFVCNGloUGtBTTlRRmlxQThRUTMyQUdPb0R4RkFmSUliNkFESFVCNGloUGtBTTlRRmlxQThRUTMyQUdPb0R4RkFmSUliNkFESFVCNGloUGtBTTlRRmlxQThRUTMyQUdPb0R4RkFmSUliNkFESFVCNGloUGtBTTlRRmlmSzgrczdQWjFGVFFJRkFrTjI5R1Q5QUN2bGVmc2JGNy93QWVnMDN0N2RFalFMSDVHOWtnbTNwN3M2NnViRzR1ZWhBb3F2UTN3a2E0ZCt4ejdWcFdxMlYzN2tUUEFzWFQxNWR0MnhZOVJFWGRlOTJudXpzN2ZqeDZFS0RGT09NT3hGQWZJSWI2QURIVUI0aWhQa0FNOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIVUI0aWhQa0FNOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIVUI0aWhQa0FNOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIVUI0aWhQa0FNOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIVUI0aWhQa0FNOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIVUI0anhmL1dabnM3bTUyTW5nY0pwYjg5Mjc0NGVvcnJ1MVdmdjNteHFLbm9RS0tUdTd1ekdqYXl6TTNxT0t0cDA4YUwwd0xKbVpySmFMUnNjako2amlqYk56VVdQQU1YbWIyU0RmTzlWNTU2ZWJNK2VxRW1nUU9yMWJIdzhlb2lxKzE1OVVucE9uUW9hQklwa2JFeDlOcHd6N2tBTTlRRmlxQThRUTMyQUdPb0R4RkFmSUliNkFESFVCNGloUGtBTTlRRmlxQThRUTMyQUdIbldwNjJ0cmJGeTkrN2RGUjUyL2ZyMTMvM3VkeU1qSTJuOXhJa1RlL2Z1M2Jkdlg0NWpBS1dRVzMzcTlmclM5ZTNidHovMFlTZFBubXgwcDJGa1FXclE4UEJ3WHBNQXBaQmJmVDc4OE1PMFBILytmSDkvZjFwL2FIMHVYNzZjV2pNNE9IanMyTEdubm5vcWJibDkrL2I3NzcrZk5qb0NnbGFUVDMyKy9mYmJWSkFEQnc3MDlmVjk4TUVIYVgxb2FLaWpvK08raC8zMnQ3OU55emZmZkhQejVzMk5MVnUzYmgwWUdFaVBmK2VkZDlRSFdrbys5Ymx5NVVwYXBvNms1Y3N2dnp3NU9abTJwQmpkOTdEVEMrN2JtQUtVbHVsSGNwbWtPSHhNU0tINGRJb0N5cWMrSDMvOGNWcnUyclVyTFJ1SE1HbkxnL1Y1cVBUa0sxdDQrVG1YU1FyQ3g0UVVrRStuS0pvYzZuUHIxcTB6Wjg0TURnNDJuaytsWlZwUFd4WmYzRmxCdlY0L2VmSms5dDF4VXpYNG1KQmk4dWtVUlpORGZUNy8vUE8wUEhMa3lPS1d0SjdxazdhdlVKKzMzbnByYUdnb3JhUkRwSnMzYnphZWYxV0RqMEFvTFAvVkZFb085ZW52NzAvTHA1OStlbkZMWXoxdDcrdnJXK0VIUjBkSHYvcnFxOVNwdEQ0OFBMemNTZnBTOHpFaDRYdzZSV0d0dHo2TnkzeFNSNWFlNFVycmFVczZ0Rm5od3AvWFgzKzlzZkxHRzIvODRoZS8yTEZqUnpvQ1d2V1pXdW40bUpCd1BwMmlzTlpibjhabFBrTUxIdnJkVlk5bzBuT3VsS3JKeWNuZi9PWTNyam1FMXJHdStqUXU4MW5oQWN0ZCtIT2Z4aUZQZXJENlFPdFlWMzBhbC9tY1AzLytvYS92MUdxMS92NytwUmYrSER4NE1CM2p6TS9Qcjlvam9QTFdWWi9HWlQ3TFhhUDgvUFBQWjkrLzhDZXRwUHI4NjcvKzYzMC9jdjM2OWJSODc3MzMxak1NVUM3TjE2ZHhtYytKRXljVzN6WnhuNjFidDZidnB1ZFRpeGYrN04rL1B5M2ZlZWVkSC8zb1I0dXZCOVhyOVgvOHgzOWMvQzdRSXBxdlQrTXluME9IRHEzd21QVGRWSi9GQzM5U2o2YW5wM2ZzMlBIZyt5clM5aXBkOGdPc3F2bjY5UGYzcDJkU0s1L1NTdDlOajFsNjRVL2FNanM3ZStuU3BhTkhqMllMejhWZWZ2bmw5RVJzdVFNb29LcWFyOC9LdHhCYk5ERXhjZCtXeHZ2YXEvVFdDcUFKN3F3S3hGQWZJSWI2QURIVUI0aWhQa0FNOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIVUI0aWhQa0FNOVFGaXFBOFFRMzJBR09yVFd0cmEycklWN3d5MzZnTWdMK29EeEZBZklJYjZBREhVQjRpaFBrQU05UUZpcUU4cmFweFdoMWpxQThSUW4xYTA2dFdHOEJpb0R4QkRmWUFZNmdQRVVCOGdodm9BTWRRSGlLRStRQXoxYVMycjNqYk1mY1Y0Yk5RSGlLRStRQXoxQVdLb0R4QkRmWUFZNmdQRVVCOGdodm9BTWRRSGlLRStRQXoxQVdLb0R4QkRmWUFZNmdQRVVCOGdodm9BTWRRSGlLRStRQXoxQVdLb0R4QkRmYXB2ZWpxYm40OGU0aEcxdDJlN2QwY1B3UVpUbjRyYnV6ZWJtb29lb2luZDNkbU5HMWxuWi9RY2JCajFxYktMRjh1YW5tUm1KcXZWc3NIQjZEbllNT3BUWlhOejBST3NUOW5uWjJYcTB5cDZlckk5ZTZLSFdJTjZQUnNmang2Q3gwSjlXa1ZLejZsVDBVT3N3ZGlZK3JRSzlRRmlxQThRUTMyQUdPb0R4RkFmSUliNkFESFVCNGloUGtBTTlRRmlxQThRUTMxSzV0VlhYOTIxYTFkdmIyOVhWMWYwTEVVeE16TXpQajUrNTg2ZDQ4ZVBSOC9DSTFDZmtwbWFtaG9iRy92NXozL2UwOVB6czUvOXJKVXoxSWpPdVhQbnBxZW4wNWV2dlBKSzlFUThHdlVwcTZrRkxaaWgrNkpEZWFsUDZiVkloa1NuZXRTbk9oN01VSmFWUGtPaVUySHFVd0kvL09FUC8vZC8vM2Z0ajEvTTBMWnRQVm4yc3l3cjQ5MUo3MlRabVgvNnAzTnZ2cm5XNkl3dGFLei80QWMvK0ovLytaK05HbzJjcUU4SnBQVGN2WHUzc2Y2VG4vd2tIUTZzNWFmU3NjK1BmdlRTbDEvMmJ1QmtHNmc5eS9wMjdtei83LysrTUxXMmUxTy84c29ydi83MXJ4dnJiVzF0R3pnYU9WR2Zxa25SZWVtbGw5S3lzN016SFFyODh6OUhEOVM4cnIvOHk4RlRwd2JuNXViU2s2OExGOWFhSWNwQ2ZTcGlhWFNpWjhsWlYxZlg0QUlacWhqMUtiY0tSK2RCTWxReDZsTktMUldkQjhsUU5haFB5Yno5OXRzOVBUMnRHWjBITGMzUUdsK01wempVcDJRV3J1TGhmbDBMb3FmZzBhZ1BFRU45Z0JqcUE4UlFIeUNHK2dBeDFBZUlvVDVBRFBVQllxZ1BFRU45V3NYc2JGYUs5MExkdkJrOUFZK0wrclNLc2JIc3V6di9RU0dvVDVXMXQwZFBzRDVsbjUrVnFVK1Y5ZlptWFYzWjNGejBITTN5anRwcVU1OHFTOGNPMTY1bHRWcDI1MDcwS0krdXJ5L2J0aTE2Q0RhUytsUmNkM2ZtNDRVcEp2VUJZcWdQRUdPbCtreFBaL1B6ajIyU2ttbHZ6M2J2amg0Q3ltelordXpkVzQ2TDB3SjFkMmMzYm1UdXNBek5lWGg5TGw2VW50WE56Tnc3blRSWXhvOHBoZ0o0ZUgzS2U0WElZMlpIUWROV2Y5VzVweWZicytjeFRGSWE5WG8yUGg0OUJKVGY2dlZKNlRsMWF1TUhLWSt4TWZXQkhEampEc1JRSHlDRytnQXgxQWVJb1Q1QURQVUJZcWdQRUVOOUlFL1QwOU03ZHV5SW5xSWMxQWR5a0tKejd0eTU4Zkh4bVptWnUzZnZSbzlURHVvRHpWc2FuZWhaeWtkOTRKR0pUaTdVQjlaS2RQS2xQckNLdWJucFk4ZEVKMy9xVTMxbHZFTnVrVzVjZS9IU3BWL096RXl0L1FmYTJ0bzJiSmpxU0h0SmZTcXV2SGZJTGN5TmEvLzZ5SkcvSGh5Y1M4YytGeTVjbUZyRDNuVE9hNDNVcDhwS2ZZZmNRdDI0dHF1cmEzREIzTndqWklpVnFVK1ZsZjNHcndXY1g0WnlwRDZ0b2l4M3lDM0xqV3RsYVAzVXAxV1U1UTY1cGJ0eDdZTVppcDZvTk5RSDhyR1lvZWhCU2tOOWdCanFBOFJRSHlDRytnQXgxQWVJb1Q1QURQVUJZcWdQRUtQbzlibDkrL2JWcTFlLytPS0xrWkdSeHBiUjBkRm5uMzEyNTg2ZEhSMGRzYk5SSE5QVDB6TXpNNzI5dmRHRDhBZ0tYWi9KeWNtREJ3L2V0M0ZvYUNndER4dzRNRHc4dkgzNzlvaTVLSXFsTnh0ODVaVlgxS2RjaWx1ZmVyMmUwcE1xODlwcnJ6M3p6RE9iTjI5dWJFOUhRNWN1WFRwNjlHaHEwK3pzN05hdFcyUG41UEZ6aDlOcUtHNTl6cHc1azVidnZ2dnVmWDFKWHc0TURIUjFkYVUycFF5bDlhQUJlZHhFcDJLS1hwL2xEbTFlZlBIRnRFeEhRT3BUZWFKVFZjV3R6K0RnWUFyUTlldlhkei9zQnI4ZEhSM3VYMWwxMDVjdTNjdk9HcU16dHFDeDdzN0twVkRjK2h3K2ZEalY1N25ubmhzZEhYM2hoUmVlZU9LSnhaZCthQUYzc3V6TC8vcXZ1YmsxMzkvd2xWZGUrZld2ZjcyaE01R3Y0dFpuMzc1OUV4TVRCdzhlYkp6a2FtaWNibi95eVNlOTJGeDE3Vm5XOXpkLzAzZjgrSjMwbk91amp6NUt5enQzN2tSUFJaNktXNTlzNGJUNi9QejhsU3RYUHZ2c3M4YjFQb3NsU3MvTDNuampEUTJxdlBiMjlyNEZLVDB5VkRHRnJrKzI4UHJPZ1FYRHc4TzNiOS8rNnF1dnZ2NzY2Nk5IajU1WjhNMDMzM2c2MWlKa3FIcUtYcCtsdGk1SXo4Z0dCZ1pxdFZwL2YzLzZuNkJ6WHExR2hpcWpvUFZwbkxOWTRheFcraDlmcW84ejdxM3N2Z3dKVU9rVXRENG5UcHdZR1JtcDErdmVTOEdxR2htS25vSkhWdEQ2SERwMEtOWG41TW1UWjgrZWZlZ3JPNWN2WDA3TDk5NTc3N0dQQnVTam9QVkpoenlOdzU4dFc3Wk1URXlrTHhkUGI5MjZkZXZUVHo5Tno3blMrdjc5KzBQSEJKcFgwUG9rdzhQRG5aMmRRME5ERDc3TlBmdnVQZTdPdUVONUZiYyt5ZXV2djM3NDhPR3JWNittZzUzRzI3NHk5L2VCcWloMGZiTHZ6ckwzOWZXZFBuMDZlaFlnVDBXdkQxQlY2Z1BFVUI4Z2h2b0FNZFNuVmN6T1psTlQwVU9zd2MyYjBSUHd1S2hQcXhnYnk3Njc4eDhVZ3ZwVVdYdDc5QVRyVS9iNVdabjZWRmx2YjliVmxhMzUzcVNGNCtPNXFrMTlxaXdkTzF5N2x0VnFXUmx2UHRIWGwyM2JGajBFRzBsOUtxNjdPenQrUEhvSWVCajFBV0tvRHhCRGZZQVk2Z1BFVUI4Z2h2b0FNZFFIaUtFK1FBejFBV0tvRHhCRGZZQVk2Z1BFVUI4Z3h1cjFLY3NkT1I4YnQvNkVYS3hlSDNma0JEYkN3K3ZqanBaclpFZEIweDVlbjdMZmtmT3hjZXRQYU5xeXh6N2x2U1BuWStQV243QWV5Nzd1NDQ2Y3dJWnl4aDJJb1Q1QURQVUJZcWdQRUVOOWdCanFBOFJRbitxYm5zN201Nk9IZUVUdDdkbnUzZEZEc01IVXArTDI3aTNybTRTN3U3TWJON0xPenVnNTJERHFVMlVYTDVZMVBjbk16TDJyN1FjSG8rZGd3NmhQbFpYOW5YcGxuNStWcVUrcjZPbko5dXlKSG1JTjZ2VnNmRHg2Q0I0TDlXa1ZLVDJuVGtVUHNRWmpZK3JUS3RRSGlLRStRQXoxQVdLb0R4QkRmWUFZNmdQRVVCOGdodm9BTWRRSGlLRStKVE0yTnRiVDA5UGQzUjA5Q0t5WCtwVE1tMisrK2VxcnIrN1lzZVBJa1NPOXZiMHlSSG1wVHlsTkx6aDI3SmdNVVY3cVUyNHlSSG1wVDBYSUVLV2pQaVhRdG1DTkQxNmFvYWVmUHBKbHZWbld2WkhUUVpQVXB3VCsvT2MvTDY3LzVDYy9tWm1aV2N0UHBRYjl4VjkwWjFublFvRGNIcG5DVVo4S1NrKzdYbnJwcGJRY0grOTg5ZFhvYVdBWjZsTVI3ZTN0aTlGSjY5SGp3T3JVcDl4RWgvSlNuMUlTSFNwQWZVb201V2JYcmwyaVF3V29UOG04L2ZiYjBTTkFQdFFIaUtFK1FBejFBV0tvRHhCRGZZQVk2Z1BFVUI4Z2h2b0FNZFFIaUtFK3JXSjJOcHVhaWg1aURXN2VqSjZBeDBWOVdzWFkyTDEvVUJ6cVUyVmxmeU5xMmVkblplcFRaYjI5V1ZkWE5qY1hQVWV6MHZ4VW1QcFVXVHAydUhZdHE5V3lPM2VpUjNsMGZYM1p0bTNSUTdDUjFLZml1cnV6NDhlamg0Q0hVUjhnaHZvQU1kUUhpS0UrUUF6MUFXS29EeEJEZllBWTZnUEVVQjhnaHZvQU1kUUhpS0UrUUF6MUFXS29EeEJEZllBWTZnUEVVQjhnaHZvQU1kUUhpS0UrUUF6MUFXS296OFlxeStjWFY1aVBaaTRzOWRsWVByOFlscU0rK2ZQNXY0WGx2NXBDVVovOGxmM3ppeXZNUnpNWGl2cmtyOVNmWDF4aFBwcTVhTlJuUS9qOFlsaVYrZ0F4MUFlSW9UNUFEUFVCWXFnUEVFTjlnQmpxQThSUUh5Q0crZ0F4MUFlSW9UNUFEUFVCWXFnUEVPTjc5WEViVUdod1A5Ykg0SHYxY1J0UTRMSFo1RjZUc0RKL0l4dGtrOXVBd3NyY2ozV0RiSEliVUZpQis3RnVuUDhQSWRNYjNhdjVvQThBQUFBQVNVVk9SSzVDWUlJPSIvPjwvZGl2PjwvZGl2PjxkaXYgc3R5bGU9ImNsZWFyOmJvdGg7IGxpbmUtaGVpZ2h0OjA7IHdpZHRoOjA7IGhlaWdodDowOyBtYXJnaW46MDsgcGFkZGluZzowOyI+wqA8L2Rpdj48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDMiPldpa2lwZWRpYTo8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gTWVjaGFuaWNhbCBkZXZpY2UgZm9yIG1vdmluZyBvciBjb250cm9sbGluZyBhIG1lY2hhbmlzbSBvciBhIHN5c3RlbS4gSXQgaXMgb3BlcmF0ZWQgYnkgYSBzb3VyY2Ugb2YgZW5lcmd5LCB1c3VhbGx5IGluIHRoZSBmb3JtIG9mIGFuIGVsZWN0cmljIGN1cnJlbnQsIGh5ZHJhdWxpYyBmbHVpZCBwcmVzc3VyZSBvciBwbmV1bWF0aWMgcHJlc3N1cmUsIGFuZCBjb252ZXJ0cyB0aGF0IGVuZXJneSBpbnRvIHNvbWUga2luZCBvZiBtb3Rpb24uPC9zcGFuPjwvcD48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDUiPlJhbmRvbSBIb3VzZSBEaWN0aW9uYXJ5Ojwvc3Bhbj48c3BhbiBjbGFzcz0iVDQiPiBhIHNlcnZvbWVjaGFuaXNtIHRoYXQgc3VwcGxpZXMgYW5kIHRyYW5zbWl0cyBhIG1lYXN1cmVkIGFtb3VudCBvZiBlbmVyZ3kgZm9yIHRoZSBvcGVyYXRpb24gb2YgYW5vdGhlciBtZWNoYW5pc20gb3Igc3lzdGVtLiA8L3NwYW4+PC9wPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMzMiPk1lcnJpYW0gV2Vic3RlcjogPC9zcGFuPmEgbWVjaGFuaWNhbCBkZXZpY2UgZm9yIG1vdmluZyBvciBjb250cm9sbGluZyBzb21ldGhpbmc8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDI5Ij5BbGdvcml0aG1pYyBtb2R1bGU8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOCI+SXQgaXMgYW4gPHNwYW4gY2xhc3M9IlQyMyI+YXBwbGljYXRpb248L3NwYW4+IHRoYXQgaXMgbm90IGV4ZWN1dGFibGUgYnkgaXRzZWxmIGJ1dCBjYW4gYmUgY29tcG9zZWQgdGhyb3VnaCB0b29saW5nIHN1Y2ggYXMgdGhlIFBST1RFVVMgbWFpbiB0b29sLjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDAiPkFwcGxpY2F0aW9uIGxldmVsPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMyI+SlBSICZhbXA7IEFMRlVTPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDExIj7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj5IaWdoZXN0IGxldmVsIG9uIHRoZSBTZW5zb3J5IFByb2Nlc3Npbmcgb3IgdGhlIERlY2lzaW9uIFByb2Nlc3MuPC9zcGFuPjwvcD48cCBjbGFzcz0iUDI1Ij5HaXZlIG9yIGRlZmluZSBrbm93bGVkZ2UgZGlyZWN0bHkgYXQgdGhlIHRhc2sgbGV2ZWwgYWNjb3JkaW5nIHRvIG1lYW5pbmcgYW5kIHVuZGVyc3RhbmRpbmcgY29tbW9ubHkgdXNlZCBpbiBhIHBhcnRpY3VsYXIgZG9tYWluLihJbnRlbGxpZ2VuY2UsIGtub3dsZWRnZSwgY29tYmF0IGFuZCBhY3Rpb25hYmxlIGluZm9ybWF0aW9uIGZvciBpbnN0YW5jZSksIGZ1cnRoZXIgcHJvY2Vzc2VkIGZvciBwYXJ0aWN1bGFyIG1pc3Npb24gbmVlZHMgYW5kIGRpcmVjdGx5IGxpbmtlZCB0byB0YWN0aWNhbCBiZWhhdmlvdXJzPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MCI+QXNzZXNzbWVudDwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij5TZWUgRXZhbHVhdGlvbjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQMzkiPkJlbmNobWFyazwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDIzIj5JdCBpcyBhIOKAnDxzcGFuIGNsYXNzPSJUMjMiPnByb2JsZW3igJ0gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMSI+YXNzb2NpYXRlZCB0byBhIHJlZmVyZW5jZSDigJw8L3NwYW4+PHNwYW4gY2xhc3M9IlQyMyI+c29sdXRpb248L3NwYW4+PHNwYW4gY2xhc3M9IlQxIj7igJ0uIEV2ZXJ5IG9mIHRoZSBvdGhlciBzb2x1dGlvbnMgY29taW5nIGFmdGVyIHdpbGwgYmUgY29tcGFyZWQgdG8gdGhpcyDigJw8L3NwYW4+PHNwYW4gY2xhc3M9IlQyMyI+YmVuY2htYXJrPC9zcGFuPjxzcGFuIGNsYXNzPSJUMSI+4oCdLjwvc3Bhbj48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDM5Ij5DaGFsbGVuZ2UgUHJvdmlkZXI8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOCI+VGhlIENoYWxsZW5nZSBQcm92aWRlciBkZWZpbmVzIHRoZSBzY2VuYXJpbywgcHJvYmxlbSwgY29uZmlndXJhdGlvbnMgYW5kIG1ldHJpY3M8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDM5Ij5DaGFsbGVuZ2VyPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjgiPlRoZSBDaGFsbGVuZ2VyIHByb3ZpZGVzIGEgU29sdXRpb24gdG8gYSBQcm9ibGVtPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MCI+Q2xhc3NpZmljYXRpb248L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQ1Ij5SYW5kb20gSG91c2UgRGljdGlvbmFyeSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ2Ij7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij4gVGhlIGFjdCBvZiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij5jbGFzc2lmeWluZyDCoHRoZSByZXN1bHQgb2YgY2xhc3NpZnlpbmcgb3IgYmVpbmcgY2xhc3NpZmllZC4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUNiI+74OoPC9zcGFuPjxzcGFuIGNsYXNzPSJUNCI+IENsYXNzaWZ5aW5nOiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxNiI+dG8gPC9zcGFuPjxzcGFuIGNsYXNzPSJUNCI+YXJyYW5nZSBvciBvcmdhbml6ZSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij5ieSBjbGFzc2VzOyBvcmRlciBhY2NvcmRpbmcgdG9jbGFzcy48L3NwYW4+PC9wPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMzMiPk1lcnJpYW0gV2Vic3Rlcjwvc3Bhbj4gPHNwYW4gY2xhc3M9IlQzNCI+74OoPC9zcGFuPiBzeXN0ZW1hdGljIGFycmFuZ2VtZW50IGluIGdyb3VwcyBvciBjYXRlZ29yaWVzIGFjY29yZGluZyB0byBlc3RhYmxpc2hlZCBjcml0ZXJpYS48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDI5Ij5Db21tdW5pY2F0aW9uIE1pZGRsZXdhcmU8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOCI+SXQgaXMgYW4g4oCcPHNwYW4gY2xhc3M9IlQyMyI+YXBwbGljYXRpb248L3NwYW4+4oCdIHRoYXQgaW5zaWRlIHRoZSDigJw8c3BhbiBjbGFzcz0iVDIzIj5zaW11bGF0b3I8L3NwYW4+4oCdIHRha2VzIGluIGNoYXJnZSB0aGUgY29tbXVuaWNhdGlvbnMgYmV0d2VlbiB0aGUg4oCcPHNwYW4gY2xhc3M9IlQyMyI+cm9ib3RpYyBtaWRkbGV3YXJlPC9zcGFuPuKAnSBhbmQgdGhlIOKAnDxzcGFuIGNsYXNzPSJUMjMiPmVudmlyb25tZW50IHNpbXVsYXRvcjwvc3Bhbj7igJ08L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDM5Ij5Db21tdW5pY2F0aW9uIFN5c3RlbTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDIyIj48c3BhbiBjbGFzcz0iVDM1Ij5BIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDI0Ij5jb21tdW5pY2F0aW9uIHN5c3RlbTwvc3Bhbj48c3BhbiBjbGFzcz0iVDM1Ij4gaXMgdXNlZCB0byBleGNoYW5nZSBkYXRhIChmaWxlcywgbWVzc2FnZXMsIG9yZGVycywgc3RhdHVzLGV0Yy4pIGluIHRleHQsIGF1ZGlvIGFuZC9vciB2aWRlbyBvciBvdGhlciBtb3JlIG9yIGxlc3Mgc3BlY2lmaWMgZm9ybWF0cyBiZXR3ZWVuIGRpZmZlcmVudCBjb21wdXRlcnMsIHRhc2tzLCB1c2VycyBhbmQvb3IgYWdlbnRzLjwvc3Bhbj48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDM5Ij5Db25maWd1cmF0aW9uPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjgiPkEgY29uZmlndXJhdGlvbiBpcyBjb21wb3NlZCBvZjo8L3A+PHAgY2xhc3M9IlAyOCI+LSBpbml0aWFsIHN0YXRlIG9mIHRoZSBwcm9ibGVtIGFuZCBzb2x1dGlvbjwvcD48cCBjbGFzcz0iUDI4Ij4tIGxpc3Qgb2YgZXh0ZXJuYWwgbW9kdWxlIGxpYnJhcmllczwvcD48cCBjbGFzcz0iUDI4Ij4tIHByb2JlIGRlZmluaXRpb25zIDwvcD48cCBjbGFzcz0iUDI4Ij4tIHNpbXVsYXRvciBhbmQgbWlkZGxld2FyZSBjaG9pY2VzPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlAzOSI+Q29udHJvbCBzdGF0aW9uPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjgiPkEgPHNwYW4gY2xhc3M9IlQyMSI+Y29udHJvbCBzdGF0aW9uPC9zcGFuPiAoQ1MpIGlzIGEgY29udHJvbCBjZW50cmUgdGhhdCBwcm92aWRlcyB0aGUgZmFjaWxpdGllcyBmb3IgaHVtYW4gY29udHJvbCBvZiByb2JvdHMgaW4gdGhlIDxzcGFuIGNsYXNzPSJUMjMiPkVudmlyb25tZW50PC9zcGFuPi4gPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MCI+RGV0ZWN0aW9uPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPkF0b21pY1N5c3RlbTpQaHlzaWNEZXZpY2U6U2Vuc29ySGFyZHdhcmU6T2JqZWN0RGV0ZWN0aW9uU3lzdGVtIC0gSGFyZHdhcmUgZm9yIHRoZSBkZXRlY3Rpb24gb2YgcGh5c2ljYWwgZW50aXRpZXMgaW4gdGhlIHN1cnJvdW5kaW5nIGVudmlyb25tZW50LiBUZWxlbWV0ZXIgbGFzZXIsIFJhZGFyLCBldGMuLi48L3A+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQzMyI+TWVycmlhbSBXZWJzdGVyICZhbXA7IFJhbmRvbSBIb3VzZSBEaWN0aW9uYXJ5Ojwvc3Bhbj4gVGhlIGFjdCBvZiBkZXRlY3RpbmcgPHNwYW4gY2xhc3M9IlQzNCI+74OoPC9zcGFuPiBEZXRlY3Rpbmc6IHRvIGRpc2NvdmVyIG9yIGRldGVybWluZSB0aGUgZXhpc3RlbmNlLCBwcmVzZW5jZSBvciBmYWN0IG9mLjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDAiPkVudmlyb25tZW50PC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMzAiPlRoZSBFbnZpcm9ubWVudDwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij4gZ3JvdXBzIGV2ZXJ5dGhpbmcgdGhhdCBleGlzdC4gTm90aGluZyBpcyBvdXRzaWRlIGFuZCBldmVyeXRoaW5nIGxpdmVzIGluIGl0LiBBbiBhbGlhcyBmb3IgZW52aXJvbm1lbnQgY291bGQgYmUgVW5pdmVyc2Ugb3IgV29ybGQgaW4gYW4gb250b2xvZ3kgbWVhbmluZy4gVGhpcyBpcyB0aGUgaGlnaGVzdCBwb3NzaWJsZSAiY29udGFpbmVyIiBmb3IgdGhlIHBoeXNpY2FsIG9iamVjdHMgdG8gZXhpc3QuIENvbnNpZGVyaW5nIHRoZSBzY2VuYXJpbyB0byBiZSByZXByZXNlbnRlZCB1c2luZyB0aGlzIGNvbmNlcHQgaXQgZXhwcmVzc2VzIGFsc28gdGhlIGJvdW5kYXJ5IHdlIGltYWdpbmUgZm9yIHRoZSBwcm9ibGVtLiBBcyBhbiBleGFtcGxlLCBmb3IgYSBtb2JpbGUgb24gZ3JvdW5kIHJvYm90IHRoZXJlIGlzIG5vIG5lZWQgdG8gcmVwcmVzZW50IGFueXRoaW5nIGNvbmNlcm5pbmcgd2F0ZXIuIFRoZSBkaWZmZXJlbmNlIGJldHdlZW4gcGh5c2ljYWwgb2JqZWN0cyBhbmQgdGhlIGVudmlyb25tZW50IGlzIHRoYXQgdGhlIFBoeXNpY2FsIEludGVyYWN0aW9uIGFyZSBwYXJ0IG9ubHkgb2YgdGhlIGxhdHRlciBhbmQgcHJvcGFnYXRlZCBpbnRvIGl0Ljwvc3Bhbj48L3A+PHAgY2xhc3M9IlAzNCI+SW1wb3J0YW50IHJlbWFyayA6IFBsZWFzZSBiZSBjYXJlIGluIHVzaW5nIHRoZSBjb21wbGV0ZSBhbmQgcmlnaHQgZm9ybXVsYXRpb24gd2hlbiB5b3UgaGF2ZSB0byBzcGVhayBhYm91dCBzcGVjaWZpYyBlbnZpcm9ubWVudHMgYXMgRW52aXJvbm1lbnQgU2ltdWxhdG9yLCBTb2Z0d2FyZSBEZXZlbG9wbWVudCBFbnZpcm9ubWVudCBvciBhbnkgb3RoZXIgZXF1aXZhbGVudCBpdGVtcy4gVGhlIHdvcmQgRW52aXJvbm1lbnQgdXNlZCBhbG9uZSBvbmx5IHJlZmVycyB0byB0aGUgc3Vycm91bmRpbmcgb2YgdGhlIHN5c3RlbXM6IG5hdHVyYWwsIGFydGlmaWNpYWwsIGh1bWFuLCBhbmltYWwsIHBsYW50LCBtaW5lcmFsLCBvciBhbnkgaXRlbXMgdGhhdCBtYXkgaW50ZXJhY3Qgd2l0aCB0aGUgcm9ib3QuPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlAyOSI+RW52aXJvbm1lbnQgU2ltdWxhdG9yPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjgiPkl0IGlzIGFuIOKAnDxzcGFuIGNsYXNzPSJUMjMiPmFwcGxpY2F0aW9uPC9zcGFuPuKAnSB0aGF0IGluc2lkZSB0aGUg4oCcPHNwYW4gY2xhc3M9IlQyMyI+c2ltdWxhdG9yPC9zcGFuPuKAnSB0YWtlcyBpbiBjaGFyZ2Ugd2hhdGV2ZXIgaXMgbm90IHRoZSDigJw8c3BhbiBjbGFzcz0iVDIzIj5yb2JvdChzKScgc3lzdGVtPC9zcGFuPuKAnS48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDM5Ij5FdmFsdWF0aW9uPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjgiPlRoZSBldmFsdWF0aW9uIG9mIGEgc29sdXRpb24gY29uc2lzdHMgaW4gYXBwbHlpbmcgdGhlIG1ldHJpY3MgdG8gdGhlIHJlc3VsdHMgb2Ygb25lIG9yIG1vcmUgZXhlY3V0aW9ucyAoZWFjaCBleGVjdXRpb24gY29ycmVzcG9uZHMgdG8gYSBjb25maWd1cmF0aW9uKTwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQMzkiPkV4dGVybmFsIENvbW11bmljYXRpb248L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyMCI+QW4gPHNwYW4gY2xhc3M9IlQyMyI+ZXh0ZXJuYWwgY29tbXVuaWNhdGlvbnMgc3lzdGVtPC9zcGFuPiBpcyBhIGNvbGxlY3Rpb24gb2YgaW5kaXZpZHVhbCBjb21tdW5pY2F0aW9ucyBuZXR3b3JrcywgdHJhbnNtaXNzaW9uIHN5c3RlbXMsIHJlbGF5IHN0YXRpb25zLCB0cmlidXRhcnkgc3RhdGlvbnMsIGFuZCBkYXRhIHRlcm1pbmFsIGVxdWlwbWVudCAoRFRFKSB1c3VhbGx5IGNhcGFibGUgb2YgaW50ZXJjb25uZWN0aW9uIGFuZCBpbnRlcm9wZXJhdGlvbiB0byBmb3JtIGFuIGludGVncmF0ZWQgd2hvbGUuIFRoZSBjb21wb25lbnRzIG9mIGEgY29tbXVuaWNhdGlvbnMgc3lzdGVtIHNlcnZlIGEgY29tbW9uIHB1cnBvc2UsIGFyZSB0ZWNobmljYWxseSBjb21wYXRpYmxlLCB1c2UgY29tbW9uIHByb2NlZHVyZXMsIHJlc3BvbmQgdG8gY29udHJvbHMsIGFuZCBvcGVyYXRlIGluIHVuaXNvbi48L3A+PHAgY2xhc3M9IlAyMSI+VGhlcmUgYXJlIHVzZWQgdG8gdHJhbnNtaXQgb3JkZXIsIHN0YXR1cywgZGF0YSBhbmQvb3IgdmlkZW8gc2lnbmFscyBiZXR3ZWVuIE1vYmlsIFBsYXRmb3JtKHMpIGFuZC9vciBPcGVyYXRvciBDb250cm9sIFVuaXQocyk8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDM5Ij5GcmFtZXdvcms8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOCI+QSBpbmNvbXBsZXRlIHNvZnR3YXJlIGVudGl0eSB0aGF0IGFsbG93cyB0byBidWlsZCBhbiA8c3BhbiBjbGFzcz0iVDIzIj5hcHBsaWNhdGlvbjwvc3Bhbj48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQwIj5HdWlkYW5jZTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDMiPk1lcnJpYW0gV2Vic3Rlcjwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ3Ij7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gVGhlIGFjdCBvciBwcm9jZXNzIG9mIGd1aWRpbmcgPC9zcGFuPjxzcGFuIGNsYXNzPSJUNyI+74OoPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+IEd1aWRpbmc6IHRvIGFjdCBhcyBhIGd1aWRlIHRvIGRpcmVjdCBpbiBhIHdheSBvciBjb3Vyc2UuIEEgZGV2aWNlIGZvciBzdGVhZHlpbmcgb3IgZGlyZWN0aW5nIHRoZSBtb3Rpb24gb2Ygc29tZXRoaW5nLjwvc3Bhbj48L3A+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQzMyI+UmFuZG9tIEhvdXNlIERpY3Rpb25hcnkgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTciPu+DqCA8L3NwYW4+VGhlIHByb2Nlc3MgYnkgd2hpY2ggdGhlIGZsaWdodCBvZiBhIG1pc3NpbGUgb3Igcm9ja2V0IG1heSBiZSBhbHRlcmVkIGluIHNwZWVkIGFuZCBkaXJlY3Rpb24gaW4gcmVzcG9uc2UgdG8gY29udHJvbHMgc2l0dWF0ZWQgZWl0aGVyIHdob2xseSBpbiB0aGUgcHJvamVjdGlsZSBvciBwYXJ0bHkgYXQgYSBiYXM8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQwIj5JZGVudGlmaWNhdGlvbjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDUiPlJhbmRvbSBIb3VzZSBEaWN0aW9uYXJ5PC9zcGFuPjxzcGFuIGNsYXNzPSJUOCI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDciPu+DqDwvc3Bhbj48c3BhbiBjbGFzcz0iVDE2Ij4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUOSI+QW4gYWN0IG9yIGluc3RhbmNlIG9mIGlkZW50PC9zcGFuPjxzcGFuIGNsYXNzPSJUMTAiPmk8L3NwYW4+PHNwYW4gY2xhc3M9IlQ5Ij5meWluZzwvc3Bhbj48c3BhbiBjbGFzcz0iVDgiPiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ3Ij7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQ5Ij5JZGVudGlmeWluZzogdG8gcmVjb2duaXplIG9yIGVzdGFibGlzaCBhcyBiZWluZyBhIHBhcnRpY3VsYXIgcGVyc29uLCBjb21wb25lbnQgb3I8L3NwYW4+PHNwYW4gY2xhc3M9IlQxIj4gdGhpbmcuPC9zcGFuPjwvcD48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDMzIj5NZXJyaWFtIFdlYnN0ZXI8L3NwYW4+PHNwYW4gY2xhc3M9IlQyMiI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDE3Ij7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQxOSI+IDwvc3Bhbj5BbiBhY3Qgb2YgaWRlbnRpZnlpbmcgPHNwYW4gY2xhc3M9IlQzNCI+74OoPC9zcGFuPiBJZGVudGlmeWluZyA6IHRvIGVzdGFibGlzaCB0aGUgaWRlbnRpdHkgb2Y8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQxIj5MZXZlbHMgb2YgQ29nbml6YW5jZTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDMiPkpQUiAmYW1wOyBBTEZVUzwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ2Ij7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj5UaGUgbGV2ZWxzIG9mIHdoYXQgYSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMiI+VU1TIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPmNhbiBrbm93IG9yIHVuZGVyc3RhbmQgYmFzZWQgb24gaXRzIHNlbnNvcnkgcHJvY2Vzc2luZyBjYXBhYmlsaXR5Ljwvc3Bhbj48L3A+PHAgY2xhc3M9IlAyNSI+VGhyZWUgbGV2ZWxzIGFyZSBkZWZpbmVkIGluIFBST1RFVVMgKDxzcGFuIGNsYXNzPSJUMjIiPlJhdyBkYXRhPC9zcGFuPiwgPHNwYW4gY2xhc3M9IlQyMiI+UGh5c2ljYWwgbGV2ZWw8L3NwYW4+IGFuZCA8c3BhbiBjbGFzcz0iVDIyIj5BcHBsaWNhdGlvbiBsZXZlbDwvc3Bhbj4pPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MSI+TGV2ZWxzIG9mIEZ1c2lvbjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDMzIj5KUFIgJmFtcDsgQUxGVVM8L3NwYW4+IDxzcGFuIGNsYXNzPSJUMzQiPu+DqDwvc3Bhbj4gRnVzaW9uIGRhdGEgcHJvY2Vzc2luZyB0YXNrcyBkZWNvbXBvc2l0aW9uLiBFYWNoIG9mIHRoZSBkZWZpbmVkIGxldmVscyBvZiBmdXNpb24gYWRkcyBwcm9ncmVzc2l2ZWx5IGdyZWF0ZXIgbWVhbmluZyBhbmQgaW52b2x2ZXMgbW9yZSBBbmFseXNpcy4gVGhlIG51bWJlcnMgb2YgZnVzaW9uIGxldmVscyBhbmQgdGhlaXIgbWVhbmluZyBpcyBjdXJyZW50bHkgbm90IGRlZmluZWQgaW4gUFJPVEVVUzwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDEiPkxldmVscyBvZiBQZXJjZXB0aW9uPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMzMiPkpQUiAmYW1wOyBBTEZVUyA8L3NwYW4+PHNwYW4gY2xhc3M9IlQyNSI+74OoPC9zcGFuPiBUaGUgcHJvZ3Jlc3NpdmUgcmVzdWx0cyBvZiBzZW5zb3J5IGluZm9ybWF0aW9uIGFmdGVyIHRoZSBkYXRhIGhhdmUgZ29uZSB0aHJvdWdoIG11bHRpcGxlIGxldmVscyBvZiBzZW5zb3J5IHByb2Nlc3NpbmcuIFRoZSBudW1iZXJzIG9mIExldmVscyBvZiBwZXJjZXB0aW9uIGFuZCB0aGVpciBkZWZpbml0aW9uIGlzIGN1cnJlbnRseSBub3QgZGVmaW5lZCBpbiBQUk9URVVTPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MSI+TG9jYWxpc2F0aW9uPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPlNlZSBvbnRvbG9neSDigJMgc3lzdGVtOnJvYm90aWNTdWJTeXN0ZW06ZGV2aWNlU3lzdGVtOnNlbnNvclN5c3RlbTpsb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0gKG5vIGRlZi4pPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlAyOSI+TWV0cmljPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjgiPkEg4oCcPHNwYW4gY2xhc3M9IlQyMyI+bWV0cmljPC9zcGFuPuKAnSBpcyB0aGUgY29tcG9zaXRpb24gb2Ygb25lIG9yIG11bHRpcGxlIOKAnDxzcGFuIGNsYXNzPSJUMjMiPnByb2Jlczwvc3Bhbj7igJ0nIHJlY29yZGluZ3MgYXNzb2NpYXRlZCB0byBhIHZhbGlkaXR5IGRvbWFpbiBpbiBvcmRlciB0byBhbGxvdyBhIG1lYXN1cmUgb2YgwqBwZXJmb3JtYW5jZXMuIEEg4oCcPHNwYW4gY2xhc3M9IlQyMyI+bWV0cmljPC9zcGFuPuKAnSBjYW4gYmUgcmVsYXRlZCB0byBtdWx0aXBsZSByZWNvcmRzIHByb3ZpZGVkIGJ5IG11bHRpcGxlIOKAnDxzcGFuIGNsYXNzPSJUMjMiPnNpbXVsYXRpb25zPC9zcGFuPuKAnS4gVGhpcyBpcyBvZnRlbiB0aGUgY2FzZSBvZiBzdGF0aXN0aWNhbCBhcHByb2FjaCB0byBhc3Nlc3NtZW50LjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDIiPk1pc3Npb248L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQzMyI+SlBSICZhbXA7IEFMRlVTPC9zcGFuPiA8c3BhbiBjbGFzcz0iVDM0Ij7vg6g8L3NwYW4+IFRoZSBoaWdoZXN0LWxldmVsIHRhc2sgYXNzaWduZWQgdG8gdGhlIFVNUy48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQyIj48c3BhbiBjbGFzcz0iVDE2Ij5NaXNzaW9uPC9zcGFuPiA8c3BhbiBjbGFzcz0iVDE2Ij5Db29yZGluYXRpb248L3NwYW4+PC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMzMiPkpQUiAmYW1wOyBBTEZVUzwvc3Bhbj4gPHNwYW4gY2xhc3M9IlQzNCI+74OoPC9zcGFuPiBDb29yZGluYXRpb24gYW5kIHRpbWluZyBtYW5hZ2VtZW50IG9mIHRoZSA8c3BhbiBjbGFzcz0iVDIyIj5Nb3Rpb24gUGxhbm5pbmc8L3NwYW4+IGFuZCB0aGUgPHNwYW4gY2xhc3M9IlQyMiI+TWlzc2lvbiBQYXlsb2FkPC9zcGFuPiBkdXJpbmcgdGhlIDxzcGFuIGNsYXNzPSJUMjIiPk1pc3Npb24gZXhlY3V0aW9uICZhbXA7IENvbnRyb2w8L3NwYW4+PC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MiI+PHNwYW4gY2xhc3M9IlQxNiI+TWlzc2lvbjwvc3Bhbj4gPHNwYW4gY2xhc3M9IlQxNiI+RXhlY3V0aW9uICZhbXA7IENvbnRyb2w8L3NwYW4+PC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMzMiPkpQUiAmYW1wOyBBTEZVUzwvc3Bhbj4gPHNwYW4gY2xhc3M9IlQzNCI+74OoPC9zcGFuPiBJdCBpcyBpbiBjaGFyZ2Ugb2YgdGhlIGV4ZWN1dGlvbiBhbmQgdGhlIGNvbnRyb2wgb2YgdGhlIDxzcGFuIGNsYXNzPSJUMjIiPk1pc3Npb24gUGxhbi48L3NwYW4+PC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MiI+PHNwYW4gY2xhc3M9IlQxNiI+TWlzc2lvbjwvc3Bhbj4gPHNwYW4gY2xhc3M9IlQxNiI+TW9kdWxlPC9zcGFuPjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij5TZWUgTWlzc2lvbiBQYXlsb2FkPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MiI+PHNwYW4gY2xhc3M9IlQxNiI+TWlzc2lvbjwvc3Bhbj4gPHNwYW4gY2xhc3M9IlQxNiI+UGF5bG9hZDwvc3Bhbj48L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+U2VlIE1pc3Npb24gTW9kdWxlPC9wPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMzMiPkpQUiAmYW1wOyBBTEZVUzwvc3Bhbj4gPHNwYW4gY2xhc3M9IlQzNCI+74OoPC9zcGFuPiA8c3BhbiBjbGFzcz0iVDIyIj5QYXlsb2FkPC9zcGFuPihzKSB0byBiZSB1c2VkIHRvIGNvbXBsZXRlIGEgc3BlY2lmaWMgPHNwYW4gY2xhc3M9IlQyMiI+TWlzc2lvbjwvc3Bhbj4uPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MiI+PHNwYW4gY2xhc3M9IlQxNiI+TWlzc2lvbjwvc3Bhbj4gPHNwYW4gY2xhc3M9IlQxNiI+UGxhbjwvc3Bhbj48L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQzIj5KUFIgJmFtcDsgQUxGVVM8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTEiPu+DqDwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiBmaWxlIGRlc2NyaWJpbmcgdGhlIHRhc2tzIHRvIGJlIGRvbmUgYW5kIHRoZSByZWxhdGlvbnNoaXBzIGJldHdlZW4gdGhlc2UgdGFza3MgVGhlIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDEyIj5NaXNzaW9uIFBsYW4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+Y2FuIGJlIGdlbmVyYXRlZCBlaXRoZXIgaW4gYWR2YW5jZSBieSBvcGVyYXRvcnMgb24gYW4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTIiPk9DVTwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiBvciBpbiByZWFsLXRpbWUgYnkgdGhlIG9uIGJvYXJkLCBldmVudHVhbGx5IGRpc3RyaWJ1dGVkIHNvZnR3YXJlIHN5c3RlbXMuIFRoZSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMiI+TWlzc2lvbiBQYW48L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gaXMgdGhlIG1haW4gaW5wdXQgPC9zcGFuPmZvcjxzcGFuIGNsYXNzPSJUMiI+IHRoZSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMiI+TWlzc2lvbiBFeGVjdXRpb24gJmFtcDsgQ29udHJvbDwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPi4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+VGhlPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTIiPiBNaXNzaW9uIFBsYW48L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gYWRkcmVzcyB0aGUgdGhyZWUgZm9sbG93aW5nIHRhc2s6PC9zcGFuPjwvcD48dWw+PGxpPjxwIGNsYXNzPSJQNDYiIHN0eWxlPSJtYXJnaW4tbGVmdDowY207Ij48c3BhbiBjbGFzcz0iQnVsbGV0XzIwX1N5bWJvbHMiIHN0eWxlPSJkaXNwbGF5OmJsb2NrO2Zsb2F0OmxlZnQ7bWluLXdpZHRoOjBjbSI+4oCiLjwvc3Bhbj5Nb3Rpb24gUGxhbm5pbmc8c3BhbiBjbGFzcz0ib2RmTGlFbmQiLz7CoDwvcD48L2xpPjxsaT48cCBjbGFzcz0iUDQ2IiBzdHlsZT0ibWFyZ2luLWxlZnQ6MGNtOyI+PHNwYW4gY2xhc3M9IkJ1bGxldF8yMF9TeW1ib2xzIiBzdHlsZT0iZGlzcGxheTpibG9jaztmbG9hdDpsZWZ0O21pbi13aWR0aDowY20iPuKAoi48L3NwYW4+TWlzc2lvbiBQYXlsb2FkPHNwYW4gY2xhc3M9Im9kZkxpRW5kIi8+wqA8L3A+PC9saT48bGk+PHAgY2xhc3M9IlA0NiIgc3R5bGU9Im1hcmdpbi1sZWZ0OjBjbTsiPjxzcGFuIGNsYXNzPSJCdWxsZXRfMjBfU3ltYm9scyIgc3R5bGU9ImRpc3BsYXk6YmxvY2s7ZmxvYXQ6bGVmdDttaW4td2lkdGg6MGNtIj7igKIuPC9zcGFuPk1pc3Npb24gQ29vcmRpbmF0aW9uPHNwYW4gY2xhc3M9Im9kZkxpRW5kIi8+wqA8L3A+PC9saT48L3VsPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MiI+PHNwYW4gY2xhc3M9IlQxNiI+TWlzc2lvbjwvc3Bhbj4gPHNwYW4gY2xhc3M9IlQxNiI+UGxhbm5pbmc8L3NwYW4+PC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMyI+SlBSICZhbXA7IEFMRlVTPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDExIj7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gVGhlIG1pc3Npb24gcGxhbm5pbmcgaXMgdGhlIHByb2Nlc3MgdXNlZCB0byBnZW5lcmF0ZSB0YWN0aWNhbCBnb2FscywgYSByb3V0ZSAoZ2VuZXJhbCBvciBzcGVjaWZpYyksIGNvbW1hbmRpbmcgc3RydWN0dXJlLCBjb29yZGluYXRpb24sIGFuZCB0aW1pbmcgZm9yIG9uZSBvciB0ZWFtcyBvZiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMiI+VU1TPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+cy4gVGhlIHJlc3VsdCBvZiB0aGUgTWlzc2lvbiBQbGFubmluZyBpcyBhIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDEyIj5NaXNzaW9uIFBsYW48L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4uIFRoZSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMiI+TWlzc2lvbiBQbGFubmluZzwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiBpbnZvbHZlcyB0d28gbWFpbiBzdWIgZnVuY3Rpb25zOjwvc3Bhbj48L3A+PHVsPjxsaT48cCBjbGFzcz0iUDQ3IiBzdHlsZT0ibWFyZ2luLWxlZnQ6MGNtOyI+PHNwYW4gY2xhc3M9IkJ1bGxldF8yMF9TeW1ib2xzIiBzdHlsZT0iZGlzcGxheTpibG9jaztmbG9hdDpsZWZ0O21pbi13aWR0aDowY20iPuKAoi48L3NwYW4+TWlzc2lvbiBQcmVwYXJhdGlvbjxzcGFuIGNsYXNzPSJvZGZMaUVuZCIvPsKgPC9wPjwvbGk+PGxpPjxwIGNsYXNzPSJQNDciIHN0eWxlPSJtYXJnaW4tbGVmdDowY207Ij48c3BhbiBjbGFzcz0iQnVsbGV0XzIwX1N5bWJvbHMiIHN0eWxlPSJkaXNwbGF5OmJsb2NrO2Zsb2F0OmxlZnQ7bWluLXdpZHRoOjBjbSI+4oCiLjwvc3Bhbj5NaXNzaW9uIEV4ZWN1dGlvbiAmYW1wOyBDb250cm9sIDxzcGFuIGNsYXNzPSJvZGZMaUVuZCIvPsKgPC9wPjwvbGk+PC91bD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDIiPjxzcGFuIGNsYXNzPSJUMTYiPk1pc3Npb248L3NwYW4+IDxzcGFuIGNsYXNzPSJUMTYiPlByZXBhcmF0aW9uPC9zcGFuPjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDMiPkpQUiAmYW1wOyBBTEZVUzwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMSI+74OoPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+IEl0IGdlbmVyYXRlcyB0aGUgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTIiPk1pc3Npb24gUGxhbjwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiB1c2VkIHRvIGRlc2NyaWJlIHRoZSBlbnRpcmUgdGFza3MgdG8gYmUgZG9uZSBpbiBvcmRlciB0byBleGVjdXRlIHRoZSBtaXNzaW9uLiA8L3NwYW4+PC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MSI+TW9iaWxpdHk8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQzIj5KUFIgJmFtcDsgQUxGVVM8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTEiPu+DqDwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiBUaGUgY2FwYWJpbGl0eSBvZiBhIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDEyIj5VTVM8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gdG8gbW92ZSBmcm9tIHBsYWNlIHRvIHBsYWNlLCB3aXRoIGl0cyBvd24gcG93ZXIgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+YW5kIHdoaWxlIHVuZGVyIGFueSBtb2RlIG9yIG1ldGhvZCBvZiBjb250cm9sLiBUaGlzIGZ1bmN0aW9uIHJlY2VpdmUgaGlnaCBsZXZlbCwgbW90aW9uIHNldCBwb2ludHMgZXhwcmVzc2VkIGluIHRlcm0gb2Ygc3BlZWQsIHN0ZWVyIG9yIGVxdWl2YWxlbnQgYW5kIGNvbXB1dGUgdGhlIHBoeXNpY2FsIGFjdHVhdG9ycyBzZXRzIHBvaW50cyBhY2NvcmRpbmcgdG8gdGhlIGFkZHJlc3NlZCBwbGF0Zm9ybS48L3NwYW4+PC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MSI+TW90aW9uIFBsYW48L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQzMyI+SlBSICZhbXA7IEFMRlVTPC9zcGFuPiA8c3BhbiBjbGFzcz0iVDM0Ij7vg6g8L3NwYW4+IEl0IGluY2x1ZGVzIHRoZSByZXN1bHRzIG9mIHRoZSA8c3BhbiBjbGFzcz0iVDIyIj5Nb3Rpb24gUGxhbm5pbmc8L3NwYW4+IGFuZCBpdCBpcyB1c2VkIGFzIGlucHV0IGJ5IHRoZSA8c3BhbiBjbGFzcz0iVDIyIj5HdWlkYW5jZTwvc3Bhbj4uPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MSI+TW90aW9uIFBsYW5uaW5nPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPlNlZSBUcmFqZWN0b3J5IHBsYW5uaW5nPC9wPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMyI+SlBSICZhbXA7IEFMRlVTIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDEzIj7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gRGVmaW5lIHRoZSByb3V0ZSAoZ2VuZXJhbCBvciBzcGVjaWZpYykgdG8gYmUgdXNlZCBmb3IgZG9pbmcgdGhlIG1pc3Npb24uIFRoZSByb3V0ZSBkZXNjcmlwdGlvbiBhbmQgY2hhcmFjdGVyaXN0aWNzIGlzIHN0b3JlZCBpbiB0aGUgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTIiPk1vdGlvbiBQbGFuLjwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiA8L3NwYW4+PC9wPjx1bD48bGk+PHAgY2xhc3M9IlA0OCIgc3R5bGU9Im1hcmdpbi1sZWZ0OjBjbTsiPjxzcGFuIGNsYXNzPSJCdWxsZXRfMjBfU3ltYm9scyIgc3R5bGU9ImRpc3BsYXk6YmxvY2s7ZmxvYXQ6bGVmdDttaW4td2lkdGg6MGNtIj7igKIuPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+VGhlIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDEyIj5Nb3Rpb25zPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+IHRvIGJlIHVzZWQgKHJvdXRlLCBnZW5lcmFsIG9yIHNwZWNpZmljLCB0byBiZSB1c2VkIGZvciBkb2luZyB0aGUgbWlzc2lvbikuPC9zcGFuPjxzcGFuIGNsYXNzPSJvZGZMaUVuZCIvPsKgPC9wPjwvbGk+PGxpPjxwIGNsYXNzPSJQNDgiIHN0eWxlPSJtYXJnaW4tbGVmdDowY207Ij48c3BhbiBjbGFzcz0iQnVsbGV0XzIwX1N5bWJvbHMiIHN0eWxlPSJkaXNwbGF5OmJsb2NrO2Zsb2F0OmxlZnQ7bWluLXdpZHRoOjBjbSI+4oCiLjwvc3Bhbj5Ib3cgdGhlc2UgTW90aW9ucyBoYXZlIHRvIGJlIHVzZWQ8c3BhbiBjbGFzcz0ib2RmTGlFbmQiLz7CoDwvcD48L2xpPjxsaT48cCBjbGFzcz0iUDQ4IiBzdHlsZT0ibWFyZ2luLWxlZnQ6MGNtOyI+PHNwYW4gY2xhc3M9IkJ1bGxldF8yMF9TeW1ib2xzIiBzdHlsZT0iZGlzcGxheTpibG9jaztmbG9hdDpsZWZ0O21pbi13aWR0aDowY20iPuKAoi48L3NwYW4+VGhlIHBhcmFtZXRlcnMgYW5kIGNvbnN0cmFpbnRzIGFzc29jaWF0ZWQgdG8gdGhlIHNlbGVjdGVkIDxzcGFuIGNsYXNzPSJUMjIiPk1vdGlvbjwvc3Bhbj5zLjxzcGFuIGNsYXNzPSJvZGZMaUVuZCIvPsKgPC9wPjwvbGk+PC91bD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDEiPk1vdG9yaXNhdGlvbiBTeXN0ZW08L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQyMyI+RWxlY3Ryb21lY2hhbmljYWwgPC9zcGFuPnN5c3RlbSwgaW5jbHVkaW5nIDxzcGFuIGNsYXNzPSJUMjciPm1vdG9ycyw8L3NwYW4+IDxzcGFuIGNsYXNzPSJUMjgiPnJlZHVjZXJzLCA8L3NwYW4+PHNwYW4gY2xhc3M9IlQyNyI+bWVjaGFuaWNhbCB0cmFuc21pc3Npb25zPC9zcGFuPiBhbmQgPHNwYW4gY2xhc3M9IlQyNyI+c29mdHdhcmUgZHJpdmVyczwvc3Bhbj4gdXNlZCB0byA8c3BhbiBjbGFzcz0iVDIzIj5tb3ZlIHRoZSByb2JvdCBvciBhIHBhcnQgb2YgaXQuPC9zcGFuPjxzcGFuIGNsYXNzPSJUMSI+IEl0IGhhcyB0byBiZSBjbGVhcmx5IGRpZmZlcmVudGlhdGVkIGZyb20gb3RoZXIgZW1iZWRkZWQ8L3NwYW4+PHNwYW4gY2xhc3M9IlQyMyI+IEFjdHVhdG9ycyBTeXN0ZW1zLjwvc3Bhbj48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQxIj5PbnRvbG9neTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij5EYXRhIG9iZXlpbmcgdGhlIFczQyBzdGFuZGFyZCBhbmQgdXNlZCB0byByZXByZXNlbnQga25vd2xlZGdlczwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDEiPlBheWxvYWQ8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQ1Ij5XaWtpcGVkaWE8L3NwYW4+PHNwYW4gY2xhc3M9IlQxNiI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDE5Ij7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQxNiI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDQiPkluIG1pbGl0YXJ5IGFpcmNyYWZ0IG9yIHNwYWNlIGV4cGxvcmF0aW9uLCB0aGUgcGF5bG9hZCBpcyB0aGUgY2FycnlpbmcgY2FwYWNpdHkgb2YgYW4gYWlyY3JhZnQgb3Igc3BhY2Ugc2hpcCwgaW5jbHVkaW5nIGNhcmdvLCB3ZWFwb25zLCBtdW5pdGlvbnMsIHNjaWVudGlmaWMgaW5zdHJ1bWVudHMgb3IgZXhwZXJpbWVudHMuPC9zcGFuPjwvcD48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDIiPkJ5IGV4dGVuc2lvbiDigJw8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMiI+UGF5bG9hZDwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPuKAnSBjYW4gYmUgdXNlZCB0byBuYW1lIGFsbCB0aGUgY2FycmllZCBzeXN0ZW1zIHVzZWQgdG8gY29tcGxldGUgYSBzcGVjaWZpYyBtaXNzaW9uLiBJbiB0aGlzIGNhc2UsIHNjaWVudGlmaWMgaW5zdHJ1bWVudCBvciA8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj5leHBlcmltZW50IGFzIHRvIGJlIHVuZGVyc3Rvb2QgYXMgYW55IGluc3RydW1lbnRzIGZvciBtZWFzdXJlbWVudHMgb3IgYWN0aW9uLCBjYXJyaWVkIG9uIHRoZSByb2JvdGljIHBsYXRmb3JtLjwvc3Bhbj48L3A+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQzMyI+SlBSICZhbXA7IEFMRlVTIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDI1Ij7vg6g8L3NwYW4+IEEgc2VsZi1jb250YWluZWQgc3Vic3lzdGVtIGluc3RhbGxlZCBvbiBhIFVNUyB0aGF0IGVuYWJsZXMgdGhlIDxzcGFuIGNsYXNzPSJUMjIiPlVNUzwvc3Bhbj4gdG8gcGVyZm9ybSBkZXNpZ25lZCBtaXNzaW9ucy4gSXQgY2FuIGJlIGVhc2lseSBpbnN0YWxsZWQgYW5kIHJlcGxhY2VkIGJ5IGFub3RoZXIgdHlwZSBvZiBtaXNzaW9uIG1vZHVsZTwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDEiPlBheWxvYWQgTGV2ZWw8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+wqA8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQxIj5QZXJjZXB0aW9uPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMjAiPldpa2lwZWRpYTwvc3Bhbj48c3BhbiBjbGFzcz0iVDE5Ij46PC9zcGFuPjxzcGFuIGNsYXNzPSJUMTYiPiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxOCI+UGVyY2VwdGlvbjwvc3Bhbj48c3BhbiBjbGFzcz0iVDE2Ij4gaXMgdGhlIHByb2Nlc3Mgb2YgYXR0YWluaW5nIGF3YXJlbmVzcyBvciB1bmRlcnN0YW5kaW5nIMKgb2Y8L3NwYW4+PHNwYW4gY2xhc3M9IlQxOCI+IFNlbnNvcnkgSW5mb3JtYXRpb24gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTYiPmZyb20gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTgiPlNlbnNvcnM8L3NwYW4+PHNwYW4gY2xhc3M9IlQxNiI+IHRocm91Z2ggPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTgiPlNlbnNvcnkgUHJvY2Vzc2luZzwvc3Bhbj48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQxIj5QaHlzaWNhbCBsZXZlbDwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDMzIj5KUFIgJmFtcDsgQUxGVVMgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjUiPu+DqDwvc3Bhbj4gaW5mb3JtYXRpb24uIEZ1cnRoZXIgcHJvY2Vzc2VkLCByZWZpbmVkIGFuZCBzdHJ1Y3R1cmVkIGRhdGEgdGhhdCBpcyBodW1hbiB1bmRlcnN0YW5kYWJsZSAobGVuZ3RoLCBhbmdsZSwgZGlzdGFuY2UsIGFuZCBvdGhlcnMgYmFzaWMgcGh5c2ljYWwgZGltZW5zaW9ucyk8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQxIj5QbGF0Zm9ybSBMZXZlbDwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij7CoDwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDEiPlBsYXRmb3JtIFN1cGVydmlzb3I8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQyIj5JbiBjaGFyZ2Ugb2YgdGhlIGNvbnRyb2wgb2YgdGhlIGJlaGF2aW91ciBvZiB0aGUgcGxhdGZvcm0uIFRoaXMgc3VwZXJ2aXNvcnkgZnVuY3Rpb24gZG9lc27igJl0IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPmRpcmVjdGx5IGFkZHJlc3MgdGhlIHNlY3VyaXR5IG9mIHRoZSBwbGF0Zm9ybSAoU2VlIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDEyIj5QbGF0Zm9ybSBzZWN1cml0eTwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPikgYnV0IHRoZSBsb2dpY2FsIGNvbnNpc3RlbmN5IG9mIHRoZSBwbGF0Zm9ybSAocGh5c2ljYWwgc3RhdGVzLCBsb2dpY2FsIG1vZGVzLCByZWNlaXZlIG9yZGVycyk8L3NwYW4+PC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MSI+UGxhdGZvcm0gU2VjdXJpdHk8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+SW4gY2hhcmdlIG9mIHRoZSBzZWN1cml0eSBvZiB0aGUgcGxhdGZvcm0uIFRoZSBiYXNpYyBzZWN1cml0eSBvZiB0aGUgcGxhdGZvcm0gbXVzdCBiZSBkb25lIHRocm91Z2ggYW4gaGFyZHdhcmUgc3lzdGVtIChtb3JlIG9yIGxlc3MgY29tcGxleCksIGJ1dCBhcyB3ZSBoYXZlIHRvIGZhY2UgdG8gY29tcGxleCBzeXN0ZW0gd2UgY2FuIGNvbnNpZGVyIHVzaW5nIGEgc3BlY2lmaWMgc29mdHdhcmUgY29tcG9uZW50IGluIGNoYXJnZSBvZiB0aGUgc2VjdXJpdHkgb2YgdGhlIHBsYXRmb3JtIGFuZCBpbnZvbHZpbmcgc29tZSBldmVudHMgbm90IGRpcmVjdGx5IGNvbWluZyBmcm9tIHRoZSDigJxoYXJkd2FyZSBzYWZldHkgY29tcG9uZW504oCdIGJ1dCB0aGF0IGNvdWxkIGJlIGdlbmVyYXRlZCwgYXMgYW4gZXhhbXBsZSwgYnkgdGhlIHBlcmNlcHRpb24gKGVuZW15LCBleHRlcm5hbCBoYXphcmQpLjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQMzkiPlByb2JlPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjgiPkEgcHJvYmUgb2JzZXJ2ZXMgdGhlIHN0YXRlIG9mIHN5c3RlbXMgYW5kIHByb2R1Y2VzIHJlc3VsdHMuPC9wPjxwIGNsYXNzPSJQMjgiPkl0IGlzIG9uZSBvZiB0aGUgdG9vbCBvZiB0aGUg4oCcPHNwYW4gY2xhc3M9IlQyMyI+c2ltdWxhdG9yPC9zcGFuPuKAnS4gQSBzb2Z0d2FyZSDigJw8c3BhbiBjbGFzcz0iVDIzIj5wcm9iZeKAnTwvc3Bhbj4gaXMgYSBkZWZpbml0aW9uIG9mIHdoYXQgdmFyaWFibGVzIHdpbGwgaGF2ZSB0byBiZSBhY2Nlc3NlZCB3aGVuIGV4ZWN1dGluZyB0aGUg4oCcPHNwYW4gY2xhc3M9IlQyMyI+c2ltdWxhdG9yPC9zcGFuPuKAnSBpbiBvcmRlciB0byByZWNvcmQgdGhlaXIgdmFsdWVzLjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQMzkiPlByb2JsZW08L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOCI+QSBwcm9ibGVtIGlzOjwvcD48cCBjbGFzcz0iUDI4Ij4tIHRoZSBkZWZpbml0aW9uIG9mIHRoZSBhcmNoaXRlY3R1cmUgb2Ygb25lIG9yIG1vcmUgcm9ib3RzIGFuZCB0aGVpciBlbnZpcm9ubWVudCAoaW4gb3VyIGNhc2UsIHVzaW5nIHRoZSBwcm90ZXVzIG1haW4gdG9vbCk7PC9wPjxwIGNsYXNzPSJQMjgiPi0gdGhlIGRlZmluaXRpb24gaW5zaWRlIHRoZSByb2JvdChzKSBhcmNoaXRlY3R1cmUgb2Ygb25lIG9yIG11bHRpcGxlIGNvbXBvbmVudHMgaW4gd2hpY2ggaXQgaXMgbmVjZXNzYXJ5IHRvIGRldmVsb3Ag4oCcPHNwYW4gY2xhc3M9IlQyMyI+c29sdXRpb25zPC9zcGFuPuKAnTs8L3A+PHAgY2xhc3M9IlAyOCI+LSB0aGUgZGVmaW5pdGlvbiBvZiDCoOKAnDxzcGFuIGNsYXNzPSJUMjMiPnByb2Jlczwvc3Bhbj7igJ0gdGhhdCBhbGxvdyDigJw8c3BhbiBjbGFzcz0iVDIzIj5zaW11bGF0aW9uPC9zcGFuPuKAnSBleHBsb2l0YXRpb247PC9wPjxwIGNsYXNzPSJQMjgiPi0gdGhlIGRlZmluaXRpb24gb2YgdGhlIOKAnDxzcGFuIGNsYXNzPSJUMjMiPm1ldHJpY3M8L3NwYW4+4oCdIGFuZCB0aGVpciBhc3NvY2lhdGVkIHZhbGlkaXR5IGRvbWFpbiBpbiBvcmRlciB0byBtZWFzdXJlIHRoZSDigJw8c3BhbiBjbGFzcz0iVDIzIj5zb2x1dGlvbuKAnTwvc3Bhbj4gcXVhbGl0eSBhbmQgY29tcGFyZSBpdCB0byBvdGhlciA8c3BhbiBjbGFzcz0iVDIzIj7igJxzb2x1dGlvbnPigJ0uPC9zcGFuPjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQMzkiPlByb3RldXMgU2ltdWxhdG9yPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjgiPlNpbXVsYXRvciB3aGljaCBob3N0cyBhIHByb2JsZW0uPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MSI+UmF3IERhdGE8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQzIj5KUFIgJmFtcDsgQUxGVVMgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTMiPu+DqDwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiBkYXRhLCBvciBvYnNlcnZlZCBkYXRhLiBJbiBpbml0aWFsbHkgcHJvY2Vzc2VkIGZvcm1zIGFmdGVyIG1lYXN1cmVkIGJ5IHNlbnNvcnMuPC9zcGFuPjwvcD48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDIwIj5XaWtpcGVkaWE8L3NwYW4+PHNwYW4gY2xhc3M9IlQxNiI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDE5Ij7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQxNiI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDE2Ij5SYXcgZGF0YSBpcyBhIHRlcm0gZm9yIGRhdGEgY29sbGVjdGVkIG9uIHNvdXJjZSB3aGljaCBoYXMgbm90IGJlZW4gc3ViamVjdGVkIHRvIHByb2Nlc3Npbmcgb3IgYW55IG90aGVyIG1hbmlwdWxhdGlvbjsgaXQgaXMgYWxzbyBrbm93biBhcyBwcmltYXJ5IGRhdGEuIFJhdyBkYXRhIGlzIGRhdGEgdGhhdCBoYXMgbm90IGJlZW4gYWxyZWFkeSBwcm9jZXNzZWQgZm9yIHVzZSwgYnV0IGl0IGNvdWxkIGhhdmUgYmVlbiBwcm9jZWVkIGluIG9yZGVyIHRvIGdldCB1c2VhYmxlIGFuZCB1bmRlcnN0YW5kYWJsZSB2YWx1ZSBhcyB2b2x0cywgYW1wZXJlcyBvciBhbnkgb3RoZXIgYmFzaWMgcGh5c2ljYWwgdmFsdWVzIGluc3RlYWQgb2Ygc2ltcGxlIGJpbmFyeSBvdXQgc2NhbGUgbnVtYmVyLjwvc3Bhbj48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQxIj5SZWNvZ25pdGlvbjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDIwIj5NZXJyaWFtIFdlYnN0ZXI8L3NwYW4+PHNwYW4gY2xhc3M9IlQxNiI+IMKgKyA8L3NwYW4+PHNwYW4gY2xhc3M9IlQyMCI+UmFuZG9tIEhvdXNlIERpY3Rpb25hcnk8L3NwYW4+PHNwYW4gY2xhc3M9IlQxOCI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDE3Ij7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQxNiI+IGFuIGFjdCBvZiByZWNvZ25pemluZyBvciB0aGUgc3RhdGUgb2YgYmVpbmcgcmVjb2duaXplZCAsIHRoZSBpZGVudGlmaWNhdGlvbiBvZiBzb21ldGhpbmcgYXMgaGF2aW5nIGJlZW4gcHJldmlvdXNseSBzZWVuLCBoZWFyZCwga25vd24sIGV0Yy4sIHRoZXBlcmNlcHRpb27CoG9mIHNvbWV0aGluZyBhcyBleGlzdGluZyBvciB0cnVlOyByZWFsaXphdGlvbiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxOSI+74OoPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTYiPiBSZWNvZ25pemluZyB0byBpZGVudGlmeSBhcyBzb21ldGhpbmcgb3Igc29tZW9uZSBwcmV2aW91c2x5IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDE2Ij5zZWVuLCBrbm93biwgZXRjLCB0byBpZGVudGlmeSBmcm9tIGtub3dsZWRnZSBvZiBhcHBlYXJhbmNlIG9yIGNoYXJhY3RlcmlzdGljcywgdG8gcGVyY2VpdmUgYXMgZXhpc3Rpbmcgb3IgdHJ1ZTsgcmVhbGl6ZTogdG8gYmUgdGhlIGZpcnN0IHRvIHJlY29nbml6ZSBhIGZhY3QuIDwvc3Bhbj48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQwIj5SZWd1bGF0b3IgU3lzdGVtPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMTMiPjxzcGFuIGNsYXNzPSJUMjkiPkEgUjwvc3Bhbj48c3BhbiBjbGFzcz0iVDMwIj5lZ3VsYXRvcjwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMzAiPlN5c3RlbTwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij4gb3IgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMzAiPlJlZ3VsYXRvcjwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij4gaXMgYSBkZXZpY2UsIGluY2x1ZGluZyBoYXJkd2FyZSBhbmQgc29mdHdhcmUsIHdoaWNoIGhhcyB0aGUgZnVuY3Rpb24gb2YgbWFpbnRhaW5pbmcgYW5kIG1vbml0b3JpbmcgYSBkZXNpZ25hdGVkIGNoYXJhY3RlcmlzdGljIG9mIGEgc3lzdGVtICg8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMCI+QWN0dWF0b3I8L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+LCA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMCI+TW90b3Jpc2F0aW9uIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij5vciA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMCI+U2Vuc29yIFN5c3RlbTwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij4pLiBJdCBjYW4gYmUgdXNlZCBnZW5lcmFsbHkgdG8gY29ubm90ZSBhbnkgc2V0IG9mIHZhcmlvdXMgY29udHJvbHMgb3IgZGV2aWNlcyBmb3IgcmVndWxhdGluZyBvciBjb250cm9sbGluZyBpdGVtcyBvciBvYmplY3RzLjwvc3Bhbj48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQwIj5Sb2JvdDwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij5BbiBlbGVjdHJvbWVjaGFuaWNhbCBzeXN0ZW0gdGhhdCBjYW4gcmVhY3QgdG8gc2Vuc29yeSBpbnB1dCBhbmQgY2Fycnkgb3V0IHByZWRldGVybWluZWQgbWlzc2lvbnMuIEEgcm9ib3QgaXMgdHlwaWNhbGx5IGVxdWlwcGVkIHdpdGggb25lIG9yIG1vcmUgdG9vbHMgb3IgY2VydGFpbiBjYXBhYmlsaXRpZXMuIChTZWUgPHNwYW4gY2xhc3M9IlQyMiI+VW5tYW5uZWQgU3lzdGVtPC9zcGFuPik8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDM5Ij5Sb2JvdGljIE1pZGRsZXdhcmU8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOCI+U29mdHdhcmUgZnJhbWV3b3JrIHdoaWNoIGhvc3RzIGNvbXBsZXRlbHkgb3IgcGFydGx5IHRoZSBzb2Z0d2FyZSBzeXN0ZW0gb2YgYSBSb2JvdC48L3A+PHAgY2xhc3M9IlAzNiI+SXQgaXMgYW4gPHNwYW4gY2xhc3M9IlQyMyI+YXBwbGljYXRpb248L3NwYW4+IHRoYXQgaXMgZXhlY3V0ZWQgZWl0aGVyIG9uIGFuIGFjdHVhbCByb2JvdCBzeXN0ZW0gb3IgaW4gYSBjb21wdXRlciBhbmQgdGhhdCBhbGxvd3MgdGhlIGV4ZWN1dGlvbiBvZiBjb250cm9sIHJvYm90IGFwcGxpY2F0aW9ucy48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDM5Ij5Sb2JvdGljIHN5c3RlbSBvZiBzeXN0ZW1zPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMTQiPjxzcGFuIGNsYXNzPSJUMjEiPlN5c3RlbSBvZiBzeXN0ZW1zPC9zcGFuPiBpcyBhIGNvbGxlY3Rpb24gb2YgdGFzay1vcmllbnRlZCBvciBkZWRpY2F0ZWQgc3lzdGVtcyB0aGF0IHBvb2wgdGhlaXIgcmVzb3VyY2VzIGFuZCBjYXBhYmlsaXRpZXMgdG9nZXRoZXIgdG8gb2J0YWluIGEgbmV3LCBtb3JlIGNvbXBsZXgsICdtZXRhLXN5c3RlbScgd2hpY2ggb2ZmZXJzIG1vcmUgZnVuY3Rpb25hbGl0eSBhbmQgcGVyZm9ybWFuY2UgdGhhbiBzaW1wbHkgdGhlIHN1bSBvZiB0aGUgY29uc3RpdHVlbnQgc3lzdGVtcy4gQ3VycmVudGx5LCBzeXN0ZW1zIG9mIHN5c3RlbXMgaXMgYSBjcml0aWNhbCByZXNlYXJjaCBkaXNjaXBsaW5lIGZvciB3aGljaCBmcmFtZXMgb2YgcmVmZXJlbmNlLCB0aG91Z2h0IHByb2Nlc3NlcywgcXVhbnRpdGF0aXZlIGFuYWx5c2lzLCB0b29scywgYW5kIGRlc2lnbiBtZXRob2RzIGFyZSBpbmNvbXBsZXRlLiBUaGUgbWV0aG9kb2xvZ3kgZm9yIGRlZmluaW5nLCBhYnN0cmFjdGluZywgbW9kZWxsaW5nLCBhbmQgYW5hbHlzaW5nIHN5c3RlbSBvZiBzeXN0ZW1zIHByb2JsZW1zIGlzIHR5cGljYWxseSByZWZlcnJlZCB0byBhcyA8YSBocmVmPSJodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1N5c3RlbV9vZl9TeXN0ZW1zX0VuZ2luZWVyaW5nIj5zeXN0ZW0gb2Ygc3lzdGVtcyBlbmdpbmVlcmluZzwvYT4uIDwvcD48cCBjbGFzcz0iUDE0Ij5BIOKAnDxzcGFuIGNsYXNzPSJUMjMiPnJvYm90aWMgc3lzdGVtIG9mIHN5c3RlbXPigJ0gPC9zcGFuPmlzIGEgc3BlY2lhbGlzZWQgc3lzdGVtIG9mIHN5c3RlbXMgd2hlcmUgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIOKAnDxzcGFuIGNsYXNzPSJUMjMiPnJvYm904oCdPC9zcGFuPiwgb25lIOKAnDxzcGFuIGNsYXNzPSJUMjMiPmNvbnRyb2wgc3RhdGlvbjwvc3Bhbj7igJ0gYW5kIG9uZSDigJw8c3BhbiBjbGFzcz0iVDIzIj5odW1hbiBhZ2VudOKAnTwvc3Bhbj4uIMKgPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlAyOSI+T250b2xvZ3k8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOCI+PHNwYW4gY2xhc3M9IlQyMyI+RGF0YTwvc3Bhbj4gY29uc2lzdGVudCB3aXRoIHRoZSBXM0Mgc3RhbmRhcmQgYW5kIHVzdWFsbHkgdXNlZCB0byBkZXNjcmliZSBrbm93bGVkZ2UuIEl0IGNhbiBiZSB1c2VkIGluIHRoZVAgUk9URVVTIGNvbnRleHQgYXMgYSB3YXkgdG8gZGVzY3JpYmUgZm9ybWFsbHkga25vd2xlZGdlIGV2ZW4gaWYgbm90IHVzaW5nIFczQyBzdGFuZGFyZDwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDEiPlJvYm90IFBsYXRmb3JtPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPk1vYmlsZSBwYXJ0IG9mIGEgPHNwYW4gY2xhc3M9IlQyMiI+Um9ib3RpYyBzeXN0ZW08L3NwYW4+LjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDAiPlJvYm90aWMgc3lzdGVtPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPlN5c3RlbSBpbmNsdWRpbmcgb25lIG9yIHNldmVyYWwgPHNwYW4gY2xhc3M9IlQyMiI+Um9ib3RzPC9zcGFuPi48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDM5Ij5TY2VuYXJpbzwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDM3Ij5DYWRyZSBvcMOpcmF0aW9ubmVsIGRhbnMgbGVxdWVsIGVzdCBkw6lmaW5pIHVuIHByb2Jsw6htZTwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDEiPlNlbnNvcjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDMiPkpQUiAmYW1wOyBBTEZVUyA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMyI+74OoPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+IEVxdWlwbWVudCB0aGF0IGRldGVjdHMsIG1lYXN1cmVzLCBhbmQvb3IgcmVjb3JkcyBwaHlzaWNhbCBwaGVub21lbmEsIGFuZCBpbmRpY2F0ZXMgb2JqZWN0cyBhbmQgYWN0aXZpdGllcyBieSBtZWFucyBvZiBlbmVyZ3kgb3IgcGFydGljbGVzIGVtaXR0ZWQsIHJlZmxlY3RlZCwgb3IgbW9kaWZpZWQgYnkgdGhlIG9iamVjdHMgYW5kIGFjdGl2aXRpZXMuPC9zcGFuPjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQMjkiPlNlcXVlbmNlcjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI4Ij5JdCBpcyBhbiDigJw8c3BhbiBjbGFzcz0iVDIzIj5ldm9sdXRpb24gbW9kZWw8L3NwYW4+4oCdIHRoYXQgYWxsb3dzIHRvIHNvcnQgwqB0YXNrcyB0byBiZSBleGVjdXRlZCBpbiBvcmRlciB0byBrbm93IHdoZW4gdGhleSB3aWxsIGJlIGV4ZWN1dGVkLjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQMjkiPlNpbXVsYXRpb248L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOCI+UmVzdWx0IG9mIHRoZSDigJw8c3BhbiBjbGFzcz0iVDIzIj5zaW11bGF0b3I8L3NwYW4+4oCdIGV4ZWN1dGlvbiBnb3QgdGhyb3VnaCB0aGUg4oCccHJvYmVz4oCdIHB1dCBpbnRvIHRoZSDigJw8c3BhbiBjbGFzcz0iVDIzIj5zaW11bGF0b3I8L3NwYW4+4oCdIGVpdGhlciBzdGF0aWNhbGx5IG9yIGR5bmFtaWNhbGx5LjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQMjkiPlNpbXVsYXRvcjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI4Ij5JdCBpcyBhbiA8c3BhbiBjbGFzcz0iVDIzIj5hcHBsaWNhdGlvbjwvc3Bhbj4gdGhhdCBpbiBQUk9URVVTIGNvbnRleHQgbXVzdCBiZSBnZW5lcmF0ZWQgYnkgdGhlIHBsYXRmb3JtIGFuZCB0aGF0IGFmdGVyIGEgPHNwYW4gY2xhc3M9IlQyMyI+Y29uZmlndXJhdGlvbjwvc3Bhbj4gcGhhc2UgaXMgZXhlY3V0ZWQ8L3A+PHAgY2xhc3M9IlAzOCI+ZGFucyBsZSBjYWRyZSBkJ3VuIMKrPHNwYW4gY2xhc3M9IlQyMyI+wqBwcm9ibMOobWXCoDwvc3Bhbj7CuywgYydlc3QgbGUgZMOpdmVsb3BwZW1lbnQgZCd1biBhbGdvcml0aG1lIHBvdXZhbnQgbHVpIG3Dqm1lIGNvbXBvcnRlciB1bmUgYXJjaGl0ZWN0dXJlIGV0IHBlcm1ldHRhbnQgbG9ycyBkZSBsJ2V4w6ljdXRpb24gZHUgwqs8c3BhbiBjbGFzcz0iVDIzIj7CoHNpbXVsYXRldXLCoDwvc3Bhbj7CuyBkJ29idGVuaXIgZGVzIHZhbGV1cnMgcG91ciBsZXMgwqs8c3BhbiBjbGFzcz0iVDIzIj7CoG3DqXRyaXF1ZXPCoDwvc3Bhbj7CuyBkw6lmaW5pcyBsb3JzIGRlIGxhIGNvbnN0aXR1dGlvbiBkdSDCqzxzcGFuIGNsYXNzPSJUMjMiPsKgcHJvYmzDqG1lwqA8L3NwYW4+wrsuIEFtZW5lciB1bmUgwqs8c3BhbiBjbGFzcz0iVDIzIj7CoHNvbHV0aW9uwqA8L3NwYW4+wrsgY29uc2lzdGUgZG9uYyDDoCBjb25mcm9udGVyIHNvbiBhbGdvcml0aG1lIMOgIGxhIMKrPHNwYW4gY2xhc3M9IlQyMyI+wqBtw6l0cmlxdWXCoDwvc3Bhbj7CuyDDoCB0cmF2ZXJzIGxlIMKrPHNwYW4gY2xhc3M9IlQyMyI+wqBzaW11bGF0ZXVywqA8L3NwYW4+wrsgcGFyIGxlcyDCqzxzcGFuIGNsYXNzPSJUMjMiPsKgc2ltdWxhdGlvbnPCoDwvc3Bhbj7CuyBvYnRlbnVlczs8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDM5Ij5Tb2x1dGlvbjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI4Ij5JbiBhIOKAnHByb2JsZW08c3BhbiBjbGFzcz0iVDIzIj7igJ08L3NwYW4+IGNvbnRleHQsIGl0IGlzIGFuIOKAnDxzcGFuIGNsYXNzPSJUMjMiPmFsZ29yaXRobeKAnTwvc3Bhbj4gaXRzZWxmIHBvc3NpYmx5IGludGVncmF0aW5nIGFuIOKAnDxzcGFuIGNsYXNzPSJUMjMiPmFyY2hpdGVjdHVyZeKAnTwvc3Bhbj4gdGhhdCBhbGxvd3MgZHVyaW5nIHRoZSBleGVjdXRpb24gb2YgYSDigJw8c3BhbiBjbGFzcz0iVDIzIj5zaW11bGF0b3LigJ08L3NwYW4+IHRvIGV4dHJhY3QgdmFsdWVzIGZyb20gdGhlIGRlZmluZWQg4oCcPHNwYW4gY2xhc3M9IlQyMyI+bWV0cmljc+KAnTwvc3Bhbj4gdGhhdCByZW1haW5zIGluIHRoZWlyIHZhbGlkaXR5IGRvbWFpbi48L3A+PHAgY2xhc3M9IlAyOCI+U3VicGFydCBvZiBpbnRlcmVzdCBpbiB0aGUgc29mdHdhcmUgc3lzdGVtIG9mIGEgcm9ib3QuIEl0cyBpbXBsZW1lbnRhdGlvbiBpcyBwcm92aWRlZCBieSBhIENoYWxsZW5nZXIuPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlAyOSI+U3luY2hyb25pc2VyPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjgiPkl0IGlzIGFuIOKAnDxzcGFuIGNsYXNzPSJUMjMiPmV2b2x1dGlvbiBtb2RlbDwvc3Bhbj7igJ0gdGhhdCBhbGxvd3MgdG8gc3luY2hyb25pc2UgdGFza3MgZXhlY3V0aW9uIHdpdGggcmVzcGVjdCB0byB0aW1lPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlAyOSI+VGFyZ2V0PC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMTQiPml0IGlzIHRoZSDigJw8c3BhbiBjbGFzcz0iVDIzIj5zaW11bGF0b3I8L3NwYW4+4oCdIHRoYXQgaXMgZ2VuZXJhdGVkIGJ5IHRoZSBwbGF0Zm9ybSBhbmQgdGhhdCBpbmNsdWRlcyBldmVyeXRoaW5nIG5lZWRlZCBieSB0aGUg4oCcPHNwYW4gY2xhc3M9IlQyMyI+Y29tcGV0aXRvcjwvc3Bhbj7igJ0gdG8gdmVyaWZ5IC8gYXNzZXNzIGl0cyBjb250cmlidXRpb248L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQzIj5UcmFqZWN0b3J5IFBsYW5uaW5nIDwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij5TZWUgTW90aW9uIHBsYW5uaW5nPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MyI+VW5tYW5uZWQgc3lzdGVtPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMzMiPkpQUiAmYW1wOyBBTEZVUyA8L3NwYW4+PHNwYW4gY2xhc3M9IlQyNSI+74OoPC9zcGFuPiBBbiBlbGVjdHJvLW1lY2hhbmljYWwgc3lzdGVtLCB3aXRoIG5vIGh1bWFuIG9wZXJhdG9yIGFib2FyZCwgdGhhdCBpcyBhYmxlIHRvIGV4ZXJ0IGl0cyBwb3dlciB0byBwZXJmb3JtIGRlc2lnbmVkIG1pc3Npb25zLiBJdCBtYXkgYmUgbW9iaWxlIG9yIHN0YXRpb25hcnkgYW5kIGluY2x1ZGVzIHRoZSBmb2xsb3dpbmcgY2F0ZWdvcmllczogdW5tYW5uZWQgZ3JvdW5kIHZlaGljbGVzICg8c3BhbiBjbGFzcz0iVDIyIj5VR1Y8L3NwYW4+KSwgdW5tYW5uZWQgYWVyaWFsIHZlaGljbGVzICg8c3BhbiBjbGFzcz0iVDIyIj5VQVY8L3NwYW4+KSwgdW5tYW5uZWQgdW5kZXJ3YXRlciB2ZWhpY2xlcyAoPHNwYW4gY2xhc3M9IlQyMiI+VVVWPC9zcGFuPiksIHVubWFubmVkIHN1cmZhY2UgdmVoaWNsZXMgKDxzcGFuIGNsYXNzPSJUMjIiPlVTVjwvc3Bhbj4pLCB1bmF0dGVuZGVkIG11bml0aW9ucyAoVTxzcGFuIGNsYXNzPSJUMjIiPk08L3NwYW4+KSwgYW5kIHVuYXR0ZW5kZWQgZ3JvdW5kIHNlbnNvcnMgKDxzcGFuIGNsYXNzPSJUMjIiPlVHUzwvc3Bhbj4pLihTZWUgPHNwYW4gY2xhc3M9IlQyMiI+Um9ib3Q8L3NwYW4+KTwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDMiPldyYXBwZXI8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CNjkiPjxwIGNsYXNzPSJQMjUiPkl0IGlzIGFuIOKAnDxzcGFuIGNsYXNzPSJUMjMiPmFwcGxpY2F0aW9u4oCdPC9zcGFuPiB0aGF0IGFsbG93cyBhbm90aGVyIOKAnDxzcGFuIGNsYXNzPSJUMjMiPmFwcGxpY2F0aW9u4oCdPC9zcGFuPiB0byB1c2UgwqDigJw8c3BhbiBjbGFzcz0iVDIzIj5BPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTUiPmxnb3JpdGhtaWMgbW9kdWxlczwvc3Bhbj48c3BhbiBjbGFzcz0iVDE0Ij7igJ08L3NwYW4+PC9wPjwvdGQ+PC90cj48L3RhYmxlPjxwIGNsYXNzPSJQNDUiPsKgPC9wPjwvYm9keT48L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1JvYm90TUxDaGVhdFNoZWV0c0hlbHAuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MQ2hlYXRTaGVldHNIZWxwLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmIyMGU2OAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MQ2hlYXRTaGVldHNIZWxwLmh0bWwKQEAgLTAsMCArMSw3NTYgQEAKKzxodG1sIHhtbG5zOnY9InVybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206dm1sIgoreG1sbnM6bz0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6b2ZmaWNlIgoreG1sbnM6dz0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIKK3htbG5zOm09Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vb2ZmaWNlLzIwMDQvMTIvb21tbCIKK3htbG5zPSJodHRwOi8vd3d3LnczLm9yZy9UUi9SRUMtaHRtbDQwIj4KKworPGhlYWQ+Cis8bWV0YSBodHRwLWVxdWl2PUNvbnRlbnQtVHlwZSBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9d2luZG93cy0xMjUyIj4KKzxtZXRhIG5hbWU9UHJvZ0lkIGNvbnRlbnQ9V29yZC5Eb2N1bWVudD4KKzxtZXRhIG5hbWU9R2VuZXJhdG9yIGNvbnRlbnQ9Ik1pY3Jvc29mdCBXb3JkIDEyIj4KKzxtZXRhIG5hbWU9T3JpZ2luYXRvciBjb250ZW50PSJNaWNyb3NvZnQgV29yZCAxMiI+Cis8bGluayByZWw9RmlsZS1MaXN0IGhyZWY9IlJvYm90TUxDaGVhdFNoZWV0c0hlbHBfZmljaGllcnMvZmlsZWxpc3QueG1sIj4KKzxsaW5rIHJlbD1FZGl0LVRpbWUtRGF0YSBocmVmPSJSb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL2VkaXRkYXRhLm1zbyI+Cis8IS0tW2lmICFtc29dPgorPHN0eWxlPgordlw6KiB7YmVoYXZpb3I6dXJsKCNkZWZhdWx0I1ZNTCk7fQorb1w6KiB7YmVoYXZpb3I6dXJsKCNkZWZhdWx0I1ZNTCk7fQord1w6KiB7YmVoYXZpb3I6dXJsKCNkZWZhdWx0I1ZNTCk7fQorLnNoYXBlIHtiZWhhdmlvcjp1cmwoI2RlZmF1bHQjVk1MKTt9Cis8L3N0eWxlPgorPCFbZW5kaWZdLS0+PCEtLVtpZiBndGUgbXNvIDldPjx4bWw+CisgPG86RG9jdW1lbnRQcm9wZXJ0aWVzPgorICA8bzpBdXRob3I+U2FhZGlhIERIT1VJQjwvbzpBdXRob3I+CisgIDxvOkxhc3RBdXRob3I+U2FhZGlhIERIT1VJQjwvbzpMYXN0QXV0aG9yPgorICA8bzpSZXZpc2lvbj4yPC9vOlJldmlzaW9uPgorICA8bzpUb3RhbFRpbWU+MTA8L286VG90YWxUaW1lPgorICA8bzpDcmVhdGVkPjIwMTItMDUtMDlUMDk6NTk6MDBaPC9vOkNyZWF0ZWQ+CisgIDxvOkxhc3RTYXZlZD4yMDEyLTA1LTA5VDA5OjU5OjAwWjwvbzpMYXN0U2F2ZWQ+CisgIDxvOlBhZ2VzPjI8L286UGFnZXM+CisgIDxvOldvcmRzPjE0NzwvbzpXb3Jkcz4KKyAgPG86Q2hhcmFjdGVycz44MTM8L286Q2hhcmFjdGVycz4KKyAgPG86Q29tcGFueT5DRUE8L286Q29tcGFueT4KKyAgPG86TGluZXM+NjwvbzpMaW5lcz4KKyAgPG86UGFyYWdyYXBocz4xPC9vOlBhcmFncmFwaHM+CisgIDxvOkNoYXJhY3RlcnNXaXRoU3BhY2VzPjk1OTwvbzpDaGFyYWN0ZXJzV2l0aFNwYWNlcz4KKyAgPG86VmVyc2lvbj4xMi4wMDwvbzpWZXJzaW9uPgorIDwvbzpEb2N1bWVudFByb3BlcnRpZXM+Cis8L3htbD48IVtlbmRpZl0tLT4KKzxsaW5rIHJlbD10aGVtZURhdGEgaHJlZj0iUm9ib3RNTENoZWF0U2hlZXRzSGVscF9maWNoaWVycy90aGVtZWRhdGEudGhteCI+Cis8bGluayByZWw9Y29sb3JTY2hlbWVNYXBwaW5nCitocmVmPSJSb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL2NvbG9yc2NoZW1lbWFwcGluZy54bWwiPgorPCEtLVtpZiBndGUgbXNvIDldPjx4bWw+CisgPHc6V29yZERvY3VtZW50PgorICA8dzpUcmFja01vdmVzPmZhbHNlPC93OlRyYWNrTW92ZXM+CisgIDx3OlRyYWNrRm9ybWF0dGluZy8+CisgIDx3Okh5cGhlbmF0aW9uWm9uZT4yMTwvdzpIeXBoZW5hdGlvblpvbmU+CisgIDx3OlB1bmN0dWF0aW9uS2VybmluZy8+CisgIDx3OlZhbGlkYXRlQWdhaW5zdFNjaGVtYXMvPgorICA8dzpTYXZlSWZYTUxJbnZhbGlkPmZhbHNlPC93OlNhdmVJZlhNTEludmFsaWQ+CisgIDx3Oklnbm9yZU1peGVkQ29udGVudD5mYWxzZTwvdzpJZ25vcmVNaXhlZENvbnRlbnQ+CisgIDx3OkFsd2F5c1Nob3dQbGFjZWhvbGRlclRleHQ+ZmFsc2U8L3c6QWx3YXlzU2hvd1BsYWNlaG9sZGVyVGV4dD4KKyAgPHc6RG9Ob3RQcm9tb3RlUUYvPgorICA8dzpMaWRUaGVtZU90aGVyPkZSPC93OkxpZFRoZW1lT3RoZXI+CisgIDx3OkxpZFRoZW1lQXNpYW4+WC1OT05FPC93OkxpZFRoZW1lQXNpYW4+CisgIDx3OkxpZFRoZW1lQ29tcGxleFNjcmlwdD5YLU5PTkU8L3c6TGlkVGhlbWVDb21wbGV4U2NyaXB0PgorICA8dzpDb21wYXRpYmlsaXR5PgorICAgPHc6QnJlYWtXcmFwcGVkVGFibGVzLz4KKyAgIDx3OlNuYXBUb0dyaWRJbkNlbGwvPgorICAgPHc6V3JhcFRleHRXaXRoUHVuY3QvPgorICAgPHc6VXNlQXNpYW5CcmVha1J1bGVzLz4KKyAgIDx3OkRvbnRHcm93QXV0b2ZpdC8+CisgICA8dzpTcGxpdFBnQnJlYWtBbmRQYXJhTWFyay8+CisgICA8dzpEb250VmVydEFsaWduQ2VsbFdpdGhTcC8+CisgICA8dzpEb250QnJlYWtDb25zdHJhaW5lZEZvcmNlZFRhYmxlcy8+CisgICA8dzpEb250VmVydEFsaWduSW5UeGJ4Lz4KKyAgIDx3OldvcmQxMUtlcm5pbmdQYWlycy8+CisgICA8dzpDYWNoZWRDb2xCYWxhbmNlLz4KKyAgPC93OkNvbXBhdGliaWxpdHk+CisgIDxtOm1hdGhQcj4KKyAgIDxtOm1hdGhGb250IG06dmFsPSJDYW1icmlhIE1hdGgiLz4KKyAgIDxtOmJya0JpbiBtOnZhbD0iYmVmb3JlIi8+CisgICA8bTpicmtCaW5TdWIgbTp2YWw9IiYjNDU7LSIvPgorICAgPG06c21hbGxGcmFjIG06dmFsPSJvZmYiLz4KKyAgIDxtOmRpc3BEZWYvPgorICAgPG06bE1hcmdpbiBtOnZhbD0iMCIvPgorICAgPG06ck1hcmdpbiBtOnZhbD0iMCIvPgorICAgPG06ZGVmSmMgbTp2YWw9ImNlbnRlckdyb3VwIi8+CisgICA8bTp3cmFwSW5kZW50IG06dmFsPSIxNDQwIi8+CisgICA8bTppbnRMaW0gbTp2YWw9InN1YlN1cCIvPgorICAgPG06bmFyeUxpbSBtOnZhbD0idW5kT3ZyIi8+CisgIDwvbTptYXRoUHI+PC93OldvcmREb2N1bWVudD4KKzwveG1sPjwhW2VuZGlmXS0tPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPgorIDx3OkxhdGVudFN0eWxlcyBEZWZMb2NrZWRTdGF0ZT0iZmFsc2UiIERlZlVuaGlkZVdoZW5Vc2VkPSJ0cnVlIgorICBEZWZTZW1pSGlkZGVuPSJ0cnVlIiBEZWZRRm9ybWF0PSJmYWxzZSIgRGVmUHJpb3JpdHk9Ijk5IgorICBMYXRlbnRTdHlsZUNvdW50PSIyNjciPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjAiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJOb3JtYWwiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI5IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyAxIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyAzIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA2Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA3Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA4Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA5Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIE5hbWU9InRvYyAxIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIE5hbWU9InRvYyAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIE5hbWU9InRvYyAzIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIE5hbWU9InRvYyA0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIE5hbWU9InRvYyA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIE5hbWU9InRvYyA2Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIE5hbWU9InRvYyA3Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIE5hbWU9InRvYyA4Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIE5hbWU9InRvYyA5Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzUiIFFGb3JtYXQ9InRydWUiIE5hbWU9ImNhcHRpb24iLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIxMCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIFFGb3JtYXQ9InRydWUiIE5hbWU9IlRpdGxlIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMSIgTmFtZT0iRGVmYXVsdCBQYXJhZ3JhcGggRm9udCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjExIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iU3VidGl0bGUiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIyMiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIFFGb3JtYXQ9InRydWUiIE5hbWU9IlN0cm9uZyIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjIwIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iRW1waGFzaXMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1OSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IlRhYmxlIEdyaWQiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iUGxhY2Vob2xkZXIgVGV4dCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjEiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJObyBTcGFjaW5nIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjAiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJMaWdodCBTaGFkaW5nIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjEiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJMaWdodCBMaXN0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjIiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJMaWdodCBHcmlkIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjMiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gU2hhZGluZyAxIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjQiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gU2hhZGluZyAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjUiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gTGlzdCAxIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjYiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gTGlzdCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjciIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAxIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjgiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjkiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAzIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzAiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJEYXJrIExpc3QiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIFNoYWRpbmciLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIExpc3QiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIEdyaWQiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IFNoYWRpbmcgQWNjZW50IDEiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IExpc3QgQWNjZW50IDEiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IEdyaWQgQWNjZW50IDEiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDEgQWNjZW50IDEiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDIgQWNjZW50IDEiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBMaXN0IDEgQWNjZW50IDEiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iUmV2aXNpb24iLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzNCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIFFGb3JtYXQ9InRydWUiIE5hbWU9Ikxpc3QgUGFyYWdyYXBoIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMjkiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJRdW90ZSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjMwIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iSW50ZW5zZSBRdW90ZSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY2IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIExpc3QgMiBBY2NlbnQgMSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY3IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIEdyaWQgMSBBY2NlbnQgMSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY4IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIEdyaWQgMiBBY2NlbnQgMSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY5IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIEdyaWQgMyBBY2NlbnQgMSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcwIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iRGFyayBMaXN0IEFjY2VudCAxIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzEiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJDb2xvcmZ1bCBTaGFkaW5nIEFjY2VudCAxIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzIiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJDb2xvcmZ1bCBMaXN0IEFjY2VudCAxIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzMiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJDb2xvcmZ1bCBHcmlkIEFjY2VudCAxIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjAiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJMaWdodCBTaGFkaW5nIEFjY2VudCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjEiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJMaWdodCBMaXN0IEFjY2VudCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjIiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJMaWdodCBHcmlkIEFjY2VudCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjMiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gU2hhZGluZyAxIEFjY2VudCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjQiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gU2hhZGluZyAyIEFjY2VudCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjUiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gTGlzdCAxIEFjY2VudCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjYiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gTGlzdCAyIEFjY2VudCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjciIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAxIEFjY2VudCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjgiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAyIEFjY2VudCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjkiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAzIEFjY2VudCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzAiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJEYXJrIExpc3QgQWNjZW50IDIiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIFNoYWRpbmcgQWNjZW50IDIiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIExpc3QgQWNjZW50IDIiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIEdyaWQgQWNjZW50IDIiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IFNoYWRpbmcgQWNjZW50IDMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IExpc3QgQWNjZW50IDMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IEdyaWQgQWNjZW50IDMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDEgQWNjZW50IDMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDIgQWNjZW50IDMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBMaXN0IDEgQWNjZW50IDMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBMaXN0IDIgQWNjZW50IDMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBHcmlkIDEgQWNjZW50IDMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBHcmlkIDIgQWNjZW50IDMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBHcmlkIDMgQWNjZW50IDMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkRhcmsgTGlzdCBBY2NlbnQgMyIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcxIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iQ29sb3JmdWwgU2hhZGluZyBBY2NlbnQgMyIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcyIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iQ29sb3JmdWwgTGlzdCBBY2NlbnQgMyIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjczIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iQ29sb3JmdWwgR3JpZCBBY2NlbnQgMyIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYwIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTGlnaHQgU2hhZGluZyBBY2NlbnQgNCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYxIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTGlnaHQgTGlzdCBBY2NlbnQgNCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYyIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTGlnaHQgR3JpZCBBY2NlbnQgNCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYzIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIFNoYWRpbmcgMSBBY2NlbnQgNCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY0IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIFNoYWRpbmcgMiBBY2NlbnQgNCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY1IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIExpc3QgMSBBY2NlbnQgNCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY2IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIExpc3QgMiBBY2NlbnQgNCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY3IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIEdyaWQgMSBBY2NlbnQgNCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY4IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIEdyaWQgMiBBY2NlbnQgNCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY5IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIEdyaWQgMyBBY2NlbnQgNCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcwIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iRGFyayBMaXN0IEFjY2VudCA0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzEiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJDb2xvcmZ1bCBTaGFkaW5nIEFjY2VudCA0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzIiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJDb2xvcmZ1bCBMaXN0IEFjY2VudCA0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzMiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJDb2xvcmZ1bCBHcmlkIEFjY2VudCA0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjAiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJMaWdodCBTaGFkaW5nIEFjY2VudCA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjEiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJMaWdodCBMaXN0IEFjY2VudCA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjIiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJMaWdodCBHcmlkIEFjY2VudCA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjMiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gU2hhZGluZyAxIEFjY2VudCA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjQiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gU2hhZGluZyAyIEFjY2VudCA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjUiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gTGlzdCAxIEFjY2VudCA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjYiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gTGlzdCAyIEFjY2VudCA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjciIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAxIEFjY2VudCA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjgiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAyIEFjY2VudCA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjkiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAzIEFjY2VudCA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzAiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJEYXJrIExpc3QgQWNjZW50IDUiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIFNoYWRpbmcgQWNjZW50IDUiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIExpc3QgQWNjZW50IDUiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIEdyaWQgQWNjZW50IDUiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IFNoYWRpbmcgQWNjZW50IDYiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IExpc3QgQWNjZW50IDYiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IEdyaWQgQWNjZW50IDYiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDEgQWNjZW50IDYiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDIgQWNjZW50IDYiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBMaXN0IDEgQWNjZW50IDYiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBMaXN0IDIgQWNjZW50IDYiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBHcmlkIDEgQWNjZW50IDYiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBHcmlkIDIgQWNjZW50IDYiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBHcmlkIDMgQWNjZW50IDYiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkRhcmsgTGlzdCBBY2NlbnQgNiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcxIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iQ29sb3JmdWwgU2hhZGluZyBBY2NlbnQgNiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcyIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iQ29sb3JmdWwgTGlzdCBBY2NlbnQgNiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjczIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iQ29sb3JmdWwgR3JpZCBBY2NlbnQgNiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjE5IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iU3VidGxlIEVtcGhhc2lzIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMjEiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJJbnRlbnNlIEVtcGhhc2lzIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzEiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJTdWJ0bGUgUmVmZXJlbmNlIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzIiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJJbnRlbnNlIFJlZmVyZW5jZSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjMzIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iQm9vayBUaXRsZSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjM3IiBOYW1lPSJCaWJsaW9ncmFwaHkiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzOSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iVE9DIEhlYWRpbmciLz4KKyA8L3c6TGF0ZW50U3R5bGVzPgorPC94bWw+PCFbZW5kaWZdLS0+Cis8c3R5bGU+Cis8IS0tCisgLyogRm9udCBEZWZpbml0aW9ucyAqLworIEBmb250LWZhY2UKKwl7Zm9udC1mYW1pbHk6IkNhbWJyaWEgTWF0aCI7CisJcGFub3NlLTE6MiA0IDUgMyA1IDQgNiAzIDIgNDsKKwltc28tZm9udC1jaGFyc2V0OjE7CisJbXNvLWdlbmVyaWMtZm9udC1mYW1pbHk6cm9tYW47CisJbXNvLWZvbnQtZm9ybWF0Om90aGVyOworCW1zby1mb250LXBpdGNoOnZhcmlhYmxlOworCW1zby1mb250LXNpZ25hdHVyZTowIDAgMCAwIDAgMDt9CitAZm9udC1mYWNlCisJe2ZvbnQtZmFtaWx5OkNhbGlicmk7CisJcGFub3NlLTE6MiAxNSA1IDIgMiAyIDQgMyAyIDQ7CisJbXNvLWZvbnQtY2hhcnNldDowOworCW1zby1nZW5lcmljLWZvbnQtZmFtaWx5OnN3aXNzOworCW1zby1mb250LXBpdGNoOnZhcmlhYmxlOworCW1zby1mb250LXNpZ25hdHVyZTotMTYxMDYxMTk4NSAxMDczNzUwMTM5IDAgMCAxNTkgMDt9CitAZm9udC1mYWNlCisJe2ZvbnQtZmFtaWx5OlRhaG9tYTsKKwlwYW5vc2UtMToyIDExIDYgNCAzIDUgNCA0IDIgNDsKKwltc28tZm9udC1jaGFyc2V0OjA7CisJbXNvLWdlbmVyaWMtZm9udC1mYW1pbHk6c3dpc3M7CisJbXNvLWZvbnQtZm9ybWF0Om90aGVyOworCW1zby1mb250LXBpdGNoOnZhcmlhYmxlOworCW1zby1mb250LXNpZ25hdHVyZTozIDAgMCAwIDEgMDt9CisgLyogU3R5bGUgRGVmaW5pdGlvbnMgKi8KKyBwLk1zb05vcm1hbCwgbGkuTXNvTm9ybWFsLCBkaXYuTXNvTm9ybWFsCisJe21zby1zdHlsZS11bmhpZGU6bm87CisJbXNvLXN0eWxlLXFmb3JtYXQ6eWVzOworCW1zby1zdHlsZS1wYXJlbnQ6IiI7CisJbWFyZ2luLXRvcDowY207CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjEwLjBwdDsKKwltYXJnaW4tbGVmdDowY207CisJbGluZS1oZWlnaHQ6MTE1JTsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJZm9udC1zaXplOjExLjBwdDsKKwlmb250LWZhbWlseToiQ2FsaWJyaSIsInNhbnMtc2VyaWYiOworCW1zby1hc2NpaS1mb250LWZhbWlseTpDYWxpYnJpOworCW1zby1hc2NpaS10aGVtZS1mb250Om1pbm9yLWxhdGluOworCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OkNhbGlicmk7CisJbXNvLWZhcmVhc3QtdGhlbWUtZm9udDptaW5vci1sYXRpbjsKKwltc28taGFuc2ktZm9udC1mYW1pbHk6Q2FsaWJyaTsKKwltc28taGFuc2ktdGhlbWUtZm9udDptaW5vci1sYXRpbjsKKwltc28tYmlkaS1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYmlkaS10aGVtZS1mb250Om1pbm9yLWJpZGk7CisJbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6RU4tVVM7fQoraDMKKwl7bXNvLXN0eWxlLXByaW9yaXR5Ojk7CisJbXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtcWZvcm1hdDp5ZXM7CisJbXNvLXN0eWxlLWxpbms6IlRpdHJlIDMgQ2FyIjsKKwltc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzsKKwltYXJnaW4tcmlnaHQ6MGNtOworCW1zby1tYXJnaW4tYm90dG9tLWFsdDphdXRvOworCW1hcmdpbi1sZWZ0OjBjbTsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJbXNvLW91dGxpbmUtbGV2ZWw6MzsKKwlmb250LXNpemU6MTMuNXB0OworCWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iLCJzZXJpZiI7CisJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJZm9udC13ZWlnaHQ6Ym9sZDt9CitwCisJe21zby1zdHlsZS1ub3Nob3c6eWVzOworCW1zby1zdHlsZS1wcmlvcml0eTo5OTsKKwltc28tbWFyZ2luLXRvcC1hbHQ6YXV0bzsKKwltYXJnaW4tcmlnaHQ6MGNtOworCW1hcmdpbi1ib3R0b206NS45NXB0OworCW1hcmdpbi1sZWZ0OjBjbTsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJZm9udC1zaXplOjEyLjBwdDsKKwlmb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIiwic2VyaWYiOworCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iO30KK3AuTXNvQWNldGF0ZSwgbGkuTXNvQWNldGF0ZSwgZGl2Lk1zb0FjZXRhdGUKKwl7bXNvLXN0eWxlLW5vc2hvdzp5ZXM7CisJbXNvLXN0eWxlLXByaW9yaXR5Ojk5OworCW1zby1zdHlsZS1saW5rOiJUZXh0ZSBkZSBidWxsZXMgQ2FyIjsKKwltYXJnaW46MGNtOworCW1hcmdpbi1ib3R0b206LjAwMDFwdDsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJZm9udC1zaXplOjguMHB0OworCWZvbnQtZmFtaWx5OiJUYWhvbWEiLCJzYW5zLXNlcmlmIjsKKwltc28tZmFyZWFzdC1mb250LWZhbWlseTpDYWxpYnJpOworCW1zby1mYXJlYXN0LXRoZW1lLWZvbnQ6bWlub3ItbGF0aW47CisJbXNvLWJpZGktZm9udC1mYW1pbHk6VGFob21hOworCW1zby1mYXJlYXN0LWxhbmd1YWdlOkVOLVVTO30KK3AuTXNvTGlzdFBhcmFncmFwaCwgbGkuTXNvTGlzdFBhcmFncmFwaCwgZGl2Lk1zb0xpc3RQYXJhZ3JhcGgKKwl7bXNvLXN0eWxlLXByaW9yaXR5OjM0OworCW1zby1zdHlsZS11bmhpZGU6bm87CisJbXNvLXN0eWxlLXFmb3JtYXQ6eWVzOworCW1hcmdpbi10b3A6MGNtOworCW1hcmdpbi1yaWdodDowY207CisJbWFyZ2luLWJvdHRvbToxMC4wcHQ7CisJbWFyZ2luLWxlZnQ6MzYuMHB0OworCW1zby1hZGQtc3BhY2U6YXV0bzsKKwlsaW5lLWhlaWdodDoxMTUlOworCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsKKwlmb250LXNpemU6MTEuMHB0OworCWZvbnQtZmFtaWx5OiJDYWxpYnJpIiwic2Fucy1zZXJpZiI7CisJbXNvLWFzY2lpLWZvbnQtZmFtaWx5OkNhbGlicmk7CisJbXNvLWFzY2lpLXRoZW1lLWZvbnQ6bWlub3ItbGF0aW47CisJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6Q2FsaWJyaTsKKwltc28tZmFyZWFzdC10aGVtZS1mb250Om1pbm9yLWxhdGluOworCW1zby1oYW5zaS1mb250LWZhbWlseTpDYWxpYnJpOworCW1zby1oYW5zaS10aGVtZS1mb250Om1pbm9yLWxhdGluOworCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1iaWRpLXRoZW1lLWZvbnQ6bWlub3ItYmlkaTsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpFTi1VUzt9CitwLk1zb0xpc3RQYXJhZ3JhcGhDeFNwRmlyc3QsIGxpLk1zb0xpc3RQYXJhZ3JhcGhDeFNwRmlyc3QsIGRpdi5Nc29MaXN0UGFyYWdyYXBoQ3hTcEZpcnN0CisJe21zby1zdHlsZS1wcmlvcml0eTozNDsKKwltc28tc3R5bGUtdW5oaWRlOm5vOworCW1zby1zdHlsZS1xZm9ybWF0OnllczsKKwltc28tc3R5bGUtdHlwZTpleHBvcnQtb25seTsKKwltYXJnaW4tdG9wOjBjbTsKKwltYXJnaW4tcmlnaHQ6MGNtOworCW1hcmdpbi1ib3R0b206MGNtOworCW1hcmdpbi1sZWZ0OjM2LjBwdDsKKwltYXJnaW4tYm90dG9tOi4wMDAxcHQ7CisJbXNvLWFkZC1zcGFjZTphdXRvOworCWxpbmUtaGVpZ2h0OjExNSU7CisJbXNvLXBhZ2luYXRpb246d2lkb3ctb3JwaGFuOworCWZvbnQtc2l6ZToxMS4wcHQ7CisJZm9udC1mYW1pbHk6IkNhbGlicmkiLCJzYW5zLXNlcmlmIjsKKwltc28tYXNjaWktZm9udC1mYW1pbHk6Q2FsaWJyaTsKKwltc28tYXNjaWktdGhlbWUtZm9udDptaW5vci1sYXRpbjsKKwltc28tZmFyZWFzdC1mb250LWZhbWlseTpDYWxpYnJpOworCW1zby1mYXJlYXN0LXRoZW1lLWZvbnQ6bWlub3ItbGF0aW47CisJbXNvLWhhbnNpLWZvbnQtZmFtaWx5OkNhbGlicmk7CisJbXNvLWhhbnNpLXRoZW1lLWZvbnQ6bWlub3ItbGF0aW47CisJbXNvLWJpZGktZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWJpZGktdGhlbWUtZm9udDptaW5vci1iaWRpOworCW1zby1mYXJlYXN0LWxhbmd1YWdlOkVOLVVTO30KK3AuTXNvTGlzdFBhcmFncmFwaEN4U3BNaWRkbGUsIGxpLk1zb0xpc3RQYXJhZ3JhcGhDeFNwTWlkZGxlLCBkaXYuTXNvTGlzdFBhcmFncmFwaEN4U3BNaWRkbGUKKwl7bXNvLXN0eWxlLXByaW9yaXR5OjM0OworCW1zby1zdHlsZS11bmhpZGU6bm87CisJbXNvLXN0eWxlLXFmb3JtYXQ6eWVzOworCW1zby1zdHlsZS10eXBlOmV4cG9ydC1vbmx5OworCW1hcmdpbi10b3A6MGNtOworCW1hcmdpbi1yaWdodDowY207CisJbWFyZ2luLWJvdHRvbTowY207CisJbWFyZ2luLWxlZnQ6MzYuMHB0OworCW1hcmdpbi1ib3R0b206LjAwMDFwdDsKKwltc28tYWRkLXNwYWNlOmF1dG87CisJbGluZS1oZWlnaHQ6MTE1JTsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJZm9udC1zaXplOjExLjBwdDsKKwlmb250LWZhbWlseToiQ2FsaWJyaSIsInNhbnMtc2VyaWYiOworCW1zby1hc2NpaS1mb250LWZhbWlseTpDYWxpYnJpOworCW1zby1hc2NpaS10aGVtZS1mb250Om1pbm9yLWxhdGluOworCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OkNhbGlicmk7CisJbXNvLWZhcmVhc3QtdGhlbWUtZm9udDptaW5vci1sYXRpbjsKKwltc28taGFuc2ktZm9udC1mYW1pbHk6Q2FsaWJyaTsKKwltc28taGFuc2ktdGhlbWUtZm9udDptaW5vci1sYXRpbjsKKwltc28tYmlkaS1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYmlkaS10aGVtZS1mb250Om1pbm9yLWJpZGk7CisJbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6RU4tVVM7fQorcC5Nc29MaXN0UGFyYWdyYXBoQ3hTcExhc3QsIGxpLk1zb0xpc3RQYXJhZ3JhcGhDeFNwTGFzdCwgZGl2Lk1zb0xpc3RQYXJhZ3JhcGhDeFNwTGFzdAorCXttc28tc3R5bGUtcHJpb3JpdHk6MzQ7CisJbXNvLXN0eWxlLXVuaGlkZTpubzsKKwltc28tc3R5bGUtcWZvcm1hdDp5ZXM7CisJbXNvLXN0eWxlLXR5cGU6ZXhwb3J0LW9ubHk7CisJbWFyZ2luLXRvcDowY207CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjEwLjBwdDsKKwltYXJnaW4tbGVmdDozNi4wcHQ7CisJbXNvLWFkZC1zcGFjZTphdXRvOworCWxpbmUtaGVpZ2h0OjExNSU7CisJbXNvLXBhZ2luYXRpb246d2lkb3ctb3JwaGFuOworCWZvbnQtc2l6ZToxMS4wcHQ7CisJZm9udC1mYW1pbHk6IkNhbGlicmkiLCJzYW5zLXNlcmlmIjsKKwltc28tYXNjaWktZm9udC1mYW1pbHk6Q2FsaWJyaTsKKwltc28tYXNjaWktdGhlbWUtZm9udDptaW5vci1sYXRpbjsKKwltc28tZmFyZWFzdC1mb250LWZhbWlseTpDYWxpYnJpOworCW1zby1mYXJlYXN0LXRoZW1lLWZvbnQ6bWlub3ItbGF0aW47CisJbXNvLWhhbnNpLWZvbnQtZmFtaWx5OkNhbGlicmk7CisJbXNvLWhhbnNpLXRoZW1lLWZvbnQ6bWlub3ItbGF0aW47CisJbXNvLWJpZGktZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWJpZGktdGhlbWUtZm9udDptaW5vci1iaWRpOworCW1zby1mYXJlYXN0LWxhbmd1YWdlOkVOLVVTO30KK3NwYW4uVGV4dGVkZWJ1bGxlc0NhcgorCXttc28tc3R5bGUtbmFtZToiVGV4dGUgZGUgYnVsbGVzIENhciI7CisJbXNvLXN0eWxlLW5vc2hvdzp5ZXM7CisJbXNvLXN0eWxlLXByaW9yaXR5Ojk5OworCW1zby1zdHlsZS11bmhpZGU6bm87CisJbXNvLXN0eWxlLWxvY2tlZDp5ZXM7CisJbXNvLXN0eWxlLWxpbms6IlRleHRlIGRlIGJ1bGxlcyI7CisJbXNvLWFuc2ktZm9udC1zaXplOjguMHB0OworCW1zby1iaWRpLWZvbnQtc2l6ZTo4LjBwdDsKKwlmb250LWZhbWlseToiVGFob21hIiwic2Fucy1zZXJpZiI7CisJbXNvLWFzY2lpLWZvbnQtZmFtaWx5OlRhaG9tYTsKKwltc28taGFuc2ktZm9udC1mYW1pbHk6VGFob21hOworCW1zby1iaWRpLWZvbnQtZmFtaWx5OlRhaG9tYTt9CitzcGFuLlRpdHJlM0NhcgorCXttc28tc3R5bGUtbmFtZToiVGl0cmUgMyBDYXIiOworCW1zby1zdHlsZS1wcmlvcml0eTo5OworCW1zby1zdHlsZS11bmhpZGU6bm87CisJbXNvLXN0eWxlLWxvY2tlZDp5ZXM7CisJbXNvLXN0eWxlLWxpbms6IlRpdHJlIDMiOworCW1zby1hbnNpLWZvbnQtc2l6ZToxMy41cHQ7CisJbXNvLWJpZGktZm9udC1zaXplOjEzLjVwdDsKKwlmb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIiwic2VyaWYiOworCW1zby1hc2NpaS1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28taGFuc2ktZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWJpZGktZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7CisJbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6RlI7CisJZm9udC13ZWlnaHQ6Ym9sZDt9CisuTXNvQ2hwRGVmYXVsdAorCXttc28tc3R5bGUtdHlwZTpleHBvcnQtb25seTsKKwltc28tZGVmYXVsdC1wcm9wczp5ZXM7CisJbXNvLWFzY2lpLWZvbnQtZmFtaWx5OkNhbGlicmk7CisJbXNvLWFzY2lpLXRoZW1lLWZvbnQ6bWlub3ItbGF0aW47CisJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6Q2FsaWJyaTsKKwltc28tZmFyZWFzdC10aGVtZS1mb250Om1pbm9yLWxhdGluOworCW1zby1oYW5zaS1mb250LWZhbWlseTpDYWxpYnJpOworCW1zby1oYW5zaS10aGVtZS1mb250Om1pbm9yLWxhdGluOworCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1iaWRpLXRoZW1lLWZvbnQ6bWlub3ItYmlkaTsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpFTi1VUzt9CisuTXNvUGFwRGVmYXVsdAorCXttc28tc3R5bGUtdHlwZTpleHBvcnQtb25seTsKKwltYXJnaW4tYm90dG9tOjEwLjBwdDsKKwlsaW5lLWhlaWdodDoxMTUlO30KK0BwYWdlIFdvcmRTZWN0aW9uMQorCXtzaXplOjU5NS4zcHQgODQxLjlwdDsKKwltYXJnaW46NzAuODVwdCA3MC44NXB0IDcwLjg1cHQgNzAuODVwdDsKKwltc28taGVhZGVyLW1hcmdpbjozNS40cHQ7CisJbXNvLWZvb3Rlci1tYXJnaW46MzUuNHB0OworCW1zby1wYXBlci1zb3VyY2U6MDt9CitkaXYuV29yZFNlY3Rpb24xCisJe3BhZ2U6V29yZFNlY3Rpb24xO30KKyAvKiBMaXN0IERlZmluaXRpb25zICovCisgQGxpc3QgbDAKKwl7bXNvLWxpc3QtaWQ6NzU4MDY0OTA3OworCW1zby1saXN0LXR5cGU6aHlicmlkOworCW1zby1saXN0LXRlbXBsYXRlLWlkczoxODIzMDExNiA2Nzg5NTMxMSA2Nzg5NTMyMSA2Nzg5NTMyMyA2Nzg5NTMxMSA2Nzg5NTMyMSA2Nzg5NTMyMyA2Nzg5NTMxMSA2Nzg5NTMyMSA2Nzg5NTMyMzt9CitAbGlzdCBsMDpsZXZlbDEKKwl7bXNvLWxldmVsLXRhYi1zdG9wOm5vbmU7CisJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0OworCXRleHQtaW5kZW50Oi0xOC4wcHQ7fQorQGxpc3QgbDEKKwl7bXNvLWxpc3QtaWQ6MTIxNTE5OTUwNjsKKwltc28tbGlzdC10eXBlOmh5YnJpZDsKKwltc28tbGlzdC10ZW1wbGF0ZS1pZHM6LTgwNjYwNTQ0NCA2Nzg5NTMxMSA2Nzg5NTMyMSA2Nzg5NTMyMyA2Nzg5NTMxMSA2Nzg5NTMyMSA2Nzg5NTMyMyA2Nzg5NTMxMSA2Nzg5NTMyMSA2Nzg5NTMyMzt9CitAbGlzdCBsMTpsZXZlbDEKKwl7bXNvLWxldmVsLXRhYi1zdG9wOm5vbmU7CisJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0OworCW1hcmdpbi1sZWZ0OjcyLjBwdDsKKwl0ZXh0LWluZGVudDotMTguMHB0O30KK0BsaXN0IGwyCisJe21zby1saXN0LWlkOjE2MzEyODUwODk7CisJbXNvLWxpc3QtdGVtcGxhdGUtaWRzOi0xNzEzMTA5MDI7fQorQGxpc3QgbDI6bGV2ZWwxCisJe21zby1sZXZlbC1zdGFydC1hdDozOworCW1zby1sZXZlbC10YWItc3RvcDozNi4wcHQ7CisJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0OworCXRleHQtaW5kZW50Oi0xOC4wcHQ7fQorQGxpc3QgbDI6bGV2ZWwyCisJe21zby1sZXZlbC1udW1iZXItZm9ybWF0OmJ1bGxldDsKKwltc28tbGV2ZWwtdGV4dDpcRjBCNzsKKwltc28tbGV2ZWwtdGFiLXN0b3A6NzIuMHB0OworCW1zby1sZXZlbC1udW1iZXItcG9zaXRpb246bGVmdDsKKwl0ZXh0LWluZGVudDotMTguMHB0OworCWZvbnQtZmFtaWx5OlN5bWJvbDt9CitAbGlzdCBsMworCXttc28tbGlzdC1pZDoxNzA1OTc3MTkyOworCW1zby1saXN0LXRlbXBsYXRlLWlkczoxMDY5MDIzNjU2O30KK29sCisJe21hcmdpbi1ib3R0b206MGNtO30KK3VsCisJe21hcmdpbi1ib3R0b206MGNtO30KKy0tPgorPC9zdHlsZT4KKzwhLS1baWYgZ3RlIG1zbyAxMF0+Cis8c3R5bGU+CisgLyogU3R5bGUgRGVmaW5pdGlvbnMgKi8KKyB0YWJsZS5Nc29Ob3JtYWxUYWJsZQorCXttc28tc3R5bGUtbmFtZToiVGFibGVhdSBOb3JtYWwiOworCW1zby10c3R5bGUtcm93YmFuZC1zaXplOjA7CisJbXNvLXRzdHlsZS1jb2xiYW5kLXNpemU6MDsKKwltc28tc3R5bGUtbm9zaG93OnllczsKKwltc28tc3R5bGUtcHJpb3JpdHk6OTk7CisJbXNvLXN0eWxlLXFmb3JtYXQ6eWVzOworCW1zby1zdHlsZS1wYXJlbnQ6IiI7CisJbXNvLXBhZGRpbmctYWx0OjBjbSA1LjRwdCAwY20gNS40cHQ7CisJbXNvLXBhcmEtbWFyZ2luLXRvcDowY207CisJbXNvLXBhcmEtbWFyZ2luLXJpZ2h0OjBjbTsKKwltc28tcGFyYS1tYXJnaW4tYm90dG9tOjEwLjBwdDsKKwltc28tcGFyYS1tYXJnaW4tbGVmdDowY207CisJbGluZS1oZWlnaHQ6MTE1JTsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJZm9udC1zaXplOjExLjBwdDsKKwlmb250LWZhbWlseToiQ2FsaWJyaSIsInNhbnMtc2VyaWYiOworCW1zby1hc2NpaS1mb250LWZhbWlseTpDYWxpYnJpOworCW1zby1hc2NpaS10aGVtZS1mb250Om1pbm9yLWxhdGluOworCW1zby1oYW5zaS1mb250LWZhbWlseTpDYWxpYnJpOworCW1zby1oYW5zaS10aGVtZS1mb250Om1pbm9yLWxhdGluOworCW1zby1mYXJlYXN0LWxhbmd1YWdlOkVOLVVTO30KKzwvc3R5bGU+Cis8IVtlbmRpZl0tLT48IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4KKyA8bzpzaGFwZWRlZmF1bHRzIHY6ZXh0PSJlZGl0IiBzcGlkbWF4PSI0MDk4Ii8+Cis8L3htbD48IVtlbmRpZl0tLT48IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4KKyA8bzpzaGFwZWxheW91dCB2OmV4dD0iZWRpdCI+CisgIDxvOmlkbWFwIHY6ZXh0PSJlZGl0IiBkYXRhPSIxIi8+CisgPC9vOnNoYXBlbGF5b3V0PjwveG1sPjwhW2VuZGlmXS0tPgorPC9oZWFkPgorCis8Ym9keSBsYW5nPUZSIHN0eWxlPSd0YWItaW50ZXJ2YWw6MzUuNHB0Jz4KKworPGRpdiBjbGFzcz1Xb3JkU2VjdGlvbjE+CisKKzxwIHN0eWxlPSdtYXJnaW4tYm90dG9tOjBjbTttYXJnaW4tYm90dG9tOi4wMDAxcHQnPjxzcGFuIGxhbmc9RU4tVVMKK3N0eWxlPSdtc28tYW5zaS1sYW5ndWFnZTpFTi1VUyc+VGhlIFJvYm90TUwgd29ya2Zsb3cgaXMgZGVzY3JpYmVkIGluIGEgc3BlY2lmaWMKK2VjbGlwc2UgY2hlYXQgc2hlZXQuIFRvIGxhdW5jaCB0aGlzIGNoZWF0IHNoZWV0LCB5b3UgaGF2ZSB0byBmb2xsb3cgdGhlCitmb2xsb3dpbmcgc3RlcHM6PG86cD48L286cD48L3NwYW4+PC9wPgorCis8cCBzdHlsZT0nbWFyZ2luLXRvcDo1LjBwdDttYXJnaW4tcmlnaHQ6MGNtO21hcmdpbi1ib3R0b206MGNtO21hcmdpbi1sZWZ0OjM2LjBwdDsKK21hcmdpbi1ib3R0b206LjAwMDFwdDt0ZXh0LWluZGVudDotMTguMHB0O21zby1saXN0OmwzIGxldmVsMSBsZm8xO3RhYi1zdG9wczoKK2xpc3QgMzYuMHB0Jz48IVtpZiAhc3VwcG9ydExpc3RzXT48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdtc28tYW5zaS1sYW5ndWFnZToKK0VOLVVTJz48c3BhbiBzdHlsZT0nbXNvLWxpc3Q6SWdub3JlJz4xLjxzcGFuIHN0eWxlPSdmb250OjcuMHB0ICJUaW1lcyBOZXcgUm9tYW4iJz4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsKKzwvc3Bhbj48L3NwYW4+PC9zcGFuPjwhW2VuZGlmXT48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdtc28tYW5zaS1sYW5ndWFnZTpFTi1VUyc+R28KK3RvIHRoZSBoZWxwIG1lbnUgYW5kIGNsaWNrIG9uIGNoZWV0IHNoZWF0cyBhcyBzaG93biBiZWxvdzxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKworPHAgc3R5bGU9J21hcmdpbi10b3A6NS4wcHQ7bWFyZ2luLXJpZ2h0OjBjbTttYXJnaW4tYm90dG9tOjBjbTttYXJnaW4tbGVmdDozNi4wcHQ7CittYXJnaW4tYm90dG9tOi4wMDAxcHQnPjxzcGFuIHN0eWxlPSdtc28tbm8tcHJvb2Y6eWVzJz48IS0tW2lmIGd0ZSB2bWwgMV0+PHY6c2hhcGV0eXBlCisgaWQ9Il94MDAwMF90NzUiIGNvb3Jkc2l6ZT0iMjE2MDAsMjE2MDAiIG86c3B0PSI3NSIgbzpwcmVmZXJyZWxhdGl2ZT0idCIKKyBwYXRoPSJtQDRANWxANEAxMUA5QDExQDlANXhlIiBmaWxsZWQ9ImYiIHN0cm9rZWQ9ImYiPgorIDx2OnN0cm9rZSBqb2luc3R5bGU9Im1pdGVyIi8+CisgPHY6Zm9ybXVsYXM+CisgIDx2OmYgZXFuPSJpZiBsaW5lRHJhd24gcGl4ZWxMaW5lV2lkdGggMCIvPgorICA8djpmIGVxbj0ic3VtIEAwIDEgMCIvPgorICA8djpmIGVxbj0ic3VtIDAgMCBAMSIvPgorICA8djpmIGVxbj0icHJvZCBAMiAxIDIiLz4KKyAgPHY6ZiBlcW49InByb2QgQDMgMjE2MDAgcGl4ZWxXaWR0aCIvPgorICA8djpmIGVxbj0icHJvZCBAMyAyMTYwMCBwaXhlbEhlaWdodCIvPgorICA8djpmIGVxbj0ic3VtIEAwIDAgMSIvPgorICA8djpmIGVxbj0icHJvZCBANiAxIDIiLz4KKyAgPHY6ZiBlcW49InByb2QgQDcgMjE2MDAgcGl4ZWxXaWR0aCIvPgorICA8djpmIGVxbj0ic3VtIEA4IDIxNjAwIDAiLz4KKyAgPHY6ZiBlcW49InByb2QgQDcgMjE2MDAgcGl4ZWxIZWlnaHQiLz4KKyAgPHY6ZiBlcW49InN1bSBAMTAgMjE2MDAgMCIvPgorIDwvdjpmb3JtdWxhcz4KKyA8djpwYXRoIG86ZXh0cnVzaW9ub2s9ImYiIGdyYWRpZW50c2hhcGVvaz0idCIgbzpjb25uZWN0dHlwZT0icmVjdCIvPgorIDxvOmxvY2sgdjpleHQ9ImVkaXQiIGFzcGVjdHJhdGlvPSJ0Ii8+Cis8L3Y6c2hhcGV0eXBlPjx2OnNoYXBlIGlkPSJJbWFnZV94MDAyMF8xIiBvOnNwaWQ9Il94MDAwMF9pMTAyNyIgdHlwZT0iI194MDAwMF90NzUiCisgc3R5bGU9J3dpZHRoOjI4NC4yNXB0O2hlaWdodDozMDUuMjVwdDt2aXNpYmlsaXR5OnZpc2libGU7bXNvLXdyYXAtc3R5bGU6c3F1YXJlJz4KKyA8djppbWFnZWRhdGEgc3JjPSJSb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL2ltYWdlMDAxLmVteiIgbzp0aXRsZT0iIi8+Cis8L3Y6c2hhcGU+PCFbZW5kaWZdLS0+PCFbaWYgIXZtbF0+PGltZyB3aWR0aD0zNzkgaGVpZ2h0PTQwNworc3JjPSJSb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL2ltYWdlMDAyLmdpZiIgdjpzaGFwZXM9IkltYWdlX3gwMDIwXzEiPjwhW2VuZGlmXT48L3NwYW4+PHNwYW4KK2xhbmc9RU4tVVMgc3R5bGU9J21zby1hbnNpLWxhbmd1YWdlOkVOLVVTJz48bzpwPjwvbzpwPjwvc3Bhbj48L3A+CisKKzxwIHN0eWxlPSdtYXJnaW4tdG9wOjUuMHB0O21hcmdpbi1yaWdodDowY207bWFyZ2luLWJvdHRvbTowY207bWFyZ2luLWxlZnQ6MzYuMHB0OworbWFyZ2luLWJvdHRvbTouMDAwMXB0O3RleHQtaW5kZW50Oi0xOC4wcHQ7bXNvLWxpc3Q6bDMgbGV2ZWwxIGxmbzE7dGFiLXN0b3BzOgorbGlzdCAzNi4wcHQnPjwhW2lmICFzdXBwb3J0TGlzdHNdPjxzcGFuIGxhbmc9RU4tVVMgc3R5bGU9J21zby1hbnNpLWxhbmd1YWdlOgorRU4tVVMnPjxzcGFuIHN0eWxlPSdtc28tbGlzdDpJZ25vcmUnPjIuPHNwYW4gc3R5bGU9J2ZvbnQ6Ny4wcHQgIlRpbWVzIE5ldyBSb21hbiInPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOworPC9zcGFuPjwvc3Bhbj48L3NwYW4+PCFbZW5kaWZdPjxzcGFuIGxhbmc9RU4tVVMgc3R5bGU9J21zby1hbnNpLWxhbmd1YWdlOkVOLVVTJz5BCituZXcgd2luZG93IHdpbGwgYXBwZWFyLiBTZWxlY3QgUm9ib3RNTCBEYXNoQm9hcmQgY2hlYXQgc2hlZXQgZnJvbSB0aGUgbGlzdC48bzpwPjwvbzpwPjwvc3Bhbj48L3A+CisKKzxwIHN0eWxlPSdtYXJnaW4tdG9wOjUuMHB0O21hcmdpbi1yaWdodDowY207bWFyZ2luLWJvdHRvbTowY207bWFyZ2luLWxlZnQ6MzYuMHB0OworbWFyZ2luLWJvdHRvbTouMDAwMXB0Jz48c3BhbiBzdHlsZT0nbXNvLW5vLXByb29mOnllcyc+PCEtLVtpZiBndGUgdm1sIDFdPjx2OnNoYXBlCisgaWQ9IkltYWdlX3gwMDIwXzIiIG86c3BpZD0iX3gwMDAwX2kxMDI2IiB0eXBlPSIjX3gwMDAwX3Q3NSIgc3R5bGU9J3dpZHRoOjE5Ny4yNXB0OworIGhlaWdodDoyNzYuNzVwdDt2aXNpYmlsaXR5OnZpc2libGU7bXNvLXdyYXAtc3R5bGU6c3F1YXJlJz4KKyA8djppbWFnZWRhdGEgc3JjPSJSb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL2ltYWdlMDAzLmVteiIgbzp0aXRsZT0iIi8+Cis8L3Y6c2hhcGU+PCFbZW5kaWZdLS0+PCFbaWYgIXZtbF0+PGltZyB3aWR0aD0yNjMgaGVpZ2h0PTM2OQorc3JjPSJSb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL2ltYWdlMDA0LmdpZiIgdjpzaGFwZXM9IkltYWdlX3gwMDIwXzIiPjwhW2VuZGlmXT48L3NwYW4+PHNwYW4KK2xhbmc9RU4tVVMgc3R5bGU9J21zby1hbnNpLWxhbmd1YWdlOkVOLVVTJz48bzpwPjwvbzpwPjwvc3Bhbj48L3A+CisKKzxwIHN0eWxlPSdtYXJnaW4tdG9wOjUuMHB0O21hcmdpbi1yaWdodDowY207bWFyZ2luLWJvdHRvbTowY207bWFyZ2luLWxlZnQ6MzYuMHB0OworbWFyZ2luLWJvdHRvbTouMDAwMXB0O3RleHQtaW5kZW50Oi0xOC4wcHQ7bXNvLWxpc3Q6bDIgbGV2ZWwxIGxmbzI7dGFiLXN0b3BzOgorbGlzdCAzNi4wcHQnPjwhW2lmICFzdXBwb3J0TGlzdHNdPjxzcGFuIGxhbmc9RU4tVVMgc3R5bGU9J21zby1hbnNpLWxhbmd1YWdlOgorRU4tVVMnPjxzcGFuIHN0eWxlPSdtc28tbGlzdDpJZ25vcmUnPjMuPHNwYW4gc3R5bGU9J2ZvbnQ6Ny4wcHQgIlRpbWVzIE5ldyBSb21hbiInPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOworPC9zcGFuPjwvc3Bhbj48L3NwYW4+PCFbZW5kaWZdPjxzcGFuIGxhbmc9RU4tVVMgc3R5bGU9J21zby1hbnNpLWxhbmd1YWdlOkVOLVVTJz5UaGUKK1JvYm90TUwgY2hlYXQgc2hlZXQgd2lsbCBhcHBlYXIgaW4gdGhlIHJpZ2h0IHNpZGUgb2YgdGhlIFJvYm90TUwgbW9kZWxsaW5nCitlbnZpcm9ubWVudCBhcyBzaG93biBiZWxvdy4gWW91IGhhdmUgdG8gZm9sbG93IHRoZSB3b3JrZmxvdyB0YXNrcyBkZXNjcmliZWQgaW4KK3RoZSBjaGVhdCBzaGVldHMgdG8gbW9kZWwgYW5kIGRlcGxveSBhIHJvYm90aWMgc3lzdGVtLjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4KKworPHAgY2xhc3M9TXNvTm9ybWFsPjxzcGFuIHN0eWxlPSdtc28tZmFyZWFzdC1sYW5ndWFnZTpGUjttc28tbm8tcHJvb2Y6eWVzJz48IS0tW2lmIGd0ZSB2bWwgMV0+PHY6c2hhcGUKKyBpZD0iSW1hZ2VfeDAwMjBfNCIgbzpzcGlkPSJfeDAwMDBfaTEwMjUiIHR5cGU9IiNfeDAwMDBfdDc1IiBzdHlsZT0nd2lkdGg6NDUzLjc1cHQ7CisgaGVpZ2h0OjM4OC41cHQ7dmlzaWJpbGl0eTp2aXNpYmxlO21zby13cmFwLXN0eWxlOnNxdWFyZSc+CisgPHY6aW1hZ2VkYXRhIHNyYz0iUm9ib3RNTENoZWF0U2hlZXRzSGVscF9maWNoaWVycy9pbWFnZTAwNS5lbXoiIG86dGl0bGU9IiIvPgorPC92OnNoYXBlPjwhW2VuZGlmXS0tPjwhW2lmICF2bWxdPjxpbWcgd2lkdGg9NjA1IGhlaWdodD01MTgKK3NyYz0iUm9ib3RNTENoZWF0U2hlZXRzSGVscF9maWNoaWVycy9pbWFnZTAwNi5naWYiIHY6c2hhcGVzPSJJbWFnZV94MDAyMF80Ij48IVtlbmRpZl0+PC9zcGFuPjxzcGFuCitsYW5nPUVOLVVTIHN0eWxlPSdtc28tYW5zaS1sYW5ndWFnZTpFTi1VUyc+PG86cD48L286cD48L3NwYW4+PC9wPgorCis8cCBzdHlsZT0nbWFyZ2luLXRvcDo1LjBwdDttYXJnaW4tcmlnaHQ6MGNtO21hcmdpbi1ib3R0b206MGNtO21hcmdpbi1sZWZ0OjM2LjBwdDsKK21hcmdpbi1ib3R0b206LjAwMDFwdDt0ZXh0LWluZGVudDotMTguMHB0O21zby1saXN0OmwyIGxldmVsMSBsZm8yO3RhYi1zdG9wczoKK2xpc3QgMzYuMHB0Jz48IVtpZiAhc3VwcG9ydExpc3RzXT48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdtc28tYW5zaS1sYW5ndWFnZToKK0VOLVVTJz48c3BhbiBzdHlsZT0nbXNvLWxpc3Q6SWdub3JlJz40LjxzcGFuIHN0eWxlPSdmb250OjcuMHB0ICJUaW1lcyBOZXcgUm9tYW4iJz4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsKKzwvc3Bhbj48L3NwYW4+PC9zcGFuPjwhW2VuZGlmXT48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdtc28tYW5zaS1sYW5ndWFnZTpFTi1VUyc+Q2hlYXQKK3NoZWV0cyB0aXBzOiA8bzpwPjwvbzpwPjwvc3Bhbj48L3A+CisKKzxwIGNsYXNzPU1zb0xpc3RQYXJhZ3JhcGggc3R5bGU9J21zby1tYXJnaW4tdG9wLWFsdDphdXRvO21zby1tYXJnaW4tYm90dG9tLWFsdDoKK2F1dG87bWFyZ2luLWxlZnQ6NzIuMHB0O21zby1hZGQtc3BhY2U6YXV0bzt0ZXh0LWluZGVudDotMTguMHB0O2xpbmUtaGVpZ2h0Ogorbm9ybWFsO21zby1vdXRsaW5lLWxldmVsOjM7bXNvLWxpc3Q6bDIgbGV2ZWwyIGxmbzI7dGFiLXN0b3BzOmxpc3QgNzIuMHB0Jz48IVtpZiAhc3VwcG9ydExpc3RzXT48c3BhbgorbGFuZz1FTi1VUyBzdHlsZT0nZm9udC1zaXplOjEyLjBwdDtmb250LWZhbWlseTpTeW1ib2w7bXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6CitTeW1ib2w7bXNvLWJpZGktZm9udC1mYW1pbHk6U3ltYm9sO21zby1hbnNpLWxhbmd1YWdlOkVOLVVTJz48c3Bhbgorc3R5bGU9J21zby1saXN0Oklnbm9yZSc+tzxzcGFuIHN0eWxlPSdmb250OjcuMHB0ICJUaW1lcyBOZXcgUm9tYW4iJz4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsKKzwvc3Bhbj48L3NwYW4+PC9zcGFuPjwhW2VuZGlmXT48Yj48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdmb250LXNpemU6MTIuMHB0OworZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiIsInNlcmlmIjttc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKK21zby1hbnNpLWxhbmd1YWdlOkVOLVVTO21zby1mYXJlYXN0LWxhbmd1YWdlOkZSJz5SZXN0YXJ0aW5nIHRhc2tzOiA8L3NwYW4+PC9iPjxzcGFuCitsYW5nPUVOLVVTIHN0eWxlPSdmb250LXNpemU6MTIuMHB0O2ZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iLCJzZXJpZiI7Cittc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjttc28tYW5zaS1sYW5ndWFnZTpFTi1VUzttc28tZmFyZWFzdC1sYW5ndWFnZToKK0ZSJz5SaWdodCBjbGlja2luZyBvbiB0aGUgcm9vdCBub2RlIGluIHRoZSB0YXNrIGV4cGxvcmVyIHNob3dzIGEgbWVudSBpdGVtCismcXVvdDtSZXN0YXJ0IGFsbCB0YXNrcyZxdW90Oy4gSWYgc2VsZWN0ZWQgdGhpcyB3aWxsIHJlc2V0IHRoZSBzdGF0ZSBvZiBldmVyeQordGFzayBpbiB0aGUgUm9ib3RNTCBjb21wb3NpdGUgY2hlYXQgc2hlZXQuIFVzZSB0aGlzIG9ubHkgaWYgeW91IHdhbnQgdG8gcmVzZXQKK2FsbCB0YXNrcy4gVGhlIGNvbnRleHQgbWVudSBmb3IgYW55IG90aGVyIHRhc2sgd2lsbCBoYXZlIGEgbWVudSBvcHRpb24gdG8gcmVzZXQKK2FuIGluZGl2aWR1YWwgdGFzay4gQW55IHRhc2tzIHdoaWNoIGRlcGVuZCBvbiB0aGlzIHRhc2sgd2lsbCBhbHNvIGJlIHJlc2V0LCBhbmQKK2ZvciB0YXNrIGdyb3VwcyBhbGwgc3VidGFza3Mgd2lsbCBhbHNvIGJlIHJlc2V0Ljwvc3Bhbj48c3BhbiBsYW5nPUVOLVVTCitzdHlsZT0nZm9udC1zaXplOjEyLjBwdDttc28tYW5zaS1sYW5ndWFnZTpFTi1VUyc+PG86cD48L286cD48L3NwYW4+PC9wPgorCis8cCBjbGFzcz1Nc29Ob3JtYWw+PHNwYW4gbGFuZz1FTi1VUyBzdHlsZT0nbXNvLWFuc2ktbGFuZ3VhZ2U6RU4tVVMnPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4KKworPC9kaXY+CisKKzwvYm9keT4KKworPC9odG1sPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1JvYm90TUxDaGVhdFNoZWV0c0hlbHBfZmljaGllcnMvY29sb3JzY2hlbWVtYXBwaW5nLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL2NvbG9yc2NoZW1lbWFwcGluZy54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmEwMDY5YwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL2NvbG9yc2NoZW1lbWFwcGluZy54bWwKQEAgLTAsMCArMSwyIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCIgc3RhbmRhbG9uZT0ieWVzIj8+Cis8YTpjbHJNYXAgeG1sbnM6YT0iaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL2RyYXdpbmdtbC8yMDA2L21haW4iIGJnMT0ibHQxIiB0eDE9ImRrMSIgYmcyPSJsdDIiIHR4Mj0iZGsyIiBhY2NlbnQxPSJhY2NlbnQxIiBhY2NlbnQyPSJhY2NlbnQyIiBhY2NlbnQzPSJhY2NlbnQzIiBhY2NlbnQ0PSJhY2NlbnQ0IiBhY2NlbnQ1PSJhY2NlbnQ1IiBhY2NlbnQ2PSJhY2NlbnQ2IiBobGluaz0iaGxpbmsiIGZvbEhsaW5rPSJmb2xIbGluayIvPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL2ZpbGVsaXN0LnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL2ZpbGVsaXN0LnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNjBhMDM5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1JvYm90TUxDaGVhdFNoZWV0c0hlbHBfZmljaGllcnMvZmlsZWxpc3QueG1sCkBAIC0wLDAgKzEsMTIgQEAKKzx4bWwgeG1sbnM6bz0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6b2ZmaWNlIj4KKyA8bzpNYWluRmlsZSBIUmVmPSIuLi9Sb2JvdE1MQ2hlYXRTaGVldHNIZWxwLmh0bWwiLz4KKyA8bzpGaWxlIEhSZWY9InRoZW1lZGF0YS50aG14Ii8+CisgPG86RmlsZSBIUmVmPSJjb2xvcnNjaGVtZW1hcHBpbmcueG1sIi8+CisgPG86RmlsZSBIUmVmPSJpbWFnZTAwMS5lbXoiLz4KKyA8bzpGaWxlIEhSZWY9ImltYWdlMDAyLmdpZiIvPgorIDxvOkZpbGUgSFJlZj0iaW1hZ2UwMDMuZW16Ii8+CisgPG86RmlsZSBIUmVmPSJpbWFnZTAwNC5naWYiLz4KKyA8bzpGaWxlIEhSZWY9ImltYWdlMDA1LmVteiIvPgorIDxvOkZpbGUgSFJlZj0iaW1hZ2UwMDYuZ2lmIi8+CisgPG86RmlsZSBIUmVmPSJmaWxlbGlzdC54bWwiLz4KKzwveG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL2ltYWdlMDAxLmVteiBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL2ltYWdlMDAxLmVtegpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hODM1ZmEwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1JvYm90TUxDaGVhdFNoZWV0c0hlbHBfZmljaGllcnMvaW1hZ2UwMDEuZW16CkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL2ltYWdlMDAyLmdpZiBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL2ltYWdlMDAyLmdpZgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMjVlMDk0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1JvYm90TUxDaGVhdFNoZWV0c0hlbHBfZmljaGllcnMvaW1hZ2UwMDIuZ2lmCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL2ltYWdlMDAzLmVteiBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL2ltYWdlMDAzLmVtegpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kZjk4NDk3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1JvYm90TUxDaGVhdFNoZWV0c0hlbHBfZmljaGllcnMvaW1hZ2UwMDMuZW16CkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL2ltYWdlMDA0LmdpZiBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL2ltYWdlMDA0LmdpZgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44N2QxODJkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1JvYm90TUxDaGVhdFNoZWV0c0hlbHBfZmljaGllcnMvaW1hZ2UwMDQuZ2lmCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL2ltYWdlMDA1LmVteiBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL2ltYWdlMDA1LmVtegpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMTc3NWZhCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1JvYm90TUxDaGVhdFNoZWV0c0hlbHBfZmljaGllcnMvaW1hZ2UwMDUuZW16CkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL2ltYWdlMDA2LmdpZiBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL2ltYWdlMDA2LmdpZgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zYjQ5NDc2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1JvYm90TUxDaGVhdFNoZWV0c0hlbHBfZmljaGllcnMvaW1hZ2UwMDYuZ2lmCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL3RoZW1lZGF0YS50aG14IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1JvYm90TUxDaGVhdFNoZWV0c0hlbHBfZmljaGllcnMvdGhlbWVkYXRhLnRobXgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGVmODBlOAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MQ2hlYXRTaGVldHNIZWxwX2ZpY2hpZXJzL3RoZW1lZGF0YS50aG14CkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MR2V0dGluZ1N0YXJ0ZWQub2R0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1JvYm90TUxHZXR0aW5nU3RhcnRlZC5vZHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDY1NjdhYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MR2V0dGluZ1N0YXJ0ZWQub2R0CkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MTW9kZWxsaW5nTGFuZ3VhZ2UuZG9jeCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MTW9kZWxsaW5nTGFuZ3VhZ2UuZG9jeApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hZWYyYTEyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1JvYm90TUxNb2RlbGxpbmdMYW5ndWFnZS5kb2N4CkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MTW9kZWxsaW5nTGFuZ3VhZ2UuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MTW9kZWxsaW5nTGFuZ3VhZ2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMjQ1NzMxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1JvYm90TUxNb2RlbGxpbmdMYW5ndWFnZS5odG1sCkBAIC0wLDAgKzEsNDQ5IEBACis8aHRtbCB4bWxuczp2PSJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOnZtbCIKK3htbG5zOm89InVybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIKK3htbG5zOnc9InVybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOndvcmQiCit4bWxuczptPSJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL29mZmljZS8yMDA0LzEyL29tbWwiCit4bWxucz0iaHR0cDovL3d3dy53My5vcmcvVFIvUkVDLWh0bWw0MCI+CisKKzxoZWFkPgorPG1ldGEgaHR0cC1lcXVpdj1Db250ZW50LVR5cGUgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXdpbmRvd3MtMTI1MiI+Cis8bWV0YSBuYW1lPVByb2dJZCBjb250ZW50PVdvcmQuRG9jdW1lbnQ+Cis8bWV0YSBuYW1lPUdlbmVyYXRvciBjb250ZW50PSJNaWNyb3NvZnQgV29yZCAxMiI+Cis8bWV0YSBuYW1lPU9yaWdpbmF0b3IgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTIiPgorPGxpbmsgcmVsPUZpbGUtTGlzdCBocmVmPSJSb2JvdE1MTW9kZWxsaW5nTGFuZ3VhZ2VfZmljaGllcnMvZmlsZWxpc3QueG1sIj4KKzwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPgorIDxvOkRvY3VtZW50UHJvcGVydGllcz4KKyAgPG86QXV0aG9yPlNhYWRpYSBESE9VSUI8L286QXV0aG9yPgorICA8bzpMYXN0QXV0aG9yPlNhYWRpYSBESE9VSUI8L286TGFzdEF1dGhvcj4KKyAgPG86UmV2aXNpb24+MjwvbzpSZXZpc2lvbj4KKyAgPG86VG90YWxUaW1lPjI8L286VG90YWxUaW1lPgorICA8bzpDcmVhdGVkPjIwMTItMDQtMjRUMDk6MTc6MDBaPC9vOkNyZWF0ZWQ+CisgIDxvOkxhc3RTYXZlZD4yMDEyLTA0LTI0VDA5OjE3OjAwWjwvbzpMYXN0U2F2ZWQ+CisgIDxvOlBhZ2VzPjE8L286UGFnZXM+CisgIDxvOldvcmRzPjExPC9vOldvcmRzPgorICA8bzpDaGFyYWN0ZXJzPjY0PC9vOkNoYXJhY3RlcnM+CisgIDxvOkNvbXBhbnk+Q0VBPC9vOkNvbXBhbnk+CisgIDxvOkxpbmVzPjE8L286TGluZXM+CisgIDxvOlBhcmFncmFwaHM+MTwvbzpQYXJhZ3JhcGhzPgorICA8bzpDaGFyYWN0ZXJzV2l0aFNwYWNlcz43NDwvbzpDaGFyYWN0ZXJzV2l0aFNwYWNlcz4KKyAgPG86VmVyc2lvbj4xMi4wMDwvbzpWZXJzaW9uPgorIDwvbzpEb2N1bWVudFByb3BlcnRpZXM+Cis8L3htbD48IVtlbmRpZl0tLT4KKzxsaW5rIHJlbD10aGVtZURhdGEgaHJlZj0iUm9ib3RNTE1vZGVsbGluZ0xhbmd1YWdlX2ZpY2hpZXJzL3RoZW1lZGF0YS50aG14Ij4KKzxsaW5rIHJlbD1jb2xvclNjaGVtZU1hcHBpbmcKK2hyZWY9IlJvYm90TUxNb2RlbGxpbmdMYW5ndWFnZV9maWNoaWVycy9jb2xvcnNjaGVtZW1hcHBpbmcueG1sIj4KKzwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPgorIDx3OldvcmREb2N1bWVudD4KKyAgPHc6U3BlbGxpbmdTdGF0ZT5DbGVhbjwvdzpTcGVsbGluZ1N0YXRlPgorICA8dzpHcmFtbWFyU3RhdGU+Q2xlYW48L3c6R3JhbW1hclN0YXRlPgorICA8dzpUcmFja01vdmVzPmZhbHNlPC93OlRyYWNrTW92ZXM+CisgIDx3OlRyYWNrRm9ybWF0dGluZy8+CisgIDx3Okh5cGhlbmF0aW9uWm9uZT4yMTwvdzpIeXBoZW5hdGlvblpvbmU+CisgIDx3OlB1bmN0dWF0aW9uS2VybmluZy8+CisgIDx3OlZhbGlkYXRlQWdhaW5zdFNjaGVtYXMvPgorICA8dzpTYXZlSWZYTUxJbnZhbGlkPmZhbHNlPC93OlNhdmVJZlhNTEludmFsaWQ+CisgIDx3Oklnbm9yZU1peGVkQ29udGVudD5mYWxzZTwvdzpJZ25vcmVNaXhlZENvbnRlbnQ+CisgIDx3OkFsd2F5c1Nob3dQbGFjZWhvbGRlclRleHQ+ZmFsc2U8L3c6QWx3YXlzU2hvd1BsYWNlaG9sZGVyVGV4dD4KKyAgPHc6RG9Ob3RQcm9tb3RlUUYvPgorICA8dzpMaWRUaGVtZU90aGVyPkZSPC93OkxpZFRoZW1lT3RoZXI+CisgIDx3OkxpZFRoZW1lQXNpYW4+WC1OT05FPC93OkxpZFRoZW1lQXNpYW4+CisgIDx3OkxpZFRoZW1lQ29tcGxleFNjcmlwdD5YLU5PTkU8L3c6TGlkVGhlbWVDb21wbGV4U2NyaXB0PgorICA8dzpDb21wYXRpYmlsaXR5PgorICAgPHc6QnJlYWtXcmFwcGVkVGFibGVzLz4KKyAgIDx3OlNuYXBUb0dyaWRJbkNlbGwvPgorICAgPHc6V3JhcFRleHRXaXRoUHVuY3QvPgorICAgPHc6VXNlQXNpYW5CcmVha1J1bGVzLz4KKyAgIDx3OkRvbnRHcm93QXV0b2ZpdC8+CisgICA8dzpTcGxpdFBnQnJlYWtBbmRQYXJhTWFyay8+CisgICA8dzpEb250VmVydEFsaWduQ2VsbFdpdGhTcC8+CisgICA8dzpEb250QnJlYWtDb25zdHJhaW5lZEZvcmNlZFRhYmxlcy8+CisgICA8dzpEb250VmVydEFsaWduSW5UeGJ4Lz4KKyAgIDx3OldvcmQxMUtlcm5pbmdQYWlycy8+CisgICA8dzpDYWNoZWRDb2xCYWxhbmNlLz4KKyAgPC93OkNvbXBhdGliaWxpdHk+CisgIDx3OkJyb3dzZXJMZXZlbD5NaWNyb3NvZnRJbnRlcm5ldEV4cGxvcmVyNDwvdzpCcm93c2VyTGV2ZWw+CisgIDxtOm1hdGhQcj4KKyAgIDxtOm1hdGhGb250IG06dmFsPSJDYW1icmlhIE1hdGgiLz4KKyAgIDxtOmJya0JpbiBtOnZhbD0iYmVmb3JlIi8+CisgICA8bTpicmtCaW5TdWIgbTp2YWw9IiYjNDU7LSIvPgorICAgPG06c21hbGxGcmFjIG06dmFsPSJvZmYiLz4KKyAgIDxtOmRpc3BEZWYvPgorICAgPG06bE1hcmdpbiBtOnZhbD0iMCIvPgorICAgPG06ck1hcmdpbiBtOnZhbD0iMCIvPgorICAgPG06ZGVmSmMgbTp2YWw9ImNlbnRlckdyb3VwIi8+CisgICA8bTp3cmFwSW5kZW50IG06dmFsPSIxNDQwIi8+CisgICA8bTppbnRMaW0gbTp2YWw9InN1YlN1cCIvPgorICAgPG06bmFyeUxpbSBtOnZhbD0idW5kT3ZyIi8+CisgIDwvbTptYXRoUHI+PC93OldvcmREb2N1bWVudD4KKzwveG1sPjwhW2VuZGlmXS0tPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPgorIDx3OkxhdGVudFN0eWxlcyBEZWZMb2NrZWRTdGF0ZT0iZmFsc2UiIERlZlVuaGlkZVdoZW5Vc2VkPSJ0cnVlIgorICBEZWZTZW1pSGlkZGVuPSJ0cnVlIiBEZWZRRm9ybWF0PSJmYWxzZSIgRGVmUHJpb3JpdHk9Ijk5IgorICBMYXRlbnRTdHlsZUNvdW50PSIyNjciPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjAiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJOb3JtYWwiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI5IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyAxIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyAzIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA2Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA3Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA4Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iOSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iaGVhZGluZyA5Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIE5hbWU9InRvYyAxIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIE5hbWU9InRvYyAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIE5hbWU9InRvYyAzIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIE5hbWU9InRvYyA0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIE5hbWU9InRvYyA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIE5hbWU9InRvYyA2Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIE5hbWU9InRvYyA3Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIE5hbWU9InRvYyA4Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzkiIE5hbWU9InRvYyA5Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzUiIFFGb3JtYXQ9InRydWUiIE5hbWU9ImNhcHRpb24iLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIxMCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIFFGb3JtYXQ9InRydWUiIE5hbWU9IlRpdGxlIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMSIgTmFtZT0iRGVmYXVsdCBQYXJhZ3JhcGggRm9udCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjExIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iU3VidGl0bGUiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIyMiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIFFGb3JtYXQ9InRydWUiIE5hbWU9IlN0cm9uZyIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjIwIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iRW1waGFzaXMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI1OSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IlRhYmxlIEdyaWQiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iUGxhY2Vob2xkZXIgVGV4dCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjEiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJObyBTcGFjaW5nIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjAiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJMaWdodCBTaGFkaW5nIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjEiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJMaWdodCBMaXN0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjIiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJMaWdodCBHcmlkIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjMiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gU2hhZGluZyAxIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjQiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gU2hhZGluZyAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjUiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gTGlzdCAxIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjYiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gTGlzdCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjciIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAxIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjgiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjkiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAzIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzAiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJEYXJrIExpc3QiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIFNoYWRpbmciLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIExpc3QiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIEdyaWQiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IFNoYWRpbmcgQWNjZW50IDEiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IExpc3QgQWNjZW50IDEiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IEdyaWQgQWNjZW50IDEiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDEgQWNjZW50IDEiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDIgQWNjZW50IDEiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBMaXN0IDEgQWNjZW50IDEiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iUmV2aXNpb24iLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzNCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIFFGb3JtYXQ9InRydWUiIE5hbWU9Ikxpc3QgUGFyYWdyYXBoIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMjkiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJRdW90ZSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjMwIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iSW50ZW5zZSBRdW90ZSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY2IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIExpc3QgMiBBY2NlbnQgMSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY3IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIEdyaWQgMSBBY2NlbnQgMSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY4IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIEdyaWQgMiBBY2NlbnQgMSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY5IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIEdyaWQgMyBBY2NlbnQgMSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcwIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iRGFyayBMaXN0IEFjY2VudCAxIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzEiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJDb2xvcmZ1bCBTaGFkaW5nIEFjY2VudCAxIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzIiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJDb2xvcmZ1bCBMaXN0IEFjY2VudCAxIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzMiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJDb2xvcmZ1bCBHcmlkIEFjY2VudCAxIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjAiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJMaWdodCBTaGFkaW5nIEFjY2VudCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjEiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJMaWdodCBMaXN0IEFjY2VudCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjIiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJMaWdodCBHcmlkIEFjY2VudCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjMiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gU2hhZGluZyAxIEFjY2VudCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjQiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gU2hhZGluZyAyIEFjY2VudCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjUiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gTGlzdCAxIEFjY2VudCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjYiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gTGlzdCAyIEFjY2VudCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjciIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAxIEFjY2VudCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjgiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAyIEFjY2VudCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjkiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAzIEFjY2VudCAyIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzAiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJEYXJrIExpc3QgQWNjZW50IDIiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIFNoYWRpbmcgQWNjZW50IDIiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIExpc3QgQWNjZW50IDIiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIEdyaWQgQWNjZW50IDIiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IFNoYWRpbmcgQWNjZW50IDMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IExpc3QgQWNjZW50IDMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IEdyaWQgQWNjZW50IDMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDEgQWNjZW50IDMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDIgQWNjZW50IDMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBMaXN0IDEgQWNjZW50IDMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBMaXN0IDIgQWNjZW50IDMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBHcmlkIDEgQWNjZW50IDMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBHcmlkIDIgQWNjZW50IDMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBHcmlkIDMgQWNjZW50IDMiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkRhcmsgTGlzdCBBY2NlbnQgMyIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcxIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iQ29sb3JmdWwgU2hhZGluZyBBY2NlbnQgMyIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcyIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iQ29sb3JmdWwgTGlzdCBBY2NlbnQgMyIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjczIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iQ29sb3JmdWwgR3JpZCBBY2NlbnQgMyIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYwIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTGlnaHQgU2hhZGluZyBBY2NlbnQgNCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYxIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTGlnaHQgTGlzdCBBY2NlbnQgNCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYyIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTGlnaHQgR3JpZCBBY2NlbnQgNCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjYzIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIFNoYWRpbmcgMSBBY2NlbnQgNCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY0IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIFNoYWRpbmcgMiBBY2NlbnQgNCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY1IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIExpc3QgMSBBY2NlbnQgNCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY2IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIExpc3QgMiBBY2NlbnQgNCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY3IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIEdyaWQgMSBBY2NlbnQgNCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY4IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIEdyaWQgMiBBY2NlbnQgNCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjY5IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iTWVkaXVtIEdyaWQgMyBBY2NlbnQgNCIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcwIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iRGFyayBMaXN0IEFjY2VudCA0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzEiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJDb2xvcmZ1bCBTaGFkaW5nIEFjY2VudCA0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzIiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJDb2xvcmZ1bCBMaXN0IEFjY2VudCA0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzMiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJDb2xvcmZ1bCBHcmlkIEFjY2VudCA0Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjAiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJMaWdodCBTaGFkaW5nIEFjY2VudCA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjEiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJMaWdodCBMaXN0IEFjY2VudCA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjIiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJMaWdodCBHcmlkIEFjY2VudCA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjMiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gU2hhZGluZyAxIEFjY2VudCA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjQiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gU2hhZGluZyAyIEFjY2VudCA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjUiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gTGlzdCAxIEFjY2VudCA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjYiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gTGlzdCAyIEFjY2VudCA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjciIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAxIEFjY2VudCA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjgiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAyIEFjY2VudCA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNjkiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJNZWRpdW0gR3JpZCAzIEFjY2VudCA1Ii8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iNzAiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBOYW1lPSJEYXJrIExpc3QgQWNjZW50IDUiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIFNoYWRpbmcgQWNjZW50IDUiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIExpc3QgQWNjZW50IDUiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkNvbG9yZnVsIEdyaWQgQWNjZW50IDUiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IFNoYWRpbmcgQWNjZW50IDYiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IExpc3QgQWNjZW50IDYiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkxpZ2h0IEdyaWQgQWNjZW50IDYiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2MyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDEgQWNjZW50IDYiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBTaGFkaW5nIDIgQWNjZW50IDYiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBMaXN0IDEgQWNjZW50IDYiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NiIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBMaXN0IDIgQWNjZW50IDYiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2NyIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBHcmlkIDEgQWNjZW50IDYiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBHcmlkIDIgQWNjZW50IDYiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI2OSIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9Ik1lZGl1bSBHcmlkIDMgQWNjZW50IDYiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSI3MCIgU2VtaUhpZGRlbj0iZmFsc2UiCisgICBVbmhpZGVXaGVuVXNlZD0iZmFsc2UiIE5hbWU9IkRhcmsgTGlzdCBBY2NlbnQgNiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcxIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iQ29sb3JmdWwgU2hhZGluZyBBY2NlbnQgNiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjcyIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iQ29sb3JmdWwgTGlzdCBBY2NlbnQgNiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjczIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgTmFtZT0iQ29sb3JmdWwgR3JpZCBBY2NlbnQgNiIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjE5IiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iU3VidGxlIEVtcGhhc2lzIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMjEiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJJbnRlbnNlIEVtcGhhc2lzIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzEiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJTdWJ0bGUgUmVmZXJlbmNlIi8+CisgIDx3OkxzZEV4Y2VwdGlvbiBMb2NrZWQ9ImZhbHNlIiBQcmlvcml0eT0iMzIiIFNlbWlIaWRkZW49ImZhbHNlIgorICAgVW5oaWRlV2hlblVzZWQ9ImZhbHNlIiBRRm9ybWF0PSJ0cnVlIiBOYW1lPSJJbnRlbnNlIFJlZmVyZW5jZSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjMzIiBTZW1pSGlkZGVuPSJmYWxzZSIKKyAgIFVuaGlkZVdoZW5Vc2VkPSJmYWxzZSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iQm9vayBUaXRsZSIvPgorICA8dzpMc2RFeGNlcHRpb24gTG9ja2VkPSJmYWxzZSIgUHJpb3JpdHk9IjM3IiBOYW1lPSJCaWJsaW9ncmFwaHkiLz4KKyAgPHc6THNkRXhjZXB0aW9uIExvY2tlZD0iZmFsc2UiIFByaW9yaXR5PSIzOSIgUUZvcm1hdD0idHJ1ZSIgTmFtZT0iVE9DIEhlYWRpbmciLz4KKyA8L3c6TGF0ZW50U3R5bGVzPgorPC94bWw+PCFbZW5kaWZdLS0+Cis8c3R5bGU+Cis8IS0tCisgLyogRm9udCBEZWZpbml0aW9ucyAqLworIEBmb250LWZhY2UKKwl7Zm9udC1mYW1pbHk6IkNhbWJyaWEgTWF0aCI7CisJcGFub3NlLTE6MiA0IDUgMyA1IDQgNiAzIDIgNDsKKwltc28tZm9udC1jaGFyc2V0OjE7CisJbXNvLWdlbmVyaWMtZm9udC1mYW1pbHk6cm9tYW47CisJbXNvLWZvbnQtZm9ybWF0Om90aGVyOworCW1zby1mb250LXBpdGNoOnZhcmlhYmxlOworCW1zby1mb250LXNpZ25hdHVyZTowIDAgMCAwIDAgMDt9CitAZm9udC1mYWNlCisJe2ZvbnQtZmFtaWx5OkNhbGlicmk7CisJcGFub3NlLTE6MiAxNSA1IDIgMiAyIDQgMyAyIDQ7CisJbXNvLWZvbnQtY2hhcnNldDowOworCW1zby1nZW5lcmljLWZvbnQtZmFtaWx5OnN3aXNzOworCW1zby1mb250LXBpdGNoOnZhcmlhYmxlOworCW1zby1mb250LXNpZ25hdHVyZTotMTYxMDYxMTk4NSAxMDczNzUwMTM5IDAgMCAxNTkgMDt9CisgLyogU3R5bGUgRGVmaW5pdGlvbnMgKi8KKyBwLk1zb05vcm1hbCwgbGkuTXNvTm9ybWFsLCBkaXYuTXNvTm9ybWFsCisJe21zby1zdHlsZS11bmhpZGU6bm87CisJbXNvLXN0eWxlLXFmb3JtYXQ6eWVzOworCW1zby1zdHlsZS1wYXJlbnQ6IiI7CisJbWFyZ2luLXRvcDowY207CisJbWFyZ2luLXJpZ2h0OjBjbTsKKwltYXJnaW4tYm90dG9tOjEwLjBwdDsKKwltYXJnaW4tbGVmdDowY207CisJbGluZS1oZWlnaHQ6MTE1JTsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJZm9udC1zaXplOjExLjBwdDsKKwlmb250LWZhbWlseToiQ2FsaWJyaSIsInNhbnMtc2VyaWYiOworCW1zby1hc2NpaS1mb250LWZhbWlseTpDYWxpYnJpOworCW1zby1hc2NpaS10aGVtZS1mb250Om1pbm9yLWxhdGluOworCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OkNhbGlicmk7CisJbXNvLWZhcmVhc3QtdGhlbWUtZm9udDptaW5vci1sYXRpbjsKKwltc28taGFuc2ktZm9udC1mYW1pbHk6Q2FsaWJyaTsKKwltc28taGFuc2ktdGhlbWUtZm9udDptaW5vci1sYXRpbjsKKwltc28tYmlkaS1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKKwltc28tYmlkaS10aGVtZS1mb250Om1pbm9yLWJpZGk7CisJbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6RU4tVVM7fQorc3Bhbi5TcGVsbEUKKwl7bXNvLXN0eWxlLW5hbWU6IiI7CisJbXNvLXNwbC1lOnllczt9CisuTXNvQ2hwRGVmYXVsdAorCXttc28tc3R5bGUtdHlwZTpleHBvcnQtb25seTsKKwltc28tZGVmYXVsdC1wcm9wczp5ZXM7CisJbXNvLWFzY2lpLWZvbnQtZmFtaWx5OkNhbGlicmk7CisJbXNvLWFzY2lpLXRoZW1lLWZvbnQ6bWlub3ItbGF0aW47CisJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6Q2FsaWJyaTsKKwltc28tZmFyZWFzdC10aGVtZS1mb250Om1pbm9yLWxhdGluOworCW1zby1oYW5zaS1mb250LWZhbWlseTpDYWxpYnJpOworCW1zby1oYW5zaS10aGVtZS1mb250Om1pbm9yLWxhdGluOworCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOworCW1zby1iaWRpLXRoZW1lLWZvbnQ6bWlub3ItYmlkaTsKKwltc28tZmFyZWFzdC1sYW5ndWFnZTpFTi1VUzt9CisuTXNvUGFwRGVmYXVsdAorCXttc28tc3R5bGUtdHlwZTpleHBvcnQtb25seTsKKwltYXJnaW4tYm90dG9tOjEwLjBwdDsKKwlsaW5lLWhlaWdodDoxMTUlO30KK0BwYWdlIFdvcmRTZWN0aW9uMQorCXtzaXplOjU5NS4zcHQgODQxLjlwdDsKKwltYXJnaW46NzAuODVwdCA3MC44NXB0IDcwLjg1cHQgNzAuODVwdDsKKwltc28taGVhZGVyLW1hcmdpbjozNS40cHQ7CisJbXNvLWZvb3Rlci1tYXJnaW46MzUuNHB0OworCW1zby1wYXBlci1zb3VyY2U6MDt9CitkaXYuV29yZFNlY3Rpb24xCisJe3BhZ2U6V29yZFNlY3Rpb24xO30KKy0tPgorPC9zdHlsZT4KKzwhLS1baWYgZ3RlIG1zbyAxMF0+Cis8c3R5bGU+CisgLyogU3R5bGUgRGVmaW5pdGlvbnMgKi8KKyB0YWJsZS5Nc29Ob3JtYWxUYWJsZQorCXttc28tc3R5bGUtbmFtZToiVGFibGVhdSBOb3JtYWwiOworCW1zby10c3R5bGUtcm93YmFuZC1zaXplOjA7CisJbXNvLXRzdHlsZS1jb2xiYW5kLXNpemU6MDsKKwltc28tc3R5bGUtbm9zaG93OnllczsKKwltc28tc3R5bGUtcHJpb3JpdHk6OTk7CisJbXNvLXN0eWxlLXFmb3JtYXQ6eWVzOworCW1zby1zdHlsZS1wYXJlbnQ6IiI7CisJbXNvLXBhZGRpbmctYWx0OjBjbSA1LjRwdCAwY20gNS40cHQ7CisJbXNvLXBhcmEtbWFyZ2luLXRvcDowY207CisJbXNvLXBhcmEtbWFyZ2luLXJpZ2h0OjBjbTsKKwltc28tcGFyYS1tYXJnaW4tYm90dG9tOjEwLjBwdDsKKwltc28tcGFyYS1tYXJnaW4tbGVmdDowY207CisJbGluZS1oZWlnaHQ6MTE1JTsKKwltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CisJZm9udC1zaXplOjExLjBwdDsKKwlmb250LWZhbWlseToiQ2FsaWJyaSIsInNhbnMtc2VyaWYiOworCW1zby1hc2NpaS1mb250LWZhbWlseTpDYWxpYnJpOworCW1zby1hc2NpaS10aGVtZS1mb250Om1pbm9yLWxhdGluOworCW1zby1oYW5zaS1mb250LWZhbWlseTpDYWxpYnJpOworCW1zby1oYW5zaS10aGVtZS1mb250Om1pbm9yLWxhdGluOworCW1zby1mYXJlYXN0LWxhbmd1YWdlOkVOLVVTO30KKzwvc3R5bGU+Cis8IVtlbmRpZl0tLT48IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4KKyA8bzpzaGFwZWRlZmF1bHRzIHY6ZXh0PSJlZGl0IiBzcGlkbWF4PSIyMDUwIi8+Cis8L3htbD48IVtlbmRpZl0tLT48IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4KKyA8bzpzaGFwZWxheW91dCB2OmV4dD0iZWRpdCI+CisgIDxvOmlkbWFwIHY6ZXh0PSJlZGl0IiBkYXRhPSIxIi8+CisgPC9vOnNoYXBlbGF5b3V0PjwveG1sPjwhW2VuZGlmXS0tPgorPC9oZWFkPgorCis8Ym9keSBsYW5nPUZSIHN0eWxlPSd0YWItaW50ZXJ2YWw6MzUuNHB0Jz4KKworPGRpdiBjbGFzcz1Xb3JkU2VjdGlvbjE+CisKKzxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdtc28tYW5zaS1sYW5ndWFnZTpFTi1VUyc+VGhlIDxzcGFuCitjbGFzcz1TcGVsbEU+Um9ib3RNTDwvc3Bhbj4gPHNwYW4gY2xhc3M9U3BlbGxFPm1vZGVsbGluZzwvc3Bhbj4gbGFuZ3VhZ2UKK2RvY3VtZW50YXRpb24gaXMgYXZhaWxhYmxlIG9uIHRoaXMgd2Vic2l0ZS48bzpwPjwvbzpwPjwvc3Bhbj48L3A+CisKKzwvZGl2PgorCis8L2JvZHk+CisKKzwvaHRtbD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MTW9kZWxsaW5nTGFuZ3VhZ2VfZmljaGllcnMvY29sb3JzY2hlbWVtYXBwaW5nLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MTW9kZWxsaW5nTGFuZ3VhZ2VfZmljaGllcnMvY29sb3JzY2hlbWVtYXBwaW5nLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42YTAwNjljCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1JvYm90TUxNb2RlbGxpbmdMYW5ndWFnZV9maWNoaWVycy9jb2xvcnNjaGVtZW1hcHBpbmcueG1sCkBAIC0wLDAgKzEsMiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9InllcyI/PgorPGE6Y2xyTWFwIHhtbG5zOmE9Imh0dHA6Ly9zY2hlbWFzLm9wZW54bWxmb3JtYXRzLm9yZy9kcmF3aW5nbWwvMjAwNi9tYWluIiBiZzE9Imx0MSIgdHgxPSJkazEiIGJnMj0ibHQyIiB0eDI9ImRrMiIgYWNjZW50MT0iYWNjZW50MSIgYWNjZW50Mj0iYWNjZW50MiIgYWNjZW50Mz0iYWNjZW50MyIgYWNjZW50ND0iYWNjZW50NCIgYWNjZW50NT0iYWNjZW50NSIgYWNjZW50Nj0iYWNjZW50NiIgaGxpbms9ImhsaW5rIiBmb2xIbGluaz0iZm9sSGxpbmsiLz4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2h0bWwvUm9ib3RNTE1vZGVsbGluZ0xhbmd1YWdlX2ZpY2hpZXJzL2ZpbGVsaXN0LnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MTW9kZWxsaW5nTGFuZ3VhZ2VfZmljaGllcnMvZmlsZWxpc3QueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJmNjRiM2IKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2h0bWwvUm9ib3RNTE1vZGVsbGluZ0xhbmd1YWdlX2ZpY2hpZXJzL2ZpbGVsaXN0LnhtbApAQCAtMCwwICsxLDYgQEAKKzx4bWwgeG1sbnM6bz0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6b2ZmaWNlIj4KKyA8bzpNYWluRmlsZSBIUmVmPSIuLi9Sb2JvdE1MTW9kZWxsaW5nTGFuZ3VhZ2UuaHRtbCIvPgorIDxvOkZpbGUgSFJlZj0idGhlbWVkYXRhLnRobXgiLz4KKyA8bzpGaWxlIEhSZWY9ImNvbG9yc2NoZW1lbWFwcGluZy54bWwiLz4KKyA8bzpGaWxlIEhSZWY9ImZpbGVsaXN0LnhtbCIvPgorPC94bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1JvYm90TUxNb2RlbGxpbmdMYW5ndWFnZV9maWNoaWVycy90aGVtZWRhdGEudGhteCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MTW9kZWxsaW5nTGFuZ3VhZ2VfZmljaGllcnMvdGhlbWVkYXRhLnRobXgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGVmODBlOAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvaHRtbC9Sb2JvdE1MTW9kZWxsaW5nTGFuZ3VhZ2VfZmljaGllcnMvdGhlbWVkYXRhLnRobXgKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1RoZSBSb2JvdE1MIHdvcmtmbG93LmRvY3ggYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL2h0bWwvVGhlIFJvYm90TUwgd29ya2Zsb3cuZG9jeApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMTA1ZDgyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9odG1sL1RoZSBSb2JvdE1MIHdvcmtmbG93LmRvY3gKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9wbHVnaW4ucHJvcGVydGllcyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvcGx1Z2luLnByb3BlcnRpZXMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGJiZWJkNgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvcGx1Z2luLnByb3BlcnRpZXMKQEAgLTAsMCArMSwzIEBACisjUHJvcGVydGllcyBmaWxlIGZvciBvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMuZG9jCitCdW5kbGUtVmVuZG9yID0gIEVjbGlwc2UgTW9kZWxpbmcgUHJvamVjdAorQnVuZGxlLU5hbWUgPSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jIChJbmN1YmF0aW9uKQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvcGx1Z2luLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvcGx1Z2luLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMjcwMDFlCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9wbHVnaW4ueG1sCkBAIC0wLDAgKzEsMzAgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8P2VjbGlwc2UgdmVyc2lvbj0iMy40Ij8+Cis8cGx1Z2luPgorICAgPGV4dGVuc2lvbgorICAgICAgICAgcG9pbnQ9Im9yZy5lY2xpcHNlLnVpLmNoZWF0c2hlZXRzLmNoZWF0U2hlZXRDb250ZW50Ij4KKyAgICAgIDxjYXRlZ29yeQorICAgICAgICAgICAgaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MuY2F0ZWdvcnkiCisgICAgICAgICAgICBuYW1lPSJyb2JvdE1MLmNoZWF0c2hlZXRzIj4KKyAgICAgIDwvY2F0ZWdvcnk+CisgICAgICA8Y2hlYXRzaGVldAorICAgICAgICAgICAgY2F0ZWdvcnk9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MuY2F0ZWdvcnkiCisgICAgICAgICAgICBjb21wb3NpdGU9InRydWUiCisgICAgICAgICAgICBjb250ZW50RmlsZT0iJG5sJC9jaGVhdHNoZWV0cy9Sb2JvdG1sV29ya0Zsb3cueG1sIgorICAgICAgICAgICAgaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MuY2hlYXRzaGVldDEwNTE5MjMzMjUiCisgICAgICAgICAgICBuYW1lPSJSb2JvdE1MIERhc2hCb2FyZCI+CisgICAgICAgICA8ZGVzY3JpcHRpb24+CisgICAgICAgICAgICBSb2JvdE1MIFdvcmsgRmxvdworICAgICAgICAgPC9kZXNjcmlwdGlvbj4KKyAgICAgIDwvY2hlYXRzaGVldD4KKyAgIDwvZXh0ZW5zaW9uPgorICAgICA8IS0tZXh0ZW5zaW9uCisgICAgICAgICBwb2ludD0ib3JnLmVjbGlwc2UuaGVscC50b2MiPgorICAgICAgPHRvYworICAgICAgICAgICAgZmlsZT0iaGVscC90b2MueG1sIgorICAgICAgICAgICAgcHJpbWFyeT0idHJ1ZSI+CisgICAgICA8L3RvYz4KKyAgICAgICAgICAgCisgICA8L2V4dGVuc2lvbi0tPgorCis8L3BsdWdpbj4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvcG9tLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MvcG9tLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MjEzMzIyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9wb20ueG1sCkBAIC0wLDAgKzEsMTEgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8cHJvamVjdD4KKwk8bW9kZWxWZXJzaW9uPjQuMC4wPC9tb2RlbFZlcnNpb24+CisJPHBhcmVudD4KKwkJPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBhcmVudDwvYXJ0aWZhY3RJZD4KKwkJPGdyb3VwSWQ+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sPC9ncm91cElkPgorCQk8dmVyc2lvbj4xLjIuMC1TTkFQU0hPVDwvdmVyc2lvbj4KKwk8L3BhcmVudD4KKwk8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jPC9hcnRpZmFjdElkPgorCTxwYWNrYWdpbmc+ZWNsaXBzZS1wbHVnaW48L3BhY2thZ2luZz4KKzwvcHJvamVjdD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvZG9jL0FjdGl2YXRvci5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RvYy9BY3RpdmF0b3IuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41ZWU3ZTU3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYy9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL2RvYy9BY3RpdmF0b3IuamF2YQpAQCAtMCwwICsxLDY1IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBDRUEgTElTVC4KKyAqCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBTYWFkaWEgRGhvdWliIChDRUEgTElTVCkgc2FhZGlhLmRob3VpYkBjZWEuZnIgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRvYzsKKworaW1wb3J0IG9yZy5lY2xpcHNlLnVpLnBsdWdpbi5BYnN0cmFjdFVJUGx1Z2luOworaW1wb3J0IG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0OworCisvKioKKyAqIFRoZSBhY3RpdmF0b3IgY2xhc3MgY29udHJvbHMgdGhlIHBsdWctaW4gbGlmZSBjeWNsZQorICovCitwdWJsaWMgY2xhc3MgQWN0aXZhdG9yIGV4dGVuZHMgQWJzdHJhY3RVSVBsdWdpbiB7CisKKwkvLyBUaGUgcGx1Zy1pbiBJRAorCXB1YmxpYyBzdGF0aWMgZmluYWwgU3RyaW5nIFBMVUdJTl9JRCA9ICJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZG9jIjsgLy8kTk9OLU5MUy0xJAorCisJLy8gVGhlIHNoYXJlZCBpbnN0YW5jZQorCXByaXZhdGUgc3RhdGljIEFjdGl2YXRvciBwbHVnaW47CisKKwkvKioKKwkgKiBUaGUgY29uc3RydWN0b3IKKwkgKi8KKwlwdWJsaWMgQWN0aXZhdG9yKCkgeworCX0KKworCS8qCisJICogKG5vbi1KYXZhZG9jKQorCSAqCisJICogQHNlZSBvcmcuZWNsaXBzZS51aS5wbHVnaW4uQWJzdHJhY3RVSVBsdWdpbiNzdGFydChvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQ29udGV4dCkKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBzdGFydChCdW5kbGVDb250ZXh0IGNvbnRleHQpIHRocm93cyBFeGNlcHRpb24geworCQlzdXBlci5zdGFydChjb250ZXh0KTsKKwkJcGx1Z2luID0gdGhpczsKKwl9CisKKwkvKgorCSAqIChub24tSmF2YWRvYykKKwkgKgorCSAqIEBzZWUgb3JnLmVjbGlwc2UudWkucGx1Z2luLkFic3RyYWN0VUlQbHVnaW4jc3RvcChvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQ29udGV4dCkKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBzdG9wKEJ1bmRsZUNvbnRleHQgY29udGV4dCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCXBsdWdpbiA9IG51bGw7CisJCXN1cGVyLnN0b3AoY29udGV4dCk7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgc2hhcmVkIGluc3RhbmNlCisJICoKKwkgKiBAcmV0dXJuIHRoZSBzaGFyZWQgaW5zdGFuY2UKKwkgKi8KKwlwdWJsaWMgc3RhdGljIEFjdGl2YXRvciBnZXREZWZhdWx0KCkgeworCQlyZXR1cm4gcGx1Z2luOworCX0KKworfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmhlbHAvLnByb2plY3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuaGVscC8ucHJvamVjdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41YzYzZDliCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmhlbHAvLnByb2plY3QKQEAgLTAsMCArMSwyMiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxwcm9qZWN0RGVzY3JpcHRpb24+CisJPG5hbWU+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmhlbHA8L25hbWU+CisJPGNvbW1lbnQ+PC9jb21tZW50PgorCTxwcm9qZWN0cz4KKwk8L3Byb2plY3RzPgorCTxidWlsZFNwZWM+CisJCTxidWlsZENvbW1hbmQ+CisJCQk8bmFtZT5vcmcuZWNsaXBzZS5wZGUuTWFuaWZlc3RCdWlsZGVyPC9uYW1lPgorCQkJPGFyZ3VtZW50cz4KKwkJCTwvYXJndW1lbnRzPgorCQk8L2J1aWxkQ29tbWFuZD4KKwkJPGJ1aWxkQ29tbWFuZD4KKwkJCTxuYW1lPm9yZy5lY2xpcHNlLnBkZS5TY2hlbWFCdWlsZGVyPC9uYW1lPgorCQkJPGFyZ3VtZW50cz4KKwkJCTwvYXJndW1lbnRzPgorCQk8L2J1aWxkQ29tbWFuZD4KKwk8L2J1aWxkU3BlYz4KKwk8bmF0dXJlcz4KKwkJPG5hdHVyZT5vcmcuZWNsaXBzZS5wZGUuUGx1Z2luTmF0dXJlPC9uYXR1cmU+CisJPC9uYXR1cmVzPgorPC9wcm9qZWN0RGVzY3JpcHRpb24+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuaGVscC9NRVRBLUlORi9NQU5JRkVTVC5NRiBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5oZWxwL01FVEEtSU5GL01BTklGRVNULk1GCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjMwOWM2NzUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuaGVscC9NRVRBLUlORi9NQU5JRkVTVC5NRgpAQCAtMCwwICsxLDcgQEAKK01hbmlmZXN0LVZlcnNpb246IDEuMAorQnVuZGxlLVZlbmRvcjogJUJ1bmRsZS1WZW5kb3IKK0J1bmRsZS1WZXJzaW9uOiAxLjIuMC5xdWFsaWZpZXIKK0J1bmRsZS1OYW1lOiAlQnVuZGxlLU5hbWUKK0J1bmRsZS1Mb2NhbGl6YXRpb246IHBsdWdpbgorQnVuZGxlLU1hbmlmZXN0VmVyc2lvbjogMgorQnVuZGxlLVN5bWJvbGljTmFtZTogb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmhlbHA7c2luZ2xldG9uOj10cnVlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuaGVscC9hYm91dC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmhlbHAvYWJvdXQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kMzVkNWFlCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmhlbHAvYWJvdXQuaHRtbApAQCAtMCwwICsxLDI4IEBACis8IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBTdHJpY3QvL0VOIgorICAgICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS1zdHJpY3QuZHRkIj4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKzxoZWFkPgorPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMSIvPgorPHRpdGxlPkFib3V0PC90aXRsZT4KKzwvaGVhZD4KKzxib2R5IGxhbmc9IkVOLVVTIj4KKzxoMj5BYm91dCBUaGlzIENvbnRlbnQ8L2gyPgorIAorPHA+SnVuZSA1LCAyMDA3PC9wPgkKKzxoMz5MaWNlbnNlPC9oMz4KKworPHA+VGhlIEVjbGlwc2UgRm91bmRhdGlvbiBtYWtlcyBhdmFpbGFibGUgYWxsIGNvbnRlbnQgaW4gdGhpcyBwbHVnLWluICgmcXVvdDtDb250ZW50JnF1b3Q7KS4gIFVubGVzcyBvdGhlcndpc2UgCitpbmRpY2F0ZWQgYmVsb3csIHRoZSBDb250ZW50IGlzIHByb3ZpZGVkIHRvIHlvdSB1bmRlciB0aGUgdGVybXMgYW5kIGNvbmRpdGlvbnMgb2YgdGhlCitFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMS4wICgmcXVvdDtFUEwmcXVvdDspLiAgQSBjb3B5IG9mIHRoZSBFUEwgaXMgYXZhaWxhYmxlIAorYXQgPGEgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwiPmh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sPC9hPi4KK0ZvciBwdXJwb3NlcyBvZiB0aGUgRVBMLCAmcXVvdDtQcm9ncmFtJnF1b3Q7IHdpbGwgbWVhbiB0aGUgQ29udGVudC48L3A+CisKKzxwPklmIHlvdSBkaWQgbm90IHJlY2VpdmUgdGhpcyBDb250ZW50IGRpcmVjdGx5IGZyb20gdGhlIEVjbGlwc2UgRm91bmRhdGlvbiwgdGhlIENvbnRlbnQgaXMgCitiZWluZyByZWRpc3RyaWJ1dGVkIGJ5IGFub3RoZXIgcGFydHkgKCZxdW90O1JlZGlzdHJpYnV0b3ImcXVvdDspIGFuZCBkaWZmZXJlbnQgdGVybXMgYW5kIGNvbmRpdGlvbnMgbWF5CithcHBseSB0byB5b3VyIHVzZSBvZiBhbnkgb2JqZWN0IGNvZGUgaW4gdGhlIENvbnRlbnQuICBDaGVjayB0aGUgUmVkaXN0cmlidXRvcidzIGxpY2Vuc2UgdGhhdCB3YXMgCitwcm92aWRlZCB3aXRoIHRoZSBDb250ZW50LiAgSWYgbm8gc3VjaCBsaWNlbnNlIGV4aXN0cywgY29udGFjdCB0aGUgUmVkaXN0cmlidXRvci4gIFVubGVzcyBvdGhlcndpc2UKK2luZGljYXRlZCBiZWxvdywgdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIG9mIHRoZSBFUEwgc3RpbGwgYXBwbHkgdG8gYW55IHNvdXJjZSBjb2RlIGluIHRoZSBDb250ZW50CithbmQgc3VjaCBzb3VyY2UgY29kZSBtYXkgYmUgb2J0YWluZWQgYXQgPGEgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy8iPmh0dHA6Ly93d3cuZWNsaXBzZS5vcmc8L2E+LjwvcD4KKworPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmhlbHAvYnVpbGQucHJvcGVydGllcyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5oZWxwL2J1aWxkLnByb3BlcnRpZXMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDQ0NmE5MgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5oZWxwL2J1aWxkLnByb3BlcnRpZXMKQEAgLTAsMCArMSw2IEBACitiaW4uaW5jbHVkZXMgPSBwbHVnaW4ueG1sLFwKKyAgICAgICAgICAgICAgIE1FVEEtSU5GLyxcCisgICAgICAgICAgICAgICBodG1sLyxcCisgICAgICAgICAgICAgICAqLnhtbCxcCisgICAgICAgICAgICAgICBwbHVnaW4ucHJvcGVydGllcworc3JjLmluY2x1ZGVzID0gYWJvdXQuaHRtbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmhlbHAvaHRtbC9SMC4yLjMtRGVmaW5pdGlvbnMtaGVscC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmhlbHAvaHRtbC9SMC4yLjMtRGVmaW5pdGlvbnMtaGVscC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZlMDdjMTAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuaGVscC9odG1sL1IwLjIuMy1EZWZpbml0aW9ucy1oZWxwLmh0bWwKQEAgLTAsMCArMSwxMDYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8IURPQ1RZUEUgaHRtbAorICBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMSBwbHVzIE1hdGhNTCAyLjAvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvTWF0aE1MMi9kdGQveGh0bWwtbWF0aDExLWYuZHRkIj4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj48IS0tVGhpcyBmaWxlIHdhcyBjb252ZXJ0ZWQgdG8geGh0bWwgYnkgT3Blbk9mZmljZS5vcmcgLSBzZWUgaHR0cDovL3htbC5vcGVub2ZmaWNlLm9yZy9vZGYyeGh0bWwgZm9yIG1vcmUgaW5mby4tLT48aGVhZCBwcm9maWxlPSJodHRwOi8vZHVibGluY29yZS5vcmcvZG9jdW1lbnRzL2RjbWktdGVybXMvIj48bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9ImFwcGxpY2F0aW9uL3hodG1sK3htbDsgY2hhcnNldD11dGYtOCIvPjx0aXRsZSB4bWw6bGFuZz0iZW4tVVMiPkRlZmluaXRpb25zPC90aXRsZT48bWV0YSBuYW1lPSJEQ1RFUk1TLnRpdGxlIiBjb250ZW50PSJEZWZpbml0aW9ucyIgeG1sOmxhbmc9ImVuLVVTIi8+PG1ldGEgbmFtZT0iRENURVJNUy5sYW5ndWFnZSIgY29udGVudD0iZW4tVVMiIHNjaGVtZT0iRENURVJNUy5SRkM0NjQ2Ii8+PG1ldGEgbmFtZT0iRENURVJNUy5zb3VyY2UiIGNvbnRlbnQ9Imh0dHA6Ly94bWwub3Blbm9mZmljZS5vcmcvb2RmMnhodG1sIi8+PG1ldGEgbmFtZT0iRENURVJNUy5jcmVhdG9yIiBjb250ZW50PSJicnVubyBwYXRpbiIvPjxtZXRhIG5hbWU9IkRDVEVSTVMuaXNzdWVkIiBjb250ZW50PSIyMDExLTA0LTA0VDE4OjA2OjAwLjEyIiBzY2hlbWU9IkRDVEVSTVMuVzNDRFRGIi8+PG1ldGEgbmFtZT0iRENURVJNUy5jb250cmlidXRvciIgY29udGVudD0iQnJ1bm8gUGF0aW4iLz48bWV0YSBuYW1lPSJEQ1RFUk1TLm1vZGlmaWVkIiBjb250ZW50PSIyMDExLTA3LTExVDE3OjQ4OjI2LjE3IiBzY2hlbWU9IkRDVEVSTVMuVzNDRFRGIi8+PG1ldGEgbmFtZT0iRENURVJNUy5wcm92ZW5hbmNlIiBjb250ZW50PSIiIHhtbDpsYW5nPSJlbi1VUyIvPjxtZXRhIG5hbWU9IkRDVEVSTVMuc3ViamVjdCIgY29udGVudD0iUFJPVEVVUyAtIEZyZW5jaCByb2JvdGljIHBsYXRmb3JtLCIgeG1sOmxhbmc9ImVuLVVTIi8+PG1ldGEgbmFtZT0iRENURVJNUy5kZXNjcmlwdGlvbiIgY29udGVudD0iYnBhdGluIC0gMDQvMDQvMjAxMSYjeEE7LSBjcmVhdGlvbiDDoCBwYXJ0aXIgZGVzIGTDqWZpbml0aW9ucyB0ZWxsZXMgcXVlIHByw6ljaXPDqWVzIGRhbnMgbGVzIGRvY3VtZW50cyBSMi4zLjMgZXQgUjEuMi4xJiN4QTsmI3hBO2JwYXRpbiAtIDI0LzA0LzIwMTEmI3hBOy0gaW50cm9kdWN0aW9uIGRlcyByZXDDqHJlcyBkZSB0ZXh0ZSBhZmluIGRlIHBvdXZvaXIgc2UgZMOpcGxhY2VyIHNpbXBsZW1lbnQgZGFucyBsZSB0YWJsZWF1JiN4QTsmI3hBO2JwYXRpbiwgc2RlbHRvdXIgLSAyMC8wNS8yMDExJiN4QTticGF0aW4sIHNkZWx0b3VyIC0gMjMvMDUvMjAxMSYjeEE7LSBjb21wbMOpbWVudHMgYXV4IGTDqWZpbml0aW9ucyYjeEE7LSBham91dCBkZXMgYWNyb255bWVzJiN4QTstIGNvaMOpcmVuY2UgYXZlYyBsJ29udG9sb2dpZSYjeEE7JiN4QTticGF0aW4gLSAzMC8wNS8yMDExJiN4QTstIG1pc2UgZW4gY29ow6lyZW5jZSBhdmVjIGxlIGRvY3VtZW50IFIyLjMuMyYjeEE7LSBpbnRyb2R1Y3Rpb24gZGUgJiMzNDtyb2JvdGljIHN5c3RlbSBvZiBzeXRlbXMmIzM0OyIgeG1sOmxhbmc9ImVuLVVTIi8+PGxpbmsgcmVsPSJzY2hlbWEuREMiIGhyZWY9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIiBocmVmbGFuZz0iZW4iLz48bGluayByZWw9InNjaGVtYS5EQ1RFUk1TIiBocmVmPSJodHRwOi8vcHVybC5vcmcvZGMvdGVybXMvIiBocmVmbGFuZz0iZW4iLz48bGluayByZWw9InNjaGVtYS5EQ1RZUEUiIGhyZWY9Imh0dHA6Ly9wdXJsLm9yZy9kYy9kY21pdHlwZS8iIGhyZWZsYW5nPSJlbiIvPjxsaW5rIHJlbD0ic2NoZW1hLkRDQU0iIGhyZWY9Imh0dHA6Ly9wdXJsLm9yZy9kYy9kY2FtLyIgaHJlZmxhbmc9ImVuIi8+PGJhc2UgaHJlZj0iLiIvPjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CisJQHBhZ2UgeyAgfQorCXRhYmxlIHsgYm9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlOyBib3JkZXItc3BhY2luZzowOyBlbXB0eS1jZWxsczpzaG93IH0KKwl0ZCwgdGggeyB2ZXJ0aWNhbC1hbGlnbjp0b3A7IGZvbnQtc2l6ZToxMnB0O30KKwloMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHsgY2xlYXI6Ym90aCB9CisJb2wsIHVsIHsgbWFyZ2luOjA7IHBhZGRpbmc6MDt9CisJbGkgeyBsaXN0LXN0eWxlOiBub25lOyBtYXJnaW46MDsgcGFkZGluZzowO30KKwk8IS0tICJsaSBzcGFuLm9kZkxpRW5kIiAtIElFIDcgaXNzdWUtLT4KKwlsaSBzcGFuLiB7IGNsZWFyOiBib3RoOyBsaW5lLWhlaWdodDowOyB3aWR0aDowOyBoZWlnaHQ6MDsgbWFyZ2luOjA7IHBhZGRpbmc6MDsgfQorCXNwYW4uZm9vdG5vZGVOdW1iZXIgeyBwYWRkaW5nLXJpZ2h0OjFlbTsgfQorCXNwYW4uYW5ub3RhdGlvbl9zdHlsZV9ieV9maWx0ZXIgeyBmb250LXNpemU6OTUlOyBmb250LWZhbWlseTpBcmlhbDsgYmFja2dyb3VuZC1jb2xvcjojZmZmMDAwOyAgbWFyZ2luOjA7IGJvcmRlcjowOyBwYWRkaW5nOjA7ICB9CisJKiB7IG1hcmdpbjowO30KKwkuZnIzIHsgZm9udC1zaXplOjEycHQ7IHRleHQtYWxpZ246Y2VudGVyOyB2ZXJ0aWNhbC1hbGlnbjp0b3A7IHdyaXRpbmctbW9kZTpsci10YjsgfQorCS5QMTMgeyBmb250LXNpemU6OHB0OyBtYXJnaW4tYm90dG9tOjBjbTsgbWFyZ2luLXRvcDowLjEwMWNtOyB0ZXh0LWFsaWduOmp1c3RpZnkgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyB9CisJLlAxNCB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi1ib3R0b206MGNtOyBtYXJnaW4tdG9wOjAuMTAxY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGltZXMgTmV3IFJvbWFuOyB3cml0aW5nLW1vZGU6bHItdGI7IGNvbG9yOiMwMDAwMDA7IGZvbnQtc3R5bGU6bm9ybWFsOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6bm9ybWFsOyB9CisJLlAyMCB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi1ib3R0b206MGNtOyBtYXJnaW4tdG9wOjAuMTAxY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGltZXMgTmV3IFJvbWFuOyB3cml0aW5nLW1vZGU6bHItdGI7IGNvbG9yOiMwMDAwMDA7IH0KKwkuUDIxIHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgY29sb3I6IzAwMDAwMDsgfQorCS5QMjIgeyBmb250LXNpemU6OHB0OyBtYXJnaW4tYm90dG9tOjBjbTsgbWFyZ2luLXRvcDowLjEwMWNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyB9CisJLlAyM19ib3JkZXJTdGFydCB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpqdXN0aWZ5ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBwYWRkaW5nLWJvdHRvbTowY207ICBib3JkZXItYm90dG9tLXN0eWxlOm5vbmU7IH0KKwkuUDIzIHsgZm9udC1zaXplOjhwdDsgdGV4dC1hbGlnbjpqdXN0aWZ5ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBwYWRkaW5nLWJvdHRvbTowY207IHBhZGRpbmctdG9wOjAuMTAxY207ICBib3JkZXItdG9wLXN0eWxlOm5vbmU7IGJvcmRlci1ib3R0b20tc3R5bGU6bm9uZTsgfQorCS5QMjNfYm9yZGVyRW5kIHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLWJvdHRvbTowY207IHRleHQtYWxpZ246anVzdGlmeSAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGltZXMgTmV3IFJvbWFuOyB3cml0aW5nLW1vZGU6bHItdGI7IHBhZGRpbmc6MGNtOyBib3JkZXItc3R5bGU6bm9uZTsgcGFkZGluZy10b3A6MC4xMDFjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTt9CisJLlAyNSB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi1ib3R0b206MGNtOyBtYXJnaW4tdG9wOjAuMTAxY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGltZXMgTmV3IFJvbWFuOyB3cml0aW5nLW1vZGU6bHItdGI7IH0KKwkuUDI2IHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpjZW50ZXIgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyB9CisJLlAyNyB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi1ib3R0b206MGNtOyBtYXJnaW4tdG9wOjAuMTAxY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGltZXMgTmV3IFJvbWFuOyB3cml0aW5nLW1vZGU6bHItdGI7IGZvbnQtd2VpZ2h0OmJvbGQ7IH0KKwkuUDI4IHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgY29sb3I6IzAwMDAwMDsgZm9udC1zdHlsZTpub3JtYWw7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpub3JtYWw7IH0KKwkuUDI5IHsgZm9udC1zaXplOjlwdDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaG9ybmRhbGU7IHdyaXRpbmctbW9kZTpsci10YjsgY29sb3I6I2ZmZmZmZjsgZm9udC1zdHlsZTppdGFsaWM7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpib2xkOyB9CisJLlAzMCB7IGZvbnQtc2l6ZTo5cHQ7IGZvbnQtd2VpZ2h0OmJvbGQ7IG1hcmdpbi1ib3R0b206MGNtOyBtYXJnaW4tdG9wOjAuMTAxY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGhvcm5kYWxlOyB3cml0aW5nLW1vZGU6bHItdGI7IGNvbG9yOiNmZmZmZmY7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgfQorCS5QMzEgeyBmb250LXNpemU6OHB0OyBmb250LXdlaWdodDpib2xkOyBtYXJnaW4tYm90dG9tOjBjbTsgbWFyZ2luLXRvcDowLjEwMWNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyBjb2xvcjojZmZmZmZmOyBmb250LXN0eWxlOml0YWxpYzsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IH0KKwkuUDMzIHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgZm9udC1zdHlsZTpub3JtYWw7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpub3JtYWw7IH0KKwkuUDM0IHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgZm9udC1zdHlsZTppdGFsaWM7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpib2xkOyB9CisJLlAzNSB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi1ib3R0b206MGNtOyBtYXJnaW4tdG9wOjAuMTAxY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGltZXMgTmV3IFJvbWFuOyB3cml0aW5nLW1vZGU6bHItdGI7IH0KKwkuUDM2X2JvcmRlclN0YXJ0IHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLXRvcDowLjEwMWNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiMwMDAwMDA7IGZvbnQtc3R5bGU6bm9ybWFsOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6bm9ybWFsOyBwYWRkaW5nLWJvdHRvbTowY207ICBib3JkZXItYm90dG9tLXN0eWxlOm5vbmU7IH0KKwkuUDM2IHsgZm9udC1zaXplOjhwdDsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojMDAwMDAwOyBmb250LXN0eWxlOm5vcm1hbDsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0Om5vcm1hbDsgcGFkZGluZy1ib3R0b206MGNtOyBwYWRkaW5nLXRvcDowLjEwMWNtOyAgYm9yZGVyLXRvcC1zdHlsZTpub25lOyBib3JkZXItYm90dG9tLXN0eWxlOm5vbmU7IH0KKwkuUDM2X2JvcmRlckVuZCB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi1ib3R0b206MGNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiMwMDAwMDA7IGZvbnQtc3R5bGU6bm9ybWFsOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6bm9ybWFsOyBwYWRkaW5nLXRvcDowLjEwMWNtOyAgYm9yZGVyLXRvcC1zdHlsZTpub25lO30KKwkuUDM3X2JvcmRlclN0YXJ0IHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLXRvcDowLjEwMWNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiMwMDAwMDA7IGZvbnQtc3R5bGU6bm9ybWFsOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6bm9ybWFsOyBwYWRkaW5nLWJvdHRvbTowY207ICBib3JkZXItYm90dG9tLXN0eWxlOm5vbmU7IH0KKwkuUDM3IHsgZm9udC1zaXplOjhwdDsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojMDAwMDAwOyBmb250LXN0eWxlOm5vcm1hbDsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0Om5vcm1hbDsgcGFkZGluZy1ib3R0b206MGNtOyBwYWRkaW5nLXRvcDowLjEwMWNtOyAgYm9yZGVyLXRvcC1zdHlsZTpub25lOyBib3JkZXItYm90dG9tLXN0eWxlOm5vbmU7IH0KKwkuUDM3X2JvcmRlckVuZCB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi1ib3R0b206MGNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiMwMDAwMDA7IGZvbnQtc3R5bGU6bm9ybWFsOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6bm9ybWFsOyBwYWRkaW5nLXRvcDowLjEwMWNtOyAgYm9yZGVyLXRvcC1zdHlsZTpub25lO30KKwkuUDM4X2JvcmRlclN0YXJ0IHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLXRvcDowLjEwMWNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyBwYWRkaW5nOjBjbTsgYm9yZGVyLWxlZnQtc3R5bGU6bm9uZTsgYm9yZGVyLXJpZ2h0LXdpZHRoOjAuMDg4Y207IGJvcmRlci1yaWdodC1zdHlsZTpzb2xpZDsgYm9yZGVyLXJpZ2h0LWNvbG9yOiNmZjAwMDA7IGJvcmRlci10b3Atc3R5bGU6bm9uZTsgY29sb3I6IzAwMDAwMDsgZm9udC1zdHlsZTpub3JtYWw7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpub3JtYWw7IHBhZGRpbmctYm90dG9tOjBjbTsgIGJvcmRlci1ib3R0b20tc3R5bGU6bm9uZTsgfQorCS5QMzggeyBmb250LXNpemU6OHB0OyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyBwYWRkaW5nOjBjbTsgYm9yZGVyLWxlZnQtc3R5bGU6bm9uZTsgYm9yZGVyLXJpZ2h0LXdpZHRoOjAuMDg4Y207IGJvcmRlci1yaWdodC1zdHlsZTpzb2xpZDsgYm9yZGVyLXJpZ2h0LWNvbG9yOiNmZjAwMDA7IGNvbG9yOiMwMDAwMDA7IGZvbnQtc3R5bGU6bm9ybWFsOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6bm9ybWFsOyBwYWRkaW5nLWJvdHRvbTowY207IHBhZGRpbmctdG9wOjAuMTAxY207ICBib3JkZXItdG9wLXN0eWxlOm5vbmU7IGJvcmRlci1ib3R0b20tc3R5bGU6bm9uZTsgfQorCS5QMzhfYm9yZGVyRW5kIHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLWJvdHRvbTowY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGltZXMgTmV3IFJvbWFuOyB3cml0aW5nLW1vZGU6bHItdGI7IHBhZGRpbmc6MGNtOyBib3JkZXItbGVmdC1zdHlsZTpub25lOyBib3JkZXItcmlnaHQtd2lkdGg6MC4wODhjbTsgYm9yZGVyLXJpZ2h0LXN0eWxlOnNvbGlkOyBib3JkZXItcmlnaHQtY29sb3I6I2ZmMDAwMDsgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyBjb2xvcjojMDAwMDAwOyBmb250LXN0eWxlOm5vcm1hbDsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0Om5vcm1hbDsgcGFkZGluZy10b3A6MC4xMDFjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTt9CisJLlAzOV9ib3JkZXJTdGFydCB7IGZvbnQtc2l6ZTo5cHQ7IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaG9ybmRhbGU7IHdyaXRpbmctbW9kZTpsci10YjsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojZmZmZmZmOyBmb250LXN0eWxlOml0YWxpYzsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0OmJvbGQ7IHBhZGRpbmctYm90dG9tOjBjbTsgIGJvcmRlci1ib3R0b20tc3R5bGU6bm9uZTsgfQorCS5QMzkgeyBmb250LXNpemU6OXB0OyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRob3JuZGFsZTsgd3JpdGluZy1tb2RlOmxyLXRiOyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiNmZmZmZmY7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgcGFkZGluZy1ib3R0b206MGNtOyBwYWRkaW5nLXRvcDowLjEwMWNtOyAgYm9yZGVyLXRvcC1zdHlsZTpub25lOyBib3JkZXItYm90dG9tLXN0eWxlOm5vbmU7IH0KKwkuUDM5X2JvcmRlckVuZCB7IGZvbnQtc2l6ZTo5cHQ7IG1hcmdpbi1ib3R0b206MGNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRob3JuZGFsZTsgd3JpdGluZy1tb2RlOmxyLXRiOyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiNmZmZmZmY7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgcGFkZGluZy10b3A6MC4xMDFjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTt9CisJLlA0MF9ib3JkZXJTdGFydCB7IGZvbnQtc2l6ZTo5cHQ7IG1hcmdpbi10b3A6MGNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRob3JuZGFsZTsgd3JpdGluZy1tb2RlOmxyLXRiOyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiNmZmZmZmY7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgcGFkZGluZy1ib3R0b206MGNtOyAgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyB9CisJLlA0MCB7IGZvbnQtc2l6ZTo5cHQ7IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGhvcm5kYWxlOyB3cml0aW5nLW1vZGU6bHItdGI7IHBhZGRpbmc6MGNtOyBib3JkZXItc3R5bGU6bm9uZTsgY29sb3I6I2ZmZmZmZjsgZm9udC1zdHlsZTppdGFsaWM7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpib2xkOyBwYWRkaW5nLWJvdHRvbTowY207IHBhZGRpbmctdG9wOjBjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTsgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyB9CisJLlA0MF9ib3JkZXJFbmQgeyBmb250LXNpemU6OXB0OyBtYXJnaW4tYm90dG9tOjBjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaG9ybmRhbGU7IHdyaXRpbmctbW9kZTpsci10YjsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojZmZmZmZmOyBmb250LXN0eWxlOml0YWxpYzsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0OmJvbGQ7IHBhZGRpbmctdG9wOjBjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTt9CisJLlA0MV9ib3JkZXJTdGFydCB7IGZvbnQtc2l6ZTo5cHQ7IG1hcmdpbi10b3A6MGNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRob3JuZGFsZTsgd3JpdGluZy1tb2RlOmxyLXRiOyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiNmZmZmZmY7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgcGFkZGluZy1ib3R0b206MGNtOyAgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyB9CisJLlA0MSB7IGZvbnQtc2l6ZTo5cHQ7IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGhvcm5kYWxlOyB3cml0aW5nLW1vZGU6bHItdGI7IHBhZGRpbmc6MGNtOyBib3JkZXItc3R5bGU6bm9uZTsgY29sb3I6I2ZmZmZmZjsgZm9udC1zdHlsZTppdGFsaWM7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpib2xkOyBwYWRkaW5nLWJvdHRvbTowY207IHBhZGRpbmctdG9wOjBjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTsgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyB9CisJLlA0MV9ib3JkZXJFbmQgeyBmb250LXNpemU6OXB0OyBtYXJnaW4tYm90dG9tOjBjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaG9ybmRhbGU7IHdyaXRpbmctbW9kZTpsci10YjsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojZmZmZmZmOyBmb250LXN0eWxlOml0YWxpYzsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0OmJvbGQ7IHBhZGRpbmctdG9wOjBjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTt9CisJLlA0Ml9ib3JkZXJTdGFydCB7IGZvbnQtc2l6ZTo5cHQ7IG1hcmdpbi10b3A6MGNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRob3JuZGFsZTsgd3JpdGluZy1tb2RlOmxyLXRiOyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiNmZmZmZmY7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgcGFkZGluZy1ib3R0b206MGNtOyAgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyB9CisJLlA0MiB7IGZvbnQtc2l6ZTo5cHQ7IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGhvcm5kYWxlOyB3cml0aW5nLW1vZGU6bHItdGI7IHBhZGRpbmc6MGNtOyBib3JkZXItc3R5bGU6bm9uZTsgY29sb3I6I2ZmZmZmZjsgZm9udC1zdHlsZTppdGFsaWM7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpib2xkOyBwYWRkaW5nLWJvdHRvbTowY207IHBhZGRpbmctdG9wOjBjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTsgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyB9CisJLlA0Ml9ib3JkZXJFbmQgeyBmb250LXNpemU6OXB0OyBtYXJnaW4tYm90dG9tOjBjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaG9ybmRhbGU7IHdyaXRpbmctbW9kZTpsci10YjsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojZmZmZmZmOyBmb250LXN0eWxlOml0YWxpYzsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0OmJvbGQ7IHBhZGRpbmctdG9wOjBjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTt9CisJLlA0M19ib3JkZXJTdGFydCB7IGZvbnQtc2l6ZTo5cHQ7IG1hcmdpbi10b3A6MGNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRob3JuZGFsZTsgd3JpdGluZy1tb2RlOmxyLXRiOyBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiNmZmZmZmY7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgcGFkZGluZy1ib3R0b206MGNtOyAgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyB9CisJLlA0MyB7IGZvbnQtc2l6ZTo5cHQ7IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGhvcm5kYWxlOyB3cml0aW5nLW1vZGU6bHItdGI7IGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7IHBhZGRpbmc6MGNtOyBib3JkZXItc3R5bGU6bm9uZTsgY29sb3I6I2ZmZmZmZjsgZm9udC1zdHlsZTppdGFsaWM7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpib2xkOyBwYWRkaW5nLWJvdHRvbTowY207IHBhZGRpbmctdG9wOjBjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTsgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyB9CisJLlA0M19ib3JkZXJFbmQgeyBmb250LXNpemU6OXB0OyBtYXJnaW4tYm90dG9tOjBjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaG9ybmRhbGU7IHdyaXRpbmctbW9kZTpsci10YjsgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojZmZmZmZmOyBmb250LXN0eWxlOml0YWxpYzsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0OmJvbGQ7IHBhZGRpbmctdG9wOjBjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTt9CisJLlA0NSB7IGZvbnQtc2l6ZToxMHB0OyBmb250LXdlaWdodDpib2xkOyBtYXJnaW4tYm90dG9tOjBjbTsgbWFyZ2luLXRvcDowLjEwMWNtOyB0ZXh0LWFsaWduOmNlbnRlciAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6UGFsYXRpbm8gTGlub3R5cGU7IHdyaXRpbmctbW9kZTpsci10YjsgfQorCS5QNDYgeyBmb250LXNpemU6OHB0OyBtYXJnaW4tYm90dG9tOjBjbTsgbWFyZ2luLXRvcDowLjEwMWNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyB9CisJLlA0NyB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi1ib3R0b206MGNtOyBtYXJnaW4tdG9wOjAuMTAxY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGltZXMgTmV3IFJvbWFuOyB3cml0aW5nLW1vZGU6bHItdGI7IH0KKwkuUDQ4IHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgfQorCS5kZWZpbml0aW9ucyB7IHdpZHRoOjE2Ljk3Y207IHdyaXRpbmctbW9kZTpsci10YjsgfQorCS5kZWZpbml0aW9uc19BMSB7IGJhY2tncm91bmQtY29sb3I6IzY2MzMwMDsgcGFkZGluZzowY207IGJvcmRlci13aWR0aDowLjAxMzNjbTsgYm9yZGVyLXN0eWxlOnNvbGlkOyBib3JkZXItY29sb3I6IzRjMTkwMDsgfQorCS5kZWZpbml0aW9uc19BMiB7IHZlcnRpY2FsLWFsaWduOm1pZGRsZTsgYmFja2dyb3VuZC1jb2xvcjojOTk2NjMzOyBwYWRkaW5nOjBjbTsgYm9yZGVyLWxlZnQtd2lkdGg6MC4wMTMzY207IGJvcmRlci1sZWZ0LXN0eWxlOnNvbGlkOyBib3JkZXItbGVmdC1jb2xvcjojNGMxOTAwOyBib3JkZXItcmlnaHQtd2lkdGg6MC4wMTMzY207IGJvcmRlci1yaWdodC1zdHlsZTpzb2xpZDsgYm9yZGVyLXJpZ2h0LWNvbG9yOiM0YzE5MDA7IGJvcmRlci10b3Atc3R5bGU6bm9uZTsgYm9yZGVyLWJvdHRvbS13aWR0aDowLjAxMzNjbTsgYm9yZGVyLWJvdHRvbS1zdHlsZTpzb2xpZDsgYm9yZGVyLWJvdHRvbS1jb2xvcjojNGMxOTAwOyB9CisJLmRlZmluaXRpb25zX0IxIHsgYmFja2dyb3VuZC1jb2xvcjojNjYzMzAwOyBwYWRkaW5nOjBjbTsgYm9yZGVyLWxlZnQtc3R5bGU6bm9uZTsgYm9yZGVyLXJpZ2h0LXdpZHRoOjAuMDEzM2NtOyBib3JkZXItcmlnaHQtc3R5bGU6c29saWQ7IGJvcmRlci1yaWdodC1jb2xvcjojNGMxOTAwOyBib3JkZXItdG9wLXdpZHRoOjAuMDEzM2NtOyBib3JkZXItdG9wLXN0eWxlOnNvbGlkOyBib3JkZXItdG9wLWNvbG9yOiM0YzE5MDA7IGJvcmRlci1ib3R0b20td2lkdGg6MC4wMTMzY207IGJvcmRlci1ib3R0b20tc3R5bGU6c29saWQ7IGJvcmRlci1ib3R0b20tY29sb3I6IzRjMTkwMDsgfQorCS5kZWZpbml0aW9uc19CMiB7IHZlcnRpY2FsLWFsaWduOm1pZGRsZTsgYmFja2dyb3VuZC1jb2xvcjojZmZjYzk5OyBwYWRkaW5nOjBjbTsgYm9yZGVyLWxlZnQtc3R5bGU6bm9uZTsgYm9yZGVyLXJpZ2h0LXdpZHRoOjAuMDEzM2NtOyBib3JkZXItcmlnaHQtc3R5bGU6c29saWQ7IGJvcmRlci1yaWdodC1jb2xvcjojZmY2NjMzOyBib3JkZXItdG9wLXN0eWxlOm5vbmU7IGJvcmRlci1ib3R0b20td2lkdGg6MC4wMTMzY207IGJvcmRlci1ib3R0b20tc3R5bGU6c29saWQ7IGJvcmRlci1ib3R0b20tY29sb3I6IzRjMTkwMDsgfQorCS5kZWZpbml0aW9uc19CNjkgeyB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7IGJhY2tncm91bmQtY29sb3I6I2ZmY2M5OTsgcGFkZGluZzowY207IGJvcmRlci1sZWZ0LXN0eWxlOm5vbmU7IGJvcmRlci1yaWdodC13aWR0aDowLjAxMzNjbTsgYm9yZGVyLXJpZ2h0LXN0eWxlOnNvbGlkOyBib3JkZXItcmlnaHQtY29sb3I6I2ZmNjYzMzsgYm9yZGVyLXRvcC1zdHlsZTpub25lOyBib3JkZXItYm90dG9tLXdpZHRoOjAuMDEzM2NtOyBib3JkZXItYm90dG9tLXN0eWxlOnNvbGlkOyBib3JkZXItYm90dG9tLWNvbG9yOiNmZjY2MzM7IH0KKwkuZGVmaW5pdGlvbnNfQSB7IHdpZHRoOjMuNzMxY207IH0KKwkuZGVmaW5pdGlvbnNfQiB7IHdpZHRoOjEzLjI0Y207IH0KKwkuQnVsbGV0XzIwX1N5bWJvbHMgeyBmb250LWZhbWlseTpPcGVuU3ltYm9sOyB9CisJLkZvb3Rub3RlXzIwX1N5bWJvbCB7IHZlcnRpY2FsLWFsaWduOnN1cGVyOyBmb250LXNpemU6NTglO30KKwkuVDEgeyBmb250LXdlaWdodDpub3JtYWw7IH0KKwkuVDEwIHsgY29sb3I6IzAwMDAwMDsgZm9udC13ZWlnaHQ6bm9ybWFsOyB9CisJLlQxMSB7IGNvbG9yOiMwMDAwMDA7IH0KKwkuVDEyIHsgY29sb3I6IzAwMDAwMDsgZm9udC13ZWlnaHQ6Ym9sZDsgfQorCS5UMTMgeyBjb2xvcjojMDAwMDAwOyBmb250LXdlaWdodDpib2xkOyB9CisJLlQxNCB7IGNvbG9yOiMwMDAwMDA7IGZvbnQtZmFtaWx5OlRob3JuZGFsZTsgZm9udC1zaXplOjlwdDsgZm9udC1zdHlsZTppdGFsaWM7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpib2xkOyB9CisJLlQxNSB7IGNvbG9yOiMwMDAwMDA7IGZvbnQtZmFtaWx5OlRob3JuZGFsZTsgZm9udC1zaXplOjlwdDsgZm9udC1zdHlsZTpub3JtYWw7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpib2xkOyB9CisJLlQxNyB7IGZvbnQtd2VpZ2h0OmJvbGQ7IH0KKwkuVDE4IHsgZm9udC13ZWlnaHQ6Ym9sZDsgfQorCS5UMiB7IGNvbG9yOiMwMDAwMDA7IH0KKwkuVDIwIHsgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTsgZm9udC13ZWlnaHQ6Ym9sZDsgfQorCS5UMjEgeyBmb250LXdlaWdodDpib2xkOyB9CisJLlQyMiB7IGZvbnQtd2VpZ2h0OmJvbGQ7IH0KKwkuVDIzIHsgZm9udC13ZWlnaHQ6Ym9sZDsgfQorCS5UMjQgeyBmb250LXdlaWdodDpib2xkOyB9CisJLlQyNSB7IGZvbnQtd2VpZ2h0OmJvbGQ7IH0KKwkuVDI2IHsgZm9udC1zdHlsZTppdGFsaWM7IHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7IGZvbnQtd2VpZ2h0OmJvbGQ7IH0KKwkuVDI3IHsgZm9udC1zdHlsZTppdGFsaWM7IH0KKwkuVDI4IHsgZm9udC1zdHlsZTppdGFsaWM7IGZvbnQtd2VpZ2h0Om5vcm1hbDsgfQorCS5UMjkgeyBmb250LXN0eWxlOm5vcm1hbDsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0Om5vcm1hbDsgfQorCS5UMyB7IGNvbG9yOiMwMDAwMDA7IHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7IGZvbnQtd2VpZ2h0OmJvbGQ7IH0KKwkuVDMwIHsgZm9udC1zdHlsZTpub3JtYWw7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpib2xkOyB9CisJLlQzMSB7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgfQorCS5UMzIgeyBmb250LXN0eWxlOml0YWxpYzsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0Om5vcm1hbDsgfQorCS5UMzMgeyB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lOyBmb250LXdlaWdodDpib2xkOyB9CisJLlQ0IHsgY29sb3I6IzAwMDAwMDsgfQorCS5UNSB7IGNvbG9yOiMwMDAwMDA7IHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7IGZvbnQtd2VpZ2h0OmJvbGQ7IH0KKwkuVDYgeyBjb2xvcjojMDAwMDAwOyB9CisJLlQ3IHsgY29sb3I6IzAwMDAwMDsgZm9udC13ZWlnaHQ6Ym9sZDsgfQorCS5UOCB7IGNvbG9yOiMwMDAwMDA7IGZvbnQtd2VpZ2h0OmJvbGQ7IH0KKwkuVDkgeyBjb2xvcjojMDAwMDAwOyBmb250LXdlaWdodDpub3JtYWw7IH0KKwk8IS0tIE9ERiBzdHlsZXMgd2l0aCBubyBwcm9wZXJ0aWVzIHJlcHJlc2VudGFibGUgYXMgQ1NTIC0tPgorCS5OdW1iZXJpbmdfMjBfU3ltYm9scyAuVDE2IC5UMTkgLlQzNCAuVDM1IHsgfQorCTwvc3R5bGU+PC9oZWFkPjxib2R5IGRpcj0ibHRyIiBzdHlsZT0ibWF4LXdpZHRoOjIxLjAwMWNtO21hcmdpbi10b3A6MmNtOyBtYXJnaW4tYm90dG9tOjJjbTsgbWFyZ2luLWxlZnQ6MmNtOyBtYXJnaW4tcmlnaHQ6MmNtOyBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyAiPjx0YWJsZSBib3JkZXI9IjAiIGNlbGxzcGFjaW5nPSIwIiBjZWxscGFkZGluZz0iMCIgY2xhc3M9ImRlZmluaXRpb25zIj48Y29sZ3JvdXA+PGNvbCB3aWR0aD0iMTYzIi8+PGNvbCB3aWR0aD0iNTc5Ii8+PC9jb2xncm91cD48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMSI+PHAgY2xhc3M9IlAzMCI+RW5nbGlzaCBkZWYuPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMSI+PHAgY2xhc3M9IlAzMSI+TWVhbmluZzwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDAiPkFjdHVhdG9yU3lzdGVtPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjciPlN5c3RlbTpBY3R1YXRvclN5c3RlbSA6PC9wPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMzAiPkVsZWN0cm9tZWNoYW5pY2FsPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPiBzeXN0ZW0sIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMwIj5pbmNsdWRpbmc8L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMwIj5tZWNoYW5pY2FsIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij5hbmQgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMzAiPnNvZnR3YXJlIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij5jb21wb25lbnRzLCB0byBtb3ZlIGFuZCBjb250cm9sIMKgYSBtZWNoYW5pc20gb3IgYSBzeXN0ZW0uIEl0IGlzIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij5vcGVyYXRlZCBieSBhIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMwIj5zb3VyY2Ugb2YgZW5lcmd5PC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPiwgdXN1YWxseSBpbiB0aGUgZm9ybSBvZiBhbiBlbGVjdHJpYyBjdXJyZW50LCBoeWRyYXVsaWMgZmx1aWQgcHJlc3N1cmUgb3IgcG5ldW1hdGljIHByZXNzdXJlLCBhbmQgY29udmVydHMgdGhhdCBlbmVyZ3kgaW50byBzb21lIGtpbmQgb2YgbW90aW9uLiBJdCBpcyBjb21tYW5kZWQgYW5kIGNvbnRyb2xsZWQgdGhyb3VnaCBhIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMwIj5kcml2ZXIgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPm9yIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMwIj5yZWd1bGF0b3IgZGV2aWNlPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPiBjb21tb25seSBpbmNsdWRlZCBpbiB0aGUgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMzAiPkFjdHVhdG9yIFN5c3RlbSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+ZGVmaW5pdGlvbi48L3NwYW4+PC9wPjxwIGNsYXNzPSJQMzMiPjxzcGFuIGNsYXNzPSJUMjYiPklNUE9SVEFOVCBXQVJOSU5HUzwvc3Bhbj48c3BhbiBjbGFzcz0iVDIzIj4gOiA8L3NwYW4+SW4gdGhlIHNjb3BlIG9mIFBST1RFVVMgcHJvamVjdCB0aGUgZm9sbG93aW5nIGNvbW1lbnRzIGFyZSBhZGRlZCA6PC9wPjxwIGNsYXNzPSJQMzMiPi0gV2hlbiB0aGUgPHNwYW4gY2xhc3M9IlQyMyI+QWN0dWF0b3IgPC9zcGFuPsKgd29yZCBpcyB1c2VkIGFsb25lLCBpdCBtZWFucyB0aGUgPHNwYW4gY2xhc3M9IlQyMyI+QWN0dWF0b3IgU3lzdGVtPC9zcGFuPiBpbmNsdWRlcyBvbmx5IG9uZSBub24gZGVjb21wb3NhYmxlIHNvZnR3YXJlIGFuZCBvbmUgbm9uIGRlY29tcG9zYWJsZSBoYXJkd2FyZS4gSW4gdGhpcyBjYXNlLCBpdCBpcyBzb21ldGltZXMgY2FsbGVkIDxzcGFuIGNsYXNzPSJUMjMiPm1vdG9yaXNhdGlvbjwvc3Bhbj4gb3IgPHNwYW4gY2xhc3M9IlQyMyI+ZWZmZWN0b3I8L3NwYW4+LjwvcD48cCBjbGFzcz0iUDM1Ij48c3BhbiBjbGFzcz0iVDI5Ij4tIENhcmUgaXMgdG8gYmUgdGFrZW4gYmV0d2VlbiB0aGUgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMzAiPk1vdG9yaXNhdGlvbiBTeXN0ZW08L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+LCBhYmxlIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMxIj50byBtb3ZlIHRoZSByb2JvdCBvciBwYXJ0IG9mIGl0PC9zcGFuPjxzcGFuIGNsYXNzPSJUMzIiPiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+YW5kIHRoZSBkaWZmZXJlbnQgb3RoZXIgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMzAiPkFjdHVhdG9ycyBTeXN0ZW1zPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPiBhYmxlIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMxIj50byBpbnRlcmFjdCB3aXRoIHRoZSBlbnZpcm9ubWVudDwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij4uIFRoZXNlIG90aGVyIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMwIj5BY3R1YXRvcnMgU3lzdGVtczwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij4gwqBjYW4gYmUgY2FsbGVkIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMyIj5QYXlsb2FkIHN5c3RlbXM8L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+LDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMyIj4gT3BlcmF0aW9uYWwgc3lzdGVtczwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij4sIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMyIj5NaXNzaW9uIG1vZHVsZXM8L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+LCBldGMuIChhcyBhbiBleGFtcGxlLCBOUkJDLCBXZWFwb25zLCBDb21tdW5pY2F0aW9ucywgZXRjLikuPC9zcGFuPjwvcD48IS0tTmV4dCAnZGl2JyB3YXMgYSAndGV4dDpwJy4tLT48ZGl2IGNsYXNzPSJQMjYiPiA8IS0tTmV4dCAnZGl2JyBpcyBhIGRyYXc6ZnJhbWUuLS0+PGRpdiBzdHlsZT0iaGVpZ2h0OjExLjQ2NGNtO3dpZHRoOjUuNDUyY207IGZsb2F0OmxlZnQ7IHBhZGRpbmc6MDsgcG9zaXRpb246cmVsYXRpdmU7IGxlZnQ6MGNtOyAiIGNsYXNzPSJmcjMiIGlkPSJpbWFnZXMzIj48aW1nIHN0eWxlPSJoZWlnaHQ6MTEuNDY0Y207d2lkdGg6NS40NTJjbTsiIGFsdD0iIiBzcmM9ImRhdGE6aW1hZ2UvKjtiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQVg4QUFBTU1DQUlBQUFBMER6QjJBQUFnNUVsRVFWUjRuTzNkYjJoVmQ1NzQ4WlBGQjVsNWtzQ0E1cEdUS2FWWUtHaHhRZHRDamU2QSswUWJXR1dTd2c5YjJFZ0dCcmJTUExDZ3JOMkVoWUdVOWtFWjNkWmxJZ1AxeXZSQm1qQkZIMVJTSDZpVTNackxVS2pTUWlJTW15NHNwT3cvWVlieDl6VjNHMUkxZjd3NThYUE91YThYN3VIazVDYno0Y3prdmVmZWMrNjVtKzdldlp0bDJmUjBOaitmQVV1MXQyZTdkMGNQVVYyYjB2L3QzWnROVFVVUEFvWFUzWjNkdUpGMWRrYlBVVVdiTGw2VUhsald6RXhXcTJXRGc5RnpWTkdtdWJub0VhRFkvSTFza0UxTHYranB5ZmJzaVpvRUNxUmV6OGJIbzRlb3V1L1ZKNlhuMUttZ1FhQkl4c2JVWjhOdFd2MGhBQnRBZllBWTZnUEVVQjhnaHZvQU1kUUhpS0UrUUF6MUFXS29EeEFqei9xMHRiVTFWaHAzN1ZpTHljbkpnd2NQcnYzeFFHWGtWcDk2dmI1MGZmdjI3V3Y1a1pTZXZBWUF5aVczK256NDRZZHBlZjc4K2Y3Ky9yUythbjFTZW5iczJKSFhmenBRT3ZuVTU5dHZ2eDBaR1RsdzRFQmZYOThISDN5UTFvZUdoam82T3BaN2ZPTUpWM3A4V3NsbEFLQjA4cW5QbFN0WDBuSmdZQ0F0WDM3NTVkU1V0Q1hGNWFFUFR0MUpEeGdjSEh6enpUZTNiTm1TeXdCQTZlUlRuNDgvL2pndGQrM2FsWmI3OXUxcmJGbXVQaWs5bjN6eVNlTmhRTXZLb1Q2M2J0MDZjK1pNT3BiWnZIbHorakl0MDNyYWN1ellzYWVlZXVyQnh6dkRCV1M1MU9menp6OVB5eU5Iaml4dVNldXBQbW43UStzRGtPVlNuLzcrL3JSOCt1bW5GN2MwMXRQMnZyNis5Zjkrb0pMV1c1L0daVDZqbzZOTHozQ2w5YlJsYUdob2pSZitBQzFvdmZWcFhPWXp0T0NoMzFVZjRLSFdWWi9HWlQ0clBHRFZDMytBbHJXdStqUXU4emwvL3Z4RFg5K3AxV3I5L2YwclhQZ0R0TEoxMWFkeG1jOXlWKzQ4Ly96ejJZb1gvZ0N0clBuNk5DN3pPWEhpUk9NeW53ZHQzYm8xZlRjOStWcnV3aCtnbFRWZm44WmxQb2NPSFZyaE1lbTdxVDR1L0FFZTFIeDkrdnY3MDFPcWxVOXBwZStteDdqd0IzaFE4L1ZaNHhzbUppWW0xdjlMZ09weFoxVWdodm9BTWRRSGlLRStRQXoxQVdLb0R4QkRmWUFZNmdQRVVCOGdodm9BTWRRSGlLRStRQXoxQVdLb0R4QkRmWUFZNmdQRVVCOGdodm9BTWRRSGlLRStRQXoxQVdLb0R4QkRmWUFZNmdQRVVCOGdodm9BTWRRSGlLRStRQXoxQVdLb0R4QkRmWUFZNjYzUDlIUTJQNS9MSkZYVDNwN3QzcjNlWDJMM0xpZVgzVXVzZGRWbjc5NXNhaXFuUWFxb3V6dTdjU1ByN0d6eXgrM2VsYTF6OXhLdStmcGN2T2h2WXhVek0xbXRsZzBPTnZPemR1K3Exck43S1lMbTZ6TTNsK01ZbGRYMFhySjcxOEplS3JWOFhuWHU2Y24yN01ubE4xVkJ2WjZOaitmNUMrM2VwWExmdlVUSnB6N3BiK1BVcVZ4K1V4V01qZVg4NTJIM0xwWDc3aVdLTSs1QURQVUJZcWdQRUVOOWdCanFBOFJRSHlDRytnQXgxQWVJb1Q1QURQVUJZcWdQRUVOOWdCanFBOFJRSHlDRytnQXgxQWVJb1Q1QURQVUJZcWdQRUVOOWdCanFBOFJRSDhqTjNOemMrUGo0b0U4NFhCdjFnZlZxUk9mQ2hRdFRDNTgvcXo1cnBEN1FwUHVpdzZOU0gzZzBvcE1YOVlFMUVaM2NxUStzYk81Zi9tVjg3OTVIaUU1Ylc5dEd6bE1SUC9qQkQ5UUhWamIzSC85eGMyNXVadTAvY1BmdTNRMGJwanBTbzR0ZW45dTNiMSs5ZXZXTEw3NFlHUmxwYkJrZEhYMzIyV2QzN3R6WjBkRVJPMXNsTmY3LzlncC9QNnMrb0hKMjdOKy80OVNwdDZlbnA4K2RPNWVlZk0zTXpFU1BWQkdGcnMvazVPVEJnd2Z2MnpnME5KU1dCdzRjR0I0ZTNyNTllOFJjdEtJZEM5NStXNFp5VTl6NjFPdjFsSjVVbWRkZWUrMlpaNTdadkhselkzczZHcnAwNmRMUm8wZFRtMlpuWjdkdTNSbzdKNjFtTVVOZmZ2bGxyVmE3Y09GQ1dva2VxcFNLVzU4elo4Nms1YnZ2dm50Zlg5S1hBd01EWFYxZHFVMHBRMms5YUVCYTNiWnQyMDR0a0tIbUZMMCt5eDNhdlBqaWkybVpqb0RVaDNEM1pTaDZuTklvYm4wR0J3ZFRnSzVmdjc1NzkrNEh2OXZSMGRGS0wzeFNEbzBNUlU5UkdzV3R6K0hEaDFOOW5udnV1ZEhSMFJkZWVPR0pKNTVZZk9rSHFJRGkxbWZmdm4wVEV4TUhEeDVzbk9ScWFKeHVmL0xKSjczWXZLRmNMOGRqVU56NlpBdW4xZWZuNTY5Y3VmTFpaNTgxcnZkWkxGRjZYdmJHRzI5b0VKUlhvZXVUTGJ5K2MyREI4UER3N2R1M3YvcnFxNisvL3ZybzBhTm5Gbnp6elRlZWptMkVWYTgyaFBVcmVuMlcycm9nUFNNYkdCaW8xV3I5L2YwZmZmU1JjMTVRVWdXdHo2cVg4L2YxOWFYNk9PTU81VlhRK3B3NGNXSmtaS1JlcjNzdkJWUlZRZXR6Nk5DaFZKK1RKMCtlUFh2Mm9hL3NYTDU4T1MzZmUrKzl4ejRha0krQzFpY2Q4alFPZjdaczJUSXhNWkcrWER5OWRldldyVTgvL1RROTUwcnIrL2Z2RHgwVGFGNUI2NU1NRHc5M2RuWU9EUTA5K0RiMzdMdjN1RHZqRHVWVjNQb2tyNy8rK3VIRGg2OWV2Wm9PZGhwdis4cmMzd2Vxb3REMXliNDd5OTdYMTNmNjlPbm9XVnJDcXUrZTgvWTY4bEwwK2dCVnBUNUFEUFVCWXFnUEVFTjlnQmpxQThSUUh5Q0crZ0F4MUFlSW9UNUFEUFVCWXFnUEVFTjlnQmpxQThSUUh5Q0crZ0F4MUFlSW9UNUFEUFVCWXFnUEVFTjlnQmpxQThSUUh5Q0crZ0F4OHFuUDdHdzJOWlhMYjZxQ216ZHovb1YyNzFLNTcxNmk1Rk9mc2JGNy85Z2dkaStWMUh4OTJ0dHpIS095bXQ1TGR1OWEyRXVsMW54OWVudXpycTVzYmk3SFlTb283YVdtZjlEdVhWWFR1NWNpV05leHo3VnJXYTJXM2JtVDR6eVYwdGVYYmR2VzVNL2F2YXRheis2bENOYjF1azkzZDNiOGVGNlRjRCs3bDJwenhoMklvVDVBRFBVQllxZ1BFRU45Z0JqcUE4UlFIeUNHK2dBeDFBZUlvVDVBRFBVQllxZ1BFRU45Z0JqcUE4UlFIeUNHK2dBeDFBZUlvVDVBRFBVQllxZ1BFRU45Z0JqcUE4UlFIeUNHK2dBeDFBZUlvVDVBRFBVQllxZ1BFRU45Z0JqcUE4UlFIeUNHK2dBeDFBZUlvVDVBRFBVQllxZ1BFRU45Z0JqcUE4UlFIeUNHK2dBeDFBZUlvVDVBRFBVQllueXZQck96MmRSVTBDQlFKRGR2UmsvUUFyNVhuN0d4ZS84QUhvTk43ZTNSSTBDeCtSdlpJSnQ2ZTdPdXJteHVMbm9RS0tyME44Skd1SGZzYysxYVZxdGxkKzVFendMRjA5ZVhiZHNXUFVSRjNYdmRwN3M3TzM0OGVoQ2d4VGpqRHNSUUh5Q0crZ0F4MUFlSW9UNUFEUFVCWXFnUEVFTjlnQmpxQThSUUh5Q0crZ0F4MUFlSW9UNUFEUFVCWXFnUEVFTjlnQmpxQThSUUh5Q0crZ0F4MUFlSW9UNUFEUFVCWXFnUEVFTjlnQmpxQThSUUh5Q0crZ0F4MUFlSW9UNUFEUFVCWXFnUEVFTjlnQmpxQThSUUh5Q0crZ0F4L3E4KzA5UFovSHpzSkZBNDdlM1o3dDNSUTFUWHZmcnMzWnROVFVVUEFvWFUzWjNkdUpGMWRrYlBVVVdiTGw2VUhsald6RXhXcTJXRGc5RnpWTkdtdWJub0VhRFkvSTFza08rOTZ0elRrKzNaRXpVSkZFaTlubzJQUnc5UmRkK3JUMHJQcVZOQmcwQ1JqSTJwejRaenhoMklvVDVBRFBVQllxZ1BFRU45Z0JqcUE4UlFIeUNHK2dBeDFBZUlvVDVBRFBVQllxZ1BFRU45Z0JoNTFxZXRyYTJ4Y3ZmdTNSVWVkdnYyN1V1WExrMHVTRitPam83KzlLYy8zYjU5ZTQ2VEFNV1hXMzNxOWZyUzllVnFVcXZWK3Z2N2wyNFpHaHBLeS9QbnovZjE5ZVUxREZCOHVkWG53dzgvekJZaWt1S1MxaDlhbjNUVTAwalBKNTk4c25QbnpvNk9qclIrK2ZMbHYvcXJ2MHJidTd1N2Q3dUZON1NNZk9yejdiZmZqb3lNSERod0lCMi9mUERCQjJrOUhkRTA0ckpVZXNLVmx0ZXVYVnRhbVgzNzlxVXR6ejMzM0xsejU5UUhXa2MrOWJseTVVcGFEZ3dNcE9YTEw3ODhPVG1adHFRWTNmZXd4Z3M5RHlhbXNlWE1tVE9uVDUvT1pSNmcrUEtwejhjZmY1eVd1M2J0eWhhT1pScGJIcXpQeE1URUNyL2t3Y2NERlpaRGZXN2R1cFVPV3dZSEJ6ZHYzcHkrVE11MG5yWWNPM2JzcWFlZVdzdHZhTHhpclQ3UVVuS296K2VmZjU2V1I0NGNXZHlTMWxOOTB2WTExaWM5T0tYbnBaZGVXdjh3UUZua1VKL0dhYXlubjM1NmNVdGpQVzFmeTBuMHQ5NTY2dzkvK01QWnMyY2JoMDVBaTFodmZScFBta1pIUjVlZTRVcnJhY3ZRME5BS0YvNDAxR3ExK2ZuNTMvem1OdytlSUFPcWJiMzFhVnptTTdUZ29kOWRvVDRwUFI5ODhFRTY2cEVlYUVIcnFrL2pNcDhWSHJEY2hUL1p3aE91OUsxUFB2bkVFeTVvVGV1cVQrTXluK1hlSk5GNFU4V0RGLzc4KzcvLys5Lys3ZDlPVGs2bTlEUk96d010YUYzMWFWem1zMXhCbm4vKytleUJDMy9xOWZxT0hUdlNscHMzYjY3eGpCaFFTYzNYcDNHWno0a1RKNVo3NnJSMTY5YjAzZlRrYS9IQ24zVFVjL0xreVpRZVo3aUE1dXZUdU16bjBLRkRLendtZlRmVlovSENuNDgrK3FqeFpvc3RXN1k4OVBFcjM1b0RxSkxtNjlQZjM1K09ZbFkrb1o2K214NnplT0hQMGFOSG0vNlBBeXFtK2ZxczhUaGw2WHU3SE5vQWk5eFpGWWloUGtBTTlRRmlxQThRUTMyQUdPb0R4RkFmSUliNkFESFVCNGloUGtBTTlRRmlxQThRUTMyQUdPb0R4RkFmSUliNkFESFVCNGloUGtBTTlRRmlxQThRUTMyQUdPb0R4RkFmSUliNkFESFVCNGloUGtBTTlRRmlxQThRUTMyQUdPb0R4RkFmSUliNkFESFVCNGloUGtBTTlRRmlyTGMrMDlQWi9Id3VrMVJOZTN1MmUvZDZmNG5kdTV4Y2RpK3gxbFdmdlh1enFhbWNCcW1pN3U3c3hvMnNzN1BKSDdkN1Y3Yk8zVXU0NXV0ejhhSy9qVlhNekdTMVdqWTQyTXpQMnIycldzL3VwUWlhcjgvY1hJNWpWRmJUZThudVhRdDdxZFR5ZWRXNXB5ZmJzeWVYMzFRRjlYbzJQcDduTDdSN2w4cDk5eElsbi9xa3Y0MVRwM0w1VFZVd05wYnpuNGZkdTFUdXU1Y296cmdETWRRSGlLRStRQXoxQVdLb0R4QkRmWUFZNmdQRVVCOGdodm9BTWRRSGlLRStRQXoxQVdLb0R4QkRmWUFZNmdQNXVIRGh3aTkvK2N2Zi8vNzNmL3pqSDZObktRZjFnWFZaak02Zi92U242RmxLUm4yZ0dXZlBudjNWcjM0bE91dWhQdkFJM25ubm5mZmZmLy9MTDcvODg1Ly9IRDFMNmFrUHJFNTBOb0w2d01wRy91RWYvdjd1M1VlSVRsdGIyOFpOVXlYcUF5czc4WGQvOS8vKzh6K0hQLzc0NDMvN3QzOWJ5dy9jdlh0M28yZXFnTlJvOVlGVmRIVDgrTzIzejZhVjJkblo0ZUZIeUJBclV4OVlxeC8vK01kbno4cFFidFFISHBrTTVVSjlvSGt5dEI3cUF6bFltcUhvV1VwRGZTQlBLVVBSSTVTRytnQXhpbDZmMjdkdlg3MTY5WXN2dmhnWkdXbHNHUjBkZmZiWlozZnUzTm5SMFJFN1d5VTFycFJiNFlxVlZSOEFhMVRvK2t4T1RoNDhlUEMralVORFEybDU0TUNCNGVIaDdkdTNSOHdGNUtDNDlhblg2eWs5cVRLdnZmYmFNODg4czNuejVzYjJkRFIwNmRLbG8wZVBwamJOenM1dTNibzFkazZnT2NXdHo1a3paOUx5M1hmZnZhOHY2Y3VCZ1lHdXJxN1VwcFNodEI0MElMQXVSYS9QY29jMkw3NzRZbHFtSXlEMWdaSXFibjBHQndkVGdLNWZ2NzU3OSs0SHY5dlIwZUdGVHlpMTR0Ym44T0hEcVQ3UFBmZmM2T2pvQ3krODhNUVRUeXkrOUFOVVFISHJzMi9mdm9tSmlZTUhEelpPY2pVMFRyYy8rZVNUWG16ZVVPNVF3Mk5RM1Bwa0M2ZlY1K2ZucjF5NTh0bG5ueld1OTFrc1VYcGU5c1liYjJnUWxGZWg2NU10dkw1ellNSHc4UER0MjdlLyt1cXJyNy8rK3VqUm8yY1dmUFBOTjU2T2JZUlZyemFFOVN0NmZaYmF1aUE5SXhzWUdLalZhdjM5L1I5OTlKRnpYbEJTQmEzUHFwZno5L1gxcGZvNDR3N2xWZEQ2bkRoeFltUmtwRjZ2ZXk4RlZGVkI2M1BvMEtGVW41TW5UNTQ5ZS9haHIreGN2bnc1TGQ5Nzc3M0hQaHFRajRMV0p4M3lOQTUvdG16Wk1qRXhrYjVjUEwxMTY5YXRUei85TkQzblN1djc5KzhQSFJOb1hrSHJrd3dQRDNkMmRnNE5EVDM0TnZmc3UvZTRPK01PNVZYYytpU3Z2Lzc2NGNPSHIxNjltZzUyR20vN3l0emZCNnFpMFBYSnZqdkwzdGZYZC9yMDZlaFpXc0txNzU3ejlqcnlVdlQ2QUZXbFBrQU05UUZpcUE4UVEzMkFHT29EeEZBZklJYjZBREhVQjRpaFBrQU05UUZpcUE4UVEzMkFHT29EeEZBZklJYjZBREhVQjRpaFBrQU05UUZpcUE4UVEzMkFHT29EeEZBZklJYjZBREh5cWMvc2JEWTFsY3R2cW9LYk4zUCtoWGJ2VXJudlhxTGtVNSt4c1h2LzJDQjJMNVhVZkgzYTIzTWNvN0thM2t0MjcxcllTNlhXZkgxNmU3T3VybXh1THNkaEtpanRwYVovME81ZFZkTzdseUpZMTdIUHRXdFpyWmJkdVpQalBKWFMxNWR0Mjlia3o5cTlxMXJQN3FVSTF2VzZUM2QzZHZ4NFhwTndQN3VYYW5QR0hZaWhQa0FNOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIVUI0aWhQa0FNOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIVUI0aWhQa0FNOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIVUI0aWhQa0FNOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIVUI0aWhQa0FNOVFGaWZLOCtzN1BaMUZUUUlGQWtOMjlHVDlBQ3ZsZWZzYkY3L3dBZWcwM3Q3ZEVqUUxINUc5a2dtM3A3czY2dWJHNHVlaEFvcXZRM3drYTRkK3h6N1ZwV3EyVjM3a1RQQXNYVDE1ZHQyeFk5UkVYZGU5Mm51enM3Zmp4NkVLREZPT01PeEZBZklJYjZBREhVQjRpaFBrQU05UUZpcUE4UVEzMkFHT29EeEZBZklJYjZBREhVQjRpaFBrQU05UUZpcUE4UVEzMkFHT29EeEZBZklJYjZBREhVQjRpaFBrQU05UUZpcUE4UVEzMkFHT29EeEZBZklJYjZBREhVQjRpaFBrQU05UUZpcUE4UVEzMkFHT29EeEZBZklJYjZBREhVQjRpaFBrQU05UUZpcUE4UVEzMkFHT29EeEZBZklJYjZBREhVQjRqeGYvV1puczdtNTJNbmdjSnBiODkyNzQ0ZW9ycnUxV2Z2M214cUtub1FLS1R1N3V6R2pheXpNM3FPS3RwMDhhTDB3TEptWnJKYUxSc2NqSjZqaWpiTnpVV1BBTVhtYjJTRGZPOVY1NTZlYk0rZXFFbWdRT3IxYkh3OGVvaXErMTU5VW5wT25Rb2FCSXBrYkV4OU5wd3o3a0FNOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIVUI0aWhQa0FNOVFGaXFBOFFRMzJBR0huV3A2MnRyYkZ5OSs3ZEZSNTIvZnIxMy8zdWR5TWpJMm45eElrVGUvZnUzYmR2WDQ1akFLV1FXMzNxOWZyUzllM2J0ei8wWVNkUG5teDBwMkZrUVdyUThQQndYcE1BcFpCYmZUNzg4TU8wUEgvK2ZIOS9mMXAvYUgwdVg3NmNXak00T0hqczJMR25ubm9xYmJsOSsvYjc3NytmTmpvQ2dsYVRUMzIrL2ZiYlZKQURCdzcwOWZWOThNRUhhWDFvYUtpam8rTytoLzMydDc5Tnl6ZmZmSFB6NXMyTkxWdTNiaDBZR0VpUGYrZWRkOVFIV2tvKzlibHk1VXBhcG82azVjc3Z2enc1T1ptMnBCamQ5N0RUQys3Ym1BS1VsdWxIY3Bta09IeE1TS0g0ZElvQ3lxYytIMy84Y1ZydTJyVXJMUnVITUduTGcvVjVxUFRrSzF0NCtUbVhTUXJDeDRRVWtFK25LSm9jNm5QcjFxMHpaODRNRGc0Mm5rK2xaVnBQV3haZjNGbEJ2VjQvZWZKazl0MXhVelg0bUpCaTh1a1VSWk5EZlQ3Ly9QTzBQSExreU9LV3RKN3FrN2F2VUorMzNucHJhR2dvcmFSRHBKczNiemFlZjFXRGowQW9MUC9WRkVvTzllbnY3MC9McDU5K2VuRkxZejF0Nyt2clcrRUhSMGRIdi9ycXE5U3B0RDQ4UEx6Y1NmcFM4ekVoNFh3NlJXR3R0ejZOeTN4U1I1YWU0VXJyYVVzNnRGbmh3cC9YWDMrOXNmTEdHMi84NGhlLzJMRmpSem9DV3ZXWld1bjRtSkJ3UHAyaXNOWmJuOFpsUGtNTEh2cmRWWTlvMG5PdWxLckp5Y25mL09ZM3JqbUUxckd1K2pRdTgxbmhBY3RkK0hPZnhpRlBlckQ2UU90WVYzMGFsL21jUDMvK29hL3YxR3ExL3Y3K3BSZitIRHg0TUIzanpNL1ByOW9qb1BMV1ZaL0daVDdMWGFQOC9QUFBaOSsvOENldHBQcjg2Ny8rNjMwL2N2MzY5YlI4NzczMzFqTU1VQzdOMTZkeG1jK0pFeWNXM3paeG42MWJ0NmJ2cHVkVGl4Zis3TisvUHkzZmVlZWRILzNvUjR1dkI5WHI5WC84eDM5Yy9DN1FJcHF2VCtNeW4wT0hEcTN3bVBUZFZKL0ZDMzlTajZhbnAzZnMyUEhnK3lyUzlpcGQ4Z09zcXZuNjlQZjNwMmRTSzUvU1N0OU5qMWw2NFUvYU1qczdlK25TcGFOSGoyWUx6OFZlZnZubDlFUnN1UU1vb0txYXI4L0t0eEJiTkRFeGNkK1d4dnZhcS9UV0NxQUo3cXdLeEZBZklJYjZBREhVQjRpaFBrQU05UUZpcUE4UVEzMkFHT29EeEZBZklJYjZBREhVQjRpaFBrQU05UUZpcUE4UVEzMkFHT3JUV3RyYTJySVY3d3kzNmdNZ0wrb0R4RkFmSUliNkFESFVCNGloUGtBTTlRRmlxRThyYXB4V2gxanFBOFJRbjFhMDZ0V0c4QmlvRHhCRGZZQVk2Z1BFVUI4Z2h2b0FNZFFIaUtFK1FBejFhUzJyM2piTWZjVjRiTlFIaUtFK1FBejFBV0tvRHhCRGZZQVk2Z1BFVUI4Z2h2b0FNZFFIaUtFK1FBejFBV0tvRHhCRGZZQVk2Z1BFVUI4Z2h2b0FNZFFIaUtFK1FBejFBV0tvRHhCRGZhcHZlanFibjQ4ZTRoRzF0MmU3ZDBjUHdRWlRuNHJidXplYm1vb2VvaW5kM2RtTkcxbG5aL1FjYkJqMXFiS0xGOHVhbm1SbUpxdlZzc0hCNkRuWU1PcFRaWE56MFJPc1Q5bm5aMlhxMHlwNmVySTllNktIV0lONlBSc2ZqeDZDeDBKOVdrVkt6NmxUMFVPc3dkaVkrclFLOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIVUI0aWhQa0FNOVFGaXFBOFFRMzFLNXRWWFg5MjFhMWR2YjI5WFYxZjBMRVV4TXpNelBqNSs1ODZkNDhlUFI4L0NJMUNma3BtYW1ob2JHL3Y1ejMvZTA5UHpzNS85ckpVejFJak91WFBucHFlbjA1ZXZ2UEpLOUVROEd2VXBxNmtGTFppaCs2SkRlYWxQNmJWSWhrU25ldFNuT2g3TVVKYVZQa09pVTJIcVV3SS8vT0VQLy9kLy8zZnRqMS9NMExadFBWbjJzeXdyNDkxSjcyVFptWC82cDNOdnZyblc2SXd0YUt6LzRBYy8rSi8vK1orTkdvMmNxRThKcFBUY3ZYdTNzZjZUbi93a0hRNnM1YWZTc2MrUGZ2VFNsMS8yYnVCa0c2Zzl5L3AyN216LzcvKytNTFcyZTFPLzhzb3J2Lzcxcnh2cmJXMXRHemdhT1ZHZnFrblJlZW1sbDlLeXM3TXpIUXI4OHo5SEQ5Uzhyci84eThGVHB3Ym41dWJTazY4TEY5YWFJY3BDZlNwaWFYU2laOGxaVjFmWDRBSVpxaGoxS2JjS1IrZEJNbFF4NmxOS0xSV2RCOGxRTmFoUHliejk5dHM5UFQydEdaMEhMYzNRR2wrTXB6alVwMlFXcnVMaGZsMExvcWZnMGFnUEVFTjlnQmpxQThSUUh5Q0crZ0F4MUFlSW9UNUFEUFVCWXFnUEVFTjlXc1hzYkZhSzkwTGR2Qms5QVkrTCtyU0tzYkhzdXp2L1FTR29UNVcxdDBkUHNENWxuNStWcVUrVjlmWm1YVjNaM0Z6MEhNM3lqdHBxVTU4cVM4Y08xNjVsdFZwMjUwNzBLSSt1cnkvYnRpMTZDRGFTK2xSY2QzZm00NFVwSnZVQllxZ1BFR09sK2t4UFovUHpqMjJTa21sdnozYnZqaDRDeW16Wit1emRXNDZMMHdKMWQyYzNibVR1c0F6TmVYaDlMbDZVbnRYTnpOdzduVFJZeG84cGhnSjRlSDNLZTRYSVkyWkhRZE5XZjlXNXB5ZmJzK2N4VEZJYTlYbzJQaDQ5QkpUZjZ2Vko2VGwxYXVNSEtZK3hNZldCSERqakRzUlFIeUNHK2dBeDFBZUlvVDVBRFBVQllxZ1BFRU45SUUvVDA5TTdkdXlJbnFJYzFBZHlrS0p6N3R5NThmSHhtWm1adTNmdlJvOVREdW9EelZzYW5laFp5a2Q5NEpHSlRpN1VCOVpLZFBLbFByQ0t1Ym5wWThkRUozL3FVMzFsdkVOdWtXNWNlL0hTcFYvT3pFeXQvUWZhMnRvMmJKanFTSHRKZlNxdXZIZklMY3lOYS8vNnlKRy9IaHljUzhjK0Z5NWNtRnJEM25UT2E0M1VwOHBLZllmY1F0MjR0cXVyYTNEQjNOd2paSWlWcVUrVmxmM0dyd1djWDRaeXBENnRvaXgzeUMzTGpXdGxhUDNVcDFXVTVRNjVwYnR4N1lNWmlwNm9OTlFIOHJHWW9laEJTa045Z0JqcUE4UlFIeUNHK2dBeDFBZUlvVDVBRFBVQllxZ1BFS1BvOWJsOSsvYlZxMWUvK09LTGtaR1J4cGJSMGRGbm4zMTI1ODZkSFIwZHNiTlJITlBUMHpNek03Mjl2ZEdEOEFnS1haL0p5Y21EQncvZXQzRm9hQ2d0RHh3NE1Edzh2SDM3OW9pNUtJcWxOeHQ4NVpWWDFLZGNpbHVmZXIyZTBwTXE4OXBycnozenpET2JOMjl1YkU5SFE1Y3VYVHA2OUdocTArenM3TmF0VzJQbjVQRnpoOU5xS0c1OXpwdzVrNWJ2dnZ2dWZYMUpYdzRNREhSMWRhVTJwUXlsOWFBQmVkeEVwMktLWHAvbERtMWVmUEhGdEV4SFFPcFRlYUpUVmNXdHorRGdZQXJROWV2WGR6L3NCcjhkSFIzdVgxbDEwNWN1M2N2T0dxTXp0cUN4N3M3S3BWRGMraHcrZkRqVjU3bm5uaHNkSFgzaGhSZWVlT0tKeFpkK2FBRjNzdXpMLy9xdnViazEzOS93bFZkZStmV3ZmNzJoTTVHdjR0Wm4zNzU5RXhNVEJ3OGViSnprYW1pY2JuL3l5U2U5MkZ4MTdWblc5emQvMDNmOCtKMzBuT3Vqano1S3l6dDM3a1JQUlo2S1c1OXM0YlQ2L1B6OGxTdFhQdnZzczhiMVBvc2xTcy9MM25qakRRMnF2UGIyOXI0RktUMHlWREdGcmsrMjhQck9nUVhEdzhPM2I5Lys2cXV2dnY3NjY2TkhqNTVaOE0wMzMzZzYxaUprcUhxS1hwK2x0aTVJejhnR0JnWnF0VnAvZjMvNm42QnpYcTFHaGlxam9QVnBuTE5ZNGF4VytoOWZxbzh6N3Ezc3Znd0pVT2tVdEQ0blRwd1lHUm1wMSt2ZVM4R3FHaG1Lbm9KSFZ0RDZIRHAwS05YbjVNbVRaOCtlZmVnck81Y3ZYMDdMOTk1Nzc3R1BCdVNqb1BWSmh6eU53NTh0VzdaTVRFeWtMeGRQYjkyNmRldlRUejlOejduUyt2NzkrMFBIQkpwWDBQb2t3OFBEbloyZFEwTkRENzdOUGZ2dVBlN091RU41RmJjK3lldXZ2Mzc0OE9HclY2K21nNTNHMjc0eTkvZUJxaWgwZmJMdnpyTDM5ZldkUG4wNmVoWWdUMFd2RDFCVjZnUEVVQjhnaHZvQU1kU25WY3pPWmxOVDBVT3N3YzJiMFJQd3VLaFBxeGdieTc2Nzh4OFVndnBVV1h0NzlBVHJVL2I1V1puNlZGbHZiOWJWbGEzNTNxU0Y0K081cWsxOXFpd2RPMXk3bHRWcVdSbHZQdEhYbDIzYkZqMEVHMGw5S3E2N096dCtQSG9JZUJqMUFXS29EeEJEZllBWTZnUEVVQjhnaHZvQU1kUUhpS0UrUUF6MUFXS29EeEJEZllBWTZnUEVVQjhneHVyMUtjc2RPUjhidC82RVhLeGVIM2ZrQkRiQ3crdmpqcFpyWkVkQjB4NWVuN0xma2ZPeGNldFBhTnF5eHo3bHZTUG5ZK1BXbjdBZXk3N3U0NDZjd0laeXhoMklvVDVBRFBVQllxZ1BFRU45Z0JqcUE4UlFuK3FibnM3bTU2T0hlRVR0N2RudTNkRkRzTUhVcCtMMjdpM3JtNFM3dTdNYk43TE96dWc1MkREcVUyVVhMNVkxUGNuTXpMMnI3UWNIbytkZ3c2aFBsWlg5blhwbG41K1ZxVStyNk9uSjl1eUpIbUlONnZWc2ZEeDZDQjRMOVdrVktUMm5Ua1VQc1FaalkrclRLdFFIaUtFK1FBejFBV0tvRHhCRGZZQVk2Z1BFVUI4Z2h2b0FNZFFIaUtFK0pUTTJOdGJUMDlQZDNSMDlDS3lYK3BUTW0yKysrZXFycis3WXNlUElrU085dmIweVJIbXBUeWxOTHpoMjdKZ01VVjdxVTI0eVJIbXBUMFhJRUtXalBpWFF0bUNORDE2YW9hZWZQcEpsdlZuV3ZaSFRRWlBVcHdUKy9PYy9MNjcvNUNjL21abVpXY3RQcFFiOXhWOTBaMW5uUW9EY0hwbkNVWjhLU2srN1hucnBwYlFjSCs5ODlkWG9hV0FaNmxNUjdlM3RpOUZKNjlIandPclVwOXhFaC9KU24xSVNIU3BBZlVvbTVXYlhybDJpUXdXb1Q4bTgvZmJiMFNOQVB0UUhpS0UrUUF6MUFXS29EeEJEZllBWTZnUEVVQjhnaHZvQU1kUUhpS0UrcldKMk5wdWFpaDVpRFc3ZWpKNkF4MFY5V3NYWTJMMS9VQnpxVTJWbGZ5TnEyZWRuWmVwVFpiMjlXVmRYTmpjWFBVZXowdnhVbVBwVVdUcDJ1SFl0cTlXeU8zZWlSM2wwZlgzWnRtM1JRN0NSMUtmaXVydXo0OGVqaDRDSFVSOGdodm9BTWRRSGlLRStRQXoxQVdLb0R4QkRmWUFZNmdQRVVCOGdodm9BTWRRSGlLRStRQXoxQVdLb0R4QkRmWUFZNmdQRVVCOGdodm9BTWRRSGlLRStRQXoxQVdLb3o4WXF5K2NYVjVpUFppNHM5ZGxZUHI4WWxxTSsrZlA1djRYbHY1cENVWi84bGYzeml5dk1Sek1YaXZya3I5U2ZYMXhoUHBxNWFOUm5RL2o4WWxpVitnQXgxQWVJb1Q1QURQVUJZcWdQRUVOOWdCanFBOFJRSHlDRytnQXgxQWVJb1Q1QURQVUJZcWdQRU9ONzlYRWJVR2h3UDliSDRIdjFjUnRRNExIWjVGNlRzREovSXh0a2s5dUF3c3JjajNXRGJISWJVRmlCKzdGdW5QOFBJZE1iM2F2NW9BOEFBQUFBU1VWT1JLNUNZSUk9Ii8+PC9kaXY+PC9kaXY+PGRpdiBzdHlsZT0iY2xlYXI6Ym90aDsgbGluZS1oZWlnaHQ6MDsgd2lkdGg6MDsgaGVpZ2h0OjA7IG1hcmdpbjowOyBwYWRkaW5nOjA7Ij7CoDwvZGl2PjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMyI+V2lraXBlZGlhOjwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiBNZWNoYW5pY2FsIGRldmljZSBmb3IgbW92aW5nIG9yIGNvbnRyb2xsaW5nIGEgbWVjaGFuaXNtIG9yIGEgc3lzdGVtLiBJdCBpcyBvcGVyYXRlZCBieSBhIHNvdXJjZSBvZiBlbmVyZ3ksIHVzdWFsbHkgaW4gdGhlIGZvcm0gb2YgYW4gZWxlY3RyaWMgY3VycmVudCwgaHlkcmF1bGljIGZsdWlkIHByZXNzdXJlIG9yIHBuZXVtYXRpYyBwcmVzc3VyZSwgYW5kIGNvbnZlcnRzIHRoYXQgZW5lcmd5IGludG8gc29tZSBraW5kIG9mIG1vdGlvbi48L3NwYW4+PC9wPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUNSI+UmFuZG9tIEhvdXNlIERpY3Rpb25hcnk6PC9zcGFuPjxzcGFuIGNsYXNzPSJUNCI+IGEgc2Vydm9tZWNoYW5pc20gdGhhdCBzdXBwbGllcyBhbmQgdHJhbnNtaXRzIGEgbWVhc3VyZWQgYW1vdW50IG9mIGVuZXJneSBmb3IgdGhlIG9wZXJhdGlvbiBvZiBhbm90aGVyIG1lY2hhbmlzbSBvciBzeXN0ZW0uIDwvc3Bhbj48L3A+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQzMyI+TWVycmlhbSBXZWJzdGVyOiA8L3NwYW4+YSBtZWNoYW5pY2FsIGRldmljZSBmb3IgbW92aW5nIG9yIGNvbnRyb2xsaW5nIHNvbWV0aGluZzwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQMjkiPkFsZ29yaXRobWljIG1vZHVsZTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI4Ij5JdCBpcyBhbiA8c3BhbiBjbGFzcz0iVDIzIj5hcHBsaWNhdGlvbjwvc3Bhbj4gdGhhdCBpcyBub3QgZXhlY3V0YWJsZSBieSBpdHNlbGYgYnV0IGNhbiBiZSBjb21wb3NlZCB0aHJvdWdoIHRvb2xpbmcgc3VjaCBhcyB0aGUgUFJPVEVVUyBtYWluIHRvb2wuPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MCI+QXBwbGljYXRpb24gbGV2ZWw8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQzIj5KUFIgJmFtcDsgQUxGVVM8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTEiPu+DqDwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPkhpZ2hlc3QgbGV2ZWwgb24gdGhlIFNlbnNvcnkgUHJvY2Vzc2luZyBvciB0aGUgRGVjaXNpb24gUHJvY2Vzcy48L3NwYW4+PC9wPjxwIGNsYXNzPSJQMjUiPkdpdmUgb3IgZGVmaW5lIGtub3dsZWRnZSBkaXJlY3RseSBhdCB0aGUgdGFzayBsZXZlbCBhY2NvcmRpbmcgdG8gbWVhbmluZyBhbmQgdW5kZXJzdGFuZGluZyBjb21tb25seSB1c2VkIGluIGEgcGFydGljdWxhciBkb21haW4uKEludGVsbGlnZW5jZSwga25vd2xlZGdlLCBjb21iYXQgYW5kIGFjdGlvbmFibGUgaW5mb3JtYXRpb24gZm9yIGluc3RhbmNlKSwgZnVydGhlciBwcm9jZXNzZWQgZm9yIHBhcnRpY3VsYXIgbWlzc2lvbiBuZWVkcyBhbmQgZGlyZWN0bHkgbGlua2VkIHRvIHRhY3RpY2FsIGJlaGF2aW91cnM8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQwIj5Bc3Nlc3NtZW50PC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPlNlZSBFdmFsdWF0aW9uPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlAzOSI+QmVuY2htYXJrPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjMiPkl0IGlzIGEg4oCcPHNwYW4gY2xhc3M9IlQyMyI+cHJvYmxlbeKAnSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxIj5hc3NvY2lhdGVkIHRvIGEgcmVmZXJlbmNlIOKAnDwvc3Bhbj48c3BhbiBjbGFzcz0iVDIzIj5zb2x1dGlvbjwvc3Bhbj48c3BhbiBjbGFzcz0iVDEiPuKAnS4gRXZlcnkgb2YgdGhlIG90aGVyIHNvbHV0aW9ucyBjb21pbmcgYWZ0ZXIgd2lsbCBiZSBjb21wYXJlZCB0byB0aGlzIOKAnDwvc3Bhbj48c3BhbiBjbGFzcz0iVDIzIj5iZW5jaG1hcms8L3NwYW4+PHNwYW4gY2xhc3M9IlQxIj7igJ0uPC9zcGFuPjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQMzkiPkNoYWxsZW5nZSBQcm92aWRlcjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI4Ij5UaGUgQ2hhbGxlbmdlIFByb3ZpZGVyIGRlZmluZXMgdGhlIHNjZW5hcmlvLCBwcm9ibGVtLCBjb25maWd1cmF0aW9ucyBhbmQgbWV0cmljczwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQMzkiPkNoYWxsZW5nZXI8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOCI+VGhlIENoYWxsZW5nZXIgcHJvdmlkZXMgYSBTb2x1dGlvbiB0byBhIFByb2JsZW08L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQwIj5DbGFzc2lmaWNhdGlvbjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDUiPlJhbmRvbSBIb3VzZSBEaWN0aW9uYXJ5IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDYiPu+DqDwvc3Bhbj48c3BhbiBjbGFzcz0iVDQiPiBUaGUgYWN0IG9mIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDQiPmNsYXNzaWZ5aW5nIMKgdGhlIHJlc3VsdCBvZiBjbGFzc2lmeWluZyBvciBiZWluZyBjbGFzc2lmaWVkLiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ2Ij7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij4gQ2xhc3NpZnlpbmc6IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDE2Ij50byA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij5hcnJhbmdlIG9yIG9yZ2FuaXplIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDQiPmJ5IGNsYXNzZXM7IG9yZGVyIGFjY29yZGluZyB0b2NsYXNzLjwvc3Bhbj48L3A+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQzMyI+TWVycmlhbSBXZWJzdGVyPC9zcGFuPiA8c3BhbiBjbGFzcz0iVDM0Ij7vg6g8L3NwYW4+IHN5c3RlbWF0aWMgYXJyYW5nZW1lbnQgaW4gZ3JvdXBzIG9yIGNhdGVnb3JpZXMgYWNjb3JkaW5nIHRvIGVzdGFibGlzaGVkIGNyaXRlcmlhLjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQMjkiPkNvbW11bmljYXRpb24gTWlkZGxld2FyZTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI4Ij5JdCBpcyBhbiDigJw8c3BhbiBjbGFzcz0iVDIzIj5hcHBsaWNhdGlvbjwvc3Bhbj7igJ0gdGhhdCBpbnNpZGUgdGhlIOKAnDxzcGFuIGNsYXNzPSJUMjMiPnNpbXVsYXRvcjwvc3Bhbj7igJ0gdGFrZXMgaW4gY2hhcmdlIHRoZSBjb21tdW5pY2F0aW9ucyBiZXR3ZWVuIHRoZSDigJw8c3BhbiBjbGFzcz0iVDIzIj5yb2JvdGljIG1pZGRsZXdhcmU8L3NwYW4+4oCdIGFuZCB0aGUg4oCcPHNwYW4gY2xhc3M9IlQyMyI+ZW52aXJvbm1lbnQgc2ltdWxhdG9yPC9zcGFuPuKAnTwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQMzkiPkNvbW11bmljYXRpb24gU3lzdGVtPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjIiPjxzcGFuIGNsYXNzPSJUMzUiPkEgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjQiPmNvbW11bmljYXRpb24gc3lzdGVtPC9zcGFuPjxzcGFuIGNsYXNzPSJUMzUiPiBpcyB1c2VkIHRvIGV4Y2hhbmdlIGRhdGEgKGZpbGVzLCBtZXNzYWdlcywgb3JkZXJzLCBzdGF0dXMsZXRjLikgaW4gdGV4dCwgYXVkaW8gYW5kL29yIHZpZGVvIG9yIG90aGVyIG1vcmUgb3IgbGVzcyBzcGVjaWZpYyBmb3JtYXRzIGJldHdlZW4gZGlmZmVyZW50IGNvbXB1dGVycywgdGFza3MsIHVzZXJzIGFuZC9vciBhZ2VudHMuPC9zcGFuPjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQMzkiPkNvbmZpZ3VyYXRpb248L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOCI+QSBjb25maWd1cmF0aW9uIGlzIGNvbXBvc2VkIG9mOjwvcD48cCBjbGFzcz0iUDI4Ij4tIGluaXRpYWwgc3RhdGUgb2YgdGhlIHByb2JsZW0gYW5kIHNvbHV0aW9uPC9wPjxwIGNsYXNzPSJQMjgiPi0gbGlzdCBvZiBleHRlcm5hbCBtb2R1bGUgbGlicmFyaWVzPC9wPjxwIGNsYXNzPSJQMjgiPi0gcHJvYmUgZGVmaW5pdGlvbnMgPC9wPjxwIGNsYXNzPSJQMjgiPi0gc2ltdWxhdG9yIGFuZCBtaWRkbGV3YXJlIGNob2ljZXM8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDM5Ij5Db250cm9sIHN0YXRpb248L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOCI+QSA8c3BhbiBjbGFzcz0iVDIxIj5jb250cm9sIHN0YXRpb248L3NwYW4+IChDUykgaXMgYSBjb250cm9sIGNlbnRyZSB0aGF0IHByb3ZpZGVzIHRoZSBmYWNpbGl0aWVzIGZvciBodW1hbiBjb250cm9sIG9mIHJvYm90cyBpbiB0aGUgPHNwYW4gY2xhc3M9IlQyMyI+RW52aXJvbm1lbnQ8L3NwYW4+LiA8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQwIj5EZXRlY3Rpb248L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+QXRvbWljU3lzdGVtOlBoeXNpY0RldmljZTpTZW5zb3JIYXJkd2FyZTpPYmplY3REZXRlY3Rpb25TeXN0ZW0gLSBIYXJkd2FyZSBmb3IgdGhlIGRldGVjdGlvbiBvZiBwaHlzaWNhbCBlbnRpdGllcyBpbiB0aGUgc3Vycm91bmRpbmcgZW52aXJvbm1lbnQuIFRlbGVtZXRlciBsYXNlciwgUmFkYXIsIGV0Yy4uLjwvcD48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDMzIj5NZXJyaWFtIFdlYnN0ZXIgJmFtcDsgUmFuZG9tIEhvdXNlIERpY3Rpb25hcnk6PC9zcGFuPiBUaGUgYWN0IG9mIGRldGVjdGluZyA8c3BhbiBjbGFzcz0iVDM0Ij7vg6g8L3NwYW4+IERldGVjdGluZzogdG8gZGlzY292ZXIgb3IgZGV0ZXJtaW5lIHRoZSBleGlzdGVuY2UsIHByZXNlbmNlIG9yIGZhY3Qgb2YuPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MCI+RW52aXJvbm1lbnQ8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQzMCI+VGhlIEVudmlyb25tZW50PC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPiBncm91cHMgZXZlcnl0aGluZyB0aGF0IGV4aXN0LiBOb3RoaW5nIGlzIG91dHNpZGUgYW5kIGV2ZXJ5dGhpbmcgbGl2ZXMgaW4gaXQuIEFuIGFsaWFzIGZvciBlbnZpcm9ubWVudCBjb3VsZCBiZSBVbml2ZXJzZSBvciBXb3JsZCBpbiBhbiBvbnRvbG9neSBtZWFuaW5nLiBUaGlzIGlzIHRoZSBoaWdoZXN0IHBvc3NpYmxlICJjb250YWluZXIiIGZvciB0aGUgcGh5c2ljYWwgb2JqZWN0cyB0byBleGlzdC4gQ29uc2lkZXJpbmcgdGhlIHNjZW5hcmlvIHRvIGJlIHJlcHJlc2VudGVkIHVzaW5nIHRoaXMgY29uY2VwdCBpdCBleHByZXNzZXMgYWxzbyB0aGUgYm91bmRhcnkgd2UgaW1hZ2luZSBmb3IgdGhlIHByb2JsZW0uIEFzIGFuIGV4YW1wbGUsIGZvciBhIG1vYmlsZSBvbiBncm91bmQgcm9ib3QgdGhlcmUgaXMgbm8gbmVlZCB0byByZXByZXNlbnQgYW55dGhpbmcgY29uY2VybmluZyB3YXRlci4gVGhlIGRpZmZlcmVuY2UgYmV0d2VlbiBwaHlzaWNhbCBvYmplY3RzIGFuZCB0aGUgZW52aXJvbm1lbnQgaXMgdGhhdCB0aGUgUGh5c2ljYWwgSW50ZXJhY3Rpb24gYXJlIHBhcnQgb25seSBvZiB0aGUgbGF0dGVyIGFuZCBwcm9wYWdhdGVkIGludG8gaXQuPC9zcGFuPjwvcD48cCBjbGFzcz0iUDM0Ij5JbXBvcnRhbnQgcmVtYXJrIDogUGxlYXNlIGJlIGNhcmUgaW4gdXNpbmcgdGhlIGNvbXBsZXRlIGFuZCByaWdodCBmb3JtdWxhdGlvbiB3aGVuIHlvdSBoYXZlIHRvIHNwZWFrIGFib3V0IHNwZWNpZmljIGVudmlyb25tZW50cyBhcyBFbnZpcm9ubWVudCBTaW11bGF0b3IsIFNvZnR3YXJlIERldmVsb3BtZW50IEVudmlyb25tZW50IG9yIGFueSBvdGhlciBlcXVpdmFsZW50IGl0ZW1zLiBUaGUgd29yZCBFbnZpcm9ubWVudCB1c2VkIGFsb25lIG9ubHkgcmVmZXJzIHRvIHRoZSBzdXJyb3VuZGluZyBvZiB0aGUgc3lzdGVtczogbmF0dXJhbCwgYXJ0aWZpY2lhbCwgaHVtYW4sIGFuaW1hbCwgcGxhbnQsIG1pbmVyYWwsIG9yIGFueSBpdGVtcyB0aGF0IG1heSBpbnRlcmFjdCB3aXRoIHRoZSByb2JvdC48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDI5Ij5FbnZpcm9ubWVudCBTaW11bGF0b3I8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOCI+SXQgaXMgYW4g4oCcPHNwYW4gY2xhc3M9IlQyMyI+YXBwbGljYXRpb248L3NwYW4+4oCdIHRoYXQgaW5zaWRlIHRoZSDigJw8c3BhbiBjbGFzcz0iVDIzIj5zaW11bGF0b3I8L3NwYW4+4oCdIHRha2VzIGluIGNoYXJnZSB3aGF0ZXZlciBpcyBub3QgdGhlIOKAnDxzcGFuIGNsYXNzPSJUMjMiPnJvYm90KHMpJyBzeXN0ZW08L3NwYW4+4oCdLjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQMzkiPkV2YWx1YXRpb248L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOCI+VGhlIGV2YWx1YXRpb24gb2YgYSBzb2x1dGlvbiBjb25zaXN0cyBpbiBhcHBseWluZyB0aGUgbWV0cmljcyB0byB0aGUgcmVzdWx0cyBvZiBvbmUgb3IgbW9yZSBleGVjdXRpb25zIChlYWNoIGV4ZWN1dGlvbiBjb3JyZXNwb25kcyB0byBhIGNvbmZpZ3VyYXRpb24pPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlAzOSI+RXh0ZXJuYWwgQ29tbXVuaWNhdGlvbjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDIwIj5BbiA8c3BhbiBjbGFzcz0iVDIzIj5leHRlcm5hbCBjb21tdW5pY2F0aW9ucyBzeXN0ZW08L3NwYW4+IGlzIGEgY29sbGVjdGlvbiBvZiBpbmRpdmlkdWFsIGNvbW11bmljYXRpb25zIG5ldHdvcmtzLCB0cmFuc21pc3Npb24gc3lzdGVtcywgcmVsYXkgc3RhdGlvbnMsIHRyaWJ1dGFyeSBzdGF0aW9ucywgYW5kIGRhdGEgdGVybWluYWwgZXF1aXBtZW50IChEVEUpIHVzdWFsbHkgY2FwYWJsZSBvZiBpbnRlcmNvbm5lY3Rpb24gYW5kIGludGVyb3BlcmF0aW9uIHRvIGZvcm0gYW4gaW50ZWdyYXRlZCB3aG9sZS4gVGhlIGNvbXBvbmVudHMgb2YgYSBjb21tdW5pY2F0aW9ucyBzeXN0ZW0gc2VydmUgYSBjb21tb24gcHVycG9zZSwgYXJlIHRlY2huaWNhbGx5IGNvbXBhdGlibGUsIHVzZSBjb21tb24gcHJvY2VkdXJlcywgcmVzcG9uZCB0byBjb250cm9scywgYW5kIG9wZXJhdGUgaW4gdW5pc29uLjwvcD48cCBjbGFzcz0iUDIxIj5UaGVyZSBhcmUgdXNlZCB0byB0cmFuc21pdCBvcmRlciwgc3RhdHVzLCBkYXRhIGFuZC9vciB2aWRlbyBzaWduYWxzIGJldHdlZW4gTW9iaWwgUGxhdGZvcm0ocykgYW5kL29yIE9wZXJhdG9yIENvbnRyb2wgVW5pdChzKTwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQMzkiPkZyYW1ld29yazwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI4Ij5BIGluY29tcGxldGUgc29mdHdhcmUgZW50aXR5IHRoYXQgYWxsb3dzIHRvIGJ1aWxkIGFuIDxzcGFuIGNsYXNzPSJUMjMiPmFwcGxpY2F0aW9uPC9zcGFuPjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDAiPkd1aWRhbmNlPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMyI+TWVycmlhbSBXZWJzdGVyPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDciPu+DqDwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiBUaGUgYWN0IG9yIHByb2Nlc3Mgb2YgZ3VpZGluZyA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ3Ij7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gR3VpZGluZzogdG8gYWN0IGFzIGEgZ3VpZGUgdG8gZGlyZWN0IGluIGEgd2F5IG9yIGNvdXJzZS4gQSBkZXZpY2UgZm9yIHN0ZWFkeWluZyBvciBkaXJlY3RpbmcgdGhlIG1vdGlvbiBvZiBzb21ldGhpbmcuPC9zcGFuPjwvcD48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDMzIj5SYW5kb20gSG91c2UgRGljdGlvbmFyeSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxNyI+74OoIDwvc3Bhbj5UaGUgcHJvY2VzcyBieSB3aGljaCB0aGUgZmxpZ2h0IG9mIGEgbWlzc2lsZSBvciByb2NrZXQgbWF5IGJlIGFsdGVyZWQgaW4gc3BlZWQgYW5kIGRpcmVjdGlvbiBpbiByZXNwb25zZSB0byBjb250cm9scyBzaXR1YXRlZCBlaXRoZXIgd2hvbGx5IGluIHRoZSBwcm9qZWN0aWxlIG9yIHBhcnRseSBhdCBhIGJhczwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDAiPklkZW50aWZpY2F0aW9uPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUNSI+UmFuZG9tIEhvdXNlIERpY3Rpb25hcnk8L3NwYW4+PHNwYW4gY2xhc3M9IlQ4Ij4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUNyI+74OoPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTYiPiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ5Ij5BbiBhY3Qgb3IgaW5zdGFuY2Ugb2YgaWRlbnQ8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMCI+aTwvc3Bhbj48c3BhbiBjbGFzcz0iVDkiPmZ5aW5nPC9zcGFuPjxzcGFuIGNsYXNzPSJUOCI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDciPu+DqDwvc3Bhbj48c3BhbiBjbGFzcz0iVDkiPklkZW50aWZ5aW5nOiB0byByZWNvZ25pemUgb3IgZXN0YWJsaXNoIGFzIGJlaW5nIGEgcGFydGljdWxhciBwZXJzb24sIGNvbXBvbmVudCBvcjwvc3Bhbj48c3BhbiBjbGFzcz0iVDEiPiB0aGluZy48L3NwYW4+PC9wPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMzMiPk1lcnJpYW0gV2Vic3Rlcjwvc3Bhbj48c3BhbiBjbGFzcz0iVDIyIj4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTciPu+DqDwvc3Bhbj48c3BhbiBjbGFzcz0iVDE5Ij4gPC9zcGFuPkFuIGFjdCBvZiBpZGVudGlmeWluZyA8c3BhbiBjbGFzcz0iVDM0Ij7vg6g8L3NwYW4+IElkZW50aWZ5aW5nIDogdG8gZXN0YWJsaXNoIHRoZSBpZGVudGl0eSBvZjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDEiPkxldmVscyBvZiBDb2duaXphbmNlPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMyI+SlBSICZhbXA7IEFMRlVTPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDYiPu+DqDwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPlRoZSBsZXZlbHMgb2Ygd2hhdCBhIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDEyIj5VTVMgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+Y2FuIGtub3cgb3IgdW5kZXJzdGFuZCBiYXNlZCBvbiBpdHMgc2Vuc29yeSBwcm9jZXNzaW5nIGNhcGFiaWxpdHkuPC9zcGFuPjwvcD48cCBjbGFzcz0iUDI1Ij5UaHJlZSBsZXZlbHMgYXJlIGRlZmluZWQgaW4gUFJPVEVVUyAoPHNwYW4gY2xhc3M9IlQyMiI+UmF3IGRhdGE8L3NwYW4+LCA8c3BhbiBjbGFzcz0iVDIyIj5QaHlzaWNhbCBsZXZlbDwvc3Bhbj4gYW5kIDxzcGFuIGNsYXNzPSJUMjIiPkFwcGxpY2F0aW9uIGxldmVsPC9zcGFuPik8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQxIj5MZXZlbHMgb2YgRnVzaW9uPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMzMiPkpQUiAmYW1wOyBBTEZVUzwvc3Bhbj4gPHNwYW4gY2xhc3M9IlQzNCI+74OoPC9zcGFuPiBGdXNpb24gZGF0YSBwcm9jZXNzaW5nIHRhc2tzIGRlY29tcG9zaXRpb24uIEVhY2ggb2YgdGhlIGRlZmluZWQgbGV2ZWxzIG9mIGZ1c2lvbiBhZGRzIHByb2dyZXNzaXZlbHkgZ3JlYXRlciBtZWFuaW5nIGFuZCBpbnZvbHZlcyBtb3JlIEFuYWx5c2lzLiBUaGUgbnVtYmVycyBvZiBmdXNpb24gbGV2ZWxzIGFuZCB0aGVpciBtZWFuaW5nIGlzIGN1cnJlbnRseSBub3QgZGVmaW5lZCBpbiBQUk9URVVTPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MSI+TGV2ZWxzIG9mIFBlcmNlcHRpb248L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQzMyI+SlBSICZhbXA7IEFMRlVTIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDI1Ij7vg6g8L3NwYW4+IFRoZSBwcm9ncmVzc2l2ZSByZXN1bHRzIG9mIHNlbnNvcnkgaW5mb3JtYXRpb24gYWZ0ZXIgdGhlIGRhdGEgaGF2ZSBnb25lIHRocm91Z2ggbXVsdGlwbGUgbGV2ZWxzIG9mIHNlbnNvcnkgcHJvY2Vzc2luZy4gVGhlIG51bWJlcnMgb2YgTGV2ZWxzIG9mIHBlcmNlcHRpb24gYW5kIHRoZWlyIGRlZmluaXRpb24gaXMgY3VycmVudGx5IG5vdCBkZWZpbmVkIGluIFBST1RFVVM8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQxIj5Mb2NhbGlzYXRpb248L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+U2VlIG9udG9sb2d5IOKAkyBzeXN0ZW06cm9ib3RpY1N1YlN5c3RlbTpkZXZpY2VTeXN0ZW06c2Vuc29yU3lzdGVtOmxvY2FsaXphdGlvblNlbnNvclN5c3RlbSAobm8gZGVmLik8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDI5Ij5NZXRyaWM8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOCI+QSDigJw8c3BhbiBjbGFzcz0iVDIzIj5tZXRyaWM8L3NwYW4+4oCdIGlzIHRoZSBjb21wb3NpdGlvbiBvZiBvbmUgb3IgbXVsdGlwbGUg4oCcPHNwYW4gY2xhc3M9IlQyMyI+cHJvYmVzPC9zcGFuPuKAnScgcmVjb3JkaW5ncyBhc3NvY2lhdGVkIHRvIGEgdmFsaWRpdHkgZG9tYWluIGluIG9yZGVyIHRvIGFsbG93IGEgbWVhc3VyZSBvZiDCoHBlcmZvcm1hbmNlcy4gQSDigJw8c3BhbiBjbGFzcz0iVDIzIj5tZXRyaWM8L3NwYW4+4oCdIGNhbiBiZSByZWxhdGVkIHRvIG11bHRpcGxlIHJlY29yZHMgcHJvdmlkZWQgYnkgbXVsdGlwbGUg4oCcPHNwYW4gY2xhc3M9IlQyMyI+c2ltdWxhdGlvbnM8L3NwYW4+4oCdLiBUaGlzIGlzIG9mdGVuIHRoZSBjYXNlIG9mIHN0YXRpc3RpY2FsIGFwcHJvYWNoIHRvIGFzc2Vzc21lbnQuPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MiI+TWlzc2lvbjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDMzIj5KUFIgJmFtcDsgQUxGVVM8L3NwYW4+IDxzcGFuIGNsYXNzPSJUMzQiPu+DqDwvc3Bhbj4gVGhlIGhpZ2hlc3QtbGV2ZWwgdGFzayBhc3NpZ25lZCB0byB0aGUgVU1TLjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDIiPjxzcGFuIGNsYXNzPSJUMTYiPk1pc3Npb248L3NwYW4+IDxzcGFuIGNsYXNzPSJUMTYiPkNvb3JkaW5hdGlvbjwvc3Bhbj48L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQzMyI+SlBSICZhbXA7IEFMRlVTPC9zcGFuPiA8c3BhbiBjbGFzcz0iVDM0Ij7vg6g8L3NwYW4+IENvb3JkaW5hdGlvbiBhbmQgdGltaW5nIG1hbmFnZW1lbnQgb2YgdGhlIDxzcGFuIGNsYXNzPSJUMjIiPk1vdGlvbiBQbGFubmluZzwvc3Bhbj4gYW5kIHRoZSA8c3BhbiBjbGFzcz0iVDIyIj5NaXNzaW9uIFBheWxvYWQ8L3NwYW4+IGR1cmluZyB0aGUgPHNwYW4gY2xhc3M9IlQyMiI+TWlzc2lvbiBleGVjdXRpb24gJmFtcDsgQ29udHJvbDwvc3Bhbj48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQyIj48c3BhbiBjbGFzcz0iVDE2Ij5NaXNzaW9uPC9zcGFuPiA8c3BhbiBjbGFzcz0iVDE2Ij5FeGVjdXRpb24gJmFtcDsgQ29udHJvbDwvc3Bhbj48L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQzMyI+SlBSICZhbXA7IEFMRlVTPC9zcGFuPiA8c3BhbiBjbGFzcz0iVDM0Ij7vg6g8L3NwYW4+IEl0IGlzIGluIGNoYXJnZSBvZiB0aGUgZXhlY3V0aW9uIGFuZCB0aGUgY29udHJvbCBvZiB0aGUgPHNwYW4gY2xhc3M9IlQyMiI+TWlzc2lvbiBQbGFuLjwvc3Bhbj48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQyIj48c3BhbiBjbGFzcz0iVDE2Ij5NaXNzaW9uPC9zcGFuPiA8c3BhbiBjbGFzcz0iVDE2Ij5Nb2R1bGU8L3NwYW4+PC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPlNlZSBNaXNzaW9uIFBheWxvYWQ8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQyIj48c3BhbiBjbGFzcz0iVDE2Ij5NaXNzaW9uPC9zcGFuPiA8c3BhbiBjbGFzcz0iVDE2Ij5QYXlsb2FkPC9zcGFuPjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij5TZWUgTWlzc2lvbiBNb2R1bGU8L3A+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQzMyI+SlBSICZhbXA7IEFMRlVTPC9zcGFuPiA8c3BhbiBjbGFzcz0iVDM0Ij7vg6g8L3NwYW4+IDxzcGFuIGNsYXNzPSJUMjIiPlBheWxvYWQ8L3NwYW4+KHMpIHRvIGJlIHVzZWQgdG8gY29tcGxldGUgYSBzcGVjaWZpYyA8c3BhbiBjbGFzcz0iVDIyIj5NaXNzaW9uPC9zcGFuPi48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQyIj48c3BhbiBjbGFzcz0iVDE2Ij5NaXNzaW9uPC9zcGFuPiA8c3BhbiBjbGFzcz0iVDE2Ij5QbGFuPC9zcGFuPjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDMiPkpQUiAmYW1wOyBBTEZVUzwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMSI+74OoPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+IGZpbGUgZGVzY3JpYmluZyB0aGUgdGFza3MgdG8gYmUgZG9uZSBhbmQgdGhlIHJlbGF0aW9uc2hpcHMgYmV0d2VlbiB0aGVzZSB0YXNrcyBUaGUgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTIiPk1pc3Npb24gUGxhbiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj5jYW4gYmUgZ2VuZXJhdGVkIGVpdGhlciBpbiBhZHZhbmNlIGJ5IG9wZXJhdG9ycyBvbiBhbiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMiI+T0NVPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+IG9yIGluIHJlYWwtdGltZSBieSB0aGUgb24gYm9hcmQsIGV2ZW50dWFsbHkgZGlzdHJpYnV0ZWQgc29mdHdhcmUgc3lzdGVtcy4gVGhlIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDEyIj5NaXNzaW9uIFBhbjwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiBpcyB0aGUgbWFpbiBpbnB1dCA8L3NwYW4+Zm9yPHNwYW4gY2xhc3M9IlQyIj4gdGhlIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDEyIj5NaXNzaW9uIEV4ZWN1dGlvbiAmYW1wOyBDb250cm9sPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+LiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj5UaGU8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMiI+IE1pc3Npb24gUGxhbjwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiBhZGRyZXNzIHRoZSB0aHJlZSBmb2xsb3dpbmcgdGFzazo8L3NwYW4+PC9wPjx1bD48bGk+PHAgY2xhc3M9IlA0NiIgc3R5bGU9Im1hcmdpbi1sZWZ0OjBjbTsiPjxzcGFuIGNsYXNzPSJCdWxsZXRfMjBfU3ltYm9scyIgc3R5bGU9ImRpc3BsYXk6YmxvY2s7ZmxvYXQ6bGVmdDttaW4td2lkdGg6MGNtIj7igKIuPC9zcGFuPk1vdGlvbiBQbGFubmluZzxzcGFuIGNsYXNzPSJvZGZMaUVuZCIvPsKgPC9wPjwvbGk+PGxpPjxwIGNsYXNzPSJQNDYiIHN0eWxlPSJtYXJnaW4tbGVmdDowY207Ij48c3BhbiBjbGFzcz0iQnVsbGV0XzIwX1N5bWJvbHMiIHN0eWxlPSJkaXNwbGF5OmJsb2NrO2Zsb2F0OmxlZnQ7bWluLXdpZHRoOjBjbSI+4oCiLjwvc3Bhbj5NaXNzaW9uIFBheWxvYWQ8c3BhbiBjbGFzcz0ib2RmTGlFbmQiLz7CoDwvcD48L2xpPjxsaT48cCBjbGFzcz0iUDQ2IiBzdHlsZT0ibWFyZ2luLWxlZnQ6MGNtOyI+PHNwYW4gY2xhc3M9IkJ1bGxldF8yMF9TeW1ib2xzIiBzdHlsZT0iZGlzcGxheTpibG9jaztmbG9hdDpsZWZ0O21pbi13aWR0aDowY20iPuKAoi48L3NwYW4+TWlzc2lvbiBDb29yZGluYXRpb248c3BhbiBjbGFzcz0ib2RmTGlFbmQiLz7CoDwvcD48L2xpPjwvdWw+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQyIj48c3BhbiBjbGFzcz0iVDE2Ij5NaXNzaW9uPC9zcGFuPiA8c3BhbiBjbGFzcz0iVDE2Ij5QbGFubmluZzwvc3Bhbj48L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQzIj5KUFIgJmFtcDsgQUxGVVM8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTEiPu+DqDwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiBUaGUgbWlzc2lvbiBwbGFubmluZyBpcyB0aGUgcHJvY2VzcyB1c2VkIHRvIGdlbmVyYXRlIHRhY3RpY2FsIGdvYWxzLCBhIHJvdXRlIChnZW5lcmFsIG9yIHNwZWNpZmljKSwgY29tbWFuZGluZyBzdHJ1Y3R1cmUsIGNvb3JkaW5hdGlvbiwgYW5kIHRpbWluZyBmb3Igb25lIG9yIHRlYW1zIG9mIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDEyIj5VTVM8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj5zLiBUaGUgcmVzdWx0IG9mIHRoZSBNaXNzaW9uIFBsYW5uaW5nIGlzIGEgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTIiPk1pc3Npb24gUGxhbjwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPi4gVGhlIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDEyIj5NaXNzaW9uIFBsYW5uaW5nPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+IGludm9sdmVzIHR3byBtYWluIHN1YiBmdW5jdGlvbnM6PC9zcGFuPjwvcD48dWw+PGxpPjxwIGNsYXNzPSJQNDciIHN0eWxlPSJtYXJnaW4tbGVmdDowY207Ij48c3BhbiBjbGFzcz0iQnVsbGV0XzIwX1N5bWJvbHMiIHN0eWxlPSJkaXNwbGF5OmJsb2NrO2Zsb2F0OmxlZnQ7bWluLXdpZHRoOjBjbSI+4oCiLjwvc3Bhbj5NaXNzaW9uIFByZXBhcmF0aW9uPHNwYW4gY2xhc3M9Im9kZkxpRW5kIi8+wqA8L3A+PC9saT48bGk+PHAgY2xhc3M9IlA0NyIgc3R5bGU9Im1hcmdpbi1sZWZ0OjBjbTsiPjxzcGFuIGNsYXNzPSJCdWxsZXRfMjBfU3ltYm9scyIgc3R5bGU9ImRpc3BsYXk6YmxvY2s7ZmxvYXQ6bGVmdDttaW4td2lkdGg6MGNtIj7igKIuPC9zcGFuPk1pc3Npb24gRXhlY3V0aW9uICZhbXA7IENvbnRyb2wgPHNwYW4gY2xhc3M9Im9kZkxpRW5kIi8+wqA8L3A+PC9saT48L3VsPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MiI+PHNwYW4gY2xhc3M9IlQxNiI+TWlzc2lvbjwvc3Bhbj4gPHNwYW4gY2xhc3M9IlQxNiI+UHJlcGFyYXRpb248L3NwYW4+PC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMyI+SlBSICZhbXA7IEFMRlVTPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDExIj7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gSXQgZ2VuZXJhdGVzIHRoZSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMiI+TWlzc2lvbiBQbGFuPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+IHVzZWQgdG8gZGVzY3JpYmUgdGhlIGVudGlyZSB0YXNrcyB0byBiZSBkb25lIGluIG9yZGVyIHRvIGV4ZWN1dGUgdGhlIG1pc3Npb24uIDwvc3Bhbj48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQxIj5Nb2JpbGl0eTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDMiPkpQUiAmYW1wOyBBTEZVUzwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMSI+74OoPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+IFRoZSBjYXBhYmlsaXR5IG9mIGEgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTIiPlVNUzwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiB0byBtb3ZlIGZyb20gcGxhY2UgdG8gcGxhY2UsIHdpdGggaXRzIG93biBwb3dlciA8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj5hbmQgd2hpbGUgdW5kZXIgYW55IG1vZGUgb3IgbWV0aG9kIG9mIGNvbnRyb2wuIFRoaXMgZnVuY3Rpb24gcmVjZWl2ZSBoaWdoIGxldmVsLCBtb3Rpb24gc2V0IHBvaW50cyBleHByZXNzZWQgaW4gdGVybSBvZiBzcGVlZCwgc3RlZXIgb3IgZXF1aXZhbGVudCBhbmQgY29tcHV0ZSB0aGUgcGh5c2ljYWwgYWN0dWF0b3JzIHNldHMgcG9pbnRzIGFjY29yZGluZyB0byB0aGUgYWRkcmVzc2VkIHBsYXRmb3JtLjwvc3Bhbj48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQxIj5Nb3Rpb24gUGxhbjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDMzIj5KUFIgJmFtcDsgQUxGVVM8L3NwYW4+IDxzcGFuIGNsYXNzPSJUMzQiPu+DqDwvc3Bhbj4gSXQgaW5jbHVkZXMgdGhlIHJlc3VsdHMgb2YgdGhlIDxzcGFuIGNsYXNzPSJUMjIiPk1vdGlvbiBQbGFubmluZzwvc3Bhbj4gYW5kIGl0IGlzIHVzZWQgYXMgaW5wdXQgYnkgdGhlIDxzcGFuIGNsYXNzPSJUMjIiPkd1aWRhbmNlPC9zcGFuPi48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQxIj5Nb3Rpb24gUGxhbm5pbmc8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+U2VlIFRyYWplY3RvcnkgcGxhbm5pbmc8L3A+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQzIj5KUFIgJmFtcDsgQUxGVVMgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTMiPu+DqDwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiBEZWZpbmUgdGhlIHJvdXRlIChnZW5lcmFsIG9yIHNwZWNpZmljKSB0byBiZSB1c2VkIGZvciBkb2luZyB0aGUgbWlzc2lvbi4gVGhlIHJvdXRlIGRlc2NyaXB0aW9uIGFuZCBjaGFyYWN0ZXJpc3RpY3MgaXMgc3RvcmVkIGluIHRoZSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMiI+TW90aW9uIFBsYW4uPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+IDwvc3Bhbj48L3A+PHVsPjxsaT48cCBjbGFzcz0iUDQ4IiBzdHlsZT0ibWFyZ2luLWxlZnQ6MGNtOyI+PHNwYW4gY2xhc3M9IkJ1bGxldF8yMF9TeW1ib2xzIiBzdHlsZT0iZGlzcGxheTpibG9jaztmbG9hdDpsZWZ0O21pbi13aWR0aDowY20iPuKAoi48L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj5UaGUgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTIiPk1vdGlvbnM8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gdG8gYmUgdXNlZCAocm91dGUsIGdlbmVyYWwgb3Igc3BlY2lmaWMsIHRvIGJlIHVzZWQgZm9yIGRvaW5nIHRoZSBtaXNzaW9uKS48L3NwYW4+PHNwYW4gY2xhc3M9Im9kZkxpRW5kIi8+wqA8L3A+PC9saT48bGk+PHAgY2xhc3M9IlA0OCIgc3R5bGU9Im1hcmdpbi1sZWZ0OjBjbTsiPjxzcGFuIGNsYXNzPSJCdWxsZXRfMjBfU3ltYm9scyIgc3R5bGU9ImRpc3BsYXk6YmxvY2s7ZmxvYXQ6bGVmdDttaW4td2lkdGg6MGNtIj7igKIuPC9zcGFuPkhvdyB0aGVzZSBNb3Rpb25zIGhhdmUgdG8gYmUgdXNlZDxzcGFuIGNsYXNzPSJvZGZMaUVuZCIvPsKgPC9wPjwvbGk+PGxpPjxwIGNsYXNzPSJQNDgiIHN0eWxlPSJtYXJnaW4tbGVmdDowY207Ij48c3BhbiBjbGFzcz0iQnVsbGV0XzIwX1N5bWJvbHMiIHN0eWxlPSJkaXNwbGF5OmJsb2NrO2Zsb2F0OmxlZnQ7bWluLXdpZHRoOjBjbSI+4oCiLjwvc3Bhbj5UaGUgcGFyYW1ldGVycyBhbmQgY29uc3RyYWludHMgYXNzb2NpYXRlZCB0byB0aGUgc2VsZWN0ZWQgPHNwYW4gY2xhc3M9IlQyMiI+TW90aW9uPC9zcGFuPnMuPHNwYW4gY2xhc3M9Im9kZkxpRW5kIi8+wqA8L3A+PC9saT48L3VsPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MSI+TW90b3Jpc2F0aW9uIFN5c3RlbTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDIzIj5FbGVjdHJvbWVjaGFuaWNhbCA8L3NwYW4+c3lzdGVtLCBpbmNsdWRpbmcgPHNwYW4gY2xhc3M9IlQyNyI+bW90b3JzLDwvc3Bhbj4gPHNwYW4gY2xhc3M9IlQyOCI+cmVkdWNlcnMsIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDI3Ij5tZWNoYW5pY2FsIHRyYW5zbWlzc2lvbnM8L3NwYW4+IGFuZCA8c3BhbiBjbGFzcz0iVDI3Ij5zb2Z0d2FyZSBkcml2ZXJzPC9zcGFuPiB1c2VkIHRvIDxzcGFuIGNsYXNzPSJUMjMiPm1vdmUgdGhlIHJvYm90IG9yIGEgcGFydCBvZiBpdC48L3NwYW4+PHNwYW4gY2xhc3M9IlQxIj4gSXQgaGFzIHRvIGJlIGNsZWFybHkgZGlmZmVyZW50aWF0ZWQgZnJvbSBvdGhlciBlbWJlZGRlZDwvc3Bhbj48c3BhbiBjbGFzcz0iVDIzIj4gQWN0dWF0b3JzIFN5c3RlbXMuPC9zcGFuPjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDEiPk9udG9sb2d5PC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPkRhdGEgb2JleWluZyB0aGUgVzNDIHN0YW5kYXJkIGFuZCB1c2VkIHRvIHJlcHJlc2VudCBrbm93bGVkZ2VzPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MSI+UGF5bG9hZDwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDUiPldpa2lwZWRpYTwvc3Bhbj48c3BhbiBjbGFzcz0iVDE2Ij4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTkiPu+DqDwvc3Bhbj48c3BhbiBjbGFzcz0iVDE2Ij4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUNCI+SW4gbWlsaXRhcnkgYWlyY3JhZnQgb3Igc3BhY2UgZXhwbG9yYXRpb24sIHRoZSBwYXlsb2FkIGlzIHRoZSBjYXJyeWluZyBjYXBhY2l0eSBvZiBhbiBhaXJjcmFmdCBvciBzcGFjZSBzaGlwLCBpbmNsdWRpbmcgY2FyZ28sIHdlYXBvbnMsIG11bml0aW9ucywgc2NpZW50aWZpYyBpbnN0cnVtZW50cyBvciBleHBlcmltZW50cy48L3NwYW4+PC9wPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMiI+QnkgZXh0ZW5zaW9uIOKAnDwvc3Bhbj48c3BhbiBjbGFzcz0iVDEyIj5QYXlsb2FkPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+4oCdIGNhbiBiZSB1c2VkIHRvIG5hbWUgYWxsIHRoZSBjYXJyaWVkIHN5c3RlbXMgdXNlZCB0byBjb21wbGV0ZSBhIHNwZWNpZmljIG1pc3Npb24uIEluIHRoaXMgY2FzZSwgc2NpZW50aWZpYyBpbnN0cnVtZW50IG9yIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPmV4cGVyaW1lbnQgYXMgdG8gYmUgdW5kZXJzdG9vZCBhcyBhbnkgaW5zdHJ1bWVudHMgZm9yIG1lYXN1cmVtZW50cyBvciBhY3Rpb24sIGNhcnJpZWQgb24gdGhlIHJvYm90aWMgcGxhdGZvcm0uPC9zcGFuPjwvcD48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDMzIj5KUFIgJmFtcDsgQUxGVVMgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjUiPu+DqDwvc3Bhbj4gQSBzZWxmLWNvbnRhaW5lZCBzdWJzeXN0ZW0gaW5zdGFsbGVkIG9uIGEgVU1TIHRoYXQgZW5hYmxlcyB0aGUgPHNwYW4gY2xhc3M9IlQyMiI+VU1TPC9zcGFuPiB0byBwZXJmb3JtIGRlc2lnbmVkIG1pc3Npb25zLiBJdCBjYW4gYmUgZWFzaWx5IGluc3RhbGxlZCBhbmQgcmVwbGFjZWQgYnkgYW5vdGhlciB0eXBlIG9mIG1pc3Npb24gbW9kdWxlPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MSI+UGF5bG9hZCBMZXZlbDwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij7CoDwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDEiPlBlcmNlcHRpb248L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQyMCI+V2lraXBlZGlhPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTkiPjo8L3NwYW4+PHNwYW4gY2xhc3M9IlQxNiI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDE4Ij5QZXJjZXB0aW9uPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTYiPiBpcyB0aGUgcHJvY2VzcyBvZiBhdHRhaW5pbmcgYXdhcmVuZXNzIG9yIHVuZGVyc3RhbmRpbmcgwqBvZjwvc3Bhbj48c3BhbiBjbGFzcz0iVDE4Ij4gU2Vuc29yeSBJbmZvcm1hdGlvbiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxNiI+ZnJvbSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxOCI+U2Vuc29yczwvc3Bhbj48c3BhbiBjbGFzcz0iVDE2Ij4gdGhyb3VnaCA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxOCI+U2Vuc29yeSBQcm9jZXNzaW5nPC9zcGFuPjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDEiPlBoeXNpY2FsIGxldmVsPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMzMiPkpQUiAmYW1wOyBBTEZVUyA8L3NwYW4+PHNwYW4gY2xhc3M9IlQyNSI+74OoPC9zcGFuPiBpbmZvcm1hdGlvbi4gRnVydGhlciBwcm9jZXNzZWQsIHJlZmluZWQgYW5kIHN0cnVjdHVyZWQgZGF0YSB0aGF0IGlzIGh1bWFuIHVuZGVyc3RhbmRhYmxlIChsZW5ndGgsIGFuZ2xlLCBkaXN0YW5jZSwgYW5kIG90aGVycyBiYXNpYyBwaHlzaWNhbCBkaW1lbnNpb25zKTwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDEiPlBsYXRmb3JtIExldmVsPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPsKgPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MSI+UGxhdGZvcm0gU3VwZXJ2aXNvcjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDIiPkluIGNoYXJnZSBvZiB0aGUgY29udHJvbCBvZiB0aGUgYmVoYXZpb3VyIG9mIHRoZSBwbGF0Zm9ybS4gVGhpcyBzdXBlcnZpc29yeSBmdW5jdGlvbiBkb2VzbuKAmXQgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+ZGlyZWN0bHkgYWRkcmVzcyB0aGUgc2VjdXJpdHkgb2YgdGhlIHBsYXRmb3JtIChTZWUgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTIiPlBsYXRmb3JtIHNlY3VyaXR5PC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+KSBidXQgdGhlIGxvZ2ljYWwgY29uc2lzdGVuY3kgb2YgdGhlIHBsYXRmb3JtIChwaHlzaWNhbCBzdGF0ZXMsIGxvZ2ljYWwgbW9kZXMsIHJlY2VpdmUgb3JkZXJzKTwvc3Bhbj48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQxIj5QbGF0Zm9ybSBTZWN1cml0eTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij5JbiBjaGFyZ2Ugb2YgdGhlIHNlY3VyaXR5IG9mIHRoZSBwbGF0Zm9ybS4gVGhlIGJhc2ljIHNlY3VyaXR5IG9mIHRoZSBwbGF0Zm9ybSBtdXN0IGJlIGRvbmUgdGhyb3VnaCBhbiBoYXJkd2FyZSBzeXN0ZW0gKG1vcmUgb3IgbGVzcyBjb21wbGV4KSwgYnV0IGFzIHdlIGhhdmUgdG8gZmFjZSB0byBjb21wbGV4IHN5c3RlbSB3ZSBjYW4gY29uc2lkZXIgdXNpbmcgYSBzcGVjaWZpYyBzb2Z0d2FyZSBjb21wb25lbnQgaW4gY2hhcmdlIG9mIHRoZSBzZWN1cml0eSBvZiB0aGUgcGxhdGZvcm0gYW5kIGludm9sdmluZyBzb21lIGV2ZW50cyBub3QgZGlyZWN0bHkgY29taW5nIGZyb20gdGhlIOKAnGhhcmR3YXJlIHNhZmV0eSBjb21wb25lbnTigJ0gYnV0IHRoYXQgY291bGQgYmUgZ2VuZXJhdGVkLCBhcyBhbiBleGFtcGxlLCBieSB0aGUgcGVyY2VwdGlvbiAoZW5lbXksIGV4dGVybmFsIGhhemFyZCkuPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlAzOSI+UHJvYmU8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOCI+QSBwcm9iZSBvYnNlcnZlcyB0aGUgc3RhdGUgb2Ygc3lzdGVtcyBhbmQgcHJvZHVjZXMgcmVzdWx0cy48L3A+PHAgY2xhc3M9IlAyOCI+SXQgaXMgb25lIG9mIHRoZSB0b29sIG9mIHRoZSDigJw8c3BhbiBjbGFzcz0iVDIzIj5zaW11bGF0b3I8L3NwYW4+4oCdLiBBIHNvZnR3YXJlIOKAnDxzcGFuIGNsYXNzPSJUMjMiPnByb2Jl4oCdPC9zcGFuPiBpcyBhIGRlZmluaXRpb24gb2Ygd2hhdCB2YXJpYWJsZXMgd2lsbCBoYXZlIHRvIGJlIGFjY2Vzc2VkIHdoZW4gZXhlY3V0aW5nIHRoZSDigJw8c3BhbiBjbGFzcz0iVDIzIj5zaW11bGF0b3I8L3NwYW4+4oCdIGluIG9yZGVyIHRvIHJlY29yZCB0aGVpciB2YWx1ZXMuPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlAzOSI+UHJvYmxlbTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI4Ij5BIHByb2JsZW0gaXM6PC9wPjxwIGNsYXNzPSJQMjgiPi0gdGhlIGRlZmluaXRpb24gb2YgdGhlIGFyY2hpdGVjdHVyZSBvZiBvbmUgb3IgbW9yZSByb2JvdHMgYW5kIHRoZWlyIGVudmlyb25tZW50IChpbiBvdXIgY2FzZSwgdXNpbmcgdGhlIHByb3RldXMgbWFpbiB0b29sKTs8L3A+PHAgY2xhc3M9IlAyOCI+LSB0aGUgZGVmaW5pdGlvbiBpbnNpZGUgdGhlIHJvYm90KHMpIGFyY2hpdGVjdHVyZSBvZiBvbmUgb3IgbXVsdGlwbGUgY29tcG9uZW50cyBpbiB3aGljaCBpdCBpcyBuZWNlc3NhcnkgdG8gZGV2ZWxvcCDigJw8c3BhbiBjbGFzcz0iVDIzIj5zb2x1dGlvbnM8L3NwYW4+4oCdOzwvcD48cCBjbGFzcz0iUDI4Ij4tIHRoZSBkZWZpbml0aW9uIG9mIMKg4oCcPHNwYW4gY2xhc3M9IlQyMyI+cHJvYmVzPC9zcGFuPuKAnSB0aGF0IGFsbG93IOKAnDxzcGFuIGNsYXNzPSJUMjMiPnNpbXVsYXRpb248L3NwYW4+4oCdIGV4cGxvaXRhdGlvbjs8L3A+PHAgY2xhc3M9IlAyOCI+LSB0aGUgZGVmaW5pdGlvbiBvZiB0aGUg4oCcPHNwYW4gY2xhc3M9IlQyMyI+bWV0cmljczwvc3Bhbj7igJ0gYW5kIHRoZWlyIGFzc29jaWF0ZWQgdmFsaWRpdHkgZG9tYWluIGluIG9yZGVyIHRvIG1lYXN1cmUgdGhlIOKAnDxzcGFuIGNsYXNzPSJUMjMiPnNvbHV0aW9u4oCdPC9zcGFuPiBxdWFsaXR5IGFuZCBjb21wYXJlIGl0IHRvIG90aGVyIDxzcGFuIGNsYXNzPSJUMjMiPuKAnHNvbHV0aW9uc+KAnS48L3NwYW4+PC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlAzOSI+UHJvdGV1cyBTaW11bGF0b3I8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOCI+U2ltdWxhdG9yIHdoaWNoIGhvc3RzIGEgcHJvYmxlbS48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQxIj5SYXcgRGF0YTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI1Ij48c3BhbiBjbGFzcz0iVDMiPkpQUiAmYW1wOyBBTEZVUyA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMyI+74OoPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+IGRhdGEsIG9yIG9ic2VydmVkIGRhdGEuIEluIGluaXRpYWxseSBwcm9jZXNzZWQgZm9ybXMgYWZ0ZXIgbWVhc3VyZWQgYnkgc2Vuc29ycy48L3NwYW4+PC9wPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMjAiPldpa2lwZWRpYTwvc3Bhbj48c3BhbiBjbGFzcz0iVDE2Ij4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTkiPu+DqDwvc3Bhbj48c3BhbiBjbGFzcz0iVDE2Ij4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTYiPlJhdyBkYXRhIGlzIGEgdGVybSBmb3IgZGF0YSBjb2xsZWN0ZWQgb24gc291cmNlIHdoaWNoIGhhcyBub3QgYmVlbiBzdWJqZWN0ZWQgdG8gcHJvY2Vzc2luZyBvciBhbnkgb3RoZXIgbWFuaXB1bGF0aW9uOyBpdCBpcyBhbHNvIGtub3duIGFzIHByaW1hcnkgZGF0YS4gUmF3IGRhdGEgaXMgZGF0YSB0aGF0IGhhcyBub3QgYmVlbiBhbHJlYWR5IHByb2Nlc3NlZCBmb3IgdXNlLCBidXQgaXQgY291bGQgaGF2ZSBiZWVuIHByb2NlZWQgaW4gb3JkZXIgdG8gZ2V0IHVzZWFibGUgYW5kIHVuZGVyc3RhbmRhYmxlIHZhbHVlIGFzIHZvbHRzLCBhbXBlcmVzIG9yIGFueSBvdGhlciBiYXNpYyBwaHlzaWNhbCB2YWx1ZXMgaW5zdGVhZCBvZiBzaW1wbGUgYmluYXJ5IG91dCBzY2FsZSBudW1iZXIuPC9zcGFuPjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDEiPlJlY29nbml0aW9uPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMjAiPk1lcnJpYW0gV2Vic3Rlcjwvc3Bhbj48c3BhbiBjbGFzcz0iVDE2Ij4gwqArIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDIwIj5SYW5kb20gSG91c2UgRGljdGlvbmFyeTwvc3Bhbj48c3BhbiBjbGFzcz0iVDE4Ij4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTciPu+DqDwvc3Bhbj48c3BhbiBjbGFzcz0iVDE2Ij4gYW4gYWN0IG9mIHJlY29nbml6aW5nIG9yIHRoZSBzdGF0ZSBvZiBiZWluZyByZWNvZ25pemVkICwgdGhlIGlkZW50aWZpY2F0aW9uIG9mIHNvbWV0aGluZyBhcyBoYXZpbmcgYmVlbiBwcmV2aW91c2x5IHNlZW4sIGhlYXJkLCBrbm93biwgZXRjLiwgdGhlcGVyY2VwdGlvbsKgb2Ygc29tZXRoaW5nIGFzIGV4aXN0aW5nIG9yIHRydWU7IHJlYWxpemF0aW9uIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDE5Ij7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQxNiI+IFJlY29nbml6aW5nIHRvIGlkZW50aWZ5IGFzIHNvbWV0aGluZyBvciBzb21lb25lIHByZXZpb3VzbHkgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTYiPnNlZW4sIGtub3duLCBldGMsIHRvIGlkZW50aWZ5IGZyb20ga25vd2xlZGdlIG9mIGFwcGVhcmFuY2Ugb3IgY2hhcmFjdGVyaXN0aWNzLCB0byBwZXJjZWl2ZSBhcyBleGlzdGluZyBvciB0cnVlOyByZWFsaXplOiB0byBiZSB0aGUgZmlyc3QgdG8gcmVjb2duaXplIGEgZmFjdC4gPC9zcGFuPjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDAiPlJlZ3VsYXRvciBTeXN0ZW08L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAxMyI+PHNwYW4gY2xhc3M9IlQyOSI+QSBSPC9zcGFuPjxzcGFuIGNsYXNzPSJUMzAiPmVndWxhdG9yPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMCI+U3lzdGVtPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPiBvciA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMCI+UmVndWxhdG9yPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPiBpcyBhIGRldmljZSwgaW5jbHVkaW5nIGhhcmR3YXJlIGFuZCBzb2Z0d2FyZSwgd2hpY2ggaGFzIHRoZSBmdW5jdGlvbiBvZiBtYWludGFpbmluZyBhbmQgbW9uaXRvcmluZyBhIGRlc2lnbmF0ZWQgY2hhcmFjdGVyaXN0aWMgb2YgYSBzeXN0ZW0gKDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMwIj5BY3R1YXRvcjwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij4sIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMwIj5Nb3RvcmlzYXRpb24gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPm9yIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMwIj5TZW5zb3IgU3lzdGVtPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPikuIEl0IGNhbiBiZSB1c2VkIGdlbmVyYWxseSB0byBjb25ub3RlIGFueSBzZXQgb2YgdmFyaW91cyBjb250cm9scyBvciBkZXZpY2VzIGZvciByZWd1bGF0aW5nIG9yIGNvbnRyb2xsaW5nIGl0ZW1zIG9yIG9iamVjdHMuPC9zcGFuPjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDAiPlJvYm90PC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPkFuIGVsZWN0cm9tZWNoYW5pY2FsIHN5c3RlbSB0aGF0IGNhbiByZWFjdCB0byBzZW5zb3J5IGlucHV0IGFuZCBjYXJyeSBvdXQgcHJlZGV0ZXJtaW5lZCBtaXNzaW9ucy4gQSByb2JvdCBpcyB0eXBpY2FsbHkgZXF1aXBwZWQgd2l0aCBvbmUgb3IgbW9yZSB0b29scyBvciBjZXJ0YWluIGNhcGFiaWxpdGllcy4gKFNlZSA8c3BhbiBjbGFzcz0iVDIyIj5Vbm1hbm5lZCBTeXN0ZW08L3NwYW4+KTwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQMzkiPlJvYm90aWMgTWlkZGxld2FyZTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI4Ij5Tb2Z0d2FyZSBmcmFtZXdvcmsgd2hpY2ggaG9zdHMgY29tcGxldGVseSBvciBwYXJ0bHkgdGhlIHNvZnR3YXJlIHN5c3RlbSBvZiBhIFJvYm90LjwvcD48cCBjbGFzcz0iUDM2Ij5JdCBpcyBhbiA8c3BhbiBjbGFzcz0iVDIzIj5hcHBsaWNhdGlvbjwvc3Bhbj4gdGhhdCBpcyBleGVjdXRlZCBlaXRoZXIgb24gYW4gYWN0dWFsIHJvYm90IHN5c3RlbSBvciBpbiBhIGNvbXB1dGVyIGFuZCB0aGF0IGFsbG93cyB0aGUgZXhlY3V0aW9uIG9mIGNvbnRyb2wgcm9ib3QgYXBwbGljYXRpb25zLjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQMzkiPlJvYm90aWMgc3lzdGVtIG9mIHN5c3RlbXM8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAxNCI+PHNwYW4gY2xhc3M9IlQyMSI+U3lzdGVtIG9mIHN5c3RlbXM8L3NwYW4+IGlzIGEgY29sbGVjdGlvbiBvZiB0YXNrLW9yaWVudGVkIG9yIGRlZGljYXRlZCBzeXN0ZW1zIHRoYXQgcG9vbCB0aGVpciByZXNvdXJjZXMgYW5kIGNhcGFiaWxpdGllcyB0b2dldGhlciB0byBvYnRhaW4gYSBuZXcsIG1vcmUgY29tcGxleCwgJ21ldGEtc3lzdGVtJyB3aGljaCBvZmZlcnMgbW9yZSBmdW5jdGlvbmFsaXR5IGFuZCBwZXJmb3JtYW5jZSB0aGFuIHNpbXBseSB0aGUgc3VtIG9mIHRoZSBjb25zdGl0dWVudCBzeXN0ZW1zLiBDdXJyZW50bHksIHN5c3RlbXMgb2Ygc3lzdGVtcyBpcyBhIGNyaXRpY2FsIHJlc2VhcmNoIGRpc2NpcGxpbmUgZm9yIHdoaWNoIGZyYW1lcyBvZiByZWZlcmVuY2UsIHRob3VnaHQgcHJvY2Vzc2VzLCBxdWFudGl0YXRpdmUgYW5hbHlzaXMsIHRvb2xzLCBhbmQgZGVzaWduIG1ldGhvZHMgYXJlIGluY29tcGxldGUuIFRoZSBtZXRob2RvbG9neSBmb3IgZGVmaW5pbmcsIGFic3RyYWN0aW5nLCBtb2RlbGxpbmcsIGFuZCBhbmFseXNpbmcgc3lzdGVtIG9mIHN5c3RlbXMgcHJvYmxlbXMgaXMgdHlwaWNhbGx5IHJlZmVycmVkIHRvIGFzIDxhIGhyZWY9Imh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvU3lzdGVtX29mX1N5c3RlbXNfRW5naW5lZXJpbmciPnN5c3RlbSBvZiBzeXN0ZW1zIGVuZ2luZWVyaW5nPC9hPi4gPC9wPjxwIGNsYXNzPSJQMTQiPkEg4oCcPHNwYW4gY2xhc3M9IlQyMyI+cm9ib3RpYyBzeXN0ZW0gb2Ygc3lzdGVtc+KAnSA8L3NwYW4+aXMgYSBzcGVjaWFsaXNlZCBzeXN0ZW0gb2Ygc3lzdGVtcyB3aGVyZSB0aGVyZSBpcyBhdCBsZWFzdCBvbmUg4oCcPHNwYW4gY2xhc3M9IlQyMyI+cm9ib3TigJ08L3NwYW4+LCBvbmUg4oCcPHNwYW4gY2xhc3M9IlQyMyI+Y29udHJvbCBzdGF0aW9uPC9zcGFuPuKAnSBhbmQgb25lIOKAnDxzcGFuIGNsYXNzPSJUMjMiPmh1bWFuIGFnZW504oCdPC9zcGFuPi4gwqA8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDI5Ij5PbnRvbG9neTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI4Ij48c3BhbiBjbGFzcz0iVDIzIj5EYXRhPC9zcGFuPiBjb25zaXN0ZW50IHdpdGggdGhlIFczQyBzdGFuZGFyZCBhbmQgdXN1YWxseSB1c2VkIHRvIGRlc2NyaWJlIGtub3dsZWRnZS4gSXQgY2FuIGJlIHVzZWQgaW4gdGhlUCBST1RFVVMgY29udGV4dCBhcyBhIHdheSB0byBkZXNjcmliZSBmb3JtYWxseSBrbm93bGVkZ2UgZXZlbiBpZiBub3QgdXNpbmcgVzNDIHN0YW5kYXJkPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MSI+Um9ib3QgUGxhdGZvcm08L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+TW9iaWxlIHBhcnQgb2YgYSA8c3BhbiBjbGFzcz0iVDIyIj5Sb2JvdGljIHN5c3RlbTwvc3Bhbj4uPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MCI+Um9ib3RpYyBzeXN0ZW08L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+U3lzdGVtIGluY2x1ZGluZyBvbmUgb3Igc2V2ZXJhbCA8c3BhbiBjbGFzcz0iVDIyIj5Sb2JvdHM8L3NwYW4+LjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQMzkiPlNjZW5hcmlvPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMzciPkNhZHJlIG9ww6lyYXRpb25uZWwgZGFucyBsZXF1ZWwgZXN0IGTDqWZpbmkgdW4gcHJvYmzDqG1lPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MSI+U2Vuc29yPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPjxzcGFuIGNsYXNzPSJUMyI+SlBSICZhbXA7IEFMRlVTIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDEzIj7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gRXF1aXBtZW50IHRoYXQgZGV0ZWN0cywgbWVhc3VyZXMsIGFuZC9vciByZWNvcmRzIHBoeXNpY2FsIHBoZW5vbWVuYSwgYW5kIGluZGljYXRlcyBvYmplY3RzIGFuZCBhY3Rpdml0aWVzIGJ5IG1lYW5zIG9mIGVuZXJneSBvciBwYXJ0aWNsZXMgZW1pdHRlZCwgcmVmbGVjdGVkLCBvciBtb2RpZmllZCBieSB0aGUgb2JqZWN0cyBhbmQgYWN0aXZpdGllcy48L3NwYW4+PC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlAyOSI+U2VxdWVuY2VyPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjgiPkl0IGlzIGFuIOKAnDxzcGFuIGNsYXNzPSJUMjMiPmV2b2x1dGlvbiBtb2RlbDwvc3Bhbj7igJ0gdGhhdCBhbGxvd3MgdG8gc29ydCDCoHRhc2tzIHRvIGJlIGV4ZWN1dGVkIGluIG9yZGVyIHRvIGtub3cgd2hlbiB0aGV5IHdpbGwgYmUgZXhlY3V0ZWQuPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlAyOSI+U2ltdWxhdGlvbjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI4Ij5SZXN1bHQgb2YgdGhlIOKAnDxzcGFuIGNsYXNzPSJUMjMiPnNpbXVsYXRvcjwvc3Bhbj7igJ0gZXhlY3V0aW9uIGdvdCB0aHJvdWdoIHRoZSDigJxwcm9iZXPigJ0gcHV0IGludG8gdGhlIOKAnDxzcGFuIGNsYXNzPSJUMjMiPnNpbXVsYXRvcjwvc3Bhbj7igJ0gZWl0aGVyIHN0YXRpY2FsbHkgb3IgZHluYW1pY2FsbHkuPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlAyOSI+U2ltdWxhdG9yPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjgiPkl0IGlzIGFuIDxzcGFuIGNsYXNzPSJUMjMiPmFwcGxpY2F0aW9uPC9zcGFuPiB0aGF0IGluIFBST1RFVVMgY29udGV4dCBtdXN0IGJlIGdlbmVyYXRlZCBieSB0aGUgcGxhdGZvcm0gYW5kIHRoYXQgYWZ0ZXIgYSA8c3BhbiBjbGFzcz0iVDIzIj5jb25maWd1cmF0aW9uPC9zcGFuPiBwaGFzZSBpcyBleGVjdXRlZDwvcD48cCBjbGFzcz0iUDM4Ij5kYW5zIGxlIGNhZHJlIGQndW4gwqs8c3BhbiBjbGFzcz0iVDIzIj7CoHByb2Jsw6htZcKgPC9zcGFuPsK7LCBjJ2VzdCBsZSBkw6l2ZWxvcHBlbWVudCBkJ3VuIGFsZ29yaXRobWUgcG91dmFudCBsdWkgbcOqbWUgY29tcG9ydGVyIHVuZSBhcmNoaXRlY3R1cmUgZXQgcGVybWV0dGFudCBsb3JzIGRlIGwnZXjDqWN1dGlvbiBkdSDCqzxzcGFuIGNsYXNzPSJUMjMiPsKgc2ltdWxhdGV1csKgPC9zcGFuPsK7IGQnb2J0ZW5pciBkZXMgdmFsZXVycyBwb3VyIGxlcyDCqzxzcGFuIGNsYXNzPSJUMjMiPsKgbcOpdHJpcXVlc8KgPC9zcGFuPsK7IGTDqWZpbmlzIGxvcnMgZGUgbGEgY29uc3RpdHV0aW9uIGR1IMKrPHNwYW4gY2xhc3M9IlQyMyI+wqBwcm9ibMOobWXCoDwvc3Bhbj7Cuy4gQW1lbmVyIHVuZSDCqzxzcGFuIGNsYXNzPSJUMjMiPsKgc29sdXRpb27CoDwvc3Bhbj7CuyBjb25zaXN0ZSBkb25jIMOgIGNvbmZyb250ZXIgc29uIGFsZ29yaXRobWUgw6AgbGEgwqs8c3BhbiBjbGFzcz0iVDIzIj7CoG3DqXRyaXF1ZcKgPC9zcGFuPsK7IMOgIHRyYXZlcnMgbGUgwqs8c3BhbiBjbGFzcz0iVDIzIj7CoHNpbXVsYXRldXLCoDwvc3Bhbj7CuyBwYXIgbGVzIMKrPHNwYW4gY2xhc3M9IlQyMyI+wqBzaW11bGF0aW9uc8KgPC9zcGFuPsK7IG9idGVudWVzOzwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQMzkiPlNvbHV0aW9uPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjgiPkluIGEg4oCccHJvYmxlbTxzcGFuIGNsYXNzPSJUMjMiPuKAnTwvc3Bhbj4gY29udGV4dCwgaXQgaXMgYW4g4oCcPHNwYW4gY2xhc3M9IlQyMyI+YWxnb3JpdGht4oCdPC9zcGFuPiBpdHNlbGYgcG9zc2libHkgaW50ZWdyYXRpbmcgYW4g4oCcPHNwYW4gY2xhc3M9IlQyMyI+YXJjaGl0ZWN0dXJl4oCdPC9zcGFuPiB0aGF0IGFsbG93cyBkdXJpbmcgdGhlIGV4ZWN1dGlvbiBvZiBhIOKAnDxzcGFuIGNsYXNzPSJUMjMiPnNpbXVsYXRvcuKAnTwvc3Bhbj4gdG8gZXh0cmFjdCB2YWx1ZXMgZnJvbSB0aGUgZGVmaW5lZCDigJw8c3BhbiBjbGFzcz0iVDIzIj5tZXRyaWNz4oCdPC9zcGFuPiB0aGF0IHJlbWFpbnMgaW4gdGhlaXIgdmFsaWRpdHkgZG9tYWluLjwvcD48cCBjbGFzcz0iUDI4Ij5TdWJwYXJ0IG9mIGludGVyZXN0IGluIHRoZSBzb2Z0d2FyZSBzeXN0ZW0gb2YgYSByb2JvdC4gSXRzIGltcGxlbWVudGF0aW9uIGlzIHByb3ZpZGVkIGJ5IGEgQ2hhbGxlbmdlci48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDI5Ij5TeW5jaHJvbmlzZXI8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOCI+SXQgaXMgYW4g4oCcPHNwYW4gY2xhc3M9IlQyMyI+ZXZvbHV0aW9uIG1vZGVsPC9zcGFuPuKAnSB0aGF0IGFsbG93cyB0byBzeW5jaHJvbmlzZSB0YXNrcyBleGVjdXRpb24gd2l0aCByZXNwZWN0IHRvIHRpbWU8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDI5Ij5UYXJnZXQ8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAxNCI+aXQgaXMgdGhlIOKAnDxzcGFuIGNsYXNzPSJUMjMiPnNpbXVsYXRvcjwvc3Bhbj7igJ0gdGhhdCBpcyBnZW5lcmF0ZWQgYnkgdGhlIHBsYXRmb3JtIGFuZCB0aGF0IGluY2x1ZGVzIGV2ZXJ5dGhpbmcgbmVlZGVkIGJ5IHRoZSDigJw8c3BhbiBjbGFzcz0iVDIzIj5jb21wZXRpdG9yPC9zcGFuPuKAnSB0byB2ZXJpZnkgLyBhc3Nlc3MgaXRzIGNvbnRyaWJ1dGlvbjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDMiPlRyYWplY3RvcnkgUGxhbm5pbmcgPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjUiPlNlZSBNb3Rpb24gcGxhbm5pbmc8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQzIj5Vbm1hbm5lZCBzeXN0ZW08L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNSI+PHNwYW4gY2xhc3M9IlQzMyI+SlBSICZhbXA7IEFMRlVTIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDI1Ij7vg6g8L3NwYW4+IEFuIGVsZWN0cm8tbWVjaGFuaWNhbCBzeXN0ZW0sIHdpdGggbm8gaHVtYW4gb3BlcmF0b3IgYWJvYXJkLCB0aGF0IGlzIGFibGUgdG8gZXhlcnQgaXRzIHBvd2VyIHRvIHBlcmZvcm0gZGVzaWduZWQgbWlzc2lvbnMuIEl0IG1heSBiZSBtb2JpbGUgb3Igc3RhdGlvbmFyeSBhbmQgaW5jbHVkZXMgdGhlIGZvbGxvd2luZyBjYXRlZ29yaWVzOiB1bm1hbm5lZCBncm91bmQgdmVoaWNsZXMgKDxzcGFuIGNsYXNzPSJUMjIiPlVHVjwvc3Bhbj4pLCB1bm1hbm5lZCBhZXJpYWwgdmVoaWNsZXMgKDxzcGFuIGNsYXNzPSJUMjIiPlVBVjwvc3Bhbj4pLCB1bm1hbm5lZCB1bmRlcndhdGVyIHZlaGljbGVzICg8c3BhbiBjbGFzcz0iVDIyIj5VVVY8L3NwYW4+KSwgdW5tYW5uZWQgc3VyZmFjZSB2ZWhpY2xlcyAoPHNwYW4gY2xhc3M9IlQyMiI+VVNWPC9zcGFuPiksIHVuYXR0ZW5kZWQgbXVuaXRpb25zIChVPHNwYW4gY2xhc3M9IlQyMiI+TTwvc3Bhbj4pLCBhbmQgdW5hdHRlbmRlZCBncm91bmQgc2Vuc29ycyAoPHNwYW4gY2xhc3M9IlQyMiI+VUdTPC9zcGFuPikuKFNlZSA8c3BhbiBjbGFzcz0iVDIyIj5Sb2JvdDwvc3Bhbj4pPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MyI+V3JhcHBlcjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0I2OSI+PHAgY2xhc3M9IlAyNSI+SXQgaXMgYW4g4oCcPHNwYW4gY2xhc3M9IlQyMyI+YXBwbGljYXRpb27igJ08L3NwYW4+IHRoYXQgYWxsb3dzIGFub3RoZXIg4oCcPHNwYW4gY2xhc3M9IlQyMyI+YXBwbGljYXRpb27igJ08L3NwYW4+IHRvIHVzZSDCoOKAnDxzcGFuIGNsYXNzPSJUMjMiPkE8L3NwYW4+PHNwYW4gY2xhc3M9IlQxNSI+bGdvcml0aG1pYyBtb2R1bGVzPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTQiPuKAnTwvc3Bhbj48L3A+PC90ZD48L3RyPjwvdGFibGU+PHAgY2xhc3M9IlA0NSI+wqA8L3A+PC9ib2R5PjwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuaGVscC9odG1sL1IwLjIuMy1EZWZpbml0aW9ucy5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmhlbHAvaHRtbC9SMC4yLjMtRGVmaW5pdGlvbnMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iZGMyZTJmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmhlbHAvaHRtbC9SMC4yLjMtRGVmaW5pdGlvbnMuaHRtbApAQCAtMCwwICsxLDc1MSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzwhRE9DVFlQRSBodG1sCisgIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4xIHBsdXMgTWF0aE1MIDIuMC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9NYXRoTUwyL2R0ZC94aHRtbC1tYXRoMTEtZi5kdGQiPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPjwhLS1UaGlzIGZpbGUgd2FzIGNvbnZlcnRlZCB0byB4aHRtbCBieSBPcGVuT2ZmaWNlLm9yZyAtIHNlZSBodHRwOi8veG1sLm9wZW5vZmZpY2Uub3JnL29kZjJ4aHRtbCBmb3IgbW9yZSBpbmZvLi0tPjxoZWFkIHByb2ZpbGU9Imh0dHA6Ly9kdWJsaW5jb3JlLm9yZy9kb2N1bWVudHMvZGNtaS10ZXJtcy8iPjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0iYXBwbGljYXRpb24veGh0bWwreG1sOyBjaGFyc2V0PXV0Zi04Ii8+PHRpdGxlIHhtbDpsYW5nPSJlbi1VUyI+RGVmaW5pdGlvbnM8L3RpdGxlPjxtZXRhIG5hbWU9IkRDVEVSTVMudGl0bGUiIGNvbnRlbnQ9IkRlZmluaXRpb25zIiB4bWw6bGFuZz0iZW4tVVMiLz48bWV0YSBuYW1lPSJEQ1RFUk1TLmxhbmd1YWdlIiBjb250ZW50PSJlbi1VUyIgc2NoZW1lPSJEQ1RFUk1TLlJGQzQ2NDYiLz48bWV0YSBuYW1lPSJEQ1RFUk1TLnNvdXJjZSIgY29udGVudD0iaHR0cDovL3htbC5vcGVub2ZmaWNlLm9yZy9vZGYyeGh0bWwiLz48bWV0YSBuYW1lPSJEQ1RFUk1TLmNyZWF0b3IiIGNvbnRlbnQ9ImJydW5vIHBhdGluIi8+PG1ldGEgbmFtZT0iRENURVJNUy5pc3N1ZWQiIGNvbnRlbnQ9IjIwMTEtMDQtMDRUMTg6MDY6MDAuMTIiIHNjaGVtZT0iRENURVJNUy5XM0NEVEYiLz48bWV0YSBuYW1lPSJEQ1RFUk1TLm1vZGlmaWVkIiBjb250ZW50PSIyMDExLTA2LTA5VDE2OjQ0OjI4LjU2IiBzY2hlbWU9IkRDVEVSTVMuVzNDRFRGIi8+PG1ldGEgbmFtZT0iRENURVJNUy5wcm92ZW5hbmNlIiBjb250ZW50PSIiIHhtbDpsYW5nPSJlbi1VUyIvPjxtZXRhIG5hbWU9IkRDVEVSTVMuc3ViamVjdCIgY29udGVudD0iUFJPVEVVUyAtIEZyZW5jaCByb2JvdGljIHBsYXRmb3JtLCIgeG1sOmxhbmc9ImVuLVVTIi8+PG1ldGEgbmFtZT0iRENURVJNUy5kZXNjcmlwdGlvbiIgY29udGVudD0iYnBhdGluIC0gMDQvMDQvMjAxMSYjeEE7LSBjcmVhdGlvbiDDoCBwYXJ0aXIgZGVzIGTDqWZpbml0aW9ucyB0ZWxsZXMgcXVlIHByw6ljaXPDqWVzIGRhbnMgbGVzIGRvY3VtZW50cyBSMi4zLjMgZXQgUjEuMi4xJiN4QTsmI3hBO2JwYXRpbiAtIDI0LzA0LzIwMTEmI3hBOy0gaW50cm9kdWN0aW9uIGRlcyByZXDDqHJlcyBkZSB0ZXh0ZSBhZmluIGRlIHBvdXZvaXIgc2UgZMOpcGxhY2VyIHNpbXBsZW1lbnQgZGFucyBsZSB0YWJsZWF1JiN4QTsmI3hBO2JwYXRpbiwgc2RlbHRvdXIgLSAyMC8wNS8yMDExJiN4QTticGF0aW4sIHNkZWx0b3VyIC0gMjMvMDUvMjAxMSYjeEE7LSBjb21wbMOpbWVudHMgYXV4IGTDqWZpbml0aW9ucyYjeEE7LSBham91dCBkZXMgYWNyb255bWVzJiN4QTstIGNvaMOpcmVuY2UgYXZlYyBsJ29udG9sb2dpZSYjeEE7JiN4QTticGF0aW4gLSAzMC8wNS8yMDExJiN4QTstIG1pc2UgZW4gY29ow6lyZW5jZSBhdmVjIGxlIGRvY3VtZW50IFIyLjMuMyYjeEE7LSBpbnRyb2R1Y3Rpb24gZGUgJiMzNDtyb2JvdGljIHN5c3RlbSBvZiBzeXRlbXMmIzM0OyIgeG1sOmxhbmc9ImVuLVVTIi8+PGxpbmsgcmVsPSJzY2hlbWEuREMiIGhyZWY9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIiBocmVmbGFuZz0iZW4iLz48bGluayByZWw9InNjaGVtYS5EQ1RFUk1TIiBocmVmPSJodHRwOi8vcHVybC5vcmcvZGMvdGVybXMvIiBocmVmbGFuZz0iZW4iLz48bGluayByZWw9InNjaGVtYS5EQ1RZUEUiIGhyZWY9Imh0dHA6Ly9wdXJsLm9yZy9kYy9kY21pdHlwZS8iIGhyZWZsYW5nPSJlbiIvPjxsaW5rIHJlbD0ic2NoZW1hLkRDQU0iIGhyZWY9Imh0dHA6Ly9wdXJsLm9yZy9kYy9kY2FtLyIgaHJlZmxhbmc9ImVuIi8+PGJhc2UgaHJlZj0iLiIvPjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CisJQHBhZ2UgeyAgfQorCXRhYmxlIHsgYm9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlOyBib3JkZXItc3BhY2luZzowOyBlbXB0eS1jZWxsczpzaG93IH0KKwl0ZCwgdGggeyB2ZXJ0aWNhbC1hbGlnbjp0b3A7IGZvbnQtc2l6ZToxMnB0O30KKwloMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHsgY2xlYXI6Ym90aCB9CisJb2wsIHVsIHsgbWFyZ2luOjA7IHBhZGRpbmc6MDt9CisJbGkgeyBsaXN0LXN0eWxlOiBub25lOyBtYXJnaW46MDsgcGFkZGluZzowO30KKwk8IS0tICJsaSBzcGFuLm9kZkxpRW5kIiAtIElFIDcgaXNzdWUtLT4KKwlsaSBzcGFuLiB7IGNsZWFyOiBib3RoOyBsaW5lLWhlaWdodDowOyB3aWR0aDowOyBoZWlnaHQ6MDsgbWFyZ2luOjA7IHBhZGRpbmc6MDsgfQorCXNwYW4uZm9vdG5vZGVOdW1iZXIgeyBwYWRkaW5nLXJpZ2h0OjFlbTsgfQorCXNwYW4uYW5ub3RhdGlvbl9zdHlsZV9ieV9maWx0ZXIgeyBmb250LXNpemU6OTUlOyBmb250LWZhbWlseTpBcmlhbDsgYmFja2dyb3VuZC1jb2xvcjojZmZmMDAwOyAgbWFyZ2luOjA7IGJvcmRlcjowOyBwYWRkaW5nOjA7ICB9CisJKiB7IG1hcmdpbjowO30KKwkuZnIzIHsgZm9udC1zaXplOjEycHQ7IHRleHQtYWxpZ246Y2VudGVyOyB2ZXJ0aWNhbC1hbGlnbjp0b3A7IHdyaXRpbmctbW9kZTpsci10YjsgfQorCS5mcjQgeyBmb250LXNpemU6MTJwdDsgdGV4dC1hbGlnbjpjZW50ZXI7IHZlcnRpY2FsLWFsaWduOnRvcDsgd3JpdGluZy1tb2RlOmxyLXRiOyB9CisJLkNhcHRpb24geyBmb250LXNpemU6MTBwdDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpqdXN0aWZ5ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpQYWxhdGlubyBMaW5vdHlwZTsgd3JpdGluZy1tb2RlOmxyLXRiOyBmb250LXdlaWdodDpib2xkOyB9CisJLkZvb3Rub3RlIHsgZm9udC1zaXplOjlwdDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpqdXN0aWZ5ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpQYWxhdGlubyBMaW5vdHlwZTsgd3JpdGluZy1tb2RlOmxyLXRiOyB9CisJLkhlYWRpbmdfMjBfMSB7IGZvbnQtc2l6ZToxNHB0OyBtYXJnaW4tYm90dG9tOjAuMjEyY207IG1hcmdpbi10b3A6MC40MjNjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpWZXJkYW5hOyB3cml0aW5nLW1vZGU6bHItdGI7IGNvbG9yOiM4MDAwODA7IGZvbnQtd2VpZ2h0OmJvbGQ7IH0KKwkuUDEgeyBmb250LXNpemU6MTFwdDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpjZW50ZXIgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlBhbGF0aW5vIExpbm90eXBlOyB3cml0aW5nLW1vZGU6bHItdGI7IH0KKwkuUDEzIHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpqdXN0aWZ5ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgfQorCS5QMTQgeyBmb250LXNpemU6OHB0OyBtYXJnaW4tYm90dG9tOjBjbTsgbWFyZ2luLXRvcDowLjEwMWNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyBjb2xvcjojMDAwMDAwOyBmb250LXN0eWxlOm5vcm1hbDsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0Om5vcm1hbDsgfQorCS5QMTUgeyBmb250LXNpemU6MTFwdDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpjZW50ZXIgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlBhbGF0aW5vIExpbm90eXBlOyB3cml0aW5nLW1vZGU6bHItdGI7IH0KKwkuUDIwIHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgY29sb3I6IzAwMDAwMDsgfQorCS5QMjEgeyBmb250LXNpemU6OHB0OyBtYXJnaW4tYm90dG9tOjBjbTsgbWFyZ2luLXRvcDowLjEwMWNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyBjb2xvcjojMDAwMDAwOyB9CisJLlAyMiB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi1ib3R0b206MGNtOyBtYXJnaW4tdG9wOjAuMTAxY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGltZXMgTmV3IFJvbWFuOyB3cml0aW5nLW1vZGU6bHItdGI7IH0KKwkuUDIzX2JvcmRlclN0YXJ0IHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLXRvcDowLjEwMWNtOyB0ZXh0LWFsaWduOmp1c3RpZnkgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IHBhZGRpbmctYm90dG9tOjBjbTsgIGJvcmRlci1ib3R0b20tc3R5bGU6bm9uZTsgfQorCS5QMjMgeyBmb250LXNpemU6OHB0OyB0ZXh0LWFsaWduOmp1c3RpZnkgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IHBhZGRpbmctYm90dG9tOjBjbTsgcGFkZGluZy10b3A6MC4xMDFjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTsgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyB9CisJLlAyM19ib3JkZXJFbmQgeyBmb250LXNpemU6OHB0OyBtYXJnaW4tYm90dG9tOjBjbTsgdGV4dC1hbGlnbjpqdXN0aWZ5ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBwYWRkaW5nLXRvcDowLjEwMWNtOyAgYm9yZGVyLXRvcC1zdHlsZTpub25lO30KKwkuUDI0IHsgZm9udC1zaXplOjExcHQ7IG1hcmdpbi1ib3R0b206MC4zY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpqdXN0aWZ5ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpQYWxhdGlubyBMaW5vdHlwZTsgd3JpdGluZy1tb2RlOmxyLXRiOyB9CisJLlAyNV9ib3JkZXJTdGFydCB7IGZvbnQtc2l6ZToxMXB0OyBtYXJnaW4tdG9wOjAuMTAxY207IHRleHQtYWxpZ246anVzdGlmeSAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6UGFsYXRpbm8gTGlub3R5cGU7IHdyaXRpbmctbW9kZTpsci10YjsgcGFkZGluZzowLjA0OWNtOyBib3JkZXItd2lkdGg6MC4wMTMzY207IGJvcmRlci1zdHlsZTpzb2xpZDsgYm9yZGVyLWNvbG9yOiMwMDAwMDA7IGZvbnQtc3R5bGU6aXRhbGljOyBwYWRkaW5nLWJvdHRvbTowLjNjbTsgIGJvcmRlci1ib3R0b20tc3R5bGU6bm9uZTsgfQorCS5QMjUgeyBmb250LXNpemU6MTFwdDsgdGV4dC1hbGlnbjpqdXN0aWZ5ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpQYWxhdGlubyBMaW5vdHlwZTsgd3JpdGluZy1tb2RlOmxyLXRiOyBwYWRkaW5nOjAuMDQ5Y207IGJvcmRlci13aWR0aDowLjAxMzNjbTsgYm9yZGVyLXN0eWxlOnNvbGlkOyBib3JkZXItY29sb3I6IzAwMDAwMDsgZm9udC1zdHlsZTppdGFsaWM7IHBhZGRpbmctYm90dG9tOjAuM2NtOyBwYWRkaW5nLXRvcDowLjEwMWNtOyAgYm9yZGVyLXRvcC1zdHlsZTpub25lOyBib3JkZXItYm90dG9tLXN0eWxlOm5vbmU7IH0KKwkuUDI1X2JvcmRlckVuZCB7IGZvbnQtc2l6ZToxMXB0OyBtYXJnaW4tYm90dG9tOjAuM2NtOyB0ZXh0LWFsaWduOmp1c3RpZnkgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlBhbGF0aW5vIExpbm90eXBlOyB3cml0aW5nLW1vZGU6bHItdGI7IHBhZGRpbmc6MC4wNDljbTsgYm9yZGVyLXdpZHRoOjAuMDEzM2NtOyBib3JkZXItc3R5bGU6c29saWQ7IGJvcmRlci1jb2xvcjojMDAwMDAwOyBmb250LXN0eWxlOml0YWxpYzsgcGFkZGluZy10b3A6MC4xMDFjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTt9CisJLlAyNiB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi1ib3R0b206MGNtOyBtYXJnaW4tdG9wOjAuMTAxY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGltZXMgTmV3IFJvbWFuOyB3cml0aW5nLW1vZGU6bHItdGI7IH0KKwkuUDI3IHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpjZW50ZXIgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyB9CisJLlAyOCB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi1ib3R0b206MGNtOyBtYXJnaW4tdG9wOjAuMTAxY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGltZXMgTmV3IFJvbWFuOyB3cml0aW5nLW1vZGU6bHItdGI7IGZvbnQtd2VpZ2h0OmJvbGQ7IH0KKwkuUDI5IHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgY29sb3I6IzAwMDAwMDsgZm9udC1zdHlsZTpub3JtYWw7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpub3JtYWw7IH0KKwkuUDMwIHsgZm9udC1zaXplOjlwdDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaG9ybmRhbGU7IHdyaXRpbmctbW9kZTpsci10YjsgY29sb3I6I2ZmZmZmZjsgZm9udC1zdHlsZTppdGFsaWM7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpib2xkOyB9CisJLlAzMSB7IGZvbnQtc2l6ZTo5cHQ7IGZvbnQtd2VpZ2h0OmJvbGQ7IG1hcmdpbi1ib3R0b206MGNtOyBtYXJnaW4tdG9wOjAuMTAxY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGhvcm5kYWxlOyB3cml0aW5nLW1vZGU6bHItdGI7IGNvbG9yOiNmZmZmZmY7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgfQorCS5QMzIgeyBmb250LXNpemU6OHB0OyBmb250LXdlaWdodDpib2xkOyBtYXJnaW4tYm90dG9tOjBjbTsgbWFyZ2luLXRvcDowLjEwMWNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyBjb2xvcjojZmZmZmZmOyBmb250LXN0eWxlOml0YWxpYzsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IH0KKwkuUDMzIHsgZm9udC1zaXplOjEwcHQ7IGZvbnQtd2VpZ2h0Om5vcm1hbDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpjZW50ZXIgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlBhbGF0aW5vIExpbm90eXBlOyB3cml0aW5nLW1vZGU6bHItdGI7IH0KKwkuUDM0IHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgZm9udC1zdHlsZTpub3JtYWw7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpub3JtYWw7IH0KKwkuUDM1IHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgZm9udC1zdHlsZTppdGFsaWM7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpib2xkOyB9CisJLlAzNiB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi1ib3R0b206MGNtOyBtYXJnaW4tdG9wOjAuMTAxY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGltZXMgTmV3IFJvbWFuOyB3cml0aW5nLW1vZGU6bHItdGI7IH0KKwkuUDM3X2JvcmRlclN0YXJ0IHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLXRvcDowLjEwMWNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiMwMDAwMDA7IGZvbnQtc3R5bGU6bm9ybWFsOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6bm9ybWFsOyBwYWRkaW5nLWJvdHRvbTowY207ICBib3JkZXItYm90dG9tLXN0eWxlOm5vbmU7IH0KKwkuUDM3IHsgZm9udC1zaXplOjhwdDsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojMDAwMDAwOyBmb250LXN0eWxlOm5vcm1hbDsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0Om5vcm1hbDsgcGFkZGluZy1ib3R0b206MGNtOyBwYWRkaW5nLXRvcDowLjEwMWNtOyAgYm9yZGVyLXRvcC1zdHlsZTpub25lOyBib3JkZXItYm90dG9tLXN0eWxlOm5vbmU7IH0KKwkuUDM3X2JvcmRlckVuZCB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi1ib3R0b206MGNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiMwMDAwMDA7IGZvbnQtc3R5bGU6bm9ybWFsOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6bm9ybWFsOyBwYWRkaW5nLXRvcDowLjEwMWNtOyAgYm9yZGVyLXRvcC1zdHlsZTpub25lO30KKwkuUDM4X2JvcmRlclN0YXJ0IHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLXRvcDowLjEwMWNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiMwMDAwMDA7IGZvbnQtc3R5bGU6bm9ybWFsOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6bm9ybWFsOyBwYWRkaW5nLWJvdHRvbTowY207ICBib3JkZXItYm90dG9tLXN0eWxlOm5vbmU7IH0KKwkuUDM4IHsgZm9udC1zaXplOjhwdDsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojMDAwMDAwOyBmb250LXN0eWxlOm5vcm1hbDsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0Om5vcm1hbDsgcGFkZGluZy1ib3R0b206MGNtOyBwYWRkaW5nLXRvcDowLjEwMWNtOyAgYm9yZGVyLXRvcC1zdHlsZTpub25lOyBib3JkZXItYm90dG9tLXN0eWxlOm5vbmU7IH0KKwkuUDM4X2JvcmRlckVuZCB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi1ib3R0b206MGNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiMwMDAwMDA7IGZvbnQtc3R5bGU6bm9ybWFsOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6bm9ybWFsOyBwYWRkaW5nLXRvcDowLjEwMWNtOyAgYm9yZGVyLXRvcC1zdHlsZTpub25lO30KKwkuUDM5X2JvcmRlclN0YXJ0IHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLXRvcDowLjEwMWNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyBwYWRkaW5nOjBjbTsgYm9yZGVyLWxlZnQtc3R5bGU6bm9uZTsgYm9yZGVyLXJpZ2h0LXdpZHRoOjAuMDg4Y207IGJvcmRlci1yaWdodC1zdHlsZTpzb2xpZDsgYm9yZGVyLXJpZ2h0LWNvbG9yOiNmZjAwMDA7IGJvcmRlci10b3Atc3R5bGU6bm9uZTsgY29sb3I6IzAwMDAwMDsgZm9udC1zdHlsZTpub3JtYWw7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpub3JtYWw7IHBhZGRpbmctYm90dG9tOjBjbTsgIGJvcmRlci1ib3R0b20tc3R5bGU6bm9uZTsgfQorCS5QMzkgeyBmb250LXNpemU6OHB0OyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyBwYWRkaW5nOjBjbTsgYm9yZGVyLWxlZnQtc3R5bGU6bm9uZTsgYm9yZGVyLXJpZ2h0LXdpZHRoOjAuMDg4Y207IGJvcmRlci1yaWdodC1zdHlsZTpzb2xpZDsgYm9yZGVyLXJpZ2h0LWNvbG9yOiNmZjAwMDA7IGNvbG9yOiMwMDAwMDA7IGZvbnQtc3R5bGU6bm9ybWFsOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6bm9ybWFsOyBwYWRkaW5nLWJvdHRvbTowY207IHBhZGRpbmctdG9wOjAuMTAxY207ICBib3JkZXItdG9wLXN0eWxlOm5vbmU7IGJvcmRlci1ib3R0b20tc3R5bGU6bm9uZTsgfQorCS5QMzlfYm9yZGVyRW5kIHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLWJvdHRvbTowY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGltZXMgTmV3IFJvbWFuOyB3cml0aW5nLW1vZGU6bHItdGI7IHBhZGRpbmc6MGNtOyBib3JkZXItbGVmdC1zdHlsZTpub25lOyBib3JkZXItcmlnaHQtd2lkdGg6MC4wODhjbTsgYm9yZGVyLXJpZ2h0LXN0eWxlOnNvbGlkOyBib3JkZXItcmlnaHQtY29sb3I6I2ZmMDAwMDsgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyBjb2xvcjojMDAwMDAwOyBmb250LXN0eWxlOm5vcm1hbDsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0Om5vcm1hbDsgcGFkZGluZy10b3A6MC4xMDFjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTt9CisJLlA0MF9ib3JkZXJTdGFydCB7IGZvbnQtc2l6ZTo5cHQ7IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaG9ybmRhbGU7IHdyaXRpbmctbW9kZTpsci10YjsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojZmZmZmZmOyBmb250LXN0eWxlOml0YWxpYzsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0OmJvbGQ7IHBhZGRpbmctYm90dG9tOjBjbTsgIGJvcmRlci1ib3R0b20tc3R5bGU6bm9uZTsgfQorCS5QNDAgeyBmb250LXNpemU6OXB0OyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRob3JuZGFsZTsgd3JpdGluZy1tb2RlOmxyLXRiOyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiNmZmZmZmY7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgcGFkZGluZy1ib3R0b206MGNtOyBwYWRkaW5nLXRvcDowLjEwMWNtOyAgYm9yZGVyLXRvcC1zdHlsZTpub25lOyBib3JkZXItYm90dG9tLXN0eWxlOm5vbmU7IH0KKwkuUDQwX2JvcmRlckVuZCB7IGZvbnQtc2l6ZTo5cHQ7IG1hcmdpbi1ib3R0b206MGNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRob3JuZGFsZTsgd3JpdGluZy1tb2RlOmxyLXRiOyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiNmZmZmZmY7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgcGFkZGluZy10b3A6MC4xMDFjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTt9CisJLlA0MV9ib3JkZXJTdGFydCB7IGZvbnQtc2l6ZTo5cHQ7IG1hcmdpbi10b3A6MGNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRob3JuZGFsZTsgd3JpdGluZy1tb2RlOmxyLXRiOyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiNmZmZmZmY7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgcGFkZGluZy1ib3R0b206MGNtOyAgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyB9CisJLlA0MSB7IGZvbnQtc2l6ZTo5cHQ7IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGhvcm5kYWxlOyB3cml0aW5nLW1vZGU6bHItdGI7IHBhZGRpbmc6MGNtOyBib3JkZXItc3R5bGU6bm9uZTsgY29sb3I6I2ZmZmZmZjsgZm9udC1zdHlsZTppdGFsaWM7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpib2xkOyBwYWRkaW5nLWJvdHRvbTowY207IHBhZGRpbmctdG9wOjBjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTsgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyB9CisJLlA0MV9ib3JkZXJFbmQgeyBmb250LXNpemU6OXB0OyBtYXJnaW4tYm90dG9tOjBjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaG9ybmRhbGU7IHdyaXRpbmctbW9kZTpsci10YjsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojZmZmZmZmOyBmb250LXN0eWxlOml0YWxpYzsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0OmJvbGQ7IHBhZGRpbmctdG9wOjBjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTt9CisJLlA0Ml9ib3JkZXJTdGFydCB7IGZvbnQtc2l6ZTo5cHQ7IG1hcmdpbi10b3A6MGNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRob3JuZGFsZTsgd3JpdGluZy1tb2RlOmxyLXRiOyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiNmZmZmZmY7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgcGFkZGluZy1ib3R0b206MGNtOyAgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyB9CisJLlA0MiB7IGZvbnQtc2l6ZTo5cHQ7IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGhvcm5kYWxlOyB3cml0aW5nLW1vZGU6bHItdGI7IHBhZGRpbmc6MGNtOyBib3JkZXItc3R5bGU6bm9uZTsgY29sb3I6I2ZmZmZmZjsgZm9udC1zdHlsZTppdGFsaWM7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpib2xkOyBwYWRkaW5nLWJvdHRvbTowY207IHBhZGRpbmctdG9wOjBjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTsgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyB9CisJLlA0Ml9ib3JkZXJFbmQgeyBmb250LXNpemU6OXB0OyBtYXJnaW4tYm90dG9tOjBjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaG9ybmRhbGU7IHdyaXRpbmctbW9kZTpsci10YjsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojZmZmZmZmOyBmb250LXN0eWxlOml0YWxpYzsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0OmJvbGQ7IHBhZGRpbmctdG9wOjBjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTt9CisJLlA0M19ib3JkZXJTdGFydCB7IGZvbnQtc2l6ZTo5cHQ7IG1hcmdpbi10b3A6MGNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRob3JuZGFsZTsgd3JpdGluZy1tb2RlOmxyLXRiOyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiNmZmZmZmY7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgcGFkZGluZy1ib3R0b206MGNtOyAgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyB9CisJLlA0MyB7IGZvbnQtc2l6ZTo5cHQ7IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGhvcm5kYWxlOyB3cml0aW5nLW1vZGU6bHItdGI7IHBhZGRpbmc6MGNtOyBib3JkZXItc3R5bGU6bm9uZTsgY29sb3I6I2ZmZmZmZjsgZm9udC1zdHlsZTppdGFsaWM7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpib2xkOyBwYWRkaW5nLWJvdHRvbTowY207IHBhZGRpbmctdG9wOjBjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTsgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyB9CisJLlA0M19ib3JkZXJFbmQgeyBmb250LXNpemU6OXB0OyBtYXJnaW4tYm90dG9tOjBjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaG9ybmRhbGU7IHdyaXRpbmctbW9kZTpsci10YjsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojZmZmZmZmOyBmb250LXN0eWxlOml0YWxpYzsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0OmJvbGQ7IHBhZGRpbmctdG9wOjBjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTt9CisJLlA0NF9ib3JkZXJTdGFydCB7IGZvbnQtc2l6ZTo5cHQ7IG1hcmdpbi10b3A6MGNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRob3JuZGFsZTsgd3JpdGluZy1tb2RlOmxyLXRiOyBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyBwYWRkaW5nOjBjbTsgYm9yZGVyLXN0eWxlOm5vbmU7IGNvbG9yOiNmZmZmZmY7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgcGFkZGluZy1ib3R0b206MGNtOyAgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyB9CisJLlA0NCB7IGZvbnQtc2l6ZTo5cHQ7IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGhvcm5kYWxlOyB3cml0aW5nLW1vZGU6bHItdGI7IGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7IHBhZGRpbmc6MGNtOyBib3JkZXItc3R5bGU6bm9uZTsgY29sb3I6I2ZmZmZmZjsgZm9udC1zdHlsZTppdGFsaWM7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpib2xkOyBwYWRkaW5nLWJvdHRvbTowY207IHBhZGRpbmctdG9wOjBjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTsgYm9yZGVyLWJvdHRvbS1zdHlsZTpub25lOyB9CisJLlA0NF9ib3JkZXJFbmQgeyBmb250LXNpemU6OXB0OyBtYXJnaW4tYm90dG9tOjBjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaG9ybmRhbGU7IHdyaXRpbmctbW9kZTpsci10YjsgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsgcGFkZGluZzowY207IGJvcmRlci1zdHlsZTpub25lOyBjb2xvcjojZmZmZmZmOyBmb250LXN0eWxlOml0YWxpYzsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0OmJvbGQ7IHBhZGRpbmctdG9wOjBjbTsgIGJvcmRlci10b3Atc3R5bGU6bm9uZTt9CisJLlA0NSB7IGNvbG9yOiM4MDAwODA7IGZvbnQtc2l6ZToxNHB0OyBmb250LXdlaWdodDpib2xkOyBtYXJnaW4tYm90dG9tOjAuMjEyY207IG1hcmdpbi10b3A6MC40MjNjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpWZXJkYW5hOyB3cml0aW5nLW1vZGU6bHItdGI7IH0KKwkuUDQ2IHsgZm9udC1zaXplOjhwdDsgbWFyZ2luLWJvdHRvbTowY207IG1hcmdpbi10b3A6MC4xMDFjbTsgdGV4dC1hbGlnbjpsZWZ0ICEgaW1wb3J0YW50OyBmb250LWZhbWlseTpUaW1lcyBOZXcgUm9tYW47IHdyaXRpbmctbW9kZTpsci10YjsgfQorCS5QNDcgeyBmb250LXNpemU6OHB0OyBtYXJnaW4tYm90dG9tOjBjbTsgbWFyZ2luLXRvcDowLjEwMWNtOyB0ZXh0LWFsaWduOmxlZnQgISBpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OlRpbWVzIE5ldyBSb21hbjsgd3JpdGluZy1tb2RlOmxyLXRiOyB9CisJLlA0OCB7IGZvbnQtc2l6ZTo4cHQ7IG1hcmdpbi1ib3R0b206MGNtOyBtYXJnaW4tdG9wOjAuMTAxY207IHRleHQtYWxpZ246bGVmdCAhIGltcG9ydGFudDsgZm9udC1mYW1pbHk6VGltZXMgTmV3IFJvbWFuOyB3cml0aW5nLW1vZGU6bHItdGI7IH0KKwkuZGVmaW5pdGlvbnMgeyB3aWR0aDoxNi45N2NtOyB3cml0aW5nLW1vZGU6bHItdGI7IH0KKwkuZGVmaW5pdGlvbnNfQTEgeyBiYWNrZ3JvdW5kLWNvbG9yOiM2NjMzMDA7IHBhZGRpbmc6MGNtOyBib3JkZXItd2lkdGg6MC4wMTMzY207IGJvcmRlci1zdHlsZTpzb2xpZDsgYm9yZGVyLWNvbG9yOiM0YzE5MDA7IH0KKwkuZGVmaW5pdGlvbnNfQTIgeyB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7IGJhY2tncm91bmQtY29sb3I6Izk5NjYzMzsgcGFkZGluZzowY207IGJvcmRlci1sZWZ0LXdpZHRoOjAuMDEzM2NtOyBib3JkZXItbGVmdC1zdHlsZTpzb2xpZDsgYm9yZGVyLWxlZnQtY29sb3I6IzRjMTkwMDsgYm9yZGVyLXJpZ2h0LXdpZHRoOjAuMDEzM2NtOyBib3JkZXItcmlnaHQtc3R5bGU6c29saWQ7IGJvcmRlci1yaWdodC1jb2xvcjojNGMxOTAwOyBib3JkZXItdG9wLXN0eWxlOm5vbmU7IGJvcmRlci1ib3R0b20td2lkdGg6MC4wMTMzY207IGJvcmRlci1ib3R0b20tc3R5bGU6c29saWQ7IGJvcmRlci1ib3R0b20tY29sb3I6IzRjMTkwMDsgfQorCS5kZWZpbml0aW9uc19CMSB7IGJhY2tncm91bmQtY29sb3I6IzY2MzMwMDsgcGFkZGluZzowY207IGJvcmRlci1sZWZ0LXN0eWxlOm5vbmU7IGJvcmRlci1yaWdodC13aWR0aDowLjAxMzNjbTsgYm9yZGVyLXJpZ2h0LXN0eWxlOnNvbGlkOyBib3JkZXItcmlnaHQtY29sb3I6IzRjMTkwMDsgYm9yZGVyLXRvcC13aWR0aDowLjAxMzNjbTsgYm9yZGVyLXRvcC1zdHlsZTpzb2xpZDsgYm9yZGVyLXRvcC1jb2xvcjojNGMxOTAwOyBib3JkZXItYm90dG9tLXdpZHRoOjAuMDEzM2NtOyBib3JkZXItYm90dG9tLXN0eWxlOnNvbGlkOyBib3JkZXItYm90dG9tLWNvbG9yOiM0YzE5MDA7IH0KKwkuZGVmaW5pdGlvbnNfQjIgeyB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7IGJhY2tncm91bmQtY29sb3I6I2ZmY2M5OTsgcGFkZGluZzowY207IGJvcmRlci1sZWZ0LXN0eWxlOm5vbmU7IGJvcmRlci1yaWdodC13aWR0aDowLjAxMzNjbTsgYm9yZGVyLXJpZ2h0LXN0eWxlOnNvbGlkOyBib3JkZXItcmlnaHQtY29sb3I6I2ZmNjYzMzsgYm9yZGVyLXRvcC1zdHlsZTpub25lOyBib3JkZXItYm90dG9tLXdpZHRoOjAuMDEzM2NtOyBib3JkZXItYm90dG9tLXN0eWxlOnNvbGlkOyBib3JkZXItYm90dG9tLWNvbG9yOiM0YzE5MDA7IH0KKwkuZGVmaW5pdGlvbnNfQjY5IHsgdmVydGljYWwtYWxpZ246bWlkZGxlOyBiYWNrZ3JvdW5kLWNvbG9yOiNmZmNjOTk7IHBhZGRpbmc6MGNtOyBib3JkZXItbGVmdC1zdHlsZTpub25lOyBib3JkZXItcmlnaHQtd2lkdGg6MC4wMTMzY207IGJvcmRlci1yaWdodC1zdHlsZTpzb2xpZDsgYm9yZGVyLXJpZ2h0LWNvbG9yOiNmZjY2MzM7IGJvcmRlci10b3Atc3R5bGU6bm9uZTsgYm9yZGVyLWJvdHRvbS13aWR0aDowLjAxMzNjbTsgYm9yZGVyLWJvdHRvbS1zdHlsZTpzb2xpZDsgYm9yZGVyLWJvdHRvbS1jb2xvcjojZmY2NjMzOyB9CisJLmRlZmluaXRpb25zX0EgeyB3aWR0aDozLjczMWNtOyB9CisJLmRlZmluaXRpb25zX0IgeyB3aWR0aDoxMy4yNGNtOyB9CisJLkJ1bGxldF8yMF9TeW1ib2xzIHsgZm9udC1mYW1pbHk6T3BlblN5bWJvbDsgfQorCS5Gb290bm90ZV8yMF9TeW1ib2wgeyB2ZXJ0aWNhbC1hbGlnbjpzdXBlcjsgZm9udC1zaXplOjU4JTt9CisJLlQxIHsgZm9udC13ZWlnaHQ6bm9ybWFsOyB9CisJLlQxMCB7IGNvbG9yOiMwMDAwMDA7IGZvbnQtd2VpZ2h0Om5vcm1hbDsgfQorCS5UMTEgeyBjb2xvcjojMDAwMDAwOyB9CisJLlQxMiB7IGNvbG9yOiMwMDAwMDA7IGZvbnQtd2VpZ2h0OmJvbGQ7IH0KKwkuVDEzIHsgY29sb3I6IzAwMDAwMDsgZm9udC13ZWlnaHQ6Ym9sZDsgfQorCS5UMTQgeyBjb2xvcjojMDAwMDAwOyBmb250LWZhbWlseTpUaG9ybmRhbGU7IGZvbnQtc2l6ZTo5cHQ7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgfQorCS5UMTUgeyBjb2xvcjojMDAwMDAwOyBmb250LWZhbWlseTpUaG9ybmRhbGU7IGZvbnQtc2l6ZTo5cHQ7IGZvbnQtc3R5bGU6bm9ybWFsOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgfQorCS5UMTcgeyBmb250LXdlaWdodDpib2xkOyB9CisJLlQxOCB7IGZvbnQtd2VpZ2h0OmJvbGQ7IH0KKwkuVDIgeyBjb2xvcjojMDAwMDAwOyB9CisJLlQyMCB7IHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7IGZvbnQtd2VpZ2h0OmJvbGQ7IH0KKwkuVDIxIHsgZm9udC13ZWlnaHQ6Ym9sZDsgfQorCS5UMjIgeyBmb250LXdlaWdodDpib2xkOyB9CisJLlQyMyB7IGZvbnQtd2VpZ2h0OmJvbGQ7IH0KKwkuVDI0IHsgZm9udC13ZWlnaHQ6Ym9sZDsgfQorCS5UMjUgeyBmb250LXdlaWdodDpib2xkOyB9CisJLlQyNiB7IGZvbnQtc3R5bGU6aXRhbGljOyB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lOyBmb250LXdlaWdodDpib2xkOyB9CisJLlQyNyB7IGZvbnQtc3R5bGU6aXRhbGljOyB9CisJLlQyOCB7IGZvbnQtc3R5bGU6aXRhbGljOyBmb250LXdlaWdodDpub3JtYWw7IH0KKwkuVDI5IHsgZm9udC1zdHlsZTpub3JtYWw7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpub3JtYWw7IH0KKwkuVDMgeyBjb2xvcjojMDAwMDAwOyB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lOyBmb250LXdlaWdodDpib2xkOyB9CisJLlQzMCB7IGZvbnQtc3R5bGU6bm9ybWFsOyB0ZXh0LXNoYWRvdzpub25lOyB0ZXh0LWRlY29yYXRpb246bm9uZSAhIGltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgfQorCS5UMzEgeyBmb250LXN0eWxlOml0YWxpYzsgdGV4dC1zaGFkb3c6bm9uZTsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgISBpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0OmJvbGQ7IH0KKwkuVDMyIHsgZm9udC1zdHlsZTppdGFsaWM7IHRleHQtc2hhZG93Om5vbmU7IHRleHQtZGVjb3JhdGlvbjpub25lICEgaW1wb3J0YW50OyBmb250LXdlaWdodDpub3JtYWw7IH0KKwkuVDMzIHsgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTsgZm9udC13ZWlnaHQ6Ym9sZDsgfQorCS5UNCB7IGNvbG9yOiMwMDAwMDA7IH0KKwkuVDUgeyBjb2xvcjojMDAwMDAwOyB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lOyBmb250LXdlaWdodDpib2xkOyB9CisJLlQ2IHsgY29sb3I6IzAwMDAwMDsgfQorCS5UNyB7IGNvbG9yOiMwMDAwMDA7IGZvbnQtd2VpZ2h0OmJvbGQ7IH0KKwkuVDggeyBjb2xvcjojMDAwMDAwOyBmb250LXdlaWdodDpib2xkOyB9CisJLlQ5IHsgY29sb3I6IzAwMDAwMDsgZm9udC13ZWlnaHQ6bm9ybWFsOyB9CisJPCEtLSBPREYgc3R5bGVzIHdpdGggbm8gcHJvcGVydGllcyByZXByZXNlbnRhYmxlIGFzIENTUyAtLT4KKwkuTnVtYmVyaW5nXzIwX1N5bWJvbHMgLlQxNiAuVDE5IC5UMzQgLlQzNSB7IH0KKwk8L3N0eWxlPjwvaGVhZD48Ym9keSBkaXI9Imx0ciIgc3R5bGU9Im1heC13aWR0aDoyMS4wMDFjbTttYXJnaW4tdG9wOjJjbTsgbWFyZ2luLWJvdHRvbToyY207IG1hcmdpbi1sZWZ0OjJjbTsgbWFyZ2luLXJpZ2h0OjJjbTsgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDsgIj48aDEgY2xhc3M9IlA0NSI+PGEgaWQ9ImFfMV9fRGVmaW5pdGlvbnMxVGhpc19kb2N1bWVudF9pc190b19iZV9pbnNlcnRlZF9hc19pdF9pc19pbl9vdGhlcl9lbmNsb3NpbmdfZG9jdW1lbnRzX19JZl90aGVfdXNlcl9pc193aWxsaW5nX2hlX19fc2hlX2Nhbl9tb2RpZnlfdGhlX3RpdGxlX2xldmVsX2luX29yZGVyX3RvX2ZhY2lsaXRhdGVfdGhpc19pbnRlZ3JhdGlvbiI+PHNwYW4+MS48L3NwYW4+PC9hPkRlZmluaXRpb25zPHNwYW4gY2xhc3M9IkZvb3Rub3RlXzIwX2FuY2hvciIgdGl0bGU9IkZvb3Rub3RlOiBUaGlzIGRvY3VtZW50IGlzIHRvIGJlIGluc2VydGVkIGFzIGl0IGlzIGluIG90aGVyIGVuY2xvc2luZyBkb2N1bWVudHMuIElmIHRoZSB1c2VyIGlzIHdpbGxpbmcgaGUgLyBzaGUgY2FuIG1vZGlmeSB0aGUgdGl0bGUgbGV2ZWwgaW4gb3JkZXIgdG8gZmFjaWxpdGF0ZSB0aGlzIGludGVncmF0aW9uIj48YSBocmVmPSIjZnRuMSIgaWQ9ImJvZHlfZnRuMSI+MTwvYT48L3NwYW4+PC9oMT48cCBjbGFzcz0iUDI0Ij5JdCBpcyBvZiB0aGUgdXRtb3N0IGltcG9ydGFuY2UgaW4gdGhpcyBwcm9qZWN0IHRvIGhhdmUgY2xlYXIsIHNoYXJlZCBhbmQgYWdyZWVkIGRlZmluaXRpb25zIG9mIHRoZSB3b3JkcyB1c2VkIGluIHRoZSBkb2N1bWVudC4gVGhleSBhcmUgdG8gYmUgZXh0cmFjdGVkIHdoZW4gZXhpc3RpbmcgZnJvbSB0aGUgb250b2xvZ3kgYW5kIHVzZWQgwqB0byBjb21wbGV0ZSB0aGUgb250b2xvZ3kgd2hlbiBub3QgcHJlc2VudCBpbiBpdC4gQXQgdGhpcyBzdGVwLCB0aGUgb250b2xvZ3kgZGVmaW5pdGlvbnMgYXJlIGFwcGVhcmluZyBwcmVjZWRlZCBvZiB0aGVpciBjb21wbGV0ZSBuYW1lLiBJdCBpcyBhZGRlZCBjb21wbGVtZW50YXJ5IGRlZmluaXRpb25zIHdoZW4gdGhlcmUgYXJlIG5vIG9udG9sb2dpZXMgb3Igd2hlbiBvdGhlciBkZWZpbml0aW9ucyBjYW4gYmUgb2YgaW50ZXJlc3QgZWl0aGVyIHRvIGNvbXBsZW1lbnQgdGhlIHByZXZpb3VzIG1lYW5pbmcgb3IgdG8gc2hvdyBjb250cmFkaWN0b3J5IG90aGVyIG1lYW5pbmcuIFRoaXMgc2V0IG9mIGRlZmluaXRpb24gd2lsbCBiZSBkaXNjdXNzZWQgYXQgdGhlIEV1cm9wZWFuIGxldmVsLiBJdCBtZWFucyB0aGF0IGluIG9yZGVyIHRvIHNpbXBsaWZ5IFBST1RFVVMgd29yayB3ZSB3aWxsIGtlZXAgb25seSBFbmdsaXNoIGRlZmluaXRpb25zIGFuZCBpZiBuZWVkZWQsIHdlIHdpbGwgdHJhbnNsYXRlIHRoZW0gaW4gRnJlbmNoLjwvcD48cCBjbGFzcz0iUDI1Ij5UaGVzZSBkZWZpbml0aW9ucyB3aWxsIGJlIHRha2VuIGludG8gYWNjb3VudCBpbiB0aGUgbGFzdCB2ZXJzaW9uIG9mIHRoZSBQUk9URVVTIG9udG9sb2d5LjwvcD48dGFibGUgYm9yZGVyPSIwIiBjZWxsc3BhY2luZz0iMCIgY2VsbHBhZGRpbmc9IjAiIGNsYXNzPSJkZWZpbml0aW9ucyI+PGNvbGdyb3VwPjxjb2wgd2lkdGg9IjE2MyIvPjxjb2wgd2lkdGg9IjU3OSIvPjwvY29sZ3JvdXA+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTEiPjxwIGNsYXNzPSJQMzEiPkVuZ2xpc2ggZGVmLjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjEiPjxwIGNsYXNzPSJQMzIiPk1lYW5pbmc8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQxIj5BY3R1YXRvclN5c3RlbTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI4Ij5TeXN0ZW06QWN0dWF0b3JTeXN0ZW0gOjwvcD48cCBjbGFzcz0iUDI2Ij48c3BhbiBjbGFzcz0iVDMwIj5FbGVjdHJvbWVjaGFuaWNhbDwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij4gc3lzdGVtLCA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMCI+aW5jbHVkaW5nPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMCI+bWVjaGFuaWNhbCA8L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+YW5kIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMwIj5zb2Z0d2FyZSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+Y29tcG9uZW50cywgdG8gbW92ZSBhbmQgY29udHJvbCDCoGEgbWVjaGFuaXNtIG9yIGEgc3lzdGVtLiBJdCBpcyA8L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+b3BlcmF0ZWQgYnkgYSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMCI+c291cmNlIG9mIGVuZXJneTwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij4sIHVzdWFsbHkgaW4gdGhlIGZvcm0gb2YgYW4gZWxlY3RyaWMgY3VycmVudCwgaHlkcmF1bGljIGZsdWlkIHByZXNzdXJlIG9yIHBuZXVtYXRpYyBwcmVzc3VyZSwgYW5kIGNvbnZlcnRzIHRoYXQgZW5lcmd5IGludG8gc29tZSBraW5kIG9mIG1vdGlvbi4gSXQgaXMgY29tbWFuZGVkIGFuZCBjb250cm9sbGVkIHRocm91Z2ggYSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMCI+ZHJpdmVyIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij5vciA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMCI+cmVndWxhdG9yIGRldmljZTwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij4gY29tbW9ubHkgaW5jbHVkZWQgaW4gdGhlIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMwIj5BY3R1YXRvciBTeXN0ZW0gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPmRlZmluaXRpb24uPC9zcGFuPjwvcD48cCBjbGFzcz0iUDM0Ij48c3BhbiBjbGFzcz0iVDI2Ij5JTVBPUlRBTlQgV0FSTklOR1M8L3NwYW4+PHNwYW4gY2xhc3M9IlQyMyI+IDogPC9zcGFuPkluIHRoZSBzY29wZSBvZiBQUk9URVVTIHByb2plY3QgdGhlIGZvbGxvd2luZyBjb21tZW50cyBhcmUgYWRkZWQgOjwvcD48cCBjbGFzcz0iUDM0Ij4tIFdoZW4gdGhlIDxzcGFuIGNsYXNzPSJUMjMiPkFjdHVhdG9yIDwvc3Bhbj7CoHdvcmQgaXMgdXNlZCBhbG9uZSwgaXQgbWVhbnMgdGhlIDxzcGFuIGNsYXNzPSJUMjMiPkFjdHVhdG9yIFN5c3RlbTwvc3Bhbj4gaW5jbHVkZXMgb25seSBvbmUgbm9uIGRlY29tcG9zYWJsZSBzb2Z0d2FyZSBhbmQgb25lIG5vbiBkZWNvbXBvc2FibGUgaGFyZHdhcmUuIEluIHRoaXMgY2FzZSwgaXQgaXMgc29tZXRpbWVzIGNhbGxlZCA8c3BhbiBjbGFzcz0iVDIzIj5tb3RvcmlzYXRpb248L3NwYW4+IG9yIDxzcGFuIGNsYXNzPSJUMjMiPmVmZmVjdG9yPC9zcGFuPi48L3A+PHAgY2xhc3M9IlAzNiI+PHNwYW4gY2xhc3M9IlQyOSI+LSBDYXJlIGlzIHRvIGJlIHRha2VuIGJldHdlZW4gdGhlIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMwIj5Nb3RvcmlzYXRpb24gU3lzdGVtPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPiwgYWJsZSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMSI+dG8gbW92ZSB0aGUgcm9ib3Qgb3IgcGFydCBvZiBpdDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMyIj4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPmFuZCB0aGUgZGlmZmVyZW50IG90aGVyIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMwIj5BY3R1YXRvcnMgU3lzdGVtczwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij4gYWJsZSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMSI+dG8gaW50ZXJhY3Qgd2l0aCB0aGUgZW52aXJvbm1lbnQ8L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+LiBUaGVzZSBvdGhlciA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMCI+QWN0dWF0b3JzIFN5c3RlbXM8L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+IMKgY2FuIGJlIGNhbGxlZCA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMiI+UGF5bG9hZCBzeXN0ZW1zPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPiw8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMiI+IE9wZXJhdGlvbmFsIHN5c3RlbXM8L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+LCA8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMiI+TWlzc2lvbiBtb2R1bGVzPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPiwgZXRjLiAoYXMgYW4gZXhhbXBsZSwgTlJCQywgV2VhcG9ucywgQ29tbXVuaWNhdGlvbnMsIGV0Yy4pLjwvc3Bhbj48L3A+PCEtLU5leHQgJ2Rpdicgd2FzIGEgJ3RleHQ6cCcuLS0+PGRpdiBjbGFzcz0iUDI3Ij4gPCEtLU5leHQgJ2RpdicgaXMgYSBkcmF3OmZyYW1lLi0tPjxkaXYgc3R5bGU9ImhlaWdodDoxMS40NjRjbTt3aWR0aDo1LjQ1MmNtOyBmbG9hdDpsZWZ0OyBwYWRkaW5nOjA7IHBvc2l0aW9uOnJlbGF0aXZlOyBsZWZ0OjBjbTsgIiBjbGFzcz0iZnIzIiBpZD0iaW1hZ2VzMyI+PGltZyBzdHlsZT0iaGVpZ2h0OjExLjQ2NGNtO3dpZHRoOjUuNDUyY207IiBhbHQ9IiIgc3JjPSJkYXRhOmltYWdlLyo7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFYOEFBQU1NQ0FJQUFBQTBEekIyQUFBZzVFbEVRVlI0bk8zZGIyaFZkNTc0OFpQRkI1bDVrc0NBNXBHVEthVllLR2h4UWR0Q2plNkErMFFiV0dXU3dnOWIyRWdHQnJiU1BMQ2dyTjJFaFlHVTlrRVozZFpsSWdQMXl2UkJtakJGSDFSU0g2aVUzWnJMVUtqU1FpSU1teTRzcE93L1lZYng5elYzRzFJMWY3dzU4WFBPdWE4WDd1SGs1Q2J6NGN6a3ZlZmVjKzY1bSs3ZXZadGwyZlIwTmorZkFVdTF0MmU3ZDBjUFVWMmIwdi90M1p0TlRVVVBBb1hVM1ozZHVKRjFka2JQVVVXYkxsNlVIbGpXekV4V3EyV0RnOUZ6Vk5HbXVibm9FYURZL0kxc2tFMUx2K2pweWZic2lab0VDcVJlejhiSG80ZW91dS9WSjZYbjFLbWdRYUJJeHNiVVo4TnRXdjBoQUJ0QWZZQVk2Z1BFVUI4Z2h2b0FNZFFIaUtFK1FBejFBV0tvRHhBanovcTB0YlUxVmhwMzdWaUx5Y25KZ3djUHJ2M3hRR1hrVnA5NnZiNTBmZnYyN1d2NWtaU2V2QVlBeWlXMytuejQ0WWRwZWY3OCtmNysvclMrYW4xU2VuYnMySkhYZnpwUU92blU1OXR2dngwWkdUbHc0RUJmWDk4SEgzeVExb2VHaGpvNk9wWjdmT01KVjNwOFdzbGxBS0IwOHFuUGxTdFgwbkpnWUNBdFgzNzU1ZFNVdENYRjVhRVBUdDFKRHhnY0hIenp6VGUzYk5tU3l3QkE2ZVJUbjQ4Ly9qZ3RkKzNhbFpiNzl1MXJiRm11UGlrOW4zenlTZU5oUU12S29UNjNidDA2YytaTU9wYlp2SGx6K2pJdDAzcmFjdXpZc2FlZWV1ckJ4enZEQldTNTFPZnp6ejlQeXlOSGppeHVTZXVwUG1uN1Erc0RrT1ZTbi83Ky9yUjgrdW1uRjdjMDF0UDJ2cjYrOWY5K29KTFdXNS9HWlQ2am82Tkx6M0NsOWJSbGFHaG9qUmYrQUMxb3ZmVnBYT1l6dE9DaDMxVWY0S0hXVlovR1pUNHJQR0RWQzMrQWxyV3UralF1OHpsLy92eERYOStwMVdyOS9mMHJYUGdEdExKMTFhZHhtYzl5Vis0OC8venoyWW9YL2dDdHJQbjZOQzd6T1hIaVJPTXlud2R0M2JvMWZUYzkrVnJ1d2grZ2xUVmZuOFpsUG9jT0hWcmhNZW03cVQ0dS9BRWUxSHg5K3Z2NzAxT3FsVTlwcGUrbXg3andCM2hROC9WWjR4c21KaVltMXY5TGdPcHhaMVVnaHZvQU1kUUhpS0UrUUF6MUFXS29EeEJEZllBWTZnUEVVQjhnaHZvQU1kUUhpS0UrUUF6MUFXS29EeEJEZllBWTZnUEVVQjhnaHZvQU1kUUhpS0UrUUF6MUFXS29EeEJEZllBWTZnUEVVQjhnaHZvQU1kUUhpS0UrUUF6MUFXS29EeEJEZllBWTY2M1A5SFEyUDUvTEpGWFQzcDd0M3IzZVgyTDNMaWVYM1V1c2RkVm43OTVzYWlxblFhcW91enU3Y1NQcjdHenl4KzNlbGExejl4S3UrZnBjdk9odll4VXpNMW10bGcwT052T3pkdStxMXJON0tZTG02ek0zbCtNWWxkWDBYcko3MThKZUtyVjhYblh1NmNuMjdNbmxOMVZCdlo2TmorZjVDKzNlcFhMZnZVVEpwejdwYitQVXFWeCtVeFdNamVYODUySDNMcFg3N2lXS00rNUFEUFVCWXFnUEVFTjlnQmpxQThSUUh5Q0crZ0F4MUFlSW9UNUFEUFVCWXFnUEVFTjlnQmpxQThSUUh5Q0crZ0F4MUFlSW9UNUFEUFVCWXFnUEVFTjlnQmpxQThSUUg4ak4zTnpjK1BqNG9FODRYQnYxZ2ZWcVJPZkNoUXRUQzU4L3F6NXJwRDdRcFB1aXc2TlNIM2cwb3BNWDlZRTFFWjNjcVErc2JPNWYvbVY4Nzk1SGlFNWJXOXRHemxNUlAvakJEOVFIVmpiM0gvOXhjMjV1WnUwL2NQZnUzUTBicGpwU280dGVuOXUzYjErOWV2V0xMNzRZR1JscGJCa2RIWDMyMldkMzd0elowZEVSTzFzbE5mNy85Z3AvUDZzK29ISjI3TisvNDlTcHQ2ZW5wOCtkTzVlZWZNM016RVNQVkJHRnJzL2s1T1RCZ3dmdjJ6ZzBOSlNXQnc0Y0dCNGUzcjU5ZThSY3RLSWRDOTUrVzRaeVU5ejYxT3YxbEo1VW1kZGVlKzJaWjU3WnZIbHpZM3M2R3JwMDZkTFJvMGRUbTJablo3ZHUzUm83SjYxbU1VTmZmdmxsclZhN2NPRkNXb2tlcXBTS1c1OHpaODZrNWJ2dnZudGZYOUtYQXdNRFhWMWRxVTBwUTJrOWFFQmEzYlp0MjA0dGtLSG1GTDAreXgzYXZQamlpMm1aam9EVWgzRDNaU2g2bk5Jb2JuMEdCd2RUZ0s1ZnY3NTc5KzRIdjl2UjBkRktMM3hTRG8wTVJVOVJHc1d0eitIRGgxTjlubnZ1dWRIUjBSZGVlT0dKSjU1WWZPa0hxSURpMW1mZnZuMFRFeE1IRHg1c25PUnFhSnh1Zi9MSko3M1l2S0ZjTDhkalVOejZaQXVuMWVmbjU2OWN1ZkxaWjU4MXJ2ZFpMRkY2WHZiR0cyOW9FSlJYb2V1VExieStjMkRCOFBEdzdkdTN2L3JxcTYrLy92cm8wYU5uRm56enpUZWVqbTJFVmE4MmhQVXJlbjJXMnJvZ1BTTWJHQmlvMVdyOS9mMGZmZlNSYzE1UVVnV3R6NnFYOC9mMTlhWDZPT01PNVZYUStwdzRjV0prWktSZXIzc3ZCVlJWUWV0ejZOQ2hWSitUSjArZVBYdjJvYS9zWEw1OE9TM2ZlKys5eHo0YWtJK0MxaWNkOGpRT2Y3WnMyVEl4TVpHK1hEeTlkZXZXclU4Ly9UUTk1MHJyKy9mdkR4MFRhRjVCNjVNTUR3OTNkbllPRFEwOStEYjM3THYzdUR2akR1VlYzUG9rcjcvKyt1SERoNjlldlpvT2RocHYrOHJjM3dlcW90RDF5YjQ3eTk3WDEzZjY5T25vV1ZyQ3F1K2U4L1k2OGxMMCtnQlZwVDVBRFBVQllxZ1BFRU45Z0JqcUE4UlFIeUNHK2dBeDFBZUlvVDVBRFBVQllxZ1BFRU45Z0JqcUE4UlFIeUNHK2dBeDFBZUlvVDVBRFBVQllxZ1BFRU45Z0JqcUE4UlFIeUNHK2dBeDhxblA3R3cyTlpYTGI2cUNtemR6L29WMjcxSzU3MTZpNUZPZnNiRjcvOWdnZGkrVjFIeDkydHR6SEtPeW10NUxkdTlhMkV1bDFueDllbnV6cnE1c2JpN0hZU29vN2FXbWY5RHVYVlhUdTVjaVdOZXh6N1ZyV2EyVzNibVQ0enlWMHRlWGJkdlc1TS9hdmF0YXorNmxDTmIxdWs5M2QzYjhlRjZUY0QrN2wycHp4aDJJb1Q1QURQVUJZcWdQRUVOOWdCanFBOFJRSHlDRytnQXgxQWVJb1Q1QURQVUJZcWdQRUVOOWdCanFBOFJRSHlDRytnQXgxQWVJb1Q1QURQVUJZcWdQRUVOOWdCanFBOFJRSHlDRytnQXgxQWVJb1Q1QURQVUJZcWdQRUVOOWdCanFBOFJRSHlDRytnQXgxQWVJb1Q1QURQVUJZcWdQRUVOOWdCanFBOFJRSHlDRytnQXgxQWVJb1Q1QURQVUJZbnl2UHJPejJkUlUwQ0JRSkRkdlJrL1FBcjVYbjdHeGUvOEFIb05ON2UzUkkwQ3grUnZaSUp0NmU3T3VybXh1TG5vUUtLcjBOOEpHdUhmc2MrMWFWcXRsZCs1RXp3TEYwOWVYYmRzV1BVUkYzWHZkcDdzN08zNDhlaENneFRqakRzUlFIeUNHK2dBeDFBZUlvVDVBRFBVQllxZ1BFRU45Z0JqcUE4UlFIeUNHK2dBeDFBZUlvVDVBRFBVQllxZ1BFRU45Z0JqcUE4UlFIeUNHK2dBeDFBZUlvVDVBRFBVQllxZ1BFRU45Z0JqcUE4UlFIeUNHK2dBeDFBZUlvVDVBRFBVQllxZ1BFRU45Z0JqcUE4UlFIeUNHK2dBeC9xOCswOVBaL0h6c0pGQTQ3ZTNaN3QzUlExVFh2ZnJzM1p0TlRVVVBBb1hVM1ozZHVKRjFka2JQVVVXYkxsNlVIbGpXekV4V3EyV0RnOUZ6Vk5HbXVibm9FYURZL0kxc2tPKzk2dHpUayszWkV6VUpGRWk5bm8yUFJ3OVJkZCtyVDByUHFWTkJnMENSakkycHo0Wnp4aDJJb1Q1QURQVUJZcWdQRUVOOWdCanFBOFJRSHlDRytnQXgxQWVJb1Q1QURQVUJZcWdQRUVOOWdCaDUxcWV0cmEyeGN2ZnUzUlVlZHZ2MjdVdVhMazB1U0YrT2pvNys5S2MvM2I1OWU0NlRBTVdYVzMzcTlmclM5ZVZxVXF2Vit2djdsMjRaR2hwS3kvUG56L2YxOWVVMURGQjh1ZFhud3c4L3pCWWlrdUtTMWg5YW4zVFUwMGpQSjU5OHNuUG56bzZPanJSKytmTGx2L3FydjByYnU3dTdkN3VGTjdTTWZPcno3YmZmam95TUhEaHdJQjIvZlBEQkIyazlIZEUwNHJKVWVzS1ZsdGV1WFZ0YW1YMzc5cVV0enozMzNMbHo1OVFIV2tjKzlibHk1VXBhRGd3TXBPWExMNzg4T1RtWnRxUVkzZmV3eGdzOUR5YW1zZVhNbVRPblQ1L09aUjZnK1BLcHo4Y2ZmNXlXdTNidHloYU9aUnBiSHF6UHhNVEVDci9rd2NjREZaWkRmVzdkdXBVT1d3WUhCemR2M3B5K1RNdTBuclljTzNic3FhZWVXc3R2YUx4aXJUN1FVbktveitlZmY1NldSNDRjV2R5UzFsTjkwdlkxMWljOU9LWG5wWmRlV3Y4d1FGbmtVSi9HYWF5bm4zNTZjVXRqUFcxZnkwbjB0OTU2Nnc5LytNUFpzMmNiaDA1QWkxaHZmUnBQbWtaSFI1ZWU0VXJyYWN2UTBOQUtGLzQwMUdxMStmbjUzL3ptTncrZUlBT3FiYjMxYVZ6bU03VGdvZDlkb1Q0cFBSOTg4RUU2NnBFZWFFSHJxay9qTXA4VkhyRGNoVC9ad2hPdTlLMVBQdm5FRXk1b1RldXFUK015bitYZUpORjRVOFdERi83OCs3Ly8rOS8rN2Q5T1RrNm05RFJPendNdGFGMzFhVnptczF4Qm5uLysrZXlCQzMvcTlmcU9IVHZTbHBzM2I2N3hqQmhRU2MzWHAzR1p6NGtUSjVaNzZyUjE2OWIwM2ZUa2EvSENuM1RVYy9Ma3laUWVaN2lBNXV2VHVNem4wS0ZES3p3bWZUZlZaL0hDbjQ4Kytxanhab3N0VzdZODlQRXIzNW9EcUpMbTY5UGYzNStPWWxZK29aNitteDZ6ZU9IUDBhTkhtLzZQQXlxbStmcXM4VGhsNlh1N0hOb0FpOXhaRllpaFBrQU05UUZpcUE4UVEzMkFHT29EeEZBZklJYjZBREhVQjRpaFBrQU05UUZpcUE4UVEzMkFHT29EeEZBZklJYjZBREhVQjRpaFBrQU05UUZpcUE4UVEzMkFHT29EeEZBZklJYjZBREhVQjRpaFBrQU05UUZpcUE4UVEzMkFHT29EeEZBZklJYjZBREhVQjRpaFBrQU05UUZpckxjKzA5UFovSHd1azFSTmUzdTJlL2Q2ZjRuZHU1eGNkaSt4MWxXZnZYdXpxYW1jQnFtaTd1N3N4bzJzczdQSkg3ZDdWN2JPM1V1NDV1dHo4YUsvalZYTXpHUzFXalk0Mk16UDJyMnJXcy91cFFpYXI4L2NYSTVqVkZiVGU4bnVYUXQ3cWRUeWVkVzVweWZic3llWDMxUUY5WG8yUHA3bkw3UjdsOHA5OXhJbG4vcWt2NDFUcDNMNVRWVXdOcGJ6bjRmZHUxVHV1NWNvenJnRE1kUUhpS0UrUUF6MUFXS29EeEJEZllBWTZnUEVVQjhnaHZvQU1kUUhpS0UrUUF6MUFXS29EeEJEZllBWTZnUDV1SERod2k5LytjdmYvLzczZi96akg2Tm5LUWYxZ1hWWmpNNmYvdlNuNkZsS1JuMmdHV2ZQbnYzVnIzNGxPdXVoUHZBSTNubm5uZmZmZi8vTEw3Lzg4NS8vSEQxTDZha1ByRTUwTm9MNndNcEcvdUVmL3Y3dTNVZUlUbHRiMjhaTlV5WHFBeXM3OFhkLzkvLys4eitIUC83NDQzLzd0MzlieXcvY3ZYdDNvMmVxZ05SbzlZRlZkSFQ4K08yM3o2YVYyZG5aNGVGSHlCQXJVeDlZcXgvLytNZG56OHBRYnRRSEhwa001VUo5b0hreXRCN3FBemxZbXFIb1dVcERmU0JQS1VQUkk1U0crZ0F4aWw2ZjI3ZHZYNzE2OVlzdnZoZ1pHV2xzR1IwZGZmYlpaM2Z1M05uUjBSRTdXeVUxcnBSYjRZcVZWUjhBYTFUbytreE9UaDQ4ZVBDK2pVTkRRMmw1NE1DQjRlSGg3ZHUzUjh3RjVLQzQ5YW5YNnlrOXFUS3Z2ZmJhTTg4OHMzbno1c2IyZERSMDZkS2xvMGVQcGpiTnpzNXUzYm8xZGs2Z09jV3R6NWt6WjlMeTNYZmZ2YTh2NmN1QmdZR3VycTdVcHBTaHRCNDBJTEF1UmEvUGNvYzJMNzc0WWxxbUl5RDFnWklxYm4wR0J3ZFRnSzVmdjc1NzkrNEh2OXZSMGVHRlR5aTE0dGJuOE9IRHFUN1BQZmZjNk9qb0N5Kzg4TVFUVHl5KzlBTlVRSEhyczIvZnZvbUppWU1IRHpaT2NqVTBUcmMvK2VTVFhtemVVTzVRdzJOUTNQcGtDNmZWNStmbnIxeTU4dGxubnpXdTkxa3NVWHBlOXNZYmIyZ1FsRmVoNjVNdHZMNXpZTUh3OFBEdDI3ZS8rdXFycjcvKyt1alJvMmNXZlBQTk41Nk9iWVJWcnphRTlTdDZmWmJhdWlBOUl4c1lHS2pWYXYzOS9SOTk5SkZ6WGxCU0JhM1BxcGZ6OS9YMXBmbzQ0dzdsVmRENm5EaHhZbVJrcEY2dmV5OEZWRlZCNjNQbzBLRlVuNU1uVDU0OWUvYWhyK3hjdm53NUxkOTc3NzNIUGhxUWo0TFdKeDN5TkE1L3RtelpNakV4a2I1Y1BMMTE2OWF0VHovOU5EM25TdXY3OSs4UEhSTm9Ya0hya3d3UEQzZDJkZzRORFQzNE52ZnN1L2U0TytNTzVWWGMraVN2di83NjRjT0hyMTY5bWc1MkdtLzd5dHpmQjZxaTBQWEp2anZMM3RmWGQvcjA2ZWhaV3NLcTc1N3o5anJ5VXZUNkFGV2xQa0FNOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIVUI0aWhQa0FNOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIVUI0aWhQa0FNOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIeXFjL3NiRFkxbGN0dnFvS2JOM1AraFhidlVybnZYcUxrVTUreHNYdi8yQ0IyTDVYVWZIM2EyM01jbzdLYTNrdDI3MXJZUzZYV2ZIMTZlN091cm14dUxzZGhLaWp0cGFaLzBPNWRWZE83bHlKWTE3SFB0V3RaclpiZHVaUGpQSlhTMTVkdDI5Ymt6OXE5cTFyUDdxVUkxdlc2VDNkM2R2eDRYcE53UDd1WGFuUEdIWWloUGtBTTlRRmlxQThRUTMyQUdPb0R4RkFmSUliNkFESFVCNGloUGtBTTlRRmlxQThRUTMyQUdPb0R4RkFmSUliNkFESFVCNGloUGtBTTlRRmlxQThRUTMyQUdPb0R4RkFmSUliNkFESFVCNGloUGtBTTlRRmlxQThRUTMyQUdPb0R4RkFmSUliNkFESFVCNGloUGtBTTlRRmlmSzgrczdQWjFGVFFJRkFrTjI5R1Q5QUN2bGVmc2JGNy93QWVnMDN0N2RFalFMSDVHOWtnbTNwN3M2NnViRzR1ZWhBb3F2UTN3a2E0ZCt4ejdWcFdxMlYzN2tUUEFzWFQxNWR0MnhZOVJFWGRlOTJudXpzN2ZqeDZFS0RGT09NT3hGQWZJSWI2QURIVUI0aWhQa0FNOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIVUI0aWhQa0FNOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIVUI0aWhQa0FNOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIVUI0aWhQa0FNOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIVUI0aWhQa0FNOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIVUI0anhmL1dabnM3bTUyTW5nY0pwYjg5Mjc0NGVvcnJ1MVdmdjNteHFLbm9RS0tUdTd1ekdqYXl6TTNxT0t0cDA4YUwwd0xKbVpySmFMUnNjako2amlqYk56VVdQQU1YbWIyU0RmTzlWNTU2ZWJNK2VxRW1nUU9yMWJIdzhlb2lxKzE1OVVucE9uUW9hQklwa2JFeDlOcHd6N2tBTTlRRmlxQThRUTMyQUdPb0R4RkFmSUliNkFESFVCNGloUGtBTTlRRmlxQThRUTMyQUdIbldwNjJ0cmJGeTkrN2RGUjUyL2ZyMTMvM3VkeU1qSTJuOXhJa1RlL2Z1M2Jkdlg0NWpBS1dRVzMzcTlmclM5ZTNidHovMFlTZFBubXgwcDJGa1FXclE4UEJ3WHBNQXBaQmJmVDc4OE1PMFBILytmSDkvZjFwL2FIMHVYNzZjV2pNNE9IanMyTEdubm5vcWJibDkrL2I3NzcrZk5qb0NnbGFUVDMyKy9mYmJWSkFEQnc3MDlmVjk4TUVIYVgxb2FLaWpvK08raC8zMnQ3OU55emZmZkhQejVzMk5MVnUzYmgwWUdFaVBmK2VkZDlRSFdrbys5Ymx5NVVwYXBvNms1Y3N2dnp3NU9abTJwQmpkOTdEVEMrN2JtQUtVbHVsSGNwbWtPSHhNU0tINGRJb0N5cWMrSDMvOGNWcnUyclVyTFJ1SE1HbkxnL1Y1cVBUa0sxdDQrVG1YU1FyQ3g0UVVrRStuS0pvYzZuUHIxcTB6Wjg0TURnNDJuaytsWlZwUFd4WmYzRmxCdlY0L2VmSms5dDF4VXpYNG1KQmk4dWtVUlpORGZUNy8vUE8wUEhMa3lPS1d0SjdxazdhdlVKKzMzbnByYUdnb3JhUkRwSnMzYnphZWYxV0RqMEFvTFAvVkZFb085ZW52NzAvTHA1OStlbkZMWXoxdDcrdnJXK0VIUjBkSHYvcnFxOVNwdEQ0OFBMemNTZnBTOHpFaDRYdzZSV0d0dHo2TnkzeFNSNWFlNFVycmFVczZ0Rm5od3AvWFgzKzlzZkxHRzIvODRoZS8yTEZqUnpvQ1d2V1pXdW40bUpCd1BwMmlzTlpibjhabFBrTUxIdnJkVlk5bzBuT3VsS3JKeWNuZi9PWTNyam1FMXJHdStqUXU4MW5oQWN0ZCtIT2Z4aUZQZXJENlFPdFlWMzBhbC9tY1AzLytvYS92MUdxMS92NytwUmYrSER4NE1CM2p6TS9Qcjlvam9QTFdWWi9HWlQ3TFhhUDgvUFBQWjkrLzhDZXRwUHI4NjcvKzYzMC9jdjM2OWJSODc3MzMxak1NVUM3TjE2ZHhtYytKRXljVzN6WnhuNjFidDZidnB1ZFRpeGYrN04rL1B5M2ZlZWVkSC8zb1I0dXZCOVhyOVgvOHgzOWMvQzdRSXBxdlQrTXluME9IRHEzd21QVGRWSi9GQzM5U2o2YW5wM2ZzMlBIZyt5clM5aXBkOGdPc3F2bjY5UGYzcDJkU0s1L1NTdDlOajFsNjRVL2FNanM3ZStuU3BhTkhqMllMejhWZWZ2bmw5RVJzdVFNb29LcWFyOC9LdHhCYk5ERXhjZCtXeHZ2YXEvVFdDcUFKN3F3S3hGQWZJSWI2QURIVUI0aWhQa0FNOVFGaXFBOFFRMzJBR09vRHhGQWZJSWI2QURIVUI0aWhQa0FNOVFGaXFBOFFRMzJBR09yVFd0cmEycklWN3d5MzZnTWdMK29EeEZBZklJYjZBREhVQjRpaFBrQU05UUZpcUU4cmFweFdoMWpxQThSUW4xYTA2dFdHOEJpb0R4QkRmWUFZNmdQRVVCOGdodm9BTWRRSGlLRStRQXoxYVMycjNqYk1mY1Y0Yk5RSGlLRStRQXoxQVdLb0R4QkRmWUFZNmdQRVVCOGdodm9BTWRRSGlLRStRQXoxQVdLb0R4QkRmWUFZNmdQRVVCOGdodm9BTWRRSGlLRStRQXoxQVdLb0R4QkRmYXB2ZWpxYm40OGU0aEcxdDJlN2QwY1B3UVpUbjRyYnV6ZWJtb29lb2luZDNkbU5HMWxuWi9RY2JCajFxYktMRjh1YW5tUm1KcXZWc3NIQjZEbllNT3BUWlhOejBST3NUOW5uWjJYcTB5cDZlckk5ZTZLSFdJTjZQUnNmang2Q3gwSjlXa1ZLejZsVDBVT3N3ZGlZK3JRSzlRRmlxQThRUTMyQUdPb0R4RkFmSUliNkFESFVCNGloUGtBTTlRRmlxQThRUTMxSzV0VlhYOTIxYTFkdmIyOVhWMWYwTEVVeE16TXpQajUrNTg2ZDQ4ZVBSOC9DSTFDZmtwbWFtaG9iRy92NXozL2UwOVB6czUvOXJKVXoxSWpPdVhQbnBxZW4wNWV2dlBKSzlFUThHdlVwcTZrRkxaaWgrNkpEZWFsUDZiVkloa1NuZXRTbk9oN01VSmFWUGtPaVUySHFVd0kvL09FUC8vZC8vM2Z0ajEvTTBMWnRQVm4yc3l3cjQ5MUo3MlRabVgvNnAzTnZ2cm5XNkl3dGFLei80QWMvK0ovLytaK05HbzJjcUU4SnBQVGN2WHUzc2Y2VG4vd2tIUTZzNWFmU3NjK1BmdlRTbDEvMmJ1QmtHNmc5eS9wMjdtei83LysrTUxXMmUxTy84c29ydi83MXJ4dnJiVzF0R3pnYU9WR2Zxa25SZWVtbGw5S3lzN016SFFyODh6OUhEOVM4cnIvOHk4RlRwd2JuNXViU2s2OExGOWFhSWNwQ2ZTcGlhWFNpWjhsWlYxZlg0QUlacWhqMUtiY0tSK2RCTWxReDZsTktMUldkQjhsUU5haFB5Yno5OXRzOVBUMnRHWjBITGMzUUdsK01wempVcDJRV3J1TGhmbDBMb3FmZzBhZ1BFRU45Z0JqcUE4UlFIeUNHK2dBeDFBZUlvVDVBRFBVQllxZ1BFRU45V3NYc2JGYUs5MExkdkJrOUFZK0wrclNLc2JIc3V6di9RU0dvVDVXMXQwZFBzRDVsbjUrVnFVK1Y5ZlptWFYzWjNGejBITTN5anRwcVU1OHFTOGNPMTY1bHRWcDI1MDcwS0krdXJ5L2J0aTE2Q0RhUytsUmNkM2ZtNDRVcEp2VUJZcWdQRUdPbCtreFBaL1B6ajIyU2ttbHZ6M2J2amg0Q3ltelordXpkVzQ2TDB3SjFkMmMzYm1UdXNBek5lWGg5TGw2VW50WE56Tnc3blRSWXhvOHBoZ0o0ZUgzS2U0WElZMlpIUWROV2Y5VzVweWZicytjeFRGSWE5WG8yUGg0OUJKVGY2dlZKNlRsMWF1TUhLWSt4TWZXQkhEampEc1JRSHlDRytnQXgxQWVJb1Q1QURQVUJZcWdQRUVOOUlFL1QwOU03ZHV5SW5xSWMxQWR5a0tKejd0eTU4Zkh4bVptWnUzZnZSbzlURHVvRHpWc2FuZWhaeWtkOTRKR0pUaTdVQjlaS2RQS2xQckNLdWJucFk4ZEVKMy9xVTMxbHZFTnVrVzVjZS9IU3BWL096RXl0L1FmYTJ0bzJiSmpxU0h0SmZTcXV2SGZJTGN5TmEvLzZ5SkcvSGh5Y1M4YytGeTVjbUZyRDNuVE9hNDNVcDhwS2ZZZmNRdDI0dHF1cmEzREIzTndqWklpVnFVK1ZsZjNHcndXY1g0WnlwRDZ0b2l4M3lDM0xqV3RsYVAzVXAxV1U1UTY1cGJ0eDdZTVppcDZvTk5RSDhyR1lvZWhCU2tOOWdCanFBOFJRSHlDRytnQXgxQWVJb1Q1QURQVUJZcWdQRUtQbzlibDkrL2JWcTFlLytPS0xrWkdSeHBiUjBkRm5uMzEyNTg2ZEhSMGRzYk5SSE5QVDB6TXpNNzI5dmRHRDhBZ0tYWi9KeWNtREJ3L2V0M0ZvYUNndER4dzRNRHc4dkgzNzlvaTVLSXFsTnh0ODVaVlgxS2RjaWx1ZmVyMmUwcE1xODlwcnJ6M3p6RE9iTjI5dWJFOUhRNWN1WFRwNjlHaHEwK3pzN05hdFcyUG41UEZ6aDlOcUtHNTl6cHc1azVidnZ2dnVmWDFKWHc0TURIUjFkYVUycFF5bDlhQUJlZHhFcDJLS1hwL2xEbTFlZlBIRnRFeEhRT3BUZWFKVFZjV3R6K0RnWUFyUTlldlhkei9zQnI4ZEhSM3VYMWwxMDVjdTNjdk9HcU16dHFDeDdzN0twVkRjK2h3K2ZEalY1N25ubmhzZEhYM2hoUmVlZU9LSnhaZCthQUYzc3V6TC8vcXZ1YmsxMzkvd2xWZGUrZld2ZjcyaE01R3Y0dFpuMzc1OUV4TVRCdzhlYkp6a2FtaWNibi95eVNlOTJGeDE3Vm5XOXpkLzAzZjgrSjMwbk91amp6NUt5enQzN2tSUFJaNktXNTlzNGJUNi9QejhsU3RYUHZ2c3M4YjFQb3NsU3MvTDNuampEUTJxdlBiMjlyNEZLVDB5VkRHRnJrKzI4UHJPZ1FYRHc4TzNiOS8rNnF1dnZ2NzY2Nk5IajU1WjhNMDMzM2c2MWlKa3FIcUtYcCtsdGk1SXo4Z0dCZ1pxdFZwL2YzLzZuNkJ6WHExR2hpcWpvUFZwbkxOWTRheFcraDlmcW84ejdxM3N2Z3dKVU9rVXRENG5UcHdZR1JtcDErdmVTOEdxR2htS25vSkhWdEQ2SERwMEtOWG41TW1UWjgrZWZlZ3JPNWN2WDA3TDk5NTc3N0dQQnVTam9QVkpoenlOdzU4dFc3Wk1URXlrTHhkUGI5MjZkZXZUVHo5Tno3blMrdjc5KzBQSEJKcFgwUG9rdzhQRG5aMmRRME5ERDc3TlBmdnVQZTdPdUVONUZiYyt5ZXV2djM3NDhPR3JWNittZzUzRzI3NHk5L2VCcWloMGZiTHZ6ckwzOWZXZFBuMDZlaFlnVDBXdkQxQlY2Z1BFVUI4Z2h2b0FNZFNuVmN6T1psTlQwVU9zd2MyYjBSUHd1S2hQcXhnYnk3Njc4eDhVZ3ZwVVdYdDc5QVRyVS9iNVdabjZWRmx2YjliVmxhMzUzcVNGNCtPNXFrMTlxaXdkTzF5N2x0VnFXUmx2UHRIWGwyM2JGajBFRzBsOUtxNjdPenQrUEhvSWVCajFBV0tvRHhCRGZZQVk2Z1BFVUI4Z2h2b0FNZFFIaUtFK1FBejFBV0tvRHhCRGZZQVk2Z1BFVUI4Z3h1cjFLY3NkT1I4YnQvNkVYS3hlSDNma0JEYkN3K3ZqanBaclpFZEIweDVlbjdMZmtmT3hjZXRQYU5xeXh6N2x2U1BuWStQV243QWV5Nzd1NDQ2Y3dJWnl4aDJJb1Q1QURQVUJZcWdQRUVOOWdCanFBOFJRbitxYm5zN201Nk9IZUVUdDdkbnUzZEZEc01IVXArTDI3aTNybTRTN3U3TWJON0xPenVnNTJERHFVMlVYTDVZMVBjbk16TDJyN1FjSG8rZGd3NmhQbFpYOW5YcGxuNStWcVUrcjZPbko5dXlKSG1JTjZ2VnNmRHg2Q0I0TDlXa1ZLVDJuVGtVUHNRWmpZK3JUS3RRSGlLRStRQXoxQVdLb0R4QkRmWUFZNmdQRVVCOGdodm9BTWRRSGlLRStKVE0yTnRiVDA5UGQzUjA5Q0t5WCtwVE1tMisrK2VxcnIrN1lzZVBJa1NPOXZiMHlSSG1wVHlsTkx6aDI3SmdNVVY3cVUyNHlSSG1wVDBYSUVLV2pQaVhRdG1DTkQxNmFvYWVmUHBKbHZWbld2WkhUUVpQVXB3VCsvT2MvTDY3LzVDYy9tWm1aV2N0UHBRYjl4VjkwWjFublFvRGNIcG5DVVo4S1NrKzdYbnJwcGJRY0grOTg5ZFhvYVdBWjZsTVI3ZTN0aTlGSjY5SGp3T3JVcDl4RWgvSlNuMUlTSFNwQWZVb201V2JYcmwyaVF3V29UOG04L2ZiYjBTTkFQdFFIaUtFK1FBejFBV0tvRHhCRGZZQVk2Z1BFVUI4Z2h2b0FNZFFIaUtFK3JXSjJOcHVhaWg1aURXN2VqSjZBeDBWOVdzWFkyTDEvVUJ6cVUyVmxmeU5xMmVkblplcFRaYjI5V1ZkWE5qY1hQVWV6MHZ4VW1QcFVXVHAydUhZdHE5V3lPM2VpUjNsMGZYM1p0bTNSUTdDUjFLZml1cnV6NDhlamg0Q0hVUjhnaHZvQU1kUUhpS0UrUUF6MUFXS29EeEJEZllBWTZnUEVVQjhnaHZvQU1kUUhpS0UrUUF6MUFXS29EeEJEZllBWTZnUEVVQjhnaHZvQU1kUUhpS0UrUUF6MUFXS296OFlxeStjWFY1aVBaaTRzOWRsWVByOFlscU0rK2ZQNXY0WGx2NXBDVVovOGxmM3ppeXZNUnpNWGl2cmtyOVNmWDF4aFBwcTVhTlJuUS9qOFlsaVYrZ0F4MUFlSW9UNUFEUFVCWXFnUEVFTjlnQmpxQThSUUh5Q0crZ0F4MUFlSW9UNUFEUFVCWXFnUEVPTjc5WEViVUdod1A5Ykg0SHYxY1J0UTRMSFo1RjZUc0RKL0l4dGtrOXVBd3NyY2ozV0RiSEliVUZpQis3RnVuUDhQSWRNYjNhdjVvQThBQUFBQVNVVk9SSzVDWUlJPSIvPjwvZGl2PjwvZGl2PjxkaXYgc3R5bGU9ImNsZWFyOmJvdGg7IGxpbmUtaGVpZ2h0OjA7IHdpZHRoOjA7IGhlaWdodDowOyBtYXJnaW46MDsgcGFkZGluZzowOyI+wqA8L2Rpdj48cCBjbGFzcz0iUDI2Ij48c3BhbiBjbGFzcz0iVDMiPldpa2lwZWRpYTo8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gTWVjaGFuaWNhbCBkZXZpY2UgZm9yIG1vdmluZyBvciBjb250cm9sbGluZyBhIG1lY2hhbmlzbSBvciBhIHN5c3RlbS4gSXQgaXMgb3BlcmF0ZWQgYnkgYSBzb3VyY2Ugb2YgZW5lcmd5LCB1c3VhbGx5IGluIHRoZSBmb3JtIG9mIGFuIGVsZWN0cmljIGN1cnJlbnQsIGh5ZHJhdWxpYyBmbHVpZCBwcmVzc3VyZSBvciBwbmV1bWF0aWMgcHJlc3N1cmUsIGFuZCBjb252ZXJ0cyB0aGF0IGVuZXJneSBpbnRvIHNvbWUga2luZCBvZiBtb3Rpb24uPC9zcGFuPjwvcD48cCBjbGFzcz0iUDI2Ij48c3BhbiBjbGFzcz0iVDUiPlJhbmRvbSBIb3VzZSBEaWN0aW9uYXJ5Ojwvc3Bhbj48c3BhbiBjbGFzcz0iVDQiPiBhIHNlcnZvbWVjaGFuaXNtIHRoYXQgc3VwcGxpZXMgYW5kIHRyYW5zbWl0cyBhIG1lYXN1cmVkIGFtb3VudCBvZiBlbmVyZ3kgZm9yIHRoZSBvcGVyYXRpb24gb2YgYW5vdGhlciBtZWNoYW5pc20gb3Igc3lzdGVtLiA8L3NwYW4+PC9wPjxwIGNsYXNzPSJQMjYiPjxzcGFuIGNsYXNzPSJUMzMiPk1lcnJpYW0gV2Vic3RlcjogPC9zcGFuPmEgbWVjaGFuaWNhbCBkZXZpY2UgZm9yIG1vdmluZyBvciBjb250cm9sbGluZyBzb21ldGhpbmc8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDMwIj5BbGdvcml0aG1pYyBtb2R1bGU8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOSI+SXQgaXMgYW4gPHNwYW4gY2xhc3M9IlQyMyI+YXBwbGljYXRpb248L3NwYW4+IHRoYXQgaXMgbm90IGV4ZWN1dGFibGUgYnkgaXRzZWxmIGJ1dCBjYW4gYmUgY29tcG9zZWQgdGhyb3VnaCB0b29saW5nIHN1Y2ggYXMgdGhlIFBST1RFVVMgbWFpbiB0b29sLjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDEiPkFwcGxpY2F0aW9uIGxldmVsPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjYiPjxzcGFuIGNsYXNzPSJUMyI+SlBSICZhbXA7IEFMRlVTPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDExIj7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj5IaWdoZXN0IGxldmVsIG9uIHRoZSBTZW5zb3J5IFByb2Nlc3Npbmcgb3IgdGhlIERlY2lzaW9uIFByb2Nlc3MuPC9zcGFuPjwvcD48cCBjbGFzcz0iUDI2Ij5HaXZlIG9yIGRlZmluZSBrbm93bGVkZ2UgZGlyZWN0bHkgYXQgdGhlIHRhc2sgbGV2ZWwgYWNjb3JkaW5nIHRvIG1lYW5pbmcgYW5kIHVuZGVyc3RhbmRpbmcgY29tbW9ubHkgdXNlZCBpbiBhIHBhcnRpY3VsYXIgZG9tYWluLihJbnRlbGxpZ2VuY2UsIGtub3dsZWRnZSwgY29tYmF0IGFuZCBhY3Rpb25hYmxlIGluZm9ybWF0aW9uIGZvciBpbnN0YW5jZSksIGZ1cnRoZXIgcHJvY2Vzc2VkIGZvciBwYXJ0aWN1bGFyIG1pc3Npb24gbmVlZHMgYW5kIGRpcmVjdGx5IGxpbmtlZCB0byB0YWN0aWNhbCBiZWhhdmlvdXJzPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MSI+QXNzZXNzbWVudDwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI2Ij5TZWUgRXZhbHVhdGlvbjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDAiPkJlbmNobWFyazwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDIzIj5JdCBpcyBhIOKAnDxzcGFuIGNsYXNzPSJUMjMiPnByb2JsZW3igJ0gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMSI+YXNzb2NpYXRlZCB0byBhIHJlZmVyZW5jZSDigJw8L3NwYW4+PHNwYW4gY2xhc3M9IlQyMyI+c29sdXRpb248L3NwYW4+PHNwYW4gY2xhc3M9IlQxIj7igJ0uIEV2ZXJ5IG9mIHRoZSBvdGhlciBzb2x1dGlvbnMgY29taW5nIGFmdGVyIHdpbGwgYmUgY29tcGFyZWQgdG8gdGhpcyDigJw8L3NwYW4+PHNwYW4gY2xhc3M9IlQyMyI+YmVuY2htYXJrPC9zcGFuPjxzcGFuIGNsYXNzPSJUMSI+4oCdLjwvc3Bhbj48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQwIj5DaGFsbGVuZ2UgUHJvdmlkZXI8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOSI+VGhlIENoYWxsZW5nZSBQcm92aWRlciBkZWZpbmVzIHRoZSBzY2VuYXJpbywgcHJvYmxlbSwgY29uZmlndXJhdGlvbnMgYW5kIG1ldHJpY3M8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQwIj5DaGFsbGVuZ2VyPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjkiPlRoZSBDaGFsbGVuZ2VyIHByb3ZpZGVzIGEgU29sdXRpb24gdG8gYSBQcm9ibGVtPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MSI+Q2xhc3NpZmljYXRpb248L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNiI+PHNwYW4gY2xhc3M9IlQ1Ij5SYW5kb20gSG91c2UgRGljdGlvbmFyeSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ2Ij7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij4gVGhlIGFjdCBvZiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij5jbGFzc2lmeWluZyDCoHRoZSByZXN1bHQgb2YgY2xhc3NpZnlpbmcgb3IgYmVpbmcgY2xhc3NpZmllZC4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUNiI+74OoPC9zcGFuPjxzcGFuIGNsYXNzPSJUNCI+IENsYXNzaWZ5aW5nOiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxNiI+dG8gPC9zcGFuPjxzcGFuIGNsYXNzPSJUNCI+YXJyYW5nZSBvciBvcmdhbml6ZSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij5ieSBjbGFzc2VzOyBvcmRlciBhY2NvcmRpbmcgdG9jbGFzcy48L3NwYW4+PC9wPjxwIGNsYXNzPSJQMjYiPjxzcGFuIGNsYXNzPSJUMzMiPk1lcnJpYW0gV2Vic3Rlcjwvc3Bhbj4gPHNwYW4gY2xhc3M9IlQzNCI+74OoPC9zcGFuPiBzeXN0ZW1hdGljIGFycmFuZ2VtZW50IGluIGdyb3VwcyBvciBjYXRlZ29yaWVzIGFjY29yZGluZyB0byBlc3RhYmxpc2hlZCBjcml0ZXJpYS48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDMwIj5Db21tdW5pY2F0aW9uIE1pZGRsZXdhcmU8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOSI+SXQgaXMgYW4g4oCcPHNwYW4gY2xhc3M9IlQyMyI+YXBwbGljYXRpb248L3NwYW4+4oCdIHRoYXQgaW5zaWRlIHRoZSDigJw8c3BhbiBjbGFzcz0iVDIzIj5zaW11bGF0b3I8L3NwYW4+4oCdIHRha2VzIGluIGNoYXJnZSB0aGUgY29tbXVuaWNhdGlvbnMgYmV0d2VlbiB0aGUg4oCcPHNwYW4gY2xhc3M9IlQyMyI+cm9ib3RpYyBtaWRkbGV3YXJlPC9zcGFuPuKAnSBhbmQgdGhlIOKAnDxzcGFuIGNsYXNzPSJUMjMiPmVudmlyb25tZW50IHNpbXVsYXRvcjwvc3Bhbj7igJ08L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQwIj5Db21tdW5pY2F0aW9uIFN5c3RlbTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDIyIj48c3BhbiBjbGFzcz0iVDM1Ij5BIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDI0Ij5jb21tdW5pY2F0aW9uIHN5c3RlbTwvc3Bhbj48c3BhbiBjbGFzcz0iVDM1Ij4gaXMgdXNlZCB0byBleGNoYW5nZSBkYXRhIChmaWxlcywgbWVzc2FnZXMsIG9yZGVycywgc3RhdHVzLGV0Yy4pIGluIHRleHQsIGF1ZGlvIGFuZC9vciB2aWRlbyBvciBvdGhlciBtb3JlIG9yIGxlc3Mgc3BlY2lmaWMgZm9ybWF0cyBiZXR3ZWVuIGRpZmZlcmVudCBjb21wdXRlcnMsIHRhc2tzLCB1c2VycyBhbmQvb3IgYWdlbnRzLjwvc3Bhbj48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQwIj5Db25maWd1cmF0aW9uPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjkiPkEgY29uZmlndXJhdGlvbiBpcyBjb21wb3NlZCBvZjo8L3A+PHAgY2xhc3M9IlAyOSI+LSBpbml0aWFsIHN0YXRlIG9mIHRoZSBwcm9ibGVtIGFuZCBzb2x1dGlvbjwvcD48cCBjbGFzcz0iUDI5Ij4tIGxpc3Qgb2YgZXh0ZXJuYWwgbW9kdWxlIGxpYnJhcmllczwvcD48cCBjbGFzcz0iUDI5Ij4tIHByb2JlIGRlZmluaXRpb25zIDwvcD48cCBjbGFzcz0iUDI5Ij4tIHNpbXVsYXRvciBhbmQgbWlkZGxld2FyZSBjaG9pY2VzPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MCI+Q29udHJvbCBzdGF0aW9uPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjkiPkEgPHNwYW4gY2xhc3M9IlQyMSI+Y29udHJvbCBzdGF0aW9uPC9zcGFuPiAoQ1MpIGlzIGEgY29udHJvbCBjZW50cmUgdGhhdCBwcm92aWRlcyB0aGUgZmFjaWxpdGllcyBmb3IgaHVtYW4gY29udHJvbCBvZiByb2JvdHMgaW4gdGhlIDxzcGFuIGNsYXNzPSJUMjMiPkVudmlyb25tZW50PC9zcGFuPi4gPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MSI+RGV0ZWN0aW9uPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjYiPkF0b21pY1N5c3RlbTpQaHlzaWNEZXZpY2U6U2Vuc29ySGFyZHdhcmU6T2JqZWN0RGV0ZWN0aW9uU3lzdGVtIC0gSGFyZHdhcmUgZm9yIHRoZSBkZXRlY3Rpb24gb2YgcGh5c2ljYWwgZW50aXRpZXMgaW4gdGhlIHN1cnJvdW5kaW5nIGVudmlyb25tZW50LiBUZWxlbWV0ZXIgbGFzZXIsIFJhZGFyLCBldGMuLi48L3A+PHAgY2xhc3M9IlAyNiI+PHNwYW4gY2xhc3M9IlQzMyI+TWVycmlhbSBXZWJzdGVyICZhbXA7IFJhbmRvbSBIb3VzZSBEaWN0aW9uYXJ5Ojwvc3Bhbj4gVGhlIGFjdCBvZiBkZXRlY3RpbmcgPHNwYW4gY2xhc3M9IlQzNCI+74OoPC9zcGFuPiBEZXRlY3Rpbmc6IHRvIGRpc2NvdmVyIG9yIGRldGVybWluZSB0aGUgZXhpc3RlbmNlLCBwcmVzZW5jZSBvciBmYWN0IG9mLjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDEiPkVudmlyb25tZW50PC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjYiPjxzcGFuIGNsYXNzPSJUMzAiPlRoZSBFbnZpcm9ubWVudDwvc3Bhbj48c3BhbiBjbGFzcz0iVDI5Ij4gZ3JvdXBzIGV2ZXJ5dGhpbmcgdGhhdCBleGlzdC4gTm90aGluZyBpcyBvdXRzaWRlIGFuZCBldmVyeXRoaW5nIGxpdmVzIGluIGl0LiBBbiBhbGlhcyBmb3IgZW52aXJvbm1lbnQgY291bGQgYmUgVW5pdmVyc2Ugb3IgV29ybGQgaW4gYW4gb250b2xvZ3kgbWVhbmluZy4gVGhpcyBpcyB0aGUgaGlnaGVzdCBwb3NzaWJsZSAiY29udGFpbmVyIiBmb3IgdGhlIHBoeXNpY2FsIG9iamVjdHMgdG8gZXhpc3QuIENvbnNpZGVyaW5nIHRoZSBzY2VuYXJpbyB0byBiZSByZXByZXNlbnRlZCB1c2luZyB0aGlzIGNvbmNlcHQgaXQgZXhwcmVzc2VzIGFsc28gdGhlIGJvdW5kYXJ5IHdlIGltYWdpbmUgZm9yIHRoZSBwcm9ibGVtLiBBcyBhbiBleGFtcGxlLCBmb3IgYSBtb2JpbGUgb24gZ3JvdW5kIHJvYm90IHRoZXJlIGlzIG5vIG5lZWQgdG8gcmVwcmVzZW50IGFueXRoaW5nIGNvbmNlcm5pbmcgd2F0ZXIuIFRoZSBkaWZmZXJlbmNlIGJldHdlZW4gcGh5c2ljYWwgb2JqZWN0cyBhbmQgdGhlIGVudmlyb25tZW50IGlzIHRoYXQgdGhlIFBoeXNpY2FsIEludGVyYWN0aW9uIGFyZSBwYXJ0IG9ubHkgb2YgdGhlIGxhdHRlciBhbmQgcHJvcGFnYXRlZCBpbnRvIGl0Ljwvc3Bhbj48L3A+PHAgY2xhc3M9IlAzNSI+SW1wb3J0YW50IHJlbWFyayA6IFBsZWFzZSBiZSBjYXJlIGluIHVzaW5nIHRoZSBjb21wbGV0ZSBhbmQgcmlnaHQgZm9ybXVsYXRpb24gd2hlbiB5b3UgaGF2ZSB0byBzcGVhayBhYm91dCBzcGVjaWZpYyBlbnZpcm9ubWVudHMgYXMgRW52aXJvbm1lbnQgU2ltdWxhdG9yLCBTb2Z0d2FyZSBEZXZlbG9wbWVudCBFbnZpcm9ubWVudCBvciBhbnkgb3RoZXIgZXF1aXZhbGVudCBpdGVtcy4gVGhlIHdvcmQgRW52aXJvbm1lbnQgdXNlZCBhbG9uZSBvbmx5IHJlZmVycyB0byB0aGUgc3Vycm91bmRpbmcgb2YgdGhlIHN5c3RlbXM6IG5hdHVyYWwsIGFydGlmaWNpYWwsIGh1bWFuLCBhbmltYWwsIHBsYW50LCBtaW5lcmFsLCBvciBhbnkgaXRlbXMgdGhhdCBtYXkgaW50ZXJhY3Qgd2l0aCB0aGUgcm9ib3QuPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlAzMCI+RW52aXJvbm1lbnQgU2ltdWxhdG9yPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjkiPkl0IGlzIGFuIOKAnDxzcGFuIGNsYXNzPSJUMjMiPmFwcGxpY2F0aW9uPC9zcGFuPuKAnSB0aGF0IGluc2lkZSB0aGUg4oCcPHNwYW4gY2xhc3M9IlQyMyI+c2ltdWxhdG9yPC9zcGFuPuKAnSB0YWtlcyBpbiBjaGFyZ2Ugd2hhdGV2ZXIgaXMgbm90IHRoZSDigJw8c3BhbiBjbGFzcz0iVDIzIj5yb2JvdChzKScgc3lzdGVtPC9zcGFuPuKAnS48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQwIj5FdmFsdWF0aW9uPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjkiPlRoZSBldmFsdWF0aW9uIG9mIGEgc29sdXRpb24gY29uc2lzdHMgaW4gYXBwbHlpbmcgdGhlIG1ldHJpY3MgdG8gdGhlIHJlc3VsdHMgb2Ygb25lIG9yIG1vcmUgZXhlY3V0aW9ucyAoZWFjaCBleGVjdXRpb24gY29ycmVzcG9uZHMgdG8gYSBjb25maWd1cmF0aW9uKTwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDAiPkV4dGVybmFsIENvbW11bmljYXRpb248L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyMCI+QW4gPHNwYW4gY2xhc3M9IlQyMyI+ZXh0ZXJuYWwgY29tbXVuaWNhdGlvbnMgc3lzdGVtPC9zcGFuPiBpcyBhIGNvbGxlY3Rpb24gb2YgaW5kaXZpZHVhbCBjb21tdW5pY2F0aW9ucyBuZXR3b3JrcywgdHJhbnNtaXNzaW9uIHN5c3RlbXMsIHJlbGF5IHN0YXRpb25zLCB0cmlidXRhcnkgc3RhdGlvbnMsIGFuZCBkYXRhIHRlcm1pbmFsIGVxdWlwbWVudCAoRFRFKSB1c3VhbGx5IGNhcGFibGUgb2YgaW50ZXJjb25uZWN0aW9uIGFuZCBpbnRlcm9wZXJhdGlvbiB0byBmb3JtIGFuIGludGVncmF0ZWQgd2hvbGUuIFRoZSBjb21wb25lbnRzIG9mIGEgY29tbXVuaWNhdGlvbnMgc3lzdGVtIHNlcnZlIGEgY29tbW9uIHB1cnBvc2UsIGFyZSB0ZWNobmljYWxseSBjb21wYXRpYmxlLCB1c2UgY29tbW9uIHByb2NlZHVyZXMsIHJlc3BvbmQgdG8gY29udHJvbHMsIGFuZCBvcGVyYXRlIGluIHVuaXNvbi48L3A+PHAgY2xhc3M9IlAyMSI+VGhlcmUgYXJlIHVzZWQgdG8gdHJhbnNtaXQgb3JkZXIsIHN0YXR1cywgZGF0YSBhbmQvb3IgdmlkZW8gc2lnbmFscyBiZXR3ZWVuIE1vYmlsIFBsYXRmb3JtKHMpIGFuZC9vciBPcGVyYXRvciBDb250cm9sIFVuaXQocyk8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQwIj5GcmFtZXdvcms8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOSI+QSBpbmNvbXBsZXRlIHNvZnR3YXJlIGVudGl0eSB0aGF0IGFsbG93cyB0byBidWlsZCBhbiA8c3BhbiBjbGFzcz0iVDIzIj5hcHBsaWNhdGlvbjwvc3Bhbj48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQxIj5HdWlkYW5jZTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI2Ij48c3BhbiBjbGFzcz0iVDMiPk1lcnJpYW0gV2Vic3Rlcjwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ3Ij7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gVGhlIGFjdCBvciBwcm9jZXNzIG9mIGd1aWRpbmcgPC9zcGFuPjxzcGFuIGNsYXNzPSJUNyI+74OoPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+IEd1aWRpbmc6IHRvIGFjdCBhcyBhIGd1aWRlIHRvIGRpcmVjdCBpbiBhIHdheSBvciBjb3Vyc2UuIEEgZGV2aWNlIGZvciBzdGVhZHlpbmcgb3IgZGlyZWN0aW5nIHRoZSBtb3Rpb24gb2Ygc29tZXRoaW5nLjwvc3Bhbj48L3A+PHAgY2xhc3M9IlAyNiI+PHNwYW4gY2xhc3M9IlQzMyI+UmFuZG9tIEhvdXNlIERpY3Rpb25hcnkgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTciPu+DqCA8L3NwYW4+VGhlIHByb2Nlc3MgYnkgd2hpY2ggdGhlIGZsaWdodCBvZiBhIG1pc3NpbGUgb3Igcm9ja2V0IG1heSBiZSBhbHRlcmVkIGluIHNwZWVkIGFuZCBkaXJlY3Rpb24gaW4gcmVzcG9uc2UgdG8gY29udHJvbHMgc2l0dWF0ZWQgZWl0aGVyIHdob2xseSBpbiB0aGUgcHJvamVjdGlsZSBvciBwYXJ0bHkgYXQgYSBiYXM8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQxIj5JZGVudGlmaWNhdGlvbjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI2Ij48c3BhbiBjbGFzcz0iVDUiPlJhbmRvbSBIb3VzZSBEaWN0aW9uYXJ5PC9zcGFuPjxzcGFuIGNsYXNzPSJUOCI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDciPu+DqDwvc3Bhbj48c3BhbiBjbGFzcz0iVDE2Ij4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUOSI+QW4gYWN0IG9yIGluc3RhbmNlIG9mIGlkZW50PC9zcGFuPjxzcGFuIGNsYXNzPSJUMTAiPmk8L3NwYW4+PHNwYW4gY2xhc3M9IlQ5Ij5meWluZzwvc3Bhbj48c3BhbiBjbGFzcz0iVDgiPiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ3Ij7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQ5Ij5JZGVudGlmeWluZzogdG8gcmVjb2duaXplIG9yIGVzdGFibGlzaCBhcyBiZWluZyBhIHBhcnRpY3VsYXIgcGVyc29uLCBjb21wb25lbnQgb3I8L3NwYW4+PHNwYW4gY2xhc3M9IlQxIj4gdGhpbmcuPC9zcGFuPjwvcD48cCBjbGFzcz0iUDI2Ij48c3BhbiBjbGFzcz0iVDMzIj5NZXJyaWFtIFdlYnN0ZXI8L3NwYW4+PHNwYW4gY2xhc3M9IlQyMiI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDE3Ij7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQxOSI+IDwvc3Bhbj5BbiBhY3Qgb2YgaWRlbnRpZnlpbmcgPHNwYW4gY2xhc3M9IlQzNCI+74OoPC9zcGFuPiBJZGVudGlmeWluZyA6IHRvIGVzdGFibGlzaCB0aGUgaWRlbnRpdHkgb2Y8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQyIj5MZXZlbHMgb2YgQ29nbml6YW5jZTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI2Ij48c3BhbiBjbGFzcz0iVDMiPkpQUiAmYW1wOyBBTEZVUzwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ2Ij7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj5UaGUgbGV2ZWxzIG9mIHdoYXQgYSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMiI+VU1TIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPmNhbiBrbm93IG9yIHVuZGVyc3RhbmQgYmFzZWQgb24gaXRzIHNlbnNvcnkgcHJvY2Vzc2luZyBjYXBhYmlsaXR5Ljwvc3Bhbj48L3A+PHAgY2xhc3M9IlAyNiI+VGhyZWUgbGV2ZWxzIGFyZSBkZWZpbmVkIGluIFBST1RFVVMgKDxzcGFuIGNsYXNzPSJUMjIiPlJhdyBkYXRhPC9zcGFuPiwgPHNwYW4gY2xhc3M9IlQyMiI+UGh5c2ljYWwgbGV2ZWw8L3NwYW4+IGFuZCA8c3BhbiBjbGFzcz0iVDIyIj5BcHBsaWNhdGlvbiBsZXZlbDwvc3Bhbj4pPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MiI+TGV2ZWxzIG9mIEZ1c2lvbjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI2Ij48c3BhbiBjbGFzcz0iVDMzIj5KUFIgJmFtcDsgQUxGVVM8L3NwYW4+IDxzcGFuIGNsYXNzPSJUMzQiPu+DqDwvc3Bhbj4gRnVzaW9uIGRhdGEgcHJvY2Vzc2luZyB0YXNrcyBkZWNvbXBvc2l0aW9uLiBFYWNoIG9mIHRoZSBkZWZpbmVkIGxldmVscyBvZiBmdXNpb24gYWRkcyBwcm9ncmVzc2l2ZWx5IGdyZWF0ZXIgbWVhbmluZyBhbmQgaW52b2x2ZXMgbW9yZSBBbmFseXNpcy4gVGhlIG51bWJlcnMgb2YgZnVzaW9uIGxldmVscyBhbmQgdGhlaXIgbWVhbmluZyBpcyBjdXJyZW50bHkgbm90IGRlZmluZWQgaW4gUFJPVEVVUzwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDIiPkxldmVscyBvZiBQZXJjZXB0aW9uPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjYiPjxzcGFuIGNsYXNzPSJUMzMiPkpQUiAmYW1wOyBBTEZVUyA8L3NwYW4+PHNwYW4gY2xhc3M9IlQyNSI+74OoPC9zcGFuPiBUaGUgcHJvZ3Jlc3NpdmUgcmVzdWx0cyBvZiBzZW5zb3J5IGluZm9ybWF0aW9uIGFmdGVyIHRoZSBkYXRhIGhhdmUgZ29uZSB0aHJvdWdoIG11bHRpcGxlIGxldmVscyBvZiBzZW5zb3J5IHByb2Nlc3NpbmcuIFRoZSBudW1iZXJzIG9mIExldmVscyBvZiBwZXJjZXB0aW9uIGFuZCB0aGVpciBkZWZpbml0aW9uIGlzIGN1cnJlbnRseSBub3QgZGVmaW5lZCBpbiBQUk9URVVTPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MiI+TG9jYWxpc2F0aW9uPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjYiPlNlZSBvbnRvbG9neSDigJMgc3lzdGVtOnJvYm90aWNTdWJTeXN0ZW06ZGV2aWNlU3lzdGVtOnNlbnNvclN5c3RlbTpsb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0gKG5vIGRlZi4pPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlAzMCI+TWV0cmljPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjkiPkEg4oCcPHNwYW4gY2xhc3M9IlQyMyI+bWV0cmljPC9zcGFuPuKAnSBpcyB0aGUgY29tcG9zaXRpb24gb2Ygb25lIG9yIG11bHRpcGxlIOKAnDxzcGFuIGNsYXNzPSJUMjMiPnByb2Jlczwvc3Bhbj7igJ0nIHJlY29yZGluZ3MgYXNzb2NpYXRlZCB0byBhIHZhbGlkaXR5IGRvbWFpbiBpbiBvcmRlciB0byBhbGxvdyBhIG1lYXN1cmUgb2YgwqBwZXJmb3JtYW5jZXMuIEEg4oCcPHNwYW4gY2xhc3M9IlQyMyI+bWV0cmljPC9zcGFuPuKAnSBjYW4gYmUgcmVsYXRlZCB0byBtdWx0aXBsZSByZWNvcmRzIHByb3ZpZGVkIGJ5IG11bHRpcGxlIOKAnDxzcGFuIGNsYXNzPSJUMjMiPnNpbXVsYXRpb25zPC9zcGFuPuKAnS4gVGhpcyBpcyBvZnRlbiB0aGUgY2FzZSBvZiBzdGF0aXN0aWNhbCBhcHByb2FjaCB0byBhc3Nlc3NtZW50LjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDMiPk1pc3Npb248L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNiI+PHNwYW4gY2xhc3M9IlQzMyI+SlBSICZhbXA7IEFMRlVTPC9zcGFuPiA8c3BhbiBjbGFzcz0iVDM0Ij7vg6g8L3NwYW4+IFRoZSBoaWdoZXN0LWxldmVsIHRhc2sgYXNzaWduZWQgdG8gdGhlIFVNUy48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQzIj48c3BhbiBjbGFzcz0iVDE2Ij5NaXNzaW9uPC9zcGFuPiA8c3BhbiBjbGFzcz0iVDE2Ij5Db29yZGluYXRpb248L3NwYW4+PC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjYiPjxzcGFuIGNsYXNzPSJUMzMiPkpQUiAmYW1wOyBBTEZVUzwvc3Bhbj4gPHNwYW4gY2xhc3M9IlQzNCI+74OoPC9zcGFuPiBDb29yZGluYXRpb24gYW5kIHRpbWluZyBtYW5hZ2VtZW50IG9mIHRoZSA8c3BhbiBjbGFzcz0iVDIyIj5Nb3Rpb24gUGxhbm5pbmc8L3NwYW4+IGFuZCB0aGUgPHNwYW4gY2xhc3M9IlQyMiI+TWlzc2lvbiBQYXlsb2FkPC9zcGFuPiBkdXJpbmcgdGhlIDxzcGFuIGNsYXNzPSJUMjIiPk1pc3Npb24gZXhlY3V0aW9uICZhbXA7IENvbnRyb2w8L3NwYW4+PC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MyI+PHNwYW4gY2xhc3M9IlQxNiI+TWlzc2lvbjwvc3Bhbj4gPHNwYW4gY2xhc3M9IlQxNiI+RXhlY3V0aW9uICZhbXA7IENvbnRyb2w8L3NwYW4+PC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjYiPjxzcGFuIGNsYXNzPSJUMzMiPkpQUiAmYW1wOyBBTEZVUzwvc3Bhbj4gPHNwYW4gY2xhc3M9IlQzNCI+74OoPC9zcGFuPiBJdCBpcyBpbiBjaGFyZ2Ugb2YgdGhlIGV4ZWN1dGlvbiBhbmQgdGhlIGNvbnRyb2wgb2YgdGhlIDxzcGFuIGNsYXNzPSJUMjIiPk1pc3Npb24gUGxhbi48L3NwYW4+PC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MyI+PHNwYW4gY2xhc3M9IlQxNiI+TWlzc2lvbjwvc3Bhbj4gPHNwYW4gY2xhc3M9IlQxNiI+TW9kdWxlPC9zcGFuPjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI2Ij5TZWUgTWlzc2lvbiBQYXlsb2FkPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MyI+PHNwYW4gY2xhc3M9IlQxNiI+TWlzc2lvbjwvc3Bhbj4gPHNwYW4gY2xhc3M9IlQxNiI+UGF5bG9hZDwvc3Bhbj48L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNiI+U2VlIE1pc3Npb24gTW9kdWxlPC9wPjxwIGNsYXNzPSJQMjYiPjxzcGFuIGNsYXNzPSJUMzMiPkpQUiAmYW1wOyBBTEZVUzwvc3Bhbj4gPHNwYW4gY2xhc3M9IlQzNCI+74OoPC9zcGFuPiA8c3BhbiBjbGFzcz0iVDIyIj5QYXlsb2FkPC9zcGFuPihzKSB0byBiZSB1c2VkIHRvIGNvbXBsZXRlIGEgc3BlY2lmaWMgPHNwYW4gY2xhc3M9IlQyMiI+TWlzc2lvbjwvc3Bhbj4uPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MyI+PHNwYW4gY2xhc3M9IlQxNiI+TWlzc2lvbjwvc3Bhbj4gPHNwYW4gY2xhc3M9IlQxNiI+UGxhbjwvc3Bhbj48L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNiI+PHNwYW4gY2xhc3M9IlQzIj5KUFIgJmFtcDsgQUxGVVM8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTEiPu+DqDwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiBmaWxlIGRlc2NyaWJpbmcgdGhlIHRhc2tzIHRvIGJlIGRvbmUgYW5kIHRoZSByZWxhdGlvbnNoaXBzIGJldHdlZW4gdGhlc2UgdGFza3MgVGhlIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDEyIj5NaXNzaW9uIFBsYW4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+Y2FuIGJlIGdlbmVyYXRlZCBlaXRoZXIgaW4gYWR2YW5jZSBieSBvcGVyYXRvcnMgb24gYW4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTIiPk9DVTwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiBvciBpbiByZWFsLXRpbWUgYnkgdGhlIG9uIGJvYXJkLCBldmVudHVhbGx5IGRpc3RyaWJ1dGVkIHNvZnR3YXJlIHN5c3RlbXMuIFRoZSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMiI+TWlzc2lvbiBQYW48L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gaXMgdGhlIG1haW4gaW5wdXQgPC9zcGFuPmZvcjxzcGFuIGNsYXNzPSJUMiI+IHRoZSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMiI+TWlzc2lvbiBFeGVjdXRpb24gJmFtcDsgQ29udHJvbDwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPi4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+VGhlPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTIiPiBNaXNzaW9uIFBsYW48L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gYWRkcmVzcyB0aGUgdGhyZWUgZm9sbG93aW5nIHRhc2s6PC9zcGFuPjwvcD48dWw+PGxpPjxwIGNsYXNzPSJQNDYiIHN0eWxlPSJtYXJnaW4tbGVmdDowY207Ij48c3BhbiBjbGFzcz0iQnVsbGV0XzIwX1N5bWJvbHMiIHN0eWxlPSJkaXNwbGF5OmJsb2NrO2Zsb2F0OmxlZnQ7bWluLXdpZHRoOjBjbSI+4oCiLjwvc3Bhbj5Nb3Rpb24gUGxhbm5pbmc8c3BhbiBjbGFzcz0ib2RmTGlFbmQiLz7CoDwvcD48L2xpPjxsaT48cCBjbGFzcz0iUDQ2IiBzdHlsZT0ibWFyZ2luLWxlZnQ6MGNtOyI+PHNwYW4gY2xhc3M9IkJ1bGxldF8yMF9TeW1ib2xzIiBzdHlsZT0iZGlzcGxheTpibG9jaztmbG9hdDpsZWZ0O21pbi13aWR0aDowY20iPuKAoi48L3NwYW4+TWlzc2lvbiBQYXlsb2FkPHNwYW4gY2xhc3M9Im9kZkxpRW5kIi8+wqA8L3A+PC9saT48bGk+PHAgY2xhc3M9IlA0NiIgc3R5bGU9Im1hcmdpbi1sZWZ0OjBjbTsiPjxzcGFuIGNsYXNzPSJCdWxsZXRfMjBfU3ltYm9scyIgc3R5bGU9ImRpc3BsYXk6YmxvY2s7ZmxvYXQ6bGVmdDttaW4td2lkdGg6MGNtIj7igKIuPC9zcGFuPk1pc3Npb24gQ29vcmRpbmF0aW9uPHNwYW4gY2xhc3M9Im9kZkxpRW5kIi8+wqA8L3A+PC9saT48L3VsPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MyI+PHNwYW4gY2xhc3M9IlQxNiI+TWlzc2lvbjwvc3Bhbj4gPHNwYW4gY2xhc3M9IlQxNiI+UGxhbm5pbmc8L3NwYW4+PC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjYiPjxzcGFuIGNsYXNzPSJUMyI+SlBSICZhbXA7IEFMRlVTPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDExIj7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gVGhlIG1pc3Npb24gcGxhbm5pbmcgaXMgdGhlIHByb2Nlc3MgdXNlZCB0byBnZW5lcmF0ZSB0YWN0aWNhbCBnb2FscywgYSByb3V0ZSAoZ2VuZXJhbCBvciBzcGVjaWZpYyksIGNvbW1hbmRpbmcgc3RydWN0dXJlLCBjb29yZGluYXRpb24sIGFuZCB0aW1pbmcgZm9yIG9uZSBvciB0ZWFtcyBvZiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMiI+VU1TPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+cy4gVGhlIHJlc3VsdCBvZiB0aGUgTWlzc2lvbiBQbGFubmluZyBpcyBhIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDEyIj5NaXNzaW9uIFBsYW48L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4uIFRoZSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMiI+TWlzc2lvbiBQbGFubmluZzwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiBpbnZvbHZlcyB0d28gbWFpbiBzdWIgZnVuY3Rpb25zOjwvc3Bhbj48L3A+PHVsPjxsaT48cCBjbGFzcz0iUDQ3IiBzdHlsZT0ibWFyZ2luLWxlZnQ6MGNtOyI+PHNwYW4gY2xhc3M9IkJ1bGxldF8yMF9TeW1ib2xzIiBzdHlsZT0iZGlzcGxheTpibG9jaztmbG9hdDpsZWZ0O21pbi13aWR0aDowY20iPuKAoi48L3NwYW4+TWlzc2lvbiBQcmVwYXJhdGlvbjxzcGFuIGNsYXNzPSJvZGZMaUVuZCIvPsKgPC9wPjwvbGk+PGxpPjxwIGNsYXNzPSJQNDciIHN0eWxlPSJtYXJnaW4tbGVmdDowY207Ij48c3BhbiBjbGFzcz0iQnVsbGV0XzIwX1N5bWJvbHMiIHN0eWxlPSJkaXNwbGF5OmJsb2NrO2Zsb2F0OmxlZnQ7bWluLXdpZHRoOjBjbSI+4oCiLjwvc3Bhbj5NaXNzaW9uIEV4ZWN1dGlvbiAmYW1wOyBDb250cm9sIDxzcGFuIGNsYXNzPSJvZGZMaUVuZCIvPsKgPC9wPjwvbGk+PC91bD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDMiPjxzcGFuIGNsYXNzPSJUMTYiPk1pc3Npb248L3NwYW4+IDxzcGFuIGNsYXNzPSJUMTYiPlByZXBhcmF0aW9uPC9zcGFuPjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI2Ij48c3BhbiBjbGFzcz0iVDMiPkpQUiAmYW1wOyBBTEZVUzwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMSI+74OoPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+IEl0IGdlbmVyYXRlcyB0aGUgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTIiPk1pc3Npb24gUGxhbjwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiB1c2VkIHRvIGRlc2NyaWJlIHRoZSBlbnRpcmUgdGFza3MgdG8gYmUgZG9uZSBpbiBvcmRlciB0byBleGVjdXRlIHRoZSBtaXNzaW9uLiA8L3NwYW4+PC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MiI+TW9iaWxpdHk8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNiI+PHNwYW4gY2xhc3M9IlQzIj5KUFIgJmFtcDsgQUxGVVM8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTEiPu+DqDwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiBUaGUgY2FwYWJpbGl0eSBvZiBhIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDEyIj5VTVM8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gdG8gbW92ZSBmcm9tIHBsYWNlIHRvIHBsYWNlLCB3aXRoIGl0cyBvd24gcG93ZXIgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+YW5kIHdoaWxlIHVuZGVyIGFueSBtb2RlIG9yIG1ldGhvZCBvZiBjb250cm9sLiBUaGlzIGZ1bmN0aW9uIHJlY2VpdmUgaGlnaCBsZXZlbCwgbW90aW9uIHNldCBwb2ludHMgZXhwcmVzc2VkIGluIHRlcm0gb2Ygc3BlZWQsIHN0ZWVyIG9yIGVxdWl2YWxlbnQgYW5kIGNvbXB1dGUgdGhlIHBoeXNpY2FsIGFjdHVhdG9ycyBzZXRzIHBvaW50cyBhY2NvcmRpbmcgdG8gdGhlIGFkZHJlc3NlZCBwbGF0Zm9ybS48L3NwYW4+PC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MiI+TW90aW9uIFBsYW48L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNiI+PHNwYW4gY2xhc3M9IlQzMyI+SlBSICZhbXA7IEFMRlVTPC9zcGFuPiA8c3BhbiBjbGFzcz0iVDM0Ij7vg6g8L3NwYW4+IEl0IGluY2x1ZGVzIHRoZSByZXN1bHRzIG9mIHRoZSA8c3BhbiBjbGFzcz0iVDIyIj5Nb3Rpb24gUGxhbm5pbmc8L3NwYW4+IGFuZCBpdCBpcyB1c2VkIGFzIGlucHV0IGJ5IHRoZSA8c3BhbiBjbGFzcz0iVDIyIj5HdWlkYW5jZTwvc3Bhbj4uPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MiI+TW90aW9uIFBsYW5uaW5nPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjYiPlNlZSBUcmFqZWN0b3J5IHBsYW5uaW5nPC9wPjxwIGNsYXNzPSJQMjYiPjxzcGFuIGNsYXNzPSJUMyI+SlBSICZhbXA7IEFMRlVTIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDEzIj7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gRGVmaW5lIHRoZSByb3V0ZSAoZ2VuZXJhbCBvciBzcGVjaWZpYykgdG8gYmUgdXNlZCBmb3IgZG9pbmcgdGhlIG1pc3Npb24uIFRoZSByb3V0ZSBkZXNjcmlwdGlvbiBhbmQgY2hhcmFjdGVyaXN0aWNzIGlzIHN0b3JlZCBpbiB0aGUgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTIiPk1vdGlvbiBQbGFuLjwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiA8L3NwYW4+PC9wPjx1bD48bGk+PHAgY2xhc3M9IlA0OCIgc3R5bGU9Im1hcmdpbi1sZWZ0OjBjbTsiPjxzcGFuIGNsYXNzPSJCdWxsZXRfMjBfU3ltYm9scyIgc3R5bGU9ImRpc3BsYXk6YmxvY2s7ZmxvYXQ6bGVmdDttaW4td2lkdGg6MGNtIj7igKIuPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+VGhlIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDEyIj5Nb3Rpb25zPC9zcGFuPjxzcGFuIGNsYXNzPSJUMiI+IHRvIGJlIHVzZWQgKHJvdXRlLCBnZW5lcmFsIG9yIHNwZWNpZmljLCB0byBiZSB1c2VkIGZvciBkb2luZyB0aGUgbWlzc2lvbikuPC9zcGFuPjxzcGFuIGNsYXNzPSJvZGZMaUVuZCIvPsKgPC9wPjwvbGk+PGxpPjxwIGNsYXNzPSJQNDgiIHN0eWxlPSJtYXJnaW4tbGVmdDowY207Ij48c3BhbiBjbGFzcz0iQnVsbGV0XzIwX1N5bWJvbHMiIHN0eWxlPSJkaXNwbGF5OmJsb2NrO2Zsb2F0OmxlZnQ7bWluLXdpZHRoOjBjbSI+4oCiLjwvc3Bhbj5Ib3cgdGhlc2UgTW90aW9ucyBoYXZlIHRvIGJlIHVzZWQ8c3BhbiBjbGFzcz0ib2RmTGlFbmQiLz7CoDwvcD48L2xpPjxsaT48cCBjbGFzcz0iUDQ4IiBzdHlsZT0ibWFyZ2luLWxlZnQ6MGNtOyI+PHNwYW4gY2xhc3M9IkJ1bGxldF8yMF9TeW1ib2xzIiBzdHlsZT0iZGlzcGxheTpibG9jaztmbG9hdDpsZWZ0O21pbi13aWR0aDowY20iPuKAoi48L3NwYW4+VGhlIHBhcmFtZXRlcnMgYW5kIGNvbnN0cmFpbnRzIGFzc29jaWF0ZWQgdG8gdGhlIHNlbGVjdGVkIDxzcGFuIGNsYXNzPSJUMjIiPk1vdGlvbjwvc3Bhbj5zLjxzcGFuIGNsYXNzPSJvZGZMaUVuZCIvPsKgPC9wPjwvbGk+PC91bD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDIiPk1vdG9yaXNhdGlvbiBTeXN0ZW08L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNiI+PHNwYW4gY2xhc3M9IlQyMyI+RWxlY3Ryb21lY2hhbmljYWwgPC9zcGFuPnN5c3RlbSwgaW5jbHVkaW5nIDxzcGFuIGNsYXNzPSJUMjciPm1vdG9ycyw8L3NwYW4+IDxzcGFuIGNsYXNzPSJUMjgiPnJlZHVjZXJzLCA8L3NwYW4+PHNwYW4gY2xhc3M9IlQyNyI+bWVjaGFuaWNhbCB0cmFuc21pc3Npb25zPC9zcGFuPiBhbmQgPHNwYW4gY2xhc3M9IlQyNyI+c29mdHdhcmUgZHJpdmVyczwvc3Bhbj4gdXNlZCB0byA8c3BhbiBjbGFzcz0iVDIzIj5tb3ZlIHRoZSByb2JvdCBvciBhIHBhcnQgb2YgaXQuPC9zcGFuPjxzcGFuIGNsYXNzPSJUMSI+IEl0IGhhcyB0byBiZSBjbGVhcmx5IGRpZmZlcmVudGlhdGVkIGZyb20gb3RoZXIgZW1iZWRkZWQ8L3NwYW4+PHNwYW4gY2xhc3M9IlQyMyI+IEFjdHVhdG9ycyBTeXN0ZW1zLjwvc3Bhbj48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQyIj5PbnRvbG9neTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI2Ij5EYXRhIG9iZXlpbmcgdGhlIFczQyBzdGFuZGFyZCBhbmQgdXNlZCB0byByZXByZXNlbnQga25vd2xlZGdlczwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDIiPlBheWxvYWQ8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNiI+PHNwYW4gY2xhc3M9IlQ1Ij5XaWtpcGVkaWE8L3NwYW4+PHNwYW4gY2xhc3M9IlQxNiI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDE5Ij7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQxNiI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDQiPkluIG1pbGl0YXJ5IGFpcmNyYWZ0IG9yIHNwYWNlIGV4cGxvcmF0aW9uLCB0aGUgcGF5bG9hZCBpcyB0aGUgY2FycnlpbmcgY2FwYWNpdHkgb2YgYW4gYWlyY3JhZnQgb3Igc3BhY2Ugc2hpcCwgaW5jbHVkaW5nIGNhcmdvLCB3ZWFwb25zLCBtdW5pdGlvbnMsIHNjaWVudGlmaWMgaW5zdHJ1bWVudHMgb3IgZXhwZXJpbWVudHMuPC9zcGFuPjwvcD48cCBjbGFzcz0iUDI2Ij48c3BhbiBjbGFzcz0iVDIiPkJ5IGV4dGVuc2lvbiDigJw8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMiI+UGF5bG9hZDwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPuKAnSBjYW4gYmUgdXNlZCB0byBuYW1lIGFsbCB0aGUgY2FycmllZCBzeXN0ZW1zIHVzZWQgdG8gY29tcGxldGUgYSBzcGVjaWZpYyBtaXNzaW9uLiBJbiB0aGlzIGNhc2UsIHNjaWVudGlmaWMgaW5zdHJ1bWVudCBvciA8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj5leHBlcmltZW50IGFzIHRvIGJlIHVuZGVyc3Rvb2QgYXMgYW55IGluc3RydW1lbnRzIGZvciBtZWFzdXJlbWVudHMgb3IgYWN0aW9uLCBjYXJyaWVkIG9uIHRoZSByb2JvdGljIHBsYXRmb3JtLjwvc3Bhbj48L3A+PHAgY2xhc3M9IlAyNiI+PHNwYW4gY2xhc3M9IlQzMyI+SlBSICZhbXA7IEFMRlVTIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDI1Ij7vg6g8L3NwYW4+IEEgc2VsZi1jb250YWluZWQgc3Vic3lzdGVtIGluc3RhbGxlZCBvbiBhIFVNUyB0aGF0IGVuYWJsZXMgdGhlIDxzcGFuIGNsYXNzPSJUMjIiPlVNUzwvc3Bhbj4gdG8gcGVyZm9ybSBkZXNpZ25lZCBtaXNzaW9ucy4gSXQgY2FuIGJlIGVhc2lseSBpbnN0YWxsZWQgYW5kIHJlcGxhY2VkIGJ5IGFub3RoZXIgdHlwZSBvZiBtaXNzaW9uIG1vZHVsZTwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDIiPlBheWxvYWQgTGV2ZWw8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNiI+wqA8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQyIj5QZXJjZXB0aW9uPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjYiPjxzcGFuIGNsYXNzPSJUMjAiPldpa2lwZWRpYTwvc3Bhbj48c3BhbiBjbGFzcz0iVDE2Ij4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTkiPu+DqDwvc3Bhbj48c3BhbiBjbGFzcz0iVDE2Ij4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTgiPlBlcmNlcHRpb248L3NwYW4+PHNwYW4gY2xhc3M9IlQxNiI+IGlzIHRoZSBwcm9jZXNzIG9mIGF0dGFpbmluZyBhd2FyZW5lc3Mgb3IgdW5kZXJzdGFuZGluZyDCoG9mPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTgiPiBTZW5zb3J5IEluZm9ybWF0aW9uIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDE2Ij5mcm9tIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDE4Ij5TZW5zb3JzPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTYiPiB0aHJvdWdoIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDE4Ij5TZW5zb3J5IFByb2Nlc3Npbmc8L3NwYW4+PC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MiI+UGh5c2ljYWwgbGV2ZWw8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNiI+PHNwYW4gY2xhc3M9IlQzMyI+SlBSICZhbXA7IEFMRlVTIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDI1Ij7vg6g8L3NwYW4+IGluZm9ybWF0aW9uLiBGdXJ0aGVyIHByb2Nlc3NlZCwgcmVmaW5lZCBhbmQgc3RydWN0dXJlZCBkYXRhIHRoYXQgaXMgaHVtYW4gdW5kZXJzdGFuZGFibGUgKGxlbmd0aCwgYW5nbGUsIGRpc3RhbmNlLCBhbmQgb3RoZXJzIGJhc2ljIHBoeXNpY2FsIGRpbWVuc2lvbnMpPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MiI+UGxhdGZvcm0gTGV2ZWw8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNiI+wqA8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQyIj5QbGF0Zm9ybSBTdXBlcnZpc29yPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjYiPjxzcGFuIGNsYXNzPSJUMiI+SW4gY2hhcmdlIG9mIHRoZSBjb250cm9sIG9mIHRoZSBiZWhhdmlvdXIgb2YgdGhlIHBsYXRmb3JtLiBUaGlzIHN1cGVydmlzb3J5IGZ1bmN0aW9uIGRvZXNu4oCZdCA8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj5kaXJlY3RseSBhZGRyZXNzIHRoZSBzZWN1cml0eSBvZiB0aGUgcGxhdGZvcm0gKFNlZSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxMiI+UGxhdGZvcm0gc2VjdXJpdHk8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4pIGJ1dCB0aGUgbG9naWNhbCBjb25zaXN0ZW5jeSBvZiB0aGUgcGxhdGZvcm0gKHBoeXNpY2FsIHN0YXRlcywgbG9naWNhbCBtb2RlcywgcmVjZWl2ZSBvcmRlcnMpPC9zcGFuPjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDIiPlBsYXRmb3JtIFNlY3VyaXR5PC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjYiPkluIGNoYXJnZSBvZiB0aGUgc2VjdXJpdHkgb2YgdGhlIHBsYXRmb3JtLiBUaGUgYmFzaWMgc2VjdXJpdHkgb2YgdGhlIHBsYXRmb3JtIG11c3QgYmUgZG9uZSB0aHJvdWdoIGFuIGhhcmR3YXJlIHN5c3RlbSAobW9yZSBvciBsZXNzIGNvbXBsZXgpLCBidXQgYXMgd2UgaGF2ZSB0byBmYWNlIHRvIGNvbXBsZXggc3lzdGVtIHdlIGNhbiBjb25zaWRlciB1c2luZyBhIHNwZWNpZmljIHNvZnR3YXJlIGNvbXBvbmVudCBpbiBjaGFyZ2Ugb2YgdGhlIHNlY3VyaXR5IG9mIHRoZSBwbGF0Zm9ybSBhbmQgaW52b2x2aW5nIHNvbWUgZXZlbnRzIG5vdCBkaXJlY3RseSBjb21pbmcgZnJvbSB0aGUg4oCcaGFyZHdhcmUgc2FmZXR5IGNvbXBvbmVudOKAnSBidXQgdGhhdCBjb3VsZCBiZSBnZW5lcmF0ZWQsIGFzIGFuIGV4YW1wbGUsIGJ5IHRoZSBwZXJjZXB0aW9uIChlbmVteSwgZXh0ZXJuYWwgaGF6YXJkKS48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQwIj5Qcm9iZTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI5Ij5BIHByb2JlIG9ic2VydmVzIHRoZSBzdGF0ZSBvZiBzeXN0ZW1zIGFuZCBwcm9kdWNlcyByZXN1bHRzLjwvcD48cCBjbGFzcz0iUDI5Ij5JdCBpcyBvbmUgb2YgdGhlIHRvb2wgb2YgdGhlIOKAnDxzcGFuIGNsYXNzPSJUMjMiPnNpbXVsYXRvcjwvc3Bhbj7igJ0uIEEgc29mdHdhcmUg4oCcPHNwYW4gY2xhc3M9IlQyMyI+cHJvYmXigJ08L3NwYW4+IGlzIGEgZGVmaW5pdGlvbiBvZiB3aGF0IHZhcmlhYmxlcyB3aWxsIGhhdmUgdG8gYmUgYWNjZXNzZWQgd2hlbiBleGVjdXRpbmcgdGhlIOKAnDxzcGFuIGNsYXNzPSJUMjMiPnNpbXVsYXRvcjwvc3Bhbj7igJ0gaW4gb3JkZXIgdG8gcmVjb3JkIHRoZWlyIHZhbHVlcy48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQwIj5Qcm9ibGVtPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjkiPkEgcHJvYmxlbSBpczo8L3A+PHAgY2xhc3M9IlAyOSI+LSB0aGUgZGVmaW5pdGlvbiBvZiB0aGUgYXJjaGl0ZWN0dXJlIG9mIG9uZSBvciBtb3JlIHJvYm90cyBhbmQgdGhlaXIgZW52aXJvbm1lbnQgKGluIG91ciBjYXNlLCB1c2luZyB0aGUgcHJvdGV1cyBtYWluIHRvb2wpOzwvcD48cCBjbGFzcz0iUDI5Ij4tIHRoZSBkZWZpbml0aW9uIGluc2lkZSB0aGUgcm9ib3QocykgYXJjaGl0ZWN0dXJlIG9mIG9uZSBvciBtdWx0aXBsZSBjb21wb25lbnRzIGluIHdoaWNoIGl0IGlzIG5lY2Vzc2FyeSB0byBkZXZlbG9wIOKAnDxzcGFuIGNsYXNzPSJUMjMiPnNvbHV0aW9uczwvc3Bhbj7igJ07PC9wPjxwIGNsYXNzPSJQMjkiPi0gdGhlIGRlZmluaXRpb24gb2YgwqDigJw8c3BhbiBjbGFzcz0iVDIzIj5wcm9iZXM8L3NwYW4+4oCdIHRoYXQgYWxsb3cg4oCcPHNwYW4gY2xhc3M9IlQyMyI+c2ltdWxhdGlvbjwvc3Bhbj7igJ0gZXhwbG9pdGF0aW9uOzwvcD48cCBjbGFzcz0iUDI5Ij4tIHRoZSBkZWZpbml0aW9uIG9mIHRoZSDigJw8c3BhbiBjbGFzcz0iVDIzIj5tZXRyaWNzPC9zcGFuPuKAnSBhbmQgdGhlaXIgYXNzb2NpYXRlZCB2YWxpZGl0eSBkb21haW4gaW4gb3JkZXIgdG8gbWVhc3VyZSB0aGUg4oCcPHNwYW4gY2xhc3M9IlQyMyI+c29sdXRpb27igJ08L3NwYW4+IHF1YWxpdHkgYW5kIGNvbXBhcmUgaXQgdG8gb3RoZXIgPHNwYW4gY2xhc3M9IlQyMyI+4oCcc29sdXRpb25z4oCdLjwvc3Bhbj48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQwIj5Qcm90ZXVzIFNpbXVsYXRvcjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI5Ij5TaW11bGF0b3Igd2hpY2ggaG9zdHMgYSBwcm9ibGVtLjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDIiPlJhdyBEYXRhPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjYiPjxzcGFuIGNsYXNzPSJUMyI+SlBSICZhbXA7IEFMRlVTIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDEzIj7vg6g8L3NwYW4+PHNwYW4gY2xhc3M9IlQyIj4gZGF0YSwgb3Igb2JzZXJ2ZWQgZGF0YS4gSW4gaW5pdGlhbGx5IHByb2Nlc3NlZCBmb3JtcyBhZnRlciBtZWFzdXJlZCBieSBzZW5zb3JzLjwvc3Bhbj48L3A+PHAgY2xhc3M9IlAyNiI+PHNwYW4gY2xhc3M9IlQyMCI+V2lraXBlZGlhPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTYiPiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxOSI+74OoPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTYiPiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxNiI+UmF3IGRhdGEgaXMgYSB0ZXJtIGZvciBkYXRhIGNvbGxlY3RlZCBvbiBzb3VyY2Ugd2hpY2ggaGFzIG5vdCBiZWVuIHN1YmplY3RlZCB0byBwcm9jZXNzaW5nIG9yIGFueSBvdGhlciBtYW5pcHVsYXRpb247IGl0IGlzIGFsc28ga25vd24gYXMgcHJpbWFyeSBkYXRhLiBSYXcgZGF0YSBpcyBkYXRhIHRoYXQgaGFzIG5vdCBiZWVuIGFscmVhZHkgcHJvY2Vzc2VkIGZvciB1c2UsIGJ1dCBpdCBjb3VsZCBoYXZlIGJlZW4gcHJvY2VlZCBpbiBvcmRlciB0byBnZXQgdXNlYWJsZSBhbmQgdW5kZXJzdGFuZGFibGUgdmFsdWUgYXMgdm9sdHMsIGFtcGVyZXMgb3IgYW55IG90aGVyIGJhc2ljIHBoeXNpY2FsIHZhbHVlcyBpbnN0ZWFkIG9mIHNpbXBsZSBiaW5hcnkgb3V0IHNjYWxlIG51bWJlci48L3NwYW4+PC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MiI+UmVjb2duaXRpb248L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNiI+PHNwYW4gY2xhc3M9IlQyMCI+TWVycmlhbSBXZWJzdGVyPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTYiPiDCoCsgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjAiPlJhbmRvbSBIb3VzZSBEaWN0aW9uYXJ5PC9zcGFuPjxzcGFuIGNsYXNzPSJUMTgiPiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxNyI+74OoPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTYiPiBhbiBhY3Qgb2YgcmVjb2duaXppbmcgb3IgdGhlIHN0YXRlIG9mIGJlaW5nIHJlY29nbml6ZWQgLCB0aGUgaWRlbnRpZmljYXRpb24gb2Ygc29tZXRoaW5nIGFzIGhhdmluZyBiZWVuIHByZXZpb3VzbHkgc2VlbiwgaGVhcmQsIGtub3duLCBldGMuLCB0aGVwZXJjZXB0aW9uwqBvZiBzb21ldGhpbmcgYXMgZXhpc3Rpbmcgb3IgdHJ1ZTsgcmVhbGl6YXRpb24gPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTkiPu+DqDwvc3Bhbj48c3BhbiBjbGFzcz0iVDE2Ij4gUmVjb2duaXppbmcgdG8gaWRlbnRpZnkgYXMgc29tZXRoaW5nIG9yIHNvbWVvbmUgcHJldmlvdXNseSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQxNiI+c2Vlbiwga25vd24sIGV0YywgdG8gaWRlbnRpZnkgZnJvbSBrbm93bGVkZ2Ugb2YgYXBwZWFyYW5jZSBvciBjaGFyYWN0ZXJpc3RpY3MsIHRvIHBlcmNlaXZlIGFzIGV4aXN0aW5nIG9yIHRydWU7IHJlYWxpemU6IHRvIGJlIHRoZSBmaXJzdCB0byByZWNvZ25pemUgYSBmYWN0LiA8L3NwYW4+PC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MSI+UmVndWxhdG9yIFN5c3RlbTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDEzIj48c3BhbiBjbGFzcz0iVDI5Ij5BIFI8L3NwYW4+PHNwYW4gY2xhc3M9IlQzMCI+ZWd1bGF0b3I8L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMwIj5TeXN0ZW08L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+IG9yIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMwIj5SZWd1bGF0b3I8L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+IGlzIGEgZGV2aWNlLCBpbmNsdWRpbmcgaGFyZHdhcmUgYW5kIHNvZnR3YXJlLCB3aGljaCBoYXMgdGhlIGZ1bmN0aW9uIG9mIG1haW50YWluaW5nIGFuZCBtb25pdG9yaW5nIGEgZGVzaWduYXRlZCBjaGFyYWN0ZXJpc3RpYyBvZiBhIHN5c3RlbSAoPC9zcGFuPjxzcGFuIGNsYXNzPSJUMzAiPkFjdHVhdG9yPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjkiPiwgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMzAiPk1vdG9yaXNhdGlvbiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+b3IgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMzAiPlNlbnNvciBTeXN0ZW08L3NwYW4+PHNwYW4gY2xhc3M9IlQyOSI+KS4gSXQgY2FuIGJlIHVzZWQgZ2VuZXJhbGx5IHRvIGNvbm5vdGUgYW55IHNldCBvZiB2YXJpb3VzIGNvbnRyb2xzIG9yIGRldmljZXMgZm9yIHJlZ3VsYXRpbmcgb3IgY29udHJvbGxpbmcgaXRlbXMgb3Igb2JqZWN0cy48L3NwYW4+PC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MSI+Um9ib3Q8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNiI+QW4gZWxlY3Ryb21lY2hhbmljYWwgc3lzdGVtIHRoYXQgY2FuIHJlYWN0IHRvIHNlbnNvcnkgaW5wdXQgYW5kIGNhcnJ5IG91dCBwcmVkZXRlcm1pbmVkIG1pc3Npb25zLiBBIHJvYm90IGlzIHR5cGljYWxseSBlcXVpcHBlZCB3aXRoIG9uZSBvciBtb3JlIHRvb2xzIG9yIGNlcnRhaW4gY2FwYWJpbGl0aWVzLiAoU2VlIDxzcGFuIGNsYXNzPSJUMjIiPlVubWFubmVkIFN5c3RlbTwvc3Bhbj4pPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MCI+Um9ib3RpYyBNaWRkbGV3YXJlPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjkiPlNvZnR3YXJlIGZyYW1ld29yayB3aGljaCBob3N0cyBjb21wbGV0ZWx5IG9yIHBhcnRseSB0aGUgc29mdHdhcmUgc3lzdGVtIG9mIGEgUm9ib3QuPC9wPjxwIGNsYXNzPSJQMzciPkl0IGlzIGFuIDxzcGFuIGNsYXNzPSJUMjMiPmFwcGxpY2F0aW9uPC9zcGFuPiB0aGF0IGlzIGV4ZWN1dGVkIGVpdGhlciBvbiBhbiBhY3R1YWwgcm9ib3Qgc3lzdGVtIG9yIGluIGEgY29tcHV0ZXIgYW5kIHRoYXQgYWxsb3dzIHRoZSBleGVjdXRpb24gb2YgY29udHJvbCByb2JvdCBhcHBsaWNhdGlvbnMuPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MCI+Um9ib3RpYyBzeXN0ZW0gb2Ygc3lzdGVtczwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDE0Ij48c3BhbiBjbGFzcz0iVDIxIj5TeXN0ZW0gb2Ygc3lzdGVtczwvc3Bhbj4gaXMgYSBjb2xsZWN0aW9uIG9mIHRhc2stb3JpZW50ZWQgb3IgZGVkaWNhdGVkIHN5c3RlbXMgdGhhdCBwb29sIHRoZWlyIHJlc291cmNlcyBhbmQgY2FwYWJpbGl0aWVzIHRvZ2V0aGVyIHRvIG9idGFpbiBhIG5ldywgbW9yZSBjb21wbGV4LCAnbWV0YS1zeXN0ZW0nIHdoaWNoIG9mZmVycyBtb3JlIGZ1bmN0aW9uYWxpdHkgYW5kIHBlcmZvcm1hbmNlIHRoYW4gc2ltcGx5IHRoZSBzdW0gb2YgdGhlIGNvbnN0aXR1ZW50IHN5c3RlbXMuIEN1cnJlbnRseSwgc3lzdGVtcyBvZiBzeXN0ZW1zIGlzIGEgY3JpdGljYWwgcmVzZWFyY2ggZGlzY2lwbGluZSBmb3Igd2hpY2ggZnJhbWVzIG9mIHJlZmVyZW5jZSwgdGhvdWdodCBwcm9jZXNzZXMsIHF1YW50aXRhdGl2ZSBhbmFseXNpcywgdG9vbHMsIGFuZCBkZXNpZ24gbWV0aG9kcyBhcmUgaW5jb21wbGV0ZS4gVGhlIG1ldGhvZG9sb2d5IGZvciBkZWZpbmluZywgYWJzdHJhY3RpbmcsIG1vZGVsbGluZywgYW5kIGFuYWx5c2luZyBzeXN0ZW0gb2Ygc3lzdGVtcyBwcm9ibGVtcyBpcyB0eXBpY2FsbHkgcmVmZXJyZWQgdG8gYXMgPGEgaHJlZj0iaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9TeXN0ZW1fb2ZfU3lzdGVtc19FbmdpbmVlcmluZyI+c3lzdGVtIG9mIHN5c3RlbXMgZW5naW5lZXJpbmc8L2E+LiA8L3A+PHAgY2xhc3M9IlAxNCI+QSDigJw8c3BhbiBjbGFzcz0iVDIzIj5yb2JvdGljIHN5c3RlbSBvZiBzeXN0ZW1z4oCdIDwvc3Bhbj5pcyBhIHNwZWNpYWxpc2VkIHN5c3RlbSBvZiBzeXN0ZW1zIHdoZXJlIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSDigJw8c3BhbiBjbGFzcz0iVDIzIj5yb2JvdOKAnTwvc3Bhbj4sIG9uZSDigJw8c3BhbiBjbGFzcz0iVDIzIj5jb250cm9sIHN0YXRpb248L3NwYW4+4oCdIGFuZCBvbmUg4oCcPHNwYW4gY2xhc3M9IlQyMyI+aHVtYW4gYWdlbnTigJ08L3NwYW4+LiDCoDwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQMzAiPk9udG9sb2d5PC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjkiPjxzcGFuIGNsYXNzPSJUMjMiPkRhdGE8L3NwYW4+IGNvbnNpc3RlbnQgd2l0aCB0aGUgVzNDIHN0YW5kYXJkIGFuZCB1c3VhbGx5IHVzZWQgdG8gZGVzY3JpYmUga25vd2xlZGdlLiBJdCBjYW4gYmUgdXNlZCBpbiB0aGVQIFJPVEVVUyBjb250ZXh0IGFzIGEgd2F5IHRvIGRlc2NyaWJlIGZvcm1hbGx5IGtub3dsZWRnZSBldmVuIGlmIG5vdCB1c2luZyBXM0Mgc3RhbmRhcmQ8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQyIj5Sb2JvdCBQbGF0Zm9ybTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI2Ij5Nb2JpbGUgcGFydCBvZiBhIDxzcGFuIGNsYXNzPSJUMjIiPlJvYm90aWMgc3lzdGVtPC9zcGFuPi48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQxIj5Sb2JvdGljIHN5c3RlbTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI2Ij5TeXN0ZW0gaW5jbHVkaW5nIG9uZSBvciBzZXZlcmFsIDxzcGFuIGNsYXNzPSJUMjIiPlJvYm90czwvc3Bhbj4uPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MCI+U2NlbmFyaW88L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAzOCI+Q2FkcmUgb3DDqXJhdGlvbm5lbCBkYW5zIGxlcXVlbCBlc3QgZMOpZmluaSB1biBwcm9ibMOobWU8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQyIj5TZW5zb3I8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNiI+PHNwYW4gY2xhc3M9IlQzIj5KUFIgJmFtcDsgQUxGVVMgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMTMiPu+DqDwvc3Bhbj48c3BhbiBjbGFzcz0iVDIiPiBFcXVpcG1lbnQgdGhhdCBkZXRlY3RzLCBtZWFzdXJlcywgYW5kL29yIHJlY29yZHMgcGh5c2ljYWwgcGhlbm9tZW5hLCBhbmQgaW5kaWNhdGVzIG9iamVjdHMgYW5kIGFjdGl2aXRpZXMgYnkgbWVhbnMgb2YgZW5lcmd5IG9yIHBhcnRpY2xlcyBlbWl0dGVkLCByZWZsZWN0ZWQsIG9yIG1vZGlmaWVkIGJ5IHRoZSBvYmplY3RzIGFuZCBhY3Rpdml0aWVzLjwvc3Bhbj48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDMwIj5TZXF1ZW5jZXI8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOSI+SXQgaXMgYW4g4oCcPHNwYW4gY2xhc3M9IlQyMyI+ZXZvbHV0aW9uIG1vZGVsPC9zcGFuPuKAnSB0aGF0IGFsbG93cyB0byBzb3J0IMKgdGFza3MgdG8gYmUgZXhlY3V0ZWQgaW4gb3JkZXIgdG8ga25vdyB3aGVuIHRoZXkgd2lsbCBiZSBleGVjdXRlZC48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDMwIj5TaW11bGF0aW9uPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjIiPjxwIGNsYXNzPSJQMjkiPlJlc3VsdCBvZiB0aGUg4oCcPHNwYW4gY2xhc3M9IlQyMyI+c2ltdWxhdG9yPC9zcGFuPuKAnSBleGVjdXRpb24gZ290IHRocm91Z2ggdGhlIOKAnHByb2Jlc+KAnSBwdXQgaW50byB0aGUg4oCcPHNwYW4gY2xhc3M9IlQyMyI+c2ltdWxhdG9yPC9zcGFuPuKAnSBlaXRoZXIgc3RhdGljYWxseSBvciBkeW5hbWljYWxseS48L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDMwIj5TaW11bGF0b3I8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOSI+SXQgaXMgYW4gPHNwYW4gY2xhc3M9IlQyMyI+YXBwbGljYXRpb248L3NwYW4+IHRoYXQgaW4gUFJPVEVVUyBjb250ZXh0IG11c3QgYmUgZ2VuZXJhdGVkIGJ5IHRoZSBwbGF0Zm9ybSBhbmQgdGhhdCBhZnRlciBhIDxzcGFuIGNsYXNzPSJUMjMiPmNvbmZpZ3VyYXRpb248L3NwYW4+IHBoYXNlIGlzIGV4ZWN1dGVkPC9wPjxwIGNsYXNzPSJQMzkiPmRhbnMgbGUgY2FkcmUgZCd1biDCqzxzcGFuIGNsYXNzPSJUMjMiPsKgcHJvYmzDqG1lwqA8L3NwYW4+wrssIGMnZXN0IGxlIGTDqXZlbG9wcGVtZW50IGQndW4gYWxnb3JpdGhtZSBwb3V2YW50IGx1aSBtw6ptZSBjb21wb3J0ZXIgdW5lIGFyY2hpdGVjdHVyZSBldCBwZXJtZXR0YW50IGxvcnMgZGUgbCdleMOpY3V0aW9uIGR1IMKrPHNwYW4gY2xhc3M9IlQyMyI+wqBzaW11bGF0ZXVywqA8L3NwYW4+wrsgZCdvYnRlbmlyIGRlcyB2YWxldXJzIHBvdXIgbGVzIMKrPHNwYW4gY2xhc3M9IlQyMyI+wqBtw6l0cmlxdWVzwqA8L3NwYW4+wrsgZMOpZmluaXMgbG9ycyBkZSBsYSBjb25zdGl0dXRpb24gZHUgwqs8c3BhbiBjbGFzcz0iVDIzIj7CoHByb2Jsw6htZcKgPC9zcGFuPsK7LiBBbWVuZXIgdW5lIMKrPHNwYW4gY2xhc3M9IlQyMyI+wqBzb2x1dGlvbsKgPC9zcGFuPsK7IGNvbnNpc3RlIGRvbmMgw6AgY29uZnJvbnRlciBzb24gYWxnb3JpdGhtZSDDoCBsYSDCqzxzcGFuIGNsYXNzPSJUMjMiPsKgbcOpdHJpcXVlwqA8L3NwYW4+wrsgw6AgdHJhdmVycyBsZSDCqzxzcGFuIGNsYXNzPSJUMjMiPsKgc2ltdWxhdGV1csKgPC9zcGFuPsK7IHBhciBsZXMgwqs8c3BhbiBjbGFzcz0iVDIzIj7CoHNpbXVsYXRpb25zwqA8L3NwYW4+wrsgb2J0ZW51ZXM7PC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0MCI+U29sdXRpb248L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyOSI+SW4gYSDigJxwcm9ibGVtPHNwYW4gY2xhc3M9IlQyMyI+4oCdPC9zcGFuPiBjb250ZXh0LCBpdCBpcyBhbiDigJw8c3BhbiBjbGFzcz0iVDIzIj5hbGdvcml0aG3igJ08L3NwYW4+IGl0c2VsZiBwb3NzaWJseSBpbnRlZ3JhdGluZyBhbiDigJw8c3BhbiBjbGFzcz0iVDIzIj5hcmNoaXRlY3R1cmXigJ08L3NwYW4+IHRoYXQgYWxsb3dzIGR1cmluZyB0aGUgZXhlY3V0aW9uIG9mIGEg4oCcPHNwYW4gY2xhc3M9IlQyMyI+c2ltdWxhdG9y4oCdPC9zcGFuPiB0byBleHRyYWN0IHZhbHVlcyBmcm9tIHRoZSBkZWZpbmVkIOKAnDxzcGFuIGNsYXNzPSJUMjMiPm1ldHJpY3PigJ08L3NwYW4+IHRoYXQgcmVtYWlucyBpbiB0aGVpciB2YWxpZGl0eSBkb21haW4uPC9wPjxwIGNsYXNzPSJQMjkiPlN1YnBhcnQgb2YgaW50ZXJlc3QgaW4gdGhlIHNvZnR3YXJlIHN5c3RlbSBvZiBhIHJvYm90LiBJdHMgaW1wbGVtZW50YXRpb24gaXMgcHJvdmlkZWQgYnkgYSBDaGFsbGVuZ2VyLjwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQMzAiPlN5bmNocm9uaXNlcjwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI5Ij5JdCBpcyBhbiDigJw8c3BhbiBjbGFzcz0iVDIzIj5ldm9sdXRpb24gbW9kZWw8L3NwYW4+4oCdIHRoYXQgYWxsb3dzIHRvIHN5bmNocm9uaXNlIHRhc2tzIGV4ZWN1dGlvbiB3aXRoIHJlc3BlY3QgdG8gdGltZTwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQMzAiPlRhcmdldDwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDE0Ij5pdCBpcyB0aGUg4oCcPHNwYW4gY2xhc3M9IlQyMyI+c2ltdWxhdG9yPC9zcGFuPuKAnSB0aGF0IGlzIGdlbmVyYXRlZCBieSB0aGUgcGxhdGZvcm0gYW5kIHRoYXQgaW5jbHVkZXMgZXZlcnl0aGluZyBuZWVkZWQgYnkgdGhlIOKAnDxzcGFuIGNsYXNzPSJUMjMiPmNvbXBldGl0b3I8L3NwYW4+4oCdIHRvIHZlcmlmeSAvIGFzc2VzcyBpdHMgY29udHJpYnV0aW9uPC9wPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOnJpZ2h0OyB3aWR0aDozLjczMWNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19BMiI+PHAgY2xhc3M9IlA0NCI+VHJhamVjdG9yeSBQbGFubmluZyA8L3A+PC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDt3aWR0aDoxMy4yNGNtOyAiIGNsYXNzPSJkZWZpbml0aW9uc19CMiI+PHAgY2xhc3M9IlAyNiI+U2VlIE1vdGlvbiBwbGFubmluZzwvcD48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpyaWdodDsgd2lkdGg6My43MzFjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQTIiPjxwIGNsYXNzPSJQNDQiPlVubWFubmVkIHN5c3RlbTwvcD48L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEzLjI0Y207ICIgY2xhc3M9ImRlZmluaXRpb25zX0IyIj48cCBjbGFzcz0iUDI2Ij48c3BhbiBjbGFzcz0iVDMzIj5KUFIgJmFtcDsgQUxGVVMgPC9zcGFuPjxzcGFuIGNsYXNzPSJUMjUiPu+DqDwvc3Bhbj4gQW4gZWxlY3Ryby1tZWNoYW5pY2FsIHN5c3RlbSwgd2l0aCBubyBodW1hbiBvcGVyYXRvciBhYm9hcmQsIHRoYXQgaXMgYWJsZSB0byBleGVydCBpdHMgcG93ZXIgdG8gcGVyZm9ybSBkZXNpZ25lZCBtaXNzaW9ucy4gSXQgbWF5IGJlIG1vYmlsZSBvciBzdGF0aW9uYXJ5IGFuZCBpbmNsdWRlcyB0aGUgZm9sbG93aW5nIGNhdGVnb3JpZXM6IHVubWFubmVkIGdyb3VuZCB2ZWhpY2xlcyAoPHNwYW4gY2xhc3M9IlQyMiI+VUdWPC9zcGFuPiksIHVubWFubmVkIGFlcmlhbCB2ZWhpY2xlcyAoPHNwYW4gY2xhc3M9IlQyMiI+VUFWPC9zcGFuPiksIHVubWFubmVkIHVuZGVyd2F0ZXIgdmVoaWNsZXMgKDxzcGFuIGNsYXNzPSJUMjIiPlVVVjwvc3Bhbj4pLCB1bm1hbm5lZCBzdXJmYWNlIHZlaGljbGVzICg8c3BhbiBjbGFzcz0iVDIyIj5VU1Y8L3NwYW4+KSwgdW5hdHRlbmRlZCBtdW5pdGlvbnMgKFU8c3BhbiBjbGFzcz0iVDIyIj5NPC9zcGFuPiksIGFuZCB1bmF0dGVuZGVkIGdyb3VuZCBzZW5zb3JzICg8c3BhbiBjbGFzcz0iVDIyIj5VR1M8L3NwYW4+KS4oU2VlIDxzcGFuIGNsYXNzPSJUMjIiPlJvYm90PC9zcGFuPik8L3A+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9InRleHQtYWxpZ246cmlnaHQ7IHdpZHRoOjMuNzMxY207ICIgY2xhc3M9ImRlZmluaXRpb25zX0EyIj48cCBjbGFzcz0iUDQ0Ij5XcmFwcGVyPC9wPjwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTMuMjRjbTsgIiBjbGFzcz0iZGVmaW5pdGlvbnNfQjY5Ij48cCBjbGFzcz0iUDI2Ij5JdCBpcyBhbiDigJw8c3BhbiBjbGFzcz0iVDIzIj5hcHBsaWNhdGlvbuKAnTwvc3Bhbj4gdGhhdCBhbGxvd3MgYW5vdGhlciDigJw8c3BhbiBjbGFzcz0iVDIzIj5hcHBsaWNhdGlvbuKAnTwvc3Bhbj4gdG8gdXNlIMKg4oCcPHNwYW4gY2xhc3M9IlQyMyI+QTwvc3Bhbj48c3BhbiBjbGFzcz0iVDE1Ij5sZ29yaXRobWljIG1vZHVsZXM8L3NwYW4+PHNwYW4gY2xhc3M9IlQxNCI+4oCdPC9zcGFuPjwvcD48L3RkPjwvdHI+PC90YWJsZT48cCBjbGFzcz0iUDMzIj5UYWJsZSA8YSBpZD0icmVmVGFibGUwIi8+MTogbGlzdCBvZiB1c2VkIGRlZmluaXRpb25zPC9wPjxoMSBjbGFzcz0iSGVhZGluZ18yMF8xIj48YSBpZD0iYV8yX19BQ1JPTllNUyI+PHNwYW4+Mi48L3NwYW4+PC9hPkFDUk9OWU1TPC9oMT48cCBjbGFzcz0iUDE1Ij7CoDwvcD48IS0tTmV4dCAnZGl2JyB3YXMgYSAndGV4dDpwJy4tLT48ZGl2IGNsYXNzPSJQMTUiPiA8IS0tTmV4dCAnZGl2JyBpcyBhIGRyYXc6ZnJhbWUuLS0+PGRpdiBzdHlsZT0iaGVpZ2h0OjE0Ljc0MWNtO3dpZHRoOjEwLjU3NWNtOyBmbG9hdDpsZWZ0OyBwYWRkaW5nOjA7IHBvc2l0aW9uOnJlbGF0aXZlOyBsZWZ0OjBjbTsgIiBjbGFzcz0iZnI0IiBpZD0iT2JqZXQxIj4KKyAgICAgIAorICAgICAgIExpYnJlT2ZmaWNlLzMuMyRXaW4zMiBMaWJyZU9mZmljZV9wcm9qZWN0LzMzMG0xOSRCdWlsZC04CisgICAgICAgCisgICAgICAgIAorICAgICAgICAgMTQyOAorICAgICAgICAgMAorICAgICAgICAgMTA1NzMKKyAgICAgICAgIDE0NzM5CisgICAgICAgICAKKyAgICAgICAgICAKKyAgICAgICAgICAgQWNyb255bQorICAgICAgICAgIAorICAgICAgICAgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIGZhbHNlCisgICAgICAgICB0cnVlCisgICAgICAgICAzCisgICAgICAgICBmYWxzZQorICAgICAgICAgdHJ1ZQorICAgICAgICAgdHJ1ZQorICAgICAgICAgdHJ1ZQorICAgICAgICAgMTAwMAorICAgICAgICAgCisgICAgICAgICAxMDAwCisgICAgICAgICBmYWxzZQorICAgICAgICAgMQorICAgICAgICAgdHJ1ZQorICAgICAgICAgdHJ1ZQorICAgICAgICAgMQorICAgICAgICAgdHJ1ZQorICAgICAgICAgMTI2MzIyNTYKKyAgICAgICAgIGZhbHNlCisgICAgICAgICBmYWxzZQorICAgICAgICAgCisgICAgICAgICB0cnVlCisgICAgICAgICAwCisgICAgICAgICB0cnVlCisgICAgICAgICB0cnVlCisgICAgICAgICB0cnVlCisgICAgICAgICBmYWxzZQorICAgICAgICAgdHJ1ZQorICAgICAgICAKKyAgICAgICAKKyAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgCisgICAgICAgCisgICAgICAgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgIAorICAgICAgIAorICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgICAKKyAgICAgICAgIOKCrAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgIC0KKyAgICAgICAgIAorICAgICAgICAgIAorICAgICAgICAg4oKsCisgICAgICAgICAKKyAgICAgICAgCisgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAg4oKsCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIC0KKyAgICAgICAgIAorICAgICAgICAgIOKCrAorICAgICAgICAgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgIOKCrAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgIC0KKyAgICAgICAgIAorICAgICAgICAgIOKCrAorICAgICAgICAgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgIOKCrAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAtCisgICAgICAgICAKKyAgICAgICAgICDigqwKKyAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgICDigqwKKyAgICAgICAgCisgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAtCisgICAgICAgICAKKyAgICAgICAgICDigqwKKyAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgICAgICAKKyAgICAgICAgCisgICAgICAgIAorICAgICAgICAgLQorICAgICAgICAgCisgICAgICAgICAgICAgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgICAtICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgCisgICAgICAgIAorICAgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAg4oKsIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAtCisgICAgICAgICAKKyAgICAgICAgICDigqwgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgICAtIOKCrCAKKyAgICAgICAgCisgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAtCisgICAgICAgICAKKyAgICAgICAgICAgICAKKyAgICAgICAgCisgICAgICAgIAorICAgICAgICAgIC0KKyAgICAgICAgIAorICAgICAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgCisgICAgICAgIAorICAgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAg4oKsIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAtCisgICAgICAgICAKKyAgICAgICAgICDigqwgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgICAtCisgICAgICAgICAKKyAgICAgICAgICDigqwgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgIDoKKyAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgIDoKKyAgICAgICAgIAorICAgICAgICAgOgorICAgICAgICAgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgOgorICAgICAgICAgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgICAKKyAgICAgICAgIOKCrAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgIC0KKyAgICAgICAgIAorICAgICAgICAgIAorICAgICAgICAg4oKsCisgICAgICAgICAKKyAgICAgICAgCisgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAtCisgICAgICAgICAKKyAgICAgICAgIC0KKyAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgIC0KKyAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgIC0KKyAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgIDoKKyAgICAgICAgIAorICAgICAgICAgIAorICAgICAgICAgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgOgorICAgICAgICAgCisgICAgICAgICA6CisgICAgICAgICAKKyAgICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgIC8KKyAgICAgICAgIAorICAgICAgICAgLworICAgICAgICAgCisgICAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgIDoKKyAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAtCisgICAgICAgICAKKyAgICAgICAgICAgIAorICAgICAgICAgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgICAgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgLQorICAgICAgICAgCisgICAgICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAtCisgICAgICAgICAKKyAgICAgICAgICAgIAorICAgICAgICAgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgICAgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgLQorICAgICAgICAgCisgICAgICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgICDigqwKKyAgICAgICAgCisgICAgICAgIAorICAgICAgICAgLQorICAgICAgICAgCisgICAgICAgICAg4oKsCisgICAgICAgICAKKyAgICAgICAgCisgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAg4oKsCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgLQorICAgICAgICAgCisgICAgICAgICAg4oKsCisgICAgICAgICAKKyAgICAgICAgCisgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAg4oKsCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIC0KKyAgICAgICAgIAorICAgICAgICAgIOKCrAorICAgICAgICAgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgIOKCrAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgIC0KKyAgICAgICAgIAorICAgICAgICAgIOKCrAorICAgICAgICAgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgCisgICAgICAgIAorICAgICAgIAorICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgCisgICAgICAgIAorICAgICAgICAgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgCisgICAgICAgIAorICAgICAgICAgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgCisgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgCisgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgCisgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgCisgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgCisgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgICAKKyAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTp1cmwoKTsgYmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0OyAKKyAgICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAgCisgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6dXJsKCk7IGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDsgCisgICAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgCisgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgCisgICAgICAgIAorICAgICAgICAgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgCisgICAgICAgIAorICAgICAgICAgCisgICAgICAgIAorICAgICAgIAorICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgIDxwPjxzcGFuIHRpdGxlPSJzaGVldC1uYW1lIj4/Pz88L3NwYW4+PC9wPgorICAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgIDxwPlBhZ2UgPHNwYW4gdGl0bGU9InBhZ2UtbnVtYmVyIj4xPC9zcGFuPjwvcD4KKyAgICAgICAgIAorICAgICAgICAgCisgICAgICAgIAorICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgIAorICAgICAgICAgICA8cD48c3BhbiB0aXRsZT0ic2hlZXQtbmFtZSI+Pz8/PC9zcGFuPiAoPHNwYW4gdGl0bGU9InRpdGxlIj4/Pz88L3NwYW4+KTwvcD4KKyAgICAgICAgICAKKyAgICAgICAgICAKKyAgICAgICAgICAgPHA+PHNwYW4gdGl0bGU9ImRhdGUiPjExLzA3LzIwMTE8L3NwYW4+LCA8c3BhbiB0aXRsZT0idGltZSI+MTc6Mzg6MzI8L3NwYW4+PC9wPgorICAgICAgICAgIAorICAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAgIDxwPlBhZ2UgPHNwYW4gdGl0bGU9InBhZ2UtbnVtYmVyIj4xPC9zcGFuPiAvIDxzcGFuIHRpdGxlPSJwYWdlLWNvdW50Ij45OTwvc3Bhbj48L3A+CisgICAgICAgICAKKyAgICAgICAgIAorICAgICAgICAKKyAgICAgICAKKyAgICAgICAKKyAgICAgICAgCisgICAgICAgICAKKyAgICAgICAgIDx0YWJsZSBib3JkZXI9IjAiIGNlbGxzcGFjaW5nPSIwIiBjZWxscGFkZGluZz0iMCIgY2xhc3M9InRhMSI+PGNvbGdyb3VwPjxjb2wvPjxjb2wvPjwvY29sZ3JvdXA+PHRyIGNsYXNzPSJybzEiPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9IkRlZmF1bHQiPsKgPC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDsiIGNsYXNzPSJEZWZhdWx0Ij7CoDwvdGQ+PC90cj48dHIgY2xhc3M9InJvMSI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iRGVmYXVsdCI+wqA8L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9IkRlZmF1bHQiPsKgPC90ZD48L3RyPjx0ciBjbGFzcz0icm8xIj48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDsiIGNsYXNzPSJEZWZhdWx0Ij7CoDwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iRGVmYXVsdCI+wqA8L3RkPjwvdHI+PHRyIGNsYXNzPSJybzIiPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9ImNlMSI+CisgICAgICAgICAgICA8cD5BY3JvbnltPC9wPgorICAgICAgICAgICA8L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9ImNlMSI+CisgICAgICAgICAgICA8cD5EZWZpbml0aW9uPC9wPgorICAgICAgICAgICA8L3RkPjwvdHI+PHRyIGNsYXNzPSJybzEiPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9ImNlMyI+CisgICAgICAgICAgICA8cD5BQ1Q8L3A+CisgICAgICAgICAgIDwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2U3Ij4KKyAgICAgICAgICAgIDxwPkFDVDxzcGFuIGNsYXNzPSJUMyI+dWF0b3I8L3NwYW4+PC9wPgorICAgICAgICAgICA8L3RkPjwvdHI+PHRyIGNsYXNzPSJybzEiPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9ImNlMyI+CisgICAgICAgICAgICA8cD5BQ1RTWVM8L3A+CisgICAgICAgICAgIDwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2U3Ij4KKyAgICAgICAgICAgIDxwPkFDVDxzcGFuIGNsYXNzPSJUMyI+dWF0b3IgPC9zcGFuPjxzcGFuIGNsYXNzPSJUNCI+U1lTPC9zcGFuPjxzcGFuIGNsYXNzPSJUMyI+dGVtPC9zcGFuPjwvcD4KKyAgICAgICAgICAgPC90ZD48L3RyPjx0ciBjbGFzcz0icm8xIj48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDsiIGNsYXNzPSJjZTMiPgorICAgICAgICAgICAgPHA+QUxGVVM8L3A+CisgICAgICAgICAgIDwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2U3Ij4KKyAgICAgICAgICAgIDxwPkE8c3BhbiBjbGFzcz0iVDMiPnV0b25vbXkgPC9zcGFuPjxzcGFuIGNsYXNzPSJUNCI+TDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMiPmV2ZWxzIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDQiPkY8L3NwYW4+PHNwYW4gY2xhc3M9IlQzIj5vciA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij5VPC9zcGFuPjxzcGFuIGNsYXNzPSJUMyI+bm1hbmVkIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDQiPlM8L3NwYW4+PHNwYW4gY2xhc3M9IlQzIj55c3RlbXM8L3NwYW4+PC9wPgorICAgICAgICAgICA8L3RkPjwvdHI+PHRyIGNsYXNzPSJybzEiPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9ImNlMyI+CisgICAgICAgICAgICA8cD5DQ1M8L3A+CisgICAgICAgICAgIDwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2U3Ij4KKyAgICAgICAgICAgIDxwPkM8c3BhbiBjbGFzcz0iVDMiPm9tbWFuZCBhbmQgPC9zcGFuPjxzcGFuIGNsYXNzPSJUNCI+Qzwvc3Bhbj48c3BhbiBjbGFzcz0iVDMiPm9udHJvbCA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij5TPC9zcGFuPjxzcGFuIGNsYXNzPSJUMyI+dGF0aW9uPC9zcGFuPjwvcD4KKyAgICAgICAgICAgPC90ZD48L3RyPjx0ciBjbGFzcz0icm8xIj48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDsiIGNsYXNzPSJjZTMiPgorICAgICAgICAgICAgPHNwYW4geG1sbnM9IiIgdGl0bGU9ImFubm90YXRpb24iIGNsYXNzPSJQMSI+PGJyLz5bQU5OT1RBVElPTjo8YnIvPjxici8+PHNwYW4gdGl0bGU9ImRjOmRhdGUiPk9OICcyMDExLTA1LTIzVDAwOjAwOjAwJzwvc3Bhbj48YnIvPjxzcGFuPk5PVEU6ICc8c3BhbiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgY2xhc3M9IlQxIj5OJ2F1cmFpdC1vbiBwYXMgaW50w6pyZXQgw6AgdHJhbnNmb3JtZXIgQ09NU1lTIGVuIERhdGEgZXhjaGFuZ2UgU2VydmljZSAoREVTKSBldCByw6ljdXBlcmVyIGxlIG5vbSBwb3VyIGFkcmVzc2VyIEVYVGVybmFsIENPTW11bmljYXRpb24gc3lzdGVtIChFWFRDT00pID88L3NwYW4+Jzwvc3Bhbj48YnIvPjxzcGFuPk5PVEU6ICc8c3BhbiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgY2xhc3M9IlQyIj5DZSBxdWkgbWUgc2VtYmxlIHBsdXMgw6p0cmUgZGFucyBsZXMgdGVybWlub2xvZ2llcyBjbGFzc2lxdWVzICjDoCB2b2lyKTwvc3Bhbj4nPC9zcGFuPl08L3NwYW4+CisgICAgICAgICAgICA8cD5DT01TWVM8L3A+CisgICAgICAgICAgIDwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2U3Ij4KKyAgICAgICAgICAgIDxwPkNPTTxzcGFuIGNsYXNzPSJUMyI+bXVuaWNhdGlvbiA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij5TWVM8L3NwYW4+PHNwYW4gY2xhc3M9IlQzIj50ZW08L3NwYW4+PC9wPgorICAgICAgICAgICA8L3RkPjwvdHI+PHRyIGNsYXNzPSJybzEiPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9ImNlMyI+CisgICAgICAgICAgICA8cD5FRkY8L3A+CisgICAgICAgICAgIDwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2U3Ij4KKyAgICAgICAgICAgIDxwPkVGRjxzcGFuIGNsYXNzPSJUMyI+ZWN0b3I8L3NwYW4+PC9wPgorICAgICAgICAgICA8L3RkPjwvdHI+PHRyIGNsYXNzPSJybzEiPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9ImNlMyI+CisgICAgICAgICAgICA8cD5FTlY8L3A+CisgICAgICAgICAgIDwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2U3Ij4KKyAgICAgICAgICAgIDxwPkVOVjxzcGFuIGNsYXNzPSJUMyI+aXJvbm1lbnQ8L3NwYW4+PC9wPgorICAgICAgICAgICA8L3RkPjwvdHI+PHRyIGNsYXNzPSJybzEiPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9ImNlNCI+CisgICAgICAgICAgICA8cD5FWFRDT008L3A+CisgICAgICAgICAgIDwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2U4Ij4KKyAgICAgICAgICAgIDxwPkVYVDxzcGFuIGNsYXNzPSJUMyI+ZXJuYWwgPC9zcGFuPjxzcGFuIGNsYXNzPSJUNCI+Q09NPC9zcGFuPjxzcGFuIGNsYXNzPSJUMyI+bXVuaWNhdGlvbjwvc3Bhbj48L3A+CisgICAgICAgICAgIDwvdGQ+PC90cj48dHIgY2xhc3M9InJvMSI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2UzIj4KKyAgICAgICAgICAgIDxwPkdQUzwvcD4KKyAgICAgICAgICAgPC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDsiIGNsYXNzPSJjZTciPgorICAgICAgICAgICAgPHA+RzxzcGFuIGNsYXNzPSJUMyI+cm91bmQgPC9zcGFuPjxzcGFuIGNsYXNzPSJUNCI+UDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMiPm9zaXRpb25pbmcgPC9zcGFuPjxzcGFuIGNsYXNzPSJUNCI+Uzwvc3Bhbj48c3BhbiBjbGFzcz0iVDMiPnlzdGVtPC9zcGFuPjwvcD4KKyAgICAgICAgICAgPC90ZD48L3RyPjx0ciBjbGFzcz0icm8xIj48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDsiIGNsYXNzPSJjZTMiPgorICAgICAgICAgICAgPHA+SE1JPC9wPgorICAgICAgICAgICA8L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9ImNlNiI+CisgICAgICAgICAgICA8cD5IdW1hbiBNYWNoaW5lIEludGVyZmFjZTwvcD4KKyAgICAgICAgICAgPC90ZD48L3RyPjx0ciBjbGFzcz0icm8xIj48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDsiIGNsYXNzPSJjZTMiPgorICAgICAgICAgICAgPHA+SFc8L3A+CisgICAgICAgICAgIDwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2U2Ij4KKyAgICAgICAgICAgIDxwPkhhcmRXYXJlPC9wPgorICAgICAgICAgICA8L3RkPjwvdHI+PHRyIGNsYXNzPSJybzEiPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9ImNlMyI+CisgICAgICAgICAgICA8cD5KUlA8L3A+CisgICAgICAgICAgIDwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2U3Ij4KKyAgICAgICAgICAgIDxwPko8c3BhbiBjbGFzcz0iVDMiPm9pbnQ8L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij4gUjwvc3Bhbj48c3BhbiBjbGFzcz0iVDMiPm9ib3RpYyBQcm9ncmFtIDwvc3Bhbj48L3A+CisgICAgICAgICAgIDwvdGQ+PC90cj48dHIgY2xhc3M9InJvMSI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2UzIj4KKyAgICAgICAgICAgIDxwPk1NSTwvcD4KKyAgICAgICAgICAgPC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDsiIGNsYXNzPSJjZTciPgorICAgICAgICAgICAgPHA+TTxzcGFuIGNsYXNzPSJUMyI+YW4gPC9zcGFuPjxzcGFuIGNsYXNzPSJUNCI+TTwvc3Bhbj48c3BhbiBjbGFzcz0iVDMiPmFjaGluZSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij5JPC9zcGFuPjxzcGFuIGNsYXNzPSJUMyI+bnRlcmZhY2U8L3NwYW4+PC9wPgorICAgICAgICAgICA8L3RkPjwvdHI+PHRyIGNsYXNzPSJybzEiPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9ImNlMyI+CisgICAgICAgICAgICA8cD5PQ0k8L3A+CisgICAgICAgICAgIDwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2U3Ij4KKyAgICAgICAgICAgIDxwPk88c3BhbiBjbGFzcz0iVDMiPnBlcmF0b3IgPC9zcGFuPjxzcGFuIGNsYXNzPSJUNCI+Qzwvc3Bhbj48c3BhbiBjbGFzcz0iVDMiPm9udHJvbCA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij5JPC9zcGFuPjxzcGFuIGNsYXNzPSJUMyI+bnRlcmZhY2U8L3NwYW4+PC9wPgorICAgICAgICAgICA8L3RkPjwvdHI+PHRyIGNsYXNzPSJybzEiPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9ImNlMyI+CisgICAgICAgICAgICA8cD5PQ1U8L3A+CisgICAgICAgICAgIDwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2U3Ij4KKyAgICAgICAgICAgIDxwPk88c3BhbiBjbGFzcz0iVDMiPnBlcmF0b3IgPC9zcGFuPjxzcGFuIGNsYXNzPSJUNCI+Qzwvc3Bhbj48c3BhbiBjbGFzcz0iVDMiPm9udHJvbCA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij5VPC9zcGFuPjxzcGFuIGNsYXNzPSJUMyI+bml0PC9zcGFuPjwvcD4KKyAgICAgICAgICAgPC90ZD48L3RyPjx0ciBjbGFzcz0icm8xIj48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDsiIGNsYXNzPSJjZTMiPgorICAgICAgICAgICAgPHA+Uk9TPC9wPgorICAgICAgICAgICA8L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9ImNlNyI+CisgICAgICAgICAgICA8cD5SPHNwYW4gY2xhc3M9IlQzIj5vYm90aWMgPC9zcGFuPjxzcGFuIGNsYXNzPSJUNCI+Tzwvc3Bhbj48c3BhbiBjbGFzcz0iVDMiPnBlcmF0aW5nPC9zcGFuPjxzcGFuIGNsYXNzPSJUNCI+IFM8L3NwYW4+PHNwYW4gY2xhc3M9IlQzIj55c3RlbTwvc3Bhbj48L3A+CisgICAgICAgICAgIDwvdGQ+PC90cj48dHIgY2xhc3M9InJvMSI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2UzIj4KKyAgICAgICAgICAgIDxwPlJUPC9wPgorICAgICAgICAgICA8L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9ImNlNyI+CisgICAgICAgICAgICA8cD5Sb3RhdGlvbiBUcmFuc2xhdGlvbjwvcD4KKyAgICAgICAgICAgPC90ZD48L3RyPjx0ciBjbGFzcz0icm8xIj48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDsiIGNsYXNzPSJjZTMiPgorICAgICAgICAgICAgPHNwYW4geG1sbnM9IiIgdGl0bGU9ImFubm90YXRpb24iIGNsYXNzPSJQMSI+PGJyLz5bQU5OT1RBVElPTjo8YnIvPjxici8+PHNwYW4gdGl0bGU9ImRjOmRhdGUiPk9OICcyMDExLTA1LTIzVDAwOjAwOjAwJzwvc3Bhbj48YnIvPjxzcGFuPk5PVEU6ICc8c3BhbiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgY2xhc3M9IlQxIj5Wb2lyIHMnaWwgZmF1dCByZXN0ZXIgc3VyIFNERSBvdSBjcsOpZXIgdW5lIGVudGl0w6llIHBhcnRpY3VsacOpcmUgUERFIChQUk9URVVTIERldmVsb3BtZW50IEVudmlyb25tZW50KSBlbiBtZXR0YW50IMOgIGpvdXIgbGEgbGlzdGUgZGVzIG91dGlscyBkZSBkw6l2ZWxvcHBlbWVudCBpbnTDqWdyw6kgYXUgUG9ydGFpbCBQUk9URVVTPC9zcGFuPic8L3NwYW4+XTwvc3Bhbj4KKyAgICAgICAgICAgIDxwPlNERTwvcD4KKyAgICAgICAgICAgPC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDsiIGNsYXNzPSJjZTciPgorICAgICAgICAgICAgPHA+UzxzcGFuIGNsYXNzPSJUMyI+b2Z0d2FyZSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij5EPC9zcGFuPjxzcGFuIGNsYXNzPSJUMyI+ZXZlbG9wbWVudCA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij5FPC9zcGFuPjxzcGFuIGNsYXNzPSJUMyI+bnZpcm9ubWVudDwvc3Bhbj48L3A+CisgICAgICAgICAgIDwvdGQ+PC90cj48dHIgY2xhc3M9InJvMSI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2UzIj4KKyAgICAgICAgICAgIDxwPlNXPC9wPgorICAgICAgICAgICA8L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9ImNlNiI+CisgICAgICAgICAgICA8cD5Tb2Z0V2FyZTwvcD4KKyAgICAgICAgICAgPC90ZD48L3RyPjx0ciBjbGFzcz0icm8xIj48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDsiIGNsYXNzPSJjZTMiPgorICAgICAgICAgICAgPHA+VEJDTDwvcD4KKyAgICAgICAgICAgPC90ZD48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDsiIGNsYXNzPSJjZTciPgorICAgICAgICAgICAgPHA+VDxzcGFuIGNsYXNzPSJUMyI+byA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij5CPC9zcGFuPjxzcGFuIGNsYXNzPSJUMyI+ZSA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij5DPC9zcGFuPjxzcGFuIGNsYXNzPSJUMyI+b21wbGV0ZTwvc3Bhbj48c3BhbiBjbGFzcz0iVDQiPiBMPC9zcGFuPjxzcGFuIGNsYXNzPSJUMyI+YXRlcjwvc3Bhbj48L3A+CisgICAgICAgICAgIDwvdGQ+PC90cj48dHIgY2xhc3M9InJvMSI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2UzIj4KKyAgICAgICAgICAgIDxwPlRCREw8L3A+CisgICAgICAgICAgIDwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2U3Ij4KKyAgICAgICAgICAgIDxwPlQ8c3BhbiBjbGFzcz0iVDMiPm8gPC9zcGFuPjxzcGFuIGNsYXNzPSJUNCI+Qjwvc3Bhbj48c3BhbiBjbGFzcz0iVDMiPmUgPC9zcGFuPjxzcGFuIGNsYXNzPSJUNCI+RDwvc3Bhbj48c3BhbiBjbGFzcz0iVDMiPmVmaW5lIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDQiPkw8L3NwYW4+PHNwYW4gY2xhc3M9IlQzIj5hdGVyPC9zcGFuPjwvcD4KKyAgICAgICAgICAgPC90ZD48L3RyPjx0ciBjbGFzcz0icm8xIj48dGQgc3R5bGU9InRleHQtYWxpZ246bGVmdDsiIGNsYXNzPSJjZTMiPgorICAgICAgICAgICAgPHA+VUFWPC9wPgorICAgICAgICAgICA8L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9ImNlNyI+CisgICAgICAgICAgICA8cD5VPHNwYW4gY2xhc3M9IlQzIj5ubWFuZWQgPC9zcGFuPjxzcGFuIGNsYXNzPSJUNCI+QTwvc3Bhbj48c3BhbiBjbGFzcz0iVDMiPmVyaWFsPC9zcGFuPjxzcGFuIGNsYXNzPSJUNCI+IFY8L3NwYW4+PHNwYW4gY2xhc3M9IlQzIj5laGljbGU8L3NwYW4+PC9wPgorICAgICAgICAgICA8L3RkPjwvdHI+PHRyIGNsYXNzPSJybzEiPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9ImNlMyI+CisgICAgICAgICAgICA8cD5VR1M8L3A+CisgICAgICAgICAgIDwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2U3Ij4KKyAgICAgICAgICAgIDxwPlU8c3BhbiBjbGFzcz0iVDMiPm5hdHRlbmRlZDwvc3Bhbj48c3BhbiBjbGFzcz0iVDQiPiBHPC9zcGFuPjxzcGFuIGNsYXNzPSJUMyI+cm91ZCA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij5TPC9zcGFuPjxzcGFuIGNsYXNzPSJUMyI+ZW5zb3I8L3NwYW4+PC9wPgorICAgICAgICAgICA8L3RkPjwvdHI+PHRyIGNsYXNzPSJybzEiPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9ImNlMyI+CisgICAgICAgICAgICA8cD5VR1Y8L3A+CisgICAgICAgICAgIDwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2U3Ij4KKyAgICAgICAgICAgIDxwPlU8c3BhbiBjbGFzcz0iVDMiPm5tYW5lZCA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij5HPC9zcGFuPjxzcGFuIGNsYXNzPSJUMyI+cm91bmQgPC9zcGFuPjxzcGFuIGNsYXNzPSJUNCI+Vjwvc3Bhbj48c3BhbiBjbGFzcz0iVDMiPmVoaWNsZTwvc3Bhbj48L3A+CisgICAgICAgICAgIDwvdGQ+PC90cj48dHIgY2xhc3M9InJvMSI+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2UzIj4KKyAgICAgICAgICAgIDxwPlVNPC9wPgorICAgICAgICAgICA8L3RkPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9ImNlNyI+CisgICAgICAgICAgICA8cD5VPHNwYW4gY2xhc3M9IlQzIj5uYXR0ZW5kZWQgPC9zcGFuPjxzcGFuIGNsYXNzPSJUNCI+TTwvc3Bhbj48c3BhbiBjbGFzcz0iVDMiPnVuaXRpb248L3NwYW4+PC9wPgorICAgICAgICAgICA8L3RkPjwvdHI+PHRyIGNsYXNzPSJybzEiPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9ImNlMyI+CisgICAgICAgICAgICA8cD5VTVM8L3A+CisgICAgICAgICAgIDwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2U3Ij4KKyAgICAgICAgICAgIDxwPlU8c3BhbiBjbGFzcz0iVDMiPm48L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij5NPC9zcGFuPjxzcGFuIGNsYXNzPSJUMyI+YW5lZCA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij5TPC9zcGFuPjxzcGFuIGNsYXNzPSJUMyI+eXN0ZW08L3NwYW4+PC9wPgorICAgICAgICAgICA8L3RkPjwvdHI+PHRyIGNsYXNzPSJybzEiPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9ImNlMyI+CisgICAgICAgICAgICA8cD5VU1Y8L3A+CisgICAgICAgICAgIDwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2U3Ij4KKyAgICAgICAgICAgIDxwPlU8c3BhbiBjbGFzcz0iVDMiPm5tYW5lZDwvc3Bhbj48c3BhbiBjbGFzcz0iVDQiPiBTPC9zcGFuPjxzcGFuIGNsYXNzPSJUMyI+dXJmYWNlIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDQiPlY8L3NwYW4+PHNwYW4gY2xhc3M9IlQzIj5laGljbGU8L3NwYW4+PC9wPgorICAgICAgICAgICA8L3RkPjwvdHI+PHRyIGNsYXNzPSJybzEiPjx0ZCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0OyIgY2xhc3M9ImNlMyI+CisgICAgICAgICAgICA8cD5VVVY8L3A+CisgICAgICAgICAgIDwvdGQ+PHRkIHN0eWxlPSJ0ZXh0LWFsaWduOmxlZnQ7IiBjbGFzcz0iY2U3Ij4KKyAgICAgICAgICAgIDxwPlU8c3BhbiBjbGFzcz0iVDMiPm5tYW5lZCA8L3NwYW4+PHNwYW4gY2xhc3M9IlQ0Ij5VPC9zcGFuPjxzcGFuIGNsYXNzPSJUMyI+bmRlcndhdGVyIDwvc3Bhbj48c3BhbiBjbGFzcz0iVDQiPlY8L3NwYW4+PHNwYW4gY2xhc3M9IlQzIj5laGljbGU8L3NwYW4+PC9wPgorICAgICAgICAgICA8L3RkPjwvdHI+PC90YWJsZT4KKyAgICAgICAgPHAgY2xhc3M9IkZvb3Rub3RlIj48c3BhbiBjbGFzcz0iZm9vdG5vZGVOdW1iZXIiPjxhIGNsYXNzPSJGb290bm90ZV8yMF9TeW1ib2wiIGlkPSJmdG4xIiBocmVmPSIjYm9keV9mdG4xIj4xPC9hPjwvc3Bhbj5UaGlzIGRvY3VtZW50IGlzIHRvIGJlIGluc2VydGVkIGFzIGl0IGlzIGluIG90aGVyIGVuY2xvc2luZyBkb2N1bWVudHMuIElmIHRoZSB1c2VyIGlzIHdpbGxpbmcgaGUgLyBzaGUgY2FuIG1vZGlmeSB0aGUgdGl0bGUgbGV2ZWwgaW4gb3JkZXIgdG8gZmFjaWxpdGF0ZSB0aGlzIGludGVncmF0aW9uPC9wPgorICAgICAgIAorICAgICAgPGltZyBzdHlsZT0iaGVpZ2h0OjE0Ljc0MWNtO3dpZHRoOjEwLjU3NWNtOyIgYWx0PSIiIHNyYz0iZGF0YTppbWFnZS8qO2Jhc2U2NCxWa05NVFZSR0FRQXhBQUFBQUFBQUFBRUFHd0FBQUFBQUFBQUFBQUFBQUFBQkFBQUFBUUFBQUFFQUFBQUJBQUFBQVU0cEFBQ1VPUUFBRnd3QUFKWUFBUUFDQUFBQUNRQ0xBQUVBQWdBQUFQLy9pUUFCQUNFQUFBQUJBQnNBQUFBTkFBQUFBQUJzK3YvL0FRQUFBQUVBQUFBQkFBQUFBUUFBQUFDVkFBRUFCQUFBQUFBQUFBQ0xBQUVBQWdBQUFDQUFnZ0FCQUNFQUFBQUNBQnNBQUFBQ0FBSUFBQUNVQlFBQUp6OEFBQUVBQUFBQUFFMHBBQUFDQUFDTUFBRUFBQUFBQUlRQUFRQUZBQUFBQUFBQUFBQ0ZBQUVBQlFBQUFQLy96QUFCWndBQkFCQUFBQUFCQUFBQWxRVUFBQ3NwQUFBTkN3QUFoQUFCQUFVQUFBQUFBQUFBQUlzQUFRQUNBQUFBSUFDQkFBRUFFQUFBQVBENi8vKzVBd0FBNnpFQUFPaEFBQUNNQUFFQUFBQUFBSXNBQVFBQ0FBQUFBd0NFQUFFQUJRQUFBSUFBQUFBQmhRQUJBQVVBQUFDQUFBQUFBWVVBQVFBRkFBQUFnQUFBQUFGdkFBSUFMZ0FBQUFFQUJRRFYvLy8vd0FVQUFFMHBBQURBQlFBQVRTa0FBR29GQUFEVi8vLy9hZ1VBQU5YLy8vL0FCUUFBQUFDRkFBRUFCUUFBQUlBQUFBQUJqQUFCQUFBQUFBQ0xBQUVBQWdBQUFBTUFoQUFCQUFVQUFBQ0FBQUFBQVlVQUFRQUZBQUFBZ0FBQUFBR0ZBQUVBQlFBQUFJQUFBQUFCYndBQ0FDNEFBQUFCQUFVQUxBQUFBRG9MQUFEMktBQUFPZ3NBQVBZb0FBRGtDZ0FBTEFBQUFPUUtBQUFzQUFBQU9nc0FBQUFBaFFBQkFBVUFBQUNBQUFBQUFZd0FBUUFBQUFBQWl3QUJBQUlBQUFBREFJUUFBUUFGQUFBQWdBQUFBQUdGQUFFQUJRQUFBSUFBQUFBQmhRQUJBQVVBQUFDQUFBQUFBVzhBQWdBdUFBQUFBUUFGQUN3QUFBRDhEQUFBOWlnQUFQd01BQUQyS0FBQTJnd0FBQ3dBQUFEYURBQUFMQUFBQVB3TUFBQUFBSVVBQVFBRkFBQUFnQUFBQUFHTUFBRUFBQUFBQUlzQUFRQUNBQUFBQXdDRUFBRUFCUUFBQUlBQUFBQUJoUUFCQUFVQUFBQ0FBQUFBQVlVQUFRQUZBQUFBZ0FBQUFBRnZBQUlBTGdBQUFBRUFCUUFzQUFBQTJRNEFBUFlvQUFEWkRnQUE5aWdBQUxjT0FBQXNBQUFBdHc0QUFDd0FBQURaRGdBQUFBQ0ZBQUVBQlFBQUFJQUFBQUFCakFBQkFBQUFBQUNMQUFFQUFnQUFBQU1BaEFBQkFBVUFBQUNBQUFBQUFZVUFBUUFGQUFBQWdBQUFBQUdGQUFFQUJRQUFBSUFBQUFBQmJ3QUNBQzRBQUFBQkFBVUFMQUFBQUxVUUFBRDJLQUFBdFJBQUFQWW9BQUNURUFBQUxBQUFBSk1RQUFBc0FBQUF0UkFBQUFBQWhRQUJBQVVBQUFDQUFBQUFBWXdBQVFBQUFBQUFpd0FCQUFJQUFBQURBSVFBQVFBRkFBQUFnQUFBQUFHRkFBRUFCUUFBQUlBQUFBQUJoUUFCQUFVQUFBQ0FBQUFBQVc4QUFnQXVBQUFBQVFBRkFDd0FBQUNSRWdBQTlpZ0FBSkVTQUFEMktBQUFieElBQUN3QUFBQnZFZ0FBTEFBQUFKRVNBQUFBQUlVQUFRQUZBQUFBZ0FBQUFBR01BQUVBQUFBQUFJc0FBUUFDQUFBQUF3Q0VBQUVBQlFBQUFJQUFBQUFCaFFBQkFBVUFBQUNBQUFBQUFZVUFBUUFGQUFBQWdBQUFBQUZ2QUFJQUxnQUFBQUVBQlFBc0FBQUFiUlFBQVBZb0FBQnRGQUFBOWlnQUFFc1VBQUFzQUFBQVN4UUFBQ3dBQUFCdEZBQUFBQUNGQUFFQUJRQUFBSUFBQUFBQmpBQUJBQUFBQUFDTEFBRUFBZ0FBQUFNQWhBQUJBQVVBQUFDQUFBQUFBWVVBQVFBRkFBQUFnQUFBQUFHRkFBRUFCUUFBQUlBQUFBQUJid0FDQUM0QUFBQUJBQVVBTEFBQUFFb1dBQUQyS0FBQVNoWUFBUFlvQUFBb0ZnQUFMQUFBQUNnV0FBQXNBQUFBU2hZQUFBQUFoUUFCQUFVQUFBQ0FBQUFBQVl3QUFRQUFBQUFBaXdBQkFBSUFBQUFEQUlRQUFRQUZBQUFBZ0FBQUFBR0ZBQUVBQlFBQUFJQUFBQUFCaFFBQkFBVUFBQUNBQUFBQUFXOEFBZ0F1QUFBQUFRQUZBQ3dBQUFBbUdBQUE5aWdBQUNZWUFBRDJLQUFBQkJnQUFDd0FBQUFFR0FBQUxBQUFBQ1lZQUFBQUFJVUFBUUFGQUFBQWdBQUFBQUdNQUFFQUFBQUFBSXNBQVFBQ0FBQUFBd0NFQUFFQUJRQUFBSUFBQUFBQmhRQUJBQVVBQUFDQUFBQUFBWVVBQVFBRkFBQUFnQUFBQUFGdkFBSUFMZ0FBQUFFQUJRQXNBQUFBQWhvQUFQWW9BQUFDR2dBQTlpZ0FBT0FaQUFBc0FBQUE0QmtBQUN3QUFBQUNHZ0FBQUFDRkFBRUFCUUFBQUlBQUFBQUJqQUFCQUFBQUFBQ0xBQUVBQWdBQUFBTUFoQUFCQUFVQUFBQ0FBQUFBQVlVQUFRQUZBQUFBZ0FBQUFBR0ZBQUVBQlFBQUFJQUFBQUFCYndBQ0FDNEFBQUFCQUFVQUxBQUFBTVFiQUFEMktBQUF4QnNBQVBZb0FBQ2lHd0FBTEFBQUFLSWJBQUFzQUFBQXhCc0FBQUFBaFFBQkFBVUFBQUNBQUFBQUFZd0FBUUFBQUFBQWl3QUJBQUlBQUFBREFJUUFBUUFGQUFBQWdBQUFBQUdGQUFFQUJRQUFBSUFBQUFBQmhRQUJBQVVBQUFDQUFBQUFBVzhBQWdBdUFBQUFBUUFGQUN3QUFBQ2dIUUFBOWlnQUFLQWRBQUQyS0FBQWZoMEFBQ3dBQUFCK0hRQUFMQUFBQUtBZEFBQUFBSVVBQVFBRkFBQUFnQUFBQUFHTUFBRUFBQUFBQUlzQUFRQUNBQUFBQXdDRUFBRUFCUUFBQUlBQUFBQUJoUUFCQUFVQUFBQ0FBQUFBQVlVQUFRQUZBQUFBZ0FBQUFBRnZBQUlBTGdBQUFBRUFCUUFzQUFBQWZCOEFBUFlvQUFCOEh3QUE5aWdBQUZvZkFBQXNBQUFBV2g4QUFDd0FBQUI4SHdBQUFBQ0ZBQUVBQlFBQUFJQUFBQUFCakFBQkFBQUFBQUNMQUFFQUFnQUFBQU1BaEFBQkFBVUFBQUNBQUFBQUFZVUFBUUFGQUFBQWdBQUFBQUdGQUFFQUJRQUFBSUFBQUFBQmJ3QUNBQzRBQUFBQkFBVUFMQUFBQUZraEFBRDJLQUFBV1NFQUFQWW9BQUEzSVFBQUxBQUFBRGNoQUFBc0FBQUFXU0VBQUFBQWhRQUJBQVVBQUFDQUFBQUFBWXdBQVFBQUFBQUFpd0FCQUFJQUFBQURBSVFBQVFBRkFBQUFnQUFBQUFHRkFBRUFCUUFBQUlBQUFBQUJoUUFCQUFVQUFBQ0FBQUFBQVc4QUFnQXVBQUFBQVFBRkFDd0FBQUExSXdBQTlpZ0FBRFVqQUFEMktBQUFFeU1BQUN3QUFBQVRJd0FBTEFBQUFEVWpBQUFBQUlVQUFRQUZBQUFBZ0FBQUFBR01BQUVBQUFBQUFJc0FBUUFDQUFBQUF3Q0VBQUVBQlFBQUFJQUFBQUFCaFFBQkFBVUFBQUNBQUFBQUFZVUFBUUFGQUFBQWdBQUFBQUZ2QUFJQUxnQUFBQUVBQlFBc0FBQUFFU1VBQVBZb0FBQVJKUUFBOWlnQUFPOGtBQUFzQUFBQTd5UUFBQ3dBQUFBUkpRQUFBQUNGQUFFQUJRQUFBSUFBQUFBQmpBQUJBQUFBQUFDTEFBRUFBZ0FBQUFNQWhBQUJBQVVBQUFDQUFBQUFBWVVBQVFBRkFBQUFnQUFBQUFHRkFBRUFCUUFBQUlBQUFBQUJid0FDQUM0QUFBQUJBQVVBTEFBQUFPMG1BQUQyS0FBQTdTWUFBUFlvQUFETEpnQUFMQUFBQU1zbUFBQXNBQUFBN1NZQUFBQUFoUUFCQUFVQUFBQ0FBQUFBQVl3QUFRQUFBQUFBaXdBQkFBSUFBQUFEQUlRQUFRQUZBQUFBZ0FBQUFBR0ZBQUVBQlFBQUFJQUFBQUFCaFFBQkFBVUFBQUNBQUFBQUFXOEFBZ0F1QUFBQUFRQUZBQ3dBQUFES0tBQUE5aWdBQU1vb0FBRDJLQUFBcUNnQUFDd0FBQUNvS0FBQUxBQUFBTW9vQUFBQUFJVUFBUUFGQUFBQWdBQUFBQUdNQUFFQUFBQUFBSXNBQVFBQ0FBQUFBd0NFQUFFQUJRQUFBSUFBQUFBQmhRQUJBQVVBQUFDQUFBQUFBWVVBQVFBRkFBQUFnQUFBQUFGdkFBSUFMZ0FBQUFFQUJRQXNBQUFBcGlvQUFQWW9BQUNtS2dBQTlpZ0FBSVFxQUFBc0FBQUFoQ29BQUN3QUFBQ21LZ0FBQUFDRkFBRUFCUUFBQUlBQUFBQUJqQUFCQUFBQUFBQ0xBQUVBQWdBQUFBTUFoQUFCQUFVQUFBQ0FBQUFBQVlVQUFRQUZBQUFBZ0FBQUFBR0ZBQUVBQlFBQUFJQUFBQUFCYndBQ0FDNEFBQUFCQUFVQUxBQUFBSUlzQUFEMktBQUFnaXdBQVBZb0FBQmdMQUFBTEFBQUFHQXNBQUFzQUFBQWdpd0FBQUFBaFFBQkFBVUFBQUNBQUFBQUFZd0FBUUFBQUFBQWl3QUJBQUlBQUFBREFJUUFBUUFGQUFBQWdBQUFBQUdGQUFFQUJRQUFBSUFBQUFBQmhRQUJBQVVBQUFDQUFBQUFBVzhBQWdBdUFBQUFBUUFGQUN3QUFBQmVMZ0FBOWlnQUFGNHVBQUQyS0FBQVBDNEFBQ3dBQUFBOExnQUFMQUFBQUY0dUFBQUFBSVVBQVFBRkFBQUFnQUFBQUFHTUFBRUFBQUFBQUlzQUFRQUNBQUFBQXdDRUFBRUFCUUFBQUlBQUFBQUJoUUFCQUFVQUFBQ0FBQUFBQVlVQUFRQUZBQUFBZ0FBQUFBRnZBQUlBTGdBQUFBRUFCUUFzQUFBQU96QUFBUFlvQUFBN01BQUE5aWdBQUJrd0FBQXNBQUFBR1RBQUFDd0FBQUE3TUFBQUFBQ0ZBQUVBQlFBQUFJQUFBQUFCakFBQkFBQUFBQUNMQUFFQUFnQUFBQU1BaEFBQkFBVUFBQUNBQUFBQUFZVUFBUUFGQUFBQWdBQUFBQUdGQUFFQUJRQUFBSUFBQUFBQmJ3QUNBQzRBQUFBQkFBVUFMQUFBQUJjeUFBRDJLQUFBRnpJQUFQWW9BQUQxTVFBQUxBQUFBUFV4QUFBc0FBQUFGeklBQUFBQWhRQUJBQVVBQUFDQUFBQUFBWXdBQVFBQUFBQUFpd0FCQUFJQUFBQURBSVFBQVFBRkFBQUFnQUFBQUFHRkFBRUFCUUFBQUlBQUFBQUJoUUFCQUFVQUFBQ0FBQUFBQVc4QUFnQXVBQUFBQVFBRkFDd0FBQUR6TXdBQTlpZ0FBUE16QUFEMktBQUEwVE1BQUN3QUFBRFJNd0FBTEFBQUFQTXpBQUFBQUlVQUFRQUZBQUFBZ0FBQUFBR01BQUVBQUFBQUFJc0FBUUFDQUFBQUF3Q0VBQUVBQlFBQUFJQUFBQUFCaFFBQkFBVUFBQUNBQUFBQUFZVUFBUUFGQUFBQWdBQUFBQUZ2QUFJQUxnQUFBQUVBQlFBc0FBQUF6elVBQVBZb0FBRFBOUUFBOWlnQUFLMDFBQUFzQUFBQXJUVUFBQ3dBQUFEUE5RQUFBQUNGQUFFQUJRQUFBSUFBQUFBQmpBQUJBQUFBQUFDTEFBRUFBZ0FBQUFNQWhBQUJBQVVBQUFDQUFBQUFBWVVBQVFBRkFBQUFnQUFBQUFHRkFBRUFCUUFBQUlBQUFBQUJid0FDQUM0QUFBQUJBQVVBTEFBQUFLdzNBQUQyS0FBQXJEY0FBUFlvQUFDS053QUFMQUFBQUlvM0FBQXNBQUFBckRjQUFBQUFoUUFCQUFVQUFBQ0FBQUFBQVl3QUFRQUFBQUFBaXdBQkFBSUFBQUFEQUlRQUFRQUZBQUFBZ0FBQUFBR0ZBQUVBQlFBQUFJQUFBQUFCaFFBQkFBVUFBQUNBQUFBQUFXOEFBZ0F1QUFBQUFRQUZBQ3dBQUFDSU9RQUE5aWdBQUlnNUFBRDJLQUFBWmprQUFDd0FBQUJtT1FBQUxBQUFBSWc1QUFBQUFJVUFBUUFGQUFBQWdBQUFBQUdNQUFFQUFBQUFBSXNBQVFBQ0FBQUFBd0NFQUFFQUJRQUFBSUFBQUFBQmhRQUJBQVVBQUFDQUFBQUFBWVVBQVFBRkFBQUFnQUFBQUFGdkFBSUFMZ0FBQUFFQUJRQXNBQUFBWkRzQUFQWW9BQUJrT3dBQTlpZ0FBRUk3QUFBc0FBQUFRanNBQUN3QUFBQmtPd0FBQUFDRkFBRUFCUUFBQUlBQUFBQUJqQUFCQUFBQUFBQ0xBQUVBQWdBQUFBTUFoQUFCQUFVQUFBQ0FBQUFBQVlVQUFRQUZBQUFBZ0FBQUFBR0ZBQUVBQlFBQUFJQUFBQUFCYndBQ0FDNEFBQUFCQUFVQUxBQUFBRUE5QUFEMktBQUFRRDBBQVBZb0FBQWVQUUFBTEFBQUFCNDlBQUFzQUFBQVFEMEFBQUFBaFFBQkFBVUFBQUNBQUFBQUFZd0FBUUFBQUFBQWl3QUJBQUlBQUFBREFJUUFBUUFGQUFBQWdBQUFBQUdGQUFFQUJRQUFBSUFBQUFBQmhRQUJBQVVBQUFDQUFBQUFBVzhBQWdBdUFBQUFBUUFGQU5YLy8vOGRQd0FBVFNrQUFCMC9BQUJOS1FBQSt6NEFBTlgvLy8vN1BnQUExZi8vL3gwL0FBQUFBSVVBQVFBRkFBQUFnQUFBQUFHTUFBRUFBQUFBQUlzQUFRQUNBQUFBQXdDRUFBRUFCUUFBQUlBQUFBQUJoUUFCQUFVQUFBQ0FBQUFBQVlVQUFRQUZBQUFBZ0FBQUFBRnZBQUlBTGdBQUFBRUFCUURWLy8vL2FnVUFBTlgvLy84ZFB3QUFLd0FBQUIwL0FBQXJBQUFBYWdVQUFOWC8vLzlxQlFBQUFBQ0ZBQUVBQlFBQUFJQUFBQUFCakFBQkFBQUFBQUNMQUFFQUFnQUFBQU1BaEFBQkFBVUFBQUNBQUFBQUFZVUFBUUFGQUFBQWdBQUFBQUdGQUFFQUJRQUFBSUFBQUFBQmJ3QUNBQzRBQUFBQkFBVUFOQWdBQU1FRkFBQTBDQUFBK2o0QUFJb0lBQUQ2UGdBQWlnZ0FBTUVGQUFBMENBQUF3UVVBQUFBQWhRQUJBQVVBQUFDQUFBQUFBWXdBQVFBQUFBQUFpd0FCQUFJQUFBQURBSVFBQVFBRkFBQUFnQUFBQUFHRkFBRUFCUUFBQUlBQUFBQUJoUUFCQUFVQUFBQ0FBQUFBQVc4QUFnQXVBQUFBQVFBRkFQY29BQUJxQlFBQTl5Z0FBQjAvQUFCTktRQUFIVDhBQUUwcEFBQnFCUUFBOXlnQUFHb0ZBQUFBQUlVQUFRQUZBQUFBZ0FBQUFBR01BQUVBQUFBQUFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUlBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUEvd01BQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBaGdBQkFBUUFBQUFBQUFBQWtRQUJBQVVBQUFELy8vLy9BWmNBQVFBRkFBQUEvLy8vL3dGeEFBSUFSUUFBQUU0QkFBRFZDQUFBQndCQlkzSnZibmx0QUFBSEFBY0FBQUR1QUFBQXB3RUFBQ3dDQUFEL0FnQUEwd01BQUl3RUFBREtCUUFBQndCQkFHTUFjZ0J2QUc0QWVRQnRBSEVBQWdCYUFBQUFvUlVBQU5VSUFBQUtBRVJsWm1sdWFYUnBiMjRBQUFvQUNnQUFBTzRBQUFEQ0FRQUFMQUlBQUpVQ0FBQnBBd0FBMHdNQUFEMEVBQUNuQkFBQWVnVUFBRTRHQUFBS0FFUUFaUUJtQUdrQWJnQnBBSFFBYVFCdkFHNEFpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUQvQXdBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDUkFBRUFCUUFBQVAvLy8vOEJsd0FCQUFVQUFBRC8vLy8vQVhFQUFnQXBBQUFBZ2dFQUFIOE1BQUFEQUVGRFZBQUFBd0FEQUFBQTdnQUFBTndCQUFDd0FnQUFBd0JCQUVNQVZBQnhBQUlBUGdBQUFJSUJBQUJhRGdBQUJnQkJRMVJUV1ZNQUFBWUFCZ0FBQU80QUFBRGNBUUFBc0FJQUFKNERBQUJ5QkFBQVlBVUFBQVlBUVFCREFGUUFVd0JaQUZNQWNRQUNBRGNBQUFDQ0FRQUFOUkFBQUFVQVFVeEdWVk1BQUFVQUJRQUFBTzRBQUFEQ0FRQUFsUUlBQUlRREFBQnlCQUFBQlFCQkFFd0FSZ0JWQUZNQWNRQUNBQ2tBQUFDQ0FRQUFFQklBQUFNQVEwTlRBQUFEQUFNQUFBRHVBQUFBM0FFQUFNb0NBQUFEQUVNQVF3QlRBSEVBQWdBK0FBQUFnZ0VBQU9zVEFBQUdBRU5QVFZOWlV3QUFCZ0FHQUFBQTdnQUFBUGNCQUFBYUF3QUFDQVFBQU53RUFBREtCUUFBQmdCREFFOEFUUUJUQUZrQVV3QnhBQUlBS1FBQUFJSUJBQURHRlFBQUF3QkZSa1lBQUFNQUF3QUFBTlFBQUFDbkFRQUFld0lBQUFNQVJRQkdBRVlBY1FBQ0FDa0FBQUNDQVFBQW9SY0FBQU1BUlU1V0FBQURBQU1BQUFEVUFBQUF3Z0VBQUxBQ0FBQURBRVVBVGdCV0FJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUlBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUEvd01BQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBa1FBQkFBVUFBQUQvLy8vL0FaY0FBUUFGQUFBQS8vLy8vd0Z4QUFJQVBnQUFBSUlCQUFCOEdRQUFCZ0JGV0ZSRFQwMEFBQVlBQmdBQUFOUUFBQURDQVFBQWxRSUFBSVFEQUFDTUJBQUFyd1VBQUFZQVJRQllBRlFBUXdCUEFFMEFpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUQvQXdBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDUkFBRUFCUUFBQVAvLy8vOEJsd0FCQUFVQUFBRC8vLy8vQVhFQUFnQXBBQUFBZ2dFQUFGY2JBQUFEQUVkUVV3QUFBd0FEQUFBQUNRRUFBUGNCQUFEbEFnQUFBd0JIQUZBQVV3QnhBQUlBS1FBQUFJSUJBQUF5SFFBQUF3QklUVWtBQUFNQUF3QUFBTzRBQUFBUkFnQUFld0lBQUFNQVNBQk5BRWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFEL0F3QUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1JBQUVBQlFBQUFQLy8vLzhCbHdBQkFBVUFBQUQvLy8vL0FYRUFBZ0MxQUFBQWlnZ0FBRElkQUFBWEFFaDFiV0Z1SUUxaFkyaHBibVVnU1c1MFpYSm1ZV05sQUFBWEFCY0FBQUR1QUFBQXB3RUFBTW9DQUFDRUF3QUFQUVFBQUtjRUFBREtCUUFBZ3dZQUFEd0hBQUQxQndBQVJRZ0FBUDRJQUFDM0NRQUFJUW9BQUhBS0FBQXFDd0FBa3dzQUFFME1BQUMyREFBQUJnMEFBTDhOQUFCNERnQUFNUThBQUJjQVNBQjFBRzBBWVFCdUFDQUFUUUJoQUdNQWFBQnBBRzRBWlFBZ0FFa0FiZ0IwQUdVQWNnQm1BR0VBWXdCbEFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUlBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUEvd01BQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBa1FBQkFBVUFBQUQvLy8vL0FaY0FBUUFGQUFBQS8vLy8vd0Z4QUFJQUlnQUFBSUlCQUFBTkh3QUFBZ0JJVndBQUFnQUNBQUFBN2dBQUFFWUNBQUFDQUVnQVZ3Q0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFCUUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBUDhEQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpFQUFRQUZBQUFBLy8vLy93R1hBQUVBQlFBQUFQLy8vLzhCY1FBQ0FFd0FBQUNLQ0FBQURSOEFBQWdBU0dGeVpGZGhjbVVBQUFnQUNBQUFBTzRBQUFDbkFRQUFFUUlBQU1vQ0FBQWlCQUFBM0FRQUFFVUZBQUQvQlFBQUNBQklBR0VBY2dCa0FGY0FZUUJ5QUdVQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBZ0FBQUFBQUFBQURBUUFBQUFBQUFBQUFBRC9Bd0FBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NSQUFFQUJRQUFBUC8vLy84Qmx3QUJBQVVBQUFELy8vLy9BWEVBQWdBcEFBQUFnZ0VBQU9nZ0FBQURBRXBTVUFBQUF3QURBQUFBdVFBQUFLY0JBQUNWQWdBQUF3QktBRklBVUFCeEFBSUFLUUFBQUlJQkFBRERJZ0FBQXdCTlRVa0FBQU1BQXdBQUFDTUJBQUJHQWdBQXNBSUFBQU1BVFFCTkFFa0FjUUFDQUNrQUFBQ0NBUUFBbmlRQUFBTUFUME5KQUFBREFBTUFBQUFKQVFBQTl3RUFBR0VDQUFBREFFOEFRd0JKQUhFQUFnQXBBQUFBZ2dFQUFIa21BQUFEQUU5RFZRQUFBd0FEQUFBQUNRRUFBUGNCQUFEbEFnQUFBd0JQQUVNQVZRQnhBQUlBS1FBQUFJSUJBQUJVS0FBQUF3QlNUMU1BQUFNQUF3QUFBTzRBQUFEM0FRQUE1UUlBQUFNQVVnQlBBRk1BY1FBQ0FDSUFBQUNDQVFBQUx5b0FBQUlBVWxRQUFBSUFBZ0FBQU80QUFBRENBUUFBQWdCU0FGUUFpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUQvQXdBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDUkFBRUFCUUFBQVAvLy8vOEJsd0FCQUFVQUFBRC8vLy8vQVhFQUFnQ2dBQUFBaWdnQUFDOHFBQUFVQUZKdmRHRjBhVzl1SUZSeVlXNXpiR0YwYVc5dUFBQVVBQlFBQUFEdUFBQUF3Z0VBQUN3Q0FBRC9BZ0FBYVFNQUFOTURBQUNuQkFBQWVnVUFBT1FGQUFDNEJnQUFQQWNBQUJBSUFBRGpDQUFBZ2drQUFPd0pBQURBQ2dBQUtnc0FBSk1MQUFCbkRBQUFPdzBBQUJRQVVnQnZBSFFBWVFCMEFHa0Fid0J1QUNBQVZBQnlBR0VBYmdCekFHd0FZUUIwQUdrQWJ3QnVBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBL3dNQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWtRQUJBQVVBQUFELy8vLy9BWmNBQVFBRkFBQUEvLy8vL3dGeEFBSUFLUUFBQUlJQkFBQUtMQUFBQXdCVFJFVUFBQU1BQXdBQUFPNEFBQURjQVFBQXNBSUFBQU1BVXdCRUFFVUFjUUFDQUNJQUFBQ0NBUUFBNVMwQUFBSUFVMWNBQUFJQUFnQUFBTzRBQUFCR0FnQUFBZ0JUQUZjQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBRC9Bd0FBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NSQUFFQUJRQUFBUC8vLy84Qmx3QUJBQVVBQUFELy8vLy9BWEVBQWdCTUFBQUFpZ2dBQU9VdEFBQUlBRk52Wm5SWFlYSmxBQUFJQUFnQUFBRHVBQUFBcHdFQUFQY0JBQUJoQWdBQXVRTUFBSElFQUFEY0JBQUFsUVVBQUFnQVV3QnZBR1lBZEFCWEFHRUFjZ0JsQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBSUFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQS93TUFBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFrUUFCQUFVQUFBRC8vLy8vQVpjQUFRQUZBQUFBLy8vLy93RnhBQUlBTUFBQUFJSUJBQURBTHdBQUJBQlVRa05NQUFBRUFBUUFBQURVQUFBQXdnRUFBTEFDQUFDRUF3QUFCQUJVQUVJQVF3Qk1BSEVBQWdBd0FBQUFnZ0VBQUpzeEFBQUVBRlJDUkV3QUFBUUFCQUFBQU5RQUFBRENBUUFBc0FJQUFJUURBQUFFQUZRQVFnQkVBRXdBY1FBQ0FDa0FBQUNDQVFBQWRqTUFBQU1BVlVGV0FBQURBQU1BQUFEdUFBQUEzQUVBQU1vQ0FBQURBRlVBUVFCV0FIRUFBZ0FwQUFBQWdnRUFBRkUxQUFBREFGVkhVd0FBQXdBREFBQUE3Z0FBQVBjQkFBRGxBZ0FBQXdCVkFFY0FVd0J4QUFJQUtRQUFBSUlCQUFBc053QUFBd0JWUjFZQUFBTUFBd0FBQU80QUFBRDNBUUFBNVFJQUFBTUFWUUJIQUZZQWNRQUNBQ0lBQUFDQ0FRQUFCemtBQUFJQVZVMEFBQUlBQWdBQUFPNEFBQUFSQWdBQUFnQlZBRTBBY1FBQ0FDa0FBQUNDQVFBQTRqb0FBQU1BVlUxVEFBQURBQU1BQUFEdUFBQUFFUUlBQVA4Q0FBQURBRlVBVFFCVEFIRUFBZ0FwQUFBQWdnRUFBTDA4QUFBREFGVlRWZ0FBQXdBREFBQUE3Z0FBQU53QkFBREtBZ0FBQXdCVkFGTUFWZ0J4QUFJQUtRQUFBSUlCQUFDWVBnQUFBd0JWVlZZQUFBTUFBd0FBQU80QUFBRGNBUUFBeWdJQUFBTUFWUUJWQUZZQWl3QUJBQUlBQUFBQUdKVUFBUUFFQUFBQUFnRUFBSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQ0FBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFCUUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQlFBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ01BQUVBQUFBQUFJc0FBUUFDQUFBQS8vK1JBQUVBQlFBQUFBQUFBQUFBbHdBQkFBVUFBQUFBQUFBQUFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUlBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBaGdBQkFBUUFBQUFBQUFBQWl3QUJBQUlBQUFBQUdKVUFBUUFFQUFBQUFnRUFBSllBQVFBQ0FBQUFDUUNXQUFFQUFnQUFBQWtBY1FBQ0FEZ0FBQUNDQ0FBQWdBd0FBQWdBUVVOVWRXRjBiM0lBQUFNQUF3QUFBTzRBQUFEY0FRQUFzQUlBQUFnQVFRQkRBRlFBZFFCaEFIUUFid0J5QUl3QUFRQUFBQUFBa1FBQkFBVUFBQUFBQUFBQUFKY0FBUUFGQUFBQUFBQUFBQUNSQUFFQUJRQUFBUC8vLy84QmlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NMQUFFQUFnQUFBQUFZbFFBQkFBUUFBQUFDQVFBQWxnQUJBQUlBQUFBSkFKWUFBUUFDQUFBQUNRQnhBQUlBUUFBQUFESUxBQUNBREFBQUNBQkJRMVIxWVhSdmNnTUFCUUFGQUFBQXVRQUFBSElCQUFEY0FRQUFsUUlBQVA4Q0FBQUlBRUVBUXdCVUFIVUFZUUIwQUc4QWNnQ01BQUVBQUFBQUFJd0FBUUFBQUFBQWl3QUJBQUlBQUFBQUdKVUFBUUFFQUFBQUFnRUFBSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQ0FBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFCUUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQlFBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFDQUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUJRQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQ0FBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFCUUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDTUFBRUFBQUFBQUlzQUFRQUNBQUFBLy8rUkFBRUFCUUFBQUFBQUFBQUFsd0FCQUFVQUFBQUFBQUFBQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBSUFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFoZ0FCQUFRQUFBQUFBQUFBaXdBQkFBSUFBQUFBR0pVQUFRQUVBQUFBQWdFQUFKWUFBUUFDQUFBQUNRQ1dBQUVBQWdBQUFBa0FjUUFDQUUwQUFBQ0NDQUFBWFE0QUFBOEFRVU5VZFdGMGIzSWdVMWxUZEdWdEFBQURBQU1BQUFEdUFBQUEzQUVBQUxBQ0FBQVBBRUVBUXdCVUFIVUFZUUIwQUc4QWNnQWdBRk1BV1FCVEFIUUFaUUJ0QUl3QUFRQUFBQUFBa1FBQkFBVUFBQUFBQUFBQUFKY0FBUUFGQUFBQUFBQUFBQUNSQUFFQUJRQUFBUC8vLy84QmlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NMQUFFQUFnQUFBQUFZbFFBQkFBUUFBQUFDQVFBQWxnQUJBQUlBQUFBSkFKWUFBUUFDQUFBQUNRQnhBQUlBV1FBQUFESUxBQUJkRGdBQUR3QkJRMVIxWVhSdmNpQlRXVk4wWlcwREFBWUFCZ0FBQUxrQUFBQnlBUUFBM0FFQUFKVUNBQUQvQWdBQWFRTUFBQThBUVFCREFGUUFkUUJoQUhRQWJ3QnlBQ0FBVXdCWkFGTUFkQUJsQUcwQWpBQUJBQUFBQUFDUkFBRUFCUUFBQUFBQUFBQUFsd0FCQUFVQUFBQUFBQUFBQUpFQUFRQUZBQUFBLy8vLy93R0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFDQUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUlzQUFRQUNBQUFBQUJpVkFBRUFCQUFBQUFJQkFBQ1dBQUVBQWdBQUFBa0FsZ0FCQUFJQUFBQUpBSEVBQWdCTkFBQUFtdzRBQUYwT0FBQVBBRUZEVkhWaGRHOXlJRk5aVTNSbGJRa0FBd0FEQUFBQTdnQUFBTUlCQUFDd0FnQUFEd0JCQUVNQVZBQjFBR0VBZEFCdkFISUFJQUJUQUZrQVV3QjBBR1VBYlFDTUFBRUFBQUFBQUpFQUFRQUZBQUFBQUFBQUFBQ1hBQUVBQlFBQUFBQUFBQUFBa1FBQkFBVUFBQUQvLy8vL0FZb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUZBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBaXdBQkFBSUFBQUFBR0pVQUFRQUVBQUFBQWdFQUFKWUFBUUFDQUFBQUNRQ1dBQUVBQWdBQUFBa0FjUUFDQUUwQUFBQkxFUUFBWFE0QUFBOEFRVU5VZFdGMGIzSWdVMWxUZEdWdERBQURBQU1BQUFCcUFBQUFJd0VBQUVZQ0FBQVBBRUVBUXdCVUFIVUFZUUIwQUc4QWNnQWdBRk1BV1FCVEFIUUFaUUJ0QUl3QUFRQUFBQUFBakFBQkFBQUFBQUNMQUFFQUFnQUFBQUFZbFFBQkFBUUFBQUFDQVFBQWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUlBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBRkFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUZBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBSUFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFGQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUlBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBRkFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUZBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBSUFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFGQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUlBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBRkFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUZBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBSUFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFGQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUlBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBRkFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSXdBQVFBQUFBQUFpd0FCQUFJQUFBRC8vNUVBQVFBRkFBQUFBQUFBQUFDWEFBRUFCUUFBQUFBQUFBQUFpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDR0FBRUFCQUFBQUFBQUFBQ0xBQUVBQWdBQUFBQVlsUUFCQUFRQUFBQUNBUUFBbGdBQkFBSUFBQUFKQUpZQUFRQUNBQUFBQ1FCeEFBSUFnUUFBQUlJSUFBQTVFQUFBSXdCQmRYUnZibTl0ZVNCTVpYWmxiSE1nUm05eUlGVnViV0Z1WldRZ1UzbHpkR1Z0Y3dBQUFRQUJBQUFBN2dBQUFDTUFRUUIxQUhRQWJ3QnVBRzhBYlFCNUFDQUFUQUJsQUhZQVpRQnNBSE1BSUFCR0FHOEFjZ0FnQUZVQWJnQnRBR0VBYmdCbEFHUUFJQUJUQUhrQWN3QjBBR1VBYlFCekFJd0FBUUFBQUFBQWtRQUJBQVVBQUFBQUFBQUFBSmNBQVFBRkFBQUFBQUFBQUFDUkFBRUFCUUFBQVAvLy8vOEJpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQVVBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDTEFBRUFBZ0FBQUFBWWxRQUJBQVFBQUFBQ0FRQUFsZ0FCQUFJQUFBQUpBSllBQVFBQ0FBQUFDUUJ4QUFJQW5RQUFBSEFKQUFBNUVBQUFJd0JCZFhSdmJtOXRlU0JNWlhabGJITWdSbTl5SUZWdWJXRnVaV1FnVTNsemRHVnRjd0VBQ0FBSUFBQUF1UUFBQUNNQkFBRGNBUUFBbFFJQUFFOERBQUJ5QkFBQUt3VUFBSlVGQUFBakFFRUFkUUIwQUc4QWJnQnZBRzBBZVFBZ0FFd0FaUUIyQUdVQWJBQnpBQ0FBUmdCdkFISUFJQUJWQUc0QWJRQmhBRzRBWlFCa0FDQUFVd0I1QUhNQWRBQmxBRzBBY3dDTUFBRUFBQUFBQUpFQUFRQUZBQUFBQUFBQUFBQ1hBQUVBQlFBQUFBQUFBQUFBa1FBQkFBVUFBQUQvLy8vL0FZb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUlBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBaXdBQkFBSUFBQUFBR0pVQUFRQUVBQUFBQWdFQUFKWUFBUUFDQUFBQUNRQ1dBQUVBQWdBQUFBa0FjUUFDQUlFQUFBQUZEd0FBT1JBQUFDTUFRWFYwYjI1dmJYa2dUR1YyWld4eklFWnZjaUJWYm0xaGJtVmtJRk41YzNSbGJYTUpBQUVBQVFBQUFOUUFBQUFqQUVFQWRRQjBBRzhBYmdCdkFHMEFlUUFnQUV3QVpRQjJBR1VBYkFCekFDQUFSZ0J2QUhJQUlBQlZBRzRBYlFCaEFHNEFaUUJrQUNBQVV3QjVBSE1BZEFCbEFHMEFjd0NNQUFFQUFBQUFBSkVBQVFBRkFBQUFBQUFBQUFDWEFBRUFCUUFBQUFBQUFBQUFrUUFCQUFVQUFBRC8vLy8vQVlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBRkFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFpd0FCQUFJQUFBQUFHSlVBQVFBRUFBQUFBZ0VBQUpZQUFRQUNBQUFBQ1FDV0FBRUFBZ0FBQUFrQWNRQUNBSlVBQUFEWkR3QUFPUkFBQUNNQVFYVjBiMjV2YlhrZ1RHVjJaV3h6SUVadmNpQlZibTFoYm1Wa0lGTjVjM1JsYlhNS0FBWUFCZ0FBQUxrQUFBQStBUUFBOXdFQUFFWUNBQUQvQWdBQWFRTUFBQ01BUVFCMUFIUUFid0J1QUc4QWJRQjVBQ0FBVEFCbEFIWUFaUUJzQUhNQUlBQkdBRzhBY2dBZ0FGVUFiZ0J0QUdFQWJnQmxBR1FBSUFCVEFIa0Fjd0IwQUdVQWJRQnpBSXdBQVFBQUFBQUFrUUFCQUFVQUFBQUFBQUFBQUpjQUFRQUZBQUFBQUFBQUFBQ1JBQUVBQlFBQUFQLy8vLzhCaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q0xBQUVBQWdBQUFBQVlsUUFCQUFRQUFBQUNBUUFBbGdBQkFBSUFBQUFKQUpZQUFRQUNBQUFBQ1FCeEFBSUFnUUFBQUVJVEFBQTVFQUFBSXdCQmRYUnZibTl0ZVNCTVpYWmxiSE1nUm05eUlGVnViV0Z1WldRZ1UzbHpkR1Z0Y3hBQUFRQUJBQUFBMUFBQUFDTUFRUUIxQUhRQWJ3QnVBRzhBYlFCNUFDQUFUQUJsQUhZQVpRQnNBSE1BSUFCR0FHOEFjZ0FnQUZVQWJnQnRBR0VBYmdCbEFHUUFJQUJUQUhrQWN3QjBBR1VBYlFCekFJd0FBUUFBQUFBQWtRQUJBQVVBQUFBQUFBQUFBSmNBQVFBRkFBQUFBQUFBQUFDUkFBRUFCUUFBQVAvLy8vOEJpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQVVBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDTEFBRUFBZ0FBQUFBWWxRQUJBQVFBQUFBQ0FRQUFsZ0FCQUFJQUFBQUpBSllBQVFBQ0FBQUFDUUJ4QUFJQWlRQUFBQllVQUFBNUVBQUFJd0JCZFhSdmJtOXRlU0JNWlhabGJITWdSbTl5SUZWdWJXRnVaV1FnVTNsemRHVnRjeEVBQXdBREFBQUF1UUFBQUNNQkFBQ05BUUFBSXdCQkFIVUFkQUJ2QUc0QWJ3QnRBSGtBSUFCTUFHVUFkZ0JsQUd3QWN3QWdBRVlBYndCeUFDQUFWUUJ1QUcwQVlRQnVBR1VBWkFBZ0FGTUFlUUJ6QUhRQVpRQnRBSE1BakFBQkFBQUFBQUNSQUFFQUJRQUFBQUFBQUFBQWx3QUJBQVVBQUFBQUFBQUFBSkVBQVFBRkFBQUEvLy8vL3dHS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSXNBQVFBQ0FBQUFBQmlWQUFFQUJBQUFBQUlCQUFDV0FBRUFBZ0FBQUFrQWxnQUJBQUlBQUFBSkFIRUFBZ0NCQUFBQW94VUFBRGtRQUFBakFFRjFkRzl1YjIxNUlFeGxkbVZzY3lCR2IzSWdWVzV0WVc1bFpDQlRlWE4wWlcxekZBQUJBQUVBQUFEdUFBQUFJd0JCQUhVQWRBQnZBRzRBYndCdEFIa0FJQUJNQUdVQWRnQmxBR3dBY3dBZ0FFWUFid0J5QUNBQVZRQnVBRzBBWVFCdUFHVUFaQUFnQUZNQWVRQnpBSFFBWlFCdEFITUFqQUFCQUFBQUFBQ1JBQUVBQlFBQUFBQUFBQUFBbHdBQkFBVUFBQUFBQUFBQUFKRUFBUUFGQUFBQS8vLy8vd0dLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQlFBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FJc0FBUUFDQUFBQUFCaVZBQUVBQkFBQUFBSUJBQUNXQUFFQUFnQUFBQWtBbGdBQkFBSUFBQUFKQUhFQUFnQ1pBQUFBa1JZQUFEa1FBQUFqQUVGMWRHOXViMjE1SUV4bGRtVnNjeUJHYjNJZ1ZXNXRZVzVsWkNCVGVYTjBaVzF6RlFBSEFBY0FBQUM1QUFBQTNBRUFBSlVDQUFCUEF3QUFDQVFBQU1FRUFBQXJCUUFBSXdCQkFIVUFkQUJ2QUc0QWJ3QnRBSGtBSUFCTUFHVUFkZ0JsQUd3QWN3QWdBRVlBYndCeUFDQUFWUUJ1QUcwQVlRQnVBR1VBWkFBZ0FGTUFlUUJ6QUhRQVpRQnRBSE1BakFBQkFBQUFBQUNSQUFFQUJRQUFBQUFBQUFBQWx3QUJBQVVBQUFBQUFBQUFBSkVBQVFBRkFBQUEvLy8vL3dHS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSXNBQVFBQ0FBQUFBQmlWQUFFQUJBQUFBQUlCQUFDV0FBRUFBZ0FBQUFrQWxnQUJBQUlBQUFBSkFIRUFBZ0NCQUFBQXZCc0FBRGtRQUFBakFFRjFkRzl1YjIxNUlFeGxkbVZzY3lCR2IzSWdWVzV0WVc1bFpDQlRlWE4wWlcxekhBQUJBQUVBQUFEdUFBQUFJd0JCQUhVQWRBQnZBRzRBYndCdEFIa0FJQUJNQUdVQWRnQmxBR3dBY3dBZ0FFWUFid0J5QUNBQVZRQnVBRzBBWVFCdUFHVUFaQUFnQUZNQWVRQnpBSFFBWlFCdEFITUFqQUFCQUFBQUFBQ1JBQUVBQlFBQUFBQUFBQUFBbHdBQkFBVUFBQUFBQUFBQUFKRUFBUUFGQUFBQS8vLy8vd0dLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQlFBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FJc0FBUUFDQUFBQUFCaVZBQUVBQkFBQUFBSUJBQUNXQUFFQUFnQUFBQWtBbGdBQkFBSUFBQUFKQUhFQUFnQ1ZBQUFBcWh3QUFEa1FBQUFqQUVGMWRHOXViMjE1SUV4bGRtVnNjeUJHYjNJZ1ZXNXRZVzVsWkNCVGVYTjBaVzF6SFFBR0FBWUFBQUM1QUFBQWNnRUFBTndCQUFDVkFnQUF1UU1BQUhJRUFBQWpBRUVBZFFCMEFHOEFiZ0J2QUcwQWVRQWdBRXdBWlFCMkFHVUFiQUJ6QUNBQVJnQnZBSElBSUFCVkFHNEFiUUJoQUc0QVpRQmtBQ0FBVXdCNUFITUFkQUJsQUcwQWN3Q01BQUVBQUFBQUFJd0FBUUFBQUFBQWl3QUJBQUlBQUFBQUdKVUFBUUFFQUFBQUFnRUFBSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQ0FBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFCUUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQlFBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFDQUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUJRQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQ0FBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFCUUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQlFBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFDQUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUJRQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNNQUFFQUFBQUFBSXNBQVFBQ0FBQUEvLytSQUFFQUJRQUFBQUFBQUFBQWx3QUJBQVVBQUFBQUFBQUFBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWhnQUJBQVFBQUFBQUFBQUFpd0FCQUFJQUFBQUFHSlVBQVFBRUFBQUFBZ0VBQUpZQUFRQUNBQUFBQ1FDV0FBRUFBZ0FBQUFrQWNRQUNBR2tBQUFDQ0NBQUFGUklBQUJzQVEyOXRiV0Z1WkNCaGJtUWdRMjl1ZEhKdmJDQlRkR0YwYVc5dUFBQUJBQUVBQUFEdUFBQUFHd0JEQUc4QWJRQnRBR0VBYmdCa0FDQUFZUUJ1QUdRQUlBQkRBRzhBYmdCMEFISUFid0JzQUNBQVV3QjBBR0VBZEFCcEFHOEFiZ0NNQUFFQUFBQUFBSkVBQVFBRkFBQUFBQUFBQUFDWEFBRUFCUUFBQUFBQUFBQUFrUUFCQUFVQUFBRC8vLy8vQVlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBRkFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFpd0FCQUFJQUFBQUFHSlVBQVFBRUFBQUFBZ0VBQUpZQUFRQUNBQUFBQ1FDV0FBRUFBZ0FBQUFrQWNRQUNBSkVBQUFCd0NRQUFGUklBQUJzQVEyOXRiV0Z1WkNCaGJtUWdRMjl1ZEhKdmJDQlRkR0YwYVc5dUFRQUxBQXNBQUFDNUFBQUEzQUVBQVA4Q0FBQzVBd0FBY2dRQUFDc0ZBQUNWQlFBQVRnWUFBQWNIQUFEQUJ3QUFLZ2dBQUJzQVF3QnZBRzBBYlFCaEFHNEFaQUFnQUdFQWJnQmtBQ0FBUXdCdkFHNEFkQUJ5QUc4QWJBQWdBRk1BZEFCaEFIUUFhUUJ2QUc0QWpBQUJBQUFBQUFDUkFBRUFCUUFBQUFBQUFBQUFsd0FCQUFVQUFBQUFBQUFBQUpFQUFRQUZBQUFBLy8vLy93R0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFDQUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUlzQUFRQUNBQUFBQUJpVkFBRUFCQUFBQUFJQkFBQ1dBQUVBQWdBQUFBa0FsZ0FCQUFJQUFBQUpBSEVBQWdCcEFBQUFtaEVBQUJVU0FBQWJBRU52YlcxaGJtUWdZVzVrSUVOdmJuUnliMndnVTNSaGRHbHZiZ3dBQVFBQkFBQUE3Z0FBQUJzQVF3QnZBRzBBYlFCaEFHNEFaQUFnQUdFQWJnQmtBQ0FBUXdCdkFHNEFkQUJ5QUc4QWJBQWdBRk1BZEFCaEFIUUFhUUJ2QUc0QWpBQUJBQUFBQUFDUkFBRUFCUUFBQUFBQUFBQUFsd0FCQUFVQUFBQUFBQUFBQUpFQUFRQUZBQUFBLy8vLy93R0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFCUUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUlzQUFRQUNBQUFBQUJpVkFBRUFCQUFBQUFJQkFBQ1dBQUVBQWdBQUFBa0FsZ0FCQUFJQUFBQUpBSEVBQWdDQkFBQUFpQklBQUJVU0FBQWJBRU52YlcxaGJtUWdZVzVrSUVOdmJuUnliMndnVTNSaGRHbHZiZzBBQndBSEFBQUF1UUFBQUhJQkFBRGNBUUFBUmdJQUFQOENBQUJQQXdBQXVRTUFBQnNBUXdCdkFHMEFiUUJoQUc0QVpBQWdBR0VBYmdCa0FDQUFRd0J2QUc0QWRBQnlBRzhBYkFBZ0FGTUFkQUJoQUhRQWFRQnZBRzRBakFBQkFBQUFBQUNSQUFFQUJRQUFBQUFBQUFBQWx3QUJBQVVBQUFBQUFBQUFBSkVBQVFBRkFBQUEvLy8vL3dHS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSXNBQVFBQ0FBQUFBQmlWQUFFQUJBQUFBQUlCQUFDV0FBRUFBZ0FBQUFrQWxnQUJBQUlBQUFBSkFIRUFBZ0JwQUFBQVFSWUFBQlVTQUFBYkFFTnZiVzFoYm1RZ1lXNWtJRU52Ym5SeWIyd2dVM1JoZEdsdmJoUUFBUUFCQUFBQTdnQUFBQnNBUXdCdkFHMEFiUUJoQUc0QVpBQWdBR0VBYmdCa0FDQUFRd0J2QUc0QWRBQnlBRzhBYkFBZ0FGTUFkQUJoQUhRQWFRQnZBRzRBakFBQkFBQUFBQUNSQUFFQUJRQUFBQUFBQUFBQWx3QUJBQVVBQUFBQUFBQUFBSkVBQVFBRkFBQUEvLy8vL3dHS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUJRQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSXNBQVFBQ0FBQUFBQmlWQUFFQUJBQUFBQUlCQUFDV0FBRUFBZ0FBQUFrQWxnQUJBQUlBQUFBSkFIRUFBZ0I5QUFBQUx4Y0FBQlVTQUFBYkFFTnZiVzFoYm1RZ1lXNWtJRU52Ym5SeWIyd2dVM1JoZEdsdmJoVUFCZ0FHQUFBQWFnQUFBQ01CQUFDTkFRQUEzQUVBQUpVQ0FBQlBBd0FBR3dCREFHOEFiUUJ0QUdFQWJnQmtBQ0FBWVFCdUFHUUFJQUJEQUc4QWJnQjBBSElBYndCc0FDQUFVd0IwQUdFQWRBQnBBRzhBYmdDTUFBRUFBQUFBQUl3QUFRQUFBQUFBaXdBQkFBSUFBQUFBR0pVQUFRQUVBQUFBQWdFQUFKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFDQUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUJRQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQ0FBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFCUUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQlFBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFDQUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUJRQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNNQUFFQUFBQUFBSXNBQVFBQ0FBQUEvLytSQUFFQUJRQUFBQUFBQUFBQWx3QUJBQVVBQUFBQUFBQUFBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWhnQUJBQVFBQUFBQUFBQUFpd0FCQUFJQUFBQUFHSlVBQVFBRUFBQUFBZ0VBQUpZQUFRQUNBQUFBQ1FDV0FBRUFBZ0FBQUFrQWNRQUNBRndBQUFDQ0NBQUE4Uk1BQUJRQVEwOU5iWFZ1YVdOaGRHbHZiaUJUV1ZOMFpXMEFBQU1BQXdBQUFPNEFBQUQzQVFBQUdnTUFBQlFBUXdCUEFFMEFiUUIxQUc0QWFRQmpBR0VBZEFCcEFHOEFiZ0FnQUZNQVdRQlRBSFFBWlFCdEFJd0FBUUFBQUFBQWtRQUJBQVVBQUFBQUFBQUFBSmNBQVFBRkFBQUFBQUFBQUFDUkFBRUFCUUFBQVAvLy8vOEJpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQVVBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDTEFBRUFBZ0FBQUFBWWxRQUJBQVFBQUFBQ0FRQUFsZ0FCQUFJQUFBQUpBSllBQVFBQ0FBQUFDUUJ4QUFJQWZBQUFBSndMQUFEeEV3QUFGQUJEVDAxdGRXNXBZMkYwYVc5dUlGTlpVM1JsYlFNQUN3QUxBQUFBSXdFQUFOd0JBQUNWQWdBQTVRSUFBSjREQUFCWEJBQUF3UVFBQUJBRkFBREtCUUFBZ3dZQUFPMEdBQUFVQUVNQVR3Qk5BRzBBZFFCdUFHa0FZd0JoQUhRQWFRQnZBRzRBSUFCVEFGa0FVd0IwQUdVQWJRQ01BQUVBQUFBQUFKRUFBUUFGQUFBQUFBQUFBQUNYQUFFQUJRQUFBQUFBQUFBQWtRQUJBQVVBQUFELy8vLy9BWW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWl3QUJBQUlBQUFBQUdKVUFBUUFFQUFBQUFnRUFBSllBQVFBQ0FBQUFDUUNXQUFFQUFnQUFBQWtBY1FBQ0FGd0FBQUNKRWdBQThSTUFBQlFBUTA5TmJYVnVhV05oZEdsdmJpQlRXVk4wWlcwT0FBTUFBd0FBQU80QUFBRENBUUFBc0FJQUFCUUFRd0JQQUUwQWJRQjFBRzRBYVFCakFHRUFkQUJwQUc4QWJnQWdBRk1BV1FCVEFIUUFaUUJ0QUl3QUFRQUFBQUFBa1FBQkFBVUFBQUFBQUFBQUFKY0FBUUFGQUFBQUFBQUFBQUNSQUFFQUJRQUFBUC8vLy84QmlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NMQUFFQUFnQUFBQUFZbFFBQkFBUUFBQUFDQVFBQWxnQUJBQUlBQUFBSkFKWUFBUUFDQUFBQUNRQnhBQUlBWEFBQUFEa1ZBQUR4RXdBQUZBQkRUMDF0ZFc1cFkyRjBhVzl1SUZOWlUzUmxiUkVBQXdBREFBQUFhZ0FBQUNNQkFBQkdBZ0FBRkFCREFFOEFUUUJ0QUhVQWJnQnBBR01BWVFCMEFHa0Fid0J1QUNBQVV3QlpBRk1BZEFCbEFHMEFqQUFCQUFBQUFBQ01BQUVBQUFBQUFJc0FBUUFDQUFBQUFCaVZBQUVBQkFBQUFBSUJBQUNXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQVVBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBZ0FBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FqQUFCQUFBQUFBQ0xBQUVBQWdBQUFQLy9rUUFCQUFVQUFBQUFBQUFBQUpjQUFRQUZBQUFBQUFBQUFBQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFDQUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUlZQUFRQUVBQUFBQUFBQUFJc0FBUUFDQUFBQUFCaVZBQUVBQkFBQUFBSUJBQUNXQUFFQUFnQUFBQWtBbGdBQkFBSUFBQUFKQUhFQUFnQTRBQUFBZ2dnQUFNNFZBQUFJQUVWR1JtVmpkRzl5QUFBREFBTUFBQURVQUFBQXB3RUFBSHNDQUFBSUFFVUFSZ0JHQUdVQVl3QjBBRzhBY2dDTUFBRUFBQUFBQUpFQUFRQUZBQUFBQUFBQUFBQ1hBQUVBQlFBQUFBQUFBQUFBa1FBQkFBVUFBQUQvLy8vL0FZb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUZBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBaXdBQkFBSUFBQUFBR0pVQUFRQUVBQUFBQWdFQUFKWUFBUUFDQUFBQUNRQ1dBQUVBQWdBQUFBa0FjUUFDQUVBQUFBRDlDZ0FBemhVQUFBZ0FSVVpHWldOMGIzSURBQVVBQlFBQUFMa0FBQUJ5QVFBQTNBRUFBSlVDQUFEL0FnQUFDQUJGQUVZQVJnQmxBR01BZEFCdkFISUFqQUFCQUFBQUFBQ01BQUVBQUFBQUFJc0FBUUFDQUFBQUFCaVZBQUVBQkFBQUFBSUJBQUNXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQVVBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBZ0FBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FqQUFCQUFBQUFBQ0xBQUVBQWdBQUFQLy9rUUFCQUFVQUFBQUFBQUFBQUpjQUFRQUZBQUFBQUFBQUFBQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFDQUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUlZQUFRQUVBQUFBQUFBQUFJc0FBUUFDQUFBQUFCaVZBQUVBQkFBQUFBSUJBQUNXQUFFQUFnQUFBQWtBbGdBQkFBSUFBQUFKQUhFQUFnQkJBQUFBZ2dnQUFLb1hBQUFMQUVWT1ZtbHliMjV0Wlc1MEFBQURBQU1BQUFEVUFBQUF3Z0VBQUxBQ0FBQUxBRVVBVGdCV0FHa0FjZ0J2QUc0QWJRQmxBRzRBZEFDTUFBRUFBQUFBQUpFQUFRQUZBQUFBQUFBQUFBQ1hBQUVBQlFBQUFBQUFBQUFBa1FBQkFBVUFBQUQvLy8vL0FZb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUZBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBaXdBQkFBSUFBQUFBR0pVQUFRQUVBQUFBQWdFQUFKWUFBUUFDQUFBQUNRQ1dBQUVBQWdBQUFBa0FjUUFDQUZVQUFBQXlDd0FBcWhjQUFBc0FSVTVXYVhKdmJtMWxiblFEQUFnQUNBQUFBRThBQUFDNUFBQUFjZ0VBQUN3Q0FBQlBBd0FBQ0FRQUFNRUVBQUFyQlFBQUN3QkZBRTRBVmdCcEFISUFid0J1QUcwQVpRQnVBSFFBakFBQkFBQUFBQUNNQUFFQUFBQUFBSXNBQVFBQ0FBQUFBQmlWQUFFQUJBQUFBQUlCQUFDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBZ0FBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQVVBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBZ0FBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FqQUFCQUFBQUFBQ0xBQUVBQWdBQUFQLy9rUUFCQUFVQUFBQUFBQUFBQUpjQUFRQUZBQUFBQUFBQUFBQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFDQUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUlZQUFRQUVBQUFBQUFBQUFJc0FBUUFDQUFBQUFCaVZBQUVBQkFBQUFBSUJBQUNXQUFFQUFnQUFBQWtBbGdBQkFBSUFBQUFKQUhFQUFnQmlBQUFBZ2dnQUFJWVpBQUFXQUVWWVZHVnlibUZzSUVOUFRXMTFibWxqWVhScGIyNEFBQU1BQXdBQUFOUUFBQURDQVFBQWxRSUFBQllBUlFCWUFGUUFaUUJ5QUc0QVlRQnNBQ0FBUXdCUEFFMEFiUUIxQUc0QWFRQmpBR0VBZEFCcEFHOEFiZ0NNQUFFQUFBQUFBSkVBQVFBRkFBQUFBQUFBQUFDWEFBRUFCUUFBQUFBQUFBQUFrUUFCQUFVQUFBRC8vLy8vQVlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBRkFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFpd0FCQUFJQUFBQUFHSlVBQVFBRUFBQUFBZ0VBQUpZQUFRQUNBQUFBQ1FDV0FBRUFBZ0FBQUFrQWNRQUNBRzRBQUFBWEN3QUFoaGtBQUJZQVJWaFVaWEp1WVd3Z1EwOU5iWFZ1YVdOaGRHbHZiZ01BQmdBR0FBQUF1UUFBQUNNQkFBRGNBUUFBbFFJQUFPVUNBQUJQQXdBQUZnQkZBRmdBVkFCbEFISUFiZ0JoQUd3QUlBQkRBRThBVFFCdEFIVUFiZ0JwQUdNQVlRQjBBR2tBYndCdUFJd0FBUUFBQUFBQWtRQUJBQVVBQUFBQUFBQUFBSmNBQVFBRkFBQUFBQUFBQUFDUkFBRUFCUUFBQVAvLy8vOEJpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDTEFBRUFBZ0FBQUFBWWxRQUJBQVFBQUFBQ0FRQUFsZ0FCQUFJQUFBQUpBSllBQVFBQ0FBQUFDUUJ4QUFJQVlnQUFBR1lPQUFDR0dRQUFGZ0JGV0ZSbGNtNWhiQ0JEVDAxdGRXNXBZMkYwYVc5dUNRQURBQU1BQUFEdUFBQUE5d0VBQUJvREFBQVdBRVVBV0FCVUFHVUFjZ0J1QUdFQWJBQWdBRU1BVHdCTkFHMEFkUUJ1QUdrQVl3QmhBSFFBYVFCdkFHNEFqQUFCQUFBQUFBQ1JBQUVBQlFBQUFBQUFBQUFBbHdBQkFBVUFBQUFBQUFBQUFKRUFBUUFGQUFBQS8vLy8vd0dLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQlFBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FJc0FBUUFDQUFBQUFCaVZBQUVBQkFBQUFBSUJBQUNXQUFFQUFnQUFBQWtBbGdBQkFBSUFBQUFKQUhFQUFnQitBQUFBZ0JFQUFJWVpBQUFXQUVWWVZHVnlibUZzSUVOUFRXMTFibWxqWVhScGIyNE1BQW9BQ2dBQUFDTUJBQURjQVFBQWxRSUFBT1VDQUFDZUF3QUFWd1FBQU1FRUFBQVFCUUFBeWdVQUFJTUdBQUFXQUVVQVdBQlVBR1VBY2dCdUFHRUFiQUFnQUVNQVR3Qk5BRzBBZFFCdUFHa0FZd0JoQUhRQWFRQnZBRzRBakFBQkFBQUFBQUNNQUFFQUFBQUFBSXNBQVFBQ0FBQUFBQmlWQUFFQUJBQUFBQUlCQUFDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBZ0FBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQVVBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBZ0FBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQVVBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWpBQUJBQUFBQUFDTEFBRUFBZ0FBQVAvL2tRQUJBQVVBQUFBQUFBQUFBSmNBQVFBRkFBQUFBQUFBQUFDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSVlBQVFBRUFBQUFBQUFBQUlzQUFRQUNBQUFBQUJpVkFBRUFCQUFBQUFJQkFBQ1dBQUVBQWdBQUFBa0FsZ0FCQUFJQUFBQUpBSEVBQWdCakFBQUFnZ2dBQUdJYkFBQVpBRWR5YjNWdVpDQlFiM05wZEdsdmJtbHVaeUJUZVhOMFpXMEFBQUVBQVFBQUFBa0JBQUFaQUVjQWNnQnZBSFVBYmdCa0FDQUFVQUJ2QUhNQWFRQjBBR2tBYndCdUFHa0FiZ0JuQUNBQVV3QjVBSE1BZEFCbEFHMEFqQUFCQUFBQUFBQ1JBQUVBQlFBQUFBQUFBQUFBbHdBQkFBVUFBQUFBQUFBQUFKRUFBUUFGQUFBQS8vLy8vd0dLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQlFBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FJc0FBUUFDQUFBQUFCaVZBQUVBQkFBQUFBSUJBQUNXQUFFQUFnQUFBQWtBbGdBQkFBSUFBQUFKQUhFQUFnQjNBQUFBaXdrQUFHSWJBQUFaQUVkeWIzVnVaQ0JRYjNOcGRHbHZibWx1WnlCVGVYTjBaVzBCQUFZQUJnQUFBR29BQUFBakFRQUEzQUVBQUpVQ0FBQlBBd0FBdVFNQUFCa0FSd0J5QUc4QWRRQnVBR1FBSUFCUUFHOEFjd0JwQUhRQWFRQnZBRzRBYVFCdUFHY0FJQUJUQUhrQWN3QjBBR1VBYlFDTUFBRUFBQUFBQUpFQUFRQUZBQUFBQUFBQUFBQ1hBQUVBQlFBQUFBQUFBQUFBa1FBQkFBVUFBQUQvLy8vL0FZb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUlBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBaXdBQkFBSUFBQUFBR0pVQUFRQUVBQUFBQWdFQUFKWUFBUUFDQUFBQUNRQ1dBQUVBQWdBQUFBa0FjUUFDQUdNQUFBQkVEUUFBWWhzQUFCa0FSM0p2ZFc1a0lGQnZjMmwwYVc5dWFXNW5JRk41YzNSbGJRY0FBUUFCQUFBQTdnQUFBQmtBUndCeUFHOEFkUUJ1QUdRQUlBQlFBRzhBY3dCcEFIUUFhUUJ2QUc0QWFRQnVBR2NBSUFCVEFIa0Fjd0IwQUdVQWJRQ01BQUVBQUFBQUFKRUFBUUFGQUFBQUFBQUFBQUNYQUFFQUJRQUFBQUFBQUFBQWtRQUJBQVVBQUFELy8vLy9BWW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFGQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWl3QUJBQUlBQUFBQUdKVUFBUUFFQUFBQUFnRUFBSllBQVFBQ0FBQUFDUUNXQUFFQUFnQUFBQWtBY1FBQ0FJc0FBQUF5RGdBQVloc0FBQmtBUjNKdmRXNWtJRkJ2YzJsMGFXOXVhVzVuSUZONWMzUmxiUWdBQ3dBTEFBQUF1UUFBQUhJQkFBRENBUUFBTEFJQUFIc0NBQUEwQXdBQTdRTUFBRDBFQUFEMkJBQUFyd1VBQUJrR0FBQVpBRWNBY2dCdkFIVUFiZ0JrQUNBQVVBQnZBSE1BYVFCMEFHa0Fid0J1QUdrQWJnQm5BQ0FBVXdCNUFITUFkQUJsQUcwQWpBQUJBQUFBQUFDUkFBRUFCUUFBQUFBQUFBQUFsd0FCQUFVQUFBQUFBQUFBQUpFQUFRQUZBQUFBLy8vLy93R0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFDQUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUlzQUFRQUNBQUFBQUJpVkFBRUFCQUFBQUFJQkFBQ1dBQUVBQWdBQUFBa0FsZ0FCQUFJQUFBQUpBSEVBQWdCakFBQUFTeFFBQUdJYkFBQVpBRWR5YjNWdVpDQlFiM05wZEdsdmJtbHVaeUJUZVhOMFpXMFRBQUVBQVFBQUFPNEFBQUFaQUVjQWNnQnZBSFVBYmdCa0FDQUFVQUJ2QUhNQWFRQjBBR2tBYndCdUFHa0FiZ0JuQUNBQVV3QjVBSE1BZEFCbEFHMEFqQUFCQUFBQUFBQ1JBQUVBQlFBQUFBQUFBQUFBbHdBQkFBVUFBQUFBQUFBQUFKRUFBUUFGQUFBQS8vLy8vd0dLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQlFBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FJc0FBUUFDQUFBQUFCaVZBQUVBQkFBQUFBSUJBQUNXQUFFQUFnQUFBQWtBbGdBQkFBSUFBQUFKQUhFQUFnQnpBQUFBT1JVQUFHSWJBQUFaQUVkeWIzVnVaQ0JRYjNOcGRHbHZibWx1WnlCVGVYTjBaVzBVQUFVQUJRQUFBTGtBQUFCeUFRQUEzQUVBQUpVQ0FBQzVBd0FBR1FCSEFISUFid0IxQUc0QVpBQWdBRkFBYndCekFHa0FkQUJwQUc4QWJnQnBBRzRBWndBZ0FGTUFlUUJ6QUhRQVpRQnRBSXdBQVFBQUFBQUFqQUFCQUFBQUFBQ0xBQUVBQWdBQUFBQVlsUUFCQUFRQUFBQUNBUUFBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBSUFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFGQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUlBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBRkFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUZBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBSUFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFGQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJd0FBUUFBQUFBQWl3QUJBQUlBQUFELy81RUFBUUFGQUFBQUFBQUFBQUNYQUFFQUJRQUFBQUFBQUFBQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBZ0FBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NHQUFFQUJBQUFBQUFBQUFDTEFBRUFBZ0FBQUFBWWxRQUJBQVFBQUFBQ0FRQUFsZ0FCQUFJQUFBQUpBSllBQVFBQ0FBQUFDUUJ4QUFJQVdnQUFBSUlJQUFEZElBQUFGZ0JLYjJsdWRDQlNiMkp2ZEdsaklGQnliMmR5WVcwZ0FBQUJBQUVBQUFDNUFBQUFGZ0JLQUc4QWFRQnVBSFFBSUFCU0FHOEFZZ0J2QUhRQWFRQmpBQ0FBVUFCeUFHOEFad0J5QUdFQWJRQWdBSXdBQVFBQUFBQUFrUUFCQUFVQUFBQUFBQUFBQUpjQUFRQUZBQUFBQUFBQUFBQ1JBQUVBQlFBQUFQLy8vLzhCaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q0xBQUVBQWdBQUFBQVlsUUFCQUFRQUFBQUNBUUFBbGdBQkFBSUFBQUFKQUpZQUFRQUNBQUFBQ1FCeEFBSUFaZ0FBQURzSkFBRGRJQUFBRmdCS2IybHVkQ0JTYjJKdmRHbGpJRkJ5YjJkeVlXMGdBUUFFQUFRQUFBQzVBQUFBQ1FFQUFNSUJBQUFzQWdBQUZnQktBRzhBYVFCdUFIUUFJQUJTQUc4QVlnQnZBSFFBYVFCakFDQUFVQUJ5QUc4QVp3QnlBR0VBYlFBZ0FJd0FBUUFBQUFBQWtRQUJBQVVBQUFBQUFBQUFBSmNBQVFBRkFBQUFBQUFBQUFDUkFBRUFCUUFBQVAvLy8vOEJpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDTEFBRUFBZ0FBQUFBWWxRQUJBQVFBQUFBQ0FRQUFsZ0FCQUFJQUFBQUpBSllBQVFBQ0FBQUFDUUJ4QUFJQVhnQUFBR2NMQUFEZElBQUFGZ0JLYjJsdWRDQlNiMkp2ZEdsaklGQnliMmR5WVcwZ0JRQUNBQUlBQUFCcUFBQUFXQUVBQUJZQVNnQnZBR2tBYmdCMEFDQUFVZ0J2QUdJQWJ3QjBBR2tBWXdBZ0FGQUFjZ0J2QUdjQWNnQmhBRzBBSUFDTUFBRUFBQUFBQUpFQUFRQUZBQUFBQUFBQUFBQ1hBQUVBQlFBQUFBQUFBQUFBa1FBQkFBVUFBQUQvLy8vL0FZb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUZBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBaXdBQkFBSUFBQUFBR0pVQUFRQUVBQUFBQWdFQUFKWUFBUUFDQUFBQUNRQ1dBQUVBQWdBQUFBa0FjUUFDQUpJQUFBQy9EQUFBM1NBQUFCWUFTbTlwYm5RZ1VtOWliM1JwWXlCUWNtOW5jbUZ0SUFjQUR3QVBBQUFBdVFBQUFISUJBQUFzQWdBQWxRSUFBT1VDQUFDZUF3QUFDQVFBQVBZRUFBQmdCUUFBR1FZQUFOSUdBQUE4QndBQTlRY0FBQmdKQUFDQ0NRQUFGZ0JLQUc4QWFRQnVBSFFBSUFCU0FHOEFZZ0J2QUhRQWFRQmpBQ0FBVUFCeUFHOEFad0J5QUdFQWJRQWdBSXdBQVFBQUFBQUFqQUFCQUFBQUFBQ0xBQUVBQWdBQUFBQVlsUUFCQUFRQUFBQUNBUUFBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBSUFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFGQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUlBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBRkFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUZBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBSUFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFGQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUlBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBRkFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUZBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUl3QUFRQUFBQUFBaXdBQkFBSUFBQUQvLzVFQUFRQUZBQUFBQUFBQUFBQ1hBQUVBQlFBQUFBQUFBQUFBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q0dBQUVBQkFBQUFBQUFBQUNMQUFFQUFnQUFBQUFZbFFBQkFBUUFBQUFDQVFBQWxnQUJBQUlBQUFBSkFKWUFBUUFDQUFBQUNRQnhBQUlBVndBQUFJSUlBQUM1SWdBQUZRQk5ZVzRnVFdGamFHbHVaU0JKYm5SbGNtWmhZMlVBQUFFQUFRQUFBQ01CQUFBVkFFMEFZUUJ1QUNBQVRRQmhBR01BYUFCcEFHNEFaUUFnQUVrQWJnQjBBR1VBY2dCbUFHRUFZd0JsQUl3QUFRQUFBQUFBa1FBQkFBVUFBQUFBQUFBQUFKY0FBUUFGQUFBQUFBQUFBQUNSQUFFQUJRQUFBUC8vLy84QmlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NMQUFFQUFnQUFBQUFZbFFBQkFBUUFBQUFDQVFBQWxnQUJBQUlBQUFBSkFKWUFBUUFDQUFBQUNRQnhBQUlBWHdBQUFLVUpBQUM1SWdBQUZRQk5ZVzRnVFdGamFHbHVaU0JKYm5SbGNtWmhZMlVCQUFNQUF3QUFBTGtBQUFCeUFRQUEzQUVBQUJVQVRRQmhBRzRBSUFCTkFHRUFZd0JvQUdrQWJnQmxBQ0FBU1FCdUFIUUFaUUJ5QUdZQVlRQmpBR1VBakFBQkFBQUFBQUNSQUFFQUJRQUFBQUFBQUFBQWx3QUJBQVVBQUFBQUFBQUFBSkVBQVFBRkFBQUEvLy8vL3dHS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSXNBQVFBQ0FBQUFBQmlWQUFFQUJBQUFBQUlCQUFDV0FBRUFBZ0FBQUFrQWxnQUJBQUlBQUFBSkFIRUFBZ0JYQUFBQWdRc0FBTGtpQUFBVkFFMWhiaUJOWVdOb2FXNWxJRWx1ZEdWeVptRmpaUVFBQVFBQkFBQUFJd0VBQUJVQVRRQmhBRzRBSUFCTkFHRUFZd0JvQUdrQWJnQmxBQ0FBU1FCdUFIUUFaUUJ5QUdZQVlRQmpBR1VBakFBQkFBQUFBQUNSQUFFQUJRQUFBQUFBQUFBQWx3QUJBQVVBQUFBQUFBQUFBSkVBQVFBRkFBQUEvLy8vL3dHS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUJRQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSXNBQVFBQ0FBQUFBQmlWQUFFQUJBQUFBQUlCQUFDV0FBRUFBZ0FBQUFrQWxnQUJBQUlBQUFBSkFIRUFBZ0J2QUFBQXBBd0FBTGtpQUFBVkFFMWhiaUJOWVdOb2FXNWxJRWx1ZEdWeVptRmpaUVVBQndBSEFBQUF1UUFBQUhJQkFBQXNBZ0FBZXdJQUFEUURBQUR0QXdBQVZ3UUFBQlVBVFFCaEFHNEFJQUJOQUdFQVl3Qm9BR2tBYmdCbEFDQUFTUUJ1QUhRQVpRQnlBR1lBWVFCakFHVUFqQUFCQUFBQUFBQ1JBQUVBQlFBQUFBQUFBQUFBbHdBQkFBVUFBQUFBQUFBQUFKRUFBUUFGQUFBQS8vLy8vd0dLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQ0FBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FJc0FBUUFDQUFBQUFCaVZBQUVBQkFBQUFBSUJBQUNXQUFFQUFnQUFBQWtBbGdBQkFBSUFBQUFKQUhFQUFnQlhBQUFBK3hBQUFMa2lBQUFWQUUxaGJpQk5ZV05vYVc1bElFbHVkR1Z5Wm1GalpRd0FBUUFCQUFBQWFnQUFBQlVBVFFCaEFHNEFJQUJOQUdFQVl3Qm9BR2tBYmdCbEFDQUFTUUJ1QUhRQVpRQnlBR1lBWVFCakFHVUFqQUFCQUFBQUFBQ1JBQUVBQlFBQUFBQUFBQUFBbHdBQkFBVUFBQUFBQUFBQUFKRUFBUUFGQUFBQS8vLy8vd0dLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQlFBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FJc0FBUUFDQUFBQUFCaVZBQUVBQkFBQUFBSUJBQUNXQUFFQUFnQUFBQWtBbGdBQkFBSUFBQUFKQUhFQUFnQnpBQUFBWlJFQUFMa2lBQUFWQUUxaGJpQk5ZV05vYVc1bElFbHVkR1Z5Wm1GalpRMEFDQUFJQUFBQXVRQUFBQ01CQUFEY0FRQUFSZ0lBQUpVQ0FBQlBBd0FBQ0FRQUFNRUVBQUFWQUUwQVlRQnVBQ0FBVFFCaEFHTUFhQUJwQUc0QVpRQWdBRWtBYmdCMEFHVUFjZ0JtQUdFQVl3QmxBSXdBQVFBQUFBQUFqQUFCQUFBQUFBQ0xBQUVBQWdBQUFBQVlsUUFCQUFRQUFBQUNBUUFBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBSUFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFGQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUlBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBRkFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUZBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBSUFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFGQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUlBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBRkFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUZBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUl3QUFRQUFBQUFBaXdBQkFBSUFBQUQvLzVFQUFRQUZBQUFBQUFBQUFBQ1hBQUVBQlFBQUFBQUFBQUFBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q0dBQUVBQkFBQUFBQUFBQUNMQUFFQUFnQUFBQUFZbFFBQkFBUUFBQUFDQVFBQWxnQUJBQUlBQUFBSkFKWUFBUUFDQUFBQUNRQnhBQUlBWmdBQUFJSUlBQUNWSkFBQUdnQlBjR1Z5WVhSdmNpQkRiMjUwY205c0lFbHVkR1Z5Wm1GalpRQUFBUUFCQUFBQUNRRUFBQm9BVHdCd0FHVUFjZ0JoQUhRQWJ3QnlBQ0FBUXdCdkFHNEFkQUJ5QUc4QWJBQWdBRWtBYmdCMEFHVUFjZ0JtQUdFQVl3QmxBSXdBQVFBQUFBQUFrUUFCQUFVQUFBQUFBQUFBQUpjQUFRQUZBQUFBQUFBQUFBQ1JBQUVBQlFBQUFQLy8vLzhCaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q0xBQUVBQWdBQUFBQVlsUUFCQUFRQUFBQUNBUUFBbGdBQkFBSUFBQUFKQUpZQUFRQUNBQUFBQ1FCeEFBSUFnZ0FBQUlzSkFBQ1ZKQUFBR2dCUGNHVnlZWFJ2Y2lCRGIyNTBjbTlzSUVsdWRHVnlabUZqWlFFQUNBQUlBQUFBdVFBQUFISUJBQURjQVFBQWxRSUFBUDhDQUFDNUF3QUFJZ1FBQUl3RUFBQWFBRThBY0FCbEFISUFZUUIwQUc4QWNnQWdBRU1BYndCdUFIUUFjZ0J2QUd3QUlBQkpBRzRBZEFCbEFISUFaZ0JoQUdNQVpRQ01BQUVBQUFBQUFKRUFBUUFGQUFBQUFBQUFBQUNYQUFFQUJRQUFBQUFBQUFBQWtRQUJBQVVBQUFELy8vLy9BWW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWl3QUJBQUlBQUFBQUdKVUFBUUFFQUFBQUFnRUFBSllBQVFBQ0FBQUFDUUNXQUFFQUFnQUFBQWtBY1FBQ0FHWUFBQUFYRGdBQWxTUUFBQm9BVDNCbGNtRjBiM0lnUTI5dWRISnZiQ0JKYm5SbGNtWmhZMlVKQUFFQUFRQUFBTzRBQUFBYUFFOEFjQUJsQUhJQVlRQjBBRzhBY2dBZ0FFTUFid0J1QUhRQWNnQnZBR3dBSUFCSkFHNEFkQUJsQUhJQVpnQmhBR01BWlFDTUFBRUFBQUFBQUpFQUFRQUZBQUFBQUFBQUFBQ1hBQUVBQlFBQUFBQUFBQUFBa1FBQkFBVUFBQUQvLy8vL0FZb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUZBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBaXdBQkFBSUFBQUFBR0pVQUFRQUVBQUFBQWdFQUFKWUFBUUFDQUFBQUNRQ1dBQUVBQWdBQUFBa0FjUUFDQUg0QUFBQUZEd0FBbFNRQUFCb0FUM0JsY21GMGIzSWdRMjl1ZEhKdmJDQkpiblJsY21aaFkyVUtBQWNBQndBQUFMa0FBQUJ5QVFBQTNBRUFBRVlDQUFEL0FnQUFUd01BQUxrREFBQWFBRThBY0FCbEFISUFZUUIwQUc4QWNnQWdBRU1BYndCdUFIUUFjZ0J2QUd3QUlBQkpBRzRBZEFCbEFISUFaZ0JoQUdNQVpRQ01BQUVBQUFBQUFKRUFBUUFGQUFBQUFBQUFBQUNYQUFFQUJRQUFBQUFBQUFBQWtRQUJBQVVBQUFELy8vLy9BWW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWl3QUJBQUlBQUFBQUdKVUFBUUFFQUFBQUFnRUFBSllBQVFBQ0FBQUFDUUNXQUFFQUFnQUFBQWtBY1FBQ0FHWUFBQUMrRWdBQWxTUUFBQm9BVDNCbGNtRjBiM0lnUTI5dWRISnZiQ0JKYm5SbGNtWmhZMlVSQUFFQUFRQUFBR29BQUFBYUFFOEFjQUJsQUhJQVlRQjBBRzhBY2dBZ0FFTUFid0J1QUhRQWNnQnZBR3dBSUFCSkFHNEFkQUJsQUhJQVpnQmhBR01BWlFDTUFBRUFBQUFBQUpFQUFRQUZBQUFBQUFBQUFBQ1hBQUVBQlFBQUFBQUFBQUFBa1FBQkFBVUFBQUQvLy8vL0FZb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUZBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBaXdBQkFBSUFBQUFBR0pVQUFRQUVBQUFBQWdFQUFKWUFBUUFDQUFBQUNRQ1dBQUVBQWdBQUFBa0FjUUFDQUlJQUFBQW9Fd0FBbFNRQUFCb0FUM0JsY21GMGIzSWdRMjl1ZEhKdmJDQkpiblJsY21aaFkyVVNBQWdBQ0FBQUFMa0FBQUFqQVFBQTNBRUFBRVlDQUFDVkFnQUFUd01BQUFnRUFBREJCQUFBR2dCUEFIQUFaUUJ5QUdFQWRBQnZBSElBSUFCREFHOEFiZ0IwQUhJQWJ3QnNBQ0FBU1FCdUFIUUFaUUJ5QUdZQVlRQmpBR1VBakFBQkFBQUFBQUNNQUFFQUFBQUFBSXNBQVFBQ0FBQUFBQmlWQUFFQUJBQUFBQUlCQUFDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBZ0FBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQVVBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBZ0FBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQVVBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWpBQUJBQUFBQUFDTEFBRUFBZ0FBQVAvL2tRQUJBQVVBQUFBQUFBQUFBSmNBQVFBRkFBQUFBQUFBQUFDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSVlBQVFBRUFBQUFBQUFBQUlzQUFRQUNBQUFBQUJpVkFBRUFCQUFBQUFJQkFBQ1dBQUVBQWdBQUFBa0FsZ0FCQUFJQUFBQUpBSEVBQWdCWEFBQUFnZ2dBQUhFbUFBQVZBRTl3WlhKaGRHOXlJRU52Ym5SeWIyd2dWVzVwZEFBQUFRQUJBQUFBQ1FFQUFCVUFUd0J3QUdVQWNnQmhBSFFBYndCeUFDQUFRd0J2QUc0QWRBQnlBRzhBYkFBZ0FGVUFiZ0JwQUhRQWpBQUJBQUFBQUFDUkFBRUFCUUFBQUFBQUFBQUFsd0FCQUFVQUFBQUFBQUFBQUpFQUFRQUZBQUFBLy8vLy93R0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFCUUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUlzQUFRQUNBQUFBQUJpVkFBRUFCQUFBQUFJQkFBQ1dBQUVBQWdBQUFBa0FsZ0FCQUFJQUFBQUpBSEVBQWdCekFBQUFpd2tBQUhFbUFBQVZBRTl3WlhKaGRHOXlJRU52Ym5SeWIyd2dWVzVwZEFFQUNBQUlBQUFBdVFBQUFISUJBQURjQVFBQWxRSUFBUDhDQUFDNUF3QUFJZ1FBQUl3RUFBQVZBRThBY0FCbEFISUFZUUIwQUc4QWNnQWdBRU1BYndCdUFIUUFjZ0J2QUd3QUlBQlZBRzRBYVFCMEFJd0FBUUFBQUFBQWtRQUJBQVVBQUFBQUFBQUFBSmNBQVFBRkFBQUFBQUFBQUFDUkFBRUFCUUFBQVAvLy8vOEJpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDTEFBRUFBZ0FBQUFBWWxRQUJBQVFBQUFBQ0FRQUFsZ0FCQUFJQUFBQUpBSllBQVFBQ0FBQUFDUUJ4QUFJQVZ3QUFBQmNPQUFCeEpnQUFGUUJQY0dWeVlYUnZjaUJEYjI1MGNtOXNJRlZ1YVhRSkFBRUFBUUFBQU80QUFBQVZBRThBY0FCbEFISUFZUUIwQUc4QWNnQWdBRU1BYndCdUFIUUFjZ0J2QUd3QUlBQlZBRzRBYVFCMEFJd0FBUUFBQUFBQWtRQUJBQVVBQUFBQUFBQUFBSmNBQVFBRkFBQUFBQUFBQUFDUkFBRUFCUUFBQVAvLy8vOEJpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQVVBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDTEFBRUFBZ0FBQUFBWWxRQUJBQVFBQUFBQ0FRQUFsZ0FCQUFJQUFBQUpBSllBQVFBQ0FBQUFDUUJ4QUFJQWJ3QUFBQVVQQUFCeEpnQUFGUUJQY0dWeVlYUnZjaUJEYjI1MGNtOXNJRlZ1YVhRS0FBY0FCd0FBQUxrQUFBQnlBUUFBM0FFQUFFWUNBQUQvQWdBQVR3TUFBTGtEQUFBVkFFOEFjQUJsQUhJQVlRQjBBRzhBY2dBZ0FFTUFid0J1QUhRQWNnQnZBR3dBSUFCVkFHNEFhUUIwQUl3QUFRQUFBQUFBa1FBQkFBVUFBQUFBQUFBQUFKY0FBUUFGQUFBQUFBQUFBQUNSQUFFQUJRQUFBUC8vLy84QmlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBZ0FBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NMQUFFQUFnQUFBQUFZbFFBQkFBUUFBQUFDQVFBQWxnQUJBQUlBQUFBSkFKWUFBUUFDQUFBQUNRQnhBQUlBVndBQUFMNFNBQUJ4SmdBQUZRQlBjR1Z5WVhSdmNpQkRiMjUwY205c0lGVnVhWFFSQUFFQUFRQUFBTzRBQUFBVkFFOEFjQUJsQUhJQVlRQjBBRzhBY2dBZ0FFTUFid0J1QUhRQWNnQnZBR3dBSUFCVkFHNEFhUUIwQUl3QUFRQUFBQUFBa1FBQkFBVUFBQUFBQUFBQUFKY0FBUUFGQUFBQUFBQUFBQUNSQUFFQUJRQUFBUC8vLy84QmlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NMQUFFQUFnQUFBQUFZbFFBQkFBUUFBQUFDQVFBQWxnQUJBQUlBQUFBSkFKWUFBUUFDQUFBQUNRQnhBQUlBWHdBQUFLd1RBQUJ4SmdBQUZRQlBjR1Z5WVhSdmNpQkRiMjUwY205c0lGVnVhWFFTQUFNQUF3QUFBTGtBQUFBSkFRQUFjZ0VBQUJVQVR3QndBR1VBY2dCaEFIUUFid0J5QUNBQVF3QnZBRzRBZEFCeUFHOEFiQUFnQUZVQWJnQnBBSFFBakFBQkFBQUFBQUNNQUFFQUFBQUFBSXNBQVFBQ0FBQUFBQmlWQUFFQUJBQUFBQUlCQUFDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBZ0FBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQVVBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBZ0FBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQVVBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWpBQUJBQUFBQUFDTEFBRUFBZ0FBQVAvL2tRQUJBQVVBQUFBQUFBQUFBSmNBQVFBRkFBQUFBQUFBQUFDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSVlBQVFBRUFBQUFBQUFBQUlzQUFRQUNBQUFBQUJpVkFBRUFCQUFBQUFJQkFBQ1dBQUVBQWdBQUFBa0FsZ0FCQUFJQUFBQUpBSEVBQWdCZ0FBQUFnZ2dBQUU0b0FBQVlBRkp2WW05MGFXTWdUM0JsY21GMGFXNW5JRk41YzNSbGJRQUFBUUFCQUFBQTdnQUFBQmdBVWdCdkFHSUFid0IwQUdrQVl3QWdBRThBY0FCbEFISUFZUUIwQUdrQWJnQm5BQ0FBVXdCNUFITUFkQUJsQUcwQWpBQUJBQUFBQUFDUkFBRUFCUUFBQUFBQUFBQUFsd0FCQUFVQUFBQUFBQUFBQUpFQUFRQUZBQUFBLy8vLy93R0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFCUUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUlzQUFRQUNBQUFBQUJpVkFBRUFCQUFBQUFJQkFBQ1dBQUVBQWdBQUFBa0FsZ0FCQUFJQUFBQUpBSEVBQWdCNEFBQUFjQWtBQUU0b0FBQVlBRkp2WW05MGFXTWdUM0JsY21GMGFXNW5JRk41YzNSbGJRRUFCd0FIQUFBQXVRQUFBSElCQUFBc0FnQUFsUUlBQU9VQ0FBQ2VBd0FBQ0FRQUFCZ0FVZ0J2QUdJQWJ3QjBBR2tBWXdBZ0FFOEFjQUJsQUhJQVlRQjBBR2tBYmdCbkFDQUFVd0I1QUhNQWRBQmxBRzBBakFBQkFBQUFBQUNSQUFFQUJRQUFBQUFBQUFBQWx3QUJBQVVBQUFBQUFBQUFBSkVBQVFBRkFBQUEvLy8vL3dHS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSXNBQVFBQ0FBQUFBQmlWQUFFQUJBQUFBQUlCQUFDV0FBRUFBZ0FBQUFrQWxnQUJBQUlBQUFBSkFIRUFBZ0JnQUFBQWVBMEFBRTRvQUFBWUFGSnZZbTkwYVdNZ1QzQmxjbUYwYVc1bklGTjVjM1JsYlFnQUFRQUJBQUFBQ1FFQUFCZ0FVZ0J2QUdJQWJ3QjBBR2tBWXdBZ0FFOEFjQUJsQUhJQVlRQjBBR2tBYmdCbkFDQUFVd0I1QUhNQWRBQmxBRzBBakFBQkFBQUFBQUNSQUFFQUJRQUFBQUFBQUFBQWx3QUJBQVVBQUFBQUFBQUFBSkVBQVFBRkFBQUEvLy8vL3dHS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUJRQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSXNBQVFBQ0FBQUFBQmlWQUFFQUJBQUFBQUlCQUFDV0FBRUFBZ0FBQUFrQWxnQUJBQUlBQUFBSkFIRUFBZ0I4QUFBQWdRNEFBRTRvQUFBWUFGSnZZbTkwYVdNZ1QzQmxjbUYwYVc1bklGTjVjM1JsYlFrQUNBQUlBQUFBdVFBQUFISUJBQURjQVFBQWxRSUFBUDhDQUFCUEF3QUFDQVFBQU1FRUFBQVlBRklBYndCaUFHOEFkQUJwQUdNQUlBQlBBSEFBWlFCeUFHRUFkQUJwQUc0QVp3QWdBRk1BZVFCekFIUUFaUUJ0QUl3QUFRQUFBQUFBa1FBQkFBVUFBQUFBQUFBQUFKY0FBUUFGQUFBQUFBQUFBQUNSQUFFQUJRQUFBUC8vLy84QmlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBZ0FBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NMQUFFQUFnQUFBQUFZbFFBQkFBUUFBQUFDQVFBQWxnQUJBQUlBQUFBSkFKWUFBUUFDQUFBQUNRQnhBQUlBWkFBQUFFSVRBQUJPS0FBQUdBQlNiMkp2ZEdsaklFOXdaWEpoZEdsdVp5QlRlWE4wWlcwUkFBSUFBZ0FBQUdvQUFBQllBUUFBR0FCU0FHOEFZZ0J2QUhRQWFRQmpBQ0FBVHdCd0FHVUFjZ0JoQUhRQWFRQnVBR2NBSUFCVEFIa0Fjd0IwQUdVQWJRQ01BQUVBQUFBQUFKRUFBUUFGQUFBQUFBQUFBQUNYQUFFQUJRQUFBQUFBQUFBQWtRQUJBQVVBQUFELy8vLy9BWW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFGQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWl3QUJBQUlBQUFBQUdKVUFBUUFFQUFBQUFnRUFBSllBQVFBQ0FBQUFDUUNXQUFFQUFnQUFBQWtBY1FBQ0FIQUFBQUNhRkFBQVRpZ0FBQmdBVW05aWIzUnBZeUJQY0dWeVlYUnBibWNnVTNsemRHVnRFd0FGQUFVQUFBQzVBQUFBY2dFQUFOd0JBQUNWQWdBQXVRTUFBQmdBVWdCdkFHSUFid0IwQUdrQVl3QWdBRThBY0FCbEFISUFZUUIwQUdrQWJnQm5BQ0FBVXdCNUFITUFkQUJsQUcwQWpBQUJBQUFBQUFDTUFBRUFBQUFBQUlzQUFRQUNBQUFBQUJpVkFBRUFCQUFBQUFJQkFBQ1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQVVBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBZ0FBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQVVBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBZ0FBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FqQUFCQUFBQUFBQ0xBQUVBQWdBQUFQLy9rUUFCQUFVQUFBQUFBQUFBQUpjQUFRQUZBQUFBQUFBQUFBQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFDQUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUlZQUFRQUVBQUFBQUFBQUFJc0FBUUFDQUFBQUFCaVZBQUVBQkFBQUFBSUJBQUNXQUFFQUFnQUFBQWtBbGdBQkFBSUFBQUFKQUhFQUFnQjRBQUFBZ2dnQUFBWXNBQUFnQUZOdlpuUjNZWEpsSUVSbGRtVnNiM0J0Wlc1MElFVnVkbWx5YjI1dFpXNTBBQUFCQUFFQUFBRHVBQUFBSUFCVEFHOEFaZ0IwQUhjQVlRQnlBR1VBSUFCRUFHVUFkZ0JsQUd3QWJ3QndBRzBBWlFCdUFIUUFJQUJGQUc0QWRnQnBBSElBYndCdUFHMEFaUUJ1QUhRQWpBQUJBQUFBQUFDUkFBRUFCUUFBQUFBQUFBQUFsd0FCQUFVQUFBQUFBQUFBQUpFQUFRQUZBQUFBLy8vLy93R0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFCUUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUlzQUFRQUNBQUFBQUJpVkFBRUFCQUFBQUFJQkFBQ1dBQUVBQWdBQUFBa0FsZ0FCQUFJQUFBQUpBSEVBQWdDVUFBQUFjQWtBQUFZc0FBQWdBRk52Wm5SM1lYSmxJRVJsZG1Wc2IzQnRaVzUwSUVWdWRtbHliMjV0Wlc1MEFRQUlBQWdBQUFDNUFBQUFDUUVBQUhJQkFBQmhBZ0FBR2dNQUFJUURBQUE5QkFBQXB3UUFBQ0FBVXdCdkFHWUFkQUIzQUdFQWNnQmxBQ0FBUkFCbEFIWUFaUUJzQUc4QWNBQnRBR1VBYmdCMEFDQUFSUUJ1QUhZQWFRQnlBRzhBYmdCdEFHVUFiZ0IwQUl3QUFRQUFBQUFBa1FBQkFBVUFBQUFBQUFBQUFKY0FBUUFGQUFBQUFBQUFBQUNSQUFFQUJRQUFBUC8vLy84QmlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBZ0FBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NMQUFFQUFnQUFBQUFZbFFBQkFBUUFBQUFDQVFBQWxnQUJBQUlBQUFBSkFKWUFBUUFDQUFBQUNRQnhBQUlBZUFBQUFCY09BQUFHTEFBQUlBQlRiMlowZDJGeVpTQkVaWFpsYkc5d2JXVnVkQ0JGYm5acGNtOXViV1Z1ZEFrQUFRQUJBQUFBN2dBQUFDQUFVd0J2QUdZQWRBQjNBR0VBY2dCbEFDQUFSQUJsQUhZQVpRQnNBRzhBY0FCdEFHVUFiZ0IwQUNBQVJRQnVBSFlBYVFCeUFHOEFiZ0J0QUdVQWJnQjBBSXdBQVFBQUFBQUFrUUFCQUFVQUFBQUFBQUFBQUpjQUFRQUZBQUFBQUFBQUFBQ1JBQUVBQlFBQUFQLy8vLzhCaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q0xBQUVBQWdBQUFBQVlsUUFCQUFRQUFBQUNBUUFBbGdBQkFBSUFBQUFKQUpZQUFRQUNBQUFBQ1FCeEFBSUFvQUFBQUFVUEFBQUdMQUFBSUFCVGIyWjBkMkZ5WlNCRVpYWmxiRzl3YldWdWRDQkZiblpwY205dWJXVnVkQW9BQ3dBTEFBQUF1UUFBQUQ0QkFBRDNBUUFBUmdJQUFQOENBQUM1QXdBQTNBUUFBSlVGQUFCT0JnQUF1QVlBQUNJSEFBQWdBRk1BYndCbUFIUUFkd0JoQUhJQVpRQWdBRVFBWlFCMkFHVUFiQUJ2QUhBQWJRQmxBRzRBZEFBZ0FFVUFiZ0IyQUdrQWNnQnZBRzRBYlFCbEFHNEFkQUNNQUFFQUFBQUFBSkVBQVFBRkFBQUFBQUFBQUFDWEFBRUFCUUFBQUFBQUFBQUFrUUFCQUFVQUFBRC8vLy8vQVlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBSUFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFpd0FCQUFJQUFBQUFHSlVBQVFBRUFBQUFBZ0VBQUpZQUFRQUNBQUFBQ1FDV0FBRUFBZ0FBQUFrQWNRQUNBSGdBQUFBbkZnQUFCaXdBQUNBQVUyOW1kSGRoY21VZ1JHVjJaV3h2Y0cxbGJuUWdSVzUyYVhKdmJtMWxiblFWQUFFQUFRQUFBTlFBQUFBZ0FGTUFid0JtQUhRQWR3QmhBSElBWlFBZ0FFUUFaUUIyQUdVQWJBQnZBSEFBYlFCbEFHNEFkQUFnQUVVQWJnQjJBR2tBY2dCdkFHNEFiUUJsQUc0QWRBQ01BQUVBQUFBQUFKRUFBUUFGQUFBQUFBQUFBQUNYQUFFQUJRQUFBQUFBQUFBQWtRQUJBQVVBQUFELy8vLy9BWW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFGQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWl3QUJBQUlBQUFBQUdKVUFBUUFFQUFBQUFnRUFBSllBQVFBQ0FBQUFDUUNXQUFFQUFnQUFBQWtBY1FBQ0FKd0FBQUQ3RmdBQUJpd0FBQ0FBVTI5bWRIZGhjbVVnUkdWMlpXeHZjRzFsYm5RZ1JXNTJhWEp2Ym0xbGJuUVdBQW9BQ2dBQUFMa0FBQUErQVFBQWpRRUFBUGNCQUFDd0FnQUFhUU1BQUl3RUFBQkZCUUFBL3dVQUFHZ0dBQUFnQUZNQWJ3Qm1BSFFBZHdCaEFISUFaUUFnQUVRQVpRQjJBR1VBYkFCdkFIQUFiUUJsQUc0QWRBQWdBRVVBYmdCMkFHa0FjZ0J2QUc0QWJRQmxBRzRBZEFDTUFBRUFBQUFBQUl3QUFRQUFBQUFBaXdBQkFBSUFBQUFBR0pVQUFRQUVBQUFBQWdFQUFKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFDQUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUJRQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQ0FBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFCUUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQlFBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFDQUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUJRQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQ0FBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFCUUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQlFBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFDQUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUJRQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQ0FBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFCUUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDTUFBRUFBQUFBQUlzQUFRQUNBQUFBLy8rUkFBRUFCUUFBQUFBQUFBQUFsd0FCQUFVQUFBQUFBQUFBQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBSUFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFoZ0FCQUFRQUFBQUFBQUFBaXdBQkFBSUFBQUFBR0pVQUFRQUVBQUFBQWdFQUFKWUFBUUFDQUFBQUNRQ1dBQUVBQWdBQUFBa0FjUUFDQUZRQUFBQ0NDQUFBdnk4QUFCUUFWRzhnUW1VZ1EyOXRjR3hsZEdVZ1RHRjBaWElBQUFFQUFRQUFBTlFBQUFBVUFGUUFid0FnQUVJQVpRQWdBRU1BYndCdEFIQUFiQUJsQUhRQVpRQWdBRXdBWVFCMEFHVUFjZ0NNQUFFQUFBQUFBSkVBQVFBRkFBQUFBQUFBQUFDWEFBRUFCUUFBQUFBQUFBQUFrUUFCQUFVQUFBRC8vLy8vQVlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBRkFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFpd0FCQUFJQUFBQUFHSlVBQVFBRUFBQUFBZ0VBQUpZQUFRQUNBQUFBQ1FDV0FBRUFBZ0FBQUFrQWNRQUNBRmdBQUFCV0NRQUF2eThBQUJRQVZHOGdRbVVnUTI5dGNHeGxkR1VnVEdGMFpYSUJBQUlBQWdBQUFMa0FBQUFqQVFBQUZBQlVBRzhBSUFCQ0FHVUFJQUJEQUc4QWJRQndBR3dBWlFCMEFHVUFJQUJNQUdFQWRBQmxBSElBakFBQkFBQUFBQUNSQUFFQUJRQUFBQUFBQUFBQWx3QUJBQVVBQUFBQUFBQUFBSkVBQVFBRkFBQUEvLy8vL3dHS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSXNBQVFBQ0FBQUFBQmlWQUFFQUJBQUFBQUlCQUFDV0FBRUFBZ0FBQUFrQWxnQUJBQUlBQUFBSkFIRUFBZ0JVQUFBQWVRb0FBTDh2QUFBVUFGUnZJRUpsSUVOdmJYQnNaWFJsSUV4aGRHVnlBd0FCQUFFQUFBRHVBQUFBRkFCVUFHOEFJQUJDQUdVQUlBQkRBRzhBYlFCd0FHd0FaUUIwQUdVQUlBQk1BR0VBZEFCbEFISUFqQUFCQUFBQUFBQ1JBQUVBQlFBQUFBQUFBQUFBbHdBQkFBVUFBQUFBQUFBQUFKRUFBUUFGQUFBQS8vLy8vd0dLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQlFBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FJc0FBUUFDQUFBQUFCaVZBQUVBQkFBQUFBSUJBQUNXQUFFQUFnQUFBQWtBbGdBQkFBSUFBQUFKQUhFQUFnQllBQUFBWndzQUFMOHZBQUFVQUZSdklFSmxJRU52YlhCc1pYUmxJRXhoZEdWeUJBQUNBQUlBQUFDNUFBQUFJd0VBQUJRQVZBQnZBQ0FBUWdCbEFDQUFRd0J2QUcwQWNBQnNBR1VBZEFCbEFDQUFUQUJoQUhRQVpRQnlBSXdBQVFBQUFBQUFrUUFCQUFVQUFBQUFBQUFBQUpjQUFRQUZBQUFBQUFBQUFBQ1JBQUVBQlFBQUFQLy8vLzhCaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q0xBQUVBQWdBQUFBQVlsUUFCQUFRQUFBQUNBUUFBbGdBQkFBSUFBQUFKQUpZQUFRQUNBQUFBQ1FCeEFBSUFWQUFBQUlvTUFBQy9Md0FBRkFCVWJ5QkNaU0JEYjIxd2JHVjBaU0JNWVhSbGNnWUFBUUFCQUFBQTdnQUFBQlFBVkFCdkFDQUFRZ0JsQUNBQVF3QnZBRzBBY0FCc0FHVUFkQUJsQUNBQVRBQmhBSFFBWlFCeUFJd0FBUUFBQUFBQWtRQUJBQVVBQUFBQUFBQUFBSmNBQVFBRkFBQUFBQUFBQUFDUkFBRUFCUUFBQVAvLy8vOEJpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQVVBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDTEFBRUFBZ0FBQUFBWWxRQUJBQVFBQUFBQ0FRQUFsZ0FCQUFJQUFBQUpBSllBQVFBQ0FBQUFDUUJ4QUFJQWJBQUFBSGdOQUFDL0x3QUFGQUJVYnlCQ1pTQkRiMjF3YkdWMFpTQk1ZWFJsY2djQUJ3QUhBQUFBdVFBQUFOd0JBQUNWQWdBQTVRSUFBSjREQUFBSUJBQUF3UVFBQUJRQVZBQnZBQ0FBUWdCbEFDQUFRd0J2QUcwQWNBQnNBR1VBZEFCbEFDQUFUQUJoQUhRQVpRQnlBSXdBQVFBQUFBQUFrUUFCQUFVQUFBQUFBQUFBQUpjQUFRQUZBQUFBQUFBQUFBQ1JBQUVBQlFBQUFQLy8vLzhCaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q0xBQUVBQWdBQUFBQVlsUUFCQUFRQUFBQUNBUUFBbGdBQkFBSUFBQUFKQUpZQUFRQUNBQUFBQ1FCeEFBSUFXQUFBQURrU0FBQy9Md0FBRkFCVWJ5QkNaU0JEYjIxd2JHVjBaU0JNWVhSbGNnNEFBZ0FDQUFBQWFnQUFBRDRCQUFBVUFGUUFid0FnQUVJQVpRQWdBRU1BYndCdEFIQUFiQUJsQUhRQVpRQWdBRXdBWVFCMEFHVUFjZ0NNQUFFQUFBQUFBSkVBQVFBRkFBQUFBQUFBQUFDWEFBRUFCUUFBQUFBQUFBQUFrUUFCQUFVQUFBRC8vLy8vQVlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBRkFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFpd0FCQUFJQUFBQUFHSlVBQVFBRUFBQUFBZ0VBQUpZQUFRQUNBQUFBQ1FDV0FBRUFBZ0FBQUFrQWNRQUNBR0FBQUFCM0V3QUF2eThBQUJRQVZHOGdRbVVnUTI5dGNHeGxkR1VnVEdGMFpYSVFBQVFBQkFBQUFMa0FBQUFqQVFBQTNBRUFBRVlDQUFBVUFGUUFid0FnQUVJQVpRQWdBRU1BYndCdEFIQUFiQUJsQUhRQVpRQWdBRXdBWVFCMEFHVUFjZ0NNQUFFQUFBQUFBSXdBQVFBQUFBQUFpd0FCQUFJQUFBQUFHSlVBQVFBRUFBQUFBZ0VBQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQlFBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFDQUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUJRQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQ0FBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFCUUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQlFBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFDQUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUJRQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQ0FBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFCUUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQlFBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFDQUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUJRQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNNQUFFQUFBQUFBSXNBQVFBQ0FBQUEvLytSQUFFQUJRQUFBQUFBQUFBQWx3QUJBQVVBQUFBQUFBQUFBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWhnQUJBQVFBQUFBQUFBQUFpd0FCQUFJQUFBQUFHSlVBQVFBRUFBQUFBZ0VBQUpZQUFRQUNBQUFBQ1FDV0FBRUFBZ0FBQUFrQWNRQUNBRTRBQUFDQ0NBQUFtekVBQUJJQVZHOGdRbVVnUkdWbWFXNWxJRXhoZEdWeUFBQUJBQUVBQUFEVUFBQUFFZ0JVQUc4QUlBQkNBR1VBSUFCRUFHVUFaZ0JwQUc0QVpRQWdBRXdBWVFCMEFHVUFjZ0NNQUFFQUFBQUFBSkVBQVFBRkFBQUFBQUFBQUFDWEFBRUFCUUFBQUFBQUFBQUFrUUFCQUFVQUFBRC8vLy8vQVlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBRkFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFpd0FCQUFJQUFBQUFHSlVBQVFBRUFBQUFBZ0VBQUpZQUFRQUNBQUFBQ1FDV0FBRUFBZ0FBQUFrQWNRQUNBRklBQUFCV0NRQUFtekVBQUJJQVZHOGdRbVVnUkdWbWFXNWxJRXhoZEdWeUFRQUNBQUlBQUFDNUFBQUFJd0VBQUJJQVZBQnZBQ0FBUWdCbEFDQUFSQUJsQUdZQWFRQnVBR1VBSUFCTUFHRUFkQUJsQUhJQWpBQUJBQUFBQUFDUkFBRUFCUUFBQUFBQUFBQUFsd0FCQUFVQUFBQUFBQUFBQUpFQUFRQUZBQUFBLy8vLy93R0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFDQUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUlzQUFRQUNBQUFBQUJpVkFBRUFCQUFBQUFJQkFBQ1dBQUVBQWdBQUFBa0FsZ0FCQUFJQUFBQUpBSEVBQWdCT0FBQUFlUW9BQUpzeEFBQVNBRlJ2SUVKbElFUmxabWx1WlNCTVlYUmxjZ01BQVFBQkFBQUE3Z0FBQUJJQVZBQnZBQ0FBUWdCbEFDQUFSQUJsQUdZQWFRQnVBR1VBSUFCTUFHRUFkQUJsQUhJQWpBQUJBQUFBQUFDUkFBRUFCUUFBQUFBQUFBQUFsd0FCQUFVQUFBQUFBQUFBQUpFQUFRQUZBQUFBLy8vLy93R0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFCUUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUlzQUFRQUNBQUFBQUJpVkFBRUFCQUFBQUFJQkFBQ1dBQUVBQWdBQUFBa0FsZ0FCQUFJQUFBQUpBSEVBQWdCU0FBQUFad3NBQUpzeEFBQVNBRlJ2SUVKbElFUmxabWx1WlNCTVlYUmxjZ1FBQWdBQ0FBQUF1UUFBQUNNQkFBQVNBRlFBYndBZ0FFSUFaUUFnQUVRQVpRQm1BR2tBYmdCbEFDQUFUQUJoQUhRQVpRQnlBSXdBQVFBQUFBQUFrUUFCQUFVQUFBQUFBQUFBQUpjQUFRQUZBQUFBQUFBQUFBQ1JBQUVBQlFBQUFQLy8vLzhCaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q0xBQUVBQWdBQUFBQVlsUUFCQUFRQUFBQUNBUUFBbGdBQkFBSUFBQUFKQUpZQUFRQUNBQUFBQ1FCeEFBSUFUZ0FBQUlvTUFBQ2JNUUFBRWdCVWJ5QkNaU0JFWldacGJtVWdUR0YwWlhJR0FBRUFBUUFBQU80QUFBQVNBRlFBYndBZ0FFSUFaUUFnQUVRQVpRQm1BR2tBYmdCbEFDQUFUQUJoQUhRQVpRQnlBSXdBQVFBQUFBQUFrUUFCQUFVQUFBQUFBQUFBQUpjQUFRQUZBQUFBQUFBQUFBQ1JBQUVBQlFBQUFQLy8vLzhCaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q0xBQUVBQWdBQUFBQVlsUUFCQUFRQUFBQUNBUUFBbGdBQkFBSUFBQUFKQUpZQUFRQUNBQUFBQ1FCeEFBSUFZZ0FBQUhnTkFBQ2JNUUFBRWdCVWJ5QkNaU0JFWldacGJtVWdUR0YwWlhJSEFBWUFCZ0FBQUxrQUFBQUpBUUFBV0FFQUFCRUNBQURLQWdBQU5BTUFBQklBVkFCdkFDQUFRZ0JsQUNBQVJBQmxBR1lBYVFCdUFHVUFJQUJNQUdFQWRBQmxBSElBakFBQkFBQUFBQUNSQUFFQUJRQUFBQUFBQUFBQWx3QUJBQVVBQUFBQUFBQUFBSkVBQVFBRkFBQUEvLy8vL3dHS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSXNBQVFBQ0FBQUFBQmlWQUFFQUJBQUFBQUlCQUFDV0FBRUFBZ0FBQUFrQWxnQUJBQUlBQUFBSkFIRUFBZ0JPQUFBQXJCQUFBSnN4QUFBU0FGUnZJRUpsSUVSbFptbHVaU0JNWVhSbGNnMEFBUUFCQUFBQTFBQUFBQklBVkFCdkFDQUFRZ0JsQUNBQVJBQmxBR1lBYVFCdUFHVUFJQUJNQUdFQWRBQmxBSElBakFBQkFBQUFBQUNSQUFFQUJRQUFBQUFBQUFBQWx3QUJBQVVBQUFBQUFBQUFBSkVBQVFBRkFBQUEvLy8vL3dHS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUJRQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSXNBQVFBQ0FBQUFBQmlWQUFFQUJBQUFBQUlCQUFDV0FBRUFBZ0FBQUFrQWxnQUJBQUlBQUFBSkFIRUFBZ0JhQUFBQWdCRUFBSnN4QUFBU0FGUnZJRUpsSUVSbFptbHVaU0JNWVhSbGNnNEFCQUFFQUFBQXVRQUFBQ01CQUFEY0FRQUFSZ0lBQUJJQVZBQnZBQ0FBUWdCbEFDQUFSQUJsQUdZQWFRQnVBR1VBSUFCTUFHRUFkQUJsQUhJQWpBQUJBQUFBQUFDTUFBRUFBQUFBQUlzQUFRQUNBQUFBQUJpVkFBRUFCQUFBQUFJQkFBQ1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQVVBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBZ0FBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQVVBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBZ0FBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FqQUFCQUFBQUFBQ0xBQUVBQWdBQUFQLy9rUUFCQUFVQUFBQUFBQUFBQUpjQUFRQUZBQUFBQUFBQUFBQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFDQUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUlZQUFRQUVBQUFBQUFBQUFJc0FBUUFDQUFBQUFCaVZBQUVBQkFBQUFBSUJBQUNXQUFFQUFnQUFBQWtBbGdBQkFBSUFBQUFKQUhFQUFnQmFBQUFBZ2dnQUFIY3pBQUFXQUZWdWJXRnVaV1FnUVdWeWFXRnNJRlpsYUdsamJHVUFBQUVBQVFBQUFPNEFBQUFXQUZVQWJnQnRBR0VBYmdCbEFHUUFJQUJCQUdVQWNnQnBBR0VBYkFBZ0FGWUFaUUJvQUdrQVl3QnNBR1VBakFBQkFBQUFBQUNSQUFFQUJRQUFBQUFBQUFBQWx3QUJBQVVBQUFBQUFBQUFBSkVBQVFBRkFBQUEvLy8vL3dHS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUJRQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSXNBQVFBQ0FBQUFBQmlWQUFFQUJBQUFBQUlCQUFDV0FBRUFBZ0FBQUFrQWxnQUJBQUlBQUFBSkFIRUFBZ0J5QUFBQWNBa0FBSGN6QUFBV0FGVnViV0Z1WldRZ1FXVnlhV0ZzSUZabGFHbGpiR1VCQUFjQUJ3QUFBTGtBQUFEY0FRQUFsUUlBQUU4REFBQUlCQUFBd1FRQUFDc0ZBQUFXQUZVQWJnQnRBR0VBYmdCbEFHUUFJQUJCQUdVQWNnQnBBR0VBYkFBZ0FGWUFaUUJvQUdrQVl3QnNBR1VBakFBQkFBQUFBQUNSQUFFQUJRQUFBQUFBQUFBQWx3QUJBQVVBQUFBQUFBQUFBSkVBQVFBRkFBQUEvLy8vL3dHS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSXNBQVFBQ0FBQUFBQmlWQUFFQUJBQUFBQUlCQUFDV0FBRUFBZ0FBQUFrQWxnQUJBQUlBQUFBSkFIRUFBZ0JhQUFBQW13NEFBSGN6QUFBV0FGVnViV0Z1WldRZ1FXVnlhV0ZzSUZabGFHbGpiR1VJQUFFQUFRQUFBTzRBQUFBV0FGVUFiZ0J0QUdFQWJnQmxBR1FBSUFCQkFHVUFjZ0JwQUdFQWJBQWdBRllBWlFCb0FHa0FZd0JzQUdVQWpBQUJBQUFBQUFDUkFBRUFCUUFBQUFBQUFBQUFsd0FCQUFVQUFBQUFBQUFBQUpFQUFRQUZBQUFBLy8vLy93R0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFCUUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUlzQUFRQUNBQUFBQUJpVkFBRUFCQUFBQUFJQkFBQ1dBQUVBQWdBQUFBa0FsZ0FCQUFJQUFBQUpBSEVBQWdCcUFBQUFpUThBQUhjekFBQVdBRlZ1YldGdVpXUWdRV1Z5YVdGc0lGWmxhR2xqYkdVSkFBVUFCUUFBQUxrQUFBQWpBUUFBY2dFQUFDd0NBQUI3QWdBQUZnQlZBRzRBYlFCaEFHNEFaUUJrQUNBQVFRQmxBSElBYVFCaEFHd0FJQUJXQUdVQWFBQnBBR01BYkFCbEFJd0FBUUFBQUFBQWtRQUJBQVVBQUFBQUFBQUFBSmNBQVFBRkFBQUFBQUFBQUFDUkFBRUFCUUFBQVAvLy8vOEJpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDTEFBRUFBZ0FBQUFBWWxRQUJBQVFBQUFBQ0FRQUFsZ0FCQUFJQUFBQUpBSllBQVFBQ0FBQUFDUUJ4QUFJQVhnQUFBQVFTQUFCM013QUFGZ0JWYm0xaGJtVmtJRUZsY21saGJDQldaV2hwWTJ4bERnQUNBQUlBQUFCcUFBQUFXQUVBQUJZQVZRQnVBRzBBWVFCdUFHVUFaQUFnQUVFQVpRQnlBR2tBWVFCc0FDQUFWZ0JsQUdnQWFRQmpBR3dBWlFDTUFBRUFBQUFBQUpFQUFRQUZBQUFBQUFBQUFBQ1hBQUVBQlFBQUFBQUFBQUFBa1FBQkFBVUFBQUQvLy8vL0FZb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUZBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBaXdBQkFBSUFBQUFBR0pVQUFRQUVBQUFBQWdFQUFKWUFBUUFDQUFBQUNRQ1dBQUVBQWdBQUFBa0FjUUFDQUc0QUFBQmNFd0FBZHpNQUFCWUFWVzV0WVc1bFpDQkJaWEpwWVd3Z1ZtVm9hV05zWlJBQUJnQUdBQUFBdVFBQUFISUJBQURDQVFBQWV3SUFBTW9DQUFDRUF3QUFGZ0JWQUc0QWJRQmhBRzRBWlFCa0FDQUFRUUJsQUhJQWFRQmhBR3dBSUFCV0FHVUFhQUJwQUdNQWJBQmxBSXdBQVFBQUFBQUFqQUFCQUFBQUFBQ0xBQUVBQWdBQUFBQVlsUUFCQUFRQUFBQUNBUUFBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBSUFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFGQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUlBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBRkFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUZBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBSUFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFGQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUlBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBRkFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUZBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUl3QUFRQUFBQUFBaXdBQkFBSUFBQUQvLzVFQUFRQUZBQUFBQUFBQUFBQ1hBQUVBQlFBQUFBQUFBQUFBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q0dBQUVBQkFBQUFBQUFBQUNMQUFFQUFnQUFBQUFZbFFBQkFBUUFBQUFDQVFBQWxnQUJBQUlBQUFBSkFKWUFBUUFDQUFBQUNRQnhBQUlBWFFBQUFJSUlBQUJUTlFBQUZ3QlZibUYwZEdWdVpHVmtJRWR5YjNWa0lGTmxibk52Y2dBQUFRQUJBQUFBN2dBQUFCY0FWUUJ1QUdFQWRBQjBBR1VBYmdCa0FHVUFaQUFnQUVjQWNnQnZBSFVBWkFBZ0FGTUFaUUJ1QUhNQWJ3QnlBSXdBQVFBQUFBQUFrUUFCQUFVQUFBQUFBQUFBQUpjQUFRQUZBQUFBQUFBQUFBQ1JBQUVBQlFBQUFQLy8vLzhCaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q0xBQUVBQWdBQUFBQVlsUUFCQUFRQUFBQUNBUUFBbGdBQkFBSUFBQUFKQUpZQUFRQUNBQUFBQ1FCeEFBSUFmUUFBQUhBSkFBQlROUUFBRndCVmJtRjBkR1Z1WkdWa0lFZHliM1ZrSUZObGJuTnZjZ0VBQ1FBSkFBQUF1UUFBQUhJQkFBRGNBUUFBUmdJQUFQOENBQUM1QXdBQWNnUUFBQ3NGQUFEa0JRQUFGd0JWQUc0QVlRQjBBSFFBWlFCdUFHUUFaUUJrQUNBQVJ3QnlBRzhBZFFCa0FDQUFVd0JsQUc0QWN3QnZBSElBakFBQkFBQUFBQUNSQUFFQUJRQUFBQUFBQUFBQWx3QUJBQVVBQUFBQUFBQUFBSkVBQVFBRkFBQUEvLy8vL3dHS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSXNBQVFBQ0FBQUFBQmlWQUFFQUJBQUFBQUlCQUFDV0FBRUFBZ0FBQUFrQWxnQUJBQUlBQUFBSkFIRUFBZ0JoQUFBQVZBOEFBRk0xQUFBWEFGVnVZWFIwWlc1a1pXUWdSM0p2ZFdRZ1UyVnVjMjl5Q2dBQ0FBSUFBQUJxQUFBQWNnRUFBQmNBVlFCdUFHRUFkQUIwQUdVQWJnQmtBR1VBWkFBZ0FFY0FjZ0J2QUhVQVpBQWdBRk1BWlFCdUFITUFid0J5QUl3QUFRQUFBQUFBa1FBQkFBVUFBQUFBQUFBQUFKY0FBUUFGQUFBQUFBQUFBQUNSQUFFQUJRQUFBUC8vLy84QmlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NMQUFFQUFnQUFBQUFZbFFBQkFBUUFBQUFDQVFBQWxnQUJBQUlBQUFBSkFKWUFBUUFDQUFBQUNRQnhBQUlBYlFBQUFNWVFBQUJUTlFBQUZ3QlZibUYwZEdWdVpHVmtJRWR5YjNWa0lGTmxibk52Y2d3QUJRQUZBQUFBYWdBQUFDTUJBQURjQVFBQWxRSUFBUDhDQUFBWEFGVUFiZ0JoQUhRQWRBQmxBRzRBWkFCbEFHUUFJQUJIQUhJQWJ3QjFBR1FBSUFCVEFHVUFiZ0J6QUc4QWNnQ01BQUVBQUFBQUFKRUFBUUFGQUFBQUFBQUFBQUNYQUFFQUJRQUFBQUFBQUFBQWtRQUJBQVVBQUFELy8vLy9BWW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWl3QUJBQUlBQUFBQUdKVUFBUUFFQUFBQUFnRUFBSllBQVFBQ0FBQUFDUUNXQUFFQUFnQUFBQWtBY1FBQ0FGMEFBQURGRXdBQVV6VUFBQmNBVlc1aGRIUmxibVJsWkNCSGNtOTFaQ0JUWlc1emIzSVJBQUVBQVFBQUFPNEFBQUFYQUZVQWJnQmhBSFFBZEFCbEFHNEFaQUJsQUdRQUlBQkhBSElBYndCMUFHUUFJQUJUQUdVQWJnQnpBRzhBY2dDTUFBRUFBQUFBQUpFQUFRQUZBQUFBQUFBQUFBQ1hBQUVBQlFBQUFBQUFBQUFBa1FBQkFBVUFBQUQvLy8vL0FZb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUZBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBaXdBQkFBSUFBQUFBR0pVQUFRQUVBQUFBQWdFQUFKWUFBUUFDQUFBQUNRQ1dBQUVBQWdBQUFBa0FjUUFDQUcwQUFBQ3pGQUFBVXpVQUFCY0FWVzVoZEhSbGJtUmxaQ0JIY205MVpDQlRaVzV6YjNJU0FBVUFCUUFBQUxrQUFBQnlBUUFBTEFJQUFPVUNBQUJQQXdBQUZ3QlZBRzRBWVFCMEFIUUFaUUJ1QUdRQVpRQmtBQ0FBUndCeUFHOEFkUUJrQUNBQVV3QmxBRzRBY3dCdkFISUFqQUFCQUFBQUFBQ01BQUVBQUFBQUFJc0FBUUFDQUFBQUFCaVZBQUVBQkFBQUFBSUJBQUNXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQVVBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBZ0FBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQVVBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBZ0FBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBakFBQkFBQUFBQUNMQUFFQUFnQUFBUC8va1FBQkFBVUFBQUFBQUFBQUFKY0FBUUFGQUFBQUFBQUFBQUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQ0FBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FJWUFBUUFFQUFBQUFBQUFBSXNBQVFBQ0FBQUFBQmlWQUFFQUJBQUFBQUlCQUFDV0FBRUFBZ0FBQUFrQWxnQUJBQUlBQUFBSkFIRUFBZ0JhQUFBQWdnZ0FBREEzQUFBV0FGVnViV0Z1WldRZ1IzSnZkVzVrSUZabGFHbGpiR1VBQUFFQUFRQUFBTzRBQUFBV0FGVUFiZ0J0QUdFQWJnQmxBR1FBSUFCSEFISUFid0IxQUc0QVpBQWdBRllBWlFCb0FHa0FZd0JzQUdVQWpBQUJBQUFBQUFDUkFBRUFCUUFBQUFBQUFBQUFsd0FCQUFVQUFBQUFBQUFBQUpFQUFRQUZBQUFBLy8vLy93R0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFCUUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUlzQUFRQUNBQUFBQUJpVkFBRUFCQUFBQUFJQkFBQ1dBQUVBQWdBQUFBa0FsZ0FCQUFJQUFBQUpBSEVBQWdCeUFBQUFjQWtBQURBM0FBQVdBRlZ1YldGdVpXUWdSM0p2ZFc1a0lGWmxhR2xqYkdVQkFBY0FCd0FBQUxrQUFBRGNBUUFBbFFJQUFFOERBQUFJQkFBQXdRUUFBQ3NGQUFBV0FGVUFiZ0J0QUdFQWJnQmxBR1FBSUFCSEFISUFid0IxQUc0QVpBQWdBRllBWlFCb0FHa0FZd0JzQUdVQWpBQUJBQUFBQUFDUkFBRUFCUUFBQUFBQUFBQUFsd0FCQUFVQUFBQUFBQUFBQUpFQUFRQUZBQUFBLy8vLy93R0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFDQUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUlzQUFRQUNBQUFBQUJpVkFBRUFCQUFBQUFJQkFBQ1dBQUVBQWdBQUFBa0FsZ0FCQUFJQUFBQUpBSEVBQWdCYUFBQUFtdzRBQURBM0FBQVdBRlZ1YldGdVpXUWdSM0p2ZFc1a0lGWmxhR2xqYkdVSUFBRUFBUUFBQUFrQkFBQVdBRlVBYmdCdEFHRUFiZ0JsQUdRQUlBQkhBSElBYndCMUFHNEFaQUFnQUZZQVpRQm9BR2tBWXdCc0FHVUFqQUFCQUFBQUFBQ1JBQUVBQlFBQUFBQUFBQUFBbHdBQkFBVUFBQUFBQUFBQUFKRUFBUUFGQUFBQS8vLy8vd0dLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQlFBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FJc0FBUUFDQUFBQUFCaVZBQUVBQkFBQUFBSUJBQUNXQUFFQUFnQUFBQWtBbGdBQkFBSUFBQUFKQUhFQUFnQnVBQUFBcEE4QUFEQTNBQUFXQUZWdWJXRnVaV1FnUjNKdmRXNWtJRlpsYUdsamJHVUpBQVlBQmdBQUFHb0FBQUFqQVFBQTNBRUFBSlVDQUFCUEF3QUF1UU1BQUJZQVZRQnVBRzBBWVFCdUFHVUFaQUFnQUVjQWNnQnZBSFVBYmdCa0FDQUFWZ0JsQUdnQWFRQmpBR3dBWlFDTUFBRUFBQUFBQUpFQUFRQUZBQUFBQUFBQUFBQ1hBQUVBQlFBQUFBQUFBQUFBa1FBQkFBVUFBQUQvLy8vL0FZb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUlBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBaXdBQkFBSUFBQUFBR0pVQUFRQUVBQUFBQWdFQUFKWUFBUUFDQUFBQUNRQ1dBQUVBQWdBQUFBa0FjUUFDQUZvQUFBQmRFd0FBTURjQUFCWUFWVzV0WVc1bFpDQkhjbTkxYm1RZ1ZtVm9hV05zWlE4QUFRQUJBQUFBN2dBQUFCWUFWUUJ1QUcwQVlRQnVBR1VBWkFBZ0FFY0FjZ0J2QUhVQWJnQmtBQ0FBVmdCbEFHZ0FhUUJqQUd3QVpRQ01BQUVBQUFBQUFKRUFBUUFGQUFBQUFBQUFBQUNYQUFFQUJRQUFBQUFBQUFBQWtRQUJBQVVBQUFELy8vLy9BWW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFGQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWl3QUJBQUlBQUFBQUdKVUFBUUFFQUFBQUFnRUFBSllBQVFBQ0FBQUFDUUNXQUFFQUFnQUFBQWtBY1FBQ0FHNEFBQUJMRkFBQU1EY0FBQllBVlc1dFlXNWxaQ0JIY205MWJtUWdWbVZvYVdOc1pSQUFCZ0FHQUFBQXVRQUFBSElCQUFEQ0FRQUFld0lBQU1vQ0FBQ0VBd0FBRmdCVkFHNEFiUUJoQUc0QVpRQmtBQ0FBUndCeUFHOEFkUUJ1QUdRQUlBQldBR1VBYUFCcEFHTUFiQUJsQUl3QUFRQUFBQUFBakFBQkFBQUFBQUNMQUFFQUFnQUFBQUFZbFFBQkFBUUFBQUFDQVFBQWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUlBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBRkFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUZBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBSUFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFGQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUlBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBRkFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSXdBQVFBQUFBQUFpd0FCQUFJQUFBRC8vNUVBQVFBRkFBQUFBQUFBQUFDWEFBRUFCUUFBQUFBQUFBQUFpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDR0FBRUFCQUFBQUFBQUFBQ0xBQUVBQWdBQUFBQVlsUUFCQUFRQUFBQUNBUUFBbGdBQkFBSUFBQUFKQUpZQUFRQUNBQUFBQ1FCeEFBSUFVUUFBQUlJSUFBQU1PUUFBRXdCVmJtRjBkR1Z1WkdWa0lFMTFibWwwYVc5dUFBQUJBQUVBQUFEdUFBQUFFd0JWQUc0QVlRQjBBSFFBWlFCdUFHUUFaUUJrQUNBQVRRQjFBRzRBYVFCMEFHa0Fid0J1QUl3QUFRQUFBQUFBa1FBQkFBVUFBQUFBQUFBQUFKY0FBUUFGQUFBQUFBQUFBQUNSQUFFQUJRQUFBUC8vLy84QmlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NMQUFFQUFnQUFBQUFZbFFBQkFBUUFBQUFDQVFBQWxnQUJBQUlBQUFBSkFKWUFBUUFDQUFBQUNRQnhBQUlBZFFBQUFIQUpBQUFNT1FBQUV3QlZibUYwZEdWdVpHVmtJRTExYm1sMGFXOXVBUUFLQUFvQUFBQzVBQUFBY2dFQUFOd0JBQUJHQWdBQS93SUFBTGtEQUFCeUJBQUFLd1VBQU9RRkFBQk9CZ0FBRXdCVkFHNEFZUUIwQUhRQVpRQnVBR1FBWlFCa0FDQUFUUUIxQUc0QWFRQjBBR2tBYndCdUFJd0FBUUFBQUFBQWtRQUJBQVVBQUFBQUFBQUFBSmNBQVFBRkFBQUFBQUFBQUFDUkFBRUFCUUFBQVAvLy8vOEJpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDTEFBRUFBZ0FBQUFBWWxRQUJBQVFBQUFBQ0FRQUFsZ0FCQUFJQUFBQUpBSllBQVFBQ0FBQUFDUUJ4QUFJQVVRQUFBTDRQQUFBTU9RQUFFd0JWYm1GMGRHVnVaR1ZrSUUxMWJtbDBhVzl1Q3dBQkFBRUFBQUFqQVFBQUV3QlZBRzRBWVFCMEFIUUFaUUJ1QUdRQVpRQmtBQ0FBVFFCMUFHNEFhUUIwQUdrQWJ3QnVBSXdBQVFBQUFBQUFrUUFCQUFVQUFBQUFBQUFBQUpjQUFRQUZBQUFBQUFBQUFBQ1JBQUVBQlFBQUFQLy8vLzhCaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q0xBQUVBQWdBQUFBQVlsUUFCQUFRQUFBQUNBUUFBbGdBQkFBSUFBQUFKQUpZQUFRQUNBQUFBQ1FCeEFBSUFhUUFBQU9FUUFBQU1PUUFBRXdCVmJtRjBkR1Z1WkdWa0lFMTFibWwwYVc5dURBQUhBQWNBQUFDNUFBQUFjZ0VBQU1JQkFBQXNBZ0FBZXdJQUFEUURBQUR0QXdBQUV3QlZBRzRBWVFCMEFIUUFaUUJ1QUdRQVpRQmtBQ0FBVFFCMUFHNEFhUUIwQUdrQWJ3QnVBSXdBQVFBQUFBQUFqQUFCQUFBQUFBQ0xBQUVBQWdBQUFBQVlsUUFCQUFRQUFBQUNBUUFBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBSUFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFGQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUlBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBRkFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUZBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBSUFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFGQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUlBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBRkFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFsZ0FCQUFJQUFBQUpBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWxnQUJBQUlBQUFBSkFJb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUZBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBbGdBQkFBSUFBQUFKQUl3QUFRQUFBQUFBaXdBQkFBSUFBQUQvLzVFQUFRQUZBQUFBQUFBQUFBQ1hBQUVBQlFBQUFBQUFBQUFBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q0dBQUVBQkFBQUFBQUFBQUNMQUFFQUFnQUFBQUFZbFFBQkFBUUFBQUFDQVFBQWxnQUJBQUlBQUFBSkFKWUFBUUFDQUFBQUNRQnhBQUlBUWdBQUFJSUlBQURvT2dBQURnQlZiazFoYm1Wa0lGTjVjM1JsYlFBQUFRQUJBQUFBN2dBQUFBNEFWUUJ1QUUwQVlRQnVBR1VBWkFBZ0FGTUFlUUJ6QUhRQVpRQnRBSXdBQVFBQUFBQUFrUUFCQUFVQUFBQUFBQUFBQUpjQUFRQUZBQUFBQUFBQUFBQ1JBQUVBQlFBQUFQLy8vLzhCaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q0xBQUVBQWdBQUFBQVlsUUFCQUFRQUFBQUNBUUFBbGdBQkFBSUFBQUFKQUpZQUFRQUNBQUFBQ1FCeEFBSUFRZ0FBQUhBSkFBRG9PZ0FBRGdCVmJrMWhibVZrSUZONWMzUmxiUUVBQVFBQkFBQUF1UUFBQUE0QVZRQnVBRTBBWVFCdUFHVUFaQUFnQUZNQWVRQnpBSFFBWlFCdEFJd0FBUUFBQUFBQWtRQUJBQVVBQUFBQUFBQUFBSmNBQVFBRkFBQUFBQUFBQUFDUkFBRUFCUUFBQVAvLy8vOEJpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDTEFBRUFBZ0FBQUFBWWxRQUJBQVFBQUFBQ0FRQUFsZ0FCQUFJQUFBQUpBSllBQVFBQ0FBQUFDUUJ4QUFJQVFnQUFBQ2tLQUFEb09nQUFEZ0JWYmsxaGJtVmtJRk41YzNSbGJRSUFBUUFCQUFBQUl3RUFBQTRBVlFCdUFFMEFZUUJ1QUdVQVpBQWdBRk1BZVFCekFIUUFaUUJ0QUl3QUFRQUFBQUFBa1FBQkFBVUFBQUFBQUFBQUFKY0FBUUFGQUFBQUFBQUFBQUNSQUFFQUJRQUFBUC8vLy84QmlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NMQUFFQUFnQUFBQUFZbFFBQkFBUUFBQUFDQVFBQWxnQUJBQUlBQUFBSkFKWUFBUUFDQUFBQUNRQnhBQUlBVWdBQUFFd0xBQURvT2dBQURnQlZiazFoYm1Wa0lGTjVjM1JsYlFNQUJRQUZBQUFBdVFBQUFISUJBQUFzQWdBQTVRSUFBRThEQUFBT0FGVUFiZ0JOQUdFQWJnQmxBR1FBSUFCVEFIa0Fjd0IwQUdVQWJRQ01BQUVBQUFBQUFKRUFBUUFGQUFBQUFBQUFBQUNYQUFFQUJRQUFBQUFBQUFBQWtRQUJBQVVBQUFELy8vLy9BWW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWl3QUJBQUlBQUFBQUdKVUFBUUFFQUFBQUFnRUFBSllBQVFBQ0FBQUFDUUNXQUFFQUFnQUFBQWtBY1FBQ0FFSUFBQUNiRGdBQTZEb0FBQTRBVlc1TllXNWxaQ0JUZVhOMFpXMElBQUVBQVFBQUFPNEFBQUFPQUZVQWJnQk5BR0VBYmdCbEFHUUFJQUJUQUhrQWN3QjBBR1VBYlFDTUFBRUFBQUFBQUpFQUFRQUZBQUFBQUFBQUFBQ1hBQUVBQlFBQUFBQUFBQUFBa1FBQkFBVUFBQUQvLy8vL0FZb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUZBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBaXdBQkFBSUFBQUFBR0pVQUFRQUVBQUFBQWdFQUFKWUFBUUFDQUFBQUNRQ1dBQUVBQWdBQUFBa0FjUUFDQUZJQUFBQ0pEd0FBNkRvQUFBNEFWVzVOWVc1bFpDQlRlWE4wWlcwSkFBVUFCUUFBQUxrQUFBQnlBUUFBM0FFQUFKVUNBQUM1QXdBQURnQlZBRzRBVFFCaEFHNEFaUUJrQUNBQVV3QjVBSE1BZEFCbEFHMEFqQUFCQUFBQUFBQ01BQUVBQUFBQUFJc0FBUUFDQUFBQUFCaVZBQUVBQkFBQUFBSUJBQUNXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQVVBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBZ0FBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFnQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQVVBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBZ0FBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBaWdBQkFEY0FBQUFEQURFQUFBQUZBRUZ5YVdGc0FBQUFBQUFBWVFFQUFBRUFCUUFBQUFVQUFBQUFBQUFBREFRQUFBQUFBQUFBQUFBRUNBQUFBQUFBaUFBQkFBSUFBQUFCQUljQUFRQUZBQUFBLy8vLy93Q1dBQUVBQWdBQUFBa0FpZ0FCQURjQUFBQURBREVBQUFBRkFFRnlhV0ZzQUFBQUFBQUFZUUVBQUFFQUJRQUFBQWdBQUFBQUFBQUFEQVFBQUFBQUFBQUFBQUFFQ0FBQUFBQUFpQUFCQUFJQUFBQUJBSWNBQVFBRkFBQUEvLy8vL3dDV0FBRUFBZ0FBQUFrQWlnQUJBRGNBQUFBREFERUFBQUFGQUVGeWFXRnNBQUFBQUFBQVlRRUFBQUVBQlFBQUFBVUFBQUFBQUFBQURBUUFBQUFBQUFBQUFBQUVDQUFBQUFBQWlBQUJBQUlBQUFBQkFJY0FBUUFGQUFBQS8vLy8vd0NXQUFFQUFnQUFBQWtBakFBQkFBQUFBQUNMQUFFQUFnQUFBUC8va1FBQkFBVUFBQUFBQUFBQUFKY0FBUUFGQUFBQUFBQUFBQUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQ0FBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FJWUFBUUFFQUFBQUFBQUFBSXNBQVFBQ0FBQUFBQmlWQUFFQUJBQUFBQUlCQUFDV0FBRUFBZ0FBQUFrQWxnQUJBQUlBQUFBSkFIRUFBZ0JkQUFBQWdnZ0FBTVE4QUFBWEFGVnViV0Z1WldRZ1UzVnlabUZqWlNCV1pXaHBZMnhsQUFBQkFBRUFBQUR1QUFBQUZ3QlZBRzRBYlFCaEFHNEFaUUJrQUNBQVV3QjFBSElBWmdCaEFHTUFaUUFnQUZZQVpRQm9BR2tBWXdCc0FHVUFqQUFCQUFBQUFBQ1JBQUVBQlFBQUFBQUFBQUFBbHdBQkFBVUFBQUFBQUFBQUFKRUFBUUFGQUFBQS8vLy8vd0dLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQlFBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FJc0FBUUFDQUFBQUFCaVZBQUVBQkFBQUFBSUJBQUNXQUFFQUFnQUFBQWtBbGdBQkFBSUFBQUFKQUhFQUFnQnhBQUFBY0FrQUFNUThBQUFYQUZWdWJXRnVaV1FnVTNWeVptRmpaU0JXWldocFkyeGxBUUFHQUFZQUFBQzVBQUFBM0FFQUFKVUNBQUJQQXdBQUNBUUFBTUVFQUFBWEFGVUFiZ0J0QUdFQWJnQmxBR1FBSUFCVEFIVUFjZ0JtQUdFQVl3QmxBQ0FBVmdCbEFHZ0FhUUJqQUd3QVpRQ01BQUVBQUFBQUFKRUFBUUFGQUFBQUFBQUFBQUNYQUFFQUJRQUFBQUFBQUFBQWtRQUJBQVVBQUFELy8vLy9BWW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWl3QUJBQUlBQUFBQUdKVUFBUUFFQUFBQUFnRUFBSllBQVFBQ0FBQUFDUUNXQUFFQUFnQUFBQWtBY1FBQ0FHRUFBQUF4RGdBQXhEd0FBQmNBVlc1dFlXNWxaQ0JUZFhKbVlXTmxJRlpsYUdsamJHVUhBQUlBQWdBQUFHb0FBQUJZQVFBQUZ3QlZBRzRBYlFCaEFHNEFaUUJrQUNBQVV3QjFBSElBWmdCaEFHTUFaUUFnQUZZQVpRQm9BR2tBWXdCc0FHVUFqQUFCQUFBQUFBQ1JBQUVBQlFBQUFBQUFBQUFBbHdBQkFBVUFBQUFBQUFBQUFKRUFBUUFGQUFBQS8vLy8vd0dLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQlFBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FJc0FBUUFDQUFBQUFCaVZBQUVBQkFBQUFBSUJBQUNXQUFFQUFnQUFBQWtBbGdBQkFBSUFBQUFKQUhFQUFnQjFBQUFBaVE4QUFNUThBQUFYQUZWdWJXRnVaV1FnVTNWeVptRmpaU0JXWldocFkyeGxDUUFIQUFjQUFBQzVBQUFBSXdFQUFISUJBQUFzQWdBQTVRSUFBSjREQUFBSUJBQUFGd0JWQUc0QWJRQmhBRzRBWlFCa0FDQUFVd0IxQUhJQVpnQmhBR01BWlFBZ0FGWUFaUUJvQUdrQVl3QnNBR1VBakFBQkFBQUFBQUNSQUFFQUJRQUFBQUFBQUFBQWx3QUJBQVVBQUFBQUFBQUFBSkVBQVFBRkFBQUEvLy8vL3dHS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSXNBQVFBQ0FBQUFBQmlWQUFFQUJBQUFBQUlCQUFDV0FBRUFBZ0FBQUFrQWxnQUJBQUlBQUFBSkFIRUFBZ0JkQUFBQWtSTUFBTVE4QUFBWEFGVnViV0Z1WldRZ1UzVnlabUZqWlNCV1pXaHBZMnhsRUFBQkFBRUFBQUR1QUFBQUZ3QlZBRzRBYlFCaEFHNEFaUUJrQUNBQVV3QjFBSElBWmdCaEFHTUFaUUFnQUZZQVpRQm9BR2tBWXdCc0FHVUFqQUFCQUFBQUFBQ1JBQUVBQlFBQUFBQUFBQUFBbHdBQkFBVUFBQUFBQUFBQUFKRUFBUUFGQUFBQS8vLy8vd0dLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQlFBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FJc0FBUUFDQUFBQUFCaVZBQUVBQkFBQUFBSUJBQUNXQUFFQUFnQUFBQWtBbGdBQkFBSUFBQUFKQUhFQUFnQnhBQUFBZnhRQUFNUThBQUFYQUZWdWJXRnVaV1FnVTNWeVptRmpaU0JXWldocFkyeGxFUUFHQUFZQUFBQzVBQUFBY2dFQUFNSUJBQUI3QWdBQXlnSUFBSVFEQUFBWEFGVUFiZ0J0QUdFQWJnQmxBR1FBSUFCVEFIVUFjZ0JtQUdFQVl3QmxBQ0FBVmdCbEFHZ0FhUUJqQUd3QVpRQ01BQUVBQUFBQUFJd0FBUUFBQUFBQWl3QUJBQUlBQUFBQUdKVUFBUUFFQUFBQUFnRUFBSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQ0FBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFCUUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQlFBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFDQUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUJRQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQ0FBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFCUUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUNBQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNLQUFFQU53QUFBQU1BTVFBQUFBVUFRWEpwWVd3QUFBQUFBQUJoQVFBQUFRQUZBQUFBQlFBQUFBQUFBQUFNQkFBQUFBQUFBQUFBQUFRSUFBQUFBQUNJQUFFQUFnQUFBQUVBaHdBQkFBVUFBQUQvLy8vL0FKWUFBUUFDQUFBQUNRQ0tBQUVBTndBQUFBTUFNUUFBQUFVQVFYSnBZV3dBQUFBQUFBQmhBUUFBQVFBRkFBQUFDQUFBQUFBQUFBQU1CQUFBQUFBQUFBQUFBQVFJQUFBQUFBQ0lBQUVBQWdBQUFBRUFod0FCQUFVQUFBRC8vLy8vQUpZQUFRQUNBQUFBQ1FDS0FBRUFOd0FBQUFNQU1RQUFBQVVBUVhKcFlXd0FBQUFBQUFCaEFRQUFBUUFGQUFBQUJRQUFBQUFBQUFBTUJBQUFBQUFBQUFBQUFBUUlBQUFBQUFDSUFBRUFBZ0FBQUFFQWh3QUJBQVVBQUFELy8vLy9BSllBQVFBQ0FBQUFDUUNNQUFFQUFBQUFBSXNBQVFBQ0FBQUEvLytSQUFFQUJRQUFBQUFBQUFBQWx3QUJBQVVBQUFBQUFBQUFBSW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFJQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWhnQUJBQVFBQUFBQUFBQUFpd0FCQUFJQUFBQUFHSlVBQVFBRUFBQUFBZ0VBQUpZQUFRQUNBQUFBQ1FDV0FBRUFBZ0FBQUFrQWNRQUNBR1lBQUFDQ0NBQUFvVDRBQUJvQVZXNXRZVzVsWkNCVmJtUmxjbmRoZEdWeUlGWmxhR2xqYkdVQUFBRUFBUUFBQU80QUFBQWFBRlVBYmdCdEFHRUFiZ0JsQUdRQUlBQlZBRzRBWkFCbEFISUFkd0JoQUhRQVpRQnlBQ0FBVmdCbEFHZ0FhUUJqQUd3QVpRQ01BQUVBQUFBQUFKRUFBUUFGQUFBQUFBQUFBQUNYQUFFQUJRQUFBQUFBQUFBQWtRQUJBQVVBQUFELy8vLy9BWW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFGQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWl3QUJBQUlBQUFBQUdKVUFBUUFFQUFBQUFnRUFBSllBQVFBQ0FBQUFDUUNXQUFFQUFnQUFBQWtBY1FBQ0FINEFBQUJ3Q1FBQW9UNEFBQm9BVlc1dFlXNWxaQ0JWYm1SbGNuZGhkR1Z5SUZabGFHbGpiR1VCQUFjQUJ3QUFBTGtBQUFEY0FRQUFsUUlBQUU4REFBQUlCQUFBd1FRQUFDc0ZBQUFhQUZVQWJnQnRBR0VBYmdCbEFHUUFJQUJWQUc0QVpBQmxBSElBZHdCaEFIUUFaUUJ5QUNBQVZnQmxBR2dBYVFCakFHd0FaUUNNQUFFQUFBQUFBSkVBQVFBRkFBQUFBQUFBQUFDWEFBRUFCUUFBQUFBQUFBQUFrUUFCQUFVQUFBRC8vLy8vQVlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBSUFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFpd0FCQUFJQUFBQUFHSlVBQVFBRUFBQUFBZ0VBQUpZQUFRQUNBQUFBQ1FDV0FBRUFBZ0FBQUFrQWNRQUNBR1lBQUFDYkRnQUFvVDRBQUJvQVZXNXRZVzVsWkNCVmJtUmxjbmRoZEdWeUlGWmxhR2xqYkdVSUFBRUFBUUFBQU80QUFBQWFBRlVBYmdCdEFHRUFiZ0JsQUdRQUlBQlZBRzRBWkFCbEFISUFkd0JoQUhRQVpRQnlBQ0FBVmdCbEFHZ0FhUUJqQUd3QVpRQ01BQUVBQUFBQUFKRUFBUUFGQUFBQUFBQUFBQUNYQUFFQUJRQUFBQUFBQUFBQWtRQUJBQVVBQUFELy8vLy9BWW9BQVFBM0FBQUFBd0F4QUFBQUJRQkJjbWxoYkFBQUFBQUFBR0VCQUFBQkFBVUFBQUFGQUFBQUFBQUFBQXdFQUFBQUFBQUFBQUFBQkFnQUFBQUFBSWdBQVFBQ0FBQUFBUUNIQUFFQUJRQUFBUC8vLy84QWl3QUJBQUlBQUFBQUdKVUFBUUFFQUFBQUFnRUFBSllBQVFBQ0FBQUFDUUNXQUFFQUFnQUFBQWtBY1FBQ0FJb0FBQUNKRHdBQW9UNEFBQm9BVlc1dFlXNWxaQ0JWYm1SbGNuZGhkR1Z5SUZabGFHbGpiR1VKQUFvQUNnQUFBTGtBQUFCeUFRQUFMQUlBQUpVQ0FBQ0VBd0FBUFFRQUFLY0VBQUJnQlFBQXlnVUFBRFFHQUFBYUFGVUFiZ0J0QUdFQWJnQmxBR1FBSUFCVkFHNEFaQUJsQUhJQWR3QmhBSFFBWlFCeUFDQUFWZ0JsQUdnQWFRQmpBR3dBWlFDTUFBRUFBQUFBQUpFQUFRQUZBQUFBQUFBQUFBQ1hBQUVBQlFBQUFBQUFBQUFBa1FBQkFBVUFBQUQvLy8vL0FZb0FBUUEzQUFBQUF3QXhBQUFBQlFCQmNtbGhiQUFBQUFBQUFHRUJBQUFCQUFVQUFBQUlBQUFBQUFBQUFBd0VBQUFBQUFBQUFBQUFCQWdBQUFBQUFJZ0FBUUFDQUFBQUFRQ0hBQUVBQlFBQUFQLy8vLzhBaXdBQkFBSUFBQUFBR0pVQUFRQUVBQUFBQWdFQUFKWUFBUUFDQUFBQUNRQ1dBQUVBQWdBQUFBa0FjUUFDQUdZQUFBQzlGUUFBb1Q0QUFCb0FWVzV0WVc1bFpDQlZibVJsY25kaGRHVnlJRlpsYUdsamJHVVRBQUVBQVFBQUFPNEFBQUFhQUZVQWJnQnRBR0VBYmdCbEFHUUFJQUJWQUc0QVpBQmxBSElBZHdCaEFIUUFaUUJ5QUNBQVZnQmxBR2dBYVFCakFHd0FaUUNNQUFFQUFBQUFBSkVBQVFBRkFBQUFBQUFBQUFDWEFBRUFCUUFBQUFBQUFBQUFrUUFCQUFVQUFBRC8vLy8vQVlvQUFRQTNBQUFBQXdBeEFBQUFCUUJCY21saGJBQUFBQUFBQUdFQkFBQUJBQVVBQUFBRkFBQUFBQUFBQUF3RUFBQUFBQUFBQUFBQUJBZ0FBQUFBQUlnQUFRQUNBQUFBQVFDSEFBRUFCUUFBQVAvLy8vOEFpd0FCQUFJQUFBQUFHSlVBQVFBRUFBQUFBZ0VBQUpZQUFRQUNBQUFBQ1FDV0FBRUFBZ0FBQUFrQWNRQUNBSG9BQUFDckZnQUFvVDRBQUJvQVZXNXRZVzVsWkNCVmJtUmxjbmRoZEdWeUlGWmxhR2xqYkdVVUFBWUFCZ0FBQUxrQUFBQnlBUUFBd2dFQUFIc0NBQURLQWdBQWhBTUFBQm9BVlFCdUFHMEFZUUJ1QUdVQVpBQWdBRlVBYmdCa0FHVUFjZ0IzQUdFQWRBQmxBSElBSUFCV0FHVUFhQUJwQUdNQWJBQmxBSXdBQVFBQUFBQUFqQUFCQUFBQUFBQ0xBQUVBQWdBQUFDQUFnZ0FCQUNFQUFBQUNBQnNBQUFBQ0FBSUFBQUNVQlFBQUp6OEFBQUVBQUFBQUFFMHBBQUFDQUFDTUFBRUFBQUFBQUlzQUFRQUNBQUFBSUFDQ0FBRUFJUUFBQUFJQUd3QUFBQUlBQWdBQUFKUUZBQUFuUHdBQUFRQUFBQUFBVFNrQUFBSUFBSXdBQVFBQUFBQUFpd0FCQUFJQUFBQWdBSUlBQVFBaEFBQUFBZ0FiQUFBQUFnQUNBQUFBbEFVQUFDYy9BQUFCQUFBQUFBQk5LUUFBQWdBQWpBQUJBQUFBQUFDVkFBRUFCQUFBQUFBQUFBQ01BQUVBQUFBQUFBPT0iLz48L2Rpdj48L2Rpdj48ZGl2IHN0eWxlPSJjbGVhcjpib3RoOyBsaW5lLWhlaWdodDowOyB3aWR0aDowOyBoZWlnaHQ6MDsgbWFyZ2luOjA7IHBhZGRpbmc6MDsiPsKgPC9kaXY+PHAgY2xhc3M9IlAzMyI+VGFibGUgPGEgaWQ9InJlZlRhYmxlMSIvPjI6IGxpc3Qgb2YgdXNlZCBhY3JvbnltczwvcD48cCBjbGFzcz0iQ2FwdGlvbiI+wqA8L3A+PHAgY2xhc3M9IkZvb3Rub3RlIj48c3BhbiBjbGFzcz0iZm9vdG5vZGVOdW1iZXIiPjxhIGNsYXNzPSJGb290bm90ZV8yMF9TeW1ib2wiIGlkPSJmdG4xIiBocmVmPSIjYm9keV9mdG4xIj4xPC9hPjwvc3Bhbj5UaGlzIGRvY3VtZW50IGlzIHRvIGJlIGluc2VydGVkIGFzIGl0IGlzIGluIG90aGVyIGVuY2xvc2luZyBkb2N1bWVudHMuIElmIHRoZSB1c2VyIGlzIHdpbGxpbmcgaGUgLyBzaGUgY2FuIG1vZGlmeSB0aGUgdGl0bGUgbGV2ZWwgaW4gb3JkZXIgdG8gZmFjaWxpdGF0ZSB0aGlzIGludGVncmF0aW9uPC9wPjwvYm9keT48L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmhlbHAvaHRtbC9SMC4yLjMtUjAuMi1JbWFnZXMuanBnIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmhlbHAvaHRtbC9SMC4yLjMtUjAuMi1JbWFnZXMuanBnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI2YzhjODYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuaGVscC9odG1sL1IwLjIuMy1SMC4yLUltYWdlcy5qcGcKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmhlbHAvaHRtbC9kZWZpbml0aW9ucy5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmhlbHAvaHRtbC9kZWZpbml0aW9ucy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdiYzAwOTEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuaGVscC9odG1sL2RlZmluaXRpb25zLmh0bWwKQEAgLTAsMCArMSwxMyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMCBUcmFuc2l0aW9uYWwvL0VOIj4KKworPGh0bWw+Cis8aGVhZD4KKwk8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1pc28tODg1OS0xIj4KKwk8dGl0bGU+RGVmaW5pdGlvbnM8L3RpdGxlPgorPC9oZWFkPgorCis8Ym9keT4KKzxoMT5Sb2JvdDwvaDE+CitQbGVhc2UgZW50ZXIgeW91ciBkZWZpbml0aW9uIGhlcmUuCis8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmhlbHAvaHRtbC9yb2JvdC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmhlbHAvaHRtbC9yb2JvdC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZlMjdkNzEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuaGVscC9odG1sL3JvYm90Lmh0bWwKQEAgLTAsMCArMSwxMyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMCBUcmFuc2l0aW9uYWwvL0VOIj4KKworPGh0bWw+Cis8aGVhZD4KKwk8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1pc28tODg1OS0xIj4KKwk8dGl0bGU+Um9ib3Q8L3RpdGxlPgorPC9oZWFkPgorCis8Ym9keT4KKzxoMT5Sb2JvdDwvaDE+CitQbGVhc2UgZW50ZXIgeW91ciBkZWZpbml0aW9uIGhlcmUuCis8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmhlbHAvaHRtbC90b2MuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5oZWxwL2h0bWwvdG9jLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzI2ZjBhOQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5oZWxwL2h0bWwvdG9jLmh0bWwKQEAgLTAsMCArMSwxMyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMCBUcmFuc2l0aW9uYWwvL0VOIj4KKworPGh0bWw+Cis8aGVhZD4KKwk8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1pc28tODg1OS0xIj4KKwk8dGl0bGU+VGFibGUgb2YgQ29udGVudHM8L3RpdGxlPgorPC9oZWFkPgorCis8Ym9keT4KKzxoMT5UYWJsZSBvZiBDb250ZW50czwvaDE+CitQbGVhc2UgZW50ZXIgeW91ciB0ZXh0IGhlcmUuCis8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmhlbHAvcGx1Z2luLnByb3BlcnRpZXMgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuaGVscC9wbHVnaW4ucHJvcGVydGllcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44MDViZDRkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmhlbHAvcGx1Z2luLnByb3BlcnRpZXMKQEAgLTAsMCArMSwzIEBACisjUHJvcGVydGllcyBmaWxlIGZvciBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuaGVscAorQnVuZGxlLVZlbmRvciA9ICBFY2xpcHNlIE1vZGVsaW5nIFByb2plY3QKK0J1bmRsZS1OYW1lID0gb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmhlbHAgKEluY3ViYXRpb24pClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmhlbHAvcGx1Z2luLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5oZWxwL3BsdWdpbi54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjUyZjhjMgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5oZWxwL3BsdWdpbi54bWwKQEAgLTAsMCArMSwxNiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzw/ZWNsaXBzZSB2ZXJzaW9uPSIzLjQiPz4KKzxwbHVnaW4+CisKKyAgIDwhLS1leHRlbnNpb24KKyAgICAgICAgIHBvaW50PSJvcmcuZWNsaXBzZS5oZWxwLnRvYyI+CisgICAgICA8dG9jCisgICAgICAgICAgICBmaWxlPSJ0b2MueG1sIj4KKyAgICAgIDwvdG9jPgorICAgICAgPHRvYworICAgICAgICAgICAgZmlsZT0idGVzdFRvYy54bWwiCisgICAgICAgICAgICBwcmltYXJ5PSJ0cnVlIj4KKyAgICAgIDwvdG9jPgorICAgPC9leHRlbnNpb24tLT4KKworPC9wbHVnaW4+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuaGVscC90ZXN0VG9jLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5oZWxwL3Rlc3RUb2MueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ5MzRjZjEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuaGVscC90ZXN0VG9jLnhtbApAQCAtMCwwICsxLDYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8P05MUyBUWVBFPSJvcmcuZWNsaXBzZS5oZWxwLnRvYyI/PgorCis8dG9jIGxhYmVsPSJSb2JvdE1MIGhlbHAiIHRvcGljPSJodG1sL3RvYy5odG1sIj4KKwk8bGluayB0b2M9InRvYy54bWwiIC8+Cis8L3RvYz4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5oZWxwL3RvYy54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuaGVscC90b2MueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk1YzU4YWYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuaGVscC90b2MueG1sCkBAIC0wLDAgKzEsOSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzw/TkxTIFRZUEU9Im9yZy5lY2xpcHNlLmhlbHAudG9jIj8+CisKKzx0b2MgbGFiZWw9IlByb3RldXMgVXNlciBHdWlkZSI+CisJPHRvcGljIGxhYmVsPSJEZWZpbml0aW9ucyIgIGhyZWY9Imh0bWwvUjAuMi4zLURlZmluaXRpb25zLWhlbHAuaHRtbCI+IAorCQkKKwk8L3RvcGljPgorCTx0b3BpYyBsYWJlbD0iTWFpbiBUb3BpYyAyIi8+Cis8L3RvYz4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyLy5jbGFzc3BhdGggYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci8uY2xhc3NwYXRoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc5ODA0OGQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci8uY2xhc3NwYXRoCkBAIC0wLDAgKzEsNyBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxjbGFzc3BhdGg+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KMlNFLTEuNSIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLnBkZS5jb3JlLnJlcXVpcmVkUGx1Z2lucyIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJzcmMiIHBhdGg9InNyYy8iLz4KKwk8Y2xhc3NwYXRoZW50cnkga2luZD0ib3V0cHV0IiBwYXRoPSJ0YXJnZXQvY2xhc3NlcyIvPgorPC9jbGFzc3BhdGg+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci8ucHJvamVjdCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyLy5wcm9qZWN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUwMzFkZWUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci8ucHJvamVjdApAQCAtMCwwICsxLDM0IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHByb2plY3REZXNjcmlwdGlvbj4KKwk8bmFtZT5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3JlcjwvbmFtZT4KKwk8Y29tbWVudD48L2NvbW1lbnQ+CisJPHByb2plY3RzPgorCTwvcHJvamVjdHM+CisJPGJ1aWxkU3BlYz4KKwkJPGJ1aWxkQ29tbWFuZD4KKwkJCTxuYW1lPm9yZy5lY2xpcHNlLmpkdC5jb3JlLmphdmFidWlsZGVyPC9uYW1lPgorCQkJPGFyZ3VtZW50cz4KKwkJCTwvYXJndW1lbnRzPgorCQk8L2J1aWxkQ29tbWFuZD4KKwkJPGJ1aWxkQ29tbWFuZD4KKwkJCTxuYW1lPm9yZy5lY2xpcHNlLnBkZS5NYW5pZmVzdEJ1aWxkZXI8L25hbWU+CisJCQk8YXJndW1lbnRzPgorCQkJPC9hcmd1bWVudHM+CisJCTwvYnVpbGRDb21tYW5kPgorCQk8YnVpbGRDb21tYW5kPgorCQkJPG5hbWU+b3JnLmVjbGlwc2UucGRlLlNjaGVtYUJ1aWxkZXI8L25hbWU+CisJCQk8YXJndW1lbnRzPgorCQkJPC9hcmd1bWVudHM+CisJCTwvYnVpbGRDb21tYW5kPgorCQk8YnVpbGRDb21tYW5kPgorCQkJPG5hbWU+b3JnLmVjbGlwc2UubTJlLmNvcmUubWF2ZW4yQnVpbGRlcjwvbmFtZT4KKwkJCTxhcmd1bWVudHM+CisJCQk8L2FyZ3VtZW50cz4KKwkJPC9idWlsZENvbW1hbmQ+CisJPC9idWlsZFNwZWM+CisJPG5hdHVyZXM+CisJCTxuYXR1cmU+b3JnLmVjbGlwc2UubTJlLmNvcmUubWF2ZW4yTmF0dXJlPC9uYXR1cmU+CisJCTxuYXR1cmU+b3JnLmVjbGlwc2UuamR0LmNvcmUuamF2YW5hdHVyZTwvbmF0dXJlPgorCQk8bmF0dXJlPm9yZy5lY2xpcHNlLnBkZS5QbHVnaW5OYXR1cmU8L25hdHVyZT4KKwk8L25hdHVyZXM+Cis8L3Byb2plY3REZXNjcmlwdGlvbj4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5wcmVmcyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5wcmVmcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45OWYyNmMwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIvLnNldHRpbmdzL29yZy5lY2xpcHNlLmNvcmUucmVzb3VyY2VzLnByZWZzCkBAIC0wLDAgKzEsMiBAQAorZWNsaXBzZS5wcmVmZXJlbmNlcy52ZXJzaW9uPTEKK2VuY29kaW5nLzxwcm9qZWN0Pj1VVEYtOApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFmMGYyMGYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKQEAgLTAsMCArMSw3IEBACitlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi5pbmxpbmVKc3JCeXRlY29kZT1lbmFibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnRhcmdldFBsYXRmb3JtPTEuNQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29tcGxpYW5jZT0xLjUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uYXNzZXJ0SWRlbnRpZmllcj1lcnJvcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbnVtSWRlbnRpZmllcj1lcnJvcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuc291cmNlPTEuNQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIvLnNldHRpbmdzL29yZy5lY2xpcHNlLm0yZS5jb3JlLnByZWZzIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIvLnNldHRpbmdzL29yZy5lY2xpcHNlLm0yZS5jb3JlLnByZWZzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY4OTdhN2YKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UubTJlLmNvcmUucHJlZnMKQEAgLTAsMCArMSw0IEBACithY3RpdmVQcm9maWxlcz0KK2VjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCityZXNvbHZlV29ya3NwYWNlUHJvamVjdHM9dHJ1ZQordmVyc2lvbj0xCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci9NRVRBLUlORi9NQU5JRkVTVC5NRiBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyL01FVEEtSU5GL01BTklGRVNULk1GCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZlMTJlZjQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci9NRVRBLUlORi9NQU5JRkVTVC5NRgpAQCAtMCwwICsxLDE2IEBACitNYW5pZmVzdC1WZXJzaW9uOiAxLjAKK1JlcXVpcmUtQnVuZGxlOiBvcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWU7YnVuZGxlLXZlcnNpb249IjMuNy4wIiwKKyBvcmcuZWNsaXBzZS51bWwyLnVtbDtidW5kbGUtdmVyc2lvbj0iMy4yLjAiLAorIG9yZy5lY2xpcHNlLmVtZi5mYWNldC5pbmZyYS5xdWVyeS5jb3JlLAorIG9yZy5lY2xpcHNlLnBhcHlydXMudW1sLnRvb2xzLnV0aWxzO2J1bmRsZS12ZXJzaW9uPSIxLjIuMCIKK0J1bmRsZS1WZW5kb3I6ICVCdW5kbGUtVmVuZG9yCitCdW5kbGUtQWN0aXZhdGlvblBvbGljeTogbGF6eQorQnVuZGxlLUNsYXNzUGF0aDogLiwKKyBiaW4KK0J1bmRsZS1WZXJzaW9uOiAxLjIuMC5xdWFsaWZpZXIKK0J1bmRsZS1Mb2NhbGl6YXRpb246IHBsdWdpbgorQnVuZGxlLU5hbWU6ICVCdW5kbGUtTmFtZQorQnVuZGxlLUFjdGl2YXRvcjogb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIuQWN0aXZhdG9yCitCdW5kbGUtTWFuaWZlc3RWZXJzaW9uOiAyCitCdW5kbGUtU3ltYm9saWNOYW1lOiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3JlcjtzaW5nbGV0b246PXRydWUKK0J1bmRsZS1SZXF1aXJlZEV4ZWN1dGlvbkVudmlyb25tZW50OiBKMlNFLTEuNQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIvYWJvdXQuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyL2Fib3V0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDM1ZDVhZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyL2Fib3V0Lmh0bWwKQEAgLTAsMCArMSwyOCBAQAorPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgU3RyaWN0Ly9FTiIKKyAgICAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtc3RyaWN0LmR0ZCI+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Cis8aGVhZD4KKzxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEiLz4KKzx0aXRsZT5BYm91dDwvdGl0bGU+Cis8L2hlYWQ+Cis8Ym9keSBsYW5nPSJFTi1VUyI+Cis8aDI+QWJvdXQgVGhpcyBDb250ZW50PC9oMj4KKyAKKzxwPkp1bmUgNSwgMjAwNzwvcD4JCis8aDM+TGljZW5zZTwvaDM+CisKKzxwPlRoZSBFY2xpcHNlIEZvdW5kYXRpb24gbWFrZXMgYXZhaWxhYmxlIGFsbCBjb250ZW50IGluIHRoaXMgcGx1Zy1pbiAoJnF1b3Q7Q29udGVudCZxdW90OykuICBVbmxlc3Mgb3RoZXJ3aXNlIAoraW5kaWNhdGVkIGJlbG93LCB0aGUgQ29udGVudCBpcyBwcm92aWRlZCB0byB5b3UgdW5kZXIgdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIG9mIHRoZQorRWNsaXBzZSBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDEuMCAoJnF1b3Q7RVBMJnF1b3Q7KS4gIEEgY29weSBvZiB0aGUgRVBMIGlzIGF2YWlsYWJsZSAKK2F0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sIj5odHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbDwvYT4uCitGb3IgcHVycG9zZXMgb2YgdGhlIEVQTCwgJnF1b3Q7UHJvZ3JhbSZxdW90OyB3aWxsIG1lYW4gdGhlIENvbnRlbnQuPC9wPgorCis8cD5JZiB5b3UgZGlkIG5vdCByZWNlaXZlIHRoaXMgQ29udGVudCBkaXJlY3RseSBmcm9tIHRoZSBFY2xpcHNlIEZvdW5kYXRpb24sIHRoZSBDb250ZW50IGlzIAorYmVpbmcgcmVkaXN0cmlidXRlZCBieSBhbm90aGVyIHBhcnR5ICgmcXVvdDtSZWRpc3RyaWJ1dG9yJnF1b3Q7KSBhbmQgZGlmZmVyZW50IHRlcm1zIGFuZCBjb25kaXRpb25zIG1heQorYXBwbHkgdG8geW91ciB1c2Ugb2YgYW55IG9iamVjdCBjb2RlIGluIHRoZSBDb250ZW50LiAgQ2hlY2sgdGhlIFJlZGlzdHJpYnV0b3IncyBsaWNlbnNlIHRoYXQgd2FzIAorcHJvdmlkZWQgd2l0aCB0aGUgQ29udGVudC4gIElmIG5vIHN1Y2ggbGljZW5zZSBleGlzdHMsIGNvbnRhY3QgdGhlIFJlZGlzdHJpYnV0b3IuICBVbmxlc3Mgb3RoZXJ3aXNlCitpbmRpY2F0ZWQgYmVsb3csIHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB0aGUgRVBMIHN0aWxsIGFwcGx5IHRvIGFueSBzb3VyY2UgY29kZSBpbiB0aGUgQ29udGVudAorYW5kIHN1Y2ggc291cmNlIGNvZGUgbWF5IGJlIG9idGFpbmVkIGF0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvIj5odHRwOi8vd3d3LmVjbGlwc2Uub3JnPC9hPi48L3A+CisKKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyL2J1aWxkLnByb3BlcnRpZXMgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci9idWlsZC5wcm9wZXJ0aWVzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc4YTcwMzMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci9idWlsZC5wcm9wZXJ0aWVzCkBAIC0wLDAgKzEsOSBAQAorb3V0cHV0Li4gPSBiaW4vCitiaW4uaW5jbHVkZXMgPSBNRVRBLUlORi8sXAorICAgICAgICAgICAgICAgLixcCisgICAgICAgICAgICAgICBwbHVnaW4ueG1sLFwKKyAgICAgICAgICAgICAgIHBsdWdpbi5wcm9wZXJ0aWVzLFwKKyAgICAgICAgICAgICAgIHJlc291cmNlLyxcCisgICAgICAgICAgICAgICBhYm91dC5odG1sCitzb3VyY2UuLiA9IHNyYy8KK3NyYy5pbmNsdWRlcyA9IGFib3V0Lmh0bWwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyL3BsdWdpbi5wcm9wZXJ0aWVzIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIvcGx1Z2luLnByb3BlcnRpZXMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjI5ZWY5ZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyL3BsdWdpbi5wcm9wZXJ0aWVzCkBAIC0wLDAgKzEsMyBAQAorI1Byb3BlcnRpZXMgZmlsZSBmb3Igb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIKK0J1bmRsZS1WZW5kb3IgPSBFY2xpcHNlIE1vZGVsaW5nIFByb2plY3QKK0J1bmRsZS1OYW1lID0gUm9ib3RNTCBNb2RlbEV4cGxvcmVyIChJbmN1YmF0aW9uKQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyL3BsdWdpbi54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci9wbHVnaW4ueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgxMzA5MDcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci9wbHVnaW4ueG1sCkBAIC0wLDAgKzEsMjkgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04IiBzdGFuZGFsb25lPSJubyI/PgorPD9lY2xpcHNlIHZlcnNpb249IjMuNCI/PgorCis8cGx1Z2luPgorICAgPGV4dGVuc2lvbiBwb2ludD0ib3JnLmVjbGlwc2UuZW1mLmZhY2V0LnF1ZXJ5LnJlZ2lzdHJhdGlvbiI+CisgICAgICA8bW9kZWxxdWVyeXNldCBmaWxlPSJyZXNvdXJjZS9Sb2JvdE1MRXhwbG9yZXJRdWVyaWVzLnF1ZXJ5U2V0Ij4KKyAgICAgIDwvbW9kZWxxdWVyeXNldD4KKyAgIDwvZXh0ZW5zaW9uPgorICAgPGV4dGVuc2lvbiBwb2ludD0ib3JnLmVjbGlwc2UuZW1mLmZhY2V0LmJyb3dzZXIuY3VzdG9tLmNvcmUucmVnaXN0cmF0aW9uIj4KKyAgICAgIDxicm93c2VyQ3VzdG9taXphdGlvbgorICAgICAgICAgICAgZmlsZT0icmVzb3VyY2UvUm9ib3RNTEN1c3RvbWl6YXRpb25zLnVpQ3VzdG9tIgorICAgICAgICAgICAgbG9hZEJ5RGVmYXVsdD0idHJ1ZSI+CisgICAgICA8L2Jyb3dzZXJDdXN0b21pemF0aW9uPgorICAgPC9leHRlbnNpb24+CisKKyAgIDxleHRlbnNpb24KKyAgICAgICAgIHBvaW50PSJvcmcuZWNsaXBzZS5lbWYuZmFjZXQuYnJvd3Nlci5jdXN0b20uY29yZS5yZWdpc3RyYXRpb24iPgorICAgICAgPGJyb3dzZXJDdXN0b21pemF0aW9uCisgICAgICAgICAgICBmaWxlPSJyZXNvdXJjZS9Sb2JvdE1MQ2xhc3NpZmllckZhY2V0LnVpQ3VzdG9tIgorICAgICAgICAgICAgbG9hZEJ5RGVmYXVsdD0idHJ1ZSI+CisgICAgICA8L2Jyb3dzZXJDdXN0b21pemF0aW9uPgorICAgPC9leHRlbnNpb24+CisgICA8ZXh0ZW5zaW9uCisgICAgICAgICBwb2ludD0ib3JnLmVjbGlwc2UuZW1mLmZhY2V0LmZhY2V0LnJlZ2lzdHJhdGlvbiI+CisgICAgICA8ZmFjZXRzZXQKKyAgICAgICAgICAgIGZpbGU9InJlc291cmNlL1JvYm90TUxFeHBsb3JlckZhY2V0cy5mYWNldFNldCI+CisgICAgICA8L2ZhY2V0c2V0PgorICAgPC9leHRlbnNpb24+Cis8L3BsdWdpbj4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyL3BvbS54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci9wb20ueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg0NWU2M2IKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci9wb20ueG1sCkBAIC0wLDAgKzEsMTEgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8cHJvamVjdD4KKwk8bW9kZWxWZXJzaW9uPjQuMC4wPC9tb2RlbFZlcnNpb24+CisJPHBhcmVudD4KKwkJPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBhcmVudDwvYXJ0aWZhY3RJZD4KKwkJPGdyb3VwSWQ+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sPC9ncm91cElkPgorCQk8dmVyc2lvbj4xLjIuMC1TTkFQU0hPVDwvdmVyc2lvbj4KKwk8L3BhcmVudD4KKwk8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3JlcjwvYXJ0aWZhY3RJZD4KKwk8cGFja2FnaW5nPmVjbGlwc2UtcGx1Z2luPC9wYWNrYWdpbmc+Cis8L3Byb2plY3Q+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIvcmVzb3VyY2UvUm9ib3RNTENsYXNzaWZpZXJGYWNldC51aUN1c3RvbSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyL3Jlc291cmNlL1JvYm90TUxDbGFzc2lmaWVyRmFjZXQudWlDdXN0b20KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDA2ZWMwYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyL3Jlc291cmNlL1JvYm90TUxDbGFzc2lmaWVyRmFjZXQudWlDdXN0b20KQEAgLTAsMCArMSwyMCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iQVNDSUkiPz4KKzx1aWN1c3RvbTpNZXRhbW9kZWxWaWV3IHhtaTp2ZXJzaW9uPSIyLjAiIHhtbG5zOnhtaT0iaHR0cDovL3d3dy5vbWcub3JnL1hNSSIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgeG1sbnM6dWljdXN0b209Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvRW1mRmFjZXQvaW5mcmEvYnJvd3Nlci9jdXN0b20vMC44IiBtZXRhbW9kZWxVUkk9IlJvYm90TUxFeHBsb3JlckZhY2V0cyI+CisgIDx0eXBlcyBtZXRhY2xhc3NOYW1lPSJSb2JvdE1MRXhwbG9yZXJGYWNldHMuUm9ib3RNTENsYXNzaWZpZXIiPgorICAgIDxyZWZlcmVuY2VzIHJlZmVyZW5jZU5hbWU9IlBvcnRzIj4KKyAgICAgIDxjdXN0b21pemVkRmVhdHVyZXMgY3VzdG9taXplZEZlYXR1cmU9Iml0YWxpYyI+CisgICAgICAgIDxkZWZhdWx0VmFsdWUgeHNpOnR5cGU9InVpY3VzdG9tOlN0YXRpY0ZlYXR1cmVWYWx1ZSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvY3VzdG9taXplZEZlYXR1cmVzPgorICAgIDwvcmVmZXJlbmNlcz4KKyAgICA8cmVmZXJlbmNlcyByZWZlcmVuY2VOYW1lPSJTdWJTeXN0ZW1zIj4KKyAgICAgIDxjdXN0b21pemVkRmVhdHVyZXMgY3VzdG9taXplZEZlYXR1cmU9Iml0YWxpYyI+CisgICAgICAgIDxkZWZhdWx0VmFsdWUgeHNpOnR5cGU9InVpY3VzdG9tOlN0YXRpY0ZlYXR1cmVWYWx1ZSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvY3VzdG9taXplZEZlYXR1cmVzPgorICAgIDwvcmVmZXJlbmNlcz4KKyAgICA8cmVmZXJlbmNlcyByZWZlcmVuY2VOYW1lPSJPdGhlcnMiPgorICAgICAgPGN1c3RvbWl6ZWRGZWF0dXJlcyBjdXN0b21pemVkRmVhdHVyZT0iaXRhbGljIj4KKyAgICAgICAgPGRlZmF1bHRWYWx1ZSB4c2k6dHlwZT0idWljdXN0b206U3RhdGljRmVhdHVyZVZhbHVlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9jdXN0b21pemVkRmVhdHVyZXM+CisgICAgPC9yZWZlcmVuY2VzPgorICA8L3R5cGVzPgorPC91aWN1c3RvbTpNZXRhbW9kZWxWaWV3PgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIvcmVzb3VyY2UvUm9ib3RNTEN1c3RvbWl6YXRpb25zLnVpQ3VzdG9tIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIvcmVzb3VyY2UvUm9ib3RNTEN1c3RvbWl6YXRpb25zLnVpQ3VzdG9tCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU1ZmNiMmMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci9yZXNvdXJjZS9Sb2JvdE1MQ3VzdG9taXphdGlvbnMudWlDdXN0b20KQEAgLTAsMCArMSwyNyBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iQVNDSUkiPz4KKzx1aWN1c3RvbTpNZXRhbW9kZWxWaWV3IHhtaTp2ZXJzaW9uPSIyLjAiIHhtbG5zOnhtaT0iaHR0cDovL3d3dy5vbWcub3JnL1hNSSIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgeG1sbnM6cXVlcnk9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvRW1mRmFjZXQvaW5mcmEvcXVlcnkvMC44LmluY3ViYXRpb24iIHhtbG5zOnVpY3VzdG9tPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL0VtZkZhY2V0L2luZnJhL2Jyb3dzZXIvY3VzdG9tLzAuOCIgbWV0YW1vZGVsVVJJPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMy4wLjAvVU1MIiBhbGxRdWVyeVNldHNBdmFpbGFibGU9ImZhbHNlIj4KKyAgPHR5cGVzIG1ldGFjbGFzc05hbWU9InVtbC5FbGVtZW50Ij4KKyAgICA8Y3VzdG9taXplZEZlYXR1cmVzIGN1c3RvbWl6ZWRGZWF0dXJlPSJpY29uIj4KKyAgICAgIDx2YWx1ZUNhc2VzPgorICAgICAgICA8dmFsdWUgeHNpOnR5cGU9InVpY3VzdG9tOkRlcml2ZWRGZWF0dXJlVmFsdWUiPgorICAgICAgICAgIDx2YWx1ZUNhbGN1bGF0b3IgeHNpOnR5cGU9InF1ZXJ5OkphdmFNb2RlbFF1ZXJ5IiBocmVmPSJlbWZmYWNldDovcXVlcnkvUm9ib3RNTEV4cGxvcmVyUXVlcmllcyNnZXRJbWFnZSIvPgorICAgICAgICA8L3ZhbHVlPgorICAgICAgICA8Y29uZGl0aW9uIHhzaTp0eXBlPSJxdWVyeTpKYXZhTW9kZWxRdWVyeSIgaHJlZj0iZW1mZmFjZXQ6L3F1ZXJ5L1JvYm90TUxFeHBsb3JlclF1ZXJpZXMjaGFzSW1hZ2UiLz4KKyAgICAgIDwvdmFsdWVDYXNlcz4KKyAgICA8L2N1c3RvbWl6ZWRGZWF0dXJlcz4KKyAgPC90eXBlcz4KKyAgPHR5cGVzIG1ldGFjbGFzc05hbWU9InVtbC5TdHJ1Y3R1cmVkQ2xhc3NpZmllciI+CisgICAgPHJlZmVyZW5jZXMgcmVmZXJlbmNlTmFtZT0ib3duZWRBdHRyaWJ1dGUiPgorICAgICAgPGN1c3RvbWl6ZWRGZWF0dXJlcz4KKyAgICAgICAgPHZhbHVlQ2FzZXM+CisgICAgICAgICAgPHZhbHVlIHhzaTp0eXBlPSJ1aWN1c3RvbTpEZXJpdmVkRmVhdHVyZVZhbHVlIj4KKyAgICAgICAgICAgIDx2YWx1ZUNhbGN1bGF0b3IgeHNpOnR5cGU9InF1ZXJ5OkphdmFNb2RlbFF1ZXJ5IiBocmVmPSJlbWZmYWNldDovcXVlcnkvUm9ib3RNTEV4cGxvcmVyUXVlcmllcyNSb2JvdE1MUHJvZmlsZUFwcGxpZWQiLz4KKyAgICAgICAgICA8L3ZhbHVlPgorICAgICAgICAgIDxjb25kaXRpb24geHNpOnR5cGU9InF1ZXJ5OkphdmFNb2RlbFF1ZXJ5IiBocmVmPSJlbWZmYWNldDovcXVlcnkvUm9ib3RNTEV4cGxvcmVyUXVlcmllcyNSb2JvdE1MUHJvZmlsZUFwcGxpZWQiLz4KKyAgICAgICAgPC92YWx1ZUNhc2VzPgorICAgICAgICA8ZGVmYXVsdFZhbHVlIHhzaTp0eXBlPSJ1aWN1c3RvbTpTdGF0aWNGZWF0dXJlVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9jdXN0b21pemVkRmVhdHVyZXM+CisgICAgPC9yZWZlcmVuY2VzPgorICA8L3R5cGVzPgorICA8YXZhaWxhYmxlUXVlcnlTZXRzPlJvYm90TUxFeHBsb3JlclF1ZXJpZXM8L2F2YWlsYWJsZVF1ZXJ5U2V0cz4KKzwvdWljdXN0b206TWV0YW1vZGVsVmlldz4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyL3Jlc291cmNlL1JvYm90TUxFeHBsb3JlckZhY2V0cy5mYWNldFNldCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyL3Jlc291cmNlL1JvYm90TUxFeHBsb3JlckZhY2V0cy5mYWNldFNldApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45ZjNmZGMxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIvcmVzb3VyY2UvUm9ib3RNTEV4cGxvcmVyRmFjZXRzLmZhY2V0U2V0CkBAIC0wLDAgKzEsMTkgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IkFTQ0lJIj8+Cis8ZmFjZXQ6RmFjZXRTZXQgeG1pOnZlcnNpb249IjIuMCIgeG1sbnM6eG1pPSJodHRwOi8vd3d3Lm9tZy5vcmcvWE1JIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczplY29yZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSIgeG1sbnM6ZmFjZXQ9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvRW1mRmFjZXQvaW5mcmEvZmFjZXQvMC44LmluY3ViYXRpb24iIHhtbG5zOnF1ZXJ5PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL0VtZkZhY2V0L2luZnJhL3F1ZXJ5LzAuOC5pbmN1YmF0aW9uIiBuYW1lPSJSb2JvdE1MRXhwbG9yZXJGYWNldHMiIG5zVVJJPSJSb2JvdE1MRXhwbG9yZXJGYWNldHMiIG5zUHJlZml4PSJSb2JvdE1MRXhwbG9yZXJGYWNldHMiPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJmYWNldDpGYWNldCIgbmFtZT0iUm9ib3RNTENsYXNzaWZpZXIiIGFic3RyYWN0PSJ0cnVlIj4KKyAgICA8ZVN1cGVyVHlwZXMgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzMuMC4wL1VNTCMvL0NsYXNzaWZpZXIiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZmFjZXQ6RmFjZXRSZWZlcmVuY2UiIG5hbWU9IlBvcnRzIiB1cHBlckJvdW5kPSItMSIgdm9sYXRpbGU9InRydWUiIHVuc2V0dGFibGU9InRydWUiPgorICAgICAgPGVUeXBlIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8zLjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgICAgPHZhbHVlUXVlcnkgeHNpOnR5cGU9InF1ZXJ5OkphdmFNb2RlbFF1ZXJ5IiBocmVmPSJlbWZmYWNldDovcXVlcnkvUm9ib3RNTEV4cGxvcmVyUXVlcmllcyNHZXRBbGxQb3J0cyIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZmFjZXQ6RmFjZXRSZWZlcmVuY2UiIG5hbWU9IlN1YlN5c3RlbXMiIHVwcGVyQm91bmQ9Ii0xIiB2b2xhdGlsZT0idHJ1ZSIgdW5zZXR0YWJsZT0idHJ1ZSI+CisgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzMuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICA8dmFsdWVRdWVyeSB4c2k6dHlwZT0icXVlcnk6SmF2YU1vZGVsUXVlcnkiIGhyZWY9ImVtZmZhY2V0Oi9xdWVyeS9Sb2JvdE1MRXhwbG9yZXJRdWVyaWVzI0dldEFsbFN1YlN5c3RlbXMiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImZhY2V0OkZhY2V0UmVmZXJlbmNlIiBuYW1lPSJPdGhlcnMiIHVwcGVyQm91bmQ9Ii0xIiB2b2xhdGlsZT0idHJ1ZSIgdW5zZXR0YWJsZT0idHJ1ZSI+CisgICAgICA8ZVR5cGUgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzMuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICA8dmFsdWVRdWVyeSB4c2k6dHlwZT0icXVlcnk6SmF2YU1vZGVsUXVlcnkiIGhyZWY9ImVtZmZhY2V0Oi9xdWVyeS9Sb2JvdE1MRXhwbG9yZXJRdWVyaWVzI0dldE90aGVyUHJvcGVydGllcyIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxleHRlbmRlZFBhY2thZ2UgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzMuMC4wL1VNTCMvIi8+Cis8L2ZhY2V0OkZhY2V0U2V0PgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIvcmVzb3VyY2UvUm9ib3RNTEV4cGxvcmVyUXVlcmllcy5xdWVyeVNldCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyL3Jlc291cmNlL1JvYm90TUxFeHBsb3JlclF1ZXJpZXMucXVlcnlTZXQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmYwZDU2MAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyL3Jlc291cmNlL1JvYm90TUxFeHBsb3JlclF1ZXJpZXMucXVlcnlTZXQKQEAgLTAsMCArMSw3MCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iQVNDSUkiPz4KKzxxdWVyeTpNb2RlbFF1ZXJ5U2V0CisgICAgeG1pOnZlcnNpb249IjIuMCIKKyAgICB4bWxuczp4bWk9Imh0dHA6Ly93d3cub21nLm9yZy9YTUkiCisgICAgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIKKyAgICB4bWxuczplY29yZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSIKKyAgICB4bWxuczpxdWVyeT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9FbWZGYWNldC9pbmZyYS9xdWVyeS8wLjguaW5jdWJhdGlvbiIKKyAgICBuYW1lPSJSb2JvdE1MRXhwbG9yZXJRdWVyaWVzIj4KKyAgPGFzc29jaWF0ZWRNZXRhbW9kZWxzCisgICAgICBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8iLz4KKyAgPGFzc29jaWF0ZWRNZXRhbW9kZWxzCisgICAgICBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVHlwZXMjLyIvPgorICA8cXVlcmllcyB4c2k6dHlwZT0icXVlcnk6SmF2YU1vZGVsUXVlcnkiCisgICAgICBuYW1lPSJnZXRJbWFnZSIKKyAgICAgIGRlc2NyaXB0aW9uPSJSb2JvdE1MIGljb24gcHJvdmlkZXIiCisgICAgICBpbXBsZW1lbnRhdGlvbkNsYXNzTmFtZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIucXVlcnkuR2V0SW1hZ2VRdWVyeSI+CisgICAgPHJldHVyblR5cGUKKyAgICAgICAgeHNpOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIKKyAgICAgICAgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1R5cGVzIy8vU3RyaW5nIi8+CisgICAgPHNjb3BlIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgIDwvcXVlcmllcz4KKyAgPHF1ZXJpZXMgeHNpOnR5cGU9InF1ZXJ5OkphdmFNb2RlbFF1ZXJ5IgorICAgICAgbmFtZT0iaGFzSW1hZ2UiCisgICAgICBkZXNjcmlwdGlvbj0iUm9ib3RNTCBpY29uIHRlc3RlciIKKyAgICAgIGltcGxlbWVudGF0aW9uQ2xhc3NOYW1lPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci5xdWVyeS5IYXNJbWFnZVF1ZXJ5Ij4KKyAgICA8cmV0dXJuVHlwZQorICAgICAgICB4c2k6dHlwZT0iZWNvcmU6RURhdGFUeXBlIgorICAgICAgICBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVHlwZXMjLy9Cb29sZWFuIi8+CisgICAgPHNjb3BlIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9FbGVtZW50Ii8+CisgIDwvcXVlcmllcz4KKyAgPHF1ZXJpZXMgeHNpOnR5cGU9InF1ZXJ5OkphdmFNb2RlbFF1ZXJ5IgorICAgICAgbmFtZT0iR2V0QWxsUG9ydHMiCisgICAgICBkZXNjcmlwdGlvbj0iQ2xhc3NpZmllciBvd25lZCBwb3J0cyBwcm92aWRlciIKKyAgICAgIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgaW1wbGVtZW50YXRpb25DbGFzc05hbWU9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyLnF1ZXJ5LkdldEFsbFBvcnRzUXVlcnkiPgorICAgIDxyZXR1cm5UeXBlCisgICAgICAgIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiCisgICAgICAgIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Qcm9wZXJ0eSIvPgorICAgIDxzY29wZSBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3NpZmllciIvPgorICA8L3F1ZXJpZXM+CisgIDxxdWVyaWVzIHhzaTp0eXBlPSJxdWVyeTpKYXZhTW9kZWxRdWVyeSIKKyAgICAgIG5hbWU9IkdldEFsbFN1YlN5c3RlbXMiCisgICAgICBkZXNjcmlwdGlvbj0iQ2xhc3NpZmllciBvd25lZCBzdWIgc3lzdGVtcyBwcm92aWRlciIKKyAgICAgIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgaW1wbGVtZW50YXRpb25DbGFzc05hbWU9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyLnF1ZXJ5LkdldEFsbFN1YlN5c3RlbXNRdWVyeSI+CisgICAgPHJldHVyblR5cGUKKyAgICAgICAgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIKKyAgICAgICAgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgPHNjb3BlIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzc2lmaWVyIi8+CisgIDwvcXVlcmllcz4KKyAgPHF1ZXJpZXMgeHNpOnR5cGU9InF1ZXJ5OkphdmFNb2RlbFF1ZXJ5IgorICAgICAgbmFtZT0iR2V0T3RoZXJQcm9wZXJ0aWVzIgorICAgICAgZGVzY3JpcHRpb249IkNsYXNzaWZpZXIgb3RoZXIgcHJvcGVydGllcyBwcm92aWRlciIKKyAgICAgIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgaW1wbGVtZW50YXRpb25DbGFzc05hbWU9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyLnF1ZXJ5LkdldE90aGVyUHJvcGVydGllc1F1ZXJ5Ij4KKyAgICA8cmV0dXJuVHlwZQorICAgICAgICB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIgorICAgICAgICBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICA8c2NvcGUgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzaWZpZXIiLz4KKyAgPC9xdWVyaWVzPgorICA8cXVlcmllcyB4c2k6dHlwZT0icXVlcnk6SmF2YU1vZGVsUXVlcnkiCisgICAgICBuYW1lPSJSb2JvdE1MUHJvZmlsZUFwcGxpZWQiCisgICAgICBkZXNjcmlwdGlvbj0iVmVyaWZ5IGlmIHRoZSByb2JvdE1MIHByb2ZpbGUgaXMgYXBwbGllZC4gSWYgeWVzIHJldHVybiBmYWxzZSIKKyAgICAgIGltcGxlbWVudGF0aW9uQ2xhc3NOYW1lPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci5xdWVyeS5Sb2JvdE1MUHJvZmlsZUFwcGxpZWRRdWVyeSI+CisgICAgPHJldHVyblR5cGUKKyAgICAgICAgeHNpOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIKKyAgICAgICAgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1R5cGVzIy8vQm9vbGVhbiIvPgorICAgIDxzY29wZSBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRWxlbWVudCIvPgorICA8L3F1ZXJpZXM+Cis8L3F1ZXJ5Ok1vZGVsUXVlcnlTZXQ+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL21vZGVsZXhwbG9yZXIvQWN0aXZhdG9yLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL21vZGVsZXhwbG9yZXIvQWN0aXZhdG9yLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGE1YzNlMQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvbW9kZWxleHBsb3Jlci9BY3RpdmF0b3IuamF2YQpAQCAtMCwwICsxLDQ2IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBDRUEgTElTVC4KKyAqCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBTYWFkaWEgRGhvdWliIChDRUEgTElTVCkgc2FhZGlhLmRob3VpYkBjZWEuZnIgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXI7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWUuUGx1Z2luOworaW1wb3J0IG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0OworCisvKiogVGhlIGFjdGl2YXRvciBjbGFzcyBjb250cm9scyB0aGUgcGx1Zy1pbiBsaWZlIGN5Y2xlICovCitwdWJsaWMgY2xhc3MgQWN0aXZhdG9yIGV4dGVuZHMgUGx1Z2luIHsKKworCS8vIFRoZSBwbHVnLWluIElECisJcHVibGljIHN0YXRpYyBmaW5hbCBTdHJpbmcgUExVR0lOX0lEID0gIm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyIjsgLy8kTk9OLU5MUy0xJAorCisJLy8gVGhlIHNoYXJlZCBpbnN0YW5jZQorCXByaXZhdGUgc3RhdGljIEFjdGl2YXRvciBwbHVnaW47CisKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBzdGFydChmaW5hbCBCdW5kbGVDb250ZXh0IGNvbnRleHQpIHRocm93cyBFeGNlcHRpb24geworCQlzdXBlci5zdGFydChjb250ZXh0KTsKKwkJQWN0aXZhdG9yLnBsdWdpbiA9IHRoaXM7CisJfQorCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgc3RvcChmaW5hbCBCdW5kbGVDb250ZXh0IGNvbnRleHQpIHRocm93cyBFeGNlcHRpb24geworCQlBY3RpdmF0b3IucGx1Z2luID0gbnVsbDsKKwkJc3VwZXIuc3RvcChjb250ZXh0KTsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBzaGFyZWQgaW5zdGFuY2UKKwkgKgorCSAqIEByZXR1cm4gdGhlIHNoYXJlZCBpbnN0YW5jZQorCSAqLworCXB1YmxpYyBzdGF0aWMgQWN0aXZhdG9yIGdldERlZmF1bHQoKSB7CisJCXJldHVybiBBY3RpdmF0b3IucGx1Z2luOworCX0KK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvbW9kZWxleHBsb3Jlci9xdWVyeS9HZXRBbGxQb3J0c1F1ZXJ5LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL21vZGVsZXhwbG9yZXIvcXVlcnkvR2V0QWxsUG9ydHNRdWVyeS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE1ZGIzMjkKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL21vZGVsZXhwbG9yZXIvcXVlcnkvR2V0QWxsUG9ydHNRdWVyeS5qYXZhCkBAIC0wLDAgKzEsNDMgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIENFQSBMSVNULgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBEaG91aWIgKENFQSBMSVNUKSBzYWFkaWEuZGhvdWliQGNlYS5mciAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci5xdWVyeTsKKworaW1wb3J0IGphdmEudXRpbC5BcnJheUxpc3Q7CitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb247CitpbXBvcnQgamF2YS51dGlsLkl0ZXJhdG9yOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmZhY2V0LmluZnJhLnF1ZXJ5LmNvcmUuZXhjZXB0aW9uLk1vZGVsUXVlcnlFeGVjdXRpb25FeGNlcHRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmZhY2V0LmluZnJhLnF1ZXJ5LmNvcmUuamF2YS5JSmF2YU1vZGVsUXVlcnk7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmZhY2V0LmluZnJhLnF1ZXJ5LmNvcmUuamF2YS5QYXJhbWV0ZXJWYWx1ZUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIudXRpbC5Qcm9maWxlVXRpbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzc2lmaWVyOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk7CisKKy8qKiBnZXQgYWxsIHBvcnRzIGZyb20gYSBjbGFzc2lmaWVyICovCitwdWJsaWMgY2xhc3MgR2V0QWxsUG9ydHNRdWVyeSBpbXBsZW1lbnRzIElKYXZhTW9kZWxRdWVyeTxDbGFzc2lmaWVyLCBDb2xsZWN0aW9uPFByb3BlcnR5Pj4geworCisJQE92ZXJyaWRlCisJcHVibGljIENvbGxlY3Rpb248UHJvcGVydHk+IGV2YWx1YXRlKGZpbmFsIENsYXNzaWZpZXIgY29udGV4dCwgZmluYWwgUGFyYW1ldGVyVmFsdWVMaXN0IHBhcmFtZXRlclZhbHVlcykgdGhyb3dzIE1vZGVsUXVlcnlFeGVjdXRpb25FeGNlcHRpb24geworCQlBcnJheUxpc3Q8UHJvcGVydHk+IHJlc3VsdCA9IG5ldyBBcnJheUxpc3Q8UHJvcGVydHk+KCk7CisJCWlmIChQcm9maWxlVXRpbC5nZXRBcHBsaWVkUHJvZmlsZShjb250ZXh0LmdldE5lYXJlc3RQYWNrYWdlKCksICJSb2JvdE1MIikgIT0gbnVsbCkgeworCQkJSXRlcmF0b3I8UHJvcGVydHk+IGl0ZXIgPSBjb250ZXh0LmdldEFsbEF0dHJpYnV0ZXMoKS5pdGVyYXRvcigpOworCQkJd2hpbGUgKGl0ZXIuaGFzTmV4dCgpKSB7CisJCQkJUHJvcGVydHkgY3VycmVudEVsZW1lbnQgPSBpdGVyLm5leHQoKTsKKwkJCQlpZiAoY3VycmVudEVsZW1lbnQgaW5zdGFuY2VvZiBQb3J0KSB7CisJCQkJCXJlc3VsdC5hZGQoY3VycmVudEVsZW1lbnQpOworCQkJCX0KKwkJCX0KKwkJfQorCQlyZXR1cm4gcmVzdWx0OworCX0KK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvbW9kZWxleHBsb3Jlci9xdWVyeS9HZXRBbGxTdWJTeXN0ZW1zUXVlcnkuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvbW9kZWxleHBsb3Jlci9xdWVyeS9HZXRBbGxTdWJTeXN0ZW1zUXVlcnkuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xYzQ0ZGVkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9tb2RlbGV4cGxvcmVyL3F1ZXJ5L0dldEFsbFN1YlN5c3RlbXNRdWVyeS5qYXZhCkBAIC0wLDAgKzEsNDggQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIENFQSBMSVNULgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBEaG91aWIgKENFQSBMSVNUKSBzYWFkaWEuZGhvdWliQGNlYS5mciAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci5xdWVyeTsKKworaW1wb3J0IGphdmEudXRpbC5BcnJheUxpc3Q7CitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb247CitpbXBvcnQgamF2YS51dGlsLkl0ZXJhdG9yOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmZhY2V0LnF1ZXJ5LmNvcmUuZXhjZXB0aW9uLk1vZGVsUXVlcnlFeGVjdXRpb25FeGNlcHRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmZhY2V0LnF1ZXJ5LmNvcmUuamF2YS5JSmF2YU1vZGVsUXVlcnk7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmZhY2V0LnF1ZXJ5LmNvcmUuamF2YS5QYXJhbWV0ZXJWYWx1ZUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIudXRpbC5Qcm9maWxlVXRpbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzc2lmaWVyOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk7CisKKy8qKiBnZXQgYWxsIHBvcnRzIGZyb20gYSBjbGFzc2lmaWVyICovCitwdWJsaWMgY2xhc3MgR2V0QWxsU3ViU3lzdGVtc1F1ZXJ5IGltcGxlbWVudHMgSUphdmFNb2RlbFF1ZXJ5PENsYXNzaWZpZXIsIENvbGxlY3Rpb248UHJvcGVydHk+PiB7CisKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgQ29sbGVjdGlvbjxQcm9wZXJ0eT4gZXZhbHVhdGUoZmluYWwgQ2xhc3NpZmllciBjb250ZXh0LCBmaW5hbCBQYXJhbWV0ZXJWYWx1ZUxpc3QgcGFyYW1ldGVyVmFsdWVzKSB0aHJvd3MgTW9kZWxRdWVyeUV4ZWN1dGlvbkV4Y2VwdGlvbiB7CisJCUFycmF5TGlzdDxQcm9wZXJ0eT4gcmVzdWx0ID0gbmV3IEFycmF5TGlzdDxQcm9wZXJ0eT4oKTsKKwkJLy8gU3lzdGVtLmVyci5wcmludGxuKCJjb250ZXh0LmdldE5lYXJlc3RQYWNrYWdlKCk6ICIrIGNvbnRleHQuZ2V0TmVhcmVzdFBhY2thZ2UoKSk7CisJCWlmIChQcm9maWxlVXRpbC5nZXRBcHBsaWVkUHJvZmlsZShjb250ZXh0LmdldE5lYXJlc3RQYWNrYWdlKCksICJSb2JvdE1MIikgIT0gbnVsbCkgeworCisJCQlJdGVyYXRvcjxQcm9wZXJ0eT4gaXRlciA9IGNvbnRleHQuZ2V0QWxsQXR0cmlidXRlcygpLml0ZXJhdG9yKCk7CisJCQl3aGlsZSAoaXRlci5oYXNOZXh0KCkpIHsKKwkJCQlQcm9wZXJ0eSBjdXJyZW50RWxlbWVudCA9IGl0ZXIubmV4dCgpOworCQkJCS8vIGlmIHRoZSBwcm9wZXJ0eSBpcyB0eXBlZCBieSBhIGNsYXNzaWZpZXIsIGl0IGlzIGEgc3Vic3lzdGVtCisJCQkJaWYgKChjdXJyZW50RWxlbWVudC5nZXRUeXBlKCkgaW5zdGFuY2VvZiBDbGFzcykgJiYgIShjdXJyZW50RWxlbWVudCBpbnN0YW5jZW9mIFBvcnQpICYmICEoY3VycmVudEVsZW1lbnQuZ2V0VHlwZSgpIGluc3RhbmNlb2YgRGF0YVR5cGUpKSB7CisJCQkJCXJlc3VsdC5hZGQoY3VycmVudEVsZW1lbnQpOworCQkJCX0KKwkJCX0KKwkJfQorCQlyZXR1cm4gcmVzdWx0OworCX0KK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvbW9kZWxleHBsb3Jlci9xdWVyeS9HZXRJbWFnZVF1ZXJ5LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL21vZGVsZXhwbG9yZXIvcXVlcnkvR2V0SW1hZ2VRdWVyeS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI5MTRiOWQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL21vZGVsZXhwbG9yZXIvcXVlcnkvR2V0SW1hZ2VRdWVyeS5qYXZhCkBAIC0wLDAgKzEsNTggQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIENFQSBMSVNULgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBEaG91aWIgKENFQSBMSVNUKSBzYWFkaWEuZGhvdWliQGNlYS5mciAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci5xdWVyeTsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5mYWNldC5xdWVyeS5jb3JlLmV4Y2VwdGlvbi5Nb2RlbFF1ZXJ5RXhlY3V0aW9uRXhjZXB0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5mYWNldC5xdWVyeS5jb3JlLmphdmEuSUphdmFNb2RlbFF1ZXJ5OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5mYWNldC5xdWVyeS5jb3JlLmphdmEuUGFyYW1ldGVyVmFsdWVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMudW1sLnRvb2xzLnV0aWxzLkVsZW1lbnRVdGlsOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUHJvZmlsZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5TdGVyZW90eXBlOworCitwdWJsaWMgY2xhc3MgR2V0SW1hZ2VRdWVyeSBpbXBsZW1lbnRzIElKYXZhTW9kZWxRdWVyeTxFbGVtZW50LCBTdHJpbmc+IHsKKworCisKKwlwdWJsaWMgc3RhdGljIFN0cmluZyBST0JPVE1MX0lEID0gIlJvYm90TUwiOworCisJcHVibGljIHN0YXRpYyBmaW5hbCBTdHJpbmcgcm9ib3RNTF9wbHVnaW5fcGF0aCA9ICIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLyI7CisKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIGV2YWx1YXRlKGZpbmFsIEVsZW1lbnQgY29udGV4dCwgZmluYWwgUGFyYW1ldGVyVmFsdWVMaXN0IHBhcmFtZXRlclZhbHVlcykgdGhyb3dzIE1vZGVsUXVlcnlFeGVjdXRpb25FeGNlcHRpb24geworCisJCVN0cmluZyBpY29uX3JlbGF0aXZlX3BhdGggPSAiIjsKKworCQlpZiAoIWNvbnRleHQuZ2V0QXBwbGllZFN0ZXJlb3R5cGVzKCkuaXNFbXB0eSgpKSB7CisKKworCQkJU3RlcmVvdHlwZSBmaXJzdF9zdGVyZW90eXBlID0gY29udGV4dC5nZXRBcHBsaWVkU3RlcmVvdHlwZXMoKS5nZXQoMCk7CisJCQlQcm9maWxlIHJvYm90TUwgPSBmaXJzdF9zdGVyZW90eXBlLmdldFByb2ZpbGUoKTsKKworCisJCQlpZiAocm9ib3RNTCAhPSBudWxsICYmIHJvYm90TUwuZ2V0TmFtZSgpLmVxdWFscyhST0JPVE1MX0lEKSkgeworCQkJCWlmICghZmlyc3Rfc3RlcmVvdHlwZS5nZXRJY29ucygpLmlzRW1wdHkoKSkgeworCQkJCQlvcmcuZWNsaXBzZS51bWwyLnVtbC5JbWFnZSBpY29uID0gRWxlbWVudFV0aWwuZ2V0U3RlcmVvdHlwZUltYWdlKGNvbnRleHQsIGZpcnN0X3N0ZXJlb3R5cGUsICJpY29uIik7CisJCQkJCWlmIChpY29uICE9IG51bGwpIHsKKwkJCQkJCWljb25fcmVsYXRpdmVfcGF0aCA9IGljb24uZ2V0TG9jYXRpb24oKTsKKwkJCQkJfQorCQkJCX0KKwkJCX0KKwkJfQorCisJCVN0cmluZyBpbWFnZV9wYXRoID0gIiI7CisJCWlmICghIiIuZXF1YWxzKGljb25fcmVsYXRpdmVfcGF0aCkpIHsKKwkJCWltYWdlX3BhdGggPSByb2JvdE1MX3BsdWdpbl9wYXRoICsgaWNvbl9yZWxhdGl2ZV9wYXRoOworCQl9CisJCXJldHVybiBpbWFnZV9wYXRoOworCX0KK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvbW9kZWxleHBsb3Jlci9xdWVyeS9HZXRPdGhlclByb3BlcnRpZXNRdWVyeS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9tb2RlbGV4cGxvcmVyL3F1ZXJ5L0dldE90aGVyUHJvcGVydGllc1F1ZXJ5LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTExYjE2YQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvbW9kZWxleHBsb3Jlci9xdWVyeS9HZXRPdGhlclByb3BlcnRpZXNRdWVyeS5qYXZhCkBAIC0wLDAgKzEsNDcgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIENFQSBMSVNULgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBEaG91aWIgKENFQSBMSVNUKSBzYWFkaWEuZGhvdWliQGNlYS5mciAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci5xdWVyeTsKKworaW1wb3J0IGphdmEudXRpbC5BcnJheUxpc3Q7CitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb247CitpbXBvcnQgamF2YS51dGlsLkl0ZXJhdG9yOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmZhY2V0LnF1ZXJ5LmNvcmUuZXhjZXB0aW9uLk1vZGVsUXVlcnlFeGVjdXRpb25FeGNlcHRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmZhY2V0LnF1ZXJ5LmNvcmUuamF2YS5JSmF2YU1vZGVsUXVlcnk7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmZhY2V0LnF1ZXJ5LmNvcmUuamF2YS5QYXJhbWV0ZXJWYWx1ZUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIudXRpbC5Qcm9maWxlVXRpbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzc2lmaWVyOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk7CisKKy8qKiBnZXQgYWxsIHBvcnRzIGZyb20gYSBjbGFzc2lmaWVyICovCitwdWJsaWMgY2xhc3MgR2V0T3RoZXJQcm9wZXJ0aWVzUXVlcnkgaW1wbGVtZW50cyBJSmF2YU1vZGVsUXVlcnk8Q2xhc3NpZmllciwgQ29sbGVjdGlvbjxQcm9wZXJ0eT4+IHsKKworCUBPdmVycmlkZQorCXB1YmxpYyBDb2xsZWN0aW9uPFByb3BlcnR5PiBldmFsdWF0ZShmaW5hbCBDbGFzc2lmaWVyIGNvbnRleHQsIGZpbmFsIFBhcmFtZXRlclZhbHVlTGlzdCBwYXJhbWV0ZXJWYWx1ZXMpIHRocm93cyBNb2RlbFF1ZXJ5RXhlY3V0aW9uRXhjZXB0aW9uIHsKKwkJQXJyYXlMaXN0PFByb3BlcnR5PiByZXN1bHQgPSBuZXcgQXJyYXlMaXN0PFByb3BlcnR5PigpOworCisJCWlmIChQcm9maWxlVXRpbC5nZXRBcHBsaWVkUHJvZmlsZShjb250ZXh0LmdldE5lYXJlc3RQYWNrYWdlKCksICJSb2JvdE1MIikgIT0gbnVsbCkgeworCQkJSXRlcmF0b3I8UHJvcGVydHk+IGl0ZXIgPSBjb250ZXh0LmdldEFsbEF0dHJpYnV0ZXMoKS5pdGVyYXRvcigpOworCQkJd2hpbGUgKGl0ZXIuaGFzTmV4dCgpKSB7CisJCQkJUHJvcGVydHkgY3VycmVudEVsZW1lbnQgPSBpdGVyLm5leHQoKTsKKwkJCQlpZiAoIShjdXJyZW50RWxlbWVudCBpbnN0YW5jZW9mIFBvcnQpICYmICEoY3VycmVudEVsZW1lbnQuZ2V0VHlwZSgpIGluc3RhbmNlb2YgQ2xhc3MpKSB7CisJCQkJCXJlc3VsdC5hZGQoY3VycmVudEVsZW1lbnQpOworCQkJCX0KKwkJCX0KKwkJfQorCQlyZXR1cm4gcmVzdWx0OworCX0KKworCit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL21vZGVsZXhwbG9yZXIvcXVlcnkvSGFzSW1hZ2VRdWVyeS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9tb2RlbGV4cGxvcmVyL3F1ZXJ5L0hhc0ltYWdlUXVlcnkuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42ODBjYWQ5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9tb2RlbGV4cGxvcmVyL3F1ZXJ5L0hhc0ltYWdlUXVlcnkuamF2YQpAQCAtMCwwICsxLDMzIEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBDRUEgTElTVC4KKyAqCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBTYWFkaWEgRGhvdWliIChDRUEgTElTVCkgc2FhZGlhLmRob3VpYkBjZWEuZnIgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIucXVlcnk7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZmFjZXQucXVlcnkuY29yZS5leGNlcHRpb24uTW9kZWxRdWVyeUV4ZWN1dGlvbkV4Y2VwdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZmFjZXQucXVlcnkuY29yZS5qYXZhLklKYXZhTW9kZWxRdWVyeTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZmFjZXQucXVlcnkuY29yZS5qYXZhLlBhcmFtZXRlclZhbHVlTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50OworCisvKiogQ2hlY2sgaXMgdGhlIGVsZW1lbnQgaGFzIGEgc3RlcmVvdHlwZSBpY29uIHRoYXQgY2FuIGJlIHVzZWQgKi8KK3B1YmxpYyBjbGFzcyBIYXNJbWFnZVF1ZXJ5IGltcGxlbWVudHMgSUphdmFNb2RlbFF1ZXJ5PEVsZW1lbnQsIEJvb2xlYW4+IHsKKworCUBPdmVycmlkZQorCXB1YmxpYyBCb29sZWFuIGV2YWx1YXRlKGZpbmFsIEVsZW1lbnQgY29udGV4dCwgZmluYWwgUGFyYW1ldGVyVmFsdWVMaXN0IHBhcmFtZXRlclZhbHVlcykgdGhyb3dzIE1vZGVsUXVlcnlFeGVjdXRpb25FeGNlcHRpb24geworCisJCUlKYXZhTW9kZWxRdWVyeTxFbGVtZW50LCBTdHJpbmc+IEltZ2FnZUdldHRlciA9IG5ldyBHZXRJbWFnZVF1ZXJ5KCk7CisJCVN0cmluZyB0ZW1wX2ltZ19wYXRoID0gSW1nYWdlR2V0dGVyLmV2YWx1YXRlKGNvbnRleHQsIHBhcmFtZXRlclZhbHVlcyk7CisJCWlmICghIiIuZXF1YWxzKHRlbXBfaW1nX3BhdGgpKSB7CisJCQlyZXR1cm4gdHJ1ZTsKKwkJfQorCisJCXJldHVybiBmYWxzZTsKKwl9Cit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL21vZGVsZXhwbG9yZXIvcXVlcnkvUm9ib3RNTFByb2ZpbGVBcHBsaWVkUXVlcnkuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvbW9kZWxleHBsb3Jlci9xdWVyeS9Sb2JvdE1MUHJvZmlsZUFwcGxpZWRRdWVyeS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg4MjYyNjEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL21vZGVsZXhwbG9yZXIvcXVlcnkvUm9ib3RNTFByb2ZpbGVBcHBsaWVkUXVlcnkuamF2YQpAQCAtMCwwICsxLDMzIEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBDRUEgTElTVC4KKyAqCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBTYWFkaWEgRGhvdWliIChDRUEgTElTVCkgc2FhZGlhLmRob3VpYkBjZWEuZnIgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIucXVlcnk7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZmFjZXQucXVlcnkuY29yZS5leGNlcHRpb24uTW9kZWxRdWVyeUV4ZWN1dGlvbkV4Y2VwdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZmFjZXQucXVlcnkuY29yZS5qYXZhLklKYXZhTW9kZWxRdWVyeTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZmFjZXQucXVlcnkuY29yZS5qYXZhLlBhcmFtZXRlclZhbHVlTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci51dGlsLlByb2ZpbGVVdGlsOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkVsZW1lbnQ7CisKK3B1YmxpYyBjbGFzcyBSb2JvdE1MUHJvZmlsZUFwcGxpZWRRdWVyeSBpbXBsZW1lbnRzIElKYXZhTW9kZWxRdWVyeTxFbGVtZW50LCBCb29sZWFuPiB7CisKKwlwdWJsaWMgc3RhdGljIFN0cmluZyBST0JPVE1MX0lEID0gIlJvYm90TUwiOworCisJQE92ZXJyaWRlCisJcHVibGljIEJvb2xlYW4gZXZhbHVhdGUoRWxlbWVudCBjb250ZXh0LCBQYXJhbWV0ZXJWYWx1ZUxpc3QgcGFyYW1ldGVyVmFsdWVzKSB0aHJvd3MgTW9kZWxRdWVyeUV4ZWN1dGlvbkV4Y2VwdGlvbiB7CisJCS8vIFRPRE8gQXV0by1nZW5lcmF0ZWQgbWV0aG9kIHN0dWIKKwkJaWYgKFByb2ZpbGVVdGlsLmdldEFwcGxpZWRQcm9maWxlKGNvbnRleHQuZ2V0TmVhcmVzdFBhY2thZ2UoKSwgIlJvYm90TUwiKSAhPSBudWxsKSB7CisJCQlyZXR1cm4gZmFsc2U7CisJCX0KKwkJcmV0dXJuIHRydWU7CisJfQorCit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwubW9kZWxleHBsb3Jlci9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL21vZGVsZXhwbG9yZXIvdXRpbC9Qcm9maWxlVXRpbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9tb2RlbGV4cGxvcmVyL3V0aWwvUHJvZmlsZVV0aWwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41YzA5NWNmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9tb2RlbGV4cGxvcmVyL3V0aWwvUHJvZmlsZVV0aWwuamF2YQpAQCAtMCwwICsxLDM0IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBDRUEgTElTVC4KKyAqCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBTYWFkaWEgRGhvdWliIChDRUEgTElTVCkgc2FhZGlhLmRob3VpYkBjZWEuZnIgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLm1vZGVsZXhwbG9yZXIudXRpbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIuY29tbW9uLnV0aWwuVU1MMlV0aWw7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUHJvZmlsZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5Qcm9maWxlQXBwbGljYXRpb247CisKK3B1YmxpYyBjbGFzcyBQcm9maWxlVXRpbCB7CisKKwlwdWJsaWMgc3RhdGljIFByb2ZpbGUgZ2V0QXBwbGllZFByb2ZpbGUob3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZSBwYWNrYWdlXywgU3RyaW5nIHF1YWxpZmllZE5hbWUpIHsKKworCQlmb3IgKFByb2ZpbGVBcHBsaWNhdGlvbiBwcm9maWxlQXBwbGljYXRpb24gOiBwYWNrYWdlXy5nZXRBbGxQcm9maWxlQXBwbGljYXRpb25zKCkpIHsKKworCQkJUHJvZmlsZSBhcHBsaWVkUHJvZmlsZSA9IHByb2ZpbGVBcHBsaWNhdGlvbi5nZXRBcHBsaWVkUHJvZmlsZSgpOworCisJCQlpZiAoYXBwbGllZFByb2ZpbGUgIT0gbnVsbCAmJiBVTUwyVXRpbC5zYWZlRXF1YWxzKGFwcGxpZWRQcm9maWxlLmdldFF1YWxpZmllZE5hbWUoKSwgcXVhbGlmaWVkTmFtZSkpIHsKKworCQkJCXJldHVybiBhcHBsaWVkUHJvZmlsZTsKKwkJCX0KKwkJfQorCisJCXJldHVybiBudWxsOworCX0KK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5wZXJzcGVjdGl2ZS8uY2xhc3NwYXRoIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBlcnNwZWN0aXZlLy5jbGFzc3BhdGgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjg4YTc4MAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5wZXJzcGVjdGl2ZS8uY2xhc3NwYXRoCkBAIC0wLDAgKzEsNyBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxjbGFzc3BhdGg+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UuamR0LmxhdW5jaGluZy5KUkVfQ09OVEFJTkVSL29yZy5lY2xpcHNlLmpkdC5pbnRlcm5hbC5kZWJ1Zy51aS5sYXVuY2hlci5TdGFuZGFyZFZNVHlwZS9KMlNFLTEuNSIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLnBkZS5jb3JlLnJlcXVpcmVkUGx1Z2lucyIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJzcmMiIHBhdGg9InNyYyIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJvdXRwdXQiIHBhdGg9InRhcmdldC9jbGFzc2VzIi8+Cis8L2NsYXNzcGF0aD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5wZXJzcGVjdGl2ZS8uZ2l0aWdub3JlIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBlcnNwZWN0aXZlLy5naXRpZ25vcmUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjgzZDIyMgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5wZXJzcGVjdGl2ZS8uZ2l0aWdub3JlCkBAIC0wLDAgKzEgQEAKKy90YXJnZXQvCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGVyc3BlY3RpdmUvLnByb2plY3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGVyc3BlY3RpdmUvLnByb2plY3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGM5NWU2YQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5wZXJzcGVjdGl2ZS8ucHJvamVjdApAQCAtMCwwICsxLDM0IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHByb2plY3REZXNjcmlwdGlvbj4KKwk8bmFtZT5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGVyc3BlY3RpdmU8L25hbWU+CisJPGNvbW1lbnQ+PC9jb21tZW50PgorCTxwcm9qZWN0cz4KKwk8L3Byb2plY3RzPgorCTxidWlsZFNwZWM+CisJCTxidWlsZENvbW1hbmQ+CisJCQk8bmFtZT5vcmcuZWNsaXBzZS5qZHQuY29yZS5qYXZhYnVpbGRlcjwvbmFtZT4KKwkJCTxhcmd1bWVudHM+CisJCQk8L2FyZ3VtZW50cz4KKwkJPC9idWlsZENvbW1hbmQ+CisJCTxidWlsZENvbW1hbmQ+CisJCQk8bmFtZT5vcmcuZWNsaXBzZS5wZGUuTWFuaWZlc3RCdWlsZGVyPC9uYW1lPgorCQkJPGFyZ3VtZW50cz4KKwkJCTwvYXJndW1lbnRzPgorCQk8L2J1aWxkQ29tbWFuZD4KKwkJPGJ1aWxkQ29tbWFuZD4KKwkJCTxuYW1lPm9yZy5lY2xpcHNlLnBkZS5TY2hlbWFCdWlsZGVyPC9uYW1lPgorCQkJPGFyZ3VtZW50cz4KKwkJCTwvYXJndW1lbnRzPgorCQk8L2J1aWxkQ29tbWFuZD4KKwkJPGJ1aWxkQ29tbWFuZD4KKwkJCTxuYW1lPm9yZy5lY2xpcHNlLm0yZS5jb3JlLm1hdmVuMkJ1aWxkZXI8L25hbWU+CisJCQk8YXJndW1lbnRzPgorCQkJPC9hcmd1bWVudHM+CisJCTwvYnVpbGRDb21tYW5kPgorCTwvYnVpbGRTcGVjPgorCTxuYXR1cmVzPgorCQk8bmF0dXJlPm9yZy5lY2xpcHNlLm0yZS5jb3JlLm1hdmVuMk5hdHVyZTwvbmF0dXJlPgorCQk8bmF0dXJlPm9yZy5lY2xpcHNlLnBkZS5QbHVnaW5OYXR1cmU8L25hdHVyZT4KKwkJPG5hdHVyZT5vcmcuZWNsaXBzZS5qZHQuY29yZS5qYXZhbmF0dXJlPC9uYXR1cmU+CisJPC9uYXR1cmVzPgorPC9wcm9qZWN0RGVzY3JpcHRpb24+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGVyc3BlY3RpdmUvLnNldHRpbmdzL29yZy5lY2xpcHNlLmNvcmUucmVzb3VyY2VzLnByZWZzIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBlcnNwZWN0aXZlLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5wcmVmcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45OWYyNmMwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBlcnNwZWN0aXZlLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5wcmVmcwpAQCAtMCwwICsxLDIgQEAKK2VjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCitlbmNvZGluZy88cHJvamVjdD49VVRGLTgKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5wZXJzcGVjdGl2ZS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGVyc3BlY3RpdmUvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUxNzEyZGIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGVyc3BlY3RpdmUvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCkBAIC0wLDAgKzEsOCBAQAorI1dlZCBTZXAgMTQgMTA6MjI6MjMgQ0VTVCAyMDExCitlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi5pbmxpbmVKc3JCeXRlY29kZT1lbmFibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnRhcmdldFBsYXRmb3JtPTEuNQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29tcGxpYW5jZT0xLjUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uYXNzZXJ0SWRlbnRpZmllcj1lcnJvcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbnVtSWRlbnRpZmllcj1lcnJvcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuc291cmNlPTEuNQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBlcnNwZWN0aXZlLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5tMmUuY29yZS5wcmVmcyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5wZXJzcGVjdGl2ZS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UubTJlLmNvcmUucHJlZnMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjg5N2E3ZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5wZXJzcGVjdGl2ZS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UubTJlLmNvcmUucHJlZnMKQEAgLTAsMCArMSw0IEBACithY3RpdmVQcm9maWxlcz0KK2VjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCityZXNvbHZlV29ya3NwYWNlUHJvamVjdHM9dHJ1ZQordmVyc2lvbj0xCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGVyc3BlY3RpdmUvTUVUQS1JTkYvTUFOSUZFU1QuTUYgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGVyc3BlY3RpdmUvTUVUQS1JTkYvTUFOSUZFU1QuTUYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2RkODNlYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5wZXJzcGVjdGl2ZS9NRVRBLUlORi9NQU5JRkVTVC5NRgpAQCAtMCwwICsxLDE0IEBACitNYW5pZmVzdC1WZXJzaW9uOiAxLjAKK1JlcXVpcmUtQnVuZGxlOiBvcmcuZWNsaXBzZS51aSwKKyBvcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWUsCisgb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucGVyc3BlY3RpdmU7YnVuZGxlLXZlcnNpb249IjEuMi4wIiwKKyBvcmcuZWNsaXBzZS51aS5jaGVhdHNoZWV0cworQnVuZGxlLVZlbmRvcjogJUJ1bmRsZS1WZW5kb3IKK0J1bmRsZS1BY3RpdmF0aW9uUG9saWN5OiBsYXp5CitCdW5kbGUtVmVyc2lvbjogMS4yLjAucXVhbGlmaWVyCitCdW5kbGUtTG9jYWxpemF0aW9uOiBwbHVnaW4KK0J1bmRsZS1OYW1lOiAlQnVuZGxlLU5hbWUKK0J1bmRsZS1BY3RpdmF0b3I6IG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5wZXJzcGVjdGl2ZS5BY3RpdmF0b3IKK0J1bmRsZS1NYW5pZmVzdFZlcnNpb246IDIKK0J1bmRsZS1TeW1ib2xpY05hbWU6IG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5wZXJzcGVjdGl2ZTtzaW5nbGV0b246PXRydWUKK0J1bmRsZS1SZXF1aXJlZEV4ZWN1dGlvbkVudmlyb25tZW50OiBKMlNFLTEuNQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBlcnNwZWN0aXZlL2Fib3V0Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGVyc3BlY3RpdmUvYWJvdXQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kMzVkNWFlCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBlcnNwZWN0aXZlL2Fib3V0Lmh0bWwKQEAgLTAsMCArMSwyOCBAQAorPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgU3RyaWN0Ly9FTiIKKyAgICAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtc3RyaWN0LmR0ZCI+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Cis8aGVhZD4KKzxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEiLz4KKzx0aXRsZT5BYm91dDwvdGl0bGU+Cis8L2hlYWQ+Cis8Ym9keSBsYW5nPSJFTi1VUyI+Cis8aDI+QWJvdXQgVGhpcyBDb250ZW50PC9oMj4KKyAKKzxwPkp1bmUgNSwgMjAwNzwvcD4JCis8aDM+TGljZW5zZTwvaDM+CisKKzxwPlRoZSBFY2xpcHNlIEZvdW5kYXRpb24gbWFrZXMgYXZhaWxhYmxlIGFsbCBjb250ZW50IGluIHRoaXMgcGx1Zy1pbiAoJnF1b3Q7Q29udGVudCZxdW90OykuICBVbmxlc3Mgb3RoZXJ3aXNlIAoraW5kaWNhdGVkIGJlbG93LCB0aGUgQ29udGVudCBpcyBwcm92aWRlZCB0byB5b3UgdW5kZXIgdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIG9mIHRoZQorRWNsaXBzZSBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDEuMCAoJnF1b3Q7RVBMJnF1b3Q7KS4gIEEgY29weSBvZiB0aGUgRVBMIGlzIGF2YWlsYWJsZSAKK2F0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sIj5odHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbDwvYT4uCitGb3IgcHVycG9zZXMgb2YgdGhlIEVQTCwgJnF1b3Q7UHJvZ3JhbSZxdW90OyB3aWxsIG1lYW4gdGhlIENvbnRlbnQuPC9wPgorCis8cD5JZiB5b3UgZGlkIG5vdCByZWNlaXZlIHRoaXMgQ29udGVudCBkaXJlY3RseSBmcm9tIHRoZSBFY2xpcHNlIEZvdW5kYXRpb24sIHRoZSBDb250ZW50IGlzIAorYmVpbmcgcmVkaXN0cmlidXRlZCBieSBhbm90aGVyIHBhcnR5ICgmcXVvdDtSZWRpc3RyaWJ1dG9yJnF1b3Q7KSBhbmQgZGlmZmVyZW50IHRlcm1zIGFuZCBjb25kaXRpb25zIG1heQorYXBwbHkgdG8geW91ciB1c2Ugb2YgYW55IG9iamVjdCBjb2RlIGluIHRoZSBDb250ZW50LiAgQ2hlY2sgdGhlIFJlZGlzdHJpYnV0b3IncyBsaWNlbnNlIHRoYXQgd2FzIAorcHJvdmlkZWQgd2l0aCB0aGUgQ29udGVudC4gIElmIG5vIHN1Y2ggbGljZW5zZSBleGlzdHMsIGNvbnRhY3QgdGhlIFJlZGlzdHJpYnV0b3IuICBVbmxlc3Mgb3RoZXJ3aXNlCitpbmRpY2F0ZWQgYmVsb3csIHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB0aGUgRVBMIHN0aWxsIGFwcGx5IHRvIGFueSBzb3VyY2UgY29kZSBpbiB0aGUgQ29udGVudAorYW5kIHN1Y2ggc291cmNlIGNvZGUgbWF5IGJlIG9idGFpbmVkIGF0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvIj5odHRwOi8vd3d3LmVjbGlwc2Uub3JnPC9hPi48L3A+CisKKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5wZXJzcGVjdGl2ZS9idWlsZC5wcm9wZXJ0aWVzIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBlcnNwZWN0aXZlL2J1aWxkLnByb3BlcnRpZXMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2IzYzIyNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5wZXJzcGVjdGl2ZS9idWlsZC5wcm9wZXJ0aWVzCkBAIC0wLDAgKzEsOCBAQAorc291cmNlLi4gPSBzcmMvCitvdXRwdXQuLiA9IGJpbi8KK2Jpbi5pbmNsdWRlcyA9IE1FVEEtSU5GLyxcCisgICAgICAgICAgICAgICAuLFwKKyAgICAgICAgICAgICAgIHBsdWdpbi54bWwsXAorICAgICAgICAgICAgICAgcGx1Z2luLnByb3BlcnRpZXMsXAorICAgICAgICAgICAgICAgYWJvdXQuaHRtbAorc3JjLmluY2x1ZGVzID0gYWJvdXQuaHRtbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBlcnNwZWN0aXZlL3BsdWdpbi5wcm9wZXJ0aWVzIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBlcnNwZWN0aXZlL3BsdWdpbi5wcm9wZXJ0aWVzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIzNmY5ODcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGVyc3BlY3RpdmUvcGx1Z2luLnByb3BlcnRpZXMKQEAgLTAsMCArMSwzIEBACisjUHJvcGVydGllcyBmaWxlIGZvciBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGVyc3BlY3RpdmUKK0J1bmRsZS1WZW5kb3IgPSBFY2xpcHNlIE1vZGVsaW5nIFByb2plY3QKK0J1bmRsZS1OYW1lID0gUm9ib3RNTCBQZXJzcGVjdGl2ZSAoSW5jdWJhdGlvbikKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGVyc3BlY3RpdmUvcGx1Z2luLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5wZXJzcGVjdGl2ZS9wbHVnaW4ueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjlmNGI4NjcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGVyc3BlY3RpdmUvcGx1Z2luLnhtbApAQCAtMCwwICsxLDE0IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPD9lY2xpcHNlIHZlcnNpb249IjMuNCI/PgorPHBsdWdpbj4KKyAgIDxleHRlbnNpb24KKyAgICAgICAgIHBvaW50PSJvcmcuZWNsaXBzZS51aS5wZXJzcGVjdGl2ZXMiPgorICAgICAgPHBlcnNwZWN0aXZlCisgICAgICAgICAgICBjbGFzcz0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBlcnNwZWN0aXZlLlJvYm90bWxQZXJzcGVjdGl2ZSIKKyAgICAgICAgICAgIGljb249InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zL3JvYm90bWwvUm9ib3RNTC0xNngxNi04Yml0cy5wbmciCisgICAgICAgICAgICBpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBlcnNwZWN0aXZlIgorICAgICAgICAgICAgbmFtZT0icm9ib3RNTCI+CisgICAgICA8L3BlcnNwZWN0aXZlPgorICAgPC9leHRlbnNpb24+CisKKzwvcGx1Z2luPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBlcnNwZWN0aXZlL3BvbS54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGVyc3BlY3RpdmUvcG9tLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40MDkwNTAwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBlcnNwZWN0aXZlL3BvbS54bWwKQEAgLTAsMCArMSwxMSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxwcm9qZWN0PgorCTxtb2RlbFZlcnNpb24+NC4wLjA8L21vZGVsVmVyc2lvbj4KKwk8cGFyZW50PgorCQk8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGFyZW50PC9hcnRpZmFjdElkPgorCQk8Z3JvdXBJZD5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWw8L2dyb3VwSWQ+CisJCTx2ZXJzaW9uPjEuMi4wLVNOQVBTSE9UPC92ZXJzaW9uPgorCTwvcGFyZW50PgorCTxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5wZXJzcGVjdGl2ZTwvYXJ0aWZhY3RJZD4KKwk8cGFja2FnaW5nPmVjbGlwc2UtcGx1Z2luPC9wYWNrYWdpbmc+Cis8L3Byb2plY3Q+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBlcnNwZWN0aXZlL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvcGVyc3BlY3RpdmUvQWN0aXZhdG9yLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGVyc3BlY3RpdmUvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9wZXJzcGVjdGl2ZS9BY3RpdmF0b3IuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MjFmZjAwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBlcnNwZWN0aXZlL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvcGVyc3BlY3RpdmUvQWN0aXZhdG9yLmphdmEKQEAgLTAsMCArMSw2NyBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTIgQ0VBIExJU1QuCisgKgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIENlQ0lMTC1DIEZyZWUgU29mdHdhcmUgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5jZWNpbGwuaW5mby9saWNlbmNlcy9MaWNlbmNlX0NlQ0lMTC1DX1YxLWVuLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgU2FhZGlhIERIT1VJQiAoQ0VBIExJU1QpIC0gSW5pdGlhbCBBUEkgYW5kIGltcGxlbWVudGF0aW9uCisgKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGVyc3BlY3RpdmU7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS51aS5wbHVnaW4uQWJzdHJhY3RVSVBsdWdpbjsKK2ltcG9ydCBvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQ29udGV4dDsKKworLyoqCisgKiBUaGUgYWN0aXZhdG9yIGNsYXNzIGNvbnRyb2xzIHRoZSBwbHVnLWluIGxpZmUgY3ljbGUKKyAqLworcHVibGljIGNsYXNzIEFjdGl2YXRvciBleHRlbmRzIEFic3RyYWN0VUlQbHVnaW4geworCisJLy8gVGhlIHBsdWctaW4gSUQKKwlwdWJsaWMgc3RhdGljIGZpbmFsIFN0cmluZyBQTFVHSU5fSUQgPSAib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBlcnNwZWN0aXZlIjsgLy8kTk9OLU5MUy0xJAorCisJLy8gVGhlIHNoYXJlZCBpbnN0YW5jZQorCXByaXZhdGUgc3RhdGljIEFjdGl2YXRvciBwbHVnaW47CisKKwkvKioKKwkgKiBUaGUgY29uc3RydWN0b3IKKwkgKi8KKwlwdWJsaWMgQWN0aXZhdG9yKCkgeworCX0KKworCS8qCisJICogKG5vbi1KYXZhZG9jKQorCSAqCisJICogQHNlZSBvcmcuZWNsaXBzZS51aS5wbHVnaW4uQWJzdHJhY3RVSVBsdWdpbiNzdGFydChvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQ29udGV4dCkKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBzdGFydChCdW5kbGVDb250ZXh0IGNvbnRleHQpIHRocm93cyBFeGNlcHRpb24geworCQlzdXBlci5zdGFydChjb250ZXh0KTsKKwkJcGx1Z2luID0gdGhpczsKKwl9CisKKwkvKgorCSAqIChub24tSmF2YWRvYykKKwkgKgorCSAqIEBzZWUgb3JnLmVjbGlwc2UudWkucGx1Z2luLkFic3RyYWN0VUlQbHVnaW4jc3RvcChvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQ29udGV4dCkKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBzdG9wKEJ1bmRsZUNvbnRleHQgY29udGV4dCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCXBsdWdpbiA9IG51bGw7CisJCXN1cGVyLnN0b3AoY29udGV4dCk7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgc2hhcmVkIGluc3RhbmNlCisJICoKKwkgKiBAcmV0dXJuIHRoZSBzaGFyZWQgaW5zdGFuY2UKKwkgKi8KKwlwdWJsaWMgc3RhdGljIEFjdGl2YXRvciBnZXREZWZhdWx0KCkgeworCQlyZXR1cm4gcGx1Z2luOworCX0KKworfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBlcnNwZWN0aXZlL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvcGVyc3BlY3RpdmUvUm9ib3RtbFBlcnNwZWN0aXZlLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGVyc3BlY3RpdmUvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC9wZXJzcGVjdGl2ZS9Sb2JvdG1sUGVyc3BlY3RpdmUuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lYjM2YmViCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBlcnNwZWN0aXZlL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvcGVyc3BlY3RpdmUvUm9ib3RtbFBlcnNwZWN0aXZlLmphdmEKQEAgLTAsMCArMSw3NSBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTIgQ0VBIExJU1QuCisgKgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIENlQ0lMTC1DIEZyZWUgU29mdHdhcmUgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5jZWNpbGwuaW5mby9saWNlbmNlcy9MaWNlbmNlX0NlQ0lMTC1DX1YxLWVuLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgU2FhZGlhIERIT1VJQiAoQ0VBIExJU1QpIC0gSW5pdGlhbCBBUEkgYW5kIGltcGxlbWVudGF0aW9uCisgKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGVyc3BlY3RpdmU7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wZXJzcGVjdGl2ZS5QYXB5cnVzUGVyc3BlY3RpdmU7CitpbXBvcnQgb3JnLmVjbGlwc2UudWkuSVBhZ2VMYXlvdXQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudWkuY2hlYXRzaGVldHMuT3BlbkNoZWF0U2hlZXRBY3Rpb247CisKK3B1YmxpYyBjbGFzcyBSb2JvdG1sUGVyc3BlY3RpdmUgZXh0ZW5kcyBQYXB5cnVzUGVyc3BlY3RpdmUgeworCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBTdHJpbmcgSURfQ0hFQVRfU0hFRVRTID0gIm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2MuY2hlYXRzaGVldDEwNTE5MjMzMjUiOworCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgY3JlYXRlSW5pdGlhbExheW91dChJUGFnZUxheW91dCBsYXlvdXQpIHsKKwkJLy8gVE9ETyBBdXRvLWdlbmVyYXRlZCBtZXRob2Qgc3R1YgorCQlzdXBlci5jcmVhdGVJbml0aWFsTGF5b3V0KGxheW91dCk7CisJCW5ldyBPcGVuQ2hlYXRTaGVldEFjdGlvbihJRF9DSEVBVF9TSEVFVFMpLnJ1bigpOworCX0KKworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGRlZmluZUFjdGlvbnMoSVBhZ2VMYXlvdXQgbGF5b3V0KSB7CisJCS8vIFRPRE8gQXV0by1nZW5lcmF0ZWQgbWV0aG9kIHN0dWIKKwkJLy8gc3VwZXIuZGVmaW5lQWN0aW9ucyhsYXlvdXQpOworCQlsYXlvdXQuYWRkTmV3V2l6YXJkU2hvcnRjdXQoIm9yZy5lY2xpcHNlLnBhcHlydXMud2l6YXJkcy5jcmVhdGVyb2JvdG1sd2l6YXJkIik7CisJCWxheW91dC5hZGROZXdXaXphcmRTaG9ydGN1dCgib3JnLmVjbGlwc2UudWkud2l6YXJkcy5uZXcuZm9sZGVyIik7CisJCWxheW91dC5hZGROZXdXaXphcmRTaG9ydGN1dCgib3JnLmVjbGlwc2UucGFweXJ1cy53aXphcmRzLmNyZWF0ZXJvYm90bWxtb2RlbCIpOworCQkvLyBBZGQgInNob3cgdmlld3MiLgorCQlsYXlvdXQuYWRkU2hvd1ZpZXdTaG9ydGN1dChJUGFnZUxheW91dC5JRF9QUk9KRUNUX0VYUExPUkVSKTsKKwkJbGF5b3V0LmFkZFNob3dWaWV3U2hvcnRjdXQoSVBhZ2VMYXlvdXQuSURfT1VUTElORSk7CisJCWxheW91dC5hZGRTaG93Vmlld1Nob3J0Y3V0KElQYWdlTGF5b3V0LklEX1BST1BfU0hFRVQpOworCisKKwkJbGF5b3V0LmFkZEFjdGlvblNldCgib3JnLmVjbGlwc2UuZGVidWcudWkubGF1bmNoQWN0aW9uU2V0Iik7CisKKwkJLy8gYWRkIHBlcnNwZWN0aXZlcworCQlsYXlvdXQuYWRkUGVyc3BlY3RpdmVTaG9ydGN1dCgib3JnLmVjbGlwc2UudWkucmVzb3VyY2VQZXJzcGVjdGl2ZSIpOworCQlsYXlvdXQuYWRkUGVyc3BlY3RpdmVTaG9ydGN1dCgib3JnLmVjbGlwc2UuamR0LnVpLkphdmFQZXJzcGVjdGl2ZSIpOworCisJfQorCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZGVmaW5lTGF5b3V0KElQYWdlTGF5b3V0IGxheW91dCkgeworCisJCS8vIEVkaXRvcnMgYXJlIHBsYWNlZCBmb3IgZnJlZS4KKwkJU3RyaW5nIGVkaXRvckFyZWEgPSBsYXlvdXQuZ2V0RWRpdG9yQXJlYSgpOworCisKKwkJLy8gUGxhY2UgdGhlIE1vZGVsRXhwbG9yZXIgdW5kZXIgdGhlIE5hdmlnYXRvcgorCQlsYXlvdXQuYWRkVmlldyhJRF9NT0RFTEVYUExPUkVSLCBJUGFnZUxheW91dC5MRUZULCAwLjJmLCBlZGl0b3JBcmVhKTsKKworCQkvLyBQbGFjZSB0aGUgdGhlIFJlc291cmNlIE5hdmlnYXRvciB0byB0aGUgdG9wIGxlZnQgb2YgZWRpdG9yIGFyZWEuCisJCWxheW91dC5hZGRWaWV3KElQYWdlTGF5b3V0LklEX1BST0pFQ1RfRVhQTE9SRVIsIElQYWdlTGF5b3V0LkJPVFRPTSwgMC4zM2YsIElEX01PREVMRVhQTE9SRVIpOworCisKKwkJLy8gcGxhY2Ugb3V0bGluZSB1bmRlciB0aGUgbW9kZWwgZXhwbG9yZXIKKwkJbGF5b3V0LmFkZFZpZXcoSVBhZ2VMYXlvdXQuSURfT1VUTElORSwgSVBhZ2VMYXlvdXQuQk9UVE9NLCAwLjVmLCBJUGFnZUxheW91dC5JRF9QUk9KRUNUX0VYUExPUkVSKTsKKworCQkvLyBwbGFjZSBwcm9wZXJ0aWVzIHVuZGVyIHRoZSBlZGl0b3IKKwkJbGF5b3V0LmFkZFZpZXcoSVBhZ2VMYXlvdXQuSURfUFJPUF9TSEVFVCwgSVBhZ2VMYXlvdXQuQk9UVE9NLCAoZmxvYXQpIDAuNzAsIGVkaXRvckFyZWEpOworCisJCS8vIGJvdHRvbS5hZGRWaWV3KCJvcmcuZWNsaXBzZS5wZGUucnVudGltZS5Mb2dWaWV3Iik7CisJfQorCit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5Ly5jbGFzc3BhdGggYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5Ly5jbGFzc3BhdGgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjg4YTc4MAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvLmNsYXNzcGF0aApAQCAtMCwwICsxLDcgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Y2xhc3NwYXRoPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSjJTRS0xLjUiLz4KKwk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5wZGUuY29yZS5yZXF1aXJlZFBsdWdpbnMiLz4KKwk8Y2xhc3NwYXRoZW50cnkga2luZD0ic3JjIiBwYXRoPSJzcmMiLz4KKwk8Y2xhc3NwYXRoZW50cnkga2luZD0ib3V0cHV0IiBwYXRoPSJ0YXJnZXQvY2xhc3NlcyIvPgorPC9jbGFzc3BhdGg+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5Ly5wcm9qZWN0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS8ucHJvamVjdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44NmUwOWU2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS8ucHJvamVjdApAQCAtMCwwICsxLDM0IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHByb2plY3REZXNjcmlwdGlvbj4KKwk8bmFtZT5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5PC9uYW1lPgorCTxjb21tZW50PjwvY29tbWVudD4KKwk8cHJvamVjdHM+CisJPC9wcm9qZWN0cz4KKwk8YnVpbGRTcGVjPgorCQk8YnVpbGRDb21tYW5kPgorCQkJPG5hbWU+b3JnLmVjbGlwc2UuamR0LmNvcmUuamF2YWJ1aWxkZXI8L25hbWU+CisJCQk8YXJndW1lbnRzPgorCQkJPC9hcmd1bWVudHM+CisJCTwvYnVpbGRDb21tYW5kPgorCQk8YnVpbGRDb21tYW5kPgorCQkJPG5hbWU+b3JnLmVjbGlwc2UucGRlLk1hbmlmZXN0QnVpbGRlcjwvbmFtZT4KKwkJCTxhcmd1bWVudHM+CisJCQk8L2FyZ3VtZW50cz4KKwkJPC9idWlsZENvbW1hbmQ+CisJCTxidWlsZENvbW1hbmQ+CisJCQk8bmFtZT5vcmcuZWNsaXBzZS5wZGUuU2NoZW1hQnVpbGRlcjwvbmFtZT4KKwkJCTxhcmd1bWVudHM+CisJCQk8L2FyZ3VtZW50cz4KKwkJPC9idWlsZENvbW1hbmQ+CisJCTxidWlsZENvbW1hbmQ+CisJCQk8bmFtZT5vcmcuZWNsaXBzZS5tMmUuY29yZS5tYXZlbjJCdWlsZGVyPC9uYW1lPgorCQkJPGFyZ3VtZW50cz4KKwkJCTwvYXJndW1lbnRzPgorCQk8L2J1aWxkQ29tbWFuZD4KKwk8L2J1aWxkU3BlYz4KKwk8bmF0dXJlcz4KKwkJPG5hdHVyZT5vcmcuZWNsaXBzZS5tMmUuY29yZS5tYXZlbjJOYXR1cmU8L25hdHVyZT4KKwkJPG5hdHVyZT5vcmcuZWNsaXBzZS5wZGUuUGx1Z2luTmF0dXJlPC9uYXR1cmU+CisJCTxuYXR1cmU+b3JnLmVjbGlwc2UuamR0LmNvcmUuamF2YW5hdHVyZTwvbmF0dXJlPgorCTwvbmF0dXJlcz4KKzwvcHJvamVjdERlc2NyaXB0aW9uPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuY29yZS5yZXNvdXJjZXMucHJlZnMgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5wcmVmcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lYTIzYWUwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuY29yZS5yZXNvdXJjZXMucHJlZnMKQEAgLTAsMCArMSwzIEBACitlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQorZW5jb2RpbmcvL3Jlc291cmNlL1lvdXRoQ2hhbGxlbmdlLnVtbD1VVEYtOAorZW5jb2RpbmcvPHByb2plY3Q+PVVURi04CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI1YjVkZDAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcwpAQCAtMCwwICsxLDggQEAKKyNUaHUgSmFuIDI3IDE2OjQzOjI2IENFVCAyMDExCitlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi5pbmxpbmVKc3JCeXRlY29kZT1lbmFibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnRhcmdldFBsYXRmb3JtPTEuNQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29tcGxpYW5jZT0xLjUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uYXNzZXJ0SWRlbnRpZmllcj1lcnJvcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5lbnVtSWRlbnRpZmllcj1lcnJvcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuc291cmNlPTEuNQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UubTJlLmNvcmUucHJlZnMgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5Ly5zZXR0aW5ncy9vcmcuZWNsaXBzZS5tMmUuY29yZS5wcmVmcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mODk3YTdmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UubTJlLmNvcmUucHJlZnMKQEAgLTAsMCArMSw0IEBACithY3RpdmVQcm9maWxlcz0KK2VjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCityZXNvbHZlV29ya3NwYWNlUHJvamVjdHM9dHJ1ZQordmVyc2lvbj0xCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L01FVEEtSU5GL01BTklGRVNULk1GIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9NRVRBLUlORi9NQU5JRkVTVC5NRgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45ZTRkMWZlCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9NRVRBLUlORi9NQU5JRkVTVC5NRgpAQCAtMCwwICsxLDEzIEBACitNYW5pZmVzdC1WZXJzaW9uOiAxLjAKK1JlcXVpcmUtQnVuZGxlOiBvcmcuZWNsaXBzZS51aSwKKyBvcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWUsCisgb3JnLmVjbGlwc2UucGFweXJ1cy51bWwuZGlhZ3JhbS53aXphcmRzO2J1bmRsZS12ZXJzaW9uPSIxLjIuMCIKK0J1bmRsZS1WZW5kb3I6ICVCdW5kbGUtVmVuZG9yCitCdW5kbGUtQWN0aXZhdGlvblBvbGljeTogbGF6eQorQnVuZGxlLVZlcnNpb246IDEuMi4wLnF1YWxpZmllcgorQnVuZGxlLUxvY2FsaXphdGlvbjogcGx1Z2luCitCdW5kbGUtTmFtZTogJUJ1bmRsZS1OYW1lCitCdW5kbGUtQWN0aXZhdG9yOiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5LkFjdGl2YXRvcgorQnVuZGxlLU1hbmlmZXN0VmVyc2lvbjogMgorQnVuZGxlLVN5bWJvbGljTmFtZTogb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeTtzaW5nbGV0b246PXRydWUKK0J1bmRsZS1SZXF1aXJlZEV4ZWN1dGlvbkVudmlyb25tZW50OiBKMlNFLTEuNQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9hYm91dC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9hYm91dC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQzNWQ1YWUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L2Fib3V0Lmh0bWwKQEAgLTAsMCArMSwyOCBAQAorPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgU3RyaWN0Ly9FTiIKKyAgICAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtc3RyaWN0LmR0ZCI+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Cis8aGVhZD4KKzxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEiLz4KKzx0aXRsZT5BYm91dDwvdGl0bGU+Cis8L2hlYWQ+Cis8Ym9keSBsYW5nPSJFTi1VUyI+Cis8aDI+QWJvdXQgVGhpcyBDb250ZW50PC9oMj4KKyAKKzxwPkp1bmUgNSwgMjAwNzwvcD4JCis8aDM+TGljZW5zZTwvaDM+CisKKzxwPlRoZSBFY2xpcHNlIEZvdW5kYXRpb24gbWFrZXMgYXZhaWxhYmxlIGFsbCBjb250ZW50IGluIHRoaXMgcGx1Zy1pbiAoJnF1b3Q7Q29udGVudCZxdW90OykuICBVbmxlc3Mgb3RoZXJ3aXNlIAoraW5kaWNhdGVkIGJlbG93LCB0aGUgQ29udGVudCBpcyBwcm92aWRlZCB0byB5b3UgdW5kZXIgdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIG9mIHRoZQorRWNsaXBzZSBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDEuMCAoJnF1b3Q7RVBMJnF1b3Q7KS4gIEEgY29weSBvZiB0aGUgRVBMIGlzIGF2YWlsYWJsZSAKK2F0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sIj5odHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbDwvYT4uCitGb3IgcHVycG9zZXMgb2YgdGhlIEVQTCwgJnF1b3Q7UHJvZ3JhbSZxdW90OyB3aWxsIG1lYW4gdGhlIENvbnRlbnQuPC9wPgorCis8cD5JZiB5b3UgZGlkIG5vdCByZWNlaXZlIHRoaXMgQ29udGVudCBkaXJlY3RseSBmcm9tIHRoZSBFY2xpcHNlIEZvdW5kYXRpb24sIHRoZSBDb250ZW50IGlzIAorYmVpbmcgcmVkaXN0cmlidXRlZCBieSBhbm90aGVyIHBhcnR5ICgmcXVvdDtSZWRpc3RyaWJ1dG9yJnF1b3Q7KSBhbmQgZGlmZmVyZW50IHRlcm1zIGFuZCBjb25kaXRpb25zIG1heQorYXBwbHkgdG8geW91ciB1c2Ugb2YgYW55IG9iamVjdCBjb2RlIGluIHRoZSBDb250ZW50LiAgQ2hlY2sgdGhlIFJlZGlzdHJpYnV0b3IncyBsaWNlbnNlIHRoYXQgd2FzIAorcHJvdmlkZWQgd2l0aCB0aGUgQ29udGVudC4gIElmIG5vIHN1Y2ggbGljZW5zZSBleGlzdHMsIGNvbnRhY3QgdGhlIFJlZGlzdHJpYnV0b3IuICBVbmxlc3Mgb3RoZXJ3aXNlCitpbmRpY2F0ZWQgYmVsb3csIHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB0aGUgRVBMIHN0aWxsIGFwcGx5IHRvIGFueSBzb3VyY2UgY29kZSBpbiB0aGUgQ29udGVudAorYW5kIHN1Y2ggc291cmNlIGNvZGUgbWF5IGJlIG9idGFpbmVkIGF0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvIj5odHRwOi8vd3d3LmVjbGlwc2Uub3JnPC9hPi48L3A+CisKKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvYnVpbGQucHJvcGVydGllcyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvYnVpbGQucHJvcGVydGllcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lM2U0MzMxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9idWlsZC5wcm9wZXJ0aWVzCkBAIC0wLDAgKzEsOSBAQAorc291cmNlLi4gPSBzcmMvCitiaW4uaW5jbHVkZXMgPSBNRVRBLUlORi8sXAorICAgICAgICAgICAgICAgLixcCisgICAgICAgICAgICAgICBhYm91dC5odG1sLFwKKyAgICAgICAgICAgICAgIHBsdWdpbi5wcm9wZXJ0aWVzLFwKKyAgICAgICAgICAgICAgIHBsdWdpbi54bWwsXAorICAgICAgICAgICAgICAgcmVzb3VyY2UvLFwKKyAgICAgICAgICAgICAgIHBsdWdpbi5wcm9wZXJ0aWVzCitzcmMuaW5jbHVkZXMgPSBhYm91dC5odG1sCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3BsdWdpbi5wcm9wZXJ0aWVzIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9wbHVnaW4ucHJvcGVydGllcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNmM4NTBjCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9wbHVnaW4ucHJvcGVydGllcwpAQCAtMCwwICsxLDMgQEAKKyNQcm9wZXJ0aWVzIGZpbGUgZm9yIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkKK0J1bmRsZS1WZW5kb3IgPSBFY2xpcHNlIE1vZGVsaW5nIFByb2plY3QKK0J1bmRsZS1OYW1lID0gVGVtcGxhdGVzIHJlcG9zaXRvcnkgZm9yIFJvYm90TUwgT0FSUFMgKEluY3ViYXRpb24pClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9wbHVnaW4ueG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9wbHVnaW4ueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZmNGMyOGQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3BsdWdpbi54bWwKQEAgLTAsMCArMSw1MSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzw/ZWNsaXBzZSB2ZXJzaW9uPSIzLjQiPz4KKzxwbHVnaW4+CisgICA8ZXh0ZW5zaW9uCisgICAgICAgICBwb2ludD0ib3JnLmVjbGlwc2UucGFweXJ1cy51bWwuZGlhZ3JhbS53aXphcmRzLnRlbXBsYXRlcyI+CisgICAgICA8dGVtcGxhdGUKKyAgICAgICAgICAgIGRpX2ZpbGU9InJlc291cmNlL1JvYm9DYWIuZGkiCisgICAgICAgICAgICBmaWxlPSJyZXNvdXJjZS9Sb2JvQ2FiLnVtbCIKKyAgICAgICAgICAgIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnRlbXBsYXRlcmVwb3NpdG9yeS5Nb2RlbFdpdGhDaGFsbGVuZ2UxQmFzaWNBcmNoaXRlY3R1cmUiCisgICAgICAgICAgICBsYW5ndWFnZT0icm9ib3RNTCIKKyAgICAgICAgICAgIG5hbWU9IkEgUm9ib3RNTCBNb2RlbCB3aXRoIFJvYm9DYWIgYmFzaWMgYXJjaGl0ZWN0dXJlIgorICAgICAgICAgICAgbm90YXRpb25fZmlsZT0icmVzb3VyY2UvUm9ib0NhYi5ub3RhdGlvbiIKKyAgICAgICAgICAgID4KKyAgICAgIDwvdGVtcGxhdGU+CisgICAgICA8dGVtcGxhdGUKKyAgICAgICAgICAgIGRpX2ZpbGU9InJlc291cmNlL1lvdXRoQ2hhbGxlbmdlLmRpIgorICAgICAgICAgICAgZmlsZT0icmVzb3VyY2UvWW91dGhDaGFsbGVuZ2UudW1sIgorICAgICAgICAgICAgaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMudGVtcGxhdGVyZXBvc2l0b3J5Lk1vZGVsV2l0aENoYWxsZW5nZTFCYXNpY0FyY2hpdGVjdHVyZSIKKyAgICAgICAgICAgIGxhbmd1YWdlPSJyb2JvdE1MIgorICAgICAgICAgICAgbmFtZT0iQSBSb2JvdE1MIE1vZGVsIHdpdGggV2lmaWJvdCBiYXNpYyBhcmNoaXRlY3R1cmUiCisgICAgICAgICAgICBub3RhdGlvbl9maWxlPSJyZXNvdXJjZS9Zb3V0aENoYWxsZW5nZS5ub3RhdGlvbiIKKyAgICAgICAgICAgID4KKyAgICAgIDwvdGVtcGxhdGU+CisgICAgICA8IS0tdGVtcGxhdGUKKyAgICAgICAgICAgIGRpX2ZpbGU9InJlc291cmNlL1NpbXBsaWZpZWRDaGFsbGVuZ2UxTW9kZWwuZGkiCisgICAgICAgICAgICBmaWxlPSJyZXNvdXJjZS9TaW1wbGlmaWVkQ2hhbGxlbmdlMU1vZGVsLnVtbCIKKyAgICAgICAgICAgIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5LlNpbXBsaWZpZWRDaGFsbGVuZ2UxTW9kZWwiCisgICAgICAgICAgICBsYW5ndWFnZT0icHJvdGV1cyIKKyAgICAgICAgICAgIG5hbWU9IkEgU2ltcGxpZmllZCBDaGFsbGVuZ2UxIG1vZGVsIgorICAgICAgICAgICAgbm90YXRpb25fZmlsZT0icmVzb3VyY2UvU2ltcGxpZmllZENoYWxsZW5nZTFNb2RlbC5ub3RhdGlvbiIKKyAgICAgICAgICAgIHVtbF9maWxlPSJyZXNvdXJjZS9TaW1wbGlmaWVkQ2hhbGxlbmdlMU1vZGVsLnVtbCI+CisgICAgICA8L3RlbXBsYXRlLS0+CisgICAgICA8dGVtcGxhdGUKKyAgICAgICAgICAgIGRpX2ZpbGU9InJlc291cmNlL0Jhc2ljUm9ib3RNTE1vZGVsLmRpIgorICAgICAgICAgICAgZmlsZT0icmVzb3VyY2UvQmFzaWNSb2JvdE1MTW9kZWwudW1sIgorICAgICAgICAgICAgaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkuQmFzaWNUZW1wbGF0ZSIKKyAgICAgICAgICAgIGxhbmd1YWdlPSJyb2JvdE1MIgorICAgICAgICAgICAgbmFtZT0iQSBiYXNpYyBtb2RlbCB3aXRoIFJvYm90TUwgZGF0YVR5cGVzIGxpYnJhcnkiCisgICAgICAgICAgICBub3RhdGlvbl9maWxlPSJyZXNvdXJjZS9CYXNpY1JvYm90TUxNb2RlbC5ub3RhdGlvbiI+CisgICAgICA8L3RlbXBsYXRlPgorICAgICAgPHRlbXBsYXRlCisgICAgICAgICAgICBkaV9maWxlPSJyZXNvdXJjZS9TZWFyY2hMYW5kaW5nLmRpIgorICAgICAgICAgICAgZmlsZT0icmVzb3VyY2UvU2VhcmNoTGFuZGluZy51bWwiCisgICAgICAgICAgICBpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy50ZW1wbGF0ZXJlcG9zaXRvcnkuTW9kZWwtVEFMQy1DaGFsbGVuZ2UiCisgICAgICAgICAgICBsYW5ndWFnZT0icm9ib3RNTCIKKyAgICAgICAgICAgIG5hbWU9IkEgUm9ib3RNTCBNb2RlbCB3aXRoIFRBTEMgY2hhbGxlbmdlIGJhc2ljIGFyY2hpdGVjdHVyZSIKKyAgICAgICAgICAgIG5vdGF0aW9uX2ZpbGU9InJlc291cmNlL1NlYXJjaExhbmRpbmcubm90YXRpb24iCisgICAgICAgICAgICA+CisgICAgICA8L3RlbXBsYXRlPgorICAgPC9leHRlbnNpb24+Cis8L3BsdWdpbj4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvcG9tLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvcG9tLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44YzIxYjA2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9wb20ueG1sCkBAIC0wLDAgKzEsMTEgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8cHJvamVjdD4KKwk8bW9kZWxWZXJzaW9uPjQuMC4wPC9tb2RlbFZlcnNpb24+CisJPHBhcmVudD4KKwkJPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBhcmVudDwvYXJ0aWZhY3RJZD4KKwkJPGdyb3VwSWQ+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sPC9ncm91cElkPgorCQk8dmVyc2lvbj4xLjIuMC1TTkFQU0hPVDwvdmVyc2lvbj4KKwk8L3BhcmVudD4KKwk8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5PC9hcnRpZmFjdElkPgorCTxwYWNrYWdpbmc+ZWNsaXBzZS1wbHVnaW48L3BhY2thZ2luZz4KKzwvcHJvamVjdD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3Jlc291cmNlL0Fpck9BUlAuZGkgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3Jlc291cmNlL0Fpck9BUlAuZGkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzA3YTYwMQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvcmVzb3VyY2UvQWlyT0FSUC5kaQpAQCAtMCwwICsxLDEwNyBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iQVNDSUkiPz4KKzxkaTpTYXNoV2luZG93c01uZ3IgeG1pOnZlcnNpb249IjIuMCIgeG1sbnM6eG1pPSJodHRwOi8vd3d3Lm9tZy5vcmcvWE1JIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczpkaT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9wYXB5cnVzLzAuNy4wL3Nhc2hkaSI+CisgIDxwYWdlTGlzdD4KKyAgICA8YXZhaWxhYmxlUGFnZT4KKyAgICAgIDxlbWZQYWdlSWRlbnRpZmllciBocmVmPSJBaXJPQVJQLm5vdGF0aW9uI19HcUZoYjNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgPC9hdmFpbGFibGVQYWdlPgorICAgIDxhdmFpbGFibGVQYWdlPgorICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IkFpck9BUlAubm90YXRpb24jX0dxR0lVSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICA8L2F2YWlsYWJsZVBhZ2U+CisgICAgPGF2YWlsYWJsZVBhZ2U+CisgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iQWlyT0FSUC5ub3RhdGlvbiNfR3FHSVVuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgIDwvYXZhaWxhYmxlUGFnZT4KKyAgICA8YXZhaWxhYmxlUGFnZT4KKyAgICAgIDxlbWZQYWdlSWRlbnRpZmllciBocmVmPSJBaXJPQVJQLm5vdGF0aW9uI19HcUd2WUhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgPC9hdmFpbGFibGVQYWdlPgorICAgIDxhdmFpbGFibGVQYWdlPgorICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IkFpck9BUlAubm90YXRpb24jX0dxSFdrSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICA8L2F2YWlsYWJsZVBhZ2U+CisgICAgPGF2YWlsYWJsZVBhZ2U+CisgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iQWlyT0FSUC5ub3RhdGlvbiNfR3FIV2tuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgIDwvYXZhaWxhYmxlUGFnZT4KKyAgICA8YXZhaWxhYmxlUGFnZT4KKyAgICAgIDxlbWZQYWdlSWRlbnRpZmllciBocmVmPSJBaXJPQVJQLm5vdGF0aW9uI19HcUg5Z0hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgPC9hdmFpbGFibGVQYWdlPgorICAgIDxhdmFpbGFibGVQYWdlPgorICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IkFpck9BUlAubm90YXRpb24jX0dxSDlnblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICA8L2F2YWlsYWJsZVBhZ2U+CisgICAgPGF2YWlsYWJsZVBhZ2U+CisgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iQWlyT0FSUC5ub3RhdGlvbiNfR3FJa3YzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgIDwvYXZhaWxhYmxlUGFnZT4KKyAgICA8YXZhaWxhYmxlUGFnZT4KKyAgICAgIDxlbWZQYWdlSWRlbnRpZmllciBocmVmPSJBaXJPQVJQLm5vdGF0aW9uI19HcUpMcjNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgPC9hdmFpbGFibGVQYWdlPgorICAgIDxhdmFpbGFibGVQYWdlPgorICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IkFpck9BUlAubm90YXRpb24jX0dxSkxzWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICA8L2F2YWlsYWJsZVBhZ2U+CisgICAgPGF2YWlsYWJsZVBhZ2U+CisgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iQWlyT0FSUC5ub3RhdGlvbiNfR3FLWnduVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgIDwvYXZhaWxhYmxlUGFnZT4KKyAgICA8YXZhaWxhYmxlUGFnZT4KKyAgICAgIDxlbWZQYWdlSWRlbnRpZmllciBocmVmPSJBaXJPQVJQLm5vdGF0aW9uI19HcUtaMzNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgPC9hdmFpbGFibGVQYWdlPgorICAgIDxhdmFpbGFibGVQYWdlPgorICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IkFpck9BUlAubm90YXRpb24jX0dxS1o0WFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICA8L2F2YWlsYWJsZVBhZ2U+CisgICAgPGF2YWlsYWJsZVBhZ2U+CisgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iQWlyT0FSUC5ub3RhdGlvbiNfR3FMQTBIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgIDwvYXZhaWxhYmxlUGFnZT4KKyAgICA8YXZhaWxhYmxlUGFnZT4KKyAgICAgIDxlbWZQYWdlSWRlbnRpZmllciBocmVmPSJBaXJPQVJQLm5vdGF0aW9uI19HcUxuNEhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgPC9hdmFpbGFibGVQYWdlPgorICAgIDxhdmFpbGFibGVQYWdlPgorICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IkFpck9BUlAubm90YXRpb24jX0dxTG9MSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICA8L2F2YWlsYWJsZVBhZ2U+CisgICAgPGF2YWlsYWJsZVBhZ2U+CisgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iQWlyT0FSUC5ub3RhdGlvbiNfR3FNTzhIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgIDwvYXZhaWxhYmxlUGFnZT4KKyAgPC9wYWdlTGlzdD4KKyAgPHNhc2hNb2RlbCBjdXJyZW50U2VsZWN0aW9uPSIvL0BzYXNoTW9kZWwvQHdpbmRvd3MuMC9AY2hpbGRyZW4uMCI+CisgICAgPHdpbmRvd3M+CisgICAgICA8Y2hpbGRyZW4geHNpOnR5cGU9ImRpOlRhYkZvbGRlciI+CisgICAgICAgIDxjaGlsZHJlbj4KKyAgICAgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iQWlyT0FSUC5ub3RhdGlvbiNfR3FJa3YzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4+CisgICAgICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IkFpck9BUlAubm90YXRpb24jX0dxS1p3blV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuPgorICAgICAgICAgIDxlbWZQYWdlSWRlbnRpZmllciBocmVmPSJBaXJPQVJQLm5vdGF0aW9uI19HcUg5Z25Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbj4KKyAgICAgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iQWlyT0FSUC5ub3RhdGlvbiNfR3FIV2tuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4+CisgICAgICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IkFpck9BUlAubm90YXRpb24jX0dxR0lVblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuPgorICAgICAgICAgIDxlbWZQYWdlSWRlbnRpZmllciBocmVmPSJBaXJPQVJQLm5vdGF0aW9uI19HcUd2WUhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbj4KKyAgICAgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iQWlyT0FSUC5ub3RhdGlvbiNfR3FGaGIzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4+CisgICAgICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IkFpck9BUlAubm90YXRpb24jX0dxR0lVSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuPgorICAgICAgICAgIDxlbWZQYWdlSWRlbnRpZmllciBocmVmPSJBaXJPQVJQLm5vdGF0aW9uI19HcU1POEhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbj4KKyAgICAgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iQWlyT0FSUC5ub3RhdGlvbiNfR3FMbjRIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4+CisgICAgICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IkFpck9BUlAubm90YXRpb24jX0dxTG9MSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuPgorICAgICAgICAgIDxlbWZQYWdlSWRlbnRpZmllciBocmVmPSJBaXJPQVJQLm5vdGF0aW9uI19HcUtaNFhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbj4KKyAgICAgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iQWlyT0FSUC5ub3RhdGlvbiNfR3FMQTBIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4+CisgICAgICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IkFpck9BUlAubm90YXRpb24jX0dxSkxzWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgPC93aW5kb3dzPgorICA8L3Nhc2hNb2RlbD4KKzwvZGk6U2FzaFdpbmRvd3NNbmdyPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9yZXNvdXJjZS9BaXJPQVJQLm5vdGF0aW9uIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9yZXNvdXJjZS9BaXJPQVJQLm5vdGF0aW9uCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJhZDUzMzIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3Jlc291cmNlL0Fpck9BUlAubm90YXRpb24KQEAgLTAsMCArMSwyNjI4IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHhtaTpYTUkgeG1pOnZlcnNpb249IjIuMCIgeG1sbnM6eG1pPSJodHRwOi8vd3d3Lm9tZy5vcmcvWE1JIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczpjb25maWd1cmF0aW9uPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3BhcHlydXMvaW5mcmEvdmlld3BvaW50cy9jb25maWd1cmF0aW9uIiB4bWxuczplY29yZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSIgeG1sbnM6bm90YXRpb249Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZ21mL3J1bnRpbWUvMS4wLjIvbm90YXRpb24iIHhtbG5zOnN0eWxlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3BhcHlydXMvaW5mcmEvdmlld3BvaW50cy9wb2xpY3kvc3R5bGUiIHhtbG5zOnVtbD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCI+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX0dxRmhiM1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IkNvbXBvc2l0ZVN0cnVjdHVyZSIgbmFtZT0iQmlnQ29tcG9uZW50cyIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FGaGNIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FGaGNYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxRmhjblV3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxRmhjM1V3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxRmhkSFV3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FGaGRYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUZoZG5Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxRmhkM1V3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUZoZUhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUZoZVhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6Um9ib3RpY1NpbXVsYXRvciIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxRmhlblV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUZoZTNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FGaGZIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxRmhmWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfR3FGaGZuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0dxRmhmM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FGaGdIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlQlhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUZoZ1hVd0VlS3RrcGQ2VzRCUDVnIiB4PSIxMCIgeT0iNSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FGaGduVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FGaGczVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxRmhoSFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxRmhoWFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxRmhoblV3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FGaGgzVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUZoaUhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FGaGlYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9HcUZoaW5Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfR3FGaGkzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUZoakhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VEblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxRmhqWFV3RWVLdGtwZDZXNEJQNWciIHg9IjEwIiB5PSIxMTUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxRmhqblV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjIwNzMiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxRmhqM1V3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUZoa0hVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUZoa1hVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUZoa25Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxRmhrM1V3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FGaGxIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxRmhsWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfR3FGaGxuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0dxRmhsM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FGaG1IVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlRFhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUZobVhVd0VlS3RrcGQ2VzRCUDVnIiB4PSIxMCIgeT0iMjIwIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUZobW5Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIyMTA5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUZobTNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FGaG5IVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FGaG5YVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FGaG5uVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUZobjNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxRmhvSFV3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUZob1hVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTkyIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIGhyZWY9IkFpck9BUlAudW1sI19HcUNkOVhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUZob25Vd0VlS3RrcGQ2VzRCUDVnIiB4PSIyMTAiIHk9IjIyNSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FGaG8zVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMjEwOSIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FGaHBIVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxRmhwWFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxRmhwblV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxRmhwM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FGaHFIVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUZocVhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FGaHFuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTE5MiIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZDluVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FGaHEzVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjEwIiB5PSIxMTUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfR3FGaHJIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX1JSOTljSDdMRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IkFpck9BUlAudW1sI19HcUNkOEhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBreldCZkxfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZDhIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9HcUZoclhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI0MDAyIiBzb3VyY2U9Il9HcUZobW5Vd0VlS3RrcGQ2VzRCUDVnIiB0YXJnZXQ9Il9HcUZoam5Vd0VlS3RrcGQ2VzRCUDVnIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9HcUZocm5Vd0VlS3RrcGQ2VzRCUDVnIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIvPgorICAgICAgPGVsZW1lbnQgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfR3FGaHIzVXdFZUt0a3BkNlc0QlA1ZyIgcG9pbnRzPSJbMCwgMCwgMTUwLCAtNl0kWy0xNTEsIDU2LCAtMSwgNTBdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfR3FGaHNIVXdFZUt0a3BkNlc0QlA1ZyIgaWQ9IigwLjAsMC4zOSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9HcUZoc1hVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI0MDAyIiBzb3VyY2U9Il9HcUZobzNVd0VlS3RrcGQ2VzRCUDVnIiB0YXJnZXQ9Il9HcUZoZ25Vd0VlS3RrcGQ2VzRCUDVnIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9HcUZoc25Vd0VlS3RrcGQ2VzRCUDVnIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIvPgorICAgICAgPGVsZW1lbnQgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfR3FGaHMzVXdFZUt0a3BkNlc0QlA1ZyIgcG9pbnRzPSJbMCwgMCwgMTE2LCAtOV0kWy00MCwgMCwgNzYsIC05XSRbLTk1LCAwLCAyMSwgLTldIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfR3FGaHRIVXdFZUt0a3BkNlc0QlA1ZyIgaWQ9IigwLjAzNjgwOTgxNTk1MDkyMDI1LDAuNjcpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfR3FGaHRYVXdFZUt0a3BkNlc0QlA1ZyIgaWQ9IigwLjc5LDAuNzQpIi8+CisgICAgPC9lZGdlcz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9HcUdJVUhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSJQYXB5cnVzVU1MQ2xhc3NEaWFncmFtIiBuYW1lPSJST1NEYXRhVHlwZXMiIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfR3FHSVVYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX1JSOTljWDdMRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IkFpck9BUlAudW1sI19HcUNkOEhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBreldDdkxfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZDhIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX0dxR0lVblV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IkNvbXBvc2l0ZVN0cnVjdHVyZSIgbmFtZT0iU2Vuc29yQWN0dWF0b3JDb21wb25lbnRzIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUdJVTNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIyMDczIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdJVkhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSVZYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FHSVZuVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSVYzVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdJV0hVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0lXWFV3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FHSVduVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0lXM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0lYSFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpBY3R1YXRvclN5c3RlbSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0lYWFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSVhuVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0lYM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUdJWUhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0dxR0lZWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjcwNzMiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HcUdJWW5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxR0lZM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUdJWkhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxR0laWFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0lablV3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdJWjNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0lhSFV3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxR0lhWFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJYW5Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdJYTNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJYkhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0liWFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0liblV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJYjNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJY0hVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxR0ljWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FHSWNuVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FHSWMzVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUdJZEhVd0VlS3RrcGQ2VzRCUDVnIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VESFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FHSWRYVXdFZUt0a3BkNlc0QlA1ZyIgeD0iLTEwIiB5PSI1NSIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VDM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxR0lkblV3RWVLdGtwZDZXNEJQNWciIHg9IjM1IiB5PSIxMjUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxR0lkM1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjIwNzMiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxR0llSFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJZVhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdJZW5Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJZTNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxR0lmSFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSWZYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdJZm5Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSWYzVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSWdIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkNhbWVyYVN5c3RlbSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0lnWFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSWduVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0lnM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUdJaEhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0dxR0loWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjcwNzMiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HcUdJaG5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxR0loM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUdJaUhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxR0lpWFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0lpblV3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdJaTNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0lqSFV3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxR0lqWFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJam5Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdJajNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJa0hVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0lrWFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0lrblV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJazNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJbEhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxR0lsWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FHSWxuVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FHSWwzVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUdJbUhVd0VlS3RrcGQ2VzRCUDVnIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VBM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FHSW1YVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMTEyIiB5PSI3MCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FHSW1uVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdJbTNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJbkhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FHSW5YVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJbm5Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdJbjNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSW9IVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FHSW9YVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSW9uVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJbzNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJcEhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSXBYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSXBuVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUdJcDNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxR0lxSFV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxR0lxWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FHSXFuVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlQkhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxR0lxM1V3RWVLdGtwZDZXNEJQNWciIHg9IjExMiIgeT0iNDUiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlQW5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUdJckhVd0VlS3RrcGQ2VzRCUDVnIiB4PSIyMjUiIHk9IjE1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUdJclhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIyMDczIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdJcm5Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSXIzVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FHSXNIVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSXNYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdJc25Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0lzM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FHSXRIVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0l0WFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0l0blV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpTZW5zb3JTeXN0ZW0iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJdDNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0l1SFV3RWVLdGtwZDZXNEJQNWciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJdVhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FHSXVuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9HcUdJdTNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfR3FHSXZIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUdJdlhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FHSXZuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdJdjNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJd0hVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FHSXdYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJd25Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdJdzNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSXhIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FHSXhYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSXhuVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJeDNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJeUhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSXlYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSXluVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUdJeTNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxR0l6SFV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxR0l6WFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FHSXpuVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlQjNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxR0l6M1V3RWVLdGtwZDZXNEJQNWciIHg9Ijk5IiB5PSI1NSIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VCblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxR0kwSFV3RWVLdGtwZDZXNEJQNWciIHg9IjIyNSIgeT0iMTIwIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUdJMFhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIyMDczIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdJMG5Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSTAzVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FHSTFIVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSTFYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdJMW5Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0kxM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FHSTJIVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0kyWFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0kyblV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpHUFNTeXN0ZW0iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJMjNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0kzSFV3RWVLdGtwZDZXNEJQNWciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJM1hVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FHSTNuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9HcUdJMzNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfR3FHSTRIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUdJNFhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FHSTRuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdJNDNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJNUhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FHSTVYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJNW5Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdJNTNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSTZIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FHSTZYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSTZuVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJNjNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdJN0hVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSTdYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSTduVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUdJNzNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxR0k4SFV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxR0k4WFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FHSThuVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlQ1hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxR0k4M1V3RWVLdGtwZDZXNEJQNWciIHg9IjkwIiB5PSI2MCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VDSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxR0k5SFV3RWVLdGtwZDZXNEJQNWciIHg9IjIyNSIgeT0iMjI1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUdJOVhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIyMTA5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdJOW5Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSTkzVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FHSS1IVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSS1YVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdJLW5Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0ktM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUdJX0hVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTkyIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIGhyZWY9IkFpck9BUlAudW1sI19HcUNkOUhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUdJX1hVd0VlS3RrcGQ2VzRCUDVnIiB4PSI1MDAiIHk9IjQwIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUdJX25Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIyMTA5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdJXzNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSkFIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FHSkFYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSkFuVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdKQTNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0pCSFV3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUdKQlhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTkyIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIGhyZWY9IkFpck9BUlAudW1sI19HcUNkOTNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUdKQm5Vd0VlS3RrcGQ2VzRCUDVnIiB4PSI1NSIgeT0iMzUiIGhlaWdodD0iNDEiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxR0pCM1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjIxMDkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxR0pDSFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdKQ1hVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdKQ25Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUdKQzNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxR0pESFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSkRYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxR0pEblV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUxOTIiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2QtSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxR0pEM1V3RWVLdGtwZDZXNEJQNWciIHg9IjUwMCIgeT0iMTQ1IiBoZWlnaHQ9IjQxIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUdKRUhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIyMTA5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdKRVhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSkVuVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FHSkUzVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHSkZIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUdKRlhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR0pGblV3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUdKRjNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTkyIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIGhyZWY9IkFpck9BUlAudW1sI19HcUNkLVhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUdKR0hVd0VlS3RrcGQ2VzRCUDVnIiB4PSI1MDAiIHk9IjIxNSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9HcUdKR1hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfUlI5OWNuN0xFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2Q4SFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0JmTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IkFpck9BUlAudW1sI19HcUNkOEhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX0dxR0pHblV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjQwMDIiIHNvdXJjZT0iX0dxR0k5WFV3RWVLdGtwZDZXNEJQNWciIHRhcmdldD0iX0dxR0lkM1V3RWVLdGtwZDZXNEJQNWciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX0dxR0pHM1V3RWVLdGtwZDZXNEJQNWciIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIi8+CisgICAgICA8ZWxlbWVudCB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9HcUdKSEhVd0VlS3RrcGQ2VzRCUDVnIiBwb2ludHM9IlswLCA1LCAxODksIDBdJFstMTg0LCAxMiwgNSwgN10iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9HcUdKSFhVd0VlS3RrcGQ2VzRCUDVnIiBpZD0iKDAuMCwwLjY2KSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX0dxR0pIblV3RWVLdGtwZDZXNEJQNWciIGlkPSIoMC45NzU0MDk4MzYwNjU1NzM3LDAuOTYpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfR3FHSkgzVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNDAwMiIgc291cmNlPSJfR3FHSV9uVXdFZUt0a3BkNlc0QlA1ZyIgdGFyZ2V0PSJfR3FHSVUzVXdFZUt0a3BkNlc0QlA1ZyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfR3FHSklIVXdFZUt0a3BkNlc0QlA1ZyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiLz4KKyAgICAgIDxlbGVtZW50IHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX0dxR0pJWFV3RWVLdGtwZDZXNEJQNWciIHBvaW50cz0iWy0yLCAwLCAwLCAtNTZdJFszLCA0OSwgNSwgLTddIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfR3FHSkluVXdFZUt0a3BkNlc0QlA1ZyIgaWQ9IigwLjc5LDEuMCkiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9HcUdKSTNVd0VlS3RrcGQ2VzRCUDVnIiBpZD0iKDAuNzQwNDU4MDE1MjY3MTc1NiwwLjA3KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX0dxR0pKSFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjQwMDIiIHNvdXJjZT0iX0dxR0pCM1V3RWVLdGtwZDZXNEJQNWciIHRhcmdldD0iX0dxR0lyWFV3RWVLdGtwZDZXNEJQNWciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX0dxR0pKWFV3RWVLdGtwZDZXNEJQNWciIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIi8+CisgICAgICA8ZWxlbWVudCB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9HcUdKSm5Vd0VlS3RrcGQ2VzRCUDVnIiBwb2ludHM9IlswLCAwLCAxNjksIDExXSRbLTE2NiwgLTEyLCAzLCAtMV0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9HcUdKSjNVd0VlS3RrcGQ2VzRCUDVnIiBpZD0iKDAuMCwwLjYzNDE0NjM0MTQ2MzQxNDYpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfR3FHSktIVXdFZUt0a3BkNlc0QlA1ZyIgaWQ9IigwLjk3MjQ3NzA2NDIyMDE4MzUsMC40NSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9HcUdKS1hVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI0MDAyIiBzb3VyY2U9Il9HcUdKRUhVd0VlS3RrcGQ2VzRCUDVnIiB0YXJnZXQ9Il9HcUdJMFhVd0VlS3RrcGQ2VzRCUDVnIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9HcUdKS25Vd0VlS3RrcGQ2VzRCUDVnIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIvPgorICAgICAgPGVsZW1lbnQgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfR3FHSkszVXdFZUt0a3BkNlc0QlA1ZyIgcG9pbnRzPSJbMCwgMCwgMTk0LCAtMTZdJFstMTc1LCAxNCwgMTksIC0yXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX0dxR0pMSFV3RWVLdGtwZDZXNEJQNWciIGlkPSIoMC4wLDAuNTEpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfR3FHSkxYVXdFZUt0a3BkNlc0QlA1ZyIgaWQ9IigwLjgxLDAuNDcpIi8+CisgICAgPC9lZGdlcz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9HcUd2WUhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSJDb21wb3NpdGVTdHJ1Y3R1cmUiIG5hbWU9IkNvbnRyb2xDb21wb25lbnQiIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxR3ZZWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjIwNzMiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxR3ZZblV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUd2WTNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUd2WkhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUd2WlhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxR3ZablV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHdlozVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUd2YUhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHdmFYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHdmFuVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlJvYm90aWNTeXN0ZW0iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUd2YTNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR3ZiSFV3RWVLdGtwZDZXNEJQNWciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUd2YlhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FHdmJuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9HcUd2YjNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfR3FHdmNIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUd2Y1hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FHdmNuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUd2YzNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUd2ZEhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FHdmRYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUd2ZG5Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUd2ZDNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHdmVIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FHdmVYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHdmVuVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUd2ZTNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUd2ZkhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHdmZYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHdmZuVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUd2ZjNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxR3ZnSFV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxR3ZnWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FHdmduVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlSFhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxR3ZnM1V3RWVLdGtwZDZXNEJQNWciIHg9Ii0xMCIgeT0iNTIiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxR3ZoSFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FHdmhYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHdmhuVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxR3ZoM1V3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHdmlIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FHdmlYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR3ZpblV3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxR3ZpM1V3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR3ZqSFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHdmpYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FHdmpuVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR3ZqM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxR3ZrSFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FHdmtYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUd2a25Vd0VlS3RrcGQ2VzRCUDVnIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUd2azNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxR3ZsSFV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZUhuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUd2bFhVd0VlS3RrcGQ2VzRCUDVnIiB4PSItMTAiIHk9IjgwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUd2bG5Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUd2bDNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUd2bUhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FHdm1YVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUd2bW5Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUd2bTNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIV2NIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FIV2NYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIV2NuVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUhXYzNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6U2VydmljZVBvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSFdkSFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUhXZFhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUhXZG5Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSFdkM1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FIV2VIVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FIV2VYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUhXZW5Vd0VlS3RrcGQ2VzRCUDVnIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VIM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FIV2UzVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUxIiB5PSI1MiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VISFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxSFdmSFV3RWVLdGtwZDZXNEJQNWciIHg9IjIzNiIgeT0iMTQwIiB3aWR0aD0iMjYxIiBoZWlnaHQ9IjE5MyIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FIV2ZYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FIV2ZuVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSFdmM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSFdnSFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSFdnWFV3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FIV2duVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUhXZzNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSFdoSFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUhXaFhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUhXaG5Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6Um9ib3RpY01pZGRsZXdhcmUiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUhXaDNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIV2lIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSFdpWFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUhXaW5Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0dxSFdpM1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjcwNzMiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HcUhXakhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxSFdqWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZUFYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FIV2puVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMTYiIHk9IjE2Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX0dxSFdqM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJzdHlsZTpQYXB5cnVzVmlld1N0eWxlIiB4bWk6aWQ9Il9SUjk5YzM3TEVlU0Z5TmJuTFlEQ2t3Ij4KKyAgICAgIDxvd25lciB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZDhIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3pXQmZMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2Q4SFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9HcUhXa0hVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSJDb21wb3NpdGVTdHJ1Y3R1cmUiIG5hbWU9IlJvc0FyY2hpdGVjdHVyZSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9HcUhXa1hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfUlI5OWRIN0xFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VISFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0FQTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlSEhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfR3FIV2tuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJBdmlvbmljQ29ubmVjdGlvbiIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FIV2szVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FIV2xIVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSFdsWFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSFdsblV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSFdsM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FIV21IVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUhXbVhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSFdtblV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUhXbTNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUhXbkhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6Um9ib3RpY1N5c3RlbSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSFduWFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIV25uVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSFduM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUhXb0hVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0dxSFdvWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjcwNzMiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUhXb25Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FIV28zVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUhXcEhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSFdwWFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUhXcG5Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FIV3AzVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIV3FIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FIV3FYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfR3FIV3FuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HcUhXcTNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUhXckhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUhXclhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUhXcm5Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIV3IzVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FIV3NIVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIV3NYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUhXc25Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSFdzM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUhXdEhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUhXdFhVd0VlS3RrcGQ2VzRCUDVnIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSFd0blV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSFd0M1V3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlQjNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUhXdUhVd0VlS3RrcGQ2VzRCUDVnIiB4PSIxNDYiIHk9IjUwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZUxuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxSFd1WFV3RWVLdGtwZDZXNEJQNWciIHg9IjUiIHk9IjIiIHdpZHRoPSIxNTYiIGhlaWdodD0iMTAxIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxSFd1blV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUhXdTNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSFd2SFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FIV3ZYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSFd2blV3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUhXdjNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUhXd0hVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUhXd1hVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9HcUhXd25Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0dxSFd3M1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxSFd4SFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxSFd4WFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSFd4blV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUhXeDNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUhXeUhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUhXeVhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSFd5blV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIV3kzVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSFd6SFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSFd6WFV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FIV3puVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FIV3ozVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VFWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxSFcwSFV3RWVLdGtwZDZXNEJQNWciIHg9Ii0xMCIgeT0iMjUiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxSFcwWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSFcwblV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUhXMDNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUhXMUhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUhXMVhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSFcxblV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIVzEzVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSFcySFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSFcyWFV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FIVzJuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FIVzIzVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VFSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxSFczSFV3RWVLdGtwZDZXNEJQNWciIHg9Ii0xMCIgeT0iNjYiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxSFczWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSFczblV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUhXMzNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUhXNEhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUhXNFhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSFc0blV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIVzQzVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSFc1SFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSFc1WFV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FIVzVuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FIVzUzVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VFblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxSFc2SFV3RWVLdGtwZDZXNEJQNWciIHg9IjEzNyIgeT0iNDUiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlTDNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FIVzZYVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMTk1IiB5PSI4MCIgd2lkdGg9IjE0NyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUhXNm5Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FIVzYzVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUhXN0hVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSFc3WFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUhXN25Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FIVzczVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIVzhIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FIVzhYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfR3FIVzhuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HcUhXODNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUhXOUhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUhXOVhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUhXOW5Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIVzkzVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FIVy1IVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIVy1YVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUhXLW5Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSFctM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUhXX0hVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUhXX1hVd0VlS3RrcGQ2VzRCUDVnIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSFdfblV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSFdfM1V3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlQ1hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUhYQUhVd0VlS3RrcGQ2VzRCUDVnIiB4PSIxNDEiIHk9IjMwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZU1IVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxSFhBWFV3RWVLdGtwZDZXNEJQNWciIHg9IjUiIHk9IjE1NSIgd2lkdGg9IjE1MSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUhYQW5Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FIWEEzVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUhYQkhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSFhCWFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUhYQm5Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FIWEIzVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIWENIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FIWENYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfR3FIWENuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HcUhYQzNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUhYREhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUhYRFhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUhYRG5Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIWEQzVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FIWEVIVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIWEVYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUhYRW5Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSFhFM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUhYRkhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUhYRlhVd0VlS3RrcGQ2VzRCUDVnIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSFhGblV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSFhGM1V3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlREhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUhYR0hVd0VlS3RrcGQ2VzRCUDVnIiB4PSItMTAiIHk9IjQwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZU1YVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxSFhHWFV3RWVLdGtwZDZXNEJQNWciIHg9IjM4MCIgeT0iMTU1IiB3aWR0aD0iMTk2Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0dxSFhHblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FIWEczVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlTFhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUhYSEhVd0VlS3RrcGQ2VzRCUDVnIiB4PSIyMCIgeT0iMTAiIHdpZHRoPSI1OTYiIGhlaWdodD0iMzExIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX0dxSFhIWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJzdHlsZTpQYXB5cnVzVmlld1N0eWxlIiB4bWk6aWQ9Il9SUjk5ZFg3TEVlU0Z5TmJuTFlEQ2t3Ij4KKyAgICAgIDxvd25lciB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZDhIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3pXQVBMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2Q4SFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfR3FIWEhuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNDAxMyIgc291cmNlPSJfR3FIV3JYVXdFZUt0a3BkNlc0QlA1ZyIgdGFyZ2V0PSJfR3FIV3hYVXdFZUt0a3BkNlc0QlA1ZyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSFhIM1V3RWVLdGtwZDZXNEJQNWciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUhYSUhVd0VlS3RrcGQ2VzRCUDVnIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSFhJWFV3RWVLdGtwZDZXNEJQNWciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUhYSW5Vd0VlS3RrcGQ2VzRCUDVnIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUhYSTNVd0VlS3RrcGQ2VzRCUDVnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FIWEpIVXdFZUt0a3BkNlc0QlA1ZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUhYSlhVd0VlS3RrcGQ2VzRCUDVnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FIWEpuVXdFZUt0a3BkNlc0QlA1ZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX0dxSFhKM1V3RWVLdGtwZDZXNEJQNWciIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VNblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX0dxSFhLSFV3RWVLdGtwZDZXNEJQNWciIHBvaW50cz0iWzEwLCA2LCAtOTQsIC02NF0kWzEwMywgODAsIC0xLCAxMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9HcUhYS1hVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9HcUhXOVhVd0VlS3RrcGQ2VzRCUDVnIiB0YXJnZXQ9Il9HcUhXMFhVd0VlS3RrcGQ2VzRCUDVnIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FIWEtuVXdFZUt0a3BkNlc0QlA1ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSFhLM1V3RWVLdGtwZDZXNEJQNWciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FIWExIVXdFZUt0a3BkNlc0QlA1ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSFhMWFV3RWVLdGtwZDZXNEJQNWciIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSFhMblV3RWVLdGtwZDZXNEJQNWciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUhYTDNVd0VlS3RrcGQ2VzRCUDVnIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSFhNSFV3RWVLdGtwZDZXNEJQNWciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUhYTVhVd0VlS3RrcGQ2VzRCUDVnIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfR3FIWE1uVXdFZUt0a3BkNlc0QlA1ZyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZU9YVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfR3FIWE0zVXdFZUt0a3BkNlc0QlA1ZyIgcG9pbnRzPSJbNCwgMCwgLTE2NCwgLTE1XSRbMTU4LCAxNSwgLTEwLCAwXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX0dxSFhOSFV3RWVLdGtwZDZXNEJQNWciIGlkPSIoMC44LDAuNDUpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfR3FIWE5YVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNDAxMyIgc291cmNlPSJfR3FIVzNYVXdFZUt0a3BkNlc0QlA1ZyIgdGFyZ2V0PSJfR3FIWERYVXdFZUt0a3BkNlc0QlA1ZyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSFhOblV3RWVLdGtwZDZXNEJQNWciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUhYTjNVd0VlS3RrcGQ2VzRCUDVnIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSFhPSFV3RWVLdGtwZDZXNEJQNWciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUhYT1hVd0VlS3RrcGQ2VzRCUDVnIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUhYT25Vd0VlS3RrcGQ2VzRCUDVnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FIWE8zVXdFZUt0a3BkNlc0QlA1ZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUhYUEhVd0VlS3RrcGQ2VzRCUDVnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FIWFBYVXdFZUt0a3BkNlc0QlA1ZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX0dxSFhQblV3RWVLdGtwZDZXNEJQNWciIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VRSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX0dxSFhQM1V3RWVLdGtwZDZXNEJQNWciIHBvaW50cz0iWzksIDEwLCAtNTksIC02MF0kWzU4LCA3MCwgLTEwLCAwXSIvPgorICAgIDwvZWRnZXM+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfR3FIOWdIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJDYW1lcmFDb25uZWN0aW9uRGlhZ3JhbSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9HcUg5Z1hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfUlI5OWRuN0xFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VMWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0FQTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlTFhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfR3FIOWduVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJDYW1lcmFDb25uZWN0aW9uIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUg5ZzNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIyMDczIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUg5aEhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIOWhYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FIOWhuVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIOWgzVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUg5aUhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSDlpWFV3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FIOWluVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSDlpM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSDlqSFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpSb2JvdGljU3lzdGVtIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIOWpYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUg5am5Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIOWozVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSDlrSFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfR3FIOWtYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxSDlrblV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUg5azNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSDlsSFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FIOWxYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSDlsblV3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUg5bDNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUg5bUhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUg5bVhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9HcUg5bW5Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0dxSDltM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxSDluSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxSDluWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSDlublV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUg5bjNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUg5b0hVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUg5b1hVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSDlvblV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIOW8zVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSDlwSFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSDlwWFV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FIOXBuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FIOXAzVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VBM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxSDlxSFV3RWVLdGtwZDZXNEJQNWciIHg9IjIyNiIgeT0iNDAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxSDlxWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSDlxblV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUg5cTNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUg5ckhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUg5clhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSDlyblV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIOXIzVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSDlzSFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSDlzWFV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FIOXNuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FIOXMzVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VCSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxSDl0SFV3RWVLdGtwZDZXNEJQNWciIHg9IjIyNiIgeT0iNzAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlU0hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FIOXRYVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMTAiIHk9IjUiIHdpZHRoPSIyMzYiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FIOXRuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzA3MCIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSDl0M1V3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIOXVIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUg5dVhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FIOXVuVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSDl1M1V3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSDl2SFV3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSDl2WFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0dxSDl2blV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfR3FIOXYzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FIOXdIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FIOXdYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FIOXduVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSDl3M1V3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSDl4SFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSWtrSFV3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FJa2tYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUlra25Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FJa2szVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FJa2xIVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUlrbFhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUlrbG5Vd0VlS3RrcGQ2VzRCUDVnIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZUYzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FJa2wzVXdFZUt0a3BkNlc0QlA1ZyIgeD0iLTEwIiB5PSIzMSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FJa21IVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FJa21YVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSWttblV3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSWttM1V3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSWtuSFV3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FJa25YVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUlrbm5Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FJa24zVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FJa29IVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUlrb1hVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUlrb25Vd0VlS3RrcGQ2VzRCUDVnIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZUdIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FJa28zVXdFZUt0a3BkNlc0QlA1ZyIgeD0iLTEwIiB5PSI2MCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VTWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUlrcEhVd0VlS3RrcGQ2VzRCUDVnIiB4PSIzMzUiIHk9IjE0MCIgd2lkdGg9IjI2MSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HcUlrcFhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxSWtwblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZVIzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FJa3AzVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMTAiIHk9IjE1IiB3aWR0aD0iNjExIiBoZWlnaHQ9IjMwMSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9HcUlrcUhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfUlI5OWQzN0xFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2Q4SFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0FQTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IkFpck9BUlAudW1sI19HcUNkOEhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX0dxSWtxWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjQwMTMiIHNvdXJjZT0iX0dxSDluWFV3RWVLdGtwZDZXNEJQNWciIHRhcmdldD0iX0dxSDl3WFV3RWVLdGtwZDZXNEJQNWciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUlrcW5Vd0VlS3RrcGQ2VzRCUDVnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FJa3EzVXdFZUt0a3BkNlc0QlA1ZyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUlrckhVd0VlS3RrcGQ2VzRCUDVnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FJa3JYVXdFZUt0a3BkNlc0QlA1ZyIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FJa3JuVXdFZUt0a3BkNlc0QlA1ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSWtyM1V3RWVLdGtwZDZXNEJQNWciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FJa3NIVXdFZUt0a3BkNlc0QlA1ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSWtzWFV3RWVLdGtwZDZXNEJQNWciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9HcUlrc25Vd0VlS3RrcGQ2VzRCUDVnIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlU25Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9HcUlrczNVd0VlS3RrcGQ2VzRCUDVnIiBwb2ludHM9Ils2LCAxMCwgLTc4LCAtMTA2XSRbNzksIDEwNiwgLTUsIC0xMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9HcUlrdEhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9HcUg5cVhVd0VlS3RrcGQ2VzRCUDVnIiB0YXJnZXQ9Il9HcUlrbUhVd0VlS3RrcGQ2VzRCUDVnIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FJa3RYVXdFZUt0a3BkNlc0QlA1ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSWt0blV3RWVLdGtwZDZXNEJQNWciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FJa3QzVXdFZUt0a3BkNlc0QlA1ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSWt1SFV3RWVLdGtwZDZXNEJQNWciIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSWt1WFV3RWVLdGtwZDZXNEJQNWciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUlrdW5Vd0VlS3RrcGQ2VzRCUDVnIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSWt1M1V3RWVLdGtwZDZXNEJQNWciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUlrdkhVd0VlS3RrcGQ2VzRCUDVnIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfR3FJa3ZYVXdFZUt0a3BkNlc0QlA1ZyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZVVYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfR3FJa3ZuVXdFZUt0a3BkNlc0QlA1ZyIgcG9pbnRzPSJbNiwgMTAsIC03OCwgLTEwNV0kWzc5LCAxMjUsIC01LCAxMF0iLz4KKyAgICA8L2VkZ2VzPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX0dxSWt2M1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IkNvbXBvc2l0ZVN0cnVjdHVyZSIgbmFtZT0iUk1heEhhcmR3YXJlQXJjaGl0ZWN0dXJlIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUlrd0hVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIyMDczIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUlrd1hVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FJa3duVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FJa3czVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FJa3hIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUlreFhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSWt4blV3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FJa3gzVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSWt5SFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSWt5WFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpSb2JvdGljU3lzdGVtIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FJa3luVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUlreTNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FJa3pIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSWt6WFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfR3FJa3puVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxSWt6M1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUlrMEhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSWswWFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FJazBuVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSWswM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUlrMUhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUlrMVhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUlrMW5Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9HcUlrMTNVd0VlS3RrcGQ2VzRCUDVnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HcUlrMkhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUlrMlhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZVhuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxSWsyblV3RWVLdGtwZDZXNEJQNWciIHg9IjE1IiB5PSI1IiB3aWR0aD0iMTYxIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxSWsyM1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUlrM0hVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSWszWFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FJazNuVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSWszM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUlrNEhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUlrNFhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUlrNG5Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9HcUlrNDNVd0VlS3RrcGQ2VzRCUDVnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HcUlrNUhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUlrNVhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZVlIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxSWs1blV3RWVLdGtwZDZXNEJQNWciIHg9IjMzMCIgeT0iNSIgd2lkdGg9IjIzNSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUlrNTNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FJazZIVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUlrNlhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSWs2blV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUlrNjNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FJazdIVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FJazdYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FJazduVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfR3FJazczVXdFZUt0a3BkNlc0QlA1ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfR3FJazhIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FJazhYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VZWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUlrOG5Vd0VlS3RrcGQ2VzRCUDVnIiB4PSIxNSIgeT0iMTUwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxSWs4M1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUlrOUhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSWs5WFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FJazluVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSWs5M1V3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUlrLUhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUlrLVhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUlrLW5Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9HcUlrLTNVd0VlS3RrcGQ2VzRCUDVnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HcUlrX0hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUlrX1hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZVluVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxSWtfblV3RWVLdGtwZDZXNEJQNWciIHg9IjIxNiIgeT0iMTUwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxSWtfM1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUlsQUhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSWxBWFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FJbEFuVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSWxBM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUlsQkhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUlsQlhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUlsQm5Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9HcUlsQjNVd0VlS3RrcGQ2VzRCUDVnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HcUlsQ0hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUlsQ1hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZVkzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxSWxDblV3RWVLdGtwZDZXNEJQNWciIHg9IjM3NSIgeT0iMTUwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0dxSWxDM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FJbERIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlV0hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUlsRFhVd0VlS3RrcGQ2VzRCUDVnIiB4PSI1IiB5PSIxNSIgd2lkdGg9IjY4NiIgaGVpZ2h0PSIzMTEiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfR3FJbERuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX1JSOTllSDdMRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IkFpck9BUlAudW1sI19HcUNkOEhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBreldBUExfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZDhIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9HcUlsRDNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9HcUlrMjNVd0VlS3RrcGQ2VzRCUDVnIiB0YXJnZXQ9Il9HcUlrejNVd0VlS3RrcGQ2VzRCUDVnIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FJbEVIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FJbEVYVXdFZUt0a3BkNlc0QlA1ZyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUlsRW5Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUlsRTNVd0VlS3RrcGQ2VzRCUDVnIiB4PSItMTAiIHk9IjI3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FJbEZIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FJbEZYVXdFZUt0a3BkNlc0QlA1ZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUlsRm5Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUlsRjNVd0VlS3RrcGQ2VzRCUDVnIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfR3FJbEdIVXdFZUt0a3BkNlc0QlA1ZyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZVpIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfR3FJbEdYVXdFZUt0a3BkNlc0QlA1ZyIgcG9pbnRzPSJbLTExNywgOSwgODYsIC04XSRbLTE3MiwgMjcsIDMxLCAxMF0iLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9HcUlsR25Vd0VlS3RrcGQ2VzRCUDVnIiBpZD0iKDAuODk0NDA5OTM3ODg4MTk4OCwwLjU1KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX0dxSWxHM1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjQwMTMiIHNvdXJjZT0iX0dxSWs1M1V3RWVLdGtwZDZXNEJQNWciIHRhcmdldD0iX0dxSWt6M1V3RWVLdGtwZDZXNEJQNWciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUlsSEhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUlsSFhVd0VlS3RrcGQ2VzRCUDVnIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSWxIblV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSWxIM1V3RWVLdGtwZDZXNEJQNWciIHg9Ii0xMSIgeT0iMzYiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUlsSUhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUlsSVhVd0VlS3RrcGQ2VzRCUDVnIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSWxJblV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSWxJM1V3RWVLdGtwZDZXNEJQNWciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9HcUlsSkhVd0VlS3RrcGQ2VzRCUDVnIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlYTNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9HcUlsSlhVd0VlS3RrcGQ2VzRCUDVnIiBwb2ludHM9IlstOSwgLTUwLCA4LCA5NV0kWy05LCAtOTUsIDgsIDUwXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX0dxSWxKblV3RWVLdGtwZDZXNEJQNWciIGlkPSIoMC40MzA3NjkyMzA3NjkyMzA4LDAuMDMpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfR3FJbEozVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNDAxMyIgc291cmNlPSJfR3FJazgzVXdFZUt0a3BkNlc0QlA1ZyIgdGFyZ2V0PSJfR3FJa3ozVXdFZUt0a3BkNlc0QlA1ZyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSWxLSFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSWxLWFV3RWVLdGtwZDZXNEJQNWciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FJbEtuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FJbEszVXdFZUt0a3BkNlc0QlA1ZyIgeD0iNDAiIHk9Ii0xNyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSWxMSFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSWxMWFV3RWVLdGtwZDZXNEJQNWciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FJbExuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FJbEwzVXdFZUt0a3BkNlc0QlA1ZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX0dxSWxNSFV3RWVLdGtwZDZXNEJQNWciIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VjblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX0dxSWxNWFV3RWVLdGtwZDZXNEJQNWciIHBvaW50cz0iWzAsIC0yMywgMTc2LCA2OV0kWzAsIC01MywgMTc2LCAzOV0kWy05NSwgLTc1LCA4MSwgMTddIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfR3FKTG9IVXdFZUt0a3BkNlc0QlA1ZyIgaWQ9IigwLjM2NjY2NjY2NjY2NjY2NjY0LDAuMjMpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfR3FKTG9YVXdFZUt0a3BkNlc0QlA1ZyIgaWQ9IigwLjQ5Njg5NDQwOTkzNzg4ODIsMC43NikiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9HcUpMb25Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9HcUlrXzNVd0VlS3RrcGQ2VzRCUDVnIiB0YXJnZXQ9Il9HcUlrejNVd0VlS3RrcGQ2VzRCUDVnIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FKTG8zVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FKTHBIVXdFZUt0a3BkNlc0QlA1ZyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUpMcFhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUpMcG5Vd0VlS3RrcGQ2VzRCUDVnIiB4PSItNzkiIHk9IjE1Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FKTHAzVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FKTHFIVXdFZUt0a3BkNlc0QlA1ZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUpMcVhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUpMcW5Vd0VlS3RrcGQ2VzRCUDVnIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfR3FKTHEzVXdFZUt0a3BkNlc0QlA1ZyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZWVYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfR3FKTHJIVXdFZUt0a3BkNlc0QlA1ZyIgcG9pbnRzPSJbLTEwOCwgLTQyLCAyMTUsIDgyXSRbLTMwNywgLTExOSwgMTYsIDVdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfR3FKTHJYVXdFZUt0a3BkNlc0QlA1ZyIgaWQ9IigwLjQ3MDA0NjA4Mjk0OTMwODgsMC4wNikiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9HcUpMcm5Vd0VlS3RrcGQ2VzRCUDVnIiBpZD0iKDAuOTAwNjIxMTE4MDEyNDIyNCwwLjcxKSIvPgorICAgIDwvZWRnZXM+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfR3FKTHIzVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJSbWF4U29mdHdhcmVBcmNoaXRlY3R1cmVEaWFncmFtIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX0dxSkxzSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJzdHlsZTpQYXB5cnVzVmlld1N0eWxlIiB4bWk6aWQ9Il9SUjk5ZVg3TEVlU0Z5TmJuTFlEQ2t3Ij4KKyAgICAgIDxvd25lciB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZVhuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3pXQVBMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VYblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9HcUpMc1hVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSJDb21wb3NpdGVTdHJ1Y3R1cmUiIG5hbWU9IlJNYXhTb2Z0d2FyZUFyY2hpdGVjdHVyZSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FKTHNuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FKTHMzVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSkx0SFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSkx0WFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSkx0blV3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FKTHQzVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUpMdUhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSkx1WFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUpMdW5Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUpMdTNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6Um9ib3RpY1N5c3RlbSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSkx2SFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FKTHZYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSkx2blV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUpMdjNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0dxSkx3SFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjcwNzMiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUpMd1hVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FKTHduVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUpMdzNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSkx4SFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUpMeFhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FKTHhuVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FKTHgzVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FKTHlIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfR3FKTHlYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HcUpMeW5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUpMeTNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUpMekhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FKTHpYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSkx6blV3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSkx6M1V3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSkwwSFV3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FKTDBYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUpMMG5Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FKTDAzVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FKTDFIVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUpMMVhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUpMMW5Vd0VlS3RrcGQ2VzRCUDVnIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZUUzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FKTDEzVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMzA2IiB5PSI2OCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FKTDJIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSkwyWFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUpMMm5Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUpMMjNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUpMM0hVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSkwzWFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FKTDNuVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSkwzM1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSkw0SFV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FKTDRYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FKTDRuVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VGWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxSkw0M1V3RWVLdGtwZDZXNEJQNWciIHg9IjMwNiIgeT0iNDAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlZ1hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FKTDVIVXdFZUt0a3BkNlc0QlA1ZyIgeD0iLTEiIHk9IjIiIHdpZHRoPSIzMTYiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FKTDVYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzA3MCIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSkw1blV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FKTDUzVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUpMNkhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FKTDZYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSkw2blV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSkw2M1V3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSkw3SFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0dxSkw3WFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfR3FKTDduVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FKTDczVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FKTDhIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSkw4WFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUpMOG5Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUpMODNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUpMOUhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSkw5WFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FKTDluVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSkw5M1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSkwtSFV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FKTC1YVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FKTC1uVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VHWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxSkwtM1V3RWVLdGtwZDZXNEJQNWciIHg9IjMyMiIgeT0iNDQiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxSkxfSFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUpMX1hVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FKTF9uVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FKTF8zVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FKTUFIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUpNQVhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSk1BblV3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUpNQTNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUpNQkhVd0VlS3RrcGQ2VzRCUDVnIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSk1CWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSk1CblV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlRzNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUpNQjNVd0VlS3RrcGQ2VzRCUDVnIiB4PSIzMjIiIHk9IjcyIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZWduVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxSk1DSFV3RWVLdGtwZDZXNEJQNWciIHg9IjEiIHk9IjIzNCIgd2lkdGg9IjMzMiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUpNQ1hVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FKTUNuVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUpNQzNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSk1ESFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUpNRFhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FKTURuVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FKTUQzVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FKTUVIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfR3FKTUVYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HcUpNRW5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUpNRTNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUpNRkhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUpNRlhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FKTUZuVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FKTUYzVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FKTUdIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUpNR1hVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSk1HblV3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUpNRzNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUpNSEhVd0VlS3RrcGQ2VzRCUDVnIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSk1IWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSk1IblV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlSFhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUpNSDNVd0VlS3RrcGQ2VzRCUDVnIiB4PSItMTAiIHk9IjUyIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUpNSUhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUpNSVhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FKTUluVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FKTUkzVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FKTUpIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUpNSlhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSk1KblV3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUpNSjNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUpNS0hVd0VlS3RrcGQ2VzRCUDVnIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSk1LWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSk1LblV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlSG5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUp5c0hVd0VlS3RrcGQ2VzRCUDVnIiB4PSItMTAiIHk9Ijc2Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUp5c1hVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FKeXNuVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSnlzM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSnl0SFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxSnl0WFV3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FKeXRuVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUp5dDNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FKeXVIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FKeXVYVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUp5dW5Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUp5dTNVd0VlS3RrcGQ2VzRCUDVnIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZUgzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FKeXZIVXdFZUt0a3BkNlc0QlA1ZyIgeD0iLTEwIiB5PSIyNCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FKeXZYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSnl2blV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUp5djNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUp5d0hVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUp5d1hVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxSnl3blV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FKeXczVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUp5eEhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FKeXhYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FKeXhuVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlNlcnZpY2VQb3J0Ii8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FKeXgzVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUp5eUhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FKeXlYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSnl5blV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSnl5M1V3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FKeXpIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FKeXpYVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VJSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxSnl6blV3RWVLdGtwZDZXNEJQNWciIHg9Ii0xMCIgeT0iMTAzIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlZzNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FKeXozVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMzgxIiB5PSIxMjIiIHdpZHRoPSIyNzYiIGhlaWdodD0iMTQ5Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0dxSnkwSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FKeTBYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlZ0hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUp5MG5Vd0VlS3RrcGQ2VzRCUDVnIiB4PSIxMiIgeT0iMTIiIHdpZHRoPSI3NjQiIGhlaWdodD0iNDM0Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX0dxSnkwM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJzdHlsZTpQYXB5cnVzVmlld1N0eWxlIiB4bWk6aWQ9Il9SUjk5ZW43TEVlU0Z5TmJuTFlEQ2t3Ij4KKyAgICAgIDxvd25lciB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZDhIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3pXQVBMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2Q4SFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfR3FKeTFIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNDAxMyIgc291cmNlPSJfR3FKTHpIVXdFZUt0a3BkNlc0QlA1ZyIgdGFyZ2V0PSJfR3FKTUZIVXdFZUt0a3BkNlc0QlA1ZyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSnkxWFV3RWVLdGtwZDZXNEJQNWciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUp5MW5Vd0VlS3RrcGQ2VzRCUDVnIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSnkxM1V3RWVLdGtwZDZXNEJQNWciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUp5MkhVd0VlS3RrcGQ2VzRCUDVnIiB4PSItNCIgeT0iMiIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSnkyWFV3RWVLdGtwZDZXNEJQNWciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUp5Mm5Vd0VlS3RrcGQ2VzRCUDVnIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSnkyM1V3RWVLdGtwZDZXNEJQNWciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUp5M0hVd0VlS3RrcGQ2VzRCUDVnIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfR3FKeTNYVXdFZUt0a3BkNlc0QlA1ZyIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VpM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX0dxSnkzblV3RWVLdGtwZDZXNEJQNWciIHBvaW50cz0iWzEwLCA0LCAtMTIxLCAtNTZdJFsxMjEsIDU1LCAtMTAsIC01XSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX0dxSnkzM1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjQwMTMiIHNvdXJjZT0iX0dxSkw4SFV3RWVLdGtwZDZXNEJQNWciIHRhcmdldD0iX0dxSk1JSFV3RWVLdGtwZDZXNEJQNWciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUp5NEhVd0VlS3RrcGQ2VzRCUDVnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FKeTRYVXdFZUt0a3BkNlc0QlA1ZyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUp5NG5Vd0VlS3RrcGQ2VzRCUDVnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FKeTQzVXdFZUt0a3BkNlc0QlA1ZyIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FKeTVIVXdFZUt0a3BkNlc0QlA1ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSnk1WFV3RWVLdGtwZDZXNEJQNWciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FKeTVuVXdFZUt0a3BkNlc0QlA1ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxSnk1M1V3RWVLdGtwZDZXNEJQNWciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9HcUp5NkhVd0VlS3RrcGQ2VzRCUDVnIiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZWhIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfR3FKeTZYVXdFZUt0a3BkNlc0QlA1ZyIgcG9pbnRzPSJbMTAsIC0yLCAtMTMxLCAxNF0kWzEzMSwgLTE1LCAtMTAsIDFdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfR3FKeTZuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNDAxMyIgc291cmNlPSJfR3FKTDJIVXdFZUt0a3BkNlc0QlA1ZyIgdGFyZ2V0PSJfR3FKeXNYVXdFZUt0a3BkNlc0QlA1ZyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSnk2M1V3RWVLdGtwZDZXNEJQNWciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUp5N0hVd0VlS3RrcGQ2VzRCUDVnIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSnk3WFV3RWVLdGtwZDZXNEJQNWciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUp5N25Vd0VlS3RrcGQ2VzRCUDVnIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUp5NzNVd0VlS3RrcGQ2VzRCUDVnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FKeThIVXdFZUt0a3BkNlc0QlA1ZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUp5OFhVd0VlS3RrcGQ2VzRCUDVnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FKeThuVXdFZUt0a3BkNlc0QlA1ZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX0dxSnk4M1V3RWVLdGtwZDZXNEJQNWciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IkFpck9BUlAudW1sI19HcUNla25Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9HcUp5OUhVd0VlS3RrcGQ2VzRCUDVnIiBwb2ludHM9Ils2LCAxMCwgLTYxLCAtODldJFs2MCwgODksIC03LCAtMTBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfR3FKeTlYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNDAxMyIgc291cmNlPSJfR3FKTF9IVXdFZUt0a3BkNlc0QlA1ZyIgdGFyZ2V0PSJfR3FKeXZYVXdFZUt0a3BkNlc0QlA1ZyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSnk5blV3RWVLdGtwZDZXNEJQNWciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUp5OTNVd0VlS3RrcGQ2VzRCUDVnIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxSnktSFV3RWVLdGtwZDZXNEJQNWciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUp5LVhVd0VlS3RrcGQ2VzRCUDVnIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUp5LW5Vd0VlS3RrcGQ2VzRCUDVnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FKeS0zVXdFZUt0a3BkNlc0QlA1ZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUp5X0hVd0VlS3RrcGQ2VzRCUDVnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FKeV9YVXdFZUt0a3BkNlc0QlA1ZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX0dxSnlfblV3RWVLdGtwZDZXNEJQNWciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlbVhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9HcUp5XzNVd0VlS3RrcGQ2VzRCUDVnIiBwb2ludHM9Ils1LCAtMTAsIC00MywgNzFdJFs0OCwgLTgxLCAwLCAwXSIvPgorICAgIDwvZWRnZXM+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfR3FLWnduVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iUGFweXJ1c1VNTENsYXNzRGlhZ3JhbSIgbmFtZT0iSW1wbGVtZW50YXRpb25SZXF1aXJlbWVudHMiIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxS1p3M1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjIwMTIiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxS1p4SFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUtaeFhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUtaeG5Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUtaeDNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxS1p5SFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FLWnlYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxS1p5blV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUwMzgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2Q4WFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxS1p5M1V3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSIyNSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FLWnpIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMjAxMiIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FLWnpYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxS1p6blV3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxS1p6M1V3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxS1owSFV3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FLWjBYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUtaMG5Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FLWjAzVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTAzOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZDhuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FLWjFIVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9IjEzNSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FLWjFYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMjAxMiIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FLWjFuVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxS1oxM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxS1oySFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxS1oyWFV3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FLWjJuVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUtaMjNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FLWjNIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTAzOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZDgzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FLWjNYVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9IjI0NSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9HcUtaM25Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfUlI5OWUzN0xFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2Q4SFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6OUV2TF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IkFpck9BUlAudW1sI19HcUNkOEhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfR3FLWjMzVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iUGFweXJ1c1VNTFN0YXRlTWFjaGluZURpYWdyYW0iIG5hbWU9IlNtIERpYWdyYW0iIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfR3FLWjRIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RhdGVNYWNoaW5lIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvcmVzb3VyY2UvQWlyT0FSUC51bWwjX2dPMTkwS05PRWVHT2RQZG9FVURKdFEiLz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9HcUtaNFhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSJDb21wb3NpdGVTdHJ1Y3R1cmUiIG5hbWU9IlBzZXVkb1RBTENBdmlvbmljT2JjQ29tcG9uZW50IiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUtaNG5Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIyMDczIiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FLWjQzVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxS1o1SFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxS1o1WFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxS1o1blV3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FLWjUzVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUtaNkhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FLWjZYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9HcUtaNm5Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI3MDczIiBjb2xsYXBzZWQ9InRydWUiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUtaNjNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxS1o3SFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FLWjdYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUtaN25Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FLWjczVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxS1o4SFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxS1o4WFV3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxS1o4blV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0dxS1o4M1V3RWVLdGtwZDZXNEJQNWciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0dxS1o5SFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxS1o5WFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlRkhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FLWjluVXdFZUt0a3BkNlc0QlA1ZyIgeD0iNjIiIHk9IjEyNyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HcUtaOTNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxS1otSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUtaLVhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUtaLW5Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUtaLTNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FLWl9IVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUtaX1hVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUtaX25Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FLWl8zVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUthQUhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxS2FBWFV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxS2FBblV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FLYUEzVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlRUhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxS2FCSFV3RWVLdGtwZDZXNEJQNWciIHg9Ii0xMCIgeT0iNDQiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUthQlhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUthQm5Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUthQjNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FLYUNIVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUthQ1hVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUthQ25Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FLYUMzVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUthREhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxS2FEWFV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxS2FEblV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FLYUQzVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlRVhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxS2FFSFV3RWVLdGtwZDZXNEJQNWciIHg9Ii0xMCIgeT0iNjgiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUthRVhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUthRW5Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUthRTNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FLYUZIVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUthRlhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUthRm5Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FLYUYzVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUthR0hVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxS2FHWFV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxS2FHblV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FLYUczVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlRW5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxS2FISFV3RWVLdGtwZDZXNEJQNWciIHg9IjI3MSIgeT0iNDgiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUthSFhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUthSG5Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUthSDNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FLYUlIVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUthSVhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUthSW5Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FLYUkzVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUthSkhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxS2FKWFV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxS2FKblV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FLYUozVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlRTNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxS2FLSFV3RWVLdGtwZDZXNEJQNWciIHg9IjI3MSIgeT0iMjA4Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FLYUtYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FLYUtuVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FLYUszVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxS2FMSFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FLYUxYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FLYUxuVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxS2FMM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxS2FNSFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxS2FNWFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FLYU1uVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlNlcnZpY2VQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUthTTNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FLYU5IVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FLYU5YVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUthTm5Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxS2FOM1V3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxS2FPSFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FLYU9YVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlRlhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxS2FPblV3RWVLdGtwZDZXNEJQNWciIHg9IjI3MSIgeT0iMjQ4IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZUQzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FLYU8zVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMTc2IiB5PSIxNiIgd2lkdGg9IjI4MSIgaGVpZ2h0PSIyOTMiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxS2FQSFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjIwNzMiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUthUFhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FLYVBuVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FLYVAzVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FLYVFIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUthUVhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxS2FRblV3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUthUTNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0dxS2FSSFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjcwNzMiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HcUthUlhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxS2FSblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZUFYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FLYVIzVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjAiIHk9IjIwOCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FLYVNIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxS2FTWFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUthU25Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUthUzNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUthVEhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxS2FUWFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FLYVRuVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxS2FUM1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfR3FLYVVIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0dxS2FVWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FLYVVuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlQ25Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUthVTNVd0VlS3RrcGQ2VzRCUDVnIiB4PSIxNiIgeT0iMzYiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfR3FLYVZIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX1JSOTlmSDdMRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IkFpck9BUlAudW1sI19HcUNkOEhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBreldCZkxfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZDhIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX0dxTEEwSFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IkNvbXBvc2l0ZVN0cnVjdHVyZSIgbmFtZT0iUHNldWRvVEFMQ1ZpZGVvQ2FtZXJhQ29tcG9uZW50IiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUxBMFhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIyMDczIiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FMQTBuVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTEEwM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxTEExSFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTEExWFV3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FMQTFuVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUxBMTNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FMQTJIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9HcUxBMlhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfR3FMQTJuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUxBMjNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FMQTNIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FMQTNYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FMQTNuVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxTEEzM1V3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FMQTRIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FMQTRYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTEE0blV3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FMQTQzVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUxBNUhVd0VlS3RrcGQ2VzRCUDVnIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUxBNVhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTEE1blV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZUYzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUxBNTNVd0VlS3RrcGQ2VzRCUDVnIiB4PSItMTAiIHk9IjQ0Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FMQTZIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FMQTZYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FMQTZuVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxTEE2M1V3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FMQTdIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FMQTdYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTEE3blV3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FMQTczVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUxBOEhVd0VlS3RrcGQ2VzRCUDVnIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUxBOFhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTEE4blV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZUdIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUxBODNVd0VlS3RrcGQ2VzRCUDVnIiB4PSItMTAiIHk9IjY4Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FMQTlIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FMQTlYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FMQTluVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxTEE5M1V3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FMQS1IVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FMQS1YVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTEEtblV3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxTEEtM1V3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTEFfSFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FMQV9YVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FMQV9uVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTEFfM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTEJBSFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FMQkFYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUxCQW5Vd0VlS3RrcGQ2VzRCUDVnIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUxCQTNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTEJCSFV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZUdYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUxCQlhVd0VlS3RrcGQ2VzRCUDVnIiB4PSIzMDciIHk9IjE4MCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FMQkJuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FMQkIzVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FMQkNIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxTEJDWFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FMQkNuVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FMQkMzVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTEJESFV3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxTEJEWFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTEJEblV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FMQkQzVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FMQkVIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTEJFWFV3RWVLdGtwZDZXNEJQNWciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTEJFblV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FMQkUzVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUxCRkhVd0VlS3RrcGQ2VzRCUDVnIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUxCRlhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTEJGblV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZUduVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUxCRjNVd0VlS3RrcGQ2VzRCUDVnIiB4PSIzMDciIHk9IjIwNCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FMQkdIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FMQkdYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FMQkduVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxTEJHM1V3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FMQkhIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FMQkhYVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTEJIblV3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxTEJIM1V3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTEJJSFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FMQklYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlNlcnZpY2VQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUxCSW5Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FMQkkzVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FMQkpIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUxCSlhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTEJKblV3RWVLdGtwZDZXNEJQNWciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxTEJKM1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FMQktIVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlRzNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxTEJLWFV3RWVLdGtwZDZXNEJQNWciIHg9IjMwNyIgeT0iMjI4IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZUZuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FMQktuVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMTI4IiB5PSI4IiB3aWR0aD0iMzE3IiBoZWlnaHQ9IjQzMyIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FMQkszVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxTEJMSFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUxCTFhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUxCTG5Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUxCTDNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxTEJNSFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FMQk1YVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxTEJNblV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfR3FMQk0zVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0dxTEJOSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FMQk5YVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlQVhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUxCTm5Vd0VlS3RrcGQ2VzRCUDVnIiB4PSI0IiB5PSIxODQiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTEJOM1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjIwNzMiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUxCT0hVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FMQk9YVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FMQk9uVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FMQk8zVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUxCUEhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTEJQWFV3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcUxCUG5Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0dxTEJQM1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjcwNzMiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HcUxCUUhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxTEJRWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZUNuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FMQlFuVXdFZUt0a3BkNlc0QlA1ZyIgeD0iNCIgeT0iNCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9HcUxCUTNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfUlI5OWZYN0xFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2Q4SFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0JmTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IkFpck9BUlAudW1sI19HcUNkOEhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfR3FMbjRIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iUGFweXJ1c1VNTENsYXNzRGlhZ3JhbSIgbmFtZT0iT2JjSW50ZXJmYWNlIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUxuNFhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIyMDA0IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FMbjRuVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTG40M1V3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxTG41SFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTG41WFV3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FMbjVuVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUxuNTNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FMbjZIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTAxMSIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9HcUxuNlhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI3MDA2Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfR3FMbjZuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0dxTG42M1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0dxTG43SFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FMbjdYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfR3FMbjduVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNzAwNyI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTG43M1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZHM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTG44SFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FMbjhYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAwNyIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERkhYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FMbjhuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUxuODNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDA3IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IkFpck9BUlAudW1sI19HcURGSVhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUxuOUhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTG45WFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZKSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTG45blV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FMbjkzVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAwNyIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERkozVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FMbi1IVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUxuLVhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDA3IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IkFpck9BUlAudW1sI19HcURGS25Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUxuLW5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTG4tM1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZMSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTG5fSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FMbl9YVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAwNyIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERkxuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FMbl9uVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUxuXzNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDA3IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IkFpck9BUlAudW1sI19HcURGTkhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUxvQUhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTG9BWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZPblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTG9BblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FMb0EzVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAwNyIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERlFIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FMb0JIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUxvQlhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDA3IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IkFpck9BUlAudW1sI19HcURGUkhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUxvQm5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTG9CM1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZSM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTG9DSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FMb0NYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAwNyIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERlNuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FMb0NuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUxvQzNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDA3IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IkFpck9BUlAudW1sI19HcURGVFhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUxvREhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTG9EWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZVSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTG9EblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FMb0QzVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAwNyIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERlUzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FMb0VIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUxvRVhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDA3IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IkFpck9BUlAudW1sI19HcURGVlhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUxvRW5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTG9FM1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZWblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTG9GSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FMb0ZYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAwNyIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERlYzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FMb0ZuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUxvRjNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDA3IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IkFpck9BUlAudW1sI19HcURGV0hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUxvR0hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTG9HWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZXWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTG9HblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FMb0czVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAwNyIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERlduVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FMb0hIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUxvSFhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDA3IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IkFpck9BUlAudW1sI19HcURGVzNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUxvSG5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTG9IM1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZYSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTG9JSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfR3FMb0lYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0dxTG9JblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0dxTG9JM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FMb0pIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfR3FMb0pYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNzAwOCI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0dxTG9KblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9HcUxvSjNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9HcUxvS0hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxTG9LWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkludGVyZmFjZSIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZHblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxTG9LblV3RWVLdGtwZDZXNEJQNWciIHg9IjMyIiB5PSIzMiIgd2lkdGg9Ijc0NSIgaGVpZ2h0PSI1MTMiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfR3FMb0szVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX1JSOTlmbjdMRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IkFpck9BUlAudW1sI19HcUNkOEhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBrejlFdkxfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZDhIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX0dxTG9MSFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IlBhcHlydXNVTUxDbGFzc0RpYWdyYW0iIG5hbWU9IkNhbWVyYUludGVyZmFjZSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FMb0xYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMjAwNCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxTG9MblV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUxvTDNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcUxvTUhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcUxvTVhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxTG9NblV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FMb00zVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxTG9OSFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUwMTEiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfR3FMb05YVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNzAwNiI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0dxTG9OblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9HcUxvTjNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9HcUxvT0hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxTG9PWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0dxTG9PblV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjcwMDciPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUxvTzNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDA3IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IkFpck9BUlAudW1sI19HcURGWG5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUxvUEhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTG9QWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZYM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTG9QblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FMb1AzVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAwNyIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERllIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FMb1FIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUxvUVhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDA3IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IkFpck9BUlAudW1sI19HcURGWVhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUxvUW5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTG9RM1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZZblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTG9SSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FMb1JYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAwNyIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERlkzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FMb1JuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUxvUjNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDA3IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IkFpck9BUlAudW1sI19HcURGWkhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUxvU0hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTG9TWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZaWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTG9TblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FMb1MzVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAwNyIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERlpuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FMb1RIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUxvVFhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDA3IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IkFpck9BUlAudW1sI19HcURGWjNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUxvVG5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTG9UM1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZhSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTG9VSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FMb1VYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAwNyIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERmFYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FMb1VuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUxvVTNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDA3IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IkFpck9BUlAudW1sI19HcURGYW5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUxvVkhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTG9WWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZhM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTG9WblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FMb1YzVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAwNyIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERmJIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FMb1dIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUxvV1hVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDA3IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IkFpck9BUlAudW1sI19HcURGYlhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUxvV25Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTG9XM1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZiblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTG9YSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FMb1hYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAwNyIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERmIzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FMb1huVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcUxvWDNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDA3IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IkFpck9BUlAudW1sI19HcURGY0hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcUxvWUhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1lMZlprSGRBRWVLWllxMFRSVVJWYXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiBocmVmPSJBaXJPQVJQLnVtbCNfWUtxNk1IZEFFZUtaWXEwVFJVUlZhdyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfWUxmWmtYZEFFZUtaWXEwVFJVUlZhdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HcUxvWVhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfR3FMb1luVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfR3FMb1kzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcUxvWkhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9HcUxvWlhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI3MDA4Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfR3FMb1puVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0dxTG9aM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0dxTG9hSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FMb2FYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW50ZXJmYWNlIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERlhYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FMb2FuVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMTI0IiB5PSIyOCIgd2lkdGg9IjY0NSIgaGVpZ2h0PSI0ODkiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfR3FMb2EzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX1JSOTlmMzdMRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IkFpck9BUlAudW1sI19HcUNkOEhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBrejlFdkxfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZDhIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX0dxTU84SFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IlBhcHlydXNVTUxDbGFzc0RpYWdyYW0iIGVsZW1lbnQ9Il9HcUdJVUhVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJUQUxDRGF0YVR5cGVzIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcU1POFhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIyMDEwIiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FNTzhuVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTU84M1V3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxTU85SFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTU85WFV3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FNTzluVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcU1POTNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FNTy1IVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTAzNSIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9HcU1PLVhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI3MDIwIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FNTy1uVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IkFpck9BUlAudW1sI19HcURGY25Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcU1PLTNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTU9fSFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERmMzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FNT19YVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcU1PX25Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZkSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTU9fM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FNUEFIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IkFpck9BUlAudW1sI19HcURGZFhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcU1QQVhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTVBBblV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERmRuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FNUEEzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcU1QQkhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZkM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTVBCWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FNUEJuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IkFpck9BUlAudW1sI19HcURGZUhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcU1QQjNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTVBDSFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERmVYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FNUENYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcU1QQ25Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZlblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTVBDM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FNUERIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IkFpck9BUlAudW1sI19HcURGZTNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcU1QRFhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0dxTVBEblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9HcU1QRDNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9HcU1QRUhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxTVBFWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0dxTVBFblV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjcwMjEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HcU1QRTNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfR3FNUEZIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfR3FNUEZYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcU1QRm5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZjWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxTVBGM1V3RWVLdGtwZDZXNEJQNWciIHg9IjI1NSIgeT0iMTUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTVBHSFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjIwMTAiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcU1QR1hVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FNUEduVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FNUEczVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FNUEhIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcU1QSFhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTVBIblV3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcU1QSDNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MDM1Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0dxTVBJSFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjcwMjAiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcU1QSVhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VvM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTVBJblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FNUEkzVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlcEhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcU1QSkhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTVBKWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZXBYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FNUEpuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcU1QSjNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VwblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTVBLSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FNUEtYVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlcDNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcU1QS25Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTVBLM1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZXFIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FNUExIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcU1QTFhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VxWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTVBMblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FNUEwzVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IkFpck9BUlAudW1sI19HcUNlcW5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcU1QTUhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTVBNWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZXEzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FNUE1uVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcU1QTTNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iQWlyT0FSUC51bWwjX0dxQ2VySFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTVBOSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FNUE5YVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IkFpck9BUlAudW1sI19HcURGQW5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcU1QTm5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTVBOM1V3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERkJYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FNUE9IVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcU1QT1hVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZDSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTVBPblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfR3FNUE8zVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0dxTVBQSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0dxTVBQWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FNUFBuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfR3FNUFAzVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNzAyMSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0dxTVBRSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9HcU1QUVhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9HcU1QUW5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxTVBRM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FDZW9uVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FNUFJIVXdFZUt0a3BkNlc0QlA1ZyIgeD0iMTYiIHk9IjE2Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcU1QUlhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIyMDEwIiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FNUFJuVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTVBSM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxTVBTSFV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTVBTWFV3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FNUFNuVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcU1QUzNVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FNUFRIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTAzNSIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9HcU1QVFhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI3MDIwIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FNUFRuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IkFpck9BUlAudW1sI19HcURGREhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcU1QVDNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTVBVSFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERkRYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FNUFVYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcU1QVW5Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZEblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTVBVM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FNUFZIVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IkFpck9BUlAudW1sI19HcURGRDNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcU1QVlhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTVBWblV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERkVIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FNUFYzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcU1QV0hVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZFWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTVBXWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FNUFduVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IkFpck9BUlAudW1sI19HcURGRW5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcU1QVzNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTVBYSFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERkUzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FNUFhYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HcU1QWG5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfR3FNUFgzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfR3FNUFlIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcU1QWVhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9HcU1QWW5Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI3MDIxIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfT1JLcXNIWWRFZUtQSzhaaFBUeEhPdyIgdHlwZT0iMzAxOSIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IkFpck9BUlAudW1sI19PUTFUZ0hZZEVlS1BLOFpoUFR4SE93Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9PUktxc1hZZEVlS1BLOFpoUFR4SE93Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1Nid21ZSFllRWVLUEs4WmhQVHhIT3ciIHR5cGU9IjMwMTkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiBocmVmPSJBaXJPQVJQLnVtbCNfU2JiMlFIWWVFZUtQSzhaaFBUeEhPdyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfU2J3bVlYWWVFZUtQSzhaaFBUeEhPdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HcU1QWTNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfR3FNUFpIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfR3FNUFpYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcU1QWm5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZDM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxTVBaM1V3RWVLdGtwZDZXNEJQNWciIHg9IjIwIiB5PSIzMjAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTVBhSFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjIwMTAiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcU1QYVhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FNUGFuVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FNUGEzVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FNUGJIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcU1QYlhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTVBiblV3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcU1QYjNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MDM1Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0dxTVBjSFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjcwMjAiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcU1QY1hVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZGWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTVBjblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfR3FNUGMzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0dxTVBkSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0dxTVBkWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FNUGRuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfR3FNUGQzVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNzAyMSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0dxTVBlSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9HcU1QZVhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9HcU1QZW5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxTVBlM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERkZIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FNUGZIVXdFZUt0a3BkNlc0QlA1ZyIgeD0iNDc1IiB5PSIyNTAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTVBmWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjIwMDkiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcU1QZm5Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FNUGYzVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FNUGdIVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FNUGdYVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcU1QZ25Vd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTVBnM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HcU1QaEhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI1MDMyIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IkFpck9BUlAudW1sI19HcURGR0hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcU1QaFhVd0VlS3RrcGQ2VzRCUDVnIiB4PSIzNDAiIHk9IjQ1NSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FNUGhuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMjAwOSIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxTVBoM1V3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcU1QaUhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HcU1QaVhVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcU1QaW5Vd0VlS3RrcGQ2VzRCUDVnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxTVBpM1V3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR3FNUGpIVXdFZUt0a3BkNlc0QlA1ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dxTVBqWFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjUwMzIiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZHWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dxTVBqblV3RWVLdGtwZDZXNEJQNWciIHg9IjM0MCIgeT0iNTEwIiB3aWR0aD0iMTQxIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcU1QajNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIyMDEwIiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FNUGtIVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTVBrWFV3RWVLdGtwZDZXNEJQNWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dxTVBrblV3RWVLdGtwZDZXNEJQNWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dxTVBrM1V3RWVLdGtwZDZXNEJQNWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR3FNUGxIVXdFZUt0a3BkNlc0QlA1ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HcU1QbFhVd0VlS3RrcGQ2VzRCUDVnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR3FNUGxuVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iNTAzNSIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9HcU1QbDNVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI3MDIwIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FNUG1IVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IkFpck9BUlAudW1sI19HcURGZlhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcU1QbVhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTVBtblV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERmZuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FNUG0zVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HcU1QbkhVd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iQWlyT0FSUC51bWwjX0dxREZmM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0dxTVBuWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR3FNUG5uVXdFZUt0a3BkNlc0QlA1ZyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IkFpck9BUlAudW1sI19HcURGZ0hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HcU1QbjNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dxTVBvSFV3RWVLdGtwZDZXNEJQNWciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJBaXJPQVJQLnVtbCNfR3FERmdYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR3FNUG9YVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HcU1Qb25Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfR3FNUG8zVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfR3FNUHBIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcU1QcFhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9HcU1QcG5Vd0VlS3RrcGQ2VzRCUDVnIiB0eXBlPSI3MDIxIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfR3FNUHAzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0dxTVBxSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0dxTVBxWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR3FNUHFuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IkFpck9BUlAudW1sI19HcURGZkhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HcU1QcTNVd0VlS3RrcGQ2VzRCUDVnIiB4PSI0NjAiIHk9IjE1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9CQjBKOEhZY0VlS1BLOFpoUFR4SE93IiB0eXBlPSIyMDA5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9CQjFfSUhZY0VlS1BLOFpoUFR4SE93IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQkIxX0lYWWNFZUtQSzhaaFBUeEhPdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQkIxX0luWWNFZUtQSzhaaFBUeEhPdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQkIybU1IWWNFZUtQSzhaaFBUeEhPdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9CQjJtTVhZY0VlS1BLOFpoUFR4SE93IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0JCMm1NblljRWVLUEs4WmhQVHhIT3ciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9CQjJtTTNZY0VlS1BLOFpoUFR4SE93IiB0eXBlPSI1MDMyIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IkFpck9BUlAudW1sI19CQlRNa0hZY0VlS1BLOFpoUFR4SE93Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9CQjBKOFhZY0VlS1BLOFpoUFR4SE93IiB4PSIzNDAiIHk9IjQwMCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfdEdXcm9IWWNFZUtQSzhaaFBUeEhPdyIgdHlwZT0iMjAwOSIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdEdYU3NIWWNFZUtQSzhaaFBUeEhPdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3RHWFNzWFljRWVLUEs4WmhQVHhIT3ciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3RHWFNzblljRWVLUEs4WmhQVHhIT3ciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3RHWFNzM1ljRWVLUEs4WmhQVHhIT3ciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdEdYU3RIWWNFZUtQSzhaaFBUeEhPdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il90R1hTdFhZY0VlS1BLOFpoUFR4SE93IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfdEdYU3RuWWNFZUtQSzhaaFBUeEhPdyIgdHlwZT0iNTAzMiIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJBaXJPQVJQLnVtbCNfdEYtNE1IWWNFZUtQSzhaaFBUeEhPdyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfdEdXcm9YWWNFZUtQSzhaaFBUeEhPdyIgeD0iMzQwIiB5PSIzNDUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX19iYVhZSFljRWVLUEs4WmhQVHhIT3ciIHR5cGU9IjIwMDkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19iYVhZblljRWVLUEs4WmhQVHhIT3ciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fYmEtY0hZY0VlS1BLOFpoUFR4SE93IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9fYmEtY1hZY0VlS1BLOFpoUFR4SE93IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fYmEtY25ZY0VlS1BLOFpoUFR4SE93IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19iYS1jM1ljRWVLUEs4WmhQVHhIT3ciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX2JhLWRIWWNFZUtQSzhaaFBUeEhPdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX19iYS1kWFljRWVLUEs4WmhQVHhIT3ciIHR5cGU9IjUwMzIiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iQWlyT0FSUC51bWwjX19heUZRSFljRWVLUEs4WmhQVHhIT3ciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX19iYVhZWFljRWVLUEs4WmhQVHhIT3ciIHg9IjQ2MCIgeT0iNDAwIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9BWkpsd0hkQUVlS1pZcTBUUlVSVmF3IiB0eXBlPSIyMDA5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9BWk1DQUhkQUVlS1pZcTBUUlVSVmF3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQVpNcEVIZEFFZUtaWXEwVFJVUlZhdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQVpNcEVYZEFFZUtaWXEwVFJVUlZhdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQVpNcEVuZEFFZUtaWXEwVFJVUlZhdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9BWk1wRTNkQUVlS1pZcTBUUlVSVmF3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0FaTlFJSGRBRWVLWllxMFRSVVJWYXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9BWk5RSVhkQUVlS1pZcTBUUlVSVmF3IiB0eXBlPSI1MDMyIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IkFpck9BUlAudW1sI19BWWNiSUhkQUVlS1pZcTBUUlVSVmF3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9BWkpsd1hkQUVlS1pZcTBUUlVSVmF3IiB4PSI0NjAiIHk9IjQ1NSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfcGFTQTBIZEFFZUtaWXEwVFJVUlZhdyIgdHlwZT0iMjAwOSIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcGFUTzhIZEFFZUtaWXEwVFJVUlZhdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3BhVE84WGRBRWVLWllxMFRSVVJWYXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3BhVE84bmRBRWVLWllxMFRSVVJWYXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3BhVE84M2RBRWVLWllxMFRSVVJWYXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcGFUTzlIZEFFZUtaWXEwVFJVUlZhdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9wYVQyQUhkQUVlS1pZcTBUUlVSVmF3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfcGFUMkFYZEFFZUtaWXEwVFJVUlZhdyIgdHlwZT0iNTAzMiIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJBaXJPQVJQLnVtbCNfcFp4cWdIZEFFZUtaWXEwVFJVUlZhdyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfcGFTQTBYZEFFZUtaWXEwVFJVUlZhdyIgeD0iNTg1IiB5PSIzNTUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfR3FNUHJIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX1JSOTlnSDdMRWVTRnlOYm5MWURDa3ciIG93bmVyPSJfR3FHSVVIVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBreldDdkxfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorPC94bWk6WE1JPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9yZXNvdXJjZS9BaXJPQVJQLnVtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvcmVzb3VyY2UvQWlyT0FSUC51bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDBjN2Q5MgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvcmVzb3VyY2UvQWlyT0FSUC51bWwKQEAgLTAsMCArMSw2NDAgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8eG1pOlhNSSB4bWk6dmVyc2lvbj0iMjAxMTA3MDEiIHhtbG5zOnhtaT0iaHR0cDovL3d3dy5vbWcub3JnL3NwZWMvWE1JLzIwMTEwNzAxIiB4bWxuczpSb2JvdE1MPSJodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEiIHhtbG5zOmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIiB4bWxuczp1bWw9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi80LjAuMC9VTUwiPgorICA8dW1sOk1vZGVsIHhtaTppZD0iX0dxQ2Q4SFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9IlRhbGMiPgorICAgIDxvd25lZENvbW1lbnQgeG1pOmlkPSJfR3FDZDhYVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICA8Ym9keT4gUm1heFNvZnR3YXJlQXJjaGl0ZWNjdHVyZSBhIGltcGxlbWVudGVyIHNvdXMgT3JvY29zPC9ib2R5PgorICAgIDwvb3duZWRDb21tZW50PgorICAgIDxvd25lZENvbW1lbnQgeG1pOmlkPSJfR3FDZDhuVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICA8Ym9keT5MZXMgY29ubmVjdGV1cnMgZCdBdmlvbmljQ29ubmVjdGlvbiBldCBkZSBDYW1lcmFDb25uZWN0aW9uIGEgaW1wbGVtZW50ZXIgc291cyBSb3M8L2JvZHk+CisgICAgPC9vd25lZENvbW1lbnQ+CisgICAgPG93bmVkQ29tbWVudCB4bWk6aWQ9Il9HcUNkODNVd0VlS3RrcGQ2VzRCUDVnIj4KKyAgICAgIDxib2R5PlJNYXhIYXJkd2FyZUFyY2hpdGVjdHVyZSBldCBCaWdDb21wb25lbnRzIGEgaW1wbGVtZW50ZXIgc291cyBNb3JzZSBhdmVjIFJNYXgudHJhbnNsYXRlKHg9NS4wLCB5PTAuMCwgej05LjApPC9ib2R5PgorICAgIDwvb3duZWRDb21tZW50PgorICAgIDxvd25lZENvbW1lbnQgeG1pOmlkPSJfR3FDZDlIVXdFZUt0a3BkNlc0QlA1ZyIgYW5ub3RhdGVkRWxlbWVudD0iX0dxQ2VBblV3RWVLdGtwZDZXNEJQNWciPgorICAgICAgPGJvZHk+J3ZpZGVvX2NhbWVyYScKKy5wcm9wZXJ0aWVzKGNhcHR1cmluZyA9IFRydWUpCisucHJvcGVydGllcyhjYW1fd2lkdGggPSA1MTIpCisucHJvcGVydGllcyhjYW1faGVpZ2h0ID0gNTEyKQorLnByb3BlcnRpZXMoY2FtX2ZvY2FsID0gMzUuMDAwMCk8L2JvZHk+CisgICAgPC9vd25lZENvbW1lbnQ+CisgICAgPG93bmVkQ29tbWVudCB4bWk6aWQ9Il9HcUNkOVhVd0VlS3RrcGQ2VzRCUDVnIiBhbm5vdGF0ZWRFbGVtZW50PSJfR3FDZURYVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICA8Ym9keT4nbGFuZC0xL3RyZWVzJworLmFpbV9jYW1lcmEoWzEuMDQ3MCwgMCwgMC43ODU0XSk8L2JvZHk+CisgICAgPC9vd25lZENvbW1lbnQ+CisgICAgPG93bmVkQ29tbWVudCB4bWk6aWQ9Il9HcUNkOW5Vd0VlS3RrcGQ2VzRCUDVnIiBhbm5vdGF0ZWRFbGVtZW50PSJfR3FDZURuVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICA8Ym9keT4ncm1heCcKKy50cmFuc2xhdGUoeD01LjAsIHk9MC4wLCB6PTkuMCk8L2JvZHk+CisgICAgPC9vd25lZENvbW1lbnQ+CisgICAgPG93bmVkQ29tbWVudCB4bWk6aWQ9Il9HcUNkOTNVd0VlS3RrcGQ2VzRCUDVnIiBhbm5vdGF0ZWRFbGVtZW50PSJfR3FDZUMzVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICA8Ym9keT4nZGVzdGluYXRpb24nPC9ib2R5PgorICAgIDwvb3duZWRDb21tZW50PgorICAgIDxvd25lZENvbW1lbnQgeG1pOmlkPSJfR3FDZC1IVXdFZUt0a3BkNlc0QlA1ZyIgYW5ub3RhdGVkRWxlbWVudD0iX0dxQ2VCblV3RWVLdGtwZDZXNEJQNWciPgorICAgICAgPGJvZHk+J2d5cm9zY29wZSc8L2JvZHk+CisgICAgPC9vd25lZENvbW1lbnQ+CisgICAgPG93bmVkQ29tbWVudCB4bWk6aWQ9Il9HcUNkLVhVd0VlS3RrcGQ2VzRCUDVnIiBhbm5vdGF0ZWRFbGVtZW50PSJfR3FDZUNIVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICA8Ym9keT4nZ3BzJzwvYm9keT4KKyAgICA8L293bmVkQ29tbWVudD4KKyAgICA8cGFja2FnZUltcG9ydCB4bWk6aWQ9Il9HcUNkLW5Vd0VlS3RrcGQ2VzRCUDVnIj4KKyAgICAgIDxpbXBvcnRlZFBhY2thZ2UgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3d5UzZnQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICA8L3BhY2thZ2VJbXBvcnQ+CisgICAgPHBhY2thZ2VJbXBvcnQgeG1pOmlkPSJfR3FDZC0zVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICA8aW1wb3J0ZWRQYWNrYWdlIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19feEE2WUFIdkVlQ1FRT0tyaE9fZklRIi8+CisgICAgPC9wYWNrYWdlSW1wb3J0PgorICAgIDxwYWNrYWdlSW1wb3J0IHhtaTppZD0iX0dxQ2RfSFV3RWVLdGtwZDZXNEJQNWciPgorICAgICAgPGltcG9ydGVkUGFja2FnZSBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfRGY0XzRBSHdFZUNRUU9LcmhPX2ZJUSIvPgorICAgIDwvcGFja2FnZUltcG9ydD4KKyAgICA8cGFja2FnZUltcG9ydCB4bWk6aWQ9Il9HcUNkX1hVd0VlS3RrcGQ2VzRCUDVnIj4KKyAgICAgIDxpbXBvcnRlZFBhY2thZ2UgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0dvNV9RQUh3RWVDUVFPS3JoT19mSVEiLz4KKyAgICA8L3BhY2thZ2VJbXBvcnQ+CisgICAgPHBhY2thZ2VJbXBvcnQgeG1pOmlkPSJfR3FDZF9uVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICA8aW1wb3J0ZWRQYWNrYWdlIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19KU29ha0FId0VlQ1FRT0tyaE9fZklRIi8+CisgICAgPC9wYWNrYWdlSW1wb3J0PgorICAgIDxwYWNrYWdlSW1wb3J0IHhtaTppZD0iX0dxQ2RfM1V3RWVLdGtwZDZXNEJQNWciPgorICAgICAgPGltcG9ydGVkUGFja2FnZSBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTWx5TllBSHdFZUNRUU9LcmhPX2ZJUSIvPgorICAgIDwvcGFja2FnZUltcG9ydD4KKyAgICA8cGFja2FnZUltcG9ydCB4bWk6aWQ9Il9HcUNlQUhVd0VlS3RrcGQ2VzRCUDVnIj4KKyAgICAgIDxpbXBvcnRlZFBhY2thZ2UgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1FKQzJBS3hZRWVDSkQ0Nkd0RHNBQkEiLz4KKyAgICA8L3BhY2thZ2VJbXBvcnQ+CisgICAgPHBhY2thZ2VJbXBvcnQgeG1pOmlkPSJfYWJfY2tIZEFFZUtaWXEwVFJVUlZhdyI+CisgICAgICA8aW1wb3J0ZWRQYWNrYWdlIHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9InBhdGhtYXA6Ly9QYXB5cnVzX0FsZl9MSUJSQVJJRVMvYWxmbGlicmFyeS51bWwjXzBiQkk0SHk1RWVDS3k1a1NxZDRlVnciLz4KKyAgICA8L3BhY2thZ2VJbXBvcnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9HcUNlQVhVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJPcm9jb3MiLz4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX0dxQ2VBblV3RWVLdGtwZDZXNEJQNWciIG5hbWU9IkNhbWVyYU1haW5fMDAyIj4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX0dxQ2VBM1V3RWVLdGtwZDZXNEJQNWciIG5hbWU9IkltYWdlIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX21KRGE4QUt1RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9HcUNlQkhVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJJbmZvIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzVkX2VFQUtvRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9HcUNlQlhVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJNb3JzZSIvPgorICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfR3FDZUJuVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iR3lyb3Njb3BlXzAwMSI+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9HcUNlQjNVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJBbmdsZXMiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xYVMyb0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfR3FDZUNIVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iR1BTXzAwMSI+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9HcUNlQ1hVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJQb3NpdGlvbiIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3FhUzJvQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9HcUNlQ25Vd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJyb3MiLz4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX0dxQ2VDM1V3RWVLdGtwZDZXNEJQNWciIG5hbWU9Ik1vdGlvbl9Db250cm9sbGVyIj4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX0dxQ2VESFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9IlRhcmdldFBvc2l0aW9uIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzFfLTVvQUg1RWVDX1pMekxRaFctVFEiLz4KKyAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9HcUNlRFhVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJlbnYiLz4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX0dxQ2VEblV3RWVLdGtwZDZXNEJQNWciIG5hbWU9IlJNYXgiLz4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX0dxQ2VISFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9IlJNYXhDb250cm9sU3lzdGVtIj4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX0dxQ2VIWFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9InN0YXRlIiB0eXBlPSJfR3FDZW9uVXdFZUt0a3BkNlc0QlA1ZyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIvPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfR3FDZUhuVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iaW1hZ2UiIHR5cGU9Il9HcURGQzNVd0VlS3RrcGQ2VzRCUDVnIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIi8+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9HcUNlSDNVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJSbWF4Q29udHJvbFJlcSIgdHlwZT0iX0dxREZHblV3RWVLdGtwZDZXNEJQNWciIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiLz4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX0dxQ2VJSFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9IkNhbWVyYUNvbnRyb2xSZXEiIHR5cGU9Il9HcURGWFhVd0VlS3RrcGQ2VzRCUDVnIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIi8+CisgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9HcUNlTFhVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJBdmlvbmljU3lzdGVtIj4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9HcUNlTG5Vd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJtX2d5cm8iIHR5cGU9Il9HcUNlQm5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfR3FDZUwzVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ibV9vYmMiIHR5cGU9Il9HcUNlRDNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfR3FDZU1IVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ibV9ncHMiIHR5cGU9Il9HcUNlQ0hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfR3FDZU1YVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ibV9tb3Rpb24iIHR5cGU9Il9HcUNlQzNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOmlkPSJfR3FDZU1uVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iQ29ubmVjdG9yMSI+CisgICAgICAgIDxlbmQgeG1pOmlkPSJfR3FDZU0zVXdFZUt0a3BkNlc0QlA1ZyIgcGFydFdpdGhQb3J0PSJfR3FDZUxuVXdFZUt0a3BkNlc0QlA1ZyIgcm9sZT0iX0dxQ2VCM1V3RWVLdGtwZDZXNEJQNWciPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0dxQ2VOSFV3RWVLdGtwZDZXNEJQNWciIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfR3FDZU5YVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICAgIDxlbmQgeG1pOmlkPSJfR3FDZU5uVXdFZUt0a3BkNlc0QlA1ZyIgcGFydFdpdGhQb3J0PSJfR3FDZUwzVXdFZUt0a3BkNlc0QlA1ZyIgcm9sZT0iX0dxQ2VFWFV3RWVLdGtwZDZXNEJQNWciPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0dxQ2VOM1V3RWVLdGtwZDZXNEJQNWciIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfR3FDZU9IVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTppZD0iX0dxQ2VPWFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9IkNvbm5lY3RvcjIiPgorICAgICAgICA8ZW5kIHhtaTppZD0iX0dxQ2VPblV3RWVLdGtwZDZXNEJQNWciIHBhcnRXaXRoUG9ydD0iX0dxQ2VNSFV3RWVLdGtwZDZXNEJQNWciIHJvbGU9Il9HcUNlQ1hVd0VlS3RrcGQ2VzRCUDVnIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9HcUNlTzNVd0VlS3RrcGQ2VzRCUDVnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0dxQ2VQSFV3RWVLdGtwZDZXNEJQNWciIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgICA8ZW5kIHhtaTppZD0iX0dxQ2VQWFV3RWVLdGtwZDZXNEJQNWciIHBhcnRXaXRoUG9ydD0iX0dxQ2VMM1V3RWVLdGtwZDZXNEJQNWciIHJvbGU9Il9HcUNlRUhVd0VlS3RrcGQ2VzRCUDVnIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9HcUNlUG5Vd0VlS3RrcGQ2VzRCUDVnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0dxQ2VQM1V3RWVLdGtwZDZXNEJQNWciIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6aWQ9Il9HcUNlUUhVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJDb25uZWN0b3IzIj4KKyAgICAgICAgPGVuZCB4bWk6aWQ9Il9HcUNlUVhVd0VlS3RrcGQ2VzRCUDVnIiBwYXJ0V2l0aFBvcnQ9Il9HcUNlTDNVd0VlS3RrcGQ2VzRCUDVnIiByb2xlPSJfR3FDZUVuVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfR3FDZVFuVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9HcUNlUTNVd0VlS3RrcGQ2VzRCUDVnIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgICAgPGVuZCB4bWk6aWQ9Il9HcUNlUkhVd0VlS3RrcGQ2VzRCUDVnIiBwYXJ0V2l0aFBvcnQ9Il9HcUNlTVhVd0VlS3RrcGQ2VzRCUDVnIiByb2xlPSJfR3FDZURIVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfR3FDZVJYVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9HcUNlUm5Vd0VlS3RrcGQ2VzRCUDVnIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9HcUNlUjNVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJDYW1lcmFTeXN0ZW0iPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0dxQ2VTSFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9Im1fY2FtZXJhIiB0eXBlPSJfR3FDZUFuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0dxQ2VTWFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9Im1fdGFsY19jYW1fZHJpdiIgdHlwZT0iX0dxQ2VGblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6aWQ9Il9HcUNlU25Vd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJDb25uZWN0b3IxIj4KKyAgICAgICAgPGVuZCB4bWk6aWQ9Il9HcUNlUzNVd0VlS3RrcGQ2VzRCUDVnIiBwYXJ0V2l0aFBvcnQ9Il9HcUNlU0hVd0VlS3RrcGQ2VzRCUDVnIiByb2xlPSJfR3FDZUEzVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfR3FDZVRIVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9HcUNlVFhVd0VlS3RrcGQ2VzRCUDVnIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgICAgPGVuZCB4bWk6aWQ9Il9HcUNlVG5Vd0VlS3RrcGQ2VzRCUDVnIiBwYXJ0V2l0aFBvcnQ9Il9HcUNlU1hVd0VlS3RrcGQ2VzRCUDVnIiByb2xlPSJfR3FDZUYzVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfR3FDZVQzVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9HcUNlVUhVd0VlS3RrcGQ2VzRCUDVnIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOmlkPSJfR3FDZVVYVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iQ29ubmVjdG9yMiI+CisgICAgICAgIDxlbmQgeG1pOmlkPSJfR3FDZVVuVXdFZUt0a3BkNlc0QlA1ZyIgcGFydFdpdGhQb3J0PSJfR3FDZVNIVXdFZUt0a3BkNlc0QlA1ZyIgcm9sZT0iX0dxQ2VCSFV3RWVLdGtwZDZXNEJQNWciPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0dxQ2VVM1V3RWVLdGtwZDZXNEJQNWciIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfR3FDZVZIVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICAgIDxlbmQgeG1pOmlkPSJfR3FDZVZYVXdFZUt0a3BkNlc0QlA1ZyIgcGFydFdpdGhQb3J0PSJfR3FDZVNYVXdFZUt0a3BkNlc0QlA1ZyIgcm9sZT0iX0dxQ2VHSFV3RWVLdGtwZDZXNEJQNWciPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0dxQ2VWblV3RWVLdGtwZDZXNEJQNWciIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfR3FDZVYzVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfR3FDZVdIVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iUm1heEhhcmR3YXJlQXJjaGl0ZWN0dXJlIj4KKyAgICAgIDxvd25lZENvbW1lbnQgeG1pOmlkPSJfR3FDZVdYVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICAgIDxib2R5PjwvYm9keT4KKyAgICAgIDwvb3duZWRDb21tZW50PgorICAgICAgPG93bmVkQ29tbWVudCB4bWk6aWQ9Il9HcUNlV25Vd0VlS3RrcGQ2VzRCUDVnIj4KKyAgICAgICAgPGJvZHk+PC9ib2R5PgorICAgICAgPC9vd25lZENvbW1lbnQ+CisgICAgICA8b3duZWRDb21tZW50IHhtaTppZD0iX0dxQ2VXM1V3RWVLdGtwZDZXNEJQNWciPgorICAgICAgICA8Ym9keT48L2JvZHk+CisgICAgICA8L293bmVkQ29tbWVudD4KKyAgICAgIDxvd25lZFJ1bGUgeG1pOmlkPSJfR3FDZVhIVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iQ29uc3RyYWludDEiPgorICAgICAgICA8c3BlY2lmaWNhdGlvbiB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX0dxQ2VYWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDwvb3duZWRSdWxlPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0dxQ2VYblV3RWVLdGtwZDZXNEJQNWciIG5hbWU9Im1fdWF2IiB0eXBlPSJfR3FDZURuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0dxQ2VYM1V3RWVLdGtwZDZXNEJQNWciIG5hbWU9IlByb3BlcnR5MiIgdHlwZT0iX0dxQ2VEM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9HcUNlWUhVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJtX2NhbSIgdHlwZT0iX0dxQ2VBblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9HcUNlWVhVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJtX2d5cm8iIHR5cGU9Il9HcUNlQm5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfR3FDZVluVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ibV9ncHMiIHR5cGU9Il9HcUNlQ0hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfR3FDZVkzVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ibV9tb3Rpb24iIHR5cGU9Il9HcUNlQzNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOmlkPSJfR3FDZVpIVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0idHJhbnNsYXRlKHg9MS40MDAwKS5yb3RhdGUoeD0tMS41NzA4KS5hcHBlbmQiIGlzU3RhdGljPSJ0cnVlIj4KKyAgICAgICAgPGVuZCB4bWk6aWQ9Il9HcUNlWlhVd0VlS3RrcGQ2VzRCUDVnIiByb2xlPSJfR3FDZVlIVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfR3FDZVpuVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9HcUNlWjNVd0VlS3RrcGQ2VzRCUDVnIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgICAgPGVuZCB4bWk6aWQ9Il9HcUNlYUhVd0VlS3RrcGQ2VzRCUDVnIiByb2xlPSJfR3FDZVhuVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfR3FDZWFYVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9HcUNlYW5Vd0VlS3RrcGQ2VzRCUDVnIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOmlkPSJfR3FDZWEzVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0idHJhbnNsYXRlKHg9MC44MDAwLCB6PTEuMTAwMCkuYXBwZW5kIj4KKyAgICAgICAgPGVuZCB4bWk6aWQ9Il9HcUNlYkhVd0VlS3RrcGQ2VzRCUDVnIiByb2xlPSJfR3FDZVlYVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfR3FDZWJYVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9HcUNlYm5Vd0VlS3RrcGQ2VzRCUDVnIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgICAgPGVuZCB4bWk6aWQ9Il9HcUNlYjNVd0VlS3RrcGQ2VzRCUDVnIiByb2xlPSJfR3FDZVhuVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfR3FDZWNIVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9HcUNlY1hVd0VlS3RrcGQ2VzRCUDVnIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOmlkPSJfR3FDZWNuVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iYXBwZW5kIj4KKyAgICAgICAgPGVuZCB4bWk6aWQ9Il9HcUNlYzNVd0VlS3RrcGQ2VzRCUDVnIiByb2xlPSJfR3FDZVluVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfR3FDZWRIVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9HcUNlZFhVd0VlS3RrcGQ2VzRCUDVnIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgICAgPGVuZCB4bWk6aWQ9Il9HcUNlZG5Vd0VlS3RrcGQ2VzRCUDVnIiByb2xlPSJfR3FDZVhuVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfR3FDZWQzVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9HcUNlZUhVd0VlS3RrcGQ2VzRCUDVnIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOmlkPSJfR3FDZWVYVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iYXBwZW5kIj4KKyAgICAgICAgPGVuZCB4bWk6aWQ9Il9HcUNlZW5Vd0VlS3RrcGQ2VzRCUDVnIiByb2xlPSJfR3FDZVkzVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfR3FDZWUzVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9HcUNlZkhVd0VlS3RrcGQ2VzRCUDVnIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgICAgPGVuZCB4bWk6aWQ9Il9HcUNlZlhVd0VlS3RrcGQ2VzRCUDVnIiByb2xlPSJfR3FDZVhuVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfR3FDZWZuVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9HcUNlZjNVd0VlS3RrcGQ2VzRCUDVnIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9HcUNlZ0hVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJSTWF4U29mdHdhcmVBcmNoaXRlY3R1cmUiPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0dxQ2VnWFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9IlByb3BlcnR5MSIgdHlwZT0iX0dxQ2VEM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9HcUNlZ25Vd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJQcm9wZXJ0eTIiIHR5cGU9Il9HcUNlRm5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfR3FDZWczVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iUHJvcGVydHkzIiB0eXBlPSJfR3FDZUhIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTppZD0iX0dxQ2VoSFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9IkNvbm5lY3RvcjEiPgorICAgICAgICA8ZW5kIHhtaTppZD0iX0dxQ2VoWFV3RWVLdGtwZDZXNEJQNWciIHBhcnRXaXRoUG9ydD0iX0dxQ2VnblV3RWVLdGtwZDZXNEJQNWciIHJvbGU9Il9HcUNlR1hVd0VlS3RrcGQ2VzRCUDVnIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9HcUNlaG5Vd0VlS3RrcGQ2VzRCUDVnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0dxQ2VoM1V3RWVLdGtwZDZXNEJQNWciIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgICA8ZW5kIHhtaTppZD0iX0dxQ2VpSFV3RWVLdGtwZDZXNEJQNWciIHBhcnRXaXRoUG9ydD0iX0dxQ2VnM1V3RWVLdGtwZDZXNEJQNWciIHJvbGU9Il9HcUNlSG5Vd0VlS3RrcGQ2VzRCUDVnIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9HcUNlaVhVd0VlS3RrcGQ2VzRCUDVnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0dxQ2VpblV3RWVLdGtwZDZXNEJQNWciIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6aWQ9Il9HcUNlaTNVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJDb25uZWN0b3IyIj4KKyAgICAgICAgPGVuZCB4bWk6aWQ9Il9HcUNlakhVd0VlS3RrcGQ2VzRCUDVnIiBwYXJ0V2l0aFBvcnQ9Il9HcUNlZ1hVd0VlS3RrcGQ2VzRCUDVnIiByb2xlPSJfR3FDZUUzVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfR3FDZWpYVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9HcUNlam5Vd0VlS3RrcGQ2VzRCUDVnIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgICAgPGVuZCB4bWk6aWQ9Il9HcUNlajNVd0VlS3RrcGQ2VzRCUDVnIiBwYXJ0V2l0aFBvcnQ9Il9HcUNlZzNVd0VlS3RrcGQ2VzRCUDVnIiByb2xlPSJfR3FDZUhYVXdFZUt0a3BkNlc0QlA1ZyI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfR3FDZWtIVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9HcUNla1hVd0VlS3RrcGQ2VzRCUDVnIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOmlkPSJfR3FDZWtuVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iQ29ubmVjdG9yMyI+CisgICAgICAgIDxlbmQgeG1pOmlkPSJfR3FDZWszVXdFZUt0a3BkNlc0QlA1ZyIgcGFydFdpdGhQb3J0PSJfR3FDZWdYVXdFZUt0a3BkNlc0QlA1ZyIgcm9sZT0iX0dxQ2VGWFV3RWVLdGtwZDZXNEJQNWciPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0dxQ2VsSFV3RWVLdGtwZDZXNEJQNWciIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfR3FDZWxYVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICAgIDxlbmQgeG1pOmlkPSJfR3FDZWxuVXdFZUt0a3BkNlc0QlA1ZyIgcGFydFdpdGhQb3J0PSJfR3FDZWczVXdFZUt0a3BkNlc0QlA1ZyIgcm9sZT0iX0dxQ2VIM1V3RWVLdGtwZDZXNEJQNWciPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0dxQ2VsM1V3RWVLdGtwZDZXNEJQNWciIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfR3FDZW1IVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTppZD0iX0dxQ2VtWFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9IkNvbm5lY3RvcjQiPgorICAgICAgICA8ZW5kIHhtaTppZD0iX0dxQ2VtblV3RWVLdGtwZDZXNEJQNWciIHBhcnRXaXRoUG9ydD0iX0dxQ2VnblV3RWVLdGtwZDZXNEJQNWciIHJvbGU9Il9HcUNlRzNVd0VlS3RrcGQ2VzRCUDVnIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9HcUNlbTNVd0VlS3RrcGQ2VzRCUDVnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0dxQ2VuSFV3RWVLdGtwZDZXNEJQNWciIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgICA8ZW5kIHhtaTppZD0iX0dxQ2VuWFV3RWVLdGtwZDZXNEJQNWciIHBhcnRXaXRoUG9ydD0iX0dxQ2VnM1V3RWVLdGtwZDZXNEJQNWciIHJvbGU9Il9HcUNlSUhVd0VlS3RrcGQ2VzRCUDVnIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9HcUNlbm5Vd0VlS3RrcGQ2VzRCUDVnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0dxQ2VuM1V3RWVLdGtwZDZXNEJQNWciIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgeG1pOmlkPSJfR3FDZW9IVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iUGxhdGZvcm1Nb2RlbCI+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgeG1pOmlkPSJfR3FDZW9YVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iQ29udHJvbFN5c3RlbVBsYXRmb3JtIi8+CisgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIHhtaTppZD0iX2dVenJ3SFljRWVLUEs4WmhQVHhIT3ciIG5hbWU9IkMrK3R5cGVzIj4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiB4bWk6aWQ9Il9HcURGR0hVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJ1bnNpZ25lZCBjaGFyICoiLz4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiB4bWk6aWQ9Il9HcURGR1hVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJ1bnNpZ25lZCBjaGFyICoqIi8+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgeG1pOmlkPSJfQkJUTWtIWWNFZUtQSzhaaFBUeEhPdyIgbmFtZT0idW5zaWduZWQiLz4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiB4bWk6aWQ9Il90Ri00TUhZY0VlS1BLOFpoUFR4SE93IiBuYW1lPSJkb3VibGUiLz4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiB4bWk6aWQ9Il9fYXlGUUhZY0VlS1BLOFpoUFR4SE93IiBuYW1lPSJpbnQiLz4KKyAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgeG1pOmlkPSJfRUhCWW9IWWlFZUtQSzhaaFBUeEhPdyIgbmFtZT0iVmlkZW8iPgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9HcURGQzNVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJJbWFnZSI+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9HcURGREhVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJtX2NvbXByZXNzaW9uX2Zvcl9sb2dnaW5nIiB0eXBlPSJfX2F5RlFIWWNFZUtQSzhaaFBUeEhPdyIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfR3FERkRYVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ibV90cyIgdmlzaWJpbGl0eT0icHJpdmF0ZSIgdHlwZT0iX3RGLTRNSFljRWVLUEs4WmhQVHhIT3ciLz4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0dxREZEblV3RWVLdGtwZDZXNEJQNWciIG5hbWU9Im1fd2lkdGgiIHZpc2liaWxpdHk9InByaXZhdGUiIHR5cGU9Il9CQlRNa0hZY0VlS1BLOFpoUFR4SE93Ii8+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9HcURGRDNVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJtX2hlaWdodCIgdmlzaWJpbGl0eT0icHJpdmF0ZSIgdHlwZT0iX0JCVE1rSFljRWVLUEs4WmhQVHhIT3ciLz4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0dxREZFSFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9Im1fY29sb3IiIHZpc2liaWxpdHk9InByaXZhdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX05ablRzQUlVRWVDVnJMRUJINWVqblEiLz4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0dxREZFWFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9Im1fcG5tX2ltYWdlIiB2aXNpYmlsaXR5PSJwcml2YXRlIiB0eXBlPSJfR3FERkdIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfR3FERkVuVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ibV9waXhlbHMiIHZpc2liaWxpdHk9InByaXZhdGUiIHR5cGU9Il9HcURGR0hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9HcURGRTNVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJtX3Jvd3MiIHZpc2liaWxpdHk9InByaXZhdGUiIHR5cGU9Il9HcURGR1hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6aWQ9Il9PUTFUZ0hZZEVlS1BLOFpoUFR4SE93IiBuYW1lPSJnZXRXaWR0aCI+CisgICAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTppZD0iX25xRXpzSFlkRWVLUEs4WmhQVHhIT3ciIHR5cGU9Il9CQlRNa0hZY0VlS1BLOFpoUFR4SE93IiBkaXJlY3Rpb249InJldHVybiIvPgorICAgICAgICA8L293bmVkT3BlcmF0aW9uPgorICAgICAgICA8b3duZWRPcGVyYXRpb24geG1pOmlkPSJfU2JiMlFIWWVFZUtQSzhaaFBUeEhPdyIgbmFtZT0iZ2V0SGVpZ2h0Ij4KKyAgICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOmlkPSJfZFk2M2dIWWVFZUtQSzhaaFBUeEhPdyIgdHlwZT0iX0JCVE1rSFljRWVLUEs4WmhQVHhIT3ciIGRpcmVjdGlvbj0icmV0dXJuIi8+CisgICAgICAgIDwvb3duZWRPcGVyYXRpb24+CisgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfR3FERkZIVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iVGh1bWIiPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfR3FERkZYVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ibV9kYXRhIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI182Tkpma0FLbkVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfR3FERkZuVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjIzMDMxNCIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0dxREZGM1V3RWVLdGtwZDZXNEJQNWciIHZhbHVlPSIyMzAzMTQiLz4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkludGVyZmFjZSIgeG1pOmlkPSJfR3FERlhYVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iQ2FtZXJhSW50ZXJmYWNlIj4KKyAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTppZD0iX0dxREZYblV3RWVLdGtwZDZXNEJQNWciIG5hbWU9ImdldEludGVyZmFjZU5hbWUiPgorICAgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6aWQ9Il9OakFYOEhkQUVlS1pZcTBUUlVSVmF3IiB0eXBlPSJfQVljYklIZEFFZUtaWXEwVFJVUlZhdyIgZGlyZWN0aW9uPSJyZXR1cm4iLz4KKyAgICAgICAgPC9vd25lZE9wZXJhdGlvbj4KKyAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTppZD0iX0dxREZYM1V3RWVLdGtwZDZXNEJQNWciIG5hbWU9InNldEdhaW4iLz4KKyAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTppZD0iX0dxREZZSFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9ImdldEdhaW4iLz4KKyAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTppZD0iX0dxREZZWFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9InNldEdhaW5BdXRvIi8+CisgICAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6aWQ9Il9HcURGWW5Vd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJnZXRHYWluQXV0byIvPgorICAgICAgICA8b3duZWRPcGVyYXRpb24geG1pOmlkPSJfR3FERlkzVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ic2V0R2FpbkF1dG9NaW4iLz4KKyAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTppZD0iX0dxREZaSFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9ImdldEdhaW5BdXRvTWluIi8+CisgICAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6aWQ9Il9HcURGWlhVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJzZXRHYWluQXV0b01heCIvPgorICAgICAgICA8b3duZWRPcGVyYXRpb24geG1pOmlkPSJfR3FERlpuVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iZ2V0R2FpbkF1dG9NYXgiLz4KKyAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTppZD0iX0dxREZaM1V3RWVLdGtwZDZXNEJQNWciIG5hbWU9InNldFNodXR0ZXIiLz4KKyAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTppZD0iX0dxREZhSFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9ImdldFNodXRlciIvPgorICAgICAgICA8b3duZWRPcGVyYXRpb24geG1pOmlkPSJfR3FERmFYVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ic2V0U2h1dHRlckF1dG8iLz4KKyAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTppZD0iX0dxREZhblV3RWVLdGtwZDZXNEJQNWciIG5hbWU9ImdldFNodXR0ZXJBdXRvIi8+CisgICAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6aWQ9Il9HcURGYTNVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJzZXRTaHV0dGVyQXV0b01pbiIvPgorICAgICAgICA8b3duZWRPcGVyYXRpb24geG1pOmlkPSJfR3FERmJIVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iZ2V0U2h1dHRlckF1dG9NaW4iLz4KKyAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTppZD0iX0dxREZiWFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9InNldFNodXR0ZXJBdXRvTWF4Ii8+CisgICAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6aWQ9Il9HcURGYm5Vd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJnZXRTaHV0dGVyQXV0b01heCIvPgorICAgICAgICA8b3duZWRPcGVyYXRpb24geG1pOmlkPSJfR3FERmIzVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ic2V0QnJpZ2h0bmVzcyIvPgorICAgICAgICA8b3duZWRPcGVyYXRpb24geG1pOmlkPSJfR3FERmNIVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iZ2V0QnJpZ2h0bmVzcyIvPgorICAgICAgICA8b3duZWRPcGVyYXRpb24geG1pOmlkPSJfWUtxNk1IZEFFZUtaWXEwVFJVUlZhdyIgbmFtZT0iaW5pdCI+CisgICAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTppZD0iX250dm1nSGRBRWVLWllxMFRSVVJWYXciIHR5cGU9Il9wWnhxZ0hkQUVlS1pZcTBUUlVSVmF3IiBkaXJlY3Rpb249InJldHVybiIvPgorICAgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6aWQ9Il9uY1hRc0hkQ0VlSzhlT2pnT3VYaGh3IiB0eXBlPSJfR3FERkMzVXdFZUt0a3BkNlc0QlA1ZyIgZWZmZWN0PSJyZWFkIi8+CisgICAgICAgIDwvb3duZWRPcGVyYXRpb24+CisgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiB4bWk6aWQ9Il9KNnJVZ0haLUVlSzNIcHdYVVc3M0JRIiBuYW1lPSJPcm9jb3MiPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX0dxQ2VGblV3RWVLdGtwZDZXNEJQNWciIG5hbWU9IkNhbWVyYSI+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfR3FDZUYzVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iSW1hZ2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX21KRGE4QUt1RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX0dxQ2VHSFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9IkluZm8iIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzVkX2VFQUtvRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX0dxQ2VHWFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9ImltYWdlIiB0eXBlPSJfR3FERkMzVXdFZUt0a3BkNlc0QlA1ZyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIvPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX0dxQ2VHblV3RWVLdGtwZDZXNEJQNWciIG5hbWU9InRodW1iIiB0eXBlPSJfR3FERkZIVXdFZUt0a3BkNlc0QlA1ZyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIvPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX0dxQ2VHM1V3RWVLdGtwZDZXNEJQNWciIG5hbWU9IkNhbWVyYUNvbnRyb2xQcm8iIHR5cGU9Il9HcURGWFhVd0VlS3RrcGQ2VzRCUDVnIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIi8+CisgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIHhtaTppZD0iX3R6R193SFlqRWVLUEs4WmhQVHhIT3ciIG5hbWU9IkF2aW9uaXF1ZSI+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX0dxREZmSFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9IldheSI+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9HcURGZlhVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJtX2lkIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19uQ091b0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9HcURGZm5Vd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJtX3Bvc2l0aW9uX2luX21pc3Npb24iPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX25DT3VvQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0dxREZmM1V3RWVLdGtwZDZXNEJQNWciIG5hbWU9Im1fbmJfbG9vcHMiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX25DT3VvQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0dxREZnSFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9Im1fbmJfd3AiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX25DT3VvQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0dxREZnWFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9Im1fZmlyc3Rfd3BfaWQiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX25DT3VvQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9HcURGY1hVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJXYXlwb2ludCI+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9HcURGY25Vd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJtX2lkIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19uQ091b0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9HcURGYzNVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJtX3giPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0dxREZkSFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9Im1feSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfR3FERmRYVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ibV96Ij4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9HcURGZG5Vd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJtX2NhcCI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfR3FERmQzVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ibV9kZXJhcCI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfR3FERmVIVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ibV92ZWwiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0dxREZlWFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9Im1fdl9wcm94Ij4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9HcURGZW5Vd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJtX2RfcHJveCI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfR3FERmUzVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ibV93YWl0Ij4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfR3FDZW9uVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iU3RhdGUiPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfR3FDZW8zVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ibV90c19yZWYiIHR5cGU9Il90Ri00TUhZY0VlS1BLOFpoUFR4SE93Ii8+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9HcUNlcEhVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJtX3RzIiB0eXBlPSJfdEYtNE1IWWNFZUtQSzhaaFBUeEhPdyIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfR3FDZXBYVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ibV90c19yZW1vdGUiIHR5cGU9Il90Ri00TUhZY0VlS1BLOFpoUFR4SE93Ii8+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9HcUNlcG5Vd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJtX3BoYXNlIiB0eXBlPSJfQkJUTWtIWWNFZUtQSzhaaFBUeEhPdyIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfR3FDZXAzVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ibV93cCIgdHlwZT0iX0JCVE1rSFljRWVLUEs4WmhQVHhIT3ciLz4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0dxQ2VxSFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9Im1fY3B0IiB0eXBlPSJfQkJUTWtIWWNFZUtQSzhaaFBUeEhPdyIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfR3FDZXFYVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ibV9oX2ludF90aW1lIiB0eXBlPSJfdEYtNE1IWWNFZUtQSzhaaFBUeEhPdyIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfR3FDZXFuVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ibV9oIiB0eXBlPSJfdEYtNE1IWWNFZUtQSzhaaFBUeEhPdyIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfR3FDZXEzVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ibV9ncHNfaW50X3RpbWUiIHR5cGU9Il90Ri00TUhZY0VlS1BLOFpoUFR4SE93Ii8+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9HcUNlckhVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJtX3BvcyIgdHlwZT0iX3RGLTRNSFljRWVLUEs4WmhQVHhIT3ciPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0dxREZBSFV3RWVLdGtwZDZXNEJQNWciIHZhbHVlPSIzIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfR3FERkFYVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjMiLz4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0dxREZBblV3RWVLdGtwZDZXNEJQNWciIG5hbWU9Im1fYXR0IiB0eXBlPSJfdEYtNE1IWWNFZUtQSzhaaFBUeEhPdyI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfR3FERkEzVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjMiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9HcURGQkhVd0VlS3RrcGQ2VzRCUDVnIiB2YWx1ZT0iMyIvPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfR3FERkJYVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ibV92ZWwiIHR5cGU9Il90Ri00TUhZY0VlS1BLOFpoUFR4SE93Ij4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9HcURGQm5Vd0VlS3RrcGQ2VzRCUDVnIiB2YWx1ZT0iMyIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0dxREZCM1V3RWVLdGtwZDZXNEJQNWciIHZhbHVlPSIzIi8+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9HcURGQ0hVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJtX2FjYyIgdHlwZT0iX3RGLTRNSFljRWVLUEs4WmhQVHhIT3ciPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0dxREZDWFV3RWVLdGtwZDZXNEJQNWciIHZhbHVlPSIzIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfR3FERkNuVXdFZUt0a3BkNlc0QlA1ZyIgdmFsdWU9IjMiLz4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkludGVyZmFjZSIgeG1pOmlkPSJfR3FERkduVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iT2JjSW50ZXJmYWNlIj4KKyAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTppZD0iX0dxREZHM1V3RWVLdGtwZDZXNEJQNWciIG5hbWU9ImdldEludGVyZmFjZU5hbWUiPgorICAgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6aWQ9Il9HcURGSEhVd0VlS3RrcGQ2VzRCUDVnIiBkaXJlY3Rpb249InJldHVybiI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xYVMyb0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPC9vd25lZFBhcmFtZXRlcj4KKyAgICAgICAgPC9vd25lZE9wZXJhdGlvbj4KKyAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTppZD0iX0dxREZIWFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9ImdldFN0YXRlIj4KKyAgICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOmlkPSJfR3FERkhuVXdFZUt0a3BkNlc0QlA1ZyIgZGlyZWN0aW9uPSJyZXR1cm4iPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTlpuVHNBSVVFZUNWckxFQkg1ZWpuUSIvPgorICAgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTppZD0iX0dxREZIM1V3RWVLdGtwZDZXNEJQNWciIG5hbWU9InN0YXRlIiB0eXBlPSJfR3FDZW9uVXdFZUt0a3BkNlc0QlA1ZyIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOmlkPSJfR3FERklIVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iZGF0ZSI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPC9vd25lZFBhcmFtZXRlcj4KKyAgICAgICAgPC9vd25lZE9wZXJhdGlvbj4KKyAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTppZD0iX0dxREZJWFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9InNldFBoYXNlIj4KKyAgICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOmlkPSJfR3FERkluVXdFZUt0a3BkNlc0QlA1ZyIgZGlyZWN0aW9uPSJyZXR1cm4iPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTlpuVHNBSVVFZUNWckxFQkg1ZWpuUSIvPgorICAgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTppZD0iX0dxREZJM1V3RWVLdGtwZDZXNEJQNWciIG5hbWU9InBoYXNlIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX25DT3VvQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICA8L293bmVkT3BlcmF0aW9uPgorICAgICAgICA8b3duZWRPcGVyYXRpb24geG1pOmlkPSJfR3FERkpIVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ic2V0UGhhc2VTdHIiPgorICAgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6aWQ9Il9HcURGSlhVd0VlS3RrcGQ2VzRCUDVnIiBkaXJlY3Rpb249InJldHVybiI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19OWm5Uc0FJVUVlQ1ZyTEVCSDVlam5RIi8+CisgICAgICAgICAgPC9vd25lZFBhcmFtZXRlcj4KKyAgICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOmlkPSJfR3FERkpuVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ic3RyIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3FhUzJvQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICA8L293bmVkT3BlcmF0aW9uPgorICAgICAgICA8b3duZWRPcGVyYXRpb24geG1pOmlkPSJfR3FERkozVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ic2V0UGhhc2VEZXNjZW50ZSI+CisgICAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTppZD0iX0dxREZLSFV3RWVLdGtwZDZXNEJQNWciIGRpcmVjdGlvbj0icmV0dXJuIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX05ablRzQUlVRWVDVnJMRUJINWVqblEiLz4KKyAgICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6aWQ9Il9HcURGS1hVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJhbHRpdHVkZSI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPC9vd25lZFBhcmFtZXRlcj4KKyAgICAgICAgPC9vd25lZE9wZXJhdGlvbj4KKyAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTppZD0iX0dxREZLblV3RWVLdGtwZDZXNEJQNWciIG5hbWU9ImdldFBoYXNlIj4KKyAgICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOmlkPSJfR3FERkszVXdFZUt0a3BkNlc0QlA1ZyIgZGlyZWN0aW9uPSJyZXR1cm4iPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfbkNPdW9BSC1FZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgIDwvb3duZWRPcGVyYXRpb24+CisgICAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6aWQ9Il9HcURGTEhVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJnZXRQaGFzZVN0ciI+CisgICAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTppZD0iX0dxREZMWFV3RWVLdGtwZDZXNEJQNWciIGRpcmVjdGlvbj0icmV0dXJuIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3FhUzJvQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICA8L293bmVkT3BlcmF0aW9uPgorICAgICAgICA8b3duZWRPcGVyYXRpb24geG1pOmlkPSJfR3FERkxuVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ibW92ZSI+CisgICAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTppZD0iX0dxREZMM1V3RWVLdGtwZDZXNEJQNWciIGRpcmVjdGlvbj0icmV0dXJuIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX05ablRzQUlVRWVDVnJMRUJINWVqblEiLz4KKyAgICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6aWQ9Il9HcURGTUhVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJ4Ij4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6aWQ9Il9HcURGTVhVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJ5Ij4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6aWQ9Il9HcURGTW5Vd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJ6Ij4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6aWQ9Il9HcURGTTNVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJwc2kiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgIDwvb3duZWRPcGVyYXRpb24+CisgICAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6aWQ9Il9HcURGTkhVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJnb3RvdSI+CisgICAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTppZD0iX0dxREZOWFV3RWVLdGtwZDZXNEJQNWciIGRpcmVjdGlvbj0icmV0dXJuIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX05ablRzQUlVRWVDVnJMRUJINWVqblEiLz4KKyAgICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6aWQ9Il9HcURGTm5Vd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJ4Ij4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6aWQ9Il9HcURGTjNVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJ5Ij4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6aWQ9Il9HcURGT0hVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJ6Ij4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6aWQ9Il9HcURGT1hVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJwc2kiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgIDwvb3duZWRPcGVyYXRpb24+CisgICAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6aWQ9Il9HcURGT25Vd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJ0cmFjayI+CisgICAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTppZD0iX0dxREZPM1V3RWVLdGtwZDZXNEJQNWciIGRpcmVjdGlvbj0icmV0dXJuIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX05ablRzQUlVRWVDVnJMRUJINWVqblEiLz4KKyAgICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6aWQ9Il9HcURGUEhVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJ2eCI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPC9vd25lZFBhcmFtZXRlcj4KKyAgICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOmlkPSJfR3FERlBYVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0idnkiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTppZD0iX0dxREZQblV3RWVLdGtwZDZXNEJQNWciIG5hbWU9InoiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTppZD0iX0dxREZQM1V3RWVLdGtwZDZXNEJQNWciIG5hbWU9InBzaSI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPC9vd25lZFBhcmFtZXRlcj4KKyAgICAgICAgPC9vd25lZE9wZXJhdGlvbj4KKyAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTppZD0iX0dxREZRSFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9ImFsdGl0dWRlIj4KKyAgICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOmlkPSJfR3FERlFYVXdFZUt0a3BkNlc0QlA1ZyIgZGlyZWN0aW9uPSJyZXR1cm4iPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTlpuVHNBSVVFZUNWckxFQkg1ZWpuUSIvPgorICAgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTppZD0iX0dxREZRblV3RWVLdGtwZDZXNEJQNWciIG5hbWU9ImFsdGl0dWRlIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6aWQ9Il9HcURGUTNVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJlbmFibGUiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTlpuVHNBSVVFZUNWckxFQkg1ZWpuUSIvPgorICAgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgIDwvb3duZWRPcGVyYXRpb24+CisgICAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6aWQ9Il9HcURGUkhVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJ3YXlwb2ludEFkZCI+CisgICAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTppZD0iX0dxREZSWFV3RWVLdGtwZDZXNEJQNWciIGRpcmVjdGlvbj0icmV0dXJuIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX05ablRzQUlVRWVDVnJMRUJINWVqblEiLz4KKyAgICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6aWQ9Il9HcURGUm5Vd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJ3cCIgdHlwZT0iX0dxREZjWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9vd25lZE9wZXJhdGlvbj4KKyAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTppZD0iX0dxREZSM1V3RWVLdGtwZDZXNEJQNWciIG5hbWU9IndheXBvaW50RGVsIj4KKyAgICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOmlkPSJfR3FERlNIVXdFZUt0a3BkNlc0QlA1ZyIgZGlyZWN0aW9uPSJyZXR1cm4iPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTlpuVHNBSVVFZUNWckxFQkg1ZWpuUSIvPgorICAgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTppZD0iX0dxREZTWFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9IndwIiB0eXBlPSJfR3FERmNYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICAgICAgICA8L293bmVkT3BlcmF0aW9uPgorICAgICAgICA8b3duZWRPcGVyYXRpb24geG1pOmlkPSJfR3FERlNuVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0id2F5QWRkIj4KKyAgICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOmlkPSJfR3FERlMzVXdFZUt0a3BkNlc0QlA1ZyIgZGlyZWN0aW9uPSJyZXR1cm4iPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTlpuVHNBSVVFZUNWckxFQkg1ZWpuUSIvPgorICAgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTppZD0iX0dxREZUSFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9InciIHR5cGU9Il9HcURGZkhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgIDwvb3duZWRPcGVyYXRpb24+CisgICAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6aWQ9Il9HcURGVFhVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJ3YXlEZWwiPgorICAgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6aWQ9Il9HcURGVG5Vd0VlS3RrcGQ2VzRCUDVnIiBkaXJlY3Rpb249InJldHVybiI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19OWm5Uc0FJVUVlQ1ZyTEVCSDVlam5RIi8+CisgICAgICAgICAgPC9vd25lZFBhcmFtZXRlcj4KKyAgICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOmlkPSJfR3FERlQzVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0idyIgdHlwZT0iX0dxREZmSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9vd25lZE9wZXJhdGlvbj4KKyAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTppZD0iX0dxREZVSFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9IndheVB1c2giPgorICAgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6aWQ9Il9HcURGVVhVd0VlS3RrcGQ2VzRCUDVnIiBkaXJlY3Rpb249InJldHVybiI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19OWm5Uc0FJVUVlQ1ZyTEVCSDVlam5RIi8+CisgICAgICAgICAgPC9vd25lZFBhcmFtZXRlcj4KKyAgICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOmlkPSJfR3FERlVuVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0idyIgdHlwZT0iX0dxREZmSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgICAgICAgPC9vd25lZE9wZXJhdGlvbj4KKyAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTppZD0iX0dxREZVM1V3RWVLdGtwZDZXNEJQNWciIG5hbWU9IndheVBvcCI+CisgICAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTppZD0iX0dxREZWSFV3RWVLdGtwZDZXNEJQNWciIGRpcmVjdGlvbj0icmV0dXJuIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX05ablRzQUlVRWVDVnJMRUJINWVqblEiLz4KKyAgICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICA8L293bmVkT3BlcmF0aW9uPgorICAgICAgICA8b3duZWRPcGVyYXRpb24geG1pOmlkPSJfR3FERlZYVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0ib2JzdGFjbGVBZGQiLz4KKyAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTppZD0iX0dxREZWblV3RWVLdGtwZDZXNEJQNWciIG5hbWU9Im9ic3RhY2xlRGVsIi8+CisgICAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6aWQ9Il9HcURGVjNVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJzZXRPYmoiLz4KKyAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTppZD0iX0dxREZXSFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9InF1aWNrV2F5cG9pbnREZWwiLz4KKyAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTppZD0iX0dxREZXWFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9InF1aWNrU2V0T2JqIi8+CisgICAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6aWQ9Il9HcURGV25Vd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJnZXRNaW5EdCIvPgorICAgICAgICA8b3duZWRPcGVyYXRpb24geG1pOmlkPSJfR3FERlczVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iZ2V0TWF4ViIvPgorICAgICAgICA8b3duZWRPcGVyYXRpb24geG1pOmlkPSJfR3FERlhIVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iZ2V0TWF4QSIvPgorICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgeG1pOmlkPSJfT2IzbndIWi1FZUszSHB3WFVXNzNCUSIgbmFtZT0iT3JvY29zIj4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9HcUNlRDNVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJPYmMiPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX0dxQ2VFSFV3RWVLdGtwZDZXNEJQNWciIG5hbWU9IkdQUyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xYVMyb0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9HcUNlRVhVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJJTVUiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcWFTMm9BSC1FZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfR3FDZUVuVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iVGFyZ2V0UG9zaXRpb24iIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzFfLTVvQUg1RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX0dxQ2VFM1V3RWVLdGtwZDZXNEJQNWciIG5hbWU9InN0YXRlIiB0eXBlPSJfR3FDZW9uVXdFZUt0a3BkNlc0QlA1ZyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIvPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9HcUNlRkhVd0VlS3RrcGQ2VzRCUDVnIiBuYW1lPSJQcm9wZXJ0eTEiIHR5cGU9Il9HcUNlQVhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfR3FDZUZYVXdFZUt0a3BkNlc0QlA1ZyIgbmFtZT0iUm1heENvbnRyb2xQcm8iIHR5cGU9Il9HcURGR25Vd0VlS3RrcGQ2VzRCUDVnIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIi8+CisgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIHhtaTppZD0iX0FZY2JJSGRBRWVLWllxMFRSVVJWYXciIG5hbWU9InN0ZDo6c3RyaW5nIi8+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIHhtaTppZD0iX3BaeHFnSGRBRWVLWllxMFRSVVJWYXciIG5hbWU9ImJvb2wiLz4KKyAgICA8cHJvZmlsZUFwcGxpY2F0aW9uIHhtaTppZD0iX0dxREZnblV3RWVLdGtwZDZXNEJQNWciPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6aWQ9Il9HcURGZzNVd0VlS3RrcGQ2VzRCUDVnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICA8cmVmZXJlbmNlcyB4bWk6dHlwZT0iZWNvcmU6RVBhY2thZ2UiIGhyZWY9Imh0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMSMvIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxhcHBsaWVkUHJvZmlsZSBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfM1FPSEVQY0VFZC1KMDZVNUhNX28tUSIvPgorICAgIDwvcHJvZmlsZUFwcGxpY2F0aW9uPgorICA8L3VtbDpNb2RlbD4KKyAgPFJvYm90TUw6Um9ib3RpY01pZGRsZXdhcmUgeG1pOmlkPSJfR3FFNk1IVXdFZUt0a3BkNlc0QlA1ZyIgYmFzZV9DbGFzcz0iX0dxQ2VBWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgPFJvYm90TUw6Q2FtZXJhU3lzdGVtIHhtaTppZD0iX0dxRTZNWFV3RWVLdGtwZDZXNEJQNWciIGJhc2VfQ2xhc3M9Il9HcUNlQW5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgIDxSb2JvdE1MOlJvYm90aWNTaW11bGF0b3IgeG1pOmlkPSJfR3FFNk1uVXdFZUt0a3BkNlc0QlA1ZyIgYmFzZV9DbGFzcz0iX0dxQ2VCWFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgPFJvYm90TUw6U2Vuc29yU3lzdGVtIHhtaTppZD0iX0dxRTZNM1V3RWVLdGtwZDZXNEJQNWciIGJhc2VfQ2xhc3M9Il9HcUNlQm5Vd0VlS3RrcGQ2VzRCUDVnIi8+CisgIDxSb2JvdE1MOkdQU1N5c3RlbSB4bWk6aWQ9Il9HcUU2TkhVd0VlS3RrcGQ2VzRCUDVnIiBiYXNlX0NsYXNzPSJfR3FDZUNIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICA8Um9ib3RNTDpSb2JvdGljTWlkZGxld2FyZSB4bWk6aWQ9Il9HcUU2TlhVd0VlS3RrcGQ2VzRCUDVnIiBiYXNlX0NsYXNzPSJfR3FDZUNuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICA8Um9ib3RNTDpBY3R1YXRvclN5c3RlbSB4bWk6aWQ9Il9HcUU2Tm5Vd0VlS3RrcGQ2VzRCUDVnIiBiYXNlX0NsYXNzPSJfR3FDZUMzVXdFZUt0a3BkNlc0QlA1ZyIvPgorICA8Um9ib3RNTDpFbnZpcm9ubWVudCB4bWk6aWQ9Il9HcUU2TjNVd0VlS3RrcGQ2VzRCUDVnIiBiYXNlX0NsYXNzPSJfR3FDZURYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICA8Um9ib3RNTDpMaWRhclN5c3RlbSB4bWk6aWQ9Il9HcUU2T0hVd0VlS3RrcGQ2VzRCUDVnIi8+CisgIDxSb2JvdE1MOlJvYm90IHhtaTppZD0iX0dxRTZPWFV3RWVLdGtwZDZXNEJQNWciIGJhc2VfQ2xhc3M9Il9HcUNlRG5Vd0VlS3RrcGQ2VzRCUDVnIiBraW5kPSJVQVYiLz4KKyAgPFJvYm90TUw6Um9ib3RpY1N5c3RlbSB4bWk6aWQ9Il9HcUU2T25Vd0VlS3RrcGQ2VzRCUDVnIiBiYXNlX0NsYXNzPSJfR3FDZUQzVXdFZUt0a3BkNlc0QlA1ZyIgbmF0aXZlPSJ0cnVlIi8+CisgIDxSb2JvdE1MOlJvYm90aWNTeXN0ZW0geG1pOmlkPSJfR3FFNk8zVXdFZUt0a3BkNlc0QlA1ZyIgYmFzZV9DbGFzcz0iX0dxQ2VGblV3RWVLdGtwZDZXNEJQNWciIG5hdGl2ZT0idHJ1ZSIvPgorICA8Um9ib3RNTDpSb2JvdGljU3lzdGVtIHhtaTppZD0iX0dxRmhRSFV3RWVLdGtwZDZXNEJQNWciIGJhc2VfQ2xhc3M9Il9HcUNlSEhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9HcUZoUVhVd0VlS3RrcGQ2VzRCUDVnIiBiYXNlX1BvcnQ9Il9HcUNlQTNVd0VlS3RrcGQ2VzRCUDVnIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfR3FGaFFuVXdFZUt0a3BkNlc0QlA1ZyIgYmFzZV9Qb3J0PSJfR3FDZUJIVXdFZUt0a3BkNlc0QlA1ZyIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX0dxRmhRM1V3RWVLdGtwZDZXNEJQNWciIGJhc2VfUG9ydD0iX0dxQ2VCM1V3RWVLdGtwZDZXNEJQNWciIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9HcUZoUkhVd0VlS3RrcGQ2VzRCUDVnIiBiYXNlX1BvcnQ9Il9HcUNlQ1hVd0VlS3RrcGQ2VzRCUDVnIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfR3FGaFJYVXdFZUt0a3BkNlc0QlA1ZyIgYmFzZV9Qb3J0PSJfR3FDZURIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfR3FGaFJuVXdFZUt0a3BkNlc0QlA1ZyIgYmFzZV9Qb3J0PSJfR3FDZUVIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfR3FGaFIzVXdFZUt0a3BkNlc0QlA1ZyIgYmFzZV9Qb3J0PSJfR3FDZUVYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfR3FGaFNIVXdFZUt0a3BkNlc0QlA1ZyIgYmFzZV9Qb3J0PSJfR3FDZUVuVXdFZUt0a3BkNlc0QlA1ZyIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX0dxRmhTWFV3RWVLdGtwZDZXNEJQNWciIGJhc2VfUG9ydD0iX0dxQ2VGM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX0dxRmhTblV3RWVLdGtwZDZXNEJQNWciIGJhc2VfUG9ydD0iX0dxQ2VHSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgPFJvYm90TUw6Um9ib3RpY1N5c3RlbSB4bWk6aWQ9Il9HcUZoUzNVd0VlS3RrcGQ2VzRCUDVnIiBiYXNlX0NsYXNzPSJfR3FDZUxYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICA8Um9ib3RNTDpSb2JvdGljU3lzdGVtIHhtaTppZD0iX0dxRmhUSFV3RWVLdGtwZDZXNEJQNWciIGJhc2VfQ2xhc3M9Il9HcUNlUjNVd0VlS3RrcGQ2VzRCUDVnIi8+CisgIDxSb2JvdE1MOlJvYm90aWNTeXN0ZW0geG1pOmlkPSJfR3FGaFRYVXdFZUt0a3BkNlc0QlA1ZyIgYmFzZV9DbGFzcz0iX0dxQ2VXSFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgPFJvYm90TUw6Um9ib3RpY1N5c3RlbSB4bWk6aWQ9Il9HcUZoVG5Vd0VlS3RrcGQ2VzRCUDVnIiBiYXNlX0NsYXNzPSJfR3FDZWdIVXdFZUt0a3BkNlc0QlA1ZyIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfR3FGaFQzVXdFZUt0a3BkNlc0QlA1ZyIgYmFzZV9Qb3J0PSJfR3FDZUhYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfR3FGaFVIVXdFZUt0a3BkNlc0QlA1ZyIgYmFzZV9Qb3J0PSJfR3FDZUhuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICA8Um9ib3RNTDpTdGF0ZSB4bWk6aWQ9Il9HcUZoVVhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgIDxSb2JvdE1MOlRyYW5zaXRpb24geG1pOmlkPSJfR3FGaFVuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICA8Um9ib3RNTDpUcmFuc2l0aW9uIHhtaTppZD0iX0dxRmhVM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgPFJvYm90TUw6VHJhbnNpdGlvbiB4bWk6aWQ9Il9HcUZoVkhVd0VlS3RrcGQ2VzRCUDVnIi8+CisgIDxSb2JvdE1MOlRyYW5zaXRpb24geG1pOmlkPSJfR3FGaFZuVXdFZUt0a3BkNlc0QlA1ZyIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfR3FGaFgzVXdFZUt0a3BkNlc0QlA1ZyIgYmFzZV9Qb3J0PSJfR3FDZUUzVXdFZUt0a3BkNlc0QlA1ZyIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6U2VydmljZVBvcnQgeG1pOmlkPSJfR3FGaFlIVXdFZUt0a3BkNlc0QlA1ZyIgYmFzZV9Qb3J0PSJfR3FDZUZYVXdFZUt0a3BkNlc0QlA1ZyIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfR3FGaFlYVXdFZUt0a3BkNlc0QlA1ZyIgYmFzZV9Qb3J0PSJfR3FDZUdYVXdFZUt0a3BkNlc0QlA1ZyIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX0dxRmhZblV3RWVLdGtwZDZXNEJQNWciIGJhc2VfUG9ydD0iX0dxQ2VHblV3RWVLdGtwZDZXNEJQNWciIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOlNlcnZpY2VQb3J0IHhtaTppZD0iX0dxRmhZM1V3RWVLdGtwZDZXNEJQNWciIGJhc2VfUG9ydD0iX0dxQ2VHM1V3RWVLdGtwZDZXNEJQNWciLz4KKyAgPFJvYm90TUw6U2VydmljZVBvcnQgeG1pOmlkPSJfR3FGaFpIVXdFZUt0a3BkNlc0QlA1ZyIgYmFzZV9Qb3J0PSJfR3FDZUgzVXdFZUt0a3BkNlc0QlA1ZyIga2luZD0icmVxdWlyZWQiLz4KKyAgPFJvYm90TUw6U2VydmljZVBvcnQgeG1pOmlkPSJfR3FGaGJuVXdFZUt0a3BkNlc0QlA1ZyIgYmFzZV9Qb3J0PSJfR3FDZUlIVXdFZUt0a3BkNlc0QlA1ZyIga2luZD0icmVxdWlyZWQiLz4KKyAgPFJvYm90TUw6U2Vuc29yU3lzdGVtIHhtaTppZD0iX0hjRHVVSFhBRWVLeFNLb1E0QzJsS0EiLz4KKyAgPFJvYm90TUw6U29mdHdhcmUgeG1pOmlkPSJfdElvb1VIYUVFZUszSHB3WFVXNzNCUSIgYmFzZV9DbGFzcz0iX0dxQ2VISFV3RWVLdGtwZDZXNEJQNWciLz4KKyAgPFJvYm90TUw6U29mdHdhcmUgeG1pOmlkPSJfVHRvX01IYUZFZUszSHB3WFVXNzNCUSIgYmFzZV9DbGFzcz0iX0dxQ2VGblV3RWVLdGtwZDZXNEJQNWciLz4KKyAgPFJvYm90TUw6U29mdHdhcmUgeG1pOmlkPSJfYkVwcEFIYUZFZUszSHB3WFVXNzNCUSIgYmFzZV9DbGFzcz0iX0dxQ2VEM1V3RWVLdGtwZDZXNEJQNWciLz4KKzwveG1pOlhNST4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvcmVzb3VyY2UvQmFzaWNSb2JvdE1MTW9kZWwuZGkgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3Jlc291cmNlL0Jhc2ljUm9ib3RNTE1vZGVsLmRpCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUxNDc2NjkKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3Jlc291cmNlL0Jhc2ljUm9ib3RNTE1vZGVsLmRpCkBAIC0wLDAgKzEsNTMgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8ZGk6U2FzaFdpbmRvd3NNbmdyIHhtaTp2ZXJzaW9uPSIyLjAiIHhtbG5zOnhtaT0iaHR0cDovL3d3dy5vbWcub3JnL1hNSSIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgeG1sbnM6ZGk9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvcGFweXJ1cy8wLjcuMC9zYXNoZGkiPgorICA8cGFnZUxpc3Q+CisgICAgPGF2YWlsYWJsZVBhZ2U+CisgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iQmFzaWNSb2JvdE1MTW9kZWwubm90YXRpb24jX1AzVmI1aVk2RWVHNWh0TEFmdmhOV0EiLz4KKyAgICA8L2F2YWlsYWJsZVBhZ2U+CisgICAgPGF2YWlsYWJsZVBhZ2U+CisgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iQmFzaWNSb2JvdE1MTW9kZWwubm90YXRpb24jX1AzVmI2Q1k2RWVHNWh0TEFmdmhOV0EiLz4KKyAgICA8L2F2YWlsYWJsZVBhZ2U+CisgICAgPGF2YWlsYWJsZVBhZ2U+CisgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iQmFzaWNSb2JvdE1MTW9kZWwubm90YXRpb24jX1AzVmI2aVk2RWVHNWh0TEFmdmhOV0EiLz4KKyAgICA8L2F2YWlsYWJsZVBhZ2U+CisgICAgPGF2YWlsYWJsZVBhZ2U+CisgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iQmFzaWNSb2JvdE1MTW9kZWwubm90YXRpb24jX1AzVmI3Q1k2RWVHNWh0TEFmdmhOV0EiLz4KKyAgICA8L2F2YWlsYWJsZVBhZ2U+CisgICAgPGF2YWlsYWJsZVBhZ2U+CisgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iQmFzaWNSb2JvdE1MTW9kZWwubm90YXRpb24jX1AzVmI3aVk2RWVHNWh0TEFmdmhOV0EiLz4KKyAgICA8L2F2YWlsYWJsZVBhZ2U+CisgICAgPGF2YWlsYWJsZVBhZ2U+CisgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iQmFzaWNSb2JvdE1MTW9kZWwubm90YXRpb24jX1AzVmI4Q1k2RWVHNWh0TEFmdmhOV0EiLz4KKyAgICA8L2F2YWlsYWJsZVBhZ2U+CisgIDwvcGFnZUxpc3Q+CisgIDxzYXNoTW9kZWwgY3VycmVudFNlbGVjdGlvbj0iLy9Ac2FzaE1vZGVsL0B3aW5kb3dzLjAvQGNoaWxkcmVuLjAiPgorICAgIDx3aW5kb3dzPgorICAgICAgPGNoaWxkcmVuIHhzaTp0eXBlPSJkaTpUYWJGb2xkZXIiPgorICAgICAgICA8Y2hpbGRyZW4+CisgICAgICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IkJhc2ljUm9ib3RNTE1vZGVsLm5vdGF0aW9uI19QM1ZiNkNZNkVlRzVodExBZnZoTldBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbj4KKyAgICAgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iQmFzaWNSb2JvdE1MTW9kZWwubm90YXRpb24jX1AzVmI2aVk2RWVHNWh0TEFmdmhOV0EiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuPgorICAgICAgICAgIDxlbWZQYWdlSWRlbnRpZmllciBocmVmPSJCYXNpY1JvYm90TUxNb2RlbC5ub3RhdGlvbiNfUDNWYjdDWTZFZUc1aHRMQWZ2aE5XQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4+CisgICAgICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IkJhc2ljUm9ib3RNTE1vZGVsLm5vdGF0aW9uI19QM1ZiN2lZNkVlRzVodExBZnZoTldBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbj4KKyAgICAgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iQmFzaWNSb2JvdE1MTW9kZWwubm90YXRpb24jX1AzVmI4Q1k2RWVHNWh0TEFmdmhOV0EiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuPgorICAgICAgICAgIDxlbWZQYWdlSWRlbnRpZmllciBocmVmPSJCYXNpY1JvYm90TUxNb2RlbC5ub3RhdGlvbiNfUDNWYjVpWTZFZUc1aHRMQWZ2aE5XQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4+CisgICAgICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IkJhc2ljUm9ib3RNTE1vZGVsLm5vdGF0aW9uI190ckhGWUlRLUVlU2Q1YS00MXNXUTBRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbj4KKyAgICAgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iQmFzaWNSb2JvdE1MTW9kZWwubm90YXRpb24jX25UTkxVSVJDRWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgPC93aW5kb3dzPgorICA8L3Nhc2hNb2RlbD4KKzwvZGk6U2FzaFdpbmRvd3NNbmdyPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9yZXNvdXJjZS9CYXNpY1JvYm90TUxNb2RlbC5ub3RhdGlvbiBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvcmVzb3VyY2UvQmFzaWNSb2JvdE1MTW9kZWwubm90YXRpb24KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWQ4Y2JiMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvcmVzb3VyY2UvQmFzaWNSb2JvdE1MTW9kZWwubm90YXRpb24KQEAgLTAsMCArMSw0MzEgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8eG1pOlhNSSB4bWk6dmVyc2lvbj0iMi4wIiB4bWxuczp4bWk9Imh0dHA6Ly93d3cub21nLm9yZy9YTUkiIHhtbG5zOlJvYm90TUw9Imh0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMSIgeG1sbnM6Y29uZmlndXJhdGlvbj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9wYXB5cnVzL2luZnJhL3ZpZXdwb2ludHMvY29uZmlndXJhdGlvbiIgeG1sbnM6Y3NzPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3BhcHlydXMvaW5mcmEvZ21mZGlhZy9jc3MiIHhtbG5zOmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIiB4bWxuczpub3RhdGlvbj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9nbWYvcnVudGltZS8xLjAuMi9ub3RhdGlvbiIgeG1sbnM6c3R5bGU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvcGFweXJ1cy9pbmZyYS92aWV3cG9pbnRzL3BvbGljeS9zdHlsZSIgeG1sbnM6dW1sPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIj4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfUDNWYjVpWTZFZUc1aHRMQWZ2aE5XQSIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJBcmNoaXRlY3R1cmVEaWFncmFtIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9aREowMElROEVlU2Q1YS00MXNXUTBRIiB0eXBlPSIyMDczIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1pES2I0SVE4RWVTZDVhLTQxc1dRMFEiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfWkRLYjRZUThFZVNkNWEtNDFzV1EwUSIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2FGU25RSVE4RWVTZDVhLTQxc1dRMFEiIHR5cGU9IjMwNzAiPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2FGU25Rb1E4RWVTZDVhLTQxc1dRMFEiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2FGVE9VSVE4RWVTZDVhLTQxc1dRMFEiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfYUZUT1VZUThFZVNkNWEtNDFzV1EwUSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfYUZUT1VvUThFZVNkNWEtNDFzV1EwUSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9hRjk4c0lROEVlU2Q1YS00MXNXUTBRIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2FGOThzWVE4RWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2FGOThzb1E4RWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2RidVhrSVE4RWVTZDVhLTQxc1dRMFEiIHR5cGU9IjMwNjkiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZGJ1LW9JUThFZVNkNWEtNDFzV1EwUSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZGJ2bHNJUThFZVNkNWEtNDFzV1EwUSIgeD0iLTE2OSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2Rid013SVE4RWVTZDVhLTQxc1dRMFEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2Rid3owSVE4RWVTZDVhLTQxc1dRMFEiIHg9Ii02MiIgeT0iNDEiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IkJhc2ljUm9ib3RNTE1vZGVsLnVtbCNfSU1mWnNJUThFZVNkNWEtNDFzV1EwUSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZGJ1WGtZUThFZVNkNWEtNDFzV1EwUSIgeD0iODMiIHk9IjI2Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJCYXNpY1JvYm90TUxNb2RlbC51bWwjX2FGUGo4SVE4RWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9hRlNuUVlROEVlU2Q1YS00MXNXUTBRIiB4PSIxMDEiIHk9IjU3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2NXT3ZJSVE4RWVTZDVhLTQxc1dRMFEiIHR5cGU9IjMwNzAiPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2NXT3ZJb1E4RWVTZDVhLTQxc1dRMFEiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2NXUFdNSVE4RWVTZDVhLTQxc1dRMFEiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfY1dQV01ZUThFZVNkNWEtNDFzV1EwUSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfY1dQV01vUThFZVNkNWEtNDFzV1EwUSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9jV1Rub0lROEVlU2Q1YS00MXNXUTBRIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2NXVG5vWVE4RWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2NXVG5vb1E4RWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2V3SC1zSVE4RWVTZDVhLTQxc1dRMFEiIHR5cGU9IjMwNjkiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZXdJbHdJUThFZVNkNWEtNDFzV1EwUSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZXdJbHdZUThFZVNkNWEtNDFzV1EwUSIgeD0iMTciIHk9IjE4Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZXdKTTBJUThFZVNkNWEtNDFzV1EwUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2V3Sno0SVE4RWVTZDVhLTQxc1dRMFEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IkJhc2ljUm9ib3RNTE1vZGVsLnVtbCNfTTRFWUFJUThFZVNkNWEtNDFzV1EwUSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZXdILXNZUThFZVNkNWEtNDFzV1EwUSIgeD0iLTEwIiB5PSIxNyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZXEzWlVJUS1FZVNkNWEtNDFzV1EwUSIgdHlwZT0iMzA2OSI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZXJXaGdJUS1FZVNkNWEtNDFzV1EwUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2Vya2o4SVEtRWVTZDVhLTQxc1dRMFEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2VybExBSVEtRWVTZDVhLTQxc1dRMFEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9lcmx5RUlRLUVlU2Q1YS00MXNXUTBRIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2VybVpJSVEtRWVTZDVhLTQxc1dRMFEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9lcm5BTUlRLUVlU2Q1YS00MXNXUTBRIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZXE0QVlJUS1FZVNkNWEtNDFzV1EwUSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZXE0bmNJUS1FZVNkNWEtNDFzV1EwUSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9lcTVPZ0lRLUVlU2Q1YS00MXNXUTBRIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9lcTVPZ1lRLUVlU2Q1YS00MXNXUTBRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJCYXNpY1JvYm90TUxNb2RlbC51bWwjX2VxeWcwSVEtRWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2VxM1pVWVEtRWVTZDVhLTQxc1dRMFEiIHg9IjE4MiIgeT0iNDgiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iQmFzaWNSb2JvdE1MTW9kZWwudW1sI19jV01TNElROEVlU2Q1YS00MXNXUTBRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfY1dPdklZUThFZVNkNWEtNDFzV1EwUSIgeD0iNDU5IiB5PSI2MyIgaGVpZ2h0PSI5NyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9aREtiNG9ROEVlU2Q1YS00MXNXUTBRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1pES2I0NFE4RWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1pEUy13SVE4RWVTZDVhLTQxc1dRMFEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSJBcHBsaWVkU3RlcmVvdHlwZUNvbXBhcnRtZW50Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfWkRTLXdZUThFZVNkNWEtNDFzV1EwUSIgc2hvd1RpdGxlPSJ0cnVlIi8+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJSb2JvdE1MOlJvYm90IiBocmVmPSJCYXNpY1JvYm90TUxNb2RlbC51bWwjXzFhQXlJSVE3RWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfWkRTLXdvUThFZVNkNWEtNDFzV1EwUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfWkRtZ3dJUThFZVNkNWEtNDFzV1EwUSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1pEbWd3WVE4RWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfWkRuSDBJUThFZVNkNWEtNDFzV1EwUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2Q2VlVRSVEtRWVTZDVhLTQxc1dRMFEiIHR5cGU9IjMwNjkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZDZ3eUVJUS1FZVNkNWEtNDFzV1EwUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZDY0dDRJUS1FZVNkNWEtNDFzV1EwUSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9kNjR0NFlRLUVlU2Q1YS00MXNXUTBRIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9kNjVVOElRLUVlU2Q1YS00MXNXUTBRIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZDY1VThZUS1FZVNkNWEtNDFzV1EwUSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZDY1OEFJUS1FZVNkNWEtNDFzV1EwUSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9kNlY3VUlRLUVlU2Q1YS00MXNXUTBRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2Q2VjdVWVEtRWVTZDVhLTQxc1dRMFEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2Q2V2lZSVEtRWVTZDVhLTQxc1dRMFEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZDZXaVlZUS1FZVNkNWEtNDFzV1EwUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IkJhc2ljUm9ib3RNTE1vZGVsLnVtbCNfZDZQMHNJUS1FZVNkNWEtNDFzV1EwUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9kNlZVUVlRLUVlU2Q1YS00MXNXUTBRIiB4PSI3ODMiIHk9IjEyMiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iQmFzaWNSb2JvdE1MTW9kZWwudW1sI18weVc4UUlRN0VlU2Q1YS00MXNXUTBRIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9aREowMFlROEVlU2Q1YS00MXNXUTBRIiB4PSIyMDAiIHk9IjI0MyIgd2lkdGg9Ijc5MyIgaGVpZ2h0PSIyMzAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfUDNWYjV5WTZFZUc1aHRMQWZ2aE5XQSIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX1d0dWJnSDdMRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IkJhc2ljUm9ib3RNTE1vZGVsLnVtbCNfUDNWYjNTWTZFZUc1aHRMQWZ2aE5XQSIvPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3pXQVBMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iQmFzaWNSb2JvdE1MTW9kZWwudW1sI19QM1ZiM1NZNkVlRzVodExBZnZoTldBIi8+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2cxaGs4SVE4RWVTZDVhLTQxc1dRMFEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2RidVhrSVE4RWVTZDVhLTQxc1dRMFEiIHRhcmdldD0iX2V3SC1zSVE4RWVTZDVhLTQxc1dRMFEiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZzFqYUlJUThFZVNkNWEtNDFzV1EwUSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZzFrQk1JUThFZVNkNWEtNDFzV1EwUSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9nMWtvUUlROEVlU2Q1YS00MXNXUTBRIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9nMWxQVUlROEVlU2Q1YS00MXNXUTBRIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9nMW1kY0lROEVlU2Q1YS00MXNXUTBRIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9nMW1kY1lROEVlU2Q1YS00MXNXUTBRIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2cxbnJrSVE4RWVTZDVhLTQxc1dRMFEiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2cxbnJrWVE4RWVTZDVhLTQxc1dRMFEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9nMWhrOFlROEVlU2Q1YS00MXNXUTBRIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iQmFzaWNSb2JvdE1MTW9kZWwudW1sI19nMDU1NElROEVlU2Q1YS00MXNXUTBRIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9nMWhrOG9ROEVlU2Q1YS00MXNXUTBRIiBwb2ludHM9IlszLCAtNiwgLTI1NSwgMV0kWzI1OSwgMywgMSwgMTBdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfZzR6aWNJUThFZVNkNWEtNDFzV1EwUSIgaWQ9IigwLjg1LDAuNykiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9mZWw4VUlRLUVlU2Q1YS00MXNXUTBRIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9lcTNaVUlRLUVlU2Q1YS00MXNXUTBRIiB0YXJnZXQ9Il9kNlZVUUlRLUVlU2Q1YS00MXNXUTBRIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2ZlbWpZSVEtRWVTZDVhLTQxc1dRMFEiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ZlbWpZWVEtRWVTZDVhLTQxc1dRMFEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZmVuS2NJUS1FZVNkNWEtNDFzV1EwUSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZmVuS2NZUS1FZVNkNWEtNDFzV1EwUSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZmVueGdJUS1FZVNkNWEtNDFzV1EwUSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZmVvWWtJUS1FZVNkNWEtNDFzV1EwUSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9mZW9fb0lRLUVlU2Q1YS00MXNXUTBRIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9mZW9fb1lRLUVlU2Q1YS00MXNXUTBRIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfZmVsOFVZUS1FZVNkNWEtNDFzV1EwUSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IkJhc2ljUm9ib3RNTE1vZGVsLnVtbCNfZmVnY3dJUS1FZVNkNWEtNDFzV1EwUSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfZmVsOFVvUS1FZVNkNWEtNDFzV1EwUSIgcG9pbnRzPSJbMTAsIC0yLCAtMTI2LCAxMl0kWzEzNSwgLTI0LCAtMSwgLTEwXSIvPgorICAgIDwvZWRnZXM+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfUDNWYjZDWTZFZUc1aHRMQWZ2aE5XQSIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJTZW5zb3JzRGlhZ3JhbSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfMC1fREFJUTdFZVNkNWEtNDFzV1EwUSIgdHlwZT0iMjA3MyI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMWFNX1lJUTdFZVNkNWEtNDFzV1EwUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzFiQTNzSVE3RWVTZDVhLTQxc1dRMFEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzFiQmV3SVE3RWVTZDVhLTQxc1dRMFEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpSb2JvdCIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzFiQmV3WVE3RWVTZDVhLTQxc1dRMFEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMWJDRjBJUTdFZVNkNWEtNDFzV1EwUSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzFiQ3M0SVE3RWVTZDVhLTQxc1dRMFEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8wX0wzVUlRN0VlU2Q1YS00MXNXUTBRIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzBfTWVZSVE3RWVTZDVhLTQxc1dRMFEiIHR5cGU9IjcwNzMiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il8wX01lWVlRN0VlU2Q1YS00MXNXUTBRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzBfTWVZb1E3RWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzFKUkFZSVE3RWVTZDVhLTQxc1dRMFEiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il8xSlJBWVlRN0VlU2Q1YS00MXNXUTBRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzFKUkFZb1E3RWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzFhd1pBSVE3RWVTZDVhLTQxc1dRMFEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSJBcHBsaWVkU3RlcmVvdHlwZUNvbXBhcnRtZW50Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfMWF3WkFZUTdFZVNkNWEtNDFzV1EwUSIgc2hvd1RpdGxlPSJ0cnVlIi8+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJSb2JvdE1MOlJvYm90IiBocmVmPSJCYXNpY1JvYm90TUxNb2RlbC51bWwjXzFhQXlJSVE3RWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMWF3WkFvUTdFZVNkNWEtNDFzV1EwUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXy1Jd3E4SVE3RWVTZDVhLTQxc1dRMFEiIHR5cGU9IjMwNjkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfLUxKM29JUTdFZVNkNWEtNDFzV1EwUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfLUxmTzBJUTdFZVNkNWEtNDFzV1EwUSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tTGdjOElRN0VlU2Q1YS00MXNXUTBRIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tTGhFQUlRN0VlU2Q1YS00MXNXUTBRIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfLUxockVJUTdFZVNkNWEtNDFzV1EwUSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfLUxpU0lJUTdFZVNkNWEtNDFzV1EwUSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8tSXhTQUlRN0VlU2Q1YS00MXNXUTBRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXy1JeFNBWVE3RWVTZDVhLTQxc1dRMFEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXy1JeWdJSVE3RWVTZDVhLTQxc1dRMFEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfLUl5Z0lZUTdFZVNkNWEtNDFzV1EwUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IkJhc2ljUm9ib3RNTE1vZGVsLnVtbCNfLUlYcFlJUTdFZVNkNWEtNDFzV1EwUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8tSXdxOFlRN0VlU2Q1YS00MXNXUTBRIiB4PSIzMzYiIHk9IjEyNiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfX2oydjhJUTdFZVNkNWEtNDFzV1EwUSIgdHlwZT0iMzA2OSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9fa1lVWUlRN0VlU2Q1YS00MXNXUTBRIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fa2dRTUlRN0VlU2Q1YS00MXNXUTBRIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19rZzNRSVE3RWVTZDVhLTQxc1dRMFEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19rZzNRWVE3RWVTZDVhLTQxc1dRMFEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fa2hlVUlRN0VlU2Q1YS00MXNXUTBRIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fa2hlVVlRN0VlU2Q1YS00MXNXUTBRIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX19qMnY4b1E3RWVTZDVhLTQxc1dRMFEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfX2ozWEFJUTdFZVNkNWEtNDFzV1EwUSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfX2ozLUVJUTdFZVNkNWEtNDFzV1EwUSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9fajMtRVlRN0VlU2Q1YS00MXNXUTBRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iQmFzaWNSb2JvdE1MTW9kZWwudW1sI19fanpzb0lRN0VlU2Q1YS00MXNXUTBRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX19qMnY4WVE3RWVTZDVhLTQxc1dRMFEiIHg9IjMzNiIgeT0iMTk5IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJCYXNpY1JvYm90TUxNb2RlbC51bWwjXzB5VzhRSVE3RWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzAtX0RBWVE3RWVTZDVhLTQxc1dRMFEiIHg9IjQ5NyIgeT0iMTkzIiB3aWR0aD0iMzQ2IiBoZWlnaHQ9IjI0MiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfQ0dKR2dJUThFZVNkNWEtNDFzV1EwUSIgdHlwZT0iMjA3MyI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQ0hQNXdJUThFZVNkNWEtNDFzV1EwUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0NJT3hNSVE4RWVTZDVhLTQxc1dRMFEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0NJUFlRSVE4RWVTZDVhLTQxc1dRMFEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpTZW5zb3JTeXN0ZW0iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9DSVBfVUlROEVlU2Q1YS00MXNXUTBRIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0NJUk5jSVE4RWVTZDVhLTQxc1dRMFEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9DSVIwZ0lROEVlU2Q1YS00MXNXUTBRIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfQ0dNdzRJUThFZVNkNWEtNDFzV1EwUSIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9DR05YOElROEVlU2Q1YS00MXNXUTBRIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfQ0dOWDhZUThFZVNkNWEtNDFzV1EwUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9DR05YOG9ROEVlU2Q1YS00MXNXUTBRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9DR2lJRUlROEVlU2Q1YS00MXNXUTBRIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfQ0dpSUVZUThFZVNkNWEtNDFzV1EwUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9DR2lJRW9ROEVlU2Q1YS00MXNXUTBRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9DSGE0NElROEVlU2Q1YS00MXNXUTBRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iQXBwbGllZFN0ZXJlb3R5cGVDb21wYXJ0bWVudCI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0NIYTQ0WVE4RWVTZDVhLTQxc1dRMFEiIHNob3dUaXRsZT0idHJ1ZSIvPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0iUm9ib3RNTDpTZW5zb3JTeXN0ZW0iIGhyZWY9IkJhc2ljUm9ib3RNTE1vZGVsLnVtbCNfQ0hHdjBJUThFZVNkNWEtNDFzV1EwUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9DSGE0NG9ROEVlU2Q1YS00MXNXUTBRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfSU1rU01JUThFZVNkNWEtNDFzV1EwUSIgdHlwZT0iMzA2OSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9JTkFYRUlROEVlU2Q1YS00MXNXUTBRIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9JTkpoQUlROEVlU2Q1YS00MXNXUTBRIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0lOS0lFSVE4RWVTZDVhLTQxc1dRMFEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpTZXJ2aWNlUG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSU5LSUVZUThFZVNkNWEtNDFzV1EwUSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0lOS3ZJSVE4RWVTZDVhLTQxc1dRMFEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0lOS3ZJWVE4RWVTZDVhLTQxc1dRMFEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfSU1rNVFJUThFZVNkNWEtNDFzV1EwUSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9JTWs1UVlROEVlU2Q1YS00MXNXUTBRIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9JTWxnVUlROEVlU2Q1YS00MXNXUTBRIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0lNbGdVWVE4RWVTZDVhLTQxc1dRMFEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJCYXNpY1JvYm90TUxNb2RlbC51bWwjX0lNZlpzSVE4RWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfSU1rU01ZUThFZVNkNWEtNDFzV1EwUSIgeD0iNzYiIHk9IjUwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJCYXNpY1JvYm90TUxNb2RlbC51bWwjX0NHRmNJSVE4RWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0NHSkdnWVE4RWVTZDVhLTQxc1dRMFEiIHg9Ijk4NCIgeT0iMTI1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9MNUR5RUlROEVlU2Q1YS00MXNXUTBRIiB0eXBlPSIyMDczIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9MNS1ZRUlROEVlU2Q1YS00MXNXUTBRIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTDZpXzBJUThFZVNkNWEtNDFzV1EwUSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTDZrTjhJUThFZVNkNWEtNDFzV1EwUSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlJvYm90aWNTeXN0ZW0iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9MNmxjRUlROEVlU2Q1YS00MXNXUTBRIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0w2bURJSVE4RWVTZDVhLTQxc1dRMFEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9MNm5SUUlROEVlU2Q1YS00MXNXUTBRIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTDVGQU1JUThFZVNkNWEtNDFzV1EwUSIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9MNUZBTVlROEVlU2Q1YS00MXNXUTBRIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfTDVGQU1vUThFZVNkNWEtNDFzV1EwUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9MNUZuUUlROEVlU2Q1YS00MXNXUTBRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9MNVg3SUlROEVlU2Q1YS00MXNXUTBRIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfTDVYN0lZUThFZVNkNWEtNDFzV1EwUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9MNVg3SW9ROEVlU2Q1YS00MXNXUTBRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9MNkx6Y0lROEVlU2Q1YS00MXNXUTBRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iQXBwbGllZFN0ZXJlb3R5cGVDb21wYXJ0bWVudCI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0w2THpjWVE4RWVTZDVhLTQxc1dRMFEiIHNob3dUaXRsZT0idHJ1ZSIvPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0iUm9ib3RNTDpSb2JvdGljU3lzdGVtIiBocmVmPSJCYXNpY1JvYm90TUxNb2RlbC51bWwjX0w1MmNRSVE4RWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTDZMemNvUThFZVNkNWEtNDFzV1EwUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX000SGJVSVE4RWVTZDVhLTQxc1dRMFEiIHR5cGU9IjMwNjkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTRkWmtJUThFZVNkNWEtNDFzV1EwUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTTRrSFFJUThFZVNkNWEtNDFzV1EwUSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NNGt1VUlROEVlU2Q1YS00MXNXUTBRIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6U2VydmljZVBvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX000a3VVWVE4RWVTZDVhLTQxc1dRMFEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NNGxWWUlROEVlU2Q1YS00MXNXUTBRIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NNGxWWVlROEVlU2Q1YS00MXNXUTBRIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX000SUNZSVE4RWVTZDVhLTQxc1dRMFEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTTRJQ1lZUThFZVNkNWEtNDFzV1EwUSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTTRJcGNJUThFZVNkNWEtNDFzV1EwUSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9NNElwY1lROEVlU2Q1YS00MXNXUTBRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iQmFzaWNSb2JvdE1MTW9kZWwudW1sI19NNEVZQUlROEVlU2Q1YS00MXNXUTBRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX000SGJVWVE4RWVTZDVhLTQxc1dRMFEiIHg9Ii0xMCIgeT0iNDgiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IkJhc2ljUm9ib3RNTE1vZGVsLnVtbCNfTDQtNWtJUThFZVNkNWEtNDFzV1EwUSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTDVEeUVZUThFZVNkNWEtNDFzV1EwUSIgeD0iMTE1NCIgeT0iMjM3Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX1AzVmI2U1k2RWVHNWh0TEFmdmhOV0EiLz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJzdHlsZTpQYXB5cnVzVmlld1N0eWxlIiB4bWk6aWQ9Il9XdHViZ1g3TEVlU0Z5TmJuTFlEQ2t3Ij4KKyAgICAgIDxvd25lciB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IkJhc2ljUm9ib3RNTE1vZGVsLnVtbCNfUDNWYjN5WTZFZUc1aHRMQWZ2aE5XQSIvPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3pXQmZMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJCYXNpY1JvYm90TUxNb2RlbC51bWwjX1AzVmI0U1k2RWVHNWh0TEFmdmhOV0EiLz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9QM1ZiNmlZNkVlRzVodExBZnZoTldBIiB0eXBlPSJQYXB5cnVzVU1MQ2xhc3NEaWFncmFtIiBuYW1lPSJEYXRhVHlwZXNEaWFncmFtIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX1AzVmI2eVk2RWVHNWh0TEFmdmhOV0EiLz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJzdHlsZTpQYXB5cnVzVmlld1N0eWxlIiB4bWk6aWQ9Il9XdHViZ243TEVlU0Z5TmJuTFlEQ2t3Ij4KKyAgICAgIDxvd25lciB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IkJhc2ljUm9ib3RNTE1vZGVsLnVtbCNfUDNWYjN5WTZFZUc1aHRMQWZ2aE5XQSIvPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3pXQ3ZMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJCYXNpY1JvYm90TUxNb2RlbC51bWwjX1AzVmIzeVk2RWVHNWh0TEFmdmhOV0EiLz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9QM1ZiN0NZNkVlRzVodExBZnZoTldBIiB0eXBlPSJDb21wb3NpdGVTdHJ1Y3R1cmUiIG5hbWU9IkFjdHVhdG9yc0RpYWdyYW0iIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfUDNWYjdTWTZFZUc1aHRMQWZ2aE5XQSIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX1d0dWJnMzdMRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iQmFzaWNSb2JvdE1MTW9kZWwudW1sI19QM1ZiNGlZNkVlRzVodExBZnZoTldBIi8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBreldCZkxfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IkJhc2ljUm9ib3RNTE1vZGVsLnVtbCNfUDNWYjRpWTZFZUc1aHRMQWZ2aE5XQSIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX1AzVmI3aVk2RWVHNWh0TEFmdmhOV0EiIHR5cGU9IkNvbXBvc2l0ZVN0cnVjdHVyZSIgbmFtZT0iU3ViU3lzdGVtc0RpYWdyYW0iIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfUDNWYjd5WTZFZUc1aHRMQWZ2aE5XQSIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX1d0dWJoSDdMRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iQmFzaWNSb2JvdE1MTW9kZWwudW1sI19QM1ZiNHlZNkVlRzVodExBZnZoTldBIi8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBreldCZkxfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IkJhc2ljUm9ib3RNTE1vZGVsLnVtbCNfUDNWYjR5WTZFZUc1aHRMQWZ2aE5XQSIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX1AzVmI4Q1k2RWVHNWh0TEFmdmhOV0EiIHR5cGU9IlBhcHlydXNVTUxDbGFzc0RpYWdyYW0iIG5hbWU9IkludGVyZmFjZXNEaWFncmFtIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9ObFZ0c0lROEVlU2Q1YS00MXNXUTBRIiB0eXBlPSIyMDA0Ij4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX05sV1V3SVE4RWVTZDVhLTQxc1dRMFEiIHR5cGU9IjUwMTEiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfTmxXVXdZUThFZVNkNWEtNDFzV1EwUSIgdHlwZT0iNzAwNiI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX05sVzcwSVE4RWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9ObFc3MFlROEVlU2Q1YS00MXNXUTBRIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9ObFc3MG9ROEVlU2Q1YS00MXNXUTBRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX05sVzcwNFE4RWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX05sVzcxSVE4RWVTZDVhLTQxc1dRMFEiIHR5cGU9IjcwMDciPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9QVlpXRUlROEVlU2Q1YS00MXNXUTBRIiB0eXBlPSIzMDA3Ij4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iQmFzaWNSb2JvdE1MTW9kZWwudW1sI19QVThxSUlROEVlU2Q1YS00MXNXUTBRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9QVlpXRVlROEVlU2Q1YS00MXNXUTBRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX05sVzcxWVE4RWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9ObFc3MW9ROEVlU2Q1YS00MXNXUTBRIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9ObFc3MTRROEVlU2Q1YS00MXNXUTBRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX05sVzcySVE4RWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX05sVzcyWVE4RWVTZDVhLTQxc1dRMFEiIHR5cGU9IjcwMDgiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9ObFc3Mm9ROEVlU2Q1YS00MXNXUTBRIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfTmxXNzI0UThFZVNkNWEtNDFzV1EwUSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfTmxXNzNJUThFZVNkNWEtNDFzV1EwUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9ObFc3M1lROEVlU2Q1YS00MXNXUTBRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnRlcmZhY2UiIGhyZWY9IkJhc2ljUm9ib3RNTE1vZGVsLnVtbCNfTmxMOHNJUThFZVNkNWEtNDFzV1EwUSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTmxWdHNZUThFZVNkNWEtNDFzV1EwUSIgeD0iNjkzIiB5PSIxNDkiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfUDNWYjhTWTZFZUc1aHRMQWZ2aE5XQSIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX1d0dWJoWDdMRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iQmFzaWNSb2JvdE1MTW9kZWwudW1sI19QM1ZiNENZNkVlRzVodExBZnZoTldBIi8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBrejlFdkxfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IkJhc2ljUm9ib3RNTE1vZGVsLnVtbCNfUDNWYjRDWTZFZUc1aHRMQWZ2aE5XQSIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX3RySEZZSVEtRWVTZDVhLTQxc1dRMFEiIHR5cGU9IlBhcHlydXNVTUxDbGFzc0RpYWdyYW0iIG5hbWU9IkNsYXNzRGlhZ3JhbSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfdUxHMEVJUS1FZVNkNWEtNDFzV1EwUSIgdHlwZT0iMjAwOCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il91TElDTUlRLUVlU2Q1YS00MXNXUTBRIiB0eXBlPSI1MDI5Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3VMSXBRSVEtRWVTZDVhLTQxc1dRMFEiIHR5cGU9IjcwMTciPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il92YU9Ta0lRLUVlU2Q1YS00MXNXUTBRIiB0eXBlPSIzMDEyIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJCYXNpY1JvYm90TUxNb2RlbC51bWwjX3ZhSmFFSVEtRWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3ZhT1NrWVEtRWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfdUxJcFFZUS1FZVNkNWEtNDFzV1EwUSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3VMSXBRb1EtRWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX3VMSXBRNFEtRWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfdUxJcFJJUS1FZVNkNWEtNDFzV1EwUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfdUxJcFJZUS1FZVNkNWEtNDFzV1EwUSIgdHlwZT0iNzAxOCI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3VMSXBSb1EtRWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il91TElwUjRRLUVlU2Q1YS00MXNXUTBRIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il91TElwU0lRLUVlU2Q1YS00MXNXUTBRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3VMSXBTWVEtRWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3VMSlFVSVEtRWVTZDVhLTQxc1dRMFEiIHR5cGU9IjcwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il91TEpRVVlRLUVlU2Q1YS00MXNXUTBRIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfdUxKUVVvUS1FZVNkNWEtNDFzV1EwUSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfdUxKUVU0US1FZVNkNWEtNDFzV1EwUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il91TEpRVklRLUVlU2Q1YS00MXNXUTBRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iQmFzaWNSb2JvdE1MTW9kZWwudW1sI191TEF0Y0lRLUVlU2Q1YS00MXNXUTBRIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il91TEcwRVlRLUVlU2Q1YS00MXNXUTBRIiB4PSI0MjciIHk9IjE3NyIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U3RyaW5nVmFsdWVTdHlsZSIgeG1pOmlkPSJfdHJIRllZUS1FZVNkNWEtNDFzV1EwUSIgbmFtZT0iZGlhZ3JhbV9jb21wYXRpYmlsaXR5X3ZlcnNpb24iIHN0cmluZ1ZhbHVlPSIxLjAuMCIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfdHJIRllvUS1FZVNkNWEtNDFzV1EwUSIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX3RySEZZNFEtRWVTZDVhLTQxc1dRMFEiPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iQmFzaWNSb2JvdE1MTW9kZWwudW1sI19QM1ZiNFNZNkVlRzVodExBZnZoTldBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJCYXNpY1JvYm90TUxNb2RlbC51bWwjX1AzVmI0U1k2RWVHNWh0TEFmdmhOV0EiLz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8Y3NzOk1vZGVsU3R5bGVTaGVldHMgeG1pOmlkPSJfZVFSeVFJUkNFZVNkNWEtNDFzV1EwUSIvPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9uVE5MVUlSQ0VlU2Q1YS00MXNXUTBRIiB0eXBlPSJDb21wb3NpdGVTdHJ1Y3R1cmUiIG5hbWU9ImN1c3RvbURpYWdyYW0iIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3BaYjRBSVJDRWVTZDVhLTQxc1dRMFEiIHR5cGU9IjIwNzMiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3BhQnQ0WVJDRWVTZDVhLTQxc1dRMFEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9wYVZQNElSQ0VlU2Q1YS00MXNXUTBRIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9wYVZQNFlSQ0VlU2Q1YS00MXNXUTBRIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6Um9ib3QiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9wYVZQNG9SQ0VlU2Q1YS00MXNXUTBRIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3BhVlA0NFJDRWVTZDVhLTQxc1dRMFEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9wYVZQNUlSQ0VlU2Q1YS00MXNXUTBRIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfcFpiNEFvUkNFZVNkNWEtNDFzV1EwUSIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9wWmI0QTRSQ0VlU2Q1YS00MXNXUTBRIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfcFpiNEJJUkNFZVNkNWEtNDFzV1EwUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9wWmI0QllSQ0VlU2Q1YS00MXNXUTBRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iQmFzaWNSb2JvdE1MTW9kZWwudW1sI19wWlNIQUlSQ0VlU2Q1YS00MXNXUTBRIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9wWmI0QVlSQ0VlU2Q1YS00MXNXUTBRIiB4PSIzNjYiIHk9IjE1MyIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfc3lGTzBJUkNFZVNkNWEtNDFzV1EwUSIgdHlwZT0iMjA3MyI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfc3lycndJUkNFZVNkNWEtNDFzV1EwUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3N5MDFzSVJDRWVTZDVhLTQxc1dRMFEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3N5LW1zSVJDRWVTZDVhLTQxc1dRMFEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpSb2JvdCIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3N5LW1zWVJDRWVTZDVhLTQxc1dRMFEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfc3ktbXNvUkNFZVNkNWEtNDFzV1EwUSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3N5LW1zNFJDRWVTZDVhLTQxc1dRMFEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9zeUZPMG9SQ0VlU2Q1YS00MXNXUTBRIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3N5Rk8wNFJDRWVTZDVhLTQxc1dRMFEiIHR5cGU9IjcwNzMiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9zeUZPMUlSQ0VlU2Q1YS00MXNXUTBRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3N5Rk8xWVJDRWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJCYXNpY1JvYm90TUxNb2RlbC51bWwjX3N4OEU0SVJDRWVTZDVhLTQxc1dRMFEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3N5Rk8wWVJDRWVTZDVhLTQxc1dRMFEiIHg9IjY1NyIgeT0iMTg5Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTdHJpbmdWYWx1ZVN0eWxlIiB4bWk6aWQ9Il9uVE5MVVlSQ0VlU2Q1YS00MXNXUTBRIiBuYW1lPSJkaWFncmFtX2NvbXBhdGliaWxpdHlfdmVyc2lvbiIgc3RyaW5nVmFsdWU9IjEuMC4wIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9uVE5MVW9SQ0VlU2Q1YS00MXNXUTBRIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfblROTFU0UkNFZVNkNWEtNDFzV1EwUSI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJCYXNpY1JvYm90TUxNb2RlbC51bWwjX1AzVmI0Q1k2RWVHNWh0TEFmdmhOV0EiLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0JmTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iQmFzaWNSb2JvdE1MTW9kZWwudW1sI19QM1ZiM3lZNkVlRzVodExBZnZoTldBIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKzwveG1pOlhNST4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvcmVzb3VyY2UvQmFzaWNSb2JvdE1MTW9kZWwudW1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9yZXNvdXJjZS9CYXNpY1JvYm90TUxNb2RlbC51bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGE4NjY5YQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvcmVzb3VyY2UvQmFzaWNSb2JvdE1MTW9kZWwudW1sCkBAIC0wLDAgKzEsNzYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8eG1pOlhNSSB4bWk6dmVyc2lvbj0iMjAxMzEwMDEiIHhtbG5zOnhtaT0iaHR0cDovL3d3dy5vbWcub3JnL3NwZWMvWE1JLzIwMTMxMDAxIiB4bWxuczpSb2JvdE1MPSJodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEiIHhtbG5zOmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIiB4bWxuczp1bWw9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwiPgorICA8dW1sOk1vZGVsIHhtaTppZD0iX1AzVmIzU1k2RWVHNWh0TEFmdmhOV0EiIG5hbWU9IlJvYm90TUxNb2RlbCI+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIHhtaTppZD0iX1AzVmIzeVk2RWVHNWh0TEFmdmhOV0EiIG5hbWU9IlNwZWNpZmljIERhdGF0eXBlcyI+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX3BaU0hBSVJDRWVTZDVhLTQxc1dRMFEiIG5hbWU9IlJvYm90MSIvPgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9zeDhFNElSQ0VlU2Q1YS00MXNXUTBRIiBuYW1lPSJSb2JvdDIiLz4KKyAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgeG1pOmlkPSJfUDNWYjRDWTZFZUc1aHRMQWZ2aE5XQSIgbmFtZT0iSW50ZXJmYWNlcyI+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW50ZXJmYWNlIiB4bWk6aWQ9Il9ObEw4c0lROEVlU2Q1YS00MXNXUTBRIiBuYW1lPSJDYW1lcmFEYXRhIj4KKyAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiB4bWk6aWQ9Il9QVThxSUlROEVlU2Q1YS00MXNXUTBRIiBuYW1lPSJnZXRJbWFnZSIvPgorICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIHhtaTppZD0iX1AzVmI0U1k2RWVHNWh0TEFmdmhOV0EiIG5hbWU9IlNlbnNvcnMgIj4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfMHlXOFFJUTdFZVNkNWEtNDFzV1EwUSIgbmFtZT0iUm9ib3QxIj4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfLUlYcFlJUTdFZVNkNWEtNDFzV1EwUSIgbmFtZT0iRGF0YUZsb3dQb3J0MSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9fanpzb0lRN0VlU2Q1YS00MXNXUTBRIiBuYW1lPSJEYXRhRmxvd1BvcnQyIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIi8+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9hRlBqOElROEVlU2Q1YS00MXNXUTBRIiBuYW1lPSJjYW1lcmEiIHR5cGU9Il9DR0ZjSUlROEVlU2Q1YS00MXNXUTBRIi8+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9jV01TNElROEVlU2Q1YS00MXNXUTBRIiBuYW1lPSJ0cmFpdGVtZW50SW1hZ2UiIHR5cGU9Il9MNC01a0lROEVlU2Q1YS00MXNXUTBRIi8+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2Q2UDBzSVEtRWVTZDVhLTQxc1dRMFEiIG5hbWU9IkRhdGFGbG93UG9ydDMiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiLz4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9nMDU1NElROEVlU2Q1YS00MXNXUTBRIiBuYW1lPSJDb25uZWN0b3IxIj4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9nMUlqWUlROEVlU2Q1YS00MXNXUTBRIiBwYXJ0V2l0aFBvcnQ9Il9hRlBqOElROEVlU2Q1YS00MXNXUTBRIiByb2xlPSJfSU1mWnNJUThFZVNkNWEtNDFzV1EwUSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9nMUlqWVlROEVlU2Q1YS00MXNXUTBRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfZzFJallvUThFZVNkNWEtNDFzV1EwUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9nMUtZa0lROEVlU2Q1YS00MXNXUTBRIiBwYXJ0V2l0aFBvcnQ9Il9jV01TNElROEVlU2Q1YS00MXNXUTBRIiByb2xlPSJfTTRFWUFJUThFZVNkNWEtNDFzV1EwUSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9nMUtZa1lROEVlU2Q1YS00MXNXUTBRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfZzFLWWtvUThFZVNkNWEtNDFzV1EwUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9mZWdjd0lRLUVlU2Q1YS00MXNXUTBRIiBuYW1lPSJDb25uZWN0b3IyIj4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9mZWhxNElRLUVlU2Q1YS00MXNXUTBRIiBwYXJ0V2l0aFBvcnQ9Il9jV01TNElROEVlU2Q1YS00MXNXUTBRIiByb2xlPSJfZXF5ZzBJUS1FZVNkNWEtNDFzV1EwUSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9mZWhxNFlRLUVlU2Q1YS00MXNXUTBRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfZmVocTRvUS1FZVNkNWEtNDFzV1EwUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9mZWlSOElRLUVlU2Q1YS00MXNXUTBRIiByb2xlPSJfZDZQMHNJUS1FZVNkNWEtNDFzV1EwUSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9mZWlSOFlRLUVlU2Q1YS00MXNXUTBRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfZmVpUjhvUS1FZVNkNWEtNDFzV1EwUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9DR0ZjSUlROEVlU2Q1YS00MXNXUTBRIiBuYW1lPSJDYW1lcmEiPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9JTWZac0lROEVlU2Q1YS00MXNXUTBRIiBuYW1lPSJTZXJ2aWNlUG9ydDEiIHR5cGU9Il9ObEw4c0lROEVlU2Q1YS00MXNXUTBRIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIi8+CisgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfTDQtNWtJUThFZVNkNWEtNDFzV1EwUSIgbmFtZT0iVHJhaXRlbWVudEltYWdlIj4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfTTRFWUFJUThFZVNkNWEtNDFzV1EwUSIgbmFtZT0iU2VydmljZVBvcnQxIiB0eXBlPSJfTmxMOHNJUThFZVNkNWEtNDFzV1EwUSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9lcXlnMElRLUVlU2Q1YS00MXNXUTBRIiBuYW1lPSJEYXRhRmxvd1BvcnQxIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIi8+CisgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfdUxBdGNJUS1FZVNkNWEtNDFzV1EwUSIgbmFtZT0iQ2xhc3MxIj4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX3ZhSmFFSVEtRWVTZDVhLTQxc1dRMFEiIG5hbWU9IkF0dHJpYnV0ZTEiPgorICAgICAgICAgIDxvd25lZENvbW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiB4bWk6aWQ9Il95anlya0lRLUVlU2Q1YS00MXNXUTBRIiBhbm5vdGF0ZWRFbGVtZW50PSJfdmFKYUVJUS1FZVNkNWEtNDFzV1EwUSI+CisgICAgICAgICAgICA8Ym9keT5zc2RmcWRzcWY8L2JvZHk+CisgICAgICAgICAgPC9vd25lZENvbW1lbnQ+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgeG1pOmlkPSJfUDNWYjRpWTZFZUc1aHRMQWZ2aE5XQSIgbmFtZT0iQWN0dWF0b3JzIi8+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIHhtaTppZD0iX1AzVmI0eVk2RWVHNWh0TEFmdmhOV0EiIG5hbWU9IlJvYm90aWMgU3ViU3lzdGVtcyIvPgorICAgIDxwcm9maWxlQXBwbGljYXRpb24geG1pOnR5cGU9InVtbDpQcm9maWxlQXBwbGljYXRpb24iIHhtaTppZD0iX0kzZnRFQ0czRWVLQmM4cWh4bHZPX1EiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0k2eHFrQ0czRWVLQmM4cWh4bHZPX1EiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIHhtaTp0eXBlPSJlY29yZTpFUGFja2FnZSIgaHJlZj0iaHR0cDovL1BhcHlydXMvUm9ib3RNTC8xIy8iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGFwcGxpZWRQcm9maWxlIHhtaTp0eXBlPSJ1bWw6UHJvZmlsZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzNRT0hFUGNFRWQtSjA2VTVITV9vLVEiLz4KKyAgICA8L3Byb2ZpbGVBcHBsaWNhdGlvbj4KKyAgPC91bWw6TW9kZWw+CisgIDxSb2JvdE1MOlJvYm90IHhtaTppZD0iXzFhQXlJSVE3RWVTZDVhLTQxc1dRMFEiIGJhc2VfQ2xhc3M9Il8weVc4UUlRN0VlU2Q1YS00MXNXUTBRIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il8tTEcwVUlRN0VlU2Q1YS00MXNXUTBRIiBiYXNlX1BvcnQ9Il8tSVhwWUlRN0VlU2Q1YS00MXNXUTBRIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9fa011TUlRN0VlU2Q1YS00MXNXUTBRIiBiYXNlX1BvcnQ9Il9fanpzb0lRN0VlU2Q1YS00MXNXUTBRIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpTZW5zb3JTeXN0ZW0geG1pOmlkPSJfQ0hHdjBJUThFZVNkNWEtNDFzV1EwUSIgYmFzZV9DbGFzcz0iX0NHRmNJSVE4RWVTZDVhLTQxc1dRMFEiLz4KKyAgPFJvYm90TUw6U2VydmljZVBvcnQgeG1pOmlkPSJfSU0taDRJUThFZVNkNWEtNDFzV1EwUSIgYmFzZV9Qb3J0PSJfSU1mWnNJUThFZVNkNWEtNDFzV1EwUSIvPgorICA8Um9ib3RNTDpSb2JvdGljU3lzdGVtIHhtaTppZD0iX0w1MmNRSVE4RWVTZDVhLTQxc1dRMFEiIGJhc2VfQ2xhc3M9Il9MNC01a0lROEVlU2Q1YS00MXNXUTBRIi8+CisgIDxSb2JvdE1MOlNlcnZpY2VQb3J0IHhtaTppZD0iX000Y0xjSVE4RWVTZDVhLTQxc1dRMFEiIGJhc2VfUG9ydD0iX000RVlBSVE4RWVTZDVhLTQxc1dRMFEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2Q2dTg0SVEtRWVTZDVhLTQxc1dRMFEiIGJhc2VfUG9ydD0iX2Q2UDBzSVEtRWVTZDVhLTQxc1dRMFEiIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9lclVzVUlRLUVlU2Q1YS00MXNXUTBRIiBiYXNlX1BvcnQ9Il9lcXlnMElRLUVlU2Q1YS00MXNXUTBRIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpSb2JvdCB4bWk6aWQ9Il9wYUJ0NElSQ0VlU2Q1YS00MXNXUTBRIiBiYXNlX0NsYXNzPSJfcFpTSEFJUkNFZVNkNWEtNDFzV1EwUSIvPgorICA8Um9ib3RNTDpSb2JvdCB4bWk6aWQ9Il9zeWg2d0lSQ0VlU2Q1YS00MXNXUTBRIiBiYXNlX0NsYXNzPSJfc3g4RTRJUkNFZVNkNWEtNDFzV1EwUSIvPgorPC94bWk6WE1JPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9yZXNvdXJjZS9Sb2JvQ2FiLmRpIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9yZXNvdXJjZS9Sb2JvQ2FiLmRpCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNlNTIxZGQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3Jlc291cmNlL1JvYm9DYWIuZGkKQEAgLTAsMCArMSwzNiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxkaTpTYXNoV2luZG93c01uZ3IgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgeG1sbnM6WE1JPSJodHRwOi8vd3d3Lm9tZy5vcmcvWE1JIiB4bWxuczpkaT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9wYXB5cnVzLzAuNy4wL3Nhc2hkaSIgWE1JOnZlcnNpb249IjIuMCI+CisgIDxwYWdlTGlzdD4KKyAgICA8YXZhaWxhYmxlUGFnZS8+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICAgIDxhdmFpbGFibGVQYWdlLz4KKyAgICA8YXZhaWxhYmxlUGFnZS8+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICAgIDxhdmFpbGFibGVQYWdlLz4KKyAgICA8YXZhaWxhYmxlUGFnZS8+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICAgIDxhdmFpbGFibGVQYWdlLz4KKyAgICA8YXZhaWxhYmxlUGFnZS8+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICAgIDxhdmFpbGFibGVQYWdlLz4KKyAgICA8YXZhaWxhYmxlUGFnZS8+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICAgIDxhdmFpbGFibGVQYWdlLz4KKyAgICA8YXZhaWxhYmxlUGFnZS8+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICAgIDxhdmFpbGFibGVQYWdlLz4KKyAgICA8YXZhaWxhYmxlUGFnZS8+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICA8L3BhZ2VMaXN0PgorICA8c2FzaE1vZGVsIGN1cnJlbnRTZWxlY3Rpb249IiMvL0BzYXNoTW9kZWwvQHdpbmRvd3MuMC9AY2hpbGRyZW4uMCI+CisgICAgPHdpbmRvd3M+CisgICAgICA8Y2hpbGRyZW4geHNpOnR5cGU9ImRpOlRhYkZvbGRlciI+CisgICAgICAgIDxjaGlsZHJlbiBlbWZQYWdlSWRlbnRpZmllcj0iUm9ib0NhYi5ub3RhdGlvbiNfenlMaXNHYldFZUdHTnVYMUlIZzF6ZyIvPgorICAgICAgICA8Y2hpbGRyZW4gZW1mUGFnZUlkZW50aWZpZXI9IlJvYm9DYWIubm90YXRpb24jX0N3dDNNR2JhRWVHVFZfNzM1cHpVWFEiLz4KKyAgICAgICAgPGNoaWxkcmVuIGVtZlBhZ2VJZGVudGlmaWVyPSJSb2JvQ2FiLm5vdGF0aW9uI19PQ1ZGa0J3QUVlR2E1YkhfUkpGekJRIi8+CisgICAgICAgIDxjaGlsZHJlbiBlbWZQYWdlSWRlbnRpZmllcj0iUm9ib0NhYi5ub3RhdGlvbiNfTzQzSkVCOHVFZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICA8Y2hpbGRyZW4gZW1mUGFnZUlkZW50aWZpZXI9IlJvYm9DYWIubm90YXRpb24jX0EwazJVQjhyRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgPC93aW5kb3dzPgorICA8L3Nhc2hNb2RlbD4KKzwvZGk6U2FzaFdpbmRvd3NNbmdyPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9yZXNvdXJjZS9Sb2JvQ2FiLm5vdGF0aW9uIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9yZXNvdXJjZS9Sb2JvQ2FiLm5vdGF0aW9uCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNkYTJjY2YKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3Jlc291cmNlL1JvYm9DYWIubm90YXRpb24KQEAgLTAsMCArMSw1ODI3IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHhtaTpYTUkgeG1pOnZlcnNpb249IjIuMCIgeG1sbnM6eG1pPSJodHRwOi8vd3d3Lm9tZy5vcmcvWE1JIiB4bWxuczpjb25maWd1cmF0aW9uPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3BhcHlydXMvaW5mcmEvdmlld3BvaW50cy9jb25maWd1cmF0aW9uIiB4bWxuczpjc3M9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvcGFweXJ1cy9pbmZyYS9nbWZkaWFnL2NzcyIgeG1sbnM6ZWNvcmU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUiIHhtbG5zOm5vdGF0aW9uPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2dtZi9ydW50aW1lLzEuMC4yL25vdGF0aW9uIiB4bWxuczpzdHlsZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9wYXB5cnVzL2luZnJhL3ZpZXdwb2ludHMvcG9saWN5L3N0eWxlIiB4bWxuczp1bWw9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwiPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9mZVAyMDZrX0VlQ1hxY1JWLTE4ZjZRIiB0eXBlPSJQYXB5cnVzVU1MQ2xhc3NEaWFncmFtIiBuYW1lPSJEYXRhVHlwZXNEaWFncmFtIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9mZVAyMUtrX0VlQ1hxY1JWLTE4ZjZRIiB0eXBlPSIyMDA3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZmVQMjFha19FZUNYcWNSVi0xOGY2USIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2ZlUDIxcWtfRWVDWHFjUlYtMThmNlEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2ZlUDIxNmtfRWVDWHFjUlYtMThmNlEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2ZlUDIyS2tfRWVDWHFjUlYtMThmNlEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZmVQMjJha19FZUNYcWNSVi0xOGY2USIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mZVAyMnFrX0VlQ1hxY1JWLTE4ZjZRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZmVQMjI2a19FZUNYcWNSVi0xOGY2USIgdHlwZT0iNTAyNiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZmVQMjNLa19FZUNYcWNSVi0xOGY2USIgdHlwZT0iNzAxNiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZlUDIzYWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0iZWNvcmU6RU9iamVjdCIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3Jlc291cmNlL21vZGVsLnVtbCNfOGxPODRHRVFFZUMyRXBkNHNXcWc0dyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZmVQMjNxa19FZUNYcWNSVi0xOGY2USIgeD0iMTIyIiB5PSI0OSIgd2lkdGg9IjQ2NCIgaGVpZ2h0PSIyMjIiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfZmVQMjM2a19FZUNYcWNSVi0xOGY2USIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX2tzemxnSDdMRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJlY29yZTpFT2JqZWN0IiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvcmVzb3VyY2UvbW9kZWwudW1sI184bE84NEdFUUVlQzJFcGQ0c1dxZzR3Ii8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBreldDdkxfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0iZWNvcmU6RU9iamVjdCIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3Jlc291cmNlL21vZGVsLnVtbCNfOGxPODRHRVFFZUMyRXBkNHNXcWc0dyIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX2ZlUDI0S2tfRWVDWHFjUlYtMThmNlEiIHR5cGU9IlBhcHlydXNVTUxDbGFzc0RpYWdyYW0iIG5hbWU9IkludGVyZmFjZXNEaWFncmFtIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9mZVAyNGFrX0VlQ1hxY1JWLTE4ZjZRIiB0eXBlPSIyMDA3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZmVQMjRxa19FZUNYcWNSVi0xOGY2USIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2ZlUDI0NmtfRWVDWHFjUlYtMThmNlEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2ZlUDI1S2tfRWVDWHFjUlYtMThmNlEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2ZlUDI1YWtfRWVDWHFjUlYtMThmNlEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZmVQMjVxa19FZUNYcWNSVi0xOGY2USIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mZVAyNTZrX0VlQ1hxY1JWLTE4ZjZRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZmVQMjZLa19FZUNYcWNSVi0xOGY2USIgdHlwZT0iNTAyNiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZmVQMjZha19FZUNYcWNSVi0xOGY2USIgdHlwZT0iNzAxNiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZlUDI2cWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0iZWNvcmU6RU9iamVjdCIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3Jlc291cmNlL21vZGVsLnVtbCNfQ0R0WHdHRVJFZUMyRXBkNHNXcWc0dyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZmVQMjY2a19FZUNYcWNSVi0xOGY2USIgeD0iMTAxIiB5PSI1NCIgd2lkdGg9IjQ4MCIgaGVpZ2h0PSIyNTIiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfZmVQMjdLa19FZUNYcWNSVi0xOGY2USIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX2tzOVdnSDdMRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJlY29yZTpFT2JqZWN0IiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvcmVzb3VyY2UvbW9kZWwudW1sI19DRHRYd0dFUkVlQzJFcGQ0c1dxZzR3Ii8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBrejlFdkxfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0iZWNvcmU6RU9iamVjdCIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3Jlc291cmNlL21vZGVsLnVtbCNfQ0R0WHdHRVJFZUMyRXBkNHNXcWc0dyIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX2ZlUDI3YWtfRWVDWHFjUlYtMThmNlEiIHR5cGU9IlBhcHlydXNVTUxDbGFzc0RpYWdyYW0iIG5hbWU9IkludGVyZmFjZXNEaWFncmFtIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9mZVAyN3FrX0VlQ1hxY1JWLTE4ZjZRIiB0eXBlPSIyMDA3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZmVQMjc2a19FZUNYcWNSVi0xOGY2USIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2ZlUDI4S2tfRWVDWHFjUlYtMThmNlEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2ZlUDI4YWtfRWVDWHFjUlYtMThmNlEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2ZlUDI4cWtfRWVDWHFjUlYtMThmNlEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZmVQMjg2a19FZUNYcWNSVi0xOGY2USIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mZVAyOUtrX0VlQ1hxY1JWLTE4ZjZRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZmVQMjlha19FZUNYcWNSVi0xOGY2USIgdHlwZT0iNTAyNiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZmVQMjlxa19FZUNYcWNSVi0xOGY2USIgdHlwZT0iNzAxNiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZlUDNXNmtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6SlRLa19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZmVQM1hLa19FZUNYcWNSVi0xOGY2USIgeD0iNTAiIHk9IjU1IiB3aWR0aD0iNTYxIiBoZWlnaHQ9IjMzMCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9mZVAzWGFrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfa3M5V2dYN0xFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iUm9ib0NhYi51bWwjX2ZkekpUS2tfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6OUV2TF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IlJvYm9DYWIudW1sI19mZHpKVEtrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfZmVQM1hxa19FZUNYcWNSVi0xOGY2USIgdHlwZT0iUGFweXJ1c1VNTENsYXNzRGlhZ3JhbSIgbmFtZT0iRGF0YVR5cGVzRGlhZ3JhbSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZmVQM1g2a19FZUNYcWNSVi0xOGY2USIgdHlwZT0iMjAwNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2ZlUDNZS2tfRWVDWHFjUlYtMThmNlEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mZVAzWWFrX0VlQ1hxY1JWLTE4ZjZRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9mZVAzWXFrX0VlQ1hxY1JWLTE4ZjZRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mZVAzWTZrX0VlQ1hxY1JWLTE4ZjZRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2ZlUDNaS2tfRWVDWHFjUlYtMThmNlEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZmVQM1pha19FZUNYcWNSVi0xOGY2USIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2ZlUDNacWtfRWVDWHFjUlYtMThmNlEiIHR5cGU9IjUwMjYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2ZlUDNaNmtfRWVDWHFjUlYtMThmNlEiIHR5cGU9IjcwMTYiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9walRXTUtsZ0VlQ1lmYm54VlN5WjlnIiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9walRXTXFsZ0VlQ1lmYm54VlN5WjlnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3BqVFdNNmxnRWVDWWZibnhWU3laOWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcGpUV05LbGdFZUNZZmJueFZTeVo5ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3BqVFdOYWxnRWVDWWZibnhWU3laOWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9walRXTnFsZ0VlQ1lmYm54VlN5WjlnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9walRXTjZsZ0VlQ1lmYm54VlN5WjlnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9walRXT0tsZ0VlQ1lmYm54VlN5WjlnIiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9walRXT2FsZ0VlQ1lmYm54VlN5WjlnIiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3JqZFFFS2xnRWVDWWZibnhWU3laOWciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm9DYWIudW1sI19yZzY1Y0tsZ0VlQ1lmYm54VlN5WjlnIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfcmpkUUVhbGdFZUNZZmJueFZTeVo5ZyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1l3cU5nS2xpRWVDTGt1NFJGckk3dXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm9DYWIudW1sI19Zdnhjc0tsaUVlQ0xrdTRSRnJJN3V3Ii8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfWXdxTmdhbGlFZUNMa3U0UkZySTd1dyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3BqVFdPcWxnRWVDWWZibnhWU3laOWciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfcGpUV082bGdFZUNZZmJueFZTeVo5ZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX3BqVFdQS2xnRWVDWWZibnhWU3laOWciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3BqVFdQYWxnRWVDWWZibnhWU3laOWciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfcGpUV1BxbGdFZUNZZmJueFZTeVo5ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfcGpUV1A2bGdFZUNZZmJueFZTeVo5ZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9walRXUUtsZ0VlQ1lmYm54VlN5WjlnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfcGpUV1FhbGdFZUNZZmJueFZTeVo5ZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfcGpUV1FxbGdFZUNZZmJueFZTeVo5ZyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iUm9ib0NhYi51bWwjX3BmNE93S2xnRWVDWWZibnhWU3laOWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9walRXTWFsZ0VlQ1lmYm54VlN5WjlnIiB4PSI0MCIgeT0iMzQiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfMDFPVllLbHJFZUNMa3U0UkZySTd1dyIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMDFYZlVLbHJFZUNMa3U0UkZySTd1dyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wMVhmVWFsckVlQ0xrdTRSRnJJN3V3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzAxWGZVcWxyRWVDTGt1NFJGckk3dXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wMVhmVTZsckVlQ0xrdTRSRnJJN3V3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMDFYZlZLbHJFZUNMa3U0UkZySTd1dyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMDFYZlZhbHJFZUNMa3U0UkZySTd1dyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfMDFYZlZxbHJFZUNMa3U0UkZySTd1dyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfMDFYZlY2bHJFZUNMa3U0UkZySTd1dyIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il8zODVROEtsckVlQ0xrdTRSRnJJN3V3IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvQ2FiLnVtbCNfMzZnclVLbHJFZUNMa3U0UkZySTd1dyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzM4NVE4YWxyRWVDTGt1NFJGckk3dXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il84T2ZCOEtsckVlQ0xrdTRSRnJJN3V3IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvQ2FiLnVtbCNfOEw5U1lLbHJFZUNMa3U0UkZySTd1dyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzhPZkI4YWxyRWVDTGt1NFJGckk3dXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il8wMVhmV0tsckVlQ0xrdTRSRnJJN3V3Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iXzAxWGZXYWxyRWVDTGt1NFJGckk3dXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il8wMVhmV3FsckVlQ0xrdTRSRnJJN3V3Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8wMVhmVzZsckVlQ0xrdTRSRnJJN3V3Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzAxWGZYS2xyRWVDTGt1NFJGckk3dXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzAxWGZYYWxyRWVDTGt1NFJGckk3dXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfMDFYZlhxbHJFZUNMa3U0UkZySTd1dyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iXzAxWGZYNmxyRWVDTGt1NFJGckk3dXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzAxWGZZS2xyRWVDTGt1NFJGckk3dXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm9DYWIudW1sI18weS01c0tsckVlQ0xrdTRSRnJJN3V3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMDFPVllhbHJFZUNMa3U0UkZySTd1dyIgeD0iNDAiIHk9IjI1NCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9uQlNaZ0tsdEVlQ0xrdTRSRnJJN3V3IiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9uQlNaZ3FsdEVlQ0xrdTRSRnJJN3V3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX25CU1pnNmx0RWVDTGt1NFJGckk3dXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbkJTWmhLbHRFZUNMa3U0UkZySTd1dyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX25CU1poYWx0RWVDTGt1NFJGckk3dXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9uQlNaaHFsdEVlQ0xrdTRSRnJJN3V3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9uQlNaaDZsdEVlQ0xrdTRSRnJJN3V3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9uQlNaaUtsdEVlQ0xrdTRSRnJJN3V3IiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9uQlNaaWFsdEVlQ0xrdTRSRnJJN3V3IiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3VPN3I4S2x0RWVDTGt1NFJGckk3dXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm9DYWIudW1sI191TWpHVUtsdEVlQ0xrdTRSRnJJN3V3Ii8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdU83cjhhbHRFZUNMa3U0UkZySTd1dyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzVFbG00S2x0RWVDTGt1NFJGckk3dXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm9DYWIudW1sI181Q05CUUtsdEVlQ0xrdTRSRnJJN3V3Ii8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfNUVsbTRhbHRFZUNMa3U0UkZySTd1dyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX25CU1ppcWx0RWVDTGt1NFJGckk3dXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfbkJTWmk2bHRFZUNMa3U0UkZySTd1dyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX25CU1pqS2x0RWVDTGt1NFJGckk3dXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX25CU1pqYWx0RWVDTGt1NFJGckk3dXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfbkJTWmpxbHRFZUNMa3U0UkZySTd1dyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfbkJTWmo2bHRFZUNMa3U0UkZySTd1dyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9uQlNaa0tsdEVlQ0xrdTRSRnJJN3V3Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfbkJTWmthbHRFZUNMa3U0UkZySTd1dyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbkJTWmtxbHRFZUNMa3U0UkZySTd1dyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iUm9ib0NhYi51bWwjX20td3A4S2x0RWVDTGt1NFJGckk3dXciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9uQlNaZ2FsdEVlQ0xrdTRSRnJJN3V3IiB4PSI0MCIgeT0iMTQ0Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3J6SzE0QjhtRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjMwMjciIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3J6TGM4UjhtRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcnpMYzhoOG1FZUc0Z1BDRXpuVk5PQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9yekxjOHg4bUVlRzRnUENFem5WTk9BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcnpMYzlCOG1FZUc0Z1BDRXpuVk5PQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3J6TUVBQjhtRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3J6TUVBUjhtRWVHNGdQQ0V6blZOT0EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3J6TUVBaDhtRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3J6TUVBeDhtRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfLS02U0FCOG1FZUc0Z1BDRXpuVk5PQSIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib0NhYi51bWwjXzl5N0FBQjhtRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8tLTZTQVI4bUVlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfY2kxcDhCOG5FZUc0Z1BDRXpuVk5PQSIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib0NhYi51bWwjX0xSME9FQjhuRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9jaTFwOFI4bkVlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfY2kyUkFCOG5FZUc0Z1BDRXpuVk5PQSIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib0NhYi51bWwjX1FLaVFnQjhuRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9jaTJSQVI4bkVlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfY2kyUkFoOG5FZUc0Z1BDRXpuVk5PQSIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib0NhYi51bWwjX1YxeFZBQjhuRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9jaTJSQXg4bkVlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfcnpNRUJCOG1FZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9yek1FQlI4bUVlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfcnpNRUJoOG1FZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfcnpNRUJ4OG1FZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9yek1FQ0I4bUVlRzRnUENFem5WTk9BIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9yek1FQ1I4bUVlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3J6TUVDaDhtRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9yek1FQ3g4bUVlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9yek1FREI4bUVlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvQ2FiLnVtbCNfcnllNVlCOG1FZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3J6TGM4QjhtRWVHNGdQQ0V6blZOT0EiIHg9IjM1NSIgeT0iMzQiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfbjJKS01COG5FZUc0Z1BDRXpuVk5PQSIgdHlwZT0iMzAyNyIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbjJKeFFCOG5FZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9uMkp4UVI4bkVlRzRnUENFem5WTk9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX24ySnhRaDhuRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9uMkp4UXg4bkVlRzRnUENFem5WTk9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbjJKeFJCOG5FZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbjJKeFJSOG5FZUc0Z1BDRXpuVk5PQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbjJKeFJoOG5FZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfbjJKeFJ4OG5FZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9GWUVYQUI4b0VlRzRnUENFem5WTk9BIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvQ2FiLnVtbCNfdUtQbGdCOG5FZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0ZZRVhBUjhvRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9GWUVYQWg4b0VlRzRnUENFem5WTk9BIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvQ2FiLnVtbCNfdTBJM0VCOG5FZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0ZZRVhBeDhvRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9uMkp4U0I4bkVlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX24ySnhTUjhuRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9uMkp4U2g4bkVlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9uMkp4U3g4bkVlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX24ySnhUQjhuRWVHNGdQQ0V6blZOT0EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX24ySnhUUjhuRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfbjJKeFRoOG5FZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX24ySnhUeDhuRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX24ySnhVQjhuRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm9DYWIudW1sI19uMTIyVUI4bkVlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbjJKS01SOG5FZUc0Z1BDRXpuVk5PQSIgeD0iMTk1IiB5PSIzNCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9UTFhSVURVdEVlRzVwTF9mcE4yRGdRIiB0eXBlPSIzMDI3IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9UTFg0WURVdEVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1RMWDRZVFV0RWVHNXBMX2ZwTjJEZ1EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVExYNFlqVXRFZUc1cExfZnBOMkRnUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1RMWDRZelV0RWVHNXBMX2ZwTjJEZ1EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9UTFlmY0RVdEVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9UTFlmY1RVdEVlRzVwTF9mcE4yRGdRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9UTFlmY2pVdEVlRzVwTF9mcE4yRGdRIiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9UTFlmY3pVdEVlRzVwTF9mcE4yRGdRIiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3hVV01NRFV2RWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm9DYWIudW1sI194VUNxTURVdkVlRzVwTF9mcE4yRGdRIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfeFVXTU1UVXZFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0t2bVhNRFV6RWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm9DYWIudW1sI19LdV82UURVekVlRzVwTF9mcE4yRGdRIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfS3ZtWE1UVXpFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1RMWWZkRFV0RWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfVExZZmRUVXRFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX1RMWWZkalV0RWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1RMWWZkelV0RWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfVExZZmVEVXRFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfVExZZmVUVXRFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9UTFlmZWpVdEVlRzVwTF9mcE4yRGdRIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfVExZZmV6VXRFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfVExZZmZEVXRFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iUm9ib0NhYi51bWwjX1RLejNzRFV0RWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9UTFhSVVRVdEVlRzVwTF9mcE4yRGdRIiB4PSIyNjUiIHk9IjIzNCIgd2lkdGg9IjE1MSIgaGVpZ2h0PSIxNDEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfRzFmWmNEVXdFZUc1cExfZnBOMkRnUSIgdHlwZT0iMzAyNyIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRzFnQWdEVXdFZUc1cExfZnBOMkRnUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HMWdBZ1RVd0VlRzVwTF9mcE4yRGdRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0cxZ0FnalV3RWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HMWdBZ3pVd0VlRzVwTF9mcE4yRGdRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRzFnQWhEVXdFZUc1cExfZnBOMkRnUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRzFnQWhUVXdFZUc1cExfZnBOMkRnUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfRzFnQWhqVXdFZUc1cExfZnBOMkRnUSIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfRzFnQWh6VXdFZUc1cExfZnBOMkRnUSIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9LMU4tWURVd0VlRzVwTF9mcE4yRGdRIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvQ2FiLnVtbCNfSzBwOXNEVXdFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0sxTi1ZVFV3RWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9QY3RHNERVd0VlRzVwTF9mcE4yRGdRIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvQ2FiLnVtbCNfUGNKR01EVXdFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1BjdEc0VFV3RWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9ZSXpVVURVd0VlRzVwTF9mcE4yRGdRIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvQ2FiLnVtbCNfWUlQNnNEVXdFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1lJelVVVFV3RWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HMWdBaURVd0VlRzVwTF9mcE4yRGdRIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0cxZ0FpVFV3RWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9HMWdBaWpVd0VlRzVwTF9mcE4yRGdRIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HMWdBaXpVd0VlRzVwTF9mcE4yRGdRIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0cxZ0FqRFV3RWVHNXBMX2ZwTjJEZ1EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0cxZ0FqVFV3RWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfRzFnQWpqVXdFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0cxZ0FqelV3RWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0cxZ0FrRFV3RWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm9DYWIudW1sI19HMHhBc0RVd0VlRzVwTF9mcE4yRGdRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfRzFmWmNUVXdFZUc1cExfZnBOMkRnUSIgeD0iNDYwIiB5PSIyMzQiIHdpZHRoPSIyMjAiIGhlaWdodD0iMTMzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZlUDN3S2tfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6SlFha19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZmVQM3dha19FZUNYcWNSVi0xOGY2USIgeD0iNTAiIHk9IjUwIiB3aWR0aD0iOTI5IiBoZWlnaHQ9IjUzOSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9mZVAzd3FrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfa3M5V2duN0xFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iUm9ib0NhYi51bWwjX2ZkekpRYWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0N2TF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IlJvYm9DYWIudW1sI19mZHpKUWFrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfZmVQNFRha19FZUNYcWNSVi0xOGY2USIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJTZW5zb3JzRGlhZ3JhbSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZmVQNFRxa19FZUNYcWNSVi0xOGY2USIgdHlwZT0iMjA3MyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2ZlUDRUNmtfRWVDWHFjUlYtMThmNlEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mZVA0VUtrX0VlQ1hxY1JWLTE4ZjZRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9mZVA0VWFrX0VlQ1hxY1JWLTE4ZjZRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mZVA0VXFrX0VlQ1hxY1JWLTE4ZjZRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2ZlUDRVNmtfRWVDWHFjUlYtMThmNlEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZmVQNFZLa19FZUNYcWNSVi0xOGY2USIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9mZVA0VmFrX0VlQ1hxY1JWLTE4ZjZRIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbGRvWTRFWnlFZUdvMnJMVDQ5aHNSdyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6TGlkYXJTeXN0ZW0iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9sZG9ZNFVaeUVlR28yckxUNDloc1J3IiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6TGlkYXJTeXN0ZW0iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9sZG9ZNGtaeUVlR28yckxUNDloc1J3IiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbGRvWTQwWnlFZUdvMnJMVDQ5aHNSdyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2xkb1k1RVp5RWVHbzJyTFQ0OWhzUnciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9mZVA0VzZrX0VlQ1hxY1JWLTE4ZjZRIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZlUDRYS2tfRWVDWHFjUlYtMThmNlEiIHR5cGU9IjcwNzMiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mZVA0WGFrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZmVQNFhxa19FZUNYcWNSVi0xOGY2USIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZmVQNFg2a19FZUNYcWNSVi0xOGY2USIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZmVQNFlLa19FZUNYcWNSVi0xOGY2USIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2ZlUDRZYWtfRWVDWHFjUlYtMThmNlEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZmVQNFlxa19FZUNYcWNSVi0xOGY2USIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZmVQNFk2a19FZUNYcWNSVi0xOGY2USIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2ZlUDRaS2tfRWVDWHFjUlYtMThmNlEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2ZlUDRaYWtfRWVDWHFjUlYtMThmNlEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2ZlUDRacWtfRWVDWHFjUlYtMThmNlEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZmVQNFo2a19FZUNYcWNSVi0xOGY2USIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZmVQNGFLa19FZUNYcWNSVi0xOGY2USIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZmVQNGFha19FZUNYcWNSVi0xOGY2USIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZmVQNGFxa19FZUNYcWNSVi0xOGY2USIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9mZVA0YTZrX0VlQ1hxY1JWLTE4ZjZRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZmVQNGJLa19FZUNYcWNSVi0xOGY2USIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mZVA0YmFrX0VlQ1hxY1JWLTE4ZjZRIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMTYiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ZlUDRicWtfRWVDWHFjUlYtMThmNlEiIHg9Ii0xMjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZmVQNGI2a19FZUNYcWNSVi0xOGY2USIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZmVQNGNLa19FZUNYcWNSVi0xOGY2USIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19mZHpKWTZrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZlUDRjYWtfRWVDWHFjUlYtMThmNlEiIHg9IjIwMyIgeT0iNzMiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6Sldxa19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZmVQNGNxa19FZUNYcWNSVi0xOGY2USIgeD0iMzAiIHk9IjMwIiB3aWR0aD0iMjEzIiBoZWlnaHQ9IjExOSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZmVQNGM2a19FZUNYcWNSVi0xOGY2USIgdHlwZT0iMjA3MyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2ZlUDRkS2tfRWVDWHFjUlYtMThmNlEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mZVA0ZGFrX0VlQ1hxY1JWLTE4ZjZRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9mZVA0ZHFrX0VlQ1hxY1JWLTE4ZjZRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mZVA0ZDZrX0VlQ1hxY1JWLTE4ZjZRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2ZlUDRlS2tfRWVDWHFjUlYtMThmNlEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZmVQNGVha19FZUNYcWNSVi0xOGY2USIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9mZVA0ZXFrX0VlQ1hxY1JWLTE4ZjZRIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbldfSE1FWnlFZUdvMnJMVDQ5aHNSdyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6U2Vuc29yU3lzdGVtIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbldfSE1VWnlFZUdvMnJMVDQ5aHNSdyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlNlbnNvclN5c3RlbSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX25XX0hNa1p5RWVHbzJyTFQ0OWhzUnciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9uV19ITTBaeUVlR28yckxUNDloc1J3IiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbldfdVFFWnlFZUdvMnJMVDQ5aHNSdyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2ZlUDRnS2tfRWVDWHFjUlYtMThmNlEiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZmVQNGdha19FZUNYcWNSVi0xOGY2USIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZlUDRncWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9mZVA0ZzZrX0VlQ1hxY1JWLTE4ZjZRIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9mZVA0aEtrX0VlQ1hxY1JWLTE4ZjZRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mZVA0aGFrX0VlQ1hxY1JWLTE4ZjZRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZmVQNGhxa19FZUNYcWNSVi0xOGY2USIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mZVA0aDZrX0VlQ1hxY1JWLTE4ZjZRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9mZVA0aUtrX0VlQ1hxY1JWLTE4ZjZRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZmVQNGlha19FZUNYcWNSVi0xOGY2USIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9mZVA0aXFrX0VlQ1hxY1JWLTE4ZjZRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZmVQNGk2a19FZUNYcWNSVi0xOGY2USIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9UVUY5VUtsRkVlQ2dkTWh3RUJ1V0lnIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ZlUDRqYWtfRWVDWHFjUlYtMThmNlEiIHg9Ii0xMjEiIHk9IjUiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZmVQNGpxa19FZUNYcWNSVi0xOGY2USIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9mZVA0ajZrX0VlQ1hxY1JWLTE4ZjZRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX2ZkekpjS2tfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZmVQNGtLa19FZUNYcWNSVi0xOGY2USIgeD0iMTg2IiB5PSI3MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1VPTmNNS2xGRWVDZ2RNaHdFQnVXSWciIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9VT05jTXFsRkVlQ2dkTWh3RUJ1V0lnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9VT05jTTZsRkVlQ2dkTWh3RUJ1V0lnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVU9OY05LbEZFZUNnZE1od0VCdVdJZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9VT05jTmFsRkVlQ2dkTWh3RUJ1V0lnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9VT05jTnFsRkVlQ2dkTWh3RUJ1V0lnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVU9OY042bEZFZUNnZE1od0VCdVdJZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVU9waEVLbEZFZUNnZE1od0VCdVdJZyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVVJWb3NLbEZFZUNnZE1od0VCdVdJZyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9VUlZvc2FsRkVlQ2dkTWh3RUJ1V0lnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9VUlZvc3FsRkVlQ2dkTWh3RUJ1V0lnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVVJWb3M2bEZFZUNnZE1od0VCdVdJZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVVJWb3RLbEZFZUNnZE1od0VCdVdJZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9VT05jT0tsRkVlQ2dkTWh3RUJ1V0lnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfeXllMjBLbEZFZUNuaWFNazVRVUJSZyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il95eWUyMGFsRkVlQ25pYU1rNVFVQlJnIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNjAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1VPTmNPYWxGRWVDZ2RNaHdFQnVXSWciIHg9Ii0xNDEiIHk9IjQiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfVU9OY09xbEZFZUNnZE1od0VCdVdJZyIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9VT05jTzZsRkVlQ2dkTWh3RUJ1V0lnIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX1VNYXNjS2xGRWVDZ2RNaHdFQnVXSWciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfVU9OY01hbEZFZUNnZE1od0VCdVdJZyIgeD0iMTg2IiB5PSIxMTEiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX25EVFM0S2xGRWVDbmlhTWs1UVVCUmciIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9uRGNjMEtsRkVlQ25pYU1rNVFVQlJnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9uRGNjMGFsRkVlQ25pYU1rNVFVQlJnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbkRjYzBxbEZFZUNuaWFNazVRVUJSZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9uRGNjMDZsRkVlQ25pYU1rNVFVQlJnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9uRGNjMUtsRkVlQ25pYU1rNVFVQlJnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbkRjYzFhbEZFZUNuaWFNazVRVUJSZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbkR2WHdLbEZFZUNuaWFNazVRVUJSZyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbkYxQ2NLbEZFZUNuaWFNazVRVUJSZyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9uRjFDY2FsRkVlQ25pYU1rNVFVQlJnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9uRjFDY3FsRkVlQ25pYU1rNVFVQlJnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbkYxQ2M2bEZFZUNuaWFNazVRVUJSZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbkYxQ2RLbEZFZUNuaWFNazVRVUJSZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9uRGNjMXFsRkVlQ25pYU1rNVFVQlJnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfekw5dDBLbEZFZUNuaWFNazVRVUJSZyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il96TDl0MGFsRkVlQ25pYU1rNVFVQlJnIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNjAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX25EY2MxNmxGRWVDbmlhTWs1UVVCUmciIHg9Ii0xMjYiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbkRjYzJLbEZFZUNuaWFNazVRVUJSZyIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9uRGNjMmFsRkVlQ25pYU1rNVFVQlJnIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX25DakU4S2xGRWVDbmlhTWs1UVVCUmciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbkRUUzRhbEZFZUNuaWFNazVRVUJSZyIgeD0iMTg2IiB5PSIxNTUiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlJvYm9DYWIudW1sI19mZHpKWjZrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mZVA0a2FrX0VlQ1hxY1JWLTE4ZjZRIiB4PSIzMDUiIHk9IjMwIiB3aWR0aD0iMTk2IiBoZWlnaHQ9IjIwNiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZmVQNGtxa19FZUNYcWNSVi0xOGY2USIgdHlwZT0iMjA3MyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2ZlUDRrNmtfRWVDWHFjUlYtMThmNlEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mZVA0bEtrX0VlQ1hxY1JWLTE4ZjZRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9mZVA0bGFrX0VlQ1hxY1JWLTE4ZjZRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mZVA0bHFrX0VlQ1hxY1JWLTE4ZjZRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2ZlUDRsNmtfRWVDWHFjUlYtMThmNlEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZmVQNG1La19FZUNYcWNSVi0xOGY2USIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9mZVA0bWFrX0VlQ1hxY1JWLTE4ZjZRIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcFFOU29FWnlFZUdvMnJMVDQ5aHNSdyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6R1BTU3lzdGVtIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcFFOU29VWnlFZUdvMnJMVDQ5aHNSdyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkdQU1N5c3RlbSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3BRTlNva1p5RWVHbzJyTFQ0OWhzUnciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9wUU5TbzBaeUVlR28yckxUNDloc1J3IiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcFFONXNFWnlFZUdvMnJMVDQ5aHNSdyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2ZlUDRuNmtfRWVDWHFjUlYtMThmNlEiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZmVQNG9La19FZUNYcWNSVi0xOGY2USIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZlUDRvYWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9mZVA0b3FrX0VlQ1hxY1JWLTE4ZjZRIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9mZVA0bzZrX0VlQ1hxY1JWLTE4ZjZRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mZVA0cEtrX0VlQ1hxY1JWLTE4ZjZRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZmVQNHBha19FZUNYcWNSVi0xOGY2USIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mZVA0cHFrX0VlQ1hxY1JWLTE4ZjZRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9mZVA0cDZrX0VlQ1hxY1JWLTE4ZjZRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZmVQNHFLa19FZUNYcWNSVi0xOGY2USIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZmVQNHFha19FZUNYcWNSVi0xOGY2USIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZmVQNHFxa19FZUNYcWNSVi0xOGY2USIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mZVA0cTZrX0VlQ1hxY1JWLTE4ZjZRIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mZVA0cktrX0VlQ1hxY1JWLTE4ZjZRIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJUZXh0SWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2ZlUDRyYWtfRWVDWHFjUlYtMThmNlEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2ZlUDRycWtfRWVDWHFjUlYtMThmNlEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZmVQNHI2a19FZUNYcWNSVi0xOGY2USIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2ZlUDRzS2tfRWVDWHFjUlYtMThmNlEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRm1DTnNLbE1FZUNZZmJueFZTeVo5ZyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9mZVA0c3FrX0VlQ1hxY1JWLTE4ZjZRIiB4PSItMTAxIiB5PSI1Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2ZlUDRzNmtfRWVDWHFjUlYtMThmNlEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ZlUDR0S2tfRWVDWHFjUlYtMThmNlEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6SmZha19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mZVA0dGFrX0VlQ1hxY1JWLTE4ZjZRIiB4PSIxNzEiIHk9IjQ1Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfNHgxaWNLbExFZUNZZmJueFZTeVo5ZyIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzR4MWljcWxMRWVDWWZibnhWU3laOWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzR4MWljNmxMRWVDWWZibnhWU3laOWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il80eDFpZEtsTEVlQ1lmYm54VlN5WjlnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzR4MWlkYWxMRWVDWWZibnhWU3laOWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzR4MWlkcWxMRWVDWWZibnhWU3laOWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il80eDFpZDZsTEVlQ1lmYm54VlN5WjlnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il80eUlkWUtsTEVlQ1lmYm54VlN5WjlnIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il80ME9JRUtsTEVlQ1lmYm54VlN5WjlnIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzQwT0lFYWxMRWVDWWZibnhWU3laOWciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzQwT0lFcWxMRWVDWWZibnhWU3laOWciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il80ME9JRTZsTEVlQ1lmYm54VlN5WjlnIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il80ME9JRktsTEVlQ1lmYm54VlN5WjlnIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzR4MWllS2xMRWVDWWZibnhWU3laOWciIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HMldtRUtsTUVlQ1lmYm54VlN5WjlnIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0hPZ0FVS2xNRWVDWWZibnhWU3laOWciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyOCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfNHgxaWVhbExFZUNZZmJueFZTeVo5ZyIgeD0iLTE1MSIgeT0iNSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il80eDFpZXFsTEVlQ1lmYm54VlN5WjlnIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzR4MWllNmxMRWVDWWZibnhWU3laOWciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfNHhGN2tLbExFZUNZZmJueFZTeVo5ZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il80eDFpY2FsTEVlQ1lmYm54VlN5WjlnIiB4PSIxNzEiIHk9IjkwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6SmRLa19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZmVQNHRxa19FZUNYcWNSVi0xOGY2USIgeD0iNTYwIiB5PSIzMCIgd2lkdGg9IjE4MSIgaGVpZ2h0PSIxMjYiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ZlUDR0NmtfRWVDWHFjUlYtMThmNlEiIHR5cGU9IjIwNzMiIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9mZVA0dUtrX0VlQ1hxY1JWLTE4ZjZRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZmVQNHVha19FZUNYcWNSVi0xOGY2USIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZmVQNHVxa19FZUNYcWNSVi0xOGY2USIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZmVQNHU2a19FZUNYcWNSVi0xOGY2USIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9mZVA0dktrX0VlQ1hxY1JWLTE4ZjZRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2ZlUDR2YWtfRWVDWHFjUlYtMThmNlEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZmVQNHZxa19FZUNYcWNSVi0xOGY2USIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0RHczlzQ0c0RWVLQmM4cWh4bHZPX1EiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0RHczlzU0c0RWVLQmM4cWh4bHZPX1EiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ER3M5c2lHNEVlS0JjOHFoeGx2T19RIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfREdzOXN5RzRFZUtCYzhxaHhsdk9fUSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0RHczl0Q0c0RWVLQmM4cWh4bHZPX1EiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9mZVA0eEtrX0VlQ1hxY1JWLTE4ZjZRIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZlUDR4YWtfRWVDWHFjUlYtMThmNlEiIHR5cGU9IjcwNzMiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9aQ0lDb0RVb0VlRzVwTF9mcE4yRGdRIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9aQ0lwc0RVb0VlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1pDSXBzVFVvRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfWkNJcHNqVW9FZUc1cExfZnBOMkRnUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1pDSXBzelVvRWVHNXBMX2ZwTjJEZ1EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9aQ0lwdERVb0VlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9aQ0lwdFRVb0VlRzVwTF9mcE4yRGdRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9aQ0lwdGpVb0VlRzVwTF9mcE4yRGdRIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9aQ0lwdHpVb0VlRzVwTF9mcE4yRGdRIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1pDSXB1RFVvRWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1pDSXB1VFVvRWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2JsRzh3RFVvRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYmxHOHdqVW9FZUc1cExfZnBOMkRnUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2JsSGowRFVvRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2JsSGowVFVvRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2JsSGowalVvRWVHNXBMX2ZwTjJEZ1EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYmxIajB6VW9FZUc1cExfZnBOMkRnUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ibEhqMURVb0VlRzVwTF9mcE4yRGdRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYmxIajFUVW9FZUc1cExfZnBOMkRnUSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYmxIajFqVW9FZUc1cExfZnBOMkRnUSIgeD0iLTExOCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2JsSGoxelVvRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2JsSGoyRFVvRWVHNXBMX2ZwTjJEZ1EiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19scHFZc0tsQUVlQ1lhWWkwaHpxNWtnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9ibEc4d1RVb0VlRzVwTF9mcE4yRGdRIiB4PSIxMjMiIHk9IjM1Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvQ2FiLnVtbCNfWkJ2b0lEVW9FZUc1cExfZnBOMkRnUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1pDSUNvVFVvRWVHNXBMX2ZwTjJEZ1EiIHg9IjEwIiB5PSI0IiB3aWR0aD0iMTMzIiBoZWlnaHQ9Ijc2Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1pwWG8wRFVvRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1pwWG8walVvRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWnBYbzB6VW9FZUc1cExfZnBOMkRnUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9acFhvMURVb0VlRzVwTF9mcE4yRGdRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWnBZUDREVW9FZUc1cExfZnBOMkRnUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1pwWVA0VFVvRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1pwWVA0alVvRWVHNXBMX2ZwTjJEZ1EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1pwWVA0elVvRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1pwWVA1RFVvRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfWnBZUDVUVW9FZUc1cExfZnBOMkRnUSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfWnBZUDVqVW9FZUc1cExfZnBOMkRnUSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfc1B6X2dEVW9FZUc1cExfZnBOMkRnUSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9zUHpfZ2pVb0VlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfc1B6X2d6VW9FZUc1cExfZnBOMkRnUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfc1B6X2hEVW9FZUc1cExfZnBOMkRnUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfc1B6X2hUVW9FZUc1cExfZnBOMkRnUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9zUHpfaGpVb0VlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3NQel9oelVvRWVHNXBMX2ZwTjJEZ1EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9zUDBta0RVb0VlRzVwTF9mcE4yRGdRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9zUDBta1RVb0VlRzVwTF9mcE4yRGdRIiB4PSItMTEyIiB5PSI1Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfc1AwbWtqVW9FZUc1cExfZnBOMkRnUSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfc1AwbWt6VW9FZUc1cExfZnBOMkRnUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX2xwcVlzS2xBRWVDWWFZaTBoenE1a2ciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3NQel9nVFVvRWVHNXBMX2ZwTjJEZ1EiIHg9IjEyNiIgeT0iMzUiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm9DYWIudW1sI19ab18xWURVb0VlRzVwTF9mcE4yRGdRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfWnBYbzBUVW9FZUc1cExfZnBOMkRnUSIgeD0iMTAiIHk9Ijg5IiB3aWR0aD0iMTM2IiBoZWlnaHQ9Ijg2Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZlUDR4cWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il96RkVuSURVb0VlRzVwTF9mcE4yRGdRIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfekZGT01EVW9FZUc1cExfZnBOMkRnUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfekZGT01UVW9FZUc1cExfZnBOMkRnUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3pGRk9NalVvRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfekZGT016VW9FZUc1cExfZnBOMkRnUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfekZGT05EVW9FZUc1cExfZnBOMkRnUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3pGRjFRRFVvRWVHNXBMX2ZwTjJEZ1EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3pGTDc0RFVvRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3pId3V3RFVvRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfekh3dXdUVW9FZUc1cExfZnBOMkRnUSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfekh3dXdqVW9FZUc1cExfZnBOMkRnUSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3pId3V3elVvRWVHNXBMX2ZwTjJEZ1EiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3pId3V4RFVvRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfekZGMVFUVW9FZUc1cExfZnBOMkRnUSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il96RkYxUWpVb0VlRzVwTF9mcE4yRGdRIiB4PSItMTIxIiB5PSI0MyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il96RkYxUXpVb0VlRzVwTF9mcE4yRGdRIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3pGRjFSRFVvRWVHNXBMX2ZwTjJEZ1EiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfekVmX1lEVW9FZUc1cExfZnBOMkRnUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il96RkVuSVRVb0VlRzVwTF9mcE4yRGdRIiB4PSIyMTYiIHk9IjE5NyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfMmhtWVlEVW9FZUc1cExfZnBOMkRnUSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzJobVlZalVvRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzJobVlZelVvRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8yaG1ZWkRVb0VlRzVwTF9mcE4yRGdRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzJobVlaVFVvRWVHNXBMX2ZwTjJEZ1EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzJobVlaalVvRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8yaG1ZWnpVb0VlRzVwTF9mcE4yRGdRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8yaHFDd0RVb0VlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8ya0RQY0RVb0VlRzVwTF9mcE4yRGdRIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzJrRFBjVFVvRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzJrRFBjalVvRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8ya0RQY3pVb0VlRzVwTF9mcE4yRGdRIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8ya0RQZERVb0VlRzVwTF9mcE4yRGdRIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzJobV9jRFVvRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMmhtX2NUVW9FZUc1cExfZnBOMkRnUSIgeD0iLTEwMSIgeT0iLTQxIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzJobV9jalVvRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMmhtX2N6VW9FZUc1cExfZnBOMkRnUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI18yaFFhSURVb0VlRzVwTF9mcE4yRGdRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzJobVlZVFVvRWVHNXBMX2ZwTjJEZ1EiIHg9IjIxNiIgeT0iOTYiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlJvYm9DYWIudW1sI19mZHpKZ2FrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mZVA0MjZrX0VlQ1hxY1JWLTE4ZjZRIiB4PSI4MDAiIHk9IjMwIiB3aWR0aD0iMjI2IiBoZWlnaHQ9IjQwNiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZWpCdE1LbEFFZUNZYVlpMGh6cTVrZyIgdHlwZT0iMjA3MyIgZm9udEhlaWdodD0iOCIgZmlsbENvbG9yPSI4MDQ3MDg1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VqQnRNcWxBRWVDWWFZaTBoenE1a2ciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9lakJ0TTZsQUVlQ1lhWWkwaHpxNWtnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lakJ0TktsQUVlQ1lhWWkwaHpxNWtnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9lakJ0TmFsQUVlQ1lhWWkwaHpxNWtnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VqQnROcWxBRWVDWWFZaTBoenE1a2ciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZWpCdE42bEFFZUNZYVlpMGh6cTVrZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9la3FyOEtsQUVlQ1lhWWkwaHpxNWtnIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNW9lLUVFWnhFZUdvMnJMVDQ5aHNSdyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6Q2FtZXJhU3lzdGVtIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNW9lLUVVWnhFZUdvMnJMVDQ5aHNSdyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkNhbWVyYVN5c3RlbSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzVvZS1Fa1p4RWVHbzJyTFQ0OWhzUnciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il81b2UtRTBaeEVlR28yckxUNDloc1J3IiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNW9lLUZFWnhFZUdvMnJMVDQ5aHNSdyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2VqQnRPS2xBRWVDWWFZaTBoenE1a2ciIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZWpCdE9hbEFFZUNZYVlpMGh6cTVrZyIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2VqQnRPcWxBRWVDWWFZaTBoenE1a2ciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZWpCdE82bEFFZUNZYVlpMGh6cTVrZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2xyQWNnS2xBRWVDWWFZaTBoenE1a2ciIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9sckFjZ3FsQUVlQ1lhWWkwaHpxNWtnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9sckFjZzZsQUVlQ1lhWWkwaHpxNWtnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbHJBY2hLbEFFZUNZYVlpMGh6cTVrZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9sckFjaGFsQUVlQ1lhWWkwaHpxNWtnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9sckFjaHFsQUVlQ1lhWWkwaHpxNWtnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbHJBY2g2bEFFZUNZYVlpMGh6cTVrZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbHJBY2phbEFFZUNZYVlpMGh6cTVrZyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbHZDQTRLbEFFZUNZYVlpMGh6cTVrZyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9sdkNBNGFsQUVlQ1lhWWkwaHpxNWtnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9sdkNBNHFsQUVlQ1lhWWkwaHpxNWtnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbHZMSzBLbEFFZUNZYVlpMGh6cTVrZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbHZMSzBhbEFFZUNZYVlpMGh6cTVrZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9sckFjaUtsQUVlQ1lhWWkwaHpxNWtnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfT1B1QlVLbEJFZUNZYVlpMGh6cTVrZyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9PekxUc0tsQkVlQ1lhWWkwaHpxNWtnIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfN3ZQMlFFWnhFZUdvMnJMVDQ5aHNSdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzd2UDJRVVp4RWVHbzJyTFQ0OWhzUnciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il84UEZNNEVaeEVlR28yckxUNDloc1J3IiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzhzMDQwRVp4RWVHbzJyTFQ0OWhzUnciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il84czFmNEVaeEVlR28yckxUNDloc1J3IiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzhzMWY0VVp4RWVHbzJyTFQ0OWhzUnciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOHMxZjRrWnhFZUdvMnJMVDQ5aHNSdyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il84czFmNDBaeEVlR28yckxUNDloc1J3IiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2xyQWNpYWxBRWVDWWFZaTBoenE1a2ciIHg9Ii01MCIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9sckFjaXFsQUVlQ1lhWWkwaHpxNWtnIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2xyQWNpNmxBRWVDWWFZaTBoenE1a2ciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfbHBxWXNLbEFFZUNZYVlpMGh6cTVrZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9sckFjZ2FsQUVlQ1lhWWkwaHpxNWtnIiB4PSIxNjYiIHk9IjY1IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJSb2JvQ2FiLnVtbCNfZWY1Z3NLbEFFZUNZYVlpMGh6cTVrZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZWpCdE1hbEFFZUNZYVlpMGh6cTVrZyIgeD0iMTA4NSIgeT0iMzAiIHdpZHRoPSIxNzYiIGhlaWdodD0iMTE2Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il81c0pGOEI4b0VlRzRnUENFem5WTk9BIiB0eXBlPSIyMDczIiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzVzSnRBQjhvRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il81c0p0QVI4b0VlRzRnUENFem5WTk9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il81c0p0QWg4b0VlRzRnUENFem5WTk9BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il81c0p0QXg4b0VlRzRnUENFem5WTk9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzVzSnRCQjhvRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNXNKdEJSOG9FZUc0Z1BDRXpuVk5PQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il81c1NQNEI4b0VlRzRnUENFem5WTk9BIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcjFMdzBFWnlFZUdvMnJMVDQ5aHNSdyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6U2Vuc29yU3lzdGVtIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcjFMdzBVWnlFZUdvMnJMVDQ5aHNSdyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlNlbnNvclN5c3RlbSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3IxTHcwa1p5RWVHbzJyTFQ0OWhzUnciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9yMUx3MDBaeUVlR28yckxUNDloc1J3IiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcjFMdzFFWnlFZUdvMnJMVDQ5aHNSdyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzVzSnRCaDhvRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfNXNKdEJ4OG9FZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzVzSnRDQjhvRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfNXNKdENSOG9FZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzljamNnQjhvRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il85Y2tEa0I4b0VlRzRnUENFem5WTk9BIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il85Y2tEa1I4b0VlRzRnUENFem5WTk9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOWNrRGtoOG9FZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il85Y2tEa3g4b0VlRzRnUENFem5WTk9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il85Y2tEbEI4b0VlRzRnUENFem5WTk9BIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOWNrRGxSOG9FZUc0Z1BDRXpuVk5PQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOWNudDhCOG9FZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOWUxVWNCOG9FZUc0Z1BDRXpuVk5PQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il85ZTFVY1I4b0VlRzRnUENFem5WTk9BIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il85ZTFVY2g4b0VlRzRnUENFem5WTk9BIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOWUxN2dCOG9FZUc0Z1BDRXpuVk5PQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOWUxN2dSOG9FZUc0Z1BDRXpuVk5PQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il85Y2tEbGg4b0VlRzRnUENFem5WTk9BIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzlja0RseDhvRWVHNGdQQ0V6blZOT0EiIHg9Ii0yNzYiIHk9IjE0Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzlja0RtQjhvRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfOWNrRG1SOG9FZUc0Z1BDRXpuVk5PQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI185Y09zWUI4b0VlRzRnUENFem5WTk9BIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzljamNnUjhvRWVHNGdQQ0V6blZOT0EiIHg9IjI4NiIgeT0iNTYiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlJvYm9DYWIudW1sI181cnJMNEI4b0VlRzRnUENFem5WTk9BIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il81c0pGOFI4b0VlRzRnUENFem5WTk9BIiB4PSIxMzIwIiB5PSIzMCIgd2lkdGg9IjI5NiIgaGVpZ2h0PSIxNTEiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2xJQVo0RFVwRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjIwNzMiIGZvbnROYW1lPSJVYnVudHUiIGZpbGxDb2xvcj0iODA0NzA4NSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9sSUJBOERVcEVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbElCQThUVXBFZUc1cExfZnBOMkRnUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbElCQThqVXBFZUc1cExfZnBOMkRnUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbElCQTh6VXBFZUc1cExfZnBOMkRnUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9sSUJBOURVcEVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2xJQkE5VFVwRWVHNXBMX2ZwTjJEZ1EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbElGU1lEVXBFZUc1cExfZnBOMkRnUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0RISnBvQ0c0RWVLQmM4cWh4bHZPX1EiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IlJvYm90TUw6OkNhbWVyYVN5c3RlbSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0RISnBvU0c0RWVLQmM4cWh4bHZPX1EiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSIsUm9ib3RNTDo6Q2FtZXJhU3lzdGVtIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfREhKcG9pRzRFZUtCYzhxaHhsdk9fUSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0RISnBveUc0RWVLQmM4cWh4bHZPX1EiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ESEpwcENHNEVlS0JjOHFoeGx2T19RIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbElCQTlqVXBFZUc1cExfZnBOMkRnUSIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9sSUJBOXpVcEVlRzVwTF9mcE4yRGdRIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfbElCQS1EVXBFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9sSUJBLVRVcEVlRzVwTF9mcE4yRGdRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfb0FMZzREVXBFZUc1cExfZnBOMkRnUSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX29BTUg4RFVwRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29BTUg4VFVwRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9vQU1IOGpVcEVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29BTUg4elVwRWVHNXBMX2ZwTjJEZ1EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX29BTUg5RFVwRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vQU1IOVRVcEVlRzVwTF9mcE4yRGdRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9vQVB5VURVcEVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vQzRQa0RVcEVlRzVwTF9mcE4yRGdRIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29DNFBrVFVwRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29DNFBralVwRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vQzQyb0RVcEVlRzVwTF9mcE4yRGdRIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vQzQyb1RVcEVlRzVwTF9mcE4yRGdRIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX29BTUg5alVwRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfb0FNSDl6VXBFZUc1cExfZnBOMkRnUSIgeD0iLTExMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9vQU1ILURVcEVlRzVwTF9mcE4yRGdRIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX29BTUgtVFVwRWVHNXBMX2ZwTjJEZ1EiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfbl8ySnNEVXBFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9vQUxnNFRVcEVlRzVwTF9mcE4yRGdRIiB4PSIxODEiIHk9Ijc1IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJSb2JvQ2FiLnVtbCNfbEhxYm9EVXBFZUc1cExfZnBOMkRnUSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbElBWjRUVXBFZUc1cExfZnBOMkRnUSIgeD0iMTY4MCIgeT0iMzAiIHdpZHRoPSIxOTEiIGhlaWdodD0iMTIxIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il95cDREY0RVcEVlRzVwTF9mcE4yRGdRIiB0eXBlPSIyMDczIiBmb250TmFtZT0iVWJ1bnR1IiBmaWxsQ29sb3I9IjgwNDcwODUiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfeXA0cWdEVXBFZUc1cExfZnBOMkRnUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3lwNHFnVFVwRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3lwNHFnalVwRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3lwNHFnelVwRWVHNXBMX2ZwTjJEZ1EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfeXA0cWhEVXBFZUc1cExfZnBOMkRnUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il95cDRxaFRVcEVlRzVwTF9mcE4yRGdRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3lwODc4RFVwRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9DMnJMOEVaeUVlR28yckxUNDloc1J3IiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpDYW1lcmFTeXN0ZW0iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9DMnJMOFVaeUVlR28yckxUNDloc1J3IiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6Q2FtZXJhU3lzdGVtIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQzJyTDhrWnlFZUdvMnJMVDQ5aHNSdyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0MycnpBRVp5RWVHbzJyTFQ0OWhzUnciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9DMnJ6QVVaeUVlR28yckxUNDloc1J3IiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfeXA0cWhqVXBFZUc1cExfZnBOMkRnUSIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il95cDRxaHpVcEVlRzVwTF9mcE4yRGdRIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfeXA0cWlEVXBFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il95cDRxaVRVcEVlRzVwTF9mcE4yRGdRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfNEp6MjREVXBFZUc1cExfZnBOMkRnUSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzRKMGQ4RFVwRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzRKMGQ4VFVwRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il80SjBkOGpVcEVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzRKMGQ4elVwRWVHNXBMX2ZwTjJEZ1EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzRKMGQ5RFVwRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il80SjBkOVRVcEVlRzVwTF9mcE4yRGdRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il80SjNoUURVcEVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il80TWNVSURVcEVlRzVwTF9mcE4yRGdRIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzRNY1VJVFVwRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzRNY1VJalVwRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il80TWNVSXpVcEVlRzVwTF9mcE4yRGdRIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il80TWNVSkRVcEVlRzVwTF9mcE4yRGdRIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzRKMGQ5alVwRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfNEowZDl6VXBFZUc1cExfZnBOMkRnUSIgeD0iLTExNiIgeT0iMiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il80SjBkLURVcEVlRzVwTF9mcE4yRGdRIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzRKMGQtVFVwRWVHNXBMX2ZwTjJEZ1EiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfNEpkNG9EVXBFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il80SnoyNFRVcEVlRzVwTF9mcE4yRGdRIiB4PSIxNTYiIHk9IjczIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJSb2JvQ2FiLnVtbCNfeXBpRk1EVXBFZUc1cExfZnBOMkRnUSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfeXA0RGNUVXBFZUc1cExfZnBOMkRnUSIgeD0iMTkzMCIgeT0iMzAiIHdpZHRoPSIxNjYiIGhlaWdodD0iMTIxIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX2ZlUDQtNmtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJzdHlsZTpQYXB5cnVzVmlld1N0eWxlIiB4bWk6aWQ9Il9aanF0NEg3TEVlU0Z5TmJuTFlEQ2t3Ij4KKyAgICAgIDxvd25lciB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6Sldha19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3pXQmZMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U3RyaW5nVmFsdWVTdHlsZSIgeG1pOmlkPSJfWmpxdDRYN0xFZVNGeU5ibkxZRENrdyIgbmFtZT0iZGlhZ3JhbV9jb21wYXRpYmlsaXR5X3ZlcnNpb24iIHN0cmluZ1ZhbHVlPSIxLjAuMCIvPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IlJvYm9DYWIudW1sI19mZHpKV2FrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfZmVQNF9La19FZUNYcWNSVi0xOGY2USIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJBY3R1YXRvcnNEaWFncmFtIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9mZVA0X2FrX0VlQ1hxY1JWLTE4ZjZRIiB0eXBlPSIyMDczIiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZmVQNF9xa19FZUNYcWNSVi0xOGY2USIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2ZlUDRfNmtfRWVDWHFjUlYtMThmNlEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2ZlUDVBS2tfRWVDWHFjUlYtMThmNlEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2ZlUDVBYWtfRWVDWHFjUlYtMThmNlEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZmVQNUFxa19FZUNYcWNSVi0xOGY2USIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mZVA1QTZrX0VlQ1hxY1JWLTE4ZjZRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2ZlUDVCS2tfRWVDWHFjUlYtMThmNlEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ERmdxNENHNEVlS0JjOHFoeGx2T19RIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ERmdxNFNHNEVlS0JjOHFoeGx2T19RIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfREZncTRpRzRFZUtCYzhxaHhsdk9fUSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0RGZ3E0eUc0RWVLQmM4cWh4bHZPX1EiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ERmdxNUNHNEVlS0JjOHFoeGx2T19RIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZmVQNUNxa19FZUNYcWNSVi0xOGY2USIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mZVA1QzZrX0VlQ1hxY1JWLTE4ZjZRIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZmVQNURLa19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3dCbTNZS2xWRWVDWWZibnhWU3laOWciIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il93Qm0zWXFsVkVlQ1lmYm54VlN5WjlnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il93Qm0zWTZsVkVlQ1lmYm54VlN5WjlnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfd0JtM1pLbFZFZUNZZmJueFZTeVo5ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il93Qm0zWmFsVkVlQ1lmYm54VlN5WjlnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il93Qm0zWnFsVkVlQ1lmYm54VlN5WjlnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfd0JtM1o2bFZFZUNZZmJueFZTeVo5ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfd0J3b1lhbFZFZUNZZmJueFZTeVo5ZyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfd0doem9LbFZFZUNZZmJueFZTeVo5ZyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il93R2h6b2FsVkVlQ1lmYm54VlN5WjlnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il93R2h6b3FsVkVlQ1lmYm54VlN5WjlnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfd0doem82bFZFZUNZZmJueFZTeVo5ZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfd0doenBLbFZFZUNZZmJueFZTeVo5ZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il93Qm0zYUtsVkVlQ1lmYm54VlN5WjlnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3dCbTNhYWxWRWVDWWZibnhWU3laOWciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3dCbTNhcWxWRWVDWWZibnhWU3laOWciIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfd0JtM2E2bFZFZUNZZmJueFZTeVo5ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI193QWFra0tsVkVlQ1lmYm54VlN5WjlnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3dCbTNZYWxWRWVDWWZibnhWU3laOWciIHg9Ii0xMCIgeT0iNTUiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlJvYm9DYWIudW1sI19mZHpKb0trX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mZVA1SWFrX0VlQ1hxY1JWLTE4ZjZRIiB4PSI3MCIgeT0iMjUiIHdpZHRoPSIxMjYiIGhlaWdodD0iMTExIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9mZVA1SXFrX0VlQ1hxY1JWLTE4ZjZRIiB0eXBlPSIyMDczIiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZmVQNUk2a19FZUNYcWNSVi0xOGY2USIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2ZlUDVKS2tfRWVDWHFjUlYtMThmNlEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2ZlUDVKYWtfRWVDWHFjUlYtMThmNlEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2ZlUDVKcWtfRWVDWHFjUlYtMThmNlEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZmVQNUo2a19FZUNYcWNSVi0xOGY2USIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mZVA1S0trX0VlQ1hxY1JWLTE4ZjZRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2ZlUDVLYWtfRWVDWHFjUlYtMThmNlEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ERnAwMHlHNEVlS0JjOHFoeGx2T19RIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ERnAwMUNHNEVlS0JjOHFoeGx2T19RIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfREZwMDFTRzRFZUtCYzhxaHhsdk9fUSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0RGcDAxaUc0RWVLQmM4cWh4bHZPX1EiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ERnAwMXlHNEVlS0JjOHFoeGx2T19RIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZmVQNUw2a19FZUNYcWNSVi0xOGY2USIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mZVA1TUtrX0VlQ1hxY1JWLTE4ZjZRIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZmVQNU1ha19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3NpbnlrS2xXRWVDWWZibnhWU3laOWciIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9zaW55a3FsV0VlQ1lmYm54VlN5WjlnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9zaW55azZsV0VlQ1lmYm54VlN5WjlnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfc2lueWxLbFdFZUNZZmJueFZTeVo5ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9zaW55bGFsV0VlQ1lmYm54VlN5WjlnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9zaW55bHFsV0VlQ1lmYm54VlN5WjlnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfc2lueWw2bFdFZUNZZmJueFZTeVo5ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfc2l3OGdhbFdFZUNZZmJueFZTeVo5ZyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfc25ZOTBLbFdFZUNZZmJueFZTeVo5ZyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9zblk5MGFsV0VlQ1lmYm54VlN5WjlnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9zblk5MHFsV0VlQ1lmYm54VlN5WjlnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfc25ZOTA2bFdFZUNZZmJueFZTeVo5ZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfc25ZOTFLbFdFZUNZZmJueFZTeVo5ZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9zaW55bUtsV0VlQ1lmYm54VlN5WjlnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3NpbnltYWxXRWVDWWZibnhWU3laOWciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3NpbnltcWxXRWVDWWZibnhWU3laOWciIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfc2lueW02bFdFZUNZZmJueFZTeVo5ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19zaGJmd0tsV0VlQ1lmYm54VlN5WjlnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3NpbnlrYWxXRWVDWWZibnhWU3laOWciIHg9Ii0xMCIgeT0iNjgiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlJvYm9DYWIudW1sI19mZHpKcmFrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mZVA1UnFrX0VlQ1hxY1JWLTE4ZjZRIiB4PSI3MCIgeT0iMTYwIiB3aWR0aD0iMTI2IiBoZWlnaHQ9IjEwMCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZmVQNVI2a19FZUNYcWNSVi0xOGY2USIgdHlwZT0iMjA3MyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2ZlUDVTS2tfRWVDWHFjUlYtMThmNlEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mZVA1U2FrX0VlQ1hxY1JWLTE4ZjZRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9mZVA1U3FrX0VlQ1hxY1JWLTE4ZjZRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mZVA1UzZrX0VlQ1hxY1JWLTE4ZjZRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2ZlUDVUS2tfRWVDWHFjUlYtMThmNlEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZmVQNVRha19FZUNYcWNSVi0xOGY2USIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9mZVA1VHFrX0VlQ1hxY1JWLTE4ZjZRIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfREZ6bDB5RzRFZUtCYzhxaHhsdk9fUSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfREZ6bDFDRzRFZUtCYzhxaHhsdk9fUSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0RGemwxU0c0RWVLQmM4cWh4bHZPX1EiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ERnpsMWlHNEVlS0JjOHFoeGx2T19RIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfREZ6bDF5RzRFZUtCYzhxaHhsdk9fUSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2ZlUDVWS2tfRWVDWHFjUlYtMThmNlEiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZmVQNVZha19FZUNYcWNSVi0xOGY2USIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZlUDVWcWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9aQlNnOEtsV0VlQ1lmYm54VlN5WjlnIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfWkJTZzhxbFdFZUNZZmJueFZTeVo5ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWkJTZzg2bFdFZUNZZmJueFZTeVo5ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1pCU2c5S2xXRWVDWWZibnhWU3laOWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWkJTZzlhbFdFZUNZZmJueFZTeVo5ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfWkJTZzlxbFdFZUNZZmJueFZTeVo5ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1pCU2c5NmxXRWVDWWZibnhWU3laOWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1pCY1I4YWxXRWVDWWZibnhWU3laOWciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1pHV25JS2xXRWVDWWZibnhWU3laOWciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWkdXbklhbFdFZUNZZmJueFZTeVo5ZyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWkdXbklxbFdFZUNZZmJueFZTeVo5ZyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1pHV25JNmxXRWVDWWZibnhWU3laOWciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1pHV25KS2xXRWVDWWZibnhWU3laOWciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfWkJTZy1LbFdFZUNZZmJueFZTeVo5ZyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9aQlNnLWFsV0VlQ1lmYm54VlN5WjlnIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9aQlNnLXFsV0VlQ1lmYm54VlN5WjlnIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1pCU2ctNmxXRWVDWWZibnhWU3laOWciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfWkFHT0lLbFdFZUNZZmJueFZTeVo5ZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9aQlNnOGFsV0VlQ1lmYm54VlN5WjlnIiB4PSItMTAiIHk9IjU5IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6SnVxa19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZmVQNWE2a19FZUNYcWNSVi0xOGY2USIgeD0iNzUiIHk9IjI4MCIgd2lkdGg9IjEyNiIgaGVpZ2h0PSIxMDAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0txYnpFQjhwRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjIwNzMiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfS3FiekVoOHBFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0txYnpFeDhwRWVHNGdQQ0V6blZOT0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0txYnpGQjhwRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0txYnpGUjhwRWVHNGdQQ0V6blZOT0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfS3FiekZoOHBFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LcWJ6Rng4cEVlRzRnUENFem5WTk9BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0txZ3JrQjhwRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LcnRsY0I4cEVlRzRnUENFem5WTk9BIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LcnRsY1I4cEVlRzRnUENFem5WTk9BIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6QWN0dWF0b3JTeXN0ZW0iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LcnRsY2g4cEVlRzRnUENFem5WTk9BIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0tydGxjeDhwRWVHNGdQQ0V6blZOT0EiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LcnRsZEI4cEVlRzRnUENFem5WTk9BIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfS3FjYUlCOHBFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9LcWNhSVI4cEVlRzRnUENFem5WTk9BIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfS3FjYUloOHBFZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9LcWNhSXg4cEVlRzRnUENFem5WTk9BIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfUGh5amtCOHBFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1BoektvQjhwRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1BoektvUjhwRWVHNGdQQ0V6blZOT0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9QaHpLb2g4cEVlRzRnUENFem5WTk9BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1BoektveDhwRWVHNGdQQ0V6blZOT0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1BoektwQjhwRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9QaHpLcFI4cEVlRzRnUENFem5WTk9BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9QaDJOOEI4cEVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9QajBqNEI4cEVlRzRnUENFem5WTk9BIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1BqMGo0UjhwRWVHNGdQQ0V6blZOT0EiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1BqMGo0aDhwRWVHNGdQQ0V6blZOT0EiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9QajBqNHg4cEVlRzRnUENFem5WTk9BIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9QajBqNUI4cEVlRzRnUENFem5WTk9BIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1BoektwaDhwRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfUGh6S3B4OHBFZUc0Z1BDRXpuVk5PQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfUGh6S3FCOHBFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9QaHpLcVI4cEVlRzRnUENFem5WTk9BIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX1BoaUU0QjhwRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfUGh5amtSOHBFZUc0Z1BDRXpuVk5PQSIgeD0iLTEwIiB5PSI2MyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iUm9ib0NhYi51bWwjX0txQThVQjhwRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0txYnpFUjhwRWVHNGdQQ0V6blZOT0EiIHg9IjM3NSIgeT0iMTQxIiB3aWR0aD0iMjIxIiBoZWlnaHQ9IjExNSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9mZVA1YktrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfWkRfSVFIN0xFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iUm9ib0NhYi51bWwjX2ZkekpuNmtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0JmTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlN0cmluZ1ZhbHVlU3R5bGUiIHhtaTppZD0iX1pEX0lRWDdMRWVTRnlOYm5MWURDa3ciIG5hbWU9ImRpYWdyYW1fY29tcGF0aWJpbGl0eV92ZXJzaW9uIiBzdHJpbmdWYWx1ZT0iMS4wLjAiLz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6Sm42a19FZUNYcWNSVi0xOGY2USIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX2ZlUDViYWtfRWVDWHFjUlYtMThmNlEiIHR5cGU9IkNvbXBvc2l0ZVN0cnVjdHVyZSIgbmFtZT0iTmV3RGlhZ3JhbSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9mZVA1YnFrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfa3M5V2czN0xFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iUm9ib0NhYi51bWwjX2ZkekpXcWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0JmTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlJvYm9DYWIudW1sI19mZHpKV3FrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfZmVQNWI2a19FZUNYcWNSVi0xOGY2USIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJBcmNoaXRlY3R1cmVEaWFncmFtIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX2ZlUDVjS2tfRWVDWHFjUlYtMThmNlEiLz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJzdHlsZTpQYXB5cnVzVmlld1N0eWxlIiB4bWk6aWQ9Il9rczlXaEg3TEVlU0Z5TmJuTFlEQ2t3Ij4KKyAgICAgIDxvd25lciB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6Sldxa19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3pXQVBMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iUm9ib0NhYi51bWwjX2ZkekpXcWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9PQ1ZGa0J3QUVlR2E1YkhfUkpGekJRIiB0eXBlPSJDb21wb3NpdGVTdHJ1Y3R1cmUiIG5hbWU9IlJvYm9jYWJEZWZhdWx0QXJjaGl0ZWN0dXJlIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9seTI3Z0J3QUVlR2E1YkhfUkpGekJRIiB0eXBlPSIyMDczIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMiIgYm9sZD0idHJ1ZSIgZmlsbENvbG9yPSIxMjYzMjI1NiIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9seTNpa0J3QUVlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbHkzaWtSd0FFZUdhNWJIX1JKRnpCUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbHkzaWtod0FFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbHkzaWt4d0FFZUdhNWJIX1JKRnpCUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9seTNpbEJ3QUVlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2x5M2lsUndBRWVHYTViSF9SSkZ6QlEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfaVRPWGtLRU9FZUtMVXFYOUlKcTJHZyIgc291cmNlPSJQYXB5cnVzSHlwZXJMaW5rX0RpYWdyYW0iIHJlZmVyZW5jZXM9Il8tSVFhTUtFTkVlS0xVcVg5SUpxMkdnIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9pVE9Ya2FFT0VlS0xVcVg5SUpxMkdnIiBrZXk9InRvb2x0aXBfdGV4dCIgdmFsdWU9IlJvYm9DYWJFbnZpcm9ubWVudERpYWdyYW0iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9pVE9Ya3FFT0VlS0xVcVg5SUpxMkdnIiBrZXk9ImRpYWdyYW1fbmFtZSIgdmFsdWU9IlJvYm9DYWJFbnZpcm9ubWVudERpYWdyYW0iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9pVE9YazZFT0VlS0xVcVg5SUpxMkdnIiBrZXk9ImlzX2RlZmF1bHRfbmF2aWdhdGlvbiIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbHkzaWxod0FFZUdhNWJIX1JKRnpCUSIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9seTNpbHh3QUVlR2E1YkhfUkpGekJRIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfN2Y2ZDBCd0FFZUdhNWJIX1JKRnpCUSIgdHlwZT0iMzA3MCIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iNyIgZmlsbENvbG9yPSI4MDQ3MDg1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il83ZjdFNEJ3QUVlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzdmN0U0UndBRWVHYTViSF9SSkZ6QlEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfN2Y3RTRod0FFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzdmN0U0eHdBRWVHYTViSF9SSkZ6QlEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il83ZjdyOEJ3QUVlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il83ZjdyOFJ3QUVlR2E1YkhfUkpGekJRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcVZ1Z1VLRU1FZUtMVXFYOUlKcTJHZyIgc291cmNlPSJQYXB5cnVzSHlwZXJMaW5rX0RpYWdyYW0iIHJlZmVyZW5jZXM9Il9BMGsyVUI4ckVlRzRnUENFem5WTk9BIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcVZ1Z1VhRU1FZUtMVXFYOUlKcTJHZyIga2V5PSJ0b29sdGlwX3RleHQiIHZhbHVlPSJPcmdhbml6ZXJTeXN0ZW1EaWFncmFtIi8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3FWdWdVcUVNRWVLTFVxWDlJSnEyR2ciIGtleT0iZGlhZ3JhbV9uYW1lIiB2YWx1ZT0iT3JnYW5pemVyU3lzdGVtRGlhZ3JhbSIvPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9xVnVnVTZFTUVlS0xVcVg5SUpxMkdnIiBrZXk9ImlzX2RlZmF1bHRfbmF2aWdhdGlvbiIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il83ZjdyOGh3QUVlR2E1YkhfUkpGekJRIiB0eXBlPSI1MTI2Ij4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9uZldKRUtFTUVlS0xVcVg5SUpxMkdnIiBzb3VyY2U9IlBhcHlydXNIeXBlckxpbmtfRGlhZ3JhbSIgcmVmZXJlbmNlcz0iX0EwazJVQjhyRWVHNGdQQ0V6blZOT0EiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX25mV0pFYUVNRWVLTFVxWDlJSnEyR2ciIGtleT0idG9vbHRpcF90ZXh0IiB2YWx1ZT0iT3JnYW5pemVyU3lzdGVtRGlhZ3JhbSIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX25mV0pFcUVNRWVLTFVxWDlJSnEyR2ciIGtleT0iZGlhZ3JhbV9uYW1lIiB2YWx1ZT0iT3JnYW5pemVyU3lzdGVtRGlhZ3JhbSIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX25mV0pFNkVNRWVLTFVxWDlJSnEyR2ciIGtleT0iaXNfZGVmYXVsdF9uYXZpZ2F0aW9uIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzdmN3I4eHdBRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfN2Y3cjlCd0FFZUdhNWJIX1JKRnpCUSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfN2Y3cjlSd0FFZUdhNWJIX1JKRnpCUSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYTNqWWtCOUNFZUdldE9MZmtMTndmZyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9hM2pZa2g5Q0VlR2V0T0xma0xOd2ZnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYTNqWWt4OUNFZUdldE9MZmtMTndmZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYTNqX29COUNFZUdldE9MZmtMTndmZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYTNqX29SOUNFZUdldE9MZmtMTndmZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9hM2pfb2g5Q0VlR2V0T0xma0xOd2ZnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2Ezal9veDlDRWVHZXRPTGZrTE53ZmciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9hM2pfcEI5Q0VlR2V0T0xma0xOd2ZnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9hM2pfcFI5Q0VlR2V0T0xma0xOd2ZnIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2Ezal9waDlDRWVHZXRPTGZrTE53ZmciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9hM2pfcHg5Q0VlR2V0T0xma0xOd2ZnIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfdFJNcllCOHNFZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfYTNqWWtSOUNFZUdldE9MZmtMTndmZyIgeD0iLTEwIiB5PSIzMjMiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2Eza21zQjlDRWVHZXRPTGZrTE53ZmciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYTNrbXNoOUNFZUdldE9MZmtMTndmZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2Eza21zeDlDRWVHZXRPTGZrTE53ZmciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2Eza210QjlDRWVHZXRPTGZrTE53ZmciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2Eza210UjlDRWVHZXRPTGZrTE53ZmciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYTNrbXRoOUNFZUdldE9MZmtMTndmZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9hM2xOd0I5Q0VlR2V0T0xma0xOd2ZnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYTNsTndSOUNFZUdldE9MZmtMTndmZyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYTNsTndoOUNFZUdldE9MZmtMTndmZyIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9hM2xOd3g5Q0VlR2V0T0xma0xOd2ZnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYTNsTnhCOUNFZUdldE9MZmtMTndmZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjXzAwY2FZQjhzRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2Eza21zUjlDRWVHZXRPTGZrTE53ZmciIHg9Ii0xMCIgeT0iNTA4Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9YOF9Ub0RVMUVlRzVwTF9mcE4yRGdRIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1g4X1RvalUxRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9YOF9Ub3pVMUVlRzVwTF9mcE4yRGdRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9YOF9UcERVMUVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9YOF82c0RVMUVlRzVwTF9mcE4yRGdRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1g4XzZzVFUxRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWDhfNnNqVTFFZUc1cExfZnBOMkRnUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1g4XzZzelUxRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1g4XzZ0RFUxRWVHNXBMX2ZwTjJEZ1EiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfWDhfNnRUVTFFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1g4XzZ0alUxRWVHNXBMX2ZwTjJEZ1EiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI192UF9yb0RVckVlRzVwTF9mcE4yRGdRIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9YOF9Ub1RVMUVlRzVwTF9mcE4yRGdRIiB4PSItMTAiIHk9IjgxIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9YOUFod0RVMUVlRzVwTF9mcE4yRGdRIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1g5QWh3alUxRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9YOUFod3pVMUVlRzVwTF9mcE4yRGdRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9YOUFoeERVMUVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9YOUFoeFRVMUVlRzVwTF9mcE4yRGdRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1g5QWh4alUxRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWDlBaHh6VTFFZUc1cExfZnBOMkRnUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1g5QWh5RFUxRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1g5QkkwRFUxRWVHNXBMX2ZwTjJEZ1EiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfWDlCSTBUVTFFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1g5QkkwalUxRWVHNXBMX2ZwTjJEZ1EiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19fVXdJc0RVckVlRzVwTF9mcE4yRGdRIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9YOUFod1RVMUVlRzVwTF9mcE4yRGdRIiB4PSItMTAiIHk9IjIwMSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfWDlCSTB6VTFFZUc1cExfZnBOMkRnUSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9YOUJ2NERVMUVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWDlCdjRUVTFFZUc1cExfZnBOMkRnUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfWDlCdjRqVTFFZUc1cExfZnBOMkRnUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWDlCdjR6VTFFZUc1cExfZnBOMkRnUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9YOUJ2NURVMUVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1g5QnY1VFUxRWVHNXBMX2ZwTjJEZ1EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9YOUJ2NWpVMUVlRzVwTF9mcE4yRGdRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9YOUJ2NXpVMUVlRzVwTF9mcE4yRGdRIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1g5QnY2RFUxRWVHNXBMX2ZwTjJEZ1EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9YOUJ2NlRVMUVlRzVwTF9mcE4yRGdRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfX3ZoWklEVXJFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfWDlCSTFEVTFFZUc1cExfZnBOMkRnUSIgeD0iLTEwIiB5PSIxMzEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm9DYWIudW1sI19ic0REd0tsbUVlQ0xrdTRSRnJJN3V3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfN2Y2ZDBSd0FFZUdhNWJIX1JKRnpCUSIgeD0iOTg2IiB5PSIxMzgiIHdpZHRoPSIyNTUiIGhlaWdodD0iNTY4Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0QxWVQ4QndCRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjciIGZpbGxDb2xvcj0iODA0NzA4NSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRDFZVDhod0JFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9EMVlUOHh3QkVlR2E1YkhfUkpGekJRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0QxWVQ5QndCRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9EMVlUOVJ3QkVlR2E1YkhfUkpGekJRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRDFZN0FCd0JFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRDFZN0FSd0JFZUdhNWJIX1JKRnpCUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfRDFZN0Fod0JFZUdhNWJIX1JKRnpCUSIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfRDFZN0F4d0JFZUdhNWJIX1JKRnpCUSIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9EMVk3QkJ3QkVlR2E1YkhfUkpGekJRIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9EMVk3QlJ3QkVlR2E1YkhfUkpGekJRIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9jbm0zY0J3QkVlR2E1YkhfUkpGekJRIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSI3IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2NubmVnQndCRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9jbm5lZ1J3QkVlR2E1YkhfUkpGekJRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9jbm5lZ2h3QkVlR2E1YkhfUkpGekJRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9jbm9Ga0J3QkVlR2E1YkhfUkpGekJRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2Nub0ZrUndCRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfY25vRmtod0JFZUdhNWJIX1JKRnpCUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2Nub0ZreHdCRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2Nub0ZsQndCRWVHYTViSF9SSkZ6QlEiIHg9IjUxIiB5PSI1Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfY25vRmxSd0JFZUdhNWJIX1JKRnpCUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2Nub0ZsaHdCRWVHYTViSF9SSkZ6QlEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19jUGlhRUtsZ0VlQ1lmYm54VlN5WjlnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9jbm0zY1J3QkVlR2E1YkhfUkpGekJRIiB4PSItMTAiIHk9IjQyIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvQ2FiLnVtbCNfQkUtZWdLbG1FZUNMa3U0UkZySTd1dyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0QxWVQ4UndCRWVHYTViSF9SSkZ6QlEiIHg9IjEwMTIiIHk9Ijc3NCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9yaThaRUJ3bkVlR2E1YkhfUkpGekJRIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSI3IiBmaWxsQ29sb3I9IjEwMDExMDQ2IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9yaThaRWh3bkVlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3JpOUFJQnduRWVHYTViSF9SSkZ6QlEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcmk5QUlSd25FZUdhNWJIX1JKRnpCUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3JpOUFJaHduRWVHYTViSF9SSkZ6QlEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9yaTlBSXh3bkVlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9yaTlBSkJ3bkVlR2E1YkhfUkpGekJRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfeGkwT2tLRUxFZUtMVXFYOUlKcTJHZyIgc291cmNlPSJQYXB5cnVzSHlwZXJMaW5rX0RpYWdyYW0iIHJlZmVyZW5jZXM9Il9PNDNKRUI4dUVlRzRnUENFem5WTk9BIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeGkwT2thRUxFZUtMVXFYOUlKcTJHZyIga2V5PSJ0b29sdGlwX3RleHQiIHZhbHVlPSJDaGFsbGVuZ2VyU3BhY2VEaWFncmFtIi8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3hpME9rcUVMRWVLTFVxWDlJSnEyR2ciIGtleT0iZGlhZ3JhbV9uYW1lIiB2YWx1ZT0iQ2hhbGxlbmdlclNwYWNlRGlhZ3JhbSIvPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il94aTBPazZFTEVlS0xVcVg5SUpxMkdnIiBrZXk9ImlzX2RlZmF1bHRfbmF2aWdhdGlvbiIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9yaTlBSlJ3bkVlR2E1YkhfUkpGekJRIiB0eXBlPSI1MTI2Ij4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il91ZjdzWUtFTEVlS0xVcVg5SUpxMkdnIiBzb3VyY2U9IlBhcHlydXNIeXBlckxpbmtfRGlhZ3JhbSIgcmVmZXJlbmNlcz0iX080M0pFQjh1RWVHNGdQQ0V6blZOT0EiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3VmN3NZYUVMRWVLTFVxWDlJSnEyR2ciIGtleT0idG9vbHRpcF90ZXh0IiB2YWx1ZT0iQ2hhbGxlbmdlclNwYWNlRGlhZ3JhbSIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3VmN3NZcUVMRWVLTFVxWDlJSnEyR2ciIGtleT0iZGlhZ3JhbV9uYW1lIiB2YWx1ZT0iQ2hhbGxlbmdlclNwYWNlRGlhZ3JhbSIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3VmN3NZNkVMRWVLTFVxWDlJSnEyR2ciIGtleT0iaXNfZGVmYXVsdF9uYXZpZ2F0aW9uIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3JpOUFKaHduRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2g5bmw0S0VNRWVLTFVxWDlJSnEyR2ciIHNvdXJjZT0iUGFweXJ1c0h5cGVyTGlua19EaWFncmFtIiByZWZlcmVuY2VzPSJfTzQzSkVCOHVFZUc0Z1BDRXpuVk5PQSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfaDlubDRhRU1FZUtMVXFYOUlKcTJHZyIga2V5PSJ0b29sdGlwX3RleHQiIHZhbHVlPSJDaGFsbGVuZ2VyU3BhY2VEaWFncmFtIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfaDlubDRxRU1FZUtMVXFYOUlKcTJHZyIga2V5PSJkaWFncmFtX25hbWUiIHZhbHVlPSJDaGFsbGVuZ2VyU3BhY2VEaWFncmFtIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfaDlubDQ2RU1FZUtMVXFYOUlKcTJHZyIga2V5PSJpc19kZWZhdWx0X25hdmlnYXRpb24iIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3JpOUFKeHduRWVHYTViSF9SSkZ6QlEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3JpOUFLQnduRWVHYTViSF9SSkZ6QlEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3VUWkhjQnduRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjciIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdVRaSGNod25FZUdhNWJIX1JKRnpCUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3VUWkhjeHduRWVHYTViSF9SSkZ6QlEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3VUWkhkQnduRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3VUWnVnQnduRWVHYTViSF9SSkZ6QlEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdVRadWdSd25FZUdhNWJIX1JKRnpCUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il91VFp1Z2h3bkVlR2E1YkhfUkpGekJRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfdVRadWd4d25FZUdhNWJIX1JKRnpCUSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdVRadWhCd25FZUdhNWJIX1JKRnpCUSIgeD0iLTExMCIgeT0iNSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3VUWnVoUnduRWVHYTViSF9SSkZ6QlEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il91VFp1aGh3bkVlR2E1YkhfUkpGekJRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6TE5xa19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfdVRaSGNSd25FZUdhNWJIX1JKRnpCUSIgeD0iNTAzIiB5PSI2NjciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3VUYVZrQnduRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjciIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdVRhVmtod25FZUdhNWJIX1JKRnpCUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3VUYVZreHduRWVHYTViSF9SSkZ6QlEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3VUYVZsQnduRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3VUYVZsUnduRWVHYTViSF9SSkZ6QlEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdVRhOG9Cd25FZUdhNWJIX1JKRnpCUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il91VGE4b1J3bkVlR2E1YkhfUkpGekJRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfdVRhOG9od25FZUdhNWJIX1JKRnpCUSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdVRhOG94d25FZUdhNWJIX1JKRnpCUSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il91VGE4cEJ3bkVlR2E1YkhfUkpGekJRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdVRhOHBSd25FZUdhNWJIX1JKRnpCUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX0xBOHFVS2xrRWVDTGt1NFJGckk3dXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3VUYVZrUnduRWVHYTViSF9SSkZ6QlEiIHg9Ii0xMCIgeT0iMzI3Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il91VGNLeGh3bkVlR2E1YkhfUkpGekJRIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSI3IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3VUY3gwQnduRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il91VGN4MFJ3bkVlR2E1YkhfUkpGekJRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il91VGN4MGh3bkVlR2E1YkhfUkpGekJRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il91VGN4MHh3bkVlR2E1YkhfUkpGekJRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3VUY3gxQnduRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdVRjeDFSd25FZUdhNWJIX1JKRnpCUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3VUY3gxaHduRWVHYTViSF9SSkZ6QlEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il91VGN4MXh3bkVlR2E1YkhfUkpGekJRIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3VUY3gyQnduRWVHYTViSF9SSkZ6QlEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il91VGN4MlJ3bkVlR2E1YkhfUkpGekJRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfSW1GREFLbG5FZUNMa3U0UkZySTd1dyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfdVRjS3h4d25FZUdhNWJIX1JKRnpCUSIgeD0iNTAzIiB5PSIzMjciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX01DSkRnQjlDRWVHZXRPTGZrTE53ZmciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTUNKcWtCOUNFZUdldE9MZmtMTndmZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01DSnFrUjlDRWVHZXRPTGZrTE53ZmciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01DSnFraDlDRWVHZXRPTGZrTE53ZmciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01DSnFreDlDRWVHZXRPTGZrTE53ZmciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTUNKcWxCOUNFZUdldE9MZmtMTndmZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NQ0pxbFI5Q0VlR2V0T0xma0xOd2ZnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTUNKcWxoOUNFZUdldE9MZmtMTndmZyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTUNKcWx4OUNFZUdldE9MZmtMTndmZyIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9NQ0pxbUI5Q0VlR2V0T0xma0xOd2ZnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTUNKcW1SOUNFZUdldE9MZmtMTndmZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX2VnU1VjQjh2RWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX01DSkRnUjlDRWVHZXRPTGZrTE53ZmciIHg9Ii0xMCIgeT0iMTk3Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9NQ0tSb0I5Q0VlR2V0T0xma0xOd2ZnIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01DS1JvaDlDRWVHZXRPTGZrTE53ZmciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NQ0tSb3g5Q0VlR2V0T0xma0xOd2ZnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NQ0tScEI5Q0VlR2V0T0xma0xOd2ZnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NQ0tScFI5Q0VlR2V0T0xma0xOd2ZnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01DS1JwaDlDRWVHZXRPTGZrTE53ZmciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTUNLUnB4OUNFZUdldE9MZmtMTndmZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX01DSzRzQjlDRWVHZXRPTGZrTE53ZmciIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX01DSzRzUjlDRWVHZXRPTGZrTE53ZmciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTUNLNHNoOUNFZUdldE9MZmtMTndmZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX01DSzRzeDlDRWVHZXRPTGZrTE53ZmciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19GZ2J2TUI4d0VlR2V0T0xma0xOd2ZnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9NQ0tSb1I5Q0VlR2V0T0xma0xOd2ZnIiB4PSItMTAiIHk9IjY5Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9NQ0s0dEI5Q0VlR2V0T0xma0xOd2ZnIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01DSzR0aDlDRWVHZXRPTGZrTE53ZmciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NQ0s0dHg5Q0VlR2V0T0xma0xOd2ZnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NQ0s0dUI5Q0VlR2V0T0xma0xOd2ZnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NQ0xmd0I5Q0VlR2V0T0xma0xOd2ZnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01DTGZ3UjlDRWVHZXRPTGZrTE53ZmciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTUNMZndoOUNFZUdldE9MZmtMTndmZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX01DTGZ3eDlDRWVHZXRPTGZrTE53ZmciIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX01DTGZ4QjlDRWVHZXRPTGZrTE53ZmciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTUNMZnhSOUNFZUdldE9MZmtMTndmZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX01DTGZ4aDlDRWVHZXRPTGZrTE53ZmciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19Oa0VPY0I4d0VlR2V0T0xma0xOd2ZnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9NQ0s0dFI5Q0VlR2V0T0xma0xOd2ZnIiB4PSItMTAiIHk9IjI5NyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfTUNMZnh4OUNFZUdldE9MZmtMTndmZyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NQ01HMEI5Q0VlR2V0T0xma0xOd2ZnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTUNNRzBSOUNFZUdldE9MZmtMTndmZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTUNNRzBoOUNFZUdldE9MZmtMTndmZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTUNNRzB4OUNFZUdldE9MZmtMTndmZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NQ01HMUI5Q0VlR2V0T0xma0xOd2ZnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01DTUcxUjlDRWVHZXRPTGZrTE53ZmciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9NQ01HMWg5Q0VlR2V0T0xma0xOd2ZnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9NQ01HMXg5Q0VlR2V0T0xma0xOd2ZnIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX01DTUcyQjlDRWVHZXRPTGZrTE53ZmciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9NQ01HMlI5Q0VlR2V0T0xma0xOd2ZnIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfV1pqb2NCOHdFZUdldE9MZmtMTndmZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTUNMZnlCOUNFZUdldE9MZmtMTndmZyIgeD0iLTExIiB5PSI0MDYiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfTUNNRzJoOUNFZUdldE9MZmtMTndmZyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NQ010NEI5Q0VlR2V0T0xma0xOd2ZnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTUNNdDRSOUNFZUdldE9MZmtMTndmZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTUNNdDRoOUNFZUdldE9MZmtMTndmZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTUNNdDR4OUNFZUdldE9MZmtMTndmZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NQ010NUI5Q0VlR2V0T0xma0xOd2ZnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01DTXQ1UjlDRWVHZXRPTGZrTE53ZmciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9NQ010NWg5Q0VlR2V0T0xma0xOd2ZnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9NQ010NXg5Q0VlR2V0T0xma0xOd2ZnIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX01DTXQ2QjlDRWVHZXRPTGZrTE53ZmciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9NQ010NlI5Q0VlR2V0T0xma0xOd2ZnIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfeDlvQmNCOHdFZUdldE9MZmtMTndmZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTUNNRzJ4OUNFZUdldE9MZmtMTndmZyIgeD0iLTEwIiB5PSI1NTIiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX01DTlU4QjlDRWVHZXRPTGZrTE53ZmciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTUNOVThoOUNFZUdldE9MZmtMTndmZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01DTlU4eDlDRWVHZXRPTGZrTE53ZmciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01DTlU5QjlDRWVHZXRPTGZrTE53ZmciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01DTlU5UjlDRWVHZXRPTGZrTE53ZmciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTUNOVTloOUNFZUdldE9MZmtMTndmZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NQ05VOXg5Q0VlR2V0T0xma0xOd2ZnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTUNOVS1COUNFZUdldE9MZmtMTndmZyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTUNOVS1SOUNFZUdldE9MZmtMTndmZyIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9NQ05VLWg5Q0VlR2V0T0xma0xOd2ZnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTUNOVS14OUNFZUdldE9MZmtMTndmZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX1dDNVRrQjgtRWVHZXRPTGZrTE53ZmciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX01DTlU4UjlDRWVHZXRPTGZrTE53ZmciIHg9Ii0xMCIgeT0iNjUyIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9NQ044QUI5Q0VlR2V0T0xma0xOd2ZnIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01DTjhBaDlDRWVHZXRPTGZrTE53ZmciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NQ044QXg5Q0VlR2V0T0xma0xOd2ZnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NQ044QkI5Q0VlR2V0T0xma0xOd2ZnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NQ044QlI5Q0VlR2V0T0xma0xOd2ZnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01DTjhCaDlDRWVHZXRPTGZrTE53ZmciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTUNPakVCOUNFZUdldE9MZmtMTndmZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX01DT2pFUjlDRWVHZXRPTGZrTE53ZmciIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX01DT2pFaDlDRWVHZXRPTGZrTE53ZmciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTUNPakV4OUNFZUdldE9MZmtMTndmZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX01DT2pGQjlDRWVHZXRPTGZrTE53ZmciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19hOEFYa0I4LUVlR2V0T0xma0xOd2ZnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9NQ044QVI5Q0VlR2V0T0xma0xOd2ZnIiB4PSItMTAiIHk9Ijc3NyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfNmZTZmdEVTBFZUc1cExfZnBOMkRnUSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il82ZlRHa0RVMEVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNmZUR2tUVTBFZUc1cExfZnBOMkRnUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNmZUR2tqVTBFZUc1cExfZnBOMkRnUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNmZUR2t6VTBFZUc1cExfZnBOMkRnUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il82ZlRHbERVMEVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZmVHRvRFUwRWVHNXBMX2ZwTjJEZ1EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il82ZlR0b1RVMEVlRzVwTF9mcE4yRGdRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il82ZlR0b2pVMEVlRzVwTF9mcE4yRGdRIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzZmVHRvelUwRWVHNXBMX2ZwTjJEZ1EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il82ZlR0cERVMEVlRzVwTF9mcE4yRGdRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfcVByU3dEVXpFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfNmZTZmdUVTBFZUc1cExfZnBOMkRnUSIgeD0iLTEwIiB5PSI0NTUiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzZmVHRwVFUwRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNmZVVXNEVTBFZUc1cExfZnBOMkRnUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZmVVVzVFUwRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzZmVVVzalUwRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZmVVVzelUwRWVHNXBMX2ZwTjJEZ1EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNmZVVXREVTBFZUc1cExfZnBOMkRnUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il82ZlVVdFRVMEVlRzVwTF9mcE4yRGdRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfNmZVVXRqVTBFZUc1cExfZnBOMkRnUSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfNmZVVXR6VTBFZUc1cExfZnBOMkRnUSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il82ZlVVdURVMEVlRzVwTF9mcE4yRGdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfNmZVVXVUVTBFZUc1cExfZnBOMkRnUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjXzAtZVh3RFV6RWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzZmVHRwalUwRWVHNXBMX2ZwTjJEZ1EiIHg9Ii0xMCIgeT0iMSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfNmZVN3dEVTBFZUc1cExfZnBOMkRnUSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il82ZlU3d2pVMEVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNmZVN3d6VTBFZUc1cExfZnBOMkRnUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNmZVN3hEVTBFZUc1cExfZnBOMkRnUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNmZVN3hUVTBFZUc1cExfZnBOMkRnUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il82ZlU3eGpVMEVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZmVTd4elUwRWVHNXBMX2ZwTjJEZ1EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il82ZlU3eURVMEVlRzVwTF9mcE4yRGdRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il82ZlU3eVRVMEVlRzVwTF9mcE4yRGdRIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzZmVmkwRFUwRWVHNXBMX2ZwTjJEZ1EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il82ZlZpMFRVMEVlRzVwTF9mcE4yRGdRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfMml6UlFEVXpFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfNmZVN3dUVTBFZUc1cExfZnBOMkRnUSIgeD0iLTEwIiB5PSIyNSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfNmZWaTBqVTBFZUc1cExfZnBOMkRnUSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il82ZlZpMURVMEVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNmZXSjREVTBFZUc1cExfZnBOMkRnUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNmZXSjRUVTBFZUc1cExfZnBOMkRnUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNmZXSjRqVTBFZUc1cExfZnBOMkRnUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il82ZldKNHpVMEVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZmV0o1RFUwRWVHNXBMX2ZwTjJEZ1EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il82ZldKNVRVMEVlRzVwTF9mcE4yRGdRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il82ZldKNWpVMEVlRzVwTF9mcE4yRGdRIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzZmV0o1elUwRWVHNXBMX2ZwTjJEZ1EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il82ZldKNkRVMEVlRzVwTF9mcE4yRGdRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfM3dLY1FEVXpFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfNmZWaTB6VTBFZUc1cExfZnBOMkRnUSIgeD0iLTEwIiB5PSI0NSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib0NhYi51bWwjX2tiYmowQnduRWVHYTViSF9SSkZ6QlEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9yaThaRVJ3bkVlR2E1YkhfUkpGekJRIiB4PSIzNTUiIHk9IjEzNCIgd2lkdGg9IjUxMyIgaGVpZ2h0PSI4MjgiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfN1FBQ01COGtFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iMzA3MCIgZm9udE5hbWU9IlVidW50dSIgZmlsbENvbG9yPSIxMzQyMDQ0MyIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfN1FBcFFCOGtFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il83UUFwUVI4a0VlRzRnUENFem5WTk9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzdRQXBRaDhrRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il83UUFwUXg4a0VlRzRnUENFem5WTk9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfN1FCUVVCOGtFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfN1FCUVVSOGtFZUc0Z1BDRXpuVk5PQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfN1FCUVVoOGtFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfN1FCUVV4OGtFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il83UUJRVkI4a0VlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il83UUJRVlI4a0VlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9UU1NmRURVMUVlRzVwTF9mcE4yRGdRIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1RTVEdJRFUxRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9UU1RHSVRVMUVlRzVwTF9mcE4yRGdRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9UU1RHSWpVMUVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9UU1RHSXpVMUVlRzVwTF9mcE4yRGdRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1RTVEdKRFUxRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVFNUR0pUVTFFZUc1cExfZnBOMkRnUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1RTVEdKalUxRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1RTVEdKelUxRWVHNXBMX2ZwTjJEZ1EiIHg9Ii0xNDQiIHk9IjkiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9UU1RHS0RVMUVlRzVwTF9mcE4yRGdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVFNUR0tUVTFFZUc1cExfZnBOMkRnUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX3pFZl9ZRFVvRWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1RTU2ZFVFUxRWVHNXBMX2ZwTjJEZ1EiIHg9IjE4NyIgeT0iMjAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1RTVHRNRFUxRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVFNUdE1qVTFFZUc1cExfZnBOMkRnUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1RTVHRNelUxRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1RTVVVRRFUxRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1RTVVVRVFUxRWVHNXBMX2ZwTjJEZ1EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVFNVVVFqVTFFZUc1cExfZnBOMkRnUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9UU1VVUXpVMUVlRzVwTF9mcE4yRGdRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfVFNVVVJEVTFFZUc1cExfZnBOMkRnUSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVFNVVVJUVTFFZUc1cExfZnBOMkRnUSIgeD0iLTEyOSIgeT0iNCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1RTVVVSalUxRWVHNXBMX2ZwTjJEZ1EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9UU1VVUnpVMUVlRzVwTF9mcE4yRGdRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfMmhRYUlEVW9FZUc1cExfZnBOMkRnUSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfVFNUdE1UVTFFZUc1cExfZnBOMkRnUSIgeD0iMTg3IiB5PSI2MCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib0NhYi51bWwjXzdQV2g4QjhrRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il83UUFDTVI4a0VlRzRnUENFem5WTk9BIiB4PSIzMiIgeT0iNTIxIiB3aWR0aD0iMTk3IiBoZWlnaHQ9IjEwMSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9OSjJZb0I4bEVlRzRnUENFem5WTk9BIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iVWJ1bnR1IiBmaWxsQ29sb3I9IjEzNDIwNDQzIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9OSjJZb2g4bEVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX05KMllveDhsRWVHNGdQQ0V6blZOT0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTkoyWXBCOGxFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX05KMllwUjhsRWVHNGdQQ0V6blZOT0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9OSjJZcGg4bEVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9OSjJZcHg4bEVlRzRnUENFem5WTk9BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9OSjJZcUI4bEVlRzRnUENFem5WTk9BIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9OSjJZcVI4bEVlRzRnUENFem5WTk9BIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX05KMllxaDhsRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX05KMllxeDhsRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1ItOXRjQjhsRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUi05dGNoOGxFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1ItOXRjeDhsRWVHNGdQQ0V6blZOT0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1ItOXRkQjhsRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1ItLVVnQjhsRWVHNGdQQ0V6blZOT0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUi0tVWdSOGxFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9SLS1VZ2g4bEVlRzRnUENFem5WTk9BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfUi0tVWd4OGxFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfUi0tVWhCOGxFZUc0Z1BDRXpuVk5PQSIgeD0iLTExMiIgeT0iNSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1ItLVVoUjhsRWVHNGdQQ0V6blZOT0EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9SLS1VaGg4bEVlRzRnUENFem5WTk9BIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfbHBxWXNLbEFFZUNZYVlpMGh6cTVrZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfUi05dGNSOGxFZUc0Z1BDRXpuVk5PQSIgeD0iMTg2IiB5PSI1NCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib0NhYi51bWwjX05KZFhFQjhsRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9OSjJZb1I4bEVlRzRnUENFem5WTk9BIiB4PSIzMyIgeT0iNjM2IiB3aWR0aD0iMTk2IiBoZWlnaHQ9Ijk2Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX09FbGlrQjhsRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJVYnVudHUiIGZpbGxDb2xvcj0iMTM0MjA0NDMiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX09FbGlraDhsRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT0VsaWt4OGxFZUc0Z1BDRXpuVk5PQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9PRW1Kb0I4bEVlRzRnUENFem5WTk9BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT0VtSm9SOGxFZUc0Z1BDRXpuVk5PQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX09FbUpvaDhsRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX09FbUpveDhsRWVHNGdQQ0V6blZOT0EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX09FbUpwQjhsRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX09FbUpwUjhsRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfT0VtSnBoOGxFZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfT0VtSnB4OGxFZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfVEdiRXdCOGxFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9UR2JyMEI4bEVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVEdicjBSOGxFZUc0Z1BDRXpuVk5PQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVEdicjBoOGxFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVEdicjB4OGxFZUc0Z1BDRXpuVk5PQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9UR2NTNEI4bEVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1RHY1M0UjhsRWVHNGdQQ0V6blZOT0EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9UR2NTNGg4bEVlRzRnUENFem5WTk9BIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9UR2NTNHg4bEVlRzRnUENFem5WTk9BIiB4PSItMTE0IiB5PSI1Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfVEdjUzVCOGxFZUc0Z1BDRXpuVk5PQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1RHY1M1UjhsRWVHNGdQQ0V6blZOT0EiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19scHFZc0tsQUVlQ1lhWWkwaHpxNWtnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9UR2JFd1I4bEVlRzRnUENFem5WTk9BIiB4PSIxODUiIHk9IjM4Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvQ2FiLnVtbCNfT0VOdklCOGxFZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX09FbGlrUjhsRWVHNGdQQ0V6blZOT0EiIHg9IjM0IiB5PSI3NDgiIHdpZHRoPSIxOTUiIGhlaWdodD0iOTkiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfOTR6YkFCOGxFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iMzA3MCIgZm9udE5hbWU9IlVidW50dSIgZmlsbENvbG9yPSIxMzQyMDQ0MyIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOTR6YkFoOGxFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il85NHpiQXg4bEVlRzRnUENFem5WTk9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzk0emJCQjhsRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il85NHpiQlI4bEVlRzRnUENFem5WTk9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOTR6YkJoOGxFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOTR6YkJ4OGxFZUc0Z1BDRXpuVk5PQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0hqYzdZQjhtRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSTBLOFlCOG1FZUc0Z1BDRXpuVk5PQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0kwSzhZUjhtRWVHNGdQQ0V6blZOT0EiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSTBLOFloOG1FZUc0Z1BDRXpuVk5PQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9JMExqY0I4bUVlRzRnUENFem5WTk9BIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0kwTGpjUjhtRWVHNGdQQ0V6blZOT0EiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzk0MENFQjhsRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzk0MENFUjhsRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfOTQwQ0VoOGxFZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfOTQwQ0V4OGxFZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfQm1Ra01COG1FZUc0Z1BDRXpuVk5PQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9CbVJMUUI4bUVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQm1STFFSOG1FZUc0Z1BDRXpuVk5PQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQm1STFFoOG1FZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQm1STFF4OG1FZUc0Z1BDRXpuVk5PQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9CbVJMUkI4bUVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0JtUkxSUjhtRWVHNGdQQ0V6blZOT0EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9CbVJMUmg4bUVlRzRnUENFem5WTk9BIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9CbVJMUng4bUVlRzRnUENFem5WTk9BIiB4PSItMTA2Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfQm1STFNCOG1FZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQm1STFNSOG1FZUc0Z1BDRXpuVk5PQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX2xwcVlzS2xBRWVDWWFZaTBoenE1a2ciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0JtUWtNUjhtRWVHNGdQQ0V6blZOT0EiIHg9IjE4NSIgeT0iNDUiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm9DYWIudW1sI185NGNPb0I4bEVlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfOTR6YkFSOGxFZUc0Z1BDRXpuVk5PQSIgeD0iMzQiIHk9Ijg2NSIgd2lkdGg9IjE5NSIgaGVpZ2h0PSI5NyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9LZFp2d0I5QkVlR2V0T0xma0xOd2ZnIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iVWJ1bnR1IiBmaWxsQ29sb3I9IjEzNDIwNDQzIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9LZFp2d2g5QkVlR2V0T0xma0xOd2ZnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0tkWnZ3eDlCRWVHZXRPTGZrTE53ZmciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfS2RhVzBCOUJFZUdldE9MZmtMTndmZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0tkYVcwUjlCRWVHZXRPTGZrTE53ZmciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9LZGFXMGg5QkVlR2V0T0xma0xOd2ZnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LZGFXMHg5QkVlR2V0T0xma0xOd2ZnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9LZGFXMUI5QkVlR2V0T0xma0xOd2ZnIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9LZGFXMVI5QkVlR2V0T0xma0xOd2ZnIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0tkYVcxaDlCRWVHZXRPTGZrTE53ZmciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0tkYVcxeDlCRWVHZXRPTGZrTE53ZmciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX00zRHV3QjlCRWVHZXRPTGZrTE53ZmciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTNEdXdoOUJFZUdldE9MZmtMTndmZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX00zRHV3eDlCRWVHZXRPTGZrTE53ZmciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX00zRVYwQjlCRWVHZXRPTGZrTE53ZmciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX00zRVYwUjlCRWVHZXRPTGZrTE53ZmciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTNFVjBoOUJFZUdldE9MZmtMTndmZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NM0VWMHg5QkVlR2V0T0xma0xOd2ZnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTTNFVjFCOUJFZUdldE9MZmtMTndmZyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTTNFVjFSOUJFZUdldE9MZmtMTndmZyIgeD0iLTExNiIgeT0iNCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX00zRVYxaDlCRWVHZXRPTGZrTE53ZmciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9NM0VWMXg5QkVlR2V0T0xma0xOd2ZnIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6SmZha19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTTNEdXdSOUJFZUdldE9MZmtMTndmZyIgeD0iMTg3IiB5PSIzMyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfTTNFODRCOUJFZUdldE9MZmtMTndmZyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NM0U4NGg5QkVlR2V0T0xma0xOd2ZnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTTNFODR4OUJFZUdldE9MZmtMTndmZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTNFODVCOUJFZUdldE9MZmtMTndmZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTTNFODVSOUJFZUdldE9MZmtMTndmZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NM0U4NWg5QkVlR2V0T0xma0xOd2ZnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX00zRTg1eDlCRWVHZXRPTGZrTE53ZmciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9NM0U4NkI5QkVlR2V0T0xma0xOd2ZnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9NM0ZqOEI5QkVlR2V0T0xma0xOd2ZnIiB4PSItMTgxIiB5PSI0Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTTNGajhSOUJFZUdldE9MZmtMTndmZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX00zRmo4aDlCRWVHZXRPTGZrTE53ZmciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI180eEY3a0tsTEVlQ1lmYm54VlN5WjlnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9NM0U4NFI5QkVlR2V0T0xma0xOd2ZnIiB4PSIxODciIHk9IjcwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvQ2FiLnVtbCNfS2REeGdCOUJFZUdldE9MZmtMTndmZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0tkWnZ3UjlCRWVHZXRPTGZrTE53ZmciIHg9IjMyIiB5PSIzOTgiIHdpZHRoPSIxOTciIGhlaWdodD0iMTA5Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1lMbWxJQjlCRWVHZXRPTGZrTE53ZmciIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJVYnVudHUiIGZpbGxDb2xvcj0iMTM0MjA0NDMiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1lMbk1NQjlCRWVHZXRPTGZrTE53ZmciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWUxuTU1SOUJFZUdldE9MZmtMTndmZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9ZTG5NTWg5QkVlR2V0T0xma0xOd2ZnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWUxuTU14OUJFZUdldE9MZmtMTndmZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1lMbk1OQjlCRWVHZXRPTGZrTE53ZmciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1lMbk1OUjlCRWVHZXRPTGZrTE53ZmciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1lMbk1OaDlCRWVHZXRPTGZrTE53ZmciIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1lMbk1OeDlCRWVHZXRPTGZrTE53ZmciIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfWUxuTU9COUJFZUdldE9MZmtMTndmZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfWUxuTU9SOUJFZUdldE9MZmtMTndmZyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZFFIbjRCOUJFZUdldE9MZmtMTndmZyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9kUUhuNGg5QkVlR2V0T0xma0xOd2ZnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZFFIbjR4OUJFZUdldE9MZmtMTndmZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZFFJTzhCOUJFZUdldE9MZmtMTndmZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZFFJTzhSOUJFZUdldE9MZmtMTndmZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9kUUlPOGg5QkVlR2V0T0xma0xOd2ZnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2RRSU84eDlCRWVHZXRPTGZrTE53ZmciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9kUUlPOUI5QkVlR2V0T0xma0xOd2ZnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9kUUlPOVI5QkVlR2V0T0xma0xOd2ZnIiB4PSItMjE5IiB5PSItMTEiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9kUUlPOWg5QkVlR2V0T0xma0xOd2ZnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZFFJTzl4OUJFZUdldE9MZmtMTndmZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjXzljT3NZQjhvRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2RRSG40UjlCRWVHZXRPTGZrTE53ZmciIHg9IjE4NyIgeT0iNDYiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm9DYWIudW1sI19ZTFRESUI5QkVlR2V0T0xma0xOd2ZnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfWUxtbElSOUJFZUdldE9MZmtMTndmZyIgeD0iMzIiIHk9IjI4MyIgd2lkdGg9IjE5NyIgaGVpZ2h0PSI5OSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9BN1JBUUI5REVlR2V0T0xma0xOd2ZnIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iVWJ1bnR1IiBmaWxsQ29sb3I9IjEzNDIwNDQzIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9BN1JuVUI5REVlR2V0T0xma0xOd2ZnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0E3Um5VUjlERWVHZXRPTGZrTE53ZmciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQTdSblVoOURFZUdldE9MZmtMTndmZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0E3Um5VeDlERWVHZXRPTGZrTE53ZmciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9BN1JuVkI5REVlR2V0T0xma0xOd2ZnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9BN1JuVlI5REVlR2V0T0xma0xOd2ZnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9BN1JuVmg5REVlR2V0T0xma0xOd2ZnIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9BN1JuVng5REVlR2V0T0xma0xOd2ZnIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0E3Um5XQjlERWVHZXRPTGZrTE53ZmciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0E3Um5XUjlERWVHZXRPTGZrTE53ZmciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0VPRmI0QjlERWVHZXRPTGZrTE53ZmciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRU9GYjRoOURFZUdldE9MZmtMTndmZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0VPR0M4QjlERWVHZXRPTGZrTE53ZmciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0VPR0M4UjlERWVHZXRPTGZrTE53ZmciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0VPR0M4aDlERWVHZXRPTGZrTE53ZmciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRU9HQzh4OURFZUdldE9MZmtMTndmZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9FT0dDOUI5REVlR2V0T0xma0xOd2ZnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfRU9HQzlSOURFZUdldE9MZmtMTndmZyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfRU9HQzloOURFZUdldE9MZmtMTndmZyIgeD0iLTE1OSIgeT0iNSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0VPR0M5eDlERWVHZXRPTGZrTE53ZmciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9FT0dDLUI5REVlR2V0T0xma0xOd2ZnIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6Slk2a19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfRU9GYjRSOURFZUdldE9MZmtMTndmZyIgeD0iMTg1IiB5PSIzMCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib0NhYi51bWwjX0E2OFFJQjlERWVHZXRPTGZrTE53ZmciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9BN1JBUVI5REVlR2V0T0xma0xOd2ZnIiB4PSIzMiIgeT0iMTYzIiB3aWR0aD0iMTk1Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0doWVlZRFUxRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJVYnVudHUiIGZpbGxDb2xvcj0iMTM0MjA0NDMiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0doWV9jRFUxRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR2hZX2NUVTFFZUc1cExfZnBOMkRnUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HaFlfY2pVMUVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR2hZX2N6VTFFZUc1cExfZnBOMkRnUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0doWV9kRFUxRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0doWV9kVFUxRWVHNXBMX2ZwTjJEZ1EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0doWV9kalUxRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0doWV9kelUxRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfR2hZX2VEVTFFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR2hZX2VUVTFFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfTXJpMGtEVTFFZUc1cExfZnBOMkRnUSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Ncmpib0RVMUVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTXJqYm9UVTFFZUc1cExfZnBOMkRnUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTXJqYm9qVTFFZUc1cExfZnBOMkRnUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTXJqYm96VTFFZUc1cExfZnBOMkRnUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NcmpicERVMUVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01yamJwVFUxRWVHNXBMX2ZwTjJEZ1EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9NcmpicGpVMUVlRzVwTF9mcE4yRGdRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9NcmpicHpVMUVlRzVwTF9mcE4yRGdRIiB4PSItMTQxIiB5PSI5Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTXJqYnFEVTFFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX01yamJxVFUxRWVHNXBMX2ZwTjJEZ1EiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19mZHpKY0trX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9Ncmkwa1RVMUVlRzVwTF9mcE4yRGdRIiB4PSIxNzYiIHk9IjE1Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9NcmtDc0RVMUVlRzVwTF9mcE4yRGdRIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01ya0NzalUxRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NcmtDc3pVMUVlRzVwTF9mcE4yRGdRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Ncmtwd0RVMUVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9Ncmtwd1RVMUVlRzVwTF9mcE4yRGdRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01ya3B3alUxRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTXJrcHd6VTFFZUc1cExfZnBOMkRnUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX01ya3B4RFUxRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX01ya3B4VFUxRWVHNXBMX2ZwTjJEZ1EiIHg9Ii0xNjEiIHk9IjQiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9NcmtweGpVMUVlRzVwTF9mcE4yRGdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTXJrcHh6VTFFZUc1cExfZnBOMkRnUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX1VNYXNjS2xGRWVDZ2RNaHdFQnVXSWciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX01ya0NzVFUxRWVHNXBMX2ZwTjJEZ1EiIHg9IjE3NiIgeT0iNTAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX01ya3B5RFUxRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTXJsUTBEVTFFZUc1cExfZnBOMkRnUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01ybFEwVFUxRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01ybFEwalUxRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01ybFEwelUxRWVHNXBMX2ZwTjJEZ1EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTXJsUTFEVTFFZUc1cExfZnBOMkRnUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NcmxRMVRVMUVlRzVwTF9mcE4yRGdRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTXJsUTFqVTFFZUc1cExfZnBOMkRnUSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTXJsUTF6VTFFZUc1cExfZnBOMkRnUSIgeD0iLTEzNiIgeT0iNCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX01ybDM0RFUxRWVHNXBMX2ZwTjJEZ1EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9NcmwzNFRVMUVlRzVwTF9mcE4yRGdRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfbkNqRThLbEZFZUNuaWFNazVRVUJSZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTXJrcHlUVTFFZUc1cExfZnBOMkRnUSIgeD0iMTc2IiB5PSI4NSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib0NhYi51bWwjX2ZkekkxNmtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HaFlZWVRVMUVlRzVwTF9mcE4yRGdRIiB4PSIzNSIgeT0iMTAiIHdpZHRoPSIxODYiIGhlaWdodD0iMTIwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2x5M2ltQndBRWVHYTViSF9SSkZ6QlEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbHkzaW1Sd0FFZUdhNWJIX1JKRnpCUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlJvYm9DYWIudW1sI19mZHpJMHFrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9seTI3Z1J3QUVlR2E1YkhfUkpGekJRIiB4PSItMTI2MCIgeT0iLTY4MCIgd2lkdGg9IjE0MTQiIGhlaWdodD0iMTA2MyIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9PQ1ZGa1J3QUVlR2E1YkhfUkpGekJRIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfWnpJdFFIN0xFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iUm9ib0NhYi51bWwjX2ZkekkwYWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0FQTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlN0cmluZ1ZhbHVlU3R5bGUiIHhtaTppZD0iX1p6SXRRWDdMRWVTRnlOYm5MWURDa3ciIG5hbWU9ImRpYWdyYW1fY29tcGF0aWJpbGl0eV92ZXJzaW9uIiBzdHJpbmdWYWx1ZT0iMS4wLjAiLz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6STBha19FZUNYcWNSVi0xOGY2USIvPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rOU15NEI5Q0VlR2V0T0xma0xOd2ZnIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9jbm0zY0J3QkVlR2E1YkhfUkpGekJRIiB0YXJnZXQ9Il91VFpIY0J3bkVlR2E1YkhfUkpGekJRIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazlOWjhCOUNFZUdldE9MZmtMTndmZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2s5Tlo4UjlDRWVHZXRPTGZrTE53ZmciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazlOWjhoOUNFZUdldE9MZmtMTndmZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2s5Tlo4eDlDRWVHZXRPTGZrTE53ZmciIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2s5Tlo5QjlDRWVHZXRPTGZrTE53ZmciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rOU5aOVI5Q0VlR2V0T0xma0xOd2ZnIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2s5Tlo5aDlDRWVHZXRPTGZrTE53ZmciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rOU5aOXg5Q0VlR2V0T0xma0xOd2ZnIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazlNeTRSOUNFZUdldE9MZmtMTndmZyIgZm9udE5hbWU9IlVidW50dSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IlJvYm9DYWIudW1sI19rODJOa0I5Q0VlR2V0T0xma0xOd2ZnIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rOU15NGg5Q0VlR2V0T0xma0xOd2ZnIiBwb2ludHM9IlstMTAsIDAsIDEzNCwgMF0kWy0xMzQsIDAsIDEwLCAwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX215WGt3QjlDRWVHZXRPTGZrTE53ZmciIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2NubTNjQndCRWVHYTViSF9SSkZ6QlEiIHRhcmdldD0iX2Eza21zQjlDRWVHZXRPTGZrTE53ZmciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9teVlMMEI5Q0VlR2V0T0xma0xOd2ZnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfbXlZTDBSOUNFZUdldE9MZmtMTndmZyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9teVlMMGg5Q0VlR2V0T0xma0xOd2ZnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfbXlZTDB4OUNFZUdldE9MZmtMTndmZyIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbXlZTDFCOUNFZUdldE9MZmtMTndmZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX215WUwxUjlDRWVHZXRPTGZrTE53ZmciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbXlZTDFoOUNFZUdldE9MZmtMTndmZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX215WUwxeDlDRWVHZXRPTGZrTE53ZmciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9teVhrd1I5Q0VlR2V0T0xma0xOd2ZnIiBmb250TmFtZT0iVWJ1bnR1Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iUm9ib0NhYi51bWwjX215RGJzQjlDRWVHZXRPTGZrTE53ZmciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX215WGt3aDlDRWVHZXRPTGZrTE53ZmciIHBvaW50cz0iWy0xMCwgMCwgMTYsIDE3MF0kWy03OSwgMCwgLTUzLCAxNzBdJFstNzksIC0xNzAsIC01MywgMF0kWy0zNiwgLTE3MCwgLTEwLCAwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX3FRNWhJQjlDRWVHZXRPTGZrTE53ZmciIHR5cGU9IjQwMTMiIHNvdXJjZT0iX3VUY0t4aHduRWVHYTViSF9SSkZ6QlEiIHRhcmdldD0iX2EzallrQjlDRWVHZXRPTGZrTE53ZmciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9xUTVoSXg5Q0VlR2V0T0xma0xOd2ZnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfcVE1aEpCOUNFZUdldE9MZmtMTndmZyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9xUTVoSlI5Q0VlR2V0T0xma0xOd2ZnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfcVE1aEpoOUNFZUdldE9MZmtMTndmZyIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfcVE1aEp4OUNFZUdldE9MZmtMTndmZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3FRNklNQjlDRWVHZXRPTGZrTE53ZmciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfcVE2SU1SOUNFZUdldE9MZmtMTndmZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3FRNklNaDlDRWVHZXRPTGZrTE53ZmciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9xUTVoSVI5Q0VlR2V0T0xma0xOd2ZnIiBmb250TmFtZT0iVWJ1bnR1Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iUm9ib0NhYi51bWwjX3FRbW1NQjlDRWVHZXRPTGZrTE53ZmciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX3FRNWhJaDlDRWVHZXRPTGZrTE53ZmciIHBvaW50cz0iWzgsIDIsIC04MSwgLTI4XSRbODcsIDIyLCAtMiwgLThdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfMU9YN1VCOUNFZUdldE9MZmtMTndmZyIgdHlwZT0iNDAxMyIgc291cmNlPSJfUi05dGNCOGxFZUc0Z1BDRXpuVk5PQSIgdGFyZ2V0PSJfTUNNRzJoOUNFZUdldE9MZmtMTndmZyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzFPWWlZQjlDRWVHZXRPTGZrTE53ZmciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8xT1lpWVI5Q0VlR2V0T0xma0xOd2ZnIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzFPWWlZaDlDRWVHZXRPTGZrTE53ZmciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8xT1lpWXg5Q0VlR2V0T0xma0xOd2ZnIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8xT1lpWkI5Q0VlR2V0T0xma0xOd2ZnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMU9ZaVpSOUNFZUdldE9MZmtMTndmZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8xT1lpWmg5Q0VlR2V0T0xma0xOd2ZnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMU9ZaVp4OUNFZUdldE9MZmtMTndmZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iXzFPWDdVUjlDRWVHZXRPTGZrTE53ZmciIGZvbnROYW1lPSJVYnVudHUiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJSb2JvQ2FiLnVtbCNfMU9ETE1COUNFZUdldE9MZmtMTndmZyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfMU9YN1VoOUNFZUdldE9MZmtMTndmZyIgcG9pbnRzPSJbNywgLTcsIC04NCwgODVdJFs5NCwgLTk5LCAzLCAtN10iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9RckxPc0I5REVlR2V0T0xma0xOd2ZnIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9FT0ZiNEI5REVlR2V0T0xma0xOd2ZnIiB0YXJnZXQ9Il9NQ0tSb0I5Q0VlR2V0T0xma0xOd2ZnIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfUXJMMXdCOURFZUdldE9MZmtMTndmZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1FyTDF3UjlERWVHZXRPTGZrTE53ZmciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfUXJMMXdoOURFZUdldE9MZmtMTndmZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1FyTDF3eDlERWVHZXRPTGZrTE53ZmciIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1FyTDF4QjlERWVHZXRPTGZrTE53ZmciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9RckwxeFI5REVlR2V0T0xma0xOd2ZnIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1FyTDF4aDlERWVHZXRPTGZrTE53ZmciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9RckwxeHg5REVlR2V0T0xma0xOd2ZnIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfUXJMT3NSOURFZUdldE9MZmtMTndmZyIgZm9udE5hbWU9IlVidW50dSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IlJvYm9DYWIudW1sI19RcTNzc0I5REVlR2V0T0xma0xOd2ZnIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9RckxPc2g5REVlR2V0T0xma0xOd2ZnIiBwb2ludHM9Ils3LCAtMywgLTEzNCwgNTldJFsxNDEsIC02OSwgMCwgLTddIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfUnB6YUlCOURFZUdldE9MZmtMTndmZyIgdHlwZT0iNDAxMyIgc291cmNlPSJfZFFIbjRCOUJFZUdldE9MZmtMTndmZyIgdGFyZ2V0PSJfTUNKRGdCOUNFZUdldE9MZmtMTndmZyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1JwemFJeDlERWVHZXRPTGZrTE53ZmciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9ScHphSkI5REVlR2V0T0xma0xOd2ZnIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1JwemFKUjlERWVHZXRPTGZrTE53ZmciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9ScHphSmg5REVlR2V0T0xma0xOd2ZnIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9ScHphSng5REVlR2V0T0xma0xOd2ZnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfUnB6YUtCOURFZUdldE9MZmtMTndmZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9ScHphS1I5REVlR2V0T0xma0xOd2ZnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfUnB6YUtoOURFZUdldE9MZmtMTndmZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX1JwemFJUjlERWVHZXRPTGZrTE53ZmciIGZvbnROYW1lPSJVYnVudHUiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJSb2JvQ2FiLnVtbCNfUnBnZk1COURFZUdldE9MZmtMTndmZyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfUnB6YUloOURFZUdldE9MZmtMTndmZyIgcG9pbnRzPSJbNywgLTIsIC0xNDgsIDUxXSRbMTU5LCAtNjAsIDQsIC03XSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX1JxVmxvQjlERWVHZXRPTGZrTE53ZmciIGlkPSIoMC40NSwwLjE1KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX1dyZDlNQjlERWVHZXRPTGZrTE53ZmciIHR5cGU9IjQwMTMiIHNvdXJjZT0iX00zRHV3QjlCRWVHZXRPTGZrTE53ZmciIHRhcmdldD0iX01DSzR0QjlDRWVHZXRPTGZrTE53ZmciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9XcmQ5TXg5REVlR2V0T0xma0xOd2ZnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfV3JkOU5COURFZUdldE9MZmtMTndmZyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9XcmQ5TlI5REVlR2V0T0xma0xOd2ZnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfV3JkOU5oOURFZUdldE9MZmtMTndmZyIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfV3JkOU54OURFZUdldE9MZmtMTndmZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1dyZDlPQjlERWVHZXRPTGZrTE53ZmciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfV3JkOU9SOURFZUdldE9MZmtMTndmZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1dyZDlPaDlERWVHZXRPTGZrTE53ZmciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9XcmQ5TVI5REVlR2V0T0xma0xOd2ZnIiBmb250TmFtZT0iVWJ1bnR1Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iUm9ib0NhYi51bWwjX1dyS2JNQjlERWVHZXRPTGZrTE53ZmciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX1dyZDlNaDlERWVHZXRPTGZrTE53ZmciIHBvaW50cz0iWzEwLCAtMiwgLTE4NywgMjddJFsxOTYsIC0zOSwgLTEsIC0xMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9iYTNya0I5REVlR2V0T0xma0xOd2ZnIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9NM0U4NEI5QkVlR2V0T0xma0xOd2ZnIiB0YXJnZXQ9Il91VGFWa0J3bkVlR2E1YkhfUkpGekJRIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYmEzcmt4OURFZUdldE9MZmtMTndmZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2JhM3JsQjlERWVHZXRPTGZrTE53ZmciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYmEzcmxSOURFZUdldE9MZmtMTndmZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2JhM3JsaDlERWVHZXRPTGZrTE53ZmciIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2JhM3JseDlERWVHZXRPTGZrTE53ZmciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iYTNybUI5REVlR2V0T0xma0xOd2ZnIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2JhNFNvQjlERWVHZXRPTGZrTE53ZmciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iYTRTb1I5REVlR2V0T0xma0xOd2ZnIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfYmEzcmtSOURFZUdldE9MZmtMTndmZyIgZm9udE5hbWU9IlVidW50dSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IlJvYm9DYWIudW1sI19iYWxYc0I5REVlR2V0T0xma0xOd2ZnIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9iYTNya2g5REVlR2V0T0xma0xOd2ZnIiBwb2ludHM9Ils5LCAtMiwgLTE4NywgMjVdJFsxOTksIC0xNywgMywgMTBdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfYmJaM0VCOURFZUdldE9MZmtMTndmZyIgaWQ9IigwLjU1LDAuMTUpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfVjJySFlEVTFFZUc1cExfZnBOMkRnUSIgdHlwZT0iNDAxMyIgc291cmNlPSJfVFNTZkVEVTFFZUc1cExfZnBOMkRnUSIgdGFyZ2V0PSJfTUNMZnh4OUNFZUdldE9MZmtMTndmZyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1YycnVjRFUxRWVHNXBMX2ZwTjJEZ1EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9WMnJ1Y1RVMUVlRzVwTF9mcE4yRGdRIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1YycnVjalUxRWVHNXBMX2ZwTjJEZ1EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9WMnJ1Y3pVMUVlRzVwTF9mcE4yRGdRIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9WMnJ1ZERVMUVlRzVwTF9mcE4yRGdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVjJydWRUVTFFZUc1cExfZnBOMkRnUSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9WMnJ1ZGpVMUVlRzVwTF9mcE4yRGdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVjJydWR6VTFFZUc1cExfZnBOMkRnUSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX1YyckhZVFUxRWVHNXBMX2ZwTjJEZ1EiIGZvbnROYW1lPSJVYnVudHUiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJSb2JvQ2FiLnVtbCNfVjJiUHdEVTFFZUc1cExfZnBOMkRnUSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfVjJySFlqVTFFZUc1cExfZnBOMkRnUSIgcG9pbnRzPSJbMTAsIDEsIC0xMTYsIC0xOV0kWzEzNiwgMjAsIDEwLCAwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX1dqa3BvRFUxRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX1RTVHRNRFUxRWVHNXBMX2ZwTjJEZ1EiIHRhcmdldD0iXzZmU2ZnRFUwRWVHNXBMX2ZwTjJEZ1EiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9XamxRc0RVMUVlRzVwTF9mcE4yRGdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfV2psUXNUVTFFZUc1cExfZnBOMkRnUSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9XamxRc2pVMUVlRzVwTF9mcE4yRGdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfV2psUXN6VTFFZUc1cExfZnBOMkRnUSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfV2psUXREVTFFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1dqbFF0VFUxRWVHNXBMX2ZwTjJEZ1EiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfV2psUXRqVTFFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1dqbFF0elUxRWVHNXBMX2ZwTjJEZ1EiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9Xamtwb1RVMUVlRzVwTF9mcE4yRGdRIiBmb250TmFtZT0iVWJ1bnR1Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iUm9ib0NhYi51bWwjX1dqVUs4RFUxRWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX1dqa3BvalUxRWVHNXBMX2ZwTjJEZ1EiIHBvaW50cz0iWzEwLCAwLCAtMTE2LCAtOF0kWzEyOCwgMTgsIDIsIDEwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2NYeUQ4RFUxRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX01yaTBrRFUxRWVHNXBMX2ZwTjJEZ1EiIHRhcmdldD0iX1g4X1RvRFUxRWVHNXBMX2ZwTjJEZ1EiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9jWHlyQURVMUVlRzVwTF9mcE4yRGdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfY1h5ckFUVTFFZUc1cExfZnBOMkRnUSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9jWHlyQWpVMUVlRzVwTF9mcE4yRGdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfY1h5ckF6VTFFZUc1cExfZnBOMkRnUSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfY1h5ckJEVTFFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2NYeXJCVFUxRWVHNXBMX2ZwTjJEZ1EiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfY1h5ckJqVTFFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2NYeXJCelUxRWVHNXBMX2ZwTjJEZ1EiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9jWHlEOFRVMUVlRzVwTF9mcE4yRGdRIiBmb250TmFtZT0iVWJ1bnR1Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iUm9ib0NhYi51bWwjX2NYaXpZRFUxRWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2NYeUQ4alUxRWVHNXBMX2ZwTjJEZ1EiIHBvaW50cz0iWzEwLCAwLCAtNzU1LCAtMTk0XSRbNzE5LCAwLCAtNDYsIC0xOTRdJFs3MTksIDE5NCwgLTQ2LCAwXSRbNzU1LCAxOTQsIC0xMCwgMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9kcHA3Z0RVMUVlRzVwTF9mcE4yRGdRIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9NcmtDc0RVMUVlRzVwTF9mcE4yRGdRIiB0YXJnZXQ9Il9YOUJJMHpVMUVlRzVwTF9mcE4yRGdRIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZHBxaWtEVTFFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2RwcWlrVFUxRWVHNXBMX2ZwTjJEZ1EiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZHBxaWtqVTFFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2RwcWlrelUxRWVHNXBMX2ZwTjJEZ1EiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2RwcWlsRFUxRWVHNXBMX2ZwTjJEZ1EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9kcHFpbFRVMUVlRzVwTF9mcE4yRGdRIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2RwcWlsalUxRWVHNXBMX2ZwTjJEZ1EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9kcHFpbHpVMUVlRzVwTF9mcE4yRGdRIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfZHBwN2dUVTFFZUc1cExfZnBOMkRnUSIgZm9udE5hbWU9IlVidW50dSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IlJvYm9DYWIudW1sI19kcFkxd0RVMUVlRzVwTF9mcE4yRGdRIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9kcHA3Z2pVMUVlRzVwTF9mcE4yRGdRIiBwb2ludHM9IlsxMCwgLTYsIC03NTUsIC0yMTVdJFs3MDksIC02LCAtNTYsIC0yMTVdJFs3MDksIDIwOSwgLTU2LCAwXSRbNzU1LCAyMDksIC0xMCwgMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9mU0NPa0RVMUVlRzVwTF9mcE4yRGdRIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9NcmtweURVMUVlRzVwTF9mcE4yRGdRIiB0YXJnZXQ9Il9YOUFod0RVMUVlRzVwTF9mcE4yRGdRIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZlNDT2t6VTFFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ZTQ09sRFUxRWVHNXBMX2ZwTjJEZ1EiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZlNDMW9EVTFFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ZTQzFvVFUxRWVHNXBMX2ZwTjJEZ1EiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2ZTQzFvalUxRWVHNXBMX2ZwTjJEZ1EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9mU0Mxb3pVMUVlRzVwTF9mcE4yRGdRIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2ZTQzFwRFUxRWVHNXBMX2ZwTjJEZ1EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9mU0MxcFRVMUVlRzVwTF9mcE4yRGdRIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfZlNDT2tUVTFFZUc1cExfZnBOMkRnUSIgZm9udE5hbWU9IlVidW50dSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IlJvYm9DYWIudW1sI19mUnhJMERVMUVlRzVwTF9mcE4yRGdRIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9mU0NPa2pVMUVlRzVwTF9mcE4yRGdRIiBwb2ludHM9IlsxMCwgMCwgLTc1NSwgLTI0NF0kWzY5NCwgMCwgLTcxLCAtMjQ0XSRbNjk0LCAyNDQsIC03MSwgMF0kWzc1NSwgMjQ0LCAtMTAsIDBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfbTN1MG9EVTFFZUc1cExfZnBOMkRnUSIgdHlwZT0iNDAxMyIgc291cmNlPSJfTXJpMGtEVTFFZUc1cExfZnBOMkRnUSIgdGFyZ2V0PSJfNmZUdHBUVTBFZUc1cExfZnBOMkRnUSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX20zdmJzRFUxRWVHNXBMX2ZwTjJEZ1EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9tM3Zic1RVMUVlRzVwTF9mcE4yRGdRIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX20zdmJzalUxRWVHNXBMX2ZwTjJEZ1EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9tM3Zic3pVMUVlRzVwTF9mcE4yRGdRIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9tM3ZidERVMUVlRzVwTF9mcE4yRGdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfbTN2YnRUVTFFZUc1cExfZnBOMkRnUSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9tM3ZidGpVMUVlRzVwTF9mcE4yRGdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfbTN2YnR6VTFFZUc1cExfZnBOMkRnUSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX20zdTBvVFUxRWVHNXBMX2ZwTjJEZ1EiIGZvbnROYW1lPSJVYnVudHUiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJSb2JvQ2FiLnVtbCNfbTNaZGNEVTFFZUc1cExfZnBOMkRnUSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfbTN1MG9qVTFFZUc1cExfZnBOMkRnUSIgcG9pbnRzPSJbMTAsIDAsIC0xMjQsIC0xMTBdJFsxMDksIDAsIC0yNSwgLTExMF0kWzEwOSwgMTEwLCAtMjUsIDBdJFsxMjQsIDExMCwgLTEwLCAwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX25ycmFFRFUxRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX01ya0NzRFUxRWVHNXBMX2ZwTjJEZ1EiIHRhcmdldD0iXzZmVTd3RFUwRWVHNXBMX2ZwTjJEZ1EiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9ucnJhRXpVMUVlRzVwTF9mcE4yRGdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfbnJzQklEVTFFZUc1cExfZnBOMkRnUSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9ucnNCSVRVMUVlRzVwTF9mcE4yRGdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfbnJzQklqVTFFZUc1cExfZnBOMkRnUSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbnJzQkl6VTFFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX25yc0JKRFUxRWVHNXBMX2ZwTjJEZ1EiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbnJzQkpUVTFFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX25yc0JKalUxRWVHNXBMX2ZwTjJEZ1EiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9ucnJhRVRVMUVlRzVwTF9mcE4yRGdRIiBmb250TmFtZT0iVWJ1bnR1Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iUm9ib0NhYi51bWwjX25yYVVVRFUxRWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX25ycmFFalUxRWVHNXBMX2ZwTjJEZ1EiIHBvaW50cz0iWzEwLCAwLCAtMTI0LCAtOTldJFs5NCwgMCwgLTQwLCAtOTldJFs5NCwgOTksIC00MCwgMF0kWzEyNCwgOTksIC0xMCwgMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9vdmJXRURVMUVlRzVwTF9mcE4yRGdRIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9NcmtweURVMUVlRzVwTF9mcE4yRGdRIiB0YXJnZXQ9Il82ZlZpMGpVMEVlRzVwTF9mcE4yRGdRIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfb3ZiV0V6VTFFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX292YldGRFUxRWVHNXBMX2ZwTjJEZ1EiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfb3ZiV0ZUVTFFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX292YldGalUxRWVHNXBMX2ZwTjJEZ1EiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX292YjlJRFUxRWVHNXBMX2ZwTjJEZ1EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9vdmI5SVRVMUVlRzVwTF9mcE4yRGdRIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX292YjlJalUxRWVHNXBMX2ZwTjJEZ1EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9vdmI5SXpVMUVlRzVwTF9mcE4yRGdRIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfb3ZiV0VUVTFFZUc1cExfZnBOMkRnUSIgZm9udE5hbWU9IlVidW50dSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IlJvYm9DYWIudW1sI19vdktRVURVMUVlRzVwTF9mcE4yRGdRIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9vdmJXRWpVMUVlRzVwTF9mcE4yRGdRIiBwb2ludHM9IlsxMCwgMCwgLTEyNCwgLTg0XSRbODQsIDAsIC01MCwgLTg0XSRbODQsIDg0LCAtNTAsIDBdJFsxMjQsIDg0LCAtMTAsIDBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfMWsyb2tFSG5FZUdHWHBHc2Nwa2pkZyIgdHlwZT0iNDAxMyIgc291cmNlPSJfVEdiRXdCOGxFZUc0Z1BDRXpuVk5PQSIgdGFyZ2V0PSJfTUNOVThCOUNFZUdldE9MZmtMTndmZyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzFrMzJzRUhuRWVHR1hwR3NjcGtqZGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8xazMyc1VIbkVlR0dYcEdzY3BramRnIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzFrMzJza0huRWVHR1hwR3NjcGtqZGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8xazMyczBIbkVlR0dYcEdzY3BramRnIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8xazMydEVIbkVlR0dYcEdzY3BramRnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMWszMnRVSG5FZUdHWHBHc2Nwa2pkZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8xazMydGtIbkVlR0dYcEdzY3BramRnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMWszMnQwSG5FZUdHWHBHc2Nwa2pkZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iXzFrMm9rVUhuRWVHR1hwR3NjcGtqZGciIGZvbnROYW1lPSJVYnVudHUiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJSb2JvQ2FiLnVtbCNfMWtXNVVFSG5FZUdHWHBHc2Nwa2pkZyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfMWsyb2trSG5FZUdHWHBHc2Nwa2pkZyIgcG9pbnRzPSJbOCwgMiwgLTg3LCAyXSRbOTYsIDgsIDEsIDhdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfM210TGtFSG5FZUdHWHBHc2Nwa2pkZyIgdHlwZT0iNDAxMyIgc291cmNlPSJfQm1Ra01COG1FZUc0Z1BDRXpuVk5PQSIgdGFyZ2V0PSJfTUNOOEFCOUNFZUdldE9MZmtMTndmZyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzNtdHlvRUhuRWVHR1hwR3NjcGtqZGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8zbXR5b1VIbkVlR0dYcEdzY3BramRnIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzNtdHlva0huRWVHR1hwR3NjcGtqZGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8zbXR5bzBIbkVlR0dYcEdzY3BramRnIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8zbXR5cEVIbkVlR0dYcEdzY3BramRnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfM210eXBVSG5FZUdHWHBHc2Nwa2pkZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8zbXR5cGtIbkVlR0dYcEdzY3BramRnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfM210eXAwSG5FZUdHWHBHc2Nwa2pkZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iXzNtdExrVUhuRWVHR1hwR3NjcGtqZGciIGZvbnROYW1lPSJVYnVudHUiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJSb2JvQ2FiLnVtbCNfM21jRjBFSG5FZUdHWHBHc2Nwa2pkZyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfM210TGtrSG5FZUdHWHBHc2Nwa2pkZyIgcG9pbnRzPSJbOCwgMiwgLTg3LCAxXSRbOTIsIDksIC0zLCA4XSIvPgorICAgIDwvZWRnZXM+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfZ2xMNXdCd2hFZUdhNWJIX1JKRnpCUSIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJTaW5nbGV0b25Db21wb25lbnRzRGlhZ3JhbSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZzVuNHNCd2hFZUdhNWJIX1JKRnpCUSIgdHlwZT0iMjA3MyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2c1bjRzUndoRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9nNW40c2h3aEVlR2E1YkhfUkpGekJRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9nNW40c3h3aEVlR2E1YkhfUkpGekJRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9nNW40dEJ3aEVlR2E1YkhfUkpGekJRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2c1bjR0UndoRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZzVuNHRod2hFZUdhNWJIX1JKRnpCUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9nNW40dHh3aEVlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOEMxMWNKWDJFZUdRTnVmOC1TbFZoZyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOEMxMWNaWDJFZUdRTnVmOC1TbFZoZyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlNvZnR3YXJlIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOEMxMWNwWDJFZUdRTnVmOC1TbFZoZyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzhDMTFjNVgyRWVHUU51ZjgtU2xWaGciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il84QzExZEpYMkVlR1FOdWY4LVNsVmhnIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZzVuNHZSd2hFZUdhNWJIX1JKRnpCUSIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9nNW40dmh3aEVlR2E1YkhfUkpGekJRIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZzVuNHZ4d2hFZUdhNWJIX1JKRnpCUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0MtRmNrQndpRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjciIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9DLUZja2h3aUVlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9DLUdEb0J3aUVlR2E1YkhfUkpGekJRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQy1HRG9Sd2lFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9DLUdEb2h3aUVlR2E1YkhfUkpGekJRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9DLUdEb3h3aUVlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQy1HRHBCd2lFZUdhNWJIX1JKRnpCUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9DLUdEcFJ3aUVlR2E1YkhfUkpGekJRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0MtR0RwaHdpRWVHYTViSF9SSkZ6QlEiIHg9IjI1IiB5PSIxMSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9DLUdEcHh3aUVlR2E1YkhfUkpGekJRIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0MtR0RxQndpRWVHYTViSF9SSkZ6QlEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6S1pha19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9DLUZja1J3aUVlR2E1YkhfUkpGekJRIiB4PSItMTAiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfQy1HRHFSd2lFZUdhNWJIX1JKRnpCUSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iNyIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0MtR0RxeHdpRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0MtR0RyQndpRWVHYTViSF9SSkZ6QlEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9DLUdEclJ3aUVlR2E1YkhfUkpGekJRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0MtR0RyaHdpRWVHYTViSF9SSkZ6QlEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0MtR0RyeHdpRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9DLUdEc0J3aUVlR2E1YkhfUkpGekJRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0MtR3FzQndpRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQy1HcXNSd2lFZUdhNWJIX1JKRnpCUSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfQy1HcXNod2lFZUdhNWJIX1JKRnpCUSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9DLUdxc3h3aUVlR2E1YkhfUkpGekJRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX2ZkekthYWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfQy1HRHFod2lFZUdhNWJIX1JKRnpCUSIgeD0iLTEwIiB5PSI5NiIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0MtR3F0QndpRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjciIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9DLUdxdGh3aUVlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9DLUdxdHh3aUVlR2E1YkhfUkpGekJRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQy1HcXVCd2lFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9DLUdxdVJ3aUVlR2E1YkhfUkpGekJRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9DLUdxdWh3aUVlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQy1HcXV4d2lFZUdhNWJIX1JKRnpCUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9DLUdxdkJ3aUVlR2E1YkhfUkpGekJRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0MtR3F2UndpRWVHYTViSF9SSkZ6QlEiIHg9Ii0xNzEiIHk9IjYiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfQy1HcXZod2lFZUdhNWJIX1JKRnpCUSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9DLUdxdnh3aUVlR2E1YkhfUkpGekJRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX2ZkektjYWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfQy1HcXRSd2lFZUdhNWJIX1JKRnpCUSIgeD0iMzYzIiB5PSI4NCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2dGcWVNQjhzRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9nRnFlTWg4c0VlRzRnUENFem5WTk9BIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9nRnFlTXg4c0VlRzRnUENFem5WTk9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZ0ZxZU5COHNFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9nRnFlTlI4c0VlRzRnUENFem5WTk9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9nRnFlTmg4c0VlRzRnUENFem5WTk9BIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZ0ZxZU54OHNFZUc0Z1BDRXpuVk5PQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9nRnFlT0I4c0VlRzRnUENFem5WTk9BIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2dGcWVPUjhzRWVHNGdQQ0V6blZOT0EiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2dGckZRQjhzRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZ0ZyRlFSOHNFZUc0Z1BDRXpuVk5PQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19nRll4WUI4c0VlRzRnUENFem5WTk9BIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2dGcWVNUjhzRWVHNGdQQ0V6blZOT0EiIHg9Ii0xMCIgeT0iMTI2IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6S1ZLa19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZzVuNHdCd2hFZUdhNWJIX1JKRnpCUSIgeD0iMzAiIHk9IjMwIiB3aWR0aD0iMzczIiBoZWlnaHQ9IjE1NyIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZzVvZndCd2hFZUdhNWJIX1JKRnpCUSIgdHlwZT0iMjA3MyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2c1b2Z3UndoRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9nNW9md2h3aEVlR2E1YkhfUkpGekJRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9nNW9md3h3aEVlR2E1YkhfUkpGekJRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9nNW9meEJ3aEVlR2E1YkhfUkpGekJRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2c1b2Z4UndoRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZzVvZnhod2hFZUdhNWJIX1JKRnpCUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2c1b2Z6UndoRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZzVvZnpod2hFZUdhNWJIX1JKRnpCUSIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2c1b2Z6eHdoRWVHYTViSF9SSkZ6QlEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iM21UMXh3aUVlR2E1YkhfUkpGekJRIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSI3IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYjNtVDJSd2lFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYjNtVDJod2lFZUdhNWJIX1JKRnpCUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2IzbVQyeHdpRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYjNtVDNCd2lFZUdhNWJIX1JKRnpCUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYjNtVDNSd2lFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2IzbVQzaHdpRWVHYTViSF9SSkZ6QlEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYjNtVDN4d2lFZUdhNWJIX1JKRnpCUSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iM21UNEJ3aUVlR2E1YkhfUkpGekJRIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9iM21UNFJ3aUVlR2E1YkhfUkpGekJRIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2IzbVQ0aHdpRWVHYTViSF9SSkZ6QlEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6SzZha19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9iM21UMkJ3aUVlR2E1YkhfUkpGekJRIiB4PSItMTAiIHk9Ijk2Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYjNuaC1od2lFZUdhNWJIX1JKRnpCUSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iNyIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2IzbmhfQndpRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2IzbmhfUndpRWVHYTViSF9SSkZ6QlEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9iM25oX2h3aUVlR2E1YkhfUkpGekJRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2IzbmhfeHdpRWVHYTViSF9SSkZ6QlEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2IzbmlBQndpRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9iM25pQVJ3aUVlR2E1YkhfUkpGekJRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2Izb0pBQndpRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYjNvSkFSd2lFZUdhNWJIX1JKRnpCUSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYjNvSkFod2lFZUdhNWJIX1JKRnpCUSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iM29KQXh3aUVlR2E1YkhfUkpGekJRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX2Zkeks5YWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfYjNuaC14d2lFZUdhNWJIX1JKRnpCUSIgeD0iLTEwIiB5PSI1NyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2Izb0pCQndpRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjciIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9iM29KQmh3aUVlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9iM29KQnh3aUVlR2E1YkhfUkpGekJRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYjNvSkNCd2lFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9iM29KQ1J3aUVlR2E1YkhfUkpGekJRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9iM29KQ2h3aUVlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYjNvSkN4d2lFZUdhNWJIX1JKRnpCUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9iM29KREJ3aUVlR2E1YkhfUkpGekJRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2Izb0pEUndpRWVHYTViSF9SSkZ6QlEiIHg9Ii0yMDEiIHk9IjUiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYjNvSkRod2lFZUdhNWJIX1JKRnpCUSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iM29KRHh3aUVlR2E1YkhfUkpGekJRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX2ZkekstYWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfYjNvSkJSd2lFZUdhNWJIX1JKRnpCUSIgeD0iNDUzIiB5PSIxNTAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iM293RUJ3aUVlR2E1YkhfUkpGekJRIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSI3IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYjNvd0Vod2lFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYjNvd0V4d2lFZUdhNWJIX1JKRnpCUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2Izb3dGQndpRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYjNvd0ZSd2lFZUdhNWJIX1JKRnpCUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYjNvd0Zod2lFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2Izb3dGeHdpRWVHYTViSF9SSkZ6QlEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYjNvd0dCd2lFZUdhNWJIX1JKRnpCUSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iM293R1J3aUVlR2E1YkhfUkpGekJRIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9iM293R2h3aUVlR2E1YkhfUkpGekJRIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2Izb3dHeHdpRWVHYTViSF9SSkZ6QlEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfVUlPYkVLbG9FZUNMa3U0UkZySTd1dyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9iM293RVJ3aUVlR2E1YkhfUkpGekJRIiB4PSItMTAiIHk9IjEzNyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1VleEUwRFVyRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9VZXhFMGpVckVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9VZXhyNERVckVlRzVwTF9mcE4yRGdRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVWV4cjRUVXJFZUc1cExfZnBOMkRnUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9VZXhyNGpVckVlRzVwTF9mcE4yRGdRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9VZXhyNHpVckVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVWV4cjVEVXJFZUc1cExfZnBOMkRnUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9VZXhyNVRVckVlRzVwTF9mcE4yRGdRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1VleHI1alVyRWVHNXBMX2ZwTjJEZ1EiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1VleHI1elVyRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVWV4cjZEVXJFZUc1cExfZnBOMkRnUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19VZWdtSURVckVlRzVwTF9mcE4yRGdRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1VleEUwVFVyRWVHNXBMX2ZwTjJEZ1EiIHg9Ii0xMCIgeT0iMTgyIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iZWpoY0RVckVlRzVwTF9mcE4yRGdRIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYmVqaGNqVXJFZUc1cExfZnBOMkRnUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYmVqaGN6VXJFZUc1cExfZnBOMkRnUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2JlamhkRFVyRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYmVqaGRUVXJFZUc1cExfZnBOMkRnUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYmVrSWdEVXJFZUc1cExfZnBOMkRnUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2Jla0lnVFVyRWVHNXBMX2ZwTjJEZ1EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2JlbkwwRFVyRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2JnNXEwRFVyRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYmc1cTBUVXJFZUc1cExfZnBOMkRnUSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYmc1cTBqVXJFZUc1cExfZnBOMkRnUSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2JnNXEwelVyRWVHNXBMX2ZwTjJEZ1EiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2JnNXExRFVyRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYmVrSWdqVXJFZUc1cExfZnBOMkRnUSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iZWtJZ3pVckVlRzVwTF9mcE4yRGdRIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9iZWtJaERVckVlRzVwTF9mcE4yRGdRIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2Jla0loVFVyRWVHNXBMX2ZwTjJEZ1EiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfYmVTYnNEVXJFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9iZWpoY1RVckVlRzVwTF9mcE4yRGdRIiB4PSItMTAiIHk9IjIzOSIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iUm9ib0NhYi51bWwjX2Zkeks1S2tfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2c1b2YwQndoRWVHYTViSF9SSkZ6QlEiIHg9IjQ2NSIgeT0iMzAiIHdpZHRoPSI0NjMiIGhlaWdodD0iMjgyIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9vRkNXZ0J3aEVlR2E1YkhfUkpGekJRIiB0eXBlPSIyMDczIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSI3IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX29GQzlrQndoRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vRkM5a1J3aEVlR2E1YkhfUkpGekJRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9vRkM5a2h3aEVlR2E1YkhfUkpGekJRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vRkM5a3h3aEVlR2E1YkhfUkpGekJRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX29GRGtvQndoRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb0ZEa29Sd2hFZUdhNWJIX1JKRnpCUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX29GRGtvaHdoRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfb0ZEa294d2hFZUdhNWJIX1JKRnpCUSIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX29GRGtwQndoRWVHYTViSF9SSkZ6QlEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfb0ZEa3BSd2hFZUdhNWJIX1JKRnpCUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0JDc2NBQndrRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjciIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9CQ3RERUJ3a0VlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9CQ3RERVJ3a0VlR2E1YkhfUkpGekJRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQkN0REVod2tFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9CQ3RERXh3a0VlR2E1YkhfUkpGekJRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9CQ3RERkJ3a0VlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQkN0REZSd2tFZUdhNWJIX1JKRnpCUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9CQ3RERmh3a0VlR2E1YkhfUkpGekJRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0JDdERGeHdrRWVHYTViSF9SSkZ6QlEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0JDdERHQndrRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQkN0cUlCd2tFZUdhNWJIX1JKRnpCUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19mZHpLSTZrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0JDc2NBUndrRWVHYTViSF9SSkZ6QlEiIHg9Ii0xMCIgeT0iMzYiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9CQ3RxSVJ3a0VlR2E1YkhfUkpGekJRIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSI3IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQkN1Uk1Cd2tFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQkN1Uk1Sd2tFZUdhNWJIX1JKRnpCUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0JDdTRRQndrRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQkN1NFFSd2tFZUdhNWJIX1JKRnpCUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQkN1NFFod2tFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0JDdTRReHdrRWVHYTViSF9SSkZ6QlEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfQkN1NFJCd2tFZUdhNWJIX1JKRnpCUSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9CQ3U0UlJ3a0VlR2E1YkhfUkpGekJRIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9CQ3ZmVUJ3a0VlR2E1YkhfUkpGekJRIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0JDdmZVUndrRWVHYTViSF9SSkZ6QlEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6S0o2a19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9CQ3RxSWh3a0VlR2E1YkhfUkpGekJRIiB4PSItMTAiIHk9IjY2Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfQkN2ZlVod2tFZUdhNWJIX1JKRnpCUSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iNyIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0JDdmZWQndrRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0JDdmZWUndrRWVHYTViSF9SSkZ6QlEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9CQ3ZmVmh3a0VlR2E1YkhfUkpGekJRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0JDdmZWeHdrRWVHYTViSF9SSkZ6QlEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0JDdmZXQndrRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9CQ3ZmV1J3a0VlR2E1YkhfUkpGekJRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0JDdmZXaHdrRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQkN2Zld4d2tFZUdhNWJIX1JKRnpCUSIgeD0iLTE2NSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9CQ3dHWUJ3a0VlR2E1YkhfUkpGekJRIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0JDd0dZUndrRWVHYTViSF9SSkZ6QlEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6S0s2a19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9CQ3ZmVXh3a0VlR2E1YkhfUkpGekJRIiB4PSIzMjEiIHk9Ijc4Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfQkN3R1lod2tFZUdhNWJIX1JKRnpCUSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iNyIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0JDd0daQndrRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0JDd0daUndrRWVHYTViSF9SSkZ6QlEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9CQ3dHWmh3a0VlR2E1YkhfUkpGekJRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0JDd0daeHdrRWVHYTViSF9SSkZ6QlEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0JDd0dhQndrRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9CQ3dHYVJ3a0VlR2E1YkhfUkpGekJRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0JDd0dhaHdrRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQkN3R2F4d2tFZUdhNWJIX1JKRnpCUSIgeD0iLTEyMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9CQ3dHYkJ3a0VlR2E1YkhfUkpGekJRIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0JDd0diUndrRWVHYTViSF9SSkZ6QlEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6S0w2a19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9CQ3dHWXh3a0VlR2E1YkhfUkpGekJRIiB4PSIzMjEiIHk9IjM2Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iUm9ib0NhYi51bWwjX2ZkektJcWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX29GQ1dnUndoRWVHYTViSF9SSkZ6QlEiIHg9Ijk4NSIgeT0iMzAiIHdpZHRoPSIzMzEiIGhlaWdodD0iMTE1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9weEZvb0J3aEVlR2E1YkhfUkpGekJRIiB0eXBlPSIyMDczIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSI3IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3B4R1BzQndoRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9weEdQc1J3aEVlR2E1YkhfUkpGekJRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9weEcyd0J3aEVlR2E1YkhfUkpGekJRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9weEcyd1J3aEVlR2E1YkhfUkpGekJRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3B4RzJ3aHdoRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcHhHMnd4d2hFZUdhNWJIX1JKRnpCUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3B4RzJ4QndoRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfcHhHMnhSd2hFZUdhNWJIX1JKRnpCUSIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3B4RzJ4aHdoRWVHYTViSF9SSkZ6QlEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfcHhHMnh4d2hFZUdhNWJIX1JKRnpCUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX21vOVN1aHdrRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjciIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9tbzlTdkJ3a0VlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9tbzlTdlJ3a0VlR2E1YkhfUkpGekJRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbW85NXdCd2tFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9tbzk1d1J3a0VlR2E1YkhfUkpGekJRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9tbzk1d2h3a0VlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbW85NXd4d2tFZUdhNWJIX1JKRnpCUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9tbzk1eEJ3a0VlR2E1YkhfUkpGekJRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX21vOTV4UndrRWVHYTViSF9SSkZ6QlEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX21vOTV4aHdrRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfbW85NXh4d2tFZUdhNWJIX1JKRnpCUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19mZHpLMDZrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX21vOVN1eHdrRWVHYTViSF9SSkZ6QlEiIHg9Ii0xMCIgeT0iOTAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9tby1nMEJ3a0VlR2E1YkhfUkpGekJRIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSI3IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbW8tZzBod2tFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbW8tZzB4d2tFZUdhNWJIX1JKRnpCUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX21vLWcxQndrRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbW8tZzFSd2tFZUdhNWJIX1JKRnpCUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbW8tZzFod2tFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX21vLWcxeHdrRWVHYTViSF9SSkZ6QlEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbW8tZzJCd2tFZUdhNWJIX1JKRnpCUSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9tby1nMlJ3a0VlR2E1YkhfUkpGekJRIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9tby1nMmh3a0VlR2E1YkhfUkpGekJRIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX21vLWcyeHdrRWVHYTViSF9SSkZ6QlEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6SzM2a19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9tby1nMFJ3a0VlR2E1YkhfUkpGekJRIiB4PSItMTAiIHk9IjEyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX21vX3U4QndrRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjciIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9tb191OGh3a0VlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9tb191OHh3a0VlR2E1YkhfUkpGekJRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbW9fdTlCd2tFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9tb191OVJ3a0VlR2E1YkhfUkpGekJRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9tb191OWh3a0VlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbW9fdTl4d2tFZUdhNWJIX1JKRnpCUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9tb191LUJ3a0VlR2E1YkhfUkpGekJRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX21vX3UtUndrRWVHYTViSF9SSkZ6QlEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX21vX3UtaHdrRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfbW9fdS14d2tFZUdhNWJIX1JKRnpCUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19HSnpyVUtsYkVlQ1lmYm54VlN5WjlnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX21vX3U4UndrRWVHYTViSF9SSkZ6QlEiIHg9Ii0xMCIgeT0iMTUwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfNlZycTBCOHJFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzZWcnEwaDhyRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZWcnEweDhyRWVHNGdQQ0V6blZOT0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il82VnJxMUI4ckVlRzRnUENFem5WTk9BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZWcnExUjhyRWVHNGdQQ0V6blZOT0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzZWcnExaDhyRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il82VnJxMXg4ckVlRzRnUENFem5WTk9BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il82VnZWTUI4ckVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il82WVZXTUI4ckVlRzRnUENFem5WTk9BIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZZVldNUjhyRWVHNGdQQ0V6blZOT0EiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZZVldNaDhyRWVHNGdQQ0V6blZOT0EiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il82WVZXTXg4ckVlRzRnUENFem5WTk9BIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il82WVZXTkI4ckVlRzRnUENFem5WTk9BIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzZWcnEyQjhyRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfNlZycTJSOHJFZUc0Z1BDRXpuVk5PQSIgeD0iLTE4NSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il82VnJxMmg4ckVlRzRnUENFem5WTk9BIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzZWcnEyeDhyRWVHNGdQQ0V6blZOT0EiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfNlZZdjRCOHJFZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il82VnJxMFI4ckVlRzRnUENFem5WTk9BIiB4PSIzNTEiIHk9Ijg5IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il82b2h1VUI4ckVlRzRnUENFem5WTk9BIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNm9pVllCOHJFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNm9pVllSOHJFZUc0Z1BDRXpuVk5PQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzZvaVZZaDhyRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNm9pVll4OHJFZUc0Z1BDRXpuVk5PQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNm9pVlpCOHJFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZvaVZaUjhyRWVHNGdQQ0V6blZOT0EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzZvbFlzQjhyRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZyS0xrQjhyRWVHNGdQQ0V6blZOT0EiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNnJLTGtSOHJFZUc0Z1BDRXpuVk5PQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNnJLTGtoOHJFZUc0Z1BDRXpuVk5PQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZyS0xreDhyRWVHNGdQQ0V6blZOT0EiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZyS0xsQjhyRWVHNGdQQ0V6blZOT0EiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfNm9pVlpoOHJFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il82b2lWWng4ckVlRzRnUENFem5WTk9BIiB4PSIyNSIgeT0iMiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il82b2lWYUI4ckVlRzRnUENFem5WTk9BIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzZvaVZhUjhyRWVHNGdQQ0V6blZOT0EiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfNm9PellCOHJFZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il82b2h1VVI4ckVlRzRnUENFem5WTk9BIiB4PSItMTAiIHk9IjU1IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6S29La19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfcHhGb29Sd2hFZUdhNWJIX1JKRnpCUSIgeD0iMTM3NSIgeT0iMzAiIHdpZHRoPSIzNjEiIGhlaWdodD0iMTkxIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9xQzM4TUJ3aEVlR2E1YkhfUkpGekJRIiB0eXBlPSIyMDczIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSI3IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3FDNGpRQndoRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9xQzVLVUJ3aEVlR2E1YkhfUkpGekJRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9xQzVLVVJ3aEVlR2E1YkhfUkpGekJRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9xQzVLVWh3aEVlR2E1YkhfUkpGekJRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3FDNUtVeHdoRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcUM1S1ZCd2hFZUdhNWJIX1JKRnpCUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3FDNUtWUndoRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfcUM1eFlCd2hFZUdhNWJIX1JKRnpCUSIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3FDNXhZUndoRWVHYTViSF9SSkZ6QlEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfcUM1eFlod2hFZUdhNWJIX1JKRnpCUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3pNMzdzQndqRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjciIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il96TTRpd0J3akVlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il96TTRpd1J3akVlR2E1YkhfUkpGekJRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfek00aXdod2pFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il96TTVKMEJ3akVlR2E1YkhfUkpGekJRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il96TTVKMFJ3akVlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfek01SjBod2pFZUdhNWJIX1JKRnpCUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il96TTVKMHh3akVlR2E1YkhfUkpGekJRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3pNNUoxQndqRWVHYTViSF9SSkZ6QlEiIHg9Ii04NyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il96TTVKMVJ3akVlR2E1YkhfUkpGekJRIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3pNNUoxaHdqRWVHYTViSF9SSkZ6QlEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfY1BpYUVLbGdFZUNZZmJueFZTeVo5ZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il96TTM3c1J3akVlR2E1YkhfUkpGekJRIiB4PSIxMTEiIHk9IjM2Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iUm9ib0NhYi51bWwjX2FHNVNrS2xnRWVDWWZibnhWU3laOWciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3FDMzhNUndoRWVHYTViSF9SSkZ6QlEiIHg9IjE4MDAiIHk9IjMwIiB3aWR0aD0iMTIxIiBoZWlnaHQ9Ijg1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9NYWxNTUJ3aUVlR2E1YkhfUkpGekJRIiB0eXBlPSIyMDczIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSI3IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01hbE1NaHdpRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NYWxNTXh3aUVlR2E1YkhfUkpGekJRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NYWxNTkJ3aUVlR2E1YkhfUkpGekJRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NYWxNTlJ3aUVlR2E1YkhfUkpGekJRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01hbE1OaHdpRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTWFsTU54d2lFZUdhNWJIX1JKRnpCUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX01hbE1PQndpRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfTWFsTU9Sd2lFZUdhNWJIX1JKRnpCUSIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX01hbE1PaHdpRWVHYTViSF9SSkZ6QlEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTWFsTU94d2lFZUdhNWJIX1JKRnpCUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1Jzb3B3QndrRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjciIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Sc29wd2h3a0VlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9Sc29wd3h3a0VlR2E1YkhfUkpGekJRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUnNvcHhCd2tFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9Sc29weFJ3a0VlR2E1YkhfUkpGekJRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Sc29weGh3a0VlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUnNwUTBCd2tFZUdhNWJIX1JKRnpCUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUnNyR0FCd2tFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUnR2ZEFCd2tFZUdhNWJIX1JKRnpCUSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9SdHZkQVJ3a0VlR2E1YkhfUkpGekJRIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9SdHZkQWh3a0VlR2E1YkhfUkpGekJRIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUnR2ZEF4d2tFZUdhNWJIX1JKRnpCUSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUnR2ZEJCd2tFZUdhNWJIX1JKRnpCUSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9Sc3BRMFJ3a0VlR2E1YkhfUkpGekJRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1JzcFEwaHdrRWVHYTViSF9SSkZ6QlEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1JzcFEweHdrRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfUnNwUTFCd2tFZUdhNWJIX1JKRnpCUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19Sc2IxY0J3a0VlR2E1YkhfUkpGekJRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1Jzb3B3UndrRWVHYTViSF9SSkZ6QlEiIHg9Ii0xMCIgeT0iNTYiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1cybU5NQndrRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjciIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9XMm1OTWh3a0VlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9XMm1OTXh3a0VlR2E1YkhfUkpGekJRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVzJtTk5Cd2tFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9XMm1OTlJ3a0VlR2E1YkhfUkpGekJRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9XMm1OTmh3a0VlR2E1YkhfUkpGekJRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVzJtTk54d2tFZUdhNWJIX1JKRnpCUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVzJvcGNCd2tFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVzN4UjRCd2tFZUdhNWJIX1JKRnpCUSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9XM3hSNFJ3a0VlR2E1YkhfUkpGekJRIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9XM3hSNGh3a0VlR2E1YkhfUkpGekJRIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVzN4UjR4d2tFZUdhNWJIX1JKRnpCUSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVzN4UjVCd2tFZUdhNWJIX1JKRnpCUSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9XMm1OT0J3a0VlR2E1YkhfUkpGekJRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1cybU5PUndrRWVHYTViSF9SSkZ6QlEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1cybU5PaHdrRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVzJtTk94d2tFZUdhNWJIX1JKRnpCUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19XMlc4b0J3a0VlR2E1YkhfUkpGekJRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1cybU5NUndrRWVHYTViSF9SSkZ6QlEiIHg9Ii0xMCIgeT0iMTA0IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9mNnJjMEJ3a0VlR2E1YkhfUkpGekJRIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSI3IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZjZzRDRCd2tFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZjZzRDRSd2tFZUdhNWJIX1JKRnpCUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2Y2c0Q0aHdrRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZjZzRDR4d2tFZUdhNWJIX1JKRnpCUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZjZzRDVCd2tFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2Y2c0Q1UndrRWVHYTViSF9SSkZ6QlEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2Y2dWdJQndrRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2Y3MVRZQndrRWVHYTViSF9SSkZ6QlEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZjcxVFlSd2tFZUdhNWJIX1JKRnpCUSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZjcxVFlod2tFZUdhNWJIX1JKRnpCUSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2Y3MVRZeHdrRWVHYTViSF9SSkZ6QlEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2Y3MVRaQndrRWVHYTViSF9SSkZ6QlEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZjZzRDVod2tFZUdhNWJIX1JKRnpCUSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9mNnNENXh3a0VlR2E1YkhfUkpGekJRIiB4PSItMTU5IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2Y2c0Q2QndrRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZjZzRDZSd2tFZUdhNWJIX1JKRnpCUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19mNmEtSUJ3a0VlR2E1YkhfUkpGekJRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2Y2cmMwUndrRWVHYTViSF9SSkZ6QlEiIHg9IjM2MyIgeT0iODEiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlJvYm9DYWIudW1sI19NYVZVa0J3aUVlR2E1YkhfUkpGekJRIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9NYWxNTVJ3aUVlR2E1YkhfUkpGekJRIiB4PSIxOTgwIiB5PSIzMCIgd2lkdGg9IjM3MyIgaGVpZ2h0PSIxNTEiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzJwOVJJQndrRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjIwNzMiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMnA5NE1Cd2tFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzJwOTRNUndrRWVHYTViSF9SSkZ6QlEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzJwLWZRQndrRWVHYTViSF9SSkZ6QlEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzJwLWZRUndrRWVHYTViSF9SSkZ6QlEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMnAtZlFod2tFZUdhNWJIX1JKRnpCUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8ycC1mUXh3a0VlR2E1YkhfUkpGekJRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0ZwNExzSlg0RWVHUU51ZjgtU2xWaGciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9GcDRMc1pYNEVlR1FOdWY4LVNsVmhnIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9GcUJWb0pYNEVlR1FOdWY4LVNsVmhnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6U29mdHdhcmUiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9GcUJWb1pYNEVlR1FOdWY4LVNsVmhnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRnFCVm9wWDRFZUdRTnVmOC1TbFZoZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0ZxQlZvNVg0RWVHUU51ZjgtU2xWaGciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8ycC1mUkJ3a0VlR2E1YkhfUkpGekJRIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzJwLWZSUndrRWVHYTViSF9SSkZ6QlEiIHR5cGU9IjcwNzMiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il8ycC1mUmh3a0VlR2E1YkhfUkpGekJRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzJwLWZSeHdrRWVHYTViSF9SSkZ6QlEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJSb2JvQ2FiLnVtbCNfMDdBY0FCd2tFZUdhNWJIX1JKRnpCUSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMnA5UklSd2tFZUdhNWJIX1JKRnpCUSIgeD0iMjQxMCIgeT0iMzAiIHdpZHRoPSI0MDMiIGhlaWdodD0iMjI5Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9sTk9xWUI4ckVlRzRnUENFem5WTk9BIiB0eXBlPSIyMDczIiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2xOUFJjQjhyRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9sTlBSY1I4ckVlRzRnUENFem5WTk9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9sTlBSY2g4ckVlRzRnUENFem5WTk9BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9sTlBSY3g4ckVlRzRnUENFem5WTk9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2xOUFJkQjhyRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbE5QUmRSOHJFZUc0Z1BDRXpuVk5PQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2xOUFJkaDhyRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfbE5QUmR4OHJFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2xOUFJlQjhyRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbE5QUmVSOHJFZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3ZRZ3RNQjhyRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il92UWd0TWg4ckVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il92UWd0TXg4ckVlRzRnUENFem5WTk9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdlFndE5COHJFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il92UWd0TlI4ckVlRzRnUENFem5WTk9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il92UWd0Tmg4ckVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdlFndE54OHJFZUc0Z1BDRXpuVk5PQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdlFrWGtCOHJFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdlRGZ0VCOHJFZUc0Z1BDRXpuVk5PQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il92VEZnRVI4ckVlRzRnUENFem5WTk9BIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il92VEZnRWg4ckVlRzRnUENFem5WTk9BIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdlRGZ0V4OHJFZUc0Z1BDRXpuVk5PQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdlRGZ0ZCOHJFZUc0Z1BDRXpuVk5PQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il92UWd0T0I4ckVlRzRnUENFem5WTk9BIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3ZRZ3RPUjhyRWVHNGdQQ0V6blZOT0EiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3ZRaFVRQjhyRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdlFoVVFSOHJFZUc0Z1BDRXpuVk5PQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI192UVBBWUI4ckVlRzRnUENFem5WTk9BIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3ZRZ3RNUjhyRWVHNGdQQ0V6blZOT0EiIHg9Ii0xMCIgeT0iNTIiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3hIVDJ3QjhyRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il94SFQyd2g4ckVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il94SFQyd3g4ckVlRzRnUENFem5WTk9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfeEhUMnhCOHJFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il94SFQyeFI4ckVlRzRnUENFem5WTk9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il94SFQyeGg4ckVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeEhVZDBCOHJFZUc0Z1BDRXpuVk5PQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfeEhYaElCOHJFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeEtCTWdCOHJFZUc0Z1BDRXpuVk5PQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il94S0JNZ1I4ckVlRzRnUENFem5WTk9BIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il94S0J6a0I4ckVlRzRnUENFem5WTk9BIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeEtCemtSOHJFZUc0Z1BDRXpuVk5PQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeEtCemtoOHJFZUc0Z1BDRXpuVk5PQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il94SFVkMFI4ckVlRzRnUENFem5WTk9BIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3hIVWQwaDhyRWVHNGdQQ0V6blZOT0EiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3hIVWQweDhyRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfeEhVZDFCOHJFZUc0Z1BDRXpuVk5PQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI194SEJpNEI4ckVlRzRnUENFem5WTk9BIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3hIVDJ3UjhyRWVHNGdQQ0V6blZOT0EiIHg9Ii0xMCIgeT0iODAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzAxdjNZQjhyRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8wMXdlY0I4ckVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wMXdlY1I4ckVlRzRnUENFem5WTk9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMDF3ZWNoOHJFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wMXdlY3g4ckVlRzRnUENFem5WTk9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8wMXdlZEI4ckVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMDF3ZWRSOHJFZUc0Z1BDRXpuVk5PQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMDEwSTBCOHJFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMDZ6V2dCOHJFZUc0Z1BDRXpuVk5PQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wNnpXZ1I4ckVlRzRnUENFem5WTk9BIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wNnpXZ2g4ckVlRzRnUENFem5WTk9BIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMDZ6V2d4OHJFZUc0Z1BDRXpuVk5PQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMDZ6V2hCOHJFZUc0Z1BDRXpuVk5PQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8wMXdlZGg4ckVlRzRnUENFem5WTk9BIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzAxd2VkeDhyRWVHNGdQQ0V6blZOT0EiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzAxd2VlQjhyRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMDF3ZWVSOHJFZUc0Z1BDRXpuVk5PQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI18wMWM4Y0I4ckVlRzRnUENFem5WTk9BIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzAxdjNZUjhyRWVHNGdQQ0V6blZOT0EiIHg9Ii0xMCIgeT0iMTA1IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJSb2JvQ2FiLnVtbCNfa2RsV0lCOHJFZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbE5PcVlSOHJFZUc0Z1BDRXpuVk5PQSIgeD0iMjg3NSIgeT0iMzAiIHdpZHRoPSIzNzMiIGhlaWdodD0iMTkxIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9kSHR0MEVIekVlR3dHX0pLRmh5aHh3IiB0eXBlPSIyMDczIiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2RIdTc4RUh6RWVHd0dfSktGaHloeHciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9kSHU3OFVIekVlR3dHX0pLRmh5aHh3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9kSHU3OGtIekVlR3dHX0pLRmh5aHh3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9kSHU3ODBIekVlR3dHX0pLRmh5aHh3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2RIdTc5RUh6RWVHd0dfSktGaHloeHciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZEh1NzlVSHpFZUd3R19KS0ZoeWh4dyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9ONTFIQUVIMkVlR3dHX0pLRmh5aHh3IiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT3pxU0FFSDJFZUd3R19KS0ZoeWh4dyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT3pxNUVFSDJFZUd3R19KS0ZoeWh4dyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlNvZnR3YXJlIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT3pxNUVVSDJFZUd3R19KS0ZoeWh4dyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX096cTVFa0gyRWVHd0dfSktGaHloeHciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9PenE1RTBIMkVlR3dHX0pLRmh5aHh3IiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZEh2akFFSHpFZUd3R19KS0ZoeWh4dyIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9kSHZqQVVIekVlR3dHX0pLRmh5aHh3IiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZEh2akFrSHpFZUd3R19KS0ZoeWh4dyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9kSHZqQTBIekVlR3dHX0pLRmh5aHh3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iUm9ib0NhYi51bWwjXzRSOFZZRUh4RWVHR1hwR3NjcGtqZGciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2RIdHQwVUh6RWVHd0dfSktGaHloeHciIHg9IjMzMTAiIHk9IjMwIiB3aWR0aD0iNDQ1IiBoZWlnaHQ9IjM0NSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfalBtY29FSDBFZUd3R19KS0ZoeWh4dyIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9qUG5Ec0VIMEVlR3dHX0pLRmh5aHh3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfalBuRHNVSDBFZUd3R19KS0ZoeWh4dyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfalBuRHNrSDBFZUd3R19KS0ZoeWh4dyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfalBuRHMwSDBFZUd3R19KS0ZoeWh4dyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9qUG5EdEVIMEVlR3dHX0pLRmh5aHh3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2pQbnF3RUgwRWVHd0dfSktGaHloeHciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfeWprOUFFSDBFZUd3R19KS0ZoeWh4dyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0RGRC04Q0c0RWVLQmM4cWh4bHZPX1EiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0RGRC04U0c0RWVLQmM4cWh4bHZPX1EiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSIsUm9ib3RNTDo6U29mdHdhcmUiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ERkQtOGlHNEVlS0JjOHFoeGx2T19RIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfREZELTh5RzRFZUtCYzhxaHhsdk9fUSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0RGRC05Q0c0RWVLQmM4cWh4bHZPX1EiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9qUG5xd1VIMEVlR3dHX0pLRmh5aHh3IiB0eXBlPSI1MTU2Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3VnTFpBRUgwRWVHd0dfSktGaHloeHciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3VnTFpBVUgwRWVHd0dfSktGaHloeHciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdWdMWkFrSDBFZUd3R19KS0ZoeWh4dyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlNvZnR3YXJlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il91Z0xaQTBIMEVlR3dHX0pLRmh5aHh3IiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il91Z0xaQkVIMEVlR3dHX0pLRmh5aHh3IiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il91Z0xaQlVIMEVlR3dHX0pLRmh5aHh3IiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9qUG5xd2tIMEVlR3dHX0pLRmh5aHh3IiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfalBucXcwSDBFZUd3R19KS0ZoeWh4dyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9qUG5xeEVIMEVlR3dHX0pLRmh5aHh3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfbUtBWVFFSDBFZUd3R19KS0ZoeWh4dyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX21LQVlRa0gwRWVHd0dfSktGaHloeHciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX21LQVlRMEgwRWVHd0dfSktGaHloeHciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9tS0FfVUVIMEVlR3dHX0pLRmh5aHh3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX21LQV9VVUgwRWVHd0dfSktGaHloeHciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX21LQV9Va0gwRWVHd0dfSktGaHloeHciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9tS0FfVTBIMEVlR3dHX0pLRmh5aHh3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9tS05Na0VIMEVlR3dHX0pLRmh5aHh3IiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9tTGJVa0VIMEVlR3dHX0pLRmh5aHh3IiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX21MYlVrVUgwRWVHd0dfSktGaHloeHciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX21MYlVra0gwRWVHd0dfSktGaHloeHciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9tTGJVazBIMEVlR3dHX0pLRmh5aHh3IiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9tTGJVbEVIMEVlR3dHX0pLRmh5aHh3IiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX21LQV9WRUgwRWVHd0dfSktGaHloeHciIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfbUtBX1ZVSDBFZUd3R19KS0ZoeWh4dyIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbUtBX1ZrSDBFZUd3R19KS0ZoeWh4dyIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9tS0FfVjBIMEVlR3dHX0pLRmh5aHh3IiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX21Kemo4RUgwRWVHd0dfSktGaHloeHciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbUtBWVFVSDBFZUd3R19KS0ZoeWh4dyIgeD0iLTEwIiB5PSI5NCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iUm9ib0NhYi51bWwjX2lybVhzRUgwRWVHd0dfSktGaHloeHciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2pQbWNvVUgwRWVHd0dfSktGaHloeHciIHg9IjM4MTUiIHk9IjMwIiB3aWR0aD0iNDI1IiBoZWlnaHQ9IjE4MCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9nbEw1d1J3aEVlR2E1YkhfUkpGekJRIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfa3M5V2hYN0xFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iUm9ib0NhYi51bWwjX2Zkekp4NmtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0JmTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IlJvYm9DYWIudW1sI19mZHpKeDZrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfQTBrMlVCOHJFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJPcmdhbml6ZXJTeXN0ZW1EaWFncmFtIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9DcDcxY0I4ckVlRzRnUENFem5WTk9BIiB0eXBlPSIyMDczIiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQ3A3MWNSOHJFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0NwNzFjaDhyRWVHNGdQQ0V6blZOT0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0NwNzFjeDhyRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0NwNzFkQjhyRWVHNGdQQ0V6blZOT0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQ3A3MWRSOHJFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9DcDcxZGg4ckVlRzRnUENFem5WTk9BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0NwNzFkeDhyRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9DcDcxZUI4ckVlRzRnUENFem5WTk9BIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9DcDcxZVI4ckVlRzRnUENFem5WTk9BIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6U3lzdGVtIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQ3A3MWVoOHJFZUc0Z1BDRXpuVk5PQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0NwNzFleDhyRWVHNGdQQ0V6blZOT0EiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9DcDcxZkI4ckVlRzRnUENFem5WTk9BIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3RDNjFjS0VERWVLTmE2RWZHQVNTV3ciIHNvdXJjZT0iUGFweXJ1c0h5cGVyTGlua19EaWFncmFtIiByZWZlcmVuY2VzPSJfT0NWRmtCd0FFZUdhNWJIX1JKRnpCUSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdEM2MWNhRURFZUtOYTZFZkdBU1NXdyIga2V5PSJ0b29sdGlwX3RleHQiIHZhbHVlPSJSb2JvY2FiRGVmYXVsdEFyY2hpdGVjdHVyZSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3RDNjFjcUVERWVLTmE2RWZHQVNTV3ciIGtleT0iZGlhZ3JhbV9uYW1lIiB2YWx1ZT0iUm9ib2NhYkRlZmF1bHRBcmNoaXRlY3R1cmUiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il90QzYxYzZFREVlS05hNkVmR0FTU1d3IiBrZXk9ImlzX2RlZmF1bHRfbmF2aWdhdGlvbiIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfQ3A3MWdSOHJFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9DcDcxZ2g4ckVlRzRnUENFem5WTk9BIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfR2QyTDhCOHJFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iMzA3MCIgZm9udE5hbWU9IlVidW50dSIgZmlsbENvbG9yPSI4MDQ3MDg1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HZDJ6QUI4ckVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dkMnpBUjhyRWVHNGdQQ0V6blZOT0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR2QyekFoOHJFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dkMnpBeDhyRWVHNGdQQ0V6blZOT0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HZDJ6QkI4ckVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HZDJ6QlI4ckVlRzRnUENFem5WTk9BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUUxmVjhCOHJFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9RTGZWOFI4ckVlRzRnUENFem5WTk9BIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUUxmVjhoOHJFZUc0Z1BDRXpuVk5PQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9RTGZWOHg4ckVlRzRnUENFem5WTk9BIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1FMZjlBQjhyRWVHNGdQQ0V6blZOT0EiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUUxmOUFSOHJFZUc0Z1BDRXpuVk5PQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR2QyekJoOHJFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfR2QyekJ4OHJFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HZDJ6Q0I4ckVlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HZDJ6Q1I4ckVlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9LMHhJNEI4ckVlRzRnUENFem5WTk9BIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0swMm9jQjhyRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LMDJvY1I4ckVlRzRnUENFem5WTk9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9LMDJvY2g4ckVlRzRnUENFem5WTk9BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LMDJvY3g4ckVlRzRnUENFem5WTk9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0swM1BnQjhyRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSzAzUGdSOHJFZUc0Z1BDRXpuVk5PQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0swM1BnaDhyRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0swM1BneDhyRWVHNGdQQ0V6blZOT0EiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfSzAzUGhCOHJFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfSzAzUGhSOHJFZUc0Z1BDRXpuVk5PQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX1BoaUU0QjhwRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0sweEk0UjhyRWVHNGdQQ0V6blZOT0EiIHg9Ii0xMCIgeT0iNDIiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm9DYWIudW1sI19HZGVfa0I4ckVlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR2QyTDhSOHJFZUc0Z1BDRXpuVk5PQSIgeD0iODIzIiB5PSIxNzUiIHdpZHRoPSIxOTAiIGhlaWdodD0iOTgiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfcUs5NlFCOHNFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iMzA3MCIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcUstaFVCOHNFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9xSy1oVVI4c0VlRzRnUENFem5WTk9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3FLLWhVaDhzRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9xSy1oVXg4c0VlRzRnUENFem5WTk9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcUstaFZCOHNFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcUstaFZSOHNFZUc0Z1BDRXpuVk5PQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfcUstaFZoOHNFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfcUstaFZ4OHNFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9xSy1oV0I4c0VlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9xSy1oV1I4c0VlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9XLTZmb0I4dEVlRzRnUENFem5WTk9BIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1ctNmZvaDh0RWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9XLTZmb3g4dEVlRzRnUENFem5WTk9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9XLTZmcEI4dEVlRzRnUENFem5WTk9BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9XLTZmcFI4dEVlRzRnUENFem5WTk9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1ctNmZwaDh0RWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVy03R3NCOHRFZUc0Z1BDRXpuVk5PQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1ctN0dzUjh0RWVHNGdQQ0V6blZOT0EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1ctN0dzaDh0RWVHNGdQQ0V6blZOT0EiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfVy03R3N4OHRFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVy03R3RCOHRFZUc0Z1BDRXpuVk5PQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX3ZRUEFZQjhyRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1ctNmZvUjh0RWVHNGdQQ0V6blZOT0EiIHg9Ii0xMCIgeT0iMTUiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1ctN0d0Ujh0RWVHNGdQQ0V6blZOT0EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVy03dHdCOHRFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1ctN3R3Ujh0RWVHNGdQQ0V6blZOT0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1ctN3R3aDh0RWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1ctN3R3eDh0RWVHNGdQQ0V6blZOT0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVy03dHhCOHRFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9XLTd0eFI4dEVlRzRnUENFem5WTk9BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfVy03dHhoOHRFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVy03dHh4OHRFZUc0Z1BDRXpuVk5PQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9XLTd0eUI4dEVlRzRnUENFem5WTk9BIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9XLTd0eVI4dEVlRzRnUENFem5WTk9BIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfeEhCaTRCOHJFZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfVy03R3RoOHRFZUc0Z1BDRXpuVk5PQSIgeD0iLTEwIiB5PSI1MCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfVy04VTBCOHRFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9XLThVMGg4dEVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVy04VTB4OHRFZUc0Z1BDRXpuVk5PQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVy04NzRCOHRFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVy04NzRSOHRFZUc0Z1BDRXpuVk5PQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9XLTg3NGg4dEVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1ctODc0eDh0RWVHNGdQQ0V6blZOT0EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9XLTg3NUI4dEVlRzRnUENFem5WTk9BIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9XLTg3NVI4dEVlRzRnUENFem5WTk9BIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1ctODc1aDh0RWVHNGdQQ0V6blZOT0EiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1ctODc1eDh0RWVHNGdQQ0V6blZOT0EiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI18wMWM4Y0I4ckVlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9XLThVMFI4dEVlRzRnUENFem5WTk9BIiB4PSItMTAiIHk9Ijg1Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvQ2FiLnVtbCNfcUtybVlCOHNFZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3FLOTZRUjhzRWVHNGdQQ0V6blZOT0EiIHg9IjQyNSIgeT0iMzY3IiB3aWR0aD0iMjg2IiBoZWlnaHQ9IjEyMSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9GLVF3Smg4dkVlRzRnUENFem5WTk9BIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9GLVF3S0I4dkVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0YtUlhNQjh2RWVHNGdQQ0V6blZOT0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRi1SWE1SOHZFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0YtUlhNaDh2RWVHNGdQQ0V6blZOT0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9GLVJYTXg4dkVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9GLVJYTkI4dkVlRzRnUENFem5WTk9BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9GLVJYTlI4dkVlRzRnUENFem5WTk9BIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9GLVJYTmg4dkVlRzRnUENFem5WTk9BIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0YtUlhOeDh2RWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0YtUlhPQjh2RWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX01ybUswQjh2RWVHNGdQQ0V6blZOT0EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTXJtSzBoOHZFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01ybUsweDh2RWVHNGdQQ0V6blZOT0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01ybUsxQjh2RWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01ybXg0Qjh2RWVHNGdQQ0V6blZOT0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTXJteDRSOHZFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9Ncm14NGg4dkVlRzRnUENFem5WTk9BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTXJteDR4OHZFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTXJteDVCOHZFZUc0Z1BDRXpuVk5PQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9Ncm14NVI4dkVlRzRnUENFem5WTk9BIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9Ncm14NWg4dkVlRzRnUENFem5WTk9BIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6SzA2a19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTXJtSzBSOHZFZUc0Z1BDRXpuVk5PQSIgeD0iLTEwIiB5PSI0NyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfTXJteDV4OHZFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Ncm14NlI4dkVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTXJuWThCOHZFZUc0Z1BDRXpuVk5PQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTXJuWThSOHZFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTXJuWThoOHZFZUc0Z1BDRXpuVk5PQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Ncm5ZOHg4dkVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01yblk5Qjh2RWVHNGdQQ0V6blZOT0EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9Ncm5ZOVI4dkVlRzRnUENFem5WTk9BIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9Ncm5ZOWg4dkVlRzRnUENFem5WTk9BIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX01yblk5eDh2RWVHNGdQQ0V6blZOT0EiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX01yblktQjh2RWVHNGdQQ0V6blZOT0EiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19mZHpLMzZrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9Ncm14NkI4dkVlRzRnUENFem5WTk9BIiB4PSItMTEiIHk9IjIzOCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9Ncm5ZLVI4dkVlRzRnUENFem5WTk9BIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01yb0FBQjh2RWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9Ncm9BQVI4dkVlRzRnUENFem5WTk9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Ncm9BQWg4dkVlRzRnUENFem5WTk9BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9Ncm9BQXg4dkVlRzRnUENFem5WTk9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01yb0FCQjh2RWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTXJvQUJSOHZFZUc0Z1BDRXpuVk5PQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX01yb0FCaDh2RWVHNGdQQ0V6blZOT0EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX01yb0FCeDh2RWVHNGdQQ0V6blZOT0EiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTXJvQUNCOHZFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTXJvQUNSOHZFZUc0Z1BDRXpuVk5PQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX0dKenJVS2xiRWVDWWZibnhWU3laOWciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX01yblktaDh2RWVHNGdQQ0V6blZOT0EiIHg9Ii0xMCIgeT0iNzUiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX01yb0FDaDh2RWVHNGdQQ0V6blZOT0EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTXJvbkVCOHZFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01yb25FUjh2RWVHNGdQQ0V6blZOT0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01yb25FaDh2RWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01yb25FeDh2RWVHNGdQQ0V6blZOT0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTXJvbkZCOHZFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9Ncm9uRlI4dkVlRzRnUENFem5WTk9BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTXJvbkZoOHZFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTXJvbkZ4OHZFZUc0Z1BDRXpuVk5PQSIgeD0iLTE0NiIgeT0iLTIyIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTXJvbkdCOHZFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTXJvbkdSOHZFZUc0Z1BDRXpuVk5PQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjXzZWWXY0QjhyRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX01yb0FDeDh2RWVHNGdQQ0V6blZOT0EiIHg9IjI3OCIgeT0iMTMyIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9NcnBPSUI4dkVlRzRnUENFem5WTk9BIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01ycE9JaDh2RWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NcnBPSXg4dkVlRzRnUENFem5WTk9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NcnBPSkI4dkVlRzRnUENFem5WTk9BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NcnAxTUI4dkVlRzRnUENFem5WTk9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01ycDFNUjh2RWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTXJwMU1oOHZFZUc0Z1BDRXpuVk5PQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX01ycDFNeDh2RWVHNGdQQ0V6blZOT0EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX01ycDFOQjh2RWVHNGdQQ0V6blZOT0EiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTXJwMU5SOHZFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTXJwMU5oOHZFZUc0Z1BDRXpuVk5PQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjXzZvT3pZQjhyRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX01ycE9JUjh2RWVHNGdQQ0V6blZOT0EiIHg9Ii0xMCIgeT0iMTc3Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6Snpha19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0YtUXdKeDh2RWVHNGdQQ0V6blZOT0EiIHg9IjQyMyIgeT0iOTAiIHdpZHRoPSIyODgiIGhlaWdodD0iMjU1Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0NwNzF2eDhyRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il90UmVfUUI4c0VlRzRnUENFem5WTk9BIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdFJmbVVCOHNFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdFJmbVVSOHNFZUc0Z1BDRXpuVk5PQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3RSZm1VaDhzRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdFJmbVV4OHNFZUc0Z1BDRXpuVk5PQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdFJmbVZCOHNFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3RSZm1WUjhzRWVHNGdQQ0V6blZOT0EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3RSaXBvQjhzRWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3RULTVvQjhzRWVHNGdQQ0V6blZOT0EiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdFQtNW9SOHNFZUc0Z1BDRXpuVk5PQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdFQtNW9oOHNFZUc0Z1BDRXpuVk5PQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3RULTVveDhzRWVHNGdQQ0V6blZOT0EiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3RUX2dzQjhzRWVHNGdQQ0V6blZOT0EiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfdFJmbVZoOHNFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il90UmZtVng4c0VlRzRnUENFem5WTk9BIiB4PSIyNiIgeT0iLTgiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfdFJmbVdCOHNFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il90UmZtV1I4c0VlRzRnUENFem5WTk9BIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX3RSTXJZQjhzRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfdFJlX1FSOHNFZUc0Z1BDRXpuVk5PQSIgeD0iLTEwIiB5PSIzMDkiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzAwdGdJQjhzRWVHNGdQQ0V6blZOT0EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8wMHRnSWg4c0VlRzRnUENFem5WTk9BIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wMHRnSXg4c0VlRzRnUENFem5WTk9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMDB1SE1COHNFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wMHVITVI4c0VlRzRnUENFem5WTk9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8wMHVITWg4c0VlRzRnUENFem5WTk9BIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMDB1SE14OHNFZUc0Z1BDRXpuVk5PQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMDB4S2dCOHNFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMDNIVDRCOHNFZUc0Z1BDRXpuVk5PQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wM0hUNFI4c0VlRzRnUENFem5WTk9BIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wM0hUNGg4c0VlRzRnUENFem5WTk9BIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMDNIVDR4OHNFZUc0Z1BDRXpuVk5PQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMDNIVDVCOHNFZUc0Z1BDRXpuVk5PQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8wMHVITkI4c0VlRzRnUENFem5WTk9BIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzAwdUhOUjhzRWVHNGdQQ0V6blZOT0EiIHg9IjI1IiB5PSItOCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8wMHVITmg4c0VlRzRnUENFem5WTk9BIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzAwdUhOeDhzRWVHNGdQQ0V6blZOT0EiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfMDBjYVlCOHNFZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8wMHRnSVI4c0VlRzRnUENFem5WTk9BIiB4PSItMTAiIHk9IjM2NiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfdlFSWWNEVXJFZUc1cExfZnBOMkRnUSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3ZRUl9nRFVyRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3ZRUl9nVFVyRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il92UVJfZ2pVckVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3ZRUl9nelVyRWVHNXBMX2ZwTjJEZ1EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3ZRUl9oRFVyRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il92UVJfaFRVckVlRzVwTF9mcE4yRGdRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il92UVZDMERVckVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il92U2cwSURVckVlRzVwTF9mcE4yRGdRIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3ZTZzBJVFVyRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3ZTZzBJalVyRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il92U2cwSXpVckVlRzVwTF9mcE4yRGdRIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il92U2cwSkRVckVlRzVwTF9mcE4yRGdRIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3ZRUl9oalVyRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdlFSX2h6VXJFZUc1cExfZnBOMkRnUSIgeD0iMjUiIHk9Ii01Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3ZRUl9pRFVyRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdlFSX2lUVXJFZUc1cExfZnBOMkRnUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI192UF9yb0RVckVlRzVwTF9mcE4yRGdRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3ZRUlljVFVyRWVHNXBMX2ZwTjJEZ1EiIHg9Ii0xMCIgeT0iMTgxIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9fVkJPY0RVckVlRzVwTF9mcE4yRGdRIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfX1ZCT2NqVXJFZUc1cExfZnBOMkRnUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX1ZCT2N6VXJFZUc1cExfZnBOMkRnUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19WQk9kRFVyRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX1ZCT2RUVXJFZUc1cExfZnBOMkRnUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfX1ZCT2RqVXJFZUc1cExfZnBOMkRnUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19WQk9kelVyRWVHNXBMX2ZwTjJEZ1EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19WRTQwRFVyRWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19YUGNBRFVyRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX1hQY0FUVXJFZUc1cExfZnBOMkRnUSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX1hQY0FqVXJFZUc1cExfZnBOMkRnUSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19YUGNBelVyRWVHNXBMX2ZwTjJEZ1EiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19YUGNCRFVyRWVHNXBMX2ZwTjJEZ1EiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfX1ZCT2VEVXJFZUc1cExfZnBOMkRnUSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9fVkIxZ0RVckVlRzVwTF9mcE4yRGdRIiB4PSIyNSIgeT0iLTQiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfX1ZCMWdUVXJFZUc1cExfZnBOMkRnUSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9fVkIxZ2pVckVlRzVwTF9mcE4yRGdRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX19Vd0lzRFVyRWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfX1ZCT2NUVXJFZUc1cExfZnBOMkRnUSIgeD0iLTEwIiB5PSIyNzAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX192eDMwRFVyRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9fdnllNERVckVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fdnllNFRVckVlRzVwTF9mcE4yRGdRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfX3Z5ZTRqVXJFZUc1cExfZnBOMkRnUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fdnllNHpVckVlRzVwTF9mcE4yRGdRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9fdnllNURVckVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX3Z5ZTVUVXJFZUc1cExfZnBOMkRnUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfX3YySlFEVXJFZUc1cExfZnBOMkRnUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX3g0d29EVXJFZUc1cExfZnBOMkRnUSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9feDR3b1RVckVlRzVwTF9mcE4yRGdRIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9feDR3b2pVckVlRzVwTF9mcE4yRGdRIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX3g0d296VXJFZUc1cExfZnBOMkRnUSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX3g0d3BEVXJFZUc1cExfZnBOMkRnUSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9fdnllNWpVckVlRzVwTF9mcE4yRGdRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX192eWU1elVyRWVHNXBMX2ZwTjJEZ1EiIHg9IjI1IiB5PSItMSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9fdnpGOERVckVlRzVwTF9mcE4yRGdRIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX192ekY4VFVyRWVHNXBMX2ZwTjJEZ1EiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfX3ZoWklEVXJFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9fdngzMFRVckVlRzVwTF9mcE4yRGdRIiB4PSItMTAiIHk9IjIxMiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iUm9ib0NhYi51bWwjX2Zkekp5S2tfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0NwNzF3QjhyRWVHNGdQQ0V6blZOT0EiIHg9Ii03MCIgeT0iMzQiIHdpZHRoPSIxMDM5IiBoZWlnaHQ9IjYwMiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9BMGsyVVI4ckVlRzRnUENFem5WTk9BIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfa3M5V2huN0xFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iUm9ib0NhYi51bWwjX2Zkekp4NmtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0FQTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IlJvYm9DYWIudW1sI19mZHpKeDZrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2NiWldjQjh0RWVHNGdQQ0V6blZOT0EiIHR5cGU9IjQwMTMiIHNvdXJjZT0iXzAwdGdJQjhzRWVHNGdQQ0V6blZOT0EiIHRhcmdldD0iX1ctOFUwQjh0RWVHNGdQQ0V6blZOT0EiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9jYlpXY3g4dEVlRzRnUENFem5WTk9BIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfY2JaV2RCOHRFZUc0Z1BDRXpuVk5PQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9jYlo5Z0I4dEVlRzRnUENFem5WTk9BIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfY2JaOWdSOHRFZUc0Z1BDRXpuVk5PQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfY2JaOWdoOHRFZUc0Z1BDRXpuVk5PQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2NiWjlneDh0RWVHNGdQQ0V6blZOT0EiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfY2JaOWhCOHRFZUc0Z1BDRXpuVk5PQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2NiWjloUjh0RWVHNGdQQ0V6blZOT0EiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9jYlpXY1I4dEVlRzRnUENFem5WTk9BIiBmb250TmFtZT0iVWJ1bnR1Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iUm9ib0NhYi51bWwjX2NiQTc4Qjh0RWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2NiWldjaDh0RWVHNGdQQ0V6blZOT0EiIHBvaW50cz0iWzEwLCAwLCAtNDIwLCAtMTQwXSRbODAsIDAsIC0zNTAsIC0xNDBdJFsyMjUsIDAsIC0yMDUsIC0xNDBdJFsyMjUsIDE0MCwgLTIwNSwgMF0kWzQyMCwgMTQwLCAtMTAsIDBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfVU9ldGNCOHZFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfMDB0Z0lCOHNFZUc0Z1BDRXpuVk5PQSIgdGFyZ2V0PSJfTXJteDV4OHZFZUc0Z1BDRXpuVk5PQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1VPZlVnQjh2RWVHNGdQQ0V6blZOT0EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9VT2ZVZ1I4dkVlRzRnUENFem5WTk9BIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1VPZlVnaDh2RWVHNGdQQ0V6blZOT0EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9VT2ZVZ3g4dkVlRzRnUENFem5WTk9BIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9VT2ZVaEI4dkVlRzRnUENFem5WTk9BIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVU9mVWhSOHZFZUc0Z1BDRXpuVk5PQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9VT2ZVaGg4dkVlRzRnUENFem5WTk9BIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVU9mVWh4OHZFZUc0Z1BDRXpuVk5PQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX1VPZXRjUjh2RWVHNGdQQ0V6blZOT0EiIGZvbnROYW1lPSJVYnVudHUiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJSb2JvQ2FiLnVtbCNfVU9HUzhCOHZFZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfVU9ldGNoOHZFZUc0Z1BDRXpuVk5PQSIgcG9pbnRzPSJbMTAsIC0yLCAtNDkwLCA4Nl0kWzQ5NywgLTc4LCAtMywgMTBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfVmNsZlVCOHZFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfdFJlX1FCOHNFZUc0Z1BDRXpuVk5PQSIgdGFyZ2V0PSJfTXJwT0lCOHZFZUc0Z1BDRXpuVk5PQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1ZjbGZVeDh2RWVHNGdQQ0V6blZOT0EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9WY2xmVkI4dkVlRzRnUENFem5WTk9BIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1ZjbGZWUjh2RWVHNGdQQ0V6blZOT0EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9WY2xmVmg4dkVlRzRnUENFem5WTk9BIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9WY2xmVng4dkVlRzRnUENFem5WTk9BIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVmNtR1lCOHZFZUc0Z1BDRXpuVk5PQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9WY21HWVI4dkVlRzRnUENFem5WTk9BIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVmNtR1loOHZFZUc0Z1BDRXpuVk5PQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX1ZjbGZVUjh2RWVHNGdQQ0V6blZOT0EiIGZvbnROYW1lPSJVYnVudHUiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJSb2JvQ2FiLnVtbCNfVmNPUzhCOHZFZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfVmNsZlVoOHZFZUc0Z1BDRXpuVk5PQSIgcG9pbnRzPSJbMTAsIC0zLCAtNDE4LCAwXSRbOTUsIC0zLCAtMzMzLCAwXSRbNDE4LCAtMywgLTEwLCAwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX1hvdFlvQjh2RWVHNGdQQ0V6blZOT0EiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX01yb0FDaDh2RWVHNGdQQ0V6blZOT0EiIHRhcmdldD0iX0sweEk0QjhyRWVHNGdQQ0V6blZOT0EiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9Yb3Rfc0I4dkVlRzRnUENFem5WTk9BIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfWG90X3NSOHZFZUc0Z1BDRXpuVk5PQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9Yb3Rfc2g4dkVlRzRnUENFem5WTk9BIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfWG90X3N4OHZFZUc0Z1BDRXpuVk5PQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfWG90X3RCOHZFZUc0Z1BDRXpuVk5PQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1hvdF90Ujh2RWVHNGdQQ0V6blZOT0EiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfWG90X3RoOHZFZUc0Z1BDRXpuVk5PQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1hvdF90eDh2RWVHNGdQQ0V6blZOT0EiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9Yb3RZb1I4dkVlRzRnUENFem5WTk9BIiBmb250TmFtZT0iVWJ1bnR1Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iUm9ib0NhYi51bWwjX1hvWGFZQjh2RWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX1hvdFlvaDh2RWVHNGdQQ0V6blZOT0EiIHBvaW50cz0iWzEwLCAtMiwgLTEwMSwgLTJdJFsxMTEsIC0xMCwgMCwgLTEwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX0x0ZVk0RFVzRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX19WQk9jRFVyRWVHNXBMX2ZwTjJEZ1EiIHRhcmdldD0iX1ctN0d0Ujh0RWVHNGdQQ0V6blZOT0EiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9MdGVfOERVc0VlRzVwTF9mcE4yRGdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTHRlXzhUVXNFZUc1cExfZnBOMkRnUSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9MdGVfOGpVc0VlRzVwTF9mcE4yRGdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTHRlXzh6VXNFZUc1cExfZnBOMkRnUSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTHRlXzlEVXNFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0x0ZV85VFVzRWVHNXBMX2ZwTjJEZ1EiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTHRmbkFEVXNFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0x0Zm5BVFVzRWVHNXBMX2ZwTjJEZ1EiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9MdGVZNFRVc0VlRzVwTF9mcE4yRGdRIiBmb250TmFtZT0iVWJ1bnR1Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iUm9ib0NhYi51bWwjX0x0TjZNRFVzRWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX0x0ZVk0alVzRWVHNXBMX2ZwTjJEZ1EiIHBvaW50cz0iWzEwLCAwLCAtNDIwLCAtMTg2XSRbMjQ1LCAwLCAtMTg1LCAtMTg2XSRbMjQ1LCAxODYsIC0xODUsIDBdJFs0MjAsIDE4NiwgLTEwLCAwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX1JDN2FvRFVzRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX1ctNmZvQjh0RWVHNGdQQ0V6blZOT0EiIHRhcmdldD0iX3ZRUlljRFVyRWVHNXBMX2ZwTjJEZ1EiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9SQzhCc0RVc0VlRzVwTF9mcE4yRGdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfUkM4QnNUVXNFZUc1cExfZnBOMkRnUSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9SQzhCc2pVc0VlRzVwTF9mcE4yRGdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfUkM4QnN6VXNFZUc1cExfZnBOMkRnUSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfUkM4QnREVXNFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1JDOEJ0VFVzRWVHNXBMX2ZwTjJEZ1EiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfUkM4QnRqVXNFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1JDOEJ0elVzRWVHNXBMX2ZwTjJEZ1EiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9SQzdhb1RVc0VlRzVwTF9mcE4yRGdRIiBmb250TmFtZT0iVWJ1bnR1Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iUm9ib0NhYi51bWwjX1JDdFlNRFVzRWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX1JDN2FvalVzRWVHNXBMX2ZwTjJEZ1EiIHBvaW50cz0iWy0xMCwgMCwgNDIwLCAyNDBdJFstMTU1LCAwLCAyNzUsIDI0MF0kWy0xNTUsIC0yNDAsIDI3NSwgMF0kWy00MjAsIC0yNDAsIDEwLCAwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX1J5QUhJRFVzRWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX192eDMwRFVyRWVHNXBMX2ZwTjJEZ1EiIHRhcmdldD0iX01yblktUjh2RWVHNGdQQ0V6blZOT0EiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9SeUFISXpVc0VlRzVwTF9mcE4yRGdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfUnlBSEpEVXNFZUc1cExfZnBOMkRnUSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9SeUFISlRVc0VlRzVwTF9mcE4yRGdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfUnlBSEpqVXNFZUc1cExfZnBOMkRnUSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfUnlBdU1EVXNFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1J5QXVNVFVzRWVHNXBMX2ZwTjJEZ1EiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfUnlBdU1qVXNFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1J5QXVNelVzRWVHNXBMX2ZwTjJEZ1EiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9SeUFISVRVc0VlRzVwTF9mcE4yRGdRIiBmb250TmFtZT0iVWJ1bnR1Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iUm9ib0NhYi51bWwjX1J4dkJZRFVzRWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX1J5QUhJalVzRWVHNXBMX2ZwTjJEZ1EiIHBvaW50cz0iWzEwLCAtMSwgLTQxOCwgMTJdJFs0MjYsIC0yMywgLTIsIC0xMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9TWnhSd0RVc0VlRzVwTF9mcE4yRGdRIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il92UVJZY0RVckVlRzVwTF9mcE4yRGdRIiB0YXJnZXQ9Il9Ncm1LMEI4dkVlRzRnUENFem5WTk9BIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfU1p4NDBqVXNFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1NaeDQwelVzRWVHNXBMX2ZwTjJEZ1EiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfU1p4NDFEVXNFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1NaeDQxVFVzRWVHNXBMX2ZwTjJEZ1EiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1NaeDQxalVzRWVHNXBMX2ZwTjJEZ1EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9TWng0MXpVc0VlRzVwTF9mcE4yRGdRIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1NaeWY0RFVzRWVHNXBMX2ZwTjJEZ1EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9TWnlmNFRVc0VlRzVwTF9mcE4yRGdRIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfU1p4NDBEVXNFZUc1cExfZnBOMkRnUSIgZm9udE5hbWU9IlVidW50dSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IlJvYm9DYWIudW1sI19TWmlCTURVc0VlRzVwTF9mcE4yRGdRIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9TWng0MFRVc0VlRzVwTF9mcE4yRGdRIiBwb2ludHM9IlsxMCwgLTgsIC00MTgsIDFdJFs0MzMsIDEsIDUsIDEwXSIvPgorICAgIDwvZWRnZXM+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfTzQzSkVCOHVFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJDaGFsbGVuZ2VyU3BhY2VEaWFncmFtIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9SRW5POEI4dUVlRzRnUENFem5WTk9BIiB0eXBlPSIyMDczIiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUkVuTzhSOHVFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1JFbk84aDh1RWVHNGdQQ0V6blZOT0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1JFbk84eDh1RWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1JFbk85Qjh1RWVHNGdQQ0V6blZOT0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUkVuTzlSOHVFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9SRW5POWg4dUVlRzRnUENFem5WTk9BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1JFbk85eDh1RWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9lWV9iWUVIbUVlR0dYcEdzY3BramRnIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9lWV9iWVVIbUVlR0dYcEdzY3BramRnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6U3lzdGVtIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZVlfYllrSG1FZUdHWHBHc2Nwa2pkZyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2VZX2JZMEhtRWVHR1hwR3NjcGtqZGciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9lWV9iWkVIbUVlR0dYcEdzY3BramRnIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01heEljS0VNRWVLTFVxWDlJSnEyR2ciIHNvdXJjZT0iUGFweXJ1c0h5cGVyTGlua19EaWFncmFtIiByZWZlcmVuY2VzPSJfT0NWRmtCd0FFZUdhNWJIX1JKRnpCUSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTWF4SWNhRU1FZUtMVXFYOUlKcTJHZyIga2V5PSJ0b29sdGlwX3RleHQiIHZhbHVlPSJSb2JvY2FiRGVmYXVsdEFyY2hpdGVjdHVyZSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01heEljcUVNRWVLTFVxWDlJSnEyR2ciIGtleT0iZGlhZ3JhbV9uYW1lIiB2YWx1ZT0iUm9ib2NhYkRlZmF1bHRBcmNoaXRlY3R1cmUiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NYXhJYzZFTUVlS0xVcVg5SUpxMkdnIiBrZXk9ImlzX2RlZmF1bHRfbmF2aWdhdGlvbiIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfUkVuT19SOHVFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9SRW5PX2g4dUVlRzRnUENFem5WTk9BIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0NPTFlvS0VNRWVLTFVxWDlJSnEyR2ciIHNvdXJjZT0iUGFweXJ1c0h5cGVyTGlua19EaWFncmFtIiByZWZlcmVuY2VzPSJfTzQzSkVCOHVFZUc0Z1BDRXpuVk5PQSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9DT0xZb2FFTUVlS0xVcVg5SUpxMkdnIiBrZXk9InRvb2x0aXBfdGV4dCIgdmFsdWU9IkNoYWxsZW5nZXJTcGFjZURpYWdyYW0iLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0NPTFlvcUVNRWVLTFVxWDlJSnEyR2ciIGtleT0iZGlhZ3JhbV9uYW1lIiB2YWx1ZT0iQ2hhbGxlbmdlclNwYWNlRGlhZ3JhbSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQ09MWW82RU1FZUtMVXFYOUlKcTJHZyIga2V5PSJpc19kZWZhdWx0X25hdmlnYXRpb24iIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9SRW5QQ3g4dUVlRzRnUENFem5WTk9BIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSI3IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9SRW5QREI4dUVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1JFblBEUjh1RWVHNGdQQ0V6blZOT0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUkVuUERoOHVFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1JFblBEeDh1RWVHNGdQQ0V6blZOT0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9SRW5QRUI4dUVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9SRW5QRVI4dUVlRzRnUENFem5WTk9BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9SRW5QRWg4dUVlRzRnUENFem5WTk9BIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9SRW5QRXg4dUVlRzRnUENFem5WTk9BIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1JFblBGQjh1RWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1JFblBGUjh1RWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0NoTE9FR2JVRWVHR051WDFJSGcxemciIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQ2hMT0VtYlVFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0NoTE9FMmJVRWVHR051WDFJSGcxemciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0NoTE9GR2JVRWVHR051WDFJSGcxemciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0NoTE9GV2JVRWVHR051WDFJSGcxemciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQ2hMT0ZtYlVFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9DaExPRjJiVUVlR0dOdVgxSUhnMXpnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfQ2hMT0dHYlVFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQ2hMT0dXYlVFZUdHTnVYMUlIZzF6ZyIgeD0iMjAiIHk9IjE1Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfQ2hMT0dtYlVFZUdHTnVYMUlIZzF6ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0NoTE9HMmJVRWVHR051WDFJSGcxemciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19Sc2IxY0J3a0VlR2E1YkhfUkpGekJRIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9DaExPRVdiVUVlR0dOdVgxSUhnMXpnIiB4PSItMTEiIHk9IjY4IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0NoTE9IR2JVRWVHR051WDFJSGcxemciIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQ2hMT0htYlVFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0NoTE9IMmJVRWVHR051WDFJSGcxemciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0NoTE9JR2JVRWVHR051WDFJSGcxemciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0NoTE9JV2JVRWVHR051WDFJSGcxemciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQ2hMT0ltYlVFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9DaExPSTJiVUVlR0dOdVgxSUhnMXpnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfQ2hMT0pHYlVFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQ2hMT0pXYlVFZUdHTnVYMUlIZzF6ZyIgeD0iMjUiIHk9IjUiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9DaExPSm1iVUVlR0dOdVgxSUhnMXpnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQ2hMT0oyYlVFZUdHTnVYMUlIZzF6ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX1cyVzhvQndrRWVHYTViSF9SSkZ6QlEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0NoTE9IV2JVRWVHR051WDFJSGcxemciIHg9Ii0xMCIgeT0iMjUiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0NoTE9LR2JVRWVHR051WDFJSGcxemciIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQ2hMT0ttYlVFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0NoTE9LMmJVRWVHR051WDFJSGcxemciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0NoTE9MR2JVRWVHR051WDFJSGcxemciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0NoTE9MV2JVRWVHR051WDFJSGcxemciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQ2hMT0xtYlVFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9DaExPTDJiVUVlR0dOdVgxSUhnMXpnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfQ2hMT01HYlVFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQ2hMT01XYlVFZUdHTnVYMUlIZzF6ZyIgeD0iLTEzMSIgeT0iNSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0NoTE9NbWJVRWVHR051WDFJSGcxemciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9DaExPTTJiVUVlR0dOdVgxSUhnMXpnIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfZjZhLUlCd2tFZUdhNWJIX1JKRnpCUSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfQ2hMT0tXYlVFZUdHTnVYMUlIZzF6ZyIgeD0iMjA2IiB5PSI0NyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib0NhYi51bWwjX2ZkekxKNmtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9SRW5QRmg4dUVlRzRnUENFem5WTk9BIiB4PSI0MzUiIHk9IjM4OCIgd2lkdGg9IjIxNiIgaGVpZ2h0PSI5NiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9SRW5QRng4dUVlRzRnUENFem5WTk9BIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSI3IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9SRW5QR0I4dUVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1JFblBHUjh1RWVHNGdQQ0V6blZOT0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUkVuUEdoOHVFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1JFblBHeDh1RWVHNGdQQ0V6blZOT0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9SRW5QSEI4dUVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9SRW5QSFI4dUVlRzRnUENFem5WTk9BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9SRW5QSGg4dUVlRzRnUENFem5WTk9BIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9SRW5QSHg4dUVlRzRnUENFem5WTk9BIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1JFblBJQjh1RWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1JFblBJUjh1RWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0hTZ1BFR2JVRWVHR051WDFJSGcxemciIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSFNnUEVtYlVFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0hTZ1BFMmJVRWVHR051WDFJSGcxemciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0hTZ1BGR2JVRWVHR051WDFJSGcxemciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0hTZ1BGV2JVRWVHR051WDFJSGcxemciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSFNnUEZtYlVFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9IU2dQRjJiVUVlR0dOdVgxSUhnMXpnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfSFNnUEdHYlVFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9MRU1fRUdiVUVlR0dOdVgxSUhnMXpnIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9MTV91c0diVUVlR0dOdVgxSUhnMXpnIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNTIiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfSFNnUEdXYlVFZUdHTnVYMUlIZzF6ZyIgeD0iMjAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9IU2dQR21iVUVlR0dOdVgxSUhnMXpnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfSFNnUEcyYlVFZUdHTnVYMUlIZzF6ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX2ZkektJNmtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0hTZ1BFV2JVRWVHR051WDFJSGcxemciIHg9Ii0xMSIgeT0iODQiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfSFNnUEhHYlVFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9IU2dQSG1iVUVlR0dOdVgxSUhnMXpnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSFNnUEgyYlVFZUdHTnVYMUlIZzF6ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSFNnUElHYlVFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSFNnUElXYlVFZUdHTnVYMUlIZzF6ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9IU2dQSW1iVUVlR0dOdVgxSUhnMXpnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0hTZ1BJMmJVRWVHR051WDFJSGcxemciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9IU2dQSkdiVUVlR0dOdVgxSUhnMXpnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0ptbm13R2JVRWVHR051WDFJSGcxemciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX09IdE1VR2JVRWVHR051WDFJSGcxemciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI2MCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9IU2dQSldiVUVlR0dOdVgxSUhnMXpnIiB4PSIxNSIgeT0iLTEzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfSFNnUEptYlVFZUdHTnVYMUlIZzF6ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0hTZ1BKMmJVRWVHR051WDFJSGcxemciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19mZHpLSjZrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9IU2dQSFdiVUVlR0dOdVgxSUhnMXpnIiB4PSItMTEiIHk9IjQ5IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0hTZ1BLR2JVRWVHR051WDFJSGcxemciIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSFNnUEttYlVFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0hTZ1BLMmJVRWVHR051WDFJSGcxemciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0hTZ1BMR2JVRWVHR051WDFJSGcxemciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0hTZ1BMV2JVRWVHR051WDFJSGcxemciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSFNnUExtYlVFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9IU2dQTDJiVUVlR0dOdVgxSUhnMXpnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfSFNnUE1HYlVFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9OZFljOEdiVUVlR0dOdVgxSUhnMXpnIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9Ob1EzUUdiVUVlR0dOdVgxSUhnMXpnIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNTIiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfSFNnUE1XYlVFZUdHTnVYMUlIZzF6ZyIgeD0iLTE0NiIgeT0iMjciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9IU2dQTW1iVUVlR0dOdVgxSUhnMXpnIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9IU2dQTTJiVUVlR0dOdVgxSUhnMXpnIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6S0s2a19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfSFNnUEtXYlVFZUdHTnVYMUlIZzF6ZyIgeD0iMTc2IiB5PSIzNSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfSFNnUE5HYlVFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9IU2dQTm1iVUVlR0dOdVgxSUhnMXpnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSFNnUE4yYlVFZUdHTnVYMUlIZzF6ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSFNnUE9HYlVFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSFNnUE9XYlVFZUdHTnVYMUlIZzF6ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9IU2dQT21iVUVlR0dOdVgxSUhnMXpnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0hTZ1BPMmJVRWVHR051WDFJSGcxemciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9IU2dQUEdiVUVlR0dOdVgxSUhnMXpnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01BUVhvR2JVRWVHR051WDFJSGcxemciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX011bUVVR2JVRWVHR051WDFJSGcxemciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI2MCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9IU2dQUFdiVUVlR0dOdVgxSUhnMXpnIiB4PSItMTExIiB5PSIyIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfSFNnUFBtYlVFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfSFNnUFAyYlVFZUdHTnVYMUlIZzF6ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX2ZkektMNmtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0hTZ1BOV2JVRWVHR051WDFJSGcxemciIHg9IjE3NSIgeT0iOTkiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib0NhYi51bWwjX2ZkekxRcWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9SRW5QSWg4dUVlRzRnUENFem5WTk9BIiB4PSIyMTUiIHk9IjIxMyIgd2lkdGg9IjE4NiIgaGVpZ2h0PSIxMzEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfUkVuUEl4OHVFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iMzA3MCIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iNyIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUkVuUEpCOHVFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9SRW5QSlI4dUVlRzRnUENFem5WTk9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1JFblBKaDh1RWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9SRW5QSng4dUVlRzRnUENFem5WTk9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUkVuUEtCOHVFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUkVuUEtSOHVFZUc0Z1BDRXpuVk5PQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfUkVuUEtoOHVFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfUkVuUEt4OHVFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9SRW5QTEI4dUVlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9SRW5QTFI4dUVlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9fcXBGMEdiVEVlR0dOdVgxSUhnMXpnIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19xcEYwbWJURWVHR051WDFJSGcxemciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fcXBGMDJiVEVlR0dOdVgxSUhnMXpnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9fcXBGMUdiVEVlR0dOdVgxSUhnMXpnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fcXBGMVdiVEVlR0dOdVgxSUhnMXpnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19xcEYxbWJURWVHR051WDFJSGcxemciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX3FwRjEyYlRFZUdHTnVYMUlIZzF6ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX19xcEYyR2JURWVHR051WDFJSGcxemciIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSGxBZTRHYlZFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSHdWbElHYlZFZUdHTnVYMUlIZzF6ZyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjUyIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX19xcEYyV2JURWVHR051WDFJSGcxemciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfX3FwRjJtYlRFZUdHTnVYMUlIZzF6ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX19xcEYyMmJURWVHR051WDFJSGcxemciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19mZHpLWmFrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9fcXBGMFdiVEVlR0dOdVgxSUhnMXpnIiB4PSItMTAiIHk9IjI1Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9fcXBGM0diVEVlR0dOdVgxSUhnMXpnIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19xcEYzbWJURWVHR051WDFJSGcxemciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fcXBGMzJiVEVlR0dOdVgxSUhnMXpnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9fcXBGNEdiVEVlR0dOdVgxSUhnMXpnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fcXBGNFdiVEVlR0dOdVgxSUhnMXpnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19xcEY0bWJURWVHR051WDFJSGcxemciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX3FwRjQyYlRFZUdHTnVYMUlIZzF6ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX19xcEY1R2JURWVHR051WDFJSGcxemciIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSU1OQndHYlZFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSVVaVWNHYlZFZUdHTnVYMUlIZzF6ZyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjUyIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX19xcEY1V2JURWVHR051WDFJSGcxemciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfX3FwRjVtYlRFZUdHTnVYMUlIZzF6ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX19xcEY1MmJURWVHR051WDFJSGcxemciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19mZHpLYWFrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9fcXBGM1diVEVlR0dOdVgxSUhnMXpnIiB4PSItMTAiIHk9IjEyMCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfX3FwRjZHYlRFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9fcXBGNm1iVEVlR0dOdVgxSUhnMXpnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX3FwRjYyYlRFZUdHTnVYMUlIZzF6ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfX3FwRjdHYlRFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX3FwRjdXYlRFZUdHTnVYMUlIZzF6ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9fcXBGN21iVEVlR0dOdVgxSUhnMXpnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19xcEY3MmJURWVHR051WDFJSGcxemciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9fcXBGOEdiVEVlR0dOdVgxSUhnMXpnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0tzLThjR2JWRWVHR051WDFJSGcxemciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0sxTDJNR2JWRWVHR051WDFJSGcxemciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI1MiIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9fcXBGOFdiVEVlR0dOdVgxSUhnMXpnIiB4PSItMTE2IiB5PSIxNSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX19xcEY4bWJURWVHR051WDFJSGcxemciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9fcXBGODJiVEVlR0dOdVgxSUhnMXpnIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6S2Nha19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfX3FwRjZXYlRFZUdHTnVYMUlIZzF6ZyIgeD0iMjIxIiB5PSI0MCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfX3FwRjlHYlRFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9fcXBGOW1iVEVlR0dOdVgxSUhnMXpnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX3FwRjkyYlRFZUdHTnVYMUlIZzF6ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfX3FwRi1HYlRFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX3FwRi1XYlRFZUdHTnVYMUlIZzF6ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9fcXBGLW1iVEVlR0dOdVgxSUhnMXpnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19xcEYtMmJURWVHR051WDFJSGcxemciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9fcXBGX0diVEVlR0dOdVgxSUhnMXpnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0l3M09BR2JWRWVHR051WDFJSGcxemciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0k0bTB3R2JWRWVHR051WDFJSGcxemciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI1MiIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9fcXBGX1diVEVlR0dOdVgxSUhnMXpnIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX19xcEZfbWJURWVHR051WDFJSGcxemciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9fcXBGXzJiVEVlR0dOdVgxSUhnMXpnIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfZ0ZZeFlCOHNFZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfX3FwRjlXYlRFZUdHTnVYMUlIZzF6ZyIgeD0iLTEwIiB5PSI4NSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib0NhYi51bWwjX2ZkekxScWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9SRW5QWGg4dUVlRzRnUENFem5WTk9BIiB4PSI3MTUiIHk9IjIyOCIgd2lkdGg9IjIzMSIgaGVpZ2h0PSIxNTEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfUkVuUFh4OHVFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iMzA3MCIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iNyIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUkVuUFlCOHVFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9SRW5QWVI4dUVlRzRnUENFem5WTk9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1JFblBZaDh1RWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9SRW5QWXg4dUVlRzRnUENFem5WTk9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUkVuUFpCOHVFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUkVuUFpSOHVFZUc0Z1BDRXpuVk5PQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfUkVuUFpoOHVFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfUkVuUFp4OHVFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9SRW5QYUI4dUVlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9SRW5QYVI4dUVlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9nVlBKTUdiVEVlR0dOdVgxSUhnMXpnIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2dWWTZNR2JURWVHR051WDFJSGcxemciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9nVlk2TVdiVEVlR0dOdVgxSUhnMXpnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9nVlk2TW1iVEVlR0dOdVgxSUhnMXpnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9nVlk2TTJiVEVlR0dOdVgxSUhnMXpnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2dWWTZOR2JURWVHR051WDFJSGcxemciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZ1ZZNk5XYlRFZUdHTnVYMUlIZzF6ZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2dWWTZObWJURWVHR051WDFJSGcxemciIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2dWWTZOMmJURWVHR051WDFJSGcxemciIHg9IjIwIiB5PSI1Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZ1ZZNk9HYlRFZUdHTnVYMUlIZzF6ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2dWWTZPV2JURWVHR051WDFJSGcxemciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19mZHpLNmFrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9nVlBKTVdiVEVlR0dOdVgxSUhnMXpnIiB4PSItMTAiIHk9IjE0NSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZ1ZZNk9tYlRFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9nVlk2UEdiVEVlR0dOdVgxSUhnMXpnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZ1ZZNlBXYlRFZUdHTnVYMUlIZzF6ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZ1ZZNlBtYlRFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZ1ZZNlAyYlRFZUdHTnVYMUlIZzF6ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9nVlk2UUdiVEVlR0dOdVgxSUhnMXpnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2dWWTZRV2JURWVHR051WDFJSGcxemciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9nVlk2UW1iVEVlR0dOdVgxSUhnMXpnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3JQUmk4R2JWRWVHR051WDFJSGcxemciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3JZRVNrR2JWRWVHR051WDFJSGcxemciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI1MiIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9nVlk2UTJiVEVlR0dOdVgxSUhnMXpnIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2dWWTZSR2JURWVHR051WDFJSGcxemciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9nVlk2UldiVEVlR0dOdVgxSUhnMXpnIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6Szlha19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZ1ZZNk8yYlRFZUdHTnVYMUlIZzF6ZyIgeD0iLTExIiB5PSIyMjkiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZ1ZZNlJtYlRFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9nVlk2U0diVEVlR0dOdVgxSUhnMXpnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZ1ZZNlNXYlRFZUdHTnVYMUlIZzF6ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZ1ZZNlNtYlRFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZ1ZZNlMyYlRFZUdHTnVYMUlIZzF6ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9nVlk2VEdiVEVlR0dOdVgxSUhnMXpnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2dWWTZUV2JURWVHR051WDFJSGcxemciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9nVlk2VG1iVEVlR0dOdVgxSUhnMXpnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3Z3Y1M4R2JURWVHR051WDFJSGcxemciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3dPaWtNR2JURWVHR051WDFJSGcxemciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI1MiIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9nVlk2VDJiVEVlR0dOdVgxSUhnMXpnIiB4PSItODEiIHk9IjUiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9nVlk2VUdiVEVlR0dOdVgxSUhnMXpnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZ1ZZNlVXYlRFZUdHTnVYMUlIZzF6ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX2ZkekstYWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2dWWTZSMmJURWVHR051WDFJSGcxemciIHg9IjIyNSIgeT0iMjM0IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2dWWTZVbWJURWVHR051WDFJSGcxemciIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZ1ZZNlZHYlRFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2dWWTZWV2JURWVHR051WDFJSGcxemciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2dWWTZWbWJURWVHR051WDFJSGcxemciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2dWWTZWMmJURWVHR051WDFJSGcxemciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZ1ZZNldHYlRFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9nVlk2V1diVEVlR0dOdVgxSUhnMXpnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZ1ZZNldtYlRFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZ1ZZNlcyYlRFZUdHTnVYMUlIZzF6ZyIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9nVlk2WEdiVEVlR0dOdVgxSUhnMXpnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZ1ZZNlhXYlRFZUdHTnVYMUlIZzF6ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX1VJT2JFS2xvRWVDTGt1NFJGckk3dXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2dWWTZVMmJURWVHR051WDFJSGcxemciIHg9Ii0xMSIgeT0iMTEzIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2dWWTZYbWJURWVHR051WDFJSGcxemciIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZ1ZZNllHYlRFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2dWWTZZV2JURWVHR051WDFJSGcxemciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2dWWTZZbWJURWVHR051WDFJSGcxemciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2dWWTZZMmJURWVHR051WDFJSGcxemciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZ1ZZNlpHYlRFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9nVlk2WldiVEVlR0dOdVgxSUhnMXpnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZ1ZZNlptYlRFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZ1ZZNloyYlRFZUdHTnVYMUlIZzF6ZyIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9nVlk2YUdiVEVlR0dOdVgxSUhnMXpnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZ1ZZNmFXYlRFZUdHTnVYMUlIZzF6ZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX1VlZ21JRFVyRWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2dWWTZYMmJURWVHR051WDFJSGcxemciIHg9Ii0xMSIgeT0iNDMiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZ1ZZNmFtYlRFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9nVlk2YkdiVEVlR0dOdVgxSUhnMXpnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZ1ZZNmJXYlRFZUdHTnVYMUlIZzF6ZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZ1ZZNmJtYlRFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZ1ZZNmIyYlRFZUdHTnVYMUlIZzF6ZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9nVlk2Y0diVEVlR0dOdVgxSUhnMXpnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2dWWTZjV2JURWVHR051WDFJSGcxemciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9nVlk2Y21iVEVlR0dOdVgxSUhnMXpnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9nVlk2YzJiVEVlR0dOdVgxSUhnMXpnIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2dWWTZkR2JURWVHR051WDFJSGcxemciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9nVlk2ZFdiVEVlR0dOdVgxSUhnMXpnIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfYmVTYnNEVXJFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZ1ZZNmEyYlRFZUdHTnVYMUlIZzF6ZyIgeD0iLTEwIiB5PSI3NSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib0NhYi51bWwjX2ZkekxTcWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9SRW5QYWg4dUVlRzRnUENFem5WTk9BIiB4PSI0MzUiIHk9IjE4IiB3aWR0aD0iMjM2IiBoZWlnaHQ9IjI2NiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9SRW5QZHg4dUVlRzRnUENFem5WTk9BIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfUkVuMkF4OHVFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1JFbjJCQjh1RWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1JFbjJCUjh1RWVHNGdQQ0V6blZOT0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9SRW4yQmg4dUVlRzRnUENFem5WTk9BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1JFbjJCeDh1RWVHNGdQQ0V6blZOT0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1JFbjJDQjh1RWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9SRW4yQ1I4dUVlRzRnUENFem5WTk9BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1JFbjJDaDh1RWVHNGdQQ0V6blZOT0EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfUkVuMkN4OHVFZUc0Z1BDRXpuVk5PQSIgeD0iMjUiIHk9Ii00Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1JFbjJEQjh1RWVHNGdQQ0V6blZOT0EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1JFbjJEUjh1RWVHNGdQQ0V6blZOT0EiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6TE5xa19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9SRW4yRGg4dUVlRzRnUENFem5WTk9BIiB4PSItMTAiIHk9IjMzNSIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfUkVuMkR4OHVFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1JFbjJFQjh1RWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1JFbjJFUjh1RWVHNGdQQ0V6blZOT0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9SRW4yRWg4dUVlRzRnUENFem5WTk9BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1JFbjJFeDh1RWVHNGdQQ0V6blZOT0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1JFbjJGQjh1RWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9SRW4yRlI4dUVlRzRnUENFem5WTk9BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1JFbjJGaDh1RWVHNGdQQ0V6blZOT0EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfUkVuMkZ4OHVFZUc0Z1BDRXpuVk5PQSIgeD0iMjUiIHk9Ii05Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1JFbjJHQjh1RWVHNGdQQ0V6blZOT0EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1JFbjJHUjh1RWVHNGdQQ0V6blZOT0EiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfTEE4cVVLbGtFZUNMa3U0UkZySTd1dyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9SRW4yR2g4dUVlRzRnUENFem5WTk9BIiB4PSItMTEiIHk9IjE2OSIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfUkVuMkp4OHVFZUc0Z1BDRXpuVk5PQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1JFbjJLQjh1RWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1JFbjJLUjh1RWVHNGdQQ0V6blZOT0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9SRW4yS2g4dUVlRzRnUENFem5WTk9BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1JFbjJLeDh1RWVHNGdQQ0V6blZOT0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1JFbjJMQjh1RWVHNGdQQ0V6blZOT0EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9SRW4yTFI4dUVlRzRnUENFem5WTk9BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1JFbjJMaDh1RWVHNGdQQ0V6blZOT0EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZ1hna29HYlVFZUdHTnVYMUlIZzF6ZyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9namJnd0diVUVlR0dOdVgxSUhnMXpnIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNTIiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1JFbjJMeDh1RWVHNGdQQ0V6blZOT0EiIHg9Ii0xMzYiIHk9IjEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1JFbjJNQjh1RWVHNGdQQ0V6blZOT0EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1JFbjJNUjh1RWVHNGdQQ0V6blZOT0EiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfSW1GREFLbG5FZUNMa3U0UkZySTd1dyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9SRW4yTWg4dUVlRzRnUENFem5WTk9BIiB4PSIxMDUwIiB5PSIzMDQiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2VndVpVQjh2RWVHNGdQQ0V6blZOT0EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lZ3ZBWUI4dkVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9lZ3ZBWVI4dkVlRzRnUENFem5WTk9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZWd2QVloOHZFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9lZ3ZBWXg4dkVlRzRnUENFem5WTk9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lZ3ZBWkI4dkVlRzRnUENFem5WTk9BIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZWd2QVpSOHZFZUc0Z1BDRXpuVk5PQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZWd6UjBCOHZFZUc0Z1BDRXpuVk5PQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVjhVLVFLRU1FZUtMVXFYOUlKcTJHZyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9WOFUtUWFFTUVlS0xVcVg5SUpxMkdnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9WOFUtUXFFTUVlS0xVcVg5SUpxMkdnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVjhVLVE2RU1FZUtMVXFYOUlKcTJHZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVjhVLVJLRU1FZUtMVXFYOUlKcTJHZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9lZ3ZBWmg4dkVlRzRnUENFem5WTk9BIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2VndkFaeDh2RWVHNGdQQ0V6blZOT0EiIHg9IjIwIiB5PSItOSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9lZ3ZBYUI4dkVlRzRnUENFem5WTk9BIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9lZ3ZBYVI4dkVlRzRnUENFem5WTk9BIiB4PSI0NSIgeT0iLTE0Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX2VnU1VjQjh2RWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZWd1WlVSOHZFZUc0Z1BDRXpuVk5PQSIgeD0iLTExIiB5PSI5OSIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfRmc1Q01COHdFZUdldE9MZmtMTndmZyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0ZnNXBRQjh3RWVHZXRPTGZrTE53ZmciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0ZnNXBRUjh3RWVHZXRPTGZrTE53ZmciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9GZzVwUWg4d0VlR2V0T0xma0xOd2ZnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0ZnNlFVQjh3RWVHZXRPTGZrTE53ZmciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0ZnNlFVUjh3RWVHZXRPTGZrTE53ZmciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9GZzZRVWg4d0VlR2V0T0xma0xOd2ZnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9GaEJsRUI4d0VlR2V0T0xma0xOd2ZnIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9GanRzc0I4d0VlR2V0T0xma0xOd2ZnIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0ZqdHNzUjh3RWVHZXRPTGZrTE53ZmciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0ZqdHNzaDh3RWVHZXRPTGZrTE53ZmciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9GanRzc3g4d0VlR2V0T0xma0xOd2ZnIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9GanRzdEI4d0VlR2V0T0xma0xOd2ZnIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0ZnNlFVeDh3RWVHZXRPTGZrTE53ZmciIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfRmc2UVZCOHdFZUdldE9MZmtMTndmZyIgeD0iMjAiIHk9Ii00Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0ZnNlFWUjh3RWVHZXRPTGZrTE53ZmciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0ZnNlFWaDh3RWVHZXRPTGZrTE53ZmciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfRmdidk1COHdFZUdldE9MZmtMTndmZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9GZzVDTVI4d0VlR2V0T0xma0xOd2ZnIiB4PSItMTEiIHk9IjQ5NCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfTmtZLWtCOHdFZUdldE9MZmtMTndmZyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX05rWmxvQjh3RWVHZXRPTGZrTE53ZmciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX05rWmxvUjh3RWVHZXRPTGZrTE53ZmciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Oa1psb2g4d0VlR2V0T0xma0xOd2ZnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX05rWmxveDh3RWVHZXRPTGZrTE53ZmciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX05rWmxwQjh3RWVHZXRPTGZrTE53ZmciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9Oa1pscFI4d0VlR2V0T0xma0xOd2ZnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Oa2RRQUI4d0VlR2V0T0xma0xOd2ZnIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ObV9tb0I4d0VlR2V0T0xma0xOd2ZnIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX05tX21vUjh3RWVHZXRPTGZrTE53ZmciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX05uQU5zQjh3RWVHZXRPTGZrTE53ZmciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ObkFOc1I4d0VlR2V0T0xma0xOd2ZnIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ObkFOc2g4d0VlR2V0T0xma0xOd2ZnIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX05rWmxwaDh3RWVHZXRPTGZrTE53ZmciIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTmtabHB4OHdFZUdldE9MZmtMTndmZyIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTmtabHFCOHdFZUdldE9MZmtMTndmZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTmtabHFSOHdFZUdldE9MZmtMTndmZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19Oa0VPY0I4d0VlR2V0T0xma0xOd2ZnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX05rWS1rUjh3RWVHZXRPTGZrTE53ZmciIHg9Ii0xMCIgeT0iNjgiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1daNF9vQjh3RWVHZXRPTGZrTE53ZmciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9XWjVtc0I4d0VlR2V0T0xma0xOd2ZnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9XWjVtc1I4d0VlR2V0T0xma0xOd2ZnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfV1o1bXNoOHdFZUdldE9MZmtMTndmZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9XWjVtc3g4d0VlR2V0T0xma0xOd2ZnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9XWjVtdEI4d0VlR2V0T0xma0xOd2ZnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfV1o1bXRSOHdFZUdldE9MZmtMTndmZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfV1o5UkVCOHdFZUdldE9MZmtMTndmZyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfV2NwWXNCOHdFZUdldE9MZmtMTndmZyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9XY3BZc1I4d0VlR2V0T0xma0xOd2ZnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9XY3BZc2g4d0VlR2V0T0xma0xOd2ZnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfV2NwWXN4OHdFZUdldE9MZmtMTndmZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfV2NwWXRCOHdFZUdldE9MZmtMTndmZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9XWjVtdGg4d0VlR2V0T0xma0xOd2ZnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1daNW10eDh3RWVHZXRPTGZrTE53ZmciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1daNW11Qjh3RWVHZXRPTGZrTE53ZmciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1daNk53Qjh3RWVHZXRPTGZrTE53ZmciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfV1pqb2NCOHdFZUdldE9MZmtMTndmZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9XWjRfb1I4d0VlR2V0T0xma0xOd2ZnIiB4PSItMTAiIHk9IjI0NiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfeC1BYjhCOHdFZUdldE9MZmtMTndmZyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3gtQWI4aDh3RWVHZXRPTGZrTE53ZmciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3gtQWI4eDh3RWVHZXRPTGZrTE53ZmciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il94LUFiOUI4d0VlR2V0T0xma0xOd2ZnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3gtQWI5Ujh3RWVHZXRPTGZrTE53ZmciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3gtQkRBQjh3RWVHZXRPTGZrTE53ZmciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il94LUJEQVI4d0VlR2V0T0xma0xOd2ZnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il94LUVHVUI4d0VlR2V0T0xma0xOd2ZnIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il95Q0NuWUI4d0VlR2V0T0xma0xOd2ZnIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3lDQ25ZUjh3RWVHZXRPTGZrTE53ZmciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3lDQ25ZaDh3RWVHZXRPTGZrTE53ZmciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il95Q0RPY0I4d0VlR2V0T0xma0xOd2ZnIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il95Q0RPY1I4d0VlR2V0T0xma0xOd2ZnIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3gtQkRBaDh3RWVHZXRPTGZrTE53ZmciIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfeC1CREF4OHdFZUdldE9MZmtMTndmZyIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfeC1CREJCOHdFZUdldE9MZmtMTndmZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfeC1CREJSOHdFZUdldE9MZmtMTndmZyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI194OW9CY0I4d0VlR2V0T0xma0xOd2ZnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3gtQWI4Ujh3RWVHZXRPTGZrTE53ZmciIHg9Ii0xMCIgeT0iMTM1IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9XRFJIQUI4LUVlR2V0T0xma0xOd2ZnIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfV0RSdUVCOC1FZUdldE9MZmtMTndmZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfV0RSdUVSOC1FZUdldE9MZmtMTndmZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1dEUnVFaDgtRWVHZXRPTGZrTE53ZmciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfV0RSdUV4OC1FZUdldE9MZmtMTndmZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfV0RSdUZCOC1FZUdldE9MZmtMTndmZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1dEUnVGUjgtRWVHZXRPTGZrTE53ZmciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1dEVXhZQjgtRWVHZXRPTGZrTE53ZmciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1dHTnRVQjgtRWVHZXRPTGZrTE53ZmciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfV0dOdFVSOC1FZUdldE9MZmtMTndmZyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfV0dPVVlCOC1FZUdldE9MZmtMTndmZyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1dHT1VZUjgtRWVHZXRPTGZrTE53ZmciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1dHT1VZaDgtRWVHZXRPTGZrTE53ZmciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfV0RSdUZoOC1FZUdldE9MZmtMTndmZyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9XRFJ1Rng4LUVlR2V0T0xma0xOd2ZnIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9XRFJ1R0I4LUVlR2V0T0xma0xOd2ZnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9XRFJ1R1I4LUVlR2V0T0xma0xOd2ZnIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX1dDNVRrQjgtRWVHZXRPTGZrTE53ZmciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfV0RSSEFSOC1FZUdldE9MZmtMTndmZyIgeD0iLTEwIiB5PSI0MTAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2E4WUxBQjgtRWVHZXRPTGZrTE53ZmciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9hOFl5RUI4LUVlR2V0T0xma0xOd2ZnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9hOFl5RVI4LUVlR2V0T0xma0xOd2ZnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYThZeUVoOC1FZUdldE9MZmtMTndmZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9hOFl5RXg4LUVlR2V0T0xma0xOd2ZnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9hOFl5RkI4LUVlR2V0T0xma0xOd2ZnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYThZeUZSOC1FZUdldE9MZmtMTndmZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYThjY2NCOC1FZUdldE9MZmtMTndmZyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYV9QUndCOC1FZUdldE9MZmtMTndmZyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9hX1BSd1I4LUVlR2V0T0xma0xOd2ZnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9hX1BSd2g4LUVlR2V0T0xma0xOd2ZnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYV9QUnd4OC1FZUdldE9MZmtMTndmZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYV9QUnhCOC1FZUdldE9MZmtMTndmZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9hOFl5Rmg4LUVlR2V0T0xma0xOd2ZnIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2E4WXlGeDgtRWVHZXRPTGZrTE53ZmciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2E4WXlHQjgtRWVHZXRPTGZrTE53ZmciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2E4WXlHUjgtRWVHZXRPTGZrTE53ZmciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfYThBWGtCOC1FZUdldE9MZmtMTndmZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9hOFlMQVI4LUVlR2V0T0xma0xOd2ZnIiB4PSItMTAiIHk9IjU1NiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfcVA5bW9EVXpFZUc1cExfZnBOMkRnUSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3FQOW1valV6RWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3FQOW1velV6RWVHNXBMX2ZwTjJEZ1EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9xUDltcERVekVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3FQLU5zRFV6RWVHNXBMX2ZwTjJEZ1EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3FQLU5zVFV6RWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9xUC1Oc2pVekVlRzVwTF9mcE4yRGdRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9xUUJSQURVekVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9xU0wwTURVekVlRzVwTF9mcE4yRGdRIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3FTTDBNVFV6RWVHNXBMX2ZwTjJEZ1EiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3FTTDBNalV6RWVHNXBMX2ZwTjJEZ1EiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9xU0wwTXpVekVlRzVwTF9mcE4yRGdRIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9xU01iUURVekVlRzVwTF9mcE4yRGdRIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3FQLU5zelV6RWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfcVAtTnREVXpFZUc1cExfZnBOMkRnUSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfcVAtTnRUVXpFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfcVAtTnRqVXpFZUc1cExfZnBOMkRnUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19xUHJTd0RVekVlRzVwTF9mcE4yRGdRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3FQOW1vVFV6RWVHNXBMX2ZwTjJEZ1EiIHg9Ii0xMCIgeT0iMzcwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il8wLXdFa0RVekVlRzVwTF9mcE4yRGdRIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMC13cm9EVXpFZUc1cExfZnBOMkRnUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMC13cm9UVXpFZUc1cExfZnBOMkRnUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzAtd3JvalV6RWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMC13cm96VXpFZUc1cExfZnBOMkRnUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMC13cnBEVXpFZUc1cExfZnBOMkRnUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzAtd3JwVFV6RWVHNXBMX2ZwTjJEZ1EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzAtenU4RFV6RWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzFCTEdjRFV6RWVHNXBMX2ZwTjJEZ1EiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMUJMR2NUVXpFZUc1cExfZnBOMkRnUSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMUJMdGdEVXpFZUc1cExfZnBOMkRnUSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzFCTHRnVFV6RWVHNXBMX2ZwTjJEZ1EiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzFCTHRnalV6RWVHNXBMX2ZwTjJEZ1EiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfMC13cnBqVXpFZUc1cExfZnBOMkRnUSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8wLXdycHpVekVlRzVwTF9mcE4yRGdRIiB4PSIyNSIgeT0iLTkiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfMC13cnFEVXpFZUc1cExfZnBOMkRnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMC13cnFUVXpFZUc1cExfZnBOMkRnUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI18wLWVYd0RVekVlRzVwTF9mcE4yRGdRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzAtd0VrVFV6RWVHNXBMX2ZwTjJEZ1EiIHg9Ii0xMCIgeT0iMzAwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il8yakZsSURVekVlRzVwTF9mcE4yRGdRIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMmpHTU1EVXpFZUc1cExfZnBOMkRnUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMmpHTU1UVXpFZUc1cExfZnBOMkRnUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzJqR01NalV6RWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMmpHTU16VXpFZUc1cExfZnBOMkRnUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMmpHTU5EVXpFZUc1cExfZnBOMkRnUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzJqR01OVFV6RWVHNXBMX2ZwTjJEZ1EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzJqSjJrRFV6RWVHNXBMX2ZwTjJEZ1EiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzJsX3ZNRFV6RWVHNXBMX2ZwTjJEZ1EiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMmxfdk1UVXpFZUc1cExfZnBOMkRnUSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMmxfdk1qVXpFZUc1cExfZnBOMkRnUSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzJtQVdRRFV6RWVHNXBMX2ZwTjJEZ1EiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzJtQVdRVFV6RWVHNXBMX2ZwTjJEZ1EiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfMmpHTU5qVXpFZUc1cExfZnBOMkRnUSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8yakdNTnpVekVlRzVwTF9mcE4yRGdRIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8yakdNT0RVekVlRzVwTF9mcE4yRGdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8yakdNT1RVekVlRzVwTF9mcE4yRGdRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjXzJpelJRRFV6RWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMmpGbElUVXpFZUc1cExfZnBOMkRnUSIgeD0iLTEwIiB5PSIyMDUiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzN3Y3dJRFV6RWVHNXBMX2ZwTjJEZ1EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8zd2N3SWpVekVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8zd2N3SXpVekVlRzVwTF9mcE4yRGdRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfM3djd0pEVXpFZUc1cExfZnBOMkRnUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8zd2N3SlRVekVlRzVwTF9mcE4yRGdRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8zd2N3SmpVekVlRzVwTF9mcE4yRGdRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfM3dkWE1EVXpFZUc1cExfZnBOMkRnUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfM3dnYWdEVXpFZUc1cExfZnBOMkRnUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfM3pPWFVEVXpFZUc1cExfZnBOMkRnUSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8zek8tWURVekVlRzVwTF9mcE4yRGdRIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8zek8tWVRVekVlRzVwTF9mcE4yRGdRIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfM3pPLVlqVXpFZUc1cExfZnBOMkRnUSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfM3pPLVl6VXpFZUc1cExfZnBOMkRnUSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8zd2RYTVRVekVlRzVwTF9mcE4yRGdRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzN3ZFhNalV6RWVHNXBMX2ZwTjJEZ1EiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzN3ZFhNelV6RWVHNXBMX2ZwTjJEZ1EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzN3ZFhORFV6RWVHNXBMX2ZwTjJEZ1EiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfM3dLY1FEVXpFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8zd2N3SVRVekVlRzVwTF9mcE4yRGdRIiB4PSItMTAiIHk9IjQ0NSIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iUm9ib0NhYi51bWwjX2ZkekxIYWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1JFbjJNeDh1RWVHNGdQQ0V6blZOT0EiIHg9Ijg1IiB5PSIzMCIgd2lkdGg9IjEwNjEiIGhlaWdodD0iNjAxIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX080M0pFUjh1RWVHNGdQQ0V6blZOT0EiLz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJzdHlsZTpQYXB5cnVzVmlld1N0eWxlIiB4bWk6aWQ9Il9ZMmNiZ0g3TEVlU0Z5TmJuTFlEQ2t3Ij4KKyAgICAgIDxvd25lciB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6Sng2a19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3pXQVBMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U3RyaW5nVmFsdWVTdHlsZSIgeG1pOmlkPSJfWTJjYmdYN0xFZVNGeU5ibkxZRENrdyIgbmFtZT0iZGlhZ3JhbV9jb21wYXRpYmlsaXR5X3ZlcnNpb24iIHN0cmluZ1ZhbHVlPSIxLjAuMCIvPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IlJvYm9DYWIudW1sI19mZHpKeDZrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iXzFBRFY4R2JVRWVHR051WDFJSGcxemciIHR5cGU9IjQwMTMiIHNvdXJjZT0iX0hTZ1BLR2JVRWVHR051WDFJSGcxemciIHRhcmdldD0iX2dWWTZPbWJURWVHR051WDFJSGcxemciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8xQU1mNEdiVUVlR0dOdVgxSUhnMXpnIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8xQU1mNFdiVUVlR0dOdVgxSUhnMXpnIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzFBTWY0bWJVRWVHR051WDFJSGcxemciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8xQU1mNDJiVUVlR0dOdVgxSUhnMXpnIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8xQU1mNUdiVUVlR0dOdVgxSUhnMXpnIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8xQU1mNVdiVUVlR0dOdVgxSUhnMXpnIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzFBTWY1bWJVRWVHR051WDFJSGcxemciIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzFBTWY1MmJVRWVHR051WDFJSGcxemciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il8xQURWOFdiVUVlR0dOdVgxSUhnMXpnIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iUm9ib0NhYi51bWwjX2ZkekxWcWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iXzFBRFY4bWJVRWVHR051WDFJSGcxemciIHBvaW50cz0iWy03LCAtMTAsIDIyNCwgMzIwXSRbLTIyNCwgLTMyMCwgNywgMTBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfMVdHZWNHYlVFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iNDAxMyIgc291cmNlPSJfX3FwRjBHYlRFZUdHTnVYMUlIZzF6ZyIgdGFyZ2V0PSJfZ1ZZNlJtYlRFZUdHTnVYMUlIZzF6ZyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzFXR2VjMmJVRWVHR051WDFJSGcxemciIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzFXR2VkR2JVRWVHR051WDFJSGcxemciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfMVdHZWRXYlVFZUdHTnVYMUlIZzF6ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzFXR2VkbWJVRWVHR051WDFJSGcxemciIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzFXR2VkMmJVRWVHR051WDFJSGcxemciIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzFXR2VlR2JVRWVHR051WDFJSGcxemciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfMVdHZWVXYlVFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMVdHZWVtYlVFZUdHTnVYMUlIZzF6ZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iXzFXR2VjV2JVRWVHR051WDFJSGcxemciIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6TFdha19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfMVdHZWNtYlVFZUdHTnVYMUlIZzF6ZyIgcG9pbnRzPSJbLTMsIC0xMCwgNDEsIDE0NV0kWy00MiwgLTE0NSwgMiwgMTBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfMkJuZ29HYlVFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iNDAxMyIgc291cmNlPSJfUkVuMkF4OHVFZUc0Z1BDRXpuVk5PQSIgdGFyZ2V0PSJfSFNnUEVHYlVFZUdHTnVYMUlIZzF6ZyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzJCbmdvMmJVRWVHR051WDFJSGcxemciIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzJCbmdwR2JVRWVHR051WDFJSGcxemciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfMkJuZ3BXYlVFZUdHTnVYMUlIZzF6ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzJCbmdwbWJVRWVHR051WDFJSGcxemciIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzJCbmdwMmJVRWVHR051WDFJSGcxemciIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzJCbmdxR2JVRWVHR051WDFJSGcxemciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfMkJuZ3FXYlVFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMkJuZ3FtYlVFZUdHTnVYMUlIZzF6ZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iXzJCbmdvV2JVRWVHR051WDFJSGcxemciIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6TGZha19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfMkJuZ29tYlVFZUdHTnVYMUlIZzF6ZyIgcG9pbnRzPSJbOCwgMTAsIC0zMjIsIC0zNjZdJFszMjEsIDM2NiwgLTksIC0xMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il8yYl9JY0diVUVlR0dOdVgxSUhnMXpnIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9fcXBGNkdiVEVlR0dOdVgxSUhnMXpnIiB0YXJnZXQ9Il9SRW4ySng4dUVlRzRnUENFem5WTk9BIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfMmNJNWNHYlVFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMmNJNWNXYlVFZUdHTnVYMUlIZzF6ZyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8yY0k1Y21iVUVlR0dOdVgxSUhnMXpnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMmNJNWMyYlVFZUdHTnVYMUlIZzF6ZyIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfMmNJNWRHYlVFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMmNJNWRXYlVFZUdHTnVYMUlIZzF6ZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8yY0k1ZG1iVUVlR0dOdVgxSUhnMXpnIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8yY0k1ZDJiVUVlR0dOdVgxSUhnMXpnIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfMmJfSWNXYlVFZUdHTnVYMUlIZzF6ZyIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IlJvYm9DYWIudW1sI19SM0k2Z0tsdUVlQ0xrdTRSRnJJN3V3Ii8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il8yYl9JY21iVUVlR0dOdVgxSUhnMXpnIiBwb2ludHM9IlsxMCwgMCwgLTE3NSwgLTE1XSRbMTc1LCAxNCwgLTEwLCAtMV0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il82V3hqQUdiVUVlR0dOdVgxSUhnMXpnIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9IU2dQTkdiVUVlR0dOdVgxSUhnMXpnIiB0YXJnZXQ9Il9fcXBGOUdiVEVlR0dOdVgxSUhnMXpnIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfNld4akEyYlVFZUdHTnVYMUlIZzF6ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzZXeGpCR2JVRWVHR051WDFJSGcxemciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfNld4akJXYlVFZUdHTnVYMUlIZzF6ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzZXeGpCbWJVRWVHR051WDFJSGcxemciIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzZXN1VBR2JVRWVHR051WDFJSGcxemciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il82VzdVQVdiVUVlR0dOdVgxSUhnMXpnIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzZXN1VBbWJVRWVHR051WDFJSGcxemciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il82VzdVQTJiVUVlR0dOdVgxSUhnMXpnIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfNld4akFXYlVFZUdHTnVYMUlIZzF6ZyIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IlJvYm9DYWIudW1sI182VmJmTUdiVUVlR0dOdVgxSUhnMXpnIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il82V3hqQW1iVUVlR0dOdVgxSUhnMXpnIiBwb2ludHM9Ils2LCAtMTYsIC00MiwgOTVdJFs0MywgLTEyMSwgLTUsIC0xMF0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il82WGhKNEdiVUVlR0dOdVgxSUhnMXpnIiBpZD0iKDAuNTUsMC44KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX1lLdVQ4R2JWRWVHR051WDFJSGcxemciIHR5cGU9IjQwMTMiIHNvdXJjZT0iXzAtd0VrRFV6RWVHNXBMX2ZwTjJEZ1EiIHRhcmdldD0iX0hTZ1BIR2JVRWVHR051WDFJSGcxemciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9ZS3VUODJiVkVlR0dOdVgxSUhnMXpnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfWUt1VDlHYlZFZUdHTnVYMUlIZzF6ZyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9ZS3VUOVdiVkVlR0dOdVgxSUhnMXpnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfWUt1VDltYlZFZUdHTnVYMUlIZzF6ZyIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfWUt1VDkyYlZFZUdHTnVYMUlIZzF6ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1lLdVQtR2JWRWVHR051WDFJSGcxemciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfWUt1VC1XYlZFZUdHTnVYMUlIZzF6ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1lLdVQtbWJWRWVHR051WDFJSGcxemciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9ZS3VUOFdiVkVlR0dOdVgxSUhnMXpnIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iUm9ib0NhYi51bWwjX1lLUm9BR2JWRWVHR051WDFJSGcxemciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX1lLdVQ4bWJWRWVHR051WDFJSGcxemciIHBvaW50cz0iWzgsIC00LCAtMjIzLCAxMDVdJFsyMzUsIC0xMTEsIDQsIC0yXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX1lMZDYwR2JWRWVHR051WDFJSGcxemciIGlkPSIoMC4yNSwwLjIpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfWUxkNjBXYlZFZUdHTnVYMUlIZzF6ZyIgaWQ9IigwLjgsMC40KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iXzM5b0U0R2JWRWVHR051WDFJSGcxemciIHR5cGU9IjQwMTMiIHNvdXJjZT0iX1JFbjJEeDh1RWVHNGdQQ0V6blZOT0EiIHRhcmdldD0iX2dWWTZVbWJURWVHR051WDFJSGcxemciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8zOW9FNDJiVkVlR0dOdVgxSUhnMXpnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMzlvRTVHYlZFZUdHTnVYMUlIZzF6ZyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8zOW9FNVdiVkVlR0dOdVgxSUhnMXpnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMzlvRTVtYlZFZUdHTnVYMUlIZzF6ZyIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfMzlvRTUyYlZFZUdHTnVYMUlIZzF6ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzM5b0U2R2JWRWVHR051WDFJSGcxemciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfMzlvRTZXYlZFZUdHTnVYMUlIZzF6ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzM5b0U2bWJWRWVHR051WDFJSGcxemciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il8zOW9FNFdiVkVlR0dOdVgxSUhnMXpnIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iUm9ib0NhYi51bWwjXzM5TFk4R2JWRWVHR051WDFJSGcxemciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iXzM5b0U0bWJWRWVHR051WDFJSGcxemciIHBvaW50cz0iWzEwLCAtMSwgLTQzMCwgMzldJFs0NTAsIC00MCwgMTAsIDBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfNTdGM0lHYlZFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iNDAxMyIgc291cmNlPSJfMC13RWtEVXpFZUc1cExfZnBOMkRnUSIgdGFyZ2V0PSJfZ1ZQSk1HYlRFZUdHTnVYMUlIZzF6ZyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzU3RjNJMmJWRWVHR051WDFJSGcxemciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il81N0YzSkdiVkVlR0dOdVgxSUhnMXpnIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzU3RjNKV2JWRWVHR051WDFJSGcxemciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il81N0YzSm1iVkVlR0dOdVgxSUhnMXpnIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il81N0YzSjJiVkVlR0dOdVgxSUhnMXpnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfNTdGM0tHYlZFZUdHTnVYMUlIZzF6ZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il81N0YzS1diVkVlR0dOdVgxSUhnMXpnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfNTdGM0ttYlZFZUdHTnVYMUlIZzF6ZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iXzU3RjNJV2JWRWVHR051WDFJSGcxemciIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJSb2JvQ2FiLnVtbCNfNTZwTE1HYlZFZUdHTnVYMUlIZzF6ZyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfNTdGM0ltYlZFZUdHTnVYMUlIZzF6ZyIgcG9pbnRzPSJbMTAsIDAsIC00MzAsIDg1XSRbMTY1LCAwLCAtMjc1LCA4NV0kWzE2NSwgLTg1LCAtMjc1LCAwXSRbNDMwLCAtODUsIC0xMCwgMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il83MWJjNEdiVkVlR0dOdVgxSUhnMXpnIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9lZ3VaVUI4dkVlRzRnUENFem5WTk9BIiB0YXJnZXQ9Il9nVlk2WG1iVEVlR0dOdVgxSUhnMXpnIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfNzFiYzQyYlZFZUdHTnVYMUlIZzF6ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzcxYmM1R2JWRWVHR051WDFJSGcxemciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfNzFiYzVXYlZFZUdHTnVYMUlIZzF6ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzcxYmM1bWJWRWVHR051WDFJSGcxemciIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzcxYmM1MmJWRWVHR051WDFJSGcxemciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il83MWJjNkdiVkVlR0dOdVgxSUhnMXpnIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzcxYmM2V2JWRWVHR051WDFJSGcxemciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il83MWJjNm1iVkVlR0dOdVgxSUhnMXpnIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfNzFiYzRXYlZFZUdHTnVYMUlIZzF6ZyIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IlJvYm9DYWIudW1sI183MHIyQUdiVkVlR0dOdVgxSUhnMXpnIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il83MWJjNG1iVkVlR0dOdVgxSUhnMXpnIiBwb2ludHM9IlsxMCwgLTEsIC00MzAsIDEyXSRbNDQxLCAtMywgMSwgMTBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfOUJrZjRHYlZFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iNDAxMyIgc291cmNlPSJfeC1BYjhCOHdFZUdldE9MZmtMTndmZyIgdGFyZ2V0PSJfZ1ZZNmFtYlRFZUdHTnVYMUlIZzF6ZyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzlCa2Y0MmJWRWVHR051WDFJSGcxemciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il85QmtmNUdiVkVlR0dOdVgxSUhnMXpnIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzlCa2Y1V2JWRWVHR051WDFJSGcxemciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il85QmtmNW1iVkVlR0dOdVgxSUhnMXpnIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il85QmtmNTJiVkVlR0dOdVgxSUhnMXpnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfOUJrZjZHYlZFZUdHTnVYMUlIZzF6ZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il85QmtmNldiVkVlR0dOdVgxSUhnMXpnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfOUJrZjZtYlZFZUdHTnVYMUlIZzF6ZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iXzlCa2Y0V2JWRWVHR051WDFJSGcxemciIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJSb2JvQ2FiLnVtbCNfOUEtcUFHYlZFZUdHTnVYMUlIZzF6ZyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfOUJrZjRtYlZFZUdHTnVYMUlIZzF6ZyIgcG9pbnRzPSJbMTAsIC02LCAtNDMwLCAtMV0kWzQ0NSwgLTE1LCA1LCAtMTBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfT0MyUGtHYldFZUdHTnVYMUlIZzF6ZyIgdHlwZT0iNDAxMyIgc291cmNlPSJfQ2hMT0tHYlVFZUdHTnVYMUlIZzF6ZyIgdGFyZ2V0PSJfX3FwRjNHYlRFZUdHTnVYMUlIZzF6ZyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX09DMlBrMmJXRWVHR051WDFJSGcxemciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9PQzJQbEdiV0VlR0dOdVgxSUhnMXpnIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX09DMlBsV2JXRWVHR051WDFJSGcxemciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9PQzJQbG1iV0VlR0dOdVgxSUhnMXpnIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9PQzJQbDJiV0VlR0dOdVgxSUhnMXpnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfT0MyUG1HYldFZUdHTnVYMUlIZzF6ZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9PQzJQbVdiV0VlR0dOdVgxSUhnMXpnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfT0MyUG1tYldFZUdHTnVYMUlIZzF6ZyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX09DMlBrV2JXRWVHR051WDFJSGcxemciIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJSb2JvQ2FiLnVtbCNfT0NRWnNHYldFZUdHTnVYMUlIZzF6ZyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfT0MyUGttYldFZUdHTnVYMUlIZzF6ZyIgcG9pbnRzPSJbMTAsIC03LCAtNTQsIDgwXSRbMjksIC03LCAtMzUsIDgwXSRbMjksIC04NywgLTM1LCAwXSRbNTQsIC04NywgLTEwLCAwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX1ZoeGZRR2JXRWVHR051WDFJSGcxemciIHR5cGU9IjQwMTMiIHNvdXJjZT0iX0ZnNUNNQjh3RWVHZXRPTGZrTE53ZmciIHRhcmdldD0iX0NoTE9FR2JVRWVHR051WDFJSGcxemciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9WaHhmUTJiV0VlR0dOdVgxSUhnMXpnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVmh4ZlJHYldFZUdHTnVYMUlIZzF6ZyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9WaHhmUldiV0VlR0dOdVgxSUhnMXpnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVmh4ZlJtYldFZUdHTnVYMUlIZzF6ZyIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfVmh4ZlIyYldFZUdHTnVYMUlIZzF6ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1ZoeGZTR2JXRWVHR051WDFJSGcxemciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfVmh4ZlNXYldFZUdHTnVYMUlIZzF6ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1ZoeGZTbWJXRWVHR051WDFJSGcxemciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9WaHhmUVdiV0VlR0dOdVgxSUhnMXpnIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iUm9ib0NhYi51bWwjX1ZoTENVR2JXRWVHR051WDFJSGcxemciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX1ZoeGZRbWJXRWVHR051WDFJSGcxemciIHBvaW50cz0iWzEwLCAxLCAtNDMwLCAtNDRdJFs0MzksIDM1LCAtMSwgLTEwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2FKdFRzR2JXRWVHR051WDFJSGcxemciIHR5cGU9IjQwMTMiIHNvdXJjZT0iX0hTZ1BLR2JVRWVHR051WDFJSGcxemciIHRhcmdldD0iX0NoTE9IR2JVRWVHR051WDFJSGcxemciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9hSnRUczJiV0VlR0dOdVgxSUhnMXpnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYUp0VHRHYldFZUdHTnVYMUlIZzF6ZyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9hSnRUdFdiV0VlR0dOdVgxSUhnMXpnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYUp0VHRtYldFZUdHTnVYMUlIZzF6ZyIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYUp0VHQyYldFZUdHTnVYMUlIZzF6ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2FKdFR1R2JXRWVHR051WDFJSGcxemciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYUp0VHVXYldFZUdHTnVYMUlIZzF6ZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2FKdFR1bWJXRWVHR051WDFJSGcxemciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9hSnRUc1diV0VlR0dOdVgxSUhnMXpnIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iUm9ib0NhYi51bWwjX2FKUW53R2JXRWVHR051WDFJSGcxemciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2FKdFRzbWJXRWVHR051WDFJSGcxemciIHBvaW50cz0iWzEwLCAwLCAtMjQsIC0xNjVdJFsxNCwgMCwgLTIwLCAtMTY1XSRbMTQsIDE2NSwgLTIwLCAwXSRbMjQsIDE2NSwgLTEwLCAwXSIvPgorICAgIDwvZWRnZXM+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfUXdGb29FSFpFZUc4bnZqR2pEME1yZyIgdHlwZT0iUGFweXJ1c1VNTFN0YXRlTWFjaGluZURpYWdyYW0iIG5hbWU9IlNtRGlhZ3JhbSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfUXdGb29VSFpFZUc4bnZqR2pEME1yZyIgdHlwZT0iMjAwMCIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Rd0Zvb2tIWkVlRzhudmpHakQwTXJnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUXdGb28wSFpFZUc4bnZqR2pEME1yZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUXdGb3BFSFpFZUc4bnZqR2pEME1yZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUXdGb3BVSFpFZUc4bnZqR2pEME1yZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Rd0ZvcGtIWkVlRzhudmpHakQwTXJnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1F3Rm9wMEhaRWVHOG52akdqRDBNcmciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9Rd0ZvcUVIWkVlRzhudmpHakQwTXJnIiB0eXBlPSIyMDAxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfUXdGb3FVSFpFZUc4bnZqR2pEME1yZyIgd2lkdGg9IjY5MSIgaGVpZ2h0PSIxNSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1F3Rm9xa0haRWVHOG52akdqRDBNcmciIHR5cGU9IjIwMDIiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9Rd0ZvcTBIWkVlRzhudmpHakQwTXJnIiB0eXBlPSIzMDAwIiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Rd0ZvckVIWkVlRzhudmpHakQwTXJnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1F3Rm9yVUhaRWVHOG52akdqRDBNcmciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUXdGb3JrSFpFZUc4bnZqR2pEME1yZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1F3Rm9yMEhaRWVHOG52akdqRDBNcmciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Rd0Zvc0VIWkVlRzhudmpHakQwTXJnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9Rd0Zvc1VIWkVlRzhudmpHakQwTXJnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUXdGb3NrSFpFZUc4bnZqR2pEME1yZyIgc291cmNlPSJSZWdpb25Bbm5vdGF0aW9uS2V5Ij4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUXdGb3MwSFpFZUc4bnZqR2pEME1yZyIga2V5PSJSZWdpb25ab25lS2V5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfUXdGb3RFSFpFZUc4bnZqR2pEME1yZyIgdHlwZT0iMzAwMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9sRE94c0VIWkVlRzhudmpHakQwTXJnIiB0eXBlPSI2MDAwIiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbERPeHNrSFpFZUc4bnZqR2pEME1yZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbERPeHMwSFpFZUc4bnZqR2pEME1yZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2xEUFl3RUhaRWVHOG52akdqRDBNcmciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbERQWXdVSFpFZUc4bnZqR2pEME1yZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbERQWXdrSFpFZUc4bnZqR2pEME1yZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2xEUFl3MEhaRWVHOG52akdqRDBNcmciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbERQWXhFSFpFZUc4bnZqR2pEME1yZyIgdHlwZT0iNjAwMSI+CisgICAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfck05d0VFSFpFZUc4bnZqR2pEME1yZyIgd2lkdGg9IjEyNSIgaGVpZ2h0PSIxNSIvPgorICAgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9sRFBZeFVIWkVlRzhudmpHakQwTXJnIiB0eXBlPSI2MDAyIj4KKyAgICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9sRFBZeGtIWkVlRzhudmpHakQwTXJnIiB5PSIxNSIgd2lkdGg9IjEyNSIgaGVpZ2h0PSI4MCIvPgorICAgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0YXRlIiBocmVmPSJSb2JvQ2FiLnVtbCNfbEM5RTRFSFpFZUc4bnZqR2pEME1yZyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9sRE94c1VIWkVlRzhudmpHakQwTXJnIiB4PSIxMjUiIHk9IjE4NiIgd2lkdGg9IjEyNSIgaGVpZ2h0PSI5NSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3RobGVFRUhaRWVHOG52akdqRDBNcmciIHR5cGU9IjYwMDAiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il90aGxlRWtIWkVlRzhudmpHakQwTXJnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il90aG1GSUVIWkVlRzhudmpHakQwTXJnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdGhtRklVSFpFZUc4bnZqR2pEME1yZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il90aG1GSWtIWkVlRzhudmpHakQwTXJnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il90aG1GSTBIWkVlRzhudmpHakQwTXJnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdGhtRkpFSFpFZUc4bnZqR2pEME1yZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il90aG1GSlVIWkVlRzhudmpHakQwTXJnIiB0eXBlPSI2MDAxIj4KKyAgICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il92Zloxb0VIWkVlRzhudmpHakQwTXJnIiB3aWR0aD0iMTUxIiBoZWlnaHQ9IjE1Ii8+CisgICAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3RobUZKa0haRWVHOG52akdqRDBNcmciIHR5cGU9IjYwMDIiPgorICAgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3RobUZKMEhaRWVHOG52akdqRDBNcmciIHk9IjE1IiB3aWR0aD0iMTUxIiBoZWlnaHQ9IjgxIi8+CisgICAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RhdGUiIGhyZWY9IlJvYm9DYWIudW1sI190aFhib0VIWkVlRzhudmpHakQwTXJnIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3RobGVFVUhaRWVHOG52akdqRDBNcmciIHg9IjQ3MCIgeT0iMTk2IiB3aWR0aD0iMTUxIiBoZWlnaHQ9Ijk2Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfdHBObW9HNm9FZUdxcmRfX0IweVVOQSIgdHlwZT0iODAwMCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3RwTm1vbTZvRWVHcXJkX19CMHlVTkEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3RwTm1vMjZvRWVHcXJkX19CMHlVTkEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il90cE5tcEc2b0VlR3FyZF9fQjB5VU5BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3RwTm1wVzZvRWVHcXJkX19CMHlVTkEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3RwTm1wbTZvRWVHcXJkX19CMHlVTkEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il90cE5tcDI2b0VlR3FyZF9fQjB5VU5BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il90cGdoa0c2b0VlR3FyZF9fQjB5VU5BIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il90cGdoa1c2b0VlR3FyZF9fQjB5VU5BIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3RwZ2hrbTZvRWVHcXJkX19CMHlVTkEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3RwZ2hrMjZvRWVHcXJkX19CMHlVTkEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3RwZ2hsRzZvRWVHcXJkX19CMHlVTkEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3RwZ2hsVzZvRWVHcXJkX19CMHlVTkEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfdHBObXFHNm9FZUdxcmRfX0IweVVOQSIgdHlwZT0iODAwMSI+CisgICAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il90cE5tcVc2b0VlR3FyZF9fQjB5VU5BIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il90cE5tcW02b0VlR3FyZF9fQjB5VU5BIiB0eXBlPSI4MDAyIj4KKyAgICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3RwTm1xMjZvRWVHcXJkX19CMHlVTkEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQc2V1ZG9zdGF0ZSIgaHJlZj0iUm9ib0NhYi51bWwjX3RvZFlzRzZvRWVHcXJkX19CMHlVTkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfdHBObW9XNm9FZUdxcmRfX0IweVVOQSIgeD0iMTcwIiB5PSIzNzYiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il91YjN5b0c2b0VlR3FyZF9fQjB5VU5BIiB0eXBlPSI1MDAwIiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdWIzeW9tNm9FZUdxcmRfX0IweVVOQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdWIzeW8yNm9FZUdxcmRfX0IweVVOQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3ViM3lwRzZvRWVHcXJkX19CMHlVTkEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdWIzeXBXNm9FZUdxcmRfX0IweVVOQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdWIzeXBtNm9FZUdxcmRfX0IweVVOQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3ViM3lwMjZvRWVHcXJkX19CMHlVTkEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfdWIzeXFHNm9FZUdxcmRfX0IweVVOQSIgdHlwZT0iNTAwMSI+CisgICAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il91YjN5cVc2b0VlR3FyZF9fQjB5VU5BIiB4PSItMTUiIHk9IjI1Ii8+CisgICAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3ViM3lxbTZvRWVHcXJkX19CMHlVTkEiIHR5cGU9IjUwMDIiPgorICAgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdWIzeXEyNm9FZUdxcmRfX0IweVVOQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkZpbmFsU3RhdGUiIGhyZWY9IlJvYm9DYWIudW1sI191YlI4d0c2b0VlR3FyZF9fQjB5VU5BIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3ViM3lvVzZvRWVHcXJkX19CMHlVTkEiIHg9IjM1NSIgeT0iMzcxIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfUXdGb3RVSFpFZUc4bnZqR2pEME1yZyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpSZWdpb24iIGhyZWY9IlJvYm9DYWIudW1sI19Rdi02OEVIWkVlRzhudmpHakQwTXJnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfUXdGb3RrSFpFZUc4bnZqR2pEME1yZyIgd2lkdGg9IjY5MSIgaGVpZ2h0PSI0NTYiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfUXdGb3QwSFpFZUc4bnZqR2pEME1yZyIgeT0iMTUiIHdpZHRoPSI2OTEiIGhlaWdodD0iNDU2Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGF0ZU1hY2hpbmUiIGhyZWY9IlJvYm9DYWIudW1sI19QMi1QVUVIWkVlRzhudmpHakQwTXJnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9Rd0ZvdUVIWkVlRzhudmpHakQwTXJnIiB4PSIzMCIgeT0iNTUiIHdpZHRoPSI2OTEiIGhlaWdodD0iNDcxIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX1F3Rm91VUhaRWVHOG52akdqRDBNcmciLz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0YXRlTWFjaGluZSIgaHJlZj0iUm9ib0NhYi51bWwjX1AyLVBVRUhaRWVHOG52akdqRDBNcmciLz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfM0pkWFFFSFpFZUc4bnZqR2pEME1yZyIgdHlwZT0iNzAwMCIgc291cmNlPSJfbERPeHNFSFpFZUc4bnZqR2pEME1yZyIgdGFyZ2V0PSJfdGhsZUVFSFpFZUc4bnZqR2pEME1yZyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8zSjl0a0VIWkVlRzhudmpHakQwTXJnIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSzV3VEVHNnFFZUdxcmRfX0IweVVOQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSzV3VEVXNnFFZUdxcmRfX0IweVVOQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlRyYW5zaXRpb24iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LNXdURW02cUVlR3FyZF9fQjB5VU5BIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iUm9ib3RNTDo6VHJhbnNpdGlvbi5ndWFyZCIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0s1d1RFMjZxRWVHcXJkX19CMHlVTkEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LNXdURkc2cUVlR3FyZF9fQjB5VU5BIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfM0pkLVVFSFpFZUc4bnZqR2pEME1yZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMDEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzNKZC1VVUhaRWVHOG52akdqRDBNcmciIHg9IjIzIiB5PSIxMiIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzNKZC1Va0haRWVHOG52akdqRDBNcmciIHR5cGU9IjcwMDIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzNKZC1VMEhaRWVHOG52akdqRDBNcmciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8zSmQtVkVIWkVlRzhudmpHakQwTXJnIiB0eXBlPSI3MDAzIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0hjNl8wRzZxRWVHcXJkX19CMHlVTkEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0hfeWNVRzZxRWVHcXJkX19CMHlVTkEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IlJvYm90TUw6OlRyYW5zaXRpb24iLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0hfeWNVVzZxRWVHcXJkX19CMHlVTkEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpUcmFuc2l0aW9uIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9IX3ljVW02cUVlR3FyZF9fQjB5VU5BIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iUm9ib3RNTDo6VHJhbnNpdGlvbi5ndWFyZCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSF95Y1UyNnFFZUdxcmRfX0IweVVOQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSF95Y1ZHNnFFZUdxcmRfX0IweVVOQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzNKZC1WVUhaRWVHOG52akdqRDBNcmciIHg9IjE4IiB5PSItMjgiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iXzNKZFhRVUhaRWVHOG52akdqRDBNcmciIGZvbnROYW1lPSJVYnVudHUiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6VHJhbnNpdGlvbiIgaHJlZj0iUm9ib0NhYi51bWwjXzNKTTRrRUhaRWVHOG52akdqRDBNcmciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iXzNKZFhRa0haRWVHOG52akdqRDBNcmciIHBvaW50cz0iWzAsIC00NywgLTM0MSwgLTU4XSRbMCwgLTk3LCAtMzQxLCAtMTA4XSRbMzQxLCAtOTcsIDAsIC0xMDhdJFszNDEsIC0zNywgMCwgLTQ4XSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iXzBSY2U0RzZvRWVHcXJkX19CMHlVTkEiIHR5cGU9IjcwMDAiIHNvdXJjZT0iX3RwTm1vRzZvRWVHcXJkX19CMHlVTkEiIHRhcmdldD0iX2xET3hzRUhaRWVHOG52akdqRDBNcmciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMFNWMndHNm9FZUdxcmRfX0IweVVOQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3RTOS04RzZxRWVHcXJkX19CMHlVTkEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3RTOS04VzZxRWVHcXJkX19CMHlVTkEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpUcmFuc2l0aW9uIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdFM5LThtNnFFZUdxcmRfX0IweVVOQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IlJvYm90TUw6OlRyYW5zaXRpb24uZ3VhcmQiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il90UzktODI2cUVlR3FyZF9fQjB5VU5BIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdFM5LTlHNnFFZUdxcmRfX0IweVVOQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzBSY2U0MjZvRWVHcXJkX19CMHlVTkEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDAxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8wUmNlNUc2b0VlR3FyZF9fQjB5VU5BIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfMFJjZTVXNm9FZUdxcmRfX0IweVVOQSIgdHlwZT0iNzAwMiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMFJjZTVtNm9FZUdxcmRfX0IweVVOQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzBSY2U1MjZvRWVHcXJkX19CMHlVTkEiIHR5cGU9IjcwMDMiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfaHF2MEVHNnBFZUdxcmRfX0IweVVOQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcHdIWXNHNnBFZUdxcmRfX0IweVVOQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9wd0hZc1c2cEVlR3FyZF9fQjB5VU5BIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6VHJhbnNpdGlvbixSb2JvdE1MOjpUcmFuc2l0aW9uIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9wd0hZc202cEVlR3FyZF9fQjB5VU5BIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iUm9ib3RNTDo6VHJhbnNpdGlvbi5lZmZlY3QsUm9ib3RNTDo6VHJhbnNpdGlvbi5ndWFyZCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcHdIWXMyNnBFZUdxcmRfX0IweVVOQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcHdIWXRHNnBFZUdxcmRfX0IweVVOQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzBSY2U2RzZvRWVHcXJkX19CMHlVTkEiIHg9IjYiIHk9Ii05Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il8wUmNlNFc2b0VlR3FyZF9fQjB5VU5BIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlRyYW5zaXRpb24iIGhyZWY9IlJvYm9DYWIudW1sI18wUVo5RUc2b0VlR3FyZF9fQjB5VU5BIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il8wUmNlNG02b0VlR3FyZF9fQjB5VU5BIiBwb2ludHM9IlstMywgLTEwLCA0NiwgMTcyXSRbLTM0LCAtMTI1LCAxNSwgNTddIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfMFM3c29HNm9FZUdxcmRfX0IweVVOQSIgaWQ9IigwLjM2LDAuOTc4OTQ3MzY4NDIxMDUyNykiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9iMGJnOEc2cEVlR3FyZF9fQjB5VU5BIiB0eXBlPSI3MDAwIiBzb3VyY2U9Il9sRE94c0VIWkVlRzhudmpHakQwTXJnIiB0YXJnZXQ9Il9sRE94c0VIWkVlRzhudmpHakQwTXJnIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2IxZUN3RzZwRWVHcXJkX19CMHlVTkEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il91a0ItTUc2cUVlR3FyZF9fQjB5VU5BIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il91a0ItTVc2cUVlR3FyZF9fQjB5VU5BIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6VHJhbnNpdGlvbiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3VrQi1NbTZxRWVHcXJkX19CMHlVTkEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSJSb2JvdE1MOjpUcmFuc2l0aW9uLmd1YXJkIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdWtCLU0yNnFFZUdxcmRfX0IweVVOQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3VrQi1ORzZxRWVHcXJkX19CMHlVTkEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9iMGJnODI2cEVlR3FyZF9fQjB5VU5BIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAwMSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYjBiZzlHNnBFZUdxcmRfX0IweVVOQSIgeD0iLTU4IiB5PSItMzUiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9iMGJnOVc2cEVlR3FyZF9fQjB5VU5BIiB0eXBlPSI3MDAyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iMGJnOW02cEVlR3FyZF9fQjB5VU5BIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYjBiZzkyNnBFZUdxcmRfX0IweVVOQSIgdHlwZT0iNzAwMyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYjBrcTRHNnBFZUdxcmRfX0IweVVOQSIgeD0iLTQwIiB5PSItNjMiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2IwYmc4VzZwRWVHcXJkX19CMHlVTkEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6VHJhbnNpdGlvbiIgaHJlZj0iUm9ib0NhYi51bWwjX2J6aUpFRzZwRWVHcXJkX19CMHlVTkEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2IwYmc4bTZwRWVHcXJkX19CMHlVTkEiIHBvaW50cz0iWzAsIC0xNywgLTYsIC0zOV0kWzAsIC0yNywgLTYsIC00OV0kWy05NiwgLTI3LCAtMTAyLCAtNDldJFstOTYsIDIyLCAtMTAyLCAwXSRbLTEsIDIyLCAtNywgMF0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9lajlwVUc2cEVlR3FyZF9fQjB5VU5BIiBpZD0iKDAuMDA4MCwwLjE3ODk0NzM2ODQyMTA1MjYzKSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2IyRDRvRzZwRWVHcXJkX19CMHlVTkEiIGlkPSIoMC4wNTYsMC40MTA1MjYzMTU3ODk0NzM3KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX1JEbF9JRzZxRWVHcXJkX19CMHlVTkEiIHR5cGU9IjcwMDAiIHNvdXJjZT0iX3RobGVFRUhaRWVHOG52akdqRDBNcmciIHRhcmdldD0iX3ViM3lvRzZvRWVHcXJkX19CMHlVTkEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUkVmWEFHNnFFZUdxcmRfX0IweVVOQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2ZUcnVzRzZzRWVHcXJkX19CMHlVTkEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2ZUcnVzVzZzRWVHcXJkX19CMHlVTkEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpUcmFuc2l0aW9uIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZlRydXNtNnNFZUdxcmRfX0IweVVOQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IlJvYm90TUw6OlRyYW5zaXRpb24uZ3VhcmQiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mVHJ1czI2c0VlR3FyZF9fQjB5VU5BIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZlRydXRHNnNFZUdxcmRfX0IweVVOQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1JEbF9JMjZxRWVHcXJkX19CMHlVTkEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDAxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9SRGxfSkc2cUVlR3FyZF9fQjB5VU5BIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfUkRsX0pXNnFFZUdxcmRfX0IweVVOQSIgdHlwZT0iNzAwMiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfUkRsX0ptNnFFZUdxcmRfX0IweVVOQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1JEbF9KMjZxRWVHcXJkX19CMHlVTkEiIHR5cGU9IjcwMDMiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1JEbF9LRzZxRWVHcXJkX19CMHlVTkEiIHg9Ii0xMyIgeT0iMzAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX1JEbF9JVzZxRWVHcXJkX19CMHlVTkEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6VHJhbnNpdGlvbiIgaHJlZj0iUm9ib0NhYi51bWwjX1JDdE9VRzZxRWVHcXJkX19CMHlVTkEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX1JEbF9JbTZxRWVHcXJkX19CMHlVTkEiIHBvaW50cz0iWzAsIDAsIDE3MCwgLTg2XSRbMCwgODYsIDE3MCwgMF0kWy0xNzAsIDg2LCAwLCAwXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX1JGRno4RzZxRWVHcXJkX19CMHlVTkEiIGlkPSIoMC40OTY2ODg3NDE3MjE4NTQzLDEuMCkiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9fX3JxMEc2c0VlR3FyZF9fQjB5VU5BIiBpZD0iKDEuMCwwLjM1KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2lYRUFJRzZzRWVHcXJkX19CMHlVTkEiIHR5cGU9IjcwMDAiIHNvdXJjZT0iX2xET3hzRUhaRWVHOG52akdqRDBNcmciIHRhcmdldD0iX3ViM3lvRzZvRWVHcXJkX19CMHlVTkEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfaVlISkFHNnNFZUdxcmRfX0IweVVOQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0ZIMmVnRzZ0RWVHcXJkX19CMHlVTkEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0ZIMmVnVzZ0RWVHcXJkX19CMHlVTkEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpUcmFuc2l0aW9uIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRkgyZWdtNnRFZUdxcmRfX0IweVVOQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IlJvYm90TUw6OlRyYW5zaXRpb24uZ3VhcmQiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9GSDJlZzI2dEVlR3FyZF9fQjB5VU5BIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRkgyZWhHNnRFZUdxcmRfX0IweVVOQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2lYRUFJMjZzRWVHcXJkX19CMHlVTkEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDAxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9pWEVBSkc2c0VlR3FyZF9fQjB5VU5BIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfaVhFQUpXNnNFZUdxcmRfX0IweVVOQSIgdHlwZT0iNzAwMiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfaVhFQUptNnNFZUdxcmRfX0IweVVOQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2lYRUFKMjZzRWVHcXJkX19CMHlVTkEiIHR5cGU9IjcwMDMiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2lYRUFLRzZzRWVHcXJkX19CMHlVTkEiIHg9Ii0yOSIgeT0iMzIiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2lYRUFJVzZzRWVHcXJkX19CMHlVTkEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6VHJhbnNpdGlvbiIgaHJlZj0iUm9ib0NhYi51bWwjX2lXTFBVRzZzRWVHcXJkX19CMHlVTkEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2lYRUFJbTZzRWVHcXJkX19CMHlVTkEiIHBvaW50cz0iWzYzLCA4LCAtMTE1LCAtMTQwXSRbMTc4LCA4LCAwLCAtMTQwXSRbMTc4LCAxMzgsIDAsIC0xMF0iLz4KKyAgICA8L2VkZ2VzPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX3YtczNZRUh5RWVHR1hwR3NjcGtqZGciIHR5cGU9IkNvbXBvc2l0ZVN0cnVjdHVyZSIgbmFtZT0iR2VuZXJhdGlvblRlc3RNb2R1bGVzRGlhZ3JhbSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfVUIxY2dFSDFFZUd3R19KS0ZoeWh4dyIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9VQjFjZ2tIMUVlR3dHX0pLRmh5aHh3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVUIxY2cwSDFFZUd3R19KS0ZoeWh4dyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVUIyRGtFSDFFZUd3R19KS0ZoeWh4dyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVUIyRGtVSDFFZUd3R19KS0ZoeWh4dyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9VQjJEa2tIMUVlR3dHX0pLRmh5aHh3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1VCMkRrMEgxRWVHd0dfSktGaHloeHciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9VQjJEbEVIMUVlR3dHX0pLRmh5aHh3IiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1VCMkRsVUgxRWVHd0dfSktGaHloeHciIHR5cGU9IjcwNzMiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9VQjJEbGtIMUVlR3dHX0pLRmh5aHh3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1VCMkRsMEgxRWVHd0dfSktGaHloeHciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9XRFlkZ0VIMUVlR3dHX0pLRmh5aHh3IiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfV0RaRWtFSDFFZUd3R19KS0ZoeWh4dyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfV0RaRWtVSDFFZUd3R19KS0ZoeWh4dyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1dEWkVra0gxRWVHd0dfSktGaHloeHciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfV0RaRWswSDFFZUd3R19KS0ZoeWh4dyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfV0Racm9FSDFFZUd3R19KS0ZoeWh4dyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1dEWnJvVUgxRWVHd0dfSktGaHloeHciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfV0Racm9rSDFFZUd3R19KS0ZoeWh4dyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9XRFpybzBIMUVlR3dHX0pLRmh5aHh3IiB4PSIyNSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9XRFpycEVIMUVlR3dHX0pLRmh5aHh3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9XRFpycFVIMUVlR3dHX0pLRmh5aHh3IiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX21Kemo4RUgwRWVHd0dfSktGaHloeHciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfV0RZZGdVSDFFZUd3R19KS0ZoeWh4dyIgeD0iLTEwIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlJvYm9DYWIudW1sI19pcm1Yc0VIMEVlR3dHX0pLRmh5aHh3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9VQjFjZ1VIMUVlR3dHX0pLRmh5aHh3IiB4PSIxNSIgeT0iMjAiIHdpZHRoPSI1MzgiIGhlaWdodD0iMzE0Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9oSFdONEVKOEVlR2Fxc3JhdjVJS1lnIiB0eXBlPSIyMDczIiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2hIVzA4RUo4RWVHYXFzcmF2NUlLWWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9oSFcwOFVKOEVlR2Fxc3JhdjVJS1lnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9oSFcwOGtKOEVlR2Fxc3JhdjVJS1lnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9oSFhjQUVKOEVlR2Fxc3JhdjVJS1lnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2hIWGNBVUo4RWVHYXFzcmF2NUlLWWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfaEhYY0FrSjhFZUdhcXNyYXY1SUtZZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2hIWGNBMEo4RWVHYXFzcmF2NUlLWWciIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfaEhYY0JFSjhFZUdhcXNyYXY1SUtZZyIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2hIWGNCVUo4RWVHYXFzcmF2NUlLWWciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfaEhYY0JrSjhFZUdhcXNyYXY1SUtZZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlJvYm9DYWIudW1sI180UjhWWUVIeEVlR0dYcEdzY3BramRnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9oSFdONFVKOEVlR2Fxc3JhdjVJS1lnIiB4PSI1ODAiIHk9IjIwIiB3aWR0aD0iNTU2IiBoZWlnaHQ9IjMxNiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il92LXMzWVVIeUVlR0dYcEdzY3BramRnIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfWnVPX0lIN0xFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iUm9ib0NhYi51bWwjX2Zkekp4NmtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0FQTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlN0cmluZ1ZhbHVlU3R5bGUiIHhtaTppZD0iX1p1T19JWDdMRWVTRnlOYm5MWURDa3ciIG5hbWU9ImRpYWdyYW1fY29tcGF0aWJpbGl0eV92ZXJzaW9uIiBzdHJpbmdWYWx1ZT0iMS4wLjAiLz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6Sng2a19FZUNYcWNSVi0xOGY2USIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX0VLYnBjRUs2RWVHdi01NFdtNG1SV1EiIHR5cGU9IlBhcHlydXNVTUxTdGF0ZU1hY2hpbmVEaWFncmFtIiBuYW1lPSJTbVRlc3REaWFncmFtIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9FS2JwY1VLNkVlR3YtNTRXbTRtUldRIiB0eXBlPSIyMDAwIiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0VLYnBja0s2RWVHdi01NFdtNG1SV1EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9FS2JwYzBLNkVlR3YtNTRXbTRtUldRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9FS2JwZEVLNkVlR3YtNTRXbTRtUldRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9FS2JwZFVLNkVlR3YtNTRXbTRtUldRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0VLYnBka0s2RWVHdi01NFdtNG1SV1EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRUticGQwSzZFZUd2LTU0V200bVJXUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0VLYnBlRUs2RWVHdi01NFdtNG1SV1EiIHR5cGU9IjIwMDEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9FS2JwZVVLNkVlR3YtNTRXbTRtUldRIiB3aWR0aD0iOTMxIiBoZWlnaHQ9IjE1Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfRUticGVrSzZFZUd2LTU0V200bVJXUSIgdHlwZT0iMjAwMiI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0VLYnBlMEs2RWVHdi01NFdtNG1SV1EiIHR5cGU9IjMwMDAiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0VLYnBmRUs2RWVHdi01NFdtNG1SV1EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRUticGZVSzZFZUd2LTU0V200bVJXUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9FS2JwZmtLNkVlR3YtNTRXbTRtUldRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRUticGYwSzZFZUd2LTU0V200bVJXUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0VLYnBnRUs2RWVHdi01NFdtNG1SV1EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0VLYnBnVUs2RWVHdi01NFdtNG1SV1EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9FS2JwZ2tLNkVlR3YtNTRXbTRtUldRIiBzb3VyY2U9IlJlZ2lvbkFubm90YXRpb25LZXkiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9FS2JwZzBLNkVlR3YtNTRXbTRtUldRIiBrZXk9IlJlZ2lvblpvbmVLZXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9FS2JwaEVLNkVlR3YtNTRXbTRtUldRIiB0eXBlPSIzMDAyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX005eVZjRUs2RWVHdi01NFdtNG1SV1EiIHR5cGU9IjYwMDAiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NOXk4Z0VLNkVlR3YtNTRXbTRtUldRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NOXk4Z1VLNkVlR3YtNTRXbTRtUldRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTl5OGdrSzZFZUd2LTU0V200bVJXUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NOXk4ZzBLNkVlR3YtNTRXbTRtUldRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NOXk4aEVLNkVlR3YtNTRXbTRtUldRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTTl5OGhVSzZFZUd2LTU0V200bVJXUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTS1GUVlFSzZFZUd2LTU0V200bVJXUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMTNMZTRFSzhFZUd2LTU0V200bVJXUSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8xM0xlNFVLOEVlR3YtNTRXbTRtUldRIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6U3RhdGUiLz4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzEzTGU0a0s4RWVHdi01NFdtNG1SV1EiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSJSb2JvdE1MOjpTdGF0ZS5vcGVyYXRpb24iLz4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzEzTGU0MEs4RWVHdi01NFdtNG1SV1EiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzEzTGU1RUs4RWVHdi01NFdtNG1SV1EiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTTl5OGhrSzZFZUd2LTU0V200bVJXUSIgdHlwZT0iNjAwMSI+CisgICAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfSVgwbEFFSzhFZUd2LTU0V200bVJXUSIgd2lkdGg9IjE5MSIgaGVpZ2h0PSI3MyIvPgorICAgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9NOXk4aDBLNkVlR3YtNTRXbTRtUldRIiB0eXBlPSI2MDAyIj4KKyAgICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9NOXk4aUVLNkVlR3YtNTRXbTRtUldRIiB5PSI3MyIgd2lkdGg9IjE5MSIgaGVpZ2h0PSI4NyIvPgorICAgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0YXRlIiBocmVmPSJSb2JvQ2FiLnVtbCNfTTlpZDBFSzZFZUd2LTU0V200bVJXUSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9NOXlWY1VLNkVlR3YtNTRXbTRtUldRIiB4PSIzNSIgeT0iMjYyIiB3aWR0aD0iMTkxIiBoZWlnaHQ9IjE2MCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0FzSUVvRUs4RWVHdi01NFdtNG1SV1EiIHR5cGU9IjYwMDAiIGZvbnROYW1lPSJVbkJhdGFuZyIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0FzSUVva0s4RWVHdi01NFdtNG1SV1EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0FzSXJzRUs4RWVHdi01NFdtNG1SV1EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Bc0lyc1VLOEVlR3YtNTRXbTRtUldRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0FzSXJza0s4RWVHdi01NFdtNG1SV1EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0FzSXJzMEs4RWVHdi01NFdtNG1SV1EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9Bc0lydEVLOEVlR3YtNTRXbTRtUldRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Bc005SUVLOEVlR3YtNTRXbTRtUldRIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il91SElDOEVLOEVlR3YtNTRXbTRtUldRIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3VISUM4VUs4RWVHdi01NFdtNG1SV1EiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpTdGF0ZSIvPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdUhJQzhrSzhFZUd2LTU0V200bVJXUSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdUhJQzgwSzhFZUd2LTU0V200bVJXUSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IlJvYm90TUw6OlN0YXRlLm9wZXJhdGlvbiIvPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdUhJQzlFSzhFZUd2LTU0V200bVJXUSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9Bc0lydFVLOEVlR3YtNTRXbTRtUldRIiB0eXBlPSI2MDAxIj4KKyAgICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9Oc29HZ0VLOEVlR3YtNTRXbTRtUldRIiB3aWR0aD0iMTk2IiBoZWlnaHQ9IjczIi8+CisgICAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0FzSXJ0a0s4RWVHdi01NFdtNG1SV1EiIHR5cGU9IjYwMDIiPgorICAgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0FzSXJ0MEs4RWVHdi01NFdtNG1SV1EiIHk9IjczIiB3aWR0aD0iMTk2IiBoZWlnaHQ9Ijg0Ii8+CisgICAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RhdGUiIGhyZWY9IlJvYm9DYWIudW1sI19BcjQwRUVLOEVlR3YtNTRXbTRtUldRIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0FzSUVvVUs4RWVHdi01NFdtNG1SV1EiIHg9IjI5NSIgeT0iMTciIHdpZHRoPSIxOTYiIGhlaWdodD0iMTU3Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfUHYwR1FFSzhFZUd2LTU0V200bVJXUSIgdHlwZT0iNjAwMCIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1B2MEdRa0s4RWVHdi01NFdtNG1SV1EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1B2MEdRMEs4RWVHdi01NFdtNG1SV1EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9QdjBHUkVLOEVlR3YtNTRXbTRtUldRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1B2MEdSVUs4RWVHdi01NFdtNG1SV1EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1B2MEdSa0s4RWVHdi01NFdtNG1SV1EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9QdjBHUjBLOEVlR3YtNTRXbTRtUldRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9QdjQtd0VLOEVlR3YtNTRXbTRtUldRIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9zM2hjUUVLOEVlR3YtNTRXbTRtUldRIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3MzaGNRVUs4RWVHdi01NFdtNG1SV1EiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpTdGF0ZSIvPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfczNoY1FrSzhFZUd2LTU0V200bVJXUSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IlJvYm90TUw6OlN0YXRlLm9wZXJhdGlvbiIvPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfczNoY1EwSzhFZUd2LTU0V200bVJXUSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfczNoY1JFSzhFZUd2LTU0V200bVJXUSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9QdjBHU0VLOEVlR3YtNTRXbTRtUldRIiB0eXBlPSI2MDAxIj4KKyAgICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rWXVyQUVLOEVlR3YtNTRXbTRtUldRIiB3aWR0aD0iMTkxIiBoZWlnaHQ9IjczIi8+CisgICAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1B2MHRVRUs4RWVHdi01NFdtNG1SV1EiIHR5cGU9IjYwMDIiPgorICAgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1B2MHRVVUs4RWVHdi01NFdtNG1SV1EiIHk9IjczIiB3aWR0aD0iMTkxIiBoZWlnaHQ9IjkxIi8+CisgICAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RhdGUiIGhyZWY9IlJvYm9DYWIudW1sI19Qdmpua0VLOEVlR3YtNTRXbTRtUldRIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1B2MEdRVUs4RWVHdi01NFdtNG1SV1EiIHg9IjU0NSIgeT0iMjYyIiB3aWR0aD0iMTkxIiBoZWlnaHQ9IjE2NCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2V4b21rR0x3RWVHUXZ2NXdKRW1HVVEiIHR5cGU9IjgwMDAiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9leG9ta21Md0VlR1F2djV3SkVtR1VRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9leG9tazJMd0VlR1F2djV3SkVtR1VRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZXhvbWxHTHdFZUdRdnY1d0pFbUdVUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9leG9tbFdMd0VlR1F2djV3SkVtR1VRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9leG9tbG1Md0VlR1F2djV3SkVtR1VRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZXhvbWwyTHdFZUdRdnY1d0pFbUdVUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZXg3aGdHTHdFZUdRdnY1d0pFbUdVUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZXg3aGdXTHdFZUdRdnY1d0pFbUdVUSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9leDdoZ21Md0VlR1F2djV3SkVtR1VRIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9leDdoZzJMd0VlR1F2djV3SkVtR1VRIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9leUZTZ0dMd0VlR1F2djV3SkVtR1VRIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9leUZTZ1dMd0VlR1F2djV3SkVtR1VRIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2V4eVhrR0x3RWVHUXZ2NXdKRW1HVVEiIHR5cGU9IjgwMDEiPgorICAgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZXh5WGtXTHdFZUdRdnY1d0pFbUdVUSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZXh5WGttTHdFZUdRdnY1d0pFbUdVUSIgdHlwZT0iODAwMiI+CisgICAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9leHlYazJMd0VlR1F2djV3SkVtR1VRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHNldWRvc3RhdGUiIGhyZWY9IlJvYm9DYWIudW1sI19leENKb0dMd0VlR1F2djV3SkVtR1VRIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2V4b21rV0x3RWVHUXZ2NXdKRW1HVVEiIHg9Ijg5IiB5PSIxMTQiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9nN2VBNEdMd0VlR1F2djV3SkVtR1VRIiB0eXBlPSI1MDAwIiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZzdlQTRtTHdFZUdRdnY1d0pFbUdVUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZzdlQTQyTHdFZUdRdnY1d0pFbUdVUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2c3ZUE1R0x3RWVHUXZ2NXdKRW1HVVEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZzdlQTVXTHdFZUdRdnY1d0pFbUdVUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZzdlQTVtTHdFZUdRdnY1d0pFbUdVUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2c3ZUE1Mkx3RWVHUXZ2NXdKRW1HVVEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2c3bng0R0x3RWVHUXZ2NXdKRW1HVVEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0lfUG1ZR0x5RWVHUXZ2NXdKRW1HVVEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSV9QbVlXTHlFZUdRdnY1d0pFbUdVUSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSV9QbVltTHlFZUdRdnY1d0pFbUdVUSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSV9QbVkyTHlFZUdRdnY1d0pFbUdVUSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSV9QbVpHTHlFZUdRdnY1d0pFbUdVUSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9nN2VBNkdMd0VlR1F2djV3SkVtR1VRIiB0eXBlPSI1MDAxIj4KKyAgICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2c3ZUE2V0x3RWVHUXZ2NXdKRW1HVVEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2c3ZUE2bUx3RWVHUXZ2NXdKRW1HVVEiIHR5cGU9IjUwMDIiPgorICAgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZzdlQTYyTHdFZUdRdnY1d0pFbUdVUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkZpbmFsU3RhdGUiIGhyZWY9IlJvYm9DYWIudW1sI19nN1VQNEdMd0VlR1F2djV3SkVtR1VRIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2c3ZUE0V0x3RWVHUXZ2NXdKRW1HVVEiIHg9IjY2MSIgeT0iMTE2Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfRUticGhVSzZFZUd2LTU0V200bVJXUSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpSZWdpb24iIGhyZWY9IlJvYm9DYWIudW1sI19FS1BjTUVLNkVlR3YtNTRXbTRtUldRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfRUticGhrSzZFZUd2LTU0V200bVJXUSIgd2lkdGg9IjkzMSIgaGVpZ2h0PSI0NjYiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfRUticGgwSzZFZUd2LTU0V200bVJXUSIgeT0iMTUiIHdpZHRoPSI5MzEiIGhlaWdodD0iNDY2Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGF0ZU1hY2hpbmUiIGhyZWY9IlJvYm9DYWIudW1sI19EZTVaSUVLNkVlR3YtNTRXbTRtUldRIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9FS2JwaUVLNkVlR3YtNTRXbTRtUldRIiB4PSIzMCIgeT0iMzAiIHdpZHRoPSI5MzEiIGhlaWdodD0iNDgxIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX0VLYnBpVUs2RWVHdi01NFdtNG1SV1EiLz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0YXRlTWFjaGluZSIgaHJlZj0iUm9ib0NhYi51bWwjX0RlNVpJRUs2RWVHdi01NFdtNG1SV1EiLz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfNG55bFVFSzhFZUd2LTU0V200bVJXUSIgdHlwZT0iNzAwMCIgc291cmNlPSJfTTl5VmNFSzZFZUd2LTU0V200bVJXUSIgdGFyZ2V0PSJfQXNJRW9FSzhFZUd2LTU0V200bVJXUSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il80cFFrOEVLOEVlR3YtNTRXbTRtUldRIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNHBSTUFFSzhFZUd2LTU0V200bVJXUSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNHBSTUFVSzhFZUd2LTU0V200bVJXUSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlRyYW5zaXRpb24iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il80cFJNQWtLOEVlR3YtNTRXbTRtUldRIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNHBSTUEwSzhFZUd2LTU0V200bVJXUSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzRwUk1CRUs4RWVHdi01NFdtNG1SV1EiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il80bnpNWUVLOEVlR3YtNTRXbTRtUldRIiB0eXBlPSI3MDAxIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzBqNE9nRUs5RWVHdi01NFdtNG1SV1EiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzBrSjdVRUs5RWVHdi01NFdtNG1SV1EiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMGtKN1VVSzlFZUd2LTU0V200bVJXUSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlRyYW5zaXRpb24iLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzBrSjdVa0s5RWVHdi01NFdtNG1SV1EiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSJSb2JvdE1MOjpUcmFuc2l0aW9uLmd1YXJkIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wa0o3VTBLOUVlR3YtNTRXbTRtUldRIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wa0o3VkVLOUVlR3YtNTRXbTRtUldRIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfNG56TVlVSzhFZUd2LTU0V200bVJXUSIgeD0iOSIgeT0iLTMzIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfNG56TVlrSzhFZUd2LTU0V200bVJXUSIgdHlwZT0iNzAwMiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfNG56TVkwSzhFZUd2LTU0V200bVJXUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzRuek1aRUs4RWVHdi01NFdtNG1SV1EiIHR5cGU9IjcwMDMiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzRuek1aVUs4RWVHdi01NFdtNG1SV1EiIHg9Ii01IiB5PSItMzUiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iXzRueWxVVUs4RWVHdi01NFdtNG1SV1EiIGZvbnROYW1lPSJVYnVudHUiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6VHJhbnNpdGlvbiIgaHJlZj0iUm9ib0NhYi51bWwjXzRuZDFNRUs4RWVHdi01NFdtNG1SV1EiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iXzRueWxVa0s4RWVHdi01NFdtNG1SV1EiIHBvaW50cz0iWzEwLCAtMjAsIC0xNjcsIDIzNF0kWzc5LCAtMjU1LCAtOTgsIC0xXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iXzRwcTBvRUs4RWVHdi01NFdtNG1SV1EiIGlkPSIoMC45NDc2NDM5NzkwNTc1OTE2LDAuNTU0MTQwMTI3Mzg4NTM1KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iXzZDWHM4RUs4RWVHdi01NFdtNG1SV1EiIHR5cGU9IjcwMDAiIHNvdXJjZT0iX0FzSUVvRUs4RWVHdi01NFdtNG1SV1EiIHRhcmdldD0iX005eVZjRUs2RWVHdi01NFdtNG1SV1EiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNkNwWndFSzhFZUd2LTU0V200bVJXUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZDcFp3VUs4RWVHdi01NFdtNG1SV1EiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZDcFp3a0s4RWVHdi01NFdtNG1SV1EiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpUcmFuc2l0aW9uIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNkNwWncwSzhFZUd2LTU0V200bVJXUSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZDcFp4RUs4RWVHdi01NFdtNG1SV1EiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il82Q3BaeFVLOEVlR3YtNTRXbTRtUldRIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfNkNZVUFFSzhFZUd2LTU0V200bVJXUSIgdHlwZT0iNzAwMSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfNkNZVUFVSzhFZUd2LTU0V200bVJXUSIgeD0iLTE2IiB5PSItMjgiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il82Q1lVQWtLOEVlR3YtNTRXbTRtUldRIiB0eXBlPSI3MDAyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il82Q1lVQTBLOEVlR3YtNTRXbTRtUldRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfNkNZVUJFSzhFZUd2LTU0V200bVJXUSIgdHlwZT0iNzAwMyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfNkNZVUJVSzhFZUd2LTU0V200bVJXUSIgeD0iLTIiIHk9Ii0zMyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfNkNYczhVSzhFZUd2LTU0V200bVJXUSIgZm9udE5hbWU9IlVidW50dSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpUcmFuc2l0aW9uIiBocmVmPSJSb2JvQ2FiLnVtbCNfNkNHbk1FSzhFZUd2LTU0V200bVJXUSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfNkNYczhrSzhFZUd2LTU0V200bVJXUSIgcG9pbnRzPSJbLTEwLCAxMywgMTU3LCAtMjI3XSRbLTE0NiwgMjU2LCAyMSwgMTZdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfNkRCMFFFSzhFZUd2LTU0V200bVJXUSIgaWQ9IigwLjM5Mjg1NzE0Mjg1NzE0Mjg1LDAuOTE2NjY2NjY2NjY2NjY2NikiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il82REIwUVVLOEVlR3YtNTRXbTRtUldRIiBpZD0iKDAuODkwMDUyMzU2MDIwOTQyNSwwLjg3ODk4MDg5MTcxOTc0NTIpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfNjk3V1FFSzhFZUd2LTU0V200bVJXUSIgdHlwZT0iNzAwMCIgc291cmNlPSJfQXNJRW9FSzhFZUd2LTU0V200bVJXUSIgdGFyZ2V0PSJfUHYwR1FFSzhFZUd2LTU0V200bVJXUSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il82LU5ERUVLOEVlR3YtNTRXbTRtUldRIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNi1OREVVSzhFZUd2LTU0V200bVJXUSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNi1OREVrSzhFZUd2LTU0V200bVJXUSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlRyYW5zaXRpb24iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il82LU5xSUVLOEVlR3YtNTRXbTRtUldRIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNi1OcUlVSzhFZUd2LTU0V200bVJXUSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzYtTnFJa0s4RWVHdi01NFdtNG1SV1EiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il82OTc5VUVLOEVlR3YtNTRXbTRtUldRIiB0eXBlPSI3MDAxIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1l6eXl3RUs5RWVHdi01NFdtNG1SV1EiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2Fpc2trRUs5RWVHdi01NFdtNG1SV1EiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYWlza2tVSzlFZUd2LTU0V200bVJXUSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlRyYW5zaXRpb24iLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2Fpc2tra0s5RWVHdi01NFdtNG1SV1EiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2Fpc2trMEs5RWVHdi01NFdtNG1SV1EiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2Fpc2tsRUs5RWVHdi01NFdtNG1SV1EiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il82OTc5VVVLOEVlR3YtNTRXbTRtUldRIiB4PSItNiIgeT0iLTQ1Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfNjk3OVVrSzhFZUd2LTU0V200bVJXUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMDIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzY5NzlVMEs4RWVHdi01NFdtNG1SV1EiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il82OTc5VkVLOEVlR3YtNTRXbTRtUldRIiB0eXBlPSI3MDAzIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il82OTc5VlVLOEVlR3YtNTRXbTRtUldRIiB4PSIxIiB5PSItNDIiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iXzY5N1dRVUs4RWVHdi01NFdtNG1SV1EiIGZvbnROYW1lPSJVYnVudHUiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6VHJhbnNpdGlvbiIgaHJlZj0iUm9ib0NhYi51bWwjXzY5cmVvRUs4RWVHdi01NFdtNG1SV1EiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iXzY5N1dRa0s4RWVHdi01NFdtNG1SV1EiIHBvaW50cz0iWzEzLCAyMiwgLTEzMCwgLTIwM10kWzExOSwgMjM2LCAtMjQsIDExXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iXzYtbUVvRUs4RWVHdi01NFdtNG1SV1EiIGlkPSIoMC42NjgzNjczNDY5Mzg3NzU1LDAuODU4OTc0MzU4OTc0MzU4OSkiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il82LW1Fb1VLOEVlR3YtNTRXbTRtUldRIiBpZD0iKDAuMTI1NjU0NDUwMjYxNzgwMSwwLjcwODA3NDUzNDE2MTQ5MDcpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfN2kta0VFSzhFZUd2LTU0V200bVJXUSIgdHlwZT0iNzAwMCIgc291cmNlPSJfUHYwR1FFSzhFZUd2LTU0V200bVJXUSIgdGFyZ2V0PSJfQXNJRW9FSzhFZUd2LTU0V200bVJXUSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il83alBwMEVLOEVlR3YtNTRXbTRtUldRIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfN2pQcDBVSzhFZUd2LTU0V200bVJXUSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfN2pRUTRFSzhFZUd2LTU0V200bVJXUSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlRyYW5zaXRpb24iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il83alFRNFVLOEVlR3YtNTRXbTRtUldRIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfN2pRUTRrSzhFZUd2LTU0V200bVJXUSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzdqUVE0MEs4RWVHdi01NFdtNG1SV1EiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il83aS1rRTBLOEVlR3YtNTRXbTRtUldRIiB0eXBlPSI3MDAxIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2xuSy1vRUs5RWVHdi01NFdtNG1SV1EiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2w1M1JJRUs5RWVHdi01NFdtNG1SV1EiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbDUzUklVSzlFZUd2LTU0V200bVJXUSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlRyYW5zaXRpb24iLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2w1M1JJa0s5RWVHdi01NFdtNG1SV1EiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2w1M1JJMEs5RWVHdi01NFdtNG1SV1EiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2w1M1JKRUs5RWVHdi01NFdtNG1SV1EiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il83aV9MSUVLOEVlR3YtNTRXbTRtUldRIiB4PSIxNSIgeT0iLTMxIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfN2lfTElVSzhFZUd2LTU0V200bVJXUSIgdHlwZT0iNzAwMiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfN2lfTElrSzhFZUd2LTU0V200bVJXUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzdpX0xJMEs4RWVHdi01NFdtNG1SV1EiIHR5cGU9IjcwMDMiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfa3JSLUlFSzlFZUd2LTU0V200bVJXUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfa3JoT3NFSzlFZUd2LTU0V200bVJXUSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rcmhPc1VLOUVlR3YtNTRXbTRtUldRIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6VHJhbnNpdGlvbiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfa3JoT3NrSzlFZUd2LTU0V200bVJXUSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IlJvYm90TUw6OlRyYW5zaXRpb24uZ3VhcmQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2tyaE9zMEs5RWVHdi01NFdtNG1SV1EiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2tyaE90RUs5RWVHdi01NFdtNG1SV1EiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il83aV9MSkVLOEVlR3YtNTRXbTRtUldRIiB4PSIxMCIgeT0iLTM3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il83aS1rRVVLOEVlR3YtNTRXbTRtUldRIiBmb250TmFtZT0iVWJ1bnR1Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlRyYW5zaXRpb24iIGhyZWY9IlJvYm9DYWIudW1sI183aXJwSUVLOEVlR3YtNTRXbTRtUldRIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il83aS1rRWtLOEVlR3YtNTRXbTRtUldRIiBwb2ludHM9IlstMjEsIC0yOSwgMTMzLCAxODFdJFstMTUyLCAtMjAwLCAyLCAxMF0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il83am9yWUVLOEVlR3YtNTRXbTRtUldRIiBpZD0iKDAuMCwwLjcxNDI4NTcxNDI4NTcxNDMpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfN2pvcllVSzhFZUd2LTU0V200bVJXUSIgaWQ9IigwLjU5NjkzODc3NTUxMDIwNDEsMC45MzU4OTc0MzU4OTc0MzU5KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX3RVcUxJR0x3RWVHUXZ2NXdKRW1HVVEiIHR5cGU9IjcwMDAiIHNvdXJjZT0iX2V4b21rR0x3RWVHUXZ2NXdKRW1HVVEiIHRhcmdldD0iX0FzSUVvRUs4RWVHdi01NFdtNG1SV1EiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdFZHM0VHTHdFZUdRdnY1d0pFbUdVUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3RWRzNFV0x3RWVHUXZ2NXdKRW1HVVEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3RWRzNFbUx3RWVHUXZ2NXdKRW1HVVEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpUcmFuc2l0aW9uIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdFZHM0UyTHdFZUdRdnY1d0pFbUdVUSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3RWRzNGR0x3RWVHUXZ2NXdKRW1HVVEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il90VkczRldMd0VlR1F2djV3SkVtR1VRIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfdFVxTEkyTHdFZUdRdnY1d0pFbUdVUSIgdHlwZT0iNzAwMSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdFVxTEpHTHdFZUdRdnY1d0pFbUdVUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3RVcUxKV0x3RWVHUXZ2NXdKRW1HVVEiIHR5cGU9IjcwMDIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3RVcUxKbUx3RWVHUXZ2NXdKRW1HVVEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il90VXFMSjJMd0VlR1F2djV3SkVtR1VRIiB0eXBlPSI3MDAzIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il90VXFMS0dMd0VlR1F2djV3SkVtR1VRIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfdFVxTElXTHdFZUdRdnY1d0pFbUdVUSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpUcmFuc2l0aW9uIiBocmVmPSJSb2JvQ2FiLnVtbCNfdFVOZk1HTHdFZUdRdnY1d0pFbUdVUSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfdFVxTEltTHdFZUdRdnY1d0pFbUdVUSIgcG9pbnRzPSJbMTAsIC0zLCAtMjAzLCA0OV0kWzE5NiwgLTUxLCAtMTcsIDFdIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfdFZqakFHTHdFZUdRdnY1d0pFbUdVUSIgaWQ9IigwLjA4NjczNDY5Mzg3NzU1MTAyLDAuNTU1NTU1NTU1NTU1NTU1NikiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il91UkFlb0dMd0VlR1F2djV3SkVtR1VRIiB0eXBlPSI3MDAwIiBzb3VyY2U9Il9Bc0lFb0VLOEVlR3YtNTRXbTRtUldRIiB0YXJnZXQ9Il9nN2VBNEdMd0VlR1F2djV3SkVtR1VRIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3VSZEtrR0x3RWVHUXZ2NXdKRW1HVVEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il91UmRLa1dMd0VlR1F2djV3SkVtR1VRIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il91UmRLa21Md0VlR1F2djV3SkVtR1VRIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6VHJhbnNpdGlvbiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3VSZEtrMkx3RWVHUXZ2NXdKRW1HVVEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il91UmRLbEdMd0VlR1F2djV3SkVtR1VRIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdVJkS2xXTHdFZUdRdnY1d0pFbUdVUSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3VSQWVvMkx3RWVHUXZ2NXdKRW1HVVEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDAxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il91UkFlcEdMd0VlR1F2djV3SkVtR1VRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfdVJBZXBXTHdFZUdRdnY1d0pFbUdVUSIgdHlwZT0iNzAwMiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdVJBZXBtTHdFZUdRdnY1d0pFbUdVUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3VSQWVwMkx3RWVHUXZ2NXdKRW1HVVEiIHR5cGU9IjcwMDMiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3VSQWVxR0x3RWVHUXZ2NXdKRW1HVVEiIHg9IjIyIiB5PSIyMyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfdVJBZW9XTHdFZUdRdnY1d0pFbUdVUSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpUcmFuc2l0aW9uIiBocmVmPSJSb2JvQ2FiLnVtbCNfdVF0anNHTHdFZUdRdnY1d0pFbUdVUSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfdVJBZW9tTHdFZUdRdnY1d0pFbUdVUSIgcG9pbnRzPSJbMTcsIDQsIC0xODcsIC00NF0kWzIwNywgNDcsIDMsIC0xXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX3VSbTdrR0x3RWVHUXZ2NXdKRW1HVVEiIGlkPSIoMC45MTMyNjUzMDYxMjI0NDg5LDAuNCkiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il91Um03a1dMd0VlR1F2djV3SkVtR1VRIiBpZD0iKDAuODUsMC40NSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il92UEpoNEdMd0VlR1F2djV3SkVtR1VRIiB0eXBlPSI3MDAwIiBzb3VyY2U9Il9QdjBHUUVLOEVlR3YtNTRXbTRtUldRIiB0YXJnZXQ9Il9nN2VBNEdMd0VlR1F2djV3SkVtR1VRIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3ZQbU4wR0x3RWVHUXZ2NXdKRW1HVVEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il92UG1OMFdMd0VlR1F2djV3SkVtR1VRIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il92UG1OMG1Md0VlR1F2djV3SkVtR1VRIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6VHJhbnNpdGlvbiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3ZQbU4wMkx3RWVHUXZ2NXdKRW1HVVEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il92UG1OMUdMd0VlR1F2djV3SkVtR1VRIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdlBtTjFXTHdFZUdRdnY1d0pFbUdVUSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3ZQSmg0Mkx3RWVHUXZ2NXdKRW1HVVEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDAxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il92UEpoNUdMd0VlR1F2djV3SkVtR1VRIiB4PSI5IiB5PSIzNSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3ZQSmg1V0x3RWVHUXZ2NXdKRW1HVVEiIHR5cGU9IjcwMDIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3ZQSmg1bUx3RWVHUXZ2NXdKRW1HVVEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il92UEpoNTJMd0VlR1F2djV3SkVtR1VRIiB0eXBlPSI3MDAzIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il92UEpoNkdMd0VlR1F2djV3SkVtR1VRIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfdlBKaDRXTHdFZUdRdnY1d0pFbUdVUSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpUcmFuc2l0aW9uIiBocmVmPSJSb2JvQ2FiLnVtbCNfdk8xXzRHTHdFZUdRdnY1d0pFbUdVUSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfdlBKaDRtTHdFZUdRdnY1d0pFbUdVUSIgcG9pbnRzPSJbMywgLTE0LCAtMjcsIDEzNl0kWzM1LCAtMTQwLCA1LCAxMF0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il92UDVJd0dMd0VlR1F2djV3SkVtR1VRIiBpZD0iKDAuNTAyNjE3ODAxMDQ3MTIwNCwwLjEzMjA3NTQ3MTY5ODExMzIpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfeVBFMnNHTHdFZUdRdnY1d0pFbUdVUSIgdHlwZT0iNzAwMCIgc291cmNlPSJfTTl5VmNFSzZFZUd2LTU0V200bVJXUSIgdGFyZ2V0PSJfZzdlQTRHTHdFZUdRdnY1d0pFbUdVUSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il95UGhpb0dMd0VlR1F2djV3SkVtR1VRIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeVBoaW9XTHdFZUdRdnY1d0pFbUdVUSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeVBoaW9tTHdFZUdRdnY1d0pFbUdVUSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlRyYW5zaXRpb24iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il95UGhpbzJMd0VlR1F2djV3SkVtR1VRIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeVBoaXBHTHdFZUdRdnY1d0pFbUdVUSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3lQaGlwV0x3RWVHUXZ2NXdKRW1HVVEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il95UEUyczJMd0VlR1F2djV3SkVtR1VRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAwMSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfeVBFMnRHTHdFZUdRdnY1d0pFbUdVUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3lQRTJ0V0x3RWVHUXZ2NXdKRW1HVVEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDAyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il95UEUydG1Md0VlR1F2djV3SkVtR1VRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfeVBFMnQyTHdFZUdRdnY1d0pFbUdVUSIgdHlwZT0iNzAwMyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfeVBFMnVHTHdFZUdRdnY1d0pFbUdVUSIgeD0iMTQyIiB5PSItMTYiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX3lQRTJzV0x3RWVHUXZ2NXdKRW1HVVEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6VHJhbnNpdGlvbiIgaHJlZj0iUm9ib0NhYi51bWwjX3lPb0t3R0x3RWVHUXZ2NXdKRW1HVVEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX3lQRTJzbUx3RWVHUXZ2NXdKRW1HVVEiIHBvaW50cz0iWzM5LCAtMTksIC00NDUsIDIwOV0kWzQ4MSwgLTIxOCwgLTMsIDEwXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX3lQcXNrR0x3RWVHUXZ2NXdKRW1HVVEiIGlkPSIoMC43OTU4MTE1MTgzMjQ2MDczLDAuOTAxOTYwNzg0MzEzNzI1NSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il8xWVBBQUdMd0VlR1F2djV3SkVtR1VRIiB0eXBlPSI3MDAwIiBzb3VyY2U9Il9leG9ta0dMd0VlR1F2djV3SkVtR1VRIiB0YXJnZXQ9Il9NOXlWY0VLNkVlR3YtNTRXbTRtUldRIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzFZcnI4R0x3RWVHUXZ2NXdKRW1HVVEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8xWXJyOFdMd0VlR1F2djV3SkVtR1VRIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8xWXJyOG1Md0VlR1F2djV3SkVtR1VRIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6VHJhbnNpdGlvbiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzFZcnI4Mkx3RWVHUXZ2NXdKRW1HVVEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8xWXJyOUdMd0VlR1F2djV3SkVtR1VRIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMVlycjlXTHdFZUdRdnY1d0pFbUdVUSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzFZUEFBMkx3RWVHUXZ2NXdKRW1HVVEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDAxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8xWVBBQkdMd0VlR1F2djV3SkVtR1VRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfMVlQQUJXTHdFZUdRdnY1d0pFbUdVUSIgdHlwZT0iNzAwMiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMVlQQUJtTHdFZUdRdnY1d0pFbUdVUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzFZUEFCMkx3RWVHUXZ2NXdKRW1HVVEiIHR5cGU9IjcwMDMiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzFZUEFDR0x3RWVHUXZ2NXdKRW1HVVEiIHg9Ii0xIiB5PSIzMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfMVlQQUFXTHdFZUdRdnY1d0pFbUdVUSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpUcmFuc2l0aW9uIiBocmVmPSJSb2JvQ2FiLnVtbCNfMVg4RkVHTHdFZUdRdnY1d0pFbUdVUSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfMVlQQUFtTHdFZUdRdnY1d0pFbUdVUSIgcG9pbnRzPSJbMiwgMTAsIC0zMCwgLTEzN10kWzMyLCAxMzgsIDAsIC05XSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iXzFZMWM4R0x3RWVHUXZ2NXdKRW1HVVEiIGlkPSIoMC41MDI2MTc4MDEwNDcxMjA0LDAuMDU4ODIzNTI5NDExNzY0NzA1KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iXzJ3bWhJR0x3RWVHUXZ2NXdKRW1HVVEiIHR5cGU9IjcwMDAiIHNvdXJjZT0iX2V4b21rR0x3RWVHUXZ2NXdKRW1HVVEiIHRhcmdldD0iX1B2MEdRRUs4RWVHdi01NFdtNG1SV1EiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMnhETkVHTHdFZUdRdnY1d0pFbUdVUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzJ4RE5FV0x3RWVHUXZ2NXdKRW1HVVEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzJ4RE5FbUx3RWVHUXZ2NXdKRW1HVVEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpUcmFuc2l0aW9uIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMnhETkUyTHdFZUdRdnY1d0pFbUdVUSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzJ4RE5GR0x3RWVHUXZ2NXdKRW1HVVEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8yeERORldMd0VlR1F2djV3SkVtR1VRIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfMndtaEkyTHdFZUdRdnY1d0pFbUdVUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMDEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzJ3bWhKR0x3RWVHUXZ2NXdKRW1HVVEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8yd21oSldMd0VlR1F2djV3SkVtR1VRIiB0eXBlPSI3MDAyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8yd21oSm1Md0VlR1F2djV3SkVtR1VRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfMndtaEoyTHdFZUdRdnY1d0pFbUdVUSIgdHlwZT0iNzAwMyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMndtaEtHTHdFZUdRdnY1d0pFbUdVUSIgeD0iLTEyNSIgeT0iLTEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iXzJ3bWhJV0x3RWVHUXZ2NXdKRW1HVVEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6VHJhbnNpdGlvbiIgaHJlZj0iUm9ib0NhYi51bWwjXzJ3VG1NR0x3RWVHUXZ2NXdKRW1HVVEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iXzJ3bWhJbUx3RWVHUXZ2NXdKRW1HVVEiIHBvaW50cz0iWzE3LCA1LCAtNDUxLCAtMTQ4XSRbNDUzLCAxNDAsIC0xNSwgLTEzXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iXzJ4TS1FR0x3RWVHUXZ2NXdKRW1HVVEiIGlkPSIoMC4xNSwwLjQ1KSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iXzJ4TS1FV0x3RWVHUXZ2NXdKRW1HVVEiIGlkPSIoMC4wNzg1MzQwMzE0MTM2MTI1NywwLjA4OTE3MTk3NDUyMjI5Mjk5KSIvPgorICAgIDwvZWRnZXM+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfSGRYeUlFTEFFZUdGeDRpVkV3bzBrQSIgdHlwZT0iUGFweXJ1c1VNTENsYXNzRGlhZ3JhbSIgbmFtZT0iVGVzdENsYXNzRGlhZ3JhbSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfSVZNSzhFTEFFZUdGeDRpVkV3bzBrQSIgdHlwZT0iMjAwOCIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9JVk5aRUVMQUVlR0Z4NGlWRXdvMGtBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSVZOWkVVTEFFZUdGeDRpVkV3bzBrQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSVZOWkVrTEFFZUdGeDRpVkV3bzBrQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSVZOWkUwTEFFZUdGeDRpVkV3bzBrQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9JVk5aRkVMQUVlR0Z4NGlWRXdvMGtBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0lWTlpGVUxBRWVHRng0aVZFd28wa0EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTFAxLU1FTEFFZUdGeDRpVkV3bzBrQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0xRRW5zRUxBRWVHRng0aVZFd28wa0EiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IlJvYm90TUw6OlNvZnR3YXJlIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTFFFbnNVTEFFZUdGeDRpVkV3bzBrQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlNvZnR3YXJlIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTFFFbnNrTEFFZUdGeDRpVkV3bzBrQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0xRRk93RUxBRWVHRng0aVZFd28wa0EiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9MUUZPd1VMQUVlR0Z4NGlWRXdvMGtBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfSVZPQUlFTEFFZUdGeDRpVkV3bzBrQSIgdHlwZT0iNTAyOSIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9JVk9BSVVMQUVlR0Z4NGlWRXdvMGtBIiB0eXBlPSI3MDE3Ij4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfVG5ZMzhFTEFFZUdGeDRpVkV3bzBrQSIgdHlwZT0iMzAxMiIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19tSnpqOEVIMEVlR3dHX0pLRmh5aHh3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9UblkzOFVMQUVlR0Z4NGlWRXdvMGtBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0lWT0FJa0xBRWVHRng0aVZFd28wa0EiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9JVk9BSTBMQUVlR0Z4NGlWRXdvMGtBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9JVk9BSkVMQUVlR0Z4NGlWRXdvMGtBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0lWT0FKVUxBRWVHRng0aVZFd28wa0EiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0lWT0FKa0xBRWVHRng0aVZFd28wa0EiIHR5cGU9IjcwMTgiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9NLXhsTUVMQUVlR0Z4NGlWRXdvMGtBIiB0eXBlPSIzMDEzIiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiBocmVmPSJSb2JvQ2FiLnVtbCNfZ0RXZTBFS19FZUdGeDRpVkV3bzBrQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTS14bE1VTEFFZUdGeDRpVkV3bzBrQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9JVk9BSjBMQUVlR0Z4NGlWRXdvMGtBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfSVZPQUtFTEFFZUdGeDRpVkV3bzBrQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfSVZPQUtVTEFFZUdGeDRpVkV3bzBrQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9JVk9BS2tMQUVlR0Z4NGlWRXdvMGtBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9JVk9BSzBMQUVlR0Z4NGlWRXdvMGtBIiB0eXBlPSI3MDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfSVZPQUxFTEFFZUdGeDRpVkV3bzBrQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0lWT0FMVUxBRWVHRng0aVZFd28wa0EiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0lWT0FMa0xBRWVHRng0aVZFd28wa0EiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfSVZPQUwwTEFFZUdGeDRpVkV3bzBrQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlJvYm9DYWIudW1sI19pcm1Yc0VIMEVlR3dHX0pLRmh5aHh3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9JVk15QUVMQUVlR0Z4NGlWRXdvMGtBIiB4PSI3MCIgeT0iMTQ1IiB3aWR0aD0iMjgxIiBoZWlnaHQ9IjE3NiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfSXZIRzBFTEFFZUdGeDRpVkV3bzBrQSIgdHlwZT0iMjAwOCIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Jdkh0NEVMQUVlR0Z4NGlWRXdvMGtBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSXZIdDRVTEFFZUdGeDRpVkV3bzBrQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSXZIdDRrTEFFZUdGeDRpVkV3bzBrQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSXZIdDQwTEFFZUdGeDRpVkV3bzBrQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Jdkh0NUVMQUVlR0Z4NGlWRXdvMGtBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0l2SHQ1VUxBRWVHRng0aVZFd28wa0EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9JdklVOEVMQUVlR0Z4NGlWRXdvMGtBIiB0eXBlPSI1MDI5Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0l2SVU4VUxBRWVHRng0aVZFd28wa0EiIHR5cGU9IjcwMTciPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9SX3FGSUVMQUVlR0Z4NGlWRXdvMGtBIiB0eXBlPSIzMDEyIiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX0ZwWEl3RUstRWVHdi01NFdtNG1SV1EiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1JfcUZJVUxBRWVHRng0aVZFd28wa0EiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfUl9xRklrTEFFZUdGeDRpVkV3bzBrQSIgdHlwZT0iMzAxMiIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlJvYm9DYWIudW1sI19UVllNMEVLLUVlR3YtNTRXbTRtUldRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9SX3FGSTBMQUVlR0Z4NGlWRXdvMGtBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1JfcXNNRUxBRWVHRng0aVZFd28wa0EiIHR5cGU9IjMwMTIiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJSb2JvQ2FiLnVtbCNfYUwxSFFFSy1FZUd2LTU0V200bVJXUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfUl9xc01VTEFFZUdGeDRpVkV3bzBrQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9SX3JUUUVMQUVlR0Z4NGlWRXdvMGtBIiB0eXBlPSIzMDEyIiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iUm9ib0NhYi51bWwjX2Q5d2d3RUstRWVHdi01NFdtNG1SV1EiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1JfclRRVUxBRWVHRng0aVZFd28wa0EiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfSXZJVThrTEFFZUdGeDRpVkV3bzBrQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0l2SVU4MExBRWVHRng0aVZFd28wa0EiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0l2SVU5RUxBRWVHRng0aVZFd28wa0EiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfSXZJVTlVTEFFZUdGeDRpVkV3bzBrQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfSXZJVTlrTEFFZUdGeDRpVkV3bzBrQSIgdHlwZT0iNzAxOCI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1JfcjZVRUxBRWVHRng0aVZFd28wa0EiIHR5cGU9IjMwMTMiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IlJvYm9DYWIudW1sI19MSjI1c0VLNkVlR3YtNTRXbTRtUldRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9SX3I2VVVMQUVlR0Z4NGlWRXdvMGtBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1JfcjZVa0xBRWVHRng0aVZFd28wa0EiIHR5cGU9IjMwMTMiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IlJvYm9DYWIudW1sI19jbzlOMEVLNkVlR3YtNTRXbTRtUldRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9SX3I2VTBMQUVlR0Z4NGlWRXdvMGtBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1Jfc2hZRUxBRWVHRng0aVZFd28wa0EiIHR5cGU9IjMwMTMiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IlJvYm9DYWIudW1sI19seEN6c0VLNkVlR3YtNTRXbTRtUldRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9SX3NoWVVMQUVlR0Z4NGlWRXdvMGtBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1JfdEljRUxBRWVHRng0aVZFd28wa0EiIHR5cGU9IjMwMTMiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IlJvYm9DYWIudW1sI19zRC1LVUVLNkVlR3YtNTRXbTRtUldRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9SX3RJY1VMQUVlR0Z4NGlWRXdvMGtBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1JfdElja0xBRWVHRng0aVZFd28wa0EiIHR5cGU9IjMwMTMiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IlJvYm9DYWIudW1sI19ybmZOTUVLN0VlR3YtNTRXbTRtUldRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9SX3RJYzBMQUVlR0Z4NGlWRXdvMGtBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1JfdHZnRUxBRWVHRng0aVZFd28wa0EiIHR5cGU9IjMwMTMiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IlJvYm9DYWIudW1sI196c21USUVLN0VlR3YtNTRXbTRtUldRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9SX3R2Z1VMQUVlR0Z4NGlWRXdvMGtBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0l2SVU5MExBRWVHRng0aVZFd28wa0EiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9JdklVLUVMQUVlR0Z4NGlWRXdvMGtBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9JdklVLVVMQUVlR0Z4NGlWRXdvMGtBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0l2SVUta0xBRWVHRng0aVZFd28wa0EiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0l2SVUtMExBRWVHRng0aVZFd28wa0EiIHR5cGU9IjcwMTkiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9SX3VXa0VMQUVlR0Z4NGlWRXdvMGtBIiB0eXBlPSIzMDE0IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RhdGVNYWNoaW5lIiBocmVmPSJSb2JvQ2FiLnVtbCNfRGU1WklFSzZFZUd2LTU0V200bVJXUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfUl91V2tVTEFFZUdGeDRpVkV3bzBrQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9SX3VXa2tMQUVlR0Z4NGlWRXdvMGtBIiB0eXBlPSIzMDE0IiBmb250TmFtZT0iVWJ1bnR1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6T3BhcXVlQmVoYXZpb3IiIGhyZWY9IlJvYm9DYWIudW1sI182cUpKZ0VLNkVlR3YtNTRXbTRtUldRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9SX3VXazBMQUVlR0Z4NGlWRXdvMGtBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1JfdTlvRUxBRWVHRng0aVZFd28wa0EiIHR5cGU9IjMwMTQiIGZvbnROYW1lPSJVYnVudHUiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGFxdWVCZWhhdmlvciIgaHJlZj0iUm9ib0NhYi51bWwjX01KOG9RRUs3RWVHdi01NFdtNG1SV1EiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1JfdTlvVUxBRWVHRng0aVZFd28wa0EiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfUl92a3NFTEFFZUdGeDRpVkV3bzBrQSIgdHlwZT0iMzAxNCIgZm9udE5hbWU9IlVidW50dSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wYXF1ZUJlaGF2aW9yIiBocmVmPSJSb2JvQ2FiLnVtbCNfTS01VFFFSzdFZUd2LTU0V200bVJXUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfUl92a3NVTEFFZUdGeDRpVkV3bzBrQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9JdklVX0VMQUVlR0Z4NGlWRXdvMGtBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfSXZJVV9VTEFFZUdGeDRpVkV3bzBrQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfSXZJVV9rTEFFZUdGeDRpVkV3bzBrQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9JdklVXzBMQUVlR0Z4NGlWRXdvMGtBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iUm9ib0NhYi51bWwjXzRSOFZZRUh4RWVHR1hwR3NjcGtqZGciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0l2SEcwVUxBRWVHRng0aVZFd28wa0EiIHg9IjM5MCIgeT0iMTQ1IiB3aWR0aD0iMzcxIiBoZWlnaHQ9IjMzNiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9IZFh5SVVMQUVlR0Z4NGlWRXdvMGtBIi8+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iUm9ib0NhYi51bWwjX2Zkekp4NmtfRWVDWHFjUlYtMThmNlEiLz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il96eUxpc0diV0VlR0dOdVgxSUhnMXpnIiB0eXBlPSJDb21wb3NpdGVTdHJ1Y3R1cmUiIG5hbWU9IlRhcmdldFBsYXRmb3Jtc0RpYWdyYW0iIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3Y4NzZBR2JYRWVHanhjOGM3WkJrUFEiIHR5cGU9IjIwNzMiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdjlGckFHYlhFZUdqeGM4YzdaQmtQUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3Y5RnJBV2JYRWVHanhjOGM3WkJrUFEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3Y5RnJBbWJYRWVHanhjOGM3WkJrUFEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3Y5RnJBMmJYRWVHanhjOGM3WkJrUFEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdjlGckJHYlhFZUdqeGM4YzdaQmtQUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il92OUZyQldiWEVlR2p4YzhjN1pCa1BRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3dDUzdJR2JYRWVHanhjOGM3WkJrUFEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il81RWRmTUdiWEVlR2p4YzhjN1pCa1BRIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il81RWRmTVdiWEVlR2p4YzhjN1pCa1BRIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6UGxhdGZvcm0iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il81RWRmTW1iWEVlR2p4YzhjN1pCa1BRIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzVFZGZNMmJYRWVHanhjOGM3WkJrUFEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il81RWRmTkdiWEVlR2p4YzhjN1pCa1BRIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfdjlGckJtYlhFZUdqeGM4YzdaQmtQUSIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il92OUZyQjJiWEVlR2p4YzhjN1pCa1BRIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfdjlGckNHYlhFZUdqeGM4YzdaQmtQUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il92OUZyQ1diWEVlR2p4YzhjN1pCa1BRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iUm9ib0NhYi51bWwjX3Y4Q2lJR2JYRWVHanhjOGM3WkJrUFEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3Y4NzZBV2JYRWVHanhjOGM3WkJrUFEiIHg9IjEyOSIgeT0iNzIiIHdpZHRoPSIxNzIiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX09sRUVjR2JaRWVHVFZfNzM1cHpVWFEiIHR5cGU9IjIwNzMiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfT2xFRWNtYlpFZUdUVl83MzVwelVYUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX09sRUVjMmJaRWVHVFZfNzM1cHpVWFEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX09sRUVkR2JaRWVHVFZfNzM1cHpVWFEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX09sRUVkV2JaRWVHVFZfNzM1cHpVWFEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfT2xFRWRtYlpFZUdUVl83MzVwelVYUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9PbEVFZDJiWkVlR1RWXzczNXB6VVhRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2JQaXpBR2JaRWVHVFZfNzM1cHpVWFEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ESDVRZ3lHNEVlS0JjOHFoeGx2T19RIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ESDVRaENHNEVlS0JjOHFoeGx2T19RIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfREg1UWhTRzRFZUtCYzhxaHhsdk9fUSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0RINVFoaUc0RWVLQmM4cWh4bHZPX1EiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ESDVRaHlHNEVlS0JjOHFoeGx2T19RIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfT2xFRWVHYlpFZUdUVl83MzVwelVYUSIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9PbEVFZVdiWkVlR1RWXzczNXB6VVhRIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfT2xFRWVtYlpFZUdUVl83MzVwelVYUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9PbEVFZTJiWkVlR1RWXzczNXB6VVhRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iUm9ib0NhYi51bWwjX09qM3hvR2JaRWVHVFZfNzM1cHpVWFEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX09sRUVjV2JaRWVHVFZfNzM1cHpVWFEiIHg9IjE1NSIgeT0iMTkwIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9qZFFiVUdiWkVlR1RWXzczNXB6VVhRIiB0eXBlPSIyMDczIiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2pkUWJVbWJaRWVHVFZfNzM1cHpVWFEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9qZFFiVTJiWkVlR1RWXzczNXB6VVhRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9qZFFiVkdiWkVlR1RWXzczNXB6VVhRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9qZFFiVldiWkVlR1RWXzczNXB6VVhRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2pkUWJWbWJaRWVHVFZfNzM1cHpVWFEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfamRRYlYyYlpFZUdUVl83MzVwelVYUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9qZGpXUUdiWkVlR1RWXzczNXB6VVhRIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfamRqV1FXYlpFZUdUVl83MzVwelVYUSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfamRqV1FtYlpFZUdUVl83MzVwelVYUSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlJvYm90aWNNaWRkbGV3YXJlIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfamRqV1EyYlpFZUdUVl83MzVwelVYUSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2pkaldSR2JaRWVHVFZfNzM1cHpVWFEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9qZGpXUldiWkVlR1RWXzczNXB6VVhRIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfamRRYldHYlpFZUdUVl83MzVwelVYUSIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9qZFFiV1diWkVlR1RWXzczNXB6VVhRIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfamRRYldtYlpFZUdUVl83MzVwelVYUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9qZFFiVzJiWkVlR1RWXzczNXB6VVhRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iUm9ib0NhYi51bWwjX2pjcC1ZR2JaRWVHVFZfNzM1cHpVWFEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2pkUWJVV2JaRWVHVFZfNzM1cHpVWFEiIHg9IjE2MCIgeT0iMzAwIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX3p5TGlzV2JXRWVHR051WDFJSGcxemciLz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJzdHlsZTpQYXB5cnVzVmlld1N0eWxlIiB4bWk6aWQ9Il9rdEdnY0g3TEVlU0Z5TmJuTFlEQ2t3Ij4KKyAgICAgIDxvd25lciB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IlJvYm9DYWIudW1sI190UjFiSUdiV0VlR0dOdVgxSUhnMXpnIi8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBreldCZkxfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IlJvYm9DYWIudW1sI190UjFiSUdiV0VlR0dOdVgxSUhnMXpnIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfQ3d0M01HYmFFZUdUVl83MzVwelVYUSIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJQbGF0Zm9ybUFyY2hpdGVjdHVyZURpYWdyYW0iIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0RWWGNZR2JhRWVHVFZfNzM1cHpVWFEiIHR5cGU9IjIwNzMiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRFZoTllHYmFFZUdUVl83MzVwelVYUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0RWaE5ZV2JhRWVHVFZfNzM1cHpVWFEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0RWaE5ZbWJhRWVHVFZfNzM1cHpVWFEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0RWaE5ZMmJhRWVHVFZfNzM1cHpVWFEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRFZoTlpHYmFFZUdUVl83MzVwelVYUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9EVmhOWldiYUVlR1RWXzczNXB6VVhRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfRFZoTlptYmFFZUdUVl83MzVwelVYUSIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9EVmhOWjJiYUVlR1RWXzczNXB6VVhRIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfRW1TUnNHYmFFZUdUVl83MzVwelVYUSIgdHlwZT0iMzA3MCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRW1TUnNtYmFFZUdUVl83MzVwelVYUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9FbVNSczJiYUVlR1RWXzczNXB6VVhRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0VtU1J0R2JhRWVHVFZfNzM1cHpVWFEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9FbVNSdFdiYUVlR1RWXzczNXB6VVhRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRW1TUnRtYmFFZUdUVl83MzVwelVYUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRW1TUnQyYmFFZUdUVl83MzVwelVYUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfRW1TUnVHYmFFZUdUVl83MzVwelVYUSIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfRW1TUnVXYmFFZUdUVl83MzVwelVYUSIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9FbVNSdW1iYUVlR1RWXzczNXB6VVhRIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9FbVNSdTJiYUVlR1RWXzczNXB6VVhRIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvQ2FiLnVtbCNfRWxfV3dHYmFFZUdUVl83MzVwelVYUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0VtU1JzV2JhRWVHVFZfNzM1cHpVWFEiIHg9IjI2MSIgeT0iMzIiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfTWFxMEFHYmFFZUdUVl83MzVwelVYUSIgdHlwZT0iMzA3MCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTWFxMEFtYmFFZUdUVl83MzVwelVYUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NYXEwQTJiYUVlR1RWXzczNXB6VVhRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01hcTBCR2JhRWVHVFZfNzM1cHpVWFEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NYXEwQldiYUVlR1RWXzczNXB6VVhRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTWFxMEJtYmFFZUdUVl83MzVwelVYUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTWFxMEIyYmFFZUdUVl83MzVwelVYUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTWFxMENHYmFFZUdUVl83MzVwelVYUSIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfTWFxMENXYmFFZUdUVl83MzVwelVYUSIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9NYXEwQ21iYUVlR1RWXzczNXB6VVhRIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9NYXEwQzJiYUVlR1RWXzczNXB6VVhRIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvQ2FiLnVtbCNfTWFYU0FHYmFFZUdUVl83MzVwelVYUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX01hcTBBV2JhRWVHVFZfNzM1cHpVWFEiIHg9IjIxIiB5PSIzNyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9EVmhOYUdiYUVlR1RWXzczNXB6VVhRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0RWaE5hV2JhRWVHVFZfNzM1cHpVWFEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJSb2JvQ2FiLnVtbCNfdjhDaUlHYlhFZUdqeGM4YzdaQmtQUSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfRFZYY1lXYmFFZUdUVl83MzVwelVYUSIgeD0iMTE0IiB5PSI4MCIgd2lkdGg9IjQyMiIgaGVpZ2h0PSIyMDEiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfQ3d0M01XYmFFZUdUVl83MzVwelVYUSIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX2t0R2djWDdMRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iUm9ib0NhYi51bWwjX3RSMWJJR2JXRWVHR051WDFJSGcxemciLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0FQTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iUm9ib0NhYi51bWwjX3RSMWJJR2JXRWVHR051WDFJSGcxemciLz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il8tSVFhTUtFTkVlS0xVcVg5SUpxMkdnIiB0eXBlPSJDb21wb3NpdGVTdHJ1Y3R1cmUiIG5hbWU9IlJvYm9DYWJFbnZpcm9ubWVudERpYWdyYW0iIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXy0tTWpzS0VORWVLTFVxWDlJSnEyR2ciIHR5cGU9IjIwNzMiIGdyYWRpZW50PSI4OTA1MTg1LCAxNjc3NzIxNSwgMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfLS1XVXNLRU5FZUtMVXFYOUlKcTJHZyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19BNHJVS0VORWVLTFVxWDlJSnEyR2ciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19BNHJVYUVORWVLTFVxWDlJSnEyR2ciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpFbnZpcm9ubWVudCIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19BNHJVcUVORWVLTFVxWDlJSnEyR2ciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX0E0clU2RU5FZUtMVXFYOUlKcTJHZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19BNHJWS0VORWVLTFVxWDlJSnEyR2ciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8tLU1qc3FFTkVlS0xVcVg5SUpxMkdnIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXy0tTWpzNkVORWVLTFVxWDlJSnEyR2ciIHR5cGU9IjcwNzMiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfLS1NanRxRU5FZUtMVXFYOUlKcTJHZyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tLU1qdDZFTkVlS0xVcVg5SUpxMkdnIiBrZXk9InNob3dUaXRsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0s5NEJ3S0VPRWVLTFVxWDlJSnEyR2ciIHR5cGU9IjMwNzAiIGdyYWRpZW50PSIxMDI2NTgyNywgMTY3NzcyMTUsIDAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9hTmJWSUtFT0VlS0xVcVg5SUpxMkdnIiBzb3VyY2U9IlBhcHlydXNIeXBlckxpbmtfRGlhZ3JhbSIgcmVmZXJlbmNlcz0iX09DVkZrQndBRWVHYTViSF9SSkZ6QlEiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9hTmJWSWFFT0VlS0xVcVg5SUpxMkdnIiBrZXk9InRvb2x0aXBfdGV4dCIgdmFsdWU9IlJvYm9jYWJEZWZhdWx0QXJjaGl0ZWN0dXJlIi8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2FOYlZJcUVPRWVLTFVxWDlJSnEyR2ciIGtleT0iZGlhZ3JhbV9uYW1lIiB2YWx1ZT0iUm9ib2NhYkRlZmF1bHRBcmNoaXRlY3R1cmUiLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYU5iVkk2RU9FZUtMVXFYOUlKcTJHZyIga2V5PSJpc19kZWZhdWx0X25hdmlnYXRpb24iIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfSzk0QndxRU9FZUtMVXFYOUlKcTJHZyIgdHlwZT0iNTEyNiI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVmFMQmdLRU9FZUtMVXFYOUlKcTJHZyIgc291cmNlPSJQYXB5cnVzSHlwZXJMaW5rX0RpYWdyYW0iIHJlZmVyZW5jZXM9Il9PQ1ZGa0J3QUVlR2E1YkhfUkpGekJRIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9WYUxCZ2FFT0VlS0xVcVg5SUpxMkdnIiBrZXk9InRvb2x0aXBfdGV4dCIgdmFsdWU9IlJvYm9jYWJEZWZhdWx0QXJjaGl0ZWN0dXJlIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVmFMQmdxRU9FZUtMVXFYOUlKcTJHZyIga2V5PSJkaWFncmFtX25hbWUiIHZhbHVlPSJSb2JvY2FiRGVmYXVsdEFyY2hpdGVjdHVyZSIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1ZhTEJnNkVPRWVLTFVxWDlJSnEyR2ciIGtleT0iaXNfZGVmYXVsdF9uYXZpZ2F0aW9uIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0s5NEJ3NkVPRWVLTFVxWDlJSnEyR2ciIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0stQnl3S0VPRWVLTFVxWDlJSnEyR2ciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0stQnl3YUVPRWVLTFVxWDlJSnEyR2ciIGtleT0ic2hvd1RpdGxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1Iwc3ZvS0VPRWVLTFVxWDlJSnEyR2ciIGtleT0idmlzaWJsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfSzk0QnhLRU9FZUtMVXFYOUlKcTJHZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfSzk0QnhhRU9FZUtMVXFYOUlKcTJHZyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib0NhYi51bWwjX0s5bEcwS0VPRWVLTFVxWDlJSnEyR2ciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9LOTRCd2FFT0VlS0xVcVg5SUpxMkdnIiB4PSIxNzgiIHk9IjExNSIgd2lkdGg9IjE4NSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il8tLU1qdEtFTkVlS0xVcVg5SUpxMkdnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXy0tTWp0YUVORWVLTFVxWDlJSnEyR2ciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJSb2JvQ2FiLnVtbCNfLTltdDBLRU5FZUtMVXFYOUlKcTJHZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfLS1NanNhRU5FZUtMVXFYOUlKcTJHZyIgeD0iOTciIHk9IjkwIiB3aWR0aD0iNjM0IiBoZWlnaHQ9IjQzNiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il8tSVFhTWFFTkVlS0xVcVg5SUpxMkdnIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfYkVCdFlIN0xFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iUm9ib0NhYi51bWwjX2ZkekkwYWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0FQTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlN0cmluZ1ZhbHVlU3R5bGUiIHhtaTppZD0iX2JFQnRZWDdMRWVTRnlOYm5MWURDa3ciIG5hbWU9ImRpYWdyYW1fY29tcGF0aWJpbGl0eV92ZXJzaW9uIiBzdHJpbmdWYWx1ZT0iMS4wLjAiLz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJSb2JvQ2FiLnVtbCNfZmR6STBha19FZUNYcWNSVi0xOGY2USIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxjc3M6TW9kZWxTdHlsZVNoZWV0cyB4bWk6aWQ9Il8xTzVTNE15ckVlU2J3XzdacXMwS2hRIi8+Cis8L3htaTpYTUk+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3Jlc291cmNlL1JvYm9DYWIudW1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9yZXNvdXJjZS9Sb2JvQ2FiLnVtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZTFkMDI2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9yZXNvdXJjZS9Sb2JvQ2FiLnVtbApAQCAtMCwwICsxLDE0MTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8eG1pOlhNSSB4bWk6dmVyc2lvbj0iMjAxMzEwMDEiIHhtbG5zOnhtaT0iaHR0cDovL3d3dy5vbWcub3JnL3NwZWMvWE1JLzIwMTMxMDAxIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiAgeG1sbnM6Um9ib3RNTD0iaHR0cDovL1BhcHlydXMvUm9ib3RNTC8xIiB4bWxuczplY29yZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSIgeG1sbnM6dW1sPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIiA+CisgIDx1bWw6TW9kZWwgeG1pOmlkPSJfZmR6STBLa19FZUNYcWNSVi0xOGY2USIgbmFtZT0iUm9ib0NhYiI+CisgICAgPHBhY2thZ2VJbXBvcnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlSW1wb3J0IiB4bWk6aWQ9Il9fWGJ6NEtrX0VlQ1lhWWkwaHpxNWtnIj4KKyAgICAgIDxpbXBvcnRlZFBhY2thZ2UgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfZHRfeTRBSHRFZUNRUU9LcmhPX2ZJUSIvPgorICAgIDwvcGFja2FnZUltcG9ydD4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6TW9kZWwiIHhtaTppZD0iX2ZkekkwYWtfRWVDWHFjUlYtMThmNlEiIG5hbWU9IkNvcmVNb2RlbCI+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX2ZkekkwcWtfRWVDWHFjUlYtMThmNlEiIG5hbWU9IlJvYm9DYWIiPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfZmR6STE2a19FZUNYcWNSVi0xOGY2USIgbmFtZT0ibGFuZGlzIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9mZHpKWjZrX0VlQ1hxY1JWLTE4ZjZRIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9mZHpJMmFrX0VlQ1hxY1JWLTE4ZjZRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2ZkekkyS2tfRWVDWHFjUlYtMThmNlEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2ZkekkycWtfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX0JFLWVnS2xtRWVDTGt1NFJGckk3dXciIG5hbWU9Im1pc3Npb25HZW5lcmF0b3IiIHR5cGU9Il9hRzVTa0tsZ0VlQ1lmYm54VlN5WjlnIi8+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9ic0REd0tsbUVlQ0xrdTRSRnJJN3V3IiBuYW1lPSJvcmdhbml6ZVNwYWNlIiB0eXBlPSJfZmR6SnlLa19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfa2JiajBCd25FZUdhNWJIX1JKRnpCUSIgbmFtZT0iY2hhbGxlbmdlclNwYWNlIiB0eXBlPSJfZmR6TEhha19FZUNYcWNSVi0xOGY2USI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfa2JmT01Cd25FZUdhNWJIX1JKRnpCUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rYmdjVUJ3bkVlR2E1YkhfUkpGekJRIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfN1BXaDhCOGtFZUc0Z1BDRXpuVk5PQSIgbmFtZT0ic3RlcmVvUGFpciIgdHlwZT0iX2ZkekpnYWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX05KZFhFQjhsRWVHNGdQQ0V6blZOT0EiIG5hbWU9ImZyb250Q2FtZXJhIiB0eXBlPSJfZWY1Z3NLbEFFZUNZYVlpMGh6cTVrZyIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfT0VOdklCOGxFZUc0Z1BDRXpuVk5PQSIgbmFtZT0icmVhckNhbWVyYSIgdHlwZT0iX2xIcWJvRFVwRWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iXzk0Y09vQjhsRWVHNGdQQ0V6blZOT0EiIG5hbWU9IndpZGVDYW0iIHR5cGU9Il95cGlGTURVcEVlRzVwTF9mcE4yRGdRIi8+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9LZER4Z0I5QkVlR2V0T0xma0xOd2ZnIiBuYW1lPSJ1YmxveCIgdHlwZT0iX2ZkekpkS2tfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX1lMVERJQjlCRWVHZXRPTGZrTE53ZmciIG5hbWU9Im9kb21ldHJ5IiB0eXBlPSJfNXJyTDRCOG9FZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfQTY4UUlCOURFZUdldE9MZmtMTndmZyIgbmFtZT0ibG1zIiB0eXBlPSJfZmR6Sldxa19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2s4Mk5rQjlDRWVHZXRPTGZrTE53ZmciIG5hbWU9IkNvbm5lY3RvcjEiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2s4Mk5rUjlDRWVHZXRPTGZrTE53ZmciIHBhcnRXaXRoUG9ydD0iX0JFLWVnS2xtRWVDTGt1NFJGckk3dXciIHJvbGU9Il9jUGlhRUtsZ0VlQ1lmYm54VlN5WjlnIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2s4Mk5reDlDRWVHZXRPTGZrTE53ZmciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rODJOa2g5Q0VlR2V0T0xma0xOd2ZnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2s4MjBvQjlDRWVHZXRPTGZrTE53ZmciIHBhcnRXaXRoUG9ydD0iX2tiYmowQnduRWVHYTViSF9SSkZ6QlEiIHJvbGU9Il9mZHpMTnFrX0VlQ1hxY1JWLTE4ZjZRIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2s4MjBvaDlDRWVHZXRPTGZrTE53ZmciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rODIwb1I5Q0VlR2V0T0xma0xOd2ZnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX215RGJzQjlDRWVHZXRPTGZrTE53ZmciIG5hbWU9IkNvbm5lY3RvcjIiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX215RGJzUjlDRWVHZXRPTGZrTE53ZmciIHBhcnRXaXRoUG9ydD0iX0JFLWVnS2xtRWVDTGt1NFJGckk3dXciIHJvbGU9Il9jUGlhRUtsZ0VlQ1lmYm54VlN5WjlnIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX215RGJzeDlDRWVHZXRPTGZrTE53ZmciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9teURic2g5Q0VlR2V0T0xma0xOd2ZnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX215RUN3QjlDRWVHZXRPTGZrTE53ZmciIHBhcnRXaXRoUG9ydD0iX2JzRER3S2xtRWVDTGt1NFJGckk3dXciIHJvbGU9Il8wMGNhWUI4c0VlRzRnUENFem5WTk9BIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX215RUN3aDlDRWVHZXRPTGZrTE53ZmciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9teUVDd1I5Q0VlR2V0T0xma0xOd2ZnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX3FRbW1NQjlDRWVHZXRPTGZrTE53ZmciIG5hbWU9IkNvbm5lY3RvcjMiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX3FRbW1NUjlDRWVHZXRPTGZrTE53ZmciIHBhcnRXaXRoUG9ydD0iX2tiYmowQnduRWVHYTViSF9SSkZ6QlEiIHJvbGU9Il9JbUZEQUtsbkVlQ0xrdTRSRnJJN3V3Ij4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3FRbW1NeDlDRWVHZXRPTGZrTE53ZmciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9xUW1tTWg5Q0VlR2V0T0xma0xOd2ZnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX3FRbk5RQjlDRWVHZXRPTGZrTE53ZmciIHBhcnRXaXRoUG9ydD0iX2JzRER3S2xtRWVDTGt1NFJGckk3dXciIHJvbGU9Il90Uk1yWUI4c0VlRzRnUENFem5WTk9BIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3FRbk5RaDlDRWVHZXRPTGZrTE53ZmciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9xUW5OUVI5Q0VlR2V0T0xma0xOd2ZnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iXzFPRExNQjlDRWVHZXRPTGZrTE53ZmciIG5hbWU9IkNvbm5lY3RvcjYiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iXzFPRExNUjlDRWVHZXRPTGZrTE53ZmciIHBhcnRXaXRoUG9ydD0iX05KZFhFQjhsRWVHNGdQQ0V6blZOT0EiIHJvbGU9Il9scHFZc0tsQUVlQ1lhWWkwaHpxNWtnIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzFPRExNeDlDRWVHZXRPTGZrTE53ZmciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il8xT0RMTWg5Q0VlR2V0T0xma0xOd2ZnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iXzFPRHlRQjlDRWVHZXRPTGZrTE53ZmciIHBhcnRXaXRoUG9ydD0iX2tiYmowQnduRWVHYTViSF9SSkZ6QlEiIHJvbGU9Il94OW9CY0I4d0VlR2V0T0xma0xOd2ZnIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzFPRHlRaDlDRWVHZXRPTGZrTE53ZmciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il8xT0R5UVI5Q0VlR2V0T0xma0xOd2ZnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX1FxM3NzQjlERWVHZXRPTGZrTE53ZmciIG5hbWU9IkNvbm5lY3RvcjgiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX1FxNFR3QjlERWVHZXRPTGZrTE53ZmciIHBhcnRXaXRoUG9ydD0iX0E2OFFJQjlERWVHZXRPTGZrTE53ZmciIHJvbGU9Il9mZHpKWTZrX0VlQ1hxY1JWLTE4ZjZRIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX1FxNFR3aDlERWVHZXRPTGZrTE53ZmciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9RcTRUd1I5REVlR2V0T0xma0xOd2ZnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX1FxNFR3eDlERWVHZXRPTGZrTE53ZmciIHBhcnRXaXRoUG9ydD0iX2tiYmowQnduRWVHYTViSF9SSkZ6QlEiIHJvbGU9Il9GZ2J2TUI4d0VlR2V0T0xma0xOd2ZnIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX1FxNFR4UjlERWVHZXRPTGZrTE53ZmciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9RcTRUeEI5REVlR2V0T0xma0xOd2ZnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX1JwZ2ZNQjlERWVHZXRPTGZrTE53ZmciIG5hbWU9IkNvbm5lY3RvcjkiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX1JwZ2ZNUjlERWVHZXRPTGZrTE53ZmciIHBhcnRXaXRoUG9ydD0iX1lMVERJQjlCRWVHZXRPTGZrTE53ZmciIHJvbGU9Il85Y09zWUI4b0VlRzRnUENFem5WTk9BIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX1JwZ2ZNeDlERWVHZXRPTGZrTE53ZmciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9ScGdmTWg5REVlR2V0T0xma0xOd2ZnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX1JwaEdRQjlERWVHZXRPTGZrTE53ZmciIHBhcnRXaXRoUG9ydD0iX2tiYmowQnduRWVHYTViSF9SSkZ6QlEiIHJvbGU9Il9lZ1NVY0I4dkVlRzRnUENFem5WTk9BIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX1JwaEdRaDlERWVHZXRPTGZrTE53ZmciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9ScGhHUVI5REVlR2V0T0xma0xOd2ZnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX1dyS2JNQjlERWVHZXRPTGZrTE53ZmciIG5hbWU9IkNvbm5lY3RvcjEwIj4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9XcktiTVI5REVlR2V0T0xma0xOd2ZnIiBwYXJ0V2l0aFBvcnQ9Il9LZER4Z0I5QkVlR2V0T0xma0xOd2ZnIiByb2xlPSJfZmR6SmZha19FZUNYcWNSVi0xOGY2USI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9XcktiTXg5REVlR2V0T0xma0xOd2ZnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfV3JLYk1oOURFZUdldE9MZmtMTndmZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9XcktiTkI5REVlR2V0T0xma0xOd2ZnIiBwYXJ0V2l0aFBvcnQ9Il9rYmJqMEJ3bkVlR2E1YkhfUkpGekJRIiByb2xlPSJfTmtFT2NCOHdFZUdldE9MZmtMTndmZyI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9XcktiTmg5REVlR2V0T0xma0xOd2ZnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfV3JLYk5SOURFZUdldE9MZmtMTndmZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9iYWxYc0I5REVlR2V0T0xma0xOd2ZnIiBuYW1lPSJDb25uZWN0b3IxMSI+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfYmFsWHNSOURFZUdldE9MZmtMTndmZyIgcGFydFdpdGhQb3J0PSJfS2REeGdCOUJFZUdldE9MZmtMTndmZyIgcm9sZT0iXzR4RjdrS2xMRWVDWWZibnhWU3laOWciPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfYmFsWHN4OURFZUdldE9MZmtMTndmZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2JhbFhzaDlERWVHZXRPTGZrTE53ZmciIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfYmFsWHRCOURFZUdldE9MZmtMTndmZyIgcGFydFdpdGhQb3J0PSJfa2JiajBCd25FZUdhNWJIX1JKRnpCUSIgcm9sZT0iX0xBOHFVS2xrRWVDTGt1NFJGckk3dXciPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfYmFsWHRoOURFZUdldE9MZmtMTndmZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2JhbFh0UjlERWVHZXRPTGZrTE53ZmciIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfVjJiUHdEVTFFZUc1cExfZnBOMkRnUSIgbmFtZT0iQ29ubmVjdG9yMTIiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX1YyYjIwRFUxRWVHNXBMX2ZwTjJEZ1EiIHBhcnRXaXRoUG9ydD0iXzdQV2g4QjhrRWVHNGdQQ0V6blZOT0EiIHJvbGU9Il96RWZfWURVb0VlRzVwTF9mcE4yRGdRIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX1YyYjIwalUxRWVHNXBMX2ZwTjJEZ1EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9WMmIyMFRVMUVlRzVwTF9mcE4yRGdRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX1YyYjIwelUxRWVHNXBMX2ZwTjJEZ1EiIHBhcnRXaXRoUG9ydD0iX2tiYmowQnduRWVHYTViSF9SSkZ6QlEiIHJvbGU9Il9XWmpvY0I4d0VlR2V0T0xma0xOd2ZnIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX1YyYjIxVFUxRWVHNXBMX2ZwTjJEZ1EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9WMmIyMURVMUVlRzVwTF9mcE4yRGdRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX1dqVUs4RFUxRWVHNXBMX2ZwTjJEZ1EiIG5hbWU9IkNvbm5lY3RvcjEzIj4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9XalV5QURVMUVlRzVwTF9mcE4yRGdRIiBwYXJ0V2l0aFBvcnQ9Il83UFdoOEI4a0VlRzRnUENFem5WTk9BIiByb2xlPSJfMmhRYUlEVW9FZUc1cExfZnBOMkRnUSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9XalV5QWpVMUVlRzVwTF9mcE4yRGdRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfV2pVeUFUVTFFZUc1cExfZnBOMkRnUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9XalV5QXpVMUVlRzVwTF9mcE4yRGdRIiBwYXJ0V2l0aFBvcnQ9Il9rYmJqMEJ3bkVlR2E1YkhfUkpGekJRIiByb2xlPSJfcVByU3dEVXpFZUc1cExfZnBOMkRnUSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9XalV5QlRVMUVlRzVwTF9mcE4yRGdRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfV2pVeUJEVTFFZUc1cExfZnBOMkRnUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9jWGl6WURVMUVlRzVwTF9mcE4yRGdRIiBuYW1lPSJDb25uZWN0b3IxNCI+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfY1hpellUVTFFZUc1cExfZnBOMkRnUSIgcGFydFdpdGhQb3J0PSJfZmR6STE2a19FZUNYcWNSVi0xOGY2USIgcm9sZT0iX2ZkekpjS2tfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfY1hpell6VTFFZUc1cExfZnBOMkRnUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2NYaXpZalUxRWVHNXBMX2ZwTjJEZ1EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfY1hpelpEVTFFZUc1cExfZnBOMkRnUSIgcGFydFdpdGhQb3J0PSJfYnNERHdLbG1FZUNMa3U0UkZySTd1dyIgcm9sZT0iX3ZQX3JvRFVyRWVHNXBMX2ZwTjJEZ1EiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfY1hpelpqVTFFZUc1cExfZnBOMkRnUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2NYaXpaVFUxRWVHNXBMX2ZwTjJEZ1EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfZHBZMXdEVTFFZUc1cExfZnBOMkRnUSIgbmFtZT0iQ29ubmVjdG9yMTUiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2RwWmMwRFUxRWVHNXBMX2ZwTjJEZ1EiIHBhcnRXaXRoUG9ydD0iX2ZkekkxNmtfRWVDWHFjUlYtMThmNlEiIHJvbGU9Il9VTWFzY0tsRkVlQ2dkTWh3RUJ1V0lnIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2RwWmMwalUxRWVHNXBMX2ZwTjJEZ1EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9kcFpjMFRVMUVlRzVwTF9mcE4yRGdRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2RwWmMwelUxRWVHNXBMX2ZwTjJEZ1EiIHBhcnRXaXRoUG9ydD0iX2JzRER3S2xtRWVDTGt1NFJGckk3dXciIHJvbGU9Il9fdmhaSURVckVlRzVwTF9mcE4yRGdRIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2RwWmMxVFUxRWVHNXBMX2ZwTjJEZ1EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9kcFpjMURVMUVlRzVwTF9mcE4yRGdRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2ZSeEkwRFUxRWVHNXBMX2ZwTjJEZ1EiIG5hbWU9IkNvbm5lY3RvcjE2Ij4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9mUnhJMFRVMUVlRzVwTF9mcE4yRGdRIiBwYXJ0V2l0aFBvcnQ9Il9mZHpJMTZrX0VlQ1hxY1JWLTE4ZjZRIiByb2xlPSJfbkNqRThLbEZFZUNuaWFNazVRVUJSZyI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9mUnhJMHpVMUVlRzVwTF9mcE4yRGdRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfZlJ4STBqVTFFZUc1cExfZnBOMkRnUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9mUnhJMURVMUVlRzVwTF9mcE4yRGdRIiBwYXJ0V2l0aFBvcnQ9Il9ic0REd0tsbUVlQ0xrdTRSRnJJN3V3IiByb2xlPSJfX1V3SXNEVXJFZUc1cExfZnBOMkRnUSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9mUnhJMWpVMUVlRzVwTF9mcE4yRGdRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfZlJ4STFUVTFFZUc1cExfZnBOMkRnUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9tM1pkY0RVMUVlRzVwTF9mcE4yRGdRIiBuYW1lPSJDb25uZWN0b3IxNyI+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfbTNaZGNUVTFFZUc1cExfZnBOMkRnUSIgcGFydFdpdGhQb3J0PSJfZmR6STE2a19FZUNYcWNSVi0xOGY2USIgcm9sZT0iX2ZkekpjS2tfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfbTNaZGN6VTFFZUc1cExfZnBOMkRnUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX20zWmRjalUxRWVHNXBMX2ZwTjJEZ1EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfbTNaZGREVTFFZUc1cExfZnBOMkRnUSIgcGFydFdpdGhQb3J0PSJfa2JiajBCd25FZUdhNWJIX1JKRnpCUSIgcm9sZT0iXzAtZVh3RFV6RWVHNXBMX2ZwTjJEZ1EiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfbTNaZGRqVTFFZUc1cExfZnBOMkRnUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX20zWmRkVFUxRWVHNXBMX2ZwTjJEZ1EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfbnJhVVVEVTFFZUc1cExfZnBOMkRnUSIgbmFtZT0iQ29ubmVjdG9yMTgiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX25yYTdZRFUxRWVHNXBMX2ZwTjJEZ1EiIHBhcnRXaXRoUG9ydD0iX2ZkekkxNmtfRWVDWHFjUlYtMThmNlEiIHJvbGU9Il9VTWFzY0tsRkVlQ2dkTWh3RUJ1V0lnIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX25yYTdZalUxRWVHNXBMX2ZwTjJEZ1EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9ucmE3WVRVMUVlRzVwTF9mcE4yRGdRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX25yYTdZelUxRWVHNXBMX2ZwTjJEZ1EiIHBhcnRXaXRoUG9ydD0iX2tiYmowQnduRWVHYTViSF9SSkZ6QlEiIHJvbGU9Il8yaXpSUURVekVlRzVwTF9mcE4yRGdRIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX25yYTdaVFUxRWVHNXBMX2ZwTjJEZ1EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9ucmE3WkRVMUVlRzVwTF9mcE4yRGdRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX292S1FVRFUxRWVHNXBMX2ZwTjJEZ1EiIG5hbWU9IkNvbm5lY3RvcjE5Ij4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9vdktRVVRVMUVlRzVwTF9mcE4yRGdRIiBwYXJ0V2l0aFBvcnQ9Il9mZHpJMTZrX0VlQ1hxY1JWLTE4ZjZRIiByb2xlPSJfbkNqRThLbEZFZUNuaWFNazVRVUJSZyI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9vdktRVXpVMUVlRzVwTF9mcE4yRGdRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfb3ZLUVVqVTFFZUc1cExfZnBOMkRnUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9vdktRVkRVMUVlRzVwTF9mcE4yRGdRIiBwYXJ0V2l0aFBvcnQ9Il9rYmJqMEJ3bkVlR2E1YkhfUkpGekJRIiByb2xlPSJfM3dLY1FEVXpFZUc1cExfZnBOMkRnUSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9vdktRVmpVMUVlRzVwTF9mcE4yRGdRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfb3ZLUVZUVTFFZUc1cExfZnBOMkRnUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il8xa1c1VUVIbkVlR0dYcEdzY3BramRnIiBuYW1lPSJDb25uZWN0b3IyMCI+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfMWtYZ1lFSG5FZUdHWHBHc2Nwa2pkZyIgcGFydFdpdGhQb3J0PSJfT0VOdklCOGxFZUc0Z1BDRXpuVk5PQSIgcm9sZT0iX2xwcVlzS2xBRWVDWWFZaTBoenE1a2ciPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfMWtYZ1lrSG5FZUdHWHBHc2Nwa2pkZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzFrWGdZVUhuRWVHR1hwR3NjcGtqZGciIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfMWtZSGNFSG5FZUdHWHBHc2Nwa2pkZyIgcGFydFdpdGhQb3J0PSJfa2JiajBCd25FZUdhNWJIX1JKRnpCUSIgcm9sZT0iX1dDNVRrQjgtRWVHZXRPTGZrTE53ZmciPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfMWtZSGNrSG5FZUdHWHBHc2Nwa2pkZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzFrWUhjVUhuRWVHR1hwR3NjcGtqZGciIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfM21jRjBFSG5FZUdHWHBHc2Nwa2pkZyIgbmFtZT0iQ29ubmVjdG9yMjEiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iXzNtY3M0RUhuRWVHR1hwR3NjcGtqZGciIHBhcnRXaXRoUG9ydD0iXzk0Y09vQjhsRWVHNGdQQ0V6blZOT0EiIHJvbGU9Il9scHFZc0tsQUVlQ1lhWWkwaHpxNWtnIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzNtY3M0a0huRWVHR1hwR3NjcGtqZGciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il8zbWNzNFVIbkVlR0dYcEdzY3BramRnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iXzNtY3M0MEhuRWVHR1hwR3NjcGtqZGciIHBhcnRXaXRoUG9ydD0iX2tiYmowQnduRWVHYTViSF9SSkZ6QlEiIHJvbGU9Il9hOEFYa0I4LUVlR2V0T0xma0xOd2ZnIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzNtY3M1VUhuRWVHR1hwR3NjcGtqZGciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il8zbWNzNUVIbkVlR0dYcEdzY3BramRnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6TW9kZWwiIHhtaTppZD0iX2ZkekpRYWtfRWVDWHFjUlYtMThmNlEiIG5hbWU9IlJvYm9DYWIgRGF0YXR5cGVzIj4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9wZjRPd0tsZ0VlQ1lmYm54VlN5WjlnIiBuYW1lPSJHb2FsIj4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfcmc2NWNLbGdFZUNZZmJueFZTeVo5ZyIgbmFtZT0icG9zaXRpb24iPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2xaNWJZS2xoRWVDMHNadS1fVmdleXciLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9Zdnhjc0tsaUVlQ0xrdTRSRnJJN3V3IiBuYW1lPSJwb3NpdGlvbl9lcnIiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90bWxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2xaNWJZS2xoRWVDMHNadS1fVmdleXciLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il8weS01c0tsckVlQ0xrdTRSRnJJN3V3IiBuYW1lPSJQYXRoRGV2aWF0aW9uIj4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfMzZnclVLbHJFZUNMa3U0UkZySTd1dyIgbmFtZT0ibGF0ZXJhbCI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfOEw5U1lLbHJFZUNMa3U0UkZySTd1dyIgbmFtZT0iYW5ndWxhciI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfbS13cDhLbHRFZUNMa3U0UkZySTd1dyIgbmFtZT0iUGF0aERlZmluaXRpb24iPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il91TWpHVUtsdEVlQ0xrdTRSRnJJN3V3IiBuYW1lPSJvcmlnaW5lIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19sWjViWUtsaEVlQzBzWnUtX1ZnZXl3Ii8+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfNUNOQlFLbHRFZUNMa3U0UkZySTd1dyIgbmFtZT0iY3VydmF0dXJlIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9yeWU1WUI4bUVlRzRnUENFem5WTk9BIiBuYW1lPSJDYXJMaWtlT2RvbWV0cnkiPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il85eTdBQUI4bUVlRzRnUENFem5WTk9BIiBuYW1lPSJyZWFyTGVmdFdoZWVsIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzl6QnRzQjhtRWVHNGdQQ0V6blZOT0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il85ekRpNEI4bUVlRzRnUENFem5WTk9BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX0xSME9FQjhuRWVHNGdQQ0V6blZOT0EiIG5hbWU9InJlYXJSaWdodFdoZWVsIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0xSMkRRQjhuRWVHNGdQQ0V6blZOT0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9MUjM0Y0I4bkVlRzRnUENFem5WTk9BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX1FLaVFnQjhuRWVHNGdQQ0V6blZOT0EiIG5hbWU9Im1vdG9yU3BlZWQiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfUUtrc3dCOG5FZUc0Z1BDRXpuVk5PQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX1FLbDY0QjhuRWVHNGdQQ0V6blZOT0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfVjF4VkFCOG5FZUc0Z1BDRXpuVk5PQSIgbmFtZT0ic3RlZXJpbmdBbmdsZSI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9WMXp4UUI4bkVlRzRnUENFem5WTk9BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfVjExbWNCOG5FZUc0Z1BDRXpuVk5PQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9uMTIyVUI4bkVlRzRnUENFem5WTk9BIiBuYW1lPSJDYXJMaWtlQ29tbWFuZCI+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX3VLUGxnQjhuRWVHNGdQQ0V6blZOT0EiIG5hbWU9InZlbG9jaXR5Ij4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3VLU0J3QjhuRWVHNGdQQ0V6blZOT0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il91S1QyOEI4bkVlRzRnUENFem5WTk9BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9DcHJlSUI4b0VlRzRnUENFem5WTk9BIiBuYW1lPSJkZWZhdWx0U3BlZWQiLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il91MEkzRUI4bkVlRzRnUENFem5WTk9BIiBuYW1lPSJzdGVlcmluZ0FuZ2xlIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3UwS3NRQjhuRWVHNGdQQ0V6blZOT0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il91ME1oY0I4bkVlRzRnUENFem5WTk9BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il82U3Bod0I4bkVlRzRnUENFem5WTk9BIiBuYW1lPSJkZWZhdWx0U3RlZXJpbmciLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9US3ozc0RVdEVlRzVwTF9mcE4yRGdRIiBuYW1lPSJNdWx0aUxheWVyTGlkYXJTY2FuIj4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfeFVDcU1EVXZFZUc1cExfZnBOMkRnUSIgbmFtZT0ibGF5ZXJzIiB0eXBlPSJfRzB4QXNEVXdFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9LdV82UURVekVlRzVwTF9mcE4yRGdRIiBuYW1lPSJuYkxheWVyIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzZOSmZrQUtuRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9HMHhBc0RVd0VlRzVwTF9mcE4yRGdRIiBuYW1lPSJFeHRlbnRlZExpZGFyU2NhbiI+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX0swcDlzRFV3RWVHNXBMX2ZwTjJEZ1EiIG5hbWU9InNjYW4iPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3pkd2RJQUtzRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9QY0pHTURVd0VlRzVwTF9mcE4yRGdRIiBuYW1lPSJsYXllcklkIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzZOSmZrQUtuRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9ZSVA2c0RVd0VlRzVwTF9mcE4yRGdRIiBuYW1lPSJsYXllckFuZ2xlIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3F1WG1BQUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOk1vZGVsIiB4bWk6aWQ9Il9mZHpKVEtrX0VlQ1hxY1JWLTE4ZjZRIiBuYW1lPSJSb2JvQ2FiIEludGVybmFsIEludGVyZmFjZXMiPgorICAgICAgICA8cHJvZmlsZUFwcGxpY2F0aW9uIHhtaTp0eXBlPSJ1bWw6UHJvZmlsZUFwcGxpY2F0aW9uIiB4bWk6aWQ9Il91aF9aNEVIVEVlR3p6ZW5KdDV5UXR3Ij4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdWl6NVFFSFRFZUd6emVuSnQ1eVF0dyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICAgICAgICAgIDxyZWZlcmVuY2VzIHhtaTp0eXBlPSJlY29yZTpFUGFja2FnZSIgaHJlZj0iaHR0cDovL1BhcHlydXMvUm9ib3RNTC8xIy8iLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8YXBwbGllZFByb2ZpbGUgeG1pOnR5cGU9InVtbDpQcm9maWxlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfM1FPSEVQY0VFZC1KMDZVNUhNX28tUSIvPgorICAgICAgICA8L3Byb2ZpbGVBcHBsaWNhdGlvbj4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOk1vZGVsIiB4bWk6aWQ9Il9mZHpKV2FrX0VlQ1hxY1JWLTE4ZjZRIiBuYW1lPSJSb2JvQ2FiIFNlbnNvcnMiPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX2ZkekpXcWtfRWVDWHFjUlYtMThmNlEiIG5hbWU9IkxJREFSM0QiPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9mZHpKVzZrX0VlQ1hxY1JWLTE4ZjZRIiBuYW1lPSJmcmVxdWVuY3kiIHZpc2liaWxpdHk9InB1YmxpYyI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9FY29yZS5tZXRhbW9kZWwudW1sI0VEb3VibGUiLz4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2ZkekpYYWtfRWVDWHFjUlYtMThmNlEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9mZHpKWEtrX0VlQ1hxY1JWLTE4ZjZRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2ZkekpYcWtfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfZmR6Slg2a19FZUNYcWNSVi0xOGY2USIgbmFtZT0iYWNjdXJhY3kiIHZpc2liaWxpdHk9InB1YmxpYyI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9FY29yZS5tZXRhbW9kZWwudW1sI0VEb3VibGUiLz4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2ZkekpZYWtfRWVDWHFjUlYtMThmNlEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9mZHpKWUtrX0VlQ1hxY1JWLTE4ZjZRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2ZkekpZcWtfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9mZHpKWTZrX0VlQ1hxY1JWLTE4ZjZRIiBuYW1lPSJMaWRhck91dCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfVEt6M3NEVXRFZUc1cExfZnBOMkRnUSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9mZHpKWmFrX0VlQ1hxY1JWLTE4ZjZRIiB2YWx1ZT0iNCIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfZmR6SlpLa19FZUNYcWNSVi0xOGY2USIgdmFsdWU9IjQiLz4KKyAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9mZHpKWnFrX0VlQ1hxY1JWLTE4ZjZRIj4KKyAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX2ZkekpaNmtfRWVDWHFjUlYtMThmNlEiIG5hbWU9IlJUS19HUFNfSU1VIj4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfZmR6SmFLa19FZUNYcWNSVi0xOGY2USIgbmFtZT0iYWNjdXJhY3kiIHZpc2liaWxpdHk9InB1YmxpYyI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9FY29yZS5tZXRhbW9kZWwudW1sI0VEb3VibGUiLz4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2ZkekphcWtfRWVDWHFjUlYtMThmNlEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9mZHpKYWFrX0VlQ1hxY1JWLTE4ZjZRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2ZkekphNmtfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfZmR6SmJLa19FZUNYcWNSVi0xOGY2USIgbmFtZT0iZnJlcXVlbmN5IiB2aXNpYmlsaXR5PSJwdWJsaWMiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvRWNvcmUubWV0YW1vZGVsLnVtbCNFRG91YmxlIi8+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9mZHpKYnFrX0VlQ1hxY1JWLTE4ZjZRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfZmR6SmJha19FZUNYcWNSVi0xOGY2USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9mZHpKYjZrX0VlQ1hxY1JWLTE4ZjZRIj4KKyAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfZmR6SmNLa19FZUNYcWNSVi0xOGY2USIgbmFtZT0iUG9zM0QiIHZpc2liaWxpdHk9InB1YmxpYyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xSm1LNEtsRUVlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9mZHpKY3FrX0VlQ1hxY1JWLTE4ZjZRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfZmR6SmNha19FZUNYcWNSVi0xOGY2USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9mZHpKYzZrX0VlQ1hxY1JWLTE4ZjZRIj4KKyAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfVU1hc2NLbEZFZUNnZE1od0VCdVdJZyIgbmFtZT0iVmVsb2NpdHkzRCIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xSm1LNEtsRUVlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9uQ2pFOEtsRkVlQ25pYU1rNVFVQlJnIiBuYW1lPSJBY2MzRCIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xSm1LNEtsRUVlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfZmR6SmRLa19FZUNYcWNSVi0xOGY2USIgbmFtZT0iTWV0cmljR1BTIj4KKyAgICAgICAgICA8b3duZWRDb21tZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgeG1pOmlkPSJfWk00dThLbEFFZUNZYVlpMGh6cTVrZyI+CisgICAgICAgICAgICA8Ym9keT5Mb3cgQ29zdCBHUFM8L2JvZHk+CisgICAgICAgICAgPC9vd25lZENvbW1lbnQ+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2ZkekpkYWtfRWVDWHFjUlYtMThmNlEiIG5hbWU9ImZyZXF1ZW5jeSIgdmlzaWJpbGl0eT0icHVibGljIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL0Vjb3JlLm1ldGFtb2RlbC51bWwjRURvdWJsZSIvPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfZmR6SmQ2a19FZUNYcWNSVi0xOGY2USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2ZkekpkcWtfRWVDWHFjUlYtMThmNlEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfZmR6SmVLa19FZUNYcWNSVi0xOGY2USI+CisgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9mZHpKZWFrX0VlQ1hxY1JWLTE4ZjZRIiBuYW1lPSJhY2N1cmFjeSIgdmlzaWJpbGl0eT0icHVibGljIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL0Vjb3JlLm1ldGFtb2RlbC51bWwjRURvdWJsZSIvPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfZmR6SmU2a19FZUNYcWNSVi0xOGY2USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2ZkekplcWtfRWVDWHFjUlYtMThmNlEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfZmR6SmZLa19FZUNYcWNSVi0xOGY2USI+CisgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2ZkekpmYWtfRWVDWHFjUlYtMThmNlEiIG5hbWU9IlBvczNEIiB2aXNpYmlsaXR5PSJwdWJsaWMiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTXd2dm9LbEdFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfZmR6SmY2a19FZUNYcWNSVi0xOGY2USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2ZkekpmcWtfRWVDWHFjUlYtMThmNlEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfZmR6SmdLa19FZUNYcWNSVi0xOGY2USI+CisgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iXzR4RjdrS2xMRWVDWWZibnhWU3laOWciIG5hbWU9IlZlbG9jaXR5M0QiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTmVzM3dBSURFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX2ZkekpnYWtfRWVDWHFjUlYtMThmNlEiIG5hbWU9IlN0ZXJlb1Zpc2lvbiI+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2ZkekpncWtfRWVDWHFjUlYtMThmNlEiIG5hbWU9InJlc29sdXRpb24iIHZpc2liaWxpdHk9InB1YmxpYyI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9FY29yZS5tZXRhbW9kZWwudW1sI0VEb3VibGUiLz4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2ZkekpoS2tfRWVDWHFjUlYtMThmNlEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9mZHpKZzZrX0VlQ1hxY1JWLTE4ZjZRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2ZkekpoYWtfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfZmR6Smhxa19FZUNYcWNSVi0xOGY2USIgbmFtZT0iZnJlcXVlbmN5TWF4IiB2aXNpYmlsaXR5PSJwdWJsaWMiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvRWNvcmUubWV0YW1vZGVsLnVtbCNFRG91YmxlIi8+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9mZHpKaUtrX0VlQ1hxY1JWLTE4ZjZRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfZmR6Smg2a19FZUNYcWNSVi0xOGY2USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9mZHpKaWFrX0VlQ1hxY1JWLTE4ZjZRIj4KKyAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2ZkekppcWtfRWVDWHFjUlYtMThmNlEiIG5hbWU9ImZvY2FsIiB2aXNpYmlsaXR5PSJwdWJsaWMiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvRWNvcmUubWV0YW1vZGVsLnVtbCNFRG91YmxlIi8+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9mZHpKaktrX0VlQ1hxY1JWLTE4ZjZRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfZmR6Smk2a19FZUNYcWNSVi0xOGY2USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9mZHpKamFrX0VlQ1hxY1JWLTE4ZjZRIj4KKyAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX1pCdm9JRFVvRWVHNXBMX2ZwTjJEZ1EiIG5hbWU9ImxlZnRDYW0iIHR5cGU9Il9lZjVnc0tsQUVlQ1lhWWkwaHpxNWtnIi8+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX1pvXzFZRFVvRWVHNXBMX2ZwTjJEZ1EiIG5hbWU9InJpZ2h0Q2FtIiB0eXBlPSJfZWY1Z3NLbEFFZUNZYVlpMGh6cTVrZyIvPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX3pFZl9ZRFVvRWVHNXBMX2ZwTjJEZ1EiIG5hbWU9InJpZ2h0RnJhbWUiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfbUpEYThBS3VFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfMmhRYUlEVW9FZUc1cExfZnBOMkRnUSIgbmFtZT0ibGVmdEZyYW1lIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX21KRGE4QUt1RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxuZXN0ZWRDbGFzc2lmaWVyIHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX1JpRl9zRFVvRWVHNXBMX2ZwTjJEZ1EiIG5hbWU9IkxlZnRDYW1lcmEiIHZpc2liaWxpdHk9InByaXZhdGUiLz4KKyAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfZWY1Z3NLbEFFZUNZYVlpMGh6cTVrZyIgbmFtZT0iRnJvbnRDYW1lcmEiPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2xwcVlzS2xBRWVDWWFZaTBoenE1a2ciIG5hbWU9ImZyYW1lT3V0IiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX21KRGE4QUt1RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il81cnJMNEI4b0VlRzRnUENFem5WTk9BIiBuYW1lPSJWaXBhbGFiT2RvbWV0cnkiPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iXzljT3NZQjhvRWVHNGdQQ0V6blZOT0EiIG5hbWU9Im9kb21ldHJ5T3V0cHV0IiB0eXBlPSJfcnllNVlCOG1FZUc0Z1BDRXpuVk5PQSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIvPgorICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9sSHFib0RVcEVlRzVwTF9mcE4yRGdRIiBuYW1lPSJSZWFyQ2FtZXJhIj4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9uXzJKc0RVcEVlRzVwTF9mcE4yRGdRIiBuYW1lPSJmcmFtZU91dCIgdmlzaWJpbGl0eT0icHVibGljIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX21KRGE4QUt1RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il95cGlGTURVcEVlRzVwTF9mcE4yRGdRIiBuYW1lPSJXaWRlQW5nbGVDYW1lcmEiPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iXzRKZDRvRFVwRWVHNXBMX2ZwTjJEZ1EiIG5hbWU9ImZyYW1lT3V0IiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX21KRGE4QUt1RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOk1vZGVsIiB4bWk6aWQ9Il9mZHpKbjZrX0VlQ1hxY1JWLTE4ZjZRIiBuYW1lPSJSb2JvQ2FiIEFjdHVhdG9ycyI+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfZmR6Sm9La19FZUNYcWNSVi0xOGY2USIgbmFtZT0iQnJha2UiPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX3dBYWtrS2xWRWVDWWZibnhWU3laOWciIG5hbWU9IkJyYWtlSW4iIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfZmR6SnJha19FZUNYcWNSVi0xOGY2USIgbmFtZT0iU3RlZXJpbmciPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX3NoYmZ3S2xXRWVDWWZibnhWU3laOWciIG5hbWU9IlN0ZWVyaW5nSW4iIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfZmR6SnVxa19FZUNYcWNSVi0xOGY2USIgbmFtZT0iTW90b3IiPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX1pBR09JS2xXRWVDWWZibnhWU3laOWciIG5hbWU9Ik1vdG9ySW4iIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfS3FBOFVCOHBFZUc0Z1BDRXpuVk5PQSIgbmFtZT0iSGlnaExldmVsQ29udHJvbGxlciI+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfUGhpRTRCOHBFZUc0Z1BDRXpuVk5PQSIgbmFtZT0iaW5wdXQiIHR5cGU9Il9uMTIyVUI4bkVlRzRnUENFem5WTk9BIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIi8+CisgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6TW9kZWwiIHhtaTppZD0iX2Zkekp4NmtfRWVDWHFjUlYtMThmNlEiIG5hbWU9IlJvYm9DYWIgU3Vic3lzdGVtcyI+CisgICAgICAgIDxwYWNrYWdlSW1wb3J0IHhtaTp0eXBlPSJ1bWw6UGFja2FnZUltcG9ydCIgeG1pOmlkPSJfQk92RzhHT0FFZUc5ZTVIak1HQmduUSI+CisgICAgICAgICAgPGltcG9ydGVkUGFja2FnZSB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJwYXRobWFwOi8vUGFweXJ1c19BbGZfTElCUkFSSUVTL2FsZmxpYnJhcnkudW1sI18wYkJJNEh5NUVlQ0t5NWtTcWQ0ZVZ3Ii8+CisgICAgICAgIDwvcGFja2FnZUltcG9ydD4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9mZHpKeUtrX0VlQ1hxY1JWLTE4ZjZRIiBuYW1lPSJPcmdhbml6ZXJTeXN0ZW0iPgorICAgICAgICAgIDxvd25lZENvbW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiB4bWk6aWQ9Il9VSkNqSUtsWEVlQ1lmYm54VlN5WjlnIj4KKyAgICAgICAgICAgIDxib2R5PjwvYm9keT4KKyAgICAgICAgICA8L293bmVkQ29tbWVudD4KKyAgICAgICAgICA8b3duZWRDb21tZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgeG1pOmlkPSJfV1ZIWklLbFhFZUNZZmJueFZTeVo5ZyI+CisgICAgICAgICAgICA8Ym9keT48L2JvZHk+CisgICAgICAgICAgPC9vd25lZENvbW1lbnQ+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2Zkekp6YWtfRWVDWHFjUlYtMThmNlEiIG5hbWU9Im5hdmlnYXRpb25TYWZldHkiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX2ZkektvS2tfRWVDWHFjUlYtMThmNlEiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfZmR6Sno2a19FZUNYcWNSVi0xOGY2USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2Zkekp6cWtfRWVDWHFjUlYtMThmNlEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfZmR6SjBLa19FZUNYcWNSVi0xOGY2USI+CisgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9HZGVfa0I4ckVlRzRnUENFem5WTk9BIiBuYW1lPSJjb250cm9sbGVyIiB0eXBlPSJfS3FBOFVCOHBFZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9xS3JtWUI4c0VlRzRnUENFem5WTk9BIiBuYW1lPSJjaGFsbGVuZ2VyRXZhbHVhdGlvbiIgdHlwZT0iX2tkbFdJQjhyRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il90Uk1yWUI4c0VlRzRnUENFem5WTk9BIiBuYW1lPSJDaGFsbGVuZ2VySW5wdXQiIHR5cGU9Il9uMTIyVUI4bkVlRzRnUENFem5WTk9BIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIi8+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfMDBjYVlCOHNFZUc0Z1BDRXpuVk5PQSIgbmFtZT0ibWlzc2lvbiIgdHlwZT0iX3BmNE93S2xnRWVDWWZibnhWU3laOWciIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiLz4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il92UF9yb0RVckVlRzVwTF9mcE4yRGdRIiBuYW1lPSJydGtfcG9zIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3FKbUs0S2xFRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX19Vd0lzRFVyRWVHNXBMX2ZwTjJEZ1EiIG5hbWU9InJ0a19hY2MiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcUptSzRLbEVFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfX3ZoWklEVXJFZUc1cExfZnBOMkRnUSIgbmFtZT0icnRrX3ZlbCIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xSm1LNEtsRUVlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2NiQTc4Qjh0RWVHNGdQQ0V6blZOT0EiIG5hbWU9IkNvbm5lY3RvcjExIj4KKyAgICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2NiQTc4Ujh0RWVHNGdQQ0V6blZOT0EiIHJvbGU9Il8wMGNhWUI4c0VlRzRnUENFem5WTk9BIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfY2JBNzh4OHRFZUc0Z1BDRXpuVk5PQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfY2JBNzhoOHRFZUc0Z1BDRXpuVk5PQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvZW5kPgorICAgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfY2JBNzlCOHRFZUc0Z1BDRXpuVk5PQSIgcGFydFdpdGhQb3J0PSJfcUtybVlCOHNFZUc0Z1BDRXpuVk5PQSIgcm9sZT0iXzAxYzhjQjhyRWVHNGdQQ0V6blZOT0EiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9jYkE3OWg4dEVlRzRnUENFem5WTk9BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9jYkE3OVI4dEVlRzRnUENFem5WTk9BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX1VPR1M4Qjh2RWVHNGdQQ0V6blZOT0EiIG5hbWU9IkNvbm5lY3RvcjE0Ij4KKyAgICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX1VPR1M4Ujh2RWVHNGdQQ0V6blZOT0EiIHJvbGU9Il8wMGNhWUI4c0VlRzRnUENFem5WTk9BIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfVU9HNkFSOHZFZUc0Z1BDRXpuVk5PQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfVU9HNkFCOHZFZUc0Z1BDRXpuVk5PQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvZW5kPgorICAgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfVU9HNkFoOHZFZUc0Z1BDRXpuVk5PQSIgcGFydFdpdGhQb3J0PSJfZmR6Snpha19FZUNYcWNSVi0xOGY2USIgcm9sZT0iX2ZkekszNmtfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9VT0c2QkI4dkVlRzRnUENFem5WTk9BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9VT0c2QXg4dkVlRzRnUENFem5WTk9BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX1ZjT1M4Qjh2RWVHNGdQQ0V6blZOT0EiIG5hbWU9IkNvbm5lY3RvcjE1Ij4KKyAgICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX1ZjT1M4Ujh2RWVHNGdQQ0V6blZOT0EiIHJvbGU9Il90Uk1yWUI4c0VlRzRnUENFem5WTk9BIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfVmNPUzh4OHZFZUc0Z1BDRXpuVk5PQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfVmNPUzhoOHZFZUc0Z1BDRXpuVk5PQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvZW5kPgorICAgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfVmNPNkFCOHZFZUc0Z1BDRXpuVk5PQSIgcGFydFdpdGhQb3J0PSJfZmR6Snpha19FZUNYcWNSVi0xOGY2USIgcm9sZT0iXzZvT3pZQjhyRWVHNGdQQ0V6blZOT0EiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9WY082QWg4dkVlRzRnUENFem5WTk9BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9WY082QVI4dkVlRzRnUENFem5WTk9BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX1hvWGFZQjh2RWVHNGdQQ0V6blZOT0EiIG5hbWU9IkNvbm5lY3RvcjE4Ij4KKyAgICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX1hvWGFZUjh2RWVHNGdQQ0V6blZOT0EiIHBhcnRXaXRoUG9ydD0iX2Zkekp6YWtfRWVDWHFjUlYtMThmNlEiIHJvbGU9Il82Vll2NEI4ckVlRzRnUENFem5WTk9BIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfWG9YYVl4OHZFZUc0Z1BDRXpuVk5PQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfWG9YYVloOHZFZUc0Z1BDRXpuVk5PQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvZW5kPgorICAgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfWG9YYVpCOHZFZUc0Z1BDRXpuVk5PQSIgcGFydFdpdGhQb3J0PSJfR2RlX2tCOHJFZUc0Z1BDRXpuVk5PQSIgcm9sZT0iX1BoaUU0QjhwRWVHNGdQQ0V6blZOT0EiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9Yb1hhWmg4dkVlRzRnUENFem5WTk9BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9Yb1hhWlI4dkVlRzRnUENFem5WTk9BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX0x0TjZNRFVzRWVHNXBMX2ZwTjJEZ1EiIG5hbWU9IkNvbm5lY3RvcjE5Ij4KKyAgICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX0x0T2hRRFVzRWVHNXBMX2ZwTjJEZ1EiIHJvbGU9Il9fVXdJc0RVckVlRzVwTF9mcE4yRGdRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfTHRPaFFqVXNFZUc1cExfZnBOMkRnUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfTHRPaFFUVXNFZUc1cExfZnBOMkRnUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvZW5kPgorICAgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfTHRPaFF6VXNFZUc1cExfZnBOMkRnUSIgcGFydFdpdGhQb3J0PSJfcUtybVlCOHNFZUc0Z1BDRXpuVk5PQSIgcm9sZT0iX3hIQmk0QjhyRWVHNGdQQ0V6blZOT0EiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9MdE9oUlRVc0VlRzVwTF9mcE4yRGdRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9MdE9oUkRVc0VlRzVwTF9mcE4yRGdRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX1JDdFlNRFVzRWVHNXBMX2ZwTjJEZ1EiIG5hbWU9IkNvbm5lY3RvcjIwIj4KKyAgICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX1JDdFlNVFVzRWVHNXBMX2ZwTjJEZ1EiIHBhcnRXaXRoUG9ydD0iX3FLcm1ZQjhzRWVHNGdQQ0V6blZOT0EiIHJvbGU9Il92UVBBWUI4ckVlRzRnUENFem5WTk9BIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfUkN0WU16VXNFZUc1cExfZnBOMkRnUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfUkN0WU1qVXNFZUc1cExfZnBOMkRnUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvZW5kPgorICAgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfUkN0WU5EVXNFZUc1cExfZnBOMkRnUSIgcm9sZT0iX3ZQX3JvRFVyRWVHNXBMX2ZwTjJEZ1EiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9SQ3RZTmpVc0VlRzVwTF9mcE4yRGdRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9SQ3RZTlRVc0VlRzVwTF9mcE4yRGdRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX1J4dkJZRFVzRWVHNXBMX2ZwTjJEZ1EiIG5hbWU9IkNvbm5lY3RvcjIxIj4KKyAgICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX1J4dm9jRFVzRWVHNXBMX2ZwTjJEZ1EiIHJvbGU9Il9fdmhaSURVckVlRzVwTF9mcE4yRGdRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfUnh2b2NqVXNFZUc1cExfZnBOMkRnUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfUnh2b2NUVXNFZUc1cExfZnBOMkRnUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvZW5kPgorICAgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfUnh2b2N6VXNFZUc1cExfZnBOMkRnUSIgcGFydFdpdGhQb3J0PSJfZmR6Snpha19FZUNYcWNSVi0xOGY2USIgcm9sZT0iX0dKenJVS2xiRWVDWWZibnhWU3laOWciPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9SeHZvZFRVc0VlRzVwTF9mcE4yRGdRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9SeHZvZERVc0VlRzVwTF9mcE4yRGdRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX1NaaUJNRFVzRWVHNXBMX2ZwTjJEZ1EiIG5hbWU9IkNvbm5lY3RvcjIyIj4KKyAgICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX1NaaW9RRFVzRWVHNXBMX2ZwTjJEZ1EiIHJvbGU9Il92UF9yb0RVckVlRzVwTF9mcE4yRGdRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfU1ppb1FqVXNFZUc1cExfZnBOMkRnUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfU1ppb1FUVXNFZUc1cExfZnBOMkRnUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvZW5kPgorICAgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfU1ppb1F6VXNFZUc1cExfZnBOMkRnUSIgcGFydFdpdGhQb3J0PSJfZmR6Snpha19FZUNYcWNSVi0xOGY2USIgcm9sZT0iX2ZkekswNmtfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9TWmlvUlRVc0VlRzVwTF9mcE4yRGdRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9TWmlvUkRVc0VlRzVwTF9mcE4yRGdRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfZmR6S0lxa19FZUNYcWNSVi0xOGY2USIgbmFtZT0iUGF0aFBsYW5uZXJNb2R1bGUiPgorICAgICAgICAgIDxvd25lZENvbW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiB4bWk6aWQ9Il9YNFBCb0tsckVlQ0xrdTRSRnJJN3V3Ij4KKyAgICAgICAgICAgIDxib2R5PkxlIHBhdGhwbGFubmVyIGdlbmVyZSB1biBjaGVtaW4gZXQgdW5lIHZpdGVzc2UgZGUgY29uc2lnbmUgPC9ib2R5PgorICAgICAgICAgIDwvb3duZWRDb21tZW50PgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2ZkektJNmtfRWVDWHFjUlYtMThmNlEiIG5hbWU9Im1pc3Npb24iIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX3BmNE93S2xnRWVDWWZibnhWU3laOWciIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfZmR6S0pha19FZUNYcWNSVi0xOGY2USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2ZkektKS2tfRWVDWHFjUlYtMThmNlEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfZmR6S0pxa19FZUNYcWNSVi0xOGY2USI+CisgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2ZkektKNmtfRWVDWHFjUlYtMThmNlEiIG5hbWU9InBvczNEIiB2aXNpYmlsaXR5PSJwdWJsaWMiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcUptSzRLbEVFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfZmR6S0tha19FZUNYcWNSVi0xOGY2USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2ZkektLS2tfRWVDWHFjUlYtMThmNlEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfZmR6S0txa19FZUNYcWNSVi0xOGY2USI+CisgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2ZkektLNmtfRWVDWHFjUlYtMThmNlEiIG5hbWU9InBhdGhEZWYiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX20td3A4S2x0RWVDTGt1NFJGckk3dXciIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfZmR6S0xha19FZUNYcWNSVi0xOGY2USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2ZkektMS2tfRWVDWHFjUlYtMThmNlEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfZmR6S0xxa19FZUNYcWNSVi0xOGY2USI+CisgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2ZkektMNmtfRWVDWHFjUlYtMThmNlEiIG5hbWU9InZlbG9jaXR5IiB2aXNpYmlsaXR5PSJwdWJsaWMiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9mZHpLTWFrX0VlQ1hxY1JWLTE4ZjZRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfZmR6S01La19FZUNYcWNSVi0xOGY2USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9mZHpLTXFrX0VlQ1hxY1JWLTE4ZjZRIj4KKyAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX2ZkektWS2tfRWVDWHFjUlYtMThmNlEiIG5hbWU9IlNlcnZvaW5nTW9kdWxlIj4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9mZHpLWmFrX0VlQ1hxY1JWLTE4ZjZRIiBuYW1lPSJpblBhdGhEZXZpYXRpb24iIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iXzB5LTVzS2xyRWVDTGt1NFJGckk3dXciIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfZmR6S1o2a19FZUNYcWNSVi0xOGY2USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2ZkektacWtfRWVDWHFjUlYtMThmNlEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfZmR6S2FLa19FZUNYcWNSVi0xOGY2USI+CisgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2ZkekthYWtfRWVDWHFjUlYtMThmNlEiIG5hbWU9InBhdGhEZWYiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX20td3A4S2x0RWVDTGt1NFJGckk3dXciIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfZmR6S2E2a19FZUNYcWNSVi0xOGY2USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2ZkekthcWtfRWVDWHFjUlYtMThmNlEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfZmR6S2JLa19FZUNYcWNSVi0xOGY2USI+CisgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2ZkektjYWtfRWVDWHFjUlYtMThmNlEiIG5hbWU9ImNvbnRyb2wiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX24xMjJVQjhuRWVHNGdQQ0V6blZOT0EiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfZmR6S2M2a19FZUNYcWNSVi0xOGY2USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2ZkektjcWtfRWVDWHFjUlYtMThmNlEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfZmR6S2RLa19FZUNYcWNSVi0xOGY2USI+CisgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2dGWXhZQjhzRWVHNGdQQ0V6blZOT0EiIG5hbWU9InZlbG9jaXR5IiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX2ZkektvS2tfRWVDWHFjUlYtMThmNlEiIG5hbWU9Ik1vbml0b3JpbmdBbmRJbnRlZ3JpdHlNb2R1bGUiPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2ZkekswNmtfRWVDWHFjUlYtMThmNlEiIG5hbWU9InJ0a19wb3MiIHZpc2liaWxpdHk9InB1YmxpYyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcUptSzRLbEVFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfZmR6SzFha19FZUNYcWNSVi0xOGY2USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2ZkeksxS2tfRWVDWHFjUlYtMThmNlEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfZmR6SzFxa19FZUNYcWNSVi0xOGY2USI+CisgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2ZkekszNmtfRWVDWHFjUlYtMThmNlEiIG5hbWU9Im1pc3Npb25EZWZJbiIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfcGY0T3dLbGdFZUNZZmJueFZTeVo5ZyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9mZHpLNGFrX0VlQ1hxY1JWLTE4ZjZRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfZmR6SzRLa19FZUNYcWNSVi0xOGY2USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9mZHpLNHFrX0VlQ1hxY1JWLTE4ZjZRIj4KKyAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfR0p6clVLbGJFZUNZZmJueFZTeVo5ZyIgbmFtZT0icnRrX3ZlbCIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcUptSzRLbEVFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfNlZZdjRCOHJFZUc0Z1BDRXpuVk5PQSIgbmFtZT0ib3V0cHV0IiB0eXBlPSJfbjEyMlVCOG5FZUc0Z1BDRXpuVk5PQSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIvPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iXzZvT3pZQjhyRWVHNGdQQ0V6blZOT0EiIG5hbWU9ImlucHV0IiB0eXBlPSJfbjEyMlVCOG5FZUc0Z1BDRXpuVk5PQSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIvPgorICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9mZHpLNUtrX0VlQ1hxY1JWLTE4ZjZRIiBuYW1lPSJMb2NhbGlzYXRpb25Nb2R1bGUiIGNsYXNzaWZpZXJCZWhhdmlvcj0iX1AyLVBVRUhaRWVHOG52akdqRDBNcmciPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2Zkeks2YWtfRWVDWHFjUlYtMThmNlEiIG5hbWU9InBvczNEIiB2aXNpYmlsaXR5PSJwdWJsaWMiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcUptSzRLbEVFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfZmR6SzY2a19FZUNYcWNSVi0xOGY2USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2Zkeks2cWtfRWVDWHFjUlYtMThmNlEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfZmR6SzdLa19FZUNYcWNSVi0xOGY2USI+CisgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2Zkeks5YWtfRWVDWHFjUlYtMThmNlEiIG5hbWU9InBhdGhEZWZJbiIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfbS13cDhLbHRFZUNMa3U0UkZySTd1dyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9mZHpLOTZrX0VlQ1hxY1JWLTE4ZjZRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfZmR6Szlxa19FZUNYcWNSVi0xOGY2USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9mZHpLLUtrX0VlQ1hxY1JWLTE4ZjZRIj4KKyAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfZmR6Sy1ha19FZUNYcWNSVi0xOGY2USIgbmFtZT0icGF0aERldmlhdGlvbiIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfMHktNXNLbHJFZUNMa3U0UkZySTd1dyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9mZHpLLTZrX0VlQ1hxY1JWLTE4ZjZRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfZmR6Sy1xa19FZUNYcWNSVi0xOGY2USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9mZHpLX0trX0VlQ1hxY1JWLTE4ZjZRIj4KKyAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfVUlPYkVLbG9FZUNMa3U0UkZySTd1dyIgbmFtZT0idmVsb2NpdHkzRCIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19OZXMzd0FJREVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9VZWdtSURVckVlRzVwTF9mcE4yRGdRIiBuYW1lPSJvZG9tZXRyeSIgdHlwZT0iX3J5ZTVZQjhtRWVHNGdQQ0V6blZOT0EiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiLz4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9iZVNic0RVckVlRzVwTF9mcE4yRGdRIiBuYW1lPSJmcm9udEZyYW1lIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX21KRGE4QUt1RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEJlaGF2aW9yIHhtaTp0eXBlPSJ1bWw6U3RhdGVNYWNoaW5lIiB4bWk6aWQ9Il9QMi1QVUVIWkVlRzhudmpHakQwTXJnIiBuYW1lPSJMb2NhbGlzYXRpb25GU00iPgorICAgICAgICAgICAgPGNvbm5lY3Rpb25Qb2ludCB4bWk6dHlwZT0idW1sOlBzZXVkb3N0YXRlIiB4bWk6aWQ9Il9RRklLb0VIYUVlRzhudmpHakQwTXJnIiBuYW1lPSJFc3RpbWF0ZWRTdGF0ZSIga2luZD0iZXhpdFBvaW50Ii8+CisgICAgICAgICAgICA8Y29ubmVjdGlvblBvaW50IHhtaTp0eXBlPSJ1bWw6UHNldWRvc3RhdGUiIHhtaTppZD0iX1lsYUpvRUhhRWVHOG52akdqRDBNcmciIG5hbWU9IklucHV0IiBraW5kPSJlbnRyeVBvaW50Ii8+CisgICAgICAgICAgICA8Y29ubmVjdGlvblBvaW50IHhtaTp0eXBlPSJ1bWw6UHNldWRvc3RhdGUiIHhtaTppZD0iX2EtWU1JRUhhRWVHOG52akdqRDBNcmciIG5hbWU9Ik1lYXN1cmVtZW50cyIga2luZD0iZW50cnlQb2ludCIvPgorICAgICAgICAgICAgPHJlZ2lvbiB4bWk6dHlwZT0idW1sOlJlZ2lvbiIgeG1pOmlkPSJfUXYtNjhFSFpFZUc4bnZqR2pEME1yZyIgbmFtZT0iUmVnaW9uMSI+CisgICAgICAgICAgICAgIDx0cmFuc2l0aW9uIHhtaTp0eXBlPSJ1bWw6VHJhbnNpdGlvbiIgeG1pOmlkPSJfM0pNNGtFSFpFZUc4bnZqR2pEME1yZyIgbmFtZT0iU3RhdGVVcGRhdGUiIHNvdXJjZT0iX2xDOUU0RUhaRWVHOG52akdqRDBNcmciIHRhcmdldD0iX3RoWGJvRUhaRWVHOG52akdqRDBNcmciLz4KKyAgICAgICAgICAgICAgPHRyYW5zaXRpb24geG1pOnR5cGU9InVtbDpUcmFuc2l0aW9uIiB4bWk6aWQ9Il9lY29ic0VIYUVlRzhudmpHakQwTXJnIiBuYW1lPSJUcmFuc2l0aW9uMCIgc291cmNlPSJfTTR6WWtFSGFFZUc4bnZqR2pEME1yZyIgdGFyZ2V0PSJfbEM5RTRFSFpFZUc4bnZqR2pEME1yZyIvPgorICAgICAgICAgICAgICA8dHJhbnNpdGlvbiB4bWk6dHlwZT0idW1sOlRyYW5zaXRpb24iIHhtaTppZD0iX2loeVRNRUhhRWVHOG52akdqRDBNcmciIG5hbWU9IlRyYW5zaXRpb24xIiBzb3VyY2U9Il9sQzlFNEVIWkVlRzhudmpHakQwTXJnIiB0YXJnZXQ9Il9ZbGFKb0VIYUVlRzhudmpHakQwTXJnIi8+CisgICAgICAgICAgICAgIDx0cmFuc2l0aW9uIHhtaTp0eXBlPSJ1bWw6VHJhbnNpdGlvbiIgeG1pOmlkPSJfbWVqRHNFSGFFZUc4bnZqR2pEME1yZyIgbmFtZT0iVHJhbnNpdGlvbjIiIHNvdXJjZT0iX3RoWGJvRUhaRWVHOG52akdqRDBNcmciIHRhcmdldD0iX1FGSUtvRUhhRWVHOG52akdqRDBNcmciLz4KKyAgICAgICAgICAgICAgPHRyYW5zaXRpb24geG1pOnR5cGU9InVtbDpUcmFuc2l0aW9uIiB4bWk6aWQ9Il8wUVo5RUc2b0VlR3FyZF9fQjB5VU5BIiBuYW1lPSJUcmFuc2l0aW9uNCIgc291cmNlPSJfdG9kWXNHNm9FZUdxcmRfX0IweVVOQSIgdGFyZ2V0PSJfbEM5RTRFSFpFZUc4bnZqR2pEME1yZyIvPgorICAgICAgICAgICAgICA8dHJhbnNpdGlvbiB4bWk6dHlwZT0idW1sOlRyYW5zaXRpb24iIHhtaTppZD0iX2J6aUpFRzZwRWVHcXJkX19CMHlVTkEiIG5hbWU9IlRyYW5zaXRpb241IiBzb3VyY2U9Il9sQzlFNEVIWkVlRzhudmpHakQwTXJnIiB0YXJnZXQ9Il9sQzlFNEVIWkVlRzhudmpHakQwTXJnIi8+CisgICAgICAgICAgICAgIDx0cmFuc2l0aW9uIHhtaTp0eXBlPSJ1bWw6VHJhbnNpdGlvbiIgeG1pOmlkPSJfUkN0T1VHNnFFZUdxcmRfX0IweVVOQSIgbmFtZT0iVHJhbnNpdGlvbjYiIHNvdXJjZT0iX3RoWGJvRUhaRWVHOG52akdqRDBNcmciIHRhcmdldD0iX3ViUjh3RzZvRWVHcXJkX19CMHlVTkEiLz4KKyAgICAgICAgICAgICAgPHRyYW5zaXRpb24geG1pOnR5cGU9InVtbDpUcmFuc2l0aW9uIiB4bWk6aWQ9Il9pV0xQVUc2c0VlR3FyZF9fQjB5VU5BIiBuYW1lPSJUcmFuc2l0aW9uNyIgc291cmNlPSJfbEM5RTRFSFpFZUc4bnZqR2pEME1yZyIgdGFyZ2V0PSJfdWJSOHdHNm9FZUdxcmRfX0IweVVOQSIvPgorICAgICAgICAgICAgICA8c3VidmVydGV4IHhtaTp0eXBlPSJ1bWw6U3RhdGUiIHhtaTppZD0iX2xDOUU0RUhaRWVHOG52akdqRDBNcmciIG5hbWU9IkthbG1hbkZpbHRlciIvPgorICAgICAgICAgICAgICA8c3VidmVydGV4IHhtaTp0eXBlPSJ1bWw6U3RhdGUiIHhtaTppZD0iX3RoWGJvRUhaRWVHOG52akdqRDBNcmciIG5hbWU9IkNvbXB1dGVQYXRoRGV2aWF0aW9uIi8+CisgICAgICAgICAgICAgIDxzdWJ2ZXJ0ZXggeG1pOnR5cGU9InVtbDpQc2V1ZG9zdGF0ZSIgeG1pOmlkPSJfTTR6WWtFSGFFZUc4bnZqR2pEME1yZyIgbmFtZT0iSW5pdGlhbDAiLz4KKyAgICAgICAgICAgICAgPHN1YnZlcnRleCB4bWk6dHlwZT0idW1sOlBzZXVkb3N0YXRlIiB4bWk6aWQ9Il90b2RZc0c2b0VlR3FyZF9fQjB5VU5BIiBuYW1lPSJpbnRpYWxTdGF0ZSIvPgorICAgICAgICAgICAgICA8c3VidmVydGV4IHhtaTp0eXBlPSJ1bWw6RmluYWxTdGF0ZSIgeG1pOmlkPSJfdWJSOHdHNm9FZUdxcmRfX0IweVVOQSIgbmFtZT0iRmluYWxTdGF0ZSIvPgorICAgICAgICAgICAgPC9yZWdpb24+CisgICAgICAgICAgPC9vd25lZEJlaGF2aW9yPgorICAgICAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfNWxER2dHNm9FZUdxcmRfX0IweVVOQSIgbmFtZT0iYWxsU2Vuc29yc0RhdGFSZWNlaXZlZCI+CisgICAgICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOnR5cGU9InVtbDpQYXJhbWV0ZXIiIHhtaTppZD0iX0tiQVhBRzZwRWVHcXJkX19CMHlVTkEiIGRpcmVjdGlvbj0ib3V0Ij4KKyAgICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTlpuVHNBSVVFZUNWckxFQkg1ZWpuUSIvPgorICAgICAgICAgICAgPC9vd25lZFBhcmFtZXRlcj4KKyAgICAgICAgICA8L293bmVkT3BlcmF0aW9uPgorICAgICAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfNUZxbVlHNnBFZUdxcmRfX0IweVVOQSIgbmFtZT0icG9zaXRpb25DaGFuZ2VkIj4KKyAgICAgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfQXhaakFHNnFFZUdxcmRfX0IweVVOQSIgZGlyZWN0aW9uPSJvdXQiPgorICAgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19OWm5Uc0FJVUVlQ1ZyTEVCSDVlam5RIi8+CisgICAgICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICAgIDwvb3duZWRPcGVyYXRpb24+CisgICAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiB4bWk6aWQ9Il9jV0tma0c2cUVlR3FyZF9fQjB5VU5BIiBuYW1lPSJzZW5zb3JEYXRhUmVjZWl2ZWQiPgorICAgICAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTp0eXBlPSJ1bWw6UGFyYW1ldGVyIiB4bWk6aWQ9Il9peUJ2d0c2cUVlR3FyZF9fQjB5VU5BIiBkaXJlY3Rpb249Im91dCI+CisgICAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX05ablRzQUlVRWVDVnJMRUJINWVqblEiLz4KKyAgICAgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgICAgPC9vd25lZE9wZXJhdGlvbj4KKyAgICAgICAgICA8b3duZWRPcGVyYXRpb24geG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIHhtaTppZD0iXzFGdGlnRzZxRWVHcXJkX19CMHlVTkEiIG5hbWU9InNodXREb3duU2lnbmFsUmVjZWl2ZWQiPgorICAgICAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTp0eXBlPSJ1bWw6UGFyYW1ldGVyIiB4bWk6aWQ9Il9adXZmY0c2c0VlR3FyZF9fQjB5VU5BIiBkaXJlY3Rpb249Im91dCI+CisgICAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX05ablRzQUlVRWVDVnJMRUJINWVqblEiLz4KKyAgICAgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgICAgPC9vd25lZE9wZXJhdGlvbj4KKyAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfZmR6TEhha19FZUNYcWNSVi0xOGY2USIgbmFtZT0iQ2hhbGxlbmdlclN5c3RlbSI+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2ZkekxJcWtfRWVDWHFjUlYtMThmNlEiIG5hbWU9Im1hcHBpbmdTeXN0ZW0iIHR5cGU9Il8wN0FjQUJ3a0VlR2E1YkhfUkpGekJRIi8+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2ZkekxKNmtfRWVDWHFjUlYtMThmNlEiIG5hbWU9Im9EU3lzdGVtIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9NYVZVa0J3aUVlR2E1YkhfUkpGekJRIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2ZkekxLYWtfRWVDWHFjUlYtMThmNlEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9mZHpMS0trX0VlQ1hxY1JWLTE4ZjZRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2ZkekxLcWtfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9mZHpMTnFrX0VlQ1hxY1JWLTE4ZjZRIiBuYW1lPSJtaXNzaW9uRGVmIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9wZjRPd0tsZ0VlQ1lmYm54VlN5WjlnIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2ZkekxPS2tfRWVDWHFjUlYtMThmNlEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9mZHpMTjZrX0VlQ1hxY1JWLTE4ZjZRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2ZkekxPYWtfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfZmR6TFFxa19FZUNYcWNSVi0xOGY2USIgbmFtZT0icGF0aFBsYW5uZXIiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX2ZkektJcWtfRWVDWHFjUlYtMThmNlEiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfZmR6TFJLa19FZUNYcWNSVi0xOGY2USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2ZkekxRNmtfRWVDWHFjUlYtMThmNlEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfZmR6TFJha19FZUNYcWNSVi0xOGY2USI+CisgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9mZHpMUnFrX0VlQ1hxY1JWLTE4ZjZRIiBuYW1lPSJjb250cm9sIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9mZHpLVktrX0VlQ1hxY1JWLTE4ZjZRIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2ZkekxTS2tfRWVDWHFjUlYtMThmNlEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9mZHpMUjZrX0VlQ1hxY1JWLTE4ZjZRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2ZkekxTYWtfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfZmR6TFNxa19FZUNYcWNSVi0xOGY2USIgbmFtZT0ibG9jYWxpc2F0aW9uIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9mZHpLNUtrX0VlQ1hxY1JWLTE4ZjZRIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2ZkekxUS2tfRWVDWHFjUlYtMThmNlEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9mZHpMUzZrX0VlQ1hxY1JWLTE4ZjZRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2ZkekxUYWtfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9MQThxVUtsa0VlQ0xrdTRSRnJJN3V3IiBuYW1lPSJ2ZWxvY2l0eTNEIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX05lczN3QUlERWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX0ltRkRBS2xuRWVDTGt1NFJGckk3dXciIG5hbWU9ImNtZE1lc3NhZ2UiIHR5cGU9Il9uMTIyVUI4bkVlRzRnUENFem5WTk9BIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIi8+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfZWdTVWNCOHZFZUc0Z1BDRXpuVk5PQSIgbmFtZT0ib2RvbWV0cnkiIHR5cGU9Il9yeWU1WUI4bUVlRzRnUENFem5WTk9BIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIi8+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfRmdidk1COHdFZUdldE9MZmtMTndmZyIgbmFtZT0ibGlkYXJTY2FuIiB0eXBlPSJfVEt6M3NEVXRFZUc1cExfZnBOMkRnUSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9KWUpBa0I4d0VlR2V0T0xma0xOd2ZnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfSllMYzBCOHdFZUdldE9MZmtMTndmZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX05rRU9jQjh3RWVHZXRPTGZrTE53ZmciIG5hbWU9ImdwcyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19Nd3Z2b0tsR0VlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9XWmpvY0I4d0VlR2V0T0xma0xOd2ZnIiBuYW1lPSJzdGVyZW9SaWdodCIgdmlzaWJpbGl0eT0icHVibGljIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX21KRGE4QUt1RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3dFWjJBQjh3RWVHZXRPTGZrTE53ZmciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il93RW1xVUI4d0VlR2V0T0xma0xOd2ZnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfeDlvQmNCOHdFZUdldE9MZmtMTndmZyIgbmFtZT0iZnJvbnRGcmFtZSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19tSkRhOEFLdUVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9XQzVUa0I4LUVlR2V0T0xma0xOd2ZnIiBuYW1lPSJyZWFyRnJhbWUiIHZpc2liaWxpdHk9InB1YmxpYyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19tSkRhOEFLdUVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9hOEFYa0I4LUVlR2V0T0xma0xOd2ZnIiBuYW1lPSJ3aWRlRnJhbWUiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfbUpEYThBS3VFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfcVByU3dEVXpFZUc1cExfZnBOMkRnUSIgbmFtZT0ic3RlcmVvTGVmdCIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19tSkRhOEFLdUVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il8wLWVYd0RVekVlRzVwTF9mcE4yRGdRIiBuYW1lPSJydGtfcG9zIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3FKbUs0S2xFRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iXzJpelJRRFV6RWVHNXBMX2ZwTjJEZ1EiIG5hbWU9InJ0a192ZWwiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcUptSzRLbEVFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfM3dLY1FEVXpFZUc1cExfZnBOMkRnUSIgbmFtZT0icnRrX2FjYyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xSm1LNEtsRUVlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2ZkekxWcWtfRWVDWHFjUlYtMThmNlEiIG5hbWU9IkNvbm5lY3RvcjIiPgorICAgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfZmR6TFY2a19FZUNYcWNSVi0xOGY2USIgcGFydFdpdGhQb3J0PSJfZmR6TFFxa19FZUNYcWNSVi0xOGY2USIgcm9sZT0iX2ZkektLNmtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2ZkekxXS2tfRWVDWHFjUlYtMThmNlEiIHBhcnRXaXRoUG9ydD0iX2ZkekxTcWtfRWVDWHFjUlYtMThmNlEiIHJvbGU9Il9mZHpLOWFrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2ZkekxXYWtfRWVDWHFjUlYtMThmNlEiIG5hbWU9IkNvbm5lY3RvcjciPgorICAgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfZmR6TFdxa19FZUNYcWNSVi0xOGY2USIgcGFydFdpdGhQb3J0PSJfZmR6TFJxa19FZUNYcWNSVi0xOGY2USIgcm9sZT0iX2ZkektaYWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2ZkekxXNmtfRWVDWHFjUlYtMThmNlEiIHBhcnRXaXRoUG9ydD0iX2ZkekxTcWtfRWVDWHFjUlYtMThmNlEiIHJvbGU9Il9mZHpLLWFrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2ZkekxmYWtfRWVDWHFjUlYtMThmNlEiIG5hbWU9IkNvbm5lY3RvcjEiPgorICAgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfZmR6TGZxa19FZUNYcWNSVi0xOGY2USIgcm9sZT0iX2ZkekxOcWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2ZkekxmNmtfRWVDWHFjUlYtMThmNlEiIHBhcnRXaXRoUG9ydD0iX2ZkekxRcWtfRWVDWHFjUlYtMThmNlEiIHJvbGU9Il9mZHpLSTZrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX1IzSTZnS2x1RWVDTGt1NFJGckk3dXciIG5hbWU9IkNvbm5lY3RvcjExIj4KKyAgICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX1IzSTZnYWx1RWVDTGt1NFJGckk3dXciIHBhcnRXaXRoUG9ydD0iX2ZkekxScWtfRWVDWHFjUlYtMThmNlEiIHJvbGU9Il9mZHpLY2FrX0VlQ1hxY1JWLTE4ZjZRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfUjNJNmc2bHVFZUNMa3U0UkZySTd1dyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfUjNJNmdxbHVFZUNMa3U0UkZySTd1dyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvZW5kPgorICAgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfUjNJNmhLbHVFZUNMa3U0UkZySTd1dyIgcm9sZT0iX0ltRkRBS2xuRWVDTGt1NFJGckk3dXciPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9SM0k2aHFsdUVlQ0xrdTRSRnJJN3V3IiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9SM0k2aGFsdUVlQ0xrdTRSRnJJN3V3IiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iXzZWYmZNR2JVRWVHR051WDFJSGcxemciIG5hbWU9IkNvbm5lY3RvcjEyIj4KKyAgICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iXzZWYmZNV2JVRWVHR051WDFJSGcxemciIHBhcnRXaXRoUG9ydD0iX2ZkekxRcWtfRWVDWHFjUlYtMThmNlEiIHJvbGU9Il9mZHpLTDZrX0VlQ1hxY1JWLTE4ZjZRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfNlZiZk0yYlVFZUdHTnVYMUlIZzF6ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfNlZiZk1tYlVFZUdHTnVYMUlIZzF6ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvZW5kPgorICAgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfNlZiZk5HYlVFZUdHTnVYMUlIZzF6ZyIgcGFydFdpdGhQb3J0PSJfZmR6TFJxa19FZUNYcWNSVi0xOGY2USIgcm9sZT0iX2dGWXhZQjhzRWVHNGdQQ0V6blZOT0EiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il82VmJmTm1iVUVlR0dOdVgxSUhnMXpnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il82VmJmTldiVUVlR0dOdVgxSUhnMXpnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX1lLUm9BR2JWRWVHR051WDFJSGcxemciIG5hbWU9IkNvbm5lY3RvcjEzIj4KKyAgICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX1lLUm9BV2JWRWVHR051WDFJSGcxemciIHJvbGU9Il8wLWVYd0RVekVlRzVwTF9mcE4yRGdRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfWUtSb0EyYlZFZUdHTnVYMUlIZzF6ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfWUtSb0FtYlZFZUdHTnVYMUlIZzF6ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvZW5kPgorICAgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfWUtSb0JHYlZFZUdHTnVYMUlIZzF6ZyIgcGFydFdpdGhQb3J0PSJfZmR6TFFxa19FZUNYcWNSVi0xOGY2USIgcm9sZT0iX2ZkektKNmtfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9ZS1JvQm1iVkVlR0dOdVgxSUhnMXpnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9ZS1JvQldiVkVlR0dOdVgxSUhnMXpnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iXzM5TFk4R2JWRWVHR051WDFJSGcxemciIG5hbWU9IkNvbm5lY3RvcjE0Ij4KKyAgICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iXzM5TFk4V2JWRWVHR051WDFJSGcxemciIHJvbGU9Il9MQThxVUtsa0VlQ0xrdTRSRnJJN3V3Ij4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfMzlMWTgyYlZFZUdHTnVYMUlIZzF6ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfMzlMWThtYlZFZUdHTnVYMUlIZzF6ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvZW5kPgorICAgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfMzlMWTlHYlZFZUdHTnVYMUlIZzF6ZyIgcGFydFdpdGhQb3J0PSJfZmR6TFNxa19FZUNYcWNSVi0xOGY2USIgcm9sZT0iX1VJT2JFS2xvRWVDTGt1NFJGckk3dXciPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il8zOUxZOW1iVkVlR0dOdVgxSUhnMXpnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il8zOUxZOVdiVkVlR0dOdVgxSUhnMXpnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iXzU2cExNR2JWRWVHR051WDFJSGcxemciIG5hbWU9IkNvbm5lY3RvcjE1Ij4KKyAgICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iXzU2cExNV2JWRWVHR051WDFJSGcxemciIHJvbGU9Il8wLWVYd0RVekVlRzVwTF9mcE4yRGdRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfNTZwTE0yYlZFZUdHTnVYMUlIZzF6ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfNTZwTE1tYlZFZUdHTnVYMUlIZzF6ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvZW5kPgorICAgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfNTZwTE5HYlZFZUdHTnVYMUlIZzF6ZyIgcGFydFdpdGhQb3J0PSJfZmR6TFNxa19FZUNYcWNSVi0xOGY2USIgcm9sZT0iX2Zkeks2YWtfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il81NnBMTm1iVkVlR0dOdVgxSUhnMXpnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il81NnBMTldiVkVlR0dOdVgxSUhnMXpnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iXzcwcjJBR2JWRWVHR051WDFJSGcxemciIG5hbWU9IkNvbm5lY3RvcjE2Ij4KKyAgICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iXzcwcjJBV2JWRWVHR051WDFJSGcxemciIHJvbGU9Il9lZ1NVY0I4dkVlRzRnUENFem5WTk9BIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfNzByMkEyYlZFZUdHTnVYMUlIZzF6ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfNzByMkFtYlZFZUdHTnVYMUlIZzF6ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvZW5kPgorICAgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfNzByMkJHYlZFZUdHTnVYMUlIZzF6ZyIgcGFydFdpdGhQb3J0PSJfZmR6TFNxa19FZUNYcWNSVi0xOGY2USIgcm9sZT0iX1VlZ21JRFVyRWVHNXBMX2ZwTjJEZ1EiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il83MHIyQm1iVkVlR0dOdVgxSUhnMXpnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il83MHIyQldiVkVlR0dOdVgxSUhnMXpnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iXzlBLXFBR2JWRWVHR051WDFJSGcxemciIG5hbWU9IkNvbm5lY3RvcjE3Ij4KKyAgICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iXzlBLXFBV2JWRWVHR051WDFJSGcxemciIHJvbGU9Il94OW9CY0I4d0VlR2V0T0xma0xOd2ZnIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfOUEtcUEyYlZFZUdHTnVYMUlIZzF6ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfOUEtcUFtYlZFZUdHTnVYMUlIZzF6ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvZW5kPgorICAgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfOUEtcUJHYlZFZUdHTnVYMUlIZzF6ZyIgcGFydFdpdGhQb3J0PSJfZmR6TFNxa19FZUNYcWNSVi0xOGY2USIgcm9sZT0iX2JlU2JzRFVyRWVHNXBMX2ZwTjJEZ1EiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il85QS1xQm1iVkVlR0dOdVgxSUhnMXpnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il85QS1xQldiVkVlR0dOdVgxSUhnMXpnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX09DUVpzR2JXRWVHR051WDFJSGcxemciIG5hbWU9IkNvbm5lY3RvcjE4Ij4KKyAgICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX09DUVpzV2JXRWVHR051WDFJSGcxemciIHBhcnRXaXRoUG9ydD0iX2ZkekxKNmtfRWVDWHFjUlYtMThmNlEiIHJvbGU9Il9mNmEtSUJ3a0VlR2E1YkhfUkpGekJRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfT0NRWnMyYldFZUdHTnVYMUlIZzF6ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfT0NRWnNtYldFZUdHTnVYMUlIZzF6ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvZW5kPgorICAgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfT0NRWnRHYldFZUdHTnVYMUlIZzF6ZyIgcGFydFdpdGhQb3J0PSJfZmR6TFJxa19FZUNYcWNSVi0xOGY2USIgcm9sZT0iX2ZkekthYWtfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9PQ1FadG1iV0VlR0dOdVgxSUhnMXpnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9PQ1FadFdiV0VlR0dOdVgxSUhnMXpnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX1ZoTENVR2JXRWVHR051WDFJSGcxemciIG5hbWU9IkNvbm5lY3RvcjE5Ij4KKyAgICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX1ZoTENVV2JXRWVHR051WDFJSGcxemciIHJvbGU9Il9GZ2J2TUI4d0VlR2V0T0xma0xOd2ZnIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfVmhMQ1UyYldFZUdHTnVYMUlIZzF6ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfVmhMQ1VtYldFZUdHTnVYMUlIZzF6ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvZW5kPgorICAgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfVmhMQ1ZHYldFZUdHTnVYMUlIZzF6ZyIgcGFydFdpdGhQb3J0PSJfZmR6TEo2a19FZUNYcWNSVi0xOGY2USIgcm9sZT0iX1JzYjFjQndrRWVHYTViSF9SSkZ6QlEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9WaExDVm1iV0VlR0dOdVgxSUhnMXpnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9WaExDVldiV0VlR0dOdVgxSUhnMXpnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2FKUW53R2JXRWVHR051WDFJSGcxemciIG5hbWU9IkNvbm5lY3RvcjIwIj4KKyAgICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2FKUW53V2JXRWVHR051WDFJSGcxemciIHBhcnRXaXRoUG9ydD0iX2ZkekxRcWtfRWVDWHFjUlYtMThmNlEiIHJvbGU9Il9mZHpLSzZrX0VlQ1hxY1JWLTE4ZjZRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfYUpRbncyYldFZUdHTnVYMUlIZzF6ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfYUpRbndtYldFZUdHTnVYMUlIZzF6ZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvZW5kPgorICAgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfYUpRbnhHYldFZUdHTnVYMUlIZzF6ZyIgcGFydFdpdGhQb3J0PSJfZmR6TEo2a19FZUNYcWNSVi0xOGY2USIgcm9sZT0iX1cyVzhvQndrRWVHYTViSF9SSkZ6QlEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9hSlFueG1iV0VlR0dOdVgxSUhnMXpnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9hSlFueFdiV0VlR0dOdVgxSUhnMXpnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfYUc1U2tLbGdFZUNZZmJueFZTeVo5ZyIgbmFtZT0iTWlzc2lvbkdlbmVyYXRvck1vZHVsZSI+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfY1BpYUVLbGdFZUNZZmJueFZTeVo5ZyIgbmFtZT0ibWlzc2lvbiIgdHlwZT0iX3BmNE93S2xnRWVDWWZibnhWU3laOWciIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiLz4KKyAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfTWFWVWtCd2lFZUdhNWJIX1JKRnpCUSIgbmFtZT0iT2JzdGFjbGVEZXRlY3Rpb25Nb2R1bGUiPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX1JzYjFjQndrRWVHYTViSF9SSkZ6QlEiIG5hbWU9IkxpZGFyIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9US3ozc0RVdEVlRzVwTF9mcE4yRGdRIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2JmalZVQndrRWVHYTViSF9SSkZ6QlEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9iZnBiOEJ3a0VlR2E1YkhfUkpGekJRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfVzJXOG9Cd2tFZUdhNWJIX1JKRnpCUSIgbmFtZT0icGF0aCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfbS13cDhLbHRFZUNMa3U0UkZySTd1dyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIvPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2Y2YS1JQndrRWVHYTViSF9SSkZ6QlEiIG5hbWU9InBhdGhPdXQiIHR5cGU9Il9tLXdwOEtsdEVlQ0xrdTRSRnJJN3V3IiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIi8+CisgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iXzA3QWNBQndrRWVHYTViSF9SSkZ6QlEiIG5hbWU9Ik1hcHBpbmdNb2R1bGUiLz4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9rZGxXSUI4ckVlRzRnUENFem5WTk9BIiBuYW1lPSJFdmFsdWF0aW9uTW9kdWxlIj4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il92UVBBWUI4ckVlRzRnUENFem5WTk9BIiBuYW1lPSJwb3MiIHZpc2liaWxpdHk9InB1YmxpYyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcUptSzRLbEVFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfeEhCaTRCOHJFZUc0Z1BDRXpuVk5PQSIgbmFtZT0iYWNjIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xSm1LNEtsRUVlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il8wMWM4Y0I4ckVlRzRnUENFem5WTk9BIiBuYW1lPSJtaXNzaW9uIiB0eXBlPSJfcGY0T3dLbGdFZUNZZmJueFZTeVo5ZyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIvPgorICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il80UjhWWUVIeEVlR0dYcEdzY3BramRnIiBuYW1lPSJGc21UZXN0TW9kdWxlIiBjbGFzc2lmaWVyQmVoYXZpb3I9Il9EZTVaSUVLNkVlR3YtNTRXbTRtUldRIj4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9GcFhJd0VLLUVlR3YtNTRXbTRtUldRIiBuYW1lPSJJblZpcGFsYWJPZG9tZXRyeSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfcnllNVlCOG1FZUc0Z1BDRXpuVk5PQSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9GcGJhTUVLLUVlR3YtNTRXbTRtUldRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfRnBkUFlFSy1FZUd2LTU0V200bVJXUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX1RWWU0wRUstRWVHdi01NFdtNG1SV1EiIG5hbWU9IkluTGVmdEltYWdlIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19tSkRhOEFLdUVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9UVmFwRUVLLUVlR3YtNTRXbTRtUldRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfVFZkRlVFSy1FZUd2LTU0V200bVJXUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2FMMUhRRUstRWVHdi01NFdtNG1SV1EiIG5hbWU9IkluUmlnaHRJbWFnZSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfbUpEYThBS3VFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfYUwzamdFSy1FZUd2LTU0V200bVJXUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2FMNVlzRUstRWVHdi01NFdtNG1SV1EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9kOXdnd0VLLUVlR3YtNTRXbTRtUldRIiBuYW1lPSJJbkZyb250SW1hZ2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX21KRGE4QUt1RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2Q5eTlBRUstRWVHdi01NFdtNG1SV1EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9kOTB5TUVLLUVlR3YtNTRXbTRtUldRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPG93bmVkQmVoYXZpb3IgeG1pOnR5cGU9InVtbDpTdGF0ZU1hY2hpbmUiIHhtaTppZD0iX0RlNVpJRUs2RWVHdi01NFdtNG1SV1EiIG5hbWU9IlN0YXRlTWFjaGluZTEiPgorICAgICAgICAgICAgPHJlZ2lvbiB4bWk6dHlwZT0idW1sOlJlZ2lvbiIgeG1pOmlkPSJfRUtQY01FSzZFZUd2LTU0V200bVJXUSIgbmFtZT0iUmVnaW9uMSI+CisgICAgICAgICAgICAgIDx0cmFuc2l0aW9uIHhtaTp0eXBlPSJ1bWw6VHJhbnNpdGlvbiIgeG1pOmlkPSJfNG5kMU1FSzhFZUd2LTU0V200bVJXUSIgbmFtZT0iVHJhbnNfTE0iIHNvdXJjZT0iX005aWQwRUs2RWVHdi01NFdtNG1SV1EiIHRhcmdldD0iX0FyNDBFRUs4RWVHdi01NFdtNG1SV1EiLz4KKyAgICAgICAgICAgICAgPHRyYW5zaXRpb24geG1pOnR5cGU9InVtbDpUcmFuc2l0aW9uIiB4bWk6aWQ9Il82Q0duTUVLOEVlR3YtNTRXbTRtUldRIiBuYW1lPSJUcmFuc19NTCIgc291cmNlPSJfQXI0MEVFSzhFZUd2LTU0V200bVJXUSIgdGFyZ2V0PSJfTTlpZDBFSzZFZUd2LTU0V200bVJXUSIvPgorICAgICAgICAgICAgICA8dHJhbnNpdGlvbiB4bWk6dHlwZT0idW1sOlRyYW5zaXRpb24iIHhtaTppZD0iXzY5cmVvRUs4RWVHdi01NFdtNG1SV1EiIG5hbWU9IlRyYW5zX01SIiBzb3VyY2U9Il9BcjQwRUVLOEVlR3YtNTRXbTRtUldRIiB0YXJnZXQ9Il9Qdmpua0VLOEVlR3YtNTRXbTRtUldRIj4KKyAgICAgICAgICAgICAgICA8ZWZmZWN0IHhtaTp0eXBlPSJ1bWw6SW50ZXJhY3Rpb24iIHhtaTppZD0iX1EzNEZFRUs5RWVHdi01NFdtNG1SV1EiLz4KKyAgICAgICAgICAgICAgPC90cmFuc2l0aW9uPgorICAgICAgICAgICAgICA8dHJhbnNpdGlvbiB4bWk6dHlwZT0idW1sOlRyYW5zaXRpb24iIHhtaTppZD0iXzdpcnBJRUs4RWVHdi01NFdtNG1SV1EiIG5hbWU9IlRyYW5zX1JNIiBzb3VyY2U9Il9Qdmpua0VLOEVlR3YtNTRXbTRtUldRIiB0YXJnZXQ9Il9BcjQwRUVLOEVlR3YtNTRXbTRtUldRIi8+CisgICAgICAgICAgICAgIDx0cmFuc2l0aW9uIHhtaTp0eXBlPSJ1bWw6VHJhbnNpdGlvbiIgeG1pOmlkPSJfdFVOZk1HTHdFZUdRdnY1d0pFbUdVUSIgbmFtZT0iVHJhbnNpdGlvbjEiIHNvdXJjZT0iX2V4Q0pvR0x3RWVHUXZ2NXdKRW1HVVEiIHRhcmdldD0iX0FyNDBFRUs4RWVHdi01NFdtNG1SV1EiLz4KKyAgICAgICAgICAgICAgPHRyYW5zaXRpb24geG1pOnR5cGU9InVtbDpUcmFuc2l0aW9uIiB4bWk6aWQ9Il91UXRqc0dMd0VlR1F2djV3SkVtR1VRIiBuYW1lPSJUcmFuc2l0aW9uMiIgc291cmNlPSJfQXI0MEVFSzhFZUd2LTU0V200bVJXUSIgdGFyZ2V0PSJfZzdVUDRHTHdFZUdRdnY1d0pFbUdVUSIvPgorICAgICAgICAgICAgICA8dHJhbnNpdGlvbiB4bWk6dHlwZT0idW1sOlRyYW5zaXRpb24iIHhtaTppZD0iX3ZPMV80R0x3RWVHUXZ2NXdKRW1HVVEiIG5hbWU9IlRyYW5zaXRpb24zIiBzb3VyY2U9Il9Qdmpua0VLOEVlR3YtNTRXbTRtUldRIiB0YXJnZXQ9Il9nN1VQNEdMd0VlR1F2djV3SkVtR1VRIi8+CisgICAgICAgICAgICAgIDx0cmFuc2l0aW9uIHhtaTp0eXBlPSJ1bWw6VHJhbnNpdGlvbiIgeG1pOmlkPSJfeU9vS3dHTHdFZUdRdnY1d0pFbUdVUSIgbmFtZT0iVHJhbnNpdGlvbjQiIHNvdXJjZT0iX005aWQwRUs2RWVHdi01NFdtNG1SV1EiIHRhcmdldD0iX2c3VVA0R0x3RWVHUXZ2NXdKRW1HVVEiLz4KKyAgICAgICAgICAgICAgPHRyYW5zaXRpb24geG1pOnR5cGU9InVtbDpUcmFuc2l0aW9uIiB4bWk6aWQ9Il8xWDhGRUdMd0VlR1F2djV3SkVtR1VRIiBuYW1lPSJUcmFuc2l0aW9uNSIgc291cmNlPSJfZXhDSm9HTHdFZUdRdnY1d0pFbUdVUSIgdGFyZ2V0PSJfTTlpZDBFSzZFZUd2LTU0V200bVJXUSIvPgorICAgICAgICAgICAgICA8dHJhbnNpdGlvbiB4bWk6dHlwZT0idW1sOlRyYW5zaXRpb24iIHhtaTppZD0iXzJ3VG1NR0x3RWVHUXZ2NXdKRW1HVVEiIG5hbWU9IlRyYW5zaXRpb242IiBzb3VyY2U9Il9leENKb0dMd0VlR1F2djV3SkVtR1VRIiB0YXJnZXQ9Il9Qdmpua0VLOEVlR3YtNTRXbTRtUldRIi8+CisgICAgICAgICAgICAgIDxzdWJ2ZXJ0ZXggeG1pOnR5cGU9InVtbDpTdGF0ZSIgeG1pOmlkPSJfTTlpZDBFSzZFZUd2LTU0V200bVJXUSIgbmFtZT0iTGVmdCIvPgorICAgICAgICAgICAgICA8c3VidmVydGV4IHhtaTp0eXBlPSJ1bWw6U3RhdGUiIHhtaTppZD0iX0FyNDBFRUs4RWVHdi01NFdtNG1SV1EiIG5hbWU9Ik1pZGRsZSIvPgorICAgICAgICAgICAgICA8c3VidmVydGV4IHhtaTp0eXBlPSJ1bWw6U3RhdGUiIHhtaTppZD0iX1B2am5rRUs4RWVHdi01NFdtNG1SV1EiIG5hbWU9IlJpZ2h0Ii8+CisgICAgICAgICAgICAgIDxzdWJ2ZXJ0ZXggeG1pOnR5cGU9InVtbDpQc2V1ZG9zdGF0ZSIgeG1pOmlkPSJfZXhDSm9HTHdFZUdRdnY1d0pFbUdVUSIgbmFtZT0iU3RhdGUxIi8+CisgICAgICAgICAgICAgIDxzdWJ2ZXJ0ZXggeG1pOnR5cGU9InVtbDpGaW5hbFN0YXRlIiB4bWk6aWQ9Il9nN1VQNEdMd0VlR1F2djV3SkVtR1VRIiBuYW1lPSJTdGF0ZTIiLz4KKyAgICAgICAgICAgIDwvcmVnaW9uPgorICAgICAgICAgIDwvb3duZWRCZWhhdmlvcj4KKyAgICAgICAgICA8b3duZWRCZWhhdmlvciB4bWk6dHlwZT0idW1sOk9wYXF1ZUJlaGF2aW9yIiB4bWk6aWQ9Il82cUpKZ0VLNkVlR3YtNTRXbTRtUldRIiBuYW1lPSJpc1N0ZWVyZWRMZWZ0IiBzcGVjaWZpY2F0aW9uPSJfc0QtS1VFSzZFZUd2LTU0V200bVJXUSI+CisgICAgICAgICAgICA8bGFuZ3VhZ2U+QysrPC9sYW5ndWFnZT4KKyAgICAgICAgICAgIDxib2R5PihvZG9tZXRyeU1zZy5zdGVlcmluZ0FuZ2xlID4gNSkgPyByZXR1cm4gdHJ1ZSA6IHJldHVybiBmYWxzZSA7JiN4RDsKK3JldHVybiAob2RvbWV0cnlNc2cuc3RlZXJpbmdBbmdsZSA+IDUpID8gdHJ1ZTogZmFsc2U7JiN4RDsKKzwvYm9keT4KKyAgICAgICAgICA8L293bmVkQmVoYXZpb3I+CisgICAgICAgICAgPG93bmVkQmVoYXZpb3IgeG1pOnR5cGU9InVtbDpPcGFxdWVCZWhhdmlvciIgeG1pOmlkPSJfTUo4b1FFSzdFZUd2LTU0V200bVJXUSIgbmFtZT0iaXNTdGVlcmVkUmlnaHQiIHNwZWNpZmljYXRpb249Il9ybmZOTUVLN0VlR3YtNTRXbTRtUldRIj4KKyAgICAgICAgICAgIDxsYW5ndWFnZT5DKys8L2xhbmd1YWdlPgorICAgICAgICAgICAgPGJvZHk+KG9kb21ldHJ5TXNnLnN0ZWVyaW5nQW5nbGUgJmx0OyAtNSApIHJldHVybiB0cnVlIDogcmV0dXJuIGZhbHNlIDsmI3hEOworcmV0dXJuIChvZG9tZXRyeU1zZy5zdGVlcmluZ0FuZ2xlICZsdDsgLTUgKSA/IHRydWUgOmZhbHNlOyYjeEQ7Cis8L2JvZHk+CisgICAgICAgICAgPC9vd25lZEJlaGF2aW9yPgorICAgICAgICAgIDxvd25lZEJlaGF2aW9yIHhtaTp0eXBlPSJ1bWw6T3BhcXVlQmVoYXZpb3IiIHhtaTppZD0iX00tNVRRRUs3RWVHdi01NFdtNG1SV1EiIG5hbWU9ImlzU3RlZXJlZEZyb250IiBzcGVjaWZpY2F0aW9uPSJfenNtVElFSzdFZUd2LTU0V200bVJXUSI+CisgICAgICAgICAgICA8bGFuZ3VhZ2U+QysrPC9sYW5ndWFnZT4KKyAgICAgICAgICAgIDxib2R5PiggLTUgJmx0Oz0gb2RvbWV0cnlNc2cuc3RlZXJpbmdBbmdsZSAmYW1wOyZhbXA7IG9kb21ldHJ5TXNnLnN0ZWVyaW5nQW5nbGUgJmx0Oz0gNSApID8gcmV0dXJuIHRydWUgOiByZXR1cm4gZmFsc2UgOyYjeEQ7CityZXR1cm4gKCAtNSAmbHQ7PSBvZG9tZXRyeU1zZy5zdGVlcmluZ0FuZ2xlICZhbXA7JmFtcDsgb2RvbWV0cnlNc2cuc3RlZXJpbmdBbmdsZSAmbHQ7PSA1ICkgPyB0cnVlOmZhbHNlOyYjeEQ7Cis8L2JvZHk+CisgICAgICAgICAgPC9vd25lZEJlaGF2aW9yPgorICAgICAgICAgIDxvd25lZEJlaGF2aW9yIHhtaTp0eXBlPSJ1bWw6T3BhcXVlQmVoYXZpb3IiIHhtaTppZD0iX0lnSk9nQkZ4RWVPbDFJcmdWTVV4T0EiIG5hbWU9InNob3dMZWZ0Q2FtZXJhIi8+CisgICAgICAgICAgPG93bmVkQmVoYXZpb3IgeG1pOnR5cGU9InVtbDpPcGFxdWVCZWhhdmlvciIgeG1pOmlkPSJfWm1TUUVCRnhFZU9sMUlyZ1ZNVXhPQSIgbmFtZT0ic2hvd1JpZ2h0Q2FtZXJhIi8+CisgICAgICAgICAgPG93bmVkQmVoYXZpb3IgeG1pOnR5cGU9InVtbDpPcGFxdWVCZWhhdmlvciIgeG1pOmlkPSJfZUJ3VjBCRnhFZU9sMUlyZ1ZNVXhPQSIgbmFtZT0ic2hvd01pZGRsZUNhbWVyYSIvPgorICAgICAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfTEoyNXNFSzZFZUd2LTU0V200bVJXUSIgbmFtZT0iU2hvd0xlZnRDYW1lcmEiPgorICAgICAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTp0eXBlPSJ1bWw6UGFyYW1ldGVyIiB4bWk6aWQ9Il9xWFFpSUVMQUVlR0Z4NGlWRXdvMGtBIiBuYW1lPSJmcmFtZSI+CisgICAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19tSkRhOEFLdUVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICAgIDwvb3duZWRPcGVyYXRpb24+CisgICAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiB4bWk6aWQ9Il9jbzlOMEVLNkVlR3YtNTRXbTRtUldRIiBuYW1lPSJTaG93UmlnaHRDYW1lcmEiPgorICAgICAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTp0eXBlPSJ1bWw6UGFyYW1ldGVyIiB4bWk6aWQ9Il9nOGVDc0VMQUVlR0Z4NGlWRXdvMGtBIiBuYW1lPSJmcmFtZSI+CisgICAgICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19tSkRhOEFLdUVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICAgIDwvb3duZWRPcGVyYXRpb24+CisgICAgICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiB4bWk6aWQ9Il9seEN6c0VLNkVlR3YtNTRXbTRtUldRIiBuYW1lPSJTaG93TWlkZGxlQ2FtZXJhIj4KKyAgICAgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfZHlidm9FTEFFZUdGeDRpVkV3bzBrQSIgbmFtZT0iZnJhbWUiPgorICAgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfbUpEYThBS3VFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgPC9vd25lZFBhcmFtZXRlcj4KKyAgICAgICAgICA8L293bmVkT3BlcmF0aW9uPgorICAgICAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfc0QtS1VFSzZFZUd2LTU0V200bVJXUSIgbmFtZT0iTGVmdFN0ZWVyaW5nIiBtZXRob2Q9Il82cUpKZ0VLNkVlR3YtNTRXbTRtUldRIj4KKyAgICAgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfMWtJUjhFSzZFZUd2LTU0V200bVJXUSIgbmFtZT0ib2RvbWV0cnlNc2ciIHR5cGU9Il9yeWU1WUI4bUVlRzRnUENFem5WTk9BIi8+CisgICAgICAgICAgPC9vd25lZE9wZXJhdGlvbj4KKyAgICAgICAgICA8b3duZWRPcGVyYXRpb24geG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIHhtaTppZD0iX3JuZk5NRUs3RWVHdi01NFdtNG1SV1EiIG5hbWU9IlJpZ2h0U3RlZXJpbmciIG1ldGhvZD0iX01KOG9RRUs3RWVHdi01NFdtNG1SV1EiPgorICAgICAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTp0eXBlPSJ1bWw6UGFyYW1ldGVyIiB4bWk6aWQ9Il95QjFhY0VLN0VlR3YtNTRXbTRtUldRIiBuYW1lPSJvZG9tZXRyeU1zZyIgdHlwZT0iX3J5ZTVZQjhtRWVHNGdQQ0V6blZOT0EiLz4KKyAgICAgICAgICA8L293bmVkT3BlcmF0aW9uPgorICAgICAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfenNtVElFSzdFZUd2LTU0V200bVJXUSIgbmFtZT0iRnJvbnRTdGVlcmluZyIgbWV0aG9kPSJfTS01VFFFSzdFZUd2LTU0V200bVJXUSI+CisgICAgICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOnR5cGU9InVtbDpQYXJhbWV0ZXIiIHhtaTppZD0iXzdtRXcwRUs3RWVHdi01NFdtNG1SV1EiIG5hbWU9Im9kb21ldHJ5TXNnIiB0eXBlPSJfcnllNVlCOG1FZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICAgIDwvb3duZWRPcGVyYXRpb24+CisgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX2lybVhzRUgwRWVHd0dfSktGaHloeHciIG5hbWU9IkV4dGVybmFsQWxnb3JpdGhtVGVzdE1vZHVsZSI+CisgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfbUp6ajhFSDBFZUd3R19KS0ZoeWh4dyIgbmFtZT0iaW5GcmFtZSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19tSkRhOEFLdUVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8b3duZWRPcGVyYXRpb24geG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIHhtaTppZD0iX2dEV2UwRUtfRWVHRng0aVZFd28wa0EiIG5hbWU9Im9wZW5jdl9pbXNob3ciIHZpc2liaWxpdHk9InB1YmxpYyIvPgorICAgICAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfNGdFWkFFTkdFZUdhQXNScGVnRWdQZyIgbmFtZT0ib3BlbmN2X2ltcmVhZCIvPgorICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il8tOW10MEtFTkVlS0xVcVg5SUpxMkdnIiBuYW1lPSJFbnZpcm9ubWVudCI+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9LOWxHMEtFT0VlS0xVcVg5SUpxMkdnIiBuYW1lPSJyb2JvQ2FiIiB0eXBlPSJfZmR6STBxa19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIHhtaTppZD0iX2s1R09rR2JXRWVHR051WDFJSGcxemciIG5hbWU9IkRlcGxveW1lbnRQbGFucyI+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgeG1pOmlkPSJfazZsY1VHYldFZUdHTnVYMUlIZzF6ZyIgbmFtZT0iUm9ib0NhYkRlcFBsYW4iPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9rN0w1UUdiV0VlR0dOdVgxSUhnMXpnIiBuYW1lPSJtYWluSW5zdGFuY2UiIGNsYXNzaWZpZXI9Il9mZHpJMHFrX0VlQ1hxY1JWLTE4ZjZRIj4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX2s4WU1FR2JXRWVHR051WDFJSGcxemciIGRlZmluaW5nRmVhdHVyZT0iX2ZkekkxNmtfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfazhoOUVHYldFZUdHTnVYMUlIZzF6ZyIgaW5zdGFuY2U9Il9rOE9iRUdiV0VlR0dOdVgxSUhnMXpnIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfazgwNEFHYldFZUdHTnVYMUlIZzF6ZyIgZGVmaW5pbmdGZWF0dXJlPSJfQkUtZWdLbG1FZUNMa3U0UkZySTd1dyI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9rODA0QVdiV0VlR0dOdVgxSUhnMXpnIiBpbnN0YW5jZT0iX2s4ckhBR2JXRWVHR051WDFJSGcxemciLz4KKyAgICAgICAgICA8L3Nsb3Q+CisgICAgICAgICAgPHNsb3QgeG1pOnR5cGU9InVtbDpTbG90IiB4bWk6aWQ9Il9rLVVGd0diV0VlR0dOdVgxSUhnMXpnIiBkZWZpbmluZ0ZlYXR1cmU9Il9ic0REd0tsbUVlQ0xrdTRSRnJJN3V3Ij4KKyAgICAgICAgICAgIDx2YWx1ZSB4bWk6dHlwZT0idW1sOkluc3RhbmNlVmFsdWUiIHhtaTppZD0iX2stVUZ3V2JXRWVHR051WDFJSGcxemciIGluc3RhbmNlPSJfazgtQjhHYldFZUdHTnVYMUlIZzF6ZyIvPgorICAgICAgICAgIDwvc2xvdD4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX2xBWndjR2JXRWVHR051WDFJSGcxemciIGRlZmluaW5nRmVhdHVyZT0iX2tiYmowQnduRWVHYTViSF9SSkZ6QlEiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfbEFad2NXYldFZUdHTnVYMUlIZzF6ZyIgaW5zdGFuY2U9Il9rLVVGd21iV0VlR0dOdVgxSUhnMXpnIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfbEJjU1FHYldFZUdHTnVYMUlIZzF6ZyIgZGVmaW5pbmdGZWF0dXJlPSJfN1BXaDhCOGtFZUc0Z1BDRXpuVk5PQSI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9sQm1EUUdiV0VlR0dOdVgxSUhnMXpnIiBpbnN0YW5jZT0iX2xBWndjbWJXRWVHR051WDFJSGcxemciLz4KKyAgICAgICAgICA8L3Nsb3Q+CisgICAgICAgICAgPHNsb3QgeG1pOnR5cGU9InVtbDpTbG90IiB4bWk6aWQ9Il9sQnZOTUdiV0VlR0dOdVgxSUhnMXpnIiBkZWZpbmluZ0ZlYXR1cmU9Il9OSmRYRUI4bEVlRzRnUENFem5WTk9BIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4bWk6dHlwZT0idW1sOkluc3RhbmNlVmFsdWUiIHhtaTppZD0iX2xCNC1NR2JXRWVHR051WDFJSGcxemciIGluc3RhbmNlPSJfbEJtRFFXYldFZUdHTnVYMUlIZzF6ZyIvPgorICAgICAgICAgIDwvc2xvdD4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX2xDQ3ZNR2JXRWVHR051WDFJSGcxemciIGRlZmluaW5nRmVhdHVyZT0iX09FTnZJQjhsRWVHNGdQQ0V6blZOT0EiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfbENDdk1XYldFZUdHTnVYMUlIZzF6ZyIgaW5zdGFuY2U9Il9sQjQtTVdiV0VlR0dOdVgxSUhnMXpnIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfbENMNUlXYldFZUdHTnVYMUlIZzF6ZyIgZGVmaW5pbmdGZWF0dXJlPSJfOTRjT29COGxFZUc0Z1BDRXpuVk5PQSI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9sQ0w1SW1iV0VlR0dOdVgxSUhnMXpnIiBpbnN0YW5jZT0iX2xDTDVJR2JXRWVHR051WDFJSGcxemciLz4KKyAgICAgICAgICA8L3Nsb3Q+CisgICAgICAgICAgPHNsb3QgeG1pOnR5cGU9InVtbDpTbG90IiB4bWk6aWQ9Il9sQ1ZxSVdiV0VlR0dOdVgxSUhnMXpnIiBkZWZpbmluZ0ZlYXR1cmU9Il9LZER4Z0I5QkVlR2V0T0xma0xOd2ZnIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4bWk6dHlwZT0idW1sOkluc3RhbmNlVmFsdWUiIHhtaTppZD0iX2xDZmJJR2JXRWVHR051WDFJSGcxemciIGluc3RhbmNlPSJfbENWcUlHYldFZUdHTnVYMUlIZzF6ZyIvPgorICAgICAgICAgIDwvc2xvdD4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX2xDZmJJbWJXRWVHR051WDFJSGcxemciIGRlZmluaW5nRmVhdHVyZT0iX1lMVERJQjlCRWVHZXRPTGZrTE53ZmciPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfbENvbEVHYldFZUdHTnVYMUlIZzF6ZyIgaW5zdGFuY2U9Il9sQ2ZiSVdiV0VlR0dOdVgxSUhnMXpnIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfbEN5V0VHYldFZUdHTnVYMUlIZzF6ZyIgZGVmaW5pbmdGZWF0dXJlPSJfQTY4UUlCOURFZUdldE9MZmtMTndmZyI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9sQ3lXRVdiV0VlR0dOdVgxSUhnMXpnIiBpbnN0YW5jZT0iX2xDb2xFV2JXRWVHR051WDFJSGcxemciLz4KKyAgICAgICAgICA8L3Nsb3Q+CisgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9rOE9iRUdiV0VlR0dOdVgxSUhnMXpnIiBuYW1lPSJtYWluSW5zdGFuY2UubGFuZGlzIiBjbGFzc2lmaWVyPSJfZmR6Slo2a19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9rOHJIQUdiV0VlR0dOdVgxSUhnMXpnIiBuYW1lPSJtYWluSW5zdGFuY2UubWlzc2lvbkdlbmVyYXRvciIgY2xhc3NpZmllcj0iX2FHNVNrS2xnRWVDWWZibnhWU3laOWciLz4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkluc3RhbmNlU3BlY2lmaWNhdGlvbiIgeG1pOmlkPSJfazgtQjhHYldFZUdHTnVYMUlIZzF6ZyIgbmFtZT0ibWFpbkluc3RhbmNlLm9yZ2FuaXplU3BhY2UiIGNsYXNzaWZpZXI9Il9mZHpKeUtrX0VlQ1hxY1JWLTE4ZjZRIj4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX2s5Umo4R2JXRWVHR051WDFJSGcxemciIGRlZmluaW5nRmVhdHVyZT0iX2Zkekp6YWtfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfazlhdDRHYldFZUdHTnVYMUlIZzF6ZyIgaW5zdGFuY2U9Il9rOUh5OEdiV0VlR0dOdVgxSUhnMXpnIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfazl1UDRHYldFZUdHTnVYMUlIZzF6ZyIgZGVmaW5pbmdGZWF0dXJlPSJfR2RlX2tCOHJFZUc0Z1BDRXpuVk5PQSI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9rOXVQNFdiV0VlR0dOdVgxSUhnMXpnIiBpbnN0YW5jZT0iX2s5a2U0R2JXRWVHR051WDFJSGcxemciLz4KKyAgICAgICAgICA8L3Nsb3Q+CisgICAgICAgICAgPHNsb3QgeG1pOnR5cGU9InVtbDpTbG90IiB4bWk6aWQ9Il9rLUJLMEdiV0VlR0dOdVgxSUhnMXpnIiBkZWZpbmluZ0ZlYXR1cmU9Il9xS3JtWUI4c0VlRzRnUENFem5WTk9BIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4bWk6dHlwZT0idW1sOkluc3RhbmNlVmFsdWUiIHhtaTppZD0iX2stS1V3R2JXRWVHR051WDFJSGcxemciIGluc3RhbmNlPSJfazkzWjBHYldFZUdHTnVYMUlIZzF6ZyIvPgorICAgICAgICAgIDwvc2xvdD4KKyAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVNwZWNpZmljYXRpb24iIHhtaTppZD0iX2s5SHk4R2JXRWVHR051WDFJSGcxemciIG5hbWU9Im1haW5JbnN0YW5jZS5vcmdhbml6ZVNwYWNlLm5hdmlnYXRpb25TYWZldHkiIGNsYXNzaWZpZXI9Il9mZHpLb0trX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVNwZWNpZmljYXRpb24iIHhtaTppZD0iX2s5a2U0R2JXRWVHR051WDFJSGcxemciIG5hbWU9Im1haW5JbnN0YW5jZS5vcmdhbml6ZVNwYWNlLmNvbnRyb2xsZXIiIGNsYXNzaWZpZXI9Il9LcUE4VUI4cEVlRzRnUENFem5WTk9BIi8+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVNwZWNpZmljYXRpb24iIHhtaTppZD0iX2s5M1owR2JXRWVHR051WDFJSGcxemciIG5hbWU9Im1haW5JbnN0YW5jZS5vcmdhbml6ZVNwYWNlLmNoYWxsZW5nZXJFdmFsdWF0aW9uIiBjbGFzc2lmaWVyPSJfa2RsV0lCOHJFZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9rLVVGd21iV0VlR0dOdVgxSUhnMXpnIiBuYW1lPSJtYWluSW5zdGFuY2UuY2hhbGxlbmdlclNwYWNlIiBjbGFzc2lmaWVyPSJfZmR6TEhha19FZUNYcWNSVi0xOGY2USI+CisgICAgICAgICAgPHNsb3QgeG1pOnR5cGU9InVtbDpTbG90IiB4bWk6aWQ9Il9rLW5Bc0diV0VlR0dOdVgxSUhnMXpnIiBkZWZpbmluZ0ZlYXR1cmU9Il9mZHpMSXFrX0VlQ1hxY1JWLTE4ZjZRIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4bWk6dHlwZT0idW1sOkluc3RhbmNlVmFsdWUiIHhtaTppZD0iX2std3hzR2JXRWVHR051WDFJSGcxemciIGluc3RhbmNlPSJfay1kMndHYldFZUdHTnVYMUlIZzF6ZyIvPgorICAgICAgICAgIDwvc2xvdD4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX2std3hzbWJXRWVHR051WDFJSGcxemciIGRlZmluaW5nRmVhdHVyZT0iX2ZkekxKNmtfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfay02aXNHYldFZUdHTnVYMUlIZzF6ZyIgaW5zdGFuY2U9Il9rLXd4c1diV0VlR0dOdVgxSUhnMXpnIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfa19Ec29HYldFZUdHTnVYMUlIZzF6ZyIgZGVmaW5pbmdGZWF0dXJlPSJfZmR6TFFxa19FZUNYcWNSVi0xOGY2USI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9rX0Rzb1diV0VlR0dOdVgxSUhnMXpnIiBpbnN0YW5jZT0iX2stNmlzV2JXRWVHR051WDFJSGcxemciLz4KKyAgICAgICAgICA8L3Nsb3Q+CisgICAgICAgICAgPHNsb3QgeG1pOnR5cGU9InVtbDpTbG90IiB4bWk6aWQ9Il9rX3pUZ0diV0VlR0dOdVgxSUhnMXpnIiBkZWZpbmluZ0ZlYXR1cmU9Il9mZHpMUnFrX0VlQ1hxY1JWLTE4ZjZRIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4bWk6dHlwZT0idW1sOkluc3RhbmNlVmFsdWUiIHhtaTppZD0iX2tfOUVnR2JXRWVHR051WDFJSGcxemciIGluc3RhbmNlPSJfa19xSmtHYldFZUdHTnVYMUlIZzF6ZyIvPgorICAgICAgICAgIDwvc2xvdD4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX2xBRzFnR2JXRWVHR051WDFJSGcxemciIGRlZmluaW5nRmVhdHVyZT0iX2ZkekxTcWtfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfbEFQX2NHYldFZUdHTnVYMUlIZzF6ZyIgaW5zdGFuY2U9Il9rXzlFZ1diV0VlR0dOdVgxSUhnMXpnIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkluc3RhbmNlU3BlY2lmaWNhdGlvbiIgeG1pOmlkPSJfay1kMndHYldFZUdHTnVYMUlIZzF6ZyIgbmFtZT0ibWFpbkluc3RhbmNlLmNoYWxsZW5nZXJTcGFjZS5tYXBwaW5nU3lzdGVtIiBjbGFzc2lmaWVyPSJfMDdBY0FCd2tFZUdhNWJIX1JKRnpCUSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9rLXd4c1diV0VlR0dOdVgxSUhnMXpnIiBuYW1lPSJtYWluSW5zdGFuY2UuY2hhbGxlbmdlclNwYWNlLm9EU3lzdGVtIiBjbGFzc2lmaWVyPSJfTWFWVWtCd2lFZUdhNWJIX1JKRnpCUSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9rLTZpc1diV0VlR0dOdVgxSUhnMXpnIiBuYW1lPSJtYWluSW5zdGFuY2UuY2hhbGxlbmdlclNwYWNlLnBhdGhQbGFubmVyIiBjbGFzc2lmaWVyPSJfZmR6S0lxa19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9rX3FKa0diV0VlR0dOdVgxSUhnMXpnIiBuYW1lPSJtYWluSW5zdGFuY2UuY2hhbGxlbmdlclNwYWNlLmNvbnRyb2wiIGNsYXNzaWZpZXI9Il9mZHpLVktrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVNwZWNpZmljYXRpb24iIHhtaTppZD0iX2tfOUVnV2JXRWVHR051WDFJSGcxemciIG5hbWU9Im1haW5JbnN0YW5jZS5jaGFsbGVuZ2VyU3BhY2UubG9jYWxpc2F0aW9uIiBjbGFzc2lmaWVyPSJfZmR6SzVLa19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9sQVp3Y21iV0VlR0dOdVgxSUhnMXpnIiBuYW1lPSJtYWluSW5zdGFuY2Uuc3RlcmVvUGFpciIgY2xhc3NpZmllcj0iX2ZkekpnYWtfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfbEFzcllHYldFZUdHTnVYMUlIZzF6ZyIgZGVmaW5pbmdGZWF0dXJlPSJfWkJ2b0lEVW9FZUc1cExfZnBOMkRnUSI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9sQTJjWUdiV0VlR0dOdVgxSUhnMXpnIiBpbnN0YW5jZT0iX2xBaTZZR2JXRWVHR051WDFJSGcxemciLz4KKyAgICAgICAgICA8L3Nsb3Q+CisgICAgICAgICAgPHNsb3QgeG1pOnR5cGU9InVtbDpTbG90IiB4bWk6aWQ9Il9sQkpYVVdiV0VlR0dOdVgxSUhnMXpnIiBkZWZpbmluZ0ZlYXR1cmU9Il9ab18xWURVb0VlRzVwTF9mcE4yRGdRIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4bWk6dHlwZT0idW1sOkluc3RhbmNlVmFsdWUiIHhtaTppZD0iX2xCVElVR2JXRWVHR051WDFJSGcxemciIGluc3RhbmNlPSJfbEJKWFVHYldFZUdHTnVYMUlIZzF6ZyIvPgorICAgICAgICAgIDwvc2xvdD4KKyAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVNwZWNpZmljYXRpb24iIHhtaTppZD0iX2xBaTZZR2JXRWVHR051WDFJSGcxemciIG5hbWU9Im1haW5JbnN0YW5jZS5zdGVyZW9QYWlyLmxlZnRDYW0iIGNsYXNzaWZpZXI9Il9lZjVnc0tsQUVlQ1lhWWkwaHpxNWtnIi8+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVNwZWNpZmljYXRpb24iIHhtaTppZD0iX2xCSlhVR2JXRWVHR051WDFJSGcxemciIG5hbWU9Im1haW5JbnN0YW5jZS5zdGVyZW9QYWlyLnJpZ2h0Q2FtIiBjbGFzc2lmaWVyPSJfZWY1Z3NLbEFFZUNZYVlpMGh6cTVrZyIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9sQm1EUVdiV0VlR0dOdVgxSUhnMXpnIiBuYW1lPSJtYWluSW5zdGFuY2UuZnJvbnRDYW1lcmEiIGNsYXNzaWZpZXI9Il9lZjVnc0tsQUVlQ1lhWWkwaHpxNWtnIi8+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVNwZWNpZmljYXRpb24iIHhtaTppZD0iX2xCNC1NV2JXRWVHR051WDFJSGcxemciIG5hbWU9Im1haW5JbnN0YW5jZS5yZWFyQ2FtZXJhIiBjbGFzc2lmaWVyPSJfbEhxYm9EVXBFZUc1cExfZnBOMkRnUSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9sQ0w1SUdiV0VlR0dOdVgxSUhnMXpnIiBuYW1lPSJtYWluSW5zdGFuY2Uud2lkZUNhbSIgY2xhc3NpZmllcj0iX3lwaUZNRFVwRWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkluc3RhbmNlU3BlY2lmaWNhdGlvbiIgeG1pOmlkPSJfbENWcUlHYldFZUdHTnVYMUlIZzF6ZyIgbmFtZT0ibWFpbkluc3RhbmNlLnVibG94IiBjbGFzc2lmaWVyPSJfZmR6SmRLa19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9sQ2ZiSVdiV0VlR0dOdVgxSUhnMXpnIiBuYW1lPSJtYWluSW5zdGFuY2Uub2RvbWV0cnkiIGNsYXNzaWZpZXI9Il81cnJMNEI4b0VlRzRnUENFem5WTk9BIi8+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVNwZWNpZmljYXRpb24iIHhtaTppZD0iX2xDb2xFV2JXRWVHR051WDFJSGcxemciIG5hbWU9Im1haW5JbnN0YW5jZS5sbXMiIGNsYXNzaWZpZXI9Il9mZHpKV3FrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiB4bWk6aWQ9Il9ubFVqVUtFT0VlS0xVcVg5SUpxMkdnIiBuYW1lPSJFbnZpcm9ubWVudERlcFBsYW4iPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9ubG5lUUtFT0VlS0xVcVg5SUpxMkdnIiBuYW1lPSJtYWluSW5zdGFuY2UiIGNsYXNzaWZpZXI9Il8tOW10MEtFTkVlS0xVcVg5SUpxMkdnIj4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX25tWEZOS0VPRWVLTFVxWDlJSnEyR2ciIGRlZmluaW5nRmVhdHVyZT0iX0s5bEcwS0VPRWVLTFVxWDlJSnEyR2ciPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfbm1nMklLRU9FZUtMVXFYOUlKcTJHZyIgaW5zdGFuY2U9Il9ubDZaTUtFT0VlS0xVcVg5SUpxMkdnIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkluc3RhbmNlU3BlY2lmaWNhdGlvbiIgeG1pOmlkPSJfbmw2Wk1LRU9FZUtMVXFYOUlKcTJHZyIgbmFtZT0ibWFpbkluc3RhbmNlLnJvYm9DYWIiIGNsYXNzaWZpZXI9Il9mZHpJMHFrX0VlQ1hxY1JWLTE4ZjZRIj4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX25sNlpNcUVPRWVLTFVxWDlJSnEyR2ciIGRlZmluaW5nRmVhdHVyZT0iX2ZkekkxNmtfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfbmw2Wk02RU9FZUtMVXFYOUlKcTJHZyIgaW5zdGFuY2U9Il9ubDZaTWFFT0VlS0xVcVg5SUpxMkdnIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfbm1FS01hRU9FZUtMVXFYOUlKcTJHZyIgZGVmaW5pbmdGZWF0dXJlPSJfQkUtZWdLbG1FZUNMa3U0UkZySTd1dyI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9ubUVLTXFFT0VlS0xVcVg5SUpxMkdnIiBpbnN0YW5jZT0iX25tRUtNS0VPRWVLTFVxWDlJSnEyR2ciLz4KKyAgICAgICAgICA8L3Nsb3Q+CisgICAgICAgICAgPHNsb3QgeG1pOnR5cGU9InVtbDpTbG90IiB4bWk6aWQ9Il9ubUVLUGFFT0VlS0xVcVg5SUpxMkdnIiBkZWZpbmluZ0ZlYXR1cmU9Il9ic0REd0tsbUVlQ0xrdTRSRnJJN3V3Ij4KKyAgICAgICAgICAgIDx2YWx1ZSB4bWk6dHlwZT0idW1sOkluc3RhbmNlVmFsdWUiIHhtaTppZD0iX25tRUtQcUVPRWVLTFVxWDlJSnEyR2ciIGluc3RhbmNlPSJfbm1FS002RU9FZUtMVXFYOUlKcTJHZyIvPgorICAgICAgICAgIDwvc2xvdD4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX25tTjdPNkVPRWVLTFVxWDlJSnEyR2ciIGRlZmluaW5nRmVhdHVyZT0iX2tiYmowQnduRWVHYTViSF9SSkZ6QlEiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfbm1ON1BLRU9FZUtMVXFYOUlKcTJHZyIgaW5zdGFuY2U9Il9ubUVLUDZFT0VlS0xVcVg5SUpxMkdnIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfbm1YRklLRU9FZUtMVXFYOUlKcTJHZyIgZGVmaW5pbmdGZWF0dXJlPSJfN1BXaDhCOGtFZUc0Z1BDRXpuVk5PQSI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9ubVhGSWFFT0VlS0xVcVg5SUpxMkdnIiBpbnN0YW5jZT0iX25tTjdQYUVPRWVLTFVxWDlJSnEyR2ciLz4KKyAgICAgICAgICA8L3Nsb3Q+CisgICAgICAgICAgPHNsb3QgeG1pOnR5cGU9InVtbDpTbG90IiB4bWk6aWQ9Il9ubVhGSTZFT0VlS0xVcVg5SUpxMkdnIiBkZWZpbmluZ0ZlYXR1cmU9Il9OSmRYRUI4bEVlRzRnUENFem5WTk9BIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4bWk6dHlwZT0idW1sOkluc3RhbmNlVmFsdWUiIHhtaTppZD0iX25tWEZKS0VPRWVLTFVxWDlJSnEyR2ciIGluc3RhbmNlPSJfbm1YRklxRU9FZUtMVXFYOUlKcTJHZyIvPgorICAgICAgICAgIDwvc2xvdD4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX25tWEZKcUVPRWVLTFVxWDlJSnEyR2ciIGRlZmluaW5nRmVhdHVyZT0iX09FTnZJQjhsRWVHNGdQQ0V6blZOT0EiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfbm1YRko2RU9FZUtMVXFYOUlKcTJHZyIgaW5zdGFuY2U9Il9ubVhGSmFFT0VlS0xVcVg5SUpxMkdnIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfbm1YRkthRU9FZUtMVXFYOUlKcTJHZyIgZGVmaW5pbmdGZWF0dXJlPSJfOTRjT29COGxFZUc0Z1BDRXpuVk5PQSI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9ubVhGS3FFT0VlS0xVcVg5SUpxMkdnIiBpbnN0YW5jZT0iX25tWEZLS0VPRWVLTFVxWDlJSnEyR2ciLz4KKyAgICAgICAgICA8L3Nsb3Q+CisgICAgICAgICAgPHNsb3QgeG1pOnR5cGU9InVtbDpTbG90IiB4bWk6aWQ9Il9ubVhGTEtFT0VlS0xVcVg5SUpxMkdnIiBkZWZpbmluZ0ZlYXR1cmU9Il9LZER4Z0I5QkVlR2V0T0xma0xOd2ZnIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4bWk6dHlwZT0idW1sOkluc3RhbmNlVmFsdWUiIHhtaTppZD0iX25tWEZMYUVPRWVLTFVxWDlJSnEyR2ciIGluc3RhbmNlPSJfbm1YRks2RU9FZUtMVXFYOUlKcTJHZyIvPgorICAgICAgICAgIDwvc2xvdD4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX25tWEZMNkVPRWVLTFVxWDlJSnEyR2ciIGRlZmluaW5nRmVhdHVyZT0iX1lMVERJQjlCRWVHZXRPTGZrTE53ZmciPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfbm1YRk1LRU9FZUtMVXFYOUlKcTJHZyIgaW5zdGFuY2U9Il9ubVhGTHFFT0VlS0xVcVg5SUpxMkdnIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfbm1YRk1xRU9FZUtMVXFYOUlKcTJHZyIgZGVmaW5pbmdGZWF0dXJlPSJfQTY4UUlCOURFZUdldE9MZmtMTndmZyI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9ubVhGTTZFT0VlS0xVcVg5SUpxMkdnIiBpbnN0YW5jZT0iX25tWEZNYUVPRWVLTFVxWDlJSnEyR2ciLz4KKyAgICAgICAgICA8L3Nsb3Q+CisgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9ubDZaTWFFT0VlS0xVcVg5SUpxMkdnIiBuYW1lPSJtYWluSW5zdGFuY2Uucm9ib0NhYi5sYW5kaXMiIGNsYXNzaWZpZXI9Il9mZHpKWjZrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVNwZWNpZmljYXRpb24iIHhtaTppZD0iX25tRUtNS0VPRWVLTFVxWDlJSnEyR2ciIG5hbWU9Im1haW5JbnN0YW5jZS5yb2JvQ2FiLm1pc3Npb25HZW5lcmF0b3IiIGNsYXNzaWZpZXI9Il9hRzVTa0tsZ0VlQ1lmYm54VlN5WjlnIi8+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVNwZWNpZmljYXRpb24iIHhtaTppZD0iX25tRUtNNkVPRWVLTFVxWDlJSnEyR2ciIG5hbWU9Im1haW5JbnN0YW5jZS5yb2JvQ2FiLm9yZ2FuaXplU3BhY2UiIGNsYXNzaWZpZXI9Il9mZHpKeUtrX0VlQ1hxY1JWLTE4ZjZRIj4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX25tRUtOYUVPRWVLTFVxWDlJSnEyR2ciIGRlZmluaW5nRmVhdHVyZT0iX2Zkekp6YWtfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfbm1FS05xRU9FZUtMVXFYOUlKcTJHZyIgaW5zdGFuY2U9Il9ubUVLTktFT0VlS0xVcVg5SUpxMkdnIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfbm1FS09LRU9FZUtMVXFYOUlKcTJHZyIgZGVmaW5pbmdGZWF0dXJlPSJfR2RlX2tCOHJFZUc0Z1BDRXpuVk5PQSI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9ubUVLT2FFT0VlS0xVcVg5SUpxMkdnIiBpbnN0YW5jZT0iX25tRUtONkVPRWVLTFVxWDlJSnEyR2ciLz4KKyAgICAgICAgICA8L3Nsb3Q+CisgICAgICAgICAgPHNsb3QgeG1pOnR5cGU9InVtbDpTbG90IiB4bWk6aWQ9Il9ubUVLTzZFT0VlS0xVcVg5SUpxMkdnIiBkZWZpbmluZ0ZlYXR1cmU9Il9xS3JtWUI4c0VlRzRnUENFem5WTk9BIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4bWk6dHlwZT0idW1sOkluc3RhbmNlVmFsdWUiIHhtaTppZD0iX25tRUtQS0VPRWVLTFVxWDlJSnEyR2ciIGluc3RhbmNlPSJfbm1FS09xRU9FZUtMVXFYOUlKcTJHZyIvPgorICAgICAgICAgIDwvc2xvdD4KKyAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVNwZWNpZmljYXRpb24iIHhtaTppZD0iX25tRUtOS0VPRWVLTFVxWDlJSnEyR2ciIG5hbWU9Im1haW5JbnN0YW5jZS5yb2JvQ2FiLm9yZ2FuaXplU3BhY2UubmF2aWdhdGlvblNhZmV0eSIgY2xhc3NpZmllcj0iX2ZkektvS2tfRWVDWHFjUlYtMThmNlEiLz4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkluc3RhbmNlU3BlY2lmaWNhdGlvbiIgeG1pOmlkPSJfbm1FS042RU9FZUtMVXFYOUlKcTJHZyIgbmFtZT0ibWFpbkluc3RhbmNlLnJvYm9DYWIub3JnYW5pemVTcGFjZS5jb250cm9sbGVyIiBjbGFzc2lmaWVyPSJfS3FBOFVCOHBFZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9ubUVLT3FFT0VlS0xVcVg5SUpxMkdnIiBuYW1lPSJtYWluSW5zdGFuY2Uucm9ib0NhYi5vcmdhbml6ZVNwYWNlLmNoYWxsZW5nZXJFdmFsdWF0aW9uIiBjbGFzc2lmaWVyPSJfa2RsV0lCOHJFZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9ubUVLUDZFT0VlS0xVcVg5SUpxMkdnIiBuYW1lPSJtYWluSW5zdGFuY2Uucm9ib0NhYi5jaGFsbGVuZ2VyU3BhY2UiIGNsYXNzaWZpZXI9Il9mZHpMSGFrX0VlQ1hxY1JWLTE4ZjZRIj4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX25tRUtRYUVPRWVLTFVxWDlJSnEyR2ciIGRlZmluaW5nRmVhdHVyZT0iX2ZkekxJcWtfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfbm1FS1FxRU9FZUtMVXFYOUlKcTJHZyIgaW5zdGFuY2U9Il9ubUVLUUtFT0VlS0xVcVg5SUpxMkdnIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfbm1ON01LRU9FZUtMVXFYOUlKcTJHZyIgZGVmaW5pbmdGZWF0dXJlPSJfZmR6TEo2a19FZUNYcWNSVi0xOGY2USI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9ubU43TWFFT0VlS0xVcVg5SUpxMkdnIiBpbnN0YW5jZT0iX25tRUtRNkVPRWVLTFVxWDlJSnEyR2ciLz4KKyAgICAgICAgICA8L3Nsb3Q+CisgICAgICAgICAgPHNsb3QgeG1pOnR5cGU9InVtbDpTbG90IiB4bWk6aWQ9Il9ubU43TTZFT0VlS0xVcVg5SUpxMkdnIiBkZWZpbmluZ0ZlYXR1cmU9Il9mZHpMUXFrX0VlQ1hxY1JWLTE4ZjZRIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4bWk6dHlwZT0idW1sOkluc3RhbmNlVmFsdWUiIHhtaTppZD0iX25tTjdOS0VPRWVLTFVxWDlJSnEyR2ciIGluc3RhbmNlPSJfbm1ON01xRU9FZUtMVXFYOUlKcTJHZyIvPgorICAgICAgICAgIDwvc2xvdD4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX25tTjdOcUVPRWVLTFVxWDlJSnEyR2ciIGRlZmluaW5nRmVhdHVyZT0iX2ZkekxScWtfRWVDWHFjUlYtMThmNlEiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfbm1ON042RU9FZUtMVXFYOUlKcTJHZyIgaW5zdGFuY2U9Il9ubU43TmFFT0VlS0xVcVg5SUpxMkdnIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfbm1ON09hRU9FZUtMVXFYOUlKcTJHZyIgZGVmaW5pbmdGZWF0dXJlPSJfZmR6TFNxa19FZUNYcWNSVi0xOGY2USI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9ubU43T3FFT0VlS0xVcVg5SUpxMkdnIiBpbnN0YW5jZT0iX25tTjdPS0VPRWVLTFVxWDlJSnEyR2ciLz4KKyAgICAgICAgICA8L3Nsb3Q+CisgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9ubUVLUUtFT0VlS0xVcVg5SUpxMkdnIiBuYW1lPSJtYWluSW5zdGFuY2Uucm9ib0NhYi5jaGFsbGVuZ2VyU3BhY2UubWFwcGluZ1N5c3RlbSIgY2xhc3NpZmllcj0iXzA3QWNBQndrRWVHYTViSF9SSkZ6QlEiLz4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkluc3RhbmNlU3BlY2lmaWNhdGlvbiIgeG1pOmlkPSJfbm1FS1E2RU9FZUtMVXFYOUlKcTJHZyIgbmFtZT0ibWFpbkluc3RhbmNlLnJvYm9DYWIuY2hhbGxlbmdlclNwYWNlLm9EU3lzdGVtIiBjbGFzc2lmaWVyPSJfTWFWVWtCd2lFZUdhNWJIX1JKRnpCUSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9ubU43TXFFT0VlS0xVcVg5SUpxMkdnIiBuYW1lPSJtYWluSW5zdGFuY2Uucm9ib0NhYi5jaGFsbGVuZ2VyU3BhY2UucGF0aFBsYW5uZXIiIGNsYXNzaWZpZXI9Il9mZHpLSXFrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVNwZWNpZmljYXRpb24iIHhtaTppZD0iX25tTjdOYUVPRWVLTFVxWDlJSnEyR2ciIG5hbWU9Im1haW5JbnN0YW5jZS5yb2JvQ2FiLmNoYWxsZW5nZXJTcGFjZS5jb250cm9sIiBjbGFzc2lmaWVyPSJfZmR6S1ZLa19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9ubU43T0tFT0VlS0xVcVg5SUpxMkdnIiBuYW1lPSJtYWluSW5zdGFuY2Uucm9ib0NhYi5jaGFsbGVuZ2VyU3BhY2UubG9jYWxpc2F0aW9uIiBjbGFzc2lmaWVyPSJfZmR6SzVLa19FZUNYcWNSVi0xOGY2USIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9ubU43UGFFT0VlS0xVcVg5SUpxMkdnIiBuYW1lPSJtYWluSW5zdGFuY2Uucm9ib0NhYi5zdGVyZW9QYWlyIiBjbGFzc2lmaWVyPSJfZmR6Smdha19FZUNYcWNSVi0xOGY2USI+CisgICAgICAgICAgPHNsb3QgeG1pOnR5cGU9InVtbDpTbG90IiB4bWk6aWQ9Il9ubU43UDZFT0VlS0xVcVg5SUpxMkdnIiBkZWZpbmluZ0ZlYXR1cmU9Il9aQnZvSURVb0VlRzVwTF9mcE4yRGdRIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4bWk6dHlwZT0idW1sOkluc3RhbmNlVmFsdWUiIHhtaTppZD0iX25tTjdRS0VPRWVLTFVxWDlJSnEyR2ciIGluc3RhbmNlPSJfbm1ON1BxRU9FZUtMVXFYOUlKcTJHZyIvPgorICAgICAgICAgIDwvc2xvdD4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX25tTjdRcUVPRWVLTFVxWDlJSnEyR2ciIGRlZmluaW5nRmVhdHVyZT0iX1pvXzFZRFVvRWVHNXBMX2ZwTjJEZ1EiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfbm1ON1E2RU9FZUtMVXFYOUlKcTJHZyIgaW5zdGFuY2U9Il9ubU43UWFFT0VlS0xVcVg5SUpxMkdnIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkluc3RhbmNlU3BlY2lmaWNhdGlvbiIgeG1pOmlkPSJfbm1ON1BxRU9FZUtMVXFYOUlKcTJHZyIgbmFtZT0ibWFpbkluc3RhbmNlLnJvYm9DYWIuc3RlcmVvUGFpci5sZWZ0Q2FtIiBjbGFzc2lmaWVyPSJfZWY1Z3NLbEFFZUNZYVlpMGh6cTVrZyIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9ubU43UWFFT0VlS0xVcVg5SUpxMkdnIiBuYW1lPSJtYWluSW5zdGFuY2Uucm9ib0NhYi5zdGVyZW9QYWlyLnJpZ2h0Q2FtIiBjbGFzc2lmaWVyPSJfZWY1Z3NLbEFFZUNZYVlpMGh6cTVrZyIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9ubVhGSXFFT0VlS0xVcVg5SUpxMkdnIiBuYW1lPSJtYWluSW5zdGFuY2Uucm9ib0NhYi5mcm9udENhbWVyYSIgY2xhc3NpZmllcj0iX2VmNWdzS2xBRWVDWWFZaTBoenE1a2ciLz4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkluc3RhbmNlU3BlY2lmaWNhdGlvbiIgeG1pOmlkPSJfbm1YRkphRU9FZUtMVXFYOUlKcTJHZyIgbmFtZT0ibWFpbkluc3RhbmNlLnJvYm9DYWIucmVhckNhbWVyYSIgY2xhc3NpZmllcj0iX2xIcWJvRFVwRWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkluc3RhbmNlU3BlY2lmaWNhdGlvbiIgeG1pOmlkPSJfbm1YRktLRU9FZUtMVXFYOUlKcTJHZyIgbmFtZT0ibWFpbkluc3RhbmNlLnJvYm9DYWIud2lkZUNhbSIgY2xhc3NpZmllcj0iX3lwaUZNRFVwRWVHNXBMX2ZwTjJEZ1EiLz4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkluc3RhbmNlU3BlY2lmaWNhdGlvbiIgeG1pOmlkPSJfbm1YRks2RU9FZUtMVXFYOUlKcTJHZyIgbmFtZT0ibWFpbkluc3RhbmNlLnJvYm9DYWIudWJsb3giIGNsYXNzaWZpZXI9Il9mZHpKZEtrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVNwZWNpZmljYXRpb24iIHhtaTppZD0iX25tWEZMcUVPRWVLTFVxWDlJSnEyR2ciIG5hbWU9Im1haW5JbnN0YW5jZS5yb2JvQ2FiLm9kb21ldHJ5IiBjbGFzc2lmaWVyPSJfNXJyTDRCOG9FZUc0Z1BDRXpuVk5PQSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9ubVhGTWFFT0VlS0xVcVg5SUpxMkdnIiBuYW1lPSJtYWluSW5zdGFuY2Uucm9ib0NhYi5sbXMiIGNsYXNzaWZpZXI9Il9mZHpKV3FrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpBYnN0cmFjdGlvbiIgeG1pOmlkPSJfcmE0Zm9LRU9FZUtMVXFYOUlKcTJHZyIgbmFtZT0iYWxsb2NhdGUgdG8gcGxhdGZvcm0iIGNsaWVudD0iX25sNlpNS0VPRWVLTFVxWDlJSnEyR2ciIHN1cHBsaWVyPSJfLVBoSGNHYmFFZUdUVl83MzVwelVYUSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6QWJzdHJhY3Rpb24iIHhtaTppZD0iX3RkSGRJS0VPRWVLTFVxWDlJSnEyR2ciIG5hbWU9ImFsbG9jYXRlIHRvIHBsYXRmb3JtLmN5Y2FiVEsiIGNsaWVudD0iX25sNlpNYUVPRWVLTFVxWDlJSnEyR2ciIHN1cHBsaWVyPSJfdlphMTRHYmFFZUdUVl83MzVwelVYUSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6QWJzdHJhY3Rpb24iIHhtaTppZD0iX3QxR2ZVS0VPRWVLTFVxWDlJSnEyR2ciIG5hbWU9ImFsbG9jYXRlIHRvIHBsYXRmb3JtLnJ0bWFwcyIgY2xpZW50PSJfbm1FS01LRU9FZUtMVXFYOUlKcTJHZyIgc3VwcGxpZXI9Il92WmpfMEdiYUVlR1RWXzczNXB6VVhRIi8+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpBYnN0cmFjdGlvbiIgeG1pOmlkPSJfdVVQNWNLRU9FZUtMVXFYOUlKcTJHZyIgbmFtZT0iYWxsb2NhdGUgdG8gcGxhdGZvcm0ucnRtYXBzIiBjbGllbnQ9Il9ubUVLTTZFT0VlS0xVcVg5SUpxMkdnIiBzdXBwbGllcj0iX3Zaal8wR2JhRWVHVFZfNzM1cHpVWFEiLz4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkFic3RyYWN0aW9uIiB4bWk6aWQ9Il91cVRCOEtFT0VlS0xVcVg5SUpxMkdnIiBuYW1lPSJhbGxvY2F0ZSB0byBwbGF0Zm9ybS5ydG1hcHMiIGNsaWVudD0iX25tRUtQNkVPRWVLTFVxWDlJSnEyR2ciIHN1cHBsaWVyPSJfdlpqXzBHYmFFZUdUVl83MzVwelVYUSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6QWJzdHJhY3Rpb24iIHhtaTppZD0iX3ZNdVprS0VPRWVLTFVxWDlJSnEyR2ciIG5hbWU9ImFsbG9jYXRlIHRvIHBsYXRmb3JtLmN5Y2FiVEsiIGNsaWVudD0iX25tTjdQYUVPRWVLTFVxWDlJSnEyR2ciIHN1cHBsaWVyPSJfdlphMTRHYmFFZUdUVl83MzVwelVYUSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6QWJzdHJhY3Rpb24iIHhtaTppZD0iX3Z2U1VFS0VPRWVLTFVxWDlJSnEyR2ciIG5hbWU9ImFsbG9jYXRlIHRvIHBsYXRmb3JtLmN5Y2FiVEsiIGNsaWVudD0iX25tWEZJcUVPRWVLTFVxWDlJSnEyR2ciIHN1cHBsaWVyPSJfdlphMTRHYmFFZUdUVl83MzVwelVYUSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6QWJzdHJhY3Rpb24iIHhtaTppZD0iX3dEX18wS0VPRWVLTFVxWDlJSnEyR2ciIG5hbWU9ImFsbG9jYXRlIHRvIHBsYXRmb3JtLmN5Y2FiVEsiIGNsaWVudD0iX25tWEZKYUVPRWVLTFVxWDlJSnEyR2ciIHN1cHBsaWVyPSJfdlphMTRHYmFFZUdUVl83MzVwelVYUSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6QWJzdHJhY3Rpb24iIHhtaTppZD0iX3dnbkRVS0VPRWVLTFVxWDlJSnEyR2ciIG5hbWU9ImFsbG9jYXRlIHRvIHBsYXRmb3JtLmN5Y2FiVEsiIGNsaWVudD0iX25tWEZLS0VPRWVLTFVxWDlJSnEyR2ciIHN1cHBsaWVyPSJfdlphMTRHYmFFZUdUVl83MzVwelVYUSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6QWJzdHJhY3Rpb24iIHhtaTppZD0iX3cyT0c4S0VPRWVLTFVxWDlJSnEyR2ciIG5hbWU9ImFsbG9jYXRlIHRvIHBsYXRmb3JtLmN5Y2FiVEsiIGNsaWVudD0iX25tWEZLNkVPRWVLTFVxWDlJSnEyR2ciIHN1cHBsaWVyPSJfdlphMTRHYmFFZUdUVl83MzVwelVYUSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6QWJzdHJhY3Rpb24iIHhtaTppZD0iX3hOQTJVS0VPRWVLTFVxWDlJSnEyR2ciIG5hbWU9ImFsbG9jYXRlIHRvIHBsYXRmb3JtLmN5Y2FiVEsiIGNsaWVudD0iX25tWEZMcUVPRWVLTFVxWDlJSnEyR2ciIHN1cHBsaWVyPSJfdlphMTRHYmFFZUdUVl83MzVwelVYUSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6QWJzdHJhY3Rpb24iIHhtaTppZD0iX3hmeW9ZS0VPRWVLTFVxWDlJSnEyR2ciIG5hbWU9ImFsbG9jYXRlIHRvIHBsYXRmb3JtLmN5Y2FiVEsiIGNsaWVudD0iX25tWEZNYUVPRWVLTFVxWDlJSnEyR2ciIHN1cHBsaWVyPSJfdlphMTRHYmFFZUdUVl83MzVwelVYUSIvPgorICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIHhtaTppZD0iX3RSMWJJR2JXRWVHR051WDFJSGcxemciIG5hbWU9IlBsYXRmb3JtTW9kZWwiPgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il92OENpSUdiWEVlR2p4YzhjN1pCa1BRIiBuYW1lPSJQbGF0Zm9ybSI+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9FbF9Xd0diYUVlR1RWXzczNXB6VVhRIiBuYW1lPSJjeWNhYlRLIiB0eXBlPSJfT2ozeG9HYlpFZUdUVl83MzVwelVYUSIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfTWFYU0FHYmFFZUdUVl83MzVwelVYUSIgbmFtZT0icnRtYXBzIiB0eXBlPSJfamNwLVlHYlpFZUdUVl83MzVwelVYUSIvPgorICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX09qM3hvR2JaRWVHVFZfNzM1cHpVWFEiIG5hbWU9IkN5Q2FiVEsiLz4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfamNwLVlHYlpFZUdUVl83MzVwelVYUSIgbmFtZT0iUlRNYXBzIi8+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgeG1pOmlkPSJfdlpSRTRHYmFFZUdUVl83MzVwelVYUSIgbmFtZT0iUGxhdGZvcm1QbGF0Zm9ybSI+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVNwZWNpZmljYXRpb24iIHhtaTppZD0iX3ZaYTE0R2JhRWVHVFZfNzM1cHpVWFEiIG5hbWU9InBsYXRmb3JtLmN5Y2FiVEsiIGNsYXNzaWZpZXI9Il9PajN4b0diWkVlR1RWXzczNXB6VVhRIi8+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVNwZWNpZmljYXRpb24iIHhtaTppZD0iX3Zaal8wR2JhRWVHVFZfNzM1cHpVWFEiIG5hbWU9InBsYXRmb3JtLnJ0bWFwcyIgY2xhc3NpZmllcj0iX2pjcC1ZR2JaRWVHVFZfNzM1cHpVWFEiLz4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkluc3RhbmNlU3BlY2lmaWNhdGlvbiIgeG1pOmlkPSJfLVBoSGNHYmFFZUdUVl83MzVwelVYUSIgbmFtZT0icGxhdGZvcm0iIGNsYXNzaWZpZXI9Il92OENpSUdiWEVlR2p4YzhjN1pCa1BRIj4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX0hMUmhnR2JiRWVHVFZfNzM1cHpVWFEiIGRlZmluaW5nRmVhdHVyZT0iX0VsX1d3R2JhRWVHVFZfNzM1cHpVWFEiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfaUFEOU1HYmNFZUdUVl83MzVwelVYUSIgbmFtZT0icGxhdGZvcm0uY3ljYWJ0ayIgaW5zdGFuY2U9Il92WmExNEdiYUVlR1RWXzczNXB6VVhRIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfZVNnaTBHYmJFZUdUVl83MzVwelVYUSIgZGVmaW5pbmdGZWF0dXJlPSJfTWFYU0FHYmFFZUdUVl83MzVwelVYUSI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9tVmhoa0diY0VlR1RWXzczNXB6VVhRIiBuYW1lPSJwbGF0Zm9ybS5ydG1hcHMiIGluc3RhbmNlPSJfdlpqXzBHYmFFZUdUVl83MzVwelVYUSIvPgorICAgICAgICAgIDwvc2xvdD4KKyAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8cHJvZmlsZUFwcGxpY2F0aW9uIHhtaTp0eXBlPSJ1bWw6UHJvZmlsZUFwcGxpY2F0aW9uIiB4bWk6aWQ9Il9mZHpMZ0trX0VlQ1hxY1JWLTE4ZjZRIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9mZHpMZ2FrX0VlQ1hxY1JWLTE4ZjZRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICA8cmVmZXJlbmNlcyB4bWk6dHlwZT0iZWNvcmU6RVBhY2thZ2UiIGhyZWY9Imh0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMSMvIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxhcHBsaWVkUHJvZmlsZSB4bWk6dHlwZT0idW1sOlByb2ZpbGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI18zUU9IRVBjRUVkLUowNlU1SE1fby1RIi8+CisgICAgPC9wcm9maWxlQXBwbGljYXRpb24+CisgICAKKyAgPC91bWw6TW9kZWw+CisgIDxSb2JvdE1MOlNlbnNvclN5c3RlbSB4bWk6aWQ9Il9mZUdEenFrX0VlQ1hxY1JWLTE4ZjZRIiBiYXNlX0NsYXNzPSJfZmR6Slo2a19FZUNYcWNSVi0xOGY2USIvPgorICA8Um9ib3RNTDpBY3R1YXRvclN5c3RlbSB4bWk6aWQ9Il9mZUdEMHFrX0VlQ1hxY1JWLTE4ZjZRIiBiYXNlX0NsYXNzPSJfZmR6Sm9La19FZUNYcWNSVi0xOGY2USIvPgorICA8Um9ib3RNTDpBY3R1YXRvclN5c3RlbSB4bWk6aWQ9Il9mZUdEMDZrX0VlQ1hxY1JWLTE4ZjZRIiBiYXNlX0NsYXNzPSJfZmR6SnJha19FZUNYcWNSVi0xOGY2USIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfZmVHRDE2a19FZUNYcWNSVi0xOGY2USIgYmFzZV9Qb3J0PSJfZmR6SzZha19FZUNYcWNSVi0xOGY2USIvPgorICA8Um9ib3RNTDpTeXN0ZW0geG1pOmlkPSJfZmVHRDNLa19FZUNYcWNSVi0xOGY2USIgYmFzZV9DbGFzcz0iX2Zkekp5S2tfRWVDWHFjUlYtMThmNlEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2ZlR0QzNmtfRWVDWHFjUlYtMThmNlEiIGJhc2VfUG9ydD0iX2ZkekpjS2tfRWVDWHFjUlYtMThmNlEiIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9mZUdENGFrX0VlQ1hxY1JWLTE4ZjZRIiBiYXNlX1BvcnQ9Il9mZHpMTnFrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9mZUdENXFrX0VlQ1hxY1JWLTE4ZjZRIiBiYXNlX1BvcnQ9Il9mZHpLOWFrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9mZUdENTZrX0VlQ1hxY1JWLTE4ZjZRIiBiYXNlX1BvcnQ9Il9mZHpLLWFrX0VlQ1hxY1JWLTE4ZjZRIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfZmVHRDZxa19FZUNYcWNSVi0xOGY2USIgYmFzZV9Qb3J0PSJfZmR6SzA2a19FZUNYcWNSVi0xOGY2USIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfZmVHRDY2a19FZUNYcWNSVi0xOGY2USIgYmFzZV9Qb3J0PSJfZmR6S2Fha19FZUNYcWNSVi0xOGY2USIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfZmVHRDdha19FZUNYcWNSVi0xOGY2USIgYmFzZV9Qb3J0PSJfZmR6S0w2a19FZUNYcWNSVi0xOGY2USIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2ZlR0QtYWtfRWVDWHFjUlYtMThmNlEiIGJhc2VfUG9ydD0iX2ZkektjYWtfRWVDWHFjUlYtMThmNlEiIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9mZUdELXFrX0VlQ1hxY1JWLTE4ZjZRIiBiYXNlX1BvcnQ9Il9mZHpLWmFrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9mZUdELTZrX0VlQ1hxY1JWLTE4ZjZRIiBiYXNlX1BvcnQ9Il9mZHpLSzZrX0VlQ1hxY1JWLTE4ZjZRIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfZmVHRF9La19FZUNYcWNSVi0xOGY2USIgYmFzZV9Qb3J0PSJfZmR6S0o2a19FZUNYcWNSVi0xOGY2USIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfZmVHRF9ha19FZUNYcWNSVi0xOGY2USIgYmFzZV9Qb3J0PSJfZmR6S0k2a19FZUNYcWNSVi0xOGY2USIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfZmVHRF82a19FZUNYcWNSVi0xOGY2USIgYmFzZV9Qb3J0PSJfZmR6SzM2a19FZUNYcWNSVi0xOGY2USIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfZmVHRURha19FZUNYcWNSVi0xOGY2USIgYmFzZV9Qb3J0PSJfZmR6Slk2a19FZUNYcWNSVi0xOGY2USIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2ZlR0VEcWtfRWVDWHFjUlYtMThmNlEiIGJhc2VfUG9ydD0iX2ZkekpmYWtfRWVDWHFjUlYtMThmNlEiIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOlNvZnR3YXJlIHhtaTppZD0iX2ZlR0VFcWtfRWVDWHFjUlYtMThmNlEiIGJhc2VfQ2xhc3M9Il9mZHpLb0trX0VlQ1hxY1JWLTE4ZjZRIi8+CisgIDxSb2JvdE1MOlNvZnR3YXJlIHhtaTppZD0iX2ZlR0VFNmtfRWVDWHFjUlYtMThmNlEiIGJhc2VfQ2xhc3M9Il9mZHpLNUtrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgIDxSb2JvdE1MOlNvZnR3YXJlIHhtaTppZD0iX2ZlR0VGYWtfRWVDWHFjUlYtMThmNlEiIGJhc2VfQ2xhc3M9Il9mZHpLSXFrX0VlQ1hxY1JWLTE4ZjZRIiBpc1BlcmlvZGljPSJ0cnVlIiBwZXJpb2Q9IjUuMCIvPgorICA8Um9ib3RNTDpTb2Z0d2FyZSB4bWk6aWQ9Il9mZUdFRnFrX0VlQ1hxY1JWLTE4ZjZRIiBiYXNlX0NsYXNzPSJfZmR6S1ZLa19FZUNYcWNSVi0xOGY2USIgcGVyaW9kPSI1LjAiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2xyQWNqS2xBRWVDWWFZaTBoenE1a2ciIGJhc2VfUG9ydD0iX2xwcVlzS2xBRWVDWWFZaTBoenE1a2ciIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9VT2dYSUtsRkVlQ2dkTWh3RUJ1V0lnIiBiYXNlX1BvcnQ9Il9VTWFzY0tsRkVlQ2dkTWh3RUJ1V0lnIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfbkRtTjBLbEZFZUNuaWFNazVRVUJSZyIgYmFzZV9Qb3J0PSJfbkNqRThLbEZFZUNuaWFNazVRVUJSZyIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iXzR4X1RjS2xMRWVDWWZibnhWU3laOWciIGJhc2VfUG9ydD0iXzR4RjdrS2xMRWVDWWZibnhWU3laOWciIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il93QndvWUtsVkVlQ1lmYm54VlN5WjlnIiBiYXNlX1BvcnQ9Il93QWFra0tsVkVlQ1lmYm54VlN5WjlnIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9aQmNSOEtsV0VlQ1lmYm54VlN5WjlnIiBiYXNlX1BvcnQ9Il9aQUdPSUtsV0VlQ1lmYm54VlN5WjlnIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9zaXc4Z0tsV0VlQ1lmYm54VlN5WjlnIiBiYXNlX1BvcnQ9Il9zaGJmd0tsV0VlQ1lmYm54VlN5WjlnIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9HTk95d0tsYkVlQ1lmYm54VlN5WjlnIiBiYXNlX1BvcnQ9Il9HSnpyVUtsYkVlQ1lmYm54VlN5WjlnIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9jUy1Ja0tsZ0VlQ1lmYm54VlN5WjlnIiBiYXNlX1BvcnQ9Il9jUGlhRUtsZ0VlQ1lmYm54VlN5WjlnIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfTENJOUlLbGtFZUNMa3U0UkZySTd1dyIgYmFzZV9Qb3J0PSJfTEE4cVVLbGtFZUNMa3U0UkZySTd1dyIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfSXFHbmFxbG5FZUNMa3U0UkZySTd1dyIgYmFzZV9Qb3J0PSJfSW1GREFLbG5FZUNMa3U0UkZySTd1dyIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX1VNR09mS2xvRWVDTGt1NFJGckk3dXciIGJhc2VfUG9ydD0iX1VJT2JFS2xvRWVDTGt1NFJGckk3dXciLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX1JzcWU4QndrRWVHYTViSF9SSkZ6QlEiIGJhc2VfUG9ydD0iX1JzYjFjQndrRWVHYTViSF9SSkZ6QlEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX1cyb0NZQndrRWVHYTViSF9SSkZ6QlEiIGJhc2VfUG9ydD0iX1cyVzhvQndrRWVHYTViSF9SSkZ6QlEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2Y2dFNBQndrRWVHYTViSF9SSkZ6QlEiIGJhc2VfUG9ydD0iX2Y2YS1JQndrRWVHYTViSF9SSkZ6QlEiIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOlNvZnR3YXJlIHhtaTppZD0iX0t2cDVBQjhqRWVHU1ljQ3M1S2dPM0EiIGJhc2VfQ2xhc3M9Il9hRzVTa0tsZ0VlQ1lmYm54VlN5WjlnIi8+CisgIDxSb2JvdE1MOlNvZnR3YXJlIHhtaTppZD0iX09SUmxvQjhqRWVHU1ljQ3M1S2dPM0EiIGJhc2VfQ2xhc3M9Il9NYVZVa0J3aUVlR2E1YkhfUkpGekJRIi8+CisgIDxSb2JvdE1MOlNvZnR3YXJlIHhtaTppZD0iX1RYS2hZQjhqRWVHU1ljQ3M1S2dPM0EiIGJhc2VfQ2xhc3M9Il8wN0FjQUJ3a0VlR2E1YkhfUkpGekJRIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il85Y2w0d0I4b0VlRzRnUENFem5WTk9BIiBiYXNlX1BvcnQ9Il85Y09zWUI4b0VlRzRnUENFem5WTk9BIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpBY3R1YXRvclN5c3RlbSB4bWk6aWQ9Il9LcWUyWUI4cEVlRzRnUENFem5WTk9BIiBiYXNlX0NsYXNzPSJfS3FBOFVCOHBFZUc0Z1BDRXpuVk5PQSIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfUGgwXzBCOHBFZUc0Z1BDRXpuVk5PQSIgYmFzZV9Qb3J0PSJfUGhpRTRCOHBFZUc0Z1BDRXpuVk5PQSIvPgorICA8Um9ib3RNTDpTb2Z0d2FyZSB4bWk6aWQ9Il9yVGs5a0I4ckVlRzRnUENFem5WTk9BIiBiYXNlX0NsYXNzPSJfa2RsV0lCOHJFZUc0Z1BDRXpuVk5PQSIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfdlFqSmNCOHJFZUc0Z1BDRXpuVk5PQSIgYmFzZV9Qb3J0PSJfdlFQQVlCOHJFZUc0Z1BDRXpuVk5PQSIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfeEhXVEFCOHJFZUc0Z1BDRXpuVk5PQSIgYmFzZV9Qb3J0PSJfeEhCaTRCOHJFZUc0Z1BDRXpuVk5PQSIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfMDF5NnNCOHJFZUc0Z1BDRXpuVk5PQSIgYmFzZV9Qb3J0PSJfMDFjOGNCOHJFZUc0Z1BDRXpuVk5PQSIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfNlZ0Z0FCOHJFZUc0Z1BDRXpuVk5PQSIgYmFzZV9Qb3J0PSJfNlZZdjRCOHJFZUc0Z1BDRXpuVk5PQSIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iXzZva0trQjhyRWVHNGdQQ0V6blZOT0EiIGJhc2VfUG9ydD0iXzZvT3pZQjhyRWVHNGdQQ0V6blZOT0EiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2dGczZjQjhzRWVHNGdQQ0V6blZOT0EiIGJhc2VfUG9ydD0iX2dGWXhZQjhzRWVHNGdQQ0V6blZOT0EiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX3RSaGJnQjhzRWVHNGdQQ0V6blZOT0EiIGJhc2VfUG9ydD0iX3RSTXJZQjhzRWVHNGdQQ0V6blZOT0EiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iXzAwdjhZQjhzRWVHNGdQQ0V6blZOT0EiIGJhc2VfUG9ydD0iXzAwY2FZQjhzRWVHNGdQQ0V6blZOT0EiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2VneGNvQjh2RWVHNGdQQ0V6blZOT0EiIGJhc2VfUG9ydD0iX2VnU1VjQjh2RWVHNGdQQ0V6blZOT0EiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX0ZnX0kwQjh3RWVHZXRPTGZrTE53ZmciIGJhc2VfUG9ydD0iX0ZnYnZNQjh3RWVHZXRPTGZrTE53ZmciLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX05rY0I0Qjh3RWVHZXRPTGZrTE53ZmciIGJhc2VfUG9ydD0iX05rRU9jQjh3RWVHZXRPTGZrTE53ZmciLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX1daOEM4Qjh3RWVHZXRPTGZrTE53ZmciIGJhc2VfUG9ydD0iX1daam9jQjh3RWVHZXRPTGZrTE53ZmciLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX3gtQzRNQjh3RWVHZXRPTGZrTE53ZmciIGJhc2VfUG9ydD0iX3g5b0JjQjh3RWVHZXRPTGZrTE53ZmciLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX1dEVGpRQjgtRWVHZXRPTGZrTE53ZmciIGJhc2VfUG9ydD0iX1dDNVRrQjgtRWVHZXRPTGZrTE53ZmciLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2E4YW5RQjgtRWVHZXRPTGZrTE53ZmciIGJhc2VfUG9ydD0iX2E4QVhrQjgtRWVHZXRPTGZrTE53ZmciLz4KKyAgPEJsb2NrczpOZXN0ZWRDb25uZWN0b3JFbmQgeG1pOmlkPSJfbzRNQTBIN0xFZVNGeU5ibkxZRENrdyIvPgorICA8QmxvY2tzOk5lc3RlZENvbm5lY3RvckVuZCB4bWk6aWQ9Il9vNE1BMFg3TEVlU0Z5TmJuTFlEQ2t3Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il96Rkpmb0RVb0VlRzVwTF9mcE4yRGdRIiBiYXNlX1BvcnQ9Il96RWZfWURVb0VlRzVwTF9mcE4yRGdRIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfMmhvMG9EVW9FZUc1cExfZnBOMkRnUSIgYmFzZV9Qb3J0PSJfMmhRYUlEVW9FZUc1cExfZnBOMkRnUSIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX29BTjlJRFVwRWVHNXBMX2ZwTjJEZ1EiIGJhc2VfUG9ydD0iX25fMkpzRFVwRWVHNXBMX2ZwTjJEZ1EiIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il80SjJUSURVcEVlRzVwTF9mcE4yRGdRIiBiYXNlX1BvcnQ9Il80SmQ0b0RVcEVlRzVwTF9mcE4yRGdRIiBkaXJlY3Rpb249Im91dCIvPgorICA8QmxvY2tzOk5lc3RlZENvbm5lY3RvckVuZCB4bWk6aWQ9Il9vNE1BMG43TEVlU0Z5TmJuTFlEQ2t3Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9VZXpoRURVckVlRzVwTF9mcE4yRGdRIiBiYXNlX1BvcnQ9Il9VZWdtSURVckVlRzVwTF9mcE4yRGdRIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9iZWw5c0RVckVlRzVwTF9mcE4yRGdRIiBiYXNlX1BvcnQ9Il9iZVNic0RVckVlRzVwTF9mcE4yRGdRIi8+CisgIDxCbG9ja3M6TmVzdGVkQ29ubmVjdG9yRW5kIHhtaTppZD0iX280VngwSDdMRWVTRnlOYm5MWURDa3ciLz4KKyAgPEJsb2NrczpOZXN0ZWRDb25uZWN0b3JFbmQgeG1pOmlkPSJfbzRWeDBYN0xFZVNGeU5ibkxZRENrdyIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfdlFUMHNEVXJFZUc1cExfZnBOMkRnUSIgYmFzZV9Qb3J0PSJfdlBfcm9EVXJFZUc1cExfZnBOMkRnUSIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfX1ZEcXNEVXJFZUc1cExfZnBOMkRnUSIgYmFzZV9Qb3J0PSJfX1V3SXNEVXJFZUc1cExfZnBOMkRnUSIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfX3YwN0lEVXJFZUc1cExfZnBOMkRnUSIgYmFzZV9Qb3J0PSJfX3ZoWklEVXJFZUc1cExfZnBOMkRnUSIvPgorICA8QmxvY2tzOk5lc3RlZENvbm5lY3RvckVuZCB4bWk6aWQ9Il9vNFZ4MG43TEVlU0Z5TmJuTFlEQ2t3Ii8+CisgIDxCbG9ja3M6TmVzdGVkQ29ubmVjdG9yRW5kIHhtaTppZD0iX280VngwMzdMRWVTRnlOYm5MWURDa3ciLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX3FRQUM0RFV6RWVHNXBMX2ZwTjJEZ1EiIGJhc2VfUG9ydD0iX3FQclN3RFV6RWVHNXBMX2ZwTjJEZ1EiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iXzAteWcwRFV6RWVHNXBMX2ZwTjJEZ1EiIGJhc2VfUG9ydD0iXzAtZVh3RFV6RWVHNXBMX2ZwTjJEZ1EiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iXzJqSW9jRFV6RWVHNXBMX2ZwTjJEZ1EiIGJhc2VfUG9ydD0iXzJpelJRRFV6RWVHNXBMX2ZwTjJEZ1EiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iXzN3Zk1ZRFV6RWVHNXBMX2ZwTjJEZ1EiIGJhc2VfUG9ydD0iXzN3S2NRRFV6RWVHNXBMX2ZwTjJEZ1EiLz4KKyAgPFJvYm90TUw6VHJhbnNpdGlvbiB4bWk6aWQ9Il8zSjQxRUVIWkVlRzhudmpHakQwTXJnIiBiYXNlX1RyYW5zaXRpb249Il8zSk00a0VIWkVlRzhudmpHakQwTXJnIi8+CisgIDxSb2JvdE1MOlN5c3RlbSB4bWk6aWQ9Il9lWXI1WUVIbUVlR0dYcEdzY3BramRnIiBiYXNlX0NsYXNzPSJfZmR6TEhha19FZUNYcWNSVi0xOGY2USIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfbUtMLWNFSDBFZUd3R19KS0ZoeWh4dyIgYmFzZV9Qb3J0PSJfbUp6ajhFSDBFZUd3R19KS0ZoeWh4dyIvPgorICA8Um9ib3RNTDpTb2Z0d2FyZSB4bWk6aWQ9Il9Na1RlZ0VIMkVlR3dHX0pLRmh5aHh3IiBiYXNlX0NsYXNzPSJfaXJtWHNFSDBFZUd3R19KS0ZoeWh4dyIvPgorICA8Um9ib3RNTDpTb2Z0d2FyZSB4bWk6aWQ9Il9PellsTUVIMkVlR3dHX0pLRmh5aHh3IiBiYXNlX0NsYXNzPSJfNFI4VllFSHhFZUdHWHBHc2Nwa2pkZyIgcGVyaW9kPSI1LjAiLz4KKyAgPFJvYm90TUw6U3RhdGUgeG1pOmlkPSJfTS1DTkVFSzZFZUd2LTU0V200bVJXUSIgYmFzZV9TdGF0ZT0iX005aWQwRUs2RWVHdi01NFdtNG1SV1EiIGJlaGF2aW9yPSJfSWdKT2dCRnhFZU9sMUlyZ1ZNVXhPQSIgb3BlcmF0aW9uPSJfWXN1QndFSzZFZUd2LTU0V200bVJXUSIvPgorICA8Um9ib3RNTDpBbGdvcml0aG0geG1pOmlkPSJfWXN1QndFSzZFZUd2LTU0V200bVJXUSIgYmFzZV9PcGVyYXRpb249Il9MSjI1c0VLNkVlR3YtNTRXbTRtUldRIi8+CisgIDxSb2JvdE1MOkFsZ29yaXRobSB4bWk6aWQ9Il9nMndEOEVLNkVlR3YtNTRXbTRtUldRIiBiYXNlX09wZXJhdGlvbj0iX2NvOU4wRUs2RWVHdi01NFdtNG1SV1EiLz4KKyAgPFJvYm90TUw6QWxnb3JpdGhtIHhtaTppZD0iX212aE9JRUs2RWVHdi01NFdtNG1SV1EiIGJhc2VfT3BlcmF0aW9uPSJfbHhDenNFSzZFZUd2LTU0V200bVJXUSIvPgorICA8Um9ib3RNTDpBbGdvcml0aG0geG1pOmlkPSJfNW5Zc0FFSzZFZUd2LTU0V200bVJXUSIgYmFzZV9PcGVyYXRpb249Il9zRC1LVUVLNkVlR3YtNTRXbTRtUldRIi8+CisgIDxSb2JvdE1MOkFsZ29yaXRobSB4bWk6aWQ9Il96STFld0VLN0VlR3YtNTRXbTRtUldRIiBiYXNlX09wZXJhdGlvbj0iX3JuZk5NRUs3RWVHdi01NFdtNG1SV1EiLz4KKyAgPFJvYm90TUw6QWxnb3JpdGhtIHhtaTppZD0iXzBZbDJjRUs3RWVHdi01NFdtNG1SV1EiIGJhc2VfT3BlcmF0aW9uPSJfenNtVElFSzdFZUd2LTU0V200bVJXUSIvPgorICA8Um9ib3RNTDpTdGF0ZSB4bWk6aWQ9Il9Bc0x2QUVLOEVlR3YtNTRXbTRtUldRIiBiYXNlX1N0YXRlPSJfQXI0MEVFSzhFZUd2LTU0V200bVJXUSIgYmVoYXZpb3I9Il9lQndWMEJGeEVlT2wxSXJnVk1VeE9BIiBvcGVyYXRpb249Il9tdmhPSUVLNkVlR3YtNTRXbTRtUldRIi8+CisgIDxSb2JvdE1MOlN0YXRlIHhtaTppZD0iX1B2M0prRUs4RWVHdi01NFdtNG1SV1EiIGJhc2VfU3RhdGU9Il9Qdmpua0VLOEVlR3YtNTRXbTRtUldRIiBiZWhhdmlvcj0iX1ptU1FFQkZ4RWVPbDFJcmdWTVV4T0EiIG9wZXJhdGlvbj0iX2cyd0Q4RUs2RWVHdi01NFdtNG1SV1EiLz4KKyAgPFJvYm90TUw6VHJhbnNpdGlvbiB4bWk6aWQ9Il80cE92d0VLOEVlR3YtNTRXbTRtUldRIiBiYXNlX1RyYW5zaXRpb249Il80bmQxTUVLOEVlR3YtNTRXbTRtUldRIiBndWFyZD0iX00tNVRRRUs3RWVHdi01NFdtNG1SV1EiLz4KKyAgPFJvYm90TUw6VHJhbnNpdGlvbiB4bWk6aWQ9Il82Q25ra0VLOEVlR3YtNTRXbTRtUldRIiBiYXNlX1RyYW5zaXRpb249Il82Q0duTUVLOEVlR3YtNTRXbTRtUldRIiBndWFyZD0iXzZxSkpnRUs2RWVHdi01NFdtNG1SV1EiLz4KKyAgPFJvYm90TUw6VHJhbnNpdGlvbiB4bWk6aWQ9Il82LUwwOEVLOEVlR3YtNTRXbTRtUldRIiBiYXNlX1RyYW5zaXRpb249Il82OXJlb0VLOEVlR3YtNTRXbTRtUldRIiBndWFyZD0iX01KOG9RRUs3RWVHdi01NFdtNG1SV1EiLz4KKyAgPFJvYm90TUw6VHJhbnNpdGlvbiB4bWk6aWQ9Il83ak9ic0VLOEVlR3YtNTRXbTRtUldRIiBiYXNlX1RyYW5zaXRpb249Il83aXJwSUVLOEVlR3YtNTRXbTRtUldRIiBndWFyZD0iX00tNVRRRUs3RWVHdi01NFdtNG1SV1EiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX0hyUXZFRUstRWVHdi01NFdtNG1SV1EiIGJhc2VfUG9ydD0iX0ZwWEl3RUstRWVHdi01NFdtNG1SV1EiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX1VmREtvRUstRWVHdi01NFdtNG1SV1EiIGJhc2VfUG9ydD0iX1RWWU0wRUstRWVHdi01NFdtNG1SV1EiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2NqV1lRRUstRWVHdi01NFdtNG1SV1EiIGJhc2VfUG9ydD0iX2FMMUhRRUstRWVHdi01NFdtNG1SV1EiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2lMOFljRUstRWVHdi01NFdtNG1SV1EiIGJhc2VfUG9ydD0iX2Q5d2d3RUstRWVHdi01NFdtNG1SV1EiLz4KKyAgPFJvYm90TUw6QWxnb3JpdGhtIHhtaTppZD0iX2s1dzBJRUtfRWVHRng0aVZFd28wa0EiIGJhc2VfT3BlcmF0aW9uPSJfZ0RXZTBFS19FZUdGeDRpVkV3bzBrQSIgaXNFeHRlcm5hbD0idHJ1ZSIgZXh0RnVuY3Rpb25OYW1lPSJpbXNob3ciIHBhdGg9Ii91c3IvbGliL2xpYm9wZW5jdl9oaWdoZ3VpLnNvIi8+CisgIDxSb2JvdE1MOkFsZ29yaXRobSB4bWk6aWQ9Il83Tk43d0VOR0VlR2FBc1JwZWdFZ1BnIiBiYXNlX09wZXJhdGlvbj0iXzRnRVpBRU5HRWVHYUFzUnBlZ0VnUGciIGlzRXh0ZXJuYWw9InRydWUiIGV4dEZ1bmN0aW9uTmFtZT0iaW1yZWFkIiBwYXRoPSIvdXNyL2xpYi9saWJvcGVuY3ZfaGlnaGd1aS5zbyIvPgorICA8Um9ib3RNTDpHUFNTeXN0ZW0geG1pOmlkPSJfLW4xbVFFWnNFZUdvMnJMVDQ5aHNSdyIgYmFzZV9DbGFzcz0iX2ZkekpkS2tfRWVDWHFjUlYtMThmNlEiLz4KKyAgPFJvYm90TUw6U2Vuc29yU3lzdGVtIHhtaTppZD0iXzFmLU5ZRVp0RWVHbzJyTFQ0OWhzUnciIGJhc2VfQ2xhc3M9Il81cnJMNEI4b0VlRzRnUENFem5WTk9BIi8+CisgIDxSb2JvdE1MOkNhbWVyYVN5c3RlbSB4bWk6aWQ9Il80dmZkWUVadEVlR28yckxUNDloc1J3IiBiYXNlX0NsYXNzPSJfbEhxYm9EVXBFZUc1cExfZnBOMkRnUSIvPgorICA8Um9ib3RNTDpDYW1lcmFTeXN0ZW0geG1pOmlkPSJfSXNZWDRFWnVFZUdvMnJMVDQ5aHNSdyIgYmFzZV9DbGFzcz0iX3lwaUZNRFVwRWVHNXBMX2ZwTjJEZ1EiLz4KKyAgPFJvYm90TUw6Q2FtZXJhU3lzdGVtIHhtaTppZD0iX0toZ0djRVp1RWVHbzJyTFQ0OWhzUnciIGJhc2VfQ2xhc3M9Il9lZjVnc0tsQUVlQ1lhWWkwaHpxNWtnIi8+CisgIDxSb2JvdE1MOkxpZGFyU3lzdGVtIHhtaTppZD0iX09Wc0NZRVp4RWVHbzJyTFQ0OWhzUnciIGJhc2VfQ2xhc3M9Il9mZHpKV3FrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgIDxSb2JvdE1MOlJvYm90IHhtaTppZD0iX0hadF93RjRnRWVHdWE1Wi1WRWhzNHciIGJhc2VfQ2xhc3M9Il9mZHpJMHFrX0VlQ1hxY1JWLTE4ZjZRIi8+CisgIDxSb2JvdE1MOkNhbWVyYVN5c3RlbSB4bWk6aWQ9Il9LbGJHd0Y0Z0VlR3VhNVotVkVoczR3IiBiYXNlX0NsYXNzPSJfZmR6Smdha19FZUNYcWNSVi0xOGY2USIvPgorICA8Um9ib3RNTDpFbmdpbmVTeXN0ZW0geG1pOmlkPSJfUlZ0SHdGNGdFZUd1YTVaLVZFaHM0dyIgYmFzZV9DbGFzcz0iX2Zkekp1cWtfRWVDWHFjUlYtMThmNlEiLz4KKyAgPFJvYm90TUw6VHJhbnNpdGlvbiB4bWk6aWQ9Il90VTlHRUdMd0VlR1F2djV3SkVtR1VRIiBiYXNlX1RyYW5zaXRpb249Il90VU5mTUdMd0VlR1F2djV3SkVtR1VRIiBndWFyZD0iX00tNVRRRUs3RWVHdi01NFdtNG1SV1EiLz4KKyAgPFJvYm90TUw6VHJhbnNpdGlvbiB4bWk6aWQ9Il91UlRaa0dMd0VlR1F2djV3SkVtR1VRIiBiYXNlX1RyYW5zaXRpb249Il91UXRqc0dMd0VlR1F2djV3SkVtR1VRIi8+CisgIDxSb2JvdE1MOlRyYW5zaXRpb24geG1pOmlkPSJfdlBjYzBHTHdFZUdRdnY1d0pFbUdVUSIgYmFzZV9UcmFuc2l0aW9uPSJfdk8xXzRHTHdFZUdRdnY1d0pFbUdVUSIvPgorICA8Um9ib3RNTDpUcmFuc2l0aW9uIHhtaTppZD0iX3lQWHhvR0x3RWVHUXZ2NXdKRW1HVVEiIGJhc2VfVHJhbnNpdGlvbj0iX3lPb0t3R0x3RWVHUXZ2NXdKRW1HVVEiLz4KKyAgPFJvYm90TUw6VHJhbnNpdGlvbiB4bWk6aWQ9Il8xWWlpQUdMd0VlR1F2djV3SkVtR1VRIiBiYXNlX1RyYW5zaXRpb249Il8xWDhGRUdMd0VlR1F2djV3SkVtR1VRIiBndWFyZD0iXzZxSkpnRUs2RWVHdi01NFdtNG1SV1EiLz4KKyAgPFJvYm90TUw6VHJhbnNpdGlvbiB4bWk6aWQ9Il8ydzVjRUdMd0VlR1F2djV3SkVtR1VRIiBiYXNlX1RyYW5zaXRpb249Il8yd1RtTUdMd0VlR1F2djV3SkVtR1VRIiBndWFyZD0iX01KOG9RRUs3RWVHdi01NFdtNG1SV1EiLz4KKyAgPFJvYm90TUw6T25Qb3J0IHhtaTppZD0iX195ZUtRR0x3RWVHUXZ2NXdKRW1HVVEiIHBvcnQ9Il9VZkRLb0VLLUVlR3YtNTRXbTRtUldRIiBiYXNlX1BhcmFtZXRlcj0iX3FYUWlJRUxBRWVHRng0aVZFd28wa0EiLz4KKyAgPFJvYm90TUw6T25Qb3J0IHhtaTppZD0iX0ZGN0E0R0x4RWVHUXZ2NXdKRW1HVVEiIHBvcnQ9Il9jaldZUUVLLUVlR3YtNTRXbTRtUldRIiBiYXNlX1BhcmFtZXRlcj0iX2c4ZUNzRUxBRWVHRng0aVZFd28wa0EiLz4KKyAgPFJvYm90TUw6T25Qb3J0IHhtaTppZD0iX0lfcVNrR0x4RWVHUXZ2NXdKRW1HVVEiIHBvcnQ9Il9pTDhZY0VLLUVlR3YtNTRXbTRtUldRIiBiYXNlX1BhcmFtZXRlcj0iX2R5YnZvRUxBRWVHRng0aVZFd28wa0EiLz4KKyAgPFJvYm90TUw6T25Qb3J0IHhtaTppZD0iX1FLeE9ZR0x4RWVHUXZ2NXdKRW1HVVEiIHBvcnQ9Il9IclF2RUVLLUVlR3YtNTRXbTRtUldRIiBiYXNlX1BhcmFtZXRlcj0iXzFrSVI4RUs2RWVHdi01NFdtNG1SV1EiLz4KKyAgPFJvYm90TUw6T25Qb3J0IHhtaTppZD0iX1VjcFRRR0x4RWVHUXZ2NXdKRW1HVVEiIHBvcnQ9Il9IclF2RUVLLUVlR3YtNTRXbTRtUldRIiBiYXNlX1BhcmFtZXRlcj0iX3lCMWFjRUs3RWVHdi01NFdtNG1SV1EiLz4KKyAgPFJvYm90TUw6T25Qb3J0IHhtaTppZD0iX2VSb2JZR0x4RWVHUXZ2NXdKRW1HVVEiIHBvcnQ9Il9IclF2RUVLLUVlR3YtNTRXbTRtUldRIiBiYXNlX1BhcmFtZXRlcj0iXzdtRXcwRUs3RWVHdi01NFdtNG1SV1EiLz4KKyAgPFJvYm90TUw6UGxhdGZvcm0geG1pOmlkPSJfNUVLa1FHYlhFZUdqeGM4YzdaQmtQUSIgYmFzZV9DbGFzcz0iX3Y4Q2lJR2JYRWVHanhjOGM3WkJrUFEiLz4KKyAgPFJvYm90TUw6Um9ib3RpY01pZGRsZXdhcmUgeG1pOmlkPSJfamRabFFHYlpFZUdUVl83MzVwelVYUSIgYmFzZV9DbGFzcz0iX2pjcC1ZR2JaRWVHVFZfNzM1cHpVWFEiLz4KKyAgPFJvYm90TUw6Q3ljYWJUSyB4bWk6aWQ9Il9oTklCd0d3cEVlR21jZVhsbFl6RlJRIiBiYXNlX0NsYXNzPSJfT2ozeG9HYlpFZUdUVl83MzVwelVYUSIvPgorICA8Um9ib3RNTDpUcmFuc2l0aW9uIHhtaTppZD0iXzBTTUZ3RzZvRWVHcXJkX19CMHlVTkEiIGJhc2VfVHJhbnNpdGlvbj0iXzBRWjlFRzZvRWVHcXJkX19CMHlVTkEiLz4KKyAgPFJvYm90TUw6QWxnb3JpdGhtIHhtaTppZD0iXzdBR0lNRzZvRWVHcXJkX19CMHlVTkEiIGJhc2VfT3BlcmF0aW9uPSJfNWxER2dHNm9FZUdxcmRfX0IweVVOQSIvPgorICA8Um9ib3RNTDpUcmFuc2l0aW9uIHhtaTppZD0iX2IxTEgwRzZwRWVHcXJkX19CMHlVTkEiIGJhc2VfVHJhbnNpdGlvbj0iX2J6aUpFRzZwRWVHcXJkX19CMHlVTkEiLz4KKyAgPFJvYm90TUw6QWxnb3JpdGhtIHhtaTppZD0iXzhnYU84RzZwRWVHcXJkX19CMHlVTkEiIGJhc2VfT3BlcmF0aW9uPSJfNUZxbVlHNnBFZUdxcmRfX0IweVVOQSIvPgorICA8Um9ib3RNTDpUcmFuc2l0aW9uIHhtaTppZD0iX1JFV05FRzZxRWVHcXJkX19CMHlVTkEiIGJhc2VfVHJhbnNpdGlvbj0iX1JDdE9VRzZxRWVHcXJkX19CMHlVTkEiLz4KKyAgPFJvYm90TUw6QWxnb3JpdGhtIHhtaTppZD0iX2RrWk5RRzZxRWVHcXJkX19CMHlVTkEiIGJhc2VfT3BlcmF0aW9uPSJfY1dLZmtHNnFFZUdxcmRfX0IweVVOQSIvPgorICA8Um9ib3RNTDpBbGdvcml0aG0geG1pOmlkPSJfVng4U3NHNnNFZUdxcmRfX0IweVVOQSIgYmFzZV9PcGVyYXRpb249Il8xRnRpZ0c2cUVlR3FyZF9fQjB5VU5BIi8+CisgIDxSb2JvdE1MOlRyYW5zaXRpb24geG1pOmlkPSJfaVh6bkFHNnNFZUdxcmRfX0IweVVOQSIgYmFzZV9UcmFuc2l0aW9uPSJfaVdMUFVHNnNFZUdxcmRfX0IweVVOQSIvPgorICA8Um9ib3RNTDpEZXBsb3ltZW50UGxhbiB4bWk6aWQ9Il80ODdxQUtEN0VlS05hNkVmR0FTU1d3IiBiYXNlX1BhY2thZ2U9Il9rNmxjVUdiV0VlR0dOdVgxSUhnMXpnIiBtYWluSW5zdGFuY2U9Il9rN0w1UUdiV0VlR0dOdVgxSUhnMXpnIi8+CisgIDxSb2JvdE1MOkVudmlyb25tZW50IHhtaTppZD0iXy0tTWp1S0VORWVLTFVxWDlJSnEyR2ciIGJhc2VfQ2xhc3M9Il8tOW10MEtFTkVlS0xVcVg5SUpxMkdnIi8+CisgIDxSb2JvdE1MOkRlcGxveW1lbnRQbGFuIHhtaTppZD0iX25sVWpVYUVPRWVLTFVxWDlJSnEyR2ciIGJhc2VfUGFja2FnZT0iX25sVWpVS0VPRWVLTFVxWDlJSnEyR2ciIG1haW5JbnN0YW5jZT0iX25sbmVRS0VPRWVLTFVxWDlJSnEyR2ciLz4KKyAgPFJvYm90TUw6QWxsb2NhdGUgeG1pOmlkPSJfcmE0Zm9hRU9FZUtMVXFYOUlKcTJHZyIgYmFzZV9BYnN0cmFjdGlvbj0iX3JhNGZvS0VPRWVLTFVxWDlJSnEyR2ciLz4KKyAgPFJvYm90TUw6QWxsb2NhdGUgeG1pOmlkPSJfdGRIZElhRU9FZUtMVXFYOUlKcTJHZyIgYmFzZV9BYnN0cmFjdGlvbj0iX3RkSGRJS0VPRWVLTFVxWDlJSnEyR2ciLz4KKyAgPFJvYm90TUw6QWxsb2NhdGUgeG1pOmlkPSJfdDFHZlVhRU9FZUtMVXFYOUlKcTJHZyIgYmFzZV9BYnN0cmFjdGlvbj0iX3QxR2ZVS0VPRWVLTFVxWDlJSnEyR2ciLz4KKyAgPFJvYm90TUw6QWxsb2NhdGUgeG1pOmlkPSJfdVVQNWNhRU9FZUtMVXFYOUlKcTJHZyIgYmFzZV9BYnN0cmFjdGlvbj0iX3VVUDVjS0VPRWVLTFVxWDlJSnEyR2ciLz4KKyAgPFJvYm90TUw6QWxsb2NhdGUgeG1pOmlkPSJfdXFUQjhhRU9FZUtMVXFYOUlKcTJHZyIgYmFzZV9BYnN0cmFjdGlvbj0iX3VxVEI4S0VPRWVLTFVxWDlJSnEyR2ciLz4KKyAgPFJvYm90TUw6QWxsb2NhdGUgeG1pOmlkPSJfdk11WmthRU9FZUtMVXFYOUlKcTJHZyIgYmFzZV9BYnN0cmFjdGlvbj0iX3ZNdVprS0VPRWVLTFVxWDlJSnEyR2ciLz4KKyAgPFJvYm90TUw6QWxsb2NhdGUgeG1pOmlkPSJfdnZTVUVhRU9FZUtMVXFYOUlKcTJHZyIgYmFzZV9BYnN0cmFjdGlvbj0iX3Z2U1VFS0VPRWVLTFVxWDlJSnEyR2ciLz4KKyAgPFJvYm90TUw6QWxsb2NhdGUgeG1pOmlkPSJfd0VjcndLRU9FZUtMVXFYOUlKcTJHZyIgYmFzZV9BYnN0cmFjdGlvbj0iX3dEX18wS0VPRWVLTFVxWDlJSnEyR2ciLz4KKyAgPFJvYm90TUw6QWxsb2NhdGUgeG1pOmlkPSJfd2duRFVhRU9FZUtMVXFYOUlKcTJHZyIgYmFzZV9BYnN0cmFjdGlvbj0iX3dnbkRVS0VPRWVLTFVxWDlJSnEyR2ciLz4KKyAgPFJvYm90TUw6QWxsb2NhdGUgeG1pOmlkPSJfdzJPRzhhRU9FZUtMVXFYOUlKcTJHZyIgYmFzZV9BYnN0cmFjdGlvbj0iX3cyT0c4S0VPRWVLTFVxWDlJSnEyR2ciLz4KKyAgPFJvYm90TUw6QWxsb2NhdGUgeG1pOmlkPSJfeE5BMlVhRU9FZUtMVXFYOUlKcTJHZyIgYmFzZV9BYnN0cmFjdGlvbj0iX3hOQTJVS0VPRWVLTFVxWDlJSnEyR2ciLz4KKyAgPFJvYm90TUw6QWxsb2NhdGUgeG1pOmlkPSJfeGZ5b1lhRU9FZUtMVXFYOUlKcTJHZyIgYmFzZV9BYnN0cmFjdGlvbj0iX3hmeW9ZS0VPRWVLTFVxWDlJSnEyR2ciLz4KKzwveG1pOlhNST4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvcmVzb3VyY2UvU2VhcmNoTGFuZGluZy5kaSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvcmVzb3VyY2UvU2VhcmNoTGFuZGluZy5kaQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xYjA1YTRiCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9yZXNvdXJjZS9TZWFyY2hMYW5kaW5nLmRpCkBAIC0wLDAgKzEsMjIgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IkFTQ0lJIj8+Cis8ZGk6U2FzaFdpbmRvd3NNbmdyIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zOlhNST0iaHR0cDovL3d3dy5vbWcub3JnL1hNSSIgeG1sbnM6ZGk9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvcGFweXJ1cy8wLjcuMC9zYXNoZGkiIFhNSTp2ZXJzaW9uPSIyLjAiPgorICA8cGFnZUxpc3Q+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICAgIDxhdmFpbGFibGVQYWdlLz4KKyAgICA8YXZhaWxhYmxlUGFnZS8+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICAgIDxhdmFpbGFibGVQYWdlLz4KKyAgICA8YXZhaWxhYmxlUGFnZS8+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICAgIDxhdmFpbGFibGVQYWdlLz4KKyAgICA8YXZhaWxhYmxlUGFnZS8+CisgIDwvcGFnZUxpc3Q+CisgIDxzYXNoTW9kZWwgY3VycmVudFNlbGVjdGlvbj0iIy8vQHNhc2hNb2RlbC9Ad2luZG93cy4wL0BjaGlsZHJlbi4wIj4KKyAgICA8d2luZG93cz4KKyAgICAgIDxjaGlsZHJlbiB4c2k6dHlwZT0iZGk6VGFiRm9sZGVyIj4KKyAgICAgICAgPGNoaWxkcmVuIGVtZlBhZ2VJZGVudGlmaWVyPSJTZWFyY2hMYW5kaW5nLm5vdGF0aW9uI18wTk5ZMEhDbUVlS2ZMZDc1OFRObS13Ii8+CisgICAgICAgIDxjaGlsZHJlbiBlbWZQYWdlSWRlbnRpZmllcj0iU2VhcmNoTGFuZGluZy5ub3RhdGlvbiNfbXRsMllEaWRFZUsySzVjS3Z3REZEdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICA8L3dpbmRvd3M+CisgIDwvc2FzaE1vZGVsPgorPC9kaTpTYXNoV2luZG93c01uZ3I+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3Jlc291cmNlL1NlYXJjaExhbmRpbmcubm90YXRpb24gYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3Jlc291cmNlL1NlYXJjaExhbmRpbmcubm90YXRpb24KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWU1MjgwZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvcmVzb3VyY2UvU2VhcmNoTGFuZGluZy5ub3RhdGlvbgpAQCAtMCwwICsxLDEyMzYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8eG1pOlhNSSB4bWk6dmVyc2lvbj0iMi4wIiB4bWxuczp4bWk9Imh0dHA6Ly93d3cub21nLm9yZy9YTUkiIHhtbG5zOlJvYm90TUw9Imh0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMSIgeG1sbnM6Y29uZmlndXJhdGlvbj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9wYXB5cnVzL2luZnJhL3ZpZXdwb2ludHMvY29uZmlndXJhdGlvbiIgeG1sbnM6Y3NzPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3BhcHlydXMvaW5mcmEvZ21mZGlhZy9jc3MiIHhtbG5zOmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIiB4bWxuczpub3RhdGlvbj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9nbWYvcnVudGltZS8xLjAuMi9ub3RhdGlvbiIgeG1sbnM6c3R5bGU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvcGFweXJ1cy9pbmZyYS92aWV3cG9pbnRzL3BvbGljeS9zdHlsZSIgeG1sbnM6dW1sPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIj4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfbXRoazhEaWRFZUsySzVjS3Z3REZEdyIgdHlwZT0iUGFweXJ1c1VNTENsYXNzRGlhZ3JhbSIgbmFtZT0iRGF0YVR5cGUiIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX19GV1pnRGlmRWVLMks1Y0t2d0RGRHciIHR5cGU9IjIwMDkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19GWEFrRGlmRWVLMks1Y0t2d0RGRHciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fRlhBa1RpZkVlSzJLNWNLdndERkR3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9fRlhBa2ppZkVlSzJLNWNLdndERkR3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fRlhBa3ppZkVlSzJLNWNLdndERkR3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19GWEFsRGlmRWVLMks1Y0t2d0RGRHciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX0ZYQWxUaWZFZUsySzVjS3Z3REZEdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX19GWEFsamlmRWVLMks1Y0t2d0RGRHciIHR5cGU9IjUwMzIiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjX19GTlBrRGlmRWVLMks1Y0t2d0RGRHciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX19GV1pnVGlmRWVLMks1Y0t2d0RGRHciIHg9IjQzNiIgeT0iMTM1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9DNHpkQURpZ0VlSzJLNWNLdndERkR3IiB0eXBlPSIyMDA5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9DNDBFRVRpZ0VlSzJLNWNLdndERkR3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQzQwRUVqaWdFZUsySzVjS3Z3REZEdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQzQwRUV6aWdFZUsySzVjS3Z3REZEdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQzQwRUZEaWdFZUsySzVjS3Z3REZEdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9DNDBFRlRpZ0VlSzJLNWNLdndERkR3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0M0MEVGamlnRWVLMks1Y0t2d0RGRHciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9DNDBFRnppZ0VlSzJLNWNLdndERkR3IiB0eXBlPSI1MDMyIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI19DNHQ5Y0RpZ0VlSzJLNWNLdndERkR3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9DNDBFRURpZ0VlSzJLNWNLdndERkR3IiB4PSI0MzciIHk9IjQwIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9fay1pZ0Rpa0VlSzJLNWNLdndERkR3IiB0eXBlPSIyMDA5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9fa19Ka0Rpa0VlSzJLNWNLdndERkR3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX2tfSmtUaWtFZUsySzVjS3Z3REZEdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfX2tfSmtqaWtFZUsySzVjS3Z3REZEdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX2tfSmt6aWtFZUsySzVjS3Z3REZEdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9fa19KbERpa0VlSzJLNWNLdndERkR3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19rX0psVGlrRWVLMks1Y0t2d0RGRHciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9fa19KbGppa0VlSzJLNWNLdndERkR3IiB0eXBlPSI1MDMyIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI19fa3pqWURpa0VlSzJLNWNLdndERkR3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9fay1pZ1Rpa0VlSzJLNWNLdndERkR3IiB4PSI0MzAiIHk9IjIxMCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9tdGhrOFRpZEVlSzJLNWNLdndERkR3Ii8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfeDZyVkFIN0xFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjX210YmVVRGlkRWVLMks1Y0t2d0RGRHciLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0N2TF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI19tdGJlVURpZEVlSzJLNWNLdndERkR3Ii8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfbXRqYUlEaWRFZUsySzVjS3Z3REZEdyIgdHlwZT0iUGFweXJ1c1VNTENsYXNzRGlhZ3JhbSIgbmFtZT0iSW50ZXJmYWNlIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX210amFJVGlkRWVLMks1Y0t2d0RGRHciLz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJzdHlsZTpQYXB5cnVzVmlld1N0eWxlIiB4bWk6aWQ9Il94NnJWQVg3TEVlU0Z5TmJuTFlEQ2t3Ij4KKyAgICAgIDxvd25lciB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfbXRiZVVEaWRFZUsySzVjS3Z3REZEdyIvPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3o5RXZMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjX210YmVVRGlkRWVLMks1Y0t2d0RGRHciLz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9tdGwyWURpZEVlSzJLNWNLdndERkR3IiB0eXBlPSJDb21wb3NpdGVTdHJ1Y3R1cmUiIG5hbWU9IkNvbXBvbmVudCIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfSW5BQTBEaWVFZUsySzVjS3Z3REZEdyIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSW5BbjREaWVFZUsySzVjS3Z3REZEdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0luQW40VGllRWVLMks1Y0t2d0RGRHciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0luQW40amllRWVLMks1Y0t2d0RGRHciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0luQW40emllRWVLMks1Y0t2d0RGRHciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSW5BbjVEaWVFZUsySzVjS3Z3REZEdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9JbkFuNVRpZUVlSzJLNWNLdndERkR3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0luR3VnRGllRWVLMks1Y0t2d0RGRHciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9JbnNrWURpZUVlSzJLNWNLdndERkR3IiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9JbnNrWVRpZUVlSzJLNWNLdndERkR3IiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6Um9ib3RpY1N5c3RlbSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0luc2tZamllRWVLMks1Y0t2d0RGRHciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSW5za1l6aWVFZUsySzVjS3Z3REZEdyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0luc2taRGllRWVLMks1Y0t2d0RGRHciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9JbkJPOERpZUVlSzJLNWNLdndERkR3IiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0luQk84VGllRWVLMks1Y0t2d0RGRHciIHR5cGU9IjcwNzMiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9taTZlSURpaUVlSzJLNWNLdndERkR3IiB0eXBlPSIzMDg1IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbWk3c1FEaWlFZUsySzVjS3Z3REZEdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9taTdzUVRpaUVlSzJLNWNLdndERkR3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX21pOFRVRGlpRWVLMks1Y0t2d0RGRHciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9taThUVVRpaUVlSzJLNWNLdndERkR3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbWk4VFVqaWlFZUsySzVjS3Z3REZEdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbWk4VFV6aWlFZUsySzVjS3Z3REZEdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbWk4NllEaWlFZUsySzVjS3Z3REZEdyIgdHlwZT0iNTE1NSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfbWk4NllUaWlFZUsySzVjS3Z3REZEdyIgdHlwZT0iNzA2MCI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9taTg2WWppaUVlSzJLNWNLdndERkR3Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9taTg2WXppaUVlSzJLNWNLdndERkR3Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0YXRlTWFjaGluZSIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjXzlKUVZzRGllRWVLMks1Y0t2d0RGRHciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9taTZlSVRpaUVlSzJLNWNLdndERkR3IiB4PSIxODAiIHk9IjM5Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0luQk84amllRWVLMks1Y0t2d0RGRHciIHNob3dUaXRsZT0idHJ1ZSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9JbkJPOHppZUVlSzJLNWNLdndERkR3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9JbjdONERpZUVlSzJLNWNLdndERkR3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iQXBwbGllZFN0ZXJlb3R5cGVDb21wYXJ0ZW1lbnQiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9JbjdONFRpZUVlSzJLNWNLdndERkR3IiBzaG93VGl0bGU9InRydWUiLz4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9IlJvYm90TUw6Um9ib3RpY1N5c3RlbSIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjX0luR0hjRGllRWVLMks1Y0t2d0RGRHciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfSW43TjRqaWVFZUsySzVjS3Z3REZEdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1BGZWdJRGllRWVLMks1Y0t2d0RGRHciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUEZlZ0lqaWVFZUsySzVjS3Z3REZEdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUEZlZ0l6aWVFZUsySzVjS3Z3REZEdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1BGZWdKRGllRWVLMks1Y0t2d0RGRHciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUEZlZ0pUaWVFZUsySzVjS3Z3REZEdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUEZlZ0pqaWVFZUsySzVjS3Z3REZEdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1BGZWdKemllRWVLMks1Y0t2d0RGRHciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfUEZlZ0tEaWVFZUsySzVjS3Z3REZEdyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9QRmVnS1RpZUVlSzJLNWNLdndERkR3IiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9QRmZITURpZUVlSzJLNWNLdndERkR3IiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1BGZkhNVGllRWVLMks1Y0t2d0RGRHciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfUEZYTFlEaWVFZUsySzVjS3Z3REZEdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9QRmVnSVRpZUVlSzJLNWNLdndERkR3IiB4PSItMTAiIHk9IjU2IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9RQmJMQURpZUVlSzJLNWNLdndERkR3IiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1FCYkxBamllRWVLMks1Y0t2d0RGRHciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1FCYkxBemllRWVLMks1Y0t2d0RGRHciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9RQmJMQkRpZUVlSzJLNWNLdndERkR3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1FCYkxCVGllRWVLMks1Y0t2d0RGRHciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1FCYkxCamllRWVLMks1Y0t2d0RGRHciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9RQmJ5RURpZUVlSzJLNWNLdndERkR3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9RQmZjY0RpZUVlSzJLNWNLdndERkR3IiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9RQjh2Y0RpZUVlSzJLNWNLdndERkR3IiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1FCOHZjVGllRWVLMks1Y0t2d0RGRHciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1FCOHZjamllRWVLMks1Y0t2d0RGRHciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9RQjh2Y3ppZUVlSzJLNWNLdndERkR3IiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9RQjh2ZERpZUVlSzJLNWNLdndERkR3IiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1FCYnlFVGllRWVLMks1Y0t2d0RGRHciIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfUUJieUVqaWVFZUsySzVjS3Z3REZEdyIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfUUJieUV6aWVFZUsySzVjS3Z3REZEdyIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9RQmJ5RkRpZUVlSzJLNWNLdndERkR3IiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjX1FCVWRVRGllRWVLMks1Y0t2d0RGRHciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfUUJiTEFUaWVFZUsySzVjS3Z3REZEdyIgeD0iLTEwIiB5PSIxMDUiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1NGaEpzRGllRWVLMks1Y0t2d0RGRHciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfU0ZoSnNqaWVFZUsySzVjS3Z3REZEdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfU0ZoSnN6aWVFZUsySzVjS3Z3REZEdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1NGaEp0RGllRWVLMks1Y0t2d0RGRHciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfU0ZoSnRUaWVFZUsySzVjS3Z3REZEdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfU0ZoSnRqaWVFZUsySzVjS3Z3REZEdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1NGaEp0emllRWVLMks1Y0t2d0RGRHciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1NGbGJJRGllRWVLMks1Y0t2d0RGRHciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1NHSTB3RGllRWVLMks1Y0t2d0RGRHciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfU0dKYjBEaWVFZUsySzVjS3Z3REZEdyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfU0dKYjBUaWVFZUsySzVjS3Z3REZEdyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1NHSmIwamllRWVLMks1Y0t2d0RGRHciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1NHSmIwemllRWVLMks1Y0t2d0RGRHciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfU0ZoSnVEaWVFZUsySzVjS3Z3REZEdyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9TRmhKdVRpZUVlSzJLNWNLdndERkR3IiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9TRmh3d0RpZUVlSzJLNWNLdndERkR3IiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1NGaHd3VGllRWVLMks1Y0t2d0RGRHciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfU0ZjNFFEaWVFZUsySzVjS3Z3REZEdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9TRmhKc1RpZUVlSzJLNWNLdndERkR3IiB4PSIyMzYiIHk9IjkwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il96WXM0a0VPSkVlS0UyODU4U3hzWDFnIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3pZdXR3RU9KRWVLRTI4NThTeHNYMWciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3pZdXR3VU9KRWVLRTI4NThTeHNYMWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il96WXV0d2tPSkVlS0UyODU4U3hzWDFnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3pZdXR3ME9KRWVLRTI4NThTeHNYMWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3pZdXR4RU9KRWVLRTI4NThTeHNYMWciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il96WXV0eFVPSkVlS0UyODU4U3hzWDFnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il96Y0VWb0VPSkVlS0UyODU4U3hzWDFnIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il96Y2JpQUVPSkVlS0UyODU4U3hzWDFnIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3pjYmlBVU9KRWVLRTI4NThTeHNYMWciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3pjYmlBa09KRWVLRTI4NThTeHNYMWciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il96Y2JpQTBPSkVlS0UyODU4U3hzWDFnIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il96Y2JpQkVPSkVlS0UyODU4U3hzWDFnIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3pZdXR4a09KRWVLRTI4NThTeHNYMWciIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfell1dHgwT0pFZUtFMjg1OFN4c1gxZyIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfell2VTBFT0pFZUtFMjg1OFN4c1gxZyIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il96WXZVMFVPSkVlS0UyODU4U3hzWDFnIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjX3pZYnkwRU9KRWVLRTI4NThTeHNYMWciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfellzNGtVT0pFZUtFMjg1OFN4c1gxZyIgeD0iLTEwIiB5PSIxMjkiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI19JbXBiZ0RpZUVlSzJLNWNLdndERkR3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9JbkFBMFRpZUVlSzJLNWNLdndERkR3IiB4PSIyODgiIHk9Ijg0IiB3aWR0aD0iMzkxIiBoZWlnaHQ9IjIzMSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9tdGwyWVRpZEVlSzJLNWNLdndERkR3Ii8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfeDZyVkFuN0xFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjX210YmVVRGlkRWVLMks1Y0t2d0RGRHciLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0JmTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI19tdGJlVURpZEVlSzJLNWNLdndERkR3Ii8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfLW9aTk1EaWVFZUsySzVjS3Z3REZEdyIgdHlwZT0iUGFweXJ1c1VNTFN0YXRlTWFjaGluZURpYWdyYW0iIG5hbWU9IlN0YXRlTWFjaGluZSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfLW9aTk1UaWVFZUsySzVjS3Z3REZEdyIgdHlwZT0iMjAwMCIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfLW9aTk1qaWVFZUsySzVjS3Z3REZEdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXy1vWk5NemllRWVLMks1Y0t2d0RGRHciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXy1vWk5ORGllRWVLMks1Y0t2d0RGRHciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXy1vWk5OVGllRWVLMks1Y0t2d0RGRHciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfLW9aTk5qaWVFZUsySzVjS3Z3REZEdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tb1pOTnppZUVlSzJLNWNLdndERkR3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfLW9aTk9EaWVFZUsySzVjS3Z3REZEdyIgdHlwZT0iMjAwMSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXy1vWk5PVGllRWVLMks1Y0t2d0RGRHciIHdpZHRoPSI4NzEiIGhlaWdodD0iMTciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8tb1pOT2ppZUVlSzJLNWNLdndERkR3IiB0eXBlPSIyMDAyIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfLW9aTk96aWVFZUsySzVjS3Z3REZEdyIgdHlwZT0iMzAwMCIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXy1vWk5QRGllRWVLMks1Y0t2d0RGRHciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfLW9aTlBUaWVFZUsySzVjS3Z3REZEdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8tb1pOUGppZUVlSzJLNWNLdndERkR3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfLW9aTlB6aWVFZUsySzVjS3Z3REZEdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXy1vWk5RRGllRWVLMks1Y0t2d0RGRHciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXy1vWk5RVGllRWVLMks1Y0t2d0RGRHciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8tb1pOUWppZUVlSzJLNWNLdndERkR3IiBzb3VyY2U9IlJlZ2lvbkFubm90YXRpb25LZXkiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tb1pOUXppZUVlSzJLNWNLdndERkR3IiBrZXk9IlJlZ2lvblpvbmVLZXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8tb1pOUkRpZUVlSzJLNWNLdndERkR3IiB0eXBlPSIzMDAyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1BCb3NnRGlmRWVLMks1Y0t2d0RGRHciIHR5cGU9IjgwMDAiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUEJvc2dqaWZFZUsySzVjS3Z3REZEdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUEJvc2d6aWZFZUsySzVjS3Z3REZEdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1BCb3NoRGlmRWVLMks1Y0t2d0RGRHciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUEJwVGtEaWZFZUsySzVjS3Z3REZEdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUEJwVGtUaWZFZUsySzVjS3Z3REZEdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1BCcFRramlmRWVLMks1Y0t2d0RGRHciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1BCMnU4RGlmRWVLMks1Y0t2d0RGRHciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1BCMnU4VGlmRWVLMks1Y0t2d0RGRHciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUEIydThqaWZFZUsySzVjS3Z3REZEdyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUEIydTh6aWZFZUsySzVjS3Z3REZEdyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUEIydTlEaWZFZUsySzVjS3Z3REZEdyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUEIzV0FEaWZFZUsySzVjS3Z3REZEdyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9QQnBUa3ppZkVlSzJLNWNLdndERkR3IiB0eXBlPSI4MDAxIj4KKyAgICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1BCcFRsRGlmRWVLMks1Y0t2d0RGRHciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1BCcFRsVGlmRWVLMks1Y0t2d0RGRHciIHR5cGU9IjgwMDIiPgorICAgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfUEJwVGxqaWZFZUsySzVjS3Z3REZEdyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBzZXVkb3N0YXRlIiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfUEJqTThEaWZFZUsySzVjS3Z3REZEdyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9QQm9zZ1RpZkVlSzJLNWNLdndERkR3IiB4PSI2ODAiIHk9IjY5Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfUWExVUVEaWZFZUsySzVjS3Z3REZEdyIgdHlwZT0iNjAwMCIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9RYTE3SURpZkVlSzJLNWNLdndERkR3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9RYTE3SVRpZkVlSzJLNWNLdndERkR3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUWExN0lqaWZFZUsySzVjS3Z3REZEdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9RYTE3SXppZkVlSzJLNWNLdndERkR3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9RYTE3SkRpZkVlSzJLNWNLdndERkR3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUWExN0pUaWZFZUsySzVjS3Z3REZEdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUWJEV2dEaWZFZUsySzVjS3Z3REZEdyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUWJEOWtEaWZFZUsySzVjS3Z3REZEdyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9RYkQ5a1RpZkVlSzJLNWNLdndERkR3IiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6U3RhdGUiLz4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1FiRDlramlmRWVLMks1Y0t2d0RGRHciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1FiRDlremlmRWVLMks1Y0t2d0RGRHciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1FiRDlsRGlmRWVLMks1Y0t2d0RGRHciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfUWExN0pqaWZFZUsySzVjS3Z3REZEdyIgdHlwZT0iNjAwMSI+CisgICAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTmowVmNEb2xFZUtQZmJZNGJqNmQ3dyIgd2lkdGg9IjE2NiIvPgorICAgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9RYTE3SnppZkVlSzJLNWNLdndERkR3IiB0eXBlPSI2MDAyIj4KKyAgICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9RYTE3S0RpZkVlSzJLNWNLdndERkR3IiB5PSItMSIgd2lkdGg9IjE2NiIgaGVpZ2h0PSIwIi8+CisgICAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RhdGUiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI19RYXlRd0RpZkVlSzJLNWNLdndERkR3Ii8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1FhMVVFVGlmRWVLMks1Y0t2d0RGRHciIHg9IjM1IiB5PSI0IiB3aWR0aD0iMTY2Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfUkZtSVVEaWZFZUsySzVjS3Z3REZEdyIgdHlwZT0iNjAwMCIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9SRm12WURpZkVlSzJLNWNLdndERkR3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9SRm12WVRpZkVlSzJLNWNLdndERkR3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUkZtdllqaWZFZUsySzVjS3Z3REZEdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9SRm12WXppZkVlSzJLNWNLdndERkR3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9SRm12WkRpZkVlSzJLNWNLdndERkR3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUkZtdlpUaWZFZUsySzVjS3Z3REZEdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUkZyQTBEaWZFZUsySzVjS3Z3REZEdyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUkZyQTBUaWZFZUsySzVjS3Z3REZEdyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9SRnJBMGppZkVlSzJLNWNLdndERkR3IiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6U3RhdGUiLz4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1JGckEwemlmRWVLMks1Y0t2d0RGRHciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1JGckExRGlmRWVLMks1Y0t2d0RGRHciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1JGckExVGlmRWVLMks1Y0t2d0RGRHciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfUkZtdlpqaWZFZUsySzVjS3Z3REZEdyIgdHlwZT0iNjAwMSI+CisgICAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTzlBVjhEb2xFZUtQZmJZNGJqNmQ3dyIgd2lkdGg9IjE1NiIvPgorICAgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9SRm12WnppZkVlSzJLNWNLdndERkR3IiB0eXBlPSI2MDAyIj4KKyAgICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9SRm12YURpZkVlSzJLNWNLdndERkR3IiB5PSItMSIgd2lkdGg9IjE1NiIgaGVpZ2h0PSIwIi8+CisgICAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RhdGUiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI19SRmlkOERpZkVlSzJLNWNLdndERkR3Ii8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1JGbUlVVGlmRWVLMks1Y0t2d0RGRHciIHg9IjM1IiB5PSIxOTQiIHdpZHRoPSIxNTYiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9SdExGc0RpZkVlSzJLNWNLdndERkR3IiB0eXBlPSI2MDAwIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1J0THN3RGlmRWVLMks1Y0t2d0RGRHciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1J0THN3VGlmRWVLMks1Y0t2d0RGRHciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9SdExzd2ppZkVlSzJLNWNLdndERkR3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1J0THN3emlmRWVLMks1Y0t2d0RGRHciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1J0THN4RGlmRWVLMks1Y0t2d0RGRHciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9SdExzeFRpZkVlSzJLNWNLdndERkR3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9SdFAtTURpZkVlSzJLNWNLdndERkR3IiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9SdFAtTVRpZkVlSzJLNWNLdndERkR3IiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1J0UC1NamlmRWVLMks1Y0t2d0RGRHciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpTdGF0ZSIvPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUnRQLU16aWZFZUsySzVjS3Z3REZEdyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUnRQLU5EaWZFZUsySzVjS3Z3REZEdyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUnRQLU5UaWZFZUsySzVjS3Z3REZEdyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9SdExzeGppZkVlSzJLNWNLdndERkR3IiB0eXBlPSI2MDAxIj4KKyAgICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9tNzF3OERpaEVlSzJLNWNLdndERkR3IiB3aWR0aD0iMTI0Ii8+CisgICAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1J0THN4emlmRWVLMks1Y0t2d0RGRHciIHR5cGU9IjYwMDIiPgorICAgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1J0THN5RGlmRWVLMks1Y0t2d0RGRHciIHk9Ii0xIiB3aWR0aD0iMTI0IiBoZWlnaHQ9IjAiLz4KKyAgICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGF0ZSIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjX1J0RVlBRGlmRWVLMks1Y0t2d0RGRHciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfUnRMRnNUaWZFZUsySzVjS3Z3REZEdyIgeD0iNjQ1IiB5PSIxODkiIHdpZHRoPSIxMjQiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8tb1pOUlRpZUVlSzJLNWNLdndERkR3Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlJlZ2lvbiIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjXy1vVEdrRGllRWVLMks1Y0t2d0RGRHciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8tb1pOUmppZUVlSzJLNWNLdndERkR3IiB3aWR0aD0iODcxIiBoZWlnaHQ9IjMyOSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8tb1pOUnppZUVlSzJLNWNLdndERkR3IiB5PSIxNyIgd2lkdGg9Ijg3MSIgaGVpZ2h0PSIzMjkiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0YXRlTWFjaGluZSIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjXzlKUVZzRGllRWVLMks1Y0t2d0RGRHciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXy1vWk5TRGllRWVLMks1Y0t2d0RGRHciIHg9IjMwIiB5PSIzMCIgd2lkdGg9Ijg3MSIgaGVpZ2h0PSIzNDYiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfLW9aTlNUaWVFZUsySzVjS3Z3REZEdyIvPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RhdGVNYWNoaW5lIiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfOUpRVnNEaWVFZUsySzVjS3Z3REZEdyIvPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9ZNFByb0RpbkVlSzJLNWNLdndERkR3IiB0eXBlPSI3MDAwIiBzb3VyY2U9Il9SdExGc0RpZkVlSzJLNWNLdndERkR3IiB0YXJnZXQ9Il9QQm9zZ0RpZkVlSzJLNWNLdndERkR3IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1k0WTFrRGluRWVLMks1Y0t2d0RGRHciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8yeTl5OERpbkVlSzJLNWNLdndERkR3IiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8yeTl5OFRpbkVlSzJLNWNLdndERkR3IiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6VHJhbnNpdGlvbiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzJ5OXk4amluRWVLMks1Y0t2d0RGRHciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSJSb2JvdE1MOjpUcmFuc2l0aW9uLmd1YXJkIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMnk5eTh6aW5FZUsySzVjS3Z3REZEdyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzJ5OXk5RGluRWVLMks1Y0t2d0RGRHciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9ZNFFTc0RpbkVlSzJLNWNLdndERkR3IiB0eXBlPSI3MDAxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9ZNFFTc1RpbkVlSzJLNWNLdndERkR3IiB4PSI0NyIgeT0iLTYzIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfWTRRU3NqaW5FZUsySzVjS3Z3REZEdyIgdHlwZT0iNzAwMiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfWTRRU3N6aW5FZUsySzVjS3Z3REZEdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1k0UVN0RGluRWVLMks1Y0t2d0RGRHciIHR5cGU9IjcwMDMiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1k0UVN0VGluRWVLMks1Y0t2d0RGRHciIHg9Ii0yMCIgeT0iLTk4Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9ZNFByb1RpbkVlSzJLNWNLdndERkR3IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpUcmFuc2l0aW9uIiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfWTRGVGtEaW5FZUsySzVjS3Z3REZEdyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfWTRQcm9qaW5FZUsySzVjS3Z3REZEdyIgcG9pbnRzPSJbNywgLTEyLCAtNzIsIDEwOV0kWzgzLCAtMTI0LCA0LCAtM10iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9ZNGhZY0RpbkVlSzJLNWNLdndERkR3IiBpZD0iKDAuMDE2MTI5MDMyMjU4MDY0NTE2LDAuMjE0Mjg1NzE0Mjg1NzE0MjcpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfWTRoWWNUaW5FZUsySzVjS3Z3REZEdyIgaWQ9IigwLjgsMC4zKSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX01Xck1BRGlvRWVLMks1Y0t2d0RGRHciIHR5cGU9IjcwMDAiIHNvdXJjZT0iX1BCb3NnRGlmRWVLMks1Y0t2d0RGRHciIHRhcmdldD0iX1J0TEZzRGlmRWVLMks1Y0t2d0RGRHciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfd0F2bVVEaXBFZUtTQXJkVXFDaGktQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfd0F2bVVUaXBFZUtTQXJkVXFDaGktQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NVzA5QURpb0VlSzJLNWNLdndERkR3IiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUDZGOWdEaXFFZUtTQXJkVXFDaGktQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6VHJhbnNpdGlvbiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1A2RjlnVGlxRWVLU0FyZFVxQ2hpLUEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpUcmFuc2l0aW9uIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUDZHa2tEaXFFZUtTQXJkVXFDaGktQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IlJvYm90TUw6OlRyYW5zaXRpb24uZ3VhcmQsUm9ib3RNTDo6VHJhbnNpdGlvbi5lZmZlY3QiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9QNkdra1RpcUVlS1NBcmRVcUNoaS1BIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUDZHa2tqaXFFZUtTQXJkVXFDaGktQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX01Xck1BemlvRWVLMks1Y0t2d0RGRHciIHR5cGU9IjcwMDEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX01Xck1CRGlvRWVLMks1Y0t2d0RGRHciIHg9IjI3IiB5PSItODciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9NV3JNQlRpb0VlSzJLNWNLdndERkR3IiB0eXBlPSI3MDAyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9NV3JNQmppb0VlSzJLNWNLdndERkR3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTVdyTUJ6aW9FZUsySzVjS3Z3REZEdyIgdHlwZT0iNzAwMyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9yNkMyc0RpcEVlS1NBcmRVcUNoaS1BIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NT1hTb0RpcUVlS1NBcmRVcUNoaS1BIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpUcmFuc2l0aW9uIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NT1g1c0RpcUVlS1NBcmRVcUNoaS1BIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6VHJhbnNpdGlvbiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTU9YNXNUaXFFZUtTQXJkVXFDaGktQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IixSb2JvdE1MOjpUcmFuc2l0aW9uLmVmZmVjdCxSb2JvdE1MOjpUcmFuc2l0aW9uLmd1YXJkIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NT1g1c2ppcUVlS1NBcmRVcUNoaS1BIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NT1g1c3ppcUVlS1NBcmRVcUNoaS1BIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTVdyekVEaW9FZUsySzVjS3Z3REZEdyIgeD0iLTEzIiB5PSItMTE4Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9NV3JNQVRpb0VlSzJLNWNLdndERkR3IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpUcmFuc2l0aW9uIiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfTVdnTTREaW9FZUsySzVjS3Z3REZEdyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfTVdyTUFqaW9FZUsySzVjS3Z3REZEdyIgcG9pbnRzPSJbMSwgMTAsIDE0LCAtMTIzXSRbNDksIDEzNCwgNjIsIDFdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfVEFXajBEaXFFZUtTQXJkVXFDaGktQSIgdHlwZT0iNzAwMCIgc291cmNlPSJfUnRMRnNEaWZFZUsySzVjS3Z3REZEdyIgdGFyZ2V0PSJfUnRMRnNEaWZFZUsySzVjS3Z3REZEdyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9UQWlLQURpcUVlS1NBcmRVcUNoaS1BIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcHd3SGtEaXNFZUtTQXJkVXFDaGktQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcHd3SGtUaXNFZUtTQXJkVXFDaGktQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlRyYW5zaXRpb24iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9wd3dIa2ppc0VlS1NBcmRVcUNoaS1BIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iUm9ib3RNTDo6VHJhbnNpdGlvbi5ndWFyZCxSb2JvdE1MOjpUcmFuc2l0aW9uLmVmZmVjdCIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3B3d0hremlzRWVLU0FyZFVxQ2hpLUEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9wd3d1b0Rpc0VlS1NBcmRVcUNoaS1BIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfVEFZWkFEaXFFZUtTQXJkVXFDaGktQSIgdHlwZT0iNzAwMSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVEFZWkFUaXFFZUtTQXJkVXFDaGktQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1RBWVpBamlxRWVLU0FyZFVxQ2hpLUEiIHR5cGU9IjcwMDIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1RBWVpBemlxRWVLU0FyZFVxQ2hpLUEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9UQVlaQkRpcUVlS1NBcmRVcUNoaS1BIiB0eXBlPSI3MDAzIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9UQVlaQlRpcUVlS1NBcmRVcUNoaS1BIiB4PSIyNTMiIHk9IjI4Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9UQVdqMFRpcUVlS1NBcmRVcUNoaS1BIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpUcmFuc2l0aW9uIiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfVEFFM0FEaXFFZUtTQXJkVXFDaGktQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfVEFXajBqaXFFZUtTQXJkVXFDaGktQSIgcG9pbnRzPSJbNjIsIC02LCAxNiwgMF0kWzYyLCAtOSwgMTYsIC0zXSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX1RBclQ4RGlxRWVLU0FyZFVxQ2hpLUEiIGlkPSIoMC44NzA5Njc3NDE5MzU0ODM5LDAuMzkyODU3MTQyODU3MTQyODUpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfdXZyZnNEaXNFZUtTQXJkVXFDaGktQSIgdHlwZT0iNzAwMCIgc291cmNlPSJfUnRMRnNEaWZFZUsySzVjS3Z3REZEdyIgdGFyZ2V0PSJfUkZtSVVEaWZFZUsySzVjS3Z3REZEdyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il91djQ3RURpc0VlS1NBcmRVcUNoaS1BIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRExwMG9EaXRFZUtTQXJkVXFDaGktQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRExwMG9UaXRFZUtTQXJkVXFDaGktQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlRyYW5zaXRpb24iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ETHAwb2ppdEVlS1NBcmRVcUNoaS1BIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iUm9ib3RNTDo6VHJhbnNpdGlvbi5ndWFyZCxSb2JvdE1MOjpUcmFuc2l0aW9uLmVmZmVjdCIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0RMcDBveml0RWVLU0FyZFVxQ2hpLUEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ETHFic0RpdEVlS1NBcmRVcUNoaS1BIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfdXZzR3dEaXNFZUtTQXJkVXFDaGktQSIgdHlwZT0iNzAwMSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdXZzR3dUaXNFZUtTQXJkVXFDaGktQSIgeD0iLTIiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfdXZzR3dqaXNFZUtTQXJkVXFDaGktQSIgdHlwZT0iNzAwMiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdXZzR3d6aXNFZUtTQXJkVXFDaGktQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3V2c0d4RGlzRWVLU0FyZFVxQ2hpLUEiIHR5cGU9IjcwMDMiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3V2c0d4VGlzRWVLU0FyZFVxQ2hpLUEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il91dnJmc1Rpc0VlS1NBcmRVcUNoaS1BIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpUcmFuc2l0aW9uIiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfdXZhWjhEaXNFZUtTQXJkVXFDaGktQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfdXZyZnNqaXNFZUtTQXJkVXFDaGktQSIgcG9pbnRzPSJbLTIwLCAzLCAyNzMsIDBdJFstMjk3LCAxNiwgLTQsIDEzXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX3V3Slp3RGlzRWVLU0FyZFVxQ2hpLUEiIGlkPSIoMC4wMTYxMjkwMzIyNTgwNjQ1MTYsMC44MzkyODU3MTQyODU3MTQzKSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX3V3Slp3VGlzRWVLU0FyZFVxQ2hpLUEiIGlkPSIoMC40MDgxNjMyNjUzMDYxMjI0NiwwLjc2Nzg1NzE0Mjg1NzE0MjkpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfU3FLeEVEaXRFZUtTQXJkVXFDaGktQSIgdHlwZT0iNzAwMCIgc291cmNlPSJfUkZtSVVEaWZFZUsySzVjS3Z3REZEdyIgdGFyZ2V0PSJfUWExVUVEaWZFZUsySzVjS3Z3REZEdyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9TcWFCb0RpdEVlS1NBcmRVcUNoaS1BIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYVVoTm9EaXRFZUtTQXJkVXFDaGktQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYVVoMHNEaXRFZUtTQXJkVXFDaGktQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlRyYW5zaXRpb24iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9hVWgwc1RpdEVlS1NBcmRVcUNoaS1BIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iUm9ib3RNTDo6VHJhbnNpdGlvbi5ndWFyZCIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2FVaDBzaml0RWVLU0FyZFVxQ2hpLUEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9hVWgwc3ppdEVlS1NBcmRVcUNoaS1BIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfU3FMWUlEaXRFZUtTQXJkVXFDaGktQSIgdHlwZT0iNzAwMSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfU3FMWUlUaXRFZUtTQXJkVXFDaGktQSIgeD0iNDAiIHk9Ii01NyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1NxTFlJaml0RWVLU0FyZFVxQ2hpLUEiIHR5cGU9IjcwMDIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1NxTFlJeml0RWVLU0FyZFVxQ2hpLUEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9TcUxZSkRpdEVlS1NBcmRVcUNoaS1BIiB0eXBlPSI3MDAzIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9TcUxZSlRpdEVlS1NBcmRVcUNoaS1BIiB4PSItMTMiIHk9Ii05MyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfU3FLeEVUaXRFZUtTQXJkVXFDaGktQSIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6VHJhbnNpdGlvbiIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjX1NwNlNZRGl0RWVLU0FyZFVxQ2hpLUEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX1NxS3hFaml0RWVLU0FyZFVxQ2hpLUEiIHBvaW50cz0iWzEsIC0xMCwgLTIyLCAxNTJdJFsyMSwgLTE5MCwgLTIsIC0yOF0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9TcXZZMERpdEVlS1NBcmRVcUNoaS1BIiBpZD0iKDAuNDEwMjU2NDEwMjU2NDEwMjQsMC4wKSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2J3T0p3RG9sRWVLUGZiWTRiajZkN3ciIGlkPSIoMC41NDIxNjg2NzQ2OTg3OTUxLDAuOTgyMTQyODU3MTQyODU3MSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9qVXFZY0RpdEVlS1NBcmRVcUNoaS1BIiB0eXBlPSI3MDAwIiBzb3VyY2U9Il9RYTFVRURpZkVlSzJLNWNLdndERkR3IiB0YXJnZXQ9Il9SRm1JVURpZkVlSzJLNWNLdndERkR3IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2pVNXBBRGl0RWVLU0FyZFVxQ2hpLUEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il93T0VUMERpdEVlS1NBcmRVcUNoaS1BIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il93T0VUMFRpdEVlS1NBcmRVcUNoaS1BIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6VHJhbnNpdGlvbiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3dPRVQwaml0RWVLU0FyZFVxQ2hpLUEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSJSb2JvdE1MOjpUcmFuc2l0aW9uLmd1YXJkLFJvYm90TUw6OlRyYW5zaXRpb24uZWZmZWN0Ii8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfd09FVDB6aXRFZUtTQXJkVXFDaGktQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3dPRVQxRGl0RWVLU0FyZFVxQ2hpLUEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9qVXFfZ0RpdEVlS1NBcmRVcUNoaS1BIiB0eXBlPSI3MDAxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9qVXFfZ1RpdEVlS1NBcmRVcUNoaS1BIiB4PSItNTYiIHk9Ii01NCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2pVcV9naml0RWVLU0FyZFVxQ2hpLUEiIHR5cGU9IjcwMDIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2pVcV9neml0RWVLU0FyZFVxQ2hpLUEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9qVXFfaERpdEVlS1NBcmRVcUNoaS1BIiB0eXBlPSI3MDAzIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9qVXFfaFRpdEVlS1NBcmRVcUNoaS1BIiB4PSItNDAiIHk9Ii0xMTUiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2pVcVljVGl0RWVLU0FyZFVxQ2hpLUEiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlRyYW5zaXRpb24iIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI19qVWJINERpdEVlS1NBcmRVcUNoaS1BIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9qVXFZY2ppdEVlS1NBcmRVcUNoaS1BIiBwb2ludHM9IlstMiwgMTMsIDI3LCAtMTU3XSRbLTI1LCAxOTgsIDQsIDI4XSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2pWT1pJRGl0RWVLU0FyZFVxQ2hpLUEiIGlkPSIoMC42NzM0NjkzODc3NTUxMDIsMC43Njc4NTcxNDI4NTcxNDI5KSIvPgorICAgIDwvZWRnZXM+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfdldhZW9EaWpFZUsySzVjS3Z3REZEdyIgdHlwZT0iUGFweXJ1c1VNTENsYXNzRGlhZ3JhbSIgbmFtZT0iQ2xhc3MiIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3dRWmFvRGlqRWVLMks1Y0t2d0RGRHciIHR5cGU9IjIwMDgiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3dRYUJzRGlqRWVLMks1Y0t2d0RGRHciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il93UWFCc1RpakVlSzJLNWNLdndERkR3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il93UWFCc2ppakVlSzJLNWNLdndERkR3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il93UWFvd0RpakVlSzJLNWNLdndERkR3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3dRYW93VGlqRWVLMks1Y0t2d0RGRHciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfd1Fhb3dqaWpFZUsySzVjS3Z3REZEdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3dRYW93emlqRWVLMks1Y0t2d0RGRHciIHR5cGU9IjUwMjkiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfd1Fhb3hEaWpFZUsySzVjS3Z3REZEdyIgdHlwZT0iNzAxNyI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzY4dkJnRGlqRWVLMks1Y0t2d0RGRHciIHR5cGU9IjMwMTIiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI182OG5zd0RpakVlSzJLNWNLdndERkR3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il82OHZCZ1RpakVlSzJLNWNLdndERkR3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0JzdXVvRGlrRWVLMks1Y0t2d0RGRHciIHR5cGU9IjMwMTIiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI19Cc2s5b0Rpa0VlSzJLNWNLdndERkR3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9Cc3V1b1Rpa0VlSzJLNWNLdndERkR3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0c0Um1jRGlrRWVLMks1Y0t2d0RGRHciIHR5cGU9IjMwMTIiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI19HNEgxY0Rpa0VlSzJLNWNLdndERkR3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HNFJtY1Rpa0VlSzJLNWNLdndERkR3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2RGTEdjRGlrRWVLMks1Y0t2d0RGRHciIHR5cGU9IjMwMTIiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI19kRkNqa0Rpa0VlSzJLNWNLdndERkR3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9kRkxHY1Rpa0VlSzJLNWNLdndERkR3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3RpTUFrRGltRWVLMks1Y0t2d0RGRHciIHR5cGU9IjMwMTIiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI190aUVFd0RpbUVlSzJLNWNLdndERkR3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il90aU1Ba1RpbUVlSzJLNWNLdndERkR3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3pOVjF3RU9NRWVLRTI4NThTeHNYMWciIHR5cGU9IjMwMTIiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI196Tk41OEVPTUVlS0UyODU4U3hzWDFnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il96TlYxd1VPTUVlS0UyODU4U3hzWDFnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzR6aGJJRU9NRWVLRTI4NThTeHNYMWciIHR5cGU9IjMwMTIiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI180emdOQUVPTUVlS0UyODU4U3hzWDFnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il80emhiSVVPTUVlS0UyODU4U3hzWDFnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzY1dVNvRU9NRWVLRTI4NThTeHNYMWciIHR5cGU9IjMwMTIiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI182NXBhSUVPTUVlS0UyODU4U3hzWDFnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il82NXVTb1VPTUVlS0UyODU4U3hzWDFnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXy1IdDRvRU9NRWVLRTI4NThTeHNYMWciIHR5cGU9IjMwMTIiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI18tSHFPUUVPTUVlS0UyODU4U3hzWDFnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8tSHQ0b1VPTUVlS0UyODU4U3hzWDFnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0FIVVk0RU9ORWVLRTI4NThTeHNYMWciIHR5cGU9IjMwMTIiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI19BSFBnWUVPTkVlS0UyODU4U3hzWDFnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9BSFVZNFVPTkVlS0UyODU4U3hzWDFnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0ZJR3lNRU9ORWVLRTI4NThTeHNYMWciIHR5cGU9IjMwMTIiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI19GSUU5QUVPTkVlS0UyODU4U3hzWDFnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9GSUd5TVVPTkVlS0UyODU4U3hzWDFnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3dRYW94VGlqRWVLMks1Y0t2d0RGRHciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il93UWFveGppakVlSzJLNWNLdndERkR3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il93UWFveHppakVlSzJLNWNLdndERkR3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3dRYW95RGlqRWVLMks1Y0t2d0RGRHciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3dRYlAwRGlqRWVLMks1Y0t2d0RGRHciIHR5cGU9IjcwMTgiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il95NkVMa0RpakVlSzJLNWNLdndERkR3IiB0eXBlPSIzMDEzIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfeTZOVmdEaWpFZUsySzVjS3Z3REZEdyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il95Nk5WZ1RpakVlSzJLNWNLdndERkR3IiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeTZOVmdqaWpFZUsySzVjS3Z3REZEdyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkFsZ29yaXRobSIvPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il95Nk5WZ3ppakVlSzJLNWNLdndERkR3IiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3k2TlZoRGlqRWVLMks1Y0t2d0RGRHciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeTZOVmhUaWpFZUsySzVjS3Z3REZEdyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI195NTVNY0RpakVlSzJLNWNLdndERkR3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il95NkVMa1RpakVlSzJLNWNLdndERkR3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1FHZDBVRGlrRWVLMks1Y0t2d0RGRHciIHR5cGU9IjMwMTMiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9RR2czb1Rpa0VlSzJLNWNLdndERkR3IiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1FHZzNvamlrRWVLMks1Y0t2d0RGRHciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9RR2czb3ppa0VlSzJLNWNLdndERkR3IiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6QWxnb3JpdGhtIi8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1FHZzNwRGlrRWVLMks1Y0t2d0RGRHciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUUdnM3BUaWtFZUsySzVjS3Z3REZEdyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9RR2czcGppa0VlSzJLNWNLdndERkR3IiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjX1FHWHRzRGlrRWVLMks1Y0t2d0RGRHciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1FHZDBVVGlrRWVLMks1Y0t2d0RGRHciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfbGVLS29EaWtFZUsySzVjS3Z3REZEdyIgdHlwZT0iMzAxMyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2xlTk44RGlrRWVLMks1Y0t2d0RGRHciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbGVOTjhUaWtFZUsySzVjS3Z3REZEdyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2xlTk44amlrRWVLMks1Y0t2d0RGRHciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpBbGdvcml0aG0iLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbGVOTjh6aWtFZUsySzVjS3Z3REZEdyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9sZU5OOURpa0VlSzJLNWNLdndERkR3IiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2xlTk45VGlrRWVLMks1Y0t2d0RGRHciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfbGVEYzhEaWtFZUsySzVjS3Z3REZEdyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfbGVLS29UaWtFZUsySzVjS3Z3REZEdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9xd1Rac0Rpa0VlSzJLNWNLdndERkR3IiB0eXBlPSIzMDEzIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcXdXZEFUaWtFZUsySzVjS3Z3REZEdyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9xd1hFRURpa0VlSzJLNWNLdndERkR3IiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcXdYRUVUaWtFZUsySzVjS3Z3REZEdyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkFsZ29yaXRobSIvPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9xd1hFRWppa0VlSzJLNWNLdndERkR3IiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3F3WEVFemlrRWVLMks1Y0t2d0RGRHciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcXdYRUZEaWtFZUsySzVjS3Z3REZEdyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI19xd0syMERpa0VlSzJLNWNLdndERkR3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9xd1Rac1Rpa0VlSzJLNWNLdndERkR3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1ZCQk5VRGlsRWVLMks1Y0t2d0RGRHciIHR5cGU9IjMwMTMiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9WQkUzc0RpbEVlSzJLNWNLdndERkR3IiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1ZCRTNzVGlsRWVLMks1Y0t2d0RGRHciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9WQkUzc2ppbEVlSzJLNWNLdndERkR3IiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6QWxnb3JpdGhtIi8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1ZCRTNzemlsRWVLMks1Y0t2d0RGRHciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVkJGZXdEaWxFZUsySzVjS3Z3REZEdyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9WQkZld1RpbEVlSzJLNWNLdndERkR3IiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjX1ZBNHFjRGlsRWVLMks1Y0t2d0RGRHciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1ZCQk5VVGlsRWVLMks1Y0t2d0RGRHciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfX0dpeXNEaW5FZUsySzVjS3Z3REZEdyIgdHlwZT0iMzAxMyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19HbDJBRGluRWVLMks1Y0t2d0RGRHciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX0dsMkFUaW5FZUsySzVjS3Z3REZEdyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19HbDJBamluRWVLMks1Y0t2d0RGRHciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpBbGdvcml0aG0iLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX0dsMkF6aW5FZUsySzVjS3Z3REZEdyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fR2wyQkRpbkVlSzJLNWNLdndERkR3IiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19HbDJCVGluRWVLMks1Y0t2d0RGRHciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfX0djc0VEaW5FZUsySzVjS3Z3REZEdyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfX0dpeXNUaW5FZUsySzVjS3Z3REZEdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9xYUQxTURpcUVlS1NBcmRVcUNoaS1BIiB0eXBlPSIzMDEzIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcWFIZmtEaXFFZUtTQXJkVXFDaGktQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9xYUhma1RpcUVlS1NBcmRVcUNoaS1BIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcWFIZmtqaXFFZUtTQXJkVXFDaGktQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkFsZ29yaXRobSIvPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9xYUhma3ppcUVlS1NBcmRVcUNoaS1BIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3FhSGZsRGlxRWVLU0FyZFVxQ2hpLUEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcWFIZmxUaXFFZUtTQXJkVXFDaGktQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI19xWjF5d0RpcUVlS1NBcmRVcUNoaS1BIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9xYUQxTVRpcUVlS1NBcmRVcUNoaS1BIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3dRYlAwVGlqRWVLMks1Y0t2d0RGRHciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il93UWJQMGppakVlSzJLNWNLdndERkR3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il93UWJQMHppakVlSzJLNWNLdndERkR3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3dRYlAxRGlqRWVLMks1Y0t2d0RGRHciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3dRbmRFRGlqRWVLMks1Y0t2d0RGRHciIHR5cGU9IjcwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il93UW5kRVRpakVlSzJLNWNLdndERkR3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfd1FuZEVqaWpFZUsySzVjS3Z3REZEdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfd1FuZEV6aWpFZUsySzVjS3Z3REZEdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il93UW5kRkRpakVlSzJLNWNLdndERkR3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjX0ltcGJnRGllRWVLMks1Y0t2d0RGRHciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3dRWmFvVGlqRWVLMks1Y0t2d0RGRHciIHg9IjEwNSIgeT0iMzAiIHdpZHRoPSI1MjYiIGhlaWdodD0iMjU2Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX3ZXYWVvVGlqRWVLMks1Y0t2d0RGRHciLz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfbXRiZVVEaWRFZUsySzVjS3Z3REZEdyIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX210c25VR1pBRWVLOHZlZHdSdTJNN3ciIHR5cGU9IkNvbXBvc2l0ZVN0cnVjdHVyZSIgbmFtZT0ic2Vuc29yRGlhZ3JhbSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfb2JrZVlHWkFFZUs4dmVkd1J1Mk03dyIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfb2Jsc2dHWkFFZUs4dmVkd1J1Mk03dyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29ibHNnV1pBRWVLOHZlZHdSdTJNN3ciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX29ibVRrR1pBRWVLOHZlZHdSdTJNN3ciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29ibVRrV1pBRWVLOHZlZHdSdTJNN3ciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfb2JtVGttWkFFZUs4dmVkd1J1Mk03dyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vYm1UazJaQUVlSzh2ZWR3UnUyTTd3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX29lM0M4R1pBRWVLOHZlZHdSdTJNN3ciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vZnRYZ0daQUVlSzh2ZWR3UnUyTTd3IiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vZnRYZ1daQUVlSzh2ZWR3UnUyTTd3IiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6U2Vuc29yU3lzdGVtIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb2Z0WGdtWkFFZUs4dmVkd1J1Mk03dyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vZnRYZzJaQUVlSzh2ZWR3UnUyTTd3IiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb2Z0WGhHWkFFZUs4dmVkd1J1Mk03dyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX29ibVRsR1pBRWVLOHZlZHdSdTJNN3ciIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfb2JtVGxXWkFFZUs4dmVkd1J1Mk03dyIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX29ibVRsbVpBRWVLOHZlZHdSdTJNN3ciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfb2JtVGwyWkFFZUs4dmVkd1J1Mk03dyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfb2dweXNHWkFFZUs4dmVkd1J1Mk03dyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IkFwcGxpZWRTdGVyZW90eXBlQ29tcGFydGVtZW50Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfb2dweXNXWkFFZUs4dmVkd1J1Mk03dyIgc2hvd1RpdGxlPSJ0cnVlIi8+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJSb2JvdE1MOlNlbnNvclN5c3RlbSIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjX29lMTAwR1pBRWVLOHZlZHdSdTJNN3ciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfb2dweXNtWkFFZUs4dmVkd1J1Mk03dyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3hyTVBvR1pBRWVLOHZlZHdSdTJNN3ciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfeHJNMnNXWkFFZUs4dmVkd1J1Mk03dyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeHJNMnNtWkFFZUs4dmVkd1J1Mk03dyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3hyTTJzMlpBRWVLOHZlZHdSdTJNN3ciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeHJNMnRHWkFFZUs4dmVkd1J1Mk03dyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfeHJNMnRXWkFFZUs4dmVkd1J1Mk03dyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3hyTTJ0bVpBRWVLOHZlZHdSdTJNN3ciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3hyVUxjR1pBRWVLOHZlZHdSdTJNN3ciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3hzS2dBR1pBRWVLOHZlZHdSdTJNN3ciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeHNLZ0FXWkFFZUs4dmVkd1J1Mk03dyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeHNLZ0FtWkFFZUs4dmVkd1J1Mk03dyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3hzS2dBMlpBRWVLOHZlZHdSdTJNN3ciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3hzS2dCR1pBRWVLOHZlZHdSdTJNN3ciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfeHJNMnQyWkFFZUs4dmVkd1J1Mk03dyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il94ck0ydUdaQUVlSzh2ZWR3UnUyTTd3IiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il94ck0ydVdaQUVlSzh2ZWR3UnUyTTd3IiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3hyTTJ1bVpBRWVLOHZlZHdSdTJNN3ciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfeHJGaDhHWkFFZUs4dmVkd1J1Mk03dyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il94ck0yc0daQUVlSzh2ZWR3UnUyTTd3IiB4PSIxODIiIHk9IjEwNCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjX29hNGg0R1pBRWVLOHZlZHdSdTJNN3ciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX29ia2VZV1pBRWVLOHZlZHdSdTJNN3ciIHg9IjIyOCIgeT0iMTIyIiB3aWR0aD0iMTkyIiBoZWlnaHQ9IjE1NSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfNkhMSUFHWkJFZUs4dmVkd1J1Mk03dyIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNkhMdkVHWkJFZUs4dmVkd1J1Mk03dyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZITHZFV1pCRWVLOHZlZHdSdTJNN3ciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzZITHZFbVpCRWVLOHZlZHdSdTJNN3ciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZITHZFMlpCRWVLOHZlZHdSdTJNN3ciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNkhMdkZHWkJFZUs4dmVkd1J1Mk03dyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il82SEx2RldaQkVlSzh2ZWR3UnUyTTd3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzZIUUFnR1pCRWVLOHZlZHdSdTJNN3ciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il82SHc5NEdaQkVlSzh2ZWR3UnUyTTd3IiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il82SHc5NFdaQkVlSzh2ZWR3UnUyTTd3IiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6Q2FtZXJhU3lzdGVtIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNkh3OTRtWkJFZUs4dmVkd1J1Mk03dyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il82SHhrOEdaQkVlSzh2ZWR3UnUyTTd3IiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNkh4azhXWkJFZUs4dmVkd1J1Mk03dyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzZITHZGbVpCRWVLOHZlZHdSdTJNN3ciIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfNkhMdkYyWkJFZUs4dmVkd1J1Mk03dyIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzZITHZHR1pCRWVLOHZlZHdSdTJNN3ciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfNkhMdkdXWkJFZUs4dmVkd1J1Mk03dyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfNklCY2tHWkJFZUs4dmVkd1J1Mk03dyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IkFwcGxpZWRTdGVyZW90eXBlQ29tcGFydGVtZW50Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfNklCY2tXWkJFZUs4dmVkd1J1Mk03dyIgc2hvd1RpdGxlPSJ0cnVlIi8+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJSb2JvdE1MOkNhbWVyYVN5c3RlbSIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjXzZIUFpjR1pCRWVLOHZlZHdSdTJNN3ciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfNklCY2ttWkJFZUs4dmVkd1J1Mk03dyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1lmWW5JR1pERWVLOHZlZHdSdTJNN3ciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfWWZaT01HWkRFZUs4dmVkd1J1Mk03dyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWWZaT01XWkRFZUs4dmVkd1J1Mk03dyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1lmWk9NbVpERWVLOHZlZHdSdTJNN3ciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWWZaT00yWkRFZUs4dmVkd1J1Mk03dyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfWWZaT05HWkRFZUs4dmVkd1J1Mk03dyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1lmWk9OV1pERWVLOHZlZHdSdTJNN3ciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1lmY1JnR1pERWVLOHZlZHdSdTJNN3ciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1lmNWtnR1pERWVLOHZlZHdSdTJNN3ciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWWY1a2dXWkRFZUs4dmVkd1J1Mk03dyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWWY1a2dtWkRFZUs4dmVkd1J1Mk03dyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1lmNWtnMlpERWVLOHZlZHdSdTJNN3ciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1lmNWtoR1pERWVLOHZlZHdSdTJNN3ciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfWWZaT05tWkRFZUs4dmVkd1J1Mk03dyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9ZZlpPTjJaREVlSzh2ZWR3UnUyTTd3IiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9ZZlpPT0daREVlSzh2ZWR3UnUyTTd3IiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1lmWk9PV1pERWVLOHZlZHdSdTJNN3ciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfWWZRclVHWkRFZUs4dmVkd1J1Mk03dyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9ZZlluSVdaREVlSzh2ZWR3UnUyTTd3IiB4PSI5NyIgeT0iNTIiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI182RzlGa0daQkVlSzh2ZWR3UnUyTTd3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il82SExJQVdaQkVlSzh2ZWR3UnUyTTd3IiB4PSI1NjAiIHk9IjUyIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX210c25VV1pBRWVLOHZlZHdSdTJNN3ciLz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJzdHlsZTpQYXB5cnVzVmlld1N0eWxlIiB4bWk6aWQ9Il94NnJWQTM3TEVlU0Z5TmJuTFlEQ2t3Ij4KKyAgICAgIDxvd25lciB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfbXRiZVVEaWRFZUsySzVjS3Z3REZEdyIvPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3pXQmZMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjX210YmVVRGlkRWVLMks1Y0t2d0RGRHciLz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9NZE1kRUdaQ0VlSzh2ZWR3UnUyTTd3IiB0eXBlPSJDb21wb3NpdGVTdHJ1Y3R1cmUiIG5hbWU9ImFjdHVhdG9yRGlhZ3JhbSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfTlBRTUlHWkNFZUs4dmVkd1J1Mk03dyIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTlBRek1HWkNFZUs4dmVkd1J1Mk03dyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX05QUXpNV1pDRWVLOHZlZHdSdTJNN3ciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX05QUmFRR1pDRWVLOHZlZHdSdTJNN3ciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX05QUmFRV1pDRWVLOHZlZHdSdTJNN3ciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTlBSYVFtWkNFZUs4dmVkd1J1Mk03dyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9OUFJhUTJaQ0VlSzh2ZWR3UnUyTTd3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX05QVzUwV1pDRWVLOHZlZHdSdTJNN3ciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9OUUxaTUdaQ0VlSzh2ZWR3UnUyTTd3IiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9OUUxaTVdaQ0VlSzh2ZWR3UnUyTTd3IiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6QWN0dWF0b3JTeXN0ZW0iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9OUUxaTW1aQ0VlSzh2ZWR3UnUyTTd3IiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX05RTUFRR1pDRWVLOHZlZHdSdTJNN3ciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9OUU1BUVdaQ0VlSzh2ZWR3UnUyTTd3IiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTlBSYVJHWkNFZUs4dmVkd1J1Mk03dyIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9OUFJhUldaQ0VlSzh2ZWR3UnUyTTd3IiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfTlBSYVJtWkNFZUs4dmVkd1J1Mk03dyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9OUFJhUjJaQ0VlSzh2ZWR3UnUyTTd3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9OUWZpUUdaQ0VlSzh2ZWR3UnUyTTd3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iQXBwbGllZFN0ZXJlb3R5cGVDb21wYXJ0ZW1lbnQiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9OUWZpUVdaQ0VlSzh2ZWR3UnUyTTd3IiBzaG93VGl0bGU9InRydWUiLz4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9IlJvYm90TUw6QWN0dWF0b3JTeXN0ZW0iIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI19OUFc1MEdaQ0VlSzh2ZWR3UnUyTTd3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX05RZmlRbVpDRWVLOHZlZHdSdTJNN3ciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il8tSk1XZ0daQ0VlSzh2ZWR3UnUyTTd3IiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXy1KTVdnbVpDRWVLOHZlZHdSdTJNN3ciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXy1KTVdnMlpDRWVLOHZlZHdSdTJNN3ciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8tSk1XaEdaQ0VlSzh2ZWR3UnUyTTd3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXy1KTVdoV1pDRWVLOHZlZHdSdTJNN3ciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXy1KTVdobVpDRWVLOHZlZHdSdTJNN3ciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tSk1XaDJaQ0VlSzh2ZWR3UnUyTTd3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8tSlBaMFdaQ0VlSzh2ZWR3UnUyTTd3IiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tSnZ3SUdaQ0VlSzh2ZWR3UnUyTTd3IiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXy1KdndJV1pDRWVLOHZlZHdSdTJNN3ciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXy1KdndJbVpDRWVLOHZlZHdSdTJNN3ciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tSnZ3STJaQ0VlSzh2ZWR3UnUyTTd3IiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tSnZ3SkdaQ0VlSzh2ZWR3UnUyTTd3IiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXy1KTVdpR1pDRWVLOHZlZHdSdTJNN3ciIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfLUpNOWtHWkNFZUs4dmVkd1J1Mk03dyIgeD0iLTEyNSIgeT0iOCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8tSk05a1daQ0VlSzh2ZWR3UnUyTTd3IiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXy1KTTlrbVpDRWVLOHZlZHdSdTJNN3ciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfLUktN0lHWkNFZUs4dmVkd1J1Mk03dyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8tSk1XZ1daQ0VlSzh2ZWR3UnUyTTd3IiB4PSItMTAiIHk9IjU0IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfTlBDSnNHWkNFZUs4dmVkd1J1Mk03dyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTlBRTUlXWkNFZUs4dmVkd1J1Mk03dyIgeD0iNDExIiB5PSIxMTQiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfTWRNZEVXWkNFZUs4dmVkd1J1Mk03dyIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX3g2clZCSDdMRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI19tdGJlVURpZEVlSzJLNWNLdndERkR3Ii8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBreldCZkxfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfbXRiZVVEaWRFZUsySzVjS3Z3REZEdyIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iXzBOTlkwSENtRWVLZkxkNzU4VE5tLXciIHR5cGU9IkNvbXBvc2l0ZVN0cnVjdHVyZSIgbmFtZT0iQXJjaGl0ZWN0dXJlRGlhZ3JhbSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfMTR1ZmNIQ21FZUtmTGQ3NThUTm0tdyIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMTR2R2dYQ21FZUtmTGQ3NThUTm0tdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzE0dkdnbkNtRWVLZkxkNzU4VE5tLXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzE0dkdnM0NtRWVLZkxkNzU4VE5tLXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzE0dkdoSENtRWVLZkxkNzU4VE5tLXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMTR2R2hYQ21FZUtmTGQ3NThUTm0tdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8xNHZHaG5DbUVlS2ZMZDc1OFRObS13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzE0NFFjSENtRWVLZkxkNzU4VE5tLXciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8xNTE1d0hDbUVlS2ZMZDc1OFRObS13IiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8xNTE1d1hDbUVlS2ZMZDc1OFRObS13IiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6Um9ib3QiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8xNTE1d25DbUVlS2ZMZDc1OFRObS13IiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzE1MTV3M0NtRWVLZkxkNzU4VE5tLXciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8xNTE1eEhDbUVlS2ZMZDc1OFRObS13IiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfMTR2R2gzQ21FZUtmTGQ3NThUTm0tdyIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il8xNHZHaUhDbUVlS2ZMZDc1OFRObS13IiB0eXBlPSI3MDczIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfOFBpM2tIQ21FZUtmTGQ3NThUTm0tdyIgdHlwZT0iMzA3MCIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzhQaTNrbkNtRWVLZkxkNzU4VE5tLXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOFBpM2szQ21FZUtmTGQ3NThUTm0tdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il84UGkzbEhDbUVlS2ZMZDc1OFRObS13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOFBqZW9IQ21FZUtmTGQ3NThUTm0tdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzhQamVvWENtRWVLZkxkNzU4VE5tLXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzhQamVvbkNtRWVLZkxkNzU4VE5tLXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzhQamVvM0NtRWVLZkxkNzU4VE5tLXciIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzhQamVwSENtRWVLZkxkNzU4VE5tLXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzhQamVwWENtRWVLZkxkNzU4VE5tLXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzhQamVwbkNtRWVLZkxkNzU4VE5tLXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXy1JN2JFSENtRWVLZkxkNzU4VE5tLXciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXy1JN2JFbkNtRWVLZkxkNzU4VE5tLXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tSTdiRTNDbUVlS2ZMZDc1OFRObS13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8tSTdiRkhDbUVlS2ZMZDc1OFRObS13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tSTdiRlhDbUVlS2ZMZDc1OFRObS13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXy1JN2JGbkNtRWVLZkxkNzU4VE5tLXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfLUk3YkYzQ21FZUtmTGQ3NThUTm0tdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXy1JN2JHSENtRWVLZkxkNzU4VE5tLXciIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXy1JN2JHWENtRWVLZkxkNzU4VE5tLXciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfLUk3YkduQ21FZUtmTGQ3NThUTm0tdyIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfLUk3YkczQ21FZUtmTGQ3NThUTm0tdyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjX1FCVWRVRGllRWVLMks1Y0t2d0RGRHciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXy1JN2JFWENtRWVLZkxkNzU4VE5tLXciIHg9Ii0xMCIgeT0iNzIiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXy1JOENJSENtRWVLZkxkNzU4VE5tLXciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXy1JOENJbkNtRWVLZkxkNzU4VE5tLXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tSThDSTNDbUVlS2ZMZDc1OFRObS13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8tSThDSkhDbUVlS2ZMZDc1OFRObS13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tSThDSlhDbUVlS2ZMZDc1OFRObS13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXy1JOENKbkNtRWVLZkxkNzU4VE5tLXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfLUk4cE1IQ21FZUtmTGQ3NThUTm0tdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXy1JOHBNWENtRWVLZkxkNzU4VE5tLXciIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXy1JOHBNbkNtRWVLZkxkNzU4VE5tLXciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfLUk4cE0zQ21FZUtmTGQ3NThUTm0tdyIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfLUk4cE5IQ21FZUtmTGQ3NThUTm0tdyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjX1NGYzRRRGllRWVLMks1Y0t2d0RGRHciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXy1JOENJWENtRWVLZkxkNzU4VE5tLXciIHg9IjI4OCIgeT0iMzYiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXy1JOHBOWENtRWVLZkxkNzU4VE5tLXciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXy1JOHBOM0NtRWVLZkxkNzU4VE5tLXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tSThwT0hDbUVlS2ZMZDc1OFRObS13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8tSThwT1hDbUVlS2ZMZDc1OFRObS13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tSThwT25DbUVlS2ZMZDc1OFRObS13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXy1JOHBPM0NtRWVLZkxkNzU4VE5tLXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfLUk4cFBIQ21FZUtmTGQ3NThUTm0tdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXy1JOVFRSENtRWVLZkxkNzU4VE5tLXciIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXy1JOVFRWENtRWVLZkxkNzU4VE5tLXciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfLUk5UVFuQ21FZUtmTGQ3NThUTm0tdyIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfLUk5UVEzQ21FZUtmTGQ3NThUTm0tdyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjX3pZYnkwRU9KRWVLRTI4NThTeHNYMWciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXy1JOHBObkNtRWVLZkxkNzU4VE5tLXciIHg9Ii0xMCIgeT0iMiIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjXzhQY3c4SENtRWVLZkxkNzU4VE5tLXciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il84UGkza1hDbUVlS2ZMZDc1OFRObS13IiB4PSI0OTEiIHk9Ijc3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0FhWFNNSENuRWVLZkxkNzU4VE5tLXciIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9BYVhTTW5DbkVlS2ZMZDc1OFRObS13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0FhWFNNM0NuRWVLZkxkNzU4VE5tLXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQWFYNVFIQ25FZUtmTGQ3NThUTm0tdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0FhWDVRWENuRWVLZkxkNzU4VE5tLXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9BYVg1UW5DbkVlS2ZMZDc1OFRObS13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9BYVg1UTNDbkVlS2ZMZDc1OFRObS13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9BYVg1UkhDbkVlS2ZMZDc1OFRObS13IiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9BYVg1UlhDbkVlS2ZMZDc1OFRObS13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9BYVg1Um5DbkVlS2ZMZDc1OFRObS13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9BYVg1UjNDbkVlS2ZMZDc1OFRObS13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9CbkFyZ0hDbkVlS2ZMZDc1OFRObS13IiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9CbkJTa0hDbkVlS2ZMZDc1OFRObS13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQm5CU2tYQ25FZUtmTGQ3NThUTm0tdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQm5CU2tuQ25FZUtmTGQ3NThUTm0tdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQm5CU2szQ25FZUtmTGQ3NThUTm0tdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9CbkJTbEhDbkVlS2ZMZDc1OFRObS13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0JuQlNsWENuRWVLZkxkNzU4VE5tLXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9CbkJTbG5DbkVlS2ZMZDc1OFRObS13IiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9CbkJTbDNDbkVlS2ZMZDc1OFRObS13IiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0JuQjVvSENuRWVLZkxkNzU4VE5tLXciIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0JuQjVvWENuRWVLZkxkNzU4VE5tLXciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI18tSS03SUdaQ0VlSzh2ZWR3UnUyTTd3Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9CbkFyZ1hDbkVlS2ZMZDc1OFRObS13IiB4PSItMTAiIHk9IjI5Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfQWFQOWNIQ25FZUtmTGQ3NThUTm0tdyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0FhWFNNWENuRWVLZkxkNzU4VE5tLXciIHg9Ijg4NyIgeT0iNzIiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfem9SRFFIQ25FZUtmTGQ3NThUTm0tdyIgdHlwZT0iMzA3MCIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3pvUkRRbkNuRWVLZkxkNzU4VE5tLXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfem9SRFEzQ25FZUtmTGQ3NThUTm0tdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il96b1JEUkhDbkVlS2ZMZDc1OFRObS13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfem9SRFJYQ25FZUtmTGQ3NThUTm0tdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3pvUkRSbkNuRWVLZkxkNzU4VE5tLXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3pvUkRSM0NuRWVLZkxkNzU4VE5tLXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3pvUnFVSENuRWVLZkxkNzU4VE5tLXciIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3pvUnFVWENuRWVLZkxkNzU4VE5tLXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3pvUnFVbkNuRWVLZkxkNzU4VE5tLXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3pvUnFVM0NuRWVLZkxkNzU4VE5tLXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzEzRzVZSENuRWVLZkxkNzU4VE5tLXciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzEzSGdjSENuRWVLZkxkNzU4VE5tLXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8xM0hnY1hDbkVlS2ZMZDc1OFRObS13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8xM0lIZ0hDbkVlS2ZMZDc1OFRObS13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8xM0lIZ1hDbkVlS2ZMZDc1OFRObS13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzEzSUhnbkNuRWVLZkxkNzU4VE5tLXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMTNJSGczQ25FZUtmTGQ3NThUTm0tdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9PSWI5Z0ozU0VlS0JYTUtZUlJiMjF3IiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT0liOWdaM1NFZUtCWE1LWVJSYjIxdyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT0lja2tKM1NFZUtCWE1LWVJSYjIxdyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX09JY2trWjNTRWVLQlhNS1lSUmIyMXciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9PSWNra3AzU0VlS0JYTUtZUlJiMjF3IiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT0lja2s1M1NFZUtCWE1LWVJSYjIxdyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzEzSUhoSENuRWVLZkxkNzU4VE5tLXciIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzEzSUhoWENuRWVLZkxkNzU4VE5tLXciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfMTNJdWtIQ25FZUtmTGQ3NThUTm0tdyIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMTNJdWtYQ25FZUtmTGQ3NThUTm0tdyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjX2RxMWlvSENuRWVLZkxkNzU4VE5tLXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzEzRzVZWENuRWVLZkxkNzU4VE5tLXciIHg9IjE4NCIgeT0iMjUiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI196b0hTUUhDbkVlS2ZMZDc1OFRObS13Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfem9SRFFYQ25FZUtmTGQ3NThUTm0tdyIgeD0iMTAwIiB5PSIyOCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il8wSDlQOEhDbkVlS2ZMZDc1OFRObS13IiB0eXBlPSIzMDcwIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMEg5UDhuQ25FZUtmTGQ3NThUTm0tdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wSDlQODNDbkVlS2ZMZDc1OFRObS13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzBIOVA5SENuRWVLZkxkNzU4VE5tLXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wSDkzQUhDbkVlS2ZMZDc1OFRObS13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMEg5M0FYQ25FZUtmTGQ3NThUTm0tdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMEg5M0FuQ25FZUtmTGQ3NThUTm0tdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfMEg5M0EzQ25FZUtmTGQ3NThUTm0tdyIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfMEg5M0JIQ25FZUtmTGQ3NThUTm0tdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfMEg5M0JYQ25FZUtmTGQ3NThUTm0tdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMEg5M0JuQ25FZUtmTGQ3NThUTm0tdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfNUdLUFVIQ25FZUtmTGQ3NThUTm0tdyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNUdLMllYQ25FZUtmTGQ3NThUTm0tdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzVHSzJZbkNuRWVLZkxkNzU4VE5tLXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzVHSzJZM0NuRWVLZkxkNzU4VE5tLXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzVHSzJaSENuRWVLZkxkNzU4VE5tLXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNUdLMlpYQ25FZUtmTGQ3NThUTm0tdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il81R0syWm5DbkVlS2ZMZDc1OFRObS13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1lIWEV3SjNTRWVLQlhNS1lSUmIyMXciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ZSFhFd1ozU0VlS0JYTUtZUlJiMjF3IiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ZSFhFd3AzU0VlS0JYTUtZUlJiMjF3IiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWUhYRXc1M1NFZUtCWE1LWVJSYjIxdyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1lIWEV4SjNTRWVLQlhNS1lSUmIyMXciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ZSFhFeFozU0VlS0JYTUtZUlJiMjF3IiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfNUdLMlozQ25FZUtmTGQ3NThUTm0tdyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfNUdLMmFIQ25FZUtmTGQ3NThUTm0tdyIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il81R0syYVhDbkVlS2ZMZDc1OFRObS13IiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il81R0syYW5DbkVlS2ZMZDc1OFRObS13IiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfb2pPQmNIQ25FZUtmTGQ3NThUTm0tdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfNUdLMllIQ25FZUtmTGQ3NThUTm0tdyIgeD0iMjQyIiB5PSIyNCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjXzBIeENzSENuRWVLZkxkNzU4VE5tLXciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8wSDlQOFhDbkVlS2ZMZDc1OFRObS13IiB4PSI5NCIgeT0iMTQ5Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzE0dkdpWENtRWVLZkxkNzU4VE5tLXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMTR2R2luQ21FZUtmTGQ3NThUTm0tdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI18xNGk1UUhDbUVlS2ZMZDc1OFRObS13Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8xNHZHZ0hDbUVlS2ZMZDc1OFRObS13IiB4PSIyNCIgeT0iMzQiIHdpZHRoPSIxMDQ1IiBoZWlnaHQ9IjM2MyIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il8wTk5ZMFhDbUVlS2ZMZDc1OFRObS13Ii8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfeDZyVkJYN0xFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjX210YmVVRGlkRWVLMks1Y0t2d0RGRHciLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0FQTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI19tdGJlVURpZEVlSzJLNWNLdndERkR3Ii8+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX0M1QnRBSENuRWVLZkxkNzU4VE5tLXciIHR5cGU9IjQwMTMiIHNvdXJjZT0iXy1JOENJSENtRWVLZkxkNzU4VE5tLXciIHRhcmdldD0iX0JuQXJnSENuRWVLZkxkNzU4VE5tLXciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9DNUNVRUhDbkVlS2ZMZDc1OFRObS13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQzVDVUVYQ25FZUtmTGQ3NThUTm0tdyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9DNUNVRW5DbkVlS2ZMZDc1OFRObS13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQzVDVUUzQ25FZUtmTGQ3NThUTm0tdyIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfQzVDVUZIQ25FZUtmTGQ3NThUTm0tdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0M1QzdJSENuRWVLZkxkNzU4VE5tLXciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfQzVDN0lYQ25FZUtmTGQ3NThUTm0tdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0M1QzdJbkNuRWVLZkxkNzU4VE5tLXciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9DNUJ0QVhDbkVlS2ZMZDc1OFRObS13IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI19DNDV4TUhDbkVlS2ZMZDc1OFRObS13Ii8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9DNUJ0QW5DbkVlS2ZMZDc1OFRObS13IiBwb2ludHM9IlsxMCwgMCwgLTE4NSwgLTEyXSRbMTkxLCAyLCAtNCwgLTEwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iXzZ1UU9nSENuRWVLZkxkNzU4VE5tLXciIHR5cGU9IjQwMTMiIHNvdXJjZT0iXzEzRzVZSENuRWVLZkxkNzU4VE5tLXciIHRhcmdldD0iXy1JOHBOWENtRWVLZkxkNzU4VE5tLXciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il82dVFPZzNDbkVlS2ZMZDc1OFRObS13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfNnVRT2hIQ25FZUtmTGQ3NThUTm0tdyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il82dVFPaFhDbkVlS2ZMZDc1OFRObS13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfNnVRT2huQ25FZUtmTGQ3NThUTm0tdyIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfNnVRT2gzQ25FZUtmTGQ3NThUTm0tdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzZ1UU9pSENuRWVLZkxkNzU4VE5tLXciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfNnVRT2lYQ25FZUtmTGQ3NThUTm0tdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzZ1UU9pbkNuRWVLZkxkNzU4VE5tLXciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il82dVFPZ1hDbkVlS2ZMZDc1OFRObS13IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI182dUYyY0hDbkVlS2ZMZDc1OFRObS13Ii8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il82dVFPZ25DbkVlS2ZMZDc1OFRObS13IiBwb2ludHM9IlsxMCwgMywgLTE4NywgLTY5XSRbMTg3LCA2OCwgLTEwLCAtNF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il8tQnVLWUhDbkVlS2ZMZDc1OFRObS13IiB0eXBlPSI0MDEzIiBzb3VyY2U9Il81R0tQVUhDbkVlS2ZMZDc1OFRObS13IiB0YXJnZXQ9Il8tSTdiRUhDbUVlS2ZMZDc1OFRObS13IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfLUJ1eGNIQ25FZUtmTGQ3NThUTm0tdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXy1CdXhjWENuRWVLZkxkNzU4VE5tLXciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfLUJ1eGNuQ25FZUtmTGQ3NThUTm0tdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXy1CdXhjM0NuRWVLZkxkNzU4VE5tLXciIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXy1CdXhkSENuRWVLZkxkNzU4VE5tLXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8tQnV4ZFhDbkVlS2ZMZDc1OFRObS13IiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXy1CdXhkbkNuRWVLZkxkNzU4VE5tLXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8tQnV4ZDNDbkVlS2ZMZDc1OFRObS13IiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfLUJ1S1lYQ25FZUtmTGQ3NThUTm0tdyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfLUJndkFIQ25FZUtmTGQ3NThUTm0tdyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfLUJ1S1luQ25FZUtmTGQ3NThUTm0tdyIgcG9pbnRzPSJbMTAsIC02LCAtMTM1LCA3OF0kWzE0OCwgLTk0LCAzLCAtMTBdIi8+CisgICAgPC9lZGdlcz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9QMWNnSUhDbkVlS2ZMZDc1OFRObS13IiB0eXBlPSJDb21wb3NpdGVTdHJ1Y3R1cmUiIG5hbWU9IlNlbnNvcnNEaWFncmFtIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9SSUplSUhDbkVlS2ZMZDc1OFRObS13IiB0eXBlPSIyMDczIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9SSUtGTUhDbkVlS2ZMZDc1OFRObS13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUklLRk1YQ25FZUtmTGQ3NThUTm0tdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUklLRk1uQ25FZUtmTGQ3NThUTm0tdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUklLRk0zQ25FZUtmTGQ3NThUTm0tdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9SSUtGTkhDbkVlS2ZMZDc1OFRObS13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1JJS0ZOWENuRWVLZkxkNzU4VE5tLXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUklPV29IQ25FZUtmTGQ3NThUTm0tdyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1JKTjFJSENuRWVLZkxkNzU4VE5tLXciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1JKT2NNSENuRWVLZkxkNzU4VE5tLXciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpTZW5zb3JTeXN0ZW0iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9SSk9jTVhDbkVlS2ZMZDc1OFRObS13IiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1JKT2NNbkNuRWVLZkxkNzU4VE5tLXciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9SSk9jTTNDbkVlS2ZMZDc1OFRObS13IiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfUklLRk5uQ25FZUtmTGQ3NThUTm0tdyIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9SSUtGTjNDbkVlS2ZMZDc1OFRObS13IiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfUklLRk9IQ25FZUtmTGQ3NThUTm0tdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9SSUtGT1hDbkVlS2ZMZDc1OFRObS13Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9SSmNlb0hDbkVlS2ZMZDc1OFRObS13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iQXBwbGllZFN0ZXJlb3R5cGVDb21wYXJ0ZW1lbnQiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9SSmNlb1hDbkVlS2ZMZDc1OFRObS13IiBzaG93VGl0bGU9InRydWUiLz4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9IlJvYm90TUw6U2Vuc29yU3lzdGVtIiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfUklOdmtIQ25FZUtmTGQ3NThUTm0tdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9SSmNlb25DbkVlS2ZMZDc1OFRObS13Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZHJaalVIQ25FZUtmTGQ3NThUTm0tdyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9kclpqVW5DbkVlS2ZMZDc1OFRObS13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9kclpqVTNDbkVlS2ZMZDc1OFRObS13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZHJaalZIQ25FZUtmTGQ3NThUTm0tdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9kclpqVlhDbkVlS2ZMZDc1OFRObS13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9kclpqVm5DbkVlS2ZMZDc1OFRObS13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZHJaalYzQ25FZUtmTGQ3NThUTm0tdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9kclpqV0hDbkVlS2ZMZDc1OFRObS13IiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2RyWmpXWENuRWVLZkxkNzU4VE5tLXciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2RyWmpXbkNuRWVLZkxkNzU4VE5tLXciIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZHJaalczQ25FZUtmTGQ3NThUTm0tdyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI19kcTFpb0hDbkVlS2ZMZDc1OFRObS13Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2RyWmpVWENuRWVLZkxkNzU4VE5tLXciIHg9IjkwIiB5PSI1NyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjX1JINjBvSENuRWVLZkxkNzU4VE5tLXciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1JJSmVJWENuRWVLZkxkNzU4VE5tLXciIHg9IjMwNyIgeT0iOTciLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1hoODQwSENuRWVLZkxkNzU4VE5tLXciIHR5cGU9IjIwNzMiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1hoODQwbkNuRWVLZkxkNzU4VE5tLXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9YaDg0MDNDbkVlS2ZMZDc1OFRObS13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9YaDlmNEhDbkVlS2ZMZDc1OFRObS13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9YaDlmNFhDbkVlS2ZMZDc1OFRObS13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1hoOWY0bkNuRWVLZkxkNzU4VE5tLXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWGg5ZjQzQ25FZUtmTGQ3NThUTm0tdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9YaUFqTVhDbkVlS2ZMZDc1OFRObS13IiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWGlwY1lIQ25FZUtmTGQ3NThUTm0tdyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWGlwY1lYQ25FZUtmTGQ3NThUTm0tdyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlNlbnNvclN5c3RlbSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1hpcGNZbkNuRWVLZkxkNzU4VE5tLXciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWGlwY1kzQ25FZUtmTGQ3NThUTm0tdyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1hpcGNaSENuRWVLZkxkNzU4VE5tLXciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9YaDlmNUhDbkVlS2ZMZDc1OFRObS13IiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1hoOWY1WENuRWVLZkxkNzU4VE5tLXciIHR5cGU9IjcwNzMiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9YaDlmNW5DbkVlS2ZMZDc1OFRObS13Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1hoOWY1M0NuRWVLZkxkNzU4VE5tLXciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1hpNTdFSENuRWVLZkxkNzU4VE5tLXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJBcHBsaWVkU3RlcmVvdHlwZUNvbXBhcnRlbWVudCI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1hpNTdFWENuRWVLZkxkNzU4VE5tLXciIHNob3dUaXRsZT0idHJ1ZSIvPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0iUm9ib3RNTDpTZW5zb3JTeXN0ZW0iIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI19YaUFqTUhDbkVlS2ZMZDc1OFRObS13Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1hpNTdFbkNuRWVLZkxkNzU4VE5tLXciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9vamFPc0hDbkVlS2ZMZDc1OFRObS13IiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX29qYU9zbkNuRWVLZkxkNzU4VE5tLXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29qYU9zM0NuRWVLZkxkNzU4VE5tLXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9vamFPdEhDbkVlS2ZMZDc1OFRObS13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29qYU90WENuRWVLZkxkNzU4VE5tLXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX29qYTF3SENuRWVLZkxkNzU4VE5tLXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vamExd1hDbkVlS2ZMZDc1OFRObS13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX29qYTF3bkNuRWVLZkxkNzU4VE5tLXciIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfb2phMXczQ25FZUtmTGQ3NThUTm0tdyIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfb2phMXhIQ25FZUtmTGQ3NThUTm0tdyIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9vamExeFhDbkVlS2ZMZDc1OFRObS13IiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iU2VhcmNoTGFuZGluZy51bWwjX29qT0JjSENuRWVLZkxkNzU4VE5tLXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfb2phT3NYQ25FZUtmTGQ3NThUTm0tdyIgeD0iOTciIHk9IjU3IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfWGhwVzBIQ25FZUtmTGQ3NThUTm0tdyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfWGg4NDBYQ25FZUtmTGQ3NThUTm0tdyIgeD0iMzA1IiB5PSIyMTgiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfUDFjZ0lYQ25FZUtmTGQ3NThUTm0tdyIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX3g2clZCbjdMRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IlNlYXJjaExhbmRpbmcudW1sI19tdGJlVURpZEVlSzJLNWNLdndERkR3Ii8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBreldCZkxfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJTZWFyY2hMYW5kaW5nLnVtbCNfbXRiZVVEaWRFZUsySzVjS3Z3REZEdyIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxjc3M6TW9kZWxTdHlsZVNoZWV0cyB4bWk6aWQ9Il9hX2dWTU15b0VlU2J3XzdacXMwS2hRIi8+Cis8L3htaTpYTUk+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3Jlc291cmNlL1NlYXJjaExhbmRpbmcudW1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9yZXNvdXJjZS9TZWFyY2hMYW5kaW5nLnVtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zODE0ZDczCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9yZXNvdXJjZS9TZWFyY2hMYW5kaW5nLnVtbApAQCAtMCwwICsxLDMwOSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzx4bWk6WE1JIHhtaTp2ZXJzaW9uPSIyMDEzMTAwMSIgeG1sbnM6eG1pPSJodHRwOi8vd3d3Lm9tZy5vcmcvc3BlYy9YTUkvMjAxMzEwMDEiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zOlJvYm90TUw9Imh0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMSIgeG1sbnM6ZWNvcmU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUiIHhtbG5zOnVtbD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCI+CisgIDx1bWw6TW9kZWwgeG1pOmlkPSJfbXRiZVVEaWRFZUsySzVjS3Z3REZEdyIgbmFtZT0iUm9ib3RNTE1vZGVsIj4KKyAgICA8cGFja2FnZUltcG9ydCB4bWk6dHlwZT0idW1sOlBhY2thZ2VJbXBvcnQiIHhtaTppZD0iX3lyWWVFRGlkRWVLMks1Y0t2d0RGRHciPgorICAgICAgPGltcG9ydGVkUGFja2FnZSB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfX0dJa3dBTElFZUN0WU1YcHBmcUxNdyIvPgorICAgIDwvcGFja2FnZUltcG9ydD4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgeG1pOmlkPSJfX0ZOUGtEaWZFZUsySzVjS3Z3REZEdyIgbmFtZT0iaW50Ii8+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIHhtaTppZD0iX0M0dDljRGlnRWVLMks1Y0t2d0RGRHciIG5hbWU9ImJvb2wiLz4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgeG1pOmlkPSJfX2t6allEaWtFZUsySzVjS3Z3REZEdyIgbmFtZT0iZG91YmxlIi8+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9OUENKc0daQ0VlSzh2ZWR3UnUyTTd3IiBuYW1lPSJBY3R1YXRvclN5c3RlbTEiPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfLUktN0lHWkNFZUs4dmVkd1J1Mk03dyIgbmFtZT0iVGFyZ2V0IiB2aXNpYmlsaXR5PSJwdWJsaWMiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfMV8tNW9BSDVFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9fRVphZ0daQ0VlSzh2ZWR3UnUyTTd3IiB2YWx1ZT0iMSIvPgorICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9fRWJQc0daQ0VlSzh2ZWR3UnUyTTd3IiB2YWx1ZT0iMSIvPgorICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfX0VkcjhHWkNFZUs4dmVkd1J1Mk03dyI+CisgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfcUdtOGdHWkRFZUs4dmVkd1J1Mk03dyIgbmFtZT0iUm9ib3QiPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX0FjMWlNR1pGRWVLOHZlZHdSdTJNN3ciIG5hbWU9IkFjdHVhdG9yU3lzdGVtMTEiIHR5cGU9Il9OUENKc0daQ0VlSzh2ZWR3UnUyTTd3Ii8+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfYUZqbzBHWkZFZUs4dmVkd1J1Mk03dyIgbmFtZT0iU2VhcmNoTGFuZGluZ1NpdGUiIHR5cGU9Il9JbXBiZ0RpZUVlSzJLNWNLdndERkR3Ii8+CisgICAgICA8bmVzdGVkQ2xhc3NpZmllciB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9vYTRoNEdaQUVlSzh2ZWR3UnUyTTd3IiBuYW1lPSJHeXJvc2NvcGUiPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il94ckZoOEdaQUVlSzh2ZWR3UnUyTTd3IiBuYW1lPSJpbnBvcnRfZ3lybyIgdmlzaWJpbGl0eT0icHVibGljIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xYVMyb0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfeDg3ZjRHWkFFZUs4dmVkd1J1Mk03dyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il94ODdmNFdaQUVlSzh2ZWR3UnUyTTd3IiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il94ODh1QUdaQUVlSzh2ZWR3UnUyTTd3Ij4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8L25lc3RlZENsYXNzaWZpZXI+CisgICAgICA8bmVzdGVkQ2xhc3NpZmllciB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il82RzlGa0daQkVlSzh2ZWR3UnUyTTd3IiBuYW1lPSJDYW1lcmFTeXN0ZW0iPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9ZZlFyVUdaREVlSzh2ZWR3UnUyTTd3IiBuYW1lPSJDYW1lcmEiIHZpc2liaWxpdHk9InB1YmxpYyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX21KRGE4QUt1RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9ZLXZjb0daREVlSzh2ZWR3UnUyTTd3IiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX1ktd0RzR1pERWVLOHZlZHdSdTJNN3ciIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX1ktd3F3R1pERWVLOHZlZHdSdTJNN3ciPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDwvbmVzdGVkQ2xhc3NpZmllcj4KKyAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX0ltcGJnRGllRWVLMks1Y0t2d0RGRHciIG5hbWU9IlNlYXJjaExhbmRpbmdTaXRlIiBjbGFzc2lmaWVyQmVoYXZpb3I9Il85SlFWc0RpZUVlSzJLNWNLdndERkR3Ij4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX1BGWExZRGllRWVLMks1Y0t2d0RGRHciIG5hbWU9IkdQUyIgdmlzaWJpbGl0eT0icHVibGljIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcWFTMm9BSC1FZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9QbHFjRURpZUVlSzJLNWNLdndERkR3IiB2YWx1ZT0iMSIvPgorICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9QbHNSUURpZUVlSzJLNWNLdndERkR3IiB2YWx1ZT0iMSIvPgorICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfUGx1R2NEaWVFZUsySzVjS3Z3REZEdyI+CisgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfUUJVZFVEaWVFZUsySzVjS3Z3REZEdyIgbmFtZT0iQ2FtZXJhIiB2aXNpYmlsaXR5PSJwdWJsaWMiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfbUpEYThBS3VFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9RZnIwVURpZUVlSzJLNWNLdndERkR3IiB2YWx1ZT0iMSIvPgorICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9RZnRwZ0RpZUVlSzJLNWNLdndERkR3IiB2YWx1ZT0iMSIvPgorICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfUWZ2ZXNEaWVFZUsySzVjS3Z3REZEdyI+CisgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfU0ZjNFFEaWVFZUsySzVjS3Z3REZEdyIgbmFtZT0iVGFyZ2V0IiB2aXNpYmlsaXR5PSJwdWJsaWMiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfMV8tNW9BSDVFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9TaDN1Z0RpZUVlSzJLNWNLdndERkR3IiB2YWx1ZT0iMSIvPgorICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9TaDVqc0RpZUVlSzJLNWNLdndERkR3IiB2YWx1ZT0iMSIvPgorICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfU2g2eDBEaWVFZUsySzVjS3Z3REZEdyI+CisgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iXzY4bnN3RGlqRWVLMks1Y0t2d0RGRHciIG5hbWU9ImYiIHZpc2liaWxpdHk9InByaXZhdGUiIHR5cGU9Il9DNHQ5Y0RpZ0VlSzJLNWNLdndERkR3Ij4KKyAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfOHl0RW9EaWpFZUsySzVjS3Z3REZEdyIgdmFsdWU9IjEiLz4KKyAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfOHl1U3dEaWpFZUsySzVjS3Z3REZEdyIgdmFsdWU9IjEiLz4KKyAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iXzh5d0g4RGlqRWVLMks1Y0t2d0RGRHciPgorICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9Cc2s5b0Rpa0VlSzJLNWNLdndERkR3IiBuYW1lPSJyIiB2aXNpYmlsaXR5PSJwcml2YXRlIiB0eXBlPSJfQzR0OWNEaWdFZUsySzVjS3Z3REZEdyIvPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX0c0SDFjRGlrRWVLMks1Y0t2d0RGRHciIG5hbWU9IndwIiB2aXNpYmlsaXR5PSJwcml2YXRlIiB0eXBlPSJfX0ZOUGtEaWZFZUsySzVjS3Z3REZEdyI+CisgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2FUUGxJRU9MRWVLRTI4NThTeHNYMWciIHZhbHVlPSIxIi8+CisgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2FUUGxJVU9MRWVLRTI4NThTeHNYMWciIHZhbHVlPSIxIi8+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2RGQ2prRGlrRWVLMks1Y0t2d0RGRHciIG5hbWU9InNpemUiIHZpc2liaWxpdHk9InByaXZhdGUiIHR5cGU9Il9fRk5Qa0RpZkVlSzJLNWNLdndERkR3Ij4KKyAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfZmE4ckFEaWtFZUsySzVjS3Z3REZEdyIgdmFsdWU9IjEiLz4KKyAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfZmE5NUlEaWtFZUsySzVjS3Z3REZEdyIgdmFsdWU9IjEiLz4KKyAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2ZhX3VVRGlrRWVLMks1Y0t2d0RGRHciPgorICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il90aUVFd0RpbUVlSzJLNWNLdndERkR3IiBuYW1lPSJyb3V0ZSIgdmlzaWJpbGl0eT0icHJpdmF0ZSIgaXNPcmRlcmVkPSJ0cnVlIiBpc1VuaXF1ZT0iZmFsc2UiPgorICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfMV8tNW9BSDVFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il8yQkd0b0RpbUVlSzJLNWNLdndERkR3IiB2YWx1ZT0iMSIvPgorICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il8yQkhVc0RpbUVlSzJLNWNLdndERkR3IiB2YWx1ZT0iKiIvPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX3pZYnkwRU9KRWVLRTI4NThTeHNYMWciIG5hbWU9ImlucG9ydF9neXJvIiB2aXNpYmlsaXR5PSJwdWJsaWMiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xYVMyb0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzF3LVhnRU9KRWVLRTI4NThTeHNYMWciIHZhbHVlPSIxIi8+CisgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzF3LS1rRU9KRWVLRTI4NThTeHNYMWciIHZhbHVlPSIxIi8+CisgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il8xd19sb0VPSkVlS0UyODU4U3hzWDFnIj4KKyAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfek5ONThFT01FZUtFMjg1OFN4c1gxZyIgbmFtZT0ieCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfX2t6allEaWtFZUsySzVjS3Z3REZEdyI+CisgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3o0ajlBRU9NRWVLRTI4NThTeHNYMWciIHZhbHVlPSIxIi8+CisgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX3o0ajlBVU9NRWVLRTI4NThTeHNYMWciIHZhbHVlPSIxIi8+CisgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il96NGtrRUVPTUVlS0UyODU4U3hzWDFnIj4KKyAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfNHpnTkFFT01FZUtFMjg1OFN4c1gxZyIgbmFtZT0ieSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfX2t6allEaWtFZUsySzVjS3Z3REZEdyI+CisgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzVBaFZVRU9NRWVLRTI4NThTeHNYMWciIHZhbHVlPSIxIi8+CisgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzVBaWpjRU9NRWVLRTI4NThTeHNYMWciIHZhbHVlPSIxIi8+CisgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il81QWp4a0VPTUVlS0UyODU4U3hzWDFnIj4KKyAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfNjVwYUlFT01FZUtFMjg1OFN4c1gxZyIgbmFtZT0ieiIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfX2t6allEaWtFZUsySzVjS3Z3REZEdyI+CisgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzhZX3RBRU9NRWVLRTI4NThTeHNYMWciIHZhbHVlPSIxIi8+CisgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzhaQmlNRU9NRWVLRTI4NThTeHNYMWciIHZhbHVlPSIxIi8+CisgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il84WkRYWUVPTUVlS0UyODU4U3hzWDFnIj4KKyAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfLUhxT1FFT01FZUtFMjg1OFN4c1gxZyIgbmFtZT0iYXJnbWlueCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfX2t6allEaWtFZUsySzVjS3Z3REZEdyI+CisgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXy1ySUhzRU9NRWVLRTI4NThTeHNYMWciIHZhbHVlPSIxIi8+CisgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXy1ySXV3RU9NRWVLRTI4NThTeHNYMWciIHZhbHVlPSIxIi8+CisgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il8tcktqOEVPTUVlS0UyODU4U3hzWDFnIj4KKyAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfQUhQZ1lFT05FZUtFMjg1OFN4c1gxZyIgbmFtZT0iYXJnbWlueSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfX2t6allEaWtFZUsySzVjS3Z3REZEdyI+CisgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0EtWFZvRU9ORWVLRTI4NThTeHNYMWciIHZhbHVlPSIxIi8+CisgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0EtWDhzRU9ORWVLRTI4NThTeHNYMWciIHZhbHVlPSIxIi8+CisgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9BLVpLMEVPTkVlS0UyODU4U3hzWDFnIj4KKyAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfRklFOUFFT05FZUtFMjg1OFN4c1gxZyIgbmFtZT0ibGFuZGluZ19zaXRlX2ZvdW5kIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9DNHQ5Y0RpZ0VlSzJLNWNLdndERkR3Ij4KKyAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfRm9ZMHdFT05FZUtFMjg1OFN4c1gxZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfRm9hQzRFT05FZUtFMjg1OFN4c1gxZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX0ZvYlJBRU9ORWVLRTI4NThTeHNYMWciPgorICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDxvd25lZEJlaGF2aW9yIHhtaTp0eXBlPSJ1bWw6U3RhdGVNYWNoaW5lIiB4bWk6aWQ9Il85SlFWc0RpZUVlSzJLNWNLdndERkR3IiBuYW1lPSJTdGF0ZU1hY2hpbmUxIiBpc1JlZW50cmFudD0iZmFsc2UiPgorICAgICAgICA8cmVnaW9uIHhtaTp0eXBlPSJ1bWw6UmVnaW9uIiB4bWk6aWQ9Il8tb1RHa0RpZUVlSzJLNWNLdndERkR3IiBuYW1lPSJSZWdpb24xIj4KKyAgICAgICAgICA8dHJhbnNpdGlvbiB4bWk6dHlwZT0idW1sOlRyYW5zaXRpb24iIHhtaTppZD0iX1k0RlRrRGluRWVLMks1Y0t2d0RGRHciIG5hbWU9IlRyYW5zaXRpb244IiBzb3VyY2U9Il9SdEVZQURpZkVlSzJLNWNLdndERkR3IiB0YXJnZXQ9Il9QQmpNOERpZkVlSzJLNWNLdndERkR3Ii8+CisgICAgICAgICAgPHRyYW5zaXRpb24geG1pOnR5cGU9InVtbDpUcmFuc2l0aW9uIiB4bWk6aWQ9Il9NV2dNNERpb0VlSzJLNWNLdndERkR3IiBuYW1lPSJUcmFuc2l0aW9uOSIgc291cmNlPSJfUEJqTThEaWZFZUsySzVjS3Z3REZEdyIgdGFyZ2V0PSJfUnRFWUFEaWZFZUsySzVjS3Z3REZEdyIvPgorICAgICAgICAgIDx0cmFuc2l0aW9uIHhtaTp0eXBlPSJ1bWw6VHJhbnNpdGlvbiIgeG1pOmlkPSJfVEFFM0FEaXFFZUtTQXJkVXFDaGktQSIgbmFtZT0iVHJhbnNpdGlvbjEwIiBzb3VyY2U9Il9SdEVZQURpZkVlSzJLNWNLdndERkR3IiB0YXJnZXQ9Il9SdEVZQURpZkVlSzJLNWNLdndERkR3Ii8+CisgICAgICAgICAgPHRyYW5zaXRpb24geG1pOnR5cGU9InVtbDpUcmFuc2l0aW9uIiB4bWk6aWQ9Il91dmFaOERpc0VlS1NBcmRVcUNoaS1BIiBuYW1lPSJUcmFuc2l0aW9uMTEiIHNvdXJjZT0iX1J0RVlBRGlmRWVLMks1Y0t2d0RGRHciIHRhcmdldD0iX1JGaWQ4RGlmRWVLMks1Y0t2d0RGRHciLz4KKyAgICAgICAgICA8dHJhbnNpdGlvbiB4bWk6dHlwZT0idW1sOlRyYW5zaXRpb24iIHhtaTppZD0iX1NwNlNZRGl0RWVLU0FyZFVxQ2hpLUEiIG5hbWU9IlRyYW5zaXRpb24xMiIgc291cmNlPSJfUkZpZDhEaWZFZUsySzVjS3Z3REZEdyIgdGFyZ2V0PSJfUWF5UXdEaWZFZUsySzVjS3Z3REZEdyIvPgorICAgICAgICAgIDx0cmFuc2l0aW9uIHhtaTp0eXBlPSJ1bWw6VHJhbnNpdGlvbiIgeG1pOmlkPSJfalViSDREaXRFZUtTQXJkVXFDaGktQSIgbmFtZT0iVHJhbnNpdGlvbjEzIiBzb3VyY2U9Il9RYXlRd0RpZkVlSzJLNWNLdndERkR3IiB0YXJnZXQ9Il9SRmlkOERpZkVlSzJLNWNLdndERkR3Ii8+CisgICAgICAgICAgPHN1YnZlcnRleCB4bWk6dHlwZT0idW1sOlBzZXVkb3N0YXRlIiB4bWk6aWQ9Il9QQmpNOERpZkVlSzJLNWNLdndERkR3IiBuYW1lPSJTdGF0ZTEiLz4KKyAgICAgICAgICA8c3VidmVydGV4IHhtaTp0eXBlPSJ1bWw6U3RhdGUiIHhtaTppZD0iX1FheVF3RGlmRWVLMks1Y0t2d0RGRHciIG5hbWU9IlN0YXRlMiIvPgorICAgICAgICAgIDxzdWJ2ZXJ0ZXggeG1pOnR5cGU9InVtbDpTdGF0ZSIgeG1pOmlkPSJfUkZpZDhEaWZFZUsySzVjS3Z3REZEdyIgbmFtZT0iU3RhdGUzIi8+CisgICAgICAgICAgPHN1YnZlcnRleCB4bWk6dHlwZT0idW1sOlN0YXRlIiB4bWk6aWQ9Il9SdEVZQURpZkVlSzJLNWNLdndERkR3IiBuYW1lPSJOb3RSTm90RiIvPgorICAgICAgICA8L3JlZ2lvbj4KKyAgICAgIDwvb3duZWRCZWhhdmlvcj4KKyAgICAgIDxvd25lZEJlaGF2aW9yIHhtaTp0eXBlPSJ1bWw6T3BhcXVlQmVoYXZpb3IiIHhtaTppZD0iXzVjMVEwRGlxRWVLU0FyZFVxQ2hpLUEiIG5hbWU9IkluY1dQIiBzcGVjaWZpY2F0aW9uPSJfeTU1TWNEaWpFZUsySzVjS3Z3REZEdyIgaXNSZWVudHJhbnQ9ImZhbHNlIj4KKyAgICAgICAgPGxhbmd1YWdlPkMrKzwvbGFuZ3VhZ2U+CisgICAgICAgIDxib2R5PndwPXdwKzE7PC9ib2R5PgorICAgICAgPC9vd25lZEJlaGF2aW9yPgorICAgICAgPG93bmVkQmVoYXZpb3IgeG1pOnR5cGU9InVtbDpPcGFxdWVCZWhhdmlvciIgeG1pOmlkPSJfVlBFcjREaXZFZUtTQXJkVXFDaGktQSIgbmFtZT0iQ2hrQ2xvc2UiIHNwZWNpZmljYXRpb249Il9RR1h0c0Rpa0VlSzJLNWNLdndERkR3IiBpc1JlZW50cmFudD0iZmFsc2UiPgorICAgICAgICA8bGFuZ3VhZ2U+QysrPC9sYW5ndWFnZT4KKyAgICAgICAgPGJvZHk+CitpZigoKHgtcm91dGVbY3VyZW50X3dwXS54KSooeC1yb3V0ZVtjdXJlbnRfd3BdLngpICsgKHktcm91dGVbY3VyZW50X3dwXS55KSooeS1yb3V0ZVtjdXJlbnRfd3BdLnkpICsgKHotcm91dGVbY3VyZW50X3dwXS56KSooei1yb3V0ZVtjdXJlbnRfd3BdLnopKSAmbHQ7IDAuNSkgdGhlbiByZXR1cm4gdHJ1ZQorZWxzZSByZXR1cm4gZmFsc2UKK2VuZDwvYm9keT4KKyAgICAgIDwvb3duZWRCZWhhdmlvcj4KKyAgICAgIDxvd25lZEJlaGF2aW9yIHhtaTp0eXBlPSJ1bWw6T3BhcXVlQmVoYXZpb3IiIHhtaTppZD0iXzB4TU8wRGl2RWVLU0FyZFVxQ2hpLUEiIG5hbWU9IlNpemVFcXVhbCIgc3BlY2lmaWNhdGlvbj0iX2xlRGM4RGlrRWVLMks1Y0t2d0RGRHciIGlzUmVlbnRyYW50PSJmYWxzZSI+CisgICAgICAgIDxsYW5ndWFnZT5DKys8L2xhbmd1YWdlPgorICAgICAgICA8Ym9keT5pZih3cCA9PSByb3V0ZS5zaXplKCkpIHRoZW4gcmV0dXJuIHRydWUKK2Vsc2UgcmV0dXJuIGZhbHNlCitlbmQ8L2JvZHk+CisgICAgICA8L293bmVkQmVoYXZpb3I+CisgICAgICA8b3duZWRCZWhhdmlvciB4bWk6dHlwZT0idW1sOk9wYXF1ZUJlaGF2aW9yIiB4bWk6aWQ9Il9WSVY4VURpd0VlS1NBcmRVcUNoaS1BIiBuYW1lPSJXcml0ZSIgc3BlY2lmaWNhdGlvbj0iX3F3SzIwRGlrRWVLMks1Y0t2d0RGRHciIGlzUmVlbnRyYW50PSJmYWxzZSI+CisgICAgICAgIDxsYW5ndWFnZT5DKys8L2xhbmd1YWdlPgorICAgICAgICA8Ym9keT5vdXRwb3J0LndyaXRlKHJvdXRlW3dwXSk8L2JvZHk+CisgICAgICA8L293bmVkQmVoYXZpb3I+CisgICAgICA8b3duZWRCZWhhdmlvciB4bWk6dHlwZT0idW1sOk9wYXF1ZUJlaGF2aW9yIiB4bWk6aWQ9Il9xQndiTURpd0VlS1NBcmRVcUNoaS1BIiBuYW1lPSJBZGRSb3V0ZVBsdXNXcml0ZSIgc3BlY2lmaWNhdGlvbj0iX1ZBNHFjRGlsRWVLMks1Y0t2d0RGRHciIGlzUmVlbnRyYW50PSJmYWxzZSI+CisgICAgICAgIDxsYW5ndWFnZT5DKys8L2xhbmd1YWdlPgorICAgICAgICA8Ym9keT4gICAgICAgICAgICBnZW9tZXRyeV9tc2dzOjpQb2ludCogcHQgPSBuZXcgZ2VvbWV0cnlfbXNnczo6UG9pbnQoKQorICAgICAgICAgICAgcHQtPnggPSBhcmdtaW54OyBwdC0+eSA9IGFyZ21pbnk7IHB0LT56ID0gMTAuMAorICAgICAgICAgICAgcm91dGUucHVzaF9iYWNrKCpwdCkKKyAgICAgICAgICAgIHB0LT54ID0gYXJnbWlueCBwdC0+eSA9IGFyZ21pbnk7IHB0LT56ID0gMC4wCisgICAgICAgICAgICByb3V0ZS5wdXNoX2JhY2soKnB0KQorICAgICAgICAgICAgZGVsZXRlIHB0CisgICAgICAgICAgICBvdXRwb3J0LndyaXRlKHJvdXRlW3dwXSkKKzwvYm9keT4KKyAgICAgIDwvb3duZWRCZWhhdmlvcj4KKyAgICAgIDxvd25lZEJlaGF2aW9yIHhtaTp0eXBlPSJ1bWw6T3BhcXVlQmVoYXZpb3IiIHhtaTppZD0iX0JSX25nRGl4RWVLU0FyZFVxQ2hpLUEiIG5hbWU9IlRydWUiIHNwZWNpZmljYXRpb249Il9fR2NzRURpbkVlSzJLNWNLdndERkR3IiBpc1JlZW50cmFudD0iZmFsc2UiPgorICAgICAgICA8bGFuZ3VhZ2U+QysrPC9sYW5ndWFnZT4KKyAgICAgICAgPGJvZHk+cmV0dXJuIHRydWU8L2JvZHk+CisgICAgICA8L293bmVkQmVoYXZpb3I+CisgICAgICA8b3duZWRCZWhhdmlvciB4bWk6dHlwZT0idW1sOk9wYXF1ZUJlaGF2aW9yIiB4bWk6aWQ9Il90YWcwSUVPUEVlS0UyODU4U3hzWDFnIiBuYW1lPSJub1NpemUiIHNwZWNpZmljYXRpb249Il9xWjF5d0RpcUVlS1NBcmRVcUNoaS1BIiBpc1JlZW50cmFudD0iZmFsc2UiPgorICAgICAgICA8bGFuZ3VhZ2U+QysrPC9sYW5ndWFnZT4KKyAgICAgICAgPGJvZHk+aWYod3AgJmx0OyByb3V0ZS5zaXplKCkpIHRoZW4gcmV0dXJuIHRydWUKK2Vsc2UgcmV0dXJuIGZhbHNlCitlbmQ8L2JvZHk+CisgICAgICA8L293bmVkQmVoYXZpb3I+CisgICAgICA8b3duZWRPcGVyYXRpb24geG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIHhtaTppZD0iX3k1NU1jRGlqRWVLMks1Y0t2d0RGRHciIG5hbWU9IkluY1dQIiB2aXNpYmlsaXR5PSJwdWJsaWMiIG1ldGhvZD0iXzVjMVEwRGlxRWVLU0FyZFVxQ2hpLUEiLz4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfUUdYdHNEaWtFZUsySzVjS3Z3REZEdyIgbmFtZT0iQ2hlY2tDbG9zZVRvV1AiIHZpc2liaWxpdHk9InB1YmxpYyIgbWV0aG9kPSJfVlBFcjREaXZFZUtTQXJkVXFDaGktQSI+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfOHg1OThEaWtFZUsySzVjS3Z3REZEdyIgdHlwZT0iX0M0dDljRGlnRWVLMks1Y0t2d0RGRHciIGRpcmVjdGlvbj0icmV0dXJuIi8+CisgICAgICA8L293bmVkT3BlcmF0aW9uPgorICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiB4bWk6aWQ9Il9sZURjOERpa0VlSzJLNWNLdndERkR3IiBuYW1lPSJDaGVja1NpemUiIHZpc2liaWxpdHk9InB1YmxpYyIgbWV0aG9kPSJfMHhNTzBEaXZFZUtTQXJkVXFDaGktQSI+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfZTZvOTBEaWxFZUsySzVjS3Z3REZEdyIgdHlwZT0iX0M0dDljRGlnRWVLMks1Y0t2d0RGRHciIGRpcmVjdGlvbj0icmV0dXJuIi8+CisgICAgICA8L293bmVkT3BlcmF0aW9uPgorICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiB4bWk6aWQ9Il9xd0syMERpa0VlSzJLNWNLdndERkR3IiBuYW1lPSJTZW5kVG9PdXRwdXRQb3J0IiB2aXNpYmlsaXR5PSJwdWJsaWMiIG1ldGhvZD0iX1ZJVjhVRGl3RWVLU0FyZFVxQ2hpLUEiLz4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfVkE0cWNEaWxFZUsySzVjS3Z3REZEdyIgbmFtZT0iSW5jcmVtZW50Um91dGVBbmRTZW5kVG9PdXRwdXRQb3J0IiB2aXNpYmlsaXR5PSJwdWJsaWMiIG1ldGhvZD0iX3FCd2JNRGl3RWVLU0FyZFVxQ2hpLUEiLz4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfX0djc0VEaW5FZUsySzVjS3Z3REZEdyIgbmFtZT0iQWxsd2F5VHJ1ZSIgdmlzaWJpbGl0eT0icHVibGljIiBtZXRob2Q9Il9CUl9uZ0RpeEVlS1NBcmRVcUNoaS1BIj4KKyAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTp0eXBlPSJ1bWw6UGFyYW1ldGVyIiB4bWk6aWQ9Il9FN3c1b0Rpb0VlSzJLNWNLdndERkR3IiB0eXBlPSJfQzR0OWNEaWdFZUsySzVjS3Z3REZEdyIgZGlyZWN0aW9uPSJyZXR1cm4iLz4KKyAgICAgIDwvb3duZWRPcGVyYXRpb24+CisgICAgICA8b3duZWRPcGVyYXRpb24geG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIHhtaTppZD0iX3FaMXl3RGlxRWVLU0FyZFVxQ2hpLUEiIG5hbWU9IkNoZWNrTm90U2l6ZSIgdmlzaWJpbGl0eT0icHVibGljIiBtZXRob2Q9Il90YWcwSUVPUEVlS0UyODU4U3hzWDFnIj4KKyAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTp0eXBlPSJ1bWw6UGFyYW1ldGVyIiB4bWk6aWQ9Il9qU1l0a0VPUEVlS0UyODU4U3hzWDFnIiB0eXBlPSJfQzR0OWNEaWdFZUsySzVjS3Z3REZEdyIgZGlyZWN0aW9uPSJyZXR1cm4iLz4KKyAgICAgIDwvb3duZWRPcGVyYXRpb24+CisgICAgICA8bmVzdGVkQ2xhc3NpZmllciB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9sWGM3SURpakVlSzJLNWNLdndERkR3IiBuYW1lPSJDbGFzczEiLz4KKyAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iXzE0aTVRSENtRWVLZkxkNzU4VE5tLXciIG5hbWU9IlJvYm90MSI+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfOFBjdzhIQ21FZUtmTGQ3NThUTm0tdyIgbmFtZT0iU2VhcmNoTGFuZGluZ1NpdGUxIiB0eXBlPSJfSW1wYmdEaWVFZUsySzVjS3Z3REZEdyIvPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX0FhUDljSENuRWVLZkxkNzU4VE5tLXciIG5hbWU9IkFjdHVhdG9yU3lzdGVtMTIiIHR5cGU9Il9OUENKc0daQ0VlSzh2ZWR3UnUyTTd3Ii8+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfem9IU1FIQ25FZUtmTGQ3NThUTm0tdyIgbmFtZT0iR3lyb3Njb3BlMyIgdHlwZT0iX1JINjBvSENuRWVLZkxkNzU4VE5tLXciLz4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il8wSHhDc0hDbkVlS2ZMZDc1OFRObS13IiBuYW1lPSJDYW1lcmFTeXN0ZW00IiB0eXBlPSJfWGhwVzBIQ25FZUtmTGQ3NThUTm0tdyIvPgorICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9DNDV4TUhDbkVlS2ZMZDc1OFRObS13IiBuYW1lPSJDb25uZWN0b3IxIj4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfQzQ3bVlIQ25FZUtmTGQ3NThUTm0tdyIgcGFydFdpdGhQb3J0PSJfOFBjdzhIQ21FZUtmTGQ3NThUTm0tdyIgcm9sZT0iX1NGYzRRRGllRWVLMks1Y0t2d0RGRHciPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0M0N21ZWENuRWVLZkxkNzU4VE5tLXciIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfQzQ3bVluQ25FZUtmTGQ3NThUTm0tdyIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX0M0N21ZM0NuRWVLZkxkNzU4VE5tLXciIHBhcnRXaXRoUG9ydD0iX0FhUDljSENuRWVLZkxkNzU4VE5tLXciIHJvbGU9Il8tSS03SUdaQ0VlSzh2ZWR3UnUyTTd3Ij4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9DNDdtWkhDbkVlS2ZMZDc1OFRObS13IiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0M0N21aWENuRWVLZkxkNzU4VE5tLXciIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfNnVGMmNIQ25FZUtmTGQ3NThUTm0tdyIgbmFtZT0iQ29ubmVjdG9yMiI+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iXzZ1R2RnSENuRWVLZkxkNzU4VE5tLXciIHBhcnRXaXRoUG9ydD0iX3pvSFNRSENuRWVLZkxkNzU4VE5tLXciIHJvbGU9Il9kcTFpb0hDbkVlS2ZMZDc1OFRObS13Ij4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il82dUdkZ1hDbkVlS2ZMZDc1OFRObS13IiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzZ1R2RnbkNuRWVLZkxkNzU4VE5tLXciIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il82dUhFa0hDbkVlS2ZMZDc1OFRObS13IiBwYXJ0V2l0aFBvcnQ9Il84UGN3OEhDbUVlS2ZMZDc1OFRObS13IiByb2xlPSJfellieTBFT0pFZUtFMjg1OFN4c1gxZyI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfNnVIRWtYQ25FZUtmTGQ3NThUTm0tdyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il82dUhFa25DbkVlS2ZMZDc1OFRObS13IiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iXy1CZ3ZBSENuRWVLZkxkNzU4VE5tLXciIG5hbWU9IkNvbm5lY3RvcjMiPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il8tQmg5SUhDbkVlS2ZMZDc1OFRObS13IiBwYXJ0V2l0aFBvcnQ9Il8wSHhDc0hDbkVlS2ZMZDc1OFRObS13IiByb2xlPSJfb2pPQmNIQ25FZUtmTGQ3NThUTm0tdyI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfLUJoOUlYQ25FZUtmTGQ3NThUTm0tdyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il8tQmg5SW5DbkVlS2ZMZDc1OFRObS13IiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfLUJpa01IQ25FZUtmTGQ3NThUTm0tdyIgcGFydFdpdGhQb3J0PSJfOFBjdzhIQ21FZUtmTGQ3NThUTm0tdyIgcm9sZT0iX1FCVWRVRGllRWVLMks1Y0t2d0RGRHciPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXy1CaWtNWENuRWVLZkxkNzU4VE5tLXciIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfLUJpa01uQ25FZUtmTGQ3NThUTm0tdyIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfUkg2MG9IQ25FZUtmTGQ3NThUTm0tdyIgbmFtZT0iR3lyb3Njb3BlIj4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2RxMWlvSENuRWVLZkxkNzU4VE5tLXciIG5hbWU9ImlucG9ydF9neXJvIiB2aXNpYmlsaXR5PSJwdWJsaWMiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xYVMyb0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2VzN1J3SENuRWVLZkxkNzU4VE5tLXciIHZhbHVlPSIxIi8+CisgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2VzOGY0SENuRWVLZkxkNzU4VE5tLXciIHZhbHVlPSIxIi8+CisgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9ldEF4VUhDbkVlS2ZMZDc1OFRObS13IiB2YWx1ZT0iIi8+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfWGhwVzBIQ25FZUtmTGQ3NThUTm0tdyIgbmFtZT0iQ2FtZXJhU3lzdGVtIj4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX29qT0JjSENuRWVLZkxkNzU4VE5tLXciIG5hbWU9IkNhbWVyYSIgdmlzaWJpbGl0eT0icHVibGljIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX21KRGE4QUt1RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfcFBEendIQ25FZUtmTGQ3NThUTm0tdyIgdmFsdWU9IjEiLz4KKyAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfcFBGQjRIQ25FZUtmTGQ3NThUTm0tdyIgdmFsdWU9IjEiLz4KKyAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX3BQR1FBSENuRWVLZkxkNzU4VE5tLXciPgorICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8cHJvZmlsZUFwcGxpY2F0aW9uIHhtaTp0eXBlPSJ1bWw6UHJvZmlsZUFwcGxpY2F0aW9uIiB4bWk6aWQ9Il9HUTdoVURpZUVlSzJLNWNLdndERkR3Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HU1pnOERpZUVlSzJLNWNLdndERkR3IiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICA8cmVmZXJlbmNlcyB4bWk6dHlwZT0iZWNvcmU6RVBhY2thZ2UiIGhyZWY9Imh0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMSMvIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxhcHBsaWVkUHJvZmlsZSB4bWk6dHlwZT0idW1sOlByb2ZpbGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI18zUU9IRVBjRUVkLUowNlU1SE1fby1RIi8+CisgICAgPC9wcm9maWxlQXBwbGljYXRpb24+CisgIDwvdW1sOk1vZGVsPgorICA8Um9ib3RNTDpSb2JvdGljU3lzdGVtIHhtaTppZD0iX0luR0hjRGllRWVLMks1Y0t2d0RGRHciIGJhc2VfQ2xhc3M9Il9JbXBiZ0RpZUVlSzJLNWNLdndERkR3Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9RQmUxWURpZUVlSzJLNWNLdndERkR3IiBiYXNlX1BvcnQ9Il9RQlVkVURpZUVlSzJLNWNLdndERkR3Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9TRmswRURpZUVlSzJLNWNLdndERkR3IiBiYXNlX1BvcnQ9Il9TRmM0UURpZUVlSzJLNWNLdndERkR3IiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpTdGF0ZSB4bWk6aWQ9Il9RYkN2Y0RpZkVlSzJLNWNLdndERkR3IiBiYXNlX1N0YXRlPSJfUWF5UXdEaWZFZUsySzVjS3Z3REZEdyIvPgorICA8Um9ib3RNTDpTdGF0ZSB4bWk6aWQ9Il9SRnFad0RpZkVlSzJLNWNLdndERkR3IiBiYXNlX1N0YXRlPSJfUkZpZDhEaWZFZUsySzVjS3Z3REZEdyIvPgorICA8Um9ib3RNTDpTdGF0ZSB4bWk6aWQ9Il9SdFBYSURpZkVlSzJLNWNLdndERkR3IiBiYXNlX1N0YXRlPSJfUnRFWUFEaWZFZUsySzVjS3Z3REZEdyIvPgorICA8Um9ib3RNTDpBbGdvcml0aG0geG1pOmlkPSJfeTZNdWNEaWpFZUsySzVjS3Z3REZEdyIgYmFzZV9PcGVyYXRpb249Il95NTVNY0RpakVlSzJLNWNLdndERkR3IiBwYXRoPSIiLz4KKyAgPFJvYm90TUw6QWxnb3JpdGhtIHhtaTppZD0iX1FHZzNvRGlrRWVLMks1Y0t2d0RGRHciIGJhc2VfT3BlcmF0aW9uPSJfUUdYdHNEaWtFZUsySzVjS3Z3REZEdyIgcGF0aD0iIi8+CisgIDxSb2JvdE1MOkFsZ29yaXRobSB4bWk6aWQ9Il9sZU1tNERpa0VlSzJLNWNLdndERkR3IiBiYXNlX09wZXJhdGlvbj0iX2xlRGM4RGlrRWVLMks1Y0t2d0RGRHciLz4KKyAgPFJvYm90TUw6QWxnb3JpdGhtIHhtaTppZD0iX3F3V2RBRGlrRWVLMks1Y0t2d0RGRHciIGJhc2VfT3BlcmF0aW9uPSJfcXdLMjBEaWtFZUsySzVjS3Z3REZEdyIvPgorICA8Um9ib3RNTDpBbGdvcml0aG0geG1pOmlkPSJfVkJEcGtEaWxFZUsySzVjS3Z3REZEdyIgYmFzZV9PcGVyYXRpb249Il9WQTRxY0RpbEVlSzJLNWNLdndERkR3IiBwYXRoPSIiLz4KKyAgPFJvYm90TUw6VHJhbnNpdGlvbiB4bWk6aWQ9Il9ZNFlPZ0RpbkVlSzJLNWNLdndERkR3IiBiYXNlX1RyYW5zaXRpb249Il9ZNEZUa0RpbkVlSzJLNWNLdndERkR3Ii8+CisgIDxSb2JvdE1MOkFsZ29yaXRobSB4bWk6aWQ9Il9fR2xPOERpbkVlSzJLNWNLdndERkR3IiBiYXNlX09wZXJhdGlvbj0iX19HY3NFRGluRWVLMks1Y0t2d0RGRHciLz4KKyAgPFJvYm90TUw6VHJhbnNpdGlvbiB4bWk6aWQ9Il9NVzBWOERpb0VlSzJLNWNLdndERkR3IiBiYXNlX1RyYW5zaXRpb249Il9NV2dNNERpb0VlSzJLNWNLdndERkR3Ii8+CisgIDxSb2JvdE1MOlRyYW5zaXRpb24geG1pOmlkPSJfVEFnVTBEaXFFZUtTQXJkVXFDaGktQSIgYmFzZV9UcmFuc2l0aW9uPSJfVEFFM0FEaXFFZUtTQXJkVXFDaGktQSIvPgorICA8Um9ib3RNTDpBbGdvcml0aG0geG1pOmlkPSJfcWFHNGdEaXFFZUtTQXJkVXFDaGktQSIgYmFzZV9PcGVyYXRpb249Il9xWjF5d0RpcUVlS1NBcmRVcUNoaS1BIi8+CisgIDxSb2JvdE1MOlRyYW5zaXRpb24geG1pOmlkPSJfdXY0VUFEaXNFZUtTQXJkVXFDaGktQSIgYmFzZV9UcmFuc2l0aW9uPSJfdXZhWjhEaXNFZUtTQXJkVXFDaGktQSIvPgorICA8Um9ib3RNTDpUcmFuc2l0aW9uIHhtaTppZD0iX1NxWmFrRGl0RWVLU0FyZFVxQ2hpLUEiIGJhc2VfVHJhbnNpdGlvbj0iX1NwNlNZRGl0RWVLU0FyZFVxQ2hpLUEiLz4KKyAgPFJvYm90TUw6VHJhbnNpdGlvbiB4bWk6aWQ9Il9qVTVCOERpdEVlS1NBcmRVcUNoaS1BIiBiYXNlX1RyYW5zaXRpb249Il9qVWJINERpdEVlS1NBcmRVcUNoaS1BIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il96Y0NnY0VPSkVlS0UyODU4U3hzWDFnIiBiYXNlX1BvcnQ9Il96WWJ5MEVPSkVlS0UyODU4U3hzWDFnIi8+CisgIDxSb2JvdE1MOlNlbnNvclN5c3RlbSB4bWk6aWQ9Il9vZTEwMEdaQUVlSzh2ZWR3UnUyTTd3IiBiYXNlX0NsYXNzPSJfb2E0aDRHWkFFZUs4dmVkd1J1Mk03dyIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfeHJUa1lHWkFFZUs4dmVkd1J1Mk03dyIgYmFzZV9Qb3J0PSJfeHJGaDhHWkFFZUs4dmVkd1J1Mk03dyIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6Q2FtZXJhU3lzdGVtIHhtaTppZD0iXzZIUFpjR1pCRWVLOHZlZHdSdTJNN3ciIGJhc2VfQ2xhc3M9Il82RzlGa0daQkVlSzh2ZWR3UnUyTTd3Ii8+CisgIDxSb2JvdE1MOkFjdHVhdG9yU3lzdGVtIHhtaTppZD0iX05QVzUwR1pDRWVLOHZlZHdSdTJNN3ciIGJhc2VfQ2xhc3M9Il9OUENKc0daQ0VlSzh2ZWR3UnUyTTd3Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il8tSlBaMEdaQ0VlSzh2ZWR3UnUyTTd3IiBiYXNlX1BvcnQ9Il8tSS03SUdaQ0VlSzh2ZWR3UnUyTTd3Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9ZZmJxY0daREVlSzh2ZWR3UnUyTTd3IiBiYXNlX1BvcnQ9Il9ZZlFyVUdaREVlSzh2ZWR3UnUyTTd3IiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpSb2JvdCB4bWk6aWQ9Il9xRzg2d0daREVlSzh2ZWR3UnUyTTd3IiBiYXNlX0NsYXNzPSJfcUdtOGdHWkRFZUs4dmVkd1J1Mk03dyIvPgorICA8Um9ib3RNTDpSb2JvdCB4bWk6aWQ9Il8xNDEwTUhDbUVlS2ZMZDc1OFRObS13IiBiYXNlX0NsYXNzPSJfMTRpNVFIQ21FZUtmTGQ3NThUTm0tdyIvPgorICA8Um9ib3RNTDpTZW5zb3JTeXN0ZW0geG1pOmlkPSJfUklOdmtIQ25FZUtmTGQ3NThUTm0tdyIgYmFzZV9DbGFzcz0iX1JINjBvSENuRWVLZkxkNzU4VE5tLXciLz4KKyAgPFJvYm90TUw6U2Vuc29yU3lzdGVtIHhtaTppZD0iX1hpQWpNSENuRWVLZkxkNzU4VE5tLXciIGJhc2VfQ2xhc3M9Il9YaHBXMEhDbkVlS2ZMZDc1OFRObS13Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9PSVFYVUozU0VlS0JYTUtZUlJiMjF3IiBiYXNlX1BvcnQ9Il9kcTFpb0hDbkVlS2ZMZDc1OFRObS13IiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfWUhTTVFKM1NFZUtCWE1LWVJSYjIxdyIgYmFzZV9Qb3J0PSJfb2pPQmNIQ25FZUtmTGQ3NThUTm0tdyIgZGlyZWN0aW9uPSJvdXQiLz4KKzwveG1pOlhNST4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvcmVzb3VyY2UvVEFMQy1DaGFsbGVuZ2UuZGkgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3Jlc291cmNlL1RBTEMtQ2hhbGxlbmdlLmRpCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFlMDNlOGIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3Jlc291cmNlL1RBTEMtQ2hhbGxlbmdlLmRpCkBAIC0wLDAgKzEsMTA4IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJBU0NJSSI/PgorPGRpOlNhc2hXaW5kb3dzTW5nciB4bWk6dmVyc2lvbj0iMi4wIiB4bWxuczp4bWk9Imh0dHA6Ly93d3cub21nLm9yZy9YTUkiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zOmRpPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3BhcHlydXMvMC43LjAvc2FzaGRpIj4KKyAgPHBhZ2VMaXN0PgorICAgIDxhdmFpbGFibGVQYWdlPgorICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLm5vdGF0aW9uI194Y2FXOElMcUVlR2hPWnVhLXFqZjBRIi8+CisgICAgPC9hdmFpbGFibGVQYWdlPgorICAgIDxhdmFpbGFibGVQYWdlPgorICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLm5vdGF0aW9uI19UWjBuSUpYd0VlR1JUTFZaZjROeVl3Ii8+CisgICAgPC9hdmFpbGFibGVQYWdlPgorICAgIDxhdmFpbGFibGVQYWdlPgorICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLm5vdGF0aW9uI180N2ZjUUpYeEVlR1JUTFZaZjROeVl3Ii8+CisgICAgPC9hdmFpbGFibGVQYWdlPgorICAgIDxhdmFpbGFibGVQYWdlPgorICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLm5vdGF0aW9uI19IVk9oOEpYeUVlR1JUTFZaZjROeVl3Ii8+CisgICAgPC9hdmFpbGFibGVQYWdlPgorICAgIDxhdmFpbGFibGVQYWdlPgorICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLm5vdGF0aW9uI19rbzVUZ0pYMkVlR1JUTFZaZjROeVl3Ii8+CisgICAgPC9hdmFpbGFibGVQYWdlPgorICAgIDxhdmFpbGFibGVQYWdlPgorICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLm5vdGF0aW9uI19sS29TSUpYM0VlR0RJcHQ3N21ya1hRIi8+CisgICAgPC9hdmFpbGFibGVQYWdlPgorICAgIDxhdmFpbGFibGVQYWdlPgorICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLm5vdGF0aW9uI19od1JjWUpYOUVlR0RJcHQ3N21ya1hRIi8+CisgICAgPC9hdmFpbGFibGVQYWdlPgorICAgIDxhdmFpbGFibGVQYWdlPgorICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLm5vdGF0aW9uI185T0g0b0pYOUVlR1dsY1FmaU9ORjhRIi8+CisgICAgPC9hdmFpbGFibGVQYWdlPgorICAgIDxhdmFpbGFibGVQYWdlPgorICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLm5vdGF0aW9uI18yYkhlVUpYLUVlR1dsY1FmaU9ORjhRIi8+CisgICAgPC9hdmFpbGFibGVQYWdlPgorICAgIDxhdmFpbGFibGVQYWdlPgorICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLm5vdGF0aW9uI19wVmRJUUpZQkVlR1dsY1FmaU9ORjhRIi8+CisgICAgPC9hdmFpbGFibGVQYWdlPgorICAgIDxhdmFpbGFibGVQYWdlPgorICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLm5vdGF0aW9uI19IbEl5OEpZQ0VlR1R3YVFwdklLcTBRIi8+CisgICAgPC9hdmFpbGFibGVQYWdlPgorICAgIDxhdmFpbGFibGVQYWdlPgorICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLm5vdGF0aW9uI19MVUdiTUpZR0VlR1R3YVFwdklLcTBRIi8+CisgICAgPC9hdmFpbGFibGVQYWdlPgorICAgIDxhdmFpbGFibGVQYWdlPgorICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLm5vdGF0aW9uI19kQzlDa0pZR0VlR0JJdkhDeW5NSy13Ii8+CisgICAgPC9hdmFpbGFibGVQYWdlPgorICAgIDxhdmFpbGFibGVQYWdlLz4KKyAgICA8YXZhaWxhYmxlUGFnZT4KKyAgICAgIDxlbWZQYWdlSWRlbnRpZmllciBocmVmPSJUQUxDLUNoYWxsZW5nZS5ub3RhdGlvbiNfdHg3SVVLTk9FZUdPZFBkb0VVREp0USIvPgorICAgIDwvYXZhaWxhYmxlUGFnZT4KKyAgICA8YXZhaWxhYmxlUGFnZT4KKyAgICAgIDxlbWZQYWdlSWRlbnRpZmllciBocmVmPSJUQUxDLUNoYWxsZW5nZS5ub3RhdGlvbiNfaU1PRjhNek9FZUdJNTQtYmh6enVvQSIvPgorICAgIDwvYXZhaWxhYmxlUGFnZT4KKyAgICA8YXZhaWxhYmxlUGFnZT4KKyAgICAgIDxlbWZQYWdlSWRlbnRpZmllciBocmVmPSJUQUxDLUNoYWxsZW5nZS5ub3RhdGlvbiNfSVVUWTBNem1FZUdJNTQtYmh6enVvQSIvPgorICAgIDwvYXZhaWxhYmxlUGFnZT4KKyAgICA8YXZhaWxhYmxlUGFnZT4KKyAgICAgIDxlbWZQYWdlSWRlbnRpZmllciBocmVmPSJUQUxDLUNoYWxsZW5nZS5ub3RhdGlvbiNfX1hReEVNMEFFZUc3WnNWaWxjUFJnUSIvPgorICAgIDwvYXZhaWxhYmxlUGFnZT4KKyAgICA8YXZhaWxhYmxlUGFnZT4KKyAgICAgIDxlbWZQYWdlSWRlbnRpZmllciBocmVmPSJUQUxDLUNoYWxsZW5nZS5ub3RhdGlvbiNfeU9ndVFQSzBFZUdpT3FFMmxBSWpRdyIvPgorICAgIDwvYXZhaWxhYmxlUGFnZT4KKyAgICA8YXZhaWxhYmxlUGFnZT4KKyAgICAgIDxlbWZQYWdlSWRlbnRpZmllciBocmVmPSJUQUxDLUNoYWxsZW5nZS5ub3RhdGlvbiNfWlF4NTBQSy1FZUdpT3FFMmxBSWpRdyIvPgorICAgIDwvYXZhaWxhYmxlUGFnZT4KKyAgPC9wYWdlTGlzdD4KKyAgPHNhc2hNb2RlbCBjdXJyZW50U2VsZWN0aW9uPSIvL0BzYXNoTW9kZWwvQHdpbmRvd3MuMC9AY2hpbGRyZW4uMCI+CisgICAgPHdpbmRvd3M+CisgICAgICA8Y2hpbGRyZW4geHNpOnR5cGU9ImRpOlRhYkZvbGRlciI+CisgICAgICAgIDxjaGlsZHJlbj4KKyAgICAgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iVEFMQy1DaGFsbGVuZ2Uubm90YXRpb24jX3hjYVc4SUxxRWVHaE9adWEtcWpmMFEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuPgorICAgICAgICAgIDxlbWZQYWdlSWRlbnRpZmllciBocmVmPSJUQUxDLUNoYWxsZW5nZS5ub3RhdGlvbiNfSFZPaDhKWHlFZUdSVExWWmY0TnlZdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4+CisgICAgICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLm5vdGF0aW9uI18yYkhlVUpYLUVlR1dsY1FmaU9ORjhRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbj4KKyAgICAgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iVEFMQy1DaGFsbGVuZ2Uubm90YXRpb24jX2RDOUNrSllHRWVHQkl2SEN5bk1LLXciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuPgorICAgICAgICAgIDxlbWZQYWdlSWRlbnRpZmllciBocmVmPSJUQUxDLUNoYWxsZW5nZS5ub3RhdGlvbiNfaU1PRjhNek9FZUdJNTQtYmh6enVvQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4+CisgICAgICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLm5vdGF0aW9uI19JVVRZME16bUVlR0k1NC1iaHp6dW9BIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbj4KKyAgICAgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iVEFMQy1DaGFsbGVuZ2Uubm90YXRpb24jXzlPSDRvSlg5RWVHV2xjUWZpT05GOFEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuPgorICAgICAgICAgIDxlbWZQYWdlSWRlbnRpZmllciBocmVmPSJUQUxDLUNoYWxsZW5nZS5ub3RhdGlvbiNfbEtvU0lKWDNFZUdESXB0NzdtcmtYUSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4+CisgICAgICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLm5vdGF0aW9uI19IbEl5OEpZQ0VlR1R3YVFwdklLcTBRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbj4KKyAgICAgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iVEFMQy1DaGFsbGVuZ2Uubm90YXRpb24jX19YUXhFTTBBRWVHN1pzVmlsY1BSZ1EiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuPgorICAgICAgICAgIDxlbWZQYWdlSWRlbnRpZmllciBocmVmPSJUQUxDLUNoYWxsZW5nZS5ub3RhdGlvbiNfeU9ndVFQSzBFZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4+CisgICAgICAgICAgPGVtZlBhZ2VJZGVudGlmaWVyIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLm5vdGF0aW9uI19UWjBuSUpYd0VlR1JUTFZaZjROeVl3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbj4KKyAgICAgICAgICA8ZW1mUGFnZUlkZW50aWZpZXIgaHJlZj0iVEFMQy1DaGFsbGVuZ2Uubm90YXRpb24jX1pReDUwUEstRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgPC93aW5kb3dzPgorICA8L3Nhc2hNb2RlbD4KKzwvZGk6U2FzaFdpbmRvd3NNbmdyPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9yZXNvdXJjZS9UQUxDLUNoYWxsZW5nZS5ub3RhdGlvbiBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvcmVzb3VyY2UvVEFMQy1DaGFsbGVuZ2Uubm90YXRpb24KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTlhMDUyMQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvcmVzb3VyY2UvVEFMQy1DaGFsbGVuZ2Uubm90YXRpb24KQEAgLTAsMCArMSwyNTQ2IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHhtaTpYTUkgeG1pOnZlcnNpb249IjIuMCIgeG1sbnM6eG1pPSJodHRwOi8vd3d3Lm9tZy5vcmcvWE1JIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczpjb25maWd1cmF0aW9uPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3BhcHlydXMvaW5mcmEvdmlld3BvaW50cy9jb25maWd1cmF0aW9uIiB4bWxuczplY29yZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSIgeG1sbnM6bm90YXRpb249Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZ21mL3J1bnRpbWUvMS4wLjIvbm90YXRpb24iIHhtbG5zOnN0eWxlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3BhcHlydXMvaW5mcmEvdmlld3BvaW50cy9wb2xpY3kvc3R5bGUiIHhtbG5zOnVtbD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCI+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX3hjYVc4SUxxRWVHaE9adWEtcWpmMFEiIHR5cGU9IkNvbXBvc2l0ZVN0cnVjdHVyZSIgbmFtZT0iQmlnQ29tcG9uZW50cyIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfSUl1cU1KWHNFZUdvUkl6VDhUanlWZyIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSUl2UlFKWHNFZUdvUkl6VDhUanlWZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0lJdlJRWlhzRWVHb1JJelQ4VGp5VmciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0lJdlJRcFhzRWVHb1JJelQ4VGp5VmciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0lJdjRVSlhzRWVHb1JJelQ4VGp5VmciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSUl2NFVaWHNFZUdvUkl6VDhUanlWZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9JSXY0VXBYc0VlR29SSXpUOFRqeVZnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0lJMzBJSlhzRWVHb1JJelQ4VGp5VmciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9JSTMwSVpYc0VlR29SSXpUOFRqeVZnIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9JSTMwSXBYc0VlR29SSXpUOFRqeVZnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6Um9ib3RpY1NpbXVsYXRvciIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0lJMzBJNVhzRWVHb1JJelQ4VGp5VmciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9JSTMwSkpYc0VlR29SSXpUOFRqeVZnIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSUkzMEpaWHNFZUdvUkl6VDhUanlWZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0lJdjRVNVhzRWVHb1JJelQ4VGp5VmciIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfSUl2NFZKWHNFZUdvUkl6VDhUanlWZyIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0lJdjRWWlhzRWVHb1JJelQ4VGp5VmciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfSUl2NFZwWHNFZUdvUkl6VDhUanlWZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfSUlxXzBKWHNFZUdvUkl6VDhUanlWZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfSUl1cU1aWHNFZUdvUkl6VDhUanlWZyIgeD0iMTAiIHk9IjUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzBLZlN3Slh1RWVHUlRMVlpmNE55WXciIHR5cGU9IjIwNzMiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzBLaEg4Slh1RWVHUlRMVlpmNE55WXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wS2hIOFpYdUVlR1JUTFZaZjROeVl3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8wS2hIOHBYdUVlR1JUTFZaZjROeVl3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wS2hIODVYdUVlR1JUTFZaZjROeVl3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzBLaHZBSlh1RWVHUlRMVlpmNE55WXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMEtodkFaWHVFZUdSVExWWmY0TnlZdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzBLaHZBcFh1RWVHUlRMVlpmNE55WXciIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfMEtodkE1WHVFZUdSVExWWmY0TnlZdyIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzBLaHZCSlh1RWVHUlRMVlpmNE55WXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMEtodkJaWHVFZUdSVExWWmY0TnlZdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfdHdJVDRKWHRFZUdvUkl6VDhUanlWZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMEtmU3daWHVFZUdSVExWWmY0TnlZdyIgeD0iMTAiIHk9IjExNSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfLTV6VklKWHVFZUdSVExWWmY0TnlZdyIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfLTV6OE1KWHVFZUdSVExWWmY0TnlZdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXy01MGpRSlh1RWVHUlRMVlpmNE55WXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXy01MGpRWlh1RWVHUlRMVlpmNE55WXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXy01MGpRcFh1RWVHUlRMVlpmNE55WXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfLTUwalE1WHVFZUdSVExWWmY0TnlZdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tNTBqUkpYdUVlR1JUTFZaZjROeVl3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfLTUxS1VKWHVFZUdSVExWWmY0TnlZdyIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il8tNTFLVVpYdUVlR1JUTFZaZjROeVl3IiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfLTUxS1VwWHVFZUdSVExWWmY0TnlZdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8tNTFLVTVYdUVlR1JUTFZaZjROeVl3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19qZUdEWUpYdEVlR29SSXpUOFRqeVZnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8tNXpWSVpYdUVlR1JUTFZaZjROeVl3IiB4PSIxMCIgeT0iMjIwIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9CSVJaQUpZSkVlR0JJdkhDeW5NSy13IiB0eXBlPSIyMTA5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9CSVJaQXBZSkVlR0JJdkhDeW5NSy13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQklSWkE1WUpFZUdCSXZIQ3luTUstdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQklTQUVKWUpFZUdCSXZIQ3luTUstdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQklTQUVaWUpFZUdCSXZIQ3luTUstdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9CSVNBRXBZSkVlR0JJdkhDeW5NSy13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0JJU0FFNVlKRWVHQkl2SEN5bk1LLXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9CSVNBRkpZSkVlR0JJdkhDeW5NSy13IiB0eXBlPSI1MTkyIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfQklBNlVKWUpFZUdCSXZIQ3luTUstdyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfQklSWkFaWUpFZUdCSXZIQ3luTUstdyIgeD0iMjEwIiB5PSIyMjUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0tUelVjSllKRWVHQkl2SEN5bk1LLXciIHR5cGU9IjIxMDkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0tUelVjcFlKRWVHQkl2SEN5bk1LLXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LVHpVYzVZSkVlR0JJdkhDeW5NSy13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9LVHo3Z0pZSkVlR0JJdkhDeW5NSy13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LVHo3Z1pZSkVlR0JJdkhDeW5NSy13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0tUejdncFlKRWVHQkl2SEN5bk1LLXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfS1R6N2c1WUpFZUdCSXZIQ3luTUstdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0tUejdoSllKRWVHQkl2SEN5bk1LLXciIHR5cGU9IjUxOTIiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19LVGkxd0pZSkVlR0JJdkhDeW5NSy13Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9LVHpVY1pZSkVlR0JJdkhDeW5NSy13IiB4PSIyMTAiIHk9IjExNSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il94Y2FXOFlMcUVlR2hPWnVhLXFqZjBRIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfMFF0WVFIN0xFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19ya1ZKUVlMcUVlR2hPWnVhLXFqZjBRIi8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBreldCZkxfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTdHJpbmdWYWx1ZVN0eWxlIiB4bWk6aWQ9Il8wUXRZUVg3TEVlU0Z5TmJuTFlEQ2t3IiBuYW1lPSJkaWFncmFtX2NvbXBhdGliaWxpdHlfdmVyc2lvbiIgc3RyaW5nVmFsdWU9IjEuMC4wIi8+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19ya1ZKUVlMcUVlR2hPWnVhLXFqZjBRIi8+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX0h2bmdjSllKRWVHQkl2SEN5bk1LLXciIHR5cGU9IjQwMDIiIHNvdXJjZT0iX0JJUlpBSllKRWVHQkl2SEN5bk1LLXciIHRhcmdldD0iXy01elZJSlh1RWVHUlRMVlpmNE55WXciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX0h2bmdjWllKRWVHQkl2SEN5bk1LLXciIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIi8+CisgICAgICA8ZWxlbWVudCB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9Idm5nY3BZSkVlR0JJdkhDeW5NSy13IiBwb2ludHM9IlswLCAwLCAxNTAsIC02XSRbLTE1MSwgNTYsIC0xLCA1MF0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9Id0pFNEpZSkVlR0JJdkhDeW5NSy13IiBpZD0iKDAuMCwwLjM5KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX1VacGpFSllKRWVHQkl2SEN5bk1LLXciIHR5cGU9IjQwMDIiIHNvdXJjZT0iX0tUelVjSllKRWVHQkl2SEN5bk1LLXciIHRhcmdldD0iXzBLZlN3Slh1RWVHUlRMVlpmNE55WXciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX1VacGpFWllKRWVHQkl2SEN5bk1LLXciIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIi8+CisgICAgICA8ZWxlbWVudCB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9VWnBqRXBZSkVlR0JJdkhDeW5NSy13IiBwb2ludHM9IlswLCAwLCAxMTYsIC05XSRbLTQwLCAwLCA3NiwgLTldJFstOTUsIDAsIDIxLCAtOV0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9VYUxIZ0pZSkVlR0JJdkhDeW5NSy13IiBpZD0iKDAuMDM2ODA5ODE1OTUwOTIwMjUsMC42NykiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9VYUxIZ1pZSkVlR0JJdkhDeW5NSy13IiBpZD0iKDAuNzksMC43NCkiLz4KKyAgICA8L2VkZ2VzPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX1RaMG5JSlh3RWVHUlRMVlpmNE55WXciIHR5cGU9IlBhcHlydXNVTUxDbGFzc0RpYWdyYW0iIG5hbWU9IlJPU0RhdGFUeXBlcyIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9UWjBuSVpYd0VlR1JUTFZaZjROeVl3Ii8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfMXZCSlVIN0xFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19ya1ZKUVlMcUVlR2hPWnVhLXFqZjBRIi8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBreldDdkxfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTdHJpbmdWYWx1ZVN0eWxlIiB4bWk6aWQ9Il8xdks2VUg3TEVlU0Z5TmJuTFlEQ2t3IiBuYW1lPSJkaWFncmFtX2NvbXBhdGliaWxpdHlfdmVyc2lvbiIgc3RyaW5nVmFsdWU9IjEuMC4wIi8+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19ya1ZKUVlMcUVlR2hPWnVhLXFqZjBRIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfNDdmY1FKWHhFZUdSVExWWmY0TnlZdyIgdHlwZT0iY29tcG9uZW50ZGVmIiBuYW1lPSJTZW5zb3JBY3R1YXRvckNvbXBvbmVudHMiIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzhFRVd3Slh4RWVHUlRMVlpmNE55WXciIHR5cGU9IjIwNzMiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzhFRVd3Wlh4RWVHUlRMVlpmNE55WXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il84RUVXd3BYeEVlR1JUTFZaZjROeVl3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il84RUVXdzVYeEVlR1JUTFZaZjROeVl3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il84RUVXeEpYeEVlR1JUTFZaZjROeVl3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzhFRVd4Wlh4RWVHUlRMVlpmNE55WXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOEVFV3hwWHhFZUdSVExWWmY0TnlZdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il84RUVXeDVYeEVlR1JUTFZaZjROeVl3IiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOEVFV3lKWHhFZUdSVExWWmY0TnlZdyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOEVFV3laWHhFZUdSVExWWmY0TnlZdyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkFjdHVhdG9yU3lzdGVtIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOEVFV3lwWHhFZUdSVExWWmY0TnlZdyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il84RUVXeTVYeEVlR1JUTFZaZjROeVl3IiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOEVFV3pKWHhFZUdSVExWWmY0TnlZdyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzhFRVd6Wlh4RWVHUlRMVlpmNE55WXciIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfOEVFV3pwWHhFZUdSVExWWmY0TnlZdyIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzhFRVd6NVh4RWVHUlRMVlpmNE55WXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfOEVFVzBKWHhFZUdSVExWWmY0TnlZdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX21nYmtRSlh6RWVHUlRMVlpmNE55WXciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbWdjTFVKWHpFZUdSVExWWmY0TnlZdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbWdjTFVaWHpFZUdSVExWWmY0TnlZdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX21nY0xVcFh6RWVHUlRMVlpmNE55WXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbWdjTFU1WHpFZUdSVExWWmY0TnlZdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbWdjTFZKWHpFZUdSVExWWmY0TnlZdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX21nY0xWWlh6RWVHUlRMVlpmNE55WXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX21naEQwSlh6RWVHUlRMVlpmNE55WXciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX21oOEFJSlh6RWVHUlRMVlpmNE55WXciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbWg4QUlaWHpFZUdSVExWWmY0TnlZdyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbWg4QUlwWHpFZUdSVExWWmY0TnlZdyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX21oOEFJNVh6RWVHUlRMVlpmNE55WXciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX21oOEFKSlh6RWVHUlRMVlpmNE55WXciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbWdjTFZwWHpFZUdSVExWWmY0TnlZdyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9tZ2NMVjVYekVlR1JUTFZaZjROeVl3IiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9tZ2N5WUpYekVlR1JUTFZaZjROeVl3IiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX21nY3lZWlh6RWVHUlRMVlpmNE55WXciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX21nSUNRSlh6RWVHUlRMVlpmNE55WXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbWdia1FaWHpFZUdSVExWWmY0TnlZdyIgeD0iLTEwIiB5PSI1NSIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19PMVhyNEpYdEVlR29SSXpUOFRqeVZnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il84RUVXMFpYeEVlR1JUTFZaZjROeVl3IiB4PSIzNSIgeT0iMTI1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il84RUU5MEpYeEVlR1JUTFZaZjROeVl3IiB0eXBlPSIyMDczIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il84RUU5MFpYeEVlR1JUTFZaZjROeVl3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOEVFOTBwWHhFZUdSVExWWmY0TnlZdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOEVFOTA1WHhFZUdSVExWWmY0TnlZdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOEVFOTFKWHhFZUdSVExWWmY0TnlZdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il84RUU5MVpYeEVlR1JUTFZaZjROeVl3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzhFRTkxcFh4RWVHUlRMVlpmNE55WXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOEVFOTE1WHhFZUdSVExWWmY0TnlZdyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzhFRTkySlh4RWVHUlRMVlpmNE55WXciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzhFRTkyWlh4RWVHUlRMVlpmNE55WXciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpDYW1lcmFTeXN0ZW0iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il84RUU5MnBYeEVlR1JUTFZaZjROeVl3IiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzhFRTkyNVh4RWVHUlRMVlpmNE55WXciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il84RUU5M0pYeEVlR1JUTFZaZjROeVl3IiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfOEVFOTNaWHhFZUdSVExWWmY0TnlZdyIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il84RUU5M3BYeEVlR1JUTFZaZjROeVl3IiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfOEVFOTM1WHhFZUdSVExWWmY0TnlZdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il84RUU5NEpYeEVlR1JUTFZaZjROeVl3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfOEVFOTRaWHhFZUdSVExWWmY0TnlZdyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il84RUU5NHBYeEVlR1JUTFZaZjROeVl3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il84RUU5NDVYeEVlR1JUTFZaZjROeVl3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOEVFOTVKWHhFZUdSVExWWmY0TnlZdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il84RUU5NVpYeEVlR1JUTFZaZjROeVl3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il84RUU5NXBYeEVlR1JUTFZaZjROeVl3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOEVFOTU1WHhFZUdSVExWWmY0TnlZdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOEVFOTZKWHhFZUdSVExWWmY0TnlZdyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOEVFOTZaWHhFZUdSVExWWmY0TnlZdyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il84RUU5NnBYeEVlR1JUTFZaZjROeVl3IiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il84RUU5NjVYeEVlR1JUTFZaZjROeVl3IiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOEVFOTdKWHhFZUdSVExWWmY0TnlZdyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOEVFOTdaWHhFZUdSVExWWmY0TnlZdyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il84RUU5N3BYeEVlR1JUTFZaZjROeVl3IiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzhFRTk3NVh4RWVHUlRMVlpmNE55WXciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzhFRTk4Slh4RWVHUlRMVlpmNE55WXciIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfOEVFOThaWHhFZUdSVExWWmY0TnlZdyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfMGFudWtKWHdFZUdSVExWWmY0TnlZdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il84RUU5OHBYeEVlR1JUTFZaZjROeVl3IiB4PSIxMTIiIHk9IjcwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9lY2FmOEpYeUVlR1JUTFZaZjROeVl3IiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VjYWY4cFh5RWVHUlRMVlpmNE55WXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2VjYkhBSlh5RWVHUlRMVlpmNE55WXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lY2JIQVpYeUVlR1JUTFZaZjROeVl3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2VjYkhBcFh5RWVHUlRMVlpmNE55WXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VjYkhBNVh5RWVHUlRMVlpmNE55WXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9lY2JIQkpYeUVlR1JUTFZaZjROeVl3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lY2ZfZ0pYeUVlR1JUTFZaZjROeVl3IiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9lZHV1a0pYeUVlR1JUTFZaZjROeVl3IiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2VkdXVrWlh5RWVHUlRMVlpmNE55WXciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2VkdXVrcFh5RWVHUlRMVlpmNE55WXciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9lZHV1azVYeUVlR1JUTFZaZjROeVl3IiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9lZHV1bEpYeUVlR1JUTFZaZjROeVl3IiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2VjYkhCWlh5RWVHUlRMVlpmNE55WXciIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZWNiSEJwWHlFZUdSVExWWmY0TnlZdyIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZWNiSEI1WHlFZUdSVExWWmY0TnlZdyIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9lY2JIQ0pYeUVlR1JUTFZaZjROeVl3IiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19lY0ZJd0pYeUVlR1JUTFZaZjROeVl3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2VjYWY4Wlh5RWVHUlRMVlpmNE55WXciIHg9IjExMiIgeT0iNDUiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfeDkwdVFKWHJFZUdvUkl6VDhUanlWZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfOEVFOTg1WHhFZUdSVExWWmY0TnlZdyIgeD0iMjI1IiB5PSIxNSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfOEVHTDhKWHhFZUdSVExWWmY0TnlZdyIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOEVHTDhaWHhFZUdSVExWWmY0TnlZdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzhFR0w4cFh4RWVHUlRMVlpmNE55WXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzhFR0w4NVh4RWVHUlRMVlpmNE55WXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzhFR0w5Slh4RWVHUlRMVlpmNE55WXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOEVHTDlaWHhFZUdSVExWWmY0TnlZdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il84RUdMOXBYeEVlR1JUTFZaZjROeVl3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzhFR0w5NVh4RWVHUlRMVlpmNE55WXciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il84RUdMLUpYeEVlR1JUTFZaZjROeVl3IiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il84RUdMLVpYeEVlR1JUTFZaZjROeVl3IiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6U2Vuc29yU3lzdGVtIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOEVHTC1wWHhFZUdSVExWWmY0TnlZdyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il84RUdMLTVYeEVlR1JUTFZaZjROeVl3IiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOEVHTF9KWHhFZUdSVExWWmY0TnlZdyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzhFR0xfWlh4RWVHUlRMVlpmNE55WXciIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfOEVHTF9wWHhFZUdSVExWWmY0TnlZdyIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzhFR0xfNVh4RWVHUlRMVlpmNE55WXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfOEVHTUFKWHhFZUdSVExWWmY0TnlZdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzgzVWpNSlh5RWVHUlRMVlpmNE55WXciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfODNWS1FKWHlFZUdSVExWWmY0TnlZdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfODNWS1FaWHlFZUdSVExWWmY0TnlZdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzgzVktRcFh5RWVHUlRMVlpmNE55WXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfODNWS1E1WHlFZUdSVExWWmY0TnlZdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfODNWS1JKWHlFZUdSVExWWmY0TnlZdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzgzVktSWlh5RWVHUlRMVlpmNE55WXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzgzYXAwSlh5RWVHUlRMVlpmNE55WXciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzg0dERRSlh5RWVHUlRMVlpmNE55WXciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfODR0RFFaWHlFZUdSVExWWmY0TnlZdyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfODR0RFFwWHlFZUdSVExWWmY0TnlZdyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzg0dERRNVh5RWVHUlRMVlpmNE55WXciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzg0dERSSlh5RWVHUlRMVlpmNE55WXciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfODNWS1JwWHlFZUdSVExWWmY0TnlZdyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il84M1ZLUjVYeUVlR1JUTFZaZjROeVl3IiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il84M1Z4VUpYeUVlR1JUTFZaZjROeVl3IiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzgzVnhVWlh5RWVHUlRMVlpmNE55WXciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjXzgzQm9RSlh5RWVHUlRMVlpmNE55WXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfODNVak1aWHlFZUdSVExWWmY0TnlZdyIgeD0iOTkiIHk9IjU1IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX1hiTjgwSlhzRWVHb1JJelQ4VGp5VmciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzhFR01BWlh4RWVHUlRMVlpmNE55WXciIHg9IjIyNSIgeT0iMTIwIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il84RUdNQXBYeEVlR1JUTFZaZjROeVl3IiB0eXBlPSIyMDczIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il84RUdNQTVYeEVlR1JUTFZaZjROeVl3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOEVHTUJKWHhFZUdSVExWWmY0TnlZdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOEVHTUJaWHhFZUdSVExWWmY0TnlZdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOEVHTUJwWHhFZUdSVExWWmY0TnlZdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il84RUdNQjVYeEVlR1JUTFZaZjROeVl3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzhFR01DSlh4RWVHUlRMVlpmNE55WXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOEVHTUNaWHhFZUdSVExWWmY0TnlZdyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzhFR01DcFh4RWVHUlRMVlpmNE55WXciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzhFR01DNVh4RWVHUlRMVlpmNE55WXciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpHUFNTeXN0ZW0iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il84RUdNREpYeEVlR1JUTFZaZjROeVl3IiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzhFR01EWlh4RWVHUlRMVlpmNE55WXciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il84RUdNRHBYeEVlR1JUTFZaZjROeVl3IiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfOEVHTUQ1WHhFZUdSVExWWmY0TnlZdyIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il84RUdNRUpYeEVlR1JUTFZaZjROeVl3IiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfOEVHTUVaWHhFZUdSVExWWmY0TnlZdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il84RUdNRXBYeEVlR1JUTFZaZjROeVl3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfVXRKdjRKWHpFZUdSVExWWmY0TnlZdyIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9VdEtXOEpYekVlR1JUTFZaZjROeVl3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9VdEtXOFpYekVlR1JUTFZaZjROeVl3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVXRLVzhwWHpFZUdSVExWWmY0TnlZdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9VdEtXODVYekVlR1JUTFZaZjROeVl3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9VdEstQUpYekVlR1JUTFZaZjROeVl3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVXRLLUFaWHpFZUdSVExWWmY0TnlZdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVXRQMmdKWHpFZUdSVExWWmY0TnlZdyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVXVsVFFKWHpFZUdSVExWWmY0TnlZdyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9VdWxUUVpYekVlR1JUTFZaZjROeVl3IiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9VdWxUUXBYekVlR1JUTFZaZjROeVl3IiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVXVsNlVKWHpFZUdSVExWWmY0TnlZdyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVXVsNlVaWHpFZUdSVExWWmY0TnlZdyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9VdEstQXBYekVlR1JUTFZaZjROeVl3IiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1V0Sy1BNVh6RWVHUlRMVlpmNE55WXciIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1V0Sy1CSlh6RWVHUlRMVlpmNE55WXciIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVXRLLUJaWHpFZUdSVExWWmY0TnlZdyIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfVXMxbTBKWHpFZUdSVExWWmY0TnlZdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9VdEp2NFpYekVlR1JUTFZaZjROeVl3IiB4PSI5MCIgeT0iNjAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfcGFNRDBKWHNFZUdvUkl6VDhUanlWZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfOEVHTUU1WHhFZUdSVExWWmY0TnlZdyIgeD0iMjI1IiB5PSIyMjUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2NnZ3g4SllJRWVHQkl2SEN5bk1LLXciIHR5cGU9IjIxMDkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2NnaFpBSllJRWVHQkl2SEN5bk1LLXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9jZ2haQVpZSUVlR0JJdkhDeW5NSy13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9jZ2haQXBZSUVlR0JJdkhDeW5NSy13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9jZ2haQTVZSUVlR0JJdkhDeW5NSy13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2NnaFpCSllJRWVHQkl2SEN5bk1LLXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfY2doWkJaWUlFZUdCSXZIQ3luTUstdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2NnaFpCcFlJRWVHQkl2SEN5bk1LLXciIHR5cGU9IjUxOTIiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19jZ0h3WUpZSUVlR0JJdkhDeW5NSy13Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9jZ2d4OFpZSUVlR0JJdkhDeW5NSy13IiB4PSI1MDAiIHk9IjQwIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9sU3R4OEpZSkVlR0JJdkhDeW5NSy13IiB0eXBlPSIyMTA5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9sU3VaQUpZSkVlR0JJdkhDeW5NSy13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbFN1WkFaWUpFZUdCSXZIQ3luTUstdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbFN1WkFwWUpFZUdCSXZIQ3luTUstdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbFN1WkE1WUpFZUdCSXZIQ3luTUstdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9sU3VaQkpZSkVlR0JJdkhDeW5NSy13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2xTdVpCWllKRWVHQkl2SEN5bk1LLXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9sU3VaQnBZSkVlR0JJdkhDeW5NSy13IiB0eXBlPSI1MTkyIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfbFNlaFlKWUpFZUdCSXZIQ3luTUstdyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbFN0eDhaWUpFZUdCSXZIQ3luTUstdyIgeD0iNTUiIHk9IjM1IiBoZWlnaHQ9IjQxIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il95dXJuMEpZSkVlR0JJdkhDeW5NSy13IiB0eXBlPSIyMTA5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il95dXJuMHBZSkVlR0JJdkhDeW5NSy13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeXVzTzRKWUpFZUdCSXZIQ3luTUstdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfeXVzTzRaWUpFZUdCSXZIQ3luTUstdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeXVzTzRwWUpFZUdCSXZIQ3luTUstdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il95dXNPNDVZSkVlR0JJdkhDeW5NSy13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3l1c081SllKRWVHQkl2SEN5bk1LLXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il95dXNPNVpZSkVlR0JJdkhDeW5NSy13IiB0eXBlPSI1MTkyIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfeXVZczRKWUpFZUdCSXZIQ3luTUstdyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfeXVybjBaWUpFZUdCSXZIQ3luTUstdyIgeD0iNTAwIiB5PSIxNDUiIGhlaWdodD0iNDEiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0RfTlVjSllLRWVHQkl2SEN5bk1LLXciIHR5cGU9IjIxMDkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0RfTjdnSllLRWVHQkl2SEN5bk1LLXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9EX043Z1pZS0VlR0JJdkhDeW5NSy13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9EX043Z3BZS0VlR0JJdkhDeW5NSy13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9EX043ZzVZS0VlR0JJdkhDeW5NSy13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0RfT2lrSllLRWVHQkl2SEN5bk1LLXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRF9PaWtaWUtFZUdCSXZIQ3luTUstdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0RfT2lrcFlLRWVHQkl2SEN5bk1LLXciIHR5cGU9IjUxOTIiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19ELS1xOEpZS0VlR0JJdkhDeW5NSy13Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9EX05VY1pZS0VlR0JJdkhDeW5NSy13IiB4PSI1MDAiIHk9IjIxNSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il80N2ZjUVpYeEVlR1JUTFZaZjROeVl3Ii8+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19ya1ZKUVlMcUVlR2hPWnVhLXFqZjBRIi8+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX3NQeUhNSllJRWVHQkl2SEN5bk1LLXciIHR5cGU9IjQwMDIiIHNvdXJjZT0iX2NnZ3g4SllJRWVHQkl2SEN5bk1LLXciIHRhcmdldD0iXzhFRTkwSlh4RWVHUlRMVlpmNE55WXciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX3NQeUhNWllJRWVHQkl2SEN5bk1LLXciIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIi8+CisgICAgICA8ZWxlbWVudCB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9zUHlITXBZSUVlR0JJdkhDeW5NSy13IiBwb2ludHM9IlswLCA1LCAxODksIDBdJFstMTg0LCAxMiwgNSwgN10iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9zUWFaVUpZSUVlR0JJdkhDeW5NSy13IiBpZD0iKDAuMCwwLjY2KSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX3NRYVpVWllJRWVHQkl2SEN5bk1LLXciIGlkPSIoMC45NzU0MDk4MzYwNjU1NzM3LDAuOTYpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfdXpYQndKWUpFZUdCSXZIQ3luTUstdyIgdHlwZT0iNDAwMiIgc291cmNlPSJfbFN0eDhKWUpFZUdCSXZIQ3luTUstdyIgdGFyZ2V0PSJfOEVFV3dKWHhFZUdSVExWWmY0TnlZdyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfdXpYQndaWUpFZUdCSXZIQ3luTUstdyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiLz4KKyAgICAgIDxlbGVtZW50IHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX3V6WEJ3cFlKRWVHQkl2SEN5bk1LLXciIHBvaW50cz0iWy0yLCAwLCAwLCAtNTZdJFszLCA0OSwgNSwgLTddIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfdXo5ZXNKWUpFZUdCSXZIQ3luTUstdyIgaWQ9IigwLjc5LDEuMCkiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il91ejllc1pZSkVlR0JJdkhDeW5NSy13IiBpZD0iKDAuNzQwNDU4MDE1MjY3MTc1NiwwLjA3KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iXzlIQXRrSllKRWVHQkl2SEN5bk1LLXciIHR5cGU9IjQwMDIiIHNvdXJjZT0iX3l1cm4wSllKRWVHQkl2SEN5bk1LLXciIHRhcmdldD0iXzhFR0w4Slh4RWVHUlRMVlpmNE55WXciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iXzlIQXRrWllKRWVHQkl2SEN5bk1LLXciIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIi8+CisgICAgICA8ZWxlbWVudCB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il85SEF0a3BZSkVlR0JJdkhDeW5NSy13IiBwb2ludHM9IlswLCAwLCAxNjksIDExXSRbLTE2NiwgLTEyLCAzLCAtMV0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il85SGlTQUpZSkVlR0JJdkhDeW5NSy13IiBpZD0iKDAuMCwwLjYzNDE0NjM0MTQ2MzQxNDYpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfOUhpU0FaWUpFZUdCSXZIQ3luTUstdyIgaWQ9IigwLjk3MjQ3NzA2NDIyMDE4MzUsMC40NSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9KS2NETUpZS0VlR0JJdkhDeW5NSy13IiB0eXBlPSI0MDAyIiBzb3VyY2U9Il9EX05VY0pZS0VlR0JJdkhDeW5NSy13IiB0YXJnZXQ9Il84RUdNQXBYeEVlR1JUTFZaZjROeVl3IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9KS2NETVpZS0VlR0JJdkhDeW5NSy13IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIvPgorICAgICAgPGVsZW1lbnQgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfSktjRE1wWUtFZUdCSXZIQ3luTUstdyIgcG9pbnRzPSJbMCwgMCwgMTk0LCAtMTZdJFstMTc1LCAxNCwgMTksIC0yXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX0pLOUFrSllLRWVHQkl2SEN5bk1LLXciIGlkPSIoMC4wLDAuNTEpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfSks5QWtaWUtFZUdCSXZIQ3luTUstdyIgaWQ9IigwLjgxLDAuNDcpIi8+CisgICAgPC9lZGdlcz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9IVk9oOEpYeUVlR1JUTFZaZjROeVl3IiB0eXBlPSJDb21wb3NpdGVTdHJ1Y3R1cmUiIG5hbWU9IkNvbnRyb2xDb21wb25lbnQiIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0t5X0NRSlh5RWVHUlRMVlpmNE55WXciIHR5cGU9IjIwNzMiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0t5X0NRWlh5RWVHUlRMVlpmNE55WXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LeV9DUXBYeUVlR1JUTFZaZjROeVl3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9LeV9DUTVYeUVlR1JUTFZaZjROeVl3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LeV9DUkpYeUVlR1JUTFZaZjROeVl3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0t5X0NSWlh5RWVHUlRMVlpmNE55WXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfS3lfQ1JwWHlFZUdSVExWWmY0TnlZdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9LeV9DUjVYeUVlR1JUTFZaZjROeVl3IiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfS3lfQ1NKWHlFZUdSVExWWmY0TnlZdyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfS3lfQ1NaWHlFZUdSVExWWmY0TnlZdyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlJvYm90aWNTeXN0ZW0iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LeV9DU3BYeUVlR1JUTFZaZjROeVl3IiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0t5X0NTNVh5RWVHUlRMVlpmNE55WXciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LeV9DVEpYeUVlR1JUTFZaZjROeVl3IiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfS3lfQ1RaWHlFZUdSVExWWmY0TnlZdyIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9LeV9DVHBYeUVlR1JUTFZaZjROeVl3IiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfS3lfQ1Q1WHlFZUdSVExWWmY0TnlZdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9LeV9DVUpYeUVlR1JUTFZaZjROeVl3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfOENOM2NKWURFZUdUd2FRcHZJS3EwUSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il84Q04zY3BZREVlR1R3YVFwdklLcTBRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il84Q04zYzVZREVlR1R3YVFwdklLcTBRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOENPZWdKWURFZUdUd2FRcHZJS3EwUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il84Q09lZ1pZREVlR1R3YVFwdklLcTBRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il84Q09lZ3BZREVlR1R3YVFwdklLcTBRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOENQRmtKWURFZUdUd2FRcHZJS3EwUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOENULUVKWURFZUdUd2FRcHZJS3EwUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOERheFVKWURFZUdUd2FRcHZJS3EwUSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il84RGF4VVpZREVlR1R3YVFwdklLcTBRIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il84RGF4VXBZREVlR1R3YVFwdklLcTBRIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOERheFU1WURFZUdUd2FRcHZJS3EwUSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOERheFZKWURFZUdUd2FRcHZJS3EwUSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il84Q1BGa1pZREVlR1R3YVFwdklLcTBRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzhDUEZrcFlERWVHVHdhUXB2SUtxMFEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzhDUEZrNVlERWVHVHdhUXB2SUtxMFEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfOENQRmxKWURFZUdUd2FRcHZJS3EwUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfOEJfMUFKWURFZUdUd2FRcHZJS3EwUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il84Q04zY1pZREVlR1R3YVFwdklLcTBRIiB4PSItMTAiIHk9IjUyIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9LeDJVb0pZRUVlR1R3YVFwdklLcTBRIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0t4MjdzSllFRWVHVHdhUXB2SUtxMFEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0t4MjdzWllFRWVHVHdhUXB2SUtxMFEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9LeDI3c3BZRUVlR1R3YVFwdklLcTBRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0t4MjdzNVlFRWVHVHdhUXB2SUtxMFEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0t4M2l3SllFRWVHVHdhUXB2SUtxMFEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LeDNpd1pZRUVlR1R3YVFwdklLcTBRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9LeDhiUUpZRUVlR1R3YVFwdklLcTBRIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LekNBWUpZRUVlR1R3YVFwdklLcTBRIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0t6Q0FZWllFRWVHVHdhUXB2SUtxMFEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0t6Q0FZcFlFRWVHVHdhUXB2SUtxMFEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LekNBWTVZRUVlR1R3YVFwdklLcTBRIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LekNBWkpZRUVlR1R3YVFwdklLcTBRIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0t4M2l3cFlFRWVHVHdhUXB2SUtxMFEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfS3gzaXc1WUVFZUdUd2FRcHZJS3EwUSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfS3gzaXhKWUVFZUdUd2FRcHZJS3EwUSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9LeDNpeFpZRUVlR1R3YVFwdklLcTBRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19LeG1kQUpZRUVlR1R3YVFwdklLcTBRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0t4MlVvWllFRWVHVHdhUXB2SUtxMFEiIHg9Ii0xMCIgeT0iODAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX01FZ1hNTXpxRWVHSTU0LWJoenp1b0EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01FZ1hNc3pxRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01FZ1hNOHpxRWVHSTU0LWJoenp1b0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NRWdYTk16cUVlR0k1NC1iaHp6dW9BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01FZ1hOY3pxRWVHSTU0LWJoenp1b0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01FZ1hOc3pxRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NRWdYTjh6cUVlR0k1NC1iaHp6dW9BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NRWl6Y2N6cUVlR0k1NC1iaHp6dW9BIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NR0lIME16cUVlR0k1NC1iaHp6dW9BIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01HSUgwY3pxRWVHSTU0LWJoenp1b0EiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpTZXJ2aWNlUG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTUdJSDBzenFFZUdJNTQtYmh6enVvQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01HSUgwOHpxRWVHSTU0LWJoenp1b0EiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01HSXU0TXpxRWVHSTU0LWJoenp1b0EiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTUVnWE9NenFFZUdJNTQtYmh6enVvQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9NRWdYT2N6cUVlR0k1NC1iaHp6dW9BIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9NRWctUU16cUVlR0k1NC1iaHp6dW9BIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX01FZy1RY3pxRWVHSTU0LWJoenp1b0EiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX01FUFJjTXpxRWVHSTU0LWJoenp1b0EiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTUVnWE1jenFFZUdJNTQtYmh6enVvQSIgeD0iMjUxIiB5PSI1MiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19HYTlrQUpYd0VlR1JUTFZaZjROeVl3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9LeV9DVVpYeUVlR1JUTFZaZjROeVl3IiB4PSIyMzYiIHk9IjE0MCIgd2lkdGg9IjI2MSIgaGVpZ2h0PSIxOTMiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0t5X0NVcFh5RWVHUlRMVlpmNE55WXciIHR5cGU9IjIwNzMiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0t5X0NVNVh5RWVHUlRMVlpmNE55WXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LeV9DVkpYeUVlR1JUTFZaZjROeVl3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9LeV9DVlpYeUVlR1JUTFZaZjROeVl3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LeV9DVnBYeUVlR1JUTFZaZjROeVl3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0t5X0NWNVh5RWVHUlRMVlpmNE55WXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfS3lfQ1dKWHlFZUdSVExWWmY0TnlZdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9LeV9DV1pYeUVlR1JUTFZaZjROeVl3IiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfS3lfQ1dwWHlFZUdSVExWWmY0TnlZdyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfS3lfQ1c1WHlFZUdSVExWWmY0TnlZdyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlJvYm90aWNNaWRkbGV3YXJlIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfS3lfQ1hKWHlFZUdSVExWWmY0TnlZdyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0t5X0NYWlh5RWVHUlRMVlpmNE55WXciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LeV9DWHBYeUVlR1JUTFZaZjROeVl3IiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfS3lfQ1g1WHlFZUdSVExWWmY0TnlZdyIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9LeV9DWUpYeUVlR1JUTFZaZjROeVl3IiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfS3lfQ1laWHlFZUdSVExWWmY0TnlZdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9LeV9DWXBYeUVlR1JUTFZaZjROeVl3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19sZW1DNEpYcUVlR29SSXpUOFRqeVZnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9LeV9DWTVYeUVlR1JUTFZaZjROeVl3IiB4PSIxNiIgeT0iMTYiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfSFZPaDhaWHlFZUdSVExWWmY0TnlZdyIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iXzBXaEZVSDdMRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfcmtWSlFZTHFFZUdoT1p1YS1xamYwUSIvPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3pXQmZMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U3RyaW5nVmFsdWVTdHlsZSIgeG1pOmlkPSJfMFdoRlVYN0xFZVNGeU5ibkxZRENrdyIgbmFtZT0iZGlhZ3JhbV9jb21wYXRpYmlsaXR5X3ZlcnNpb24iIHN0cmluZ1ZhbHVlPSIxLjAuMCIvPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfcmtWSlFZTHFFZUdoT1p1YS1xamYwUSIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX2tvNVRnSlgyRWVHUlRMVlpmNE55WXciIHR5cGU9ImFyY2hpdGVjdHVyZSIgbmFtZT0iUm9zQXJjaGl0ZWN0dXJlIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX2tvNVRnWlgyRWVHUlRMVlpmNE55WXciLz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX0dhOWtBSlh3RWVHUlRMVlpmNE55WXciLz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9sS29TSUpYM0VlR0RJcHQ3N21ya1hRIiB0eXBlPSJDb21wb3NpdGVTdHJ1Y3R1cmUiIG5hbWU9IkF2aW9uaWNDb25uZWN0aW9uIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9FbWtmSUpYNUVlR0RJcHQ3N21ya1hRIiB0eXBlPSIyMDczIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9FbWxHTUpYNUVlR0RJcHQ3N21ya1hRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRW1sR01aWDVFZUdESXB0NzdtcmtYUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRW1sR01wWDVFZUdESXB0NzdtcmtYUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRW1sR001WDVFZUdESXB0NzdtcmtYUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9FbWxHTkpYNUVlR0RJcHQ3N21ya1hRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0VtbEdOWlg1RWVHRElwdDc3bXJrWFEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRW10Q0FKWDVFZUdESXB0NzdtcmtYUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0VuN0tBSlg1RWVHRElwdDc3bXJrWFEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0VuN0tBWlg1RWVHRElwdDc3bXJrWFEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpSb2JvdGljU3lzdGVtIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRW43S0FwWDVFZUdESXB0NzdtcmtYUSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9FbjdLQTVYNUVlR0RJcHQ3N21ya1hRIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRW43S0JKWDVFZUdESXB0NzdtcmtYUSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0VtbEdOcFg1RWVHRElwdDc3bXJrWFEiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfRW1sR041WDVFZUdESXB0NzdtcmtYUSIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3J0V0dVSlg1RWVHRElwdDc3bXJrWFEiIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9ydFd0WUpYNUVlR0RJcHQ3N21ya1hRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3J0V3RZWlg1RWVHRElwdDc3bXJrWFEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcnRXdFlwWDVFZUdESXB0NzdtcmtYUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3J0V3RZNVg1RWVHRElwdDc3bXJrWFEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9ydFd0WkpYNUVlR0RJcHQ3N21ya1hRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ydFd0WlpYNUVlR0RJcHQ3N21ya1hRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9ydFd0WnBYNUVlR0RJcHQ3N21ya1hRIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9ydFd0WjVYNUVlR0RJcHQ3N21ya1hRIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3J0V3RhSlg1RWVHRElwdDc3bXJrWFEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3J0V3RhWlg1RWVHRElwdDc3bXJrWFEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX09JMjRRSlg2RWVHRElwdDc3bXJrWFEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX09JNEdZSlg2RWVHRElwdDc3bXJrWFEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9PSTRHWVpYNkVlR0RJcHQ3N21ya1hRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9PSTRHWXBYNkVlR0RJcHQ3N21ya1hRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9PSTRHWTVYNkVlR0RJcHQ3N21ya1hRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX09JNEdaSlg2RWVHRElwdDc3bXJrWFEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT0k0dGNKWDZFZUdESXB0NzdtcmtYUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX09JNHRjWlg2RWVHRElwdDc3bXJrWFEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX09JNHRjcFg2RWVHRElwdDc3bXJrWFEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfT0k0dGM1WDZFZUdESXB0NzdtcmtYUSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfT0k0dGRKWDZFZUdESXB0NzdtcmtYUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI184M0JvUUpYeUVlR1JUTFZaZjROeVl3Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9PSTI0UVpYNkVlR0RJcHQ3N21ya1hRIiB4PSIxNDYiIHk9IjUwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX3J0RzF3Slg1RWVHRElwdDc3bXJrWFEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9ydFdHVVpYNUVlR0RJcHQ3N21ya1hRIiB4PSI1IiB5PSIyIiB3aWR0aD0iMTU2IiBoZWlnaHQ9IjEwMSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9VUkNYY0pYNkVlR0RJcHQ3N21ya1hRIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVVJDWGNwWDZFZUdESXB0NzdtcmtYUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9VUkNYYzVYNkVlR0RJcHQ3N21ya1hRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1VSQy1nSlg2RWVHRElwdDc3bXJrWFEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9VUkMtZ1pYNkVlR0RJcHQ3N21ya1hRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVVJDLWdwWDZFZUdESXB0NzdtcmtYUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVVJDLWc1WDZFZUdESXB0NzdtcmtYUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfVVJDLWhKWDZFZUdESXB0NzdtcmtYUSIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfVVJDLWhaWDZFZUdESXB0NzdtcmtYUSIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9VUkMtaHBYNkVlR0RJcHQ3N21ya1hRIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9VUkMtaDVYNkVlR0RJcHQ3N21ya1hRIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9ZUU9KMEpYNkVlR0RJcHQ3N21ya1hRIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9ZUU93NEpYNkVlR0RJcHQ3N21ya1hRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWVFPdzRaWDZFZUdESXB0NzdtcmtYUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfWVFQWDhKWDZFZUdESXB0NzdtcmtYUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWVFQWDhaWDZFZUdESXB0NzdtcmtYUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9ZUVBYOHBYNkVlR0RJcHQ3N21ya1hRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1lRUFg4NVg2RWVHRElwdDc3bXJrWFEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9ZUVBYOUpYNkVlR0RJcHQ3N21ya1hRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9ZUVBfQUpYNkVlR0RJcHQ3N21ya1hRIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1lRUF9BWlg2RWVHRElwdDc3bXJrWFEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1lRUF9BcFg2RWVHRElwdDc3bXJrWFEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfR3IyR1lKWDFFZUdSVExWWmY0TnlZdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfWVFPSjBaWDZFZUdESXB0NzdtcmtYUSIgeD0iLTEwIiB5PSIyNSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfajdJNDBKWDZFZUdESXB0NzdtcmtYUSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfajdLRzhKWDZFZUdESXB0NzdtcmtYUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2o3S0c4Wlg2RWVHRElwdDc3bXJrWFEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2o3S0c4cFg2RWVHRElwdDc3bXJrWFEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2o3S0c4NVg2RWVHRElwdDc3bXJrWFEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfajdLRzlKWDZFZUdESXB0NzdtcmtYUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9qN0t1QUpYNkVlR0RJcHQ3N21ya1hRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfajdLdUFaWDZFZUdESXB0NzdtcmtYUSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfajdLdUFwWDZFZUdESXB0NzdtcmtYUSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9qN0t1QTVYNkVlR0RJcHQ3N21ya1hRIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9qN0t1QkpYNkVlR0RJcHQ3N21ya1hRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjXzhDX1JVSlgwRWVHUlRMVlpmNE55WXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2o3STQwWlg2RWVHRElwdDc3bXJrWFEiIHg9Ii0xMCIgeT0iNjYiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2xxMWZZSlg3RWVHRElwdDc3bXJrWFEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2xxMkdjSlg3RWVHRElwdDc3bXJrWFEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9scTJ0Z0pYN0VlR0RJcHQ3N21ya1hRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9scTJ0Z1pYN0VlR0RJcHQ3N21ya1hRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9scTJ0Z3BYN0VlR0RJcHQ3N21ya1hRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2xxMnRnNVg3RWVHRElwdDc3bXJrWFEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbHEydGhKWDdFZUdESXB0NzdtcmtYUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2xxM1VrSlg3RWVHRElwdDc3bXJrWFEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2xxM1VrWlg3RWVHRElwdDc3bXJrWFEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbHEzVWtwWDdFZUdESXB0NzdtcmtYUSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfbHEzVWs1WDdFZUdESXB0NzdtcmtYUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19UcjFLNEpYMUVlR1JUTFZaZjROeVl3Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9scTFmWVpYN0VlR0RJcHQ3N21ya1hRIiB4PSIxMzciIHk9IjQ1Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX1VRMWpJSlg2RWVHRElwdDc3bXJrWFEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9VUkNYY1pYNkVlR0RJcHQ3N21ya1hRIiB4PSIxOTUiIHk9IjgwIiB3aWR0aD0iMTQ3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3J6YWNvSlg2RWVHRElwdDc3bXJrWFEiIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9yemFjb3BYNkVlR0RJcHQ3N21ya1hRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3J6YkRzSlg2RWVHRElwdDc3bXJrWFEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcnpiRHNaWDZFZUdESXB0NzdtcmtYUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3J6YkRzcFg2RWVHRElwdDc3bXJrWFEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9yemJEczVYNkVlR0RJcHQ3N21ya1hRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9yemJEdEpYNkVlR0RJcHQ3N21ya1hRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9yemJEdFpYNkVlR0RJcHQ3N21ya1hRIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9yemJEdHBYNkVlR0RJcHQ3N21ya1hRIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3J6YkR0NVg2RWVHRElwdDc3bXJrWFEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3J6YkR1Slg2RWVHRElwdDc3bXJrWFEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3hyUkEwSlg2RWVHRElwdDc3bXJrWFEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3hyU084Slg2RWVHRElwdDc3bXJrWFEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il94clNPOFpYNkVlR0RJcHQ3N21ya1hRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il94clNPOHBYNkVlR0RJcHQ3N21ya1hRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il94clNPODVYNkVlR0RJcHQ3N21ya1hRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3hyUzJBSlg2RWVHRElwdDc3bXJrWFEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeHJTMkFaWDZFZUdESXB0NzdtcmtYUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3hyUzJBcFg2RWVHRElwdDc3bXJrWFEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3hyUzJBNVg2RWVHRElwdDc3bXJrWFEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfeHJTMkJKWDZFZUdESXB0NzdtcmtYUSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfeHJTMkJaWDZFZUdESXB0NzdtcmtYUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19VczFtMEpYekVlR1JUTFZaZjROeVl3Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il94clJBMFpYNkVlR0RJcHQ3N21ya1hRIiB4PSIxNDEiIHk9IjMwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX3J6SXYwSlg2RWVHRElwdDc3bXJrWFEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9yemFjb1pYNkVlR0RJcHQ3N21ya1hRIiB4PSI1IiB5PSIxNTUiIHdpZHRoPSIxNTEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfQ3QtNjhKWDdFZUdESXB0NzdtcmtYUSIgdHlwZT0iMzA3MCIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0N0X2lBSlg3RWVHRElwdDc3bXJrWFEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQ3RfaUFaWDdFZUdESXB0NzdtcmtYUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9DdF9pQXBYN0VlR0RJcHQ3N21ya1hRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQ3RfaUE1WDdFZUdESXB0NzdtcmtYUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0N0X2lCSlg3RWVHRElwdDc3bXJrWFEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0N0X2lCWlg3RWVHRElwdDc3bXJrWFEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0N0X2lCcFg3RWVHRElwdDc3bXJrWFEiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0N0X2lCNVg3RWVHRElwdDc3bXJrWFEiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfQ3RfaUNKWDdFZUdESXB0NzdtcmtYUSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfQ3RfaUNaWDdFZUdESXB0NzdtcmtYUSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfc0Y2RllKWDdFZUdESXB0NzdtcmtYUSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfc0Y3VGdKWDdFZUdESXB0NzdtcmtYUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3NGN1RnWlg3RWVHRElwdDc3bXJrWFEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3NGN1RncFg3RWVHRElwdDc3bXJrWFEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3NGN1RnNVg3RWVHRElwdDc3bXJrWFEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfc0Y3VGhKWDdFZUdESXB0NzdtcmtYUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9zRjc2a0pYN0VlR0RJcHQ3N21ya1hRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfc0Y3NmtaWDdFZUdESXB0NzdtcmtYUSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfc0Y3NmtwWDdFZUdESXB0NzdtcmtYUSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9zRjc2azVYN0VlR0RJcHQ3N21ya1hRIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9zRjc2bEpYN0VlR0RJcHQ3N21ya1hRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX21nSUNRSlh6RWVHUlRMVlpmNE55WXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3NGNkZZWlg3RWVHRElwdDc3bXJrWFEiIHg9Ii0xMCIgeT0iNDAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfQ3R2RFVKWDdFZUdESXB0NzdtcmtYUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0N0LTY4Wlg3RWVHRElwdDc3bXJrWFEiIHg9IjM4MCIgeT0iMTU1IiB3aWR0aD0iMTk2Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0VtbEdPSlg1RWVHRElwdDc3bXJrWFEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfRW1sR09aWDVFZUdESXB0NzdtcmtYUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfRWwyR1lKWDVFZUdESXB0NzdtcmtYUSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfRW1rZklaWDVFZUdESXB0NzdtcmtYUSIgeD0iMjAiIHk9IjEwIiB3aWR0aD0iNTk2IiBoZWlnaHQ9IjMxMSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9sS29TSVpYM0VlR0RJcHQ3N21ya1hRIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfMVFGeG9IN0xFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19ya1ZKUVlMcUVlR2hPWnVhLXFqZjBRIi8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBreldBUExfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTdHJpbmdWYWx1ZVN0eWxlIiB4bWk6aWQ9Il8xUUZ4b1g3TEVlU0Z5TmJuTFlEQ2t3IiBuYW1lPSJkaWFncmFtX2NvbXBhdGliaWxpdHlfdmVyc2lvbiIgc3RyaW5nVmFsdWU9IjEuMC4wIi8+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19ya1ZKUVlMcUVlR2hPWnVhLXFqZjBRIi8+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2FIeGhVSlg2RWVHRElwdDc3bXJrWFEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX09JMjRRSlg2RWVHRElwdDc3bXJrWFEiIHRhcmdldD0iX1lRT0owSlg2RWVHRElwdDc3bXJrWFEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9hSHl2Y0pYNkVlR0RJcHQ3N21ya1hRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYUh5dmNaWDZFZUdESXB0NzdtcmtYUSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9hSHl2Y3BYNkVlR0RJcHQ3N21ya1hRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYUh5dmM1WDZFZUdESXB0NzdtcmtYUSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYUh5dmRKWDZFZUdESXB0NzdtcmtYUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2FIeXZkWlg2RWVHRElwdDc3bXJrWFEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYUh5dmRwWDZFZUdESXB0NzdtcmtYUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2FIeldnSlg2RWVHRElwdDc3bXJrWFEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9hSHhoVVpYNkVlR0RJcHQ3N21ya1hRIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfYUhZZndKWDZFZUdESXB0NzdtcmtYUSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfYUh4aFVwWDZFZUdESXB0NzdtcmtYUSIgcG9pbnRzPSJbMTAsIDYsIC05NCwgLTY0XSRbMTAzLCA4MCwgLTEsIDEwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX3pNajBjSlg2RWVHRElwdDc3bXJrWFEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX3hyUkEwSlg2RWVHRElwdDc3bXJrWFEiIHRhcmdldD0iX2o3STQwSlg2RWVHRElwdDc3bXJrWFEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il96TWtiZ0pYNkVlR0RJcHQ3N21ya1hRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfek1sQ2tKWDZFZUdESXB0NzdtcmtYUSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il96TWxDa1pYNkVlR0RJcHQ3N21ya1hRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfek1sQ2twWDZFZUdESXB0NzdtcmtYUSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfek1sQ2s1WDZFZUdESXB0NzdtcmtYUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3pNbENsSlg2RWVHRElwdDc3bXJrWFEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfek1sQ2xaWDZFZUdESXB0NzdtcmtYUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3pNbENscFg2RWVHRElwdDc3bXJrWFEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il96TWowY1pYNkVlR0RJcHQ3N21ya1hRIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfek1WSzhKWDZFZUdESXB0NzdtcmtYUSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfek1qMGNwWDZFZUdESXB0NzdtcmtYUSIgcG9pbnRzPSJbNCwgMCwgLTE2NCwgLTE1XSRbMTU4LCAxNSwgLTEwLCAwXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX3pNX1NRSlg2RWVHRElwdDc3bXJrWFEiIGlkPSIoMC44LDAuNDUpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfdU95ZGNKWDdFZUdESXB0NzdtcmtYUSIgdHlwZT0iNDAxMyIgc291cmNlPSJfbHExZllKWDdFZUdESXB0NzdtcmtYUSIgdGFyZ2V0PSJfc0Y2RllKWDdFZUdESXB0NzdtcmtYUSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3VPekVnSlg3RWVHRElwdDc3bXJrWFEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il91T3pFZ1pYN0VlR0RJcHQ3N21ya1hRIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3VPekVncFg3RWVHRElwdDc3bXJrWFEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il91T3pFZzVYN0VlR0RJcHQ3N21ya1hRIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il91T3pFaEpYN0VlR0RJcHQ3N21ya1hRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdU96RWhaWDdFZUdESXB0NzdtcmtYUSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il91T3pya0pYN0VlR0RJcHQ3N21ya1hRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdU96cmtaWDdFZUdESXB0NzdtcmtYUSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX3VPeWRjWlg3RWVHRElwdDc3bXJrWFEiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI191T2xwSUpYN0VlR0RJcHQ3N21ya1hRIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il91T3lkY3BYN0VlR0RJcHQ3N21ya1hRIiBwb2ludHM9Ils5LCAxMCwgLTU5LCAtNjBdJFs1OCwgNzAsIC0xMCwgMF0iLz4KKyAgICA8L2VkZ2VzPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX2h3UmNZSlg5RWVHRElwdDc3bXJrWFEiIHR5cGU9ImFyY2hpdGVjdHVyZSIgbmFtZT0iQ2FtZXJhQ29ubmVjdGlvbkRpYWdyYW0iIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfaHdSY1laWDlFZUdESXB0NzdtcmtYUSIvPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfRWwyR1lKWDVFZUdESXB0NzdtcmtYUSIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iXzlPSDRvSlg5RWVHV2xjUWZpT05GOFEiIHR5cGU9IkNvbXBvc2l0ZVN0cnVjdHVyZSIgbmFtZT0iQ2FtZXJhQ29ubmVjdGlvbiIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfX05hMjRKWDlFZUdXbGNRZmlPTkY4USIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfX05jRkFKWDlFZUdXbGNRZmlPTkY4USIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19OY0ZBWlg5RWVHV2xjUWZpT05GOFEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19OY0ZBcFg5RWVHV2xjUWZpT05GOFEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19OY3NFSlg5RWVHV2xjUWZpT05GOFEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfX05jc0VaWDlFZUdXbGNRZmlPTkY4USIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fTmNzRXBYOUVlR1dsY1FmaU9ORjhRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19OcUhjSlg5RWVHV2xjUWZpT05GOFEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fUFR0UUpYOUVlR1dsY1FmaU9ORjhRIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fUFR0UVpYOUVlR1dsY1FmaU9ORjhRIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6Um9ib3RpY1N5c3RlbSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19QVHRRcFg5RWVHV2xjUWZpT05GOFEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX1BUdFE1WDlFZUdXbGNRZmlPTkY4USIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19QVHRSSlg5RWVHV2xjUWZpT05GOFEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9fTmNzRTVYOUVlR1dsY1FmaU9ORjhRIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX19OY3NGSlg5RWVHV2xjUWZpT05GOFEiIHR5cGU9IjcwNzMiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HaDVLRUpYLUVlR1dsY1FmaU9ORjhRIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR2g1eElKWC1FZUdXbGNRZmlPTkY4USIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HaDV4SVpYLUVlR1dsY1FmaU9ORjhRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0doNXhJcFgtRWVHV2xjUWZpT05GOFEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HaDV4STVYLUVlR1dsY1FmaU9ORjhRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR2g2WU1KWC1FZUdXbGNRZmlPTkY4USIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR2g2WU1aWC1FZUdXbGNRZmlPTkY4USIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR2g2WU1wWC1FZUdXbGNRZmlPTkY4USIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfR2g2WU01WC1FZUdXbGNRZmlPTkY4USIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9HaDZZTkpYLUVlR1dsY1FmaU9ORjhRIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9HaDZZTlpYLUVlR1dsY1FmaU9ORjhRIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9hYUs4RUpYLUVlR1dsY1FmaU9ORjhRIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9hYUxqSUpYLUVlR1dsY1FmaU9ORjhRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYWFNS01KWC1FZUdXbGNRZmlPTkY4USIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYWFNS01aWC1FZUdXbGNRZmlPTkY4USIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYWFNS01wWC1FZUdXbGNRZmlPTkY4USIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9hYU1LTTVYLUVlR1dsY1FmaU9ORjhRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2FhTUtOSlgtRWVHV2xjUWZpT05GOFEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9hYU1LTlpYLUVlR1dsY1FmaU9ORjhRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9hYU14UUpYLUVlR1dsY1FmaU9ORjhRIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2FhTXhRWlgtRWVHV2xjUWZpT05GOFEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2FhTXhRcFgtRWVHV2xjUWZpT05GOFEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfMGFudWtKWHdFZUdSVExWWmY0TnlZdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfYWFLOEVaWC1FZUdXbGNRZmlPTkY4USIgeD0iMjI2IiB5PSI0MCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYWF0SGtKWC1FZUdXbGNRZmlPTkY4USIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYWF0dW9KWC1FZUdXbGNRZmlPTkY4USIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2FhdHVvWlgtRWVHV2xjUWZpT05GOFEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2FhdHVvcFgtRWVHV2xjUWZpT05GOFEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2FhdHVvNVgtRWVHV2xjUWZpT05GOFEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYWF0dXBKWC1FZUdXbGNRZmlPTkY4USIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9hYXR1cFpYLUVlR1dsY1FmaU9ORjhRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYWF1VnNKWC1FZUdXbGNRZmlPTkY4USIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYWF1VnNaWC1FZUdXbGNRZmlPTkY4USIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9hYXVWc3BYLUVlR1dsY1FmaU9ORjhRIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9hYXVWczVYLUVlR1dsY1FmaU9ORjhRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX2VjRkl3Slh5RWVHUlRMVlpmNE55WXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2FhdEhrWlgtRWVHV2xjUWZpT05GOFEiIHg9IjIyNiIgeT0iNzAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfR2hsb0VKWC1FZUdXbGNRZmlPTkY4USIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0doNUtFWlgtRWVHV2xjUWZpT05GOFEiIHg9IjEwIiB5PSI1IiB3aWR0aD0iMjM2Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0w2TUVjSlgtRWVHV2xjUWZpT05GOFEiIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9MNk1FY3BYLUVlR1dsY1FmaU9ORjhRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0w2TUVjNVgtRWVHV2xjUWZpT05GOFEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTDZNcmdKWC1FZUdXbGNRZmlPTkY4USIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0w2TXJnWlgtRWVHV2xjUWZpT05GOFEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9MNk1yZ3BYLUVlR1dsY1FmaU9ORjhRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9MNk1yZzVYLUVlR1dsY1FmaU9ORjhRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9MNk1yaEpYLUVlR1dsY1FmaU9ORjhRIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9MNk1yaFpYLUVlR1dsY1FmaU9ORjhRIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0w2TXJocFgtRWVHV2xjUWZpT05GOFEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0w2TXJoNVgtRWVHV2xjUWZpT05GOFEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1REd0lJSlgtRWVHV2xjUWZpT05GOFEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1REeFdRSlgtRWVHV2xjUWZpT05GOFEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9URHhXUVpYLUVlR1dsY1FmaU9ORjhRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9URHhXUXBYLUVlR1dsY1FmaU9ORjhRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9URHhXUTVYLUVlR1dsY1FmaU9ORjhRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1REeDlVSlgtRWVHV2xjUWZpT05GOFEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVER4OVVaWC1FZUdXbGNRZmlPTkY4USIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1REeDlVcFgtRWVHV2xjUWZpT05GOFEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1REeDlVNVgtRWVHV2xjUWZpT05GOFEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfVER5a1lKWC1FZUdXbGNRZmlPTkY4USIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVER5a1laWC1FZUdXbGNRZmlPTkY4USIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI196d19KY0pYMUVlR1JUTFZaZjROeVl3Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9URHdJSVpYLUVlR1dsY1FmaU9ORjhRIiB4PSItMTAiIHk9IjMxIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9URVM2c0pYLUVlR1dsY1FmaU9ORjhRIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9URVM2c3BYLUVlR1dsY1FmaU9ORjhRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVEVUaHdKWC1FZUdXbGNRZmlPTkY4USIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVEVUaHdaWC1FZUdXbGNRZmlPTkY4USIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVEVUaHdwWC1FZUdXbGNRZmlPTkY4USIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9URVRodzVYLUVlR1dsY1FmaU9ORjhRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1RFVGh4SlgtRWVHV2xjUWZpT05GOFEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9URVRoeFpYLUVlR1dsY1FmaU9ORjhRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9URVRoeHBYLUVlR1dsY1FmaU9ORjhRIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1RFVGh4NVgtRWVHV2xjUWZpT05GOFEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1RFVGh5SlgtRWVHV2xjUWZpT05GOFEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfOHg3bGdKWDFFZUdSVExWWmY0TnlZdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfVEVTNnNaWC1FZUdXbGNRZmlPTkY4USIgeD0iLTEwIiB5PSI2MCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19MNS1DQUpYLUVlR1dsY1FmaU9ORjhRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTDZNRWNaWC1FZUdXbGNRZmlPTkY4USIgeD0iMzM1IiB5PSIxNDAiIHdpZHRoPSIyNjEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfX05jc0ZaWDlFZUdXbGNRZmlPTkY4USIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9fTmNzRnBYOUVlR1dsY1FmaU9ORjhRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19fTWpVTUpYOUVlR1dsY1FmaU9ORjhRIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9fTmEyNFpYOUVlR1dsY1FmaU9ORjhRIiB4PSIxMCIgeT0iMTUiIHdpZHRoPSI2MTEiIGhlaWdodD0iMzAxIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iXzlPSDRvWlg5RWVHV2xjUWZpT05GOFEiLz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJzdHlsZTpQYXB5cnVzVmlld1N0eWxlIiB4bWk6aWQ9Il8xSWY3NEg3TEVlU0Z5TmJuTFlEQ2t3Ij4KKyAgICAgIDxvd25lciB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX3JrVkpRWUxxRWVHaE9adWEtcWpmMFEiLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0FQTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlN0cmluZ1ZhbHVlU3R5bGUiIHhtaTppZD0iXzFJZjc0WDdMRWVTRnlOYm5MWURDa3ciIG5hbWU9ImRpYWdyYW1fY29tcGF0aWJpbGl0eV92ZXJzaW9uIiBzdHJpbmdWYWx1ZT0iMS4wLjAiLz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX3JrVkpRWUxxRWVHaE9adWEtcWpmMFEiLz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfZURzQWNKWC1FZUdXbGNRZmlPTkY4USIgdHlwZT0iNDAxMyIgc291cmNlPSJfYWFLOEVKWC1FZUdXbGNRZmlPTkY4USIgdGFyZ2V0PSJfVER3SUlKWC1FZUdXbGNRZmlPTkY4USIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2VEdE9rSlgtRWVHV2xjUWZpT05GOFEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9lRHRPa1pYLUVlR1dsY1FmaU9ORjhRIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2VEdE9rcFgtRWVHV2xjUWZpT05GOFEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9lRHRPazVYLUVlR1dsY1FmaU9ORjhRIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9lRHRPbEpYLUVlR1dsY1FmaU9ORjhRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZUR0T2xaWC1FZUdXbGNRZmlPTkY4USIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9lRHRPbHBYLUVlR1dsY1FmaU9ORjhRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZUR0T2w1WC1FZUdXbGNRZmlPTkY4USIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2VEc0FjWlgtRWVHV2xjUWZpT05GOFEiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19lRGFUb0pYLUVlR1dsY1FmaU9ORjhRIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9lRHNBY3BYLUVlR1dsY1FmaU9ORjhRIiBwb2ludHM9Ils2LCAxMCwgLTc4LCAtMTA2XSRbNzksIDEwNiwgLTUsIC0xMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9mRlBrRUpYLUVlR1dsY1FmaU9ORjhRIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9hYXRIa0pYLUVlR1dsY1FmaU9ORjhRIiB0YXJnZXQ9Il9URVM2c0pYLUVlR1dsY1FmaU9ORjhRIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZkZRTElKWC1FZUdXbGNRZmlPTkY4USIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ZGUUxJWlgtRWVHV2xjUWZpT05GOFEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZkZRTElwWC1FZUdXbGNRZmlPTkY4USIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ZGUUxJNVgtRWVHV2xjUWZpT05GOFEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2ZGUUxKSlgtRWVHV2xjUWZpT05GOFEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9mRlF5TUpYLUVlR1dsY1FmaU9ORjhRIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2ZGUXlNWlgtRWVHV2xjUWZpT05GOFEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9mRlF5TXBYLUVlR1dsY1FmaU9ORjhRIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfZkZQa0VaWC1FZUdXbGNRZmlPTkY4USIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX2ZFeTRJSlgtRWVHV2xjUWZpT05GOFEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2ZGUGtFcFgtRWVHV2xjUWZpT05GOFEiIHBvaW50cz0iWzYsIDEwLCAtNzgsIC0xMDVdJFs3OSwgMTI1LCAtNSwgMTBdIi8+CisgICAgPC9lZGdlcz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il8yYkhlVUpYLUVlR1dsY1FmaU9ORjhRIiB0eXBlPSJDb21wb3NpdGVTdHJ1Y3R1cmUiIG5hbWU9IlJNYXhIYXJkd2FyZUFyY2hpdGVjdHVyZSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfNHZZbkFKWC1FZUdXbGNRZmlPTkY4USIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNHZaT0VKWC1FZUdXbGNRZmlPTkY4USIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzR2Wk9FWlgtRWVHV2xjUWZpT05GOFEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzR2Wk9FcFgtRWVHV2xjUWZpT05GOFEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzR2Wk9FNVgtRWVHV2xjUWZpT05GOFEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNHZaT0ZKWC1FZUdXbGNRZmlPTkY4USIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il80dlpPRlpYLUVlR1dsY1FmaU9ORjhRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzR2ZXRvSlgtRWVHV2xjUWZpT05GOFEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il80eEVwRUpYLUVlR1dsY1FmaU9ORjhRIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il80eEVwRVpYLUVlR1dsY1FmaU9ORjhRIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6Um9ib3RpY1N5c3RlbSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzR4RlFJSlgtRWVHV2xjUWZpT05GOFEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNHhGUUlaWC1FZUdXbGNRZmlPTkY4USIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzR4RlFJcFgtRWVHV2xjUWZpT05GOFEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il80dlpPRnBYLUVlR1dsY1FmaU9ORjhRIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzR2WjFJSlgtRWVHV2xjUWZpT05GOFEiIHR5cGU9IjcwNzMiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9fV1Vld0pYLUVlR1dsY1FmaU9ORjhRIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfX1dWRjBKWC1FZUdXbGNRZmlPTkY4USIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fV1ZGMFpYLUVlR1dsY1FmaU9ORjhRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19XVkYwcFgtRWVHV2xjUWZpT05GOFEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fV1ZGMDVYLUVlR1dsY1FmaU9ORjhRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfX1dWczRKWC1FZUdXbGNRZmlPTkY4USIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX1dWczRaWC1FZUdXbGNRZmlPTkY4USIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfX1dWczRwWC1FZUdXbGNRZmlPTkY4USIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfX1dWczQ1WC1FZUdXbGNRZmlPTkY4USIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfX1dWczVKWC1FZUdXbGNRZmlPTkY4USIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfX1dWczVaWC1FZUdXbGNRZmlPTkY4USIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19fV0VuSUpYLUVlR1dsY1FmaU9ORjhRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfX1dVZXdaWC1FZUdXbGNRZmlPTkY4USIgeD0iMTUiIHk9IjUiIHdpZHRoPSIxNjEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfSWdwZ1VKWF9FZUdXbGNRZmlPTkY4USIgdHlwZT0iMzA3MCIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0lncGdVcFhfRWVHV2xjUWZpT05GOFEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSWdxSFlKWF9FZUdXbGNRZmlPTkY4USIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9JZ3FIWVpYX0VlR1dsY1FmaU9ORjhRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSWdxSFlwWF9FZUdXbGNRZmlPTkY4USIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0lncUhZNVhfRWVHV2xjUWZpT05GOFEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0lncUhaSlhfRWVHV2xjUWZpT05GOFEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0lncUhaWlhfRWVHV2xjUWZpT05GOFEiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0lncUhacFhfRWVHV2xjUWZpT05GOFEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0lncUhaNVhfRWVHV2xjUWZpT05GOFEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0lncUhhSlhfRWVHV2xjUWZpT05GOFEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfSWdZYWtKWF9FZUdXbGNRZmlPTkY4USIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0lncGdVWlhfRWVHV2xjUWZpT05GOFEiIHg9IjMzMCIgeT0iNSIgd2lkdGg9IjIzNSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9LaTY2RUpYX0VlR1dsY1FmaU9ORjhRIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfS2k3aElKWF9FZUdXbGNRZmlPTkY4USIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LaTdoSVpYX0VlR1dsY1FmaU9ORjhRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0tpN2hJcFhfRWVHV2xjUWZpT05GOFEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LaTdoSTVYX0VlR1dsY1FmaU9ORjhRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfS2k3aEpKWF9FZUdXbGNRZmlPTkY4USIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfS2k3aEpaWF9FZUdXbGNRZmlPTkY4USIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfS2k3aEpwWF9FZUdXbGNRZmlPTkY4USIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfS2k3aEo1WF9FZUdXbGNRZmlPTkY4USIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfS2k3aEtKWF9FZUdXbGNRZmlPTkY4USIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfS2k3aEtaWF9FZUdXbGNRZmlPTkY4USIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19LaW9tTUpYX0VlR1dsY1FmaU9ORjhRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfS2k2NkVaWF9FZUdXbGNRZmlPTkY4USIgeD0iMTUiIHk9IjE1MCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9MenZvd0pYX0VlR1dsY1FmaU9ORjhRIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTHp3UDBKWF9FZUdXbGNRZmlPTkY4USIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9MendQMFpYX0VlR1dsY1FmaU9ORjhRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0x6d1AwcFhfRWVHV2xjUWZpT05GOFEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9MencyNEpYX0VlR1dsY1FmaU9ORjhRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTHp3MjRaWF9FZUdXbGNRZmlPTkY4USIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTHp3MjRwWF9FZUdXbGNRZmlPTkY4USIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTHp3MjQ1WF9FZUdXbGNRZmlPTkY4USIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfTHp3MjVKWF9FZUdXbGNRZmlPTkY4USIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfTHp3MjVaWF9FZUdXbGNRZmlPTkY4USIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTHp3MjVwWF9FZUdXbGNRZmlPTkY4USIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19MemZ4SUpYX0VlR1dsY1FmaU9ORjhRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTHp2b3daWF9FZUdXbGNRZmlPTkY4USIgeD0iMjE2IiB5PSIxNTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfTkVyc01KWF9FZUdXbGNRZmlPTkY4USIgdHlwZT0iMzA3MCIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX05FcnNNcFhfRWVHV2xjUWZpT05GOFEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTkVzVFFKWF9FZUdXbGNRZmlPTkY4USIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9ORXNUUVpYX0VlR1dsY1FmaU9ORjhRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTkVzVFFwWF9FZUdXbGNRZmlPTkY4USIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX05Fc1RRNVhfRWVHV2xjUWZpT05GOFEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX05Fc1RSSlhfRWVHV2xjUWZpT05GOFEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX05Fc1RSWlhfRWVHV2xjUWZpT05GOFEiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX05Fc1RScFhfRWVHV2xjUWZpT05GOFEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX05Fc1RSNVhfRWVHV2xjUWZpT05GOFEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX05Fc1RTSlhfRWVHV2xjUWZpT05GOFEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfTkVjYm9KWF9FZUdXbGNRZmlPTkY4USIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX05FcnNNWlhfRWVHV2xjUWZpT05GOFEiIHg9IjM3NSIgeT0iMTUwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzR2WjFJWlgtRWVHV2xjUWZpT05GOFEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfNHZaMUlwWC1FZUdXbGNRZmlPTkY4USIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfNHZHVElKWC1FZUdXbGNRZmlPTkY4USIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfNHZZbkFaWC1FZUdXbGNRZmlPTkY4USIgeD0iNSIgeT0iMTUiIHdpZHRoPSI2MTYiIGhlaWdodD0iMzExIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iXzJiSGVVWlgtRWVHV2xjUWZpT05GOFEiLz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJzdHlsZTpQYXB5cnVzVmlld1N0eWxlIiB4bWk6aWQ9Il8wY3czUUg3TEVlU0Z5TmJuTFlEQ2t3Ij4KKyAgICAgIDxvd25lciB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX3JrVkpRWUxxRWVHaE9adWEtcWpmMFEiLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0FQTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlN0cmluZ1ZhbHVlU3R5bGUiIHhtaTppZD0iXzBjdzNRWDdMRWVTRnlOYm5MWURDa3ciIG5hbWU9ImRpYWdyYW1fY29tcGF0aWJpbGl0eV92ZXJzaW9uIiBzdHJpbmdWYWx1ZT0iMS4wLjAiLz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX3JrVkpRWUxxRWVHaE9adWEtcWpmMFEiLz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfblA3UkVKWF9FZUdXbGNRZmlPTkY4USIgdHlwZT0iNDAxMyIgc291cmNlPSJfSWdwZ1VKWF9FZUdXbGNRZmlPTkY4USIgdGFyZ2V0PSJfX1dVZXdKWC1FZUdXbGNRZmlPTkY4USIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX25QNzRJSlhfRWVHV2xjUWZpT05GOFEiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX25QNzRJWlhfRWVHV2xjUWZpT05GOFEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfblA3NElwWF9FZUdXbGNRZmlPTkY4USIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfblA3NEk1WF9FZUdXbGNRZmlPTkY4USIgeD0iLTEwIiB5PSIyNyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX25QNzRKSlhfRWVHV2xjUWZpT05GOFEiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX25QNzRKWlhfRWVHV2xjUWZpT05GOFEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfblA4Zk1KWF9FZUdXbGNRZmlPTkY4USIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfblA4Zk1aWF9FZUdXbGNRZmlPTkY4USIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX25QN1JFWlhfRWVHV2xjUWZpT05GOFEiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19uUHQxc0pYX0VlR1dsY1FmaU9ORjhRIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9uUDdSRXBYX0VlR1dsY1FmaU9ORjhRIiBwb2ludHM9IlstMTE3LCA5LCA4NiwgLThdJFstMTcyLCAyNywgMzEsIDEwXSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX25RWFY4SlhfRWVHV2xjUWZpT05GOFEiIGlkPSIoMC44OTQ0MDk5Mzc4ODgxOTg4LDAuNTUpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfOTRtdUlKWF9FZUdXbGNRZmlPTkY4USIgdHlwZT0iNDAxMyIgc291cmNlPSJfS2k2NkVKWF9FZUdXbGNRZmlPTkY4USIgdGFyZ2V0PSJfX1dVZXdKWC1FZUdXbGNRZmlPTkY4USIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzk0blZNSlhfRWVHV2xjUWZpT05GOFEiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzk0blZNWlhfRWVHV2xjUWZpT05GOFEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfOTRuVk1wWF9FZUdXbGNRZmlPTkY4USIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfOTRuOFFKWF9FZUdXbGNRZmlPTkY4USIgeD0iLTExIiB5PSIzNiIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzk0bjhRWlhfRWVHV2xjUWZpT05GOFEiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzk0bjhRcFhfRWVHV2xjUWZpT05GOFEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfOTRuOFE1WF9FZUdXbGNRZmlPTkY4USIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfOTRuOFJKWF9FZUdXbGNRZmlPTkY4USIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iXzk0bXVJWlhfRWVHV2xjUWZpT05GOFEiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI185NFlyc0pYX0VlR1dsY1FmaU9ORjhRIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il85NG11SXBYX0VlR1dsY1FmaU9ORjhRIiBwb2ludHM9IlstOSwgLTUwLCA4LCA5NV0kWy05LCAtOTUsIDgsIDUwXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iXy1mMXRRSlhfRWVHV2xjUWZpT05GOFEiIGlkPSIoMC40MzA3NjkyMzA3NjkyMzA4LDAuMDMpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfXy1RekVKWF9FZUdXbGNRZmlPTkY4USIgdHlwZT0iNDAxMyIgc291cmNlPSJfTHp2b3dKWF9FZUdXbGNRZmlPTkY4USIgdGFyZ2V0PSJfX1dVZXdKWC1FZUdXbGNRZmlPTkY4USIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX18tUmFJSlhfRWVHV2xjUWZpT05GOFEiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX18tUmFJWlhfRWVHV2xjUWZpT05GOFEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfXy1SYUlwWF9FZUdXbGNRZmlPTkY4USIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfXy1SYUk1WF9FZUdXbGNRZmlPTkY4USIgeD0iNDAiIHk9Ii0xNyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX18tUmFKSlhfRWVHV2xjUWZpT05GOFEiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX18tUmFKWlhfRWVHV2xjUWZpT05GOFEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfXy1SYUpwWF9FZUdXbGNRZmlPTkY4USIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfXy1TQk1KWF9FZUdXbGNRZmlPTkY4USIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX18tUXpFWlhfRWVHV2xjUWZpT05GOFEiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19fLUJpZ0pYX0VlR1dsY1FmaU9ORjhRIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9fLVF6RXBYX0VlR1dsY1FmaU9ORjhRIiBwb2ludHM9IlswLCAtMjMsIDE3NiwgNjldJFswLCAtNTMsIDE3NiwgMzldJFstOTUsIC03NSwgODEsIDE3XSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX18tczM4SlhfRWVHV2xjUWZpT05GOFEiIGlkPSIoMC4zNjY2NjY2NjY2NjY2NjY2NCwwLjIzKSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX18tczM4WlhfRWVHV2xjUWZpT05GOFEiIGlkPSIoMC40OTY4OTQ0MDk5Mzc4ODgyLDAuNzYpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfQ0NuUWNKWUFFZUdXbGNRZmlPTkY4USIgdHlwZT0iNDAxMyIgc291cmNlPSJfTkVyc01KWF9FZUdXbGNRZmlPTkY4USIgdGFyZ2V0PSJfX1dVZXdKWC1FZUdXbGNRZmlPTkY4USIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0NDbjNnSllBRWVHV2xjUWZpT05GOFEiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0NDbjNnWllBRWVHV2xjUWZpT05GOFEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfQ0NuM2dwWUFFZUdXbGNRZmlPTkY4USIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQ0NuM2c1WUFFZUdXbGNRZmlPTkY4USIgeD0iLTc5IiB5PSIxNSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0NDbjNoSllBRWVHV2xjUWZpT05GOFEiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0NDbjNoWllBRWVHV2xjUWZpT05GOFEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfQ0NvZWtKWUFFZUdXbGNRZmlPTkY4USIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQ0NvZWtaWUFFZUdXbGNRZmlPTkY4USIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX0NDblFjWllBRWVHV2xjUWZpT05GOFEiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19DQ1oxRUpZQUVlR1dsY1FmaU9ORjhRIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9DQ25RY3BZQUVlR1dsY1FmaU9ORjhRIiBwb2ludHM9IlstMTA4LCAtNDIsIDIxNSwgODJdJFstMzA3LCAtMTE5LCAxNiwgNV0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9DelU3c0pZQUVlR1dsY1FmaU9ORjhRIiBpZD0iKDAuNDcwMDQ2MDgyOTQ5MzA4OCwwLjA2KSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX0NERFZVSllBRWVHV2xjUWZpT05GOFEiIGlkPSIoMC45MDA2MjExMTgwMTI0MjI0LDAuNzEpIi8+CisgICAgPC9lZGdlcz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9wVmRJUUpZQkVlR1dsY1FmaU9ORjhRIiB0eXBlPSJhcmNoaXRlY3R1cmUiIG5hbWU9IlJtYXhTb2Z0d2FyZUFyY2hpdGVjdHVyZURpYWdyYW0iIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfcFZkSVFaWUJFZUdXbGNRZmlPTkY4USIvPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfX1dFbklKWC1FZUdXbGNRZmlPTkY4USIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX0hsSXk4SllDRWVHVHdhUXB2SUtxMFEiIHR5cGU9IkNvbXBvc2l0ZVN0cnVjdHVyZSIgbmFtZT0iUk1heFNvZnR3YXJlQXJjaGl0ZWN0dXJlIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9NT3pGc0pZQ0VlR1R3YVFwdklLcTBRIiB0eXBlPSIyMDczIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NTzA2NEpZQ0VlR1R3YVFwdklLcTBRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTU8wNjRaWUNFZUdUd2FRcHZJS3EwUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTU8wNjRwWUNFZUdUd2FRcHZJS3EwUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTU8wNjQ1WUNFZUdUd2FRcHZJS3EwUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NTzFoOEpZQ0VlR1R3YVFwdklLcTBRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01PMWg4WllDRWVHVHdhUXB2SUtxMFEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTVdmQ0VKWUNFZUdUd2FRcHZJS3EwUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01ZTTVVSllDRWVHVHdhUXB2SUtxMFEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01ZTTVVWllDRWVHVHdhUXB2SUtxMFEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpSb2JvdGljU3lzdGVtIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTVlNNVVwWUNFZUdUd2FRcHZJS3EwUSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NWU01VTVZQ0VlR1R3YVFwdklLcTBRIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTVlNNVZKWUNFZUdUd2FRcHZJS3EwUSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX01PMWg4cFlDRWVHVHdhUXB2SUtxMFEiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfTU8xaDg1WUNFZUdUd2FRcHZJS3EwUSIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1RSQWtNSllDRWVHVHdhUXB2SUtxMFEiIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9UUkJMUUpZQ0VlR1R3YVFwdklLcTBRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1RSQnlVSllDRWVHVHdhUXB2SUtxMFEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVFJCeVVaWUNFZUdUd2FRcHZJS3EwUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1RSQnlVcFlDRWVHVHdhUXB2SUtxMFEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9UUkJ5VTVZQ0VlR1R3YVFwdklLcTBRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9UUkJ5VkpZQ0VlR1R3YVFwdklLcTBRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9UUkJ5VlpZQ0VlR1R3YVFwdklLcTBRIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9UUkJ5VnBZQ0VlR1R3YVFwdklLcTBRIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1RSQnlWNVlDRWVHVHdhUXB2SUtxMFEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1RSQnlXSllDRWVHVHdhUXB2SUtxMFEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0VfM3ZjTXp0RWVHN1pzVmlsY1BSZ1EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9FXzRXZ016dEVlRzdac1ZpbGNQUmdRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRV80V2djenRFZUc3WnNWaWxjUFJnUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRV80V2dzenRFZUc3WnNWaWxjUFJnUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRV80V2c4enRFZUc3WnNWaWxjUFJnUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9FXzRXaE16dEVlRzdac1ZpbGNQUmdRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0VfNFdoY3p0RWVHN1pzVmlsY1BSZ1EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9FXzRXaHN6dEVlRzdac1ZpbGNQUmdRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9FXzRXaDh6dEVlRzdac1ZpbGNQUmdRIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0VfNFdpTXp0RWVHN1pzVmlsY1BSZ1EiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0VfNFdpY3p0RWVHN1pzVmlsY1BSZ1EiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfd3RFVnNNek5FZUdJNTQtYmh6enVvQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfRV8zdmNjenRFZUc3WnNWaWxjUFJnUSIgeD0iMzA2IiB5PSI2OCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfRV80OWtNenRFZUc3WnNWaWxjUFJnUSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0VfNDlrc3p0RWVHN1pzVmlsY1BSZ1EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9FXzQ5azh6dEVlRzdac1ZpbGNQUmdRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9FXzQ5bE16dEVlRzdac1ZpbGNQUmdRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9FXzQ5bGN6dEVlRzdac1ZpbGNQUmdRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0VfNDlsc3p0RWVHN1pzVmlsY1BSZ1EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRV80OWw4enRFZUc3WnNWaWxjUFJnUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0VfNDltTXp0RWVHN1pzVmlsY1BSZ1EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0VfNDltY3p0RWVHN1pzVmlsY1BSZ1EiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfRV80OW1zenRFZUc3WnNWaWxjUFJnUSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfRV80OW04enRFZUc3WnNWaWxjUFJnUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19uMGdYa016akVlR0k1NC1iaHp6dW9BIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9FXzQ5a2N6dEVlRzdac1ZpbGNQUmdRIiB4PSIzMDYiIHk9IjQwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX1RRZm0wSllDRWVHVHdhUXB2SUtxMFEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9UUkFrTVpZQ0VlR1R3YVFwdklLcTBRIiB4PSItMSIgeT0iMiIgd2lkdGg9IjMxNiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9WUGVjQUpZQ0VlR1R3YVFwdklLcTBRIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVlBmREVKWUNFZUdUd2FRcHZJS3EwUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9WUGZERVpZQ0VlR1R3YVFwdklLcTBRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1ZQZkRFcFlDRWVHVHdhUXB2SUtxMFEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9WUGZxSUpZQ0VlR1R3YVFwdklLcTBRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVlBmcUlaWUNFZUdUd2FRcHZJS3EwUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVlBmcUlwWUNFZUdUd2FRcHZJS3EwUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfVlBmcUk1WUNFZUdUd2FRcHZJS3EwUSIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfVlBmcUpKWUNFZUdUd2FRcHZJS3EwUSIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9WUGZxSlpZQ0VlR1R3YVFwdklLcTBRIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9WUGZxSnBZQ0VlR1R3YVFwdklLcTBRIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9sdUMxME16dEVlRzdac1ZpbGNQUmdRIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbHVDMTBzenRFZUc3WnNWaWxjUFJnUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2x1QzEwOHp0RWVHN1pzVmlsY1BSZ1EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2x1QzExTXp0RWVHN1pzVmlsY1BSZ1EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2x1QzExY3p0RWVHN1pzVmlsY1BSZ1EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbHVDMTFzenRFZUc3WnNWaWxjUFJnUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9sdUMxMTh6dEVlRzdac1ZpbGNQUmdRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbHVDMTJNenRFZUc3WnNWaWxjUFJnUSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfbHVDMTJjenRFZUc3WnNWaWxjUFJnUSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9sdUMxMnN6dEVlRzdac1ZpbGNQUmdRIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9sdUMxMjh6dEVlRzdac1ZpbGNQUmdRIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX25PMVhVTXptRWVHSTU0LWJoenp1b0EiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2x1QzEwY3p0RWVHN1pzVmlsY1BSZ1EiIHg9IjMyMiIgeT0iNDQiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3hPeGRvUEsyRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il94T3lFc1BLMkVlR2lPcUUybEFJalF3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeE95RXNmSzJFZUdpT3FFMmxBSWpRdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfeE95RXN2SzJFZUdpT3FFMmxBSWpRdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeE95RXNfSzJFZUdpT3FFMmxBSWpRdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il94T3lFdFBLMkVlR2lPcUUybEFJalF3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3hPeUV0ZksyRWVHaU9xRTJsQUlqUXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il94T3lFdHZLMkVlR2lPcUUybEFJalF3IiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il94T3lFdF9LMkVlR2lPcUUybEFJalF3IiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3hPeUV1UEsyRWVHaU9xRTJsQUlqUXciIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3hPeUV1ZksyRWVHaU9xRTJsQUlqUXciIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfR1RQWW9NenBFZUdJNTQtYmh6enVvQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfeE94ZG9mSzJFZUdpT3FFMmxBSWpRdyIgeD0iMzIyIiB5PSI3MiIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19WUE45VUpZQ0VlR1R3YVFwdklLcTBRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfVlBlY0FaWUNFZUdUd2FRcHZJS3EwUSIgeD0iMSIgeT0iMjM0IiB3aWR0aD0iMzMyIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1llbjRrSllDRWVHVHdhUXB2SUtxMFEiIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9ZZW9mb0pZQ0VlR1R3YVFwdklLcTBRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1llb2ZvWllDRWVHVHdhUXB2SUtxMFEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfWWVvZm9wWUNFZUdUd2FRcHZJS3EwUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1llb2ZvNVlDRWVHVHdhUXB2SUtxMFEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9ZZW9mcEpZQ0VlR1R3YVFwdklLcTBRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ZZW9mcFpZQ0VlR1R3YVFwdklLcTBRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9ZZW9mcHBZQ0VlR1R3YVFwdklLcTBRIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9ZZW9mcDVZQ0VlR1R3YVFwdklLcTBRIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1llb2ZxSllDRWVHVHdhUXB2SUtxMFEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1llb2ZxWllDRWVHVHdhUXB2SUtxMFEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3ZOSjBFSllFRWVHVHdhUXB2SUtxMFEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3ZOS2JJSllFRWVHVHdhUXB2SUtxMFEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il92TktiSVpZRUVlR1R3YVFwdklLcTBRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il92TktiSXBZRUVlR1R3YVFwdklLcTBRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il92TkxDTUpZRUVlR1R3YVFwdklLcTBRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3ZOTENNWllFRWVHVHdhUXB2SUtxMFEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdk5MQ01wWUVFZUdUd2FRcHZJS3EwUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3ZOTENNNVlFRWVHVHdhUXB2SUtxMFEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3ZOTENOSllFRWVHVHdhUXB2SUtxMFEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfdk5MQ05aWUVFZUdUd2FRcHZJS3EwUSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdk5McFFKWUVFZUdUd2FRcHZJS3EwUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI184Ql8xQUpZREVlR1R3YVFwdklLcTBRIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il92TkowRVpZRUVlR1R3YVFwdklLcTBRIiB4PSItMTAiIHk9IjUyIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il92dnVWb0pZRUVlR1R3YVFwdklLcTBRIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il92dnU4c0pZRUVlR1R3YVFwdklLcTBRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdnZ1OHNaWUVFZUdUd2FRcHZJS3EwUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdnZ1OHNwWUVFZUdUd2FRcHZJS3EwUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdnZ2andKWUVFZUdUd2FRcHZJS3EwUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il92dnZqd1pZRUVlR1R3YVFwdklLcTBRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3Z2dmp3cFlFRWVHVHdhUXB2SUtxMFEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il92dnZqdzVZRUVlR1R3YVFwdklLcTBRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il92dnZqeEpZRUVlR1R3YVFwdklLcTBRIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3Z2dmp4WllFRWVHVHdhUXB2SUtxMFEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3Z2d0swSllFRWVHVHdhUXB2SUtxMFEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfS3htZEFKWUVFZUdUd2FRcHZJS3EwUSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfdnZ1Vm9aWUVFZUdUd2FRcHZJS3EwUSIgeD0iLTEwIiB5PSI3NiIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfdHpET0VNenRFZUc3WnNWaWxjUFJnUSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3R6RE9Fc3p0RWVHN1pzVmlsY1BSZ1EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il90ekRPRTh6dEVlRzdac1ZpbGNQUmdRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il90ekRPRk16dEVlRzdac1ZpbGNQUmdRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il90ekRPRmN6dEVlRzdac1ZpbGNQUmdRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3R6RE9Gc3p0RWVHN1pzVmlsY1BSZ1EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdHpET0Y4enRFZUc3WnNWaWxjUFJnUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3R6RE9HTXp0RWVHN1pzVmlsY1BSZ1EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3R6RE9HY3p0RWVHN1pzVmlsY1BSZ1EiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfdHpET0dzenRFZUc3WnNWaWxjUFJnUSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdHpET0c4enRFZUc3WnNWaWxjUFJnUSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19NRVBSY016cUVlR0k1NC1iaHp6dW9BIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il90ekRPRWN6dEVlRzdac1ZpbGNQUmdRIiB4PSItMTAiIHk9IjI0Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il8zQ0REMFBLMkVlR2lPcUUybEFJalF3IiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfM0NERDB2SzJFZUdpT3FFMmxBSWpRdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzNDREQwX0syRWVHaU9xRTJsQUlqUXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzNDREQxUEsyRWVHaU9xRTJsQUlqUXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzNDREQxZksyRWVHaU9xRTJsQUlqUXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfM0NERDF2SzJFZUdpT3FFMmxBSWpRdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8zQ0REMV9LMkVlR2lPcUUybEFJalF3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzNDSDhVUEsyRWVHaU9xRTJsQUlqUXciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8zRTVqZ1BLMkVlR2lPcUUybEFJalF3IiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8zRTVqZ2ZLMkVlR2lPcUUybEFJalF3IiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6U2VydmljZVBvcnQiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8zRTVqZ3ZLMkVlR2lPcUUybEFJalF3IiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzNFNWpnX0syRWVHaU9xRTJsQUlqUXciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8zRTVqaFBLMkVlR2lPcUUybEFJalF3IiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfM0NERDJQSzJFZUdpT3FFMmxBSWpRdyIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfM0NERDJmSzJFZUdpT3FFMmxBSWpRdyIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8zQ0REMnZLMkVlR2lPcUUybEFJalF3IiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8zQ0REMl9LMkVlR2lPcUUybEFJalF3IiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjXzNCbS04UEsyRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzNDREQwZksyRWVHaU9xRTJsQUlqUXciIHg9Ii0xMCIgeT0iMTAzIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfWWVYWjRKWUNFZUdUd2FRcHZJS3EwUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1llbjRrWllDRWVHVHdhUXB2SUtxMFEiIHg9IjM4MSIgeT0iMTIyIiB3aWR0aD0iMjc2IiBoZWlnaHQ9IjE0OSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9NTzFoOUpZQ0VlR1R3YVFwdklLcTBRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX01PMWg5WllDRWVHVHdhUXB2SUtxMFEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX01OdlZ3SllDRWVHVHdhUXB2SUtxMFEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX01PekZzWllDRWVHVHdhUXB2SUtxMFEiIHg9IjEyIiB5PSIxMiIgd2lkdGg9IjcxMyIgaGVpZ2h0PSI0MDEiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfSGxJeThaWUNFZUdUd2FRcHZJS3EwUSIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iXzFZa1lNSDdMRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfcmtWSlFZTHFFZUdoT1p1YS1xamYwUSIvPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3pXQVBMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U3RyaW5nVmFsdWVTdHlsZSIgeG1pOmlkPSJfMVlrWU1YN0xFZVNGeU5ibkxZRENrdyIgbmFtZT0iZGlhZ3JhbV9jb21wYXRpYmlsaXR5X3ZlcnNpb24iIHN0cmluZ1ZhbHVlPSIxLjAuMCIvPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfcmtWSlFZTHFFZUdoT1p1YS1xamYwUSIvPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9iZlI3d016dEVlRzdac1ZpbGNQUmdRIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9FXzN2Y016dEVlRzdac1ZpbGNQUmdRIiB0YXJnZXQ9Il92TkowRUpZRUVlR1R3YVFwdklLcTBRIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYmZTaTBNenRFZUc3WnNWaWxjUFJnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2JmU2kwY3p0RWVHN1pzVmlsY1BSZ1EiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYmZTaTBzenRFZUc3WnNWaWxjUFJnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2JmU2kwOHp0RWVHN1pzVmlsY1BSZ1EiIHg9Ii00IiB5PSIyIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYmZUSjRNenRFZUc3WnNWaWxjUFJnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2JmVEo0Y3p0RWVHN1pzVmlsY1BSZ1EiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYmZUSjRzenRFZUc3WnNWaWxjUFJnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2JmVEo0OHp0RWVHN1pzVmlsY1BSZ1EiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9iZlI3d2N6dEVlRzdac1ZpbGNQUmdRIiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjXzI4N3JFTXpxRWVHSTU0LWJoenp1b0EiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2JmUjd3c3p0RWVHN1pzVmlsY1BSZ1EiIHBvaW50cz0iWzEwLCA0LCAtMTIxLCAtNTZdJFsxMjEsIDU1LCAtMTAsIC01XSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX29DSV9ZTXp0RWVHN1pzVmlsY1BSZ1EiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2x1QzEwTXp0RWVHN1pzVmlsY1BSZ1EiIHRhcmdldD0iX3Z2dVZvSllFRWVHVHdhUXB2SUtxMFEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9vQ0ptY016dEVlRzdac1ZpbGNQUmdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfb0NKbWNjenRFZUc3WnNWaWxjUFJnUSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9vQ0ptY3N6dEVlRzdac1ZpbGNQUmdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfb0NKbWM4enRFZUc3WnNWaWxjUFJnUSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfb0NKbWRNenRFZUc3WnNWaWxjUFJnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX29DSm1kY3p0RWVHN1pzVmlsY1BSZ1EiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfb0NKbWRzenRFZUc3WnNWaWxjUFJnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX29DSm1kOHp0RWVHN1pzVmlsY1BSZ1EiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9vQ0lfWWN6dEVlRzdac1ZpbGNQUmdRIiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX2xwNnJJTXpxRWVHSTU0LWJoenp1b0EiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX29DSV9Zc3p0RWVHN1pzVmlsY1BSZ1EiIHBvaW50cz0iWzEwLCAtMiwgLTEzMSwgMTRdJFsxMzEsIC0xNSwgLTEwLCAxXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX3lIYjBZTXp0RWVHN1pzVmlsY1BSZ1EiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX0VfNDlrTXp0RWVHN1pzVmlsY1BSZ1EiIHRhcmdldD0iX3R6RE9FTXp0RWVHN1pzVmlsY1BSZ1EiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il95SGIwWTh6dEVlRzdac1ZpbGNQUmdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfeUhiMFpNenRFZUc3WnNWaWxjUFJnUSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il95SGNiY016dEVlRzdac1ZpbGNQUmdRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfeUhjYmNjenRFZUc3WnNWaWxjUFJnUSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfeUhjYmNzenRFZUc3WnNWaWxjUFJnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3lIY2JjOHp0RWVHN1pzVmlsY1BSZ1EiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfeUhjYmRNenRFZUc3WnNWaWxjUFJnUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3lIY2JkY3p0RWVHN1pzVmlsY1BSZ1EiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il95SGIwWWN6dEVlRzdac1ZpbGNQUmdRIiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjXzRTVGlrTXpxRWVHSTU0LWJoenp1b0EiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX3lIYjBZc3p0RWVHN1pzVmlsY1BSZ1EiIHBvaW50cz0iWzYsIDEwLCAtNjEsIC04OV0kWzYwLCA4OSwgLTcsIC0xMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il8tSzhaSVBLMkVlR2lPcUUybEFJalF3IiB0eXBlPSI0MDEzIiBzb3VyY2U9Il94T3hkb1BLMkVlR2lPcUUybEFJalF3IiB0YXJnZXQ9Il8zQ0REMFBLMkVlR2lPcUUybEFJalF3IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfLUs5QU1QSzJFZUdpT3FFMmxBSWpRdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXy1LOUFNZksyRWVHaU9xRTJsQUlqUXciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfLUs5QU12SzJFZUdpT3FFMmxBSWpRdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXy1LOUFNX0syRWVHaU9xRTJsQUlqUXciIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXy1LOUFOUEsyRWVHaU9xRTJsQUlqUXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8tSzlBTmZLMkVlR2lPcUUybEFJalF3IiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXy1LOUFOdksyRWVHaU9xRTJsQUlqUXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8tSzlBTl9LMkVlR2lPcUUybEFJalF3IiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfLUs4WklmSzJFZUdpT3FFMmxBSWpRdyIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI18tS2pYa1BLMkVlR2lPcUUybEFJalF3Ii8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il8tSzhaSXZLMkVlR2lPcUUybEFJalF3IiBwb2ludHM9Ils1LCAtMTAsIC00MywgNzFdJFs0OCwgLTgxLCAwLCAwXSIvPgorICAgIDwvZWRnZXM+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfTFVHYk1KWUdFZUdUd2FRcHZJS3EwUSIgdHlwZT0iSW50ZXJmYWNlRGVmIiBlbGVtZW50PSJfeGNhVzhJTHFFZUdoT1p1YS1xamYwUSIgbmFtZT0iSW50ZXJmYWNlc0RpYWdyYW0iIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfTFVHYk1aWUdFZUdUd2FRcHZJS3EwUSIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX2RDOUNrSllHRWVHQkl2SEN5bk1LLXciIHR5cGU9IlBhcHlydXNVTUxDbGFzc0RpYWdyYW0iIG5hbWU9IkltcGxlbWVudGF0aW9uUmVxdWlyZW1lbnRzIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9tcTgza0pZR0VlR0JJdkhDeW5NSy13IiB0eXBlPSIyMDEyIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9tcTllb0pZR0VlR0JJdkhDeW5NSy13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbXE5ZW9aWUdFZUdCSXZIQ3luTUstdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbXE5ZW9wWUdFZUdCSXZIQ3luTUstdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbXE5ZW81WUdFZUdCSXZIQ3luTUstdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9tcTllcEpZR0VlR0JJdkhDeW5NSy13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX21xOWVwWllHRWVHQkl2SEN5bk1LLXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9tcTllcHBZR0VlR0JJdkhDeW5NSy13IiB0eXBlPSI1MDM4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfbXFOM3dKWUdFZUdCSXZIQ3luTUstdyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbXE4M2taWUdFZUdCSXZIQ3luTUstdyIgeD0iMjUiIHk9IjI1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9INFdRa0pZSEVlR0JJdkhDeW5NSy13IiB0eXBlPSIyMDEyIiBmb250TmFtZT0iVWJ1bnR1IiBmb250SGVpZ2h0PSIxMSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9INFczb0pZSEVlR0JJdkhDeW5NSy13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSDRXM29aWUhFZUdCSXZIQ3luTUstdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSDRXM29wWUhFZUdCSXZIQ3luTUstdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSDRYZXNKWUhFZUdCSXZIQ3luTUstdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9INFhlc1pZSEVlR0JJdkhDeW5NSy13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0g0WGVzcFlIRWVHQkl2SEN5bk1LLXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9INFhlczVZSEVlR0JJdkhDeW5NSy13IiB0eXBlPSI1MDM4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfSDRFandKWUhFZUdCSXZIQ3luTUstdyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfSDRXUWtaWUhFZUdCSXZIQ3luTUstdyIgeD0iMjUiIHk9IjEzNSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfaUdoTm9KWUhFZUdCSXZIQ3luTUstdyIgdHlwZT0iMjAxMiIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfaUdoMHNKWUhFZUdCSXZIQ3luTUstdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2lHaDBzWllIRWVHQkl2SEN5bk1LLXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2lHaDBzcFlIRWVHQkl2SEN5bk1LLXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2lHaDBzNVlIRWVHQkl2SEN5bk1LLXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfaUdpYndKWUhFZUdCSXZIQ3luTUstdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9pR2lid1pZSEVlR0JJdkhDeW5NSy13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfaUdpYndwWUhFZUdCSXZIQ3luTUstdyIgdHlwZT0iNTAzOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX2lHTzV3SllIRWVHQkl2SEN5bk1LLXciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2lHaE5vWllIRWVHQkl2SEN5bk1LLXciIHg9IjI1IiB5PSIyNDUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfZEM5Q2taWUdFZUdCSXZIQ3luTUstdyIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iXzBsRnMwSDdMRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfcmtWSlFZTHFFZUdoT1p1YS1xamYwUSIvPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3o5RXZMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U3RyaW5nVmFsdWVTdHlsZSIgeG1pOmlkPSJfMGxGczBYN0xFZVNGeU5ibkxZRENrdyIgbmFtZT0iZGlhZ3JhbV9jb21wYXRpYmlsaXR5X3ZlcnNpb24iIHN0cmluZ1ZhbHVlPSIxLjAuMCIvPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfcmtWSlFZTHFFZUdoT1p1YS1xamYwUSIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX3R4N0lVS05PRWVHT2RQZG9FVURKdFEiIHR5cGU9IlBhcHlydXNVTUxTdGF0ZU1hY2hpbmVEaWFncmFtIiBuYW1lPSJTbSBEaWFncmFtIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX3R4N0lhYU5PRWVHT2RQZG9FVURKdFEiLz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0YXRlTWFjaGluZSIgaHJlZj0ibW9kZWwudW1sI19nTzE5MEtOT0VlR09kUGRvRVVESnRRIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfaU1PRjhNek9FZUdJNTQtYmh6enVvQSIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJQc2V1ZG9UQUxDQXZpb25pY09iY0NvbXBvbmVudCIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfblpZSFVNek9FZUdJNTQtYmh6enVvQSIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX25aWXVZTXpPRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9uWll1WWN6T0VlR0k1NC1iaHp6dW9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9uWll1WXN6T0VlR0k1NC1iaHp6dW9BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9uWll1WTh6T0VlR0k1NC1iaHp6dW9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX25aWXVaTXpPRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfblpZdVpjek9FZUdJNTQtYmh6enVvQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX25aWXVac3pPRWVHSTU0LWJoenp1b0EiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfblpZdVo4ek9FZUdJNTQtYmh6enVvQSIgdHlwZT0iNzA3MyIgY29sbGFwc2VkPSJ0cnVlIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfNWEzOTRNek9FZUdJNTQtYmh6enVvQSIgdHlwZT0iMzA3MCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il81YTM5NHN6T0VlR0k1NC1iaHp6dW9BIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzVhMzk0OHpPRWVHSTU0LWJoenp1b0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNWEzOTVNek9FZUdJNTQtYmh6enVvQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzVhMzk1Y3pPRWVHSTU0LWJoenp1b0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il81YTM5NXN6T0VlR0k1NC1iaHp6dW9BIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il81YTM5NTh6T0VlR0k1NC1iaHp6dW9BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il81YTRrOE16T0VlR0k1NC1iaHp6dW9BIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il81YTRrOGN6T0VlR0k1NC1iaHp6dW9BIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il81YTRrOHN6T0VlR0k1NC1iaHp6dW9BIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il81YTRrODh6T0VlR0k1NC1iaHp6dW9BIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjXzVhbTRJTXpPRWVHSTU0LWJoenp1b0EiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il81YTM5NGN6T0VlR0k1NC1iaHp6dW9BIiB4PSI2MiIgeT0iMTI3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX25aWXVhTXpPRWVHSTU0LWJoenp1b0EiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfblpZdWFjek9FZUdJNTQtYmh6enVvQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3BuS05nTXpPRWVHSTU0LWJoenp1b0EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3BuS05nc3pPRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3BuS05nOHpPRWVHSTU0LWJoenp1b0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9wbktOaE16T0VlR0k1NC1iaHp6dW9BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3BuS05oY3pPRWVHSTU0LWJoenp1b0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3BuS05oc3pPRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9wbktOaDh6T0VlR0k1NC1iaHp6dW9BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3BuS05pTXpPRWVHSTU0LWJoenp1b0EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfcG5LMGtNek9FZUdJNTQtYmh6enVvQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfcG5LMGtjek9FZUdJNTQtYmh6enVvQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9wbkswa3N6T0VlR0k1NC1iaHp6dW9BIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI184Q19SVUpYMEVlR1JUTFZaZjROeVl3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3BuS05nY3pPRWVHSTU0LWJoenp1b0EiIHg9Ii0xMCIgeT0iNDQiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9wbkswazh6T0VlR0k1NC1iaHp6dW9BIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9wbkswbGN6T0VlR0k1NC1iaHp6dW9BIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9wbkswbHN6T0VlR0k1NC1iaHp6dW9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcG5LMGw4ek9FZUdJNTQtYmh6enVvQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9wbkswbU16T0VlR0k1NC1iaHp6dW9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9wbkswbWN6T0VlR0k1NC1iaHp6dW9BIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcG5LMG1zek9FZUdJNTQtYmh6enVvQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9wbkswbTh6T0VlR0k1NC1iaHp6dW9BIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3BuSzBuTXpPRWVHSTU0LWJoenp1b0EiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3BuTGJvTXpPRWVHSTU0LWJoenp1b0EiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfcG5MYm9jek9FZUdJNTQtYmh6enVvQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfR3IyR1lKWDFFZUdSVExWWmY0TnlZdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9wbkswbE16T0VlR0k1NC1iaHp6dW9BIiB4PSItMTAiIHk9IjY4Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfcG5MYm9zek9FZUdJNTQtYmh6enVvQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcG5MYnBNek9FZUdJNTQtYmh6enVvQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcG5MYnBjek9FZUdJNTQtYmh6enVvQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3BuTGJwc3pPRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcG5MYnA4ek9FZUdJNTQtYmh6enVvQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcG5MYnFNek9FZUdJNTQtYmh6enVvQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3BuTGJxY3pPRWVHSTU0LWJoenp1b0EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfcG5MYnFzek9FZUdJNTQtYmh6enVvQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9wbkxicTh6T0VlR0k1NC1iaHp6dW9BIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9wbk1Dc016T0VlR0k1NC1iaHp6dW9BIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3BuTUNzY3pPRWVHSTU0LWJoenp1b0EiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX1RyMUs0SlgxRWVHUlRMVlpmNE55WXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfcG5MYm84ek9FZUdJNTQtYmh6enVvQSIgeD0iMjcxIiB5PSI0OCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3BuTUNzc3pPRWVHSTU0LWJoenp1b0EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3BuTUN0TXpPRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3BuTUN0Y3pPRWVHSTU0LWJoenp1b0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9wbk1DdHN6T0VlR0k1NC1iaHp6dW9BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3BuTUN0OHpPRWVHSTU0LWJoenp1b0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3BuTUN1TXpPRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9wbk1DdWN6T0VlR0k1NC1iaHp6dW9BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3BuTUN1c3pPRWVHSTU0LWJoenp1b0EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfcG5NQ3U4ek9FZUdJNTQtYmh6enVvQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfcG5NQ3ZNek9FZUdJNTQtYmh6enVvQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9wbk1wd016T0VlR0k1NC1iaHp6dW9BIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI193dEVWc016TkVlR0k1NC1iaHp6dW9BIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3BuTUNzOHpPRWVHSTU0LWJoenp1b0EiIHg9IjI3MSIgeT0iMjA4Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfbjB3UE1NempFZUdJNTQtYmh6enVvQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbjB3UE1zempFZUdJNTQtYmh6enVvQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbjB3UE04empFZUdJNTQtYmh6enVvQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX24wd1BOTXpqRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbjB3UE5jempFZUdJNTQtYmh6enVvQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbjB3UE5zempFZUdJNTQtYmh6enVvQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX24wdzJRTXpqRWVHSTU0LWJoenp1b0EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX24welNnTXpqRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX24yZjdvTXpqRWVHSTU0LWJoenp1b0EiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbjJmN29jempFZUdJNTQtYmh6enVvQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OlNlcnZpY2VQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9uMmY3b3N6akVlR0k1NC1iaHp6dW9BIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbjJmN284empFZUdJNTQtYmh6enVvQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbjJmN3BNempFZUdJNTQtYmh6enVvQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9uMHcyUWN6akVlR0k1NC1iaHp6dW9BIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX24wdzJRc3pqRWVHSTU0LWJoenp1b0EiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX24wdzJROHpqRWVHSTU0LWJoenp1b0EiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfbjB3MlJNempFZUdJNTQtYmh6enVvQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfbjBnWGtNempFZUdJNTQtYmh6enVvQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9uMHdQTWN6akVlR0k1NC1iaHp6dW9BIiB4PSIyNzEiIHk9IjI0OCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI18xWEhvZ0pYdkVlR1JUTFZaZjROeVl3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9uWllIVWN6T0VlR0k1NC1iaHp6dW9BIiB4PSIxNzYiIHk9IjE2IiB3aWR0aD0iMjgxIiBoZWlnaHQ9IjI5MyIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfNGd6aVVNek9FZUdJNTQtYmh6enVvQSIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzRnemlVc3pPRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il80Z3ppVTh6T0VlR0k1NC1iaHp6dW9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il80Z3ppVk16T0VlR0k1NC1iaHp6dW9BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il80Z3ppVmN6T0VlR0k1NC1iaHp6dW9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzRnemlWc3pPRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNGd6aVY4ek9FZUdJNTQtYmh6enVvQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzRnemlXTXpPRWVHSTU0LWJoenp1b0EiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfNGd6aVdjek9FZUdJNTQtYmh6enVvQSIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzRnemlXc3pPRWVHSTU0LWJoenp1b0EiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfNGd6aVc4ek9FZUdJNTQtYmh6enVvQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfbGVtQzRKWHFFZUdvUkl6VDhUanlWZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfNGd6aVVjek9FZUdJNTQtYmh6enVvQSIgeD0iMjAiIHk9IjIwOCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfN185dzBNek9FZUdJNTQtYmh6enVvQSIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzdfOXcwc3pPRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il83Xzl3MDh6T0VlR0k1NC1iaHp6dW9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il83Xzl3MU16T0VlR0k1NC1iaHp6dW9BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il83Xzl3MWN6T0VlR0k1NC1iaHp6dW9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzdfLVg0TXpPRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfN18tWDRjek9FZUdJNTQtYmh6enVvQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzdfLVg0c3pPRWVHSTU0LWJoenp1b0EiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfN18tWDQ4ek9FZUdJNTQtYmh6enVvQSIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzdfLVg1TXpPRWVHSTU0LWJoenp1b0EiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfN18tWDVjek9FZUdJNTQtYmh6enVvQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfOHBMb1FKWHNFZUdvUkl6VDhUanlWZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfN185dzBjek9FZUdJNTQtYmh6enVvQSIgeD0iMTYiIHk9IjM2Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX2lNT0Y4Y3pPRWVHSTU0LWJoenp1b0EiLz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJzdHlsZTpQYXB5cnVzVmlld1N0eWxlIiB4bWk6aWQ9Il8wcHRIRUg3TEVlU0Z5TmJuTFlEQ2t3Ij4KKyAgICAgIDxvd25lciB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX3JrVkpRWUxxRWVHaE9adWEtcWpmMFEiLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0JmTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlN0cmluZ1ZhbHVlU3R5bGUiIHhtaTppZD0iXzBwdEhFWDdMRWVTRnlOYm5MWURDa3ciIG5hbWU9ImRpYWdyYW1fY29tcGF0aWJpbGl0eV92ZXJzaW9uIiBzdHJpbmdWYWx1ZT0iMS4wLjAiLz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX3JrVkpRWUxxRWVHaE9adWEtcWpmMFEiLz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9JVVRZME16bUVlR0k1NC1iaHp6dW9BIiB0eXBlPSJDb21wb3NpdGVTdHJ1Y3R1cmUiIG5hbWU9IlBzZXVkb1RBTENWaWRlb0NhbWVyYUNvbXBvbmVudCIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfWWtKRWdNem1FZUdJNTQtYmh6enVvQSIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1lrSkVnc3ptRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9Za0pFZzh6bUVlR0k1NC1iaHp6dW9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Za0pFaE16bUVlR0k1NC1iaHp6dW9BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9Za0pya016bUVlR0k1NC1iaHp6dW9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1lrSnJrY3ptRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWWtKcmtzem1FZUdJNTQtYmh6enVvQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1lrSnJrOHptRWVHSTU0LWJoenp1b0EiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfWWtKcmxNem1FZUdJNTQtYmh6enVvQSIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1lrSnJsY3ptRWVHSTU0LWJoenp1b0EiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfWWtKcmxzem1FZUdJNTQtYmh6enVvQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2FZMHVNTXptRWVHSTU0LWJoenp1b0EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2FZMVZRTXptRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2FZMVZRY3ptRWVHSTU0LWJoenp1b0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9hWTFWUXN6bUVlR0k1NC1iaHp6dW9BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2FZMVZROHptRWVHSTU0LWJoenp1b0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2FZMVZSTXptRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9hWTFWUmN6bUVlR0k1NC1iaHp6dW9BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2FZMVZSc3ptRWVHSTU0LWJoenp1b0EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYVkxVlI4em1FZUdJNTQtYmh6enVvQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYVkxVlNNem1FZUdJNTQtYmh6enVvQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9hWTFWU2N6bUVlR0k1NC1iaHp6dW9BIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI196d19KY0pYMUVlR1JUTFZaZjROeVl3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2FZMHVNY3ptRWVHSTU0LWJoenp1b0EiIHg9Ii0xMCIgeT0iNDQiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9hWTFWU3N6bUVlR0k1NC1iaHp6dW9BIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9hWTE4VU16bUVlR0k1NC1iaHp6dW9BIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9hWTE4VWN6bUVlR0k1NC1iaHp6dW9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYVkxOFVzem1FZUdJNTQtYmh6enVvQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9hWTE4VTh6bUVlR0k1NC1iaHp6dW9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9hWTE4Vk16bUVlR0k1NC1iaHp6dW9BIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYVkxOFZjem1FZUdJNTQtYmh6enVvQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9hWTE4VnN6bUVlR0k1NC1iaHp6dW9BIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2FZMThWOHptRWVHSTU0LWJoenp1b0EiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2FZMThXTXptRWVHSTU0LWJoenp1b0EiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYVkxOFdjem1FZUdJNTQtYmh6enVvQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfOHg3bGdKWDFFZUdSVExWWmY0TnlZdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9hWTFWUzh6bUVlR0k1NC1iaHp6dW9BIiB4PSItMTAiIHk9IjY4Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfblBGTzhNem1FZUdJNTQtYmh6enVvQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfblBGTzhzem1FZUdJNTQtYmh6enVvQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfblBGTzg4em1FZUdJNTQtYmh6enVvQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX25QRk85TXptRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfblBGTzljem1FZUdJNTQtYmh6enVvQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfblBGMkFNem1FZUdJNTQtYmh6enVvQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX25QRjJBY3ptRWVHSTU0LWJoenp1b0EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX25QSVNRTXptRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX25RMkpnTXptRWVHSTU0LWJoenp1b0EiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfblEySmdjem1FZUdJNTQtYmh6enVvQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfblEySmdzem1FZUdJNTQtYmh6enVvQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX25RMkpnOHptRWVHSTU0LWJoenp1b0EiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX25RMkpoTXptRWVHSTU0LWJoenp1b0EiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfblBGMkFzem1FZUdJNTQtYmh6enVvQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9uUEYyQTh6bUVlR0k1NC1iaHp6dW9BIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9uUEYyQk16bUVlR0k1NC1iaHp6dW9BIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX25QRjJCY3ptRWVHSTU0LWJoenp1b0EiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX25PMVhVTXptRWVHSTU0LWJoenp1b0EiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfblBGTzhjem1FZUdJNTQtYmh6enVvQSIgeD0iMzA3IiB5PSIxODAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3RMZTc4TXptRWVHSTU0LWJoenp1b0EiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3RMZmpBTXptRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3RMZmpBY3ptRWVHSTU0LWJoenp1b0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il90TGZqQXN6bUVlR0k1NC1iaHp6dW9BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3RMZmpBOHptRWVHSTU0LWJoenp1b0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3RMZmpCTXptRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il90TGZqQmN6bUVlR0k1NC1iaHp6dW9BIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il90TGhfUU16bUVlR0k1NC1iaHp6dW9BIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il90TlAyZ016bUVlR0k1NC1iaHp6dW9BIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3ROUDJnY3ptRWVHSTU0LWJoenp1b0EiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3ROUDJnc3ptRWVHSTU0LWJoenp1b0EiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il90TlAyZzh6bUVlR0k1NC1iaHp6dW9BIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il90TlAyaE16bUVlR0k1NC1iaHp6dW9BIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3RMZmpCc3ptRWVHSTU0LWJoenp1b0EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdExmakI4em1FZUdJNTQtYmh6enVvQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfdExmakNNem1FZUdJNTQtYmh6enVvQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il90TGZqQ2N6bUVlR0k1NC1iaHp6dW9BIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI190TFBFVU16bUVlR0k1NC1iaHp6dW9BIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3RMZTc4Y3ptRWVHSTU0LWJoenp1b0EiIHg9IjMwNyIgeT0iMjA0IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HVGYzVU16cEVlR0k1NC1iaHp6dW9BIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HVGdlWU16cEVlR0k1NC1iaHp6dW9BIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HVGdlWWN6cEVlR0k1NC1iaHp6dW9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR1RnZVlzenBFZUdJNTQtYmh6enVvQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HVGdlWTh6cEVlR0k1NC1iaHp6dW9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HVGdlWk16cEVlR0k1NC1iaHp6dW9BIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR1RnZVpjenBFZUdJNTQtYmh6enVvQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfR1RpNm9NenBFZUdJNTQtYmh6enVvQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR1ZZR29NenBFZUdJNTQtYmh6enVvQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HVll0c016cEVlR0k1NC1iaHp6dW9BIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6U2VydmljZVBvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dWWXRzY3pwRWVHSTU0LWJoenp1b0EiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HVll0c3N6cEVlR0k1NC1iaHp6dW9BIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HVll0czh6cEVlR0k1NC1iaHp6dW9BIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dUZ2Vac3pwRWVHSTU0LWJoenp1b0EiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR1RnZVo4enBFZUdJNTQtYmh6enVvQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR1RnZWFNenBFZUdJNTQtYmh6enVvQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HVGdlYWN6cEVlR0k1NC1iaHp6dW9BIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19HVFBZb016cEVlR0k1NC1iaHp6dW9BIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dUZjNVY3pwRWVHSTU0LWJoenp1b0EiIHg9IjMwNyIgeT0iMjI4IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjXzhMNXZBSlh2RWVHUlRMVlpmNE55WXciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1lrSkVnY3ptRWVHSTU0LWJoenp1b0EiIHg9IjEyOCIgeT0iOCIgd2lkdGg9IjMxNyIgaGVpZ2h0PSI0MzMiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2Y5QXZnTXptRWVHSTU0LWJoenp1b0EiIHR5cGU9IjIwNzMiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9mOUJXa016bUVlR0k1NC1iaHp6dW9BIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZjlCV2tjem1FZUdJNTQtYmh6enVvQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZjlCV2tzem1FZUdJNTQtYmh6enVvQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZjlCV2s4em1FZUdJNTQtYmh6enVvQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9mOUJXbE16bUVlR0k1NC1iaHp6dW9BIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2Y5QldsY3ptRWVHSTU0LWJoenp1b0EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9mOUJXbHN6bUVlR0k1NC1iaHp6dW9BIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2Y5QldsOHptRWVHSTU0LWJoenp1b0EiIHR5cGU9IjcwNzMiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mOUJXbU16bUVlR0k1NC1iaHp6dW9BIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2Y5QldtY3ptRWVHSTU0LWJoenp1b0EiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX2xlbUM0SlhxRWVHb1JJelQ4VGp5VmciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2Y5QXZnY3ptRWVHSTU0LWJoenp1b0EiIHg9IjQiIHk9IjE4NCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfaHlSb0FNem1FZUdJNTQtYmh6enVvQSIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2h5Um9Bc3ptRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9oeVJvQTh6bUVlR0k1NC1iaHp6dW9BIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9oeVNQRU16bUVlR0k1NC1iaHp6dW9BIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9oeVNQRWN6bUVlR0k1NC1iaHp6dW9BIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2h5U1BFc3ptRWVHSTU0LWJoenp1b0EiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfaHlTUEU4em1FZUdJNTQtYmh6enVvQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2h5U1BGTXptRWVHSTU0LWJoenp1b0EiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfaHlTUEZjem1FZUdJNTQtYmh6enVvQSIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2h5U1BGc3ptRWVHSTU0LWJoenp1b0EiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfaHlTUEY4em1FZUdJNTQtYmh6enVvQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfOHBMb1FKWHNFZUdvUkl6VDhUanlWZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfaHlSb0Fjem1FZUdJNTQtYmh6enVvQSIgeD0iNCIgeT0iNCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9JVVRZMGN6bUVlR0k1NC1iaHp6dW9BIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfMURsbXNIN0xFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19ya1ZKUVlMcUVlR2hPWnVhLXFqZjBRIi8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBreldCZkxfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTdHJpbmdWYWx1ZVN0eWxlIiB4bWk6aWQ9Il8xRGxtc1g3TEVlU0Z5TmJuTFlEQ2t3IiBuYW1lPSJkaWFncmFtX2NvbXBhdGliaWxpdHlfdmVyc2lvbiIgc3RyaW5nVmFsdWU9IjEuMC4wIi8+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19ya1ZKUVlMcUVlR2hPWnVhLXFqZjBRIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfX1hReEVNMEFFZUc3WnNWaWxjUFJnUSIgdHlwZT0iUGFweXJ1c1VNTENsYXNzRGlhZ3JhbSIgbmFtZT0iT2JjSW50ZXJmYWNlIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9CTVVPTU0wQkVlRzdac1ZpbGNQUmdRIiB0eXBlPSIyMDA0IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQk1VMVFjMEJFZUc3WnNWaWxjUFJnUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0JNVTFRczBCRWVHN1pzVmlsY1BSZ1EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0JNVTFRODBCRWVHN1pzVmlsY1BSZ1EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0JNVTFSTTBCRWVHN1pzVmlsY1BSZ1EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQk1VMVJjMEJFZUc3WnNWaWxjUFJnUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9CTVUxUnMwQkVlRzdac1ZpbGNQUmdRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfQk1VMVI4MEJFZUc3WnNWaWxjUFJnUSIgdHlwZT0iNTAxMSIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9CTVUxU00wQkVlRzdac1ZpbGNQUmdRIiB0eXBlPSI3MDA2Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfQk1VMVNjMEJFZUc3WnNWaWxjUFJnUSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0JNVTFTczBCRWVHN1pzVmlsY1BSZ1EiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0JNVTFTODBCRWVHN1pzVmlsY1BSZ1EiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfQk1VMVRNMEJFZUc3WnNWaWxjUFJnUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfQk1VMVRjMEJFZUc3WnNWaWxjUFJnUSIgdHlwZT0iNzAwNyI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0RZY3FZTTBJRWVHN1pzVmlsY1BSZ1EiIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19EWUpJWU0wSUVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9EWWNxWWMwSUVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2tkdGJFTTBJRWVHN1pzVmlsY1BSZ1EiIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19rZGFnSU0wSUVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rZHRiRWMwSUVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3M5MlFJTTBJRWVHN1pzVmlsY1BSZ1EiIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19zOWl1SU0wSUVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9zOTJRSWMwSUVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0pIZ0NjTTBKRWVHN1pzVmlsY1BSZ1EiIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19KSEVrb00wSkVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9KSGdDY2MwSkVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1NlNG9rTTBKRWVHN1pzVmlsY1BSZ1EiIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19TZWpSWU0wSkVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9TZTRva2MwSkVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1kxM18wTTBKRWVHN1pzVmlsY1BSZ1EiIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19ZMWlvb00wSkVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9ZMTNfMGMwSkVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2UwVmlVTTBKRWVHN1pzVmlsY1BSZ1EiIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19lMEFMSU0wSkVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9lMFZpVWMwSkVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2lwN1QwTTBKRWVHN1pzVmlsY1BSZ1EiIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19pcGxWa00wSkVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9pcDdUMGMwSkVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3dxcURvTTBKRWVHN1pzVmlsY1BSZ1EiIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19EMzFaUU0wQkVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il93cXFEb2MwSkVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0VXbXAwTTBLRWVHN1pzVmlsY1BSZ1EiIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19FV1Fya00wS0VlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9FV21wMGMwS0VlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0lBNllZTTBLRWVHN1pzVmlsY1BSZ1EiIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19JQWp6RU0wS0VlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9JQTZZWWMwS0VlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX01xSjBZTTBLRWVHN1pzVmlsY1BSZ1EiIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19NcHlvQU0wS0VlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9NcUowWWMwS0VlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1VtSGxZTTBLRWVHN1pzVmlsY1BSZ1EiIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19VbHdaQU0wS0VlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9VbUhsWWMwS0VlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1k3SnI4TTBLRWVHN1pzVmlsY1BSZ1EiIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19ZNng0Z00wS0VlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9ZN0pyOGMwS0VlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ZPLWFjTTBLRWVHN1pzVmlsY1BSZ1EiIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19mT21uQU0wS0VlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9mTy1hY2MwS0VlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1hHajdjUEt5RWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19YQlpIa1BLeUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9YR2o3Y2ZLeUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2Q2bkNJUEt5RWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19kNmotMFBLeUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9kNm5DSWZLeUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2lZTFpvUEt5RWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19pWUlXVVBLeUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9pWUxab2ZLeUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX29XV0JNUEt5RWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19vV1J2d1BLeUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9vV1dCTWZLeUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3MxZ1VJUEt5RWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19zMWNwd1BLeUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9zMWdVSWZLeUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3ZhYzlJUEt5RWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI192YVpTd1BLeUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il92YWM5SWZLeUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3pwUzhJUEt5RWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI196cFBSd1BLeUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il96cFM4SWZLeUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzN2SXdJUEt5RWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI18zdkZGd1BLeUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8zdkl3SWZLeUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzZlT01rUEt5RWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI182ZUxKUVBLeUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il82ZU9Na2ZLeUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzlaUzJrUEt5RWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI185WlB6UVBLeUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il85WlMya2ZLeUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0JNVTFUczBCRWVHN1pzVmlsY1BSZ1EiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9CTVUxVDgwQkVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9CTVUxVU0wQkVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0JNVTFVYzBCRWVHN1pzVmlsY1BSZ1EiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0JNVTFVczBCRWVHN1pzVmlsY1BSZ1EiIHR5cGU9IjcwMDgiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9CTVUxVTgwQkVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfQk1VMVZNMEJFZUc3WnNWaWxjUFJnUSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfQk1VMVZjMEJFZUc3WnNWaWxjUFJnUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9CTVUxVnMwQkVlRzdac1ZpbGNQUmdRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnRlcmZhY2UiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfQkxvNHdNMEJFZUc3WnNWaWxjUFJnUSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfQk1VMVFNMEJFZUc3WnNWaWxjUFJnUSIgeD0iMzIiIHk9IjMyIiB3aWR0aD0iNzQ1IiBoZWlnaHQ9IjUxMyIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9fWFF4RWMwQUVlRzdac1ZpbGNQUmdRIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfMWlGZ2tIN0xFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19ya1ZKUVlMcUVlR2hPWnVhLXFqZjBRIi8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBrejlFdkxfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTdHJpbmdWYWx1ZVN0eWxlIiB4bWk6aWQ9Il8xaUZna1g3TEVlU0Z5TmJuTFlEQ2t3IiBuYW1lPSJkaWFncmFtX2NvbXBhdGliaWxpdHlfdmVyc2lvbiIgc3RyaW5nVmFsdWU9IjEuMC4wIi8+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19ya1ZKUVlMcUVlR2hPWnVhLXFqZjBRIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfeU9ndVFQSzBFZUdpT3FFMmxBSWpRdyIgdHlwZT0iUGFweXJ1c1VNTENsYXNzRGlhZ3JhbSIgbmFtZT0iQ2FtZXJhSW50ZXJmYWNlIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il96WnlPa1BLMEVlR2lPcUUybEFJalF3IiB0eXBlPSIyMDA0IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfelp5MW9QSzBFZUdpT3FFMmxBSWpRdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3paeTFvZkswRWVHaU9xRTJsQUlqUXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3paeTFvdkswRWVHaU9xRTJsQUlqUXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3paeTFvX0swRWVHaU9xRTJsQUlqUXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfelp5MXBQSzBFZUdpT3FFMmxBSWpRdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il96WnkxcGZLMEVlR2lPcUUybEFJalF3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfelp6Y3NQSzBFZUdpT3FFMmxBSWpRdyIgdHlwZT0iNTAxMSIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il96Wnpjc2ZLMEVlR2lPcUUybEFJalF3IiB0eXBlPSI3MDA2Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfelp6Y3N2SzBFZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3paemNzX0swRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX3paemN0UEswRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfelp6Y3RmSzBFZUdpT3FFMmxBSWpRdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfelp6Y3R2SzBFZUdpT3FFMmxBSWpRdyIgdHlwZT0iNzAwNyI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0pvR0QwUEsxRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19Kb0Rua1BLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9Kb0dEMGZLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX01BaDYwUEsxRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19NQWZla1BLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9NQWg2MGZLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX05kWVRVUEsxRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19OZFYzRVBLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9OZFlUVWZLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1BDWkpVUEsxRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19QQ1d0RVBLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9QQ1pKVWZLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1M4b3hVUEsxRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19TOGx1QVBLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9TOG94VWZLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1U4YmUwUEsxRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19VOFliZ1BLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9VOGJlMGZLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1hDVTBVUEsxRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19YQ1NZRVBLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9YQ1UwVWZLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1pUdmRVUEsxRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19aVHNhQVBLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9aVHZkVWZLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2JtaF9VUEsxRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19ibWZqRVBLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9ibWhfVWZLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ZtV0QwUEsxRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19mbVRua1BLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9mbVdEMGZLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2tUb1NVUEsxRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19rVGxQQVBLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rVG9TVWZLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX21rZ3YwUEsxRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19ta2RzZ1BLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9ta2d2MGZLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX291RWRVUEsxRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19vdUJhQVBLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9vdUVkVWZLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3JHZ1VVUEsxRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19yR2RSQVBLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9yR2dVVWZLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3RnS1RVUEsxRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI190Z0hRQVBLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il90Z0tUVWZLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3Z6b0t3UEsxRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI192emx1Z1BLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il92em9Ld2ZLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3lRTVQwUEsxRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI195UUpRZ1BLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il95UU1UMGZLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzFDWjh3UEsxRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI18xQ1hnZ1BLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8xQ1o4d2ZLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzNEOWswUEsxRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMDciIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI18zRDZoZ1BLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8zRDlrMGZLMUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3paemN0X0swRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il96WnpjdVBLMEVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il96WnpjdWZLMEVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3paemN1dkswRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3paemN1X0swRWVHaU9xRTJsQUlqUXciIHR5cGU9IjcwMDgiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il96WnpjdlBLMEVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfelp6Y3ZmSzBFZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfelp6Y3Z2SzBFZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il96Wnpjdl9LMEVlR2lPcUUybEFJalF3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnRlcmZhY2UiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfelp0V0VQSzBFZUdpT3FFMmxBSWpRdyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfelp5T2tmSzBFZUdpT3FFMmxBSWpRdyIgeD0iMTI0IiB5PSIyOCIgd2lkdGg9IjY0NSIgaGVpZ2h0PSI0ODkiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfeU9oVlVQSzBFZUdpT3FFMmxBSWpRdyIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iXzFwNzFBSDdMRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfcmtWSlFZTHFFZUdoT1p1YS1xamYwUSIvPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3o5RXZMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U3RyaW5nVmFsdWVTdHlsZSIgeG1pOmlkPSJfMXA3MUFYN0xFZVNGeU5ibkxZRENrdyIgbmFtZT0iZGlhZ3JhbV9jb21wYXRpYmlsaXR5X3ZlcnNpb24iIHN0cmluZ1ZhbHVlPSIxLjAuMCIvPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfcmtWSlFZTHFFZUdoT1p1YS1xamYwUSIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX1pReDUwUEstRWVHaU9xRTJsQUlqUXciIHR5cGU9IlBhcHlydXNVTUxDbGFzc0RpYWdyYW0iIGVsZW1lbnQ9Il9UWjBuSUpYd0VlR1JUTFZaZjROeVl3IiBuYW1lPSJUQUxDRGF0YVR5cGVzIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iNXpLZ1BLLUVlR2lPcUUybEFJalF3IiB0eXBlPSIyMDEwIiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYjV6eGtQSy1FZUdpT3FFMmxBSWpRdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2I1enhrZkstRWVHaU9xRTJsQUlqUXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2I1enhrdkstRWVHaU9xRTJsQUlqUXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2I1enhrX0stRWVHaU9xRTJsQUlqUXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYjV6eGxQSy1FZUdpT3FFMmxBSWpRdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9iNXp4bGZLLUVlR2lPcUUybEFJalF3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYjV6eGx2Sy1FZUdpT3FFMmxBSWpRdyIgdHlwZT0iNTAzNSIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9iNXp4bF9LLUVlR2lPcUUybEFJalF3IiB0eXBlPSI3MDIwIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZWJyNGNQSy1FZUdpT3FFMmxBSWpRdyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfV2pMeWdQSzdFZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZWJyNGNmSy1FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9lYnI0Y3ZLLUVlR2lPcUUybEFJalF3IiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19vN3RwQVBLN0VlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9lYnI0Y19LLUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2VicjRkUEstRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX3NFRDZBUEs3RWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2VicjRkZkstRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZWJzZmdQSy1FZUdpT3FFMmxBSWpRdyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfMDVLNWdQSzdFZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZWJzZmdmSy1FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9lYnNmZ3ZLLUVlR2lPcUUybEFJalF3IiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI181Qk5zOFBLN0VlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9lYnNmZ19LLUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2Vic2ZoUEstRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjXzhfdXc4UEs3RWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2Vic2ZoZkstRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZWJ0R2tQSy1FZUdpT3FFMmxBSWpRdyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfSTdEVGNQSzhFZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZWJ0R2tmSy1FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9lYnRHa3ZLLUVlR2lPcUUybEFJalF3IiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19QRzNWY1BLOEVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9lYnRHa19LLUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2VidEdsUEstRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX1luSl84UEs4RWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2VidEdsZkstRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZWJ0dG9QSy1FZUdpT3FFMmxBSWpRdyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfY3p0ZjhQSzhFZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZWJ0dG9mSy1FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9iNXp4bVBLLUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfYjV6eG1mSy1FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfYjV6eG12Sy1FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9iNXp4bV9LLUVlR2lPcUUybEFJalF3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9iNXp4blBLLUVlR2lPcUUybEFJalF3IiB0eXBlPSI3MDIxIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfYjV6eG5mSy1FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2I1enhudkstRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2I1enhuX0stRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfYjV6eG9QSy1FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfUUtmTEVQSzdFZUdpT3FFMmxBSWpRdyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfYjV6S2dmSy1FZUdpT3FFMmxBSWpRdyIgeD0iMjE2IiB5PSIxNiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfbTlwU2NQSy1FZUdpT3FFMmxBSWpRdyIgdHlwZT0iMjAxMCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX205cFNjdkstRWVHaU9xRTJsQUlqUXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9tOXBTY19LLUVlR2lPcUUybEFJalF3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9tOXBTZFBLLUVlR2lPcUUybEFJalF3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9tOXA1Z1BLLUVlR2lPcUUybEFJalF3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX205cDVnZkstRWVHaU9xRTJsQUlqUXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbTlwNWd2Sy1FZUdpT3FFMmxBSWpRdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX205cDVnX0stRWVHaU9xRTJsQUlqUXciIHR5cGU9IjUwMzUiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfbTlwNWhQSy1FZUdpT3FFMmxBSWpRdyIgdHlwZT0iNzAyMCI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX29zVWF3UEstRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX0pWTkdFTXp2RWVHN1pzVmlsY1BSZ1EiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX29zVWF3ZkstRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfb3NVYXd2Sy1FZUdpT3FFMmxBSWpRdyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfaTN5dmdNenZFZUc3WnNWaWxjUFJnUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfb3NVYXdfSy1FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9vc1ZCMFBLLUVlR2lPcUUybEFJalF3IiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI195c1NqQU16dkVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9vc1ZCMGZLLUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX29zVkIwdkstRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX0ZtRlRnTXp3RWVHN1pzVmlsY1BSZ1EiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX29zVkIwX0stRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfb3NWQjFQSy1FZUdpT3FFMmxBSWpRdyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfUVlGZGdNendFZUc3WnNWaWxjUFJnUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfb3NWQjFmSy1FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9vc1ZCMXZLLUVlR2lPcUUybEFJalF3IiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19lU0h2Y016d0VlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9vc1ZCMV9LLUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX29zVm80UEstRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX3JOcm04TXp3RWVHN1pzVmlsY1BSZ1EiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX29zVm80ZkstRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfb3NWbzR2Sy1FZUdpT3FFMmxBSWpRdyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfd0ExejhNendFZUc3WnNWaWxjUFJnUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfb3NWbzRfSy1FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9vc1ZvNVBLLUVlR2lPcUUybEFJalF3IiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI18tZFh1OE16d0VlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9vc1ZvNWZLLUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX29zV1A4UEstRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX0dDclRjTXp4RWVHN1pzVmlsY1BSZ1EiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX29zV1A4ZkstRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfb3NXUDh2Sy1FZUdpT3FFMmxBSWpRdyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfWVZqTjRNenhFZUc3WnNWaWxjUFJnUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfb3NXUDhfSy1FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9vc1dQOVBLLUVlR2lPcUUybEFJalF3IiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19rRmxHWU16eEVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9vc1dQOWZLLUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX29zVzNBUEstRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX3NLakNZTXp4RWVHN1pzVmlsY1BSZ1EiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX29zVzNBZkstRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfbTlwNWhmSy1FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX205cDVodkstRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX205cDVoX0stRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbTlwNWlQSy1FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfbTlwNWlmSy1FZUdpT3FFMmxBSWpRdyIgdHlwZT0iNzAyMSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX205cDVpdkstRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9tOXA1aV9LLUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9tOXA1alBLLUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX205cDVqZkstRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX3JYWTVZTXpzRWVHN1pzVmlsY1BSZ1EiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX205cFNjZkstRWVHaU9xRTJsQUlqUXciIHg9IjE2IiB5PSIxNiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfeUFicWNQSy1FZUdpT3FFMmxBSWpRdyIgdHlwZT0iMjAxMCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3lBYnFjdkstRWVHaU9xRTJsQUlqUXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il95QWJxY19LLUVlR2lPcUUybEFJalF3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il95QWJxZFBLLUVlR2lPcUUybEFJalF3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il95QWJxZGZLLUVlR2lPcUUybEFJalF3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3lBYnFkdkstRWVHaU9xRTJsQUlqUXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeUFicWRfSy1FZUdpT3FFMmxBSWpRdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3lBYnFlUEstRWVHaU9xRTJsQUlqUXciIHR5cGU9IjUwMzUiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfeUFicWVmSy1FZUdpT3FFMmxBSWpRdyIgdHlwZT0iNzAyMCI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3pTVGlBUEstRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX2N1c2JrTXoxRWVHN1pzVmlsY1BSZ1EiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3pTVGlBZkstRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfelNVSkVQSy1FZUdpT3FFMmxBSWpRdyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfcC03aWtNejFFZUc3WnNWaWxjUFJnUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfelNVSkVmSy1FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il96U1VKRXZLLUVlR2lPcUUybEFJalF3IiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI196bWVFa016MUVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il96U1VKRV9LLUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3pTVUpGUEstRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX0ZUenBBTXoyRWVHN1pzVmlsY1BSZ1EiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3pTVUpGZkstRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfelNVd0lQSy1FZUdpT3FFMmxBSWpRdyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfWW9fVkFNejJFZUc3WnNWaWxjUFJnUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfelNVd0lmSy1FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il96U1V3SXZLLUVlR2lPcUUybEFJalF3IiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19LWVkxME16NUVlRzdac1ZpbGNQUmdRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il96U1V3SV9LLUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3pTVXdKUEstRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX1VzZTcwTXo1RWVHN1pzVmlsY1BSZ1EiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3pTVXdKZkstRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfelNVd0p2Sy1FZUdpT3FFMmxBSWpRdyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfZC1wcXdNejVFZUc3WnNWaWxjUFJnUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfelNVd0pfSy1FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il95QWJxZXZLLUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfeUFicWVfSy1FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfeUFicWZQSy1FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il95QWJxZmZLLUVlR2lPcUUybEFJalF3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il95QWJxZnZLLUVlR2lPcUUybEFJalF3IiB0eXBlPSI3MDIxIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfeUFicWZfSy1FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3lBYnFnUEstRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX3lBYnFnZkstRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfeUFicWd2Sy1FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfSWJTQ01NejBFZUc3WnNWaWxjUFJnUSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfeUFicWNmSy1FZUdpT3FFMmxBSWpRdyIgeD0iMTYiIHk9IjM0NCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfX1ZVQTRQSy1FZUdpT3FFMmxBSWpRdyIgdHlwZT0iMjAxMCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19WVW44UEstRWVHaU9xRTJsQUlqUXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fVlVuOGZLLUVlR2lPcUUybEFJalF3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9fVlVuOHZLLUVlR2lPcUUybEFJalF3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fVlVuOF9LLUVlR2lPcUUybEFJalF3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19WVW45UEstRWVHaU9xRTJsQUlqUXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX1ZVbjlmSy1FZUdpT3FFMmxBSWpRdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX19WVW45dkstRWVHaU9xRTJsQUlqUXciIHR5cGU9IjUwMzUiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfX1ZVbjlfSy1FZUdpT3FFMmxBSWpRdyIgdHlwZT0iNzAyMCI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0FtR1RVUEtfRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX3hrWTdRTXo1RWVHN1pzVmlsY1BSZ1EiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0FtR1RVZktfRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfX1ZVbi1QSy1FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX19WVW4tZkstRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX19WVW4tdkstRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfX1ZVbi1fSy1FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfX1ZVbl9QSy1FZUdpT3FFMmxBSWpRdyIgdHlwZT0iNzAyMSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX19WVW5fZkstRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9fVlVuX3ZLLUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9fVlVuX19LLUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX19WVW9BUEstRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX0oxWW9zTXowRWVHN1pzVmlsY1BSZ1EiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX19WVUE0ZkstRWVHaU9xRTJsQUlqUXciIHg9IjI4MCIgeT0iMzQ0Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9VMC1BWVBLX0VlR2lPcUUybEFJalF3IiB0eXBlPSIyMDA5IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVTAtQVl2S19FZUdpT3FFMmxBSWpRdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1UwLUFZX0tfRWVHaU9xRTJsQUlqUXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1UwLUFaUEtfRWVHaU9xRTJsQUlqUXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1UwLUFaZktfRWVHaU9xRTJsQUlqUXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVTAtQVp2S19FZUdpT3FFMmxBSWpRdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9VMC1BWl9LX0VlR2lPcUUybEFJalF3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfVTAtQWFQS19FZUdpT3FFMmxBSWpRdyIgdHlwZT0iNTAzMiIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX0pYRk5BTXo5RWVHN1pzVmlsY1BSZ1EiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1UwLUFZZktfRWVHaU9xRTJsQUlqUXciIHg9IjI4MCIgeT0iNDUyIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9XMjBqWVBLX0VlR2lPcUUybEFJalF3IiB0eXBlPSIyMDA5IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVzIwall2S19FZUdpT3FFMmxBSWpRdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1cyMGpZX0tfRWVHaU9xRTJsQUlqUXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1cyMGpaUEtfRWVHaU9xRTJsQUlqUXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1cyMGpaZktfRWVHaU9xRTJsQUlqUXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVzIwalp2S19FZUdpT3FFMmxBSWpRdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9XMjBqWl9LX0VlR2lPcUUybEFJalF3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfVzIwamFQS19FZUdpT3FFMmxBSWpRdyIgdHlwZT0iNTAzMiIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX2pERURBTXo5RWVHN1pzVmlsY1BSZ1EiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1cyMGpZZktfRWVHaU9xRTJsQUlqUXciIHg9IjI4MCIgeT0iNTA4Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il93blktY1BLX0VlR2lPcUUybEFJalF3IiB0eXBlPSIyMDEwIiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfd25ZLWN2S19FZUdpT3FFMmxBSWpRdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3duWS1jX0tfRWVHaU9xRTJsQUlqUXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3duWS1kUEtfRWVHaU9xRTJsQUlqUXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3duWS1kZktfRWVHaU9xRTJsQUlqUXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfd25ZLWR2S19FZUdpT3FFMmxBSWpRdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il93blktZF9LX0VlR2lPcUUybEFJalF3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfd25ZLWVQS19FZUdpT3FFMmxBSWpRdyIgdHlwZT0iNTAzNSIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il93blktZWZLX0VlR2lPcUUybEFJalF3IiB0eXBlPSI3MDIwIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfMElsTlFQS19FZUdpT3FFMmxBSWpRdyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfMElRZElQS19FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMElsTlFmS19FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il8zN1Ewc1BLX0VlR2lPcUUybEFJalF3IiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI18zNjhyb1BLX0VlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8zN1Ewc2ZLX0VlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX19HMjRzUEtfRWVHaU9xRTJsQUlqUXciIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTYW5zIiBmb250SGVpZ2h0PSIxMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJUQUxDLUNoYWxsZW5nZS51bWwjX19HaXZvUEtfRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX19HMjRzZktfRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfRGV4N01QTEFFZUdpT3FFMmxBSWpRdyIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNhbnMiIGZvbnRIZWlnaHQ9IjEwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlRBTEMtQ2hhbGxlbmdlLnVtbCNfRGVkeUlQTEFFZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfRGV4N01mTEFFZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9KWGhRTVBMQUVlR2lPcUUybEFJalF3IiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2FucyIgZm9udEhlaWdodD0iMTAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI19KWE5ISVBMQUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9KWGhRTWZMQUVlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3duWS1ldktfRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il93blktZV9LX0VlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il93blktZlBLX0VlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3duWS1mZktfRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3duWS1mdktfRWVHaU9xRTJsQUlqUXciIHR5cGU9IjcwMjEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il93blpsZ1BLX0VlR2lPcUUybEFJalF3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfd25abGdmS19FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfd25abGd2S19FZUdpT3FFMmxBSWpRdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il93blpsZ19LX0VlR2lPcUUybEFJalF3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iVEFMQy1DaGFsbGVuZ2UudW1sI193bTlnb1BLX0VlR2lPcUUybEFJalF3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il93blktY2ZLX0VlR2lPcUUybEFJalF3IiB4PSIzNzYiIHk9IjE2Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX1pReDUwZkstRWVHaU9xRTJsQUlqUXciLz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJzdHlsZTpQYXB5cnVzVmlld1N0eWxlIiB4bWk6aWQ9Il8xeW1Cd0g3TEVlU0Z5TmJuTFlEQ2t3IiBvd25lcj0iX1RaMG5JSlh3RWVHUlRMVlpmNE55WXciPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3pXQ3ZMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U3RyaW5nVmFsdWVTdHlsZSIgeG1pOmlkPSJfMXltQndYN0xFZVNGeU5ibkxZRENrdyIgbmFtZT0iZGlhZ3JhbV9jb21wYXRpYmlsaXR5X3ZlcnNpb24iIHN0cmluZ1ZhbHVlPSIxLjAuMCIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+Cis8L3htaTpYTUk+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3Jlc291cmNlL1RBTEMtQ2hhbGxlbmdlLnVtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvcmVzb3VyY2UvVEFMQy1DaGFsbGVuZ2UudW1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc2MTZjZTkKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3Jlc291cmNlL1RBTEMtQ2hhbGxlbmdlLnVtbApAQCAtMCwwICsxLDY2NyBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzx4bWk6WE1JIHhtaTp2ZXJzaW9uPSIyMDEzMTAwMSIgeG1sbnM6eG1pPSJodHRwOi8vd3d3Lm9tZy5vcmcvc3BlYy9YTUkvMjAxMzEwMDEiIHhtbG5zOlJvYm90TUw9Imh0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMSIgeG1sbnM6ZWNvcmU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUiIHhtbG5zOnVtbD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCI+CisgIDx1bWw6TW9kZWwgeG1pOmlkPSJfcmtWSlFZTHFFZUdoT1p1YS1xamYwUSIgbmFtZT0iUk1heCI+CisgICAgPG93bmVkQ29tbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIHhtaTppZD0iX21xTjN3SllHRWVHQkl2SEN5bk1LLXciPgorICAgICAgPGJvZHk+IFJtYXhTb2Z0d2FyZUFyY2hpdGVjY3R1cmUgYSBpbXBsZW1lbnRlciBzb3VzIE9yb2NvczwvYm9keT4KKyAgICA8L293bmVkQ29tbWVudD4KKyAgICA8b3duZWRDb21tZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgeG1pOmlkPSJfSDRFandKWUhFZUdCSXZIQ3luTUstdyI+CisgICAgICA8Ym9keT5MZXMgY29ubmVjdGV1cnMgZCdBdmlvbmljQ29ubmVjdGlvbiBldCBkZSBDYW1lcmFDb25uZWN0aW9uIGEgaW1wbGVtZW50ZXIgc291cyBSb3M8L2JvZHk+CisgICAgPC9vd25lZENvbW1lbnQ+CisgICAgPG93bmVkQ29tbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIHhtaTppZD0iX2lHTzV3SllIRWVHQkl2SEN5bk1LLXciPgorICAgICAgPGJvZHk+Uk1heEhhcmR3YXJlQXJjaGl0ZWN0dXJlIGV0IEJpZ0NvbXBvbmVudHMgYSBpbXBsZW1lbnRlciBzb3VzIE1vcnNlIGF2ZWMgUk1heC50cmFuc2xhdGUoeD01LjAsIHk9MC4wLCB6PTkuMCk8L2JvZHk+CisgICAgPC9vd25lZENvbW1lbnQ+CisgICAgPG93bmVkQ29tbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIHhtaTppZD0iX2NnSHdZSllJRWVHQkl2SEN5bk1LLXciIGFubm90YXRlZEVsZW1lbnQ9Il94OTB1UUpYckVlR29SSXpUOFRqeVZnIj4KKyAgICAgIDxib2R5Pid2aWRlb19jYW1lcmEnCisucHJvcGVydGllcyhjYXB0dXJpbmcgPSBUcnVlKQorLnByb3BlcnRpZXMoY2FtX3dpZHRoID0gNTEyKQorLnByb3BlcnRpZXMoY2FtX2hlaWdodCA9IDUxMikKKy5wcm9wZXJ0aWVzKGNhbV9mb2NhbCA9IDM1LjAwMDApPC9ib2R5PgorICAgIDwvb3duZWRDb21tZW50PgorICAgIDxvd25lZENvbW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiB4bWk6aWQ9Il9CSUE2VUpZSkVlR0JJdkhDeW5NSy13IiBhbm5vdGF0ZWRFbGVtZW50PSJfamVHRFlKWHRFZUdvUkl6VDhUanlWZyI+CisgICAgICA8Ym9keT4nbGFuZC0xL3RyZWVzJworLmFpbV9jYW1lcmEoWzEuMDQ3MCwgMCwgMC43ODU0XSk8L2JvZHk+CisgICAgPC9vd25lZENvbW1lbnQ+CisgICAgPG93bmVkQ29tbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIHhtaTppZD0iX0tUaTF3SllKRWVHQkl2SEN5bk1LLXciIGFubm90YXRlZEVsZW1lbnQ9Il90d0lUNEpYdEVlR29SSXpUOFRqeVZnIj4KKyAgICAgIDxib2R5PidybWF4JworLnRyYW5zbGF0ZSh4PTUuMCwgeT0wLjAsIHo9OS4wKTwvYm9keT4KKyAgICA8L293bmVkQ29tbWVudD4KKyAgICA8b3duZWRDb21tZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgeG1pOmlkPSJfbFNlaFlKWUpFZUdCSXZIQ3luTUstdyIgYW5ub3RhdGVkRWxlbWVudD0iX08xWHI0Slh0RWVHb1JJelQ4VGp5VmciPgorICAgICAgPGJvZHk+J2Rlc3RpbmF0aW9uJzwvYm9keT4KKyAgICA8L293bmVkQ29tbWVudD4KKyAgICA8b3duZWRDb21tZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgeG1pOmlkPSJfeXVZczRKWUpFZUdCSXZIQ3luTUstdyIgYW5ub3RhdGVkRWxlbWVudD0iX1hiTjgwSlhzRWVHb1JJelQ4VGp5VmciPgorICAgICAgPGJvZHk+J2d5cm9zY29wZSc8L2JvZHk+CisgICAgPC9vd25lZENvbW1lbnQ+CisgICAgPG93bmVkQ29tbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIHhtaTppZD0iX0QtLXE4SllLRWVHQkl2SEN5bk1LLXciIGFubm90YXRlZEVsZW1lbnQ9Il9wYU1EMEpYc0VlR29SSXpUOFRqeVZnIj4KKyAgICAgIDxib2R5PidncHMnPC9ib2R5PgorICAgIDwvb3duZWRDb21tZW50PgorICAgIDxwYWNrYWdlSW1wb3J0IHhtaTp0eXBlPSJ1bWw6UGFja2FnZUltcG9ydCIgeG1pOmlkPSJfcjdZLVlJTHFFZUdoT1p1YS1xamYwUSI+CisgICAgICA8aW1wb3J0ZWRQYWNrYWdlIHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3d5UzZnQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICA8L3BhY2thZ2VJbXBvcnQ+CisgICAgPHBhY2thZ2VJbXBvcnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlSW1wb3J0IiB4bWk6aWQ9Il9yN1psY0lMcUVlR2hPWnVhLXFqZjBRIj4KKyAgICAgIDxpbXBvcnRlZFBhY2thZ2UgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfX3hBNllBSHZFZUNRUU9LcmhPX2ZJUSIvPgorICAgIDwvcGFja2FnZUltcG9ydD4KKyAgICA8cGFja2FnZUltcG9ydCB4bWk6dHlwZT0idW1sOlBhY2thZ2VJbXBvcnQiIHhtaTppZD0iX3I3YU1nSUxxRWVHaE9adWEtcWpmMFEiPgorICAgICAgPGltcG9ydGVkUGFja2FnZSB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19EZjRfNEFId0VlQ1FRT0tyaE9fZklRIi8+CisgICAgPC9wYWNrYWdlSW1wb3J0PgorICAgIDxwYWNrYWdlSW1wb3J0IHhtaTp0eXBlPSJ1bWw6UGFja2FnZUltcG9ydCIgeG1pOmlkPSJfcjdhTWdZTHFFZUdoT1p1YS1xamYwUSI+CisgICAgICA8aW1wb3J0ZWRQYWNrYWdlIHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0dvNV9RQUh3RWVDUVFPS3JoT19mSVEiLz4KKyAgICA8L3BhY2thZ2VJbXBvcnQ+CisgICAgPHBhY2thZ2VJbXBvcnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlSW1wb3J0IiB4bWk6aWQ9Il9yN2NCc0lMcUVlR2hPWnVhLXFqZjBRIj4KKyAgICAgIDxpbXBvcnRlZFBhY2thZ2UgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfSlNvYWtBSHdFZUNRUU9LcmhPX2ZJUSIvPgorICAgIDwvcGFja2FnZUltcG9ydD4KKyAgICA8cGFja2FnZUltcG9ydCB4bWk6dHlwZT0idW1sOlBhY2thZ2VJbXBvcnQiIHhtaTppZD0iX3I3Y0JzWUxxRWVHaE9adWEtcWpmMFEiPgorICAgICAgPGltcG9ydGVkUGFja2FnZSB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19NbHlOWUFId0VlQ1FRT0tyaE9fZklRIi8+CisgICAgPC9wYWNrYWdlSW1wb3J0PgorICAgIDxwYWNrYWdlSW1wb3J0IHhtaTp0eXBlPSJ1bWw6UGFja2FnZUltcG9ydCIgeG1pOmlkPSJfcjdjb3dJTHFFZUdoT1p1YS1xamYwUSI+CisgICAgICA8aW1wb3J0ZWRQYWNrYWdlIHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1FKQzJBS3hZRWVDSkQ0Nkd0RHNBQkEiLz4KKyAgICA8L3BhY2thZ2VJbXBvcnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9sZW1DNEpYcUVlR29SSXpUOFRqeVZnIiBuYW1lPSJPcm9jb3MiLz4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX3g5MHVRSlhyRWVHb1JJelQ4VGp5VmciIG5hbWU9IkNhbWVyYU1haW5fMDAyIj4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iXzBhbnVrSlh3RWVHUlRMVlpmNE55WXciIG5hbWU9IkltYWdlIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfbUpEYThBS3VFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2VjRkl3Slh5RWVHUlRMVlpmNE55WXciIG5hbWU9IkluZm8iIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI181ZF9lRUFLb0VlQ1FSZUlPSVdKMG5BIi8+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfSUlxXzBKWHNFZUdvUkl6VDhUanlWZyIgbmFtZT0iTW9yc2UiLz4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX1hiTjgwSlhzRWVHb1JJelQ4VGp5VmciIG5hbWU9Ikd5cm9zY29wZV8wMDEiPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfODNCb1FKWHlFZUdSVExWWmY0TnlZdyIgbmFtZT0iQW5nbGVzIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xYVMyb0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfcGFNRDBKWHNFZUdvUkl6VDhUanlWZyIgbmFtZT0iR1BTXzAwMSI+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9VczFtMEpYekVlR1JUTFZaZjROeVl3IiBuYW1lPSJQb3NpdGlvbiIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcWFTMm9BSC1FZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iXzhwTG9RSlhzRWVHb1JJelQ4VGp5VmciIG5hbWU9InJvcyIvPgorICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfTzFYcjRKWHRFZUdvUkl6VDhUanlWZyIgbmFtZT0iTW90aW9uX0NvbnRyb2xsZXIiPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfbWdJQ1FKWHpFZUdSVExWWmY0TnlZdyIgbmFtZT0iVGFyZ2V0UG9zaXRpb24iIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI18xXy01b0FINUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfamVHRFlKWHRFZUdvUkl6VDhUanlWZyIgbmFtZT0iZW52Ii8+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il90d0lUNEpYdEVlR29SSXpUOFRqeVZnIiBuYW1lPSJSTWF4Ii8+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il8xWEhvZ0pYdkVlR1JUTFZaZjROeVl3IiBuYW1lPSJwc2V1ZG8gVEFMQyBBdmlvbmljIO+/vSBvYmMiPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfOENfUlVKWDBFZUdSVExWWmY0TnlZdyIgbmFtZT0iR1BTIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xYVMyb0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfR3IyR1lKWDFFZUdSVExWWmY0TnlZdyIgbmFtZT0iSU1VIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xYVMyb0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfVHIxSzRKWDFFZUdSVExWWmY0TnlZdyIgbmFtZT0iVGFyZ2V0UG9zaXRpb24iIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI18xXy01b0FINUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfd3RFVnNNek5FZUdJNTQtYmh6enVvQSIgbmFtZT0ic3RhdGUiIHR5cGU9Il9yWFk1WU16c0VlRzdac1ZpbGNQUmdRIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIi8+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfNWFtNElNek9FZUdJNTQtYmh6enVvQSIgbmFtZT0iUHJvcGVydHkxIiB0eXBlPSJfbGVtQzRKWHFFZUdvUkl6VDhUanlWZyIvPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfbjBnWGtNempFZUdJNTQtYmh6enVvQSIgbmFtZT0iUm1heENvbnRyb2xQcm8iIHR5cGU9Il9CTG80d00wQkVlRzdac1ZpbGNQUmdRIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIi8+CisgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il84TDV2QUpYdkVlR1JUTFZaZjROeVl3IiBuYW1lPSJwc2V1ZG8gVEFMQyBWaWRlbyDvv70gY2FtZXJhIj4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX3p3X0pjSlgxRWVHUlRMVlpmNE55WXciIG5hbWU9IkltYWdlIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfbUpEYThBS3VFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iXzh4N2xnSlgxRWVHUlRMVlpmNE55WXciIG5hbWU9IkluZm8iIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI181ZF9lRUFLb0VlQ1FSZUlPSVdKMG5BIi8+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfbk8xWFVNem1FZUdJNTQtYmh6enVvQSIgbmFtZT0iaW1hZ2UiIHR5cGU9Il9JYlNDTU16MEVlRzdac1ZpbGNQUmdRIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIi8+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il90TFBFVU16bUVlR0k1NC1iaHp6dW9BIiBuYW1lPSJ0aHVtYiIgdHlwZT0iX0oxWW9zTXowRWVHN1pzVmlsY1BSZ1EiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiLz4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX0dUUFlvTXpwRWVHSTU0LWJoenp1b0EiIG5hbWU9IkNhbWVyYUNvbnRyb2xQcm8iIHR5cGU9Il96WnRXRVBLMEVlR2lPcUUybEFJalF3IiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIi8+CisgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9HYTlrQUpYd0VlR1JUTFZaZjROeVl3IiBuYW1lPSJSTWF4Q29udHJvbFN5c3RlbSI+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il84Ql8xQUpZREVlR1R3YVFwdklLcTBRIiBuYW1lPSJzdGF0ZSIgdHlwZT0iX3JYWTVZTXpzRWVHN1pzVmlsY1BSZ1EiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiLz4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX0t4bWRBSllFRWVHVHdhUXB2SUtxMFEiIG5hbWU9ImltYWdlIiB0eXBlPSJfSWJTQ01NejBFZUc3WnNWaWxjUFJnUSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIvPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfTUVQUmNNenFFZUdJNTQtYmh6enVvQSIgbmFtZT0iUm1heENvbnRyb2xSZXEiIHR5cGU9Il9CTG80d00wQkVlRzdac1ZpbGNQUmdRIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIi8+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il8zQm0tOFBLMkVlR2lPcUUybEFJalF3IiBuYW1lPSJDYW1lcmFDb250cm9sUmVxIiB0eXBlPSJfelp0V0VQSzBFZUdpT3FFMmxBSWpRdyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIvPgorICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiB4bWk6aWQ9Il91NDRlY0tOUUVlR09kUGRvRVVESnRRIiBuYW1lPSJUZXN0UmVhY2hlZFRydWUiPgorICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOnR5cGU9InVtbDpQYXJhbWV0ZXIiIHhtaTppZD0iX1Nod2JZS05SRWVHT2RQZG9FVURKdFEiIG5hbWU9IlJlYWNoZWRUcnVlIiBkaXJlY3Rpb249Im91dCI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTlpuVHNBSVVFZUNWckxFQkg1ZWpuUSIvPgorICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOnR5cGU9InVtbDpQYXJhbWV0ZXIiIHhtaTppZD0iX2duR2xjS05SRWVHT2RQZG9FVURKdFEiIG5hbWU9IlBvcnRWYWx1ZSIvPgorICAgICAgPC9vd25lZE9wZXJhdGlvbj4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfSTRYRHNLUUxFZUdBd1Aybmdhd3ZDdyIgbmFtZT0iVGVzdEZvdW5kVHJ1ZSI+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfaURvWlVLUUxFZUdBd1Aybmdhd3ZDdyIgbmFtZT0iUG9ydFZhbHVlIi8+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfcG5FVmtLUUxFZUdBd1Aybmdhd3ZDdyIgbmFtZT0iRm91bmRUcnVlIiBkaXJlY3Rpb249Im91dCI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTlpuVHNBSVVFZUNWckxFQkg1ZWpuUSIvPgorICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgPC9vd25lZE9wZXJhdGlvbj4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfbGwtejBLUU5FZUdBd1Aybmdhd3ZDdyIgbmFtZT0iVGVzdEZvdW5kRmFsc2UiPgorICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOnR5cGU9InVtbDpQYXJhbWV0ZXIiIHhtaTppZD0iX3ZoYy1jS1FORWVHQXdQMm5nYXd2Q3ciIG5hbWU9IkZvdW5kRmFsc2UiIGRpcmVjdGlvbj0ib3V0Ij4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19OWm5Uc0FJVUVlQ1ZyTEVCSDVlam5RIi8+CisgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfOWVtMTBLUU5FZUdBd1Aybmdhd3ZDdyIgbmFtZT0iUG9ydFZhbHVlIi8+CisgICAgICA8L293bmVkT3BlcmF0aW9uPgorICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiB4bWk6aWQ9Il9GSDFNMEtRVkVlR09qWWFmY3QzMGRRIiBuYW1lPSJBbmFseXNlSW1hZ2VBbmRTZXROZXh0VGFyZ2V0UG9pbnQiPgorICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOnR5cGU9InVtbDpQYXJhbWV0ZXIiIHhtaTppZD0iX04tYmFFS1FWRWVHT2pZYWZjdDMwZFEiIG5hbWU9Ik5leHRUYXJnZXRQb2ludCIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTp0eXBlPSJ1bWw6UGFyYW1ldGVyIiB4bWk6aWQ9Il96UHM0TUtRVkVlR09qWWFmY3QzMGRRIiBuYW1lPSJBbmFseXNlIiBkaXJlY3Rpb249Im91dCIvPgorICAgICAgPC9vd25lZE9wZXJhdGlvbj4KKyAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX0VsMkdZSlg1RWVHRElwdDc3bXJrWFEiIG5hbWU9IkF2aW9uaWNTeXN0ZW0iPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX3J0RzF3Slg1RWVHRElwdDc3bXJrWFEiIG5hbWU9IlByb3BlcnR5MSIgdHlwZT0iX1hiTjgwSlhzRWVHb1JJelQ4VGp5VmciLz4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9VUTFqSUpYNkVlR0RJcHQ3N21ya1hRIiBuYW1lPSJQcm9wZXJ0eTIiIHR5cGU9Il8xWEhvZ0pYdkVlR1JUTFZaZjROeVl3Ii8+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfcnpJdjBKWDZFZUdESXB0NzdtcmtYUSIgbmFtZT0iUHJvcGVydHkzIiB0eXBlPSJfcGFNRDBKWHNFZUdvUkl6VDhUanlWZyIvPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX0N0dkRVSlg3RWVHRElwdDc3bXJrWFEiIG5hbWU9IlByb3BlcnR5NCIgdHlwZT0iX08xWHI0Slh0RWVHb1JJelQ4VGp5VmciLz4KKyAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfYUhZZndKWDZFZUdESXB0NzdtcmtYUSIgbmFtZT0iQ29ubmVjdG9yMSI+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2FIY3hNSlg2RWVHRElwdDc3bXJrWFEiIHBhcnRXaXRoUG9ydD0iX3J0RzF3Slg1RWVHRElwdDc3bXJrWFEiIHJvbGU9Il84M0JvUUpYeUVlR1JUTFZaZjROeVl3Ij4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9hSGN4TXBYNkVlR0RJcHQ3N21ya1hRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2FIY3hNWlg2RWVHRElwdDc3bXJrWFEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9hSGRZUUpYNkVlR0RJcHQ3N21ya1hRIiBwYXJ0V2l0aFBvcnQ9Il9VUTFqSUpYNkVlR0RJcHQ3N21ya1hRIiByb2xlPSJfR3IyR1lKWDFFZUdSVExWWmY0TnlZdyI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfYUhkWVFwWDZFZUdESXB0NzdtcmtYUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9hSGRZUVpYNkVlR0RJcHQ3N21ya1hRIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX3pNVks4Slg2RWVHRElwdDc3bXJrWFEiIG5hbWU9IkNvbm5lY3RvcjIiPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il96TVZ5QUpYNkVlR0RJcHQ3N21ya1hRIiBwYXJ0V2l0aFBvcnQ9Il9yekl2MEpYNkVlR0RJcHQ3N21ya1hRIiByb2xlPSJfVXMxbTBKWHpFZUdSVExWWmY0TnlZdyI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfek1WeUFwWDZFZUdESXB0NzdtcmtYUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il96TVZ5QVpYNkVlR0RJcHQ3N21ya1hRIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfek1XWkVKWDZFZUdESXB0NzdtcmtYUSIgcGFydFdpdGhQb3J0PSJfVVExaklKWDZFZUdESXB0NzdtcmtYUSIgcm9sZT0iXzhDX1JVSlgwRWVHUlRMVlpmNE55WXciPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3pNV1pFcFg2RWVHRElwdDc3bXJrWFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfek1XWkVaWDZFZUdESXB0NzdtcmtYUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il91T2xwSUpYN0VlR0RJcHQ3N21ya1hRIiBuYW1lPSJDb25uZWN0b3IzIj4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfdU9tUU1KWDdFZUdESXB0NzdtcmtYUSIgcGFydFdpdGhQb3J0PSJfVVExaklKWDZFZUdESXB0NzdtcmtYUSIgcm9sZT0iX1RyMUs0SlgxRWVHUlRMVlpmNE55WXciPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3VPbVFNcFg3RWVHRElwdDc3bXJrWFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfdU9tUU1aWDdFZUdESXB0NzdtcmtYUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX3VPbVFNNVg3RWVHRElwdDc3bXJrWFEiIHBhcnRXaXRoUG9ydD0iX0N0dkRVSlg3RWVHRElwdDc3bXJrWFEiIHJvbGU9Il9tZ0lDUUpYekVlR1JUTFZaZjROeVl3Ij4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il91T21RTlpYN0VlR0RJcHQ3N21ya1hRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX3VPbVFOSlg3RWVHRElwdDc3bXJrWFEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX19NalVNSlg5RWVHV2xjUWZpT05GOFEiIG5hbWU9IkNhbWVyYVN5c3RlbSI+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfR2hsb0VKWC1FZUdXbGNRZmlPTkY4USIgbmFtZT0iUHJvcGVydHkxIiB0eXBlPSJfeDkwdVFKWHJFZUdvUkl6VDhUanlWZyIvPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX0w1LUNBSlgtRWVHV2xjUWZpT05GOFEiIG5hbWU9IlByb3BlcnR5MiIgdHlwZT0iXzhMNXZBSlh2RWVHUlRMVlpmNE55WXciLz4KKyAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfZURhVG9KWC1FZUdXbGNRZmlPTkY4USIgbmFtZT0iQ29ubmVjdG9yMSI+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2VEYTZzSlgtRWVHV2xjUWZpT05GOFEiIHBhcnRXaXRoUG9ydD0iX0dobG9FSlgtRWVHV2xjUWZpT05GOFEiIHJvbGU9Il8wYW51a0pYd0VlR1JUTFZaZjROeVl3Ij4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9lRGE2c3BYLUVlR1dsY1FmaU9ORjhRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2VEYTZzWlgtRWVHV2xjUWZpT05GOFEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9lRGJod0pYLUVlR1dsY1FmaU9ORjhRIiBwYXJ0V2l0aFBvcnQ9Il9MNS1DQUpYLUVlR1dsY1FmaU9ORjhRIiByb2xlPSJfendfSmNKWDFFZUdSVExWWmY0TnlZdyI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfZURiaHdwWC1FZUdXbGNRZmlPTkY4USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9lRGJod1pYLUVlR1dsY1FmaU9ORjhRIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2ZFeTRJSlgtRWVHV2xjUWZpT05GOFEiIG5hbWU9IkNvbm5lY3RvcjIiPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9mRXpmTUpYLUVlR1dsY1FmaU9ORjhRIiBwYXJ0V2l0aFBvcnQ9Il9HaGxvRUpYLUVlR1dsY1FmaU9ORjhRIiByb2xlPSJfZWNGSXdKWHlFZUdSVExWWmY0TnlZdyI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfZkV6Zk1wWC1FZUdXbGNRZmlPTkY4USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9mRXpmTVpYLUVlR1dsY1FmaU9ORjhRIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfZkUwR1FKWC1FZUdXbGNRZmlPTkY4USIgcGFydFdpdGhQb3J0PSJfTDUtQ0FKWC1FZUdXbGNRZmlPTkY4USIgcm9sZT0iXzh4N2xnSlgxRWVHUlRMVlpmNE55WXciPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2ZFMEdRcFgtRWVHV2xjUWZpT05GOFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfZkUwR1FaWC1FZUdXbGNRZmlPTkY4USIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfNHZHVElKWC1FZUdXbGNRZmlPTkY4USIgbmFtZT0iUm1heEhhcmR3YXJlQXJjaGl0ZWN0dXJlIj4KKyAgICAgIDxvd25lZENvbW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiB4bWk6aWQ9Il9abW1Vb0pYX0VlR1dsY1FmaU9ORjhRIj4KKyAgICAgICAgPGJvZHk+PC9ib2R5PgorICAgICAgPC9vd25lZENvbW1lbnQ+CisgICAgICA8b3duZWRDb21tZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgeG1pOmlkPSJfYVZyQklKWF9FZUdXbGNRZmlPTkY4USI+CisgICAgICAgIDxib2R5PjwvYm9keT4KKyAgICAgIDwvb3duZWRDb21tZW50PgorICAgICAgPG93bmVkQ29tbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIHhtaTppZD0iXzF4WWdvSllGRWVHVHdhUXB2SUtxMFEiPgorICAgICAgICA8Ym9keT48L2JvZHk+CisgICAgICA8L293bmVkQ29tbWVudD4KKyAgICAgIDxvd25lZFJ1bGUgeG1pOnR5cGU9InVtbDpDb25zdHJhaW50IiB4bWk6aWQ9Il9QcEJSTUpYX0VlR1dsY1FmaU9ORjhRIiBuYW1lPSJDb25zdHJhaW50MSI+CisgICAgICAgIDxzcGVjaWZpY2F0aW9uIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfUHBDZlVKWF9FZUdXbGNRZmlPTkY4USIvPgorICAgICAgPC9vd25lZFJ1bGU+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfX1dFbklKWC1FZUdXbGNRZmlPTkY4USIgbmFtZT0iUHJvcGVydHkxIiB0eXBlPSJfdHdJVDRKWHRFZUdvUkl6VDhUanlWZyIvPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX0Ntbng0SlhfRWVHV2xjUWZpT05GOFEiIG5hbWU9IlByb3BlcnR5MiIgdHlwZT0iXzFYSG9nSlh2RWVHUlRMVlpmNE55WXciLz4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9JZ1lha0pYX0VlR1dsY1FmaU9ORjhRIiBuYW1lPSJQcm9wZXJ0eTMiIHR5cGU9Il94OTB1UUpYckVlR29SSXpUOFRqeVZnIi8+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfS2lvbU1KWF9FZUdXbGNRZmlPTkY4USIgbmFtZT0iUHJvcGVydHk0IiB0eXBlPSJfWGJOODBKWHNFZUdvUkl6VDhUanlWZyIvPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX0x6ZnhJSlhfRWVHV2xjUWZpT05GOFEiIG5hbWU9IlByb3BlcnR5NSIgdHlwZT0iX3BhTUQwSlhzRWVHb1JJelQ4VGp5VmciLz4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9ORWNib0pYX0VlR1dsY1FmaU9ORjhRIiBuYW1lPSJQcm9wZXJ0eTYiIHR5cGU9Il9PMVhyNEpYdEVlR29SSXpUOFRqeVZnIi8+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX25QdDFzSlhfRWVHV2xjUWZpT05GOFEiIG5hbWU9InRyYW5zbGF0ZSh4PTEuNDAwMCkucm90YXRlKHg9LTEuNTcwOCkuYXBwZW5kIiBpc1N0YXRpYz0idHJ1ZSI+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX25QdWN3SlhfRWVHV2xjUWZpT05GOFEiIHJvbGU9Il9JZ1lha0pYX0VlR1dsY1FmaU9ORjhRIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9uUHVjd3BYX0VlR1dsY1FmaU9ORjhRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX25QdWN3WlhfRWVHV2xjUWZpT05GOFEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9uUHVjdzVYX0VlR1dsY1FmaU9ORjhRIiByb2xlPSJfX1dFbklKWC1FZUdXbGNRZmlPTkY4USI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfblB1Y3haWF9FZUdXbGNRZmlPTkY4USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9uUHVjeEpYX0VlR1dsY1FmaU9ORjhRIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iXzk0WXJzSlhfRWVHV2xjUWZpT05GOFEiIG5hbWU9InRyYW5zbGF0ZSh4PTAuODAwMCwgej0xLjEwMDApLmFwcGVuZCI+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iXzk0WlN3SlhfRWVHV2xjUWZpT05GOFEiIHJvbGU9Il9LaW9tTUpYX0VlR1dsY1FmaU9ORjhRIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il85NFpTd3BYX0VlR1dsY1FmaU9ORjhRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzk0WlN3WlhfRWVHV2xjUWZpT05GOFEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il85NFpTdzVYX0VlR1dsY1FmaU9ORjhRIiByb2xlPSJfX1dFbklKWC1FZUdXbGNRZmlPTkY4USI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfOTRaU3haWF9FZUdXbGNRZmlPTkY4USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il85NFpTeEpYX0VlR1dsY1FmaU9ORjhRIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX18tQmlnSlhfRWVHV2xjUWZpT05GOFEiIG5hbWU9ImFwcGVuZCI+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX18tQ0prSlhfRWVHV2xjUWZpT05GOFEiIHJvbGU9Il9MemZ4SUpYX0VlR1dsY1FmaU9ORjhRIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9fLUNKa3BYX0VlR1dsY1FmaU9ORjhRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX18tQ0prWlhfRWVHV2xjUWZpT05GOFEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9fLUN3b0pYX0VlR1dsY1FmaU9ORjhRIiByb2xlPSJfX1dFbklKWC1FZUdXbGNRZmlPTkY4USI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfXy1Dd29wWF9FZUdXbGNRZmlPTkY4USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9fLUN3b1pYX0VlR1dsY1FmaU9ORjhRIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX0NDWjFFSllBRWVHV2xjUWZpT05GOFEiIG5hbWU9ImFwcGVuZCI+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX0NDYWNJSllBRWVHV2xjUWZpT05GOFEiIHJvbGU9Il9ORWNib0pYX0VlR1dsY1FmaU9ORjhRIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9DQ2FjSXBZQUVlR1dsY1FmaU9ORjhRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0NDYWNJWllBRWVHV2xjUWZpT05GOFEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9DQ2FjSTVZQUVlR1dsY1FmaU9ORjhRIiByb2xlPSJfX1dFbklKWC1FZUdXbGNRZmlPTkY4USI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfQ0NhY0paWUFFZUdXbGNRZmlPTkY4USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9DQ2FjSkpZQUVlR1dsY1FmaU9ORjhRIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9NTnZWd0pZQ0VlR1R3YVFwdklLcTBRIiBuYW1lPSJSTWF4U29mdHdhcmVBcmNoaXRlY3R1cmUiPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX1RRZm0wSllDRWVHVHdhUXB2SUtxMFEiIG5hbWU9IlByb3BlcnR5MSIgdHlwZT0iXzFYSG9nSlh2RWVHUlRMVlpmNE55WXciLz4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9WUE45VUpZQ0VlR1R3YVFwdklLcTBRIiBuYW1lPSJQcm9wZXJ0eTIiIHR5cGU9Il84TDV2QUpYdkVlR1JUTFZaZjROeVl3Ii8+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfWWVYWjRKWUNFZUdUd2FRcHZJS3EwUSIgbmFtZT0iUHJvcGVydHkzIiB0eXBlPSJfR2E5a0FKWHdFZUdSVExWWmY0TnlZdyIvPgorICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9scDZySU16cUVlR0k1NC1iaHp6dW9BIiBuYW1lPSJDb25uZWN0b3IxIj4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfbHA2ckljenFFZUdJNTQtYmh6enVvQSIgcGFydFdpdGhQb3J0PSJfVlBOOVVKWUNFZUdUd2FRcHZJS3EwUSIgcm9sZT0iX25PMVhVTXptRWVHSTU0LWJoenp1b0EiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2xwNnJJOHpxRWVHSTU0LWJoenp1b0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfbHA2cklzenFFZUdJNTQtYmh6enVvQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2xwNnJKTXpxRWVHSTU0LWJoenp1b0EiIHBhcnRXaXRoUG9ydD0iX1llWFo0SllDRWVHVHdhUXB2SUtxMFEiIHJvbGU9Il9LeG1kQUpZRUVlR1R3YVFwdklLcTBRIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9scDZySnN6cUVlR0k1NC1iaHp6dW9BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2xwNnJKY3pxRWVHSTU0LWJoenp1b0EiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfMjg3ckVNenFFZUdJNTQtYmh6enVvQSIgbmFtZT0iQ29ubmVjdG9yMiI+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iXzI4OFNJTXpxRWVHSTU0LWJoenp1b0EiIHBhcnRXaXRoUG9ydD0iX1RRZm0wSllDRWVHVHdhUXB2SUtxMFEiIHJvbGU9Il93dEVWc016TkVlR0k1NC1iaHp6dW9BIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il8yODhTSXN6cUVlR0k1NC1iaHp6dW9BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzI4OFNJY3pxRWVHSTU0LWJoenp1b0EiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il8yODhTSTh6cUVlR0k1NC1iaHp6dW9BIiBwYXJ0V2l0aFBvcnQ9Il9ZZVhaNEpZQ0VlR1R3YVFwdklLcTBRIiByb2xlPSJfOEJfMUFKWURFZUdUd2FRcHZJS3EwUSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfMjg4U0pjenFFZUdJNTQtYmh6enVvQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il8yODhTSk16cUVlR0k1NC1iaHp6dW9BIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iXzRTVGlrTXpxRWVHSTU0LWJoenp1b0EiIG5hbWU9IkNvbm5lY3RvcjMiPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il80U1VKb016cUVlR0k1NC1iaHp6dW9BIiBwYXJ0V2l0aFBvcnQ9Il9UUWZtMEpZQ0VlR1R3YVFwdklLcTBRIiByb2xlPSJfbjBnWGtNempFZUdJNTQtYmh6enVvQSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfNFNVSm9zenFFZUdJNTQtYmh6enVvQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il80U1VKb2N6cUVlR0k1NC1iaHp6dW9BIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfNFNVSm84enFFZUdJNTQtYmh6enVvQSIgcGFydFdpdGhQb3J0PSJfWWVYWjRKWUNFZUdUd2FRcHZJS3EwUSIgcm9sZT0iX01FUFJjTXpxRWVHSTU0LWJoenp1b0EiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzRTVUpwY3pxRWVHSTU0LWJoenp1b0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfNFNVSnBNenFFZUdJNTQtYmh6enVvQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il8tS2pYa1BLMkVlR2lPcUUybEFJalF3IiBuYW1lPSJDb25uZWN0b3I0Ij4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfLUtqWGtmSzJFZUdpT3FFMmxBSWpRdyIgcGFydFdpdGhQb3J0PSJfVlBOOVVKWUNFZUdUd2FRcHZJS3EwUSIgcm9sZT0iX0dUUFlvTXpwRWVHSTU0LWJoenp1b0EiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXy1LalhrX0syRWVHaU9xRTJsQUlqUXciIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfLUtqWGt2SzJFZUdpT3FFMmxBSWpRdyIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iXy1Lai1vUEsyRWVHaU9xRTJsQUlqUXciIHBhcnRXaXRoUG9ydD0iX1llWFo0SllDRWVHVHdhUXB2SUtxMFEiIHJvbGU9Il8zQm0tOFBLMkVlR2lPcUUybEFJalF3Ij4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il8tS2otb3ZLMkVlR2lPcUUybEFJalF3IiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXy1Lai1vZksyRWVHaU9xRTJsQUlqUXciIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgeG1pOmlkPSJfS3VhUVFLUVVFZUdPallhZmN0MzBkUSIgbmFtZT0iUGxhdGZvcm1Nb2RlbCI+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgeG1pOmlkPSJfS3UxSEFLUVVFZUdPallhZmN0MzBkUSIgbmFtZT0iQ29udHJvbFN5c3RlbVBsYXRmb3JtIi8+CisgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9yWFk1WU16c0VlRzdac1ZpbGNQUmdRIiBuYW1lPSJTdGF0ZSI+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfSlZOR0VNenZFZUc3WnNWaWxjUFJnUSIgbmFtZT0ibV90c19yZWYiPgorICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3F1WG1BQUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfaTN5dmdNenZFZUc3WnNWaWxjUFJnUSIgbmFtZT0ibV90cyI+CisgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il95c1NqQU16dkVlRzdac1ZpbGNQUmdRIiBuYW1lPSJtX3RzX3JlbW90ZSI+CisgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9GbUZUZ016d0VlRzdac1ZpbGNQUmdRIiBuYW1lPSJtX3BoYXNlIj4KKyAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19uQ091b0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX1FZRmRnTXp3RWVHN1pzVmlsY1BSZ1EiIG5hbWU9Im1fd3AiPgorICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX25DT3VvQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfZVNIdmNNendFZUc3WnNWaWxjUFJnUSIgbmFtZT0ibV9jcHQiPgorICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX25DT3VvQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfck5ybThNendFZUc3WnNWaWxjUFJnUSIgbmFtZT0ibV9oX2ludF90aW1lIj4KKyAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xdVhtQUFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX3dBMXo4TXp3RWVHN1pzVmlsY1BSZ1EiIG5hbWU9Im1faCI+CisgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il8tZFh1OE16d0VlRzdac1ZpbGNQUmdRIiBuYW1lPSJtX2dwc19pbnRfdGltZSI+CisgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9HQ3JUY016eEVlRzdac1ZpbGNQUmdRIiBuYW1lPSJtX3BvcyI+CisgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9FTHo3b016MUVlRzdac1ZpbGNQUmdRIiB2YWx1ZT0iMyIvPgorICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9FTDNtQU16MUVlRzdac1ZpbGNQUmdRIiB2YWx1ZT0iMyIvPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9ZVmpONE16eEVlRzdac1ZpbGNQUmdRIiBuYW1lPSJtX2F0dCI+CisgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9LUVhmRU16MUVlRzdac1ZpbGNQUmdRIiB2YWx1ZT0iMyIvPgorICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9LUVpVUU16MUVlRzdac1ZpbGNQUmdRIiB2YWx1ZT0iMyIvPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rRmxHWU16eEVlRzdac1ZpbGNQUmdRIiBuYW1lPSJtX3ZlbCI+CisgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9RV0p4a016MUVlRzdac1ZpbGNQUmdRIiB2YWx1ZT0iMyIvPgorICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9RV0xtd016MUVlRzdac1ZpbGNQUmdRIiB2YWx1ZT0iMyIvPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9zS2pDWU16eEVlRzdac1ZpbGNQUmdRIiBuYW1lPSJtX2FjYyI+CisgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9TRUJCa016MUVlRzdac1ZpbGNQUmdRIiB2YWx1ZT0iMyIvPgorICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9TRURkME16MUVlRzdac1ZpbGNQUmdRIiB2YWx1ZT0iMyIvPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX0liU0NNTXowRWVHN1pzVmlsY1BSZ1EiIG5hbWU9IkltYWdlIj4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9jdXNia016MUVlRzdac1ZpbGNQUmdRIiBuYW1lPSJtX2NvbXByZXNzaW9uX2Zvcl9sb2dnaW5nIj4KKyAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19NZUkzVUt1a0VlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX3AtN2lrTXoxRWVHN1pzVmlsY1BSZ1EiIG5hbWU9Im1fdHMiIHZpc2liaWxpdHk9InByaXZhdGUiPgorICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3F1WG1BQUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfem1lRWtNejFFZUc3WnNWaWxjUFJnUSIgbmFtZT0ibV93aWR0aCI+CisgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfbkNPdW9BSC1FZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9GVHpwQU16MkVlRzdac1ZpbGNQUmdRIiBuYW1lPSJtX2hlaWdodCI+CisgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfbkNPdW9BSC1FZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9Zb19WQU16MkVlRzdac1ZpbGNQUmdRIiBuYW1lPSJtX2NvbG9yIj4KKyAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19OWm5Uc0FJVUVlQ1ZyTEVCSDVlam5RIi8+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX0tZWTEwTXo1RWVHN1pzVmlsY1BSZ1EiIG5hbWU9Im1fcG5tX2ltYWdlIiB0eXBlPSJfSlhGTkFNejlFZUc3WnNWaWxjUFJnUSIvPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX1VzZTcwTXo1RWVHN1pzVmlsY1BSZ1EiIG5hbWU9Im1fcGl4ZWxzIiB0eXBlPSJfSlhGTkFNejlFZUc3WnNWaWxjUFJnUSIvPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2QtcHF3TXo1RWVHN1pzVmlsY1BSZ1EiIG5hbWU9Im1fcm93cyIgdHlwZT0iX2pERURBTXo5RWVHN1pzVmlsY1BSZ1EiLz4KKyAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX0oxWW9zTXowRWVHN1pzVmlsY1BSZ1EiIG5hbWU9IlRodW1iIj4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il94a1k3UU16NUVlRzdac1ZpbGNQUmdRIiBuYW1lPSJtX2RhdGEiPgorICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzZOSmZrQUtuRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfQzdjdHNNejZFZUc3WnNWaWxjUFJnUSIgdmFsdWU9IjIzMDMxNCIvPgorICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9DN2VpNE16NkVlRzdac1ZpbGNQUmdRIiB2YWx1ZT0iMjMwMzE0Ii8+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiB4bWk6aWQ9Il9KWEZOQU16OUVlRzdac1ZpbGNQUmdRIiBuYW1lPSJQb2ludGVyVG9VQ2hhciIvPgorICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiB4bWk6aWQ9Il9qREVEQU16OUVlRzdac1ZpbGNQUmdRIiBuYW1lPSJQb2ludGVyVG9Qb2ludGVyVG9VQ2hhciIvPgorICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnRlcmZhY2UiIHhtaTppZD0iX0JMbzR3TTBCRWVHN1pzVmlsY1BSZ1EiIG5hbWU9Ik9iY0ludGVyZmFjZSI+CisgICAgICA8b3duZWRPcGVyYXRpb24geG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIHhtaTppZD0iX0RZSklZTTBJRWVHN1pzVmlsY1BSZ1EiIG5hbWU9ImdldEludGVyZmFjZU5hbWUiPgorICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOnR5cGU9InVtbDpQYXJhbWV0ZXIiIHhtaTppZD0iX2JCTXl3UEszRWVHaU9xRTJsQUlqUXciIGRpcmVjdGlvbj0icmV0dXJuIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3FhUzJvQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgPC9vd25lZFBhcmFtZXRlcj4KKyAgICAgIDwvb3duZWRPcGVyYXRpb24+CisgICAgICA8b3duZWRPcGVyYXRpb24geG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIHhtaTppZD0iX2tkYWdJTTBJRWVHN1pzVmlsY1BSZ1EiIG5hbWU9ImdldFN0YXRlIj4KKyAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTp0eXBlPSJ1bWw6UGFyYW1ldGVyIiB4bWk6aWQ9Il9tS084c1BLM0VlR2lPcUUybEFJalF3IiBkaXJlY3Rpb249InJldHVybiI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19OWm5Uc0FJVUVlQ1ZyTEVCSDVlam5RIi8+CisgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfdld4a3dQSzNFZUdpT3FFMmxBSWpRdyIgbmFtZT0ic3RhdGUiIHR5cGU9Il9yWFk1WU16c0VlRzdac1ZpbGNQUmdRIiBkaXJlY3Rpb249Im91dCIvPgorICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOnR5cGU9InVtbDpQYXJhbWV0ZXIiIHhtaTppZD0iX0czdlVzUEs0RWVHaU9xRTJsQUlqUXciIG5hbWU9ImRhdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgPC9vd25lZE9wZXJhdGlvbj4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfczlpdUlNMElFZUc3WnNWaWxjUFJnUSIgbmFtZT0ic2V0UGhhc2UiPgorICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOnR5cGU9InVtbDpQYXJhbWV0ZXIiIHhtaTppZD0iX2U5cUwwUEs0RWVHaU9xRTJsQUlqUXciIGRpcmVjdGlvbj0icmV0dXJuIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX05ablRzQUlVRWVDVnJMRUJINWVqblEiLz4KKyAgICAgICAgPC9vd25lZFBhcmFtZXRlcj4KKyAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTp0eXBlPSJ1bWw6UGFyYW1ldGVyIiB4bWk6aWQ9Il83aDlTd1BLNEVlR2lPcUUybEFJalF3IiBuYW1lPSJwaGFzZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19uQ091b0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICA8L293bmVkT3BlcmF0aW9uPgorICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiB4bWk6aWQ9Il9KSEVrb00wSkVlRzdac1ZpbGNQUmdRIiBuYW1lPSJzZXRQaGFzZVN0ciI+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfQmNOcXNQSzVFZUdpT3FFMmxBSWpRdyIgZGlyZWN0aW9uPSJyZXR1cm4iPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTlpuVHNBSVVFZUNWckxFQkg1ZWpuUSIvPgorICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOnR5cGU9InVtbDpQYXJhbWV0ZXIiIHhtaTppZD0iX0lRd2dvUEs1RWVHaU9xRTJsQUlqUXciIG5hbWU9InN0ciI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xYVMyb0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICA8L293bmVkT3BlcmF0aW9uPgorICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiB4bWk6aWQ9Il9TZWpSWU0wSkVlRzdac1ZpbGNQUmdRIiBuYW1lPSJzZXRQaGFzZURlc2NlbnRlIj4KKyAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTp0eXBlPSJ1bWw6UGFyYW1ldGVyIiB4bWk6aWQ9Il9PbXkxb1BLNUVlR2lPcUUybEFJalF3IiBkaXJlY3Rpb249InJldHVybiI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19OWm5Uc0FJVUVlQ1ZyTEVCSDVlam5RIi8+CisgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfVTU4T3NQSzVFZUdpT3FFMmxBSWpRdyIgbmFtZT0iYWx0aXR1ZGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgPC9vd25lZE9wZXJhdGlvbj4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfWTFpb29NMEpFZUc3WnNWaWxjUFJnUSIgbmFtZT0iZ2V0UGhhc2UiPgorICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOnR5cGU9InVtbDpQYXJhbWV0ZXIiIHhtaTppZD0iX2EyZDNnUEs1RWVHaU9xRTJsQUlqUXciIGRpcmVjdGlvbj0icmV0dXJuIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX25DT3VvQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgPC9vd25lZFBhcmFtZXRlcj4KKyAgICAgIDwvb3duZWRPcGVyYXRpb24+CisgICAgICA8b3duZWRPcGVyYXRpb24geG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIHhtaTppZD0iX2UwQUxJTTBKRWVHN1pzVmlsY1BSZ1EiIG5hbWU9ImdldFBoYXNlU3RyIj4KKyAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTp0eXBlPSJ1bWw6UGFyYW1ldGVyIiB4bWk6aWQ9Il9lLTJwTVBLNUVlR2lPcUUybEFJalF3IiBkaXJlY3Rpb249InJldHVybiI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xYVMyb0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICA8L293bmVkT3BlcmF0aW9uPgorICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiB4bWk6aWQ9Il9pcGxWa00wSkVlRzdac1ZpbGNQUmdRIiBuYW1lPSJtb3ZlIj4KKyAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTp0eXBlPSJ1bWw6UGFyYW1ldGVyIiB4bWk6aWQ9Il9uX01CUVBLNUVlR2lPcUUybEFJalF3IiBkaXJlY3Rpb249InJldHVybiI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19OWm5Uc0FJVUVlQ1ZyTEVCSDVlam5RIi8+CisgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfckttTlVQSzVFZUdpT3FFMmxBSWpRdyIgbmFtZT0ieCI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfc29VdmtQSzVFZUdpT3FFMmxBSWpRdyIgbmFtZT0ieSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfdXlwNUlQSzVFZUdpT3FFMmxBSWpRdyIgbmFtZT0ieiI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfeFpOcnNQSzVFZUdpT3FFMmxBSWpRdyIgbmFtZT0icHNpIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgPC9vd25lZFBhcmFtZXRlcj4KKyAgICAgIDwvb3duZWRPcGVyYXRpb24+CisgICAgICA8b3duZWRPcGVyYXRpb24geG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIHhtaTppZD0iX0QzMVpRTTBCRWVHN1pzVmlsY1BSZ1EiIG5hbWU9ImdvdG91Ij4KKyAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTp0eXBlPSJ1bWw6UGFyYW1ldGVyIiB4bWk6aWQ9Il93bDJnVU0wQ0VlRzdac1ZpbGNQUmdRIiBkaXJlY3Rpb249InJldHVybiI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19OWm5Uc0FJVUVlQ1ZyTEVCSDVlam5RIi8+CisgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfZlY4N1FNMEJFZUc3WnNWaWxjUFJnUSIgbmFtZT0ieCI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfeGFIRVFNMEJFZUc3WnNWaWxjUFJnUSIgbmFtZT0ieSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfa09ONGNNMEdFZUc3WnNWaWxjUFJnUSIgbmFtZT0ieiI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfMmQ5bVlNMEdFZUc3WnNWaWxjUFJnUSIgbmFtZT0icHNpIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgPC9vd25lZFBhcmFtZXRlcj4KKyAgICAgIDwvb3duZWRPcGVyYXRpb24+CisgICAgICA8b3duZWRPcGVyYXRpb24geG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIHhtaTppZD0iX0VXUXJrTTBLRWVHN1pzVmlsY1BSZ1EiIG5hbWU9InRyYWNrIj4KKyAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTp0eXBlPSJ1bWw6UGFyYW1ldGVyIiB4bWk6aWQ9Il9FSDI4SVBLNkVlR2lPcUUybEFJalF3IiBkaXJlY3Rpb249InJldHVybiI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19OWm5Uc0FJVUVlQ1ZyTEVCSDVlam5RIi8+CisgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfTzRDaE1QSzZFZUdpT3FFMmxBSWpRdyIgbmFtZT0idngiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOnR5cGU9InVtbDpQYXJhbWV0ZXIiIHhtaTppZD0iX1JCbTF3UEs2RWVHaU9xRTJsQUlqUXciIG5hbWU9InZ5Ij4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgPC9vd25lZFBhcmFtZXRlcj4KKyAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTp0eXBlPSJ1bWw6UGFyYW1ldGVyIiB4bWk6aWQ9Il9TN0IxZ1BLNkVlR2lPcUUybEFJalF3IiBuYW1lPSJ6Ij4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgPC9vd25lZFBhcmFtZXRlcj4KKyAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTp0eXBlPSJ1bWw6UGFyYW1ldGVyIiB4bWk6aWQ9Il9VNXdNQVBLNkVlR2lPcUUybEFJalF3IiBuYW1lPSJwc2kiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgPC9vd25lZE9wZXJhdGlvbj4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfSUFqekVNMEtFZUc3WnNWaWxjUFJnUSIgbmFtZT0iYWx0aXR1ZGUiPgorICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOnR5cGU9InVtbDpQYXJhbWV0ZXIiIHhtaTppZD0iX21zaVJJUEs2RWVHaU9xRTJsQUlqUXciIGRpcmVjdGlvbj0icmV0dXJuIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX05ablRzQUlVRWVDVnJMRUJINWVqblEiLz4KKyAgICAgICAgPC9vd25lZFBhcmFtZXRlcj4KKyAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTp0eXBlPSJ1bWw6UGFyYW1ldGVyIiB4bWk6aWQ9Il9zRVJLMFBLNkVlR2lPcUUybEFJalF3IiBuYW1lPSJhbHRpdHVkZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfdC1uWG9QSzZFZUdpT3FFMmxBSWpRdyIgbmFtZT0iZW5hYmxlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX05ablRzQUlVRWVDVnJMRUJINWVqblEiLz4KKyAgICAgICAgPC9vd25lZFBhcmFtZXRlcj4KKyAgICAgIDwvb3duZWRPcGVyYXRpb24+CisgICAgICA8b3duZWRPcGVyYXRpb24geG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIHhtaTppZD0iX01weW9BTTBLRWVHN1pzVmlsY1BSZ1EiIG5hbWU9IndheXBvaW50QWRkIj4KKyAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTp0eXBlPSJ1bWw6UGFyYW1ldGVyIiB4bWk6aWQ9Il8xTHQzZ1BLNkVlR2lPcUUybEFJalF3IiBkaXJlY3Rpb249InJldHVybiI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19OWm5Uc0FJVUVlQ1ZyTEVCSDVlam5RIi8+CisgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfX3otUG9QSzZFZUdpT3FFMmxBSWpRdyIgbmFtZT0id3AiIHR5cGU9Il9RS2ZMRVBLN0VlR2lPcUUybEFJalF3Ii8+CisgICAgICA8L293bmVkT3BlcmF0aW9uPgorICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiB4bWk6aWQ9Il9VbHdaQU0wS0VlRzdac1ZpbGNQUmdRIiBuYW1lPSJ3YXlwb2ludERlbCI+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfNENGODBQSzhFZUdpT3FFMmxBSWpRdyIgZGlyZWN0aW9uPSJyZXR1cm4iPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTlpuVHNBSVVFZUNWckxFQkg1ZWpuUSIvPgorICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOnR5cGU9InVtbDpQYXJhbWV0ZXIiIHhtaTppZD0iXzlsRzVjUEs4RWVHaU9xRTJsQUlqUXciIG5hbWU9IndwIiB0eXBlPSJfUUtmTEVQSzdFZUdpT3FFMmxBSWpRdyIvPgorICAgICAgPC9vd25lZE9wZXJhdGlvbj4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfWTZ4NGdNMEtFZUc3WnNWaWxjUFJnUSIgbmFtZT0id2F5QWRkIj4KKyAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTp0eXBlPSJ1bWw6UGFyYW1ldGVyIiB4bWk6aWQ9Il9IVkdNMFBLOUVlR2lPcUUybEFJalF3IiBkaXJlY3Rpb249InJldHVybiI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19OWm5Uc0FJVUVlQ1ZyTEVCSDVlam5RIi8+CisgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfSWRIazBQSzlFZUdpT3FFMmxBSWpRdyIgbmFtZT0idyIgdHlwZT0iX3dtOWdvUEtfRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgIDwvb3duZWRPcGVyYXRpb24+CisgICAgICA8b3duZWRPcGVyYXRpb24geG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIHhtaTppZD0iX2ZPbW5BTTBLRWVHN1pzVmlsY1BSZ1EiIG5hbWU9IndheURlbCI+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfZTItYllQTEFFZUdpT3FFMmxBSWpRdyIgZGlyZWN0aW9uPSJyZXR1cm4iPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTlpuVHNBSVVFZUNWckxFQkg1ZWpuUSIvPgorICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgICA8b3duZWRQYXJhbWV0ZXIgeG1pOnR5cGU9InVtbDpQYXJhbWV0ZXIiIHhtaTppZD0iX2hTZ0NvUExBRWVHaU9xRTJsQUlqUXciIG5hbWU9InciIHR5cGU9Il93bTlnb1BLX0VlR2lPcUUybEFJalF3Ii8+CisgICAgICA8L293bmVkT3BlcmF0aW9uPgorICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiB4bWk6aWQ9Il9YQlpIa1BLeUVlR2lPcUUybEFJalF3IiBuYW1lPSJ3YXlQdXNoIj4KKyAgICAgICAgPG93bmVkUGFyYW1ldGVyIHhtaTp0eXBlPSJ1bWw6UGFyYW1ldGVyIiB4bWk6aWQ9Il9sNklWRVBMQUVlR2lPcUUybEFJalF3IiBkaXJlY3Rpb249InJldHVybiI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19OWm5Uc0FJVUVlQ1ZyTEVCSDVlam5RIi8+CisgICAgICAgIDwvb3duZWRQYXJhbWV0ZXI+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfb2JfTjBQTEFFZUdpT3FFMmxBSWpRdyIgbmFtZT0idyIgdHlwZT0iX3dtOWdvUEtfRWVHaU9xRTJsQUlqUXciLz4KKyAgICAgIDwvb3duZWRPcGVyYXRpb24+CisgICAgICA8b3duZWRPcGVyYXRpb24geG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIHhtaTppZD0iX2Q2ai0wUEt5RWVHaU9xRTJsQUlqUXciIG5hbWU9IndheVBvcCI+CisgICAgICAgIDxvd25lZFBhcmFtZXRlciB4bWk6dHlwZT0idW1sOlBhcmFtZXRlciIgeG1pOmlkPSJfdElPNmdQTEFFZUdpT3FFMmxBSWpRdyIgZGlyZWN0aW9uPSJyZXR1cm4iPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTlpuVHNBSVVFZUNWckxFQkg1ZWpuUSIvPgorICAgICAgICA8L293bmVkUGFyYW1ldGVyPgorICAgICAgPC9vd25lZE9wZXJhdGlvbj4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfaVlJV1VQS3lFZUdpT3FFMmxBSWpRdyIgbmFtZT0ib2JzdGFjbGVBZGQiLz4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfb1dSdndQS3lFZUdpT3FFMmxBSWpRdyIgbmFtZT0ib2JzdGFjbGVEZWwiLz4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfczFjcHdQS3lFZUdpT3FFMmxBSWpRdyIgbmFtZT0ic2V0T2JqIi8+CisgICAgICA8b3duZWRPcGVyYXRpb24geG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIHhtaTppZD0iX3ZhWlN3UEt5RWVHaU9xRTJsQUlqUXciIG5hbWU9InF1aWNrV2F5cG9pbnREZWwiLz4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfenBQUndQS3lFZUdpT3FFMmxBSWpRdyIgbmFtZT0icXVpY2tTZXRPYmoiLz4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfM3ZGRndQS3lFZUdpT3FFMmxBSWpRdyIgbmFtZT0iZ2V0TWluRHQiLz4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfNmVMSlFQS3lFZUdpT3FFMmxBSWpRdyIgbmFtZT0iZ2V0TWF4ViIvPgorICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiB4bWk6aWQ9Il85WlB6UVBLeUVlR2lPcUUybEFJalF3IiBuYW1lPSJnZXRNYXhBIi8+CisgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkludGVyZmFjZSIgeG1pOmlkPSJfelp0V0VQSzBFZUdpT3FFMmxBSWpRdyIgbmFtZT0iQ2FtZXJhSW50ZXJmYWNlIj4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfSm9EbmtQSzFFZUdpT3FFMmxBSWpRdyIgbmFtZT0iZ2V0SW50ZXJmYWNlTmFtZSIvPgorICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiB4bWk6aWQ9Il9NQWZla1BLMUVlR2lPcUUybEFJalF3IiBuYW1lPSJzZXRHYWluIi8+CisgICAgICA8b3duZWRPcGVyYXRpb24geG1pOnR5cGU9InVtbDpPcGVyYXRpb24iIHhtaTppZD0iX05kVjNFUEsxRWVHaU9xRTJsQUlqUXciIG5hbWU9ImdldEdhaW4iLz4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfUENXdEVQSzFFZUdpT3FFMmxBSWpRdyIgbmFtZT0ic2V0R2FpbkF1dG8iLz4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfUzhsdUFQSzFFZUdpT3FFMmxBSWpRdyIgbmFtZT0iZ2V0R2FpbkF1dG8iLz4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfVThZYmdQSzFFZUdpT3FFMmxBSWpRdyIgbmFtZT0ic2V0R2FpbkF1dG9NaW4iLz4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfWENTWUVQSzFFZUdpT3FFMmxBSWpRdyIgbmFtZT0iZ2V0R2FpbkF1dG9NaW4iLz4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfWlRzYUFQSzFFZUdpT3FFMmxBSWpRdyIgbmFtZT0ic2V0R2FpbkF1dG9NYXgiLz4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfYm1makVQSzFFZUdpT3FFMmxBSWpRdyIgbmFtZT0iZ2V0R2FpbkF1dG9NYXgiLz4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfZm1UbmtQSzFFZUdpT3FFMmxBSWpRdyIgbmFtZT0ic2V0U2h1dHRlciIvPgorICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiB4bWk6aWQ9Il9rVGxQQVBLMUVlR2lPcUUybEFJalF3IiBuYW1lPSJnZXRTaHV0ZXIiLz4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfbWtkc2dQSzFFZUdpT3FFMmxBSWpRdyIgbmFtZT0ic2V0U2h1dHRlckF1dG8iLz4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfb3VCYUFQSzFFZUdpT3FFMmxBSWpRdyIgbmFtZT0iZ2V0U2h1dHRlckF1dG8iLz4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfckdkUkFQSzFFZUdpT3FFMmxBSWpRdyIgbmFtZT0ic2V0U2h1dHRlckF1dG9NaW4iLz4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfdGdIUUFQSzFFZUdpT3FFMmxBSWpRdyIgbmFtZT0iZ2V0U2h1dHRlckF1dG9NaW4iLz4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfdnpsdWdQSzFFZUdpT3FFMmxBSWpRdyIgbmFtZT0ic2V0U2h1dHRlckF1dG9NYXgiLz4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfeVFKUWdQSzFFZUdpT3FFMmxBSWpRdyIgbmFtZT0iZ2V0U2h1dHRlckF1dG9NYXgiLz4KKyAgICAgIDxvd25lZE9wZXJhdGlvbiB4bWk6dHlwZT0idW1sOk9wZXJhdGlvbiIgeG1pOmlkPSJfMUNYZ2dQSzFFZUdpT3FFMmxBSWpRdyIgbmFtZT0ic2V0QnJpZ2h0bmVzcyIvPgorICAgICAgPG93bmVkT3BlcmF0aW9uIHhtaTp0eXBlPSJ1bWw6T3BlcmF0aW9uIiB4bWk6aWQ9Il8zRDZoZ1BLMUVlR2lPcUUybEFJalF3IiBuYW1lPSJnZXRCcmlnaHRuZXNzIi8+CisgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9RS2ZMRVBLN0VlR2lPcUUybEFJalF3IiBuYW1lPSJXYXlwb2ludCI+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfV2pMeWdQSzdFZUdpT3FFMmxBSWpRdyIgbmFtZT0ibV9pZCI+CisgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfbkNPdW9BSC1FZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9vN3RwQVBLN0VlR2lPcUUybEFJalF3IiBuYW1lPSJtX3giPgorICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfc0VENkFQSzdFZUdpT3FFMmxBSWpRdyIgbmFtZT0ibV95Ij4KKyAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iXzA1SzVnUEs3RWVHaU9xRTJsQUlqUXciIG5hbWU9Im1feiI+CisgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il81Qk5zOFBLN0VlR2lPcUUybEFJalF3IiBuYW1lPSJtX2NhcCI+CisgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il84X3V3OFBLN0VlR2lPcUUybEFJalF3IiBuYW1lPSJtX2RlcmFwIj4KKyAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX0k3RFRjUEs4RWVHaU9xRTJsQUlqUXciIG5hbWU9Im1fdmVsIj4KKyAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX1BHM1ZjUEs4RWVHaU9xRTJsQUlqUXciIG5hbWU9Im1fdl9wcm94Ij4KKyAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX1luSl84UEs4RWVHaU9xRTJsQUlqUXciIG5hbWU9Im1fZF9wcm94Ij4KKyAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2N6dGY4UEs4RWVHaU9xRTJsQUlqUXciIG5hbWU9Im1fd2FpdCI+CisgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX3dtOWdvUEtfRWVHaU9xRTJsQUlqUXciIG5hbWU9IldheSI+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfMElRZElQS19FZUdpT3FFMmxBSWpRdyIgbmFtZT0ibV9pZCI+CisgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfbkNPdW9BSC1FZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il8zNjhyb1BLX0VlR2lPcUUybEFJalF3IiBuYW1lPSJtX3Bvc2l0aW9uX2luX21pc3Npb24iPgorICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX25DT3VvQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfX0dpdm9QS19FZUdpT3FFMmxBSWpRdyIgbmFtZT0ibV9uYl9sb29wcyI+CisgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfbkNPdW9BSC1FZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9EZWR5SVBMQUVlR2lPcUUybEFJalF3IiBuYW1lPSJtX25iX3dwIj4KKyAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19uQ091b0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX0pYTkhJUExBRWVHaU9xRTJsQUlqUXciIG5hbWU9Im1fZmlyc3Rfd3BfaWQiPgorICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX25DT3VvQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPHByb2ZpbGVBcHBsaWNhdGlvbiB4bWk6dHlwZT0idW1sOlByb2ZpbGVBcHBsaWNhdGlvbiIgeG1pOmlkPSJfcnU5RTRJTHFFZUdoT1p1YS1xamYwUSI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcnUtNkVJTHFFZUdoT1p1YS1xamYwUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgeG1pOnR5cGU9ImVjb3JlOkVQYWNrYWdlIiBocmVmPSJodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEjLyIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8YXBwbGllZFByb2ZpbGUgeG1pOnR5cGU9InVtbDpQcm9maWxlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9QUk9GSUxFUy9Sb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfM1FPSEVQY0VFZC1KMDZVNUhNX28tUSIvPgorICAgIDwvcHJvZmlsZUFwcGxpY2F0aW9uPgorICA8L3VtbDpNb2RlbD4KKyAgPFJvYm90TUw6Um9ib3RpY01pZGRsZXdhcmUgeG1pOmlkPSJfbGZmYXdKWHFFZUdvUkl6VDhUanlWZyIgYmFzZV9DbGFzcz0iX2xlbUM0SlhxRWVHb1JJelQ4VGp5VmciLz4KKyAgPFJvYm90TUw6Q2FtZXJhU3lzdGVtIHhtaTppZD0iX3gtSENJSlhyRWVHb1JJelQ4VGp5VmciIGJhc2VfQ2xhc3M9Il94OTB1UUpYckVlR29SSXpUOFRqeVZnIi8+CisgIDxSb2JvdE1MOlJvYm90aWNTaW11bGF0b3IgeG1pOmlkPSJfSUkzTkVKWHNFZUdvUkl6VDhUanlWZyIgYmFzZV9DbGFzcz0iX0lJcV8wSlhzRWVHb1JJelQ4VGp5VmciLz4KKyAgPFJvYm90TUw6U2Vuc29yU3lzdGVtIHhtaTppZD0iX1hiWTc4SlhzRWVHb1JJelQ4VGp5VmciIGJhc2VfQ2xhc3M9Il9YYk44MEpYc0VlR29SSXpUOFRqeVZnIi8+CisgIDxSb2JvdE1MOkdQU1N5c3RlbSB4bWk6aWQ9Il9wYVhDOEpYc0VlR29SSXpUOFRqeVZnIiBiYXNlX0NsYXNzPSJfcGFNRDBKWHNFZUdvUkl6VDhUanlWZyIvPgorICA8Um9ib3RNTDpSb2JvdGljTWlkZGxld2FyZSB4bWk6aWQ9Il84cFhPY0pYc0VlR29SSXpUOFRqeVZnIiBiYXNlX0NsYXNzPSJfOHBMb1FKWHNFZUdvUkl6VDhUanlWZyIvPgorICA8Um9ib3RNTDpBY3R1YXRvclN5c3RlbSB4bWk6aWQ9Il9PMWo1SUpYdEVlR29SSXpUOFRqeVZnIiBiYXNlX0NsYXNzPSJfTzFYcjRKWHRFZUdvUkl6VDhUanlWZyIvPgorICA8Um9ib3RNTDpFbnZpcm9ubWVudCB4bWk6aWQ9Il9qZVVzNEpYdEVlR29SSXpUOFRqeVZnIiBiYXNlX0NsYXNzPSJfamVHRFlKWHRFZUdvUkl6VDhUanlWZyIvPgorICA8Um9ib3RNTDpMaWRhclN5c3RlbSB4bWk6aWQ9Il9xTzVvMEpYdEVlR29SSXpUOFRqeVZnIi8+CisgIDxSb2JvdE1MOlJvYm90IHhtaTppZD0iX3R3VDZFSlh0RWVHb1JJelQ4VGp5VmciIGJhc2VfQ2xhc3M9Il90d0lUNEpYdEVlR29SSXpUOFRqeVZnIi8+CisgIDxSb2JvdE1MOlJvYm90aWNTeXN0ZW0geG1pOmlkPSJfMVhXNUVKWHZFZUdSVExWWmY0TnlZdyIgYmFzZV9DbGFzcz0iXzFYSG9nSlh2RWVHUlRMVlpmNE55WXciLz4KKyAgPFJvYm90TUw6Um9ib3RpY1N5c3RlbSB4bWk6aWQ9Il84TUswd0pYdkVlR1JUTFZaZjROeVl3IiBiYXNlX0NsYXNzPSJfOEw1dkFKWHZFZUdSVExWWmY0TnlZdyIvPgorICA8Um9ib3RNTDpSb2JvdGljU3lzdGVtIHhtaTppZD0iX0diUFEwSlh3RWVHUlRMVlpmNE55WXciIGJhc2VfQ2xhc3M9Il9HYTlrQUpYd0VlR1JUTFZaZjROeVl3Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il8wYnlNTUpYd0VlR1JUTFZaZjROeVl3IiBiYXNlX1BvcnQ9Il8wYW51a0pYd0VlR1JUTFZaZjROeVl3IiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfZWNmWWNKWHlFZUdSVExWWmY0TnlZdyIgYmFzZV9Qb3J0PSJfZWNGSXdKWHlFZUdSVExWWmY0TnlZdyIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iXzgzWmJzSlh5RWVHUlRMVlpmNE55WXciIGJhc2VfUG9ydD0iXzgzQm9RSlh5RWVHUlRMVlpmNE55WXciIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9VdFBQY0pYekVlR1JUTFZaZjROeVl3IiBiYXNlX1BvcnQ9Il9VczFtMEpYekVlR1JUTFZaZjROeVl3IiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfbWdnY3dKWHpFZUdSVExWWmY0TnlZdyIgYmFzZV9Qb3J0PSJfbWdJQ1FKWHpFZUdSVExWWmY0TnlZdyIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfOERYcjBKWDBFZUdSVExWWmY0TnlZdyIgYmFzZV9Qb3J0PSJfOENfUlVKWDBFZUdSVExWWmY0TnlZdyIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfR3NRV0VKWDFFZUdSVExWWmY0TnlZdyIgYmFzZV9Qb3J0PSJfR3IyR1lKWDFFZUdSVExWWmY0TnlZdyIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfVHNQYWtKWDFFZUdSVExWWmY0TnlZdyIgYmFzZV9Qb3J0PSJfVHIxSzRKWDFFZUdSVExWWmY0TnlZdyIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX3p4V1YwSlgxRWVHUlRMVlpmNE55WXciIGJhc2VfUG9ydD0iX3p3X0pjSlgxRWVHUlRMVlpmNE55WXciLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iXzh5Vk9JSlgxRWVHUlRMVlpmNE55WXciIGJhc2VfUG9ydD0iXzh4N2xnSlgxRWVHUlRMVlpmNE55WXciLz4KKyAgPFJvYm90TUw6Um9ib3RpY1N5c3RlbSB4bWk6aWQ9Il9FbXNhOEpYNUVlR0RJcHQ3N21ya1hRIiBiYXNlX0NsYXNzPSJfRWwyR1lKWDVFZUdESXB0NzdtcmtYUSIvPgorICA8Um9ib3RNTDpSb2JvdGljU3lzdGVtIHhtaTppZD0iX19ObnJNSlg5RWVHV2xjUWZpT05GOFEiIGJhc2VfQ2xhc3M9Il9fTWpVTUpYOUVlR1dsY1FmaU9ORjhRIi8+CisgIDxSb2JvdE1MOlJvYm90aWNTeXN0ZW0geG1pOmlkPSJfNHZlR2tKWC1FZUdXbGNRZmlPTkY4USIgYmFzZV9DbGFzcz0iXzR2R1RJSlgtRWVHV2xjUWZpT05GOFEiLz4KKyAgPFJvYm90TUw6Um9ib3RpY1N5c3RlbSB4bWk6aWQ9Il9NV2Itd0pZQ0VlR1R3YVFwdklLcTBRIiBiYXNlX0NsYXNzPSJfTU52VndKWUNFZUdUd2FRcHZJS3EwUSIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfOENUWEFKWURFZUdUd2FRcHZJS3EwUSIgYmFzZV9Qb3J0PSJfOEJfMUFKWURFZUdUd2FRcHZJS3EwUSIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfS3g3ME1KWUVFZUdUd2FRcHZJS3EwUSIgYmFzZV9Qb3J0PSJfS3htZEFKWUVFZUdUd2FRcHZJS3EwUSIvPgorICA8Um9ib3RNTDpTdGF0ZSB4bWk6aWQ9Il8wcXBUb0tOT0VlR09kUGRvRVVESnRRIi8+CisgIDxSb2JvdE1MOlRyYW5zaXRpb24geG1pOmlkPSJfRG9PdFFLTlBFZUdPZFBkb0VVREp0USIvPgorICA8Um9ib3RNTDpUcmFuc2l0aW9uIHhtaTppZD0iX0pEVE8wS05QRWVHT2RQZG9FVURKdFEiLz4KKyAgPFJvYm90TUw6VHJhbnNpdGlvbiB4bWk6aWQ9Il9OdklyMEtOUEVlR09kUGRvRVVESnRRIi8+CisgIDxSb2JvdE1MOk9uUG9ydCB4bWk6aWQ9Il9xdGI4UUtOUkVlR09kUGRvRVVESnRRIiBwb3J0PSJfS3g3ME1KWUVFZUdUd2FRcHZJS3EwUSIgYmFzZV9QYXJhbWV0ZXI9Il9nbkdsY0tOUkVlR09kUGRvRVVESnRRIi8+CisgIDxSb2JvdE1MOlRyYW5zaXRpb24geG1pOmlkPSJfTDNpRmNLTlpFZUdPZFBkb0VVREp0USIvPgorICA8Um9ib3RNTDpBbGdvcml0aG0geG1pOmlkPSJfdkUwTklLUUtFZUdBd1Aybmdhd3ZDdyIgYmFzZV9PcGVyYXRpb249Il91NDRlY0tOUUVlR09kUGRvRVVESnRRIi8+CisgIDxSb2JvdE1MOkFsZ29yaXRobSB4bWk6aWQ9Il9Lc19xRUtRTEVlR0F3UDJuZ2F3dkN3IiBiYXNlX09wZXJhdGlvbj0iX0k0WERzS1FMRWVHQXdQMm5nYXd2Q3ciLz4KKyAgPFJvYm90TUw6T25Qb3J0IHhtaTppZD0iX1dyRlhRS1FNRWVHQXdQMm5nYXd2Q3ciIHBvcnQ9Il84Q1RYQUpZREVlR1R3YVFwdklLcTBRIiBiYXNlX1BhcmFtZXRlcj0iX2lEb1pVS1FMRWVHQXdQMm5nYXd2Q3ciLz4KKyAgPFJvYm90TUw6QWxnb3JpdGhtIHhtaTppZD0iX0NXT0ZBS1FPRWVHQXdQMm5nYXd2Q3ciIGJhc2VfT3BlcmF0aW9uPSJfbGwtejBLUU5FZUdBd1Aybmdhd3ZDdyIvPgorICA8Um9ib3RNTDpPblBvcnQgeG1pOmlkPSJfTFJLbXdLUU9FZUdBd1Aybmdhd3ZDdyIgcG9ydD0iXzhDVFhBSllERWVHVHdhUXB2SUtxMFEiIGJhc2VfUGFyYW1ldGVyPSJfOWVtMTBLUU5FZUdBd1Aybmdhd3ZDdyIvPgorICA8Um9ib3RNTDpPblBvcnQgeG1pOmlkPSJfUUt2Z29LUVZFZUdPallhZmN0MzBkUSIgYmFzZV9QYXJhbWV0ZXI9Il9OLWJhRUtRVkVlR09qWWFmY3QzMGRRIi8+CisgIDxSb2JvdE1MOk9uUG9ydCB4bWk6aWQ9Il8xYW1wZ0tRVkVlR09qWWFmY3QzMGRRIiBiYXNlX1BhcmFtZXRlcj0iX3pQczRNS1FWRWVHT2pZYWZjdDMwZFEiLz4KKyAgPFJvYm90TUw6QWxnb3JpdGhtIHhtaTppZD0iX1B2cTR3S1FXRWVHT2pZYWZjdDMwZFEiIGJhc2VfT3BlcmF0aW9uPSJfRkgxTTBLUVZFZUdPallhZmN0MzBkUSIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfd3RKMVFNek5FZUdJNTQtYmh6enVvQSIgYmFzZV9Qb3J0PSJfd3RFVnNNek5FZUdJNTQtYmh6enVvQSIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6U2VydmljZVBvcnQgeG1pOmlkPSJfbjB5cmNNempFZUdJNTQtYmh6enVvQSIgYmFzZV9Qb3J0PSJfbjBnWGtNempFZUdJNTQtYmh6enVvQSIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfblBIck1Nem1FZUdJNTQtYmh6enVvQSIgYmFzZV9Qb3J0PSJfbk8xWFVNem1FZUdJNTQtYmh6enVvQSIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX3RMaFlNTXptRWVHSTU0LWJoenp1b0EiIGJhc2VfUG9ydD0iX3RMUEVVTXptRWVHSTU0LWJoenp1b0EiIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOlNlcnZpY2VQb3J0IHhtaTppZD0iX0dUaVRrTXpwRWVHSTU0LWJoenp1b0EiIGJhc2VfUG9ydD0iX0dUUFlvTXpwRWVHSTU0LWJoenp1b0EiLz4KKyAgPFJvYm90TUw6U2VydmljZVBvcnQgeG1pOmlkPSJfTUVpemNNenFFZUdJNTQtYmh6enVvQSIgYmFzZV9Qb3J0PSJfTUVQUmNNenFFZUdJNTQtYmh6enVvQSIga2luZD0icmVxdWlyZWQiLz4KKyAgPFJvYm90TUw6U2VydmljZVBvcnQgeG1pOmlkPSJfM0NHdU1QSzJFZUdpT3FFMmxBSWpRdyIgYmFzZV9Qb3J0PSJfM0JtLThQSzJFZUdpT3FFMmxBSWpRdyIga2luZD0icmVxdWlyZWQiLz4KKzwveG1pOlhNST4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvcmVzb3VyY2UvWW91dGhDaGFsbGVuZ2UuZGkgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3Jlc291cmNlL1lvdXRoQ2hhbGxlbmdlLmRpCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUxNmMwMjcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3Jlc291cmNlL1lvdXRoQ2hhbGxlbmdlLmRpCkBAIC0wLDAgKzEsMzggQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8ZGk6U2FzaFdpbmRvd3NNbmdyIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zOlhNST0iaHR0cDovL3d3dy5vbWcub3JnL1hNSSIgeG1sbnM6ZGk9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvcGFweXJ1cy8wLjcuMC9zYXNoZGkiIFhNSTp2ZXJzaW9uPSIyLjAiPgorICA8cGFnZUxpc3Q+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICAgIDxhdmFpbGFibGVQYWdlLz4KKyAgICA8YXZhaWxhYmxlUGFnZS8+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICAgIDxhdmFpbGFibGVQYWdlLz4KKyAgICA8YXZhaWxhYmxlUGFnZS8+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICAgIDxhdmFpbGFibGVQYWdlLz4KKyAgICA8YXZhaWxhYmxlUGFnZS8+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICAgIDxhdmFpbGFibGVQYWdlLz4KKyAgICA8YXZhaWxhYmxlUGFnZS8+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICAgIDxhdmFpbGFibGVQYWdlLz4KKyAgICA8YXZhaWxhYmxlUGFnZS8+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICAgIDxhdmFpbGFibGVQYWdlLz4KKyAgICA8YXZhaWxhYmxlUGFnZS8+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICAgIDxhdmFpbGFibGVQYWdlLz4KKyAgICA8YXZhaWxhYmxlUGFnZS8+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICAgIDxhdmFpbGFibGVQYWdlLz4KKyAgICA8YXZhaWxhYmxlUGFnZS8+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICA8L3BhZ2VMaXN0PgorICA8c2FzaE1vZGVsIGN1cnJlbnRTZWxlY3Rpb249IiMvL0BzYXNoTW9kZWwvQHdpbmRvd3MuMC9AY2hpbGRyZW4uMCI+CisgICAgPHdpbmRvd3M+CisgICAgICA8Y2hpbGRyZW4geHNpOnR5cGU9ImRpOlRhYkZvbGRlciI+CisgICAgICAgIDxjaGlsZHJlbiBlbWZQYWdlSWRlbnRpZmllcj0iWW91dGhDaGFsbGVuZ2Uubm90YXRpb24jX3JjNTFzS0VLRWVLTFVxWDlJSnEyR2ciLz4KKyAgICAgICAgPGNoaWxkcmVuIGVtZlBhZ2VJZGVudGlmaWVyPSJZb3V0aENoYWxsZW5nZS5ub3RhdGlvbiNfazBWYVlqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICA8L3dpbmRvd3M+CisgIDwvc2FzaE1vZGVsPgorPC9kaTpTYXNoV2luZG93c01uZ3I+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3Jlc291cmNlL1lvdXRoQ2hhbGxlbmdlLm5vdGF0aW9uIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9yZXNvdXJjZS9Zb3V0aENoYWxsZW5nZS5ub3RhdGlvbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zYTZlMzc0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9yZXNvdXJjZS9Zb3V0aENoYWxsZW5nZS5ub3RhdGlvbgpAQCAtMCwwICsxLDg3NjggQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8eG1pOlhNSSB4bWk6dmVyc2lvbj0iMi4wIiB4bWxuczp4bWk9Imh0dHA6Ly93d3cub21nLm9yZy9YTUkiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zOlJvYm90TUw9Imh0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMSIgeG1sbnM6Y29uZmlndXJhdGlvbj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9wYXB5cnVzL2luZnJhL3ZpZXdwb2ludHMvY29uZmlndXJhdGlvbiIgeG1sbnM6Y3NzPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3BhcHlydXMvaW5mcmEvZ21mZGlhZy9jc3MiIHhtbG5zOmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIiB4bWxuczpub3RhdGlvbj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9nbWYvcnVudGltZS8xLjAuMi9ub3RhdGlvbiIgeG1sbnM6c3R5bGU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvcGFweXJ1cy9pbmZyYS92aWV3cG9pbnRzL3BvbGljeS9zdHlsZSIgeG1sbnM6dW1sPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIj4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfazBWVkhqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iUGFweXJ1c1VNTENsYXNzRGlhZ3JhbSIgbmFtZT0iRGF0YVR5cGVzRGlhZ3JhbSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWVkh6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMjAwNiIgZm9udEhlaWdodD0iOCIgZmlsbENvbG9yPSI4OTA1MTg1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlZJRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZWSVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZWSWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZWSXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlZKRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWVkpUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVlZKamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUwMjMiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfazBWVkp6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNzAxNSI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlZLRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwMTciIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMajVEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWVktUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZWS2ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDE3IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb25MaXRlcmFsIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGo1VGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlZLemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWVkxEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzAxNyIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExqNWppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZWTFRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlZMamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwMTciIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMajV6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWVkx6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9rMFZWTURpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfazBWVk1UaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfazBWVk1qaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZWTXppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbiIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExqNHppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZWTkRpQUVlS0RBTUVqbk9MbVBBIiB4PSI0NSIgeT0iLTQwIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZWTlRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIyMDEwIiBmb250SGVpZ2h0PSI4IiBmaWxsQ29sb3I9IjgwNDcwODUiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWVk5qaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlZOemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlZPRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlZPVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWVk9qaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZWT3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWVlBEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTAzNSIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMFZWUFRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDIwIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWVlBqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGo2amlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlZQemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWVlFEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGo3amlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlZRVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWVlFqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGo4amlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlZRemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBWVlJEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2swVlZSVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2swVlZSamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWVlJ6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfazBWVlNEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMjEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9rMFZWU1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfazBWVlNqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfazBWVlN6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZWVERpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExqNkRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZWVFRpQUVlS0RBTUVqbk9MbVBBIiB4PSIzMjUiIHk9IjMyMCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWVlRqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMjAxMCIgZm9udEhlaWdodD0iOCIgZmlsbENvbG9yPSI4MDQ3MDg1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlZUemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZWVURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZWVVRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZWVWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlZVemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWVlZEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVlZWVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUwMzUiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfazBWVlZqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNzAyMCI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlZWemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExqLURpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZWV0RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlZXVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExqX0RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZWV2ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlZXemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExrQURpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZWWERpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlZYVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExrQkRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZWWGppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2swVlZYemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9rMFZWWURpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9rMFZWWVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVlZZamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swVlZZemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDIxIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBWVlpEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2swVlZaVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2swVlZaamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWVlp6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMajlqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWVmFEaUFFZUtEQU1Fam5PTG1QQSIgeD0iNTIwIiB5PSIzMTUiIHdpZHRoPSIyMDEiIGhlaWdodD0iMTExIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZWYVRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIyMDEwIiBmb250SGVpZ2h0PSI4IiBmaWxsQ29sb3I9IjgwNDcwODUiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWVmFqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlZhemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlZiRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlZiVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWVmJqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZWYnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWVmNEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTAzNSIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMFZWY1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDIwIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWVmNqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGtDamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlZjemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWVmREaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGtEamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlZkVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWVmRqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGtFamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlZkemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWVmVEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGtGamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlZlVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBWVmVqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2swVlZlemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2swVlZmRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWVmZUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfazBWVmZqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMjEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9rMFZWZnppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfazBWVmdEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfazBWVmdUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZWZ2ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExrQ1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZWZ3ppQUVlS0RBTUVqbk9MbVBBIiB4PSI1MzUiIHk9IjQ0MCIgd2lkdGg9IjE3MSIgaGVpZ2h0PSIxMjkiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlZoRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjIwMTAiIGZvbnRIZWlnaHQ9IjgiIGZpbGxDb2xvcj0iODA0NzA4NSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZWaFRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWVmhqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWVmh6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWVmlEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZWaVRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlZpamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZWaXppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MDM1Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swVlZqRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwMjAiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZWalRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExrR3ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZWamppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlZqemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGtIemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlZrRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWVmtUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMa0l6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWVmtqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2swVlZremlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2swVlZsRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWVmxUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfazBWVmxqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMjEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2swVlZsemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2swVlZtRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWVm1UaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMa0dqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWVm1qaUFFZUtEQU1Fam5PTG1QQSIgeD0iMzIwIiB5PSI1OTAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlZzRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjIwMTAiIGZvbnROYW1lPSJTZWdvZSBVSSIgZmlsbENvbG9yPSIxMDI2NTgyNyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZWc1RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWVnNqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWVnN6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWVnREaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZWdFRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlZ0amlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZWdHppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MDM1Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swVlZ1RGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwMjAiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZWdVRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExrTFRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZWdWppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlZ1emlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGtNVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlZ2RGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWVnZUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMa05UaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWVnZqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZWdnppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExrT1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZWd0RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlZ3VGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGtQVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlZ3amlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9rMFZWd3ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9rMFZWeERpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVlZ4VGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swVlZ4amlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDIxIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9rMFZWeHppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9rMFZWeURpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVlZ5VGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGtMRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVlZ5amlBRWVLREFNRWpuT0xtUEEiIHg9IjMwIiB5PSI3NTUiIHdpZHRoPSIyMjEiIGhlaWdodD0iMTc2Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZWNERpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIyMDEwIiBmb250TmFtZT0iU2Vnb2UgVUkiIGZpbGxDb2xvcj0iMTAyNjU4MjciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWVjRUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlY0amlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlY0emlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlY1RGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWVjVUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZWNWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWVjV6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTAzNSIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMFZWNkRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDIwIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWVjZUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMa1N6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWVjZqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZWNnppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExrVHppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZWN0RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlY3VGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGtVemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlY3amlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWVjd6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMa1Z6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWVjhEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZWOFRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExrV3ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZWOGppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlY4emlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGtYemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlY5RGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWVjlUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMa1l6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWVjlqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZWOXppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExrWnppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZWLURpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfazBWVi1UaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfazBWVi1qaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZWLXppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMFZWX0RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDIxIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9rMFZWX1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9rMFZWX2ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVlZfemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGtTamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVldBRGlBRWVLREFNRWpuT0xtUEEiIHg9IjM1IiB5PSIzMTAiIHdpZHRoPSIyMzEiIGhlaWdodD0iMjQ2Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZXUERpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIyMDA2IiBmb250SGVpZ2h0PSI4IiBmaWxsQ29sb3I9Ijg5MDUxODUiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWV1BUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVldQamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVldQemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVldRRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWV1FUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZXUWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWV1F6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTAyMyIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMFZXUkRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDE1Ij4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWV1JUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzAxNyIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExrZXppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZXUmppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVldSemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwMTciIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMa2ZEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWV1NEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZXU1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDE3IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb25MaXRlcmFsIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGtmVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVldTamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWV1N6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzAxNyIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExrZmppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZXVERpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVldUVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwMTciIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExrZnppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZXVGppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2swVldUemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9rMFZXVURpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9rMFZXVVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVldVamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGtlamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVldVemlBRWVLREFNRWpuT0xtUEEiIHg9IjE3NSIgeT0iLTQwIiBoZWlnaHQ9IjEwNiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWV1ZEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMjAwNiIgZm9udE5hbWU9IlNlZ29lIFVJIiBmaWxsQ29sb3I9Ijg5MDUxODUiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWV1ZUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVldWamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVldWemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVldXRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWV1dUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZXV2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWV1d6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTAyMyIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMFZXWERpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDE1Ij4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWV1hUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzAxNyIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb25MaXRlcmFsIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGtnVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVldYamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWV1h6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzAxNyIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb25MaXRlcmFsIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGtnamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVldZRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWV1lUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzAxNyIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb25MaXRlcmFsIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGtnemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVldZamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9rMFZXWXppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9rMFZXWkRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVldaVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGtnRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVldaamlBRWVLREFNRWpuT0xtUEEiIHg9IjMwMCIgeT0iLTM1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZXa1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIyMDEwIiBmb250SGVpZ2h0PSI4IiBmaWxsQ29sb3I9Ijg5MDUxODUiIHRyYW5zcGFyZW5jeT0iMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZXa2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWV2t6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWV2xEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWV2xUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZXbGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVldsemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWV21EaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJsYXlvdXRGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVldtVGlBRWVLREFNRWpuT0xtUEEiIGtleT0ibGF5b3V0RmlndXJlX3ZhbHVlIiB2YWx1ZT0iTWFudWFsX0xheW91dCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZXbWppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MDM1Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swVldtemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwMjAiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZXbkRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExra3ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZXblRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfazBWV25qaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfazBWV256aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZXb0RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMFZXb1RpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAyMSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfazBWV29qaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfazBWV296aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZXcERpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExra2ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZXcFRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyMDUiIHk9Ijk1IiB3aWR0aD0iMTM1IiBoZWlnaHQ9IjY2Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZYRlRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIyMDEwIiBmb250SGVpZ2h0PSI4IiBmaWxsQ29sb3I9Ijg5MDUxODUiIHRyYW5zcGFyZW5jeT0iMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZYRmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWEZ6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWEdEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWEdUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZYR2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlhHemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWEhEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJsYXlvdXRGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlhIVGlBRWVLREFNRWpuT0xtUEEiIGtleT0ibGF5b3V0RmlndXJlX3ZhbHVlIiB2YWx1ZT0iTWFudWFsX0xheW91dCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZYSGppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MDM1Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swVlhIemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwMjAiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZYSURpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDE4IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExrdlRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZYSVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfazBWWElqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfazBWWEl6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZYSkRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMFZYSlRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAyMSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfazBWWEpqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfazBWWEp6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZYS0RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExrdkRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZYS1RpQUVlS0RBTUVqbk9MbVBBIiB4PSIzNzUiIHk9Ijk1IiB3aWR0aD0iMTM1IiBoZWlnaHQ9IjY2Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZYaERpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIyMDEwIiBmb250SGVpZ2h0PSI4IiBmaWxsQ29sb3I9IjgwNDcwODUiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWGhUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlhoamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlhoemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlhpRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWGlUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZYaWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWGl6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTAzNSIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMFZYakRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDIwIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWWGpUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGs1RGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlhqamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWWGp6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGs2RGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlhrRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBWWGtUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2swVlhramlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2swVlhremlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWWGxEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfazBWWGxUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMjEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9rMFZYbGppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfazBWWGx6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfazBWWG1EaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZYbVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExrNGppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZYbWppQUVlS0RBTUVqbk9MbVBBIiB4PSI3NDUiIHk9IjQ1NSIgd2lkdGg9IjI0NiIgaGVpZ2h0PSI5NiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWWG16aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMjAxMCIgZm9udEhlaWdodD0iOCIgZmlsbENvbG9yPSI4MDQ3MDg1IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlhuRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZYblRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZYbmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZYbnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlhvRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWG9UaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVlhvamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUwMzUiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfazBWWG96aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNzAyMCI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlhwRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExrN2ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZYcFRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlhwamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExrOGppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZYcHppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlhxRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExrOWppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZYcVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2swVlhxamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9rMFZYcXppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9rMFZYckRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVlhyVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swVlhyamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDIxIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBWWHJ6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2swVlhzRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2swVlhzVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWWHNqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMazdEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWWHN6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMzAwIiB5PSI0NTAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlh0RGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjIwMTAiIGZvbnRIZWlnaHQ9IjgiIGZpbGxDb2xvcj0iODA0NzA4NSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZYdFRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWHRqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWHR6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWHVEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZYdVRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlh1amlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZYdXppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MDM1Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swVlh2RGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwMjAiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZYdlRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMa19EaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWHZqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZYdnppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbEFEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWHdEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZYd1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbEJEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWHdqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9rMFZYd3ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfazBWWHhEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfazBWWHhUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZYeGppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMFZYeHppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAyMSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2swVlh5RGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9rMFZYeVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9rMFZYeWppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVlh5emlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGstamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVlh6RGlBRWVLREFNRWpuT0xtUEEiIHg9IjUzNSIgeT0iNTk1IiB3aWR0aD0iMjAxIiBoZWlnaHQ9IjExMSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWWHpUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMjAxMCIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWHpqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlh6emlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlgwRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlgwVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWDBqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZYMHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWDFEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTAzNSIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMFZYMVRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDIwIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWWDFqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzAxOCIgZm9udE5hbWU9IlVidW50dSIgZm9udEhlaWdodD0iMTEiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsQ1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZYMXppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlgyRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwMTgiIGZvbnROYW1lPSJVYnVudHUiIGZvbnRIZWlnaHQ9IjExIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbENqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWDJUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9rMFZYMmppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfazBWWDJ6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfazBWWDNEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZYM1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMFZYM2ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDIxIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBWWDN6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2swVlg0RGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2swVlg0VGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWWDRqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbENEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWWDR6aUFFZUtEQU1Fam5PTG1QQSIgeD0iNjQwIiB5PSI3NjUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlg1RGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjIwMTAiIGZvbnRIZWlnaHQ9IjgiIGZpbGxDb2xvcj0iMTI2MjE3NTIiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWDVUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlg1amlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlg1emlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlg2RGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWDZUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZYNmppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWDZ6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTAzNSIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMFZYN0RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDIwIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWWDdUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWDdqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZYN3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMTI0Ii8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsRERpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZYOERpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlg4VGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlg4amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWDh6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjEyNCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbERqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWDlEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZYOVRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZYOWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlg5emlBRWVLREFNRWpuT0xtUEEiIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIxMjQiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGxFRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlgtRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBWWC1UaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2swVlgtamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2swVlgtemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWWF9EaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfazBWWF9UaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMjEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9rMFZYX2ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfazBWWF96aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfazBWWUFEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZZQVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsQ3ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZZQWppQUVlS0RBTUVqbk9MbVBBIiB4PSIzNSIgeT0iMTk1IiBoZWlnaHQ9IjgyIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX2swVllBemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJzdHlsZTpQYXB5cnVzVmlld1N0eWxlIiB4bWk6aWQ9Il9qQklUa0g3YkVlU0Z5TmJuTFlEQ2t3Ij4KKyAgICAgIDxvd25lciB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMajRqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3pXQ3ZMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGo0amlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9rMFZZQkRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSJQYXB5cnVzVU1MQ2xhc3NEaWFncmFtIiBuYW1lPSJJbnRlcmZhY2VzRGlhZ3JhbSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9rMFZZQlRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfakJJVGtYN2JFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGxFamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6OUV2TF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsRWppQUVlS0RBTUVqbk9MbVBBIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfazBWWUJqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJTdWJTeXN0ZW1zRGlhZ3JhbSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9rMFZZQnppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfakJJVGtuN2JFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGxFemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0JmTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsRXppQUVlS0RBTUVqbk9MbVBBIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfazBWWUNEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJQMi1Qcm94aW1ldHJpZSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWWUNUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVllDamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZQ3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZZRERpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZRFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVllEamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWUR6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9tQ0wyUUtFR0VlS05hNkVmR0FTU1d3IiBzb3VyY2U9IlBhcHlydXNIeXBlckxpbmtfRGlhZ3JhbSIgcmVmZXJlbmNlcz0iX2swVmFZamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX21DTDJRYUVHRWVLTmE2RWZHQVNTV3ciIGtleT0idG9vbHRpcF90ZXh0IiB2YWx1ZT0iV2lmaUJvdCIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX21DTDJRcUVHRWVLTmE2RWZHQVNTV3ciIGtleT0iZGlhZ3JhbV9uYW1lIiB2YWx1ZT0iV2lmaUJvdCIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX21DTDJRNkVHRWVLTmE2RWZHQVNTV3ciIGtleT0iaXNfZGVmYXVsdF9uYXZpZ2F0aW9uIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZZRkRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swVllGVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzMiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZZRmppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVllGemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWUdEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZZR1RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWUdqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVllHemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVllIRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVllIVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swVllIamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBWWUh6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWWUlEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWWUlUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVllJamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZSXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZZSkRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZSlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVllKamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWUp6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZZS0RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWUtUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWUtqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVllLemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZTERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWUxUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVllMamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVllMemlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMjEiIHk9IjUiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZZTURpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWU1UaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExta3ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZZTWppQUVlS0RBTUVqbk9MbVBBIiB4PSIzODAiIHk9IjEwNCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZZTXppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWU5EaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVllOVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVllOamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVllOemlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWU9EaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZT1RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVllPamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZT3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZUERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWVBUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVllQamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZUHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWVFEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWVFUaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEyMSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVllRamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZZUXppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1semlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVllSRGlBRWVLREFNRWpuT0xtUEEiIHg9IjM4MCIgeT0iMTQ0IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVllSVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZZUmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWVJ6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWVNEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWVNUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZZU2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVllTemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWVREaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVllUVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVllUamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZVHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWVVEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVllVVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZZVWppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZZVXppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVllWRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZZVlRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1temlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVllWamlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iMzAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVllWemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZZV0RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWVdUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWVdqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWVd6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZZWERpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVllYVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWVhqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVllYemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVllZRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZWVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWVlqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVllZemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZZWkRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZZWlRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVllaamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZZWnppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1uemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVllhRGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iNjAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVllhVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZZYWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWWF6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWWJEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWWJUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZZYmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlliemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWWNEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlljVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlljamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZY3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWWREaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVllkVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZZZGppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZZZHppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVlllRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZZZVRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1vemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVlllamlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iOTAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlllemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZZZkRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWWZUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWWZqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWWZ6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZZZ0RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVllnVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWWdqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVllnemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlloRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZaFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWWhqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlloemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZZaURpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZZaVRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVllpamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZZaXppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1wemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVllqRGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMSIgeT0iMTI5IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbTJqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVllqVGlBRWVLREFNRWpuT0xtUEEiIHg9IjMyMCIgeT0iMzAiIHdpZHRoPSIzOTEiIGhlaWdodD0iMTk2Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVllqamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNzAiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVllqemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWWtEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZZa1RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWWtqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVllremlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVllsRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVllsVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swVllsamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBWWWx6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWWW1EaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWWW1UaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZZbWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWW16aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWW5EaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWW5UaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZZbmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlluemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZZb0RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZZb1RpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAzIiB5PSI3Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWW9qaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWW96aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtc0RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZZcERpQUVlS0RBTUVqbk9MbVBBIiB4PSIyODMiIHk9IjQ1Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZZcFRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVllwamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZcHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZZcURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZcVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVllxamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWXF6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVllyRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVllyVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWXJqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWXJ6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtdERpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZZc0RpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTEiIHk9IjI3IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVllzVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZZc2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWXN6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWXREaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWXRUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZZdGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVll0emlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWXVEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVll1VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVll1amlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZdXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVll2RGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZdlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWXZqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWXZ6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZZd0RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZZd1RpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG11RGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVll3amlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iNzQiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtMnppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWWXd6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMzIwIiB5PSIzNDUiIHdpZHRoPSIyOTMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWWXhEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA3MCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWXhUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZeGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVll4emlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZeURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWXlUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWXlqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWXl6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfazBWWXpEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9rMFZZelRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZZemppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZZenppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlkwRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZMFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZZMGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZMHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlkxRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWTFUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVlkxamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlkxemlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWTJEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWTJUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtdXppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZZMmppQUVlS0RBTUVqbk9MbVBBIiB4PSItMTEiIHk9IjM0IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlkyemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWTNEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlkzVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlkzamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlkzemlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWTREaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZNFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWTRqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWTR6aUFFZUtEQU1Fam5PTG1QQSIgeD0iLTE1MSIgeT0iLTE1Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWTVEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWTVUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtdnppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZZNWppQUVlS0RBTUVqbk9MbVBBIiB4PSIxNjYiIHk9IjQwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZZNXppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlk2RGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZNlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZZNmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZNnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlk3RGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWTdUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZZN2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWTd6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWThEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlk4VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWThqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlk4emlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZZOURpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZZOVRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVlk5amlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlk5emlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbXd6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWWS1EaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTExIiB5PSI2MSIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG0zRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZZLVRpQUVlS0RBTUVqbk9MbVBBIiB4PSIxNDUiIHk9IjIzMCIgd2lkdGg9IjE3NiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9rMFZZLWppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVlktemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZZX0RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZZX1RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZZX2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWV96aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZaQURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZaQVRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWkFqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWkF6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWkJEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZaQlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZaQmppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZaQnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZaQ0RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVlpDVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWkNqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMTUiIHk9Ii05Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVlpDemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlpERGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG14amlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWWkRUaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTExIiB5PSI5OCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWWkRqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWkR6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWkVEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlpFVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWkVqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWkV6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlpGRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlpGVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlpGamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWkZ6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWkdEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWkdUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWkdqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZaR3ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWkhEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZaSFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNDQiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlpIamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItNCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZaSHppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZaSURpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExteWppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVlpJVGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMSIgeT0iMTI4IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZaSWppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZaSXppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZaSkRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWkpUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZaSmppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZaSnppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWktEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWktUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWktqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZaS3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZaTERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZaTFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZaTGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVlpMemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWk1EaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii00Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVlpNVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlpNamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG16amlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWWk16aUFFZUtEQU1Fam5PTG1QQSIgeD0iLTExIiB5PSIxNTgiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlpORGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlpOVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlpOamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZaTnppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlpPRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlpPVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZaT2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZaT3ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZaUERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlpQVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlpQamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlpQemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlpRRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWlFUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZaUWppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTUiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWlF6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWlJEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbTBqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZaUlRpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTEiIHk9IjE5NyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWWlJqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWlJ6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWlNEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlpTVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWlNqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWlN6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlpURGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlpUVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlpUamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWlR6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWlVEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWlVUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWlVqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZaVXppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlpWRGlBRWVLREFNRWpuT0xtUEEiIHg9IjIwIiB5PSItNSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZaVlRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZaVmppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtMWppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVlpWemlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iNDEyIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZaV0RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWldUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWldqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlpXemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWlhEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWlhUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlpYamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlpYemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlpZRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWllUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWllqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlpZemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlpaRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWlpUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZaWmppQUVlS0RBTUVqbk9MbVBBIiB4PSIyMCIgeT0iLTQiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWlp6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZaYURpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtM1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVlphVGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iMzA0IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZaYWppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWmF6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWmJEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlpiVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWmJqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWmJ6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlpjRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlpjVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlpjamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWmN6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWmREaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlpkVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlpkamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWmR6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZaZURpQUVlS0RBTUVqbk9MbVBBIiB4PSIyMCIgeT0iLTEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWmVUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZaZWppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtM2ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVlplemlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iMzMxIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZaZkRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWmZUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWmZqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlpmemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWmdEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWmdUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlpnamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlpnemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlpoRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWmhUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWmhqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlpoemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlppRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWmlUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZaaWppQUVlS0RBTUVqbk9MbVBBIiB4PSItOTYiIHk9Ii05Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVlppemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWmpEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbTN6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZaalRpQUVlS0RBTUVqbk9MbVBBIiB4PSI4MjYiIHk9IjE3NCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWWmpqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlpqemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlprRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZaa1RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlpramlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlpremlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZabERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZabFRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZabGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlpsemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlptRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZabVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZabWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVlptemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWm5EaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTk2IiB5PSItOSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZablRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlpuamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG00RGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWWm56aUFFZUtEQU1Fam5PTG1QQSIgeD0iODI2IiB5PSIyMTQiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlpvRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZab1RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZab2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWm96aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZacERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZacFRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWnBqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWnB6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWnFEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZacVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZacWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWnF6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWnJEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZaclRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlpyamlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xNjYiIHk9Ii0xMiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZacnppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlpzRGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG00VGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWWnNUaUFFZUtEQU1Fam5PTG1QQSIgeD0iODI1IiB5PSIzMDgiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVlpzamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZac3ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZadERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWnRUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZadGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZadHppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWnVEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWnVUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWnVqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZadXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZadkRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWnZUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWnZqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZadnppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlp3RGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMDMiIHk9Ii00Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVlp3VGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWndqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbTRqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZad3ppQUVlS0RBTUVqbk9MbVBBIiB4PSI4MjUiIHk9IjQyOCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWWnhEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWnhUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWnhqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlp4emlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWnlEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWWnlUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlp5amlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVlp5emlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlp6RGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWnpUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWWnpqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlp6emlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVlowRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWjBUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZaMGppQUVlS0RBTUVqbk9MbVBBIiB4PSIxOSIgeT0iLTExIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVlowemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWjFEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbTR6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZaMVRpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjQ1MCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExteERpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZaMWppQUVlS0RBTUVqbk9MbVBBIiB4PSIxMTAiIHk9Ii0xNSIgd2lkdGg9IjgzNiIgaGVpZ2h0PSI1NTEiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfazBWWjF6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX2pCSVRrMzdiRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExta0RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBreldBUExfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbWtEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMFZaMkRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMFZaUmppQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMFZZcFRpQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWjJUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVloyamlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWjJ6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlozRGlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVlozVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZaM2ppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVlozemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZaNERpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBWWjRUaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbTVEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBWWjRqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swVlo0emlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMS4wLDAuNDc1KSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swVlo1RGlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMC4wLDAuNDc1KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swVlo1VGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2swVlpORGlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swVlllemlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZaNWppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWjV6aUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZaNkRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWjZUaUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWjZqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlo2emlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWjdEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlo3VGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMFZaN2ppQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtNnppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMFZaN3ppQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlsxMCwgLTEsIC0zMTUsIDBdJFszMjUsIC0xLCAwLCAwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swVlo4RGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2swVlpJamlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swVllhVGlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZaOFRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWjhqaUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZaOHppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWWjlEaUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWjlUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlo5amlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWWjl6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVlotRGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMFZaLVRpQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtOGppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMFZaLWppQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlsxMSwgNywgLTMxNSwgMF0kWzMxNiwgNywgLTEwLCAwXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swVlotemlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMC40NSwwLjIpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBWWl9EaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBWWkRqaUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBWWVZ6aUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVlpfVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZaX2ppQUVlS0RBTUVqbk9MbVBBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVlpfemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZhQURpQUVlS0RBTUVqbk9MbVBBIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZhQVRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYUFqaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZhQXppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYUJEaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swVmFCVGlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG0tVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swVmFCamlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWzEwLCAtMiwgLTMxNSwgLTNdJFszMjEsIC05LCAtNCwgLTEwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swVmFCemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2swVllfRGlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swVllSVGlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZhQ0RpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYUNUaUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZhQ2ppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYUN6aUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYUREaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmFEVGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYURqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmFEemlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMFZhRURpQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuQURpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMFZhRVRpQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlsxMCwgLTEsIC0zMTUsIC0yXSRbMzIyLCAtOSwgLTMsIC0xMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMFZhRWppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMFZaV0RpQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMFZZenppQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYUV6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmFGRGlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYUZUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmFGamlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmFGemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZhR0RpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmFHVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZhR2ppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBWYUd6aUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbkJ6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBWYUhEaUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMTMsIDcsIC0xNDAsIDBdJFsxNjMsIDcsIDEwLCAwXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swVmFIVGlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMC4zNSwwLjIpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBWYUhqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBWWmFqaUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBWWTV6aUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmFIemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZhSURpQUVlS0RBTUVqbk9MbVBBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmFJVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZhSWppQUVlS0RBTUVqbk9MbVBBIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZhSXppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYUpEaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZhSlRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYUpqaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swVmFKemlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG5EamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swVmFLRGlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWzEwLCA0LCAtMTQwLCAzXSRbMTUyLCAxMSwgMiwgMTBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBWYUtUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBWWUlUaUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBWWmZEaUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmFLamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZhS3ppQUVlS0RBTUVqbk9MbVBBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmFMRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZhTFRpQUVlS0RBTUVqbk9MbVBBIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZhTGppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYUx6aUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZhTURpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYU1UaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swVmFNamlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG5GVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swVmFNemlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWzEwLCAwLCAtODUsIDFdJFs5MCwgOSwgLTUsIDEwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swVmFORGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2swVllNemlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swVlpqamlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZhTlRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYU5qaUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZhTnppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYU9EaUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYU9UaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmFPamlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYU96aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmFQRGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMFZhUFRpQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuSERpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMFZhUGppQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlsxMCwgLTMsIC04NSwgLTJdJFs5MiwgLTExLCAtMywgLTEwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swVmFQemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2swVlltVGlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swVlpzamlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZhUURpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYVFUaUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZhUWppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYVF6aUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYVJEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmFSVGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYVJqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmFSemlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMFZhU0RpQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuSXppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMFZhU1RpQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlsxNiwgLTMsIC0zODgsIC0xXSRbNDAyLCAtMTIsIC0yLCAtMTBdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfazBWYVNqaUFFZUtEQU1Fam5PTG1QQSIgaWQ9IigwLjIsMC41NSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMFZhU3ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMFZZMnppQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMFZab0RpQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYVREaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmFUVGlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYVRqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmFUemlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmFVRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZhVVRpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmFVamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZhVXppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBWYVZEaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbktqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBWYVZUaUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMTAsIDAsIC01MDYsIC0xN10kWzUyMCwgMTcsIDQsIDBdIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfazBWYVZqaUFFZUtEQU1Fam5PTG1QQSIgaWQ9IigwLjgsMC41KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swVmFWemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2swVlp4RGlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swVllzVGlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZhV0RpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYVdUaUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZhV2ppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYVd6aUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYVhEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmFYVGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYVhqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmFYemlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMFZhWURpQUVlS0RBTUVqbk9MbVBBIiBmb250TmFtZT0iU2Vnb2UgVUkiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG5NVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swVmFZVGlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWzEwLCAtMSwgLTMxNSwgMF0kWzM5LCAtMSwgLTI4NiwgMF0kWzMxNSwgLTEsIC0xMCwgMF0iLz4KKyAgICA8L2VkZ2VzPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX2swVmFZamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IkNvbXBvc2l0ZVN0cnVjdHVyZSIgbmFtZT0iV2lmaUJvdCIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWYVl6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlNlZ29lIFVJIiBmb250SGVpZ2h0PSIxMiIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZhWkRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYVpUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYVpqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYVp6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZhYURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmFhVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRjhoSUVLRUxFZUtMVXFYOUlKcTJHZyIgc291cmNlPSJQYXB5cnVzSHlwZXJMaW5rX0RpYWdyYW0iIHJlZmVyZW5jZXM9Il9yYzUxc0tFS0VlS0xVcVg5SUpxMkdnIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9GOGhJRWFFTEVlS0xVcVg5SUpxMkdnIiBrZXk9InRvb2x0aXBfdGV4dCIgdmFsdWU9IldpZmlib3RFbnZpcm9ubWVudERpYWdyYW0iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9GOGhJRXFFTEVlS0xVcVg5SUpxMkdnIiBrZXk9ImRpYWdyYW1fbmFtZSIgdmFsdWU9IldpZmlib3RFbnZpcm9ubWVudERpYWdyYW0iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9GOGhJRTZFTEVlS0xVcVg5SUpxMkdnIiBrZXk9ImlzX2RlZmF1bHRfbmF2aWdhdGlvbiIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYWFqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMFZhYXppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWYWJEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA3MCIgZm9udE5hbWU9IlNlZ29lIFVJIiBmaWxsQ29sb3I9IjE1MDUzNzk2IiBncmFkaWVudD0iMTY3NzcyMTUsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZhYlRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmFiamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYWJ6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmFjRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZhY1RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZhY2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYWN6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJQYXB5cnVzSHlwZXJMaW5rX0RpYWdyYW0iIHJlZmVyZW5jZXM9Il9rMGVlMERpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYWREaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJ0b29sdGlwX3RleHQiIHZhbHVlPSJQYXRoUGxhbm5lckE0Ii8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmFkVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlhZ3JhbV9uYW1lIiB2YWx1ZT0iUGF0aFBsYW5uZXJBNCIvPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZhZGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImlzX2RlZmF1bHRfbmF2aWdhdGlvbiIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYWR6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNiI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfWWtQZjRLRUZFZUtOYTZFZkdBU1NXdyIgc291cmNlPSJQYXB5cnVzSHlwZXJMaW5rX0RpYWdyYW0iIHJlZmVyZW5jZXM9Il9rMGVlMERpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9Za1BmNGFFRkVlS05hNkVmR0FTU1d3IiBrZXk9InRvb2x0aXBfdGV4dCIgdmFsdWU9IkE0LVBhdGhQbGFubmVyIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWWtQZjRxRUZFZUtOYTZFZkdBU1NXdyIga2V5PSJkaWFncmFtX25hbWUiIHZhbHVlPSJBNC1QYXRoUGxhbm5lciIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1lrUGY0NkVGRWVLTmE2RWZHQVNTV3ciIGtleT0iaXNfZGVmYXVsdF9uYXZpZ2F0aW9uIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swVmFlRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBWYWVUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWYWVqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWYWV6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmFmRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZhZlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZhZmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZhZnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmFnRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYWdUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmFnamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYWd6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUDh5VllLQldFZUtZNjYteFlUNk9DdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjIwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmFoVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYWhqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmFoemlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb0ZUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWYWlEaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIyNSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWYWlUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmFpamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZhaXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZhakRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZhalRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmFqamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYWp6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmFrRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYWtUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUkszU0VLQldFZUtZNjYteFlUNk9DdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjIwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmFremlBRWVLREFNRWpuT0xtUEEiIHg9Ii01NiIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmFsRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZhbFRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9HVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmFsamlBRWVLREFNRWpuT0xtUEEiIHg9IjE5NiIgeT0iMTEwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZhbHppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYW1EaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmFtVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmFtamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmFtemlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYW5EaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZhblRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYW5qaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZhbnppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9RWWdCQUtCV0VlS1k2Ni14WVQ2T0N3IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYW9UaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTg2Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYW9qaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmFvemlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb0hUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWYXBEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMTk2IiB5PSI1NSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWYXBUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZhcGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYXB6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYXFEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYXFUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZhcWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmFxemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZhckRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmFyVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1F6TEswS0JXRWVLWTY2LXhZVDZPQ3ciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyMCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZhcnppQUVlS0RBTUVqbk9MbVBBIiB4PSItMzYiIHk9IjUiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZhc0RpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYXNUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvSWppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZhc2ppQUVlS0RBTUVqbk9MbVBBIiB4PSIxOTYiIHk9Ijg1Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGxGVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZhc3ppQUVlS0RBTUVqbk9MbVBBIiB4PSIxMzIwIiB5PSIyNzAiIHdpZHRoPSIyMDYiIGhlaWdodD0iMTM2Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmF0RGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJTZWdvZSBVSSIgZmlsbENvbG9yPSIxNTA1Mzc5NiIgZ3JhZGllbnQ9IjE2Nzc3MjE1LCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYXRUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZhdGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmF0emlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZhdURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYXVUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYXVqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2JZMXVjS0VGRWVLTmE2RWZHQVNTV3ciIHNvdXJjZT0iUGFweXJ1c0h5cGVyTGlua19EaWFncmFtIiByZWZlcmVuY2VzPSJfazBlZm9EaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2JZMXVjYUVGRWVLTmE2RWZHQVNTV3ciIGtleT0idG9vbHRpcF90ZXh0IiB2YWx1ZT0iQTUtTWlzc2lvbkdlbmVyYXRvciIvPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9iWTF1Y3FFRkVlS05hNkVmR0FTU1d3IiBrZXk9ImRpYWdyYW1fbmFtZSIgdmFsdWU9IkE1LU1pc3Npb25HZW5lcmF0b3IiLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYlkxdWM2RUZFZUtOYTZFZkdBU1NXdyIga2V5PSJpc19kZWZhdWx0X25hdmlnYXRpb24iIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYXV6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNiI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMHFpNHNLRUVFZUtOYTZFZkdBU1NXdyIgc291cmNlPSJQYXB5cnVzSHlwZXJMaW5rX0RpYWdyYW0iIHJlZmVyZW5jZXM9Il9rMGVmb0RpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wcWk0c2FFRUVlS05hNkVmR0FTU1d3IiBrZXk9InRvb2x0aXBfdGV4dCIgdmFsdWU9IkE1LU1pc3Npb25HZW5lcmF0b3IiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wcWk0c3FFRUVlS05hNkVmR0FTU1d3IiBrZXk9ImRpYWdyYW1fbmFtZSIgdmFsdWU9IkE1LU1pc3Npb25HZW5lcmF0b3IiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wcWk0czZFRUVlS05hNkVmR0FTU1d3IiBrZXk9ImlzX2RlZmF1bHRfbmF2aWdhdGlvbiIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMFZhdkRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2swVmF2VGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmF2amlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmF2emlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZhd0RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYXdUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYXdqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYXd6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZheERpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmF4VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZheGppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmF4emlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1J3SDdRS0JXRWVLWTY2LXhZVDZPQ3ciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyMCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZheVRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmF5amlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZheXppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG4tRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmF6RGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMSIgeT0iMzQiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsRmppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWYXpUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMTYyMCIgeT0iMjkwIiB3aWR0aD0iMjExIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmF6amlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJTZWdvZSBVSSIgZmlsbENvbG9yPSIxNTA1Mzc5NiIgZ3JhZGllbnQ9IjE2Nzc3MjE1LCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYXp6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZhMERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmEwVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZhMGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYTB6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYTFEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19XM0c0S0VERWVLTmE2RWZHQVNTV3ciIHNvdXJjZT0iUGFweXJ1c0h5cGVyTGlua19EaWFncmFtIiByZWZlcmVuY2VzPSJfazBWaEV6aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19XM0c0YUVERWVLTmE2RWZHQVNTV3ciIGtleT0idG9vbHRpcF90ZXh0IiB2YWx1ZT0iTmF2aWdhdG9yQTMiLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX1czRzRxRURFZUtOYTZFZkdBU1NXdyIga2V5PSJkaWFncmFtX25hbWUiIHZhbHVlPSJBMy1OYXZpZ2F0b3IiLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX1czRzQ2RURFZUtOYTZFZkdBU1NXdyIga2V5PSJpc19kZWZhdWx0X25hdmlnYXRpb24iIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYTJUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNiI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfLUdaa2tLRURFZUtOYTZFZkdBU1NXdyIgc291cmNlPSJQYXB5cnVzSHlwZXJMaW5rX0RpYWdyYW0iIHJlZmVyZW5jZXM9Il9rMFZoRXppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tR1pra2FFREVlS05hNkVmR0FTU1d3IiBrZXk9InRvb2x0aXBfdGV4dCIgdmFsdWU9IkEzLU5hdmlnYXRvciIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXy1HWmtrcUVERWVLTmE2RWZHQVNTV3ciIGtleT0iZGlhZ3JhbV9uYW1lIiB2YWx1ZT0iQTMtTmF2aWdhdG9yIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfLUdaa2s2RURFZUtOYTZFZkdBU1NXdyIga2V5PSJpc19kZWZhdWx0X25hdmlnYXRpb24iIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfazBWYTJqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9rMFZhMnppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZhM0RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZhM1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmEzamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZhM3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZhNERpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZhNFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmE0amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYTR6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmE1RGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYTVUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT1dSRGdLQldFZUtZNjYteFlUNk9DdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjIwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmE1emlBRWVLREFNRWpuT0xtUEEiIHg9Ii00MSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmE2RGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZhNlRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9WemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmE2amlBRWVLREFNRWpuT0xtUEEiIHg9IjEzMSIgeT0iMzUiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmE2emlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYTdEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmE3VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmE3amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmE3emlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYThEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZhOFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYThqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZhOHppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9OeXBaRUtCV0VlS1k2Ni14WVQ2T0N3IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYTlUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZhOWppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYTl6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvV3ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZhLURpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjI1IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmEtVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYS1qaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmEtemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmFfRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmFfVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYV9qaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZhX3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYkFEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZiQVRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9PeC12SUtCV0VlS1k2Ni14WVQ2T0N3IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYkF6aUFFZUtEQU1Fam5PTG1QQSIgeD0iLTM2IiB5PSI1Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYkJEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmJCVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb1lEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWYkJqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMTMxIiB5PSI2NSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWYkJ6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZiQ0RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYkNUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYkNqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYkN6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZiRERpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmJEVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZiRGppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmJEemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1BKWDdjS0JXRWVLWTY2LXhZVDZPQ3ciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyMCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZiRVRpQUVlS0RBTUVqbk9MbVBBIiB4PSItNTEiIHk9IjUiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZiRWppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYkV6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvWVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZiRkRpQUVlS0RBTUVqbk9MbVBBIiB4PSIxMzEiIHk9IjkwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZiRlRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmJGamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZiRnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZiR0RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZiR1RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmJHamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYkd6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmJIRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYkhUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUGY0VzhLQldFZUtZNjYteFlUNk9DdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjIwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmJIemlBRWVLREFNRWpuT0xtUEEiIHg9Ii01MSIgeT0iNSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmJJRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZiSVRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9ZamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmJJamlBRWVLREFNRWpuT0xtUEEiIHg9IjEzMSIgeT0iMTIwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGxGemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZiSXppQUVlS0RBTUVqbk9MbVBBIiB4PSIxMDEwIiB5PSIyNjUiIHdpZHRoPSIxNDEiIGhlaWdodD0iMTQ2Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmJKRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJTZWdvZSBVSSIgZmlsbENvbG9yPSIxNTA1Mzc5NiIgZ3JhZGllbnQ9IjE2Nzc3MjE1LCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYkpUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZiSmppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmJKemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZiS0RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYktUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYktqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2NseDJNS0JXRWVLWTY2LXhZVDZPQ3ciIHNvdXJjZT0iUGFweXJ1c0h5cGVyTGlua19EaWFncmFtIiByZWZlcmVuY2VzPSJfazBWZm9qaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2NseDJNYUJXRWVLWTY2LXhZVDZPQ3ciIGtleT0idG9vbHRpcF90ZXh0IiB2YWx1ZT0iUGlsb3RBMiIvPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9jbHgyTXFCV0VlS1k2Ni14WVQ2T0N3IiBrZXk9ImRpYWdyYW1fbmFtZSIgdmFsdWU9IkEyLVBpbG90Ii8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2NseDJNNkJXRWVLWTY2LXhZVDZPQ3ciIGtleT0iaXNfZGVmYXVsdF9uYXZpZ2F0aW9uIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmJMemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swVmJNRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBWYk1UaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWYk1qaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWYk16aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZiTkRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYk5UaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYk5qaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYk56aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZiT0RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmJPVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZiT2ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmJPemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX05WU3VzS0JXRWVLWTY2LXhZVDZPQ3ciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyMCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZiUFRpQUVlS0RBTUVqbk9MbVBBIiB4PSItNjYiIHk9IjUiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZiUGppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYlB6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvckRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZiUURpQUVlS0RBTUVqbk9MbVBBIiB4PSIxOTYiIHk9IjQwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZiUVRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmJRamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZiUXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZiUkRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZiUlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmJSamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYlJ6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmJTRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYlNUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfU3RxaGtLQldFZUtZNjYteFlUNk9DdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjIwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmJTemlBRWVLREFNRWpuT0xtUEEiIHg9IjIwIiB5PSI1Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYlREaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmJUVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb3NEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWYlRqaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIyMzUiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmJhemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYmJEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmJiVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmJiamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmJiemlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYmNEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZiY1RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYmNqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZiY3ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NbHd2TUtCV0VlS1k2Ni14WVQ2T0N3IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYmRUaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTUxIiB5PSI1Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYmRqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmJkemlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb3VEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWYmVEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMTk2IiB5PSIxNDAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWYmVUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZiZWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYmV6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYmZEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYmZUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZiZmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmJmemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZiZ0RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmJnVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01Na3pJS0JXRWVLWTY2LXhZVDZPQ3ciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyMCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZiZ3ppQUVlS0RBTUVqbk9MbVBBIiB4PSItMzYiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZiaERpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYmhUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvdVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZiaGppQUVlS0RBTUVqbk9MbVBBIiB4PSIxOTYiIHk9IjI5NSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsR0RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWYmh6aUFFZUtEQU1Fam5PTG1QQSIgeD0iNTA1IiB5PSIyMDAiIHdpZHRoPSIyMDYiIGhlaWdodD0iMzQxIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmJpRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJTZWdvZSBVSSIgZmlsbENvbG9yPSIxNTA1Mzc5NiIgZ3JhZGllbnQ9IjE2Nzc3MjE1LCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYmlUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZiaWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmJpemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZiakRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYmpUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYmpqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzhrNEFFS0VHRWVLTmE2RWZHQVNTV3ciIHNvdXJjZT0iUGFweXJ1c0h5cGVyTGlua19EaWFncmFtIiByZWZlcmVuY2VzPSJfazBWZkdEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzhrNEFFYUVHRWVLTmE2RWZHQVNTV3ciIGtleT0idG9vbHRpcF90ZXh0IiB2YWx1ZT0iU2Vydm9pbmdzQTEiLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOGs0QUVxRUdFZUtOYTZFZkdBU1NXdyIga2V5PSJkaWFncmFtX25hbWUiIHZhbHVlPSJBMS1TZXJ2b2luZ3MiLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOGs0QUU2RUdFZUtOYTZFZkdBU1NXdyIga2V5PSJpc19kZWZhdWx0X25hdmlnYXRpb24iIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYmt6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNiI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfN1c4TlVLRUdFZUtOYTZFZkdBU1NXdyIgc291cmNlPSJQYXB5cnVzSHlwZXJMaW5rX0RpYWdyYW0iIHJlZmVyZW5jZXM9Il9rMFZmR0RpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il83VzhOVWFFR0VlS05hNkVmR0FTU1d3IiBrZXk9InRvb2x0aXBfdGV4dCIgdmFsdWU9IkExLVNlcnZvaW5ncyIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzdXOE5VcUVHRWVLTmE2RWZHQVNTV3ciIGtleT0iZGlhZ3JhbV9uYW1lIiB2YWx1ZT0iQTEtU2Vydm9pbmdzIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfN1c4TlU2RUdFZUtOYTZFZkdBU1NXdyIga2V5PSJpc19kZWZhdWx0X25hdmlnYXRpb24iIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swVmJsRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBWYmxUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWYmxqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWYmx6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZibURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYm1UaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYm1qaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYm16aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZibkRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmJuVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZibmppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmJuemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1NWOXpRS0JXRWVLWTY2LXhZVDZPQ3ciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyMCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZib1RpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTc2IiB5PSItOCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmJvamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZib3ppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG8temlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmJwRGlBRWVLREFNRWpuT0xtUEEiIHg9IjE1MSIgeT0iMjgiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbEdUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmJwVGlBRWVLREFNRWpuT0xtUEEiIHg9IjgwIiB5PSI0MTAiIHdpZHRoPSIxNjEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWYnBqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA3MCIgZm9udEhlaWdodD0iOCIgZmlsbENvbG9yPSI4MDQ3MDg1IiBncmFkaWVudD0iMTY3NzcyMTUsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZicHppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmJxRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYnFUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmJxamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZicXppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZickRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcFNWX2NLRUdFZUtOYTZFZkdBU1NXdyIgc291cmNlPSJQYXB5cnVzSHlwZXJMaW5rX0RpYWdyYW0iIHJlZmVyZW5jZXM9Il9rMGVpY0RpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcFNWX2NhRUdFZUtOYTZFZkdBU1NXdyIga2V5PSJ0b29sdGlwX3RleHQiIHZhbHVlPSJQMVNlbnNvcnMiLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcFNWX2NxRUdFZUtOYTZFZkdBU1NXdyIga2V5PSJkaWFncmFtX25hbWUiIHZhbHVlPSJQMS1TZW5zb3JzIi8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3BTVl9jNkVHRWVLTmE2RWZHQVNTV3ciIGtleT0iaXNfZGVmYXVsdF9uYXZpZ2F0aW9uIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmJzVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swVmJzamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBWYnN6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWYnREaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWYnRUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZidGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYnR6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYnVEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYnVUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZidWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmJ1emlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZidkRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmJ2VGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3ZQUjlZS0JWRWVLWTY2LXhZVDZPQ3ciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyMCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZidnppQUVlS0RBTUVqbk9MbVBBIiB4PSItMTU2IiB5PSI2Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYndEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmJ3VGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbmRqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWYndqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUxIiB5PSIyNSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWYnd6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZieERpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYnhUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYnhqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYnh6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZieURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmJ5VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZieWppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmJ5emlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzNob09FS0JWRWVLWTY2LXhZVDZPQ3ciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyMCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZielRpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTU2IiB5PSI2Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWYnpqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmJ6emlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbmVqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWYjBEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUxIiB5PSI1NSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWYjBUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZiMGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYjB6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYjFEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYjFUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZiMWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmIxemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZiMkRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmIyVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzFjYU9BS0JWRWVLWTY2LXhZVDZPQ3ciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyMCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZiMnppQUVlS0RBTUVqbk9MbVBBIiB4PSItODEiIHk9IjYiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZiM0RpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYjNUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuZmppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZiM2ppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNTEiIHk9IjI3MCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWYjN6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZiNERpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYjRUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYjRqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYjR6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZiNURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmI1VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZiNWppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmI1emlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzF4dHZvS0JWRWVLWTY2LXhZVDZPQ3ciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyMCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZiNlRpQUVlS0RBTUVqbk9MbVBBIiB4PSItNDYiIHk9IjUiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZiNmppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYjZ6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuZ2ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZiN0RpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNTEiIHk9IjIyMCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWYjdUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZiN2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYjd6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYjhEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYjhUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZiOGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmI4emlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZiOURpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmI5VGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzNLUEJ3S0JWRWVLWTY2LXhZVDZPQ3ciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyMCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZiOXppQUVlS0RBTUVqbk9MbVBBIiB4PSItNzEiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZiLURpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYi1UaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuaGppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZiLWppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNTEiIHk9Ijg3Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZiLXppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmJfRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZiX1RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZiX2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZiX3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmNBRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWY0FUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmNBamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWY0F6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMmZBNmdLQlZFZUtZNjYteFlUNk9DdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjIwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmNCVGlBRWVLREFNRWpuT0xtUEEiIHg9Ii03NiIgeT0iNSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmNCamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZjQnppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG5rRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmNDRGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1MSIgeT0iMTU1Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZjQ1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmNDamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZjQ3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjRERpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZjRFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmNEamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWY0R6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmNFRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWY0VUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMjBuLUlLQlZFZUtZNjYteFlUNk9DdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjIwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmNFemlBRWVLREFNRWpuT0xtUEEiIHg9Ii01MSIgeT0iNSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmNGRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZjRlRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG5rVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmNGamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1MSIgeT0iMTIwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZjRnppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmNHRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZjR1RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjR2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZjR3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmNIRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWY0hUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmNIamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmNIemlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMzYiIHk9IjYiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZjSURpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWY0lUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExua2ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZjSWppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNTEiIHk9IjM5MCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWY0l6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjSkRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWY0pUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWY0pqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWY0p6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjS0RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmNLVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZjS2ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZjS3ppQUVlS0RBTUVqbk9MbVBBIiB4PSItMTExIiB5PSItMiIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmNMRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZjTFRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG5remlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmNMamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1MSIgeT0iNDI1Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZjTHppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmNNRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZjTVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjTWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZjTXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmNORGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWY05UaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmNOamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmNOemlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xNDEiIHk9IjQiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZjT0RpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWY09UaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExubERpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZjT2ppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNTEiIHk9IjQ1NSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWY096aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjUERpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWY1BUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWY1BqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWY1B6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjUURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmNRVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZjUWppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmNRemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzJJMEJBS0JWRWVLWTY2LXhZVDZPQ3ciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyMCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZjUlRpQUVlS0RBTUVqbk9MbVBBIiB4PSItOTYiIHk9IjUiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZjUmppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWY1J6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExubFRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZjU0RpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNTEiIHk9IjE5MCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsR2ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWY1NUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMTAiIHk9IjU5NSIgd2lkdGg9IjI2MSIgaGVpZ2h0PSI0OTEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWY1NqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA3MCIgZm9udEhlaWdodD0iOCIgZmlsbENvbG9yPSI4MDQ3MDg1IiBncmFkaWVudD0iMTY3NzcyMTUsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjU3ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmNURGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWY1RUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmNUamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjVHppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZjVURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfWXdGdUVLRUdFZUtOYTZFZkdBU1NXdyIgc291cmNlPSJQYXB5cnVzSHlwZXJMaW5rX0RpYWdyYW0iIHJlZmVyZW5jZXM9Il9rMFZZQ0RpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWXdGdUVhRUdFZUtOYTZFZkdBU1NXdyIga2V5PSJ0b29sdGlwX3RleHQiIHZhbHVlPSJQcm94aW1ldHJpZVAyIi8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1l3RnVFcUVHRWVLTmE2RWZHQVNTV3ciIGtleT0iZGlhZ3JhbV9uYW1lIiB2YWx1ZT0iUDItUHJveGltZXRyaWUiLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWXdGdUU2RUdFZUtOYTZFZkdBU1NXdyIga2V5PSJpc19kZWZhdWx0X25hdmlnYXRpb24iIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWY1ZUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNiI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfWG1DVndLRUdFZUtOYTZFZkdBU1NXdyIgc291cmNlPSJQYXB5cnVzSHlwZXJMaW5rX0RpYWdyYW0iIHJlZmVyZW5jZXM9Il9rMFZZQ0RpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9YbUNWd2FFR0VlS05hNkVmR0FTU1d3IiBrZXk9InRvb2x0aXBfdGV4dCIgdmFsdWU9IlAyLVByb3hpbWV0cmllIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWG1DVndxRUdFZUtOYTZFZkdBU1NXdyIga2V5PSJkaWFncmFtX25hbWUiIHZhbHVlPSJQMi1Qcm94aW1ldHJpZSIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1htQ1Z3NkVHRWVLTmE2RWZHQVNTV3ciIGtleT0iaXNfZGVmYXVsdF9uYXZpZ2F0aW9uIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swVmNWamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBWY1Z6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWY1dEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWY1dUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjV2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWY1d6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWY1hEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWY1hUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjWGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmNYemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZjWURpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmNZVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZncUxBS0JWRWVLWTY2LXhZVDZPQ3ciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyMCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZjWXppQUVlS0RBTUVqbk9MbVBBIiB4PSIyMCIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmNaRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZjWlRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG14amlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmNaamlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iMjUiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmNaemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWY2FEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmNhVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmNhamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmNhemlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWY2JEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZjYlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWY2JqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjYnppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il82Mkhkb0tCVkVlS1k2Ni14WVQ2T0N3IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWY2NUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZjY2ppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWY2N6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExteWppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZjZERpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjYwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZjZFRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmNkamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZjZHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjZURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZjZVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmNlamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWY2V6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmNmRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWY2ZUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOVE4aFVLQlZFZUtZNjYteFlUNk9DdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjIwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmNmemlBRWVLREFNRWpuT0xtUEEiIHg9IjIwIiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWY2dEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmNnVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbXpqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWY2dqaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIyNzAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmNnemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWY2hEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmNoVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmNoamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmNoemlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWY2lEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZjaVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWY2lqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjaXppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il84OHJoZ0tCVkVlS1k2Ni14WVQ2T0N3IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWY2pUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjAiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZjamppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWY2p6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtMGppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZja0RpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjIyNSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWY2tUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZja2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWY2t6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWY2xEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWY2xUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjbGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmNsemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZjbURpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmNtVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzdUQ0RJS0JWRWVLWTY2LXhZVDZPQ3ciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyMCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZjbXppQUVlS0RBTUVqbk9MbVBBIiB4PSIyMCIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmNuRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZjblRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG0xamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmNuamlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iODgiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmNuemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWY29EaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmNvVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmNvamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmNvemlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWY3BEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZjcFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWY3BqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjcHppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il83NVVuRUtCVkVlS1k2Ni14WVQ2T0N3IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWY3FUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjAiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZjcWppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWY3F6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtM1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZjckRpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjEyNSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWY3JUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjcmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWY3J6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWY3NEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWY3NUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjc2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmNzemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZjdERpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmN0VGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzhQLU1nS0JWRWVLWTY2LXhZVDZPQ3ciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyMCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZjdHppQUVlS0RBTUVqbk9MbVBBIiB4PSIyMCIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmN1RGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZjdVRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG0zamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmN1amlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iMTYxIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZjdXppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmN2RGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZjdlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjdmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZjdnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmN3RGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWY3dUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmN3amlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWY3d6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfLVVtV3NLQlZFZUtZNjYteFlUNk9DdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI4Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmN4VGlBRWVLREFNRWpuT0xtUEEiIHg9Ii05NiIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmN4amlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZjeHppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG0zemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmN5RGlBRWVLREFNRWpuT0xtUEEiIHg9IjE5MSIgeT0iMTE1Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZjeVRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmN5amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZjeXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjekRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZjelRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmN6amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWY3p6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmMwRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYzBUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOW41QnNLQlZFZUtZNjYteFlUNk9DdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjIwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmMwemlBRWVLREFNRWpuT0xtUEEiIHg9Ii01NiIgeT0iNSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmMxRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZjMVRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG00RGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmMxamlBRWVLREFNRWpuT0xtUEEiIHg9IjE5MSIgeT0iMTgwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZjMXppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmMyRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZjMlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjMmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZjMnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmMzRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYzNUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmMzamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYzN6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOTlEWllLQlZFZUtZNjYteFlUNk9DdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjIwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmM0VGlBRWVLREFNRWpuT0xtUEEiIHg9Ii05MSIgeT0iNSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmM0amlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZjNHppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG00VGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmM1RGlBRWVLREFNRWpuT0xtUEEiIHg9IjE5MSIgeT0iMTQ1Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZjNVRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmM1amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZjNXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjNkRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZjNlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmM2amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYzZ6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmM3RGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYzdUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfLXp2dzBLQlZFZUtZNjYteFlUNk9DdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI4Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmM3emlBRWVLREFNRWpuT0xtUEEiIHg9Ii05MSIgeT0iMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZjOERpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWYzhUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtNGppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZjOGppQUVlS0RBTUVqbk9MbVBBIiB4PSIxOTEiIHk9IjcwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmM4emlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjOURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYzlUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWYzlqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWYzl6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZjLURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmMtVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZjLWppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmMtemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzhwVDVrS0JWRWVLWTY2LXhZVDZPQ3ciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyMCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZjX1RpQUVlS0RBTUVqbk9MbVBBIiB4PSIyMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmNfamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZjX3ppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG00emlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmRBRGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iMTk1Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGxHemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZkQVRpQUVlS0RBTUVqbk9MbVBBIiB4PSI1MTUiIHk9IjU5MCIgd2lkdGg9IjIwMSIgaGVpZ2h0PSIyOTYiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWZEFqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA3MCIgZm9udEhlaWdodD0iOCIgZmlsbENvbG9yPSI4MDQ3MDg1IiBncmFkaWVudD0iMTY3NzcyMTUsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZkQXppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmRCRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZEJUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmRCamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZkQnppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZkQ0RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfclZRSDBLRUZFZUtOYTZFZkdBU1NXdyIgc291cmNlPSJQYXB5cnVzSHlwZXJMaW5rX0RpYWdyYW0iIHJlZmVyZW5jZXM9Il9rMGVobERpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfclZRSDBhRUZFZUtOYTZFZkdBU1NXdyIga2V5PSJ0b29sdGlwX3RleHQiIHZhbHVlPSJHbG9iYWxQNCIvPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9yVlFIMHFFRkVlS05hNkVmR0FTU1d3IiBrZXk9ImRpYWdyYW1fbmFtZSIgdmFsdWU9IlA0LUdsb2JhbCIvPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9yVlFIMDZFRkVlS05hNkVmR0FTU1d3IiBrZXk9ImlzX2RlZmF1bHRfbmF2aWdhdGlvbiIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZkRFRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI2Ij4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9sdkwzTUtFRkVlS05hNkVmR0FTU1d3IiBzb3VyY2U9IlBhcHlydXNIeXBlckxpbmtfRGlhZ3JhbSIgcmVmZXJlbmNlcz0iX2swZWhsRGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2x2TDNNYUVGRWVLTmE2RWZHQVNTV3ciIGtleT0idG9vbHRpcF90ZXh0IiB2YWx1ZT0iUDQtR2xvYmFsIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbHZMM01xRUZFZUtOYTZFZkdBU1NXdyIga2V5PSJkaWFncmFtX25hbWUiIHZhbHVlPSJQNC1HbG9iYWwiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9sdkwzTTZFRkVlS05hNkVmR0FTU1d3IiBrZXk9ImlzX2RlZmF1bHRfbmF2aWdhdGlvbiIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMFZkRGppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2swVmREemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmRFRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmRFVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZEVqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmRFemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmRGRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmRGVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZEZqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZkRnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZEdEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZEdUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZkR2ppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZEd6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtQmppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZkSERpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjYwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZkSFRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmRIamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZkSHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZkSURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZkSVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmRJamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZEl6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmRKRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZEpUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZEpqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjUyIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmRKemlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZEtEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmRLVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbUJ6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWZEtqaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIzMCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWZEt6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZkTERpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZExUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZExqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZEx6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZkTURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmRNVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZkTWppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmRNemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmRORGlBRWVLREFNRWpuT0xtUEEiIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI1MiIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZkTlRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmROamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZkTnppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1DRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmRPRGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iMTAwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZkT1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmRPamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZkT3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZkUERpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZkUFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmRQamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZFB6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmRRRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmRRVGlBRWVLREFNRWpuT0xtUEEiIHg9Ii05NCIgeT0iNSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmRRamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmRRemlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbUNUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWZFJEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMTY0IiB5PSI3NSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsSERpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWZFJUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMTM0MCIgeT0iNjM1IiB3aWR0aD0iMTc0IiBoZWlnaHQ9IjE0MyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZkUmppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDcwIiBmb250SGVpZ2h0PSI4IiBmaWxsQ29sb3I9IjgwNDcwODUiIGdyYWRpZW50PSIxNjc3NzIxNSwgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmRSemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZFNEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZkU1RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZFNqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmRTemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmRURGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmRUVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjYiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX05oNEpNS0VHRWVLTmE2RWZHQVNTV3ciIHNvdXJjZT0iUGFweXJ1c0h5cGVyTGlua19EaWFncmFtIiByZWZlcmVuY2VzPSJfazBlZjZUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTmg0Sk1hRUdFZUtOYTZFZkdBU1NXdyIga2V5PSJ0b29sdGlwX3RleHQiIHZhbHVlPSJQMy1Mb2NhbCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX05oNEpNcUVHRWVLTmE2RWZHQVNTV3ciIGtleT0iZGlhZ3JhbV9uYW1lIiB2YWx1ZT0iUDMtTG9jYWwiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9OaDRKTTZFR0VlS05hNkVmR0FTU1d3IiBrZXk9ImlzX2RlZmF1bHRfbmF2aWdhdGlvbiIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMFZkVGppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2swVmRUemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmRVRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmRVVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZFVqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmRVemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmRWRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmRWVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZFZqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZkVnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZFdEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZFdUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZkV2ppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZFd6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtVVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZkWERpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjYwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZkWFRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmRYamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZkWHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZkWURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZkWVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmRZamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZFl6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmRaRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZFpUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZFpqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjUyIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmRaemlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZGFEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmRhVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbVVqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWZGFqaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIyNDAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmRhemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZGJEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmRiVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmRiamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmRiemlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZGNEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZkY1RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZGNqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZkY3ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZkZERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNTIiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZGRUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZkZGppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZGR6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtVXppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZkZURpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjIwNSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWZGVUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZkZWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZGV6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZGZEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZGZUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZkZmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmRmemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZkZ0RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmRnVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmRnamlBRWVLREFNRWpuT0xtUEEiIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI1MiIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZkZ3ppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmRoRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZkaFRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1WRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmRoamlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iMTcwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZkaHppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmRpRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZkaVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZkaWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZkaXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmRqRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZGpUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmRqamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZGp6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZGtEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjUyIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmRrVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZGtqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmRremlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbVZUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWZGxEaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIxMDUiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWZGxUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZkbGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZGx6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZG1EaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZG1UaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZkbWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmRtemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZkbkRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZkblRpQUVlS0RBTUVqbk9MbVBBIiB4PSItOTEiIHk9IjUiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZkbmppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZG56aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtVmppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZkb0RpQUVlS0RBTUVqbk9MbVBBIiB4PSIxOTEiIHk9Ijk1Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZkb1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmRvamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZkb3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZkcERpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZkcFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmRwamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZHB6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmRxRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZHFUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZHFqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjUyIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmRxemlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZHJEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmRyVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbVZ6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWZHJqaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIxMzQiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsSFRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWZHJ6aUFFZUtEQU1Fam5PTG1QQSIgeD0iOTg1IiB5PSI2MDAiIHdpZHRoPSIyMDEiIGhlaWdodD0iMjc2Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2swVmRzRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWZHNUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbEZEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWZHNqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMzAiIHk9Ijc1IiB3aWR0aD0iMTg0MSIgaGVpZ2h0PSIxMzIzIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX2swVmRzemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJzdHlsZTpQYXB5cnVzVmlld1N0eWxlIiB4bWk6aWQ9Il9qQlJkZ0g3YkVlU0Z5TmJuTFlEQ2t3Ij4KKyAgICAgIDxvd25lciB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGo0RGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0FQTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMajREaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMFZkdERpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMFZhdnppQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMFZhbHppQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZHRUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmR0amlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZHR6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmR1RGlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmR1VGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZkdWppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmR1emlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZkdkRpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBWZHZUaUFFZUtEQU1Fam5PTG1QQSIgZm9udE5hbWU9IlNlZ29lIFVJIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsSGppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMFZkdmppQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9Ils3LCAxNywgNywgLTI2XSRbNywgNjEsIDcsIDE4XSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swVmR2emlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2swVmFlemlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swVmEzVGlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZkd0RpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZHdUaUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZkd2ppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZHd6aUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZHhEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmR4VGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZHhqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmR4emlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMFZkeURpQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsSlRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMFZkeVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfazBWZHlqaUFFZUtEQU1Fam5PTG1QQSIgaWQ9IigwLjAsMC40NzUpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfazBWZHl6aUFFZUtEQU1Fam5PTG1QQSIgaWQ9IigxLjAsMC40NzUpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBWZHpEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBWYTZ6aUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBWYk16aUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmR6VGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZkemppQUVlS0RBTUVqbk9MbVBBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmR6emlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZkMERpQUVlS0RBTUVqbk9MbVBBIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZkMFRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZDBqaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZkMHppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZDFEaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swVmQxVGlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGxMRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swVmQxamlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWy0xLCAtNywgMjgzLCA0OV0kWy00MSwgLTcsIDI0MywgNDldJFstNDEsIC01NiwgMjQzLCAwXSRbLTI4MCwgLTU2LCA0LCAwXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swVmQxemlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMC4xLDAuMzUpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfazBWZDJEaUFFZUtEQU1Fam5PTG1QQSIgaWQ9IigwLjgsMC41NSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMFZkMlRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMFZiUVRpQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMFZibHppQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZDJqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmQyemlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZDNEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmQzVGlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmQzamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZkM3ppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmQ0RGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZkNFRpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBWZDRqaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbE16aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBWZDR6aUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMiwgMTAsIC0yNywgLTEwOV0kWzI5LCAxMjksIDAsIDEwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swVmQ1RGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2swVmJ0VGlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swVmNXVGlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZkNVRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZDVqaUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZkNXppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZDZEaUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZDZUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmQ2amlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZDZ6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmQ3RGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMFZkN1RpQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsT2ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMFZkN2ppQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlsxMCwgLTIsIC05OSwgMTNdJFsxMDYsIC01LCAtMywgMTBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBWZDd6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBWYnd6aUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBWY1p6aUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmQ4RGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZkOFRpQUVlS0RBTUVqbk9MbVBBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmQ4amlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZkOHppQUVlS0RBTUVqbk9MbVBBIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZkOURpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZDlUaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZkOWppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZDl6aUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swVmQtRGlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGxRVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swVmQtVGlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWzEwLCAtMSwgLTk5LCA4XSRbMTA1LCAtMTksIC00LCAtMTBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBWZC1qaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBWYjdUaUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBWY2tUaUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmQtemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZkX0RpQUVlS0RBTUVqbk9MbVBBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmRfVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZkX2ppQUVlS0RBTUVqbk9MbVBBIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZkX3ppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZUFEaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlQVRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZUFqaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swVmVBemlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGxTRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swVmVCRGlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWzEwLCAtNiwgLTk5LCAtMl0kWzEwNSwgLTE0LCAtNCwgLTEwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swVmVCVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2swVmNDVGlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swVmNuemlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlQmppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZUJ6aUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlQ0RpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZUNUaUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZUNqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmVDemlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZUREaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmVEVGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMFZlRGppQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsVHppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMFZlRHppQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlsxMCwgMCwgLTk5LCAwXSRbOTksIDAsIC0xMCwgMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMFZlRURpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMFZiLXppQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMFZjclRpQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZUVUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmVFamlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZUV6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmVGRGlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmVGVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZlRmppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmVGemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZlR0RpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBWZUdUaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbFZqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBWZUdqaUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMTAsIC0yLCAtOTksIC0zXSRbMTEwLCAtOSwgMSwgLTEwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swVmVHemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2swVmIwVGlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swVmNkVGlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMTI1NjA1MzYiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZUhEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmVIVGlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZUhqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmVIemlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmVJRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZlSVRpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmVJamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZlSXppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBWZUpEaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbFhUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBWZUpUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swVmVKamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2swVmIzemlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swVmNnemlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlSnppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZUtEaUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlS1RpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZUtqaUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZUt6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmVMRGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZUxUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmVMamlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMFZlTHppQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsWkRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMFZlTURpQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlsxMCwgNSwgLTk5LCAwXSRbOTksIDUsIC0xMCwgMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMFZlTVRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMFZiM3ppQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMFZiZVRpQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZU1qaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmVNemlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZU5EaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmVOVGlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmVOamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZlTnppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmVPRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZlT1RpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBWZU9qaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbGF6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBWZU96aUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMTAsIDAsIC00MjAsIDMyMV0kWzE2NCwgMCwgLTI2NiwgMzIxXSRbMTY0LCAtMjYwLCAtMjY2LCA2MV0kWzQ2OSwgLTI2MCwgMzksIDYxXSRbNDY5LCAtMzIxLCAzOSwgMF0kWzQ1MCwgLTMyMSwgMjAsIDBdIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfazBWZVBEaUFFZUtEQU1Fam5PTG1QQSIgaWQ9IigwLjAsMC40NzUpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBWZVBUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBWY3lUaUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBWYmF6aUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIxMDI2NTgyNyI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlUGppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZVB6aUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlUURpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZVFUaUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZVFqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmVRemlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZVJEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmVSVGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMFZlUmppQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsY2ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMFZlUnppQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlsxLCA5LCAxNSwgNDMwXSRbMTIwLCA5LCAxMzQsIDQzMF0kWzEyMCwgLTQyMSwgMTM0LCAwXSRbLTQsIC00MjEsIDEwLCAwXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swVmVTRGlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMC45NSwwLjMpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBWZVlEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBWY3V6aUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBWYkJ6aUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIxMDAxMTA0NiI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlWVRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZVlqaUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlWXppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZVpEaUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZVpUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmVaamlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZVp6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmVhRGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMFZlYVRpQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsaHppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMFZlYWppQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlsxMCwgMCwgLTQyNSwgMzUwXSRbMTk2LCAwLCAtMjM5LCAzNTBdJFsxOTYsIC0yNDUsIC0yMzksIDEwNV0kWzUxOSwgLTI0NSwgODQsIDEwNV0kWzUxOSwgLTM1MCwgODQsIDBdJFs0NDUsIC0zNTAsIDEwLCAwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swVmVhemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2swVmN5VGlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swVmJGVGlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMTAyNjU4MjciIGxpbmVXaWR0aD0iMiI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlYkRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZWJUaUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlYmppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZWJ6aUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZWNEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmVjVGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZWNqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmVjemlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMFZlZERpQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsamppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMFZlZFRpQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlsxMCwgMCwgLTQzMywgMzgyXSRbMTI5LCAwLCAtMzE0LCAzODJdJFsxMjksIC0yNDAsIC0zMTQsIDE0Ml0kWzQ5NCwgLTI0MCwgNTEsIDE0Ml0kWzQ5NCwgLTM1OSwgNTEsIDIzXSRbNDk0LCAtMzgyLCA1MSwgMF0kWzQ0NSwgLTM4MiwgMiwgMF0iLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9rMFZlZGppQUVlS0RBTUVqbk9MbVBBIiBpZD0iKDAuOSwwLjY1KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swVmVkemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2swVmRsVGlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swVmEtVGlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlZURpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZWVUaUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlZWppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZWV6aUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZWZEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmVmVGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZWZqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmVmemlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMFZlZ0RpQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsbFRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMFZlZ1RpQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlsxMCwgMCwgNDUsIDM2NV0kWzg5LCAwLCAxMjQsIDM2NV0kWzg5LCAtMTc1LCAxMjQsIDE5MF0kWzg5LCAtMzM1LCAxMjQsIDMwXSRbODksIC0zNjUsIDEyNCwgMF0kWy0yNSwgLTM2NSwgMTAsIDBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBWZWdqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBWYjN6aUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBWZGF6aUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmVnemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZlaERpQUVlS0RBTUVqbk9MbVBBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmVoVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZlaGppQUVlS0RBTUVqbk9MbVBBIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlaHppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZWlEaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlaVRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZWlqaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swVmVpemlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGxuRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swVmVqRGlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWzEwLCAwLCAtNjk0LCAxMV0kWzE2NCwgMCwgLTU0MCwgMTFdJFsxNjQsIDgwLCAtNTQwLCA5MV0kWzU5NCwgODAsIC0xMTAsIDkxXSRbNTk0LCAtMTEsIC0xMTAsIDBdJFs3MDQsIC0xMSwgMCwgMF0iLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9rMFZlalRpQUVlS0RBTUVqbk9MbVBBIiBpZD0iKDAuMCwwLjQ3NSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMFZlamppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMFZiMFRpQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMFZkWFRpQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjEyNTYwNTM2Ij4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmVqemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZla0RpQUVlS0RBTUVqbk9MbVBBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmVrVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZla2ppQUVlS0RBTUVqbk9MbVBBIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZla3ppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZWxEaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlbFRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZWxqaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swVmVsemlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGxvemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swVmVtRGlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWzAsIDAsIC02OTQsIDI1XSRbMTAxLCAwLCAtNTkzLCAyNV0kWzEwMSwgODEsIC01OTMsIDEwNl0kWzYyOSwgODEsIC02NSwgMTA2XSRbNjI5LCAtMTksIC02NSwgNl0kWzY5NCwgLTE5LCAwLCA2XSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swVmVtVGlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMS4wLDAuNDc1KSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swVmVtamlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMC4wLDAuNDUpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBWZW16aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBWY3lUaUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBWZGVUaUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIxMDI2NTgyNyI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlbkRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZW5UaUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlbmppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZW56aUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZW9EaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmVvVGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZW9qaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmVvemlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMFZlcERpQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExscWppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMFZlcFRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfazBWZXBqaUFFZUtEQU1Fam5PTG1QQSIgaWQ9IigwLjA1LDAuNikiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMFZlcHppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMFZjdXppQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMFZkaHppQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjEwMDExMDQ2Ij4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmVxRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZlcVRpQUVlS0RBTUVqbk9MbVBBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmVxamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZlcXppQUVlS0RBTUVqbk9MbVBBIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlckRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZXJUaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlcmppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZXJ6aUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swVmVzRGlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGxzVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swVmVzVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9rMFZlc2ppQUVlS0RBTUVqbk9MbVBBIiBpZD0iKDEuMCwwLjQ3NSkiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9rMFZlc3ppQUVlS0RBTUVqbk9MbVBBIiBpZD0iKDAuMCwwLjQ3NSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMFZldERpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMFZjNVRpQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMFZkVVRpQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZXRUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmV0amlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZXR6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmV1RGlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmV1VGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZldWppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmV1emlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZldkRpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBWZXZUaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbHVEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBWZXZqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swVmV2emlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMC4xNSwwLjIpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfazBWZXdEaUFFZUtEQU1Fam5PTG1QQSIgaWQ9IigwLjA1LDAuNSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMFZld1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMFZjMXppQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMFZkb1RpQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZXdqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmV3emlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZXhEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmV4VGlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmV4amlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZleHppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmV5RGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZleVRpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBWZXlqaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbHZ6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBWZXl6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swVmV6RGlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMS4wLDAuNDc1KSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swVmV6VGlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMC4xNSwwLjYpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBWZXpqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBWY3V6aUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBWZEhUaUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIxMDAxMTA0NiI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlenppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZTBEaUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlMFRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZTBqaUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZTB6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmUxRGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZTFUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmUxamlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMFZlMXppQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExseGppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMFZlMkRpQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlswLCAwLCAtNjE0LCA0MF0kWzE4NCwgMCwgLTQzMCwgNDBdJFsxODQsIC0yNDUsIC00MzAsIC0yMDVdJFs1ODksIC0yNDUsIC0yNSwgLTIwNV0kWzU4OSwgLTEzNSwgLTI1LCAtOTVdJFs1ODksIC00MCwgLTI1LCAwXSRbNjA0LCAtNDAsIC0xMCwgMF0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9rMFZlMlRpQUVlS0RBTUVqbk9MbVBBIiBpZD0iKDEuMCwwLjUpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBWZTJqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBWYjBUaUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBWZEt6aUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIxMjU2MDUzNiIgbGluZVdpZHRoPSIyIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmUyemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZlM0RpQUVlS0RBTUVqbk9MbVBBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmUzVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZlM2ppQUVlS0RBTUVqbk9MbVBBIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlM3ppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZTREaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlNFRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZTRqaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swVmU0emlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGx6VGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swVmU1RGlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWzE4LCAwLCAtMTA0OSwgMTM4XSRbMTE3LCAwLCAtOTUwLCAxMzhdJFsxMTcsIDc1LCAtOTUwLCAyMTNdJFsxMDAyLCA3NSwgLTY1LCAyMTNdJFsxMDAyLCAtMTM4LCAtNjUsIDBdJFsxMDY3LCAtMTM4LCAwLCAwXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swVmU1VGlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMC4xLDAuNzUpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfazBWZTVqaUFFZUtEQU1Fam5PTG1QQSIgaWQ9IigwLjAsMC4zNSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMFZlNXppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMFZkbFRpQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMFZkRVRpQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZTZEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmU2VGlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZTZqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmU2emlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmU3RGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZlN1RpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmU3amlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZlN3ppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBWZThEaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbDFEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBWZThUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swVmU4amlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMC40NzUsMS4wKSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swVmU4emlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMC4yLDAuNTUpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBWZTlEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBWY3V6aUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBWYWlUaUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIxMDAxMTA0NiI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlOVRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZTlqaUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZlOXppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZS1EaUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZS1UaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmUtamlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZS16aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmVfRGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMFZlX1RpQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsMnppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMFZlX2ppQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlsxMCwgMCwgLTc5OCwgMzMzXSRbMTk0LCAwLCAtNjE0LCAzMzNdJFsxOTQsIC0yNDUsIC02MTQsIDg4XSRbODU0LCAtMjQ1LCA0NiwgODhdJFs4NTQsIC0zMjUsIDQ2LCA4XSRbODIwLCAtMzI1LCAxMiwgOF0iLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9rMFZlX3ppQUVlS0RBTUVqbk9MbVBBIiBpZD0iKDAuOSwwLjQ1KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swVmZBRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2swVmRPVGlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swVmFwVGlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZmQVRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZkFqaUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZmQXppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZkJEaUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZkJUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmZCamlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZkJ6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmZDRGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMFZmQ1RpQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsNGppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMFZmQ2ppQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlswLCAwLCA4LCAzNTVdJFs3OCwgMCwgODYsIDM1NV0kWzc4LCAtMTA1LCA4NiwgMjUwXSRbNzksIC0zNDgsIDg3LCA3XSRbMTIsIC0zNDgsIDIwLCA3XSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swVmZDemlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMS4wLDAuNDc1KSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swVmZERGlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMC4wLDAuNDc1KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swVmZEVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2swVmNPemlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swVmM4emlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZmRGppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZkR6aUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZmRURpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZkVUaUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZkVqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmZFemlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZkZEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmZGVGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMFZmRmppQUVlS0RBTUVqbk9MbVBBIiBmb250TmFtZT0iU2Vnb2UgVUkiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGw2VGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swVmZGemlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWzE1LCAzLCAtMzUxLCAzXSRbMzY0LCAxNSwgLTIsIDE1XSIvPgorICAgIDwvZWRnZXM+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfazBWZkdEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJBMS1TZXJ2b2luZ3MiIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmZHVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjIwNzMiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZmR2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZkd6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZkhEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZkhUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZmSGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZIemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUXF6emtLRUhFZUtOYTZFZkdBU1NXdyIgc291cmNlPSJQYXB5cnVzSHlwZXJMaW5rX0RpYWdyYW0iIHJlZmVyZW5jZXM9Il9rMFZhWWppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9RcXp6a2FFSEVlS05hNkVmR0FTU1d3IiBrZXk9InRvb2x0aXBfdGV4dCIgdmFsdWU9IldpZmlCb3QiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9RcXp6a3FFSEVlS05hNkVmR0FTU1d3IiBrZXk9ImRpYWdyYW1fbmFtZSIgdmFsdWU9IldpZmlCb3QiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9RcXp6azZFSEVlS05hNkVmR0FTU1d3IiBrZXk9ImlzX2RlZmF1bHRfbmF2aWdhdGlvbiIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZkpEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMFZmSlRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWZkpqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA3MCIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZmSnppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZLRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZktUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZLamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZmS3ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmTERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZmTFRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMFZmTGppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2swVmZMemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmZNRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmZNVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZmTWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZk16aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZk5EaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZk5UaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZmTmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZOemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZk9EaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZPVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZPamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmT3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZlBEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZQVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZmUGppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZmUHppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmZRRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZmUVRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG83VGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmZRamlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iNDYiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmZRemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZmUkRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZlJUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZlJqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZlJ6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZmU0RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZTVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZlNqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZTemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZURGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmVFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZlRqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZUemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZmVURpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZmVVRpQUVlS0RBTUVqbk9MbVBBIiB4PSItMjQ2IiB5PSItMTYiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZmVWppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZlV6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvOFRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZmVkRpQUVlS0RBTUVqbk9MbVBBIiB4PSIzMjEiIHk9IjQ2Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9femlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZmVlRpQUVlS0RBTUVqbk9MbVBBIiB4PSI1MCIgeT0iMjAiIHdpZHRoPSIzMzEiIGhlaWdodD0iMTE2Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmZWamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZlZ6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmV0RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmZXVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmV2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZld6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZlhEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZlhUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfazBWZlhqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9rMFZmWHppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZmWURpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZmWVRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZllqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZZemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmZaRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZaVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZlpqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmWnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmZhRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmYVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmYWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZmF6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZiRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmYlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZmJqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZmJ6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZmY0RpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZmNUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvOWppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZmY2ppQUVlS0RBTUVqbk9MbVBBIiB4PSItMTEiIHk9IjQ1IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMcEFEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmZjemlBRWVLREFNRWpuT0xtUEEiIHg9IjQzNSIgeT0iMjAiIHdpZHRoPSIzMTgiIGhlaWdodD0iMTE2Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2swVmZkRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWZmRUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmZkamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmZkemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZlRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZmZVRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZlamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmZlemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmZkRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZmZlRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmZmppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZmemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZnRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZnVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZnamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZmd6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZmaERpQUVlS0RBTUVqbk9MbVBBIiB4PSIxNSIgeT0iMjUiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZmhUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZmhqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMby16aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZmaHppQUVlS0RBTUVqbk9MbVBBIiB4PSItMTEiIHk9IjEwNCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvLWppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZmaURpQUVlS0RBTUVqbk9MbVBBIiB4PSI3MCIgeT0iNDAiIHdpZHRoPSI3OTYiIGhlaWdodD0iMTk2Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX2swVmZpVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJzdHlsZTpQYXB5cnVzVmlld1N0eWxlIiB4bWk6aWQ9Il9qQlJkZ1g3YkVlU0Z5TmJuTFlEQ2t3Ij4KKyAgICAgIDxvd25lciB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbzZ6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3pXQVBMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG82emlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBWZmlqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBWZllUaUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBWZlF6aUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmZpemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZmakRpQUVlS0RBTUVqbk9MbVBBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmZqVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZmamppQUVlS0RBTUVqbk9MbVBBIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZmanppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZmtEaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZma1RpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZmtqaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swVmZremlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTHBBVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swVmZsRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9rMFZmbFRpQUVlS0RBTUVqbk9MbVBBIiBpZD0iKDAuMCwwLjQ3NSkiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9rMFZmbGppQUVlS0RBTUVqbk9MbVBBIiBpZD0iKDEuMCwwLjQ3NSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMFZmbHppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMFZmZGppQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMFZmTVRpQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZm1EaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmZtVGlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZm1qaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmZtemlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmZuRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZmblRpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmZuamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZmbnppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBWZm9EaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMcENEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBWZm9UaUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMywgMTAsIC0yNywgLTg4XSRbMzIsIDEwOCwgMiwgMTBdIi8+CisgICAgPC9lZGdlcz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9rMFZmb2ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSJDb21wb3NpdGVTdHJ1Y3R1cmUiIG5hbWU9IkEyLVBpbG90IiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZmb3ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIyMDczIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZnBEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZwVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmZwamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZwemlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZnFEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmcVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzU3WVZvS0VERWVLTmE2RWZHQVNTV3ciIHNvdXJjZT0iUGFweXJ1c0h5cGVyTGlua19EaWFncmFtIiByZWZlcmVuY2VzPSJfazBWYVlqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNTdZVm9hRURFZUtOYTZFZkdBU1NXdyIga2V5PSJ0b29sdGlwX3RleHQiIHZhbHVlPSJXaWZpQm90Ii8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNTdZVm9xRURFZUtOYTZFZkdBU1NXdyIga2V5PSJkaWFncmFtX25hbWUiIHZhbHVlPSJXaWZpQm90Ii8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNTdZVm82RURFZUtOYTZFZkdBU1NXdyIga2V5PSJpc19kZWZhdWx0X25hdmlnYXRpb24iIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmZxamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfazBWZnF6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmZyRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZnJUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmcmppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmZyemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmc0RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZnNUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZnNqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZnN6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfazBWZnREaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9rMFZmdFRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZmdGppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZmdHppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZnVEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZ1VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmZ1amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZ1emlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZnZEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmdlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmZ2amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmdnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmd0RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZndUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZ3amlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmd3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZnhEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZnhUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZmeGppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZnh6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvaVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZmeURpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjI1Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZmeVRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZnlqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZ5emlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmZ6RGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZ6VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZnpqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmZ6emlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmYwRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmMFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZjBqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmYwemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZjFEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmMVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZjFqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZmMXppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZjJEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIyIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmYyVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZjJqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmYyemlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb2pUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWZjNEaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSI1NSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWZjNUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmYzamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmM3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZmNERpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmNFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmY0amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZjR6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZmNURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZjVUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZjVqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmY1emlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmNkRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZjZUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmY2amlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmY2emlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xNTciIHk9IjI0Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZjdEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmY3VGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb2tUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWZjdqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjk2IiB5PSI4MyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWZjd6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmY4RGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmOFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZmOGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmOHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmY5RGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZjlUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZmOWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZjl6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZi1EaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmYtVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZmLWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZi16aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmZfRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmZfVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZl9qaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmZfemlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb2xUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWZ0FEaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSI4NSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWZ0FUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmdBamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZnQXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZnQkRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZnQlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmdCamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ0J6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZnQ0RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ0NUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ0NqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmdDemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZnRERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ0RUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmdEamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmdEemlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZ0VEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmdFVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb21UaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWZ0VqaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIxMTUiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmdFemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZnRkRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ0ZUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZ0ZqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ0Z6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZnR0RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmdHVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZ0dqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmdHemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmdIRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZnSFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ0hqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmdIemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZnSURpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZnSVRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmdJamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZnSXppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9uVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmdKRGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iMTQ1Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG90RGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZnSlRpQUVlS0RBTUVqbk9MbVBBIiB4PSIxNjEiIHk9IjEzIiB3aWR0aD0iMzA2IiBoZWlnaHQ9IjE4NiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZnSmppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmdKemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ0tEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZnS1RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ0tqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmdLemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmdMRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmdMVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swVmdMamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBWZ0x6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWZ01EaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWZ01UaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmdNamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZnTXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZnTkRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZnTlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmdOamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ056aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZnT0RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ09UaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ09qaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmdPemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZnUERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ1BUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmdQamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmdQemlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xNTYiIHk9IjIxIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZ1FEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmdRVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb296aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWZ1FqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjIwIiB5PSI3NiIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZnUXppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZ1JEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmdSVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmdSamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmdSemlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZ1NEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZnU1RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmdTamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZnU3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZnVERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ1RUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmdUamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZnVHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZ1VEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZ1VUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjAiIHk9Ii0yMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmdVamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZnVXppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9wemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmdWRGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iODMiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb3RUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmdWVGlBRWVLREFNRWpuT0xtUEEiIHg9IjUyNSIgeT0iOCIgd2lkdGg9IjIzMSIgaGVpZ2h0PSIxODYiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBWZ1ZqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZnVnppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWZ1dEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZ1dUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ1dqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmdXemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ1hEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZ1hUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmdYamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmdYemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmdZRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ1lUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ1lqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ1l6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ1pEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZnWlRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmdaamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIxMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZnWnppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZnYURpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvckRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmdhVGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iNzYiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmdhamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmdhemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmdiRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZnYlRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmdiamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmdiemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZnY0RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZnY1RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZnY2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmdjemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmdkRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmdkVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmdkamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZ2R6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZnZURpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTY2IiB5PSIyMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZnZVRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZnZWppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvc0RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmdlemlBRWVLREFNRWpuT0xtUEEiIHg9IjkzMSIgeT0iMTEwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWZ29EaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmdvVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmdvamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZnb3ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmdwRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmdwVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZncGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZncHppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZncURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmdxVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmdxamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZncXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZnckRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmdyVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZ3JqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjEzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmdyemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZ3NEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjAiIHk9Ii02Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvdURpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmdzVGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iMTY2IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZnc2ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZ3N6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ3REaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmd0VGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ3RqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWZ3R6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmd1RGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmd1VGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmd1amlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ3V6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWZ3ZEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmd2VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmd2amlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZ3Z6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZnd0RpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMTMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZ3dUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZnd2ppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvdVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmd3emlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iMTk2IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9xemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmd4RGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSI2MCIgd2lkdGg9Ijk0MSIgaGVpZ2h0PSIzMTEiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1Jva3NVS0JYRWVLWTY2LXhZVDZPQ3ciIHR5cGU9IjIxMDkiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfUm9rc1VxQlhFZUtZNjYteFlUNk9DdyIgdHlwZT0iNTE5MiIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9pRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1Jva3NVYUJYRWVLWTY2LXhZVDZPQ3ciIHg9IjMwIiB5PSI0MjAiIHdpZHRoPSI0MjEiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1hJUGFBS0JYRWVLWTY2LXhZVDZPQ3ciIHR5cGU9IjIxMDkiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfWElQYUFxQlhFZUtZNjYteFlUNk9DdyIgdHlwZT0iNTE5MiIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9vamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1hJUGFBYUJYRWVLWTY2LXhZVDZPQ3ciIHg9IjU0NSIgeT0iNDE1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX2swVmd4VGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJzdHlsZTpQYXB5cnVzVmlld1N0eWxlIiB4bWk6aWQ9Il9qQlJkZ243YkVlU0Z5TmJuTFlEQ2t3Ij4KKyAgICAgIDxvd25lciB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb2hqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3pXQVBMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9oamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBWZ3hqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBWZjNUaUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBWZ1F6aUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmd4emlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZneURpQUVlS0RBTUVqbk9MbVBBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmd5VGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZneWppQUVlS0RBTUVqbk9MbVBBIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZneXppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZ3pEaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZnelRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZ3pqaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swVmd6emlBRWVLREFNRWpuT0xtUEEiIGZvbnROYW1lPSJTZWdvZSBVSSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb3VqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBWZzBEaUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMTAsIC01LCAtNzksIDM2XSRbOTksIC00MSwgMTAsIDBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBWZzBUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBWZ1dEaUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBWZnR6aUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmcwamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZnMHppQUVlS0RBTUVqbk9MbVBBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmcxRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZnMVRpQUVlS0RBTUVqbk9MbVBBIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZnMWppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZzF6aUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZnMkRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZzJUaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swVmcyamlBRWVLREFNRWpuT0xtUEEiIGZvbnROYW1lPSJTZWdvZSBVSSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb3dUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBWZzJ6aUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMTAsIDUsIC0yMTAsIDBdJFsyMTAsIDUsIC0xMCwgMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMFZnM0RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMFZnTVRpQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMFZnYWppQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZzNUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmczamlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWZzN6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmc0RGlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmc0VGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZnNGppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmc0emlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZnNURpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBWZzVUaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb3lEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBWZzVqaUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMTAsIDEsIC0yNDAsIDBdJFsyNjAsIDEsIDEwLCAwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swVmdfVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2swVmdvRGlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swVmdBVGlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZnX2ppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWZ196aUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZoQURpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWaEFUaUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWaEFqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmhBemlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWaEJEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmhCVGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMFZoQmppQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvM1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMFZoQnppQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlsxMCwgMSwgLTE1NiwgMF0kWzQwLCAxLCAtMTI2LCAwXSRbNzUsIDEsIC05MSwgMF0kWzc1LCAxLCAtOTEsIDBdJFsxNTYsIDEsIC0xMCwgMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMFZoQ0RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMFZnc2ppQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMFZnRXppQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWaENUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmhDamlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWaEN6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmhERGlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmhEVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZoRGppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmhEemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZoRURpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBWaEVUaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbzVEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBWaEVqaUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMTAsIC0yLCAtMTU2LCAyOF0kWzE2NCwgLTQwLCAtMiwgLTEwXSIvPgorICAgIDwvZWRnZXM+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfazBWaEV6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJBMy1OYXZpZ2F0b3IiIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmhGRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjIwNzMiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZoRlRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWaEZqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWaEZ6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWaEdEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZoR1RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhHamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZjR1YUlLRUZFZUtOYTZFZkdBU1NXdyIgc291cmNlPSJQYXB5cnVzSHlwZXJMaW5rX0RpYWdyYW0iIHJlZmVyZW5jZXM9Il9rMFZhWWppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mNHVhSWFFRkVlS05hNkVmR0FTU1d3IiBrZXk9InRvb2x0aXBfdGV4dCIgdmFsdWU9IldpZmlCb3QiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mNHVhSXFFRkVlS05hNkVmR0FTU1d3IiBrZXk9ImRpYWdyYW1fbmFtZSIgdmFsdWU9IldpZmlCb3QiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mNHVhSTZFRkVlS05hNkVmR0FTU1d3IiBrZXk9ImlzX2RlZmF1bHRfbmF2aWdhdGlvbiIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWaEd6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMFZoSERpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWaEhUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA3MCIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZoSGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhIemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWaElEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhJVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZoSWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoSXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZoSkRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMFZoSlRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2swVmhKamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmhKemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmhLRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZoS1RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWaEtqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWaEt6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWaExEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZoTFRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhMamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWaEx6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhNRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhNVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoTWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWaE16aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhORGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZoTlRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZoTmppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmhOemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZoT0RpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9RamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmhPVGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iMjUiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmhPamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZoT3ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWaFBEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWaFBUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWaFBqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZoUHppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhRRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWaFFUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhRamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhRemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoUkRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWaFJUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhSamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZoUnppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZoU0RpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTI2IiB5PSI2Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWaFNUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmhTamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb1JqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWaFN6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMzA1IiB5PSI4NCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZoVERpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWaFRUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhUamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmhUemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhVRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWaFVUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoVWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmhVemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoVkRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoVlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWaFZqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhWemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoV0RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWaFdUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWaFdqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZoV3ppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWaFhEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvU2ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZoWFRpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjU1Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZoWGppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWaFh6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhZRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmhZVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhZamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWaFl6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoWkRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmhaVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoWmppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoWnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWaGFEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhhVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoYWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWaGF6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWaGJEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZoYlRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWaGJqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvVGppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZoYnppQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjgwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMFZoY0RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWaGNUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhjamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmhjemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhkRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWaGRUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoZGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmhkemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoZURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoZVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWaGVqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhlemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoZkRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWaGZUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWaGZqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZoZnppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWaGdEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvVWppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZoZ1RpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjExMCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvWHppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWaGdqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMTQ1IiB5PSIyMCIgd2lkdGg9IjMxNiIgaGVpZ2h0PSIxODMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBWaGd6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZoaERpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWaGhUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWaGhqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWaGh6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmhpRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWaGlUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWaGlqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhpemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmhqRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhqVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWaGpqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWaGp6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWaGtEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWaGtUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZoa2ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmhremlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItNCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZobERpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZobFRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvVnppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swVmhsamlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMSIgeT0iNjkiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmhsemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmhtRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhtVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZobWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhtemlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmhuRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoblRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZobmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZobnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhvRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhvVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhvamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmhvemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWaHBEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZocFRpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTI2IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWaHBqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWaHB6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb1d6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZocURpQUVlS0RBTUVqbk9MbVBBIiB4PSI2MjEiIHk9IjEzMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swVmhxVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZocWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZocXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWaHJEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoclRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZocmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWaHJ6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBWaHNEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWaHNUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoc2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoc3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWaHREaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBWaHRUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZodGppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmh0emlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItNCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZodURpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmh1VGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9ZRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBWaHVqaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTExIiB5PSI5OSIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWaHV6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmh2RGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmh2VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZodmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmh2emlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmh3RGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZod1RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZod2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZod3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmh4RGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmh4VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoeGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoeHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmh5RGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWaHlUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii00Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmh5amlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWaHl6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb1lUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZoekRpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTEiIHk9IjEyNCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBWaHpUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmh6amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmh6emlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZoMERpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmgwVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swVmgwamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoMHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMFZoMURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoMVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmgxamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swVmgxemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoMkRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMFZoMlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmgyamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWaDJ6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjAiIHk9Ii00Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmgzRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWaDNUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb1lqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZoM2ppQUVlS0RBTUVqbk9MbVBBIiB4PSItMTEiIHk9IjE1NCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvVmppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMFZoM3ppQUVlS0RBTUVqbk9MbVBBIiB4PSI1NSIgeT0iMzUiIHdpZHRoPSI2MzEiIGhlaWdodD0iMjU2Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX2swVmg0RGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJzdHlsZTpQYXB5cnVzVmlld1N0eWxlIiB4bWk6aWQ9Il9qQlJkZzM3YkVlU0Z5TmJuTFlEQ2t3Ij4KKyAgICAgIDxvd25lciB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb1B6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3pXQVBMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9QemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBWaDRUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBWaE9qaUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBWaGx6aUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmg0amlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZoNHppQUVlS0RBTUVqbk9MbVBBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmg1RGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZoNVRpQUVlS0RBTUVqbk9MbVBBIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZoNWppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWaDV6aUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZoNkRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWaDZUaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swVmg2amlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9ZemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swVmg2emlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWzEwLCAxLCAtMTU1LCAwXSRbMTc1LCAxLCAxMCwgMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMFZoN0RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMFZoaFRpQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMFZoS0RpQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWaDdUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmg3amlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWaDd6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmg4RGlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmg4VGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZoOGppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmg4emlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZoOURpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBWaDlUaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb2FqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBWaDlqaUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMTAsIDEsIC0xNDAsIC0xNF0kWzE0NiwgMjUsIC00LCAxMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMFZoOXppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMFZocVRpQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMFZoVERpQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWaC1EaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmgtVGlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWaC1qaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmgtemlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmhfRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZoX1RpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmhfamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZoX3ppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBWaUFEaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb2NUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBWaUFUaUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMTAsIDIsIC0xNDAsIDFdJFsxNDYsIDExLCAtNCwgMTBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBWaUFqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBWaHV6aUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBWaFhqaUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmlBemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZpQkRpQUVlS0RBTUVqbk9MbVBBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmlCVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZpQmppQUVlS0RBTUVqbk9MbVBBIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZpQnppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWaUNEaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMFZpQ1RpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBWaUNqaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swVmlDemlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9lRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swVmlERGlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWzEwLCAtMSwgLTE0MCwgMTBdJFsxNTQsIC0xLCA0LCAxMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMFZpRFRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMFZoelRpQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMFZoY0RpQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWaURqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmlEemlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBWaUVEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swVmlFVGlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmlFamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZpRXppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swVmlGRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMFZpRlRpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBWaUZqaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb2Z6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBWaUZ6aUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMTAsIC0zLCAtMTQwLCAtNF0kWzE1NCwgLTksIDQsIC0xMF0iLz4KKyAgICA8L2VkZ2VzPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX2swZWUwRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IkNvbXBvc2l0ZVN0cnVjdHVyZSIgbmFtZT0iQTQtUGF0aFBsYW5uZXIiIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZWUwVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjIwNzMiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVlMGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZTB6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZTFEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZTFUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVlMWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWUxemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVlMkRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swZWUyVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzMiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVlMmppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWUyemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZTNEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVlM1RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZTNqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWUzemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWU0RGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWU0VGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swZWU0amlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBlZTR6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlZTVEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlZTVUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWU1amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVlNXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVlNkRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVlNlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWU2amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZTZ6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVlN0RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZTdUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZTdqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWU3emlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVlOERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZThUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWU4amlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWU4emlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZTlEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWU5VGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb0J6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlZTlqaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIzMCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlZTl6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWUtRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVlLVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVlLWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVlLXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWVfRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZV9UaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVlX2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZV96aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZkFEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZBVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVmQWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZkF6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWZCRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWZCVGlBRWVLREFNRWpuT0xtUEEiIHg9Ii04NCIgeT0iNSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWZCamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVmQnppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9DemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWZDRGlBRWVLREFNRWpuT0xtUEEiIHg9IjE3MSIgeT0iNTUiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZWZDVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVmQ2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZkN6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZkREaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZkRUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVmRGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZEemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZkVEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZFVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZFamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVmRXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZkZEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZGVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVmRmppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVmRnppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWZHRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVmR1RpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9EemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWZHamlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iNzAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZWZHemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVmSERpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZkhUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZkhqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZkh6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVmSURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZJVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVmSWppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVmSXppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWZKRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWZKVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb0V6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlZkpqaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIxMDUiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb0lUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWZKemlBRWVLREFNRWpuT0xtUEEiIHg9IjE5NSIgeT0iNTUiIHdpZHRoPSIxODEiIGhlaWdodD0iMTQ2Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2swZWZLRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlZktUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZWZLamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWZLemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZMRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVmTFRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZMamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWZMemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVmTURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVmTVRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVmTWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZNemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZORGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZOVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZOamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZk56aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVmT0RpQUVlS0RBTUVqbk9MbVBBIiB4PSItODYiIHk9IjEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWZPVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWZPamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9GVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlZk96aUFFZUtEQU1Fam5PTG1QQSIgeD0iNTgwIiB5PSIxMzQiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZWZQRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWZQVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZQamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVmUHppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZRRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWZRVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVmUWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVmUXppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVmUkRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZSVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZSamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZSemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZTRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZlNUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVmU2ppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVmU3ppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVmVERpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvR1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWZUVGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iMjAwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlZlRqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZlR6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZlVEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWZVVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZlVqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZlV6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZWRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWZWVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZWamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZlZ6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZldEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZldUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZldqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVmV3ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWZYRGlBRWVLREFNRWpuT0xtUEEiIHg9IjE1IiB5PSItMTUiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZlhUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlZlhqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb0hUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVmWHppQUVlS0RBTUVqbk9MbVBBIiB4PSItMTEiIHk9IjEwOSIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlZllEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWZZVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZZamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVmWXppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZaRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWZaVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVmWmppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVmWnppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVmYURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZhVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZhamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVmYXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVmYkRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWZiVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlZmJqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZmJ6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVmY0RpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvSWppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWZjVGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMSIgeT0iMTQ5IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9GRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWZjamlBRWVLREFNRWpuT0xtUEEiIHg9IjY1IiB5PSI1NSIgd2lkdGg9IjU5MSIgaGVpZ2h0PSIyNDEiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfazBlZmN6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX2pCUmRoSDdiRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvQkRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBreldBUExfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb0JEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMGVmZERpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMGVmVGppQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMGVlNVRpQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZmRUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWZkamlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZmR6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWZlRGlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWZlVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVmZWppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWZlemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVmZkRpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBlZmZUaUFFZUtEQU1Fam5PTG1QQSIgZm9udE5hbWU9IlNlZ29lIFVJIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvSXppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMGVmZmppQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlsxMCwgMywgLTI5MSwgLTg3XSRbMzAwLCAxMDAsIC0xLCAxMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMGVmZnppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMGVlOXppQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMGVmS2ppQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZmdEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWZnVGlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZmdqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWZnemlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWZoRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVmaFRpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWZoamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVmaHppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBlZmlEaUFFZUtEQU1Fam5PTG1QQSIgZm9udE5hbWU9IlNlZ29lIFVJIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvS2ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMGVmaVRpQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlsxMCwgNCwgLTEyMSwgLTUxXSRbMTI2LCA0NSwgLTUsIC0xMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMGVmaWppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMGVmWURpQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMGVmQ1RpQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZml6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWZqRGlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZmpUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWZqamlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWZqemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVma0RpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWZrVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVma2ppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBlZmt6aUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb01UaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBlZmxEaUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMTAsIC0zLCAtMTkwLCA0MF0kWzE5NywgLTUzLCAtMywgLTEwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swZWZsVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2swZWZQRGlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swZWZHemlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVmbGppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlZmx6aUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVmbURpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlZm1UaUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZm1qaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWZtemlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZm5EaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWZuVGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMGVmbmppQUVlS0RBTUVqbk9MbVBBIiBmb250TmFtZT0iU2Vnb2UgVUkiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9PRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swZWZuemlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWzEwLCAtMSwgLTE5MCwgMTRdJFsxOTgsIC01LCAtMiwgMTBdIi8+CisgICAgPC9lZGdlcz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9rMGVmb0RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSJDb21wb3NpdGVTdHJ1Y3R1cmUiIG5hbWU9IkE1LU1pc3Npb25HZW5lcmF0b3IiIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZWZvVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjIwNzMiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVmb2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZm96aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZnBEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZnBUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVmcGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZwemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZEVrM2dLRUZFZUtOYTZFZkdBU1NXdyIgc291cmNlPSJQYXB5cnVzSHlwZXJMaW5rX0RpYWdyYW0iIHJlZmVyZW5jZXM9Il9rMFZhWWppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9kRWszZ2FFRkVlS05hNkVmR0FTU1d3IiBrZXk9InRvb2x0aXBfdGV4dCIgdmFsdWU9IldpZmlCb3QiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9kRWszZ3FFRkVlS05hNkVmR0FTU1d3IiBrZXk9ImRpYWdyYW1fbmFtZSIgdmFsdWU9IldpZmlCb3QiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9kRWszZzZFRkVlS05hNkVmR0FTU1d3IiBrZXk9ImlzX2RlZmF1bHRfbmF2aWdhdGlvbiIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZnFEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMGVmcVRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlZnFqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA3MCIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVmcXppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZyRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZnJUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZyamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVmcnppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVmc0RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVmc1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMGVmc2ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2swZWZzemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWZ0RGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZWZ0VGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVmdGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZnR6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZnVEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZnVUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVmdWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZ1emlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZnZEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZ2VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZ2amlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVmdnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZndEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWZ3VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVmd2ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVmd3ppQUVlS0RBTUVqbk9MbVBBIiB4PSItMTMyIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZnhEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWZ4VGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbjh6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlZnhqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjI3IiB5PSI2NSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuX0RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlZnh6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMTIwIiB5PSIyMCIgd2lkdGg9IjIzNyIgaGVpZ2h0PSIxMTgiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBlZnlEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVmeVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlZnlqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZnl6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZnpEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWZ6VGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZnpqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZnp6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWYwRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWYwVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWYwamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZjB6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZjFEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZjFUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZjFqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVmMXppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWYyRGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMzEiIHk9IjEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWYyVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWYyamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG4tRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlZjJ6aUFFZUtEQU1Fam5PTG1QQSIgeD0iNTMxIiB5PSIxMTAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG45emlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWYzRGlBRWVLREFNRWpuT0xtUEEiIHg9IjkwIiB5PSIzNSIgd2lkdGg9IjU0MSIgaGVpZ2h0PSIyNDYiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfazBlZjNUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX2pCUmRoWDdiRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuOFRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBreldBUExfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbjhUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMGVmM2ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMGVmdFRpQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMGVmeWppQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZjN6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWY0RGlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZjRUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWY0amlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWY0emlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVmNURpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWY1VGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVmNWppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBlZjV6aUFFZUtEQU1Fam5PTG1QQSIgZm9udE5hbWU9IlNlZ29lIFVJIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuX1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMGVmNkRpQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlsxMCwgMSwgLTI4NCwgLTQ5XSRbMjg0LCA1MCwgLTEwLCAwXSIvPgorICAgIDwvZWRnZXM+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfazBlZjZUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJQMy1Mb2NhbCIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlZjZqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWY2emlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVmN0RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVmN1RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVmN2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWY3emlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZjhEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVmOFRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT29EdUlLRUdFZUtOYTZFZkdBU1NXdyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT29EdUlhRUdFZUtOYTZFZkdBU1NXdyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX09vRHVJcUVHRWVLTmE2RWZHQVNTV3ciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9Pb0R1STZFR0VlS05hNkVmR0FTU1d3IiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT29EdUpLRUdFZUtOYTZFZkdBU1NXdyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9RbjZHQUtFR0VlS05hNkVmR0FTU1d3IiBzb3VyY2U9IlBhcHlydXNIeXBlckxpbmtfRGlhZ3JhbSIgcmVmZXJlbmNlcz0iX2swVmFZamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1FuNkdBYUVHRWVLTmE2RWZHQVNTV3ciIGtleT0idG9vbHRpcF90ZXh0IiB2YWx1ZT0iV2lmaUJvdCIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1FuNkdBcUVHRWVLTmE2RWZHQVNTV3ciIGtleT0iZGlhZ3JhbV9uYW1lIiB2YWx1ZT0iV2lmaUJvdCIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1FuNkdBNkVHRWVLTmE2RWZHQVNTV3ciIGtleT0iaXNfZGVmYXVsdF9uYXZpZ2F0aW9uIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVmLXppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swZWZfRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzMiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVmX1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWZfamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZl96aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVnQURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZ0FUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWdBamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdBemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWdCRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swZWdCVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBlZ0JqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlZ0J6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlZ0NEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWdDVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnQ2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVnQ3ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnRERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWdEVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZ0RqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVnRHppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZ0VEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZ0VUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdFamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnRXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZ0ZEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWdGVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWdGamlBRWVLREFNRWpuT0xtUEEiIHg9IjE1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVnRnppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlZ0dEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtUmppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVnR1RpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjQwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVnR2ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZ0d6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdIRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWdIVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdIamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZ0h6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnSURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWdJVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnSWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnSXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZ0pEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdKVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnSmppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZ0p6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlZ0tEaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTkxIiB5PSI1Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZ0tUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWdLamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbVNqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlZ0t6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjU2IiB5PSI0MCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1UemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVnTERpQUVlS0RBTUVqbk9MbVBBIiB4PSI1MCIgeT0iMTc0IiB3aWR0aD0iMjY2IiBoZWlnaHQ9IjY2Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZWdMVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNzAiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZ0xqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnTHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWdNRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnTVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZ01qaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZ016aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZ05EaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNiIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfazBlZ05UaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNzA3NyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9rMGVnTmppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVnTnppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVnT0RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZ09UaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdPamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWdPemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdQRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZ1BUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnUGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWdQemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnUURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnUVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZ1FqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdRemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnUkRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZ1JUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlZ1JqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVnUnppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlZ1NEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtS1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVnU1RpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjI1Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVnU2ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZ1N6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdURGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWdUVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdUamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZ1R6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnVURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWdVVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnVWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnVXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZ1ZEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdWVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnVmppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZ1Z6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlZ1dEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVnV1RpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlZ1dqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtTFRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVnV3ppQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjUwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVnWERpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZ1hUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdYamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWdYemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdZRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZ1lUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnWWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWdZemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnWkRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnWlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZ1pqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdaemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnYURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZ2FUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlZ2FqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVnYXppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlZ2JEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtTVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVnYlRpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9Ijc1Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVnYmppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZ2J6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdjRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWdjVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdjamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZ2N6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnZERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWdkVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnZGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnZHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZ2VEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdlVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnZWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZ2V6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlZ2ZEaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTE2NiIgeT0iNSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWdmVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVnZmppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1OVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWdmemlBRWVLREFNRWpuT0xtUEEiIHg9IjM3NCIgeT0iMTkwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVnZ0RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZ2dUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdnamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWdnemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdoRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZ2hUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnaGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWdoemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnaURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnaVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZ2lqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdpemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnakRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZ2pUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlZ2pqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVnanppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlZ2tEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtT1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVna1RpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjEwNSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlZ2tqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWdremlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnbERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVnbFRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnbGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWdsemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZ21EaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVnbVRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZ21qaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZ216aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWduRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnblRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZ25qaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWduemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWdvRGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZ29UaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWdvamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbVBUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlZ296aUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIxMzAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZWdwRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVncFRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZ3BqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZ3B6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZ3FEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVncVRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdxamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZ3F6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdyRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdyVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVncmppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZ3J6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWdzRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVnc1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVnc2ppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWdzemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVndERpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1RVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWd0VGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMSIgeT0iMTk5IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbVVEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWd0amlBRWVLREFNRWpuT0xtUEEiIHg9IjM4NyIgeT0iOSIgd2lkdGg9IjM4NCIgaGVpZ2h0PSIyMjYiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBlZ3R6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVndURpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlZ3VUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWd1amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWd1emlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVndkRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWd2VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWd2amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVndnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVnd0RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnd1RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWd3amlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWd3emlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVneERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVneFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWd4amlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlZ3h6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii01Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWd5RGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWd5VGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1VVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlZ3lqaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIxODAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZWd5emlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVnekRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnelRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZ3pqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnenppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVnMERpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZzBUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZzBqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZzB6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnMURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnMVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZzFqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZzF6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVnMkRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWcyVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItNCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVnMmppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVnMnppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtVWppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWczRGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMSIgeT0iMTU0IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVnM1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZzNqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZzN6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWc0RGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZzRUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlZzRqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWc0emlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWc1RGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWc1VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZzVqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlZzV6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWc2RGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWc2VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZzZqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVnNnppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTQiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlZzdEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlZzdUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbVV6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVnN2ppQUVlS0RBTUVqbk9MbVBBIiB4PSItMTEiIHk9IjEyNCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlZzd6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWc4RGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWc4VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVnOGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWc4emlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWc5RGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnOVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVnOWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnOXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWctRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWctVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnLWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVnLXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWdfRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlZ19UaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii00Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWdfamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWdfemlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1WRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlaEFEaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTExIiB5PSI5OSIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlaEFUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWhBamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWhBemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVoQkRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWhCVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWhCamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVoQnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVoQ0RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVoQ1RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWhDamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWhDemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVoRERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVoRFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWhEamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaER6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii05Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWhFRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWhFVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1WVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlaEVqaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTExIiB5PSI3NCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlaEV6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWhGRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWhGVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVoRmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWhGemlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWhHRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVoR1RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVoR2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVoR3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWhIRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWhIVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVoSGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVoSHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWhJRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaElUaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTgxIiB5PSIyNiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVoSWppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVoSXppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtVmppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWhKRGlBRWVLREFNRWpuT0xtUEEiIHg9Ijg4MCIgeT0iMjM5IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVoSlRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlaEpqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaEp6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWhLRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaEtUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlaEtqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWhLemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWhMRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWhMVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaExqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaEx6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWhNRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWhNVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaE1qaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVoTXppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMTUiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaE5EaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaE5UaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbVZ6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVoTmppQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjI5NSIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtVGppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVoTnppQUVlS0RBTUVqbk9MbVBBIiB4PSIxNSIgeT0iNSIgd2lkdGg9Ijg5MSIgaGVpZ2h0PSI0MTYiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfazBlaE9EaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX2pCUmRobjdiRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtSmppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBreldBUExfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbUpqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMGVoT1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMGVnR2ppQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMGVncERpQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaE9qaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWhPemlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaFBEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWhQVGlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWhQamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVoUHppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWhRRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVoUVRpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBlaFFqaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbVdEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBlaFF6aUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMTcsIDEzLCAtNTMsIC00MF0kWzY3LCA1MiwgLTMsIC0xXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swZWhSRGlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMC4xLDAuMzUpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfazBlaFJUaUFFZUtEQU1Fam5PTG1QQSIgaWQ9IigwLjE1LDAuNCkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMGVoUmppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMGVndVRpQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMGVna2ppQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaFJ6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWhTRGlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaFNUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWhTamlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWhTemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVoVERpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWhUVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVoVGppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBlaFR6aUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbVh6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBlaFVEaUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMTAsIDAsIC0zODIsIDBdJFs2NSwgMCwgLTMyNywgMF0kWzM4MiwgMCwgLTEwLCAwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swZWhVVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2swZWhBVGlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swZWdPRGlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVoVWppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaFV6aUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVoVkRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaFZUaUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaFZqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWhWemlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaFdEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWhXVGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMGVoV2ppQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtWmppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMGVoV3ppQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlsxMCwgLTEsIC0zNzYsIDEzXSRbMzgyLCAtMTYsIC00LCAtMl0iLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9rMGVoWERpQUVlS0RBTUVqbk9MbVBBIiBpZD0iKDAuMiwwLjM1KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swZWhYVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2swZWc3emlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swZWdTamlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVoWGppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaFh6aUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVoWURpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaFlUaUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaFlqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWhZemlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaFpEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWhaVGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMGVoWmppQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtYlRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMGVoWnppQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlsxMCwgMSwgLTM4MiwgMF0kWzY1LCAxLCAtMzI3LCAwXSRbMzgyLCAxLCAtMTAsIDBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBlaGFEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBlZzNUaUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBlZ1hEaUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWhhVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVoYWppQUVlS0RBTUVqbk9MbVBBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWhhemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVoYkRpQUVlS0RBTUVqbk9MbVBBIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVoYlRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaGJqaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVoYnppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaGNEaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swZWhjVGlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1kRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swZWhjamlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWzEwLCAtMSwgLTM4MiwgMTNdJFszOTMsIC0yNCwgMSwgLTEwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swZWhjemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2swZWd5emlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swZWdnRGlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVoZERpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaGRUaUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVoZGppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaGR6aUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaGVEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWhlVGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaGVqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWhlemlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMGVoZkRpQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtZXppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMGVoZlRpQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlsxMCwgLTUsIC0zODIsIDJdJFszOTUsIDMsIDMsIDEwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swZWhmamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2swZWdiamlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swZWhFemlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVoZnppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaGdEaUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVoZ1RpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaGdqaUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaGd6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWhoRGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaGhUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWhoamlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMGVoaHppQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtZ2ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMGVoaURpQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlsxMCwgLTIsIC0xMDUsIC0xXSRbMTE0LCAtMTEsIC0xLCAtMTBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBlaGlUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBlaEpUaUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBlZ0NEaUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWhpamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVoaXppQUVlS0RBTUVqbk9MbVBBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWhqRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVoalRpQUVlS0RBTUVqbk9MbVBBIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVoamppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaGp6aUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVoa0RpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaGtUaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swZWhramlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1pVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swZWhremlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWzEwLCAwLCAtNDUsIDQwXSRbMzEsIDAsIC0yNCwgNDBdJFszMSwgLTQwLCAtMjQsIDBdJFs0NSwgLTQwLCAtMTAsIDBdIi8+CisgICAgPC9lZGdlcz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9rMGVobERpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSJDb21wb3NpdGVTdHJ1Y3R1cmUiIG5hbWU9IlA0LUdsb2JhbCIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlaGxUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWhsamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVobHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVobURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVobVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWhtamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaG16aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVobkRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRlFJcTRGallFZUtmVjhHVVcxN2laZyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRlFJcTRWallFZUtmVjhHVVcxN2laZyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0ZRSXE0bGpZRWVLZlY4R1VXMTdpWmciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9GUUlxNDFqWUVlS2ZWOEdVVzE3aVpnIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRlFJcTVGallFZUtmVjhHVVcxN2laZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9LS2FlSUtFR0VlS05hNkVmR0FTU1d3IiBzb3VyY2U9IlBhcHlydXNIeXBlckxpbmtfRGlhZ3JhbSIgcmVmZXJlbmNlcz0iX2swVmFZamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0tLYWVJYUVHRWVLTmE2RWZHQVNTV3ciIGtleT0idG9vbHRpcF90ZXh0IiB2YWx1ZT0iV2lmaUJvdCIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0tLYWVJcUVHRWVLTmE2RWZHQVNTV3ciIGtleT0iZGlhZ3JhbV9uYW1lIiB2YWx1ZT0iV2lmaUJvdCIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0tLYWVJNkVHRWVLTmE2RWZHQVNTV3ciIGtleT0iaXNfZGVmYXVsdF9uYXZpZ2F0aW9uIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVob2ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swZWhvemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzMiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVocERpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWhwVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaHBqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVocHppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaHFEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWhxVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWhxamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWhxemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swZWhyRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBlaHJUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlaHJqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlaHJ6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWhzRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVoc1RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVoc2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVoc3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWh0RGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaHRUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVodGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaHR6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaHVEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWh1VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVodWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaHV6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWh2RGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWh2VGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMzEiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVodmppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaHZ6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsOURpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVod0RpQUVlS0RBTUVqbk9MbVBBIiB4PSI1MDEiIHk9IjEwMCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlaHdUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWh3amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVod3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVoeERpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVoeFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWh4amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaHh6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVoeURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaHlUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaHlqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWh5emlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVoekRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaHpUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWh6amlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWh6emlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaDBEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWgwVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbC1EaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlaDBqaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIzMiIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlaDB6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWgxRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVoMVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVoMWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVoMXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWgyRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaDJUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVoMmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaDJ6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaDNEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWgzVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVoM2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaDN6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWg0RGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWg0VGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaDRqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWg0emlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbF9EaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlaDVEaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSI4NCIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlaDVUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWg1amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVoNXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVoNkRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVoNlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWg2amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaDZ6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVoN0RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaDdUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaDdqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWg3emlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVoOERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaDhUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWg4amlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWg4emlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaDlEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWg5VGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbUFEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlaDlqaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIxNTUiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbUJUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWg5emlBRWVLREFNRWpuT0xtUEEiIHg9IjEyMCIgeT0iMzQiIHdpZHRoPSI1MTEiIGhlaWdodD0iMTg4Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2swZWgtRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlaC1UaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZWgtamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVoLXppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVoX0RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlaF9UaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVoX2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVoX3ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaUFEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlaUFUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaUFqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpQXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpQkRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaUJUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaUJqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVpQnppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWlDRGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItNiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVpQ1RpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVpQ2ppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtQmppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWlDemlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMSIgeT0iMTA2IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVpRERpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlaURUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaURqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWlEemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaUVEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlaUVUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWlFamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWlFemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWlGRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaUZUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaUZqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWlGemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWlHRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaUdUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVpR2ppQUVlS0RBTUVqbk9MbVBBIiB4PSIxNSIgeT0iLTMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaUd6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaUhEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbUJ6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVpSFRpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTEiIHk9IjE1OCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlaUhqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWlIemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWlJRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVpSVRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWlJamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWlJemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpSkRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVpSlRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpSmppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWlKemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWlLRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpS1RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpS2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWlLemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaUxEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii01Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWlMVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWlMamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1DRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlaUx6aUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIyMzAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZWlNRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVpTVRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpTWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlaU16aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpTkRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVpTlRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaU5qaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlaU56aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaU9EaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpT1RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpT2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaU96aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaVBEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVpUFRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWlQamlBRWVLREFNRWpuT0xtUEEiIHg9Ii04NiIgeT0iLTEzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWlQemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWlRRGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1DVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlaVFUaUFFZUtEQU1Fam5PTG1QQSIgeD0iNzQ2IiB5PSIxNzMiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbUJEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlaVFqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMTA1IiB5PSI0NSIgd2lkdGg9Ijc1NiIgaGVpZ2h0PSIzOTYiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfazBlaVF6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX2pCUmRoMzdiRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsOFRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBreldBUExfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbDhUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMGVpUkRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMGVoLWppQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMGVod1RpQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaVJUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWlSamlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaVJ6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWlTRGlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWlTVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVpU2ppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWlTemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVpVERpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBlaVRUaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbUNqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBlaVRqaUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMTAsIC0yLCAtMTE1LCAtM10kWzEyNiwgLTksIDEsIC0xMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMGVpVHppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMGVpRERpQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMGVoMHppQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaVVEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWlVVGlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaVVqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWlVemlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWlWRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVpVlRpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWlWamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVpVnppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBlaVdEaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbUVUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBlaVdUaUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMTAsIDQsIC0xMTUsIDNdJFsxMjQsIDExLCAtMSwgMTBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBlaVdqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBlaUhqaUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBlaDVUaUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWlXemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVpWERpQUVlS0RBTUVqbk9MbVBBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWlYVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVpWGppQUVlS0RBTUVqbk9MbVBBIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVpWHppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaVlEaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVpWVRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaVlqaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swZWlZemlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1HRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swZWlaRGlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWzEwLCAtMSwgLTExNSwgLTJdJFsxMjIsIC05LCAtMywgLTEwXSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swZWlaVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2swZWhyemlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swZWlNRGlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVpWmppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaVp6aUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVpYURpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaWFUaUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaWFqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWlhemlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaWJEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWliVGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMGVpYmppQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtSHppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMGVpYnppQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlsxMCwgLTYsIC0xMTAsIC00XSRbMTIzLCAtMTIsIDMsIC0xMF0iLz4KKyAgICA8L2VkZ2VzPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX2swZWljRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IkNvbXBvc2l0ZVN0cnVjdHVyZSIgbmFtZT0iUDEtU2Vuc29ycyIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlaWNUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWljamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpY3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVpZERpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpZFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWlkamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaWR6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8xV3FGNEtFR0VlS05hNkVmR0FTU1d3IiBzb3VyY2U9IlBhcHlydXNIeXBlckxpbmtfRGlhZ3JhbSIgcmVmZXJlbmNlcz0iX2swVmFZamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzFXcUY0YUVHRWVLTmE2RWZHQVNTV3ciIGtleT0idG9vbHRpcF90ZXh0IiB2YWx1ZT0iV2lmaUJvdCIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzFXcUY0cUVHRWVLTmE2RWZHQVNTV3ciIGtleT0iZGlhZ3JhbV9uYW1lIiB2YWx1ZT0iV2lmaUJvdCIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzFXcUY0NkVHRWVLTmE2RWZHQVNTV3ciIGtleT0iaXNfZGVmYXVsdF9uYXZpZ2F0aW9uIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVpZkRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swZWlmVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzMiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVpZmppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWlmemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaWdEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVpZ1RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaWdqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWlnemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWloRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWloVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swZWloamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBlaWh6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlaWlEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlaWlUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWlpamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpaXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVpakRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpalRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWlqamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaWp6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVpa0RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaWtUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaWtqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWlremlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpbERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaWxUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWlsamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWlsemlBRWVLREFNRWpuT0xtUEEiIHg9Ii0yNzEiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVpbURpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaW1UaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuT2ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVpbWppQUVlS0RBTUVqbk9MbVBBIiB4PSIzOTYiIHk9IjE1NSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlaW16aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWluRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpblRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVpbmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpbnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWlvRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaW9UaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVpb2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaW96aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaXBEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWlwVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpcGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaXB6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWlxRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWlxVGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0zMDEiIHk9IjUiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVpcWppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaXF6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuUGppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVpckRpQUVlS0RBTUVqbk9MbVBBIiB4PSIzOTYiIHk9IjEyNSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlaXJUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWlyamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpcnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVpc0RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpc1RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWlzamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaXN6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVpdERpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaXRUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaXRqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWl0emlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpdURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaXVUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWl1amlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWl1emlBRWVLREFNRWpuT0xtUEEiIHg9Ii0yMjEiIHk9IjQiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVpdkRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaXZUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuUWppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVpdmppQUVlS0RBTUVqbk9MbVBBIiB4PSIzOTYiIHk9Ijg1Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVpdnppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlaXdEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWl3VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWl3amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWl3emlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlaXhEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpeFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWl4amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpeHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpeURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaXlUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWl5amlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpeXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaXpEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaXpUaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTE2NiIgeT0iLTEiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVpemppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaXp6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuUmppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVpMERpQUVlS0RBTUVqbk9MbVBBIiB4PSIzOTYiIHk9IjMwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVpMFRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlaTBqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWkwemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWkxRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWkxVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlaTFqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpMXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWkyRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpMlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpMmppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaTJ6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWkzRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpM1RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlaTNqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaTN6aUFFZUtEQU1Fam5PTG1QQSIgeD0iLTE4NiIgeT0iNCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWk0RGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVpNFRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG5TamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWk0amlBRWVLREFNRWpuT0xtUEEiIHg9IjM5NiIgeT0iNTUiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbmlqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWk0emlBRWVLREFNRWpuT0xtUEEiIHg9IjUwIiB5PSI1IiB3aWR0aD0iNDA2IiBoZWlnaHQ9IjE3MiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVpNURpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWk1VGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaTVqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVpNXppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaTZEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWk2VGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWk2amlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWk2emlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swZWk3RGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBlaTdUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlaTdqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlaTd6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWk4RGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpOFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVpOGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpOHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWk5RGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaTlUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVpOWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaTl6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaS1EaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWktVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVpLWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaS16aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWlfRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWlfVGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMDEiIHk9IjEiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVpX2ppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlaV96aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuWURpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVqQURpQUVlS0RBTUVqbk9MbVBBIiB4PSIxNzYiIHk9IjMwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG5pemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVqQVRpQUVlS0RBTUVqbk9MbVBBIiB4PSI0NzAiIHk9IjM1MCIgd2lkdGg9IjE4NiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVqQWppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWpBemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlakJEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqQlRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlakJqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWpCemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWpDRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWpDVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swZWpDamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBlakN6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlakREaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlakRUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWpEamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqRHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqRURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqRVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWpFamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlakV6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqRkRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlakZUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlakZqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWpGemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqR0RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlakdUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWpHamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWpHemlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlakhEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWpIVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMblR6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlakhqaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSI0MiIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlakh6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWpJRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqSVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqSWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqSXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWpKRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlakpUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqSmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlakp6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaktEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWpLVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqS2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlakt6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWpMRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWpMVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlakxqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWpMemlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMblV6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlak1EaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIxNyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlak1UaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWpNamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqTXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqTkRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqTlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWpOamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlak56aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqT0RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlak9UaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlak9qaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWpPemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqUERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlalBUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWpQamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWpQemlBRWVLREFNRWpuT0xtUEEiIHg9Ii0zMTEiIHk9Ii01Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlalFEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWpRVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMblZ6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlalFqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMzgxIiB5PSI5NSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlalF6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWpSRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqUlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqUmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqUnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWpTRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlalNUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqU2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlalN6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlalREaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWpUVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqVGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlalR6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWpVRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWpVVGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0zMDYiIHk9IjE2Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlalVqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWpVemlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbld6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlalZEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMzgwIiB5PSI1NCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG5qRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVqVlRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNjUiIHk9IjIxMCIgd2lkdGg9IjM5MSIgaGVpZ2h0PSIxMjIiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlalZqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA3MCIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqVnppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWpXRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlaldUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWpXamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqV3ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqWERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVqWFRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMGVqWGppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2swZWpYemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWpZRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZWpZVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqWWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlall6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlalpEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlalpUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqWmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWpaemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlamFEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWphVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWphamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqYXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlamJEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWpiVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVqYmppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVqYnppQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAxIiB5PSIxIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlamNEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWpjVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMblpUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlamNqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMTg1IiB5PSI1NSIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG5qVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVqY3ppQUVlS0RBTUVqbk9MbVBBIiB4PSI0NzUiIHk9IjU3NSIgd2lkdGg9IjE5NiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVqZERpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWpkVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlamRqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqZHppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlamVEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWplVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWplamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWplemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swZWpmRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBlamZUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlamZqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlamZ6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWpnRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqZ1RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqZ2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqZ3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWpoRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlamhUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqaGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlamh6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlamlEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWppVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqaWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlaml6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWpqRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWpqVGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMjYiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVqamppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlamp6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuYWppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVqa0RpQUVlS0RBTUVqbk9MbVBBIiB4PSIxOTAiIHk9IjcwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVqa1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWpramlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqa3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqbERpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqbFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWpsamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlamx6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqbURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlam1UaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlam1qaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWptemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlam5EaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWpuVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVqbmppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVqbnppQUVlS0RBTUVqbk9MbVBBIiB4PSItMTM2IiB5PSIyIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlam9EaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWpvVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbmJqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlam9qaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjE1IiB5PSIzMSIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG5qamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVqb3ppQUVlS0RBTUVqbk9MbVBBIiB4PSI0NDAiIHk9IjQ2NSIgd2lkdGg9IjIyNiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVqcERpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWpwVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlanBqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqcHppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlanFEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWpxVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWpxamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWpxemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swZWpyRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBlanJUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlanJqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlanJ6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWpzRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqc1RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqc2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqc3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWp0RGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlanRUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqdGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlanR6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlanVEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWp1VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqdWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlanV6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWp2RGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWp2VGlBRWVLREFNRWpuT0xtUEEiIHg9Ii05MSIgeT0iNSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWp2amlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVqdnppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG5jRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWp3RGlBRWVLREFNRWpuT0xtUEEiIHg9IjIxMSIgeT0iNzAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZWp3VGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlandqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWp3emlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWp4RGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWp4VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlanhqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqeHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWp5RGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqeVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqeWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlanl6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqekRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlanpUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWp6amlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWp6emlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMjYiIHk9IjEiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVqMERpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlajBUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuZERpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVqMGppQUVlS0RBTUVqbk9MbVBBIiB4PSIyMTEiIHk9IjQ0IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbmp6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWowemlBRWVLREFNRWpuT0xtUEEiIHg9IjQ1MSIgeT0iNjgwIiB3aWR0aD0iMjIxIiBoZWlnaHQ9IjEwMSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9rMGVqMURpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWoxVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVqMWppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqMXppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqMkRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlajJUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqMmppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqMnppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlajNEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlajNUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlajNqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqM3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqNERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqNFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqNGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWo0emlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlajVEaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTI5MSIgeT0iMjIiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlajVUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlajVqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbmRqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVqNXppQUVlS0RBTUVqbk9MbVBBIiB4PSI4MzUiIHk9IjM0MyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlajZEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlajZUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlajZqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWo2emlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlajdEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlajdUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWo3amlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWo3emlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWo4RGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlajhUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlajhqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlajh6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlajlEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVqOVRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWo5amlBRWVLREFNRWpuT0xtUEEiIHg9Ii0zMDEiIHk9Ii0yMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVqOXppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVqLURpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuZWppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWotVGlBRWVLREFNRWpuT0xtUEEiIHg9IjgzNSIgeT0iMzAyIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVqLWppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqLXppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqX0RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlal9UaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVqX2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVqX3ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla0FEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBla0FUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla0FqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVrQXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVrQkRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVrQlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVrQmppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWtCemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBla0NEaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTk2IiB5PSIxMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVrQ1RpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVrQ2ppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuZmppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWtDemlBRWVLREFNRWpuT0xtUEEiIHg9IjgzNSIgeT0iNDE4IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVrRERpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVrRFRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVrRGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBla0R6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVrRURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVrRVRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla0VqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBla0V6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla0ZEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVrRlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVrRmppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVrRnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVrR0RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWtHVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBla0dqaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwMSIgeT0iMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBla0d6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBla0hEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbmdqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVrSFRpQUVlS0RBTUVqbk9MbVBBIiB4PSI4MzYiIHk9IjY3MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZWtIamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWtIemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtJRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVrSVRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtJamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWtJemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVrSkRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVrSlRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVrSmppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtKemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtLRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtLVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtLamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBla0t6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVrTERpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTMxIiB5PSIxMSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVrTFRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVrTGppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuaGppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWtMemlBRWVLREFNRWpuT0xtUEEiIHg9IjgzNSIgeT0iNTczIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVrTURpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBla01UaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla01qaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWtNemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla05EaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBla05UaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtOamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWtOemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtPRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla09UaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla09qaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtPemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtQRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBla1BUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVrUGppQUVlS0RBTUVqbk9MbVBBIiB4PSItMTI2IiB5PSItOCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVrUHppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVrUURpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExua0RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWtRVGlBRWVLREFNRWpuT0xtUEEiIHg9IjgzNiIgeT0iNzUzIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVrUWppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBla1F6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla1JEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWtSVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla1JqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBla1J6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtTRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWtTVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtTamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla1N6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla1REaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtUVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtUamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBla1R6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVrVURpQUVlS0RBTUVqbk9MbVBBIiB4PSItODYiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVrVVRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVrVWppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExua1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWtVemlBRWVLREFNRWpuT0xtUEEiIHg9IjgzNiIgeT0iNzgwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVrVkRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBla1ZUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla1ZqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWtWemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla1dEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBla1dUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtXamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWtXemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtYRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla1hUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla1hqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtYemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtZRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBla1lUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVrWWppQUVlS0RBTUVqbk9MbVBBIiB4PSItMTM2IiB5PSItNiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVrWXppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVrWkRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExua2ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWtaVGlBRWVLREFNRWpuT0xtUEEiIHg9IjgzNiIgeT0iNTM2IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVrWmppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBla1p6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla2FEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWthVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla2FqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBla2F6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtiRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWtiVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtiamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla2J6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla2NEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSWNvblN0ZXJlb3R5cGUiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtjVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtjamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBla2N6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVrZERpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTE2IiB5PSItNiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVrZFRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVrZGppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExua3ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWtkemlBRWVLREFNRWpuT0xtUEEiIHg9IjgzNSIgeT0iNzMiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZWtlRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVrZVRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVrZWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBla2V6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVrZkRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVrZlRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla2ZqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBla2Z6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla2dEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVrZ1RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RGF0YUZsb3dQb3J0Ii8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVrZ2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla2d6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBla2hEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVraFRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWtoamlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMzYiIHk9Ii05Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWtoemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWtpRGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG5sRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBla2lUaUFFZUtEQU1Fam5PTG1QQSIgeD0iODM1IiB5PSI5OCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBla2lqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWtpemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtqRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVralRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtqamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWtqemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVra0RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVra1RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVra2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtremlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWtsRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVrbFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVrbGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWtsemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBla21EaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTE4NiIgeT0iLTkiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBla21UaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBla21qaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbmxUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVrbXppQUVlS0RBTUVqbk9MbVBBIiB4PSI4MzUiIHk9IjEyOCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuZFRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVrbkRpQUVlS0RBTUVqbk9MbVBBIiB4PSItMzIwIiB5PSIyMCIgd2lkdGg9Ijg0NiIgaGVpZ2h0PSI4NTEiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfazBla25UaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX2pCUmRpSDdiRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuT0RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBreldBUExfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbk9EaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMGVrbmppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMGVqUXppQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMGVqNkRpQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBla256aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWtvRGlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBla29UaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWtvamlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWtvemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVrcERpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWtwVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVrcGppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBla3B6aUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbmxqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBla3FEaUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMTAsIC0yLCAtMTY5LCAwXSRbMTc1LCAtMiwgLTQsIDBdIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfazBla3FUaUFFZUtEQU1Fam5PTG1QQSIgaWQ9IigwLjIsMC41KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swZWtxamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMTMiIHNvdXJjZT0iX2swZWpNVGlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swZWoxamlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVrcXppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAyNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBla3JEaUFFZUtEQU1Fam5PTG1QQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVrclRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBla3JqaUFFZUtEQU1Fam5PTG1QQSIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBla3J6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWtzRGlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBla3NUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWtzamlBRWVLREFNRWpuT0xtUEEiIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMGVrc3ppQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExublRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMGVrdERpQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlsxMCwgMywgLTE3NSwgLTJdJFsxODYsIC01LCAxLCAtMTBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBla3RUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBlaTd6aUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBlai1qaUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWt0amlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVrdHppQUVlS0RBTUVqbk9MbVBBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWt1RGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVrdVRpQUVlS0RBTUVqbk9MbVBBIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVrdWppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBla3V6aUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVrdkRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBla3ZUaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swZWt2amlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG5wRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swZWt2emlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWzEwLCAtMSwgLTE2NywgMTFdJFsxNzUsIC0xMywgLTIsIC0xXSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swZWt3RGlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMC4xLDAuNCkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMGVrd1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMGVqZnppQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMGVrSGppQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBla3dqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWt3emlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBla3hEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWt4VGlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWt4amlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVreHppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWt5RGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVreVRpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBla3lqaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbnF6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBla3l6aUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMTAsIC0xLCAtMTY1LCAwXSRbODQsIC0xLCAtOTEsIDBdJFsxNjUsIC0xLCAtMTAsIDBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBla3pEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBlandUaUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBla01EaUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWt6VGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVremppQUVlS0RBTUVqbk9MbVBBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWt6emlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVrMERpQUVlS0RBTUVqbk9MbVBBIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVrMFRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlazBqaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVrMHppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlazFEaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swZWsxVGlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG5zamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swZWsxamlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWzEwLCAwLCAtMTU5LCAtNF0kWzE3MCwgLTYsIDEsIC0xMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMGVrMXppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMGVqcnppQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMGVrUWppQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlazJEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWsyVGlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlazJqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWsyemlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWszRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVrM1RpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWszamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVrM3ppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBlazREaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbnVUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBlazRUaUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMTAsIDYsIC0xNTksIDFdJFsxNjgsIDE1LCAtMSwgMTBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBlazRqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBlallUaUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBla0REaUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWs0emlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVrNURpQUVlS0RBTUVqbk9MbVBBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWs1VGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVrNWppQUVlS0RBTUVqbk9MbVBBIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVrNXppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlazZEaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVrNlRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlazZqaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swZWs2emlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG53RGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swZWs3RGlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWzEwLCAtNiwgLTE2MCwgLTVdJFsxNjksIC0xMSwgLTEsIC0xMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMGVrN1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMGVqa1RpQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMGVrVkRpQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlazdqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWs3emlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlazhEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWs4VGlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWs4amlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVrOHppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWs5RGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVrOVRpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBlazlqaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbnh6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBlazl6aUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMTAsIDAsIC0xNjUsIC0zXSRbMTcyLCAtNywgLTMsIC0xMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMGVrLURpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMGVpbXppQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMGVqSHppQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlay1UaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWstamlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlay16aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWtfRGlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWtfVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVrX2ppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWtfemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVsQURpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBlbEFUaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbnpqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBlbEFqaUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbNSwgLTEsIDIwMSwgLTkxXSRbMzcsIC0xLCAyMzMsIC05MV0kWzM3LCA1MywgMjMzLCAtMzddJFstMjI2LCA1MywgLTMwLCAtMzddJFstMjI2LCA5MCwgLTMwLCAwXSRbLTIwNiwgOTAsIC0xMCwgMF0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9rMGVsQXppQUVlS0RBTUVqbk9MbVBBIiBpZD0iKDAuNzUsMC44NSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMGVsQkRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMGVpaVRpQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMGVqRFRpQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbEJUaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWxCamlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbEJ6aUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWxDRGlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWxDVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVsQ2ppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWxDemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVsRERpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBlbERUaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbjFUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBlbERqaUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbNCwgLTUsIDIwNywgLTk3XSRbMjIsIC01LCAyMjUsIC05N10kWzIyLCAxNywgMjI1LCAtNzVdJFstMjQyLCAxNywgLTM5LCAtNzVdJFstMjQyLCA5MywgLTM5LCAxXSRbLTIwNywgOTMsIC00LCAxXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swZWxEemlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMC44LDAuNjUpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfazBlbEVEaUFFZUtEQU1Fam5PTG1QQSIgaWQ9IigwLjIsMC42NSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMGVsRVRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMGVpclRpQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMGVraWppQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbEVqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWxFemlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbEZEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWxGVGlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWxGamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVsRnppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWxHRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVsR1RpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBlbEdqaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbjNEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBlbEd6aUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMTAsIDAsIC0zNzUsIC0zNF0kWzM4MCwgMjQsIC01LCAtMTBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBlbEhEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAxMyIgc291cmNlPSJfazBlaTBUaUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBla2VEaUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWxIVGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDI1Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVsSGppQUVlS0RBTUVqbk9MbVBBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWxIemlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVsSURpQUVlS0RBTUVqbk9MbVBBIiB5PSItMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVsSVRpQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbElqaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVsSXppQUVlS0RBTUVqbk9MbVBBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjA1MiI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbEpEaUFFZUtEQU1Fam5PTG1QQSIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swZWxKVGlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG40emlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swZWxKamlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWzEwLCAwLCAtMzc1LCAtMTddJFszODUsIDcsIDAsIC0xMF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMGVsSnppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDEzIiBzb3VyY2U9Il9rMGVpdnppQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMGVrWmppQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbEtEaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMjUiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWxLVGlBRWVLREFNRWpuT0xtUEEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbEtqaUFFZUtEQU1Fam5PTG1QQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwNTAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWxLemlBRWVLREFNRWpuT0xtUEEiIHk9Ii0yMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWxMRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUxIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVsTFRpQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWxMamlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDUyIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVsTHppQUVlS0RBTUVqbk9MbVBBIiB5PSIyMCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBlbE1EaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbjZqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBlbE1UaUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbMTAsIC0zLCAtMzc1LCAxXSRbMzg1LCA2LCAwLCAxMF0iLz4KKyAgICA8L2VkZ2VzPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX2swZWxNamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IkNvbXBvc2l0ZVN0cnVjdHVyZSIgbmFtZT0iUDJfUHJveGltZXRyeV9TeXN0ZW1zIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVsTXppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIyMDczIiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWxORGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVsTlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVsTmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVsTnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWxPRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbE9UaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWxPamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfazBlbE96aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZWxQRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNzAiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWxQVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbFBqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVsUHppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbFFEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWxRVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWxRamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWxRemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swZWxSRGlBRWVLREFNRWpuT0xtUEEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2swZWxSVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWxSamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbXF6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWxSemlBRWVLREFNRWpuT0xtUEEiIHg9IjIwIiB5PSIxNTciIHdpZHRoPSIxOTEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBlbFNEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVsU1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlbFNqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWxTemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWxURGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVsVFRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWxUamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWxUemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVsVURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWxVVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbFVqaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwNiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVsVXppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWxWRGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1remlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbFZUaUFFZUtEQU1Fam5PTG1QQSIgeD0iNDI2IiB5PSIzNSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZWxWamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVsVnppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVsV0RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbFdUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVsV2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVsV3ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbFhEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVsWFRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWxYamlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMDEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbFh6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVsWURpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtbHppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWxZVGlBRWVLREFNRWpuT0xtUEEiIHg9IjQyNiIgeT0iMTc1Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlbFlqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWxZemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWxaRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVsWlRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWxaamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWxaemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVsYURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWxhVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbGFqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbGF6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVsYkRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtbXppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWxiVGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iMTQ1Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlbGJqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWxiemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWxjRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVsY1RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWxjamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWxjemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVsZERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWxkVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbGRqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbGR6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVsZURpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtbnppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWxlVGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iNTAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVsZWppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbGV6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbGZEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWxmVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbGZqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbGZ6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWxnRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbGdUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVsZ2ppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVsZ3ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWxoRGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1vemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbGhUaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSI3NSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZWxoamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVsaHppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVsaURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbGlUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVsaWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVsaXppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbGpEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVsalRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWxqamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWxqemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbGtEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbXB6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVsa1RpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjExNSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbWtUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbGtqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMwIiB3aWR0aD0iNDM2IiBoZWlnaHQ9IjMyMSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlbGt6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMjEwOSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVsbERpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbGxUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbGxqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbGx6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVsbURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWxtVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVsbWppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTkyIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbWtqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbG16aUFFZUtEQU1Fam5PTG1QQSIgeD0iNDgwIiB5PSI3NSIgd2lkdGg9IjQ2MSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlbG5EaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMjA3MyIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVsblRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbG5qaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbG56aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbG9EaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVsb1RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWxvamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVsb3ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swZWxwRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzMiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9rMGVscFRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWxwamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVscHppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbHFEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbHFUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWxxamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbHF6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbHJEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWxyVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbHJqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVscnppQUVlS0RBTUVqbk9MbVBBIiB4PSItMTA2IiB5PSI1Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWxzRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbHNUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbXNEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVsc2ppQUVlS0RBTUVqbk9MbVBBIiB4PSIzMjYiIHk9IjM2Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlbHN6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWx0RGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWx0VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVsdGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWx0emlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWx1RGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVsdVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWx1amlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbHV6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbHZEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVsdlRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtdERpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWx2amlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iMzEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVsdnppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbHdEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbHdUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWx3amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbHd6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbHhEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWx4VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbHhqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVseHppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVseURpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZWx5VGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG11RGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbHlqaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSI1MSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbXJqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbHl6aUFFZUtEQU1Fam5PTG1QQSIgeD0iNjAiIHk9IjM5NCIgd2lkdGg9IjMzNiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlbHpEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMjEwOSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVselRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbHpqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbHp6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbDBEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVsMFRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWwwamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVsMHppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTkyIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbXJ6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbDFEaUFFZUtEQU1Fam5PTG1QQSIgeD0iNTMyIiB5PSI0MTQiIHdpZHRoPSIzNzQiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZWwxVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjIwNzMiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbDFqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWwxemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWwyRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWwyVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbDJqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVsMnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbDNEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMGVsM1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBlbDNqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVsM3ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlbDREaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWw0VGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWw0amlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVsNHppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWw1RGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWw1VGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVsNWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZWw1emlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbDZEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbDZUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVsNmppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtdXppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWw2emlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iNjciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVsN0RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbDdUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbDdqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWw3emlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbDhEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbDhUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWw4amlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbDh6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVsOURpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTU2IiB5PSItMTUiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbDlUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVsOWppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtdnppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZWw5emlBRWVLREFNRWpuT0xtUEEiIHg9IjIxOCIgeT0iNjciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVsLURpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbC1UaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbC1qaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZWwtemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbF9EaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbF9UaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZWxfamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbF96aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVtQURpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVtQVRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW1BamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG13emlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbUF6aUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIzNyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbXVUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbUJEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMTE4IiB5PSI1MzgiIHdpZHRoPSIyMjgiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZW1CVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjIxMDkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbUJqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW1CemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW1DRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW1DVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbUNqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVtQ3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbUREaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTE5MiIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG11amlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZW1EVGlBRWVLREFNRWpuT0xtUEEiIHg9IjUxMCIgeT0iNTY1IiB3aWR0aD0iMjY2Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVtRGppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIyMDczIiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW1EemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVtRURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVtRVRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVtRWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW1FemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbUZEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW1GVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfazBlbUZqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2swZW1GemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbUdEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZW1HVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVtR2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVtR3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbUhEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVtSFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVtSGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbUh6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVtSURpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW1JVGlBRWVLREFNRWpuT0xtUEEiIHg9IjIwIiB5PSI1Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW1JamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbUl6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbXhqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVtSkRpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjI4MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZW1KVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVtSmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVtSnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbUtEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVtS1RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVtS2ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbUt6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVtTERpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW1MVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW1MamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbUx6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbXlqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVtTURpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjI1MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZW1NVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVtTWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVtTXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbU5EaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVtTlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVtTmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbU56aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVtT0RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW1PVGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW1PamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbU96aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbXpqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVtUERpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjI1Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlbVBUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW1QamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW1QemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVtUURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW1RVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW1RamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVtUXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW1SRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbVJUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbVJqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVtUnppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtMGppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZW1TRGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iNTUiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVtU1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbVNqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbVN6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW1URGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbVRUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbVRqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW1UemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbVVEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVtVVRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVtVWppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW1VemlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG0xamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbVZEaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIxMDAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVtVlRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbVZqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbVZ6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW1XRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbVdUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbVdqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW1XemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbVhEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVtWFRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVtWGppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW1YemlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG0zVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbVlEaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIxNTAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVtWVRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbVlqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbVl6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW1aRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbVpUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbVpqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW1aemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbWFEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVtYVRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVtYWppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW1hemlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG0zamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbWJEaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIxOTAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVtYlRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbWJqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbWJ6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW1jRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbWNUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbWNqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW1jemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbWREaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVtZFRpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAxIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW1kamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbWR6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbTN6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVtZURpQUVlS0RBTUVqbk9MbVBBIiB4PSIyOTEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlbWVUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW1lamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW1lemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVtZkRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW1mVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW1mamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVtZnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW1nRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbWdUaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwMSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVtZ2ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW1nemlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG00RGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbWhEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjkxIiB5PSI5MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZW1oVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVtaGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVtaHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbWlEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVtaVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVtaWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbWl6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVtakRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW1qVGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xNjEiIHk9IjUiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbWpqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVtanppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtNFRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZW1rRGlBRWVLREFNRWpuT0xtUEEiIHg9IjI5MSIgeT0iMTI1Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlbWtUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW1ramlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW1remlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVtbERpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW1sVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW1samlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVtbHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW1tRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbW1UaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTExNiIgeT0iNSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVtbWppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW1temlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG00amlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbW5EaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjkxIiB5PSIxNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVtblRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbW5qaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbW56aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW1vRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbW9UaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbW9qaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW1vemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbXBEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVtcFRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVtcGppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW1wemlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG00emlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbXFEaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIyMjUiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG14RGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZW1xVGlBRWVLREFNRWpuT0xtUEEiIHg9Ijk1IiB5PSI2NTUiIHdpZHRoPSIzMDEiIGhlaWdodD0iMzExIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVtcWppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIyMTA5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW1xemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVtckRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVtclRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVtcmppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW1yemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbXNEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW1zVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxOTIiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExteFRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVtc2ppQUVlS0RBTUVqbk9MbVBBIiB4PSI1MzAiIHk9Ijc5NSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9rMGVtc3ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfakJSZGlYN2JFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1rRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0JmTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExta0RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swZW10RGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMDIiIHNvdXJjZT0iX2swZWxremlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swZWxNemlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swZW10VGlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swZW10amlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWy0yNCwgLTIsIDE2MCwgOV0kWy0xNzEsIC0xMiwgMTMsIC0xXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swZW10emlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMC4wMzYwMzYwMzYwMzYwMzYwMzYsMC4zNykiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9rMGVtdURpQUVlS0RBTUVqbk9MbVBBIiBpZD0iKDAuOTcwMTgzNDg2MjM4NTMyMSwwLjQ5ODQ0MjM2NzYwMTI0NjEpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBlbXVUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAwMiIgc291cmNlPSJfazBlbHpEaUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBlbG5EaUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBlbXVqaUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBlbXV6aUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbLTUzLCAyLCAxNTksIC05XSRbLTE4OSwgMTUsIDIzLCA0XSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swZW12RGlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMC4wODAwNjA0MjI5NjA3MjUwOCwwLjQ4KSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swZW12VGlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMC45MzE1NDc2MTkwNDc2MTkxLDAuNzkpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBlbXZqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAwMiIgc291cmNlPSJfazBlbUJUaUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBlbDFUaUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBlbXZ6aUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBlbXdEaUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbLTM1LCAtMiwgMTg4LCA5XSRbLTE5OSwgLTE0LCAyNCwgLTNdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfazBlbXdUaUFFZUtEQU1Fam5PTG1QQSIgaWQ9IigwLjEzMTU3ODk0NzM2ODQyMTA1LDAuMjMpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfazBlbXdqaUFFZUtEQU1Fam5PTG1QQSIgaWQ9IigwLjg5NDczNjg0MjEwNTI2MzIsMC4zOSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMGVtd3ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDAyIiBzb3VyY2U9Il9rMGVtcWppQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMGVtRGppQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMGVteERpQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMGVteFRpQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlstNiwgMCwgMjA1LCAtMjBdJFstMTk1LCAyMywgMTYsIDNdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfazBlbXhqaUFFZUtEQU1Fam5PTG1QQSIgaWQ9IigwLjA2LDAuNSkiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9rMGVteHppQUVlS0RBTUVqbk9MbVBBIiBpZD0iKDAuOTQ2ODQzODUzODIwNTk4LDAuNTk0ODU1MzA1NDY2MjM4KSIvPgorICAgIDwvZWRnZXM+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfazBlbXlEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJQM19Mb2NhbF9TeXN0ZW1zIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVteVRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIyMDczIiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW15amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVteXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVtekRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVtelRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW16amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbXp6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW0wRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfazBlbTBUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2swZW0wamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbTB6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZW0xRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVtMVRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVtMWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbTF6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVtMkRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVtMlRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbTJqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVtMnppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW0zRGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW0zVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbTNqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbUtUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVtM3ppQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjEwNSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZW00RGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVtNFRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVtNGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbTR6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVtNURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVtNVRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbTVqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVtNXppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW02RGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW02VGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbTZqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbUxUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVtNnppQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjE2Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlbTdEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW03VGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW03amlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVtN3ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW04RGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW04VGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVtOGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW04emlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbTlEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbTlUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVtOWppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtTVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZW05emlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iNDEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVtLURpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbS1UaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbS1qaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW0temlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbV9EaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbV9UaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW1famlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbV96aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVuQURpQUVlS0RBTUVqbk9MbVBBIiB4PSItODYiIHk9IjUiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbkFUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVuQWppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtTlRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZW5BemlBRWVLREFNRWpuT0xtUEEiIHg9IjE3MiIgeT0iMTYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlbkJEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW5CVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW5CamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVuQnppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW5DRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW5DVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVuQ2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW5DemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbkREaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbkRUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVuRGppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtT1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZW5EemlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iNzEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVuRURpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbkVUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbkVqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW5FemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbkZEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbkZUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW5GamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbkZ6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVuR0RpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVuR1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW5HamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1QVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbkd6aUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIxMzUiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVuSERpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbkhUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbkhqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW5IemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbklEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbklUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW5JamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbkl6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVuSkRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVuSlRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW5KamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1RVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbkp6aUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIxOTUiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1KemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZW5LRGlBRWVLREFNRWpuT0xtUEEiIHg9IjEwOSIgeT0iMjAiIHdpZHRoPSIxODIiIGhlaWdodD0iMjUxIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVuS1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIyMTA5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW5LamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVuS3ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVuTERpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVuTFRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW5MamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbkx6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW5NRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxOTIiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtS0RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVuTVRpQUVlS0RBTUVqbk9MbVBBIiB4PSI0NDQiIHk9IjExOCIgd2lkdGg9IjQ3MiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9rMGVuTWppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfakJSZGluN2JFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1KamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0JmTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExtSmppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swZW5NemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMDIiIHNvdXJjZT0iX2swZW5LVGlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swZW15VGlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swZW5ORGlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swZW5OVGlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWy0zMywgLTEsIDE4NywgMF0kWy0xODYsIDUsIDM0LCA2XSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swZW5OamlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMC4wNDkxMDcxNDI4NTcxNDI4NTYsMC4zOSkiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9rMGVuTnppQUVlS0RBTUVqbk9MbVBBIiBpZD0iKDAuODEzMTg2ODEzMTg2ODEzMiwwLjU0MTgzMjY2OTMyMjcwOTEpIi8+CisgICAgPC9lZGdlcz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9rMGVuT0RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSJDb21wb3NpdGVTdHJ1Y3R1cmUiIG5hbWU9IlA0X0dsb2JhX1N5c3RlbXMiIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZW5PVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjIwNzMiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbk9qaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW5PemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW5QRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW5QVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlblBqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVuUHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlblFEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMGVuUVRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBlblFqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVuUXppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlblJEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW5SVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW5SamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVuUnppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW5TRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW5TVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVuU2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW5TemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlblREaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTk4IiB5PSI1Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW5UVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlblRqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbDlEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVuVHppQUVlS0RBTUVqbk9MbVBBIiB4PSIxNTMiIHk9IjE1MiIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZW5VRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVuVVRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVuVWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlblV6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVuVkRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVuVlRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlblZqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVuVnppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW5XRGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW5XVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbldqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbC1EaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVuV3ppQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjM3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlblhEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW5YVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW5YamlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVuWHppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW5ZRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW5ZVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVuWWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW5ZemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlblpEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlblpUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVuWmppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsX0RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZW5aemlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iNjciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVuYURpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbmFUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbmFqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW5hemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbmJEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbmJUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW5iamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbmJ6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVuY0RpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVuY1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW5jamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG1BRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbmN6aUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIxMTIiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTGw4amlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZW5kRGlBRWVLREFNRWpuT0xtUEEiIHg9IjEzOCIgeT0iMTI4IiB3aWR0aD0iMTYzIiBoZWlnaHQ9IjE5MyIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlbmRUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMjEwOSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVuZGppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbmR6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbmVEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbmVUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVuZWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW5lemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVuZkRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTkyIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbDh6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbmZUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMzkyIiB5PSIyMDMiIHdpZHRoPSIzMjkiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfazBlbmZqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX2pCUmRpMzdiRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExsOFRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8Y29uZmlndXJhdGlvbiB4bWk6dHlwZT0iY29uZmlndXJhdGlvbjpQYXB5cnVzRGlhZ3JhbSIgaHJlZj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb24vdmlld3BvaW50cy9yb2JvdG1sLmNvbmZpZ3VyYXRpb24jXzBreldCZkxfRWVPTlhQUTJtYnc5dkEiLz4KKyAgICA8L3N0eWxlcz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbDhUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMGVuZnppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI0MDAyIiBzb3VyY2U9Il9rMGVuZFRpQUVlS0RBTUVqbk9MbVBBIiB0YXJnZXQ9Il9rMGVuT1RpQUVlS0RBTUVqbk9MbVBBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9rMGVuZ0RpQUVlS0RBTUVqbk9MbVBBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9rMGVuZ1RpQUVlS0RBTUVqbk9MbVBBIiBwb2ludHM9IlstMjAsIDAsIDEwNCwgMF0kWy0xMTEsIDEsIDEzLCAxXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swZW5namlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMC4wNDA2NTA0MDY1MDQwNjUwNCwwLjMxKSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2swZW5nemlBRWVLREFNRWpuT0xtUEEiIGlkPSIoMC45MjAyNDUzOTg3NzMwMDYyLDAuNTQ5MjIyNzk3OTI3NDYxMSkiLz4KKyAgICA8L2VkZ2VzPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX2swZW5oRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IkNvbXBvc2l0ZVN0cnVjdHVyZSIgbmFtZT0iQTRfUGF0aFBsYW5uaW5nX1N5c3RlbXMiIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZW5oVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjIwNzMiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbmhqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW5oemlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW5pRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW5pVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbmlqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVuaXppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbmpEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMGVualRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBlbmpqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVuanppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlbmtEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW5rVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW5ramlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVua3ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW5sRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW5sVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVubGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW5semlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbm1EaUFFZUtEQU1Fam5PTG1QQSIgeD0iMTYiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVubVRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW5tamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9CemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbm16aUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSI0MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZW5uRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVublRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVubmppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbm56aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVub0RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVub1RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbm9qaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVub3ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW5wRGlBRWVLREFNRWpuT0xtUEEiIHg9Ii03MSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVucFRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW5wamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9DemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbnB6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMTQ3IiB5PSI4NSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZW5xRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVucVRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVucWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbnF6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVuckRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVuclRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbnJqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVucnppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW5zRGlBRWVLREFNRWpuT0xtUEEiIHg9IjE2IiB5PSItNSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVuc1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW5zamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9EemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbnN6aUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSI5MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZW50RGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW50VGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW50amlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVudHppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW51RGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW51VGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVudWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVudXppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVudkRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW52VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW52amlBRWVLREFNRWpuT0xtUEEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikljb25TdGVyZW90eXBlIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVudnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVud0RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW53VGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbndqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbnd6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVueERpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvRXppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZW54VGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iMTQ1IiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9CVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZW54amlBRWVLREFNRWpuT0xtUEEiIHg9IjEwNCIgeT0iMTM1IiB3aWR0aD0iMTU3IiBoZWlnaHQ9IjE3NiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlbnh6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMjA3MyIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVueURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbnlUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbnlqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbnl6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVuekRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW56VGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVuemppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swZW56emlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzMiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9rMGVuMERpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZW4wVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVuMGppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbjB6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbjFEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW4xVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbjFqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbjF6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW4yRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbjJUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVuMmppQUVlS0RBTUVqbk9MbVBBIiB4PSItNzYiIHk9IjUiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbjJ6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVuM0RpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvRlRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZW4zVGlBRWVLREFNRWpuT0xtUEEiIHg9IjE5NCIgeT0iNjQiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVuM2ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbjN6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbjREaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW40VGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbjRqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbjR6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW41RGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbjVUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVuNWppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVuNXppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW42RGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9HVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbjZUaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIxOSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZW42amlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVuNnppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVuN0RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbjdUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVuN2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVuN3ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbjhEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVuOFRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW44amlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW44emlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbjlEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb0hUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVuOVRpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjQ5Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlbjlqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW45emlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW4tRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVuLVRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW4tamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW4temlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVuX0RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW5fVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlbl9qaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbl96aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVvQURpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvSWppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZW9BVGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iOTQiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9GRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZW9BamlBRWVLREFNRWpuT0xtUEEiIHg9Ijg1IiB5PSIzMzUiIHdpZHRoPSIyMDQiIGhlaWdodD0iMTUwIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVvQXppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIyMTA5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW9CRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVvQlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVvQmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVvQnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW9DRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlb0NUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW9DamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxOTIiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvQmppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVvQ3ppQUVlS0RBTUVqbk9MbVBBIiB4PSIzNDAiIHk9IjE1MCIgd2lkdGg9IjI5MSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9rMGVvRERpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfakJSZGpIN2JFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9CRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0JmTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvQkRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swZW9EVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMDIiIHNvdXJjZT0iX2swZW9BemlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swZW5oVGlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swZW9EamlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swZW9EemlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWy01MywgLTEsIDE3MywgMF0kWy0yMTcsIC0yLCA5LCAtMV0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9rMGVvRURpQUVlS0RBTUVqbk9MbVBBIiBpZD0iKDAuMDcyOTAyMzM4Mzc2ODkxMzMsMC40MSkiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9rMGVvRVRpQUVlS0RBTUVqbk9MbVBBIiBpZD0iKDAuOTQyNjc1MTU5MjM1NjY4OCwwLjQ5MDQ0NTg1OTg3MjYxMTQ3KSIvPgorICAgIDwvZWRnZXM+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfazBlb0VqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJBMl9waWxvdF9TeXN0ZW1zIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVvRXppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIyMDczIiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW9GRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVvRlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVvRmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVvRnppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW9HRGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlb0dUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW9HamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfazBlb0d6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2swZW9IRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlb0hUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZW9IamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVvSHppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVvSURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlb0lUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVvSWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVvSXppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlb0pEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVvSlRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW9KamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW9KemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlb0tEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb2lUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVvS1RpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjI1Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlb0tqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW9LemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW9MRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVvTFRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW9MamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW9MemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVvTURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW9NVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlb01qaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlb016aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVvTkRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvalRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZW9OVGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iMTYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlb05qaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW9OemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW9PRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVvT1RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW9PamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW9PemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVvUERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW9QVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlb1BqaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTE1NiIgeT0iLTUiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlb1B6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVvUURpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExva1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZW9RVGlBRWVLREFNRWpuT0xtUEEiIHg9IjIyNyIgeT0iMTUwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlb1FqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW9RemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW9SRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVvUlRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW9SamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW9SemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVvU0RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW9TVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlb1NqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9IjMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlb1N6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNjAyOSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVvVERpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iLTEwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UG9ydCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvbFRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZW9UVGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMCIgeT0iNTAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVvVGppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlb1R6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlb1VEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW9VVGlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlb1VqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlb1V6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW9WRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlb1ZUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVvVmppQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVvVnppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW9XRGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9tVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlb1dUaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSI5MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZW9XamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVvV3ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVvWERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlb1hUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVvWGppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVvWHppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlb1lEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVvWVRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW9ZamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW9ZemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlb1pEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb25UaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVvWlRpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjEyNSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb2h6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlb1pqaUFFZUtEQU1Fam5PTG1QQSIgeD0iMTI0IiB5PSI0NSIgd2lkdGg9IjIzNyIgaGVpZ2h0PSIyMDciLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZW9aemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjIwNzMiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlb2FEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW9hVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW9hamlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW9hemlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlb2JEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVvYlRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlb2JqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9rMGVvYnppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfazBlb2NEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVvY1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlb2NqaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMzA2OSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW9jemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW9kRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVvZFRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW9kamlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW9kemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVvZURpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW9lVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxMjUiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlb2VqaUFFZUtEQU1Fam5PTG1QQSIgeD0iLTE2MSIgeT0iNSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVvZXppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW9mRGlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9vemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlb2ZUaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjExIiB5PSI3NCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZW9mamlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVvZnppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVvZ0RpQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlb2dUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVvZ2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVvZ3ppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlb2hEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVvaFRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW9oamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW9oemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfazBlb2lEaUFFZUtEQU1Fam5PTG1QQSIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb3B6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVvaVRpQUVlS0RBTUVqbk9MbVBBIiB4PSItMTAiIHk9IjQ0Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvb1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVvaWppQUVlS0RBTUVqbk9MbVBBIiB4PSIxMjAiIHk9IjMwNSIgd2lkdGg9IjIyMSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlb2l6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMjEwOSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVvakRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlb2pUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlb2pqaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlb2p6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVva0RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW9rVGlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVva2ppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTkyIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb2lEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlb2t6aUFFZUtEQU1Fam5PTG1QQSIgeD0iNDYxIiB5PSIxMTUiIHdpZHRoPSI0MjAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZW9sRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjIxMDkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlb2xUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW9samlBRWVLREFNRWpuT0xtUEEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW9semlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW9tRGlBRWVLREFNRWpuT0xtUEEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlb21UaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVvbWppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlb216aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTE5MiIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9vamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZW9uRGlBRWVLREFNRWpuT0xtUEEiIHg9IjQzNSIgeT0iMzA1IiB3aWR0aD0iMzQxIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX2swZW9uVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJzdHlsZTpQYXB5cnVzVmlld1N0eWxlIiB4bWk6aWQ9Il9qQlJkalg3YkVlU0Z5TmJuTFlEQ2t3Ij4KKyAgICAgIDxvd25lciB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMb2hqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3pXQmZMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9oamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfazBlb25qaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNDAwMiIgc291cmNlPSJfazBlb2l6aUFFZUtEQU1Fam5PTG1QQSIgdGFyZ2V0PSJfazBlb0V6aUFFZUtEQU1Fam5PTG1QQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfazBlb256aUFFZUtEQU1Fam5PTG1QQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfazBlb29EaUFFZUtEQU1Fam5PTG1QQSIgcG9pbnRzPSJbLTQ2LCAtMiwgMTM3LCAwXSRbLTE0NiwgNiwgMzcsIDhdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfazBlb29UaUFFZUtEQU1Fam5PTG1QQSIgaWQ9IigwLjA4NDQwMzY2OTcyNDc3MDY1LDAuNTUpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfazBlb29qaUFFZUtEQU1Fam5PTG1QQSIgaWQ9IigwLjg0Mzg4MTg1NjU0MDA4NDQsMC41OTQyMDI4OTg1NTA3MjQ2KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swZW9vemlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMDIiIHNvdXJjZT0iX2swZW9sRGlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swZW9aemlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swZW9wRGlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swZW9wVGlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWy0zMiwgMSwgMTEwLCAwXSRbLTEyNiwgLTEsIDE2LCAtMl0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9rMGVvcGppQUVlS0RBTUVqbk9MbVBBIiBpZD0iKDAuMDkzODQxNjQyMjI4NzM5LDAuNCkiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9rMGVvcHppQUVlS0RBTUVqbk9MbVBBIiBpZD0iKDAuOTI3NjAxODA5OTU0NzUxMiwwLjQxKSIvPgorICAgIDwvZWRnZXM+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfazBlb3FEaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJBM19OYXZpZ2F0b3JfU3lzdGVtcyIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfazBlb3FUaUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iMjA3MyIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVvcWppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlb3F6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlb3JEaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlb3JUaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVvcmppQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW9yemlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVvc0RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2swZW9zVGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjcwNzMiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9rMGVvc2ppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZW9zemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVvdERpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlb3RUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlb3RqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW90emlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlb3VEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlb3VUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW91amlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlb3V6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVvdkRpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVvdlRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW92amlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9RamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlb3Z6aUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSI2OSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2swZW93RGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjMwNjkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVvd1RpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVvd2ppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlb3d6aUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVveERpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVveFRpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlb3hqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVveHppQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW95RGlBRWVLREFNRWpuT0xtUEEiIHg9Ii0xMTYiIHk9Ii0xNSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVveVRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW95amlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9SamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlb3l6aUFFZUtEQU1Fam5PTG1QQSIgeD0iMTcyIiB5PSIxMDQiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVvekRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlb3pUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlb3pqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW96emlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbzBEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbzBUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW8wamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbzB6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVvMURpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVvMVRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW8xamlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9TamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbzF6aUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIxMDkiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVvMkRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbzJUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbzJqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW8yemlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbzNEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbzNUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW8zamlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbzN6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVvNERpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVvNFRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW80amlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9UamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbzR6aUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIxNTQiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVvNURpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIzMDY5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbzVUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbzVqaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW81emlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbzZEaUFFZUtEQU1Fam5PTG1QQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfazBlbzZUaUFFZUtEQU1Fam5PTG1QQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2swZW82amlBRWVLREFNRWpuT0xtUEEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfazBlbzZ6aUFFZUtEQU1Fam5PTG1QQSIgdHlwZT0iNTEyNSI+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rMGVvN0RpQUVlS0RBTUVqbk9MbVBBIiB4PSIyNSIgeT0iMyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rMGVvN1RpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSI2MDI5Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2swZW83amlBRWVLREFNRWpuT0xtUEEiIHg9IjI1IiB5PSItMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQb3J0IiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9VamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfazBlbzd6aUFFZUtEQU1Fam5PTG1QQSIgeD0iLTEwIiB5PSIxODQiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9RRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2swZW84RGlBRWVLREFNRWpuT0xtUEEiIHg9IjEwOSIgeT0iODYiIHdpZHRoPSIxODIiIGhlaWdodD0iMjU1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rMGVvOFRpQUVlS0RBTUVqbk9MbVBBIiB0eXBlPSIyMTA5IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW84amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVvOHppQUVlS0RBTUVqbk9MbVBBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMGVvOURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9rMGVvOVRpQUVlS0RBTUVqbk9MbVBBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2swZW85amlBRWVLREFNRWpuT0xtUEEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfazBlbzl6aUFFZUtEQU1Fam5PTG1QQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2swZW8tRGlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjUxOTIiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvUVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9rMGVvLVRpQUVlS0RBTUVqbk9MbVBBIiB4PSI0MjkiIHk9IjIxNyIgd2lkdGg9IjI2MiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9rMGVvLWppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfakJSZGpuN2JFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG9QemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0JmTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExvUHppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2swZW8temlBRWVLREFNRWpuT0xtUEEiIHR5cGU9IjQwMDIiIHNvdXJjZT0iX2swZW84VGlBRWVLREFNRWpuT0xtUEEiIHRhcmdldD0iX2swZW9xVGlBRWVLREFNRWpuT0xtUEEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2swZW9fRGlBRWVLREFNRWpuT0xtUEEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2swZW9fVGlBRWVLREFNRWpuT0xtUEEiIHBvaW50cz0iWy01MSwgMCwgMTc1LCAwXSRbLTE4OSwgMzgsIDM3LCAzOF0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9rMGVvX2ppQUVlS0RBTUVqbk9MbVBBIiBpZD0iKDAuMTA0NzIyNzkyNjA3ODAyODcsMC41MikiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9rMGVvX3ppQUVlS0RBTUVqbk9MbVBBIiBpZD0iKDAuNzk2NzAzMjk2NzAzMjk2NiwwLjcxNzY0NzA1ODgyMzUyOTQpIi8+CisgICAgPC9lZGdlcz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9XYUhfTURpdUVlS0ZIcHNkT0MxWDFRIiB0eXBlPSJDb21wb3NpdGVTdHJ1Y3R1cmUiIG5hbWU9IlBsYXRmb3Jtc0RpYWdyYW0iIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2lDU1ZJRGl1RWVLRkhwc2RPQzFYMVEiIHR5cGU9IjIwNzMiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9pQ1NWSWppdUVlS0ZIcHNkT0MxWDFRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfaUNTVkl6aXVFZUtGSHBzZE9DMVgxUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfaUNTVkpEaXVFZUtGSHBzZE9DMVgxUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfaUNTVkpUaXVFZUtGSHBzZE9DMVgxUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9pQ1NWSmppdUVlS0ZIcHNkT0MxWDFRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2lDU1ZKeml1RWVLRkhwc2RPQzFYMVEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfaUZRd29EaXVFZUtGSHBzZE9DMVgxUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2lGUXdvVGl1RWVLRkhwc2RPQzFYMVEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2lGUXdvaml1RWVLRkhwc2RPQzFYMVEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpSb2JvdGljTWlkZGxld2FyZSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2lGUXdveml1RWVLRkhwc2RPQzFYMVEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9pRlF3cERpdUVlS0ZIcHNkT0MxWDFRIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfaUZRd3BUaXVFZUtGSHBzZE9DMVgxUSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2lDU1ZLRGl1RWVLRkhwc2RPQzFYMVEiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfaUNTVktUaXVFZUtGSHBzZE9DMVgxUSIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2lDU1ZLaml1RWVLRkhwc2RPQzFYMVEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfaUNTVkt6aXVFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfaUJQelVEaXVFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfaUNTVklUaXVFZUtGSHBzZE9DMVgxUSIgeD0iMTQ0IiB5PSIxMTMiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3JsbWVjRGl1RWVLRkhwc2RPQzFYMVEiIHR5cGU9IjIwNzMiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9ybG1lY2ppdUVlS0ZIcHNkT0MxWDFRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcmxtZWN6aXVFZUtGSHBzZE9DMVgxUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcmxtZWREaXVFZUtGSHBzZE9DMVgxUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcmxtZWRUaXVFZUtGSHBzZE9DMVgxUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9ybG1lZGppdUVlS0ZIcHNkT0MxWDFRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3JsbWVkeml1RWVLRkhwc2RPQzFYMVEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcmx3UGNUaXVFZUtGSHBzZE9DMVgxUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3U2cEhvRGl1RWVLRkhwc2RPQzFYMVEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3U2cEhvVGl1RWVLRkhwc2RPQzFYMVEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSJSb2JvdE1MOjpCbGVuZGVyTW9yc2UiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il91NnBIb2ppdUVlS0ZIcHNkT0MxWDFRIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdTZwSG96aXVFZUtGSHBzZE9DMVgxUSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3U2cEhwRGl1RWVLRkhwc2RPQzFYMVEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9ybG1lZURpdUVlS0ZIcHNkT0MxWDFRIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3JsbWVlVGl1RWVLRkhwc2RPQzFYMVEiIHR5cGU9IjcwNzMiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9ybG1lZWppdUVlS0ZIcHNkT0MxWDFRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3JsbWVleml1RWVLRkhwc2RPQzFYMVEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX3JsSnlnRGl1RWVLRkhwc2RPQzFYMVEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3JsbWVjVGl1RWVLRkhwc2RPQzFYMVEiIHg9IjM0OCIgeT0iMTE2Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9IU1pWb0RpdkVlS0ZIcHNkT0MxWDFRIiB0eXBlPSIyMDczIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSFNaVm9qaXZFZUtGSHBzZE9DMVgxUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0hTWlZveml2RWVLRkhwc2RPQzFYMVEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0hTWlZwRGl2RWVLRkhwc2RPQzFYMVEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0hTWlZwVGl2RWVLRkhwc2RPQzFYMVEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSFNaVnBqaXZFZUtGSHBzZE9DMVgxUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9IU1pWcHppdkVlS0ZIcHNkT0MxWDFRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0hTaWZrRGl2RWVLRkhwc2RPQzFYMVEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9IU2lma1RpdkVlS0ZIcHNkT0MxWDFRIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9IU2lma2ppdkVlS0ZIcHNkT0MxWDFRIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6UGxhdGZvcm0iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9IU2lma3ppdkVlS0ZIcHNkT0MxWDFRIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSFNpZmxEaXZFZUtGSHBzZE9DMVgxUSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0hTaWZsVGl2RWVLRkhwc2RPQzFYMVEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9IU1pWcURpdkVlS0ZIcHNkT0MxWDFRIiB0eXBlPSI1MTU2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0hTWlZxVGl2RWVLRkhwc2RPQzFYMVEiIHR5cGU9IjcwNzMiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9IU1pWcWppdkVlS0ZIcHNkT0MxWDFRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0hTWlZxeml2RWVLRkhwc2RPQzFYMVEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX0hSOHBzRGl2RWVLRkhwc2RPQzFYMVEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0hTWlZvVGl2RWVLRkhwc2RPQzFYMVEiIHg9IjE0NSIgeT0iMjI1IiB3aWR0aD0iMzI2IiBoZWlnaHQ9IjEzNiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9XYUhfTVRpdUVlS0ZIcHNkT0MxWDFRIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfakJSZGozN2JFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX08wWVYwRGl1RWVLRkhwc2RPQzFYMVEiLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0JmTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19PMFlWMERpdUVlS0ZIcHNkT0MxWDFRIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfTnpIUW9EaXZFZUtGSHBzZE9DMVgxUSIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJBcmNoaXRlY3R1cmVEaWFncmFtIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9PeG1TSURpdkVlS0ZIcHNkT0MxWDFRIiB0eXBlPSIyMDczIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfT3htU0lqaXZFZUtGSHBzZE9DMVgxUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX094bVNJeml2RWVLRkhwc2RPQzFYMVEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX094bVNKRGl2RWVLRkhwc2RPQzFYMVEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX094bVNKVGl2RWVLRkhwc2RPQzFYMVEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfT3htU0pqaXZFZUtGSHBzZE9DMVgxUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9PeG1TSnppdkVlS0ZIcHNkT0MxWDFRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfT3htU0tEaXZFZUtGSHBzZE9DMVgxUSIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9PeG1TS1RpdkVlS0ZIcHNkT0MxWDFRIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfUUI3NG9EaXZFZUtGSHBzZE9DMVgxUSIgdHlwZT0iMzA3MCIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9RQjc0b2ppdkVlS0ZIcHNkT0MxWDFRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1FCNzRveml2RWVLRkhwc2RPQzFYMVEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUUI3NHBEaXZFZUtGSHBzZE9DMVgxUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1FCNzRwVGl2RWVLRkhwc2RPQzFYMVEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9RQjc0cGppdkVlS0ZIcHNkT0MxWDFRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9RQjc0cHppdkVlS0ZIcHNkT0MxWDFRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9RQjc0cURpdkVlS0ZIcHNkT0MxWDFRIiB0eXBlPSI1MTI2Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9RQjc0cVRpdkVlS0ZIcHNkT0MxWDFRIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1FCNzRxaml2RWVLRkhwc2RPQzFYMVEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1FCNzRxeml2RWVLRkhwc2RPQzFYMVEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfUUFsMDBEaXZFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1FCNzRvVGl2RWVLRkhwc2RPQzFYMVEiIHg9IjIwIiB5PSIyMCIgaGVpZ2h0PSI4MSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il95djNRUURpdkVlS0ZIcHNkT0MxWDFRIiB0eXBlPSIzMDcwIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3l2M1FRaml2RWVLRkhwc2RPQzFYMVEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeXYzUVF6aXZFZUtGSHBzZE9DMVgxUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il95djNRUkRpdkVlS0ZIcHNkT0MxWDFRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeXYzUVJUaXZFZUtGSHBzZE9DMVgxUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3l2M1FSaml2RWVLRkhwc2RPQzFYMVEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3l2M1FSeml2RWVLRkhwc2RPQzFYMVEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3l2M1FTRGl2RWVLRkhwc2RPQzFYMVEiIHR5cGU9IjUxMjYiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3l2M1FTVGl2RWVLRkhwc2RPQzFYMVEiIHR5cGU9IjcwNzciPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfeXYzUVNqaXZFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfeXYzUVN6aXZFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI195dmFrVURpdkVlS0ZIcHNkT0MxWDFRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfeXYzUVFUaXZFZUtGSHBzZE9DMVgxUSIgeD0iMjQ1IiB5PSIyNSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9PeG1TS2ppdkVlS0ZIcHNkT0MxWDFRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX094bVNLeml2RWVLRkhwc2RPQzFYMVEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX0hSOHBzRGl2RWVLRkhwc2RPQzFYMVEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX094bVNJVGl2RWVLRkhwc2RPQzFYMVEiIHg9IjE1NSIgeT0iOTQiIHdpZHRoPSI1OTEiIGhlaWdodD0iMjAyIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX056SFFvVGl2RWVLRkhwc2RPQzFYMVEiLz4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJzdHlsZTpQYXB5cnVzVmlld1N0eWxlIiB4bWk6aWQ9Il9qQlJka0g3YkVlU0Z5TmJuTFlEQ2t3Ij4KKyAgICAgIDxvd25lciB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfTzBZVjBEaXVFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3pXQVBMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX08wWVYwRGl1RWVLRkhwc2RPQzFYMVEiLz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9MdVZISUhCaUVlS3BPLWwwTkdBVTlRIiB0eXBlPSJDb21wb3NpdGVTdHJ1Y3R1cmUiIG5hbWU9IlNlbnNvcnNfZGVmIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9NYktYOEhCaUVlS3BPLWwwTkdBVTlRIiB0eXBlPSIyMDczIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTWJYTVFIQmlFZUtwTy1sME5HQVU5USIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01iWE1RWEJpRWVLcE8tbDBOR0FVOVEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01iWE1RbkJpRWVLcE8tbDBOR0FVOVEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01iWE1RM0JpRWVLcE8tbDBOR0FVOVEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTWJYTVJIQmlFZUtwTy1sME5HQVU5USIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NYlhNUlhCaUVlS3BPLWwwTkdBVTlRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTWJYTVJuQmlFZUtwTy1sME5HQVU5USIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9NYlhNUjNCaUVlS3BPLWwwTkdBVTlRIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfTWJYTVNIQmlFZUtwTy1sME5HQVU5USIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9NYlhNU1hCaUVlS3BPLWwwTkdBVTlRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuT1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9NYktYOFhCaUVlS3BPLWwwTkdBVTlRIiB4PSIxMTUiIHk9Ijg3Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9Nc1ZBY0hCaUVlS3BPLWwwTkdBVTlRIiB0eXBlPSIyMDczIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTXNWbmdIQmlFZUtwTy1sME5HQVU5USIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01zVm5nWEJpRWVLcE8tbDBOR0FVOVEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01zVm5nbkJpRWVLcE8tbDBOR0FVOVEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX01zVm5nM0JpRWVLcE8tbDBOR0FVOVEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTXNWbmhIQmlFZUtwTy1sME5HQVU5USIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9Nc1ZuaFhCaUVlS3BPLWwwTkdBVTlRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTXNWbmhuQmlFZUtwTy1sME5HQVU5USIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9Nc1ZuaDNCaUVlS3BPLWwwTkdBVTlRIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfTXNWbmlIQmlFZUtwTy1sME5HQVU5USIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9Nc1ZuaVhCaUVlS3BPLWwwTkdBVTlRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuVGppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9Nc1ZBY1hCaUVlS3BPLWwwTkdBVTlRIiB4PSIyMTEiIHk9IjI2OSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfTTc0ZllIQmlFZUtwTy1sME5HQVU5USIgdHlwZT0iMjA3MyIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX003NUdjSEJpRWVLcE8tbDBOR0FVOVEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NNzVHY1hCaUVlS3BPLWwwTkdBVTlRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNzVHY25CaUVlS3BPLWwwTkdBVTlRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NNzVHYzNCaUVlS3BPLWwwTkdBVTlRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX003NUdkSEJpRWVLcE8tbDBOR0FVOVEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTTc1R2RYQmlFZUtwTy1sME5HQVU5USIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX003NUdkbkJpRWVLcE8tbDBOR0FVOVEiIHR5cGU9IjUxNTYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfTTc1R2QzQmlFZUtwTy1sME5HQVU5USIgdHlwZT0iNzA3MyI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX003NUdlSEJpRWVLcE8tbDBOR0FVOVEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTTc1R2VYQmlFZUtwTy1sME5HQVU5USIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfTTh0bDBIQmlFZUtwTy1sME5HQVU5USIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IkFwcGxpZWRTdGVyZW90eXBlQ29tcGFydGVtZW50Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfTTh0bDBYQmlFZUtwTy1sME5HQVU5USIgc2hvd1RpdGxlPSJ0cnVlIi8+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJSb2JvdE1MOkdQU1N5c3RlbSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExwSERpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX004dGwwbkJpRWVLcE8tbDBOR0FVOVEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9VaVlXc0hCaUVlS3BPLWwwTkdBVTlRIiB0eXBlPSIzMDY5IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9VaVk5d0hCaUVlS3BPLWwwTkdBVTlRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9VaVk5d1hCaUVlS3BPLWwwTkdBVTlRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVWlZOXduQmlFZUtwTy1sME5HQVU5USIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9VaVk5dzNCaUVlS3BPLWwwTkdBVTlRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9VaVk5eEhCaUVlS3BPLWwwTkdBVTlRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVWlZOXhYQmlFZUtwTy1sME5HQVU5USIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9VaVk5eG5CaUVlS3BPLWwwTkdBVTlRIiB0eXBlPSI1MTI1Ij4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1VpWTl4M0JpRWVLcE8tbDBOR0FVOVEiIHg9IjI1IiB5PSIzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1VpWmswSEJpRWVLcE8tbDBOR0FVOVEiIHR5cGU9IjYwMjkiPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVWlaazBYQmlFZUtwTy1sME5HQVU5USIgeD0iMjUiIHk9Ii0xMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBvcnQiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMbllEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9VaVlXc1hCaUVlS3BPLWwwTkdBVTlRIiB4PSI5MCIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG5YemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX003NGZZWEJpRWVLcE8tbDBOR0FVOVEiIHg9IjM1MCIgeT0iMjI1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9OSENtZ0hCaUVlS3BPLWwwTkdBVTlRIiB0eXBlPSIyMDczIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTkhETmtIQmlFZUtwTy1sME5HQVU5USIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX05IRE5rWEJpRWVLcE8tbDBOR0FVOVEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX05IRE5rbkJpRWVLcE8tbDBOR0FVOVEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX05IRE5rM0JpRWVLcE8tbDBOR0FVOVEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTkhETmxIQmlFZUtwTy1sME5HQVU5USIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9OSERObFhCaUVlS3BPLWwwTkdBVTlRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTkhETmxuQmlFZUtwTy1sME5HQVU5USIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9OSERObDNCaUVlS3BPLWwwTkdBVTlRIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfTkhETm1IQmlFZUtwTy1sME5HQVU5USIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9OSERObVhCaUVlS3BPLWwwTkdBVTlRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuWkRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9OSENtZ1hCaUVlS3BPLWwwTkdBVTlRIiB4PSI1NSIgeT0iMzY1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9OYUp2d0hCaUVlS3BPLWwwTkdBVTlRIiB0eXBlPSIyMDczIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTmFLVzBIQmlFZUtwTy1sME5HQVU5USIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX05hS1cwWEJpRWVLcE8tbDBOR0FVOVEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX05hS1cwbkJpRWVLcE8tbDBOR0FVOVEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX05hS1cwM0JpRWVLcE8tbDBOR0FVOVEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTmFLVzFIQmlFZUtwTy1sME5HQVU5USIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9OYUtXMVhCaUVlS3BPLWwwTkdBVTlRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTmFLVzFuQmlFZUtwTy1sME5HQVU5USIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9OYUtXMTNCaUVlS3BPLWwwTkdBVTlRIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfTmFLVzJIQmlFZUtwTy1sME5HQVU5USIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9OYUtXMlhCaUVlS3BPLWwwTkdBVTlRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuYVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9OYUp2d1hCaUVlS3BPLWwwTkdBVTlRIiB4PSIzMDYiIHk9IjcyIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9OcTNzVUhCaUVlS3BPLWwwTkdBVTlRIiB0eXBlPSIyMDczIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTnE0VFlIQmlFZUtwTy1sME5HQVU5USIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX05xNFRZWEJpRWVLcE8tbDBOR0FVOVEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX05xNFRZbkJpRWVLcE8tbDBOR0FVOVEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX05xNFRZM0JpRWVLcE8tbDBOR0FVOVEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTnE0VFpIQmlFZUtwTy1sME5HQVU5USIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9OcTRUWlhCaUVlS3BPLWwwTkdBVTlRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTnE0VFpuQmlFZUtwTy1sME5HQVU5USIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9OcTRUWjNCaUVlS3BPLWwwTkdBVTlRIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfTnE0VGFIQmlFZUtwTy1sME5HQVU5USIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9OcTRUYVhCaUVlS3BPLWwwTkdBVTlRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuYnppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9OcTNzVVhCaUVlS3BPLWwwTkdBVTlRIiB4PSI1MjUiIHk9IjM5NyIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9MdVZISVhCaUVlS3BPLWwwTkdBVTlRIi8+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ic3R5bGU6UGFweXJ1c1ZpZXdTdHlsZSIgeG1pOmlkPSJfakJSZGtYN2JFZVNGeU5ibkxZRENrdyI+CisgICAgICA8b3duZXIgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJZb3V0aENoYWxsZW5nZS51bWwjX2swTG5PRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxjb25maWd1cmF0aW9uIHhtaTp0eXBlPSJjb25maWd1cmF0aW9uOlBhcHlydXNEaWFncmFtIiBocmVmPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNvbW1vbi92aWV3cG9pbnRzL3JvYm90bWwuY29uZmlndXJhdGlvbiNfMGt6V0JmTF9FZU9OWFBRMm1idzl2QSIvPgorICAgIDwvc3R5bGVzPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExuT0RpQUVlS0RBTUVqbk9MbVBBIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfcmM1MXNLRUtFZUtMVXFYOUlKcTJHZyIgdHlwZT0iQ29tcG9zaXRlU3RydWN0dXJlIiBuYW1lPSJXaWZpYm90RW52aXJvbm1lbnREaWFncmFtIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9zQXgtMEtFS0VlS0xVcVg5SUpxMkdnIiB0eXBlPSIyMDczIiBncmFkaWVudD0iODkwNTE4NSwgMTY3NzcyMTUsIDAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3NHNG0wS0VLRWVLTFVxWDlJSnEyR2ciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9zSkhiY0tFS0VlS0xVcVg5SUpxMkdnIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9zSkhiY2FFS0VlS0xVcVg5SUpxMkdnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iUm9ib3RNTDo6RW52aXJvbm1lbnQiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9zSkhiY3FFS0VlS0xVcVg5SUpxMkdnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJJY29uU3RlcmVvdHlwZSIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3NKSGJjNkVLRWVLTFVxWDlJSnEyR2ciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9zSkhiZEtFS0VlS0xVcVg5SUpxMkdnIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfc0E3djBLRUtFZUtMVXFYOUlKcTJHZyIgdHlwZT0iNTE1NiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9zQTd2MGFFS0VlS0xVcVg5SUpxMkdnIiB0eXBlPSI3MDczIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3NBN3YxS0VLRWVLTFVxWDlJSnEyR2ciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfc0E3djFhRUtFZUtMVXFYOUlKcTJHZyIga2V5PSJzaG93VGl0bGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il93UGRsd0tFS0VlS0xVcVg5SUpxMkdnIiB0eXBlPSIzMDcwIiBncmFkaWVudD0iMTAyNjU4MjcsIDE2Nzc3MjE1LCAwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQkJuVVVLRUxFZUtMVXFYOUlKcTJHZyIgc291cmNlPSJQYXB5cnVzSHlwZXJMaW5rX0RpYWdyYW0iIHJlZmVyZW5jZXM9Il9rMFZhWWppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQkJuVVVhRUxFZUtMVXFYOUlKcTJHZyIga2V5PSJ0b29sdGlwX3RleHQiIHZhbHVlPSJXaWZpQm90Ii8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0JCblVVcUVMRWVLTFVxWDlJSnEyR2ciIGtleT0iZGlhZ3JhbV9uYW1lIiB2YWx1ZT0iV2lmaUJvdCIvPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9CQm5VVTZFTEVlS0xVcVg5SUpxMkdnIiBrZXk9ImlzX2RlZmF1bHRfbmF2aWdhdGlvbiIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTXltMklLRUxFZUtMVXFYOUlKcTJHZyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX015d25JS0VMRWVLTFVxWDlJSnEyR2ciIGtleT0iZ3JhZGllbnQiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfd1BkbHdxRUtFZUtMVXFYOUlKcTJHZyIgdHlwZT0iNTEyNiI+CisgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfLVRMX01LRUtFZUtMVXFYOUlKcTJHZyIgc291cmNlPSJQYXB5cnVzSHlwZXJMaW5rX0RpYWdyYW0iIHJlZmVyZW5jZXM9Il9rMFZhWWppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tVExfTWFFS0VlS0xVcVg5SUpxMkdnIiBrZXk9InRvb2x0aXBfdGV4dCIgdmFsdWU9IldpZmlCb3QiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tVExfTXFFS0VlS0xVcVg5SUpxMkdnIiBrZXk9ImRpYWdyYW1fbmFtZSIgdmFsdWU9IldpZmlCb3QiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tVExfTTZFS0VlS0xVcVg5SUpxMkdnIiBrZXk9ImlzX2RlZmF1bHRfbmF2aWdhdGlvbiIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il93UGRsdzZFS0VlS0xVcVg5SUpxMkdnIiB0eXBlPSI3MDc3Ij4KKyAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il93UGRseHFFS0VlS0xVcVg5SUpxMkdnIiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il93UGRseDZFS0VlS0xVcVg5SUpxMkdnIiBrZXk9InNob3dUaXRsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il96cm9Lb0tFS0VlS0xVcVg5SUpxMkdnIiBrZXk9InZpc2libGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3dQZGx4S0VLRWVLTFVxWDlJSnEyR2ciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3dQZGx4YUVLRWVLTFVxWDlJSnEyR2ciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfd09rMDhLRUtFZUtMVXFYOUlKcTJHZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3dQZGx3YUVLRWVLTFVxWDlJSnEyR2ciIHg9IjE0OCIgeT0iMTE1Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3NBN3YwcUVLRWVLTFVxWDlJSnEyR2ciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfc0E3djA2RUtFZUtMVXFYOUlKcTJHZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfcl9TeEVLRUtFZUtMVXFYOUlKcTJHZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfc0F4LTBhRUtFZUtMVXFYOUlKcTJHZyIgeD0iMTM3IiB5PSI3MCIgd2lkdGg9IjQ0OSIgaGVpZ2h0PSIzODEiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfcmM1MXNhRUtFZUtMVXFYOUlKcTJHZyIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9InN0eWxlOlBhcHlydXNWaWV3U3R5bGUiIHhtaTppZD0iX2pCUmRrbjdiRWVTRnlOYm5MWURDa3ciPgorICAgICAgPG93bmVyIHhtaTp0eXBlPSJ1bWw6TW9kZWwiIGhyZWY9IllvdXRoQ2hhbGxlbmdlLnVtbCNfazBMajREaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPGNvbmZpZ3VyYXRpb24geG1pOnR5cGU9ImNvbmZpZ3VyYXRpb246UGFweXJ1c0RpYWdyYW0iIGhyZWY9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRpYWdyYW0uY29tbW9uL3ZpZXdwb2ludHMvcm9ib3RtbC5jb25maWd1cmF0aW9uI18wa3pXQVBMX0VlT05YUFEybWJ3OXZBIi8+CisgICAgPC9zdHlsZXM+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iWW91dGhDaGFsbGVuZ2UudW1sI19rMExqNERpQUVlS0RBTUVqbk9MbVBBIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPGNzczpNb2RlbFN0eWxlU2hlZXRzIHhtaTppZD0iX0VtcUhFTXlzRWVTYndfN1pxczBLaFEiLz4KKzwveG1pOlhNST4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvcmVzb3VyY2UvWW91dGhDaGFsbGVuZ2UudW1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRlbXBsYXRlcmVwb3NpdG9yeS9yZXNvdXJjZS9Zb3V0aENoYWxsZW5nZS51bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2ZlZGVlYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvcmVzb3VyY2UvWW91dGhDaGFsbGVuZ2UudW1sCkBAIC0wLDAgKzEsMjM0NSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzx4bWk6WE1JIHhtaTp2ZXJzaW9uPSIyMDEzMTAwMSIgeG1sbnM6eG1pPSJodHRwOi8vd3d3Lm9tZy5vcmcvc3BlYy9YTUkvMjAxMzEwMDEiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiICB4bWxuczpSb2JvdE1MPSJodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEiIHhtbG5zOmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIiB4bWxuczp1bWw9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwiPgorICA8dW1sOk1vZGVsIHhtaTppZD0iX2swTGo0RGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IllvdXRoQ2hhbGxlbmdlTW9kZWwiPgorICAgIDxwYWNrYWdlSW1wb3J0IHhtaTp0eXBlPSJ1bWw6UGFja2FnZUltcG9ydCIgeG1pOmlkPSJfazBMajRUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICA8aW1wb3J0ZWRQYWNrYWdlIHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2R0X3k0QUh0RWVDUVFPS3JoT19mSVEiLz4KKyAgICA8L3BhY2thZ2VJbXBvcnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIHhtaTppZD0iX2swTGo0amlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IllvdXRoQ2hhbGxlbmdlIERhdGFUeXBlcyI+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb24iIHhtaTppZD0iX2swTGo0emlBRWVLREFNRWpuT0xtUEEiIG5hbWU9Ik1pc3Npb25fVHlwZSI+CisgICAgICAgIDxvd25lZExpdGVyYWwgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIHhtaTppZD0iX2swTGo1RGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkV4cGxvcmUiLz4KKyAgICAgICAgPG93bmVkTGl0ZXJhbCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgeG1pOmlkPSJfazBMajVUaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iU2VhcmNoIi8+CisgICAgICAgIDxvd25lZExpdGVyYWwgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIHhtaTppZD0iX2swTGo1amlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IlJlYWNoIi8+CisgICAgICAgIDxvd25lZExpdGVyYWwgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIHhtaTppZD0iX2swTGo1emlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IklkZW50aWZ5Ii8+CisgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfazBMajZEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQW1lciI+CisgICAgICAgIDxvd25lZENvbW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiB4bWk6aWQ9Il9rMExqNlRpQUVlS0RBTUVqbk9MbVBBIiBhbm5vdGF0ZWRFbGVtZW50PSJfazBMajZEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGJvZHk+VW4gYW1lciBjb3JyZXNwb25kIGEgdW5lIGJhbGlzZSBjb21wb3NlZSBkJ3VuZSBjbG9ubmUgZXQgZCd1biBzb2xpZGUgZCd1bmUgY291bGV1ciA8L2JvZHk+CisgICAgICAgIDwvb3duZWRDb21tZW50PgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMajZqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0icG9zaXRpb24iIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX2swTGo5amlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGo2emlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMajdEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMajdUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMajdqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iY29sb3IiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX2swTGtlamlBRWVLREFNRWpuT0xtUEEiIGlzVW5pcXVlPSJmYWxzZSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMajd6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExqOERpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExqOFRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExqOGppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJnZW9tZXRyeSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfazBMa2dEaUFFZUtEQU1Fam5PTG1QQSIgaXNVbmlxdWU9ImZhbHNlIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExqOHppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGo5RGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTGo5VGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9rMExqOWppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJQb3NpdGlvbiI+CisgICAgICAgIDxvd25lZENvbW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiB4bWk6aWQ9Il9rMExqOXppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExqLURpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJ4IiB2aXNpYmlsaXR5PSJwdWJsaWMiIGlzVW5pcXVlPSJmYWxzZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0EzTFVQaU44RWVLd2VkN0ZFRUYtNFEiLz4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExqLVRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGotamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTGotemlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2swTGpfRGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InkiIHZpc2liaWxpdHk9InB1YmxpYyIgaXNVbmlxdWU9ImZhbHNlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfQTNMVVBpTjhFZUt3ZWQ3RkVFRi00USIvPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGpfVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMal9qaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMal96aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMa0FEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iYWx0IiB2aXNpYmlsaXR5PSJwdWJsaWMiIGlzVW5pcXVlPSJmYWxzZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0EzTFVQaU44RWVLd2VkN0ZFRUYtNFEiLz4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExrQVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMa0FqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMa0F6aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMa0JEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0ib3JpZW50YXRpb24iIHZpc2liaWxpdHk9InB1YmxpYyIgaXNVbmlxdWU9ImZhbHNlIj4KKyAgICAgICAgICA8b3duZWRDb21tZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgeG1pOmlkPSJfazBMa0JUaUFFZUtEQU1Fam5PTG1QQSIgYW5ub3RhdGVkRWxlbWVudD0iX2swTGtCVGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPGJvZHk+b3JpZW50YXRpb24gZW4gZGVncsOpcyBbMDszNTldICwgZW50aWVyIHBvc2l0aWYsIHNlbnMgaG9yYWlyZSAwIE5vcmQgPC9ib2R5PgorICAgICAgICAgIDwvb3duZWRDb21tZW50PgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVUXlOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMa0JqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExrQnppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExrQ0RpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfazBMa0NUaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iUG9zaXRpb25fRXJyb3IiPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMa0NqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0ieF9lcnIiIHZpc2liaWxpdHk9InB1YmxpYyIgaXNVbmlxdWU9ImZhbHNlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfQTNMVVBpTjhFZUt3ZWQ3RkVFRi00USIvPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGtDemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMa0REaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMa0RUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMa0RqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0ieV9lcnIiIHZpc2liaWxpdHk9InB1YmxpYyIgaXNVbmlxdWU9ImZhbHNlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfQTNMVVBpTjhFZUt3ZWQ3RkVFRi00USIvPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGtEemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMa0VEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMa0VUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMa0VqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iYWx0X2VyciIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVUGlOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMa0V6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGtGRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTGtGVGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2swTGtGamlBRWVLREFNRWpuT0xtUEEiIG5hbWU9Im9yaWVudGF0aW9uX2VyciIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVUXlOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMa0Z6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExrR0RpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExrR1RpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfazBMa0dqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iUGF0aF9Qb2ludCI+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExrR3ppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJwb3NpdGlvbiIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfazBMajlqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMa0hEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExrSFRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExrSGppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExrSHppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJwb3NfZXJyb3IiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX2swTGtDVGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGtJRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMa0lUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMa0lqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMa0l6aUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0idmVsb2NpdHkiIHZpc2liaWxpdHk9InB1YmxpYyI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0EzTFQ5U044RWVLd2VkN0ZFRUYtNFEiLz4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExrSkRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGtKVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTGtKamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9rMExrTERpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJUcmFqZWN0b3J5Ij4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2swTGtMVGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InhfdCIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVUGlOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMa0xqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExrTHppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iKiIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExrTURpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExrTVRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJ5X3QiIHZpc2liaWxpdHk9InB1YmxpYyIgaXNVbmlxdWU9ImZhbHNlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfQTNMVVBpTjhFZUt3ZWQ3RkVFRi00USIvPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGtNamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMa016aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IioiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMa05EaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMa05UaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0idl90IiB2aXNpYmlsaXR5PSJwdWJsaWMiIGlzVW5pcXVlPSJmYWxzZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0EzTFVQaU44RWVLd2VkN0ZFRUYtNFEiLz4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExrTmppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGtOemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIqIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTGtPRGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2swTGtPVGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InNhbXBsZV90aW1lIiB2aXNpYmlsaXR5PSJwdWJsaWMiIGlzVW5pcXVlPSJmYWxzZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfZ3l0NFlBSC1FZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGtPamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMa096aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMa1BEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMa1BUaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0ic2FtcGxlX25iIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9rMExra2ppQUVlS0RBTUVqbk9MbVBBIiBpc1VuaXF1ZT0iZmFsc2UiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGtQamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMa1B6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMa1FEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX2swTGtTamlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkdvYWwiPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMa1N6aUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0ibWlzc2lvbl90eXBlIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9rMExqNHppQUVlS0RBTUVqbk9MbVBBIiBpc1VuaXF1ZT0iZmFsc2UiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGtURGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMa1RUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMa1RqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMa1R6aUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0icG9zaXRpb24iIHZpc2liaWxpdHk9InB1YmxpYyIgaXNVbmlxdWU9ImZhbHNlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfbFo1YllLbGhFZUMwc1p1LV9WZ2V5dyIvPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGtVRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExrVVRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExrVWppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExrVXppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJwb3NpdGlvbl9lcnJvciIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19sWjViWUtsaEVlQzBzWnUtX1ZnZXl3Ii8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMa1ZEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGtWVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTGtWamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2swTGtWemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9Im9yaWVudGF0aW9uIiB2aXNpYmlsaXR5PSJwdWJsaWMiIGlzVW5pcXVlPSJmYWxzZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0EzTFVReU44RWVLd2VkN0ZFRUYtNFEiLz4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExrV0RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMa1dUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMa1dqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMa1d6aUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iYW5ndWxhcl9hcGVydHVyZSIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVUXlOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMa1hEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGtYVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTGtYamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2swTGtYemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9ImRpc3RhbmNlIiB2aXNpYmlsaXR5PSJwdWJsaWMiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVT1NOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMa1lEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGtZVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTGtZamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2swTGtZemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InZlbG9jaXR5X2F2ZXJhZ2UiIHZpc2liaWxpdHk9InB1YmxpYyI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0EzTFQ5U044RWVLd2VkN0ZFRUYtNFEiLz4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExrWkRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMa1pUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMa1pqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMa1p6aUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iYW1lcl90b19pZGVudGlmeSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfazBMajZEaUFFZUtEQU1Fam5PTG1QQSIgaXNVbmlxdWU9ImZhbHNlIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExrYURpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMa2FUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMa2FqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb24iIHhtaTppZD0iX2swTGtlamlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbG9yIj4KKyAgICAgICAgPG93bmVkTGl0ZXJhbCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgeG1pOmlkPSJfazBMa2V6aUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iV2hpdGUiLz4KKyAgICAgICAgPG93bmVkTGl0ZXJhbCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgeG1pOmlkPSJfazBMa2ZEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQmxhY2siLz4KKyAgICAgICAgPG93bmVkTGl0ZXJhbCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgeG1pOmlkPSJfazBMa2ZUaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iUmVkIi8+CisgICAgICAgIDxvd25lZExpdGVyYWwgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIHhtaTppZD0iX2swTGtmamlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkJsdWUiLz4KKyAgICAgICAgPG93bmVkTGl0ZXJhbCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgeG1pOmlkPSJfazBMa2Z6aUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iR3JlZW4iLz4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uIiB4bWk6aWQ9Il9rMExrZ0RpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJHZW9tZXRyeSI+CisgICAgICAgIDxvd25lZExpdGVyYWwgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIHhtaTppZD0iX2swTGtnVGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkN1YmUiLz4KKyAgICAgICAgPG93bmVkTGl0ZXJhbCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgeG1pOmlkPSJfazBMa2dqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iU3BoZXJlIi8+CisgICAgICAgIDxvd25lZExpdGVyYWwgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIHhtaTppZD0iX2swTGtnemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IlB5cmFtaWQiLz4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9rMExra2ppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJOb21icmVfUG9zIj4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2swTGtremlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InZhbHVlIiB2aXNpYmlsaXR5PSJwdWJsaWMiIGlzVW5pcXVlPSJmYWxzZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfbkNPdW9BSC1FZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGtsRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMa2xUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMa2xqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX2swTGt2RGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IlBlcmNlbnQiPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMa3ZUaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0idmFsdWUiIHZpc2liaWxpdHk9InB1YmxpYyIgaXNVbmlxdWU9ImZhbHNlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19uQ091b0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMa3ZqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExrdnppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExrd0RpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfazBMazRqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iVmVsb2NpdHlfRXJyb3IiPgorICAgICAgICA8b3duZWRDb21tZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgeG1pOmlkPSJfazBMazR6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMazVEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0idmVsb2NpdHlfbGluZWFyX2VyciIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xUOVNOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMazVUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExrNWppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExrNXppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExrNkRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJ2ZWxvY2l0eV9hbmd1bGFyX2VyciIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVVWlOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMazZUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExrNmppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExrNnppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfazBMazdEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQW1lcl9SZWxhdGl2ZSI+CisgICAgICAgIDxvd25lZENvbW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiB4bWk6aWQ9Il9rMExrN1RpQUVlS0RBTUVqbk9MbVBBIiBhbm5vdGF0ZWRFbGVtZW50PSJfazBMazdEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGJvZHk+VW4gYW1lciBjb3JyZXNwb25kIMOgIHVuZSBiYWxpc2UgY29tcG9zw6llIGQndW5lIGNsb25uZSYjeEQ7CitldCBkJ3VuIHNvbGlkZSBkJ3VuZSBjb3VsZXVyIDwvYm9keT4KKyAgICAgICAgPC9vd25lZENvbW1lbnQ+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExrN2ppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJyZWxhdGl2ZV9wb2xhciIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfazBMay1qaUFFZUtEQU1Fam5PTG1QQSIgaXNVbmlxdWU9ImZhbHNlIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExrN3ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGs4RGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTGs4VGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2swTGs4amlBRWVLREFNRWpuT0xtUEEiIG5hbWU9ImNvbG9yIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9rMExrZWppQUVlS0RBTUVqbk9MbVBBIiBpc1VuaXF1ZT0iZmFsc2UiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGs4emlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMazlEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMazlUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMazlqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iZ2VvbWV0cnkiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX2swTGtnRGlBRWVLREFNRWpuT0xtUEEiIGlzVW5pcXVlPSJmYWxzZSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMazl6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExrLURpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExrLVRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfazBMay1qaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iUmVsYXRpdmVfUG9sYXIiPgorICAgICAgICA8b3duZWRDb21tZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgeG1pOmlkPSJfazBMay16aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMa19EaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iZGlzdGFuY2UiIHZpc2liaWxpdHk9InB1YmxpYyIgaXNVbmlxdWU9ImZhbHNlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfQTNMVU9TTjhFZUt3ZWQ3RkVFRi00USIvPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGtfVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMa19qaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMa196aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMbEFEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iYW5ndWxhciIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVUXlOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbEFUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExsQWppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExsQXppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExsQkRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJzaXRlIiB2aXNpYmlsaXR5PSJwdWJsaWMiIGlzVW5pcXVlPSJmYWxzZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0EzTFVReU44RWVLd2VkN0ZFRUYtNFEiLz4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExsQlRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGxCamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTGxCemlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9rMExsQ0RpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJNYXAiPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMbENUaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0ibWFwX21ldGFfZGF0YSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0Y1Tjh3QUsyRWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2swTGxDamlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InBvc2l0aW9uIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfdVVKWjRBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX2swTGxDemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkF0dHJpYnV0ZV9yb2JvdCI+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExsRERpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJ2b2llIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTGxEVGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InZvaWUiIHZhbHVlPSIwLjIyNiIvPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMbERqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iZW1wYXRlbWVudCI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExsRHppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJlbXBhdGVtZW50IiB2YWx1ZT0iMC4xNyIvPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMbEVEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iZGlhbV9yb3VlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTGxFVGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9ImRpYW1fcm91ZSIgdmFsdWU9IjAuMTQ0Ii8+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgeG1pOmlkPSJfazBMbEVqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iWW91dGhDaGFsbGVuZ2UgSW50ZXJmYWNlcyIvPgorICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiB4bWk6aWQ9Il9rMExsRXppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJZb3V0aENoYWxsZW5nZSBTdWJTeXN0ZW1zIi8+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9rMExsRkRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJXaWZpYm90Ij4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExsRlRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJwYXRoUGxhbm5lciIgdHlwZT0iX2swTG9GRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExsRmppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJtaXNzaW9uR2VuZXJhdG9yIiB0eXBlPSJfazBMbjl6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2swTGxGemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9Im5hdmlnYXRvciIgdHlwZT0iX2swTG9WamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExsR0RpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJwaWxvdCIgdHlwZT0iX2swTG9xemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExsR1RpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJzZXJ2b2luZyIgdHlwZT0iX2swTG8tamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExsR2ppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJzZW5zb3JzIiB0eXBlPSJfazBMbmRUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2swTGxHemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InByb3hpbWV0cnkiIHR5cGU9Il9rMExteERpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMbEhEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iZ2xvYmFsX21hcCIgdHlwZT0iX2swTG1CRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExsSFRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJsb2NhbF9NYXAiIHR5cGU9Il9rMExtVGppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTGxIamlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjAiPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExsSHppQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExsRmppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbi1EaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbElEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExsSVRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbElqaUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbEZUaUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG9IVGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGxJemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbEpEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExsSlRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3IxIj4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbEpqaUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbEZUaUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG9GVGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGxKemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbEtEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTGxLVGlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTGxGemlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExvVnppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExsS2ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGxLemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfazBMbExEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQ29ubmVjdG9yMiI+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTGxMVGlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTGxGemlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExvV3ppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExsTGppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGxMemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExsTURpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExsR0RpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMb3JEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbE1UaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExsTWppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTGxNemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjMiPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExsTkRpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExsR0RpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMb3NEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbE5UaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExsTmppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbE56aUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbEdUaUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG8temlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGxPRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbE9UaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExsT2ppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3I0Ij4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbE96aUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbEdqaUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG5kamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGxQRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbFBUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTGxQamlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTGxHemlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExteGppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExsUHppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGxRRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfazBMbFFUaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQ29ubmVjdG9yNSI+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTGxRamlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTGxHamlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExuZWppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExsUXppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGxSRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExsUlRpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExsR3ppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbXlqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbFJqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExsUnppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTGxTRGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjYiPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExsU1RpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExsR2ppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbmhqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbFNqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExsU3ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbFREaUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbEd6aUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG0xamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGxUVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbFRqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExsVHppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3I3Ij4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbFVEaUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbEdqaUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG5rVGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGxVVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbFVqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTGxVemlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTGxHemlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtM1RpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExsVkRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGxWVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfazBMbFZqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQ29ubmVjdG9yOCI+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTGxWemlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTGxHamlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExua0RpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExsV0RpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGxXVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExsV2ppQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExsR3ppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbTNqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbFd6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExsWERpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTGxYVGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjkiPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExsWGppQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExsR2ppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbmZqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbFh6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExsWURpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbFlUaUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbEd6aUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG16amlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGxZamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbFl6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExsWkRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3IxMCI+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTGxaVGlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTGxHamlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExuZ2ppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExsWmppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGxaemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExsYURpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExsR3ppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbTBqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbGFUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExsYWppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTGxhemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjExIj4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbGJEaUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbEdqaUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG5namlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGxiVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbGJqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTGxiemlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTGxHRGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExvdVRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExsY0RpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGxjVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfazBMbGNqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQ29ubmVjdG9yMTIiPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExsY3ppQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExsR3ppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbTREaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbGREaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExsZFRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbGRqaUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbEdEaUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG91RGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGxkemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbGVEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExsZVRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3IxMyI+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTGxlamlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTGxHemlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtM3ppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExsZXppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGxmRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExsZlRpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExsR0RpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExsZmppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGxmemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfazBMbGdEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQ29ubmVjdG9yMTQiPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExsZ1RpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExsR3ppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbTRqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbGdqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExsZ3ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbGhEaUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbEdEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbGhUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExsaGppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTGxoemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjE1Ij4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbGlEaUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbEd6aUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG0zemlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGxpVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbGlqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTGxpemlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTGxGemlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExvWVRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExsakRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGxqVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfazBMbGpqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQ29ubmVjdG9yMTYiPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExsanppQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExsR3ppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbTREaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbGtEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExsa1RpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbGtqaUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbEZ6aUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG9ZamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGxremlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbGxEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExsbFRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3IxNyI+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTGxsamlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTGxIVGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtVmppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExsbHppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGxtRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExsbVRpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExsRnppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMb1lEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbG1qaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExsbXppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTGxuRGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjE4Ij4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbG5UaUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbEdqaUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG5namlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGxuamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbG56aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTGxvRGlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTGxIVGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtVXppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExsb1RpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGxvamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfazBMbG96aUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQ29ubmVjdG9yMTkiPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExscERpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExsR2ppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbmZqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbHBUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExscGppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbHB6aUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbEhUaUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG1VamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGxxRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbHFUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExscWppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3IyMCI+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTGxxemlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTGxHemlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtNERpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExsckRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGxyVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExscmppQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExsSFRpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbVZEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbHJ6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExsc0RpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTGxzVGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjIxIj4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbHNqaUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbEd6aUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG0zemlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGxzemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbHREaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTGx0VGlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTGxIVGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtVlRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExsdGppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGx0emlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfazBMbHVEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQ29ubmVjdG9yMjIiPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExsdVRpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExsR3ppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbTRqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbHVqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExsdXppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbHZEaUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbEhUaUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG1VVGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGx2VGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbHZqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExsdnppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3IyMyI+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTGx3RGlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTGxHemlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtNFRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExsd1RpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGx3amlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExsd3ppQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExsSFRpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbVZ6aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbHhEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExseFRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTGx4amlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjI0Ij4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbHh6aUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbEd6aUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG0zemlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGx5RGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbHlUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTGx5amlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTGxIRGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtQnppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExseXppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGx6RGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfazBMbHpUaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQ29ubmVjdG9yMjUiPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExsemppQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExsR2ppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbmZqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbHp6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExsMERpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbDBUaUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbEhEaUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG1DRGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGwwamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbDB6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExsMURpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3IyNiI+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTGwxVGlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTGxIVGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtVmppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExsMWppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGwxemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExsMkRpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExsSERpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbUJqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbDJUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExsMmppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTGwyemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjI3Ij4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbDNEaUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbEd6aUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG0zemlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGwzVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbDNqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTGwzemlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTGxGVGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExvR1RpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExsNERpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGw0VGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfazBMbDRqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQ29ubmVjdG9yMjgiPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExsNHppQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExsSERpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbUNUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbDVEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExsNVRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbDVqaUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbEZUaUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG9JamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGw1emlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbDZEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9lbmQ+CisgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExsNlRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3IyOSI+CisgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTGw2amlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTGxHamlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExubFRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExsNnppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGw3RGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgIDwvZW5kPgorICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExsN1RpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExsR3ppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbTR6aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbDdqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExsN3ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICA8L2VuZD4KKyAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIHhtaTppZD0iX2swTGw4RGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IlA1X1NlbWFudGljIi8+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIHhtaTppZD0iX2swTGw4VGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IlA0X0dsb2JhbCI+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX2swTGw4amlBRWVLREFNRWpuT0xtUEEiIG5hbWU9Ikdsb2JhbF9NYXAiPgorICAgICAgICA8b3duZWRDb21tZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgeG1pOmlkPSJfazBMbDh6aUFFZUtEQU1Fam5PTG1QQSIgYW5ub3RhdGVkRWxlbWVudD0iX2swTGw4amlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxib2R5PlRoaXMgbW9kdWxlIGJ1aWQgdGhlIGFic29sdXRlIGJpdG1hcCBtYXAgKGdsb2JfbWFwKSBvZiB0aGUgc2NlbmUsIHVzaW5nIHRoZSBsb2NhbCBtYXAgKGxvYy1tYXApLiYjeEQ7Cit0aGUgb3JpZ2luZSBpcyB0aGUgZW50cnkgem9uZSBvZiB0aGUgcm9ib3QuPC9ib2R5PgorICAgICAgICA8L293bmVkQ29tbWVudD4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbDlEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iZ2xvYl9tYXAiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX2swTGxDRGlBRWVLREFNRWpuT0xtUEEiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTGw5VGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbDlqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMbDl6aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExsLURpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJsb2NfbWFwIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9rMExsQ0RpQUVlS0RBTUVqbk9MbVBBIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExsLVRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTGwtamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTGwtemlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbF9EaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0icG9zaXRpb24iIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX2swTGo5amlBRWVLREFNRWpuT0xtUEEiIGlzVW5pcXVlPSJmYWxzZSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbF9UaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExsX2ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExsX3ppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG1BRGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9ImdwcyIgdmlzaWJpbGl0eT0icHVibGljIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTXd2dm9LbEdFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG1BVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbUFqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMbUF6aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX2swTG1CRGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IlA0X0dsb2JhbCI+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExtQlRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJnbG9iYWxfTWFwIiB0eXBlPSJfazBMbDhqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExtQmppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJsb2NfbWFwIiB0eXBlPSJfazBMbENEaUFFZUtEQU1Fam5PTG1QQSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExtQnppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJwb3NpdGlvbiIgdHlwZT0iX2swTGo5amlBRWVLREFNRWpuT0xtUEEiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiLz4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbUNEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iZ3BzIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTXd2dm9LbEdFZUNEWC1SNHVweElwZyIvPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExtQ1RpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJnbG9iX21hcCIgdHlwZT0iX2swTGxDRGlBRWVLREFNRWpuT0xtUEEiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiLz4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExtQ2ppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3IxIj4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtQ3ppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbUJqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtRERpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbURUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtRGppQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExtQlRpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbC1EaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtRHppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbUVEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExtRVRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3IyIj4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtRWppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbUJ6aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtRXppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbUZEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtRlRpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExtQlRpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbF9EaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtRmppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbUZ6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExtR0RpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3IzIj4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtR1RpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbUNEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtR2ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbUd6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtSERpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExtQlRpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbUFEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtSFRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbUhqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExtSHppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3I0Ij4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtSURpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExtQlRpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbDlEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtSVRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbUlqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtSXppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbUNUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtSkRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbUpUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiB4bWk6aWQ9Il9rMExtSmppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJQM19Mb2NhbCI+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX2swTG1KemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkxvY2FsX01hcCI+CisgICAgICAgIDxvd25lZENvbW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiB4bWk6aWQ9Il9rMExtS0RpQUVlS0RBTUVqbk9MbVBBIiBhbm5vdGF0ZWRFbGVtZW50PSJfazBMbUp6aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGJvZHk+VGhlIExvY2FsIE1hcCBtb2R1bGUgQnVpbGQgYSBSZWxhdGl2ZSBDYXJ0ZXNpYW4gMkQgYml0bWFwIE1hcCAobG9jX21hcCkgJiN4RDsKK1RoZSBmcmFtZSBpcyBjZW50ZXJlZCBvbiB0aGUgcm9ib3QgKHggJmx0Oz0+IGZvcndhcmQpLiYjeEQ7CitpdCB1c2UgcHJveGlfbWFwIGFuZCBhbGwgcHJvcHJpbyBhbmQgZXh0ZXJvY2VwdGl2ZSBkYXRhcyBnaXZpbmcgaGltIHRoZSByZWxhdGl2ZSBkaXNwbGFjZW1lbnQuJiN4RDsKK1RoaXMgbWFwIGhhdmUgYSBNRU1PUlkgOiB0aGUgb2JzdGFjbGVzIGFyZSBwbGFjZWQgYW5kICdmb2xsb3cnIHRoZSBtb3Rpb24gb2YgdGhlIHJvYm90LCBlaXRoZXIgdGhleSBhcmUgbm90IGRpcmVjdGx5IHNlZW4gYnkgdGhlIHJvYm90LiYjeEQ7CitJdCBwbGFjZSBhbHNvIGFsbCB0aGUgYW1lciBvbiBpdCBtYXAuPC9ib2R5PgorICAgICAgICA8L293bmVkQ29tbWVudD4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbUtUaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0icG9zaXRpb24iIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX2swTGo5amlBRWVLREFNRWpuT0xtUEEiIGlzVW5pcXVlPSJmYWxzZSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbUtqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExtS3ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExtTERpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG1MVGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InZlbG9jaXR5IiB2aXNpYmlsaXR5PSJwdWJsaWMiIGlzVW5pcXVlPSJmYWxzZSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0EzTFVwaU44RWVLd2VkN0ZFRUYtNFEiLz4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtTGppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG1MemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTG1NRGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbU1UaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iYWNjZWxfZ2lyYXQiIHZpc2liaWxpdHk9InB1YmxpYyIgaXNVbmlxdWU9ImZhbHNlIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfY2dXWUlBS3FFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG1NamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbU16aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMbU5EaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExtTlRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJsb2NfbWFwIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9rMExsQ0RpQUVlS0RBTUVqbk9MbVBBIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtTmppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG1OemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTG1PRGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbU9UaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iZ3BzIiB2aXNpYmlsaXR5PSJwdWJsaWMiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19Nd3Z2b0tsR0VlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbU9qaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExtT3ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExtUERpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG1QVGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InByb3hpX21hcCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfazBMbENEaUFFZUtEQU1Fam5PTG1QQSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbVBqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExtUHppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExtUURpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG1RVGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9ImFtZXIiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX2swTGo2RGlBRWVLREFNRWpuT0xtUEEiIGlzVW5pcXVlPSJmYWxzZSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbVFqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExtUXppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExtUkRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfazBMbVJUaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQW1lcl9Mb2MiPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExtUmppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJhbWVyX3JlbGF0aXZlIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9rMExrN0RpQUVlS0RBTUVqbk9MbVBBIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG1SemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbVNEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMbVNUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExtU2ppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJhbWVyIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9rMExqNkRpQUVlS0RBTUVqbk9MbVBBIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG1TemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbVREaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMbVRUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX2swTG1UamlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IlAzX0xvY2FsIj4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2swTG1UemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9ImFtZXJfTG9jIiB0eXBlPSJfazBMbVJUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMbVVEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0ibG9jYWxfTWFwIiB0eXBlPSJfazBMbUp6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExtVVRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJwcm94aV9tYXAiIHR5cGU9Il9rMExsQ0RpQUVlS0RBTUVqbk9MbVBBIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIi8+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG1VamlBRWVLREFNRWpuT0xtUEEiIG5hbWU9ImdwcyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX013dnZvS2xHRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbVV6aUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iYWNjZWxfZ2lyYXQiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19jZ1dZSUFLcUVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG1WRGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InZlbG9jaXR5IiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfQTNMVXBpTjhFZUt3ZWQ3RkVFRi00USIvPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExtVlRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJwb3NpdGlvbiIgdHlwZT0iX2swTGo5amlBRWVLREFNRWpuT0xtUEEiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiLz4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbVZqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0ibG9jX21hcCIgdHlwZT0iX2swTGxDRGlBRWVLREFNRWpuT0xtUEEiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiLz4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbVZ6aUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iYW1lcl9yZWxhdGl2ZSIgdHlwZT0iX2swTGs3RGlBRWVLREFNRWpuT0xtUEEiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiLz4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExtV0RpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3IxIj4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtV1RpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExtVHppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbVNqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtV2ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbVd6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtWERpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExtVURpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbVFUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtWFRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbVhqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExtWHppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3IyIj4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtWURpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbVVUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtWVRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbVlqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtWXppQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExtVURpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbVBUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtWkRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbVpUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExtWmppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3IzIj4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtWnppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbVZUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtYURpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbWFUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtYWppQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExtVURpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbUtUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtYXppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbWJEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExtYlRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3I0Ij4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtYmppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbVZEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtYnppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbWNEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtY1RpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExtVURpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbUxUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtY2ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbWN6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExtZERpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3I1Ij4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtZFRpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbVV6aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtZGppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbWR6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtZURpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExtVURpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbU1UaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtZVRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbWVqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExtZXppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3I2Ij4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtZkRpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbVVqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtZlRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbWZqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtZnppQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExtVURpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbU9UaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtZ0RpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbWdUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExtZ2ppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3I3Ij4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtZ3ppQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExtVURpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbU5UaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtaERpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbWhUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtaGppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbVZqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtaHppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbWlEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExtaVRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3I4Ij4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtaWppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbVZ6aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtaXppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbWpEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExtalRpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExtVHppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbVJqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtamppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbWp6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiB4bWk6aWQ9Il9rMExta0RpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJQMl9Qcm94eW1ldHJ5Ij4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfazBMbWtUaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iU3VwZXJfREtNIj4KKyAgICAgICAgPG93bmVkQ29tbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIHhtaTppZD0iX2swTG1ramlBRWVLREFNRWpuT0xtUEEiIGFubm90YXRlZEVsZW1lbnQ9Il9rMExta1RpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8Ym9keT5Nb2RlbGUgQ2luZW1hdGlxdWUgRGlyZWN0IChNQ0QpIC0gRGlyZWN0IEtpbmVtYXRpY3MgTW9kZWwgKERLTSkmI3hEOworVHJhbnNmb3JtYXRpb24gZnJvbSBhcnRpY3VsYXIgc3BhY2UgKGxlZnQgYW5kIHJpZ2h0IHdoZWVscyBzcGVlZCkgdG8gb3BlcmF0aW9uYWwgc3BhY2UgKGNhcnRlc2lhbiB2ZWxvY2l0eSkmI3hEOword2UgY2FsbCBpdCAmcXVvdDtTdXBlciZxdW90Oy1ES00gYmVjYXVzZSB3ZSBub3Qgb25seSB1c2Ugb2RvbWV0cnkgc3BlZWQsIGJ1dCBhbHNvIElNVSBhbmQgR1BTIGlucHV0cywgYW5kIHdlIG91dHB1dCBhbHNvIGNhcnRlc2lhbiBwb3NpdGlvbjwvYm9keT4KKyAgICAgICAgPC9vd25lZENvbW1lbnQ+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG1remlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InBvc2l0aW9uIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9rMExqOWppQUVlS0RBTUVqbk9MbVBBIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG1sRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbWxUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMbWxqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExtbHppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJ2ZWxvY2l0eSIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVcGlOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbW1EaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExtbVRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExtbWppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG1temlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InZlbG9jaXR5X2FuZ3VsYXJfbGVmdF9yaWdodCIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVblNOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbW5EaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExtblRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExtbmppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG1uemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9Im9kb21ldGVyX2xpbmVhcl9sZWZ0X3JpZ2h0IiB2aXNpYmlsaXR5PSJwdWJsaWMiIGlzVW5pcXVlPSJmYWxzZSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0EzTFVsQ044RWVLd2VkN0ZFRUYtNFEiLz4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtb0RpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG1vVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTG1vamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbW96aUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iZ3BzIiB2aXNpYmlsaXR5PSJwdWJsaWMiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19Nd3Z2b0tsR0VlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbXBEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExtcFRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExtcGppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG1wemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9ImFjY2VsX2dpcmF0IiB2aXNpYmlsaXR5PSJwdWJsaWMiIGlzVW5pcXVlPSJmYWxzZSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2NnV1lJQUtxRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtcURpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG1xVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTG1xamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2swTG1xemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9ImF0dHJpYnV0ZSIgdHlwZT0iX2swTGxDemlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG1yRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbXJUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9rMExtcmppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJQcm94aW1ldHJpY19NYXAiPgorICAgICAgICA8b3duZWRDb21tZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgeG1pOmlkPSJfazBMbXJ6aUFFZUtEQU1Fam5PTG1QQSIgYW5ub3RhdGVkRWxlbWVudD0iX2swTG1yamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxib2R5PlByb3hpbWV0cmljIE1hcCBpcyBhIGJpdG1hcCBtYXAsIGJ1dCBpbiBwb2xhciBjb29yZGluYXRlLiYjeEQ7Cit0aGUgcG9sYXIgMkQgZnJhbWUgaXMgbGlua2VkIHRvIHRoZSByb2JvdCAoc28gcmVsYXRpdmUpLiBPcmlnaW5lIHggZm9yd2FyZCB0aGUgcm9ib3QsIGFuZ2xlIHdpdGggdHJpZ29ub21ldHJpYyB3YXkvbm90YXRpb24gKHVuY2xvY3dpc2UpJiN4RDsKK3RoaXMgUG9sYXIgYml0bWFwIG1hcCBpcyBkaWdpdGFsaXplZCBpbiBOcmFuZ2UgY2VsbCBmcm9tIDAgdG8gTWF4UmFuZ2UsIGFuZCBpbiBOYW5nbGUsIGZyb20gMCB0byAyUGkuJiN4RDsKK09ubHkgbWVhc3VyZXMgZnJvbSBzZW5zb3JzIGFyZSBkaXJlY3RseSBwcmludCBvbiB0aGlzIG1hcCA6IG5vIG1lbW9yeSAhPC9ib2R5PgorICAgICAgICA8L293bmVkQ29tbWVudD4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbXNEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0icHJveGlfbWFwIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9rMExsQ0RpQUVlS0RBTUVqbk9MbVBBIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExtc1RpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG1zamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTG1zemlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbXREaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0ibGFzZXJfc2NhbiIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI196ZHdkSUFLc0VlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbXRUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExtdGppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExtdHppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG11RGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InByb3h5X2xlZnRfcmlnaHQiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVZ1NOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfazBMbXVUaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQW1lcl9JZGVudGlmIj4KKyAgICAgICAgPG93bmVkQ29tbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIHhtaTppZD0iX2swTG11amlBRWVLREFNRWpuT0xtUEEiIGFubm90YXRlZEVsZW1lbnQ9Il9rMExtdVRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8Ym9keT5UaGlzIE1vZHVsZSBpcyBhYmxlIHRvIGZpbmQgYSBhbWVyIGluIGEgaW1hZ2UsIGFuZCwgdXNpbmcgdGhlIENhbWVyYUluZm8gb2YgdGhlIGNhbSwgZ2l2ZSBhIHBvc2l0aW9uIG9mIGl0LCByZWxhdGl2ZWx5IGZyb20gdGhlIHJvYm90LiBpdCBkZWxpdmVycyBhbHNvIHRoZSBzaGFwZSBvZiB0aGUgYW1lciwgYW5kIGl0IGNvbG9yLjwvYm9keT4KKyAgICAgICAgPC9vd25lZENvbW1lbnQ+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG11emlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InZpZGVvIiB2aXNpYmlsaXR5PSJwdWJsaWMiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19tSkRhOEFLdUVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbXZEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExtdlRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExtdmppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG12emlBRWVLREFNRWpuT0xtUEEiIG5hbWU9ImFtZXJfcmVsYXRpdmUiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX2swTGs3RGlBRWVLREFNRWpuT0xtUEEiIGlzVW5pcXVlPSJmYWxzZSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbXdEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExtd1RpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExtd2ppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG13emlBRWVLREFNRWpuT0xtUEEiIG5hbWU9ImNhbGlicmF0ZSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzVkX2VFQUtvRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9rMExteERpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJQMl9Qcm94aW1ldHJ5Ij4KKyAgICAgICAgPG93bmVkQ29tbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIHhtaTppZD0iX2swTG14VGlBRWVLREFNRWpuT0xtUEEiIGFubm90YXRlZEVsZW1lbnQ9Il9rMExteERpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8Ym9keT48L2JvZHk+CisgICAgICAgIDwvb3duZWRDb21tZW50PgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExteGppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJ2ZWxvY2l0eV9hbmd1bGFyX2xlZnRfcmlnaHQiIHZpc2liaWxpdHk9InB1YmxpYyIgaXNVbmlxdWU9ImZhbHNlIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfQTNMVW5TTjhFZUt3ZWQ3RkVFRi00USIvPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG14emlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbXlEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMbXlUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExteWppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJvZG9tZXRlcl9saW5lYXJfbGVmdF9yaWdodCIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVbENOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbXl6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExtekRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExtelRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG16amlBRWVLREFNRWpuT0xtUEEiIG5hbWU9ImdwcyIgdmlzaWJpbGl0eT0icHVibGljIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTXd2dm9LbEdFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG16emlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbTBEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMbTBUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExtMGppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJhY2NlbF9naXJhdCIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19jZ1dZSUFLcUVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbTB6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExtMURpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExtMVRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG0xamlBRWVLREFNRWpuT0xtUEEiIG5hbWU9Imxhc2VyX3NjYW4iIHZpc2liaWxpdHk9InB1YmxpYyIgaXNVbmlxdWU9ImZhbHNlIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfemR3ZElBS3NFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG0xemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbTJEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMbTJUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMbTJqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0ic3VwZXJES00iIHR5cGU9Il9rMExta1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExtMnppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJwcm94aW1ldHJpY19NYXAiIHR5cGU9Il9rMExtcmppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExtM0RpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJhbWVyX0lkZW50aWYiIHR5cGU9Il9rMExtdVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG0zVGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InZpZGVvIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfbUpEYThBS3VFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExtM2ppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJjYWxpYnJhdGUiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI181ZF9lRUFLb0VlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG0zemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InBvc2l0aW9uIiB0eXBlPSJfazBMajlqaUFFZUtEQU1Fam5PTG1QQSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExtNERpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJ2ZWxvY2l0eSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0EzTFVwaU44RWVLd2VkN0ZFRUYtNFEiLz4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbTRUaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iYW1lcl9SZWxhdGl2ZSIgdHlwZT0iX2swTGs3RGlBRWVLREFNRWpuT0xtUEEiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiLz4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbTRqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0icHJveGlfbWFwIiB0eXBlPSJfazBMbENEaUFFZUtEQU1Fam5PTG1QQSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExtNHppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJwcm94eV9sZWZ0X3JpZ2h0IiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfQTNMVWdTTjhFZUt3ZWQ3RkVFRi00USIvPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTG01RGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjEiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG01VGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtMWppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG01amlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExtNXppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG02RGlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTG0yemlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtdERpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG02VGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExtNmppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTG02emlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjIiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG03RGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtMGppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG03VGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExtN2ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG03emlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTG0yamlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtcHppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG04RGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExtOFRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTG04amlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjMiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG04emlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtemppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG05RGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExtOVRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG05amlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTG0yamlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtb3ppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG05emlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExtLURpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTG0tVGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjQiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG0tamlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExteWppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG0temlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExtX0RpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG1fVGlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTG0yamlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtbnppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG1famlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExtX3ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTG5BRGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjUiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG5BVGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExteGppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG5BamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExuQXppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG5CRGlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTG0yamlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtbXppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG5CVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExuQmppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTG5CemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjYiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG5DRGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtM1RpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG5DVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExuQ2ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG5DemlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTG0zRGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtdXppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG5ERGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExuRFRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTG5EamlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjciPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG5EemlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtM2ppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG5FRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExuRVRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG5FamlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTG0zRGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtd3ppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG5FemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExuRkRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTG5GVGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjgiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG5GamlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTG0yamlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExta3ppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG5GemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExuR0RpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG5HVGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtM3ppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG5HamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExuR3ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTG5IRGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjkiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG5IVGlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTG0yamlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtbHppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG5IamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExuSHppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG5JRGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtNERpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG5JVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExuSWppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTG5JemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjEwIj4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExuSkRpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExtMnppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbXNEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExuSlRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbkpqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExuSnppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbTRqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExuS0RpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbktUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExuS2ppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3IxMSI+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbkt6aUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbTNEaUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG12emlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbkxEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG5MVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbkxqaUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG00VGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbkx6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG5NRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfazBMbk1UaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQ29ubmVjdG9yMTIiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG5NamlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtNHppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG5NemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExuTkRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG5OVGlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTG0yemlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExtdURpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG5OamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExuTnppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIHhtaTppZD0iX2swTG5PRGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IlAxX1NlbnNvcnMiPgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9rMExuT1RpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJXaWZpQm90X0ZyYW1lX091dCI+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG5PamlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InZlbG9jaXR5X3RpY3NfbGVmdF9yaWdodCIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVWlNOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbk96aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExuUERpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExuUFRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG5QamlBRWVLREFNRWpuT0xtUEEiIG5hbWU9Im9kb21ldGVyX3RpY3NfbGVmdF9yaWdodCIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVZUNOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMblB6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExuUURpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExuUVRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG5RamlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InByb3hpX2xlZnRfcmlnaHQiIHZpc2liaWxpdHk9InB1YmxpYyIgaXNVbmlxdWU9ImZhbHNlIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfQTNMVWdTTjhFZUt3ZWQ3RkVFRi00USIvPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG5RemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMblJEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMblJUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExuUmppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJiYXR0X2xldmVsIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9rMExrdkRpQUVlS0RBTUVqbk9MbVBBIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG5SemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMblNEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMblNUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExuU2ppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJjdXJyZW50X2xldmVsIiB2aXNpYmlsaXR5PSJwdWJsaWMiIGlzVW5pcXVlPSJmYWxzZSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0EzTFVqeU44RWVLd2VkN0ZFRUYtNFEiLz4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExuU3ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG5URGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTG5UVGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9rMExuVGppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJPZG9tZXRlciI+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG5UemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InZlbG9jaXR5X3RpY3NfbGVmdF9yaWdodCIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVWlNOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMblVEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExuVVRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExuVWppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG5VemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9Im9kb21ldGVyX3RpY3NfbGVmdF9yaWdodCIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVZUNOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMblZEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExuVlRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExuVmppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG5WemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InZlbG9jaXR5X2FuZ3VsYXJfbGVmdF9yaWdodCIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVblNOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbldEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExuV1RpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExuV2ppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG5XemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9Im9kb21ldGVyX2xpbmVhcl9sZWZ0X3JpZ2h0IiB2aXNpYmlsaXR5PSJwdWJsaWMiIGlzVW5pcXVlPSJmYWxzZSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0EzTFVsQ044RWVLd2VkN0ZFRUYtNFEiLz4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExuWERpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG5YVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTG5YamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9rMExuWHppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJHUFNfSGFpY29tMjA0Ij4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbllEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iZ3BzIiB2aXNpYmlsaXR5PSJwdWJsaWMiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19Nd3Z2b0tsR0VlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbllUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExuWWppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExuWXppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfazBMblpEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iSU1VX1ZlY3Rvck5hdjEwMCI+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG5aVGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9ImFjY2VsX2dpcmF0IiB2aXNpYmlsaXR5PSJwdWJsaWMiIGlzVW5pcXVlPSJmYWxzZSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2NnV1lJQUtxRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExuWmppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG5aemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTG5hRGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9rMExuYVRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJMYXNlclJhbmdlX0hva3V5bzMwIj4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbmFqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0ibGFzZXJfc2NhbiIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI196ZHdkSUFLc0VlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbmF6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExuYkRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExuYlRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG5iamlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InN0YXR1cyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3FHNlVzQUlMRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQmVoYXZpb3IgeG1pOnR5cGU9InVtbDpPcGFxdWVCZWhhdmlvciIgeG1pOmlkPSJfS3hqWkFIQm1FZUtwTy1sME5HQVU5USIgbmFtZT0iT3BhcXVlQmVoYXZpb3IxIi8+CisgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfazBMbmJ6aUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQ2FtZXJhX0ZpcmVXaXJlIj4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbmNEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0idmlkZW8iIHZpc2liaWxpdHk9InB1YmxpYyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX21KRGE4QUt1RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExuY1RpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG5jamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTG5jemlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbmREaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iY2FsaWJyYXRlIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfNWRfZUVBS29FZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX2swTG5kVGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IlAxX1NlbnNvcnMiPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExuZGppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJ2ZWxvY2l0eV9hbmd1bGFyX2xlZnRfcmlnaHQiIHZpc2liaWxpdHk9InB1YmxpYyIgaXNVbmlxdWU9ImZhbHNlIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfQTNMVW5TTjhFZUt3ZWQ3RkVFRi00USIvPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG5kemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbmVEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMbmVUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExuZWppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJvZG9tZXRlcl9saW5lYXJfbGVmdF9yaWdodCIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVbENOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbmV6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExuZkRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExuZlRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG5mamlBRWVLREFNRWpuT0xtUEEiIG5hbWU9ImdwcyIgdmlzaWJpbGl0eT0icHVibGljIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTXd2dm9LbEdFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG5memlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbmdEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMbmdUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExuZ2ppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJhY2NlbF9naXJhdCIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19jZ1dZSUFLcUVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbmd6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExuaERpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExuaFRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG5oamlBRWVLREFNRWpuT0xtUEEiIG5hbWU9Imxhc2VyX3NjYW4iIHZpc2liaWxpdHk9InB1YmxpYyIgaXNVbmlxdWU9ImZhbHNlIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfemR3ZElBS3NFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG5oemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbmlEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMbmlUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMbmlqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0id2lmaWJvdF9GcmFtZV9PdXQiIHR5cGU9Il9rMExuT1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExuaXppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJHUFMiIHR5cGU9Il9rMExuWHppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExuakRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJPZG9tZXRlciIgdHlwZT0iX2swTG5UamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2swTG5qVGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IklNVSIgdHlwZT0iX2swTG5aRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2swTG5qamlBRWVLREFNRWpuT0xtUEEiIG5hbWU9Ikxhc2VyUmFuZ2UiIHR5cGU9Il9rMExuYVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExuanppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJjYW1lcmFfRmlyZVdpcmUiIHR5cGU9Il9rMExuYnppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG5rRGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9ImNhbGlicmF0ZSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzVkX2VFQUtvRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbmtUaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0idmlkZW8iIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19tSkRhOEFLdUVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG5ramlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InN0YXR1cyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3FHNlVzQUlMRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbmt6aUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iYmF0dF9sZXZlbCIgdHlwZT0iX2swTGt2RGlBRWVLREFNRWpuT0xtUEEiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiLz4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbmxEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iY3VycmVudF9sZXZlbCIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0EzTFVqeU44RWVLd2VkN0ZFRUYtNFEiLz4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbmxUaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0icHJveGlfTGVmdF9SaWdodCIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0EzTFVnU044RWVLd2VkN0ZFRUYtNFEiLz4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExubGppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3IxIj4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExubHppQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExuakRpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbld6aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExubURpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbm1UaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExubWppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbmVqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExubXppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbm5EaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExublRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3IyIj4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExubmppQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExuakRpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMblZ6aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExubnppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbm9EaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExub1RpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbmRqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExub2ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbm96aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExucERpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3IzIj4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExucFRpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExuaXppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbllEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExucGppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbnB6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExucURpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbmZqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExucVRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbnFqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExucXppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3I0Ij4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExuckRpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExuamppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbmFqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExuclRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbnJqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExucnppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbmhqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExuc0RpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbnNUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExuc2ppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3I1Ij4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExuc3ppQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExuanppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbmREaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExudERpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbnRUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExudGppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbmtEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExudHppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbnVEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExudVRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3I2Ij4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExudWppQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExuanppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbmNEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExudXppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbnZEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExudlRpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbmtUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExudmppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbnZ6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExud0RpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3I3Ij4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExud1RpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExualRpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMblpUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExud2ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbnd6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExueERpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbmdqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExueFRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbnhqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExueHppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3I4Ij4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExueURpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExuamppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbmJqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExueVRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbnlqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExueXppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbmtqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExuekRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbnpUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExuemppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3I5Ij4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExuenppQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExuaWppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMblBqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExuMERpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbjBUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExuMGppQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExuakRpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMblV6aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExuMHppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbjFEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExuMVRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3IxMCI+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbjFqaUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbmlqaUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG5PamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbjF6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG4yRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbjJUaUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbmpEaUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG5UemlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbjJqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG4yemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfazBMbjNEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQ29ubmVjdG9yMTEiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG4zVGlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTG5pamlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExuUWppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG4zamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExuM3ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG40RGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExubFRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG40VGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExuNGppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTG40emlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjEyIj4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExuNURpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExuaWppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMblNqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExuNVRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbjVqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExuNXppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbmxEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExuNkRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbjZUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExuNmppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3IxMyI+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbjZ6aUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMbmlqaUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG5SamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbjdEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG43VGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbjdqaUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG5remlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbjd6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG44RGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgeG1pOmlkPSJfazBMbjhUaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQTVfTWlzc2lvbkdlbmVyYXRvciI+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX2swTG44amlBRWVLREFNRWpuT0xtUEEiIG5hbWU9Ik1pc3Npb24iPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExuOHppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJnb2FsIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9rMExqNHppQUVlS0RBTUVqbk9MbVBBIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG45RGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbjlUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMbjlqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX2swTG45emlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkE1X01pc3Npb25HZW5lcmF0b3IiPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExuLURpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJnb2FsIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9rMExqNHppQUVlS0RBTUVqbk9MbVBBIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG4tVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbi1qaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMbi16aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMbl9EaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0ibWlzc2lvbiIgdHlwZT0iX2swTG44amlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExuX1RpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3IwIj4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExuX2ppQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExuX0RpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbjh6aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExuX3ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMb0FEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExvQVRpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbi1EaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExvQWppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMb0F6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiB4bWk6aWQ9Il9rMExvQkRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJBNF9QYXRoUGxhbm5lciI+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX2swTG9CVGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IlBhdGhfUGxhbm5lciI+CisgICAgICAgIDxvd25lZENvbW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiB4bWk6aWQ9Il9rMExvQmppQUVlS0RBTUVqbk9MbVBBIiBhbm5vdGF0ZWRFbGVtZW50PSJfazBMb0JUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGJvZHk+dGhpcyBtb2R1bGUgZGVsaXZlciB0aGUgcGF0aCAod2F5cG9pbnRzKSBmb3IgdGhlIG5hdmlnYXRvci4gaXQgdXNlIHRoZSBnbG9iYWwgbWFwIHRvIGNhbGN1bGF0ZSB0aGVzZSB3YXlwb2ludHMsIHRha2luZyBpbnRvIGFjY291bnQgdGhlIG1pc3Npb24gdG8gZG8uPC9ib2R5PgorICAgICAgICA8L293bmVkQ29tbWVudD4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMb0J6aUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iZ29hbCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfazBMajR6aUFFZUtEQU1Fam5PTG1QQSIgaXNVbmlxdWU9ImZhbHNlIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExvQ0RpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG9DVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTG9DamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMb0N6aUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0icGF0aCIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19wM3ZFY0FLMEVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMb0REaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExvRFRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExvRGppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG9EemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9Imdsb2JfbWFwIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9rMExsQ0RpQUVlS0RBTUVqbk9MbVBBIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExvRURpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG9FVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTG9FamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMb0V6aUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0icG9zaXRpb24iIHR5cGU9Il9rMExqOWppQUVlS0RBTUVqbk9MbVBBIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIi8+CisgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgeG1pOmlkPSJfazBMb0ZEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQTRfUGF0aFBsYW5uZXIiPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExvRlRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJwYXRoIiB2aXNpYmlsaXR5PSJwdWJsaWMiIGlzVW5pcXVlPSJmYWxzZSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3AzdkVjQUswRWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExvRmppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG9GemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTG9HRGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMb0dUaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0icG9zaXRpb24iIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX2swTGo5amlBRWVLREFNRWpuT0xtUEEiIGlzVW5pcXVlPSJmYWxzZSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMb0dqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExvR3ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExvSERpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG9IVGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9ImdvYWwiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX2swTGo0emlBRWVLREFNRWpuT0xtUEEiIGlzVW5pcXVlPSJmYWxzZSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMb0hqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExvSHppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExvSURpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExvSVRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJwYXRoX1BsYW5uZXIiIHR5cGU9Il9rMExvQlRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG9JamlBRWVLREFNRWpuT0xtUEEiIG5hbWU9Imdsb2JfbWFwIiB0eXBlPSJfazBMbENEaUFFZUtEQU1Fam5PTG1QQSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIvPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTG9JemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjAiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG9KRGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExvSFRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG9KVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExvSmppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG9KemlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTG9JVGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExvQnppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG9LRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExvS1RpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTG9LamlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjEiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG9LemlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTG9JVGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExvQ3ppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG9MRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExvTFRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG9MamlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExvRlRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG9MemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExvTURpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTG9NVGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjIiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG9NamlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExvSWppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG9NemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExvTkRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG9OVGlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTG9JVGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExvRHppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG9OamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExvTnppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTG9PRGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjMiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG9PVGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExvR1RpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG9PamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExvT3ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG9QRGlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTG9JVGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExvRXppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG9QVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExvUGppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIHhtaTppZD0iX2swTG9QemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkEzX05hdmlnYXRvciI+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX2swTG9RRGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9Ik5hdmlnYXRvciI+CisgICAgICAgIDxvd25lZENvbW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiB4bWk6aWQ9Il9rMExvUVRpQUVlS0RBTUVqbk9MbVBBIiBhbm5vdGF0ZWRFbGVtZW50PSJfazBMb1FEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGJvZHk+TmF2aWdhdG9yIGRlbGl2ZXIgbG9jYWwgdHJhamVjdG9yeSBmb3IgdGhlIHBpbG90LCB0YWtpbmcgaW50byBhY2NvdW50IGxvY2FsIG1hcC4mI3hEOworSXQgbXVzdCByZWFjaCB0aGUgdmFyaW91cyB3YXlwb2ludHMsIGNvbnNpZGVyaW5nIHRoZSBvYnN0YWNsZXMgcGxhY2VkIGluIHRoZSBsb2NhbCBtYXAgKGxvY19tYXApPC9ib2R5PgorICAgICAgICA8L293bmVkQ29tbWVudD4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMb1FqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0icGF0aCIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19wM3ZFY0FLMEVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMb1F6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExvUkRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExvUlRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG9SamlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InRyYWplY3RvcnkiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX2swTGtMRGlBRWVLREFNRWpuT0xtUEEiIGlzVW5pcXVlPSJmYWxzZSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMb1J6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExvU0RpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExvU1RpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG9TamlBRWVLREFNRWpuT0xtUEEiIG5hbWU9ImxvY19tYXAiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX2swTGxDRGlBRWVLREFNRWpuT0xtUEEiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG9TemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMb1REaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMb1RUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExvVGppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJwb3NpdGlvbiIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfazBMajlqaUFFZUtEQU1Fam5PTG1QQSIgaXNVbmlxdWU9ImZhbHNlIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExvVHppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG9VRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTG9VVGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMb1VqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0idmVsb2NpdHkiIHZpc2liaWxpdHk9InB1YmxpYyIgaXNVbmlxdWU9ImZhbHNlIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfQTNMVXBpTjhFZUt3ZWQ3RkVFRi00USIvPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG9VemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMb1ZEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMb1ZUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX2swTG9WamlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkEzX05hdmlnYXRvciI+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG9WemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InBhdGgiIHZpc2liaWxpdHk9InB1YmxpYyIgaXNVbmlxdWU9ImZhbHNlIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcDN2RWNBSzBFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG9XRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMb1dUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMb1dqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExvV3ppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJ0cmFqZWN0b3J5IiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9rMExrTERpQUVlS0RBTUVqbk9MbVBBIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG9YRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMb1hUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMb1hqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfazBMb1h6aUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0ibmF2aWdhdG9yIiB0eXBlPSJfazBMb1FEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExvWURpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJsb2NfbWFwIiB0eXBlPSJfazBMbENEaUFFZUtEQU1Fam5PTG1QQSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExvWVRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJwb3NpdGlvbiIgdHlwZT0iX2swTGo5amlBRWVLREFNRWpuT0xtUEEiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiLz4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMb1lqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0idmVsb2NpdHkiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVcGlOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfazBMb1l6aUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQ29ubmVjdG9yMSI+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMb1pEaUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMb1h6aUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG9SamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMb1pUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG9aamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMb1p6aUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG9XemlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMb2FEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG9hVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfazBMb2FqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQ29ubmVjdG9yMiI+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMb2F6aUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG9WemlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMb2JEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG9iVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMb2JqaUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMb1h6aUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG9RamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMb2J6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG9jRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfazBMb2NUaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQ29ubmVjdG9yMyI+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMb2NqaUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG9ZRGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMb2N6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG9kRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMb2RUaUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMb1h6aUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG9TamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMb2RqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG9kemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfazBMb2VEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQ29ubmVjdG9yNCI+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMb2VUaUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG9ZVGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMb2VqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG9lemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMb2ZEaUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMb1h6aUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG9UamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMb2ZUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG9mamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfazBMb2Z6aUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQ29ubmVjdG9yNSI+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMb2dEaUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG9ZamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMb2dUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG9namlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMb2d6aUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMb1h6aUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG9VamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMb2hEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG9oVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgeG1pOmlkPSJfazBMb2hqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQTJfUGlsb3QiPgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9rMExvaHppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJQaWxvdCI+CisgICAgICAgIDxvd25lZENvbW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiB4bWk6aWQ9Il9rMExvaURpQUVlS0RBTUVqbk9MbVBBIiBhbm5vdGF0ZWRFbGVtZW50PSJfazBMb2h6aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPGJvZHk+VGhlIHBpbG90IG11c3QgY2FsY3VsYXRlIHRoZSBzZXQgcG9pbnRzIGluIG9wZXJhdGluZyBzcGFjZSwgZm9sbG93aW5nIHRoZSB0cmFqZWN0b3J5IGRlbGl2ZXJlZCBieSB0aGUgbmF2aWdhdG9yLiAmI3hEOworQnV0IHRoZSBwaWxvdCBtdXN0IHJlYWN0IHRvIG9ic3RhY2xlcyAnc2VlbicgaW4gdGhlIHByb3hpbWV0cmljIG1hcCAocHJveF9tYXApLCBhdm9pZGluZyB0aGVtLiYjeEQ7Cis8L2JvZHk+CisgICAgICAgIDwvb3duZWRDb21tZW50PgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExvaVRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJ0cmFqZWN0b3J5IiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9rMExrTERpQUVlS0RBTUVqbk9MbVBBIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG9pamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMb2l6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMb2pEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExvalRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJwcm94X21hcCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfazBMbENEaUFFZUtEQU1Fam5PTG1QQSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMb2pqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExvanppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExva0RpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG9rVGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9Im9wX3NldF9wb2ludCIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVVnlOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMb2tqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExva3ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExvbERpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG9sVGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9InBvc2l0aW9uIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9rMExqOWppQUVlS0RBTUVqbk9MbVBBIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG9samlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMb2x6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMb21EaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExvbVRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJ2ZWxvY2l0eSIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVcGlOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMb21qaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExvbXppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExvbkRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG9uVGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9ImFjY2VsX2dpcmF0IiB2aXNpYmlsaXR5PSJwdWJsaWMiIGlzVW5pcXVlPSJmYWxzZSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2NnV1lJQUtxRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExvbmppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG9uemlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTG9vRGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9rMExvb1RpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJJS00iPgorICAgICAgICA8b3duZWRDb21tZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgeG1pOmlkPSJfazBMb29qaUFFZUtEQU1Fam5PTG1QQSIgYW5ub3RhdGVkRWxlbWVudD0iX2swTG9vVGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxib2R5Pk1vZGVsZSBDaW7DqW1hdGlxdWUgSW52ZXJzZSAoTUNJKSAtIEludmVydCBLaW5lbWF0aWMgTW9kZWwgKElLTSkmI3hEOwordHJhbnNmb3JtIHRoZSB2ZWxvY2l0aWVzIGZyb20gdGhlIG9wZXJhdGlvbmFsIHNwYWNlIHRvIHRoZSBhcnRpY3VsYXIgc3BhY2UgKGxlZnQgYW5kIHJpZ2h0IHdoZWVscyB2ZWxvY2l0aWVzKTwvYm9keT4KKyAgICAgICAgPC9vd25lZENvbW1lbnQ+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG9vemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9ImFydF9zZXRfcG9pbnQiIHZpc2liaWxpdHk9InB1YmxpYyIgaXNVbmlxdWU9ImZhbHNlIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfQTNMVUR5TjhFZUt3ZWQ3RkVFRi00USIvPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG9wRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMb3BUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMb3BqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExvcHppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJvcF9zZXRfcG9pbnQiIHZpc2liaWxpdHk9InB1YmxpYyIgaXNVbmlxdWU9ImZhbHNlIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfQTNMVVZ5TjhFZUt3ZWQ3RkVFRi00USIvPgorICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG9xRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMb3FUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfazBMb3FqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX2swTG9xemlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkEyX1BpbG90Ij4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMb3JEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0idHJhamVjdG9yeSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfazBMa0xEaUFFZUtEQU1Fam5PTG1QQSIgaXNVbmlxdWU9ImZhbHNlIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExvclRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG9yamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTG9yemlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMb3NEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iYXJ0X3NldF9wb2ludCIgdmlzaWJpbGl0eT0icHVibGljIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVRHlOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMb3NUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExvc2ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExvc3ppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExvdERpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJQaWxvdCIgdHlwZT0iX2swTG9oemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2swTG90VGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IklLTSIgdHlwZT0iX2swTG9vVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMb3VEaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0idmVsb2NpdHkiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVcGlOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlBvcnQiIHhtaTppZD0iX2swTG91VGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9ImFjY2VsX2dpcmF0IiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIj4KKyAgICAgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfY2dXWUlBS3FFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTG91amlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjAiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG91emlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTG90RGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExva1RpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG92RGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExvdlRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG92amlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTG90VGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExvcHppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG92emlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExvd0RpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTG93VGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjEiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG93amlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExvckRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG93emlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExveERpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG94VGlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTG90RGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExvaVRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG94amlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExveHppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTG95RGlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjIiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG95VGlBRWVLREFNRWpuT0xtUEEiIHBhcnRXaXRoUG9ydD0iX2swTG90VGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExvb3ppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG95amlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExveXppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG96RGlBRWVLREFNRWpuT0xtUEEiIHJvbGU9Il9rMExvc0RpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2swTG96VGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExvemppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDwvZW5kPgorICAgICAgICA8L293bmVkQ29ubmVjdG9yPgorICAgICAgICA8b3duZWRDb25uZWN0b3IgeG1pOnR5cGU9InVtbDpDb25uZWN0b3IiIHhtaTppZD0iX2swTG96emlBRWVLREFNRWpuT0xtUEEiIG5hbWU9IkNvbm5lY3RvcjMiPgorICAgICAgICAgIDxlbmQgeG1pOnR5cGU9InVtbDpDb25uZWN0b3JFbmQiIHhtaTppZD0iX2swTG8wRGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbzBUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG8wamlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbzB6aUFFZUtEQU1Fam5PTG1QQSIgcGFydFdpdGhQb3J0PSJfazBMb3REaUFFZUtEQU1Fam5PTG1QQSIgcm9sZT0iX2swTG9qVGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMbzFEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG8xVGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPC9lbmQ+CisgICAgICAgIDwvb3duZWRDb25uZWN0b3I+CisgICAgICAgIDxvd25lZENvbm5lY3RvciB4bWk6dHlwZT0idW1sOkNvbm5lY3RvciIgeG1pOmlkPSJfazBMbzFqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0iQ29ubmVjdG9yNCI+CisgICAgICAgICAgPGVuZCB4bWk6dHlwZT0idW1sOkNvbm5lY3RvckVuZCIgeG1pOmlkPSJfazBMbzF6aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExvMkRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbzJUaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExvMmppQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExvdERpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMb2xUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExvMnppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbzNEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExvM1RpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3I1Ij4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExvM2ppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMb3VEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExvM3ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbzREaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExvNFRpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExvdERpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMb21UaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExvNGppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbzR6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExvNURpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3I2Ij4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExvNVRpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMb3VUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExvNWppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbzV6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExvNkRpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExvdERpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMb25UaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExvNlRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMbzZqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiB4bWk6aWQ9Il9rMExvNnppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJBMV9TZXJ2b2luZ3MiPgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9rMExvN0RpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJTZXJ2b2luZ3MiPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExvN1RpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJhcnRfc2V0X3BvaW50IiB2aXNpYmlsaXR5PSJwdWJsaWMiIGlzVW5pcXVlPSJmYWxzZSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0EzTFVEeU44RWVLd2VkN0ZFRUYtNFEiLz4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExvN2ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG83emlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTG84RGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbzhUaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0ic3BlZWRfdGljc19sZWZ0X3JpZ2h0IiB2aXNpYmlsaXR5PSJwdWJsaWMiIGlzVW5pcXVlPSJmYWxzZSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0EzTFVaU044RWVLd2VkN0ZFRUYtNFEiLz4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExvOGppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG84emlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTG85RGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9rMExvOVRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJXaWZpQm90X0ZyYW1lX0luIj4KKyAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UG9ydCIgeG1pOmlkPSJfazBMbzlqaUFFZUtEQU1Fam5PTG1QQSIgbmFtZT0ic3BlZWRfdGljc19sZWZ0X3JpZ2h0IiB2aXNpYmlsaXR5PSJwdWJsaWMiIGlzVW5pcXVlPSJmYWxzZSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSI+CisgICAgICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0EzTFVaU044RWVLd2VkN0ZFRUYtNFEiLz4KKyAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExvOXppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2swTG8tRGlBRWVLREFNRWpuT0xtUEEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2swTG8tVGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9rMExvLWppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJBMV9TZXJ2b2luZ3MiPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQb3J0IiB4bWk6aWQ9Il9rMExvLXppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJhcnRfc2V0X3BvaW50IiB2aXNpYmlsaXR5PSJwcml2YXRlIiBpc1VuaXF1ZT0iZmFsc2UiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiPgorICAgICAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX0xJQlJBUklFUy9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19BM0xVRHlOOEVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfazBMb19EaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9rMExvX1RpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9rMExvX2ppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExvX3ppQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJTZXJ2b2luZ3MiIHR5cGU9Il9rMExvN0RpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rMExwQURpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJGcmFtZV9JbiIgdHlwZT0iX2swTG85VGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExwQVRpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3IxIj4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExwQWppQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExwQURpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbzlqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExwQXppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMcEJEaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExwQlRpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExvX3ppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbzhUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExwQmppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMcEJ6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgICAgPG93bmVkQ29ubmVjdG9yIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yIiB4bWk6aWQ9Il9rMExwQ0RpQUVlS0RBTUVqbk9MbVBBIiBuYW1lPSJDb25uZWN0b3IyIj4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExwQ1RpQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMby16aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExwQ2ppQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMcEN6aUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgICA8ZW5kIHhtaTp0eXBlPSJ1bWw6Q29ubmVjdG9yRW5kIiB4bWk6aWQ9Il9rMExwRERpQUVlS0RBTUVqbk9MbVBBIiBwYXJ0V2l0aFBvcnQ9Il9rMExvX3ppQUVlS0RBTUVqbk9MbVBBIiByb2xlPSJfazBMbzdUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9rMExwRFRpQUVlS0RBTUVqbk9MbVBBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfazBMcERqaUFFZUtEQU1Fam5PTG1QQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICA8L2VuZD4KKyAgICAgICAgPC9vd25lZENvbm5lY3Rvcj4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiB4bWk6aWQ9Il9PMFlWMERpdUVlS0ZIcHNkT0MxWDFRIiBuYW1lPSJFeGVjdXRpb25QbGF0Zm9ybSI+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX2lCUHpVRGl1RWVLRkhwc2RPQzFYMVEiIG5hbWU9IlJUbWFwcyIvPgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9ybEp5Z0RpdUVlS0ZIcHNkT0MxWDFRIiBuYW1lPSJCbGVuZGVyLU1vcnNlIi8+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIHhtaTppZD0iX0hSOHBzRGl2RWVLRkhwc2RPQzFYMVEiIG5hbWU9IlBsYXRmb3JtMSI+CisgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9RQWwwMERpdkVlS0ZIcHNkT0MxWDFRIiBuYW1lPSJSVG1hcHMxIiB0eXBlPSJfaUJQelVEaXVFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfeXZha1VEaXZFZUtGSHBzZE9DMVgxUSIgbmFtZT0iQmxlbmRlci1Nb3JzZTIiIHR5cGU9Il9ybEp5Z0RpdUVlS0ZIcHNkT0MxWDFRIi8+CisgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgeG1pOmlkPSJfMWM0M01EaXZFZUtGSHBzZE9DMVgxUSIgbmFtZT0iUGxhdGZvcm1Nb2RlbCI+CisgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgeG1pOmlkPSJfMWRWaklEaXZFZUtGSHBzZE9DMVgxUSIgbmFtZT0iUGxhdGZvcm0xUGxhdGZvcm0iPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il8xZFZqSVRpdkVlS0ZIcHNkT0MxWDFRIiBuYW1lPSJSVG1hcHMxIiBjbGFzc2lmaWVyPSJfaUJQelVEaXVFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il8xZFZqSWppdkVlS0ZIcHNkT0MxWDFRIiBuYW1lPSJCbGVuZGVyLU1vcnNlMiIgY2xhc3NpZmllcj0iX3JsSnlnRGl1RWVLRkhwc2RPQzFYMVEiLz4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiB4bWk6aWQ9Il9GczBDY0Rpd0VlS0ZIcHNkT0MxWDFRIiBuYW1lPSJEZXBsb3ltZW50UGxhbnMiPgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIHhtaTppZD0iX0t0YTFrRGl3RWVLRkhwc2RPQzFYMVEiIG5hbWU9IldpZmlib3REZXBQbGFuIj4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkluc3RhbmNlU3BlY2lmaWNhdGlvbiIgeG1pOmlkPSJfS3RrbWtUaXdFZUtGSHBzZE9DMVgxUSIgbmFtZT0ibWFpbkluc3RhbmNlIiBjbGFzc2lmaWVyPSJfazBMbEZEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPHNsb3QgeG1pOnR5cGU9InVtbDpTbG90IiB4bWk6aWQ9Il9LdVVOY0Rpd0VlS0ZIcHNkT0MxWDFRIiBkZWZpbmluZ0ZlYXR1cmU9Il9rMExsRlRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4bWk6dHlwZT0idW1sOkluc3RhbmNlVmFsdWUiIHhtaTppZD0iX0t1VU5jVGl3RWVLRkhwc2RPQzFYMVEiIGluc3RhbmNlPSJfS3R0d2dEaXdFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgICAgIDwvc2xvdD4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX0t1ZFhZVGl3RWVLRkhwc2RPQzFYMVEiIGRlZmluaW5nRmVhdHVyZT0iX2swTGxGamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfS3VkWFlqaXdFZUtGSHBzZE9DMVgxUSIgaW5zdGFuY2U9Il9LdVVOY2ppd0VlS0ZIcHNkT0MxWDFRIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfS3VuSVlEaXdFZUtGSHBzZE9DMVgxUSIgZGVmaW5pbmdGZWF0dXJlPSJfazBMbEZ6aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9LdW5JWVRpd0VlS0ZIcHNkT0MxWDFRIiBpbnN0YW5jZT0iX0t1ZFhZeml3RWVLRkhwc2RPQzFYMVEiLz4KKyAgICAgICAgICA8L3Nsb3Q+CisgICAgICAgICAgPHNsb3QgeG1pOnR5cGU9InVtbDpTbG90IiB4bWk6aWQ9Il9LdW5JYVRpd0VlS0ZIcHNkT0MxWDFRIiBkZWZpbmluZ0ZlYXR1cmU9Il9rMExsR0RpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4bWk6dHlwZT0idW1sOkluc3RhbmNlVmFsdWUiIHhtaTppZD0iX0t1bklhaml3RWVLRkhwc2RPQzFYMVEiIGluc3RhbmNlPSJfS3VuSVlqaXdFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgICAgIDwvc2xvdD4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX0t1d1NWeml3RWVLRkhwc2RPQzFYMVEiIGRlZmluaW5nRmVhdHVyZT0iX2swTGxHVGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfS3V3U1dEaXdFZUtGSHBzZE9DMVgxUSIgaW5zdGFuY2U9Il9LdXdTVURpd0VlS0ZIcHNkT0MxWDFRIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfS3ZEMFVqaXdFZUtGSHBzZE9DMVgxUSIgZGVmaW5pbmdGZWF0dXJlPSJfazBMbEdqaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9LdkQwVXppd0VlS0ZIcHNkT0MxWDFRIiBpbnN0YW5jZT0iX0t1d1NXVGl3RWVLRkhwc2RPQzFYMVEiLz4KKyAgICAgICAgICA8L3Nsb3Q+CisgICAgICAgICAgPHNsb3QgeG1pOnR5cGU9InVtbDpTbG90IiB4bWk6aWQ9Il9LdkQwWGppd0VlS0ZIcHNkT0MxWDFRIiBkZWZpbmluZ0ZlYXR1cmU9Il9rMExsR3ppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4bWk6dHlwZT0idW1sOkluc3RhbmNlVmFsdWUiIHhtaTppZD0iX0t2RDBYeml3RWVLRkhwc2RPQzFYMVEiIGluc3RhbmNlPSJfS3ZEMFZEaXdFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgICAgIDwvc2xvdD4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX0t2TS1SRGl3RWVLRkhwc2RPQzFYMVEiIGRlZmluaW5nRmVhdHVyZT0iX2swTGxIRGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfS3ZNLVJUaXdFZUtGSHBzZE9DMVgxUSIgaW5zdGFuY2U9Il9Ldk0tUURpd0VlS0ZIcHNkT0MxWDFRIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfS3ZNLVRUaXdFZUtGSHBzZE9DMVgxUSIgZGVmaW5pbmdGZWF0dXJlPSJfazBMbEhUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9Ldk0tVGppd0VlS0ZIcHNkT0MxWDFRIiBpbnN0YW5jZT0iX0t2TS1Saml3RWVLRkhwc2RPQzFYMVEiLz4KKyAgICAgICAgICA8L3Nsb3Q+CisgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9LdHR3Z0Rpd0VlS0ZIcHNkT0MxWDFRIiBuYW1lPSJtYWluSW5zdGFuY2UucGF0aFBsYW5uZXIiIGNsYXNzaWZpZXI9Il9rMExvRkRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX0t1S2NjRGl3RWVLRkhwc2RPQzFYMVEiIGRlZmluaW5nRmVhdHVyZT0iX2swTG9JVGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfS3VLY2NUaXdFZUtGSHBzZE9DMVgxUSIgaW5zdGFuY2U9Il9LdHR3Z1Rpd0VlS0ZIcHNkT0MxWDFRIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkluc3RhbmNlU3BlY2lmaWNhdGlvbiIgeG1pOmlkPSJfS3R0d2dUaXdFZUtGSHBzZE9DMVgxUSIgbmFtZT0ibWFpbkluc3RhbmNlLnBhdGhQbGFubmVyLnBhdGhfUGxhbm5lciIgY2xhc3NpZmllcj0iX2swTG9CVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkluc3RhbmNlU3BlY2lmaWNhdGlvbiIgeG1pOmlkPSJfS3VVTmNqaXdFZUtGSHBzZE9DMVgxUSIgbmFtZT0ibWFpbkluc3RhbmNlLm1pc3Npb25HZW5lcmF0b3IiIGNsYXNzaWZpZXI9Il9rMExuOXppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX0t1VU5kRGl3RWVLRkhwc2RPQzFYMVEiIGRlZmluaW5nRmVhdHVyZT0iX2swTG5fRGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfS3VkWFlEaXdFZUtGSHBzZE9DMVgxUSIgaW5zdGFuY2U9Il9LdVVOY3ppd0VlS0ZIcHNkT0MxWDFRIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkluc3RhbmNlU3BlY2lmaWNhdGlvbiIgeG1pOmlkPSJfS3VVTmN6aXdFZUtGSHBzZE9DMVgxUSIgbmFtZT0ibWFpbkluc3RhbmNlLm1pc3Npb25HZW5lcmF0b3IubWlzc2lvbiIgY2xhc3NpZmllcj0iX2swTG44amlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkluc3RhbmNlU3BlY2lmaWNhdGlvbiIgeG1pOmlkPSJfS3VkWFl6aXdFZUtGSHBzZE9DMVgxUSIgbmFtZT0ibWFpbkluc3RhbmNlLm5hdmlnYXRvciIgY2xhc3NpZmllcj0iX2swTG9WamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfS3VkWFpUaXdFZUtGSHBzZE9DMVgxUSIgZGVmaW5pbmdGZWF0dXJlPSJfazBMb1h6aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9LdWRYWmppd0VlS0ZIcHNkT0MxWDFRIiBpbnN0YW5jZT0iX0t1ZFhaRGl3RWVLRkhwc2RPQzFYMVEiLz4KKyAgICAgICAgICA8L3Nsb3Q+CisgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9LdWRYWkRpd0VlS0ZIcHNkT0MxWDFRIiBuYW1lPSJtYWluSW5zdGFuY2UubmF2aWdhdG9yLm5hdmlnYXRvciIgY2xhc3NpZmllcj0iX2swTG9RRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkluc3RhbmNlU3BlY2lmaWNhdGlvbiIgeG1pOmlkPSJfS3VuSVlqaXdFZUtGSHBzZE9DMVgxUSIgbmFtZT0ibWFpbkluc3RhbmNlLnBpbG90IiBjbGFzc2lmaWVyPSJfazBMb3F6aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPHNsb3QgeG1pOnR5cGU9InVtbDpTbG90IiB4bWk6aWQ9Il9LdW5JWkRpd0VlS0ZIcHNkT0MxWDFRIiBkZWZpbmluZ0ZlYXR1cmU9Il9rMExvdERpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4bWk6dHlwZT0idW1sOkluc3RhbmNlVmFsdWUiIHhtaTppZD0iX0t1bklaVGl3RWVLRkhwc2RPQzFYMVEiIGluc3RhbmNlPSJfS3VuSVl6aXdFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgICAgIDwvc2xvdD4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX0t1bklaeml3RWVLRkhwc2RPQzFYMVEiIGRlZmluaW5nRmVhdHVyZT0iX2swTG90VGlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfS3VuSWFEaXdFZUtGSHBzZE9DMVgxUSIgaW5zdGFuY2U9Il9LdW5JWmppd0VlS0ZIcHNkT0MxWDFRIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkluc3RhbmNlU3BlY2lmaWNhdGlvbiIgeG1pOmlkPSJfS3VuSVl6aXdFZUtGSHBzZE9DMVgxUSIgbmFtZT0ibWFpbkluc3RhbmNlLnBpbG90LlBpbG90IiBjbGFzc2lmaWVyPSJfazBMb2h6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9LdW5JWmppd0VlS0ZIcHNkT0MxWDFRIiBuYW1lPSJtYWluSW5zdGFuY2UucGlsb3QuSUtNIiBjbGFzc2lmaWVyPSJfazBMb29UaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9LdXdTVURpd0VlS0ZIcHNkT0MxWDFRIiBuYW1lPSJtYWluSW5zdGFuY2Uuc2Vydm9pbmciIGNsYXNzaWZpZXI9Il9rMExvLWppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX0t1d1NVaml3RWVLRkhwc2RPQzFYMVEiIGRlZmluaW5nRmVhdHVyZT0iX2swTG9femlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfS3V3U1V6aXdFZUtGSHBzZE9DMVgxUSIgaW5zdGFuY2U9Il9LdXdTVVRpd0VlS0ZIcHNkT0MxWDFRIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfS3V3U1ZUaXdFZUtGSHBzZE9DMVgxUSIgZGVmaW5pbmdGZWF0dXJlPSJfazBMcEFEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9LdXdTVmppd0VlS0ZIcHNkT0MxWDFRIiBpbnN0YW5jZT0iX0t1d1NWRGl3RWVLRkhwc2RPQzFYMVEiLz4KKyAgICAgICAgICA8L3Nsb3Q+CisgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9LdXdTVVRpd0VlS0ZIcHNkT0MxWDFRIiBuYW1lPSJtYWluSW5zdGFuY2Uuc2Vydm9pbmcuU2Vydm9pbmdzIiBjbGFzc2lmaWVyPSJfazBMbzdEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9LdXdTVkRpd0VlS0ZIcHNkT0MxWDFRIiBuYW1lPSJtYWluSW5zdGFuY2Uuc2Vydm9pbmcuRnJhbWVfSW4iIGNsYXNzaWZpZXI9Il9rMExvOVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVNwZWNpZmljYXRpb24iIHhtaTppZD0iX0t1d1NXVGl3RWVLRkhwc2RPQzFYMVEiIG5hbWU9Im1haW5JbnN0YW5jZS5zZW5zb3JzIiBjbGFzc2lmaWVyPSJfazBMbmRUaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPHNsb3QgeG1pOnR5cGU9InVtbDpTbG90IiB4bWk6aWQ9Il9LdTZEVURpd0VlS0ZIcHNkT0MxWDFRIiBkZWZpbmluZ0ZlYXR1cmU9Il9rMExuaWppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4bWk6dHlwZT0idW1sOkluc3RhbmNlVmFsdWUiIHhtaTppZD0iX0t1NkRVVGl3RWVLRkhwc2RPQzFYMVEiIGluc3RhbmNlPSJfS3V3U1dqaXdFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgICAgIDwvc2xvdD4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX0t1NkRVeml3RWVLRkhwc2RPQzFYMVEiIGRlZmluaW5nRmVhdHVyZT0iX2swTG5pemlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfS3U2RFZEaXdFZUtGSHBzZE9DMVgxUSIgaW5zdGFuY2U9Il9LdTZEVWppd0VlS0ZIcHNkT0MxWDFRIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfS3U2RFZqaXdFZUtGSHBzZE9DMVgxUSIgZGVmaW5pbmdGZWF0dXJlPSJfazBMbmpEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9LdTZEVnppd0VlS0ZIcHNkT0MxWDFRIiBpbnN0YW5jZT0iX0t1NkRWVGl3RWVLRkhwc2RPQzFYMVEiLz4KKyAgICAgICAgICA8L3Nsb3Q+CisgICAgICAgICAgPHNsb3QgeG1pOnR5cGU9InVtbDpTbG90IiB4bWk6aWQ9Il9LdTZEV1Rpd0VlS0ZIcHNkT0MxWDFRIiBkZWZpbmluZ0ZlYXR1cmU9Il9rMExualRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4bWk6dHlwZT0idW1sOkluc3RhbmNlVmFsdWUiIHhtaTppZD0iX0t1NkRXaml3RWVLRkhwc2RPQzFYMVEiIGluc3RhbmNlPSJfS3U2RFdEaXdFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgICAgIDwvc2xvdD4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX0t1NkRYRGl3RWVLRkhwc2RPQzFYMVEiIGRlZmluaW5nRmVhdHVyZT0iX2swTG5qamlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfS3U2RFhUaXdFZUtGSHBzZE9DMVgxUSIgaW5zdGFuY2U9Il9LdTZEV3ppd0VlS0ZIcHNkT0MxWDFRIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfS3ZEMFVEaXdFZUtGSHBzZE9DMVgxUSIgZGVmaW5pbmdGZWF0dXJlPSJfazBMbmp6aUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9LdkQwVVRpd0VlS0ZIcHNkT0MxWDFRIiBpbnN0YW5jZT0iX0t1NkRYaml3RWVLRkhwc2RPQzFYMVEiLz4KKyAgICAgICAgICA8L3Nsb3Q+CisgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9LdXdTV2ppd0VlS0ZIcHNkT0MxWDFRIiBuYW1lPSJtYWluSW5zdGFuY2Uuc2Vuc29ycy53aWZpYm90X0ZyYW1lX091dCIgY2xhc3NpZmllcj0iX2swTG5PVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkluc3RhbmNlU3BlY2lmaWNhdGlvbiIgeG1pOmlkPSJfS3U2RFVqaXdFZUtGSHBzZE9DMVgxUSIgbmFtZT0ibWFpbkluc3RhbmNlLnNlbnNvcnMuR1BTIiBjbGFzc2lmaWVyPSJfazBMblh6aUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9LdTZEVlRpd0VlS0ZIcHNkT0MxWDFRIiBuYW1lPSJtYWluSW5zdGFuY2Uuc2Vuc29ycy5PZG9tZXRlciIgY2xhc3NpZmllcj0iX2swTG5UamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkluc3RhbmNlU3BlY2lmaWNhdGlvbiIgeG1pOmlkPSJfS3U2RFdEaXdFZUtGSHBzZE9DMVgxUSIgbmFtZT0ibWFpbkluc3RhbmNlLnNlbnNvcnMuSU1VIiBjbGFzc2lmaWVyPSJfazBMblpEaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9LdTZEV3ppd0VlS0ZIcHNkT0MxWDFRIiBuYW1lPSJtYWluSW5zdGFuY2Uuc2Vuc29ycy5MYXNlclJhbmdlIiBjbGFzc2lmaWVyPSJfazBMbmFUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9LdTZEWGppd0VlS0ZIcHNkT0MxWDFRIiBuYW1lPSJtYWluSW5zdGFuY2Uuc2Vuc29ycy5jYW1lcmFfRmlyZVdpcmUiIGNsYXNzaWZpZXI9Il9rMExuYnppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVNwZWNpZmljYXRpb24iIHhtaTppZD0iX0t2RDBWRGl3RWVLRkhwc2RPQzFYMVEiIG5hbWU9Im1haW5JbnN0YW5jZS5wcm94aW1ldHJ5IiBjbGFzc2lmaWVyPSJfazBMbXhEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPHNsb3QgeG1pOnR5cGU9InVtbDpTbG90IiB4bWk6aWQ9Il9LdkQwVmppd0VlS0ZIcHNkT0MxWDFRIiBkZWZpbmluZ0ZlYXR1cmU9Il9rMExtMmppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4bWk6dHlwZT0idW1sOkluc3RhbmNlVmFsdWUiIHhtaTppZD0iX0t2RDBWeml3RWVLRkhwc2RPQzFYMVEiIGluc3RhbmNlPSJfS3ZEMFZUaXdFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgICAgIDwvc2xvdD4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX0t2RDBXVGl3RWVLRkhwc2RPQzFYMVEiIGRlZmluaW5nRmVhdHVyZT0iX2swTG0yemlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfS3ZEMFdqaXdFZUtGSHBzZE9DMVgxUSIgaW5zdGFuY2U9Il9LdkQwV0Rpd0VlS0ZIcHNkT0MxWDFRIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfS3ZEMFhEaXdFZUtGSHBzZE9DMVgxUSIgZGVmaW5pbmdGZWF0dXJlPSJfazBMbTNEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9LdkQwWFRpd0VlS0ZIcHNkT0MxWDFRIiBpbnN0YW5jZT0iX0t2RDBXeml3RWVLRkhwc2RPQzFYMVEiLz4KKyAgICAgICAgICA8L3Nsb3Q+CisgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9LdkQwVlRpd0VlS0ZIcHNkT0MxWDFRIiBuYW1lPSJtYWluSW5zdGFuY2UucHJveGltZXRyeS5zdXBlckRLTSIgY2xhc3NpZmllcj0iX2swTG1rVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkluc3RhbmNlU3BlY2lmaWNhdGlvbiIgeG1pOmlkPSJfS3ZEMFdEaXdFZUtGSHBzZE9DMVgxUSIgbmFtZT0ibWFpbkluc3RhbmNlLnByb3hpbWV0cnkucHJveGltZXRyaWNfTWFwIiBjbGFzc2lmaWVyPSJfazBMbXJqaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9LdkQwV3ppd0VlS0ZIcHNkT0MxWDFRIiBuYW1lPSJtYWluSW5zdGFuY2UucHJveGltZXRyeS5hbWVyX0lkZW50aWYiIGNsYXNzaWZpZXI9Il9rMExtdVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVNwZWNpZmljYXRpb24iIHhtaTppZD0iX0t2TS1RRGl3RWVLRkhwc2RPQzFYMVEiIG5hbWU9Im1haW5JbnN0YW5jZS5nbG9iYWxfbWFwIiBjbGFzc2lmaWVyPSJfazBMbUJEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgPHNsb3QgeG1pOnR5cGU9InVtbDpTbG90IiB4bWk6aWQ9Il9Ldk0tUWppd0VlS0ZIcHNkT0MxWDFRIiBkZWZpbmluZ0ZlYXR1cmU9Il9rMExtQlRpQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICAgIDx2YWx1ZSB4bWk6dHlwZT0idW1sOkluc3RhbmNlVmFsdWUiIHhtaTppZD0iX0t2TS1Reml3RWVLRkhwc2RPQzFYMVEiIGluc3RhbmNlPSJfS3ZNLVFUaXdFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgICAgIDwvc2xvdD4KKyAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVNwZWNpZmljYXRpb24iIHhtaTppZD0iX0t2TS1RVGl3RWVLRkhwc2RPQzFYMVEiIG5hbWU9Im1haW5JbnN0YW5jZS5nbG9iYWxfbWFwLmdsb2JhbF9NYXAiIGNsYXNzaWZpZXI9Il9rMExsOGppQUVlS0RBTUVqbk9MbVBBIi8+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVNwZWNpZmljYXRpb24iIHhtaTppZD0iX0t2TS1Saml3RWVLRkhwc2RPQzFYMVEiIG5hbWU9Im1haW5JbnN0YW5jZS5sb2NhbF9NYXAiIGNsYXNzaWZpZXI9Il9rMExtVGppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgICAgICA8c2xvdCB4bWk6dHlwZT0idW1sOlNsb3QiIHhtaTppZD0iX0t2TS1TRGl3RWVLRkhwc2RPQzFYMVEiIGRlZmluaW5nRmVhdHVyZT0iX2swTG1UemlBRWVLREFNRWpuT0xtUEEiPgorICAgICAgICAgICAgPHZhbHVlIHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VWYWx1ZSIgeG1pOmlkPSJfS3ZNLVNUaXdFZUtGSHBzZE9DMVgxUSIgaW5zdGFuY2U9Il9Ldk0tUnppd0VlS0ZIcHNkT0MxWDFRIi8+CisgICAgICAgICAgPC9zbG90PgorICAgICAgICAgIDxzbG90IHhtaTp0eXBlPSJ1bWw6U2xvdCIgeG1pOmlkPSJfS3ZNLVN6aXdFZUtGSHBzZE9DMVgxUSIgZGVmaW5pbmdGZWF0dXJlPSJfazBMbVVEaUFFZUtEQU1Fam5PTG1QQSI+CisgICAgICAgICAgICA8dmFsdWUgeG1pOnR5cGU9InVtbDpJbnN0YW5jZVZhbHVlIiB4bWk6aWQ9Il9Ldk0tVERpd0VlS0ZIcHNkT0MxWDFRIiBpbnN0YW5jZT0iX0t2TS1Taml3RWVLRkhwc2RPQzFYMVEiLz4KKyAgICAgICAgICA8L3Nsb3Q+CisgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9Ldk0tUnppd0VlS0ZIcHNkT0MxWDFRIiBuYW1lPSJtYWluSW5zdGFuY2UubG9jYWxfTWFwLmFtZXJfTG9jIiBjbGFzc2lmaWVyPSJfazBMbVJUaUFFZUtEQU1Fam5PTG1QQSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6SW5zdGFuY2VTcGVjaWZpY2F0aW9uIiB4bWk6aWQ9Il9Ldk0tU2ppd0VlS0ZIcHNkT0MxWDFRIiBuYW1lPSJtYWluSW5zdGFuY2UubG9jYWxfTWFwLmxvY2FsX01hcCIgY2xhc3NpZmllcj0iX2swTG1KemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkFic3RyYWN0aW9uIiB4bWk6aWQ9Il9XeGpWMERpd0VlS0ZIcHNkT0MxWDFRIiBuYW1lPSJhbGxvY2F0ZSB0byBCbGVuZGVyLU1vcnNlMiIgY2xpZW50PSJfS3V3U1dUaXdFZUtGSHBzZE9DMVgxUSIgc3VwcGxpZXI9Il8xZFZqSWppdkVlS0ZIcHNkT0MxWDFRIi8+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpBYnN0cmFjdGlvbiIgeG1pOmlkPSJfWXhmMFVEaXdFZUtGSHBzZE9DMVgxUSIgbmFtZT0iYWxsb2NhdGUgdG8gQmxlbmRlci1Nb3JzZTIiIGNsaWVudD0iX0t1d1NVRGl3RWVLRkhwc2RPQzFYMVEiIHN1cHBsaWVyPSJfMWRWaklqaXZFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6QWJzdHJhY3Rpb24iIHhtaTppZD0iX2o2a2FnRGl3RWVLRkhwc2RPQzFYMVEiIG5hbWU9ImFsbG9jYXRlIHRvIFJUbWFwczEiIGNsaWVudD0iX0t0dHdnRGl3RWVLRkhwc2RPQzFYMVEiIHN1cHBsaWVyPSJfMWRWaklUaXZFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6QWJzdHJhY3Rpb24iIHhtaTppZD0iX2tjVnEwRGl3RWVLRkhwc2RPQzFYMVEiIG5hbWU9ImFsbG9jYXRlIHRvIFJUbWFwczEiIGNsaWVudD0iX0t1VU5jaml3RWVLRkhwc2RPQzFYMVEiIHN1cHBsaWVyPSJfMWRWaklUaXZFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6QWJzdHJhY3Rpb24iIHhtaTppZD0iX2stSGlNRGl3RWVLRkhwc2RPQzFYMVEiIG5hbWU9ImFsbG9jYXRlIHRvIFJUbWFwczEiIGNsaWVudD0iX0t1ZFhZeml3RWVLRkhwc2RPQzFYMVEiIHN1cHBsaWVyPSJfMWRWaklUaXZFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6QWJzdHJhY3Rpb24iIHhtaTppZD0iX2xuTEdRRGl3RWVLRkhwc2RPQzFYMVEiIG5hbWU9ImFsbG9jYXRlIHRvIFJUbWFwczEiIGNsaWVudD0iX0t1bklZaml3RWVLRkhwc2RPQzFYMVEiIHN1cHBsaWVyPSJfMWRWaklUaXZFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6QWJzdHJhY3Rpb24iIHhtaTppZD0iX21FTHlZRGl3RWVLRkhwc2RPQzFYMVEiIG5hbWU9ImFsbG9jYXRlIHRvIFJUbWFwczEiIGNsaWVudD0iX0t2RDBWRGl3RWVLRkhwc2RPQzFYMVEiIHN1cHBsaWVyPSJfMWRWaklUaXZFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6QWJzdHJhY3Rpb24iIHhtaTppZD0iX21oZlpjRGl3RWVLRkhwc2RPQzFYMVEiIG5hbWU9ImFsbG9jYXRlIHRvIFJUbWFwczEiIGNsaWVudD0iX0t2TS1RRGl3RWVLRkhwc2RPQzFYMVEiIHN1cHBsaWVyPSJfMWRWaklUaXZFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6QWJzdHJhY3Rpb24iIHhtaTppZD0iX25MSmFjRGl3RWVLRkhwc2RPQzFYMVEiIG5hbWU9ImFsbG9jYXRlIHRvIFJUbWFwczEiIGNsaWVudD0iX0t2TS1Saml3RWVLRkhwc2RPQzFYMVEiIHN1cHBsaWVyPSJfMWRWaklUaXZFZUtGSHBzZE9DMVgxUSIvPgorICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiB4bWk6aWQ9Il9yX1N4RUtFS0VlS0xVcVg5SUpxMkdnIiBuYW1lPSJFbnZpcm9ubWVudCI+CisgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfd09rMDhLRUtFZUtMVXFYOUlKcTJHZyIgbmFtZT0id2lmaWJvdCIgdHlwZT0iX2swTGxGRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICA8cHJvZmlsZUFwcGxpY2F0aW9uIHhtaTp0eXBlPSJ1bWw6UHJvZmlsZUFwcGxpY2F0aW9uIiB4bWk6aWQ9Il9rMExwRHppQUVlS0RBTUVqbk9MbVBBIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rMExwRURpQUVlS0RBTUVqbk9MbVBBIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICA8cmVmZXJlbmNlcyB4bWk6dHlwZT0iZWNvcmU6RVBhY2thZ2UiIGhyZWY9Imh0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMSMvIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxhcHBsaWVkUHJvZmlsZSB4bWk6dHlwZT0idW1sOlByb2ZpbGUiIGhyZWY9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI18zUU9IRVBjRUVkLUowNlU1SE1fby1RIi8+CisgICAgPC9wcm9maWxlQXBwbGljYXRpb24+CisgIDwvdW1sOk1vZGVsPgorICA8Um9ib3RNTDpTb2Z0d2FyZSB4bWk6aWQ9Il9rMExwRVRpQUVlS0RBTUVqbk9MbVBBIiBiYXNlX0NsYXNzPSJfazBMbDhqaUFFZUtEQU1Fam5PTG1QQSIvPgorICA8Um9ib3RNTDpTb2Z0d2FyZSB4bWk6aWQ9Il9rMExwRWppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX0NsYXNzPSJfazBMbUJEaUFFZUtEQU1Fam5PTG1QQSIvPgorICA8Um9ib3RNTDpTb2Z0d2FyZSB4bWk6aWQ9Il9rMExwRXppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX0NsYXNzPSJfazBMbUp6aUFFZUtEQU1Fam5PTG1QQSIvPgorICA8Um9ib3RNTDpTb2Z0d2FyZSB4bWk6aWQ9Il9rMExwRkRpQUVlS0RBTUVqbk9MbVBBIiBiYXNlX0NsYXNzPSJfazBMbVJUaUFFZUtEQU1Fam5PTG1QQSIvPgorICA8Um9ib3RNTDpTb2Z0d2FyZSB4bWk6aWQ9Il9rMExwRlRpQUVlS0RBTUVqbk9MbVBBIiBiYXNlX0NsYXNzPSJfazBMbVRqaUFFZUtEQU1Fam5PTG1QQSIvPgorICA8Um9ib3RNTDpTb2Z0d2FyZSB4bWk6aWQ9Il9rMExwRmppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX0NsYXNzPSJfazBMbWtUaUFFZUtEQU1Fam5PTG1QQSIvPgorICA8Um9ib3RNTDpTb2Z0d2FyZSB4bWk6aWQ9Il9rMExwRnppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX0NsYXNzPSJfazBMbXJqaUFFZUtEQU1Fam5PTG1QQSIvPgorICA8Um9ib3RNTDpTb2Z0d2FyZSB4bWk6aWQ9Il9rMExwR0RpQUVlS0RBTUVqbk9MbVBBIiBiYXNlX0NsYXNzPSJfazBMbXVUaUFFZUtEQU1Fam5PTG1QQSIvPgorICA8Um9ib3RNTDpTb2Z0d2FyZSB4bWk6aWQ9Il9rMExwR1RpQUVlS0RBTUVqbk9MbVBBIiBiYXNlX0NsYXNzPSJfazBMbXhEaUFFZUtEQU1Fam5PTG1QQSIvPgorICA8Um9ib3RNTDpSb2JvdGljU3lzdGVtIHhtaTppZD0iX2swTHBHamlBRWVLREFNRWpuT0xtUEEiIGJhc2VfQ2xhc3M9Il9rMExuT1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOlNlbnNvclN5c3RlbSB4bWk6aWQ9Il9rMExwR3ppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX0NsYXNzPSJfazBMblRqaUFFZUtEQU1Fam5PTG1QQSIvPgorICA8Um9ib3RNTDpHUFNTeXN0ZW0geG1pOmlkPSJfazBMcEhEaUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9DbGFzcz0iX2swTG5YemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6TGlkYXJTeXN0ZW0geG1pOmlkPSJfazBMcEhqaUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9DbGFzcz0iX2swTG5hVGlBRWVLREFNRWpuT0xtUEEiIGxpYnJhcnlQYXRoPSIiIGxpYnJhcnlDb21wb25lbnROYW1lPSIiLz4KKyAgPFJvYm90TUw6Q2FtZXJhU3lzdGVtIHhtaTppZD0iX2swTHBIemlBRWVLREFNRWpuT0xtUEEiIGJhc2VfQ2xhc3M9Il9rMExuYnppQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOlNvZnR3YXJlIHhtaTppZD0iX2swTHBJRGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfQ2xhc3M9Il9rMExuOGppQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOlNvZnR3YXJlIHhtaTppZD0iX2swTHBJVGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfQ2xhc3M9Il9rMExuOXppQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOlNvZnR3YXJlIHhtaTppZD0iX2swTHBJamlBRWVLREFNRWpuT0xtUEEiIGJhc2VfQ2xhc3M9Il9rMExvQlRpQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOlNvZnR3YXJlIHhtaTppZD0iX2swTHBJemlBRWVLREFNRWpuT0xtUEEiIGJhc2VfQ2xhc3M9Il9rMExvRkRpQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOlNvZnR3YXJlIHhtaTppZD0iX2swTHBKRGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfQ2xhc3M9Il9rMExvUURpQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOlNvZnR3YXJlIHhtaTppZD0iX2swTHBKVGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfQ2xhc3M9Il9rMExvVmppQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOlNvZnR3YXJlIHhtaTppZD0iX2swTHBKamlBRWVLREFNRWpuT0xtUEEiIGJhc2VfQ2xhc3M9Il9rMExvaHppQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOlNvZnR3YXJlIHhtaTppZD0iX2swTHBKemlBRWVLREFNRWpuT0xtUEEiIGJhc2VfQ2xhc3M9Il9rMExvb1RpQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOlNvZnR3YXJlIHhtaTppZD0iX2swTHBLRGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfQ2xhc3M9Il9rMExvcXppQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOlNvZnR3YXJlIHhtaTppZD0iX2swTHBLVGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfQ2xhc3M9Il9rMExvN0RpQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOlJvYm90aWNTeXN0ZW0geG1pOmlkPSJfazBMcEtqaUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9DbGFzcz0iX2swTG85VGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBLemlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG8temlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBMRGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG83VGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBMVGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG84VGlBRWVLREFNRWpuT0xtUEEiIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwTGppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExvOWppQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwTHppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExvckRpQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwTURpQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExvaVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwTVRpQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExvalRpQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwTWppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExvbFRpQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwTXppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExvbVRpQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwTkRpQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExvblRpQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwTlRpQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExva1RpQUVlS0RBTUVqbk9MbVBBIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBMcE5qaUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMb3B6aUFFZUtEQU1Fam5PTG1QQSIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBMcE56aUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMb296aUFFZUtEQU1Fam5PTG1QQSIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBPRGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG9zRGlBRWVLREFNRWpuT0xtUEEiIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwT1RpQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExvVnppQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwT2ppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExvUWppQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwT3ppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExvU2ppQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwUERpQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExvVGppQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwUFRpQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExvVWppQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwUGppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExvUmppQUVlS0RBTUVqbk9MbVBBIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBMcFB6aUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMb1d6aUFFZUtEQU1Fam5PTG1QQSIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBRRGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG9IVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBRVGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG9HVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBRamlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG9CemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBRemlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG9EemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBSRGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG9DemlBRWVLREFNRWpuT0xtUEEiIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwUlRpQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExvRlRpQUVlS0RBTUVqbk9MbVBBIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBMcFJqaUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMbjh6aUFFZUtEQU1Fam5PTG1QQSIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBSemlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG4tRGlBRWVLREFNRWpuT0xtUEEiIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwU0RpQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExuVXppQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwU1RpQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExuVHppQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwU2ppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExuT2ppQUVlS0RBTUVqbk9MbVBBIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBMcFN6aUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMblBqaUFFZUtEQU1Fam5PTG1QQSIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBURGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG5TamlBRWVLREFNRWpuT0xtUEEiIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwVFRpQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExuUWppQUVlS0RBTUVqbk9MbVBBIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBMcFRqaUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMblJqaUFFZUtEQU1Fam5PTG1QQSIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBUemlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG5XemlBRWVLREFNRWpuT0xtUEEiIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwVURpQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExuVnppQUVlS0RBTUVqbk9MbVBBIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBMcFVUaUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMblpUaUFFZUtEQU1Fam5PTG1QQSIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBVamlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG5ZRGlBRWVLREFNRWpuT0xtUEEiIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwVXppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExuYWppQUVlS0RBTUVqbk9MbVBBIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBMcFZEaUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMbmNEaUFFZUtEQU1Fam5PTG1QQSIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBWVGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG14amlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBWamlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG15amlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBWemlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG16amlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBXRGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG0wamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBXVGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG0xamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBXamlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG1temlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBXemlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG1uemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBYRGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG1vemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBYVGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG1wemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBYamlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG1remlBRWVLREFNRWpuT0xtUEEiIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwWHppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExtbHppQUVlS0RBTUVqbk9MbVBBIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBMcFlEaUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMbVJqaUFFZUtEQU1Fam5PTG1QQSIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBMcFlUaUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMbVNqaUFFZUtEQU1Fam5PTG1QQSIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBZamlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG1LVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBZemlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG1MVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBaRGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG1NVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBaVGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG1PVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBaamlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG1QVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBaemlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG1RVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swTHBhRGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG1OVGlBRWVLREFNRWpuT0xtUEEiIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwYVRpQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExsLURpQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwYWppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExsX0RpQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwYXppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExtQURpQUVlS0RBTUVqbk9MbVBBIi8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMExwYkRpQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExsOURpQUVlS0RBTUVqbk9MbVBBIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBWVTREaUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMbmVqaUFFZUtEQU1Fam5PTG1QQSIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swVlU0VGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG5mamlBRWVLREFNRWpuT0xtUEEiIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMFZVNGppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExuaGppQUVlS0RBTUVqbk9MbVBBIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBWVTR6aUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMbmdqaUFFZUtEQU1Fam5PTG1QQSIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swVlU1RGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG5kamlBRWVLREFNRWpuT0xtUEEiIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMFZVNVRpQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExtc0RpQUVlS0RBTUVqbk9MbVBBIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBWVTVqaUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMbXREaUFFZUtEQU1Fam5PTG1QQSIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBWVTV6aUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMbXZ6aUFFZUtEQU1Fam5PTG1QQSIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swVlU2RGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG11emlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swVlU2VGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG5kRGlBRWVLREFNRWpuT0xtUEEiIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMFZVNmppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExuYmppQUVlS0RBTUVqbk9MbVBBIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBWVTZ6aUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMbXd6aUFFZUtEQU1Fam5PTG1QQSIgYnVmZmVyU2l6ZT0iNiIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBWVTdqaUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMb3VEaUFFZUtEQU1Fam5PTG1QQSIgYnVmZmVyU2l6ZT0iNiIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBWVTd6aUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMb3VUaUFFZUtEQU1Fam5PTG1QQSIgYnVmZmVyU2l6ZT0iNiIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBWVThEaUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMb1lEaUFFZUtEQU1Fam5PTG1QQSIgYnVmZmVyU2l6ZT0iNiIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBWVThUaUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMb1lUaUFFZUtEQU1Fam5PTG1QQSIgYnVmZmVyU2l6ZT0iNiIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBWVThqaUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMb1lqaUFFZUtEQU1Fam5PTG1QQSIgYnVmZmVyU2l6ZT0iNiIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBWVTh6aUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMb0lqaUFFZUtEQU1Fam5PTG1QQSIgYnVmZmVyU2l6ZT0iNiIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBWVTlEaUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMbmtEaUFFZUtEQU1Fam5PTG1QQSIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swVlU5VGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG5rVGlBRWVLREFNRWpuT0xtUEEiIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMFZVOWppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExua2ppQUVlS0RBTUVqbk9MbVBBIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBWVTl6aUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMbmt6aUFFZUtEQU1Fam5PTG1QQSIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swVlUtRGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG5sRGlBRWVLREFNRWpuT0xtUEEiIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMFZVLVRpQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExubFRpQUVlS0RBTUVqbk9MbVBBIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBWVS1qaUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMbTNUaUFFZUtEQU1Fam5PTG1QQSIgYnVmZmVyU2l6ZT0iNiIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBWVS16aUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMbTNqaUFFZUtEQU1Fam5PTG1QQSIgYnVmZmVyU2l6ZT0iNiIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBWVV9EaUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMbTN6aUFFZUtEQU1Fam5PTG1QQSIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swVlVfVGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG00RGlBRWVLREFNRWpuT0xtUEEiIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMFZVX2ppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExtNFRpQUVlS0RBTUVqbk9MbVBBIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBWVV96aUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMbTRqaUFFZUtEQU1Fam5PTG1QQSIgZGlyZWN0aW9uPSJvdXQiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swVlZBRGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG1VVGlBRWVLREFNRWpuT0xtUEEiIGJ1ZmZlclNpemU9IjYiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swVlZBVGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG1VamlBRWVLREFNRWpuT0xtUEEiIGJ1ZmZlclNpemU9IjYiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swVlZBamlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG1VemlBRWVLREFNRWpuT0xtUEEiIGJ1ZmZlclNpemU9IjYiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swVlZBemlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG1WRGlBRWVLREFNRWpuT0xtUEEiIGJ1ZmZlclNpemU9IjYiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swVlZCRGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG1WVGlBRWVLREFNRWpuT0xtUEEiIGJ1ZmZlclNpemU9IjYiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swVlZCVGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG1WamlBRWVLREFNRWpuT0xtUEEiIGRpcmVjdGlvbj0ib3V0Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMFZWQmppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExtVnppQUVlS0RBTUVqbk9MbVBBIiBidWZmZXJTaXplPSI2Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMFZWQnppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExtQmppQUVlS0RBTUVqbk9MbVBBIiBidWZmZXJTaXplPSI2Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMFZWQ0RpQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExtQnppQUVlS0RBTUVqbk9MbVBBIiBidWZmZXJTaXplPSI2Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMFZWQ1RpQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExtQ0RpQUVlS0RBTUVqbk9MbVBBIiBidWZmZXJTaXplPSI2Ii8+CisgIDxSb2JvdE1MOkRhdGFGbG93UG9ydCB4bWk6aWQ9Il9rMFZWQ2ppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX1BvcnQ9Il9rMExtQ1RpQUVlS0RBTUVqbk9MbVBBIiBkaXJlY3Rpb249Im91dCIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBWVkR6aUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMbTR6aUFFZUtEQU1Fam5PTG1QQSIgYnVmZmVyU2l6ZT0iNiIvPgorICA8Um9ib3RNTDpEYXRhRmxvd1BvcnQgeG1pOmlkPSJfazBWVkVEaUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9Qb3J0PSJfazBMbXVEaUFFZUtEQU1Fam5PTG1QQSIgYnVmZmVyU2l6ZT0iNiIvPgorICA8Um9ib3RNTDpSb2JvdCB4bWk6aWQ9Il9rMFZWR2ppQUVlS0RBTUVqbk9MbVBBIiBiYXNlX0NsYXNzPSJfazBMbEZEaUFFZUtEQU1Fam5PTG1QQSIvPgorICA8Um9ib3RNTDpTZW5zb3JTeXN0ZW0geG1pOmlkPSJfazBWVkd6aUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9DbGFzcz0iX2swTG5kVGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6QWN0dWF0b3JTeXN0ZW0geG1pOmlkPSJfazBWVkhEaUFFZUtEQU1Fam5PTG1QQSIgYmFzZV9DbGFzcz0iX2swTG8tamlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RGF0YUZsb3dQb3J0IHhtaTppZD0iX2swVlZIVGlBRWVLREFNRWpuT0xtUEEiIGJhc2VfUG9ydD0iX2swTG9FemlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6Um9ib3RpY01pZGRsZXdhcmUgeG1pOmlkPSJfaUZIbXNEaXVFZUtGSHBzZE9DMVgxUSIgYmFzZV9DbGFzcz0iX2lCUHpVRGl1RWVLRkhwc2RPQzFYMVEiLz4KKyAgPFJvYm90TUw6QmxlbmRlck1vcnNlIHhtaTppZD0iX3U1NWd3RGl1RWVLRkhwc2RPQzFYMVEiIGJhc2VfQ2xhc3M9Il9ybEp5Z0RpdUVlS0ZIcHNkT0MxWDFRIiBkZWJ1Z01vZGU9InRydWUiLz4KKyAgPFJvYm90TUw6UGxhdGZvcm0geG1pOmlkPSJfSFNaVnJEaXZFZUtGSHBzZE9DMVgxUSIgYmFzZV9DbGFzcz0iX0hSOHBzRGl2RWVLRkhwc2RPQzFYMVEiLz4KKyAgPFJvYm90TUw6QWxsb2NhdGUgeG1pOmlkPSJfV3h0RzBEaXdFZUtGSHBzZE9DMVgxUSIgYmFzZV9BYnN0cmFjdGlvbj0iX1d4alYwRGl3RWVLRkhwc2RPQzFYMVEiLz4KKyAgPFJvYm90TUw6QWxsb2NhdGUgeG1pOmlkPSJfWXhmMFVUaXdFZUtGSHBzZE9DMVgxUSIgYmFzZV9BYnN0cmFjdGlvbj0iX1l4ZjBVRGl3RWVLRkhwc2RPQzFYMVEiLz4KKyAgPFJvYm90TUw6QWxsb2NhdGUgeG1pOmlkPSJfajZ1TGdEaXdFZUtGSHBzZE9DMVgxUSIgYmFzZV9BYnN0cmFjdGlvbj0iX2o2a2FnRGl3RWVLRkhwc2RPQzFYMVEiLz4KKyAgPFJvYm90TUw6QWxsb2NhdGUgeG1pOmlkPSJfa2NmYjBEaXdFZUtGSHBzZE9DMVgxUSIgYmFzZV9BYnN0cmFjdGlvbj0iX2tjVnEwRGl3RWVLRkhwc2RPQzFYMVEiLz4KKyAgPFJvYm90TUw6QWxsb2NhdGUgeG1pOmlkPSJfay1IaU1UaXdFZUtGSHBzZE9DMVgxUSIgYmFzZV9BYnN0cmFjdGlvbj0iX2stSGlNRGl3RWVLRkhwc2RPQzFYMVEiLz4KKyAgPFJvYm90TUw6QWxsb2NhdGUgeG1pOmlkPSJfbG5VM1FEaXdFZUtGSHBzZE9DMVgxUSIgYmFzZV9BYnN0cmFjdGlvbj0iX2xuTEdRRGl3RWVLRkhwc2RPQzFYMVEiLz4KKyAgPFJvYm90TUw6QWxsb2NhdGUgeG1pOmlkPSJfbUVWallEaXdFZUtGSHBzZE9DMVgxUSIgYmFzZV9BYnN0cmFjdGlvbj0iX21FTHlZRGl3RWVLRkhwc2RPQzFYMVEiLz4KKyAgPFJvYm90TUw6QWxsb2NhdGUgeG1pOmlkPSJfbWhwS2NEaXdFZUtGSHBzZE9DMVgxUSIgYmFzZV9BYnN0cmFjdGlvbj0iX21oZlpjRGl3RWVLRkhwc2RPQzFYMVEiLz4KKyAgPFJvYm90TUw6QWxsb2NhdGUgeG1pOmlkPSJfbkxUTGNEaXdFZUtGSHBzZE9DMVgxUSIgYmFzZV9BYnN0cmFjdGlvbj0iX25MSmFjRGl3RWVLRkhwc2RPQzFYMVEiLz4KKyAgPFJvYm90TUw6SW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0geG1pOmlkPSJfSEVEdlFKM25FZUthREpiZzZiYXdlQSIgYmFzZV9DbGFzcz0iX2swTG5aRGlBRWVLREFNRWpuT0xtUEEiLz4KKyAgPFJvYm90TUw6RW52aXJvbm1lbnQgeG1pOmlkPSJfc0d2YzRLRUtFZUtMVXFYOUlKcTJHZyIgYmFzZV9DbGFzcz0iX3JfU3hFS0VLRWVLTFVxWDlJSnEyR2ciLz4KKzwveG1pOlhNST4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC90ZW1wbGF0ZXJlcG9zaXRvcnkvQWN0aXZhdG9yLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvdGVtcGxhdGVyZXBvc2l0b3J5L0FjdGl2YXRvci5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJhYmU2OGQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5L3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvdGVtcGxhdGVyZXBvc2l0b3J5L0FjdGl2YXRvci5qYXZhCkBAIC0wLDAgKzEsNjUgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIENFQSBMSVNULgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBEaG91aWIgKENFQSBMSVNUKSBzYWFkaWEuZGhvdWliQGNlYS5mciAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5OworCitpbXBvcnQgb3JnLmVjbGlwc2UudWkucGx1Z2luLkFic3RyYWN0VUlQbHVnaW47CitpbXBvcnQgb3JnLm9zZ2kuZnJhbWV3b3JrLkJ1bmRsZUNvbnRleHQ7CisKKy8qKgorICogVGhlIGFjdGl2YXRvciBjbGFzcyBjb250cm9scyB0aGUgcGx1Zy1pbiBsaWZlIGN5Y2xlCisgKi8KK3B1YmxpYyBjbGFzcyBBY3RpdmF0b3IgZXh0ZW5kcyBBYnN0cmFjdFVJUGx1Z2luIHsKKworCS8vIFRoZSBwbHVnLWluIElECisJcHVibGljIHN0YXRpYyBmaW5hbCBTdHJpbmcgUExVR0lOX0lEID0gIm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZW1wbGF0ZXJlcG9zaXRvcnkiOyAvLyROT04tTkxTLTEkCisKKwkvLyBUaGUgc2hhcmVkIGluc3RhbmNlCisJcHJpdmF0ZSBzdGF0aWMgQWN0aXZhdG9yIHBsdWdpbjsKKworCS8qKgorCSAqIFRoZSBjb25zdHJ1Y3RvcgorCSAqLworCXB1YmxpYyBBY3RpdmF0b3IoKSB7CisJfQorCisJLyoKKwkgKiAobm9uLUphdmFkb2MpCisJICoKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnVpLnBsdWdpbi5BYnN0cmFjdFVJUGx1Z2luI3N0YXJ0KG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0KQorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIHN0YXJ0KEJ1bmRsZUNvbnRleHQgY29udGV4dCkgdGhyb3dzIEV4Y2VwdGlvbiB7CisJCXN1cGVyLnN0YXJ0KGNvbnRleHQpOworCQlwbHVnaW4gPSB0aGlzOworCX0KKworCS8qCisJICogKG5vbi1KYXZhZG9jKQorCSAqCisJICogQHNlZSBvcmcuZWNsaXBzZS51aS5wbHVnaW4uQWJzdHJhY3RVSVBsdWdpbiNzdG9wKG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0KQorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIHN0b3AoQnVuZGxlQ29udGV4dCBjb250ZXh0KSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJcGx1Z2luID0gbnVsbDsKKwkJc3VwZXIuc3RvcChjb250ZXh0KTsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBzaGFyZWQgaW5zdGFuY2UKKwkgKgorCSAqIEByZXR1cm4gdGhlIHNoYXJlZCBpbnN0YW5jZQorCSAqLworCXB1YmxpYyBzdGF0aWMgQWN0aXZhdG9yIGdldERlZmF1bHQoKSB7CisJCXJldHVybiBwbHVnaW47CisJfQorCit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi8uY2xhc3NwYXRoIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24vLmNsYXNzcGF0aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43OTgwNDhkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24vLmNsYXNzcGF0aApAQCAtMCwwICsxLDcgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Y2xhc3NwYXRoPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJjb24iIHBhdGg9Im9yZy5lY2xpcHNlLmpkdC5sYXVuY2hpbmcuSlJFX0NPTlRBSU5FUi9vcmcuZWNsaXBzZS5qZHQuaW50ZXJuYWwuZGVidWcudWkubGF1bmNoZXIuU3RhbmRhcmRWTVR5cGUvSjJTRS0xLjUiLz4KKwk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5wZGUuY29yZS5yZXF1aXJlZFBsdWdpbnMiLz4KKwk8Y2xhc3NwYXRoZW50cnkga2luZD0ic3JjIiBwYXRoPSJzcmMvIi8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9Im91dHB1dCIgcGF0aD0idGFyZ2V0L2NsYXNzZXMiLz4KKzwvY2xhc3NwYXRoPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24vLnByb2plY3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi8ucHJvamVjdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNjU2OWJmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24vLnByb2plY3QKQEAgLTAsMCArMSwzNCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxwcm9qZWN0RGVzY3JpcHRpb24+CisJPG5hbWU+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb248L25hbWU+CisJPGNvbW1lbnQ+PC9jb21tZW50PgorCTxwcm9qZWN0cz4KKwk8L3Byb2plY3RzPgorCTxidWlsZFNwZWM+CisJCTxidWlsZENvbW1hbmQ+CisJCQk8bmFtZT5vcmcuZWNsaXBzZS5qZHQuY29yZS5qYXZhYnVpbGRlcjwvbmFtZT4KKwkJCTxhcmd1bWVudHM+CisJCQk8L2FyZ3VtZW50cz4KKwkJPC9idWlsZENvbW1hbmQ+CisJCTxidWlsZENvbW1hbmQ+CisJCQk8bmFtZT5vcmcuZWNsaXBzZS5wZGUuTWFuaWZlc3RCdWlsZGVyPC9uYW1lPgorCQkJPGFyZ3VtZW50cz4KKwkJCTwvYXJndW1lbnRzPgorCQk8L2J1aWxkQ29tbWFuZD4KKwkJPGJ1aWxkQ29tbWFuZD4KKwkJCTxuYW1lPm9yZy5lY2xpcHNlLnBkZS5TY2hlbWFCdWlsZGVyPC9uYW1lPgorCQkJPGFyZ3VtZW50cz4KKwkJCTwvYXJndW1lbnRzPgorCQk8L2J1aWxkQ29tbWFuZD4KKwkJPGJ1aWxkQ29tbWFuZD4KKwkJCTxuYW1lPm9yZy5lY2xpcHNlLm0yZS5jb3JlLm1hdmVuMkJ1aWxkZXI8L25hbWU+CisJCQk8YXJndW1lbnRzPgorCQkJPC9hcmd1bWVudHM+CisJCTwvYnVpbGRDb21tYW5kPgorCTwvYnVpbGRTcGVjPgorCTxuYXR1cmVzPgorCQk8bmF0dXJlPm9yZy5lY2xpcHNlLm0yZS5jb3JlLm1hdmVuMk5hdHVyZTwvbmF0dXJlPgorCQk8bmF0dXJlPm9yZy5lY2xpcHNlLnBkZS5QbHVnaW5OYXR1cmU8L25hdHVyZT4KKwkJPG5hdHVyZT5vcmcuZWNsaXBzZS5qZHQuY29yZS5qYXZhbmF0dXJlPC9uYXR1cmU+CisJPC9uYXR1cmVzPgorPC9wcm9qZWN0RGVzY3JpcHRpb24+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuY29yZS5yZXNvdXJjZXMucHJlZnMgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuY29yZS5yZXNvdXJjZXMucHJlZnMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTlmMjZjMAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5wcmVmcwpAQCAtMCwwICsxLDIgQEAKK2VjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCitlbmNvZGluZy88cHJvamVjdD49VVRGLTgKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40MTZmNGZiCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24vLnNldHRpbmdzL29yZy5lY2xpcHNlLmpkdC5jb3JlLnByZWZzCkBAIC0wLDAgKzEsMTEgQEAKK2VjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLmlubGluZUpzckJ5dGVjb2RlPWVuYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmNvZGVnZW4udGFyZ2V0UGxhdGZvcm09MS41CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnVudXNlZExvY2FsPXByZXNlcnZlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb21wbGlhbmNlPTEuNQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubGluZU51bWJlcj1nZW5lcmF0ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcubG9jYWxWYXJpYWJsZT1nZW5lcmF0ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuZGVidWcuc291cmNlRmlsZT1nZW5lcmF0ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5hc3NlcnRJZGVudGlmaWVyPWVycm9yCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVudW1JZGVudGlmaWVyPWVycm9yCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5zb3VyY2U9MS41CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UubTJlLmNvcmUucHJlZnMgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UubTJlLmNvcmUucHJlZnMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjg5N2E3ZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5tMmUuY29yZS5wcmVmcwpAQCAtMCwwICsxLDQgQEAKK2FjdGl2ZVByb2ZpbGVzPQorZWNsaXBzZS5wcmVmZXJlbmNlcy52ZXJzaW9uPTEKK3Jlc29sdmVXb3Jrc3BhY2VQcm9qZWN0cz10cnVlCit2ZXJzaW9uPTEKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uL01FVEEtSU5GL01BTklGRVNULk1GIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24vTUVUQS1JTkYvTUFOSUZFU1QuTUYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzYyZDkxNAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uL01FVEEtSU5GL01BTklGRVNULk1GCkBAIC0wLDAgKzEsMTcgQEAKK01hbmlmZXN0LVZlcnNpb246IDEuMAorUmVxdWlyZS1CdW5kbGU6IG9yZy5lY2xpcHNlLmdtZi5ydW50aW1lLmRpYWdyYW0udWk7YnVuZGxlLXZlcnNpb249IjEuNS4wIiwKKyBvcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5kaWFncmFtLmNvbW1vbjtidW5kbGUtdmVyc2lvbj0iMS4yLjAiLAorIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbDtidW5kbGUtdmVyc2lvbj0iMS4yLjAiLAorIG9yZy5lY2xpcHNlLnVtbDIudW1sLAorIG9yZy5lY2xpcHNlLnBhcHlydXMudW1sLnRvb2xzO2J1bmRsZS12ZXJzaW9uPSIxLjIuMCIsCisgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLAorIG9yZy5lY2xpcHNlLnBhcHlydXMuaW5mcmEuY29yZTtidW5kbGUtdmVyc2lvbj0iMS4yLjAiCitCdW5kbGUtVmVuZG9yOiAlQnVuZGxlLVZlbmRvcgorQnVuZGxlLUFjdGl2YXRpb25Qb2xpY3k6IGxhenkKK0J1bmRsZS1WZXJzaW9uOiAxLjIuMC5xdWFsaWZpZXIKK0J1bmRsZS1Mb2NhbGl6YXRpb246IHBsdWdpbgorQnVuZGxlLU5hbWU6ICVCdW5kbGUtTmFtZQorQnVuZGxlLUFjdGl2YXRvcjogb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24uQWN0aXZhdG9yCitCdW5kbGUtTWFuaWZlc3RWZXJzaW9uOiAyCitCdW5kbGUtU3ltYm9saWNOYW1lOiBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbjtzaW5nbGV0b246PXRydWUKK0J1bmRsZS1SZXF1aXJlZEV4ZWN1dGlvbkVudmlyb25tZW50OiBKMlNFLTEuNQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24vYWJvdXQuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uL2Fib3V0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDM1ZDVhZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uL2Fib3V0Lmh0bWwKQEAgLTAsMCArMSwyOCBAQAorPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgU3RyaWN0Ly9FTiIKKyAgICAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtc3RyaWN0LmR0ZCI+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Cis8aGVhZD4KKzxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEiLz4KKzx0aXRsZT5BYm91dDwvdGl0bGU+Cis8L2hlYWQ+Cis8Ym9keSBsYW5nPSJFTi1VUyI+Cis8aDI+QWJvdXQgVGhpcyBDb250ZW50PC9oMj4KKyAKKzxwPkp1bmUgNSwgMjAwNzwvcD4JCis8aDM+TGljZW5zZTwvaDM+CisKKzxwPlRoZSBFY2xpcHNlIEZvdW5kYXRpb24gbWFrZXMgYXZhaWxhYmxlIGFsbCBjb250ZW50IGluIHRoaXMgcGx1Zy1pbiAoJnF1b3Q7Q29udGVudCZxdW90OykuICBVbmxlc3Mgb3RoZXJ3aXNlIAoraW5kaWNhdGVkIGJlbG93LCB0aGUgQ29udGVudCBpcyBwcm92aWRlZCB0byB5b3UgdW5kZXIgdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIG9mIHRoZQorRWNsaXBzZSBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDEuMCAoJnF1b3Q7RVBMJnF1b3Q7KS4gIEEgY29weSBvZiB0aGUgRVBMIGlzIGF2YWlsYWJsZSAKK2F0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sIj5odHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbDwvYT4uCitGb3IgcHVycG9zZXMgb2YgdGhlIEVQTCwgJnF1b3Q7UHJvZ3JhbSZxdW90OyB3aWxsIG1lYW4gdGhlIENvbnRlbnQuPC9wPgorCis8cD5JZiB5b3UgZGlkIG5vdCByZWNlaXZlIHRoaXMgQ29udGVudCBkaXJlY3RseSBmcm9tIHRoZSBFY2xpcHNlIEZvdW5kYXRpb24sIHRoZSBDb250ZW50IGlzIAorYmVpbmcgcmVkaXN0cmlidXRlZCBieSBhbm90aGVyIHBhcnR5ICgmcXVvdDtSZWRpc3RyaWJ1dG9yJnF1b3Q7KSBhbmQgZGlmZmVyZW50IHRlcm1zIGFuZCBjb25kaXRpb25zIG1heQorYXBwbHkgdG8geW91ciB1c2Ugb2YgYW55IG9iamVjdCBjb2RlIGluIHRoZSBDb250ZW50LiAgQ2hlY2sgdGhlIFJlZGlzdHJpYnV0b3IncyBsaWNlbnNlIHRoYXQgd2FzIAorcHJvdmlkZWQgd2l0aCB0aGUgQ29udGVudC4gIElmIG5vIHN1Y2ggbGljZW5zZSBleGlzdHMsIGNvbnRhY3QgdGhlIFJlZGlzdHJpYnV0b3IuICBVbmxlc3Mgb3RoZXJ3aXNlCitpbmRpY2F0ZWQgYmVsb3csIHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB0aGUgRVBMIHN0aWxsIGFwcGx5IHRvIGFueSBzb3VyY2UgY29kZSBpbiB0aGUgQ29udGVudAorYW5kIHN1Y2ggc291cmNlIGNvZGUgbWF5IGJlIG9idGFpbmVkIGF0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvIj5odHRwOi8vd3d3LmVjbGlwc2Uub3JnPC9hPi48L3A+CisKKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uL2J1aWxkLnByb3BlcnRpZXMgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi9idWlsZC5wcm9wZXJ0aWVzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdiM2MyMjcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi9idWlsZC5wcm9wZXJ0aWVzCkBAIC0wLDAgKzEsOCBAQAorc291cmNlLi4gPSBzcmMvCitvdXRwdXQuLiA9IGJpbi8KK2Jpbi5pbmNsdWRlcyA9IE1FVEEtSU5GLyxcCisgICAgICAgICAgICAgICAuLFwKKyAgICAgICAgICAgICAgIHBsdWdpbi54bWwsXAorICAgICAgICAgICAgICAgcGx1Z2luLnByb3BlcnRpZXMsXAorICAgICAgICAgICAgICAgYWJvdXQuaHRtbAorc3JjLmluY2x1ZGVzID0gYWJvdXQuaHRtbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24vcGx1Z2luLnByb3BlcnRpZXMgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi9wbHVnaW4ucHJvcGVydGllcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43M2ZhNWUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24vcGx1Z2luLnByb3BlcnRpZXMKQEAgLTAsMCArMSwzIEBACisjUHJvcGVydGllcyBmaWxlIGZvciBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbgorQnVuZGxlLVZlbmRvciA9IEVjbGlwc2UgTW9kZWxpbmcgUHJvamVjdAorQnVuZGxlLU5hbWUgPSBWYWxpZGF0aW9uIHBsdWdpbiBmb3IgUm9ib3RNTCAoSW5jdWJhdGlvbikKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi9wbHVnaW4ueG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24vcGx1Z2luLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NTY5OThmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24vcGx1Z2luLnhtbApAQCAtMCwwICsxLDE2OSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzw/ZWNsaXBzZSB2ZXJzaW9uPSIzLjQiPz4KKzxwbHVnaW4+CisgICA8ZXh0ZW5zaW9uCisgICAgICAgICBwb2ludD0ib3JnLmVjbGlwc2UuZW1mLnZhbGlkYXRpb24uY29uc3RyYWludFByb3ZpZGVycyI+CisgICAgICA8Y2F0ZWdvcnkKKyAgICAgICAgICAgIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi5jb25zdHJhaW50cyIKKyAgICAgICAgICAgIG5hbWU9IlJvYm90TUwgcnVsZXMiPgorICAgICAgPC9jYXRlZ29yeT4KKyAgICAgIDxjb25zdHJhaW50UHJvdmlkZXIKKyAgICAgICAgICAgIG1vZGU9IkJhdGNoIj4KKyAgICAgICAgIDxwYWNrYWdlCisgICAgICAgICAgICAgICBuYW1lc3BhY2VVcmk9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwiPgorICAgICAgICAgPC9wYWNrYWdlPgorICAgICAgICAgPGNvbnN0cmFpbnRzCisgICAgICAgICAgICAgICBjYXRlZ29yaWVzPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi5jb25zdHJhaW50cyI+CisgICAgICAgICAgICA8Y29uc3RyYWludAorICAgICAgICAgICAgICAgICAgY2xhc3M9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uLmNvbnN0cmFpbnRzLlBvcnRJc0NvcnJlY3RseVR5cGVkIgorICAgICAgICAgICAgICAgICAgaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uLlBvcnRJc0NvcnJlY3RseVR5cGVkIgorICAgICAgICAgICAgICAgICAgaXNFbmFibGVkQnlEZWZhdWx0PSJ0cnVlIgorICAgICAgICAgICAgICAgICAgbGFuZz0iSmF2YSIKKyAgICAgICAgICAgICAgICAgIG1vZGU9IkJhdGNoIgorICAgICAgICAgICAgICAgICAgbmFtZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24uUG9ydElzQ29ycmVjdGx5VHlwZWQiCisgICAgICAgICAgICAgICAgICBzZXZlcml0eT0iRVJST1IiCisgICAgICAgICAgICAgICAgICBzdGF0dXNDb2RlPSIxIj4KKyAgICAgICAgICAgICAgIDxtZXNzYWdlPgorICAgICAgICAgICAgICAgICAgUm9ib3RNTCA6IHswfS4mcXVvdDsKKyAgICAgICAgICAgICAgIDwvbWVzc2FnZT4KKyAgICAgICAgICAgICAgIDxkZXNjcmlwdGlvbj4KKwkJCQkJUG9ydHMgc2hvdWxkIGJlIGNvcnJlY3RseSB0eXBlZC4KKwkJCQk8L2Rlc2NyaXB0aW9uPgorCQkJCTx0YXJnZXQgY2xhc3M9IlBvcnQiIC8+CisgICAgICAgICAgICA8L2NvbnN0cmFpbnQ+CisgICAgICAgICA8Y29uc3RyYWludAorICAgICAgICAgY2xhc3M9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uLmNvbnN0cmFpbnRzLlBvcnRzQXJlQ29ycmVjdGx5Q29ubmVjdGVkIgorICAgICAgICAgICAgICAgICAgaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uLlBvcnRzQXJlQ29ycmVjdGx5Q29ubmVjdGVkIgorICAgICAgICAgICAgICAgICAgaXNFbmFibGVkQnlEZWZhdWx0PSJ0cnVlIgorICAgICAgICAgICAgICAgICAgbGFuZz0iSmF2YSIKKyAgICAgICAgICAgICAgICAgIG1vZGU9IkJhdGNoIgorICAgICAgICAgICAgICAgICAgbmFtZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24uUG9ydHNBcmVDb3JyZWN0bHlDb25uZWN0ZWQiCisgICAgICAgICAgICAgICAgICBzZXZlcml0eT0iRVJST1IiCisgICAgICAgICAgICAgICAgICBzdGF0dXNDb2RlPSIxIj4KKyAgICAgICAgICAgICAgIDxtZXNzYWdlPgorICAgICAgICAgICAgICAgICAgJnF1b3Q7Um9ib3RNTDogezB9LiZxdW90OworICAgICAgICAgICAgICAgPC9tZXNzYWdlPgorICAgICAgICAgICAgICAgPGRlc2NyaXB0aW9uPgorCQkJCQlQb3J0cyBzaG91bGQgYmUgY29ycmVjdGx5IGNvbm5lY3RlZC4KKwkJCQk8L2Rlc2NyaXB0aW9uPgorCQkJCTx0YXJnZXQgY2xhc3M9IkNvbm5lY3RvciIgLz4KKyAgICAgICAgIAorICAgICAgICAgPC9jb25zdHJhaW50PgorICAgICAgICAgIDxjb25zdHJhaW50CisgICAgICAgICBjbGFzcz0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24uY29uc3RyYWludHMuVmVyaWZ5QWxwaGFudW1lcmljTmFtZWRFbGVtZW50IgorICAgICAgICAgICAgICAgICAgaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uLlZlcmlmeUFscGhhbnVtZXJpY05hbWVkRWxlbWVudCIKKyAgICAgICAgICAgICAgICAgIGlzRW5hYmxlZEJ5RGVmYXVsdD0idHJ1ZSIKKyAgICAgICAgICAgICAgICAgIGxhbmc9IkphdmEiCisgICAgICAgICAgICAgICAgICBtb2RlPSJCYXRjaCIKKyAgICAgICAgICAgICAgICAgIG5hbWU9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uLlZlcmlmeUFscGhhbnVtZXJpY05hbWVkRWxlbWVudCIKKyAgICAgICAgICAgICAgICAgIHNldmVyaXR5PSJXQVJOSU5HIgorICAgICAgICAgICAgICAgICAgc3RhdHVzQ29kZT0iMSI+CisgICAgICAgICAgICAgICA8bWVzc2FnZT4KKyAgICAgICAgICAgICAgICAgICZxdW90O1JvYm90TUw6IHswfS4mcXVvdDsKKyAgICAgICAgICAgICAgIDwvbWVzc2FnZT4KKyAgICAgICAgICAgICAgIDxkZXNjcmlwdGlvbj4KKwkJCQkJVGhlIG5hbWUgb2YgdGhlIGVsZW1lbnQgc2hvdWQgYmUgYWxwaGFudW1lcmljLgorCQkJCTwvZGVzY3JpcHRpb24+CisJCQkJPHRhcmdldCBjbGFzcz0iTmFtZWRFbGVtZW50IiAvPgorICAgICAgICAgCisgICAgICAgICA8L2NvbnN0cmFpbnQ+CisgICAgICAgICA8Y29uc3RyYWludAorICAgICAgICAgY2xhc3M9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uLmNvbnN0cmFpbnRzLk9ubHlPbmVDb25uZWN0aW9uQmV0d2VlblR3b1BvcnRzIgorICAgICAgICAgICAgICAgICAgaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uLk9ubHlPbmVDb25uZWN0aW9uQmV0d2VlblR3b1BvcnRzIgorICAgICAgICAgICAgICAgICAgaXNFbmFibGVkQnlEZWZhdWx0PSJ0cnVlIgorICAgICAgICAgICAgICAgICAgbGFuZz0iSmF2YSIKKyAgICAgICAgICAgICAgICAgIG1vZGU9IkJhdGNoIgorICAgICAgICAgICAgICAgICAgbmFtZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24uT25seU9uZUNvbm5lY3Rpb25CZXR3ZWVuVHdvUG9ydHMiCisgICAgICAgICAgICAgICAgICBzZXZlcml0eT0iRVJST1IiCisgICAgICAgICAgICAgICAgICBzdGF0dXNDb2RlPSIxIj4KKyAgICAgICAgICAgICAgIDxtZXNzYWdlPgorICAgICAgICAgICAgICAgICAgJnF1b3Q7Um9ib3RNTCA6IHswfS4mcXVvdDsKKyAgICAgICAgICAgICAgIDwvbWVzc2FnZT4KKyAgICAgICAgICAgICAgIDxkZXNjcmlwdGlvbj4KKwkJCQkJQ29ubmVjdGlvbiBzaG91bGQgYmUgc2V0IGJldHdlZW4gcG9ydHMgdGhhdCBhcmUgbm90IGFscmVhZHkgY29ubmVjdHkuCisJCQkJPC9kZXNjcmlwdGlvbj4KKwkJCQk8dGFyZ2V0IGNsYXNzPSJDb25uZWN0b3IiIC8+CisgICAgICAgICAKKyAgICAgICAgIDwvY29uc3RyYWludD4KKyAgICAgICAgIDxjb25zdHJhaW50CisgICAgICAgICBjbGFzcz0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24uY29uc3RyYWludHMuRGV0ZWN0UmVjdXJzaXZpdHkiCisgICAgICAgICAgICAgICAgICBpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24uRGV0ZWN0UmVjdXJzaXZpdHkiCisgICAgICAgICAgICAgICAgICBpc0VuYWJsZWRCeURlZmF1bHQ9InRydWUiCisgICAgICAgICAgICAgICAgICBsYW5nPSJKYXZhIgorICAgICAgICAgICAgICAgICAgbW9kZT0iQmF0Y2giCisgICAgICAgICAgICAgICAgICBuYW1lPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi5EZXRlY3RSZWN1cnNpdml0eSIKKyAgICAgICAgICAgICAgICAgIHNldmVyaXR5PSJFUlJPUiIKKyAgICAgICAgICAgICAgICAgIHN0YXR1c0NvZGU9IjEiPgorICAgICAgICAgICAgICAgPG1lc3NhZ2U+CisgICAgICAgICAgICAgICAgICAmcXVvdDtSb2JvdE1MIDogezB9LiZxdW90OworICAgICAgICAgICAgICAgPC9tZXNzYWdlPgorICAgICAgICAgICAgICAgPGRlc2NyaXB0aW9uPgorCQkJCQlQcm9ibGVtIG9mIHJlY3Vyc2l2aXR5OiBBIHN1YnN5c3RlbSAoUHJvcGVydHkpIHNob3VsZCBub3QgYmUgdHlwZWQgYnkgdGhlIHNhbWUgc3lzdGVtIHRoYXQgY29udGFpbnMgaXQuCisJCQkJPC9kZXNjcmlwdGlvbj4KKwkJCQk8dGFyZ2V0IGNsYXNzPSJQcm9wZXJ0eSIgLz4KKyAgICAgICAgIAorICAgICAgICAgPC9jb25zdHJhaW50PgorICAgICAgICAgIDxjb25zdHJhaW50CisgICAgICAgICBjbGFzcz0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24uY29uc3RyYWludHMuUHJvcGVydHlOYW1lVnNJdHNUeXBlTmFtZSIKKyAgICAgICAgICAgICAgICAgIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi5Qcm9wZXJ0eU5hbWVWc0l0c1R5cGVOYW1lIgorICAgICAgICAgICAgICAgICAgaXNFbmFibGVkQnlEZWZhdWx0PSJ0cnVlIgorICAgICAgICAgICAgICAgICAgbGFuZz0iSmF2YSIKKyAgICAgICAgICAgICAgICAgIG1vZGU9IkJhdGNoIgorICAgICAgICAgICAgICAgICAgbmFtZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24uUHJvcGVydHlOYW1lVnNJdHNUeXBlTmFtZSIKKyAgICAgICAgICAgICAgICAgIHNldmVyaXR5PSJXQVJOSU5HIgorICAgICAgICAgICAgICAgICAgc3RhdHVzQ29kZT0iMSI+CisgICAgICAgICAgICAgICA8bWVzc2FnZT4KKyAgICAgICAgICAgICAgICAgICZxdW90O1JvYm90TUwgOiB7MH0uJnF1b3Q7CisgICAgICAgICAgICAgICA8L21lc3NhZ2U+CisgICAgICAgICAgICAgICA8ZGVzY3JpcHRpb24+CisJCQkJCVByb2JsZW0gb2YgcmVjdXJzaXZpdHk6IEEgc3Vic3lzdGVtIChQcm9wZXJ0eSkgc2hvdWxkIG5vdCBiZSB0eXBlZCBieSB0aGUgc2FtZSBzeXN0ZW0gdGhhdCBjb250YWlucyBpdC4KKwkJCQk8L2Rlc2NyaXB0aW9uPgorCQkJCTx0YXJnZXQgY2xhc3M9IlByb3BlcnR5IiAvPgorICAgICAgICAgCisgICAgICAgICA8L2NvbnN0cmFpbnQ+CisgICAgICAgICA8L2NvbnN0cmFpbnRzPgorICAgICAgPC9jb25zdHJhaW50UHJvdmlkZXI+CisgICAgICA8Y29uc3RyYWludFByb3ZpZGVyIG1vZGU9IkxpdmUiPgorCQk8cGFja2FnZSBuYW1lc3BhY2VVcmk9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwiIC8+CisgICAgCisJCTxjb25zdHJhaW50cyBjYXRlZ29yaWVzPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi5jb25zdHJhaW50cyI+CisgICAgICAgICAgICAKKyAgICAgICAgICAgIDxjb25zdHJhaW50CisgICAgICAgICAgICAgICAgICBjbGFzcz0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24uY29uc3RyYWludHMuT25seU9uZUNvbm5lY3Rpb25CZXR3ZWVuVHdvUG9ydHMiCisgICAgICAgICAgICAgICAgICBpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24uTGl2ZS5Pbmx5T25lQ29ubmVjdGlvbkJldHdlZW5Ud29Qb3J0cyIKKyAgICAgICAgICAgICAgICAgIGlzRW5hYmxlZEJ5RGVmYXVsdD0idHJ1ZSIKKyAgICAgICAgICAgICAgICAgIGxhbmc9IkphdmEiCisgICAgICAgICAgICAgICAgICBtb2RlPSJMaXZlIgorICAgICAgICAgICAgICAgICAgbmFtZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24uTGl2ZS5Pbmx5T25lQ29ubmVjdGlvbkJldHdlZW5Ud29Qb3J0cyIKKyAgICAgICAgICAgICAgICAgIHNldmVyaXR5PSJFUlJPUiIKKyAgICAgICAgICAgICAgICAgIHN0YXR1c0NvZGU9IjEiPgorCQkJCTxtZXNzYWdlPgorCQkJCQkgJnF1b3Q7Um9ib3RNTCA6IHswfS4mcXVvdDsKKwkJCQk8L21lc3NhZ2U+CisJCQkJPGRlc2NyaXB0aW9uPgorCQkJCQlDb25uZWN0aW9uIG11c3QgYmUgc2V0IGJldHdlZW4gcG9ydHMgdGhhdCBhcmUgbm90IGFscmVhZHkgY29ubmVjdGVkLgorCQkJCTwvZGVzY3JpcHRpb24+CisJCQkJPHRhcmdldCBjbGFzcz0iQ29ubmVjdG9yIiAvPgorCQkJPC9jb25zdHJhaW50PgorCQkJIDwvY29uc3RyYWludHM+CisgICAgICA8L2NvbnN0cmFpbnRQcm92aWRlcj4KKyAgIDwvZXh0ZW5zaW9uPgorICAgPGV4dGVuc2lvbgorICAgICAgICAgcG9pbnQ9Im9yZy5lY2xpcHNlLmVtZi52YWxpZGF0aW9uLmNvbnN0cmFpbnRCaW5kaW5ncyI+CisgICAgICA8Y2xpZW50Q29udGV4dAorICAgICAgICAgICAgZGVmYXVsdD0iZmFsc2UiCisgICAgICAgICAgICBpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24uY29udGV4dCI+CisgICAgICAgICA8c2VsZWN0b3IKKyAgICAgICAgICAgICAgIGNsYXNzPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi5WYWxpZGF0aW9uRGVsZWdhdGVDbGllbnRTZWxlY3RvciI+CisgICAgICAgICA8L3NlbGVjdG9yPgorICAgICAgPC9jbGllbnRDb250ZXh0PgorICAgICAgPGJpbmRpbmcKKyAgICAgICAgICAgIGNvbnRleHQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uLmNvbnRleHQiPgorICAgICAgICAgPGNhdGVnb3J5CisgICAgICAgICAgICAgICByZWY9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uLmNvbnN0cmFpbnRzIj4KKyAgICAgICAgIDwvY2F0ZWdvcnk+CisgICAgICA8L2JpbmRpbmc+CisgICA8L2V4dGVuc2lvbj4KKyAgIAorIAorPC9wbHVnaW4+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi9wb20ueG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24vcG9tLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43OGM3M2JmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24vcG9tLnhtbApAQCAtMCwwICsxLDExIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHByb2plY3Q+CisJPG1vZGVsVmVyc2lvbj40LjAuMDwvbW9kZWxWZXJzaW9uPgorCTxwYXJlbnQ+CisJCTxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5wYXJlbnQ8L2FydGlmYWN0SWQ+CisJCTxncm91cElkPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbDwvZ3JvdXBJZD4KKwkJPHZlcnNpb24+MS4yLjAtU05BUFNIT1Q8L3ZlcnNpb24+CisJPC9wYXJlbnQ+CisJPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb248L2FydGlmYWN0SWQ+CisJPHBhY2thZ2luZz5lY2xpcHNlLXBsdWdpbjwvcGFja2FnaW5nPgorPC9wcm9qZWN0PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvdmFsaWRhdGlvbi9BY3RpdmF0b3IuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvdmFsaWRhdGlvbi9BY3RpdmF0b3IuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lNWIwYzNhCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC92YWxpZGF0aW9uL0FjdGl2YXRvci5qYXZhCkBAIC0wLDAgKzEsNjUgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIENFQSBMSVNULgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBEaG91aWIgKENFQSBMSVNUKSBzYWFkaWEuZGhvdWliQGNlYS5mciAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLnVpLnBsdWdpbi5BYnN0cmFjdFVJUGx1Z2luOworaW1wb3J0IG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0OworCisvKioKKyAqIFRoZSBhY3RpdmF0b3IgY2xhc3MgY29udHJvbHMgdGhlIHBsdWctaW4gbGlmZSBjeWNsZQorICovCitwdWJsaWMgY2xhc3MgQWN0aXZhdG9yIGV4dGVuZHMgQWJzdHJhY3RVSVBsdWdpbiB7CisKKwkvLyBUaGUgcGx1Zy1pbiBJRAorCXB1YmxpYyBzdGF0aWMgZmluYWwgU3RyaW5nIFBMVUdJTl9JRCA9ICJvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbiI7IC8vJE5PTi1OTFMtMSQKKworCS8vIFRoZSBzaGFyZWQgaW5zdGFuY2UKKwlwcml2YXRlIHN0YXRpYyBBY3RpdmF0b3IgcGx1Z2luOworCisJLyoqCisJICogVGhlIGNvbnN0cnVjdG9yCisJICovCisJcHVibGljIEFjdGl2YXRvcigpIHsKKwl9CisKKwkvKgorCSAqIChub24tSmF2YWRvYykKKwkgKgorCSAqIEBzZWUgb3JnLmVjbGlwc2UudWkucGx1Z2luLkFic3RyYWN0VUlQbHVnaW4jc3RhcnQob3JnLm9zZ2kuZnJhbWV3b3JrLkJ1bmRsZUNvbnRleHQpCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgc3RhcnQoQnVuZGxlQ29udGV4dCBjb250ZXh0KSB0aHJvd3MgRXhjZXB0aW9uIHsKKwkJc3VwZXIuc3RhcnQoY29udGV4dCk7CisJCXBsdWdpbiA9IHRoaXM7CisJfQorCisJLyoKKwkgKiAobm9uLUphdmFkb2MpCisJICoKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnVpLnBsdWdpbi5BYnN0cmFjdFVJUGx1Z2luI3N0b3Aob3JnLm9zZ2kuZnJhbWV3b3JrLkJ1bmRsZUNvbnRleHQpCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgc3RvcChCdW5kbGVDb250ZXh0IGNvbnRleHQpIHRocm93cyBFeGNlcHRpb24geworCQlwbHVnaW4gPSBudWxsOworCQlzdXBlci5zdG9wKGNvbnRleHQpOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHNoYXJlZCBpbnN0YW5jZQorCSAqCisJICogQHJldHVybiB0aGUgc2hhcmVkIGluc3RhbmNlCisJICovCisJcHVibGljIHN0YXRpYyBBY3RpdmF0b3IgZ2V0RGVmYXVsdCgpIHsKKwkJcmV0dXJuIHBsdWdpbjsKKwl9CisKK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvdmFsaWRhdGlvbi9WYWxpZGF0aW9uRGVsZWdhdGVDbGllbnRTZWxlY3Rvci5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC92YWxpZGF0aW9uL1ZhbGlkYXRpb25EZWxlZ2F0ZUNsaWVudFNlbGVjdG9yLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTRkNDkzMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvdmFsaWRhdGlvbi9WYWxpZGF0aW9uRGVsZWdhdGVDbGllbnRTZWxlY3Rvci5qYXZhCkBAIC0wLDAgKzEsMzUgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIENFQSBMSVNULgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBEaG91aWIgKENFQSBMSVNUKSBzYWFkaWEuZGhvdWliQGNlYS5mciAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi52YWxpZGF0aW9uLm1vZGVsLklDbGllbnRTZWxlY3RvcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhY2thZ2VJbXBvcnQ7CisKK3B1YmxpYyBjbGFzcyBWYWxpZGF0aW9uRGVsZWdhdGVDbGllbnRTZWxlY3RvciBpbXBsZW1lbnRzIElDbGllbnRTZWxlY3RvciB7CisKKwkvKioKKwkgKiBRdWVyaWVzIHdoZXRoZXIgSSBzZWxlY3QgdGhlIHNwZWNpZmllZCBvYmplY3QsIHdoaWNoIGluZGljYXRlcyB0aGF0IGl0CisJICogYmVsb25ncyB0byBteSBjbGllbnQgY29udGV4dC4KKwkgKgorCSAqIEBwYXJhbSBvYmplY3QKKwkgKiAgICAgICAgICAgIGEgbW9kZWwgZWxlbWVudCBvZiBzb21lIGtpbmQKKwkgKiBAcmV0dXJuIDxjb2RlPnRydWU8L2NvZGU+IGlmIHRoZSA8Y29kZT5vYmplY3Q8L2NvZGU+IG1hdGNoZXMgbXkgY2xpZW50CisJICogICAgICAgICBjb250ZXh0OyA8Y29kZT5mYWxzZTwvY29kZT4sIG90aGVyd2lzZQorCSAqLworCXB1YmxpYyBib29sZWFuIHNlbGVjdHMoT2JqZWN0IG9iamVjdCkgeworCQlpZiAob2JqZWN0IGluc3RhbmNlb2YgUGFja2FnZUltcG9ydCkgeworCQkJLy8gcmV0dXJuIGZhbHNlOworCQl9CisJCXJldHVybiAob2JqZWN0IGluc3RhbmNlb2YgRWxlbWVudCk7CisJfQorfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC92YWxpZGF0aW9uL2NvbnN0cmFpbnRzL0NvbnN0cmFpbnRzVXRpbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC92YWxpZGF0aW9uL2NvbnN0cmFpbnRzL0NvbnN0cmFpbnRzVXRpbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjYxZDQ1ZjcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL3ZhbGlkYXRpb24vY29uc3RyYWludHMvQ29uc3RyYWludHNVdGlsLmphdmEKQEAgLTAsMCArMSwyOCBAQAorcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi5jb25zdHJhaW50czsKKworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5FbGVtZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLk1vZGVsOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUHJvZmlsZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC51dGlsLlVNTFV0aWw7CisKK3B1YmxpYyBjbGFzcyBDb25zdHJhaW50c1V0aWwgeworCXB1YmxpYyBzdGF0aWMgQm9vbGVhbiB2ZXJpZnlSb2JvdE1MQXBwbGllZChFbGVtZW50IGVsdCkgeworCQlCb29sZWFuIGlzUm9ib3RtbE1vZGVsID0gZmFsc2U7CisJCU1vZGVsIG1vZGVsID0gZWx0LmdldE1vZGVsKCk7CisJCWlmICgobW9kZWwgIT0gbnVsbCkgJiYgKG1vZGVsIGluc3RhbmNlb2YgUGFja2FnZSkpIHsKKworCQkJUHJvZmlsZSByb2JvdG1sID0gVU1MVXRpbC5nZXRQcm9maWxlKFJvYm90TUxQYWNrYWdlLmVJTlNUQU5DRSwgbW9kZWwpOworCisJCQlpZiAoKChQYWNrYWdlKSBtb2RlbCkuaXNQcm9maWxlQXBwbGllZChyb2JvdG1sKSkgeworCQkJCWlzUm9ib3RtbE1vZGVsID0gdHJ1ZTsKKwkJCX0KKworCisKKwkJfQorCQlyZXR1cm4gaXNSb2JvdG1sTW9kZWw7CisJfQorCit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL3ZhbGlkYXRpb24vY29uc3RyYWludHMvRGV0ZWN0UmVjdXJzaXZpdHkuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvdmFsaWRhdGlvbi9jb25zdHJhaW50cy9EZXRlY3RSZWN1cnNpdml0eS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNiM2Q0MjIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL3ZhbGlkYXRpb24vY29uc3RyYWludHMvRGV0ZWN0UmVjdXJzaXZpdHkuamF2YQpAQCAtMCwwICsxLDUxIEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBDRUEgTElTVC4KKyAqCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBTYWFkaWEgRGhvdWliIChDRUEgTElTVCkgc2FhZGlhLmRob3VpYkBjZWEuZnIgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24uY29uc3RyYWludHM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWUuSVN0YXR1czsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYudmFsaWRhdGlvbi5BYnN0cmFjdE1vZGVsQ29uc3RyYWludDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYudmFsaWRhdGlvbi5JVmFsaWRhdGlvbkNvbnRleHQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk7CisKKy8vIFRPRE86IEF1dG8tZ2VuZXJhdGVkIEphdmFkb2MKKy8qKgorICogVGhlIENsYXNzIERldGVjdFJlY3Vyc2l2aXR5IHBlcm1pdHMgdG8gZGV0ZWN0IGlmIGEgcHJvcGVydHkgaXMgdHlwZWQgYnkgdGhlIHNhbWUgc3lzdGVtIGluIHdoaWNoIGl0IGlzIGNvbnRhaW5lZAorICovCitwdWJsaWMgY2xhc3MgRGV0ZWN0UmVjdXJzaXZpdHkgZXh0ZW5kcyBBYnN0cmFjdE1vZGVsQ29uc3RyYWludCB7CisKKwkvKgorCSAqIChub24tSmF2YWRvYykKKwkgKgorCSAqIEBzZWUgb3JnLmVjbGlwc2UuZW1mLnZhbGlkYXRpb24uQWJzdHJhY3RNb2RlbENvbnN0cmFpbnQjdmFsaWRhdGUob3JnLmVjbGlwc2UuZW1mLnZhbGlkYXRpb24uSVZhbGlkYXRpb25Db250ZXh0KQorCSAqLworCisJQE92ZXJyaWRlCisJcHVibGljIElTdGF0dXMgdmFsaWRhdGUoSVZhbGlkYXRpb25Db250ZXh0IGN0eCkgeworCisJCVByb3BlcnR5IHN1YnN5c3RlbSA9IChQcm9wZXJ0eSkgY3R4LmdldFRhcmdldCgpOworCisJCWlmIChDb25zdHJhaW50c1V0aWwudmVyaWZ5Um9ib3RNTEFwcGxpZWQoc3Vic3lzdGVtKSkgeworCQkJLy8gU3lzdGVtLmVyci5wcmludGxuKCJcblxuIFR5cGU6ICIrc3Vic3lzdGVtLmdldFR5cGUoKSArIlxuIE93bmVyOiAiKyBzdWJzeXN0ZW0uZ2V0T3duZXIoKSk7CisJCQlpZiAoc3Vic3lzdGVtLmdldFR5cGUoKSA9PSBudWxsKSB7CisJCQkJcmV0dXJuIGN0eC5jcmVhdGVGYWlsdXJlU3RhdHVzKCJQcm9wZXJ0eSAoc3Vic3lzdGVtIG9yIGF0dHJpYnV0ZSkgbXVzdCBoYXZlIGEgVHlwZSAiICsgc3Vic3lzdGVtLmdldFF1YWxpZmllZE5hbWUoKSk7CisJCQl9IGVsc2UgaWYgKHN1YnN5c3RlbS5nZXRUeXBlKCkuZXF1YWxzKHN1YnN5c3RlbS5nZXRPd25lcigpKSkgeworCQkJCXJldHVybiBjdHguY3JlYXRlRmFpbHVyZVN0YXR1cygiUHJvYmxlbSBvZiByZWN1cnNpdml0eSB0aGUgc3Vic3lzdGVtICIgKyBzdWJzeXN0ZW0uZ2V0UXVhbGlmaWVkTmFtZSgpICsgIiBpcyB0eXBlZCBieSB0aGUgc2FtZSBzeXN0ZW0gdGhhdCBjb250YWlucyBpdCkiKTsKKwkJCX0KKwkJfQorCisJCXJldHVybiBjdHguY3JlYXRlU3VjY2Vzc1N0YXR1cygpOworCX0KKworCisKKworfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC92YWxpZGF0aW9uL2NvbnN0cmFpbnRzL09ubHlPbmVDb25uZWN0aW9uQmV0d2VlblR3b1BvcnRzLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL3ZhbGlkYXRpb24vY29uc3RyYWludHMvT25seU9uZUNvbm5lY3Rpb25CZXR3ZWVuVHdvUG9ydHMuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xYzcyYmRhCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC92YWxpZGF0aW9uL2NvbnN0cmFpbnRzL09ubHlPbmVDb25uZWN0aW9uQmV0d2VlblR3b1BvcnRzLmphdmEKQEAgLTAsMCArMSw2OSBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTMgQ0VBIExJU1QuCisgKgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgU2FhZGlhIERob3VpYiAoQ0VBIExJU1QpIHNhYWRpYS5kaG91aWJAY2VhLmZyIC0gSW5pdGlhbCBBUEkgYW5kIGltcGxlbWVudGF0aW9uCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uLmNvbnN0cmFpbnRzOworCitpbXBvcnQgamF2YS51dGlsLkFycmF5TGlzdDsKK2ltcG9ydCBqYXZhLnV0aWwuTGlzdDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5JU3RhdHVzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi52YWxpZGF0aW9uLkFic3RyYWN0TW9kZWxDb25zdHJhaW50OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi52YWxpZGF0aW9uLklWYWxpZGF0aW9uQ29udGV4dDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0YWJsZUVsZW1lbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvckVuZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5OworCitwdWJsaWMgY2xhc3MgT25seU9uZUNvbm5lY3Rpb25CZXR3ZWVuVHdvUG9ydHMgZXh0ZW5kcyBBYnN0cmFjdE1vZGVsQ29uc3RyYWludCB7CisKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgSVN0YXR1cyB2YWxpZGF0ZShJVmFsaWRhdGlvbkNvbnRleHQgY3R4KSB7CisKKwkJQ29ubmVjdG9yIGVsdCA9IChDb25uZWN0b3IpIGN0eC5nZXRUYXJnZXQoKTsKKwkJaWYgKENvbnN0cmFpbnRzVXRpbC52ZXJpZnlSb2JvdE1MQXBwbGllZChlbHQpKSB7CisJCQlMaXN0PENvbm5lY3RvckVuZD4gY2VuZHMgPSBuZXcgQXJyYXlMaXN0PENvbm5lY3RvckVuZD4oKTsKKwkJCWNlbmRzID0gZWx0LmdldEVuZHMoKTsKKwkJCWlmIChjZW5kcyAhPSBudWxsKSB7Ly8gaWYxCisJCQkJaWYgKGNlbmRzLnNpemUoKSA9PSAyKSB7Ly8gaWYyCisJCQkJCWlmICgoY2VuZHMuZ2V0KDApIGluc3RhbmNlb2YgQ29ubmVjdG9yRW5kKSAmJiAoY2VuZHMuZ2V0KDEpIGluc3RhbmNlb2YgQ29ubmVjdG9yRW5kKSkgey8vIGlmMworCQkJCQkJZmluYWwgQ29ubmVjdGFibGVFbGVtZW50IGNvbm5lY3RvckVuZFJvbGUwID0gY2VuZHMuZ2V0KDApLmdldFJvbGUoKTsKKwkJCQkJCUNvbm5lY3RhYmxlRWxlbWVudCBjb25uZWN0b3JFbmRSb2xlMSA9IGNlbmRzLmdldCgxKS5nZXRSb2xlKCk7CisJCQkJCQlQcm9wZXJ0eSBwYXJ0V2l0aFBvcnQwID0gY2VuZHMuZ2V0KDApLmdldFBhcnRXaXRoUG9ydCgpOworCQkJCQkJUHJvcGVydHkgcGFydFdpdGhQb3J0MSA9IGNlbmRzLmdldCgxKS5nZXRQYXJ0V2l0aFBvcnQoKTsKKwkJCQkJCWlmICgoY29ubmVjdG9yRW5kUm9sZTAgaW5zdGFuY2VvZiBQb3J0KSAmJiAoY29ubmVjdG9yRW5kUm9sZTEgaW5zdGFuY2VvZiBQb3J0KSkgey8vIGlmNAorCQkJCQkJCUxpc3Q8Q29ubmVjdG9yRW5kPiBwb3J0MUVuZHMgPSBuZXcgQXJyYXlMaXN0PENvbm5lY3RvckVuZD4oKTsKKwkJCQkJCQlMaXN0PENvbm5lY3RvckVuZD4gcG9ydDBFbmRzID0gbmV3IEFycmF5TGlzdDxDb25uZWN0b3JFbmQ+KCk7CisJCQkJCQkJcG9ydDBFbmRzID0gY29ubmVjdG9yRW5kUm9sZTAuZ2V0RW5kcygpOworCQkJCQkJCXBvcnQxRW5kcyA9IGNvbm5lY3RvckVuZFJvbGUxLmdldEVuZHMoKTsKKwkJCQkJCQlmb3IgKENvbm5lY3RvckVuZCBlbmQwIDogcG9ydDBFbmRzKSB7CisKKwkJCQkJCQkJZm9yIChDb25uZWN0b3JFbmQgZW5kMSA6IHBvcnQxRW5kcykgeworCisJCQkJCQkJCQlpZiAoKGVuZDAuZUNvbnRhaW5lcigpLmVxdWFscyhlbmQxLmVDb250YWluZXIoKSkpICYmICEoZW5kMC5lQ29udGFpbmVyKCkuZXF1YWxzKGVsdCkpKSB7CisJCQkJCQkJCQkJLy8gdmVyaWZ5IHRoYXQgcGFydHdpdGhQb3J0IG9mIHRoZSBmb3VuZCBjb25uZWN0b3IgZW5kcyBhcmUgdGhlIHNhbWUgdGhhbiB0aG9zZSBvZiB0aGUgY29ubmVjdG9yIHRoYXQgd2lsbCBiZSBjcmVhdGVkCisJCQkJCQkJCQkJaWYgKGVuZDAuZ2V0UGFydFdpdGhQb3J0KCkuZXF1YWxzKHBhcnRXaXRoUG9ydDApICYmIGVuZDEuZ2V0UGFydFdpdGhQb3J0KCkuZXF1YWxzKHBhcnRXaXRoUG9ydDEpKSB7CisJCQkJCQkJCQkJCXJldHVybiBjdHguY3JlYXRlRmFpbHVyZVN0YXR1cygiQ29ubmVjdGlvbiBtdXN0IGJlIHNldCBiZXR3ZWVuIHBvcnRzIHRoYXQgYXJlIG5vdCBhbHJlYWR5IGNvbm5lY3RlZC4gVGhlcmUgaXMgYWxyZWFkeSBhIGNvbm5lY3RvciBuYW1lZCA6ICIgKyAoKENvbm5lY3RvcikgZW5kMC5lQ29udGFpbmVyKCkpLmdldFF1YWxpZmllZE5hbWUoKSk7CisJCQkJCQkJCQkJfQorCisKKwkJCQkJCQkJCX0KKwkJCQkJCQkJfQorCQkJCQkJCX0KKwkJCQkJCX0KKwkJCQkJfQorCQkJCX0KKwkJCX0KKwkJfQorCQlyZXR1cm4gY3R4LmNyZWF0ZVN1Y2Nlc3NTdGF0dXMoKTsKKwl9CisKK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvdmFsaWRhdGlvbi9jb25zdHJhaW50cy9Qb3J0SXNDb3JyZWN0bHlUeXBlZC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC92YWxpZGF0aW9uL2NvbnN0cmFpbnRzL1BvcnRJc0NvcnJlY3RseVR5cGVkLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzMwOTYwOQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvdmFsaWRhdGlvbi9jb25zdHJhaW50cy9Qb3J0SXNDb3JyZWN0bHlUeXBlZC5qYXZhCkBAIC0wLDAgKzEsNTUgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIENFQSBMSVNULgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBEaG91aWIgKENFQSBMSVNUKSBzYWFkaWEuZGhvdWliQGNlYS5mciAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi5jb25zdHJhaW50czsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5JU3RhdHVzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi52YWxpZGF0aW9uLkFic3RyYWN0TW9kZWxDb25zdHJhaW50OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi52YWxpZGF0aW9uLklWYWxpZGF0aW9uQ29udGV4dDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGF0YUZsb3dQb3J0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlUG9ydDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5EYXRhVHlwZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5JbnRlcmZhY2U7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC51dGlsLlVNTFV0aWw7CisKK3B1YmxpYyBjbGFzcyBQb3J0SXNDb3JyZWN0bHlUeXBlZCBleHRlbmRzIEFic3RyYWN0TW9kZWxDb25zdHJhaW50IHsKKworCisKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgSVN0YXR1cyB2YWxpZGF0ZShJVmFsaWRhdGlvbkNvbnRleHQgY3R4KSB7CisJCVBvcnQgZWx0ID0gKFBvcnQpIGN0eC5nZXRUYXJnZXQoKTsKKwkJaWYgKENvbnN0cmFpbnRzVXRpbC52ZXJpZnlSb2JvdE1MQXBwbGllZChlbHQpKSB7CisJCQkvLyAxLiB2ZXJpZnkgaWYgdGhlIHBvcnQgaXMgdHlwZWQKKwkJCWlmIChlbHQuZ2V0VHlwZSgpID09IG51bGwpIHsKKwkJCQlyZXR1cm4gY3R4LmNyZWF0ZUZhaWx1cmVTdGF0dXMoIlBvcnQgc2hvdWxkIGhhdmUgYSB0eXBlICgiICsgZWx0LmdldFF1YWxpZmllZE5hbWUoKSArICIpIik7CisJCQl9IGVsc2Ugey8vIDIuIHZlcmlmeSBpZiB0aGUgcG9ydCBpcyBjb3JyZWN0bHkgdHlwZWQKKwkJCQlTZXJ2aWNlUG9ydCBzZXJ2aWNlcG9ydCA9IFVNTFV0aWwuZ2V0U3RlcmVvdHlwZUFwcGxpY2F0aW9uKGVsdCwgU2VydmljZVBvcnQuY2xhc3MpOworCQkJCWlmIChzZXJ2aWNlcG9ydCAhPSBudWxsKSB7CisJCQkJCWlmICghKGVsdC5nZXRUeXBlKCkgaW5zdGFuY2VvZiBJbnRlcmZhY2UpKSB7CisKKwkJCQkJCXJldHVybiBjdHguY3JlYXRlRmFpbHVyZVN0YXR1cygiUG9ydCBzaG91bGQgYmUgdHlwZWQgYnkgYW4gSW50ZXJmYWNlICgiICsgZWx0LmdldFF1YWxpZmllZE5hbWUoKSArICIpIik7CisJCQkJCX0KKwkJCQl9IGVsc2UgeworCQkJCQlEYXRhRmxvd1BvcnQgZmxvd3BvcnQgPSBVTUxVdGlsLmdldFN0ZXJlb3R5cGVBcHBsaWNhdGlvbihlbHQsIERhdGFGbG93UG9ydC5jbGFzcyk7CisJCQkJCWlmIChmbG93cG9ydCAhPSBudWxsKSB7CisJCQkJCQlpZiAoIShlbHQuZ2V0VHlwZSgpIGluc3RhbmNlb2YgRGF0YVR5cGUpKSB7CisJCQkJCQkJcmV0dXJuIGN0eC5jcmVhdGVGYWlsdXJlU3RhdHVzKCJQb3J0IHNob3VsZCBiZSB0eXBlZCBieSBhIERhdGFUeXBlICgiICsgZWx0LmdldFF1YWxpZmllZE5hbWUoKSArICIpIik7CisJCQkJCQl9CisJCQkJCX0KKwkJCQl9CisJCQl9CisJCX0KKwkJcmV0dXJuIGN0eC5jcmVhdGVTdWNjZXNzU3RhdHVzKCk7CisKKwl9Cit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL3ZhbGlkYXRpb24vY29uc3RyYWludHMvUG9ydHNBcmVDb3JyZWN0bHlDb25uZWN0ZWQuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvdmFsaWRhdGlvbi9jb25zdHJhaW50cy9Qb3J0c0FyZUNvcnJlY3RseUNvbm5lY3RlZC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ2ZmJhOWEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL3ZhbGlkYXRpb24vY29uc3RyYWludHMvUG9ydHNBcmVDb3JyZWN0bHlDb25uZWN0ZWQuamF2YQpAQCAtMCwwICsxLDEzMCBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTMgQ0VBIExJU1QuCisgKgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscworICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCisgKiB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdAorICogaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKKyAqCisgKiBDb250cmlidXRvcnM6CisgKiAgU2FhZGlhIERob3VpYiAoQ0VBIExJU1QpIHNhYWRpYS5kaG91aWJAY2VhLmZyIC0gSW5pdGlhbCBBUEkgYW5kIGltcGxlbWVudGF0aW9uCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uLmNvbnN0cmFpbnRzOworCitpbXBvcnQgamF2YS51dGlsLkFycmF5TGlzdDsKK2ltcG9ydCBqYXZhLnV0aWwuTGlzdDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5JU3RhdHVzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi52YWxpZGF0aW9uLkFic3RyYWN0TW9kZWxDb25zdHJhaW50OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi52YWxpZGF0aW9uLklWYWxpZGF0aW9uQ29udGV4dDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGF0YUZsb3dQb3J0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlUG9ydDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5Db25uZWN0YWJsZUVsZW1lbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvckVuZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlN0ZXJlb3R5cGU7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwudXRpbC5VTUxVdGlsOworCisvLyBUT0RPOiBBdXRvLWdlbmVyYXRlZCBKYXZhZG9jCisvKioKKyAqIFRoZSBDbGFzcyBQb3J0c0FyZUNvcnJlY3RseUNvbm5lY3RlZC4KKyAqLworcHVibGljIGNsYXNzIFBvcnRzQXJlQ29ycmVjdGx5Q29ubmVjdGVkIGV4dGVuZHMgQWJzdHJhY3RNb2RlbENvbnN0cmFpbnQgeworCisKKworCS8qCisJICogKG5vbi1KYXZhZG9jKQorCSAqCisJICogQHNlZQorCSAqIG9yZy5lY2xpcHNlLmVtZi52YWxpZGF0aW9uLkFic3RyYWN0TW9kZWxDb25zdHJhaW50I3ZhbGlkYXRlKG9yZy5lY2xpcHNlCisJICogLmVtZi52YWxpZGF0aW9uLklWYWxpZGF0aW9uQ29udGV4dCkKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgSVN0YXR1cyB2YWxpZGF0ZShJVmFsaWRhdGlvbkNvbnRleHQgY3R4KSB7CisJCUNvbm5lY3RvciBlbHQgPSAoQ29ubmVjdG9yKSBjdHguZ2V0VGFyZ2V0KCk7CisJCWlmIChDb25zdHJhaW50c1V0aWwudmVyaWZ5Um9ib3RNTEFwcGxpZWQoZWx0KSkgeworCQkJTGlzdDxDb25uZWN0b3JFbmQ+IGNlbmRzID0gbmV3IEFycmF5TGlzdDxDb25uZWN0b3JFbmQ+KCk7CisJCQljZW5kcyA9IGVsdC5nZXRFbmRzKCk7CisJCQkvLyAxLiB2ZXJpZnkgdGhhdCBvbmx5IHBvcnRzIG9mIHRoZSBzYW1lIGtpbmQgYXJlIGNvbm5lY3RlZAorCQkJaWYgKGNlbmRzICE9IG51bGwpIHsvLyBpZjEKKworCQkJCWlmIChjZW5kcy5zaXplKCkgPT0gMikgey8vIGlmMgorCQkJCQlpZiAoKGNlbmRzLmdldCgwKSBpbnN0YW5jZW9mIENvbm5lY3RvckVuZCkgJiYgKGNlbmRzLmdldCgxKSBpbnN0YW5jZW9mIENvbm5lY3RvckVuZCkpIHsvLyBpZjMKKwkJCQkJCS8vIHZlcmlmeSB0aGF0IHRoZSBjb25uZWN0aW9uIGlzIGJldHdlZW4gdHdvIHBvcnRzIG9mIHR3bworCQkJCQkJLy8gc3Vic3lzdGVtcworCisJCQkJCQlDb25uZWN0YWJsZUVsZW1lbnQgY29ubmVjdG9yRW5kUm9sZTAgPSBjZW5kcy5nZXQoMCkuZ2V0Um9sZSgpOworCQkJCQkJQ29ubmVjdGFibGVFbGVtZW50IGNvbm5lY3RvckVuZFJvbGUxID0gY2VuZHMuZ2V0KDEpLmdldFJvbGUoKTsKKworCisJCQkJCQlpZiAoKGNvbm5lY3RvckVuZFJvbGUwIGluc3RhbmNlb2YgUG9ydCkgJiYgKGNvbm5lY3RvckVuZFJvbGUxIGluc3RhbmNlb2YgUG9ydCkpIHsvLyBpZjQKKwkJCQkJCQkvLyB2ZXJpZnkgdGhhdCB0aGUgY29ubmVjdGlvbiBpcyBiZXR3ZWVuIHR3byBwb3J0cyBvZgorCQkJCQkJCS8vIHR3byBzdWJzeXN0ZW1zIG9mIHRoZSBzYW1lIGNvbnRhaW5pbmcgc3lzdGVtCisKKwkJCQkJCQlpZiAoIShjb25uZWN0b3JFbmRSb2xlMC5nZXRBcHBsaWVkU3RlcmVvdHlwZXMoKS5pc0VtcHR5KCkpICYmICEoY29ubmVjdG9yRW5kUm9sZTEuZ2V0QXBwbGllZFN0ZXJlb3R5cGVzKCkuaXNFbXB0eSgpKSkgey8vIGlmNQorCQkJCQkJCQkvLyB2ZXJpZnkgaWYgdGhlIGFwcGxpZWQgc3RlcmVvdHlwZSBvbiB0aGUgcG9ydHMgaXMKKwkJCQkJCQkJLy8gdGhlIHNhbWUKKwkJCQkJCQkJTGlzdDxTdGVyZW90eXBlPiBzdGVyZXR5cGVzUG9ydDAgPSBuZXcgQXJyYXlMaXN0PFN0ZXJlb3R5cGU+KCk7CisJCQkJCQkJCXN0ZXJldHlwZXNQb3J0MCA9IGNvbm5lY3RvckVuZFJvbGUwLmdldEFwcGxpZWRTdGVyZW90eXBlcygpOworCQkJCQkJCQlMaXN0PFN0ZXJlb3R5cGU+IHN0ZXJldHlwZXNQb3J0MSA9IG5ldyBBcnJheUxpc3Q8U3RlcmVvdHlwZT4oKTsKKwkJCQkJCQkJc3RlcmV0eXBlc1BvcnQxID0gY29ubmVjdG9yRW5kUm9sZTEuZ2V0QXBwbGllZFN0ZXJlb3R5cGVzKCk7CisKKwkJCQkJCQkJaWYgKHN0ZXJldHlwZXNQb3J0MC5nZXQoMCkuZ2V0TmFtZSgpLmVxdWFscyhzdGVyZXR5cGVzUG9ydDEuZ2V0KDApLmdldE5hbWUoKSkpIHsvLyBpZjgKKwkJCQkJCQkJCS8vIHZlcmlmeSB0aGF0IGNvbm5lY3Rpb25zIGFyZSBzZXQgYmV0d2VlbiBwb3J0cworCQkJCQkJCQkJLy8gb2YgdGhlIHNhbWUgdHlwZQorCQkJCQkJCQkJaWYgKCEoY29ubmVjdG9yRW5kUm9sZTAuZ2V0VHlwZSgpLmVxdWFscyhjb25uZWN0b3JFbmRSb2xlMS5nZXRUeXBlKCkpKSkgeworCQkJCQkJCQkJCXJldHVybiBjdHguY3JlYXRlRmFpbHVyZVN0YXR1cygiQ29ubmVjdGlvbiBtdXN0IGJlIHNldCBiZXR3ZWVuIHBvcnRzIHRoYXQgaGF2ZSB0aGUgc2FtZSB0eXBlICgiICsgZWx0LmdldFF1YWxpZmllZE5hbWUoKSArICIpIik7CisJCQkJCQkJCQl9CisJCQkJCQkJCQkvLyBoZXJlIEkgaGF2ZSB0byBjaGVjayB0aGF0IHRoZSBjb25uZWN0aW9uIGlzCisJCQkJCQkJCQkvLyBiZXR3ZWVuIHBvcnRzIG9mIHN1YiBzeXN0ZW1zIGFuZCBub3QgYmV0d2VlbgorCQkJCQkJCQkJLy8gYSBwb3J0IG9mIHRoZSBjb250YWluZXIgc3lzdGVtIGFuZCBhCisJCQkJCQkJCQkvLyBzdWJzeXN0ZW0gcG9ydCdzLgorCQkJCQkJCQkJQm9vbGVhbiBhcmVTdWJzeXN0ZW1zID0gdHJ1ZTsKKworCQkJCQkJCQkJaWYgKChlbHQuZ2V0T3duZXIoKSA9PSBjb25uZWN0b3JFbmRSb2xlMC5nZXRPd25lcigpKSB8fCAoZWx0LmdldE93bmVyKCkgPT0gY29ubmVjdG9yRW5kUm9sZTEuZ2V0T3duZXIoKSkpIHsKKwkJCQkJCQkJCQlhcmVTdWJzeXN0ZW1zID0gZmFsc2U7CisJCQkJCQkJCQl9CisKKwkJCQkJCQkJCS8vIHZlcmlmeSBpZiBjb25uZWN0aW9ucyBhcmUgc2V0IGJldHdlZW4gaW4gYW5kCisJCQkJCQkJCQkvLyBvdXQgRGF0YUZsb3dQb3J0cyBvciBwcm92aWRlZCBhbmQgcmVxdWlyZWQKKwkJCQkJCQkJCS8vIFNlcnZpY2VQb3J0cworCQkJCQkJCQkJRGF0YUZsb3dQb3J0IGZsb3dwb3J0MCA9IFVNTFV0aWwuZ2V0U3RlcmVvdHlwZUFwcGxpY2F0aW9uKGNvbm5lY3RvckVuZFJvbGUwLCBEYXRhRmxvd1BvcnQuY2xhc3MpOworCQkJCQkJCQkJRGF0YUZsb3dQb3J0IGZsb3dwb3J0MSA9IFVNTFV0aWwuZ2V0U3RlcmVvdHlwZUFwcGxpY2F0aW9uKGNvbm5lY3RvckVuZFJvbGUxLCBEYXRhRmxvd1BvcnQuY2xhc3MpOworCisJCQkJCQkJCQlpZiAoZmxvd3BvcnQwICE9IG51bGwgJiYgZmxvd3BvcnQxICE9IG51bGwpIHsKKwkJCQkJCQkJCQlpZiAoKGZsb3dwb3J0MC5nZXREaXJlY3Rpb24oKS5nZXRWYWx1ZSgpID09IGZsb3dwb3J0MS5nZXREaXJlY3Rpb24oKS5nZXRWYWx1ZSgpKSAmJiBhcmVTdWJzeXN0ZW1zKSB7CisJCQkJCQkJCQkJCXJldHVybiBjdHguY3JlYXRlRmFpbHVyZVN0YXR1cygiQ29ubmVjdGlvbiBtdXN0IGJlIHNldCBiZXR3ZWVuIEZsb3cgcG9ydHMgdGhhdCBoYXZlIG9wcG9zaXRlIGRpcmVjdGlvbiAoIiArIGVsdC5nZXRRdWFsaWZpZWROYW1lKCkgKyAiKSIpOworCQkJCQkJCQkJCX0gZWxzZSBpZiAoKGZsb3dwb3J0MC5nZXREaXJlY3Rpb24oKS5nZXRWYWx1ZSgpICE9IGZsb3dwb3J0MS5nZXREaXJlY3Rpb24oKS5nZXRWYWx1ZSgpKSAmJiAhYXJlU3Vic3lzdGVtcykgeworCQkJCQkJCQkJCQlyZXR1cm4gY3R4LmNyZWF0ZUZhaWx1cmVTdGF0dXMoIkNvbm5lY3Rpb24gbXVzdCBiZSBzZXQgYmV0d2VlbiBGbG93IHBvcnRzIHRoYXQgaGF2ZSB0aGUgc2FtZSBkaXJlY3Rpb24gKCIgKyBlbHQuZ2V0UXVhbGlmaWVkTmFtZSgpICsgIikiKTsKKwkJCQkJCQkJCQl9CisJCQkJCQkJCQl9CisKKwkJCQkJCQkJCVNlcnZpY2VQb3J0IHNlcnZpY2Vwb3J0MCA9IFVNTFV0aWwuZ2V0U3RlcmVvdHlwZUFwcGxpY2F0aW9uKGNvbm5lY3RvckVuZFJvbGUwLCBTZXJ2aWNlUG9ydC5jbGFzcyk7CisKKwkJCQkJCQkJCVNlcnZpY2VQb3J0IHNlcnZpY2Vwb3J0MSA9IFVNTFV0aWwuZ2V0U3RlcmVvdHlwZUFwcGxpY2F0aW9uKGNvbm5lY3RvckVuZFJvbGUxLCBTZXJ2aWNlUG9ydC5jbGFzcyk7CisJCQkJCQkJCQlpZiAoc2VydmljZXBvcnQwICE9IG51bGwgJiYgc2VydmljZXBvcnQxICE9IG51bGwpIHsKKwkJCQkJCQkJCQlpZiAoKHNlcnZpY2Vwb3J0MC5nZXRLaW5kKCkuZ2V0VmFsdWUoKSA9PSBzZXJ2aWNlcG9ydDEuZ2V0S2luZCgpLmdldFZhbHVlKCkpICYmIGFyZVN1YnN5c3RlbXMpIHsKKwkJCQkJCQkJCQkJcmV0dXJuIGN0eC5jcmVhdGVGYWlsdXJlU3RhdHVzKCJDb25uZWN0aW9uIG11c3QgYmUgc2V0IGJldHdlZW4gU2VydmljZSBwb3J0cyB0aGF0IGhhdmUgb3Bwb3NpdGUgZGlyZWN0aW9uICgiICsgZWx0LmdldFF1YWxpZmllZE5hbWUoKSArICIpIik7CisJCQkJCQkJCQkJfSBlbHNlIGlmICgoc2VydmljZXBvcnQwLmdldEtpbmQoKS5nZXRWYWx1ZSgpICE9IHNlcnZpY2Vwb3J0MS5nZXRLaW5kKCkuZ2V0VmFsdWUoKSkgJiYgIWFyZVN1YnN5c3RlbXMpIHsKKwkJCQkJCQkJCQkJcmV0dXJuIGN0eC5jcmVhdGVGYWlsdXJlU3RhdHVzKCJDb25uZWN0aW9uIG11c3QgYmUgc2V0IGJldHdlZW4gU2VydmljZSBwb3J0cyB0aGF0IGhhdmUgdGhlIHNhbWUgZGlyZWN0aW9uICgiICsgZWx0LmdldFF1YWxpZmllZE5hbWUoKSArICIpIik7CisJCQkJCQkJCQkJfQorCQkJCQkJCQkJfQorCQkJCQkJCQkJcmV0dXJuIGN0eC5jcmVhdGVTdWNjZXNzU3RhdHVzKCk7CisJCQkJCQkJCX0vLyBlbmRpZjgKKwkJCQkJCQkJZWxzZSB7CisJCQkJCQkJCQlyZXR1cm4gY3R4LmNyZWF0ZUZhaWx1cmVTdGF0dXMoIkNvbm5lY3Rpb24gbXVzdCBiZSBzZXQgYmV0d2VlbiBwb3J0cyBvZiBzYW1lIGtpbmQgKCIgKyBlbHQuZ2V0UXVhbGlmaWVkTmFtZSgpICsgIikiKTsKKwkJCQkJCQkJfQorCisJCQkJCQkJfS8vIGVuZGlmNQorCQkJCQkJfS8vIGVuZCBpZjQKKworCQkJCQl9Ly8gZW5kIGlmMworCQkJCX0vLyBlbmQgaWYyCisJCQl9Ly8gZW5kIGlmMQorCQkJCS8vIDIuIHZlcmlmeSB0aGF0IHRoZXJlIGlzIG9ubHkgb25lIGNvbm5lY3Rpb24gYmV0d2VlbiBwb3J0cworCQl9CisJCXJldHVybiBjdHguY3JlYXRlU3VjY2Vzc1N0YXR1cygpOworCX0KK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvdmFsaWRhdGlvbi9jb25zdHJhaW50cy9Qcm9wZXJ0eU5hbWVWc0l0c1R5cGVOYW1lLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL3ZhbGlkYXRpb24vY29uc3RyYWludHMvUHJvcGVydHlOYW1lVnNJdHNUeXBlTmFtZS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmMxYmRhNDQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL3ZhbGlkYXRpb24vY29uc3RyYWludHMvUHJvcGVydHlOYW1lVnNJdHNUeXBlTmFtZS5qYXZhCkBAIC0wLDAgKzEsNjMgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIENFQSBMSVNULgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBEaG91aWIgKENFQSBMSVNUKSBzYWFkaWEuZGhvdWliQGNlYS5mciAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi5jb25zdHJhaW50czsKKworCisKK2ltcG9ydCBvcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWUuSVN0YXR1czsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYudmFsaWRhdGlvbi5BYnN0cmFjdE1vZGVsQ29uc3RyYWludDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYudmFsaWRhdGlvbi5JVmFsaWRhdGlvbkNvbnRleHQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuTmFtZWRFbGVtZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk7CisKK3B1YmxpYyBjbGFzcyBQcm9wZXJ0eU5hbWVWc0l0c1R5cGVOYW1lIGV4dGVuZHMgQWJzdHJhY3RNb2RlbENvbnN0cmFpbnQgeworCisJQE92ZXJyaWRlCisJcHVibGljIElTdGF0dXMgdmFsaWRhdGUoSVZhbGlkYXRpb25Db250ZXh0IGN0eCkgeworCQlQcm9wZXJ0eSBzdWJzeXN0ZW0gPSAoUHJvcGVydHkpIGN0eC5nZXRUYXJnZXQoKTsKKwkJLy8gU3lzdGVtLmVyci5wcmludGxuKCJcblxuIFR5cGU6ICIrc3Vic3lzdGVtLmdldFR5cGUoKSArIlxuIE93bmVyOiAiKyBzdWJzeXN0ZW0uZ2V0T3duZXIoKSk7CisJCWlmIChDb25zdHJhaW50c1V0aWwudmVyaWZ5Um9ib3RNTEFwcGxpZWQoc3Vic3lzdGVtKSkgeworCQkJLy8gMS4gdmVyaWZ5IHRoYXQgYSBwcm9wZXJ0eSBoYXMgYSB0eXBlCisJCQlpZiAoc3Vic3lzdGVtLmdldFR5cGUoKSA9PSBudWxsKSB7CisJCQkJcmV0dXJuIGN0eC5jcmVhdGVGYWlsdXJlU3RhdHVzKCJQcm9wZXJ0eSAoc3Vic3lzdGVtIG9yIGF0dHJpYnV0ZSkgc2hvdWxkIGhhdmUgYSBUeXBlIiArIHN1YnN5c3RlbS5nZXRRdWFsaWZpZWROYW1lKCkpOworCQkJfQorCisJCQkvLyAyLiB2ZXJpZnkgdGhhdCBhIHByb3BlcnR5IGhhcyBhIG5hbWUgZGlmZmVyZW50IGZyb20gIiIKKwkJCVN0cmluZyB0eXBlTmFtZSA9ICgoTmFtZWRFbGVtZW50KSBzdWJzeXN0ZW0uZ2V0VHlwZSgpKS5nZXROYW1lKCk7CisKKwkJCWlmIChzdWJzeXN0ZW0uZ2V0TmFtZSgpLnJlcGxhY2VBbGwoIiAiLCAiIikuY29tcGFyZVRvSWdub3JlQ2FzZSgiIikgPT0gMCkgeworCQkJCWlmIChzdWJzeXN0ZW0gaW5zdGFuY2VvZiBQb3J0KSB7CisJCQkJCXJldHVybiBjdHguY3JlYXRlRmFpbHVyZVN0YXR1cygiUG9ydCAgc2hvdWxkIGhhdmUgYSBuYW1lICIpOworCQkJCX0gZWxzZSB7CisJCQkJCXJldHVybiBjdHguY3JlYXRlRmFpbHVyZVN0YXR1cygiUHJvcGVydHkgKHN1YnN5c3RlbSBvciBhdHRyaWJ1dGUpIHNob3VsZCBoYXZlIGEgbmFtZSAiICsgc3Vic3lzdGVtLmdldFF1YWxpZmllZE5hbWUoKSk7CisJCQkJfQorCQkJfSBlbHNlCisJCQkvLyAzLiB2ZXJpZnkgdGhhdCBhIHByb3BlcnR5IGhhcyBhIG5hbWUgZGlmZmVyZW50IGZyb20gaXRzIHR5cGUgbmFtZQorCQkJaWYgKHN1YnN5c3RlbS5nZXROYW1lKCkuY29tcGFyZVRvSWdub3JlQ2FzZSh0eXBlTmFtZSkgPT0gMCkgeworCQkJCWlmIChzdWJzeXN0ZW0gaW5zdGFuY2VvZiBQb3J0KSB7CisJCQkJCXJldHVybiBjdHguY3JlYXRlRmFpbHVyZVN0YXR1cygiUG9ydCAgc2hvdWxkIGhhdmUgYSBuYW1lIGRpZmZyZW50IGZyb20gaXRzIFR5cGUgbmFtZSIgKyBzdWJzeXN0ZW0uZ2V0UXVhbGlmaWVkTmFtZSgpKTsKKwkJCQl9IGVsc2UgeworCQkJCQlyZXR1cm4gY3R4LmNyZWF0ZUZhaWx1cmVTdGF0dXMoIlByb3BlcnR5IChzdWJzeXN0ZW0gb3IgYXR0cmlidXRlKSBzaG91bGQgaGF2ZSBhIG5hbWUgZGlmZnJlbnQgZnJvbSBpdHMgVHlwZSBuYW1lICIgKyBzdWJzeXN0ZW0uZ2V0UXVhbGlmaWVkTmFtZSgpKTsKKwkJCQl9CisJCQl9CisKKwkJfQorCisKKworCQlyZXR1cm4gY3R4LmNyZWF0ZVN1Y2Nlc3NTdGF0dXMoKTsKKwl9CisKKworCit9CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL3ZhbGlkYXRpb24vY29uc3RyYWludHMvVmVyaWZ5QWxwaGFudW1lcmljTmFtZWRFbGVtZW50LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9yb2JvdG1sL3ZhbGlkYXRpb24vY29uc3RyYWludHMvVmVyaWZ5QWxwaGFudW1lcmljTmFtZWRFbGVtZW50LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWNlNjk1MQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvdmFsaWRhdGlvbi9jb25zdHJhaW50cy9WZXJpZnlBbHBoYW51bWVyaWNOYW1lZEVsZW1lbnQuamF2YQpAQCAtMCwwICsxLDUxIEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIENvcHlyaWdodCAoYykgMjAxMyBDRUEgTElTVC4KKyAqCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCisgKiBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKKyAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CisgKiBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAorICoKKyAqIENvbnRyaWJ1dG9yczoKKyAqICBTYWFkaWEgRGhvdWliIChDRUEgTElTVCkgc2FhZGlhLmRob3VpYkBjZWEuZnIgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24uY29uc3RyYWludHM7CisKK2ltcG9ydCBqYXZhLnV0aWwucmVnZXguTWF0Y2hlcjsKK2ltcG9ydCBqYXZhLnV0aWwucmVnZXguUGF0dGVybjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5JU3RhdHVzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi52YWxpZGF0aW9uLkFic3RyYWN0TW9kZWxDb25zdHJhaW50OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi52YWxpZGF0aW9uLklWYWxpZGF0aW9uQ29udGV4dDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzc2lmaWVyOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLk5hbWVkRWxlbWVudDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5Qcm9wZXJ0eTsKKworcHVibGljIGNsYXNzIFZlcmlmeUFscGhhbnVtZXJpY05hbWVkRWxlbWVudCBleHRlbmRzIEFic3RyYWN0TW9kZWxDb25zdHJhaW50IHsKKworCXB1YmxpYyBzdGF0aWMgUGF0dGVybiBBTFBIQU5VTUVSSUMgPSBQYXR0ZXJuLmNvbXBpbGUoIltBLVphLXpdW0EtWmEtejAtOV9dKiIpOworCisJcHVibGljIGJvb2xlYW4gY2hlY2tBbHBoYU51bWVyaWMoU3RyaW5nIHMpIHsKKwkJaWYgKHMgPT0gbnVsbCkgeworCQkJcmV0dXJuIGZhbHNlOworCQl9IGVsc2UgeworCQkJTWF0Y2hlciBtID0gQUxQSEFOVU1FUklDLm1hdGNoZXIocyk7CisJCQlyZXR1cm4gbS5tYXRjaGVzKCk7CisJCX0KKwl9CisKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgSVN0YXR1cyB2YWxpZGF0ZShJVmFsaWRhdGlvbkNvbnRleHQgY3R4KSB7CisJCS8vIFRPRE8gQXV0by1nZW5lcmF0ZWQgbWV0aG9kIHN0dWIKKwkJTmFtZWRFbGVtZW50IGVsZW1lbnQgPSAoTmFtZWRFbGVtZW50KSBjdHguZ2V0VGFyZ2V0KCk7CisJCWlmIChDb25zdHJhaW50c1V0aWwudmVyaWZ5Um9ib3RNTEFwcGxpZWQoZWxlbWVudCkpIHsKKwkJCS8vIDQuIHZlcmlmeSB0aGF0IGEgcHJvcGVydHkgaGFzIGFuIGFscGhhbnVtZXJpYyBuYW1lIHRoYXQgY2FuIGFsc28gY29udGFpbiB1bmRlcnNjb3JlCisJCQlpZiAoKChlbGVtZW50IGluc3RhbmNlb2YgQ2xhc3NpZmllcikgfHwgKGVsZW1lbnQgaW5zdGFuY2VvZiBQcm9wZXJ0eSkgfHwgKGVsZW1lbnQgaW5zdGFuY2VvZiBEYXRhVHlwZSkpICYmICFjaGVja0FscGhhTnVtZXJpYyhlbGVtZW50LmdldE5hbWUoKSkpIHsKKwkJCQlyZXR1cm4gY3R4LmNyZWF0ZUZhaWx1cmVTdGF0dXMoIkVsZW1lbnQgc2hvdWxkIGhhdmUgYW4gYWxwaGFudW1lcmljIG5hbWUgYmVnaW5uaW5nIGJ5IGEgbGV0dGVyIiArIGVsZW1lbnQuZ2V0UXVhbGlmaWVkTmFtZSgpKTsKKwkJCX0KKwkJfQorCQlyZXR1cm4gY3R4LmNyZWF0ZVN1Y2Nlc3NTdGF0dXMoKTsKKwl9CisKK30KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvdmFsaWRhdGlvbi9oZWxwZXIvUm9ib3RtbFByb2ZpbGVIZWxwZXIuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC52YWxpZGF0aW9uL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3JvYm90bWwvdmFsaWRhdGlvbi9oZWxwZXIvUm9ib3RtbFByb2ZpbGVIZWxwZXIuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMWZjNTZkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb24vc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvcm9ib3RtbC92YWxpZGF0aW9uL2hlbHBlci9Sb2JvdG1sUHJvZmlsZUhlbHBlci5qYXZhCkBAIC0wLDAgKzEsMTcgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogQ29weXJpZ2h0IChjKSAyMDEzIENFQSBMSVNULgorICoKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKKyAqIGFyZSBtYWRlIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgdjEuMAorICogd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKKyAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCisgKgorICogQ29udHJpYnV0b3JzOgorICogIFNhYWRpYSBEaG91aWIgKENFQSBMSVNUKSBzYWFkaWEuZGhvdWliQGNlYS5mciAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudmFsaWRhdGlvbi5oZWxwZXI7CisKK3B1YmxpYyBjbGFzcyBSb2JvdG1sUHJvZmlsZUhlbHBlciB7CisKKworfQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLy5jbGFzc3BhdGggYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvLmNsYXNzcGF0aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43OTgwNDhkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLy5jbGFzc3BhdGgKQEAgLTAsMCArMSw3IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPGNsYXNzcGF0aD4KKwk8Y2xhc3NwYXRoZW50cnkga2luZD0iY29uIiBwYXRoPSJvcmcuZWNsaXBzZS5qZHQubGF1bmNoaW5nLkpSRV9DT05UQUlORVIvb3JnLmVjbGlwc2UuamR0LmludGVybmFsLmRlYnVnLnVpLmxhdW5jaGVyLlN0YW5kYXJkVk1UeXBlL0oyU0UtMS41Ii8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9ImNvbiIgcGF0aD0ib3JnLmVjbGlwc2UucGRlLmNvcmUucmVxdWlyZWRQbHVnaW5zIi8+CisJPGNsYXNzcGF0aGVudHJ5IGtpbmQ9InNyYyIgcGF0aD0ic3JjLyIvPgorCTxjbGFzc3BhdGhlbnRyeSBraW5kPSJvdXRwdXQiIHBhdGg9InRhcmdldC9jbGFzc2VzIi8+Cis8L2NsYXNzcGF0aD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC8ucHJvamVjdCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC8ucHJvamVjdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45YjM3NDA4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLy5wcm9qZWN0CkBAIC0wLDAgKzEsMzQgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8cHJvamVjdERlc2NyaXB0aW9uPgorCTxuYW1lPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbDwvbmFtZT4KKwk8Y29tbWVudD48L2NvbW1lbnQ+CisJPHByb2plY3RzPgorCTwvcHJvamVjdHM+CisJPGJ1aWxkU3BlYz4KKwkJPGJ1aWxkQ29tbWFuZD4KKwkJCTxuYW1lPm9yZy5lY2xpcHNlLmpkdC5jb3JlLmphdmFidWlsZGVyPC9uYW1lPgorCQkJPGFyZ3VtZW50cz4KKwkJCTwvYXJndW1lbnRzPgorCQk8L2J1aWxkQ29tbWFuZD4KKwkJPGJ1aWxkQ29tbWFuZD4KKwkJCTxuYW1lPm9yZy5lY2xpcHNlLnBkZS5NYW5pZmVzdEJ1aWxkZXI8L25hbWU+CisJCQk8YXJndW1lbnRzPgorCQkJPC9hcmd1bWVudHM+CisJCTwvYnVpbGRDb21tYW5kPgorCQk8YnVpbGRDb21tYW5kPgorCQkJPG5hbWU+b3JnLmVjbGlwc2UucGRlLlNjaGVtYUJ1aWxkZXI8L25hbWU+CisJCQk8YXJndW1lbnRzPgorCQkJPC9hcmd1bWVudHM+CisJCTwvYnVpbGRDb21tYW5kPgorCQk8YnVpbGRDb21tYW5kPgorCQkJPG5hbWU+b3JnLmVjbGlwc2UubTJlLmNvcmUubWF2ZW4yQnVpbGRlcjwvbmFtZT4KKwkJCTxhcmd1bWVudHM+CisJCQk8L2FyZ3VtZW50cz4KKwkJPC9idWlsZENvbW1hbmQ+CisJPC9idWlsZFNwZWM+CisJPG5hdHVyZXM+CisJCTxuYXR1cmU+b3JnLmVjbGlwc2UubTJlLmNvcmUubWF2ZW4yTmF0dXJlPC9uYXR1cmU+CisJCTxuYXR1cmU+b3JnLmVjbGlwc2UucGRlLlBsdWdpbk5hdHVyZTwvbmF0dXJlPgorCQk8bmF0dXJlPm9yZy5lY2xpcHNlLmpkdC5jb3JlLmphdmFuYXR1cmU8L25hdHVyZT4KKwk8L25hdHVyZXM+Cis8L3Byb2plY3REZXNjcmlwdGlvbj4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuY29yZS5yZXNvdXJjZXMucHJlZnMgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvLnNldHRpbmdzL29yZy5lY2xpcHNlLmNvcmUucmVzb3VyY2VzLnByZWZzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk5ZjI2YzAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvLnNldHRpbmdzL29yZy5lY2xpcHNlLmNvcmUucmVzb3VyY2VzLnByZWZzCkBAIC0wLDAgKzEsMiBAQAorZWNsaXBzZS5wcmVmZXJlbmNlcy52ZXJzaW9uPTEKK2VuY29kaW5nLzxwcm9qZWN0Pj1VVEYtOApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5qZHQuY29yZS5wcmVmcyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmUzOTAyOQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuamR0LmNvcmUucHJlZnMKQEAgLTAsMCArMSw5NSBAQAorZWNsaXBzZS5wcmVmZXJlbmNlcy52ZXJzaW9uPTEKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmFubm90YXRpb24ubWlzc2luZ05vbk51bGxCeURlZmF1bHRBbm5vdGF0aW9uPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuYW5ub3RhdGlvbi5ub25udWxsPW9yZy5lY2xpcHNlLmpkdC5hbm5vdGF0aW9uLk5vbk51bGwKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmFubm90YXRpb24ubm9ubnVsbGJ5ZGVmYXVsdD1vcmcuZWNsaXBzZS5qZHQuYW5ub3RhdGlvbi5Ob25OdWxsQnlEZWZhdWx0CitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5hbm5vdGF0aW9uLm51bGxhYmxlPW9yZy5lY2xpcHNlLmpkdC5hbm5vdGF0aW9uLk51bGxhYmxlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5hbm5vdGF0aW9uLm51bGxhbmFseXNpcz1kaXNhYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi5pbmxpbmVKc3JCeXRlY29kZT1lbmFibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5jb2RlZ2VuLnRhcmdldFBsYXRmb3JtPTEuNQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29kZWdlbi51bnVzZWRMb2NhbD1wcmVzZXJ2ZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIuY29tcGxpYW5jZT0xLjUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLmxpbmVOdW1iZXI9Z2VuZXJhdGUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLmxvY2FsVmFyaWFibGU9Z2VuZXJhdGUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLmRlYnVnLnNvdXJjZUZpbGU9Z2VuZXJhdGUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uYW5ub3RhdGlvblN1cGVySW50ZXJmYWNlPXdhcm5pbmcKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uYXNzZXJ0SWRlbnRpZmllcj1lcnJvcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5hdXRvYm94aW5nPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5jb21wYXJpbmdJZGVudGljYWw9d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5kZWFkQ29kZT13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmRlcHJlY2F0aW9uPXdhcm5pbmcKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZGVwcmVjYXRpb25JbkRlcHJlY2F0ZWRDb2RlPWRpc2FibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmRlcHJlY2F0aW9uV2hlbk92ZXJyaWRpbmdEZXByZWNhdGVkTWV0aG9kPWRpc2FibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmRpc2NvdXJhZ2VkUmVmZXJlbmNlPXdhcm5pbmcKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZW1wdHlTdGF0ZW1lbnQ9aWdub3JlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmVudW1JZGVudGlmaWVyPWVycm9yCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmV4cGxpY2l0bHlDbG9zZWRBdXRvQ2xvc2VhYmxlPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5mYWxsdGhyb3VnaENhc2U9aWdub3JlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmZhdGFsT3B0aW9uYWxFcnJvcj1kaXNhYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5maWVsZEhpZGluZz1pZ25vcmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uZmluYWxQYXJhbWV0ZXJCb3VuZD13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmZpbmFsbHlCbG9ja05vdENvbXBsZXRpbmdOb3JtYWxseT13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmZvcmJpZGRlblJlZmVyZW5jZT13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmhpZGRlbkNhdGNoQmxvY2s9d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5pbmNsdWRlTnVsbEluZm9Gcm9tQXNzZXJ0cz1kaXNhYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5pbmNvbXBhdGlibGVOb25Jbmhlcml0ZWRJbnRlcmZhY2VNZXRob2Q9d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5pbmNvbXBsZXRlRW51bVN3aXRjaD13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLmluZGlyZWN0U3RhdGljQWNjZXNzPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5sb2NhbFZhcmlhYmxlSGlkaW5nPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5tZXRob2RXaXRoQ29uc3RydWN0b3JOYW1lPXdhcm5pbmcKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ubWlzc2luZ0RlZmF1bHRDYXNlPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5taXNzaW5nRGVwcmVjYXRlZEFubm90YXRpb249aWdub3JlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLm1pc3NpbmdFbnVtQ2FzZURlc3BpdGVEZWZhdWx0PWRpc2FibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLm1pc3NpbmdIYXNoQ29kZU1ldGhvZD1pZ25vcmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ubWlzc2luZ092ZXJyaWRlQW5ub3RhdGlvbj1pZ25vcmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ubWlzc2luZ092ZXJyaWRlQW5ub3RhdGlvbkZvckludGVyZmFjZU1ldGhvZEltcGxlbWVudGF0aW9uPWVuYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ubWlzc2luZ1NlcmlhbFZlcnNpb249d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5taXNzaW5nU3luY2hyb25pemVkT25Jbmhlcml0ZWRNZXRob2Q9aWdub3JlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLm5vRWZmZWN0QXNzaWdubWVudD13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLm5vSW1wbGljaXRTdHJpbmdDb252ZXJzaW9uPXdhcm5pbmcKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ubm9uRXh0ZXJuYWxpemVkU3RyaW5nTGl0ZXJhbD1pZ25vcmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ubnVsbEFubm90YXRpb25JbmZlcmVuY2VDb25mbGljdD1lcnJvcgorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5udWxsUmVmZXJlbmNlPXdhcm5pbmcKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ubnVsbFNwZWNWaW9sYXRpb249ZXJyb3IKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ubnVsbFVuY2hlY2tlZENvbnZlcnNpb249d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5vdmVycmlkaW5nUGFja2FnZURlZmF1bHRNZXRob2Q9d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5wYXJhbWV0ZXJBc3NpZ25tZW50PWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5wb3NzaWJsZUFjY2lkZW50YWxCb29sZWFuQXNzaWdubWVudD1pZ25vcmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucG90ZW50aWFsTnVsbFJlZmVyZW5jZT1pZ25vcmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucG90ZW50aWFsbHlVbmNsb3NlZENsb3NlYWJsZT1pZ25vcmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmF3VHlwZVJlZmVyZW5jZT13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnJlZHVuZGFudE51bGxBbm5vdGF0aW9uPXdhcm5pbmcKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVkdW5kYW50TnVsbENoZWNrPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZWR1bmRhbnRTcGVjaWZpY2F0aW9uT2ZUeXBlQXJndW1lbnRzPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5yZWR1bmRhbnRTdXBlcmludGVyZmFjZT1pZ25vcmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0TWV0aG9kQ2FuQmVQb3RlbnRpYWxseVN0YXRpYz1pZ25vcmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0ucmVwb3J0TWV0aG9kQ2FuQmVTdGF0aWM9aWdub3JlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnNwZWNpYWxQYXJhbWV0ZXJIaWRpbmdGaWVsZD1kaXNhYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS5zdGF0aWNBY2Nlc3NSZWNlaXZlcj13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnN1cHByZXNzT3B0aW9uYWxFcnJvcnM9ZGlzYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0uc3VwcHJlc3NXYXJuaW5ncz1lbmFibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnN5bnRoZXRpY0FjY2Vzc0VtdWxhdGlvbj1pZ25vcmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udHlwZVBhcmFtZXRlckhpZGluZz13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVuYXZvaWRhYmxlR2VuZXJpY1R5cGVQcm9ibGVtcz1lbmFibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVuY2hlY2tlZFR5cGVPcGVyYXRpb249d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bmNsb3NlZENsb3NlYWJsZT13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVuZG9jdW1lbnRlZEVtcHR5QmxvY2s9aWdub3JlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVuaGFuZGxlZFdhcm5pbmdUb2tlbj13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVubmVjZXNzYXJ5RWxzZT1pZ25vcmUKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW5uZWNlc3NhcnlUeXBlQ2hlY2s9aWdub3JlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVucXVhbGlmaWVkRmllbGRBY2Nlc3M9aWdub3JlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZERlY2xhcmVkVGhyb3duRXhjZXB0aW9uPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWREZWNsYXJlZFRocm93bkV4Y2VwdGlvbkV4ZW1wdEV4Y2VwdGlvbkFuZFRocm93YWJsZT1lbmFibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZERlY2xhcmVkVGhyb3duRXhjZXB0aW9uSW5jbHVkZURvY0NvbW1lbnRSZWZlcmVuY2U9ZW5hYmxlZAorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWREZWNsYXJlZFRocm93bkV4Y2VwdGlvbldoZW5PdmVycmlkaW5nPWRpc2FibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZEltcG9ydD13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZExhYmVsPXdhcm5pbmcKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkTG9jYWw9d2FybmluZworb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRPYmplY3RBbGxvY2F0aW9uPWlnbm9yZQorb3JnLmVjbGlwc2UuamR0LmNvcmUuY29tcGlsZXIucHJvYmxlbS51bnVzZWRQYXJhbWV0ZXI9aWdub3JlCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZFBhcmFtZXRlckluY2x1ZGVEb2NDb21tZW50UmVmZXJlbmNlPWVuYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkUGFyYW1ldGVyV2hlbkltcGxlbWVudGluZ0Fic3RyYWN0PWRpc2FibGVkCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZFBhcmFtZXRlcldoZW5PdmVycmlkaW5nQ29uY3JldGU9ZGlzYWJsZWQKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnByb2JsZW0udW51c2VkUHJpdmF0ZU1lbWJlcj13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnVudXNlZFdhcm5pbmdUb2tlbj13YXJuaW5nCitvcmcuZWNsaXBzZS5qZHQuY29yZS5jb21waWxlci5wcm9ibGVtLnZhcmFyZ3NBcmd1bWVudE5lZWRDYXN0PXdhcm5pbmcKK29yZy5lY2xpcHNlLmpkdC5jb3JlLmNvbXBpbGVyLnNvdXJjZT0xLjUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UubTJlLmNvcmUucHJlZnMgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvLnNldHRpbmdzL29yZy5lY2xpcHNlLm0yZS5jb3JlLnByZWZzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY4OTdhN2YKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvLnNldHRpbmdzL29yZy5lY2xpcHNlLm0yZS5jb3JlLnByZWZzCkBAIC0wLDAgKzEsNCBAQAorYWN0aXZlUHJvZmlsZXM9CitlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQorcmVzb2x2ZVdvcmtzcGFjZVByb2plY3RzPXRydWUKK3ZlcnNpb249MQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL01FVEEtSU5GL01BTklGRVNULk1GIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL01FVEEtSU5GL01BTklGRVNULk1GCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFhOTVlNDQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvTUVUQS1JTkYvTUFOSUZFU1QuTUYKQEAgLTAsMCArMSw0MyBAQAorTWFuaWZlc3QtVmVyc2lvbjogMS4wCitFeHBvcnQtUGFja2FnZTogb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLAorIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLAorIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLAorIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLAorIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwsCisgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMudXRpbCwKKyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMsCisgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwsCisgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLnV0aWwsCisgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcywKKyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwsCisgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy51dGlsLAorIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLAorIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwsCisgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMudXRpbCwKKyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcywKKyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5pbXBsLAorIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLnV0aWwsCisgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMsCisgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbCwKKyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy51dGlsLAorIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLAorIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwsCisgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMudXRpbCwKKyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcywKKyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLAorIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLnV0aWwKK1JlcXVpcmUtQnVuZGxlOiBvcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5kaWFncmFtLmNvbW1vbjtidW5kbGUtdmVyc2lvbj0iMS4yLjAiLAorIG9yZy5lY2xpcHNlLmNvcmUucnVudGltZSwKKyBvcmcuZWNsaXBzZS5lbWYuZWNvcmU7dmlzaWJpbGl0eTo9cmVleHBvcnQsCisgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnhtaTt2aXNpYmlsaXR5Oj1yZWV4cG9ydCwKKyBvcmcuZWNsaXBzZS51bWwyLnR5cGVzO3Zpc2liaWxpdHk6PXJlZXhwb3J0LAorIG9yZy5lY2xpcHNlLnVtbDIudW1sO3Zpc2liaWxpdHk6PXJlZXhwb3J0CitCdW5kbGUtVmVuZG9yOiAlQnVuZGxlLVZlbmRvcgorQnVuZGxlLUFjdGl2YXRpb25Qb2xpY3k6IGxhenkKK0J1bmRsZS1DbGFzc1BhdGg6IC4KK0J1bmRsZS1WZXJzaW9uOiAxLjIuMC5xdWFsaWZpZXIKK0J1bmRsZS1Mb2NhbGl6YXRpb246IHBsdWdpbgorQnVuZGxlLU5hbWU6ICVCdW5kbGUtTmFtZQorQnVuZGxlLU1hbmlmZXN0VmVyc2lvbjogMgorQnVuZGxlLVN5bWJvbGljTmFtZTogb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sO3NpbmdsZXRvbjo9dHJ1ZQorQnVuZGxlLVJlcXVpcmVkRXhlY3V0aW9uRW52aXJvbm1lbnQ6IEoyU0UtMS41CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvYWJvdXQuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9hYm91dC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQzNWQ1YWUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvYWJvdXQuaHRtbApAQCAtMCwwICsxLDI4IEBACis8IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBTdHJpY3QvL0VOIgorICAgICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS1zdHJpY3QuZHRkIj4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKzxoZWFkPgorPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMSIvPgorPHRpdGxlPkFib3V0PC90aXRsZT4KKzwvaGVhZD4KKzxib2R5IGxhbmc9IkVOLVVTIj4KKzxoMj5BYm91dCBUaGlzIENvbnRlbnQ8L2gyPgorIAorPHA+SnVuZSA1LCAyMDA3PC9wPgkKKzxoMz5MaWNlbnNlPC9oMz4KKworPHA+VGhlIEVjbGlwc2UgRm91bmRhdGlvbiBtYWtlcyBhdmFpbGFibGUgYWxsIGNvbnRlbnQgaW4gdGhpcyBwbHVnLWluICgmcXVvdDtDb250ZW50JnF1b3Q7KS4gIFVubGVzcyBvdGhlcndpc2UgCitpbmRpY2F0ZWQgYmVsb3csIHRoZSBDb250ZW50IGlzIHByb3ZpZGVkIHRvIHlvdSB1bmRlciB0aGUgdGVybXMgYW5kIGNvbmRpdGlvbnMgb2YgdGhlCitFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMS4wICgmcXVvdDtFUEwmcXVvdDspLiAgQSBjb3B5IG9mIHRoZSBFUEwgaXMgYXZhaWxhYmxlIAorYXQgPGEgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwiPmh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sPC9hPi4KK0ZvciBwdXJwb3NlcyBvZiB0aGUgRVBMLCAmcXVvdDtQcm9ncmFtJnF1b3Q7IHdpbGwgbWVhbiB0aGUgQ29udGVudC48L3A+CisKKzxwPklmIHlvdSBkaWQgbm90IHJlY2VpdmUgdGhpcyBDb250ZW50IGRpcmVjdGx5IGZyb20gdGhlIEVjbGlwc2UgRm91bmRhdGlvbiwgdGhlIENvbnRlbnQgaXMgCitiZWluZyByZWRpc3RyaWJ1dGVkIGJ5IGFub3RoZXIgcGFydHkgKCZxdW90O1JlZGlzdHJpYnV0b3ImcXVvdDspIGFuZCBkaWZmZXJlbnQgdGVybXMgYW5kIGNvbmRpdGlvbnMgbWF5CithcHBseSB0byB5b3VyIHVzZSBvZiBhbnkgb2JqZWN0IGNvZGUgaW4gdGhlIENvbnRlbnQuICBDaGVjayB0aGUgUmVkaXN0cmlidXRvcidzIGxpY2Vuc2UgdGhhdCB3YXMgCitwcm92aWRlZCB3aXRoIHRoZSBDb250ZW50LiAgSWYgbm8gc3VjaCBsaWNlbnNlIGV4aXN0cywgY29udGFjdCB0aGUgUmVkaXN0cmlidXRvci4gIFVubGVzcyBvdGhlcndpc2UKK2luZGljYXRlZCBiZWxvdywgdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIG9mIHRoZSBFUEwgc3RpbGwgYXBwbHkgdG8gYW55IHNvdXJjZSBjb2RlIGluIHRoZSBDb250ZW50CithbmQgc3VjaCBzb3VyY2UgY29kZSBtYXkgYmUgb2J0YWluZWQgYXQgPGEgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy8iPmh0dHA6Ly93d3cuZWNsaXBzZS5vcmc8L2E+LjwvcD4KKworPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2J1aWxkLnByb3BlcnRpZXMgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvYnVpbGQucHJvcGVydGllcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNzllMWU3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2J1aWxkLnByb3BlcnRpZXMKQEAgLTAsMCArMSwxNSBAQAorc291cmNlLi4gPSBzcmMvCitvdXRwdXQuLiA9IGJpbi8KK2Jpbi5pbmNsdWRlcyA9IE1FVEEtSU5GLyxcCisgICAgICAgICAgICAgICAuLFwKKyAgICAgICAgICAgICAgIHBsdWdpbi54bWwsXAorICAgICAgICAgICAgICAgaWNvbnMvLFwKKyAgICAgICAgICAgICAgIG1vZGVsLyxcCisgICAgICAgICAgICAgICBwbHVnaW4ucHJvcGVydGllcyxcCisgICAgICAgICAgICAgICBwYWxldHRlcy8sXAorICAgICAgICAgICAgICAgYnVpbGQucHJvcGVydGllcyxcCisgICAgICAgICAgICAgICBhYm91dC5odG1sLFwKKyAgICAgICAgICAgICAgIHByb3BlcnRpZXMvLFwKKyAgICAgICAgICAgICAgIHN0eWxlLmNzcworc3JjLmluY2x1ZGVzID0gYWJvdXQuaHRtbAorCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2FsbGNsYXNzZXMtZnJhbWUuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvYWxsY2xhc3Nlcy1mcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdkODY1NzQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2FsbGNsYXNzZXMtZnJhbWUuaHRtbApAQCAtMCwwICsxLDMxOCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMzIENFVCAyMDEyIC0tPgorPFRJVExFPgorQWxsIENsYXNzZXMKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9InN0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiPgorPEZPTlQgc2l6ZT0iKzEiIENMQVNTPSJGcmFtZUhlYWRpbmdGb250Ij4KKzxCPkFsbCBDbGFzc2VzPC9CPjwvRk9OVD4KKzxCUj4KKworPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgTk9XUkFQPjxGT05UIENMQVNTPSJGcmFtZUl0ZW1Gb250Ij48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5PC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvQWN0aXZhdG9yLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMiIHRhcmdldD0iY2xhc3NGcmFtZSI+QWN0aXZhdG9yPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdG9yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPkFjdHVhdG9yU3lzdGVtPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FjdHVhdG9yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+QWN0dWF0b3JTeXN0ZW1JbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPkFnZW50PC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+QWdlbnRJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5BbGdvcml0aG08L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+QWxnb3JpdGhtSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPkFsZ29yaXRobUxpYnJhcnk8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkFsZ29yaXRobUxpYnJhcnlJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5CbGVuZGVyTW9yc2U8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+QmxlbmRlck1vcnNlSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CdWlsZGluZy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5CdWlsZGluZzwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CdWlsZGluZ0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkJ1aWxkaW5nSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+Q2FtZXJhU3lzdGVtPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkNhbWVyYVN5c3RlbUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5Db2xsZWN0aW9uPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbGxlY3Rpb25JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5Db2xsZWN0aW9uSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+Q29tcG9zZWREYXRhPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbXBvc2VkRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkNvbXBvc2VkRGF0YUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5DeWNhYlRLPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5DeWNhYlRLSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkRhdGFGbG93RGlyZWN0aW9uS2luZDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+RGF0YUZsb3dQb3J0PC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkRhdGFGbG93UG9ydEltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+RW5naW5lU3lzdGVtPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkVuZ2luZVN5c3RlbUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+RW52aXJvbm1lbnQ8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW52aXJvbm1lbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5FbnZpcm9ubWVudEltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+Rmxvb3I8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRmxvb3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5GbG9vckltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5HUFNTeXN0ZW08L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR1BTU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+R1BTU3lzdGVtSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Hcm91bmQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+R3JvdW5kPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dyb3VuZEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkdyb3VuZEltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSGFyZHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+SGFyZHdhcmU8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSGFyZHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5IYXJkd2FyZUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSHVtYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+SHVtYW48L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSHVtYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5IdW1hbkltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+SW1hZ2VTZW5zb3JTeXN0ZW08L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5JbWFnZVNlbnNvclN5c3RlbUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+TGFuZFN1cmZhY2U8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGFuZFN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5MYW5kU3VyZmFjZUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+TGlkYXJTeXN0ZW08L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5MaWRhclN5c3RlbUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5OYXZfZGF0YXR5cGVzRmFjdG9yeTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+TmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+TmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+T25Qb3J0PC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPk9uUG9ydEltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5QZWRlc3RyaWFuPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BlZGVzdHJpYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5QZWRlc3RyaWFuSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+UGh5c2ljYWxEYXRhPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPlBoeXNpY2FsRGF0YUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+UGh5c2ljYWxPYmplY3Q8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5QaHlzaWNhbE9iamVjdEltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhbmV0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPlBsYW5ldDwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGFuZXRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5QbGFuZXRJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPlBsYXRmb3JtPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+UGxhdGZvcm1JbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+UG9ydDwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+UG9ydEltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5QcmltaXRpdmVEYXRhPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1ByaW1pdGl2ZURhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5QcmltaXRpdmVEYXRhSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5Sb2JvdDwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+Um9ib3RpY01pZGRsZXdhcmU8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5Sb2JvdGljTWlkZGxld2FyZUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1NpbXVsYXRvci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5Sb2JvdGljU2ltdWxhdG9yPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTaW11bGF0b3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5Sb2JvdGljU2ltdWxhdG9ySW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPlJvYm90aWNTeXN0ZW08L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPlJvYm90aWNTeXN0ZW1JbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5Sb2JvdEltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5Sb2JvdEtpbmQ8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPlJvYm90TUxBZGFwdGVyRmFjdG9yeTwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5Sb2JvdE1MRmFjdG9yeTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPlJvYm90TUxGYWN0b3J5SW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5Sb2JvdE1MUGFja2FnZTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MUmVzb3VyY2VGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiIHRhcmdldD0iY2xhc3NGcmFtZSI+Um9ib3RNTFJlc291cmNlRmFjdG9yeUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MUmVzb3VyY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5Sb2JvdE1MUmVzb3VyY2VJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiIHRhcmdldD0iY2xhc3NGcmFtZSI+Um9ib3RNTFN3aXRjaDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxYTUxQcm9jZXNzb3IuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPlJvYm90TUxYTUxQcm9jZXNzb3I8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5PC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yRHJpdmVyLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPlNlbnNvckRyaXZlcjwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JEcml2ZXJJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5TZW5zb3JEcml2ZXJJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5TZW5zb3JTeXN0ZW08L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+U2Vuc29yU3lzdGVtSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPlNlcnZpY2VGbG93S2luZDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5TZXJ2aWNlUG9ydDwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZXJ2aWNlUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPlNlcnZpY2VQb3J0SW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+U2hhZGU8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPlNpbXVsYXRlZFN5c3RlbTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5TaW11bGF0ZWRTeXN0ZW1JbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPlNvZnR3YXJlPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+U29mdHdhcmVJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5TdGFpcnM8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhaXJzSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+U3RhaXJzSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5TdGF0ZTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPlN0YXRlSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+U3RkX2RhdGF0eXBlc0ZhY3Rvcnk8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5TdGRfZGF0YXR5cGVzUGFja2FnZTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPlN1cmZhY2U8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPlN1cmZhY2VJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPlN5bmNocm9uaXphdGlvbktpbmQ8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPlN5c3RlbTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5TeXN0ZW1JbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+VHJhbnNpdGlvbjwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+VHJhbnNpdGlvbkltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+VUdWS2luZDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+VW5pdEtpbmQ8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPldhdGVyU3VyZmFjZTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XYXRlclN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5XYXRlclN1cmZhY2VJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPldoZWVsU3lzdGVtPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+V2hlZWxTeXN0ZW1JbXBsPC9BPgorPEJSPgorPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjJkMjYwMQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwKQEAgLTAsMCArMSwzMTggQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMyBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK0FsbCBDbGFzc2VzCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSJzdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIj4KKzxGT05UIHNpemU9IisxIiBDTEFTUz0iRnJhbWVIZWFkaW5nRm9udCI+Cis8Qj5BbGwgQ2xhc3NlczwvQj48L0ZPTlQ+Cis8QlI+CisKKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIE5PV1JBUD48Rk9OVCBDTEFTUz0iRnJhbWVJdGVtRm9udCI+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+PEk+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3Rvcnk8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwiPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPjxJPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPjxJPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvQWN0aXZhdG9yLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMiPkFjdGl2YXRvcjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEk+QWN0dWF0b3JTeXN0ZW08L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWN0dWF0b3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWN0dWF0b3JTeXN0ZW1JbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48ST5BZ2VudDwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BZ2VudEltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48ST5BbGdvcml0aG08L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFsZ29yaXRobUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEk+QWxnb3JpdGhtTGlicmFyeTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1MaWJyYXJ5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFsZ29yaXRobUxpYnJhcnlJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEk+QmxlbmRlck1vcnNlPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5CbGVuZGVyTW9yc2VJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0J1aWxkaW5nLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48ST5CdWlsZGluZzwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CdWlsZGluZ0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5CdWlsZGluZ0ltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48ST5DYW1lcmFTeXN0ZW08L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkNhbWVyYVN5c3RlbUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEk+Q29sbGVjdGlvbjwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db2xsZWN0aW9uSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkNvbGxlY3Rpb25JbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbXBvc2VkRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEk+Q29tcG9zZWREYXRhPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbXBvc2VkRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Db21wb3NlZERhdGFJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxJPkN5Y2FiVEs8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ3ljYWJUS0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5DeWNhYlRLSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48ST5EYXRhRmxvd1BvcnQ8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRGF0YUZsb3dQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkRhdGFGbG93UG9ydEltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48ST5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3Rvcnk8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwiPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48ST5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+PEk+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEk+RW5naW5lU3lzdGVtPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5FbmdpbmVTeXN0ZW1JbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Vudmlyb25tZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48ST5FbnZpcm9ubWVudDwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbnZpcm9ubWVudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5FbnZpcm9ubWVudEltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxJPkZsb29yPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Zsb29ySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkZsb29ySW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPjxJPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+PEk+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj48ST5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxJPkdQU1N5c3RlbTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HUFNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+R1BTU3lzdGVtSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Hcm91bmQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxJPkdyb3VuZDwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Hcm91bmRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+R3JvdW5kSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IYXJkd2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEk+SGFyZHdhcmU8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSGFyZHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+SGFyZHdhcmVJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48ST5IdW1hbjwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IdW1hbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5IdW1hbkltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxJPkltYWdlU2Vuc29yU3lzdGVtPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0ltYWdlU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkltYWdlU2Vuc29yU3lzdGVtSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEk+TGFuZFN1cmZhY2U8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGFuZFN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TGFuZFN1cmZhY2VJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48ST5MaWRhclN5c3RlbTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MaWRhclN5c3RlbUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48ST5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj48ST5OYXZfZGF0YXR5cGVzRmFjdG9yeTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbCI+TmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+PEk+TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+PEk+TmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiPk5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxJPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEk+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEk+T25Qb3J0PC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5PblBvcnRJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxJPlBlZGVzdHJpYW48L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGVkZXN0cmlhbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QZWRlc3RyaWFuSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxJPlBoeXNpY2FsRGF0YTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbERhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGh5c2ljYWxEYXRhSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEk+UGh5c2ljYWxPYmplY3Q8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGh5c2ljYWxPYmplY3RJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYW5ldC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEk+UGxhbmV0PC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYW5ldEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QbGFuZXRJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48ST5QbGF0Zm9ybTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QbGF0Zm9ybUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEk+UG9ydDwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBvcnRJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxJPlByaW1pdGl2ZURhdGE8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUHJpbWl0aXZlRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QcmltaXRpdmVEYXRhSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEk+Um9ib3Q8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48ST5Sb2JvdGljTWlkZGxld2FyZTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljTWlkZGxld2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljTWlkZGxld2FyZUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxJPlJvYm90aWNTaW11bGF0b3I8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1NpbXVsYXRvckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU2ltdWxhdG9ySW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48ST5Sb2JvdGljU3lzdGVtPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY1N5c3RlbUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdEltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTEFkYXB0ZXJGYWN0b3J5PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48ST5Sb2JvdE1MRmFjdG9yeTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxJPlJvYm90TUxQYWNrYWdlPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEk+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFJlc291cmNlRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MUmVzb3VyY2VGYWN0b3J5SW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxSZXNvdXJjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MUmVzb3VyY2VJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxTd2l0Y2g8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MWE1MUHJvY2Vzc29yLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFhNTFByb2Nlc3NvcjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPjxJPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5PC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj48ST5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj48ST5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEk+U2Vuc29yRHJpdmVyPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvckRyaXZlckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JEcml2ZXJJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEk+U2Vuc29yU3lzdGVtPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JTeXN0ZW1JbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEk+U2VydmljZVBvcnQ8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2VydmljZVBvcnRJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2hhZGU8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48ST5TaW11bGF0ZWRTeXN0ZW08L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2ltdWxhdGVkU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNpbXVsYXRlZFN5c3RlbUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxJPlNvZnR3YXJlPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNvZnR3YXJlSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxJPlN0YWlyczwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGFpcnNJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3RhaXJzSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEk+U3RhdGU8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhdGVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3RhdGVJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+PEk+U3RkX2RhdGF0eXBlc0ZhY3Rvcnk8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPjxJPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPjxJPlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEk+U3VyZmFjZTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN1cmZhY2VJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeW5jaHJvbml6YXRpb25LaW5kPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEk+U3lzdGVtPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TeXN0ZW1JbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxJPlRyYW5zaXRpb248L0k+PC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5UcmFuc2l0aW9uSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VUdWS2luZDwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEk+V2F0ZXJTdXJmYWNlPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1dhdGVyU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5XYXRlclN1cmZhY2VJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48ST5XaGVlbFN5c3RlbTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5XaGVlbFN5c3RlbUltcGw8L0E+Cis8QlI+Cis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2NvbnN0YW50LXZhbHVlcy5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9jb25zdGFudC12YWx1ZXMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yYmQyNmM4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9jb25zdGFudC12YWx1ZXMuaHRtbApAQCAtMCwwICsxLDI5OTYgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK0NvbnN0YW50IEZpZWxkIFZhbHVlcworPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0ic3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkNvbnN0YW50IEZpZWxkIFZhbHVlcyI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0ib3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Im92ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImRlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImhlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iaW5kZXguaHRtbD9jb25zdGFudC12YWx1ZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJjb25zdGFudC12YWx1ZXMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSJhbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgxPgorQ29uc3RhbnQgRmllbGQgVmFsdWVzPC9IMT4KKzwvQ0VOVEVSPgorPEhSIFNJWkU9IjQiIE5PU0hBREU+Cis8Qj5Db250ZW50czwvQj48VUw+Cis8TEk+PEEgSFJFRj0iI29yZy5lY2xpcHNlIj5vcmcuZWNsaXBzZS4qPC9BPgorPC9VTD4KKworPEEgTkFNRT0ib3JnLmVjbGlwc2UiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Rk9OVCBTSVpFPSIrMiI+CitvcmcuZWNsaXBzZS4qPC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIzIj5vcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzIj5BY3RpdmF0b3I8L0E+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1cy5BY3RpdmF0b3IuUExVR0lOX0lEIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9BY3RpdmF0b3IuaHRtbCNQTFVHSU5fSUQiPlBMVUdJTl9JRDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPiJvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMiPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKworPFA+CisKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMyI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmVOQU1FIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5BTUUiPmVOQU1FPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+ImFjdGlvbmxpYl9kYXRhdHlwZXMiPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5lTlNfUFJFRklYIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1BSRUZJWCI+ZU5TX1BSRUZJWDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPiJQcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1VSSSI+ZU5TX1VSSTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPiJodHRwOi8vL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy5lY29yZSI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfSUQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sI0dPQUxfSUQiPkdPQUxfSUQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4wPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX1NUQVRVUyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjR09BTF9TVEFUVVMiPkdPQUxfU1RBVFVTPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfQVJSQVkiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sI0dPQUxfU1RBVFVTX0FSUkFZIj5HT0FMX1NUQVRVU19BUlJBWTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI8L0NPREU+PC9URD4KKzwvVFI+Cis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorCis8UD4KKworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIzIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlPC9BPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfQVJSQVkiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwjRElBR05PU1RJQ19BUlJBWSI+RElBR05PU1RJQ19BUlJBWTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjA8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuRElBR05PU1RJQ19TVEFUVVMiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwjRElBR05PU1RJQ19TVEFUVVMiPkRJQUdOT1NUSUNfU1RBVFVTPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5lTkFNRSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5BTUUiPmVOQU1FPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+ImRpYWdub3N0aWNfZGF0YXR5cGVzIjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5lTlNfUFJFRklYIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTlNfUFJFRklYIj5lTlNfUFJFRklYPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+IlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VOU19VUkkiPmVOU19VUkk8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4iaHR0cDovLy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzLmVjb3JlIjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5LRVlfVkFMVUUiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwjS0VZX1ZBTFVFIj5LRVlfVkFMVUU8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKworPFA+CisKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMyI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuZU5BTUUiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5BTUUiPmVOQU1FPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+Imdlb21ldHJ5X2RhdGF0eXBlcyI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5lTlNfUFJFRklYIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VOU19QUkVGSVgiPmVOU19QUkVGSVg8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4iUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTlNfVVJJIj5lTlNfVVJJPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+Imh0dHA6Ly8vUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMuZWNvcmUiPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9JTlQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNQT0lOVCI+UE9JTlQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4wPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfU1RBTVBFRCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1BPSU5UX1NUQU1QRUQiPlBPSU5UX1NUQU1QRUQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9JTlQzMiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1BPSU5UMzIiPlBPSU5UMzI8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9MWUdPTiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1BPTFlHT04iPlBPTFlHT048L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9MWUdPTl9TVEFNUEVEIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjUE9MWUdPTl9TVEFNUEVEIj5QT0xZR09OX1NUQU1QRUQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT40PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1BPU0UiPlBPU0U8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT44PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9BUlJBWSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1BPU0VfQVJSQVkiPlBPU0VfQVJSQVk8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xNjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfU1RBTVBFRCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1BPU0VfU1RBTVBFRCI+UE9TRV9TVEFNUEVEPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+OTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfV0lUSF9DT1ZBUklBTkNFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjUE9TRV9XSVRIX0NPVkFSSUFOQ0UiPlBPU0VfV0lUSF9DT1ZBUklBTkNFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTM8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX1dJVEhfQ09WQVJJQU5DRV9TVEFNUEVEIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjUE9TRV9XSVRIX0NPVkFSSUFOQ0VfU1RBTVBFRCI+UE9TRV9XSVRIX0NPVkFSSUFOQ0VfU1RBTVBFRDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE1PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRTJfRCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1BPU0UyX0QiPlBPU0UyX0Q8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xNDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlFVQVRFUk5JT04iPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNRVUFURVJOSU9OIj5RVUFURVJOSU9OPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NzwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlFVQVRFUk5JT05fU1RBTVBFRCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1FVQVRFUk5JT05fU1RBTVBFRCI+UVVBVEVSTklPTl9TVEFNUEVEPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTc8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5UUkFOU0ZPUk0iPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNUUkFOU0ZPUk0iPlRSQU5TRk9STTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE4PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1QiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNUV0lTVCI+VFdJU1Q8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xMTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRXSVNUX1NUQU1QRUQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNUV0lTVF9TVEFNUEVEIj5UV0lTVF9TVEFNUEVEPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5UV0lTVF9XSVRIX0NPVkFSSUFOQ0UiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNUV0lTVF9XSVRIX0NPVkFSSUFOQ0UiPlRXSVNUX1dJVEhfQ09WQVJJQU5DRTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjEwPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVkVDVE8zX1NUQU1QRUQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNWRUNUTzNfU1RBTVBFRCI+VkVDVE8zX1NUQU1QRUQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT42PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVkVDVE9SMyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1ZFQ1RPUjMiPlZFQ1RPUjM8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT41PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuV1JFTkNIIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjV1JFTkNIIj5XUkVOQ0g8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yMDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLldSRU5DSF9TVEFNUEVEIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjV1JFTkNIX1NUQU1QRUQiPldSRU5DSF9TVEFNUEVEPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTk8L0NPREU+PC9URD4KKzwvVFI+Cis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorCis8UD4KKworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIzIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQT48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2UuZU5BTUUiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTkFNRSI+ZU5BTUU8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4ibmF2X2RhdGF0eXBlcyI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlLmVOU19QUkVGSVgiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTlNfUFJFRklYIj5lTlNfUFJFRklYPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+IlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTlNfVVJJIj5lTlNfVVJJPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+Imh0dHA6Ly8vUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzLmVjb3JlIjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2UuR1JJRF9DRUxMUyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjR1JJRF9DRUxMUyI+R1JJRF9DRUxMUzwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjQ8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlLk1BUF9NRVRBX0RBVEEiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sI01BUF9NRVRBX0RBVEEiPk1BUF9NRVRBX0RBVEE8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5OYXZfZGF0YXR5cGVzUGFja2FnZS5PQ0NVUEFOQ1lfR1JJRCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjT0NDVVBBTkNZX0dSSUQiPk9DQ1VQQU5DWV9HUklEPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MzwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVUUlkiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sI09ET01FVFJZIj5PRE9NRVRSWTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlLlBBVEgiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sI1BBVEgiPlBBVEg8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4wPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKworPFA+CisKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMyI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBTUVSQV9JTkZPIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNDQU1FUkFfSU5GTyI+Q0FNRVJBX0lORk88L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DSEFOTkVMX0ZMT0FUMzIiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI0NIQU5ORUxfRkxPQVQzMiI+Q0hBTk5FTF9GTE9BVDMyPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ09NUFJFU1NFRF9JTUFHRSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjQ09NUFJFU1NFRF9JTUFHRSI+Q09NUFJFU1NFRF9JTUFHRTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjc8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmVOQU1FIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5BTUUiPmVOQU1FPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+InNlbnNvcl9kYXRhdHlwZXMiPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5lTlNfUFJFRklYIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1BSRUZJWCI+ZU5TX1BSRUZJWDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPiJQcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1VSSSI+ZU5TX1VSSTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPiJodHRwOi8vL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy5lY29yZSI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNQUdFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNJTUFHRSI+SU1BR0U8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT41PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTVUiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI0lNVSI+SU1VPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MzwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9JTlRfU1RBVEUiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI0pPSU5UX1NUQVRFIj5KT0lOVF9TVEFURTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjExPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT1kiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI0pPWSI+Sk9ZPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTQ8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9GRUVEQkFDSyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjSk9ZX0ZFRURCQUNLIj5KT1lfRkVFREJBQ0s8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xNTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9ZX0ZFRURCQUNLX0FSUkFZIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNKT1lfRkVFREJBQ0tfQVJSQVkiPkpPWV9GRUVEQkFDS19BUlJBWTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE2PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MQVNFUl9TQ0FOIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNMQVNFUl9TQ0FOIj5MQVNFUl9TQ0FOPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9GSVgiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI05BVl9TQVRfRklYIj5OQVZfU0FUX0ZJWDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjEzPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5OQVZfU0FUX1NUQVRVUyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjTkFWX1NBVF9TVEFUVVMiPk5BVl9TQVRfU1RBVFVTPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0NMT1VEIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNQT0lOVF9DTE9VRCI+UE9JTlRfQ0xPVUQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT44PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRDIiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI1BPSU5UX0NMT1VEMiI+UE9JTlRfQ0xPVUQyPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTA8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0ZJRUxEIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNQT0lOVF9GSUVMRCI+UE9JTlRfRklFTEQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT45PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SQU5HRSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjUkFOR0UiPlJBTkdFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkVHSU9OX09GX0lOVEVSRVNUIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNSRUdJT05fT0ZfSU5URVJFU1QiPlJFR0lPTl9PRl9JTlRFUkVTVDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjA8L0NPREU+PC9URD4KKzwvVFI+Cis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorCis8UD4KKworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIzIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuQk9PTCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjQk9PTCI+Qk9PTDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjY8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkJZVEUiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0JZVEUiPkJZVEU8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZS5CWVRFX01VTFRJX0FSUkFZIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNCWVRFX01VTFRJX0FSUkFZIj5CWVRFX01VTFRJX0FSUkFZPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTk8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkNIQVIiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0NIQVIiPkNIQVI8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xMTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuQ09MT1JfUkdCQSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjQ09MT1JfUkdCQSI+Q09MT1JfUkdCQTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjIwPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZS5EVVJBVElPTiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjRFVSQVRJT04iPkRVUkFUSU9OPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVOQU1FIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5BTUUiPmVOQU1FPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+InN0ZF9kYXRhdHlwZXMiPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZS5lTlNfUFJFRklYIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1BSRUZJWCI+ZU5TX1BSRUZJWDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPiJQcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1VSSSI+ZU5TX1VSSTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPiJodHRwOi8vL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy5lY29yZSI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkZMT0FUMzIiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0ZMT0FUMzIiPkZMT0FUMzI8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xNTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuRkxPQVQzMl9NVUxUSV9BUlJBWSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjRkxPQVQzMl9NVUxUSV9BUlJBWSI+RkxPQVQzMl9NVUxUSV9BUlJBWTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjIxPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZS5GTE9BVDY0Ij48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNGTE9BVDY0Ij5GTE9BVDY0PC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuRkxPQVQ2NF9NVUxUSV9BUlJBWSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjRkxPQVQ2NF9NVUxUSV9BUlJBWSI+RkxPQVQ2NF9NVUxUSV9BUlJBWTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI2PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZS5IRUFERVIiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0hFQURFUiI+SEVBREVSPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTY8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDE2Ij48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNJTlQxNiI+SU5UMTY8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xMDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UMTZfTVVMVElfQVJSQVkiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0lOVDE2X01VTFRJX0FSUkFZIj5JTlQxNl9NVUxUSV9BUlJBWTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQzMiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjSU5UMzIiPklOVDMyPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+OTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UMzJfTVVMVElfQVJSQVkiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0lOVDMyX01VTFRJX0FSUkFZIj5JTlQzMl9NVUxUSV9BUlJBWTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjIyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQ2NCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjSU5UNjQiPklOVDY0PC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTM8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDY0X01VTFRJX0FSUkFZIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNJTlQ2NF9NVUxUSV9BUlJBWSI+SU5UNjRfTVVMVElfQVJSQVk8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yNTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UOCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjSU5UOCI+SU5UODwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjU8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDhfTVVMVElfQVJSQVkiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0lOVDhfTVVMVElfQVJSQVkiPklOVDhfTVVMVElfQVJSQVk8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yMzwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuTVVMVElfQVJSQVlfRElNRU5TSU9OIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNNVUxUSV9BUlJBWV9ESU1FTlNJT04iPk1VTFRJX0FSUkFZX0RJTUVOU0lPTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE3PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZS5NVUxUSV9BUlJBWV9MQVlPVVQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI01VTFRJX0FSUkFZX0xBWU9VVCI+TVVMVElfQVJSQVlfTEFZT1VUPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTg8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLlNUUklORyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjU1RSSU5HIj5TVFJJTkc8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZS5USU1FIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNUSU1FIj5USU1FPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlJTlQxNl9NVUxUSV9BUlJBWSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjVUlJTlQxNl9NVUxUSV9BUlJBWSI+VUlJTlQxNl9NVUxUSV9BUlJBWTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI4PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UMTYiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI1VJTlQxNiI+VUlOVDE2PC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+ODwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDMyIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNVSU5UMzIiPlVJTlQzMjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjA8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJTlQzMl9NVUxUSV9BUlJBWSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjVUlOVDMyX01VTFRJX0FSUkFZIj5VSU5UMzJfTVVMVElfQVJSQVk8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yOTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDY0Ij48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNVSU5UNjQiPlVJTlQ2NDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UNjRfTVVMVElfQVJSQVkiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI1VJTlQ2NF9NVUxUSV9BUlJBWSI+VUlOVDY0X01VTFRJX0FSUkFZPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+Mjc8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJTlQ4Ij48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNVSU5UOCI+VUlOVDg8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT43PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UOF9NVUxUSV9BUlJBWSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjVUlOVDhfTVVMVElfQVJSQVkiPlVJTlQ4X01VTFRJX0FSUkFZPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MzA8L0NPREU+PC9URD4KKzwvVFI+Cis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorCis8UD4KKworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIzIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93RGlyZWN0aW9uS2luZDwvQT48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRhdGFGbG93RGlyZWN0aW9uS2luZC5JTl9WQUxVRSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCNJTl9WQUxVRSI+SU5fVkFMVUU8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4wPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGF0YUZsb3dEaXJlY3Rpb25LaW5kLk9VVF9WQUxVRSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCNPVVRfVkFMVUUiPk9VVF9WQUxVRTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE8L0NPREU+PC9URD4KKzwvVFI+Cis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorCis8UD4KKworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIzIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNNaWRkbGV3YXJlS2luZC5BUk9DQU1fVkFMVUUiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwjQVJPQ0FNX1ZBTFVFIj5BUk9DQU1fVkFMVUU8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmVLaW5kLk9ST0NPU19WQUxVRSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCNPUk9DT1NfVkFMVUUiPk9ST0NPU19WQUxVRTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjM8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljTWlkZGxld2FyZUtpbmQuUk9TX1ZBTFVFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sI1JPU19WQUxVRSI+Uk9TX1ZBTFVFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNNaWRkbGV3YXJlS2luZC5SVF9NQVBTX1ZBTFVFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sI1JUX01BUFNfVkFMVUUiPlJUX01BUFNfVkFMVUU8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4wPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmVLaW5kLlVSQklfVkFMVUUiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwjVVJCSV9WQUxVRSI+VVJCSV9WQUxVRTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorCis8UD4KKworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIzIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90S2luZDwvQT48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90S2luZC5QSUxPVEVEX1ZBTFVFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sI1BJTE9URURfVkFMVUUiPlBJTE9URURfVkFMVUU8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT40PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RLaW5kLlVBVl9WQUxVRSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCNVQVZfVkFMVUUiPlVBVl9WQUxVRTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdEtpbmQuVUdWX1ZBTFVFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sI1VHVl9WQUxVRSI+VUdWX1ZBTFVFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90S2luZC5VU1ZfVkFMVUUiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwjVVNWX1ZBTFVFIj5VU1ZfVkFMVUU8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RLaW5kLlVVVl9WQUxVRSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCNVVVZfVkFMVUUiPlVVVl9WQUxVRTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjA8L0NPREU+PC9URD4KKzwvVFI+Cis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorCis8UD4KKworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIzIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkFDVFVBVE9SX1NZU1RFTSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FDVFVBVE9SX1NZU1RFTSI+QUNUVUFUT1JfU1lTVEVNPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BQ1RVQVRPUl9TWVNURU1fX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBQ1RVQVRPUl9TWVNURU1fX0JBU0VfQ0xBU1MiPkFDVFVBVE9SX1NZU1RFTV9fQkFTRV9DTEFTUzwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjA8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BQ1RVQVRPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQUNUVUFUT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+QUNUVUFUT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BQ1RVQVRPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQUNUVUFUT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+QUNUVUFUT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BQ1RVQVRPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FDVFVBVE9SX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj5BQ1RVQVRPUl9TWVNURU1fRkVBVFVSRV9DT1VOVDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjM8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BR0VOVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FHRU5UIj5BR0VOVDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjQ8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BR0VOVF9fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FHRU5UX19CQVNFX0NMQVNTIj5BR0VOVF9fQkFTRV9DTEFTUzwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjA8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BR0VOVF9fRVZFTE9WRVNfSU4iPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBR0VOVF9fRVZFTE9WRVNfSU4iPkFHRU5UX19FVkVMT1ZFU19JTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BR0VOVF9fSEFTX1NVUkZBQ0UiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBR0VOVF9fSEFTX1NVUkZBQ0UiPkFHRU5UX19IQVNfU1VSRkFDRTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BR0VOVF9fTU9WRVNfT1ZFUiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FHRU5UX19NT1ZFU19PVkVSIj5BR0VOVF9fTU9WRVNfT1ZFUjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjM8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BR0VOVF9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQUdFTlRfRkVBVFVSRV9DT1VOVCI+QUdFTlRfRkVBVFVSRV9DT1VOVDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjQ8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BTEdPUklUSE0iPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBTEdPUklUSE0iPkFMR09SSVRITTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BTEdPUklUSE1fX0JBU0VfT1BFUkFUSU9OIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQUxHT1JJVEhNX19CQVNFX09QRVJBVElPTiI+QUxHT1JJVEhNX19CQVNFX09QRVJBVElPTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjA8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BTEdPUklUSE1fX0VYVF9GVU5DVElPTl9OQU1FIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQUxHT1JJVEhNX19FWFRfRlVOQ1RJT05fTkFNRSI+QUxHT1JJVEhNX19FWFRfRlVOQ1RJT05fTkFNRTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BTEdPUklUSE1fX0lTX0VYVEVSTkFMIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQUxHT1JJVEhNX19JU19FWFRFUk5BTCI+QUxHT1JJVEhNX19JU19FWFRFUk5BTDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BTEdPUklUSE1fX1BBVEgiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBTEdPUklUSE1fX1BBVEgiPkFMR09SSVRITV9fUEFUSDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjM8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BTEdPUklUSE1fRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FMR09SSVRITV9GRUFUVVJFX0NPVU5UIj5BTEdPUklUSE1fRkVBVFVSRV9DT1VOVDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjQ8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BTEdPUklUSE1fTElCUkFSWSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FMR09SSVRITV9MSUJSQVJZIj5BTEdPUklUSE1fTElCUkFSWTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjMwPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQUxHT1JJVEhNX0xJQlJBUllfX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBTEdPUklUSE1fTElCUkFSWV9fQkFTRV9DTEFTUyI+QUxHT1JJVEhNX0xJQlJBUllfX0JBU0VfQ0xBU1M8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4wPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQUxHT1JJVEhNX0xJQlJBUllfX1BBVEgiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBTEdPUklUSE1fTElCUkFSWV9fUEFUSCI+QUxHT1JJVEhNX0xJQlJBUllfX1BBVEg8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQUxHT1JJVEhNX0xJQlJBUllfRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FMR09SSVRITV9MSUJSQVJZX0ZFQVRVUkVfQ09VTlQiPkFMR09SSVRITV9MSUJSQVJZX0ZFQVRVUkVfQ09VTlQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQkxFTkRFUl9NT1JTRSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0JMRU5ERVJfTU9SU0UiPkJMRU5ERVJfTU9SU0U8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT40NjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkJMRU5ERVJfTU9SU0VfX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNCTEVOREVSX01PUlNFX19CQVNFX0NMQVNTIj5CTEVOREVSX01PUlNFX19CQVNFX0NMQVNTPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkJMRU5ERVJfTU9SU0VfX0JBU0VfTk9ERSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0JMRU5ERVJfTU9SU0VfX0JBU0VfTk9ERSI+QkxFTkRFUl9NT1JTRV9fQkFTRV9OT0RFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkJMRU5ERVJfTU9SU0VfX0RFQlVHX0RJU1BMQVkiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNCTEVOREVSX01PUlNFX19ERUJVR19ESVNQTEFZIj5CTEVOREVSX01PUlNFX19ERUJVR19ESVNQTEFZPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MzwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkJMRU5ERVJfTU9SU0VfX0RFQlVHX01PREUiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNCTEVOREVSX01PUlNFX19ERUJVR19NT0RFIj5CTEVOREVSX01PUlNFX19ERUJVR19NT0RFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkJMRU5ERVJfTU9SU0VfX0dSQVZJVFkiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNCTEVOREVSX01PUlNFX19HUkFWSVRZIj5CTEVOREVSX01PUlNFX19HUkFWSVRZPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkJMRU5ERVJfTU9SU0VfX1ZJRVdQT1JUX1NIQURFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQkxFTkRFUl9NT1JTRV9fVklFV1BPUlRfU0hBREUiPkJMRU5ERVJfTU9SU0VfX1ZJRVdQT1JUX1NIQURFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkJMRU5ERVJfTU9SU0VfRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0JMRU5ERVJfTU9SU0VfRkVBVFVSRV9DT1VOVCI+QkxFTkRFUl9NT1JTRV9GRUFUVVJFX0NPVU5UPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkJVSUxESU5HIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQlVJTERJTkciPkJVSUxESU5HPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MzM8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5CVUlMRElOR19fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0JVSUxESU5HX19CQVNFX0NMQVNTIj5CVUlMRElOR19fQkFTRV9DTEFTUzwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjA8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5CVUlMRElOR19fRVZFTE9WRVNfSU4iPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNCVUlMRElOR19fRVZFTE9WRVNfSU4iPkJVSUxESU5HX19FVkVMT1ZFU19JTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5CVUlMRElOR19fSEFTX1NVUkZBQ0UiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNCVUlMRElOR19fSEFTX1NVUkZBQ0UiPkJVSUxESU5HX19IQVNfU1VSRkFDRTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5CVUlMRElOR19GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQlVJTERJTkdfRkVBVFVSRV9DT1VOVCI+QlVJTERJTkdfRkVBVFVSRV9DT1VOVDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjM8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5DQU1FUkFfU1lTVEVNIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ0FNRVJBX1NZU1RFTSI+Q0FNRVJBX1NZU1RFTTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjIzPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fQUxQSEFfVSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NBTUVSQV9TWVNURU1fX0FMUEhBX1UiPkNBTUVSQV9TWVNURU1fX0FMUEhBX1U8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT43PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fQUxQSEFfViI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NBTUVSQV9TWVNURU1fX0FMUEhBX1YiPkNBTUVSQV9TWVNURU1fX0FMUEhBX1Y8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT44PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NBTUVSQV9TWVNURU1fX0JBU0VfQ0xBU1MiPkNBTUVSQV9TWVNURU1fX0JBU0VfQ0xBU1M8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4wPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fQ09MT1JfRk9STUFUIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ0FNRVJBX1NZU1RFTV9fQ09MT1JfRk9STUFUIj5DQU1FUkFfU1lTVEVNX19DT0xPUl9GT1JNQVQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xMTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkNBTUVSQV9TWVNURU1fX0ZSRVFVRU5DWSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NBTUVSQV9TWVNURU1fX0ZSRVFVRU5DWSI+Q0FNRVJBX1NZU1RFTV9fRlJFUVVFTkNZPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MzwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkNBTUVSQV9TWVNURU1fX0hFSUdIVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NBTUVSQV9TWVNURU1fX0hFSUdIVCI+Q0FNRVJBX1NZU1RFTV9fSEVJR0hUPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkNBTUVSQV9TWVNURU1fX0lERU5USUZJRVIiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDQU1FUkFfU1lTVEVNX19JREVOVElGSUVSIj5DQU1FUkFfU1lTVEVNX19JREVOVElGSUVSPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkNBTUVSQV9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ0FNRVJBX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPkNBTUVSQV9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkNBTUVSQV9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ0FNRVJBX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPkNBTUVSQV9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkNBTUVSQV9TWVNURU1fX1UwIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ0FNRVJBX1NZU1RFTV9fVTAiPkNBTUVSQV9TWVNURU1fX1UwPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+OTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkNBTUVSQV9TWVNURU1fX1YwIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ0FNRVJBX1NZU1RFTV9fVjAiPkNBTUVSQV9TWVNURU1fX1YwPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTA8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5DQU1FUkFfU1lTVEVNX19XSURUSCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NBTUVSQV9TWVNURU1fX1dJRFRIIj5DQU1FUkFfU1lTVEVNX19XSURUSDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjU8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5DQU1FUkFfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDQU1FUkFfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPkNBTUVSQV9TWVNURU1fRkVBVFVSRV9DT1VOVDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjEyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQ09MTEVDVElPTiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NPTExFQ1RJT04iPkNPTExFQ1RJT048L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xOTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkNPTExFQ1RJT05fX0JBU0VfREFUQV9UWVBFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ09MTEVDVElPTl9fQkFTRV9EQVRBX1RZUEUiPkNPTExFQ1RJT05fX0JBU0VfREFUQV9UWVBFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkNPTExFQ1RJT05fRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NPTExFQ1RJT05fRkVBVFVSRV9DT1VOVCI+Q09MTEVDVElPTl9GRUFUVVJFX0NPVU5UPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkNPTVBPU0VEX0RBVEEiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDT01QT1NFRF9EQVRBIj5DT01QT1NFRF9EQVRBPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTg8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5DT01QT1NFRF9EQVRBX19CQVNFX0RBVEFfVFlQRSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NPTVBPU0VEX0RBVEFfX0JBU0VfREFUQV9UWVBFIj5DT01QT1NFRF9EQVRBX19CQVNFX0RBVEFfVFlQRTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjA8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5DT01QT1NFRF9EQVRBX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDT01QT1NFRF9EQVRBX0ZFQVRVUkVfQ09VTlQiPkNPTVBPU0VEX0RBVEFfRkVBVFVSRV9DT1VOVDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5DWUNBQl9USyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NZQ0FCX1RLIj5DWUNBQl9USzwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjQ1PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQ1lDQUJfVEtfX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDWUNBQl9US19fQkFTRV9DTEFTUyI+Q1lDQUJfVEtfX0JBU0VfQ0xBU1M8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4wPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQ1lDQUJfVEtfX0JBU0VfTk9ERSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NZQ0FCX1RLX19CQVNFX05PREUiPkNZQ0FCX1RLX19CQVNFX05PREU8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQ1lDQUJfVEtfX1RJTUVfRkFDVE9SIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ1lDQUJfVEtfX1RJTUVfRkFDVE9SIj5DWUNBQl9US19fVElNRV9GQUNUT1I8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT40PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQ1lDQUJfVEtfX1RJTUVfU1RFUCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NZQ0FCX1RLX19USU1FX1NURVAiPkNZQ0FCX1RLX19USU1FX1NURVA8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQ1lDQUJfVEtfX1VTRV9SRUFMX1RJTUUiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDWUNBQl9US19fVVNFX1JFQUxfVElNRSI+Q1lDQUJfVEtfX1VTRV9SRUFMX1RJTUU8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQ1lDQUJfVEtfRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NZQ0FCX1RLX0ZFQVRVUkVfQ09VTlQiPkNZQ0FCX1RLX0ZFQVRVUkVfQ09VTlQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT41PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuREFUQV9GTE9XX0RJUkVDVElPTl9LSU5EIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjREFUQV9GTE9XX0RJUkVDVElPTl9LSU5EIj5EQVRBX0ZMT1dfRElSRUNUSU9OX0tJTkQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT41MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkRBVEFfRkxPV19QT1JUIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjREFUQV9GTE9XX1BPUlQiPkRBVEFfRkxPV19QT1JUPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+ODwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkRBVEFfRkxPV19QT1JUX19CQVNFX1BPUlQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNEQVRBX0ZMT1dfUE9SVF9fQkFTRV9QT1JUIj5EQVRBX0ZMT1dfUE9SVF9fQkFTRV9QT1JUPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkRBVEFfRkxPV19QT1JUX19CVUZGRVJfU0laRSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0RBVEFfRkxPV19QT1JUX19CVUZGRVJfU0laRSI+REFUQV9GTE9XX1BPUlRfX0JVRkZFUl9TSVpFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MzwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkRBVEFfRkxPV19QT1JUX19ESVJFQ1RJT04iPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNEQVRBX0ZMT1dfUE9SVF9fRElSRUNUSU9OIj5EQVRBX0ZMT1dfUE9SVF9fRElSRUNUSU9OPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkRBVEFfRkxPV19QT1JUX19TWU5DSFJPTklaQVRJT05fUE9MSUNZIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjREFUQV9GTE9XX1BPUlRfX1NZTkNIUk9OSVpBVElPTl9QT0xJQ1kiPkRBVEFfRkxPV19QT1JUX19TWU5DSFJPTklaQVRJT05fUE9MSUNZPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkRBVEFfRkxPV19QT1JUX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNEQVRBX0ZMT1dfUE9SVF9GRUFUVVJFX0NPVU5UIj5EQVRBX0ZMT1dfUE9SVF9GRUFUVVJFX0NPVU5UPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLmVOQU1FIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2VOQU1FIj5lTkFNRTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPiJSb2JvdE1MIjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkVOR0lORV9TWVNURU0iPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNFTkdJTkVfU1lTVEVNIj5FTkdJTkVfU1lTVEVNPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MjA8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19CQVNFX0NMQVNTIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5HSU5FX1NZU1RFTV9fQkFTRV9DTEFTUyI+RU5HSU5FX1NZU1RFTV9fQkFTRV9DTEFTUzwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjA8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19HRUFSX1JBVElPTiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0VOR0lORV9TWVNURU1fX0dFQVJfUkFUSU9OIj5FTkdJTkVfU1lTVEVNX19HRUFSX1JBVElPTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjg8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0VOR0lORV9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj5FTkdJTkVfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0VOR0lORV9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj5FTkdJTkVfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19NQVhfQUxMT1dFRF9TVEVFUklORyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0VOR0lORV9TWVNURU1fX01BWF9BTExPV0VEX1NURUVSSU5HIj5FTkdJTkVfU1lTVEVNX19NQVhfQUxMT1dFRF9TVEVFUklORzwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjY8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19NQVhfQUxMT1dFRF9WRUxPQ0lUWSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0VOR0lORV9TWVNURU1fX01BWF9BTExPV0VEX1ZFTE9DSVRZIj5FTkdJTkVfU1lTVEVNX19NQVhfQUxMT1dFRF9WRUxPQ0lUWTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjc8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19NQVhfQlJFQUtJTkdfRk9SQ0UiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNFTkdJTkVfU1lTVEVNX19NQVhfQlJFQUtJTkdfRk9SQ0UiPkVOR0lORV9TWVNURU1fX01BWF9CUkVBS0lOR19GT1JDRTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjU8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19NQVhfRU5HSU5FX0ZPUkNFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5HSU5FX1NZU1RFTV9fTUFYX0VOR0lORV9GT1JDRSI+RU5HSU5FX1NZU1RFTV9fTUFYX0VOR0lORV9GT1JDRTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjQ8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19WRUhJQ0xFX1RSQUNUSU9OIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5HSU5FX1NZU1RFTV9fVkVISUNMRV9UUkFDVElPTiI+RU5HSU5FX1NZU1RFTV9fVkVISUNMRV9UUkFDVElPTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjM8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNFTkdJTkVfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPkVOR0lORV9TWVNURU1fRkVBVFVSRV9DT1VOVDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjk8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5lTlNfUFJFRklYIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2VOU19QUkVGSVgiPmVOU19QUkVGSVg8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4iUm9ib3RNTCI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5lTlNfVVJJIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2VOU19VUkkiPmVOU19VUkk8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4iaHR0cDovL1BhcHlydXMvUm9ib3RNTC8xIjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkVOVklST05NRU5UIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5WSVJPTk1FTlQiPkVOVklST05NRU5UPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkVOVklST05NRU5UX19CQVNFX0NMQVNTIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5WSVJPTk1FTlRfX0JBU0VfQ0xBU1MiPkVOVklST05NRU5UX19CQVNFX0NMQVNTPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkVOVklST05NRU5UX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNFTlZJUk9OTUVOVF9GRUFUVVJFX0NPVU5UIj5FTlZJUk9OTUVOVF9GRUFUVVJFX0NPVU5UPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkZMT09SIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRkxPT1IiPkZMT09SPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+Mzc8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5GTE9PUl9fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0ZMT09SX19CQVNFX0NMQVNTIj5GTE9PUl9fQkFTRV9DTEFTUzwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjA8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5GTE9PUl9fRVZFTE9WRVNfSU4iPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNGTE9PUl9fRVZFTE9WRVNfSU4iPkZMT09SX19FVkVMT1ZFU19JTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5GTE9PUl9fSEFTX1NVUkZBQ0UiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNGTE9PUl9fSEFTX1NVUkZBQ0UiPkZMT09SX19IQVNfU1VSRkFDRTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5GTE9PUl9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRkxPT1JfRkVBVFVSRV9DT1VOVCI+RkxPT1JfRkVBVFVSRV9DT1VOVDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjM8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5HUFNfU1lTVEVNIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjR1BTX1NZU1RFTSI+R1BTX1NZU1RFTTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI4PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuR1BTX1NZU1RFTV9fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0dQU19TWVNURU1fX0JBU0VfQ0xBU1MiPkdQU19TWVNURU1fX0JBU0VfQ0xBU1M8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4wPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuR1BTX1NZU1RFTV9fRlJFUVVFTkNZIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjR1BTX1NZU1RFTV9fRlJFUVVFTkNZIj5HUFNfU1lTVEVNX19GUkVRVUVOQ1k8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuR1BTX1NZU1RFTV9fSURFTlRJRklFUiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0dQU19TWVNURU1fX0lERU5USUZJRVIiPkdQU19TWVNURU1fX0lERU5USUZJRVI8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT40PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuR1BTX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNHUFNfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+R1BTX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT048L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuR1BTX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNHUFNfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+R1BTX1NZU1RFTV9fTE9DQUxfUE9TSVRJT048L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuR1BTX1NZU1RFTV9fT1JJR0lOX1BPU0lUSU9OIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjR1BTX1NZU1RFTV9fT1JJR0lOX1BPU0lUSU9OIj5HUFNfU1lTVEVNX19PUklHSU5fUE9TSVRJT048L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT41PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuR1BTX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjR1BTX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj5HUFNfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT42PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuR1JPVU5EIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjR1JPVU5EIj5HUk9VTkQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4zNjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkdST1VORF9fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0dST1VORF9fQkFTRV9DTEFTUyI+R1JPVU5EX19CQVNFX0NMQVNTPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkdST1VORF9fRVZFTE9WRVNfSU4iPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNHUk9VTkRfX0VWRUxPVkVTX0lOIj5HUk9VTkRfX0VWRUxPVkVTX0lOPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkdST1VORF9fSEFTX1NVUkZBQ0UiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNHUk9VTkRfX0hBU19TVVJGQUNFIj5HUk9VTkRfX0hBU19TVVJGQUNFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkdST1VORF9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjR1JPVU5EX0ZFQVRVUkVfQ09VTlQiPkdST1VORF9GRUFUVVJFX0NPVU5UPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MzwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkhBUkRXQVJFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjSEFSRFdBUkUiPkhBUkRXQVJFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTQ8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5IQVJEV0FSRV9fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0hBUkRXQVJFX19CQVNFX0NMQVNTIj5IQVJEV0FSRV9fQkFTRV9DTEFTUzwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjA8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5IQVJEV0FSRV9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjSEFSRFdBUkVfRkVBVFVSRV9DT1VOVCI+SEFSRFdBUkVfRkVBVFVSRV9DT1VOVDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5IVU1BTiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0hVTUFOIj5IVU1BTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjM5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuSFVNQU5fX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNIVU1BTl9fQkFTRV9DTEFTUyI+SFVNQU5fX0JBU0VfQ0xBU1M8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4wPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuSFVNQU5fX0VWRUxPVkVTX0lOIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjSFVNQU5fX0VWRUxPVkVTX0lOIj5IVU1BTl9fRVZFTE9WRVNfSU48L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuSFVNQU5fX0hBU19TVVJGQUNFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjSFVNQU5fX0hBU19TVVJGQUNFIj5IVU1BTl9fSEFTX1NVUkZBQ0U8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuSFVNQU5fX01PVkVTX09WRVIiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNIVU1BTl9fTU9WRVNfT1ZFUiI+SFVNQU5fX01PVkVTX09WRVI8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuSFVNQU5fRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0hVTUFOX0ZFQVRVUkVfQ09VTlQiPkhVTUFOX0ZFQVRVUkVfQ09VTlQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT40PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuSU1BR0VfU0VOU09SX1NZU1RFTSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0lNQUdFX1NFTlNPUl9TWVNURU0iPklNQUdFX1NFTlNPUl9TWVNURU08L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yMjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLklNQUdFX1NFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNJTUFHRV9TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTIj5JTUFHRV9TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLklNQUdFX1NFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0lNQUdFX1NFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWSI+SU1BR0VfU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MzwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLklNQUdFX1NFTlNPUl9TWVNURU1fX0lERU5USUZJRVIiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNJTUFHRV9TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSIj5JTUFHRV9TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLklNQUdFX1NFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjSU1BR0VfU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPklNQUdFX1NFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLklNQUdFX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjSU1BR0VfU0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPklNQUdFX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLklNQUdFX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0lNQUdFX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCI+SU1BR0VfU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkxBTkRfU1VSRkFDRSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xBTkRfU1VSRkFDRSI+TEFORF9TVVJGQUNFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MzU8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MQU5EX1NVUkZBQ0VfX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMQU5EX1NVUkZBQ0VfX0JBU0VfQ0xBU1MiPkxBTkRfU1VSRkFDRV9fQkFTRV9DTEFTUzwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjA8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MQU5EX1NVUkZBQ0VfX0VWRUxPVkVTX0lOIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTEFORF9TVVJGQUNFX19FVkVMT1ZFU19JTiI+TEFORF9TVVJGQUNFX19FVkVMT1ZFU19JTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MQU5EX1NVUkZBQ0VfX0hBU19TVVJGQUNFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTEFORF9TVVJGQUNFX19IQVNfU1VSRkFDRSI+TEFORF9TVVJGQUNFX19IQVNfU1VSRkFDRTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MQU5EX1NVUkZBQ0VfRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xBTkRfU1VSRkFDRV9GRUFUVVJFX0NPVU5UIj5MQU5EX1NVUkZBQ0VfRkVBVFVSRV9DT1VOVDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjM8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU0iPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU0iPkxJREFSX1NZU1RFTTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI2PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuTElEQVJfU1lTVEVNX19BTkdMRV9NQVgiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX0FOR0xFX01BWCI+TElEQVJfU1lTVEVNX19BTkdMRV9NQVg8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xMTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fQU5HTEVfTUlOIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTElEQVJfU1lTVEVNX19BTkdMRV9NSU4iPkxJREFSX1NZU1RFTV9fQU5HTEVfTUlOPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTA8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX0JBU0VfQ0xBU1MiPkxJREFSX1NZU1RFTV9fQkFTRV9DTEFTUzwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjA8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX0ZSRVFVRU5DWSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xJREFSX1NZU1RFTV9fRlJFUVVFTkNZIj5MSURBUl9TWVNURU1fX0ZSRVFVRU5DWTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjM8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX0lERU5USUZJRVIiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX0lERU5USUZJRVIiPkxJREFSX1NZU1RFTV9fSURFTlRJRklFUjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjQ8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX0xBWUVSX0FOR0xFX01JTiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xJREFSX1NZU1RFTV9fTEFZRVJfQU5HTEVfTUlOIj5MSURBUl9TWVNURU1fX0xBWUVSX0FOR0xFX01JTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjY8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX0xBWUVSX0FOR0xFX1NURVAiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX0xBWUVSX0FOR0xFX1NURVAiPkxJREFSX1NZU1RFTV9fTEFZRVJfQU5HTEVfU1RFUDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjc8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTElEQVJfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+TElEQVJfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTElEQVJfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+TElEQVJfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX05CX0xBWUVSUyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xJREFSX1NZU1RFTV9fTkJfTEFZRVJTIj5MSURBUl9TWVNURU1fX05CX0xBWUVSUzwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjU8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX05PSVNFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTElEQVJfU1lTVEVNX19OT0lTRSI+TElEQVJfU1lTVEVNX19OT0lTRTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjg8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX1JBTkdFX01BWCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xJREFSX1NZU1RFTV9fUkFOR0VfTUFYIj5MSURBUl9TWVNURU1fX1JBTkdFX01BWDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE1PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuTElEQVJfU1lTVEVNX19SQU5HRV9NSU4iPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX1JBTkdFX01JTiI+TElEQVJfU1lTVEVNX19SQU5HRV9NSU48L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xNDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fU0NBTl9USU1FIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTElEQVJfU1lTVEVNX19TQ0FOX1RJTUUiPkxJREFSX1NZU1RFTV9fU0NBTl9USU1FPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTM8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX1NJR01BX05PSVNFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTElEQVJfU1lTVEVNX19TSUdNQV9OT0lTRSI+TElEQVJfU1lTVEVNX19TSUdNQV9OT0lTRTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjk8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX1RJTUVfSU5DUkVNRU5UIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTElEQVJfU1lTVEVNX19USU1FX0lOQ1JFTUVOVCI+TElEQVJfU1lTVEVNX19USU1FX0lOQ1JFTUVOVDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjEyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuTElEQVJfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fRkVBVFVSRV9DT1VOVCI+TElEQVJfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xNjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU0iPkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+Mjc8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTIj5MT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fQkFTRV9DTEFTUzwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjA8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWSI+TE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjM8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSIj5MT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjQ8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCI+TE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjU8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5PQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU0iPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU0iPk9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTIj5PQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1M8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4wPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1kiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWSI+T0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1k8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSIj5PQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0lERU5USUZJRVI8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT40PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI09CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPk9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT048L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI09CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPk9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT048L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCI+T0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT41PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU0iPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTSI+T0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU08L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yNTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1MiPk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1kiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZIj5PQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MzwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0lERU5USUZJRVIiPk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI09CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+T0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI09CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+T0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj5PQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLk9OX1BPUlQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPTl9QT1JUIj5PTl9QT1JUPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NDc8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5PTl9QT1JUX19CQVNFX1BBUkFNRVRFUiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI09OX1BPUlRfX0JBU0VfUEFSQU1FVEVSIj5PTl9QT1JUX19CQVNFX1BBUkFNRVRFUjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5PTl9QT1JUX19QT1JUIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT05fUE9SVF9fUE9SVCI+T05fUE9SVF9fUE9SVDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjA8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5PTl9QT1JUX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPTl9QT1JUX0ZFQVRVUkVfQ09VTlQiPk9OX1BPUlRfRkVBVFVSRV9DT1VOVDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5QRURFU1RSSUFOIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUEVERVNUUklBTiI+UEVERVNUUklBTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjQwPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUEVERVNUUklBTl9fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BFREVTVFJJQU5fX0JBU0VfQ0xBU1MiPlBFREVTVFJJQU5fX0JBU0VfQ0xBU1M8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4wPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUEVERVNUUklBTl9fRVZFTE9WRVNfSU4iPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQRURFU1RSSUFOX19FVkVMT1ZFU19JTiI+UEVERVNUUklBTl9fRVZFTE9WRVNfSU48L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUEVERVNUUklBTl9fSEFTX1NVUkZBQ0UiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQRURFU1RSSUFOX19IQVNfU1VSRkFDRSI+UEVERVNUUklBTl9fSEFTX1NVUkZBQ0U8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUEVERVNUUklBTl9fTU9WRVNfT1ZFUiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BFREVTVFJJQU5fX01PVkVTX09WRVIiPlBFREVTVFJJQU5fX01PVkVTX09WRVI8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUEVERVNUUklBTl9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUEVERVNUUklBTl9GRUFUVVJFX0NPVU5UIj5QRURFU1RSSUFOX0ZFQVRVUkVfQ09VTlQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT40PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUEhZU0lDQUxfREFUQSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BIWVNJQ0FMX0RBVEEiPlBIWVNJQ0FMX0RBVEE8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xNzwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlBIWVNJQ0FMX0RBVEFfX0JBU0VfREFUQV9UWVBFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUEhZU0lDQUxfREFUQV9fQkFTRV9EQVRBX1RZUEUiPlBIWVNJQ0FMX0RBVEFfX0JBU0VfREFUQV9UWVBFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlBIWVNJQ0FMX0RBVEFfX1VOSVQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQSFlTSUNBTF9EQVRBX19VTklUIj5QSFlTSUNBTF9EQVRBX19VTklUPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlBIWVNJQ0FMX0RBVEFfRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BIWVNJQ0FMX0RBVEFfRkVBVFVSRV9DT1VOVCI+UEhZU0lDQUxfREFUQV9GRUFUVVJFX0NPVU5UPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlBIWVNJQ0FMX09CSkVDVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BIWVNJQ0FMX09CSkVDVCI+UEhZU0lDQUxfT0JKRUNUPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlBIWVNJQ0FMX09CSkVDVF9fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BIWVNJQ0FMX09CSkVDVF9fQkFTRV9DTEFTUyI+UEhZU0lDQUxfT0JKRUNUX19CQVNFX0NMQVNTPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlBIWVNJQ0FMX09CSkVDVF9fRVZFTE9WRVNfSU4iPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQSFlTSUNBTF9PQkpFQ1RfX0VWRUxPVkVTX0lOIj5QSFlTSUNBTF9PQkpFQ1RfX0VWRUxPVkVTX0lOPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlBIWVNJQ0FMX09CSkVDVF9fSEFTX1NVUkZBQ0UiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQSFlTSUNBTF9PQkpFQ1RfX0hBU19TVVJGQUNFIj5QSFlTSUNBTF9PQkpFQ1RfX0hBU19TVVJGQUNFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlBIWVNJQ0FMX09CSkVDVF9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUEhZU0lDQUxfT0JKRUNUX0ZFQVRVUkVfQ09VTlQiPlBIWVNJQ0FMX09CSkVDVF9GRUFUVVJFX0NPVU5UPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MzwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlBMQU5FVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BMQU5FVCI+UExBTkVUPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MzQ8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5QTEFORVRfX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQTEFORVRfX0JBU0VfQ0xBU1MiPlBMQU5FVF9fQkFTRV9DTEFTUzwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjA8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5QTEFORVRfX0VWRUxPVkVTX0lOIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUExBTkVUX19FVkVMT1ZFU19JTiI+UExBTkVUX19FVkVMT1ZFU19JTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5QTEFORVRfX0hBU19TVVJGQUNFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUExBTkVUX19IQVNfU1VSRkFDRSI+UExBTkVUX19IQVNfU1VSRkFDRTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5QTEFORVRfRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BMQU5FVF9GRUFUVVJFX0NPVU5UIj5QTEFORVRfRkVBVFVSRV9DT1VOVDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjM8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5QTEFURk9STSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BMQVRGT1JNIj5QTEFURk9STTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjQyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUExBVEZPUk1fX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQTEFURk9STV9fQkFTRV9DTEFTUyI+UExBVEZPUk1fX0JBU0VfQ0xBU1M8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4wPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUExBVEZPUk1fX0JBU0VfTk9ERSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BMQVRGT1JNX19CQVNFX05PREUiPlBMQVRGT1JNX19CQVNFX05PREU8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUExBVEZPUk1fRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BMQVRGT1JNX0ZFQVRVUkVfQ09VTlQiPlBMQVRGT1JNX0ZFQVRVUkVfQ09VTlQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUE9SVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BPUlQiPlBPUlQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT45PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUE9SVF9fQkFTRV9QT1JUIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUE9SVF9fQkFTRV9QT1JUIj5QT1JUX19CQVNFX1BPUlQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4wPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUE9SVF9fU1lOQ0hST05JWkFUSU9OX1BPTElDWSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BPUlRfX1NZTkNIUk9OSVpBVElPTl9QT0xJQ1kiPlBPUlRfX1NZTkNIUk9OSVpBVElPTl9QT0xJQ1k8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUE9SVF9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUE9SVF9GRUFUVVJFX0NPVU5UIj5QT1JUX0ZFQVRVUkVfQ09VTlQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUFJJTUlUSVZFX0RBVEEiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQUklNSVRJVkVfREFUQSI+UFJJTUlUSVZFX0RBVEE8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xNjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlBSSU1JVElWRV9EQVRBX19CQVNFX1BSSU1JVElWRV9UWVBFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUFJJTUlUSVZFX0RBVEFfX0JBU0VfUFJJTUlUSVZFX1RZUEUiPlBSSU1JVElWRV9EQVRBX19CQVNFX1BSSU1JVElWRV9UWVBFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlBSSU1JVElWRV9EQVRBX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQUklNSVRJVkVfREFUQV9GRUFUVVJFX0NPVU5UIj5QUklNSVRJVkVfREFUQV9GRUFUVVJFX0NPVU5UPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlJPQk9UIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1QiPlJPQk9UPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlJPQk9UX19CQVNFX0NMQVNTIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RfX0JBU0VfQ0xBU1MiPlJPQk9UX19CQVNFX0NMQVNTPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlJPQk9UX19FVkVMT1ZFU19JTiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9UX19FVkVMT1ZFU19JTiI+Uk9CT1RfX0VWRUxPVkVTX0lOPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlJPQk9UX19IQVNfU1VSRkFDRSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9UX19IQVNfU1VSRkFDRSI+Uk9CT1RfX0hBU19TVVJGQUNFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlJPQk9UX19LSU5EIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RfX0tJTkQiPlJPQk9UX19LSU5EPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlJPQk9UX19NQVNTIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RfX01BU1MiPlJPQk9UX19NQVNTPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlJPQk9UX19NT1ZFU19PVkVSIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RfX01PVkVTX09WRVIiPlJPQk9UX19NT1ZFU19PVkVSPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MzwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlJPQk9UX19VR1ZfS0lORCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9UX19VR1ZfS0lORCI+Uk9CT1RfX1VHVl9LSU5EPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NzwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlJPQk9UX19XSURUSCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9UX19XSURUSCI+Uk9CT1RfX1dJRFRIPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlJPQk9UX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVF9GRUFUVVJFX0NPVU5UIj5ST0JPVF9GRUFUVVJFX0NPVU5UPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+ODwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlJPQk9UX0tJTkQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVF9LSU5EIj5ST0JPVF9LSU5EPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NDg8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5ST0JPVElDX01JRERMRVdBUkUiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVElDX01JRERMRVdBUkUiPlJPQk9USUNfTUlERExFV0FSRTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjQzPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19NSURETEVXQVJFX19CQVNFX0NMQVNTIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RJQ19NSURETEVXQVJFX19CQVNFX0NMQVNTIj5ST0JPVElDX01JRERMRVdBUkVfX0JBU0VfQ0xBU1M8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4wPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19NSURETEVXQVJFX19CQVNFX05PREUiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVElDX01JRERMRVdBUkVfX0JBU0VfTk9ERSI+Uk9CT1RJQ19NSURETEVXQVJFX19CQVNFX05PREU8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19NSURETEVXQVJFX19LSU5EIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RJQ19NSURETEVXQVJFX19LSU5EIj5ST0JPVElDX01JRERMRVdBUkVfX0tJTkQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19NSURETEVXQVJFX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVElDX01JRERMRVdBUkVfRkVBVFVSRV9DT1VOVCI+Uk9CT1RJQ19NSURETEVXQVJFX0ZFQVRVUkVfQ09VTlQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19NSURETEVXQVJFX0tJTkQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVElDX01JRERMRVdBUkVfS0lORCI+Uk9CT1RJQ19NSURETEVXQVJFX0tJTkQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT41NDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlJPQk9USUNfU0lNVUxBVE9SIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RJQ19TSU1VTEFUT1IiPlJPQk9USUNfU0lNVUxBVE9SPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NDQ8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5ST0JPVElDX1NJTVVMQVRPUl9fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9USUNfU0lNVUxBVE9SX19CQVNFX0NMQVNTIj5ST0JPVElDX1NJTVVMQVRPUl9fQkFTRV9DTEFTUzwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjA8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5ST0JPVElDX1NJTVVMQVRPUl9fQkFTRV9OT0RFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RJQ19TSU1VTEFUT1JfX0JBU0VfTk9ERSI+Uk9CT1RJQ19TSU1VTEFUT1JfX0JBU0VfTk9ERTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5ST0JPVElDX1NJTVVMQVRPUl9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RJQ19TSU1VTEFUT1JfRkVBVFVSRV9DT1VOVCI+Uk9CT1RJQ19TSU1VTEFUT1JfRkVBVFVSRV9DT1VOVDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5ST0JPVElDX1NZU1RFTSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9USUNfU1lTVEVNIj5ST0JPVElDX1NZU1RFTTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjEyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19TWVNURU1fX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVElDX1NZU1RFTV9fQkFTRV9DTEFTUyI+Uk9CT1RJQ19TWVNURU1fX0JBU0VfQ0xBU1M8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4wPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RJQ19TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj5ST0JPVElDX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT048L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RJQ19TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj5ST0JPVElDX1NZU1RFTV9fTE9DQUxfUE9TSVRJT048L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19TWVNURU1fRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9USUNfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPlJPQk9USUNfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU0VOU09SX0RSSVZFUiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFTlNPUl9EUklWRVIiPlNFTlNPUl9EUklWRVI8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4zMjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNFTlNPUl9EUklWRVJfX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRU5TT1JfRFJJVkVSX19CQVNFX0NMQVNTIj5TRU5TT1JfRFJJVkVSX19CQVNFX0NMQVNTPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNFTlNPUl9EUklWRVJfX0RFQURMSU5FIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VOU09SX0RSSVZFUl9fREVBRExJTkUiPlNFTlNPUl9EUklWRVJfX0RFQURMSU5FPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNFTlNPUl9EUklWRVJfX0lTX1BFUklPRElDIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VOU09SX0RSSVZFUl9fSVNfUEVSSU9ESUMiPlNFTlNPUl9EUklWRVJfX0lTX1BFUklPRElDPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNFTlNPUl9EUklWRVJfX1BFUklPRCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFTlNPUl9EUklWRVJfX1BFUklPRCI+U0VOU09SX0RSSVZFUl9fUEVSSU9EPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNFTlNPUl9EUklWRVJfX1BSSU9SSVRZIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VOU09SX0RSSVZFUl9fUFJJT1JJVFkiPlNFTlNPUl9EUklWRVJfX1BSSU9SSVRZPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MzwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNFTlNPUl9EUklWRVJfX1dDRVQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRU5TT1JfRFJJVkVSX19XQ0VUIj5TRU5TT1JfRFJJVkVSX19XQ0VUPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNFTlNPUl9EUklWRVJfRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFTlNPUl9EUklWRVJfRkVBVFVSRV9DT1VOVCI+U0VOU09SX0RSSVZFUl9GRUFUVVJFX0NPVU5UPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNFTlNPUl9TWVNURU0iPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRU5TT1JfU1lTVEVNIj5TRU5TT1JfU1lTVEVNPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTM8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VOU09SX1NZU1RFTV9fQkFTRV9DTEFTUyI+U0VOU09SX1NZU1RFTV9fQkFTRV9DTEFTUzwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjA8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1kiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1kiPlNFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjM8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUiI+U0VOU09SX1NZU1RFTV9fSURFTlRJRklFUjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjQ8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj5TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj5TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPlNFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjU8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TRVJWSUNFX0ZMT1dfS0lORCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFUlZJQ0VfRkxPV19LSU5EIj5TRVJWSUNFX0ZMT1dfS0lORDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjUyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU0VSVklDRV9QT1JUIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VSVklDRV9QT1JUIj5TRVJWSUNFX1BPUlQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xMDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNFUlZJQ0VfUE9SVF9fQkFTRV9QT1JUIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VSVklDRV9QT1JUX19CQVNFX1BPUlQiPlNFUlZJQ0VfUE9SVF9fQkFTRV9QT1JUPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNFUlZJQ0VfUE9SVF9fS0lORCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFUlZJQ0VfUE9SVF9fS0lORCI+U0VSVklDRV9QT1JUX19LSU5EPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNFUlZJQ0VfUE9SVF9fU1lOQ0hST05JWkFUSU9OX1BPTElDWSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFUlZJQ0VfUE9SVF9fU1lOQ0hST05JWkFUSU9OX1BPTElDWSI+U0VSVklDRV9QT1JUX19TWU5DSFJPTklaQVRJT05fUE9MSUNZPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNFUlZJQ0VfUE9SVF9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VSVklDRV9QT1JUX0ZFQVRVUkVfQ09VTlQiPlNFUlZJQ0VfUE9SVF9GRUFUVVJFX0NPVU5UPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MzwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNIQURFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0hBREUiPlNIQURFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NTU8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TSU1VTEFURURfU1lTVEVNIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0lNVUxBVEVEX1NZU1RFTSI+U0lNVUxBVEVEX1NZU1RFTTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU0lNVUxBVEVEX1NZU1RFTV9fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NJTVVMQVRFRF9TWVNURU1fX0JBU0VfQ0xBU1MiPlNJTVVMQVRFRF9TWVNURU1fX0JBU0VfQ0xBU1M8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4wPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU0lNVUxBVEVEX1NZU1RFTV9fQkFTRV9QUk9QRVJUWSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NJTVVMQVRFRF9TWVNURU1fX0JBU0VfUFJPUEVSVFkiPlNJTVVMQVRFRF9TWVNURU1fX0JBU0VfUFJPUEVSVFk8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT42PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU0lNVUxBVEVEX1NZU1RFTV9fREVBRExJTkUiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTSU1VTEFURURfU1lTVEVNX19ERUFETElORSI+U0lNVUxBVEVEX1NZU1RFTV9fREVBRExJTkU8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT40PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU0lNVUxBVEVEX1NZU1RFTV9fSVNfUEVSSU9ESUMiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTSU1VTEFURURfU1lTVEVNX19JU19QRVJJT0RJQyI+U0lNVUxBVEVEX1NZU1RFTV9fSVNfUEVSSU9ESUM8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU0lNVUxBVEVEX1NZU1RFTV9fTUVTSCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NJTVVMQVRFRF9TWVNURU1fX01FU0giPlNJTVVMQVRFRF9TWVNURU1fX01FU0g8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT43PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU0lNVUxBVEVEX1NZU1RFTV9fUEVSSU9EIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0lNVUxBVEVEX1NZU1RFTV9fUEVSSU9EIj5TSU1VTEFURURfU1lTVEVNX19QRVJJT0Q8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU0lNVUxBVEVEX1NZU1RFTV9fUFJJT1JJVFkiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTSU1VTEFURURfU1lTVEVNX19QUklPUklUWSI+U0lNVUxBVEVEX1NZU1RFTV9fUFJJT1JJVFk8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU0lNVUxBVEVEX1NZU1RFTV9fV0NFVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NJTVVMQVRFRF9TWVNURU1fX1dDRVQiPlNJTVVMQVRFRF9TWVNURU1fX1dDRVQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT41PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU0lNVUxBVEVEX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0lNVUxBVEVEX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj5TSU1VTEFURURfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT44PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU09GVFdBUkUiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTT0ZUV0FSRSI+U09GVFdBUkU8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xNTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNPRlRXQVJFX19CQVNFX0NMQVNTIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU09GVFdBUkVfX0JBU0VfQ0xBU1MiPlNPRlRXQVJFX19CQVNFX0NMQVNTPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNPRlRXQVJFX19ERUFETElORSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NPRlRXQVJFX19ERUFETElORSI+U09GVFdBUkVfX0RFQURMSU5FPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNPRlRXQVJFX19JU19QRVJJT0RJQyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NPRlRXQVJFX19JU19QRVJJT0RJQyI+U09GVFdBUkVfX0lTX1BFUklPRElDPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNPRlRXQVJFX19QRVJJT0QiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTT0ZUV0FSRV9fUEVSSU9EIj5TT0ZUV0FSRV9fUEVSSU9EPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNPRlRXQVJFX19QUklPUklUWSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NPRlRXQVJFX19QUklPUklUWSI+U09GVFdBUkVfX1BSSU9SSVRZPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MzwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNPRlRXQVJFX19XQ0VUIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU09GVFdBUkVfX1dDRVQiPlNPRlRXQVJFX19XQ0VUPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNPRlRXQVJFX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTT0ZUV0FSRV9GRUFUVVJFX0NPVU5UIj5TT0ZUV0FSRV9GRUFUVVJFX0NPVU5UPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNUQUlSUyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NUQUlSUyI+U1RBSVJTPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NDE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TVEFJUlNfX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTVEFJUlNfX0JBU0VfQ0xBU1MiPlNUQUlSU19fQkFTRV9DTEFTUzwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjA8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TVEFJUlNfX0VWRUxPVkVTX0lOIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU1RBSVJTX19FVkVMT1ZFU19JTiI+U1RBSVJTX19FVkVMT1ZFU19JTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TVEFJUlNfX0hBU19TVVJGQUNFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU1RBSVJTX19IQVNfU1VSRkFDRSI+U1RBSVJTX19IQVNfU1VSRkFDRTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TVEFJUlNfRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NUQUlSU19GRUFUVVJFX0NPVU5UIj5TVEFJUlNfRkVBVFVSRV9DT1VOVDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjM8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TVEFURSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NUQVRFIj5TVEFURTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjMxPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU1RBVEVfX0FSR1VNRU5UUyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NUQVRFX19BUkdVTUVOVFMiPlNUQVRFX19BUkdVTUVOVFM8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU1RBVEVfX0JBU0VfU1RBVEUiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTVEFURV9fQkFTRV9TVEFURSI+U1RBVEVfX0JBU0VfU1RBVEU8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4wPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU1RBVEVfX09QRVJBVElPTiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NUQVRFX19PUEVSQVRJT04iPlNUQVRFX19PUEVSQVRJT048L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU1RBVEVfRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NUQVRFX0ZFQVRVUkVfQ09VTlQiPlNUQVRFX0ZFQVRVUkVfQ09VTlQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU1VSRkFDRSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NVUkZBQ0UiPlNVUkZBQ0U8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT43PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU1VSRkFDRV9fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NVUkZBQ0VfX0JBU0VfQ0xBU1MiPlNVUkZBQ0VfX0JBU0VfQ0xBU1M8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4wPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU1VSRkFDRV9fRVZFTE9WRVNfSU4iPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTVVJGQUNFX19FVkVMT1ZFU19JTiI+U1VSRkFDRV9fRVZFTE9WRVNfSU48L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU1VSRkFDRV9fSEFTX1NVUkZBQ0UiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTVVJGQUNFX19IQVNfU1VSRkFDRSI+U1VSRkFDRV9fSEFTX1NVUkZBQ0U8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU1VSRkFDRV9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU1VSRkFDRV9GRUFUVVJFX0NPVU5UIj5TVVJGQUNFX0ZFQVRVUkVfQ09VTlQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU1lOQ0hST05JWkFUSU9OX0tJTkQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTWU5DSFJPTklaQVRJT05fS0lORCI+U1lOQ0hST05JWkFUSU9OX0tJTkQ8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT41MDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNZU1RFTSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NZU1RFTSI+U1lTVEVNPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MzwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNZU1RFTV9fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NZU1RFTV9fQkFTRV9DTEFTUyI+U1lTVEVNX19CQVNFX0NMQVNTPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNZU1RFTV9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPlNZU1RFTV9GRUFUVVJFX0NPVU5UPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlRSQU5TSVRJT04iPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNUUkFOU0lUSU9OIj5UUkFOU0lUSU9OPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlRSQU5TSVRJT05fX0JBU0VfVFJBTlNJVElPTiI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1RSQU5TSVRJT05fX0JBU0VfVFJBTlNJVElPTiI+VFJBTlNJVElPTl9fQkFTRV9UUkFOU0lUSU9OPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlRSQU5TSVRJT05fX0VGRkVDVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1RSQU5TSVRJT05fX0VGRkVDVCI+VFJBTlNJVElPTl9fRUZGRUNUPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlRSQU5TSVRJT05fX0dVQVJEIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjVFJBTlNJVElPTl9fR1VBUkQiPlRSQU5TSVRJT05fX0dVQVJEPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlRSQU5TSVRJT05fRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1RSQU5TSVRJT05fRkVBVFVSRV9DT1VOVCI+VFJBTlNJVElPTl9GRUFUVVJFX0NPVU5UPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MzwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlVHVl9LSU5EIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjVUdWX0tJTkQiPlVHVl9LSU5EPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NDk8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5VTklUX0tJTkQiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNVTklUX0tJTkQiPlVOSVRfS0lORDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjUzPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuV0FURVJfU1VSRkFDRSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dBVEVSX1NVUkZBQ0UiPldBVEVSX1NVUkZBQ0U8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4zODwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLldBVEVSX1NVUkZBQ0VfX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXQVRFUl9TVVJGQUNFX19CQVNFX0NMQVNTIj5XQVRFUl9TVVJGQUNFX19CQVNFX0NMQVNTPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLldBVEVSX1NVUkZBQ0VfX0VWRUxPVkVTX0lOIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0FURVJfU1VSRkFDRV9fRVZFTE9WRVNfSU4iPldBVEVSX1NVUkZBQ0VfX0VWRUxPVkVTX0lOPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLldBVEVSX1NVUkZBQ0VfX0hBU19TVVJGQUNFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0FURVJfU1VSRkFDRV9fSEFTX1NVUkZBQ0UiPldBVEVSX1NVUkZBQ0VfX0hBU19TVVJGQUNFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLldBVEVSX1NVUkZBQ0VfRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dBVEVSX1NVUkZBQ0VfRkVBVFVSRV9DT1VOVCI+V0FURVJfU1VSRkFDRV9GRUFUVVJFX0NPVU5UPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MzwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLldIRUVMX1NZU1RFTSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTSI+V0hFRUxfU1lTVEVNPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MjE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5XSEVFTF9TWVNURU1fX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXSEVFTF9TWVNURU1fX0JBU0VfQ0xBU1MiPldIRUVMX1NZU1RFTV9fQkFTRV9DTEFTUzwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjA8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5XSEVFTF9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0hFRUxfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+V0hFRUxfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjI8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5XSEVFTF9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0hFRUxfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+V0hFRUxfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5XSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fQ09NUFJFU1NJT04iPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fQ09NUFJFU1NJT04iPldIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9DT01QUkVTU0lPTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE2PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0RBTVBJTkciPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fREFNUElORyI+V0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0RBTVBJTkc8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xNTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLldIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9SRVNUX0xFTkdUSCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9SRVNUX0xFTkdUSCI+V0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX1JFU1RfTEVOR1RIPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+NTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLldIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9TVElGRk5FU1MiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fU1RJRkZORVNTIj5XSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fU1RJRkZORVNTPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTQ8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5XSEVFTF9TWVNURU1fX1RZUEVfT0ZfV0hFRUwiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXSEVFTF9TWVNURU1fX1RZUEVfT0ZfV0hFRUwiPldIRUVMX1NZU1RFTV9fVFlQRV9PRl9XSEVFTDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjc8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5XSEVFTF9TWVNURU1fX1dIRUVMX0NPTk5FQ1RJT05fSEVJR0hUIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0hFRUxfU1lTVEVNX19XSEVFTF9DT05ORUNUSU9OX0hFSUdIVCI+V0hFRUxfU1lTVEVNX19XSEVFTF9DT05ORUNUSU9OX0hFSUdIVDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjY8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5XSEVFTF9TWVNURU1fX1dIRUVMX0ZSSUNUSU9OIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0hFRUxfU1lTVEVNX19XSEVFTF9GUklDVElPTiI+V0hFRUxfU1lTVEVNX19XSEVFTF9GUklDVElPTjwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjEzPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuV0hFRUxfU1lTVEVNX19XSEVFTF9SQURJVVMiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXSEVFTF9TWVNURU1fX1dIRUVMX1JBRElVUyI+V0hFRUxfU1lTVEVNX19XSEVFTF9SQURJVVM8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuV0hFRUxfU1lTVEVNX19XSEVFTF9TVEVFUklOR19QSV9ES0QiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXSEVFTF9TWVNURU1fX1dIRUVMX1NURUVSSU5HX1BJX0RLRCI+V0hFRUxfU1lTVEVNX19XSEVFTF9TVEVFUklOR19QSV9ES0Q8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xMjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLldIRUVMX1NZU1RFTV9fV0hFRUxfU1RFRVJJTkdfUElfREtQIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0hFRUxfU1lTVEVNX19XSEVFTF9TVEVFUklOR19QSV9ES1AiPldIRUVMX1NZU1RFTV9fV0hFRUxfU1RFRVJJTkdfUElfREtQPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLRCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtEIj5XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLRDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjEwPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ES0kiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLSSI+V0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ES0k8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT45PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ES1AiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLUCI+V0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ES1A8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT44PC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1NVTSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9TVU0iPldIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9TVU08L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xNzwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLldIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9WQUwiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RNQVhfVkFMIj5XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RNQVhfVkFMPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTg8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5XSEVFTF9TWVNURU1fX1dIRUVMX1dJRFRIIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0hFRUxfU1lTVEVNX19XSEVFTF9XSURUSCI+V0hFRUxfU1lTVEVNX19XSEVFTF9XSURUSDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjQ8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5XSEVFTF9TWVNURU1fRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj5XSEVFTF9TWVNURU1fRkVBVFVSRV9DT1VOVDwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKworPFA+CisKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMyI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlRmxvd0tpbmQ8L0E+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlRmxvd0tpbmQuUFJPVklERURfVkFMVUUiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwjUFJPVklERURfVkFMVUUiPlBST1ZJREVEX1ZBTFVFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlcnZpY2VGbG93S2luZC5SRVFVSVJFRF9WQUxVRSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCNSRVFVSVJFRF9WQUxVRSI+UkVRVUlSRURfVkFMVUU8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKworPFA+CisKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMyI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2hhZGUuQk9VTkRCT1hfVkFMVUUiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCNCT1VOREJPWF9WQUxVRSI+Qk9VTkRCT1hfVkFMVUU8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2hhZGUuU09MSURfVkFMVUUiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCNTT0xJRF9WQUxVRSI+U09MSURfVkFMVUU8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4yPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2hhZGUuVEVYVFVSRURfVkFMVUUiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCNURVhUVVJFRF9WQUxVRSI+VEVYVFVSRURfVkFMVUU8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2hhZGUuV0lSRUZSQU1FX1ZBTFVFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwjV0lSRUZSQU1FX1ZBTFVFIj5XSVJFRlJBTUVfVkFMVUU8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4wPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKworPFA+CisKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMyI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5bmNocm9uaXphdGlvbktpbmQuQVNZTkNIX1ZBTFVFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCNBU1lOQ0hfVkFMVUUiPkFTWU5DSF9WQUxVRTwvQT48L0NPREU+PC9URD4KKzxURCBBTElHTj0icmlnaHQiPjxDT0RFPjE8L0NPREU+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeW5jaHJvbml6YXRpb25LaW5kLlNZTkNIX1ZBTFVFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCNTWU5DSF9WQUxVRSI+U1lOQ0hfVkFMVUU8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4wPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3luY2hyb25pemF0aW9uS2luZC5VTkRFRklORURfVkFMVUUiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sI1VOREVGSU5FRF9WQUxVRSI+VU5ERUZJTkVEX1ZBTFVFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MjwvQ09ERT48L1REPgorPC9UUj4KKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+CisKKzxQPgorCis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjMiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVHVktpbmQ8L0E+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5VR1ZLaW5kLkNBUl9WQUxVRSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwjQ0FSX1ZBTFVFIj5DQVJfVkFMVUU8L0E+PC9DT0RFPjwvVEQ+Cis8VEQgQUxJR049InJpZ2h0Ij48Q09ERT4xPC9DT0RFPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVUdWS2luZC5ESUZGRVJFTlRJQUxfVkFMVUUiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sI0RJRkZFUkVOVElBTF9WQUxVRSI+RElGRkVSRU5USUFMX1ZBTFVFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MDwvQ09ERT48L1REPgorPC9UUj4KKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+CisKKzxQPgorCis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjMiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Vbml0S2luZDwvQT48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlVuaXRLaW5kLkRFR1JFRV9WQUxVRSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sI0RFR1JFRV9WQUxVRSI+REVHUkVFX1ZBTFVFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MjwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlVuaXRLaW5kLklOQ0hfVkFMVUUiPjwhLS0gLS0+PC9BPjxURCBBTElHTj0icmlnaHQiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnB1YmxpYyZuYnNwO3N0YXRpYyZuYnNwO2ZpbmFsJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREIEFMSUdOPSJsZWZ0Ij48Q09ERT48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCNJTkNIX1ZBTFVFIj5JTkNIX1ZBTFVFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MDwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlVuaXRLaW5kLk1FVEVSX1ZBTFVFIj48IS0tIC0tPjwvQT48VEQgQUxJR049InJpZ2h0Ij48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5wdWJsaWMmbmJzcDtzdGF0aWMmbmJzcDtmaW5hbCZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURCBBTElHTj0ibGVmdCI+PENPREU+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjTUVURVJfVkFMVUUiPk1FVEVSX1ZBTFVFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MTwvQ09ERT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlVuaXRLaW5kLlJBRElBTl9WQUxVRSI+PCEtLSAtLT48L0E+PFREIEFMSUdOPSJyaWdodCI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+cHVibGljJm5ic3A7c3RhdGljJm5ic3A7ZmluYWwmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQgQUxJR049ImxlZnQiPjxDT0RFPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sI1JBRElBTl9WQUxVRSI+UkFESUFOX1ZBTFVFPC9BPjwvQ09ERT48L1REPgorPFREIEFMSUdOPSJyaWdodCI+PENPREU+MzwvQ09ERT48L1REPgorPC9UUj4KKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+CisKKzxQPgorCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Im92ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJvdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJkZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImluZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJoZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9ImluZGV4Lmh0bWw/Y29uc3RhbnQtdmFsdWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iY29uc3RhbnQtdmFsdWVzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9ImFsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2RlcHJlY2F0ZWQtbGlzdC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9kZXByZWNhdGVkLWxpc3QuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMWY5MmU1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9kZXByZWNhdGVkLWxpc3QuaHRtbApAQCAtMCwwICsxLDE4NyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMzIENFVCAyMDEyIC0tPgorPFRJVExFPgorRGVwcmVjYXRlZCBMaXN0Cis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSJzdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iRGVwcmVjYXRlZCBMaXN0IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJvdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0ib3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImhlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iaW5kZXguaHRtbD9kZXByZWNhdGVkLWxpc3QuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJkZXByZWNhdGVkLWxpc3QuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSJhbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+RGVwcmVjYXRlZCBBUEk8L0I+PC9IMj4KKzwvQ0VOVEVSPgorPEhSIFNJWkU9IjQiIE5PU0hBREU+Cis8Qj5Db250ZW50czwvQj48VUw+Cis8TEk+PEEgSFJFRj0iI21ldGhvZCI+RGVwcmVjYXRlZCBNZXRob2RzPC9BPgorPC9VTD4KKworPEEgTkFNRT0ibWV0aG9kIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RGVwcmVjYXRlZCBNZXRob2RzPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNnZXRQYWNrYWdlKCkiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuZ2V0UGFja2FnZSgpPC9BPgorPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PEk+PC9JPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjZ2V0UGFja2FnZSgpIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MRmFjdG9yeUltcGwuZ2V0UGFja2FnZSgpPC9BPgorPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PEk+PC9JPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNnZXRQYWNrYWdlKCkiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmdldFBhY2thZ2UoKTwvQT4KKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxJPjwvST4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2dldFBhY2thZ2UoKSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmdldFBhY2thZ2UoKTwvQT4KKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxJPjwvST4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjZ2V0UGFja2FnZSgpIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsLk5hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5nZXRQYWNrYWdlKCk8L0E+Cis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8ST48L0k+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2dldFBhY2thZ2UoKSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuZ2V0UGFja2FnZSgpPC9BPgorPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PEk+PC9JPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNnZXRQYWNrYWdlKCkiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmdldFBhY2thZ2UoKTwvQT4KKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxJPjwvST4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0ib3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Im92ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImluZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJoZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9ImluZGV4Lmh0bWw/ZGVwcmVjYXRlZC1saXN0Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iZGVwcmVjYXRlZC1saXN0Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9ImFsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2hlbHAtZG9jLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2hlbHAtZG9jLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjdmOTg4OAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaGVscC1kb2MuaHRtbApAQCAtMCwwICsxLDIxOSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMzIENFVCAyMDEyIC0tPgorPFRJVExFPgorQVBJIEhlbHAKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9InN0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJBUEkgSGVscCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0ib3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Im92ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImRlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+SGVscDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSJpbmRleC5odG1sP2hlbHAtZG9jLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaGVscC1kb2MuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSJhbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgxPgorSG93IFRoaXMgQVBJIERvY3VtZW50IElzIE9yZ2FuaXplZDwvSDE+Cis8L0NFTlRFUj4KK1RoaXMgQVBJIChBcHBsaWNhdGlvbiBQcm9ncmFtbWluZyBJbnRlcmZhY2UpIGRvY3VtZW50IGhhcyBwYWdlcyBjb3JyZXNwb25kaW5nIHRvIHRoZSBpdGVtcyBpbiB0aGUgbmF2aWdhdGlvbiBiYXIsIGRlc2NyaWJlZCBhcyBmb2xsb3dzLjxIMz4KK092ZXJ2aWV3PC9IMz4KKzxCTE9DS1FVT1RFPgorCis8UD4KK1RoZSA8QSBIUkVGPSJvdmVydmlldy1zdW1tYXJ5Lmh0bWwiPk92ZXJ2aWV3PC9BPiBwYWdlIGlzIHRoZSBmcm9udCBwYWdlIG9mIHRoaXMgQVBJIGRvY3VtZW50IGFuZCBwcm92aWRlcyBhIGxpc3Qgb2YgYWxsIHBhY2thZ2VzIHdpdGggYSBzdW1tYXJ5IGZvciBlYWNoLiAgVGhpcyBwYWdlIGNhbiBhbHNvIGNvbnRhaW4gYW4gb3ZlcmFsbCBkZXNjcmlwdGlvbiBvZiB0aGUgc2V0IG9mIHBhY2thZ2VzLjwvQkxPQ0tRVU9URT4KKzxIMz4KK1BhY2thZ2U8L0gzPgorPEJMT0NLUVVPVEU+CisKKzxQPgorRWFjaCBwYWNrYWdlIGhhcyBhIHBhZ2UgdGhhdCBjb250YWlucyBhIGxpc3Qgb2YgaXRzIGNsYXNzZXMgYW5kIGludGVyZmFjZXMsIHdpdGggYSBzdW1tYXJ5IGZvciBlYWNoLiBUaGlzIHBhZ2UgY2FuIGNvbnRhaW4gZm91ciBjYXRlZ29yaWVzOjxVTD4KKzxMST5JbnRlcmZhY2VzIChpdGFsaWMpPExJPkNsYXNzZXM8TEk+RW51bXM8TEk+RXhjZXB0aW9uczxMST5FcnJvcnM8TEk+QW5ub3RhdGlvbiBUeXBlczwvVUw+Cis8L0JMT0NLUVVPVEU+Cis8SDM+CitDbGFzcy9JbnRlcmZhY2U8L0gzPgorPEJMT0NLUVVPVEU+CisKKzxQPgorRWFjaCBjbGFzcywgaW50ZXJmYWNlLCBuZXN0ZWQgY2xhc3MgYW5kIG5lc3RlZCBpbnRlcmZhY2UgaGFzIGl0cyBvd24gc2VwYXJhdGUgcGFnZS4gRWFjaCBvZiB0aGVzZSBwYWdlcyBoYXMgdGhyZWUgc2VjdGlvbnMgY29uc2lzdGluZyBvZiBhIGNsYXNzL2ludGVyZmFjZSBkZXNjcmlwdGlvbiwgc3VtbWFyeSB0YWJsZXMsIGFuZCBkZXRhaWxlZCBtZW1iZXIgZGVzY3JpcHRpb25zOjxVTD4KKzxMST5DbGFzcyBpbmhlcml0YW5jZSBkaWFncmFtPExJPkRpcmVjdCBTdWJjbGFzc2VzPExJPkFsbCBLbm93biBTdWJpbnRlcmZhY2VzPExJPkFsbCBLbm93biBJbXBsZW1lbnRpbmcgQ2xhc3NlczxMST5DbGFzcy9pbnRlcmZhY2UgZGVjbGFyYXRpb248TEk+Q2xhc3MvaW50ZXJmYWNlIGRlc2NyaXB0aW9uCis8UD4KKzxMST5OZXN0ZWQgQ2xhc3MgU3VtbWFyeTxMST5GaWVsZCBTdW1tYXJ5PExJPkNvbnN0cnVjdG9yIFN1bW1hcnk8TEk+TWV0aG9kIFN1bW1hcnkKKzxQPgorPExJPkZpZWxkIERldGFpbDxMST5Db25zdHJ1Y3RvciBEZXRhaWw8TEk+TWV0aG9kIERldGFpbDwvVUw+CitFYWNoIHN1bW1hcnkgZW50cnkgY29udGFpbnMgdGhlIGZpcnN0IHNlbnRlbmNlIGZyb20gdGhlIGRldGFpbGVkIGRlc2NyaXB0aW9uIGZvciB0aGF0IGl0ZW0uIFRoZSBzdW1tYXJ5IGVudHJpZXMgYXJlIGFscGhhYmV0aWNhbCwgd2hpbGUgdGhlIGRldGFpbGVkIGRlc2NyaXB0aW9ucyBhcmUgaW4gdGhlIG9yZGVyIHRoZXkgYXBwZWFyIGluIHRoZSBzb3VyY2UgY29kZS4gVGhpcyBwcmVzZXJ2ZXMgdGhlIGxvZ2ljYWwgZ3JvdXBpbmdzIGVzdGFibGlzaGVkIGJ5IHRoZSBwcm9ncmFtbWVyLjwvQkxPQ0tRVU9URT4KKzwvQkxPQ0tRVU9URT4KKzxIMz4KK0Fubm90YXRpb24gVHlwZTwvSDM+Cis8QkxPQ0tRVU9URT4KKworPFA+CitFYWNoIGFubm90YXRpb24gdHlwZSBoYXMgaXRzIG93biBzZXBhcmF0ZSBwYWdlIHdpdGggdGhlIGZvbGxvd2luZyBzZWN0aW9uczo8VUw+Cis8TEk+QW5ub3RhdGlvbiBUeXBlIGRlY2xhcmF0aW9uPExJPkFubm90YXRpb24gVHlwZSBkZXNjcmlwdGlvbjxMST5SZXF1aXJlZCBFbGVtZW50IFN1bW1hcnk8TEk+T3B0aW9uYWwgRWxlbWVudCBTdW1tYXJ5PExJPkVsZW1lbnQgRGV0YWlsPC9VTD4KKzwvQkxPQ0tRVU9URT4KKzwvQkxPQ0tRVU9URT4KKzxIMz4KK0VudW08L0gzPgorPEJMT0NLUVVPVEU+CisKKzxQPgorRWFjaCBlbnVtIGhhcyBpdHMgb3duIHNlcGFyYXRlIHBhZ2Ugd2l0aCB0aGUgZm9sbG93aW5nIHNlY3Rpb25zOjxVTD4KKzxMST5FbnVtIGRlY2xhcmF0aW9uPExJPkVudW0gZGVzY3JpcHRpb248TEk+RW51bSBDb25zdGFudCBTdW1tYXJ5PExJPkVudW0gQ29uc3RhbnQgRGV0YWlsPC9VTD4KKzwvQkxPQ0tRVU9URT4KKzxIMz4KK1VzZTwvSDM+Cis8QkxPQ0tRVU9URT4KK0VhY2ggZG9jdW1lbnRlZCBwYWNrYWdlLCBjbGFzcyBhbmQgaW50ZXJmYWNlIGhhcyBpdHMgb3duIFVzZSBwYWdlLiAgVGhpcyBwYWdlIGRlc2NyaWJlcyB3aGF0IHBhY2thZ2VzLCBjbGFzc2VzLCBtZXRob2RzLCBjb25zdHJ1Y3RvcnMgYW5kIGZpZWxkcyB1c2UgYW55IHBhcnQgb2YgdGhlIGdpdmVuIGNsYXNzIG9yIHBhY2thZ2UuIEdpdmVuIGEgY2xhc3Mgb3IgaW50ZXJmYWNlIEEsIGl0cyBVc2UgcGFnZSBpbmNsdWRlcyBzdWJjbGFzc2VzIG9mIEEsIGZpZWxkcyBkZWNsYXJlZCBhcyBBLCBtZXRob2RzIHRoYXQgcmV0dXJuIEEsIGFuZCBtZXRob2RzIGFuZCBjb25zdHJ1Y3RvcnMgd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgQS4gIFlvdSBjYW4gYWNjZXNzIHRoaXMgcGFnZSBieSBmaXJzdCBnb2luZyB0byB0aGUgcGFja2FnZSwgY2xhc3Mgb3IgaW50ZXJmYWNlLCB0aGVuIGNsaWNraW5nIG9uIHRoZSAiVXNlIiBsaW5rIGluIHRoZSBuYXZpZ2F0aW9uIGJhci48L0JMT0NLUVVPVEU+Cis8SDM+CitUcmVlIChDbGFzcyBIaWVyYXJjaHkpPC9IMz4KKzxCTE9DS1FVT1RFPgorVGhlcmUgaXMgYSA8QSBIUkVGPSJvdmVydmlldy10cmVlLmh0bWwiPkNsYXNzIEhpZXJhcmNoeTwvQT4gcGFnZSBmb3IgYWxsIHBhY2thZ2VzLCBwbHVzIGEgaGllcmFyY2h5IGZvciBlYWNoIHBhY2thZ2UuIEVhY2ggaGllcmFyY2h5IHBhZ2UgY29udGFpbnMgYSBsaXN0IG9mIGNsYXNzZXMgYW5kIGEgbGlzdCBvZiBpbnRlcmZhY2VzLiBUaGUgY2xhc3NlcyBhcmUgb3JnYW5pemVkIGJ5IGluaGVyaXRhbmNlIHN0cnVjdHVyZSBzdGFydGluZyB3aXRoIDxjb2RlPmphdmEubGFuZy5PYmplY3Q8L2NvZGU+LiBUaGUgaW50ZXJmYWNlcyBkbyBub3QgaW5oZXJpdCBmcm9tIDxjb2RlPmphdmEubGFuZy5PYmplY3Q8L2NvZGU+LjxVTD4KKzxMST5XaGVuIHZpZXdpbmcgdGhlIE92ZXJ2aWV3IHBhZ2UsIGNsaWNraW5nIG9uICJUcmVlIiBkaXNwbGF5cyB0aGUgaGllcmFyY2h5IGZvciBhbGwgcGFja2FnZXMuPExJPldoZW4gdmlld2luZyBhIHBhcnRpY3VsYXIgcGFja2FnZSwgY2xhc3Mgb3IgaW50ZXJmYWNlIHBhZ2UsIGNsaWNraW5nICJUcmVlIiBkaXNwbGF5cyB0aGUgaGllcmFyY2h5IGZvciBvbmx5IHRoYXQgcGFja2FnZS48L1VMPgorPC9CTE9DS1FVT1RFPgorPEgzPgorRGVwcmVjYXRlZCBBUEk8L0gzPgorPEJMT0NLUVVPVEU+CitUaGUgPEEgSFJFRj0iZGVwcmVjYXRlZC1saXN0Lmh0bWwiPkRlcHJlY2F0ZWQgQVBJPC9BPiBwYWdlIGxpc3RzIGFsbCBvZiB0aGUgQVBJIHRoYXQgaGF2ZSBiZWVuIGRlcHJlY2F0ZWQuIEEgZGVwcmVjYXRlZCBBUEkgaXMgbm90IHJlY29tbWVuZGVkIGZvciB1c2UsIGdlbmVyYWxseSBkdWUgdG8gaW1wcm92ZW1lbnRzLCBhbmQgYSByZXBsYWNlbWVudCBBUEkgaXMgdXN1YWxseSBnaXZlbi4gRGVwcmVjYXRlZCBBUElzIG1heSBiZSByZW1vdmVkIGluIGZ1dHVyZSBpbXBsZW1lbnRhdGlvbnMuPC9CTE9DS1FVT1RFPgorPEgzPgorSW5kZXg8L0gzPgorPEJMT0NLUVVPVEU+CitUaGUgPEEgSFJFRj0iaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj5JbmRleDwvQT4gY29udGFpbnMgYW4gYWxwaGFiZXRpYyBsaXN0IG9mIGFsbCBjbGFzc2VzLCBpbnRlcmZhY2VzLCBjb25zdHJ1Y3RvcnMsIG1ldGhvZHMsIGFuZCBmaWVsZHMuPC9CTE9DS1FVT1RFPgorPEgzPgorUHJldi9OZXh0PC9IMz4KK1RoZXNlIGxpbmtzIHRha2UgeW91IHRvIHRoZSBuZXh0IG9yIHByZXZpb3VzIGNsYXNzLCBpbnRlcmZhY2UsIHBhY2thZ2UsIG9yIHJlbGF0ZWQgcGFnZS48SDM+CitGcmFtZXMvTm8gRnJhbWVzPC9IMz4KK1RoZXNlIGxpbmtzIHNob3cgYW5kIGhpZGUgdGhlIEhUTUwgZnJhbWVzLiAgQWxsIHBhZ2VzIGFyZSBhdmFpbGFibGUgd2l0aCBvciB3aXRob3V0IGZyYW1lcy4KKzxQPgorPEgzPgorU2VyaWFsaXplZCBGb3JtPC9IMz4KK0VhY2ggc2VyaWFsaXphYmxlIG9yIGV4dGVybmFsaXphYmxlIGNsYXNzIGhhcyBhIGRlc2NyaXB0aW9uIG9mIGl0cyBzZXJpYWxpemF0aW9uIGZpZWxkcyBhbmQgbWV0aG9kcy4gVGhpcyBpbmZvcm1hdGlvbiBpcyBvZiBpbnRlcmVzdCB0byByZS1pbXBsZW1lbnRvcnMsIG5vdCB0byBkZXZlbG9wZXJzIHVzaW5nIHRoZSBBUEkuIFdoaWxlIHRoZXJlIGlzIG5vIGxpbmsgaW4gdGhlIG5hdmlnYXRpb24gYmFyLCB5b3UgY2FuIGdldCB0byB0aGlzIGluZm9ybWF0aW9uIGJ5IGdvaW5nIHRvIGFueSBzZXJpYWxpemVkIGNsYXNzIGFuZCBjbGlja2luZyAiU2VyaWFsaXplZCBGb3JtIiBpbiB0aGUgIlNlZSBhbHNvIiBzZWN0aW9uIG9mIHRoZSBjbGFzcyBkZXNjcmlwdGlvbi4KKzxQPgorPEgzPgorQ29uc3RhbnQgRmllbGQgVmFsdWVzPC9IMz4KK1RoZSA8YSBocmVmPSJjb25zdGFudC12YWx1ZXMuaHRtbCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9hPiBwYWdlIGxpc3RzIHRoZSBzdGF0aWMgZmluYWwgZmllbGRzIGFuZCB0aGVpciB2YWx1ZXMuCis8UD4KKzxGT05UIFNJWkU9Ii0xIj4KKzxFTT4KK1RoaXMgaGVscCBmaWxlIGFwcGxpZXMgdG8gQVBJIGRvY3VtZW50YXRpb24gZ2VuZXJhdGVkIHVzaW5nIHRoZSBzdGFuZGFyZCBkb2NsZXQuPC9FTT4KKzwvRk9OVD4KKzxCUj4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Im92ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJvdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJkZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImluZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkhlbHA8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iaW5kZXguaHRtbD9oZWxwLWRvYy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImhlbHAtZG9jLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9ImFsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZlNmEyZDQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbApAQCAtMCwwICsxLDI1MyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMzIENFVCAyMDEyIC0tPgorPFRJVExFPgorQS1JbmRleAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkEtSW5kZXgiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+SW5kZXg8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYgTEVUVEVSJm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0yLmh0bWwiPjxCPk5FWFQgTEVUVEVSPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uL2luZGV4Lmh0bWw/aW5kZXgtZmlsZXNpbmRleC0xLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5CPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkM8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5FPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPko8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPks8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPkw8L0E+IDxBIEhSRUY9ImluZGV4LTEzLmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTE0Lmh0bWwiPk48L0E+IDxBIEhSRUY9ImluZGV4LTE1Lmh0bWwiPk88L0E+IDxBIEhSRUY9ImluZGV4LTE2Lmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTE3Lmh0bWwiPlE8L0E+IDxBIEhSRUY9ImluZGV4LTE4Lmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTE5Lmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTIwLmh0bWwiPlQ8L0E+IDxBIEhSRUY9ImluZGV4LTIxLmh0bWwiPlU8L0E+IDxBIEhSRUY9ImluZGV4LTIyLmh0bWwiPlY8L0E+IDxBIEhSRUY9ImluZGV4LTIzLmh0bWwiPlc8L0E+IDxIUj4KKzxBIE5BTUU9Il9BXyI+PCEtLSAtLT48L0E+PEgyPgorPEI+QTwvQj48L0gyPgorPERMPgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPjxCPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5PC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzPC9BPjxERD5UaGUgPGI+RmFjdG9yeTwvYj4gZm9yIHRoZSBtb2RlbC48RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwiPjxCPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQj48L0E+IC0gQ2xhc3MgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbDwvQT48REQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPkZhY3Rvcnk8L2I+PERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsKCkiPjxCPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbCgpPC9CPjwvQT4gLSAKK0NvbnN0cnVjdG9yIGZvciBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsIj5BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+Q3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgZmFjdG9yeQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPjxCPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzPC9BPjxERD5UaGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoZSBtb2RlbC48RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+PEI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0I+PC9BPiAtIEludGVyZmFjZSBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXM8L0E+PEREPkRlZmluZXMgbGl0ZXJhbHMgZm9yIHRoZSBtZXRhIG9iamVjdHMgdGhhdCByZXByZXNlbnQKKyAKKyBlYWNoIGNsYXNzLAorIGVhY2ggZmVhdHVyZSBvZiBlYWNoIGNsYXNzLAorIGVhY2ggZW51bSwKKyBhbmQgZWFjaCBkYXRhIHR5cGUKKyAKKyA8ITxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbCI+PEI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsPC9BPjxERD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgPGI+UGFja2FnZTwvYj48RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzIj48Qj5BY3RpdmF0b3I8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzPC9BPjxERD5UaGUgYWN0aXZhdG9yIGNsYXNzIGNvbnRyb2xzIHRoZSBwbHVnLWluIGxpZmUgY3ljbGUuPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9BY3RpdmF0b3IuaHRtbCNBY3RpdmF0b3IoKSI+PEI+QWN0aXZhdG9yKCk8L0I+PC9BPiAtIAorQ29uc3RydWN0b3IgZm9yIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1cy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvQWN0aXZhdG9yLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMiPkFjdGl2YXRvcjwvQT4KKzxERD5UaGUgY29uc3RydWN0b3IuCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQUNUVUFUT1JfU1lTVEVNIj48Qj5BQ1RVQVRPUl9TWVNURU08L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWN0dWF0b3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkFjdHVhdG9yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQUNUVUFUT1JfU1lTVEVNIj48Qj5BQ1RVQVRPUl9TWVNURU08L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BY3R1YXRvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+QWN0dWF0b3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBQ1RVQVRPUl9TWVNURU1fX0JBU0VfQ0xBU1MiPjxCPkFDVFVBVE9SX1NZU1RFTV9fQkFTRV9DTEFTUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBQ1RVQVRPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj48Qj5BQ1RVQVRPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIE9yaWVudGF0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBQ1RVQVRPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj48Qj5BQ1RVQVRPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIFBvc2l0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBQ1RVQVRPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCI+PEI+QUNUVUFUT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+QWN0dWF0b3IgU3lzdGVtPC9lbT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdG9yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5BY3R1YXRvclN5c3RlbTwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjxERD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BY3R1YXRvciBTeXN0ZW08L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FjdHVhdG9yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkFjdHVhdG9yU3lzdGVtSW1wbDwvQj48L0E+IC0gQ2xhc3MgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjxERD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QWN0dWF0b3IgU3lzdGVtPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkFnZW50PC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFnZW50PC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBR0VOVCI+PEI+QUdFTlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkFnZW50PC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNBR0VOVCI+PEI+QUdFTlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+QWdlbnQ8L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FHRU5UX19CQVNFX0NMQVNTIj48Qj5BR0VOVF9fQkFTRV9DTEFTUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBR0VOVF9fRVZFTE9WRVNfSU4iPjxCPkFHRU5UX19FVkVMT1ZFU19JTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5FdmVsb3ZlcyBJbjwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3QKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBR0VOVF9fSEFTX1NVUkZBQ0UiPjxCPkFHRU5UX19IQVNfU1VSRkFDRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IYXMgU3VyZmFjZTwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQUdFTlRfX01PVkVTX09WRVIiPjxCPkFHRU5UX19NT1ZFU19PVkVSPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1vdmVzIE92ZXI8L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQUdFTlRfX01PVkVTX09WRVIiPjxCPkFHRU5UX19NT1ZFU19PVkVSPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPk1vdmVzIE92ZXI8L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0IGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBR0VOVF9GRUFUVVJFX0NPVU5UIj48Qj5BR0VOVF9GRUFUVVJFX0NPVU5UPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkFnZW50PC9lbT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+QWdlbnRJbXBsPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PEREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BZ2VudDwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+QWxnb3JpdGhtPC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFsZ29yaXRobTwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQUxHT1JJVEhNIj48Qj5BTEdPUklUSE08L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5BbGdvcml0aG08L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0FMR09SSVRITSI+PEI+QUxHT1JJVEhNPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5BbGdvcml0aG08L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FMR09SSVRITV9fQkFTRV9PUEVSQVRJT04iPjxCPkFMR09SSVRITV9fQkFTRV9PUEVSQVRJT048L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBPcGVyYXRpb248L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0FMR09SSVRITV9fQkFTRV9PUEVSQVRJT04iPjxCPkFMR09SSVRITV9fQkFTRV9PUEVSQVRJT048L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBPcGVyYXRpb248L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQUxHT1JJVEhNX19FWFRfRlVOQ1RJT05fTkFNRSI+PEI+QUxHT1JJVEhNX19FWFRfRlVOQ1RJT05fTkFNRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5FeHQgRnVuY3Rpb24gTmFtZTwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQUxHT1JJVEhNX19FWFRfRlVOQ1RJT05fTkFNRSI+PEI+QUxHT1JJVEhNX19FWFRfRlVOQ1RJT05fTkFNRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5FeHQgRnVuY3Rpb24gTmFtZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBTEdPUklUSE1fX0lTX0VYVEVSTkFMIj48Qj5BTEdPUklUSE1fX0lTX0VYVEVSTkFMPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPklzIEV4dGVybmFsPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNBTEdPUklUSE1fX0lTX0VYVEVSTkFMIj48Qj5BTEdPUklUSE1fX0lTX0VYVEVSTkFMPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPklzIEV4dGVybmFsPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FMR09SSVRITV9fUEFUSCI+PEI+QUxHT1JJVEhNX19QQVRIPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0FMR09SSVRITV9fUEFUSCI+PEI+QUxHT1JJVEhNX19QQVRIPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQUxHT1JJVEhNX0ZFQVRVUkVfQ09VTlQiPjxCPkFMR09SSVRITV9GRUFUVVJFX0NPVU5UPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkFsZ29yaXRobTwvZW0+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FMR09SSVRITV9MSUJSQVJZIj48Qj5BTEdPUklUSE1fTElCUkFSWTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1MaWJyYXJ5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5BbGdvcml0aG0gTGlicmFyeTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQUxHT1JJVEhNX0xJQlJBUlkiPjxCPkFMR09SSVRITV9MSUJSQVJZPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+QWxnb3JpdGhtIExpYnJhcnk8L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FMR09SSVRITV9MSUJSQVJZX19CQVNFX0NMQVNTIj48Qj5BTEdPUklUSE1fTElCUkFSWV9fQkFTRV9DTEFTUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNBTEdPUklUSE1fTElCUkFSWV9fQkFTRV9DTEFTUyI+PEI+QUxHT1JJVEhNX0xJQlJBUllfX0JBU0VfQ0xBU1M8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBTEdPUklUSE1fTElCUkFSWV9fUEFUSCI+PEI+QUxHT1JJVEhNX0xJQlJBUllfX1BBVEg8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UGF0aDwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQUxHT1JJVEhNX0xJQlJBUllfX1BBVEgiPjxCPkFMR09SSVRITV9MSUJSQVJZX19QQVRIPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQUxHT1JJVEhNX0xJQlJBUllfRkVBVFVSRV9DT1VOVCI+PEI+QUxHT1JJVEhNX0xJQlJBUllfRkVBVFVSRV9DT1VOVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5BbGdvcml0aG0gTGlicmFyeTwvZW0+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5BbGdvcml0aG1JbXBsPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PEREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BbGdvcml0aG08L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5BbGdvcml0aG1MaWJyYXJ5PC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFsZ29yaXRobSBMaWJyYXJ5PC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1MaWJyYXJ5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkFsZ29yaXRobUxpYnJhcnlJbXBsPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PEREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BbGdvcml0aG0gTGlicmFyeTwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sI0FST0NBTV9WQUxVRSI+PEI+QVJPQ0FNX1ZBTFVFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPgorPEREPlRoZSAnPGVtPjxiPkFST0NBTTwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwjQVNZTkNIX1ZBTFVFIj48Qj5BU1lOQ0hfVkFMVUU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT4KKzxERD5UaGUgJzxlbT48Yj5BU1lOQ0g8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUKKzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWIExFVFRFUiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMi5odG1sIj48Qj5ORVhUIExFVFRFUjwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtMS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTEuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+QjwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5DPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+RTwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5KPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5LPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5MPC9BPiA8QSBIUkVGPSJpbmRleC0xMy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC0xNC5odG1sIj5OPC9BPiA8QSBIUkVGPSJpbmRleC0xNS5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC0xNi5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xNy5odG1sIj5RPC9BPiA8QSBIUkVGPSJpbmRleC0xOC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xOS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0yMC5odG1sIj5UPC9BPiA8QSBIUkVGPSJpbmRleC0yMS5odG1sIj5VPC9BPiA8QSBIUkVGPSJpbmRleC0yMi5odG1sIj5WPC9BPiA8QSBIUkVGPSJpbmRleC0yMy5odG1sIj5XPC9BPiA8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMTAuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMTAuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mYThiYjk5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC0xMC5odG1sCkBAIC0wLDAgKzEsMTYyIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzMgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitKLUluZGV4Cis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iSi1JbmRleCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtOS5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0xMS5odG1sIj48Qj5ORVhUIExFVFRFUjwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtMTAuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0xMC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5CPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkM8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5FPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPko8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPks8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPkw8L0E+IDxBIEhSRUY9ImluZGV4LTEzLmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTE0Lmh0bWwiPk48L0E+IDxBIEhSRUY9ImluZGV4LTE1Lmh0bWwiPk88L0E+IDxBIEhSRUY9ImluZGV4LTE2Lmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTE3Lmh0bWwiPlE8L0E+IDxBIEhSRUY9ImluZGV4LTE4Lmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTE5Lmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTIwLmh0bWwiPlQ8L0E+IDxBIEhSRUY9ImluZGV4LTIxLmh0bWwiPlU8L0E+IDxBIEhSRUY9ImluZGV4LTIyLmh0bWwiPlY8L0E+IDxBIEhSRUY9ImluZGV4LTIzLmh0bWwiPlc8L0E+IDxIUj4KKzxBIE5BTUU9Il9KXyI+PCEtLSAtLT48L0E+PEgyPgorPEI+SjwvQj48L0gyPgorPERMPgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjSk9JTlRfU1RBVEUiPjxCPkpPSU5UX1NUQVRFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Kb2ludCBTdGF0ZTwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI0pPSU5UX1NUQVRFIj48Qj5KT0lOVF9TVEFURTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Kb2ludCBTdGF0ZTwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI0pPWSI+PEI+Sk9ZPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Kb3k8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNKT1kiPjxCPkpPWTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Kb3k8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNKT1lfRkVFREJBQ0siPjxCPkpPWV9GRUVEQkFDSzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+Sm95IEZlZWRiYWNrPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjSk9ZX0ZFRURCQUNLIj48Qj5KT1lfRkVFREJBQ0s8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+Sm95IEZlZWRiYWNrPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjSk9ZX0ZFRURCQUNLX0FSUkFZIj48Qj5KT1lfRkVFREJBQ0tfQVJSQVk8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkpveSBGZWVkYmFjayBBcnJheTwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI0pPWV9GRUVEQkFDS19BUlJBWSI+PEI+Sk9ZX0ZFRURCQUNLX0FSUkFZPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkpveSBGZWVkYmFjayBBcnJheTwvZW0+JyBkYXRhIHR5cGUKKzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC05Lmh0bWwiPjxCPlBSRVYgTEVUVEVSPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTExLmh0bWwiPjxCPk5FWFQgTEVUVEVSPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uL2luZGV4Lmh0bWw/aW5kZXgtZmlsZXNpbmRleC0xMC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTEwLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEEgSFJFRj0iaW5kZXgtMS5odG1sIj5BPC9BPiA8QSBIUkVGPSJpbmRleC0yLmh0bWwiPkI8L0E+IDxBIEhSRUY9ImluZGV4LTMuaHRtbCI+QzwvQT4gPEEgSFJFRj0iaW5kZXgtNC5odG1sIj5EPC9BPiA8QSBIUkVGPSJpbmRleC01Lmh0bWwiPkU8L0E+IDxBIEhSRUY9ImluZGV4LTYuaHRtbCI+RjwvQT4gPEEgSFJFRj0iaW5kZXgtNy5odG1sIj5HPC9BPiA8QSBIUkVGPSJpbmRleC04Lmh0bWwiPkg8L0E+IDxBIEhSRUY9ImluZGV4LTkuaHRtbCI+STwvQT4gPEEgSFJFRj0iaW5kZXgtMTAuaHRtbCI+SjwvQT4gPEEgSFJFRj0iaW5kZXgtMTEuaHRtbCI+SzwvQT4gPEEgSFJFRj0iaW5kZXgtMTIuaHRtbCI+TDwvQT4gPEEgSFJFRj0iaW5kZXgtMTMuaHRtbCI+TTwvQT4gPEEgSFJFRj0iaW5kZXgtMTQuaHRtbCI+TjwvQT4gPEEgSFJFRj0iaW5kZXgtMTUuaHRtbCI+TzwvQT4gPEEgSFJFRj0iaW5kZXgtMTYuaHRtbCI+UDwvQT4gPEEgSFJFRj0iaW5kZXgtMTcuaHRtbCI+UTwvQT4gPEEgSFJFRj0iaW5kZXgtMTguaHRtbCI+UjwvQT4gPEEgSFJFRj0iaW5kZXgtMTkuaHRtbCI+UzwvQT4gPEEgSFJFRj0iaW5kZXgtMjAuaHRtbCI+VDwvQT4gPEEgSFJFRj0iaW5kZXgtMjEuaHRtbCI+VTwvQT4gPEEgSFJFRj0iaW5kZXgtMjIuaHRtbCI+VjwvQT4gPEEgSFJFRj0iaW5kZXgtMjMuaHRtbCI+VzwvQT4gPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2luZGV4LWZpbGVzL2luZGV4LTExLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2luZGV4LWZpbGVzL2luZGV4LTExLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjUzZWQ2MAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMTEuaHRtbApAQCAtMCwwICsxLDE0NCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMzIENFVCAyMDEyIC0tPgorPFRJVExFPgorSy1JbmRleAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkstSW5kZXgiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+SW5kZXg8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPjxCPlBSRVYgTEVUVEVSPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPjxCPk5FWFQgTEVUVEVSPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uL2luZGV4Lmh0bWw/aW5kZXgtZmlsZXNpbmRleC0xMS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTExLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEEgSFJFRj0iaW5kZXgtMS5odG1sIj5BPC9BPiA8QSBIUkVGPSJpbmRleC0yLmh0bWwiPkI8L0E+IDxBIEhSRUY9ImluZGV4LTMuaHRtbCI+QzwvQT4gPEEgSFJFRj0iaW5kZXgtNC5odG1sIj5EPC9BPiA8QSBIUkVGPSJpbmRleC01Lmh0bWwiPkU8L0E+IDxBIEhSRUY9ImluZGV4LTYuaHRtbCI+RjwvQT4gPEEgSFJFRj0iaW5kZXgtNy5odG1sIj5HPC9BPiA8QSBIUkVGPSJpbmRleC04Lmh0bWwiPkg8L0E+IDxBIEhSRUY9ImluZGV4LTkuaHRtbCI+STwvQT4gPEEgSFJFRj0iaW5kZXgtMTAuaHRtbCI+SjwvQT4gPEEgSFJFRj0iaW5kZXgtMTEuaHRtbCI+SzwvQT4gPEEgSFJFRj0iaW5kZXgtMTIuaHRtbCI+TDwvQT4gPEEgSFJFRj0iaW5kZXgtMTMuaHRtbCI+TTwvQT4gPEEgSFJFRj0iaW5kZXgtMTQuaHRtbCI+TjwvQT4gPEEgSFJFRj0iaW5kZXgtMTUuaHRtbCI+TzwvQT4gPEEgSFJFRj0iaW5kZXgtMTYuaHRtbCI+UDwvQT4gPEEgSFJFRj0iaW5kZXgtMTcuaHRtbCI+UTwvQT4gPEEgSFJFRj0iaW5kZXgtMTguaHRtbCI+UjwvQT4gPEEgSFJFRj0iaW5kZXgtMTkuaHRtbCI+UzwvQT4gPEEgSFJFRj0iaW5kZXgtMjAuaHRtbCI+VDwvQT4gPEEgSFJFRj0iaW5kZXgtMjEuaHRtbCI+VTwvQT4gPEEgSFJFRj0iaW5kZXgtMjIuaHRtbCI+VjwvQT4gPEEgSFJFRj0iaW5kZXgtMjMuaHRtbCI+VzwvQT4gPEhSPgorPEEgTkFNRT0iX0tfIj48IS0tIC0tPjwvQT48SDI+Cis8Qj5LPC9CPjwvSDI+Cis8REw+Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sI0tFWV9WQUxVRSI+PEI+S0VZX1ZBTFVFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPktleSBWYWx1ZTwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjS0VZX1ZBTFVFIj48Qj5LRVlfVkFMVUU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5LZXkgVmFsdWU8L2VtPicgZGF0YSB0eXBlCis8L0RMPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTAuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTIuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTExLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTEuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+QjwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5DPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+RTwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5KPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5LPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5MPC9BPiA8QSBIUkVGPSJpbmRleC0xMy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC0xNC5odG1sIj5OPC9BPiA8QSBIUkVGPSJpbmRleC0xNS5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC0xNi5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xNy5odG1sIj5RPC9BPiA8QSBIUkVGPSJpbmRleC0xOC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xOS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0yMC5odG1sIj5UPC9BPiA8QSBIUkVGPSJpbmRleC0yMS5odG1sIj5VPC9BPiA8QSBIUkVGPSJpbmRleC0yMi5odG1sIj5WPC9BPiA8QSBIUkVGPSJpbmRleC0yMy5odG1sIj5XPC9BPiA8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMTIuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMTIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZjZmZDE1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC0xMi5odG1sCkBAIC0wLDAgKzEsMjc2IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzMgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitMLUluZGV4Cis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iTC1JbmRleCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTEuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTMuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTEyLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTIuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+QjwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5DPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+RTwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5KPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5LPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5MPC9BPiA8QSBIUkVGPSJpbmRleC0xMy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC0xNC5odG1sIj5OPC9BPiA8QSBIUkVGPSJpbmRleC0xNS5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC0xNi5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xNy5odG1sIj5RPC9BPiA8QSBIUkVGPSJpbmRleC0xOC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xOS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0yMC5odG1sIj5UPC9BPiA8QSBIUkVGPSJpbmRleC0yMS5odG1sIj5VPC9BPiA8QSBIUkVGPSJpbmRleC0yMi5odG1sIj5WPC9BPiA8QSBIUkVGPSJpbmRleC0yMy5odG1sIj5XPC9BPiA8SFI+Cis8QSBOQU1FPSJfTF8iPjwhLS0gLS0+PC9BPjxIMj4KKzxCPkw8L0I+PC9IMj4KKzxETD4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMQU5EX1NVUkZBQ0UiPjxCPkxBTkRfU1VSRkFDRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MYW5kU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+TGFuZCBTdXJmYWNlPC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNMQU5EX1NVUkZBQ0UiPjxCPkxBTkRfU1VSRkFDRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xhbmRTdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5MYW5kIFN1cmZhY2U8L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xBTkRfU1VSRkFDRV9fQkFTRV9DTEFTUyI+PEI+TEFORF9TVVJGQUNFX19CQVNFX0NMQVNTPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xBTkRfU1VSRkFDRV9fRVZFTE9WRVNfSU4iPjxCPkxBTkRfU1VSRkFDRV9fRVZFTE9WRVNfSU48L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RXZlbG92ZXMgSW48L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTEFORF9TVVJGQUNFX19IQVNfU1VSRkFDRSI+PEI+TEFORF9TVVJGQUNFX19IQVNfU1VSRkFDRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IYXMgU3VyZmFjZTwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTEFORF9TVVJGQUNFX0ZFQVRVUkVfQ09VTlQiPjxCPkxBTkRfU1VSRkFDRV9GRUFUVVJFX0NPVU5UPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkxhbmQgU3VyZmFjZTwvZW0+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGFuZFN1cmZhY2U8L0I+PC9BPiAtIEludGVyZmFjZSBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48REQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TGFuZCBTdXJmYWNlPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MYW5kU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5MYW5kU3VyZmFjZUltcGw8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48REQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxhbmQgU3VyZmFjZTwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNMQVNFUl9TQ0FOIj48Qj5MQVNFUl9TQ0FOPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5MYXNlciBTY2FuPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjTEFTRVJfU0NBTiI+PEI+TEFTRVJfU0NBTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5MYXNlciBTY2FuPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xJREFSX1NZU1RFTSI+PEI+TElEQVJfU1lTVEVNPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5MaWRhciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0xJREFSX1NZU1RFTSI+PEI+TElEQVJfU1lTVEVNPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkxpZGFyIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTElEQVJfU1lTVEVNX19BTkdMRV9NQVgiPjxCPkxJREFSX1NZU1RFTV9fQU5HTEVfTUFYPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkFuZ2xlIG1heDwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjTElEQVJfU1lTVEVNX19BTkdMRV9NQVgiPjxCPkxJREFSX1NZU1RFTV9fQU5HTEVfTUFYPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkFuZ2xlIG1heDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX0FOR0xFX01JTiI+PEI+TElEQVJfU1lTVEVNX19BTkdMRV9NSU48L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QW5nbGUgbWluPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNMSURBUl9TWVNURU1fX0FOR0xFX01JTiI+PEI+TElEQVJfU1lTVEVNX19BTkdMRV9NSU48L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QW5nbGUgbWluPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xJREFSX1NZU1RFTV9fQkFTRV9DTEFTUyI+PEI+TElEQVJfU1lTVEVNX19CQVNFX0NMQVNTPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xJREFSX1NZU1RFTV9fRlJFUVVFTkNZIj48Qj5MSURBUl9TWVNURU1fX0ZSRVFVRU5DWTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5GcmVxdWVuY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xJREFSX1NZU1RFTV9fSURFTlRJRklFUiI+PEI+TElEQVJfU1lTVEVNX19JREVOVElGSUVSPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPklkZW50aWZpZXI8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xJREFSX1NZU1RFTV9fTEFZRVJfQU5HTEVfTUlOIj48Qj5MSURBUl9TWVNURU1fX0xBWUVSX0FOR0xFX01JTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MYXllciBBbmdsZSBNaW48L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0xJREFSX1NZU1RFTV9fTEFZRVJfQU5HTEVfTUlOIj48Qj5MSURBUl9TWVNURU1fX0xBWUVSX0FOR0xFX01JTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5MYXllciBBbmdsZSBNaW48L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTElEQVJfU1lTVEVNX19MQVlFUl9BTkdMRV9TVEVQIj48Qj5MSURBUl9TWVNURU1fX0xBWUVSX0FOR0xFX1NURVA8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGF5ZXIgQW5nbGUgU3RlcDwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjTElEQVJfU1lTVEVNX19MQVlFUl9BTkdMRV9TVEVQIj48Qj5MSURBUl9TWVNURU1fX0xBWUVSX0FOR0xFX1NURVA8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TGF5ZXIgQW5nbGUgU3RlcDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj48Qj5MSURBUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIE9yaWVudGF0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj48Qj5MSURBUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIFBvc2l0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX05CX0xBWUVSUyI+PEI+TElEQVJfU1lTVEVNX19OQl9MQVlFUlM8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TmIgTGF5ZXJzPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNMSURBUl9TWVNURU1fX05CX0xBWUVSUyI+PEI+TElEQVJfU1lTVEVNX19OQl9MQVlFUlM8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TmIgTGF5ZXJzPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xJREFSX1NZU1RFTV9fTk9JU0UiPjxCPkxJREFSX1NZU1RFTV9fTk9JU0U8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+Tm9pc2U8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0xJREFSX1NZU1RFTV9fTk9JU0UiPjxCPkxJREFSX1NZU1RFTV9fTk9JU0U8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+Tm9pc2U8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTElEQVJfU1lTVEVNX19SQU5HRV9NQVgiPjxCPkxJREFSX1NZU1RFTV9fUkFOR0VfTUFYPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlJhbmdlIG1heDwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjTElEQVJfU1lTVEVNX19SQU5HRV9NQVgiPjxCPkxJREFSX1NZU1RFTV9fUkFOR0VfTUFYPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlJhbmdlIG1heDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX1JBTkdFX01JTiI+PEI+TElEQVJfU1lTVEVNX19SQU5HRV9NSU48L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UmFuZ2UgbWluPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNMSURBUl9TWVNURU1fX1JBTkdFX01JTiI+PEI+TElEQVJfU1lTVEVNX19SQU5HRV9NSU48L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UmFuZ2UgbWluPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xJREFSX1NZU1RFTV9fU0NBTl9USU1FIj48Qj5MSURBUl9TWVNURU1fX1NDQU5fVElNRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TY2FuIHRpbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0xJREFSX1NZU1RFTV9fU0NBTl9USU1FIj48Qj5MSURBUl9TWVNURU1fX1NDQU5fVElNRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5TY2FuIHRpbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTElEQVJfU1lTVEVNX19TSUdNQV9OT0lTRSI+PEI+TElEQVJfU1lTVEVNX19TSUdNQV9OT0lTRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TaWdtYSBOb2lzZTwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjTElEQVJfU1lTVEVNX19TSUdNQV9OT0lTRSI+PEI+TElEQVJfU1lTVEVNX19TSUdNQV9OT0lTRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5TaWdtYSBOb2lzZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX1RJTUVfSU5DUkVNRU5UIj48Qj5MSURBUl9TWVNURU1fX1RJTUVfSU5DUkVNRU5UPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlRpbWUgaW5jcmVtZW50PC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNMSURBUl9TWVNURU1fX1RJTUVfSU5DUkVNRU5UIj48Qj5MSURBUl9TWVNURU1fX1RJTUVfSU5DUkVNRU5UPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlRpbWUgaW5jcmVtZW50PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xJREFSX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj48Qj5MSURBUl9TWVNURU1fRkVBVFVSRV9DT1VOVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5MaWRhciBTeXN0ZW08L2VtPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxpZGFyIFN5c3RlbTwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TGlkYXJTeXN0ZW1JbXBsPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PEREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5MaWRhciBTeXN0ZW08L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0xPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNIj48Qj5MT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNIj48Qj5MT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkxvY2FsaXphdGlvbiBTZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fQkFTRV9DTEFTUyI+PEI+TE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1M8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWSI+PEI+TE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5GcmVxdWVuY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSIj48Qj5MT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5JZGVudGlmaWVyPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPjxCPkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj48Qj5MT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT048L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgUG9zaXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPjxCPkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2VtPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0I+PC9BPiAtIEludGVyZmFjZSBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48REQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PEREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Mb2NhbGl6YXRpb24gU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L0RMPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTEuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTMuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTEyLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTIuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+QjwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5DPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+RTwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5KPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5LPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5MPC9BPiA8QSBIUkVGPSJpbmRleC0xMy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC0xNC5odG1sIj5OPC9BPiA8QSBIUkVGPSJpbmRleC0xNS5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC0xNi5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xNy5odG1sIj5RPC9BPiA8QSBIUkVGPSJpbmRleC0xOC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xOS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0yMC5odG1sIj5UPC9BPiA8QSBIUkVGPSJpbmRleC0yMS5odG1sIj5VPC9BPiA8QSBIUkVGPSJpbmRleC0yMi5odG1sIj5WPC9BPiA8QSBIUkVGPSJpbmRleC0yMy5odG1sIj5XPC9BPiA8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMTMuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMTMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NDQ3ZTM4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC0xMy5odG1sCkBAIC0wLDAgKzEsMTU5IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzMgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitNLUluZGV4Cis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iTS1JbmRleCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTIuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTQuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTEzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+QjwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5DPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+RTwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5KPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5LPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5MPC9BPiA8QSBIUkVGPSJpbmRleC0xMy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC0xNC5odG1sIj5OPC9BPiA8QSBIUkVGPSJpbmRleC0xNS5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC0xNi5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xNy5odG1sIj5RPC9BPiA8QSBIUkVGPSJpbmRleC0xOC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xOS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0yMC5odG1sIj5UPC9BPiA8QSBIUkVGPSJpbmRleC0yMS5odG1sIj5VPC9BPiA8QSBIUkVGPSJpbmRleC0yMi5odG1sIj5WPC9BPiA8QSBIUkVGPSJpbmRleC0yMy5odG1sIj5XPC9BPiA8SFI+Cis8QSBOQU1FPSJfTV8iPjwhLS0gLS0+PC9BPjxIMj4KKzxCPk08L0I+PC9IMj4KKzxETD4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI01BUF9NRVRBX0RBVEEiPjxCPk1BUF9NRVRBX0RBVEE8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+TWFwIE1ldGEgRGF0YTwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sI01BUF9NRVRBX0RBVEEiPjxCPk1BUF9NRVRBX0RBVEE8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPk1hcCBNZXRhIERhdGE8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjTUVURVJfVkFMVUUiPjxCPk1FVEVSX1ZBTFVFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Vbml0S2luZDwvQT4KKzxERD5UaGUgJzxlbT48Yj5NZXRlcjwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjTVVMVElfQVJSQVlfRElNRU5TSU9OIj48Qj5NVUxUSV9BUlJBWV9ESU1FTlNJT048L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+TXVsdGkgQXJyYXkgRGltZW5zaW9uPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjTVVMVElfQVJSQVlfRElNRU5TSU9OIj48Qj5NVUxUSV9BUlJBWV9ESU1FTlNJT048L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPk11bHRpIEFycmF5IERpbWVuc2lvbjwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI01VTFRJX0FSUkFZX0xBWU9VVCI+PEI+TVVMVElfQVJSQVlfTEFZT1VUPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPk11bHRpIEFycmF5IExheW91dDwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI01VTFRJX0FSUkFZX0xBWU9VVCI+PEI+TVVMVElfQVJSQVlfTEFZT1VUPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5NdWx0aSBBcnJheSBMYXlvdXQ8L2VtPicgZGF0YSB0eXBlCis8L0RMPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTIuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTQuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTEzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+QjwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5DPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+RTwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5KPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5LPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5MPC9BPiA8QSBIUkVGPSJpbmRleC0xMy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC0xNC5odG1sIj5OPC9BPiA8QSBIUkVGPSJpbmRleC0xNS5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC0xNi5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xNy5odG1sIj5RPC9BPiA8QSBIUkVGPSJpbmRleC0xOC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xOS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0yMC5odG1sIj5UPC9BPiA8QSBIUkVGPSJpbmRleC0yMS5odG1sIj5VPC9BPiA8QSBIUkVGPSJpbmRleC0yMi5odG1sIj5WPC9BPiA8QSBIUkVGPSJpbmRleC0yMy5odG1sIj5XPC9BPiA8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMTQuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMTQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hZTcxMjM4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC0xNC5odG1sCkBAIC0wLDAgKzEsMTYwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzMgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitOLUluZGV4Cis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iTi1JbmRleCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTMuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTUuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTE0Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+QjwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5DPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+RTwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5KPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5LPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5MPC9BPiA8QSBIUkVGPSJpbmRleC0xMy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC0xNC5odG1sIj5OPC9BPiA8QSBIUkVGPSJpbmRleC0xNS5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC0xNi5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xNy5odG1sIj5RPC9BPiA8QSBIUkVGPSJpbmRleC0xOC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xOS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0yMC5odG1sIj5UPC9BPiA8QSBIUkVGPSJpbmRleC0yMS5odG1sIj5VPC9BPiA8QSBIUkVGPSJpbmRleC0yMi5odG1sIj5WPC9BPiA8QSBIUkVGPSJpbmRleC0yMy5odG1sIj5XPC9BPiA8SFI+Cis8QSBOQU1FPSJfTl8iPjwhLS0gLS0+PC9BPjxIMj4KKzxCPk48L0I+PC9IMj4KKzxETD4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj48Qj5OYXZfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlczwvQT48REQ+VGhlIDxiPkZhY3Rvcnk8L2I+IGZvciB0aGUgbW9kZWwuPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsIj48Qj5OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGw8L0E+PEREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCA8Yj5GYWN0b3J5PC9iPjxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbCgpIj48Qj5OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwoKTwvQj48L0E+IC0gCitDb25zdHJ1Y3RvciBmb3IgY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbCI+TmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPkNyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIGZhY3RvcnkKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj48Qj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlczwvQT48REQ+VGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGUgbW9kZWwuPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPjxCPk5hdl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzPC9BPjxERD5EZWZpbmVzIGxpdGVyYWxzIGZvciB0aGUgbWV0YSBvYmplY3RzIHRoYXQgcmVwcmVzZW50CisgCisgZWFjaCBjbGFzcywKKyBlYWNoIGZlYXR1cmUgb2YgZWFjaCBjbGFzcywKKyBlYWNoIGVudW0sCisgYW5kIGVhY2ggZGF0YSB0eXBlCisgCisgPCE8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiPjxCPk5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQj48L0E+IC0gQ2xhc3MgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbDwvQT48REQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPlBhY2thZ2U8L2I+PERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjTkFWX1NBVF9GSVgiPjxCPk5BVl9TQVRfRklYPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPk5hdiBTYXQgRml4PC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjTkFWX1NBVF9GSVgiPjxCPk5BVl9TQVRfRklYPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5OYXYgU2F0IEZpeDwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI05BVl9TQVRfU1RBVFVTIj48Qj5OQVZfU0FUX1NUQVRVUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5OYXYgU2F0IFN0YXR1czwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI05BVl9TQVRfU1RBVFVTIj48Qj5OQVZfU0FUX1NUQVRVUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+TmF2IFNhdCBTdGF0dXM8L2VtPicgZGF0YSB0eXBlCis8L0RMPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTMuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTUuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTE0Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+QjwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5DPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+RTwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5KPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5LPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5MPC9BPiA8QSBIUkVGPSJpbmRleC0xMy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC0xNC5odG1sIj5OPC9BPiA8QSBIUkVGPSJpbmRleC0xNS5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC0xNi5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xNy5odG1sIj5RPC9BPiA8QSBIUkVGPSJpbmRleC0xOC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xOS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0yMC5odG1sIj5UPC9BPiA8QSBIUkVGPSJpbmRleC0yMS5odG1sIj5VPC9BPiA8QSBIUkVGPSJpbmRleC0yMi5odG1sIj5WPC9BPiA8QSBIUkVGPSJpbmRleC0yMy5odG1sIj5XPC9BPiA8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMTUuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMTUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jOTVlMTQ2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC0xNS5odG1sCkBAIC0wLDAgKzEsMjI1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzMgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitPLUluZGV4Cis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iTy1JbmRleCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTQuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTYuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTE1Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+QjwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5DPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+RTwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5KPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5LPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5MPC9BPiA8QSBIUkVGPSJpbmRleC0xMy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC0xNC5odG1sIj5OPC9BPiA8QSBIUkVGPSJpbmRleC0xNS5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC0xNi5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xNy5odG1sIj5RPC9BPiA8QSBIUkVGPSJpbmRleC0xOC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xOS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0yMC5odG1sIj5UPC9BPiA8QSBIUkVGPSJpbmRleC0yMS5odG1sIj5VPC9BPiA8QSBIUkVGPSJpbmRleC0yMi5odG1sIj5WPC9BPiA8QSBIUkVGPSJpbmRleC0yMy5odG1sIj5XPC9BPiA8SFI+Cis8QSBOQU1FPSJfT18iPjwhLS0gLS0+PC9BPjxIMj4KKzxCPk88L0I+PC9IMj4KKzxETD4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU0iPjxCPk9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+T2JqZWN0IERldGVjdGlvbiBTZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU0iPjxCPk9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTIj48Qj5PQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1M8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1kiPjxCPk9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkZyZXF1ZW5jeTwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSIj48Qj5PQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0lERU5USUZJRVI8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SWRlbnRpZmllcjwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+PEI+T0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+PEI+T0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBQb3NpdGlvbjwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPjxCPk9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvZW0+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI09CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNIj48Qj5PQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5PYmplY3QgVHJhY2tpbmcgU2Vuc29yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU0iPjxCPk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5PYmplY3QgVHJhY2tpbmcgU2Vuc29yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1MiPjxCPk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI09CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1kiPjxCPk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1k8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RnJlcXVlbmN5PC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUiI+PEI+T0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0lERU5USUZJRVI8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SWRlbnRpZmllcjwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj48Qj5PQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT048L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgT3JpZW50YXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI09CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+PEI+T0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIFBvc2l0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj48Qj5PQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPk9iamVjdCBUcmFja2luZyBTZW5zb3IgU3lzdGVtPC9lbT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGw8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48REQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjxERD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5PYmplY3QgVHJhY2tpbmcgU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PEREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5PYmplY3QgVHJhY2tpbmcgU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNPQ0NVUEFOQ1lfR1JJRCI+PEI+T0NDVVBBTkNZX0dSSUQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+T2NjdXBhbmN5IEdyaWQ8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNPQ0NVUEFOQ1lfR1JJRCI+PEI+T0NDVVBBTkNZX0dSSUQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPk9jY3VwYW5jeSBHcmlkPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjT0RPTUVUUlkiPjxCPk9ET01FVFJZPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPk9kb21ldHJ5PC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjT0RPTUVUUlkiPjxCPk9ET01FVFJZPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5PZG9tZXRyeTwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNPTl9QT1JUIj48Qj5PTl9QT1JUPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT25Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5PbiBQb3J0PC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPTl9QT1JUIj48Qj5PTl9QT1JUPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+T24gUG9ydDwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjT05fUE9SVF9fQkFTRV9QQVJBTUVURVIiPjxCPk9OX1BPUlRfX0JBU0VfUEFSQU1FVEVSPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkJhc2UgUGFyYW1ldGVyPC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI09OX1BPUlRfX0JBU0VfUEFSQU1FVEVSIj48Qj5PTl9QT1JUX19CQVNFX1BBUkFNRVRFUjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIFBhcmFtZXRlcjwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjT05fUE9SVF9fUE9SVCI+PEI+T05fUE9SVF9fUE9SVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5Qb3J0PC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI09OX1BPUlRfX1BPUlQiPjxCPk9OX1BPUlRfX1BPUlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UG9ydDwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT05fUE9SVF9GRUFUVVJFX0NPVU5UIj48Qj5PTl9QT1JUX0ZFQVRVUkVfQ09VTlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+T24gUG9ydDwvZW0+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk9uUG9ydDwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjxERD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5PbiBQb3J0PC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PblBvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+T25Qb3J0SW1wbDwvQj48L0E+IC0gQ2xhc3MgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjxERD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T24gUG9ydDwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXM8L0I+PC9BPiAtIHBhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzPEREPiZuYnNwOzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXM8L0I+PC9BPiAtIHBhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXM8REQ+Jm5ic3A7PERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGw8L0I+PC9BPiAtIHBhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbDxERD4mbmJzcDs8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXM8L0I+PC9BPiAtIHBhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzPEREPiZuYnNwOzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGw8L0I+PC9BPiAtIHBhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGw8REQ+Jm5ic3A7PERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXM8L0I+PC9BPiAtIHBhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlczxERD4mbmJzcDs8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGw8L0I+PC9BPiAtIHBhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsPEREPiZuYnNwOzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXM8L0I+PC9BPiAtIHBhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXM8REQ+Jm5ic3A7PERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGw8L0I+PC9BPiAtIHBhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbDxERD4mbmJzcDs8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzPC9CPjwvQT4gLSBwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzPEREPiZuYnNwOzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsPC9CPjwvQT4gLSBwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGw8REQ+Jm5ic3A7PERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlczwvQj48L0E+IC0gcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlczxERD4mbmJzcDs8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbDwvQj48L0E+IC0gcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsPEREPiZuYnNwOzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQj48L0E+IC0gcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8REQ+Jm5ic3A7PERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+IC0gcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDxERD4mbmJzcDs8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9CPjwvQT4gLSBwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPEREPiZuYnNwOzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwjT1JPQ09TX1ZBTFVFIj48Qj5PUk9DT1NfVkFMVUU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0E+Cis8REQ+VGhlICc8ZW0+PGI+T1JPQ09TPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sI09VVF9WQUxVRSI+PEI+T1VUX1ZBTFVFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPgorPEREPlRoZSAnPGVtPjxiPk91dDwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZQorPC9ETD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+SW5kZXg8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9ImluZGV4LTE0Lmh0bWwiPjxCPlBSRVYgTEVUVEVSPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTE2Lmh0bWwiPjxCPk5FWFQgTEVUVEVSPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uL2luZGV4Lmh0bWw/aW5kZXgtZmlsZXNpbmRleC0xNS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTE1Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEEgSFJFRj0iaW5kZXgtMS5odG1sIj5BPC9BPiA8QSBIUkVGPSJpbmRleC0yLmh0bWwiPkI8L0E+IDxBIEhSRUY9ImluZGV4LTMuaHRtbCI+QzwvQT4gPEEgSFJFRj0iaW5kZXgtNC5odG1sIj5EPC9BPiA8QSBIUkVGPSJpbmRleC01Lmh0bWwiPkU8L0E+IDxBIEhSRUY9ImluZGV4LTYuaHRtbCI+RjwvQT4gPEEgSFJFRj0iaW5kZXgtNy5odG1sIj5HPC9BPiA8QSBIUkVGPSJpbmRleC04Lmh0bWwiPkg8L0E+IDxBIEhSRUY9ImluZGV4LTkuaHRtbCI+STwvQT4gPEEgSFJFRj0iaW5kZXgtMTAuaHRtbCI+SjwvQT4gPEEgSFJFRj0iaW5kZXgtMTEuaHRtbCI+SzwvQT4gPEEgSFJFRj0iaW5kZXgtMTIuaHRtbCI+TDwvQT4gPEEgSFJFRj0iaW5kZXgtMTMuaHRtbCI+TTwvQT4gPEEgSFJFRj0iaW5kZXgtMTQuaHRtbCI+TjwvQT4gPEEgSFJFRj0iaW5kZXgtMTUuaHRtbCI+TzwvQT4gPEEgSFJFRj0iaW5kZXgtMTYuaHRtbCI+UDwvQT4gPEEgSFJFRj0iaW5kZXgtMTcuaHRtbCI+UTwvQT4gPEEgSFJFRj0iaW5kZXgtMTguaHRtbCI+UjwvQT4gPEEgSFJFRj0iaW5kZXgtMTkuaHRtbCI+UzwvQT4gPEEgSFJFRj0iaW5kZXgtMjAuaHRtbCI+VDwvQT4gPEEgSFJFRj0iaW5kZXgtMjEuaHRtbCI+VTwvQT4gPEEgSFJFRj0iaW5kZXgtMjIuaHRtbCI+VjwvQT4gPEEgSFJFRj0iaW5kZXgtMjMuaHRtbCI+VzwvQT4gPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2luZGV4LWZpbGVzL2luZGV4LTE2Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2luZGV4LWZpbGVzL2luZGV4LTE2Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjk5ZjhhOAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMTYuaHRtbApAQCAtMCwwICsxLDM3NSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMzIENFVCAyMDEyIC0tPgorPFRJVExFPgorUC1JbmRleAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlAtSW5kZXgiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+SW5kZXg8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9ImluZGV4LTE1Lmh0bWwiPjxCPlBSRVYgTEVUVEVSPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTE3Lmh0bWwiPjxCPk5FWFQgTEVUVEVSPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uL2luZGV4Lmh0bWw/aW5kZXgtZmlsZXNpbmRleC0xNi5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTE2Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEEgSFJFRj0iaW5kZXgtMS5odG1sIj5BPC9BPiA8QSBIUkVGPSJpbmRleC0yLmh0bWwiPkI8L0E+IDxBIEhSRUY9ImluZGV4LTMuaHRtbCI+QzwvQT4gPEEgSFJFRj0iaW5kZXgtNC5odG1sIj5EPC9BPiA8QSBIUkVGPSJpbmRleC01Lmh0bWwiPkU8L0E+IDxBIEhSRUY9ImluZGV4LTYuaHRtbCI+RjwvQT4gPEEgSFJFRj0iaW5kZXgtNy5odG1sIj5HPC9BPiA8QSBIUkVGPSJpbmRleC04Lmh0bWwiPkg8L0E+IDxBIEhSRUY9ImluZGV4LTkuaHRtbCI+STwvQT4gPEEgSFJFRj0iaW5kZXgtMTAuaHRtbCI+SjwvQT4gPEEgSFJFRj0iaW5kZXgtMTEuaHRtbCI+SzwvQT4gPEEgSFJFRj0iaW5kZXgtMTIuaHRtbCI+TDwvQT4gPEEgSFJFRj0iaW5kZXgtMTMuaHRtbCI+TTwvQT4gPEEgSFJFRj0iaW5kZXgtMTQuaHRtbCI+TjwvQT4gPEEgSFJFRj0iaW5kZXgtMTUuaHRtbCI+TzwvQT4gPEEgSFJFRj0iaW5kZXgtMTYuaHRtbCI+UDwvQT4gPEEgSFJFRj0iaW5kZXgtMTcuaHRtbCI+UTwvQT4gPEEgSFJFRj0iaW5kZXgtMTguaHRtbCI+UjwvQT4gPEEgSFJFRj0iaW5kZXgtMTkuaHRtbCI+UzwvQT4gPEEgSFJFRj0iaW5kZXgtMjAuaHRtbCI+VDwvQT4gPEEgSFJFRj0iaW5kZXgtMjEuaHRtbCI+VTwvQT4gPEEgSFJFRj0iaW5kZXgtMjIuaHRtbCI+VjwvQT4gPEEgSFJFRj0iaW5kZXgtMjMuaHRtbCI+VzwvQT4gPEhSPgorPEEgTkFNRT0iX1BfIj48IS0tIC0tPjwvQT48SDI+Cis8Qj5QPC9CPjwvSDI+Cis8REw+Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNQQVRIIj48Qj5QQVRIPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlBhdGg8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNQQVRIIj48Qj5QQVRIPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5QYXRoPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QZWRlc3RyaWFuPC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBlZGVzdHJpYW48L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1BFREVTVFJJQU4iPjxCPlBFREVTVFJJQU48L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QZWRlc3RyaWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5QZWRlc3RyaWFuPC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQRURFU1RSSUFOIj48Qj5QRURFU1RSSUFOPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BlZGVzdHJpYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlBlZGVzdHJpYW48L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BFREVTVFJJQU5fX0JBU0VfQ0xBU1MiPjxCPlBFREVTVFJJQU5fX0JBU0VfQ0xBU1M8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUEVERVNUUklBTl9fRVZFTE9WRVNfSU4iPjxCPlBFREVTVFJJQU5fX0VWRUxPVkVTX0lOPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkV2ZWxvdmVzIEluPC9iPjwvZW0+JyByZWZlcmVuY2UgbGlzdAorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BFREVTVFJJQU5fX0hBU19TVVJGQUNFIj48Qj5QRURFU1RSSUFOX19IQVNfU1VSRkFDRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IYXMgU3VyZmFjZTwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUEVERVNUUklBTl9fTU9WRVNfT1ZFUiI+PEI+UEVERVNUUklBTl9fTU9WRVNfT1ZFUjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Nb3ZlcyBPdmVyPC9iPjwvZW0+JyByZWZlcmVuY2UgbGlzdAorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BFREVTVFJJQU5fRkVBVFVSRV9DT1VOVCI+PEI+UEVERVNUUklBTl9GRUFUVVJFX0NPVU5UPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlBlZGVzdHJpYW48L2VtPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QZWRlc3RyaWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBlZGVzdHJpYW5JbXBsPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PEREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QZWRlc3RyaWFuPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNQSFlTSUNBTF9EQVRBIj48Qj5QSFlTSUNBTF9EQVRBPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxEYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5QaHlzaWNhbCBEYXRhPC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQSFlTSUNBTF9EQVRBIj48Qj5QSFlTSUNBTF9EQVRBPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+UGh5c2ljYWwgRGF0YTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUEhZU0lDQUxfREFUQV9fQkFTRV9EQVRBX1RZUEUiPjxCPlBIWVNJQ0FMX0RBVEFfX0JBU0VfREFUQV9UWVBFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkJhc2UgRGF0YSBUeXBlPC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BIWVNJQ0FMX0RBVEFfX0JBU0VfREFUQV9UWVBFIj48Qj5QSFlTSUNBTF9EQVRBX19CQVNFX0RBVEFfVFlQRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIERhdGEgVHlwZTwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUEhZU0lDQUxfREFUQV9fVU5JVCI+PEI+UEhZU0lDQUxfREFUQV9fVU5JVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5Vbml0PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BIWVNJQ0FMX0RBVEFfX1VOSVQiPjxCPlBIWVNJQ0FMX0RBVEFfX1VOSVQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+VW5pdDwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUEhZU0lDQUxfREFUQV9GRUFUVVJFX0NPVU5UIj48Qj5QSFlTSUNBTF9EQVRBX0ZFQVRVUkVfQ09VTlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+UGh5c2ljYWwgRGF0YTwvZW0+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1BIWVNJQ0FMX09CSkVDVCI+PEI+UEhZU0lDQUxfT0JKRUNUPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlBoeXNpY2FsIE9iamVjdDwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUEhZU0lDQUxfT0JKRUNUIj48Qj5QSFlTSUNBTF9PQkpFQ1Q8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlBoeXNpY2FsIE9iamVjdDwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUEhZU0lDQUxfT0JKRUNUX19CQVNFX0NMQVNTIj48Qj5QSFlTSUNBTF9PQkpFQ1RfX0JBU0VfQ0xBU1M8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUEhZU0lDQUxfT0JKRUNUX19FVkVMT1ZFU19JTiI+PEI+UEhZU0lDQUxfT0JKRUNUX19FVkVMT1ZFU19JTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5FdmVsb3ZlcyBJbjwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3QgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BIWVNJQ0FMX09CSkVDVF9fRVZFTE9WRVNfSU4iPjxCPlBIWVNJQ0FMX09CSkVDVF9fRVZFTE9WRVNfSU48L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RXZlbG92ZXMgSW48L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUEhZU0lDQUxfT0JKRUNUX19IQVNfU1VSRkFDRSI+PEI+UEhZU0lDQUxfT0JKRUNUX19IQVNfU1VSRkFDRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5IYXMgU3VyZmFjZTwvYj48L2VtPicgcmVmZXJlbmNlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQSFlTSUNBTF9PQkpFQ1RfX0hBU19TVVJGQUNFIj48Qj5QSFlTSUNBTF9PQkpFQ1RfX0hBU19TVVJGQUNFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkhhcyBTdXJmYWNlPC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQSFlTSUNBTF9PQkpFQ1RfRkVBVFVSRV9DT1VOVCI+PEI+UEhZU0lDQUxfT0JKRUNUX0ZFQVRVUkVfQ09VTlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+UGh5c2ljYWwgT2JqZWN0PC9lbT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UGh5c2ljYWxEYXRhPC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBoeXNpY2FsIERhdGE8L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QaHlzaWNhbERhdGFJbXBsPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PEREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QaHlzaWNhbCBEYXRhPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBoeXNpY2FsT2JqZWN0PC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBoeXNpY2FsIE9iamVjdDwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UGh5c2ljYWxPYmplY3RJbXBsPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PEREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QaHlzaWNhbCBPYmplY3Q8L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCNQSUxPVEVEX1ZBTFVFIj48Qj5QSUxPVEVEX1ZBTFVFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPgorPEREPlRoZSAnPGVtPjxiPlBpbG90ZWQ8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhbmV0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QbGFuZXQ8L0I+PC9BPiAtIEludGVyZmFjZSBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48REQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGxhbmV0PC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNQTEFORVQiPjxCPlBMQU5FVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYW5ldEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+UGxhbmV0PC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQTEFORVQiPjxCPlBMQU5FVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGFuZXRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlBsYW5ldDwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUExBTkVUX19CQVNFX0NMQVNTIj48Qj5QTEFORVRfX0JBU0VfQ0xBU1M8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUExBTkVUX19FVkVMT1ZFU19JTiI+PEI+UExBTkVUX19FVkVMT1ZFU19JTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5FdmVsb3ZlcyBJbjwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3QKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQTEFORVRfX0hBU19TVVJGQUNFIj48Qj5QTEFORVRfX0hBU19TVVJGQUNFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkhhcyBTdXJmYWNlPC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQTEFORVRfRkVBVFVSRV9DT1VOVCI+PEI+UExBTkVUX0ZFQVRVUkVfQ09VTlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+UGxhbmV0PC9lbT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhbmV0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBsYW5ldEltcGw8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48REQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBsYW5ldDwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QbGF0Zm9ybTwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjxERD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QbGF0Zm9ybTwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUExBVEZPUk0iPjxCPlBMQVRGT1JNPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlBsYXRmb3JtPC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQTEFURk9STSI+PEI+UExBVEZPUk08L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlBsYXRmb3JtPC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQTEFURk9STV9fQkFTRV9DTEFTUyI+PEI+UExBVEZPUk1fX0JBU0VfQ0xBU1M8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUExBVEZPUk1fX0JBU0VfTk9ERSI+PEI+UExBVEZPUk1fX0JBU0VfTk9ERTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5CYXNlIE5vZGU8L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUExBVEZPUk1fX0JBU0VfTk9ERSI+PEI+UExBVEZPUk1fX0JBU0VfTk9ERTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIE5vZGU8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BMQVRGT1JNX0ZFQVRVUkVfQ09VTlQiPjxCPlBMQVRGT1JNX0ZFQVRVUkVfQ09VTlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+UGxhdGZvcm08L2VtPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QbGF0Zm9ybUltcGw8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48REQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBsYXRmb3JtPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvQWN0aXZhdG9yLmh0bWwjUExVR0lOX0lEIj48Qj5QTFVHSU5fSUQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1cy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvQWN0aXZhdG9yLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMiPkFjdGl2YXRvcjwvQT4KKzxERD5UaGUgQ29uc3RhbnQgUExVR0lOX0lELgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1BPSU5UIj48Qj5QT0lOVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+UG9pbnQ8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjUE9JTlQiPjxCPlBPSU5UPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+UG9pbnQ8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUE9JTlQzMiI+PEI+UE9JTlQzMjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+UG9pbnQzMjwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNQT0lOVDMyIj48Qj5QT0lOVDMyPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+UG9pbnQzMjwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1BPSU5UX0NMT1VEIj48Qj5QT0lOVF9DTE9VRDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Qb2ludCBDbG91ZDwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI1BPSU5UX0NMT1VEIj48Qj5QT0lOVF9DTE9VRDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+UG9pbnQgQ2xvdWQ8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNQT0lOVF9DTE9VRDIiPjxCPlBPSU5UX0NMT1VEMjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Qb2ludCBDbG91ZDI8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNQT0lOVF9DTE9VRDIiPjxCPlBPSU5UX0NMT1VEMjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+UG9pbnQgQ2xvdWQyPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUE9JTlRfRklFTEQiPjxCPlBPSU5UX0ZJRUxEPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlBvaW50IEZpZWxkPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjUE9JTlRfRklFTEQiPjxCPlBPSU5UX0ZJRUxEPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Qb2ludCBGaWVsZDwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNQT0lOVF9TVEFNUEVEIj48Qj5QT0lOVF9TVEFNUEVEPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Qb2ludCBTdGFtcGVkPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1BPSU5UX1NUQU1QRUQiPjxCPlBPSU5UX1NUQU1QRUQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Qb2ludCBTdGFtcGVkPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1BPTFlHT04iPjxCPlBPTFlHT048L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlBvbHlnb248L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjUE9MWUdPTiI+PEI+UE9MWUdPTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlBvbHlnb248L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUE9MWUdPTl9TVEFNUEVEIj48Qj5QT0xZR09OX1NUQU1QRUQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlBvbHlnb24gU3RhbXBlZDwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNQT0xZR09OX1NUQU1QRUQiPjxCPlBPTFlHT05fU1RBTVBFRDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlBvbHlnb24gU3RhbXBlZDwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UG9ydDwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjxERD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Qb3J0PC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNQT1JUIj48Qj5QT1JUPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+UG9ydDwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUE9SVCI+PEI+UE9SVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5Qb3J0PC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNQT1JUX19CQVNFX1BPUlQiPjxCPlBPUlRfX0JBU0VfUE9SVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5CYXNlIFBvcnQ8L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUE9SVF9fQkFTRV9QT1JUIj48Qj5QT1JUX19CQVNFX1BPUlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBQb3J0PC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNQT1JUX19TWU5DSFJPTklaQVRJT05fUE9MSUNZIj48Qj5QT1JUX19TWU5DSFJPTklaQVRJT05fUE9MSUNZPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlN5bmNocm9uaXphdGlvbiBQb2xpY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUE9SVF9fU1lOQ0hST05JWkFUSU9OX1BPTElDWSI+PEI+UE9SVF9fU1lOQ0hST05JWkFUSU9OX1BPTElDWTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TeW5jaHJvbml6YXRpb24gUG9saWN5PC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQT1JUX0ZFQVRVUkVfQ09VTlQiPjxCPlBPUlRfRkVBVFVSRV9DT1VOVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5Qb3J0PC9lbT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Qb3J0SW1wbDwvQj48L0E+IC0gQ2xhc3MgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjxERD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UG9ydDwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUE9TRSI+PEI+UE9TRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+UG9zZTwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNQT1NFIj48Qj5QT1NFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+UG9zZTwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNQT1NFMl9EIj48Qj5QT1NFMl9EPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Qb3NlMiBEPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1BPU0UyX0QiPjxCPlBPU0UyX0Q8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Qb3NlMiBEPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1BPU0VfQVJSQVkiPjxCPlBPU0VfQVJSQVk8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlBvc2UgQXJyYXk8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjUE9TRV9BUlJBWSI+PEI+UE9TRV9BUlJBWTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlBvc2UgQXJyYXk8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUE9TRV9TVEFNUEVEIj48Qj5QT1NFX1NUQU1QRUQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlBvc2UgU3RhbXBlZDwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNQT1NFX1NUQU1QRUQiPjxCPlBPU0VfU1RBTVBFRDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlBvc2UgU3RhbXBlZDwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNQT1NFX1dJVEhfQ09WQVJJQU5DRSI+PEI+UE9TRV9XSVRIX0NPVkFSSUFOQ0U8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlBvc2UgV2l0aCBDb3ZhcmlhbmNlPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1BPU0VfV0lUSF9DT1ZBUklBTkNFIj48Qj5QT1NFX1dJVEhfQ09WQVJJQU5DRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlBvc2UgV2l0aCBDb3ZhcmlhbmNlPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1BPU0VfV0lUSF9DT1ZBUklBTkNFX1NUQU1QRUQiPjxCPlBPU0VfV0lUSF9DT1ZBUklBTkNFX1NUQU1QRUQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlBvc2UgV2l0aCBDb3ZhcmlhbmNlIFN0YW1wZWQ8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjUE9TRV9XSVRIX0NPVkFSSUFOQ0VfU1RBTVBFRCI+PEI+UE9TRV9XSVRIX0NPVkFSSUFOQ0VfU1RBTVBFRDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlBvc2UgV2l0aCBDb3ZhcmlhbmNlIFN0YW1wZWQ8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUFJJTUlUSVZFX0RBVEEiPjxCPlBSSU1JVElWRV9EQVRBPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUHJpbWl0aXZlRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+UHJpbWl0aXZlIERhdGE8L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BSSU1JVElWRV9EQVRBIj48Qj5QUklNSVRJVkVfREFUQTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QcmltaXRpdmVEYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5QcmltaXRpdmUgRGF0YTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUFJJTUlUSVZFX0RBVEFfX0JBU0VfUFJJTUlUSVZFX1RZUEUiPjxCPlBSSU1JVElWRV9EQVRBX19CQVNFX1BSSU1JVElWRV9UWVBFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkJhc2UgUHJpbWl0aXZlIFR5cGU8L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUFJJTUlUSVZFX0RBVEFfX0JBU0VfUFJJTUlUSVZFX1RZUEUiPjxCPlBSSU1JVElWRV9EQVRBX19CQVNFX1BSSU1JVElWRV9UWVBFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgUHJpbWl0aXZlIFR5cGU8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BSSU1JVElWRV9EQVRBX0ZFQVRVUkVfQ09VTlQiPjxCPlBSSU1JVElWRV9EQVRBX0ZFQVRVUkVfQ09VTlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+UHJpbWl0aXZlIERhdGE8L2VtPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UHJpbWl0aXZlRGF0YTwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjxERD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QcmltaXRpdmUgRGF0YTwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUHJpbWl0aXZlRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QcmltaXRpdmVEYXRhSW1wbDwvQj48L0E+IC0gQ2xhc3MgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjxERD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UHJpbWl0aXZlIERhdGE8L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCNQUk9WSURFRF9WQUxVRSI+PEI+UFJPVklERURfVkFMVUU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlRmxvd0tpbmQ8L0E+Cis8REQ+VGhlICc8ZW0+PGI+UHJvdmlkZWQ8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUKKzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC0xNS5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0xNy5odG1sIj48Qj5ORVhUIExFVFRFUjwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtMTYuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0xNi5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5CPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkM8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5FPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPko8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPks8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPkw8L0E+IDxBIEhSRUY9ImluZGV4LTEzLmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTE0Lmh0bWwiPk48L0E+IDxBIEhSRUY9ImluZGV4LTE1Lmh0bWwiPk88L0E+IDxBIEhSRUY9ImluZGV4LTE2Lmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTE3Lmh0bWwiPlE8L0E+IDxBIEhSRUY9ImluZGV4LTE4Lmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTE5Lmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTIwLmh0bWwiPlQ8L0E+IDxBIEhSRUY9ImluZGV4LTIxLmh0bWwiPlU8L0E+IDxBIEhSRUY9ImluZGV4LTIyLmh0bWwiPlY8L0E+IDxBIEhSRUY9ImluZGV4LTIzLmh0bWwiPlc8L0E+IDxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC0xNy5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC0xNy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk0NjQ1NTkKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2luZGV4LWZpbGVzL2luZGV4LTE3Lmh0bWwKQEAgLTAsMCArMSwxNTAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMyBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1EtSW5kZXgKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJRLUluZGV4IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC0xNi5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0xOC5odG1sIj48Qj5ORVhUIExFVFRFUjwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtMTcuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0xNy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5CPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkM8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5FPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPko8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPks8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPkw8L0E+IDxBIEhSRUY9ImluZGV4LTEzLmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTE0Lmh0bWwiPk48L0E+IDxBIEhSRUY9ImluZGV4LTE1Lmh0bWwiPk88L0E+IDxBIEhSRUY9ImluZGV4LTE2Lmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTE3Lmh0bWwiPlE8L0E+IDxBIEhSRUY9ImluZGV4LTE4Lmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTE5Lmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTIwLmh0bWwiPlQ8L0E+IDxBIEhSRUY9ImluZGV4LTIxLmh0bWwiPlU8L0E+IDxBIEhSRUY9ImluZGV4LTIyLmh0bWwiPlY8L0E+IDxBIEhSRUY9ImluZGV4LTIzLmh0bWwiPlc8L0E+IDxIUj4KKzxBIE5BTUU9Il9RXyI+PCEtLSAtLT48L0E+PEgyPgorPEI+UTwvQj48L0gyPgorPERMPgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1FVQVRFUk5JT04iPjxCPlFVQVRFUk5JT048L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlF1YXRlcm5pb248L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjUVVBVEVSTklPTiI+PEI+UVVBVEVSTklPTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlF1YXRlcm5pb248L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUVVBVEVSTklPTl9TVEFNUEVEIj48Qj5RVUFURVJOSU9OX1NUQU1QRUQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlF1YXRlcm5pb24gU3RhbXBlZDwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNRVUFURVJOSU9OX1NUQU1QRUQiPjxCPlFVQVRFUk5JT05fU1RBTVBFRDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlF1YXRlcm5pb24gU3RhbXBlZDwvZW0+JyBkYXRhIHR5cGUKKzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC0xNi5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0xOC5odG1sIj48Qj5ORVhUIExFVFRFUjwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtMTcuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0xNy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5CPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkM8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5FPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPko8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPks8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPkw8L0E+IDxBIEhSRUY9ImluZGV4LTEzLmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTE0Lmh0bWwiPk48L0E+IDxBIEhSRUY9ImluZGV4LTE1Lmh0bWwiPk88L0E+IDxBIEhSRUY9ImluZGV4LTE2Lmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTE3Lmh0bWwiPlE8L0E+IDxBIEhSRUY9ImluZGV4LTE4Lmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTE5Lmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTIwLmh0bWwiPlQ8L0E+IDxBIEhSRUY9ImluZGV4LTIxLmh0bWwiPlU8L0E+IDxBIEhSRUY9ImluZGV4LTIyLmh0bWwiPlY8L0E+IDxBIEhSRUY9ImluZGV4LTIzLmh0bWwiPlc8L0E+IDxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC0xOC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC0xOC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM2NmU2MjcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2luZGV4LWZpbGVzL2luZGV4LTE4Lmh0bWwKQEAgLTAsMCArMSwzMDcgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMyBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1ItSW5kZXgKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJSLUluZGV4IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC0xNy5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0xOS5odG1sIj48Qj5ORVhUIExFVFRFUjwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtMTguaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0xOC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5CPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkM8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5FPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPko8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPks8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPkw8L0E+IDxBIEhSRUY9ImluZGV4LTEzLmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTE0Lmh0bWwiPk48L0E+IDxBIEhSRUY9ImluZGV4LTE1Lmh0bWwiPk88L0E+IDxBIEhSRUY9ImluZGV4LTE2Lmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTE3Lmh0bWwiPlE8L0E+IDxBIEhSRUY9ImluZGV4LTE4Lmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTE5Lmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTIwLmh0bWwiPlQ8L0E+IDxBIEhSRUY9ImluZGV4LTIxLmh0bWwiPlU8L0E+IDxBIEhSRUY9ImluZGV4LTIyLmh0bWwiPlY8L0E+IDxBIEhSRUY9ImluZGV4LTIzLmh0bWwiPlc8L0E+IDxIUj4KKzxBIE5BTUU9Il9SXyI+PCEtLSAtLT48L0E+PEgyPgorPEI+UjwvQj48L0gyPgorPERMPgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sI1JBRElBTl9WQUxVRSI+PEI+UkFESUFOX1ZBTFVFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Vbml0S2luZDwvQT4KKzxERD5UaGUgJzxlbT48Yj5SYWRpYW48L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1JBTkdFIj48Qj5SQU5HRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5SYW5nZTwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI1JBTkdFIj48Qj5SQU5HRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+UmFuZ2U8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNSRUdJT05fT0ZfSU5URVJFU1QiPjxCPlJFR0lPTl9PRl9JTlRFUkVTVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5SZWdpb24gT2YgSW50ZXJlc3Q8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNSRUdJT05fT0ZfSU5URVJFU1QiPjxCPlJFR0lPTl9PRl9JTlRFUkVTVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+UmVnaW9uIE9mIEludGVyZXN0PC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCNSRVFVSVJFRF9WQUxVRSI+PEI+UkVRVUlSRURfVkFMVUU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlRmxvd0tpbmQ8L0E+Cis8REQ+VGhlICc8ZW0+PGI+UmVxdWlyZWQ8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90PC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90PC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNST0JPVCI+PEI+Uk9CT1Q8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+Um9ib3Q8L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9UIj48Qj5ST0JPVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+Um9ib3Q8L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9UX19CQVNFX0NMQVNTIj48Qj5ST0JPVF9fQkFTRV9DTEFTUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVF9fRVZFTE9WRVNfSU4iPjxCPlJPQk9UX19FVkVMT1ZFU19JTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5FdmVsb3ZlcyBJbjwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3QKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVF9fSEFTX1NVUkZBQ0UiPjxCPlJPQk9UX19IQVNfU1VSRkFDRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IYXMgU3VyZmFjZTwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUk9CT1RfX0tJTkQiPjxCPlJPQk9UX19LSU5EPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPktpbmQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RfX0tJTkQiPjxCPlJPQk9UX19LSU5EPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPktpbmQ8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1JPQk9UX19NQVNTIj48Qj5ST0JPVF9fTUFTUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5NYXNzPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9UX19NQVNTIj48Qj5ST0JPVF9fTUFTUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5NYXNzPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVF9fTU9WRVNfT1ZFUiI+PEI+Uk9CT1RfX01PVkVTX09WRVI8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TW92ZXMgT3ZlcjwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3QKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNST0JPVF9fVUdWX0tJTkQiPjxCPlJPQk9UX19VR1ZfS0lORDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5VZ3YgS2luZDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVF9fVUdWX0tJTkQiPjxCPlJPQk9UX19VR1ZfS0lORDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5VZ3YgS2luZDwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUk9CT1RfX1dJRFRIIj48Qj5ST0JPVF9fV0lEVEg8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+V2lkdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RfX1dJRFRIIj48Qj5ST0JPVF9fV0lEVEg8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2lkdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9UX0ZFQVRVUkVfQ09VTlQiPjxCPlJPQk9UX0ZFQVRVUkVfQ09VTlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+Um9ib3Q8L2VtPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNST0JPVF9LSU5EIj48Qj5ST0JPVF9LSU5EPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Sb2JvdCBLaW5kPC9lbT48L0NPREU+PC9BPicgZW51bQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9UX0tJTkQiPjxCPlJPQk9UX0tJTkQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Sb2JvdCBLaW5kPC9lbT48L0NPREU+PC9BPicgZW51bQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1JPQk9USUNfTUlERExFV0FSRSI+PEI+Uk9CT1RJQ19NSURETEVXQVJFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlJvYm90aWMgTWlkZGxld2FyZTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RJQ19NSURETEVXQVJFIj48Qj5ST0JPVElDX01JRERMRVdBUkU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlJvYm90aWMgTWlkZGxld2FyZTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RJQ19NSURETEVXQVJFX19CQVNFX0NMQVNTIj48Qj5ST0JPVElDX01JRERMRVdBUkVfX0JBU0VfQ0xBU1M8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RJQ19NSURETEVXQVJFX19CQVNFX05PREUiPjxCPlJPQk9USUNfTUlERExFV0FSRV9fQkFTRV9OT0RFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgTm9kZTwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUk9CT1RJQ19NSURETEVXQVJFX19LSU5EIj48Qj5ST0JPVElDX01JRERMRVdBUkVfX0tJTkQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+S2luZDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVElDX01JRERMRVdBUkVfX0tJTkQiPjxCPlJPQk9USUNfTUlERExFV0FSRV9fS0lORDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5LaW5kPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVElDX01JRERMRVdBUkVfRkVBVFVSRV9DT1VOVCI+PEI+Uk9CT1RJQ19NSURETEVXQVJFX0ZFQVRVUkVfQ09VTlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+Um9ib3RpYyBNaWRkbGV3YXJlPC9lbT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUk9CT1RJQ19NSURETEVXQVJFX0tJTkQiPjxCPlJPQk9USUNfTUlERExFV0FSRV9LSU5EPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Sb2JvdGljIE1pZGRsZXdhcmUgS2luZDwvZW0+PC9DT0RFPjwvQT4nIGVudW0KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVElDX01JRERMRVdBUkVfS0lORCI+PEI+Uk9CT1RJQ19NSURETEVXQVJFX0tJTkQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Sb2JvdGljIE1pZGRsZXdhcmUgS2luZDwvZW0+PC9DT0RFPjwvQT4nIGVudW0KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNST0JPVElDX1NJTVVMQVRPUiI+PEI+Uk9CT1RJQ19TSU1VTEFUT1I8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU2ltdWxhdG9ySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5Sb2JvdGljIFNpbXVsYXRvcjwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RJQ19TSU1VTEFUT1IiPjxCPlJPQk9USUNfU0lNVUxBVE9SPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTaW11bGF0b3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlJvYm90aWMgU2ltdWxhdG9yPC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVElDX1NJTVVMQVRPUl9fQkFTRV9DTEFTUyI+PEI+Uk9CT1RJQ19TSU1VTEFUT1JfX0JBU0VfQ0xBU1M8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RJQ19TSU1VTEFUT1JfX0JBU0VfTk9ERSI+PEI+Uk9CT1RJQ19TSU1VTEFUT1JfX0JBU0VfTk9ERTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIE5vZGU8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9USUNfU0lNVUxBVE9SX0ZFQVRVUkVfQ09VTlQiPjxCPlJPQk9USUNfU0lNVUxBVE9SX0ZFQVRVUkVfQ09VTlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+Um9ib3RpYyBTaW11bGF0b3I8L2VtPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNST0JPVElDX1NZU1RFTSI+PEI+Uk9CT1RJQ19TWVNURU08L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5Sb2JvdGljIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RJQ19TWVNURU0iPjxCPlJPQk9USUNfU1lTVEVNPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlJvYm90aWMgU3lzdGVtPC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVElDX1NZU1RFTV9fQkFTRV9DTEFTUyI+PEI+Uk9CT1RJQ19TWVNURU1fX0JBU0VfQ0xBU1M8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUk9CT1RJQ19TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj48Qj5ST0JPVElDX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT048L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgT3JpZW50YXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RJQ19TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj48Qj5ST0JPVElDX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT048L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgT3JpZW50YXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1JPQk9USUNfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+PEI+Uk9CT1RJQ19TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIFBvc2l0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9USUNfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+PEI+Uk9CT1RJQ19TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIFBvc2l0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVElDX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj48Qj5ST0JPVElDX1NZU1RFTV9GRUFUVVJFX0NPVU5UPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlJvYm90aWMgU3lzdGVtPC9lbT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdGljTWlkZGxld2FyZTwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjxERD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Sb2JvdGljIE1pZGRsZXdhcmU8L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNNaWRkbGV3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlJvYm90aWNNaWRkbGV3YXJlSW1wbDwvQj48L0E+IC0gQ2xhc3MgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjxERD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Um9ib3RpYyBNaWRkbGV3YXJlPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9CPjwvQT4gLSBFbnVtIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjxERD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBsaXRlcmFscyBvZiB0aGUgZW51bWVyYXRpb24gJzxlbT48Yj5Sb2JvdGljIE1pZGRsZXdhcmUgS2luZDwvYj48L2VtPicsCisgYW5kIHV0aWxpdHkgbWV0aG9kcyBmb3Igd29ya2luZyB3aXRoIHRoZW08RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90aWNTaW11bGF0b3I8L0I+PC9BPiAtIEludGVyZmFjZSBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48REQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Um9ib3RpYyBTaW11bGF0b3I8L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTaW11bGF0b3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+Um9ib3RpY1NpbXVsYXRvckltcGw8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48REQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90aWMgU2ltdWxhdG9yPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3RpY1N5c3RlbTwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjxERD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Sb2JvdGljIFN5c3RlbTwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Sb2JvdGljU3lzdGVtSW1wbDwvQj48L0E+IC0gQ2xhc3MgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjxERD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Um9ib3RpYyBTeXN0ZW08L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlJvYm90SW1wbDwvQj48L0E+IC0gQ2xhc3MgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjxERD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Um9ib3Q8L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdEtpbmQ8L0I+PC9BPiAtIEVudW0gaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIGxpdGVyYWxzIG9mIHRoZSBlbnVtZXJhdGlvbiAnPGVtPjxiPlJvYm90IEtpbmQ8L2I+PC9lbT4nLAorIGFuZCB1dGlsaXR5IG1ldGhvZHMgZm9yIHdvcmtpbmcgd2l0aCB0aGVtPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPlJvYm90TUxBZGFwdGVyRmFjdG9yeTwvQj48L0E+IC0gQ2xhc3MgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPjxERD5UaGUgPGI+QWRhcHRlciBGYWN0b3J5PC9iPiBmb3IgdGhlIG1vZGVsLjxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNSb2JvdE1MQWRhcHRlckZhY3RvcnkoKSI+PEI+Um9ib3RNTEFkYXB0ZXJGYWN0b3J5KCk8L0I+PC9BPiAtIAorQ29uc3RydWN0b3IgZm9yIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxBZGFwdGVyRmFjdG9yeTwvQT4KKzxERD5DcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSBhZGFwdGVyIGZhY3RvcnkKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90TUxGYWN0b3J5PC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPlRoZSA8Yj5GYWN0b3J5PC9iPiBmb3IgdGhlIG1vZGVsLjxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Sb2JvdE1MRmFjdG9yeUltcGw8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48REQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPkZhY3Rvcnk8L2I+PERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI1JvYm90TUxGYWN0b3J5SW1wbCgpIj48Qj5Sb2JvdE1MRmFjdG9yeUltcGwoKTwvQj48L0E+IC0gCitDb25zdHJ1Y3RvciBmb3IgY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTEZhY3RvcnlJbXBsPC9BPgorPEREPkNyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIGZhY3RvcnkKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90TUxQYWNrYWdlPC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPlRoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhlIG1vZGVsLjxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkRlZmluZXMgbGl0ZXJhbHMgZm9yIHRoZSBtZXRhIG9iamVjdHMgdGhhdCByZXByZXNlbnQKKyAKKyBlYWNoIGNsYXNzLAorIGVhY2ggZmVhdHVyZSBvZiBlYWNoIGNsYXNzLAorIGVhY2ggZW51bSwKKyBhbmQgZWFjaCBkYXRhIHR5cGUKKyAKKyA8ITxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Sb2JvdE1MUGFja2FnZUltcGw8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48REQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPlBhY2thZ2U8L2I+PERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+Um9ib3RNTFJlc291cmNlRmFjdG9yeUltcGw8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT48REQ+VGhlIDxiPlJlc291cmNlIEZhY3Rvcnk8L2I+IGFzc29jaWF0ZWQgd2l0aCB0aGUgcGFja2FnZTxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MUmVzb3VyY2VGYWN0b3J5SW1wbC5odG1sI1JvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsKCkiPjxCPlJvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsKCk8L0I+PC9BPiAtIAorQ29uc3RydWN0b3IgZm9yIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFJlc291cmNlRmFjdG9yeUltcGw8L0E+Cis8REQ+Q3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgcmVzb3VyY2UgZmFjdG9yeQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxSZXNvdXJjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5Sb2JvdE1MUmVzb3VyY2VJbXBsPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+PEREPlRoZSA8Yj5SZXNvdXJjZSA8L2I+IGFzc29jaWF0ZWQgd2l0aCB0aGUgcGFja2FnZTxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MUmVzb3VyY2VJbXBsLmh0bWwjUm9ib3RNTFJlc291cmNlSW1wbChvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuVVJJKSI+PEI+Um9ib3RNTFJlc291cmNlSW1wbChVUkkpPC9CPjwvQT4gLSAKK0NvbnN0cnVjdG9yIGZvciBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MUmVzb3VyY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFJlc291cmNlSW1wbDwvQT4KKzxERD5DcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSByZXNvdXJjZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5Sb2JvdE1MU3dpdGNoPC9CPjwvQT4mbHQ7PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT4mZ3Q7IC0gQ2xhc3MgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPjxERD5UaGUgPGI+U3dpdGNoPC9iPiBmb3IgdGhlIG1vZGVsJ3MgaW5oZXJpdGFuY2UgaGllcmFyY2h5LjxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjUm9ib3RNTFN3aXRjaCgpIj48Qj5Sb2JvdE1MU3dpdGNoKCk8L0I+PC9BPiAtIAorQ29uc3RydWN0b3IgZm9yIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MU3dpdGNoPC9BPgorPEREPkNyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIHN3aXRjaAorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxYTUxQcm9jZXNzb3IuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5Sb2JvdE1MWE1MUHJvY2Vzc29yPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+PEREPlRoaXMgY2xhc3MgY29udGFpbnMgaGVscGVyIG1ldGhvZHMgdG8gc2VyaWFsaXplIGFuZCBkZXNlcmlhbGl6ZSBYTUwgZG9jdW1lbnRzCisgPCE8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFhNTFByb2Nlc3Nvci5odG1sI1JvYm90TUxYTUxQcm9jZXNzb3IoKSI+PEI+Um9ib3RNTFhNTFByb2Nlc3NvcigpPC9CPjwvQT4gLSAKK0NvbnN0cnVjdG9yIGZvciBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MWE1MUHJvY2Vzc29yLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFhNTFByb2Nlc3NvcjwvQT4KKzxERD5QdWJsaWMgY29uc3RydWN0b3IgdG8gaW5zdGFudGlhdGUgdGhlIGhlbHBlcgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCNST1NfVkFMVUUiPjxCPlJPU19WQUxVRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT4KKzxERD5UaGUgJzxlbT48Yj5ST1M8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwjUlRfTUFQU19WQUxVRSI+PEI+UlRfTUFQU19WQUxVRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT4KKzxERD5UaGUgJzxlbT48Yj5SVCBNYXBzPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlCis8L0RMPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTcuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTkuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTE4Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTguaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+QjwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5DPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+RTwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5KPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5LPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5MPC9BPiA8QSBIUkVGPSJpbmRleC0xMy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC0xNC5odG1sIj5OPC9BPiA8QSBIUkVGPSJpbmRleC0xNS5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC0xNi5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xNy5odG1sIj5RPC9BPiA8QSBIUkVGPSJpbmRleC0xOC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xOS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0yMC5odG1sIj5UPC9BPiA8QSBIUkVGPSJpbmRleC0yMS5odG1sIj5VPC9BPiA8QSBIUkVGPSJpbmRleC0yMi5odG1sIj5WPC9BPiA8QSBIUkVGPSJpbmRleC0yMy5odG1sIj5XPC9BPiA8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMTkuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMTkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44NmJhNzIxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC0xOS5odG1sCkBAIC0wLDAgKzEsOTY4IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzMgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitTLUluZGV4Cis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iUy1JbmRleCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTguaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMjAuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTE5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+QjwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5DPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+RTwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5KPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5LPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5MPC9BPiA8QSBIUkVGPSJpbmRleC0xMy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC0xNC5odG1sIj5OPC9BPiA8QSBIUkVGPSJpbmRleC0xNS5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC0xNi5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xNy5odG1sIj5RPC9BPiA8QSBIUkVGPSJpbmRleC0xOC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xOS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0yMC5odG1sIj5UPC9BPiA8QSBIUkVGPSJpbmRleC0yMS5odG1sIj5VPC9BPiA8QSBIUkVGPSJpbmRleC0yMi5odG1sIj5WPC9BPiA8QSBIUkVGPSJpbmRleC0yMy5odG1sIj5XPC9BPiA8SFI+Cis8QSBOQU1FPSJfU18iPjwhLS0gLS0+PC9BPjxIMj4KKzxCPlM8L0I+PC9IMj4KKzxETD4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj48Qj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlczwvQT48REQ+VGhlIDxiPkZhY3Rvcnk8L2I+IGZvciB0aGUgbW9kZWwuPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj48Qj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGw8L0E+PEREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCA8Yj5GYWN0b3J5PC9iPjxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbCgpIj48Qj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwoKTwvQj48L0E+IC0gCitDb25zdHJ1Y3RvciBmb3IgY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPkNyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIGZhY3RvcnkKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj48Qj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlczwvQT48REQ+VGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGUgbW9kZWwuPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPjxCPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzPC9BPjxERD5EZWZpbmVzIGxpdGVyYWxzIGZvciB0aGUgbWV0YSBvYmplY3RzIHRoYXQgcmVwcmVzZW50CisgCisgZWFjaCBjbGFzcywKKyBlYWNoIGZlYXR1cmUgb2YgZWFjaCBjbGFzcywKKyBlYWNoIGVudW0sCisgYW5kIGVhY2ggZGF0YSB0eXBlCisgCisgPCE8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPjxCPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQj48L0E+IC0gQ2xhc3MgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbDwvQT48REQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPlBhY2thZ2U8L2I+PERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1NFTlNPUl9EUklWRVIiPjxCPlNFTlNPUl9EUklWRVI8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JEcml2ZXJJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlNlbnNvciBEcml2ZXI8L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFTlNPUl9EUklWRVIiPjxCPlNFTlNPUl9EUklWRVI8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yRHJpdmVySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5TZW5zb3IgRHJpdmVyPC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRU5TT1JfRFJJVkVSX19CQVNFX0NMQVNTIj48Qj5TRU5TT1JfRFJJVkVSX19CQVNFX0NMQVNTPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFTlNPUl9EUklWRVJfX0RFQURMSU5FIj48Qj5TRU5TT1JfRFJJVkVSX19ERUFETElORTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5EZWFkbGluZTwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VOU09SX0RSSVZFUl9fSVNfUEVSSU9ESUMiPjxCPlNFTlNPUl9EUklWRVJfX0lTX1BFUklPRElDPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPklzIFBlcmlvZGljPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRU5TT1JfRFJJVkVSX19QRVJJT0QiPjxCPlNFTlNPUl9EUklWRVJfX1BFUklPRDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5QZXJpb2Q8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFTlNPUl9EUklWRVJfX1BSSU9SSVRZIj48Qj5TRU5TT1JfRFJJVkVSX19QUklPUklUWTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Qcmlvcml0eTwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VOU09SX0RSSVZFUl9fV0NFVCI+PEI+U0VOU09SX0RSSVZFUl9fV0NFVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5XY2V0PC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRU5TT1JfRFJJVkVSX0ZFQVRVUkVfQ09VTlQiPjxCPlNFTlNPUl9EUklWRVJfRkVBVFVSRV9DT1VOVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5TZW5zb3IgRHJpdmVyPC9lbT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjU0VOU09SX1NZU1RFTSI+PEI+U0VOU09SX1NZU1RFTTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+U2Vuc29yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VOU09SX1NZU1RFTSI+PEI+U0VOU09SX1NZU1RFTTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlNlbnNvciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1MiPjxCPlNFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1M8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZIj48Qj5TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1k8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+RnJlcXVlbmN5PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWSI+PEI+U0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkZyZXF1ZW5jeTwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUiI+PEI+U0VOU09SX1NZU1RFTV9fSURFTlRJRklFUjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5JZGVudGlmaWVyPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFTlNPUl9TWVNURU1fX0lERU5USUZJRVIiPjxCPlNFTlNPUl9TWVNURU1fX0lERU5USUZJRVI8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SWRlbnRpZmllcjwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPjxCPlNFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIE9yaWVudGF0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+PEI+U0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT048L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgUG9zaXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCI+PEI+U0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlNlbnNvciBTeXN0ZW08L2VtPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yRHJpdmVyLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TZW5zb3JEcml2ZXI8L0I+PC9BPiAtIEludGVyZmFjZSBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48REQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U2Vuc29yIERyaXZlcjwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yRHJpdmVySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlNlbnNvckRyaXZlckltcGw8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48REQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNlbnNvciBEcml2ZXI8L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlNlbnNvclN5c3RlbTwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjxERD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TZW5zb3IgU3lzdGVtPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+U2Vuc29yU3lzdGVtSW1wbDwvQj48L0E+IC0gQ2xhc3MgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjxERD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U2Vuc29yIFN5c3RlbTwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjU0VSVklDRV9GTE9XX0tJTkQiPjxCPlNFUlZJQ0VfRkxPV19LSU5EPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TZXJ2aWNlIEZsb3cgS2luZDwvZW0+PC9DT0RFPjwvQT4nIGVudW0KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRVJWSUNFX0ZMT1dfS0lORCI+PEI+U0VSVklDRV9GTE9XX0tJTkQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TZXJ2aWNlIEZsb3cgS2luZDwvZW0+PC9DT0RFPjwvQT4nIGVudW0KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNTRVJWSUNFX1BPUlQiPjxCPlNFUlZJQ0VfUE9SVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5TZXJ2aWNlIFBvcnQ8L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFUlZJQ0VfUE9SVCI+PEI+U0VSVklDRV9QT1JUPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5TZXJ2aWNlIFBvcnQ8L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFUlZJQ0VfUE9SVF9fQkFTRV9QT1JUIj48Qj5TRVJWSUNFX1BPUlRfX0JBU0VfUE9SVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIFBvcnQ8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1NFUlZJQ0VfUE9SVF9fS0lORCI+PEI+U0VSVklDRV9QT1JUX19LSU5EPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPktpbmQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VSVklDRV9QT1JUX19LSU5EIj48Qj5TRVJWSUNFX1BPUlRfX0tJTkQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+S2luZDwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VSVklDRV9QT1JUX19TWU5DSFJPTklaQVRJT05fUE9MSUNZIj48Qj5TRVJWSUNFX1BPUlRfX1NZTkNIUk9OSVpBVElPTl9QT0xJQ1k8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+U3luY2hyb25pemF0aW9uIFBvbGljeTwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VSVklDRV9QT1JUX0ZFQVRVUkVfQ09VTlQiPjxCPlNFUlZJQ0VfUE9SVF9GRUFUVVJFX0NPVU5UPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlNlcnZpY2UgUG9ydDwvZW0+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TZXJ2aWNlRmxvd0tpbmQ8L0I+PC9BPiAtIEVudW0gaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIGxpdGVyYWxzIG9mIHRoZSBlbnVtZXJhdGlvbiAnPGVtPjxiPlNlcnZpY2UgRmxvdyBLaW5kPC9iPjwvZW0+JywKKyBhbmQgdXRpbGl0eSBtZXRob2RzIGZvciB3b3JraW5nIHdpdGggdGhlbTxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlNlcnZpY2VQb3J0PC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNlcnZpY2UgUG9ydDwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+U2VydmljZVBvcnRJbXBsPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PEREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TZXJ2aWNlIFBvcnQ8L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNzZXRfdmlld3BvcnRfc2hhZGUob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNoYWRlKSI+PEI+c2V0X3ZpZXdwb3J0X3NoYWRlKFNoYWRlKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5CbGVuZGVyTW9yc2U8L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjZ2V0X3ZpZXdwb3J0X3NoYWRlKCkiPjxDT0RFPjxlbT52aWV3cG9ydCBzaGFkZTwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCNzZXRfdmlld3BvcnRfc2hhZGUob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNoYWRlKSI+PEI+c2V0X3ZpZXdwb3J0X3NoYWRlKFNoYWRlKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkJsZW5kZXJNb3JzZUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI3NldEFscGhhX3UoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldEFscGhhX3UoU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0QWxwaGFfdSgpIj48Q09ERT48ZW0+QWxwaGEgdTwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCNzZXRBbHBoYV91KGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRBbHBoYV91KFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5DYW1lcmFTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjc2V0QWxwaGFfdihqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0QWxwaGFfdihTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNhbWVyYVN5c3RlbTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRBbHBoYV92KCkiPjxDT0RFPjxlbT5BbHBoYSB2PC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sI3NldEFscGhhX3YoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldEFscGhhX3YoU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkNhbWVyYVN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI3NldEFuZ2xlX21heChqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0QW5nbGVfbWF4KFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkxpZGFyU3lzdGVtSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNzZXRBbmdsZV9tYXgoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldEFuZ2xlX21heChTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGlkYXJTeXN0ZW08L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRBbmdsZV9tYXgoKSI+PENPREU+PGVtPkFuZ2xlIG1heDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI3NldEFuZ2xlX21pbihqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0QW5nbGVfbWluKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkxpZGFyU3lzdGVtSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNzZXRBbmdsZV9taW4oamF2YS5sYW5nLlN0cmluZykiPjxCPnNldEFuZ2xlX21pbihTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGlkYXJTeXN0ZW08L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRBbmdsZV9taW4oKSI+PENPREU+PGVtPkFuZ2xlIG1pbjwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPjxCPnNldEJhc2VfQ2xhc3MoQ2xhc3MpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG1MaWJyYXJ5PC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCNnZXRCYXNlX0NsYXNzKCkiPjxDT0RFPjxlbT5CYXNlIENsYXNzPC9lbT48L0NPREU+PC9BPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+PEI+c2V0QmFzZV9DbGFzcyhDbGFzcyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWxnb3JpdGhtTGlicmFyeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+PEI+c2V0QmFzZV9DbGFzcyhDbGFzcyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPjxCPnNldEJhc2VfQ2xhc3MoQ2xhc3MpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPjxDT0RFPjxlbT5CYXNlIENsYXNzPC9lbT48L0NPREU+PC9BPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbGxlY3Rpb24uaHRtbCNzZXRCYXNlX0RhdGFUeXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlKSI+PEI+c2V0QmFzZV9EYXRhVHlwZShEYXRhVHlwZSk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbGxlY3Rpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNvbGxlY3Rpb248L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sI2dldEJhc2VfRGF0YVR5cGUoKSI+PENPREU+PGVtPkJhc2UgRGF0YSBUeXBlPC9lbT48L0NPREU+PC9BPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbXBvc2VkRGF0YS5odG1sI3NldEJhc2VfRGF0YVR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUpIj48Qj5zZXRCYXNlX0RhdGFUeXBlKERhdGFUeXBlKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcG9zZWREYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Db21wb3NlZERhdGE8L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcG9zZWREYXRhLmh0bWwjZ2V0QmFzZV9EYXRhVHlwZSgpIj48Q09ERT48ZW0+QmFzZSBEYXRhIFR5cGU8L2VtPjwvQ09ERT48L0E+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db2xsZWN0aW9uSW1wbC5odG1sI3NldEJhc2VfRGF0YVR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUpIj48Qj5zZXRCYXNlX0RhdGFUeXBlKERhdGFUeXBlKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29sbGVjdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Db2xsZWN0aW9uSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29tcG9zZWREYXRhSW1wbC5odG1sI3NldEJhc2VfRGF0YVR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUpIj48Qj5zZXRCYXNlX0RhdGFUeXBlKERhdGFUeXBlKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29tcG9zZWREYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkNvbXBvc2VkRGF0YUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsRGF0YUltcGwuaHRtbCNzZXRCYXNlX0RhdGFUeXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlKSI+PEI+c2V0QmFzZV9EYXRhVHlwZShEYXRhVHlwZSk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QaHlzaWNhbERhdGFJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwjc2V0QmFzZV9EYXRhVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5EYXRhVHlwZSkiPjxCPnNldEJhc2VfRGF0YVR5cGUoRGF0YVR5cGUpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsRGF0YTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCNnZXRCYXNlX0RhdGFUeXBlKCkiPjxDT0RFPjxlbT5CYXNlIERhdGEgVHlwZTwvZW0+PC9DT0RFPjwvQT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sI3NldEJhc2VfTm9kZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Ob2RlKSI+PEI+c2V0QmFzZV9Ob2RlKE5vZGUpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QbGF0Zm9ybUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwjc2V0QmFzZV9Ob2RlKG9yZy5lY2xpcHNlLnVtbDIudW1sLk5vZGUpIj48Qj5zZXRCYXNlX05vZGUoTm9kZSk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGF0Zm9ybTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sI2dldEJhc2VfTm9kZSgpIj48Q09ERT48ZW0+QmFzZSBOb2RlPC9lbT48L0NPREU+PC9BPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI3NldEJhc2VfT3BlcmF0aW9uKG9yZy5lY2xpcHNlLnVtbDIudW1sLk9wZXJhdGlvbikiPjxCPnNldEJhc2VfT3BlcmF0aW9uKE9wZXJhdGlvbik8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI2dldEJhc2VfT3BlcmF0aW9uKCkiPjxDT0RFPjxlbT5CYXNlIE9wZXJhdGlvbjwvZW0+PC9DT0RFPjwvQT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCNzZXRCYXNlX09wZXJhdGlvbihvcmcuZWNsaXBzZS51bWwyLnVtbC5PcGVyYXRpb24pIj48Qj5zZXRCYXNlX09wZXJhdGlvbihPcGVyYXRpb24pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWxnb3JpdGhtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT25Qb3J0SW1wbC5odG1sI3NldEJhc2VfUGFyYW1ldGVyKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhcmFtZXRlcikiPjxCPnNldEJhc2VfUGFyYW1ldGVyKFBhcmFtZXRlcik8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5PblBvcnRJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCNzZXRCYXNlX1BhcmFtZXRlcihvcmcuZWNsaXBzZS51bWwyLnVtbC5QYXJhbWV0ZXIpIj48Qj5zZXRCYXNlX1BhcmFtZXRlcihQYXJhbWV0ZXIpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9uUG9ydDwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCNnZXRCYXNlX1BhcmFtZXRlcigpIj48Q09ERT48ZW0+QmFzZSBQYXJhbWV0ZXI8L2VtPjwvQ09ERT48L0E+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sI3NldEJhc2VfUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+PEI+c2V0QmFzZV9Qb3J0KFBvcnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBvcnRJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sI3NldEJhc2VfUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+PEI+c2V0QmFzZV9Qb3J0KFBvcnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Qb3J0PC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCNnZXRCYXNlX1BvcnQoKSI+PENPREU+PGVtPkJhc2UgUG9ydDwvZW0+PC9DT0RFPjwvQT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1ByaW1pdGl2ZURhdGFJbXBsLmh0bWwjc2V0QmFzZV9QcmltaXRpdmVUeXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLlByaW1pdGl2ZVR5cGUpIj48Qj5zZXRCYXNlX1ByaW1pdGl2ZVR5cGUoUHJpbWl0aXZlVHlwZSk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1ByaW1pdGl2ZURhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UHJpbWl0aXZlRGF0YUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QcmltaXRpdmVEYXRhLmh0bWwjc2V0QmFzZV9QcmltaXRpdmVUeXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLlByaW1pdGl2ZVR5cGUpIj48Qj5zZXRCYXNlX1ByaW1pdGl2ZVR5cGUoUHJpbWl0aXZlVHlwZSk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlByaW1pdGl2ZURhdGE8L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sI2dldEJhc2VfUHJpbWl0aXZlVHlwZSgpIj48Q09ERT48ZW0+QmFzZSBQcmltaXRpdmUgVHlwZTwvZW0+PC9DT0RFPjwvQT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NpbXVsYXRlZFN5c3RlbUltcGwuaHRtbCNzZXRCYXNlX1Byb3BlcnR5KG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5KSI+PEI+c2V0QmFzZV9Qcm9wZXJ0eShQcm9wZXJ0eSk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NpbXVsYXRlZFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TaW11bGF0ZWRTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwjc2V0QmFzZV9Qcm9wZXJ0eShvcmcuZWNsaXBzZS51bWwyLnVtbC5Qcm9wZXJ0eSkiPjxCPnNldEJhc2VfUHJvcGVydHkoUHJvcGVydHkpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNpbXVsYXRlZFN5c3RlbTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCNnZXRCYXNlX1Byb3BlcnR5KCkiPjxDT0RFPjxlbT5CYXNlIFByb3BlcnR5PC9lbT48L0NPREU+PC9BPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhdGVJbXBsLmh0bWwjc2V0QmFzZV9TdGF0ZShvcmcuZWNsaXBzZS51bWwyLnVtbC5TdGF0ZSkiPjxCPnNldEJhc2VfU3RhdGUoU3RhdGUpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TdGF0ZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sI3NldEJhc2VfU3RhdGUob3JnLmVjbGlwc2UudW1sMi51bWwuU3RhdGUpIj48Qj5zZXRCYXNlX1N0YXRlKFN0YXRlKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YXRlPC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwjZ2V0QmFzZV9TdGF0ZSgpIj48Q09ERT48ZW0+QmFzZSBTdGF0ZTwvZW0+PC9DT0RFPjwvQT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwjc2V0QmFzZV9UcmFuc2l0aW9uKG9yZy5lY2xpcHNlLnVtbDIudW1sLlRyYW5zaXRpb24pIj48Qj5zZXRCYXNlX1RyYW5zaXRpb24oVHJhbnNpdGlvbik8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+VHJhbnNpdGlvbkltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwjc2V0QmFzZV9UcmFuc2l0aW9uKG9yZy5lY2xpcHNlLnVtbDIudW1sLlRyYW5zaXRpb24pIj48Qj5zZXRCYXNlX1RyYW5zaXRpb24oVHJhbnNpdGlvbik8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlRyYW5zaXRpb248L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sI2dldEJhc2VfVHJhbnNpdGlvbigpIj48Q09ERT48ZW0+QmFzZSBUcmFuc2l0aW9uPC9lbT48L0NPREU+PC9BPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sI3NldEJ1ZmZlclNpemUoaW50KSI+PEI+c2V0QnVmZmVyU2l6ZShpbnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93UG9ydDwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCNnZXRCdWZmZXJTaXplKCkiPjxDT0RFPjxlbT5CdWZmZXIgU2l6ZTwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCNzZXRCdWZmZXJTaXplKGludCkiPjxCPnNldEJ1ZmZlclNpemUoaW50KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRGF0YUZsb3dQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkRhdGFGbG93UG9ydEltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNzZXRDb2xvcl9mb3JtYXQoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldENvbG9yX2Zvcm1hdChTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNhbWVyYVN5c3RlbTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRDb2xvcl9mb3JtYXQoKSI+PENPREU+PGVtPkNvbG9yIGZvcm1hdDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCNzZXRDb2xvcl9mb3JtYXQoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldENvbG9yX2Zvcm1hdChTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q2FtZXJhU3lzdGVtSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNzZXREZWFkbGluZShqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0RGVhZGxpbmUoU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U29mdHdhcmVJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI3NldERlYWRsaW5lKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXREZWFkbGluZShTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U29mdHdhcmU8L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXREZWFkbGluZSgpIj48Q09ERT48ZW0+RGVhZGxpbmU8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjc2V0RGVidWdEaXNwbGF5KGJvb2xlYW4pIj48Qj5zZXREZWJ1Z0Rpc3BsYXkoYm9vbGVhbik8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QmxlbmRlck1vcnNlPC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sI2lzRGVidWdEaXNwbGF5KCkiPjxDT0RFPjxlbT5EZWJ1ZyBEaXNwbGF5PC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sI3NldERlYnVnRGlzcGxheShib29sZWFuKSI+PEI+c2V0RGVidWdEaXNwbGF5KGJvb2xlYW4pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QmxlbmRlck1vcnNlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjc2V0RGVidWdNb2RlKGJvb2xlYW4pIj48Qj5zZXREZWJ1Z01vZGUoYm9vbGVhbik8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QmxlbmRlck1vcnNlPC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sI2lzRGVidWdNb2RlKCkiPjxDT0RFPjxlbT5EZWJ1ZyBNb2RlPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sI3NldERlYnVnTW9kZShib29sZWFuKSI+PEI+c2V0RGVidWdNb2RlKGJvb2xlYW4pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QmxlbmRlck1vcnNlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwjc2V0RGlyZWN0aW9uKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EYXRhRmxvd0RpcmVjdGlvbktpbmQpIj48Qj5zZXREaXJlY3Rpb24oRGF0YUZsb3dEaXJlY3Rpb25LaW5kKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd1BvcnQ8L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwjZ2V0RGlyZWN0aW9uKCkiPjxDT0RFPjxlbT5EaXJlY3Rpb248L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9EYXRhRmxvd1BvcnRJbXBsLmh0bWwjc2V0RGlyZWN0aW9uKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EYXRhRmxvd0RpcmVjdGlvbktpbmQpIj48Qj5zZXREaXJlY3Rpb24oRGF0YUZsb3dEaXJlY3Rpb25LaW5kKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRGF0YUZsb3dQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkRhdGFGbG93UG9ydEltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwjc2V0RWZmZWN0KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0pIj48Qj5zZXRFZmZlY3QoQWxnb3JpdGhtKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5UcmFuc2l0aW9uSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCNzZXRFZmZlY3Qob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobSkiPjxCPnNldEVmZmVjdChBbGdvcml0aG0pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5UcmFuc2l0aW9uPC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCNnZXRFZmZlY3QoKSI+PENPREU+PGVtPkVmZmVjdDwvZW0+PC9DT0RFPjwvQT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNzZXRFeHRGdW5jdGlvbk5hbWUoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldEV4dEZ1bmN0aW9uTmFtZShTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNnZXRFeHRGdW5jdGlvbk5hbWUoKSI+PENPREU+PGVtPkV4dCBGdW5jdGlvbiBOYW1lPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sI3NldEV4dEZ1bmN0aW9uTmFtZShqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0RXh0RnVuY3Rpb25OYW1lKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BbGdvcml0aG1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwjc2V0RnJlcXVlbmN5KGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRGcmVxdWVuY3koU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlbnNvclN5c3RlbUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI3NldEZyZXF1ZW5jeShqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0RnJlcXVlbmN5KFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI2dldEZyZXF1ZW5jeSgpIj48Q09ERT48ZW0+RnJlcXVlbmN5PC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI3NldEdlYXJfcmF0aW9uKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRHZWFyX3JhdGlvbihTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVuZ2luZVN5c3RlbTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRHZWFyX3JhdGlvbigpIj48Q09ERT48ZW0+R2VhciByYXRpb248L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwjc2V0R2Vhcl9yYXRpb24oamF2YS5sYW5nLlN0cmluZykiPjxCPnNldEdlYXJfcmF0aW9uKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5FbmdpbmVTeXN0ZW1JbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNzZXRHcmF2aXR5KGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRHcmF2aXR5KFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QmxlbmRlck1vcnNlPC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sI2dldEdyYXZpdHkoKSI+PENPREU+PGVtPkdyYXZpdHk8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwjc2V0R3Jhdml0eShqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0R3Jhdml0eShTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QmxlbmRlck1vcnNlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sI3NldEd1YXJkKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0pIj48Qj5zZXRHdWFyZChBbGdvcml0aG0pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlRyYW5zaXRpb25JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sI3NldEd1YXJkKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0pIj48Qj5zZXRHdWFyZChBbGdvcml0aG0pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5UcmFuc2l0aW9uPC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCNnZXRHdWFyZCgpIj48Q09ERT48ZW0+R3VhcmQ8L2VtPjwvQ09ERT48L0E+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNzZXRIYXNTdXJmYWNlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlKSI+PEI+c2V0SGFzU3VyZmFjZShTdXJmYWNlKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGh5c2ljYWxPYmplY3RJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI3NldEhhc1N1cmZhY2Uob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN1cmZhY2UpIj48Qj5zZXRIYXNTdXJmYWNlKFN1cmZhY2UpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRIYXNTdXJmYWNlKCkiPjxDT0RFPjxlbT5IYXMgU3VyZmFjZTwvZW0+PC9DT0RFPjwvQT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNzZXRIZWlnaHQoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldEhlaWdodChTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNhbWVyYVN5c3RlbTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRIZWlnaHQoKSI+PENPREU+PGVtPkhlaWdodDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCNzZXRIZWlnaHQoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldEhlaWdodChTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q2FtZXJhU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI3NldElkZW50aWZpZXIoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldElkZW50aWZpZXIoU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlbnNvclN5c3RlbUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI3NldElkZW50aWZpZXIoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldElkZW50aWZpZXIoU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JTeXN0ZW08L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjZ2V0SWRlbnRpZmllcigpIj48Q09ERT48ZW0+SWRlbnRpZmllcjwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNzZXRJc0V4dGVybmFsKGJvb2xlYW4pIj48Qj5zZXRJc0V4dGVybmFsKGJvb2xlYW4pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNpc0lzRXh0ZXJuYWwoKSI+PENPREU+PGVtPklzIEV4dGVybmFsPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sI3NldElzRXh0ZXJuYWwoYm9vbGVhbikiPjxCPnNldElzRXh0ZXJuYWwoYm9vbGVhbik8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BbGdvcml0aG1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNzZXRJc1BlcmlvZGljKGJvb2xlYW4pIj48Qj5zZXRJc1BlcmlvZGljKGJvb2xlYW4pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Tb2Z0d2FyZUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjc2V0SXNQZXJpb2RpYyhib29sZWFuKSI+PEI+c2V0SXNQZXJpb2RpYyhib29sZWFuKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNvZnR3YXJlPC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjaXNJc1BlcmlvZGljKCkiPjxDT0RFPjxlbT5JcyBQZXJpb2RpYzwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNNaWRkbGV3YXJlSW1wbC5odG1sI3NldEtpbmQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNNaWRkbGV3YXJlS2luZCkiPjxCPnNldEtpbmQoUm9ib3RpY01pZGRsZXdhcmVLaW5kKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY01pZGRsZXdhcmVJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sI3NldEtpbmQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90S2luZCkiPjxCPnNldEtpbmQoUm9ib3RLaW5kKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZXJ2aWNlUG9ydEltcGwuaHRtbCNzZXRLaW5kKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlRmxvd0tpbmQpIj48Qj5zZXRLaW5kKFNlcnZpY2VGbG93S2luZCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlcnZpY2VQb3J0SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjc2V0S2luZChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RLaW5kKSI+PEI+c2V0S2luZChSb2JvdEtpbmQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3Q8L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNnZXRLaW5kKCkiPjxDT0RFPjxlbT5LaW5kPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwjc2V0S2luZChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmVLaW5kKSI+PEI+c2V0S2luZChSb2JvdGljTWlkZGxld2FyZUtpbmQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmU8L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCNnZXRLaW5kKCkiPjxDT0RFPjxlbT5LaW5kPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwjc2V0S2luZChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2VydmljZUZsb3dLaW5kKSI+PEI+c2V0S2luZChTZXJ2aWNlRmxvd0tpbmQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZVBvcnQ8L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCNnZXRLaW5kKCkiPjxDT0RFPjxlbT5LaW5kPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjc2V0TGF5ZXJBbmdsZU1pbihqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0TGF5ZXJBbmdsZU1pbihTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MaWRhclN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI3NldExheWVyQW5nbGVNaW4oamF2YS5sYW5nLlN0cmluZykiPjxCPnNldExheWVyQW5nbGVNaW4oU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxpZGFyU3lzdGVtPC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0TGF5ZXJBbmdsZU1pbigpIj48Q09ERT48ZW0+TGF5ZXIgQW5nbGUgTWluPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjc2V0TGF5ZXJBbmdsZVN0ZXAoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldExheWVyQW5nbGVTdGVwKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkxpZGFyU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjc2V0TGF5ZXJBbmdsZVN0ZXAoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldExheWVyQW5nbGVTdGVwKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldExheWVyQW5nbGVTdGVwKCkiPjxDT0RFPjxlbT5MYXllciBBbmdsZSBTdGVwPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCNzZXRMb2NhbE9yaWVudGF0aW9uKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRMb2NhbE9yaWVudGF0aW9uKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY1N5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjc2V0TG9jYWxPcmllbnRhdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0TG9jYWxPcmllbnRhdGlvbihTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbE9yaWVudGF0aW9uKCkiPjxDT0RFPjxlbT5Mb2NhbCBPcmllbnRhdGlvbjwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjc2V0TG9jYWxQb3NpdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0TG9jYWxQb3NpdGlvbihTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90aWNTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPjxCPnNldExvY2FsUG9zaXRpb24oU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxQb3NpdGlvbigpIj48Q09ERT48ZW0+TG9jYWwgUG9zaXRpb248L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCNzZXRNYXNzKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRNYXNzKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjc2V0TWFzcyhqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0TWFzcyhTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3Q8L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNnZXRNYXNzKCkiPjxDT0RFPjxlbT5NYXNzPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI3NldE1heEFsbG93ZWRTdGVlcmluZyhqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0TWF4QWxsb3dlZFN0ZWVyaW5nKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW5naW5lU3lzdGVtPC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI2dldE1heEFsbG93ZWRTdGVlcmluZygpIj48Q09ERT48ZW0+TWF4IEFsbG93ZWQgU3RlZXJpbmc8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwjc2V0TWF4QWxsb3dlZFN0ZWVyaW5nKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRNYXhBbGxvd2VkU3RlZXJpbmcoU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkVuZ2luZVN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNzZXRNYXhBbGxvd2VkVmVsb2NpdHkoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldE1heEFsbG93ZWRWZWxvY2l0eShTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVuZ2luZVN5c3RlbTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhBbGxvd2VkVmVsb2NpdHkoKSI+PENPREU+PGVtPk1heCBBbGxvd2VkIFZlbG9jaXR5PC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sI3NldE1heEFsbG93ZWRWZWxvY2l0eShqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0TWF4QWxsb3dlZFZlbG9jaXR5KFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5FbmdpbmVTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjc2V0TWF4QnJlYWtpbmdGb3JjZShqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0TWF4QnJlYWtpbmdGb3JjZShTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVuZ2luZVN5c3RlbTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhCcmVha2luZ0ZvcmNlKCkiPjxDT0RFPjxlbT5NYXggQnJlYWtpbmcgRm9yY2U8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwjc2V0TWF4QnJlYWtpbmdGb3JjZShqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0TWF4QnJlYWtpbmdGb3JjZShTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+RW5naW5lU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI3NldE1heEVuZ2luZUZvcmNlKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRNYXhFbmdpbmVGb3JjZShTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVuZ2luZVN5c3RlbTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhFbmdpbmVGb3JjZSgpIj48Q09ERT48ZW0+TWF4IEVuZ2luZSBGb3JjZTwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCNzZXRNYXhFbmdpbmVGb3JjZShqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0TWF4RW5naW5lRm9yY2UoU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkVuZ2luZVN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI3NldE5iTGF5ZXJzKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXROYkxheWVycyhTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MaWRhclN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI3NldE5iTGF5ZXJzKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXROYkxheWVycyhTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGlkYXJTeXN0ZW08L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXROYkxheWVycygpIj48Q09ERT48ZW0+TmIgTGF5ZXJzPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjc2V0Tm9pc2UoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldE5vaXNlKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkxpZGFyU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjc2V0Tm9pc2UoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldE5vaXNlKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldE5vaXNlKCkiPjxDT0RFPjxlbT5Ob2lzZTwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5odG1sI3NldE9wZXJhdGlvbihvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtKSI+PEI+c2V0T3BlcmF0aW9uKEFsZ29yaXRobSk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN0YXRlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwjc2V0T3BlcmF0aW9uKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0pIj48Qj5zZXRPcGVyYXRpb24oQWxnb3JpdGhtKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YXRlPC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwjZ2V0T3BlcmF0aW9uKCkiPjxDT0RFPjxlbT5PcGVyYXRpb248L2VtPjwvQ09ERT48L0E+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwjc2V0T3JpZ2luUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPjxCPnNldE9yaWdpblBvc2l0aW9uKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+R1BTU3lzdGVtPC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sI2dldE9yaWdpblBvc2l0aW9uKCkiPjxDT0RFPjxlbT5PcmlnaW4gUG9zaXRpb248L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HUFNTeXN0ZW1JbXBsLmh0bWwjc2V0T3JpZ2luUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPjxCPnNldE9yaWdpblBvc2l0aW9uKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dQU1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5HUFNTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwjc2V0UGF0aChqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0UGF0aChTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNnZXRQYXRoKCkiPjxDT0RFPjxlbT5QYXRoPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCNzZXRQYXRoKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRQYXRoKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobUxpYnJhcnk8L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sI2dldFBhdGgoKSI+PENPREU+PGVtPlBhdGg8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1JbXBsLmh0bWwjc2V0UGF0aChqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0UGF0aChTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWxnb3JpdGhtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCNzZXRQYXRoKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRQYXRoKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWxnb3JpdGhtTGlicmFyeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sI3NldFBlcmlvZChqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0UGVyaW9kKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNvZnR3YXJlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXRQZXJpb2QoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldFBlcmlvZChTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U29mdHdhcmU8L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXRQZXJpb2QoKSI+PENPREU+PGVtPlBlcmlvZDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCNzZXRQb3J0KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Qb3J0KSI+PEI+c2V0UG9ydChQb3J0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT25Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPk9uUG9ydEltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sI3NldFBvcnQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBvcnQpIj48Qj5zZXRQb3J0KFBvcnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9uUG9ydDwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCNnZXRQb3J0KCkiPjxDT0RFPjxlbT5Qb3J0PC9lbT48L0NPREU+PC9BPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwjc2V0UHJpb3JpdHkoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldFByaW9yaXR5KFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNvZnR3YXJlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXRQcmlvcml0eShqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0UHJpb3JpdHkoU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNvZnR3YXJlPC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjZ2V0UHJpb3JpdHkoKSI+PENPREU+PGVtPlByaW9yaXR5PC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjc2V0UmFuZ2VfbWF4KGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRSYW5nZV9tYXgoU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TGlkYXJTeXN0ZW1JbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI3NldFJhbmdlX21heChqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0UmFuZ2VfbWF4KFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFJhbmdlX21heCgpIj48Q09ERT48ZW0+UmFuZ2UgbWF4PC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjc2V0UmFuZ2VfbWluKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRSYW5nZV9taW4oU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TGlkYXJTeXN0ZW1JbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI3NldFJhbmdlX21pbihqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0UmFuZ2VfbWluKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFJhbmdlX21pbigpIj48Q09ERT48ZW0+UmFuZ2UgbWluPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjc2V0U2Nhbl90aW1lKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRTY2FuX3RpbWUoU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TGlkYXJTeXN0ZW1JbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI3NldFNjYW5fdGltZShqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0U2Nhbl90aW1lKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFNjYW5fdGltZSgpIj48Q09ERT48ZW0+U2NhbiB0aW1lPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjc2V0U2lnbWFOb2lzZShqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0U2lnbWFOb2lzZShTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MaWRhclN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI3NldFNpZ21hTm9pc2UoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldFNpZ21hTm9pc2UoU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxpZGFyU3lzdGVtPC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0U2lnbWFOb2lzZSgpIj48Q09ERT48ZW0+U2lnbWEgTm9pc2U8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNzZXRTdXNwZW5zaW9uQ29tcHJlc3Npb24oamF2YS5sYW5nLlN0cmluZykiPjxCPnNldFN1c3BlbnNpb25Db21wcmVzc2lvbihTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5XaGVlbFN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI3NldFN1c3BlbnNpb25Db21wcmVzc2lvbihqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25Db21wcmVzc2lvbigpIj48Q09ERT48ZW0+U3VzcGVuc2lvbiBDb21wcmVzc2lvbjwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI3NldFN1c3BlbnNpb25EYW1waW5nKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRTdXNwZW5zaW9uRGFtcGluZyhTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5XaGVlbFN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI3NldFN1c3BlbnNpb25EYW1waW5nKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRTdXNwZW5zaW9uRGFtcGluZyhTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRTdXNwZW5zaW9uRGFtcGluZygpIj48Q09ERT48ZW0+U3VzcGVuc2lvbiBEYW1waW5nPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjc2V0U3VzcGVuc2lvblJlc3RMZW5ndGgoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldFN1c3BlbnNpb25SZXN0TGVuZ3RoKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPldoZWVsU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0U3VzcGVuc2lvblJlc3RMZW5ndGgoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldFN1c3BlbnNpb25SZXN0TGVuZ3RoKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25SZXN0TGVuZ3RoKCkiPjxDT0RFPjxlbT5TdXNwZW5zaW9uIFJlc3QgTGVuZ3RoPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjc2V0U3VzcGVuc2lvblN0aWZmbmVzcyhqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0U3VzcGVuc2lvblN0aWZmbmVzcyhTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5XaGVlbFN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI3NldFN1c3BlbnNpb25TdGlmZm5lc3MoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldFN1c3BlbnNpb25TdGlmZm5lc3MoU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0U3VzcGVuc2lvblN0aWZmbmVzcygpIj48Q09ERT48ZW0+U3VzcGVuc2lvbiBTdGlmZm5lc3M8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sI3NldFN5bmNocm9uaXphdGlvblBvbGljeShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3luY2hyb25pemF0aW9uS2luZCkiPjxCPnNldFN5bmNocm9uaXphdGlvblBvbGljeShTeW5jaHJvbml6YXRpb25LaW5kKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Qb3J0SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCNzZXRTeW5jaHJvbml6YXRpb25Qb2xpY3kob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5bmNocm9uaXphdGlvbktpbmQpIj48Qj5zZXRTeW5jaHJvbml6YXRpb25Qb2xpY3koU3luY2hyb25pemF0aW9uS2luZCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBvcnQ8L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sI2dldFN5bmNocm9uaXphdGlvblBvbGljeSgpIj48Q09ERT48ZW0+U3luY2hyb25pemF0aW9uIFBvbGljeTwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI3NldFRpbWVfaW5jcmVtZW50KGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRUaW1lX2luY3JlbWVudChTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MaWRhclN5c3RlbUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjc2V0VGltZV9pbmNyZW1lbnQoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldFRpbWVfaW5jcmVtZW50KFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFRpbWVfaW5jcmVtZW50KCkiPjxDT0RFPjxlbT5UaW1lIGluY3JlbWVudDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwjc2V0VGltZUZhY3RvcihqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0VGltZUZhY3RvcihTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DeWNhYlRLPC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCNnZXRUaW1lRmFjdG9yKCkiPjxDT0RFPjxlbT5UaW1lIEZhY3RvcjwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwjc2V0VGltZUZhY3RvcihqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0VGltZUZhY3RvcihTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkN5Y2FiVEtJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwjc2V0VGltZVN0ZXAoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldFRpbWVTdGVwKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkN5Y2FiVEs8L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sI2dldFRpbWVTdGVwKCkiPjxDT0RFPjxlbT5UaW1lIFN0ZXA8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sI3NldFRpbWVTdGVwKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRUaW1lU3RlcChTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkN5Y2FiVEtJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI3NldFR5cGVPZldoZWVsKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRUeXBlT2ZXaGVlbChTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5XaGVlbFN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI3NldFR5cGVPZldoZWVsKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRUeXBlT2ZXaGVlbChTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRUeXBlT2ZXaGVlbCgpIj48Q09ERT48ZW0+VHlwZSBPZiBXaGVlbDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNzZXRVMChqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0VTAoU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0VTAoKSI+PENPREU+PGVtPlUwPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sI3NldFUwKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRVMChTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q2FtZXJhU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmh0bWwjc2V0VWd2S2luZChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVUdWS2luZCkiPjxCPnNldFVndktpbmQoVUdWS2luZCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjc2V0VWd2S2luZChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVUdWS2luZCkiPjxCPnNldFVndktpbmQoVUdWS2luZCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdDwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI2dldFVndktpbmQoKSI+PENPREU+PGVtPlVndiBLaW5kPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxEYXRhSW1wbC5odG1sI3NldFVuaXQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlVuaXRLaW5kKSI+PEI+c2V0VW5pdChVbml0S2luZCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QaHlzaWNhbERhdGFJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwjc2V0VW5pdChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVW5pdEtpbmQpIj48Qj5zZXRVbml0KFVuaXRLaW5kKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbERhdGE8L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwjZ2V0VW5pdCgpIj48Q09ERT48ZW0+VW5pdDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwjc2V0VXNlUmVhbFRpbWUoYm9vbGVhbikiPjxCPnNldFVzZVJlYWxUaW1lKGJvb2xlYW4pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DeWNhYlRLPC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCNpc1VzZVJlYWxUaW1lKCkiPjxDT0RFPjxlbT5Vc2UgUmVhbCBUaW1lPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ3ljYWJUS0ltcGwuaHRtbCNzZXRVc2VSZWFsVGltZShib29sZWFuKSI+PEI+c2V0VXNlUmVhbFRpbWUoYm9vbGVhbik8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q3ljYWJUS0ltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI3NldFYwKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRWMChTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNhbWVyYVN5c3RlbTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRWMCgpIj48Q09ERT48ZW0+VjA8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwjc2V0VjAoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldFYwKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5DYW1lcmFTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjc2V0VmVoaWNsZVRyYWN0aW9uKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRWZWhpY2xlVHJhY3Rpb24oU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5FbmdpbmVTeXN0ZW08L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0VmVoaWNsZVRyYWN0aW9uKCkiPjxDT0RFPjxlbT5WZWhpY2xlIFRyYWN0aW9uPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sI3NldFZlaGljbGVUcmFjdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0VmVoaWNsZVRyYWN0aW9uKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5FbmdpbmVTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNzZXRXY2V0KGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRXY2V0KFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNvZnR3YXJlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXRXY2V0KGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRXY2V0KFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Tb2Z0d2FyZTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldFdjZXQoKSI+PENPREU+PGVtPldjZXQ8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNzZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldFdoZWVsQ29ubmVjdGlvbkhlaWdodChTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5XaGVlbFN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI3NldFdoZWVsQ29ubmVjdGlvbkhlaWdodChqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0KFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsQ29ubmVjdGlvbkhlaWdodCgpIj48Q09ERT48ZW0+V2hlZWwgQ29ubmVjdGlvbiBIZWlnaHQ8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNzZXRXaGVlbEZyaWN0aW9uKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRXaGVlbEZyaWN0aW9uKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPldoZWVsU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0V2hlZWxGcmljdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0V2hlZWxGcmljdGlvbihTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbEZyaWN0aW9uKCkiPjxDT0RFPjxlbT5XaGVlbCBGcmljdGlvbjwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI3NldFdoZWVsUmFkaXVzKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRXaGVlbFJhZGl1cyhTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5XaGVlbFN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI3NldFdoZWVsUmFkaXVzKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRXaGVlbFJhZGl1cyhTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFJhZGl1cygpIj48Q09ERT48ZW0+V2hlZWwgUmFkaXVzPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjc2V0V2hlZWxTdGVlcmluZ1BJRGtkKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRXaGVlbFN0ZWVyaW5nUElEa2QoU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2hlZWxTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRXaGVlbFN0ZWVyaW5nUElEa2QoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldFdoZWVsU3RlZXJpbmdQSURrZChTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFN0ZWVyaW5nUElEa2QoKSI+PENPREU+PGVtPldoZWVsIFN0ZWVyaW5nIFBJIERrZDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI3NldFdoZWVsU3RlZXJpbmdQSURrcChqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0V2hlZWxTdGVlcmluZ1BJRGtwKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPldoZWVsU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0V2hlZWxTdGVlcmluZ1BJRGtwKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRXaGVlbFN0ZWVyaW5nUElEa3AoU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxTdGVlcmluZ1BJRGtwKCkiPjxDT0RFPjxlbT5XaGVlbCBTdGVlcmluZyBQSSBEa3A8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNzZXRXaGVlbFZlbG9jaXR5UElEa2QoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldFdoZWVsVmVsb2NpdHlQSURrZChTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5XaGVlbFN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI3NldFdoZWVsVmVsb2NpdHlQSURrZChqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0V2hlZWxWZWxvY2l0eVBJRGtkKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURrZCgpIj48Q09ERT48ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtkPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjc2V0V2hlZWxWZWxvY2l0eVBJRGtpKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRXaGVlbFZlbG9jaXR5UElEa2koU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2hlZWxTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRXaGVlbFZlbG9jaXR5UElEa2koamF2YS5sYW5nLlN0cmluZykiPjxCPnNldFdoZWVsVmVsb2NpdHlQSURraShTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEa2koKSI+PENPREU+PGVtPldoZWVsIFZlbG9jaXR5IFBJIERraTwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI3NldFdoZWVsVmVsb2NpdHlQSURrcChqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0V2hlZWxWZWxvY2l0eVBJRGtwKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPldoZWVsU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0V2hlZWxWZWxvY2l0eVBJRGtwKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRXaGVlbFZlbG9jaXR5UElEa3AoU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRGtwKCkiPjxDT0RFPjxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEa3A8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNzZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPldoZWVsU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bShqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bShTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtKCkiPjxDT0RFPjxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEbWF4IFN1bTwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI3NldFdoZWVsVmVsb2NpdHlQSURtYXhWYWwoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldFdoZWVsVmVsb2NpdHlQSURtYXhWYWwoU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2hlZWxTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRXaGVlbFZlbG9jaXR5UElEbWF4VmFsKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRXaGVlbFZlbG9jaXR5UElEbWF4VmFsKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURtYXhWYWwoKSI+PENPREU+PGVtPldoZWVsIFZlbG9jaXR5IFBJIERtYXggVmFsPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjc2V0V2hlZWxXaWR0aChqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0V2hlZWxXaWR0aChTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5XaGVlbFN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI3NldFdoZWVsV2lkdGgoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldFdoZWVsV2lkdGgoU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxXaWR0aCgpIj48Q09ERT48ZW0+V2hlZWwgV2lkdGg8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjc2V0V2lkdGgoamF2YS5sYW5nLlN0cmluZykiPjxCPnNldFdpZHRoKFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q2FtZXJhU3lzdGVtPC9BPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldFdpZHRoKCkiPjxDT0RFPjxlbT5XaWR0aDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCNzZXRXaWR0aChqYXZhLmxhbmcuU3RyaW5nKSI+PEI+c2V0V2lkdGgoU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkNhbWVyYVN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sI3NldFdpZHRoKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRXaWR0aChTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdEltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI3NldFdpZHRoKGphdmEubGFuZy5TdHJpbmcpIj48Qj5zZXRXaWR0aChTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3Q8L0E+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNnZXRXaWR0aCgpIj48Q09ERT48ZW0+V2lkdGg8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNTSEFERSI+PEI+U0hBREU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+U2hhZGU8L2VtPjwvQ09ERT48L0E+JyBlbnVtCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0hBREUiPjxCPlNIQURFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TaGFkZTwvZW0+PC9DT0RFPjwvQT4nIGVudW0KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TaGFkZTwvQj48L0E+IC0gRW51bSBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48REQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbGl0ZXJhbHMgb2YgdGhlIGVudW1lcmF0aW9uICc8ZW0+PGI+U2hhZGU8L2I+PC9lbT4nLAorIGFuZCB1dGlsaXR5IG1ldGhvZHMgZm9yIHdvcmtpbmcgd2l0aCB0aGVtPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1NJTVVMQVRFRF9TWVNURU0iPjxCPlNJTVVMQVRFRF9TWVNURU08L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlNpbXVsYXRlZCBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NJTVVMQVRFRF9TWVNURU0iPjxCPlNJTVVMQVRFRF9TWVNURU08L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2ltdWxhdGVkU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5TaW11bGF0ZWQgU3lzdGVtPC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTSU1VTEFURURfU1lTVEVNX19CQVNFX0NMQVNTIj48Qj5TSU1VTEFURURfU1lTVEVNX19CQVNFX0NMQVNTPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1NJTVVMQVRFRF9TWVNURU1fX0JBU0VfUFJPUEVSVFkiPjxCPlNJTVVMQVRFRF9TWVNURU1fX0JBU0VfUFJPUEVSVFk8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBQcm9wZXJ0eTwvYj48L2VtPicgcmVmZXJlbmNlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTSU1VTEFURURfU1lTVEVNX19CQVNFX1BST1BFUlRZIj48Qj5TSU1VTEFURURfU1lTVEVNX19CQVNFX1BST1BFUlRZPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgUHJvcGVydHk8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NJTVVMQVRFRF9TWVNURU1fX0RFQURMSU5FIj48Qj5TSU1VTEFURURfU1lTVEVNX19ERUFETElORTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5EZWFkbGluZTwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0lNVUxBVEVEX1NZU1RFTV9fSVNfUEVSSU9ESUMiPjxCPlNJTVVMQVRFRF9TWVNURU1fX0lTX1BFUklPRElDPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPklzIFBlcmlvZGljPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNTSU1VTEFURURfU1lTVEVNX19NRVNIIj48Qj5TSU1VTEFURURfU1lTVEVNX19NRVNIPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPk1lc2g8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0IGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTSU1VTEFURURfU1lTVEVNX19NRVNIIj48Qj5TSU1VTEFURURfU1lTVEVNX19NRVNIPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1lc2g8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0lNVUxBVEVEX1NZU1RFTV9fUEVSSU9EIj48Qj5TSU1VTEFURURfU1lTVEVNX19QRVJJT0Q8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UGVyaW9kPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTSU1VTEFURURfU1lTVEVNX19QUklPUklUWSI+PEI+U0lNVUxBVEVEX1NZU1RFTV9fUFJJT1JJVFk8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UHJpb3JpdHk8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NJTVVMQVRFRF9TWVNURU1fX1dDRVQiPjxCPlNJTVVMQVRFRF9TWVNURU1fX1dDRVQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2NldDwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0lNVUxBVEVEX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj48Qj5TSU1VTEFURURfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+U2ltdWxhdGVkIFN5c3RlbTwvZW0+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlNpbXVsYXRlZFN5c3RlbTwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjxERD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TaW11bGF0ZWQgU3lzdGVtPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+U2ltdWxhdGVkU3lzdGVtSW1wbDwvQj48L0E+IC0gQ2xhc3MgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjxERD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U2ltdWxhdGVkIFN5c3RlbTwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjU09GVFdBUkUiPjxCPlNPRlRXQVJFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlNvZnR3YXJlPC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTT0ZUV0FSRSI+PEI+U09GVFdBUkU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlNvZnR3YXJlPC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlNvZnR3YXJlPC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNvZnR3YXJlPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTT0ZUV0FSRV9fQkFTRV9DTEFTUyI+PEI+U09GVFdBUkVfX0JBU0VfQ0xBU1M8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjU09GVFdBUkVfX0RFQURMSU5FIj48Qj5TT0ZUV0FSRV9fREVBRExJTkU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+RGVhZGxpbmU8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU09GVFdBUkVfX0RFQURMSU5FIj48Qj5TT0ZUV0FSRV9fREVBRExJTkU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RGVhZGxpbmU8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1NPRlRXQVJFX19JU19QRVJJT0RJQyI+PEI+U09GVFdBUkVfX0lTX1BFUklPRElDPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPklzIFBlcmlvZGljPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NPRlRXQVJFX19JU19QRVJJT0RJQyI+PEI+U09GVFdBUkVfX0lTX1BFUklPRElDPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPklzIFBlcmlvZGljPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNTT0ZUV0FSRV9fUEVSSU9EIj48Qj5TT0ZUV0FSRV9fUEVSSU9EPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlBlcmlvZDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTT0ZUV0FSRV9fUEVSSU9EIj48Qj5TT0ZUV0FSRV9fUEVSSU9EPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlBlcmlvZDwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjU09GVFdBUkVfX1BSSU9SSVRZIj48Qj5TT0ZUV0FSRV9fUFJJT1JJVFk8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UHJpb3JpdHk8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU09GVFdBUkVfX1BSSU9SSVRZIj48Qj5TT0ZUV0FSRV9fUFJJT1JJVFk8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UHJpb3JpdHk8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1NPRlRXQVJFX19XQ0VUIj48Qj5TT0ZUV0FSRV9fV0NFVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5XY2V0PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NPRlRXQVJFX19XQ0VUIj48Qj5TT0ZUV0FSRV9fV0NFVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5XY2V0PC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTT0ZUV0FSRV9GRUFUVVJFX0NPVU5UIj48Qj5TT0ZUV0FSRV9GRUFUVVJFX0NPVU5UPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlNvZnR3YXJlPC9lbT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+U29mdHdhcmVJbXBsPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PEREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Tb2Z0d2FyZTwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwjU09MSURfVkFMVUUiPjxCPlNPTElEX1ZBTFVFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT4KKzxERD5UaGUgJzxlbT48Yj5TT0xJRDwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1NUQUlSUyI+PEI+U1RBSVJTPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhaXJzSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5TdGFpcnM8L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NUQUlSUyI+PEI+U1RBSVJTPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YWlyc0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+U3RhaXJzPC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TdGFpcnM8L0I+PC9BPiAtIEludGVyZmFjZSBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48REQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3RhaXJzPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTVEFJUlNfX0JBU0VfQ0xBU1MiPjxCPlNUQUlSU19fQkFTRV9DTEFTUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTVEFJUlNfX0VWRUxPVkVTX0lOIj48Qj5TVEFJUlNfX0VWRUxPVkVTX0lOPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkV2ZWxvdmVzIEluPC9iPjwvZW0+JyByZWZlcmVuY2UgbGlzdAorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NUQUlSU19fSEFTX1NVUkZBQ0UiPjxCPlNUQUlSU19fSEFTX1NVUkZBQ0U8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGFzIFN1cmZhY2U8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NUQUlSU19GRUFUVVJFX0NPVU5UIj48Qj5TVEFJUlNfRkVBVFVSRV9DT1VOVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5TdGFpcnM8L2VtPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGFpcnNJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+U3RhaXJzSW1wbDwvQj48L0E+IC0gQ2xhc3MgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjxERD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3RhaXJzPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvQWN0aXZhdG9yLmh0bWwjc3RhcnQob3JnLm9zZ2kuZnJhbWV3b3JrLkJ1bmRsZUNvbnRleHQpIj48Qj5zdGFydChCdW5kbGVDb250ZXh0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9BY3RpdmF0b3IuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1cyI+QWN0aXZhdG9yPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1NUQVRFIj48Qj5TVEFURTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5TdGF0ZTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU1RBVEUiPjxCPlNUQVRFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5TdGF0ZTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TdGF0ZTwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjxERD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TdGF0ZTwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjU1RBVEVfX0FSR1VNRU5UUyI+PEI+U1RBVEVfX0FSR1VNRU5UUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5Bcmd1bWVudHM8L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0IGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTVEFURV9fQVJHVU1FTlRTIj48Qj5TVEFURV9fQVJHVU1FTlRTPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkFyZ3VtZW50czwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3QKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNTVEFURV9fQkFTRV9TVEFURSI+PEI+U1RBVEVfX0JBU0VfU1RBVEU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBTdGF0ZTwvYj48L2VtPicgcmVmZXJlbmNlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTVEFURV9fQkFTRV9TVEFURSI+PEI+U1RBVEVfX0JBU0VfU1RBVEU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBTdGF0ZTwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjU1RBVEVfX09QRVJBVElPTiI+PEI+U1RBVEVfX09QRVJBVElPTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5PcGVyYXRpb248L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU1RBVEVfX09QRVJBVElPTiI+PEI+U1RBVEVfX09QRVJBVElPTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5PcGVyYXRpb248L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NUQVRFX0ZFQVRVUkVfQ09VTlQiPjxCPlNUQVRFX0ZFQVRVUkVfQ09VTlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+U3RhdGU8L2VtPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5TdGF0ZUltcGw8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48REQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlN0YXRlPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj48Qj5TdGRfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlczwvQT48REQ+VGhlIDxiPkZhY3Rvcnk8L2I+IGZvciB0aGUgbW9kZWwuPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj48Qj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGw8L0E+PEREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCA8Yj5GYWN0b3J5PC9iPjxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbCgpIj48Qj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwoKTwvQj48L0E+IC0gCitDb25zdHJ1Y3RvciBmb3IgY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPkNyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIGZhY3RvcnkKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj48Qj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlczwvQT48REQ+VGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGUgbW9kZWwuPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPjxCPlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzPC9BPjxERD5EZWZpbmVzIGxpdGVyYWxzIGZvciB0aGUgbWV0YSBvYmplY3RzIHRoYXQgcmVwcmVzZW50CisgCisgZWFjaCBjbGFzcywKKyBlYWNoIGZlYXR1cmUgb2YgZWFjaCBjbGFzcywKKyBlYWNoIGVudW0sCisgYW5kIGVhY2ggZGF0YSB0eXBlCisgCisgPCE8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPjxCPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQj48L0E+IC0gQ2xhc3MgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbDwvQT48REQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPlBhY2thZ2U8L2I+PERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9BY3RpdmF0b3IuaHRtbCNzdG9wKG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0KSI+PEI+c3RvcChCdW5kbGVDb250ZXh0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9BY3RpdmF0b3IuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1cyI+QWN0aXZhdG9yPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjU1RSSU5HIj48Qj5TVFJJTkc8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+U3RyaW5nPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjU1RSSU5HIj48Qj5TVFJJTkc8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlN0cmluZzwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNTVVJGQUNFIj48Qj5TVVJGQUNFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+U3VyZmFjZTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU1VSRkFDRSI+PEI+U1VSRkFDRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5TdXJmYWNlPC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U3VyZmFjZTwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjxERD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TdXJmYWNlPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTVVJGQUNFX19CQVNFX0NMQVNTIj48Qj5TVVJGQUNFX19CQVNFX0NMQVNTPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NVUkZBQ0VfX0VWRUxPVkVTX0lOIj48Qj5TVVJGQUNFX19FVkVMT1ZFU19JTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5FdmVsb3ZlcyBJbjwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3QKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTVVJGQUNFX19IQVNfU1VSRkFDRSI+PEI+U1VSRkFDRV9fSEFTX1NVUkZBQ0U8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGFzIFN1cmZhY2U8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NVUkZBQ0VfRkVBVFVSRV9DT1VOVCI+PEI+U1VSRkFDRV9GRUFUVVJFX0NPVU5UPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlN1cmZhY2U8L2VtPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlN1cmZhY2VJbXBsPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PEREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TdXJmYWNlPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sI1NZTkNIX1ZBTFVFIj48Qj5TWU5DSF9WQUxVRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeW5jaHJvbml6YXRpb25LaW5kPC9BPgorPEREPlRoZSAnPGVtPjxiPlNZTkNIPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjU1lOQ0hST05JWkFUSU9OX0tJTkQiPjxCPlNZTkNIUk9OSVpBVElPTl9LSU5EPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+U3luY2hyb25pemF0aW9uIEtpbmQ8L2VtPjwvQ09ERT48L0E+JyBlbnVtCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU1lOQ0hST05JWkFUSU9OX0tJTkQiPjxCPlNZTkNIUk9OSVpBVElPTl9LSU5EPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlN5bmNocm9uaXphdGlvbiBLaW5kPC9lbT48L0NPREU+PC9BPicgZW51bQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U3luY2hyb25pemF0aW9uS2luZDwvQj48L0E+IC0gRW51bSBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48REQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbGl0ZXJhbHMgb2YgdGhlIGVudW1lcmF0aW9uICc8ZW0+PGI+U3luY2hyb25pemF0aW9uIEtpbmQ8L2I+PC9lbT4nLAorIGFuZCB1dGlsaXR5IG1ldGhvZHMgZm9yIHdvcmtpbmcgd2l0aCB0aGVtPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1NZU1RFTSI+PEI+U1lTVEVNPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5TeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NZU1RFTSI+PEI+U1lTVEVNPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+U3lzdGVtPC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TeXN0ZW08L0I+PC9BPiAtIEludGVyZmFjZSBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48REQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3lzdGVtPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNTWVNURU1fX0JBU0VfQ0xBU1MiPjxCPlNZU1RFTV9fQkFTRV9DTEFTUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NZU1RFTV9fQkFTRV9DTEFTUyI+PEI+U1lTVEVNX19CQVNFX0NMQVNTPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NZU1RFTV9GRUFUVVJFX0NPVU5UIj48Qj5TWVNURU1fRkVBVFVSRV9DT1VOVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5TeXN0ZW08L2VtPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+U3lzdGVtSW1wbDwvQj48L0E+IC0gQ2xhc3MgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjxERD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3lzdGVtPC9iPjwvZW0+JzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC0xOC5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0yMC5odG1sIj48Qj5ORVhUIExFVFRFUjwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtMTkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0xOS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5CPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkM8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5FPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPko8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPks8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPkw8L0E+IDxBIEhSRUY9ImluZGV4LTEzLmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTE0Lmh0bWwiPk48L0E+IDxBIEhSRUY9ImluZGV4LTE1Lmh0bWwiPk88L0E+IDxBIEhSRUY9ImluZGV4LTE2Lmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTE3Lmh0bWwiPlE8L0E+IDxBIEhSRUY9ImluZGV4LTE4Lmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTE5Lmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTIwLmh0bWwiPlQ8L0E+IDxBIEhSRUY9ImluZGV4LTIxLmh0bWwiPlU8L0E+IDxBIEhSRUY9ImluZGV4LTIyLmh0bWwiPlY8L0E+IDxBIEhSRUY9ImluZGV4LTIzLmh0bWwiPlc8L0E+IDxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC0yLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2luZGV4LWZpbGVzL2luZGV4LTIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNTc5MGE5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC0yLmh0bWwKQEAgLTAsMCArMSwyNzAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMyBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK0ItSW5kZXgKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJCLUluZGV4IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC0xLmh0bWwiPjxCPlBSRVYgTEVUVEVSPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTMuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTIuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0yLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEEgSFJFRj0iaW5kZXgtMS5odG1sIj5BPC9BPiA8QSBIUkVGPSJpbmRleC0yLmh0bWwiPkI8L0E+IDxBIEhSRUY9ImluZGV4LTMuaHRtbCI+QzwvQT4gPEEgSFJFRj0iaW5kZXgtNC5odG1sIj5EPC9BPiA8QSBIUkVGPSJpbmRleC01Lmh0bWwiPkU8L0E+IDxBIEhSRUY9ImluZGV4LTYuaHRtbCI+RjwvQT4gPEEgSFJFRj0iaW5kZXgtNy5odG1sIj5HPC9BPiA8QSBIUkVGPSJpbmRleC04Lmh0bWwiPkg8L0E+IDxBIEhSRUY9ImluZGV4LTkuaHRtbCI+STwvQT4gPEEgSFJFRj0iaW5kZXgtMTAuaHRtbCI+SjwvQT4gPEEgSFJFRj0iaW5kZXgtMTEuaHRtbCI+SzwvQT4gPEEgSFJFRj0iaW5kZXgtMTIuaHRtbCI+TDwvQT4gPEEgSFJFRj0iaW5kZXgtMTMuaHRtbCI+TTwvQT4gPEEgSFJFRj0iaW5kZXgtMTQuaHRtbCI+TjwvQT4gPEEgSFJFRj0iaW5kZXgtMTUuaHRtbCI+TzwvQT4gPEEgSFJFRj0iaW5kZXgtMTYuaHRtbCI+UDwvQT4gPEEgSFJFRj0iaW5kZXgtMTcuaHRtbCI+UTwvQT4gPEEgSFJFRj0iaW5kZXgtMTguaHRtbCI+UjwvQT4gPEEgSFJFRj0iaW5kZXgtMTkuaHRtbCI+UzwvQT4gPEEgSFJFRj0iaW5kZXgtMjAuaHRtbCI+VDwvQT4gPEEgSFJFRj0iaW5kZXgtMjEuaHRtbCI+VTwvQT4gPEEgSFJFRj0iaW5kZXgtMjIuaHRtbCI+VjwvQT4gPEEgSFJFRj0iaW5kZXgtMjMuaHRtbCI+VzwvQT4gPEhSPgorPEEgTkFNRT0iX0JfIj48IS0tIC0tPjwvQT48SDI+Cis8Qj5CPC9CPjwvSDI+Cis8REw+Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCNiYXNpY0dldEJhc2VfQ2xhc3MoKSI+PEI+YmFzaWNHZXRCYXNlX0NsYXNzKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWxnb3JpdGhtTGlicmFyeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNiYXNpY0dldEJhc2VfQ2xhc3MoKSI+PEI+YmFzaWNHZXRCYXNlX0NsYXNzKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db2xsZWN0aW9uSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9EYXRhVHlwZSgpIj48Qj5iYXNpY0dldEJhc2VfRGF0YVR5cGUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29sbGVjdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Db2xsZWN0aW9uSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29tcG9zZWREYXRhSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9EYXRhVHlwZSgpIj48Qj5iYXNpY0dldEJhc2VfRGF0YVR5cGUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29tcG9zZWREYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkNvbXBvc2VkRGF0YUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsRGF0YUltcGwuaHRtbCNiYXNpY0dldEJhc2VfRGF0YVR5cGUoKSI+PEI+YmFzaWNHZXRCYXNlX0RhdGFUeXBlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QaHlzaWNhbERhdGFJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCNiYXNpY0dldEJhc2VfTm9kZSgpIj48Qj5iYXNpY0dldEJhc2VfTm9kZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QbGF0Zm9ybUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9PcGVyYXRpb24oKSI+PEI+YmFzaWNHZXRCYXNlX09wZXJhdGlvbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWxnb3JpdGhtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT25Qb3J0SW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9QYXJhbWV0ZXIoKSI+PEI+YmFzaWNHZXRCYXNlX1BhcmFtZXRlcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PblBvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+T25Qb3J0SW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9Qb3J0KCkiPjxCPmJhc2ljR2V0QmFzZV9Qb3J0KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UG9ydEltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1ByaW1pdGl2ZURhdGFJbXBsLmh0bWwjYmFzaWNHZXRCYXNlX1ByaW1pdGl2ZVR5cGUoKSI+PEI+YmFzaWNHZXRCYXNlX1ByaW1pdGl2ZVR5cGUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUHJpbWl0aXZlRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QcmltaXRpdmVEYXRhSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2ltdWxhdGVkU3lzdGVtSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9Qcm9wZXJ0eSgpIj48Qj5iYXNpY0dldEJhc2VfUHJvcGVydHkoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2ltdWxhdGVkU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNpbXVsYXRlZFN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9TdGF0ZSgpIj48Qj5iYXNpY0dldEJhc2VfU3RhdGUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhdGVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3RhdGVJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9UcmFuc2l0aW9uKCkiPjxCPmJhc2ljR2V0QmFzZV9UcmFuc2l0aW9uKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+VHJhbnNpdGlvbkltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwjYmFzaWNHZXRFZmZlY3QoKSI+PEI+YmFzaWNHZXRFZmZlY3QoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5UcmFuc2l0aW9uSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCNiYXNpY0dldEd1YXJkKCkiPjxCPmJhc2ljR2V0R3VhcmQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5UcmFuc2l0aW9uSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjYmFzaWNHZXRIYXNTdXJmYWNlKCkiPjxCPmJhc2ljR2V0SGFzU3VyZmFjZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QaHlzaWNhbE9iamVjdEltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhdGVJbXBsLmh0bWwjYmFzaWNHZXRPcGVyYXRpb24oKSI+PEI+YmFzaWNHZXRPcGVyYXRpb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhdGVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3RhdGVJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PblBvcnRJbXBsLmh0bWwjYmFzaWNHZXRQb3J0KCkiPjxCPmJhc2ljR2V0UG9ydCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PblBvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+T25Qb3J0SW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNCTEVOREVSX01PUlNFIj48Qj5CTEVOREVSX01PUlNFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+QmxlbmRlciBNb3JzZTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQkxFTkRFUl9NT1JTRSI+PEI+QkxFTkRFUl9NT1JTRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+QmxlbmRlciBNb3JzZTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQkxFTkRFUl9NT1JTRV9fQkFTRV9DTEFTUyI+PEI+QkxFTkRFUl9NT1JTRV9fQkFTRV9DTEFTUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNCTEVOREVSX01PUlNFX19CQVNFX05PREUiPjxCPkJMRU5ERVJfTU9SU0VfX0JBU0VfTk9ERTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIE5vZGU8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0JMRU5ERVJfTU9SU0VfX0RFQlVHX0RJU1BMQVkiPjxCPkJMRU5ERVJfTU9SU0VfX0RFQlVHX0RJU1BMQVk8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RGVidWcgRGlzcGxheTwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQkxFTkRFUl9NT1JTRV9fREVCVUdfRElTUExBWSI+PEI+QkxFTkRFUl9NT1JTRV9fREVCVUdfRElTUExBWTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5EZWJ1ZyBEaXNwbGF5PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0JMRU5ERVJfTU9SU0VfX0RFQlVHX01PREUiPjxCPkJMRU5ERVJfTU9SU0VfX0RFQlVHX01PREU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RGVidWcgTW9kZTwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQkxFTkRFUl9NT1JTRV9fREVCVUdfTU9ERSI+PEI+QkxFTkRFUl9NT1JTRV9fREVCVUdfTU9ERTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5EZWJ1ZyBNb2RlPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0JMRU5ERVJfTU9SU0VfX0dSQVZJVFkiPjxCPkJMRU5ERVJfTU9SU0VfX0dSQVZJVFk8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+R3Jhdml0eTwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQkxFTkRFUl9NT1JTRV9fR1JBVklUWSI+PEI+QkxFTkRFUl9NT1JTRV9fR1JBVklUWTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5HcmF2aXR5PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0JMRU5ERVJfTU9SU0VfX1ZJRVdQT1JUX1NIQURFIj48Qj5CTEVOREVSX01PUlNFX19WSUVXUE9SVF9TSEFERTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj52aWV3cG9ydCBzaGFkZTwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQkxFTkRFUl9NT1JTRV9fVklFV1BPUlRfU0hBREUiPjxCPkJMRU5ERVJfTU9SU0VfX1ZJRVdQT1JUX1NIQURFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPnZpZXdwb3J0IHNoYWRlPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0JMRU5ERVJfTU9SU0VfRkVBVFVSRV9DT1VOVCI+PEI+QkxFTkRFUl9NT1JTRV9GRUFUVVJFX0NPVU5UPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkJsZW5kZXIgTW9yc2U8L2VtPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5CbGVuZGVyTW9yc2U8L0I+PC9BPiAtIEludGVyZmFjZSBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48REQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QmxlbmRlciBNb3JzZTwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkJsZW5kZXJNb3JzZUltcGw8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48REQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkJsZW5kZXIgTW9yc2U8L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjQk9PTCI+PEI+Qk9PTDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+Qm9vbDwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI0JPT0wiPjxCPkJPT0w8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+Qm9vbDwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCNCT1VOREJPWF9WQUxVRSI+PEI+Qk9VTkRCT1hfVkFMVUU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPgorPEREPlRoZSAnPGVtPjxiPkJPVU5EQk9YPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0J1aWxkaW5nLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5CdWlsZGluZzwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjxERD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5CdWlsZGluZzwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQlVJTERJTkciPjxCPkJVSUxESU5HPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0J1aWxkaW5nSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5CdWlsZGluZzwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQlVJTERJTkciPjxCPkJVSUxESU5HPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQnVpbGRpbmdJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkJ1aWxkaW5nPC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNCVUlMRElOR19fQkFTRV9DTEFTUyI+PEI+QlVJTERJTkdfX0JBU0VfQ0xBU1M8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQlVJTERJTkdfX0VWRUxPVkVTX0lOIj48Qj5CVUlMRElOR19fRVZFTE9WRVNfSU48L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RXZlbG92ZXMgSW48L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQlVJTERJTkdfX0hBU19TVVJGQUNFIj48Qj5CVUlMRElOR19fSEFTX1NVUkZBQ0U8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGFzIFN1cmZhY2U8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0JVSUxESU5HX0ZFQVRVUkVfQ09VTlQiPjxCPkJVSUxESU5HX0ZFQVRVUkVfQ09VTlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+QnVpbGRpbmc8L2VtPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CdWlsZGluZ0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5CdWlsZGluZ0ltcGw8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48REQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkJ1aWxkaW5nPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0JZVEUiPjxCPkJZVEU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkJ5dGU8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNCWVRFIj48Qj5CWVRFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkJ5dGU8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNCWVRFX01VTFRJX0FSUkFZIj48Qj5CWVRFX01VTFRJX0FSUkFZPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5CeXRlIE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQllURV9NVUxUSV9BUlJBWSI+PEI+QllURV9NVUxUSV9BUlJBWTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5CeXRlIE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZQorPC9ETD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+SW5kZXg8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMy5odG1sIj48Qj5ORVhUIExFVFRFUjwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtMi5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTIuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+QjwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5DPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+RTwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5KPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5LPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5MPC9BPiA8QSBIUkVGPSJpbmRleC0xMy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC0xNC5odG1sIj5OPC9BPiA8QSBIUkVGPSJpbmRleC0xNS5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC0xNi5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xNy5odG1sIj5RPC9BPiA8QSBIUkVGPSJpbmRleC0xOC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xOS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0yMC5odG1sIj5UPC9BPiA8QSBIUkVGPSJpbmRleC0yMS5odG1sIj5VPC9BPiA8QSBIUkVGPSJpbmRleC0yMi5odG1sIj5WPC9BPiA8QSBIUkVGPSJpbmRleC0yMy5odG1sIj5XPC9BPiA8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMjAuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMjAuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40ZTI3YjAyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC0yMC5odG1sCkBAIC0wLDAgKzEsMjc5IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzMgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitULUluZGV4Cis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVC1JbmRleCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTkuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMjEuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTIwLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMjAuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+QjwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5DPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+RTwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5KPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5LPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5MPC9BPiA8QSBIUkVGPSJpbmRleC0xMy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC0xNC5odG1sIj5OPC9BPiA8QSBIUkVGPSJpbmRleC0xNS5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC0xNi5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xNy5odG1sIj5RPC9BPiA8QSBIUkVGPSJpbmRleC0xOC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xOS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0yMC5odG1sIj5UPC9BPiA8QSBIUkVGPSJpbmRleC0yMS5odG1sIj5VPC9BPiA8QSBIUkVGPSJpbmRleC0yMi5odG1sIj5WPC9BPiA8QSBIUkVGPSJpbmRleC0yMy5odG1sIj5XPC9BPiA8SFI+Cis8QSBOQU1FPSJfVF8iPjwhLS0gLS0+PC9BPjxIMj4KKzxCPlQ8L0I+PC9IMj4KKzxETD4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCNURVhUVVJFRF9WQUxVRSI+PEI+VEVYVFVSRURfVkFMVUU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPgorPEREPlRoZSAnPGVtPjxiPlRFWFRVUkVEPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNUSU1FIj48Qj5USU1FPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlRpbWU8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNUSU1FIj48Qj5USU1FPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5UaW1lPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCN0b1N0cmluZygpIj48Qj50b1N0cmluZygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPgorPEREPlJldHVybnMgdGhlIGxpdGVyYWwgdmFsdWUgb2YgdGhlIGVudW1lcmF0b3IsIHdoaWNoIGlzIGl0cyBzdHJpbmcgcmVwcmVzZW50YXRpb24KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1JbXBsLmh0bWwjdG9TdHJpbmcoKSI+PEI+dG9TdHJpbmcoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFsZ29yaXRobUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwjdG9TdHJpbmcoKSI+PEI+dG9TdHJpbmcoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BbGdvcml0aG1MaWJyYXJ5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sI3RvU3RyaW5nKCkiPjxCPnRvU3RyaW5nKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5CbGVuZGVyTW9yc2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCN0b1N0cmluZygpIj48Qj50b1N0cmluZygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q2FtZXJhU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ3ljYWJUS0ltcGwuaHRtbCN0b1N0cmluZygpIj48Qj50b1N0cmluZygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkN5Y2FiVEtJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCN0b1N0cmluZygpIj48Qj50b1N0cmluZygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9EYXRhRmxvd1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+RGF0YUZsb3dQb3J0SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sI3RvU3RyaW5nKCkiPjxCPnRvU3RyaW5nKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5FbmdpbmVTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HUFNTeXN0ZW1JbXBsLmh0bWwjdG9TdHJpbmcoKSI+PEI+dG9TdHJpbmcoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR1BTU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkdQU1N5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI3RvU3RyaW5nKCkiPjxCPnRvU3RyaW5nKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkxpZGFyU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxEYXRhSW1wbC5odG1sI3RvU3RyaW5nKCkiPjxCPnRvU3RyaW5nKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QaHlzaWNhbERhdGFJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sI3RvU3RyaW5nKCkiPjxCPnRvU3RyaW5nKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UG9ydEltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNNaWRkbGV3YXJlSW1wbC5odG1sI3RvU3RyaW5nKCkiPjxCPnRvU3RyaW5nKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNNaWRkbGV3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90aWNNaWRkbGV3YXJlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI3RvU3RyaW5nKCkiPjxCPnRvU3RyaW5nKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY1N5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sI3RvU3RyaW5nKCkiPjxCPnRvU3RyaW5nKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI3RvU3RyaW5nKCkiPjxCPnRvU3RyaW5nKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JTeXN0ZW1JbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sI3RvU3RyaW5nKCkiPjxCPnRvU3RyaW5nKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlcnZpY2VQb3J0SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2ltdWxhdGVkU3lzdGVtSW1wbC5odG1sI3RvU3RyaW5nKCkiPjxCPnRvU3RyaW5nKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NpbXVsYXRlZFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TaW11bGF0ZWRTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCN0b1N0cmluZygpIj48Qj50b1N0cmluZygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Tb2Z0d2FyZUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjdG9TdHJpbmcoKSI+PEI+dG9TdHJpbmcoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2hlZWxTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwjdG9TdHJpbmcoKSI+PEI+dG9TdHJpbmcoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT4KKzxERD5SZXR1cm5zIHRoZSBsaXRlcmFsIHZhbHVlIG9mIHRoZSBlbnVtZXJhdG9yLCB3aGljaCBpcyBpdHMgc3RyaW5nIHJlcHJlc2VudGF0aW9uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sI3RvU3RyaW5nKCkiPjxCPnRvU3RyaW5nKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdEtpbmQ8L0E+Cis8REQ+UmV0dXJucyB0aGUgbGl0ZXJhbCB2YWx1ZSBvZiB0aGUgZW51bWVyYXRvciwgd2hpY2ggaXMgaXRzIHN0cmluZyByZXByZXNlbnRhdGlvbgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCN0b1N0cmluZygpIj48Qj50b1N0cmluZygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZUZsb3dLaW5kPC9BPgorPEREPlJldHVybnMgdGhlIGxpdGVyYWwgdmFsdWUgb2YgdGhlIGVudW1lcmF0b3IsIHdoaWNoIGlzIGl0cyBzdHJpbmcgcmVwcmVzZW50YXRpb24KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCN0b1N0cmluZygpIj48Qj50b1N0cmluZygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBsaXRlcmFsIHZhbHVlIG9mIHRoZSBlbnVtZXJhdG9yLCB3aGljaCBpcyBpdHMgc3RyaW5nIHJlcHJlc2VudGF0aW9uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCN0b1N0cmluZygpIj48Qj50b1N0cmluZygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5bmNocm9uaXphdGlvbktpbmQ8L0E+Cis8REQ+UmV0dXJucyB0aGUgbGl0ZXJhbCB2YWx1ZSBvZiB0aGUgZW51bWVyYXRvciwgd2hpY2ggaXMgaXRzIHN0cmluZyByZXByZXNlbnRhdGlvbgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwjdG9TdHJpbmcoKSI+PEI+dG9TdHJpbmcoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5VR1ZLaW5kPC9BPgorPEREPlJldHVybnMgdGhlIGxpdGVyYWwgdmFsdWUgb2YgdGhlIGVudW1lcmF0b3IsIHdoaWNoIGlzIGl0cyBzdHJpbmcgcmVwcmVzZW50YXRpb24KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCN0b1N0cmluZygpIj48Qj50b1N0cmluZygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Vbml0S2luZDwvQT4KKzxERD5SZXR1cm5zIHRoZSBsaXRlcmFsIHZhbHVlIG9mIHRoZSBlbnVtZXJhdG9yLCB3aGljaCBpcyBpdHMgc3RyaW5nIHJlcHJlc2VudGF0aW9uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjVFJBTlNGT1JNIj48Qj5UUkFOU0ZPUk08L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlRyYW5zZm9ybTwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNUUkFOU0ZPUk0iPjxCPlRSQU5TRk9STTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlRyYW5zZm9ybTwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNUUkFOU0lUSU9OIj48Qj5UUkFOU0lUSU9OPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+VHJhbnNpdGlvbjwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjVFJBTlNJVElPTiI+PEI+VFJBTlNJVElPTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5UcmFuc2l0aW9uPC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+VHJhbnNpdGlvbjwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjxERD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5UcmFuc2l0aW9uPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNUUkFOU0lUSU9OX19CQVNFX1RSQU5TSVRJT04iPjxCPlRSQU5TSVRJT05fX0JBU0VfVFJBTlNJVElPTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5CYXNlIFRyYW5zaXRpb248L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjVFJBTlNJVElPTl9fQkFTRV9UUkFOU0lUSU9OIj48Qj5UUkFOU0lUSU9OX19CQVNFX1RSQU5TSVRJT048L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBUcmFuc2l0aW9uPC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNUUkFOU0lUSU9OX19FRkZFQ1QiPjxCPlRSQU5TSVRJT05fX0VGRkVDVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5FZmZlY3Q8L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjVFJBTlNJVElPTl9fRUZGRUNUIj48Qj5UUkFOU0lUSU9OX19FRkZFQ1Q8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RWZmZWN0PC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNUUkFOU0lUSU9OX19HVUFSRCI+PEI+VFJBTlNJVElPTl9fR1VBUkQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+R3VhcmQ8L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjVFJBTlNJVElPTl9fR1VBUkQiPjxCPlRSQU5TSVRJT05fX0dVQVJEPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkd1YXJkPC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNUUkFOU0lUSU9OX0ZFQVRVUkVfQ09VTlQiPjxCPlRSQU5TSVRJT05fRkVBVFVSRV9DT1VOVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5UcmFuc2l0aW9uPC9lbT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5UcmFuc2l0aW9uSW1wbDwvQj48L0E+IC0gQ2xhc3MgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjxERD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+VHJhbnNpdGlvbjwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjVFdJU1QiPjxCPlRXSVNUPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Ud2lzdDwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNUV0lTVCI+PEI+VFdJU1Q8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Ud2lzdDwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNUV0lTVF9TVEFNUEVEIj48Qj5UV0lTVF9TVEFNUEVEPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Ud2lzdCBTdGFtcGVkPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1RXSVNUX1NUQU1QRUQiPjxCPlRXSVNUX1NUQU1QRUQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Ud2lzdCBTdGFtcGVkPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1RXSVNUX1dJVEhfQ09WQVJJQU5DRSI+PEI+VFdJU1RfV0lUSF9DT1ZBUklBTkNFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Ud2lzdCBXaXRoIENvdmFyaWFuY2U8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjVFdJU1RfV0lUSF9DT1ZBUklBTkNFIj48Qj5UV0lTVF9XSVRIX0NPVkFSSUFOQ0U8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Ud2lzdCBXaXRoIENvdmFyaWFuY2U8L2VtPicgZGF0YSB0eXBlCis8L0RMPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTkuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMjEuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTIwLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMjAuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+QjwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5DPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+RTwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5KPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5LPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5MPC9BPiA8QSBIUkVGPSJpbmRleC0xMy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC0xNC5odG1sIj5OPC9BPiA8QSBIUkVGPSJpbmRleC0xNS5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC0xNi5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xNy5odG1sIj5RPC9BPiA8QSBIUkVGPSJpbmRleC0xOC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xOS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0yMC5odG1sIj5UPC9BPiA8QSBIUkVGPSJpbmRleC0yMS5odG1sIj5VPC9BPiA8QSBIUkVGPSJpbmRleC0yMi5odG1sIj5WPC9BPiA8QSBIUkVGPSJpbmRleC0yMy5odG1sIj5XPC9BPiA8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMjEuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMjEuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNDNiZDI2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC0yMS5odG1sCkBAIC0wLDAgKzEsMjE4IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzMgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVLUluZGV4Cis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVS1JbmRleCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtMjAuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMjIuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTIxLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMjEuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+QjwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5DPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+RTwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5KPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5LPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5MPC9BPiA8QSBIUkVGPSJpbmRleC0xMy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC0xNC5odG1sIj5OPC9BPiA8QSBIUkVGPSJpbmRleC0xNS5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC0xNi5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xNy5odG1sIj5RPC9BPiA8QSBIUkVGPSJpbmRleC0xOC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xOS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0yMC5odG1sIj5UPC9BPiA8QSBIUkVGPSJpbmRleC0yMS5odG1sIj5VPC9BPiA8QSBIUkVGPSJpbmRleC0yMi5odG1sIj5WPC9BPiA8QSBIUkVGPSJpbmRleC0yMy5odG1sIj5XPC9BPiA8SFI+Cis8QSBOQU1FPSJfVV8iPjwhLS0gLS0+PC9BPjxIMj4KKzxCPlU8L0I+PC9IMj4KKzxETD4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwjVUFWX1ZBTFVFIj48Qj5VQVZfVkFMVUU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdEtpbmQ8L0E+Cis8REQ+VGhlICc8ZW0+PGI+VUFWPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjVUdWX0tJTkQiPjxCPlVHVl9LSU5EPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+VUdWIEtpbmQ8L2VtPjwvQ09ERT48L0E+JyBlbnVtCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjVUdWX0tJTkQiPjxCPlVHVl9LSU5EPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlVHViBLaW5kPC9lbT48L0NPREU+PC9BPicgZW51bQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCNVR1ZfVkFMVUUiPjxCPlVHVl9WQUxVRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90S2luZDwvQT4KKzxERD5UaGUgJzxlbT48Yj5VR1Y8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlVHVktpbmQ8L0I+PC9BPiAtIEVudW0gaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIGxpdGVyYWxzIG9mIHRoZSBlbnVtZXJhdGlvbiAnPGVtPjxiPlVHViBLaW5kPC9iPjwvZW0+JywKKyBhbmQgdXRpbGl0eSBtZXRob2RzIGZvciB3b3JraW5nIHdpdGggdGhlbTxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1VJSU5UMTZfTVVMVElfQVJSQVkiPjxCPlVJSU5UMTZfTVVMVElfQVJSQVk8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VUlpbnQxNiBNdWx0aSBBcnJheTwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI1VJSU5UMTZfTVVMVElfQVJSQVkiPjxCPlVJSU5UMTZfTVVMVElfQVJSQVk8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlVJaW50MTYgTXVsdGkgQXJyYXk8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNVSU5UMTYiPjxCPlVJTlQxNjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5VSW50MTY8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNVSU5UMTYiPjxCPlVJTlQxNjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+VUludDE2PC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjVUlOVDMyIj48Qj5VSU5UMzI8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VUludDMyPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjVUlOVDMyIj48Qj5VSU5UMzI8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlVJbnQzMjwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1VJTlQzMl9NVUxUSV9BUlJBWSI+PEI+VUlOVDMyX01VTFRJX0FSUkFZPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlVJbnQzMiBNdWx0aSBBcnJheTwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI1VJTlQzMl9NVUxUSV9BUlJBWSI+PEI+VUlOVDMyX01VTFRJX0FSUkFZPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5VSW50MzIgTXVsdGkgQXJyYXk8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNVSU5UNjQiPjxCPlVJTlQ2NDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5VSW50NjQ8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNVSU5UNjQiPjxCPlVJTlQ2NDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+VUludDY0PC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjVUlOVDY0X01VTFRJX0FSUkFZIj48Qj5VSU5UNjRfTVVMVElfQVJSQVk8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VUludDY0IE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjVUlOVDY0X01VTFRJX0FSUkFZIj48Qj5VSU5UNjRfTVVMVElfQVJSQVk8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlVJbnQ2NCBNdWx0aSBBcnJheTwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1VJTlQ4Ij48Qj5VSU5UODwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5VSW50ODwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI1VJTlQ4Ij48Qj5VSU5UODwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+VUludDg8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNVSU5UOF9NVUxUSV9BUlJBWSI+PEI+VUlOVDhfTVVMVElfQVJSQVk8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VUludDggTXVsdGkgQXJyYXk8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNVSU5UOF9NVUxUSV9BUlJBWSI+PEI+VUlOVDhfTVVMVElfQVJSQVk8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlVJbnQ4IE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwjVU5ERUZJTkVEX1ZBTFVFIj48Qj5VTkRFRklORURfVkFMVUU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT4KKzxERD5UaGUgJzxlbT48Yj5VbmRlZmluZWQ8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNVTklUX0tJTkQiPjxCPlVOSVRfS0lORDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Vbml0IEtpbmQ8L2VtPjwvQ09ERT48L0E+JyBlbnVtCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjVU5JVF9LSU5EIj48Qj5VTklUX0tJTkQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlVuaXQgS2luZDwvZW0+PC9DT0RFPjwvQT4nIGVudW0KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Vbml0S2luZDwvQj48L0E+IC0gRW51bSBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48REQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbGl0ZXJhbHMgb2YgdGhlIGVudW1lcmF0aW9uICc8ZW0+PGI+VW5pdCBLaW5kPC9iPjwvZW0+JywKKyBhbmQgdXRpbGl0eSBtZXRob2RzIGZvciB3b3JraW5nIHdpdGggdGhlbTxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwjVVJCSV9WQUxVRSI+PEI+VVJCSV9WQUxVRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT4KKzxERD5UaGUgJzxlbT48Yj5VUkJJPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sI1VTVl9WQUxVRSI+PEI+VVNWX1ZBTFVFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPgorPEREPlRoZSAnPGVtPjxiPlVTVjwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCNVVVZfVkFMVUUiPjxCPlVVVl9WQUxVRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90S2luZDwvQT4KKzxERD5UaGUgJzxlbT48Yj5VVVY8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUKKzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC0yMC5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0yMi5odG1sIj48Qj5ORVhUIExFVFRFUjwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtMjEuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0yMS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5CPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkM8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5FPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPko8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPks8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPkw8L0E+IDxBIEhSRUY9ImluZGV4LTEzLmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTE0Lmh0bWwiPk48L0E+IDxBIEhSRUY9ImluZGV4LTE1Lmh0bWwiPk88L0E+IDxBIEhSRUY9ImluZGV4LTE2Lmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTE3Lmh0bWwiPlE8L0E+IDxBIEhSRUY9ImluZGV4LTE4Lmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTE5Lmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTIwLmh0bWwiPlQ8L0E+IDxBIEhSRUY9ImluZGV4LTIxLmh0bWwiPlU8L0E+IDxBIEhSRUY9ImluZGV4LTIyLmh0bWwiPlY8L0E+IDxBIEhSRUY9ImluZGV4LTIzLmh0bWwiPlc8L0E+IDxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC0yMi5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC0yMi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJiNjZkZWEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2luZGV4LWZpbGVzL2luZGV4LTIyLmh0bWwKQEAgLTAsMCArMSwyMzAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMyBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1YtSW5kZXgKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJWLUluZGV4IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC0yMS5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0yMy5odG1sIj48Qj5ORVhUIExFVFRFUjwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtMjIuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0yMi5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5CPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkM8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5FPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPko8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPks8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPkw8L0E+IDxBIEhSRUY9ImluZGV4LTEzLmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTE0Lmh0bWwiPk48L0E+IDxBIEhSRUY9ImluZGV4LTE1Lmh0bWwiPk88L0E+IDxBIEhSRUY9ImluZGV4LTE2Lmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTE3Lmh0bWwiPlE8L0E+IDxBIEhSRUY9ImluZGV4LTE4Lmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTE5Lmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTIwLmh0bWwiPlQ8L0E+IDxBIEhSRUY9ImluZGV4LTIxLmh0bWwiPlU8L0E+IDxBIEhSRUY9ImluZGV4LTIyLmh0bWwiPlY8L0E+IDxBIEhSRUY9ImluZGV4LTIzLmh0bWwiPlc8L0E+IDxIUj4KKzxBIE5BTUU9Il9WXyI+PCEtLSAtLT48L0E+PEgyPgorPEI+VjwvQj48L0gyPgorPERMPgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCN2YWx1ZU9mKGphdmEubGFuZy5TdHJpbmcpIj48Qj52YWx1ZU9mKFN0cmluZyk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPgorPEREPlJldHVybnMgdGhlIGVudW0gY29uc3RhbnQgb2YgdGhpcyB0eXBlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCN2YWx1ZU9mKGphdmEubGFuZy5TdHJpbmcpIj48Qj52YWx1ZU9mKFN0cmluZyk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPgorPEREPlJldHVybnMgdGhlIGVudW0gY29uc3RhbnQgb2YgdGhpcyB0eXBlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCN2YWx1ZU9mKGphdmEubGFuZy5TdHJpbmcpIj48Qj52YWx1ZU9mKFN0cmluZyk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPgorPEREPlJldHVybnMgdGhlIGVudW0gY29uc3RhbnQgb2YgdGhpcyB0eXBlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCN2YWx1ZU9mKGphdmEubGFuZy5TdHJpbmcpIj48Qj52YWx1ZU9mKFN0cmluZyk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZUZsb3dLaW5kPC9BPgorPEREPlJldHVybnMgdGhlIGVudW0gY29uc3RhbnQgb2YgdGhpcyB0eXBlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sI3ZhbHVlT2YoamF2YS5sYW5nLlN0cmluZykiPjxCPnZhbHVlT2YoU3RyaW5nKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPgorPEREPlJldHVybnMgdGhlIGVudW0gY29uc3RhbnQgb2YgdGhpcyB0eXBlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwjdmFsdWVPZihqYXZhLmxhbmcuU3RyaW5nKSI+PEI+dmFsdWVPZihTdHJpbmcpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeW5jaHJvbml6YXRpb25LaW5kPC9BPgorPEREPlJldHVybnMgdGhlIGVudW0gY29uc3RhbnQgb2YgdGhpcyB0eXBlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwjdmFsdWVPZihqYXZhLmxhbmcuU3RyaW5nKSI+PEI+dmFsdWVPZihTdHJpbmcpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5VR1ZLaW5kPC9BPgorPEREPlJldHVybnMgdGhlIGVudW0gY29uc3RhbnQgb2YgdGhpcyB0eXBlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sI3ZhbHVlT2YoamF2YS5sYW5nLlN0cmluZykiPjxCPnZhbHVlT2YoU3RyaW5nKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPgorPEREPlJldHVybnMgdGhlIGVudW0gY29uc3RhbnQgb2YgdGhpcyB0eXBlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCNWQUxVRVMiPjxCPlZBTFVFUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93RGlyZWN0aW9uS2luZDwvQT4KKzxERD5BIHB1YmxpYyByZWFkLW9ubHkgbGlzdCBvZiBhbGwgdGhlICc8ZW0+PGI+RGF0YSBGbG93IERpcmVjdGlvbiBLaW5kPC9iPjwvZW0+JyBlbnVtZXJhdG9ycworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCN2YWx1ZXMoKSI+PEI+dmFsdWVzKCk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPgorPEREPlJldHVybnMgYW4gYXJyYXkgY29udGFpbmluZyB0aGUgY29uc3RhbnRzIG9mIHRoaXMgZW51bSB0eXBlLCBpbgordGhlIG9yZGVyIHRoZXkncmUgZGVjbGFyZWQuCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sI1ZBTFVFUyI+PEI+VkFMVUVTPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPgorPEREPkEgcHVibGljIHJlYWQtb25seSBsaXN0IG9mIGFsbCB0aGUgJzxlbT48Yj5Sb2JvdGljIE1pZGRsZXdhcmUgS2luZDwvYj48L2VtPicgZW51bWVyYXRvcnMKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwjdmFsdWVzKCkiPjxCPnZhbHVlcygpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT4KKzxERD5SZXR1cm5zIGFuIGFycmF5IGNvbnRhaW5pbmcgdGhlIGNvbnN0YW50cyBvZiB0aGlzIGVudW0gdHlwZSwgaW4KK3RoZSBvcmRlciB0aGV5J3JlIGRlY2xhcmVkLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCNWQUxVRVMiPjxCPlZBTFVFUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90S2luZDwvQT4KKzxERD5BIHB1YmxpYyByZWFkLW9ubHkgbGlzdCBvZiBhbGwgdGhlICc8ZW0+PGI+Um9ib3QgS2luZDwvYj48L2VtPicgZW51bWVyYXRvcnMKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwjdmFsdWVzKCkiPjxCPnZhbHVlcygpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90S2luZDwvQT4KKzxERD5SZXR1cm5zIGFuIGFycmF5IGNvbnRhaW5pbmcgdGhlIGNvbnN0YW50cyBvZiB0aGlzIGVudW0gdHlwZSwgaW4KK3RoZSBvcmRlciB0aGV5J3JlIGRlY2xhcmVkLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCNWQUxVRVMiPjxCPlZBTFVFUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT4KKzxERD5BIHB1YmxpYyByZWFkLW9ubHkgbGlzdCBvZiBhbGwgdGhlICc8ZW0+PGI+U2VydmljZSBGbG93IEtpbmQ8L2I+PC9lbT4nIGVudW1lcmF0b3JzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sI3ZhbHVlcygpIj48Qj52YWx1ZXMoKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlRmxvd0tpbmQ8L0E+Cis8REQ+UmV0dXJucyBhbiBhcnJheSBjb250YWluaW5nIHRoZSBjb25zdGFudHMgb2YgdGhpcyBlbnVtIHR5cGUsIGluCit0aGUgb3JkZXIgdGhleSdyZSBkZWNsYXJlZC4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCNWQUxVRVMiPjxCPlZBTFVFUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2hhZGU8L0E+Cis8REQ+QSBwdWJsaWMgcmVhZC1vbmx5IGxpc3Qgb2YgYWxsIHRoZSAnPGVtPjxiPlNoYWRlPC9iPjwvZW0+JyBlbnVtZXJhdG9ycworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sI3ZhbHVlcygpIj48Qj52YWx1ZXMoKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPgorPEREPlJldHVybnMgYW4gYXJyYXkgY29udGFpbmluZyB0aGUgY29uc3RhbnRzIG9mIHRoaXMgZW51bSB0eXBlLCBpbgordGhlIG9yZGVyIHRoZXkncmUgZGVjbGFyZWQuCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCNWQUxVRVMiPjxCPlZBTFVFUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeW5jaHJvbml6YXRpb25LaW5kPC9BPgorPEREPkEgcHVibGljIHJlYWQtb25seSBsaXN0IG9mIGFsbCB0aGUgJzxlbT48Yj5TeW5jaHJvbml6YXRpb24gS2luZDwvYj48L2VtPicgZW51bWVyYXRvcnMKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sI3ZhbHVlcygpIj48Qj52YWx1ZXMoKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT4KKzxERD5SZXR1cm5zIGFuIGFycmF5IGNvbnRhaW5pbmcgdGhlIGNvbnN0YW50cyBvZiB0aGlzIGVudW0gdHlwZSwgaW4KK3RoZSBvcmRlciB0aGV5J3JlIGRlY2xhcmVkLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwjVkFMVUVTIj48Qj5WQUxVRVM8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VUdWS2luZDwvQT4KKzxERD5BIHB1YmxpYyByZWFkLW9ubHkgbGlzdCBvZiBhbGwgdGhlICc8ZW0+PGI+VUdWIEtpbmQ8L2I+PC9lbT4nIGVudW1lcmF0b3JzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCN2YWx1ZXMoKSI+PEI+dmFsdWVzKCk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVHVktpbmQ8L0E+Cis8REQ+UmV0dXJucyBhbiBhcnJheSBjb250YWluaW5nIHRoZSBjb25zdGFudHMgb2YgdGhpcyBlbnVtIHR5cGUsIGluCit0aGUgb3JkZXIgdGhleSdyZSBkZWNsYXJlZC4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCNWQUxVRVMiPjxCPlZBTFVFUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VW5pdEtpbmQ8L0E+Cis8REQ+QSBwdWJsaWMgcmVhZC1vbmx5IGxpc3Qgb2YgYWxsIHRoZSAnPGVtPjxiPlVuaXQgS2luZDwvYj48L2VtPicgZW51bWVyYXRvcnMKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCN2YWx1ZXMoKSI+PEI+dmFsdWVzKCk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Vbml0S2luZDwvQT4KKzxERD5SZXR1cm5zIGFuIGFycmF5IGNvbnRhaW5pbmcgdGhlIGNvbnN0YW50cyBvZiB0aGlzIGVudW0gdHlwZSwgaW4KK3RoZSBvcmRlciB0aGV5J3JlIGRlY2xhcmVkLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1ZFQ1RPM19TVEFNUEVEIj48Qj5WRUNUTzNfU1RBTVBFRDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VmVjdG8zIFN0YW1wZWQ8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjVkVDVE8zX1NUQU1QRUQiPjxCPlZFQ1RPM19TVEFNUEVEPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+VmVjdG8zIFN0YW1wZWQ8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjVkVDVE9SMyI+PEI+VkVDVE9SMzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VmVjdG9yMzwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNWRUNUT1IzIj48Qj5WRUNUT1IzPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+VmVjdG9yMzwvZW0+JyBkYXRhIHR5cGUKKzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC0yMS5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0yMy5odG1sIj48Qj5ORVhUIExFVFRFUjwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtMjIuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0yMi5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5CPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkM8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5FPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPko8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPks8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPkw8L0E+IDxBIEhSRUY9ImluZGV4LTEzLmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTE0Lmh0bWwiPk48L0E+IDxBIEhSRUY9ImluZGV4LTE1Lmh0bWwiPk88L0E+IDxBIEhSRUY9ImluZGV4LTE2Lmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTE3Lmh0bWwiPlE8L0E+IDxBIEhSRUY9ImluZGV4LTE4Lmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTE5Lmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTIwLmh0bWwiPlQ8L0E+IDxBIEhSRUY9ImluZGV4LTIxLmh0bWwiPlU8L0E+IDxBIEhSRUY9ImluZGV4LTIyLmh0bWwiPlY8L0E+IDxBIEhSRUY9ImluZGV4LTIzLmh0bWwiPlc8L0E+IDxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC0yMy5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC0yMy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjljNTYxNDYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2luZGV4LWZpbGVzL2luZGV4LTIzLmh0bWwKQEAgLTAsMCArMSwyODUgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMyBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1ctSW5kZXgKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJXLUluZGV4IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC0yMi5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDtORVhUIExFVFRFUjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTIzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMjMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+QjwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5DPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+RTwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5KPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5LPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5MPC9BPiA8QSBIUkVGPSJpbmRleC0xMy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC0xNC5odG1sIj5OPC9BPiA8QSBIUkVGPSJpbmRleC0xNS5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC0xNi5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xNy5odG1sIj5RPC9BPiA8QSBIUkVGPSJpbmRleC0xOC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xOS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0yMC5odG1sIj5UPC9BPiA8QSBIUkVGPSJpbmRleC0yMS5odG1sIj5VPC9BPiA8QSBIUkVGPSJpbmRleC0yMi5odG1sIj5WPC9BPiA8QSBIUkVGPSJpbmRleC0yMy5odG1sIj5XPC9BPiA8SFI+Cis8QSBOQU1FPSJfV18iPjwhLS0gLS0+PC9BPjxIMj4KKzxCPlc8L0I+PC9IMj4KKzxETD4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNXQVRFUl9TVVJGQUNFIj48Qj5XQVRFUl9TVVJGQUNFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2F0ZXJTdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5XYXRlciBTdXJmYWNlPC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXQVRFUl9TVVJGQUNFIj48Qj5XQVRFUl9TVVJGQUNFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1dhdGVyU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+V2F0ZXIgU3VyZmFjZTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0FURVJfU1VSRkFDRV9fQkFTRV9DTEFTUyI+PEI+V0FURVJfU1VSRkFDRV9fQkFTRV9DTEFTUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXQVRFUl9TVVJGQUNFX19FVkVMT1ZFU19JTiI+PEI+V0FURVJfU1VSRkFDRV9fRVZFTE9WRVNfSU48L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RXZlbG92ZXMgSW48L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0FURVJfU1VSRkFDRV9fSEFTX1NVUkZBQ0UiPjxCPldBVEVSX1NVUkZBQ0VfX0hBU19TVVJGQUNFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkhhcyBTdXJmYWNlPC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXQVRFUl9TVVJGQUNFX0ZFQVRVUkVfQ09VTlQiPjxCPldBVEVSX1NVUkZBQ0VfRkVBVFVSRV9DT1VOVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5XYXRlciBTdXJmYWNlPC9lbT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+V2F0ZXJTdXJmYWNlPC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPldhdGVyIFN1cmZhY2U8L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1dhdGVyU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5XYXRlclN1cmZhY2VJbXBsPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PEREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5XYXRlciBTdXJmYWNlPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNXSEVFTF9TWVNURU0iPjxCPldIRUVMX1NZU1RFTTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5XaGVlbCBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTSI+PEI+V0hFRUxfU1lTVEVNPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5XaGVlbCBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fQkFTRV9DTEFTUyI+PEI+V0hFRUxfU1lTVEVNX19CQVNFX0NMQVNTPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPjxCPldIRUVMX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT048L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgT3JpZW50YXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPjxCPldIRUVMX1NZU1RFTV9fTE9DQUxfUE9TSVRJT048L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgUG9zaXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9DT01QUkVTU0lPTiI+PEI+V0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0NPTVBSRVNTSU9OPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlN1c3BlbnNpb24gQ29tcHJlc3Npb248L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0NPTVBSRVNTSU9OIj48Qj5XSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fQ09NUFJFU1NJT048L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+U3VzcGVuc2lvbiBDb21wcmVzc2lvbjwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0RBTVBJTkciPjxCPldIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9EQU1QSU5HPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlN1c3BlbnNpb24gRGFtcGluZzwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fREFNUElORyI+PEI+V0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0RBTVBJTkc8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+U3VzcGVuc2lvbiBEYW1waW5nPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNXSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fUkVTVF9MRU5HVEgiPjxCPldIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9SRVNUX0xFTkdUSDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5TdXNwZW5zaW9uIFJlc3QgTGVuZ3RoPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9SRVNUX0xFTkdUSCI+PEI+V0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX1JFU1RfTEVOR1RIPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlN1c3BlbnNpb24gUmVzdCBMZW5ndGg8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9TVElGRk5FU1MiPjxCPldIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9TVElGRk5FU1M8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+U3VzcGVuc2lvbiBTdGlmZm5lc3M8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX1NUSUZGTkVTUyI+PEI+V0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX1NUSUZGTkVTUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TdXNwZW5zaW9uIFN0aWZmbmVzczwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjV0hFRUxfU1lTVEVNX19UWVBFX09GX1dIRUVMIj48Qj5XSEVFTF9TWVNURU1fX1RZUEVfT0ZfV0hFRUw8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VHlwZSBPZiBXaGVlbDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXSEVFTF9TWVNURU1fX1RZUEVfT0ZfV0hFRUwiPjxCPldIRUVMX1NZU1RFTV9fVFlQRV9PRl9XSEVFTDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5UeXBlIE9mIFdoZWVsPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNXSEVFTF9TWVNURU1fX1dIRUVMX0NPTk5FQ1RJT05fSEVJR0hUIj48Qj5XSEVFTF9TWVNURU1fX1dIRUVMX0NPTk5FQ1RJT05fSEVJR0hUPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPldoZWVsIENvbm5lY3Rpb24gSGVpZ2h0PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfQ09OTkVDVElPTl9IRUlHSFQiPjxCPldIRUVMX1NZU1RFTV9fV0hFRUxfQ09OTkVDVElPTl9IRUlHSFQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgQ29ubmVjdGlvbiBIZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfRlJJQ1RJT04iPjxCPldIRUVMX1NZU1RFTV9fV0hFRUxfRlJJQ1RJT048L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgRnJpY3Rpb248L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0hFRUxfU1lTVEVNX19XSEVFTF9GUklDVElPTiI+PEI+V0hFRUxfU1lTVEVNX19XSEVFTF9GUklDVElPTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5XaGVlbCBGcmljdGlvbjwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjV0hFRUxfU1lTVEVNX19XSEVFTF9SQURJVVMiPjxCPldIRUVMX1NZU1RFTV9fV0hFRUxfUkFESVVTPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPldoZWVsIFJhZGl1czwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXSEVFTF9TWVNURU1fX1dIRUVMX1JBRElVUyI+PEI+V0hFRUxfU1lTVEVNX19XSEVFTF9SQURJVVM8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgUmFkaXVzPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNXSEVFTF9TWVNURU1fX1dIRUVMX1NURUVSSU5HX1BJX0RLRCI+PEI+V0hFRUxfU1lTVEVNX19XSEVFTF9TVEVFUklOR19QSV9ES0Q8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgU3RlZXJpbmcgUEkgRGtkPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfU1RFRVJJTkdfUElfREtEIj48Qj5XSEVFTF9TWVNURU1fX1dIRUVMX1NURUVSSU5HX1BJX0RLRDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5XaGVlbCBTdGVlcmluZyBQSSBEa2Q8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfU1RFRVJJTkdfUElfREtQIj48Qj5XSEVFTF9TWVNURU1fX1dIRUVMX1NURUVSSU5HX1BJX0RLUDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5XaGVlbCBTdGVlcmluZyBQSSBEa3A8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0hFRUxfU1lTVEVNX19XSEVFTF9TVEVFUklOR19QSV9ES1AiPjxCPldIRUVMX1NZU1RFTV9fV0hFRUxfU1RFRVJJTkdfUElfREtQPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPldoZWVsIFN0ZWVyaW5nIFBJIERrcDwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ES0QiPjxCPldIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtEPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPldoZWVsIFZlbG9jaXR5IFBJIERrZDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLRCI+PEI+V0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ES0Q8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRGtkPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNXSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLSSI+PEI+V0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ES0k8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRGtpPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtJIj48Qj5XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLSTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5XaGVlbCBWZWxvY2l0eSBQSSBEa2k8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtQIj48Qj5XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLUDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5XaGVlbCBWZWxvY2l0eSBQSSBEa3A8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ES1AiPjxCPldIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtQPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPldoZWVsIFZlbG9jaXR5IFBJIERrcDwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1NVTSI+PEI+V0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1NVTTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5XaGVlbCBWZWxvY2l0eSBQSSBEbWF4IFN1bTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RNQVhfU1VNIj48Qj5XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RNQVhfU1VNPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPldoZWVsIFZlbG9jaXR5IFBJIERtYXggU3VtPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNXSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RNQVhfVkFMIj48Qj5XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RNQVhfVkFMPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPldoZWVsIFZlbG9jaXR5IFBJIERtYXggVmFsPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9WQUwiPjxCPldIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9WQUw8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRG1heCBWYWw8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfV0lEVEgiPjxCPldIRUVMX1NZU1RFTV9fV0hFRUxfV0lEVEg8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgV2lkdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0hFRUxfU1lTVEVNX19XSEVFTF9XSURUSCI+PEI+V0hFRUxfU1lTVEVNX19XSEVFTF9XSURUSDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5XaGVlbCBXaWR0aDwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0hFRUxfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPjxCPldIRUVMX1NZU1RFTV9GRUFUVVJFX0NPVU5UPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPldoZWVsIFN5c3RlbTwvZW0+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+V2hlZWxTeXN0ZW08L0I+PC9BPiAtIEludGVyZmFjZSBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48REQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+V2hlZWwgU3lzdGVtPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5XaGVlbFN5c3RlbUltcGw8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48REQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPldoZWVsIFN5c3RlbTwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwjV0lSRUZSQU1FX1ZBTFVFIj48Qj5XSVJFRlJBTUVfVkFMVUU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPgorPEREPlRoZSAnPGVtPjxiPldJUkVGUkFNRTwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1dSRU5DSCI+PEI+V1JFTkNIPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5XcmVuY2g8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjV1JFTkNIIj48Qj5XUkVOQ0g8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5XcmVuY2g8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjV1JFTkNIX1NUQU1QRUQiPjxCPldSRU5DSF9TVEFNUEVEPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5XcmVuY2ggU3RhbXBlZDwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNXUkVOQ0hfU1RBTVBFRCI+PEI+V1JFTkNIX1NUQU1QRUQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5XcmVuY2ggU3RhbXBlZDwvZW0+JyBkYXRhIHR5cGUKKzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC0yMi5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDtORVhUIExFVFRFUjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTIzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMjMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+QjwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5DPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+RTwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5KPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5LPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5MPC9BPiA8QSBIUkVGPSJpbmRleC0xMy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC0xNC5odG1sIj5OPC9BPiA8QSBIUkVGPSJpbmRleC0xNS5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC0xNi5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xNy5odG1sIj5RPC9BPiA8QSBIUkVGPSJpbmRleC0xOC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xOS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0yMC5odG1sIj5UPC9BPiA8QSBIUkVGPSJpbmRleC0yMS5odG1sIj5VPC9BPiA8QSBIUkVGPSJpbmRleC0yMi5odG1sIj5WPC9BPiA8QSBIUkVGPSJpbmRleC0yMy5odG1sIj5XPC9BPiA8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMy5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC0zLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjFjNmJlMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtMy5odG1sCkBAIC0wLDAgKzEsMTQ4NSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMzIENFVCAyMDEyIC0tPgorPFRJVExFPgorQy1JbmRleAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkMtSW5kZXgiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+SW5kZXg8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9ImluZGV4LTIuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtNC5odG1sIj48Qj5ORVhUIExFVFRFUjwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtMy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+QjwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5DPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+RTwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5KPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5LPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5MPC9BPiA8QSBIUkVGPSJpbmRleC0xMy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC0xNC5odG1sIj5OPC9BPiA8QSBIUkVGPSJpbmRleC0xNS5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC0xNi5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xNy5odG1sIj5RPC9BPiA8QSBIUkVGPSJpbmRleC0xOC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xOS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0yMC5odG1sIj5UPC9BPiA8QSBIUkVGPSJpbmRleC0yMS5odG1sIj5VPC9BPiA8QSBIUkVGPSJpbmRleC0yMi5odG1sIj5WPC9BPiA8QSBIUkVGPSJpbmRleC0yMy5odG1sIj5XPC9BPiA8SFI+Cis8QSBOQU1FPSJfQ18iPjwhLS0gLS0+PC9BPjxIMj4KKzxCPkM8L0I+PC9IMj4KKzxETD4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI0NBTUVSQV9JTkZPIj48Qj5DQU1FUkFfSU5GTzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+Q2FtZXJhIEluZm88L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNDQU1FUkFfSU5GTyI+PEI+Q0FNRVJBX0lORk88L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+Q2FtZXJhIEluZm88L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ0FNRVJBX1NZU1RFTSI+PEI+Q0FNRVJBX1NZU1RFTTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkNhbWVyYSBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0NBTUVSQV9TWVNURU0iPjxCPkNBTUVSQV9TWVNURU08L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkNhbWVyYSBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NBTUVSQV9TWVNURU1fX0FMUEhBX1UiPjxCPkNBTUVSQV9TWVNURU1fX0FMUEhBX1U8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QWxwaGEgdTwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQ0FNRVJBX1NZU1RFTV9fQUxQSEFfVSI+PEI+Q0FNRVJBX1NZU1RFTV9fQUxQSEFfVTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5BbHBoYSB1PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NBTUVSQV9TWVNURU1fX0FMUEhBX1YiPjxCPkNBTUVSQV9TWVNURU1fX0FMUEhBX1Y8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QWxwaGEgdjwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQ0FNRVJBX1NZU1RFTV9fQUxQSEFfViI+PEI+Q0FNRVJBX1NZU1RFTV9fQUxQSEFfVjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5BbHBoYSB2PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NBTUVSQV9TWVNURU1fX0JBU0VfQ0xBU1MiPjxCPkNBTUVSQV9TWVNURU1fX0JBU0VfQ0xBU1M8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ0FNRVJBX1NZU1RFTV9fQ09MT1JfRk9STUFUIj48Qj5DQU1FUkFfU1lTVEVNX19DT0xPUl9GT1JNQVQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+Q29sb3IgZm9ybWF0PC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNDQU1FUkFfU1lTVEVNX19DT0xPUl9GT1JNQVQiPjxCPkNBTUVSQV9TWVNURU1fX0NPTE9SX0ZPUk1BVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5Db2xvciBmb3JtYXQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ0FNRVJBX1NZU1RFTV9fRlJFUVVFTkNZIj48Qj5DQU1FUkFfU1lTVEVNX19GUkVRVUVOQ1k8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RnJlcXVlbmN5PC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDQU1FUkFfU1lTVEVNX19IRUlHSFQiPjxCPkNBTUVSQV9TWVNURU1fX0hFSUdIVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0NBTUVSQV9TWVNURU1fX0hFSUdIVCI+PEI+Q0FNRVJBX1NZU1RFTV9fSEVJR0hUPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkhlaWdodDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDQU1FUkFfU1lTVEVNX19JREVOVElGSUVSIj48Qj5DQU1FUkFfU1lTVEVNX19JREVOVElGSUVSPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPklkZW50aWZpZXI8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NBTUVSQV9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj48Qj5DQU1FUkFfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ0FNRVJBX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPjxCPkNBTUVSQV9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIFBvc2l0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDQU1FUkFfU1lTVEVNX19VMCI+PEI+Q0FNRVJBX1NZU1RFTV9fVTA8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+VTA8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0NBTUVSQV9TWVNURU1fX1UwIj48Qj5DQU1FUkFfU1lTVEVNX19VMDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5VMDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDQU1FUkFfU1lTVEVNX19WMCI+PEI+Q0FNRVJBX1NZU1RFTV9fVjA8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+VjA8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0NBTUVSQV9TWVNURU1fX1YwIj48Qj5DQU1FUkFfU1lTVEVNX19WMDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5WMDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDQU1FUkFfU1lTVEVNX19XSURUSCI+PEI+Q0FNRVJBX1NZU1RFTV9fV0lEVEg8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2lkdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0NBTUVSQV9TWVNURU1fX1dJRFRIIj48Qj5DQU1FUkFfU1lTVEVNX19XSURUSDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5XaWR0aDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDQU1FUkFfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPjxCPkNBTUVSQV9TWVNURU1fRkVBVFVSRV9DT1VOVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5DYW1lcmEgU3lzdGVtPC9lbT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q2FtZXJhU3lzdGVtPC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNhbWVyYSBTeXN0ZW08L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5DYW1lcmFTeXN0ZW1JbXBsPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PEREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5DYW1lcmEgU3lzdGVtPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sI0NBUl9WQUxVRSI+PEI+Q0FSX1ZBTFVFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVHVktpbmQ8L0E+Cis8REQ+VGhlICc8ZW0+PGI+Q2FyPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VBY3R1YXRvclN5c3RlbShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWN0dWF0b3JTeXN0ZW0pIj48Qj5jYXNlQWN0dWF0b3JTeXN0ZW0oQWN0dWF0b3JTeXN0ZW0pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFN3aXRjaDwvQT4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5BY3R1YXRvciBTeXN0ZW08L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZUFnZW50KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BZ2VudCkiPjxCPmNhc2VBZ2VudChBZ2VudCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MU3dpdGNoPC9BPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkFnZW50PC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VBbGdvcml0aG0ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobSkiPjxCPmNhc2VBbGdvcml0aG0oQWxnb3JpdGhtKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxTd2l0Y2g8L0E+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+QWxnb3JpdGhtPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VBbGdvcml0aG1MaWJyYXJ5KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG1MaWJyYXJ5KSI+PEI+Y2FzZUFsZ29yaXRobUxpYnJhcnkoQWxnb3JpdGhtTGlicmFyeSk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MU3dpdGNoPC9BPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkFsZ29yaXRobSBMaWJyYXJ5PC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VCbGVuZGVyTW9yc2Uob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkJsZW5kZXJNb3JzZSkiPjxCPmNhc2VCbGVuZGVyTW9yc2UoQmxlbmRlck1vcnNlKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxTd2l0Y2g8L0E+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+QmxlbmRlciBNb3JzZTwvZW0+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlQnVpbGRpbmcob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkJ1aWxkaW5nKSI+PEI+Y2FzZUJ1aWxkaW5nKEJ1aWxkaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxTd2l0Y2g8L0E+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+QnVpbGRpbmc8L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZUNhbWVyYVN5c3RlbShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2FtZXJhU3lzdGVtKSI+PEI+Y2FzZUNhbWVyYVN5c3RlbShDYW1lcmFTeXN0ZW0pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFN3aXRjaDwvQT4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5DYW1lcmEgU3lzdGVtPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VDb2xsZWN0aW9uKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Db2xsZWN0aW9uKSI+PEI+Y2FzZUNvbGxlY3Rpb24oQ29sbGVjdGlvbik8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MU3dpdGNoPC9BPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkNvbGxlY3Rpb248L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZUNvbXBvc2VkRGF0YShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ29tcG9zZWREYXRhKSI+PEI+Y2FzZUNvbXBvc2VkRGF0YShDb21wb3NlZERhdGEpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFN3aXRjaDwvQT4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Db21wb3NlZCBEYXRhPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VDeWNhYlRLKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DeWNhYlRLKSI+PEI+Y2FzZUN5Y2FiVEsoQ3ljYWJUSyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MU3dpdGNoPC9BPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkN5Y2FiIFRLPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VEYXRhRmxvd1BvcnQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRhdGFGbG93UG9ydCkiPjxCPmNhc2VEYXRhRmxvd1BvcnQoRGF0YUZsb3dQb3J0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxTd2l0Y2g8L0E+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+RGF0YSBGbG93IFBvcnQ8L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZUVuZ2luZVN5c3RlbShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRW5naW5lU3lzdGVtKSI+PEI+Y2FzZUVuZ2luZVN5c3RlbShFbmdpbmVTeXN0ZW0pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFN3aXRjaDwvQT4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5FbmdpbmUgU3lzdGVtPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VFbnZpcm9ubWVudChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRW52aXJvbm1lbnQpIj48Qj5jYXNlRW52aXJvbm1lbnQoRW52aXJvbm1lbnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFN3aXRjaDwvQT4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5FbnZpcm9ubWVudDwvZW0+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlRmxvb3Iob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkZsb29yKSI+PEI+Y2FzZUZsb29yKEZsb29yKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxTd2l0Y2g8L0E+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Rmxvb3I8L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZUdQU1N5c3RlbShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuR1BTU3lzdGVtKSI+PEI+Y2FzZUdQU1N5c3RlbShHUFNTeXN0ZW0pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFN3aXRjaDwvQT4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5HUFMgU3lzdGVtPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VHcm91bmQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkdyb3VuZCkiPjxCPmNhc2VHcm91bmQoR3JvdW5kKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxTd2l0Y2g8L0E+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+R3JvdW5kPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VIYXJkd2FyZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSGFyZHdhcmUpIj48Qj5jYXNlSGFyZHdhcmUoSGFyZHdhcmUpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFN3aXRjaDwvQT4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5IYXJkd2FyZTwvZW0+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlSHVtYW4ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkh1bWFuKSI+PEI+Y2FzZUh1bWFuKEh1bWFuKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxTd2l0Y2g8L0E+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+SHVtYW48L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZUltYWdlU2Vuc29yU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5JbWFnZVNlbnNvclN5c3RlbSkiPjxCPmNhc2VJbWFnZVNlbnNvclN5c3RlbShJbWFnZVNlbnNvclN5c3RlbSk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MU3dpdGNoPC9BPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkltYWdlIFNlbnNvciBTeXN0ZW08L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZUxhbmRTdXJmYWNlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MYW5kU3VyZmFjZSkiPjxCPmNhc2VMYW5kU3VyZmFjZShMYW5kU3VyZmFjZSk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MU3dpdGNoPC9BPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkxhbmQgU3VyZmFjZTwvZW0+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlTGlkYXJTeXN0ZW0ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxpZGFyU3lzdGVtKSI+PEI+Y2FzZUxpZGFyU3lzdGVtKExpZGFyU3lzdGVtKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxTd2l0Y2g8L0E+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TGlkYXIgU3lzdGVtPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxvY2FsaXphdGlvblNlbnNvclN5c3RlbSkiPjxCPmNhc2VMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0oTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxTd2l0Y2g8L0E+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZU9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtKSI+PEI+Y2FzZU9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbShPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFN3aXRjaDwvQT4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5PYmplY3QgRGV0ZWN0aW9uIFNlbnNvciBTeXN0ZW08L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSkiPjxCPmNhc2VPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbShPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MU3dpdGNoPC9BPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPk9iamVjdCBUcmFja2luZyBTZW5zb3IgU3lzdGVtPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VPblBvcnQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9uUG9ydCkiPjxCPmNhc2VPblBvcnQoT25Qb3J0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxTd2l0Y2g8L0E+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+T24gUG9ydDwvZW0+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlUGVkZXN0cmlhbihvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGVkZXN0cmlhbikiPjxCPmNhc2VQZWRlc3RyaWFuKFBlZGVzdHJpYW4pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFN3aXRjaDwvQT4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5QZWRlc3RyaWFuPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VQaHlzaWNhbERhdGEob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBoeXNpY2FsRGF0YSkiPjxCPmNhc2VQaHlzaWNhbERhdGEoUGh5c2ljYWxEYXRhKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxTd2l0Y2g8L0E+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UGh5c2ljYWwgRGF0YTwvZW0+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlUGh5c2ljYWxPYmplY3Qob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBoeXNpY2FsT2JqZWN0KSI+PEI+Y2FzZVBoeXNpY2FsT2JqZWN0KFBoeXNpY2FsT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxTd2l0Y2g8L0E+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UGh5c2ljYWwgT2JqZWN0PC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VQbGFuZXQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBsYW5ldCkiPjxCPmNhc2VQbGFuZXQoUGxhbmV0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxTd2l0Y2g8L0E+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UGxhbmV0PC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VQbGF0Zm9ybShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGxhdGZvcm0pIj48Qj5jYXNlUGxhdGZvcm0oUGxhdGZvcm0pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFN3aXRjaDwvQT4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5QbGF0Zm9ybTwvZW0+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlUG9ydChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG9ydCkiPjxCPmNhc2VQb3J0KFBvcnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFN3aXRjaDwvQT4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Qb3J0PC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VQcmltaXRpdmVEYXRhKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QcmltaXRpdmVEYXRhKSI+PEI+Y2FzZVByaW1pdGl2ZURhdGEoUHJpbWl0aXZlRGF0YSk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MU3dpdGNoPC9BPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlByaW1pdGl2ZSBEYXRhPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VSb2JvdChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3QpIj48Qj5jYXNlUm9ib3QoUm9ib3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFN3aXRjaDwvQT4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Sb2JvdDwvZW0+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlUm9ib3RpY01pZGRsZXdhcmUob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNNaWRkbGV3YXJlKSI+PEI+Y2FzZVJvYm90aWNNaWRkbGV3YXJlKFJvYm90aWNNaWRkbGV3YXJlKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxTd2l0Y2g8L0E+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Um9ib3RpYyBNaWRkbGV3YXJlPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VSb2JvdGljU2ltdWxhdG9yKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljU2ltdWxhdG9yKSI+PEI+Y2FzZVJvYm90aWNTaW11bGF0b3IoUm9ib3RpY1NpbXVsYXRvcik8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MU3dpdGNoPC9BPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlJvYm90aWMgU2ltdWxhdG9yPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VSb2JvdGljU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljU3lzdGVtKSI+PEI+Y2FzZVJvYm90aWNTeXN0ZW0oUm9ib3RpY1N5c3RlbSk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MU3dpdGNoPC9BPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlJvYm90aWMgU3lzdGVtPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VTZW5zb3JEcml2ZXIob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvckRyaXZlcikiPjxCPmNhc2VTZW5zb3JEcml2ZXIoU2Vuc29yRHJpdmVyKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxTd2l0Y2g8L0E+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U2Vuc29yIERyaXZlcjwvZW0+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlU2Vuc29yU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZW5zb3JTeXN0ZW0pIj48Qj5jYXNlU2Vuc29yU3lzdGVtKFNlbnNvclN5c3RlbSk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MU3dpdGNoPC9BPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlNlbnNvciBTeXN0ZW08L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZVNlcnZpY2VQb3J0KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlUG9ydCkiPjxCPmNhc2VTZXJ2aWNlUG9ydChTZXJ2aWNlUG9ydCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MU3dpdGNoPC9BPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlNlcnZpY2UgUG9ydDwvZW0+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlU2ltdWxhdGVkU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TaW11bGF0ZWRTeXN0ZW0pIj48Qj5jYXNlU2ltdWxhdGVkU3lzdGVtKFNpbXVsYXRlZFN5c3RlbSk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MU3dpdGNoPC9BPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlNpbXVsYXRlZCBTeXN0ZW08L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZVNvZnR3YXJlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Tb2Z0d2FyZSkiPjxCPmNhc2VTb2Z0d2FyZShTb2Z0d2FyZSk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MU3dpdGNoPC9BPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlNvZnR3YXJlPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VTdGFpcnMob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0YWlycykiPjxCPmNhc2VTdGFpcnMoU3RhaXJzKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxTd2l0Y2g8L0E+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U3RhaXJzPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VTdGF0ZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RhdGUpIj48Qj5jYXNlU3RhdGUoU3RhdGUpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFN3aXRjaDwvQT4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5TdGF0ZTwvZW0+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPjxCPmNhc2VTdXJmYWNlKFN1cmZhY2UpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFN3aXRjaDwvQT4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5TdXJmYWNlPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VTeXN0ZW0ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSkiPjxCPmNhc2VTeXN0ZW0oU3lzdGVtKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxTd2l0Y2g8L0E+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U3lzdGVtPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VUcmFuc2l0aW9uKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5UcmFuc2l0aW9uKSI+PEI+Y2FzZVRyYW5zaXRpb24oVHJhbnNpdGlvbik8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MU3dpdGNoPC9BPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlRyYW5zaXRpb248L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZVdhdGVyU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuV2F0ZXJTdXJmYWNlKSI+PEI+Y2FzZVdhdGVyU3VyZmFjZShXYXRlclN1cmZhY2UpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFN3aXRjaDwvQT4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5XYXRlciBTdXJmYWNlPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VXaGVlbFN5c3RlbShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuV2hlZWxTeXN0ZW0pIj48Qj5jYXNlV2hlZWxTeXN0ZW0oV2hlZWxTeXN0ZW0pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFN3aXRjaDwvQT4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5XaGVlbCBTeXN0ZW08L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI0NIQU5ORUxfRkxPQVQzMiI+PEI+Q0hBTk5FTF9GTE9BVDMyPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5DaGFubmVsIEZsb2F0MzI8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNDSEFOTkVMX0ZMT0FUMzIiPjxCPkNIQU5ORUxfRkxPQVQzMjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5DaGFubmVsIEZsb2F0MzI8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNDSEFSIj48Qj5DSEFSPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5DaGFyPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQ0hBUiI+PEI+Q0hBUjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5DaGFyPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Db2xsZWN0aW9uPC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNvbGxlY3Rpb248L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NPTExFQ1RJT04iPjxCPkNPTExFQ1RJT048L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29sbGVjdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+Q29sbGVjdGlvbjwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQ09MTEVDVElPTiI+PEI+Q09MTEVDVElPTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbGxlY3Rpb25JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkNvbGxlY3Rpb248L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NPTExFQ1RJT05fX0JBU0VfREFUQV9UWVBFIj48Qj5DT0xMRUNUSU9OX19CQVNFX0RBVEFfVFlQRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIERhdGEgVHlwZTwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQ09MTEVDVElPTl9fQkFTRV9EQVRBX1RZUEUiPjxCPkNPTExFQ1RJT05fX0JBU0VfREFUQV9UWVBFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkJhc2UgRGF0YSBUeXBlPC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NPTExFQ1RJT05fRkVBVFVSRV9DT1VOVCI+PEI+Q09MTEVDVElPTl9GRUFUVVJFX0NPVU5UPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkNvbGxlY3Rpb248L2VtPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db2xsZWN0aW9uSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkNvbGxlY3Rpb25JbXBsPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PEREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Db2xsZWN0aW9uPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0NPTE9SX1JHQkEiPjxCPkNPTE9SX1JHQkE8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkNvbG9yIFJHQkE8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNDT0xPUl9SR0JBIj48Qj5DT0xPUl9SR0JBPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkNvbG9yIFJHQkE8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ09NUE9TRURfREFUQSI+PEI+Q09NUE9TRURfREFUQTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db21wb3NlZERhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkNvbXBvc2VkIERhdGE8L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0NPTVBPU0VEX0RBVEEiPjxCPkNPTVBPU0VEX0RBVEE8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db21wb3NlZERhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkNvbXBvc2VkIERhdGE8L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NPTVBPU0VEX0RBVEFfX0JBU0VfREFUQV9UWVBFIj48Qj5DT01QT1NFRF9EQVRBX19CQVNFX0RBVEFfVFlQRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIERhdGEgVHlwZTwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQ09NUE9TRURfREFUQV9fQkFTRV9EQVRBX1RZUEUiPjxCPkNPTVBPU0VEX0RBVEFfX0JBU0VfREFUQV9UWVBFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkJhc2UgRGF0YSBUeXBlPC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NPTVBPU0VEX0RBVEFfRkVBVFVSRV9DT1VOVCI+PEI+Q09NUE9TRURfREFUQV9GRUFUVVJFX0NPVU5UPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkNvbXBvc2VkIERhdGE8L2VtPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcG9zZWREYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Db21wb3NlZERhdGE8L0I+PC9BPiAtIEludGVyZmFjZSBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48REQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q29tcG9zZWQgRGF0YTwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29tcG9zZWREYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkNvbXBvc2VkRGF0YUltcGw8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48REQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNvbXBvc2VkIERhdGE8L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjQ09NUFJFU1NFRF9JTUFHRSI+PEI+Q09NUFJFU1NFRF9JTUFHRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+Q29tcHJlc3NlZCBJbWFnZTwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI0NPTVBSRVNTRURfSU1BR0UiPjxCPkNPTVBSRVNTRURfSU1BR0U8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+Q29tcHJlc3NlZCBJbWFnZTwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRCb29sVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRCb29sVG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEJ5dGVNdWx0aUFycmF5VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRCeXRlTXVsdGlBcnJheVRvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRCeXRlVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRCeXRlVG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydENhbWVyYUluZm9Ub1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydENhbWVyYUluZm9Ub1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0Q2hhbm5lbEZsb2F0MzJUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydENoYW5uZWxGbG9hdDMyVG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydENoYXJUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydENoYXJUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0Q29sb3JSR0JBVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRDb2xvclJHQkFUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0Q29tcHJlc3NlZEltYWdlVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRDb21wcmVzc2VkSW1hZ2VUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY29udmVydERhdGFGbG93RGlyZWN0aW9uS2luZFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0RGF0YUZsb3dEaXJlY3Rpb25LaW5kVG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0RGlhZ25vc3RpY0FycmF5VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnREaWFnbm9zdGljQXJyYXlUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydERpYWdub3N0aWNTdGF0dXNUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydERpYWdub3N0aWNTdGF0dXNUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnREdXJhdGlvblRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0RHVyYXRpb25Ub1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0RmxvYXQzMk11bHRpQXJyYXlUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydEZsb2F0MzJNdWx0aUFycmF5VG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEZsb2F0MzJUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydEZsb2F0MzJUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0RmxvYXQ2NE11bHRpQXJyYXlUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydEZsb2F0NjRNdWx0aUFycmF5VG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEZsb2F0NjRUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydEZsb2F0NjRUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0R29hbElEVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRHb2FsSURUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwiPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0R29hbFN0YXR1c0FycmF5VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRHb2FsU3RhdHVzQXJyYXlUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwiPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0R29hbFN0YXR1c1RvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0R29hbFN0YXR1c1RvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbCI+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRHcmlkQ2VsbHNUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydEdyaWRDZWxsc1RvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbCI+TmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRIZWFkZXJUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydEhlYWRlclRvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRJbWFnZVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0SW1hZ2VUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0SW11VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRJbXVUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0SW50MTZNdWx0aUFycmF5VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRJbnQxNk11bHRpQXJyYXlUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0SW50MTZUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydEludDE2VG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEludDMyTXVsdGlBcnJheVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0SW50MzJNdWx0aUFycmF5VG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEludDMyVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRJbnQzMlRvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRJbnQ2NE11bHRpQXJyYXlUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydEludDY0TXVsdGlBcnJheVRvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRJbnQ2NFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0SW50NjRUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0SW50OE11bHRpQXJyYXlUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydEludDhNdWx0aUFycmF5VG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEludDhUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydEludDhUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0Sm9pbnRTdGF0ZVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0Sm9pbnRTdGF0ZVRvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRKb3lGZWVkYmFja0FycmF5VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRKb3lGZWVkYmFja0FycmF5VG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEpveUZlZWRiYWNrVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRKb3lGZWVkYmFja1RvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRKb3lUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydEpveVRvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEtleVZhbHVlVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRLZXlWYWx1ZVRvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwiPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydExhc2VyU2NhblRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0TGFzZXJTY2FuVG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydE1hcE1ldGFEYXRhVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRNYXBNZXRhRGF0YVRvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbCI+TmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRNdWx0aUFycmF5RGltZW5zaW9uVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRNdWx0aUFycmF5RGltZW5zaW9uVG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydE11bHRpQXJyYXlMYXlvdXRUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydE11bHRpQXJyYXlMYXlvdXRUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0TmF2U2F0Rml4VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnROYXZTYXRGaXhUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0TmF2U2F0U3RhdHVzVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnROYXZTYXRTdGF0dXNUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0T2NjdXBhbmN5R3JpZFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0T2NjdXBhbmN5R3JpZFRvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbCI+TmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRPZG9tZXRyeVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0T2RvbWV0cnlUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiPk5hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0UGF0aFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0UGF0aFRvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbCI+TmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0UG9pbnQzMlRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0UG9pbnQzMlRvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0UG9pbnRDbG91ZDJUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydFBvaW50Q2xvdWQyVG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFBvaW50Q2xvdWRUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydFBvaW50Q2xvdWRUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0UG9pbnRGaWVsZFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0UG9pbnRGaWVsZFRvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0UG9pbnRTdGFtcGVkVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRQb2ludFN0YW1wZWRUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRQb2ludFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0UG9pbnRUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRQb2x5Z29uU3RhbXBlZFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0UG9seWdvblN0YW1wZWRUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRQb2x5Z29uVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRQb2x5Z29uVG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0UG9zZTJEVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRQb3NlMkRUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRQb3NlQXJyYXlUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydFBvc2VBcnJheVRvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFBvc2VTdGFtcGVkVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRQb3NlU3RhbXBlZFRvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFBvc2VUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydFBvc2VUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkVG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0UG9zZVdpdGhDb3ZhcmlhbmNlVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRQb3NlV2l0aENvdmFyaWFuY2VUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRRdWF0ZXJuaW9uU3RhbXBlZFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0UXVhdGVybmlvblN0YW1wZWRUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRRdWF0ZXJuaW9uVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRRdWF0ZXJuaW9uVG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRSYW5nZVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0UmFuZ2VUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0UmVnaW9uT2ZJbnRlcmVzdFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0UmVnaW9uT2ZJbnRlcmVzdFRvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0Um9ib3RpY01pZGRsZXdhcmVLaW5kVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRSb2JvdGljTWlkZGxld2FyZUtpbmRUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxGYWN0b3J5SW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0Um9ib3RLaW5kVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRSb2JvdEtpbmRUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY29udmVydFNlcnZpY2VGbG93S2luZFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0U2VydmljZUZsb3dLaW5kVG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRTaGFkZVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0U2hhZGVUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxGYWN0b3J5SW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRTdHJpbmdUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydFN0cmluZ1RvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0U3luY2hyb25pemF0aW9uS2luZFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0U3luY2hyb25pemF0aW9uS2luZFRvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTEZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRUaW1lVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRUaW1lVG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0VG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsIj5BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0VG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsIj5OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0VG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0VG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydFRvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTEZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0VHJhbnNmb3JtVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRUcmFuc2Zvcm1Ub1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRUd2lzdFN0YW1wZWRUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydFR3aXN0U3RhbXBlZFRvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFR3aXN0VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRUd2lzdFRvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFR3aXN0V2l0aENvdmFyaWFuY2VUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydFR3aXN0V2l0aENvdmFyaWFuY2VUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRVR1ZLaW5kVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRVR1ZLaW5kVG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFVJaW50MTZNdWx0aUFycmF5VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRVSWludDE2TXVsdGlBcnJheVRvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRVSW50MTZUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydFVJbnQxNlRvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRVSW50MzJNdWx0aUFycmF5VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRVSW50MzJNdWx0aUFycmF5VG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFVJbnQzMlRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0VUludDMyVG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFVJbnQ2NE11bHRpQXJyYXlUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydFVJbnQ2NE11bHRpQXJyYXlUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0VUludDY0VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRVSW50NjRUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0VUludDhNdWx0aUFycmF5VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRVSW50OE11bHRpQXJyYXlUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0VUludDhUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydFVJbnQ4VG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRVbml0S2luZFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0VW5pdEtpbmRUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFZlY3RvM1N0YW1wZWRUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+Y29udmVydFZlY3RvM1N0YW1wZWRUb1N0cmluZyhFRGF0YVR5cGUsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRWZWN0b3IzVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmNvbnZlcnRWZWN0b3IzVG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0V3JlbmNoU3RhbXBlZFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0V3JlbmNoU3RhbXBlZFRvU3RyaW5nKEVEYXRhVHlwZSwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFdyZW5jaFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48Qj5jb252ZXJ0V3JlbmNoVG9TdHJpbmcoRURhdGFUeXBlLCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZShvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzKSI+PEI+Y3JlYXRlKEVDbGFzcyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwiPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZShvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzKSI+PEI+Y3JlYXRlKEVDbGFzcyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGUob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcykiPjxCPmNyZWF0ZShFQ2xhc3MpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZShvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzKSI+PEI+Y3JlYXRlKEVDbGFzcyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiPk5hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGUob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcykiPjxCPmNyZWF0ZShFQ2xhc3MpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MpIj48Qj5jcmVhdGUoRUNsYXNzKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGUob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcykiPjxCPmNyZWF0ZShFQ2xhc3MpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUFjdHVhdG9yU3lzdGVtKCkiPjxCPmNyZWF0ZUFjdHVhdG9yU3lzdGVtKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlQWN0dWF0b3JTeXN0ZW0oKSI+PEI+Y3JlYXRlQWN0dWF0b3JTeXN0ZW0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+QWN0dWF0b3IgU3lzdGVtPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlQWN0dWF0b3JTeXN0ZW1BZGFwdGVyKCkiPjxCPmNyZWF0ZUFjdHVhdG9yU3lzdGVtQWRhcHRlcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0E+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkFjdHVhdG9yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlQWRhcHRlcihvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcikiPjxCPmNyZWF0ZUFkYXB0ZXIoTm90aWZpZXIpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0E+Cis8REQ+Q3JlYXRlcyBhbiBhZGFwdGVyIGZvciB0aGUgPGNvZGU+dGFyZ2V0PC9jb2RlPgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUFnZW50KCkiPjxCPmNyZWF0ZUFnZW50KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxGYWN0b3J5SW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVBZ2VudCgpIj48Qj5jcmVhdGVBZ2VudCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5BZ2VudDwvZW0+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZUFnZW50QWRhcHRlcigpIj48Qj5jcmVhdGVBZ2VudEFkYXB0ZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTEFkYXB0ZXJGYWN0b3J5PC9BPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5BZ2VudDwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlQWxnb3JpdGhtKCkiPjxCPmNyZWF0ZUFsZ29yaXRobSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUFsZ29yaXRobSgpIj48Qj5jcmVhdGVBbGdvcml0aG0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+QWxnb3JpdGhtPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlQWxnb3JpdGhtQWRhcHRlcigpIj48Qj5jcmVhdGVBbGdvcml0aG1BZGFwdGVyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxBZGFwdGVyRmFjdG9yeTwvQT4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkFsZ29yaXRobTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlQWxnb3JpdGhtTGlicmFyeSgpIj48Qj5jcmVhdGVBbGdvcml0aG1MaWJyYXJ5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlQWxnb3JpdGhtTGlicmFyeSgpIj48Qj5jcmVhdGVBbGdvcml0aG1MaWJyYXJ5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkFsZ29yaXRobSBMaWJyYXJ5PC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlQWxnb3JpdGhtTGlicmFyeUFkYXB0ZXIoKSI+PEI+Y3JlYXRlQWxnb3JpdGhtTGlicmFyeUFkYXB0ZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTEFkYXB0ZXJGYWN0b3J5PC9BPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkFsZ29yaXRobSBMaWJyYXJ5PC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVCbGVuZGVyTW9yc2UoKSI+PEI+Y3JlYXRlQmxlbmRlck1vcnNlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxGYWN0b3J5SW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVCbGVuZGVyTW9yc2UoKSI+PEI+Y3JlYXRlQmxlbmRlck1vcnNlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkJsZW5kZXIgTW9yc2U8L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVCbGVuZGVyTW9yc2VBZGFwdGVyKCkiPjxCPmNyZWF0ZUJsZW5kZXJNb3JzZUFkYXB0ZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTEFkYXB0ZXJGYWN0b3J5PC9BPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+QmxlbmRlciBNb3JzZTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVCb29sRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlQm9vbEZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUJ1aWxkaW5nKCkiPjxCPmNyZWF0ZUJ1aWxkaW5nKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxGYWN0b3J5SW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVCdWlsZGluZygpIj48Qj5jcmVhdGVCdWlsZGluZygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5CdWlsZGluZzwvZW0+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZUJ1aWxkaW5nQWRhcHRlcigpIj48Qj5jcmVhdGVCdWlsZGluZ0FkYXB0ZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTEFkYXB0ZXJGYWN0b3J5PC9BPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQnVpbGRpbmcuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5CdWlsZGluZzwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVCeXRlRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlQnl0ZUZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlQnl0ZU11bHRpQXJyYXlGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVCeXRlTXVsdGlBcnJheUZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlQ2FtZXJhSW5mb0Zyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZUNhbWVyYUluZm9Gcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVDYW1lcmFTeXN0ZW0oKSI+PEI+Y3JlYXRlQ2FtZXJhU3lzdGVtKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlQ2FtZXJhU3lzdGVtKCkiPjxCPmNyZWF0ZUNhbWVyYVN5c3RlbSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5DYW1lcmEgU3lzdGVtPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlQ2FtZXJhU3lzdGVtQWRhcHRlcigpIj48Qj5jcmVhdGVDYW1lcmFTeXN0ZW1BZGFwdGVyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxBZGFwdGVyRmFjdG9yeTwvQT4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkNhbWVyYSBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlQ2hhbm5lbEZsb2F0MzJGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVDaGFubmVsRmxvYXQzMkZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlQ2hhckZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZUNoYXJGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVDb2xsZWN0aW9uKCkiPjxCPmNyZWF0ZUNvbGxlY3Rpb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTEZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVDb2xsZWN0aW9uKCkiPjxCPmNyZWF0ZUNvbGxlY3Rpb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Q29sbGVjdGlvbjwvZW0+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZUNvbGxlY3Rpb25BZGFwdGVyKCkiPjxCPmNyZWF0ZUNvbGxlY3Rpb25BZGFwdGVyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxBZGFwdGVyRmFjdG9yeTwvQT4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbGxlY3Rpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Db2xsZWN0aW9uPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUNvbG9yUkdCQUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZUNvbG9yUkdCQUZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUNvbXBvc2VkRGF0YSgpIj48Qj5jcmVhdGVDb21wb3NlZERhdGEoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTEZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVDb21wb3NlZERhdGEoKSI+PEI+Y3JlYXRlQ29tcG9zZWREYXRhKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkNvbXBvc2VkIERhdGE8L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVDb21wb3NlZERhdGFBZGFwdGVyKCkiPjxCPmNyZWF0ZUNvbXBvc2VkRGF0YUFkYXB0ZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTEFkYXB0ZXJGYWN0b3J5PC9BPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcG9zZWREYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Q29tcG9zZWQgRGF0YTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVDb21wcmVzc2VkSW1hZ2VGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVDb21wcmVzc2VkSW1hZ2VGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVDeWNhYlRLKCkiPjxCPmNyZWF0ZUN5Y2FiVEsoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTEZhY3RvcnlJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUN5Y2FiVEsoKSI+PEI+Y3JlYXRlQ3ljYWJUSygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5DeWNhYiBUSzwvZW0+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZUN5Y2FiVEtBZGFwdGVyKCkiPjxCPmNyZWF0ZUN5Y2FiVEtBZGFwdGVyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxBZGFwdGVyRmFjdG9yeTwvQT4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5DeWNhYiBUSzwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlRGF0YUZsb3dEaXJlY3Rpb25LaW5kRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlRGF0YUZsb3dEaXJlY3Rpb25LaW5kRnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlRGF0YUZsb3dQb3J0KCkiPjxCPmNyZWF0ZURhdGFGbG93UG9ydCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZURhdGFGbG93UG9ydCgpIj48Qj5jcmVhdGVEYXRhRmxvd1BvcnQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+RGF0YSBGbG93IFBvcnQ8L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVEYXRhRmxvd1BvcnRBZGFwdGVyKCkiPjxCPmNyZWF0ZURhdGFGbG93UG9ydEFkYXB0ZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTEFkYXB0ZXJGYWN0b3J5PC9BPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+RGF0YSBGbG93IFBvcnQ8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVEaWFnbm9zdGljQXJyYXlGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVEaWFnbm9zdGljQXJyYXlGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwiPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVEaWFnbm9zdGljU3RhdHVzRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlRGlhZ25vc3RpY1N0YXR1c0Zyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbCI+RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVEdXJhdGlvbkZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZUR1cmF0aW9uRnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlRW5naW5lU3lzdGVtKCkiPjxCPmNyZWF0ZUVuZ2luZVN5c3RlbSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUVuZ2luZVN5c3RlbSgpIj48Qj5jcmVhdGVFbmdpbmVTeXN0ZW0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+RW5naW5lIFN5c3RlbTwvZW0+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZUVuZ2luZVN5c3RlbUFkYXB0ZXIoKSI+PEI+Y3JlYXRlRW5naW5lU3lzdGVtQWRhcHRlcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0E+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5FbmdpbmUgU3lzdGVtPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVFbnZpcm9ubWVudCgpIj48Qj5jcmVhdGVFbnZpcm9ubWVudCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUVudmlyb25tZW50KCkiPjxCPmNyZWF0ZUVudmlyb25tZW50KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkVudmlyb25tZW50PC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlRW52aXJvbm1lbnRBZGFwdGVyKCkiPjxCPmNyZWF0ZUVudmlyb25tZW50QWRhcHRlcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0E+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkVudmlyb25tZW50PC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVFT2JqZWN0QWRhcHRlcigpIj48Qj5jcmVhdGVFT2JqZWN0QWRhcHRlcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0E+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciB0aGUgZGVmYXVsdCBjYXNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVGbG9hdDMyRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlRmxvYXQzMkZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlRmxvYXQzMk11bHRpQXJyYXlGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVGbG9hdDMyTXVsdGlBcnJheUZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlRmxvYXQ2NEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZUZsb2F0NjRGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUZsb2F0NjRNdWx0aUFycmF5RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlRmxvYXQ2NE11bHRpQXJyYXlGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVGbG9vcigpIj48Qj5jcmVhdGVGbG9vcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlRmxvb3IoKSI+PEI+Y3JlYXRlRmxvb3IoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Rmxvb3I8L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVGbG9vckFkYXB0ZXIoKSI+PEI+Y3JlYXRlRmxvb3JBZGFwdGVyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxBZGFwdGVyRmFjdG9yeTwvQT4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Rmxvb3I8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlRnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwiPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZUZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbCI+RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlRnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlRnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiPk5hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZUZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZUZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlR29hbElERnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlR29hbElERnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwiPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVHb2FsU3RhdHVzQXJyYXlGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVHb2FsU3RhdHVzQXJyYXlGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbCI+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUdvYWxTdGF0dXNGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVHb2FsU3RhdHVzRnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwiPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlR1BTU3lzdGVtKCkiPjxCPmNyZWF0ZUdQU1N5c3RlbSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUdQU1N5c3RlbSgpIj48Qj5jcmVhdGVHUFNTeXN0ZW0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+R1BTIFN5c3RlbTwvZW0+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZUdQU1N5c3RlbUFkYXB0ZXIoKSI+PEI+Y3JlYXRlR1BTU3lzdGVtQWRhcHRlcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0E+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5HUFMgU3lzdGVtPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUdyaWRDZWxsc0Zyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZUdyaWRDZWxsc0Zyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsIj5OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZUdyb3VuZEFkYXB0ZXIoKSI+PEI+Y3JlYXRlR3JvdW5kQWRhcHRlcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0E+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Hcm91bmQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Hcm91bmQ8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUhhcmR3YXJlKCkiPjxCPmNyZWF0ZUhhcmR3YXJlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlSGFyZHdhcmUoKSI+PEI+Y3JlYXRlSGFyZHdhcmUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+SGFyZHdhcmU8L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVIYXJkd2FyZUFkYXB0ZXIoKSI+PEI+Y3JlYXRlSGFyZHdhcmVBZGFwdGVyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxBZGFwdGVyRmFjdG9yeTwvQT4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0hhcmR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+SGFyZHdhcmU8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlSGVhZGVyRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlSGVhZGVyRnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlSHVtYW4oKSI+PEI+Y3JlYXRlSHVtYW4oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTEZhY3RvcnlJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUh1bWFuKCkiPjxCPmNyZWF0ZUh1bWFuKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkh1bWFuPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlSHVtYW5BZGFwdGVyKCkiPjxCPmNyZWF0ZUh1bWFuQWRhcHRlcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0E+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkh1bWFuPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUltYWdlRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlSW1hZ2VGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVJbWFnZVNlbnNvclN5c3RlbSgpIj48Qj5jcmVhdGVJbWFnZVNlbnNvclN5c3RlbSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUltYWdlU2Vuc29yU3lzdGVtKCkiPjxCPmNyZWF0ZUltYWdlU2Vuc29yU3lzdGVtKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkltYWdlIFNlbnNvciBTeXN0ZW08L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVJbWFnZVNlbnNvclN5c3RlbUFkYXB0ZXIoKSI+PEI+Y3JlYXRlSW1hZ2VTZW5zb3JTeXN0ZW1BZGFwdGVyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxBZGFwdGVyRmFjdG9yeTwvQT4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+SW1hZ2UgU2Vuc29yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVJbXVGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVJbXVGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUludDE2RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlSW50MTZGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUludDE2TXVsdGlBcnJheUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZUludDE2TXVsdGlBcnJheUZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlSW50MzJGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVJbnQzMkZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlSW50MzJNdWx0aUFycmF5RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlSW50MzJNdWx0aUFycmF5RnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVJbnQ2NEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZUludDY0RnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVJbnQ2NE11bHRpQXJyYXlGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVJbnQ2NE11bHRpQXJyYXlGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUludDhGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVJbnQ4RnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVJbnQ4TXVsdGlBcnJheUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZUludDhNdWx0aUFycmF5RnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVKb2ludFN0YXRlRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlSm9pbnRTdGF0ZUZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlSm95RmVlZGJhY2tBcnJheUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZUpveUZlZWRiYWNrQXJyYXlGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUpveUZlZWRiYWNrRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlSm95RmVlZGJhY2tGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUpveUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZUpveUZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVLZXlWYWx1ZUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZUtleVZhbHVlRnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVMYW5kU3VyZmFjZSgpIj48Qj5jcmVhdGVMYW5kU3VyZmFjZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlTGFuZFN1cmZhY2UoKSI+PEI+Y3JlYXRlTGFuZFN1cmZhY2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TGFuZCBTdXJmYWNlPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlTGFuZFN1cmZhY2VBZGFwdGVyKCkiPjxCPmNyZWF0ZUxhbmRTdXJmYWNlQWRhcHRlcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0E+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkxhbmQgU3VyZmFjZTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVMYXNlclNjYW5Gcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVMYXNlclNjYW5Gcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVMaWRhclN5c3RlbSgpIj48Qj5jcmVhdGVMaWRhclN5c3RlbSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUxpZGFyU3lzdGVtKCkiPjxCPmNyZWF0ZUxpZGFyU3lzdGVtKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkxpZGFyIFN5c3RlbTwvZW0+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZUxpZGFyU3lzdGVtQWRhcHRlcigpIj48Qj5jcmVhdGVMaWRhclN5c3RlbUFkYXB0ZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTEFkYXB0ZXJGYWN0b3J5PC9BPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5MaWRhciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUxvY2FsaXphdGlvblNlbnNvclN5c3RlbSgpIj48Qj5jcmVhdGVMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTEZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0oKSI+PEI+Y3JlYXRlTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkxvY2FsaXphdGlvbiBTZW5zb3IgU3lzdGVtPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtQWRhcHRlcigpIj48Qj5jcmVhdGVMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1BZGFwdGVyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxBZGFwdGVyRmFjdG9yeTwvQT4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xvY2FsaXphdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkxvY2FsaXphdGlvbiBTZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZU1hcE1ldGFEYXRhRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlTWFwTWV0YURhdGFGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbCI+TmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZU11bHRpQXJyYXlEaW1lbnNpb25Gcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVNdWx0aUFycmF5RGltZW5zaW9uRnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVNdWx0aUFycmF5TGF5b3V0RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlTXVsdGlBcnJheUxheW91dEZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlTmF2U2F0Rml4RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlTmF2U2F0Rml4RnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVOYXZTYXRTdGF0dXNGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVOYXZTYXRTdGF0dXNGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0oKSI+PEI+Y3JlYXRlT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtKCkiPjxCPmNyZWF0ZU9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5PYmplY3QgRGV0ZWN0aW9uIFNlbnNvciBTeXN0ZW08L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1BZGFwdGVyKCkiPjxCPmNyZWF0ZU9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUFkYXB0ZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTEFkYXB0ZXJGYWN0b3J5PC9BPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+T2JqZWN0IERldGVjdGlvbiBTZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSgpIj48Qj5jcmVhdGVPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtKCkiPjxCPmNyZWF0ZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPk9iamVjdCBUcmFja2luZyBTZW5zb3IgU3lzdGVtPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1BZGFwdGVyKCkiPjxCPmNyZWF0ZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtQWRhcHRlcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0E+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPk9iamVjdCBUcmFja2luZyBTZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZU9jY3VwYW5jeUdyaWRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVPY2N1cGFuY3lHcmlkRnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiPk5hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVPZG9tZXRyeUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZU9kb21ldHJ5RnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiPk5hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlT25Qb3J0KCkiPjxCPmNyZWF0ZU9uUG9ydCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlT25Qb3J0KCkiPjxCPmNyZWF0ZU9uUG9ydCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5PbiBQb3J0PC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlT25Qb3J0QWRhcHRlcigpIj48Qj5jcmVhdGVPblBvcnRBZGFwdGVyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxBZGFwdGVyRmFjdG9yeTwvQT4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPk9uIFBvcnQ8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjY3JlYXRlUGFja2FnZUNvbnRlbnRzKCkiPjxCPmNyZWF0ZVBhY2thZ2VDb250ZW50cygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+Q3JlYXRlcyB0aGUgbWV0YS1tb2RlbCBvYmplY3RzIGZvciB0aGUgcGFja2FnZS4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjY3JlYXRlUGFja2FnZUNvbnRlbnRzKCkiPjxCPmNyZWF0ZVBhY2thZ2VDb250ZW50cygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbCI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD5DcmVhdGVzIHRoZSBtZXRhLW1vZGVsIG9iamVjdHMgZm9yIHRoZSBwYWNrYWdlLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2NyZWF0ZVBhY2thZ2VDb250ZW50cygpIj48Qj5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD5DcmVhdGVzIHRoZSBtZXRhLW1vZGVsIG9iamVjdHMgZm9yIHRoZSBwYWNrYWdlLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjY3JlYXRlUGFja2FnZUNvbnRlbnRzKCkiPjxCPmNyZWF0ZVBhY2thZ2VDb250ZW50cygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsIj5OYXZfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+Q3JlYXRlcyB0aGUgbWV0YS1tb2RlbCBvYmplY3RzIGZvciB0aGUgcGFja2FnZS4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2NyZWF0ZVBhY2thZ2VDb250ZW50cygpIj48Qj5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPkNyZWF0ZXMgdGhlIG1ldGEtbW9kZWwgb2JqZWN0cyBmb3IgdGhlIHBhY2thZ2UuCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNjcmVhdGVQYWNrYWdlQ29udGVudHMoKSI+PEI+Y3JlYXRlUGFja2FnZUNvbnRlbnRzKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD5DcmVhdGVzIHRoZSBtZXRhLW1vZGVsIG9iamVjdHMgZm9yIHRoZSBwYWNrYWdlLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2NyZWF0ZVBhY2thZ2VDb250ZW50cygpIj48Qj5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPkNyZWF0ZXMgdGhlIG1ldGEtbW9kZWwgb2JqZWN0cyBmb3IgdGhlIHBhY2thZ2UuCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQYXRoRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlUGF0aEZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsIj5OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVBlZGVzdHJpYW4oKSI+PEI+Y3JlYXRlUGVkZXN0cmlhbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlUGVkZXN0cmlhbigpIj48Qj5jcmVhdGVQZWRlc3RyaWFuKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlBlZGVzdHJpYW48L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVQZWRlc3RyaWFuQWRhcHRlcigpIj48Qj5jcmVhdGVQZWRlc3RyaWFuQWRhcHRlcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0E+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+UGVkZXN0cmlhbjwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlUGh5c2ljYWxEYXRhKCkiPjxCPmNyZWF0ZVBoeXNpY2FsRGF0YSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVBoeXNpY2FsRGF0YSgpIj48Qj5jcmVhdGVQaHlzaWNhbERhdGEoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UGh5c2ljYWwgRGF0YTwvZW0+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZVBoeXNpY2FsRGF0YUFkYXB0ZXIoKSI+PEI+Y3JlYXRlUGh5c2ljYWxEYXRhQWRhcHRlcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0E+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5QaHlzaWNhbCBEYXRhPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQaHlzaWNhbE9iamVjdCgpIj48Qj5jcmVhdGVQaHlzaWNhbE9iamVjdCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlUGh5c2ljYWxPYmplY3QoKSI+PEI+Y3JlYXRlUGh5c2ljYWxPYmplY3QoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UGh5c2ljYWwgT2JqZWN0PC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlUGh5c2ljYWxPYmplY3RBZGFwdGVyKCkiPjxCPmNyZWF0ZVBoeXNpY2FsT2JqZWN0QWRhcHRlcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0E+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlBoeXNpY2FsIE9iamVjdDwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlUGxhbmV0KCkiPjxCPmNyZWF0ZVBsYW5ldCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlUGxhbmV0KCkiPjxCPmNyZWF0ZVBsYW5ldCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5QbGFuZXQ8L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVQbGFuZXRBZGFwdGVyKCkiPjxCPmNyZWF0ZVBsYW5ldEFkYXB0ZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTEFkYXB0ZXJGYWN0b3J5PC9BPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhbmV0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+UGxhbmV0PC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQbGF0Zm9ybSgpIj48Qj5jcmVhdGVQbGF0Zm9ybSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlUGxhdGZvcm0oKSI+PEI+Y3JlYXRlUGxhdGZvcm0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UGxhdGZvcm08L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVQbGF0Zm9ybUFkYXB0ZXIoKSI+PEI+Y3JlYXRlUGxhdGZvcm1BZGFwdGVyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxBZGFwdGVyRmFjdG9yeTwvQT4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+UGxhdGZvcm08L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVBvaW50MzJGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVQb2ludDMyRnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlUG9pbnRDbG91ZDJGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVQb2ludENsb3VkMkZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlUG9pbnRDbG91ZEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZVBvaW50Q2xvdWRGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVBvaW50RmllbGRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVQb2ludEZpZWxkRnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlUG9pbnRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVQb2ludEZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQb2ludFN0YW1wZWRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVQb2ludFN0YW1wZWRGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlUG9seWdvbkZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZVBvbHlnb25Gcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlUG9seWdvblN0YW1wZWRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVQb2x5Z29uU3RhbXBlZEZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVQb3J0QWRhcHRlcigpIj48Qj5jcmVhdGVQb3J0QWRhcHRlcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0E+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+UG9ydDwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlUG9zZTJERnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlUG9zZTJERnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVBvc2VBcnJheUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZVBvc2VBcnJheUZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQb3NlRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlUG9zZUZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQb3NlU3RhbXBlZEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZVBvc2VTdGFtcGVkRnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVBvc2VXaXRoQ292YXJpYW5jZUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZVBvc2VXaXRoQ292YXJpYW5jZUZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlUG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZEZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQcmltaXRpdmVEYXRhKCkiPjxCPmNyZWF0ZVByaW1pdGl2ZURhdGEoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTEZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVQcmltaXRpdmVEYXRhKCkiPjxCPmNyZWF0ZVByaW1pdGl2ZURhdGEoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UHJpbWl0aXZlIERhdGE8L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVQcmltaXRpdmVEYXRhQWRhcHRlcigpIj48Qj5jcmVhdGVQcmltaXRpdmVEYXRhQWRhcHRlcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0E+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QcmltaXRpdmVEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+UHJpbWl0aXZlIERhdGE8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVF1YXRlcm5pb25Gcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVRdWF0ZXJuaW9uRnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVF1YXRlcm5pb25TdGFtcGVkRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlUXVhdGVybmlvblN0YW1wZWRGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVSYW5nZUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZVJhbmdlRnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVSZWdpb25PZkludGVyZXN0RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlUmVnaW9uT2ZJbnRlcmVzdEZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlUmVzb3VyY2Uob3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLlVSSSkiPjxCPmNyZWF0ZVJlc291cmNlKFVSSSk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFJlc291cmNlRmFjdG9yeUltcGw8L0E+Cis8REQ+Q3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgcmVzb3VyY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVSb2JvdCgpIj48Qj5jcmVhdGVSb2JvdCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVJvYm90KCkiPjxCPmNyZWF0ZVJvYm90KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlJvYm90PC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlUm9ib3RBZGFwdGVyKCkiPjxCPmNyZWF0ZVJvYm90QWRhcHRlcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0E+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlJvYm90PC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVSb2JvdGljTWlkZGxld2FyZSgpIj48Qj5jcmVhdGVSb2JvdGljTWlkZGxld2FyZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlUm9ib3RpY01pZGRsZXdhcmUoKSI+PEI+Y3JlYXRlUm9ib3RpY01pZGRsZXdhcmUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Um9ib3RpYyBNaWRkbGV3YXJlPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlUm9ib3RpY01pZGRsZXdhcmVBZGFwdGVyKCkiPjxCPmNyZWF0ZVJvYm90aWNNaWRkbGV3YXJlQWRhcHRlcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0E+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlJvYm90aWMgTWlkZGxld2FyZTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlUm9ib3RpY01pZGRsZXdhcmVLaW5kRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlUm9ib3RpY01pZGRsZXdhcmVLaW5kRnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxGYWN0b3J5SW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVSb2JvdGljU2ltdWxhdG9yKCkiPjxCPmNyZWF0ZVJvYm90aWNTaW11bGF0b3IoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTEZhY3RvcnlJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVJvYm90aWNTaW11bGF0b3IoKSI+PEI+Y3JlYXRlUm9ib3RpY1NpbXVsYXRvcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Sb2JvdGljIFNpbXVsYXRvcjwvZW0+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZVJvYm90aWNTaW11bGF0b3JBZGFwdGVyKCkiPjxCPmNyZWF0ZVJvYm90aWNTaW11bGF0b3JBZGFwdGVyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxBZGFwdGVyRmFjdG9yeTwvQT4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Sb2JvdGljIFNpbXVsYXRvcjwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlUm9ib3RpY1N5c3RlbSgpIj48Qj5jcmVhdGVSb2JvdGljU3lzdGVtKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlUm9ib3RpY1N5c3RlbSgpIj48Qj5jcmVhdGVSb2JvdGljU3lzdGVtKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlJvYm90aWMgU3lzdGVtPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlUm9ib3RpY1N5c3RlbUFkYXB0ZXIoKSI+PEI+Y3JlYXRlUm9ib3RpY1N5c3RlbUFkYXB0ZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTEFkYXB0ZXJGYWN0b3J5PC9BPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlJvYm90aWMgU3lzdGVtPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVSb2JvdEtpbmRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVSb2JvdEtpbmRGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTEZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVTZW5zb3JEcml2ZXIoKSI+PEI+Y3JlYXRlU2Vuc29yRHJpdmVyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxGYWN0b3J5SW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVTZW5zb3JEcml2ZXIoKSI+PEI+Y3JlYXRlU2Vuc29yRHJpdmVyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlNlbnNvciBEcml2ZXI8L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVTZW5zb3JEcml2ZXJBZGFwdGVyKCkiPjxCPmNyZWF0ZVNlbnNvckRyaXZlckFkYXB0ZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTEFkYXB0ZXJGYWN0b3J5PC9BPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yRHJpdmVyLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+U2Vuc29yIERyaXZlcjwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlU2Vuc29yU3lzdGVtKCkiPjxCPmNyZWF0ZVNlbnNvclN5c3RlbSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVNlbnNvclN5c3RlbSgpIj48Qj5jcmVhdGVTZW5zb3JTeXN0ZW0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+U2Vuc29yIFN5c3RlbTwvZW0+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZVNlbnNvclN5c3RlbUFkYXB0ZXIoKSI+PEI+Y3JlYXRlU2Vuc29yU3lzdGVtQWRhcHRlcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0E+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVTZXJ2aWNlRmxvd0tpbmRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVTZXJ2aWNlRmxvd0tpbmRGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTEZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVTZXJ2aWNlUG9ydCgpIj48Qj5jcmVhdGVTZXJ2aWNlUG9ydCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVNlcnZpY2VQb3J0KCkiPjxCPmNyZWF0ZVNlcnZpY2VQb3J0KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlNlcnZpY2UgUG9ydDwvZW0+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZVNlcnZpY2VQb3J0QWRhcHRlcigpIj48Qj5jcmVhdGVTZXJ2aWNlUG9ydEFkYXB0ZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTEFkYXB0ZXJGYWN0b3J5PC9BPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TZXJ2aWNlIFBvcnQ8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVNoYWRlRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlU2hhZGVGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTEZhY3RvcnlJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVNpbXVsYXRlZFN5c3RlbSgpIj48Qj5jcmVhdGVTaW11bGF0ZWRTeXN0ZW0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTEZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVTaW11bGF0ZWRTeXN0ZW0oKSI+PEI+Y3JlYXRlU2ltdWxhdGVkU3lzdGVtKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlNpbXVsYXRlZCBTeXN0ZW08L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVTaW11bGF0ZWRTeXN0ZW1BZGFwdGVyKCkiPjxCPmNyZWF0ZVNpbXVsYXRlZFN5c3RlbUFkYXB0ZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTEFkYXB0ZXJGYWN0b3J5PC9BPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+U2ltdWxhdGVkIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlU29mdHdhcmUoKSI+PEI+Y3JlYXRlU29mdHdhcmUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTEZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVTb2Z0d2FyZSgpIj48Qj5jcmVhdGVTb2Z0d2FyZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Tb2Z0d2FyZTwvZW0+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZVNvZnR3YXJlQWRhcHRlcigpIj48Qj5jcmVhdGVTb2Z0d2FyZUFkYXB0ZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTEFkYXB0ZXJGYWN0b3J5PC9BPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Tb2Z0d2FyZTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlU3RhaXJzKCkiPjxCPmNyZWF0ZVN0YWlycygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlU3RhaXJzKCkiPjxCPmNyZWF0ZVN0YWlycygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TdGFpcnM8L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVTdGFpcnNBZGFwdGVyKCkiPjxCPmNyZWF0ZVN0YWlyc0FkYXB0ZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTEFkYXB0ZXJGYWN0b3J5PC9BPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+U3RhaXJzPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVTdGF0ZSgpIj48Qj5jcmVhdGVTdGF0ZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVN0YXRlKCkiPjxCPmNyZWF0ZVN0YXRlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlN0YXRlPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlU3RhdGVBZGFwdGVyKCkiPjxCPmNyZWF0ZVN0YXRlQWRhcHRlcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0E+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlN0YXRlPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVN0cmluZ0Zyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZVN0cmluZ0Zyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVN1cmZhY2UoKSI+PEI+Y3JlYXRlU3VyZmFjZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlU3VyZmFjZSgpIj48Qj5jcmVhdGVTdXJmYWNlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlN1cmZhY2U8L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVTdXJmYWNlQWRhcHRlcigpIj48Qj5jcmVhdGVTdXJmYWNlQWRhcHRlcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0E+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+U3VyZmFjZTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlU3luY2hyb25pemF0aW9uS2luZEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZVN5bmNocm9uaXphdGlvbktpbmRGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTEZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVTeXN0ZW0oKSI+PEI+Y3JlYXRlU3lzdGVtKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlU3lzdGVtKCkiPjxCPmNyZWF0ZVN5c3RlbSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TeXN0ZW08L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVTeXN0ZW1BZGFwdGVyKCkiPjxCPmNyZWF0ZVN5c3RlbUFkYXB0ZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTEFkYXB0ZXJGYWN0b3J5PC9BPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+U3lzdGVtPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVRpbWVGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVUaW1lRnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlVHJhbnNmb3JtRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlVHJhbnNmb3JtRnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVRyYW5zaXRpb24oKSI+PEI+Y3JlYXRlVHJhbnNpdGlvbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVRyYW5zaXRpb24oKSI+PEI+Y3JlYXRlVHJhbnNpdGlvbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5UcmFuc2l0aW9uPC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlVHJhbnNpdGlvbkFkYXB0ZXIoKSI+PEI+Y3JlYXRlVHJhbnNpdGlvbkFkYXB0ZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTEFkYXB0ZXJGYWN0b3J5PC9BPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlRyYW5zaXRpb248L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVR3aXN0RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlVHdpc3RGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlVHdpc3RTdGFtcGVkRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlVHdpc3RTdGFtcGVkRnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVR3aXN0V2l0aENvdmFyaWFuY2VGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVUd2lzdFdpdGhDb3ZhcmlhbmNlRnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVVHVktpbmRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVVR1ZLaW5kRnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVVSWludDE2TXVsdGlBcnJheUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZVVJaW50MTZNdWx0aUFycmF5RnJvbVN0cmluZyhFRGF0YVR5cGUsIFN0cmluZyk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVVSW50MTZGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVVSW50MTZGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVVJbnQzMkZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZVVJbnQzMkZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlVUludDMyTXVsdGlBcnJheUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZVVJbnQzMk11bHRpQXJyYXlGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVVJbnQ2NEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZVVJbnQ2NEZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlVUludDY0TXVsdGlBcnJheUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZVVJbnQ2NE11bHRpQXJyYXlGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVVJbnQ4RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlVUludDhGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVVJbnQ4TXVsdGlBcnJheUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZVVJbnQ4TXVsdGlBcnJheUZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVVuaXRLaW5kRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlVW5pdEtpbmRGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTEZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVWZWN0bzNTdGFtcGVkRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlVmVjdG8zU3RhbXBlZEZyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVWZWN0b3IzRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Y3JlYXRlVmVjdG9yM0Zyb21TdHJpbmcoRURhdGFUeXBlLCBTdHJpbmcpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVXYXRlclN1cmZhY2UoKSI+PEI+Y3JlYXRlV2F0ZXJTdXJmYWNlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxGYWN0b3J5SW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVXYXRlclN1cmZhY2UoKSI+PEI+Y3JlYXRlV2F0ZXJTdXJmYWNlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPldhdGVyIFN1cmZhY2U8L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVXYXRlclN1cmZhY2VBZGFwdGVyKCkiPjxCPmNyZWF0ZVdhdGVyU3VyZmFjZUFkYXB0ZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTEFkYXB0ZXJGYWN0b3J5PC9BPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+V2F0ZXIgU3VyZmFjZTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlV2hlZWxTeXN0ZW0oKSI+PEI+Y3JlYXRlV2hlZWxTeXN0ZW0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTEZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVXaGVlbFN5c3RlbSgpIj48Qj5jcmVhdGVXaGVlbFN5c3RlbSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5XaGVlbCBTeXN0ZW08L2VtPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVXaGVlbFN5c3RlbUFkYXB0ZXIoKSI+PEI+Y3JlYXRlV2hlZWxTeXN0ZW1BZGFwdGVyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxBZGFwdGVyRmFjdG9yeTwvQT4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+V2hlZWwgU3lzdGVtPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVXcmVuY2hGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48Qj5jcmVhdGVXcmVuY2hGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlV3JlbmNoU3RhbXBlZEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjxCPmNyZWF0ZVdyZW5jaFN0YW1wZWRGcm9tU3RyaW5nKEVEYXRhVHlwZSwgU3RyaW5nKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ1lDQUJfVEsiPjxCPkNZQ0FCX1RLPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkN5Y2FiIFRLPC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNDWUNBQl9USyI+PEI+Q1lDQUJfVEs8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5DeWNhYiBUSzwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ1lDQUJfVEtfX0JBU0VfQ0xBU1MiPjxCPkNZQ0FCX1RLX19CQVNFX0NMQVNTPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NZQ0FCX1RLX19CQVNFX05PREUiPjxCPkNZQ0FCX1RLX19CQVNFX05PREU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBOb2RlPC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDWUNBQl9US19fVElNRV9GQUNUT1IiPjxCPkNZQ0FCX1RLX19USU1FX0ZBQ1RPUjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5UaW1lIEZhY3RvcjwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQ1lDQUJfVEtfX1RJTUVfRkFDVE9SIj48Qj5DWUNBQl9US19fVElNRV9GQUNUT1I8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VGltZSBGYWN0b3I8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ1lDQUJfVEtfX1RJTUVfU1RFUCI+PEI+Q1lDQUJfVEtfX1RJTUVfU1RFUDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5UaW1lIFN0ZXA8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0NZQ0FCX1RLX19USU1FX1NURVAiPjxCPkNZQ0FCX1RLX19USU1FX1NURVA8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VGltZSBTdGVwPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NZQ0FCX1RLX19VU0VfUkVBTF9USU1FIj48Qj5DWUNBQl9US19fVVNFX1JFQUxfVElNRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Vc2UgUmVhbCBUaW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNDWUNBQl9US19fVVNFX1JFQUxfVElNRSI+PEI+Q1lDQUJfVEtfX1VTRV9SRUFMX1RJTUU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VXNlIFJlYWwgVGltZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDWUNBQl9US19GRUFUVVJFX0NPVU5UIj48Qj5DWUNBQl9US19GRUFUVVJFX0NPVU5UPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkN5Y2FiIFRLPC9lbT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkN5Y2FiVEs8L0I+PC9BPiAtIEludGVyZmFjZSBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48REQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q3ljYWIgVEs8L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+Q3ljYWJUS0ltcGw8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48REQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkN5Y2FiIFRLPC9iPjwvZW0+JzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC0yLmh0bWwiPjxCPlBSRVYgTEVUVEVSPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTQuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0zLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEEgSFJFRj0iaW5kZXgtMS5odG1sIj5BPC9BPiA8QSBIUkVGPSJpbmRleC0yLmh0bWwiPkI8L0E+IDxBIEhSRUY9ImluZGV4LTMuaHRtbCI+QzwvQT4gPEEgSFJFRj0iaW5kZXgtNC5odG1sIj5EPC9BPiA8QSBIUkVGPSJpbmRleC01Lmh0bWwiPkU8L0E+IDxBIEhSRUY9ImluZGV4LTYuaHRtbCI+RjwvQT4gPEEgSFJFRj0iaW5kZXgtNy5odG1sIj5HPC9BPiA8QSBIUkVGPSJpbmRleC04Lmh0bWwiPkg8L0E+IDxBIEhSRUY9ImluZGV4LTkuaHRtbCI+STwvQT4gPEEgSFJFRj0iaW5kZXgtMTAuaHRtbCI+SjwvQT4gPEEgSFJFRj0iaW5kZXgtMTEuaHRtbCI+SzwvQT4gPEEgSFJFRj0iaW5kZXgtMTIuaHRtbCI+TDwvQT4gPEEgSFJFRj0iaW5kZXgtMTMuaHRtbCI+TTwvQT4gPEEgSFJFRj0iaW5kZXgtMTQuaHRtbCI+TjwvQT4gPEEgSFJFRj0iaW5kZXgtMTUuaHRtbCI+TzwvQT4gPEEgSFJFRj0iaW5kZXgtMTYuaHRtbCI+UDwvQT4gPEEgSFJFRj0iaW5kZXgtMTcuaHRtbCI+UTwvQT4gPEEgSFJFRj0iaW5kZXgtMTguaHRtbCI+UjwvQT4gPEEgSFJFRj0iaW5kZXgtMTkuaHRtbCI+UzwvQT4gPEEgSFJFRj0iaW5kZXgtMjAuaHRtbCI+VDwvQT4gPEEgSFJFRj0iaW5kZXgtMjEuaHRtbCI+VTwvQT4gPEEgSFJFRj0iaW5kZXgtMjIuaHRtbCI+VjwvQT4gPEEgSFJFRj0iaW5kZXgtMjMuaHRtbCI+VzwvQT4gPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2luZGV4LWZpbGVzL2luZGV4LTQuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtNC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk1YmQ2ODAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2luZGV4LWZpbGVzL2luZGV4LTQuaHRtbApAQCAtMCwwICsxLDIwOSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMzIENFVCAyMDEyIC0tPgorPFRJVExFPgorRC1JbmRleAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkQtSW5kZXgiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+SW5kZXg8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9ImluZGV4LTMuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtNS5odG1sIj48Qj5ORVhUIExFVFRFUjwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtNC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+QjwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5DPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+RTwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5KPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5LPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5MPC9BPiA8QSBIUkVGPSJpbmRleC0xMy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC0xNC5odG1sIj5OPC9BPiA8QSBIUkVGPSJpbmRleC0xNS5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC0xNi5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xNy5odG1sIj5RPC9BPiA8QSBIUkVGPSJpbmRleC0xOC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xOS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0yMC5odG1sIj5UPC9BPiA8QSBIUkVGPSJpbmRleC0yMS5odG1sIj5VPC9BPiA8QSBIUkVGPSJpbmRleC0yMi5odG1sIj5WPC9BPiA8QSBIUkVGPSJpbmRleC0yMy5odG1sIj5XPC9BPiA8SFI+Cis8QSBOQU1FPSJfRF8iPjwhLS0gLS0+PC9BPjxIMj4KKzxCPkQ8L0I+PC9IMj4KKzxETD4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNEQVRBX0ZMT1dfRElSRUNUSU9OX0tJTkQiPjxCPkRBVEFfRkxPV19ESVJFQ1RJT05fS0lORDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkRhdGEgRmxvdyBEaXJlY3Rpb24gS2luZDwvZW0+PC9DT0RFPjwvQT4nIGVudW0KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNEQVRBX0ZMT1dfRElSRUNUSU9OX0tJTkQiPjxCPkRBVEFfRkxPV19ESVJFQ1RJT05fS0lORDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+RGF0YSBGbG93IERpcmVjdGlvbiBLaW5kPC9lbT48L0NPREU+PC9BPicgZW51bQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0RBVEFfRkxPV19QT1JUIj48Qj5EQVRBX0ZMT1dfUE9SVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9EYXRhRmxvd1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkRhdGEgRmxvdyBQb3J0PC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNEQVRBX0ZMT1dfUE9SVCI+PEI+REFUQV9GTE9XX1BPUlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9EYXRhRmxvd1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkRhdGEgRmxvdyBQb3J0PC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNEQVRBX0ZMT1dfUE9SVF9fQkFTRV9QT1JUIj48Qj5EQVRBX0ZMT1dfUE9SVF9fQkFTRV9QT1JUPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgUG9ydDwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjREFUQV9GTE9XX1BPUlRfX0JVRkZFUl9TSVpFIj48Qj5EQVRBX0ZMT1dfUE9SVF9fQlVGRkVSX1NJWkU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QnVmZmVyIFNpemU8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0RBVEFfRkxPV19QT1JUX19CVUZGRVJfU0laRSI+PEI+REFUQV9GTE9XX1BPUlRfX0JVRkZFUl9TSVpFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkJ1ZmZlciBTaXplPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0RBVEFfRkxPV19QT1JUX19ESVJFQ1RJT04iPjxCPkRBVEFfRkxPV19QT1JUX19ESVJFQ1RJT048L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RGlyZWN0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNEQVRBX0ZMT1dfUE9SVF9fRElSRUNUSU9OIj48Qj5EQVRBX0ZMT1dfUE9SVF9fRElSRUNUSU9OPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkRpcmVjdGlvbjwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNEQVRBX0ZMT1dfUE9SVF9fU1lOQ0hST05JWkFUSU9OX1BPTElDWSI+PEI+REFUQV9GTE9XX1BPUlRfX1NZTkNIUk9OSVpBVElPTl9QT0xJQ1k8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+U3luY2hyb25pemF0aW9uIFBvbGljeTwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjREFUQV9GTE9XX1BPUlRfRkVBVFVSRV9DT1VOVCI+PEI+REFUQV9GTE9XX1BPUlRfRkVBVFVSRV9DT1VOVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5EYXRhIEZsb3cgUG9ydDwvZW0+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0I+PC9BPiAtIEVudW0gaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIGxpdGVyYWxzIG9mIHRoZSBlbnVtZXJhdGlvbiAnPGVtPjxiPkRhdGEgRmxvdyBEaXJlY3Rpb24gS2luZDwvYj48L2VtPicsCisgYW5kIHV0aWxpdHkgbWV0aG9kcyBmb3Igd29ya2luZyB3aXRoIHRoZW08RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+RGF0YUZsb3dQb3J0PC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkRhdGEgRmxvdyBQb3J0PC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9EYXRhRmxvd1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+RGF0YUZsb3dQb3J0SW1wbDwvQj48L0E+IC0gQ2xhc3MgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjxERD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+RGF0YSBGbG93IFBvcnQ8L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNkZWZhdWx0Q2FzZShvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkiPjxCPmRlZmF1bHRDYXNlKEVPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFN3aXRjaDwvQT4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5FT2JqZWN0PC9lbT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjREVHUkVFX1ZBTFVFIj48Qj5ERUdSRUVfVkFMVUU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPgorPEREPlRoZSAnPGVtPjxiPkRlZ3JlZTwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNESUFHTk9TVElDX0FSUkFZIj48Qj5ESUFHTk9TVElDX0FSUkFZPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkRpYWdub3N0aWMgQXJyYXk8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI0RJQUdOT1NUSUNfQVJSQVkiPjxCPkRJQUdOT1NUSUNfQVJSQVk8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5EaWFnbm9zdGljIEFycmF5PC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPjxCPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzPC9BPjxERD5UaGUgPGI+RmFjdG9yeTwvYj4gZm9yIHRoZSBtb2RlbC48RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwiPjxCPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbDwvQT48REQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPkZhY3Rvcnk8L2I+PERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNEaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsKCkiPjxCPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwoKTwvQj48L0E+IC0gCitDb25zdHJ1Y3RvciBmb3IgY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwiPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+Q3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgZmFjdG9yeQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPjxCPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzPC9BPjxERD5UaGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoZSBtb2RlbC48RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+PEI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXM8L0E+PEREPkRlZmluZXMgbGl0ZXJhbHMgZm9yIHRoZSBtZXRhIG9iamVjdHMgdGhhdCByZXByZXNlbnQKKyAKKyBlYWNoIGNsYXNzLAorIGVhY2ggZmVhdHVyZSBvZiBlYWNoIGNsYXNzLAorIGVhY2ggZW51bSwKKyBhbmQgZWFjaCBkYXRhIHR5cGUKKyAKKyA8ITxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbCI+PEI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQj48L0E+IC0gQ2xhc3MgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsPC9BPjxERD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgPGI+UGFja2FnZTwvYj48RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sI0RJQUdOT1NUSUNfU1RBVFVTIj48Qj5ESUFHTk9TVElDX1NUQVRVUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5EaWFnbm9zdGljIFN0YXR1czwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjRElBR05PU1RJQ19TVEFUVVMiPjxCPkRJQUdOT1NUSUNfU1RBVFVTPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+RGlhZ25vc3RpYyBTdGF0dXM8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCNESUZGRVJFTlRJQUxfVkFMVUUiPjxCPkRJRkZFUkVOVElBTF9WQUxVRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5VR1ZLaW5kPC9BPgorPEREPlRoZSAnPGVtPjxiPkRpZmZlcmVudGlhbDwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjRFVSQVRJT04iPjxCPkRVUkFUSU9OPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5EdXJhdGlvbjwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI0RVUkFUSU9OIj48Qj5EVVJBVElPTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5EdXJhdGlvbjwvZW0+JyBkYXRhIHR5cGUKKzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC0zLmh0bWwiPjxCPlBSRVYgTEVUVEVSPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTUuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC00Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEEgSFJFRj0iaW5kZXgtMS5odG1sIj5BPC9BPiA8QSBIUkVGPSJpbmRleC0yLmh0bWwiPkI8L0E+IDxBIEhSRUY9ImluZGV4LTMuaHRtbCI+QzwvQT4gPEEgSFJFRj0iaW5kZXgtNC5odG1sIj5EPC9BPiA8QSBIUkVGPSJpbmRleC01Lmh0bWwiPkU8L0E+IDxBIEhSRUY9ImluZGV4LTYuaHRtbCI+RjwvQT4gPEEgSFJFRj0iaW5kZXgtNy5odG1sIj5HPC9BPiA8QSBIUkVGPSJpbmRleC04Lmh0bWwiPkg8L0E+IDxBIEhSRUY9ImluZGV4LTkuaHRtbCI+STwvQT4gPEEgSFJFRj0iaW5kZXgtMTAuaHRtbCI+SjwvQT4gPEEgSFJFRj0iaW5kZXgtMTEuaHRtbCI+SzwvQT4gPEEgSFJFRj0iaW5kZXgtMTIuaHRtbCI+TDwvQT4gPEEgSFJFRj0iaW5kZXgtMTMuaHRtbCI+TTwvQT4gPEEgSFJFRj0iaW5kZXgtMTQuaHRtbCI+TjwvQT4gPEEgSFJFRj0iaW5kZXgtMTUuaHRtbCI+TzwvQT4gPEEgSFJFRj0iaW5kZXgtMTYuaHRtbCI+UDwvQT4gPEEgSFJFRj0iaW5kZXgtMTcuaHRtbCI+UTwvQT4gPEEgSFJFRj0iaW5kZXgtMTguaHRtbCI+UjwvQT4gPEEgSFJFRj0iaW5kZXgtMTkuaHRtbCI+UzwvQT4gPEEgSFJFRj0iaW5kZXgtMjAuaHRtbCI+VDwvQT4gPEEgSFJFRj0iaW5kZXgtMjEuaHRtbCI+VTwvQT4gPEEgSFJFRj0iaW5kZXgtMjIuaHRtbCI+VjwvQT4gPEEgSFJFRj0iaW5kZXgtMjMuaHRtbCI+VzwvQT4gPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2luZGV4LWZpbGVzL2luZGV4LTUuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtNS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ4NzAyNTUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2luZGV4LWZpbGVzL2luZGV4LTUuaHRtbApAQCAtMCwwICsxLDY1NyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMzIENFVCAyMDEyIC0tPgorPFRJVExFPgorRS1JbmRleAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkUtSW5kZXgiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+SW5kZXg8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9ImluZGV4LTQuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtNi5odG1sIj48Qj5ORVhUIExFVFRFUjwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtNS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+QjwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5DPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+RTwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5KPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5LPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5MPC9BPiA8QSBIUkVGPSJpbmRleC0xMy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC0xNC5odG1sIj5OPC9BPiA8QSBIUkVGPSJpbmRleC0xNS5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC0xNi5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xNy5odG1sIj5RPC9BPiA8QSBIUkVGPSJpbmRleC0xOC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xOS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0yMC5odG1sIj5UPC9BPiA8QSBIUkVGPSJpbmRleC0yMS5odG1sIj5VPC9BPiA8QSBIUkVGPSJpbmRleC0yMi5odG1sIj5WPC9BPiA8QSBIUkVGPSJpbmRleC0yMy5odG1sIj5XPC9BPiA8SFI+Cis8QSBOQU1FPSJfRV8iPjwhLS0gLS0+PC9BPjxIMj4KKzxCPkU8L0I+PC9IMj4KKzxETD4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPjxCPmVHZXQoaW50LCBib29sZWFuLCBib29sZWFuKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWdlbnRJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPjxCPmVHZXQoaW50LCBib29sZWFuLCBib29sZWFuKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFsZ29yaXRobUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj48Qj5lR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbik8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWxnb3JpdGhtTGlicmFyeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPjxCPmVHZXQoaW50LCBib29sZWFuLCBib29sZWFuKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkJsZW5kZXJNb3JzZUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+PEI+ZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q2FtZXJhU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29sbGVjdGlvbkltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPjxCPmVHZXQoaW50LCBib29sZWFuLCBib29sZWFuKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29sbGVjdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Db2xsZWN0aW9uSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29tcG9zZWREYXRhSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+PEI+ZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db21wb3NlZERhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q29tcG9zZWREYXRhSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ3ljYWJUS0ltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPjxCPmVHZXQoaW50LCBib29sZWFuLCBib29sZWFuKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ3ljYWJUS0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5DeWNhYlRLSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9EYXRhRmxvd1BvcnRJbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj48Qj5lR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbik8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5EYXRhRmxvd1BvcnRJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj48Qj5lR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbik8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5FbmdpbmVTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HUFNTeXN0ZW1JbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj48Qj5lR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbik8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dQU1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5HUFNTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPjxCPmVHZXQoaW50LCBib29sZWFuLCBib29sZWFuKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TGlkYXJTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PblBvcnRJbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj48Qj5lR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbik8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5PblBvcnRJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsRGF0YUltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPjxCPmVHZXQoaW50LCBib29sZWFuLCBib29sZWFuKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxEYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBoeXNpY2FsRGF0YUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+PEI+ZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QaHlzaWNhbE9iamVjdEltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj48Qj5lR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbik8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBsYXRmb3JtSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+PEI+ZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBvcnRJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QcmltaXRpdmVEYXRhSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+PEI+ZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QcmltaXRpdmVEYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlByaW1pdGl2ZURhdGFJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljTWlkZGxld2FyZUltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPjxCPmVHZXQoaW50LCBib29sZWFuLCBib29sZWFuKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY01pZGRsZXdhcmVJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj48Qj5lR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbik8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY1N5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+PEI+ZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdEltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPjxCPmVHZXQoaW50LCBib29sZWFuLCBib29sZWFuKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlbnNvclN5c3RlbUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj48Qj5lR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbik8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlcnZpY2VQb3J0SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2ltdWxhdGVkU3lzdGVtSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+PEI+ZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2ltdWxhdGVkU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj48Qj5lR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbik8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNvZnR3YXJlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPjxCPmVHZXQoaW50LCBib29sZWFuLCBib29sZWFuKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhdGVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3RhdGVJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj48Qj5lR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbik8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+PEI+ZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlRyYW5zaXRpb25JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPjxCPmVHZXQoaW50LCBib29sZWFuLCBib29sZWFuKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2hlZWxTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5odG1sI2VJTlNUQU5DRSI+PEI+ZUlOU1RBTkNFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+Cis8REQ+VGhlIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiB0aGUgZmFjdG9yeQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZUlOU1RBTkNFIj48Qj5lSU5TVEFOQ0U8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBwYWNrYWdlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeS5odG1sI2VJTlNUQU5DRSI+PEI+ZUlOU1RBTkNFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeTwvQT4KKzxERD5UaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBmYWN0b3J5Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VJTlNUQU5DRSI+PEI+ZUlOU1RBTkNFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBwYWNrYWdlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwjZUlOU1RBTkNFIj48Qj5lSU5TVEFOQ0U8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0E+Cis8REQ+VGhlIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiB0aGUgZmFjdG9yeQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VJTlNUQU5DRSI+PEI+ZUlOU1RBTkNFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIHBhY2thZ2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sI2VJTlNUQU5DRSI+PEI+ZUlOU1RBTkNFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc0ZhY3Rvcnk8L0E+Cis8REQ+VGhlIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiB0aGUgZmFjdG9yeQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZUlOU1RBTkNFIj48Qj5lSU5TVEFOQ0U8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBwYWNrYWdlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCNlSU5TVEFOQ0UiPjxCPmVJTlNUQU5DRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5PC9BPgorPEREPlRoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIGZhY3RvcnkKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VJTlNUQU5DRSI+PEI+ZUlOU1RBTkNFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiB0aGUgcGFja2FnZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwjZUlOU1RBTkNFIj48Qj5lSU5TVEFOQ0U8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzRmFjdG9yeTwvQT4KKzxERD5UaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBmYWN0b3J5Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlSU5TVEFOQ0UiPjxCPmVJTlNUQU5DRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIHBhY2thZ2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNlSU5TVEFOQ0UiPjxCPmVJTlNUQU5DRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPgorPEREPlRoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIGZhY3RvcnkKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNlSU5TVEFOQ0UiPjxCPmVJTlNUQU5DRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIHBhY2thZ2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCNlSXNTZXQoaW50KSI+PEI+ZUlzU2V0KGludCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFnZW50SW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1JbXBsLmh0bWwjZUlzU2V0KGludCkiPjxCPmVJc1NldChpbnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWxnb3JpdGhtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCNlSXNTZXQoaW50KSI+PEI+ZUlzU2V0KGludCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWxnb3JpdGhtTGlicmFyeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCNlSXNTZXQoaW50KSI+PEI+ZUlzU2V0KGludCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5CbGVuZGVyTW9yc2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCNlSXNTZXQoaW50KSI+PEI+ZUlzU2V0KGludCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5DYW1lcmFTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db2xsZWN0aW9uSW1wbC5odG1sI2VJc1NldChpbnQpIj48Qj5lSXNTZXQoaW50KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29sbGVjdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Db2xsZWN0aW9uSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29tcG9zZWREYXRhSW1wbC5odG1sI2VJc1NldChpbnQpIj48Qj5lSXNTZXQoaW50KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29tcG9zZWREYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkNvbXBvc2VkRGF0YUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwjZUlzU2V0KGludCkiPjxCPmVJc1NldChpbnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkN5Y2FiVEtJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCNlSXNTZXQoaW50KSI+PEI+ZUlzU2V0KGludCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5EYXRhRmxvd1BvcnRJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwjZUlzU2V0KGludCkiPjxCPmVJc1NldChpbnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+RW5naW5lU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR1BTU3lzdGVtSW1wbC5odG1sI2VJc1NldChpbnQpIj48Qj5lSXNTZXQoaW50KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR1BTU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkdQU1N5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI2VJc1NldChpbnQpIj48Qj5lSXNTZXQoaW50KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TGlkYXJTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PblBvcnRJbXBsLmh0bWwjZUlzU2V0KGludCkiPjxCPmVJc1NldChpbnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PblBvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+T25Qb3J0SW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbERhdGFJbXBsLmh0bWwjZUlzU2V0KGludCkiPjxCPmVJc1NldChpbnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbERhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGh5c2ljYWxEYXRhSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZUlzU2V0KGludCkiPjxCPmVJc1NldChpbnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QaHlzaWNhbE9iamVjdEltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwjZUlzU2V0KGludCkiPjxCPmVJc1NldChpbnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QbGF0Zm9ybUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCNlSXNTZXQoaW50KSI+PEI+ZUlzU2V0KGludCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UG9ydEltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1ByaW1pdGl2ZURhdGFJbXBsLmh0bWwjZUlzU2V0KGludCkiPjxCPmVJc1NldChpbnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QcmltaXRpdmVEYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlByaW1pdGl2ZURhdGFJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljTWlkZGxld2FyZUltcGwuaHRtbCNlSXNTZXQoaW50KSI+PEI+ZUlzU2V0KGludCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNNaWRkbGV3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90aWNNaWRkbGV3YXJlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI2VJc1NldChpbnQpIj48Qj5lSXNTZXQoaW50KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmh0bWwjZUlzU2V0KGludCkiPjxCPmVJc1NldChpbnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdEltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNlSXNTZXQoaW50KSI+PEI+ZUlzU2V0KGludCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JTeXN0ZW1JbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sI2VJc1NldChpbnQpIj48Qj5lSXNTZXQoaW50KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2VydmljZVBvcnRJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwjZUlzU2V0KGludCkiPjxCPmVJc1NldChpbnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2ltdWxhdGVkU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwjZUlzU2V0KGludCkiPjxCPmVJc1NldChpbnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Tb2Z0d2FyZUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhdGVJbXBsLmh0bWwjZUlzU2V0KGludCkiPjxCPmVJc1NldChpbnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TdGF0ZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNlSXNTZXQoaW50KSI+PEI+ZUlzU2V0KGludCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sI2VJc1NldChpbnQpIj48Qj5lSXNTZXQoaW50KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5UcmFuc2l0aW9uSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjZUlzU2V0KGludCkiPjxCPmVJc1NldChpbnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5XaGVlbFN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5BTUUiPjxCPmVOQU1FPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIHBhY2thZ2UgbmFtZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTkFNRSI+PEI+ZU5BTUU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBwYWNrYWdlIG5hbWUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTkFNRSI+PEI+ZU5BTUU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIHBhY2thZ2UgbmFtZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5BTUUiPjxCPmVOQU1FPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIHBhY2thZ2UgbmFtZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5BTUUiPjxCPmVOQU1FPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIHBhY2thZ2UgbmFtZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5BTUUiPjxCPmVOQU1FPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIHBhY2thZ2UgbmFtZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2VOQU1FIj48Qj5lTkFNRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBwYWNrYWdlIG5hbWUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNFTkdJTkVfU1lTVEVNIj48Qj5FTkdJTkVfU1lTVEVNPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+RW5naW5lIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjRU5HSU5FX1NZU1RFTSI+PEI+RU5HSU5FX1NZU1RFTTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+RW5naW5lIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5HSU5FX1NZU1RFTV9fQkFTRV9DTEFTUyI+PEI+RU5HSU5FX1NZU1RFTV9fQkFTRV9DTEFTUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNFTkdJTkVfU1lTVEVNX19HRUFSX1JBVElPTiI+PEI+RU5HSU5FX1NZU1RFTV9fR0VBUl9SQVRJT048L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+R2VhciByYXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0VOR0lORV9TWVNURU1fX0dFQVJfUkFUSU9OIj48Qj5FTkdJTkVfU1lTVEVNX19HRUFSX1JBVElPTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5HZWFyIHJhdGlvbjwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNFTkdJTkVfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+PEI+RU5HSU5FX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT048L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgT3JpZW50YXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0VOR0lORV9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj48Qj5FTkdJTkVfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBQb3NpdGlvbjwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5HSU5FX1NZU1RFTV9fTUFYX0FMTE9XRURfU1RFRVJJTkciPjxCPkVOR0lORV9TWVNURU1fX01BWF9BTExPV0VEX1NURUVSSU5HPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1heCBBbGxvd2VkIFN0ZWVyaW5nPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNFTkdJTkVfU1lTVEVNX19NQVhfQUxMT1dFRF9TVEVFUklORyI+PEI+RU5HSU5FX1NZU1RFTV9fTUFYX0FMTE9XRURfU1RFRVJJTkc8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TWF4IEFsbG93ZWQgU3RlZXJpbmc8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5HSU5FX1NZU1RFTV9fTUFYX0FMTE9XRURfVkVMT0NJVFkiPjxCPkVOR0lORV9TWVNURU1fX01BWF9BTExPV0VEX1ZFTE9DSVRZPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1heCBBbGxvd2VkIFZlbG9jaXR5PC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNFTkdJTkVfU1lTVEVNX19NQVhfQUxMT1dFRF9WRUxPQ0lUWSI+PEI+RU5HSU5FX1NZU1RFTV9fTUFYX0FMTE9XRURfVkVMT0NJVFk8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TWF4IEFsbG93ZWQgVmVsb2NpdHk8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5HSU5FX1NZU1RFTV9fTUFYX0JSRUFLSU5HX0ZPUkNFIj48Qj5FTkdJTkVfU1lTVEVNX19NQVhfQlJFQUtJTkdfRk9SQ0U8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TWF4IEJyZWFraW5nIEZvcmNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNFTkdJTkVfU1lTVEVNX19NQVhfQlJFQUtJTkdfRk9SQ0UiPjxCPkVOR0lORV9TWVNURU1fX01BWF9CUkVBS0lOR19GT1JDRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5NYXggQnJlYWtpbmcgRm9yY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5HSU5FX1NZU1RFTV9fTUFYX0VOR0lORV9GT1JDRSI+PEI+RU5HSU5FX1NZU1RFTV9fTUFYX0VOR0lORV9GT1JDRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5NYXggRW5naW5lIEZvcmNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNFTkdJTkVfU1lTVEVNX19NQVhfRU5HSU5FX0ZPUkNFIj48Qj5FTkdJTkVfU1lTVEVNX19NQVhfRU5HSU5FX0ZPUkNFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPk1heCBFbmdpbmUgRm9yY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5HSU5FX1NZU1RFTV9fVkVISUNMRV9UUkFDVElPTiI+PEI+RU5HSU5FX1NZU1RFTV9fVkVISUNMRV9UUkFDVElPTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5WZWhpY2xlIFRyYWN0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNFTkdJTkVfU1lTVEVNX19WRUhJQ0xFX1RSQUNUSU9OIj48Qj5FTkdJTkVfU1lTVEVNX19WRUhJQ0xFX1RSQUNUSU9OPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlZlaGljbGUgVHJhY3Rpb248L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5HSU5FX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj48Qj5FTkdJTkVfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+RW5naW5lIFN5c3RlbTwvZW0+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkVuZ2luZVN5c3RlbTwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjxERD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5FbmdpbmUgU3lzdGVtPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+RW5naW5lU3lzdGVtSW1wbDwvQj48L0E+IC0gQ2xhc3MgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjxERD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+RW5naW5lIFN5c3RlbTwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTlNfUFJFRklYIj48Qj5lTlNfUFJFRklYPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIHBhY2thZ2UgbmFtZXNwYWNlIG5hbWUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1BSRUZJWCI+PEI+ZU5TX1BSRUZJWDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIHBhY2thZ2UgbmFtZXNwYWNlIG5hbWUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTlNfUFJFRklYIj48Qj5lTlNfUFJFRklYPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBwYWNrYWdlIG5hbWVzcGFjZSBuYW1lCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTlNfUFJFRklYIj48Qj5lTlNfUFJFRklYPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIHBhY2thZ2UgbmFtZXNwYWNlIG5hbWUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VOU19QUkVGSVgiPjxCPmVOU19QUkVGSVg8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgcGFja2FnZSBuYW1lc3BhY2UgbmFtZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1BSRUZJWCI+PEI+ZU5TX1BSRUZJWDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBwYWNrYWdlIG5hbWVzcGFjZSBuYW1lCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZU5TX1BSRUZJWCI+PEI+ZU5TX1BSRUZJWDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBwYWNrYWdlIG5hbWVzcGFjZSBuYW1lCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTlNfVVJJIj48Qj5lTlNfVVJJPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIHBhY2thZ2UgbmFtZXNwYWNlIFVSSQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTlNfVVJJIj48Qj5lTlNfVVJJPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgcGFja2FnZSBuYW1lc3BhY2UgVVJJCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1VSSSI+PEI+ZU5TX1VSSTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgcGFja2FnZSBuYW1lc3BhY2UgVVJJCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTlNfVVJJIj48Qj5lTlNfVVJJPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIHBhY2thZ2UgbmFtZXNwYWNlIFVSSQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1VSSSI+PEI+ZU5TX1VSSTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBwYWNrYWdlIG5hbWVzcGFjZSBVUkkKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VOU19VUkkiPjxCPmVOU19VUkk8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgcGFja2FnZSBuYW1lc3BhY2UgVVJJCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZU5TX1VSSSI+PEI+ZU5TX1VSSTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBwYWNrYWdlIG5hbWVzcGFjZSBVUkkKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkVudmlyb25tZW50PC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkVudmlyb25tZW50PC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNFTlZJUk9OTUVOVCI+PEI+RU5WSVJPTk1FTlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW52aXJvbm1lbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkVudmlyb25tZW50PC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNFTlZJUk9OTUVOVCI+PEI+RU5WSVJPTk1FTlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbnZpcm9ubWVudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+RW52aXJvbm1lbnQ8L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0VOVklST05NRU5UX19CQVNFX0NMQVNTIj48Qj5FTlZJUk9OTUVOVF9fQkFTRV9DTEFTUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNFTlZJUk9OTUVOVF9GRUFUVVJFX0NPVU5UIj48Qj5FTlZJUk9OTUVOVF9GRUFUVVJFX0NPVU5UPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkVudmlyb25tZW50PC9lbT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW52aXJvbm1lbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+RW52aXJvbm1lbnRJbXBsPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PEREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5FbnZpcm9ubWVudDwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj48Qj5lU2V0KGludCwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWdlbnRJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmVTZXQoaW50LCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWxnb3JpdGhtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmVTZXQoaW50LCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1MaWJyYXJ5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFsZ29yaXRobUxpYnJhcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj48Qj5lU2V0KGludCwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkJsZW5kZXJNb3JzZUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+ZVNldChpbnQsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5DYW1lcmFTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db2xsZWN0aW9uSW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+ZVNldChpbnQsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbGxlY3Rpb25JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q29sbGVjdGlvbkltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbXBvc2VkRGF0YUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmVTZXQoaW50LCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db21wb3NlZERhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q29tcG9zZWREYXRhSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ3ljYWJUS0ltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmVTZXQoaW50LCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkN5Y2FiVEtJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmVTZXQoaW50LCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9EYXRhRmxvd1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+RGF0YUZsb3dQb3J0SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+ZVNldChpbnQsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5FbmdpbmVTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HUFNTeXN0ZW1JbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj48Qj5lU2V0KGludCwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR1BTU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkdQU1N5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+ZVNldChpbnQsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkxpZGFyU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT25Qb3J0SW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+ZVNldChpbnQsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5PblBvcnRJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsRGF0YUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmVTZXQoaW50LCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbERhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGh5c2ljYWxEYXRhSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj48Qj5lU2V0KGludCwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGh5c2ljYWxPYmplY3RJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+ZVNldChpbnQsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBsYXRmb3JtSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+ZVNldChpbnQsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UG9ydEltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1ByaW1pdGl2ZURhdGFJbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj48Qj5lU2V0KGludCwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUHJpbWl0aXZlRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QcmltaXRpdmVEYXRhSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj48Qj5lU2V0KGludCwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY01pZGRsZXdhcmVJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj48Qj5lU2V0KGludCwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj48Qj5lU2V0KGludCwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj48Qj5lU2V0KGludCwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlbnNvclN5c3RlbUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj48Qj5lU2V0KGludCwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2VydmljZVBvcnRJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj48Qj5lU2V0KGludCwgT2JqZWN0KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2ltdWxhdGVkU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNpbXVsYXRlZFN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+PEI+ZVNldChpbnQsIE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNvZnR3YXJlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmVTZXQoaW50LCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TdGF0ZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmVTZXQoaW50LCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmVTZXQoaW50LCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlRyYW5zaXRpb25JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPjxCPmVTZXQoaW50LCBPYmplY3QpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5XaGVlbFN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sI2VVbnNldChpbnQpIj48Qj5lVW5zZXQoaW50KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWdlbnRJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCNlVW5zZXQoaW50KSI+PEI+ZVVuc2V0KGludCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BbGdvcml0aG1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1MaWJyYXJ5SW1wbC5odG1sI2VVbnNldChpbnQpIj48Qj5lVW5zZXQoaW50KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BbGdvcml0aG1MaWJyYXJ5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sI2VVbnNldChpbnQpIj48Qj5lVW5zZXQoaW50KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkJsZW5kZXJNb3JzZUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sI2VVbnNldChpbnQpIj48Qj5lVW5zZXQoaW50KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkNhbWVyYVN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbGxlY3Rpb25JbXBsLmh0bWwjZVVuc2V0KGludCkiPjxCPmVVbnNldChpbnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db2xsZWN0aW9uSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkNvbGxlY3Rpb25JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db21wb3NlZERhdGFJbXBsLmh0bWwjZVVuc2V0KGludCkiPjxCPmVVbnNldChpbnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db21wb3NlZERhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q29tcG9zZWREYXRhSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ3ljYWJUS0ltcGwuaHRtbCNlVW5zZXQoaW50KSI+PEI+ZVVuc2V0KGludCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q3ljYWJUS0ltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRGF0YUZsb3dQb3J0SW1wbC5odG1sI2VVbnNldChpbnQpIj48Qj5lVW5zZXQoaW50KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRGF0YUZsb3dQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkRhdGFGbG93UG9ydEltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCNlVW5zZXQoaW50KSI+PEI+ZVVuc2V0KGludCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5FbmdpbmVTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HUFNTeXN0ZW1JbXBsLmh0bWwjZVVuc2V0KGludCkiPjxCPmVVbnNldChpbnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HUFNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+R1BTU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjZVVuc2V0KGludCkiPjxCPmVVbnNldChpbnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MaWRhclN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCNlVW5zZXQoaW50KSI+PEI+ZVVuc2V0KGludCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5PblBvcnRJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsRGF0YUltcGwuaHRtbCNlVW5zZXQoaW50KSI+PEI+ZVVuc2V0KGludCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QaHlzaWNhbERhdGFJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNlVW5zZXQoaW50KSI+PEI+ZVVuc2V0KGludCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBoeXNpY2FsT2JqZWN0SW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCNlVW5zZXQoaW50KSI+PEI+ZVVuc2V0KGludCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBsYXRmb3JtSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sI2VVbnNldChpbnQpIj48Qj5lVW5zZXQoaW50KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Qb3J0SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUHJpbWl0aXZlRGF0YUltcGwuaHRtbCNlVW5zZXQoaW50KSI+PEI+ZVVuc2V0KGludCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1ByaW1pdGl2ZURhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UHJpbWl0aXZlRGF0YUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNNaWRkbGV3YXJlSW1wbC5odG1sI2VVbnNldChpbnQpIj48Qj5lVW5zZXQoaW50KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY01pZGRsZXdhcmVJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjZVVuc2V0KGludCkiPjxCPmVVbnNldChpbnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90aWNTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCNlVW5zZXQoaW50KSI+PEI+ZVVuc2V0KGludCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI2VVbnNldChpbnQpIj48Qj5lVW5zZXQoaW50KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlbnNvclN5c3RlbUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmh0bWwjZVVuc2V0KGludCkiPjxCPmVVbnNldChpbnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZXJ2aWNlUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZXJ2aWNlUG9ydEltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NpbXVsYXRlZFN5c3RlbUltcGwuaHRtbCNlVW5zZXQoaW50KSI+PEI+ZVVuc2V0KGludCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NpbXVsYXRlZFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TaW11bGF0ZWRTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNlVW5zZXQoaW50KSI+PEI+ZVVuc2V0KGludCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNvZnR3YXJlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuaHRtbCNlVW5zZXQoaW50KSI+PEI+ZVVuc2V0KGludCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN0YXRlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2VVbnNldChpbnQpIj48Qj5lVW5zZXQoaW50KTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwjZVVuc2V0KGludCkiPjxCPmVVbnNldChpbnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlRyYW5zaXRpb25JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNlVW5zZXQoaW50KSI+PEI+ZVVuc2V0KGludCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPldoZWVsU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8L0RMPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtNC5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC02Lmh0bWwiPjxCPk5FWFQgTEVUVEVSPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uL2luZGV4Lmh0bWw/aW5kZXgtZmlsZXNpbmRleC01Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtNS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5CPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkM8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5FPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPko8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPks8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPkw8L0E+IDxBIEhSRUY9ImluZGV4LTEzLmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTE0Lmh0bWwiPk48L0E+IDxBIEhSRUY9ImluZGV4LTE1Lmh0bWwiPk88L0E+IDxBIEhSRUY9ImluZGV4LTE2Lmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTE3Lmh0bWwiPlE8L0E+IDxBIEhSRUY9ImluZGV4LTE4Lmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTE5Lmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTIwLmh0bWwiPlQ8L0E+IDxBIEhSRUY9ImluZGV4LTIxLmh0bWwiPlU8L0E+IDxBIEhSRUY9ImluZGV4LTIyLmh0bWwiPlY8L0E+IDxBIEhSRUY9ImluZGV4LTIzLmh0bWwiPlc8L0E+IDxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC02Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2luZGV4LWZpbGVzL2luZGV4LTYuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iNjQ1MGVhCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC02Lmh0bWwKQEAgLTAsMCArMSwxODAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMyBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK0YtSW5kZXgKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJGLUluZGV4IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC01Lmh0bWwiPjxCPlBSRVYgTEVUVEVSPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTcuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTYuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC02Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEEgSFJFRj0iaW5kZXgtMS5odG1sIj5BPC9BPiA8QSBIUkVGPSJpbmRleC0yLmh0bWwiPkI8L0E+IDxBIEhSRUY9ImluZGV4LTMuaHRtbCI+QzwvQT4gPEEgSFJFRj0iaW5kZXgtNC5odG1sIj5EPC9BPiA8QSBIUkVGPSJpbmRleC01Lmh0bWwiPkU8L0E+IDxBIEhSRUY9ImluZGV4LTYuaHRtbCI+RjwvQT4gPEEgSFJFRj0iaW5kZXgtNy5odG1sIj5HPC9BPiA8QSBIUkVGPSJpbmRleC04Lmh0bWwiPkg8L0E+IDxBIEhSRUY9ImluZGV4LTkuaHRtbCI+STwvQT4gPEEgSFJFRj0iaW5kZXgtMTAuaHRtbCI+SjwvQT4gPEEgSFJFRj0iaW5kZXgtMTEuaHRtbCI+SzwvQT4gPEEgSFJFRj0iaW5kZXgtMTIuaHRtbCI+TDwvQT4gPEEgSFJFRj0iaW5kZXgtMTMuaHRtbCI+TTwvQT4gPEEgSFJFRj0iaW5kZXgtMTQuaHRtbCI+TjwvQT4gPEEgSFJFRj0iaW5kZXgtMTUuaHRtbCI+TzwvQT4gPEEgSFJFRj0iaW5kZXgtMTYuaHRtbCI+UDwvQT4gPEEgSFJFRj0iaW5kZXgtMTcuaHRtbCI+UTwvQT4gPEEgSFJFRj0iaW5kZXgtMTguaHRtbCI+UjwvQT4gPEEgSFJFRj0iaW5kZXgtMTkuaHRtbCI+UzwvQT4gPEEgSFJFRj0iaW5kZXgtMjAuaHRtbCI+VDwvQT4gPEEgSFJFRj0iaW5kZXgtMjEuaHRtbCI+VTwvQT4gPEEgSFJFRj0iaW5kZXgtMjIuaHRtbCI+VjwvQT4gPEEgSFJFRj0iaW5kZXgtMjMuaHRtbCI+VzwvQT4gPEhSPgorPEEgTkFNRT0iX0ZfIj48IS0tIC0tPjwvQT48SDI+Cis8Qj5GPC9CPjwvSDI+Cis8REw+Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNGTE9BVDMyIj48Qj5GTE9BVDMyPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5GbG9hdDMyPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjRkxPQVQzMiI+PEI+RkxPQVQzMjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5GbG9hdDMyPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjRkxPQVQzMl9NVUxUSV9BUlJBWSI+PEI+RkxPQVQzMl9NVUxUSV9BUlJBWTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+RmxvYXQzMiBNdWx0aSBBcnJheTwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI0ZMT0FUMzJfTVVMVElfQVJSQVkiPjxCPkZMT0FUMzJfTVVMVElfQVJSQVk8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+RmxvYXQzMiBNdWx0aSBBcnJheTwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0ZMT0FUNjQiPjxCPkZMT0FUNjQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkZsb2F0NjQ8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNGTE9BVDY0Ij48Qj5GTE9BVDY0PC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkZsb2F0NjQ8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNGTE9BVDY0X01VTFRJX0FSUkFZIj48Qj5GTE9BVDY0X01VTFRJX0FSUkFZPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5GbG9hdDY0IE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjRkxPQVQ2NF9NVUxUSV9BUlJBWSI+PEI+RkxPQVQ2NF9NVUxUSV9BUlJBWTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5GbG9hdDY0IE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Rmxvb3I8L0I+PC9BPiAtIEludGVyZmFjZSBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48REQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Rmxvb3I8L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0ZMT09SIj48Qj5GTE9PUjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9GbG9vckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+Rmxvb3I8L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0ZMT09SIj48Qj5GTE9PUjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Zsb29ySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5GbG9vcjwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRkxPT1JfX0JBU0VfQ0xBU1MiPjxCPkZMT09SX19CQVNFX0NMQVNTPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0ZMT09SX19FVkVMT1ZFU19JTiI+PEI+RkxPT1JfX0VWRUxPVkVTX0lOPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkV2ZWxvdmVzIEluPC9iPjwvZW0+JyByZWZlcmVuY2UgbGlzdAorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0ZMT09SX19IQVNfU1VSRkFDRSI+PEI+RkxPT1JfX0hBU19TVVJGQUNFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkhhcyBTdXJmYWNlPC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNGTE9PUl9GRUFUVVJFX0NPVU5UIj48Qj5GTE9PUl9GRUFUVVJFX0NPVU5UPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkZsb29yPC9lbT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRmxvb3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+Rmxvb3JJbXBsPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PEREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5GbG9vcjwvYj48L2VtPic8L0RMPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtNS5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC03Lmh0bWwiPjxCPk5FWFQgTEVUVEVSPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uL2luZGV4Lmh0bWw/aW5kZXgtZmlsZXNpbmRleC02Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtNi5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5CPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkM8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5FPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPko8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPks8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPkw8L0E+IDxBIEhSRUY9ImluZGV4LTEzLmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTE0Lmh0bWwiPk48L0E+IDxBIEhSRUY9ImluZGV4LTE1Lmh0bWwiPk88L0E+IDxBIEhSRUY9ImluZGV4LTE2Lmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTE3Lmh0bWwiPlE8L0E+IDxBIEhSRUY9ImluZGV4LTE4Lmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTE5Lmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTIwLmh0bWwiPlQ8L0E+IDxBIEhSRUY9ImluZGV4LTIxLmh0bWwiPlU8L0E+IDxBIEhSRUY9ImluZGV4LTIyLmh0bWwiPlY8L0E+IDxBIEhSRUY9ImluZGV4LTIzLmh0bWwiPlc8L0E+IDxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC03Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2luZGV4LWZpbGVzL2luZGV4LTcuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZTc2MWE1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC03Lmh0bWwKQEAgLTAsMCArMSwyMzk5IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzMgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitHLUluZGV4Cis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iRy1JbmRleCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtNi5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC04Lmh0bWwiPjxCPk5FWFQgTEVUVEVSPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uL2luZGV4Lmh0bWw/aW5kZXgtZmlsZXNpbmRleC03Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtNy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5CPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkM8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5FPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPko8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPks8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPkw8L0E+IDxBIEhSRUY9ImluZGV4LTEzLmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTE0Lmh0bWwiPk48L0E+IDxBIEhSRUY9ImluZGV4LTE1Lmh0bWwiPk88L0E+IDxBIEhSRUY9ImluZGV4LTE2Lmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTE3Lmh0bWwiPlE8L0E+IDxBIEhSRUY9ImluZGV4LTE4Lmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTE5Lmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTIwLmh0bWwiPlQ8L0E+IDxBIEhSRUY9ImluZGV4LTIxLmh0bWwiPlU8L0E+IDxBIEhSRUY9ImluZGV4LTIyLmh0bWwiPlY8L0E+IDxBIEhSRUY9ImluZGV4LTIzLmh0bWwiPlc8L0E+IDxIUj4KKzxBIE5BTUU9Il9HXyI+PCEtLSAtLT48L0E+PEgyPgorPEI+RzwvQj48L0gyPgorPERMPgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPjxCPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPiAtIEludGVyZmFjZSBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzPC9BPjxERD5UaGUgPGI+RmFjdG9yeTwvYj4gZm9yIHRoZSBtb2RlbC48RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPjxCPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbDwvQT48REQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPkZhY3Rvcnk8L2I+PERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsKCkiPjxCPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsKCk8L0I+PC9BPiAtIAorQ29uc3RydWN0b3IgZm9yIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+Q3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgZmFjdG9yeQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPjxCPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPiAtIEludGVyZmFjZSBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzPC9BPjxERD5UaGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoZSBtb2RlbC48RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+PEI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXM8L0E+PEREPkRlZmluZXMgbGl0ZXJhbHMgZm9yIHRoZSBtZXRhIG9iamVjdHMgdGhhdCByZXByZXNlbnQKKyAKKyBlYWNoIGNsYXNzLAorIGVhY2ggZmVhdHVyZSBvZiBlYWNoIGNsYXNzLAorIGVhY2ggZW51bSwKKyBhbmQgZWFjaCBkYXRhIHR5cGUKKyAKKyA8ITxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+PEI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGw8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsPC9BPjxERD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgPGI+UGFja2FnZTwvYj48RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sI2dldChqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Z2V0KFN0cmluZyk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPgorPEREPlJldHVybnMgdGhlICc8ZW0+PGI+RGF0YSBGbG93IERpcmVjdGlvbiBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBsaXRlcmFsIHZhbHVlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sI2dldChpbnQpIj48Qj5nZXQoaW50KTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0E+Cis8REQ+UmV0dXJucyB0aGUgJzxlbT48Yj5EYXRhIEZsb3cgRGlyZWN0aW9uIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGludGVnZXIgdmFsdWUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwjZ2V0KGphdmEubGFuZy5TdHJpbmcpIj48Qj5nZXQoU3RyaW5nKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0E+Cis8REQ+UmV0dXJucyB0aGUgJzxlbT48Yj5Sb2JvdGljIE1pZGRsZXdhcmUgS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbGl0ZXJhbCB2YWx1ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCNnZXQoaW50KSI+PEI+Z2V0KGludCk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPgorPEREPlJldHVybnMgdGhlICc8ZW0+PGI+Um9ib3RpYyBNaWRkbGV3YXJlIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGludGVnZXIgdmFsdWUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwjZ2V0KGphdmEubGFuZy5TdHJpbmcpIj48Qj5nZXQoU3RyaW5nKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdEtpbmQ8L0E+Cis8REQ+UmV0dXJucyB0aGUgJzxlbT48Yj5Sb2JvdCBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBsaXRlcmFsIHZhbHVlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sI2dldChpbnQpIj48Qj5nZXQoaW50KTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdEtpbmQ8L0E+Cis8REQ+UmV0dXJucyB0aGUgJzxlbT48Yj5Sb2JvdCBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBpbnRlZ2VyIHZhbHVlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sI2dldChqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Z2V0KFN0cmluZyk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZUZsb3dLaW5kPC9BPgorPEREPlJldHVybnMgdGhlICc8ZW0+PGI+U2VydmljZSBGbG93IEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGxpdGVyYWwgdmFsdWUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwjZ2V0KGludCkiPjxCPmdldChpbnQpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT4KKzxERD5SZXR1cm5zIHRoZSAnPGVtPjxiPlNlcnZpY2UgRmxvdyBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBpbnRlZ2VyIHZhbHVlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwjZ2V0KGphdmEubGFuZy5TdHJpbmcpIj48Qj5nZXQoU3RyaW5nKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPgorPEREPlJldHVybnMgdGhlICc8ZW0+PGI+U2hhZGU8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGxpdGVyYWwgdmFsdWUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCNnZXQoaW50KSI+PEI+Z2V0KGludCk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT4KKzxERD5SZXR1cm5zIHRoZSAnPGVtPjxiPlNoYWRlPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBpbnRlZ2VyIHZhbHVlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCNnZXQoamF2YS5sYW5nLlN0cmluZykiPjxCPmdldChTdHJpbmcpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeW5jaHJvbml6YXRpb25LaW5kPC9BPgorPEREPlJldHVybnMgdGhlICc8ZW0+PGI+U3luY2hyb25pemF0aW9uIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGxpdGVyYWwgdmFsdWUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sI2dldChpbnQpIj48Qj5nZXQoaW50KTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT4KKzxERD5SZXR1cm5zIHRoZSAnPGVtPjxiPlN5bmNocm9uaXphdGlvbiBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBpbnRlZ2VyIHZhbHVlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCNnZXQoamF2YS5sYW5nLlN0cmluZykiPjxCPmdldChTdHJpbmcpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5VR1ZLaW5kPC9BPgorPEREPlJldHVybnMgdGhlICc8ZW0+PGI+VUdWIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGxpdGVyYWwgdmFsdWUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sI2dldChpbnQpIj48Qj5nZXQoaW50KTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VUdWS2luZDwvQT4KKzxERD5SZXR1cm5zIHRoZSAnPGVtPjxiPlVHViBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBpbnRlZ2VyIHZhbHVlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjZ2V0KGphdmEubGFuZy5TdHJpbmcpIj48Qj5nZXQoU3RyaW5nKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPgorPEREPlJldHVybnMgdGhlICc8ZW0+PGI+VW5pdCBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBsaXRlcmFsIHZhbHVlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjZ2V0KGludCkiPjxCPmdldChpbnQpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VW5pdEtpbmQ8L0E+Cis8REQ+UmV0dXJucyB0aGUgJzxlbT48Yj5Vbml0IEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGludGVnZXIgdmFsdWUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjZ2V0X3ZpZXdwb3J0X3NoYWRlKCkiPjxCPmdldF92aWV3cG9ydF9zaGFkZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJsZW5kZXJNb3JzZTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj52aWV3cG9ydCBzaGFkZTwvYj48L2VtPicgYXR0cmlidXRlLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCNnZXRfdmlld3BvcnRfc2hhZGUoKSI+PEI+Z2V0X3ZpZXdwb3J0X3NoYWRlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5CbGVuZGVyTW9yc2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkoKSI+PEI+Z2V0QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIGZhY3RvcnkgdGhhdCBjcmVhdGVzIHRoZSBpbnN0YW5jZXMgb2YgdGhlIG1vZGVsCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRBY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeSgpIj48Qj5nZXRBY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwjZ2V0QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UoKSI+PEI+Z2V0QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5PC9BPgorPEREPlJldHVybnMgdGhlIHBhY2thZ2Ugc3VwcG9ydGVkIGJ5IHRoaXMgZmFjdG9yeQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjZ2V0QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UoKSI+PEI+Z2V0QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbCI+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRBY3R1YXRvclN5c3RlbSgpIj48Qj5nZXRBY3R1YXRvclN5c3RlbSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEFjdHVhdG9yU3lzdGVtKCkiPjxCPmdldEFjdHVhdG9yU3lzdGVtKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkFjdHVhdG9yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0QWdlbnQoKSI+PEI+Z2V0QWdlbnQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEFnZW50KCkiPjxCPmdldEFnZW50KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkFnZW50PC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRBZ2VudF9Nb3Zlc092ZXIoKSI+PEI+Z2V0QWdlbnRfTW92ZXNPdmVyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBZ2VudF9Nb3Zlc092ZXIoKSI+PEI+Z2V0QWdlbnRfTW92ZXNPdmVyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSBsaXN0ICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCNnZXRNb3Zlc092ZXIoKSI+PENPREU+PGVtPk1vdmVzIE92ZXI8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEFsZ29yaXRobSgpIj48Qj5nZXRBbGdvcml0aG0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBbGdvcml0aG0oKSI+PEI+Z2V0QWxnb3JpdGhtKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5BbGdvcml0aG08L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEFsZ29yaXRobV9CYXNlX09wZXJhdGlvbigpIj48Qj5nZXRBbGdvcml0aG1fQmFzZV9PcGVyYXRpb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBbGdvcml0aG1fQmFzZV9PcGVyYXRpb24oKSI+PEI+Z2V0QWxnb3JpdGhtX0Jhc2VfT3BlcmF0aW9uKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI2dldEJhc2VfT3BlcmF0aW9uKCkiPjxDT0RFPjxlbT5CYXNlIE9wZXJhdGlvbjwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0QWxnb3JpdGhtX0V4dEZ1bmN0aW9uTmFtZSgpIj48Qj5nZXRBbGdvcml0aG1fRXh0RnVuY3Rpb25OYW1lKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QWxnb3JpdGhtX0V4dEZ1bmN0aW9uTmFtZSgpIj48Qj5nZXRBbGdvcml0aG1fRXh0RnVuY3Rpb25OYW1lKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI2dldEV4dEZ1bmN0aW9uTmFtZSgpIj48Q09ERT48ZW0+RXh0IEZ1bmN0aW9uIE5hbWU8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEFsZ29yaXRobV9Jc0V4dGVybmFsKCkiPjxCPmdldEFsZ29yaXRobV9Jc0V4dGVybmFsKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QWxnb3JpdGhtX0lzRXh0ZXJuYWwoKSI+PEI+Z2V0QWxnb3JpdGhtX0lzRXh0ZXJuYWwoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwjaXNJc0V4dGVybmFsKCkiPjxDT0RFPjxlbT5JcyBFeHRlcm5hbDwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0QWxnb3JpdGhtX1BhdGgoKSI+PEI+Z2V0QWxnb3JpdGhtX1BhdGgoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBbGdvcml0aG1fUGF0aCgpIj48Qj5nZXRBbGdvcml0aG1fUGF0aCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNnZXRQYXRoKCkiPjxDT0RFPjxlbT5QYXRoPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRBbGdvcml0aG1MaWJyYXJ5KCkiPjxCPmdldEFsZ29yaXRobUxpYnJhcnkoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBbGdvcml0aG1MaWJyYXJ5KCkiPjxCPmdldEFsZ29yaXRobUxpYnJhcnkoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5BbGdvcml0aG0gTGlicmFyeTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0QWxnb3JpdGhtTGlicmFyeV9CYXNlX0NsYXNzKCkiPjxCPmdldEFsZ29yaXRobUxpYnJhcnlfQmFzZV9DbGFzcygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEFsZ29yaXRobUxpYnJhcnlfQmFzZV9DbGFzcygpIj48Qj5nZXRBbGdvcml0aG1MaWJyYXJ5X0Jhc2VfQ2xhc3MoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+PENPREU+PGVtPkJhc2UgQ2xhc3M8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEFsZ29yaXRobUxpYnJhcnlfUGF0aCgpIj48Qj5nZXRBbGdvcml0aG1MaWJyYXJ5X1BhdGgoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBbGdvcml0aG1MaWJyYXJ5X1BhdGgoKSI+PEI+Z2V0QWxnb3JpdGhtTGlicmFyeV9QYXRoKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCNnZXRQYXRoKCkiPjxDT0RFPjxlbT5QYXRoPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0QWxwaGFfdSgpIj48Qj5nZXRBbHBoYV91KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q2FtZXJhU3lzdGVtPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkFscGhhIHU8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCNnZXRBbHBoYV91KCkiPjxCPmdldEFscGhhX3UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkNhbWVyYVN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRBbHBoYV92KCkiPjxCPmdldEFscGhhX3YoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QWxwaGEgdjwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sI2dldEFscGhhX3YoKSI+PEI+Z2V0QWxwaGFfdigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q2FtZXJhU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjZ2V0QW5nbGVfbWF4KCkiPjxCPmdldEFuZ2xlX21heCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MaWRhclN5c3RlbUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0QW5nbGVfbWF4KCkiPjxCPmdldEFuZ2xlX21heCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGlkYXJTeXN0ZW08L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QW5nbGUgbWF4PC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCNnZXRBbmdsZV9taW4oKSI+PEI+Z2V0QW5nbGVfbWluKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkxpZGFyU3lzdGVtSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRBbmdsZV9taW4oKSI+PEI+Z2V0QW5nbGVfbWluKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5BbmdsZSBtaW48L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5odG1sI2dldEFyZ3VtZW50cygpIj48Qj5nZXRBcmd1bWVudHMoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhdGVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3RhdGVJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCNnZXRBcmd1bWVudHMoKSI+PEI+Z2V0QXJndW1lbnRzKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdGF0ZTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Bcmd1bWVudHM8L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwjZ2V0QmFzZV9DbGFzcygpIj48Qj5nZXRCYXNlX0NsYXNzKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobUxpYnJhcnk8L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCNnZXRCYXNlX0NsYXNzKCkiPjxCPmdldEJhc2VfQ2xhc3MoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BbGdvcml0aG1MaWJyYXJ5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2dldEJhc2VfQ2xhc3MoKSI+PEI+Z2V0QmFzZV9DbGFzcygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+PEI+Z2V0QmFzZV9DbGFzcygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sI2dldEJhc2VfRGF0YVR5cGUoKSI+PEI+Z2V0QmFzZV9EYXRhVHlwZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Db2xsZWN0aW9uPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkJhc2UgRGF0YSBUeXBlPC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcG9zZWREYXRhLmh0bWwjZ2V0QmFzZV9EYXRhVHlwZSgpIj48Qj5nZXRCYXNlX0RhdGFUeXBlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbXBvc2VkRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q29tcG9zZWREYXRhPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkJhc2UgRGF0YSBUeXBlPC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db2xsZWN0aW9uSW1wbC5odG1sI2dldEJhc2VfRGF0YVR5cGUoKSI+PEI+Z2V0QmFzZV9EYXRhVHlwZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db2xsZWN0aW9uSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkNvbGxlY3Rpb25JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db21wb3NlZERhdGFJbXBsLmh0bWwjZ2V0QmFzZV9EYXRhVHlwZSgpIj48Qj5nZXRCYXNlX0RhdGFUeXBlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbXBvc2VkRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Db21wb3NlZERhdGFJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbERhdGFJbXBsLmh0bWwjZ2V0QmFzZV9EYXRhVHlwZSgpIj48Qj5nZXRCYXNlX0RhdGFUeXBlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QaHlzaWNhbERhdGFJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwjZ2V0QmFzZV9EYXRhVHlwZSgpIj48Qj5nZXRCYXNlX0RhdGFUeXBlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxEYXRhPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkJhc2UgRGF0YSBUeXBlPC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCNnZXRCYXNlX05vZGUoKSI+PEI+Z2V0QmFzZV9Ob2RlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBsYXRmb3JtSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCNnZXRCYXNlX05vZGUoKSI+PEI+Z2V0QmFzZV9Ob2RlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGF0Zm9ybTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CYXNlIE5vZGU8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNnZXRCYXNlX09wZXJhdGlvbigpIj48Qj5nZXRCYXNlX09wZXJhdGlvbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CYXNlIE9wZXJhdGlvbjwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sI2dldEJhc2VfT3BlcmF0aW9uKCkiPjxCPmdldEJhc2VfT3BlcmF0aW9uKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BbGdvcml0aG1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PblBvcnRJbXBsLmh0bWwjZ2V0QmFzZV9QYXJhbWV0ZXIoKSI+PEI+Z2V0QmFzZV9QYXJhbWV0ZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT25Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPk9uUG9ydEltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sI2dldEJhc2VfUGFyYW1ldGVyKCkiPjxCPmdldEJhc2VfUGFyYW1ldGVyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T25Qb3J0PC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkJhc2UgUGFyYW1ldGVyPC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sI2dldEJhc2VfUG9ydCgpIj48Qj5nZXRCYXNlX1BvcnQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Qb3J0SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCNnZXRCYXNlX1BvcnQoKSI+PEI+Z2V0QmFzZV9Qb3J0KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBvcnQ8L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QmFzZSBQb3J0PC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QcmltaXRpdmVEYXRhSW1wbC5odG1sI2dldEJhc2VfUHJpbWl0aXZlVHlwZSgpIj48Qj5nZXRCYXNlX1ByaW1pdGl2ZVR5cGUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUHJpbWl0aXZlRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QcmltaXRpdmVEYXRhSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCNnZXRCYXNlX1ByaW1pdGl2ZVR5cGUoKSI+PEI+Z2V0QmFzZV9QcmltaXRpdmVUeXBlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlByaW1pdGl2ZURhdGE8L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QmFzZSBQcmltaXRpdmUgVHlwZTwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2ltdWxhdGVkU3lzdGVtSW1wbC5odG1sI2dldEJhc2VfUHJvcGVydHkoKSI+PEI+Z2V0QmFzZV9Qcm9wZXJ0eSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2ltdWxhdGVkU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sI2dldEJhc2VfUHJvcGVydHkoKSI+PEI+Z2V0QmFzZV9Qcm9wZXJ0eSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNpbXVsYXRlZFN5c3RlbTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CYXNlIFByb3BlcnR5PC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuaHRtbCNnZXRCYXNlX1N0YXRlKCkiPjxCPmdldEJhc2VfU3RhdGUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhdGVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3RhdGVJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCNnZXRCYXNlX1N0YXRlKCkiPjxCPmdldEJhc2VfU3RhdGUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YXRlPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkJhc2UgU3RhdGU8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwjZ2V0QmFzZV9UcmFuc2l0aW9uKCkiPjxCPmdldEJhc2VfVHJhbnNpdGlvbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlRyYW5zaXRpb25JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sI2dldEJhc2VfVHJhbnNpdGlvbigpIj48Qj5nZXRCYXNlX1RyYW5zaXRpb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VHJhbnNpdGlvbjwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CYXNlIFRyYW5zaXRpb248L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEJsZW5kZXJNb3JzZSgpIj48Qj5nZXRCbGVuZGVyTW9yc2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEJsZW5kZXJNb3JzZSgpIj48Qj5nZXRCbGVuZGVyTW9yc2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkJsZW5kZXIgTW9yc2U8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEJsZW5kZXJNb3JzZV9fdmlld3BvcnRfc2hhZGUoKSI+PEI+Z2V0QmxlbmRlck1vcnNlX192aWV3cG9ydF9zaGFkZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QmxlbmRlck1vcnNlX192aWV3cG9ydF9zaGFkZSgpIj48Qj5nZXRCbGVuZGVyTW9yc2VfX3ZpZXdwb3J0X3NoYWRlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sI2dldF92aWV3cG9ydF9zaGFkZSgpIj48Q09ERT48ZW0+dmlld3BvcnQgc2hhZGU8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEJsZW5kZXJNb3JzZV9EZWJ1Z0Rpc3BsYXkoKSI+PEI+Z2V0QmxlbmRlck1vcnNlX0RlYnVnRGlzcGxheSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QmxlbmRlck1vcnNlX0RlYnVnRGlzcGxheSgpIj48Qj5nZXRCbGVuZGVyTW9yc2VfRGVidWdEaXNwbGF5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sI2lzRGVidWdEaXNwbGF5KCkiPjxDT0RFPjxlbT5EZWJ1ZyBEaXNwbGF5PC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRCbGVuZGVyTW9yc2VfRGVidWdNb2RlKCkiPjxCPmdldEJsZW5kZXJNb3JzZV9EZWJ1Z01vZGUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEJsZW5kZXJNb3JzZV9EZWJ1Z01vZGUoKSI+PEI+Z2V0QmxlbmRlck1vcnNlX0RlYnVnTW9kZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNpc0RlYnVnTW9kZSgpIj48Q09ERT48ZW0+RGVidWcgTW9kZTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0QmxlbmRlck1vcnNlX0dyYXZpdHkoKSI+PEI+Z2V0QmxlbmRlck1vcnNlX0dyYXZpdHkoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEJsZW5kZXJNb3JzZV9HcmF2aXR5KCkiPjxCPmdldEJsZW5kZXJNb3JzZV9HcmF2aXR5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sI2dldEdyYXZpdHkoKSI+PENPREU+PGVtPkdyYXZpdHk8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0Qm9vbCgpIj48Qj5nZXRCb29sKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRCb29sKCkiPjxCPmdldEJvb2woKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Cb29sPC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCNnZXRCdWZmZXJTaXplKCkiPjxCPmdldEJ1ZmZlclNpemUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd1BvcnQ8L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QnVmZmVyIFNpemU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9EYXRhRmxvd1BvcnRJbXBsLmh0bWwjZ2V0QnVmZmVyU2l6ZSgpIj48Qj5nZXRCdWZmZXJTaXplKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5EYXRhRmxvd1BvcnRJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRCdWlsZGluZygpIj48Qj5nZXRCdWlsZGluZygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QnVpbGRpbmcoKSI+PEI+Z2V0QnVpbGRpbmcoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0J1aWxkaW5nLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+QnVpbGRpbmc8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCNnZXRCeU5hbWUoamF2YS5sYW5nLlN0cmluZykiPjxCPmdldEJ5TmFtZShTdHJpbmcpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93RGlyZWN0aW9uS2luZDwvQT4KKzxERD5SZXR1cm5zIHRoZSAnPGVtPjxiPkRhdGEgRmxvdyBEaXJlY3Rpb24gS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCNnZXRCeU5hbWUoamF2YS5sYW5nLlN0cmluZykiPjxCPmdldEJ5TmFtZShTdHJpbmcpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT4KKzxERD5SZXR1cm5zIHRoZSAnPGVtPjxiPlJvYm90aWMgTWlkZGxld2FyZSBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sI2dldEJ5TmFtZShqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Z2V0QnlOYW1lKFN0cmluZyk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPgorPEREPlJldHVybnMgdGhlICc8ZW0+PGI+Um9ib3QgS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCNnZXRCeU5hbWUoamF2YS5sYW5nLlN0cmluZykiPjxCPmdldEJ5TmFtZShTdHJpbmcpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT4KKzxERD5SZXR1cm5zIHRoZSAnPGVtPjxiPlNlcnZpY2UgRmxvdyBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwjZ2V0QnlOYW1lKGphdmEubGFuZy5TdHJpbmcpIj48Qj5nZXRCeU5hbWUoU3RyaW5nKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPgorPEREPlJldHVybnMgdGhlICc8ZW0+PGI+U2hhZGU8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sI2dldEJ5TmFtZShqYXZhLmxhbmcuU3RyaW5nKSI+PEI+Z2V0QnlOYW1lKFN0cmluZyk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5bmNocm9uaXphdGlvbktpbmQ8L0E+Cis8REQ+UmV0dXJucyB0aGUgJzxlbT48Yj5TeW5jaHJvbml6YXRpb24gS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwjZ2V0QnlOYW1lKGphdmEubGFuZy5TdHJpbmcpIj48Qj5nZXRCeU5hbWUoU3RyaW5nKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VUdWS2luZDwvQT4KKzxERD5SZXR1cm5zIHRoZSAnPGVtPjxiPlVHViBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjZ2V0QnlOYW1lKGphdmEubGFuZy5TdHJpbmcpIj48Qj5nZXRCeU5hbWUoU3RyaW5nKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPgorPEREPlJldHVybnMgdGhlICc8ZW0+PGI+VW5pdCBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRCeXRlKCkiPjxCPmdldEJ5dGUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEJ5dGUoKSI+PEI+Z2V0Qnl0ZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkJ5dGU8L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRCeXRlTXVsdGlBcnJheSgpIj48Qj5nZXRCeXRlTXVsdGlBcnJheSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0Qnl0ZU11bHRpQXJyYXkoKSI+PEI+Z2V0Qnl0ZU11bHRpQXJyYXkoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5CeXRlIE11bHRpIEFycmF5PC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0Q2FtZXJhSW5mbygpIj48Qj5nZXRDYW1lcmFJbmZvKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRDYW1lcmFJbmZvKCkiPjxCPmdldENhbWVyYUluZm8oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5DYW1lcmEgSW5mbzwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRDYW1lcmFTeXN0ZW0oKSI+PEI+Z2V0Q2FtZXJhU3lzdGVtKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q2FtZXJhU3lzdGVtKCkiPjxCPmdldENhbWVyYVN5c3RlbSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Q2FtZXJhIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Q2FtZXJhU3lzdGVtX0FscGhhX3UoKSI+PEI+Z2V0Q2FtZXJhU3lzdGVtX0FscGhhX3UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDYW1lcmFTeXN0ZW1fQWxwaGFfdSgpIj48Qj5nZXRDYW1lcmFTeXN0ZW1fQWxwaGFfdSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRBbHBoYV91KCkiPjxDT0RFPjxlbT5BbHBoYSB1PC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRDYW1lcmFTeXN0ZW1fQWxwaGFfdigpIj48Qj5nZXRDYW1lcmFTeXN0ZW1fQWxwaGFfdigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENhbWVyYVN5c3RlbV9BbHBoYV92KCkiPjxCPmdldENhbWVyYVN5c3RlbV9BbHBoYV92KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldEFscGhhX3YoKSI+PENPREU+PGVtPkFscGhhIHY8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldENhbWVyYVN5c3RlbV9Db2xvcl9mb3JtYXQoKSI+PEI+Z2V0Q2FtZXJhU3lzdGVtX0NvbG9yX2Zvcm1hdCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q2FtZXJhU3lzdGVtX0NvbG9yX2Zvcm1hdCgpIj48Qj5nZXRDYW1lcmFTeXN0ZW1fQ29sb3JfZm9ybWF0KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldENvbG9yX2Zvcm1hdCgpIj48Q09ERT48ZW0+Q29sb3IgZm9ybWF0PC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRDYW1lcmFTeXN0ZW1fSGVpZ2h0KCkiPjxCPmdldENhbWVyYVN5c3RlbV9IZWlnaHQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDYW1lcmFTeXN0ZW1fSGVpZ2h0KCkiPjxCPmdldENhbWVyYVN5c3RlbV9IZWlnaHQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0SGVpZ2h0KCkiPjxDT0RFPjxlbT5IZWlnaHQ8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldENhbWVyYVN5c3RlbV9VMCgpIj48Qj5nZXRDYW1lcmFTeXN0ZW1fVTAoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDYW1lcmFTeXN0ZW1fVTAoKSI+PEI+Z2V0Q2FtZXJhU3lzdGVtX1UwKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldFUwKCkiPjxDT0RFPjxlbT5VMDwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Q2FtZXJhU3lzdGVtX1YwKCkiPjxCPmdldENhbWVyYVN5c3RlbV9WMCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENhbWVyYVN5c3RlbV9WMCgpIj48Qj5nZXRDYW1lcmFTeXN0ZW1fVjAoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0VjAoKSI+PENPREU+PGVtPlYwPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRDYW1lcmFTeXN0ZW1fV2lkdGgoKSI+PEI+Z2V0Q2FtZXJhU3lzdGVtX1dpZHRoKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q2FtZXJhU3lzdGVtX1dpZHRoKCkiPjxCPmdldENhbWVyYVN5c3RlbV9XaWR0aCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRXaWR0aCgpIj48Q09ERT48ZW0+V2lkdGg8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0Q2hhbm5lbEZsb2F0MzIoKSI+PEI+Z2V0Q2hhbm5lbEZsb2F0MzIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldENoYW5uZWxGbG9hdDMyKCkiPjxCPmdldENoYW5uZWxGbG9hdDMyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+Q2hhbm5lbCBGbG9hdDMyPC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0Q2hhcigpIj48Qj5nZXRDaGFyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRDaGFyKCkiPjxCPmdldENoYXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5DaGFyPC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldENvbGxlY3Rpb24oKSI+PEI+Z2V0Q29sbGVjdGlvbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENvbGxlY3Rpb24oKSI+PEI+Z2V0Q29sbGVjdGlvbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkNvbGxlY3Rpb248L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldENvbGxlY3Rpb25fQmFzZV9EYXRhVHlwZSgpIj48Qj5nZXRDb2xsZWN0aW9uX0Jhc2VfRGF0YVR5cGUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDb2xsZWN0aW9uX0Jhc2VfRGF0YVR5cGUoKSI+PEI+Z2V0Q29sbGVjdGlvbl9CYXNlX0RhdGFUeXBlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbGxlY3Rpb24uaHRtbCNnZXRCYXNlX0RhdGFUeXBlKCkiPjxDT0RFPjxlbT5CYXNlIERhdGEgVHlwZTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldENvbG9yX2Zvcm1hdCgpIj48Qj5nZXRDb2xvcl9mb3JtYXQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+Q29sb3IgZm9ybWF0PC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwjZ2V0Q29sb3JfZm9ybWF0KCkiPjxCPmdldENvbG9yX2Zvcm1hdCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q2FtZXJhU3lzdGVtSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldENvbG9yUkdCQSgpIj48Qj5nZXRDb2xvclJHQkEoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldENvbG9yUkdCQSgpIj48Qj5nZXRDb2xvclJHQkEoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Db2xvciBSR0JBPC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldENvbXBvc2VkRGF0YSgpIj48Qj5nZXRDb21wb3NlZERhdGEoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDb21wb3NlZERhdGEoKSI+PEI+Z2V0Q29tcG9zZWREYXRhKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Db21wb3NlZCBEYXRhPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRDb21wb3NlZERhdGFfQmFzZV9EYXRhVHlwZSgpIj48Qj5nZXRDb21wb3NlZERhdGFfQmFzZV9EYXRhVHlwZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENvbXBvc2VkRGF0YV9CYXNlX0RhdGFUeXBlKCkiPjxCPmdldENvbXBvc2VkRGF0YV9CYXNlX0RhdGFUeXBlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbXBvc2VkRGF0YS5odG1sI2dldEJhc2VfRGF0YVR5cGUoKSI+PENPREU+PGVtPkJhc2UgRGF0YSBUeXBlPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldENvbXByZXNzZWRJbWFnZSgpIj48Qj5nZXRDb21wcmVzc2VkSW1hZ2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldENvbXByZXNzZWRJbWFnZSgpIj48Qj5nZXRDb21wcmVzc2VkSW1hZ2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Db21wcmVzc2VkIEltYWdlPC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEN5Y2FiVEsoKSI+PEI+Z2V0Q3ljYWJUSygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q3ljYWJUSygpIj48Qj5nZXRDeWNhYlRLKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Q3ljYWIgVEs8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEN5Y2FiVEtfVGltZUZhY3RvcigpIj48Qj5nZXRDeWNhYlRLX1RpbWVGYWN0b3IoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEN5Y2FiVEtfVGltZUZhY3RvcigpIj48Qj5nZXRDeWNhYlRLX1RpbWVGYWN0b3IoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sI2dldFRpbWVGYWN0b3IoKSI+PENPREU+PGVtPlRpbWUgRmFjdG9yPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRDeWNhYlRLX1RpbWVTdGVwKCkiPjxCPmdldEN5Y2FiVEtfVGltZVN0ZXAoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEN5Y2FiVEtfVGltZVN0ZXAoKSI+PEI+Z2V0Q3ljYWJUS19UaW1lU3RlcCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwjZ2V0VGltZVN0ZXAoKSI+PENPREU+PGVtPlRpbWUgU3RlcDwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Q3ljYWJUS19Vc2VSZWFsVGltZSgpIj48Qj5nZXRDeWNhYlRLX1VzZVJlYWxUaW1lKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDeWNhYlRLX1VzZVJlYWxUaW1lKCkiPjxCPmdldEN5Y2FiVEtfVXNlUmVhbFRpbWUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sI2lzVXNlUmVhbFRpbWUoKSI+PENPREU+PGVtPlVzZSBSZWFsIFRpbWU8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldERhdGFGbG93RGlyZWN0aW9uS2luZCgpIj48Qj5nZXREYXRhRmxvd0RpcmVjdGlvbktpbmQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXREYXRhRmxvd0RpcmVjdGlvbktpbmQoKSI+PEI+Z2V0RGF0YUZsb3dEaXJlY3Rpb25LaW5kKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZW51bSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5EYXRhIEZsb3cgRGlyZWN0aW9uIEtpbmQ8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldERhdGFGbG93UG9ydCgpIj48Qj5nZXREYXRhRmxvd1BvcnQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXREYXRhRmxvd1BvcnQoKSI+PEI+Z2V0RGF0YUZsb3dQb3J0KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5EYXRhIEZsb3cgUG9ydDwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0RGF0YUZsb3dQb3J0X0J1ZmZlclNpemUoKSI+PEI+Z2V0RGF0YUZsb3dQb3J0X0J1ZmZlclNpemUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXREYXRhRmxvd1BvcnRfQnVmZmVyU2l6ZSgpIj48Qj5nZXREYXRhRmxvd1BvcnRfQnVmZmVyU2l6ZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCNnZXRCdWZmZXJTaXplKCkiPjxDT0RFPjxlbT5CdWZmZXIgU2l6ZTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0RGF0YUZsb3dQb3J0X0RpcmVjdGlvbigpIj48Qj5nZXREYXRhRmxvd1BvcnRfRGlyZWN0aW9uKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0RGF0YUZsb3dQb3J0X0RpcmVjdGlvbigpIj48Qj5nZXREYXRhRmxvd1BvcnRfRGlyZWN0aW9uKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sI2dldERpcmVjdGlvbigpIj48Q09ERT48ZW0+RGlyZWN0aW9uPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNnZXREZWFkbGluZSgpIj48Qj5nZXREZWFkbGluZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Tb2Z0d2FyZUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjZ2V0RGVhZGxpbmUoKSI+PEI+Z2V0RGVhZGxpbmUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNvZnR3YXJlPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkRlYWRsaW5lPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvQWN0aXZhdG9yLmh0bWwjZ2V0RGVmYXVsdCgpIj48Qj5nZXREZWZhdWx0KCk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzIj5BY3RpdmF0b3I8L0E+Cis8REQ+UmV0dXJucyB0aGUgc2hhcmVkIGluc3RhbmNlLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXREaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkoKSI+PEI+Z2V0RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIGZhY3RvcnkgdGhhdCBjcmVhdGVzIHRoZSBpbnN0YW5jZXMgb2YgdGhlIG1vZGVsCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldERpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeSgpIj48Qj5nZXREaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwiPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCNnZXREaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UoKSI+PEI+Z2V0RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5PC9BPgorPEREPlJldHVybnMgdGhlIHBhY2thZ2Ugc3VwcG9ydGVkIGJ5IHRoaXMgZmFjdG9yeQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNnZXREaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UoKSI+PEI+Z2V0RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0RGlhZ25vc3RpY0FycmF5KCkiPjxCPmdldERpYWdub3N0aWNBcnJheSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+RGlhZ25vc3RpYyBBcnJheTwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0RGlhZ25vc3RpY0FycmF5KCkiPjxCPmdldERpYWdub3N0aWNBcnJheSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbCI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldERpYWdub3N0aWNTdGF0dXMoKSI+PEI+Z2V0RGlhZ25vc3RpY1N0YXR1cygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+RGlhZ25vc3RpYyBTdGF0dXM8L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldERpYWdub3N0aWNTdGF0dXMoKSI+PEI+Z2V0RGlhZ25vc3RpY1N0YXR1cygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbCI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sI2dldERpcmVjdGlvbigpIj48Qj5nZXREaXJlY3Rpb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd1BvcnQ8L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+RGlyZWN0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRGF0YUZsb3dQb3J0SW1wbC5odG1sI2dldERpcmVjdGlvbigpIj48Qj5nZXREaXJlY3Rpb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRGF0YUZsb3dQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkRhdGFGbG93UG9ydEltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0RHVyYXRpb24oKSI+PEI+Z2V0RHVyYXRpb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldER1cmF0aW9uKCkiPjxCPmdldER1cmF0aW9uKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+RHVyYXRpb248L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCNnZXRFZmZlY3QoKSI+PEI+Z2V0RWZmZWN0KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+VHJhbnNpdGlvbkltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwjZ2V0RWZmZWN0KCkiPjxCPmdldEVmZmVjdCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5UcmFuc2l0aW9uPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkVmZmVjdDwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0RW5naW5lU3lzdGVtKCkiPjxCPmdldEVuZ2luZVN5c3RlbSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEVuZ2luZVN5c3RlbSgpIj48Qj5nZXRFbmdpbmVTeXN0ZW0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkVuZ2luZSBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEVuZ2luZVN5c3RlbV9HZWFyX3JhdGlvbigpIj48Qj5nZXRFbmdpbmVTeXN0ZW1fR2Vhcl9yYXRpb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEVuZ2luZVN5c3RlbV9HZWFyX3JhdGlvbigpIj48Qj5nZXRFbmdpbmVTeXN0ZW1fR2Vhcl9yYXRpb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0R2Vhcl9yYXRpb24oKSI+PENPREU+PGVtPkdlYXIgcmF0aW9uPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRFbmdpbmVTeXN0ZW1fTWF4QWxsb3dlZFN0ZWVyaW5nKCkiPjxCPmdldEVuZ2luZVN5c3RlbV9NYXhBbGxvd2VkU3RlZXJpbmcoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRFbmdpbmVTeXN0ZW1fTWF4QWxsb3dlZFN0ZWVyaW5nKCkiPjxCPmdldEVuZ2luZVN5c3RlbV9NYXhBbGxvd2VkU3RlZXJpbmcoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0TWF4QWxsb3dlZFN0ZWVyaW5nKCkiPjxDT0RFPjxlbT5NYXggQWxsb3dlZCBTdGVlcmluZzwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0RW5naW5lU3lzdGVtX01heEFsbG93ZWRWZWxvY2l0eSgpIj48Qj5nZXRFbmdpbmVTeXN0ZW1fTWF4QWxsb3dlZFZlbG9jaXR5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0RW5naW5lU3lzdGVtX01heEFsbG93ZWRWZWxvY2l0eSgpIj48Qj5nZXRFbmdpbmVTeXN0ZW1fTWF4QWxsb3dlZFZlbG9jaXR5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI2dldE1heEFsbG93ZWRWZWxvY2l0eSgpIj48Q09ERT48ZW0+TWF4IEFsbG93ZWQgVmVsb2NpdHk8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEVuZ2luZVN5c3RlbV9NYXhCcmVha2luZ0ZvcmNlKCkiPjxCPmdldEVuZ2luZVN5c3RlbV9NYXhCcmVha2luZ0ZvcmNlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0RW5naW5lU3lzdGVtX01heEJyZWFraW5nRm9yY2UoKSI+PEI+Z2V0RW5naW5lU3lzdGVtX01heEJyZWFraW5nRm9yY2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0TWF4QnJlYWtpbmdGb3JjZSgpIj48Q09ERT48ZW0+TWF4IEJyZWFraW5nIEZvcmNlPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRFbmdpbmVTeXN0ZW1fTWF4RW5naW5lRm9yY2UoKSI+PEI+Z2V0RW5naW5lU3lzdGVtX01heEVuZ2luZUZvcmNlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0RW5naW5lU3lzdGVtX01heEVuZ2luZUZvcmNlKCkiPjxCPmdldEVuZ2luZVN5c3RlbV9NYXhFbmdpbmVGb3JjZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhFbmdpbmVGb3JjZSgpIj48Q09ERT48ZW0+TWF4IEVuZ2luZSBGb3JjZTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0RW5naW5lU3lzdGVtX1ZlaGljbGVUcmFjdGlvbigpIj48Qj5nZXRFbmdpbmVTeXN0ZW1fVmVoaWNsZVRyYWN0aW9uKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0RW5naW5lU3lzdGVtX1ZlaGljbGVUcmFjdGlvbigpIj48Qj5nZXRFbmdpbmVTeXN0ZW1fVmVoaWNsZVRyYWN0aW9uKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI2dldFZlaGljbGVUcmFjdGlvbigpIj48Q09ERT48ZW0+VmVoaWNsZSBUcmFjdGlvbjwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0RW52aXJvbm1lbnQoKSI+PEI+Z2V0RW52aXJvbm1lbnQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRFbnZpcm9ubWVudCgpIj48Qj5nZXRFbnZpcm9ubWVudCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5FbnZpcm9ubWVudDwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZ2V0RXZlbG92ZXNJbigpIj48Qj5nZXRFdmVsb3Zlc0luKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBoeXNpY2FsT2JqZWN0SW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRFdmVsb3Zlc0luKCkiPjxCPmdldEV2ZWxvdmVzSW4oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkV2ZWxvdmVzIEluPC9iPjwvZW0+JyByZWZlcmVuY2UgbGlzdC4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwjZ2V0RXh0RnVuY3Rpb25OYW1lKCkiPjxCPmdldEV4dEZ1bmN0aW9uTmFtZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5FeHQgRnVuY3Rpb24gTmFtZTwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sI2dldEV4dEZ1bmN0aW9uTmFtZSgpIj48Qj5nZXRFeHRGdW5jdGlvbk5hbWUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFsZ29yaXRobUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0RmxvYXQzMigpIj48Qj5nZXRGbG9hdDMyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRGbG9hdDMyKCkiPjxCPmdldEZsb2F0MzIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5GbG9hdDMyPC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0RmxvYXQzMk11bHRpQXJyYXkoKSI+PEI+Z2V0RmxvYXQzMk11bHRpQXJyYXkoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEZsb2F0MzJNdWx0aUFycmF5KCkiPjxCPmdldEZsb2F0MzJNdWx0aUFycmF5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+RmxvYXQzMiBNdWx0aSBBcnJheTwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEZsb2F0NjQoKSI+PEI+Z2V0RmxvYXQ2NCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0RmxvYXQ2NCgpIj48Qj5nZXRGbG9hdDY0KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+RmxvYXQ2NDwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEZsb2F0NjRNdWx0aUFycmF5KCkiPjxCPmdldEZsb2F0NjRNdWx0aUFycmF5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRGbG9hdDY0TXVsdGlBcnJheSgpIj48Qj5nZXRGbG9hdDY0TXVsdGlBcnJheSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkZsb2F0NjQgTXVsdGkgQXJyYXk8L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Rmxvb3IoKSI+PEI+Z2V0Rmxvb3IoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEZsb29yKCkiPjxCPmdldEZsb29yKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkZsb29yPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvQWN0aXZhdG9yLmh0bWwjZ2V0Rmxvd1BvcnRJbWFnZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGF0YUZsb3dQb3J0KSI+PEI+Z2V0Rmxvd1BvcnRJbWFnZShEYXRhRmxvd1BvcnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzIj5BY3RpdmF0b3I8L0E+Cis8REQ+R2V0cyB0aGUgZmxvdyBwb3J0IGltYWdlLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNnZXRGcmVxdWVuY3koKSI+PEI+Z2V0RnJlcXVlbmN5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JTeXN0ZW1JbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNnZXRGcmVxdWVuY3koKSI+PEI+Z2V0RnJlcXVlbmN5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkZyZXF1ZW5jeTwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI2dldEdlYXJfcmF0aW9uKCkiPjxCPmdldEdlYXJfcmF0aW9uKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW5naW5lU3lzdGVtPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkdlYXIgcmF0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwjZ2V0R2Vhcl9yYXRpb24oKSI+PEI+Z2V0R2Vhcl9yYXRpb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkVuZ2luZVN5c3RlbUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeSgpIj48Qj5nZXRHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgZmFjdG9yeSB0aGF0IGNyZWF0ZXMgdGhlIGluc3RhbmNlcyBvZiB0aGUgbW9kZWwKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5KCkiPjxCPmdldEdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwjZ2V0R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSgpIj48Qj5nZXRHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0E+Cis8REQ+UmV0dXJucyB0aGUgcGFja2FnZSBzdXBwb3J0ZWQgYnkgdGhpcyBmYWN0b3J5Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjZ2V0R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSgpIj48Qj5nZXRHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0R29hbElEKCkiPjxCPmdldEdvYWxJRCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkdvYWwgSUQ8L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRHb2FsSUQoKSI+PEI+Z2V0R29hbElEKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwiPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRHb2FsU3RhdHVzKCkiPjxCPmdldEdvYWxTdGF0dXMoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Hb2FsIFN0YXR1czwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEdvYWxTdGF0dXMoKSI+PEI+Z2V0R29hbFN0YXR1cygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0R29hbFN0YXR1c0FycmF5KCkiPjxCPmdldEdvYWxTdGF0dXNBcnJheSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkdvYWwgU3RhdHVzIEFycmF5PC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0R29hbFN0YXR1c0FycmF5KCkiPjxCPmdldEdvYWxTdGF0dXNBcnJheSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEdQU1N5c3RlbSgpIj48Qj5nZXRHUFNTeXN0ZW0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRHUFNTeXN0ZW0oKSI+PEI+Z2V0R1BTU3lzdGVtKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5HUFMgU3lzdGVtPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRHUFNTeXN0ZW1fT3JpZ2luUG9zaXRpb24oKSI+PEI+Z2V0R1BTU3lzdGVtX09yaWdpblBvc2l0aW9uKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0R1BTU3lzdGVtX09yaWdpblBvc2l0aW9uKCkiPjxCPmdldEdQU1N5c3RlbV9PcmlnaW5Qb3NpdGlvbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCNnZXRPcmlnaW5Qb3NpdGlvbigpIj48Q09ERT48ZW0+T3JpZ2luIFBvc2l0aW9uPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjZ2V0R3Jhdml0eSgpIj48Qj5nZXRHcmF2aXR5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QmxlbmRlck1vcnNlPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkdyYXZpdHk8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCNnZXRHcmF2aXR5KCkiPjxCPmdldEdyYXZpdHkoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkJsZW5kZXJNb3JzZUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRHcmlkQ2VsbHMoKSI+PEI+Z2V0R3JpZENlbGxzKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiPk5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRHcmlkQ2VsbHMoKSI+PEI+Z2V0R3JpZENlbGxzKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+R3JpZCBDZWxsczwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRHcm91bmQoKSI+PEI+Z2V0R3JvdW5kKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRHcm91bmQoKSI+PEI+Z2V0R3JvdW5kKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Hcm91bmQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Hcm91bmQ8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwjZ2V0R3VhcmQoKSI+PEI+Z2V0R3VhcmQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5UcmFuc2l0aW9uSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCNnZXRHdWFyZCgpIj48Qj5nZXRHdWFyZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5UcmFuc2l0aW9uPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkd1YXJkPC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRIYXJkd2FyZSgpIj48Qj5nZXRIYXJkd2FyZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEhhcmR3YXJlKCkiPjxCPmdldEhhcmR3YXJlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IYXJkd2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkhhcmR3YXJlPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNnZXRIYXNTdXJmYWNlKCkiPjxCPmdldEhhc1N1cmZhY2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGh5c2ljYWxPYmplY3RJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEhhc1N1cmZhY2UoKSI+PEI+Z2V0SGFzU3VyZmFjZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+SGFzIFN1cmZhY2U8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0SGVhZGVyKCkiPjxCPmdldEhlYWRlcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0SGVhZGVyKCkiPjxCPmdldEhlYWRlcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkhlYWRlcjwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0SGVpZ2h0KCkiPjxCPmdldEhlaWdodCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNhbWVyYVN5c3RlbTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5IZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCNnZXRIZWlnaHQoKSI+PEI+Z2V0SGVpZ2h0KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5DYW1lcmFTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRIdW1hbigpIj48Qj5nZXRIdW1hbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0SHVtYW4oKSI+PEI+Z2V0SHVtYW4oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+SHVtYW48L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCNnZXRJY29uKCkiPjxCPmdldEljb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRGF0YUZsb3dQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkRhdGFGbG93UG9ydEltcGw8L0E+Cis8REQ+SW1hZ2VzIHJlZ2lzdGVyZWQgaW4gUHJvZmlsZSBhcmUgOgorIAorIDAgLSBGbG93UG9ydCBJTgorIDEgLSBGbG93UG9ydCBPVVQKKyAKKyA8IQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sI2dldEljb24oKSI+PEI+Z2V0SWNvbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZXJ2aWNlUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZXJ2aWNlUG9ydEltcGw8L0E+Cis8REQ+SW1hZ2VzIHJlZ2lzdGVyZWQgaW4gUHJvZmlsZSBhcmUgOgorIAorIDAgLSBTZXJ2aWNlUG9ydCBQcm92aWRlZAorIDEgLSBTZXJ2aWNlUG9ydCBSZXF1aXJlZAorIAorIDwhCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI2dldElkZW50aWZpZXIoKSI+PEI+Z2V0SWRlbnRpZmllcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2Vuc29yU3lzdGVtSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjZ2V0SWRlbnRpZmllcigpIj48Qj5nZXRJZGVudGlmaWVyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPklkZW50aWZpZXI8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0SW1hZ2UoKSI+PEI+Z2V0SW1hZ2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEltYWdlKCkiPjxCPmdldEltYWdlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+SW1hZ2U8L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0SW1hZ2VTZW5zb3JTeXN0ZW0oKSI+PEI+Z2V0SW1hZ2VTZW5zb3JTeXN0ZW0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRJbWFnZVNlbnNvclN5c3RlbSgpIj48Qj5nZXRJbWFnZVNlbnNvclN5c3RlbSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5JbWFnZSBTZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEltdSgpIj48Qj5nZXRJbXUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEltdSgpIj48Qj5nZXRJbXUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5JbXU8L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL0FjdGl2YXRvci5odG1sI2dldEluc3RhbmNlKCkiPjxCPmdldEluc3RhbmNlKCk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzIj5BY3RpdmF0b3I8L0E+Cis8REQ+UmV0dXJucyB0aGUgc2hhcmVkIGluc3RhbmNlLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0SW50MTYoKSI+PEI+Z2V0SW50MTYoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEludDE2KCkiPjxCPmdldEludDE2KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+SW50MTY8L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRJbnQxNk11bHRpQXJyYXkoKSI+PEI+Z2V0SW50MTZNdWx0aUFycmF5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRJbnQxNk11bHRpQXJyYXkoKSI+PEI+Z2V0SW50MTZNdWx0aUFycmF5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+SW50MTYgTXVsdGkgQXJyYXk8L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRJbnQzMigpIj48Qj5nZXRJbnQzMigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0SW50MzIoKSI+PEI+Z2V0SW50MzIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5JbnQzMjwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEludDMyTXVsdGlBcnJheSgpIj48Qj5nZXRJbnQzMk11bHRpQXJyYXkoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEludDMyTXVsdGlBcnJheSgpIj48Qj5nZXRJbnQzMk11bHRpQXJyYXkoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5JbnQzMiBNdWx0aSBBcnJheTwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEludDY0KCkiPjxCPmdldEludDY0KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRJbnQ2NCgpIj48Qj5nZXRJbnQ2NCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkludDY0PC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0SW50NjRNdWx0aUFycmF5KCkiPjxCPmdldEludDY0TXVsdGlBcnJheSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0SW50NjRNdWx0aUFycmF5KCkiPjxCPmdldEludDY0TXVsdGlBcnJheSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkludDY0IE11bHRpIEFycmF5PC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0SW50OCgpIj48Qj5nZXRJbnQ4KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRJbnQ4KCkiPjxCPmdldEludDgoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5JbnQ4PC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0SW50OE11bHRpQXJyYXkoKSI+PEI+Z2V0SW50OE11bHRpQXJyYXkoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEludDhNdWx0aUFycmF5KCkiPjxCPmdldEludDhNdWx0aUFycmF5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+SW50OCBNdWx0aSBBcnJheTwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEpvaW50U3RhdGUoKSI+PEI+Z2V0Sm9pbnRTdGF0ZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0Sm9pbnRTdGF0ZSgpIj48Qj5nZXRKb2ludFN0YXRlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+Sm9pbnQgU3RhdGU8L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRKb3koKSI+PEI+Z2V0Sm95KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRKb3koKSI+PEI+Z2V0Sm95KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+Sm95PC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0Sm95RmVlZGJhY2soKSI+PEI+Z2V0Sm95RmVlZGJhY2soKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEpveUZlZWRiYWNrKCkiPjxCPmdldEpveUZlZWRiYWNrKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+Sm95IEZlZWRiYWNrPC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0Sm95RmVlZGJhY2tBcnJheSgpIj48Qj5nZXRKb3lGZWVkYmFja0FycmF5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRKb3lGZWVkYmFja0FycmF5KCkiPjxCPmdldEpveUZlZWRiYWNrQXJyYXkoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Kb3kgRmVlZGJhY2sgQXJyYXk8L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEtleVZhbHVlKCkiPjxCPmdldEtleVZhbHVlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5LZXkgVmFsdWU8L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEtleVZhbHVlKCkiPjxCPmdldEtleVZhbHVlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljTWlkZGxld2FyZUltcGwuaHRtbCNnZXRLaW5kKCkiPjxCPmdldEtpbmQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY01pZGRsZXdhcmVJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sI2dldEtpbmQoKSI+PEI+Z2V0S2luZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdEltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sI2dldEtpbmQoKSI+PEI+Z2V0S2luZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZXJ2aWNlUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZXJ2aWNlUG9ydEltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI2dldEtpbmQoKSI+PEI+Z2V0S2luZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3Q8L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+S2luZDwvYj48L2VtPicgYXR0cmlidXRlLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sI2dldEtpbmQoKSI+PEI+Z2V0S2luZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmU8L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+S2luZDwvYj48L2VtPicgYXR0cmlidXRlLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sI2dldEtpbmQoKSI+PEI+Z2V0S2luZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZVBvcnQ8L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+S2luZDwvYj48L2VtPicgYXR0cmlidXRlLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldExhbmRTdXJmYWNlKCkiPjxCPmdldExhbmRTdXJmYWNlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMYW5kU3VyZmFjZSgpIj48Qj5nZXRMYW5kU3VyZmFjZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5MYW5kIFN1cmZhY2U8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0TGFzZXJTY2FuKCkiPjxCPmdldExhc2VyU2NhbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0TGFzZXJTY2FuKCkiPjxCPmdldExhc2VyU2NhbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkxhc2VyIFNjYW48L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjZ2V0TGF5ZXJBbmdsZU1pbigpIj48Qj5nZXRMYXllckFuZ2xlTWluKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkxpZGFyU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0TGF5ZXJBbmdsZU1pbigpIj48Qj5nZXRMYXllckFuZ2xlTWluKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5MYXllciBBbmdsZSBNaW48L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI2dldExheWVyQW5nbGVTdGVwKCkiPjxCPmdldExheWVyQW5nbGVTdGVwKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkxpZGFyU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0TGF5ZXJBbmdsZVN0ZXAoKSI+PEI+Z2V0TGF5ZXJBbmdsZVN0ZXAoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxpZGFyU3lzdGVtPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkxheWVyIEFuZ2xlIFN0ZXA8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldExpZGFyU3lzdGVtKCkiPjxCPmdldExpZGFyU3lzdGVtKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW0oKSI+PEI+Z2V0TGlkYXJTeXN0ZW0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+TGlkYXIgU3lzdGVtPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRMaWRhclN5c3RlbV9BbmdsZV9tYXgoKSI+PEI+Z2V0TGlkYXJTeXN0ZW1fQW5nbGVfbWF4KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbV9BbmdsZV9tYXgoKSI+PEI+Z2V0TGlkYXJTeXN0ZW1fQW5nbGVfbWF4KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0QW5nbGVfbWF4KCkiPjxDT0RFPjxlbT5BbmdsZSBtYXg8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldExpZGFyU3lzdGVtX0FuZ2xlX21pbigpIj48Qj5nZXRMaWRhclN5c3RlbV9BbmdsZV9taW4oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtX0FuZ2xlX21pbigpIj48Qj5nZXRMaWRhclN5c3RlbV9BbmdsZV9taW4oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRBbmdsZV9taW4oKSI+PENPREU+PGVtPkFuZ2xlIG1pbjwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fTGF5ZXJBbmdsZU1pbigpIj48Qj5nZXRMaWRhclN5c3RlbV9MYXllckFuZ2xlTWluKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fTGF5ZXJBbmdsZU1pbigpIj48Qj5nZXRMaWRhclN5c3RlbV9MYXllckFuZ2xlTWluKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0TGF5ZXJBbmdsZU1pbigpIj48Q09ERT48ZW0+TGF5ZXIgQW5nbGUgTWluPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRMaWRhclN5c3RlbV9MYXllckFuZ2xlU3RlcCgpIj48Qj5nZXRMaWRhclN5c3RlbV9MYXllckFuZ2xlU3RlcCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtX0xheWVyQW5nbGVTdGVwKCkiPjxCPmdldExpZGFyU3lzdGVtX0xheWVyQW5nbGVTdGVwKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0TGF5ZXJBbmdsZVN0ZXAoKSI+PENPREU+PGVtPkxheWVyIEFuZ2xlIFN0ZXA8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldExpZGFyU3lzdGVtX05iTGF5ZXJzKCkiPjxCPmdldExpZGFyU3lzdGVtX05iTGF5ZXJzKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fTmJMYXllcnMoKSI+PEI+Z2V0TGlkYXJTeXN0ZW1fTmJMYXllcnMoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXROYkxheWVycygpIj48Q09ERT48ZW0+TmIgTGF5ZXJzPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRMaWRhclN5c3RlbV9Ob2lzZSgpIj48Qj5nZXRMaWRhclN5c3RlbV9Ob2lzZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtX05vaXNlKCkiPjxCPmdldExpZGFyU3lzdGVtX05vaXNlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0Tm9pc2UoKSI+PENPREU+PGVtPk5vaXNlPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRMaWRhclN5c3RlbV9SYW5nZV9tYXgoKSI+PEI+Z2V0TGlkYXJTeXN0ZW1fUmFuZ2VfbWF4KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbV9SYW5nZV9tYXgoKSI+PEI+Z2V0TGlkYXJTeXN0ZW1fUmFuZ2VfbWF4KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0UmFuZ2VfbWF4KCkiPjxDT0RFPjxlbT5SYW5nZSBtYXg8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldExpZGFyU3lzdGVtX1JhbmdlX21pbigpIj48Qj5nZXRMaWRhclN5c3RlbV9SYW5nZV9taW4oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtX1JhbmdlX21pbigpIj48Qj5nZXRMaWRhclN5c3RlbV9SYW5nZV9taW4oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRSYW5nZV9taW4oKSI+PENPREU+PGVtPlJhbmdlIG1pbjwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fU2Nhbl90aW1lKCkiPjxCPmdldExpZGFyU3lzdGVtX1NjYW5fdGltZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fU2Nhbl90aW1lKCkiPjxCPmdldExpZGFyU3lzdGVtX1NjYW5fdGltZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFNjYW5fdGltZSgpIj48Q09ERT48ZW0+U2NhbiB0aW1lPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRMaWRhclN5c3RlbV9TaWdtYU5vaXNlKCkiPjxCPmdldExpZGFyU3lzdGVtX1NpZ21hTm9pc2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbV9TaWdtYU5vaXNlKCkiPjxCPmdldExpZGFyU3lzdGVtX1NpZ21hTm9pc2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRTaWdtYU5vaXNlKCkiPjxDT0RFPjxlbT5TaWdtYSBOb2lzZTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fVGltZV9pbmNyZW1lbnQoKSI+PEI+Z2V0TGlkYXJTeXN0ZW1fVGltZV9pbmNyZW1lbnQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtX1RpbWVfaW5jcmVtZW50KCkiPjxCPmdldExpZGFyU3lzdGVtX1RpbWVfaW5jcmVtZW50KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0VGltZV9pbmNyZW1lbnQoKSI+PENPREU+PGVtPlRpbWUgaW5jcmVtZW50PC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwjZ2V0TGl0ZXJhbCgpIj48Qj5nZXRMaXRlcmFsKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCNnZXRMaXRlcmFsKCkiPjxCPmdldExpdGVyYWwoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwjZ2V0TGl0ZXJhbCgpIj48Qj5nZXRMaXRlcmFsKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdEtpbmQ8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCNnZXRMaXRlcmFsKCkiPjxCPmdldExpdGVyYWwoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwjZ2V0TGl0ZXJhbCgpIj48Qj5nZXRMaXRlcmFsKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwjZ2V0TGl0ZXJhbCgpIj48Qj5nZXRMaXRlcmFsKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCNnZXRMaXRlcmFsKCkiPjxCPmdldExpdGVyYWwoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5VR1ZLaW5kPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCNnZXRMaXRlcmFsKCkiPjxCPmdldExpdGVyYWwoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VW5pdEtpbmQ8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldExvY2FsaXphdGlvblNlbnNvclN5c3RlbSgpIj48Qj5nZXRMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0oKSI+PEI+Z2V0TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Mb2NhbGl6YXRpb24gU2Vuc29yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCNnZXRMb2NhbE9yaWVudGF0aW9uKCkiPjxCPmdldExvY2FsT3JpZW50YXRpb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbE9yaWVudGF0aW9uKCkiPjxCPmdldExvY2FsT3JpZW50YXRpb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCNnZXRMb2NhbFBvc2l0aW9uKCkiPjxCPmdldExvY2FsUG9zaXRpb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbFBvc2l0aW9uKCkiPjxCPmdldExvY2FsUG9zaXRpb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Mb2NhbCBQb3NpdGlvbjwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRNYXBNZXRhRGF0YSgpIj48Qj5nZXRNYXBNZXRhRGF0YSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsIj5OYXZfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0TWFwTWV0YURhdGEoKSI+PEI+Z2V0TWFwTWV0YURhdGEoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5NYXAgTWV0YSBEYXRhPC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sI2dldE1hc3MoKSI+PEI+Z2V0TWFzcygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdEltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI2dldE1hc3MoKSI+PEI+Z2V0TWFzcygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3Q8L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TWFzczwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI2dldE1heEFsbG93ZWRTdGVlcmluZygpIj48Qj5nZXRNYXhBbGxvd2VkU3RlZXJpbmcoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5FbmdpbmVTeXN0ZW08L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TWF4IEFsbG93ZWQgU3RlZXJpbmc8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCNnZXRNYXhBbGxvd2VkU3RlZXJpbmcoKSI+PEI+Z2V0TWF4QWxsb3dlZFN0ZWVyaW5nKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5FbmdpbmVTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0TWF4QWxsb3dlZFZlbG9jaXR5KCkiPjxCPmdldE1heEFsbG93ZWRWZWxvY2l0eSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVuZ2luZVN5c3RlbTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5NYXggQWxsb3dlZCBWZWxvY2l0eTwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sI2dldE1heEFsbG93ZWRWZWxvY2l0eSgpIj48Qj5nZXRNYXhBbGxvd2VkVmVsb2NpdHkoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkVuZ2luZVN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhCcmVha2luZ0ZvcmNlKCkiPjxCPmdldE1heEJyZWFraW5nRm9yY2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5FbmdpbmVTeXN0ZW08L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TWF4IEJyZWFraW5nIEZvcmNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwjZ2V0TWF4QnJlYWtpbmdGb3JjZSgpIj48Qj5nZXRNYXhCcmVha2luZ0ZvcmNlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5FbmdpbmVTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0TWF4RW5naW5lRm9yY2UoKSI+PEI+Z2V0TWF4RW5naW5lRm9yY2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5FbmdpbmVTeXN0ZW08L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TWF4IEVuZ2luZSBGb3JjZTwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sI2dldE1heEVuZ2luZUZvcmNlKCkiPjxCPmdldE1heEVuZ2luZUZvcmNlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5FbmdpbmVTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwjZ2V0TWVzaCgpIj48Qj5nZXRNZXNoKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NpbXVsYXRlZFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TaW11bGF0ZWRTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwjZ2V0TWVzaCgpIj48Qj5nZXRNZXNoKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2ltdWxhdGVkU3lzdGVtPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPk1lc2g8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sI2dldE1vdmVzT3ZlcigpIj48Qj5nZXRNb3Zlc092ZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPk1vdmVzIE92ZXI8L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sI2dldE1vdmVzT3ZlcigpIj48Qj5nZXRNb3Zlc092ZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWdlbnRJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0TXVsdGlBcnJheURpbWVuc2lvbigpIj48Qj5nZXRNdWx0aUFycmF5RGltZW5zaW9uKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRNdWx0aUFycmF5RGltZW5zaW9uKCkiPjxCPmdldE11bHRpQXJyYXlEaW1lbnNpb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5NdWx0aSBBcnJheSBEaW1lbnNpb248L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRNdWx0aUFycmF5TGF5b3V0KCkiPjxCPmdldE11bHRpQXJyYXlMYXlvdXQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldE11bHRpQXJyYXlMYXlvdXQoKSI+PEI+Z2V0TXVsdGlBcnJheUxheW91dCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPk11bHRpIEFycmF5IExheW91dDwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwjZ2V0TmFtZSgpIj48Qj5nZXROYW1lKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCNnZXROYW1lKCkiPjxCPmdldE5hbWUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwjZ2V0TmFtZSgpIj48Qj5nZXROYW1lKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdEtpbmQ8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCNnZXROYW1lKCkiPjxCPmdldE5hbWUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwjZ2V0TmFtZSgpIj48Qj5nZXROYW1lKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwjZ2V0TmFtZSgpIj48Qj5nZXROYW1lKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCNnZXROYW1lKCkiPjxCPmdldE5hbWUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5VR1ZLaW5kPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCNnZXROYW1lKCkiPjxCPmdldE5hbWUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VW5pdEtpbmQ8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0TmF2X2RhdGF0eXBlc0ZhY3RvcnkoKSI+PEI+Z2V0TmF2X2RhdGF0eXBlc0ZhY3RvcnkoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbCI+TmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldE5hdl9kYXRhdHlwZXNGYWN0b3J5KCkiPjxCPmdldE5hdl9kYXRhdHlwZXNGYWN0b3J5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBmYWN0b3J5IHRoYXQgY3JlYXRlcyB0aGUgaW5zdGFuY2VzIG9mIHRoZSBtb2RlbAorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjZ2V0TmF2X2RhdGF0eXBlc1BhY2thZ2UoKSI+PEI+Z2V0TmF2X2RhdGF0eXBlc1BhY2thZ2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbCI+TmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sI2dldE5hdl9kYXRhdHlwZXNQYWNrYWdlKCkiPjxCPmdldE5hdl9kYXRhdHlwZXNQYWNrYWdlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzRmFjdG9yeTwvQT4KKzxERD5SZXR1cm5zIHRoZSBwYWNrYWdlIHN1cHBvcnRlZCBieSB0aGlzIGZhY3RvcnkKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldE5hdlNhdEZpeCgpIj48Qj5nZXROYXZTYXRGaXgoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldE5hdlNhdEZpeCgpIj48Qj5nZXROYXZTYXRGaXgoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5OYXYgU2F0IEZpeDwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldE5hdlNhdFN0YXR1cygpIj48Qj5nZXROYXZTYXRTdGF0dXMoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldE5hdlNhdFN0YXR1cygpIj48Qj5nZXROYXZTYXRTdGF0dXMoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5OYXYgU2F0IFN0YXR1czwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCNnZXROYkxheWVycygpIj48Qj5nZXROYkxheWVycygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MaWRhclN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldE5iTGF5ZXJzKCkiPjxCPmdldE5iTGF5ZXJzKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5OYiBMYXllcnM8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI2dldE5vaXNlKCkiPjxCPmdldE5vaXNlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkxpZGFyU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0Tm9pc2UoKSI+PEI+Z2V0Tm9pc2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxpZGFyU3lzdGVtPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPk5vaXNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0oKSI+PEI+Z2V0T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtKCkiPjxCPmdldE9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+T2JqZWN0IERldGVjdGlvbiBTZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSgpIj48Qj5nZXRPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldE9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtKCkiPjxCPmdldE9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPk9iamVjdCBUcmFja2luZyBTZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldE9jY3VwYW5jeUdyaWQoKSI+PEI+Z2V0T2NjdXBhbmN5R3JpZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsIj5OYXZfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0T2NjdXBhbmN5R3JpZCgpIj48Qj5nZXRPY2N1cGFuY3lHcmlkKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+T2NjdXBhbmN5IEdyaWQ8L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRPZG9tZXRyeSgpIj48Qj5nZXRPZG9tZXRyeSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsIj5OYXZfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0T2RvbWV0cnkoKSI+PEI+Z2V0T2RvbWV0cnkoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5PZG9tZXRyeTwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRPblBvcnQoKSI+PEI+Z2V0T25Qb3J0KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRPblBvcnQoKSI+PEI+Z2V0T25Qb3J0KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5PbiBQb3J0PC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRPblBvcnRfQmFzZV9QYXJhbWV0ZXIoKSI+PEI+Z2V0T25Qb3J0X0Jhc2VfUGFyYW1ldGVyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRPblBvcnRfQmFzZV9QYXJhbWV0ZXIoKSI+PEI+Z2V0T25Qb3J0X0Jhc2VfUGFyYW1ldGVyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sI2dldEJhc2VfUGFyYW1ldGVyKCkiPjxDT0RFPjxlbT5CYXNlIFBhcmFtZXRlcjwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0T25Qb3J0X1BvcnQoKSI+PEI+Z2V0T25Qb3J0X1BvcnQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldE9uUG9ydF9Qb3J0KCkiPjxCPmdldE9uUG9ydF9Qb3J0KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sI2dldFBvcnQoKSI+PENPREU+PGVtPlBvcnQ8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5odG1sI2dldE9wZXJhdGlvbigpIj48Qj5nZXRPcGVyYXRpb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhdGVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3RhdGVJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCNnZXRPcGVyYXRpb24oKSI+PEI+Z2V0T3BlcmF0aW9uKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdGF0ZTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5PcGVyYXRpb248L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCNnZXRPcmlnaW5Qb3NpdGlvbigpIj48Qj5nZXRPcmlnaW5Qb3NpdGlvbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkdQU1N5c3RlbTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5PcmlnaW4gUG9zaXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dQU1N5c3RlbUltcGwuaHRtbCNnZXRPcmlnaW5Qb3NpdGlvbigpIj48Qj5nZXRPcmlnaW5Qb3NpdGlvbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HUFNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+R1BTU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNnZXRQYWNrYWdlKCkiPjxCPmdldFBhY2thZ2UoKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwiPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD48Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST48L0k+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2dldFBhY2thZ2UoKSI+PEI+Z2V0UGFja2FnZSgpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwiPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEk+PC9JPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2dldFBhY2thZ2UoKSI+PEI+Z2V0UGFja2FnZSgpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD48Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST48L0k+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNnZXRQYWNrYWdlKCkiPjxCPmdldFBhY2thZ2UoKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiPk5hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD48Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST48L0k+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNnZXRQYWNrYWdlKCkiPjxCPmdldFBhY2thZ2UoKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD48Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST48L0k+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNnZXRQYWNrYWdlKCkiPjxCPmdldFBhY2thZ2UoKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD48Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST48L0k+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjZ2V0UGFja2FnZSgpIj48Qj5nZXRQYWNrYWdlKCk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEk+PC9JPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0UGF0aCgpIj48Qj5nZXRQYXRoKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiPk5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRQYXRoKCkiPjxCPmdldFBhdGgoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5QYXRoPC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNnZXRQYXRoKCkiPjxCPmdldFBhdGgoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG08L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+UGF0aDwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCNnZXRQYXRoKCkiPjxCPmdldFBhdGgoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtTGlicmFyeTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5QYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1JbXBsLmh0bWwjZ2V0UGF0aCgpIj48Qj5nZXRQYXRoKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BbGdvcml0aG1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1MaWJyYXJ5SW1wbC5odG1sI2dldFBhdGgoKSI+PEI+Z2V0UGF0aCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1MaWJyYXJ5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFsZ29yaXRobUxpYnJhcnlJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRQZWRlc3RyaWFuKCkiPjxCPmdldFBlZGVzdHJpYW4oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFBlZGVzdHJpYW4oKSI+PEI+Z2V0UGVkZXN0cmlhbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlBlZGVzdHJpYW48L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sI2dldFBlcmlvZCgpIj48Qj5nZXRQZXJpb2QoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U29mdHdhcmVJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldFBlcmlvZCgpIj48Qj5nZXRQZXJpb2QoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNvZnR3YXJlPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlBlcmlvZDwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0UGh5c2ljYWxEYXRhKCkiPjxCPmdldFBoeXNpY2FsRGF0YSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFBoeXNpY2FsRGF0YSgpIj48Qj5nZXRQaHlzaWNhbERhdGEoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlBoeXNpY2FsIERhdGE8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFBoeXNpY2FsRGF0YV9CYXNlX0RhdGFUeXBlKCkiPjxCPmdldFBoeXNpY2FsRGF0YV9CYXNlX0RhdGFUeXBlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGh5c2ljYWxEYXRhX0Jhc2VfRGF0YVR5cGUoKSI+PEI+Z2V0UGh5c2ljYWxEYXRhX0Jhc2VfRGF0YVR5cGUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwjZ2V0QmFzZV9EYXRhVHlwZSgpIj48Q09ERT48ZW0+QmFzZSBEYXRhIFR5cGU8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFBoeXNpY2FsRGF0YV9Vbml0KCkiPjxCPmdldFBoeXNpY2FsRGF0YV9Vbml0KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGh5c2ljYWxEYXRhX1VuaXQoKSI+PEI+Z2V0UGh5c2ljYWxEYXRhX1VuaXQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwjZ2V0VW5pdCgpIj48Q09ERT48ZW0+VW5pdDwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0UGh5c2ljYWxPYmplY3QoKSI+PEI+Z2V0UGh5c2ljYWxPYmplY3QoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFBoeXNpY2FsT2JqZWN0KCkiPjxCPmdldFBoeXNpY2FsT2JqZWN0KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlBoeXNpY2FsIE9iamVjdDwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0UGh5c2ljYWxPYmplY3RfRXZlbG92ZXNJbigpIj48Qj5nZXRQaHlzaWNhbE9iamVjdF9FdmVsb3Zlc0luKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQaHlzaWNhbE9iamVjdF9FdmVsb3Zlc0luKCkiPjxCPmdldFBoeXNpY2FsT2JqZWN0X0V2ZWxvdmVzSW4oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlIGxpc3QgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEV2ZWxvdmVzSW4oKSI+PENPREU+PGVtPkV2ZWxvdmVzIEluPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRQaHlzaWNhbE9iamVjdF9IYXNTdXJmYWNlKCkiPjxCPmdldFBoeXNpY2FsT2JqZWN0X0hhc1N1cmZhY2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFBoeXNpY2FsT2JqZWN0X0hhc1N1cmZhY2UoKSI+PEI+Z2V0UGh5c2ljYWxPYmplY3RfSGFzU3VyZmFjZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEhhc1N1cmZhY2UoKSI+PENPREU+PGVtPkhhcyBTdXJmYWNlPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRQbGFuZXQoKSI+PEI+Z2V0UGxhbmV0KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQbGFuZXQoKSI+PEI+Z2V0UGxhbmV0KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGFuZXQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5QbGFuZXQ8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFBsYXRmb3JtKCkiPjxCPmdldFBsYXRmb3JtKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQbGF0Zm9ybSgpIj48Qj5nZXRQbGF0Zm9ybSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5QbGF0Zm9ybTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0UGxhdGZvcm1fQmFzZV9Ob2RlKCkiPjxCPmdldFBsYXRmb3JtX0Jhc2VfTm9kZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGxhdGZvcm1fQmFzZV9Ob2RlKCkiPjxCPmdldFBsYXRmb3JtX0Jhc2VfTm9kZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sI2dldEJhc2VfTm9kZSgpIj48Q09ERT48ZW0+QmFzZSBOb2RlPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRQb2ludCgpIj48Qj5nZXRQb2ludCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Qb2ludDwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRQb2ludCgpIj48Qj5nZXRQb2ludCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRQb2ludDMyKCkiPjxCPmdldFBvaW50MzIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+UG9pbnQzMjwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRQb2ludDMyKCkiPjxCPmdldFBvaW50MzIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRQb2ludENsb3VkKCkiPjxCPmdldFBvaW50Q2xvdWQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFBvaW50Q2xvdWQoKSI+PEI+Z2V0UG9pbnRDbG91ZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlBvaW50IENsb3VkPC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0UG9pbnRDbG91ZDIoKSI+PEI+Z2V0UG9pbnRDbG91ZDIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFBvaW50Q2xvdWQyKCkiPjxCPmdldFBvaW50Q2xvdWQyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+UG9pbnQgQ2xvdWQyPC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0UG9pbnRGaWVsZCgpIj48Qj5nZXRQb2ludEZpZWxkKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRQb2ludEZpZWxkKCkiPjxCPmdldFBvaW50RmllbGQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Qb2ludCBGaWVsZDwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRQb2ludFN0YW1wZWQoKSI+PEI+Z2V0UG9pbnRTdGFtcGVkKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlBvaW50IFN0YW1wZWQ8L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0UG9pbnRTdGFtcGVkKCkiPjxCPmdldFBvaW50U3RhbXBlZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRQb2x5Z29uKCkiPjxCPmdldFBvbHlnb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+UG9seWdvbjwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRQb2x5Z29uKCkiPjxCPmdldFBvbHlnb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0UG9seWdvblN0YW1wZWQoKSI+PEI+Z2V0UG9seWdvblN0YW1wZWQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+UG9seWdvbiBTdGFtcGVkPC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFBvbHlnb25TdGFtcGVkKCkiPjxCPmdldFBvbHlnb25TdGFtcGVkKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCNnZXRQb3J0KCkiPjxCPmdldFBvcnQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT25Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPk9uUG9ydEltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0UG9ydCgpIj48Qj5nZXRQb3J0KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sI2dldFBvcnQoKSI+PEI+Z2V0UG9ydCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9uUG9ydDwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Qb3J0PC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQb3J0KCkiPjxCPmdldFBvcnQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Qb3J0PC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRQb3J0X0Jhc2VfUG9ydCgpIj48Qj5nZXRQb3J0X0Jhc2VfUG9ydCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFBvcnRfQmFzZV9Qb3J0KCkiPjxCPmdldFBvcnRfQmFzZV9Qb3J0KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCNnZXRCYXNlX1BvcnQoKSI+PENPREU+PGVtPkJhc2UgUG9ydDwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0UG9ydF9TeW5jaHJvbml6YXRpb25Qb2xpY3koKSI+PEI+Z2V0UG9ydF9TeW5jaHJvbml6YXRpb25Qb2xpY3koKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQb3J0X1N5bmNocm9uaXphdGlvblBvbGljeSgpIj48Qj5nZXRQb3J0X1N5bmNocm9uaXphdGlvblBvbGljeSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwjZ2V0U3luY2hyb25pemF0aW9uUG9saWN5KCkiPjxDT0RFPjxlbT5TeW5jaHJvbml6YXRpb24gUG9saWN5PC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRQb3NlKCkiPjxCPmdldFBvc2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+UG9zZTwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRQb3NlKCkiPjxCPmdldFBvc2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0UG9zZTJEKCkiPjxCPmdldFBvc2UyRCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Qb3NlMiBEPC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFBvc2UyRCgpIj48Qj5nZXRQb3NlMkQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0UG9zZUFycmF5KCkiPjxCPmdldFBvc2VBcnJheSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Qb3NlIEFycmF5PC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFBvc2VBcnJheSgpIj48Qj5nZXRQb3NlQXJyYXkoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0UG9zZVN0YW1wZWQoKSI+PEI+Z2V0UG9zZVN0YW1wZWQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+UG9zZSBTdGFtcGVkPC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFBvc2VTdGFtcGVkKCkiPjxCPmdldFBvc2VTdGFtcGVkKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFBvc2VXaXRoQ292YXJpYW5jZSgpIj48Qj5nZXRQb3NlV2l0aENvdmFyaWFuY2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+UG9zZSBXaXRoIENvdmFyaWFuY2U8L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0UG9zZVdpdGhDb3ZhcmlhbmNlKCkiPjxCPmdldFBvc2VXaXRoQ292YXJpYW5jZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkKCkiPjxCPmdldFBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+UG9zZSBXaXRoIENvdmFyaWFuY2UgU3RhbXBlZDwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkKCkiPjxCPmdldFBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0UHJpbWl0aXZlRGF0YSgpIj48Qj5nZXRQcmltaXRpdmVEYXRhKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UHJpbWl0aXZlRGF0YSgpIj48Qj5nZXRQcmltaXRpdmVEYXRhKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QcmltaXRpdmVEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+UHJpbWl0aXZlIERhdGE8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFByaW1pdGl2ZURhdGFfQmFzZV9QcmltaXRpdmVUeXBlKCkiPjxCPmdldFByaW1pdGl2ZURhdGFfQmFzZV9QcmltaXRpdmVUeXBlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UHJpbWl0aXZlRGF0YV9CYXNlX1ByaW1pdGl2ZVR5cGUoKSI+PEI+Z2V0UHJpbWl0aXZlRGF0YV9CYXNlX1ByaW1pdGl2ZVR5cGUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sI2dldEJhc2VfUHJpbWl0aXZlVHlwZSgpIj48Q09ERT48ZW0+QmFzZSBQcmltaXRpdmUgVHlwZTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwjZ2V0UHJpb3JpdHkoKSI+PEI+Z2V0UHJpb3JpdHkoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U29mdHdhcmVJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldFByaW9yaXR5KCkiPjxCPmdldFByaW9yaXR5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Tb2Z0d2FyZTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Qcmlvcml0eTwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0UXVhdGVybmlvbigpIj48Qj5nZXRRdWF0ZXJuaW9uKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlF1YXRlcm5pb248L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0UXVhdGVybmlvbigpIj48Qj5nZXRRdWF0ZXJuaW9uKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFF1YXRlcm5pb25TdGFtcGVkKCkiPjxCPmdldFF1YXRlcm5pb25TdGFtcGVkKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlF1YXRlcm5pb24gU3RhbXBlZDwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRRdWF0ZXJuaW9uU3RhbXBlZCgpIj48Qj5nZXRRdWF0ZXJuaW9uU3RhbXBlZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFJhbmdlKCkiPjxCPmdldFJhbmdlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRSYW5nZSgpIj48Qj5nZXRSYW5nZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlJhbmdlPC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI2dldFJhbmdlX21heCgpIj48Qj5nZXRSYW5nZV9tYXgoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TGlkYXJTeXN0ZW1JbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFJhbmdlX21heCgpIj48Qj5nZXRSYW5nZV9tYXgoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxpZGFyU3lzdGVtPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlJhbmdlIG1heDwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjZ2V0UmFuZ2VfbWluKCkiPjxCPmdldFJhbmdlX21pbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MaWRhclN5c3RlbUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0UmFuZ2VfbWluKCkiPjxCPmdldFJhbmdlX21pbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGlkYXJTeXN0ZW08L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+UmFuZ2UgbWluPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFJlZ2lvbk9mSW50ZXJlc3QoKSI+PEI+Z2V0UmVnaW9uT2ZJbnRlcmVzdCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0UmVnaW9uT2ZJbnRlcmVzdCgpIj48Qj5nZXRSZWdpb25PZkludGVyZXN0KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+UmVnaW9uIE9mIEludGVyZXN0PC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFJvYm90KCkiPjxCPmdldFJvYm90KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Um9ib3QoKSI+PEI+Z2V0Um9ib3QoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Um9ib3Q8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFJvYm90X0tpbmQoKSI+PEI+Z2V0Um9ib3RfS2luZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90X0tpbmQoKSI+PEI+Z2V0Um9ib3RfS2luZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI2dldEtpbmQoKSI+PENPREU+PGVtPktpbmQ8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFJvYm90X01hc3MoKSI+PEI+Z2V0Um9ib3RfTWFzcygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90X01hc3MoKSI+PEI+Z2V0Um9ib3RfTWFzcygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI2dldE1hc3MoKSI+PENPREU+PGVtPk1hc3M8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFJvYm90X1VndktpbmQoKSI+PEI+Z2V0Um9ib3RfVWd2S2luZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90X1VndktpbmQoKSI+PEI+Z2V0Um9ib3RfVWd2S2luZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI2dldFVndktpbmQoKSI+PENPREU+PGVtPlVndiBLaW5kPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRSb2JvdF9XaWR0aCgpIj48Qj5nZXRSb2JvdF9XaWR0aCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90X1dpZHRoKCkiPjxCPmdldFJvYm90X1dpZHRoKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjZ2V0V2lkdGgoKSI+PENPREU+PGVtPldpZHRoPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRSb2JvdGljTWlkZGxld2FyZSgpIj48Qj5nZXRSb2JvdGljTWlkZGxld2FyZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Um9ib3RpY01pZGRsZXdhcmUoKSI+PEI+Z2V0Um9ib3RpY01pZGRsZXdhcmUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Um9ib3RpYyBNaWRkbGV3YXJlPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRSb2JvdGljTWlkZGxld2FyZV9LaW5kKCkiPjxCPmdldFJvYm90aWNNaWRkbGV3YXJlX0tpbmQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90aWNNaWRkbGV3YXJlX0tpbmQoKSI+PEI+Z2V0Um9ib3RpY01pZGRsZXdhcmVfS2luZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sI2dldEtpbmQoKSI+PENPREU+PGVtPktpbmQ8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFJvYm90aWNNaWRkbGV3YXJlS2luZCgpIj48Qj5nZXRSb2JvdGljTWlkZGxld2FyZUtpbmQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90aWNNaWRkbGV3YXJlS2luZCgpIj48Qj5nZXRSb2JvdGljTWlkZGxld2FyZUtpbmQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBlbnVtICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlJvYm90aWMgTWlkZGxld2FyZSBLaW5kPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRSb2JvdGljU2ltdWxhdG9yKCkiPjxCPmdldFJvYm90aWNTaW11bGF0b3IoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90aWNTaW11bGF0b3IoKSI+PEI+Z2V0Um9ib3RpY1NpbXVsYXRvcigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1NpbXVsYXRvci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlJvYm90aWMgU2ltdWxhdG9yPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRSb2JvdGljU3lzdGVtKCkiPjxCPmdldFJvYm90aWNTeXN0ZW0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdGljU3lzdGVtKCkiPjxCPmdldFJvYm90aWNTeXN0ZW0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Sb2JvdGljIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Um9ib3RpY1N5c3RlbV9Mb2NhbE9yaWVudGF0aW9uKCkiPjxCPmdldFJvYm90aWNTeXN0ZW1fTG9jYWxPcmllbnRhdGlvbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90aWNTeXN0ZW1fTG9jYWxPcmllbnRhdGlvbigpIj48Qj5nZXRSb2JvdGljU3lzdGVtX0xvY2FsT3JpZW50YXRpb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsT3JpZW50YXRpb24oKSI+PENPREU+PGVtPkxvY2FsIE9yaWVudGF0aW9uPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRSb2JvdGljU3lzdGVtX0xvY2FsUG9zaXRpb24oKSI+PEI+Z2V0Um9ib3RpY1N5c3RlbV9Mb2NhbFBvc2l0aW9uKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Um9ib3RpY1N5c3RlbV9Mb2NhbFBvc2l0aW9uKCkiPjxCPmdldFJvYm90aWNTeXN0ZW1fTG9jYWxQb3NpdGlvbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxQb3NpdGlvbigpIj48Q09ERT48ZW0+TG9jYWwgUG9zaXRpb248L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFJvYm90S2luZCgpIj48Qj5nZXRSb2JvdEtpbmQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdEtpbmQoKSI+PEI+Z2V0Um9ib3RLaW5kKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZW51bSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Sb2JvdCBLaW5kPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRSb2JvdE1MRmFjdG9yeSgpIj48Qj5nZXRSb2JvdE1MRmFjdG9yeSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90TUxGYWN0b3J5KCkiPjxCPmdldFJvYm90TUxGYWN0b3J5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBmYWN0b3J5IHRoYXQgY3JlYXRlcyB0aGUgaW5zdGFuY2VzIG9mIHRoZSBtb2RlbAorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2dldFJvYm90TUxQYWNrYWdlKCkiPjxCPmdldFJvYm90TUxQYWNrYWdlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxGYWN0b3J5SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjZ2V0Um9ib3RNTFBhY2thZ2UoKSI+PEI+Z2V0Um9ib3RNTFBhY2thZ2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPgorPEREPlJldHVybnMgdGhlIHBhY2thZ2Ugc3VwcG9ydGVkIGJ5IHRoaXMgZmFjdG9yeQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI2dldFNjYW5fdGltZSgpIj48Qj5nZXRTY2FuX3RpbWUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TGlkYXJTeXN0ZW1JbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFNjYW5fdGltZSgpIj48Qj5nZXRTY2FuX3RpbWUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxpZGFyU3lzdGVtPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlNjYW4gdGltZTwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRTZW5zb3JfZGF0YXR5cGVzRmFjdG9yeSgpIj48Qj5nZXRTZW5zb3JfZGF0YXR5cGVzRmFjdG9yeSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkoKSI+PEI+Z2V0U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIGZhY3RvcnkgdGhhdCBjcmVhdGVzIHRoZSBpbnN0YW5jZXMgb2YgdGhlIG1vZGVsCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNnZXRTZW5zb3JfZGF0YXR5cGVzUGFja2FnZSgpIj48Qj5nZXRTZW5zb3JfZGF0YXR5cGVzUGFja2FnZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwjZ2V0U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UoKSI+PEI+Z2V0U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5PC9BPgorPEREPlJldHVybnMgdGhlIHBhY2thZ2Ugc3VwcG9ydGVkIGJ5IHRoaXMgZmFjdG9yeQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFNlbnNvckRyaXZlcigpIj48Qj5nZXRTZW5zb3JEcml2ZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNlbnNvckRyaXZlcigpIj48Qj5nZXRTZW5zb3JEcml2ZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlNlbnNvciBEcml2ZXI8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFNlbnNvclN5c3RlbSgpIj48Qj5nZXRTZW5zb3JTeXN0ZW0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTZW5zb3JTeXN0ZW0oKSI+PEI+Z2V0U2Vuc29yU3lzdGVtKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRTZW5zb3JTeXN0ZW1fRnJlcXVlbmN5KCkiPjxCPmdldFNlbnNvclN5c3RlbV9GcmVxdWVuY3koKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNlbnNvclN5c3RlbV9GcmVxdWVuY3koKSI+PEI+Z2V0U2Vuc29yU3lzdGVtX0ZyZXF1ZW5jeSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNnZXRGcmVxdWVuY3koKSI+PENPREU+PGVtPkZyZXF1ZW5jeTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U2Vuc29yU3lzdGVtX0lkZW50aWZpZXIoKSI+PEI+Z2V0U2Vuc29yU3lzdGVtX0lkZW50aWZpZXIoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNlbnNvclN5c3RlbV9JZGVudGlmaWVyKCkiPjxCPmdldFNlbnNvclN5c3RlbV9JZGVudGlmaWVyKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI2dldElkZW50aWZpZXIoKSI+PENPREU+PGVtPklkZW50aWZpZXI8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFNlcnZpY2VGbG93S2luZCgpIj48Qj5nZXRTZXJ2aWNlRmxvd0tpbmQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTZXJ2aWNlRmxvd0tpbmQoKSI+PEI+Z2V0U2VydmljZUZsb3dLaW5kKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZW51bSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TZXJ2aWNlIEZsb3cgS2luZDwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U2VydmljZVBvcnQoKSI+PEI+Z2V0U2VydmljZVBvcnQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTZXJ2aWNlUG9ydCgpIj48Qj5nZXRTZXJ2aWNlUG9ydCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TZXJ2aWNlIFBvcnQ8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFNlcnZpY2VQb3J0X0tpbmQoKSI+PEI+Z2V0U2VydmljZVBvcnRfS2luZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNlcnZpY2VQb3J0X0tpbmQoKSI+PEI+Z2V0U2VydmljZVBvcnRfS2luZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sI2dldEtpbmQoKSI+PENPREU+PGVtPktpbmQ8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9BY3RpdmF0b3IuaHRtbCNnZXRTZXJ2aWNlUG9ydEltYWdlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlUG9ydCkiPjxCPmdldFNlcnZpY2VQb3J0SW1hZ2UoU2VydmljZVBvcnQpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzIj5BY3RpdmF0b3I8L0E+Cis8REQ+R2V0cyB0aGUgc2VydmljZSBwb3J0IGltYWdlLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFNoYWRlKCkiPjxCPmdldFNoYWRlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTaGFkZSgpIj48Qj5nZXRTaGFkZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGVudW0gJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TaGFkZTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjZ2V0U2lnbWFOb2lzZSgpIj48Qj5nZXRTaWdtYU5vaXNlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkxpZGFyU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0U2lnbWFOb2lzZSgpIj48Qj5nZXRTaWdtYU5vaXNlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5TaWdtYSBOb2lzZTwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U2ltdWxhdGVkU3lzdGVtKCkiPjxCPmdldFNpbXVsYXRlZFN5c3RlbSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNpbXVsYXRlZFN5c3RlbSgpIj48Qj5nZXRTaW11bGF0ZWRTeXN0ZW0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlNpbXVsYXRlZCBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFNpbXVsYXRlZFN5c3RlbV9CYXNlX1Byb3BlcnR5KCkiPjxCPmdldFNpbXVsYXRlZFN5c3RlbV9CYXNlX1Byb3BlcnR5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U2ltdWxhdGVkU3lzdGVtX0Jhc2VfUHJvcGVydHkoKSI+PEI+Z2V0U2ltdWxhdGVkU3lzdGVtX0Jhc2VfUHJvcGVydHkoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwjZ2V0QmFzZV9Qcm9wZXJ0eSgpIj48Q09ERT48ZW0+QmFzZSBQcm9wZXJ0eTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U2ltdWxhdGVkU3lzdGVtX01lc2goKSI+PEI+Z2V0U2ltdWxhdGVkU3lzdGVtX01lc2goKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTaW11bGF0ZWRTeXN0ZW1fTWVzaCgpIj48Qj5nZXRTaW11bGF0ZWRTeXN0ZW1fTWVzaCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sI2dldE1lc2goKSI+PENPREU+PGVtPk1lc2g8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFNvZnR3YXJlKCkiPjxCPmdldFNvZnR3YXJlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U29mdHdhcmUoKSI+PEI+Z2V0U29mdHdhcmUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+U29mdHdhcmU8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFNvZnR3YXJlX0RlYWRsaW5lKCkiPjxCPmdldFNvZnR3YXJlX0RlYWRsaW5lKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTb2Z0d2FyZV9EZWFkbGluZSgpIj48Qj5nZXRTb2Z0d2FyZV9EZWFkbGluZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldERlYWRsaW5lKCkiPjxDT0RFPjxlbT5EZWFkbGluZTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U29mdHdhcmVfSXNQZXJpb2RpYygpIj48Qj5nZXRTb2Z0d2FyZV9Jc1BlcmlvZGljKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTb2Z0d2FyZV9Jc1BlcmlvZGljKCkiPjxCPmdldFNvZnR3YXJlX0lzUGVyaW9kaWMoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNpc0lzUGVyaW9kaWMoKSI+PENPREU+PGVtPklzIFBlcmlvZGljPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRTb2Z0d2FyZV9QZXJpb2QoKSI+PEI+Z2V0U29mdHdhcmVfUGVyaW9kKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTb2Z0d2FyZV9QZXJpb2QoKSI+PEI+Z2V0U29mdHdhcmVfUGVyaW9kKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjZ2V0UGVyaW9kKCkiPjxDT0RFPjxlbT5QZXJpb2Q8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFNvZnR3YXJlX1ByaW9yaXR5KCkiPjxCPmdldFNvZnR3YXJlX1ByaW9yaXR5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTb2Z0d2FyZV9Qcmlvcml0eSgpIj48Qj5nZXRTb2Z0d2FyZV9Qcmlvcml0eSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldFByaW9yaXR5KCkiPjxDT0RFPjxlbT5Qcmlvcml0eTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U29mdHdhcmVfV2NldCgpIj48Qj5nZXRTb2Z0d2FyZV9XY2V0KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTb2Z0d2FyZV9XY2V0KCkiPjxCPmdldFNvZnR3YXJlX1djZXQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXRXY2V0KCkiPjxDT0RFPjxlbT5XY2V0PC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRTdGFpcnMoKSI+PEI+Z2V0U3RhaXJzKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTdGFpcnMoKSI+PEI+Z2V0U3RhaXJzKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TdGFpcnM8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFN0YXRlKCkiPjxCPmdldFN0YXRlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U3RhdGUoKSI+PEI+Z2V0U3RhdGUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+U3RhdGU8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFN0YXRlX0FyZ3VtZW50cygpIj48Qj5nZXRTdGF0ZV9Bcmd1bWVudHMoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTdGF0ZV9Bcmd1bWVudHMoKSI+PEI+Z2V0U3RhdGVfQXJndW1lbnRzKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSBsaXN0ICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCNnZXRBcmd1bWVudHMoKSI+PENPREU+PGVtPkFyZ3VtZW50czwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U3RhdGVfQmFzZV9TdGF0ZSgpIj48Qj5nZXRTdGF0ZV9CYXNlX1N0YXRlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U3RhdGVfQmFzZV9TdGF0ZSgpIj48Qj5nZXRTdGF0ZV9CYXNlX1N0YXRlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwjZ2V0QmFzZV9TdGF0ZSgpIj48Q09ERT48ZW0+QmFzZSBTdGF0ZTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U3RhdGVfT3BlcmF0aW9uKCkiPjxCPmdldFN0YXRlX09wZXJhdGlvbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFN0YXRlX09wZXJhdGlvbigpIj48Qj5nZXRTdGF0ZV9PcGVyYXRpb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCNnZXRPcGVyYXRpb24oKSI+PENPREU+PGVtPk9wZXJhdGlvbjwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRTdGRfZGF0YXR5cGVzRmFjdG9yeSgpIj48Qj5nZXRTdGRfZGF0YXR5cGVzRmFjdG9yeSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0U3RkX2RhdGF0eXBlc0ZhY3RvcnkoKSI+PEI+Z2V0U3RkX2RhdGF0eXBlc0ZhY3RvcnkoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIGZhY3RvcnkgdGhhdCBjcmVhdGVzIHRoZSBpbnN0YW5jZXMgb2YgdGhlIG1vZGVsCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNnZXRTdGRfZGF0YXR5cGVzUGFja2FnZSgpIj48Qj5nZXRTdGRfZGF0YXR5cGVzUGFja2FnZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwjZ2V0U3RkX2RhdGF0eXBlc1BhY2thZ2UoKSI+PEI+Z2V0U3RkX2RhdGF0eXBlc1BhY2thZ2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5PC9BPgorPEREPlJldHVybnMgdGhlIHBhY2thZ2Ugc3VwcG9ydGVkIGJ5IHRoaXMgZmFjdG9yeQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0U3RyaW5nKCkiPjxCPmdldFN0cmluZygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0U3RyaW5nKCkiPjxCPmdldFN0cmluZygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlN0cmluZzwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRTdXJmYWNlKCkiPjxCPmdldFN1cmZhY2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFN1cmZhY2UoKSI+PEI+Z2V0U3VyZmFjZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlN1cmZhY2U8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI2dldFN1c3BlbnNpb25Db21wcmVzc2lvbigpIj48Qj5nZXRTdXNwZW5zaW9uQ29tcHJlc3Npb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2hlZWxTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRTdXNwZW5zaW9uQ29tcHJlc3Npb24oKSI+PEI+Z2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5TdXNwZW5zaW9uIENvbXByZXNzaW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNnZXRTdXNwZW5zaW9uRGFtcGluZygpIj48Qj5nZXRTdXNwZW5zaW9uRGFtcGluZygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5XaGVlbFN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25EYW1waW5nKCkiPjxCPmdldFN1c3BlbnNpb25EYW1waW5nKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5TdXNwZW5zaW9uIERhbXBpbmc8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI2dldFN1c3BlbnNpb25SZXN0TGVuZ3RoKCkiPjxCPmdldFN1c3BlbnNpb25SZXN0TGVuZ3RoKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPldoZWVsU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0U3VzcGVuc2lvblJlc3RMZW5ndGgoKSI+PEI+Z2V0U3VzcGVuc2lvblJlc3RMZW5ndGgoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlN1c3BlbnNpb24gUmVzdCBMZW5ndGg8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI2dldFN1c3BlbnNpb25TdGlmZm5lc3MoKSI+PEI+Z2V0U3VzcGVuc2lvblN0aWZmbmVzcygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5XaGVlbFN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25TdGlmZm5lc3MoKSI+PEI+Z2V0U3VzcGVuc2lvblN0aWZmbmVzcygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+U3VzcGVuc2lvbiBTdGlmZm5lc3M8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFN5bmNocm9uaXphdGlvbktpbmQoKSI+PEI+Z2V0U3luY2hyb25pemF0aW9uS2luZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFN5bmNocm9uaXphdGlvbktpbmQoKSI+PEI+Z2V0U3luY2hyb25pemF0aW9uS2luZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGVudW0gJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlN5bmNocm9uaXphdGlvbiBLaW5kPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sI2dldFN5bmNocm9uaXphdGlvblBvbGljeSgpIj48Qj5nZXRTeW5jaHJvbml6YXRpb25Qb2xpY3koKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Qb3J0SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCNnZXRTeW5jaHJvbml6YXRpb25Qb2xpY3koKSI+PEI+Z2V0U3luY2hyb25pemF0aW9uUG9saWN5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBvcnQ8L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+U3luY2hyb25pemF0aW9uIFBvbGljeTwvYj48L2VtPicgYXR0cmlidXRlLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFN5c3RlbSgpIj48Qj5nZXRTeXN0ZW0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTeXN0ZW0oKSI+PEI+Z2V0U3lzdGVtKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TeXN0ZW08L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFN5c3RlbV9CYXNlX0NsYXNzKCkiPjxCPmdldFN5c3RlbV9CYXNlX0NsYXNzKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U3lzdGVtX0Jhc2VfQ2xhc3MoKSI+PEI+Z2V0U3lzdGVtX0Jhc2VfQ2xhc3MoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj48Q09ERT48ZW0+QmFzZSBDbGFzczwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRUaW1lKCkiPjxCPmdldFRpbWUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFRpbWUoKSI+PEI+Z2V0VGltZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlRpbWU8L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjZ2V0VGltZV9pbmNyZW1lbnQoKSI+PEI+Z2V0VGltZV9pbmNyZW1lbnQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TGlkYXJTeXN0ZW1JbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFRpbWVfaW5jcmVtZW50KCkiPjxCPmdldFRpbWVfaW5jcmVtZW50KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5UaW1lIGluY3JlbWVudDwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCNnZXRUaW1lRmFjdG9yKCkiPjxCPmdldFRpbWVGYWN0b3IoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q3ljYWJUSzwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5UaW1lIEZhY3RvcjwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ3ljYWJUS0ltcGwuaHRtbCNnZXRUaW1lRmFjdG9yKCkiPjxCPmdldFRpbWVGYWN0b3IoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ3ljYWJUS0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5DeWNhYlRLSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sI2dldFRpbWVTdGVwKCkiPjxCPmdldFRpbWVTdGVwKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkN5Y2FiVEs8L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VGltZSBTdGVwPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sI2dldFRpbWVTdGVwKCkiPjxCPmdldFRpbWVTdGVwKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q3ljYWJUS0ltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0VHJhbnNmb3JtKCkiPjxCPmdldFRyYW5zZm9ybSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5UcmFuc2Zvcm08L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0VHJhbnNmb3JtKCkiPjxCPmdldFRyYW5zZm9ybSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRUcmFuc2l0aW9uKCkiPjxCPmdldFRyYW5zaXRpb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRUcmFuc2l0aW9uKCkiPjxCPmdldFRyYW5zaXRpb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5UcmFuc2l0aW9uPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRUcmFuc2l0aW9uX0Jhc2VfVHJhbnNpdGlvbigpIj48Qj5nZXRUcmFuc2l0aW9uX0Jhc2VfVHJhbnNpdGlvbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFRyYW5zaXRpb25fQmFzZV9UcmFuc2l0aW9uKCkiPjxCPmdldFRyYW5zaXRpb25fQmFzZV9UcmFuc2l0aW9uKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCNnZXRCYXNlX1RyYW5zaXRpb24oKSI+PENPREU+PGVtPkJhc2UgVHJhbnNpdGlvbjwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0VHJhbnNpdGlvbl9FZmZlY3QoKSI+PEI+Z2V0VHJhbnNpdGlvbl9FZmZlY3QoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRUcmFuc2l0aW9uX0VmZmVjdCgpIj48Qj5nZXRUcmFuc2l0aW9uX0VmZmVjdCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwjZ2V0RWZmZWN0KCkiPjxDT0RFPjxlbT5FZmZlY3Q8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFRyYW5zaXRpb25fR3VhcmQoKSI+PEI+Z2V0VHJhbnNpdGlvbl9HdWFyZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFRyYW5zaXRpb25fR3VhcmQoKSI+PEI+Z2V0VHJhbnNpdGlvbl9HdWFyZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwjZ2V0R3VhcmQoKSI+PENPREU+PGVtPkd1YXJkPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRUd2lzdCgpIj48Qj5nZXRUd2lzdCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Ud2lzdDwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRUd2lzdCgpIj48Qj5nZXRUd2lzdCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRUd2lzdFN0YW1wZWQoKSI+PEI+Z2V0VHdpc3RTdGFtcGVkKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlR3aXN0IFN0YW1wZWQ8L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0VHdpc3RTdGFtcGVkKCkiPjxCPmdldFR3aXN0U3RhbXBlZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRUd2lzdFdpdGhDb3ZhcmlhbmNlKCkiPjxCPmdldFR3aXN0V2l0aENvdmFyaWFuY2UoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+VHdpc3QgV2l0aCBDb3ZhcmlhbmNlPC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFR3aXN0V2l0aENvdmFyaWFuY2UoKSI+PEI+Z2V0VHdpc3RXaXRoQ292YXJpYW5jZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNnZXRUeXBlT2ZXaGVlbCgpIj48Qj5nZXRUeXBlT2ZXaGVlbCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5XaGVlbFN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFR5cGVPZldoZWVsKCkiPjxCPmdldFR5cGVPZldoZWVsKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5UeXBlIE9mIFdoZWVsPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0VTAoKSI+PEI+Z2V0VTAoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VTA8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCNnZXRVMCgpIj48Qj5nZXRVMCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q2FtZXJhU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmh0bWwjZ2V0VWd2S2luZCgpIj48Qj5nZXRVZ3ZLaW5kKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0VUdWS2luZCgpIj48Qj5nZXRVR1ZLaW5kKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjZ2V0VWd2S2luZCgpIj48Qj5nZXRVZ3ZLaW5kKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdDwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5VZ3YgS2luZDwvYj48L2VtPicgYXR0cmlidXRlLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFVHVktpbmQoKSI+PEI+Z2V0VUdWS2luZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGVudW0gJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlVHViBLaW5kPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFVJaW50MTZNdWx0aUFycmF5KCkiPjxCPmdldFVJaW50MTZNdWx0aUFycmF5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRVSWludDE2TXVsdGlBcnJheSgpIj48Qj5nZXRVSWludDE2TXVsdGlBcnJheSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlVJaW50MTYgTXVsdGkgQXJyYXk8L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRVSW50MTYoKSI+PEI+Z2V0VUludDE2KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRVSW50MTYoKSI+PEI+Z2V0VUludDE2KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+VUludDE2PC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0VUludDMyKCkiPjxCPmdldFVJbnQzMigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0VUludDMyKCkiPjxCPmdldFVJbnQzMigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlVJbnQzMjwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFVJbnQzMk11bHRpQXJyYXkoKSI+PEI+Z2V0VUludDMyTXVsdGlBcnJheSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0VUludDMyTXVsdGlBcnJheSgpIj48Qj5nZXRVSW50MzJNdWx0aUFycmF5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+VUludDMyIE11bHRpIEFycmF5PC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0VUludDY0KCkiPjxCPmdldFVJbnQ2NCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0VUludDY0KCkiPjxCPmdldFVJbnQ2NCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlVJbnQ2NDwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFVJbnQ2NE11bHRpQXJyYXkoKSI+PEI+Z2V0VUludDY0TXVsdGlBcnJheSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0VUludDY0TXVsdGlBcnJheSgpIj48Qj5nZXRVSW50NjRNdWx0aUFycmF5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+VUludDY0IE11bHRpIEFycmF5PC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0VUludDgoKSI+PEI+Z2V0VUludDgoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFVJbnQ4KCkiPjxCPmdldFVJbnQ4KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+VUludDg8L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRVSW50OE11bHRpQXJyYXkoKSI+PEI+Z2V0VUludDhNdWx0aUFycmF5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRVSW50OE11bHRpQXJyYXkoKSI+PEI+Z2V0VUludDhNdWx0aUFycmF5KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+VUludDggTXVsdGkgQXJyYXk8L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxEYXRhSW1wbC5odG1sI2dldFVuaXQoKSI+PEI+Z2V0VW5pdCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbERhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGh5c2ljYWxEYXRhSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sI2dldFVuaXQoKSI+PEI+Z2V0VW5pdCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsRGF0YTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Vbml0PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0VW5pdEtpbmQoKSI+PEI+Z2V0VW5pdEtpbmQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRVbml0S2luZCgpIj48Qj5nZXRVbml0S2luZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGVudW0gJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Vbml0IEtpbmQ8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRWMCgpIj48Qj5nZXRWMCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNhbWVyYVN5c3RlbTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5WMDwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sI2dldFYwKCkiPjxCPmdldFYwKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5DYW1lcmFTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwjZ2V0VmFsdWUoKSI+PEI+Z2V0VmFsdWUoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gZW51bSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93RGlyZWN0aW9uS2luZDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sI2dldFZhbHVlKCkiPjxCPmdldFZhbHVlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sI2dldFZhbHVlKCkiPjxCPmdldFZhbHVlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdEtpbmQ8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCNnZXRWYWx1ZSgpIj48Qj5nZXRWYWx1ZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZUZsb3dLaW5kPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCNnZXRWYWx1ZSgpIj48Qj5nZXRWYWx1ZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sI2dldFZhbHVlKCkiPjxCPmdldFZhbHVlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCNnZXRWYWx1ZSgpIj48Qj5nZXRWYWx1ZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVHVktpbmQ8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sI2dldFZhbHVlKCkiPjxCPmdldFZhbHVlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRWZWN0bzNTdGFtcGVkKCkiPjxCPmdldFZlY3RvM1N0YW1wZWQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+VmVjdG8zIFN0YW1wZWQ8L2VtPjwvQ09ERT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0VmVjdG8zU3RhbXBlZCgpIj48Qj5nZXRWZWN0bzNTdGFtcGVkKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFZlY3RvcjMoKSI+PEI+Z2V0VmVjdG9yMygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5WZWN0b3IzPC9lbT48L0NPREU+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFZlY3RvcjMoKSI+PEI+Z2V0VmVjdG9yMygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0VmVoaWNsZVRyYWN0aW9uKCkiPjxCPmdldFZlaGljbGVUcmFjdGlvbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVuZ2luZVN5c3RlbTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5WZWhpY2xlIFRyYWN0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwjZ2V0VmVoaWNsZVRyYWN0aW9uKCkiPjxCPmdldFZlaGljbGVUcmFjdGlvbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+RW5naW5lU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0V2F0ZXJTdXJmYWNlKCkiPjxCPmdldFdhdGVyU3VyZmFjZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2F0ZXJTdXJmYWNlKCkiPjxCPmdldFdhdGVyU3VyZmFjZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+V2F0ZXIgU3VyZmFjZTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwjZ2V0V2NldCgpIj48Qj5nZXRXY2V0KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNvZnR3YXJlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXRXY2V0KCkiPjxCPmdldFdjZXQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNvZnR3YXJlPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPldjZXQ8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI2dldFdoZWVsQ29ubmVjdGlvbkhlaWdodCgpIj48Qj5nZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2hlZWxTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQoKSI+PEI+Z2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5XaGVlbCBDb25uZWN0aW9uIEhlaWdodDwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjZ2V0V2hlZWxGcmljdGlvbigpIj48Qj5nZXRXaGVlbEZyaWN0aW9uKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPldoZWVsU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxGcmljdGlvbigpIj48Qj5nZXRXaGVlbEZyaWN0aW9uKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5XaGVlbCBGcmljdGlvbjwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjZ2V0V2hlZWxSYWRpdXMoKSI+PEI+Z2V0V2hlZWxSYWRpdXMoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2hlZWxTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFJhZGl1cygpIj48Qj5nZXRXaGVlbFJhZGl1cygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2hlZWwgUmFkaXVzPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNnZXRXaGVlbFN0ZWVyaW5nUElEa2QoKSI+PEI+Z2V0V2hlZWxTdGVlcmluZ1BJRGtkKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPldoZWVsU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxTdGVlcmluZ1BJRGtkKCkiPjxCPmdldFdoZWVsU3RlZXJpbmdQSURrZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2hlZWwgU3RlZXJpbmcgUEkgRGtkPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNnZXRXaGVlbFN0ZWVyaW5nUElEa3AoKSI+PEI+Z2V0V2hlZWxTdGVlcmluZ1BJRGtwKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPldoZWVsU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxTdGVlcmluZ1BJRGtwKCkiPjxCPmdldFdoZWVsU3RlZXJpbmdQSURrcCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2hlZWwgU3RlZXJpbmcgUEkgRGtwPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRXaGVlbFN5c3RlbSgpIj48Qj5nZXRXaGVlbFN5c3RlbSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtKCkiPjxCPmdldFdoZWVsU3lzdGVtKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPldoZWVsIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvbkNvbXByZXNzaW9uKCkiPjxCPmdldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25Db21wcmVzc2lvbigpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25Db21wcmVzc2lvbigpIj48Qj5nZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uQ29tcHJlc3Npb24oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRTdXNwZW5zaW9uQ29tcHJlc3Npb24oKSI+PENPREU+PGVtPlN1c3BlbnNpb24gQ29tcHJlc3Npb248L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25EYW1waW5nKCkiPjxCPmdldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25EYW1waW5nKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvbkRhbXBpbmcoKSI+PEI+Z2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvbkRhbXBpbmcoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRTdXNwZW5zaW9uRGFtcGluZygpIj48Q09ERT48ZW0+U3VzcGVuc2lvbiBEYW1waW5nPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uUmVzdExlbmd0aCgpIj48Qj5nZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uUmVzdExlbmd0aCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25SZXN0TGVuZ3RoKCkiPjxCPmdldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25SZXN0TGVuZ3RoKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0U3VzcGVuc2lvblJlc3RMZW5ndGgoKSI+PENPREU+PGVtPlN1c3BlbnNpb24gUmVzdCBMZW5ndGg8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25TdGlmZm5lc3MoKSI+PEI+Z2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvblN0aWZmbmVzcygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25TdGlmZm5lc3MoKSI+PEI+Z2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvblN0aWZmbmVzcygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25TdGlmZm5lc3MoKSI+PENPREU+PGVtPlN1c3BlbnNpb24gU3RpZmZuZXNzPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRXaGVlbFN5c3RlbV9UeXBlT2ZXaGVlbCgpIj48Qj5nZXRXaGVlbFN5c3RlbV9UeXBlT2ZXaGVlbCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1R5cGVPZldoZWVsKCkiPjxCPmdldFdoZWVsU3lzdGVtX1R5cGVPZldoZWVsKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0VHlwZU9mV2hlZWwoKSI+PENPREU+PGVtPlR5cGUgT2YgV2hlZWw8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFdoZWVsU3lzdGVtX1doZWVsQ29ubmVjdGlvbkhlaWdodCgpIj48Qj5nZXRXaGVlbFN5c3RlbV9XaGVlbENvbm5lY3Rpb25IZWlnaHQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRXaGVlbFN5c3RlbV9XaGVlbENvbm5lY3Rpb25IZWlnaHQoKSI+PEI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxDb25uZWN0aW9uSGVpZ2h0KCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0KCkiPjxDT0RFPjxlbT5XaGVlbCBDb25uZWN0aW9uIEhlaWdodDwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxGcmljdGlvbigpIj48Qj5nZXRXaGVlbFN5c3RlbV9XaGVlbEZyaWN0aW9uKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxGcmljdGlvbigpIj48Qj5nZXRXaGVlbFN5c3RlbV9XaGVlbEZyaWN0aW9uKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxGcmljdGlvbigpIj48Q09ERT48ZW0+V2hlZWwgRnJpY3Rpb248L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFdoZWVsU3lzdGVtX1doZWVsUmFkaXVzKCkiPjxCPmdldFdoZWVsU3lzdGVtX1doZWVsUmFkaXVzKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxSYWRpdXMoKSI+PEI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxSYWRpdXMoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFJhZGl1cygpIj48Q09ERT48ZW0+V2hlZWwgUmFkaXVzPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRXaGVlbFN5c3RlbV9XaGVlbFN0ZWVyaW5nUElEa2QoKSI+PEI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxTdGVlcmluZ1BJRGtkKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxTdGVlcmluZ1BJRGtkKCkiPjxCPmdldFdoZWVsU3lzdGVtX1doZWVsU3RlZXJpbmdQSURrZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsU3RlZXJpbmdQSURrZCgpIj48Q09ERT48ZW0+V2hlZWwgU3RlZXJpbmcgUEkgRGtkPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRXaGVlbFN5c3RlbV9XaGVlbFN0ZWVyaW5nUElEa3AoKSI+PEI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxTdGVlcmluZ1BJRGtwKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxTdGVlcmluZ1BJRGtwKCkiPjxCPmdldFdoZWVsU3lzdGVtX1doZWVsU3RlZXJpbmdQSURrcCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsU3RlZXJpbmdQSURrcCgpIj48Q09ERT48ZW0+V2hlZWwgU3RlZXJpbmcgUEkgRGtwPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEa2QoKSI+PEI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtkKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtkKCkiPjxCPmdldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURrZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURrZCgpIj48Q09ERT48ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtkPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEa2koKSI+PEI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtpKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtpKCkiPjxCPmdldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURraSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURraSgpIj48Q09ERT48ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtpPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEa3AoKSI+PEI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtwKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtwKCkiPjxCPmdldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURrcCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURrcCgpIj48Q09ERT48ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtwPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4U3VtKCkiPjxCPmdldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURtYXhTdW0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTFBhY2thZ2VJbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4U3VtKCkiPjxCPmdldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURtYXhTdW0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtKCkiPjxDT0RFPjxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEbWF4IFN1bTwvZW0+PC9DT0RFPjwvQT4nCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRG1heFZhbCgpIj48Qj5nZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4VmFsKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRG1heFZhbCgpIj48Qj5nZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4VmFsKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbCgpIj48Q09ERT48ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRG1heCBWYWw8L2VtPjwvQ09ERT48L0E+JworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFdoZWVsU3lzdGVtX1doZWVsV2lkdGgoKSI+PEI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxXaWR0aCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1doZWVsV2lkdGgoKSI+PEI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxXaWR0aCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsV2lkdGgoKSI+PENPREU+PGVtPldoZWVsIFdpZHRoPC9lbT48L0NPREU+PC9BPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEa2QoKSI+PEI+Z2V0V2hlZWxWZWxvY2l0eVBJRGtkKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPldoZWVsU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRGtkKCkiPjxCPmdldFdoZWVsVmVsb2NpdHlQSURrZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRGtkPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEa2koKSI+PEI+Z2V0V2hlZWxWZWxvY2l0eVBJRGtpKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPldoZWVsU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRGtpKCkiPjxCPmdldFdoZWVsVmVsb2NpdHlQSURraSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRGtpPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEa3AoKSI+PEI+Z2V0V2hlZWxWZWxvY2l0eVBJRGtwKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPldoZWVsU3lzdGVtSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRGtwKCkiPjxCPmdldFdoZWVsVmVsb2NpdHlQSURrcCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRGtwPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtKCkiPjxCPmdldFdoZWVsVmVsb2NpdHlQSURtYXhTdW0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2hlZWxTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtKCkiPjxCPmdldFdoZWVsVmVsb2NpdHlQSURtYXhTdW0oKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPldoZWVsIFZlbG9jaXR5IFBJIERtYXggU3VtPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEbWF4VmFsKCkiPjxCPmdldFdoZWVsVmVsb2NpdHlQSURtYXhWYWwoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2hlZWxTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEbWF4VmFsKCkiPjxCPmdldFdoZWVsVmVsb2NpdHlQSURtYXhWYWwoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPldoZWVsIFZlbG9jaXR5IFBJIERtYXggVmFsPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNnZXRXaGVlbFdpZHRoKCkiPjxCPmdldFdoZWVsV2lkdGgoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2hlZWxTeXN0ZW1JbXBsPC9BPgorPEREPi4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFdpZHRoKCkiPjxCPmdldFdoZWVsV2lkdGgoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPldoZWVsIFdpZHRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0V2lkdGgoKSI+PEI+Z2V0V2lkdGgoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2lkdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwjZ2V0V2lkdGgoKSI+PEI+Z2V0V2lkdGgoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkNhbWVyYVN5c3RlbUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sI2dldFdpZHRoKCkiPjxCPmdldFdpZHRoKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90SW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjZ2V0V2lkdGgoKSI+PEI+Z2V0V2lkdGgoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90PC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPldpZHRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRXcmVuY2goKSI+PEI+Z2V0V3JlbmNoKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPldyZW5jaDwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRXcmVuY2goKSI+PEI+Z2V0V3JlbmNoKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFdyZW5jaFN0YW1wZWQoKSI+PEI+Z2V0V3JlbmNoU3RhbXBlZCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5XcmVuY2ggU3RhbXBlZDwvZW0+PC9DT0RFPicKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRXcmVuY2hTdGFtcGVkKCkiPjxCPmdldFdyZW5jaFN0YW1wZWQoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD4uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNHT0FMX0lEIj48Qj5HT0FMX0lEPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Hb2FsIElEPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjR09BTF9JRCI+PEI+R09BTF9JRDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Hb2FsIElEPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjR09BTF9TVEFUVVMiPjxCPkdPQUxfU1RBVFVTPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Hb2FsIFN0YXR1czwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI0dPQUxfU1RBVFVTIj48Qj5HT0FMX1NUQVRVUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Hb2FsIFN0YXR1czwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sI0dPQUxfU1RBVFVTX0FSUkFZIj48Qj5HT0FMX1NUQVRVU19BUlJBWTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+R29hbCBTdGF0dXMgQXJyYXk8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNHT0FMX1NUQVRVU19BUlJBWSI+PEI+R09BTF9TVEFUVVNfQVJSQVk8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+R29hbCBTdGF0dXMgQXJyYXk8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjR1BTX1NZU1RFTSI+PEI+R1BTX1NZU1RFTTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HUFNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkdQUyBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0dQU19TWVNURU0iPjxCPkdQU19TWVNURU08L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HUFNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkdQUyBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0dQU19TWVNURU1fX0JBU0VfQ0xBU1MiPjxCPkdQU19TWVNURU1fX0JBU0VfQ0xBU1M8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjR1BTX1NZU1RFTV9fRlJFUVVFTkNZIj48Qj5HUFNfU1lTVEVNX19GUkVRVUVOQ1k8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RnJlcXVlbmN5PC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNHUFNfU1lTVEVNX19JREVOVElGSUVSIj48Qj5HUFNfU1lTVEVNX19JREVOVElGSUVSPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPklkZW50aWZpZXI8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0dQU19TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj48Qj5HUFNfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjR1BTX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPjxCPkdQU19TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIFBvc2l0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNHUFNfU1lTVEVNX19PUklHSU5fUE9TSVRJT04iPjxCPkdQU19TWVNURU1fX09SSUdJTl9QT1NJVElPTjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5PcmlnaW4gUG9zaXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0dQU19TWVNURU1fX09SSUdJTl9QT1NJVElPTiI+PEI+R1BTX1NZU1RFTV9fT1JJR0lOX1BPU0lUSU9OPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPk9yaWdpbiBQb3NpdGlvbjwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNHUFNfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPjxCPkdQU19TWVNURU1fRkVBVFVSRV9DT1VOVDwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5HUFMgU3lzdGVtPC9lbT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R1BTU3lzdGVtPC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkdQUyBTeXN0ZW08L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dQU1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5HUFNTeXN0ZW1JbXBsPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PEREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5HUFMgU3lzdGVtPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sI0dSSURfQ0VMTFMiPjxCPkdSSURfQ0VMTFM8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkdyaWQgQ2VsbHM8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNHUklEX0NFTExTIj48Qj5HUklEX0NFTExTPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkdyaWQgQ2VsbHM8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R3JvdW5kPC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkdyb3VuZDwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjR1JPVU5EIj48Qj5HUk9VTkQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR3JvdW5kSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5Hcm91bmQ8L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0dST1VORCI+PEI+R1JPVU5EPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR3JvdW5kSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5Hcm91bmQ8L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0dST1VORF9fQkFTRV9DTEFTUyI+PEI+R1JPVU5EX19CQVNFX0NMQVNTPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0dST1VORF9fRVZFTE9WRVNfSU4iPjxCPkdST1VORF9fRVZFTE9WRVNfSU48L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RXZlbG92ZXMgSW48L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjR1JPVU5EX19IQVNfU1VSRkFDRSI+PEI+R1JPVU5EX19IQVNfU1VSRkFDRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IYXMgU3VyZmFjZTwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjR1JPVU5EX0ZFQVRVUkVfQ09VTlQiPjxCPkdST1VORF9GRUFUVVJFX0NPVU5UPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkdyb3VuZDwvZW0+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dyb3VuZEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Hcm91bmRJbXBsPC9CPjwvQT4gLSBDbGFzcyBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PEREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Hcm91bmQ8L2I+PC9lbT4nPC9ETD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+SW5kZXg8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9ImluZGV4LTYuaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtOC5odG1sIj48Qj5ORVhUIExFVFRFUjwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtNy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTcuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+QjwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5DPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+RTwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5KPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5LPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5MPC9BPiA8QSBIUkVGPSJpbmRleC0xMy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC0xNC5odG1sIj5OPC9BPiA8QSBIUkVGPSJpbmRleC0xNS5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC0xNi5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xNy5odG1sIj5RPC9BPiA8QSBIUkVGPSJpbmRleC0xOC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xOS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0yMC5odG1sIj5UPC9BPiA8QSBIUkVGPSJpbmRleC0yMS5odG1sIj5VPC9BPiA8QSBIUkVGPSJpbmRleC0yMi5odG1sIj5WPC9BPiA8QSBIUkVGPSJpbmRleC0yMy5odG1sIj5XPC9BPiA8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtOC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC1maWxlcy9pbmRleC04Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGQ2M2I3MwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtOC5odG1sCkBAIC0wLDAgKzEsMTc3IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzMgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitILUluZGV4Cis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iSC1JbmRleCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtNy5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC05Lmh0bWwiPjxCPk5FWFQgTEVUVEVSPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uL2luZGV4Lmh0bWw/aW5kZXgtZmlsZXNpbmRleC04Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtOC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxBIEhSRUY9ImluZGV4LTEuaHRtbCI+QTwvQT4gPEEgSFJFRj0iaW5kZXgtMi5odG1sIj5CPC9BPiA8QSBIUkVGPSJpbmRleC0zLmh0bWwiPkM8L0E+IDxBIEhSRUY9ImluZGV4LTQuaHRtbCI+RDwvQT4gPEEgSFJFRj0iaW5kZXgtNS5odG1sIj5FPC9BPiA8QSBIUkVGPSJpbmRleC02Lmh0bWwiPkY8L0E+IDxBIEhSRUY9ImluZGV4LTcuaHRtbCI+RzwvQT4gPEEgSFJFRj0iaW5kZXgtOC5odG1sIj5IPC9BPiA8QSBIUkVGPSJpbmRleC05Lmh0bWwiPkk8L0E+IDxBIEhSRUY9ImluZGV4LTEwLmh0bWwiPko8L0E+IDxBIEhSRUY9ImluZGV4LTExLmh0bWwiPks8L0E+IDxBIEhSRUY9ImluZGV4LTEyLmh0bWwiPkw8L0E+IDxBIEhSRUY9ImluZGV4LTEzLmh0bWwiPk08L0E+IDxBIEhSRUY9ImluZGV4LTE0Lmh0bWwiPk48L0E+IDxBIEhSRUY9ImluZGV4LTE1Lmh0bWwiPk88L0E+IDxBIEhSRUY9ImluZGV4LTE2Lmh0bWwiPlA8L0E+IDxBIEhSRUY9ImluZGV4LTE3Lmh0bWwiPlE8L0E+IDxBIEhSRUY9ImluZGV4LTE4Lmh0bWwiPlI8L0E+IDxBIEhSRUY9ImluZGV4LTE5Lmh0bWwiPlM8L0E+IDxBIEhSRUY9ImluZGV4LTIwLmh0bWwiPlQ8L0E+IDxBIEhSRUY9ImluZGV4LTIxLmh0bWwiPlU8L0E+IDxBIEhSRUY9ImluZGV4LTIyLmh0bWwiPlY8L0E+IDxBIEhSRUY9ImluZGV4LTIzLmh0bWwiPlc8L0E+IDxIUj4KKzxBIE5BTUU9Il9IXyI+PCEtLSAtLT48L0E+PEgyPgorPEI+SDwvQj48L0gyPgorPERMPgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IYXJkd2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+SGFyZHdhcmU8L0I+PC9BPiAtIEludGVyZmFjZSBpbiA8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48REQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SGFyZHdhcmU8L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0hBUkRXQVJFIj48Qj5IQVJEV0FSRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IYXJkd2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+SGFyZHdhcmU8L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0hBUkRXQVJFIj48Qj5IQVJEV0FSRTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0hhcmR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5IYXJkd2FyZTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjSEFSRFdBUkVfX0JBU0VfQ0xBU1MiPjxCPkhBUkRXQVJFX19CQVNFX0NMQVNTPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0hBUkRXQVJFX0ZFQVRVUkVfQ09VTlQiPjxCPkhBUkRXQVJFX0ZFQVRVUkVfQ09VTlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+SGFyZHdhcmU8L2VtPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IYXJkd2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5IYXJkd2FyZUltcGw8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48REQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkhhcmR3YXJlPC9iPjwvZW0+JzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0hFQURFUiI+PEI+SEVBREVSPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5IZWFkZXI8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNIRUFERVIiPjxCPkhFQURFUjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5IZWFkZXI8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5IdW1hbjwvQj48L0E+IC0gSW50ZXJmYWNlIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjxERD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5IdW1hbjwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjSFVNQU4iPjxCPkhVTUFOPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0h1bWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5IdW1hbjwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjSFVNQU4iPjxCPkhVTUFOPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSHVtYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkh1bWFuPC9lbT48L0NPREU+PC9BPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNIVU1BTl9fQkFTRV9DTEFTUyI+PEI+SFVNQU5fX0JBU0VfQ0xBU1M8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjSFVNQU5fX0VWRUxPVkVTX0lOIj48Qj5IVU1BTl9fRVZFTE9WRVNfSU48L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RXZlbG92ZXMgSW48L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjSFVNQU5fX0hBU19TVVJGQUNFIj48Qj5IVU1BTl9fSEFTX1NVUkZBQ0U8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGFzIFN1cmZhY2U8L2I+PC9lbT4nIHJlZmVyZW5jZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0hVTUFOX19NT1ZFU19PVkVSIj48Qj5IVU1BTl9fTU9WRVNfT1ZFUjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Nb3ZlcyBPdmVyPC9iPjwvZW0+JyByZWZlcmVuY2UgbGlzdAorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0hVTUFOX0ZFQVRVUkVfQ09VTlQiPjxCPkhVTUFOX0ZFQVRVUkVfQ09VTlQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+SHVtYW48L2VtPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IdW1hbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5IdW1hbkltcGw8L0I+PC9BPiAtIENsYXNzIGluIDxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48REQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkh1bWFuPC9iPjwvZW0+JzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkluZGV4PC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSJpbmRleC03Lmh0bWwiPjxCPlBSRVYgTEVUVEVSPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTkuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTguaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC04Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEEgSFJFRj0iaW5kZXgtMS5odG1sIj5BPC9BPiA8QSBIUkVGPSJpbmRleC0yLmh0bWwiPkI8L0E+IDxBIEhSRUY9ImluZGV4LTMuaHRtbCI+QzwvQT4gPEEgSFJFRj0iaW5kZXgtNC5odG1sIj5EPC9BPiA8QSBIUkVGPSJpbmRleC01Lmh0bWwiPkU8L0E+IDxBIEhSRUY9ImluZGV4LTYuaHRtbCI+RjwvQT4gPEEgSFJFRj0iaW5kZXgtNy5odG1sIj5HPC9BPiA8QSBIUkVGPSJpbmRleC04Lmh0bWwiPkg8L0E+IDxBIEhSRUY9ImluZGV4LTkuaHRtbCI+STwvQT4gPEEgSFJFRj0iaW5kZXgtMTAuaHRtbCI+SjwvQT4gPEEgSFJFRj0iaW5kZXgtMTEuaHRtbCI+SzwvQT4gPEEgSFJFRj0iaW5kZXgtMTIuaHRtbCI+TDwvQT4gPEEgSFJFRj0iaW5kZXgtMTMuaHRtbCI+TTwvQT4gPEEgSFJFRj0iaW5kZXgtMTQuaHRtbCI+TjwvQT4gPEEgSFJFRj0iaW5kZXgtMTUuaHRtbCI+TzwvQT4gPEEgSFJFRj0iaW5kZXgtMTYuaHRtbCI+UDwvQT4gPEEgSFJFRj0iaW5kZXgtMTcuaHRtbCI+UTwvQT4gPEEgSFJFRj0iaW5kZXgtMTguaHRtbCI+UjwvQT4gPEEgSFJFRj0iaW5kZXgtMTkuaHRtbCI+UzwvQT4gPEEgSFJFRj0iaW5kZXgtMjAuaHRtbCI+VDwvQT4gPEEgSFJFRj0iaW5kZXgtMjEuaHRtbCI+VTwvQT4gPEEgSFJFRj0iaW5kZXgtMjIuaHRtbCI+VjwvQT4gPEEgSFJFRj0iaW5kZXgtMjMuaHRtbCI+VzwvQT4gPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2luZGV4LWZpbGVzL2luZGV4LTkuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXgtZmlsZXMvaW5kZXgtOS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRkMzU2MjAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL2luZGV4LWZpbGVzL2luZGV4LTkuaHRtbApAQCAtMCwwICsxLDMyNCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMzIENFVCAyMDEyIC0tPgorPFRJVExFPgorSS1JbmRleAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkktSW5kZXgiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9vdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+SW5kZXg8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9ImluZGV4LTguaHRtbCI+PEI+UFJFViBMRVRURVI8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iaW5kZXgtMTAuaHRtbCI+PEI+TkVYVCBMRVRURVI8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vaW5kZXguaHRtbD9pbmRleC1maWxlc2luZGV4LTkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC05Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEEgSFJFRj0iaW5kZXgtMS5odG1sIj5BPC9BPiA8QSBIUkVGPSJpbmRleC0yLmh0bWwiPkI8L0E+IDxBIEhSRUY9ImluZGV4LTMuaHRtbCI+QzwvQT4gPEEgSFJFRj0iaW5kZXgtNC5odG1sIj5EPC9BPiA8QSBIUkVGPSJpbmRleC01Lmh0bWwiPkU8L0E+IDxBIEhSRUY9ImluZGV4LTYuaHRtbCI+RjwvQT4gPEEgSFJFRj0iaW5kZXgtNy5odG1sIj5HPC9BPiA8QSBIUkVGPSJpbmRleC04Lmh0bWwiPkg8L0E+IDxBIEhSRUY9ImluZGV4LTkuaHRtbCI+STwvQT4gPEEgSFJFRj0iaW5kZXgtMTAuaHRtbCI+SjwvQT4gPEEgSFJFRj0iaW5kZXgtMTEuaHRtbCI+SzwvQT4gPEEgSFJFRj0iaW5kZXgtMTIuaHRtbCI+TDwvQT4gPEEgSFJFRj0iaW5kZXgtMTMuaHRtbCI+TTwvQT4gPEEgSFJFRj0iaW5kZXgtMTQuaHRtbCI+TjwvQT4gPEEgSFJFRj0iaW5kZXgtMTUuaHRtbCI+TzwvQT4gPEEgSFJFRj0iaW5kZXgtMTYuaHRtbCI+UDwvQT4gPEEgSFJFRj0iaW5kZXgtMTcuaHRtbCI+UTwvQT4gPEEgSFJFRj0iaW5kZXgtMTguaHRtbCI+UjwvQT4gPEEgSFJFRj0iaW5kZXgtMTkuaHRtbCI+UzwvQT4gPEEgSFJFRj0iaW5kZXgtMjAuaHRtbCI+VDwvQT4gPEEgSFJFRj0iaW5kZXgtMjEuaHRtbCI+VTwvQT4gPEEgSFJFRj0iaW5kZXgtMjIuaHRtbCI+VjwvQT4gPEEgSFJFRj0iaW5kZXgtMjMuaHRtbCI+VzwvQT4gPEhSPgorPEEgTkFNRT0iX0lfIj48IS0tIC0tPjwvQT48SDI+Cis8Qj5JPC9CPjwvSDI+Cis8REw+Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNJTUFHRSI+PEI+SU1BR0U8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkltYWdlPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjSU1BR0UiPjxCPklNQUdFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkltYWdlPC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0lNQUdFX1NFTlNPUl9TWVNURU0iPjxCPklNQUdFX1NFTlNPUl9TWVNURU08L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkltYWdlIFNlbnNvciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzcworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0lNQUdFX1NFTlNPUl9TWVNURU0iPjxCPklNQUdFX1NFTlNPUl9TWVNURU08L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9JbWFnZVNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+SW1hZ2UgU2Vuc29yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjSU1BR0VfU0VOU09SX1NZU1RFTV9fQkFTRV9DTEFTUyI+PEI+SU1BR0VfU0VOU09SX1NZU1RFTV9fQkFTRV9DTEFTUzwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNJTUFHRV9TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1kiPjxCPklNQUdFX1NFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5GcmVxdWVuY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0lNQUdFX1NFTlNPUl9TWVNURU1fX0lERU5USUZJRVIiPjxCPklNQUdFX1NFTlNPUl9TWVNURU1fX0lERU5USUZJRVI8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SWRlbnRpZmllcjwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjSU1BR0VfU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPjxCPklNQUdFX1NFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIE9yaWVudGF0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNJTUFHRV9TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+PEI+SU1BR0VfU0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT048L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgUG9zaXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0lNQUdFX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCI+PEI+SU1BR0VfU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkltYWdlIFNlbnNvciBTeXN0ZW08L2VtPicgY2xhc3MKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkltYWdlU2Vuc29yU3lzdGVtPC9CPjwvQT4gLSBJbnRlcmZhY2UgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PEREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkltYWdlIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0ltYWdlU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkltYWdlU2Vuc29yU3lzdGVtSW1wbDwvQj48L0E+IC0gQ2xhc3MgaW4gPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjxERD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SW1hZ2UgU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNJTVUiPjxCPklNVTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+SW11PC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjSU1VIj48Qj5JTVU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+SW11PC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCNJTl9WQUxVRSI+PEI+SU5fVkFMVUU8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGVudW0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0E+Cis8REQ+VGhlICc8ZW0+PGI+SW48L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCNJTkNIX1ZBTFVFIj48Qj5JTkNIX1ZBTFVFPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBlbnVtIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Vbml0S2luZDwvQT4KKzxERD5UaGUgJzxlbT48Yj5JbmNoPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNpbml0KCkiPjxCPmluaXQoKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwiPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD5DcmVhdGVzIHRoZSBkZWZhdWx0IGZhY3RvcnkgaW1wbGVtZW50YXRpb24KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2luaXQoKSI+PEI+aW5pdCgpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbCI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPkNyZWF0ZXMsIHJlZ2lzdGVycywgYW5kIGluaXRpYWxpemVzIHRoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhpcyBtb2RlbCwgYW5kIGZvciBhbnkgb3RoZXJzIHVwb24gd2hpY2ggaXQgZGVwZW5kcy4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjaW5pdCgpIj48Qj5pbml0KCk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbCI+RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD5DcmVhdGVzIHRoZSBkZWZhdWx0IGZhY3RvcnkgaW1wbGVtZW50YXRpb24KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjaW5pdCgpIj48Qj5pbml0KCk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbCI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD5DcmVhdGVzLCByZWdpc3RlcnMsIGFuZCBpbml0aWFsaXplcyB0aGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoaXMgbW9kZWwsIGFuZCBmb3IgYW55IG90aGVycyB1cG9uIHdoaWNoIGl0IGRlcGVuZHMuCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjaW5pdCgpIj48Qj5pbml0KCk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPkNyZWF0ZXMgdGhlIGRlZmF1bHQgZmFjdG9yeSBpbXBsZW1lbnRhdGlvbgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2luaXQoKSI+PEI+aW5pdCgpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD5DcmVhdGVzLCByZWdpc3RlcnMsIGFuZCBpbml0aWFsaXplcyB0aGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoaXMgbW9kZWwsIGFuZCBmb3IgYW55IG90aGVycyB1cG9uIHdoaWNoIGl0IGRlcGVuZHMuCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNpbml0KCkiPjxCPmluaXQoKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiPk5hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxERD5DcmVhdGVzIHRoZSBkZWZhdWx0IGZhY3RvcnkgaW1wbGVtZW50YXRpb24KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2luaXQoKSI+PEI+aW5pdCgpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbCI+TmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPgorPEREPkNyZWF0ZXMsIHJlZ2lzdGVycywgYW5kIGluaXRpYWxpemVzIHRoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhpcyBtb2RlbCwgYW5kIGZvciBhbnkgb3RoZXJzIHVwb24gd2hpY2ggaXQgZGVwZW5kcy4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2luaXQoKSI+PEI+aW5pdCgpPC9CPjwvQT4gLSAKK1N0YXRpYyBtZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEREPkNyZWF0ZXMgdGhlIGRlZmF1bHQgZmFjdG9yeSBpbXBsZW1lbnRhdGlvbgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjaW5pdCgpIj48Qj5pbml0KCk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+Q3JlYXRlcywgcmVnaXN0ZXJzLCBhbmQgaW5pdGlhbGl6ZXMgdGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGlzIG1vZGVsLCBhbmQgZm9yIGFueSBvdGhlcnMgdXBvbiB3aGljaCBpdCBkZXBlbmRzLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjaW5pdCgpIj48Qj5pbml0KCk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+Cis8REQ+Q3JlYXRlcyB0aGUgZGVmYXVsdCBmYWN0b3J5IGltcGxlbWVudGF0aW9uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNpbml0KCkiPjxCPmluaXQoKTwvQj48L0E+IC0gCitTdGF0aWMgbWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD5DcmVhdGVzLCByZWdpc3RlcnMsIGFuZCBpbml0aWFsaXplcyB0aGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoaXMgbW9kZWwsIGFuZCBmb3IgYW55IG90aGVycyB1cG9uIHdoaWNoIGl0IGRlcGVuZHMuCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjaW5pdCgpIj48Qj5pbml0KCk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8REQ+Q3JlYXRlcyB0aGUgZGVmYXVsdCBmYWN0b3J5IGltcGxlbWVudGF0aW9uCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjaW5pdCgpIj48Qj5pbml0KCk8L0I+PC9BPiAtIAorU3RhdGljIG1ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+Q3JlYXRlcywgcmVnaXN0ZXJzLCBhbmQgaW5pdGlhbGl6ZXMgdGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGlzIG1vZGVsLCBhbmQgZm9yIGFueSBvdGhlcnMgdXBvbiB3aGljaCBpdCBkZXBlbmRzLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpIj48Qj5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwiPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD5Db21wbGV0ZSB0aGUgaW5pdGlhbGl6YXRpb24gb2YgdGhlIHBhY2thZ2UgYW5kIGl0cyBtZXRhLW1vZGVsLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNpbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCkiPjxCPmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwiPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+Cis8REQ+Q29tcGxldGUgdGhlIGluaXRpYWxpemF0aW9uIG9mIHRoZSBwYWNrYWdlIGFuZCBpdHMgbWV0YS1tb2RlbC4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNpbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCkiPjxCPmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD5Db21wbGV0ZSB0aGUgaW5pdGlhbGl6YXRpb24gb2YgdGhlIHBhY2thZ2UgYW5kIGl0cyBtZXRhLW1vZGVsLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpIj48Qj5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiPk5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD5Db21wbGV0ZSB0aGUgaW5pdGlhbGl6YXRpb24gb2YgdGhlIHBhY2thZ2UgYW5kIGl0cyBtZXRhLW1vZGVsLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpIj48Qj5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD5Db21wbGV0ZSB0aGUgaW5pdGlhbGl6YXRpb24gb2YgdGhlIHBhY2thZ2UgYW5kIGl0cyBtZXRhLW1vZGVsLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpIj48Qj5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT4KKzxERD5Db21wbGV0ZSB0aGUgaW5pdGlhbGl6YXRpb24gb2YgdGhlIHBhY2thZ2UgYW5kIGl0cyBtZXRhLW1vZGVsLgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2luaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKSI+PEI+aW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MUGFja2FnZUltcGw8L0E+Cis8REQ+Q29tcGxldGUgdGhlIGluaXRpYWxpemF0aW9uIG9mIHRoZSBwYWNrYWdlIGFuZCBpdHMgbWV0YS1tb2RlbC4KKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0lOVDE2Ij48Qj5JTlQxNjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+SW50MTY8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNJTlQxNiI+PEI+SU5UMTY8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+SW50MTY8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNJTlQxNl9NVUxUSV9BUlJBWSI+PEI+SU5UMTZfTVVMVElfQVJSQVk8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkludDE2IE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjSU5UMTZfTVVMVElfQVJSQVkiPjxCPklOVDE2X01VTFRJX0FSUkFZPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkludDE2IE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjSU5UMzIiPjxCPklOVDMyPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5JbnQzMjwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI0lOVDMyIj48Qj5JTlQzMjwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5JbnQzMjwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0lOVDMyX01VTFRJX0FSUkFZIj48Qj5JTlQzMl9NVUxUSV9BUlJBWTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+SW50MzIgTXVsdGkgQXJyYXk8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNJTlQzMl9NVUxUSV9BUlJBWSI+PEI+SU5UMzJfTVVMVElfQVJSQVk8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+SW50MzIgTXVsdGkgQXJyYXk8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNJTlQ2NCI+PEI+SU5UNjQ8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkludDY0PC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjSU5UNjQiPjxCPklOVDY0PC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkludDY0PC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjSU5UNjRfTVVMVElfQVJSQVkiPjxCPklOVDY0X01VTFRJX0FSUkFZPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5JbnQ2NCBNdWx0aSBBcnJheTwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI0lOVDY0X01VTFRJX0FSUkFZIj48Qj5JTlQ2NF9NVUxUSV9BUlJBWTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5JbnQ2NCBNdWx0aSBBcnJheTwvZW0+JyBkYXRhIHR5cGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0lOVDgiPjxCPklOVDg8L0I+PC9BPiAtIAorU3RhdGljIHZhcmlhYmxlIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkludDg8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNJTlQ4Ij48Qj5JTlQ4PC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkludDg8L2VtPicgZGF0YSB0eXBlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNJTlQ4X01VTFRJX0FSUkFZIj48Qj5JTlQ4X01VTFRJX0FSUkFZPC9CPjwvQT4gLSAKK1N0YXRpYyB2YXJpYWJsZSBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5JbnQ4IE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjSU5UOF9NVUxUSV9BUlJBWSI+PEI+SU5UOF9NVUxUSV9BUlJBWTwvQj48L0E+IC0gCitTdGF0aWMgdmFyaWFibGUgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5JbnQ4IE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNpc0RlYnVnRGlzcGxheSgpIj48Qj5pc0RlYnVnRGlzcGxheSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJsZW5kZXJNb3JzZTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5EZWJ1ZyBEaXNwbGF5PC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwjaXNEZWJ1Z0Rpc3BsYXkoKSI+PEI+aXNEZWJ1Z0Rpc3BsYXkoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkJsZW5kZXJNb3JzZUltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sI2lzRGVidWdNb2RlKCkiPjxCPmlzRGVidWdNb2RlKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QmxlbmRlck1vcnNlPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkRlYnVnIE1vZGU8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCNpc0RlYnVnTW9kZSgpIj48Qj5pc0RlYnVnTW9kZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QmxlbmRlck1vcnNlSW1wbDwvQT4KKzxERD4mbmJzcDsKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNpc0ZhY3RvcnlGb3JUeXBlKGphdmEubGFuZy5PYmplY3QpIj48Qj5pc0ZhY3RvcnlGb3JUeXBlKE9iamVjdCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxBZGFwdGVyRmFjdG9yeTwvQT4KKzxERD5SZXR1cm5zIHdoZXRoZXIgdGhpcyBmYWN0b3J5IGlzIGFwcGxpY2FibGUgZm9yIHRoZSB0eXBlIG9mIHRoZSBvYmplY3QKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwjaXNJc0V4dGVybmFsKCkiPjxCPmlzSXNFeHRlcm5hbCgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5JcyBFeHRlcm5hbDwvYj48L2VtPicgYXR0cmlidXRlCis8RFQ+PEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sI2lzSXNFeHRlcm5hbCgpIj48Qj5pc0lzRXh0ZXJuYWwoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFsZ29yaXRobUltcGw8L0E+Cis8REQ+LgorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sI2lzSXNQZXJpb2RpYygpIj48Qj5pc0lzUGVyaW9kaWMoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U29mdHdhcmVJbXBsPC9BPgorPEREPiZuYnNwOworPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2lzSXNQZXJpb2RpYygpIj48Qj5pc0lzUGVyaW9kaWMoKTwvQj48L0E+IC0gCitNZXRob2QgaW4gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNvZnR3YXJlPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPklzIFBlcmlvZGljPC9iPjwvZW0+JyBhdHRyaWJ1dGUKKzxEVD48QSBIUkVGPSIuLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sI2lzVXNlUmVhbFRpbWUoKSI+PEI+aXNVc2VSZWFsVGltZSgpPC9CPjwvQT4gLSAKK01ldGhvZCBpbiBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DeWNhYlRLPC9BPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlVzZSBSZWFsIFRpbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZQorPERUPjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwjaXNVc2VSZWFsVGltZSgpIj48Qj5pc1VzZVJlYWxUaW1lKCk8L0I+PC9BPiAtIAorTWV0aG9kIGluIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q3ljYWJUS0ltcGw8L0E+Cis8REQ+Jm5ic3A7Cis8L0RMPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5JbmRleDwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iaW5kZXgtOC5odG1sIj48Qj5QUkVWIExFVFRFUjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSJpbmRleC0xMC5odG1sIj48Qj5ORVhUIExFVFRFUjwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi9pbmRleC5odG1sP2luZGV4LWZpbGVzaW5kZXgtOS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9ImluZGV4LTkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8QSBIUkVGPSJpbmRleC0xLmh0bWwiPkE8L0E+IDxBIEhSRUY9ImluZGV4LTIuaHRtbCI+QjwvQT4gPEEgSFJFRj0iaW5kZXgtMy5odG1sIj5DPC9BPiA8QSBIUkVGPSJpbmRleC00Lmh0bWwiPkQ8L0E+IDxBIEhSRUY9ImluZGV4LTUuaHRtbCI+RTwvQT4gPEEgSFJFRj0iaW5kZXgtNi5odG1sIj5GPC9BPiA8QSBIUkVGPSJpbmRleC03Lmh0bWwiPkc8L0E+IDxBIEhSRUY9ImluZGV4LTguaHRtbCI+SDwvQT4gPEEgSFJFRj0iaW5kZXgtOS5odG1sIj5JPC9BPiA8QSBIUkVGPSJpbmRleC0xMC5odG1sIj5KPC9BPiA8QSBIUkVGPSJpbmRleC0xMS5odG1sIj5LPC9BPiA8QSBIUkVGPSJpbmRleC0xMi5odG1sIj5MPC9BPiA8QSBIUkVGPSJpbmRleC0xMy5odG1sIj5NPC9BPiA8QSBIUkVGPSJpbmRleC0xNC5odG1sIj5OPC9BPiA8QSBIUkVGPSJpbmRleC0xNS5odG1sIj5PPC9BPiA8QSBIUkVGPSJpbmRleC0xNi5odG1sIj5QPC9BPiA8QSBIUkVGPSJpbmRleC0xNy5odG1sIj5RPC9BPiA8QSBIUkVGPSJpbmRleC0xOC5odG1sIj5SPC9BPiA8QSBIUkVGPSJpbmRleC0xOS5odG1sIj5TPC9BPiA8QSBIUkVGPSJpbmRleC0yMC5odG1sIj5UPC9BPiA8QSBIUkVGPSJpbmRleC0yMS5odG1sIj5VPC9BPiA8QSBIUkVGPSJpbmRleC0yMi5odG1sIj5WPC9BPiA8QSBIUkVGPSJpbmRleC0yMy5odG1sIj5XPC9BPiA8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXguaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvaW5kZXguaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NGNhZTE0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9pbmRleC5odG1sCkBAIC0wLDAgKzEsMzkgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIEZyYW1lc2V0Ly9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2ZyYW1lc2V0LmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2Mgb24gV2VkIEZlYiAyOSAxMzo1OTozMyBDRVQgMjAxMi0tPgorPFRJVExFPgorR2VuZXJhdGVkIERvY3VtZW50YXRpb24gKFVudGl0bGVkKQorPC9USVRMRT4KKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICB0YXJnZXRQYWdlID0gIiIgKyB3aW5kb3cubG9jYXRpb24uc2VhcmNoOworICAgIGlmICh0YXJnZXRQYWdlICE9ICIiICYmIHRhcmdldFBhZ2UgIT0gInVuZGVmaW5lZCIpCisgICAgICAgIHRhcmdldFBhZ2UgPSB0YXJnZXRQYWdlLnN1YnN0cmluZygxKTsKKyAgICBpZiAodGFyZ2V0UGFnZS5pbmRleE9mKCI6IikgIT0gLTEpCisgICAgICAgIHRhcmdldFBhZ2UgPSAidW5kZWZpbmVkIjsKKyAgICBmdW5jdGlvbiBsb2FkRnJhbWVzKCkgeworICAgICAgICBpZiAodGFyZ2V0UGFnZSAhPSAiIiAmJiB0YXJnZXRQYWdlICE9ICJ1bmRlZmluZWQiKQorICAgICAgICAgICAgIHRvcC5jbGFzc0ZyYW1lLmxvY2F0aW9uID0gdG9wLnRhcmdldFBhZ2U7CisgICAgfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorPC9IRUFEPgorPEZSQU1FU0VUIGNvbHM9IjIwJSw4MCUiIHRpdGxlPSIiIG9uTG9hZD0idG9wLmxvYWRGcmFtZXMoKSI+Cis8RlJBTUVTRVQgcm93cz0iMzAlLDcwJSIgdGl0bGU9IiIgb25Mb2FkPSJ0b3AubG9hZEZyYW1lcygpIj4KKzxGUkFNRSBzcmM9Im92ZXJ2aWV3LWZyYW1lLmh0bWwiIG5hbWU9InBhY2thZ2VMaXN0RnJhbWUiIHRpdGxlPSJBbGwgUGFja2FnZXMiPgorPEZSQU1FIHNyYz0iYWxsY2xhc3Nlcy1mcmFtZS5odG1sIiBuYW1lPSJwYWNrYWdlRnJhbWUiIHRpdGxlPSJBbGwgY2xhc3NlcyBhbmQgaW50ZXJmYWNlcyAoZXhjZXB0IG5vbi1zdGF0aWMgbmVzdGVkIHR5cGVzKSI+Cis8L0ZSQU1FU0VUPgorPEZSQU1FIHNyYz0ib3ZlcnZpZXctc3VtbWFyeS5odG1sIiBuYW1lPSJjbGFzc0ZyYW1lIiB0aXRsZT0iUGFja2FnZSwgY2xhc3MgYW5kIGludGVyZmFjZSBkZXNjcmlwdGlvbnMiIHNjcm9sbGluZz0ieWVzIj4KKzxOT0ZSQU1FUz4KKzxIMj4KK0ZyYW1lIEFsZXJ0PC9IMj4KKworPFA+CitUaGlzIGRvY3VtZW50IGlzIGRlc2lnbmVkIHRvIGJlIHZpZXdlZCB1c2luZyB0aGUgZnJhbWVzIGZlYXR1cmUuIElmIHlvdSBzZWUgdGhpcyBtZXNzYWdlLCB5b3UgYXJlIHVzaW5nIGEgbm9uLWZyYW1lLWNhcGFibGUgd2ViIGNsaWVudC4KKzxCUj4KK0xpbmsgdG88QSBIUkVGPSJvdmVydmlldy1zdW1tYXJ5Lmh0bWwiPk5vbi1mcmFtZSB2ZXJzaW9uLjwvQT4KKzwvTk9GUkFNRVM+Cis8L0ZSQU1FU0VUPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM4YTk4NDMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwKQEAgLTAsMCArMSwzMDIgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyOSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Cis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkgaW50ZXJmYWNlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJBY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViBDTEFTUyZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX3N1bW1hcnkiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwOzxBIEhSRUY9IiNmaWVsZF9kZXRhaWwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIEFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5PC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeSwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBJbXBsZW1lbnRpbmcgQ2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbCI+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeTwvQj48RFQ+ZXh0ZW5kcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3Rvcnk8L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGUgPGI+RmFjdG9yeTwvYj4gZm9yIHRoZSBtb2RlbC4KKyBJdCBwcm92aWRlcyBhIGNyZWF0ZSBtZXRob2QgZm9yIGVhY2ggbm9uLWFic3RyYWN0IGNsYXNzIG9mIHRoZSBtb2RlbC4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPjxDT0RFPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj5BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCNlSU5TVEFOQ0UiPmVJTlNUQU5DRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBmYWN0b3J5PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCNnZXRBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZSgpIj5nZXRBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHBhY2thZ2Ugc3VwcG9ydGVkIGJ5IHRoaXMgZmFjdG9yeTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Y29udmVydFRvU3RyaW5nLCBjcmVhdGUsIGNyZWF0ZUZyb21TdHJpbmcsIGdldEVQYWNrYWdlLCBzZXRFUGFja2FnZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQ8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXRFQW5ub3RhdGlvbiwgZ2V0RUFubm90YXRpb25zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gRklFTEQgREVUQUlMID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZUlOU1RBTkNFIj48IS0tIC0tPjwvQT48SDM+CitlSU5TVEFOQ0U8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj5BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeTwvQT4gPEI+ZUlOU1RBTkNFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIGZhY3RvcnkuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlPC9BPiA8Qj5nZXRBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHBhY2thZ2Ugc3VwcG9ydGVkIGJ5IHRoaXMgZmFjdG9yeS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBwYWNrYWdlIHN1cHBvcnRlZCBieSB0aGlzIGZhY3RvcnkuPC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViBDTEFTUyZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX3N1bW1hcnkiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwOzxBIEhSRUY9IiNmaWVsZF9kZXRhaWwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk1Zjc3NTQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwKQEAgLTAsMCArMSwyNjcgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyOSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMgaW50ZXJmYWNlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscyI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDtORVhUIENMQVNTPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX3N1bW1hcnkiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwOzxBIEhSRUY9IiNmaWVsZF9kZXRhaWwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlczwvRk9OVD4KKzxCUj4KK0ludGVyZmFjZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvSDI+Cis8REw+Cis8RFQ+PEI+RW5jbG9zaW5nIGludGVyZmFjZTo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIHN0YXRpYyBpbnRlcmZhY2UgPEI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0I+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgRGVmaW5lcyBsaXRlcmFscyBmb3IgdGhlIG1ldGEgb2JqZWN0cyB0aGF0IHJlcHJlc2VudAorIDx1bD4KKyA8bGk+ZWFjaCBjbGFzcyw8L2xpPgorIDxsaT5lYWNoIGZlYXR1cmUgb2YgZWFjaCBjbGFzcyw8L2xpPgorIDxsaT5lYWNoIGVudW0sPC9saT4KKyA8bGk+YW5kIGVhY2ggZGF0YSB0eXBlPC9saT4KKyA8L3VsPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI0dPQUxfSUQiPkdPQUxfSUQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkdvYWwgSUQ8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNHT0FMX1NUQVRVUyI+R09BTF9TVEFUVVM8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkdvYWwgU3RhdHVzPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjR09BTF9TVEFUVVNfQVJSQVkiPkdPQUxfU1RBVFVTX0FSUkFZPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Hb2FsIFN0YXR1cyBBcnJheTwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBGSUVMRCBERVRBSUwgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJHT0FMX0lEIj48IS0tIC0tPjwvQT48SDM+CitHT0FMX0lEPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5HT0FMX0lEPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Hb2FsIElEPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0R29hbElEKCkiPjxDT0RFPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRHb2FsSUQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkdPQUxfU1RBVFVTIj48IS0tIC0tPjwvQT48SDM+CitHT0FMX1NUQVRVUzwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+R09BTF9TVEFUVVM8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkdvYWwgU3RhdHVzPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0R29hbFN0YXR1cygpIj48Q09ERT5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0R29hbFN0YXR1cygpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iR09BTF9TVEFUVVNfQVJSQVkiPjwhLS0gLS0+PC9BPjxIMz4KK0dPQUxfU1RBVFVTX0FSUkFZPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5HT0FMX1NUQVRVU19BUlJBWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+R29hbCBTdGF0dXMgQXJyYXk8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRHb2FsU3RhdHVzQXJyYXkoKSI+PENPREU+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldEdvYWxTdGF0dXNBcnJheSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7TkVYVCBDTEFTUzwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2EwYjhjYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbApAQCAtMCwwICsxLDU3MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI5IENFVCAyMDEyIC0tPgorPFRJVExFPgorQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZSBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc19zdW1tYXJ5Ij5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlczwvRk9OVD4KKzxCUj4KK0ludGVyZmFjZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvSDI+Cis8REw+Cis8RFQ+PEI+QWxsIFN1cGVyaW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVOYW1lZEVsZW1lbnQsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UsIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIEltcGxlbWVudGluZyBDbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlPC9CPjxEVD5leHRlbmRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZTwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhlIG1vZGVsLgorIEl0IGNvbnRhaW5zIGFjY2Vzc29ycyBmb3IgdGhlIG1ldGEgb2JqZWN0cyB0byByZXByZXNlbnQKKyA8dWw+CisgICA8bGk+ZWFjaCBjbGFzcyw8L2xpPgorICAgPGxpPmVhY2ggZmVhdHVyZSBvZiBlYWNoIGNsYXNzLDwvbGk+CisgICA8bGk+ZWFjaCBlbnVtLDwvbGk+CisgICA8bGk+YW5kIGVhY2ggZGF0YSB0eXBlPC9saT4KKyA8L3VsPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+PENPREU+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3Rvcnk8L0NPREU+PC9BPjwvREw+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PSBORVNURUQgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0ibmVzdGVkX2NsYXNzX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5OZXN0ZWQgQ2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtEZWZpbmVzIGxpdGVyYWxzIGZvciB0aGUgbWV0YSBvYmplY3RzIHRoYXQgcmVwcmVzZW50CisgCisgZWFjaCBjbGFzcywKKyBlYWNoIGZlYXR1cmUgb2YgZWFjaCBjbGFzcywKKyBlYWNoIGVudW0sCisgYW5kIGVhY2ggZGF0YSB0eXBlCisgCisgPCE8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UuRGVzY3JpcHRvciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlLlJlZ2lzdHJ5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VJTlNUQU5DRSI+ZUlOU1RBTkNFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIHBhY2thZ2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VOQU1FIj5lTkFNRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgcGFja2FnZSBuYW1lPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTlNfUFJFRklYIj5lTlNfUFJFRklYPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBwYWNrYWdlIG5hbWVzcGFjZSBuYW1lPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTlNfVVJJIj5lTlNfVVJJPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBwYWNrYWdlIG5hbWVzcGFjZSBVUkk8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjR09BTF9JRCI+R09BTF9JRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkdvYWwgSUQ8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sI0dPQUxfU1RBVFVTIj5HT0FMX1NUQVRVUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkdvYWwgU3RhdHVzPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNHT0FMX1NUQVRVU19BUlJBWSI+R09BTF9TVEFUVVNfQVJSQVk8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Hb2FsIFN0YXR1cyBBcnJheTwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5KCkiPmdldEFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgZmFjdG9yeSB0aGF0IGNyZWF0ZXMgdGhlIGluc3RhbmNlcyBvZiB0aGUgbW9kZWw8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEdvYWxJRCgpIj5nZXRHb2FsSUQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+R29hbCBJRDwvZW0+PC9DT0RFPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEdvYWxTdGF0dXMoKSI+Z2V0R29hbFN0YXR1czwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Hb2FsIFN0YXR1czwvZW0+PC9DT0RFPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEdvYWxTdGF0dXNBcnJheSgpIj5nZXRHb2FsU3RhdHVzQXJyYXk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+R29hbCBTdGF0dXMgQXJyYXk8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXRFQ2xhc3NpZmllciwgZ2V0RUNsYXNzaWZpZXJzLCBnZXRFRmFjdG9yeUluc3RhbmNlLCBnZXRFU3VicGFja2FnZXMsIGdldEVTdXBlclBhY2thZ2UsIGdldE5zUHJlZml4LCBnZXROc1VSSSwgc2V0RUZhY3RvcnlJbnN0YW5jZSwgc2V0TnNQcmVmaXgsIHNldE5zVVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVOYW1lZEVsZW1lbnQiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU5hbWVkRWxlbWVudDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmdldE5hbWUsIHNldE5hbWU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0RUFubm90YXRpb24sIGdldEVBbm5vdGF0aW9uczwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IEZJRUxEIERFVEFJTCA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImVOQU1FIj48IS0tIC0tPjwvQT48SDM+CitlTkFNRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGphdmEubGFuZy5TdHJpbmcgPEI+ZU5BTUU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIHBhY2thZ2UgbmFtZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5lTkFNRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlTlNfVVJJIj48IS0tIC0tPjwvQT48SDM+CitlTlNfVVJJPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgamF2YS5sYW5nLlN0cmluZyA8Qj5lTlNfVVJJPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBwYWNrYWdlIG5hbWVzcGFjZSBVUkkuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlTlNfUFJFRklYIj48IS0tIC0tPjwvQT48SDM+CitlTlNfUFJFRklYPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgamF2YS5sYW5nLlN0cmluZyA8Qj5lTlNfUFJFRklYPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBwYWNrYWdlIG5hbWVzcGFjZSBuYW1lLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmVOU19QUkVGSVgiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUlOU1RBTkNFIj48IS0tIC0tPjwvQT48SDM+CitlSU5TVEFOQ0U8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQT4gPEI+ZUlOU1RBTkNFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIHBhY2thZ2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkdPQUxfSUQiPjwhLS0gLS0+PC9BPjxIMz4KK0dPQUxfSUQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+R09BTF9JRDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkdvYWwgSUQ8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRHb2FsSUQoKSI+PENPREU+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldEdvYWxJRCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9JRCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJHT0FMX1NUQVRVUyI+PCEtLSAtLT48L0E+PEgzPgorR09BTF9TVEFUVVM8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+R09BTF9TVEFUVVM8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Hb2FsIFN0YXR1czwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEdvYWxTdGF0dXMoKSI+PENPREU+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldEdvYWxTdGF0dXMoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkdPQUxfU1RBVFVTX0FSUkFZIj48IS0tIC0tPjwvQT48SDM+CitHT0FMX1NUQVRVU19BUlJBWTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5HT0FMX1NUQVRVU19BUlJBWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkdvYWwgU3RhdHVzIEFycmF5PC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0R29hbFN0YXR1c0FycmF5KCkiPjxDT0RFPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRHb2FsU3RhdHVzQXJyYXkoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX0FSUkFZIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0R29hbElEKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEdvYWxJRDwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRHb2FsSUQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+R29hbCBJRDwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPkdvYWwgSUQ8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0R29hbFN0YXR1cygpIj48IS0tIC0tPjwvQT48SDM+CitnZXRHb2FsU3RhdHVzPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldEdvYWxTdGF0dXM8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+R29hbCBTdGF0dXM8L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5Hb2FsIFN0YXR1czwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRHb2FsU3RhdHVzQXJyYXkoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0R29hbFN0YXR1c0FycmF5PC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldEdvYWxTdGF0dXNBcnJheTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Hb2FsIFN0YXR1cyBBcnJheTwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPkdvYWwgU3RhdHVzIEFycmF5PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5PC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj5BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeTwvQT4gPEI+Z2V0QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBmYWN0b3J5IHRoYXQgY3JlYXRlcyB0aGUgaW5zdGFuY2VzIG9mIHRoZSBtb2RlbC4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBmYWN0b3J5IHRoYXQgY3JlYXRlcyB0aGUgaW5zdGFuY2VzIG9mIHRoZSBtb2RlbC48L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc19zdW1tYXJ5Ij5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvY2xhc3MtdXNlL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2NsYXNzLXVzZS9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmViZTI0MmUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2NsYXNzLXVzZS9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5odG1sCkBAIC0wLDAgKzEsMjQ1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvY2xhc3MtdXNlL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBJbnRlcmZhY2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXM8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5PC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXM8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+RmllbGRzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlczwvQT4gZGVjbGFyZWQgYXMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj5BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwjZUlOU1RBTkNFIj5lSU5TVEFOQ0U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiB0aGUgZmFjdG9yeTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXM8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5KCkiPmdldEFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgZmFjdG9yeSB0aGF0IGNyZWF0ZXMgdGhlIGluc3RhbmNlcyBvZiB0aGUgbW9kZWw8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsPC9BPiB0aGF0IGltcGxlbWVudCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj5BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsIj5BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPkZhY3Rvcnk8L2I+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRBY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeSgpIj5nZXRBY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNpbml0KCkiPmluaXQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIHRoZSBkZWZhdWx0IGZhY3RvcnkgaW1wbGVtZW50YXRpb248L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2NsYXNzLXVzZS9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2NsYXNzLXVzZS9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9jbGFzcy11c2UvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MzIwYjU2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9jbGFzcy11c2UvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscyI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2NsYXNzLXVzZS9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgSW50ZXJmYWNlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9jbGFzcy11c2UvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9jbGFzcy11c2UvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvY2xhc3MtdXNlL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTM0YTVjNQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvY2xhc3MtdXNlL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwKQEAgLTAsMCArMSwyNTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9jbGFzcy11c2UvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlczwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlczwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5GaWVsZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzPC9BPiBkZWNsYXJlZCBhcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlSU5TVEFOQ0UiPmVJTlNUQU5DRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBwYWNrYWdlPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlczwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwjZ2V0QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UoKSI+Z2V0QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBwYWNrYWdlIHN1cHBvcnRlZCBieSB0aGlzIGZhY3Rvcnk8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsPC9BPiB0aGF0IGltcGxlbWVudCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPlBhY2thZ2U8L2I+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNnZXRBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZSgpIj5nZXRBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNnZXRQYWNrYWdlKCkiPmdldFBhY2thZ2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST48L0k+Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjaW5pdCgpIj5pbml0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcywgcmVnaXN0ZXJzLCBhbmQgaW5pdGlhbGl6ZXMgdGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGlzIG1vZGVsLCBhbmQgZm9yIGFueSBvdGhlcnMgdXBvbiB3aGljaCBpdCBkZXBlbmRzLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvY2xhc3MtdXNlL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lNzAyMzVlCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sCkBAIC0wLDAgKzEsNzY0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitBY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsLkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbCBjbGFzcyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViBDTEFTUyZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3JfZGV0YWlsIj5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsPC9GT05UPgorPEJSPgorQ2xhc3MgQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsCisgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbAorICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIKKyAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTW9kZWxFbGVtZW50SW1wbAorICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FRmFjdG9yeUltcGwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeSwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVN0cnVjdHVyYWxGZWF0dXJlLkludGVybmFsLkR5bmFtaWNWYWx1ZUhvbGRlciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9CPjxEVD5leHRlbmRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVGYWN0b3J5SW1wbDxEVD5pbXBsZW1lbnRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCA8Yj5GYWN0b3J5PC9iPi4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09IE5FU1RFRCBDTEFTUyBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk5lc3RlZCBDbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lci5EeW5hbWljPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRUFkYXB0ZXJMaXN0Jmx0O0UgZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0ICYgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciZndDssIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRU9ic2VydmFibGVBZGFwdGVyTGlzdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdC5FU3RvcmU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwjZUlOU1RBTkNFIj5lSU5TVEFOQ0U8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVN0cnVjdHVyYWxGZWF0dXJlLkludGVybmFsLkR5bmFtaWNWYWx1ZUhvbGRlciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVTdHJ1Y3R1cmFsRmVhdHVyZS5JbnRlcm5hbC5EeW5hbWljVmFsdWVIb2xkZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5OSUw8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FT1BQT1NJVEVfRkVBVFVSRV9CQVNFPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PSBDT05TVFJVQ1RPUiBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+Q29uc3RydWN0b3IgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbCgpIj5BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSBmYWN0b3J5PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEdvYWxJRFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0R29hbElEVG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEdvYWxTdGF0dXNBcnJheVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0R29hbFN0YXR1c0FycmF5VG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEdvYWxTdGF0dXNUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydEdvYWxTdGF0dXNUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0VG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZShvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzKSI+Y3JlYXRlPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyZuYnNwO2VDbGFzcyk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLk9iamVjdDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZUZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlR29hbElERnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlR29hbElERnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVHb2FsU3RhdHVzQXJyYXlGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVHb2FsU3RhdHVzQXJyYXlGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUdvYWxTdGF0dXNGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVHb2FsU3RhdHVzRnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNnZXRBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZSgpIj5nZXRBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjZ2V0UGFja2FnZSgpIj5nZXRQYWNrYWdlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEk+PC9JPiZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj5BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNpbml0KCkiPmluaXQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIHRoZSBkZWZhdWx0IGZhY3RvcnkgaW1wbGVtZW50YXRpb248L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVGYWN0b3J5SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+YmFzaWNTZXRFUGFja2FnZSwgZUdldCwgZUludmVyc2VBZGQsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVTZXQsIGVVbnNldCwgZ2V0RVBhY2thZ2UsIHNldEVQYWNrYWdlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU1vZGVsRWxlbWVudEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVNb2RlbEVsZW1lbnRJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU9iamVjdEZvclVSSUZyYWdtZW50U2VnbWVudCwgZVVSSUZyYWdtZW50U2VnbWVudCwgZ2V0RUFubm90YXRpb24sIGdldEVBbm5vdGF0aW9uczwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lSW50ZXJuYWxDb250YWluZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmR5bmFtaWNHZXQsIGR5bmFtaWNTZXQsIGR5bmFtaWNVbnNldCwgZUFkYXB0ZXJzLCBlQ2xhc3MsIGVDb250YWluZXJGZWF0dXJlSUQsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZURlbGl2ZXIsIGVEaXJlY3RSZXNvdXJjZSwgZUlzUHJveHksIGVQcm94eVVSSSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEeW5hbWljQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlRHluYW1pY0dldCwgZUR5bmFtaWNHZXQsIGVEeW5hbWljSW52ZXJzZUFkZCwgZUR5bmFtaWNJbnZlcnNlUmVtb3ZlLCBlRHluYW1pY0ludm9rZSwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1Vuc2V0LCBlRHluYW1pY1Vuc2V0LCBlR2V0LCBlR2V0LCBlR2V0LCBlSW50ZXJuYWxSZXNvdXJjZSwgZUludmVyc2VBZGQsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVJlc29sdmVQcm94eSwgZVJlc291cmNlLCBlU2V0LCBlU2V0UmVzb3VyY2UsIGVTZXRTdG9yZSwgZVNldHRpbmcsIGVTdG9yZSwgZVVuc2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsSXNTZXQsIGVWaXJ0dWFsU2V0LCBlVmlydHVhbFVuc2V0LCB0b1N0cmluZzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQsIGVOb3RpZnk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB3YWl0LCB3YWl0LCB3YWl0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0RVBhY2thZ2UsIHNldEVQYWNrYWdlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmdldEVBbm5vdGF0aW9uLCBnZXRFQW5ub3RhdGlvbnM8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09IENPTlNUUlVDVE9SIERFVEFJTCA9PT09PT09PSAtLT4KKworPEEgTkFNRT0iY29uc3RydWN0b3JfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+Q29uc3RydWN0b3IgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9IkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbCgpIj48IS0tIC0tPjwvQT48SDM+CitBY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0gzPgorPFBSRT4KK3B1YmxpYyA8Qj5BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSBmYWN0b3J5LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzwvREw+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iaW5pdCgpIj48IS0tIC0tPjwvQT48SDM+Citpbml0PC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5PC9BPiA8Qj5pbml0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcyB0aGUgZGVmYXVsdCBmYWN0b3J5IGltcGxlbWVudGF0aW9uLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZShvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QgPEI+Y3JlYXRlPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzJm5ic3A7ZUNsYXNzKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmNyZWF0ZTwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeTwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+Y3JlYXRlPC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FRmFjdG9yeUltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lQ2xhc3M8L0NPREU+IC0gdGhlIGUgY2xhc3MKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGUgb2JqZWN0PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLk9iamVjdCA8Qj5jcmVhdGVGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmNyZWF0ZUZyb21TdHJpbmc8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3Rvcnk8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmNyZWF0ZUZyb21TdHJpbmc8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVGYWN0b3J5SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBvYmplY3Q8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydFRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0VG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+Y29udmVydFRvU3RyaW5nPC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5jb252ZXJ0VG9TdHJpbmc8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVGYWN0b3J5SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlR29hbElERnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlR29hbElERnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlR29hbElERnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydEdvYWxJRFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0R29hbElEVG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRHb2FsSURUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVHb2FsU3RhdHVzRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlR29hbFN0YXR1c0Zyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZUdvYWxTdGF0dXNGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydEdvYWxTdGF0dXNUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydEdvYWxTdGF0dXNUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydEdvYWxTdGF0dXNUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlR29hbFN0YXR1c0FycmF5RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlR29hbFN0YXR1c0FycmF5RnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlR29hbFN0YXR1c0FycmF5RnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydEdvYWxTdGF0dXNBcnJheVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0R29hbFN0YXR1c0FycmF5VG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRHb2FsU3RhdHVzQXJyYXlUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlPC9BPiA8Qj5nZXRBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwjZ2V0QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UoKSI+Z2V0QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgYWN0aW9ubGliX2RhdGF0eXBlcyBwYWNrYWdlPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRQYWNrYWdlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBhY2thZ2U8L0gzPgorPFBSRT4KKzxGT05UIFNJWkU9Ii0xIj5ARGVwcmVjYXRlZAorPC9GT05UPnB1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0E+IDxCPmdldFBhY2thZ2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST48L0k+Cis8UD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcGFja2FnZTwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWIENMQVNTJm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX3N1bW1hcnkiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9kZXRhaWwiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBjN2U1ZGMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwKQEAgLTAsMCArMSw2MjQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsIGNsYXNzIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDtORVhUIENMQVNTPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGw8L0ZPTlQ+Cis8QlI+CitDbGFzcyBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGw8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsCisgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbAorICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lcgorICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVNb2RlbEVsZW1lbnRJbXBsCisgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOYW1lZEVsZW1lbnRJbXBsCisgICAgICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FUGFja2FnZUltcGwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsLkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQj4KKzwvUFJFPgorPERMPgorPERUPjxCPkFsbCBJbXBsZW1lbnRlZCBJbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVOYW1lZEVsZW1lbnQsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FU3RydWN0dXJhbEZlYXR1cmUuSW50ZXJuYWwuRHluYW1pY1ZhbHVlSG9sZGVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5CYXNpY0V4dGVuZGVkTWV0YURhdGEuRVBhY2thZ2VFeHRlbmRlZE1ldGFEYXRhLkhvbGRlciwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9CPjxEVD5leHRlbmRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVQYWNrYWdlSW1wbDxEVD5pbXBsZW1lbnRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCA8Yj5QYWNrYWdlPC9iPi4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09IE5FU1RFRCBDTEFTUyBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk5lc3RlZCBDbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lci5EeW5hbWljPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRUFkYXB0ZXJMaXN0Jmx0O0UgZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0ICYgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciZndDssIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRU9ic2VydmFibGVBZGFwdGVyTGlzdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlLkRlc2NyaXB0b3IsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZS5SZWdpc3RyeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdC5FU3RvcmU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZUlOU1RBTkNFIj5lSU5TVEFOQ0U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VOQU1FIj5lTkFNRTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1BSRUZJWCI+ZU5TX1BSRUZJWDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1VSSSI+ZU5TX1VSSTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjR09BTF9JRCI+R09BTF9JRDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjR09BTF9TVEFUVVMiPkdPQUxfU1RBVFVTPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNHT0FMX1NUQVRVU19BUlJBWSI+R09BTF9TVEFUVVNfQVJSQVk8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVN0cnVjdHVyYWxGZWF0dXJlLkludGVybmFsLkR5bmFtaWNWYWx1ZUhvbGRlciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVTdHJ1Y3R1cmFsRmVhdHVyZS5JbnRlcm5hbC5EeW5hbWljVmFsdWVIb2xkZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5OSUw8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FT1BQT1NJVEVfRkVBVFVSRV9CQVNFPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2NyZWF0ZVBhY2thZ2VDb250ZW50cygpIj5jcmVhdGVQYWNrYWdlQ29udGVudHM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIHRoZSBtZXRhLW1vZGVsIG9iamVjdHMgZm9yIHRoZSBwYWNrYWdlLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj5BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRBY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeSgpIj5nZXRBY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEdvYWxJRCgpIj5nZXRHb2FsSUQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRHb2FsU3RhdHVzKCkiPmdldEdvYWxTdGF0dXM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRHb2FsU3RhdHVzQXJyYXkoKSI+Z2V0R29hbFN0YXR1c0FycmF5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNpbml0KCkiPmluaXQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzLCByZWdpc3RlcnMsIGFuZCBpbml0aWFsaXplcyB0aGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoaXMgbW9kZWwsIGFuZCBmb3IgYW55IG90aGVycyB1cG9uIHdoaWNoIGl0IGRlcGVuZHMuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNpbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCkiPmluaXRpYWxpemVQYWNrYWdlQ29udGVudHM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDb21wbGV0ZSB0aGUgaW5pdGlhbGl6YXRpb24gb2YgdGhlIHBhY2thZ2UgYW5kIGl0cyBtZXRhLW1vZGVsLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRVBhY2thZ2VJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FUGFja2FnZUltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5iYXNpY0dldEVTdXBlclBhY2thZ2UsIGJhc2ljU2V0RUZhY3RvcnlJbnN0YW5jZSwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lckZlYXR1cmUsIGVHZXQsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZVJlbW92ZSwgZUludm9rZSwgZUlzU2V0LCBlT2JqZWN0Rm9yVVJJRnJhZ21lbnRTZWdtZW50LCBlU2V0LCBlU2V0UHJveHlVUkksIGVVbnNldCwgZnJlZXplLCBnZXRFQ2xhc3NpZmllciwgZ2V0RUNsYXNzaWZpZXJHZW4sIGdldEVDbGFzc2lmaWVycywgZ2V0RUZhY3RvcnlJbnN0YW5jZSwgZ2V0RVN1YnBhY2thZ2VzLCBnZXRFU3VwZXJQYWNrYWdlLCBnZXRFeHRlbmRlZE1ldGFEYXRhLCBnZXROc1ByZWZpeCwgZ2V0TnNVUkksIHNldEVGYWN0b3J5SW5zdGFuY2UsIHNldEV4dGVuZGVkTWV0YURhdGEsIHNldE5hbWVzcGFjZVVSSSwgc2V0TnNQcmVmaXgsIHNldE5zVVJJLCB0b1N0cmluZzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOYW1lZEVsZW1lbnRJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTmFtZWRFbGVtZW50SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZ2V0TmFtZSwgZ2V0TmFtZUdlbiwgc2V0TmFtZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVNb2RlbEVsZW1lbnRJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTW9kZWxFbGVtZW50SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVVUklGcmFnbWVudFNlZ21lbnQsIGdldEVBbm5vdGF0aW9uLCBnZXRFQW5ub3RhdGlvbnM8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUludGVybmFsQ29udGFpbmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5keW5hbWljR2V0LCBkeW5hbWljU2V0LCBkeW5hbWljVW5zZXQsIGVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZURpcmVjdFJlc291cmNlLCBlSXNQcm94eSwgZVByb3h5VVJJLCBlU2V0Q2xhc3MsIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNTZXRDb250YWluZXIsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRhaW5zLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZUR5bmFtaWNCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVEeW5hbWljR2V0LCBlRHluYW1pY0dldCwgZUR5bmFtaWNJbnZlcnNlQWRkLCBlRHluYW1pY0ludmVyc2VSZW1vdmUsIGVEeW5hbWljSW52b2tlLCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljVW5zZXQsIGVEeW5hbWljVW5zZXQsIGVHZXQsIGVHZXQsIGVHZXQsIGVJbnRlcm5hbFJlc291cmNlLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZU9wZW5HZXQsIGVPcGVuSXNTZXQsIGVPcGVuU2V0LCBlT3BlblVuc2V0LCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkLCBlTm90aWZ5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVxdWFscywgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZTwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmdldEVDbGFzc2lmaWVyLCBnZXRFQ2xhc3NpZmllcnMsIGdldEVGYWN0b3J5SW5zdGFuY2UsIGdldEVTdWJwYWNrYWdlcywgZ2V0RVN1cGVyUGFja2FnZSwgZ2V0TnNQcmVmaXgsIGdldE5zVVJJLCBzZXRFRmFjdG9yeUluc3RhbmNlLCBzZXROc1ByZWZpeCwgc2V0TnNVUkk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU5hbWVkRWxlbWVudCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTmFtZWRFbGVtZW50PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0TmFtZSwgc2V0TmFtZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQ8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXRFQW5ub3RhdGlvbiwgZ2V0RUFubm90YXRpb25zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImluaXQoKSI+PCEtLSAtLT48L0E+PEgzPgoraW5pdDwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQT4gPEI+aW5pdDwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMsIHJlZ2lzdGVycywgYW5kIGluaXRpYWxpemVzIHRoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhpcyBtb2RlbCwgYW5kIGZvciBhbnkgb3RoZXJzIHVwb24gd2hpY2ggaXQgZGVwZW5kcy4KKyAKKyA8cD5UaGlzIG1ldGhvZCBpcyB1c2VkIHRvIGluaXRpYWxpemUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlSU5TVEFOQ0UiPjxDT0RFPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRTwvQ09ERT48L0E+IHdoZW4gdGhhdCBmaWVsZCBpcyBhY2Nlc3NlZC4KKyBDbGllbnRzIHNob3VsZCBub3QgaW52b2tlIGl0IGRpcmVjdGx5LiBJbnN0ZWFkLCB0aGV5IHNob3VsZCBzaW1wbHkgYWNjZXNzIHRoYXQgZmllbGQgdG8gb2J0YWluIHRoZSBwYWNrYWdlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VOU19VUkkiPjxDT0RFPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2NyZWF0ZVBhY2thZ2VDb250ZW50cygpIj48Q09ERT5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpIj48Q09ERT5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0R29hbElEKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEdvYWxJRDwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0R29hbElEPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRHb2FsSUQoKSI+Z2V0R29hbElEPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGdvYWwgaWQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRHb2FsU3RhdHVzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEdvYWxTdGF0dXM8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldEdvYWxTdGF0dXM8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEdvYWxTdGF0dXMoKSI+Z2V0R29hbFN0YXR1czwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBnb2FsIHN0YXR1czxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEdvYWxTdGF0dXNBcnJheSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRHb2FsU3RhdHVzQXJyYXk8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldEdvYWxTdGF0dXNBcnJheTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0R29hbFN0YXR1c0FycmF5KCkiPmdldEdvYWxTdGF0dXNBcnJheTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBnb2FsIHN0YXR1cyBhcnJheTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5PC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+IDxCPmdldEFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRBY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeSgpIj5nZXRBY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBhY3Rpb25saWJfZGF0YXR5cGVzIGZhY3Rvcnk8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVBhY2thZ2VDb250ZW50cygpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVQYWNrYWdlQ29udGVudHM8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmNyZWF0ZVBhY2thZ2VDb250ZW50czwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgdGhlIG1ldGEtbW9kZWwgb2JqZWN0cyBmb3IgdGhlIHBhY2thZ2UuICBUaGlzIG1ldGhvZCBpcworIGd1YXJkZWQgdG8gaGF2ZSBubyBhZmZlY3Qgb24gYW55IGludm9jYXRpb24gYnV0IGl0cyBmaXJzdC4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJpbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2luaXRpYWxpemVQYWNrYWdlQ29udGVudHM8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmluaXRpYWxpemVQYWNrYWdlQ29udGVudHM8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5Db21wbGV0ZSB0aGUgaW5pdGlhbGl6YXRpb24gb2YgdGhlIHBhY2thZ2UgYW5kIGl0cyBtZXRhLW1vZGVsLiAgVGhpcworIG1ldGhvZCBpcyBndWFyZGVkIHRvIGhhdmUgbm8gYWZmZWN0IG9uIGFueSBpbnZvY2F0aW9uIGJ1dCBpdHMgZmlyc3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDtORVhUIENMQVNTPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL2NsYXNzLXVzZS9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9jbGFzcy11c2UvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDQ2NGM0NQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9jbGFzcy11c2UvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwKQEAgLTAsMCArMSwxNDAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC5BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvY2xhc3MtdXNlL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9jbGFzcy11c2UvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvY2xhc3MtdXNlL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL2NsYXNzLXVzZS9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43OTIyMzQ2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL2NsYXNzLXVzZS9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsLkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9jbGFzcy11c2UvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgQ2xhc3M8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL2NsYXNzLXVzZS9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLWZyYW1lLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1mcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIzODMyZDQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1mcmFtZS5odG1sCkBAIC0wLDAgKzEsMzQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsIHBhY2thZ2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSI+Cis8Rk9OVCBzaXplPSIrMSIgQ0xBU1M9IkZyYW1lVGl0bGVGb250Ij4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiIHRhcmdldD0iY2xhc3NGcmFtZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbDwvQT48L0ZPTlQ+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBOT1dSQVA+PEZPTlQgc2l6ZT0iKzEiIENMQVNTPSJGcmFtZUhlYWRpbmdGb250Ij4KK0NsYXNzZXM8L0ZPTlQ+Jm5ic3A7Cis8Rk9OVCBDTEFTUz0iRnJhbWVJdGVtRm9udCI+Cis8QlI+Cis8QSBIUkVGPSJBY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0iQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorCisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iNmRlNDNiCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sCkBAIC0wLDAgKzEsMTU4IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbCBwYWNrYWdlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5QYWNrYWdlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5QUkVWIFBBQ0tBR0U8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5ORVhUIFBBQ0tBR0U8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxIMj4KK1BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbAorPC9IMj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5DbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsIj5BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPkZhY3Rvcnk8L2I+PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbCI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPjwvQj48L1REPgorPFREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCA8Yj5QYWNrYWdlPC9iPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworCis8UD4KKzxETD4KKzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5QYWNrYWdlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5QUkVWIFBBQ0tBR0U8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5ORVhUIFBBQ0tBR0U8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdHJlZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdHJlZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjliMTZmYWIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS10cmVlLmh0bWwKQEAgLTAsMCArMSwxNzQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwgQ2xhc3MgSGllcmFyY2h5Cis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbCBDbGFzcyBIaWVyYXJjaHkiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlRyZWU8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL3BhY2thZ2UtdHJlZS5odG1sIj48Qj5QUkVWPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9wYWNrYWdlLXRyZWUuaHRtbCI+PEI+TkVYVDwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS10cmVlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KK0hpZXJhcmNoeSBGb3IgUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsCis8L0gyPgorPC9DRU5URVI+Cis8REw+Cis8RFQ+PEI+UGFja2FnZSBIaWVyYXJjaGllczo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+QWxsIFBhY2thZ2VzPC9BPjwvREw+Cis8SFI+Cis8SDI+CitDbGFzcyBIaWVyYXJjaHkKKzwvSDI+Cis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5qYXZhLmxhbmcuT2JqZWN0PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcikKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FU3RydWN0dXJhbEZlYXR1cmUuSW50ZXJuYWwuRHluYW1pY1ZhbHVlSG9sZGVyKQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lcjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVNb2RlbEVsZW1lbnRJbXBsIChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50KQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsIChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeSkKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwiPjxCPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5PC9BPikKKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTmFtZWRFbGVtZW50SW1wbCAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU5hbWVkRWxlbWVudCkKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVQYWNrYWdlSW1wbCAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5CYXNpY0V4dGVuZGVkTWV0YURhdGEuRVBhY2thZ2VFeHRlbmRlZE1ldGFEYXRhLkhvbGRlciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlKQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbCI+PEI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0E+KQorPC9VTD4KKzwvVUw+Cis8L1VMPgorPC9VTD4KKzwvVUw+Cis8L1VMPgorPC9VTD4KKzwvVUw+Cis8L1VMPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VHJlZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvcGFja2FnZS10cmVlLmh0bWwiPjxCPlBSRVY8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL3BhY2thZ2UtdHJlZS5odG1sIj48Qj5ORVhUPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXVzZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdXNlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2YzYjgyMQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXVzZS5odG1sCkBAIC0wLDAgKzEsMTQwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIFBhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIFBhY2thZ2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbDwvQj48L0gyPgorPC9DRU5URVI+CitObyB1c2FnZSBvZiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL3BhY2thZ2UtZnJhbWUuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvcGFja2FnZS1mcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhmNTc1NmQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL3BhY2thZ2UtZnJhbWUuaHRtbApAQCAtMCwwICsxLDM2IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcworPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIHBhY2thZ2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSI+Cis8Rk9OVCBzaXplPSIrMSIgQ0xBU1M9IkZyYW1lVGl0bGVGb250Ij4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzPC9BPjwvRk9OVD4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIE5PV1JBUD48Rk9OVCBzaXplPSIrMSIgQ0xBU1M9IkZyYW1lSGVhZGluZ0ZvbnQiPgorSW50ZXJmYWNlczwvRk9OVD4mbmJzcDsKKzxGT05UIENMQVNTPSJGcmFtZUl0ZW1Gb250Ij4KKzxCUj4KKzxBIEhSRUY9IkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3Rvcnk8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0iQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9JPjwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorCisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk2MzliMDgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sCkBAIC0wLDAgKzEsMTY5IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcworPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIHBhY2thZ2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5QYWNrYWdlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+UFJFViBQQUNLQUdFPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPk5FWFQgUEFDS0FHRTwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxIMj4KK1BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMKKzwvSDI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+SW50ZXJmYWNlIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9CPjwvVEQ+Cis8VEQ+VGhlIDxiPkZhY3Rvcnk8L2I+IGZvciB0aGUgbW9kZWwuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQT48L0I+PC9URD4KKzxURD5UaGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoZSBtb2RlbC48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPjwvQj48L1REPgorPFREPkRlZmluZXMgbGl0ZXJhbHMgZm9yIHRoZSBtZXRhIG9iamVjdHMgdGhhdCByZXByZXNlbnQKKyAKKyBlYWNoIGNsYXNzLAorIGVhY2ggZmVhdHVyZSBvZiBlYWNoIGNsYXNzLAorIGVhY2ggZW51bSwKKyBhbmQgZWFjaCBkYXRhIHR5cGUKKyAKKyA8ITwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworCis8UD4KKzxETD4KKzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5QYWNrYWdlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+UFJFViBQQUNLQUdFPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPk5FWFQgUEFDS0FHRTwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9wYWNrYWdlLXRyZWUuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvcGFja2FnZS10cmVlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWQzM2Q5ZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvcGFja2FnZS10cmVlLmh0bWwKQEAgLTAsMCArMSwxNTkgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIENsYXNzIEhpZXJhcmNoeQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIENsYXNzIEhpZXJhcmNoeSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VHJlZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL3BhY2thZ2UtdHJlZS5odG1sIj48Qj5QUkVWPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS10cmVlLmh0bWwiPjxCPk5FWFQ8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9wYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorSGllcmFyY2h5IEZvciBQYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzCis8L0gyPgorPC9DRU5URVI+Cis8REw+Cis8RFQ+PEI+UGFja2FnZSBIaWVyYXJjaGllczo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+QWxsIFBhY2thZ2VzPC9BPjwvREw+Cis8SFI+Cis8SDI+CitJbnRlcmZhY2UgSGllcmFyY2h5Cis8L0gyPgorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+PEI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudDxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeTxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPjxCPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5PC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVOYW1lZEVsZW1lbnQ8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj48Qj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PC9VTD4KKzwvVUw+Cis8L1VMPgorPC9VTD4KKzwvVUw+Cis8L1VMPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VHJlZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL3BhY2thZ2UtdHJlZS5odG1sIj48Qj5QUkVWPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS10cmVlLmh0bWwiPjxCPk5FWFQ8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9wYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvcGFja2FnZS11c2UuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvcGFja2FnZS11c2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MjJmM2I1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9wYWNrYWdlLXVzZS5odG1sCkBAIC0wLDAgKzEsMTk3IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIFBhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIFBhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvcGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIFBhY2thZ2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXM8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlczwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorQ2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXM8L0E+IHVzZWQgYnkgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2NsYXNzLXVzZS9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj48Qj5BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgPGI+RmFjdG9yeTwvYj4gZm9yIHRoZSBtb2RlbC48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2NsYXNzLXVzZS9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj48Qj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoZSBtb2RlbC48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK0NsYXNzZXMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzPC9BPiB1c2VkIGJ5IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvY2xhc3MtdXNlL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbCI+PEI+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIDxiPkZhY3Rvcnk8L2I+IGZvciB0aGUgbW9kZWwuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9jbGFzcy11c2UvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsIj48Qj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoZSBtb2RlbC48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9wYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVmYmQ2ZjkKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbApAQCAtMCwwICsxLDMwMiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjE5IENFVCAyMDEyIC0tPgorPFRJVExFPgorRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Cis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeSBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYgQ0xBU1MmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXM8L0ZPTlQ+Cis8QlI+CitJbnRlcmZhY2UgRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5PC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeSwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBJbXBsZW1lbnRpbmcgQ2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbCI+RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBpbnRlcmZhY2UgPEI+RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5PC9CPjxEVD5leHRlbmRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeTwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoZSA8Yj5GYWN0b3J5PC9iPiBmb3IgdGhlIG1vZGVsLgorIEl0IHByb3ZpZGVzIGEgY3JlYXRlIG1ldGhvZCBmb3IgZWFjaCBub24tYWJzdHJhY3QgY2xhc3Mgb2YgdGhlIG1vZGVsLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+PENPREU+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCNlSU5TVEFOQ0UiPmVJTlNUQU5DRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBmYWN0b3J5PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCNnZXREaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UoKSI+Z2V0RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcGFja2FnZSBzdXBwb3J0ZWQgYnkgdGhpcyBmYWN0b3J5PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3RvcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3Rvcnk8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5jb252ZXJ0VG9TdHJpbmcsIGNyZWF0ZSwgY3JlYXRlRnJvbVN0cmluZywgZ2V0RVBhY2thZ2UsIHNldEVQYWNrYWdlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmdldEVBbm5vdGF0aW9uLCBnZXRFQW5ub3RhdGlvbnM8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBGSUVMRCBERVRBSUwgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJlSU5TVEFOQ0UiPjwhLS0gLS0+PC9BPjxIMz4KK2VJTlNUQU5DRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeTwvQT4gPEI+ZUlOU1RBTkNFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIGZhY3RvcnkuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvSDM+Cis8UFJFPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlPC9BPiA8Qj5nZXREaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBwYWNrYWdlIHN1cHBvcnRlZCBieSB0aGlzIGZhY3RvcnkuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcGFja2FnZSBzdXBwb3J0ZWQgYnkgdGhpcyBmYWN0b3J5LjwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWIENMQVNTJm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUxMWMyZWUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbApAQCAtMCwwICsxLDI2NyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjIwIENFVCAyMDEyIC0tPgorPFRJVExFPgorRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscyBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscyI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7TkVYVCBDTEFTUzwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvSDI+Cis8REw+Cis8RFQ+PEI+RW5jbG9zaW5nIGludGVyZmFjZTo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBzdGF0aWMgaW50ZXJmYWNlIDxCPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQj48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBEZWZpbmVzIGxpdGVyYWxzIGZvciB0aGUgbWV0YSBvYmplY3RzIHRoYXQgcmVwcmVzZW50CisgPHVsPgorIDxsaT5lYWNoIGNsYXNzLDwvbGk+CisgPGxpPmVhY2ggZmVhdHVyZSBvZiBlYWNoIGNsYXNzLDwvbGk+CisgPGxpPmVhY2ggZW51bSw8L2xpPgorIDxsaT5hbmQgZWFjaCBkYXRhIHR5cGU8L2xpPgorIDwvdWw+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNESUFHTk9TVElDX0FSUkFZIj5ESUFHTk9TVElDX0FSUkFZPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5EaWFnbm9zdGljIEFycmF5PC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNESUFHTk9TVElDX1NUQVRVUyI+RElBR05PU1RJQ19TVEFUVVM8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkRpYWdub3N0aWMgU3RhdHVzPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNLRVlfVkFMVUUiPktFWV9WQUxVRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+S2V5IFZhbHVlPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IEZJRUxEIERFVEFJTCA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9IkRJQUdOT1NUSUNfQVJSQVkiPjwhLS0gLS0+PC9BPjxIMz4KK0RJQUdOT1NUSUNfQVJSQVk8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPkRJQUdOT1NUSUNfQVJSQVk8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkRpYWdub3N0aWMgQXJyYXk8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldERpYWdub3N0aWNBcnJheSgpIj48Q09ERT5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldERpYWdub3N0aWNBcnJheSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iS0VZX1ZBTFVFIj48IS0tIC0tPjwvQT48SDM+CitLRVlfVkFMVUU8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPktFWV9WQUxVRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+S2V5IFZhbHVlPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRLZXlWYWx1ZSgpIj48Q09ERT5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldEtleVZhbHVlKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJESUFHTk9TVElDX1NUQVRVUyI+PCEtLSAtLT48L0E+PEgzPgorRElBR05PU1RJQ19TVEFUVVM8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPkRJQUdOT1NUSUNfU1RBVFVTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5EaWFnbm9zdGljIFN0YXR1czwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0RGlhZ25vc3RpY1N0YXR1cygpIj48Q09ERT5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldERpYWdub3N0aWNTdGF0dXMoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDtORVhUIENMQVNTPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX3N1bW1hcnkiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwOzxBIEhSRUY9IiNmaWVsZF9kZXRhaWwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2JkYWY3ZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sCkBAIC0wLDAgKzEsNTcwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjAgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlIGludGVyZmFjZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvSDI+Cis8REw+Cis8RFQ+PEI+QWxsIFN1cGVyaW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVOYW1lZEVsZW1lbnQsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UsIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIEltcGxlbWVudGluZyBDbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0I+PERUPmV4dGVuZHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlPC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGUgbW9kZWwuCisgSXQgY29udGFpbnMgYWNjZXNzb3JzIGZvciB0aGUgbWV0YSBvYmplY3RzIHRvIHJlcHJlc2VudAorIDx1bD4KKyAgIDxsaT5lYWNoIGNsYXNzLDwvbGk+CisgICA8bGk+ZWFjaCBmZWF0dXJlIG9mIGVhY2ggY2xhc3MsPC9saT4KKyAgIDxsaT5lYWNoIGVudW0sPC9saT4KKyAgIDxsaT5hbmQgZWFjaCBkYXRhIHR5cGU8L2xpPgorIDwvdWw+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48Q09ERT5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3Rvcnk8L0NPREU+PC9BPjwvREw+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PSBORVNURUQgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0ibmVzdGVkX2NsYXNzX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5OZXN0ZWQgQ2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7RGVmaW5lcyBsaXRlcmFscyBmb3IgdGhlIG1ldGEgb2JqZWN0cyB0aGF0IHJlcHJlc2VudAorIAorIGVhY2ggY2xhc3MsCisgZWFjaCBmZWF0dXJlIG9mIGVhY2ggY2xhc3MsCisgZWFjaCBlbnVtLAorIGFuZCBlYWNoIGRhdGEgdHlwZQorIAorIDwhPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlLkRlc2NyaXB0b3IsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZS5SZWdpc3RyeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sI0RJQUdOT1NUSUNfQVJSQVkiPkRJQUdOT1NUSUNfQVJSQVk8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5EaWFnbm9zdGljIEFycmF5PC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sI0RJQUdOT1NUSUNfU1RBVFVTIj5ESUFHTk9TVElDX1NUQVRVUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkRpYWdub3N0aWMgU3RhdHVzPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlSU5TVEFOQ0UiPmVJTlNUQU5DRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBwYWNrYWdlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VOQU1FIj5lTkFNRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgcGFja2FnZSBuYW1lPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VOU19QUkVGSVgiPmVOU19QUkVGSVg8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIHBhY2thZ2UgbmFtZXNwYWNlIG5hbWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1VSSSI+ZU5TX1VSSTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgcGFja2FnZSBuYW1lc3BhY2UgVVJJPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwjS0VZX1ZBTFVFIj5LRVlfVkFMVUU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5LZXkgVmFsdWU8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXREaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkoKSI+Z2V0RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgZmFjdG9yeSB0aGF0IGNyZWF0ZXMgdGhlIGluc3RhbmNlcyBvZiB0aGUgbW9kZWw8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0RGlhZ25vc3RpY0FycmF5KCkiPmdldERpYWdub3N0aWNBcnJheTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5EaWFnbm9zdGljIEFycmF5PC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXREaWFnbm9zdGljU3RhdHVzKCkiPmdldERpYWdub3N0aWNTdGF0dXM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+RGlhZ25vc3RpYyBTdGF0dXM8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEtleVZhbHVlKCkiPmdldEtleVZhbHVlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPktleSBWYWx1ZTwvZW0+PC9DT0RFPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZTwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmdldEVDbGFzc2lmaWVyLCBnZXRFQ2xhc3NpZmllcnMsIGdldEVGYWN0b3J5SW5zdGFuY2UsIGdldEVTdWJwYWNrYWdlcywgZ2V0RVN1cGVyUGFja2FnZSwgZ2V0TnNQcmVmaXgsIGdldE5zVVJJLCBzZXRFRmFjdG9yeUluc3RhbmNlLCBzZXROc1ByZWZpeCwgc2V0TnNVUkk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU5hbWVkRWxlbWVudCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTmFtZWRFbGVtZW50PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0TmFtZSwgc2V0TmFtZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQ8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXRFQW5ub3RhdGlvbiwgZ2V0RUFubm90YXRpb25zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gRklFTEQgREVUQUlMID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZU5BTUUiPjwhLS0gLS0+PC9BPjxIMz4KK2VOQU1FPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgamF2YS5sYW5nLlN0cmluZyA8Qj5lTkFNRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgcGFja2FnZSBuYW1lLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuZU5BTUUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZU5TX1VSSSI+PCEtLSAtLT48L0E+PEgzPgorZU5TX1VSSTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGphdmEubGFuZy5TdHJpbmcgPEI+ZU5TX1VSSTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgcGFja2FnZSBuYW1lc3BhY2UgVVJJLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlTlNfUFJFRklYIj48IS0tIC0tPjwvQT48SDM+CitlTlNfUFJFRklYPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgamF2YS5sYW5nLlN0cmluZyA8Qj5lTlNfUFJFRklYPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBwYWNrYWdlIG5hbWVzcGFjZSBuYW1lLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1BSRUZJWCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlSU5TVEFOQ0UiPjwhLS0gLS0+PC9BPjxIMz4KK2VJTlNUQU5DRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQT4gPEI+ZUlOU1RBTkNFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIHBhY2thZ2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkRJQUdOT1NUSUNfQVJSQVkiPjwhLS0gLS0+PC9BPjxIMz4KK0RJQUdOT1NUSUNfQVJSQVk8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+RElBR05PU1RJQ19BUlJBWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkRpYWdub3N0aWMgQXJyYXk8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldERpYWdub3N0aWNBcnJheSgpIj48Q09ERT5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldERpYWdub3N0aWNBcnJheSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5ESUFHTk9TVElDX0FSUkFZIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IktFWV9WQUxVRSI+PCEtLSAtLT48L0E+PEgzPgorS0VZX1ZBTFVFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPktFWV9WQUxVRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPktleSBWYWx1ZTwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0S2V5VmFsdWUoKSI+PENPREU+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRLZXlWYWx1ZSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5LRVlfVkFMVUUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iRElBR05PU1RJQ19TVEFUVVMiPjwhLS0gLS0+PC9BPjxIMz4KK0RJQUdOT1NUSUNfU1RBVFVTPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkRJQUdOT1NUSUNfU1RBVFVTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+RGlhZ25vc3RpYyBTdGF0dXM8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldERpYWdub3N0aWNTdGF0dXMoKSI+PENPREU+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXREaWFnbm9zdGljU3RhdHVzKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfU1RBVFVTIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0RGlhZ25vc3RpY0FycmF5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldERpYWdub3N0aWNBcnJheTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXREaWFnbm9zdGljQXJyYXk8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+RGlhZ25vc3RpYyBBcnJheTwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPkRpYWdub3N0aWMgQXJyYXk8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0S2V5VmFsdWUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0S2V5VmFsdWU8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0S2V5VmFsdWU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+S2V5IFZhbHVlPC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+S2V5IFZhbHVlPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldERpYWdub3N0aWNTdGF0dXMoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0RGlhZ25vc3RpY1N0YXR1czwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXREaWFnbm9zdGljU3RhdHVzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkRpYWdub3N0aWMgU3RhdHVzPC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+RGlhZ25vc3RpYyBTdGF0dXM8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldERpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeTwvSDM+Cis8UFJFPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5PC9BPiA8Qj5nZXREaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBmYWN0b3J5IHRoYXQgY3JlYXRlcyB0aGUgaW5zdGFuY2VzIG9mIHRoZSBtb2RlbC4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBmYWN0b3J5IHRoYXQgY3JlYXRlcyB0aGUgaW5zdGFuY2VzIG9mIHRoZSBtb2RlbC48L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9jbGFzcy11c2UvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9jbGFzcy11c2UvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTU2NmNkOAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2NsYXNzLXVzZS9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbApAQCAtMCwwICsxLDI0NSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvY2xhc3MtdXNlL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5PC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPkZpZWxkcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlczwvQT4gZGVjbGFyZWQgYXMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCNlSU5TVEFOQ0UiPmVJTlNUQU5DRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBmYWN0b3J5PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldERpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeSgpIj5nZXREaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBmYWN0b3J5IHRoYXQgY3JlYXRlcyB0aGUgaW5zdGFuY2VzIG9mIHRoZSBtb2RlbDwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5PC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCA8Yj5GYWN0b3J5PC9iPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldERpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeSgpIj5nZXREaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2luaXQoKSI+aW5pdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMgdGhlIGRlZmF1bHQgZmFjdG9yeSBpbXBsZW1lbnRhdGlvbjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2NsYXNzLXVzZS9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJEaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2NsYXNzLXVzZS9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2NsYXNzLXVzZS9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hOWEzYmI1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvY2xhc3MtdXNlL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sCkBAIC0wLDAgKzEsMTQwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscyI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9jbGFzcy11c2UvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgSW50ZXJmYWNlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2NsYXNzLXVzZS9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2NsYXNzLXVzZS9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2NsYXNzLXVzZS9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41NzY3YjkxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvY2xhc3MtdXNlL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sCkBAIC0wLDAgKzEsMjUzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9jbGFzcy11c2UvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgSW50ZXJmYWNlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXM8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXM8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+RmllbGRzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzPC9BPiBkZWNsYXJlZCBhcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VJTlNUQU5DRSI+ZUlOU1RBTkNFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIHBhY2thZ2U8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXM8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Lmh0bWwjZ2V0RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlKCkiPmdldERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHBhY2thZ2Ugc3VwcG9ydGVkIGJ5IHRoaXMgZmFjdG9yeTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCA8Yj5QYWNrYWdlPC9iPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2dldERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZSgpIj5nZXREaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2dldFBhY2thZ2UoKSI+Z2V0UGFja2FnZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwOzxJPjwvST4mbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjaW5pdCgpIj5pbml0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcywgcmVnaXN0ZXJzLCBhbmQgaW5pdGlhbGl6ZXMgdGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGlzIG1vZGVsLCBhbmQgZm9yIGFueSBvdGhlcnMgdXBvbiB3aGljaCBpdCBkZXBlbmRzLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2NsYXNzLXVzZS9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTA2OGQxYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sCkBAIC0wLDAgKzEsNzY0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjAgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitEaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbCBjbGFzcyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWIENMQVNTJm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJEaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX3N1bW1hcnkiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9kZXRhaWwiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsPC9GT05UPgorPEJSPgorQ2xhc3MgRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsCisgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyCisgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU1vZGVsRWxlbWVudEltcGwKKyAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsCisgICAgICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeSwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVN0cnVjdHVyYWxGZWF0dXJlLkludGVybmFsLkR5bmFtaWNWYWx1ZUhvbGRlciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5PC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGNsYXNzIDxCPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0I+PERUPmV4dGVuZHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsPERUPmltcGxlbWVudHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5PC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCA8Yj5GYWN0b3J5PC9iPi4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09IE5FU1RFRCBDTEFTUyBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk5lc3RlZCBDbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lci5EeW5hbWljPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRUFkYXB0ZXJMaXN0Jmx0O0UgZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0ICYgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciZndDssIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRU9ic2VydmFibGVBZGFwdGVyTGlzdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdC5FU3RvcmU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Lmh0bWwjZUlOU1RBTkNFIj5lSU5TVEFOQ0U8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVN0cnVjdHVyYWxGZWF0dXJlLkludGVybmFsLkR5bmFtaWNWYWx1ZUhvbGRlciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVTdHJ1Y3R1cmFsRmVhdHVyZS5JbnRlcm5hbC5EeW5hbWljVmFsdWVIb2xkZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5OSUw8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FT1BQT1NJVEVfRkVBVFVSRV9CQVNFPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PSBDT05TVFJVQ1RPUiBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+Q29uc3RydWN0b3IgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbCgpIj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgZmFjdG9yeTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydERpYWdub3N0aWNBcnJheVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0RGlhZ25vc3RpY0FycmF5VG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0RGlhZ25vc3RpY1N0YXR1c1RvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0RGlhZ25vc3RpY1N0YXR1c1RvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRLZXlWYWx1ZVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0S2V5VmFsdWVUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0VG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MpIj5jcmVhdGU8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzJm5ic3A7ZUNsYXNzKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVEaWFnbm9zdGljQXJyYXlGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVEaWFnbm9zdGljQXJyYXlGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlRGlhZ25vc3RpY1N0YXR1c0Zyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZURpYWdub3N0aWNTdGF0dXNGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5PYmplY3Q8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZUZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVLZXlWYWx1ZUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZUtleVZhbHVlRnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjZ2V0RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlKCkiPmdldERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjZ2V0UGFja2FnZSgpIj5nZXRQYWNrYWdlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEk+PC9JPiZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNpbml0KCkiPmluaXQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIHRoZSBkZWZhdWx0IGZhY3RvcnkgaW1wbGVtZW50YXRpb248L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVGYWN0b3J5SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+YmFzaWNTZXRFUGFja2FnZSwgZUdldCwgZUludmVyc2VBZGQsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVTZXQsIGVVbnNldCwgZ2V0RVBhY2thZ2UsIHNldEVQYWNrYWdlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU1vZGVsRWxlbWVudEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVNb2RlbEVsZW1lbnRJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU9iamVjdEZvclVSSUZyYWdtZW50U2VnbWVudCwgZVVSSUZyYWdtZW50U2VnbWVudCwgZ2V0RUFubm90YXRpb24sIGdldEVBbm5vdGF0aW9uczwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lSW50ZXJuYWxDb250YWluZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmR5bmFtaWNHZXQsIGR5bmFtaWNTZXQsIGR5bmFtaWNVbnNldCwgZUFkYXB0ZXJzLCBlQ2xhc3MsIGVDb250YWluZXJGZWF0dXJlSUQsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZURlbGl2ZXIsIGVEaXJlY3RSZXNvdXJjZSwgZUlzUHJveHksIGVQcm94eVVSSSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEeW5hbWljQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlRHluYW1pY0dldCwgZUR5bmFtaWNHZXQsIGVEeW5hbWljSW52ZXJzZUFkZCwgZUR5bmFtaWNJbnZlcnNlUmVtb3ZlLCBlRHluYW1pY0ludm9rZSwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1Vuc2V0LCBlRHluYW1pY1Vuc2V0LCBlR2V0LCBlR2V0LCBlR2V0LCBlSW50ZXJuYWxSZXNvdXJjZSwgZUludmVyc2VBZGQsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVJlc29sdmVQcm94eSwgZVJlc291cmNlLCBlU2V0LCBlU2V0UmVzb3VyY2UsIGVTZXRTdG9yZSwgZVNldHRpbmcsIGVTdG9yZSwgZVVuc2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsSXNTZXQsIGVWaXJ0dWFsU2V0LCBlVmlydHVhbFVuc2V0LCB0b1N0cmluZzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQsIGVOb3RpZnk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB3YWl0LCB3YWl0LCB3YWl0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0RVBhY2thZ2UsIHNldEVQYWNrYWdlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmdldEVBbm5vdGF0aW9uLCBnZXRFQW5ub3RhdGlvbnM8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09IENPTlNUUlVDVE9SIERFVEFJTCA9PT09PT09PSAtLT4KKworPEEgTkFNRT0iY29uc3RydWN0b3JfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+Q29uc3RydWN0b3IgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9IkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwoKSI+PCEtLSAtLT48L0E+PEgzPgorRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbDwvSDM+Cis8UFJFPgorcHVibGljIDxCPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSBmYWN0b3J5LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzwvREw+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iaW5pdCgpIj48IS0tIC0tPjwvQT48SDM+Citpbml0PC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeTwvQT4gPEI+aW5pdDwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgdGhlIGRlZmF1bHQgZmFjdG9yeSBpbXBsZW1lbnRhdGlvbi4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGUob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0IDxCPmNyZWF0ZTwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyZuYnNwO2VDbGFzcyk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5jcmVhdGU8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3Rvcnk8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmNyZWF0ZTwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZUNsYXNzPC9DT0RFPiAtIHRoZSBlIGNsYXNzCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBlIG9iamVjdDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5PYmplY3QgPEI+Y3JlYXRlRnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5jcmVhdGVGcm9tU3RyaW5nPC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5jcmVhdGVGcm9tU3RyaW5nPC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FRmFjdG9yeUltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgb2JqZWN0PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydFRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmNvbnZlcnRUb1N0cmluZzwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeTwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+Y29udmVydFRvU3RyaW5nPC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FRmFjdG9yeUltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZURpYWdub3N0aWNBcnJheUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZURpYWdub3N0aWNBcnJheUZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZURpYWdub3N0aWNBcnJheUZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnREaWFnbm9zdGljQXJyYXlUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydERpYWdub3N0aWNBcnJheVRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0RGlhZ25vc3RpY0FycmF5VG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlS2V5VmFsdWVGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVLZXlWYWx1ZUZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZUtleVZhbHVlRnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0S2V5VmFsdWVUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydEtleVZhbHVlVG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRLZXlWYWx1ZVRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlRGlhZ25vc3RpY1N0YXR1c0Zyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZURpYWdub3N0aWNTdGF0dXNGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVEaWFnbm9zdGljU3RhdHVzRnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnREaWFnbm9zdGljU3RhdHVzVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnREaWFnbm9zdGljU3RhdHVzVG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnREaWFnbm9zdGljU3RhdHVzVG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXREaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0E+IDxCPmdldERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCNnZXREaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UoKSI+Z2V0RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBkaWFnbm9zdGljX2RhdGF0eXBlcyBwYWNrYWdlPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRQYWNrYWdlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBhY2thZ2U8L0gzPgorPFBSRT4KKzxGT05UIFNJWkU9Ii0xIj5ARGVwcmVjYXRlZAorPC9GT05UPnB1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlPC9BPiA8Qj5nZXRQYWNrYWdlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEk+PC9JPgorPFA+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHBhY2thZ2U8L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYgQ0xBU1MmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3Jfc3VtbWFyeSI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX2RldGFpbCI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY5ZGJjNDIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbApAQCAtMCwwICsxLDYyNCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjIwIENFVCAyMDEyIC0tPgorPFRJVExFPgorRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7TkVYVCBDTEFTUzwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGw8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsCisgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbAorICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lcgorICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVNb2RlbEVsZW1lbnRJbXBsCisgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOYW1lZEVsZW1lbnRJbXBsCisgICAgICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FUGFja2FnZUltcGwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU5hbWVkRWxlbWVudCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZSwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVTdHJ1Y3R1cmFsRmVhdHVyZS5JbnRlcm5hbC5EeW5hbWljVmFsdWVIb2xkZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLkJhc2ljRXh0ZW5kZWRNZXRhRGF0YS5FUGFja2FnZUV4dGVuZGVkTWV0YURhdGEuSG9sZGVyLCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQj48RFQ+ZXh0ZW5kcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FUGFja2FnZUltcGw8RFQ+aW1wbGVtZW50cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPlBhY2thZ2U8L2I+LgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyLkR5bmFtaWM8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FQWRhcHRlckxpc3QmbHQ7RSBleHRlbmRzIGphdmEubGFuZy5PYmplY3QgJiBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyJmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FT2JzZXJ2YWJsZUFkYXB0ZXJMaXN0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZTwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZS5EZXNjcmlwdG9yLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UuUmVnaXN0cnk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QuRVN0b3JlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sI0RJQUdOT1NUSUNfQVJSQVkiPkRJQUdOT1NUSUNfQVJSQVk8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwjRElBR05PU1RJQ19TVEFUVVMiPkRJQUdOT1NUSUNfU1RBVFVTPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VJTlNUQU5DRSI+ZUlOU1RBTkNFPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VOQU1FIj5lTkFNRTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTlNfUFJFRklYIj5lTlNfUFJFRklYPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VOU19VUkkiPmVOU19VUkk8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwjS0VZX1ZBTFVFIj5LRVlfVkFMVUU8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVN0cnVjdHVyYWxGZWF0dXJlLkludGVybmFsLkR5bmFtaWNWYWx1ZUhvbGRlciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVTdHJ1Y3R1cmFsRmVhdHVyZS5JbnRlcm5hbC5EeW5hbWljVmFsdWVIb2xkZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5OSUw8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FT1BQT1NJVEVfRkVBVFVSRV9CQVNFPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjY3JlYXRlUGFja2FnZUNvbnRlbnRzKCkiPmNyZWF0ZVBhY2thZ2VDb250ZW50czwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMgdGhlIG1ldGEtbW9kZWwgb2JqZWN0cyBmb3IgdGhlIHBhY2thZ2UuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldERpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeSgpIj5nZXREaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldERpYWdub3N0aWNBcnJheSgpIj5nZXREaWFnbm9zdGljQXJyYXk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldERpYWdub3N0aWNTdGF0dXMoKSI+Z2V0RGlhZ25vc3RpY1N0YXR1czwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0S2V5VmFsdWUoKSI+Z2V0S2V5VmFsdWU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2luaXQoKSI+aW5pdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMsIHJlZ2lzdGVycywgYW5kIGluaXRpYWxpemVzIHRoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhpcyBtb2RlbCwgYW5kIGZvciBhbnkgb3RoZXJzIHVwb24gd2hpY2ggaXQgZGVwZW5kcy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpIj5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q29tcGxldGUgdGhlIGluaXRpYWxpemF0aW9uIG9mIHRoZSBwYWNrYWdlIGFuZCBpdHMgbWV0YS1tb2RlbC48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVQYWNrYWdlSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRVBhY2thZ2VJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+YmFzaWNHZXRFU3VwZXJQYWNrYWdlLCBiYXNpY1NldEVGYWN0b3J5SW5zdGFuY2UsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXJGZWF0dXJlLCBlR2V0LCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZU9iamVjdEZvclVSSUZyYWdtZW50U2VnbWVudCwgZVNldCwgZVNldFByb3h5VVJJLCBlVW5zZXQsIGZyZWV6ZSwgZ2V0RUNsYXNzaWZpZXIsIGdldEVDbGFzc2lmaWVyR2VuLCBnZXRFQ2xhc3NpZmllcnMsIGdldEVGYWN0b3J5SW5zdGFuY2UsIGdldEVTdWJwYWNrYWdlcywgZ2V0RVN1cGVyUGFja2FnZSwgZ2V0RXh0ZW5kZWRNZXRhRGF0YSwgZ2V0TnNQcmVmaXgsIGdldE5zVVJJLCBzZXRFRmFjdG9yeUluc3RhbmNlLCBzZXRFeHRlbmRlZE1ldGFEYXRhLCBzZXROYW1lc3BhY2VVUkksIHNldE5zUHJlZml4LCBzZXROc1VSSSwgdG9TdHJpbmc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTmFtZWRFbGVtZW50SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5hbWVkRWxlbWVudEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGdldE5hbWUsIGdldE5hbWVHZW4sIHNldE5hbWU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTW9kZWxFbGVtZW50SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU1vZGVsRWxlbWVudEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lVVJJRnJhZ21lbnRTZWdtZW50LCBnZXRFQW5ub3RhdGlvbiwgZ2V0RUFubm90YXRpb25zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVJbnRlcm5hbENvbnRhaW5lcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZHluYW1pY0dldCwgZHluYW1pY1NldCwgZHluYW1pY1Vuc2V0LCBlQWRhcHRlcnMsIGVDbGFzcywgZUNvbnRhaW5lckZlYXR1cmVJRCwgZURlbGl2ZXIsIGVEaXJlY3RSZXNvdXJjZSwgZUlzUHJveHksIGVQcm94eVVSSSwgZVNldENsYXNzLCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVCYXNlU3RydWN0dXJhbEZlYXR1cmVJRCwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEeW5hbWljQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlRHluYW1pY0dldCwgZUR5bmFtaWNHZXQsIGVEeW5hbWljSW52ZXJzZUFkZCwgZUR5bmFtaWNJbnZlcnNlUmVtb3ZlLCBlRHluYW1pY0ludm9rZSwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1Vuc2V0LCBlRHluYW1pY1Vuc2V0LCBlR2V0LCBlR2V0LCBlR2V0LCBlSW50ZXJuYWxSZXNvdXJjZSwgZUludmVyc2VBZGQsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVJlc29sdmVQcm94eSwgZVJlc291cmNlLCBlU2V0LCBlU2V0UmVzb3VyY2UsIGVTZXRTdG9yZSwgZVNldHRpbmcsIGVTdG9yZSwgZVVuc2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsSXNTZXQsIGVWaXJ0dWFsU2V0LCBlVmlydHVhbFVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXRFQ2xhc3NpZmllciwgZ2V0RUNsYXNzaWZpZXJzLCBnZXRFRmFjdG9yeUluc3RhbmNlLCBnZXRFU3VicGFja2FnZXMsIGdldEVTdXBlclBhY2thZ2UsIGdldE5zUHJlZml4LCBnZXROc1VSSSwgc2V0RUZhY3RvcnlJbnN0YW5jZSwgc2V0TnNQcmVmaXgsIHNldE5zVVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVOYW1lZEVsZW1lbnQiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU5hbWVkRWxlbWVudDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmdldE5hbWUsIHNldE5hbWU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0RUFubm90YXRpb24sIGdldEVBbm5vdGF0aW9uczwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJpbml0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2luaXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlPC9BPiA8Qj5pbml0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcywgcmVnaXN0ZXJzLCBhbmQgaW5pdGlhbGl6ZXMgdGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGlzIG1vZGVsLCBhbmQgZm9yIGFueSBvdGhlcnMgdXBvbiB3aGljaCBpdCBkZXBlbmRzLgorIAorIDxwPlRoaXMgbWV0aG9kIGlzIHVzZWQgdG8gaW5pdGlhbGl6ZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZUlOU1RBTkNFIj48Q09ERT5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFPC9DT0RFPjwvQT4gd2hlbiB0aGF0IGZpZWxkIGlzIGFjY2Vzc2VkLgorIENsaWVudHMgc2hvdWxkIG5vdCBpbnZva2UgaXQgZGlyZWN0bHkuIEluc3RlYWQsIHRoZXkgc2hvdWxkIHNpbXBseSBhY2Nlc3MgdGhhdCBmaWVsZCB0byBvYnRhaW4gdGhlIHBhY2thZ2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTlNfVVJJIj48Q09ERT5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNjcmVhdGVQYWNrYWdlQ29udGVudHMoKSI+PENPREU+Y3JlYXRlUGFja2FnZUNvbnRlbnRzKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpIj48Q09ERT5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RGlhZ25vc3RpY0FycmF5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldERpYWdub3N0aWNBcnJheTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0RGlhZ25vc3RpY0FycmF5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldERpYWdub3N0aWNBcnJheSgpIj5nZXREaWFnbm9zdGljQXJyYXk8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGRpYWdub3N0aWMgYXJyYXk8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRLZXlWYWx1ZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRLZXlWYWx1ZTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0S2V5VmFsdWU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0S2V5VmFsdWUoKSI+Z2V0S2V5VmFsdWU8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGtleSB2YWx1ZTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldERpYWdub3N0aWNTdGF0dXMoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0RGlhZ25vc3RpY1N0YXR1czwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0RGlhZ25vc3RpY1N0YXR1czwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXREaWFnbm9zdGljU3RhdHVzKCkiPmdldERpYWdub3N0aWNTdGF0dXM8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGRpYWdub3N0aWMgc3RhdHVzPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldERpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeTwvQT4gPEI+Z2V0RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldERpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeSgpIj5nZXREaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGRpYWdub3N0aWNfZGF0YXR5cGVzIGZhY3Rvcnk8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVBhY2thZ2VDb250ZW50cygpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVQYWNrYWdlQ29udGVudHM8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmNyZWF0ZVBhY2thZ2VDb250ZW50czwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgdGhlIG1ldGEtbW9kZWwgb2JqZWN0cyBmb3IgdGhlIHBhY2thZ2UuICBUaGlzIG1ldGhvZCBpcworIGd1YXJkZWQgdG8gaGF2ZSBubyBhZmZlY3Qgb24gYW55IGludm9jYXRpb24gYnV0IGl0cyBmaXJzdC4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJpbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2luaXRpYWxpemVQYWNrYWdlQ29udGVudHM8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmluaXRpYWxpemVQYWNrYWdlQ29udGVudHM8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5Db21wbGV0ZSB0aGUgaW5pdGlhbGl6YXRpb24gb2YgdGhlIHBhY2thZ2UgYW5kIGl0cyBtZXRhLW1vZGVsLiAgVGhpcworIG1ldGhvZCBpcyBndWFyZGVkIHRvIGhhdmUgbm8gYWZmZWN0IG9uIGFueSBpbnZvY2F0aW9uIGJ1dCBpdHMgZmlyc3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7TkVYVCBDTEFTUzwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvY2xhc3MtdXNlL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvY2xhc3MtdXNlL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMTI2ZTgwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9jbGFzcy11c2UvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sCkBAIC0wLDAgKzEsMTQwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvY2xhc3MtdXNlL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJEaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgQ2xhc3M8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQj48L0gyPgorPC9DRU5URVI+CitObyB1c2FnZSBvZiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvY2xhc3MtdXNlL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJEaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL2NsYXNzLXVzZS9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL2NsYXNzLXVzZS9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTIxMjk5MwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvY2xhc3MtdXNlL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL2NsYXNzLXVzZS9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbAorPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL2NsYXNzLXVzZS9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLWZyYW1lLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtZnJhbWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wODJiMDdmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLWZyYW1lLmh0bWwKQEAgLTAsMCArMSwzNCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbCBwYWNrYWdlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiPgorPEZPTlQgc2l6ZT0iKzEiIENMQVNTPSJGcmFtZVRpdGxlRm9udCI+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbDwvQT48L0ZPTlQ+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBOT1dSQVA+PEZPTlQgc2l6ZT0iKzEiIENMQVNTPSJGcmFtZUhlYWRpbmdGb250Ij4KK0NsYXNzZXM8L0ZPTlQ+Jm5ic3A7Cis8Rk9OVCBDTEFTUz0iRnJhbWVJdGVtRm9udCI+Cis8QlI+Cis8QSBIUkVGPSJEaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0iRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorCisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAwYmFmOTUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sCkBAIC0wLDAgKzEsMTU4IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIHBhY2thZ2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5QYWNrYWdlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+UFJFViBQQUNLQUdFPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPk5FWFQgUEFDS0FHRTwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxIMj4KK1BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwKKzwvSDI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+Q2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbCI+RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT48L0I+PC9URD4KKzxURD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgPGI+RmFjdG9yeTwvYj48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPjwvQj48L1REPgorPFREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCA8Yj5QYWNrYWdlPC9iPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworCis8UD4KKzxETD4KKzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5QYWNrYWdlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+UFJFViBQQUNLQUdFPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPk5FWFQgUEFDS0FHRTwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS10cmVlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGUyYWE0NgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS10cmVlLmh0bWwKQEAgLTAsMCArMSwxNzQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIENsYXNzIEhpZXJhcmNoeQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIENsYXNzIEhpZXJhcmNoeSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VHJlZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL3BhY2thZ2UtdHJlZS5odG1sIj48Qj5QUkVWPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvcGFja2FnZS10cmVlLmh0bWwiPjxCPk5FWFQ8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorSGllcmFyY2h5IEZvciBQYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsCis8L0gyPgorPC9DRU5URVI+Cis8REw+Cis8RFQ+PEI+UGFja2FnZSBIaWVyYXJjaGllczo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+QWxsIFBhY2thZ2VzPC9BPjwvREw+Cis8SFI+Cis8SDI+CitDbGFzcyBIaWVyYXJjaHkKKzwvSDI+Cis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5qYXZhLmxhbmcuT2JqZWN0PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcikKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FU3RydWN0dXJhbEZlYXR1cmUuSW50ZXJuYWwuRHluYW1pY1ZhbHVlSG9sZGVyKQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lcjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVNb2RlbEVsZW1lbnRJbXBsIChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50KQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsIChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeSkKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIj48Qj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeTwvQT4pCis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5hbWVkRWxlbWVudEltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVOYW1lZEVsZW1lbnQpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FUGFja2FnZUltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuQmFzaWNFeHRlbmRlZE1ldGFEYXRhLkVQYWNrYWdlRXh0ZW5kZWRNZXRhRGF0YS5Ib2xkZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZSkKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIj48Qj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQT4pCis8L1VMPgorPC9VTD4KKzwvVUw+Cis8L1VMPgorPC9VTD4KKzwvVUw+Cis8L1VMPgorPC9VTD4KKzwvVUw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5UcmVlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvcGFja2FnZS10cmVlLmh0bWwiPjxCPlBSRVY8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9wYWNrYWdlLXRyZWUuaHRtbCI+PEI+TkVYVDwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXVzZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXVzZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI4ZTBhNzAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdXNlLmh0bWwKQEAgLTAsMCArMSwxNDAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgUGFja2FnZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbDwvQj48L0gyPgorPC9DRU5URVI+CitObyB1c2FnZSBvZiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbAorPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL3BhY2thZ2UtZnJhbWUuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL3BhY2thZ2UtZnJhbWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40ZTA3ZTIxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvcGFja2FnZS1mcmFtZS5odG1sCkBAIC0wLDAgKzEsMzYgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcworPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyBwYWNrYWdlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiPgorPEZPTlQgc2l6ZT0iKzEiIENMQVNTPSJGcmFtZVRpdGxlRm9udCI+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiIHRhcmdldD0iY2xhc3NGcmFtZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzPC9BPjwvRk9OVD4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIE5PV1JBUD48Rk9OVCBzaXplPSIrMSIgQ0xBU1M9IkZyYW1lSGVhZGluZ0ZvbnQiPgorSW50ZXJmYWNlczwvRk9OVD4mbmJzcDsKKzxGT05UIENMQVNTPSJGcmFtZUl0ZW1Gb250Ij4KKzxCUj4KKzxBIEhSRUY9IkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3Rvcnk8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0iRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9JPjwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorCisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDM1ODNiZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sCkBAIC0wLDAgKzEsMTY5IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMgcGFja2FnZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5QYWNrYWdlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPlBSRVYgUEFDS0FHRTwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+TkVYVCBQQUNLQUdFPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxIMj4KK1BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzCis8L0gyPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkludGVyZmFjZSBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0I+PC9URD4KKzxURD5UaGUgPGI+RmFjdG9yeTwvYj4gZm9yIHRoZSBtb2RlbC48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQT48L0I+PC9URD4KKzxURD5UaGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoZSBtb2RlbC48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT48L0I+PC9URD4KKzxURD5EZWZpbmVzIGxpdGVyYWxzIGZvciB0aGUgbWV0YSBvYmplY3RzIHRoYXQgcmVwcmVzZW50CisgCisgZWFjaCBjbGFzcywKKyBlYWNoIGZlYXR1cmUgb2YgZWFjaCBjbGFzcywKKyBlYWNoIGVudW0sCisgYW5kIGVhY2ggZGF0YSB0eXBlCisgCisgPCE8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKworPFA+Cis8REw+Cis8L0RMPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdXNlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5QUkVWIFBBQ0tBR0U8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPk5FWFQgUEFDS0FHRTwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL3BhY2thZ2UtdHJlZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvcGFja2FnZS10cmVlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjY3MjUyNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL3BhY2thZ2UtdHJlZS5odG1sCkBAIC0wLDAgKzEsMTU5IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMgQ2xhc3MgSGllcmFyY2h5Cis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIENsYXNzIEhpZXJhcmNoeSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VHJlZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbCI+PEI+UFJFVjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbCI+PEI+TkVYVDwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9wYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorSGllcmFyY2h5IEZvciBQYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcworPC9IMj4KKzwvQ0VOVEVSPgorPERMPgorPERUPjxCPlBhY2thZ2UgSGllcmFyY2hpZXM6PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy10cmVlLmh0bWwiPkFsbCBQYWNrYWdlczwvQT48L0RMPgorPEhSPgorPEgyPgorSW50ZXJmYWNlIEhpZXJhcmNoeQorPC9IMj4KKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48Qj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudDxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeTxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48Qj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU5hbWVkRWxlbWVudDxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZTxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48Qj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjwvVUw+Cis8L1VMPgorPC9VTD4KKzwvVUw+Cis8L1VMPgorPC9VTD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlRyZWU8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS10cmVlLmh0bWwiPjxCPlBSRVY8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS10cmVlLmh0bWwiPjxCPk5FWFQ8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvcGFja2FnZS10cmVlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9wYWNrYWdlLXVzZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvcGFja2FnZS11c2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mNWEzZjU3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvcGFja2FnZS11c2UuaHRtbApAQCAtMCwwICsxLDE5NyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBQYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcworPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL3BhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBQYWNrYWdlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlczwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXM8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorQ2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlczwvQT4gdXNlZCBieSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlczwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvY2xhc3MtdXNlL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+PEI+RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5PC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSA8Yj5GYWN0b3J5PC9iPiBmb3IgdGhlIG1vZGVsLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2NsYXNzLXVzZS9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPjxCPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoZSBtb2RlbC48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitDbGFzc2VzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzPC9BPiB1c2VkIGJ5IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvY2xhc3MtdXNlL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIj48Qj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIDxiPkZhY3Rvcnk8L2I+IGZvciB0aGUgbW9kZWwuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvY2xhc3MtdXNlL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsIj48Qj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGUgbW9kZWwuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL3BhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFlODA2YzUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sCkBAIC0wLDAgKzEsMzAyIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjggQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5Cis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5IGludGVyZmFjZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWIENMQVNTJm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlczwvRk9OVD4KKzxCUj4KK0ludGVyZmFjZSBHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5PC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeSwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBJbXBsZW1lbnRpbmcgQ2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PERUPmV4dGVuZHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhlIDxiPkZhY3Rvcnk8L2I+IGZvciB0aGUgbW9kZWwuCisgSXQgcHJvdmlkZXMgYSBjcmVhdGUgbWV0aG9kIGZvciBlYWNoIG5vbi1hYnN0cmFjdCBjbGFzcyBvZiB0aGUgbW9kZWwuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj48Q09ERT5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCNlSU5TVEFOQ0UiPmVJTlNUQU5DRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBmYWN0b3J5PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCNnZXRHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlKCkiPmdldEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBwYWNrYWdlIHN1cHBvcnRlZCBieSB0aGlzIGZhY3Rvcnk8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeTwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmNvbnZlcnRUb1N0cmluZywgY3JlYXRlLCBjcmVhdGVGcm9tU3RyaW5nLCBnZXRFUGFja2FnZSwgc2V0RVBhY2thZ2U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0RUFubm90YXRpb24sIGdldEVBbm5vdGF0aW9uczwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IEZJRUxEIERFVEFJTCA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImVJTlNUQU5DRSI+PCEtLSAtLT48L0E+PEgzPgorZUlOU1RBTkNFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeTwvQT4gPEI+ZUlOU1RBTkNFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIGZhY3RvcnkuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPiA8Qj5nZXRHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgcGFja2FnZSBzdXBwb3J0ZWQgYnkgdGhpcyBmYWN0b3J5LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHBhY2thZ2Ugc3VwcG9ydGVkIGJ5IHRoaXMgZmFjdG9yeS48L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYgQ0xBU1MmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJjZjQ0NDgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sCkBAIC0wLDAgKzEsNjgxIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjkgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzIGludGVyZmFjZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscyI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwO05FWFQgQ0xBU1M8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXM8L0ZPTlQ+Cis8QlI+CitJbnRlcmZhY2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvSDI+Cis8REw+Cis8RFQ+PEI+RW5jbG9zaW5nIGludGVyZmFjZTo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgc3RhdGljIGludGVyZmFjZSA8Qj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9CPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIERlZmluZXMgbGl0ZXJhbHMgZm9yIHRoZSBtZXRhIG9iamVjdHMgdGhhdCByZXByZXNlbnQKKyA8dWw+CisgPGxpPmVhY2ggY2xhc3MsPC9saT4KKyA8bGk+ZWFjaCBmZWF0dXJlIG9mIGVhY2ggY2xhc3MsPC9saT4KKyA8bGk+ZWFjaCBlbnVtLDwvbGk+CisgPGxpPmFuZCBlYWNoIGRhdGEgdHlwZTwvbGk+CisgPC91bD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKworPFA+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUE9JTlQiPlBPSU5UPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Qb2ludDwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNQT0lOVF9TVEFNUEVEIj5QT0lOVF9TVEFNUEVEPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Qb2ludCBTdGFtcGVkPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1BPSU5UMzIiPlBPSU5UMzI8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlBvaW50MzI8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUE9MWUdPTiI+UE9MWUdPTjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+UG9seWdvbjwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNQT0xZR09OX1NUQU1QRUQiPlBPTFlHT05fU1RBTVBFRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+UG9seWdvbiBTdGFtcGVkPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1BPU0UiPlBPU0U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlBvc2U8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUE9TRV9BUlJBWSI+UE9TRV9BUlJBWTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+UG9zZSBBcnJheTwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNQT1NFX1NUQU1QRUQiPlBPU0VfU1RBTVBFRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+UG9zZSBTdGFtcGVkPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1BPU0VfV0lUSF9DT1ZBUklBTkNFIj5QT1NFX1dJVEhfQ09WQVJJQU5DRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+UG9zZSBXaXRoIENvdmFyaWFuY2U8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUE9TRV9XSVRIX0NPVkFSSUFOQ0VfU1RBTVBFRCI+UE9TRV9XSVRIX0NPVkFSSUFOQ0VfU1RBTVBFRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+UG9zZSBXaXRoIENvdmFyaWFuY2UgU3RhbXBlZDwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNQT1NFMl9EIj5QT1NFMl9EPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Qb3NlMiBEPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1FVQVRFUk5JT04iPlFVQVRFUk5JT048L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlF1YXRlcm5pb248L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUVVBVEVSTklPTl9TVEFNUEVEIj5RVUFURVJOSU9OX1NUQU1QRUQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlF1YXRlcm5pb24gU3RhbXBlZDwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNUUkFOU0ZPUk0iPlRSQU5TRk9STTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VHJhbnNmb3JtPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1RXSVNUIj5UV0lTVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VHdpc3Q8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjVFdJU1RfU1RBTVBFRCI+VFdJU1RfU1RBTVBFRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VHdpc3QgU3RhbXBlZDwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNUV0lTVF9XSVRIX0NPVkFSSUFOQ0UiPlRXSVNUX1dJVEhfQ09WQVJJQU5DRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VHdpc3QgV2l0aCBDb3ZhcmlhbmNlPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1ZFQ1RPM19TVEFNUEVEIj5WRUNUTzNfU1RBTVBFRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VmVjdG8zIFN0YW1wZWQ8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjVkVDVE9SMyI+VkVDVE9SMzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VmVjdG9yMzwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNXUkVOQ0giPldSRU5DSDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+V3JlbmNoPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1dSRU5DSF9TVEFNUEVEIj5XUkVOQ0hfU1RBTVBFRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+V3JlbmNoIFN0YW1wZWQ8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gRklFTEQgREVUQUlMID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iUE9JTlQiPjwhLS0gLS0+PC9BPjxIMz4KK1BPSU5UPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5QT0lOVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+UG9pbnQ8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0UG9pbnQoKSI+PENPREU+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0UG9pbnQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlBPSU5UMzIiPjwhLS0gLS0+PC9BPjxIMz4KK1BPSU5UMzI8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPlBPSU5UMzI8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlBvaW50MzI8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0UG9pbnQzMigpIj48Q09ERT5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRQb2ludDMyKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQT0lOVF9TVEFNUEVEIj48IS0tIC0tPjwvQT48SDM+CitQT0lOVF9TVEFNUEVEPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5QT0lOVF9TVEFNUEVEPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Qb2ludCBTdGFtcGVkPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFBvaW50U3RhbXBlZCgpIj48Q09ERT5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRQb2ludFN0YW1wZWQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlBPTFlHT04iPjwhLS0gLS0+PC9BPjxIMz4KK1BPTFlHT048L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPlBPTFlHT048L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlBvbHlnb248L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0UG9seWdvbigpIj48Q09ERT5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRQb2x5Z29uKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQT0xZR09OX1NUQU1QRUQiPjwhLS0gLS0+PC9BPjxIMz4KK1BPTFlHT05fU1RBTVBFRDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+UE9MWUdPTl9TVEFNUEVEPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Qb2x5Z29uIFN0YW1wZWQ8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0UG9seWdvblN0YW1wZWQoKSI+PENPREU+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0UG9seWdvblN0YW1wZWQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlZFQ1RPUjMiPjwhLS0gLS0+PC9BPjxIMz4KK1ZFQ1RPUjM8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPlZFQ1RPUjM8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlZlY3RvcjM8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0VmVjdG9yMygpIj48Q09ERT5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRWZWN0b3IzKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJWRUNUTzNfU1RBTVBFRCI+PCEtLSAtLT48L0E+PEgzPgorVkVDVE8zX1NUQU1QRUQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPlZFQ1RPM19TVEFNUEVEPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5WZWN0bzMgU3RhbXBlZDwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRWZWN0bzNTdGFtcGVkKCkiPjxDT0RFPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldFZlY3RvM1N0YW1wZWQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlFVQVRFUk5JT04iPjwhLS0gLS0+PC9BPjxIMz4KK1FVQVRFUk5JT048L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPlFVQVRFUk5JT048L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlF1YXRlcm5pb248L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0UXVhdGVybmlvbigpIj48Q09ERT5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRRdWF0ZXJuaW9uKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQT1NFIj48IS0tIC0tPjwvQT48SDM+CitQT1NFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5QT1NFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Qb3NlPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFBvc2UoKSI+PENPREU+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0UG9zZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUE9TRV9TVEFNUEVEIj48IS0tIC0tPjwvQT48SDM+CitQT1NFX1NUQU1QRUQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPlBPU0VfU1RBTVBFRDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+UG9zZSBTdGFtcGVkPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFBvc2VTdGFtcGVkKCkiPjxDT0RFPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldFBvc2VTdGFtcGVkKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJUV0lTVF9XSVRIX0NPVkFSSUFOQ0UiPjwhLS0gLS0+PC9BPjxIMz4KK1RXSVNUX1dJVEhfQ09WQVJJQU5DRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+VFdJU1RfV0lUSF9DT1ZBUklBTkNFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Ud2lzdCBXaXRoIENvdmFyaWFuY2U8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0VHdpc3RXaXRoQ292YXJpYW5jZSgpIj48Q09ERT5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRUd2lzdFdpdGhDb3ZhcmlhbmNlKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJUV0lTVCI+PCEtLSAtLT48L0E+PEgzPgorVFdJU1Q8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPlRXSVNUPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Ud2lzdDwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRUd2lzdCgpIj48Q09ERT5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRUd2lzdCgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVFdJU1RfU1RBTVBFRCI+PCEtLSAtLT48L0E+PEgzPgorVFdJU1RfU1RBTVBFRDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+VFdJU1RfU1RBTVBFRDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VHdpc3QgU3RhbXBlZDwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRUd2lzdFN0YW1wZWQoKSI+PENPREU+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0VHdpc3RTdGFtcGVkKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQT1NFX1dJVEhfQ09WQVJJQU5DRSI+PCEtLSAtLT48L0E+PEgzPgorUE9TRV9XSVRIX0NPVkFSSUFOQ0U8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPlBPU0VfV0lUSF9DT1ZBUklBTkNFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Qb3NlIFdpdGggQ292YXJpYW5jZTwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRQb3NlV2l0aENvdmFyaWFuY2UoKSI+PENPREU+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0UG9zZVdpdGhDb3ZhcmlhbmNlKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQT1NFMl9EIj48IS0tIC0tPjwvQT48SDM+CitQT1NFMl9EPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5QT1NFMl9EPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Qb3NlMiBEPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFBvc2UyRCgpIj48Q09ERT5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRQb3NlMkQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlBPU0VfV0lUSF9DT1ZBUklBTkNFX1NUQU1QRUQiPjwhLS0gLS0+PC9BPjxIMz4KK1BPU0VfV0lUSF9DT1ZBUklBTkNFX1NUQU1QRUQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPlBPU0VfV0lUSF9DT1ZBUklBTkNFX1NUQU1QRUQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlBvc2UgV2l0aCBDb3ZhcmlhbmNlIFN0YW1wZWQ8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0UG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZCgpIj48Q09ERT5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQT1NFX0FSUkFZIj48IS0tIC0tPjwvQT48SDM+CitQT1NFX0FSUkFZPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5QT1NFX0FSUkFZPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Qb3NlIEFycmF5PC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFBvc2VBcnJheSgpIj48Q09ERT5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRQb3NlQXJyYXkoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlFVQVRFUk5JT05fU1RBTVBFRCI+PCEtLSAtLT48L0E+PEgzPgorUVVBVEVSTklPTl9TVEFNUEVEPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5RVUFURVJOSU9OX1NUQU1QRUQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlF1YXRlcm5pb24gU3RhbXBlZDwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRRdWF0ZXJuaW9uU3RhbXBlZCgpIj48Q09ERT5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRRdWF0ZXJuaW9uU3RhbXBlZCgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVFJBTlNGT1JNIj48IS0tIC0tPjwvQT48SDM+CitUUkFOU0ZPUk08L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPlRSQU5TRk9STTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VHJhbnNmb3JtPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFRyYW5zZm9ybSgpIj48Q09ERT5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRUcmFuc2Zvcm0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IldSRU5DSF9TVEFNUEVEIj48IS0tIC0tPjwvQT48SDM+CitXUkVOQ0hfU1RBTVBFRDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+V1JFTkNIX1NUQU1QRUQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPldyZW5jaCBTdGFtcGVkPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFdyZW5jaFN0YW1wZWQoKSI+PENPREU+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0V3JlbmNoU3RhbXBlZCgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iV1JFTkNIIj48IS0tIC0tPjwvQT48SDM+CitXUkVOQ0g8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPldSRU5DSDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+V3JlbmNoPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFdyZW5jaCgpIj48Q09ERT5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRXcmVuY2goKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7TkVYVCBDTEFTUzwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NGRiOTYzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbApAQCAtMCwwICsxLDE0ODggQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyOSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UgaW50ZXJmYWNlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ikdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzX3N1bW1hcnkiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX3N1bW1hcnkiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwOzxBIEhSRUY9IiNmaWVsZF9kZXRhaWwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXM8L0ZPTlQ+Cis8QlI+CitJbnRlcmZhY2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvSDI+Cis8REw+Cis8RFQ+PEI+QWxsIFN1cGVyaW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVOYW1lZEVsZW1lbnQsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UsIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIEltcGxlbWVudGluZyBDbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBpbnRlcmZhY2UgPEI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQj48RFQ+ZXh0ZW5kcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U8L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoZSBtb2RlbC4KKyBJdCBjb250YWlucyBhY2Nlc3NvcnMgZm9yIHRoZSBtZXRhIG9iamVjdHMgdG8gcmVwcmVzZW50CisgPHVsPgorICAgPGxpPmVhY2ggY2xhc3MsPC9saT4KKyAgIDxsaT5lYWNoIGZlYXR1cmUgb2YgZWFjaCBjbGFzcyw8L2xpPgorICAgPGxpPmVhY2ggZW51bSw8L2xpPgorICAgPGxpPmFuZCBlYWNoIGRhdGEgdHlwZTwvbGk+CisgPC91bD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPjxDT0RFPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0NPREU+PC9BPjwvREw+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PSBORVNURUQgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0ibmVzdGVkX2NsYXNzX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5OZXN0ZWQgQ2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0RlZmluZXMgbGl0ZXJhbHMgZm9yIHRoZSBtZXRhIG9iamVjdHMgdGhhdCByZXByZXNlbnQKKyAKKyBlYWNoIGNsYXNzLAorIGVhY2ggZmVhdHVyZSBvZiBlYWNoIGNsYXNzLAorIGVhY2ggZW51bSwKKyBhbmQgZWFjaCBkYXRhIHR5cGUKKyAKKyA8ITwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZTwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZS5EZXNjcmlwdG9yLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UuUmVnaXN0cnk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZUlOU1RBTkNFIj5lSU5TVEFOQ0U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiB0aGUgcGFja2FnZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VOQU1FIj5lTkFNRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgcGFja2FnZSBuYW1lPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1BSRUZJWCI+ZU5TX1BSRUZJWDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgcGFja2FnZSBuYW1lc3BhY2UgbmFtZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VOU19VUkkiPmVOU19VUkk8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIHBhY2thZ2UgbmFtZXNwYWNlIFVSSTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjUE9JTlQiPlBPSU5UPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+UG9pbnQ8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNQT0lOVF9TVEFNUEVEIj5QT0lOVF9TVEFNUEVEPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+UG9pbnQgU3RhbXBlZDwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1BPSU5UMzIiPlBPSU5UMzI8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Qb2ludDMyPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjUE9MWUdPTiI+UE9MWUdPTjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlBvbHlnb248L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNQT0xZR09OX1NUQU1QRUQiPlBPTFlHT05fU1RBTVBFRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlBvbHlnb24gU3RhbXBlZDwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1BPU0UiPlBPU0U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Qb3NlPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjUE9TRV9BUlJBWSI+UE9TRV9BUlJBWTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlBvc2UgQXJyYXk8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNQT1NFX1NUQU1QRUQiPlBPU0VfU1RBTVBFRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlBvc2UgU3RhbXBlZDwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1BPU0VfV0lUSF9DT1ZBUklBTkNFIj5QT1NFX1dJVEhfQ09WQVJJQU5DRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlBvc2UgV2l0aCBDb3ZhcmlhbmNlPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjUE9TRV9XSVRIX0NPVkFSSUFOQ0VfU1RBTVBFRCI+UE9TRV9XSVRIX0NPVkFSSUFOQ0VfU1RBTVBFRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlBvc2UgV2l0aCBDb3ZhcmlhbmNlIFN0YW1wZWQ8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNQT1NFMl9EIj5QT1NFMl9EPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+UG9zZTIgRDwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1FVQVRFUk5JT04iPlFVQVRFUk5JT048L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5RdWF0ZXJuaW9uPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjUVVBVEVSTklPTl9TVEFNUEVEIj5RVUFURVJOSU9OX1NUQU1QRUQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5RdWF0ZXJuaW9uIFN0YW1wZWQ8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNUUkFOU0ZPUk0iPlRSQU5TRk9STTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlRyYW5zZm9ybTwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1RXSVNUIj5UV0lTVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlR3aXN0PC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjVFdJU1RfU1RBTVBFRCI+VFdJU1RfU1RBTVBFRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlR3aXN0IFN0YW1wZWQ8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNUV0lTVF9XSVRIX0NPVkFSSUFOQ0UiPlRXSVNUX1dJVEhfQ09WQVJJQU5DRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlR3aXN0IFdpdGggQ292YXJpYW5jZTwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1ZFQ1RPM19TVEFNUEVEIj5WRUNUTzNfU1RBTVBFRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlZlY3RvMyBTdGFtcGVkPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjVkVDVE9SMyI+VkVDVE9SMzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlZlY3RvcjM8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNXUkVOQ0giPldSRU5DSDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPldyZW5jaDwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1dSRU5DSF9TVEFNUEVEIj5XUkVOQ0hfU1RBTVBFRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPldyZW5jaCBTdGFtcGVkPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeSgpIj5nZXRHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgZmFjdG9yeSB0aGF0IGNyZWF0ZXMgdGhlIGluc3RhbmNlcyBvZiB0aGUgbW9kZWw8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRQb2ludCgpIj5nZXRQb2ludDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Qb2ludDwvZW0+PC9DT0RFPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRQb2ludDMyKCkiPmdldFBvaW50MzI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+UG9pbnQzMjwvZW0+PC9DT0RFPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRQb2ludFN0YW1wZWQoKSI+Z2V0UG9pbnRTdGFtcGVkPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlBvaW50IFN0YW1wZWQ8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0UG9seWdvbigpIj5nZXRQb2x5Z29uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlBvbHlnb248L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0UG9seWdvblN0YW1wZWQoKSI+Z2V0UG9seWdvblN0YW1wZWQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+UG9seWdvbiBTdGFtcGVkPC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFBvc2UoKSI+Z2V0UG9zZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Qb3NlPC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFBvc2UyRCgpIj5nZXRQb3NlMkQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+UG9zZTIgRDwvZW0+PC9DT0RFPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRQb3NlQXJyYXkoKSI+Z2V0UG9zZUFycmF5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlBvc2UgQXJyYXk8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0UG9zZVN0YW1wZWQoKSI+Z2V0UG9zZVN0YW1wZWQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+UG9zZSBTdGFtcGVkPC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFBvc2VXaXRoQ292YXJpYW5jZSgpIj5nZXRQb3NlV2l0aENvdmFyaWFuY2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+UG9zZSBXaXRoIENvdmFyaWFuY2U8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0UG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZCgpIj5nZXRQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlBvc2UgV2l0aCBDb3ZhcmlhbmNlIFN0YW1wZWQ8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0UXVhdGVybmlvbigpIj5nZXRRdWF0ZXJuaW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlF1YXRlcm5pb248L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0UXVhdGVybmlvblN0YW1wZWQoKSI+Z2V0UXVhdGVybmlvblN0YW1wZWQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+UXVhdGVybmlvbiBTdGFtcGVkPC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFRyYW5zZm9ybSgpIj5nZXRUcmFuc2Zvcm08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+VHJhbnNmb3JtPC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFR3aXN0KCkiPmdldFR3aXN0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlR3aXN0PC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFR3aXN0U3RhbXBlZCgpIj5nZXRUd2lzdFN0YW1wZWQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+VHdpc3QgU3RhbXBlZDwvZW0+PC9DT0RFPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRUd2lzdFdpdGhDb3ZhcmlhbmNlKCkiPmdldFR3aXN0V2l0aENvdmFyaWFuY2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+VHdpc3QgV2l0aCBDb3ZhcmlhbmNlPC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFZlY3RvM1N0YW1wZWQoKSI+Z2V0VmVjdG8zU3RhbXBlZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5WZWN0bzMgU3RhbXBlZDwvZW0+PC9DT0RFPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRWZWN0b3IzKCkiPmdldFZlY3RvcjM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+VmVjdG9yMzwvZW0+PC9DT0RFPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRXcmVuY2goKSI+Z2V0V3JlbmNoPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPldyZW5jaDwvZW0+PC9DT0RFPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRXcmVuY2hTdGFtcGVkKCkiPmdldFdyZW5jaFN0YW1wZWQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+V3JlbmNoIFN0YW1wZWQ8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXRFQ2xhc3NpZmllciwgZ2V0RUNsYXNzaWZpZXJzLCBnZXRFRmFjdG9yeUluc3RhbmNlLCBnZXRFU3VicGFja2FnZXMsIGdldEVTdXBlclBhY2thZ2UsIGdldE5zUHJlZml4LCBnZXROc1VSSSwgc2V0RUZhY3RvcnlJbnN0YW5jZSwgc2V0TnNQcmVmaXgsIHNldE5zVVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVOYW1lZEVsZW1lbnQiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU5hbWVkRWxlbWVudDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmdldE5hbWUsIHNldE5hbWU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0RUFubm90YXRpb24sIGdldEVBbm5vdGF0aW9uczwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IEZJRUxEIERFVEFJTCA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImVOQU1FIj48IS0tIC0tPjwvQT48SDM+CitlTkFNRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGphdmEubGFuZy5TdHJpbmcgPEI+ZU5BTUU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIHBhY2thZ2UgbmFtZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuZU5BTUUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZU5TX1VSSSI+PCEtLSAtLT48L0E+PEgzPgorZU5TX1VSSTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGphdmEubGFuZy5TdHJpbmcgPEI+ZU5TX1VSSTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgcGFja2FnZSBuYW1lc3BhY2UgVVJJLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVOU19QUkVGSVgiPjwhLS0gLS0+PC9BPjxIMz4KK2VOU19QUkVGSVg8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBqYXZhLmxhbmcuU3RyaW5nIDxCPmVOU19QUkVGSVg8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIHBhY2thZ2UgbmFtZXNwYWNlIG5hbWUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmVOU19QUkVGSVgiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUlOU1RBTkNFIj48IS0tIC0tPjwvQT48SDM+CitlSU5TVEFOQ0U8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPiA8Qj5lSU5TVEFOQ0U8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiB0aGUgcGFja2FnZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUE9JTlQiPjwhLS0gLS0+PC9BPjxIMz4KK1BPSU5UPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlBPSU5UPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+UG9pbnQ8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0UG9pbnQoKSI+PENPREU+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0UG9pbnQoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0lOVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQT0lOVDMyIj48IS0tIC0tPjwvQT48SDM+CitQT0lOVDMyPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlBPSU5UMzI8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Qb2ludDMyPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFBvaW50MzIoKSI+PENPREU+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0UG9pbnQzMigpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UMzIiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUE9JTlRfU1RBTVBFRCI+PCEtLSAtLT48L0E+PEgzPgorUE9JTlRfU1RBTVBFRDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5QT0lOVF9TVEFNUEVEPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+UG9pbnQgU3RhbXBlZDwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRQb2ludFN0YW1wZWQoKSI+PENPREU+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0UG9pbnRTdGFtcGVkKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfU1RBTVBFRCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQT0xZR09OIj48IS0tIC0tPjwvQT48SDM+CitQT0xZR09OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlBPTFlHT048L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Qb2x5Z29uPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFBvbHlnb24oKSI+PENPREU+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0UG9seWdvbigpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPTFlHT04iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUE9MWUdPTl9TVEFNUEVEIj48IS0tIC0tPjwvQT48SDM+CitQT0xZR09OX1NUQU1QRUQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+UE9MWUdPTl9TVEFNUEVEPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+UG9seWdvbiBTdGFtcGVkPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFBvbHlnb25TdGFtcGVkKCkiPjxDT0RFPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldFBvbHlnb25TdGFtcGVkKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9MWUdPTl9TVEFNUEVEIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlZFQ1RPUjMiPjwhLS0gLS0+PC9BPjxIMz4KK1ZFQ1RPUjM8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+VkVDVE9SMzwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlZlY3RvcjM8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0VmVjdG9yMygpIj48Q09ERT5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRWZWN0b3IzKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVkVDVE9SMyI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJWRUNUTzNfU1RBTVBFRCI+PCEtLSAtLT48L0E+PEgzPgorVkVDVE8zX1NUQU1QRUQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+VkVDVE8zX1NUQU1QRUQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5WZWN0bzMgU3RhbXBlZDwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRWZWN0bzNTdGFtcGVkKCkiPjxDT0RFPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldFZlY3RvM1N0YW1wZWQoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5WRUNUTzNfU1RBTVBFRCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJRVUFURVJOSU9OIj48IS0tIC0tPjwvQT48SDM+CitRVUFURVJOSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlFVQVRFUk5JT048L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5RdWF0ZXJuaW9uPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFF1YXRlcm5pb24oKSI+PENPREU+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0UXVhdGVybmlvbigpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlFVQVRFUk5JT04iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUE9TRSI+PCEtLSAtLT48L0E+PEgzPgorUE9TRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5QT1NFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+UG9zZTwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRQb3NlKCkiPjxDT0RFPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldFBvc2UoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlBPU0VfU1RBTVBFRCI+PCEtLSAtLT48L0E+PEgzPgorUE9TRV9TVEFNUEVEPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlBPU0VfU1RBTVBFRDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlBvc2UgU3RhbXBlZDwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRQb3NlU3RhbXBlZCgpIj48Q09ERT5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRQb3NlU3RhbXBlZCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfU1RBTVBFRCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJUV0lTVF9XSVRIX0NPVkFSSUFOQ0UiPjwhLS0gLS0+PC9BPjxIMz4KK1RXSVNUX1dJVEhfQ09WQVJJQU5DRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5UV0lTVF9XSVRIX0NPVkFSSUFOQ0U8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Ud2lzdCBXaXRoIENvdmFyaWFuY2U8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0VHdpc3RXaXRoQ292YXJpYW5jZSgpIj48Q09ERT5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRUd2lzdFdpdGhDb3ZhcmlhbmNlKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfV0lUSF9DT1ZBUklBTkNFIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlRXSVNUIj48IS0tIC0tPjwvQT48SDM+CitUV0lTVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5UV0lTVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlR3aXN0PC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFR3aXN0KCkiPjxDT0RFPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldFR3aXN0KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1QiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVFdJU1RfU1RBTVBFRCI+PCEtLSAtLT48L0E+PEgzPgorVFdJU1RfU1RBTVBFRDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5UV0lTVF9TVEFNUEVEPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+VHdpc3QgU3RhbXBlZDwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRUd2lzdFN0YW1wZWQoKSI+PENPREU+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0VHdpc3RTdGFtcGVkKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfU1RBTVBFRCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQT1NFX1dJVEhfQ09WQVJJQU5DRSI+PCEtLSAtLT48L0E+PEgzPgorUE9TRV9XSVRIX0NPVkFSSUFOQ0U8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+UE9TRV9XSVRIX0NPVkFSSUFOQ0U8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Qb3NlIFdpdGggQ292YXJpYW5jZTwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRQb3NlV2l0aENvdmFyaWFuY2UoKSI+PENPREU+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0UG9zZVdpdGhDb3ZhcmlhbmNlKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9XSVRIX0NPVkFSSUFOQ0UiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUE9TRTJfRCI+PCEtLSAtLT48L0E+PEgzPgorUE9TRTJfRDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5QT1NFMl9EPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+UG9zZTIgRDwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRQb3NlMkQoKSI+PENPREU+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0UG9zZTJEKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRTJfRCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQT1NFX1dJVEhfQ09WQVJJQU5DRV9TVEFNUEVEIj48IS0tIC0tPjwvQT48SDM+CitQT1NFX1dJVEhfQ09WQVJJQU5DRV9TVEFNUEVEPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlBPU0VfV0lUSF9DT1ZBUklBTkNFX1NUQU1QRUQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Qb3NlIFdpdGggQ292YXJpYW5jZSBTdGFtcGVkPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWQoKSI+PENPREU+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0UG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfV0lUSF9DT1ZBUklBTkNFX1NUQU1QRUQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUE9TRV9BUlJBWSI+PCEtLSAtLT48L0E+PEgzPgorUE9TRV9BUlJBWTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5QT1NFX0FSUkFZPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+UG9zZSBBcnJheTwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRQb3NlQXJyYXkoKSI+PENPREU+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0UG9zZUFycmF5KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9BUlJBWSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJRVUFURVJOSU9OX1NUQU1QRUQiPjwhLS0gLS0+PC9BPjxIMz4KK1FVQVRFUk5JT05fU1RBTVBFRDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5RVUFURVJOSU9OX1NUQU1QRUQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5RdWF0ZXJuaW9uIFN0YW1wZWQ8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0UXVhdGVybmlvblN0YW1wZWQoKSI+PENPREU+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0UXVhdGVybmlvblN0YW1wZWQoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5RVUFURVJOSU9OX1NUQU1QRUQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVFJBTlNGT1JNIj48IS0tIC0tPjwvQT48SDM+CitUUkFOU0ZPUk08L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+VFJBTlNGT1JNPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+VHJhbnNmb3JtPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFRyYW5zZm9ybSgpIj48Q09ERT5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRUcmFuc2Zvcm0oKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5UUkFOU0ZPUk0iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iV1JFTkNIX1NUQU1QRUQiPjwhLS0gLS0+PC9BPjxIMz4KK1dSRU5DSF9TVEFNUEVEPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPldSRU5DSF9TVEFNUEVEPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+V3JlbmNoIFN0YW1wZWQ8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0V3JlbmNoU3RhbXBlZCgpIj48Q09ERT5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRXcmVuY2hTdGFtcGVkKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuV1JFTkNIX1NUQU1QRUQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iV1JFTkNIIj48IS0tIC0tPjwvQT48SDM+CitXUkVOQ0g8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+V1JFTkNIPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+V3JlbmNoPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFdyZW5jaCgpIj48Q09ERT5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRXcmVuY2goKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5XUkVOQ0giPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJnZXRQb2ludCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRQb2ludDwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRQb2ludDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Qb2ludDwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPlBvaW50PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBvaW50MzIoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UG9pbnQzMjwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRQb2ludDMyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlBvaW50MzI8L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5Qb2ludDMyPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBvaW50U3RhbXBlZCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRQb2ludFN0YW1wZWQ8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0UG9pbnRTdGFtcGVkPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlBvaW50IFN0YW1wZWQ8L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5Qb2ludCBTdGFtcGVkPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBvbHlnb24oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UG9seWdvbjwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRQb2x5Z29uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlBvbHlnb248L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5Qb2x5Z29uPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBvbHlnb25TdGFtcGVkKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBvbHlnb25TdGFtcGVkPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFBvbHlnb25TdGFtcGVkPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlBvbHlnb24gU3RhbXBlZDwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPlBvbHlnb24gU3RhbXBlZDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRWZWN0b3IzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFZlY3RvcjM8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0VmVjdG9yMzwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5WZWN0b3IzPC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+VmVjdG9yMzwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRWZWN0bzNTdGFtcGVkKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFZlY3RvM1N0YW1wZWQ8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0VmVjdG8zU3RhbXBlZDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5WZWN0bzMgU3RhbXBlZDwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPlZlY3RvMyBTdGFtcGVkPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFF1YXRlcm5pb24oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UXVhdGVybmlvbjwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRRdWF0ZXJuaW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlF1YXRlcm5pb248L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5RdWF0ZXJuaW9uPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBvc2UoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UG9zZTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRQb3NlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlBvc2U8L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5Qb3NlPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBvc2VTdGFtcGVkKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBvc2VTdGFtcGVkPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFBvc2VTdGFtcGVkPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlBvc2UgU3RhbXBlZDwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPlBvc2UgU3RhbXBlZDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRUd2lzdFdpdGhDb3ZhcmlhbmNlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFR3aXN0V2l0aENvdmFyaWFuY2U8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0VHdpc3RXaXRoQ292YXJpYW5jZTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Ud2lzdCBXaXRoIENvdmFyaWFuY2U8L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5Ud2lzdCBXaXRoIENvdmFyaWFuY2U8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0VHdpc3QoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0VHdpc3Q8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0VHdpc3Q8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+VHdpc3Q8L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5Ud2lzdDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRUd2lzdFN0YW1wZWQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0VHdpc3RTdGFtcGVkPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFR3aXN0U3RhbXBlZDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Ud2lzdCBTdGFtcGVkPC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+VHdpc3QgU3RhbXBlZDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRQb3NlV2l0aENvdmFyaWFuY2UoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UG9zZVdpdGhDb3ZhcmlhbmNlPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFBvc2VXaXRoQ292YXJpYW5jZTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Qb3NlIFdpdGggQ292YXJpYW5jZTwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPlBvc2UgV2l0aCBDb3ZhcmlhbmNlPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBvc2UyRCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRQb3NlMkQ8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0UG9zZTJEPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlBvc2UyIEQ8L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5Qb3NlMiBEPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZDwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlBvc2UgV2l0aCBDb3ZhcmlhbmNlIFN0YW1wZWQ8L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5Qb3NlIFdpdGggQ292YXJpYW5jZSBTdGFtcGVkPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBvc2VBcnJheSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRQb3NlQXJyYXk8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0UG9zZUFycmF5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlBvc2UgQXJyYXk8L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5Qb3NlIEFycmF5PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFF1YXRlcm5pb25TdGFtcGVkKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFF1YXRlcm5pb25TdGFtcGVkPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFF1YXRlcm5pb25TdGFtcGVkPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlF1YXRlcm5pb24gU3RhbXBlZDwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPlF1YXRlcm5pb24gU3RhbXBlZDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRUcmFuc2Zvcm0oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0VHJhbnNmb3JtPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFRyYW5zZm9ybTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5UcmFuc2Zvcm08L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5UcmFuc2Zvcm08L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V3JlbmNoU3RhbXBlZCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRXcmVuY2hTdGFtcGVkPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFdyZW5jaFN0YW1wZWQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+V3JlbmNoIFN0YW1wZWQ8L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5XcmVuY2ggU3RhbXBlZDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXcmVuY2goKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V3JlbmNoPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFdyZW5jaDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5XcmVuY2g8L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5XcmVuY2g8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5PC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5PC9BPiA8Qj5nZXRHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgZmFjdG9yeSB0aGF0IGNyZWF0ZXMgdGhlIGluc3RhbmNlcyBvZiB0aGUgbW9kZWwuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgZmFjdG9yeSB0aGF0IGNyZWF0ZXMgdGhlIGluc3RhbmNlcyBvZiB0aGUgbW9kZWwuPC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc19zdW1tYXJ5Ij5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9jbGFzcy11c2UvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2NsYXNzLXVzZS9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzkxZTQ1OAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9jbGFzcy11c2UvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sCkBAIC0wLDAgKzEsMjQ1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2NsYXNzLXVzZS9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXM8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXM8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+RmllbGRzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXM8L0E+IGRlY2xhcmVkIGFzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCNlSU5TVEFOQ0UiPmVJTlNUQU5DRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBmYWN0b3J5PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXM8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5KCkiPmdldEdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBmYWN0b3J5IHRoYXQgY3JlYXRlcyB0aGUgaW5zdGFuY2VzIG9mIHRoZSBtb2RlbDwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPkNsYXNzZXMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPkZhY3Rvcnk8L2I+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkoKSI+Z2V0R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2luaXQoKSI+aW5pdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMgdGhlIGRlZmF1bHQgZmFjdG9yeSBpbXBsZW1lbnRhdGlvbjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9jbGFzcy11c2UvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ikdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9jbGFzcy11c2UvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2NsYXNzLXVzZS9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODdiNjEzOAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9jbGFzcy11c2UvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sCkBAIC0wLDAgKzEsMTQwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2NsYXNzLXVzZS9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2NsYXNzLXVzZS9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2NsYXNzLXVzZS9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvY2xhc3MtdXNlL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42M2IwNDYwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2NsYXNzLXVzZS9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwKQEAgLTAsMCArMSwyNTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvY2xhc3MtdXNlL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgSW50ZXJmYWNlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlczwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlczwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5GaWVsZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlczwvQT4gZGVjbGFyZWQgYXMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VJTlNUQU5DRSI+ZUlOU1RBTkNFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIHBhY2thZ2U8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlczwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sI2dldEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UoKSI+Z2V0R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHBhY2thZ2Ugc3VwcG9ydGVkIGJ5IHRoaXMgZmFjdG9yeTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPkNsYXNzZXMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPlBhY2thZ2U8L2I+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2dldEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UoKSI+Z2V0R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2dldFBhY2thZ2UoKSI+Z2V0UGFja2FnZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwOzxJPjwvST4mbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2luaXQoKSI+aW5pdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMsIHJlZ2lzdGVycywgYW5kIGluaXRpYWxpemVzIHRoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhpcyBtb2RlbCwgYW5kIGZvciBhbnkgb3RoZXJzIHVwb24gd2hpY2ggaXQgZGVwZW5kcy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvY2xhc3MtdXNlL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mYzk0MTMxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbApAQCAtMCwwICsxLDE3NzIgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyOSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsIGNsYXNzIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViBDTEFTUyZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3JfZGV0YWlsIj5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGw8L0ZPTlQ+Cis8QlI+CitDbGFzcyBHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsCisgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyCisgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU1vZGVsRWxlbWVudEltcGwKKyAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsCisgICAgICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FU3RydWN0dXJhbEZlYXR1cmUuSW50ZXJuYWwuRHluYW1pY1ZhbHVlSG9sZGVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGNsYXNzIDxCPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9CPjxEVD5leHRlbmRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVGYWN0b3J5SW1wbDxEVD5pbXBsZW1lbnRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPkZhY3Rvcnk8L2I+LgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyLkR5bmFtaWM8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FQWRhcHRlckxpc3QmbHQ7RSBleHRlbmRzIGphdmEubGFuZy5PYmplY3QgJiBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyJmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FT2JzZXJ2YWJsZUFkYXB0ZXJMaXN0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LkVTdG9yZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCNlSU5TVEFOQ0UiPmVJTlNUQU5DRTwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FU3RydWN0dXJhbEZlYXR1cmUuSW50ZXJuYWwuRHluYW1pY1ZhbHVlSG9sZGVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVN0cnVjdHVyYWxGZWF0dXJlLkludGVybmFsLkR5bmFtaWNWYWx1ZUhvbGRlcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPk5JTDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVPUFBPU0lURV9GRUFUVVJFX0JBU0U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09IENPTlNUUlVDVE9SIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImNvbnN0cnVjdG9yX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5Db25zdHJ1Y3RvciBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsKCkiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgZmFjdG9yeTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0UG9pbnQzMlRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0UG9pbnQzMlRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFBvaW50U3RhbXBlZFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0UG9pbnRTdGFtcGVkVG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRQb2ludFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0UG9pbnRUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0UG9seWdvblN0YW1wZWRUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydFBvbHlnb25TdGFtcGVkVG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFBvbHlnb25Ub1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydFBvbHlnb25Ub1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRQb3NlMkRUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydFBvc2UyRFRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0UG9zZUFycmF5VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRQb3NlQXJyYXlUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFBvc2VTdGFtcGVkVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRQb3NlU3RhbXBlZFRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRQb3NlVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRQb3NlVG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0UG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0UG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZFRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFBvc2VXaXRoQ292YXJpYW5jZVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0UG9zZVdpdGhDb3ZhcmlhbmNlVG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRRdWF0ZXJuaW9uU3RhbXBlZFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0UXVhdGVybmlvblN0YW1wZWRUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0UXVhdGVybmlvblRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0UXVhdGVybmlvblRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0VG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRUcmFuc2Zvcm1Ub1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydFRyYW5zZm9ybVRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0VHdpc3RTdGFtcGVkVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRUd2lzdFN0YW1wZWRUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFR3aXN0VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRUd2lzdFRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRUd2lzdFdpdGhDb3ZhcmlhbmNlVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRUd2lzdFdpdGhDb3ZhcmlhbmNlVG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0VmVjdG8zU3RhbXBlZFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0VmVjdG8zU3RhbXBlZFRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFZlY3RvcjNUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydFZlY3RvcjNUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRXcmVuY2hTdGFtcGVkVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRXcmVuY2hTdGFtcGVkVG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0V3JlbmNoVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRXcmVuY2hUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZShvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzKSI+Y3JlYXRlPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyZuYnNwO2VDbGFzcyk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLk9iamVjdDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQb2ludDMyRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlUG9pbnQzMkZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQb2ludEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZVBvaW50RnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQb2ludFN0YW1wZWRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVQb2ludFN0YW1wZWRGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQb2x5Z29uRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlUG9seWdvbkZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQb2x5Z29uU3RhbXBlZEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZVBvbHlnb25TdGFtcGVkRnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQb3NlMkRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVQb3NlMkRGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQb3NlQXJyYXlGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVQb3NlQXJyYXlGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQb3NlRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlUG9zZUZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQb3NlU3RhbXBlZEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZVBvc2VTdGFtcGVkRnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQb3NlV2l0aENvdmFyaWFuY2VGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVQb3NlV2l0aENvdmFyaWFuY2VGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlUG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZEZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVRdWF0ZXJuaW9uRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlUXVhdGVybmlvbkZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVRdWF0ZXJuaW9uU3RhbXBlZEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZVF1YXRlcm5pb25TdGFtcGVkRnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVUcmFuc2Zvcm1Gcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVUcmFuc2Zvcm1Gcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVUd2lzdEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZVR3aXN0RnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVUd2lzdFN0YW1wZWRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVUd2lzdFN0YW1wZWRGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVUd2lzdFdpdGhDb3ZhcmlhbmNlRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlVHdpc3RXaXRoQ292YXJpYW5jZUZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVWZWN0bzNTdGFtcGVkRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlVmVjdG8zU3RhbXBlZEZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVWZWN0b3IzRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlVmVjdG9yM0Zyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVXcmVuY2hGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVXcmVuY2hGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVXcmVuY2hTdGFtcGVkRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlV3JlbmNoU3RhbXBlZEZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjZ2V0R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSgpIj5nZXRHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNnZXRQYWNrYWdlKCkiPmdldFBhY2thZ2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST48L0k+Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2luaXQoKSI+aW5pdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMgdGhlIGRlZmF1bHQgZmFjdG9yeSBpbXBsZW1lbnRhdGlvbjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FRmFjdG9yeUltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5iYXNpY1NldEVQYWNrYWdlLCBlR2V0LCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZVNldCwgZVVuc2V0LCBnZXRFUGFja2FnZSwgc2V0RVBhY2thZ2U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTW9kZWxFbGVtZW50SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU1vZGVsRWxlbWVudEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lT2JqZWN0Rm9yVVJJRnJhZ21lbnRTZWdtZW50LCBlVVJJRnJhZ21lbnRTZWdtZW50LCBnZXRFQW5ub3RhdGlvbiwgZ2V0RUFubm90YXRpb25zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVJbnRlcm5hbENvbnRhaW5lcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZHluYW1pY0dldCwgZHluYW1pY1NldCwgZHluYW1pY1Vuc2V0LCBlQWRhcHRlcnMsIGVDbGFzcywgZUNvbnRhaW5lckZlYXR1cmVJRCwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVsaXZlciwgZURpcmVjdFJlc291cmNlLCBlSXNQcm94eSwgZVByb3h5VVJJLCBlU2V0Q2xhc3MsIGVTZXREZWxpdmVyLCBlU2V0UHJveHlVUkk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQmFzZVN0cnVjdHVyYWxGZWF0dXJlSUQsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXJGZWF0dXJlLCBlQmFzaWNTZXRDb250YWluZXIsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRhaW5zLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZUR5bmFtaWNCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVEeW5hbWljR2V0LCBlRHluYW1pY0dldCwgZUR5bmFtaWNJbnZlcnNlQWRkLCBlRHluYW1pY0ludmVyc2VSZW1vdmUsIGVEeW5hbWljSW52b2tlLCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljVW5zZXQsIGVEeW5hbWljVW5zZXQsIGVHZXQsIGVHZXQsIGVHZXQsIGVJbnRlcm5hbFJlc291cmNlLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZU9wZW5HZXQsIGVPcGVuSXNTZXQsIGVPcGVuU2V0LCBlT3BlblVuc2V0LCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQsIHRvU3RyaW5nPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3RvcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3Rvcnk8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXRFUGFja2FnZSwgc2V0RVBhY2thZ2U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0RUFubm90YXRpb24sIGdldEVBbm5vdGF0aW9uczwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT0gQ09OU1RSVUNUT1IgREVUQUlMID09PT09PT09IC0tPgorCis8QSBOQU1FPSJjb25zdHJ1Y3Rvcl9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5Db25zdHJ1Y3RvciBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwoKSI+PCEtLSAtLT48L0E+PEgzPgorR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0gzPgorPFBSRT4KK3B1YmxpYyA8Qj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIGZhY3RvcnkuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPC9ETD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJpbml0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2luaXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeTwvQT4gPEI+aW5pdDwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgdGhlIGRlZmF1bHQgZmFjdG9yeSBpbXBsZW1lbnRhdGlvbi4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGUob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0IDxCPmNyZWF0ZTwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyZuYnNwO2VDbGFzcyk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5jcmVhdGU8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3Rvcnk8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmNyZWF0ZTwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZUNsYXNzPC9DT0RFPiAtIHRoZSBlIGNsYXNzCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBlIG9iamVjdDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5PYmplY3QgPEI+Y3JlYXRlRnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5jcmVhdGVGcm9tU3RyaW5nPC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5jcmVhdGVGcm9tU3RyaW5nPC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FRmFjdG9yeUltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgb2JqZWN0PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydFRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmNvbnZlcnRUb1N0cmluZzwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeTwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+Y29udmVydFRvU3RyaW5nPC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FRmFjdG9yeUltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVBvaW50RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlUG9pbnRGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVQb2ludEZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydFBvaW50VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRQb2ludFRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0UG9pbnRUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVBvaW50MzJGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVQb2ludDMyRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlUG9pbnQzMkZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0UG9pbnQzMlRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0UG9pbnQzMlRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0UG9pbnQzMlRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVQb2ludFN0YW1wZWRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVQb2ludFN0YW1wZWRGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVQb2ludFN0YW1wZWRGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0UG9pbnRTdGFtcGVkVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRQb2ludFN0YW1wZWRUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydFBvaW50U3RhbXBlZFRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVBvbHlnb25Gcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVQb2x5Z29uRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlUG9seWdvbkZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0UG9seWdvblRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0UG9seWdvblRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0UG9seWdvblRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVQb2x5Z29uU3RhbXBlZEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVBvbHlnb25TdGFtcGVkRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlUG9seWdvblN0YW1wZWRGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRQb2x5Z29uU3RhbXBlZFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0UG9seWdvblN0YW1wZWRUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydFBvbHlnb25TdGFtcGVkVG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVWZWN0b3IzRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlVmVjdG9yM0Zyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZVZlY3RvcjNGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydFZlY3RvcjNUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydFZlY3RvcjNUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydFZlY3RvcjNUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlVmVjdG8zU3RhbXBlZEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVZlY3RvM1N0YW1wZWRGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVWZWN0bzNTdGFtcGVkRnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRWZWN0bzNTdGFtcGVkVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRWZWN0bzNTdGFtcGVkVG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRWZWN0bzNTdGFtcGVkVG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVF1YXRlcm5pb25Gcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVRdWF0ZXJuaW9uRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlUXVhdGVybmlvbkZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0UXVhdGVybmlvblRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0UXVhdGVybmlvblRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0UXVhdGVybmlvblRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVQb3NlRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlUG9zZUZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZVBvc2VGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydFBvc2VUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydFBvc2VUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydFBvc2VUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlUG9zZVN0YW1wZWRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVQb3NlU3RhbXBlZEZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZVBvc2VTdGFtcGVkRnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0UG9zZVN0YW1wZWRUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydFBvc2VTdGFtcGVkVG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRQb3NlU3RhbXBlZFRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlVHdpc3RXaXRoQ292YXJpYW5jZUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVR3aXN0V2l0aENvdmFyaWFuY2VGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVUd2lzdFdpdGhDb3ZhcmlhbmNlRnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRUd2lzdFdpdGhDb3ZhcmlhbmNlVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRUd2lzdFdpdGhDb3ZhcmlhbmNlVG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRUd2lzdFdpdGhDb3ZhcmlhbmNlVG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVR3aXN0RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlVHdpc3RGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVUd2lzdEZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydFR3aXN0VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRUd2lzdFRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0VHdpc3RUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVR3aXN0U3RhbXBlZEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVR3aXN0U3RhbXBlZEZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZVR3aXN0U3RhbXBlZEZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRUd2lzdFN0YW1wZWRUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydFR3aXN0U3RhbXBlZFRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0VHdpc3RTdGFtcGVkVG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlUG9zZVdpdGhDb3ZhcmlhbmNlRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlUG9zZVdpdGhDb3ZhcmlhbmNlRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlUG9zZVdpdGhDb3ZhcmlhbmNlRnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydFBvc2VXaXRoQ292YXJpYW5jZVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0UG9zZVdpdGhDb3ZhcmlhbmNlVG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRQb3NlV2l0aENvdmFyaWFuY2VUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVQb3NlMkRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVQb3NlMkRGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVQb3NlMkRGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0UG9zZTJEVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRQb3NlMkRUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydFBvc2UyRFRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlUG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZEZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0UG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0UG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZFRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0UG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZFRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVQb3NlQXJyYXlGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVQb3NlQXJyYXlGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVQb3NlQXJyYXlGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0UG9zZUFycmF5VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRQb3NlQXJyYXlUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydFBvc2VBcnJheVRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVF1YXRlcm5pb25TdGFtcGVkRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlUXVhdGVybmlvblN0YW1wZWRGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVRdWF0ZXJuaW9uU3RhbXBlZEZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydFF1YXRlcm5pb25TdGFtcGVkVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRRdWF0ZXJuaW9uU3RhbXBlZFRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0UXVhdGVybmlvblN0YW1wZWRUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVRyYW5zZm9ybUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVRyYW5zZm9ybUZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZVRyYW5zZm9ybUZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRUcmFuc2Zvcm1Ub1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydFRyYW5zZm9ybVRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0VHJhbnNmb3JtVG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlV3JlbmNoU3RhbXBlZEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVdyZW5jaFN0YW1wZWRGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVXcmVuY2hTdGFtcGVkRnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRXcmVuY2hTdGFtcGVkVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRXcmVuY2hTdGFtcGVkVG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRXcmVuY2hTdGFtcGVkVG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVdyZW5jaEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVdyZW5jaEZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZVdyZW5jaEZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRXcmVuY2hUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydFdyZW5jaFRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0V3JlbmNoVG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT4gPEI+Z2V0R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sI2dldEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UoKSI+Z2V0R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGdlb21ldHJ5X2RhdGF0eXBlcyBwYWNrYWdlPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRQYWNrYWdlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBhY2thZ2U8L0gzPgorPFBSRT4KKzxGT05UIFNJWkU9Ii0xIj5ARGVwcmVjYXRlZAorPC9GT05UPnB1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT4gPEI+Z2V0UGFja2FnZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwOzxJPjwvST4KKzxQPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBwYWNrYWdlPC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViBDTEFTUyZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3JfZGV0YWlsIj5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVmYjgyNjMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sCkBAIC0wLDAgKzEsMTA5MiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI5IENFVCAyMDEyIC0tPgorPFRJVExFPgorR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9Ikdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDtORVhUIENMQVNTPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ikdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsCisgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbAorICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIKKyAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTW9kZWxFbGVtZW50SW1wbAorICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTmFtZWRFbGVtZW50SW1wbAorICAgICAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRVBhY2thZ2VJbXBsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU5hbWVkRWxlbWVudCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZSwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVTdHJ1Y3R1cmFsRmVhdHVyZS5JbnRlcm5hbC5EeW5hbWljVmFsdWVIb2xkZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLkJhc2ljRXh0ZW5kZWRNZXRhRGF0YS5FUGFja2FnZUV4dGVuZGVkTWV0YURhdGEuSG9sZGVyLCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGNsYXNzIDxCPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9CPjxEVD5leHRlbmRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVQYWNrYWdlSW1wbDxEVD5pbXBsZW1lbnRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPlBhY2thZ2U8L2I+LgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyLkR5bmFtaWM8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FQWRhcHRlckxpc3QmbHQ7RSBleHRlbmRzIGphdmEubGFuZy5PYmplY3QgJiBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyJmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FT2JzZXJ2YWJsZUFkYXB0ZXJMaXN0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlLkRlc2NyaXB0b3IsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZS5SZWdpc3RyeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdC5FU3RvcmU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZUlOU1RBTkNFIj5lSU5TVEFOQ0U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTkFNRSI+ZU5BTUU8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTlNfUFJFRklYIj5lTlNfUFJFRklYPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1VSSSI+ZU5TX1VSSTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1BPSU5UIj5QT0lOVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1BPSU5UX1NUQU1QRUQiPlBPSU5UX1NUQU1QRUQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNQT0lOVDMyIj5QT0lOVDMyPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjUE9MWUdPTiI+UE9MWUdPTjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1BPTFlHT05fU1RBTVBFRCI+UE9MWUdPTl9TVEFNUEVEPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjUE9TRSI+UE9TRTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1BPU0VfQVJSQVkiPlBPU0VfQVJSQVk8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNQT1NFX1NUQU1QRUQiPlBPU0VfU1RBTVBFRDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1BPU0VfV0lUSF9DT1ZBUklBTkNFIj5QT1NFX1dJVEhfQ09WQVJJQU5DRTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1BPU0VfV0lUSF9DT1ZBUklBTkNFX1NUQU1QRUQiPlBPU0VfV0lUSF9DT1ZBUklBTkNFX1NUQU1QRUQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNQT1NFMl9EIj5QT1NFMl9EPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjUVVBVEVSTklPTiI+UVVBVEVSTklPTjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI1FVQVRFUk5JT05fU1RBTVBFRCI+UVVBVEVSTklPTl9TVEFNUEVEPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjVFJBTlNGT1JNIj5UUkFOU0ZPUk08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNUV0lTVCI+VFdJU1Q8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNUV0lTVF9TVEFNUEVEIj5UV0lTVF9TVEFNUEVEPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjVFdJU1RfV0lUSF9DT1ZBUklBTkNFIj5UV0lTVF9XSVRIX0NPVkFSSUFOQ0U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNWRUNUTzNfU1RBTVBFRCI+VkVDVE8zX1NUQU1QRUQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNWRUNUT1IzIj5WRUNUT1IzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjV1JFTkNIIj5XUkVOQ0g8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNXUkVOQ0hfU1RBTVBFRCI+V1JFTkNIX1NUQU1QRUQ8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVN0cnVjdHVyYWxGZWF0dXJlLkludGVybmFsLkR5bmFtaWNWYWx1ZUhvbGRlciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVTdHJ1Y3R1cmFsRmVhdHVyZS5JbnRlcm5hbC5EeW5hbWljVmFsdWVIb2xkZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5OSUw8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FT1BQT1NJVEVfRkVBVFVSRV9CQVNFPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNjcmVhdGVQYWNrYWdlQ29udGVudHMoKSI+Y3JlYXRlUGFja2FnZUNvbnRlbnRzPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyB0aGUgbWV0YS1tb2RlbCBvYmplY3RzIGZvciB0aGUgcGFja2FnZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeSgpIj5nZXRHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFBvaW50KCkiPmdldFBvaW50PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFBvaW50MzIoKSI+Z2V0UG9pbnQzMjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRQb2ludFN0YW1wZWQoKSI+Z2V0UG9pbnRTdGFtcGVkPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFBvbHlnb24oKSI+Z2V0UG9seWdvbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRQb2x5Z29uU3RhbXBlZCgpIj5nZXRQb2x5Z29uU3RhbXBlZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRQb3NlKCkiPmdldFBvc2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0UG9zZTJEKCkiPmdldFBvc2UyRDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRQb3NlQXJyYXkoKSI+Z2V0UG9zZUFycmF5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFBvc2VTdGFtcGVkKCkiPmdldFBvc2VTdGFtcGVkPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFBvc2VXaXRoQ292YXJpYW5jZSgpIj5nZXRQb3NlV2l0aENvdmFyaWFuY2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0UG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZCgpIj5nZXRQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFF1YXRlcm5pb24oKSI+Z2V0UXVhdGVybmlvbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRRdWF0ZXJuaW9uU3RhbXBlZCgpIj5nZXRRdWF0ZXJuaW9uU3RhbXBlZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRUcmFuc2Zvcm0oKSI+Z2V0VHJhbnNmb3JtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFR3aXN0KCkiPmdldFR3aXN0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFR3aXN0U3RhbXBlZCgpIj5nZXRUd2lzdFN0YW1wZWQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0VHdpc3RXaXRoQ292YXJpYW5jZSgpIj5nZXRUd2lzdFdpdGhDb3ZhcmlhbmNlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFZlY3RvM1N0YW1wZWQoKSI+Z2V0VmVjdG8zU3RhbXBlZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRWZWN0b3IzKCkiPmdldFZlY3RvcjM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0V3JlbmNoKCkiPmdldFdyZW5jaDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRXcmVuY2hTdGFtcGVkKCkiPmdldFdyZW5jaFN0YW1wZWQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2luaXQoKSI+aW5pdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMsIHJlZ2lzdGVycywgYW5kIGluaXRpYWxpemVzIHRoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhpcyBtb2RlbCwgYW5kIGZvciBhbnkgb3RoZXJzIHVwb24gd2hpY2ggaXQgZGVwZW5kcy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNpbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCkiPmluaXRpYWxpemVQYWNrYWdlQ29udGVudHM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDb21wbGV0ZSB0aGUgaW5pdGlhbGl6YXRpb24gb2YgdGhlIHBhY2thZ2UgYW5kIGl0cyBtZXRhLW1vZGVsLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRVBhY2thZ2VJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FUGFja2FnZUltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5iYXNpY0dldEVTdXBlclBhY2thZ2UsIGJhc2ljU2V0RUZhY3RvcnlJbnN0YW5jZSwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lckZlYXR1cmUsIGVHZXQsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZVJlbW92ZSwgZUludm9rZSwgZUlzU2V0LCBlT2JqZWN0Rm9yVVJJRnJhZ21lbnRTZWdtZW50LCBlU2V0LCBlU2V0UHJveHlVUkksIGVVbnNldCwgZnJlZXplLCBnZXRFQ2xhc3NpZmllciwgZ2V0RUNsYXNzaWZpZXJHZW4sIGdldEVDbGFzc2lmaWVycywgZ2V0RUZhY3RvcnlJbnN0YW5jZSwgZ2V0RVN1YnBhY2thZ2VzLCBnZXRFU3VwZXJQYWNrYWdlLCBnZXRFeHRlbmRlZE1ldGFEYXRhLCBnZXROc1ByZWZpeCwgZ2V0TnNVUkksIHNldEVGYWN0b3J5SW5zdGFuY2UsIHNldEV4dGVuZGVkTWV0YURhdGEsIHNldE5hbWVzcGFjZVVSSSwgc2V0TnNQcmVmaXgsIHNldE5zVVJJLCB0b1N0cmluZzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOYW1lZEVsZW1lbnRJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTmFtZWRFbGVtZW50SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZ2V0TmFtZSwgZ2V0TmFtZUdlbiwgc2V0TmFtZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVNb2RlbEVsZW1lbnRJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTW9kZWxFbGVtZW50SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVVUklGcmFnbWVudFNlZ21lbnQsIGdldEVBbm5vdGF0aW9uLCBnZXRFQW5ub3RhdGlvbnM8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUludGVybmFsQ29udGFpbmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5keW5hbWljR2V0LCBkeW5hbWljU2V0LCBkeW5hbWljVW5zZXQsIGVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZURpcmVjdFJlc291cmNlLCBlSXNQcm94eSwgZVByb3h5VVJJLCBlU2V0Q2xhc3MsIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNTZXRDb250YWluZXIsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRhaW5zLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZUR5bmFtaWNCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVEeW5hbWljR2V0LCBlRHluYW1pY0dldCwgZUR5bmFtaWNJbnZlcnNlQWRkLCBlRHluYW1pY0ludmVyc2VSZW1vdmUsIGVEeW5hbWljSW52b2tlLCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljVW5zZXQsIGVEeW5hbWljVW5zZXQsIGVHZXQsIGVHZXQsIGVHZXQsIGVJbnRlcm5hbFJlc291cmNlLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZU9wZW5HZXQsIGVPcGVuSXNTZXQsIGVPcGVuU2V0LCBlT3BlblVuc2V0LCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkLCBlTm90aWZ5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVxdWFscywgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZTwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmdldEVDbGFzc2lmaWVyLCBnZXRFQ2xhc3NpZmllcnMsIGdldEVGYWN0b3J5SW5zdGFuY2UsIGdldEVTdWJwYWNrYWdlcywgZ2V0RVN1cGVyUGFja2FnZSwgZ2V0TnNQcmVmaXgsIGdldE5zVVJJLCBzZXRFRmFjdG9yeUluc3RhbmNlLCBzZXROc1ByZWZpeCwgc2V0TnNVUkk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU5hbWVkRWxlbWVudCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTmFtZWRFbGVtZW50PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0TmFtZSwgc2V0TmFtZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQ8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXRFQW5ub3RhdGlvbiwgZ2V0RUFubm90YXRpb25zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImluaXQoKSI+PCEtLSAtLT48L0E+PEgzPgoraW5pdDwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPiA8Qj5pbml0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcywgcmVnaXN0ZXJzLCBhbmQgaW5pdGlhbGl6ZXMgdGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGlzIG1vZGVsLCBhbmQgZm9yIGFueSBvdGhlcnMgdXBvbiB3aGljaCBpdCBkZXBlbmRzLgorIAorIDxwPlRoaXMgbWV0aG9kIGlzIHVzZWQgdG8gaW5pdGlhbGl6ZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlSU5TVEFOQ0UiPjxDT0RFPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFPC9DT0RFPjwvQT4gd2hlbiB0aGF0IGZpZWxkIGlzIGFjY2Vzc2VkLgorIENsaWVudHMgc2hvdWxkIG5vdCBpbnZva2UgaXQgZGlyZWN0bHkuIEluc3RlYWQsIHRoZXkgc2hvdWxkIHNpbXBseSBhY2Nlc3MgdGhhdCBmaWVsZCB0byBvYnRhaW4gdGhlIHBhY2thZ2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VOU19VUkkiPjxDT0RFPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2NyZWF0ZVBhY2thZ2VDb250ZW50cygpIj48Q09ERT5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2luaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKSI+PENPREU+aW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBvaW50KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBvaW50PC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRQb2ludDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFBvaW50KCkiPmdldFBvaW50PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcG9pbnQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRQb2ludDMyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBvaW50MzI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFBvaW50MzI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRQb2ludDMyKCkiPmdldFBvaW50MzI8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBwb2ludDMyPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UG9pbnRTdGFtcGVkKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBvaW50U3RhbXBlZDwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0UG9pbnRTdGFtcGVkPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0UG9pbnRTdGFtcGVkKCkiPmdldFBvaW50U3RhbXBlZDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHBvaW50IHN0YW1wZWQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRQb2x5Z29uKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBvbHlnb248L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFBvbHlnb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRQb2x5Z29uKCkiPmdldFBvbHlnb248L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBwb2x5Z29uPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UG9seWdvblN0YW1wZWQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UG9seWdvblN0YW1wZWQ8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFBvbHlnb25TdGFtcGVkPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0UG9seWdvblN0YW1wZWQoKSI+Z2V0UG9seWdvblN0YW1wZWQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBwb2x5Z29uIHN0YW1wZWQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRWZWN0b3IzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFZlY3RvcjM8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFZlY3RvcjM8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRWZWN0b3IzKCkiPmdldFZlY3RvcjM8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2ZWN0b3IzPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0VmVjdG8zU3RhbXBlZCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRWZWN0bzNTdGFtcGVkPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRWZWN0bzNTdGFtcGVkPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0VmVjdG8zU3RhbXBlZCgpIj5nZXRWZWN0bzNTdGFtcGVkPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmVjdG8zIHN0YW1wZWQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRRdWF0ZXJuaW9uKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFF1YXRlcm5pb248L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFF1YXRlcm5pb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRRdWF0ZXJuaW9uKCkiPmdldFF1YXRlcm5pb248L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBxdWF0ZXJuaW9uPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UG9zZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRQb3NlPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRQb3NlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0UG9zZSgpIj5nZXRQb3NlPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcG9zZTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBvc2VTdGFtcGVkKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBvc2VTdGFtcGVkPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRQb3NlU3RhbXBlZDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFBvc2VTdGFtcGVkKCkiPmdldFBvc2VTdGFtcGVkPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcG9zZSBzdGFtcGVkPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0VHdpc3RXaXRoQ292YXJpYW5jZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRUd2lzdFdpdGhDb3ZhcmlhbmNlPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRUd2lzdFdpdGhDb3ZhcmlhbmNlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0VHdpc3RXaXRoQ292YXJpYW5jZSgpIj5nZXRUd2lzdFdpdGhDb3ZhcmlhbmNlPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdHdpc3Qgd2l0aCBjb3ZhcmlhbmNlPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0VHdpc3QoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0VHdpc3Q8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFR3aXN0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0VHdpc3QoKSI+Z2V0VHdpc3Q8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB0d2lzdDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFR3aXN0U3RhbXBlZCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRUd2lzdFN0YW1wZWQ8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFR3aXN0U3RhbXBlZDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFR3aXN0U3RhbXBlZCgpIj5nZXRUd2lzdFN0YW1wZWQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB0d2lzdCBzdGFtcGVkPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UG9zZVdpdGhDb3ZhcmlhbmNlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBvc2VXaXRoQ292YXJpYW5jZTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0UG9zZVdpdGhDb3ZhcmlhbmNlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0UG9zZVdpdGhDb3ZhcmlhbmNlKCkiPmdldFBvc2VXaXRoQ292YXJpYW5jZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHBvc2Ugd2l0aCBjb3ZhcmlhbmNlPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UG9zZTJEKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBvc2UyRDwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0UG9zZTJEPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0UG9zZTJEKCkiPmdldFBvc2UyRDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHBvc2UyIGQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWQ8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkKCkiPmdldFBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBwb3NlIHdpdGggY292YXJpYW5jZSBzdGFtcGVkPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UG9zZUFycmF5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBvc2VBcnJheTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0UG9zZUFycmF5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0UG9zZUFycmF5KCkiPmdldFBvc2VBcnJheTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHBvc2UgYXJyYXk8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRRdWF0ZXJuaW9uU3RhbXBlZCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRRdWF0ZXJuaW9uU3RhbXBlZDwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0UXVhdGVybmlvblN0YW1wZWQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRRdWF0ZXJuaW9uU3RhbXBlZCgpIj5nZXRRdWF0ZXJuaW9uU3RhbXBlZDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHF1YXRlcm5pb24gc3RhbXBlZDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFRyYW5zZm9ybSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRUcmFuc2Zvcm08L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFRyYW5zZm9ybTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFRyYW5zZm9ybSgpIj5nZXRUcmFuc2Zvcm08L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB0cmFuc2Zvcm08RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXcmVuY2hTdGFtcGVkKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFdyZW5jaFN0YW1wZWQ8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFdyZW5jaFN0YW1wZWQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRXcmVuY2hTdGFtcGVkKCkiPmdldFdyZW5jaFN0YW1wZWQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB3cmVuY2ggc3RhbXBlZDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFdyZW5jaCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRXcmVuY2g8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFdyZW5jaDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFdyZW5jaCgpIj5nZXRXcmVuY2g8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB3cmVuY2g8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5PC9BPiA8Qj5nZXRHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeSgpIj5nZXRHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgZ2VvbWV0cnlfZGF0YXR5cGVzIGZhY3Rvcnk8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVBhY2thZ2VDb250ZW50cygpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVQYWNrYWdlQ29udGVudHM8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmNyZWF0ZVBhY2thZ2VDb250ZW50czwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgdGhlIG1ldGEtbW9kZWwgb2JqZWN0cyBmb3IgdGhlIHBhY2thZ2UuICBUaGlzIG1ldGhvZCBpcworIGd1YXJkZWQgdG8gaGF2ZSBubyBhZmZlY3Qgb24gYW55IGludm9jYXRpb24gYnV0IGl0cyBmaXJzdC4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJpbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2luaXRpYWxpemVQYWNrYWdlQ29udGVudHM8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmluaXRpYWxpemVQYWNrYWdlQ29udGVudHM8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5Db21wbGV0ZSB0aGUgaW5pdGlhbGl6YXRpb24gb2YgdGhlIHBhY2thZ2UgYW5kIGl0cyBtZXRhLW1vZGVsLiAgVGhpcworIG1ldGhvZCBpcyBndWFyZGVkIHRvIGhhdmUgbm8gYWZmZWN0IG9uIGFueSBpbnZvY2F0aW9uIGJ1dCBpdHMgZmlyc3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwO05FWFQgQ0xBU1M8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9jbGFzcy11c2UvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL2NsYXNzLXVzZS9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU2ZGQyNWQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9jbGFzcy11c2UvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvY2xhc3MtdXNlL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL2NsYXNzLXVzZS9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ikdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9jbGFzcy11c2UvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL2NsYXNzLXVzZS9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZlZGNmZTcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9jbGFzcy11c2UvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvY2xhc3MtdXNlL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL2NsYXNzLXVzZS9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ikdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLWZyYW1lLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLWZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2U5MzRlNgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtZnJhbWUuaHRtbApAQCAtMCwwICsxLDM0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwgcGFja2FnZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIj4KKzxGT05UIHNpemU9IisxIiBDTEFTUz0iRnJhbWVUaXRsZUZvbnQiPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbDwvQT48L0ZPTlQ+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBOT1dSQVA+PEZPTlQgc2l6ZT0iKzEiIENMQVNTPSJGcmFtZUhlYWRpbmdGb250Ij4KK0NsYXNzZXM8L0ZPTlQ+Jm5ic3A7Cis8Rk9OVCBDTEFTUz0iRnJhbWVJdGVtRm9udCI+Cis8QlI+Cis8QSBIUkVGPSJHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0iR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorCisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjgxMzMyNQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sCkBAIC0wLDAgKzEsMTU4IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwgcGFja2FnZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5QYWNrYWdlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPlBSRVYgUEFDS0FHRTwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+TkVYVCBQQUNLQUdFPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxIMj4KK1BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsCis8L0gyPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPjwvQj48L1REPgorPFREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCA8Yj5GYWN0b3J5PC9iPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPjwvQj48L1REPgorPFREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCA8Yj5QYWNrYWdlPC9iPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworCis8UD4KKzxETD4KKzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5QYWNrYWdlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPlBSRVYgUEFDS0FHRTwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+TkVYVCBQQUNLQUdFPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS10cmVlLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40YWQxN2JmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS10cmVlLmh0bWwKQEAgLTAsMCArMSwxNzQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCBDbGFzcyBIaWVyYXJjaHkKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwgQ2xhc3MgSGllcmFyY2h5IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5UcmVlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL3BhY2thZ2UtdHJlZS5odG1sIj48Qj5QUkVWPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL3BhY2thZ2UtdHJlZS5odG1sIj48Qj5ORVhUPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+CitIaWVyYXJjaHkgRm9yIFBhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsCis8L0gyPgorPC9DRU5URVI+Cis8REw+Cis8RFQ+PEI+UGFja2FnZSBIaWVyYXJjaGllczo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+QWxsIFBhY2thZ2VzPC9BPjwvREw+Cis8SFI+Cis8SDI+CitDbGFzcyBIaWVyYXJjaHkKKzwvSDI+Cis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5qYXZhLmxhbmcuT2JqZWN0PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcikKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FU3RydWN0dXJhbEZlYXR1cmUuSW50ZXJuYWwuRHluYW1pY1ZhbHVlSG9sZGVyKQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lcjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVNb2RlbEVsZW1lbnRJbXBsIChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50KQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsIChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeSkKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+PEI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0E+KQorPC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOYW1lZEVsZW1lbnRJbXBsIChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTmFtZWRFbGVtZW50KQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRVBhY2thZ2VJbXBsIChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLkJhc2ljRXh0ZW5kZWRNZXRhRGF0YS5FUGFja2FnZUV4dGVuZGVkTWV0YURhdGEuSG9sZGVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPjxCPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9BPikKKzwvVUw+Cis8L1VMPgorPC9VTD4KKzwvVUw+Cis8L1VMPgorPC9VTD4KKzwvVUw+Cis8L1VMPgorPC9VTD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlRyZWU8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvcGFja2FnZS10cmVlLmh0bWwiPjxCPlBSRVY8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvcGFja2FnZS10cmVlLmh0bWwiPjxCPk5FWFQ8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS10cmVlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXVzZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS11c2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kN2Q3NDVmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS11c2UuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBQYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBQYWNrYWdlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbDwvQj48L0gyPgorPC9DRU5URVI+CitObyB1c2FnZSBvZiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL3BhY2thZ2UtZnJhbWUuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9wYWNrYWdlLWZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTg4ZDdiNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9wYWNrYWdlLWZyYW1lLmh0bWwKQEAgLTAsMCArMSwzNiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcworPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMgcGFja2FnZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIj4KKzxGT05UIHNpemU9IisxIiBDTEFTUz0iRnJhbWVUaXRsZUZvbnQiPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzPC9BPjwvRk9OVD4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIE5PV1JBUD48Rk9OVCBzaXplPSIrMSIgQ0xBU1M9IkZyYW1lSGVhZGluZ0ZvbnQiPgorSW50ZXJmYWNlczwvRk9OVD4mbmJzcDsKKzxGT05UIENMQVNTPSJGcmFtZUl0ZW1Gb250Ij4KKzxCUj4KKzxBIEhSRUY9Ikdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0iR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9JPjwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorCisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40YjNkYWQ1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sCkBAIC0wLDAgKzEsMTY5IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyBwYWNrYWdlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5QYWNrYWdlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5QUkVWIFBBQ0tBR0U8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5ORVhUIFBBQ0tBR0U8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxIMj4KK1BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcworPC9IMj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5JbnRlcmZhY2UgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj5HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQj48L1REPgorPFREPlRoZSA8Yj5GYWN0b3J5PC9iPiBmb3IgdGhlIG1vZGVsLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT48L0I+PC9URD4KKzxURD5UaGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoZSBtb2RlbC48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+PC9CPjwvVEQ+Cis8VEQ+RGVmaW5lcyBsaXRlcmFscyBmb3IgdGhlIG1ldGEgb2JqZWN0cyB0aGF0IHJlcHJlc2VudAorIAorIGVhY2ggY2xhc3MsCisgZWFjaCBmZWF0dXJlIG9mIGVhY2ggY2xhc3MsCisgZWFjaCBlbnVtLAorIGFuZCBlYWNoIGRhdGEgdHlwZQorIAorIDwhPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7CisKKzxQPgorPERMPgorPC9ETD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlBhY2thZ2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPlBSRVYgUEFDS0FHRTwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPk5FWFQgUEFDS0FHRTwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvcGFja2FnZS10cmVlLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvcGFja2FnZS10cmVlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTVkZGFkYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9wYWNrYWdlLXRyZWUuaHRtbApAQCAtMCwwICsxLDE1OSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyBDbGFzcyBIaWVyYXJjaHkKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIENsYXNzIEhpZXJhcmNoeSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VHJlZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS10cmVlLmh0bWwiPjxCPlBSRVY8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdHJlZS5odG1sIj48Qj5ORVhUPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9wYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorSGllcmFyY2h5IEZvciBQYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMKKzwvSDI+Cis8L0NFTlRFUj4KKzxETD4KKzxEVD48Qj5QYWNrYWdlIEhpZXJhcmNoaWVzOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctdHJlZS5odG1sIj5BbGwgUGFja2FnZXM8L0E+PC9ETD4KKzxIUj4KKzxIMj4KK0ludGVyZmFjZSBIaWVyYXJjaHkKKzwvSDI+Cis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPjxCPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudDxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeTxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+PEI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTmFtZWRFbGVtZW50PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj48Qj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48L1VMPgorPC9VTD4KKzwvVUw+Cis8L1VMPgorPC9VTD4KKzwvVUw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5UcmVlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbCI+PEI+UFJFVjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS10cmVlLmh0bWwiPjxCPk5FWFQ8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL3BhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL3BhY2thZ2UtdXNlLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvcGFja2FnZS11c2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xOTg0ZDY0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL3BhY2thZ2UtdXNlLmh0bWwKQEAgLTAsMCArMSwxOTcgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBQYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9wYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgUGFja2FnZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorQ2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzPC9BPiB1c2VkIGJ5IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXM8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9jbGFzcy11c2UvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPjxCPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIDxiPkZhY3Rvcnk8L2I+IGZvciB0aGUgbW9kZWwuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2NsYXNzLXVzZS9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+PEI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoZSBtb2RlbC48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorQ2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzPC9BPiB1c2VkIGJ5IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvY2xhc3MtdXNlL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwiPjxCPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIDxiPkZhY3Rvcnk8L2I+IGZvciB0aGUgbW9kZWwuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2NsYXNzLXVzZS9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj48Qj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhlIG1vZGVsLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvcGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhmMTJiMDYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwKQEAgLTAsMCArMSwzMDIgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMCBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK05hdl9kYXRhdHlwZXNGYWN0b3J5Cis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc0ZhY3RvcnkgaW50ZXJmYWNlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJOYXZfZGF0YXR5cGVzRmFjdG9yeSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViBDTEFTUyZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX3N1bW1hcnkiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwOzxBIEhSRUY9IiNmaWVsZF9kZXRhaWwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIE5hdl9kYXRhdHlwZXNGYWN0b3J5PC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeSwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBJbXBsZW1lbnRpbmcgQ2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbCI+TmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5OYXZfZGF0YXR5cGVzRmFjdG9yeTwvQj48RFQ+ZXh0ZW5kcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3Rvcnk8L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGUgPGI+RmFjdG9yeTwvYj4gZm9yIHRoZSBtb2RlbC4KKyBJdCBwcm92aWRlcyBhIGNyZWF0ZSBtZXRob2QgZm9yIGVhY2ggbm9uLWFic3RyYWN0IGNsYXNzIG9mIHRoZSBtb2RlbC4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPjxDT0RFPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCNlSU5TVEFOQ0UiPmVJTlNUQU5DRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBmYWN0b3J5PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCNnZXROYXZfZGF0YXR5cGVzUGFja2FnZSgpIj5nZXROYXZfZGF0YXR5cGVzUGFja2FnZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHBhY2thZ2Ugc3VwcG9ydGVkIGJ5IHRoaXMgZmFjdG9yeTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Y29udmVydFRvU3RyaW5nLCBjcmVhdGUsIGNyZWF0ZUZyb21TdHJpbmcsIGdldEVQYWNrYWdlLCBzZXRFUGFja2FnZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQ8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXRFQW5ub3RhdGlvbiwgZ2V0RUFubm90YXRpb25zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gRklFTEQgREVUQUlMID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZUlOU1RBTkNFIj48IS0tIC0tPjwvQT48SDM+CitlSU5TVEFOQ0U8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzRmFjdG9yeTwvQT4gPEI+ZUlOU1RBTkNFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIGZhY3RvcnkuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0TmF2X2RhdGF0eXBlc1BhY2thZ2UoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9BPiA8Qj5nZXROYXZfZGF0YXR5cGVzUGFja2FnZTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHBhY2thZ2Ugc3VwcG9ydGVkIGJ5IHRoaXMgZmFjdG9yeS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBwYWNrYWdlIHN1cHBvcnRlZCBieSB0aGlzIGZhY3RvcnkuPC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViBDTEFTUyZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX3N1bW1hcnkiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwOzxBIEhSRUY9IiNmaWVsZF9kZXRhaWwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQxOTBlNmMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwKQEAgLTAsMCArMSwzMTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMCBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK05hdl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMgaW50ZXJmYWNlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJOYXZfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscyI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9OYXZfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDtORVhUIENMQVNTPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iTmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX3N1bW1hcnkiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwOzxBIEhSRUY9IiNmaWVsZF9kZXRhaWwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlczwvRk9OVD4KKzxCUj4KK0ludGVyZmFjZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvSDI+Cis8REw+Cis8RFQ+PEI+RW5jbG9zaW5nIGludGVyZmFjZTo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIHN0YXRpYyBpbnRlcmZhY2UgPEI+TmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0I+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgRGVmaW5lcyBsaXRlcmFscyBmb3IgdGhlIG1ldGEgb2JqZWN0cyB0aGF0IHJlcHJlc2VudAorIDx1bD4KKyA8bGk+ZWFjaCBjbGFzcyw8L2xpPgorIDxsaT5lYWNoIGZlYXR1cmUgb2YgZWFjaCBjbGFzcyw8L2xpPgorIDxsaT5lYWNoIGVudW0sPC9saT4KKyA8bGk+YW5kIGVhY2ggZGF0YSB0eXBlPC9saT4KKyA8L3VsPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI0dSSURfQ0VMTFMiPkdSSURfQ0VMTFM8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkdyaWQgQ2VsbHM8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNNQVBfTUVUQV9EQVRBIj5NQVBfTUVUQV9EQVRBPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5NYXAgTWV0YSBEYXRhPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjT0NDVVBBTkNZX0dSSUQiPk9DQ1VQQU5DWV9HUklEPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5PY2N1cGFuY3kgR3JpZDwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI09ET01FVFJZIj5PRE9NRVRSWTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+T2RvbWV0cnk8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNQQVRIIj5QQVRIPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5QYXRoPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IEZJRUxEIERFVEFJTCA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9IlBBVEgiPjwhLS0gLS0+PC9BPjxIMz4KK1BBVEg8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPlBBVEg8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlBhdGg8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRQYXRoKCkiPjxDT0RFPk5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRQYXRoKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJPRE9NRVRSWSI+PCEtLSAtLT48L0E+PEgzPgorT0RPTUVUUlk8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPk9ET01FVFJZPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5PZG9tZXRyeTwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldE9kb21ldHJ5KCkiPjxDT0RFPk5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRPZG9tZXRyeSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTUFQX01FVEFfREFUQSI+PCEtLSAtLT48L0E+PEgzPgorTUFQX01FVEFfREFUQTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+TUFQX01FVEFfREFUQTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+TWFwIE1ldGEgRGF0YTwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldE1hcE1ldGFEYXRhKCkiPjxDT0RFPk5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRNYXBNZXRhRGF0YSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iT0NDVVBBTkNZX0dSSUQiPjwhLS0gLS0+PC9BPjxIMz4KK09DQ1VQQU5DWV9HUklEPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5PQ0NVUEFOQ1lfR1JJRDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+T2NjdXBhbmN5IEdyaWQ8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRPY2N1cGFuY3lHcmlkKCkiPjxDT0RFPk5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRPY2N1cGFuY3lHcmlkKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJHUklEX0NFTExTIj48IS0tIC0tPjwvQT48SDM+CitHUklEX0NFTExTPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5HUklEX0NFTExTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5HcmlkIENlbGxzPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0R3JpZENlbGxzKCkiPjxDT0RFPk5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRHcmlkQ2VsbHMoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL05hdl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwO05FWFQgQ0xBU1M8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJOYXZfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE3M2Q3NmQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwKQEAgLTAsMCArMSw2NzIgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMCBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK05hdl9kYXRhdHlwZXNQYWNrYWdlCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2UgaW50ZXJmYWNlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJOYXZfZGF0YXR5cGVzUGFja2FnZSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJOYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXM8L0ZPTlQ+Cis8QlI+CitJbnRlcmZhY2UgTmF2X2RhdGF0eXBlc1BhY2thZ2U8L0gyPgorPERMPgorPERUPjxCPkFsbCBTdXBlcmludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTmFtZWRFbGVtZW50LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlLCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBJbXBsZW1lbnRpbmcgQ2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbCI+TmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQj48RFQ+ZXh0ZW5kcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U8L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoZSBtb2RlbC4KKyBJdCBjb250YWlucyBhY2Nlc3NvcnMgZm9yIHRoZSBtZXRhIG9iamVjdHMgdG8gcmVwcmVzZW50CisgPHVsPgorICAgPGxpPmVhY2ggY2xhc3MsPC9saT4KKyAgIDxsaT5lYWNoIGZlYXR1cmUgb2YgZWFjaCBjbGFzcyw8L2xpPgorICAgPGxpPmVhY2ggZW51bSw8L2xpPgorICAgPGxpPmFuZCBlYWNoIGRhdGEgdHlwZTwvbGk+CisgPC91bD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPjxDT0RFPk5hdl9kYXRhdHlwZXNGYWN0b3J5PC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7RGVmaW5lcyBsaXRlcmFscyBmb3IgdGhlIG1ldGEgb2JqZWN0cyB0aGF0IHJlcHJlc2VudAorIAorIGVhY2ggY2xhc3MsCisgZWFjaCBmZWF0dXJlIG9mIGVhY2ggY2xhc3MsCisgZWFjaCBlbnVtLAorIGFuZCBlYWNoIGRhdGEgdHlwZQorIAorIDwhPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlLkRlc2NyaXB0b3IsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZS5SZWdpc3RyeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlSU5TVEFOQ0UiPmVJTlNUQU5DRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBwYWNrYWdlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTkFNRSI+ZU5BTUU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIHBhY2thZ2UgbmFtZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1BSRUZJWCI+ZU5TX1BSRUZJWDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgcGFja2FnZSBuYW1lc3BhY2UgbmFtZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1VSSSI+ZU5TX1VSSTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgcGFja2FnZSBuYW1lc3BhY2UgVVJJPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sI0dSSURfQ0VMTFMiPkdSSURfQ0VMTFM8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5HcmlkIENlbGxzPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNNQVBfTUVUQV9EQVRBIj5NQVBfTUVUQV9EQVRBPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+TWFwIE1ldGEgRGF0YTwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjT0NDVVBBTkNZX0dSSUQiPk9DQ1VQQU5DWV9HUklEPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+T2NjdXBhbmN5IEdyaWQ8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sI09ET01FVFJZIj5PRE9NRVRSWTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPk9kb21ldHJ5PC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNQQVRIIj5QQVRIPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+UGF0aDwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRHcmlkQ2VsbHMoKSI+Z2V0R3JpZENlbGxzPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkdyaWQgQ2VsbHM8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRNYXBNZXRhRGF0YSgpIj5nZXRNYXBNZXRhRGF0YTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5NYXAgTWV0YSBEYXRhPC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXROYXZfZGF0YXR5cGVzRmFjdG9yeSgpIj5nZXROYXZfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIGZhY3RvcnkgdGhhdCBjcmVhdGVzIHRoZSBpbnN0YW5jZXMgb2YgdGhlIG1vZGVsPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRPY2N1cGFuY3lHcmlkKCkiPmdldE9jY3VwYW5jeUdyaWQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+T2NjdXBhbmN5IEdyaWQ8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRPZG9tZXRyeSgpIj5nZXRPZG9tZXRyeTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5PZG9tZXRyeTwvZW0+PC9DT0RFPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFBhdGgoKSI+Z2V0UGF0aDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5QYXRoPC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0RUNsYXNzaWZpZXIsIGdldEVDbGFzc2lmaWVycywgZ2V0RUZhY3RvcnlJbnN0YW5jZSwgZ2V0RVN1YnBhY2thZ2VzLCBnZXRFU3VwZXJQYWNrYWdlLCBnZXROc1ByZWZpeCwgZ2V0TnNVUkksIHNldEVGYWN0b3J5SW5zdGFuY2UsIHNldE5zUHJlZml4LCBzZXROc1VSSTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FTmFtZWRFbGVtZW50Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVOYW1lZEVsZW1lbnQ8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXROYW1lLCBzZXROYW1lPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmdldEVBbm5vdGF0aW9uLCBnZXRFQW5ub3RhdGlvbnM8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBGSUVMRCBERVRBSUwgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJlTkFNRSI+PCEtLSAtLT48L0E+PEgzPgorZU5BTUU8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBqYXZhLmxhbmcuU3RyaW5nIDxCPmVOQU1FPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBwYWNrYWdlIG5hbWUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2UuZU5BTUUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZU5TX1VSSSI+PCEtLSAtLT48L0E+PEgzPgorZU5TX1VSSTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGphdmEubGFuZy5TdHJpbmcgPEI+ZU5TX1VSSTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgcGFja2FnZSBuYW1lc3BhY2UgVVJJLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZU5TX1BSRUZJWCI+PCEtLSAtLT48L0E+PEgzPgorZU5TX1BSRUZJWDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGphdmEubGFuZy5TdHJpbmcgPEI+ZU5TX1BSRUZJWDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgcGFja2FnZSBuYW1lc3BhY2UgbmFtZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5OYXZfZGF0YXR5cGVzUGFja2FnZS5lTlNfUFJFRklYIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVJTlNUQU5DRSI+PCEtLSAtLT48L0E+PEgzPgorZUlOU1RBTkNFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0E+IDxCPmVJTlNUQU5DRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBwYWNrYWdlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQQVRIIj48IS0tIC0tPjwvQT48SDM+CitQQVRIPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlBBVEg8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5QYXRoPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0UGF0aCgpIj48Q09ERT5OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0UGF0aCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2UuUEFUSCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJPRE9NRVRSWSI+PCEtLSAtLT48L0E+PEgzPgorT0RPTUVUUlk8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+T0RPTUVUUlk8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5PZG9tZXRyeTwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldE9kb21ldHJ5KCkiPjxDT0RFPk5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRPZG9tZXRyeSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVUUlkiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTUFQX01FVEFfREFUQSI+PCEtLSAtLT48L0E+PEgzPgorTUFQX01FVEFfREFUQTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5NQVBfTUVUQV9EQVRBPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+TWFwIE1ldGEgRGF0YTwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldE1hcE1ldGFEYXRhKCkiPjxDT0RFPk5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRNYXBNZXRhRGF0YSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2UuTUFQX01FVEFfREFUQSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJPQ0NVUEFOQ1lfR1JJRCI+PCEtLSAtLT48L0E+PEgzPgorT0NDVVBBTkNZX0dSSUQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+T0NDVVBBTkNZX0dSSUQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5PY2N1cGFuY3kgR3JpZDwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldE9jY3VwYW5jeUdyaWQoKSI+PENPREU+TmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldE9jY3VwYW5jeUdyaWQoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlLk9DQ1VQQU5DWV9HUklEIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkdSSURfQ0VMTFMiPjwhLS0gLS0+PC9BPjxIMz4KK0dSSURfQ0VMTFM8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+R1JJRF9DRUxMUzwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkdyaWQgQ2VsbHM8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRHcmlkQ2VsbHMoKSI+PENPREU+TmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldEdyaWRDZWxscygpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2UuR1JJRF9DRUxMUyI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImdldFBhdGgoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UGF0aDwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRQYXRoPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlBhdGg8L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5QYXRoPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldE9kb21ldHJ5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldE9kb21ldHJ5PC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldE9kb21ldHJ5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPk9kb21ldHJ5PC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+T2RvbWV0cnk8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TWFwTWV0YURhdGEoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TWFwTWV0YURhdGE8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0TWFwTWV0YURhdGE8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+TWFwIE1ldGEgRGF0YTwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPk1hcCBNZXRhIERhdGE8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0T2NjdXBhbmN5R3JpZCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRPY2N1cGFuY3lHcmlkPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldE9jY3VwYW5jeUdyaWQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+T2NjdXBhbmN5IEdyaWQ8L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5PY2N1cGFuY3kgR3JpZDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRHcmlkQ2VsbHMoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0R3JpZENlbGxzPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldEdyaWRDZWxsczwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5HcmlkIENlbGxzPC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+R3JpZCBDZWxsczwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXROYXZfZGF0YXR5cGVzRmFjdG9yeSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXROYXZfZGF0YXR5cGVzRmFjdG9yeTwvSDM+Cis8UFJFPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc0ZhY3Rvcnk8L0E+IDxCPmdldE5hdl9kYXRhdHlwZXNGYWN0b3J5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgZmFjdG9yeSB0aGF0IGNyZWF0ZXMgdGhlIGluc3RhbmNlcyBvZiB0aGUgbW9kZWwuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgZmFjdG9yeSB0aGF0IGNyZWF0ZXMgdGhlIGluc3RhbmNlcyBvZiB0aGUgbW9kZWwuPC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJOYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2NsYXNzLXVzZS9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9jbGFzcy11c2UvTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kZGNjZWZiCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9jbGFzcy11c2UvTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbApAQCAtMCwwICsxLDI0NSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc0ZhY3RvcnkKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5OYXZfZGF0YXR5cGVzRmFjdG9yeSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2NsYXNzLXVzZS9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ik5hdl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgSW50ZXJmYWNlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNGYWN0b3J5PC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzRmFjdG9yeTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPkZpZWxkcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXM8L0E+IGRlY2xhcmVkIGFzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPk5hdl9kYXRhdHlwZXNGYWN0b3J5LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sI2VJTlNUQU5DRSI+ZUlOU1RBTkNFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIGZhY3Rvcnk8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5OYXZfZGF0YXR5cGVzUGFja2FnZS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXROYXZfZGF0YXR5cGVzRmFjdG9yeSgpIj5nZXROYXZfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIGZhY3RvcnkgdGhhdCBjcmVhdGVzIHRoZSBpbnN0YW5jZXMgb2YgdGhlIG1vZGVsPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNGYWN0b3J5PC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPkNsYXNzZXMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbDwvQT4gdGhhdCBpbXBsZW1lbnQgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbCI+TmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCA8Yj5GYWN0b3J5PC9iPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0TmF2X2RhdGF0eXBlc0ZhY3RvcnkoKSI+Z2V0TmF2X2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjaW5pdCgpIj5pbml0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyB0aGUgZGVmYXVsdCBmYWN0b3J5IGltcGxlbWVudGF0aW9uPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9jbGFzcy11c2UvTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJOYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9jbGFzcy11c2UvTmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvY2xhc3MtdXNlL05hdl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTYzMTI5ZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvY2xhc3MtdXNlL05hdl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwKQEAgLTAsMCArMSwxNDAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9jbGFzcy11c2UvTmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJOYXZfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5OYXZfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQj48L0gyPgorPC9DRU5URVI+CitObyB1c2FnZSBvZiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5OYXZfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvY2xhc3MtdXNlL05hdl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iTmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvY2xhc3MtdXNlL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2NsYXNzLXVzZS9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjEyNWU2ZTEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2NsYXNzLXVzZS9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sCkBAIC0wLDAgKzEsMjUzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5OYXZfZGF0YXR5cGVzUGFja2FnZQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvY2xhc3MtdXNlL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBJbnRlcmZhY2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXM8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXM8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+RmllbGRzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlczwvQT4gZGVjbGFyZWQgYXMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+TmF2X2RhdGF0eXBlc1BhY2thZ2UuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZUlOU1RBTkNFIj5lSU5TVEFOQ0U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiB0aGUgcGFja2FnZTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXM8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPk5hdl9kYXRhdHlwZXNGYWN0b3J5LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sI2dldE5hdl9kYXRhdHlwZXNQYWNrYWdlKCkiPmdldE5hdl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcGFja2FnZSBzdXBwb3J0ZWQgYnkgdGhpcyBmYWN0b3J5PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPkNsYXNzZXMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbDwvQT4gdGhhdCBpbXBsZW1lbnQgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbCI+TmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCA8Yj5QYWNrYWdlPC9iPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjZ2V0TmF2X2RhdGF0eXBlc1BhY2thZ2UoKSI+Z2V0TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjZ2V0UGFja2FnZSgpIj5nZXRQYWNrYWdlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEk+PC9JPiZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+TmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2luaXQoKSI+aW5pdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMsIHJlZ2lzdGVycywgYW5kIGluaXRpYWxpemVzIHRoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhpcyBtb2RlbCwgYW5kIGZvciBhbnkgb3RoZXJzIHVwb24gd2hpY2ggaXQgZGVwZW5kcy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2NsYXNzLXVzZS9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ik5hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTcwMGY4OQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbApAQCAtMCwwICsxLDg3NiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMwIENFVCAyMDEyIC0tPgorPFRJVExFPgorTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9Ik5hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYgQ0xBU1MmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJOYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3Jfc3VtbWFyeSI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX2RldGFpbCI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIE5hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsCisgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyCisgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU1vZGVsRWxlbWVudEltcGwKKyAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsCisgICAgICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsLk5hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQj4KKzwvUFJFPgorPERMPgorPERUPjxCPkFsbCBJbXBsZW1lbnRlZCBJbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3RvcnksIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVTdHJ1Y3R1cmFsRmVhdHVyZS5JbnRlcm5hbC5EeW5hbWljVmFsdWVIb2xkZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGNsYXNzIDxCPk5hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQj48RFQ+ZXh0ZW5kcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FRmFjdG9yeUltcGw8RFQ+aW1wbGVtZW50cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgPGI+RmFjdG9yeTwvYj4uCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKworPFA+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PSBORVNURUQgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0ibmVzdGVkX2NsYXNzX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5OZXN0ZWQgQ2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIuRHluYW1pYzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVBZGFwdGVyTGlzdCZsdDtFIGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCAmIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXImZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVPYnNlcnZhYmxlQWRhcHRlckxpc3Q8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QuRVN0b3JlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNGYWN0b3J5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sI2VJTlNUQU5DRSI+ZUlOU1RBTkNFPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVTdHJ1Y3R1cmFsRmVhdHVyZS5JbnRlcm5hbC5EeW5hbWljVmFsdWVIb2xkZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FU3RydWN0dXJhbEZlYXR1cmUuSW50ZXJuYWwuRHluYW1pY1ZhbHVlSG9sZGVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+TklMPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RU9QUE9TSVRFX0ZFQVRVUkVfQkFTRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT0gQ09OU1RSVUNUT1IgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0iY29uc3RydWN0b3Jfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNOYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwoKSI+TmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgZmFjdG9yeTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRHcmlkQ2VsbHNUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydEdyaWRDZWxsc1RvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRNYXBNZXRhRGF0YVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0TWFwTWV0YURhdGFUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRPY2N1cGFuY3lHcmlkVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRPY2N1cGFuY3lHcmlkVG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRPZG9tZXRyeVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0T2RvbWV0cnlUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRQYXRoVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRQYXRoVG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydFRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGUob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcykiPmNyZWF0ZTwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MmbmJzcDtlQ2xhc3MpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5PYmplY3Q8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUdyaWRDZWxsc0Zyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZUdyaWRDZWxsc0Zyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlTWFwTWV0YURhdGFGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVNYXBNZXRhRGF0YUZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVPY2N1cGFuY3lHcmlkRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlT2NjdXBhbmN5R3JpZEZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZU9kb21ldHJ5RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlT2RvbWV0cnlGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlUGF0aEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZVBhdGhGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2dldE5hdl9kYXRhdHlwZXNQYWNrYWdlKCkiPmdldE5hdl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNnZXRQYWNrYWdlKCkiPmdldFBhY2thZ2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST48L0k+Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2luaXQoKSI+aW5pdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMgdGhlIGRlZmF1bHQgZmFjdG9yeSBpbXBsZW1lbnRhdGlvbjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FRmFjdG9yeUltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5iYXNpY1NldEVQYWNrYWdlLCBlR2V0LCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZVNldCwgZVVuc2V0LCBnZXRFUGFja2FnZSwgc2V0RVBhY2thZ2U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTW9kZWxFbGVtZW50SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU1vZGVsRWxlbWVudEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lT2JqZWN0Rm9yVVJJRnJhZ21lbnRTZWdtZW50LCBlVVJJRnJhZ21lbnRTZWdtZW50LCBnZXRFQW5ub3RhdGlvbiwgZ2V0RUFubm90YXRpb25zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVJbnRlcm5hbENvbnRhaW5lcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZHluYW1pY0dldCwgZHluYW1pY1NldCwgZHluYW1pY1Vuc2V0LCBlQWRhcHRlcnMsIGVDbGFzcywgZUNvbnRhaW5lckZlYXR1cmVJRCwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVsaXZlciwgZURpcmVjdFJlc291cmNlLCBlSXNQcm94eSwgZVByb3h5VVJJLCBlU2V0Q2xhc3MsIGVTZXREZWxpdmVyLCBlU2V0UHJveHlVUkk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQmFzZVN0cnVjdHVyYWxGZWF0dXJlSUQsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXJGZWF0dXJlLCBlQmFzaWNTZXRDb250YWluZXIsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRhaW5zLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZUR5bmFtaWNCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVEeW5hbWljR2V0LCBlRHluYW1pY0dldCwgZUR5bmFtaWNJbnZlcnNlQWRkLCBlRHluYW1pY0ludmVyc2VSZW1vdmUsIGVEeW5hbWljSW52b2tlLCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljVW5zZXQsIGVEeW5hbWljVW5zZXQsIGVHZXQsIGVHZXQsIGVHZXQsIGVJbnRlcm5hbFJlc291cmNlLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZU9wZW5HZXQsIGVPcGVuSXNTZXQsIGVPcGVuU2V0LCBlT3BlblVuc2V0LCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQsIHRvU3RyaW5nPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3RvcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3Rvcnk8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXRFUGFja2FnZSwgc2V0RVBhY2thZ2U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0RUFubm90YXRpb24sIGdldEVBbm5vdGF0aW9uczwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT0gQ09OU1RSVUNUT1IgREVUQUlMID09PT09PT09IC0tPgorCis8QSBOQU1FPSJjb25zdHJ1Y3Rvcl9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5Db25zdHJ1Y3RvciBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsKCkiPjwhLS0gLS0+PC9BPjxIMz4KK05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvSDM+Cis8UFJFPgorcHVibGljIDxCPk5hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIGZhY3RvcnkuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPC9ETD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJpbml0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2luaXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc0ZhY3Rvcnk8L0E+IDxCPmluaXQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIHRoZSBkZWZhdWx0IGZhY3RvcnkgaW1wbGVtZW50YXRpb24uCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGU8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCA8Qj5jcmVhdGU8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MmbmJzcDtlQ2xhc3MpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+Y3JlYXRlPC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5jcmVhdGU8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVGYWN0b3J5SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVDbGFzczwvQ09ERT4gLSB0aGUgZSBjbGFzcworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgZSBvYmplY3Q8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuT2JqZWN0IDxCPmNyZWF0ZUZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+Y3JlYXRlRnJvbVN0cmluZzwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeTwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+Y3JlYXRlRnJvbVN0cmluZzwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG9iamVjdDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0VG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5jb252ZXJ0VG9TdHJpbmc8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3Rvcnk8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmNvbnZlcnRUb1N0cmluZzwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVQYXRoRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlUGF0aEZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZVBhdGhGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydFBhdGhUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydFBhdGhUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydFBhdGhUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlT2RvbWV0cnlGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVPZG9tZXRyeUZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZU9kb21ldHJ5RnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0T2RvbWV0cnlUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydE9kb21ldHJ5VG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRPZG9tZXRyeVRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlTWFwTWV0YURhdGFGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVNYXBNZXRhRGF0YUZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZU1hcE1ldGFEYXRhRnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0TWFwTWV0YURhdGFUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydE1hcE1ldGFEYXRhVG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRNYXBNZXRhRGF0YVRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlT2NjdXBhbmN5R3JpZEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZU9jY3VwYW5jeUdyaWRGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVPY2N1cGFuY3lHcmlkRnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRPY2N1cGFuY3lHcmlkVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRPY2N1cGFuY3lHcmlkVG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRPY2N1cGFuY3lHcmlkVG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUdyaWRDZWxsc0Zyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUdyaWRDZWxsc0Zyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZUdyaWRDZWxsc0Zyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRHcmlkQ2VsbHNUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydEdyaWRDZWxsc1RvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0R3JpZENlbGxzVG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TmF2X2RhdGF0eXBlc1BhY2thZ2UoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQT4gPEI+Z2V0TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sI2dldE5hdl9kYXRhdHlwZXNQYWNrYWdlKCkiPmdldE5hdl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG5hdl9kYXRhdHlwZXMgcGFja2FnZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UGFja2FnZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRQYWNrYWdlPC9IMz4KKzxQUkU+Cis8Rk9OVCBTSVpFPSItMSI+QERlcHJlY2F0ZWQKKzwvRk9OVD5wdWJsaWMgc3RhdGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9BPiA8Qj5nZXRQYWNrYWdlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEk+PC9JPgorPFA+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHBhY2thZ2U8L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViBDTEFTUyZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ik5hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3JfZGV0YWlsIj5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yN2ExMmYyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sCkBAIC0wLDAgKzEsNjc2IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzAgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitOYXZfZGF0YXR5cGVzUGFja2FnZUltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsLk5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbCBjbGFzcyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL05hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7TkVYVCBDTEFTUzwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ik5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsPC9GT05UPgorPEJSPgorQ2xhc3MgTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsCisgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbAorICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIKKyAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTW9kZWxFbGVtZW50SW1wbAorICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTmFtZWRFbGVtZW50SW1wbAorICAgICAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRVBhY2thZ2VJbXBsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5OYXZfZGF0YXR5cGVzUGFja2FnZUltcGw8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTmFtZWRFbGVtZW50LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVN0cnVjdHVyYWxGZWF0dXJlLkludGVybmFsLkR5bmFtaWNWYWx1ZUhvbGRlciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuQmFzaWNFeHRlbmRlZE1ldGFEYXRhLkVQYWNrYWdlRXh0ZW5kZWRNZXRhRGF0YS5Ib2xkZXIsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGNsYXNzIDxCPk5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQj48RFQ+ZXh0ZW5kcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FUGFja2FnZUltcGw8RFQ+aW1wbGVtZW50cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgPGI+UGFja2FnZTwvYj4uCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKworPFA+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PSBORVNURUQgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0ibmVzdGVkX2NsYXNzX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5OZXN0ZWQgQ2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIuRHluYW1pYzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVBZGFwdGVyTGlzdCZsdDtFIGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCAmIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXImZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVPYnNlcnZhYmxlQWRhcHRlckxpc3Q8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5OYXZfZGF0YXR5cGVzUGFja2FnZSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZTwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZS5EZXNjcmlwdG9yLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UuUmVnaXN0cnk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QuRVN0b3JlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VJTlNUQU5DRSI+ZUlOU1RBTkNFPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTkFNRSI+ZU5BTUU8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VOU19QUkVGSVgiPmVOU19QUkVGSVg8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VOU19VUkkiPmVOU19VUkk8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sI0dSSURfQ0VMTFMiPkdSSURfQ0VMTFM8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sI01BUF9NRVRBX0RBVEEiPk1BUF9NRVRBX0RBVEE8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sI09DQ1VQQU5DWV9HUklEIj5PQ0NVUEFOQ1lfR1JJRDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjT0RPTUVUUlkiPk9ET01FVFJZPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNQQVRIIj5QQVRIPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVTdHJ1Y3R1cmFsRmVhdHVyZS5JbnRlcm5hbC5EeW5hbWljVmFsdWVIb2xkZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FU3RydWN0dXJhbEZlYXR1cmUuSW50ZXJuYWwuRHluYW1pY1ZhbHVlSG9sZGVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+TklMPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RU9QUE9TSVRFX0ZFQVRVUkVfQkFTRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNjcmVhdGVQYWNrYWdlQ29udGVudHMoKSI+Y3JlYXRlUGFja2FnZUNvbnRlbnRzPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyB0aGUgbWV0YS1tb2RlbCBvYmplY3RzIGZvciB0aGUgcGFja2FnZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEdyaWRDZWxscygpIj5nZXRHcmlkQ2VsbHM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRNYXBNZXRhRGF0YSgpIj5nZXRNYXBNZXRhRGF0YTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0TmF2X2RhdGF0eXBlc0ZhY3RvcnkoKSI+Z2V0TmF2X2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRPY2N1cGFuY3lHcmlkKCkiPmdldE9jY3VwYW5jeUdyaWQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRPZG9tZXRyeSgpIj5nZXRPZG9tZXRyeTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFBhdGgoKSI+Z2V0UGF0aDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjaW5pdCgpIj5pbml0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcywgcmVnaXN0ZXJzLCBhbmQgaW5pdGlhbGl6ZXMgdGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGlzIG1vZGVsLCBhbmQgZm9yIGFueSBvdGhlcnMgdXBvbiB3aGljaCBpdCBkZXBlbmRzLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpIj5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q29tcGxldGUgdGhlIGluaXRpYWxpemF0aW9uIG9mIHRoZSBwYWNrYWdlIGFuZCBpdHMgbWV0YS1tb2RlbC48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVQYWNrYWdlSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRVBhY2thZ2VJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+YmFzaWNHZXRFU3VwZXJQYWNrYWdlLCBiYXNpY1NldEVGYWN0b3J5SW5zdGFuY2UsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXJGZWF0dXJlLCBlR2V0LCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZU9iamVjdEZvclVSSUZyYWdtZW50U2VnbWVudCwgZVNldCwgZVNldFByb3h5VVJJLCBlVW5zZXQsIGZyZWV6ZSwgZ2V0RUNsYXNzaWZpZXIsIGdldEVDbGFzc2lmaWVyR2VuLCBnZXRFQ2xhc3NpZmllcnMsIGdldEVGYWN0b3J5SW5zdGFuY2UsIGdldEVTdWJwYWNrYWdlcywgZ2V0RVN1cGVyUGFja2FnZSwgZ2V0RXh0ZW5kZWRNZXRhRGF0YSwgZ2V0TnNQcmVmaXgsIGdldE5zVVJJLCBzZXRFRmFjdG9yeUluc3RhbmNlLCBzZXRFeHRlbmRlZE1ldGFEYXRhLCBzZXROYW1lc3BhY2VVUkksIHNldE5zUHJlZml4LCBzZXROc1VSSSwgdG9TdHJpbmc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTmFtZWRFbGVtZW50SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5hbWVkRWxlbWVudEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGdldE5hbWUsIGdldE5hbWVHZW4sIHNldE5hbWU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTW9kZWxFbGVtZW50SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU1vZGVsRWxlbWVudEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lVVJJRnJhZ21lbnRTZWdtZW50LCBnZXRFQW5ub3RhdGlvbiwgZ2V0RUFubm90YXRpb25zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVJbnRlcm5hbENvbnRhaW5lcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZHluYW1pY0dldCwgZHluYW1pY1NldCwgZHluYW1pY1Vuc2V0LCBlQWRhcHRlcnMsIGVDbGFzcywgZUNvbnRhaW5lckZlYXR1cmVJRCwgZURlbGl2ZXIsIGVEaXJlY3RSZXNvdXJjZSwgZUlzUHJveHksIGVQcm94eVVSSSwgZVNldENsYXNzLCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVCYXNlU3RydWN0dXJhbEZlYXR1cmVJRCwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEeW5hbWljQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlRHluYW1pY0dldCwgZUR5bmFtaWNHZXQsIGVEeW5hbWljSW52ZXJzZUFkZCwgZUR5bmFtaWNJbnZlcnNlUmVtb3ZlLCBlRHluYW1pY0ludm9rZSwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1Vuc2V0LCBlRHluYW1pY1Vuc2V0LCBlR2V0LCBlR2V0LCBlR2V0LCBlSW50ZXJuYWxSZXNvdXJjZSwgZUludmVyc2VBZGQsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVJlc29sdmVQcm94eSwgZVJlc291cmNlLCBlU2V0LCBlU2V0UmVzb3VyY2UsIGVTZXRTdG9yZSwgZVNldHRpbmcsIGVTdG9yZSwgZVVuc2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsSXNTZXQsIGVWaXJ0dWFsU2V0LCBlVmlydHVhbFVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXRFQ2xhc3NpZmllciwgZ2V0RUNsYXNzaWZpZXJzLCBnZXRFRmFjdG9yeUluc3RhbmNlLCBnZXRFU3VicGFja2FnZXMsIGdldEVTdXBlclBhY2thZ2UsIGdldE5zUHJlZml4LCBnZXROc1VSSSwgc2V0RUZhY3RvcnlJbnN0YW5jZSwgc2V0TnNQcmVmaXgsIHNldE5zVVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVOYW1lZEVsZW1lbnQiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU5hbWVkRWxlbWVudDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmdldE5hbWUsIHNldE5hbWU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0RUFubm90YXRpb24sIGdldEVBbm5vdGF0aW9uczwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJpbml0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2luaXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0E+IDxCPmluaXQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzLCByZWdpc3RlcnMsIGFuZCBpbml0aWFsaXplcyB0aGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoaXMgbW9kZWwsIGFuZCBmb3IgYW55IG90aGVycyB1cG9uIHdoaWNoIGl0IGRlcGVuZHMuCisgCisgPHA+VGhpcyBtZXRob2QgaXMgdXNlZCB0byBpbml0aWFsaXplIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZUlOU1RBTkNFIj48Q09ERT5OYXZfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0U8L0NPREU+PC9BPiB3aGVuIHRoYXQgZmllbGQgaXMgYWNjZXNzZWQuCisgQ2xpZW50cyBzaG91bGQgbm90IGludm9rZSBpdCBkaXJlY3RseS4gSW5zdGVhZCwgdGhleSBzaG91bGQgc2ltcGx5IGFjY2VzcyB0aGF0IGZpZWxkIHRvIG9idGFpbiB0aGUgcGFja2FnZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTlNfVVJJIj48Q09ERT5OYXZfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNjcmVhdGVQYWNrYWdlQ29udGVudHMoKSI+PENPREU+Y3JlYXRlUGFja2FnZUNvbnRlbnRzKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2luaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKSI+PENPREU+aW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBhdGgoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UGF0aDwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0UGF0aDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0UGF0aCgpIj5nZXRQYXRoPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHBhdGg8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRPZG9tZXRyeSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRPZG9tZXRyeTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0T2RvbWV0cnk8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldE9kb21ldHJ5KCkiPmdldE9kb21ldHJ5PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG9kb21ldHJ5PERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TWFwTWV0YURhdGEoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TWFwTWV0YURhdGE8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldE1hcE1ldGFEYXRhPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRNYXBNZXRhRGF0YSgpIj5nZXRNYXBNZXRhRGF0YTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtYXAgbWV0YSBkYXRhPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0T2NjdXBhbmN5R3JpZCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRPY2N1cGFuY3lHcmlkPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRPY2N1cGFuY3lHcmlkPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRPY2N1cGFuY3lHcmlkKCkiPmdldE9jY3VwYW5jeUdyaWQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgb2NjdXBhbmN5IGdyaWQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRHcmlkQ2VsbHMoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0R3JpZENlbGxzPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRHcmlkQ2VsbHM8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEdyaWRDZWxscygpIj5nZXRHcmlkQ2VsbHM8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgZ3JpZCBjZWxsczxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldE5hdl9kYXRhdHlwZXNGYWN0b3J5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldE5hdl9kYXRhdHlwZXNGYWN0b3J5PC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc0ZhY3Rvcnk8L0E+IDxCPmdldE5hdl9kYXRhdHlwZXNGYWN0b3J5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXROYXZfZGF0YXR5cGVzRmFjdG9yeSgpIj5nZXROYXZfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBuYXZfZGF0YXR5cGVzIGZhY3Rvcnk8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVBhY2thZ2VDb250ZW50cygpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVQYWNrYWdlQ29udGVudHM8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmNyZWF0ZVBhY2thZ2VDb250ZW50czwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgdGhlIG1ldGEtbW9kZWwgb2JqZWN0cyBmb3IgdGhlIHBhY2thZ2UuICBUaGlzIG1ldGhvZCBpcworIGd1YXJkZWQgdG8gaGF2ZSBubyBhZmZlY3Qgb24gYW55IGludm9jYXRpb24gYnV0IGl0cyBmaXJzdC4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJpbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2luaXRpYWxpemVQYWNrYWdlQ29udGVudHM8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmluaXRpYWxpemVQYWNrYWdlQ29udGVudHM8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5Db21wbGV0ZSB0aGUgaW5pdGlhbGl6YXRpb24gb2YgdGhlIHBhY2thZ2UgYW5kIGl0cyBtZXRhLW1vZGVsLiAgVGhpcworIG1ldGhvZCBpcyBndWFyZGVkIHRvIGhhdmUgbm8gYWZmZWN0IG9uIGFueSBpbnZvY2F0aW9uIGJ1dCBpdHMgZmlyc3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDtORVhUIENMQVNTPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL2NsYXNzLXVzZS9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9jbGFzcy11c2UvTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODAwMDRhZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9jbGFzcy11c2UvTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwKQEAgLTAsMCArMSwxNDAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvY2xhc3MtdXNlL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ik5hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9jbGFzcy11c2UvTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvY2xhc3MtdXNlL05hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL2NsYXNzLXVzZS9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jMGJiNTc4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL2NsYXNzLXVzZS9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsLk5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9jbGFzcy11c2UvTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgQ2xhc3M8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5OYXZfZGF0YXR5cGVzUGFja2FnZUltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL2NsYXNzLXVzZS9OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJOYXZfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLWZyYW1lLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1mcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE5MDA0YmQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1mcmFtZS5odG1sCkBAIC0wLDAgKzEsMzQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsIHBhY2thZ2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSI+Cis8Rk9OVCBzaXplPSIrMSIgQ0xBU1M9IkZyYW1lVGl0bGVGb250Ij4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiIHRhcmdldD0iY2xhc3NGcmFtZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbDwvQT48L0ZPTlQ+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBOT1dSQVA+PEZPTlQgc2l6ZT0iKzEiIENMQVNTPSJGcmFtZUhlYWRpbmdGb250Ij4KK0NsYXNzZXM8L0ZPTlQ+Jm5ic3A7Cis8Rk9OVCBDTEFTUz0iRnJhbWVJdGVtRm9udCI+Cis8QlI+Cis8QSBIUkVGPSJOYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+TmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0iTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPk5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorCisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40M2EyMGYxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sCkBAIC0wLDAgKzEsMTU4IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbCBwYWNrYWdlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5QYWNrYWdlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5QUkVWIFBBQ0tBR0U8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPk5FWFQgUEFDS0FHRTwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPEgyPgorUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsCis8L0gyPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiPk5hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT48L0I+PC9URD4KKzxURD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgPGI+RmFjdG9yeTwvYj48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsIj5OYXZfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPlBhY2thZ2U8L2I+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7CisKKzxQPgorPERMPgorPC9ETD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlBhY2thZ2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPlBSRVYgUEFDS0FHRTwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+TkVYVCBQQUNLQUdFPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMDQ5MDhlCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdHJlZS5odG1sCkBAIC0wLDAgKzEsMTc0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsIENsYXNzIEhpZXJhcmNoeQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwgQ2xhc3MgSGllcmFyY2h5IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5UcmVlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9wYWNrYWdlLXRyZWUuaHRtbCI+PEI+UFJFVjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9wYWNrYWdlLXRyZWUuaHRtbCI+PEI+TkVYVDwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS10cmVlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KK0hpZXJhcmNoeSBGb3IgUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsCis8L0gyPgorPC9DRU5URVI+Cis8REw+Cis8RFQ+PEI+UGFja2FnZSBIaWVyYXJjaGllczo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+QWxsIFBhY2thZ2VzPC9BPjwvREw+Cis8SFI+Cis8SDI+CitDbGFzcyBIaWVyYXJjaHkKKzwvSDI+Cis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5qYXZhLmxhbmcuT2JqZWN0PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcikKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FU3RydWN0dXJhbEZlYXR1cmUuSW50ZXJuYWwuRHluYW1pY1ZhbHVlSG9sZGVyKQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lcjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVNb2RlbEVsZW1lbnRJbXBsIChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50KQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsIChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeSkKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiPjxCPk5hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNGYWN0b3J5PC9BPikKKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTmFtZWRFbGVtZW50SW1wbCAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU5hbWVkRWxlbWVudCkKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVQYWNrYWdlSW1wbCAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5CYXNpY0V4dGVuZGVkTWV0YURhdGEuRVBhY2thZ2VFeHRlbmRlZE1ldGFEYXRhLkhvbGRlciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlKQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbCI+PEI+TmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0E+KQorPC9VTD4KKzwvVUw+Cis8L1VMPgorPC9VTD4KKzwvVUw+Cis8L1VMPgorPC9VTD4KKzwvVUw+Cis8L1VMPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VHJlZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvcGFja2FnZS10cmVlLmh0bWwiPjxCPlBSRVY8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvcGFja2FnZS10cmVlLmh0bWwiPjxCPk5FWFQ8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdXNlLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS11c2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNjI1MjYyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdXNlLmh0bWwKQEAgLTAsMCArMSwxNDAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBQYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgUGFja2FnZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvcGFja2FnZS1mcmFtZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9wYWNrYWdlLWZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODhjZTZjZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvcGFja2FnZS1mcmFtZS5odG1sCkBAIC0wLDAgKzEsMzYgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMgcGFja2FnZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIj4KKzxGT05UIHNpemU9IisxIiBDTEFTUz0iRnJhbWVUaXRsZUZvbnQiPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiIHRhcmdldD0iY2xhc3NGcmFtZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXM8L0E+PC9GT05UPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgTk9XUkFQPjxGT05UIHNpemU9IisxIiBDTEFTUz0iRnJhbWVIZWFkaW5nRm9udCI+CitJbnRlcmZhY2VzPC9GT05UPiZuYnNwOworPEZPTlQgQ0xBU1M9IkZyYW1lSXRlbUZvbnQiPgorPEJSPgorPEEgSFJFRj0iTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5OYXZfZGF0YXR5cGVzRmFjdG9yeTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJOYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Ik5hdl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+TmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0k+PC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+CisKKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjExN2IzYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwKQEAgLTAsMCArMSwxNjkgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMgcGFja2FnZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlBhY2thZ2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5QUkVWIFBBQ0tBR0U8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+TkVYVCBQQUNLQUdFPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPEgyPgorUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcworPC9IMj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5JbnRlcmZhY2UgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0I+PC9URD4KKzxURD5UaGUgPGI+RmFjdG9yeTwvYj4gZm9yIHRoZSBtb2RlbC48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQj48L1REPgorPFREPlRoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhlIG1vZGVsLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+PC9CPjwvVEQ+Cis8VEQ+RGVmaW5lcyBsaXRlcmFscyBmb3IgdGhlIG1ldGEgb2JqZWN0cyB0aGF0IHJlcHJlc2VudAorIAorIGVhY2ggY2xhc3MsCisgZWFjaCBmZWF0dXJlIG9mIGVhY2ggY2xhc3MsCisgZWFjaCBlbnVtLAorIGFuZCBlYWNoIGRhdGEgdHlwZQorIAorIDwhPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7CisKKzxQPgorPERMPgorPC9ETD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlBhY2thZ2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5QUkVWIFBBQ0tBR0U8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+TkVYVCBQQUNLQUdFPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL3BhY2thZ2UtdHJlZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9wYWNrYWdlLXRyZWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iYjlkY2QwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9wYWNrYWdlLXRyZWUuaHRtbApAQCAtMCwwICsxLDE1OSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMgQ2xhc3MgSGllcmFyY2h5Cis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMgQ2xhc3MgSGllcmFyY2h5IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5UcmVlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS10cmVlLmh0bWwiPjxCPlBSRVY8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbCI+PEI+TkVYVDwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL3BhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+CitIaWVyYXJjaHkgRm9yIFBhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMKKzwvSDI+Cis8L0NFTlRFUj4KKzxETD4KKzxEVD48Qj5QYWNrYWdlIEhpZXJhcmNoaWVzOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctdHJlZS5odG1sIj5BbGwgUGFja2FnZXM8L0E+PC9ETD4KKzxIUj4KKzxIMj4KK0ludGVyZmFjZSBIaWVyYXJjaHkKKzwvSDI+Cis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj48Qj5OYXZfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+PEI+TmF2X2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU5hbWVkRWxlbWVudDxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZTxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPjxCPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48L1VMPgorPC9VTD4KKzwvVUw+Cis8L1VMPgorPC9VTD4KKzwvVUw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5UcmVlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS10cmVlLmh0bWwiPjxCPlBSRVY8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbCI+PEI+TkVYVDwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL3BhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9wYWNrYWdlLXVzZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9wYWNrYWdlLXVzZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhjMjA5OGUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL3BhY2thZ2UtdXNlLmh0bWwKQEAgLTAsMCArMSwxOTcgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcworPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9wYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgUGFja2FnZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlczwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXM8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitDbGFzc2VzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlczwvQT4gdXNlZCBieSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXM8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvY2xhc3MtdXNlL05hdl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPjxCPk5hdl9kYXRhdHlwZXNGYWN0b3J5PC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSA8Yj5GYWN0b3J5PC9iPiBmb3IgdGhlIG1vZGVsLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvY2xhc3MtdXNlL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPjxCPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhlIG1vZGVsLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorQ2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXM8L0E+IHVzZWQgYnkgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9jbGFzcy11c2UvTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsIj48Qj5OYXZfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgPGI+RmFjdG9yeTwvYj4gZm9yIHRoZSBtb2RlbC48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2NsYXNzLXVzZS9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwiPjxCPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhlIG1vZGVsLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL3BhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45ZGIwYTM5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeS5odG1sCkBAIC0wLDAgKzEsMzAyIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjggQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitTZW5zb3JfZGF0YXR5cGVzRmFjdG9yeQorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5IGludGVyZmFjZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYgQ0xBU1MmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlczwvRk9OVD4KKzxCUj4KK0ludGVyZmFjZSBTZW5zb3JfZGF0YXR5cGVzRmFjdG9yeTwvSDI+Cis8REw+Cis8RFQ+PEI+QWxsIFN1cGVyaW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3RvcnksIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5BbGwgS25vd24gSW1wbGVtZW50aW5nIENsYXNzZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBpbnRlcmZhY2UgPEI+U2Vuc29yX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PERUPmV4dGVuZHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhlIDxiPkZhY3Rvcnk8L2I+IGZvciB0aGUgbW9kZWwuCisgSXQgcHJvdmlkZXMgYSBjcmVhdGUgbWV0aG9kIGZvciBlYWNoIG5vbi1hYnN0cmFjdCBjbGFzcyBvZiB0aGUgbW9kZWwuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj48Q09ERT5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwjZUlOU1RBTkNFIj5lSU5TVEFOQ0U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiB0aGUgZmFjdG9yeTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwjZ2V0U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UoKSI+Z2V0U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBwYWNrYWdlIHN1cHBvcnRlZCBieSB0aGlzIGZhY3Rvcnk8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeTwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmNvbnZlcnRUb1N0cmluZywgY3JlYXRlLCBjcmVhdGVGcm9tU3RyaW5nLCBnZXRFUGFja2FnZSwgc2V0RVBhY2thZ2U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0RUFubm90YXRpb24sIGdldEVBbm5vdGF0aW9uczwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IEZJRUxEIERFVEFJTCA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImVJTlNUQU5DRSI+PCEtLSAtLT48L0E+PEgzPgorZUlOU1RBTkNFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+IDxCPmVJTlNUQU5DRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBmYWN0b3J5LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImdldFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT4gPEI+Z2V0U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBwYWNrYWdlIHN1cHBvcnRlZCBieSB0aGlzIGZhY3RvcnkuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcGFja2FnZSBzdXBwb3J0ZWQgYnkgdGhpcyBmYWN0b3J5LjwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYgQ0xBU1MmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZTQ4Y2M5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sCkBAIC0wLDAgKzEsNTg5IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjggQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscworPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzIGludGVyZmFjZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7TkVYVCBDTEFTUzwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXM8L0ZPTlQ+Cis8QlI+CitJbnRlcmZhY2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0gyPgorPERMPgorPERUPjxCPkVuY2xvc2luZyBpbnRlcmZhY2U6PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBzdGF0aWMgaW50ZXJmYWNlIDxCPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9CPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIERlZmluZXMgbGl0ZXJhbHMgZm9yIHRoZSBtZXRhIG9iamVjdHMgdGhhdCByZXByZXNlbnQKKyA8dWw+CisgPGxpPmVhY2ggY2xhc3MsPC9saT4KKyA8bGk+ZWFjaCBmZWF0dXJlIG9mIGVhY2ggY2xhc3MsPC9saT4KKyA8bGk+ZWFjaCBlbnVtLDwvbGk+CisgPGxpPmFuZCBlYWNoIGRhdGEgdHlwZTwvbGk+CisgPC91bD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKworPFA+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNDQU1FUkFfSU5GTyI+Q0FNRVJBX0lORk88L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkNhbWVyYSBJbmZvPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQ0hBTk5FTF9GTE9BVDMyIj5DSEFOTkVMX0ZMT0FUMzI8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkNoYW5uZWwgRmxvYXQzMjwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI0NPTVBSRVNTRURfSU1BR0UiPkNPTVBSRVNTRURfSU1BR0U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkNvbXByZXNzZWQgSW1hZ2U8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNJTUFHRSI+SU1BR0U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkltYWdlPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjSU1VIj5JTVU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkltdTwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI0pPSU5UX1NUQVRFIj5KT0lOVF9TVEFURTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+Sm9pbnQgU3RhdGU8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNKT1kiPkpPWTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+Sm95PC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjSk9ZX0ZFRURCQUNLIj5KT1lfRkVFREJBQ0s8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkpveSBGZWVkYmFjazwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI0pPWV9GRUVEQkFDS19BUlJBWSI+Sk9ZX0ZFRURCQUNLX0FSUkFZPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Kb3kgRmVlZGJhY2sgQXJyYXk8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNMQVNFUl9TQ0FOIj5MQVNFUl9TQ0FOPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5MYXNlciBTY2FuPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjTkFWX1NBVF9GSVgiPk5BVl9TQVRfRklYPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5OYXYgU2F0IEZpeDwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI05BVl9TQVRfU1RBVFVTIj5OQVZfU0FUX1NUQVRVUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+TmF2IFNhdCBTdGF0dXM8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNQT0lOVF9DTE9VRCI+UE9JTlRfQ0xPVUQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlBvaW50IENsb3VkPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUE9JTlRfQ0xPVUQyIj5QT0lOVF9DTE9VRDI8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlBvaW50IENsb3VkMjwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1BPSU5UX0ZJRUxEIj5QT0lOVF9GSUVMRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+UG9pbnQgRmllbGQ8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNSQU5HRSI+UkFOR0U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlJhbmdlPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUkVHSU9OX09GX0lOVEVSRVNUIj5SRUdJT05fT0ZfSU5URVJFU1Q8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlJlZ2lvbiBPZiBJbnRlcmVzdDwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBGSUVMRCBERVRBSUwgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJSRUdJT05fT0ZfSU5URVJFU1QiPjwhLS0gLS0+PC9BPjxIMz4KK1JFR0lPTl9PRl9JTlRFUkVTVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+UkVHSU9OX09GX0lOVEVSRVNUPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5SZWdpb24gT2YgSW50ZXJlc3Q8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRSZWdpb25PZkludGVyZXN0KCkiPjxDT0RFPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRSZWdpb25PZkludGVyZXN0KCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJSQU5HRSI+PCEtLSAtLT48L0E+PEgzPgorUkFOR0U8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPlJBTkdFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5SYW5nZTwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFJhbmdlKCkiPjxDT0RFPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRSYW5nZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQ0FNRVJBX0lORk8iPjwhLS0gLS0+PC9BPjxIMz4KK0NBTUVSQV9JTkZPPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5DQU1FUkFfSU5GTzwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+Q2FtZXJhIEluZm88L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRDYW1lcmFJbmZvKCkiPjxDT0RFPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRDYW1lcmFJbmZvKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJJTVUiPjwhLS0gLS0+PC9BPjxIMz4KK0lNVTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+SU1VPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5JbXU8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRJbXUoKSI+PENPREU+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldEltdSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTEFTRVJfU0NBTiI+PCEtLSAtLT48L0E+PEgzPgorTEFTRVJfU0NBTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+TEFTRVJfU0NBTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+TGFzZXIgU2NhbjwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldExhc2VyU2NhbigpIj48Q09ERT5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0TGFzZXJTY2FuKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJJTUFHRSI+PCEtLSAtLT48L0E+PEgzPgorSU1BR0U8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPklNQUdFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5JbWFnZTwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEltYWdlKCkiPjxDT0RFPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRJbWFnZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQ0hBTk5FTF9GTE9BVDMyIj48IS0tIC0tPjwvQT48SDM+CitDSEFOTkVMX0ZMT0FUMzI8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPkNIQU5ORUxfRkxPQVQzMjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+Q2hhbm5lbCBGbG9hdDMyPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0Q2hhbm5lbEZsb2F0MzIoKSI+PENPREU+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldENoYW5uZWxGbG9hdDMyKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJDT01QUkVTU0VEX0lNQUdFIj48IS0tIC0tPjwvQT48SDM+CitDT01QUkVTU0VEX0lNQUdFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5DT01QUkVTU0VEX0lNQUdFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Db21wcmVzc2VkIEltYWdlPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0Q29tcHJlc3NlZEltYWdlKCkiPjxDT0RFPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRDb21wcmVzc2VkSW1hZ2UoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlBPSU5UX0NMT1VEIj48IS0tIC0tPjwvQT48SDM+CitQT0lOVF9DTE9VRDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+UE9JTlRfQ0xPVUQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlBvaW50IENsb3VkPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0UG9pbnRDbG91ZCgpIj48Q09ERT5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0UG9pbnRDbG91ZCgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUE9JTlRfRklFTEQiPjwhLS0gLS0+PC9BPjxIMz4KK1BPSU5UX0ZJRUxEPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5QT0lOVF9GSUVMRDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+UG9pbnQgRmllbGQ8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRQb2ludEZpZWxkKCkiPjxDT0RFPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRQb2ludEZpZWxkKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQT0lOVF9DTE9VRDIiPjwhLS0gLS0+PC9BPjxIMz4KK1BPSU5UX0NMT1VEMjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+UE9JTlRfQ0xPVUQyPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Qb2ludCBDbG91ZDI8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRQb2ludENsb3VkMigpIj48Q09ERT5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0UG9pbnRDbG91ZDIoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkpPSU5UX1NUQVRFIj48IS0tIC0tPjwvQT48SDM+CitKT0lOVF9TVEFURTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Sk9JTlRfU1RBVEU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkpvaW50IFN0YXRlPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0Sm9pbnRTdGF0ZSgpIj48Q09ERT5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0Sm9pbnRTdGF0ZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTkFWX1NBVF9TVEFUVVMiPjwhLS0gLS0+PC9BPjxIMz4KK05BVl9TQVRfU1RBVFVTPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5OQVZfU0FUX1NUQVRVUzwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+TmF2IFNhdCBTdGF0dXM8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXROYXZTYXRTdGF0dXMoKSI+PENPREU+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldE5hdlNhdFN0YXR1cygpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTkFWX1NBVF9GSVgiPjwhLS0gLS0+PC9BPjxIMz4KK05BVl9TQVRfRklYPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5OQVZfU0FUX0ZJWDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+TmF2IFNhdCBGaXg8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXROYXZTYXRGaXgoKSI+PENPREU+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldE5hdlNhdEZpeCgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iSk9ZIj48IS0tIC0tPjwvQT48SDM+CitKT1k8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPkpPWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+Sm95PC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0Sm95KCkiPjxDT0RFPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRKb3koKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkpPWV9GRUVEQkFDSyI+PCEtLSAtLT48L0E+PEgzPgorSk9ZX0ZFRURCQUNLPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5KT1lfRkVFREJBQ0s8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkpveSBGZWVkYmFjazwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEpveUZlZWRiYWNrKCkiPjxDT0RFPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRKb3lGZWVkYmFjaygpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iSk9ZX0ZFRURCQUNLX0FSUkFZIj48IS0tIC0tPjwvQT48SDM+CitKT1lfRkVFREJBQ0tfQVJSQVk8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPkpPWV9GRUVEQkFDS19BUlJBWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+Sm95IEZlZWRiYWNrIEFycmF5PC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0Sm95RmVlZGJhY2tBcnJheSgpIj48Q09ERT5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0Sm95RmVlZGJhY2tBcnJheSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7TkVYVCBDTEFTUzwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzAzZDMyZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbApAQCAtMCwwICsxLDEyODQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyOCBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UgaW50ZXJmYWNlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJTZW5zb3JfZGF0YXR5cGVzUGFja2FnZSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXM8L0ZPTlQ+Cis8QlI+CitJbnRlcmZhY2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0gyPgorPERMPgorPERUPjxCPkFsbCBTdXBlcmludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTmFtZWRFbGVtZW50LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlLCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBJbXBsZW1lbnRpbmcgQ2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQj48RFQ+ZXh0ZW5kcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U8L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoZSBtb2RlbC4KKyBJdCBjb250YWlucyBhY2Nlc3NvcnMgZm9yIHRoZSBtZXRhIG9iamVjdHMgdG8gcmVwcmVzZW50CisgPHVsPgorICAgPGxpPmVhY2ggY2xhc3MsPC9saT4KKyAgIDxsaT5lYWNoIGZlYXR1cmUgb2YgZWFjaCBjbGFzcyw8L2xpPgorICAgPGxpPmVhY2ggZW51bSw8L2xpPgorICAgPGxpPmFuZCBlYWNoIGRhdGEgdHlwZTwvbGk+CisgPC91bD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPjxDT0RFPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5PC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7RGVmaW5lcyBsaXRlcmFscyBmb3IgdGhlIG1ldGEgb2JqZWN0cyB0aGF0IHJlcHJlc2VudAorIAorIGVhY2ggY2xhc3MsCisgZWFjaCBmZWF0dXJlIG9mIGVhY2ggY2xhc3MsCisgZWFjaCBlbnVtLAorIGFuZCBlYWNoIGRhdGEgdHlwZQorIAorIDwhPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlLkRlc2NyaXB0b3IsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZS5SZWdpc3RyeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNDQU1FUkFfSU5GTyI+Q0FNRVJBX0lORk88L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5DYW1lcmEgSW5mbzwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjQ0hBTk5FTF9GTE9BVDMyIj5DSEFOTkVMX0ZMT0FUMzI8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5DaGFubmVsIEZsb2F0MzI8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI0NPTVBSRVNTRURfSU1BR0UiPkNPTVBSRVNTRURfSU1BR0U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Db21wcmVzc2VkIEltYWdlPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlSU5TVEFOQ0UiPmVJTlNUQU5DRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBwYWNrYWdlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTkFNRSI+ZU5BTUU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIHBhY2thZ2UgbmFtZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1BSRUZJWCI+ZU5TX1BSRUZJWDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgcGFja2FnZSBuYW1lc3BhY2UgbmFtZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1VSSSI+ZU5TX1VSSTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgcGFja2FnZSBuYW1lc3BhY2UgVVJJPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI0lNQUdFIj5JTUFHRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkltYWdlPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNJTVUiPklNVTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkltdTwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjSk9JTlRfU1RBVEUiPkpPSU5UX1NUQVRFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+Sm9pbnQgU3RhdGU8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI0pPWSI+Sk9ZPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+Sm95PC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNKT1lfRkVFREJBQ0siPkpPWV9GRUVEQkFDSzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkpveSBGZWVkYmFjazwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjSk9ZX0ZFRURCQUNLX0FSUkFZIj5KT1lfRkVFREJBQ0tfQVJSQVk8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Kb3kgRmVlZGJhY2sgQXJyYXk8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI0xBU0VSX1NDQU4iPkxBU0VSX1NDQU48L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5MYXNlciBTY2FuPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNOQVZfU0FUX0ZJWCI+TkFWX1NBVF9GSVg8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5OYXYgU2F0IEZpeDwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjTkFWX1NBVF9TVEFUVVMiPk5BVl9TQVRfU1RBVFVTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+TmF2IFNhdCBTdGF0dXM8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI1BPSU5UX0NMT1VEIj5QT0lOVF9DTE9VRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlBvaW50IENsb3VkPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNQT0lOVF9DTE9VRDIiPlBPSU5UX0NMT1VEMjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlBvaW50IENsb3VkMjwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjUE9JTlRfRklFTEQiPlBPSU5UX0ZJRUxEPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+UG9pbnQgRmllbGQ8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI1JBTkdFIj5SQU5HRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlJhbmdlPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNSRUdJT05fT0ZfSU5URVJFU1QiPlJFR0lPTl9PRl9JTlRFUkVTVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlJlZ2lvbiBPZiBJbnRlcmVzdDwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRDYW1lcmFJbmZvKCkiPmdldENhbWVyYUluZm88L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+Q2FtZXJhIEluZm88L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRDaGFubmVsRmxvYXQzMigpIj5nZXRDaGFubmVsRmxvYXQzMjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5DaGFubmVsIEZsb2F0MzI8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRDb21wcmVzc2VkSW1hZ2UoKSI+Z2V0Q29tcHJlc3NlZEltYWdlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkNvbXByZXNzZWQgSW1hZ2U8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRJbWFnZSgpIj5nZXRJbWFnZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5JbWFnZTwvZW0+PC9DT0RFPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEltdSgpIj5nZXRJbXU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+SW11PC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0Sm9pbnRTdGF0ZSgpIj5nZXRKb2ludFN0YXRlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkpvaW50IFN0YXRlPC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0Sm95KCkiPmdldEpveTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Kb3k8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRKb3lGZWVkYmFjaygpIj5nZXRKb3lGZWVkYmFjazwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Kb3kgRmVlZGJhY2s8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRKb3lGZWVkYmFja0FycmF5KCkiPmdldEpveUZlZWRiYWNrQXJyYXk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+Sm95IEZlZWRiYWNrIEFycmF5PC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0TGFzZXJTY2FuKCkiPmdldExhc2VyU2NhbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5MYXNlciBTY2FuPC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0TmF2U2F0Rml4KCkiPmdldE5hdlNhdEZpeDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5OYXYgU2F0IEZpeDwvZW0+PC9DT0RFPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldE5hdlNhdFN0YXR1cygpIj5nZXROYXZTYXRTdGF0dXM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+TmF2IFNhdCBTdGF0dXM8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRQb2ludENsb3VkKCkiPmdldFBvaW50Q2xvdWQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+UG9pbnQgQ2xvdWQ8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRQb2ludENsb3VkMigpIj5nZXRQb2ludENsb3VkMjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Qb2ludCBDbG91ZDI8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRQb2ludEZpZWxkKCkiPmdldFBvaW50RmllbGQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+UG9pbnQgRmllbGQ8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRSYW5nZSgpIj5nZXRSYW5nZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5SYW5nZTwvZW0+PC9DT0RFPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFJlZ2lvbk9mSW50ZXJlc3QoKSI+Z2V0UmVnaW9uT2ZJbnRlcmVzdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5SZWdpb24gT2YgSW50ZXJlc3Q8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5KCkiPmdldFNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgZmFjdG9yeSB0aGF0IGNyZWF0ZXMgdGhlIGluc3RhbmNlcyBvZiB0aGUgbW9kZWw8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZTwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmdldEVDbGFzc2lmaWVyLCBnZXRFQ2xhc3NpZmllcnMsIGdldEVGYWN0b3J5SW5zdGFuY2UsIGdldEVTdWJwYWNrYWdlcywgZ2V0RVN1cGVyUGFja2FnZSwgZ2V0TnNQcmVmaXgsIGdldE5zVVJJLCBzZXRFRmFjdG9yeUluc3RhbmNlLCBzZXROc1ByZWZpeCwgc2V0TnNVUkk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU5hbWVkRWxlbWVudCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTmFtZWRFbGVtZW50PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0TmFtZSwgc2V0TmFtZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQ8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXRFQW5ub3RhdGlvbiwgZ2V0RUFubm90YXRpb25zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gRklFTEQgREVUQUlMID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZU5BTUUiPjwhLS0gLS0+PC9BPjxIMz4KK2VOQU1FPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgamF2YS5sYW5nLlN0cmluZyA8Qj5lTkFNRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgcGFja2FnZSBuYW1lLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmVOQU1FIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVOU19VUkkiPjwhLS0gLS0+PC9BPjxIMz4KK2VOU19VUkk8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBqYXZhLmxhbmcuU3RyaW5nIDxCPmVOU19VUkk8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIHBhY2thZ2UgbmFtZXNwYWNlIFVSSS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVOU19QUkVGSVgiPjwhLS0gLS0+PC9BPjxIMz4KK2VOU19QUkVGSVg8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBqYXZhLmxhbmcuU3RyaW5nIDxCPmVOU19QUkVGSVg8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIHBhY2thZ2UgbmFtZXNwYWNlIG5hbWUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1BSRUZJWCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlSU5TVEFOQ0UiPjwhLS0gLS0+PC9BPjxIMz4KK2VJTlNUQU5DRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPiA8Qj5lSU5TVEFOQ0U8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiB0aGUgcGFja2FnZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUkVHSU9OX09GX0lOVEVSRVNUIj48IS0tIC0tPjwvQT48SDM+CitSRUdJT05fT0ZfSU5URVJFU1Q8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+UkVHSU9OX09GX0lOVEVSRVNUPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+UmVnaW9uIE9mIEludGVyZXN0PC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0UmVnaW9uT2ZJbnRlcmVzdCgpIj48Q09ERT5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0UmVnaW9uT2ZJbnRlcmVzdCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkVHSU9OX09GX0lOVEVSRVNUIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlJBTkdFIj48IS0tIC0tPjwvQT48SDM+CitSQU5HRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5SQU5HRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlJhbmdlPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0UmFuZ2UoKSI+PENPREU+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldFJhbmdlKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SQU5HRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJDQU1FUkFfSU5GTyI+PCEtLSAtLT48L0E+PEgzPgorQ0FNRVJBX0lORk88L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+Q0FNRVJBX0lORk88L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5DYW1lcmEgSW5mbzwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldENhbWVyYUluZm8oKSI+PENPREU+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldENhbWVyYUluZm8oKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBTUVSQV9JTkZPIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IklNVSI+PCEtLSAtLT48L0E+PEgzPgorSU1VPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPklNVTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkltdTwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEltdSgpIj48Q09ERT5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0SW11KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTVUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTEFTRVJfU0NBTiI+PCEtLSAtLT48L0E+PEgzPgorTEFTRVJfU0NBTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5MQVNFUl9TQ0FOPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+TGFzZXIgU2NhbjwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldExhc2VyU2NhbigpIj48Q09ERT5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0TGFzZXJTY2FuKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MQVNFUl9TQ0FOIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IklNQUdFIj48IS0tIC0tPjwvQT48SDM+CitJTUFHRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5JTUFHRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkltYWdlPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0SW1hZ2UoKSI+PENPREU+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldEltYWdlKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTUFHRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJDSEFOTkVMX0ZMT0FUMzIiPjwhLS0gLS0+PC9BPjxIMz4KK0NIQU5ORUxfRkxPQVQzMjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5DSEFOTkVMX0ZMT0FUMzI8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5DaGFubmVsIEZsb2F0MzI8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRDaGFubmVsRmxvYXQzMigpIj48Q09ERT5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0Q2hhbm5lbEZsb2F0MzIoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNIQU5ORUxfRkxPQVQzMiI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJDT01QUkVTU0VEX0lNQUdFIj48IS0tIC0tPjwvQT48SDM+CitDT01QUkVTU0VEX0lNQUdFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkNPTVBSRVNTRURfSU1BR0U8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Db21wcmVzc2VkIEltYWdlPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0Q29tcHJlc3NlZEltYWdlKCkiPjxDT0RFPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRDb21wcmVzc2VkSW1hZ2UoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNPTVBSRVNTRURfSU1BR0UiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUE9JTlRfQ0xPVUQiPjwhLS0gLS0+PC9BPjxIMz4KK1BPSU5UX0NMT1VEPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlBPSU5UX0NMT1VEPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+UG9pbnQgQ2xvdWQ8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRQb2ludENsb3VkKCkiPjxDT0RFPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRQb2ludENsb3VkKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQT0lOVF9GSUVMRCI+PCEtLSAtLT48L0E+PEgzPgorUE9JTlRfRklFTEQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+UE9JTlRfRklFTEQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Qb2ludCBGaWVsZDwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFBvaW50RmllbGQoKSI+PENPREU+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldFBvaW50RmllbGQoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0ZJRUxEIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlBPSU5UX0NMT1VEMiI+PCEtLSAtLT48L0E+PEgzPgorUE9JTlRfQ0xPVUQyPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlBPSU5UX0NMT1VEMjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlBvaW50IENsb3VkMjwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFBvaW50Q2xvdWQyKCkiPjxDT0RFPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRQb2ludENsb3VkMigpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVUQyIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkpPSU5UX1NUQVRFIj48IS0tIC0tPjwvQT48SDM+CitKT0lOVF9TVEFURTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5KT0lOVF9TVEFURTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkpvaW50IFN0YXRlPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0Sm9pbnRTdGF0ZSgpIj48Q09ERT5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0Sm9pbnRTdGF0ZSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9JTlRfU1RBVEUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTkFWX1NBVF9TVEFUVVMiPjwhLS0gLS0+PC9BPjxIMz4KK05BVl9TQVRfU1RBVFVTPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPk5BVl9TQVRfU1RBVFVTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+TmF2IFNhdCBTdGF0dXM8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXROYXZTYXRTdGF0dXMoKSI+PENPREU+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldE5hdlNhdFN0YXR1cygpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9TVEFUVVMiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTkFWX1NBVF9GSVgiPjwhLS0gLS0+PC9BPjxIMz4KK05BVl9TQVRfRklYPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPk5BVl9TQVRfRklYPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+TmF2IFNhdCBGaXg8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXROYXZTYXRGaXgoKSI+PENPREU+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldE5hdlNhdEZpeCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9GSVgiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iSk9ZIj48IS0tIC0tPjwvQT48SDM+CitKT1k8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+Sk9ZPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+Sm95PC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0Sm95KCkiPjxDT0RFPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRKb3koKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJKT1lfRkVFREJBQ0siPjwhLS0gLS0+PC9BPjxIMz4KK0pPWV9GRUVEQkFDSzwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5KT1lfRkVFREJBQ0s8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Kb3kgRmVlZGJhY2s8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRKb3lGZWVkYmFjaygpIj48Q09ERT5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0Sm95RmVlZGJhY2soKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9GRUVEQkFDSyI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJKT1lfRkVFREJBQ0tfQVJSQVkiPjwhLS0gLS0+PC9BPjxIMz4KK0pPWV9GRUVEQkFDS19BUlJBWTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5KT1lfRkVFREJBQ0tfQVJSQVk8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Kb3kgRmVlZGJhY2sgQXJyYXk8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRKb3lGZWVkYmFja0FycmF5KCkiPjxDT0RFPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRKb3lGZWVkYmFja0FycmF5KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT1lfRkVFREJBQ0tfQVJSQVkiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJnZXRSZWdpb25PZkludGVyZXN0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFJlZ2lvbk9mSW50ZXJlc3Q8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0UmVnaW9uT2ZJbnRlcmVzdDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5SZWdpb24gT2YgSW50ZXJlc3Q8L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5SZWdpb24gT2YgSW50ZXJlc3Q8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UmFuZ2UoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UmFuZ2U8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0UmFuZ2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+UmFuZ2U8L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5SYW5nZTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRDYW1lcmFJbmZvKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldENhbWVyYUluZm88L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0Q2FtZXJhSW5mbzwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5DYW1lcmEgSW5mbzwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPkNhbWVyYSBJbmZvPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEltdSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRJbXU8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0SW11PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkltdTwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPkltdTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRMYXNlclNjYW4oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TGFzZXJTY2FuPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldExhc2VyU2NhbjwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5MYXNlciBTY2FuPC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+TGFzZXIgU2NhbjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRJbWFnZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRJbWFnZTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRJbWFnZTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5JbWFnZTwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPkltYWdlPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldENoYW5uZWxGbG9hdDMyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldENoYW5uZWxGbG9hdDMyPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldENoYW5uZWxGbG9hdDMyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkNoYW5uZWwgRmxvYXQzMjwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPkNoYW5uZWwgRmxvYXQzMjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRDb21wcmVzc2VkSW1hZ2UoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Q29tcHJlc3NlZEltYWdlPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldENvbXByZXNzZWRJbWFnZTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Db21wcmVzc2VkIEltYWdlPC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+Q29tcHJlc3NlZCBJbWFnZTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRQb2ludENsb3VkKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBvaW50Q2xvdWQ8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0UG9pbnRDbG91ZDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Qb2ludCBDbG91ZDwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPlBvaW50IENsb3VkPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBvaW50RmllbGQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UG9pbnRGaWVsZDwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRQb2ludEZpZWxkPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlBvaW50IEZpZWxkPC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+UG9pbnQgRmllbGQ8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UG9pbnRDbG91ZDIoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UG9pbnRDbG91ZDI8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0UG9pbnRDbG91ZDI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+UG9pbnQgQ2xvdWQyPC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+UG9pbnQgQ2xvdWQyPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEpvaW50U3RhdGUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Sm9pbnRTdGF0ZTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRKb2ludFN0YXRlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkpvaW50IFN0YXRlPC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+Sm9pbnQgU3RhdGU8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TmF2U2F0U3RhdHVzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldE5hdlNhdFN0YXR1czwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXROYXZTYXRTdGF0dXM8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+TmF2IFNhdCBTdGF0dXM8L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5OYXYgU2F0IFN0YXR1czwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXROYXZTYXRGaXgoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TmF2U2F0Rml4PC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldE5hdlNhdEZpeDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5OYXYgU2F0IEZpeDwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPk5hdiBTYXQgRml4PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEpveSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRKb3k8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0Sm95PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkpveTwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPkpveTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRKb3lGZWVkYmFjaygpIj48IS0tIC0tPjwvQT48SDM+CitnZXRKb3lGZWVkYmFjazwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRKb3lGZWVkYmFjazwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Kb3kgRmVlZGJhY2s8L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5Kb3kgRmVlZGJhY2s8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Sm95RmVlZGJhY2tBcnJheSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRKb3lGZWVkYmFja0FycmF5PC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldEpveUZlZWRiYWNrQXJyYXk8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+Sm95IEZlZWRiYWNrIEFycmF5PC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+Sm95IEZlZWRiYWNrIEFycmF5PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5PC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeTwvQT4gPEI+Z2V0U2Vuc29yX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBmYWN0b3J5IHRoYXQgY3JlYXRlcyB0aGUgaW5zdGFuY2VzIG9mIHRoZSBtb2RlbC4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBmYWN0b3J5IHRoYXQgY3JlYXRlcyB0aGUgaW5zdGFuY2VzIG9mIHRoZSBtb2RlbC48L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc19zdW1tYXJ5Ij5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvY2xhc3MtdXNlL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2NsYXNzLXVzZS9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUwZTkxNWEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2NsYXNzLXVzZS9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeS5odG1sCkBAIC0wLDAgKzEsMjQ1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvY2xhc3MtdXNlL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBJbnRlcmZhY2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXM8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5PC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXM8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+RmllbGRzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlczwvQT4gZGVjbGFyZWQgYXMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwjZUlOU1RBTkNFIj5lSU5TVEFOQ0U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiB0aGUgZmFjdG9yeTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXM8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5KCkiPmdldFNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgZmFjdG9yeSB0aGF0IGNyZWF0ZXMgdGhlIGluc3RhbmNlcyBvZiB0aGUgbW9kZWw8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsPC9BPiB0aGF0IGltcGxlbWVudCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPkZhY3Rvcnk8L2I+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRTZW5zb3JfZGF0YXR5cGVzRmFjdG9yeSgpIj5nZXRTZW5zb3JfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNpbml0KCkiPmluaXQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIHRoZSBkZWZhdWx0IGZhY3RvcnkgaW1wbGVtZW50YXRpb248L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2NsYXNzLXVzZS9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2NsYXNzLXVzZS9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9jbGFzcy11c2UvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNGRkNWEzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9jbGFzcy11c2UvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscyI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2NsYXNzLXVzZS9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgSW50ZXJmYWNlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9jbGFzcy11c2UvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9jbGFzcy11c2UvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvY2xhc3MtdXNlL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzBjODI2MwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvY2xhc3MtdXNlL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwKQEAgLTAsMCArMSwyNTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9jbGFzcy11c2UvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlczwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlczwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5GaWVsZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzPC9BPiBkZWNsYXJlZCBhcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlSU5TVEFOQ0UiPmVJTlNUQU5DRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBwYWNrYWdlPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlczwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwjZ2V0U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UoKSI+Z2V0U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBwYWNrYWdlIHN1cHBvcnRlZCBieSB0aGlzIGZhY3Rvcnk8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsPC9BPiB0aGF0IGltcGxlbWVudCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPlBhY2thZ2U8L2I+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNnZXRQYWNrYWdlKCkiPmdldFBhY2thZ2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST48L0k+Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjZ2V0U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UoKSI+Z2V0U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjaW5pdCgpIj5pbml0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcywgcmVnaXN0ZXJzLCBhbmQgaW5pdGlhbGl6ZXMgdGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGlzIG1vZGVsLCBhbmQgZm9yIGFueSBvdGhlcnMgdXBvbiB3aGljaCBpdCBkZXBlbmRzLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvY2xhc3MtdXNlL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44MGU4NGZjCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sCkBAIC0wLDAgKzEsMTU0OCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI5IENFVCAyMDEyIC0tPgorPFRJVExFPgorU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYgQ0xBU1MmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3Jfc3VtbWFyeSI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX2RldGFpbCI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIFNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsCisgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyCisgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU1vZGVsRWxlbWVudEltcGwKKyAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsCisgICAgICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQj4KKzwvUFJFPgorPERMPgorPERUPjxCPkFsbCBJbXBsZW1lbnRlZCBJbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3RvcnksIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVTdHJ1Y3R1cmFsRmVhdHVyZS5JbnRlcm5hbC5EeW5hbWljVmFsdWVIb2xkZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGNsYXNzIDxCPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQj48RFQ+ZXh0ZW5kcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FRmFjdG9yeUltcGw8RFQ+aW1wbGVtZW50cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgPGI+RmFjdG9yeTwvYj4uCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKworPFA+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PSBORVNURUQgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0ibmVzdGVkX2NsYXNzX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5OZXN0ZWQgQ2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIuRHluYW1pYzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVBZGFwdGVyTGlzdCZsdDtFIGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCAmIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXImZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVPYnNlcnZhYmxlQWRhcHRlckxpc3Q8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QuRVN0b3JlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeS5odG1sI2VJTlNUQU5DRSI+ZUlOU1RBTkNFPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVTdHJ1Y3R1cmFsRmVhdHVyZS5JbnRlcm5hbC5EeW5hbWljVmFsdWVIb2xkZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FU3RydWN0dXJhbEZlYXR1cmUuSW50ZXJuYWwuRHluYW1pY1ZhbHVlSG9sZGVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+TklMPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RU9QUE9TSVRFX0ZFQVRVUkVfQkFTRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT0gQ09OU1RSVUNUT1IgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0iY29uc3RydWN0b3Jfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNTZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwoKSI+U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgZmFjdG9yeTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRDYW1lcmFJbmZvVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRDYW1lcmFJbmZvVG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRDaGFubmVsRmxvYXQzMlRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0Q2hhbm5lbEZsb2F0MzJUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRDb21wcmVzc2VkSW1hZ2VUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydENvbXByZXNzZWRJbWFnZVRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRJbWFnZVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0SW1hZ2VUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRJbXVUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydEltdVRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRKb2ludFN0YXRlVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRKb2ludFN0YXRlVG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRKb3lGZWVkYmFja0FycmF5VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRKb3lGZWVkYmFja0FycmF5VG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRKb3lGZWVkYmFja1RvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0Sm95RmVlZGJhY2tUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRKb3lUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydEpveVRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRMYXNlclNjYW5Ub1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydExhc2VyU2NhblRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnROYXZTYXRGaXhUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydE5hdlNhdEZpeFRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnROYXZTYXRTdGF0dXNUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydE5hdlNhdFN0YXR1c1RvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRQb2ludENsb3VkMlRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0UG9pbnRDbG91ZDJUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRQb2ludENsb3VkVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRQb2ludENsb3VkVG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRQb2ludEZpZWxkVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRQb2ludEZpZWxkVG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRSYW5nZVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0UmFuZ2VUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRSZWdpb25PZkludGVyZXN0VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRSZWdpb25PZkludGVyZXN0VG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydFRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGUob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcykiPmNyZWF0ZTwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MmbmJzcDtlQ2xhc3MpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVDYW1lcmFJbmZvRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlQ2FtZXJhSW5mb0Zyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUNoYW5uZWxGbG9hdDMyRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlQ2hhbm5lbEZsb2F0MzJGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlQ29tcHJlc3NlZEltYWdlRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlQ29tcHJlc3NlZEltYWdlRnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5PYmplY3Q8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUltYWdlRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlSW1hZ2VGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlSW11RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlSW11RnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVKb2ludFN0YXRlRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlSm9pbnRTdGF0ZUZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUpveUZlZWRiYWNrQXJyYXlGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVKb3lGZWVkYmFja0FycmF5RnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlSm95RmVlZGJhY2tGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVKb3lGZWVkYmFja0Zyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVKb3lGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVKb3lGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUxhc2VyU2NhbkZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZUxhc2VyU2NhbkZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlTmF2U2F0Rml4RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlTmF2U2F0Rml4RnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVOYXZTYXRTdGF0dXNGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVOYXZTYXRTdGF0dXNGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVBvaW50Q2xvdWQyRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlUG9pbnRDbG91ZDJGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlUG9pbnRDbG91ZEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZVBvaW50Q2xvdWRGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQb2ludEZpZWxkRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlUG9pbnRGaWVsZEZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVJhbmdlRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlUmFuZ2VGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlUmVnaW9uT2ZJbnRlcmVzdEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZVJlZ2lvbk9mSW50ZXJlc3RGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2dldFBhY2thZ2UoKSI+Z2V0UGFja2FnZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwOzxJPjwvST4mbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjZ2V0U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UoKSI+Z2V0U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2luaXQoKSI+aW5pdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMgdGhlIGRlZmF1bHQgZmFjdG9yeSBpbXBsZW1lbnRhdGlvbjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FRmFjdG9yeUltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5iYXNpY1NldEVQYWNrYWdlLCBlR2V0LCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZVNldCwgZVVuc2V0LCBnZXRFUGFja2FnZSwgc2V0RVBhY2thZ2U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTW9kZWxFbGVtZW50SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU1vZGVsRWxlbWVudEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lT2JqZWN0Rm9yVVJJRnJhZ21lbnRTZWdtZW50LCBlVVJJRnJhZ21lbnRTZWdtZW50LCBnZXRFQW5ub3RhdGlvbiwgZ2V0RUFubm90YXRpb25zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVJbnRlcm5hbENvbnRhaW5lcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZHluYW1pY0dldCwgZHluYW1pY1NldCwgZHluYW1pY1Vuc2V0LCBlQWRhcHRlcnMsIGVDbGFzcywgZUNvbnRhaW5lckZlYXR1cmVJRCwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVsaXZlciwgZURpcmVjdFJlc291cmNlLCBlSXNQcm94eSwgZVByb3h5VVJJLCBlU2V0Q2xhc3MsIGVTZXREZWxpdmVyLCBlU2V0UHJveHlVUkk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQmFzZVN0cnVjdHVyYWxGZWF0dXJlSUQsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXJGZWF0dXJlLCBlQmFzaWNTZXRDb250YWluZXIsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRhaW5zLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZUR5bmFtaWNCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVEeW5hbWljR2V0LCBlRHluYW1pY0dldCwgZUR5bmFtaWNJbnZlcnNlQWRkLCBlRHluYW1pY0ludmVyc2VSZW1vdmUsIGVEeW5hbWljSW52b2tlLCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljVW5zZXQsIGVEeW5hbWljVW5zZXQsIGVHZXQsIGVHZXQsIGVHZXQsIGVJbnRlcm5hbFJlc291cmNlLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZU9wZW5HZXQsIGVPcGVuSXNTZXQsIGVPcGVuU2V0LCBlT3BlblVuc2V0LCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQsIHRvU3RyaW5nPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3RvcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3Rvcnk8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXRFUGFja2FnZSwgc2V0RVBhY2thZ2U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0RUFubm90YXRpb24sIGdldEVBbm5vdGF0aW9uczwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT0gQ09OU1RSVUNUT1IgREVUQUlMID09PT09PT09IC0tPgorCis8QSBOQU1FPSJjb25zdHJ1Y3Rvcl9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5Db25zdHJ1Y3RvciBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsKCkiPjwhLS0gLS0+PC9BPjxIMz4KK1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvSDM+Cis8UFJFPgorcHVibGljIDxCPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIGZhY3RvcnkuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPC9ETD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJpbml0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2luaXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+IDxCPmluaXQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIHRoZSBkZWZhdWx0IGZhY3RvcnkgaW1wbGVtZW50YXRpb24uCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGU8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCA8Qj5jcmVhdGU8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MmbmJzcDtlQ2xhc3MpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+Y3JlYXRlPC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5jcmVhdGU8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVGYWN0b3J5SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVDbGFzczwvQ09ERT4gLSB0aGUgZSBjbGFzcworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgZSBvYmplY3Q8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuT2JqZWN0IDxCPmNyZWF0ZUZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+Y3JlYXRlRnJvbVN0cmluZzwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeTwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+Y3JlYXRlRnJvbVN0cmluZzwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG9iamVjdDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0VG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5jb252ZXJ0VG9TdHJpbmc8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3Rvcnk8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmNvbnZlcnRUb1N0cmluZzwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVSZWdpb25PZkludGVyZXN0RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlUmVnaW9uT2ZJbnRlcmVzdEZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZVJlZ2lvbk9mSW50ZXJlc3RGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydFJlZ2lvbk9mSW50ZXJlc3RUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydFJlZ2lvbk9mSW50ZXJlc3RUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydFJlZ2lvbk9mSW50ZXJlc3RUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlUmFuZ2VGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVSYW5nZUZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZVJhbmdlRnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0UmFuZ2VUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydFJhbmdlVG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRSYW5nZVRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlQ2FtZXJhSW5mb0Zyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUNhbWVyYUluZm9Gcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVDYW1lcmFJbmZvRnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRDYW1lcmFJbmZvVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRDYW1lcmFJbmZvVG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRDYW1lcmFJbmZvVG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUltdUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUltdUZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZUltdUZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRJbXVUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydEltdVRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0SW11VG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlTGFzZXJTY2FuRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlTGFzZXJTY2FuRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlTGFzZXJTY2FuRnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydExhc2VyU2NhblRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0TGFzZXJTY2FuVG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRMYXNlclNjYW5Ub1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVJbWFnZUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUltYWdlRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlSW1hZ2VGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRJbWFnZVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0SW1hZ2VUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydEltYWdlVG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVDaGFubmVsRmxvYXQzMkZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUNoYW5uZWxGbG9hdDMyRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlQ2hhbm5lbEZsb2F0MzJGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRDaGFubmVsRmxvYXQzMlRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0Q2hhbm5lbEZsb2F0MzJUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydENoYW5uZWxGbG9hdDMyVG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVDb21wcmVzc2VkSW1hZ2VGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVDb21wcmVzc2VkSW1hZ2VGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVDb21wcmVzc2VkSW1hZ2VGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0Q29tcHJlc3NlZEltYWdlVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRDb21wcmVzc2VkSW1hZ2VUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydENvbXByZXNzZWRJbWFnZVRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVBvaW50Q2xvdWRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVQb2ludENsb3VkRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlUG9pbnRDbG91ZEZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0UG9pbnRDbG91ZFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0UG9pbnRDbG91ZFRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0UG9pbnRDbG91ZFRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVQb2ludEZpZWxkRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlUG9pbnRGaWVsZEZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZVBvaW50RmllbGRGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydFBvaW50RmllbGRUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydFBvaW50RmllbGRUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydFBvaW50RmllbGRUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlUG9pbnRDbG91ZDJGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVQb2ludENsb3VkMkZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZVBvaW50Q2xvdWQyRnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0UG9pbnRDbG91ZDJUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydFBvaW50Q2xvdWQyVG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRQb2ludENsb3VkMlRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlSm9pbnRTdGF0ZUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUpvaW50U3RhdGVGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVKb2ludFN0YXRlRnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRKb2ludFN0YXRlVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRKb2ludFN0YXRlVG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRKb2ludFN0YXRlVG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZU5hdlNhdFN0YXR1c0Zyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZU5hdlNhdFN0YXR1c0Zyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZU5hdlNhdFN0YXR1c0Zyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnROYXZTYXRTdGF0dXNUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydE5hdlNhdFN0YXR1c1RvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0TmF2U2F0U3RhdHVzVG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlTmF2U2F0Rml4RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlTmF2U2F0Rml4RnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlTmF2U2F0Rml4RnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydE5hdlNhdEZpeFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0TmF2U2F0Rml4VG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnROYXZTYXRGaXhUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVKb3lGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVKb3lGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVKb3lGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0Sm95VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRKb3lUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydEpveVRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUpveUZlZWRiYWNrRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlSm95RmVlZGJhY2tGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVKb3lGZWVkYmFja0Zyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydEpveUZlZWRiYWNrVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRKb3lGZWVkYmFja1RvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0Sm95RmVlZGJhY2tUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUpveUZlZWRiYWNrQXJyYXlGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVKb3lGZWVkYmFja0FycmF5RnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlSm95RmVlZGJhY2tBcnJheUZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0Sm95RmVlZGJhY2tBcnJheVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0Sm95RmVlZGJhY2tBcnJheVRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0Sm95RmVlZGJhY2tBcnJheVRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTZW5zb3JfZGF0YXR5cGVzUGFja2FnZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPiA8Qj5nZXRTZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwjZ2V0U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UoKSI+Z2V0U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc2Vuc29yX2RhdGF0eXBlcyBwYWNrYWdlPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRQYWNrYWdlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBhY2thZ2U8L0gzPgorPFBSRT4KKzxGT05UIFNJWkU9Ii0xIj5ARGVwcmVjYXRlZAorPC9GT05UPnB1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+IDxCPmdldFBhY2thZ2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST48L0k+Cis8UD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcGFja2FnZTwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWIENMQVNTJm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX3N1bW1hcnkiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9kZXRhaWwiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFjYWIxZjUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwKQEAgLTAsMCArMSw5ODggQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyOSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsIGNsYXNzIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJTZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDtORVhUIENMQVNTPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGw8L0ZPTlQ+Cis8QlI+CitDbGFzcyBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGw8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsCisgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbAorICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lcgorICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVNb2RlbEVsZW1lbnRJbXBsCisgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOYW1lZEVsZW1lbnRJbXBsCisgICAgICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FUGFja2FnZUltcGwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQj4KKzwvUFJFPgorPERMPgorPERUPjxCPkFsbCBJbXBsZW1lbnRlZCBJbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVOYW1lZEVsZW1lbnQsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FU3RydWN0dXJhbEZlYXR1cmUuSW50ZXJuYWwuRHluYW1pY1ZhbHVlSG9sZGVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5CYXNpY0V4dGVuZGVkTWV0YURhdGEuRVBhY2thZ2VFeHRlbmRlZE1ldGFEYXRhLkhvbGRlciwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9CPjxEVD5leHRlbmRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVQYWNrYWdlSW1wbDxEVD5pbXBsZW1lbnRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCA8Yj5QYWNrYWdlPC9iPi4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09IE5FU1RFRCBDTEFTUyBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk5lc3RlZCBDbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lci5EeW5hbWljPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRUFkYXB0ZXJMaXN0Jmx0O0UgZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0ICYgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciZndDssIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRU9ic2VydmFibGVBZGFwdGVyTGlzdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlLkRlc2NyaXB0b3IsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZS5SZWdpc3RyeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdC5FU3RvcmU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjQ0FNRVJBX0lORk8iPkNBTUVSQV9JTkZPPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNDSEFOTkVMX0ZMT0FUMzIiPkNIQU5ORUxfRkxPQVQzMjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjQ09NUFJFU1NFRF9JTUFHRSI+Q09NUFJFU1NFRF9JTUFHRTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZUlOU1RBTkNFIj5lSU5TVEFOQ0U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VOQU1FIj5lTkFNRTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1BSRUZJWCI+ZU5TX1BSRUZJWDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1VSSSI+ZU5TX1VSSTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjSU1BR0UiPklNQUdFPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNJTVUiPklNVTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjSk9JTlRfU1RBVEUiPkpPSU5UX1NUQVRFPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNKT1kiPkpPWTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjSk9ZX0ZFRURCQUNLIj5KT1lfRkVFREJBQ0s8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI0pPWV9GRUVEQkFDS19BUlJBWSI+Sk9ZX0ZFRURCQUNLX0FSUkFZPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNMQVNFUl9TQ0FOIj5MQVNFUl9TQ0FOPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNOQVZfU0FUX0ZJWCI+TkFWX1NBVF9GSVg8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI05BVl9TQVRfU1RBVFVTIj5OQVZfU0FUX1NUQVRVUzwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjUE9JTlRfQ0xPVUQiPlBPSU5UX0NMT1VEPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNQT0lOVF9DTE9VRDIiPlBPSU5UX0NMT1VEMjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjUE9JTlRfRklFTEQiPlBPSU5UX0ZJRUxEPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNSQU5HRSI+UkFOR0U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI1JFR0lPTl9PRl9JTlRFUkVTVCI+UkVHSU9OX09GX0lOVEVSRVNUPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVTdHJ1Y3R1cmFsRmVhdHVyZS5JbnRlcm5hbC5EeW5hbWljVmFsdWVIb2xkZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FU3RydWN0dXJhbEZlYXR1cmUuSW50ZXJuYWwuRHluYW1pY1ZhbHVlSG9sZGVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+TklMPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RU9QUE9TSVRFX0ZFQVRVUkVfQkFTRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNjcmVhdGVQYWNrYWdlQ29udGVudHMoKSI+Y3JlYXRlUGFja2FnZUNvbnRlbnRzPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyB0aGUgbWV0YS1tb2RlbCBvYmplY3RzIGZvciB0aGUgcGFja2FnZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldENhbWVyYUluZm8oKSI+Z2V0Q2FtZXJhSW5mbzwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldENoYW5uZWxGbG9hdDMyKCkiPmdldENoYW5uZWxGbG9hdDMyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0Q29tcHJlc3NlZEltYWdlKCkiPmdldENvbXByZXNzZWRJbWFnZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEltYWdlKCkiPmdldEltYWdlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0SW11KCkiPmdldEltdTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEpvaW50U3RhdGUoKSI+Z2V0Sm9pbnRTdGF0ZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEpveSgpIj5nZXRKb3k8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRKb3lGZWVkYmFjaygpIj5nZXRKb3lGZWVkYmFjazwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEpveUZlZWRiYWNrQXJyYXkoKSI+Z2V0Sm95RmVlZGJhY2tBcnJheTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldExhc2VyU2NhbigpIj5nZXRMYXNlclNjYW48L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXROYXZTYXRGaXgoKSI+Z2V0TmF2U2F0Rml4PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0TmF2U2F0U3RhdHVzKCkiPmdldE5hdlNhdFN0YXR1czwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFBvaW50Q2xvdWQoKSI+Z2V0UG9pbnRDbG91ZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFBvaW50Q2xvdWQyKCkiPmdldFBvaW50Q2xvdWQyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0UG9pbnRGaWVsZCgpIj5nZXRQb2ludEZpZWxkPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0UmFuZ2UoKSI+Z2V0UmFuZ2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRSZWdpb25PZkludGVyZXN0KCkiPmdldFJlZ2lvbk9mSW50ZXJlc3Q8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5KCkiPmdldFNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNpbml0KCkiPmluaXQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzLCByZWdpc3RlcnMsIGFuZCBpbml0aWFsaXplcyB0aGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoaXMgbW9kZWwsIGFuZCBmb3IgYW55IG90aGVycyB1cG9uIHdoaWNoIGl0IGRlcGVuZHMuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNpbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCkiPmluaXRpYWxpemVQYWNrYWdlQ29udGVudHM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDb21wbGV0ZSB0aGUgaW5pdGlhbGl6YXRpb24gb2YgdGhlIHBhY2thZ2UgYW5kIGl0cyBtZXRhLW1vZGVsLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRVBhY2thZ2VJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FUGFja2FnZUltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5iYXNpY0dldEVTdXBlclBhY2thZ2UsIGJhc2ljU2V0RUZhY3RvcnlJbnN0YW5jZSwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lckZlYXR1cmUsIGVHZXQsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZVJlbW92ZSwgZUludm9rZSwgZUlzU2V0LCBlT2JqZWN0Rm9yVVJJRnJhZ21lbnRTZWdtZW50LCBlU2V0LCBlU2V0UHJveHlVUkksIGVVbnNldCwgZnJlZXplLCBnZXRFQ2xhc3NpZmllciwgZ2V0RUNsYXNzaWZpZXJHZW4sIGdldEVDbGFzc2lmaWVycywgZ2V0RUZhY3RvcnlJbnN0YW5jZSwgZ2V0RVN1YnBhY2thZ2VzLCBnZXRFU3VwZXJQYWNrYWdlLCBnZXRFeHRlbmRlZE1ldGFEYXRhLCBnZXROc1ByZWZpeCwgZ2V0TnNVUkksIHNldEVGYWN0b3J5SW5zdGFuY2UsIHNldEV4dGVuZGVkTWV0YURhdGEsIHNldE5hbWVzcGFjZVVSSSwgc2V0TnNQcmVmaXgsIHNldE5zVVJJLCB0b1N0cmluZzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOYW1lZEVsZW1lbnRJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTmFtZWRFbGVtZW50SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZ2V0TmFtZSwgZ2V0TmFtZUdlbiwgc2V0TmFtZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVNb2RlbEVsZW1lbnRJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTW9kZWxFbGVtZW50SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVVUklGcmFnbWVudFNlZ21lbnQsIGdldEVBbm5vdGF0aW9uLCBnZXRFQW5ub3RhdGlvbnM8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUludGVybmFsQ29udGFpbmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5keW5hbWljR2V0LCBkeW5hbWljU2V0LCBkeW5hbWljVW5zZXQsIGVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZURpcmVjdFJlc291cmNlLCBlSXNQcm94eSwgZVByb3h5VVJJLCBlU2V0Q2xhc3MsIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNTZXRDb250YWluZXIsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRhaW5zLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZUR5bmFtaWNCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVEeW5hbWljR2V0LCBlRHluYW1pY0dldCwgZUR5bmFtaWNJbnZlcnNlQWRkLCBlRHluYW1pY0ludmVyc2VSZW1vdmUsIGVEeW5hbWljSW52b2tlLCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljVW5zZXQsIGVEeW5hbWljVW5zZXQsIGVHZXQsIGVHZXQsIGVHZXQsIGVJbnRlcm5hbFJlc291cmNlLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZU9wZW5HZXQsIGVPcGVuSXNTZXQsIGVPcGVuU2V0LCBlT3BlblVuc2V0LCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkLCBlTm90aWZ5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVxdWFscywgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZTwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmdldEVDbGFzc2lmaWVyLCBnZXRFQ2xhc3NpZmllcnMsIGdldEVGYWN0b3J5SW5zdGFuY2UsIGdldEVTdWJwYWNrYWdlcywgZ2V0RVN1cGVyUGFja2FnZSwgZ2V0TnNQcmVmaXgsIGdldE5zVVJJLCBzZXRFRmFjdG9yeUluc3RhbmNlLCBzZXROc1ByZWZpeCwgc2V0TnNVUkk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU5hbWVkRWxlbWVudCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTmFtZWRFbGVtZW50PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0TmFtZSwgc2V0TmFtZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQ8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXRFQW5ub3RhdGlvbiwgZ2V0RUFubm90YXRpb25zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImluaXQoKSI+PCEtLSAtLT48L0E+PEgzPgoraW5pdDwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT4gPEI+aW5pdDwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMsIHJlZ2lzdGVycywgYW5kIGluaXRpYWxpemVzIHRoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhpcyBtb2RlbCwgYW5kIGZvciBhbnkgb3RoZXJzIHVwb24gd2hpY2ggaXQgZGVwZW5kcy4KKyAKKyA8cD5UaGlzIG1ldGhvZCBpcyB1c2VkIHRvIGluaXRpYWxpemUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlSU5TVEFOQ0UiPjxDT0RFPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRTwvQ09ERT48L0E+IHdoZW4gdGhhdCBmaWVsZCBpcyBhY2Nlc3NlZC4KKyBDbGllbnRzIHNob3VsZCBub3QgaW52b2tlIGl0IGRpcmVjdGx5LiBJbnN0ZWFkLCB0aGV5IHNob3VsZCBzaW1wbHkgYWNjZXNzIHRoYXQgZmllbGQgdG8gb2J0YWluIHRoZSBwYWNrYWdlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VOU19VUkkiPjxDT0RFPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2NyZWF0ZVBhY2thZ2VDb250ZW50cygpIj48Q09ERT5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpIj48Q09ERT5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UmVnaW9uT2ZJbnRlcmVzdCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRSZWdpb25PZkludGVyZXN0PC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRSZWdpb25PZkludGVyZXN0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRSZWdpb25PZkludGVyZXN0KCkiPmdldFJlZ2lvbk9mSW50ZXJlc3Q8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcmVnaW9uIG9mIGludGVyZXN0PERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UmFuZ2UoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UmFuZ2U8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFJhbmdlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRSYW5nZSgpIj5nZXRSYW5nZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSByYW5nZTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldENhbWVyYUluZm8oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Q2FtZXJhSW5mbzwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0Q2FtZXJhSW5mbzwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0Q2FtZXJhSW5mbygpIj5nZXRDYW1lcmFJbmZvPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGNhbWVyYSBpbmZvPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0SW11KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEltdTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0SW11PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRJbXUoKSI+Z2V0SW11PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGltdTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldExhc2VyU2NhbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRMYXNlclNjYW48L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldExhc2VyU2NhbjwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0TGFzZXJTY2FuKCkiPmdldExhc2VyU2NhbjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBsYXNlciBzY2FuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0SW1hZ2UoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0SW1hZ2U8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldEltYWdlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRJbWFnZSgpIj5nZXRJbWFnZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBpbWFnZTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldENoYW5uZWxGbG9hdDMyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldENoYW5uZWxGbG9hdDMyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRDaGFubmVsRmxvYXQzMjwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0Q2hhbm5lbEZsb2F0MzIoKSI+Z2V0Q2hhbm5lbEZsb2F0MzI8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgY2hhbm5lbCBmbG9hdDMyPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Q29tcHJlc3NlZEltYWdlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldENvbXByZXNzZWRJbWFnZTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0Q29tcHJlc3NlZEltYWdlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRDb21wcmVzc2VkSW1hZ2UoKSI+Z2V0Q29tcHJlc3NlZEltYWdlPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGNvbXByZXNzZWQgaW1hZ2U8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRQb2ludENsb3VkKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBvaW50Q2xvdWQ8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFBvaW50Q2xvdWQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFBvaW50Q2xvdWQoKSI+Z2V0UG9pbnRDbG91ZDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBwb2ludCBjbG91ZDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBvaW50RmllbGQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UG9pbnRGaWVsZDwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0UG9pbnRGaWVsZDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0UG9pbnRGaWVsZCgpIj5nZXRQb2ludEZpZWxkPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHBvaW50IGZpZWxkPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UG9pbnRDbG91ZDIoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UG9pbnRDbG91ZDI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFBvaW50Q2xvdWQyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRQb2ludENsb3VkMigpIj5nZXRQb2ludENsb3VkMjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBwb2ludCBjbG91ZDI8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRKb2ludFN0YXRlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEpvaW50U3RhdGU8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldEpvaW50U3RhdGU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEpvaW50U3RhdGUoKSI+Z2V0Sm9pbnRTdGF0ZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBqb2ludCBzdGF0ZTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldE5hdlNhdFN0YXR1cygpIj48IS0tIC0tPjwvQT48SDM+CitnZXROYXZTYXRTdGF0dXM8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldE5hdlNhdFN0YXR1czwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0TmF2U2F0U3RhdHVzKCkiPmdldE5hdlNhdFN0YXR1czwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBuYXYgc2F0IHN0YXR1czxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldE5hdlNhdEZpeCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXROYXZTYXRGaXg8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldE5hdlNhdEZpeDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0TmF2U2F0Rml4KCkiPmdldE5hdlNhdEZpeDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBuYXYgc2F0IGZpeDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEpveSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRKb3k8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldEpveTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0Sm95KCkiPmdldEpveTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBqb3k8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRKb3lGZWVkYmFjaygpIj48IS0tIC0tPjwvQT48SDM+CitnZXRKb3lGZWVkYmFjazwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0Sm95RmVlZGJhY2s8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEpveUZlZWRiYWNrKCkiPmdldEpveUZlZWRiYWNrPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGpveSBmZWVkYmFjazxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEpveUZlZWRiYWNrQXJyYXkoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Sm95RmVlZGJhY2tBcnJheTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0Sm95RmVlZGJhY2tBcnJheTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0Sm95RmVlZGJhY2tBcnJheSgpIj5nZXRKb3lGZWVkYmFja0FycmF5PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGpveSBmZWVkYmFjayBhcnJheTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5PC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+IDxCPmdldFNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRTZW5zb3JfZGF0YXR5cGVzRmFjdG9yeSgpIj5nZXRTZW5zb3JfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzZW5zb3JfZGF0YXR5cGVzIGZhY3Rvcnk8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVBhY2thZ2VDb250ZW50cygpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVQYWNrYWdlQ29udGVudHM8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmNyZWF0ZVBhY2thZ2VDb250ZW50czwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgdGhlIG1ldGEtbW9kZWwgb2JqZWN0cyBmb3IgdGhlIHBhY2thZ2UuICBUaGlzIG1ldGhvZCBpcworIGd1YXJkZWQgdG8gaGF2ZSBubyBhZmZlY3Qgb24gYW55IGludm9jYXRpb24gYnV0IGl0cyBmaXJzdC4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJpbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2luaXRpYWxpemVQYWNrYWdlQ29udGVudHM8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmluaXRpYWxpemVQYWNrYWdlQ29udGVudHM8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5Db21wbGV0ZSB0aGUgaW5pdGlhbGl6YXRpb24gb2YgdGhlIHBhY2thZ2UgYW5kIGl0cyBtZXRhLW1vZGVsLiAgVGhpcworIG1ldGhvZCBpcyBndWFyZGVkIHRvIGhhdmUgbm8gYWZmZWN0IG9uIGFueSBpbnZvY2F0aW9uIGJ1dCBpdHMgZmlyc3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDtORVhUIENMQVNTPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL2NsYXNzLXVzZS9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9jbGFzcy11c2UvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmVjMDJiOAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9jbGFzcy11c2UvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwKQEAgLTAsMCArMSwxNDAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvY2xhc3MtdXNlL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9jbGFzcy11c2UvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvY2xhc3MtdXNlL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL2NsYXNzLXVzZS9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kZTNmOTMxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL2NsYXNzLXVzZS9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9jbGFzcy11c2UvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgQ2xhc3M8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL2NsYXNzLXVzZS9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLWZyYW1lLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1mcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmViMDBjZjQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1mcmFtZS5odG1sCkBAIC0wLDAgKzEsMzQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIHBhY2thZ2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSI+Cis8Rk9OVCBzaXplPSIrMSIgQ0xBU1M9IkZyYW1lVGl0bGVGb250Ij4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiIHRhcmdldD0iY2xhc3NGcmFtZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbDwvQT48L0ZPTlQ+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBOT1dSQVA+PEZPTlQgc2l6ZT0iKzEiIENMQVNTPSJGcmFtZUhlYWRpbmdGb250Ij4KK0NsYXNzZXM8L0ZPTlQ+Jm5ic3A7Cis8Rk9OVCBDTEFTUz0iRnJhbWVJdGVtRm9udCI+Cis8QlI+Cis8QSBIUkVGPSJTZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0iU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorCisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MjY3NGE4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sCkBAIC0wLDAgKzEsMTU4IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCBwYWNrYWdlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5QYWNrYWdlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5QUkVWIFBBQ0tBR0U8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPk5FWFQgUEFDS0FHRTwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPEgyPgorUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsCis8L0gyPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT48L0I+PC9URD4KKzxURD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgPGI+RmFjdG9yeTwvYj48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPlBhY2thZ2U8L2I+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7CisKKzxQPgorPERMPgorPC9ETD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlBhY2thZ2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPlBSRVYgUEFDS0FHRTwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+TkVYVCBQQUNLQUdFPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41NDIyZmI1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdHJlZS5odG1sCkBAIC0wLDAgKzEsMTc0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIENsYXNzIEhpZXJhcmNoeQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwgQ2xhc3MgSGllcmFyY2h5IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5UcmVlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9wYWNrYWdlLXRyZWUuaHRtbCI+PEI+UFJFVjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9wYWNrYWdlLXRyZWUuaHRtbCI+PEI+TkVYVDwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS10cmVlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KK0hpZXJhcmNoeSBGb3IgUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsCis8L0gyPgorPC9DRU5URVI+Cis8REw+Cis8RFQ+PEI+UGFja2FnZSBIaWVyYXJjaGllczo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+QWxsIFBhY2thZ2VzPC9BPjwvREw+Cis8SFI+Cis8SDI+CitDbGFzcyBIaWVyYXJjaHkKKzwvSDI+Cis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5qYXZhLmxhbmcuT2JqZWN0PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcikKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FU3RydWN0dXJhbEZlYXR1cmUuSW50ZXJuYWwuRHluYW1pY1ZhbHVlSG9sZGVyKQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lcjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVNb2RlbEVsZW1lbnRJbXBsIChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50KQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsIChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeSkKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPjxCPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5PC9BPikKKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTmFtZWRFbGVtZW50SW1wbCAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU5hbWVkRWxlbWVudCkKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVQYWNrYWdlSW1wbCAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5CYXNpY0V4dGVuZGVkTWV0YURhdGEuRVBhY2thZ2VFeHRlbmRlZE1ldGFEYXRhLkhvbGRlciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlKQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+PEI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0E+KQorPC9VTD4KKzwvVUw+Cis8L1VMPgorPC9VTD4KKzwvVUw+Cis8L1VMPgorPC9VTD4KKzwvVUw+Cis8L1VMPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VHJlZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvcGFja2FnZS10cmVlLmh0bWwiPjxCPlBSRVY8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvcGFja2FnZS10cmVlLmh0bWwiPjxCPk5FWFQ8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdXNlLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS11c2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kZGEzMThkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdXNlLmh0bWwKQEAgLTAsMCArMSwxNDAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBQYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgUGFja2FnZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvcGFja2FnZS1mcmFtZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9wYWNrYWdlLWZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2YxYTNmMQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvcGFja2FnZS1mcmFtZS5odG1sCkBAIC0wLDAgKzEsMzYgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMgcGFja2FnZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIj4KKzxGT05UIHNpemU9IisxIiBDTEFTUz0iRnJhbWVUaXRsZUZvbnQiPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiIHRhcmdldD0iY2xhc3NGcmFtZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXM8L0E+PC9GT05UPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgTk9XUkFQPjxGT05UIHNpemU9IisxIiBDTEFTUz0iRnJhbWVIZWFkaW5nRm9udCI+CitJbnRlcmZhY2VzPC9GT05UPiZuYnNwOworPEZPTlQgQ0xBU1M9IkZyYW1lSXRlbUZvbnQiPgorPEJSPgorPEEgSFJFRj0iU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9IlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0k+PC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+CisKKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGFkYTA1YwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwKQEAgLTAsMCArMSwxNjkgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMgcGFja2FnZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlBhY2thZ2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+UFJFViBQQUNLQUdFPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPk5FWFQgUEFDS0FHRTwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxIMj4KK1BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMKKzwvSDI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+SW50ZXJmYWNlIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9CPjwvVEQ+Cis8VEQ+VGhlIDxiPkZhY3Rvcnk8L2I+IGZvciB0aGUgbW9kZWwuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT48L0I+PC9URD4KKzxURD5UaGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoZSBtb2RlbC48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9BPjwvQj48L1REPgorPFREPkRlZmluZXMgbGl0ZXJhbHMgZm9yIHRoZSBtZXRhIG9iamVjdHMgdGhhdCByZXByZXNlbnQKKyAKKyBlYWNoIGNsYXNzLAorIGVhY2ggZmVhdHVyZSBvZiBlYWNoIGNsYXNzLAorIGVhY2ggZW51bSwKKyBhbmQgZWFjaCBkYXRhIHR5cGUKKyAKKyA8ITwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworCis8UD4KKzxETD4KKzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5QYWNrYWdlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPlBSRVYgUEFDS0FHRTwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5ORVhUIFBBQ0tBR0U8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvcGFja2FnZS10cmVlLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL3BhY2thZ2UtdHJlZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjllYjBiNzUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL3BhY2thZ2UtdHJlZS5odG1sCkBAIC0wLDAgKzEsMTU5IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyBDbGFzcyBIaWVyYXJjaHkKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyBDbGFzcyBIaWVyYXJjaHkiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlRyZWU8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS10cmVlLmh0bWwiPjxCPlBSRVY8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbCI+PEI+TkVYVDwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL3BhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+CitIaWVyYXJjaHkgRm9yIFBhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMKKzwvSDI+Cis8L0NFTlRFUj4KKzxETD4KKzxEVD48Qj5QYWNrYWdlIEhpZXJhcmNoaWVzOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctdHJlZS5odG1sIj5BbGwgUGFja2FnZXM8L0E+PC9ETD4KKzxIUj4KKzxIMj4KK0ludGVyZmFjZSBIaWVyYXJjaHkKKzwvSDI+Cis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQ8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3Rvcnk8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj48Qj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTmFtZWRFbGVtZW50PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+PEI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjwvVUw+Cis8L1VMPgorPC9VTD4KKzwvVUw+Cis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+PEI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0I+PC9BPjwvVUw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5UcmVlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdHJlZS5odG1sIj48Qj5QUkVWPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS10cmVlLmh0bWwiPjxCPk5FWFQ8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9wYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvcGFja2FnZS11c2UuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvcGFja2FnZS11c2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jOGVlNWNkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9wYWNrYWdlLXVzZS5odG1sCkBAIC0wLDAgKzEsMTk3IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIFBhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIFBhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvcGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIFBhY2thZ2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXM8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlczwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorQ2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXM8L0E+IHVzZWQgYnkgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2NsYXNzLXVzZS9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj48Qj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgPGI+RmFjdG9yeTwvYj4gZm9yIHRoZSBtb2RlbC48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2NsYXNzLXVzZS9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj48Qj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoZSBtb2RlbC48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK0NsYXNzZXMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzPC9BPiB1c2VkIGJ5IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvY2xhc3MtdXNlL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+PEI+U2Vuc29yX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIDxiPkZhY3Rvcnk8L2I+IGZvciB0aGUgbW9kZWwuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9jbGFzcy11c2UvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj48Qj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoZSBtb2RlbC48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9wYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2JiNjVhZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbApAQCAtMCwwICsxLDMwMiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI5IENFVCAyMDEyIC0tPgorPFRJVExFPgorU3RkX2RhdGF0eXBlc0ZhY3RvcnkKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzRmFjdG9yeSBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlN0ZF9kYXRhdHlwZXNGYWN0b3J5IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWIENMQVNTJm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTdGRfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXM8L0ZPTlQ+Cis8QlI+CitJbnRlcmZhY2UgU3RkX2RhdGF0eXBlc0ZhY3Rvcnk8L0gyPgorPERMPgorPERUPjxCPkFsbCBTdXBlcmludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIEltcGxlbWVudGluZyBDbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPlN0ZF9kYXRhdHlwZXNGYWN0b3J5PC9CPjxEVD5leHRlbmRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeTwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoZSA8Yj5GYWN0b3J5PC9iPiBmb3IgdGhlIG1vZGVsLgorIEl0IHByb3ZpZGVzIGEgY3JlYXRlIG1ldGhvZCBmb3IgZWFjaCBub24tYWJzdHJhY3QgY2xhc3Mgb2YgdGhlIG1vZGVsLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+PENPREU+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0NPREU+PC9BPjwvREw+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzRmFjdG9yeS5odG1sI2VJTlNUQU5DRSI+ZUlOU1RBTkNFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIGZhY3Rvcnk8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzRmFjdG9yeS5odG1sI2dldFN0ZF9kYXRhdHlwZXNQYWNrYWdlKCkiPmdldFN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcGFja2FnZSBzdXBwb3J0ZWQgYnkgdGhpcyBmYWN0b3J5PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3RvcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3Rvcnk8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5jb252ZXJ0VG9TdHJpbmcsIGNyZWF0ZSwgY3JlYXRlRnJvbVN0cmluZywgZ2V0RVBhY2thZ2UsIHNldEVQYWNrYWdlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmdldEVBbm5vdGF0aW9uLCBnZXRFQW5ub3RhdGlvbnM8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBGSUVMRCBERVRBSUwgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJlSU5TVEFOQ0UiPjwhLS0gLS0+PC9BPjxIMz4KK2VJTlNUQU5DRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5PC9BPiA8Qj5lSU5TVEFOQ0U8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiB0aGUgZmFjdG9yeS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJnZXRTdGRfZGF0YXR5cGVzUGFja2FnZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTdGRfZGF0YXR5cGVzUGFja2FnZTwvSDM+Cis8UFJFPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+IDxCPmdldFN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgcGFja2FnZSBzdXBwb3J0ZWQgYnkgdGhpcyBmYWN0b3J5LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHBhY2thZ2Ugc3VwcG9ydGVkIGJ5IHRoaXMgZmFjdG9yeS48L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWIENMQVNTJm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTdGRfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmFkZGU1YQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbApAQCAtMCwwICsxLDkxMSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI5IENFVCAyMDEyIC0tPgorPFRJVExFPgorU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscyBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwO05FWFQgQ0xBU1M8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9IMj4KKzxETD4KKzxEVD48Qj5FbmNsb3NpbmcgaW50ZXJmYWNlOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgc3RhdGljIGludGVyZmFjZSA8Qj5TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQj48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBEZWZpbmVzIGxpdGVyYWxzIGZvciB0aGUgbWV0YSBvYmplY3RzIHRoYXQgcmVwcmVzZW50CisgPHVsPgorIDxsaT5lYWNoIGNsYXNzLDwvbGk+CisgPGxpPmVhY2ggZmVhdHVyZSBvZiBlYWNoIGNsYXNzLDwvbGk+CisgPGxpPmVhY2ggZW51bSw8L2xpPgorIDxsaT5hbmQgZWFjaCBkYXRhIHR5cGU8L2xpPgorIDwvdWw+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQk9PTCI+Qk9PTDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+Qm9vbDwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI0JZVEUiPkJZVEU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkJ5dGU8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNCWVRFX01VTFRJX0FSUkFZIj5CWVRFX01VTFRJX0FSUkFZPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5CeXRlIE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQ0hBUiI+Q0hBUjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+Q2hhcjwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI0NPTE9SX1JHQkEiPkNPTE9SX1JHQkE8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkNvbG9yIFJHQkE8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNEVVJBVElPTiI+RFVSQVRJT048L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkR1cmF0aW9uPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjRkxPQVQzMiI+RkxPQVQzMjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+RmxvYXQzMjwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI0ZMT0FUMzJfTVVMVElfQVJSQVkiPkZMT0FUMzJfTVVMVElfQVJSQVk8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkZsb2F0MzIgTXVsdGkgQXJyYXk8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNGTE9BVDY0Ij5GTE9BVDY0PC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5GbG9hdDY0PC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjRkxPQVQ2NF9NVUxUSV9BUlJBWSI+RkxPQVQ2NF9NVUxUSV9BUlJBWTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+RmxvYXQ2NCBNdWx0aSBBcnJheTwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI0hFQURFUiI+SEVBREVSPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5IZWFkZXI8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNJTlQxNiI+SU5UMTY8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkludDE2PC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjSU5UMTZfTVVMVElfQVJSQVkiPklOVDE2X01VTFRJX0FSUkFZPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5JbnQxNiBNdWx0aSBBcnJheTwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI0lOVDMyIj5JTlQzMjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+SW50MzI8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNJTlQzMl9NVUxUSV9BUlJBWSI+SU5UMzJfTVVMVElfQVJSQVk8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkludDMyIE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjSU5UNjQiPklOVDY0PC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5JbnQ2NDwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI0lOVDY0X01VTFRJX0FSUkFZIj5JTlQ2NF9NVUxUSV9BUlJBWTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+SW50NjQgTXVsdGkgQXJyYXk8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNJTlQ4Ij5JTlQ4PC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5JbnQ4PC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjSU5UOF9NVUxUSV9BUlJBWSI+SU5UOF9NVUxUSV9BUlJBWTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+SW50OCBNdWx0aSBBcnJheTwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI01VTFRJX0FSUkFZX0RJTUVOU0lPTiI+TVVMVElfQVJSQVlfRElNRU5TSU9OPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5NdWx0aSBBcnJheSBEaW1lbnNpb248L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNNVUxUSV9BUlJBWV9MQVlPVVQiPk1VTFRJX0FSUkFZX0xBWU9VVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+TXVsdGkgQXJyYXkgTGF5b3V0PC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjU1RSSU5HIj5TVFJJTkc8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlN0cmluZzwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1RJTUUiPlRJTUU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlRpbWU8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNVSUlOVDE2X01VTFRJX0FSUkFZIj5VSUlOVDE2X01VTFRJX0FSUkFZPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5VSWludDE2IE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjVUlOVDE2Ij5VSU5UMTY8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlVJbnQxNjwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1VJTlQzMiI+VUlOVDMyPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5VSW50MzI8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNVSU5UMzJfTVVMVElfQVJSQVkiPlVJTlQzMl9NVUxUSV9BUlJBWTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VUludDMyIE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjVUlOVDY0Ij5VSU5UNjQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlVJbnQ2NDwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sI1VJTlQ2NF9NVUxUSV9BUlJBWSI+VUlOVDY0X01VTFRJX0FSUkFZPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5VSW50NjQgTXVsdGkgQXJyYXk8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCNVSU5UOCI+VUlOVDg8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlVJbnQ4PC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwjVUlOVDhfTVVMVElfQVJSQVkiPlVJTlQ4X01VTFRJX0FSUkFZPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5VSW50OCBNdWx0aSBBcnJheTwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBGSUVMRCBERVRBSUwgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJVSU5UMzIiPjwhLS0gLS0+PC9BPjxIMz4KK1VJTlQzMjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+VUlOVDMyPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5VSW50MzI8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRVSW50MzIoKSI+PENPREU+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldFVJbnQzMigpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVElNRSI+PCEtLSAtLT48L0E+PEgzPgorVElNRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+VElNRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VGltZTwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFRpbWUoKSI+PENPREU+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldFRpbWUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNUUklORyI+PCEtLSAtLT48L0E+PEgzPgorU1RSSU5HPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5TVFJJTkc8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlN0cmluZzwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFN0cmluZygpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0U3RyaW5nKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJCWVRFIj48IS0tIC0tPjwvQT48SDM+CitCWVRFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5CWVRFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5CeXRlPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0Qnl0ZSgpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0Qnl0ZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iRkxPQVQ2NCI+PCEtLSAtLT48L0E+PEgzPgorRkxPQVQ2NDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+RkxPQVQ2NDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+RmxvYXQ2NDwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEZsb2F0NjQoKSI+PENPREU+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldEZsb2F0NjQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IklOVDgiPjwhLS0gLS0+PC9BPjxIMz4KK0lOVDg8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPklOVDg8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkludDg8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRJbnQ4KCkiPjxDT0RFPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRJbnQ4KCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJCT09MIj48IS0tIC0tPjwvQT48SDM+CitCT09MPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5CT09MPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5Cb29sPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0Qm9vbCgpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0Qm9vbCgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVUlOVDgiPjwhLS0gLS0+PC9BPjxIMz4KK1VJTlQ4PC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5VSU5UODwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VUludDg8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRVSW50OCgpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0VUludDgoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlVJTlQxNiI+PCEtLSAtLT48L0E+PEgzPgorVUlOVDE2PC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5VSU5UMTY8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlVJbnQxNjwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFVJbnQxNigpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0VUludDE2KCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJJTlQzMiI+PCEtLSAtLT48L0E+PEgzPgorSU5UMzI8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPklOVDMyPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5JbnQzMjwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEludDMyKCkiPjxDT0RFPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRJbnQzMigpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iSU5UMTYiPjwhLS0gLS0+PC9BPjxIMz4KK0lOVDE2PC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5JTlQxNjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+SW50MTY8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRJbnQxNigpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0SW50MTYoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkNIQVIiPjwhLS0gLS0+PC9BPjxIMz4KK0NIQVI8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPkNIQVI8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkNoYXI8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRDaGFyKCkiPjxDT0RFPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRDaGFyKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJEVVJBVElPTiI+PCEtLSAtLT48L0E+PEgzPgorRFVSQVRJT048L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPkRVUkFUSU9OPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5EdXJhdGlvbjwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldER1cmF0aW9uKCkiPjxDT0RFPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXREdXJhdGlvbigpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iSU5UNjQiPjwhLS0gLS0+PC9BPjxIMz4KK0lOVDY0PC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5JTlQ2NDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+SW50NjQ8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRJbnQ2NCgpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0SW50NjQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlVJTlQ2NCI+PCEtLSAtLT48L0E+PEgzPgorVUlOVDY0PC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5VSU5UNjQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlVJbnQ2NDwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFVJbnQ2NCgpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0VUludDY0KCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJGTE9BVDMyIj48IS0tIC0tPjwvQT48SDM+CitGTE9BVDMyPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5GTE9BVDMyPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5GbG9hdDMyPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0RmxvYXQzMigpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0RmxvYXQzMigpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iSEVBREVSIj48IS0tIC0tPjwvQT48SDM+CitIRUFERVI8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPkhFQURFUjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0SGVhZGVyKCkiPjxDT0RFPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRIZWFkZXIoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9Ik1VTFRJX0FSUkFZX0RJTUVOU0lPTiI+PCEtLSAtLT48L0E+PEgzPgorTVVMVElfQVJSQVlfRElNRU5TSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5NVUxUSV9BUlJBWV9ESU1FTlNJT048L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPk11bHRpIEFycmF5IERpbWVuc2lvbjwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldE11bHRpQXJyYXlEaW1lbnNpb24oKSI+PENPREU+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldE11bHRpQXJyYXlEaW1lbnNpb24oKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9Ik1VTFRJX0FSUkFZX0xBWU9VVCI+PCEtLSAtLT48L0E+PEgzPgorTVVMVElfQVJSQVlfTEFZT1VUPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5NVUxUSV9BUlJBWV9MQVlPVVQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPk11bHRpIEFycmF5IExheW91dDwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldE11bHRpQXJyYXlMYXlvdXQoKSI+PENPREU+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldE11bHRpQXJyYXlMYXlvdXQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkJZVEVfTVVMVElfQVJSQVkiPjwhLS0gLS0+PC9BPjxIMz4KK0JZVEVfTVVMVElfQVJSQVk8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPkJZVEVfTVVMVElfQVJSQVk8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkJ5dGUgTXVsdGkgQXJyYXk8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRCeXRlTXVsdGlBcnJheSgpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0Qnl0ZU11bHRpQXJyYXkoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkNPTE9SX1JHQkEiPjwhLS0gLS0+PC9BPjxIMz4KK0NPTE9SX1JHQkE8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPkNPTE9SX1JHQkE8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkNvbG9yIFJHQkE8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRDb2xvclJHQkEoKSI+PENPREU+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldENvbG9yUkdCQSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iRkxPQVQzMl9NVUxUSV9BUlJBWSI+PCEtLSAtLT48L0E+PEgzPgorRkxPQVQzMl9NVUxUSV9BUlJBWTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+RkxPQVQzMl9NVUxUSV9BUlJBWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+RmxvYXQzMiBNdWx0aSBBcnJheTwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEZsb2F0MzJNdWx0aUFycmF5KCkiPjxDT0RFPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRGbG9hdDMyTXVsdGlBcnJheSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iSU5UMzJfTVVMVElfQVJSQVkiPjwhLS0gLS0+PC9BPjxIMz4KK0lOVDMyX01VTFRJX0FSUkFZPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5JTlQzMl9NVUxUSV9BUlJBWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+SW50MzIgTXVsdGkgQXJyYXk8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRJbnQzMk11bHRpQXJyYXkoKSI+PENPREU+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldEludDMyTXVsdGlBcnJheSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iSU5UOF9NVUxUSV9BUlJBWSI+PCEtLSAtLT48L0E+PEgzPgorSU5UOF9NVUxUSV9BUlJBWTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+SU5UOF9NVUxUSV9BUlJBWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+SW50OCBNdWx0aSBBcnJheTwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEludDhNdWx0aUFycmF5KCkiPjxDT0RFPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRJbnQ4TXVsdGlBcnJheSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iSU5UMTZfTVVMVElfQVJSQVkiPjwhLS0gLS0+PC9BPjxIMz4KK0lOVDE2X01VTFRJX0FSUkFZPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5JTlQxNl9NVUxUSV9BUlJBWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+SW50MTYgTXVsdGkgQXJyYXk8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRJbnQxNk11bHRpQXJyYXkoKSI+PENPREU+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldEludDE2TXVsdGlBcnJheSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iSU5UNjRfTVVMVElfQVJSQVkiPjwhLS0gLS0+PC9BPjxIMz4KK0lOVDY0X01VTFRJX0FSUkFZPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5JTlQ2NF9NVUxUSV9BUlJBWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+SW50NjQgTXVsdGkgQXJyYXk8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRJbnQ2NE11bHRpQXJyYXkoKSI+PENPREU+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldEludDY0TXVsdGlBcnJheSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iRkxPQVQ2NF9NVUxUSV9BUlJBWSI+PCEtLSAtLT48L0E+PEgzPgorRkxPQVQ2NF9NVUxUSV9BUlJBWTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+RkxPQVQ2NF9NVUxUSV9BUlJBWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+RmxvYXQ2NCBNdWx0aSBBcnJheTwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEZsb2F0NjRNdWx0aUFycmF5KCkiPjxDT0RFPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRGbG9hdDY0TXVsdGlBcnJheSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVUlOVDY0X01VTFRJX0FSUkFZIj48IS0tIC0tPjwvQT48SDM+CitVSU5UNjRfTVVMVElfQVJSQVk8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPlVJTlQ2NF9NVUxUSV9BUlJBWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VUludDY0IE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0VUludDY0TXVsdGlBcnJheSgpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0VUludDY0TXVsdGlBcnJheSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVUlJTlQxNl9NVUxUSV9BUlJBWSI+PCEtLSAtLT48L0E+PEgzPgorVUlJTlQxNl9NVUxUSV9BUlJBWTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+VUlJTlQxNl9NVUxUSV9BUlJBWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VUlpbnQxNiBNdWx0aSBBcnJheTwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFVJaW50MTZNdWx0aUFycmF5KCkiPjxDT0RFPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRVSWludDE2TXVsdGlBcnJheSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVUlOVDMyX01VTFRJX0FSUkFZIj48IS0tIC0tPjwvQT48SDM+CitVSU5UMzJfTVVMVElfQVJSQVk8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPlVJTlQzMl9NVUxUSV9BUlJBWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VUludDMyIE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0VUludDMyTXVsdGlBcnJheSgpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0VUludDMyTXVsdGlBcnJheSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVUlOVDhfTVVMVElfQVJSQVkiPjwhLS0gLS0+PC9BPjxIMz4KK1VJTlQ4X01VTFRJX0FSUkFZPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5VSU5UOF9NVUxUSV9BUlJBWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VUludDggTXVsdGkgQXJyYXk8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRVSW50OE11bHRpQXJyYXkoKSI+PENPREU+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldFVJbnQ4TXVsdGlBcnJheSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7TkVYVCBDTEFTUzwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2I4YzhiOQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbApAQCAtMCwwICsxLDE5OTggQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyOSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1N0ZF9kYXRhdHlwZXNQYWNrYWdlCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UgaW50ZXJmYWNlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJTdGRfZGF0YXR5cGVzUGFja2FnZSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXM8L0ZPTlQ+Cis8QlI+CitJbnRlcmZhY2UgU3RkX2RhdGF0eXBlc1BhY2thZ2U8L0gyPgorPERMPgorPERUPjxCPkFsbCBTdXBlcmludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTmFtZWRFbGVtZW50LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlLCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBJbXBsZW1lbnRpbmcgQ2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQj48RFQ+ZXh0ZW5kcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U8L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoZSBtb2RlbC4KKyBJdCBjb250YWlucyBhY2Nlc3NvcnMgZm9yIHRoZSBtZXRhIG9iamVjdHMgdG8gcmVwcmVzZW50CisgPHVsPgorICAgPGxpPmVhY2ggY2xhc3MsPC9saT4KKyAgIDxsaT5lYWNoIGZlYXR1cmUgb2YgZWFjaCBjbGFzcyw8L2xpPgorICAgPGxpPmVhY2ggZW51bSw8L2xpPgorICAgPGxpPmFuZCBlYWNoIGRhdGEgdHlwZTwvbGk+CisgPC91bD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPjxDT0RFPlN0ZF9kYXRhdHlwZXNGYWN0b3J5PC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7RGVmaW5lcyBsaXRlcmFscyBmb3IgdGhlIG1ldGEgb2JqZWN0cyB0aGF0IHJlcHJlc2VudAorIAorIGVhY2ggY2xhc3MsCisgZWFjaCBmZWF0dXJlIG9mIGVhY2ggY2xhc3MsCisgZWFjaCBlbnVtLAorIGFuZCBlYWNoIGRhdGEgdHlwZQorIAorIDwhPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlLkRlc2NyaXB0b3IsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZS5SZWdpc3RyeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNCT09MIj5CT09MPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+Qm9vbDwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjQllURSI+QllURTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkJ5dGU8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0JZVEVfTVVMVElfQVJSQVkiPkJZVEVfTVVMVElfQVJSQVk8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5CeXRlIE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNDSEFSIj5DSEFSPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+Q2hhcjwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjQ09MT1JfUkdCQSI+Q09MT1JfUkdCQTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkNvbG9yIFJHQkE8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0RVUkFUSU9OIj5EVVJBVElPTjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkR1cmF0aW9uPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlSU5TVEFOQ0UiPmVJTlNUQU5DRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBwYWNrYWdlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTkFNRSI+ZU5BTUU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIHBhY2thZ2UgbmFtZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1BSRUZJWCI+ZU5TX1BSRUZJWDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgcGFja2FnZSBuYW1lc3BhY2UgbmFtZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1VSSSI+ZU5TX1VSSTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgcGFja2FnZSBuYW1lc3BhY2UgVVJJPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0ZMT0FUMzIiPkZMT0FUMzI8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5GbG9hdDMyPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNGTE9BVDMyX01VTFRJX0FSUkFZIj5GTE9BVDMyX01VTFRJX0FSUkFZPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+RmxvYXQzMiBNdWx0aSBBcnJheTwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjRkxPQVQ2NCI+RkxPQVQ2NDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkZsb2F0NjQ8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0ZMT0FUNjRfTVVMVElfQVJSQVkiPkZMT0FUNjRfTVVMVElfQVJSQVk8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5GbG9hdDY0IE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNIRUFERVIiPkhFQURFUjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjSU5UMTYiPklOVDE2PC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+SW50MTY8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0lOVDE2X01VTFRJX0FSUkFZIj5JTlQxNl9NVUxUSV9BUlJBWTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkludDE2IE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNJTlQzMiI+SU5UMzI8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5JbnQzMjwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjSU5UMzJfTVVMVElfQVJSQVkiPklOVDMyX01VTFRJX0FSUkFZPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+SW50MzIgTXVsdGkgQXJyYXk8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0lOVDY0Ij5JTlQ2NDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkludDY0PC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNJTlQ2NF9NVUxUSV9BUlJBWSI+SU5UNjRfTVVMVElfQVJSQVk8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5JbnQ2NCBNdWx0aSBBcnJheTwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjSU5UOCI+SU5UODwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkludDg8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0lOVDhfTVVMVElfQVJSQVkiPklOVDhfTVVMVElfQVJSQVk8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5JbnQ4IE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNNVUxUSV9BUlJBWV9ESU1FTlNJT04iPk1VTFRJX0FSUkFZX0RJTUVOU0lPTjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPk11bHRpIEFycmF5IERpbWVuc2lvbjwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjTVVMVElfQVJSQVlfTEFZT1VUIj5NVUxUSV9BUlJBWV9MQVlPVVQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5NdWx0aSBBcnJheSBMYXlvdXQ8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI1NUUklORyI+U1RSSU5HPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+U3RyaW5nPC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNUSU1FIj5USU1FPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+VGltZTwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjVUlJTlQxNl9NVUxUSV9BUlJBWSI+VUlJTlQxNl9NVUxUSV9BUlJBWTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlVJaW50MTYgTXVsdGkgQXJyYXk8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI1VJTlQxNiI+VUlOVDE2PC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+VUludDE2PC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNVSU5UMzIiPlVJTlQzMjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlVJbnQzMjwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjVUlOVDMyX01VTFRJX0FSUkFZIj5VSU5UMzJfTVVMVElfQVJSQVk8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5VSW50MzIgTXVsdGkgQXJyYXk8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI1VJTlQ2NCI+VUlOVDY0PC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+VUludDY0PC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNVSU5UNjRfTVVMVElfQVJSQVkiPlVJTlQ2NF9NVUxUSV9BUlJBWTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlVJbnQ2NCBNdWx0aSBBcnJheTwvZW0+JyBkYXRhIHR5cGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjVUlOVDgiPlVJTlQ4PC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+VUludDg8L2VtPicgZGF0YSB0eXBlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI1VJTlQ4X01VTFRJX0FSUkFZIj5VSU5UOF9NVUxUSV9BUlJBWTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlVJbnQ4IE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEJvb2woKSI+Z2V0Qm9vbDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Cb29sPC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0Qnl0ZSgpIj5nZXRCeXRlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkJ5dGU8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRCeXRlTXVsdGlBcnJheSgpIj5nZXRCeXRlTXVsdGlBcnJheTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5CeXRlIE11bHRpIEFycmF5PC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0Q2hhcigpIj5nZXRDaGFyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkNoYXI8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRDb2xvclJHQkEoKSI+Z2V0Q29sb3JSR0JBPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkNvbG9yIFJHQkE8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXREdXJhdGlvbigpIj5nZXREdXJhdGlvbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5EdXJhdGlvbjwvZW0+PC9DT0RFPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEZsb2F0MzIoKSI+Z2V0RmxvYXQzMjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5GbG9hdDMyPC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0RmxvYXQzMk11bHRpQXJyYXkoKSI+Z2V0RmxvYXQzMk11bHRpQXJyYXk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+RmxvYXQzMiBNdWx0aSBBcnJheTwvZW0+PC9DT0RFPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEZsb2F0NjQoKSI+Z2V0RmxvYXQ2NDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5GbG9hdDY0PC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0RmxvYXQ2NE11bHRpQXJyYXkoKSI+Z2V0RmxvYXQ2NE11bHRpQXJyYXk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+RmxvYXQ2NCBNdWx0aSBBcnJheTwvZW0+PC9DT0RFPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEhlYWRlcigpIj5nZXRIZWFkZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+SGVhZGVyPC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0SW50MTYoKSI+Z2V0SW50MTY8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+SW50MTY8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRJbnQxNk11bHRpQXJyYXkoKSI+Z2V0SW50MTZNdWx0aUFycmF5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkludDE2IE11bHRpIEFycmF5PC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0SW50MzIoKSI+Z2V0SW50MzI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+SW50MzI8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRJbnQzMk11bHRpQXJyYXkoKSI+Z2V0SW50MzJNdWx0aUFycmF5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkludDMyIE11bHRpIEFycmF5PC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0SW50NjQoKSI+Z2V0SW50NjQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+SW50NjQ8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRJbnQ2NE11bHRpQXJyYXkoKSI+Z2V0SW50NjRNdWx0aUFycmF5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkludDY0IE11bHRpIEFycmF5PC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0SW50OCgpIj5nZXRJbnQ4PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkludDg8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRJbnQ4TXVsdGlBcnJheSgpIj5nZXRJbnQ4TXVsdGlBcnJheTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5JbnQ4IE11bHRpIEFycmF5PC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0TXVsdGlBcnJheURpbWVuc2lvbigpIj5nZXRNdWx0aUFycmF5RGltZW5zaW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPk11bHRpIEFycmF5IERpbWVuc2lvbjwvZW0+PC9DT0RFPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldE11bHRpQXJyYXlMYXlvdXQoKSI+Z2V0TXVsdGlBcnJheUxheW91dDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5NdWx0aSBBcnJheSBMYXlvdXQ8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFN0ZF9kYXRhdHlwZXNGYWN0b3J5KCkiPmdldFN0ZF9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgZmFjdG9yeSB0aGF0IGNyZWF0ZXMgdGhlIGluc3RhbmNlcyBvZiB0aGUgbW9kZWw8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFN0cmluZygpIj5nZXRTdHJpbmc8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+U3RyaW5nPC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0VGltZSgpIj5nZXRUaW1lPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlRpbWU8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRVSWludDE2TXVsdGlBcnJheSgpIj5nZXRVSWludDE2TXVsdGlBcnJheTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5VSWludDE2IE11bHRpIEFycmF5PC9lbT48L0NPREU+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0VUludDE2KCkiPmdldFVJbnQxNjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5VSW50MTY8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRVSW50MzIoKSI+Z2V0VUludDMyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlVJbnQzMjwvZW0+PC9DT0RFPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFVJbnQzMk11bHRpQXJyYXkoKSI+Z2V0VUludDMyTXVsdGlBcnJheTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5VSW50MzIgTXVsdGkgQXJyYXk8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRVSW50NjQoKSI+Z2V0VUludDY0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlVJbnQ2NDwvZW0+PC9DT0RFPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFVJbnQ2NE11bHRpQXJyYXkoKSI+Z2V0VUludDY0TXVsdGlBcnJheTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5VSW50NjQgTXVsdGkgQXJyYXk8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRVSW50OCgpIj5nZXRVSW50ODwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5VSW50ODwvZW0+PC9DT0RFPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFVJbnQ4TXVsdGlBcnJheSgpIj5nZXRVSW50OE11bHRpQXJyYXk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+VUludDggTXVsdGkgQXJyYXk8L2VtPjwvQ09ERT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXRFQ2xhc3NpZmllciwgZ2V0RUNsYXNzaWZpZXJzLCBnZXRFRmFjdG9yeUluc3RhbmNlLCBnZXRFU3VicGFja2FnZXMsIGdldEVTdXBlclBhY2thZ2UsIGdldE5zUHJlZml4LCBnZXROc1VSSSwgc2V0RUZhY3RvcnlJbnN0YW5jZSwgc2V0TnNQcmVmaXgsIHNldE5zVVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVOYW1lZEVsZW1lbnQiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU5hbWVkRWxlbWVudDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmdldE5hbWUsIHNldE5hbWU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0RUFubm90YXRpb24sIGdldEVBbm5vdGF0aW9uczwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IEZJRUxEIERFVEFJTCA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImVOQU1FIj48IS0tIC0tPjwvQT48SDM+CitlTkFNRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGphdmEubGFuZy5TdHJpbmcgPEI+ZU5BTUU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIHBhY2thZ2UgbmFtZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZS5lTkFNRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlTlNfVVJJIj48IS0tIC0tPjwvQT48SDM+CitlTlNfVVJJPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgamF2YS5sYW5nLlN0cmluZyA8Qj5lTlNfVVJJPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBwYWNrYWdlIG5hbWVzcGFjZSBVUkkuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlTlNfUFJFRklYIj48IS0tIC0tPjwvQT48SDM+CitlTlNfUFJFRklYPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgamF2YS5sYW5nLlN0cmluZyA8Qj5lTlNfUFJFRklYPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBwYWNrYWdlIG5hbWVzcGFjZSBuYW1lLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVOU19QUkVGSVgiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUlOU1RBTkNFIj48IS0tIC0tPjwvQT48SDM+CitlSU5TVEFOQ0U8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4gPEI+ZUlOU1RBTkNFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIHBhY2thZ2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlVJTlQzMiI+PCEtLSAtLT48L0E+PEgzPgorVUlOVDMyPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlVJTlQzMjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlVJbnQzMjwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFVJbnQzMigpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0VUludDMyKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UMzIiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVElNRSI+PCEtLSAtLT48L0E+PEgzPgorVElNRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5USU1FPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+VGltZTwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFRpbWUoKSI+PENPREU+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldFRpbWUoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLlRJTUUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU1RSSU5HIj48IS0tIC0tPjwvQT48SDM+CitTVFJJTkc8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+U1RSSU5HPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+U3RyaW5nPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0U3RyaW5nKCkiPjxDT0RFPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRTdHJpbmcoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLlNUUklORyI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJCWVRFIj48IS0tIC0tPjwvQT48SDM+CitCWVRFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkJZVEU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5CeXRlPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0Qnl0ZSgpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0Qnl0ZSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuQllURSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJGTE9BVDY0Ij48IS0tIC0tPjwvQT48SDM+CitGTE9BVDY0PC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkZMT0FUNjQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5GbG9hdDY0PC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0RmxvYXQ2NCgpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0RmxvYXQ2NCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuRkxPQVQ2NCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJJTlQ4Ij48IS0tIC0tPjwvQT48SDM+CitJTlQ4PC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPklOVDg8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5JbnQ4PC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0SW50OCgpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0SW50OCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UOCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJCT09MIj48IS0tIC0tPjwvQT48SDM+CitCT09MPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkJPT0w8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Cb29sPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0Qm9vbCgpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0Qm9vbCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuQk9PTCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJVSU5UOCI+PCEtLSAtLT48L0E+PEgzPgorVUlOVDg8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+VUlOVDg8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5VSW50ODwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFVJbnQ4KCkiPjxDT0RFPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRVSW50OCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDgiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVUlOVDE2Ij48IS0tIC0tPjwvQT48SDM+CitVSU5UMTY8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+VUlOVDE2PC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+VUludDE2PC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0VUludDE2KCkiPjxDT0RFPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRVSW50MTYoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJTlQxNiI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJJTlQzMiI+PCEtLSAtLT48L0E+PEgzPgorSU5UMzI8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+SU5UMzI8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5JbnQzMjwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEludDMyKCkiPjxDT0RFPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRJbnQzMigpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UMzIiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iSU5UMTYiPjwhLS0gLS0+PC9BPjxIMz4KK0lOVDE2PC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPklOVDE2PC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+SW50MTY8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRJbnQxNigpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0SW50MTYoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDE2Ij5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkNIQVIiPjwhLS0gLS0+PC9BPjxIMz4KK0NIQVI8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+Q0hBUjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkNoYXI8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRDaGFyKCkiPjxDT0RFPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRDaGFyKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZS5DSEFSIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkRVUkFUSU9OIj48IS0tIC0tPjwvQT48SDM+CitEVVJBVElPTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5EVVJBVElPTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkR1cmF0aW9uPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0RHVyYXRpb24oKSI+PENPREU+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldER1cmF0aW9uKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZS5EVVJBVElPTiI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJJTlQ2NCI+PCEtLSAtLT48L0E+PEgzPgorSU5UNjQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+SU5UNjQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5JbnQ2NDwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEludDY0KCkiPjxDT0RFPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRJbnQ2NCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UNjQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVUlOVDY0Ij48IS0tIC0tPjwvQT48SDM+CitVSU5UNjQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+VUlOVDY0PC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+VUludDY0PC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0VUludDY0KCkiPjxDT0RFPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRVSW50NjQoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJTlQ2NCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJGTE9BVDMyIj48IS0tIC0tPjwvQT48SDM+CitGTE9BVDMyPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkZMT0FUMzI8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5GbG9hdDMyPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0RmxvYXQzMigpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0RmxvYXQzMigpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuRkxPQVQzMiI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJIRUFERVIiPjwhLS0gLS0+PC9BPjxIMz4KK0hFQURFUjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5IRUFERVI8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5IZWFkZXI8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRIZWFkZXIoKSI+PENPREU+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldEhlYWRlcigpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuSEVBREVSIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9Ik1VTFRJX0FSUkFZX0RJTUVOU0lPTiI+PCEtLSAtLT48L0E+PEgzPgorTVVMVElfQVJSQVlfRElNRU5TSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPk1VTFRJX0FSUkFZX0RJTUVOU0lPTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPk11bHRpIEFycmF5IERpbWVuc2lvbjwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldE11bHRpQXJyYXlEaW1lbnNpb24oKSI+PENPREU+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldE11bHRpQXJyYXlEaW1lbnNpb24oKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLk1VTFRJX0FSUkFZX0RJTUVOU0lPTiI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJNVUxUSV9BUlJBWV9MQVlPVVQiPjwhLS0gLS0+PC9BPjxIMz4KK01VTFRJX0FSUkFZX0xBWU9VVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5NVUxUSV9BUlJBWV9MQVlPVVQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5NdWx0aSBBcnJheSBMYXlvdXQ8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRNdWx0aUFycmF5TGF5b3V0KCkiPjxDT0RFPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRNdWx0aUFycmF5TGF5b3V0KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZS5NVUxUSV9BUlJBWV9MQVlPVVQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQllURV9NVUxUSV9BUlJBWSI+PCEtLSAtLT48L0E+PEgzPgorQllURV9NVUxUSV9BUlJBWTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5CWVRFX01VTFRJX0FSUkFZPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+Qnl0ZSBNdWx0aSBBcnJheTwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEJ5dGVNdWx0aUFycmF5KCkiPjxDT0RFPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRCeXRlTXVsdGlBcnJheSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuQllURV9NVUxUSV9BUlJBWSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJDT0xPUl9SR0JBIj48IS0tIC0tPjwvQT48SDM+CitDT0xPUl9SR0JBPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkNPTE9SX1JHQkE8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5Db2xvciBSR0JBPC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0Q29sb3JSR0JBKCkiPjxDT0RFPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRDb2xvclJHQkEoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkNPTE9SX1JHQkEiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iRkxPQVQzMl9NVUxUSV9BUlJBWSI+PCEtLSAtLT48L0E+PEgzPgorRkxPQVQzMl9NVUxUSV9BUlJBWTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5GTE9BVDMyX01VTFRJX0FSUkFZPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+RmxvYXQzMiBNdWx0aSBBcnJheTwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEZsb2F0MzJNdWx0aUFycmF5KCkiPjxDT0RFPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRGbG9hdDMyTXVsdGlBcnJheSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuRkxPQVQzMl9NVUxUSV9BUlJBWSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJJTlQzMl9NVUxUSV9BUlJBWSI+PCEtLSAtLT48L0E+PEgzPgorSU5UMzJfTVVMVElfQVJSQVk8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+SU5UMzJfTVVMVElfQVJSQVk8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5JbnQzMiBNdWx0aSBBcnJheTwvZW0+JyBkYXRhIHR5cGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEludDMyTXVsdGlBcnJheSgpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0SW50MzJNdWx0aUFycmF5KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQzMl9NVUxUSV9BUlJBWSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJJTlQ4X01VTFRJX0FSUkFZIj48IS0tIC0tPjwvQT48SDM+CitJTlQ4X01VTFRJX0FSUkFZPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPklOVDhfTVVMVElfQVJSQVk8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5JbnQ4IE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0SW50OE11bHRpQXJyYXkoKSI+PENPREU+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmdldEludDhNdWx0aUFycmF5KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQ4X01VTFRJX0FSUkFZIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IklOVDE2X01VTFRJX0FSUkFZIj48IS0tIC0tPjwvQT48SDM+CitJTlQxNl9NVUxUSV9BUlJBWTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5JTlQxNl9NVUxUSV9BUlJBWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkludDE2IE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0SW50MTZNdWx0aUFycmF5KCkiPjxDT0RFPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRJbnQxNk11bHRpQXJyYXkoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDE2X01VTFRJX0FSUkFZIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IklOVDY0X01VTFRJX0FSUkFZIj48IS0tIC0tPjwvQT48SDM+CitJTlQ2NF9NVUxUSV9BUlJBWTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5JTlQ2NF9NVUxUSV9BUlJBWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkludDY0IE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0SW50NjRNdWx0aUFycmF5KCkiPjxDT0RFPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRJbnQ2NE11bHRpQXJyYXkoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDY0X01VTFRJX0FSUkFZIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkZMT0FUNjRfTVVMVElfQVJSQVkiPjwhLS0gLS0+PC9BPjxIMz4KK0ZMT0FUNjRfTVVMVElfQVJSQVk8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+RkxPQVQ2NF9NVUxUSV9BUlJBWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkZsb2F0NjQgTXVsdGkgQXJyYXk8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRGbG9hdDY0TXVsdGlBcnJheSgpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0RmxvYXQ2NE11bHRpQXJyYXkoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkZMT0FUNjRfTVVMVElfQVJSQVkiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVUlOVDY0X01VTFRJX0FSUkFZIj48IS0tIC0tPjwvQT48SDM+CitVSU5UNjRfTVVMVElfQVJSQVk8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+VUlOVDY0X01VTFRJX0FSUkFZPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+VUludDY0IE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0VUludDY0TXVsdGlBcnJheSgpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0VUludDY0TXVsdGlBcnJheSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDY0X01VTFRJX0FSUkFZIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlVJSU5UMTZfTVVMVElfQVJSQVkiPjwhLS0gLS0+PC9BPjxIMz4KK1VJSU5UMTZfTVVMVElfQVJSQVk8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+VUlJTlQxNl9NVUxUSV9BUlJBWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlVJaW50MTYgTXVsdGkgQXJyYXk8L2VtPicgZGF0YSB0eXBlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRVSWludDE2TXVsdGlBcnJheSgpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0VUlpbnQxNk11bHRpQXJyYXkoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJSU5UMTZfTVVMVElfQVJSQVkiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVUlOVDMyX01VTFRJX0FSUkFZIj48IS0tIC0tPjwvQT48SDM+CitVSU5UMzJfTVVMVElfQVJSQVk8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+VUlOVDMyX01VTFRJX0FSUkFZPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+VUludDMyIE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0VUludDMyTXVsdGlBcnJheSgpIj48Q09ERT5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuZ2V0VUludDMyTXVsdGlBcnJheSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDMyX01VTFRJX0FSUkFZIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlVJTlQ4X01VTFRJX0FSUkFZIj48IS0tIC0tPjwvQT48SDM+CitVSU5UOF9NVUxUSV9BUlJBWTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5VSU5UOF9NVUxUSV9BUlJBWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlVJbnQ4IE11bHRpIEFycmF5PC9lbT4nIGRhdGEgdHlwZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0VUludDhNdWx0aUFycmF5KCkiPjxDT0RFPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5nZXRVSW50OE11bHRpQXJyYXkoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJTlQ4X01VTFRJX0FSUkFZIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0VUludDMyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFVJbnQzMjwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRVSW50MzI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+VUludDMyPC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+VUludDMyPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFRpbWUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0VGltZTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRUaW1lPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlRpbWU8L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5UaW1lPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFN0cmluZygpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTdHJpbmc8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0U3RyaW5nPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlN0cmluZzwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPlN0cmluZzwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRCeXRlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEJ5dGU8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0Qnl0ZTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5CeXRlPC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+Qnl0ZTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRGbG9hdDY0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEZsb2F0NjQ8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0RmxvYXQ2NDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5GbG9hdDY0PC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+RmxvYXQ2NDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRJbnQ4KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEludDg8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0SW50ODwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5JbnQ4PC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+SW50ODwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRCb29sKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEJvb2w8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0Qm9vbDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Cb29sPC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+Qm9vbDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRVSW50OCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRVSW50ODwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRVSW50ODwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5VSW50ODwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPlVJbnQ4PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFVJbnQxNigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRVSW50MTY8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0VUludDE2PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlVJbnQxNjwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPlVJbnQxNjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRJbnQzMigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRJbnQzMjwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRJbnQzMjwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5JbnQzMjwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPkludDMyPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEludDE2KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEludDE2PC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldEludDE2PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkludDE2PC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+SW50MTY8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Q2hhcigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRDaGFyPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldENoYXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+Q2hhcjwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPkNoYXI8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RHVyYXRpb24oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0RHVyYXRpb248L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0RHVyYXRpb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+RHVyYXRpb248L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5EdXJhdGlvbjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRJbnQ2NCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRJbnQ2NDwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRJbnQ2NDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5JbnQ2NDwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPkludDY0PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFVJbnQ2NCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRVSW50NjQ8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0VUludDY0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlVJbnQ2NDwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPlVJbnQ2NDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRGbG9hdDMyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEZsb2F0MzI8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0RmxvYXQzMjwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5GbG9hdDMyPC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+RmxvYXQzMjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRIZWFkZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0SGVhZGVyPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldEhlYWRlcjwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5IZWFkZXI8L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5IZWFkZXI8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TXVsdGlBcnJheURpbWVuc2lvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRNdWx0aUFycmF5RGltZW5zaW9uPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldE11bHRpQXJyYXlEaW1lbnNpb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+TXVsdGkgQXJyYXkgRGltZW5zaW9uPC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+TXVsdGkgQXJyYXkgRGltZW5zaW9uPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldE11bHRpQXJyYXlMYXlvdXQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TXVsdGlBcnJheUxheW91dDwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRNdWx0aUFycmF5TGF5b3V0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPk11bHRpIEFycmF5IExheW91dDwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPk11bHRpIEFycmF5IExheW91dDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRCeXRlTXVsdGlBcnJheSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRCeXRlTXVsdGlBcnJheTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRCeXRlTXVsdGlBcnJheTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5CeXRlIE11bHRpIEFycmF5PC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+Qnl0ZSBNdWx0aSBBcnJheTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRDb2xvclJHQkEoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Q29sb3JSR0JBPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldENvbG9yUkdCQTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5Db2xvciBSR0JBPC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+Q29sb3IgUkdCQTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRGbG9hdDMyTXVsdGlBcnJheSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRGbG9hdDMyTXVsdGlBcnJheTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRGbG9hdDMyTXVsdGlBcnJheTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5GbG9hdDMyIE11bHRpIEFycmF5PC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+RmxvYXQzMiBNdWx0aSBBcnJheTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRJbnQzMk11bHRpQXJyYXkoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0SW50MzJNdWx0aUFycmF5PC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldEludDMyTXVsdGlBcnJheTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5JbnQzMiBNdWx0aSBBcnJheTwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPkludDMyIE11bHRpIEFycmF5PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEludDhNdWx0aUFycmF5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEludDhNdWx0aUFycmF5PC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldEludDhNdWx0aUFycmF5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkludDggTXVsdGkgQXJyYXk8L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5JbnQ4IE11bHRpIEFycmF5PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEludDE2TXVsdGlBcnJheSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRJbnQxNk11bHRpQXJyYXk8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0SW50MTZNdWx0aUFycmF5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPkludDE2IE11bHRpIEFycmF5PC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+SW50MTYgTXVsdGkgQXJyYXk8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0SW50NjRNdWx0aUFycmF5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEludDY0TXVsdGlBcnJheTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRJbnQ2NE11bHRpQXJyYXk8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+SW50NjQgTXVsdGkgQXJyYXk8L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5JbnQ2NCBNdWx0aSBBcnJheTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRGbG9hdDY0TXVsdGlBcnJheSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRGbG9hdDY0TXVsdGlBcnJheTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRGbG9hdDY0TXVsdGlBcnJheTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5GbG9hdDY0IE11bHRpIEFycmF5PC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+RmxvYXQ2NCBNdWx0aSBBcnJheTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRVSW50NjRNdWx0aUFycmF5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFVJbnQ2NE11bHRpQXJyYXk8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0VUludDY0TXVsdGlBcnJheTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxDT0RFPjxlbT5VSW50NjQgTXVsdGkgQXJyYXk8L2VtPjwvQ09ERT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5VSW50NjQgTXVsdGkgQXJyYXk8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0VUlpbnQxNk11bHRpQXJyYXkoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0VUlpbnQxNk11bHRpQXJyYXk8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0VUlpbnQxNk11bHRpQXJyYXk8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+VUlpbnQxNiBNdWx0aSBBcnJheTwvZW0+PC9DT0RFPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPlVJaW50MTYgTXVsdGkgQXJyYXk8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0VUludDMyTXVsdGlBcnJheSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRVSW50MzJNdWx0aUFycmF5PC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFVJbnQzMk11bHRpQXJyYXk8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8Q09ERT48ZW0+VUludDMyIE11bHRpIEFycmF5PC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+VUludDMyIE11bHRpIEFycmF5PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFVJbnQ4TXVsdGlBcnJheSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRVSW50OE11bHRpQXJyYXk8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0VUludDhNdWx0aUFycmF5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPENPREU+PGVtPlVJbnQ4IE11bHRpIEFycmF5PC9lbT48L0NPREU+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+VUludDggTXVsdGkgQXJyYXk8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U3RkX2RhdGF0eXBlc0ZhY3RvcnkoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U3RkX2RhdGF0eXBlc0ZhY3Rvcnk8L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5PC9BPiA8Qj5nZXRTdGRfZGF0YXR5cGVzRmFjdG9yeTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIGZhY3RvcnkgdGhhdCBjcmVhdGVzIHRoZSBpbnN0YW5jZXMgb2YgdGhlIG1vZGVsLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGZhY3RvcnkgdGhhdCBjcmVhdGVzIHRoZSBpbnN0YW5jZXMgb2YgdGhlIG1vZGVsLjwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzX3N1bW1hcnkiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX3N1bW1hcnkiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwOzxBIEhSRUY9IiNmaWVsZF9kZXRhaWwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9jbGFzcy11c2UvU3RkX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvY2xhc3MtdXNlL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTAwMzMyYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvY2xhc3MtdXNlL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwKQEAgLTAsMCArMSwyNDUgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNGYWN0b3J5Cis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc0ZhY3RvcnkiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9jbGFzcy11c2UvU3RkX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTdGRfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlczwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlczwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5GaWVsZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzPC9BPiBkZWNsYXJlZCBhcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5TdGRfZGF0YXR5cGVzRmFjdG9yeS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCNlSU5TVEFOQ0UiPmVJTlNUQU5DRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBmYWN0b3J5PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlczwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+U3RkX2RhdGF0eXBlc1BhY2thZ2UuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0U3RkX2RhdGF0eXBlc0ZhY3RvcnkoKSI+Z2V0U3RkX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBmYWN0b3J5IHRoYXQgY3JlYXRlcyB0aGUgaW5zdGFuY2VzIG9mIHRoZSBtb2RlbDwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzRmFjdG9yeTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5DbGFzc2VzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgPGI+RmFjdG9yeTwvYj48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+U3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFN0ZF9kYXRhdHlwZXNGYWN0b3J5KCkiPmdldFN0ZF9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2luaXQoKSI+aW5pdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMgdGhlIGRlZmF1bHQgZmFjdG9yeSBpbXBsZW1lbnRhdGlvbjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvY2xhc3MtdXNlL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU3RkX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvY2xhc3MtdXNlL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2NsYXNzLXVzZS9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRlN2Y2ZjUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2NsYXNzLXVzZS9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sCkBAIC0wLDAgKzEsMTQwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscworPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvY2xhc3MtdXNlL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBJbnRlcmZhY2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2NsYXNzLXVzZS9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlN0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2NsYXNzLXVzZS9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9jbGFzcy11c2UvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wNjQ3MTVjCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9jbGFzcy11c2UvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbApAQCAtMCwwICsxLDI1MyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2NsYXNzLXVzZS9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlN0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgSW50ZXJmYWNlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPkZpZWxkcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXM8L0E+IGRlY2xhcmVkIGFzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlN0ZF9kYXRhdHlwZXNQYWNrYWdlLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VJTlNUQU5DRSI+ZUlOU1RBTkNFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIHBhY2thZ2U8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5TdGRfZGF0YXR5cGVzRmFjdG9yeS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCNnZXRTdGRfZGF0YXR5cGVzUGFja2FnZSgpIj5nZXRTdGRfZGF0YXR5cGVzUGFja2FnZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHBhY2thZ2Ugc3VwcG9ydGVkIGJ5IHRoaXMgZmFjdG9yeTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5DbGFzc2VzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgPGI+UGFja2FnZTwvYj48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2dldFBhY2thZ2UoKSI+Z2V0UGFja2FnZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwOzxJPjwvST4mbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNnZXRTdGRfZGF0YXR5cGVzUGFja2FnZSgpIj5nZXRTdGRfZGF0YXR5cGVzUGFja2FnZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNpbml0KCkiPmluaXQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzLCByZWdpc3RlcnMsIGFuZCBpbml0aWFsaXplcyB0aGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoaXMgbW9kZWwsIGFuZCBmb3IgYW55IG90aGVycyB1cG9uIHdoaWNoIGl0IGRlcGVuZHMuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9jbGFzcy11c2UvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUzOWU1NDgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwKQEAgLTAsMCArMSwyMzMyIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzAgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitTdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbCBjbGFzcyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViBDTEFTUyZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3JfZGV0YWlsIj5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsPC9GT05UPgorPEJSPgorQ2xhc3MgU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsCisgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbAorICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIKKyAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTW9kZWxFbGVtZW50SW1wbAorICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FRmFjdG9yeUltcGwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeSwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVN0cnVjdHVyYWxGZWF0dXJlLkludGVybmFsLkR5bmFtaWNWYWx1ZUhvbGRlciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9CPjxEVD5leHRlbmRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVGYWN0b3J5SW1wbDxEVD5pbXBsZW1lbnRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCA8Yj5GYWN0b3J5PC9iPi4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09IE5FU1RFRCBDTEFTUyBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk5lc3RlZCBDbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lci5EeW5hbWljPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRUFkYXB0ZXJMaXN0Jmx0O0UgZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0ICYgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciZndDssIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRU9ic2VydmFibGVBZGFwdGVyTGlzdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdC5FU3RvcmU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc0ZhY3RvcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwjZUlOU1RBTkNFIj5lSU5TVEFOQ0U8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVN0cnVjdHVyYWxGZWF0dXJlLkludGVybmFsLkR5bmFtaWNWYWx1ZUhvbGRlciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVTdHJ1Y3R1cmFsRmVhdHVyZS5JbnRlcm5hbC5EeW5hbWljVmFsdWVIb2xkZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5OSUw8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FT1BQT1NJVEVfRkVBVFVSRV9CQVNFPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PSBDT05TVFJVQ1RPUiBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+Q29uc3RydWN0b3IgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbCgpIj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSBmYWN0b3J5PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEJvb2xUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydEJvb2xUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEJ5dGVNdWx0aUFycmF5VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRCeXRlTXVsdGlBcnJheVRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEJ5dGVUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydEJ5dGVUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydENoYXJUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydENoYXJUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydENvbG9yUkdCQVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0Q29sb3JSR0JBVG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydER1cmF0aW9uVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnREdXJhdGlvblRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEZsb2F0MzJNdWx0aUFycmF5VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRGbG9hdDMyTXVsdGlBcnJheVRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEZsb2F0MzJUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydEZsb2F0MzJUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEZsb2F0NjRNdWx0aUFycmF5VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRGbG9hdDY0TXVsdGlBcnJheVRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEZsb2F0NjRUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydEZsb2F0NjRUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEhlYWRlclRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0SGVhZGVyVG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEludDE2TXVsdGlBcnJheVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0SW50MTZNdWx0aUFycmF5VG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEludDE2VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRJbnQxNlRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEludDMyTXVsdGlBcnJheVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0SW50MzJNdWx0aUFycmF5VG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEludDMyVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRJbnQzMlRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEludDY0TXVsdGlBcnJheVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0SW50NjRNdWx0aUFycmF5VG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEludDY0VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRJbnQ2NFRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEludDhNdWx0aUFycmF5VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRJbnQ4TXVsdGlBcnJheVRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydEludDhUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydEludDhUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydE11bHRpQXJyYXlEaW1lbnNpb25Ub1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydE11bHRpQXJyYXlEaW1lbnNpb25Ub1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydE11bHRpQXJyYXlMYXlvdXRUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydE11bHRpQXJyYXlMYXlvdXRUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFN0cmluZ1RvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0U3RyaW5nVG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFRpbWVUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydFRpbWVUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0VG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFVJaW50MTZNdWx0aUFycmF5VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRVSWludDE2TXVsdGlBcnJheVRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFVJbnQxNlRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0VUludDE2VG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFVJbnQzMk11bHRpQXJyYXlUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydFVJbnQzMk11bHRpQXJyYXlUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFVJbnQzMlRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0VUludDMyVG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFVJbnQ2NE11bHRpQXJyYXlUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydFVJbnQ2NE11bHRpQXJyYXlUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFVJbnQ2NFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0VUludDY0VG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFVJbnQ4TXVsdGlBcnJheVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0VUludDhNdWx0aUFycmF5VG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY29udmVydFVJbnQ4VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRVSW50OFRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZShvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzKSI+Y3JlYXRlPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyZuYnNwO2VDbGFzcyk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUJvb2xGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVCb29sRnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlQnl0ZUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZUJ5dGVGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVCeXRlTXVsdGlBcnJheUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZUJ5dGVNdWx0aUFycmF5RnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUNoYXJGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVDaGFyRnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlQ29sb3JSR0JBRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlQ29sb3JSR0JBRnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVEdXJhdGlvbkZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZUR1cmF0aW9uRnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUZsb2F0MzJGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVGbG9hdDMyRnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlRmxvYXQzMk11bHRpQXJyYXlGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVGbG9hdDMyTXVsdGlBcnJheUZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVGbG9hdDY0RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlRmxvYXQ2NEZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUZsb2F0NjRNdWx0aUFycmF5RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlRmxvYXQ2NE11bHRpQXJyYXlGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuT2JqZWN0PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlRnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVIZWFkZXJGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVIZWFkZXJGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUludDE2RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlSW50MTZGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlSW50MTZNdWx0aUFycmF5RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlSW50MTZNdWx0aUFycmF5RnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVJbnQzMkZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZUludDMyRnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUludDMyTXVsdGlBcnJheUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZUludDMyTXVsdGlBcnJheUZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlSW50NjRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVJbnQ2NEZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVJbnQ2NE11bHRpQXJyYXlGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVJbnQ2NE11bHRpQXJyYXlGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUludDhGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVJbnQ4RnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlSW50OE11bHRpQXJyYXlGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVJbnQ4TXVsdGlBcnJheUZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVNdWx0aUFycmF5RGltZW5zaW9uRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlTXVsdGlBcnJheURpbWVuc2lvbkZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZU11bHRpQXJyYXlMYXlvdXRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVNdWx0aUFycmF5TGF5b3V0RnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlU3RyaW5nRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlU3RyaW5nRnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVUaW1lRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlVGltZUZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVVJaW50MTZNdWx0aUFycmF5RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlVUlpbnQxNk11bHRpQXJyYXlGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlVUludDE2RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlVUludDE2RnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVVSW50MzJGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVVSW50MzJGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVVJbnQzMk11bHRpQXJyYXlGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVVSW50MzJNdWx0aUFycmF5RnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlVUludDY0RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlVUludDY0RnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVVSW50NjRNdWx0aUFycmF5RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlVUludDY0TXVsdGlBcnJheUZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVVJbnQ4RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlVUludDhGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlVUludDhNdWx0aUFycmF5RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlVUludDhNdWx0aUFycmF5RnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2dldFBhY2thZ2UoKSI+Z2V0UGFja2FnZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwOzxJPjwvST4mbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwjZ2V0U3RkX2RhdGF0eXBlc1BhY2thZ2UoKSI+Z2V0U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sI2luaXQoKSI+aW5pdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMgdGhlIGRlZmF1bHQgZmFjdG9yeSBpbXBsZW1lbnRhdGlvbjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FRmFjdG9yeUltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5iYXNpY1NldEVQYWNrYWdlLCBlR2V0LCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZVNldCwgZVVuc2V0LCBnZXRFUGFja2FnZSwgc2V0RVBhY2thZ2U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTW9kZWxFbGVtZW50SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU1vZGVsRWxlbWVudEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lT2JqZWN0Rm9yVVJJRnJhZ21lbnRTZWdtZW50LCBlVVJJRnJhZ21lbnRTZWdtZW50LCBnZXRFQW5ub3RhdGlvbiwgZ2V0RUFubm90YXRpb25zPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVJbnRlcm5hbENvbnRhaW5lcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZHluYW1pY0dldCwgZHluYW1pY1NldCwgZHluYW1pY1Vuc2V0LCBlQWRhcHRlcnMsIGVDbGFzcywgZUNvbnRhaW5lckZlYXR1cmVJRCwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVsaXZlciwgZURpcmVjdFJlc291cmNlLCBlSXNQcm94eSwgZVByb3h5VVJJLCBlU2V0Q2xhc3MsIGVTZXREZWxpdmVyLCBlU2V0UHJveHlVUkk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQmFzZVN0cnVjdHVyYWxGZWF0dXJlSUQsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXJGZWF0dXJlLCBlQmFzaWNTZXRDb250YWluZXIsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRhaW5zLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZUR5bmFtaWNCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVEeW5hbWljR2V0LCBlRHluYW1pY0dldCwgZUR5bmFtaWNJbnZlcnNlQWRkLCBlRHluYW1pY0ludmVyc2VSZW1vdmUsIGVEeW5hbWljSW52b2tlLCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljVW5zZXQsIGVEeW5hbWljVW5zZXQsIGVHZXQsIGVHZXQsIGVHZXQsIGVJbnRlcm5hbFJlc291cmNlLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZU9wZW5HZXQsIGVPcGVuSXNTZXQsIGVPcGVuU2V0LCBlT3BlblVuc2V0LCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQsIHRvU3RyaW5nPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3RvcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3Rvcnk8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXRFUGFja2FnZSwgc2V0RVBhY2thZ2U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0RUFubm90YXRpb24sIGdldEVBbm5vdGF0aW9uczwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT0gQ09OU1RSVUNUT1IgREVUQUlMID09PT09PT09IC0tPgorCis8QSBOQU1FPSJjb25zdHJ1Y3Rvcl9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5Db25zdHJ1Y3RvciBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsKCkiPjwhLS0gLS0+PC9BPjxIMz4KK1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvSDM+Cis8UFJFPgorcHVibGljIDxCPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIGZhY3RvcnkuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPC9ETD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJpbml0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2luaXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+IDxCPmluaXQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIHRoZSBkZWZhdWx0IGZhY3RvcnkgaW1wbGVtZW50YXRpb24uCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGU8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCA8Qj5jcmVhdGU8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MmbmJzcDtlQ2xhc3MpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+Y3JlYXRlPC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5jcmVhdGU8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVGYWN0b3J5SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVDbGFzczwvQ09ERT4gLSB0aGUgZSBjbGFzcworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgZSBvYmplY3Q8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuT2JqZWN0IDxCPmNyZWF0ZUZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+Y3JlYXRlRnJvbVN0cmluZzwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeTwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+Y3JlYXRlRnJvbVN0cmluZzwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG9iamVjdDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0VG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5jb252ZXJ0VG9TdHJpbmc8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3Rvcnk8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmNvbnZlcnRUb1N0cmluZzwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVVSW50MzJGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVVSW50MzJGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVVSW50MzJGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0VUludDMyVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRVSW50MzJUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydFVJbnQzMlRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVRpbWVGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVUaW1lRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlVGltZUZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0VGltZVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0VGltZVRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0VGltZVRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVTdHJpbmdGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVTdHJpbmdGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVTdHJpbmdGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0U3RyaW5nVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRTdHJpbmdUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydFN0cmluZ1RvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUJ5dGVGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVCeXRlRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlQnl0ZUZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0Qnl0ZVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0Qnl0ZVRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0Qnl0ZVRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVGbG9hdDY0RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlRmxvYXQ2NEZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZUZsb2F0NjRGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydEZsb2F0NjRUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydEZsb2F0NjRUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydEZsb2F0NjRUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlSW50OEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUludDhGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVJbnQ4RnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRJbnQ4VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRJbnQ4VG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRJbnQ4VG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUJvb2xGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVCb29sRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlQm9vbEZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0Qm9vbFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0Qm9vbFRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0Qm9vbFRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVVSW50OEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVVJbnQ4RnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlVUludDhGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRVSW50OFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0VUludDhUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydFVJbnQ4VG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVVSW50MTZGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVVSW50MTZGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVVSW50MTZGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0VUludDE2VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRVSW50MTZUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydFVJbnQxNlRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUludDMyRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlSW50MzJGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVJbnQzMkZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydEludDMyVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRJbnQzMlRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0SW50MzJUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUludDE2RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlSW50MTZGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVJbnQxNkZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydEludDE2VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRJbnQxNlRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0SW50MTZUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUNoYXJGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVDaGFyRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlQ2hhckZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0Q2hhclRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0Q2hhclRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0Q2hhclRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVEdXJhdGlvbkZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUR1cmF0aW9uRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlRHVyYXRpb25Gcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnREdXJhdGlvblRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0RHVyYXRpb25Ub1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydER1cmF0aW9uVG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVJbnQ2NEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUludDY0RnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlSW50NjRGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRJbnQ2NFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0SW50NjRUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydEludDY0VG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVVSW50NjRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVVSW50NjRGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVVSW50NjRGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0VUludDY0VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRVSW50NjRUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydFVJbnQ2NFRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUZsb2F0MzJGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVGbG9hdDMyRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlRmxvYXQzMkZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0RmxvYXQzMlRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0RmxvYXQzMlRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0RmxvYXQzMlRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVIZWFkZXJGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVIZWFkZXJGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVIZWFkZXJGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0SGVhZGVyVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRIZWFkZXJUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydEhlYWRlclRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZU11bHRpQXJyYXlEaW1lbnNpb25Gcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVNdWx0aUFycmF5RGltZW5zaW9uRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlTXVsdGlBcnJheURpbWVuc2lvbkZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0TXVsdGlBcnJheURpbWVuc2lvblRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0TXVsdGlBcnJheURpbWVuc2lvblRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0TXVsdGlBcnJheURpbWVuc2lvblRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVNdWx0aUFycmF5TGF5b3V0RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlTXVsdGlBcnJheUxheW91dEZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZU11bHRpQXJyYXlMYXlvdXRGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydE11bHRpQXJyYXlMYXlvdXRUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydE11bHRpQXJyYXlMYXlvdXRUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydE11bHRpQXJyYXlMYXlvdXRUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlQnl0ZU11bHRpQXJyYXlGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVCeXRlTXVsdGlBcnJheUZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZUJ5dGVNdWx0aUFycmF5RnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0Qnl0ZU11bHRpQXJyYXlUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydEJ5dGVNdWx0aUFycmF5VG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRCeXRlTXVsdGlBcnJheVRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlQ29sb3JSR0JBRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlQ29sb3JSR0JBRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlQ29sb3JSR0JBRnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydENvbG9yUkdCQVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0Q29sb3JSR0JBVG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRDb2xvclJHQkFUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVGbG9hdDMyTXVsdGlBcnJheUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUZsb2F0MzJNdWx0aUFycmF5RnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlRmxvYXQzMk11bHRpQXJyYXlGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRGbG9hdDMyTXVsdGlBcnJheVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0RmxvYXQzMk11bHRpQXJyYXlUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydEZsb2F0MzJNdWx0aUFycmF5VG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVJbnQzMk11bHRpQXJyYXlGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVJbnQzMk11bHRpQXJyYXlGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVJbnQzMk11bHRpQXJyYXlGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0SW50MzJNdWx0aUFycmF5VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRJbnQzMk11bHRpQXJyYXlUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydEludDMyTXVsdGlBcnJheVRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUludDhNdWx0aUFycmF5RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlSW50OE11bHRpQXJyYXlGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVJbnQ4TXVsdGlBcnJheUZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydEludDhNdWx0aUFycmF5VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRJbnQ4TXVsdGlBcnJheVRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0SW50OE11bHRpQXJyYXlUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUludDE2TXVsdGlBcnJheUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUludDE2TXVsdGlBcnJheUZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZUludDE2TXVsdGlBcnJheUZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRJbnQxNk11bHRpQXJyYXlUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydEludDE2TXVsdGlBcnJheVRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0SW50MTZNdWx0aUFycmF5VG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlSW50NjRNdWx0aUFycmF5RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlSW50NjRNdWx0aUFycmF5RnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlSW50NjRNdWx0aUFycmF5RnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydEludDY0TXVsdGlBcnJheVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0SW50NjRNdWx0aUFycmF5VG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRJbnQ2NE11bHRpQXJyYXlUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVGbG9hdDY0TXVsdGlBcnJheUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUZsb2F0NjRNdWx0aUFycmF5RnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y3JlYXRlRmxvYXQ2NE11bHRpQXJyYXlGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRGbG9hdDY0TXVsdGlBcnJheVRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0RmxvYXQ2NE11bHRpQXJyYXlUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydEZsb2F0NjRNdWx0aUFycmF5VG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVVSW50NjRNdWx0aUFycmF5RnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlVUludDY0TXVsdGlBcnJheUZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZVVJbnQ2NE11bHRpQXJyYXlGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydFVJbnQ2NE11bHRpQXJyYXlUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydFVJbnQ2NE11bHRpQXJyYXlUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydFVJbnQ2NE11bHRpQXJyYXlUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlVUlpbnQxNk11bHRpQXJyYXlGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVVSWludDE2TXVsdGlBcnJheUZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZVVJaW50MTZNdWx0aUFycmF5RnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0VUlpbnQxNk11bHRpQXJyYXlUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydFVJaW50MTZNdWx0aUFycmF5VG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRVSWludDE2TXVsdGlBcnJheVRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlVUludDMyTXVsdGlBcnJheUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVVJbnQzMk11bHRpQXJyYXlGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jcmVhdGVVSW50MzJNdWx0aUFycmF5RnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRVSW50MzJNdWx0aUFycmF5VG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRVSW50MzJNdWx0aUFycmF5VG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRVSW50MzJNdWx0aUFycmF5VG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVVJbnQ4TXVsdGlBcnJheUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVVJbnQ4TXVsdGlBcnJheUZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNyZWF0ZVVJbnQ4TXVsdGlBcnJheUZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRVSW50OE11bHRpQXJyYXlUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydFVJbnQ4TXVsdGlBcnJheVRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0VUludDhNdWx0aUFycmF5VG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U3RkX2RhdGF0eXBlc1BhY2thZ2UoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4gPEI+Z2V0U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzRmFjdG9yeS5odG1sI2dldFN0ZF9kYXRhdHlwZXNQYWNrYWdlKCkiPmdldFN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0ZF9kYXRhdHlwZXMgcGFja2FnZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UGFja2FnZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRQYWNrYWdlPC9IMz4KKzxQUkU+Cis8Rk9OVCBTSVpFPSItMSI+QERlcHJlY2F0ZWQKKzwvRk9OVD5wdWJsaWMgc3RhdGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPiA8Qj5nZXRQYWNrYWdlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEk+PC9JPgorPFA+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHBhY2thZ2U8L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViBDTEFTUyZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3JfZGV0YWlsIj5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MTU4MWUwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sCkBAIC0wLDAgKzEsMTM1MiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMwIENFVCAyMDEyIC0tPgorPFRJVExFPgorU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwO05FWFQgQ0xBU1M8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIFN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsCisgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyCisgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU1vZGVsRWxlbWVudEltcGwKKyAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5hbWVkRWxlbWVudEltcGwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVQYWNrYWdlSW1wbAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU5hbWVkRWxlbWVudCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZSwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVTdHJ1Y3R1cmFsRmVhdHVyZS5JbnRlcm5hbC5EeW5hbWljVmFsdWVIb2xkZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLkJhc2ljRXh0ZW5kZWRNZXRhRGF0YS5FUGFja2FnZUV4dGVuZGVkTWV0YURhdGEuSG9sZGVyLCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGw8L0I+PERUPmV4dGVuZHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRVBhY2thZ2VJbXBsPERUPmltcGxlbWVudHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPlBhY2thZ2U8L2I+LgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyLkR5bmFtaWM8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FQWRhcHRlckxpc3QmbHQ7RSBleHRlbmRzIGphdmEubGFuZy5PYmplY3QgJiBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyJmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FT2JzZXJ2YWJsZUFkYXB0ZXJMaXN0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UuRGVzY3JpcHRvciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlLlJlZ2lzdHJ5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LkVTdG9yZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNCT09MIj5CT09MPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNCWVRFIj5CWVRFPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNCWVRFX01VTFRJX0FSUkFZIj5CWVRFX01VTFRJX0FSUkFZPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNDSEFSIj5DSEFSPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNDT0xPUl9SR0JBIj5DT0xPUl9SR0JBPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNEVVJBVElPTiI+RFVSQVRJT048L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VJTlNUQU5DRSI+ZUlOU1RBTkNFPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNlTkFNRSI+ZU5BTUU8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VOU19QUkVGSVgiPmVOU19QUkVGSVg8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VOU19VUkkiPmVOU19VUkk8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0ZMT0FUMzIiPkZMT0FUMzI8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0ZMT0FUMzJfTVVMVElfQVJSQVkiPkZMT0FUMzJfTVVMVElfQVJSQVk8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0ZMT0FUNjQiPkZMT0FUNjQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0ZMT0FUNjRfTVVMVElfQVJSQVkiPkZMT0FUNjRfTVVMVElfQVJSQVk8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0hFQURFUiI+SEVBREVSPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNJTlQxNiI+SU5UMTY8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0lOVDE2X01VTFRJX0FSUkFZIj5JTlQxNl9NVUxUSV9BUlJBWTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjSU5UMzIiPklOVDMyPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNJTlQzMl9NVUxUSV9BUlJBWSI+SU5UMzJfTVVMVElfQVJSQVk8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI0lOVDY0Ij5JTlQ2NDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjSU5UNjRfTVVMVElfQVJSQVkiPklOVDY0X01VTFRJX0FSUkFZPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNJTlQ4Ij5JTlQ4PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNJTlQ4X01VTFRJX0FSUkFZIj5JTlQ4X01VTFRJX0FSUkFZPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNNVUxUSV9BUlJBWV9ESU1FTlNJT04iPk1VTFRJX0FSUkFZX0RJTUVOU0lPTjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjTVVMVElfQVJSQVlfTEFZT1VUIj5NVUxUSV9BUlJBWV9MQVlPVVQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI1NUUklORyI+U1RSSU5HPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNUSU1FIj5USU1FPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNVSUlOVDE2X01VTFRJX0FSUkFZIj5VSUlOVDE2X01VTFRJX0FSUkFZPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNVSU5UMTYiPlVJTlQxNjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjVUlOVDMyIj5VSU5UMzI8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI1VJTlQzMl9NVUxUSV9BUlJBWSI+VUlOVDMyX01VTFRJX0FSUkFZPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNVSU5UNjQiPlVJTlQ2NDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjVUlOVDY0X01VTFRJX0FSUkFZIj5VSU5UNjRfTVVMVElfQVJSQVk8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI1VJTlQ4Ij5VSU5UODwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjVUlOVDhfTVVMVElfQVJSQVkiPlVJTlQ4X01VTFRJX0FSUkFZPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVTdHJ1Y3R1cmFsRmVhdHVyZS5JbnRlcm5hbC5EeW5hbWljVmFsdWVIb2xkZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FU3RydWN0dXJhbEZlYXR1cmUuSW50ZXJuYWwuRHluYW1pY1ZhbHVlSG9sZGVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+TklMPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RU9QUE9TSVRFX0ZFQVRVUkVfQkFTRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNjcmVhdGVQYWNrYWdlQ29udGVudHMoKSI+Y3JlYXRlUGFja2FnZUNvbnRlbnRzPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyB0aGUgbWV0YS1tb2RlbCBvYmplY3RzIGZvciB0aGUgcGFja2FnZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEJvb2woKSI+Z2V0Qm9vbDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEJ5dGUoKSI+Z2V0Qnl0ZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEJ5dGVNdWx0aUFycmF5KCkiPmdldEJ5dGVNdWx0aUFycmF5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0Q2hhcigpIj5nZXRDaGFyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0Q29sb3JSR0JBKCkiPmdldENvbG9yUkdCQTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldER1cmF0aW9uKCkiPmdldER1cmF0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0RmxvYXQzMigpIj5nZXRGbG9hdDMyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0RmxvYXQzMk11bHRpQXJyYXkoKSI+Z2V0RmxvYXQzMk11bHRpQXJyYXk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRGbG9hdDY0KCkiPmdldEZsb2F0NjQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRGbG9hdDY0TXVsdGlBcnJheSgpIj5nZXRGbG9hdDY0TXVsdGlBcnJheTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEhlYWRlcigpIj5nZXRIZWFkZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRJbnQxNigpIj5nZXRJbnQxNjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEludDE2TXVsdGlBcnJheSgpIj5nZXRJbnQxNk11bHRpQXJyYXk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRJbnQzMigpIj5nZXRJbnQzMjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEludDMyTXVsdGlBcnJheSgpIj5nZXRJbnQzMk11bHRpQXJyYXk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRJbnQ2NCgpIj5nZXRJbnQ2NDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldEludDY0TXVsdGlBcnJheSgpIj5nZXRJbnQ2NE11bHRpQXJyYXk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRJbnQ4KCkiPmdldEludDg8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRJbnQ4TXVsdGlBcnJheSgpIj5nZXRJbnQ4TXVsdGlBcnJheTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldE11bHRpQXJyYXlEaW1lbnNpb24oKSI+Z2V0TXVsdGlBcnJheURpbWVuc2lvbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldE11bHRpQXJyYXlMYXlvdXQoKSI+Z2V0TXVsdGlBcnJheUxheW91dDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0U3RkX2RhdGF0eXBlc0ZhY3RvcnkoKSI+Z2V0U3RkX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRTdHJpbmcoKSI+Z2V0U3RyaW5nPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0VGltZSgpIj5nZXRUaW1lPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0VUlpbnQxNk11bHRpQXJyYXkoKSI+Z2V0VUlpbnQxNk11bHRpQXJyYXk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRVSW50MTYoKSI+Z2V0VUludDE2PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjZ2V0VUludDMyKCkiPmdldFVJbnQzMjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFVJbnQzMk11bHRpQXJyYXkoKSI+Z2V0VUludDMyTXVsdGlBcnJheTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFVJbnQ2NCgpIj5nZXRVSW50NjQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRVSW50NjRNdWx0aUFycmF5KCkiPmdldFVJbnQ2NE11bHRpQXJyYXk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNnZXRVSW50OCgpIj5nZXRVSW50ODwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2dldFVJbnQ4TXVsdGlBcnJheSgpIj5nZXRVSW50OE11bHRpQXJyYXk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2luaXQoKSI+aW5pdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMsIHJlZ2lzdGVycywgYW5kIGluaXRpYWxpemVzIHRoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhpcyBtb2RlbCwgYW5kIGZvciBhbnkgb3RoZXJzIHVwb24gd2hpY2ggaXQgZGVwZW5kcy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sI2luaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKSI+aW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50czwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NvbXBsZXRlIHRoZSBpbml0aWFsaXphdGlvbiBvZiB0aGUgcGFja2FnZSBhbmQgaXRzIG1ldGEtbW9kZWwuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FUGFja2FnZUltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVQYWNrYWdlSW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmJhc2ljR2V0RVN1cGVyUGFja2FnZSwgYmFzaWNTZXRFRmFjdG9yeUluc3RhbmNlLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUdldCwgZUludmVyc2VBZGQsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVTZXQsIGVTZXRQcm94eVVSSSwgZVVuc2V0LCBmcmVlemUsIGdldEVDbGFzc2lmaWVyLCBnZXRFQ2xhc3NpZmllckdlbiwgZ2V0RUNsYXNzaWZpZXJzLCBnZXRFRmFjdG9yeUluc3RhbmNlLCBnZXRFU3VicGFja2FnZXMsIGdldEVTdXBlclBhY2thZ2UsIGdldEV4dGVuZGVkTWV0YURhdGEsIGdldE5zUHJlZml4LCBnZXROc1VSSSwgc2V0RUZhY3RvcnlJbnN0YW5jZSwgc2V0RXh0ZW5kZWRNZXRhRGF0YSwgc2V0TmFtZXNwYWNlVVJJLCBzZXROc1ByZWZpeCwgc2V0TnNVUkksIHRvU3RyaW5nPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5hbWVkRWxlbWVudEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOYW1lZEVsZW1lbnRJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBnZXROYW1lLCBnZXROYW1lR2VuLCBzZXROYW1lPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU1vZGVsRWxlbWVudEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVNb2RlbEVsZW1lbnRJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZVVSSUZyYWdtZW50U2VnbWVudCwgZ2V0RUFubm90YXRpb24sIGdldEVBbm5vdGF0aW9uczwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lSW50ZXJuYWxDb250YWluZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmR5bmFtaWNHZXQsIGR5bmFtaWNTZXQsIGR5bmFtaWNVbnNldCwgZUFkYXB0ZXJzLCBlQ2xhc3MsIGVDb250YWluZXJGZWF0dXJlSUQsIGVEZWxpdmVyLCBlRGlyZWN0UmVzb3VyY2UsIGVJc1Byb3h5LCBlUHJveHlVUkksIGVTZXRDbGFzcywgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQmFzZVN0cnVjdHVyYWxGZWF0dXJlSUQsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVCYXNpY1NldENvbnRhaW5lciwgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGFpbnMsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZVJlbW92ZSwgZUludm9rZSwgZUlzU2V0LCBlT3BlbkdldCwgZU9wZW5Jc1NldCwgZU9wZW5TZXQsIGVPcGVuVW5zZXQsIGVSZXNvbHZlUHJveHksIGVSZXNvdXJjZSwgZVNldCwgZVNldFJlc291cmNlLCBlU2V0U3RvcmUsIGVTZXR0aW5nLCBlU3RvcmUsIGVVbnNldCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbElzU2V0LCBlVmlydHVhbFNldCwgZVZpcnR1YWxVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQsIGVOb3RpZnk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB3YWl0LCB3YWl0LCB3YWl0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0RUNsYXNzaWZpZXIsIGdldEVDbGFzc2lmaWVycywgZ2V0RUZhY3RvcnlJbnN0YW5jZSwgZ2V0RVN1YnBhY2thZ2VzLCBnZXRFU3VwZXJQYWNrYWdlLCBnZXROc1ByZWZpeCwgZ2V0TnNVUkksIHNldEVGYWN0b3J5SW5zdGFuY2UsIHNldE5zUHJlZml4LCBzZXROc1VSSTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FTmFtZWRFbGVtZW50Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVOYW1lZEVsZW1lbnQ8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXROYW1lLCBzZXROYW1lPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmdldEVBbm5vdGF0aW9uLCBnZXRFQW5ub3RhdGlvbnM8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iaW5pdCgpIj48IS0tIC0tPjwvQT48SDM+Citpbml0PC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPiA8Qj5pbml0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcywgcmVnaXN0ZXJzLCBhbmQgaW5pdGlhbGl6ZXMgdGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGlzIG1vZGVsLCBhbmQgZm9yIGFueSBvdGhlcnMgdXBvbiB3aGljaCBpdCBkZXBlbmRzLgorIAorIDxwPlRoaXMgbWV0aG9kIGlzIHVzZWQgdG8gaW5pdGlhbGl6ZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2VJTlNUQU5DRSI+PENPREU+U3RkX2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFPC9DT0RFPjwvQT4gd2hlbiB0aGF0IGZpZWxkIGlzIGFjY2Vzc2VkLgorIENsaWVudHMgc2hvdWxkIG5vdCBpbnZva2UgaXQgZGlyZWN0bHkuIEluc3RlYWQsIHRoZXkgc2hvdWxkIHNpbXBseSBhY2Nlc3MgdGhhdCBmaWVsZCB0byBvYnRhaW4gdGhlIHBhY2thZ2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZU5TX1VSSSI+PENPREU+U3RkX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwjY3JlYXRlUGFja2FnZUNvbnRlbnRzKCkiPjxDT0RFPmNyZWF0ZVBhY2thZ2VDb250ZW50cygpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCNpbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCkiPjxDT0RFPmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRVSW50MzIoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0VUludDMyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRVSW50MzI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFVJbnQzMigpIj5nZXRVSW50MzI8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdSBpbnQzMjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFRpbWUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0VGltZTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0VGltZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0VGltZSgpIj5nZXRUaW1lPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHRpbWU8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTdHJpbmcoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRTdHJpbmc8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFN0cmluZygpIj5nZXRTdHJpbmc8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Qnl0ZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRCeXRlPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRCeXRlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRCeXRlKCkiPmdldEJ5dGU8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgYnl0ZTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEZsb2F0NjQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0RmxvYXQ2NDwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0RmxvYXQ2NDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0RmxvYXQ2NCgpIj5nZXRGbG9hdDY0PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGZsb2F0NjQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRJbnQ4KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEludDg8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldEludDg8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEludDgoKSI+Z2V0SW50ODwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBpbnQ4PERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Qm9vbCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRCb29sPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRCb29sPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRCb29sKCkiPmdldEJvb2w8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgYm9vbDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFVJbnQ4KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFVJbnQ4PC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRVSW50ODwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0VUludDgoKSI+Z2V0VUludDg8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdSBpbnQ4PERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0VUludDE2KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFVJbnQxNjwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0VUludDE2PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRVSW50MTYoKSI+Z2V0VUludDE2PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHUgaW50MTY8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRJbnQzMigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRJbnQzMjwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0SW50MzI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEludDMyKCkiPmdldEludDMyPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGludDMyPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0SW50MTYoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0SW50MTY8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldEludDE2PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRJbnQxNigpIj5nZXRJbnQxNjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBpbnQxNjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldENoYXIoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Q2hhcjwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0Q2hhcjwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0Q2hhcigpIj5nZXRDaGFyPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGNoYXI8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXREdXJhdGlvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXREdXJhdGlvbjwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0RHVyYXRpb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldER1cmF0aW9uKCkiPmdldER1cmF0aW9uPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGR1cmF0aW9uPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0SW50NjQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0SW50NjQ8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldEludDY0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRJbnQ2NCgpIj5nZXRJbnQ2NDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBpbnQ2NDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFVJbnQ2NCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRVSW50NjQ8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFVJbnQ2NDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0VUludDY0KCkiPmdldFVJbnQ2NDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB1IGludDY0PERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RmxvYXQzMigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRGbG9hdDMyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRGbG9hdDMyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRGbG9hdDMyKCkiPmdldEZsb2F0MzI8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgZmxvYXQzMjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEhlYWRlcigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRIZWFkZXI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldEhlYWRlcjwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0SGVhZGVyKCkiPmdldEhlYWRlcjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBoZWFkZXI8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRNdWx0aUFycmF5RGltZW5zaW9uKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldE11bHRpQXJyYXlEaW1lbnNpb248L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldE11bHRpQXJyYXlEaW1lbnNpb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldE11bHRpQXJyYXlEaW1lbnNpb24oKSI+Z2V0TXVsdGlBcnJheURpbWVuc2lvbjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtdWx0aSBhcnJheSBkaW1lbnNpb248RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRNdWx0aUFycmF5TGF5b3V0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldE11bHRpQXJyYXlMYXlvdXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldE11bHRpQXJyYXlMYXlvdXQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldE11bHRpQXJyYXlMYXlvdXQoKSI+Z2V0TXVsdGlBcnJheUxheW91dDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtdWx0aSBhcnJheSBsYXlvdXQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRCeXRlTXVsdGlBcnJheSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRCeXRlTXVsdGlBcnJheTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0Qnl0ZU11bHRpQXJyYXk8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldEJ5dGVNdWx0aUFycmF5KCkiPmdldEJ5dGVNdWx0aUFycmF5PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGJ5dGUgbXVsdGkgYXJyYXk8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRDb2xvclJHQkEoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Q29sb3JSR0JBPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRDb2xvclJHQkE8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldENvbG9yUkdCQSgpIj5nZXRDb2xvclJHQkE8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgY29sb3IgcmdiYTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEZsb2F0MzJNdWx0aUFycmF5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEZsb2F0MzJNdWx0aUFycmF5PC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRGbG9hdDMyTXVsdGlBcnJheTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0RmxvYXQzMk11bHRpQXJyYXkoKSI+Z2V0RmxvYXQzMk11bHRpQXJyYXk8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgZmxvYXQzMiBtdWx0aSBhcnJheTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEludDMyTXVsdGlBcnJheSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRJbnQzMk11bHRpQXJyYXk8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldEludDMyTXVsdGlBcnJheTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0SW50MzJNdWx0aUFycmF5KCkiPmdldEludDMyTXVsdGlBcnJheTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBpbnQzMiBtdWx0aSBhcnJheTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEludDhNdWx0aUFycmF5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEludDhNdWx0aUFycmF5PC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRJbnQ4TXVsdGlBcnJheTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0SW50OE11bHRpQXJyYXkoKSI+Z2V0SW50OE11bHRpQXJyYXk8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgaW50OCBtdWx0aSBhcnJheTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEludDE2TXVsdGlBcnJheSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRJbnQxNk11bHRpQXJyYXk8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldEludDE2TXVsdGlBcnJheTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0SW50MTZNdWx0aUFycmF5KCkiPmdldEludDE2TXVsdGlBcnJheTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBpbnQxNiBtdWx0aSBhcnJheTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEludDY0TXVsdGlBcnJheSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRJbnQ2NE11bHRpQXJyYXk8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldEludDY0TXVsdGlBcnJheTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0SW50NjRNdWx0aUFycmF5KCkiPmdldEludDY0TXVsdGlBcnJheTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBpbnQ2NCBtdWx0aSBhcnJheTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEZsb2F0NjRNdWx0aUFycmF5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEZsb2F0NjRNdWx0aUFycmF5PC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRGbG9hdDY0TXVsdGlBcnJheTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0RmxvYXQ2NE11bHRpQXJyYXkoKSI+Z2V0RmxvYXQ2NE11bHRpQXJyYXk8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgZmxvYXQ2NCBtdWx0aSBhcnJheTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFVJbnQ2NE11bHRpQXJyYXkoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0VUludDY0TXVsdGlBcnJheTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0VUludDY0TXVsdGlBcnJheTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0VUludDY0TXVsdGlBcnJheSgpIj5nZXRVSW50NjRNdWx0aUFycmF5PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHUgaW50NjQgbXVsdGkgYXJyYXk8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRVSWludDE2TXVsdGlBcnJheSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRVSWludDE2TXVsdGlBcnJheTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUgPEI+Z2V0VUlpbnQxNk11bHRpQXJyYXk8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI2dldFVJaW50MTZNdWx0aUFycmF5KCkiPmdldFVJaW50MTZNdWx0aUFycmF5PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHUgaWludDE2IG11bHRpIGFycmF5PERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+U3RyaW5nPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0VUludDMyTXVsdGlBcnJheSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRVSW50MzJNdWx0aUFycmF5PC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSA8Qj5nZXRVSW50MzJNdWx0aUFycmF5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCNnZXRVSW50MzJNdWx0aUFycmF5KCkiPmdldFVJbnQzMk11bHRpQXJyYXk8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdSBpbnQzMiBtdWx0aSBhcnJheTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPlN0cmluZzwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFVJbnQ4TXVsdGlBcnJheSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRVSW50OE11bHRpQXJyYXk8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlIDxCPmdldFVJbnQ4TXVsdGlBcnJheTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0VUludDhNdWx0aUFycmF5KCkiPmdldFVJbnQ4TXVsdGlBcnJheTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB1IGludDggbXVsdGkgYXJyYXk8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5TdHJpbmc8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTdGRfZGF0YXR5cGVzRmFjdG9yeSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTdGRfZGF0YXR5cGVzRmFjdG9yeTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5PC9BPiA8Qj5nZXRTdGRfZGF0YXR5cGVzRmFjdG9yeTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjZ2V0U3RkX2RhdGF0eXBlc0ZhY3RvcnkoKSI+Z2V0U3RkX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RkX2RhdGF0eXBlcyBmYWN0b3J5PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVQYWNrYWdlQ29udGVudHMoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlUGFja2FnZUNvbnRlbnRzPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5jcmVhdGVQYWNrYWdlQ29udGVudHM8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIHRoZSBtZXRhLW1vZGVsIG9iamVjdHMgZm9yIHRoZSBwYWNrYWdlLiAgVGhpcyBtZXRob2QgaXMKKyBndWFyZGVkIHRvIGhhdmUgbm8gYWZmZWN0IG9uIGFueSBpbnZvY2F0aW9uIGJ1dCBpdHMgZmlyc3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpIj48IS0tIC0tPjwvQT48SDM+Citpbml0aWFsaXplUGFja2FnZUNvbnRlbnRzPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q29tcGxldGUgdGhlIGluaXRpYWxpemF0aW9uIG9mIHRoZSBwYWNrYWdlIGFuZCBpdHMgbWV0YS1tb2RlbC4gIFRoaXMKKyBtZXRob2QgaXMgZ3VhcmRlZCB0byBoYXZlIG5vIGFmZmVjdCBvbiBhbnkgaW52b2NhdGlvbiBidXQgaXRzIGZpcnN0LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7TkVYVCBDTEFTUzwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9jbGFzcy11c2UvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvY2xhc3MtdXNlL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIzZTQ4ZGIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvY2xhc3MtdXNlL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sCkBAIC0wLDAgKzEsMTQwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL2NsYXNzLXVzZS9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQj48L0gyPgorPC9DRU5URVI+CitObyB1c2FnZSBvZiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbAorPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvY2xhc3MtdXNlL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL2NsYXNzLXVzZS9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9jbGFzcy11c2UvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzBlMDdmYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9jbGFzcy11c2UvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwKQEAgLTAsMCArMSwxNDAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvY2xhc3MtdXNlL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9jbGFzcy11c2UvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1mcmFtZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtZnJhbWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xYTUwYzNkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtZnJhbWUuaHRtbApAQCAtMCwwICsxLDM0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCBwYWNrYWdlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiPgorPEZPTlQgc2l6ZT0iKzEiIENMQVNTPSJGcmFtZVRpdGxlRm9udCI+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGw8L0E+PC9GT05UPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgTk9XUkFQPjxGT05UIHNpemU9IisxIiBDTEFTUz0iRnJhbWVIZWFkaW5nRm9udCI+CitDbGFzc2VzPC9GT05UPiZuYnNwOworPEZPTlQgQ0xBU1M9IkZyYW1lSXRlbUZvbnQiPgorPEJSPgorPEEgSFJFRj0iU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9IlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGw8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKworCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDMwNDcyNgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbApAQCAtMCwwICsxLDE1OCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwgcGFja2FnZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdXNlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+UFJFViBQQUNLQUdFPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+TkVYVCBQQUNLQUdFPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8SDI+CitQYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwKKzwvSDI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+Q2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9BPjwvQj48L1REPgorPFREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCA8Yj5GYWN0b3J5PC9iPjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQT48L0I+PC9URD4KKzxURD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgPGI+UGFja2FnZTwvYj48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKworPFA+Cis8REw+Cis8L0RMPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdXNlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+UFJFViBQQUNLQUdFPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+TkVYVCBQQUNLQUdFPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MmQ0Nzk5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdHJlZS5odG1sCkBAIC0wLDAgKzEsMTc0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIENsYXNzIEhpZXJhcmNoeQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwgQ2xhc3MgSGllcmFyY2h5IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5UcmVlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9wYWNrYWdlLXRyZWUuaHRtbCI+PEI+UFJFVjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS10cmVlLmh0bWwiPjxCPk5FWFQ8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+CitIaWVyYXJjaHkgRm9yIFBhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbAorPC9IMj4KKzwvQ0VOVEVSPgorPERMPgorPERUPjxCPlBhY2thZ2UgSGllcmFyY2hpZXM6PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy10cmVlLmh0bWwiPkFsbCBQYWNrYWdlczwvQT48L0RMPgorPEhSPgorPEgyPgorQ2xhc3MgSGllcmFyY2h5Cis8L0gyPgorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+amF2YS5sYW5nLk9iamVjdDxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsIChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0KQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsIChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVN0cnVjdHVyYWxGZWF0dXJlLkludGVybmFsLkR5bmFtaWNWYWx1ZUhvbGRlcikKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXI8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTW9kZWxFbGVtZW50SW1wbCAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudCkKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVGYWN0b3J5SW1wbCAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3RvcnkpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj48Qj5TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzRmFjdG9yeTwvQT4pCis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5hbWVkRWxlbWVudEltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVOYW1lZEVsZW1lbnQpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FUGFja2FnZUltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuQmFzaWNFeHRlbmRlZE1ldGFEYXRhLkVQYWNrYWdlRXh0ZW5kZWRNZXRhRGF0YS5Ib2xkZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZSkKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPjxCPlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPikKKzwvVUw+Cis8L1VMPgorPC9VTD4KKzwvVUw+Cis8L1VMPgorPC9VTD4KKzwvVUw+Cis8L1VMPgorPC9VTD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlRyZWU8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL3BhY2thZ2UtdHJlZS5odG1sIj48Qj5QUkVWPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXRyZWUuaHRtbCI+PEI+TkVYVDwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS10cmVlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS11c2UuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXVzZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQwZjIwNjQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS11c2UuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBQYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIFBhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBQYWNrYWdlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbAorPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9wYWNrYWdlLWZyYW1lLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL3BhY2thZ2UtZnJhbWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wNDRkZWE5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9wYWNrYWdlLWZyYW1lLmh0bWwKQEAgLTAsMCArMSwzNiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyBwYWNrYWdlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiPgorPEZPTlQgc2l6ZT0iKzEiIENMQVNTPSJGcmFtZVRpdGxlRm9udCI+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlczwvQT48L0ZPTlQ+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBOT1dSQVA+PEZPTlQgc2l6ZT0iKzEiIENMQVNTPSJGcmFtZUhlYWRpbmdGb250Ij4KK0ludGVyZmFjZXM8L0ZPTlQ+Jm5ic3A7Cis8Rk9OVCBDTEFTUz0iRnJhbWVJdGVtRm9udCI+Cis8QlI+Cis8QSBIUkVGPSJTdGRfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPlN0ZF9kYXRhdHlwZXNGYWN0b3J5PC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9IlN0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0iU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvST48L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKworCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jNjVmYjg3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbApAQCAtMCwwICsxLDE2OSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyBwYWNrYWdlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdXNlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5QUkVWIFBBQ0tBR0U8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+TkVYVCBQQUNLQUdFPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPEgyPgorUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcworPC9IMj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5JbnRlcmZhY2UgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzRmFjdG9yeTwvQT48L0I+PC9URD4KKzxURD5UaGUgPGI+RmFjdG9yeTwvYj4gZm9yIHRoZSBtb2RlbC48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9BPjwvQj48L1REPgorPFREPlRoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhlIG1vZGVsLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0E+PC9CPjwvVEQ+Cis8VEQ+RGVmaW5lcyBsaXRlcmFscyBmb3IgdGhlIG1ldGEgb2JqZWN0cyB0aGF0IHJlcHJlc2VudAorIAorIGVhY2ggY2xhc3MsCisgZWFjaCBmZWF0dXJlIG9mIGVhY2ggY2xhc3MsCisgZWFjaCBlbnVtLAorIGFuZCBlYWNoIGRhdGEgdHlwZQorIAorIDwhPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7CisKKzxQPgorPERMPgorPC9ETD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlBhY2thZ2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+UFJFViBQQUNLQUdFPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPk5FWFQgUEFDS0FHRTwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9wYWNrYWdlLXRyZWUuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvcGFja2FnZS10cmVlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTM1Zjg0NAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvcGFja2FnZS10cmVlLmh0bWwKQEAgLTAsMCArMSwxNTkgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIENsYXNzIEhpZXJhcmNoeQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIENsYXNzIEhpZXJhcmNoeSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VHJlZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbCI+PEI+UFJFVjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdHJlZS5odG1sIj48Qj5ORVhUPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvcGFja2FnZS10cmVlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KK0hpZXJhcmNoeSBGb3IgUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcworPC9IMj4KKzwvQ0VOVEVSPgorPERMPgorPERUPjxCPlBhY2thZ2UgSGllcmFyY2hpZXM6PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy10cmVlLmh0bWwiPkFsbCBQYWNrYWdlczwvQT48L0RMPgorPEhSPgorPEgyPgorSW50ZXJmYWNlIEhpZXJhcmNoeQorPC9IMj4KKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudDxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeTxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPjxCPlN0ZF9kYXRhdHlwZXNGYWN0b3J5PC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVOYW1lZEVsZW1lbnQ8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj48Qj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PC9VTD4KKzwvVUw+Cis8L1VMPgorPC9VTD4KKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj48Qj5TdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQj48L0E+PC9VTD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlRyZWU8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS10cmVlLmh0bWwiPjxCPlBSRVY8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbCI+PEI+TkVYVDwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL3BhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9wYWNrYWdlLXVzZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9wYWNrYWdlLXVzZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjExZWJhZjgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL3BhY2thZ2UtdXNlLmh0bWwKQEAgLTAsMCArMSwxOTcgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcworPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9wYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgUGFja2FnZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlczwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXM8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitDbGFzc2VzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlczwvQT4gdXNlZCBieSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXM8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvY2xhc3MtdXNlL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPjxCPlN0ZF9kYXRhdHlwZXNGYWN0b3J5PC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSA8Yj5GYWN0b3J5PC9iPiBmb3IgdGhlIG1vZGVsLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvY2xhc3MtdXNlL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPjxCPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhlIG1vZGVsLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorQ2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXM8L0E+IHVzZWQgYnkgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9jbGFzcy11c2UvU3RkX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj48Qj5TdGRfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgPGI+RmFjdG9yeTwvYj4gZm9yIHRoZSBtb2RlbC48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2NsYXNzLXVzZS9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwiPjxCPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhlIG1vZGVsLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL3BhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdG9yU3lzdGVtLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA3MTRlMDAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sCkBAIC0wLDAgKzEsMjI4IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjYgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitBY3R1YXRvclN5c3RlbQorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRvclN5c3RlbSBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkFjdHVhdG9yU3lzdGVtIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0FjdHVhdG9yU3lzdGVtLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWIENMQVNTJm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWN0dWF0b3JTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJBY3R1YXRvclN5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvRk9OVD4KKzxCUj4KK0ludGVyZmFjZSBBY3R1YXRvclN5c3RlbTwvSDI+Cis8REw+Cis8RFQ+PEI+QWxsIFN1cGVyaW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBTdWJpbnRlcmZhY2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVuZ2luZVN5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIEltcGxlbWVudGluZyBDbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FjdHVhdG9yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFjdHVhdG9yU3lzdGVtSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5FbmdpbmVTeXN0ZW1JbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2hlZWxTeXN0ZW1JbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5BY3R1YXRvclN5c3RlbTwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BY3R1YXRvciBTeXN0ZW08L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QWN0dWF0b3JTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0QWN0dWF0b3JTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY1N5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsT3JpZW50YXRpb24oKSI+Z2V0TG9jYWxPcmllbnRhdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxQb3NpdGlvbigpIj5nZXRMb2NhbFBvc2l0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNzZXRMb2NhbE9yaWVudGF0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNzZXRMb2NhbFBvc2l0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMb2NhbFBvc2l0aW9uPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvQWN0dWF0b3JTeXN0ZW0uaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYgQ0xBU1MmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFjdHVhdG9yU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MmEzOTFhCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbApAQCAtMCwwICsxLDI3NiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI2IENFVCAyMDEyIC0tPgorPFRJVExFPgorQWdlbnQKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWdlbnQgaW50ZXJmYWNlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJBZ2VudCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9BZ2VudC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdG9yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJBZ2VudC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIEFnZW50PC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5BbGwgS25vd24gU3ViaW50ZXJmYWNlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSHVtYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkh1bWFuPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBlZGVzdHJpYW48L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90PC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBJbXBsZW1lbnRpbmcgQ2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BZ2VudEltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IdW1hbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5IdW1hbkltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QZWRlc3RyaWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBlZGVzdHJpYW5JbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RJbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5BZ2VudDwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFnZW50PC9iPjwvZW0+Jy4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKworIDxwPgorIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyA8dWw+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwjZ2V0TW92ZXNPdmVyKCkiPjxDT0RFPjxlbT5Nb3ZlcyBPdmVyPC9lbT48L0NPREU+PC9BPjwvbGk+CisgPC91bD4KKyA8L3A+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBZ2VudCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRBZ2VudCgpPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0Jmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdXJmYWNlPC9BPiZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwjZ2V0TW92ZXNPdmVyKCkiPmdldE1vdmVzT3ZlcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPk1vdmVzIE92ZXI8L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0LjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBoeXNpY2FsT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0RXZlbG92ZXNJbigpIj5nZXRFdmVsb3Zlc0luPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0SGFzU3VyZmFjZSgpIj5nZXRIYXNTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjc2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPnNldEhhc1N1cmZhY2U8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImdldE1vdmVzT3ZlcigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRNb3Zlc092ZXI8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdCZsdDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3VyZmFjZTwvQT4mZ3Q7IDxCPmdldE1vdmVzT3ZlcjwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPk1vdmVzIE92ZXI8L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0LgorIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5TdXJmYWNlPC9DT0RFPjwvQT4uCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5Nb3ZlcyBPdmVyPC9lbT4nIHJlZmVyZW5jZSBsaXN0IGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPk1vdmVzIE92ZXI8L2VtPicgcmVmZXJlbmNlIGxpc3QuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QWdlbnRfTW92ZXNPdmVyKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEFnZW50X01vdmVzT3ZlcigpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0FnZW50Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWN0dWF0b3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFnZW50Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjU3NjRiNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sCkBAIC0wLDAgKzEsNDU4IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjYgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitBbGdvcml0aG0KKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtIGludGVyZmFjZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iQWxnb3JpdGhtIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0FsZ29yaXRobS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFsZ29yaXRobS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIEFsZ29yaXRobTwvSDI+Cis8REw+Cis8RFQ+PEI+QWxsIFN1cGVyaW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5BbGwgS25vd24gSW1wbGVtZW50aW5nIENsYXNzZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFsZ29yaXRobUltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPkFsZ29yaXRobTwvQj48RFQ+ZXh0ZW5kcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFsZ29yaXRobTwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisKKyA8cD4KKyBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgPHVsPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNnZXRCYXNlX09wZXJhdGlvbigpIj48Q09ERT48ZW0+QmFzZSBPcGVyYXRpb248L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwjaXNJc0V4dGVybmFsKCkiPjxDT0RFPjxlbT5JcyBFeHRlcm5hbDwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNnZXRFeHRGdW5jdGlvbk5hbWUoKSI+PENPREU+PGVtPkV4dCBGdW5jdGlvbiBOYW1lPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI2dldFBhdGgoKSI+PENPREU+PGVtPlBhdGg8L2VtPjwvQ09ERT48L0E+PC9saT4KKyA8L3VsPgorIDwvcD4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEFsZ29yaXRobSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRBbGdvcml0aG0oKTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLnVtbDIudW1sLk9wZXJhdGlvbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwjZ2V0QmFzZV9PcGVyYXRpb24oKSI+Z2V0QmFzZV9PcGVyYXRpb248L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CYXNlIE9wZXJhdGlvbjwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI2dldEV4dEZ1bmN0aW9uTmFtZSgpIj5nZXRFeHRGdW5jdGlvbk5hbWU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5FeHQgRnVuY3Rpb24gTmFtZTwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI2dldFBhdGgoKSI+Z2V0UGF0aDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtib29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNpc0lzRXh0ZXJuYWwoKSI+aXNJc0V4dGVybmFsPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+SXMgRXh0ZXJuYWw8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNzZXRCYXNlX09wZXJhdGlvbihvcmcuZWNsaXBzZS51bWwyLnVtbC5PcGVyYXRpb24pIj5zZXRCYXNlX09wZXJhdGlvbjwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLk9wZXJhdGlvbiZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwjZ2V0QmFzZV9PcGVyYXRpb24oKSI+PENPREU+PGVtPkJhc2UgT3BlcmF0aW9uPC9lbT48L0NPREU+PC9BPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI3NldEV4dEZ1bmN0aW9uTmFtZShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0RXh0RnVuY3Rpb25OYW1lPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwjZ2V0RXh0RnVuY3Rpb25OYW1lKCkiPjxDT0RFPjxlbT5FeHQgRnVuY3Rpb24gTmFtZTwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNzZXRJc0V4dGVybmFsKGJvb2xlYW4pIj5zZXRJc0V4dGVybmFsPC9BPjwvQj4oYm9vbGVhbiZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwjaXNJc0V4dGVybmFsKCkiPjxDT0RFPjxlbT5JcyBFeHRlcm5hbDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNzZXRQYXRoKGphdmEubGFuZy5TdHJpbmcpIj5zZXRQYXRoPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwjZ2V0UGF0aCgpIj48Q09ERT48ZW0+UGF0aDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJnZXRCYXNlX09wZXJhdGlvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRCYXNlX09wZXJhdGlvbjwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UudW1sMi51bWwuT3BlcmF0aW9uIDxCPmdldEJhc2VfT3BlcmF0aW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QmFzZSBPcGVyYXRpb248L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkJhc2UgT3BlcmF0aW9uPC9lbT4nIHJlZmVyZW5jZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5CYXNlIE9wZXJhdGlvbjwvZW0+JyByZWZlcmVuY2UuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI3NldEJhc2VfT3BlcmF0aW9uKG9yZy5lY2xpcHNlLnVtbDIudW1sLk9wZXJhdGlvbikiPjxDT0RFPnNldEJhc2VfT3BlcmF0aW9uKE9wZXJhdGlvbik8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBbGdvcml0aG1fQmFzZV9PcGVyYXRpb24oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0QWxnb3JpdGhtX0Jhc2VfT3BlcmF0aW9uKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0QmFzZV9PcGVyYXRpb24ob3JnLmVjbGlwc2UudW1sMi51bWwuT3BlcmF0aW9uKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0QmFzZV9PcGVyYXRpb248L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0QmFzZV9PcGVyYXRpb248L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLk9wZXJhdGlvbiZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI2dldEJhc2VfT3BlcmF0aW9uKCkiPjxDT0RFPjxlbT5CYXNlIE9wZXJhdGlvbjwvZW0+PC9DT0RFPjwvQT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgT3BlcmF0aW9uPC9lbT4nIHJlZmVyZW5jZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwjZ2V0QmFzZV9PcGVyYXRpb24oKSI+PENPREU+Z2V0QmFzZV9PcGVyYXRpb24oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJpc0lzRXh0ZXJuYWwoKSI+PCEtLSAtLT48L0E+PEgzPgoraXNJc0V4dGVybmFsPC9IMz4KKzxQUkU+Citib29sZWFuIDxCPmlzSXNFeHRlcm5hbDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPklzIEV4dGVybmFsPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5JcyBFeHRlcm5hbDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+SXMgRXh0ZXJuYWw8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNzZXRJc0V4dGVybmFsKGJvb2xlYW4pIj48Q09ERT5zZXRJc0V4dGVybmFsKGJvb2xlYW4pPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QWxnb3JpdGhtX0lzRXh0ZXJuYWwoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0QWxnb3JpdGhtX0lzRXh0ZXJuYWwoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRJc0V4dGVybmFsKGJvb2xlYW4pIj48IS0tIC0tPjwvQT48SDM+CitzZXRJc0V4dGVybmFsPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldElzRXh0ZXJuYWw8L0I+KGJvb2xlYW4mbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNpc0lzRXh0ZXJuYWwoKSI+PENPREU+PGVtPklzIEV4dGVybmFsPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+SXMgRXh0ZXJuYWw8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNpc0lzRXh0ZXJuYWwoKSI+PENPREU+aXNJc0V4dGVybmFsKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RXh0RnVuY3Rpb25OYW1lKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEV4dEZ1bmN0aW9uTmFtZTwvSDM+Cis8UFJFPgoramF2YS5sYW5nLlN0cmluZyA8Qj5nZXRFeHRGdW5jdGlvbk5hbWU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5FeHQgRnVuY3Rpb24gTmFtZTwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+RXh0IEZ1bmN0aW9uIE5hbWU8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPkV4dCBGdW5jdGlvbiBOYW1lPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwjc2V0RXh0RnVuY3Rpb25OYW1lKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5zZXRFeHRGdW5jdGlvbk5hbWUoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEFsZ29yaXRobV9FeHRGdW5jdGlvbk5hbWUoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0QWxnb3JpdGhtX0V4dEZ1bmN0aW9uTmFtZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldEV4dEZ1bmN0aW9uTmFtZShqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0RXh0RnVuY3Rpb25OYW1lPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldEV4dEZ1bmN0aW9uTmFtZTwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI2dldEV4dEZ1bmN0aW9uTmFtZSgpIj48Q09ERT48ZW0+RXh0IEZ1bmN0aW9uIE5hbWU8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5FeHQgRnVuY3Rpb24gTmFtZTwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI2dldEV4dEZ1bmN0aW9uTmFtZSgpIj48Q09ERT5nZXRFeHRGdW5jdGlvbk5hbWUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRQYXRoKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBhdGg8L0gzPgorPFBSRT4KK2phdmEubGFuZy5TdHJpbmcgPEI+Z2V0UGF0aDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlBhdGg8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPlBhdGg8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNzZXRQYXRoKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5zZXRQYXRoKFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBbGdvcml0aG1fUGF0aCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRBbGdvcml0aG1fUGF0aCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFBhdGgoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFBhdGg8L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0UGF0aDwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI2dldFBhdGgoKSI+PENPREU+PGVtPlBhdGg8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5QYXRoPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwjZ2V0UGF0aCgpIj48Q09ERT5nZXRQYXRoKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvQWxnb3JpdGhtLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWxnb3JpdGhtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wMmM4M2I2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sCkBAIC0wLDAgKzEsMzQwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjYgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitBbGdvcml0aG1MaWJyYXJ5Cis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobUxpYnJhcnkgaW50ZXJmYWNlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJBbGdvcml0aG1MaWJyYXJ5IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0FsZ29yaXRobUxpYnJhcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWxnb3JpdGhtTGlicmFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIEFsZ29yaXRobUxpYnJhcnk8L0gyPgorPERMPgorPERUPjxCPkFsbCBTdXBlcmludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIEltcGxlbWVudGluZyBDbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWxnb3JpdGhtTGlicmFyeUltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPkFsZ29yaXRobUxpYnJhcnk8L0I+PERUPmV4dGVuZHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BbGdvcml0aG0gTGlicmFyeTwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisKKyA8cD4KKyBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgPHVsPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwjZ2V0QmFzZV9DbGFzcygpIj48Q09ERT48ZW0+QmFzZSBDbGFzczwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwjZ2V0UGF0aCgpIj48Q09ERT48ZW0+UGF0aDwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QWxnb3JpdGhtTGlicmFyeSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRBbGdvcml0aG1MaWJyYXJ5KCk8L0NPREU+PC9BPjwvREw+Cis8SFI+CisKKzxQPgorCis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwjZ2V0UGF0aCgpIj5nZXRQYXRoPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+UGF0aDwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwjZ2V0QmFzZV9DbGFzcygpIj48Q09ERT48ZW0+QmFzZSBDbGFzczwvZW0+PC9DT0RFPjwvQT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwjc2V0UGF0aChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0UGF0aDwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCNnZXRQYXRoKCkiPjxDT0RFPjxlbT5QYXRoPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImdldEJhc2VfQ2xhc3MoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QmFzZV9DbGFzczwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgPEI+Z2V0QmFzZV9DbGFzczwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkJhc2UgQ2xhc3M8L2VtPicgcmVmZXJlbmNlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgQ2xhc3M8L2VtPicgcmVmZXJlbmNlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPjxDT0RFPnNldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QWxnb3JpdGhtTGlicmFyeV9CYXNlX0NsYXNzKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEFsZ29yaXRobUxpYnJhcnlfQmFzZV9DbGFzcygpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj48IS0tIC0tPjwvQT48SDM+CitzZXRCYXNlX0NsYXNzPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldEJhc2VfQ2xhc3M8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+PENPREU+PGVtPkJhc2UgQ2xhc3M8L2VtPjwvQ09ERT48L0E+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5CYXNlIENsYXNzPC9lbT4nIHJlZmVyZW5jZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+PENPREU+Z2V0QmFzZV9DbGFzcygpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBhdGgoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UGF0aDwvSDM+Cis8UFJFPgoramF2YS5sYW5nLlN0cmluZyA8Qj5nZXRQYXRoPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+UGF0aDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+UGF0aDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+UGF0aDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCNzZXRQYXRoKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5zZXRQYXRoKFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBbGdvcml0aG1MaWJyYXJ5X1BhdGgoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0QWxnb3JpdGhtTGlicmFyeV9QYXRoKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0UGF0aChqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0UGF0aDwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRQYXRoPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sI2dldFBhdGgoKSI+PENPREU+PGVtPlBhdGg8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5QYXRoPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sI2dldFBhdGgoKSI+PENPREU+Z2V0UGF0aCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0FsZ29yaXRobUxpYnJhcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWxnb3JpdGhtTGlicmFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg4ZTE4ZjIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbApAQCAtMCwwICsxLDQ4MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI2IENFVCAyMDEyIC0tPgorPFRJVExFPgorQmxlbmRlck1vcnNlCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkJsZW5kZXJNb3JzZSBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkJsZW5kZXJNb3JzZSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9CbGVuZGVyTW9yc2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CdWlsZGluZy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJCbGVuZGVyTW9yc2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvRk9OVD4KKzxCUj4KK0ludGVyZmFjZSBCbGVuZGVyTW9yc2U8L0gyPgorPERMPgorPERUPjxCPkFsbCBTdXBlcmludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBsYXRmb3JtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTaW11bGF0b3I8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIEltcGxlbWVudGluZyBDbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5CbGVuZGVyTW9yc2VJbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5CbGVuZGVyTW9yc2U8L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTaW11bGF0b3I8L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QmxlbmRlciBNb3JzZTwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisKKyA8cD4KKyBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgPHVsPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNpc0RlYnVnTW9kZSgpIj48Q09ERT48ZW0+RGVidWcgTW9kZTwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNpc0RlYnVnRGlzcGxheSgpIj48Q09ERT48ZW0+RGVidWcgRGlzcGxheTwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNnZXRHcmF2aXR5KCkiPjxDT0RFPjxlbT5HcmF2aXR5PC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sI2dldF92aWV3cG9ydF9zaGFkZSgpIj48Q09ERT48ZW0+dmlld3BvcnQgc2hhZGU8L2VtPjwvQ09ERT48L0E+PC9saT4KKyA8L3VsPgorIDwvcD4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEJsZW5kZXJNb3JzZSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRCbGVuZGVyTW9yc2UoKTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjZ2V0X3ZpZXdwb3J0X3NoYWRlKCkiPmdldF92aWV3cG9ydF9zaGFkZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPnZpZXdwb3J0IHNoYWRlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sI2dldEdyYXZpdHkoKSI+Z2V0R3Jhdml0eTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkdyYXZpdHk8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtib29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNpc0RlYnVnRGlzcGxheSgpIj5pc0RlYnVnRGlzcGxheTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkRlYnVnIERpc3BsYXk8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtib29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNpc0RlYnVnTW9kZSgpIj5pc0RlYnVnTW9kZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkRlYnVnIE1vZGU8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNzZXRfdmlld3BvcnRfc2hhZGUob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNoYWRlKSI+c2V0X3ZpZXdwb3J0X3NoYWRlPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2hhZGU8L0E+Jm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNnZXRfdmlld3BvcnRfc2hhZGUoKSI+PENPREU+PGVtPnZpZXdwb3J0IHNoYWRlPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sI3NldERlYnVnRGlzcGxheShib29sZWFuKSI+c2V0RGVidWdEaXNwbGF5PC9BPjwvQj4oYm9vbGVhbiZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjaXNEZWJ1Z0Rpc3BsYXkoKSI+PENPREU+PGVtPkRlYnVnIERpc3BsYXk8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjc2V0RGVidWdNb2RlKGJvb2xlYW4pIj5zZXREZWJ1Z01vZGU8L0E+PC9CPihib29sZWFuJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNpc0RlYnVnTW9kZSgpIj48Q09ERT48ZW0+RGVidWcgTW9kZTwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNzZXRHcmF2aXR5KGphdmEubGFuZy5TdHJpbmcpIj5zZXRHcmF2aXR5PC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjZ2V0R3Jhdml0eSgpIj48Q09ERT48ZW0+R3Jhdml0eTwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBsYXRmb3JtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGxhdGZvcm08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwjZ2V0QmFzZV9Ob2RlKCkiPmdldEJhc2VfTm9kZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sI3NldEJhc2VfTm9kZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Ob2RlKSI+c2V0QmFzZV9Ob2RlPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJpc0RlYnVnTW9kZSgpIj48IS0tIC0tPjwvQT48SDM+Citpc0RlYnVnTW9kZTwvSDM+Cis8UFJFPgorYm9vbGVhbiA8Qj5pc0RlYnVnTW9kZTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkRlYnVnIE1vZGU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkRlYnVnIE1vZGU8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPkRlYnVnIE1vZGU8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNzZXREZWJ1Z01vZGUoYm9vbGVhbikiPjxDT0RFPnNldERlYnVnTW9kZShib29sZWFuKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEJsZW5kZXJNb3JzZV9EZWJ1Z01vZGUoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0QmxlbmRlck1vcnNlX0RlYnVnTW9kZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldERlYnVnTW9kZShib29sZWFuKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0RGVidWdNb2RlPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldERlYnVnTW9kZTwvQj4oYm9vbGVhbiZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sI2lzRGVidWdNb2RlKCkiPjxDT0RFPjxlbT5EZWJ1ZyBNb2RlPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+RGVidWcgTW9kZTwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sI2lzRGVidWdNb2RlKCkiPjxDT0RFPmlzRGVidWdNb2RlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaXNEZWJ1Z0Rpc3BsYXkoKSI+PCEtLSAtLT48L0E+PEgzPgoraXNEZWJ1Z0Rpc3BsYXk8L0gzPgorPFBSRT4KK2Jvb2xlYW4gPEI+aXNEZWJ1Z0Rpc3BsYXk8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5EZWJ1ZyBEaXNwbGF5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5EZWJ1ZyBEaXNwbGF5PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5EZWJ1ZyBEaXNwbGF5PC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjc2V0RGVidWdEaXNwbGF5KGJvb2xlYW4pIj48Q09ERT5zZXREZWJ1Z0Rpc3BsYXkoYm9vbGVhbik8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRCbGVuZGVyTW9yc2VfRGVidWdEaXNwbGF5KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEJsZW5kZXJNb3JzZV9EZWJ1Z0Rpc3BsYXkoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXREZWJ1Z0Rpc3BsYXkoYm9vbGVhbikiPjwhLS0gLS0+PC9BPjxIMz4KK3NldERlYnVnRGlzcGxheTwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXREZWJ1Z0Rpc3BsYXk8L0I+KGJvb2xlYW4mbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNpc0RlYnVnRGlzcGxheSgpIj48Q09ERT48ZW0+RGVidWcgRGlzcGxheTwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkRlYnVnIERpc3BsYXk8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNpc0RlYnVnRGlzcGxheSgpIj48Q09ERT5pc0RlYnVnRGlzcGxheSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEdyYXZpdHkoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0R3Jhdml0eTwvSDM+Cis8UFJFPgoramF2YS5sYW5nLlN0cmluZyA8Qj5nZXRHcmF2aXR5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+R3Jhdml0eTwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+R3Jhdml0eTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+R3Jhdml0eTwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sI3NldEdyYXZpdHkoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPnNldEdyYXZpdHkoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEJsZW5kZXJNb3JzZV9HcmF2aXR5KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEJsZW5kZXJNb3JzZV9HcmF2aXR5KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0R3Jhdml0eShqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0R3Jhdml0eTwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRHcmF2aXR5PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjZ2V0R3Jhdml0eSgpIj48Q09ERT48ZW0+R3Jhdml0eTwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkdyYXZpdHk8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNnZXRHcmF2aXR5KCkiPjxDT0RFPmdldEdyYXZpdHkoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRfdmlld3BvcnRfc2hhZGUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0X3ZpZXdwb3J0X3NoYWRlPC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT4gPEI+Z2V0X3ZpZXdwb3J0X3NoYWRlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+dmlld3BvcnQgc2hhZGU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyBUaGUgZGVmYXVsdCB2YWx1ZSBpcyA8Y29kZT4iV0lSRUZSQU1FIjwvY29kZT4uCisgVGhlIGxpdGVyYWxzIGFyZSBmcm9tIHRoZSBlbnVtZXJhdGlvbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5TaGFkZTwvQ09ERT48L0E+LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+dmlld3BvcnQgc2hhZGU8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPnZpZXdwb3J0IHNoYWRlPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5TaGFkZTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNzZXRfdmlld3BvcnRfc2hhZGUob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNoYWRlKSI+PENPREU+c2V0X3ZpZXdwb3J0X3NoYWRlKFNoYWRlKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEJsZW5kZXJNb3JzZV9fdmlld3BvcnRfc2hhZGUoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0QmxlbmRlck1vcnNlX192aWV3cG9ydF9zaGFkZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldF92aWV3cG9ydF9zaGFkZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2hhZGUpIj48IS0tIC0tPjwvQT48SDM+CitzZXRfdmlld3BvcnRfc2hhZGU8L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0X3ZpZXdwb3J0X3NoYWRlPC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT4mbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNnZXRfdmlld3BvcnRfc2hhZGUoKSI+PENPREU+PGVtPnZpZXdwb3J0IHNoYWRlPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+dmlld3BvcnQgc2hhZGU8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlNoYWRlPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sI2dldF92aWV3cG9ydF9zaGFkZSgpIj48Q09ERT5nZXRfdmlld3BvcnRfc2hhZGUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9CbGVuZGVyTW9yc2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CdWlsZGluZy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJCbGVuZGVyTW9yc2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQnVpbGRpbmcuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0J1aWxkaW5nLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzI1NDYwNQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0J1aWxkaW5nLmh0bWwKQEAgLTAsMCArMSwyMjUgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyNiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK0J1aWxkaW5nCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkJ1aWxkaW5nIGludGVyZmFjZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iQnVpbGRpbmciOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvQnVpbGRpbmcuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CdWlsZGluZy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkJ1aWxkaW5nLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIEJ1aWxkaW5nPC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5BbGwgS25vd24gSW1wbGVtZW50aW5nIENsYXNzZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQnVpbGRpbmdJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QnVpbGRpbmdJbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5CdWlsZGluZzwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkJ1aWxkaW5nPC9iPjwvZW0+Jy4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEJ1aWxkaW5nKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEJ1aWxkaW5nKCk8L0NPREU+PC9BPjwvREw+Cis8SFI+CisKKzxQPgorCis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBoeXNpY2FsT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0RXZlbG92ZXNJbigpIj5nZXRFdmVsb3Zlc0luPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0SGFzU3VyZmFjZSgpIj5nZXRIYXNTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjc2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPnNldEhhc1N1cmZhY2U8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9CdWlsZGluZy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0J1aWxkaW5nLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQnVpbGRpbmcuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmVkM2YyOAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sCkBAIC0wLDAgKzEsNjYzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjYgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitDYW1lcmFTeXN0ZW0KKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2FtZXJhU3lzdGVtIGludGVyZmFjZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iQ2FtZXJhU3lzdGVtIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0NhbWVyYVN5c3RlbS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0J1aWxkaW5nLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkNhbWVyYVN5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIENhbWVyYVN5c3RlbTwvSDI+Cis8REw+Cis8RFQ+PEI+QWxsIFN1cGVyaW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5JbWFnZVNlbnNvclN5c3RlbTwvQT4sIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvclN5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5BbGwgS25vd24gSW1wbGVtZW50aW5nIENsYXNzZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkNhbWVyYVN5c3RlbUltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPkNhbWVyYVN5c3RlbTwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkltYWdlU2Vuc29yU3lzdGVtPC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNhbWVyYSBTeXN0ZW08L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCisgPHA+CisgVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0V2lkdGgoKSI+PENPREU+PGVtPldpZHRoPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldEhlaWdodCgpIj48Q09ERT48ZW0+SGVpZ2h0PC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldEFscGhhX3UoKSI+PENPREU+PGVtPkFscGhhIHU8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0QWxwaGFfdigpIj48Q09ERT48ZW0+QWxwaGEgdjwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRVMCgpIj48Q09ERT48ZW0+VTA8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0VjAoKSI+PENPREU+PGVtPlYwPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldENvbG9yX2Zvcm1hdCgpIj48Q09ERT48ZW0+Q29sb3IgZm9ybWF0PC9lbT48L0NPREU+PC9BPjwvbGk+CisgPC91bD4KKyA8L3A+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDYW1lcmFTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0Q2FtZXJhU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8SFI+CisKKzxQPgorCis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRBbHBoYV91KCkiPmdldEFscGhhX3U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5BbHBoYSB1PC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0QWxwaGFfdigpIj5nZXRBbHBoYV92PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QWxwaGEgdjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldENvbG9yX2Zvcm1hdCgpIj5nZXRDb2xvcl9mb3JtYXQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Db2xvciBmb3JtYXQ8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRIZWlnaHQoKSI+Z2V0SGVpZ2h0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+SGVpZ2h0PC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0VTAoKSI+Z2V0VTA8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5VMDwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldFYwKCkiPmdldFYwPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VjA8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRXaWR0aCgpIj5nZXRXaWR0aDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPldpZHRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI3NldEFscGhhX3UoamF2YS5sYW5nLlN0cmluZykiPnNldEFscGhhX3U8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRBbHBoYV91KCkiPjxDT0RFPjxlbT5BbHBoYSB1PC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI3NldEFscGhhX3YoamF2YS5sYW5nLlN0cmluZykiPnNldEFscGhhX3Y8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRBbHBoYV92KCkiPjxDT0RFPjxlbT5BbHBoYSB2PC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI3NldENvbG9yX2Zvcm1hdChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0Q29sb3JfZm9ybWF0PC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0Q29sb3JfZm9ybWF0KCkiPjxDT0RFPjxlbT5Db2xvciBmb3JtYXQ8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjc2V0SGVpZ2h0KGphdmEubGFuZy5TdHJpbmcpIj5zZXRIZWlnaHQ8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRIZWlnaHQoKSI+PENPREU+PGVtPkhlaWdodDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNzZXRVMChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0VTA8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRVMCgpIj48Q09ERT48ZW0+VTA8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjc2V0VjAoamF2YS5sYW5nLlN0cmluZykiPnNldFYwPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0VjAoKSI+PENPREU+PGVtPlYwPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI3NldFdpZHRoKGphdmEubGFuZy5TdHJpbmcpIj5zZXRXaWR0aDwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldFdpZHRoKCkiPjxDT0RFPjxlbT5XaWR0aDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvclN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JTeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI2dldEZyZXF1ZW5jeSgpIj5nZXRGcmVxdWVuY3k8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjZ2V0SWRlbnRpZmllcigpIj5nZXRJZGVudGlmaWVyPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI3NldEZyZXF1ZW5jeShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0RnJlcXVlbmN5PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI3NldElkZW50aWZpZXIoamF2YS5sYW5nLlN0cmluZykiPnNldElkZW50aWZpZXI8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbE9yaWVudGF0aW9uKCkiPmdldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsUG9zaXRpb24oKSI+Z2V0TG9jYWxQb3NpdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjc2V0TG9jYWxPcmllbnRhdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxPcmllbnRhdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjc2V0TG9jYWxQb3NpdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxQb3NpdGlvbjwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0V2lkdGgoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2lkdGg8L0gzPgorPFBSRT4KK2phdmEubGFuZy5TdHJpbmcgPEI+Z2V0V2lkdGg8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5XaWR0aDwvYj48L2VtPicgYXR0cmlidXRlLgorIFRoZSBkZWZhdWx0IHZhbHVlIGlzIDxjb2RlPiIwIjwvY29kZT4uCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5XaWR0aDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+V2lkdGg8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNzZXRXaWR0aChqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+c2V0V2lkdGgoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENhbWVyYVN5c3RlbV9XaWR0aCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRDYW1lcmFTeXN0ZW1fV2lkdGgoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRXaWR0aChqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0V2lkdGg8L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0V2lkdGg8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRXaWR0aCgpIj48Q09ERT48ZW0+V2lkdGg8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5XaWR0aDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldFdpZHRoKCkiPjxDT0RFPmdldFdpZHRoKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0SGVpZ2h0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEhlaWdodDwvSDM+Cis8UFJFPgoramF2YS5sYW5nLlN0cmluZyA8Qj5nZXRIZWlnaHQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5IZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkhlaWdodDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+SGVpZ2h0PC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjc2V0SGVpZ2h0KGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5zZXRIZWlnaHQoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENhbWVyYVN5c3RlbV9IZWlnaHQoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0Q2FtZXJhU3lzdGVtX0hlaWdodCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldEhlaWdodChqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0SGVpZ2h0PC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldEhlaWdodDwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldEhlaWdodCgpIj48Q09ERT48ZW0+SGVpZ2h0PC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+SGVpZ2h0PC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0SGVpZ2h0KCkiPjxDT0RFPmdldEhlaWdodCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEFscGhhX3UoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QWxwaGFfdTwvSDM+Cis8UFJFPgoramF2YS5sYW5nLlN0cmluZyA8Qj5nZXRBbHBoYV91PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QWxwaGEgdTwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+QWxwaGEgdTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+QWxwaGEgdTwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI3NldEFscGhhX3UoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPnNldEFscGhhX3UoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENhbWVyYVN5c3RlbV9BbHBoYV91KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldENhbWVyYVN5c3RlbV9BbHBoYV91KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0QWxwaGFfdShqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0QWxwaGFfdTwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRBbHBoYV91PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0QWxwaGFfdSgpIj48Q09ERT48ZW0+QWxwaGEgdTwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkFscGhhIHU8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRBbHBoYV91KCkiPjxDT0RFPmdldEFscGhhX3UoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRBbHBoYV92KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEFscGhhX3Y8L0gzPgorPFBSRT4KK2phdmEubGFuZy5TdHJpbmcgPEI+Z2V0QWxwaGFfdjwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkFscGhhIHY8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkFscGhhIHY8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPkFscGhhIHY8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNzZXRBbHBoYV92KGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5zZXRBbHBoYV92KFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDYW1lcmFTeXN0ZW1fQWxwaGFfdigpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRDYW1lcmFTeXN0ZW1fQWxwaGFfdigpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldEFscGhhX3YoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldEFscGhhX3Y8L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0QWxwaGFfdjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldEFscGhhX3YoKSI+PENPREU+PGVtPkFscGhhIHY8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5BbHBoYSB2PC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0QWxwaGFfdigpIj48Q09ERT5nZXRBbHBoYV92KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0VTAoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0VTA8L0gzPgorPFBSRT4KK2phdmEubGFuZy5TdHJpbmcgPEI+Z2V0VTA8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5VMDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+VTA8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPlUwPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjc2V0VTAoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPnNldFUwKFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDYW1lcmFTeXN0ZW1fVTAoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0Q2FtZXJhU3lzdGVtX1UwKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0VTAoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFUwPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldFUwPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0VTAoKSI+PENPREU+PGVtPlUwPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+VTA8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRVMCgpIj48Q09ERT5nZXRVMCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFYwKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFYwPC9IMz4KKzxQUkU+CitqYXZhLmxhbmcuU3RyaW5nIDxCPmdldFYwPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VjA8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlYwPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5WMDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI3NldFYwKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5zZXRWMChTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q2FtZXJhU3lzdGVtX1YwKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldENhbWVyYVN5c3RlbV9WMCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFYwKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRWMDwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRWMDwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldFYwKCkiPjxDT0RFPjxlbT5WMDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlYwPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0VjAoKSI+PENPREU+Z2V0VjAoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRDb2xvcl9mb3JtYXQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Q29sb3JfZm9ybWF0PC9IMz4KKzxQUkU+CitqYXZhLmxhbmcuU3RyaW5nIDxCPmdldENvbG9yX2Zvcm1hdDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkNvbG9yIGZvcm1hdDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+Q29sb3IgZm9ybWF0PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5Db2xvciBmb3JtYXQ8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNzZXRDb2xvcl9mb3JtYXQoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPnNldENvbG9yX2Zvcm1hdChTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q2FtZXJhU3lzdGVtX0NvbG9yX2Zvcm1hdCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRDYW1lcmFTeXN0ZW1fQ29sb3JfZm9ybWF0KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0Q29sb3JfZm9ybWF0KGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRDb2xvcl9mb3JtYXQ8L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0Q29sb3JfZm9ybWF0PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0Q29sb3JfZm9ybWF0KCkiPjxDT0RFPjxlbT5Db2xvciBmb3JtYXQ8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5Db2xvciBmb3JtYXQ8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRDb2xvcl9mb3JtYXQoKSI+PENPREU+Z2V0Q29sb3JfZm9ybWF0KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvQ2FtZXJhU3lzdGVtLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQnVpbGRpbmcuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbGxlY3Rpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQ2FtZXJhU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbGxlY3Rpb24uaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbGxlY3Rpb24uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ODYwMTkxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sCkBAIC0wLDAgKzEsMjgxIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjcgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitDb2xsZWN0aW9uCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNvbGxlY3Rpb24gaW50ZXJmYWNlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJDb2xsZWN0aW9uIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0NvbGxlY3Rpb24uaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbXBvc2VkRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQ29sbGVjdGlvbi5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIENvbGxlY3Rpb248L0gyPgorPERMPgorPERUPjxCPkFsbCBTdXBlcmludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIEltcGxlbWVudGluZyBDbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbGxlY3Rpb25JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q29sbGVjdGlvbkltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPkNvbGxlY3Rpb248L0I+PERUPmV4dGVuZHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Db2xsZWN0aW9uPC9iPjwvZW0+Jy4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKworIDxwPgorIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyA8dWw+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbGxlY3Rpb24uaHRtbCNnZXRCYXNlX0RhdGFUeXBlKCkiPjxDT0RFPjxlbT5CYXNlIERhdGEgVHlwZTwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q29sbGVjdGlvbigpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRDb2xsZWN0aW9uKCk8L0NPREU+PC9BPjwvREw+Cis8SFI+CisKKzxQPgorCis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS51bWwyLnVtbC5EYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sI2dldEJhc2VfRGF0YVR5cGUoKSI+Z2V0QmFzZV9EYXRhVHlwZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkJhc2UgRGF0YSBUeXBlPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sI3NldEJhc2VfRGF0YVR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUpIj5zZXRCYXNlX0RhdGFUeXBlPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbGxlY3Rpb24uaHRtbCNnZXRCYXNlX0RhdGFUeXBlKCkiPjxDT0RFPjxlbT5CYXNlIERhdGEgVHlwZTwvZW0+PC9DT0RFPjwvQT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJnZXRCYXNlX0RhdGFUeXBlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEJhc2VfRGF0YVR5cGU8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlIDxCPmdldEJhc2VfRGF0YVR5cGU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CYXNlIERhdGEgVHlwZTwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+QmFzZSBEYXRhIFR5cGU8L2VtPicgcmVmZXJlbmNlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgRGF0YSBUeXBlPC9lbT4nIHJlZmVyZW5jZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sI3NldEJhc2VfRGF0YVR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUpIj48Q09ERT5zZXRCYXNlX0RhdGFUeXBlKERhdGFUeXBlKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENvbGxlY3Rpb25fQmFzZV9EYXRhVHlwZSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRDb2xsZWN0aW9uX0Jhc2VfRGF0YVR5cGUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRCYXNlX0RhdGFUeXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0QmFzZV9EYXRhVHlwZTwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRCYXNlX0RhdGFUeXBlPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5EYXRhVHlwZSZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbGxlY3Rpb24uaHRtbCNnZXRCYXNlX0RhdGFUeXBlKCkiPjxDT0RFPjxlbT5CYXNlIERhdGEgVHlwZTwvZW0+PC9DT0RFPjwvQT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgRGF0YSBUeXBlPC9lbT4nIHJlZmVyZW5jZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sI2dldEJhc2VfRGF0YVR5cGUoKSI+PENPREU+Z2V0QmFzZV9EYXRhVHlwZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0NvbGxlY3Rpb24uaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbXBvc2VkRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQ29sbGVjdGlvbi5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbXBvc2VkRGF0YS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE3OGJkOWUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbApAQCAtMCwwICsxLDI4MSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI3IENFVCAyMDEyIC0tPgorPFRJVExFPgorQ29tcG9zZWREYXRhCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNvbXBvc2VkRGF0YSBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkNvbXBvc2VkRGF0YSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9Db21wb3NlZERhdGEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbXBvc2VkRGF0YS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkNvbXBvc2VkRGF0YS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIENvbXBvc2VkRGF0YTwvSDI+Cis8REw+Cis8RFQ+PEI+QWxsIFN1cGVyaW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5BbGwgS25vd24gSW1wbGVtZW50aW5nIENsYXNzZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29tcG9zZWREYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkNvbXBvc2VkRGF0YUltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPkNvbXBvc2VkRGF0YTwvQj48RFQ+ZXh0ZW5kcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNvbXBvc2VkIERhdGE8L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCisgPHA+CisgVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcG9zZWREYXRhLmh0bWwjZ2V0QmFzZV9EYXRhVHlwZSgpIj48Q09ERT48ZW0+QmFzZSBEYXRhIFR5cGU8L2VtPjwvQ09ERT48L0E+PC9saT4KKyA8L3VsPgorIDwvcD4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENvbXBvc2VkRGF0YSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRDb21wb3NlZERhdGEoKTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCNnZXRCYXNlX0RhdGFUeXBlKCkiPmdldEJhc2VfRGF0YVR5cGU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CYXNlIERhdGEgVHlwZTwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbXBvc2VkRGF0YS5odG1sI3NldEJhc2VfRGF0YVR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUpIj5zZXRCYXNlX0RhdGFUeXBlPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbXBvc2VkRGF0YS5odG1sI2dldEJhc2VfRGF0YVR5cGUoKSI+PENPREU+PGVtPkJhc2UgRGF0YSBUeXBlPC9lbT48L0NPREU+PC9BPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImdldEJhc2VfRGF0YVR5cGUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QmFzZV9EYXRhVHlwZTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUgPEI+Z2V0QmFzZV9EYXRhVHlwZTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkJhc2UgRGF0YSBUeXBlPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5CYXNlIERhdGEgVHlwZTwvZW0+JyByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+QmFzZSBEYXRhIFR5cGU8L2VtPicgcmVmZXJlbmNlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCNzZXRCYXNlX0RhdGFUeXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlKSI+PENPREU+c2V0QmFzZV9EYXRhVHlwZShEYXRhVHlwZSk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDb21wb3NlZERhdGFfQmFzZV9EYXRhVHlwZSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRDb21wb3NlZERhdGFfQmFzZV9EYXRhVHlwZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldEJhc2VfRGF0YVR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUpIj48IS0tIC0tPjwvQT48SDM+CitzZXRCYXNlX0RhdGFUeXBlPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldEJhc2VfRGF0YVR5cGU8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcG9zZWREYXRhLmh0bWwjZ2V0QmFzZV9EYXRhVHlwZSgpIj48Q09ERT48ZW0+QmFzZSBEYXRhIFR5cGU8L2VtPjwvQ09ERT48L0E+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5CYXNlIERhdGEgVHlwZTwvZW0+JyByZWZlcmVuY2UuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbXBvc2VkRGF0YS5odG1sI2dldEJhc2VfRGF0YVR5cGUoKSI+PENPREU+Z2V0QmFzZV9EYXRhVHlwZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0NvbXBvc2VkRGF0YS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbGxlY3Rpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcG9zZWREYXRhLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQ29tcG9zZWREYXRhLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMzNhYzU4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sCkBAIC0wLDAgKzEsNDE3IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjcgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitDeWNhYlRLCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkN5Y2FiVEsgaW50ZXJmYWNlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJDeWNhYlRLIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0N5Y2FiVEsuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkN5Y2FiVEsuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvRk9OVD4KKzxCUj4KK0ludGVyZmFjZSBDeWNhYlRLPC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGF0Zm9ybTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU2ltdWxhdG9yPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBJbXBsZW1lbnRpbmcgQ2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkN5Y2FiVEtJbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5DeWNhYlRLPC9CPjxEVD5leHRlbmRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU2ltdWxhdG9yPC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkN5Y2FiIFRLPC9iPjwvZW0+Jy4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKworIDxwPgorIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyA8dWw+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCNpc1VzZVJlYWxUaW1lKCkiPjxDT0RFPjxlbT5Vc2UgUmVhbCBUaW1lPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCNnZXRUaW1lU3RlcCgpIj48Q09ERT48ZW0+VGltZSBTdGVwPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCNnZXRUaW1lRmFjdG9yKCkiPjxDT0RFPjxlbT5UaW1lIEZhY3RvcjwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q3ljYWJUSygpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRDeWNhYlRLKCk8L0NPREU+PC9BPjwvREw+Cis8SFI+CisKKzxQPgorCis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwjZ2V0VGltZUZhY3RvcigpIj5nZXRUaW1lRmFjdG9yPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VGltZSBGYWN0b3I8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwjZ2V0VGltZVN0ZXAoKSI+Z2V0VGltZVN0ZXA8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5UaW1lIFN0ZXA8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtib29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwjaXNVc2VSZWFsVGltZSgpIj5pc1VzZVJlYWxUaW1lPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VXNlIFJlYWwgVGltZTwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCNzZXRUaW1lRmFjdG9yKGphdmEubGFuZy5TdHJpbmcpIj5zZXRUaW1lRmFjdG9yPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sI2dldFRpbWVGYWN0b3IoKSI+PENPREU+PGVtPlRpbWUgRmFjdG9yPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCNzZXRUaW1lU3RlcChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0VGltZVN0ZXA8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwjZ2V0VGltZVN0ZXAoKSI+PENPREU+PGVtPlRpbWUgU3RlcDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwjc2V0VXNlUmVhbFRpbWUoYm9vbGVhbikiPnNldFVzZVJlYWxUaW1lPC9BPjwvQj4oYm9vbGVhbiZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sI2lzVXNlUmVhbFRpbWUoKSI+PENPREU+PGVtPlVzZSBSZWFsIFRpbWU8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QbGF0Zm9ybSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBsYXRmb3JtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sI2dldEJhc2VfTm9kZSgpIj5nZXRCYXNlX05vZGU8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCNzZXRCYXNlX05vZGUob3JnLmVjbGlwc2UudW1sMi51bWwuTm9kZSkiPnNldEJhc2VfTm9kZTwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iaXNVc2VSZWFsVGltZSgpIj48IS0tIC0tPjwvQT48SDM+Citpc1VzZVJlYWxUaW1lPC9IMz4KKzxQUkU+Citib29sZWFuIDxCPmlzVXNlUmVhbFRpbWU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Vc2UgUmVhbCBUaW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5Vc2UgUmVhbCBUaW1lPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5Vc2UgUmVhbCBUaW1lPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sI3NldFVzZVJlYWxUaW1lKGJvb2xlYW4pIj48Q09ERT5zZXRVc2VSZWFsVGltZShib29sZWFuKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEN5Y2FiVEtfVXNlUmVhbFRpbWUoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0Q3ljYWJUS19Vc2VSZWFsVGltZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFVzZVJlYWxUaW1lKGJvb2xlYW4pIj48IS0tIC0tPjwvQT48SDM+CitzZXRVc2VSZWFsVGltZTwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRVc2VSZWFsVGltZTwvQj4oYm9vbGVhbiZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCNpc1VzZVJlYWxUaW1lKCkiPjxDT0RFPjxlbT5Vc2UgUmVhbCBUaW1lPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+VXNlIFJlYWwgVGltZTwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCNpc1VzZVJlYWxUaW1lKCkiPjxDT0RFPmlzVXNlUmVhbFRpbWUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRUaW1lU3RlcCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRUaW1lU3RlcDwvSDM+Cis8UFJFPgoramF2YS5sYW5nLlN0cmluZyA8Qj5nZXRUaW1lU3RlcDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlRpbWUgU3RlcDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+VGltZSBTdGVwPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5UaW1lIFN0ZXA8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwjc2V0VGltZVN0ZXAoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPnNldFRpbWVTdGVwKFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDeWNhYlRLX1RpbWVTdGVwKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEN5Y2FiVEtfVGltZVN0ZXAoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRUaW1lU3RlcChqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0VGltZVN0ZXA8L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0VGltZVN0ZXA8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwjZ2V0VGltZVN0ZXAoKSI+PENPREU+PGVtPlRpbWUgU3RlcDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlRpbWUgU3RlcDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCNnZXRUaW1lU3RlcCgpIj48Q09ERT5nZXRUaW1lU3RlcCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFRpbWVGYWN0b3IoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0VGltZUZhY3RvcjwvSDM+Cis8UFJFPgoramF2YS5sYW5nLlN0cmluZyA8Qj5nZXRUaW1lRmFjdG9yPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VGltZSBGYWN0b3I8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlRpbWUgRmFjdG9yPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5UaW1lIEZhY3RvcjwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCNzZXRUaW1lRmFjdG9yKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5zZXRUaW1lRmFjdG9yKFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDeWNhYlRLX1RpbWVGYWN0b3IoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0Q3ljYWJUS19UaW1lRmFjdG9yKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0VGltZUZhY3RvcihqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0VGltZUZhY3RvcjwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRUaW1lRmFjdG9yPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sI2dldFRpbWVGYWN0b3IoKSI+PENPREU+PGVtPlRpbWUgRmFjdG9yPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+VGltZSBGYWN0b3I8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwjZ2V0VGltZUZhY3RvcigpIj48Q09ERT5nZXRUaW1lRmFjdG9yKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvQ3ljYWJUSy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbXBvc2VkRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQ3ljYWJUSy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUzMTE0ZTgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbApAQCAtMCwwICsxLDYxNyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI3IENFVCAyMDEyIC0tPgorPFRJVExFPgorRGF0YUZsb3dEaXJlY3Rpb25LaW5kCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRhdGFGbG93RGlyZWN0aW9uS2luZCBjbGFzcyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iRGF0YUZsb3dEaXJlY3Rpb25LaW5kIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJEYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2VudW1fY29uc3RhbnRfc3VtbWFyeSI+RU5VTSBDT05TVEFOVFM8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwOzxBIEhSRUY9IiNlbnVtX2NvbnN0YW50X2RldGFpbCI+RU5VTSBDT05TVEFOVFM8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9kZXRhaWwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorRW51bSBEYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPmphdmEubGFuZy5FbnVtJmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0E+Jmd0OworICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5qYXZhLmlvLlNlcmlhbGl6YWJsZSwgamF2YS5sYW5nLkNvbXBhcmFibGUmbHQ7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93RGlyZWN0aW9uS2luZDwvQT4mZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGVudW0gPEI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9CPjxEVD5leHRlbmRzIGphdmEubGFuZy5FbnVtJmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0E+Jmd0OzxEVD5pbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FbnVtZXJhdG9yPC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbGl0ZXJhbHMgb2YgdGhlIGVudW1lcmF0aW9uICc8ZW0+PGI+RGF0YSBGbG93IERpcmVjdGlvbiBLaW5kPC9iPjwvZW0+JywKKyBhbmQgdXRpbGl0eSBtZXRob2RzIGZvciB3b3JraW5nIHdpdGggdGhlbS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldERhdGFGbG93RGlyZWN0aW9uS2luZCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXREYXRhRmxvd0RpcmVjdGlvbktpbmQoKTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09PT09IEVOVU0gQ09OU1RBTlQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZW51bV9jb25zdGFudF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RW51bSBDb25zdGFudCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCNJTiI+SU48L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlICc8ZW0+PGI+SW48L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwjT1VUIj5PVVQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlICc8ZW0+PGI+T3V0PC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdDwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sI0lOX1ZBTFVFIj5JTl9WQUxVRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgJzxlbT48Yj5JbjwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sI09VVF9WQUxVRSI+T1VUX1ZBTFVFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSAnPGVtPjxiPk91dDwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLnV0aWwuTGlzdCZsdDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPiZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sI1ZBTFVFUyI+VkFMVUVTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcHVibGljIHJlYWQtb25seSBsaXN0IG9mIGFsbCB0aGUgJzxlbT48Yj5EYXRhIEZsb3cgRGlyZWN0aW9uIEtpbmQ8L2I+PC9lbT4nIGVudW1lcmF0b3JzPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwjZ2V0KGludCkiPmdldDwvQT48L0I+KGludCZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgJzxlbT48Yj5EYXRhIEZsb3cgRGlyZWN0aW9uIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGludGVnZXIgdmFsdWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93RGlyZWN0aW9uS2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sI2dldChqYXZhLmxhbmcuU3RyaW5nKSI+Z2V0PC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO2xpdGVyYWwpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSAnPGVtPjxiPkRhdGEgRmxvdyBEaXJlY3Rpb24gS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbGl0ZXJhbCB2YWx1ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwjZ2V0QnlOYW1lKGphdmEubGFuZy5TdHJpbmcpIj5nZXRCeU5hbWU8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmFtZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlICc8ZW0+PGI+RGF0YSBGbG93IERpcmVjdGlvbiBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sI2dldExpdGVyYWwoKSI+Z2V0TGl0ZXJhbDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwjZ2V0TmFtZSgpIj5nZXROYW1lPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sI2dldFZhbHVlKCkiPmdldFZhbHVlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCN0b1N0cmluZygpIj50b1N0cmluZzwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIGxpdGVyYWwgdmFsdWUgb2YgdGhlIGVudW1lcmF0b3IsIHdoaWNoIGlzIGl0cyBzdHJpbmcgcmVwcmVzZW50YXRpb248L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93RGlyZWN0aW9uS2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sI3ZhbHVlT2YoamF2YS5sYW5nLlN0cmluZykiPnZhbHVlT2Y8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmFtZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIGVudW0gY29uc3RhbnQgb2YgdGhpcyB0eXBlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPltdPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCN2YWx1ZXMoKSI+dmFsdWVzPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhbiBhcnJheSBjb250YWluaW5nIHRoZSBjb25zdGFudHMgb2YgdGhpcyBlbnVtIHR5cGUsIGluCit0aGUgb3JkZXIgdGhleSdyZSBkZWNsYXJlZC48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5FbnVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuRW51bTwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmNvbXBhcmVUbywgZXF1YWxzLCBnZXREZWNsYXJpbmdDbGFzcywgaGFzaENvZGUsIG5hbWUsIG9yZGluYWwsIHZhbHVlT2Y8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0Q2xhc3MsIG5vdGlmeSwgbm90aWZ5QWxsLCB3YWl0LCB3YWl0LCB3YWl0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IEVOVU0gQ09OU1RBTlQgREVUQUlMID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJlbnVtX2NvbnN0YW50X2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPkVudW0gQ29uc3RhbnQgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9IklOIj48IS0tIC0tPjwvQT48SDM+CitJTjwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPiA8Qj5JTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgJzxlbT48Yj5JbjwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sI0lOX1ZBTFVFIj48Q09ERT5JTl9WQUxVRTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9Ik9VVCI+PCEtLSAtLT48L0E+PEgzPgorT1VUPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGZpbmFsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0E+IDxCPk9VVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgJzxlbT48Yj5PdXQ8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCNPVVRfVkFMVUUiPjxDT0RFPk9VVF9WQUxVRTwvQ09ERT48L0E+PC9ETD4KKzwvREw+CisKKzwhLS0gPT09PT09PT09PT09IEZJRUxEIERFVEFJTCA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9IklOX1ZBTFVFIj48IS0tIC0tPjwvQT48SDM+CitJTl9WQUxVRTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgPEI+SU5fVkFMVUU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlICc8ZW0+PGI+SW48L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiAnPGVtPjxiPkluPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdCBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwjSU4iPjxDT0RFPklOPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRhdGFGbG93RGlyZWN0aW9uS2luZC5JTl9WQUxVRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJPVVRfVkFMVUUiPjwhLS0gLS0+PC9BPjxIMz4KK09VVF9WQUxVRTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgPEI+T1VUX1ZBTFVFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPk91dDwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mICc8ZW0+PGI+T3V0PC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdCBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwjT1VUIj48Q09ERT5PVVQ8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGF0YUZsb3dEaXJlY3Rpb25LaW5kLk9VVF9WQUxVRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJWQUxVRVMiPjwhLS0gLS0+PC9BPjxIMz4KK1ZBTFVFUzwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCBqYXZhLnV0aWwuTGlzdCZsdDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPiZndDsgPEI+VkFMVUVTPC9CPjwvUFJFPgorPERMPgorPEREPkEgcHVibGljIHJlYWQtb25seSBsaXN0IG9mIGFsbCB0aGUgJzxlbT48Yj5EYXRhIEZsb3cgRGlyZWN0aW9uIEtpbmQ8L2I+PC9lbT4nIGVudW1lcmF0b3JzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9InZhbHVlcygpIj48IS0tIC0tPjwvQT48SDM+Cit2YWx1ZXM8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93RGlyZWN0aW9uS2luZDwvQT5bXSA8Qj52YWx1ZXM8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIGFuIGFycmF5IGNvbnRhaW5pbmcgdGhlIGNvbnN0YW50cyBvZiB0aGlzIGVudW0gdHlwZSwgaW4KK3RoZSBvcmRlciB0aGV5J3JlIGRlY2xhcmVkLiAgVGhpcyBtZXRob2QgbWF5IGJlIHVzZWQgdG8gaXRlcmF0ZQorb3ZlciB0aGUgY29uc3RhbnRzIGFzIGZvbGxvd3M6Cis8cHJlPgorZm9yKERhdGFGbG93RGlyZWN0aW9uS2luZCBjIDogRGF0YUZsb3dEaXJlY3Rpb25LaW5kLnZhbHVlcygpKQorICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oYyk7Cis8L3ByZT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hbiBhcnJheSBjb250YWluaW5nIHRoZSBjb25zdGFudHMgb2YgdGhpcyBlbnVtIHR5cGUsIGluCit0aGUgb3JkZXIgdGhleSdyZSBkZWNsYXJlZDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0idmFsdWVPZihqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgordmFsdWVPZjwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPiA8Qj52YWx1ZU9mPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmFtZSk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBlbnVtIGNvbnN0YW50IG9mIHRoaXMgdHlwZSB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZS4KK1RoZSBzdHJpbmcgbXVzdCBtYXRjaCA8ST5leGFjdGx5PC9JPiBhbiBpZGVudGlmaWVyIHVzZWQgdG8gZGVjbGFyZSBhbgorZW51bSBjb25zdGFudCBpbiB0aGlzIHR5cGUuICAoRXh0cmFuZW91cyB3aGl0ZXNwYWNlIGNoYXJhY3RlcnMgYXJlIAorbm90IHBlcm1pdHRlZC4pCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5hbWU8L0NPREU+IC0gdGhlIG5hbWUgb2YgdGhlIGVudW0gY29uc3RhbnQgdG8gYmUgcmV0dXJuZWQuCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBlbnVtIGNvbnN0YW50IHdpdGggdGhlIHNwZWNpZmllZCBuYW1lCis8RFQ+PEI+VGhyb3dzOjwvQj4KKzxERD48Q09ERT5qYXZhLmxhbmcuSWxsZWdhbEFyZ3VtZW50RXhjZXB0aW9uPC9DT0RFPiAtIGlmIHRoaXMgZW51bSB0eXBlIGhhcyBubyBjb25zdGFudAord2l0aCB0aGUgc3BlY2lmaWVkIG5hbWU8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldChqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0E+IDxCPmdldDwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO2xpdGVyYWwpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgJzxlbT48Yj5EYXRhIEZsb3cgRGlyZWN0aW9uIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGxpdGVyYWwgdmFsdWUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0QnlOYW1lKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitnZXRCeU5hbWU8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93RGlyZWN0aW9uS2luZDwvQT4gPEI+Z2V0QnlOYW1lPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmFtZSk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSAnPGVtPjxiPkRhdGEgRmxvdyBEaXJlY3Rpb24gS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXQoaW50KSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0E+IDxCPmdldDwvQj4oaW50Jm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgJzxlbT48Yj5EYXRhIEZsb3cgRGlyZWN0aW9uIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGludGVnZXIgdmFsdWUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0VmFsdWUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0VmFsdWU8L0gzPgorPFBSRT4KK3B1YmxpYyBpbnQgPEI+Z2V0VmFsdWU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5nZXRWYWx1ZTwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FbnVtZXJhdG9yPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWU8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldE5hbWUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TmFtZTwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0TmFtZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmdldE5hbWU8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG5hbWU8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldExpdGVyYWwoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TGl0ZXJhbDwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0TGl0ZXJhbDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmdldExpdGVyYWw8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGxpdGVyYWw8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InRvU3RyaW5nKCkiPjwhLS0gLS0+PC9BPjxIMz4KK3RvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj50b1N0cmluZzwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIGxpdGVyYWwgdmFsdWUgb2YgdGhlIGVudW1lcmF0b3IsIHdoaWNoIGlzIGl0cyBzdHJpbmcgcmVwcmVzZW50YXRpb24uCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT50b1N0cmluZzwvQ09ERT4gaW4gY2xhc3MgPENPREU+amF2YS5sYW5nLkVudW0mbHQ7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93RGlyZWN0aW9uS2luZDwvQT4mZ3Q7PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkRhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZW51bV9jb25zdGFudF9zdW1tYXJ5Ij5FTlVNIENPTlNUQU5UUzwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX3N1bW1hcnkiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7PEEgSFJFRj0iI2VudW1fY29uc3RhbnRfZGV0YWlsIj5FTlVNIENPTlNUQU5UUzwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjJlOWNiYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sCkBAIC0wLDAgKzEsMzUzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjcgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitEYXRhRmxvd1BvcnQKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGF0YUZsb3dQb3J0IGludGVyZmFjZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iRGF0YUZsb3dQb3J0IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0RhdGFGbG93UG9ydC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJEYXRhRmxvd1BvcnQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvRk9OVD4KKzxCUj4KK0ludGVyZmFjZSBEYXRhRmxvd1BvcnQ8L0gyPgorPERMPgorPERUPjxCPkFsbCBTdXBlcmludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UG9ydDwvQT48L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5BbGwgS25vd24gSW1wbGVtZW50aW5nIENsYXNzZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRGF0YUZsb3dQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkRhdGFGbG93UG9ydEltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPkRhdGFGbG93UG9ydDwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UG9ydDwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5EYXRhIEZsb3cgUG9ydDwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisKKyA8cD4KKyBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgPHVsPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCNnZXREaXJlY3Rpb24oKSI+PENPREU+PGVtPkRpcmVjdGlvbjwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCNnZXRCdWZmZXJTaXplKCkiPjxDT0RFPjxlbT5CdWZmZXIgU2l6ZTwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0RGF0YUZsb3dQb3J0KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldERhdGFGbG93UG9ydCgpPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCNnZXRCdWZmZXJTaXplKCkiPmdldEJ1ZmZlclNpemU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CdWZmZXIgU2l6ZTwvYj48L2VtPicgYXR0cmlidXRlLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwjZ2V0RGlyZWN0aW9uKCkiPmdldERpcmVjdGlvbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkRpcmVjdGlvbjwvYj48L2VtPicgYXR0cmlidXRlLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCNzZXRCdWZmZXJTaXplKGludCkiPnNldEJ1ZmZlclNpemU8L0E+PC9CPihpbnQmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sI2dldEJ1ZmZlclNpemUoKSI+PENPREU+PGVtPkJ1ZmZlciBTaXplPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sI3NldERpcmVjdGlvbihvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGF0YUZsb3dEaXJlY3Rpb25LaW5kKSI+c2V0RGlyZWN0aW9uPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93RGlyZWN0aW9uS2luZDwvQT4mbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sI2dldERpcmVjdGlvbigpIj48Q09ERT48ZW0+RGlyZWN0aW9uPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG9ydCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UG9ydDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sI2dldEJhc2VfUG9ydCgpIj5nZXRCYXNlX1BvcnQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sI2dldFN5bmNocm9uaXphdGlvblBvbGljeSgpIj5nZXRTeW5jaHJvbml6YXRpb25Qb2xpY3k8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sI3NldEJhc2VfUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+c2V0QmFzZV9Qb3J0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCNzZXRTeW5jaHJvbml6YXRpb25Qb2xpY3kob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5bmNocm9uaXphdGlvbktpbmQpIj5zZXRTeW5jaHJvbml6YXRpb25Qb2xpY3k8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJnZXREaXJlY3Rpb24oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0RGlyZWN0aW9uPC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPiA8Qj5nZXREaXJlY3Rpb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5EaXJlY3Rpb248L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyBUaGUgbGl0ZXJhbHMgYXJlIGZyb20gdGhlIGVudW1lcmF0aW9uIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0NPREU+PC9BPi4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkRpcmVjdGlvbjwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+RGlyZWN0aW9uPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sI3NldERpcmVjdGlvbihvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGF0YUZsb3dEaXJlY3Rpb25LaW5kKSI+PENPREU+c2V0RGlyZWN0aW9uKERhdGFGbG93RGlyZWN0aW9uS2luZCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXREYXRhRmxvd1BvcnRfRGlyZWN0aW9uKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldERhdGFGbG93UG9ydF9EaXJlY3Rpb24oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXREaXJlY3Rpb24ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRhdGFGbG93RGlyZWN0aW9uS2luZCkiPjwhLS0gLS0+PC9BPjxIMz4KK3NldERpcmVjdGlvbjwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXREaXJlY3Rpb248L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0E+Jm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwjZ2V0RGlyZWN0aW9uKCkiPjxDT0RFPjxlbT5EaXJlY3Rpb248L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5EaXJlY3Rpb248L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwjZ2V0RGlyZWN0aW9uKCkiPjxDT0RFPmdldERpcmVjdGlvbigpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEJ1ZmZlclNpemUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QnVmZmVyU2l6ZTwvSDM+Cis8UFJFPgoraW50IDxCPmdldEJ1ZmZlclNpemU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CdWZmZXIgU2l6ZTwvYj48L2VtPicgYXR0cmlidXRlLgorIFRoZSBkZWZhdWx0IHZhbHVlIGlzIDxjb2RlPiIwIjwvY29kZT4uCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5CdWZmZXIgU2l6ZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+QnVmZmVyIFNpemU8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCNzZXRCdWZmZXJTaXplKGludCkiPjxDT0RFPnNldEJ1ZmZlclNpemUoaW50KTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldERhdGFGbG93UG9ydF9CdWZmZXJTaXplKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldERhdGFGbG93UG9ydF9CdWZmZXJTaXplKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0QnVmZmVyU2l6ZShpbnQpIj48IS0tIC0tPjwvQT48SDM+CitzZXRCdWZmZXJTaXplPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldEJ1ZmZlclNpemU8L0I+KGludCZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sI2dldEJ1ZmZlclNpemUoKSI+PENPREU+PGVtPkJ1ZmZlciBTaXplPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+QnVmZmVyIFNpemU8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCNnZXRCdWZmZXJTaXplKCkiPjxDT0RFPmdldEJ1ZmZlclNpemUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9EYXRhRmxvd1BvcnQuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRGF0YUZsb3dQb3J0Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmRhZWYyOQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sCkBAIC0wLDAgKzEsNTk0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjcgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitFbmdpbmVTeXN0ZW0KKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRW5naW5lU3lzdGVtIGludGVyZmFjZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iRW5naW5lU3lzdGVtIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0VuZ2luZVN5c3RlbS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRW5naW5lU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0ZPTlQ+Cis8QlI+CitJbnRlcmZhY2UgRW5naW5lU3lzdGVtPC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWN0dWF0b3JTeXN0ZW08L0E+LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBJbXBsZW1lbnRpbmcgQ2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+RW5naW5lU3lzdGVtSW1wbDwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBpbnRlcmZhY2UgPEI+RW5naW5lU3lzdGVtPC9CPjxEVD5leHRlbmRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWN0dWF0b3JTeXN0ZW08L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+RW5naW5lIFN5c3RlbTwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisKKyA8cD4KKyBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgPHVsPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRWZWhpY2xlVHJhY3Rpb24oKSI+PENPREU+PGVtPlZlaGljbGUgVHJhY3Rpb248L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0TWF4RW5naW5lRm9yY2UoKSI+PENPREU+PGVtPk1heCBFbmdpbmUgRm9yY2U8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0TWF4QnJlYWtpbmdGb3JjZSgpIj48Q09ERT48ZW0+TWF4IEJyZWFraW5nIEZvcmNlPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI2dldE1heEFsbG93ZWRTdGVlcmluZygpIj48Q09ERT48ZW0+TWF4IEFsbG93ZWQgU3RlZXJpbmc8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0TWF4QWxsb3dlZFZlbG9jaXR5KCkiPjxDT0RFPjxlbT5NYXggQWxsb3dlZCBWZWxvY2l0eTwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRHZWFyX3JhdGlvbigpIj48Q09ERT48ZW0+R2VhciByYXRpb248L2VtPjwvQ09ERT48L0E+PC9saT4KKyA8L3VsPgorIDwvcD4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEVuZ2luZVN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRFbmdpbmVTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI2dldEdlYXJfcmF0aW9uKCkiPmdldEdlYXJfcmF0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+R2VhciByYXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhBbGxvd2VkU3RlZXJpbmcoKSI+Z2V0TWF4QWxsb3dlZFN0ZWVyaW5nPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TWF4IEFsbG93ZWQgU3RlZXJpbmc8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhBbGxvd2VkVmVsb2NpdHkoKSI+Z2V0TWF4QWxsb3dlZFZlbG9jaXR5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TWF4IEFsbG93ZWQgVmVsb2NpdHk8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhCcmVha2luZ0ZvcmNlKCkiPmdldE1heEJyZWFraW5nRm9yY2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5NYXggQnJlYWtpbmcgRm9yY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhFbmdpbmVGb3JjZSgpIj5nZXRNYXhFbmdpbmVGb3JjZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPk1heCBFbmdpbmUgRm9yY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRWZWhpY2xlVHJhY3Rpb24oKSI+Z2V0VmVoaWNsZVRyYWN0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VmVoaWNsZSBUcmFjdGlvbjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI3NldEdlYXJfcmF0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRHZWFyX3JhdGlvbjwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI2dldEdlYXJfcmF0aW9uKCkiPjxDT0RFPjxlbT5HZWFyIHJhdGlvbjwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNzZXRNYXhBbGxvd2VkU3RlZXJpbmcoamF2YS5sYW5nLlN0cmluZykiPnNldE1heEFsbG93ZWRTdGVlcmluZzwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI2dldE1heEFsbG93ZWRTdGVlcmluZygpIj48Q09ERT48ZW0+TWF4IEFsbG93ZWQgU3RlZXJpbmc8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjc2V0TWF4QWxsb3dlZFZlbG9jaXR5KGphdmEubGFuZy5TdHJpbmcpIj5zZXRNYXhBbGxvd2VkVmVsb2NpdHk8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhBbGxvd2VkVmVsb2NpdHkoKSI+PENPREU+PGVtPk1heCBBbGxvd2VkIFZlbG9jaXR5PC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI3NldE1heEJyZWFraW5nRm9yY2UoamF2YS5sYW5nLlN0cmluZykiPnNldE1heEJyZWFraW5nRm9yY2U8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhCcmVha2luZ0ZvcmNlKCkiPjxDT0RFPjxlbT5NYXggQnJlYWtpbmcgRm9yY2U8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjc2V0TWF4RW5naW5lRm9yY2UoamF2YS5sYW5nLlN0cmluZykiPnNldE1heEVuZ2luZUZvcmNlPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0TWF4RW5naW5lRm9yY2UoKSI+PENPREU+PGVtPk1heCBFbmdpbmUgRm9yY2U8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjc2V0VmVoaWNsZVRyYWN0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRWZWhpY2xlVHJhY3Rpb248L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRWZWhpY2xlVHJhY3Rpb24oKSI+PENPREU+PGVtPlZlaGljbGUgVHJhY3Rpb248L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxPcmllbnRhdGlvbigpIj5nZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbFBvc2l0aW9uKCkiPmdldExvY2FsUG9zaXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsT3JpZW50YXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsUG9zaXRpb248L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImdldFZlaGljbGVUcmFjdGlvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRWZWhpY2xlVHJhY3Rpb248L0gzPgorPFBSRT4KK2phdmEubGFuZy5TdHJpbmcgPEI+Z2V0VmVoaWNsZVRyYWN0aW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VmVoaWNsZSBUcmFjdGlvbjwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+VmVoaWNsZSBUcmFjdGlvbjwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+VmVoaWNsZSBUcmFjdGlvbjwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI3NldFZlaGljbGVUcmFjdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+c2V0VmVoaWNsZVRyYWN0aW9uKFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRFbmdpbmVTeXN0ZW1fVmVoaWNsZVRyYWN0aW9uKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEVuZ2luZVN5c3RlbV9WZWhpY2xlVHJhY3Rpb24oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRWZWhpY2xlVHJhY3Rpb24oamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFZlaGljbGVUcmFjdGlvbjwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRWZWhpY2xlVHJhY3Rpb248L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRWZWhpY2xlVHJhY3Rpb24oKSI+PENPREU+PGVtPlZlaGljbGUgVHJhY3Rpb248L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5WZWhpY2xlIFRyYWN0aW9uPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0VmVoaWNsZVRyYWN0aW9uKCkiPjxDT0RFPmdldFZlaGljbGVUcmFjdGlvbigpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldE1heEVuZ2luZUZvcmNlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldE1heEVuZ2luZUZvcmNlPC9IMz4KKzxQUkU+CitqYXZhLmxhbmcuU3RyaW5nIDxCPmdldE1heEVuZ2luZUZvcmNlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TWF4IEVuZ2luZSBGb3JjZTwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+TWF4IEVuZ2luZSBGb3JjZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+TWF4IEVuZ2luZSBGb3JjZTwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI3NldE1heEVuZ2luZUZvcmNlKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5zZXRNYXhFbmdpbmVGb3JjZShTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0RW5naW5lU3lzdGVtX01heEVuZ2luZUZvcmNlKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEVuZ2luZVN5c3RlbV9NYXhFbmdpbmVGb3JjZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldE1heEVuZ2luZUZvcmNlKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRNYXhFbmdpbmVGb3JjZTwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRNYXhFbmdpbmVGb3JjZTwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI2dldE1heEVuZ2luZUZvcmNlKCkiPjxDT0RFPjxlbT5NYXggRW5naW5lIEZvcmNlPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TWF4IEVuZ2luZSBGb3JjZTwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI2dldE1heEVuZ2luZUZvcmNlKCkiPjxDT0RFPmdldE1heEVuZ2luZUZvcmNlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TWF4QnJlYWtpbmdGb3JjZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRNYXhCcmVha2luZ0ZvcmNlPC9IMz4KKzxQUkU+CitqYXZhLmxhbmcuU3RyaW5nIDxCPmdldE1heEJyZWFraW5nRm9yY2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5NYXggQnJlYWtpbmcgRm9yY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPk1heCBCcmVha2luZyBGb3JjZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+TWF4IEJyZWFraW5nIEZvcmNlPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjc2V0TWF4QnJlYWtpbmdGb3JjZShqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+c2V0TWF4QnJlYWtpbmdGb3JjZShTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0RW5naW5lU3lzdGVtX01heEJyZWFraW5nRm9yY2UoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0RW5naW5lU3lzdGVtX01heEJyZWFraW5nRm9yY2UoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRNYXhCcmVha2luZ0ZvcmNlKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRNYXhCcmVha2luZ0ZvcmNlPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldE1heEJyZWFraW5nRm9yY2U8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhCcmVha2luZ0ZvcmNlKCkiPjxDT0RFPjxlbT5NYXggQnJlYWtpbmcgRm9yY2U8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5NYXggQnJlYWtpbmcgRm9yY2U8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhCcmVha2luZ0ZvcmNlKCkiPjxDT0RFPmdldE1heEJyZWFraW5nRm9yY2UoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRNYXhBbGxvd2VkU3RlZXJpbmcoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TWF4QWxsb3dlZFN0ZWVyaW5nPC9IMz4KKzxQUkU+CitqYXZhLmxhbmcuU3RyaW5nIDxCPmdldE1heEFsbG93ZWRTdGVlcmluZzwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPk1heCBBbGxvd2VkIFN0ZWVyaW5nPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5NYXggQWxsb3dlZCBTdGVlcmluZzwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+TWF4IEFsbG93ZWQgU3RlZXJpbmc8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNzZXRNYXhBbGxvd2VkU3RlZXJpbmcoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPnNldE1heEFsbG93ZWRTdGVlcmluZyhTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0RW5naW5lU3lzdGVtX01heEFsbG93ZWRTdGVlcmluZygpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRFbmdpbmVTeXN0ZW1fTWF4QWxsb3dlZFN0ZWVyaW5nKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0TWF4QWxsb3dlZFN0ZWVyaW5nKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRNYXhBbGxvd2VkU3RlZXJpbmc8L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0TWF4QWxsb3dlZFN0ZWVyaW5nPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0TWF4QWxsb3dlZFN0ZWVyaW5nKCkiPjxDT0RFPjxlbT5NYXggQWxsb3dlZCBTdGVlcmluZzwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPk1heCBBbGxvd2VkIFN0ZWVyaW5nPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0TWF4QWxsb3dlZFN0ZWVyaW5nKCkiPjxDT0RFPmdldE1heEFsbG93ZWRTdGVlcmluZygpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldE1heEFsbG93ZWRWZWxvY2l0eSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRNYXhBbGxvd2VkVmVsb2NpdHk8L0gzPgorPFBSRT4KK2phdmEubGFuZy5TdHJpbmcgPEI+Z2V0TWF4QWxsb3dlZFZlbG9jaXR5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TWF4IEFsbG93ZWQgVmVsb2NpdHk8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPk1heCBBbGxvd2VkIFZlbG9jaXR5PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5NYXggQWxsb3dlZCBWZWxvY2l0eTwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI3NldE1heEFsbG93ZWRWZWxvY2l0eShqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+c2V0TWF4QWxsb3dlZFZlbG9jaXR5KFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRFbmdpbmVTeXN0ZW1fTWF4QWxsb3dlZFZlbG9jaXR5KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEVuZ2luZVN5c3RlbV9NYXhBbGxvd2VkVmVsb2NpdHkoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRNYXhBbGxvd2VkVmVsb2NpdHkoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldE1heEFsbG93ZWRWZWxvY2l0eTwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRNYXhBbGxvd2VkVmVsb2NpdHk8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhBbGxvd2VkVmVsb2NpdHkoKSI+PENPREU+PGVtPk1heCBBbGxvd2VkIFZlbG9jaXR5PC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TWF4IEFsbG93ZWQgVmVsb2NpdHk8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhBbGxvd2VkVmVsb2NpdHkoKSI+PENPREU+Z2V0TWF4QWxsb3dlZFZlbG9jaXR5KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0R2Vhcl9yYXRpb24oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0R2Vhcl9yYXRpb248L0gzPgorPFBSRT4KK2phdmEubGFuZy5TdHJpbmcgPEI+Z2V0R2Vhcl9yYXRpb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5HZWFyIHJhdGlvbjwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+R2VhciByYXRpb248L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPkdlYXIgcmF0aW9uPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjc2V0R2Vhcl9yYXRpb24oamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPnNldEdlYXJfcmF0aW9uKFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRFbmdpbmVTeXN0ZW1fR2Vhcl9yYXRpb24oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0RW5naW5lU3lzdGVtX0dlYXJfcmF0aW9uKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0R2Vhcl9yYXRpb24oamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldEdlYXJfcmF0aW9uPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldEdlYXJfcmF0aW9uPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0R2Vhcl9yYXRpb24oKSI+PENPREU+PGVtPkdlYXIgcmF0aW9uPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+R2VhciByYXRpb248L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRHZWFyX3JhdGlvbigpIj48Q09ERT5nZXRHZWFyX3JhdGlvbigpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0VuZ2luZVN5c3RlbS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRW5naW5lU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Vudmlyb25tZW50Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQyODRjZWUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5odG1sCkBAIC0wLDAgKzEsMjE2IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjcgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitFbnZpcm9ubWVudAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FbnZpcm9ubWVudCBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkVudmlyb25tZW50IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0Vudmlyb25tZW50Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkVudmlyb25tZW50Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIEVudmlyb25tZW50PC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBJbXBsZW1lbnRpbmcgQ2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbnZpcm9ubWVudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5FbnZpcm9ubWVudEltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPkVudmlyb25tZW50PC9CPjxEVD5leHRlbmRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5FbnZpcm9ubWVudDwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRFbnZpcm9ubWVudCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRFbnZpcm9ubWVudCgpPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvRW52aXJvbm1lbnQuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Vudmlyb25tZW50Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRW52aXJvbm1lbnQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAzZTIzMWYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sCkBAIC0wLDAgKzEsMjI1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjcgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitGbG9vcgorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5GbG9vciBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkZsb29yIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0Zsb29yLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkZsb29yLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIEZsb29yPC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Hcm91bmQ8L0E+LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBJbXBsZW1lbnRpbmcgQ2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9GbG9vckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5GbG9vckltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPkZsb29yPC9CPjxEVD5leHRlbmRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Hcm91bmQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkdyb3VuZDwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5GbG9vcjwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRGbG9vcigpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRGbG9vcigpPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaHlzaWNhbE9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEV2ZWxvdmVzSW4oKSI+Z2V0RXZlbG92ZXNJbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEhhc1N1cmZhY2UoKSI+Z2V0SGFzU3VyZmFjZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI3NldEhhc1N1cmZhY2Uob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN1cmZhY2UpIj5zZXRIYXNTdXJmYWNlPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvRmxvb3IuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRmxvb3IuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDNjMDIwMQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sCkBAIC0wLDAgKzEsMzA4IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjcgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitHUFNTeXN0ZW0KKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuR1BTU3lzdGVtIGludGVyZmFjZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iR1BTU3lzdGVtIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0dQU1N5c3RlbS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Hcm91bmQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iR1BTU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0ZPTlQ+Cis8QlI+CitJbnRlcmZhY2UgR1BTU3lzdGVtPC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0E+LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIEltcGxlbWVudGluZyBDbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dQU1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5HUFNTeXN0ZW1JbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5HUFNTeXN0ZW08L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xvY2FsaXphdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtPC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkdQUyBTeXN0ZW08L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCisgPHA+CisgVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwjZ2V0T3JpZ2luUG9zaXRpb24oKSI+PENPREU+PGVtPk9yaWdpbiBQb3NpdGlvbjwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0R1BTU3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEdQU1N5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwjZ2V0T3JpZ2luUG9zaXRpb24oKSI+Z2V0T3JpZ2luUG9zaXRpb248L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5PcmlnaW4gUG9zaXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCNzZXRPcmlnaW5Qb3NpdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0T3JpZ2luUG9zaXRpb248L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCNnZXRPcmlnaW5Qb3NpdGlvbigpIj48Q09ERT48ZW0+T3JpZ2luIFBvc2l0aW9uPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2Vuc29yU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvclN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjZ2V0RnJlcXVlbmN5KCkiPmdldEZyZXF1ZW5jeTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNnZXRJZGVudGlmaWVyKCkiPmdldElkZW50aWZpZXI8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjc2V0RnJlcXVlbmN5KGphdmEubGFuZy5TdHJpbmcpIj5zZXRGcmVxdWVuY3k8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjc2V0SWRlbnRpZmllcihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0SWRlbnRpZmllcjwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY1N5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsT3JpZW50YXRpb24oKSI+Z2V0TG9jYWxPcmllbnRhdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxQb3NpdGlvbigpIj5nZXRMb2NhbFBvc2l0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNzZXRMb2NhbE9yaWVudGF0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNzZXRMb2NhbFBvc2l0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMb2NhbFBvc2l0aW9uPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJnZXRPcmlnaW5Qb3NpdGlvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRPcmlnaW5Qb3NpdGlvbjwvSDM+Cis8UFJFPgoramF2YS5sYW5nLlN0cmluZyA8Qj5nZXRPcmlnaW5Qb3NpdGlvbjwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPk9yaWdpbiBQb3NpdGlvbjwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+T3JpZ2luIFBvc2l0aW9uPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5PcmlnaW4gUG9zaXRpb248L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCNzZXRPcmlnaW5Qb3NpdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+c2V0T3JpZ2luUG9zaXRpb24oU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEdQU1N5c3RlbV9PcmlnaW5Qb3NpdGlvbigpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRHUFNTeXN0ZW1fT3JpZ2luUG9zaXRpb24oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRPcmlnaW5Qb3NpdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0T3JpZ2luUG9zaXRpb248L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0T3JpZ2luUG9zaXRpb248L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCNnZXRPcmlnaW5Qb3NpdGlvbigpIj48Q09ERT48ZW0+T3JpZ2luIFBvc2l0aW9uPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+T3JpZ2luIFBvc2l0aW9uPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwjZ2V0T3JpZ2luUG9zaXRpb24oKSI+PENPREU+Z2V0T3JpZ2luUG9zaXRpb24oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9HUFNTeXN0ZW0uaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkdQU1N5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Hcm91bmQuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZlMTQxMDgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Hcm91bmQuaHRtbApAQCAtMCwwICsxLDIyOCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI3IENFVCAyMDEyIC0tPgorPFRJVExFPgorR3JvdW5kCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkdyb3VuZCBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9Ikdyb3VuZCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9Hcm91bmQuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0hhcmR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ikdyb3VuZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvRk9OVD4KKzxCUj4KK0ludGVyZmFjZSBHcm91bmQ8L0gyPgorPERMPgorPERUPjxCPkFsbCBTdXBlcmludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIFN1YmludGVyZmFjZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5GbG9vcjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGFuZFN1cmZhY2U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdGFpcnM8L0E+PC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIEltcGxlbWVudGluZyBDbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Zsb29ySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkZsb29ySW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dyb3VuZEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Hcm91bmRJbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGFuZFN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TGFuZFN1cmZhY2VJbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhaXJzSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN0YWlyc0ltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPkdyb3VuZDwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3VyZmFjZTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Hcm91bmQ8L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0R3JvdW5kKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEdyb3VuZCgpPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaHlzaWNhbE9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEV2ZWxvdmVzSW4oKSI+Z2V0RXZlbG92ZXNJbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEhhc1N1cmZhY2UoKSI+Z2V0SGFzU3VyZmFjZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI3NldEhhc1N1cmZhY2Uob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN1cmZhY2UpIj5zZXRIYXNTdXJmYWNlPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvR3JvdW5kLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IYXJkd2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Hcm91bmQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJHcm91bmQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0hhcmR3YXJlLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IYXJkd2FyZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFkNDk5YzUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IYXJkd2FyZS5odG1sCkBAIC0wLDAgKzEsMjE2IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjcgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitIYXJkd2FyZQorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5IYXJkd2FyZSBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkhhcmR3YXJlIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0hhcmR3YXJlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IYXJkd2FyZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkhhcmR3YXJlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIEhhcmR3YXJlPC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBJbXBsZW1lbnRpbmcgQ2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IYXJkd2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5IYXJkd2FyZUltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPkhhcmR3YXJlPC9CPjxEVD5leHRlbmRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5IYXJkd2FyZTwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRIYXJkd2FyZSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRIYXJkd2FyZSgpPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvSGFyZHdhcmUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Hcm91bmQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0hhcmR3YXJlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iSGFyZHdhcmUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM3MDQ4NzYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sCkBAIC0wLDAgKzEsMjM3IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjcgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitIdW1hbgorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5IdW1hbiBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9Ikh1bWFuIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0h1bWFuLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSGFyZHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iSHVtYW4uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0ZPTlQ+Cis8QlI+CitJbnRlcmZhY2UgSHVtYW48L0gyPgorPERMPgorPERUPjxCPkFsbCBTdXBlcmludGVyZmFjZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BZ2VudDwvQT4sIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5BbGwgS25vd24gU3ViaW50ZXJmYWNlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGVkZXN0cmlhbjwvQT48L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5BbGwgS25vd24gSW1wbGVtZW50aW5nIENsYXNzZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSHVtYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+SHVtYW5JbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGVkZXN0cmlhbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QZWRlc3RyaWFuSW1wbDwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBpbnRlcmZhY2UgPEI+SHVtYW48L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BZ2VudDwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5IdW1hbjwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRIdW1hbigpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRIdW1hbigpPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BZ2VudCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sI2dldE1vdmVzT3ZlcigpIj5nZXRNb3Zlc092ZXI8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBoeXNpY2FsT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0RXZlbG92ZXNJbigpIj5nZXRFdmVsb3Zlc0luPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0SGFzU3VyZmFjZSgpIj5nZXRIYXNTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjc2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPnNldEhhc1N1cmZhY2U8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9IdW1hbi5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0hhcmR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9JbWFnZVNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ikh1bWFuLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9JbWFnZVNlbnNvclN5c3RlbS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jYWI5M2I0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbApAQCAtMCwwICsxLDIzNyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI3IENFVCAyMDEyIC0tPgorPFRJVExFPgorSW1hZ2VTZW5zb3JTeXN0ZW0KKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSW1hZ2VTZW5zb3JTeXN0ZW0gaW50ZXJmYWNlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJJbWFnZVNlbnNvclN5c3RlbSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9JbWFnZVNlbnNvclN5c3RlbS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9JbWFnZVNlbnNvclN5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIEltYWdlU2Vuc29yU3lzdGVtPC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIFN1YmludGVyZmFjZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q2FtZXJhU3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBJbXBsZW1lbnRpbmcgQ2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q2FtZXJhU3lzdGVtSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0ltYWdlU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkltYWdlU2Vuc29yU3lzdGVtSW1wbDwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBpbnRlcmZhY2UgPEI+SW1hZ2VTZW5zb3JTeXN0ZW08L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkltYWdlIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0SW1hZ2VTZW5zb3JTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0SW1hZ2VTZW5zb3JTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2Vuc29yU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvclN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjZ2V0RnJlcXVlbmN5KCkiPmdldEZyZXF1ZW5jeTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNnZXRJZGVudGlmaWVyKCkiPmdldElkZW50aWZpZXI8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjc2V0RnJlcXVlbmN5KGphdmEubGFuZy5TdHJpbmcpIj5zZXRGcmVxdWVuY3k8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjc2V0SWRlbnRpZmllcihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0SWRlbnRpZmllcjwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY1N5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsT3JpZW50YXRpb24oKSI+Z2V0TG9jYWxPcmllbnRhdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxQb3NpdGlvbigpIj5nZXRMb2NhbFBvc2l0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNzZXRMb2NhbE9yaWVudGF0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNzZXRMb2NhbFBvc2l0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMb2NhbFBvc2l0aW9uPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJJbWFnZVNlbnNvclN5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGZiMzU4OQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwKQEAgLTAsMCArMSwyMjUgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyNyBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK0xhbmRTdXJmYWNlCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxhbmRTdXJmYWNlIGludGVyZmFjZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iTGFuZFN1cmZhY2UiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvTGFuZFN1cmZhY2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9JbWFnZVNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJMYW5kU3VyZmFjZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvRk9OVD4KKzxCUj4KK0ludGVyZmFjZSBMYW5kU3VyZmFjZTwvSDI+Cis8REw+Cis8RFQ+PEI+QWxsIFN1cGVyaW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+R3JvdW5kPC9BPiwgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3VyZmFjZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5BbGwgS25vd24gSW1wbGVtZW50aW5nIENsYXNzZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGFuZFN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TGFuZFN1cmZhY2VJbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5MYW5kU3VyZmFjZTwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Hcm91bmQ8L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TGFuZCBTdXJmYWNlPC9iPjwvZW0+Jy4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExhbmRTdXJmYWNlKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldExhbmRTdXJmYWNlKCk8L0NPREU+PC9BPjwvREw+Cis8SFI+CisKKzxQPgorCis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBoeXNpY2FsT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0RXZlbG92ZXNJbigpIj5nZXRFdmVsb3Zlc0luPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0SGFzU3VyZmFjZSgpIj5nZXRIYXNTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjc2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPnNldEhhc1N1cmZhY2U8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9MYW5kU3VyZmFjZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkxhbmRTdXJmYWNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40NzYwODJjCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbApAQCAtMCwwICsxLDk0MyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI3IENFVCAyMDEyIC0tPgorPFRJVExFPgorTGlkYXJTeXN0ZW0KKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW0gaW50ZXJmYWNlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJMaWRhclN5c3RlbSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9MaWRhclN5c3RlbS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJMaWRhclN5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIExpZGFyU3lzdGVtPC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBJbXBsZW1lbnRpbmcgQ2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MaWRhclN5c3RlbUltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPkxpZGFyU3lzdGVtPC9CPjxEVD5leHRlbmRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TGlkYXIgU3lzdGVtPC9iPjwvZW0+Jy4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKworIDxwPgorIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyA8dWw+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0TmJMYXllcnMoKSI+PENPREU+PGVtPk5iIExheWVyczwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldExheWVyQW5nbGVNaW4oKSI+PENPREU+PGVtPkxheWVyIEFuZ2xlIE1pbjwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldExheWVyQW5nbGVTdGVwKCkiPjxDT0RFPjxlbT5MYXllciBBbmdsZSBTdGVwPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0Tm9pc2UoKSI+PENPREU+PGVtPk5vaXNlPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0U2lnbWFOb2lzZSgpIj48Q09ERT48ZW0+U2lnbWEgTm9pc2U8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRBbmdsZV9taW4oKSI+PENPREU+PGVtPkFuZ2xlIG1pbjwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldEFuZ2xlX21heCgpIj48Q09ERT48ZW0+QW5nbGUgbWF4PC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0VGltZV9pbmNyZW1lbnQoKSI+PENPREU+PGVtPlRpbWUgaW5jcmVtZW50PC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0U2Nhbl90aW1lKCkiPjxDT0RFPjxlbT5TY2FuIHRpbWU8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRSYW5nZV9taW4oKSI+PENPREU+PGVtPlJhbmdlIG1pbjwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFJhbmdlX21heCgpIj48Q09ERT48ZW0+UmFuZ2UgbWF4PC9lbT48L0NPREU+PC9BPjwvbGk+CisgPC91bD4KKyA8L3A+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRMaWRhclN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRBbmdsZV9tYXgoKSI+Z2V0QW5nbGVfbWF4PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QW5nbGUgbWF4PC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRBbmdsZV9taW4oKSI+Z2V0QW5nbGVfbWluPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QW5nbGUgbWluPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRMYXllckFuZ2xlTWluKCkiPmdldExheWVyQW5nbGVNaW48L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5MYXllciBBbmdsZSBNaW48L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldExheWVyQW5nbGVTdGVwKCkiPmdldExheWVyQW5nbGVTdGVwPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TGF5ZXIgQW5nbGUgU3RlcDwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0TmJMYXllcnMoKSI+Z2V0TmJMYXllcnM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5OYiBMYXllcnM8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldE5vaXNlKCkiPmdldE5vaXNlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+Tm9pc2U8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFJhbmdlX21heCgpIj5nZXRSYW5nZV9tYXg8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5SYW5nZSBtYXg8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFJhbmdlX21pbigpIj5nZXRSYW5nZV9taW48L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5SYW5nZSBtaW48L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFNjYW5fdGltZSgpIj5nZXRTY2FuX3RpbWU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5TY2FuIHRpbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFNpZ21hTm9pc2UoKSI+Z2V0U2lnbWFOb2lzZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlNpZ21hIE5vaXNlPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRUaW1lX2luY3JlbWVudCgpIj5nZXRUaW1lX2luY3JlbWVudDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlRpbWUgaW5jcmVtZW50PC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNzZXRBbmdsZV9tYXgoamF2YS5sYW5nLlN0cmluZykiPnNldEFuZ2xlX21heDwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0QW5nbGVfbWF4KCkiPjxDT0RFPjxlbT5BbmdsZSBtYXg8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNzZXRBbmdsZV9taW4oamF2YS5sYW5nLlN0cmluZykiPnNldEFuZ2xlX21pbjwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0QW5nbGVfbWluKCkiPjxDT0RFPjxlbT5BbmdsZSBtaW48L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNzZXRMYXllckFuZ2xlTWluKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMYXllckFuZ2xlTWluPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRMYXllckFuZ2xlTWluKCkiPjxDT0RFPjxlbT5MYXllciBBbmdsZSBNaW48L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNzZXRMYXllckFuZ2xlU3RlcChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TGF5ZXJBbmdsZVN0ZXA8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldExheWVyQW5nbGVTdGVwKCkiPjxDT0RFPjxlbT5MYXllciBBbmdsZSBTdGVwPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjc2V0TmJMYXllcnMoamF2YS5sYW5nLlN0cmluZykiPnNldE5iTGF5ZXJzPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXROYkxheWVycygpIj48Q09ERT48ZW0+TmIgTGF5ZXJzPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjc2V0Tm9pc2UoamF2YS5sYW5nLlN0cmluZykiPnNldE5vaXNlPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXROb2lzZSgpIj48Q09ERT48ZW0+Tm9pc2U8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNzZXRSYW5nZV9tYXgoamF2YS5sYW5nLlN0cmluZykiPnNldFJhbmdlX21heDwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0UmFuZ2VfbWF4KCkiPjxDT0RFPjxlbT5SYW5nZSBtYXg8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNzZXRSYW5nZV9taW4oamF2YS5sYW5nLlN0cmluZykiPnNldFJhbmdlX21pbjwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0UmFuZ2VfbWluKCkiPjxDT0RFPjxlbT5SYW5nZSBtaW48L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNzZXRTY2FuX3RpbWUoamF2YS5sYW5nLlN0cmluZykiPnNldFNjYW5fdGltZTwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0U2Nhbl90aW1lKCkiPjxDT0RFPjxlbT5TY2FuIHRpbWU8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNzZXRTaWdtYU5vaXNlKGphdmEubGFuZy5TdHJpbmcpIj5zZXRTaWdtYU5vaXNlPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRTaWdtYU5vaXNlKCkiPjxDT0RFPjxlbT5TaWdtYSBOb2lzZTwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI3NldFRpbWVfaW5jcmVtZW50KGphdmEubGFuZy5TdHJpbmcpIj5zZXRUaW1lX2luY3JlbWVudDwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0VGltZV9pbmNyZW1lbnQoKSI+PENPREU+PGVtPlRpbWUgaW5jcmVtZW50PC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2Vuc29yU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvclN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjZ2V0RnJlcXVlbmN5KCkiPmdldEZyZXF1ZW5jeTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNnZXRJZGVudGlmaWVyKCkiPmdldElkZW50aWZpZXI8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjc2V0RnJlcXVlbmN5KGphdmEubGFuZy5TdHJpbmcpIj5zZXRGcmVxdWVuY3k8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjc2V0SWRlbnRpZmllcihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0SWRlbnRpZmllcjwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY1N5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsT3JpZW50YXRpb24oKSI+Z2V0TG9jYWxPcmllbnRhdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxQb3NpdGlvbigpIj5nZXRMb2NhbFBvc2l0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNzZXRMb2NhbE9yaWVudGF0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNzZXRMb2NhbFBvc2l0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMb2NhbFBvc2l0aW9uPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2Vuc29yU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvclN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjZ2V0RnJlcXVlbmN5KCkiPmdldEZyZXF1ZW5jeTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNnZXRJZGVudGlmaWVyKCkiPmdldElkZW50aWZpZXI8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjc2V0RnJlcXVlbmN5KGphdmEubGFuZy5TdHJpbmcpIj5zZXRGcmVxdWVuY3k8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjc2V0SWRlbnRpZmllcihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0SWRlbnRpZmllcjwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY1N5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsT3JpZW50YXRpb24oKSI+Z2V0TG9jYWxPcmllbnRhdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxQb3NpdGlvbigpIj5nZXRMb2NhbFBvc2l0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNzZXRMb2NhbE9yaWVudGF0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNzZXRMb2NhbFBvc2l0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMb2NhbFBvc2l0aW9uPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJnZXROYkxheWVycygpIj48IS0tIC0tPjwvQT48SDM+CitnZXROYkxheWVyczwvSDM+Cis8UFJFPgoramF2YS5sYW5nLlN0cmluZyA8Qj5nZXROYkxheWVyczwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPk5iIExheWVyczwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+TmIgTGF5ZXJzPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5OYiBMYXllcnM8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI3NldE5iTGF5ZXJzKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5zZXROYkxheWVycyhTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fTmJMYXllcnMoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0TGlkYXJTeXN0ZW1fTmJMYXllcnMoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXROYkxheWVycyhqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0TmJMYXllcnM8L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0TmJMYXllcnM8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldE5iTGF5ZXJzKCkiPjxDT0RFPjxlbT5OYiBMYXllcnM8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5OYiBMYXllcnM8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldE5iTGF5ZXJzKCkiPjxDT0RFPmdldE5iTGF5ZXJzKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TGF5ZXJBbmdsZU1pbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRMYXllckFuZ2xlTWluPC9IMz4KKzxQUkU+CitqYXZhLmxhbmcuU3RyaW5nIDxCPmdldExheWVyQW5nbGVNaW48L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5MYXllciBBbmdsZSBNaW48L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkxheWVyIEFuZ2xlIE1pbjwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+TGF5ZXIgQW5nbGUgTWluPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNzZXRMYXllckFuZ2xlTWluKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5zZXRMYXllckFuZ2xlTWluKFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbV9MYXllckFuZ2xlTWluKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldExpZGFyU3lzdGVtX0xheWVyQW5nbGVNaW4oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRMYXllckFuZ2xlTWluKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRMYXllckFuZ2xlTWluPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldExheWVyQW5nbGVNaW48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldExheWVyQW5nbGVNaW4oKSI+PENPREU+PGVtPkxheWVyIEFuZ2xlIE1pbjwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkxheWVyIEFuZ2xlIE1pbjwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0TGF5ZXJBbmdsZU1pbigpIj48Q09ERT5nZXRMYXllckFuZ2xlTWluKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TGF5ZXJBbmdsZVN0ZXAoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TGF5ZXJBbmdsZVN0ZXA8L0gzPgorPFBSRT4KK2phdmEubGFuZy5TdHJpbmcgPEI+Z2V0TGF5ZXJBbmdsZVN0ZXA8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5MYXllciBBbmdsZSBTdGVwPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5MYXllciBBbmdsZSBTdGVwPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5MYXllciBBbmdsZSBTdGVwPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNzZXRMYXllckFuZ2xlU3RlcChqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+c2V0TGF5ZXJBbmdsZVN0ZXAoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtX0xheWVyQW5nbGVTdGVwKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldExpZGFyU3lzdGVtX0xheWVyQW5nbGVTdGVwKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0TGF5ZXJBbmdsZVN0ZXAoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldExheWVyQW5nbGVTdGVwPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldExheWVyQW5nbGVTdGVwPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRMYXllckFuZ2xlU3RlcCgpIj48Q09ERT48ZW0+TGF5ZXIgQW5nbGUgU3RlcDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkxheWVyIEFuZ2xlIFN0ZXA8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldExheWVyQW5nbGVTdGVwKCkiPjxDT0RFPmdldExheWVyQW5nbGVTdGVwKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Tm9pc2UoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Tm9pc2U8L0gzPgorPFBSRT4KK2phdmEubGFuZy5TdHJpbmcgPEI+Z2V0Tm9pc2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Ob2lzZTwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+Tm9pc2U8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPk5vaXNlPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNzZXROb2lzZShqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+c2V0Tm9pc2UoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtX05vaXNlKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldExpZGFyU3lzdGVtX05vaXNlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0Tm9pc2UoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldE5vaXNlPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldE5vaXNlPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXROb2lzZSgpIj48Q09ERT48ZW0+Tm9pc2U8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5Ob2lzZTwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0Tm9pc2UoKSI+PENPREU+Z2V0Tm9pc2UoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTaWdtYU5vaXNlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFNpZ21hTm9pc2U8L0gzPgorPFBSRT4KK2phdmEubGFuZy5TdHJpbmcgPEI+Z2V0U2lnbWFOb2lzZTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlNpZ21hIE5vaXNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5TaWdtYSBOb2lzZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+U2lnbWEgTm9pc2U8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI3NldFNpZ21hTm9pc2UoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPnNldFNpZ21hTm9pc2UoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtX1NpZ21hTm9pc2UoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0TGlkYXJTeXN0ZW1fU2lnbWFOb2lzZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFNpZ21hTm9pc2UoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFNpZ21hTm9pc2U8L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0U2lnbWFOb2lzZTwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0U2lnbWFOb2lzZSgpIj48Q09ERT48ZW0+U2lnbWEgTm9pc2U8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5TaWdtYSBOb2lzZTwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0U2lnbWFOb2lzZSgpIj48Q09ERT5nZXRTaWdtYU5vaXNlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0QW5nbGVfbWluKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEFuZ2xlX21pbjwvSDM+Cis8UFJFPgoramF2YS5sYW5nLlN0cmluZyA8Qj5nZXRBbmdsZV9taW48L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5BbmdsZSBtaW48L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkFuZ2xlIG1pbjwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+QW5nbGUgbWluPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNzZXRBbmdsZV9taW4oamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPnNldEFuZ2xlX21pbihTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fQW5nbGVfbWluKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldExpZGFyU3lzdGVtX0FuZ2xlX21pbigpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldEFuZ2xlX21pbihqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0QW5nbGVfbWluPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldEFuZ2xlX21pbjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0QW5nbGVfbWluKCkiPjxDT0RFPjxlbT5BbmdsZSBtaW48L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5BbmdsZSBtaW48L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldEFuZ2xlX21pbigpIj48Q09ERT5nZXRBbmdsZV9taW4oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRBbmdsZV9tYXgoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QW5nbGVfbWF4PC9IMz4KKzxQUkU+CitqYXZhLmxhbmcuU3RyaW5nIDxCPmdldEFuZ2xlX21heDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkFuZ2xlIG1heDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+QW5nbGUgbWF4PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5BbmdsZSBtYXg8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI3NldEFuZ2xlX21heChqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+c2V0QW5nbGVfbWF4KFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbV9BbmdsZV9tYXgoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0TGlkYXJTeXN0ZW1fQW5nbGVfbWF4KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0QW5nbGVfbWF4KGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRBbmdsZV9tYXg8L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0QW5nbGVfbWF4PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRBbmdsZV9tYXgoKSI+PENPREU+PGVtPkFuZ2xlIG1heDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkFuZ2xlIG1heDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0QW5nbGVfbWF4KCkiPjxDT0RFPmdldEFuZ2xlX21heCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFRpbWVfaW5jcmVtZW50KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFRpbWVfaW5jcmVtZW50PC9IMz4KKzxQUkU+CitqYXZhLmxhbmcuU3RyaW5nIDxCPmdldFRpbWVfaW5jcmVtZW50PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VGltZSBpbmNyZW1lbnQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlRpbWUgaW5jcmVtZW50PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5UaW1lIGluY3JlbWVudDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjc2V0VGltZV9pbmNyZW1lbnQoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPnNldFRpbWVfaW5jcmVtZW50KFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbV9UaW1lX2luY3JlbWVudCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRMaWRhclN5c3RlbV9UaW1lX2luY3JlbWVudCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFRpbWVfaW5jcmVtZW50KGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRUaW1lX2luY3JlbWVudDwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRUaW1lX2luY3JlbWVudDwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0VGltZV9pbmNyZW1lbnQoKSI+PENPREU+PGVtPlRpbWUgaW5jcmVtZW50PC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+VGltZSBpbmNyZW1lbnQ8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFRpbWVfaW5jcmVtZW50KCkiPjxDT0RFPmdldFRpbWVfaW5jcmVtZW50KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U2Nhbl90aW1lKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFNjYW5fdGltZTwvSDM+Cis8UFJFPgoramF2YS5sYW5nLlN0cmluZyA8Qj5nZXRTY2FuX3RpbWU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5TY2FuIHRpbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlNjYW4gdGltZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+U2NhbiB0aW1lPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNzZXRTY2FuX3RpbWUoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPnNldFNjYW5fdGltZShTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fU2Nhbl90aW1lKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldExpZGFyU3lzdGVtX1NjYW5fdGltZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFNjYW5fdGltZShqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0U2Nhbl90aW1lPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldFNjYW5fdGltZTwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0U2Nhbl90aW1lKCkiPjxDT0RFPjxlbT5TY2FuIHRpbWU8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5TY2FuIHRpbWU8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFNjYW5fdGltZSgpIj48Q09ERT5nZXRTY2FuX3RpbWUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRSYW5nZV9taW4oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UmFuZ2VfbWluPC9IMz4KKzxQUkU+CitqYXZhLmxhbmcuU3RyaW5nIDxCPmdldFJhbmdlX21pbjwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlJhbmdlIG1pbjwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+UmFuZ2UgbWluPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5SYW5nZSBtaW48L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI3NldFJhbmdlX21pbihqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+c2V0UmFuZ2VfbWluKFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbV9SYW5nZV9taW4oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0TGlkYXJTeXN0ZW1fUmFuZ2VfbWluKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0UmFuZ2VfbWluKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRSYW5nZV9taW48L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0UmFuZ2VfbWluPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRSYW5nZV9taW4oKSI+PENPREU+PGVtPlJhbmdlIG1pbjwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlJhbmdlIG1pbjwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0UmFuZ2VfbWluKCkiPjxDT0RFPmdldFJhbmdlX21pbigpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFJhbmdlX21heCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRSYW5nZV9tYXg8L0gzPgorPFBSRT4KK2phdmEubGFuZy5TdHJpbmcgPEI+Z2V0UmFuZ2VfbWF4PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+UmFuZ2UgbWF4PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5SYW5nZSBtYXg8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPlJhbmdlIG1heDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjc2V0UmFuZ2VfbWF4KGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5zZXRSYW5nZV9tYXgoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtX1JhbmdlX21heCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRMaWRhclN5c3RlbV9SYW5nZV9tYXgoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRSYW5nZV9tYXgoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFJhbmdlX21heDwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRSYW5nZV9tYXg8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFJhbmdlX21heCgpIj48Q09ERT48ZW0+UmFuZ2UgbWF4PC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+UmFuZ2UgbWF4PC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRSYW5nZV9tYXgoKSI+PENPREU+Z2V0UmFuZ2VfbWF4KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvTGlkYXJTeXN0ZW0uaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iTGlkYXJTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iZDBlODU5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwKQEAgLTAsMCArMSwyMzcgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyNyBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK0xvY2FsaXphdGlvblNlbnNvclN5c3RlbQorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0gaW50ZXJmYWNlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0iOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0ZPTlQ+Cis8QlI+CitJbnRlcmZhY2UgTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtPC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIFN1YmludGVyZmFjZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+R1BTU3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBJbXBsZW1lbnRpbmcgQ2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HUFNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+R1BTU3lzdGVtSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxvY2FsaXphdGlvbiBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+Jy4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExvY2FsaXphdGlvblNlbnNvclN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2Vuc29yU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvclN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjZ2V0RnJlcXVlbmN5KCkiPmdldEZyZXF1ZW5jeTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNnZXRJZGVudGlmaWVyKCkiPmdldElkZW50aWZpZXI8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjc2V0RnJlcXVlbmN5KGphdmEubGFuZy5TdHJpbmcpIj5zZXRGcmVxdWVuY3k8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjc2V0SWRlbnRpZmllcihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0SWRlbnRpZmllcjwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY1N5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsT3JpZW50YXRpb24oKSI+Z2V0TG9jYWxPcmllbnRhdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxQb3NpdGlvbigpIj5nZXRMb2NhbFBvc2l0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNzZXRMb2NhbE9yaWVudGF0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNzZXRMb2NhbFBvc2l0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMb2NhbFBvc2l0aW9uPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzliZmUzOAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sCkBAIC0wLDAgKzEsMjM3IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjcgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0KKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtIGludGVyZmFjZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xvY2FsaXphdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIE9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvSDI+Cis8REw+Cis8RFQ+PEI+QWxsIFN1cGVyaW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBTdWJpbnRlcmZhY2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGlkYXJTeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIEltcGxlbWVudGluZyBDbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkxpZGFyU3lzdGVtSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8SFI+CisKKzxQPgorCis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvclN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JTeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI2dldEZyZXF1ZW5jeSgpIj5nZXRGcmVxdWVuY3k8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjZ2V0SWRlbnRpZmllcigpIj5nZXRJZGVudGlmaWVyPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI3NldEZyZXF1ZW5jeShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0RnJlcXVlbmN5PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI3NldElkZW50aWZpZXIoamF2YS5sYW5nLlN0cmluZykiPnNldElkZW50aWZpZXI8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbE9yaWVudGF0aW9uKCkiPmdldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsUG9zaXRpb24oKSI+Z2V0TG9jYWxQb3NpdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjc2V0TG9jYWxPcmllbnRhdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxPcmllbnRhdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjc2V0TG9jYWxQb3NpdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxQb3NpdGlvbjwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xvY2FsaXphdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xODM1YTNkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbApAQCAtMCwwICsxLDIzNyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI3IENFVCAyMDEyIC0tPgorPFRJVExFPgorT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0KKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0gaW50ZXJmYWNlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0ZPTlQ+Cis8QlI+CitJbnRlcmZhY2UgT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0gyPgorPERMPgorPERUPjxCPkFsbCBTdXBlcmludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvclN5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5BbGwgS25vd24gU3ViaW50ZXJmYWNlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxpZGFyU3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBJbXBsZW1lbnRpbmcgQ2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MaWRhclN5c3RlbUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9CPjxEVD5leHRlbmRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvclN5c3RlbTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5PYmplY3QgVHJhY2tpbmcgU2Vuc29yIFN5c3RlbTwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZW5zb3JTeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNnZXRGcmVxdWVuY3koKSI+Z2V0RnJlcXVlbmN5PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI2dldElkZW50aWZpZXIoKSI+Z2V0SWRlbnRpZmllcjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNzZXRGcmVxdWVuY3koamF2YS5sYW5nLlN0cmluZykiPnNldEZyZXF1ZW5jeTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNzZXRJZGVudGlmaWVyKGphdmEubGFuZy5TdHJpbmcpIj5zZXRJZGVudGlmaWVyPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxPcmllbnRhdGlvbigpIj5nZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbFBvc2l0aW9uKCkiPmdldExvY2FsUG9zaXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsT3JpZW50YXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsUG9zaXRpb248L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmFhZTYzYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sCkBAIC0wLDAgKzEsMzQwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjcgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitPblBvcnQKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT25Qb3J0IGludGVyZmFjZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iT25Qb3J0IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL09uUG9ydC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ik9uUG9ydC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIE9uUG9ydDwvSDI+Cis8REw+Cis8RFQ+PEI+QWxsIFN1cGVyaW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5BbGwgS25vd24gSW1wbGVtZW50aW5nIENsYXNzZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT25Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPk9uUG9ydEltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPk9uUG9ydDwvQj48RFQ+ZXh0ZW5kcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9uIFBvcnQ8L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCisgPHA+CisgVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwjZ2V0UG9ydCgpIj48Q09ERT48ZW0+UG9ydDwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCNnZXRCYXNlX1BhcmFtZXRlcigpIj48Q09ERT48ZW0+QmFzZSBQYXJhbWV0ZXI8L2VtPjwvQ09ERT48L0E+PC9saT4KKyA8L3VsPgorIDwvcD4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldE9uUG9ydCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRPblBvcnQoKTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLnVtbDIudW1sLlBhcmFtZXRlcjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwjZ2V0QmFzZV9QYXJhbWV0ZXIoKSI+Z2V0QmFzZV9QYXJhbWV0ZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CYXNlIFBhcmFtZXRlcjwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Qb3J0PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwjZ2V0UG9ydCgpIj5nZXRQb3J0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+UG9ydDwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sI3NldEJhc2VfUGFyYW1ldGVyKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhcmFtZXRlcikiPnNldEJhc2VfUGFyYW1ldGVyPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUGFyYW1ldGVyJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCNnZXRCYXNlX1BhcmFtZXRlcigpIj48Q09ERT48ZW0+QmFzZSBQYXJhbWV0ZXI8L2VtPjwvQ09ERT48L0E+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwjc2V0UG9ydChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG9ydCkiPnNldFBvcnQ8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UG9ydDwvQT4mbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sI2dldFBvcnQoKSI+PENPREU+PGVtPlBvcnQ8L2VtPjwvQ09ERT48L0E+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0UG9ydCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRQb3J0PC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UG9ydDwvQT4gPEI+Z2V0UG9ydDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlBvcnQ8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlBvcnQ8L2VtPicgcmVmZXJlbmNlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPlBvcnQ8L2VtPicgcmVmZXJlbmNlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCNzZXRQb3J0KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Qb3J0KSI+PENPREU+c2V0UG9ydChQb3J0KTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldE9uUG9ydF9Qb3J0KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldE9uUG9ydF9Qb3J0KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0UG9ydChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG9ydCkiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFBvcnQ8L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0UG9ydDwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBvcnQ8L0E+Jm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwjZ2V0UG9ydCgpIj48Q09ERT48ZW0+UG9ydDwvZW0+PC9DT0RFPjwvQT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlBvcnQ8L2VtPicgcmVmZXJlbmNlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCNnZXRQb3J0KCkiPjxDT0RFPmdldFBvcnQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRCYXNlX1BhcmFtZXRlcigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRCYXNlX1BhcmFtZXRlcjwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UudW1sMi51bWwuUGFyYW1ldGVyIDxCPmdldEJhc2VfUGFyYW1ldGVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QmFzZSBQYXJhbWV0ZXI8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkJhc2UgUGFyYW1ldGVyPC9lbT4nIHJlZmVyZW5jZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5CYXNlIFBhcmFtZXRlcjwvZW0+JyByZWZlcmVuY2UuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sI3NldEJhc2VfUGFyYW1ldGVyKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhcmFtZXRlcikiPjxDT0RFPnNldEJhc2VfUGFyYW1ldGVyKFBhcmFtZXRlcik8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRPblBvcnRfQmFzZV9QYXJhbWV0ZXIoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0T25Qb3J0X0Jhc2VfUGFyYW1ldGVyKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0QmFzZV9QYXJhbWV0ZXIob3JnLmVjbGlwc2UudW1sMi51bWwuUGFyYW1ldGVyKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0QmFzZV9QYXJhbWV0ZXI8L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0QmFzZV9QYXJhbWV0ZXI8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhcmFtZXRlciZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sI2dldEJhc2VfUGFyYW1ldGVyKCkiPjxDT0RFPjxlbT5CYXNlIFBhcmFtZXRlcjwvZW0+PC9DT0RFPjwvQT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgUGFyYW1ldGVyPC9lbT4nIHJlZmVyZW5jZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwjZ2V0QmFzZV9QYXJhbWV0ZXIoKSI+PENPREU+Z2V0QmFzZV9QYXJhbWV0ZXIoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9PblBvcnQuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJPblBvcnQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZhZDhiNmUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwKQEAgLTAsMCArMSwyMzQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyNyBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1BlZGVzdHJpYW4KKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGVkZXN0cmlhbiBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlBlZGVzdHJpYW4iOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUGVkZXN0cmlhbi5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQZWRlc3RyaWFuLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIFBlZGVzdHJpYW48L0gyPgorPERMPgorPERUPjxCPkFsbCBTdXBlcmludGVyZmFjZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BZ2VudDwvQT4sIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSHVtYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkh1bWFuPC9BPiwgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIEltcGxlbWVudGluZyBDbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BlZGVzdHJpYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGVkZXN0cmlhbkltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPlBlZGVzdHJpYW48L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5IdW1hbjwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QZWRlc3RyaWFuPC9iPjwvZW0+Jy4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFBlZGVzdHJpYW4oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0UGVkZXN0cmlhbigpPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BZ2VudCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sI2dldE1vdmVzT3ZlcigpIj5nZXRNb3Zlc092ZXI8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBoeXNpY2FsT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0RXZlbG92ZXNJbigpIj5nZXRFdmVsb3Zlc0luPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0SGFzU3VyZmFjZSgpIj5nZXRIYXNTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjc2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPnNldEhhc1N1cmZhY2U8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9QZWRlc3RyaWFuLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlBlZGVzdHJpYW4uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGM2OGEyNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sCkBAIC0wLDAgKzEsMzQzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjcgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitQaHlzaWNhbERhdGEKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGh5c2ljYWxEYXRhIGludGVyZmFjZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iUGh5c2ljYWxEYXRhIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1BoeXNpY2FsRGF0YS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlBoeXNpY2FsRGF0YS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIFBoeXNpY2FsRGF0YTwvSDI+Cis8REw+Cis8RFQ+PEI+QWxsIFN1cGVyaW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5BbGwgS25vd24gSW1wbGVtZW50aW5nIENsYXNzZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxEYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBoeXNpY2FsRGF0YUltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPlBoeXNpY2FsRGF0YTwvQj48RFQ+ZXh0ZW5kcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBoeXNpY2FsIERhdGE8L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCisgPHA+CisgVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwjZ2V0QmFzZV9EYXRhVHlwZSgpIj48Q09ERT48ZW0+QmFzZSBEYXRhIFR5cGU8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwjZ2V0VW5pdCgpIj48Q09ERT48ZW0+VW5pdDwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGh5c2ljYWxEYXRhKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFBoeXNpY2FsRGF0YSgpPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sI2dldEJhc2VfRGF0YVR5cGUoKSI+Z2V0QmFzZV9EYXRhVHlwZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkJhc2UgRGF0YSBUeXBlPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VW5pdEtpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCNnZXRVbml0KCkiPmdldFVuaXQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Vbml0PC9iPjwvZW0+JyBhdHRyaWJ1dGUuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sI3NldEJhc2VfRGF0YVR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUpIj5zZXRCYXNlX0RhdGFUeXBlPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sI2dldEJhc2VfRGF0YVR5cGUoKSI+PENPREU+PGVtPkJhc2UgRGF0YSBUeXBlPC9lbT48L0NPREU+PC9BPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sI3NldFVuaXQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlVuaXRLaW5kKSI+c2V0VW5pdDwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPiZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwjZ2V0VW5pdCgpIj48Q09ERT48ZW0+VW5pdDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJnZXRCYXNlX0RhdGFUeXBlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEJhc2VfRGF0YVR5cGU8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlIDxCPmdldEJhc2VfRGF0YVR5cGU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CYXNlIERhdGEgVHlwZTwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+QmFzZSBEYXRhIFR5cGU8L2VtPicgcmVmZXJlbmNlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgRGF0YSBUeXBlPC9lbT4nIHJlZmVyZW5jZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwjc2V0QmFzZV9EYXRhVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5EYXRhVHlwZSkiPjxDT0RFPnNldEJhc2VfRGF0YVR5cGUoRGF0YVR5cGUpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGh5c2ljYWxEYXRhX0Jhc2VfRGF0YVR5cGUoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0UGh5c2ljYWxEYXRhX0Jhc2VfRGF0YVR5cGUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRCYXNlX0RhdGFUeXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0QmFzZV9EYXRhVHlwZTwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRCYXNlX0RhdGFUeXBlPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5EYXRhVHlwZSZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sI2dldEJhc2VfRGF0YVR5cGUoKSI+PENPREU+PGVtPkJhc2UgRGF0YSBUeXBlPC9lbT48L0NPREU+PC9BPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+QmFzZSBEYXRhIFR5cGU8L2VtPicgcmVmZXJlbmNlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCNnZXRCYXNlX0RhdGFUeXBlKCkiPjxDT0RFPmdldEJhc2VfRGF0YVR5cGUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRVbml0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFVuaXQ8L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPiA8Qj5nZXRVbml0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VW5pdDwvYj48L2VtPicgYXR0cmlidXRlLgorIFRoZSBsaXRlcmFscyBhcmUgZnJvbSB0aGUgZW51bWVyYXRpb24gPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+VW5pdEtpbmQ8L0NPREU+PC9BPi4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlVuaXQ8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPlVuaXQ8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlVuaXRLaW5kPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sI3NldFVuaXQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlVuaXRLaW5kKSI+PENPREU+c2V0VW5pdChVbml0S2luZCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQaHlzaWNhbERhdGFfVW5pdCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRQaHlzaWNhbERhdGFfVW5pdCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFVuaXQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlVuaXRLaW5kKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0VW5pdDwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRVbml0PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Vbml0S2luZDwvQT4mbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCNnZXRVbml0KCkiPjxDT0RFPjxlbT5Vbml0PC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+VW5pdDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+VW5pdEtpbmQ8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwjZ2V0VW5pdCgpIj48Q09ERT5nZXRVbml0KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUGh5c2ljYWxEYXRhLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUGh5c2ljYWxEYXRhLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE0OGJlMmYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sCkBAIC0wLDAgKzEsMzI2IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjcgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitQaHlzaWNhbE9iamVjdAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaHlzaWNhbE9iamVjdCBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlBoeXNpY2FsT2JqZWN0IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1BoeXNpY2FsT2JqZWN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGFuZXQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQaHlzaWNhbE9iamVjdC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIFBoeXNpY2FsT2JqZWN0PC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBTdWJpbnRlcmZhY2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWdlbnQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQnVpbGRpbmcuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJ1aWxkaW5nPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5GbG9vcjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Hcm91bmQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkdyb3VuZDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SHVtYW48L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxhbmRTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBlZGVzdHJpYW48L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhbmV0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGFuZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3RhaXJzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XYXRlclN1cmZhY2U8L0E+PC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIEltcGxlbWVudGluZyBDbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFnZW50SW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0J1aWxkaW5nSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkJ1aWxkaW5nSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Zsb29ySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkZsb29ySW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dyb3VuZEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Hcm91bmRJbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSHVtYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+SHVtYW5JbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGFuZFN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TGFuZFN1cmZhY2VJbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGVkZXN0cmlhbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QZWRlc3RyaWFuSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBoeXNpY2FsT2JqZWN0SW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYW5ldEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QbGFuZXRJbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RJbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhaXJzSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN0YWlyc0ltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN1cmZhY2VJbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2F0ZXJTdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPldhdGVyU3VyZmFjZUltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPlBoeXNpY2FsT2JqZWN0PC9CPjxEVD5leHRlbmRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QaHlzaWNhbCBPYmplY3Q8L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCisgPHA+CisgVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRFdmVsb3Zlc0luKCkiPjxDT0RFPjxlbT5FdmVsb3ZlcyBJbjwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEhhc1N1cmZhY2UoKSI+PENPREU+PGVtPkhhcyBTdXJmYWNlPC9lbT48L0NPREU+PC9BPjwvbGk+CisgPC91bD4KKyA8L3A+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQaHlzaWNhbE9iamVjdCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRQaHlzaWNhbE9iamVjdCgpPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0Jmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW52aXJvbm1lbnQ8L0E+Jmd0OzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRFdmVsb3Zlc0luKCkiPmdldEV2ZWxvdmVzSW48L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5FdmVsb3ZlcyBJbjwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3QuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdXJmYWNlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRIYXNTdXJmYWNlKCkiPmdldEhhc1N1cmZhY2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5IYXMgU3VyZmFjZTwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjc2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPnNldEhhc1N1cmZhY2U8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3VyZmFjZTwvQT4mbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0SGFzU3VyZmFjZSgpIj48Q09ERT48ZW0+SGFzIFN1cmZhY2U8L2VtPjwvQ09ERT48L0E+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJnZXRFdmVsb3Zlc0luKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEV2ZWxvdmVzSW48L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdCZsdDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVudmlyb25tZW50PC9BPiZndDsgPEI+Z2V0RXZlbG92ZXNJbjwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkV2ZWxvdmVzIEluPC9iPjwvZW0+JyByZWZlcmVuY2UgbGlzdC4KKyBUaGUgbGlzdCBjb250ZW50cyBhcmUgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkVudmlyb25tZW50PC9DT0RFPjwvQT4uCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5FdmVsb3ZlcyBJbjwvZW0+JyByZWZlcmVuY2UgbGlzdCBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5FdmVsb3ZlcyBJbjwvZW0+JyByZWZlcmVuY2UgbGlzdC48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQaHlzaWNhbE9iamVjdF9FdmVsb3Zlc0luKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFBoeXNpY2FsT2JqZWN0X0V2ZWxvdmVzSW4oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRIYXNTdXJmYWNlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEhhc1N1cmZhY2U8L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdXJmYWNlPC9BPiA8Qj5nZXRIYXNTdXJmYWNlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+SGFzIFN1cmZhY2U8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkhhcyBTdXJmYWNlPC9lbT4nIHJlZmVyZW5jZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5IYXMgU3VyZmFjZTwvZW0+JyByZWZlcmVuY2UuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjc2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPjxDT0RFPnNldEhhc1N1cmZhY2UoU3VyZmFjZSk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQaHlzaWNhbE9iamVjdF9IYXNTdXJmYWNlKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFBoeXNpY2FsT2JqZWN0X0hhc1N1cmZhY2UoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRIYXNTdXJmYWNlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0SGFzU3VyZmFjZTwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRIYXNTdXJmYWNlPC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3VyZmFjZTwvQT4mbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEhhc1N1cmZhY2UoKSI+PENPREU+PGVtPkhhcyBTdXJmYWNlPC9lbT48L0NPREU+PC9BPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+SGFzIFN1cmZhY2U8L2VtPicgcmVmZXJlbmNlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEhhc1N1cmZhY2UoKSI+PENPREU+Z2V0SGFzU3VyZmFjZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1BoeXNpY2FsT2JqZWN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGFuZXQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQaHlzaWNhbE9iamVjdC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGFuZXQuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYW5ldC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQzYTE5NDkKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGFuZXQuaHRtbApAQCAtMCwwICsxLDIyNSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI3IENFVCAyMDEyIC0tPgorPFRJVExFPgorUGxhbmV0Cis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBsYW5ldCBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlBsYW5ldCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9QbGFuZXQuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhbmV0Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUGxhbmV0Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIFBsYW5ldDwvSDI+Cis8REw+Cis8RFQ+PEI+QWxsIFN1cGVyaW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIEltcGxlbWVudGluZyBDbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYW5ldEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QbGFuZXRJbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5QbGFuZXQ8L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QbGFuZXQ8L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGxhbmV0KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFBsYW5ldCgpPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaHlzaWNhbE9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEV2ZWxvdmVzSW4oKSI+Z2V0RXZlbG92ZXNJbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEhhc1N1cmZhY2UoKSI+Z2V0SGFzU3VyZmFjZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI3NldEhhc1N1cmZhY2Uob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN1cmZhY2UpIj5zZXRIYXNTdXJmYWNlPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUGxhbmV0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYW5ldC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlBsYW5ldC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDQ1MTZjZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwKQEAgLTAsMCArMSwyOTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyNyBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1BsYXRmb3JtCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBsYXRmb3JtIGludGVyZmFjZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iUGxhdGZvcm0iOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUGxhdGZvcm0uaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGFuZXQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQbGF0Zm9ybS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIFBsYXRmb3JtPC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBTdWJpbnRlcmZhY2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJsZW5kZXJNb3JzZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DeWNhYlRLPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU2ltdWxhdG9yPC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBJbXBsZW1lbnRpbmcgQ2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QmxlbmRlck1vcnNlSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q3ljYWJUS0ltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QbGF0Zm9ybUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljTWlkZGxld2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljTWlkZGxld2FyZUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU2ltdWxhdG9ySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90aWNTaW11bGF0b3JJbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5QbGF0Zm9ybTwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGxhdGZvcm08L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCisgPHA+CisgVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCNnZXRCYXNlX05vZGUoKSI+PENPREU+PGVtPkJhc2UgTm9kZTwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGxhdGZvcm0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0UGxhdGZvcm0oKTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLnVtbDIudW1sLk5vZGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwjZ2V0QmFzZV9Ob2RlKCkiPmdldEJhc2VfTm9kZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkJhc2UgTm9kZTwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwjc2V0QmFzZV9Ob2RlKG9yZy5lY2xpcHNlLnVtbDIudW1sLk5vZGUpIj5zZXRCYXNlX05vZGU8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Ob2RlJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sI2dldEJhc2VfTm9kZSgpIj48Q09ERT48ZW0+QmFzZSBOb2RlPC9lbT48L0NPREU+PC9BPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0QmFzZV9Ob2RlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEJhc2VfTm9kZTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UudW1sMi51bWwuTm9kZSA8Qj5nZXRCYXNlX05vZGU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CYXNlIE5vZGU8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkJhc2UgTm9kZTwvZW0+JyByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+QmFzZSBOb2RlPC9lbT4nIHJlZmVyZW5jZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCNzZXRCYXNlX05vZGUob3JnLmVjbGlwc2UudW1sMi51bWwuTm9kZSkiPjxDT0RFPnNldEJhc2VfTm9kZShOb2RlKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFBsYXRmb3JtX0Jhc2VfTm9kZSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRQbGF0Zm9ybV9CYXNlX05vZGUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRCYXNlX05vZGUob3JnLmVjbGlwc2UudW1sMi51bWwuTm9kZSkiPjwhLS0gLS0+PC9BPjxIMz4KK3NldEJhc2VfTm9kZTwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRCYXNlX05vZGU8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLk5vZGUmbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sI2dldEJhc2VfTm9kZSgpIj48Q09ERT48ZW0+QmFzZSBOb2RlPC9lbT48L0NPREU+PC9BPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+QmFzZSBOb2RlPC9lbT4nIHJlZmVyZW5jZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCNnZXRCYXNlX05vZGUoKSI+PENPREU+Z2V0QmFzZV9Ob2RlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUGxhdGZvcm0uaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGFuZXQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQbGF0Zm9ybS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjc1MjZmYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbApAQCAtMCwwICsxLDM0NiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI3IENFVCAyMDEyIC0tPgorPFRJVExFPgorUG9ydAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Qb3J0IGludGVyZmFjZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iUG9ydCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9Qb3J0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlBvcnQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvRk9OVD4KKzxCUj4KK0ludGVyZmFjZSBQb3J0PC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBTdWJpbnRlcmZhY2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93UG9ydDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZVBvcnQ8L0E+PC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIEltcGxlbWVudGluZyBDbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5EYXRhRmxvd1BvcnRJbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Qb3J0SW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlcnZpY2VQb3J0SW1wbDwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBpbnRlcmZhY2UgPEI+UG9ydDwvQj48RFQ+ZXh0ZW5kcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBvcnQ8L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCisgPHA+CisgVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sI2dldEJhc2VfUG9ydCgpIj48Q09ERT48ZW0+QmFzZSBQb3J0PC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCNnZXRTeW5jaHJvbml6YXRpb25Qb2xpY3koKSI+PENPREU+PGVtPlN5bmNocm9uaXphdGlvbiBQb2xpY3k8L2VtPjwvQ09ERT48L0E+PC9saT4KKyA8L3VsPgorIDwvcD4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFBvcnQoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0UG9ydCgpPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sI2dldEJhc2VfUG9ydCgpIj5nZXRCYXNlX1BvcnQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CYXNlIFBvcnQ8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5bmNocm9uaXphdGlvbktpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwjZ2V0U3luY2hyb25pemF0aW9uUG9saWN5KCkiPmdldFN5bmNocm9uaXphdGlvblBvbGljeTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlN5bmNocm9uaXphdGlvbiBQb2xpY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sI3NldEJhc2VfUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+c2V0QmFzZV9Qb3J0PC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sI2dldEJhc2VfUG9ydCgpIj48Q09ERT48ZW0+QmFzZSBQb3J0PC9lbT48L0NPREU+PC9BPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCNzZXRTeW5jaHJvbml6YXRpb25Qb2xpY3kob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5bmNocm9uaXphdGlvbktpbmQpIj5zZXRTeW5jaHJvbml6YXRpb25Qb2xpY3k8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5bmNocm9uaXphdGlvbktpbmQ8L0E+Jm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwjZ2V0U3luY2hyb25pemF0aW9uUG9saWN5KCkiPjxDT0RFPjxlbT5TeW5jaHJvbml6YXRpb24gUG9saWN5PC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImdldEJhc2VfUG9ydCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRCYXNlX1BvcnQ8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQgPEI+Z2V0QmFzZV9Qb3J0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QmFzZSBQb3J0PC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5CYXNlIFBvcnQ8L2VtPicgcmVmZXJlbmNlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgUG9ydDwvZW0+JyByZWZlcmVuY2UuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCNzZXRCYXNlX1BvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPjxDT0RFPnNldEJhc2VfUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFBvcnRfQmFzZV9Qb3J0KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFBvcnRfQmFzZV9Qb3J0KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0QmFzZV9Qb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj48IS0tIC0tPjwvQT48SDM+CitzZXRCYXNlX1BvcnQ8L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0QmFzZV9Qb3J0PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0Jm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sI2dldEJhc2VfUG9ydCgpIj48Q09ERT48ZW0+QmFzZSBQb3J0PC9lbT48L0NPREU+PC9BPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+QmFzZSBQb3J0PC9lbT4nIHJlZmVyZW5jZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sI2dldEJhc2VfUG9ydCgpIj48Q09ERT5nZXRCYXNlX1BvcnQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTeW5jaHJvbml6YXRpb25Qb2xpY3koKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U3luY2hyb25pemF0aW9uUG9saWN5PC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5bmNocm9uaXphdGlvbktpbmQ8L0E+IDxCPmdldFN5bmNocm9uaXphdGlvblBvbGljeTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlN5bmNocm9uaXphdGlvbiBQb2xpY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyBUaGUgbGl0ZXJhbHMgYXJlIGZyb20gdGhlIGVudW1lcmF0aW9uIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+U3luY2hyb25pemF0aW9uS2luZDwvQ09ERT48L0E+LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+U3luY2hyb25pemF0aW9uIFBvbGljeTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+U3luY2hyb25pemF0aW9uIFBvbGljeTwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5TeW5jaHJvbml6YXRpb25LaW5kPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCNzZXRTeW5jaHJvbml6YXRpb25Qb2xpY3kob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5bmNocm9uaXphdGlvbktpbmQpIj48Q09ERT5zZXRTeW5jaHJvbml6YXRpb25Qb2xpY3koU3luY2hyb25pemF0aW9uS2luZCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQb3J0X1N5bmNocm9uaXphdGlvblBvbGljeSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRQb3J0X1N5bmNocm9uaXphdGlvblBvbGljeSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFN5bmNocm9uaXphdGlvblBvbGljeShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3luY2hyb25pemF0aW9uS2luZCkiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFN5bmNocm9uaXphdGlvblBvbGljeTwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRTeW5jaHJvbml6YXRpb25Qb2xpY3k8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT4mbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwjZ2V0U3luY2hyb25pemF0aW9uUG9saWN5KCkiPjxDT0RFPjxlbT5TeW5jaHJvbml6YXRpb24gUG9saWN5PC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+U3luY2hyb25pemF0aW9uIFBvbGljeTwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5TeW5jaHJvbml6YXRpb25LaW5kPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCNnZXRTeW5jaHJvbml6YXRpb25Qb2xpY3koKSI+PENPREU+Z2V0U3luY2hyb25pemF0aW9uUG9saWN5KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUG9ydC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QcmltaXRpdmVEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQb3J0Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MDViNTU2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sCkBAIC0wLDAgKzEsMjgxIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjcgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitQcmltaXRpdmVEYXRhCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlByaW1pdGl2ZURhdGEgaW50ZXJmYWNlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJQcmltaXRpdmVEYXRhIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1ByaW1pdGl2ZURhdGEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QcmltaXRpdmVEYXRhLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUHJpbWl0aXZlRGF0YS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIFByaW1pdGl2ZURhdGE8L0gyPgorPERMPgorPERUPjxCPkFsbCBTdXBlcmludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIEltcGxlbWVudGluZyBDbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1ByaW1pdGl2ZURhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UHJpbWl0aXZlRGF0YUltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPlByaW1pdGl2ZURhdGE8L0I+PERUPmV4dGVuZHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QcmltaXRpdmUgRGF0YTwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisKKyA8cD4KKyBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgPHVsPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QcmltaXRpdmVEYXRhLmh0bWwjZ2V0QmFzZV9QcmltaXRpdmVUeXBlKCkiPjxDT0RFPjxlbT5CYXNlIFByaW1pdGl2ZSBUeXBlPC9lbT48L0NPREU+PC9BPjwvbGk+CisgPC91bD4KKyA8L3A+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQcmltaXRpdmVEYXRhKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFByaW1pdGl2ZURhdGEoKTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLnVtbDIudW1sLlByaW1pdGl2ZVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCNnZXRCYXNlX1ByaW1pdGl2ZVR5cGUoKSI+Z2V0QmFzZV9QcmltaXRpdmVUeXBlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QmFzZSBQcmltaXRpdmUgVHlwZTwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCNzZXRCYXNlX1ByaW1pdGl2ZVR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuUHJpbWl0aXZlVHlwZSkiPnNldEJhc2VfUHJpbWl0aXZlVHlwZTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlByaW1pdGl2ZVR5cGUmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCNnZXRCYXNlX1ByaW1pdGl2ZVR5cGUoKSI+PENPREU+PGVtPkJhc2UgUHJpbWl0aXZlIFR5cGU8L2VtPjwvQ09ERT48L0E+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0QmFzZV9QcmltaXRpdmVUeXBlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEJhc2VfUHJpbWl0aXZlVHlwZTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UudW1sMi51bWwuUHJpbWl0aXZlVHlwZSA8Qj5nZXRCYXNlX1ByaW1pdGl2ZVR5cGU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CYXNlIFByaW1pdGl2ZSBUeXBlPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5CYXNlIFByaW1pdGl2ZSBUeXBlPC9lbT4nIHJlZmVyZW5jZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5CYXNlIFByaW1pdGl2ZSBUeXBlPC9lbT4nIHJlZmVyZW5jZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sI3NldEJhc2VfUHJpbWl0aXZlVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5QcmltaXRpdmVUeXBlKSI+PENPREU+c2V0QmFzZV9QcmltaXRpdmVUeXBlKFByaW1pdGl2ZVR5cGUpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UHJpbWl0aXZlRGF0YV9CYXNlX1ByaW1pdGl2ZVR5cGUoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0UHJpbWl0aXZlRGF0YV9CYXNlX1ByaW1pdGl2ZVR5cGUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRCYXNlX1ByaW1pdGl2ZVR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuUHJpbWl0aXZlVHlwZSkiPjwhLS0gLS0+PC9BPjxIMz4KK3NldEJhc2VfUHJpbWl0aXZlVHlwZTwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRCYXNlX1ByaW1pdGl2ZVR5cGU8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlByaW1pdGl2ZVR5cGUmbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QcmltaXRpdmVEYXRhLmh0bWwjZ2V0QmFzZV9QcmltaXRpdmVUeXBlKCkiPjxDT0RFPjxlbT5CYXNlIFByaW1pdGl2ZSBUeXBlPC9lbT48L0NPREU+PC9BPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+QmFzZSBQcmltaXRpdmUgVHlwZTwvZW0+JyByZWZlcmVuY2UuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCNnZXRCYXNlX1ByaW1pdGl2ZVR5cGUoKSI+PENPREU+Z2V0QmFzZV9QcmltaXRpdmVUeXBlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUHJpbWl0aXZlRGF0YS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQcmltaXRpdmVEYXRhLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmEzM2QyNGIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sCkBAIC0wLDAgKzEsNDkyIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjcgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitSb2JvdAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdCBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlJvYm90IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1JvYm90Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIFJvYm90PC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWdlbnQ8L0E+LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIEltcGxlbWVudGluZyBDbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90SW1wbDwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBpbnRlcmZhY2UgPEI+Um9ib3Q8L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BZ2VudDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Sb2JvdDwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisKKyA8cD4KKyBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgPHVsPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI2dldEtpbmQoKSI+PENPREU+PGVtPktpbmQ8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNnZXRNYXNzKCkiPjxDT0RFPjxlbT5NYXNzPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjZ2V0V2lkdGgoKSI+PENPREU+PGVtPldpZHRoPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjZ2V0VWd2S2luZCgpIj48Q09ERT48ZW0+VWd2IEtpbmQ8L2VtPjwvQ09ERT48L0E+PC9saT4KKyA8L3VsPgorIDwvcD4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFJvYm90KCk8L0NPREU+PC9BPjwvREw+Cis8SFI+CisKKzxQPgorCis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNnZXRLaW5kKCkiPmdldEtpbmQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5LaW5kPC9iPjwvZW0+JyBhdHRyaWJ1dGUuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjZ2V0TWFzcygpIj5nZXRNYXNzPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TWFzczwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VUdWS2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjZ2V0VWd2S2luZCgpIj5nZXRVZ3ZLaW5kPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VWd2IEtpbmQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNnZXRXaWR0aCgpIj5nZXRXaWR0aDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPldpZHRoPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNzZXRLaW5kKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdEtpbmQpIj5zZXRLaW5kPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90S2luZDwvQT4mbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjZ2V0S2luZCgpIj48Q09ERT48ZW0+S2luZDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI3NldE1hc3MoamF2YS5sYW5nLlN0cmluZykiPnNldE1hc3M8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI2dldE1hc3MoKSI+PENPREU+PGVtPk1hc3M8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNzZXRVZ3ZLaW5kKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5VR1ZLaW5kKSI+c2V0VWd2S2luZDwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VUdWS2luZDwvQT4mbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjZ2V0VWd2S2luZCgpIj48Q09ERT48ZW0+VWd2IEtpbmQ8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNzZXRXaWR0aChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0V2lkdGg8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI2dldFdpZHRoKCkiPjxDT0RFPjxlbT5XaWR0aDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFnZW50Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWdlbnQ8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwjZ2V0TW92ZXNPdmVyKCkiPmdldE1vdmVzT3ZlcjwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGh5c2ljYWxPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRFdmVsb3Zlc0luKCkiPmdldEV2ZWxvdmVzSW48L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRIYXNTdXJmYWNlKCkiPmdldEhhc1N1cmZhY2U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNzZXRIYXNTdXJmYWNlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlKSI+c2V0SGFzU3VyZmFjZTwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0S2luZCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRLaW5kPC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPiA8Qj5nZXRLaW5kPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+S2luZDwvYj48L2VtPicgYXR0cmlidXRlLgorIFRoZSBkZWZhdWx0IHZhbHVlIGlzIDxjb2RlPiJVR1YiPC9jb2RlPi4KKyBUaGUgbGl0ZXJhbHMgYXJlIGZyb20gdGhlIGVudW1lcmF0aW9uIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5Sb2JvdEtpbmQ8L0NPREU+PC9BPi4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPktpbmQ8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPktpbmQ8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5Sb2JvdEtpbmQ8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNzZXRLaW5kKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdEtpbmQpIj48Q09ERT5zZXRLaW5kKFJvYm90S2luZCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdF9LaW5kKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFJvYm90X0tpbmQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRLaW5kKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdEtpbmQpIj48IS0tIC0tPjwvQT48SDM+CitzZXRLaW5kPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldEtpbmQ8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdEtpbmQ8L0E+Jm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNnZXRLaW5kKCkiPjxDT0RFPjxlbT5LaW5kPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+S2luZDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlJvYm90S2luZDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI2dldEtpbmQoKSI+PENPREU+Z2V0S2luZCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldE1hc3MoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TWFzczwvSDM+Cis8UFJFPgoramF2YS5sYW5nLlN0cmluZyA8Qj5nZXRNYXNzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TWFzczwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+TWFzczwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+TWFzczwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjc2V0TWFzcyhqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+c2V0TWFzcyhTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Um9ib3RfTWFzcygpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRSb2JvdF9NYXNzKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0TWFzcyhqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0TWFzczwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRNYXNzPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNnZXRNYXNzKCkiPjxDT0RFPjxlbT5NYXNzPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TWFzczwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjZ2V0TWFzcygpIj48Q09ERT5nZXRNYXNzKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V2lkdGgoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2lkdGg8L0gzPgorPFBSRT4KK2phdmEubGFuZy5TdHJpbmcgPEI+Z2V0V2lkdGg8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5XaWR0aDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+V2lkdGg8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPldpZHRoPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNzZXRXaWR0aChqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+c2V0V2lkdGgoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90X1dpZHRoKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFJvYm90X1dpZHRoKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0V2lkdGgoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFdpZHRoPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldFdpZHRoPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNnZXRXaWR0aCgpIj48Q09ERT48ZW0+V2lkdGg8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5XaWR0aDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjZ2V0V2lkdGgoKSI+PENPREU+Z2V0V2lkdGgoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRVZ3ZLaW5kKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFVndktpbmQ8L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VUdWS2luZDwvQT4gPEI+Z2V0VWd2S2luZDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlVndiBLaW5kPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgVGhlIGxpdGVyYWxzIGFyZSBmcm9tIHRoZSBlbnVtZXJhdGlvbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlVHVktpbmQ8L0NPREU+PC9BPi4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlVndiBLaW5kPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5VZ3YgS2luZDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5VR1ZLaW5kPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjc2V0VWd2S2luZChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVUdWS2luZCkiPjxDT0RFPnNldFVndktpbmQoVUdWS2luZCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdF9VZ3ZLaW5kKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFJvYm90X1VndktpbmQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRVZ3ZLaW5kKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5VR1ZLaW5kKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0VWd2S2luZDwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRVZ3ZLaW5kPC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVHVktpbmQ8L0E+Jm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNnZXRVZ3ZLaW5kKCkiPjxDT0RFPjxlbT5VZ3YgS2luZDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlVndiBLaW5kPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlVHVktpbmQ8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNnZXRVZ3ZLaW5kKCkiPjxDT0RFPmdldFVndktpbmQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9Sb2JvdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3QuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41NzhiZmQyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwKQEAgLTAsMCArMSw3NTggQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyNyBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1JvYm90S2luZAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdEtpbmQgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlJvYm90S2luZCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9Sb2JvdEtpbmQuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdEtpbmQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2VudW1fY29uc3RhbnRfc3VtbWFyeSI+RU5VTSBDT05TVEFOVFM8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwOzxBIEhSRUY9IiNlbnVtX2NvbnN0YW50X2RldGFpbCI+RU5VTSBDT05TVEFOVFM8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9kZXRhaWwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorRW51bSBSb2JvdEtpbmQ8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPmphdmEubGFuZy5FbnVtJmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdEtpbmQ8L0E+Jmd0OworICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdEtpbmQ8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5qYXZhLmlvLlNlcmlhbGl6YWJsZSwgamF2YS5sYW5nLkNvbXBhcmFibGUmbHQ7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90S2luZDwvQT4mZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGVudW0gPEI+Um9ib3RLaW5kPC9CPjxEVD5leHRlbmRzIGphdmEubGFuZy5FbnVtJmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdEtpbmQ8L0E+Jmd0OzxEVD5pbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FbnVtZXJhdG9yPC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbGl0ZXJhbHMgb2YgdGhlIGVudW1lcmF0aW9uICc8ZW0+PGI+Um9ib3QgS2luZDwvYj48L2VtPicsCisgYW5kIHV0aWxpdHkgbWV0aG9kcyBmb3Igd29ya2luZyB3aXRoIHRoZW0uCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdEtpbmQoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0Um9ib3RLaW5kKCk8L0NPREU+PC9BPjwvREw+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PT09PSBFTlVNIENPTlNUQU5UIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImVudW1fY29uc3RhbnRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkVudW0gQ29uc3RhbnQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwjUElMT1RFRCI+UElMT1RFRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgJzxlbT48Yj5QaWxvdGVkPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdDwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sI1VBViI+VUFWPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSAnPGVtPjxiPlVBVjwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3Q8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCNVR1YiPlVHVjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgJzxlbT48Yj5VR1Y8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwjVVNWIj5VU1Y8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlICc8ZW0+PGI+VVNWPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdDwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sI1VVViI+VVVWPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSAnPGVtPjxiPlVVVjwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3Q8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCNQSUxPVEVEX1ZBTFVFIj5QSUxPVEVEX1ZBTFVFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSAnPGVtPjxiPlBpbG90ZWQ8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCNVQVZfVkFMVUUiPlVBVl9WQUxVRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgJzxlbT48Yj5VQVY8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCNVR1ZfVkFMVUUiPlVHVl9WQUxVRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgJzxlbT48Yj5VR1Y8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCNVU1ZfVkFMVUUiPlVTVl9WQUxVRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgJzxlbT48Yj5VU1Y8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCNVVVZfVkFMVUUiPlVVVl9WQUxVRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgJzxlbT48Yj5VVVY8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS51dGlsLkxpc3QmbHQ7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90S2luZDwvQT4mZ3Q7PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCNWQUxVRVMiPlZBTFVFUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHB1YmxpYyByZWFkLW9ubHkgbGlzdCBvZiBhbGwgdGhlICc8ZW0+PGI+Um9ib3QgS2luZDwvYj48L2VtPicgZW51bWVyYXRvcnM8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdEtpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCNnZXQoaW50KSI+Z2V0PC9BPjwvQj4oaW50Jm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSAnPGVtPjxiPlJvYm90IEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGludGVnZXIgdmFsdWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90S2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sI2dldChqYXZhLmxhbmcuU3RyaW5nKSI+Z2V0PC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO2xpdGVyYWwpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSAnPGVtPjxiPlJvYm90IEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGxpdGVyYWwgdmFsdWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90S2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sI2dldEJ5TmFtZShqYXZhLmxhbmcuU3RyaW5nKSI+Z2V0QnlOYW1lPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25hbWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSAnPGVtPjxiPlJvYm90IEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwjZ2V0TGl0ZXJhbCgpIj5nZXRMaXRlcmFsPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCNnZXROYW1lKCkiPmdldE5hbWU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwjZ2V0VmFsdWUoKSI+Z2V0VmFsdWU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sI3RvU3RyaW5nKCkiPnRvU3RyaW5nPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbGl0ZXJhbCB2YWx1ZSBvZiB0aGUgZW51bWVyYXRvciwgd2hpY2ggaXMgaXRzIHN0cmluZyByZXByZXNlbnRhdGlvbjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwjdmFsdWVPZihqYXZhLmxhbmcuU3RyaW5nKSI+dmFsdWVPZjwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuYW1lKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgZW51bSBjb25zdGFudCBvZiB0aGlzIHR5cGUgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdEtpbmQ8L0E+W108L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sI3ZhbHVlcygpIj52YWx1ZXM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGFuIGFycmF5IGNvbnRhaW5pbmcgdGhlIGNvbnN0YW50cyBvZiB0aGlzIGVudW0gdHlwZSwgaW4KK3RoZSBvcmRlciB0aGV5J3JlIGRlY2xhcmVkLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLkVudW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5FbnVtPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Y29tcGFyZVRvLCBlcXVhbHMsIGdldERlY2xhcmluZ0NsYXNzLCBoYXNoQ29kZSwgbmFtZSwgb3JkaW5hbCwgdmFsdWVPZjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXRDbGFzcywgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gRU5VTSBDT05TVEFOVCBERVRBSUwgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImVudW1fY29uc3RhbnRfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+RW51bSBDb25zdGFudCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iVVVWIj48IS0tIC0tPjwvQT48SDM+CitVVVY8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90S2luZDwvQT4gPEI+VVVWPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPlVVVjwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sI1VVVl9WQUxVRSI+PENPREU+VVVWX1ZBTFVFPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVUdWIj48IS0tIC0tPjwvQT48SDM+CitVR1Y8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90S2luZDwvQT4gPEI+VUdWPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPlVHVjwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sI1VHVl9WQUxVRSI+PENPREU+VUdWX1ZBTFVFPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVUFWIj48IS0tIC0tPjwvQT48SDM+CitVQVY8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90S2luZDwvQT4gPEI+VUFWPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPlVBVjwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sI1VBVl9WQUxVRSI+PENPREU+VUFWX1ZBTFVFPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVVNWIj48IS0tIC0tPjwvQT48SDM+CitVU1Y8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90S2luZDwvQT4gPEI+VVNWPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPlVTVjwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sI1VTVl9WQUxVRSI+PENPREU+VVNWX1ZBTFVFPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUElMT1RFRCI+PCEtLSAtLT48L0E+PEgzPgorUElMT1RFRDwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPiA8Qj5QSUxPVEVEPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPlBpbG90ZWQ8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCNQSUxPVEVEX1ZBTFVFIj48Q09ERT5QSUxPVEVEX1ZBTFVFPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKworPCEtLSA9PT09PT09PT09PT0gRklFTEQgREVUQUlMID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iVVVWX1ZBTFVFIj48IS0tIC0tPjwvQT48SDM+CitVVVZfVkFMVUU8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgaW50IDxCPlVVVl9WQUxVRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgJzxlbT48Yj5VVVY8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiAnPGVtPjxiPlVVVjwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sI1VVViI+PENPREU+VVVWPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90S2luZC5VVVZfVkFMVUUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVUdWX1ZBTFVFIj48IS0tIC0tPjwvQT48SDM+CitVR1ZfVkFMVUU8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgaW50IDxCPlVHVl9WQUxVRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgJzxlbT48Yj5VR1Y8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiAnPGVtPjxiPlVHVjwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sI1VHViI+PENPREU+VUdWPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90S2luZC5VR1ZfVkFMVUUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVUFWX1ZBTFVFIj48IS0tIC0tPjwvQT48SDM+CitVQVZfVkFMVUU8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgaW50IDxCPlVBVl9WQUxVRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgJzxlbT48Yj5VQVY8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiAnPGVtPjxiPlVBVjwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sI1VBViI+PENPREU+VUFWPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90S2luZC5VQVZfVkFMVUUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVVNWX1ZBTFVFIj48IS0tIC0tPjwvQT48SDM+CitVU1ZfVkFMVUU8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgaW50IDxCPlVTVl9WQUxVRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgJzxlbT48Yj5VU1Y8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiAnPGVtPjxiPlVTVjwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sI1VTViI+PENPREU+VVNWPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90S2luZC5VU1ZfVkFMVUUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUElMT1RFRF9WQUxVRSI+PCEtLSAtLT48L0E+PEgzPgorUElMT1RFRF9WQUxVRTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgPEI+UElMT1RFRF9WQUxVRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgJzxlbT48Yj5QaWxvdGVkPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgJzxlbT48Yj5QaWxvdGVkPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdCBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwjUElMT1RFRCI+PENPREU+UElMT1RFRDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdEtpbmQuUElMT1RFRF9WQUxVRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJWQUxVRVMiPjwhLS0gLS0+PC9BPjxIMz4KK1ZBTFVFUzwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCBqYXZhLnV0aWwuTGlzdCZsdDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPiZndDsgPEI+VkFMVUVTPC9CPjwvUFJFPgorPERMPgorPEREPkEgcHVibGljIHJlYWQtb25seSBsaXN0IG9mIGFsbCB0aGUgJzxlbT48Yj5Sb2JvdCBLaW5kPC9iPjwvZW0+JyBlbnVtZXJhdG9ycy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJ2YWx1ZXMoKSI+PCEtLSAtLT48L0E+PEgzPgordmFsdWVzPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGZpbmFsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdEtpbmQ8L0E+W10gPEI+dmFsdWVzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhbiBhcnJheSBjb250YWluaW5nIHRoZSBjb25zdGFudHMgb2YgdGhpcyBlbnVtIHR5cGUsIGluCit0aGUgb3JkZXIgdGhleSdyZSBkZWNsYXJlZC4gIFRoaXMgbWV0aG9kIG1heSBiZSB1c2VkIHRvIGl0ZXJhdGUKK292ZXIgdGhlIGNvbnN0YW50cyBhcyBmb2xsb3dzOgorPHByZT4KK2ZvcihSb2JvdEtpbmQgYyA6IFJvYm90S2luZC52YWx1ZXMoKSkKKyAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKGMpOworPC9wcmU+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YW4gYXJyYXkgY29udGFpbmluZyB0aGUgY29uc3RhbnRzIG9mIHRoaXMgZW51bSB0eXBlLCBpbgordGhlIG9yZGVyIHRoZXkncmUgZGVjbGFyZWQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InZhbHVlT2YoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3ZhbHVlT2Y8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90S2luZDwvQT4gPEI+dmFsdWVPZjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25hbWUpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgZW51bSBjb25zdGFudCBvZiB0aGlzIHR5cGUgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUuCitUaGUgc3RyaW5nIG11c3QgbWF0Y2ggPEk+ZXhhY3RseTwvST4gYW4gaWRlbnRpZmllciB1c2VkIHRvIGRlY2xhcmUgYW4KK2VudW0gY29uc3RhbnQgaW4gdGhpcyB0eXBlLiAgKEV4dHJhbmVvdXMgd2hpdGVzcGFjZSBjaGFyYWN0ZXJzIGFyZSAKK25vdCBwZXJtaXR0ZWQuKQorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uYW1lPC9DT0RFPiAtIHRoZSBuYW1lIG9mIHRoZSBlbnVtIGNvbnN0YW50IHRvIGJlIHJldHVybmVkLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgZW51bSBjb25zdGFudCB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZQorPERUPjxCPlRocm93czo8L0I+Cis8REQ+PENPREU+amF2YS5sYW5nLklsbGVnYWxBcmd1bWVudEV4Y2VwdGlvbjwvQ09ERT4gLSBpZiB0aGlzIGVudW0gdHlwZSBoYXMgbm8gY29uc3RhbnQKK3dpdGggdGhlIHNwZWNpZmllZCBuYW1lPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXQoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2dldDwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPiA8Qj5nZXQ8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtsaXRlcmFsKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlICc8ZW0+PGI+Um9ib3QgS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbGl0ZXJhbCB2YWx1ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRCeU5hbWUoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEJ5TmFtZTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPiA8Qj5nZXRCeU5hbWU8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuYW1lKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlICc8ZW0+PGI+Um9ib3QgS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXQoaW50KSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdEtpbmQ8L0E+IDxCPmdldDwvQj4oaW50Jm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgJzxlbT48Yj5Sb2JvdCBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBpbnRlZ2VyIHZhbHVlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFZhbHVlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFZhbHVlPC9IMz4KKzxQUkU+CitwdWJsaWMgaW50IDxCPmdldFZhbHVlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+Z2V0VmFsdWU8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXROYW1lKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldE5hbWU8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldE5hbWU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5nZXROYW1lPC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3I8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBuYW1lPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRMaXRlcmFsKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldExpdGVyYWw8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldExpdGVyYWw8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5nZXRMaXRlcmFsPC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3I8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBsaXRlcmFsPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJ0b1N0cmluZygpIj48IS0tIC0tPjwvQT48SDM+Cit0b1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+dG9TdHJpbmc8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBsaXRlcmFsIHZhbHVlIG9mIHRoZSBlbnVtZXJhdG9yLCB3aGljaCBpcyBpdHMgc3RyaW5nIHJlcHJlc2VudGF0aW9uLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+dG9TdHJpbmc8L0NPREU+IGluIGNsYXNzIDxDT0RFPmphdmEubGFuZy5FbnVtJmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdEtpbmQ8L0E+Jmd0OzwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1JvYm90S2luZC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlJvYm90S2luZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZW51bV9jb25zdGFudF9zdW1tYXJ5Ij5FTlVNIENPTlNUQU5UUzwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX3N1bW1hcnkiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7PEEgSFJFRj0iI2VudW1fY29uc3RhbnRfZGV0YWlsIj5FTlVNIENPTlNUQU5UUzwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjEzZDVmMGEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sCkBAIC0wLDAgKzEsMTU0NCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI3IENFVCAyMDEyIC0tPgorPFRJVExFPgorUm9ib3RNTEZhY3RvcnkKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTEZhY3RvcnkgaW50ZXJmYWNlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJSb2JvdE1MRmFjdG9yeSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9Sb2JvdE1MRmFjdG9yeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX3N1bW1hcnkiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwOzxBIEhSRUY9IiNmaWVsZF9kZXRhaWwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvRk9OVD4KKzxCUj4KK0ludGVyZmFjZSBSb2JvdE1MRmFjdG9yeTwvSDI+Cis8REw+Cis8RFQ+PEI+QWxsIFN1cGVyaW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3RvcnksIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5BbGwgS25vd24gSW1wbGVtZW50aW5nIENsYXNzZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RNTEZhY3RvcnlJbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5Sb2JvdE1MRmFjdG9yeTwvQj48RFQ+ZXh0ZW5kcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3Rvcnk8L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGUgPGI+RmFjdG9yeTwvYj4gZm9yIHRoZSBtb2RlbC4KKyBJdCBwcm92aWRlcyBhIGNyZWF0ZSBtZXRob2QgZm9yIGVhY2ggbm9uLWFic3RyYWN0IGNsYXNzIG9mIHRoZSBtb2RlbC4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+Um9ib3RNTFBhY2thZ2U8L0NPREU+PC9BPjwvREw+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2VJTlNUQU5DRSI+ZUlOU1RBTkNFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIGZhY3Rvcnk8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWN0dWF0b3JTeXN0ZW08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUFjdHVhdG9yU3lzdGVtKCkiPmNyZWF0ZUFjdHVhdG9yU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5BY3R1YXRvciBTeXN0ZW08L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BZ2VudDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlQWdlbnQoKSI+Y3JlYXRlQWdlbnQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkFnZW50PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlQWxnb3JpdGhtKCkiPmNyZWF0ZUFsZ29yaXRobTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+QWxnb3JpdGhtPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG1MaWJyYXJ5PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVBbGdvcml0aG1MaWJyYXJ5KCkiPmNyZWF0ZUFsZ29yaXRobUxpYnJhcnk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkFsZ29yaXRobSBMaWJyYXJ5PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJsZW5kZXJNb3JzZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlQmxlbmRlck1vcnNlKCkiPmNyZWF0ZUJsZW5kZXJNb3JzZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+QmxlbmRlciBNb3JzZTwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQnVpbGRpbmcuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJ1aWxkaW5nPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVCdWlsZGluZygpIj5jcmVhdGVCdWlsZGluZzwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+QnVpbGRpbmc8L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q2FtZXJhU3lzdGVtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVDYW1lcmFTeXN0ZW0oKSI+Y3JlYXRlQ2FtZXJhU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5DYW1lcmEgU3lzdGVtPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Db2xsZWN0aW9uPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVDb2xsZWN0aW9uKCkiPmNyZWF0ZUNvbGxlY3Rpb248L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkNvbGxlY3Rpb248L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbXBvc2VkRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q29tcG9zZWREYXRhPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVDb21wb3NlZERhdGEoKSI+Y3JlYXRlQ29tcG9zZWREYXRhPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Db21wb3NlZCBEYXRhPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DeWNhYlRLPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVDeWNhYlRLKCkiPmNyZWF0ZUN5Y2FiVEs8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkN5Y2FiIFRLPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93UG9ydDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlRGF0YUZsb3dQb3J0KCkiPmNyZWF0ZURhdGFGbG93UG9ydDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+RGF0YSBGbG93IFBvcnQ8L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW5naW5lU3lzdGVtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVFbmdpbmVTeXN0ZW0oKSI+Y3JlYXRlRW5naW5lU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5FbmdpbmUgU3lzdGVtPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW52aXJvbm1lbnQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUVudmlyb25tZW50KCkiPmNyZWF0ZUVudmlyb25tZW50PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5FbnZpcm9ubWVudDwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkZsb29yPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVGbG9vcigpIj5jcmVhdGVGbG9vcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Rmxvb3I8L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+R1BTU3lzdGVtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVHUFNTeXN0ZW0oKSI+Y3JlYXRlR1BTU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5HUFMgU3lzdGVtPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IYXJkd2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SGFyZHdhcmU8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUhhcmR3YXJlKCkiPmNyZWF0ZUhhcmR3YXJlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5IYXJkd2FyZTwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSHVtYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkh1bWFuPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVIdW1hbigpIj5jcmVhdGVIdW1hbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+SHVtYW48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5JbWFnZVNlbnNvclN5c3RlbTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlSW1hZ2VTZW5zb3JTeXN0ZW0oKSI+Y3JlYXRlSW1hZ2VTZW5zb3JTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkltYWdlIFNlbnNvciBTeXN0ZW08L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MYW5kU3VyZmFjZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlTGFuZFN1cmZhY2UoKSI+Y3JlYXRlTGFuZFN1cmZhY2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkxhbmQgU3VyZmFjZTwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxpZGFyU3lzdGVtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVMaWRhclN5c3RlbSgpIj5jcmVhdGVMaWRhclN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TGlkYXIgU3lzdGVtPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtKCkiPmNyZWF0ZUxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0oKSI+Y3JlYXRlT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5PYmplY3QgRGV0ZWN0aW9uIFNlbnNvciBTeXN0ZW08L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0oKSI+Y3JlYXRlT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPk9iamVjdCBUcmFja2luZyBTZW5zb3IgU3lzdGVtPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9uUG9ydDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlT25Qb3J0KCkiPmNyZWF0ZU9uUG9ydDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+T24gUG9ydDwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGVkZXN0cmlhbjwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlUGVkZXN0cmlhbigpIj5jcmVhdGVQZWRlc3RyaWFuPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5QZWRlc3RyaWFuPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsRGF0YTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlUGh5c2ljYWxEYXRhKCkiPmNyZWF0ZVBoeXNpY2FsRGF0YTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UGh5c2ljYWwgRGF0YTwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVQaHlzaWNhbE9iamVjdCgpIj5jcmVhdGVQaHlzaWNhbE9iamVjdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UGh5c2ljYWwgT2JqZWN0PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGFuZXQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBsYW5ldDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlUGxhbmV0KCkiPmNyZWF0ZVBsYW5ldDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UGxhbmV0PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGxhdGZvcm08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVBsYXRmb3JtKCkiPmNyZWF0ZVBsYXRmb3JtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5QbGF0Zm9ybTwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UHJpbWl0aXZlRGF0YTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlUHJpbWl0aXZlRGF0YSgpIj5jcmVhdGVQcmltaXRpdmVEYXRhPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5QcmltaXRpdmUgRGF0YTwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVSb2JvdCgpIj5jcmVhdGVSb2JvdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Um9ib3Q8L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlUm9ib3RpY01pZGRsZXdhcmUoKSI+Y3JlYXRlUm9ib3RpY01pZGRsZXdhcmU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlJvYm90aWMgTWlkZGxld2FyZTwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1NpbXVsYXRvci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1NpbXVsYXRvcjwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlUm9ib3RpY1NpbXVsYXRvcigpIj5jcmVhdGVSb2JvdGljU2ltdWxhdG9yPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Sb2JvdGljIFNpbXVsYXRvcjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlUm9ib3RpY1N5c3RlbSgpIj5jcmVhdGVSb2JvdGljU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Sb2JvdGljIFN5c3RlbTwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yRHJpdmVyLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JEcml2ZXI8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVNlbnNvckRyaXZlcigpIj5jcmVhdGVTZW5zb3JEcml2ZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlNlbnNvciBEcml2ZXI8L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVTZW5zb3JTeXN0ZW0oKSI+Y3JlYXRlU2Vuc29yU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TZW5zb3IgU3lzdGVtPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZVBvcnQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVNlcnZpY2VQb3J0KCkiPmNyZWF0ZVNlcnZpY2VQb3J0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TZXJ2aWNlIFBvcnQ8L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2ltdWxhdGVkU3lzdGVtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVTaW11bGF0ZWRTeXN0ZW0oKSI+Y3JlYXRlU2ltdWxhdGVkU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TaW11bGF0ZWQgU3lzdGVtPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U29mdHdhcmU8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVNvZnR3YXJlKCkiPmNyZWF0ZVNvZnR3YXJlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Tb2Z0d2FyZTwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdGFpcnM8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVN0YWlycygpIj5jcmVhdGVTdGFpcnM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlN0YWlyczwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YXRlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVTdGF0ZSgpIj5jcmVhdGVTdGF0ZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+U3RhdGU8L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVN1cmZhY2UoKSI+Y3JlYXRlU3VyZmFjZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+U3VyZmFjZTwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVN5c3RlbSgpIj5jcmVhdGVTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlN5c3RlbTwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VHJhbnNpdGlvbjwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlVHJhbnNpdGlvbigpIj5jcmVhdGVUcmFuc2l0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5UcmFuc2l0aW9uPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XYXRlclN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldhdGVyU3VyZmFjZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlV2F0ZXJTdXJmYWNlKCkiPmNyZWF0ZVdhdGVyU3VyZmFjZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+V2F0ZXIgU3VyZmFjZTwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVXaGVlbFN5c3RlbSgpIj5jcmVhdGVXaGVlbFN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+V2hlZWwgU3lzdGVtPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2dldFJvYm90TUxQYWNrYWdlKCkiPmdldFJvYm90TUxQYWNrYWdlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcGFja2FnZSBzdXBwb3J0ZWQgYnkgdGhpcyBmYWN0b3J5PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3RvcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3Rvcnk8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5jb252ZXJ0VG9TdHJpbmcsIGNyZWF0ZSwgY3JlYXRlRnJvbVN0cmluZywgZ2V0RVBhY2thZ2UsIHNldEVQYWNrYWdlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmdldEVBbm5vdGF0aW9uLCBnZXRFQW5ub3RhdGlvbnM8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBGSUVMRCBERVRBSUwgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJlSU5TVEFOQ0UiPjwhLS0gLS0+PC9BPjxIMz4KK2VJTlNUQU5DRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+IDxCPmVJTlNUQU5DRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBmYWN0b3J5LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImNyZWF0ZVRyYW5zaXRpb24oKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlVHJhbnNpdGlvbjwvSDM+Cis8UFJFPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlRyYW5zaXRpb248L0E+IDxCPmNyZWF0ZVRyYW5zaXRpb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlRyYW5zaXRpb248L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5UcmFuc2l0aW9uPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlQWxnb3JpdGhtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUFsZ29yaXRobTwvSDM+Cis8UFJFPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPiA8Qj5jcmVhdGVBbGdvcml0aG08L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkFsZ29yaXRobTwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkFsZ29yaXRobTwvZW0+Jy48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVJvYm90KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVJvYm90PC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90PC9BPiA8Qj5jcmVhdGVSb2JvdDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Um9ib3Q8L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Sb2JvdDwvZW0+Jy48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVN5c3RlbSgpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVTeXN0ZW08L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT4gPEI+Y3JlYXRlU3lzdGVtPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TeXN0ZW08L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TeXN0ZW08L2VtPicuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVEYXRhRmxvd1BvcnQoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlRGF0YUZsb3dQb3J0PC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd1BvcnQ8L0E+IDxCPmNyZWF0ZURhdGFGbG93UG9ydDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+RGF0YSBGbG93IFBvcnQ8L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5EYXRhIEZsb3cgUG9ydDwvZW0+Jy48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUVudmlyb25tZW50KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUVudmlyb25tZW50PC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVudmlyb25tZW50PC9BPiA8Qj5jcmVhdGVFbnZpcm9ubWVudDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+RW52aXJvbm1lbnQ8L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5FbnZpcm9ubWVudDwvZW0+Jy48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVN1cmZhY2UoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlU3VyZmFjZTwvSDM+Cis8UFJFPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+IDxCPmNyZWF0ZVN1cmZhY2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlN1cmZhY2U8L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TdXJmYWNlPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlQnVpbGRpbmcoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlQnVpbGRpbmc8L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CdWlsZGluZy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QnVpbGRpbmc8L0E+IDxCPmNyZWF0ZUJ1aWxkaW5nPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5CdWlsZGluZzwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkJ1aWxkaW5nPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlQWdlbnQoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlQWdlbnQ8L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWdlbnQ8L0E+IDxCPmNyZWF0ZUFnZW50PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5BZ2VudDwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkFnZW50PC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlUGxhbmV0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVBsYW5ldDwvSDM+Cis8UFJFPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYW5ldC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGxhbmV0PC9BPiA8Qj5jcmVhdGVQbGFuZXQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlBsYW5ldDwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlBsYW5ldDwvZW0+Jy48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUxhbmRTdXJmYWNlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUxhbmRTdXJmYWNlPC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxhbmRTdXJmYWNlPC9BPiA8Qj5jcmVhdGVMYW5kU3VyZmFjZTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TGFuZCBTdXJmYWNlPC9lbT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TGFuZCBTdXJmYWNlPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlRmxvb3IoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlRmxvb3I8L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Rmxvb3I8L0E+IDxCPmNyZWF0ZUZsb29yPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5GbG9vcjwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkZsb29yPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlV2F0ZXJTdXJmYWNlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVdhdGVyU3VyZmFjZTwvSDM+Cis8UFJFPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2F0ZXJTdXJmYWNlPC9BPiA8Qj5jcmVhdGVXYXRlclN1cmZhY2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPldhdGVyIFN1cmZhY2U8L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5XYXRlciBTdXJmYWNlPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlSHVtYW4oKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlSHVtYW48L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SHVtYW48L0E+IDxCPmNyZWF0ZUh1bWFuPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5IdW1hbjwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkh1bWFuPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlUGVkZXN0cmlhbigpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVQZWRlc3RyaWFuPC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGVkZXN0cmlhbjwvQT4gPEI+Y3JlYXRlUGVkZXN0cmlhbjwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UGVkZXN0cmlhbjwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlBlZGVzdHJpYW48L2VtPicuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVTdGFpcnMoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlU3RhaXJzPC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdGFpcnM8L0E+IDxCPmNyZWF0ZVN0YWlyczwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+U3RhaXJzPC9lbT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+U3RhaXJzPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlUGxhdGZvcm0oKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlUGxhdGZvcm08L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGxhdGZvcm08L0E+IDxCPmNyZWF0ZVBsYXRmb3JtPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5QbGF0Zm9ybTwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlBsYXRmb3JtPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlUm9ib3RpY01pZGRsZXdhcmUoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlUm9ib3RpY01pZGRsZXdhcmU8L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmU8L0E+IDxCPmNyZWF0ZVJvYm90aWNNaWRkbGV3YXJlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Sb2JvdGljIE1pZGRsZXdhcmU8L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Sb2JvdGljIE1pZGRsZXdhcmU8L2VtPicuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVSb2JvdGljU2ltdWxhdG9yKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVJvYm90aWNTaW11bGF0b3I8L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU2ltdWxhdG9yPC9BPiA8Qj5jcmVhdGVSb2JvdGljU2ltdWxhdG9yPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Sb2JvdGljIFNpbXVsYXRvcjwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlJvYm90aWMgU2ltdWxhdG9yPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlQ3ljYWJUSygpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVDeWNhYlRLPC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q3ljYWJUSzwvQT4gPEI+Y3JlYXRlQ3ljYWJUSzwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Q3ljYWIgVEs8L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5DeWNhYiBUSzwvZW0+Jy48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUJsZW5kZXJNb3JzZSgpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVCbGVuZGVyTW9yc2U8L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJsZW5kZXJNb3JzZTwvQT4gPEI+Y3JlYXRlQmxlbmRlck1vcnNlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5CbGVuZGVyIE1vcnNlPC9lbT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+QmxlbmRlciBNb3JzZTwvZW0+Jy48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZU9uUG9ydCgpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVPblBvcnQ8L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9uUG9ydDwvQT4gPEI+Y3JlYXRlT25Qb3J0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5PbiBQb3J0PC9lbT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+T24gUG9ydDwvZW0+Jy48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVNlcnZpY2VQb3J0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVNlcnZpY2VQb3J0PC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VQb3J0PC9BPiA8Qj5jcmVhdGVTZXJ2aWNlUG9ydDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+U2VydmljZSBQb3J0PC9lbT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+U2VydmljZSBQb3J0PC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlQWN0dWF0b3JTeXN0ZW0oKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlQWN0dWF0b3JTeXN0ZW08L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWN0dWF0b3JTeXN0ZW08L0E+IDxCPmNyZWF0ZUFjdHVhdG9yU3lzdGVtPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5BY3R1YXRvciBTeXN0ZW08L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5BY3R1YXRvciBTeXN0ZW08L2VtPicuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVSb2JvdGljU3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVJvYm90aWNTeXN0ZW08L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPiA8Qj5jcmVhdGVSb2JvdGljU3lzdGVtPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Sb2JvdGljIFN5c3RlbTwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlJvYm90aWMgU3lzdGVtPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlU2Vuc29yU3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVNlbnNvclN5c3RlbTwvSDM+Cis8UFJFPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPiA8Qj5jcmVhdGVTZW5zb3JTeXN0ZW08L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlNlbnNvciBTeXN0ZW08L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TZW5zb3IgU3lzdGVtPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlSGFyZHdhcmUoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlSGFyZHdhcmU8L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IYXJkd2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SGFyZHdhcmU8L0E+IDxCPmNyZWF0ZUhhcmR3YXJlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5IYXJkd2FyZTwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkhhcmR3YXJlPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlU29mdHdhcmUoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlU29mdHdhcmU8L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U29mdHdhcmU8L0E+IDxCPmNyZWF0ZVNvZnR3YXJlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Tb2Z0d2FyZTwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlNvZnR3YXJlPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlUHJpbWl0aXZlRGF0YSgpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVQcmltaXRpdmVEYXRhPC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UHJpbWl0aXZlRGF0YTwvQT4gPEI+Y3JlYXRlUHJpbWl0aXZlRGF0YTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UHJpbWl0aXZlIERhdGE8L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5QcmltaXRpdmUgRGF0YTwvZW0+Jy48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVBoeXNpY2FsRGF0YSgpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVQaHlzaWNhbERhdGE8L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsRGF0YTwvQT4gPEI+Y3JlYXRlUGh5c2ljYWxEYXRhPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5QaHlzaWNhbCBEYXRhPC9lbT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UGh5c2ljYWwgRGF0YTwvZW0+Jy48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUNvbXBvc2VkRGF0YSgpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVDb21wb3NlZERhdGE8L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNvbXBvc2VkRGF0YTwvQT4gPEI+Y3JlYXRlQ29tcG9zZWREYXRhPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Db21wb3NlZCBEYXRhPC9lbT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Q29tcG9zZWQgRGF0YTwvZW0+Jy48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUNvbGxlY3Rpb24oKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlQ29sbGVjdGlvbjwvSDM+Cis8UFJFPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbGxlY3Rpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNvbGxlY3Rpb248L0E+IDxCPmNyZWF0ZUNvbGxlY3Rpb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkNvbGxlY3Rpb248L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Db2xsZWN0aW9uPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlRW5naW5lU3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUVuZ2luZVN5c3RlbTwvSDM+Cis8UFJFPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW5naW5lU3lzdGVtPC9BPiA8Qj5jcmVhdGVFbmdpbmVTeXN0ZW08L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkVuZ2luZSBTeXN0ZW08L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5FbmdpbmUgU3lzdGVtPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlV2hlZWxTeXN0ZW0oKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlV2hlZWxTeXN0ZW08L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+IDxCPmNyZWF0ZVdoZWVsU3lzdGVtPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5XaGVlbCBTeXN0ZW08L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5XaGVlbCBTeXN0ZW08L2VtPicuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVJbWFnZVNlbnNvclN5c3RlbSgpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVJbWFnZVNlbnNvclN5c3RlbTwvSDM+Cis8UFJFPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5JbWFnZVNlbnNvclN5c3RlbTwvQT4gPEI+Y3JlYXRlSW1hZ2VTZW5zb3JTeXN0ZW08L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkltYWdlIFNlbnNvciBTeXN0ZW08L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5JbWFnZSBTZW5zb3IgU3lzdGVtPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlQ2FtZXJhU3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUNhbWVyYVN5c3RlbTwvSDM+Cis8UFJFPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q2FtZXJhU3lzdGVtPC9BPiA8Qj5jcmVhdGVDYW1lcmFTeXN0ZW08L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkNhbWVyYSBTeXN0ZW08L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5DYW1lcmEgU3lzdGVtPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZU9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvSDM+Cis8UFJFPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPiA8Qj5jcmVhdGVPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvZW0+Jy48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9BPiA8Qj5jcmVhdGVPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+T2JqZWN0IFRyYWNraW5nIFNlbnNvciBTeXN0ZW08L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5PYmplY3QgVHJhY2tpbmcgU2Vuc29yIFN5c3RlbTwvZW0+Jy48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUxpZGFyU3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUxpZGFyU3lzdGVtPC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxpZGFyU3lzdGVtPC9BPiA8Qj5jcmVhdGVMaWRhclN5c3RlbTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TGlkYXIgU3lzdGVtPC9lbT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TGlkYXIgU3lzdGVtPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvSDM+Cis8UFJFPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xvY2FsaXphdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtPC9BPiA8Qj5jcmVhdGVMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkxvY2FsaXphdGlvbiBTZW5zb3IgU3lzdGVtPC9lbT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2VtPicuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVHUFNTeXN0ZW0oKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlR1BTU3lzdGVtPC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5HUFNTeXN0ZW08L0E+IDxCPmNyZWF0ZUdQU1N5c3RlbTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+R1BTIFN5c3RlbTwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkdQUyBTeXN0ZW08L2VtPicuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVTaW11bGF0ZWRTeXN0ZW0oKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlU2ltdWxhdGVkU3lzdGVtPC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaW11bGF0ZWRTeXN0ZW08L0E+IDxCPmNyZWF0ZVNpbXVsYXRlZFN5c3RlbTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+U2ltdWxhdGVkIFN5c3RlbTwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlNpbXVsYXRlZCBTeXN0ZW08L2VtPicuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVBbGdvcml0aG1MaWJyYXJ5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUFsZ29yaXRobUxpYnJhcnk8L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG1MaWJyYXJ5PC9BPiA8Qj5jcmVhdGVBbGdvcml0aG1MaWJyYXJ5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5BbGdvcml0aG0gTGlicmFyeTwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkFsZ29yaXRobSBMaWJyYXJ5PC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlU3RhdGUoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlU3RhdGU8L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3RhdGU8L0E+IDxCPmNyZWF0ZVN0YXRlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TdGF0ZTwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlN0YXRlPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlU2Vuc29yRHJpdmVyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVNlbnNvckRyaXZlcjwvSDM+Cis8UFJFPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yRHJpdmVyPC9BPiA8Qj5jcmVhdGVTZW5zb3JEcml2ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlNlbnNvciBEcml2ZXI8L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TZW5zb3IgRHJpdmVyPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlUGh5c2ljYWxPYmplY3QoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlUGh5c2ljYWxPYmplY3Q8L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+IDxCPmNyZWF0ZVBoeXNpY2FsT2JqZWN0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5QaHlzaWNhbCBPYmplY3Q8L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5QaHlzaWNhbCBPYmplY3Q8L2VtPicuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRSb2JvdE1MUGFja2FnZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRSb2JvdE1MUGFja2FnZTwvSDM+Cis8UFJFPgorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4gPEI+Z2V0Um9ib3RNTFBhY2thZ2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBwYWNrYWdlIHN1cHBvcnRlZCBieSB0aGlzIGZhY3RvcnkuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcGFja2FnZSBzdXBwb3J0ZWQgYnkgdGhpcyBmYWN0b3J5LjwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUm9ib3RNTEZhY3RvcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlJvYm90TUxGYWN0b3J5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhlMDIzOGUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sCkBAIC0wLDAgKzEsMzUzMiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI4IENFVCAyMDEyIC0tPgorPFRJVExFPgorUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMgaW50ZXJmYWNlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJSb2JvdE1MUGFja2FnZS5MaXRlcmFscyI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JEcml2ZXIuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvRk9OVD4KKzxCUj4KK0ludGVyZmFjZSBSb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvSDI+Cis8REw+Cis8RFQ+PEI+RW5jbG9zaW5nIGludGVyZmFjZTo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgc3RhdGljIGludGVyZmFjZSA8Qj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQj48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBEZWZpbmVzIGxpdGVyYWxzIGZvciB0aGUgbWV0YSBvYmplY3RzIHRoYXQgcmVwcmVzZW50CisgPHVsPgorIDxsaT5lYWNoIGNsYXNzLDwvbGk+CisgPGxpPmVhY2ggZmVhdHVyZSBvZiBlYWNoIGNsYXNzLDwvbGk+CisgPGxpPmVhY2ggZW51bSw8L2xpPgorIDxsaT5hbmQgZWFjaCBkYXRhIHR5cGU8L2xpPgorIDwvdWw+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0FDVFVBVE9SX1NZU1RFTSI+QUNUVUFUT1JfU1lTVEVNPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FjdHVhdG9yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5BY3R1YXRvciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0FHRU5UIj5BR0VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+QWdlbnQ8L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNBR0VOVF9fTU9WRVNfT1ZFUiI+QUdFTlRfX01PVkVTX09WRVI8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPk1vdmVzIE92ZXI8L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0IGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNBTEdPUklUSE0iPkFMR09SSVRITTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkFsZ29yaXRobTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0FMR09SSVRITV9fQkFTRV9PUEVSQVRJT04iPkFMR09SSVRITV9fQkFTRV9PUEVSQVRJT048L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkJhc2UgT3BlcmF0aW9uPC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNBTEdPUklUSE1fX0VYVF9GVU5DVElPTl9OQU1FIj5BTEdPUklUSE1fX0VYVF9GVU5DVElPTl9OQU1FPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5FeHQgRnVuY3Rpb24gTmFtZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQUxHT1JJVEhNX19JU19FWFRFUk5BTCI+QUxHT1JJVEhNX19JU19FWFRFUk5BTDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+SXMgRXh0ZXJuYWw8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0FMR09SSVRITV9fUEFUSCI+QUxHT1JJVEhNX19QQVRIPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5QYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0FMR09SSVRITV9MSUJSQVJZIj5BTEdPUklUSE1fTElCUkFSWTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1MaWJyYXJ5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5BbGdvcml0aG0gTGlicmFyeTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0FMR09SSVRITV9MSUJSQVJZX19CQVNFX0NMQVNTIj5BTEdPUklUSE1fTElCUkFSWV9fQkFTRV9DTEFTUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQUxHT1JJVEhNX0xJQlJBUllfX1BBVEgiPkFMR09SSVRITV9MSUJSQVJZX19QQVRIPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5QYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0JMRU5ERVJfTU9SU0UiPkJMRU5ERVJfTU9SU0U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5CbGVuZGVyIE1vcnNlPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQkxFTkRFUl9NT1JTRV9fREVCVUdfRElTUExBWSI+QkxFTkRFUl9NT1JTRV9fREVCVUdfRElTUExBWTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+RGVidWcgRGlzcGxheTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQkxFTkRFUl9NT1JTRV9fREVCVUdfTU9ERSI+QkxFTkRFUl9NT1JTRV9fREVCVUdfTU9ERTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+RGVidWcgTW9kZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQkxFTkRFUl9NT1JTRV9fR1JBVklUWSI+QkxFTkRFUl9NT1JTRV9fR1JBVklUWTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+R3Jhdml0eTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQkxFTkRFUl9NT1JTRV9fVklFV1BPUlRfU0hBREUiPkJMRU5ERVJfTU9SU0VfX1ZJRVdQT1JUX1NIQURFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj52aWV3cG9ydCBzaGFkZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNCVUlMRElORyI+QlVJTERJTkc8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQnVpbGRpbmdJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkJ1aWxkaW5nPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNDQU1FUkFfU1lTVEVNIj5DQU1FUkFfU1lTVEVNPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+Q2FtZXJhIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0NBTUVSQV9TWVNURU1fX0FMUEhBX1UiPkNBTUVSQV9TWVNURU1fX0FMUEhBX1U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkFscGhhIHU8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0NBTUVSQV9TWVNURU1fX0FMUEhBX1YiPkNBTUVSQV9TWVNURU1fX0FMUEhBX1Y8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkFscGhhIHY8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0NBTUVSQV9TWVNURU1fX0NPTE9SX0ZPUk1BVCI+Q0FNRVJBX1NZU1RFTV9fQ09MT1JfRk9STUFUPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5Db2xvciBmb3JtYXQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0NBTUVSQV9TWVNURU1fX0hFSUdIVCI+Q0FNRVJBX1NZU1RFTV9fSEVJR0hUPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5IZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0NBTUVSQV9TWVNURU1fX1UwIj5DQU1FUkFfU1lTVEVNX19VMDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VTA8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0NBTUVSQV9TWVNURU1fX1YwIj5DQU1FUkFfU1lTVEVNX19WMDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VjA8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0NBTUVSQV9TWVNURU1fX1dJRFRIIj5DQU1FUkFfU1lTVEVNX19XSURUSDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+V2lkdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQ09MTEVDVElPTiI+Q09MTEVDVElPTjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db2xsZWN0aW9uSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5Db2xsZWN0aW9uPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQ09MTEVDVElPTl9fQkFTRV9EQVRBX1RZUEUiPkNPTExFQ1RJT05fX0JBU0VfREFUQV9UWVBFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5CYXNlIERhdGEgVHlwZTwvYj48L2VtPicgcmVmZXJlbmNlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNDT01QT1NFRF9EQVRBIj5DT01QT1NFRF9EQVRBPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbXBvc2VkRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+Q29tcG9zZWQgRGF0YTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0NPTVBPU0VEX0RBVEFfX0JBU0VfREFUQV9UWVBFIj5DT01QT1NFRF9EQVRBX19CQVNFX0RBVEFfVFlQRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBEYXRhIFR5cGU8L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQ1lDQUJfVEsiPkNZQ0FCX1RLPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkN5Y2FiIFRLPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjQ1lDQUJfVEtfX1RJTUVfRkFDVE9SIj5DWUNBQl9US19fVElNRV9GQUNUT1I8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlRpbWUgRmFjdG9yPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNDWUNBQl9US19fVElNRV9TVEVQIj5DWUNBQl9US19fVElNRV9TVEVQPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5UaW1lIFN0ZXA8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0NZQ0FCX1RLX19VU0VfUkVBTF9USU1FIj5DWUNBQl9US19fVVNFX1JFQUxfVElNRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VXNlIFJlYWwgVGltZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVFbnVtPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0RBVEFfRkxPV19ESVJFQ1RJT05fS0lORCI+REFUQV9GTE9XX0RJUkVDVElPTl9LSU5EPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+RGF0YSBGbG93IERpcmVjdGlvbiBLaW5kPC9lbT48L0NPREU+PC9BPicgZW51bTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0RBVEFfRkxPV19QT1JUIj5EQVRBX0ZMT1dfUE9SVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9EYXRhRmxvd1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkRhdGEgRmxvdyBQb3J0PC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjREFUQV9GTE9XX1BPUlRfX0JVRkZFUl9TSVpFIj5EQVRBX0ZMT1dfUE9SVF9fQlVGRkVSX1NJWkU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkJ1ZmZlciBTaXplPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNEQVRBX0ZMT1dfUE9SVF9fRElSRUNUSU9OIj5EQVRBX0ZMT1dfUE9SVF9fRElSRUNUSU9OPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5EaXJlY3Rpb248L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjRU5HSU5FX1NZU1RFTSI+RU5HSU5FX1NZU1RFTTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkVuZ2luZSBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNFTkdJTkVfU1lTVEVNX19HRUFSX1JBVElPTiI+RU5HSU5FX1NZU1RFTV9fR0VBUl9SQVRJT048L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkdlYXIgcmF0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNFTkdJTkVfU1lTVEVNX19NQVhfQUxMT1dFRF9TVEVFUklORyI+RU5HSU5FX1NZU1RFTV9fTUFYX0FMTE9XRURfU1RFRVJJTkc8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPk1heCBBbGxvd2VkIFN0ZWVyaW5nPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNFTkdJTkVfU1lTVEVNX19NQVhfQUxMT1dFRF9WRUxPQ0lUWSI+RU5HSU5FX1NZU1RFTV9fTUFYX0FMTE9XRURfVkVMT0NJVFk8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPk1heCBBbGxvd2VkIFZlbG9jaXR5PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNFTkdJTkVfU1lTVEVNX19NQVhfQlJFQUtJTkdfRk9SQ0UiPkVOR0lORV9TWVNURU1fX01BWF9CUkVBS0lOR19GT1JDRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TWF4IEJyZWFraW5nIEZvcmNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNFTkdJTkVfU1lTVEVNX19NQVhfRU5HSU5FX0ZPUkNFIj5FTkdJTkVfU1lTVEVNX19NQVhfRU5HSU5FX0ZPUkNFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5NYXggRW5naW5lIEZvcmNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNFTkdJTkVfU1lTVEVNX19WRUhJQ0xFX1RSQUNUSU9OIj5FTkdJTkVfU1lTVEVNX19WRUhJQ0xFX1RSQUNUSU9OPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5WZWhpY2xlIFRyYWN0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0VOVklST05NRU5UIj5FTlZJUk9OTUVOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbnZpcm9ubWVudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+RW52aXJvbm1lbnQ8L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0ZMT09SIj5GTE9PUjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9GbG9vckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+Rmxvb3I8L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0dQU19TWVNURU0iPkdQU19TWVNURU08L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR1BTU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5HUFMgU3lzdGVtPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjR1BTX1NZU1RFTV9fT1JJR0lOX1BPU0lUSU9OIj5HUFNfU1lTVEVNX19PUklHSU5fUE9TSVRJT048L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPk9yaWdpbiBQb3NpdGlvbjwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNHUk9VTkQiPkdST1VORDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Hcm91bmRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkdyb3VuZDwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjSEFSRFdBUkUiPkhBUkRXQVJFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0hhcmR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5IYXJkd2FyZTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjSFVNQU4iPkhVTUFOPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0h1bWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5IdW1hbjwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjSU1BR0VfU0VOU09SX1NZU1RFTSI+SU1BR0VfU0VOU09SX1NZU1RFTTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9JbWFnZVNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+SW1hZ2UgU2Vuc29yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjTEFORF9TVVJGQUNFIj5MQU5EX1NVUkZBQ0U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGFuZFN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkxhbmQgU3VyZmFjZTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjTElEQVJfU1lTVEVNIj5MSURBUl9TWVNURU08L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkxpZGFyIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0xJREFSX1NZU1RFTV9fQU5HTEVfTUFYIj5MSURBUl9TWVNURU1fX0FOR0xFX01BWDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QW5nbGUgbWF4PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNMSURBUl9TWVNURU1fX0FOR0xFX01JTiI+TElEQVJfU1lTVEVNX19BTkdMRV9NSU48L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkFuZ2xlIG1pbjwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjTElEQVJfU1lTVEVNX19MQVlFUl9BTkdMRV9NSU4iPkxJREFSX1NZU1RFTV9fTEFZRVJfQU5HTEVfTUlOPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5MYXllciBBbmdsZSBNaW48L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0xJREFSX1NZU1RFTV9fTEFZRVJfQU5HTEVfU1RFUCI+TElEQVJfU1lTVEVNX19MQVlFUl9BTkdMRV9TVEVQPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5MYXllciBBbmdsZSBTdGVwPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNMSURBUl9TWVNURU1fX05CX0xBWUVSUyI+TElEQVJfU1lTVEVNX19OQl9MQVlFUlM8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPk5iIExheWVyczwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjTElEQVJfU1lTVEVNX19OT0lTRSI+TElEQVJfU1lTVEVNX19OT0lTRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+Tm9pc2U8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0xJREFSX1NZU1RFTV9fUkFOR0VfTUFYIj5MSURBUl9TWVNURU1fX1JBTkdFX01BWDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UmFuZ2UgbWF4PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNMSURBUl9TWVNURU1fX1JBTkdFX01JTiI+TElEQVJfU1lTVEVNX19SQU5HRV9NSU48L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlJhbmdlIG1pbjwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjTElEQVJfU1lTVEVNX19TQ0FOX1RJTUUiPkxJREFSX1NZU1RFTV9fU0NBTl9USU1FPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5TY2FuIHRpbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI0xJREFSX1NZU1RFTV9fU0lHTUFfTk9JU0UiPkxJREFSX1NZU1RFTV9fU0lHTUFfTk9JU0U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlNpZ21hIE5vaXNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNMSURBUl9TWVNURU1fX1RJTUVfSU5DUkVNRU5UIj5MSURBUl9TWVNURU1fX1RJTUVfSU5DUkVNRU5UPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5UaW1lIGluY3JlbWVudDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNMT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTSI+TE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU08L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5Mb2NhbGl6YXRpb24gU2Vuc29yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNIj5PQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU08L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5PYmplY3QgRGV0ZWN0aW9uIFNlbnNvciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI09CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNIj5PQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+T2JqZWN0IFRyYWNraW5nIFNlbnNvciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI09OX1BPUlQiPk9OX1BPUlQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT25Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5PbiBQb3J0PC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjT05fUE9SVF9fQkFTRV9QQVJBTUVURVIiPk9OX1BPUlRfX0JBU0VfUEFSQU1FVEVSPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5CYXNlIFBhcmFtZXRlcjwvYj48L2VtPicgcmVmZXJlbmNlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjT05fUE9SVF9fUE9SVCI+T05fUE9SVF9fUE9SVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UG9ydDwvYj48L2VtPicgcmVmZXJlbmNlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNQRURFU1RSSUFOIj5QRURFU1RSSUFOPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BlZGVzdHJpYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlBlZGVzdHJpYW48L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1BIWVNJQ0FMX0RBVEEiPlBIWVNJQ0FMX0RBVEE8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxEYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5QaHlzaWNhbCBEYXRhPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUEhZU0lDQUxfREFUQV9fQkFTRV9EQVRBX1RZUEUiPlBIWVNJQ0FMX0RBVEFfX0JBU0VfREFUQV9UWVBFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5CYXNlIERhdGEgVHlwZTwvYj48L2VtPicgcmVmZXJlbmNlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUEhZU0lDQUxfREFUQV9fVU5JVCI+UEhZU0lDQUxfREFUQV9fVU5JVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VW5pdDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNQSFlTSUNBTF9PQkpFQ1QiPlBIWVNJQ0FMX09CSkVDVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+UGh5c2ljYWwgT2JqZWN0PC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUEhZU0lDQUxfT0JKRUNUX19FVkVMT1ZFU19JTiI+UEhZU0lDQUxfT0JKRUNUX19FVkVMT1ZFU19JTjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+RXZlbG92ZXMgSW48L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0IGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUEhZU0lDQUxfT0JKRUNUX19IQVNfU1VSRkFDRSI+UEhZU0lDQUxfT0JKRUNUX19IQVNfU1VSRkFDRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+SGFzIFN1cmZhY2U8L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUExBTkVUIj5QTEFORVQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhbmV0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5QbGFuZXQ8L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1BMQVRGT1JNIj5QTEFURk9STTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+UGxhdGZvcm08L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNQTEFURk9STV9fQkFTRV9OT0RFIj5QTEFURk9STV9fQkFTRV9OT0RFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5CYXNlIE5vZGU8L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUE9SVCI+UE9SVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5Qb3J0PC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUE9SVF9fQkFTRV9QT1JUIj5QT1JUX19CQVNFX1BPUlQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkJhc2UgUG9ydDwvYj48L2VtPicgcmVmZXJlbmNlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUE9SVF9fU1lOQ0hST05JWkFUSU9OX1BPTElDWSI+UE9SVF9fU1lOQ0hST05JWkFUSU9OX1BPTElDWTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+U3luY2hyb25pemF0aW9uIFBvbGljeTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNQUklNSVRJVkVfREFUQSI+UFJJTUlUSVZFX0RBVEE8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUHJpbWl0aXZlRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+UHJpbWl0aXZlIERhdGE8L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNQUklNSVRJVkVfREFUQV9fQkFTRV9QUklNSVRJVkVfVFlQRSI+UFJJTUlUSVZFX0RBVEFfX0JBU0VfUFJJTUlUSVZFX1RZUEU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkJhc2UgUHJpbWl0aXZlIFR5cGU8L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUk9CT1QiPlJPQk9UPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5Sb2JvdDwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1JPQk9UX19LSU5EIj5ST0JPVF9fS0lORDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+S2luZDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUk9CT1RfX01BU1MiPlJPQk9UX19NQVNTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5NYXNzPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNST0JPVF9fVUdWX0tJTkQiPlJPQk9UX19VR1ZfS0lORDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VWd2IEtpbmQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1JPQk9UX19XSURUSCI+Uk9CT1RfX1dJRFRIPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5XaWR0aDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVFbnVtPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1JPQk9UX0tJTkQiPlJPQk9UX0tJTkQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Sb2JvdCBLaW5kPC9lbT48L0NPREU+PC9BPicgZW51bTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1JPQk9USUNfTUlERExFV0FSRSI+Uk9CT1RJQ19NSURETEVXQVJFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNNaWRkbGV3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5Sb2JvdGljIE1pZGRsZXdhcmU8L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNST0JPVElDX01JRERMRVdBUkVfX0tJTkQiPlJPQk9USUNfTUlERExFV0FSRV9fS0lORDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+S2luZDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVFbnVtPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1JPQk9USUNfTUlERExFV0FSRV9LSU5EIj5ST0JPVElDX01JRERMRVdBUkVfS0lORDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlJvYm90aWMgTWlkZGxld2FyZSBLaW5kPC9lbT48L0NPREU+PC9BPicgZW51bTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1JPQk9USUNfU0lNVUxBVE9SIj5ST0JPVElDX1NJTVVMQVRPUjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU2ltdWxhdG9ySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5Sb2JvdGljIFNpbXVsYXRvcjwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUk9CT1RJQ19TWVNURU0iPlJPQk9USUNfU1lTVEVNPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlJvYm90aWMgU3lzdGVtPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjUk9CT1RJQ19TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj5ST0JPVElDX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT048L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIE9yaWVudGF0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNST0JPVElDX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPlJPQk9USUNfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgUG9zaXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjU0VOU09SX0RSSVZFUiI+U0VOU09SX0RSSVZFUjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JEcml2ZXJJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlNlbnNvciBEcml2ZXI8L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1NFTlNPUl9TWVNURU0iPlNFTlNPUl9TWVNURU08L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5TZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZIj5TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1k8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkZyZXF1ZW5jeTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUiI+U0VOU09SX1NZU1RFTV9fSURFTlRJRklFUjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+SWRlbnRpZmllcjwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVFbnVtPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1NFUlZJQ0VfRkxPV19LSU5EIj5TRVJWSUNFX0ZMT1dfS0lORDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlNlcnZpY2UgRmxvdyBLaW5kPC9lbT48L0NPREU+PC9BPicgZW51bTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1NFUlZJQ0VfUE9SVCI+U0VSVklDRV9QT1JUPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5TZXJ2aWNlIFBvcnQ8L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNTRVJWSUNFX1BPUlRfX0tJTkQiPlNFUlZJQ0VfUE9SVF9fS0lORDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+S2luZDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVFbnVtPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1NIQURFIj5TSEFERTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+U2hhZGU8L2VtPjwvQ09ERT48L0E+JyBlbnVtPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjU0lNVUxBVEVEX1NZU1RFTSI+U0lNVUxBVEVEX1NZU1RFTTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlNpbXVsYXRlZCBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNTSU1VTEFURURfU1lTVEVNX19CQVNFX1BST1BFUlRZIj5TSU1VTEFURURfU1lTVEVNX19CQVNFX1BST1BFUlRZPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5CYXNlIFByb3BlcnR5PC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNTSU1VTEFURURfU1lTVEVNX19NRVNIIj5TSU1VTEFURURfU1lTVEVNX19NRVNIPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5NZXNoPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjU09GVFdBUkUiPlNPRlRXQVJFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5Tb2Z0d2FyZTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1NPRlRXQVJFX19ERUFETElORSI+U09GVFdBUkVfX0RFQURMSU5FPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5EZWFkbGluZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjU09GVFdBUkVfX0lTX1BFUklPRElDIj5TT0ZUV0FSRV9fSVNfUEVSSU9ESUM8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPklzIFBlcmlvZGljPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNTT0ZUV0FSRV9fUEVSSU9EIj5TT0ZUV0FSRV9fUEVSSU9EPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5QZXJpb2Q8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1NPRlRXQVJFX19QUklPUklUWSI+U09GVFdBUkVfX1BSSU9SSVRZPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5Qcmlvcml0eTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjU09GVFdBUkVfX1dDRVQiPlNPRlRXQVJFX19XQ0VUPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5XY2V0PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1NUQUlSUyI+U1RBSVJTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YWlyc0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+U3RhaXJzPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNTVEFURSI+U1RBVEU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhdGVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlN0YXRlPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjU1RBVEVfX0FSR1VNRU5UUyI+U1RBVEVfX0FSR1VNRU5UUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QXJndW1lbnRzPC9iPjwvZW0+JyByZWZlcmVuY2UgbGlzdCBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1NUQVRFX19CQVNFX1NUQVRFIj5TVEFURV9fQkFTRV9TVEFURTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBTdGF0ZTwvYj48L2VtPicgcmVmZXJlbmNlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjU1RBVEVfX09QRVJBVElPTiI+U1RBVEVfX09QRVJBVElPTjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+T3BlcmF0aW9uPC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1NVUkZBQ0UiPlNVUkZBQ0U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+U3VyZmFjZTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRW51bTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNTWU5DSFJPTklaQVRJT05fS0lORCI+U1lOQ0hST05JWkFUSU9OX0tJTkQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+U3luY2hyb25pemF0aW9uIEtpbmQ8L2VtPjwvQ09ERT48L0E+JyBlbnVtPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjU1lTVEVNIj5TWVNURU08L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5TeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNTWVNURU1fX0JBU0VfQ0xBU1MiPlNZU1RFTV9fQkFTRV9DTEFTUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNUUkFOU0lUSU9OIj5UUkFOU0lUSU9OPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlRyYW5zaXRpb248L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNUUkFOU0lUSU9OX19CQVNFX1RSQU5TSVRJT04iPlRSQU5TSVRJT05fX0JBU0VfVFJBTlNJVElPTjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBUcmFuc2l0aW9uPC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNUUkFOU0lUSU9OX19FRkZFQ1QiPlRSQU5TSVRJT05fX0VGRkVDVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+RWZmZWN0PC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNUUkFOU0lUSU9OX19HVUFSRCI+VFJBTlNJVElPTl9fR1VBUkQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkd1YXJkPC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUVudW08L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjVUdWX0tJTkQiPlVHVl9LSU5EPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlVHViBLaW5kPC9lbT48L0NPREU+PC9BPicgZW51bTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUVudW08L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjVU5JVF9LSU5EIj5VTklUX0tJTkQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlVuaXQgS2luZDwvZW0+PC9DT0RFPjwvQT4nIGVudW08L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNXQVRFUl9TVVJGQUNFIj5XQVRFUl9TVVJGQUNFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1dhdGVyU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+V2F0ZXIgU3VyZmFjZTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjV0hFRUxfU1lTVEVNIj5XSEVFTF9TWVNURU08L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPldoZWVsIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9DT01QUkVTU0lPTiI+V0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0NPTVBSRVNTSU9OPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5TdXNwZW5zaW9uIENvbXByZXNzaW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNXSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fREFNUElORyI+V0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0RBTVBJTkc8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlN1c3BlbnNpb24gRGFtcGluZzwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX1JFU1RfTEVOR1RIIj5XSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fUkVTVF9MRU5HVEg8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlN1c3BlbnNpb24gUmVzdCBMZW5ndGg8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9TVElGRk5FU1MiPldIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9TVElGRk5FU1M8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlN1c3BlbnNpb24gU3RpZmZuZXNzPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNXSEVFTF9TWVNURU1fX1RZUEVfT0ZfV0hFRUwiPldIRUVMX1NZU1RFTV9fVFlQRV9PRl9XSEVFTDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VHlwZSBPZiBXaGVlbDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjV0hFRUxfU1lTVEVNX19XSEVFTF9DT05ORUNUSU9OX0hFSUdIVCI+V0hFRUxfU1lTVEVNX19XSEVFTF9DT05ORUNUSU9OX0hFSUdIVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgQ29ubmVjdGlvbiBIZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfRlJJQ1RJT04iPldIRUVMX1NZU1RFTV9fV0hFRUxfRlJJQ1RJT048L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPldoZWVsIEZyaWN0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNXSEVFTF9TWVNURU1fX1dIRUVMX1JBRElVUyI+V0hFRUxfU1lTVEVNX19XSEVFTF9SQURJVVM8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPldoZWVsIFJhZGl1czwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjV0hFRUxfU1lTVEVNX19XSEVFTF9TVEVFUklOR19QSV9ES0QiPldIRUVMX1NZU1RFTV9fV0hFRUxfU1RFRVJJTkdfUElfREtEPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5XaGVlbCBTdGVlcmluZyBQSSBEa2Q8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfU1RFRVJJTkdfUElfREtQIj5XSEVFTF9TWVNURU1fX1dIRUVMX1NURUVSSU5HX1BJX0RLUDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgU3RlZXJpbmcgUEkgRGtwPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNXSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLRCI+V0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ES0Q8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPldoZWVsIFZlbG9jaXR5IFBJIERrZDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ES0kiPldIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtJPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5XaGVlbCBWZWxvY2l0eSBQSSBEa2k8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtQIj5XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLUDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRGtwPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCNXSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RNQVhfU1VNIj5XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RNQVhfU1VNPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5XaGVlbCBWZWxvY2l0eSBQSSBEbWF4IFN1bTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwjV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1ZBTCI+V0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1ZBTDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRG1heCBWYWw8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfV0lEVEgiPldIRUVMX1NZU1RFTV9fV0hFRUxfV0lEVEg8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPldoZWVsIFdpZHRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IEZJRUxEIERFVEFJTCA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9IlRSQU5TSVRJT04iPjwhLS0gLS0+PC9BPjxIMz4KK1RSQU5TSVRJT048L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPlRSQU5TSVRJT048L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+VHJhbnNpdGlvbjwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+VHJhbnNpdGlvbkltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRUcmFuc2l0aW9uKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRUcmFuc2l0aW9uKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJUUkFOU0lUSU9OX19CQVNFX1RSQU5TSVRJT04iPjwhLS0gLS0+PC9BPjxIMz4KK1RSQU5TSVRJT05fX0JBU0VfVFJBTlNJVElPTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlIDxCPlRSQU5TSVRJT05fX0JBU0VfVFJBTlNJVElPTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBUcmFuc2l0aW9uPC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVFJBTlNJVElPTl9fR1VBUkQiPjwhLS0gLS0+PC9BPjxIMz4KK1RSQU5TSVRJT05fX0dVQVJEPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2UgPEI+VFJBTlNJVElPTl9fR1VBUkQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkd1YXJkPC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVFJBTlNJVElPTl9fRUZGRUNUIj48IS0tIC0tPjwvQT48SDM+CitUUkFOU0lUSU9OX19FRkZFQ1Q8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZSA8Qj5UUkFOU0lUSU9OX19FRkZFQ1Q8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkVmZmVjdDwvYj48L2VtPicgcmVmZXJlbmNlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkFMR09SSVRITSI+PCEtLSAtLT48L0E+PEgzPgorQUxHT1JJVEhNPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5BTEdPUklUSE08L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5BbGdvcml0aG08L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+QWxnb3JpdGhtSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEFsZ29yaXRobSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0QWxnb3JpdGhtKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJBTEdPUklUSE1fX0JBU0VfT1BFUkFUSU9OIj48IS0tIC0tPjwvQT48SDM+CitBTEdPUklUSE1fX0JBU0VfT1BFUkFUSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2UgPEI+QUxHT1JJVEhNX19CQVNFX09QRVJBVElPTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBPcGVyYXRpb248L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJBTEdPUklUSE1fX0lTX0VYVEVSTkFMIj48IS0tIC0tPjwvQT48SDM+CitBTEdPUklUSE1fX0lTX0VYVEVSTkFMPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+QUxHT1JJVEhNX19JU19FWFRFUk5BTDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+SXMgRXh0ZXJuYWw8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJBTEdPUklUSE1fX0VYVF9GVU5DVElPTl9OQU1FIj48IS0tIC0tPjwvQT48SDM+CitBTEdPUklUSE1fX0VYVF9GVU5DVElPTl9OQU1FPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+QUxHT1JJVEhNX19FWFRfRlVOQ1RJT05fTkFNRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+RXh0IEZ1bmN0aW9uIE5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJBTEdPUklUSE1fX1BBVEgiPjwhLS0gLS0+PC9BPjxIMz4KK0FMR09SSVRITV9fUEFUSDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPkFMR09SSVRITV9fUEFUSDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UGF0aDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlJPQk9UIj48IS0tIC0tPjwvQT48SDM+CitST0JPVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Uk9CT1Q8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlJvYm90PC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+Um9ib3RJbXBsPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Um9ib3QoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldFJvYm90KCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJST0JPVF9fS0lORCI+PCEtLSAtLT48L0E+PEgzPgorUk9CT1RfX0tJTkQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5ST0JPVF9fS0lORDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+S2luZDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlJPQk9UX19NQVNTIj48IS0tIC0tPjwvQT48SDM+CitST0JPVF9fTUFTUzwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPlJPQk9UX19NQVNTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5NYXNzPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUk9CT1RfX1dJRFRIIj48IS0tIC0tPjwvQT48SDM+CitST0JPVF9fV0lEVEg8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5ST0JPVF9fV0lEVEg8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPldpZHRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUk9CT1RfX1VHVl9LSU5EIj48IS0tIC0tPjwvQT48SDM+CitST0JPVF9fVUdWX0tJTkQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5ST0JPVF9fVUdWX0tJTkQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlVndiBLaW5kPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU1lTVEVNIj48IS0tIC0tPjwvQT48SDM+CitTWVNURU08L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPlNZU1RFTTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5TeXN0ZW1JbXBsPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNZU1RFTV9fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PEgzPgorU1lTVEVNX19CQVNFX0NMQVNTPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2UgPEI+U1lTVEVNX19CQVNFX0NMQVNTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iREFUQV9GTE9XX1BPUlQiPjwhLS0gLS0+PC9BPjxIMz4KK0RBVEFfRkxPV19QT1JUPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5EQVRBX0ZMT1dfUE9SVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9EYXRhRmxvd1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkRhdGEgRmxvdyBQb3J0PC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRGF0YUZsb3dQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPkRhdGFGbG93UG9ydEltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXREYXRhRmxvd1BvcnQoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldERhdGFGbG93UG9ydCgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iREFUQV9GTE9XX1BPUlRfX0RJUkVDVElPTiI+PCEtLSAtLT48L0E+PEgzPgorREFUQV9GTE9XX1BPUlRfX0RJUkVDVElPTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPkRBVEFfRkxPV19QT1JUX19ESVJFQ1RJT048L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkRpcmVjdGlvbjwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkRBVEFfRkxPV19QT1JUX19CVUZGRVJfU0laRSI+PCEtLSAtLT48L0E+PEgzPgorREFUQV9GTE9XX1BPUlRfX0JVRkZFUl9TSVpFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+REFUQV9GTE9XX1BPUlRfX0JVRkZFUl9TSVpFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5CdWZmZXIgU2l6ZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlBPUlQiPjwhLS0gLS0+PC9BPjxIMz4KK1BPUlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPlBPUlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+UG9ydDwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+UG9ydEltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRQb3J0KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRQb3J0KCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQT1JUX19CQVNFX1BPUlQiPjwhLS0gLS0+PC9BPjxIMz4KK1BPUlRfX0JBU0VfUE9SVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlIDxCPlBPUlRfX0JBU0VfUE9SVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBQb3J0PC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUE9SVF9fU1lOQ0hST05JWkFUSU9OX1BPTElDWSI+PCEtLSAtLT48L0E+PEgzPgorUE9SVF9fU1lOQ0hST05JWkFUSU9OX1BPTElDWTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPlBPUlRfX1NZTkNIUk9OSVpBVElPTl9QT0xJQ1k8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlN5bmNocm9uaXphdGlvbiBQb2xpY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJFTlZJUk9OTUVOVCI+PCEtLSAtLT48L0E+PEgzPgorRU5WSVJPTk1FTlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPkVOVklST05NRU5UPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Vudmlyb25tZW50SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5FbnZpcm9ubWVudDwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Vudmlyb25tZW50SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPkVudmlyb25tZW50SW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEVudmlyb25tZW50KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRFbnZpcm9ubWVudCgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU1VSRkFDRSI+PCEtLSAtLT48L0E+PEgzPgorU1VSRkFDRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+U1VSRkFDRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5TdXJmYWNlPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5TdXJmYWNlSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFN1cmZhY2UoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldFN1cmZhY2UoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkJVSUxESU5HIj48IS0tIC0tPjwvQT48SDM+CitCVUlMRElORzwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+QlVJTERJTkc8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQnVpbGRpbmdJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkJ1aWxkaW5nPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQnVpbGRpbmdJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+QnVpbGRpbmdJbXBsPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0QnVpbGRpbmcoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldEJ1aWxkaW5nKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJBR0VOVCI+PCEtLSAtLT48L0E+PEgzPgorQUdFTlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPkFHRU5UPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5BZ2VudDwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPkFnZW50SW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEFnZW50KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRBZ2VudCgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQUdFTlRfX01PVkVTX09WRVIiPjwhLS0gLS0+PC9BPjxIMz4KK0FHRU5UX19NT1ZFU19PVkVSPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2UgPEI+QUdFTlRfX01PVkVTX09WRVI8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPk1vdmVzIE92ZXI8L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0IGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlBMQU5FVCI+PCEtLSAtLT48L0E+PEgzPgorUExBTkVUPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5QTEFORVQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhbmV0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5QbGFuZXQ8L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGFuZXRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+UGxhbmV0SW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFBsYW5ldCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0UGxhbmV0KCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJMQU5EX1NVUkZBQ0UiPjwhLS0gLS0+PC9BPjxIMz4KK0xBTkRfU1VSRkFDRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+TEFORF9TVVJGQUNFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xhbmRTdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5MYW5kIFN1cmZhY2U8L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MYW5kU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5MYW5kU3VyZmFjZUltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRMYW5kU3VyZmFjZSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0TGFuZFN1cmZhY2UoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkdST1VORCI+PCEtLSAtLT48L0E+PEgzPgorR1JPVU5EPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5HUk9VTkQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR3JvdW5kSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5Hcm91bmQ8L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Hcm91bmRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+R3JvdW5kSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEdyb3VuZCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0R3JvdW5kKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJGTE9PUiI+PCEtLSAtLT48L0E+PEgzPgorRkxPT1I8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPkZMT09SPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Zsb29ySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5GbG9vcjwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Zsb29ySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPkZsb29ySW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEZsb29yKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRGbG9vcigpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iV0FURVJfU1VSRkFDRSI+PCEtLSAtLT48L0E+PEgzPgorV0FURVJfU1VSRkFDRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+V0FURVJfU1VSRkFDRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XYXRlclN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPldhdGVyIFN1cmZhY2U8L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XYXRlclN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+V2F0ZXJTdXJmYWNlSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFdhdGVyU3VyZmFjZSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0V2F0ZXJTdXJmYWNlKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJIVU1BTiI+PCEtLSAtLT48L0E+PEgzPgorSFVNQU48L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPkhVTUFOPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0h1bWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5IdW1hbjwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0h1bWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPkh1bWFuSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEh1bWFuKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRIdW1hbigpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUEVERVNUUklBTiI+PCEtLSAtLT48L0E+PEgzPgorUEVERVNUUklBTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+UEVERVNUUklBTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QZWRlc3RyaWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5QZWRlc3RyaWFuPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGVkZXN0cmlhbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5QZWRlc3RyaWFuSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFBlZGVzdHJpYW4oKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldFBlZGVzdHJpYW4oKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNUQUlSUyI+PCEtLSAtLT48L0E+PEgzPgorU1RBSVJTPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5TVEFJUlM8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhaXJzSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5TdGFpcnM8L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGFpcnNJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+U3RhaXJzSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFN0YWlycygpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0U3RhaXJzKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQTEFURk9STSI+PCEtLSAtLT48L0E+PEgzPgorUExBVEZPUk08L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPlBMQVRGT1JNPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5QbGF0Zm9ybTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPlBsYXRmb3JtSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFBsYXRmb3JtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRQbGF0Zm9ybSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUExBVEZPUk1fX0JBU0VfTk9ERSI+PCEtLSAtLT48L0E+PEgzPgorUExBVEZPUk1fX0JBU0VfTk9ERTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlIDxCPlBMQVRGT1JNX19CQVNFX05PREU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkJhc2UgTm9kZTwvYj48L2VtPicgcmVmZXJlbmNlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlJPQk9USUNfTUlERExFV0FSRSI+PCEtLSAtLT48L0E+PEgzPgorUk9CT1RJQ19NSURETEVXQVJFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5ST0JPVElDX01JRERMRVdBUkU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlJvYm90aWMgTWlkZGxld2FyZTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNNaWRkbGV3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPlJvYm90aWNNaWRkbGV3YXJlSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFJvYm90aWNNaWRkbGV3YXJlKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRSb2JvdGljTWlkZGxld2FyZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUk9CT1RJQ19NSURETEVXQVJFX19LSU5EIj48IS0tIC0tPjwvQT48SDM+CitST0JPVElDX01JRERMRVdBUkVfX0tJTkQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5ST0JPVElDX01JRERMRVdBUkVfX0tJTkQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPktpbmQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJST0JPVElDX1NJTVVMQVRPUiI+PCEtLSAtLT48L0E+PEgzPgorUk9CT1RJQ19TSU1VTEFUT1I8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPlJPQk9USUNfU0lNVUxBVE9SPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTaW11bGF0b3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlJvYm90aWMgU2ltdWxhdG9yPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1NpbXVsYXRvckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5Sb2JvdGljU2ltdWxhdG9ySW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFJvYm90aWNTaW11bGF0b3IoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldFJvYm90aWNTaW11bGF0b3IoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkNZQ0FCX1RLIj48IS0tIC0tPjwvQT48SDM+CitDWUNBQl9USzwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Q1lDQUJfVEs8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ3ljYWJUS0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+Q3ljYWIgVEs8L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPkN5Y2FiVEtJbXBsPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Q3ljYWJUSygpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0Q3ljYWJUSygpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQ1lDQUJfVEtfX1VTRV9SRUFMX1RJTUUiPjwhLS0gLS0+PC9BPjxIMz4KK0NZQ0FCX1RLX19VU0VfUkVBTF9USU1FPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Q1lDQUJfVEtfX1VTRV9SRUFMX1RJTUU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlVzZSBSZWFsIFRpbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJDWUNBQl9US19fVElNRV9TVEVQIj48IS0tIC0tPjwvQT48SDM+CitDWUNBQl9US19fVElNRV9TVEVQPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Q1lDQUJfVEtfX1RJTUVfU1RFUDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VGltZSBTdGVwPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQ1lDQUJfVEtfX1RJTUVfRkFDVE9SIj48IS0tIC0tPjwvQT48SDM+CitDWUNBQl9US19fVElNRV9GQUNUT1I8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5DWUNBQl9US19fVElNRV9GQUNUT1I8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlRpbWUgRmFjdG9yPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQkxFTkRFUl9NT1JTRSI+PCEtLSAtLT48L0E+PEgzPgorQkxFTkRFUl9NT1JTRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+QkxFTkRFUl9NT1JTRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkJsZW5kZXIgTW9yc2U8L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+QmxlbmRlck1vcnNlSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEJsZW5kZXJNb3JzZSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0QmxlbmRlck1vcnNlKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJCTEVOREVSX01PUlNFX19ERUJVR19NT0RFIj48IS0tIC0tPjwvQT48SDM+CitCTEVOREVSX01PUlNFX19ERUJVR19NT0RFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+QkxFTkRFUl9NT1JTRV9fREVCVUdfTU9ERTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+RGVidWcgTW9kZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkJMRU5ERVJfTU9SU0VfX0RFQlVHX0RJU1BMQVkiPjwhLS0gLS0+PC9BPjxIMz4KK0JMRU5ERVJfTU9SU0VfX0RFQlVHX0RJU1BMQVk8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5CTEVOREVSX01PUlNFX19ERUJVR19ESVNQTEFZPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5EZWJ1ZyBEaXNwbGF5PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQkxFTkRFUl9NT1JTRV9fR1JBVklUWSI+PCEtLSAtLT48L0E+PEgzPgorQkxFTkRFUl9NT1JTRV9fR1JBVklUWTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPkJMRU5ERVJfTU9SU0VfX0dSQVZJVFk8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkdyYXZpdHk8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJCTEVOREVSX01PUlNFX19WSUVXUE9SVF9TSEFERSI+PCEtLSAtLT48L0E+PEgzPgorQkxFTkRFUl9NT1JTRV9fVklFV1BPUlRfU0hBREU8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5CTEVOREVSX01PUlNFX19WSUVXUE9SVF9TSEFERTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+dmlld3BvcnQgc2hhZGU8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJPTl9QT1JUIj48IS0tIC0tPjwvQT48SDM+CitPTl9QT1JUPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5PTl9QT1JUPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+T24gUG9ydDwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5PblBvcnRJbXBsPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0T25Qb3J0KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRPblBvcnQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9Ik9OX1BPUlRfX1BPUlQiPjwhLS0gLS0+PC9BPjxIMz4KK09OX1BPUlRfX1BPUlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZSA8Qj5PTl9QT1JUX19QT1JUPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5Qb3J0PC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iT05fUE9SVF9fQkFTRV9QQVJBTUVURVIiPjwhLS0gLS0+PC9BPjxIMz4KK09OX1BPUlRfX0JBU0VfUEFSQU1FVEVSPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2UgPEI+T05fUE9SVF9fQkFTRV9QQVJBTUVURVI8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkJhc2UgUGFyYW1ldGVyPC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU0VSVklDRV9QT1JUIj48IS0tIC0tPjwvQT48SDM+CitTRVJWSUNFX1BPUlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPlNFUlZJQ0VfUE9SVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZXJ2aWNlUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+U2VydmljZSBQb3J0PC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+U2VydmljZVBvcnRJbXBsPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U2VydmljZVBvcnQoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldFNlcnZpY2VQb3J0KCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTRVJWSUNFX1BPUlRfX0tJTkQiPjwhLS0gLS0+PC9BPjxIMz4KK1NFUlZJQ0VfUE9SVF9fS0lORDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPlNFUlZJQ0VfUE9SVF9fS0lORDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+S2luZDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkFDVFVBVE9SX1NZU1RFTSI+PCEtLSAtLT48L0E+PEgzPgorQUNUVUFUT1JfU1lTVEVNPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5BQ1RVQVRPUl9TWVNURU08L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWN0dWF0b3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkFjdHVhdG9yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FjdHVhdG9yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPkFjdHVhdG9yU3lzdGVtSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEFjdHVhdG9yU3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRBY3R1YXRvclN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUk9CT1RJQ19TWVNURU0iPjwhLS0gLS0+PC9BPjxIMz4KK1JPQk9USUNfU1lTVEVNPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5ST0JPVElDX1NZU1RFTTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5Sb2JvdGljIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+Um9ib3RpY1N5c3RlbUltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRSb2JvdGljU3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRSb2JvdGljU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJST0JPVElDX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPjwhLS0gLS0+PC9BPjxIMz4KK1JPQk9USUNfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPlJPQk9USUNfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgUG9zaXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJST0JPVElDX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPjwhLS0gLS0+PC9BPjxIMz4KK1JPQk9USUNfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPlJPQk9USUNfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgT3JpZW50YXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTRU5TT1JfU1lTVEVNIj48IS0tIC0tPjwvQT48SDM+CitTRU5TT1JfU1lTVEVNPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5TRU5TT1JfU1lTVEVNPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+U2Vuc29yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5TZW5zb3JTeXN0ZW1JbXBsPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U2Vuc29yU3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRTZW5zb3JTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWSI+PCEtLSAtLT48L0E+PEgzPgorU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+U0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5GcmVxdWVuY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTRU5TT1JfU1lTVEVNX19JREVOVElGSUVSIj48IS0tIC0tPjwvQT48SDM+CitTRU5TT1JfU1lTVEVNX19JREVOVElGSUVSPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+U0VOU09SX1NZU1RFTV9fSURFTlRJRklFUjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+SWRlbnRpZmllcjwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkhBUkRXQVJFIj48IS0tIC0tPjwvQT48SDM+CitIQVJEV0FSRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+SEFSRFdBUkU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSGFyZHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkhhcmR3YXJlPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSGFyZHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+SGFyZHdhcmVJbXBsPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0SGFyZHdhcmUoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldEhhcmR3YXJlKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTT0ZUV0FSRSI+PCEtLSAtLT48L0E+PEgzPgorU09GVFdBUkU8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPlNPRlRXQVJFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5Tb2Z0d2FyZTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPlNvZnR3YXJlSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFNvZnR3YXJlKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRTb2Z0d2FyZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU09GVFdBUkVfX0lTX1BFUklPRElDIj48IS0tIC0tPjwvQT48SDM+CitTT0ZUV0FSRV9fSVNfUEVSSU9ESUM8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5TT0ZUV0FSRV9fSVNfUEVSSU9ESUM8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPklzIFBlcmlvZGljPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU09GVFdBUkVfX1BFUklPRCI+PCEtLSAtLT48L0E+PEgzPgorU09GVFdBUkVfX1BFUklPRDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPlNPRlRXQVJFX19QRVJJT0Q8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlBlcmlvZDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNPRlRXQVJFX19QUklPUklUWSI+PCEtLSAtLT48L0E+PEgzPgorU09GVFdBUkVfX1BSSU9SSVRZPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+U09GVFdBUkVfX1BSSU9SSVRZPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5Qcmlvcml0eTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNPRlRXQVJFX19ERUFETElORSI+PCEtLSAtLT48L0E+PEgzPgorU09GVFdBUkVfX0RFQURMSU5FPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+U09GVFdBUkVfX0RFQURMSU5FPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5EZWFkbGluZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNPRlRXQVJFX19XQ0VUIj48IS0tIC0tPjwvQT48SDM+CitTT0ZUV0FSRV9fV0NFVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPlNPRlRXQVJFX19XQ0VUPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5XY2V0PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUFJJTUlUSVZFX0RBVEEiPjwhLS0gLS0+PC9BPjxIMz4KK1BSSU1JVElWRV9EQVRBPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5QUklNSVRJVkVfREFUQTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QcmltaXRpdmVEYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5QcmltaXRpdmUgRGF0YTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1ByaW1pdGl2ZURhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+UHJpbWl0aXZlRGF0YUltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRQcmltaXRpdmVEYXRhKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRQcmltaXRpdmVEYXRhKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQUklNSVRJVkVfREFUQV9fQkFTRV9QUklNSVRJVkVfVFlQRSI+PCEtLSAtLT48L0E+PEgzPgorUFJJTUlUSVZFX0RBVEFfX0JBU0VfUFJJTUlUSVZFX1RZUEU8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZSA8Qj5QUklNSVRJVkVfREFUQV9fQkFTRV9QUklNSVRJVkVfVFlQRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBQcmltaXRpdmUgVHlwZTwvYj48L2VtPicgcmVmZXJlbmNlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlBIWVNJQ0FMX0RBVEEiPjwhLS0gLS0+PC9BPjxIMz4KK1BIWVNJQ0FMX0RBVEE8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPlBIWVNJQ0FMX0RBVEE8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxEYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5QaHlzaWNhbCBEYXRhPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxEYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPlBoeXNpY2FsRGF0YUltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRQaHlzaWNhbERhdGEoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldFBoeXNpY2FsRGF0YSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUEhZU0lDQUxfREFUQV9fQkFTRV9EQVRBX1RZUEUiPjwhLS0gLS0+PC9BPjxIMz4KK1BIWVNJQ0FMX0RBVEFfX0JBU0VfREFUQV9UWVBFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2UgPEI+UEhZU0lDQUxfREFUQV9fQkFTRV9EQVRBX1RZUEU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkJhc2UgRGF0YSBUeXBlPC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUEhZU0lDQUxfREFUQV9fVU5JVCI+PCEtLSAtLT48L0E+PEgzPgorUEhZU0lDQUxfREFUQV9fVU5JVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPlBIWVNJQ0FMX0RBVEFfX1VOSVQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlVuaXQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJDT01QT1NFRF9EQVRBIj48IS0tIC0tPjwvQT48SDM+CitDT01QT1NFRF9EQVRBPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5DT01QT1NFRF9EQVRBPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbXBvc2VkRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+Q29tcG9zZWQgRGF0YTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbXBvc2VkRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5Db21wb3NlZERhdGFJbXBsPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Q29tcG9zZWREYXRhKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRDb21wb3NlZERhdGEoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkNPTVBPU0VEX0RBVEFfX0JBU0VfREFUQV9UWVBFIj48IS0tIC0tPjwvQT48SDM+CitDT01QT1NFRF9EQVRBX19CQVNFX0RBVEFfVFlQRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlIDxCPkNPTVBPU0VEX0RBVEFfX0JBU0VfREFUQV9UWVBFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5CYXNlIERhdGEgVHlwZTwvYj48L2VtPicgcmVmZXJlbmNlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkNPTExFQ1RJT04iPjwhLS0gLS0+PC9BPjxIMz4KK0NPTExFQ1RJT048L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPkNPTExFQ1RJT048L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29sbGVjdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+Q29sbGVjdGlvbjwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbGxlY3Rpb25JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+Q29sbGVjdGlvbkltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRDb2xsZWN0aW9uKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRDb2xsZWN0aW9uKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJDT0xMRUNUSU9OX19CQVNFX0RBVEFfVFlQRSI+PCEtLSAtLT48L0E+PEgzPgorQ09MTEVDVElPTl9fQkFTRV9EQVRBX1RZUEU8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZSA8Qj5DT0xMRUNUSU9OX19CQVNFX0RBVEFfVFlQRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBEYXRhIFR5cGU8L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJFTkdJTkVfU1lTVEVNIj48IS0tIC0tPjwvQT48SDM+CitFTkdJTkVfU1lTVEVNPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5FTkdJTkVfU1lTVEVNPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+RW5naW5lIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5FbmdpbmVTeXN0ZW1JbXBsPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0RW5naW5lU3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRFbmdpbmVTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkVOR0lORV9TWVNURU1fX1ZFSElDTEVfVFJBQ1RJT04iPjwhLS0gLS0+PC9BPjxIMz4KK0VOR0lORV9TWVNURU1fX1ZFSElDTEVfVFJBQ1RJT048L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5FTkdJTkVfU1lTVEVNX19WRUhJQ0xFX1RSQUNUSU9OPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5WZWhpY2xlIFRyYWN0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iRU5HSU5FX1NZU1RFTV9fTUFYX0VOR0lORV9GT1JDRSI+PCEtLSAtLT48L0E+PEgzPgorRU5HSU5FX1NZU1RFTV9fTUFYX0VOR0lORV9GT1JDRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPkVOR0lORV9TWVNURU1fX01BWF9FTkdJTkVfRk9SQ0U8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPk1heCBFbmdpbmUgRm9yY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJFTkdJTkVfU1lTVEVNX19NQVhfQlJFQUtJTkdfRk9SQ0UiPjwhLS0gLS0+PC9BPjxIMz4KK0VOR0lORV9TWVNURU1fX01BWF9CUkVBS0lOR19GT1JDRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPkVOR0lORV9TWVNURU1fX01BWF9CUkVBS0lOR19GT1JDRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TWF4IEJyZWFraW5nIEZvcmNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iRU5HSU5FX1NZU1RFTV9fTUFYX0FMTE9XRURfU1RFRVJJTkciPjwhLS0gLS0+PC9BPjxIMz4KK0VOR0lORV9TWVNURU1fX01BWF9BTExPV0VEX1NURUVSSU5HPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+RU5HSU5FX1NZU1RFTV9fTUFYX0FMTE9XRURfU1RFRVJJTkc8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPk1heCBBbGxvd2VkIFN0ZWVyaW5nPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iRU5HSU5FX1NZU1RFTV9fTUFYX0FMTE9XRURfVkVMT0NJVFkiPjwhLS0gLS0+PC9BPjxIMz4KK0VOR0lORV9TWVNURU1fX01BWF9BTExPV0VEX1ZFTE9DSVRZPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+RU5HSU5FX1NZU1RFTV9fTUFYX0FMTE9XRURfVkVMT0NJVFk8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPk1heCBBbGxvd2VkIFZlbG9jaXR5PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iRU5HSU5FX1NZU1RFTV9fR0VBUl9SQVRJT04iPjwhLS0gLS0+PC9BPjxIMz4KK0VOR0lORV9TWVNURU1fX0dFQVJfUkFUSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+RU5HSU5FX1NZU1RFTV9fR0VBUl9SQVRJT048L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkdlYXIgcmF0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iV0hFRUxfU1lTVEVNIj48IS0tIC0tPjwvQT48SDM+CitXSEVFTF9TWVNURU08L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPldIRUVMX1NZU1RFTTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+V2hlZWwgU3lzdGVtPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+V2hlZWxTeXN0ZW1JbXBsPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0V2hlZWxTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldFdoZWVsU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJXSEVFTF9TWVNURU1fX1dIRUVMX1JBRElVUyI+PCEtLSAtLT48L0E+PEgzPgorV0hFRUxfU1lTVEVNX19XSEVFTF9SQURJVVM8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5XSEVFTF9TWVNURU1fX1dIRUVMX1JBRElVUzwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgUmFkaXVzPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iV0hFRUxfU1lTVEVNX19XSEVFTF9XSURUSCI+PCEtLSAtLT48L0E+PEgzPgorV0hFRUxfU1lTVEVNX19XSEVFTF9XSURUSDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPldIRUVMX1NZU1RFTV9fV0hFRUxfV0lEVEg8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPldoZWVsIFdpZHRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX1JFU1RfTEVOR1RIIj48IS0tIC0tPjwvQT48SDM+CitXSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fUkVTVF9MRU5HVEg8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5XSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fUkVTVF9MRU5HVEg8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlN1c3BlbnNpb24gUmVzdCBMZW5ndGg8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJXSEVFTF9TWVNURU1fX1dIRUVMX0NPTk5FQ1RJT05fSEVJR0hUIj48IS0tIC0tPjwvQT48SDM+CitXSEVFTF9TWVNURU1fX1dIRUVMX0NPTk5FQ1RJT05fSEVJR0hUPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+V0hFRUxfU1lTVEVNX19XSEVFTF9DT05ORUNUSU9OX0hFSUdIVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgQ29ubmVjdGlvbiBIZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJXSEVFTF9TWVNURU1fX1RZUEVfT0ZfV0hFRUwiPjwhLS0gLS0+PC9BPjxIMz4KK1dIRUVMX1NZU1RFTV9fVFlQRV9PRl9XSEVFTDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPldIRUVMX1NZU1RFTV9fVFlQRV9PRl9XSEVFTDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VHlwZSBPZiBXaGVlbDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IldIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtQIj48IS0tIC0tPjwvQT48SDM+CitXSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLUDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPldIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtQPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5XaGVlbCBWZWxvY2l0eSBQSSBEa3A8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJXSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLSSI+PCEtLSAtLT48L0E+PEgzPgorV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ES0k8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLSTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRGtpPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ES0QiPjwhLS0gLS0+PC9BPjxIMz4KK1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtEPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+V0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ES0Q8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPldoZWVsIFZlbG9jaXR5IFBJIERrZDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IldIRUVMX1NZU1RFTV9fV0hFRUxfU1RFRVJJTkdfUElfREtQIj48IS0tIC0tPjwvQT48SDM+CitXSEVFTF9TWVNURU1fX1dIRUVMX1NURUVSSU5HX1BJX0RLUDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPldIRUVMX1NZU1RFTV9fV0hFRUxfU1RFRVJJTkdfUElfREtQPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5XaGVlbCBTdGVlcmluZyBQSSBEa3A8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJXSEVFTF9TWVNURU1fX1dIRUVMX1NURUVSSU5HX1BJX0RLRCI+PCEtLSAtLT48L0E+PEgzPgorV0hFRUxfU1lTVEVNX19XSEVFTF9TVEVFUklOR19QSV9ES0Q8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5XSEVFTF9TWVNURU1fX1dIRUVMX1NURUVSSU5HX1BJX0RLRDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgU3RlZXJpbmcgUEkgRGtkPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iV0hFRUxfU1lTVEVNX19XSEVFTF9GUklDVElPTiI+PCEtLSAtLT48L0E+PEgzPgorV0hFRUxfU1lTVEVNX19XSEVFTF9GUklDVElPTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPldIRUVMX1NZU1RFTV9fV0hFRUxfRlJJQ1RJT048L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPldoZWVsIEZyaWN0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX1NUSUZGTkVTUyI+PCEtLSAtLT48L0E+PEgzPgorV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX1NUSUZGTkVTUzwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPldIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9TVElGRk5FU1M8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlN1c3BlbnNpb24gU3RpZmZuZXNzPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0RBTVBJTkciPjwhLS0gLS0+PC9BPjxIMz4KK1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9EQU1QSU5HPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+V0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0RBTVBJTkc8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlN1c3BlbnNpb24gRGFtcGluZzwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IldIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9DT01QUkVTU0lPTiI+PCEtLSAtLT48L0E+PEgzPgorV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0NPTVBSRVNTSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+V0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0NPTVBSRVNTSU9OPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5TdXNwZW5zaW9uIENvbXByZXNzaW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1NVTSI+PCEtLSAtLT48L0E+PEgzPgorV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1NVTTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPldIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9TVU08L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPldoZWVsIFZlbG9jaXR5IFBJIERtYXggU3VtPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1ZBTCI+PCEtLSAtLT48L0E+PEgzPgorV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1ZBTDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPldIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9WQUw8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPldoZWVsIFZlbG9jaXR5IFBJIERtYXggVmFsPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iSU1BR0VfU0VOU09SX1NZU1RFTSI+PCEtLSAtLT48L0E+PEgzPgorSU1BR0VfU0VOU09SX1NZU1RFTTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+SU1BR0VfU0VOU09SX1NZU1RFTTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9JbWFnZVNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+SW1hZ2UgU2Vuc29yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0ltYWdlU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPkltYWdlU2Vuc29yU3lzdGVtSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEltYWdlU2Vuc29yU3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRJbWFnZVNlbnNvclN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQ0FNRVJBX1NZU1RFTSI+PCEtLSAtLT48L0E+PEgzPgorQ0FNRVJBX1NZU1RFTTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Q0FNRVJBX1NZU1RFTTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkNhbWVyYSBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+Q2FtZXJhU3lzdGVtSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldENhbWVyYVN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0Q2FtZXJhU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJDQU1FUkFfU1lTVEVNX19XSURUSCI+PCEtLSAtLT48L0E+PEgzPgorQ0FNRVJBX1NZU1RFTV9fV0lEVEg8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5DQU1FUkFfU1lTVEVNX19XSURUSDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+V2lkdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJDQU1FUkFfU1lTVEVNX19IRUlHSFQiPjwhLS0gLS0+PC9BPjxIMz4KK0NBTUVSQV9TWVNURU1fX0hFSUdIVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPkNBTUVSQV9TWVNURU1fX0hFSUdIVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+SGVpZ2h0PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQ0FNRVJBX1NZU1RFTV9fQUxQSEFfVSI+PCEtLSAtLT48L0E+PEgzPgorQ0FNRVJBX1NZU1RFTV9fQUxQSEFfVTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPkNBTUVSQV9TWVNURU1fX0FMUEhBX1U8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkFscGhhIHU8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJDQU1FUkFfU1lTVEVNX19BTFBIQV9WIj48IS0tIC0tPjwvQT48SDM+CitDQU1FUkFfU1lTVEVNX19BTFBIQV9WPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Q0FNRVJBX1NZU1RFTV9fQUxQSEFfVjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QWxwaGEgdjwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkNBTUVSQV9TWVNURU1fX1UwIj48IS0tIC0tPjwvQT48SDM+CitDQU1FUkFfU1lTVEVNX19VMDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPkNBTUVSQV9TWVNURU1fX1UwPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5VMDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkNBTUVSQV9TWVNURU1fX1YwIj48IS0tIC0tPjwvQT48SDM+CitDQU1FUkFfU1lTVEVNX19WMDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPkNBTUVSQV9TWVNURU1fX1YwPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5WMDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkNBTUVSQV9TWVNURU1fX0NPTE9SX0ZPUk1BVCI+PCEtLSAtLT48L0E+PEgzPgorQ0FNRVJBX1NZU1RFTV9fQ09MT1JfRk9STUFUPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Q0FNRVJBX1NZU1RFTV9fQ09MT1JfRk9STUFUPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5Db2xvciBmb3JtYXQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU0iPjwhLS0gLS0+PC9BPjxIMz4KK09CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+T0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+T2JqZWN0IERldGVjdGlvbiBTZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldE9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU0iPjwhLS0gLS0+PC9BPjxIMz4KK09CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5PQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+T2JqZWN0IFRyYWNraW5nIFNlbnNvciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkxJREFSX1NZU1RFTSI+PCEtLSAtLT48L0E+PEgzPgorTElEQVJfU1lTVEVNPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5MSURBUl9TWVNURU08L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkxpZGFyIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPkxpZGFyU3lzdGVtSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldExpZGFyU3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRMaWRhclN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTElEQVJfU1lTVEVNX19OQl9MQVlFUlMiPjwhLS0gLS0+PC9BPjxIMz4KK0xJREFSX1NZU1RFTV9fTkJfTEFZRVJTPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+TElEQVJfU1lTVEVNX19OQl9MQVlFUlM8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPk5iIExheWVyczwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkxJREFSX1NZU1RFTV9fTEFZRVJfQU5HTEVfTUlOIj48IS0tIC0tPjwvQT48SDM+CitMSURBUl9TWVNURU1fX0xBWUVSX0FOR0xFX01JTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPkxJREFSX1NZU1RFTV9fTEFZRVJfQU5HTEVfTUlOPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5MYXllciBBbmdsZSBNaW48L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJMSURBUl9TWVNURU1fX0xBWUVSX0FOR0xFX1NURVAiPjwhLS0gLS0+PC9BPjxIMz4KK0xJREFSX1NZU1RFTV9fTEFZRVJfQU5HTEVfU1RFUDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPkxJREFSX1NZU1RFTV9fTEFZRVJfQU5HTEVfU1RFUDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TGF5ZXIgQW5nbGUgU3RlcDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkxJREFSX1NZU1RFTV9fTk9JU0UiPjwhLS0gLS0+PC9BPjxIMz4KK0xJREFSX1NZU1RFTV9fTk9JU0U8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5MSURBUl9TWVNURU1fX05PSVNFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5Ob2lzZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkxJREFSX1NZU1RFTV9fU0lHTUFfTk9JU0UiPjwhLS0gLS0+PC9BPjxIMz4KK0xJREFSX1NZU1RFTV9fU0lHTUFfTk9JU0U8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5MSURBUl9TWVNURU1fX1NJR01BX05PSVNFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5TaWdtYSBOb2lzZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkxJREFSX1NZU1RFTV9fQU5HTEVfTUlOIj48IS0tIC0tPjwvQT48SDM+CitMSURBUl9TWVNURU1fX0FOR0xFX01JTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPkxJREFSX1NZU1RFTV9fQU5HTEVfTUlOPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5BbmdsZSBtaW48L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJMSURBUl9TWVNURU1fX0FOR0xFX01BWCI+PCEtLSAtLT48L0E+PEgzPgorTElEQVJfU1lTVEVNX19BTkdMRV9NQVg8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5MSURBUl9TWVNURU1fX0FOR0xFX01BWDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QW5nbGUgbWF4PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTElEQVJfU1lTVEVNX19USU1FX0lOQ1JFTUVOVCI+PCEtLSAtLT48L0E+PEgzPgorTElEQVJfU1lTVEVNX19USU1FX0lOQ1JFTUVOVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPkxJREFSX1NZU1RFTV9fVElNRV9JTkNSRU1FTlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlRpbWUgaW5jcmVtZW50PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTElEQVJfU1lTVEVNX19TQ0FOX1RJTUUiPjwhLS0gLS0+PC9BPjxIMz4KK0xJREFSX1NZU1RFTV9fU0NBTl9USU1FPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+TElEQVJfU1lTVEVNX19TQ0FOX1RJTUU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlNjYW4gdGltZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkxJREFSX1NZU1RFTV9fUkFOR0VfTUlOIj48IS0tIC0tPjwvQT48SDM+CitMSURBUl9TWVNURU1fX1JBTkdFX01JTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPkxJREFSX1NZU1RFTV9fUkFOR0VfTUlOPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5SYW5nZSBtaW48L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJMSURBUl9TWVNURU1fX1JBTkdFX01BWCI+PCEtLSAtLT48L0E+PEgzPgorTElEQVJfU1lTVEVNX19SQU5HRV9NQVg8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5MSURBUl9TWVNURU1fX1JBTkdFX01BWDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UmFuZ2UgbWF4PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU0iPjwhLS0gLS0+PC9BPjxIMz4KK0xPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5MT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkxvY2FsaXphdGlvbiBTZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldExvY2FsaXphdGlvblNlbnNvclN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iR1BTX1NZU1RFTSI+PCEtLSAtLT48L0E+PEgzPgorR1BTX1NZU1RFTTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+R1BTX1NZU1RFTTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HUFNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkdQUyBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HUFNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+R1BTU3lzdGVtSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEdQU1N5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0R1BTU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJHUFNfU1lTVEVNX19PUklHSU5fUE9TSVRJT04iPjwhLS0gLS0+PC9BPjxIMz4KK0dQU19TWVNURU1fX09SSUdJTl9QT1NJVElPTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPkdQU19TWVNURU1fX09SSUdJTl9QT1NJVElPTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+T3JpZ2luIFBvc2l0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU0lNVUxBVEVEX1NZU1RFTSI+PCEtLSAtLT48L0E+PEgzPgorU0lNVUxBVEVEX1NZU1RFTTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+U0lNVUxBVEVEX1NZU1RFTTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlNpbXVsYXRlZCBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+U2ltdWxhdGVkU3lzdGVtSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFNpbXVsYXRlZFN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0U2ltdWxhdGVkU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTSU1VTEFURURfU1lTVEVNX19CQVNFX1BST1BFUlRZIj48IS0tIC0tPjwvQT48SDM+CitTSU1VTEFURURfU1lTVEVNX19CQVNFX1BST1BFUlRZPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2UgPEI+U0lNVUxBVEVEX1NZU1RFTV9fQkFTRV9QUk9QRVJUWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBQcm9wZXJ0eTwvYj48L2VtPicgcmVmZXJlbmNlIGZlYXR1cmUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNJTVVMQVRFRF9TWVNURU1fX01FU0giPjwhLS0gLS0+PC9BPjxIMz4KK1NJTVVMQVRFRF9TWVNURU1fX01FU0g8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5TSU1VTEFURURfU1lTVEVNX19NRVNIPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5NZXNoPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJBTEdPUklUSE1fTElCUkFSWSI+PCEtLSAtLT48L0E+PEgzPgorQUxHT1JJVEhNX0xJQlJBUlk8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPkFMR09SSVRITV9MSUJSQVJZPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkFsZ29yaXRobSBMaWJyYXJ5PC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5BbGdvcml0aG1MaWJyYXJ5SW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEFsZ29yaXRobUxpYnJhcnkoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldEFsZ29yaXRobUxpYnJhcnkoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkFMR09SSVRITV9MSUJSQVJZX19CQVNFX0NMQVNTIj48IS0tIC0tPjwvQT48SDM+CitBTEdPUklUSE1fTElCUkFSWV9fQkFTRV9DTEFTUzwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlIDxCPkFMR09SSVRITV9MSUJSQVJZX19CQVNFX0NMQVNTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQUxHT1JJVEhNX0xJQlJBUllfX1BBVEgiPjwhLS0gLS0+PC9BPjxIMz4KK0FMR09SSVRITV9MSUJSQVJZX19QQVRIPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+QUxHT1JJVEhNX0xJQlJBUllfX1BBVEg8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTVEFURSI+PCEtLSAtLT48L0E+PEgzPgorU1RBVEU8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPlNUQVRFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5TdGF0ZTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPlN0YXRlSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFN0YXRlKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRTdGF0ZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU1RBVEVfX0JBU0VfU1RBVEUiPjwhLS0gLS0+PC9BPjxIMz4KK1NUQVRFX19CQVNFX1NUQVRFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2UgPEI+U1RBVEVfX0JBU0VfU1RBVEU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkJhc2UgU3RhdGU8L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTVEFURV9fT1BFUkFUSU9OIj48IS0tIC0tPjwvQT48SDM+CitTVEFURV9fT1BFUkFUSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2UgPEI+U1RBVEVfX09QRVJBVElPTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+T3BlcmF0aW9uPC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU1RBVEVfX0FSR1VNRU5UUyI+PCEtLSAtLT48L0E+PEgzPgorU1RBVEVfX0FSR1VNRU5UUzwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlIDxCPlNUQVRFX19BUkdVTUVOVFM8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkFyZ3VtZW50czwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3QgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU0VOU09SX0RSSVZFUiI+PCEtLSAtLT48L0E+PEgzPgorU0VOU09SX0RSSVZFUjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+U0VOU09SX0RSSVZFUjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JEcml2ZXJJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlNlbnNvciBEcml2ZXI8L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JEcml2ZXJJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+U2Vuc29yRHJpdmVySW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFNlbnNvckRyaXZlcigpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0U2Vuc29yRHJpdmVyKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQSFlTSUNBTF9PQkpFQ1QiPjwhLS0gLS0+PC9BPjxIMz4KK1BIWVNJQ0FMX09CSkVDVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+UEhZU0lDQUxfT0JKRUNUPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5QaHlzaWNhbCBPYmplY3Q8L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5QaHlzaWNhbE9iamVjdEltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRQaHlzaWNhbE9iamVjdCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0UGh5c2ljYWxPYmplY3QoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlBIWVNJQ0FMX09CSkVDVF9fRVZFTE9WRVNfSU4iPjwhLS0gLS0+PC9BPjxIMz4KK1BIWVNJQ0FMX09CSkVDVF9fRVZFTE9WRVNfSU48L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZSA8Qj5QSFlTSUNBTF9PQkpFQ1RfX0VWRUxPVkVTX0lOPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5FdmVsb3ZlcyBJbjwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3QgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUEhZU0lDQUxfT0JKRUNUX19IQVNfU1VSRkFDRSI+PCEtLSAtLT48L0E+PEgzPgorUEhZU0lDQUxfT0JKRUNUX19IQVNfU1VSRkFDRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlIDxCPlBIWVNJQ0FMX09CSkVDVF9fSEFTX1NVUkZBQ0U8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkhhcyBTdXJmYWNlPC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUk9CT1RfS0lORCI+PCEtLSAtLT48L0E+PEgzPgorUk9CT1RfS0lORDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRW51bSA8Qj5ST0JPVF9LSU5EPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Um9ib3QgS2luZDwvZW0+PC9DT0RFPjwvQT4nIGVudW0uCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlJvYm90S2luZDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFJvYm90S2luZCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0Um9ib3RLaW5kKCk8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJVR1ZfS0lORCI+PCEtLSAtLT48L0E+PEgzPgorVUdWX0tJTkQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUVudW0gPEI+VUdWX0tJTkQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+VUdWIEtpbmQ8L2VtPjwvQ09ERT48L0E+JyBlbnVtLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+VUdWS2luZDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFVHVktpbmQoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldFVHVktpbmQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNZTkNIUk9OSVpBVElPTl9LSU5EIj48IS0tIC0tPjwvQT48SDM+CitTWU5DSFJPTklaQVRJT05fS0lORDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRW51bSA8Qj5TWU5DSFJPTklaQVRJT05fS0lORDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TeW5jaHJvbml6YXRpb24gS2luZDwvZW0+PC9DT0RFPjwvQT4nIGVudW0uCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5TeW5jaHJvbml6YXRpb25LaW5kPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U3luY2hyb25pemF0aW9uS2luZCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0U3luY2hyb25pemF0aW9uS2luZCgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iREFUQV9GTE9XX0RJUkVDVElPTl9LSU5EIj48IS0tIC0tPjwvQT48SDM+CitEQVRBX0ZMT1dfRElSRUNUSU9OX0tJTkQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUVudW0gPEI+REFUQV9GTE9XX0RJUkVDVElPTl9LSU5EPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+RGF0YSBGbG93IERpcmVjdGlvbiBLaW5kPC9lbT48L0NPREU+PC9BPicgZW51bS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0RGF0YUZsb3dEaXJlY3Rpb25LaW5kKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXREYXRhRmxvd0RpcmVjdGlvbktpbmQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNFUlZJQ0VfRkxPV19LSU5EIj48IS0tIC0tPjwvQT48SDM+CitTRVJWSUNFX0ZMT1dfS0lORDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRW51bSA8Qj5TRVJWSUNFX0ZMT1dfS0lORDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlNlcnZpY2UgRmxvdyBLaW5kPC9lbT48L0NPREU+PC9BPicgZW51bS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+U2VydmljZUZsb3dLaW5kPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U2VydmljZUZsb3dLaW5kKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRTZXJ2aWNlRmxvd0tpbmQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlVOSVRfS0lORCI+PCEtLSAtLT48L0E+PEgzPgorVU5JVF9LSU5EPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVFbnVtIDxCPlVOSVRfS0lORDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+VW5pdCBLaW5kPC9lbT48L0NPREU+PC9BPicgZW51bS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5Vbml0S2luZDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFVuaXRLaW5kKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRVbml0S2luZCgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUk9CT1RJQ19NSURETEVXQVJFX0tJTkQiPjwhLS0gLS0+PC9BPjxIMz4KK1JPQk9USUNfTUlERExFV0FSRV9LSU5EPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVFbnVtIDxCPlJPQk9USUNfTUlERExFV0FSRV9LSU5EPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Um9ib3RpYyBNaWRkbGV3YXJlIEtpbmQ8L2VtPjwvQ09ERT48L0E+JyBlbnVtLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRSb2JvdGljTWlkZGxld2FyZUtpbmQoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldFJvYm90aWNNaWRkbGV3YXJlS2luZCgpPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU0hBREUiPjwhLS0gLS0+PC9BPjxIMz4KK1NIQURFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVFbnVtIDxCPlNIQURFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TaGFkZTwvZW0+PC9DT0RFPjwvQT4nIGVudW0uCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+U2hhZGU8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRTaGFkZSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0U2hhZGUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42ZDEyYzYzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbApAQCAtMCwwICsxLDExNTMxIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjcgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitSb2JvdE1MUGFja2FnZQorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlJvYm90TUxQYWNrYWdlIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1JvYm90TUxQYWNrYWdlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzX3N1bW1hcnkiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX3N1bW1hcnkiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwOzxBIEhSRUY9IiNmaWVsZF9kZXRhaWwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvRk9OVD4KKzxCUj4KK0ludGVyZmFjZSBSb2JvdE1MUGFja2FnZTwvSDI+Cis8REw+Cis8RFQ+PEI+QWxsIFN1cGVyaW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVOYW1lZEVsZW1lbnQsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UsIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIEltcGxlbWVudGluZyBDbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBpbnRlcmZhY2UgPEI+Um9ib3RNTFBhY2thZ2U8L0I+PERUPmV4dGVuZHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlPC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGUgbW9kZWwuCisgSXQgY29udGFpbnMgYWNjZXNzb3JzIGZvciB0aGUgbWV0YSBvYmplY3RzIHRvIHJlcHJlc2VudAorIDx1bD4KKyAgIDxsaT5lYWNoIGNsYXNzLDwvbGk+CisgICA8bGk+ZWFjaCBmZWF0dXJlIG9mIGVhY2ggY2xhc3MsPC9saT4KKyAgIDxsaT5lYWNoIGVudW0sPC9saT4KKyAgIDxsaT5hbmQgZWFjaCBkYXRhIHR5cGU8L2xpPgorIDwvdWw+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlJvYm90TUxGYWN0b3J5PC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtEZWZpbmVzIGxpdGVyYWxzIGZvciB0aGUgbWV0YSBvYmplY3RzIHRoYXQgcmVwcmVzZW50CisgCisgZWFjaCBjbGFzcywKKyBlYWNoIGZlYXR1cmUgb2YgZWFjaCBjbGFzcywKKyBlYWNoIGVudW0sCisgYW5kIGVhY2ggZGF0YSB0eXBlCisgCisgPCE8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UuRGVzY3JpcHRvciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlLlJlZ2lzdHJ5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBQ1RVQVRPUl9TWVNURU0iPkFDVFVBVE9SX1NZU1RFTTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWN0dWF0b3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkFjdHVhdG9yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBQ1RVQVRPUl9TWVNURU1fX0JBU0VfQ0xBU1MiPkFDVFVBVE9SX1NZU1RFTV9fQkFTRV9DTEFTUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBQ1RVQVRPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj5BQ1RVQVRPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBQ1RVQVRPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj5BQ1RVQVRPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBQb3NpdGlvbjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBQ1RVQVRPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCI+QUNUVUFUT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkFjdHVhdG9yIFN5c3RlbTwvZW0+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQUdFTlQiPkFHRU5UPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+QWdlbnQ8L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQUdFTlRfX0JBU0VfQ0xBU1MiPkFHRU5UX19CQVNFX0NMQVNTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FHRU5UX19FVkVMT1ZFU19JTiI+QUdFTlRfX0VWRUxPVkVTX0lOPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5FdmVsb3ZlcyBJbjwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3Q8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FHRU5UX19IQVNfU1VSRkFDRSI+QUdFTlRfX0hBU19TVVJGQUNFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IYXMgU3VyZmFjZTwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBR0VOVF9fTU9WRVNfT1ZFUiI+QUdFTlRfX01PVkVTX09WRVI8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1vdmVzIE92ZXI8L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBR0VOVF9GRUFUVVJFX0NPVU5UIj5BR0VOVF9GRUFUVVJFX0NPVU5UPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5BZ2VudDwvZW0+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQUxHT1JJVEhNIj5BTEdPUklUSE08L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+QWxnb3JpdGhtPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FMR09SSVRITV9fQkFTRV9PUEVSQVRJT04iPkFMR09SSVRITV9fQkFTRV9PUEVSQVRJT048L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgT3BlcmF0aW9uPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FMR09SSVRITV9fRVhUX0ZVTkNUSU9OX05BTUUiPkFMR09SSVRITV9fRVhUX0ZVTkNUSU9OX05BTUU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkV4dCBGdW5jdGlvbiBOYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FMR09SSVRITV9fSVNfRVhURVJOQUwiPkFMR09SSVRITV9fSVNfRVhURVJOQUw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPklzIEV4dGVybmFsPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FMR09SSVRITV9fUEFUSCI+QUxHT1JJVEhNX19QQVRIPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5QYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FMR09SSVRITV9GRUFUVVJFX0NPVU5UIj5BTEdPUklUSE1fRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+QWxnb3JpdGhtPC9lbT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBTEdPUklUSE1fTElCUkFSWSI+QUxHT1JJVEhNX0xJQlJBUlk8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkFsZ29yaXRobSBMaWJyYXJ5PC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FMR09SSVRITV9MSUJSQVJZX19CQVNFX0NMQVNTIj5BTEdPUklUSE1fTElCUkFSWV9fQkFTRV9DTEFTUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBTEdPUklUSE1fTElCUkFSWV9fUEFUSCI+QUxHT1JJVEhNX0xJQlJBUllfX1BBVEg8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQUxHT1JJVEhNX0xJQlJBUllfRkVBVFVSRV9DT1VOVCI+QUxHT1JJVEhNX0xJQlJBUllfRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+QWxnb3JpdGhtIExpYnJhcnk8L2VtPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0JMRU5ERVJfTU9SU0UiPkJMRU5ERVJfTU9SU0U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+QmxlbmRlciBNb3JzZTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNCTEVOREVSX01PUlNFX19CQVNFX0NMQVNTIj5CTEVOREVSX01PUlNFX19CQVNFX0NMQVNTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0JMRU5ERVJfTU9SU0VfX0JBU0VfTk9ERSI+QkxFTkRFUl9NT1JTRV9fQkFTRV9OT0RFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIE5vZGU8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQkxFTkRFUl9NT1JTRV9fREVCVUdfRElTUExBWSI+QkxFTkRFUl9NT1JTRV9fREVCVUdfRElTUExBWTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RGVidWcgRGlzcGxheTwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNCTEVOREVSX01PUlNFX19ERUJVR19NT0RFIj5CTEVOREVSX01PUlNFX19ERUJVR19NT0RFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5EZWJ1ZyBNb2RlPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0JMRU5ERVJfTU9SU0VfX0dSQVZJVFkiPkJMRU5ERVJfTU9SU0VfX0dSQVZJVFk8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkdyYXZpdHk8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQkxFTkRFUl9NT1JTRV9fVklFV1BPUlRfU0hBREUiPkJMRU5ERVJfTU9SU0VfX1ZJRVdQT1JUX1NIQURFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj52aWV3cG9ydCBzaGFkZTwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNCTEVOREVSX01PUlNFX0ZFQVRVUkVfQ09VTlQiPkJMRU5ERVJfTU9SU0VfRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+QmxlbmRlciBNb3JzZTwvZW0+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQlVJTERJTkciPkJVSUxESU5HPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CdWlsZGluZ0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+QnVpbGRpbmc8L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQlVJTERJTkdfX0JBU0VfQ0xBU1MiPkJVSUxESU5HX19CQVNFX0NMQVNTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0JVSUxESU5HX19FVkVMT1ZFU19JTiI+QlVJTERJTkdfX0VWRUxPVkVTX0lOPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5FdmVsb3ZlcyBJbjwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3Q8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0JVSUxESU5HX19IQVNfU1VSRkFDRSI+QlVJTERJTkdfX0hBU19TVVJGQUNFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IYXMgU3VyZmFjZTwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNCVUlMRElOR19GRUFUVVJFX0NPVU5UIj5CVUlMRElOR19GRUFUVVJFX0NPVU5UPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5CdWlsZGluZzwvZW0+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ0FNRVJBX1NZU1RFTSI+Q0FNRVJBX1NZU1RFTTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5DYW1lcmEgU3lzdGVtPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NBTUVSQV9TWVNURU1fX0FMUEhBX1UiPkNBTUVSQV9TWVNURU1fX0FMUEhBX1U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkFscGhhIHU8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ0FNRVJBX1NZU1RFTV9fQUxQSEFfViI+Q0FNRVJBX1NZU1RFTV9fQUxQSEFfVjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QWxwaGEgdjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDQU1FUkFfU1lTVEVNX19CQVNFX0NMQVNTIj5DQU1FUkFfU1lTVEVNX19CQVNFX0NMQVNTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NBTUVSQV9TWVNURU1fX0NPTE9SX0ZPUk1BVCI+Q0FNRVJBX1NZU1RFTV9fQ09MT1JfRk9STUFUPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Db2xvciBmb3JtYXQ8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ0FNRVJBX1NZU1RFTV9fRlJFUVVFTkNZIj5DQU1FUkFfU1lTVEVNX19GUkVRVUVOQ1k8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkZyZXF1ZW5jeTwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDQU1FUkFfU1lTVEVNX19IRUlHSFQiPkNBTUVSQV9TWVNURU1fX0hFSUdIVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGVpZ2h0PC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NBTUVSQV9TWVNURU1fX0lERU5USUZJRVIiPkNBTUVSQV9TWVNURU1fX0lERU5USUZJRVI8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPklkZW50aWZpZXI8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ0FNRVJBX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPkNBTUVSQV9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDQU1FUkFfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+Q0FNRVJBX1NZU1RFTV9fTE9DQUxfUE9TSVRJT048L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIFBvc2l0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NBTUVSQV9TWVNURU1fX1UwIj5DQU1FUkFfU1lTVEVNX19VMDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+VTA8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ0FNRVJBX1NZU1RFTV9fVjAiPkNBTUVSQV9TWVNURU1fX1YwPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5WMDwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDQU1FUkFfU1lTVEVNX19XSURUSCI+Q0FNRVJBX1NZU1RFTV9fV0lEVEg8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPldpZHRoPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NBTUVSQV9TWVNURU1fRkVBVFVSRV9DT1VOVCI+Q0FNRVJBX1NZU1RFTV9GRUFUVVJFX0NPVU5UPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5DYW1lcmEgU3lzdGVtPC9lbT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDT0xMRUNUSU9OIj5DT0xMRUNUSU9OPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db2xsZWN0aW9uSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5Db2xsZWN0aW9uPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NPTExFQ1RJT05fX0JBU0VfREFUQV9UWVBFIj5DT0xMRUNUSU9OX19CQVNFX0RBVEFfVFlQRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBEYXRhIFR5cGU8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ09MTEVDVElPTl9GRUFUVVJFX0NPVU5UIj5DT0xMRUNUSU9OX0ZFQVRVUkVfQ09VTlQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkNvbGxlY3Rpb248L2VtPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NPTVBPU0VEX0RBVEEiPkNPTVBPU0VEX0RBVEE8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbXBvc2VkRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+Q29tcG9zZWQgRGF0YTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDT01QT1NFRF9EQVRBX19CQVNFX0RBVEFfVFlQRSI+Q09NUE9TRURfREFUQV9fQkFTRV9EQVRBX1RZUEU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgRGF0YSBUeXBlPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NPTVBPU0VEX0RBVEFfRkVBVFVSRV9DT1VOVCI+Q09NUE9TRURfREFUQV9GRUFUVVJFX0NPVU5UPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5Db21wb3NlZCBEYXRhPC9lbT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDWUNBQl9USyI+Q1lDQUJfVEs8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkN5Y2FiIFRLPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NZQ0FCX1RLX19CQVNFX0NMQVNTIj5DWUNBQl9US19fQkFTRV9DTEFTUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDWUNBQl9US19fQkFTRV9OT0RFIj5DWUNBQl9US19fQkFTRV9OT0RFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIE5vZGU8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ1lDQUJfVEtfX1RJTUVfRkFDVE9SIj5DWUNBQl9US19fVElNRV9GQUNUT1I8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlRpbWUgRmFjdG9yPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NZQ0FCX1RLX19USU1FX1NURVAiPkNZQ0FCX1RLX19USU1FX1NURVA8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlRpbWUgU3RlcDwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDWUNBQl9US19fVVNFX1JFQUxfVElNRSI+Q1lDQUJfVEtfX1VTRV9SRUFMX1RJTUU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlVzZSBSZWFsIFRpbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ1lDQUJfVEtfRkVBVFVSRV9DT1VOVCI+Q1lDQUJfVEtfRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+Q3ljYWIgVEs8L2VtPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0RBVEFfRkxPV19ESVJFQ1RJT05fS0lORCI+REFUQV9GTE9XX0RJUkVDVElPTl9LSU5EPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkRhdGEgRmxvdyBEaXJlY3Rpb24gS2luZDwvZW0+PC9DT0RFPjwvQT4nIGVudW08L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0RBVEFfRkxPV19QT1JUIj5EQVRBX0ZMT1dfUE9SVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRGF0YUZsb3dQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5EYXRhIEZsb3cgUG9ydDwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNEQVRBX0ZMT1dfUE9SVF9fQkFTRV9QT1JUIj5EQVRBX0ZMT1dfUE9SVF9fQkFTRV9QT1JUPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIFBvcnQ8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjREFUQV9GTE9XX1BPUlRfX0JVRkZFUl9TSVpFIj5EQVRBX0ZMT1dfUE9SVF9fQlVGRkVSX1NJWkU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJ1ZmZlciBTaXplPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0RBVEFfRkxPV19QT1JUX19ESVJFQ1RJT04iPkRBVEFfRkxPV19QT1JUX19ESVJFQ1RJT048L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkRpcmVjdGlvbjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNEQVRBX0ZMT1dfUE9SVF9fU1lOQ0hST05JWkFUSU9OX1BPTElDWSI+REFUQV9GTE9XX1BPUlRfX1NZTkNIUk9OSVpBVElPTl9QT0xJQ1k8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlN5bmNocm9uaXphdGlvbiBQb2xpY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjREFUQV9GTE9XX1BPUlRfRkVBVFVSRV9DT1VOVCI+REFUQV9GTE9XX1BPUlRfRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+RGF0YSBGbG93IFBvcnQ8L2VtPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZUlOU1RBTkNFIj5lSU5TVEFOQ0U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiB0aGUgcGFja2FnZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2VOQU1FIj5lTkFNRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgcGFja2FnZSBuYW1lPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNFTkdJTkVfU1lTVEVNIj5FTkdJTkVfU1lTVEVNPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkVuZ2luZSBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5HSU5FX1NZU1RFTV9fQkFTRV9DTEFTUyI+RU5HSU5FX1NZU1RFTV9fQkFTRV9DTEFTUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNFTkdJTkVfU1lTVEVNX19HRUFSX1JBVElPTiI+RU5HSU5FX1NZU1RFTV9fR0VBUl9SQVRJT048L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkdlYXIgcmF0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0VOR0lORV9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj5FTkdJTkVfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgT3JpZW50YXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5HSU5FX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPkVOR0lORV9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBQb3NpdGlvbjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNFTkdJTkVfU1lTVEVNX19NQVhfQUxMT1dFRF9TVEVFUklORyI+RU5HSU5FX1NZU1RFTV9fTUFYX0FMTE9XRURfU1RFRVJJTkc8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1heCBBbGxvd2VkIFN0ZWVyaW5nPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0VOR0lORV9TWVNURU1fX01BWF9BTExPV0VEX1ZFTE9DSVRZIj5FTkdJTkVfU1lTVEVNX19NQVhfQUxMT1dFRF9WRUxPQ0lUWTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TWF4IEFsbG93ZWQgVmVsb2NpdHk8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5HSU5FX1NZU1RFTV9fTUFYX0JSRUFLSU5HX0ZPUkNFIj5FTkdJTkVfU1lTVEVNX19NQVhfQlJFQUtJTkdfRk9SQ0U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1heCBCcmVha2luZyBGb3JjZTwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNFTkdJTkVfU1lTVEVNX19NQVhfRU5HSU5FX0ZPUkNFIj5FTkdJTkVfU1lTVEVNX19NQVhfRU5HSU5FX0ZPUkNFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5NYXggRW5naW5lIEZvcmNlPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0VOR0lORV9TWVNURU1fX1ZFSElDTEVfVFJBQ1RJT04iPkVOR0lORV9TWVNURU1fX1ZFSElDTEVfVFJBQ1RJT048L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlZlaGljbGUgVHJhY3Rpb248L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5HSU5FX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj5FTkdJTkVfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkVuZ2luZSBTeXN0ZW08L2VtPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNlTlNfUFJFRklYIj5lTlNfUFJFRklYPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBwYWNrYWdlIG5hbWVzcGFjZSBuYW1lPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZU5TX1VSSSI+ZU5TX1VSSTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgcGFja2FnZSBuYW1lc3BhY2UgVVJJPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNFTlZJUk9OTUVOVCI+RU5WSVJPTk1FTlQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Vudmlyb25tZW50SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5FbnZpcm9ubWVudDwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNFTlZJUk9OTUVOVF9fQkFTRV9DTEFTUyI+RU5WSVJPTk1FTlRfX0JBU0VfQ0xBU1M8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5WSVJPTk1FTlRfRkVBVFVSRV9DT1VOVCI+RU5WSVJPTk1FTlRfRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+RW52aXJvbm1lbnQ8L2VtPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0ZMT09SIj5GTE9PUjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRmxvb3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkZsb29yPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0ZMT09SX19CQVNFX0NMQVNTIj5GTE9PUl9fQkFTRV9DTEFTUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNGTE9PUl9fRVZFTE9WRVNfSU4iPkZMT09SX19FVkVMT1ZFU19JTjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RXZlbG92ZXMgSW48L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNGTE9PUl9fSEFTX1NVUkZBQ0UiPkZMT09SX19IQVNfU1VSRkFDRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGFzIFN1cmZhY2U8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRkxPT1JfRkVBVFVSRV9DT1VOVCI+RkxPT1JfRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+Rmxvb3I8L2VtPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0dQU19TWVNURU0iPkdQU19TWVNURU08L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dQU1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+R1BTIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNHUFNfU1lTVEVNX19CQVNFX0NMQVNTIj5HUFNfU1lTVEVNX19CQVNFX0NMQVNTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0dQU19TWVNURU1fX0ZSRVFVRU5DWSI+R1BTX1NZU1RFTV9fRlJFUVVFTkNZPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5GcmVxdWVuY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjR1BTX1NZU1RFTV9fSURFTlRJRklFUiI+R1BTX1NZU1RFTV9fSURFTlRJRklFUjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SWRlbnRpZmllcjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNHUFNfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+R1BTX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT048L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIE9yaWVudGF0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0dQU19TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj5HUFNfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgUG9zaXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjR1BTX1NZU1RFTV9fT1JJR0lOX1BPU0lUSU9OIj5HUFNfU1lTVEVNX19PUklHSU5fUE9TSVRJT048L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk9yaWdpbiBQb3NpdGlvbjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNHUFNfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPkdQU19TWVNURU1fRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+R1BTIFN5c3RlbTwvZW0+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjR1JPVU5EIj5HUk9VTkQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dyb3VuZEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+R3JvdW5kPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0dST1VORF9fQkFTRV9DTEFTUyI+R1JPVU5EX19CQVNFX0NMQVNTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0dST1VORF9fRVZFTE9WRVNfSU4iPkdST1VORF9fRVZFTE9WRVNfSU48L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkV2ZWxvdmVzIEluPC9iPjwvZW0+JyByZWZlcmVuY2UgbGlzdDwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjR1JPVU5EX19IQVNfU1VSRkFDRSI+R1JPVU5EX19IQVNfU1VSRkFDRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGFzIFN1cmZhY2U8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjR1JPVU5EX0ZFQVRVUkVfQ09VTlQiPkdST1VORF9GRUFUVVJFX0NPVU5UPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5Hcm91bmQ8L2VtPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0hBUkRXQVJFIj5IQVJEV0FSRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSGFyZHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkhhcmR3YXJlPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0hBUkRXQVJFX19CQVNFX0NMQVNTIj5IQVJEV0FSRV9fQkFTRV9DTEFTUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNIQVJEV0FSRV9GRUFUVVJFX0NPVU5UIj5IQVJEV0FSRV9GRUFUVVJFX0NPVU5UPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5IYXJkd2FyZTwvZW0+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjSFVNQU4iPkhVTUFOPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IdW1hbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+SHVtYW48L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjSFVNQU5fX0JBU0VfQ0xBU1MiPkhVTUFOX19CQVNFX0NMQVNTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0hVTUFOX19FVkVMT1ZFU19JTiI+SFVNQU5fX0VWRUxPVkVTX0lOPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5FdmVsb3ZlcyBJbjwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3Q8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0hVTUFOX19IQVNfU1VSRkFDRSI+SFVNQU5fX0hBU19TVVJGQUNFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IYXMgU3VyZmFjZTwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNIVU1BTl9fTU9WRVNfT1ZFUiI+SFVNQU5fX01PVkVTX09WRVI8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1vdmVzIE92ZXI8L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNIVU1BTl9GRUFUVVJFX0NPVU5UIj5IVU1BTl9GRUFUVVJFX0NPVU5UPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5IdW1hbjwvZW0+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjSU1BR0VfU0VOU09SX1NZU1RFTSI+SU1BR0VfU0VOU09SX1NZU1RFTTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkltYWdlIFNlbnNvciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjSU1BR0VfU0VOU09SX1NZU1RFTV9fQkFTRV9DTEFTUyI+SU1BR0VfU0VOU09SX1NZU1RFTV9fQkFTRV9DTEFTUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNJTUFHRV9TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1kiPklNQUdFX1NFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RnJlcXVlbmN5PC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0lNQUdFX1NFTlNPUl9TWVNURU1fX0lERU5USUZJRVIiPklNQUdFX1NFTlNPUl9TWVNURU1fX0lERU5USUZJRVI8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPklkZW50aWZpZXI8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjSU1BR0VfU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPklNQUdFX1NFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNJTUFHRV9TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+SU1BR0VfU0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT048L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIFBvc2l0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0lNQUdFX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCI+SU1BR0VfU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5JbWFnZSBTZW5zb3IgU3lzdGVtPC9lbT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMQU5EX1NVUkZBQ0UiPkxBTkRfU1VSRkFDRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGFuZFN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkxhbmQgU3VyZmFjZTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMQU5EX1NVUkZBQ0VfX0JBU0VfQ0xBU1MiPkxBTkRfU1VSRkFDRV9fQkFTRV9DTEFTUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMQU5EX1NVUkZBQ0VfX0VWRUxPVkVTX0lOIj5MQU5EX1NVUkZBQ0VfX0VWRUxPVkVTX0lOPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5FdmVsb3ZlcyBJbjwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3Q8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xBTkRfU1VSRkFDRV9fSEFTX1NVUkZBQ0UiPkxBTkRfU1VSRkFDRV9fSEFTX1NVUkZBQ0U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkhhcyBTdXJmYWNlPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xBTkRfU1VSRkFDRV9GRUFUVVJFX0NPVU5UIj5MQU5EX1NVUkZBQ0VfRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+TGFuZCBTdXJmYWNlPC9lbT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU0iPkxJREFSX1NZU1RFTTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkxpZGFyIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX0FOR0xFX01BWCI+TElEQVJfU1lTVEVNX19BTkdMRV9NQVg8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkFuZ2xlIG1heDwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX0FOR0xFX01JTiI+TElEQVJfU1lTVEVNX19BTkdMRV9NSU48L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkFuZ2xlIG1pbjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX0JBU0VfQ0xBU1MiPkxJREFSX1NZU1RFTV9fQkFTRV9DTEFTUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX0ZSRVFVRU5DWSI+TElEQVJfU1lTVEVNX19GUkVRVUVOQ1k8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkZyZXF1ZW5jeTwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX0lERU5USUZJRVIiPkxJREFSX1NZU1RFTV9fSURFTlRJRklFUjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SWRlbnRpZmllcjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX0xBWUVSX0FOR0xFX01JTiI+TElEQVJfU1lTVEVNX19MQVlFUl9BTkdMRV9NSU48L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxheWVyIEFuZ2xlIE1pbjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX0xBWUVSX0FOR0xFX1NURVAiPkxJREFSX1NZU1RFTV9fTEFZRVJfQU5HTEVfU1RFUDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGF5ZXIgQW5nbGUgU3RlcDwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj5MSURBUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj5MSURBUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBQb3NpdGlvbjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX05CX0xBWUVSUyI+TElEQVJfU1lTVEVNX19OQl9MQVlFUlM8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk5iIExheWVyczwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX05PSVNFIj5MSURBUl9TWVNURU1fX05PSVNFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Ob2lzZTwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX1JBTkdFX01BWCI+TElEQVJfU1lTVEVNX19SQU5HRV9NQVg8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlJhbmdlIG1heDwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX1JBTkdFX01JTiI+TElEQVJfU1lTVEVNX19SQU5HRV9NSU48L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlJhbmdlIG1pbjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX1NDQU5fVElNRSI+TElEQVJfU1lTVEVNX19TQ0FOX1RJTUU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlNjYW4gdGltZTwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX1NJR01BX05PSVNFIj5MSURBUl9TWVNURU1fX1NJR01BX05PSVNFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TaWdtYSBOb2lzZTwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX1RJTUVfSU5DUkVNRU5UIj5MSURBUl9TWVNURU1fX1RJTUVfSU5DUkVNRU5UPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5UaW1lIGluY3JlbWVudDwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fRkVBVFVSRV9DT1VOVCI+TElEQVJfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkxpZGFyIFN5c3RlbTwvZW0+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU0iPkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkxvY2FsaXphdGlvbiBTZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTIj5MT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fQkFTRV9DTEFTUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZIj5MT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5GcmVxdWVuY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fX0lERU5USUZJRVIiPkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5JZGVudGlmaWVyPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+TE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgUG9zaXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCI+TE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2VtPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI09CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTSI+T0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1MiPk9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fQkFTRV9DTEFTUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWSI+T0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1k8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkZyZXF1ZW5jeTwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0lERU5USUZJRVIiPk9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SWRlbnRpZmllcjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj5PQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj5PQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBQb3NpdGlvbjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCI+T0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvZW0+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU0iPk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+T2JqZWN0IFRyYWNraW5nIFNlbnNvciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1MiPk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI09CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1kiPk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1k8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkZyZXF1ZW5jeTwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUiI+T0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0lERU5USUZJRVI8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPklkZW50aWZpZXI8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj5PQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT048L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIE9yaWVudGF0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI09CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+T0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBQb3NpdGlvbjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj5PQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5PYmplY3QgVHJhY2tpbmcgU2Vuc29yIFN5c3RlbTwvZW0+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT05fUE9SVCI+T05fUE9SVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT25Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5PbiBQb3J0PC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI09OX1BPUlRfX0JBU0VfUEFSQU1FVEVSIj5PTl9QT1JUX19CQVNFX1BBUkFNRVRFUjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBQYXJhbWV0ZXI8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT05fUE9SVF9fUE9SVCI+T05fUE9SVF9fUE9SVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UG9ydDwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPTl9QT1JUX0ZFQVRVUkVfQ09VTlQiPk9OX1BPUlRfRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+T24gUG9ydDwvZW0+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUEVERVNUUklBTiI+UEVERVNUUklBTjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGVkZXN0cmlhbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+UGVkZXN0cmlhbjwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQRURFU1RSSUFOX19CQVNFX0NMQVNTIj5QRURFU1RSSUFOX19CQVNFX0NMQVNTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BFREVTVFJJQU5fX0VWRUxPVkVTX0lOIj5QRURFU1RSSUFOX19FVkVMT1ZFU19JTjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RXZlbG92ZXMgSW48L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQRURFU1RSSUFOX19IQVNfU1VSRkFDRSI+UEVERVNUUklBTl9fSEFTX1NVUkZBQ0U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkhhcyBTdXJmYWNlPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BFREVTVFJJQU5fX01PVkVTX09WRVIiPlBFREVTVFJJQU5fX01PVkVTX09WRVI8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1vdmVzIE92ZXI8L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQRURFU1RSSUFOX0ZFQVRVUkVfQ09VTlQiPlBFREVTVFJJQU5fRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+UGVkZXN0cmlhbjwvZW0+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUEhZU0lDQUxfREFUQSI+UEhZU0lDQUxfREFUQTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxEYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5QaHlzaWNhbCBEYXRhPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BIWVNJQ0FMX0RBVEFfX0JBU0VfREFUQV9UWVBFIj5QSFlTSUNBTF9EQVRBX19CQVNFX0RBVEFfVFlQRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBEYXRhIFR5cGU8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUEhZU0lDQUxfREFUQV9fVU5JVCI+UEhZU0lDQUxfREFUQV9fVU5JVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+VW5pdDwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQSFlTSUNBTF9EQVRBX0ZFQVRVUkVfQ09VTlQiPlBIWVNJQ0FMX0RBVEFfRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+UGh5c2ljYWwgRGF0YTwvZW0+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUEhZU0lDQUxfT0JKRUNUIj5QSFlTSUNBTF9PQkpFQ1Q8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5QaHlzaWNhbCBPYmplY3Q8L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUEhZU0lDQUxfT0JKRUNUX19CQVNFX0NMQVNTIj5QSFlTSUNBTF9PQkpFQ1RfX0JBU0VfQ0xBU1M8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUEhZU0lDQUxfT0JKRUNUX19FVkVMT1ZFU19JTiI+UEhZU0lDQUxfT0JKRUNUX19FVkVMT1ZFU19JTjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RXZlbG92ZXMgSW48L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQSFlTSUNBTF9PQkpFQ1RfX0hBU19TVVJGQUNFIj5QSFlTSUNBTF9PQkpFQ1RfX0hBU19TVVJGQUNFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IYXMgU3VyZmFjZTwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQSFlTSUNBTF9PQkpFQ1RfRkVBVFVSRV9DT1VOVCI+UEhZU0lDQUxfT0JKRUNUX0ZFQVRVUkVfQ09VTlQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlBoeXNpY2FsIE9iamVjdDwvZW0+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUExBTkVUIj5QTEFORVQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYW5ldEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+UGxhbmV0PC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BMQU5FVF9fQkFTRV9DTEFTUyI+UExBTkVUX19CQVNFX0NMQVNTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BMQU5FVF9fRVZFTE9WRVNfSU4iPlBMQU5FVF9fRVZFTE9WRVNfSU48L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkV2ZWxvdmVzIEluPC9iPjwvZW0+JyByZWZlcmVuY2UgbGlzdDwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUExBTkVUX19IQVNfU1VSRkFDRSI+UExBTkVUX19IQVNfU1VSRkFDRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGFzIFN1cmZhY2U8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUExBTkVUX0ZFQVRVUkVfQ09VTlQiPlBMQU5FVF9GRUFUVVJFX0NPVU5UPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5QbGFuZXQ8L2VtPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BMQVRGT1JNIj5QTEFURk9STTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlBsYXRmb3JtPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BMQVRGT1JNX19CQVNFX0NMQVNTIj5QTEFURk9STV9fQkFTRV9DTEFTUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQTEFURk9STV9fQkFTRV9OT0RFIj5QTEFURk9STV9fQkFTRV9OT0RFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIE5vZGU8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUExBVEZPUk1fRkVBVFVSRV9DT1VOVCI+UExBVEZPUk1fRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+UGxhdGZvcm08L2VtPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BPUlQiPlBPUlQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlBvcnQ8L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUE9SVF9fQkFTRV9QT1JUIj5QT1JUX19CQVNFX1BPUlQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgUG9ydDwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQT1JUX19TWU5DSFJPTklaQVRJT05fUE9MSUNZIj5QT1JUX19TWU5DSFJPTklaQVRJT05fUE9MSUNZPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TeW5jaHJvbml6YXRpb24gUG9saWN5PC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BPUlRfRkVBVFVSRV9DT1VOVCI+UE9SVF9GRUFUVVJFX0NPVU5UPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5Qb3J0PC9lbT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQUklNSVRJVkVfREFUQSI+UFJJTUlUSVZFX0RBVEE8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1ByaW1pdGl2ZURhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlByaW1pdGl2ZSBEYXRhPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BSSU1JVElWRV9EQVRBX19CQVNFX1BSSU1JVElWRV9UWVBFIj5QUklNSVRJVkVfREFUQV9fQkFTRV9QUklNSVRJVkVfVFlQRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBQcmltaXRpdmUgVHlwZTwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQUklNSVRJVkVfREFUQV9GRUFUVVJFX0NPVU5UIj5QUklNSVRJVkVfREFUQV9GRUFUVVJFX0NPVU5UPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5QcmltaXRpdmUgRGF0YTwvZW0+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1QiPlJPQk9UPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+Um9ib3Q8L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RfX0JBU0VfQ0xBU1MiPlJPQk9UX19CQVNFX0NMQVNTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9UX19FVkVMT1ZFU19JTiI+Uk9CT1RfX0VWRUxPVkVTX0lOPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5FdmVsb3ZlcyBJbjwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3Q8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9UX19IQVNfU1VSRkFDRSI+Uk9CT1RfX0hBU19TVVJGQUNFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IYXMgU3VyZmFjZTwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVF9fS0lORCI+Uk9CT1RfX0tJTkQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPktpbmQ8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RfX01BU1MiPlJPQk9UX19NQVNTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5NYXNzPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9UX19NT1ZFU19PVkVSIj5ST0JPVF9fTU9WRVNfT1ZFUjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TW92ZXMgT3ZlcjwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3Q8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9UX19VR1ZfS0lORCI+Uk9CT1RfX1VHVl9LSU5EPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5VZ3YgS2luZDwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVF9fV0lEVEgiPlJPQk9UX19XSURUSDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2lkdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RfRkVBVFVSRV9DT1VOVCI+Uk9CT1RfRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+Um9ib3Q8L2VtPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9UX0tJTkQiPlJPQk9UX0tJTkQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Um9ib3QgS2luZDwvZW0+PC9DT0RFPjwvQT4nIGVudW08L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9USUNfTUlERExFV0FSRSI+Uk9CT1RJQ19NSURETEVXQVJFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljTWlkZGxld2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+Um9ib3RpYyBNaWRkbGV3YXJlPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9USUNfTUlERExFV0FSRV9fQkFTRV9DTEFTUyI+Uk9CT1RJQ19NSURETEVXQVJFX19CQVNFX0NMQVNTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9USUNfTUlERExFV0FSRV9fQkFTRV9OT0RFIj5ST0JPVElDX01JRERMRVdBUkVfX0JBU0VfTk9ERTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBOb2RlPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9USUNfTUlERExFV0FSRV9fS0lORCI+Uk9CT1RJQ19NSURETEVXQVJFX19LSU5EPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5LaW5kPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9USUNfTUlERExFV0FSRV9GRUFUVVJFX0NPVU5UIj5ST0JPVElDX01JRERMRVdBUkVfRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+Um9ib3RpYyBNaWRkbGV3YXJlPC9lbT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVElDX01JRERMRVdBUkVfS0lORCI+Uk9CT1RJQ19NSURETEVXQVJFX0tJTkQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Um9ib3RpYyBNaWRkbGV3YXJlIEtpbmQ8L2VtPjwvQ09ERT48L0E+JyBlbnVtPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVElDX1NJTVVMQVRPUiI+Uk9CT1RJQ19TSU1VTEFUT1I8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTaW11bGF0b3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlJvYm90aWMgU2ltdWxhdG9yPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9USUNfU0lNVUxBVE9SX19CQVNFX0NMQVNTIj5ST0JPVElDX1NJTVVMQVRPUl9fQkFTRV9DTEFTUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVElDX1NJTVVMQVRPUl9fQkFTRV9OT0RFIj5ST0JPVElDX1NJTVVMQVRPUl9fQkFTRV9OT0RFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIE5vZGU8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RJQ19TSU1VTEFUT1JfRkVBVFVSRV9DT1VOVCI+Uk9CT1RJQ19TSU1VTEFUT1JfRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+Um9ib3RpYyBTaW11bGF0b3I8L2VtPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9USUNfU1lTVEVNIj5ST0JPVElDX1NZU1RFTTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+Um9ib3RpYyBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RJQ19TWVNURU1fX0JBU0VfQ0xBU1MiPlJPQk9USUNfU1lTVEVNX19CQVNFX0NMQVNTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9USUNfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+Uk9CT1RJQ19TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVElDX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPlJPQk9USUNfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgUG9zaXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RJQ19TWVNURU1fRkVBVFVSRV9DT1VOVCI+Uk9CT1RJQ19TWVNURU1fRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+Um9ib3RpYyBTeXN0ZW08L2VtPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFTlNPUl9EUklWRVIiPlNFTlNPUl9EUklWRVI8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvckRyaXZlckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+U2Vuc29yIERyaXZlcjwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRU5TT1JfRFJJVkVSX19CQVNFX0NMQVNTIj5TRU5TT1JfRFJJVkVSX19CQVNFX0NMQVNTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFTlNPUl9EUklWRVJfX0RFQURMSU5FIj5TRU5TT1JfRFJJVkVSX19ERUFETElORTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RGVhZGxpbmU8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VOU09SX0RSSVZFUl9fSVNfUEVSSU9ESUMiPlNFTlNPUl9EUklWRVJfX0lTX1BFUklPRElDPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5JcyBQZXJpb2RpYzwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRU5TT1JfRFJJVkVSX19QRVJJT0QiPlNFTlNPUl9EUklWRVJfX1BFUklPRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UGVyaW9kPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFTlNPUl9EUklWRVJfX1BSSU9SSVRZIj5TRU5TT1JfRFJJVkVSX19QUklPUklUWTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UHJpb3JpdHk8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VOU09SX0RSSVZFUl9fV0NFVCI+U0VOU09SX0RSSVZFUl9fV0NFVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2NldDwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRU5TT1JfRFJJVkVSX0ZFQVRVUkVfQ09VTlQiPlNFTlNPUl9EUklWRVJfRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+U2Vuc29yIERyaXZlcjwvZW0+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VOU09SX1NZU1RFTSI+U0VOU09SX1NZU1RFTTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5TZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1MiPlNFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1M8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZIj5TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1k8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkZyZXF1ZW5jeTwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRU5TT1JfU1lTVEVNX19JREVOVElGSUVSIj5TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5JZGVudGlmaWVyPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj5TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgT3JpZW50YXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPlNFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBQb3NpdGlvbjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPlNFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+U2Vuc29yIFN5c3RlbTwvZW0+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VSVklDRV9GTE9XX0tJTkQiPlNFUlZJQ0VfRkxPV19LSU5EPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlNlcnZpY2UgRmxvdyBLaW5kPC9lbT48L0NPREU+PC9BPicgZW51bTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VSVklDRV9QT1JUIj5TRVJWSUNFX1BPUlQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5TZXJ2aWNlIFBvcnQ8L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VSVklDRV9QT1JUX19CQVNFX1BPUlQiPlNFUlZJQ0VfUE9SVF9fQkFTRV9QT1JUPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIFBvcnQ8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VSVklDRV9QT1JUX19LSU5EIj5TRVJWSUNFX1BPUlRfX0tJTkQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPktpbmQ8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VSVklDRV9QT1JUX19TWU5DSFJPTklaQVRJT05fUE9MSUNZIj5TRVJWSUNFX1BPUlRfX1NZTkNIUk9OSVpBVElPTl9QT0xJQ1k8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlN5bmNocm9uaXphdGlvbiBQb2xpY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VSVklDRV9QT1JUX0ZFQVRVUkVfQ09VTlQiPlNFUlZJQ0VfUE9SVF9GRUFUVVJFX0NPVU5UPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5TZXJ2aWNlIFBvcnQ8L2VtPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NIQURFIj5TSEFERTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlNoYWRlPC9lbT48L0NPREU+PC9BPicgZW51bTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0lNVUxBVEVEX1NZU1RFTSI+U0lNVUxBVEVEX1NZU1RFTTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2ltdWxhdGVkU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5TaW11bGF0ZWQgU3lzdGVtPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NJTVVMQVRFRF9TWVNURU1fX0JBU0VfQ0xBU1MiPlNJTVVMQVRFRF9TWVNURU1fX0JBU0VfQ0xBU1M8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0lNVUxBVEVEX1NZU1RFTV9fQkFTRV9QUk9QRVJUWSI+U0lNVUxBVEVEX1NZU1RFTV9fQkFTRV9QUk9QRVJUWTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBQcm9wZXJ0eTwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTSU1VTEFURURfU1lTVEVNX19ERUFETElORSI+U0lNVUxBVEVEX1NZU1RFTV9fREVBRExJTkU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkRlYWRsaW5lPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NJTVVMQVRFRF9TWVNURU1fX0lTX1BFUklPRElDIj5TSU1VTEFURURfU1lTVEVNX19JU19QRVJJT0RJQzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SXMgUGVyaW9kaWM8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0lNVUxBVEVEX1NZU1RFTV9fTUVTSCI+U0lNVUxBVEVEX1NZU1RFTV9fTUVTSDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TWVzaDwvYj48L2VtPicgYXR0cmlidXRlIGxpc3Q8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NJTVVMQVRFRF9TWVNURU1fX1BFUklPRCI+U0lNVUxBVEVEX1NZU1RFTV9fUEVSSU9EPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5QZXJpb2Q8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0lNVUxBVEVEX1NZU1RFTV9fUFJJT1JJVFkiPlNJTVVMQVRFRF9TWVNURU1fX1BSSU9SSVRZPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Qcmlvcml0eTwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTSU1VTEFURURfU1lTVEVNX19XQ0VUIj5TSU1VTEFURURfU1lTVEVNX19XQ0VUPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5XY2V0PC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NJTVVMQVRFRF9TWVNURU1fRkVBVFVSRV9DT1VOVCI+U0lNVUxBVEVEX1NZU1RFTV9GRUFUVVJFX0NPVU5UPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5TaW11bGF0ZWQgU3lzdGVtPC9lbT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTT0ZUV0FSRSI+U09GVFdBUkU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5Tb2Z0d2FyZTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTT0ZUV0FSRV9fQkFTRV9DTEFTUyI+U09GVFdBUkVfX0JBU0VfQ0xBU1M8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU09GVFdBUkVfX0RFQURMSU5FIj5TT0ZUV0FSRV9fREVBRExJTkU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkRlYWRsaW5lPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NPRlRXQVJFX19JU19QRVJJT0RJQyI+U09GVFdBUkVfX0lTX1BFUklPRElDPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5JcyBQZXJpb2RpYzwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTT0ZUV0FSRV9fUEVSSU9EIj5TT0ZUV0FSRV9fUEVSSU9EPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5QZXJpb2Q8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU09GVFdBUkVfX1BSSU9SSVRZIj5TT0ZUV0FSRV9fUFJJT1JJVFk8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlByaW9yaXR5PC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NPRlRXQVJFX19XQ0VUIj5TT0ZUV0FSRV9fV0NFVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2NldDwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTT0ZUV0FSRV9GRUFUVVJFX0NPVU5UIj5TT0ZUV0FSRV9GRUFUVVJFX0NPVU5UPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5Tb2Z0d2FyZTwvZW0+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU1RBSVJTIj5TVEFJUlM8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YWlyc0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+U3RhaXJzPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NUQUlSU19fQkFTRV9DTEFTUyI+U1RBSVJTX19CQVNFX0NMQVNTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NUQUlSU19fRVZFTE9WRVNfSU4iPlNUQUlSU19fRVZFTE9WRVNfSU48L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkV2ZWxvdmVzIEluPC9iPjwvZW0+JyByZWZlcmVuY2UgbGlzdDwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU1RBSVJTX19IQVNfU1VSRkFDRSI+U1RBSVJTX19IQVNfU1VSRkFDRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGFzIFN1cmZhY2U8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU1RBSVJTX0ZFQVRVUkVfQ09VTlQiPlNUQUlSU19GRUFUVVJFX0NPVU5UPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5TdGFpcnM8L2VtPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NUQVRFIj5TVEFURTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhdGVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlN0YXRlPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NUQVRFX19BUkdVTUVOVFMiPlNUQVRFX19BUkdVTUVOVFM8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkFyZ3VtZW50czwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3Q8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NUQVRFX19CQVNFX1NUQVRFIj5TVEFURV9fQkFTRV9TVEFURTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBTdGF0ZTwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTVEFURV9fT1BFUkFUSU9OIj5TVEFURV9fT1BFUkFUSU9OPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5PcGVyYXRpb248L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU1RBVEVfRkVBVFVSRV9DT1VOVCI+U1RBVEVfRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+U3RhdGU8L2VtPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NVUkZBQ0UiPlNVUkZBQ0U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlN1cmZhY2U8L2VtPjwvQ09ERT48L0E+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU1VSRkFDRV9fQkFTRV9DTEFTUyI+U1VSRkFDRV9fQkFTRV9DTEFTUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTVVJGQUNFX19FVkVMT1ZFU19JTiI+U1VSRkFDRV9fRVZFTE9WRVNfSU48L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkV2ZWxvdmVzIEluPC9iPjwvZW0+JyByZWZlcmVuY2UgbGlzdDwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU1VSRkFDRV9fSEFTX1NVUkZBQ0UiPlNVUkZBQ0VfX0hBU19TVVJGQUNFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IYXMgU3VyZmFjZTwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTVVJGQUNFX0ZFQVRVUkVfQ09VTlQiPlNVUkZBQ0VfRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+U3VyZmFjZTwvZW0+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU1lOQ0hST05JWkFUSU9OX0tJTkQiPlNZTkNIUk9OSVpBVElPTl9LSU5EPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TeW5jaHJvbml6YXRpb24gS2luZDwvZW0+PC9DT0RFPjwvQT4nIGVudW08L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NZU1RFTSI+U1lTVEVNPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTWVNURU1fX0JBU0VfQ0xBU1MiPlNZU1RFTV9fQkFTRV9DTEFTUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTWVNURU1fRkVBVFVSRV9DT1VOVCI+U1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlN5c3RlbTwvZW0+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjVFJBTlNJVElPTiI+VFJBTlNJVElPTjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+VHJhbnNpdGlvbjwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNUUkFOU0lUSU9OX19CQVNFX1RSQU5TSVRJT04iPlRSQU5TSVRJT05fX0JBU0VfVFJBTlNJVElPTjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBUcmFuc2l0aW9uPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1RSQU5TSVRJT05fX0VGRkVDVCI+VFJBTlNJVElPTl9fRUZGRUNUPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5FZmZlY3Q8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjVFJBTlNJVElPTl9fR1VBUkQiPlRSQU5TSVRJT05fX0dVQVJEPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5HdWFyZDwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNUUkFOU0lUSU9OX0ZFQVRVUkVfQ09VTlQiPlRSQU5TSVRJT05fRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+VHJhbnNpdGlvbjwvZW0+JyBjbGFzczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjVUdWX0tJTkQiPlVHVl9LSU5EPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5VR1YgS2luZDwvZW0+PC9DT0RFPjwvQT4nIGVudW08L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1VOSVRfS0lORCI+VU5JVF9LSU5EPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+VW5pdCBLaW5kPC9lbT48L0NPREU+PC9BPicgZW51bTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0FURVJfU1VSRkFDRSI+V0FURVJfU1VSRkFDRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2F0ZXJTdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5XYXRlciBTdXJmYWNlPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dBVEVSX1NVUkZBQ0VfX0JBU0VfQ0xBU1MiPldBVEVSX1NVUkZBQ0VfX0JBU0VfQ0xBU1M8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0FURVJfU1VSRkFDRV9fRVZFTE9WRVNfSU4iPldBVEVSX1NVUkZBQ0VfX0VWRUxPVkVTX0lOPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5FdmVsb3ZlcyBJbjwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3Q8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dBVEVSX1NVUkZBQ0VfX0hBU19TVVJGQUNFIj5XQVRFUl9TVVJGQUNFX19IQVNfU1VSRkFDRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGFzIFN1cmZhY2U8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0FURVJfU1VSRkFDRV9GRUFUVVJFX0NPVU5UIj5XQVRFUl9TVVJGQUNFX0ZFQVRVUkVfQ09VTlQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPldhdGVyIFN1cmZhY2U8L2VtPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTSI+V0hFRUxfU1lTVEVNPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+V2hlZWwgU3lzdGVtPC9lbT48L0NPREU+PC9BPicgY2xhc3M8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fQkFTRV9DTEFTUyI+V0hFRUxfU1lTVEVNX19CQVNFX0NMQVNTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPldIRUVMX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT048L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIE9yaWVudGF0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPldIRUVMX1NZU1RFTV9fTE9DQUxfUE9TSVRJT048L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIFBvc2l0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9DT01QUkVTU0lPTiI+V0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0NPTVBSRVNTSU9OPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TdXNwZW5zaW9uIENvbXByZXNzaW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9EQU1QSU5HIj5XSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fREFNUElORzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+U3VzcGVuc2lvbiBEYW1waW5nPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9SRVNUX0xFTkdUSCI+V0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX1JFU1RfTEVOR1RIPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TdXNwZW5zaW9uIFJlc3QgTGVuZ3RoPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9TVElGRk5FU1MiPldIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9TVElGRk5FU1M8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlN1c3BlbnNpb24gU3RpZmZuZXNzPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fVFlQRV9PRl9XSEVFTCI+V0hFRUxfU1lTVEVNX19UWVBFX09GX1dIRUVMPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5UeXBlIE9mIFdoZWVsPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfQ09OTkVDVElPTl9IRUlHSFQiPldIRUVMX1NZU1RFTV9fV0hFRUxfQ09OTkVDVElPTl9IRUlHSFQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPldoZWVsIENvbm5lY3Rpb24gSGVpZ2h0PC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfRlJJQ1RJT04iPldIRUVMX1NZU1RFTV9fV0hFRUxfRlJJQ1RJT048L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPldoZWVsIEZyaWN0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfUkFESVVTIj5XSEVFTF9TWVNURU1fX1dIRUVMX1JBRElVUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgUmFkaXVzPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfU1RFRVJJTkdfUElfREtEIj5XSEVFTF9TWVNURU1fX1dIRUVMX1NURUVSSU5HX1BJX0RLRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgU3RlZXJpbmcgUEkgRGtkPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfU1RFRVJJTkdfUElfREtQIj5XSEVFTF9TWVNURU1fX1dIRUVMX1NURUVSSU5HX1BJX0RLUDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgU3RlZXJpbmcgUEkgRGtwPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtEIj5XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRGtkPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtJIj5XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLSTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRGtpPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtQIj5XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLUDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRGtwPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9TVU0iPldIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9TVU08L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPldoZWVsIFZlbG9jaXR5IFBJIERtYXggU3VtPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9WQUwiPldIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9WQUw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPldoZWVsIFZlbG9jaXR5IFBJIERtYXggVmFsPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfV0lEVEgiPldIRUVMX1NZU1RFTV9fV0hFRUxfV0lEVEg8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPldoZWVsIFdpZHRoPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj5XSEVFTF9TWVNURU1fRkVBVFVSRV9DT1VOVDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+V2hlZWwgU3lzdGVtPC9lbT4nIGNsYXNzPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEFjdHVhdG9yU3lzdGVtKCkiPmdldEFjdHVhdG9yU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWN0dWF0b3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5BY3R1YXRvciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBZ2VudF9Nb3Zlc092ZXIoKSI+Z2V0QWdlbnRfTW92ZXNPdmVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgbGlzdCAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwjZ2V0TW92ZXNPdmVyKCkiPjxDT0RFPjxlbT5Nb3ZlcyBPdmVyPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBZ2VudCgpIj5nZXRBZ2VudDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+QWdlbnQ8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBbGdvcml0aG1fQmFzZV9PcGVyYXRpb24oKSI+Z2V0QWxnb3JpdGhtX0Jhc2VfT3BlcmF0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNnZXRCYXNlX09wZXJhdGlvbigpIj48Q09ERT48ZW0+QmFzZSBPcGVyYXRpb248L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBbGdvcml0aG1fRXh0RnVuY3Rpb25OYW1lKCkiPmdldEFsZ29yaXRobV9FeHRGdW5jdGlvbk5hbWU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI2dldEV4dEZ1bmN0aW9uTmFtZSgpIj48Q09ERT48ZW0+RXh0IEZ1bmN0aW9uIE5hbWU8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBbGdvcml0aG1fSXNFeHRlcm5hbCgpIj5nZXRBbGdvcml0aG1fSXNFeHRlcm5hbDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwjaXNJc0V4dGVybmFsKCkiPjxDT0RFPjxlbT5JcyBFeHRlcm5hbDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEFsZ29yaXRobV9QYXRoKCkiPmdldEFsZ29yaXRobV9QYXRoPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNnZXRQYXRoKCkiPjxDT0RFPjxlbT5QYXRoPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBbGdvcml0aG0oKSI+Z2V0QWxnb3JpdGhtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+QWxnb3JpdGhtPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QWxnb3JpdGhtTGlicmFyeV9CYXNlX0NsYXNzKCkiPmdldEFsZ29yaXRobUxpYnJhcnlfQmFzZV9DbGFzczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+PENPREU+PGVtPkJhc2UgQ2xhc3M8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBbGdvcml0aG1MaWJyYXJ5X1BhdGgoKSI+Z2V0QWxnb3JpdGhtTGlicmFyeV9QYXRoPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwjZ2V0UGF0aCgpIj48Q09ERT48ZW0+UGF0aDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QWxnb3JpdGhtTGlicmFyeSgpIj5nZXRBbGdvcml0aG1MaWJyYXJ5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkFsZ29yaXRobSBMaWJyYXJ5PC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QmxlbmRlck1vcnNlX192aWV3cG9ydF9zaGFkZSgpIj5nZXRCbGVuZGVyTW9yc2VfX3ZpZXdwb3J0X3NoYWRlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNnZXRfdmlld3BvcnRfc2hhZGUoKSI+PENPREU+PGVtPnZpZXdwb3J0IHNoYWRlPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QmxlbmRlck1vcnNlX0RlYnVnRGlzcGxheSgpIj5nZXRCbGVuZGVyTW9yc2VfRGVidWdEaXNwbGF5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNpc0RlYnVnRGlzcGxheSgpIj48Q09ERT48ZW0+RGVidWcgRGlzcGxheTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEJsZW5kZXJNb3JzZV9EZWJ1Z01vZGUoKSI+Z2V0QmxlbmRlck1vcnNlX0RlYnVnTW9kZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjaXNEZWJ1Z01vZGUoKSI+PENPREU+PGVtPkRlYnVnIE1vZGU8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRCbGVuZGVyTW9yc2VfR3Jhdml0eSgpIj5nZXRCbGVuZGVyTW9yc2VfR3Jhdml0eTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjZ2V0R3Jhdml0eSgpIj48Q09ERT48ZW0+R3Jhdml0eTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QmxlbmRlck1vcnNlKCkiPmdldEJsZW5kZXJNb3JzZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkJsZW5kZXIgTW9yc2U8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEJ1aWxkaW5nKCkiPmdldEJ1aWxkaW5nPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQnVpbGRpbmcuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5CdWlsZGluZzwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENhbWVyYVN5c3RlbV9BbHBoYV91KCkiPmdldENhbWVyYVN5c3RlbV9BbHBoYV91PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRBbHBoYV91KCkiPjxDT0RFPjxlbT5BbHBoYSB1PC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q2FtZXJhU3lzdGVtX0FscGhhX3YoKSI+Z2V0Q2FtZXJhU3lzdGVtX0FscGhhX3Y8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldEFscGhhX3YoKSI+PENPREU+PGVtPkFscGhhIHY8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDYW1lcmFTeXN0ZW1fQ29sb3JfZm9ybWF0KCkiPmdldENhbWVyYVN5c3RlbV9Db2xvcl9mb3JtYXQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldENvbG9yX2Zvcm1hdCgpIj48Q09ERT48ZW0+Q29sb3IgZm9ybWF0PC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q2FtZXJhU3lzdGVtX0hlaWdodCgpIj5nZXRDYW1lcmFTeXN0ZW1fSGVpZ2h0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRIZWlnaHQoKSI+PENPREU+PGVtPkhlaWdodDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENhbWVyYVN5c3RlbV9VMCgpIj5nZXRDYW1lcmFTeXN0ZW1fVTA8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldFUwKCkiPjxDT0RFPjxlbT5VMDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENhbWVyYVN5c3RlbV9WMCgpIj5nZXRDYW1lcmFTeXN0ZW1fVjA8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldFYwKCkiPjxDT0RFPjxlbT5WMDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENhbWVyYVN5c3RlbV9XaWR0aCgpIj5nZXRDYW1lcmFTeXN0ZW1fV2lkdGg8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldFdpZHRoKCkiPjxDT0RFPjxlbT5XaWR0aDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q2FtZXJhU3lzdGVtKCkiPmdldENhbWVyYVN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkNhbWVyYSBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDb2xsZWN0aW9uX0Jhc2VfRGF0YVR5cGUoKSI+Z2V0Q29sbGVjdGlvbl9CYXNlX0RhdGFUeXBlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwjZ2V0QmFzZV9EYXRhVHlwZSgpIj48Q09ERT48ZW0+QmFzZSBEYXRhIFR5cGU8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENvbGxlY3Rpb24oKSI+Z2V0Q29sbGVjdGlvbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbGxlY3Rpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Db2xsZWN0aW9uPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q29tcG9zZWREYXRhX0Jhc2VfRGF0YVR5cGUoKSI+Z2V0Q29tcG9zZWREYXRhX0Jhc2VfRGF0YVR5cGU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbXBvc2VkRGF0YS5odG1sI2dldEJhc2VfRGF0YVR5cGUoKSI+PENPREU+PGVtPkJhc2UgRGF0YSBUeXBlPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDb21wb3NlZERhdGEoKSI+Z2V0Q29tcG9zZWREYXRhPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcG9zZWREYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Q29tcG9zZWQgRGF0YTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEN5Y2FiVEtfVGltZUZhY3RvcigpIj5nZXRDeWNhYlRLX1RpbWVGYWN0b3I8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCNnZXRUaW1lRmFjdG9yKCkiPjxDT0RFPjxlbT5UaW1lIEZhY3RvcjwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEN5Y2FiVEtfVGltZVN0ZXAoKSI+Z2V0Q3ljYWJUS19UaW1lU3RlcDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sI2dldFRpbWVTdGVwKCkiPjxDT0RFPjxlbT5UaW1lIFN0ZXA8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDeWNhYlRLX1VzZVJlYWxUaW1lKCkiPmdldEN5Y2FiVEtfVXNlUmVhbFRpbWU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCNpc1VzZVJlYWxUaW1lKCkiPjxDT0RFPjxlbT5Vc2UgUmVhbCBUaW1lPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDeWNhYlRLKCkiPmdldEN5Y2FiVEs8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Q3ljYWIgVEs8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUVudW08L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0RGF0YUZsb3dEaXJlY3Rpb25LaW5kKCkiPmdldERhdGFGbG93RGlyZWN0aW9uS2luZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBlbnVtICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkRhdGEgRmxvdyBEaXJlY3Rpb24gS2luZDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldERhdGFGbG93UG9ydF9CdWZmZXJTaXplKCkiPmdldERhdGFGbG93UG9ydF9CdWZmZXJTaXplPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCNnZXRCdWZmZXJTaXplKCkiPjxDT0RFPjxlbT5CdWZmZXIgU2l6ZTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldERhdGFGbG93UG9ydF9EaXJlY3Rpb24oKSI+Z2V0RGF0YUZsb3dQb3J0X0RpcmVjdGlvbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwjZ2V0RGlyZWN0aW9uKCkiPjxDT0RFPjxlbT5EaXJlY3Rpb248L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldERhdGFGbG93UG9ydCgpIj5nZXREYXRhRmxvd1BvcnQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5EYXRhIEZsb3cgUG9ydDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEVuZ2luZVN5c3RlbV9HZWFyX3JhdGlvbigpIj5nZXRFbmdpbmVTeXN0ZW1fR2Vhcl9yYXRpb248L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI2dldEdlYXJfcmF0aW9uKCkiPjxDT0RFPjxlbT5HZWFyIHJhdGlvbjwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEVuZ2luZVN5c3RlbV9NYXhBbGxvd2VkU3RlZXJpbmcoKSI+Z2V0RW5naW5lU3lzdGVtX01heEFsbG93ZWRTdGVlcmluZzwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0TWF4QWxsb3dlZFN0ZWVyaW5nKCkiPjxDT0RFPjxlbT5NYXggQWxsb3dlZCBTdGVlcmluZzwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEVuZ2luZVN5c3RlbV9NYXhBbGxvd2VkVmVsb2NpdHkoKSI+Z2V0RW5naW5lU3lzdGVtX01heEFsbG93ZWRWZWxvY2l0eTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0TWF4QWxsb3dlZFZlbG9jaXR5KCkiPjxDT0RFPjxlbT5NYXggQWxsb3dlZCBWZWxvY2l0eTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEVuZ2luZVN5c3RlbV9NYXhCcmVha2luZ0ZvcmNlKCkiPmdldEVuZ2luZVN5c3RlbV9NYXhCcmVha2luZ0ZvcmNlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhCcmVha2luZ0ZvcmNlKCkiPjxDT0RFPjxlbT5NYXggQnJlYWtpbmcgRm9yY2U8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRFbmdpbmVTeXN0ZW1fTWF4RW5naW5lRm9yY2UoKSI+Z2V0RW5naW5lU3lzdGVtX01heEVuZ2luZUZvcmNlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhFbmdpbmVGb3JjZSgpIj48Q09ERT48ZW0+TWF4IEVuZ2luZSBGb3JjZTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEVuZ2luZVN5c3RlbV9WZWhpY2xlVHJhY3Rpb24oKSI+Z2V0RW5naW5lU3lzdGVtX1ZlaGljbGVUcmFjdGlvbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0VmVoaWNsZVRyYWN0aW9uKCkiPjxDT0RFPjxlbT5WZWhpY2xlIFRyYWN0aW9uPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRFbmdpbmVTeXN0ZW0oKSI+Z2V0RW5naW5lU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+RW5naW5lIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0RW52aXJvbm1lbnQoKSI+Z2V0RW52aXJvbm1lbnQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkVudmlyb25tZW50PC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRGbG9vcigpIj5nZXRGbG9vcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Rmxvb3I8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRHUFNTeXN0ZW1fT3JpZ2luUG9zaXRpb24oKSI+Z2V0R1BTU3lzdGVtX09yaWdpblBvc2l0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCNnZXRPcmlnaW5Qb3NpdGlvbigpIj48Q09ERT48ZW0+T3JpZ2luIFBvc2l0aW9uPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRHUFNTeXN0ZW0oKSI+Z2V0R1BTU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+R1BTIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0R3JvdW5kKCkiPmdldEdyb3VuZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkdyb3VuZDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0SGFyZHdhcmUoKSI+Z2V0SGFyZHdhcmU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IYXJkd2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkhhcmR3YXJlPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRIdW1hbigpIj5nZXRIdW1hbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+SHVtYW48L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEltYWdlU2Vuc29yU3lzdGVtKCkiPmdldEltYWdlU2Vuc29yU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5JbWFnZSBTZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMYW5kU3VyZmFjZSgpIj5nZXRMYW5kU3VyZmFjZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+TGFuZCBTdXJmYWNlPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fQW5nbGVfbWF4KCkiPmdldExpZGFyU3lzdGVtX0FuZ2xlX21heDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRBbmdsZV9tYXgoKSI+PENPREU+PGVtPkFuZ2xlIG1heDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtX0FuZ2xlX21pbigpIj5nZXRMaWRhclN5c3RlbV9BbmdsZV9taW48L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0QW5nbGVfbWluKCkiPjxDT0RFPjxlbT5BbmdsZSBtaW48L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbV9MYXllckFuZ2xlTWluKCkiPmdldExpZGFyU3lzdGVtX0xheWVyQW5nbGVNaW48L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0TGF5ZXJBbmdsZU1pbigpIj48Q09ERT48ZW0+TGF5ZXIgQW5nbGUgTWluPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fTGF5ZXJBbmdsZVN0ZXAoKSI+Z2V0TGlkYXJTeXN0ZW1fTGF5ZXJBbmdsZVN0ZXA8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0TGF5ZXJBbmdsZVN0ZXAoKSI+PENPREU+PGVtPkxheWVyIEFuZ2xlIFN0ZXA8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbV9OYkxheWVycygpIj5nZXRMaWRhclN5c3RlbV9OYkxheWVyczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXROYkxheWVycygpIj48Q09ERT48ZW0+TmIgTGF5ZXJzPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fTm9pc2UoKSI+Z2V0TGlkYXJTeXN0ZW1fTm9pc2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0Tm9pc2UoKSI+PENPREU+PGVtPk5vaXNlPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fUmFuZ2VfbWF4KCkiPmdldExpZGFyU3lzdGVtX1JhbmdlX21heDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRSYW5nZV9tYXgoKSI+PENPREU+PGVtPlJhbmdlIG1heDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtX1JhbmdlX21pbigpIj5nZXRMaWRhclN5c3RlbV9SYW5nZV9taW48L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0UmFuZ2VfbWluKCkiPjxDT0RFPjxlbT5SYW5nZSBtaW48L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbV9TY2FuX3RpbWUoKSI+Z2V0TGlkYXJTeXN0ZW1fU2Nhbl90aW1lPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFNjYW5fdGltZSgpIj48Q09ERT48ZW0+U2NhbiB0aW1lPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fU2lnbWFOb2lzZSgpIj5nZXRMaWRhclN5c3RlbV9TaWdtYU5vaXNlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFNpZ21hTm9pc2UoKSI+PENPREU+PGVtPlNpZ21hIE5vaXNlPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fVGltZV9pbmNyZW1lbnQoKSI+Z2V0TGlkYXJTeXN0ZW1fVGltZV9pbmNyZW1lbnQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0VGltZV9pbmNyZW1lbnQoKSI+PENPREU+PGVtPlRpbWUgaW5jcmVtZW50PC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbSgpIj5nZXRMaWRhclN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+TGlkYXIgU3lzdGVtPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0oKSI+Z2V0TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldE9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbSgpIj5nZXRPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5PYmplY3QgRGV0ZWN0aW9uIFNlbnNvciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldE9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtKCkiPmdldE9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5PYmplY3QgVHJhY2tpbmcgU2Vuc29yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldE9uUG9ydF9CYXNlX1BhcmFtZXRlcigpIj5nZXRPblBvcnRfQmFzZV9QYXJhbWV0ZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sI2dldEJhc2VfUGFyYW1ldGVyKCkiPjxDT0RFPjxlbT5CYXNlIFBhcmFtZXRlcjwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldE9uUG9ydF9Qb3J0KCkiPmdldE9uUG9ydF9Qb3J0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCNnZXRQb3J0KCkiPjxDT0RFPjxlbT5Qb3J0PC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRPblBvcnQoKSI+Z2V0T25Qb3J0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+T24gUG9ydDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGVkZXN0cmlhbigpIj5nZXRQZWRlc3RyaWFuPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlBlZGVzdHJpYW48L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQaHlzaWNhbERhdGFfQmFzZV9EYXRhVHlwZSgpIj5nZXRQaHlzaWNhbERhdGFfQmFzZV9EYXRhVHlwZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwjZ2V0QmFzZV9EYXRhVHlwZSgpIj48Q09ERT48ZW0+QmFzZSBEYXRhIFR5cGU8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQaHlzaWNhbERhdGFfVW5pdCgpIj5nZXRQaHlzaWNhbERhdGFfVW5pdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwjZ2V0VW5pdCgpIj48Q09ERT48ZW0+VW5pdDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGh5c2ljYWxEYXRhKCkiPmdldFBoeXNpY2FsRGF0YTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlBoeXNpY2FsIERhdGE8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQaHlzaWNhbE9iamVjdF9FdmVsb3Zlc0luKCkiPmdldFBoeXNpY2FsT2JqZWN0X0V2ZWxvdmVzSW48L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSBsaXN0ICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRFdmVsb3Zlc0luKCkiPjxDT0RFPjxlbT5FdmVsb3ZlcyBJbjwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFBoeXNpY2FsT2JqZWN0X0hhc1N1cmZhY2UoKSI+Z2V0UGh5c2ljYWxPYmplY3RfSGFzU3VyZmFjZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRIYXNTdXJmYWNlKCkiPjxDT0RFPjxlbT5IYXMgU3VyZmFjZTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGh5c2ljYWxPYmplY3QoKSI+Z2V0UGh5c2ljYWxPYmplY3Q8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlBoeXNpY2FsIE9iamVjdDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGxhbmV0KCkiPmdldFBsYW5ldDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYW5ldC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlBsYW5ldDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFBsYXRmb3JtX0Jhc2VfTm9kZSgpIj5nZXRQbGF0Zm9ybV9CYXNlX05vZGU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwjZ2V0QmFzZV9Ob2RlKCkiPjxDT0RFPjxlbT5CYXNlIE5vZGU8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFBsYXRmb3JtKCkiPmdldFBsYXRmb3JtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5QbGF0Zm9ybTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFBvcnRfQmFzZV9Qb3J0KCkiPmdldFBvcnRfQmFzZV9Qb3J0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwjZ2V0QmFzZV9Qb3J0KCkiPjxDT0RFPjxlbT5CYXNlIFBvcnQ8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQb3J0X1N5bmNocm9uaXphdGlvblBvbGljeSgpIj5nZXRQb3J0X1N5bmNocm9uaXphdGlvblBvbGljeTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sI2dldFN5bmNocm9uaXphdGlvblBvbGljeSgpIj48Q09ERT48ZW0+U3luY2hyb25pemF0aW9uIFBvbGljeTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UG9ydCgpIj5nZXRQb3J0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlBvcnQ8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQcmltaXRpdmVEYXRhX0Jhc2VfUHJpbWl0aXZlVHlwZSgpIj5nZXRQcmltaXRpdmVEYXRhX0Jhc2VfUHJpbWl0aXZlVHlwZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sI2dldEJhc2VfUHJpbWl0aXZlVHlwZSgpIj48Q09ERT48ZW0+QmFzZSBQcmltaXRpdmUgVHlwZTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UHJpbWl0aXZlRGF0YSgpIj5nZXRQcmltaXRpdmVEYXRhPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlByaW1pdGl2ZSBEYXRhPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Um9ib3RfS2luZCgpIj5nZXRSb2JvdF9LaW5kPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI2dldEtpbmQoKSI+PENPREU+PGVtPktpbmQ8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdF9NYXNzKCkiPmdldFJvYm90X01hc3M8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjZ2V0TWFzcygpIj48Q09ERT48ZW0+TWFzczwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90X1VndktpbmQoKSI+Z2V0Um9ib3RfVWd2S2luZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNnZXRVZ3ZLaW5kKCkiPjxDT0RFPjxlbT5VZ3YgS2luZDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90X1dpZHRoKCkiPmdldFJvYm90X1dpZHRoPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI2dldFdpZHRoKCkiPjxDT0RFPjxlbT5XaWR0aDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Um9ib3QoKSI+Z2V0Um9ib3Q8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlJvYm90PC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Um9ib3RpY01pZGRsZXdhcmVfS2luZCgpIj5nZXRSb2JvdGljTWlkZGxld2FyZV9LaW5kPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sI2dldEtpbmQoKSI+PENPREU+PGVtPktpbmQ8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90aWNNaWRkbGV3YXJlKCkiPmdldFJvYm90aWNNaWRkbGV3YXJlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Sb2JvdGljIE1pZGRsZXdhcmU8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUVudW08L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Um9ib3RpY01pZGRsZXdhcmVLaW5kKCkiPmdldFJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBlbnVtICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlJvYm90aWMgTWlkZGxld2FyZSBLaW5kPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdGljU2ltdWxhdG9yKCkiPmdldFJvYm90aWNTaW11bGF0b3I8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Um9ib3RpYyBTaW11bGF0b3I8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdGljU3lzdGVtX0xvY2FsT3JpZW50YXRpb24oKSI+Z2V0Um9ib3RpY1N5c3RlbV9Mb2NhbE9yaWVudGF0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxPcmllbnRhdGlvbigpIj48Q09ERT48ZW0+TG9jYWwgT3JpZW50YXRpb248L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdGljU3lzdGVtX0xvY2FsUG9zaXRpb24oKSI+Z2V0Um9ib3RpY1N5c3RlbV9Mb2NhbFBvc2l0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxQb3NpdGlvbigpIj48Q09ERT48ZW0+TG9jYWwgUG9zaXRpb248L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90aWNTeXN0ZW0oKSI+Z2V0Um9ib3RpY1N5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Sb2JvdGljIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRW51bTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdEtpbmQoKSI+Z2V0Um9ib3RLaW5kPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGVudW0gJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Um9ib3QgS2luZDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90TUxGYWN0b3J5KCkiPmdldFJvYm90TUxGYWN0b3J5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgZmFjdG9yeSB0aGF0IGNyZWF0ZXMgdGhlIGluc3RhbmNlcyBvZiB0aGUgbW9kZWw8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTZW5zb3JEcml2ZXIoKSI+Z2V0U2Vuc29yRHJpdmVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yRHJpdmVyLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+U2Vuc29yIERyaXZlcjwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNlbnNvclN5c3RlbV9GcmVxdWVuY3koKSI+Z2V0U2Vuc29yU3lzdGVtX0ZyZXF1ZW5jeTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjZ2V0RnJlcXVlbmN5KCkiPjxDT0RFPjxlbT5GcmVxdWVuY3k8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTZW5zb3JTeXN0ZW1fSWRlbnRpZmllcigpIj5nZXRTZW5zb3JTeXN0ZW1fSWRlbnRpZmllcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjZ2V0SWRlbnRpZmllcigpIj48Q09ERT48ZW0+SWRlbnRpZmllcjwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U2Vuc29yU3lzdGVtKCkiPmdldFNlbnNvclN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlNlbnNvciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUVudW08L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U2VydmljZUZsb3dLaW5kKCkiPmdldFNlcnZpY2VGbG93S2luZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBlbnVtICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlNlcnZpY2UgRmxvdyBLaW5kPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U2VydmljZVBvcnRfS2luZCgpIj5nZXRTZXJ2aWNlUG9ydF9LaW5kPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sI2dldEtpbmQoKSI+PENPREU+PGVtPktpbmQ8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNlcnZpY2VQb3J0KCkiPmdldFNlcnZpY2VQb3J0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TZXJ2aWNlIFBvcnQ8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUVudW08L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U2hhZGUoKSI+Z2V0U2hhZGU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZW51bSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlNoYWRlPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U2ltdWxhdGVkU3lzdGVtX0Jhc2VfUHJvcGVydHkoKSI+Z2V0U2ltdWxhdGVkU3lzdGVtX0Jhc2VfUHJvcGVydHk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sI2dldEJhc2VfUHJvcGVydHkoKSI+PENPREU+PGVtPkJhc2UgUHJvcGVydHk8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTaW11bGF0ZWRTeXN0ZW1fTWVzaCgpIj5nZXRTaW11bGF0ZWRTeXN0ZW1fTWVzaDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlIGxpc3QgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCNnZXRNZXNoKCkiPjxDT0RFPjxlbT5NZXNoPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTaW11bGF0ZWRTeXN0ZW0oKSI+Z2V0U2ltdWxhdGVkU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+U2ltdWxhdGVkIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNvZnR3YXJlX0RlYWRsaW5lKCkiPmdldFNvZnR3YXJlX0RlYWRsaW5lPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldERlYWRsaW5lKCkiPjxDT0RFPjxlbT5EZWFkbGluZTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNvZnR3YXJlX0lzUGVyaW9kaWMoKSI+Z2V0U29mdHdhcmVfSXNQZXJpb2RpYzwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNpc0lzUGVyaW9kaWMoKSI+PENPREU+PGVtPklzIFBlcmlvZGljPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U29mdHdhcmVfUGVyaW9kKCkiPmdldFNvZnR3YXJlX1BlcmlvZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXRQZXJpb2QoKSI+PENPREU+PGVtPlBlcmlvZDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNvZnR3YXJlX1ByaW9yaXR5KCkiPmdldFNvZnR3YXJlX1ByaW9yaXR5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldFByaW9yaXR5KCkiPjxDT0RFPjxlbT5Qcmlvcml0eTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNvZnR3YXJlX1djZXQoKSI+Z2V0U29mdHdhcmVfV2NldDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXRXY2V0KCkiPjxDT0RFPjxlbT5XY2V0PC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTb2Z0d2FyZSgpIj5nZXRTb2Z0d2FyZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+U29mdHdhcmU8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFN0YWlycygpIj5nZXRTdGFpcnM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TdGFpcnM8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTdGF0ZV9Bcmd1bWVudHMoKSI+Z2V0U3RhdGVfQXJndW1lbnRzPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgbGlzdCAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwjZ2V0QXJndW1lbnRzKCkiPjxDT0RFPjxlbT5Bcmd1bWVudHM8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTdGF0ZV9CYXNlX1N0YXRlKCkiPmdldFN0YXRlX0Jhc2VfU3RhdGU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwjZ2V0QmFzZV9TdGF0ZSgpIj48Q09ERT48ZW0+QmFzZSBTdGF0ZTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFN0YXRlX09wZXJhdGlvbigpIj5nZXRTdGF0ZV9PcGVyYXRpb248L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwjZ2V0T3BlcmF0aW9uKCkiPjxDT0RFPjxlbT5PcGVyYXRpb248L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFN0YXRlKCkiPmdldFN0YXRlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TdGF0ZTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U3VyZmFjZSgpIj5nZXRTdXJmYWNlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlN1cmZhY2U8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUVudW08L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U3luY2hyb25pemF0aW9uS2luZCgpIj5nZXRTeW5jaHJvbml6YXRpb25LaW5kPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGVudW0gJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlN5bmNocm9uaXphdGlvbiBLaW5kPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U3lzdGVtX0Jhc2VfQ2xhc3MoKSI+Z2V0U3lzdGVtX0Jhc2VfQ2xhc3M8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+PENPREU+PGVtPkJhc2UgQ2xhc3M8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFN5c3RlbSgpIj5nZXRTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TeXN0ZW08L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRUcmFuc2l0aW9uX0Jhc2VfVHJhbnNpdGlvbigpIj5nZXRUcmFuc2l0aW9uX0Jhc2VfVHJhbnNpdGlvbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sI2dldEJhc2VfVHJhbnNpdGlvbigpIj48Q09ERT48ZW0+QmFzZSBUcmFuc2l0aW9uPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0VHJhbnNpdGlvbl9FZmZlY3QoKSI+Z2V0VHJhbnNpdGlvbl9FZmZlY3Q8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCNnZXRFZmZlY3QoKSI+PENPREU+PGVtPkVmZmVjdDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFRyYW5zaXRpb25fR3VhcmQoKSI+Z2V0VHJhbnNpdGlvbl9HdWFyZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sI2dldEd1YXJkKCkiPjxDT0RFPjxlbT5HdWFyZDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0VHJhbnNpdGlvbigpIj5nZXRUcmFuc2l0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlRyYW5zaXRpb248L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUVudW08L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0VUdWS2luZCgpIj5nZXRVR1ZLaW5kPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGVudW0gJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlVHViBLaW5kPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVFbnVtPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFVuaXRLaW5kKCkiPmdldFVuaXRLaW5kPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGVudW0gJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Vbml0IEtpbmQ8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdhdGVyU3VyZmFjZSgpIj5nZXRXYXRlclN1cmZhY2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XYXRlclN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5XYXRlciBTdXJmYWNlPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvbkNvbXByZXNzaW9uKCkiPmdldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25Db21wcmVzc2lvbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRTdXNwZW5zaW9uQ29tcHJlc3Npb24oKSI+PENPREU+PGVtPlN1c3BlbnNpb24gQ29tcHJlc3Npb248L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uRGFtcGluZygpIj5nZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uRGFtcGluZzwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRTdXNwZW5zaW9uRGFtcGluZygpIj48Q09ERT48ZW0+U3VzcGVuc2lvbiBEYW1waW5nPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvblJlc3RMZW5ndGgoKSI+Z2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvblJlc3RMZW5ndGg8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0U3VzcGVuc2lvblJlc3RMZW5ndGgoKSI+PENPREU+PGVtPlN1c3BlbnNpb24gUmVzdCBMZW5ndGg8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uU3RpZmZuZXNzKCkiPmdldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25TdGlmZm5lc3M8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0U3VzcGVuc2lvblN0aWZmbmVzcygpIj48Q09ERT48ZW0+U3VzcGVuc2lvbiBTdGlmZm5lc3M8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRXaGVlbFN5c3RlbV9UeXBlT2ZXaGVlbCgpIj5nZXRXaGVlbFN5c3RlbV9UeXBlT2ZXaGVlbDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRUeXBlT2ZXaGVlbCgpIj48Q09ERT48ZW0+VHlwZSBPZiBXaGVlbDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1doZWVsQ29ubmVjdGlvbkhlaWdodCgpIj5nZXRXaGVlbFN5c3RlbV9XaGVlbENvbm5lY3Rpb25IZWlnaHQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0KCkiPjxDT0RFPjxlbT5XaGVlbCBDb25uZWN0aW9uIEhlaWdodDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1doZWVsRnJpY3Rpb24oKSI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxGcmljdGlvbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbEZyaWN0aW9uKCkiPjxDT0RFPjxlbT5XaGVlbCBGcmljdGlvbjwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1doZWVsUmFkaXVzKCkiPmdldFdoZWVsU3lzdGVtX1doZWVsUmFkaXVzPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsUmFkaXVzKCkiPjxDT0RFPjxlbT5XaGVlbCBSYWRpdXM8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRXaGVlbFN5c3RlbV9XaGVlbFN0ZWVyaW5nUElEa2QoKSI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxTdGVlcmluZ1BJRGtkPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsU3RlZXJpbmdQSURrZCgpIj48Q09ERT48ZW0+V2hlZWwgU3RlZXJpbmcgUEkgRGtkPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxTdGVlcmluZ1BJRGtwKCkiPmdldFdoZWVsU3lzdGVtX1doZWVsU3RlZXJpbmdQSURrcDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFN0ZWVyaW5nUElEa3AoKSI+PENPREU+PGVtPldoZWVsIFN0ZWVyaW5nIFBJIERrcDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURrZCgpIj5nZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEa2Q8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRGtkKCkiPjxDT0RFPjxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEa2Q8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEa2koKSI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtpPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURraSgpIj48Q09ERT48ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtpPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtwKCkiPmdldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURrcDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEa3AoKSI+PENPREU+PGVtPldoZWVsIFZlbG9jaXR5IFBJIERrcDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURtYXhTdW0oKSI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRG1heFN1bTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtKCkiPjxDT0RFPjxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEbWF4IFN1bTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURtYXhWYWwoKSI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRG1heFZhbDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEbWF4VmFsKCkiPjxDT0RFPjxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEbWF4IFZhbDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1doZWVsV2lkdGgoKSI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxXaWR0aDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFdpZHRoKCkiPjxDT0RFPjxlbT5XaGVlbCBXaWR0aDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW0oKSI+Z2V0V2hlZWxTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPldoZWVsIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXRFQ2xhc3NpZmllciwgZ2V0RUNsYXNzaWZpZXJzLCBnZXRFRmFjdG9yeUluc3RhbmNlLCBnZXRFU3VicGFja2FnZXMsIGdldEVTdXBlclBhY2thZ2UsIGdldE5zUHJlZml4LCBnZXROc1VSSSwgc2V0RUZhY3RvcnlJbnN0YW5jZSwgc2V0TnNQcmVmaXgsIHNldE5zVVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVOYW1lZEVsZW1lbnQiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU5hbWVkRWxlbWVudDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmdldE5hbWUsIHNldE5hbWU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0RUFubm90YXRpb24sIGdldEVBbm5vdGF0aW9uczwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IEZJRUxEIERFVEFJTCA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImVOQU1FIj48IS0tIC0tPjwvQT48SDM+CitlTkFNRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGphdmEubGFuZy5TdHJpbmcgPEI+ZU5BTUU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIHBhY2thZ2UgbmFtZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuZU5BTUUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZU5TX1VSSSI+PCEtLSAtLT48L0E+PEgzPgorZU5TX1VSSTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGphdmEubGFuZy5TdHJpbmcgPEI+ZU5TX1VSSTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgcGFja2FnZSBuYW1lc3BhY2UgVVJJLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5lTlNfVVJJIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVOU19QUkVGSVgiPjwhLS0gLS0+PC9BPjxIMz4KK2VOU19QUkVGSVg8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBqYXZhLmxhbmcuU3RyaW5nIDxCPmVOU19QUkVGSVg8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIHBhY2thZ2UgbmFtZXNwYWNlIG5hbWUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLmVOU19QUkVGSVgiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUlOU1RBTkNFIj48IS0tIC0tPjwvQT48SDM+CitlSU5TVEFOQ0U8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPiA8Qj5lSU5TVEFOQ0U8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiB0aGUgcGFja2FnZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVFJBTlNJVElPTiI+PCEtLSAtLT48L0E+PEgzPgorVFJBTlNJVElPTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5UUkFOU0lUSU9OPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5UcmFuc2l0aW9uPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5UcmFuc2l0aW9uSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFRyYW5zaXRpb24oKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldFRyYW5zaXRpb24oKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5UUkFOU0lUSU9OIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlRSQU5TSVRJT05fX0JBU0VfVFJBTlNJVElPTiI+PCEtLSAtLT48L0E+PEgzPgorVFJBTlNJVElPTl9fQkFTRV9UUkFOU0lUSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlRSQU5TSVRJT05fX0JBU0VfVFJBTlNJVElPTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBUcmFuc2l0aW9uPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlRSQU5TSVRJT05fX0JBU0VfVFJBTlNJVElPTiI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJUUkFOU0lUSU9OX19HVUFSRCI+PCEtLSAtLT48L0E+PEgzPgorVFJBTlNJVElPTl9fR1VBUkQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+VFJBTlNJVElPTl9fR1VBUkQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkd1YXJkPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlRSQU5TSVRJT05fX0dVQVJEIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlRSQU5TSVRJT05fX0VGRkVDVCI+PCEtLSAtLT48L0E+PEgzPgorVFJBTlNJVElPTl9fRUZGRUNUPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlRSQU5TSVRJT05fX0VGRkVDVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RWZmZWN0PC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlRSQU5TSVRJT05fX0VGRkVDVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJUUkFOU0lUSU9OX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxIMz4KK1RSQU5TSVRJT05fRkVBVFVSRV9DT1VOVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5UUkFOU0lUSU9OX0ZFQVRVUkVfQ09VTlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlRyYW5zaXRpb248L2VtPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlRSQU5TSVRJT05fRkVBVFVSRV9DT1VOVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJBTEdPUklUSE0iPjwhLS0gLS0+PC9BPjxIMz4KK0FMR09SSVRITTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5BTEdPUklUSE08L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+QWxnb3JpdGhtPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPkFsZ29yaXRobUltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRBbGdvcml0aG0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldEFsZ29yaXRobSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkFMR09SSVRITSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJBTEdPUklUSE1fX0JBU0VfT1BFUkFUSU9OIj48IS0tIC0tPjwvQT48SDM+CitBTEdPUklUSE1fX0JBU0VfT1BFUkFUSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkFMR09SSVRITV9fQkFTRV9PUEVSQVRJT048L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgT3BlcmF0aW9uPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkFMR09SSVRITV9fQkFTRV9PUEVSQVRJT04iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQUxHT1JJVEhNX19JU19FWFRFUk5BTCI+PCEtLSAtLT48L0E+PEgzPgorQUxHT1JJVEhNX19JU19FWFRFUk5BTDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5BTEdPUklUSE1fX0lTX0VYVEVSTkFMPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5JcyBFeHRlcm5hbDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BTEdPUklUSE1fX0lTX0VYVEVSTkFMIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkFMR09SSVRITV9fRVhUX0ZVTkNUSU9OX05BTUUiPjwhLS0gLS0+PC9BPjxIMz4KK0FMR09SSVRITV9fRVhUX0ZVTkNUSU9OX05BTUU8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+QUxHT1JJVEhNX19FWFRfRlVOQ1RJT05fTkFNRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RXh0IEZ1bmN0aW9uIE5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQUxHT1JJVEhNX19FWFRfRlVOQ1RJT05fTkFNRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJBTEdPUklUSE1fX1BBVEgiPjwhLS0gLS0+PC9BPjxIMz4KK0FMR09SSVRITV9fUEFUSDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5BTEdPUklUSE1fX1BBVEg8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQUxHT1JJVEhNX19QQVRIIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkFMR09SSVRITV9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48SDM+CitBTEdPUklUSE1fRkVBVFVSRV9DT1VOVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5BTEdPUklUSE1fRkVBVFVSRV9DT1VOVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+QWxnb3JpdGhtPC9lbT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BTEdPUklUSE1fRkVBVFVSRV9DT1VOVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTWVNURU0iPjwhLS0gLS0+PC9BPjxIMz4KK1NZU1RFTTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5TWVNURU08L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+U3lzdGVtPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPlN5c3RlbUltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldFN5c3RlbSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNZU1RFTSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTWVNURU1fX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxIMz4KK1NZU1RFTV9fQkFTRV9DTEFTUzwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5TWVNURU1fX0JBU0VfQ0xBU1M8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU1lTVEVNX19CQVNFX0NMQVNTIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNZU1RFTV9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48SDM+CitTWVNURU1fRkVBVFVSRV9DT1VOVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5TWVNURU1fRkVBVFVSRV9DT1VOVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+U3lzdGVtPC9lbT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TWVNURU1fRkVBVFVSRV9DT1VOVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJST0JPVCI+PCEtLSAtLT48L0E+PEgzPgorUk9CT1Q8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+Uk9CT1Q8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5Sb2JvdDwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPlJvYm90SW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFJvYm90KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRSb2JvdCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlJPQk9UIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlBPUlQiPjwhLS0gLS0+PC9BPjxIMz4KK1BPUlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+UE9SVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+UG9ydDwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+UG9ydEltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRQb3J0KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRQb3J0KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUE9SVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJEQVRBX0ZMT1dfUE9SVCI+PCEtLSAtLT48L0E+PEgzPgorREFUQV9GTE9XX1BPUlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+REFUQV9GTE9XX1BPUlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+RGF0YSBGbG93IFBvcnQ8L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9EYXRhRmxvd1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+RGF0YUZsb3dQb3J0SW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldERhdGFGbG93UG9ydCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0RGF0YUZsb3dQb3J0KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuREFUQV9GTE9XX1BPUlQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iRU5WSVJPTk1FTlQiPjwhLS0gLS0+PC9BPjxIMz4KK0VOVklST05NRU5UPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkVOVklST05NRU5UPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbnZpcm9ubWVudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+RW52aXJvbm1lbnQ8L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbnZpcm9ubWVudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5FbnZpcm9ubWVudEltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRFbnZpcm9ubWVudCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0RW52aXJvbm1lbnQoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5FTlZJUk9OTUVOVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTVVJGQUNFIj48IS0tIC0tPjwvQT48SDM+CitTVVJGQUNFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlNVUkZBQ0U8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlN1cmZhY2U8L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPlN1cmZhY2VJbXBsPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U3VyZmFjZSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0U3VyZmFjZSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNVUkZBQ0UiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQlVJTERJTkciPjwhLS0gLS0+PC9BPjxIMz4KK0JVSUxESU5HPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkJVSUxESU5HPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CdWlsZGluZ0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+QnVpbGRpbmc8L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CdWlsZGluZ0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5CdWlsZGluZ0ltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRCdWlsZGluZygpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0QnVpbGRpbmcoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5CVUlMRElORyI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJBR0VOVCI+PCEtLSAtLT48L0E+PEgzPgorQUdFTlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+QUdFTlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5BZ2VudDwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPkFnZW50SW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEFnZW50KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRBZ2VudCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkFHRU5UIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlBMQU5FVCI+PCEtLSAtLT48L0E+PEgzPgorUExBTkVUPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlBMQU5FVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhbmV0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5QbGFuZXQ8L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGFuZXRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+UGxhbmV0SW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFBsYW5ldCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0UGxhbmV0KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUExBTkVUIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkdST1VORCI+PCEtLSAtLT48L0E+PEgzPgorR1JPVU5EPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkdST1VORDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR3JvdW5kSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5Hcm91bmQ8L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Hcm91bmRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+R3JvdW5kSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEdyb3VuZCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0R3JvdW5kKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuR1JPVU5EIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkxBTkRfU1VSRkFDRSI+PCEtLSAtLT48L0E+PEgzPgorTEFORF9TVVJGQUNFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkxBTkRfU1VSRkFDRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGFuZFN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkxhbmQgU3VyZmFjZTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xhbmRTdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPkxhbmRTdXJmYWNlSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldExhbmRTdXJmYWNlKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRMYW5kU3VyZmFjZSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkxBTkRfU1VSRkFDRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJGTE9PUiI+PCEtLSAtLT48L0E+PEgzPgorRkxPT1I8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+RkxPT1I8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Zsb29ySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5GbG9vcjwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Zsb29ySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPkZsb29ySW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEZsb29yKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRGbG9vcigpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkZMT09SIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IldBVEVSX1NVUkZBQ0UiPjwhLS0gLS0+PC9BPjxIMz4KK1dBVEVSX1NVUkZBQ0U8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+V0FURVJfU1VSRkFDRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2F0ZXJTdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5XYXRlciBTdXJmYWNlPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2F0ZXJTdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPldhdGVyU3VyZmFjZUltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRXYXRlclN1cmZhY2UoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldFdhdGVyU3VyZmFjZSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLldBVEVSX1NVUkZBQ0UiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iSFVNQU4iPjwhLS0gLS0+PC9BPjxIMz4KK0hVTUFOPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkhVTUFOPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IdW1hbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+SHVtYW48L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IdW1hbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5IdW1hbkltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRIdW1hbigpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0SHVtYW4oKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5IVU1BTiI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQRURFU1RSSUFOIj48IS0tIC0tPjwvQT48SDM+CitQRURFU1RSSUFOPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlBFREVTVFJJQU48L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BlZGVzdHJpYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlBlZGVzdHJpYW48L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QZWRlc3RyaWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPlBlZGVzdHJpYW5JbXBsPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0UGVkZXN0cmlhbigpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0UGVkZXN0cmlhbigpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlBFREVTVFJJQU4iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU1RBSVJTIj48IS0tIC0tPjwvQT48SDM+CitTVEFJUlM8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+U1RBSVJTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGFpcnNJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlN0YWlyczwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YWlyc0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5TdGFpcnNJbXBsPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U3RhaXJzKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRTdGFpcnMoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TVEFJUlMiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU0VSVklDRV9QT1JUIj48IS0tIC0tPjwvQT48SDM+CitTRVJWSUNFX1BPUlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+U0VSVklDRV9QT1JUPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZXJ2aWNlUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+U2VydmljZSBQb3J0PC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+U2VydmljZVBvcnRJbXBsPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U2VydmljZVBvcnQoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldFNlcnZpY2VQb3J0KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU0VSVklDRV9QT1JUIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlJPQk9USUNfU1lTVEVNIj48IS0tIC0tPjwvQT48SDM+CitST0JPVElDX1NZU1RFTTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5ST0JPVElDX1NZU1RFTTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+Um9ib3RpYyBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPlJvYm90aWNTeXN0ZW1JbXBsPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Um9ib3RpY1N5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0Um9ib3RpY1N5c3RlbSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlJPQk9USUNfU1lTVEVNIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkFDVFVBVE9SX1NZU1RFTSI+PCEtLSAtLT48L0E+PEgzPgorQUNUVUFUT1JfU1lTVEVNPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkFDVFVBVE9SX1NZU1RFTTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWN0dWF0b3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkFjdHVhdG9yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FjdHVhdG9yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPkFjdHVhdG9yU3lzdGVtSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEFjdHVhdG9yU3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRBY3R1YXRvclN5c3RlbSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkFDVFVBVE9SX1NZU1RFTSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTRU5TT1JfU1lTVEVNIj48IS0tIC0tPjwvQT48SDM+CitTRU5TT1JfU1lTVEVNPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlNFTlNPUl9TWVNURU08L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+U2Vuc29yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5TZW5zb3JTeXN0ZW1JbXBsPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U2Vuc29yU3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRTZW5zb3JTeXN0ZW0oKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TRU5TT1JfU1lTVEVNIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkhBUkRXQVJFIj48IS0tIC0tPjwvQT48SDM+CitIQVJEV0FSRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5IQVJEV0FSRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSGFyZHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkhhcmR3YXJlPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSGFyZHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+SGFyZHdhcmVJbXBsPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0SGFyZHdhcmUoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldEhhcmR3YXJlKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuSEFSRFdBUkUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU09GVFdBUkUiPjwhLS0gLS0+PC9BPjxIMz4KK1NPRlRXQVJFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlNPRlRXQVJFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+U29mdHdhcmU8L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5Tb2Z0d2FyZUltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRTb2Z0d2FyZSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0U29mdHdhcmUoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TT0ZUV0FSRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQUklNSVRJVkVfREFUQSI+PCEtLSAtLT48L0E+PEgzPgorUFJJTUlUSVZFX0RBVEE8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+UFJJTUlUSVZFX0RBVEE8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1ByaW1pdGl2ZURhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlByaW1pdGl2ZSBEYXRhPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUHJpbWl0aXZlRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5QcmltaXRpdmVEYXRhSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFByaW1pdGl2ZURhdGEoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldFByaW1pdGl2ZURhdGEoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5QUklNSVRJVkVfREFUQSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQSFlTSUNBTF9EQVRBIj48IS0tIC0tPjwvQT48SDM+CitQSFlTSUNBTF9EQVRBPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlBIWVNJQ0FMX0RBVEE8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+UGh5c2ljYWwgRGF0YTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5QaHlzaWNhbERhdGFJbXBsPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0UGh5c2ljYWxEYXRhKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRQaHlzaWNhbERhdGEoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5QSFlTSUNBTF9EQVRBIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkNPTVBPU0VEX0RBVEEiPjwhLS0gLS0+PC9BPjxIMz4KK0NPTVBPU0VEX0RBVEE8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+Q09NUE9TRURfREFUQTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29tcG9zZWREYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5Db21wb3NlZCBEYXRhPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29tcG9zZWREYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPkNvbXBvc2VkRGF0YUltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRDb21wb3NlZERhdGEoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldENvbXBvc2VkRGF0YSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkNPTVBPU0VEX0RBVEEiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQ09MTEVDVElPTiI+PCEtLSAtLT48L0E+PEgzPgorQ09MTEVDVElPTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5DT0xMRUNUSU9OPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db2xsZWN0aW9uSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5Db2xsZWN0aW9uPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29sbGVjdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5Db2xsZWN0aW9uSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldENvbGxlY3Rpb24oKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldENvbGxlY3Rpb24oKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5DT0xMRUNUSU9OIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkVOR0lORV9TWVNURU0iPjwhLS0gLS0+PC9BPjxIMz4KK0VOR0lORV9TWVNURU08L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+RU5HSU5FX1NZU1RFTTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5FbmdpbmUgU3lzdGVtPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPkVuZ2luZVN5c3RlbUltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRFbmdpbmVTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldEVuZ2luZVN5c3RlbSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkVOR0lORV9TWVNURU0iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iV0hFRUxfU1lTVEVNIj48IS0tIC0tPjwvQT48SDM+CitXSEVFTF9TWVNURU08L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+V0hFRUxfU1lTVEVNPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+V2hlZWwgU3lzdGVtPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+V2hlZWxTeXN0ZW1JbXBsPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0V2hlZWxTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldFdoZWVsU3lzdGVtKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuV0hFRUxfU1lTVEVNIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IklNQUdFX1NFTlNPUl9TWVNURU0iPjwhLS0gLS0+PC9BPjxIMz4KK0lNQUdFX1NFTlNPUl9TWVNURU08L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+SU1BR0VfU0VOU09SX1NZU1RFTTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkltYWdlIFNlbnNvciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9JbWFnZVNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5JbWFnZVNlbnNvclN5c3RlbUltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRJbWFnZVNlbnNvclN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0SW1hZ2VTZW5zb3JTeXN0ZW0oKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5JTUFHRV9TRU5TT1JfU1lTVEVNIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkNBTUVSQV9TWVNURU0iPjwhLS0gLS0+PC9BPjxIMz4KK0NBTUVSQV9TWVNURU08L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+Q0FNRVJBX1NZU1RFTTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5DYW1lcmEgU3lzdGVtPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPkNhbWVyYVN5c3RlbUltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRDYW1lcmFTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldENhbWVyYVN5c3RlbSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkNBTUVSQV9TWVNURU0iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNIj48IS0tIC0tPjwvQT48SDM+CitPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU08L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+T0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0oKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5PQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU0iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU0iPjwhLS0gLS0+PC9BPjxIMz4KK09CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+T2JqZWN0IFRyYWNraW5nIFNlbnNvciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0oKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5PQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJMSURBUl9TWVNURU0iPjwhLS0gLS0+PC9BPjxIMz4KK0xJREFSX1NZU1RFTTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5MSURBUl9TWVNURU08L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5MaWRhciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5MaWRhclN5c3RlbUltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRMaWRhclN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0TGlkYXJTeXN0ZW0oKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU0iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU0iPjwhLS0gLS0+PC9BPjxIMz4KK0xPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkxvY2FsaXphdGlvbiBTZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldExvY2FsaXphdGlvblNlbnNvclN5c3RlbSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkdQU19TWVNURU0iPjwhLS0gLS0+PC9BPjxIMz4KK0dQU19TWVNURU08L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+R1BTX1NZU1RFTTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR1BTU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5HUFMgU3lzdGVtPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR1BTU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPkdQU1N5c3RlbUltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRHUFNTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldEdQU1N5c3RlbSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkdQU19TWVNURU0iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU0lNVUxBVEVEX1NZU1RFTSI+PCEtLSAtLT48L0E+PEgzPgorU0lNVUxBVEVEX1NZU1RFTTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5TSU1VTEFURURfU1lTVEVNPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPlNpbXVsYXRlZCBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+U2ltdWxhdGVkU3lzdGVtSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFNpbXVsYXRlZFN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0U2ltdWxhdGVkU3lzdGVtKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU0lNVUxBVEVEX1NZU1RFTSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJBTEdPUklUSE1fTElCUkFSWSI+PCEtLSAtLT48L0E+PEgzPgorQUxHT1JJVEhNX0xJQlJBUlk8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+QUxHT1JJVEhNX0xJQlJBUlk8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkFsZ29yaXRobSBMaWJyYXJ5PC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5BbGdvcml0aG1MaWJyYXJ5SW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEFsZ29yaXRobUxpYnJhcnkoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldEFsZ29yaXRobUxpYnJhcnkoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BTEdPUklUSE1fTElCUkFSWSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTVEFURSI+PCEtLSAtLT48L0E+PEgzPgorU1RBVEU8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+U1RBVEU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5TdGF0ZTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPlN0YXRlSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFN0YXRlKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRTdGF0ZSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNUQVRFIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNFTlNPUl9EUklWRVIiPjwhLS0gLS0+PC9BPjxIMz4KK1NFTlNPUl9EUklWRVI8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+U0VOU09SX0RSSVZFUjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yRHJpdmVySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5TZW5zb3IgRHJpdmVyPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yRHJpdmVySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPlNlbnNvckRyaXZlckltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRTZW5zb3JEcml2ZXIoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldFNlbnNvckRyaXZlcigpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNFTlNPUl9EUklWRVIiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUEhZU0lDQUxfT0JKRUNUIj48IS0tIC0tPjwvQT48SDM+CitQSFlTSUNBTF9PQkpFQ1Q8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+UEhZU0lDQUxfT0JKRUNUPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+UGh5c2ljYWwgT2JqZWN0PC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+UGh5c2ljYWxPYmplY3RJbXBsPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0UGh5c2ljYWxPYmplY3QoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldFBoeXNpY2FsT2JqZWN0KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUEhZU0lDQUxfT0JKRUNUIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlBIWVNJQ0FMX09CSkVDVF9fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PEgzPgorUEhZU0lDQUxfT0JKRUNUX19CQVNFX0NMQVNTPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlBIWVNJQ0FMX09CSkVDVF9fQkFTRV9DTEFTUzwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5QSFlTSUNBTF9PQkpFQ1RfX0JBU0VfQ0xBU1MiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUEhZU0lDQUxfT0JKRUNUX19FVkVMT1ZFU19JTiI+PCEtLSAtLT48L0E+PEgzPgorUEhZU0lDQUxfT0JKRUNUX19FVkVMT1ZFU19JTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5QSFlTSUNBTF9PQkpFQ1RfX0VWRUxPVkVTX0lOPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5FdmVsb3ZlcyBJbjwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlBIWVNJQ0FMX09CSkVDVF9fRVZFTE9WRVNfSU4iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUEhZU0lDQUxfT0JKRUNUX19IQVNfU1VSRkFDRSI+PCEtLSAtLT48L0E+PEgzPgorUEhZU0lDQUxfT0JKRUNUX19IQVNfU1VSRkFDRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5QSFlTSUNBTF9PQkpFQ1RfX0hBU19TVVJGQUNFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IYXMgU3VyZmFjZTwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5QSFlTSUNBTF9PQkpFQ1RfX0hBU19TVVJGQUNFIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlBIWVNJQ0FMX09CSkVDVF9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48SDM+CitQSFlTSUNBTF9PQkpFQ1RfRkVBVFVSRV9DT1VOVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5QSFlTSUNBTF9PQkpFQ1RfRkVBVFVSRV9DT1VOVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+UGh5c2ljYWwgT2JqZWN0PC9lbT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5QSFlTSUNBTF9PQkpFQ1RfRkVBVFVSRV9DT1VOVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJBR0VOVF9fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PEgzPgorQUdFTlRfX0JBU0VfQ0xBU1M8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+QUdFTlRfX0JBU0VfQ0xBU1M8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQUdFTlRfX0JBU0VfQ0xBU1MiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQUdFTlRfX0VWRUxPVkVTX0lOIj48IS0tIC0tPjwvQT48SDM+CitBR0VOVF9fRVZFTE9WRVNfSU48L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+QUdFTlRfX0VWRUxPVkVTX0lOPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5FdmVsb3ZlcyBJbjwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkFHRU5UX19FVkVMT1ZFU19JTiI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJBR0VOVF9fSEFTX1NVUkZBQ0UiPjwhLS0gLS0+PC9BPjxIMz4KK0FHRU5UX19IQVNfU1VSRkFDRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5BR0VOVF9fSEFTX1NVUkZBQ0U8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkhhcyBTdXJmYWNlPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkFHRU5UX19IQVNfU1VSRkFDRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJBR0VOVF9fTU9WRVNfT1ZFUiI+PCEtLSAtLT48L0E+PEgzPgorQUdFTlRfX01PVkVTX09WRVI8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+QUdFTlRfX01PVkVTX09WRVI8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1vdmVzIE92ZXI8L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BR0VOVF9fTU9WRVNfT1ZFUiI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJBR0VOVF9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48SDM+CitBR0VOVF9GRUFUVVJFX0NPVU5UPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkFHRU5UX0ZFQVRVUkVfQ09VTlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkFnZW50PC9lbT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BR0VOVF9GRUFUVVJFX0NPVU5UIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlJPQk9UX19CQVNFX0NMQVNTIj48IS0tIC0tPjwvQT48SDM+CitST0JPVF9fQkFTRV9DTEFTUzwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5ST0JPVF9fQkFTRV9DTEFTUzwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5ST0JPVF9fQkFTRV9DTEFTUyI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJST0JPVF9fRVZFTE9WRVNfSU4iPjwhLS0gLS0+PC9BPjxIMz4KK1JPQk9UX19FVkVMT1ZFU19JTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5ST0JPVF9fRVZFTE9WRVNfSU48L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkV2ZWxvdmVzIEluPC9iPjwvZW0+JyByZWZlcmVuY2UgbGlzdC4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUk9CT1RfX0VWRUxPVkVTX0lOIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlJPQk9UX19IQVNfU1VSRkFDRSI+PCEtLSAtLT48L0E+PEgzPgorUk9CT1RfX0hBU19TVVJGQUNFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlJPQk9UX19IQVNfU1VSRkFDRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGFzIFN1cmZhY2U8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUk9CT1RfX0hBU19TVVJGQUNFIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlJPQk9UX19NT1ZFU19PVkVSIj48IS0tIC0tPjwvQT48SDM+CitST0JPVF9fTU9WRVNfT1ZFUjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5ST0JPVF9fTU9WRVNfT1ZFUjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TW92ZXMgT3ZlcjwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlJPQk9UX19NT1ZFU19PVkVSIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlJPQk9UX19LSU5EIj48IS0tIC0tPjwvQT48SDM+CitST0JPVF9fS0lORDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5ST0JPVF9fS0lORDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+S2luZDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5ST0JPVF9fS0lORCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJST0JPVF9fTUFTUyI+PCEtLSAtLT48L0E+PEgzPgorUk9CT1RfX01BU1M8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+Uk9CT1RfX01BU1M8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1hc3M8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUk9CT1RfX01BU1MiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUk9CT1RfX1dJRFRIIj48IS0tIC0tPjwvQT48SDM+CitST0JPVF9fV0lEVEg8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+Uk9CT1RfX1dJRFRIPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5XaWR0aDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5ST0JPVF9fV0lEVEgiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUk9CT1RfX1VHVl9LSU5EIj48IS0tIC0tPjwvQT48SDM+CitST0JPVF9fVUdWX0tJTkQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+Uk9CT1RfX1VHVl9LSU5EPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5VZ3YgS2luZDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5ST0JPVF9fVUdWX0tJTkQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUk9CT1RfRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PEgzPgorUk9CT1RfRkVBVFVSRV9DT1VOVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5ST0JPVF9GRUFUVVJFX0NPVU5UPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5Sb2JvdDwvZW0+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUk9CT1RfRkVBVFVSRV9DT1VOVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJFTlZJUk9OTUVOVF9fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PEgzPgorRU5WSVJPTk1FTlRfX0JBU0VfQ0xBU1M8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+RU5WSVJPTk1FTlRfX0JBU0VfQ0xBU1M8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuRU5WSVJPTk1FTlRfX0JBU0VfQ0xBU1MiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iRU5WSVJPTk1FTlRfRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PEgzPgorRU5WSVJPTk1FTlRfRkVBVFVSRV9DT1VOVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5FTlZJUk9OTUVOVF9GRUFUVVJFX0NPVU5UPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5FbnZpcm9ubWVudDwvZW0+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuRU5WSVJPTk1FTlRfRkVBVFVSRV9DT1VOVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTVVJGQUNFX19CQVNFX0NMQVNTIj48IS0tIC0tPjwvQT48SDM+CitTVVJGQUNFX19CQVNFX0NMQVNTPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlNVUkZBQ0VfX0JBU0VfQ0xBU1M8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU1VSRkFDRV9fQkFTRV9DTEFTUyI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTVVJGQUNFX19FVkVMT1ZFU19JTiI+PCEtLSAtLT48L0E+PEgzPgorU1VSRkFDRV9fRVZFTE9WRVNfSU48L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+U1VSRkFDRV9fRVZFTE9WRVNfSU48L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkV2ZWxvdmVzIEluPC9iPjwvZW0+JyByZWZlcmVuY2UgbGlzdC4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU1VSRkFDRV9fRVZFTE9WRVNfSU4iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU1VSRkFDRV9fSEFTX1NVUkZBQ0UiPjwhLS0gLS0+PC9BPjxIMz4KK1NVUkZBQ0VfX0hBU19TVVJGQUNFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlNVUkZBQ0VfX0hBU19TVVJGQUNFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IYXMgU3VyZmFjZTwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TVVJGQUNFX19IQVNfU1VSRkFDRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTVVJGQUNFX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxIMz4KK1NVUkZBQ0VfRkVBVFVSRV9DT1VOVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5TVVJGQUNFX0ZFQVRVUkVfQ09VTlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlN1cmZhY2U8L2VtPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNVUkZBQ0VfRkVBVFVSRV9DT1VOVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQT1JUX19CQVNFX1BPUlQiPjwhLS0gLS0+PC9BPjxIMz4KK1BPUlRfX0JBU0VfUE9SVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5QT1JUX19CQVNFX1BPUlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgUG9ydDwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5QT1JUX19CQVNFX1BPUlQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUE9SVF9fU1lOQ0hST05JWkFUSU9OX1BPTElDWSI+PCEtLSAtLT48L0E+PEgzPgorUE9SVF9fU1lOQ0hST05JWkFUSU9OX1BPTElDWTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5QT1JUX19TWU5DSFJPTklaQVRJT05fUE9MSUNZPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TeW5jaHJvbml6YXRpb24gUG9saWN5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlBPUlRfX1NZTkNIUk9OSVpBVElPTl9QT0xJQ1kiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUE9SVF9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48SDM+CitQT1JUX0ZFQVRVUkVfQ09VTlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+UE9SVF9GRUFUVVJFX0NPVU5UPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5Qb3J0PC9lbT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5QT1JUX0ZFQVRVUkVfQ09VTlQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iREFUQV9GTE9XX1BPUlRfX0JBU0VfUE9SVCI+PCEtLSAtLT48L0E+PEgzPgorREFUQV9GTE9XX1BPUlRfX0JBU0VfUE9SVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5EQVRBX0ZMT1dfUE9SVF9fQkFTRV9QT1JUPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIFBvcnQ8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuREFUQV9GTE9XX1BPUlRfX0JBU0VfUE9SVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJEQVRBX0ZMT1dfUE9SVF9fU1lOQ0hST05JWkFUSU9OX1BPTElDWSI+PCEtLSAtLT48L0E+PEgzPgorREFUQV9GTE9XX1BPUlRfX1NZTkNIUk9OSVpBVElPTl9QT0xJQ1k8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+REFUQV9GTE9XX1BPUlRfX1NZTkNIUk9OSVpBVElPTl9QT0xJQ1k8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlN5bmNocm9uaXphdGlvbiBQb2xpY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuREFUQV9GTE9XX1BPUlRfX1NZTkNIUk9OSVpBVElPTl9QT0xJQ1kiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iREFUQV9GTE9XX1BPUlRfX0RJUkVDVElPTiI+PCEtLSAtLT48L0E+PEgzPgorREFUQV9GTE9XX1BPUlRfX0RJUkVDVElPTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5EQVRBX0ZMT1dfUE9SVF9fRElSRUNUSU9OPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5EaXJlY3Rpb248L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuREFUQV9GTE9XX1BPUlRfX0RJUkVDVElPTiI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJEQVRBX0ZMT1dfUE9SVF9fQlVGRkVSX1NJWkUiPjwhLS0gLS0+PC9BPjxIMz4KK0RBVEFfRkxPV19QT1JUX19CVUZGRVJfU0laRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5EQVRBX0ZMT1dfUE9SVF9fQlVGRkVSX1NJWkU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJ1ZmZlciBTaXplPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkRBVEFfRkxPV19QT1JUX19CVUZGRVJfU0laRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJEQVRBX0ZMT1dfUE9SVF9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48SDM+CitEQVRBX0ZMT1dfUE9SVF9GRUFUVVJFX0NPVU5UPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkRBVEFfRkxPV19QT1JUX0ZFQVRVUkVfQ09VTlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkRhdGEgRmxvdyBQb3J0PC9lbT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5EQVRBX0ZMT1dfUE9SVF9GRUFUVVJFX0NPVU5UIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNFUlZJQ0VfUE9SVF9fQkFTRV9QT1JUIj48IS0tIC0tPjwvQT48SDM+CitTRVJWSUNFX1BPUlRfX0JBU0VfUE9SVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5TRVJWSUNFX1BPUlRfX0JBU0VfUE9SVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBQb3J0PC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNFUlZJQ0VfUE9SVF9fQkFTRV9QT1JUIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNFUlZJQ0VfUE9SVF9fU1lOQ0hST05JWkFUSU9OX1BPTElDWSI+PCEtLSAtLT48L0E+PEgzPgorU0VSVklDRV9QT1JUX19TWU5DSFJPTklaQVRJT05fUE9MSUNZPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlNFUlZJQ0VfUE9SVF9fU1lOQ0hST05JWkFUSU9OX1BPTElDWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+U3luY2hyb25pemF0aW9uIFBvbGljeTwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TRVJWSUNFX1BPUlRfX1NZTkNIUk9OSVpBVElPTl9QT0xJQ1kiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU0VSVklDRV9QT1JUX19LSU5EIj48IS0tIC0tPjwvQT48SDM+CitTRVJWSUNFX1BPUlRfX0tJTkQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+U0VSVklDRV9QT1JUX19LSU5EPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5LaW5kPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNFUlZJQ0VfUE9SVF9fS0lORCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTRVJWSUNFX1BPUlRfRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PEgzPgorU0VSVklDRV9QT1JUX0ZFQVRVUkVfQ09VTlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+U0VSVklDRV9QT1JUX0ZFQVRVUkVfQ09VTlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlNlcnZpY2UgUG9ydDwvZW0+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU0VSVklDRV9QT1JUX0ZFQVRVUkVfQ09VTlQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUk9CT1RJQ19TWVNURU1fX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxIMz4KK1JPQk9USUNfU1lTVEVNX19CQVNFX0NMQVNTPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlJPQk9USUNfU1lTVEVNX19CQVNFX0NMQVNTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlJPQk9USUNfU1lTVEVNX19CQVNFX0NMQVNTIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlJPQk9USUNfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+PCEtLSAtLT48L0E+PEgzPgorUk9CT1RJQ19TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlJPQk9USUNfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgUG9zaXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlJPQk9USUNfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+PCEtLSAtLT48L0E+PEgzPgorUk9CT1RJQ19TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlJPQk9USUNfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgT3JpZW50YXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlJPQk9USUNfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxIMz4KK1JPQk9USUNfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+Uk9CT1RJQ19TWVNURU1fRkVBVFVSRV9DT1VOVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+Um9ib3RpYyBTeXN0ZW08L2VtPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlJPQk9USUNfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQUNUVUFUT1JfU1lTVEVNX19CQVNFX0NMQVNTIj48IS0tIC0tPjwvQT48SDM+CitBQ1RVQVRPUl9TWVNURU1fX0JBU0VfQ0xBU1M8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+QUNUVUFUT1JfU1lTVEVNX19CQVNFX0NMQVNTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkFDVFVBVE9SX1NZU1RFTV9fQkFTRV9DTEFTUyI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJBQ1RVQVRPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj48IS0tIC0tPjwvQT48SDM+CitBQ1RVQVRPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkFDVFVBVE9SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT048L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIFBvc2l0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkFDVFVBVE9SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQUNUVUFUT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+PCEtLSAtLT48L0E+PEgzPgorQUNUVUFUT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5BQ1RVQVRPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BQ1RVQVRPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkFDVFVBVE9SX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48SDM+CitBQ1RVQVRPUl9TWVNURU1fRkVBVFVSRV9DT1VOVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5BQ1RVQVRPUl9TWVNURU1fRkVBVFVSRV9DT1VOVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+QWN0dWF0b3IgU3lzdGVtPC9lbT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BQ1RVQVRPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTIj48IS0tIC0tPjwvQT48SDM+CitTRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlNFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1M8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU0VOU09SX1NZU1RFTV9fQkFTRV9DTEFTUyI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+PCEtLSAtLT48L0E+PEgzPgorU0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT048L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+U0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT048L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIFBvc2l0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj48IS0tIC0tPjwvQT48SDM+CitTRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgT3JpZW50YXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZIj48IS0tIC0tPjwvQT48SDM+CitTRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1k8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+U0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5GcmVxdWVuY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNFTlNPUl9TWVNURU1fX0lERU5USUZJRVIiPjwhLS0gLS0+PC9BPjxIMz4KK1NFTlNPUl9TWVNURU1fX0lERU5USUZJRVI8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+U0VOU09SX1NZU1RFTV9fSURFTlRJRklFUjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SWRlbnRpZmllcjwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PEgzPgorU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlNFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+U2Vuc29yIFN5c3RlbTwvZW0+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkhBUkRXQVJFX19CQVNFX0NMQVNTIj48IS0tIC0tPjwvQT48SDM+CitIQVJEV0FSRV9fQkFTRV9DTEFTUzwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5IQVJEV0FSRV9fQkFTRV9DTEFTUzwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5IQVJEV0FSRV9fQkFTRV9DTEFTUyI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJIQVJEV0FSRV9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48SDM+CitIQVJEV0FSRV9GRUFUVVJFX0NPVU5UPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkhBUkRXQVJFX0ZFQVRVUkVfQ09VTlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkhhcmR3YXJlPC9lbT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5IQVJEV0FSRV9GRUFUVVJFX0NPVU5UIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNPRlRXQVJFX19CQVNFX0NMQVNTIj48IS0tIC0tPjwvQT48SDM+CitTT0ZUV0FSRV9fQkFTRV9DTEFTUzwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5TT0ZUV0FSRV9fQkFTRV9DTEFTUzwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TT0ZUV0FSRV9fQkFTRV9DTEFTUyI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTT0ZUV0FSRV9fSVNfUEVSSU9ESUMiPjwhLS0gLS0+PC9BPjxIMz4KK1NPRlRXQVJFX19JU19QRVJJT0RJQzwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5TT0ZUV0FSRV9fSVNfUEVSSU9ESUM8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPklzIFBlcmlvZGljPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNPRlRXQVJFX19JU19QRVJJT0RJQyI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTT0ZUV0FSRV9fUEVSSU9EIj48IS0tIC0tPjwvQT48SDM+CitTT0ZUV0FSRV9fUEVSSU9EPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlNPRlRXQVJFX19QRVJJT0Q8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlBlcmlvZDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TT0ZUV0FSRV9fUEVSSU9EIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNPRlRXQVJFX19QUklPUklUWSI+PCEtLSAtLT48L0E+PEgzPgorU09GVFdBUkVfX1BSSU9SSVRZPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlNPRlRXQVJFX19QUklPUklUWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UHJpb3JpdHk8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU09GVFdBUkVfX1BSSU9SSVRZIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNPRlRXQVJFX19ERUFETElORSI+PCEtLSAtLT48L0E+PEgzPgorU09GVFdBUkVfX0RFQURMSU5FPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlNPRlRXQVJFX19ERUFETElORTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RGVhZGxpbmU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU09GVFdBUkVfX0RFQURMSU5FIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNPRlRXQVJFX19XQ0VUIj48IS0tIC0tPjwvQT48SDM+CitTT0ZUV0FSRV9fV0NFVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5TT0ZUV0FSRV9fV0NFVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2NldDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TT0ZUV0FSRV9fV0NFVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTT0ZUV0FSRV9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48SDM+CitTT0ZUV0FSRV9GRUFUVVJFX0NPVU5UPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlNPRlRXQVJFX0ZFQVRVUkVfQ09VTlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlNvZnR3YXJlPC9lbT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TT0ZUV0FSRV9GRUFUVVJFX0NPVU5UIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlBSSU1JVElWRV9EQVRBX19CQVNFX1BSSU1JVElWRV9UWVBFIj48IS0tIC0tPjwvQT48SDM+CitQUklNSVRJVkVfREFUQV9fQkFTRV9QUklNSVRJVkVfVFlQRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5QUklNSVRJVkVfREFUQV9fQkFTRV9QUklNSVRJVkVfVFlQRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBQcmltaXRpdmUgVHlwZTwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5QUklNSVRJVkVfREFUQV9fQkFTRV9QUklNSVRJVkVfVFlQRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQUklNSVRJVkVfREFUQV9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48SDM+CitQUklNSVRJVkVfREFUQV9GRUFUVVJFX0NPVU5UPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlBSSU1JVElWRV9EQVRBX0ZFQVRVUkVfQ09VTlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlByaW1pdGl2ZSBEYXRhPC9lbT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5QUklNSVRJVkVfREFUQV9GRUFUVVJFX0NPVU5UIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlBIWVNJQ0FMX0RBVEFfX0JBU0VfREFUQV9UWVBFIj48IS0tIC0tPjwvQT48SDM+CitQSFlTSUNBTF9EQVRBX19CQVNFX0RBVEFfVFlQRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5QSFlTSUNBTF9EQVRBX19CQVNFX0RBVEFfVFlQRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBEYXRhIFR5cGU8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUEhZU0lDQUxfREFUQV9fQkFTRV9EQVRBX1RZUEUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUEhZU0lDQUxfREFUQV9fVU5JVCI+PCEtLSAtLT48L0E+PEgzPgorUEhZU0lDQUxfREFUQV9fVU5JVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5QSFlTSUNBTF9EQVRBX19VTklUPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Vbml0PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlBIWVNJQ0FMX0RBVEFfX1VOSVQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUEhZU0lDQUxfREFUQV9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48SDM+CitQSFlTSUNBTF9EQVRBX0ZFQVRVUkVfQ09VTlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+UEhZU0lDQUxfREFUQV9GRUFUVVJFX0NPVU5UPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5QaHlzaWNhbCBEYXRhPC9lbT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5QSFlTSUNBTF9EQVRBX0ZFQVRVUkVfQ09VTlQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQ09NUE9TRURfREFUQV9fQkFTRV9EQVRBX1RZUEUiPjwhLS0gLS0+PC9BPjxIMz4KK0NPTVBPU0VEX0RBVEFfX0JBU0VfREFUQV9UWVBFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkNPTVBPU0VEX0RBVEFfX0JBU0VfREFUQV9UWVBFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIERhdGEgVHlwZTwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5DT01QT1NFRF9EQVRBX19CQVNFX0RBVEFfVFlQRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJDT01QT1NFRF9EQVRBX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxIMz4KK0NPTVBPU0VEX0RBVEFfRkVBVFVSRV9DT1VOVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5DT01QT1NFRF9EQVRBX0ZFQVRVUkVfQ09VTlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkNvbXBvc2VkIERhdGE8L2VtPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkNPTVBPU0VEX0RBVEFfRkVBVFVSRV9DT1VOVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJDT0xMRUNUSU9OX19CQVNFX0RBVEFfVFlQRSI+PCEtLSAtLT48L0E+PEgzPgorQ09MTEVDVElPTl9fQkFTRV9EQVRBX1RZUEU8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+Q09MTEVDVElPTl9fQkFTRV9EQVRBX1RZUEU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgRGF0YSBUeXBlPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkNPTExFQ1RJT05fX0JBU0VfREFUQV9UWVBFIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkNPTExFQ1RJT05fRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PEgzPgorQ09MTEVDVElPTl9GRUFUVVJFX0NPVU5UPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkNPTExFQ1RJT05fRkVBVFVSRV9DT1VOVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+Q29sbGVjdGlvbjwvZW0+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQ09MTEVDVElPTl9GRUFUVVJFX0NPVU5UIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkVOR0lORV9TWVNURU1fX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxIMz4KK0VOR0lORV9TWVNURU1fX0JBU0VfQ0xBU1M8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+RU5HSU5FX1NZU1RFTV9fQkFTRV9DTEFTUzwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19CQVNFX0NMQVNTIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkVOR0lORV9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj48IS0tIC0tPjwvQT48SDM+CitFTkdJTkVfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5FTkdJTkVfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgUG9zaXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuRU5HSU5FX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iRU5HSU5FX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPjwhLS0gLS0+PC9BPjxIMz4KK0VOR0lORV9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkVOR0lORV9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJFTkdJTkVfU1lTVEVNX19WRUhJQ0xFX1RSQUNUSU9OIj48IS0tIC0tPjwvQT48SDM+CitFTkdJTkVfU1lTVEVNX19WRUhJQ0xFX1RSQUNUSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkVOR0lORV9TWVNURU1fX1ZFSElDTEVfVFJBQ1RJT048L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlZlaGljbGUgVHJhY3Rpb248L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuRU5HSU5FX1NZU1RFTV9fVkVISUNMRV9UUkFDVElPTiI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJFTkdJTkVfU1lTVEVNX19NQVhfRU5HSU5FX0ZPUkNFIj48IS0tIC0tPjwvQT48SDM+CitFTkdJTkVfU1lTVEVNX19NQVhfRU5HSU5FX0ZPUkNFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkVOR0lORV9TWVNURU1fX01BWF9FTkdJTkVfRk9SQ0U8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1heCBFbmdpbmUgRm9yY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuRU5HSU5FX1NZU1RFTV9fTUFYX0VOR0lORV9GT1JDRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJFTkdJTkVfU1lTVEVNX19NQVhfQlJFQUtJTkdfRk9SQ0UiPjwhLS0gLS0+PC9BPjxIMz4KK0VOR0lORV9TWVNURU1fX01BWF9CUkVBS0lOR19GT1JDRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5FTkdJTkVfU1lTVEVNX19NQVhfQlJFQUtJTkdfRk9SQ0U8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1heCBCcmVha2luZyBGb3JjZTwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19NQVhfQlJFQUtJTkdfRk9SQ0UiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iRU5HSU5FX1NZU1RFTV9fTUFYX0FMTE9XRURfU1RFRVJJTkciPjwhLS0gLS0+PC9BPjxIMz4KK0VOR0lORV9TWVNURU1fX01BWF9BTExPV0VEX1NURUVSSU5HPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkVOR0lORV9TWVNURU1fX01BWF9BTExPV0VEX1NURUVSSU5HPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5NYXggQWxsb3dlZCBTdGVlcmluZzwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19NQVhfQUxMT1dFRF9TVEVFUklORyI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJFTkdJTkVfU1lTVEVNX19NQVhfQUxMT1dFRF9WRUxPQ0lUWSI+PCEtLSAtLT48L0E+PEgzPgorRU5HSU5FX1NZU1RFTV9fTUFYX0FMTE9XRURfVkVMT0NJVFk8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+RU5HSU5FX1NZU1RFTV9fTUFYX0FMTE9XRURfVkVMT0NJVFk8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1heCBBbGxvd2VkIFZlbG9jaXR5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkVOR0lORV9TWVNURU1fX01BWF9BTExPV0VEX1ZFTE9DSVRZIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkVOR0lORV9TWVNURU1fX0dFQVJfUkFUSU9OIj48IS0tIC0tPjwvQT48SDM+CitFTkdJTkVfU1lTVEVNX19HRUFSX1JBVElPTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5FTkdJTkVfU1lTVEVNX19HRUFSX1JBVElPTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+R2VhciByYXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuRU5HSU5FX1NZU1RFTV9fR0VBUl9SQVRJT04iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iRU5HSU5FX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48SDM+CitFTkdJTkVfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+RU5HSU5FX1NZU1RFTV9GRUFUVVJFX0NPVU5UPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5FbmdpbmUgU3lzdGVtPC9lbT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iV0hFRUxfU1lTVEVNX19CQVNFX0NMQVNTIj48IS0tIC0tPjwvQT48SDM+CitXSEVFTF9TWVNURU1fX0JBU0VfQ0xBU1M8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+V0hFRUxfU1lTVEVNX19CQVNFX0NMQVNTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLldIRUVMX1NZU1RFTV9fQkFTRV9DTEFTUyI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJXSEVFTF9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj48IS0tIC0tPjwvQT48SDM+CitXSEVFTF9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPldIRUVMX1NZU1RFTV9fTE9DQUxfUE9TSVRJT048L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIFBvc2l0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLldIRUVMX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iV0hFRUxfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+PCEtLSAtLT48L0E+PEgzPgorV0hFRUxfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5XSEVFTF9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5XSEVFTF9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IldIRUVMX1NZU1RFTV9fV0hFRUxfUkFESVVTIj48IS0tIC0tPjwvQT48SDM+CitXSEVFTF9TWVNURU1fX1dIRUVMX1JBRElVUzwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5XSEVFTF9TWVNURU1fX1dIRUVMX1JBRElVUzwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgUmFkaXVzPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLldIRUVMX1NZU1RFTV9fV0hFRUxfUkFESVVTIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IldIRUVMX1NZU1RFTV9fV0hFRUxfV0lEVEgiPjwhLS0gLS0+PC9BPjxIMz4KK1dIRUVMX1NZU1RFTV9fV0hFRUxfV0lEVEg8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+V0hFRUxfU1lTVEVNX19XSEVFTF9XSURUSDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgV2lkdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuV0hFRUxfU1lTVEVNX19XSEVFTF9XSURUSCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJXSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fUkVTVF9MRU5HVEgiPjwhLS0gLS0+PC9BPjxIMz4KK1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9SRVNUX0xFTkdUSDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5XSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fUkVTVF9MRU5HVEg8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlN1c3BlbnNpb24gUmVzdCBMZW5ndGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX1JFU1RfTEVOR1RIIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IldIRUVMX1NZU1RFTV9fV0hFRUxfQ09OTkVDVElPTl9IRUlHSFQiPjwhLS0gLS0+PC9BPjxIMz4KK1dIRUVMX1NZU1RFTV9fV0hFRUxfQ09OTkVDVElPTl9IRUlHSFQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+V0hFRUxfU1lTVEVNX19XSEVFTF9DT05ORUNUSU9OX0hFSUdIVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgQ29ubmVjdGlvbiBIZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuV0hFRUxfU1lTVEVNX19XSEVFTF9DT05ORUNUSU9OX0hFSUdIVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJXSEVFTF9TWVNURU1fX1RZUEVfT0ZfV0hFRUwiPjwhLS0gLS0+PC9BPjxIMz4KK1dIRUVMX1NZU1RFTV9fVFlQRV9PRl9XSEVFTDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5XSEVFTF9TWVNURU1fX1RZUEVfT0ZfV0hFRUw8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlR5cGUgT2YgV2hlZWw8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuV0hFRUxfU1lTVEVNX19UWVBFX09GX1dIRUVMIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IldIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtQIj48IS0tIC0tPjwvQT48SDM+CitXSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLUDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLUDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRGtwPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLldIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtQIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IldIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtJIj48IS0tIC0tPjwvQT48SDM+CitXSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLSTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLSTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRGtpPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLldIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtJIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IldIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtEIj48IS0tIC0tPjwvQT48SDM+CitXSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLRDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLRDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRGtkPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLldIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtEIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IldIRUVMX1NZU1RFTV9fV0hFRUxfU1RFRVJJTkdfUElfREtQIj48IS0tIC0tPjwvQT48SDM+CitXSEVFTF9TWVNURU1fX1dIRUVMX1NURUVSSU5HX1BJX0RLUDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5XSEVFTF9TWVNURU1fX1dIRUVMX1NURUVSSU5HX1BJX0RLUDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgU3RlZXJpbmcgUEkgRGtwPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLldIRUVMX1NZU1RFTV9fV0hFRUxfU1RFRVJJTkdfUElfREtQIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IldIRUVMX1NZU1RFTV9fV0hFRUxfU1RFRVJJTkdfUElfREtEIj48IS0tIC0tPjwvQT48SDM+CitXSEVFTF9TWVNURU1fX1dIRUVMX1NURUVSSU5HX1BJX0RLRDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5XSEVFTF9TWVNURU1fX1dIRUVMX1NURUVSSU5HX1BJX0RLRDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgU3RlZXJpbmcgUEkgRGtkPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLldIRUVMX1NZU1RFTV9fV0hFRUxfU1RFRVJJTkdfUElfREtEIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IldIRUVMX1NZU1RFTV9fV0hFRUxfRlJJQ1RJT04iPjwhLS0gLS0+PC9BPjxIMz4KK1dIRUVMX1NZU1RFTV9fV0hFRUxfRlJJQ1RJT048L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+V0hFRUxfU1lTVEVNX19XSEVFTF9GUklDVElPTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgRnJpY3Rpb248L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuV0hFRUxfU1lTVEVNX19XSEVFTF9GUklDVElPTiI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJXSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fU1RJRkZORVNTIj48IS0tIC0tPjwvQT48SDM+CitXSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fU1RJRkZORVNTPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPldIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9TVElGRk5FU1M8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlN1c3BlbnNpb24gU3RpZmZuZXNzPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLldIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9TVElGRk5FU1MiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0RBTVBJTkciPjwhLS0gLS0+PC9BPjxIMz4KK1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9EQU1QSU5HPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPldIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9EQU1QSU5HPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TdXNwZW5zaW9uIERhbXBpbmc8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0RBTVBJTkciPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0NPTVBSRVNTSU9OIj48IS0tIC0tPjwvQT48SDM+CitXSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fQ09NUFJFU1NJT048L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+V0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0NPTVBSRVNTSU9OPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TdXNwZW5zaW9uIENvbXByZXNzaW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLldIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9DT01QUkVTU0lPTiI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJXSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RNQVhfU1VNIj48IS0tIC0tPjwvQT48SDM+CitXSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RNQVhfU1VNPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPldIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9TVU08L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPldoZWVsIFZlbG9jaXR5IFBJIERtYXggU3VtPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLldIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9TVU0iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1ZBTCI+PCEtLSAtLT48L0E+PEgzPgorV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1ZBTDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RNQVhfVkFMPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5XaGVlbCBWZWxvY2l0eSBQSSBEbWF4IFZhbDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RNQVhfVkFMIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IldIRUVMX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48SDM+CitXSEVFTF9TWVNURU1fRkVBVFVSRV9DT1VOVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5XSEVFTF9TWVNURU1fRkVBVFVSRV9DT1VOVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+V2hlZWwgU3lzdGVtPC9lbT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5XSEVFTF9TWVNURU1fRkVBVFVSRV9DT1VOVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJJTUFHRV9TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTIj48IS0tIC0tPjwvQT48SDM+CitJTUFHRV9TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPklNQUdFX1NFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1M8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuSU1BR0VfU0VOU09SX1NZU1RFTV9fQkFTRV9DTEFTUyI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJJTUFHRV9TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+PCEtLSAtLT48L0E+PEgzPgorSU1BR0VfU0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT048L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+SU1BR0VfU0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT048L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIFBvc2l0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLklNQUdFX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IklNQUdFX1NFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj48IS0tIC0tPjwvQT48SDM+CitJTUFHRV9TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5JTUFHRV9TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgT3JpZW50YXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuSU1BR0VfU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iSU1BR0VfU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZIj48IS0tIC0tPjwvQT48SDM+CitJTUFHRV9TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1k8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+SU1BR0VfU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5GcmVxdWVuY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuSU1BR0VfU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IklNQUdFX1NFTlNPUl9TWVNURU1fX0lERU5USUZJRVIiPjwhLS0gLS0+PC9BPjxIMz4KK0lNQUdFX1NFTlNPUl9TWVNURU1fX0lERU5USUZJRVI8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+SU1BR0VfU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SWRlbnRpZmllcjwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5JTUFHRV9TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IklNQUdFX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PEgzPgorSU1BR0VfU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPklNQUdFX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+SW1hZ2UgU2Vuc29yIFN5c3RlbTwvZW0+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuSU1BR0VfU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkNBTUVSQV9TWVNURU1fX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxIMz4KK0NBTUVSQV9TWVNURU1fX0JBU0VfQ0xBU1M8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+Q0FNRVJBX1NZU1RFTV9fQkFTRV9DTEFTUzwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5DQU1FUkFfU1lTVEVNX19CQVNFX0NMQVNTIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkNBTUVSQV9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj48IS0tIC0tPjwvQT48SDM+CitDQU1FUkFfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5DQU1FUkFfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgUG9zaXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQ0FNRVJBX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPjwhLS0gLS0+PC9BPjxIMz4KK0NBTUVSQV9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkNBTUVSQV9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5DQU1FUkFfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJDQU1FUkFfU1lTVEVNX19GUkVRVUVOQ1kiPjwhLS0gLS0+PC9BPjxIMz4KK0NBTUVSQV9TWVNURU1fX0ZSRVFVRU5DWTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5DQU1FUkFfU1lTVEVNX19GUkVRVUVOQ1k8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkZyZXF1ZW5jeTwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5DQU1FUkFfU1lTVEVNX19GUkVRVUVOQ1kiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQ0FNRVJBX1NZU1RFTV9fSURFTlRJRklFUiI+PCEtLSAtLT48L0E+PEgzPgorQ0FNRVJBX1NZU1RFTV9fSURFTlRJRklFUjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5DQU1FUkFfU1lTVEVNX19JREVOVElGSUVSPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5JZGVudGlmaWVyPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkNBTUVSQV9TWVNURU1fX0lERU5USUZJRVIiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQ0FNRVJBX1NZU1RFTV9fV0lEVEgiPjwhLS0gLS0+PC9BPjxIMz4KK0NBTUVSQV9TWVNURU1fX1dJRFRIPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkNBTUVSQV9TWVNURU1fX1dJRFRIPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5XaWR0aDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5DQU1FUkFfU1lTVEVNX19XSURUSCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJDQU1FUkFfU1lTVEVNX19IRUlHSFQiPjwhLS0gLS0+PC9BPjxIMz4KK0NBTUVSQV9TWVNURU1fX0hFSUdIVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5DQU1FUkFfU1lTVEVNX19IRUlHSFQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkhlaWdodDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5DQU1FUkFfU1lTVEVNX19IRUlHSFQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQ0FNRVJBX1NZU1RFTV9fQUxQSEFfVSI+PCEtLSAtLT48L0E+PEgzPgorQ0FNRVJBX1NZU1RFTV9fQUxQSEFfVTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5DQU1FUkFfU1lTVEVNX19BTFBIQV9VPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbHBoYSB1PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkNBTUVSQV9TWVNURU1fX0FMUEhBX1UiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQ0FNRVJBX1NZU1RFTV9fQUxQSEFfViI+PCEtLSAtLT48L0E+PEgzPgorQ0FNRVJBX1NZU1RFTV9fQUxQSEFfVjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5DQU1FUkFfU1lTVEVNX19BTFBIQV9WPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbHBoYSB2PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkNBTUVSQV9TWVNURU1fX0FMUEhBX1YiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQ0FNRVJBX1NZU1RFTV9fVTAiPjwhLS0gLS0+PC9BPjxIMz4KK0NBTUVSQV9TWVNURU1fX1UwPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkNBTUVSQV9TWVNURU1fX1UwPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5VMDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5DQU1FUkFfU1lTVEVNX19VMCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJDQU1FUkFfU1lTVEVNX19WMCI+PCEtLSAtLT48L0E+PEgzPgorQ0FNRVJBX1NZU1RFTV9fVjA8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+Q0FNRVJBX1NZU1RFTV9fVjA8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlYwPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkNBTUVSQV9TWVNURU1fX1YwIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkNBTUVSQV9TWVNURU1fX0NPTE9SX0ZPUk1BVCI+PCEtLSAtLT48L0E+PEgzPgorQ0FNRVJBX1NZU1RFTV9fQ09MT1JfRk9STUFUPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkNBTUVSQV9TWVNURU1fX0NPTE9SX0ZPUk1BVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+Q29sb3IgZm9ybWF0PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkNBTUVSQV9TWVNURU1fX0NPTE9SX0ZPUk1BVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJDQU1FUkFfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxIMz4KK0NBTUVSQV9TWVNURU1fRkVBVFVSRV9DT1VOVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5DQU1FUkFfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkNhbWVyYSBTeXN0ZW08L2VtPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkNBTUVSQV9TWVNURU1fRkVBVFVSRV9DT1VOVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxIMz4KK09CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fQkFTRV9DTEFTUzwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5PQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1M8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9Ik9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPjwhLS0gLS0+PC9BPjxIMz4KK09CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT048L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+T0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgUG9zaXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj48IS0tIC0tPjwvQT48SDM+CitPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPk9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT048L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIE9yaWVudGF0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLk9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1kiPjwhLS0gLS0+PC9BPjxIMz4KK09CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPk9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5GcmVxdWVuY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1kiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSIj48IS0tIC0tPjwvQT48SDM+CitPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0lERU5USUZJRVI8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+T0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5JZGVudGlmaWVyPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLk9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUiI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PEgzPgorT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+T0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvZW0+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxIMz4KK09CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9Ik9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+PCEtLSAtLT48L0E+PEgzPgorT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgUG9zaXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9Ik9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+PCEtLSAtLT48L0E+PEgzPgorT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgT3JpZW50YXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9Ik9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1kiPjwhLS0gLS0+PC9BPjxIMz4KK09CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1k8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+T0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RnJlcXVlbmN5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1kiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0lERU5USUZJRVIiPjwhLS0gLS0+PC9BPjxIMz4KK09CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5JZGVudGlmaWVyPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9Ik9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxIMz4KK09CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+T0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+T2JqZWN0IFRyYWNraW5nIFNlbnNvciBTeXN0ZW08L2VtPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTElEQVJfU1lTVEVNX19CQVNFX0NMQVNTIj48IS0tIC0tPjwvQT48SDM+CitMSURBUl9TWVNURU1fX0JBU0VfQ0xBU1M8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+TElEQVJfU1lTVEVNX19CQVNFX0NMQVNTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fQkFTRV9DTEFTUyI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJMSURBUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj48IS0tIC0tPjwvQT48SDM+CitMSURBUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkxJREFSX1NZU1RFTV9fTE9DQUxfUE9TSVRJT048L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIFBvc2l0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTElEQVJfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+PCEtLSAtLT48L0E+PEgzPgorTElEQVJfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5MSURBUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkxJREFSX1NZU1RFTV9fRlJFUVVFTkNZIj48IS0tIC0tPjwvQT48SDM+CitMSURBUl9TWVNURU1fX0ZSRVFVRU5DWTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5MSURBUl9TWVNURU1fX0ZSRVFVRU5DWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RnJlcXVlbmN5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fRlJFUVVFTkNZIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkxJREFSX1NZU1RFTV9fSURFTlRJRklFUiI+PCEtLSAtLT48L0E+PEgzPgorTElEQVJfU1lTVEVNX19JREVOVElGSUVSPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkxJREFSX1NZU1RFTV9fSURFTlRJRklFUjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SWRlbnRpZmllcjwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX0lERU5USUZJRVIiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTElEQVJfU1lTVEVNX19OQl9MQVlFUlMiPjwhLS0gLS0+PC9BPjxIMz4KK0xJREFSX1NZU1RFTV9fTkJfTEFZRVJTPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkxJREFSX1NZU1RFTV9fTkJfTEFZRVJTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYiBMYXllcnM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuTElEQVJfU1lTVEVNX19OQl9MQVlFUlMiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTElEQVJfU1lTVEVNX19MQVlFUl9BTkdMRV9NSU4iPjwhLS0gLS0+PC9BPjxIMz4KK0xJREFSX1NZU1RFTV9fTEFZRVJfQU5HTEVfTUlOPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkxJREFSX1NZU1RFTV9fTEFZRVJfQU5HTEVfTUlOPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MYXllciBBbmdsZSBNaW48L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuTElEQVJfU1lTVEVNX19MQVlFUl9BTkdMRV9NSU4iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTElEQVJfU1lTVEVNX19MQVlFUl9BTkdMRV9TVEVQIj48IS0tIC0tPjwvQT48SDM+CitMSURBUl9TWVNURU1fX0xBWUVSX0FOR0xFX1NURVA8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+TElEQVJfU1lTVEVNX19MQVlFUl9BTkdMRV9TVEVQPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MYXllciBBbmdsZSBTdGVwPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fTEFZRVJfQU5HTEVfU1RFUCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJMSURBUl9TWVNURU1fX05PSVNFIj48IS0tIC0tPjwvQT48SDM+CitMSURBUl9TWVNURU1fX05PSVNFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkxJREFSX1NZU1RFTV9fTk9JU0U8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk5vaXNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fTk9JU0UiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTElEQVJfU1lTVEVNX19TSUdNQV9OT0lTRSI+PCEtLSAtLT48L0E+PEgzPgorTElEQVJfU1lTVEVNX19TSUdNQV9OT0lTRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5MSURBUl9TWVNURU1fX1NJR01BX05PSVNFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TaWdtYSBOb2lzZTwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX1NJR01BX05PSVNFIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkxJREFSX1NZU1RFTV9fQU5HTEVfTUlOIj48IS0tIC0tPjwvQT48SDM+CitMSURBUl9TWVNURU1fX0FOR0xFX01JTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5MSURBUl9TWVNURU1fX0FOR0xFX01JTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QW5nbGUgbWluPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fQU5HTEVfTUlOIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkxJREFSX1NZU1RFTV9fQU5HTEVfTUFYIj48IS0tIC0tPjwvQT48SDM+CitMSURBUl9TWVNURU1fX0FOR0xFX01BWDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5MSURBUl9TWVNURU1fX0FOR0xFX01BWDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QW5nbGUgbWF4PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fQU5HTEVfTUFYIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkxJREFSX1NZU1RFTV9fVElNRV9JTkNSRU1FTlQiPjwhLS0gLS0+PC9BPjxIMz4KK0xJREFSX1NZU1RFTV9fVElNRV9JTkNSRU1FTlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+TElEQVJfU1lTVEVNX19USU1FX0lOQ1JFTUVOVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+VGltZSBpbmNyZW1lbnQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuTElEQVJfU1lTVEVNX19USU1FX0lOQ1JFTUVOVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJMSURBUl9TWVNURU1fX1NDQU5fVElNRSI+PCEtLSAtLT48L0E+PEgzPgorTElEQVJfU1lTVEVNX19TQ0FOX1RJTUU8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+TElEQVJfU1lTVEVNX19TQ0FOX1RJTUU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlNjYW4gdGltZTwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX1NDQU5fVElNRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJMSURBUl9TWVNURU1fX1JBTkdFX01JTiI+PCEtLSAtLT48L0E+PEgzPgorTElEQVJfU1lTVEVNX19SQU5HRV9NSU48L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+TElEQVJfU1lTVEVNX19SQU5HRV9NSU48L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlJhbmdlIG1pbjwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX1JBTkdFX01JTiI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJMSURBUl9TWVNURU1fX1JBTkdFX01BWCI+PCEtLSAtLT48L0E+PEgzPgorTElEQVJfU1lTVEVNX19SQU5HRV9NQVg8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+TElEQVJfU1lTVEVNX19SQU5HRV9NQVg8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlJhbmdlIG1heDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX1JBTkdFX01BWCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJMSURBUl9TWVNURU1fRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PEgzPgorTElEQVJfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+TElEQVJfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkxpZGFyIFN5c3RlbTwvZW0+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuTElEQVJfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxIMz4KK0xPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+PCEtLSAtLT48L0E+PEgzPgorTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgUG9zaXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+PCEtLSAtLT48L0E+PEgzPgorTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgT3JpZW50YXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1kiPjwhLS0gLS0+PC9BPjxIMz4KK0xPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1k8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+TE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RnJlcXVlbmN5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1kiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fX0lERU5USUZJRVIiPjwhLS0gLS0+PC9BPjxIMz4KK0xPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5JZGVudGlmaWVyPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxIMz4KK0xPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+TE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2VtPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iR1BTX1NZU1RFTV9fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PEgzPgorR1BTX1NZU1RFTV9fQkFTRV9DTEFTUzwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5HUFNfU1lTVEVNX19CQVNFX0NMQVNTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkdQU19TWVNURU1fX0JBU0VfQ0xBU1MiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iR1BTX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPjwhLS0gLS0+PC9BPjxIMz4KK0dQU19TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkdQU19TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBQb3NpdGlvbjwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5HUFNfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJHUFNfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+PCEtLSAtLT48L0E+PEgzPgorR1BTX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT048L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+R1BTX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT048L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIE9yaWVudGF0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkdQU19TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkdQU19TWVNURU1fX0ZSRVFVRU5DWSI+PCEtLSAtLT48L0E+PEgzPgorR1BTX1NZU1RFTV9fRlJFUVVFTkNZPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkdQU19TWVNURU1fX0ZSRVFVRU5DWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RnJlcXVlbmN5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkdQU19TWVNURU1fX0ZSRVFVRU5DWSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJHUFNfU1lTVEVNX19JREVOVElGSUVSIj48IS0tIC0tPjwvQT48SDM+CitHUFNfU1lTVEVNX19JREVOVElGSUVSPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkdQU19TWVNURU1fX0lERU5USUZJRVI8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPklkZW50aWZpZXI8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuR1BTX1NZU1RFTV9fSURFTlRJRklFUiI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJHUFNfU1lTVEVNX19PUklHSU5fUE9TSVRJT04iPjwhLS0gLS0+PC9BPjxIMz4KK0dQU19TWVNURU1fX09SSUdJTl9QT1NJVElPTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5HUFNfU1lTVEVNX19PUklHSU5fUE9TSVRJT048L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk9yaWdpbiBQb3NpdGlvbjwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5HUFNfU1lTVEVNX19PUklHSU5fUE9TSVRJT04iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iR1BTX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48SDM+CitHUFNfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+R1BTX1NZU1RFTV9GRUFUVVJFX0NPVU5UPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5HUFMgU3lzdGVtPC9lbT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5HUFNfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU0lNVUxBVEVEX1NZU1RFTV9fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PEgzPgorU0lNVUxBVEVEX1NZU1RFTV9fQkFTRV9DTEFTUzwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5TSU1VTEFURURfU1lTVEVNX19CQVNFX0NMQVNTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNJTVVMQVRFRF9TWVNURU1fX0JBU0VfQ0xBU1MiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU0lNVUxBVEVEX1NZU1RFTV9fSVNfUEVSSU9ESUMiPjwhLS0gLS0+PC9BPjxIMz4KK1NJTVVMQVRFRF9TWVNURU1fX0lTX1BFUklPRElDPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlNJTVVMQVRFRF9TWVNURU1fX0lTX1BFUklPRElDPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5JcyBQZXJpb2RpYzwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TSU1VTEFURURfU1lTVEVNX19JU19QRVJJT0RJQyI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTSU1VTEFURURfU1lTVEVNX19QRVJJT0QiPjwhLS0gLS0+PC9BPjxIMz4KK1NJTVVMQVRFRF9TWVNURU1fX1BFUklPRDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5TSU1VTEFURURfU1lTVEVNX19QRVJJT0Q8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlBlcmlvZDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TSU1VTEFURURfU1lTVEVNX19QRVJJT0QiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU0lNVUxBVEVEX1NZU1RFTV9fUFJJT1JJVFkiPjwhLS0gLS0+PC9BPjxIMz4KK1NJTVVMQVRFRF9TWVNURU1fX1BSSU9SSVRZPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlNJTVVMQVRFRF9TWVNURU1fX1BSSU9SSVRZPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Qcmlvcml0eTwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TSU1VTEFURURfU1lTVEVNX19QUklPUklUWSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTSU1VTEFURURfU1lTVEVNX19ERUFETElORSI+PCEtLSAtLT48L0E+PEgzPgorU0lNVUxBVEVEX1NZU1RFTV9fREVBRExJTkU8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+U0lNVUxBVEVEX1NZU1RFTV9fREVBRExJTkU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkRlYWRsaW5lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNJTVVMQVRFRF9TWVNURU1fX0RFQURMSU5FIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNJTVVMQVRFRF9TWVNURU1fX1dDRVQiPjwhLS0gLS0+PC9BPjxIMz4KK1NJTVVMQVRFRF9TWVNURU1fX1dDRVQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+U0lNVUxBVEVEX1NZU1RFTV9fV0NFVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2NldDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TSU1VTEFURURfU1lTVEVNX19XQ0VUIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNJTVVMQVRFRF9TWVNURU1fX0JBU0VfUFJPUEVSVFkiPjwhLS0gLS0+PC9BPjxIMz4KK1NJTVVMQVRFRF9TWVNURU1fX0JBU0VfUFJPUEVSVFk8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+U0lNVUxBVEVEX1NZU1RFTV9fQkFTRV9QUk9QRVJUWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBQcm9wZXJ0eTwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TSU1VTEFURURfU1lTVEVNX19CQVNFX1BST1BFUlRZIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNJTVVMQVRFRF9TWVNURU1fX01FU0giPjwhLS0gLS0+PC9BPjxIMz4KK1NJTVVMQVRFRF9TWVNURU1fX01FU0g8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+U0lNVUxBVEVEX1NZU1RFTV9fTUVTSDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TWVzaDwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNJTVVMQVRFRF9TWVNURU1fX01FU0giPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU0lNVUxBVEVEX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48SDM+CitTSU1VTEFURURfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+U0lNVUxBVEVEX1NZU1RFTV9GRUFUVVJFX0NPVU5UPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5TaW11bGF0ZWQgU3lzdGVtPC9lbT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TSU1VTEFURURfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQUxHT1JJVEhNX0xJQlJBUllfX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxIMz4KK0FMR09SSVRITV9MSUJSQVJZX19CQVNFX0NMQVNTPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkFMR09SSVRITV9MSUJSQVJZX19CQVNFX0NMQVNTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkFMR09SSVRITV9MSUJSQVJZX19CQVNFX0NMQVNTIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkFMR09SSVRITV9MSUJSQVJZX19QQVRIIj48IS0tIC0tPjwvQT48SDM+CitBTEdPUklUSE1fTElCUkFSWV9fUEFUSDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5BTEdPUklUSE1fTElCUkFSWV9fUEFUSDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UGF0aDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BTEdPUklUSE1fTElCUkFSWV9fUEFUSCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJBTEdPUklUSE1fTElCUkFSWV9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48SDM+CitBTEdPUklUSE1fTElCUkFSWV9GRUFUVVJFX0NPVU5UPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkFMR09SSVRITV9MSUJSQVJZX0ZFQVRVUkVfQ09VTlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkFsZ29yaXRobSBMaWJyYXJ5PC9lbT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5BTEdPUklUSE1fTElCUkFSWV9GRUFUVVJFX0NPVU5UIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNUQVRFX19CQVNFX1NUQVRFIj48IS0tIC0tPjwvQT48SDM+CitTVEFURV9fQkFTRV9TVEFURTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5TVEFURV9fQkFTRV9TVEFURTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBTdGF0ZTwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TVEFURV9fQkFTRV9TVEFURSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTVEFURV9fT1BFUkFUSU9OIj48IS0tIC0tPjwvQT48SDM+CitTVEFURV9fT1BFUkFUSU9OPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlNUQVRFX19PUEVSQVRJT048L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk9wZXJhdGlvbjwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TVEFURV9fT1BFUkFUSU9OIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNUQVRFX19BUkdVTUVOVFMiPjwhLS0gLS0+PC9BPjxIMz4KK1NUQVRFX19BUkdVTUVOVFM8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+U1RBVEVfX0FSR1VNRU5UUzwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QXJndW1lbnRzPC9iPjwvZW0+JyByZWZlcmVuY2UgbGlzdC4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU1RBVEVfX0FSR1VNRU5UUyI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTVEFURV9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48SDM+CitTVEFURV9GRUFUVVJFX0NPVU5UPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlNUQVRFX0ZFQVRVUkVfQ09VTlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlN0YXRlPC9lbT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TVEFURV9GRUFUVVJFX0NPVU5UIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNFTlNPUl9EUklWRVJfX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxIMz4KK1NFTlNPUl9EUklWRVJfX0JBU0VfQ0xBU1M8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+U0VOU09SX0RSSVZFUl9fQkFTRV9DTEFTUzwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TRU5TT1JfRFJJVkVSX19CQVNFX0NMQVNTIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNFTlNPUl9EUklWRVJfX0lTX1BFUklPRElDIj48IS0tIC0tPjwvQT48SDM+CitTRU5TT1JfRFJJVkVSX19JU19QRVJJT0RJQzwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5TRU5TT1JfRFJJVkVSX19JU19QRVJJT0RJQzwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SXMgUGVyaW9kaWM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU0VOU09SX0RSSVZFUl9fSVNfUEVSSU9ESUMiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU0VOU09SX0RSSVZFUl9fUEVSSU9EIj48IS0tIC0tPjwvQT48SDM+CitTRU5TT1JfRFJJVkVSX19QRVJJT0Q8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+U0VOU09SX0RSSVZFUl9fUEVSSU9EPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5QZXJpb2Q8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU0VOU09SX0RSSVZFUl9fUEVSSU9EIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNFTlNPUl9EUklWRVJfX1BSSU9SSVRZIj48IS0tIC0tPjwvQT48SDM+CitTRU5TT1JfRFJJVkVSX19QUklPUklUWTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5TRU5TT1JfRFJJVkVSX19QUklPUklUWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UHJpb3JpdHk8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU0VOU09SX0RSSVZFUl9fUFJJT1JJVFkiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU0VOU09SX0RSSVZFUl9fREVBRExJTkUiPjwhLS0gLS0+PC9BPjxIMz4KK1NFTlNPUl9EUklWRVJfX0RFQURMSU5FPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlNFTlNPUl9EUklWRVJfX0RFQURMSU5FPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5EZWFkbGluZTwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TRU5TT1JfRFJJVkVSX19ERUFETElORSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTRU5TT1JfRFJJVkVSX19XQ0VUIj48IS0tIC0tPjwvQT48SDM+CitTRU5TT1JfRFJJVkVSX19XQ0VUPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlNFTlNPUl9EUklWRVJfX1dDRVQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPldjZXQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU0VOU09SX0RSSVZFUl9fV0NFVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTRU5TT1JfRFJJVkVSX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxIMz4KK1NFTlNPUl9EUklWRVJfRkVBVFVSRV9DT1VOVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5TRU5TT1JfRFJJVkVSX0ZFQVRVUkVfQ09VTlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlNlbnNvciBEcml2ZXI8L2VtPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNFTlNPUl9EUklWRVJfRkVBVFVSRV9DT1VOVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJCVUlMRElOR19fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PEgzPgorQlVJTERJTkdfX0JBU0VfQ0xBU1M8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+QlVJTERJTkdfX0JBU0VfQ0xBU1M8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQlVJTERJTkdfX0JBU0VfQ0xBU1MiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQlVJTERJTkdfX0VWRUxPVkVTX0lOIj48IS0tIC0tPjwvQT48SDM+CitCVUlMRElOR19fRVZFTE9WRVNfSU48L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+QlVJTERJTkdfX0VWRUxPVkVTX0lOPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5FdmVsb3ZlcyBJbjwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkJVSUxESU5HX19FVkVMT1ZFU19JTiI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJCVUlMRElOR19fSEFTX1NVUkZBQ0UiPjwhLS0gLS0+PC9BPjxIMz4KK0JVSUxESU5HX19IQVNfU1VSRkFDRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5CVUlMRElOR19fSEFTX1NVUkZBQ0U8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkhhcyBTdXJmYWNlPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkJVSUxESU5HX19IQVNfU1VSRkFDRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJCVUlMRElOR19GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48SDM+CitCVUlMRElOR19GRUFUVVJFX0NPVU5UPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkJVSUxESU5HX0ZFQVRVUkVfQ09VTlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkJ1aWxkaW5nPC9lbT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5CVUlMRElOR19GRUFUVVJFX0NPVU5UIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlBMQU5FVF9fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PEgzPgorUExBTkVUX19CQVNFX0NMQVNTPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlBMQU5FVF9fQkFTRV9DTEFTUzwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5QTEFORVRfX0JBU0VfQ0xBU1MiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUExBTkVUX19FVkVMT1ZFU19JTiI+PCEtLSAtLT48L0E+PEgzPgorUExBTkVUX19FVkVMT1ZFU19JTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5QTEFORVRfX0VWRUxPVkVTX0lOPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5FdmVsb3ZlcyBJbjwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlBMQU5FVF9fRVZFTE9WRVNfSU4iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUExBTkVUX19IQVNfU1VSRkFDRSI+PCEtLSAtLT48L0E+PEgzPgorUExBTkVUX19IQVNfU1VSRkFDRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5QTEFORVRfX0hBU19TVVJGQUNFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IYXMgU3VyZmFjZTwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5QTEFORVRfX0hBU19TVVJGQUNFIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlBMQU5FVF9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48SDM+CitQTEFORVRfRkVBVFVSRV9DT1VOVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5QTEFORVRfRkVBVFVSRV9DT1VOVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+UGxhbmV0PC9lbT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5QTEFORVRfRkVBVFVSRV9DT1VOVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJHUk9VTkRfX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxIMz4KK0dST1VORF9fQkFTRV9DTEFTUzwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5HUk9VTkRfX0JBU0VfQ0xBU1M8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuR1JPVU5EX19CQVNFX0NMQVNTIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkdST1VORF9fRVZFTE9WRVNfSU4iPjwhLS0gLS0+PC9BPjxIMz4KK0dST1VORF9fRVZFTE9WRVNfSU48L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+R1JPVU5EX19FVkVMT1ZFU19JTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RXZlbG92ZXMgSW48L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5HUk9VTkRfX0VWRUxPVkVTX0lOIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkdST1VORF9fSEFTX1NVUkZBQ0UiPjwhLS0gLS0+PC9BPjxIMz4KK0dST1VORF9fSEFTX1NVUkZBQ0U8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+R1JPVU5EX19IQVNfU1VSRkFDRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGFzIFN1cmZhY2U8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuR1JPVU5EX19IQVNfU1VSRkFDRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJHUk9VTkRfRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PEgzPgorR1JPVU5EX0ZFQVRVUkVfQ09VTlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+R1JPVU5EX0ZFQVRVUkVfQ09VTlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkdyb3VuZDwvZW0+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuR1JPVU5EX0ZFQVRVUkVfQ09VTlQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTEFORF9TVVJGQUNFX19CQVNFX0NMQVNTIj48IS0tIC0tPjwvQT48SDM+CitMQU5EX1NVUkZBQ0VfX0JBU0VfQ0xBU1M8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+TEFORF9TVVJGQUNFX19CQVNFX0NMQVNTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkxBTkRfU1VSRkFDRV9fQkFTRV9DTEFTUyI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJMQU5EX1NVUkZBQ0VfX0VWRUxPVkVTX0lOIj48IS0tIC0tPjwvQT48SDM+CitMQU5EX1NVUkZBQ0VfX0VWRUxPVkVTX0lOPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkxBTkRfU1VSRkFDRV9fRVZFTE9WRVNfSU48L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkV2ZWxvdmVzIEluPC9iPjwvZW0+JyByZWZlcmVuY2UgbGlzdC4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuTEFORF9TVVJGQUNFX19FVkVMT1ZFU19JTiI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJMQU5EX1NVUkZBQ0VfX0hBU19TVVJGQUNFIj48IS0tIC0tPjwvQT48SDM+CitMQU5EX1NVUkZBQ0VfX0hBU19TVVJGQUNFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkxBTkRfU1VSRkFDRV9fSEFTX1NVUkZBQ0U8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkhhcyBTdXJmYWNlPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkxBTkRfU1VSRkFDRV9fSEFTX1NVUkZBQ0UiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iTEFORF9TVVJGQUNFX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxIMz4KK0xBTkRfU1VSRkFDRV9GRUFUVVJFX0NPVU5UPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkxBTkRfU1VSRkFDRV9GRUFUVVJFX0NPVU5UPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5MYW5kIFN1cmZhY2U8L2VtPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkxBTkRfU1VSRkFDRV9GRUFUVVJFX0NPVU5UIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkZMT09SX19CQVNFX0NMQVNTIj48IS0tIC0tPjwvQT48SDM+CitGTE9PUl9fQkFTRV9DTEFTUzwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5GTE9PUl9fQkFTRV9DTEFTUzwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5GTE9PUl9fQkFTRV9DTEFTUyI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJGTE9PUl9fRVZFTE9WRVNfSU4iPjwhLS0gLS0+PC9BPjxIMz4KK0ZMT09SX19FVkVMT1ZFU19JTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5GTE9PUl9fRVZFTE9WRVNfSU48L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkV2ZWxvdmVzIEluPC9iPjwvZW0+JyByZWZlcmVuY2UgbGlzdC4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuRkxPT1JfX0VWRUxPVkVTX0lOIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkZMT09SX19IQVNfU1VSRkFDRSI+PCEtLSAtLT48L0E+PEgzPgorRkxPT1JfX0hBU19TVVJGQUNFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkZMT09SX19IQVNfU1VSRkFDRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGFzIFN1cmZhY2U8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuRkxPT1JfX0hBU19TVVJGQUNFIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkZMT09SX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxIMz4KK0ZMT09SX0ZFQVRVUkVfQ09VTlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+RkxPT1JfRkVBVFVSRV9DT1VOVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+Rmxvb3I8L2VtPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkZMT09SX0ZFQVRVUkVfQ09VTlQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iV0FURVJfU1VSRkFDRV9fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PEgzPgorV0FURVJfU1VSRkFDRV9fQkFTRV9DTEFTUzwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5XQVRFUl9TVVJGQUNFX19CQVNFX0NMQVNTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLldBVEVSX1NVUkZBQ0VfX0JBU0VfQ0xBU1MiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iV0FURVJfU1VSRkFDRV9fRVZFTE9WRVNfSU4iPjwhLS0gLS0+PC9BPjxIMz4KK1dBVEVSX1NVUkZBQ0VfX0VWRUxPVkVTX0lOPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPldBVEVSX1NVUkZBQ0VfX0VWRUxPVkVTX0lOPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5FdmVsb3ZlcyBJbjwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLldBVEVSX1NVUkZBQ0VfX0VWRUxPVkVTX0lOIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IldBVEVSX1NVUkZBQ0VfX0hBU19TVVJGQUNFIj48IS0tIC0tPjwvQT48SDM+CitXQVRFUl9TVVJGQUNFX19IQVNfU1VSRkFDRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5XQVRFUl9TVVJGQUNFX19IQVNfU1VSRkFDRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGFzIFN1cmZhY2U8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuV0FURVJfU1VSRkFDRV9fSEFTX1NVUkZBQ0UiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iV0FURVJfU1VSRkFDRV9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48SDM+CitXQVRFUl9TVVJGQUNFX0ZFQVRVUkVfQ09VTlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+V0FURVJfU1VSRkFDRV9GRUFUVVJFX0NPVU5UPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5XYXRlciBTdXJmYWNlPC9lbT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5XQVRFUl9TVVJGQUNFX0ZFQVRVUkVfQ09VTlQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iSFVNQU5fX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxIMz4KK0hVTUFOX19CQVNFX0NMQVNTPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkhVTUFOX19CQVNFX0NMQVNTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkhVTUFOX19CQVNFX0NMQVNTIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkhVTUFOX19FVkVMT1ZFU19JTiI+PCEtLSAtLT48L0E+PEgzPgorSFVNQU5fX0VWRUxPVkVTX0lOPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkhVTUFOX19FVkVMT1ZFU19JTjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RXZlbG92ZXMgSW48L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5IVU1BTl9fRVZFTE9WRVNfSU4iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iSFVNQU5fX0hBU19TVVJGQUNFIj48IS0tIC0tPjwvQT48SDM+CitIVU1BTl9fSEFTX1NVUkZBQ0U8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+SFVNQU5fX0hBU19TVVJGQUNFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IYXMgU3VyZmFjZTwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5IVU1BTl9fSEFTX1NVUkZBQ0UiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iSFVNQU5fX01PVkVTX09WRVIiPjwhLS0gLS0+PC9BPjxIMz4KK0hVTUFOX19NT1ZFU19PVkVSPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkhVTUFOX19NT1ZFU19PVkVSPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Nb3ZlcyBPdmVyPC9iPjwvZW0+JyByZWZlcmVuY2UgbGlzdC4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuSFVNQU5fX01PVkVTX09WRVIiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iSFVNQU5fRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PEgzPgorSFVNQU5fRkVBVFVSRV9DT1VOVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5IVU1BTl9GRUFUVVJFX0NPVU5UPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5IdW1hbjwvZW0+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuSFVNQU5fRkVBVFVSRV9DT1VOVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQRURFU1RSSUFOX19CQVNFX0NMQVNTIj48IS0tIC0tPjwvQT48SDM+CitQRURFU1RSSUFOX19CQVNFX0NMQVNTPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlBFREVTVFJJQU5fX0JBU0VfQ0xBU1M8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUEVERVNUUklBTl9fQkFTRV9DTEFTUyI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQRURFU1RSSUFOX19FVkVMT1ZFU19JTiI+PCEtLSAtLT48L0E+PEgzPgorUEVERVNUUklBTl9fRVZFTE9WRVNfSU48L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+UEVERVNUUklBTl9fRVZFTE9WRVNfSU48L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkV2ZWxvdmVzIEluPC9iPjwvZW0+JyByZWZlcmVuY2UgbGlzdC4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUEVERVNUUklBTl9fRVZFTE9WRVNfSU4iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUEVERVNUUklBTl9fSEFTX1NVUkZBQ0UiPjwhLS0gLS0+PC9BPjxIMz4KK1BFREVTVFJJQU5fX0hBU19TVVJGQUNFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlBFREVTVFJJQU5fX0hBU19TVVJGQUNFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IYXMgU3VyZmFjZTwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5QRURFU1RSSUFOX19IQVNfU1VSRkFDRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQRURFU1RSSUFOX19NT1ZFU19PVkVSIj48IS0tIC0tPjwvQT48SDM+CitQRURFU1RSSUFOX19NT1ZFU19PVkVSPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlBFREVTVFJJQU5fX01PVkVTX09WRVI8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1vdmVzIE92ZXI8L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5QRURFU1RSSUFOX19NT1ZFU19PVkVSIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlBFREVTVFJJQU5fRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PEgzPgorUEVERVNUUklBTl9GRUFUVVJFX0NPVU5UPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlBFREVTVFJJQU5fRkVBVFVSRV9DT1VOVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+UGVkZXN0cmlhbjwvZW0+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUEVERVNUUklBTl9GRUFUVVJFX0NPVU5UIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNUQUlSU19fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PEgzPgorU1RBSVJTX19CQVNFX0NMQVNTPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlNUQUlSU19fQkFTRV9DTEFTUzwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TVEFJUlNfX0JBU0VfQ0xBU1MiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU1RBSVJTX19FVkVMT1ZFU19JTiI+PCEtLSAtLT48L0E+PEgzPgorU1RBSVJTX19FVkVMT1ZFU19JTjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5TVEFJUlNfX0VWRUxPVkVTX0lOPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5FdmVsb3ZlcyBJbjwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNUQUlSU19fRVZFTE9WRVNfSU4iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU1RBSVJTX19IQVNfU1VSRkFDRSI+PCEtLSAtLT48L0E+PEgzPgorU1RBSVJTX19IQVNfU1VSRkFDRTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5TVEFJUlNfX0hBU19TVVJGQUNFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IYXMgU3VyZmFjZTwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TVEFJUlNfX0hBU19TVVJGQUNFIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNUQUlSU19GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48SDM+CitTVEFJUlNfRkVBVFVSRV9DT1VOVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5TVEFJUlNfRkVBVFVSRV9DT1VOVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+U3RhaXJzPC9lbT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5TVEFJUlNfRkVBVFVSRV9DT1VOVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQTEFURk9STSI+PCEtLSAtLT48L0E+PEgzPgorUExBVEZPUk08L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+UExBVEZPUk08L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5QbGF0Zm9ybTwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPlBsYXRmb3JtSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFBsYXRmb3JtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRQbGF0Zm9ybSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlBMQVRGT1JNIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlBMQVRGT1JNX19CQVNFX0NMQVNTIj48IS0tIC0tPjwvQT48SDM+CitQTEFURk9STV9fQkFTRV9DTEFTUzwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5QTEFURk9STV9fQkFTRV9DTEFTUzwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5QTEFURk9STV9fQkFTRV9DTEFTUyI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJQTEFURk9STV9fQkFTRV9OT0RFIj48IS0tIC0tPjwvQT48SDM+CitQTEFURk9STV9fQkFTRV9OT0RFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlBMQVRGT1JNX19CQVNFX05PREU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgTm9kZTwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5QTEFURk9STV9fQkFTRV9OT0RFIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlBMQVRGT1JNX0ZFQVRVUkVfQ09VTlQiPjwhLS0gLS0+PC9BPjxIMz4KK1BMQVRGT1JNX0ZFQVRVUkVfQ09VTlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+UExBVEZPUk1fRkVBVFVSRV9DT1VOVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+UGxhdGZvcm08L2VtPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlBMQVRGT1JNX0ZFQVRVUkVfQ09VTlQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUk9CT1RJQ19NSURETEVXQVJFIj48IS0tIC0tPjwvQT48SDM+CitST0JPVElDX01JRERMRVdBUkU8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+Uk9CT1RJQ19NSURETEVXQVJFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljTWlkZGxld2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT48ZW0+Um9ib3RpYyBNaWRkbGV3YXJlPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+Um9ib3RpY01pZGRsZXdhcmVJbXBsPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Um9ib3RpY01pZGRsZXdhcmUoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldFJvYm90aWNNaWRkbGV3YXJlKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19NSURETEVXQVJFIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlJPQk9USUNfTUlERExFV0FSRV9fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PEgzPgorUk9CT1RJQ19NSURETEVXQVJFX19CQVNFX0NMQVNTPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlJPQk9USUNfTUlERExFV0FSRV9fQkFTRV9DTEFTUzwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5ST0JPVElDX01JRERMRVdBUkVfX0JBU0VfQ0xBU1MiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUk9CT1RJQ19NSURETEVXQVJFX19CQVNFX05PREUiPjwhLS0gLS0+PC9BPjxIMz4KK1JPQk9USUNfTUlERExFV0FSRV9fQkFTRV9OT0RFPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlJPQk9USUNfTUlERExFV0FSRV9fQkFTRV9OT0RFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIE5vZGU8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19NSURETEVXQVJFX19CQVNFX05PREUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUk9CT1RJQ19NSURETEVXQVJFX19LSU5EIj48IS0tIC0tPjwvQT48SDM+CitST0JPVElDX01JRERMRVdBUkVfX0tJTkQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+Uk9CT1RJQ19NSURETEVXQVJFX19LSU5EPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5LaW5kPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlJPQk9USUNfTUlERExFV0FSRV9fS0lORCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJST0JPVElDX01JRERMRVdBUkVfRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PEgzPgorUk9CT1RJQ19NSURETEVXQVJFX0ZFQVRVUkVfQ09VTlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+Uk9CT1RJQ19NSURETEVXQVJFX0ZFQVRVUkVfQ09VTlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlJvYm90aWMgTWlkZGxld2FyZTwvZW0+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19NSURETEVXQVJFX0ZFQVRVUkVfQ09VTlQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUk9CT1RJQ19TSU1VTEFUT1IiPjwhLS0gLS0+PC9BPjxIMz4KK1JPQk9USUNfU0lNVUxBVE9SPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlJPQk9USUNfU0lNVUxBVE9SPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU2ltdWxhdG9ySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5Sb2JvdGljIFNpbXVsYXRvcjwvZW0+PC9DT0RFPjwvQT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTaW11bGF0b3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+Um9ib3RpY1NpbXVsYXRvckltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRSb2JvdGljU2ltdWxhdG9yKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRSb2JvdGljU2ltdWxhdG9yKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19TSU1VTEFUT1IiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUk9CT1RJQ19TSU1VTEFUT1JfX0JBU0VfQ0xBU1MiPjwhLS0gLS0+PC9BPjxIMz4KK1JPQk9USUNfU0lNVUxBVE9SX19CQVNFX0NMQVNTPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPlJPQk9USUNfU0lNVUxBVE9SX19CQVNFX0NMQVNTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlJPQk9USUNfU0lNVUxBVE9SX19CQVNFX0NMQVNTIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlJPQk9USUNfU0lNVUxBVE9SX19CQVNFX05PREUiPjwhLS0gLS0+PC9BPjxIMz4KK1JPQk9USUNfU0lNVUxBVE9SX19CQVNFX05PREU8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+Uk9CT1RJQ19TSU1VTEFUT1JfX0JBU0VfTk9ERTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBOb2RlPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlJPQk9USUNfU0lNVUxBVE9SX19CQVNFX05PREUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUk9CT1RJQ19TSU1VTEFUT1JfRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PEgzPgorUk9CT1RJQ19TSU1VTEFUT1JfRkVBVFVSRV9DT1VOVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5ST0JPVElDX1NJTVVMQVRPUl9GRUFUVVJFX0NPVU5UPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5Sb2JvdGljIFNpbXVsYXRvcjwvZW0+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19TSU1VTEFUT1JfRkVBVFVSRV9DT1VOVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJDWUNBQl9USyI+PCEtLSAtLT48L0E+PEgzPgorQ1lDQUJfVEs8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+Q1lDQUJfVEs8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPkN5Y2FiIFRLPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ3ljYWJUS0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Q09ERT5DeWNhYlRLSW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEN5Y2FiVEsoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldEN5Y2FiVEsoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5DWUNBQl9USyI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJDWUNBQl9US19fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PEgzPgorQ1lDQUJfVEtfX0JBU0VfQ0xBU1M8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+Q1lDQUJfVEtfX0JBU0VfQ0xBU1M8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQ1lDQUJfVEtfX0JBU0VfQ0xBU1MiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQ1lDQUJfVEtfX0JBU0VfTk9ERSI+PCEtLSAtLT48L0E+PEgzPgorQ1lDQUJfVEtfX0JBU0VfTk9ERTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5DWUNBQl9US19fQkFTRV9OT0RFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIE5vZGU8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQ1lDQUJfVEtfX0JBU0VfTk9ERSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJDWUNBQl9US19fVVNFX1JFQUxfVElNRSI+PCEtLSAtLT48L0E+PEgzPgorQ1lDQUJfVEtfX1VTRV9SRUFMX1RJTUU8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+Q1lDQUJfVEtfX1VTRV9SRUFMX1RJTUU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlVzZSBSZWFsIFRpbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQ1lDQUJfVEtfX1VTRV9SRUFMX1RJTUUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQ1lDQUJfVEtfX1RJTUVfU1RFUCI+PCEtLSAtLT48L0E+PEgzPgorQ1lDQUJfVEtfX1RJTUVfU1RFUDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5DWUNBQl9US19fVElNRV9TVEVQPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5UaW1lIFN0ZXA8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQ1lDQUJfVEtfX1RJTUVfU1RFUCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJDWUNBQl9US19fVElNRV9GQUNUT1IiPjwhLS0gLS0+PC9BPjxIMz4KK0NZQ0FCX1RLX19USU1FX0ZBQ1RPUjwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5DWUNBQl9US19fVElNRV9GQUNUT1I8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlRpbWUgRmFjdG9yPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkNZQ0FCX1RLX19USU1FX0ZBQ1RPUiI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJDWUNBQl9US19GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48SDM+CitDWUNBQl9US19GRUFUVVJFX0NPVU5UPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPkNZQ0FCX1RLX0ZFQVRVUkVfQ09VTlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkN5Y2FiIFRLPC9lbT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5DWUNBQl9US19GRUFUVVJFX0NPVU5UIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkJMRU5ERVJfTU9SU0UiPjwhLS0gLS0+PC9BPjxIMz4KK0JMRU5ERVJfTU9SU0U8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+QkxFTkRFUl9NT1JTRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPjxlbT5CbGVuZGVyIE1vcnNlPC9lbT48L0NPREU+PC9BPicgY2xhc3MuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxDT0RFPkJsZW5kZXJNb3JzZUltcGw8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRCbGVuZGVyTW9yc2UoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldEJsZW5kZXJNb3JzZSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkJMRU5ERVJfTU9SU0UiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQkxFTkRFUl9NT1JTRV9fQkFTRV9DTEFTUyI+PCEtLSAtLT48L0E+PEgzPgorQkxFTkRFUl9NT1JTRV9fQkFTRV9DTEFTUzwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5CTEVOREVSX01PUlNFX19CQVNFX0NMQVNTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLkJMRU5ERVJfTU9SU0VfX0JBU0VfQ0xBU1MiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQkxFTkRFUl9NT1JTRV9fQkFTRV9OT0RFIj48IS0tIC0tPjwvQT48SDM+CitCTEVOREVSX01PUlNFX19CQVNFX05PREU8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+QkxFTkRFUl9NT1JTRV9fQkFTRV9OT0RFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIE5vZGU8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQkxFTkRFUl9NT1JTRV9fQkFTRV9OT0RFIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkJMRU5ERVJfTU9SU0VfX0RFQlVHX01PREUiPjwhLS0gLS0+PC9BPjxIMz4KK0JMRU5ERVJfTU9SU0VfX0RFQlVHX01PREU8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+QkxFTkRFUl9NT1JTRV9fREVCVUdfTU9ERTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RGVidWcgTW9kZTwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5CTEVOREVSX01PUlNFX19ERUJVR19NT0RFIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkJMRU5ERVJfTU9SU0VfX0RFQlVHX0RJU1BMQVkiPjwhLS0gLS0+PC9BPjxIMz4KK0JMRU5ERVJfTU9SU0VfX0RFQlVHX0RJU1BMQVk8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+QkxFTkRFUl9NT1JTRV9fREVCVUdfRElTUExBWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RGVidWcgRGlzcGxheTwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5CTEVOREVSX01PUlNFX19ERUJVR19ESVNQTEFZIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkJMRU5ERVJfTU9SU0VfX0dSQVZJVFkiPjwhLS0gLS0+PC9BPjxIMz4KK0JMRU5ERVJfTU9SU0VfX0dSQVZJVFk8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+QkxFTkRFUl9NT1JTRV9fR1JBVklUWTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+R3Jhdml0eTwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5CTEVOREVSX01PUlNFX19HUkFWSVRZIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkJMRU5ERVJfTU9SU0VfX1ZJRVdQT1JUX1NIQURFIj48IS0tIC0tPjwvQT48SDM+CitCTEVOREVSX01PUlNFX19WSUVXUE9SVF9TSEFERTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5CTEVOREVSX01PUlNFX19WSUVXUE9SVF9TSEFERTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+dmlld3BvcnQgc2hhZGU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuQkxFTkRFUl9NT1JTRV9fVklFV1BPUlRfU0hBREUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQkxFTkRFUl9NT1JTRV9GRUFUVVJFX0NPVU5UIj48IS0tIC0tPjwvQT48SDM+CitCTEVOREVSX01PUlNFX0ZFQVRVUkVfQ09VTlQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+QkxFTkRFUl9NT1JTRV9GRUFUVVJFX0NPVU5UPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5CbGVuZGVyIE1vcnNlPC9lbT4nIGNsYXNzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5CTEVOREVSX01PUlNFX0ZFQVRVUkVfQ09VTlQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iT05fUE9SVCI+PCEtLSAtLT48L0E+PEgzPgorT05fUE9SVDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5PTl9QT1JUPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PblBvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+PGVtPk9uIFBvcnQ8L2VtPjwvQ09ERT48L0E+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PblBvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PENPREU+T25Qb3J0SW1wbDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldE9uUG9ydCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0T25Qb3J0KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuT05fUE9SVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJPTl9QT1JUX19QT1JUIj48IS0tIC0tPjwvQT48SDM+CitPTl9QT1JUX19QT1JUPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPk9OX1BPUlRfX1BPUlQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlBvcnQ8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuT05fUE9SVF9fUE9SVCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJPTl9QT1JUX19CQVNFX1BBUkFNRVRFUiI+PCEtLSAtLT48L0E+PEgzPgorT05fUE9SVF9fQkFTRV9QQVJBTUVURVI8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+T05fUE9SVF9fQkFTRV9QQVJBTUVURVI8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgUGFyYW1ldGVyPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLk9OX1BPUlRfX0JBU0VfUEFSQU1FVEVSIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9Ik9OX1BPUlRfRkVBVFVSRV9DT1VOVCI+PCEtLSAtLT48L0E+PEgzPgorT05fUE9SVF9GRUFUVVJFX0NPVU5UPC9IMz4KKzxQUkU+CitzdGF0aWMgZmluYWwgaW50IDxCPk9OX1BPUlRfRkVBVFVSRV9DT1VOVDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+T24gUG9ydDwvZW0+JyBjbGFzcy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuT05fUE9SVF9GRUFUVVJFX0NPVU5UIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlJPQk9UX0tJTkQiPjwhLS0gLS0+PC9BPjxIMz4KK1JPQk9UX0tJTkQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+Uk9CT1RfS0lORDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Sb2JvdCBLaW5kPC9lbT48L0NPREU+PC9BPicgZW51bS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+Um9ib3RLaW5kPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Um9ib3RLaW5kKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRSb2JvdEtpbmQoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5ST0JPVF9LSU5EIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlVHVl9LSU5EIj48IS0tIC0tPjwvQT48SDM+CitVR1ZfS0lORDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5VR1ZfS0lORDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+VUdWIEtpbmQ8L2VtPjwvQ09ERT48L0E+JyBlbnVtLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+VUdWS2luZDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFVHVktpbmQoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldFVHVktpbmQoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5VR1ZfS0lORCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJTWU5DSFJPTklaQVRJT05fS0lORCI+PCEtLSAtLT48L0E+PEgzPgorU1lOQ0hST05JWkFUSU9OX0tJTkQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+U1lOQ0hST05JWkFUSU9OX0tJTkQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlN5bmNocm9uaXphdGlvbiBLaW5kPC9lbT48L0NPREU+PC9BPicgZW51bS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlN5bmNocm9uaXphdGlvbktpbmQ8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRTeW5jaHJvbml6YXRpb25LaW5kKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRTeW5jaHJvbml6YXRpb25LaW5kKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU1lOQ0hST05JWkFUSU9OX0tJTkQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iREFUQV9GTE9XX0RJUkVDVElPTl9LSU5EIj48IS0tIC0tPjwvQT48SDM+CitEQVRBX0ZMT1dfRElSRUNUSU9OX0tJTkQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+REFUQV9GTE9XX0RJUkVDVElPTl9LSU5EPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkRhdGEgRmxvdyBEaXJlY3Rpb24gS2luZDwvZW0+PC9DT0RFPjwvQT4nIGVudW0uCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkRhdGFGbG93RGlyZWN0aW9uS2luZDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldERhdGFGbG93RGlyZWN0aW9uS2luZCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0RGF0YUZsb3dEaXJlY3Rpb25LaW5kKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuREFUQV9GTE9XX0RJUkVDVElPTl9LSU5EIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNFUlZJQ0VfRkxPV19LSU5EIj48IS0tIC0tPjwvQT48SDM+CitTRVJWSUNFX0ZMT1dfS0lORDwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5TRVJWSUNFX0ZMT1dfS0lORDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TZXJ2aWNlIEZsb3cgS2luZDwvZW0+PC9DT0RFPjwvQT4nIGVudW0uCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlNlcnZpY2VGbG93S2luZDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFNlcnZpY2VGbG93S2luZCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZUltcGwuZ2V0U2VydmljZUZsb3dLaW5kKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuU0VSVklDRV9GTE9XX0tJTkQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVU5JVF9LSU5EIj48IS0tIC0tPjwvQT48SDM+CitVTklUX0tJTkQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+VU5JVF9LSU5EPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+VW5pdCBLaW5kPC9lbT48L0NPREU+PC9BPicgZW51bS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5Vbml0S2luZDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFVuaXRLaW5kKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRVbml0S2luZCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlVOSVRfS0lORCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJST0JPVElDX01JRERMRVdBUkVfS0lORCI+PCEtLSAtLT48L0E+PEgzPgorUk9CT1RJQ19NSURETEVXQVJFX0tJTkQ8L0gzPgorPFBSRT4KK3N0YXRpYyBmaW5hbCBpbnQgPEI+Uk9CT1RJQ19NSURETEVXQVJFX0tJTkQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Um9ib3RpYyBNaWRkbGV3YXJlIEtpbmQ8L2VtPjwvQ09ERT48L0E+JyBlbnVtLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRSb2JvdGljTWlkZGxld2FyZUtpbmQoKSI+PENPREU+Um9ib3RNTFBhY2thZ2VJbXBsLmdldFJvYm90aWNNaWRkbGV3YXJlS2luZCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlJPQk9USUNfTUlERExFV0FSRV9LSU5EIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlNIQURFIj48IS0tIC0tPjwvQT48SDM+CitTSEFERTwvSDM+Cis8UFJFPgorc3RhdGljIGZpbmFsIGludCA8Qj5TSEFERTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlNoYWRlPC9lbT48L0NPREU+PC9BPicgZW51bS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5TaGFkZTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFNoYWRlKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlSW1wbC5nZXRTaGFkZSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlLlNIQURFIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0VHJhbnNpdGlvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRUcmFuc2l0aW9uPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldFRyYW5zaXRpb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+VHJhbnNpdGlvbjwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlRyYW5zaXRpb248L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlRyYW5zaXRpb248L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0VHJhbnNpdGlvbl9CYXNlX1RyYW5zaXRpb24oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0VHJhbnNpdGlvbl9CYXNlX1RyYW5zaXRpb248L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlIDxCPmdldFRyYW5zaXRpb25fQmFzZV9UcmFuc2l0aW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwjZ2V0QmFzZV9UcmFuc2l0aW9uKCkiPjxDT0RFPjxlbT5CYXNlIFRyYW5zaXRpb248L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPGVtPkJhc2UgVHJhbnNpdGlvbjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sI2dldEJhc2VfVHJhbnNpdGlvbigpIj48Q09ERT5UcmFuc2l0aW9uLmdldEJhc2VfVHJhbnNpdGlvbigpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0VHJhbnNpdGlvbigpIj48Q09ERT5nZXRUcmFuc2l0aW9uKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0VHJhbnNpdGlvbl9HdWFyZCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRUcmFuc2l0aW9uX0d1YXJkPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZSA8Qj5nZXRUcmFuc2l0aW9uX0d1YXJkPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwjZ2V0R3VhcmQoKSI+PENPREU+PGVtPkd1YXJkPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxlbT5HdWFyZDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sI2dldEd1YXJkKCkiPjxDT0RFPlRyYW5zaXRpb24uZ2V0R3VhcmQoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFRyYW5zaXRpb24oKSI+PENPREU+Z2V0VHJhbnNpdGlvbigpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFRyYW5zaXRpb25fRWZmZWN0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFRyYW5zaXRpb25fRWZmZWN0PC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZSA8Qj5nZXRUcmFuc2l0aW9uX0VmZmVjdDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sI2dldEVmZmVjdCgpIj48Q09ERT48ZW0+RWZmZWN0PC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxlbT5FZmZlY3Q8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCNnZXRFZmZlY3QoKSI+PENPREU+VHJhbnNpdGlvbi5nZXRFZmZlY3QoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFRyYW5zaXRpb24oKSI+PENPREU+Z2V0VHJhbnNpdGlvbigpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEFsZ29yaXRobSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRBbGdvcml0aG08L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0QWxnb3JpdGhtPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+QWxnb3JpdGhtPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+QWxnb3JpdGhtPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkFsZ29yaXRobTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRBbGdvcml0aG1fQmFzZV9PcGVyYXRpb24oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QWxnb3JpdGhtX0Jhc2VfT3BlcmF0aW9uPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZSA8Qj5nZXRBbGdvcml0aG1fQmFzZV9PcGVyYXRpb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI2dldEJhc2VfT3BlcmF0aW9uKCkiPjxDT0RFPjxlbT5CYXNlIE9wZXJhdGlvbjwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8ZW0+QmFzZSBPcGVyYXRpb248L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI2dldEJhc2VfT3BlcmF0aW9uKCkiPjxDT0RFPkFsZ29yaXRobS5nZXRCYXNlX09wZXJhdGlvbigpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QWxnb3JpdGhtKCkiPjxDT0RFPmdldEFsZ29yaXRobSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEFsZ29yaXRobV9Jc0V4dGVybmFsKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEFsZ29yaXRobV9Jc0V4dGVybmFsPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRBbGdvcml0aG1fSXNFeHRlcm5hbDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwjaXNJc0V4dGVybmFsKCkiPjxDT0RFPjxlbT5JcyBFeHRlcm5hbDwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+SXMgRXh0ZXJuYWw8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI2lzSXNFeHRlcm5hbCgpIj48Q09ERT5BbGdvcml0aG0uaXNJc0V4dGVybmFsKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBbGdvcml0aG0oKSI+PENPREU+Z2V0QWxnb3JpdGhtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0QWxnb3JpdGhtX0V4dEZ1bmN0aW9uTmFtZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRBbGdvcml0aG1fRXh0RnVuY3Rpb25OYW1lPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRBbGdvcml0aG1fRXh0RnVuY3Rpb25OYW1lPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNnZXRFeHRGdW5jdGlvbk5hbWUoKSI+PENPREU+PGVtPkV4dCBGdW5jdGlvbiBOYW1lPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5FeHQgRnVuY3Rpb24gTmFtZTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwjZ2V0RXh0RnVuY3Rpb25OYW1lKCkiPjxDT0RFPkFsZ29yaXRobS5nZXRFeHRGdW5jdGlvbk5hbWUoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEFsZ29yaXRobSgpIj48Q09ERT5nZXRBbGdvcml0aG0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRBbGdvcml0aG1fUGF0aCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRBbGdvcml0aG1fUGF0aDwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0QWxnb3JpdGhtX1BhdGg8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI2dldFBhdGgoKSI+PENPREU+PGVtPlBhdGg8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlBhdGg8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI2dldFBhdGgoKSI+PENPREU+QWxnb3JpdGhtLmdldFBhdGgoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEFsZ29yaXRobSgpIj48Q09ERT5nZXRBbGdvcml0aG0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRSb2JvdCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRSb2JvdDwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRSb2JvdDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Um9ib3Q8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5Sb2JvdDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlJvYm90PC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFJvYm90X0tpbmQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Um9ib3RfS2luZDwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0Um9ib3RfS2luZDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNnZXRLaW5kKCkiPjxDT0RFPjxlbT5LaW5kPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5LaW5kPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI2dldEtpbmQoKSI+PENPREU+Um9ib3QuZ2V0S2luZCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Um9ib3QoKSI+PENPREU+Z2V0Um9ib3QoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRSb2JvdF9NYXNzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFJvYm90X01hc3M8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldFJvYm90X01hc3M8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjZ2V0TWFzcygpIj48Q09ERT48ZW0+TWFzczwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+TWFzczwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNnZXRNYXNzKCkiPjxDT0RFPlJvYm90LmdldE1hc3MoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90KCkiPjxDT0RFPmdldFJvYm90KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Um9ib3RfV2lkdGgoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Um9ib3RfV2lkdGg8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldFJvYm90X1dpZHRoPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI2dldFdpZHRoKCkiPjxDT0RFPjxlbT5XaWR0aDwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+V2lkdGg8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjZ2V0V2lkdGgoKSI+PENPREU+Um9ib3QuZ2V0V2lkdGgoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90KCkiPjxDT0RFPmdldFJvYm90KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Um9ib3RfVWd2S2luZCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRSb2JvdF9VZ3ZLaW5kPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRSb2JvdF9VZ3ZLaW5kPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI2dldFVndktpbmQoKSI+PENPREU+PGVtPlVndiBLaW5kPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5VZ3YgS2luZDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNnZXRVZ3ZLaW5kKCkiPjxDT0RFPlJvYm90LmdldFVndktpbmQoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90KCkiPjxDT0RFPmdldFJvYm90KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFN5c3RlbTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRTeXN0ZW08L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TeXN0ZW08L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5TeXN0ZW08L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+U3lzdGVtPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFN5c3RlbV9CYXNlX0NsYXNzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFN5c3RlbV9CYXNlX0NsYXNzPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZSA8Qj5nZXRTeXN0ZW1fQmFzZV9DbGFzczwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj48Q09ERT48ZW0+QmFzZSBDbGFzczwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8ZW0+QmFzZSBDbGFzczwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj48Q09ERT5TeXN0ZW0uZ2V0QmFzZV9DbGFzcygpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U3lzdGVtKCkiPjxDT0RFPmdldFN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldERhdGFGbG93UG9ydCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXREYXRhRmxvd1BvcnQ8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0RGF0YUZsb3dQb3J0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+RGF0YSBGbG93IFBvcnQ8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5EYXRhIEZsb3cgUG9ydDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5EYXRhRmxvd1BvcnQ8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RGF0YUZsb3dQb3J0X0RpcmVjdGlvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXREYXRhRmxvd1BvcnRfRGlyZWN0aW9uPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXREYXRhRmxvd1BvcnRfRGlyZWN0aW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCNnZXREaXJlY3Rpb24oKSI+PENPREU+PGVtPkRpcmVjdGlvbjwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+RGlyZWN0aW9uPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCNnZXREaXJlY3Rpb24oKSI+PENPREU+RGF0YUZsb3dQb3J0LmdldERpcmVjdGlvbigpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0RGF0YUZsb3dQb3J0KCkiPjxDT0RFPmdldERhdGFGbG93UG9ydCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldERhdGFGbG93UG9ydF9CdWZmZXJTaXplKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldERhdGFGbG93UG9ydF9CdWZmZXJTaXplPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXREYXRhRmxvd1BvcnRfQnVmZmVyU2l6ZTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwjZ2V0QnVmZmVyU2l6ZSgpIj48Q09ERT48ZW0+QnVmZmVyIFNpemU8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkJ1ZmZlciBTaXplPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCNnZXRCdWZmZXJTaXplKCkiPjxDT0RFPkRhdGFGbG93UG9ydC5nZXRCdWZmZXJTaXplKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXREYXRhRmxvd1BvcnQoKSI+PENPREU+Z2V0RGF0YUZsb3dQb3J0KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UG9ydCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRQb3J0PC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldFBvcnQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+UG9ydDwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlBvcnQ8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlBvcnQ8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UG9ydF9CYXNlX1BvcnQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UG9ydF9CYXNlX1BvcnQ8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlIDxCPmdldFBvcnRfQmFzZV9Qb3J0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwjZ2V0QmFzZV9Qb3J0KCkiPjxDT0RFPjxlbT5CYXNlIFBvcnQ8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPGVtPkJhc2UgUG9ydDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sI2dldEJhc2VfUG9ydCgpIj48Q09ERT5Qb3J0LmdldEJhc2VfUG9ydCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UG9ydCgpIj48Q09ERT5nZXRQb3J0KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UG9ydF9TeW5jaHJvbml6YXRpb25Qb2xpY3koKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UG9ydF9TeW5jaHJvbml6YXRpb25Qb2xpY3k8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldFBvcnRfU3luY2hyb25pemF0aW9uUG9saWN5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwjZ2V0U3luY2hyb25pemF0aW9uUG9saWN5KCkiPjxDT0RFPjxlbT5TeW5jaHJvbml6YXRpb24gUG9saWN5PC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5TeW5jaHJvbml6YXRpb24gUG9saWN5PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwjZ2V0U3luY2hyb25pemF0aW9uUG9saWN5KCkiPjxDT0RFPlBvcnQuZ2V0U3luY2hyb25pemF0aW9uUG9saWN5KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQb3J0KCkiPjxDT0RFPmdldFBvcnQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRFbnZpcm9ubWVudCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRFbnZpcm9ubWVudDwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRFbnZpcm9ubWVudDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Vudmlyb25tZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+RW52aXJvbm1lbnQ8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5FbnZpcm9ubWVudDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkVudmlyb25tZW50PC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFN1cmZhY2UoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U3VyZmFjZTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRTdXJmYWNlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlN1cmZhY2U8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5TdXJmYWNlPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5TdXJmYWNlPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEJ1aWxkaW5nKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEJ1aWxkaW5nPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldEJ1aWxkaW5nPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQnVpbGRpbmcuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5CdWlsZGluZzwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkJ1aWxkaW5nPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CdWlsZGluZy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+QnVpbGRpbmc8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0QWdlbnQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QWdlbnQ8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0QWdlbnQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkFnZW50PC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+QWdlbnQ8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5BZ2VudDwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRBZ2VudF9Nb3Zlc092ZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QWdlbnRfTW92ZXNPdmVyPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZSA8Qj5nZXRBZ2VudF9Nb3Zlc092ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSBsaXN0ICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCNnZXRNb3Zlc092ZXIoKSI+PENPREU+PGVtPk1vdmVzIE92ZXI8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSBsaXN0ICc8ZW0+TW92ZXMgT3ZlcjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCNnZXRNb3Zlc092ZXIoKSI+PENPREU+QWdlbnQuZ2V0TW92ZXNPdmVyKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBZ2VudCgpIj48Q09ERT5nZXRBZ2VudCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBsYW5ldCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRQbGFuZXQ8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0UGxhbmV0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhbmV0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+UGxhbmV0PC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+UGxhbmV0PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGFuZXQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlBsYW5ldDwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRMYW5kU3VyZmFjZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRMYW5kU3VyZmFjZTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRMYW5kU3VyZmFjZTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+TGFuZCBTdXJmYWNlPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+TGFuZCBTdXJmYWNlPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+TGFuZFN1cmZhY2U8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0R3JvdW5kKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEdyb3VuZDwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRHcm91bmQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Hcm91bmQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Hcm91bmQ8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5Hcm91bmQ8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+R3JvdW5kPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEZsb29yKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEZsb29yPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldEZsb29yPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5GbG9vcjwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkZsb29yPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+Rmxvb3I8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V2F0ZXJTdXJmYWNlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFdhdGVyU3VyZmFjZTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRXYXRlclN1cmZhY2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XYXRlclN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5XYXRlciBTdXJmYWNlPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+V2F0ZXIgU3VyZmFjZTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5XYXRlclN1cmZhY2U8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0SHVtYW4oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0SHVtYW48L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0SHVtYW48L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkh1bWFuPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+SHVtYW48L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5IdW1hbjwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRQZWRlc3RyaWFuKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBlZGVzdHJpYW48L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0UGVkZXN0cmlhbjwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5QZWRlc3RyaWFuPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+UGVkZXN0cmlhbjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+UGVkZXN0cmlhbjwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTdGFpcnMoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U3RhaXJzPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldFN0YWlyczwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlN0YWlyczwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlN0YWlyczwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5TdGFpcnM8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UGxhdGZvcm0oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UGxhdGZvcm08L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0UGxhdGZvcm08L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlBsYXRmb3JtPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+UGxhdGZvcm08L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5QbGF0Zm9ybTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRQbGF0Zm9ybV9CYXNlX05vZGUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UGxhdGZvcm1fQmFzZV9Ob2RlPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZSA8Qj5nZXRQbGF0Zm9ybV9CYXNlX05vZGU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwjZ2V0QmFzZV9Ob2RlKCkiPjxDT0RFPjxlbT5CYXNlIE5vZGU8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPGVtPkJhc2UgTm9kZTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCNnZXRCYXNlX05vZGUoKSI+PENPREU+UGxhdGZvcm0uZ2V0QmFzZV9Ob2RlKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQbGF0Zm9ybSgpIj48Q09ERT5nZXRQbGF0Zm9ybSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFJvYm90aWNNaWRkbGV3YXJlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFJvYm90aWNNaWRkbGV3YXJlPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldFJvYm90aWNNaWRkbGV3YXJlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Sb2JvdGljIE1pZGRsZXdhcmU8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5Sb2JvdGljIE1pZGRsZXdhcmU8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5Sb2JvdGljTWlkZGxld2FyZTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRSb2JvdGljTWlkZGxld2FyZV9LaW5kKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFJvYm90aWNNaWRkbGV3YXJlX0tpbmQ8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldFJvYm90aWNNaWRkbGV3YXJlX0tpbmQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwjZ2V0S2luZCgpIj48Q09ERT48ZW0+S2luZDwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+S2luZDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCNnZXRLaW5kKCkiPjxDT0RFPlJvYm90aWNNaWRkbGV3YXJlLmdldEtpbmQoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90aWNNaWRkbGV3YXJlKCkiPjxDT0RFPmdldFJvYm90aWNNaWRkbGV3YXJlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Um9ib3RpY1NpbXVsYXRvcigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRSb2JvdGljU2ltdWxhdG9yPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldFJvYm90aWNTaW11bGF0b3I8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Um9ib3RpYyBTaW11bGF0b3I8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5Sb2JvdGljIFNpbXVsYXRvcjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1NpbXVsYXRvci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+Um9ib3RpY1NpbXVsYXRvcjwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRDeWNhYlRLKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEN5Y2FiVEs8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0Q3ljYWJUSzwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5DeWNhYiBUSzwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkN5Y2FiIFRLPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5DeWNhYlRLPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEN5Y2FiVEtfVXNlUmVhbFRpbWUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Q3ljYWJUS19Vc2VSZWFsVGltZTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0Q3ljYWJUS19Vc2VSZWFsVGltZTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sI2lzVXNlUmVhbFRpbWUoKSI+PENPREU+PGVtPlVzZSBSZWFsIFRpbWU8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlVzZSBSZWFsIFRpbWU8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCNpc1VzZVJlYWxUaW1lKCkiPjxDT0RFPkN5Y2FiVEsuaXNVc2VSZWFsVGltZSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q3ljYWJUSygpIj48Q09ERT5nZXRDeWNhYlRLKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Q3ljYWJUS19UaW1lU3RlcCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRDeWNhYlRLX1RpbWVTdGVwPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRDeWNhYlRLX1RpbWVTdGVwPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwjZ2V0VGltZVN0ZXAoKSI+PENPREU+PGVtPlRpbWUgU3RlcDwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+VGltZSBTdGVwPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwjZ2V0VGltZVN0ZXAoKSI+PENPREU+Q3ljYWJUSy5nZXRUaW1lU3RlcCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q3ljYWJUSygpIj48Q09ERT5nZXRDeWNhYlRLKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Q3ljYWJUS19UaW1lRmFjdG9yKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEN5Y2FiVEtfVGltZUZhY3RvcjwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0Q3ljYWJUS19UaW1lRmFjdG9yPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwjZ2V0VGltZUZhY3RvcigpIj48Q09ERT48ZW0+VGltZSBGYWN0b3I8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlRpbWUgRmFjdG9yPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwjZ2V0VGltZUZhY3RvcigpIj48Q09ERT5DeWNhYlRLLmdldFRpbWVGYWN0b3IoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEN5Y2FiVEsoKSI+PENPREU+Z2V0Q3ljYWJUSygpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEJsZW5kZXJNb3JzZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRCbGVuZGVyTW9yc2U8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0QmxlbmRlck1vcnNlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+QmxlbmRlciBNb3JzZTwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkJsZW5kZXIgTW9yc2U8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+QmxlbmRlck1vcnNlPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEJsZW5kZXJNb3JzZV9EZWJ1Z01vZGUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QmxlbmRlck1vcnNlX0RlYnVnTW9kZTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0QmxlbmRlck1vcnNlX0RlYnVnTW9kZTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjaXNEZWJ1Z01vZGUoKSI+PENPREU+PGVtPkRlYnVnIE1vZGU8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkRlYnVnIE1vZGU8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sI2lzRGVidWdNb2RlKCkiPjxDT0RFPkJsZW5kZXJNb3JzZS5pc0RlYnVnTW9kZSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QmxlbmRlck1vcnNlKCkiPjxDT0RFPmdldEJsZW5kZXJNb3JzZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEJsZW5kZXJNb3JzZV9EZWJ1Z0Rpc3BsYXkoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QmxlbmRlck1vcnNlX0RlYnVnRGlzcGxheTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0QmxlbmRlck1vcnNlX0RlYnVnRGlzcGxheTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjaXNEZWJ1Z0Rpc3BsYXkoKSI+PENPREU+PGVtPkRlYnVnIERpc3BsYXk8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkRlYnVnIERpc3BsYXk8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sI2lzRGVidWdEaXNwbGF5KCkiPjxDT0RFPkJsZW5kZXJNb3JzZS5pc0RlYnVnRGlzcGxheSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QmxlbmRlck1vcnNlKCkiPjxDT0RFPmdldEJsZW5kZXJNb3JzZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEJsZW5kZXJNb3JzZV9HcmF2aXR5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEJsZW5kZXJNb3JzZV9HcmF2aXR5PC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRCbGVuZGVyTW9yc2VfR3Jhdml0eTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjZ2V0R3Jhdml0eSgpIj48Q09ERT48ZW0+R3Jhdml0eTwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+R3Jhdml0eTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjZ2V0R3Jhdml0eSgpIj48Q09ERT5CbGVuZGVyTW9yc2UuZ2V0R3Jhdml0eSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QmxlbmRlck1vcnNlKCkiPjxDT0RFPmdldEJsZW5kZXJNb3JzZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEJsZW5kZXJNb3JzZV9fdmlld3BvcnRfc2hhZGUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QmxlbmRlck1vcnNlX192aWV3cG9ydF9zaGFkZTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0QmxlbmRlck1vcnNlX192aWV3cG9ydF9zaGFkZTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjZ2V0X3ZpZXdwb3J0X3NoYWRlKCkiPjxDT0RFPjxlbT52aWV3cG9ydCBzaGFkZTwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+dmlld3BvcnQgc2hhZGU8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sI2dldF92aWV3cG9ydF9zaGFkZSgpIj48Q09ERT5CbGVuZGVyTW9yc2UuZ2V0X3ZpZXdwb3J0X3NoYWRlKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRCbGVuZGVyTW9yc2UoKSI+PENPREU+Z2V0QmxlbmRlck1vcnNlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0T25Qb3J0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldE9uUG9ydDwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRPblBvcnQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5PbiBQb3J0PC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+T24gUG9ydDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5PblBvcnQ8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0T25Qb3J0X1BvcnQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0T25Qb3J0X1BvcnQ8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlIDxCPmdldE9uUG9ydF9Qb3J0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCNnZXRQb3J0KCkiPjxDT0RFPjxlbT5Qb3J0PC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxlbT5Qb3J0PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCNnZXRQb3J0KCkiPjxDT0RFPk9uUG9ydC5nZXRQb3J0KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRPblBvcnQoKSI+PENPREU+Z2V0T25Qb3J0KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0T25Qb3J0X0Jhc2VfUGFyYW1ldGVyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldE9uUG9ydF9CYXNlX1BhcmFtZXRlcjwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2UgPEI+Z2V0T25Qb3J0X0Jhc2VfUGFyYW1ldGVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCNnZXRCYXNlX1BhcmFtZXRlcigpIj48Q09ERT48ZW0+QmFzZSBQYXJhbWV0ZXI8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPGVtPkJhc2UgUGFyYW1ldGVyPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCNnZXRCYXNlX1BhcmFtZXRlcigpIj48Q09ERT5PblBvcnQuZ2V0QmFzZV9QYXJhbWV0ZXIoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldE9uUG9ydCgpIj48Q09ERT5nZXRPblBvcnQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTZXJ2aWNlUG9ydCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTZXJ2aWNlUG9ydDwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRTZXJ2aWNlUG9ydDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+U2VydmljZSBQb3J0PC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+U2VydmljZSBQb3J0PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+U2VydmljZVBvcnQ8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U2VydmljZVBvcnRfS2luZCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTZXJ2aWNlUG9ydF9LaW5kPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRTZXJ2aWNlUG9ydF9LaW5kPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sI2dldEtpbmQoKSI+PENPREU+PGVtPktpbmQ8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPktpbmQ8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwjZ2V0S2luZCgpIj48Q09ERT5TZXJ2aWNlUG9ydC5nZXRLaW5kKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTZXJ2aWNlUG9ydCgpIj48Q09ERT5nZXRTZXJ2aWNlUG9ydCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEFjdHVhdG9yU3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEFjdHVhdG9yU3lzdGVtPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldEFjdHVhdG9yU3lzdGVtPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWN0dWF0b3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5BY3R1YXRvciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5BY3R1YXRvciBTeXN0ZW08L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdG9yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5BY3R1YXRvclN5c3RlbTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRSb2JvdGljU3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFJvYm90aWNTeXN0ZW08L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0Um9ib3RpY1N5c3RlbTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Sb2JvdGljIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlJvYm90aWMgU3lzdGVtPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5Sb2JvdGljU3lzdGVtPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFJvYm90aWNTeXN0ZW1fTG9jYWxQb3NpdGlvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRSb2JvdGljU3lzdGVtX0xvY2FsUG9zaXRpb248L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldFJvYm90aWNTeXN0ZW1fTG9jYWxQb3NpdGlvbjwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsUG9zaXRpb24oKSI+PENPREU+PGVtPkxvY2FsIFBvc2l0aW9uPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5Mb2NhbCBQb3NpdGlvbjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsUG9zaXRpb24oKSI+PENPREU+Um9ib3RpY1N5c3RlbS5nZXRMb2NhbFBvc2l0aW9uKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdGljU3lzdGVtKCkiPjxDT0RFPmdldFJvYm90aWNTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRSb2JvdGljU3lzdGVtX0xvY2FsT3JpZW50YXRpb24oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Um9ib3RpY1N5c3RlbV9Mb2NhbE9yaWVudGF0aW9uPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRSb2JvdGljU3lzdGVtX0xvY2FsT3JpZW50YXRpb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbE9yaWVudGF0aW9uKCkiPjxDT0RFPjxlbT5Mb2NhbCBPcmllbnRhdGlvbjwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+TG9jYWwgT3JpZW50YXRpb248L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbE9yaWVudGF0aW9uKCkiPjxDT0RFPlJvYm90aWNTeXN0ZW0uZ2V0TG9jYWxPcmllbnRhdGlvbigpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Um9ib3RpY1N5c3RlbSgpIj48Q09ERT5nZXRSb2JvdGljU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U2Vuc29yU3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFNlbnNvclN5c3RlbTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRTZW5zb3JTeXN0ZW08L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+U2Vuc29yIFN5c3RlbTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5TZW5zb3JTeXN0ZW08L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U2Vuc29yU3lzdGVtX0ZyZXF1ZW5jeSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTZW5zb3JTeXN0ZW1fRnJlcXVlbmN5PC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRTZW5zb3JTeXN0ZW1fRnJlcXVlbmN5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNnZXRGcmVxdWVuY3koKSI+PENPREU+PGVtPkZyZXF1ZW5jeTwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+RnJlcXVlbmN5PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNnZXRGcmVxdWVuY3koKSI+PENPREU+U2Vuc29yU3lzdGVtLmdldEZyZXF1ZW5jeSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U2Vuc29yU3lzdGVtKCkiPjxDT0RFPmdldFNlbnNvclN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFNlbnNvclN5c3RlbV9JZGVudGlmaWVyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFNlbnNvclN5c3RlbV9JZGVudGlmaWVyPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRTZW5zb3JTeXN0ZW1fSWRlbnRpZmllcjwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjZ2V0SWRlbnRpZmllcigpIj48Q09ERT48ZW0+SWRlbnRpZmllcjwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+SWRlbnRpZmllcjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjZ2V0SWRlbnRpZmllcigpIj48Q09ERT5TZW5zb3JTeXN0ZW0uZ2V0SWRlbnRpZmllcigpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U2Vuc29yU3lzdGVtKCkiPjxDT0RFPmdldFNlbnNvclN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEhhcmR3YXJlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEhhcmR3YXJlPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldEhhcmR3YXJlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSGFyZHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5IYXJkd2FyZTwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkhhcmR3YXJlPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IYXJkd2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+SGFyZHdhcmU8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U29mdHdhcmUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U29mdHdhcmU8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0U29mdHdhcmU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlNvZnR3YXJlPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+U29mdHdhcmU8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5Tb2Z0d2FyZTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTb2Z0d2FyZV9Jc1BlcmlvZGljKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFNvZnR3YXJlX0lzUGVyaW9kaWM8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldFNvZnR3YXJlX0lzUGVyaW9kaWM8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjaXNJc1BlcmlvZGljKCkiPjxDT0RFPjxlbT5JcyBQZXJpb2RpYzwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+SXMgUGVyaW9kaWM8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjaXNJc1BlcmlvZGljKCkiPjxDT0RFPlNvZnR3YXJlLmlzSXNQZXJpb2RpYygpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U29mdHdhcmUoKSI+PENPREU+Z2V0U29mdHdhcmUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTb2Z0d2FyZV9QZXJpb2QoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U29mdHdhcmVfUGVyaW9kPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRTb2Z0d2FyZV9QZXJpb2Q8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjZ2V0UGVyaW9kKCkiPjxDT0RFPjxlbT5QZXJpb2Q8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlBlcmlvZDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXRQZXJpb2QoKSI+PENPREU+U29mdHdhcmUuZ2V0UGVyaW9kKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTb2Z0d2FyZSgpIj48Q09ERT5nZXRTb2Z0d2FyZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFNvZnR3YXJlX1ByaW9yaXR5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFNvZnR3YXJlX1ByaW9yaXR5PC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRTb2Z0d2FyZV9Qcmlvcml0eTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXRQcmlvcml0eSgpIj48Q09ERT48ZW0+UHJpb3JpdHk8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlByaW9yaXR5PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldFByaW9yaXR5KCkiPjxDT0RFPlNvZnR3YXJlLmdldFByaW9yaXR5KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTb2Z0d2FyZSgpIj48Q09ERT5nZXRTb2Z0d2FyZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFNvZnR3YXJlX0RlYWRsaW5lKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFNvZnR3YXJlX0RlYWRsaW5lPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRTb2Z0d2FyZV9EZWFkbGluZTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXREZWFkbGluZSgpIj48Q09ERT48ZW0+RGVhZGxpbmU8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkRlYWRsaW5lPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldERlYWRsaW5lKCkiPjxDT0RFPlNvZnR3YXJlLmdldERlYWRsaW5lKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTb2Z0d2FyZSgpIj48Q09ERT5nZXRTb2Z0d2FyZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFNvZnR3YXJlX1djZXQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U29mdHdhcmVfV2NldDwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0U29mdHdhcmVfV2NldDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXRXY2V0KCkiPjxDT0RFPjxlbT5XY2V0PC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5XY2V0PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldFdjZXQoKSI+PENPREU+U29mdHdhcmUuZ2V0V2NldCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U29mdHdhcmUoKSI+PENPREU+Z2V0U29mdHdhcmUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRQcmltaXRpdmVEYXRhKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFByaW1pdGl2ZURhdGE8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0UHJpbWl0aXZlRGF0YTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5QcmltaXRpdmUgRGF0YTwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlByaW1pdGl2ZSBEYXRhPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QcmltaXRpdmVEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5QcmltaXRpdmVEYXRhPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFByaW1pdGl2ZURhdGFfQmFzZV9QcmltaXRpdmVUeXBlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFByaW1pdGl2ZURhdGFfQmFzZV9QcmltaXRpdmVUeXBlPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZSA8Qj5nZXRQcmltaXRpdmVEYXRhX0Jhc2VfUHJpbWl0aXZlVHlwZTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sI2dldEJhc2VfUHJpbWl0aXZlVHlwZSgpIj48Q09ERT48ZW0+QmFzZSBQcmltaXRpdmUgVHlwZTwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8ZW0+QmFzZSBQcmltaXRpdmUgVHlwZTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sI2dldEJhc2VfUHJpbWl0aXZlVHlwZSgpIj48Q09ERT5QcmltaXRpdmVEYXRhLmdldEJhc2VfUHJpbWl0aXZlVHlwZSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UHJpbWl0aXZlRGF0YSgpIj48Q09ERT5nZXRQcmltaXRpdmVEYXRhKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UGh5c2ljYWxEYXRhKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBoeXNpY2FsRGF0YTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRQaHlzaWNhbERhdGE8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5QaHlzaWNhbCBEYXRhPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+UGh5c2ljYWwgRGF0YTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5QaHlzaWNhbERhdGE8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UGh5c2ljYWxEYXRhX0Jhc2VfRGF0YVR5cGUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UGh5c2ljYWxEYXRhX0Jhc2VfRGF0YVR5cGU8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlIDxCPmdldFBoeXNpY2FsRGF0YV9CYXNlX0RhdGFUeXBlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCNnZXRCYXNlX0RhdGFUeXBlKCkiPjxDT0RFPjxlbT5CYXNlIERhdGEgVHlwZTwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8ZW0+QmFzZSBEYXRhIFR5cGU8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sI2dldEJhc2VfRGF0YVR5cGUoKSI+PENPREU+UGh5c2ljYWxEYXRhLmdldEJhc2VfRGF0YVR5cGUoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFBoeXNpY2FsRGF0YSgpIj48Q09ERT5nZXRQaHlzaWNhbERhdGEoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRQaHlzaWNhbERhdGFfVW5pdCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRQaHlzaWNhbERhdGFfVW5pdDwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0UGh5c2ljYWxEYXRhX1VuaXQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sI2dldFVuaXQoKSI+PENPREU+PGVtPlVuaXQ8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlVuaXQ8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sI2dldFVuaXQoKSI+PENPREU+UGh5c2ljYWxEYXRhLmdldFVuaXQoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFBoeXNpY2FsRGF0YSgpIj48Q09ERT5nZXRQaHlzaWNhbERhdGEoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRDb21wb3NlZERhdGEoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Q29tcG9zZWREYXRhPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldENvbXBvc2VkRGF0YTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbXBvc2VkRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkNvbXBvc2VkIERhdGE8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5Db21wb3NlZCBEYXRhPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkNvbXBvc2VkRGF0YTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRDb21wb3NlZERhdGFfQmFzZV9EYXRhVHlwZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRDb21wb3NlZERhdGFfQmFzZV9EYXRhVHlwZTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2UgPEI+Z2V0Q29tcG9zZWREYXRhX0Jhc2VfRGF0YVR5cGU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbXBvc2VkRGF0YS5odG1sI2dldEJhc2VfRGF0YVR5cGUoKSI+PENPREU+PGVtPkJhc2UgRGF0YSBUeXBlPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxlbT5CYXNlIERhdGEgVHlwZTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcG9zZWREYXRhLmh0bWwjZ2V0QmFzZV9EYXRhVHlwZSgpIj48Q09ERT5Db21wb3NlZERhdGEuZ2V0QmFzZV9EYXRhVHlwZSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q29tcG9zZWREYXRhKCkiPjxDT0RFPmdldENvbXBvc2VkRGF0YSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldENvbGxlY3Rpb24oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Q29sbGVjdGlvbjwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRDb2xsZWN0aW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkNvbGxlY3Rpb248L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5Db2xsZWN0aW9uPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5Db2xsZWN0aW9uPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldENvbGxlY3Rpb25fQmFzZV9EYXRhVHlwZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRDb2xsZWN0aW9uX0Jhc2VfRGF0YVR5cGU8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlIDxCPmdldENvbGxlY3Rpb25fQmFzZV9EYXRhVHlwZTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sI2dldEJhc2VfRGF0YVR5cGUoKSI+PENPREU+PGVtPkJhc2UgRGF0YSBUeXBlPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxlbT5CYXNlIERhdGEgVHlwZTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sI2dldEJhc2VfRGF0YVR5cGUoKSI+PENPREU+Q29sbGVjdGlvbi5nZXRCYXNlX0RhdGFUeXBlKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDb2xsZWN0aW9uKCkiPjxDT0RFPmdldENvbGxlY3Rpb24oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRFbmdpbmVTeXN0ZW0oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0RW5naW5lU3lzdGVtPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldEVuZ2luZVN5c3RlbTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkVuZ2luZSBTeXN0ZW08L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5FbmdpbmUgU3lzdGVtPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkVuZ2luZVN5c3RlbTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRFbmdpbmVTeXN0ZW1fVmVoaWNsZVRyYWN0aW9uKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEVuZ2luZVN5c3RlbV9WZWhpY2xlVHJhY3Rpb248L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldEVuZ2luZVN5c3RlbV9WZWhpY2xlVHJhY3Rpb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI2dldFZlaGljbGVUcmFjdGlvbigpIj48Q09ERT48ZW0+VmVoaWNsZSBUcmFjdGlvbjwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+VmVoaWNsZSBUcmFjdGlvbjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0VmVoaWNsZVRyYWN0aW9uKCkiPjxDT0RFPkVuZ2luZVN5c3RlbS5nZXRWZWhpY2xlVHJhY3Rpb24oKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEVuZ2luZVN5c3RlbSgpIj48Q09ERT5nZXRFbmdpbmVTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRFbmdpbmVTeXN0ZW1fTWF4RW5naW5lRm9yY2UoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0RW5naW5lU3lzdGVtX01heEVuZ2luZUZvcmNlPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRFbmdpbmVTeXN0ZW1fTWF4RW5naW5lRm9yY2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI2dldE1heEVuZ2luZUZvcmNlKCkiPjxDT0RFPjxlbT5NYXggRW5naW5lIEZvcmNlPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5NYXggRW5naW5lIEZvcmNlPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhFbmdpbmVGb3JjZSgpIj48Q09ERT5FbmdpbmVTeXN0ZW0uZ2V0TWF4RW5naW5lRm9yY2UoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEVuZ2luZVN5c3RlbSgpIj48Q09ERT5nZXRFbmdpbmVTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRFbmdpbmVTeXN0ZW1fTWF4QnJlYWtpbmdGb3JjZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRFbmdpbmVTeXN0ZW1fTWF4QnJlYWtpbmdGb3JjZTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0RW5naW5lU3lzdGVtX01heEJyZWFraW5nRm9yY2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI2dldE1heEJyZWFraW5nRm9yY2UoKSI+PENPREU+PGVtPk1heCBCcmVha2luZyBGb3JjZTwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+TWF4IEJyZWFraW5nIEZvcmNlPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhCcmVha2luZ0ZvcmNlKCkiPjxDT0RFPkVuZ2luZVN5c3RlbS5nZXRNYXhCcmVha2luZ0ZvcmNlKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRFbmdpbmVTeXN0ZW0oKSI+PENPREU+Z2V0RW5naW5lU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RW5naW5lU3lzdGVtX01heEFsbG93ZWRTdGVlcmluZygpIj48IS0tIC0tPjwvQT48SDM+CitnZXRFbmdpbmVTeXN0ZW1fTWF4QWxsb3dlZFN0ZWVyaW5nPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRFbmdpbmVTeXN0ZW1fTWF4QWxsb3dlZFN0ZWVyaW5nPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhBbGxvd2VkU3RlZXJpbmcoKSI+PENPREU+PGVtPk1heCBBbGxvd2VkIFN0ZWVyaW5nPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5NYXggQWxsb3dlZCBTdGVlcmluZzwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0TWF4QWxsb3dlZFN0ZWVyaW5nKCkiPjxDT0RFPkVuZ2luZVN5c3RlbS5nZXRNYXhBbGxvd2VkU3RlZXJpbmcoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEVuZ2luZVN5c3RlbSgpIj48Q09ERT5nZXRFbmdpbmVTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRFbmdpbmVTeXN0ZW1fTWF4QWxsb3dlZFZlbG9jaXR5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEVuZ2luZVN5c3RlbV9NYXhBbGxvd2VkVmVsb2NpdHk8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldEVuZ2luZVN5c3RlbV9NYXhBbGxvd2VkVmVsb2NpdHk8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI2dldE1heEFsbG93ZWRWZWxvY2l0eSgpIj48Q09ERT48ZW0+TWF4IEFsbG93ZWQgVmVsb2NpdHk8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPk1heCBBbGxvd2VkIFZlbG9jaXR5PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhBbGxvd2VkVmVsb2NpdHkoKSI+PENPREU+RW5naW5lU3lzdGVtLmdldE1heEFsbG93ZWRWZWxvY2l0eSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0RW5naW5lU3lzdGVtKCkiPjxDT0RFPmdldEVuZ2luZVN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEVuZ2luZVN5c3RlbV9HZWFyX3JhdGlvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRFbmdpbmVTeXN0ZW1fR2Vhcl9yYXRpb248L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldEVuZ2luZVN5c3RlbV9HZWFyX3JhdGlvbjwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0R2Vhcl9yYXRpb24oKSI+PENPREU+PGVtPkdlYXIgcmF0aW9uPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5HZWFyIHJhdGlvbjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0R2Vhcl9yYXRpb24oKSI+PENPREU+RW5naW5lU3lzdGVtLmdldEdlYXJfcmF0aW9uKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRFbmdpbmVTeXN0ZW0oKSI+PENPREU+Z2V0RW5naW5lU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V2hlZWxTeXN0ZW0oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2hlZWxTeXN0ZW08L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0V2hlZWxTeXN0ZW08L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPldoZWVsIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPldoZWVsIFN5c3RlbTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPldoZWVsU3lzdGVtPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFdoZWVsU3lzdGVtX1doZWVsUmFkaXVzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFdoZWVsU3lzdGVtX1doZWVsUmFkaXVzPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRXaGVlbFN5c3RlbV9XaGVlbFJhZGl1czwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFJhZGl1cygpIj48Q09ERT48ZW0+V2hlZWwgUmFkaXVzPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5XaGVlbCBSYWRpdXM8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxSYWRpdXMoKSI+PENPREU+V2hlZWxTeXN0ZW0uZ2V0V2hlZWxSYWRpdXMoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtKCkiPjxDT0RFPmdldFdoZWVsU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V2hlZWxTeXN0ZW1fV2hlZWxXaWR0aCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRXaGVlbFN5c3RlbV9XaGVlbFdpZHRoPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRXaGVlbFN5c3RlbV9XaGVlbFdpZHRoPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsV2lkdGgoKSI+PENPREU+PGVtPldoZWVsIFdpZHRoPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5XaGVlbCBXaWR0aDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFdpZHRoKCkiPjxDT0RFPldoZWVsU3lzdGVtLmdldFdoZWVsV2lkdGgoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtKCkiPjxDT0RFPmdldFdoZWVsU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvblJlc3RMZW5ndGgoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvblJlc3RMZW5ndGg8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25SZXN0TGVuZ3RoPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25SZXN0TGVuZ3RoKCkiPjxDT0RFPjxlbT5TdXNwZW5zaW9uIFJlc3QgTGVuZ3RoPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5TdXNwZW5zaW9uIFJlc3QgTGVuZ3RoPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25SZXN0TGVuZ3RoKCkiPjxDT0RFPldoZWVsU3lzdGVtLmdldFN1c3BlbnNpb25SZXN0TGVuZ3RoKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRXaGVlbFN5c3RlbSgpIj48Q09ERT5nZXRXaGVlbFN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFdoZWVsU3lzdGVtX1doZWVsQ29ubmVjdGlvbkhlaWdodCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRXaGVlbFN5c3RlbV9XaGVlbENvbm5lY3Rpb25IZWlnaHQ8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldFdoZWVsU3lzdGVtX1doZWVsQ29ubmVjdGlvbkhlaWdodDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQoKSI+PENPREU+PGVtPldoZWVsIENvbm5lY3Rpb24gSGVpZ2h0PC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5XaGVlbCBDb25uZWN0aW9uIEhlaWdodDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQoKSI+PENPREU+V2hlZWxTeXN0ZW0uZ2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRXaGVlbFN5c3RlbSgpIj48Q09ERT5nZXRXaGVlbFN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFdoZWVsU3lzdGVtX1R5cGVPZldoZWVsKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFdoZWVsU3lzdGVtX1R5cGVPZldoZWVsPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRXaGVlbFN5c3RlbV9UeXBlT2ZXaGVlbDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRUeXBlT2ZXaGVlbCgpIj48Q09ERT48ZW0+VHlwZSBPZiBXaGVlbDwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+VHlwZSBPZiBXaGVlbDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRUeXBlT2ZXaGVlbCgpIj48Q09ERT5XaGVlbFN5c3RlbS5nZXRUeXBlT2ZXaGVlbCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW0oKSI+PENPREU+Z2V0V2hlZWxTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEa3AoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtwPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEa3A8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRGtwKCkiPjxDT0RFPjxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEa3A8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPldoZWVsIFZlbG9jaXR5IFBJIERrcDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEa3AoKSI+PENPREU+V2hlZWxTeXN0ZW0uZ2V0V2hlZWxWZWxvY2l0eVBJRGtwKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRXaGVlbFN5c3RlbSgpIj48Q09ERT5nZXRXaGVlbFN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURraSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEa2k8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURraTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEa2koKSI+PENPREU+PGVtPldoZWVsIFZlbG9jaXR5IFBJIERraTwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtpPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURraSgpIj48Q09ERT5XaGVlbFN5c3RlbS5nZXRXaGVlbFZlbG9jaXR5UElEa2koKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtKCkiPjxDT0RFPmdldFdoZWVsU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtkKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURrZDwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtkPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURrZCgpIj48Q09ERT48ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtkPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEa2Q8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRGtkKCkiPjxDT0RFPldoZWVsU3lzdGVtLmdldFdoZWVsVmVsb2NpdHlQSURrZCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW0oKSI+PENPREU+Z2V0V2hlZWxTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXaGVlbFN5c3RlbV9XaGVlbFN0ZWVyaW5nUElEa3AoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2hlZWxTeXN0ZW1fV2hlZWxTdGVlcmluZ1BJRGtwPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRXaGVlbFN5c3RlbV9XaGVlbFN0ZWVyaW5nUElEa3A8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxTdGVlcmluZ1BJRGtwKCkiPjxDT0RFPjxlbT5XaGVlbCBTdGVlcmluZyBQSSBEa3A8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPldoZWVsIFN0ZWVyaW5nIFBJIERrcDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFN0ZWVyaW5nUElEa3AoKSI+PENPREU+V2hlZWxTeXN0ZW0uZ2V0V2hlZWxTdGVlcmluZ1BJRGtwKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRXaGVlbFN5c3RlbSgpIj48Q09ERT5nZXRXaGVlbFN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFdoZWVsU3lzdGVtX1doZWVsU3RlZXJpbmdQSURrZCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRXaGVlbFN5c3RlbV9XaGVlbFN0ZWVyaW5nUElEa2Q8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldFdoZWVsU3lzdGVtX1doZWVsU3RlZXJpbmdQSURrZDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFN0ZWVyaW5nUElEa2QoKSI+PENPREU+PGVtPldoZWVsIFN0ZWVyaW5nIFBJIERrZDwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+V2hlZWwgU3RlZXJpbmcgUEkgRGtkPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsU3RlZXJpbmdQSURrZCgpIj48Q09ERT5XaGVlbFN5c3RlbS5nZXRXaGVlbFN0ZWVyaW5nUElEa2QoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtKCkiPjxDT0RFPmdldFdoZWVsU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V2hlZWxTeXN0ZW1fV2hlZWxGcmljdGlvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRXaGVlbFN5c3RlbV9XaGVlbEZyaWN0aW9uPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRXaGVlbFN5c3RlbV9XaGVlbEZyaWN0aW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsRnJpY3Rpb24oKSI+PENPREU+PGVtPldoZWVsIEZyaWN0aW9uPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5XaGVlbCBGcmljdGlvbjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbEZyaWN0aW9uKCkiPjxDT0RFPldoZWVsU3lzdGVtLmdldFdoZWVsRnJpY3Rpb24oKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtKCkiPjxDT0RFPmdldFdoZWVsU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvblN0aWZmbmVzcygpIj48IS0tIC0tPjwvQT48SDM+CitnZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uU3RpZmZuZXNzPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uU3RpZmZuZXNzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25TdGlmZm5lc3MoKSI+PENPREU+PGVtPlN1c3BlbnNpb24gU3RpZmZuZXNzPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5TdXNwZW5zaW9uIFN0aWZmbmVzczwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRTdXNwZW5zaW9uU3RpZmZuZXNzKCkiPjxDT0RFPldoZWVsU3lzdGVtLmdldFN1c3BlbnNpb25TdGlmZm5lc3MoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtKCkiPjxDT0RFPmdldFdoZWVsU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvbkRhbXBpbmcoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvbkRhbXBpbmc8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25EYW1waW5nPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25EYW1waW5nKCkiPjxDT0RFPjxlbT5TdXNwZW5zaW9uIERhbXBpbmc8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlN1c3BlbnNpb24gRGFtcGluZzwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRTdXNwZW5zaW9uRGFtcGluZygpIj48Q09ERT5XaGVlbFN5c3RlbS5nZXRTdXNwZW5zaW9uRGFtcGluZygpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW0oKSI+PENPREU+Z2V0V2hlZWxTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uQ29tcHJlc3Npb24oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvbkNvbXByZXNzaW9uPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uQ29tcHJlc3Npb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uKCkiPjxDT0RFPjxlbT5TdXNwZW5zaW9uIENvbXByZXNzaW9uPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5TdXNwZW5zaW9uIENvbXByZXNzaW9uPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25Db21wcmVzc2lvbigpIj48Q09ERT5XaGVlbFN5c3RlbS5nZXRTdXNwZW5zaW9uQ29tcHJlc3Npb24oKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtKCkiPjxDT0RFPmdldFdoZWVsU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRG1heFN1bSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4U3VtPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4U3VtPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURtYXhTdW0oKSI+PENPREU+PGVtPldoZWVsIFZlbG9jaXR5IFBJIERtYXggU3VtPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEbWF4IFN1bTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtKCkiPjxDT0RFPldoZWVsU3lzdGVtLmdldFdoZWVsVmVsb2NpdHlQSURtYXhTdW0oKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtKCkiPjxDT0RFPmdldFdoZWVsU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRG1heFZhbCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4VmFsPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4VmFsPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURtYXhWYWwoKSI+PENPREU+PGVtPldoZWVsIFZlbG9jaXR5IFBJIERtYXggVmFsPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEbWF4IFZhbDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEbWF4VmFsKCkiPjxDT0RFPldoZWVsU3lzdGVtLmdldFdoZWVsVmVsb2NpdHlQSURtYXhWYWwoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtKCkiPjxDT0RFPmdldFdoZWVsU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0SW1hZ2VTZW5zb3JTeXN0ZW0oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0SW1hZ2VTZW5zb3JTeXN0ZW08L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0SW1hZ2VTZW5zb3JTeXN0ZW08L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9JbWFnZVNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkltYWdlIFNlbnNvciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5JbWFnZSBTZW5zb3IgU3lzdGVtPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9JbWFnZVNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+SW1hZ2VTZW5zb3JTeXN0ZW08L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Q2FtZXJhU3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldENhbWVyYVN5c3RlbTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRDYW1lcmFTeXN0ZW08L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5DYW1lcmEgU3lzdGVtPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+Q2FtZXJhIFN5c3RlbTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5DYW1lcmFTeXN0ZW08L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Q2FtZXJhU3lzdGVtX1dpZHRoKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldENhbWVyYVN5c3RlbV9XaWR0aDwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0Q2FtZXJhU3lzdGVtX1dpZHRoPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRXaWR0aCgpIj48Q09ERT48ZW0+V2lkdGg8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPldpZHRoPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRXaWR0aCgpIj48Q09ERT5DYW1lcmFTeXN0ZW0uZ2V0V2lkdGgoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENhbWVyYVN5c3RlbSgpIj48Q09ERT5nZXRDYW1lcmFTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRDYW1lcmFTeXN0ZW1fSGVpZ2h0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldENhbWVyYVN5c3RlbV9IZWlnaHQ8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldENhbWVyYVN5c3RlbV9IZWlnaHQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldEhlaWdodCgpIj48Q09ERT48ZW0+SGVpZ2h0PC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5IZWlnaHQ8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldEhlaWdodCgpIj48Q09ERT5DYW1lcmFTeXN0ZW0uZ2V0SGVpZ2h0KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDYW1lcmFTeXN0ZW0oKSI+PENPREU+Z2V0Q2FtZXJhU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Q2FtZXJhU3lzdGVtX0FscGhhX3UoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Q2FtZXJhU3lzdGVtX0FscGhhX3U8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldENhbWVyYVN5c3RlbV9BbHBoYV91PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRBbHBoYV91KCkiPjxDT0RFPjxlbT5BbHBoYSB1PC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5BbHBoYSB1PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRBbHBoYV91KCkiPjxDT0RFPkNhbWVyYVN5c3RlbS5nZXRBbHBoYV91KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDYW1lcmFTeXN0ZW0oKSI+PENPREU+Z2V0Q2FtZXJhU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Q2FtZXJhU3lzdGVtX0FscGhhX3YoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Q2FtZXJhU3lzdGVtX0FscGhhX3Y8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldENhbWVyYVN5c3RlbV9BbHBoYV92PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRBbHBoYV92KCkiPjxDT0RFPjxlbT5BbHBoYSB2PC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5BbHBoYSB2PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRBbHBoYV92KCkiPjxDT0RFPkNhbWVyYVN5c3RlbS5nZXRBbHBoYV92KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDYW1lcmFTeXN0ZW0oKSI+PENPREU+Z2V0Q2FtZXJhU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Q2FtZXJhU3lzdGVtX1UwKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldENhbWVyYVN5c3RlbV9VMDwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0Q2FtZXJhU3lzdGVtX1UwPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRVMCgpIj48Q09ERT48ZW0+VTA8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlUwPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRVMCgpIj48Q09ERT5DYW1lcmFTeXN0ZW0uZ2V0VTAoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENhbWVyYVN5c3RlbSgpIj48Q09ERT5nZXRDYW1lcmFTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRDYW1lcmFTeXN0ZW1fVjAoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Q2FtZXJhU3lzdGVtX1YwPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRDYW1lcmFTeXN0ZW1fVjA8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldFYwKCkiPjxDT0RFPjxlbT5WMDwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+VjA8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldFYwKCkiPjxDT0RFPkNhbWVyYVN5c3RlbS5nZXRWMCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q2FtZXJhU3lzdGVtKCkiPjxDT0RFPmdldENhbWVyYVN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldENhbWVyYVN5c3RlbV9Db2xvcl9mb3JtYXQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Q2FtZXJhU3lzdGVtX0NvbG9yX2Zvcm1hdDwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0Q2FtZXJhU3lzdGVtX0NvbG9yX2Zvcm1hdDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0Q29sb3JfZm9ybWF0KCkiPjxDT0RFPjxlbT5Db2xvciBmb3JtYXQ8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkNvbG9yIGZvcm1hdDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0Q29sb3JfZm9ybWF0KCkiPjxDT0RFPkNhbWVyYVN5c3RlbS5nZXRDb2xvcl9mb3JtYXQoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENhbWVyYVN5c3RlbSgpIj48Q09ERT5nZXRDYW1lcmFTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldE9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPk9iamVjdCBUcmFja2luZyBTZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+T2JqZWN0IFRyYWNraW5nIFNlbnNvciBTeXN0ZW08L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRMaWRhclN5c3RlbSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRMaWRhclN5c3RlbTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRMaWRhclN5c3RlbTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+TGlkYXIgU3lzdGVtPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+TGlkYXIgU3lzdGVtPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+TGlkYXJTeXN0ZW08L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TGlkYXJTeXN0ZW1fTmJMYXllcnMoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TGlkYXJTeXN0ZW1fTmJMYXllcnM8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldExpZGFyU3lzdGVtX05iTGF5ZXJzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldE5iTGF5ZXJzKCkiPjxDT0RFPjxlbT5OYiBMYXllcnM8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPk5iIExheWVyczwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXROYkxheWVycygpIj48Q09ERT5MaWRhclN5c3RlbS5nZXROYkxheWVycygpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW0oKSI+PENPREU+Z2V0TGlkYXJTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRMaWRhclN5c3RlbV9MYXllckFuZ2xlTWluKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldExpZGFyU3lzdGVtX0xheWVyQW5nbGVNaW48L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldExpZGFyU3lzdGVtX0xheWVyQW5nbGVNaW48L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0TGF5ZXJBbmdsZU1pbigpIj48Q09ERT48ZW0+TGF5ZXIgQW5nbGUgTWluPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5MYXllciBBbmdsZSBNaW48L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0TGF5ZXJBbmdsZU1pbigpIj48Q09ERT5MaWRhclN5c3RlbS5nZXRMYXllckFuZ2xlTWluKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbSgpIj48Q09ERT5nZXRMaWRhclN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldExpZGFyU3lzdGVtX0xheWVyQW5nbGVTdGVwKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldExpZGFyU3lzdGVtX0xheWVyQW5nbGVTdGVwPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRMaWRhclN5c3RlbV9MYXllckFuZ2xlU3RlcDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRMYXllckFuZ2xlU3RlcCgpIj48Q09ERT48ZW0+TGF5ZXIgQW5nbGUgU3RlcDwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+TGF5ZXIgQW5nbGUgU3RlcDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRMYXllckFuZ2xlU3RlcCgpIj48Q09ERT5MaWRhclN5c3RlbS5nZXRMYXllckFuZ2xlU3RlcCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW0oKSI+PENPREU+Z2V0TGlkYXJTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRMaWRhclN5c3RlbV9Ob2lzZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRMaWRhclN5c3RlbV9Ob2lzZTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0TGlkYXJTeXN0ZW1fTm9pc2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0Tm9pc2UoKSI+PENPREU+PGVtPk5vaXNlPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5Ob2lzZTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXROb2lzZSgpIj48Q09ERT5MaWRhclN5c3RlbS5nZXROb2lzZSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW0oKSI+PENPREU+Z2V0TGlkYXJTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRMaWRhclN5c3RlbV9TaWdtYU5vaXNlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldExpZGFyU3lzdGVtX1NpZ21hTm9pc2U8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldExpZGFyU3lzdGVtX1NpZ21hTm9pc2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0U2lnbWFOb2lzZSgpIj48Q09ERT48ZW0+U2lnbWEgTm9pc2U8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlNpZ21hIE5vaXNlPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFNpZ21hTm9pc2UoKSI+PENPREU+TGlkYXJTeXN0ZW0uZ2V0U2lnbWFOb2lzZSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW0oKSI+PENPREU+Z2V0TGlkYXJTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRMaWRhclN5c3RlbV9BbmdsZV9taW4oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TGlkYXJTeXN0ZW1fQW5nbGVfbWluPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRMaWRhclN5c3RlbV9BbmdsZV9taW48L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0QW5nbGVfbWluKCkiPjxDT0RFPjxlbT5BbmdsZSBtaW48L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkFuZ2xlIG1pbjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRBbmdsZV9taW4oKSI+PENPREU+TGlkYXJTeXN0ZW0uZ2V0QW5nbGVfbWluKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbSgpIj48Q09ERT5nZXRMaWRhclN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldExpZGFyU3lzdGVtX0FuZ2xlX21heCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRMaWRhclN5c3RlbV9BbmdsZV9tYXg8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldExpZGFyU3lzdGVtX0FuZ2xlX21heDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRBbmdsZV9tYXgoKSI+PENPREU+PGVtPkFuZ2xlIG1heDwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+QW5nbGUgbWF4PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldEFuZ2xlX21heCgpIj48Q09ERT5MaWRhclN5c3RlbS5nZXRBbmdsZV9tYXgoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtKCkiPjxDT0RFPmdldExpZGFyU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TGlkYXJTeXN0ZW1fVGltZV9pbmNyZW1lbnQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TGlkYXJTeXN0ZW1fVGltZV9pbmNyZW1lbnQ8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldExpZGFyU3lzdGVtX1RpbWVfaW5jcmVtZW50PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFRpbWVfaW5jcmVtZW50KCkiPjxDT0RFPjxlbT5UaW1lIGluY3JlbWVudDwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+VGltZSBpbmNyZW1lbnQ8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0VGltZV9pbmNyZW1lbnQoKSI+PENPREU+TGlkYXJTeXN0ZW0uZ2V0VGltZV9pbmNyZW1lbnQoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtKCkiPjxDT0RFPmdldExpZGFyU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TGlkYXJTeXN0ZW1fU2Nhbl90aW1lKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldExpZGFyU3lzdGVtX1NjYW5fdGltZTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0TGlkYXJTeXN0ZW1fU2Nhbl90aW1lPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFNjYW5fdGltZSgpIj48Q09ERT48ZW0+U2NhbiB0aW1lPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5TY2FuIHRpbWU8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0U2Nhbl90aW1lKCkiPjxDT0RFPkxpZGFyU3lzdGVtLmdldFNjYW5fdGltZSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW0oKSI+PENPREU+Z2V0TGlkYXJTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRMaWRhclN5c3RlbV9SYW5nZV9taW4oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TGlkYXJTeXN0ZW1fUmFuZ2VfbWluPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRMaWRhclN5c3RlbV9SYW5nZV9taW48L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0UmFuZ2VfbWluKCkiPjxDT0RFPjxlbT5SYW5nZSBtaW48L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlJhbmdlIG1pbjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRSYW5nZV9taW4oKSI+PENPREU+TGlkYXJTeXN0ZW0uZ2V0UmFuZ2VfbWluKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbSgpIj48Q09ERT5nZXRMaWRhclN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldExpZGFyU3lzdGVtX1JhbmdlX21heCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRMaWRhclN5c3RlbV9SYW5nZV9tYXg8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldExpZGFyU3lzdGVtX1JhbmdlX21heDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRSYW5nZV9tYXgoKSI+PENPREU+PGVtPlJhbmdlIG1heDwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+UmFuZ2UgbWF4PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFJhbmdlX21heCgpIj48Q09ERT5MaWRhclN5c3RlbS5nZXRSYW5nZV9tYXgoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtKCkiPjxDT0RFPmdldExpZGFyU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldExvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Mb2NhbGl6YXRpb24gU2Vuc29yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkxvY2FsaXphdGlvbiBTZW5zb3IgU3lzdGVtPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRHUFNTeXN0ZW0oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0R1BTU3lzdGVtPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldEdQU1N5c3RlbTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkdQUyBTeXN0ZW08L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5HUFMgU3lzdGVtPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkdQU1N5c3RlbTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRHUFNTeXN0ZW1fT3JpZ2luUG9zaXRpb24oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0R1BTU3lzdGVtX09yaWdpblBvc2l0aW9uPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRHUFNTeXN0ZW1fT3JpZ2luUG9zaXRpb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sI2dldE9yaWdpblBvc2l0aW9uKCkiPjxDT0RFPjxlbT5PcmlnaW4gUG9zaXRpb248L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPk9yaWdpbiBQb3NpdGlvbjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwjZ2V0T3JpZ2luUG9zaXRpb24oKSI+PENPREU+R1BTU3lzdGVtLmdldE9yaWdpblBvc2l0aW9uKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRHUFNTeXN0ZW0oKSI+PENPREU+Z2V0R1BTU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U2ltdWxhdGVkU3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFNpbXVsYXRlZFN5c3RlbTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRTaW11bGF0ZWRTeXN0ZW08L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TaW11bGF0ZWQgU3lzdGVtPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+U2ltdWxhdGVkIFN5c3RlbTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5TaW11bGF0ZWRTeXN0ZW08L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U2ltdWxhdGVkU3lzdGVtX0Jhc2VfUHJvcGVydHkoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U2ltdWxhdGVkU3lzdGVtX0Jhc2VfUHJvcGVydHk8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlIDxCPmdldFNpbXVsYXRlZFN5c3RlbV9CYXNlX1Byb3BlcnR5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCNnZXRCYXNlX1Byb3BlcnR5KCkiPjxDT0RFPjxlbT5CYXNlIFByb3BlcnR5PC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxlbT5CYXNlIFByb3BlcnR5PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCNnZXRCYXNlX1Byb3BlcnR5KCkiPjxDT0RFPlNpbXVsYXRlZFN5c3RlbS5nZXRCYXNlX1Byb3BlcnR5KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTaW11bGF0ZWRTeXN0ZW0oKSI+PENPREU+Z2V0U2ltdWxhdGVkU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U2ltdWxhdGVkU3lzdGVtX01lc2goKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U2ltdWxhdGVkU3lzdGVtX01lc2g8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldFNpbXVsYXRlZFN5c3RlbV9NZXNoPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sI2dldE1lc2goKSI+PENPREU+PGVtPk1lc2g8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICc8ZW0+TWVzaDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwjZ2V0TWVzaCgpIj48Q09ERT5TaW11bGF0ZWRTeXN0ZW0uZ2V0TWVzaCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U2ltdWxhdGVkU3lzdGVtKCkiPjxDT0RFPmdldFNpbXVsYXRlZFN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEFsZ29yaXRobUxpYnJhcnkoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QWxnb3JpdGhtTGlicmFyeTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRBbGdvcml0aG1MaWJyYXJ5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkFsZ29yaXRobSBMaWJyYXJ5PC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+QWxnb3JpdGhtIExpYnJhcnk8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkFsZ29yaXRobUxpYnJhcnk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0QWxnb3JpdGhtTGlicmFyeV9CYXNlX0NsYXNzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEFsZ29yaXRobUxpYnJhcnlfQmFzZV9DbGFzczwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2UgPEI+Z2V0QWxnb3JpdGhtTGlicmFyeV9CYXNlX0NsYXNzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwjZ2V0QmFzZV9DbGFzcygpIj48Q09ERT48ZW0+QmFzZSBDbGFzczwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8ZW0+QmFzZSBDbGFzczwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+PENPREU+QWxnb3JpdGhtTGlicmFyeS5nZXRCYXNlX0NsYXNzKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBbGdvcml0aG1MaWJyYXJ5KCkiPjxDT0RFPmdldEFsZ29yaXRobUxpYnJhcnkoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRBbGdvcml0aG1MaWJyYXJ5X1BhdGgoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QWxnb3JpdGhtTGlicmFyeV9QYXRoPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRBbGdvcml0aG1MaWJyYXJ5X1BhdGg8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCNnZXRQYXRoKCkiPjxDT0RFPjxlbT5QYXRoPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5QYXRoPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwjZ2V0UGF0aCgpIj48Q09ERT5BbGdvcml0aG1MaWJyYXJ5LmdldFBhdGgoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEFsZ29yaXRobUxpYnJhcnkoKSI+PENPREU+Z2V0QWxnb3JpdGhtTGlicmFyeSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFN0YXRlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFN0YXRlPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldFN0YXRlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TdGF0ZTwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlN0YXRlPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+U3RhdGU8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U3RhdGVfQmFzZV9TdGF0ZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTdGF0ZV9CYXNlX1N0YXRlPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZSA8Qj5nZXRTdGF0ZV9CYXNlX1N0YXRlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sI2dldEJhc2VfU3RhdGUoKSI+PENPREU+PGVtPkJhc2UgU3RhdGU8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPGVtPkJhc2UgU3RhdGU8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwjZ2V0QmFzZV9TdGF0ZSgpIj48Q09ERT5TdGF0ZS5nZXRCYXNlX1N0YXRlKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTdGF0ZSgpIj48Q09ERT5nZXRTdGF0ZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFN0YXRlX09wZXJhdGlvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTdGF0ZV9PcGVyYXRpb248L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlIDxCPmdldFN0YXRlX09wZXJhdGlvbjwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCNnZXRPcGVyYXRpb24oKSI+PENPREU+PGVtPk9wZXJhdGlvbjwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8ZW0+T3BlcmF0aW9uPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sI2dldE9wZXJhdGlvbigpIj48Q09ERT5TdGF0ZS5nZXRPcGVyYXRpb24oKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFN0YXRlKCkiPjxDT0RFPmdldFN0YXRlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U3RhdGVfQXJndW1lbnRzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFN0YXRlX0FyZ3VtZW50czwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2UgPEI+Z2V0U3RhdGVfQXJndW1lbnRzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgbGlzdCAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwjZ2V0QXJndW1lbnRzKCkiPjxDT0RFPjxlbT5Bcmd1bWVudHM8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSBsaXN0ICc8ZW0+QXJndW1lbnRzPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sI2dldEFyZ3VtZW50cygpIj48Q09ERT5TdGF0ZS5nZXRBcmd1bWVudHMoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFN0YXRlKCkiPjxDT0RFPmdldFN0YXRlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U2Vuc29yRHJpdmVyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFNlbnNvckRyaXZlcjwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRTZW5zb3JEcml2ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JEcml2ZXIuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TZW5zb3IgRHJpdmVyPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+U2Vuc29yIERyaXZlcjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yRHJpdmVyLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5TZW5zb3JEcml2ZXI8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UGh5c2ljYWxPYmplY3QoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UGh5c2ljYWxPYmplY3Q8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0UGh5c2ljYWxPYmplY3Q8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlBoeXNpY2FsIE9iamVjdDwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlBoeXNpY2FsIE9iamVjdDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlBoeXNpY2FsT2JqZWN0PC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBoeXNpY2FsT2JqZWN0X0V2ZWxvdmVzSW4oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UGh5c2ljYWxPYmplY3RfRXZlbG92ZXNJbjwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2UgPEI+Z2V0UGh5c2ljYWxPYmplY3RfRXZlbG92ZXNJbjwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlIGxpc3QgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEV2ZWxvdmVzSW4oKSI+PENPREU+PGVtPkV2ZWxvdmVzIEluPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgbGlzdCAnPGVtPkV2ZWxvdmVzIEluPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEV2ZWxvdmVzSW4oKSI+PENPREU+UGh5c2ljYWxPYmplY3QuZ2V0RXZlbG92ZXNJbigpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGh5c2ljYWxPYmplY3QoKSI+PENPREU+Z2V0UGh5c2ljYWxPYmplY3QoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRQaHlzaWNhbE9iamVjdF9IYXNTdXJmYWNlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBoeXNpY2FsT2JqZWN0X0hhc1N1cmZhY2U8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlIDxCPmdldFBoeXNpY2FsT2JqZWN0X0hhc1N1cmZhY2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0SGFzU3VyZmFjZSgpIj48Q09ERT48ZW0+SGFzIFN1cmZhY2U8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPGVtPkhhcyBTdXJmYWNlPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEhhc1N1cmZhY2UoKSI+PENPREU+UGh5c2ljYWxPYmplY3QuZ2V0SGFzU3VyZmFjZSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGh5c2ljYWxPYmplY3QoKSI+PENPREU+Z2V0UGh5c2ljYWxPYmplY3QoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRSb2JvdEtpbmQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Um9ib3RLaW5kPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUVudW0gPEI+Z2V0Um9ib3RLaW5kPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGVudW0gJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Um9ib3QgS2luZDwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBlbnVtICc8ZW0+Um9ib3QgS2luZDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+Um9ib3RLaW5kPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFVHVktpbmQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0VUdWS2luZDwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVFbnVtIDxCPmdldFVHVktpbmQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZW51bSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+VUdWIEtpbmQ8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgZW51bSAnPGVtPlVHViBLaW5kPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+VUdWS2luZDwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTeW5jaHJvbml6YXRpb25LaW5kKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFN5bmNocm9uaXphdGlvbktpbmQ8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRW51bSA8Qj5nZXRTeW5jaHJvbml6YXRpb25LaW5kPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGVudW0gJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlN5bmNocm9uaXphdGlvbiBLaW5kPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGVudW0gJzxlbT5TeW5jaHJvbml6YXRpb24gS2luZDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlN5bmNocm9uaXphdGlvbktpbmQ8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RGF0YUZsb3dEaXJlY3Rpb25LaW5kKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldERhdGFGbG93RGlyZWN0aW9uS2luZDwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVFbnVtIDxCPmdldERhdGFGbG93RGlyZWN0aW9uS2luZDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBlbnVtICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkRhdGEgRmxvdyBEaXJlY3Rpb24gS2luZDwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBlbnVtICc8ZW0+RGF0YSBGbG93IERpcmVjdGlvbiBLaW5kPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U2VydmljZUZsb3dLaW5kKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFNlcnZpY2VGbG93S2luZDwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVFbnVtIDxCPmdldFNlcnZpY2VGbG93S2luZDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBlbnVtICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlNlcnZpY2UgRmxvdyBLaW5kPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGVudW0gJzxlbT5TZXJ2aWNlIEZsb3cgS2luZDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+U2VydmljZUZsb3dLaW5kPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFVuaXRLaW5kKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFVuaXRLaW5kPC9IMz4KKzxQUkU+CitvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUVudW0gPEI+Z2V0VW5pdEtpbmQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZW51bSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlVuaXQgS2luZDwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBlbnVtICc8ZW0+VW5pdCBLaW5kPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlVuaXRLaW5kPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFJvYm90aWNNaWRkbGV3YXJlS2luZCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRSb2JvdGljTWlkZGxld2FyZUtpbmQ8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRW51bSA8Qj5nZXRSb2JvdGljTWlkZGxld2FyZUtpbmQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZW51bSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Sb2JvdGljIE1pZGRsZXdhcmUgS2luZDwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBlbnVtICc8ZW0+Um9ib3RpYyBNaWRkbGV3YXJlIEtpbmQ8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTaGFkZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTaGFkZTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVFbnVtIDxCPmdldFNoYWRlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGVudW0gJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TaGFkZTwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBlbnVtICc8ZW0+U2hhZGU8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+U2hhZGU8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Um9ib3RNTEZhY3RvcnkoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Um9ib3RNTEZhY3Rvcnk8L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+IDxCPmdldFJvYm90TUxGYWN0b3J5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgZmFjdG9yeSB0aGF0IGNyZWF0ZXMgdGhlIGluc3RhbmNlcyBvZiB0aGUgbW9kZWwuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgZmFjdG9yeSB0aGF0IGNyZWF0ZXMgdGhlIGluc3RhbmNlcyBvZiB0aGUgbW9kZWwuPC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9Sb2JvdE1MUGFja2FnZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlJvYm90TUxQYWNrYWdlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc19zdW1tYXJ5Ij5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI3MjNkMjcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sCkBAIC0wLDAgKzEsMzAyIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjcgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitSb2JvdGljTWlkZGxld2FyZQorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljTWlkZGxld2FyZSBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlJvYm90aWNNaWRkbGV3YXJlIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1JvYm90aWNNaWRkbGV3YXJlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdGljTWlkZGxld2FyZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIFJvYm90aWNNaWRkbGV3YXJlPC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGF0Zm9ybTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5BbGwgS25vd24gSW1wbGVtZW50aW5nIENsYXNzZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY01pZGRsZXdhcmVJbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5Sb2JvdGljTWlkZGxld2FyZTwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBsYXRmb3JtPC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90aWMgTWlkZGxld2FyZTwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisKKyA8cD4KKyBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgPHVsPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sI2dldEtpbmQoKSI+PENPREU+PGVtPktpbmQ8L2VtPjwvQ09ERT48L0E+PC9saT4KKyA8L3VsPgorIDwvcD4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90aWNNaWRkbGV3YXJlKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFJvYm90aWNNaWRkbGV3YXJlKCk8L0NPREU+PC9BPjwvREw+Cis8SFI+CisKKzxQPgorCis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCNnZXRLaW5kKCkiPmdldEtpbmQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5LaW5kPC9iPjwvZW0+JyBhdHRyaWJ1dGUuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwjc2V0S2luZChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmVLaW5kKSI+c2V0S2luZDwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0E+Jm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sI2dldEtpbmQoKSI+PENPREU+PGVtPktpbmQ8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QbGF0Zm9ybSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBsYXRmb3JtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sI2dldEJhc2VfTm9kZSgpIj5nZXRCYXNlX05vZGU8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCNzZXRCYXNlX05vZGUob3JnLmVjbGlwc2UudW1sMi51bWwuTm9kZSkiPnNldEJhc2VfTm9kZTwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0S2luZCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRLaW5kPC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPiA8Qj5nZXRLaW5kPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+S2luZDwvYj48L2VtPicgYXR0cmlidXRlLgorIFRoZSBsaXRlcmFscyBhcmUgZnJvbSB0aGUgZW51bWVyYXRpb24gPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQ09ERT48L0E+LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+S2luZDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+S2luZDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sI3NldEtpbmQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNNaWRkbGV3YXJlS2luZCkiPjxDT0RFPnNldEtpbmQoUm9ib3RpY01pZGRsZXdhcmVLaW5kKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90aWNNaWRkbGV3YXJlX0tpbmQoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0Um9ib3RpY01pZGRsZXdhcmVfS2luZCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldEtpbmQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNNaWRkbGV3YXJlS2luZCkiPjwhLS0gLS0+PC9BPjxIMz4KK3NldEtpbmQ8L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0S2luZDwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT4mbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sI2dldEtpbmQoKSI+PENPREU+PGVtPktpbmQ8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5LaW5kPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwjZ2V0S2luZCgpIj48Q09ERT5nZXRLaW5kKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlJvYm90aWNNaWRkbGV3YXJlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDA2ZTVmOQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sCkBAIC0wLDAgKzEsNzU1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjcgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitSb2JvdGljTWlkZGxld2FyZUtpbmQKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmVLaW5kIGNsYXNzIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJSb2JvdGljTWlkZGxld2FyZUtpbmQiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNlbnVtX2NvbnN0YW50X3N1bW1hcnkiPkVOVU0gQ09OU1RBTlRTPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZW51bV9jb25zdGFudF9kZXRhaWwiPkVOVU0gQ09OU1RBTlRTPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvRk9OVD4KKzxCUj4KK0VudW0gUm9ib3RpY01pZGRsZXdhcmVLaW5kPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5qYXZhLmxhbmcuRW51bSZsdDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPiZndDsKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmVLaW5kPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+amF2YS5pby5TZXJpYWxpemFibGUsIGphdmEubGFuZy5Db21wYXJhYmxlJmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0E+Jmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3I8L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBlbnVtIDxCPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQj48RFQ+ZXh0ZW5kcyBqYXZhLmxhbmcuRW51bSZsdDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPiZndDs8RFQ+aW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIGxpdGVyYWxzIG9mIHRoZSBlbnVtZXJhdGlvbiAnPGVtPjxiPlJvYm90aWMgTWlkZGxld2FyZSBLaW5kPC9iPjwvZW0+JywKKyBhbmQgdXRpbGl0eSBtZXRob2RzIGZvciB3b3JraW5nIHdpdGggdGhlbS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90aWNNaWRkbGV3YXJlS2luZCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRSb2JvdGljTWlkZGxld2FyZUtpbmQoKTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09PT09IEVOVU0gQ09OU1RBTlQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZW51bV9jb25zdGFudF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RW51bSBDb25zdGFudCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCNBUk9DQU0iPkFST0NBTTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgJzxlbT48Yj5BUk9DQU08L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwjT1JPQ09TIj5PUk9DT1M8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlICc8ZW0+PGI+T1JPQ09TPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdDwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sI1JPUyI+Uk9TPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSAnPGVtPjxiPlJPUzwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3Q8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCNSVF9NQVBTIj5SVF9NQVBTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSAnPGVtPjxiPlJUIE1hcHM8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwjVVJCSSI+VVJCSTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgJzxlbT48Yj5VUkJJPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdDwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sI0FST0NBTV9WQUxVRSI+QVJPQ0FNX1ZBTFVFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSAnPGVtPjxiPkFST0NBTTwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sI09ST0NPU19WQUxVRSI+T1JPQ09TX1ZBTFVFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSAnPGVtPjxiPk9ST0NPUzwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sI1JPU19WQUxVRSI+Uk9TX1ZBTFVFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSAnPGVtPjxiPlJPUzwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sI1JUX01BUFNfVkFMVUUiPlJUX01BUFNfVkFMVUU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlICc8ZW0+PGI+UlQgTWFwczwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sI1VSQklfVkFMVUUiPlVSQklfVkFMVUU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlICc8ZW0+PGI+VVJCSTwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLnV0aWwuTGlzdCZsdDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPiZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sI1ZBTFVFUyI+VkFMVUVTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcHVibGljIHJlYWQtb25seSBsaXN0IG9mIGFsbCB0aGUgJzxlbT48Yj5Sb2JvdGljIE1pZGRsZXdhcmUgS2luZDwvYj48L2VtPicgZW51bWVyYXRvcnM8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCNnZXQoaW50KSI+Z2V0PC9BPjwvQj4oaW50Jm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSAnPGVtPjxiPlJvYm90aWMgTWlkZGxld2FyZSBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBpbnRlZ2VyIHZhbHVlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCNnZXQoamF2YS5sYW5nLlN0cmluZykiPmdldDwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtsaXRlcmFsKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgJzxlbT48Yj5Sb2JvdGljIE1pZGRsZXdhcmUgS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbGl0ZXJhbCB2YWx1ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwjZ2V0QnlOYW1lKGphdmEubGFuZy5TdHJpbmcpIj5nZXRCeU5hbWU8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmFtZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlICc8ZW0+PGI+Um9ib3RpYyBNaWRkbGV3YXJlIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwjZ2V0TGl0ZXJhbCgpIj5nZXRMaXRlcmFsPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sI2dldE5hbWUoKSI+Z2V0TmFtZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sI2dldFZhbHVlKCkiPmdldFZhbHVlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sI3RvU3RyaW5nKCkiPnRvU3RyaW5nPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbGl0ZXJhbCB2YWx1ZSBvZiB0aGUgZW51bWVyYXRvciwgd2hpY2ggaXMgaXRzIHN0cmluZyByZXByZXNlbnRhdGlvbjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwjdmFsdWVPZihqYXZhLmxhbmcuU3RyaW5nKSI+dmFsdWVPZjwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuYW1lKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgZW51bSBjb25zdGFudCBvZiB0aGlzIHR5cGUgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0E+W108L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sI3ZhbHVlcygpIj52YWx1ZXM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGFuIGFycmF5IGNvbnRhaW5pbmcgdGhlIGNvbnN0YW50cyBvZiB0aGlzIGVudW0gdHlwZSwgaW4KK3RoZSBvcmRlciB0aGV5J3JlIGRlY2xhcmVkLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLkVudW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5FbnVtPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Y29tcGFyZVRvLCBlcXVhbHMsIGdldERlY2xhcmluZ0NsYXNzLCBoYXNoQ29kZSwgbmFtZSwgb3JkaW5hbCwgdmFsdWVPZjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXRDbGFzcywgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gRU5VTSBDT05TVEFOVCBERVRBSUwgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImVudW1fY29uc3RhbnRfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+RW51bSBDb25zdGFudCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iUlRfTUFQUyI+PCEtLSAtLT48L0E+PEgzPgorUlRfTUFQUzwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPiA8Qj5SVF9NQVBTPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPlJUIE1hcHM8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCNSVF9NQVBTX1ZBTFVFIj48Q09ERT5SVF9NQVBTX1ZBTFVFPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQVJPQ0FNIj48IS0tIC0tPjwvQT48SDM+CitBUk9DQU08L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT4gPEI+QVJPQ0FNPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPkFST0NBTTwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sI0FST0NBTV9WQUxVRSI+PENPREU+QVJPQ0FNX1ZBTFVFPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUk9TIj48IS0tIC0tPjwvQT48SDM+CitST1M8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT4gPEI+Uk9TPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPlJPUzwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sI1JPU19WQUxVRSI+PENPREU+Uk9TX1ZBTFVFPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iT1JPQ09TIj48IS0tIC0tPjwvQT48SDM+CitPUk9DT1M8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT4gPEI+T1JPQ09TPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPk9ST0NPUzwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sI09ST0NPU19WQUxVRSI+PENPREU+T1JPQ09TX1ZBTFVFPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVVJCSSI+PCEtLSAtLT48L0E+PEgzPgorVVJCSTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPiA8Qj5VUkJJPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPlVSQkk8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCNVUkJJX1ZBTFVFIj48Q09ERT5VUkJJX1ZBTFVFPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKworPCEtLSA9PT09PT09PT09PT0gRklFTEQgREVUQUlMID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iUlRfTUFQU19WQUxVRSI+PCEtLSAtLT48L0E+PEgzPgorUlRfTUFQU19WQUxVRTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgPEI+UlRfTUFQU19WQUxVRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgJzxlbT48Yj5SVCBNYXBzPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgJzxlbT48Yj5SVCBNYXBzPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdCBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwjUlRfTUFQUyI+PENPREU+UlRfTUFQUzwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljTWlkZGxld2FyZUtpbmQuUlRfTUFQU19WQUxVRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJBUk9DQU1fVkFMVUUiPjwhLS0gLS0+PC9BPjxIMz4KK0FST0NBTV9WQUxVRTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgPEI+QVJPQ0FNX1ZBTFVFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPkFST0NBTTwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mICc8ZW0+PGI+QVJPQ0FNPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdCBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwjQVJPQ0FNIj48Q09ERT5BUk9DQU08L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmVLaW5kLkFST0NBTV9WQUxVRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJST1NfVkFMVUUiPjwhLS0gLS0+PC9BPjxIMz4KK1JPU19WQUxVRTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgPEI+Uk9TX1ZBTFVFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPlJPUzwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mICc8ZW0+PGI+Uk9TPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdCBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwjUk9TIj48Q09ERT5ST1M8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmVLaW5kLlJPU19WQUxVRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJPUk9DT1NfVkFMVUUiPjwhLS0gLS0+PC9BPjxIMz4KK09ST0NPU19WQUxVRTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgPEI+T1JPQ09TX1ZBTFVFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPk9ST0NPUzwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mICc8ZW0+PGI+T1JPQ09TPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdCBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwjT1JPQ09TIj48Q09ERT5PUk9DT1M8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmVLaW5kLk9ST0NPU19WQUxVRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJVUkJJX1ZBTFVFIj48IS0tIC0tPjwvQT48SDM+CitVUkJJX1ZBTFVFPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGZpbmFsIGludCA8Qj5VUkJJX1ZBTFVFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPlVSQkk8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiAnPGVtPjxiPlVSQkk8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0IGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCNVUkJJIj48Q09ERT5VUkJJPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNNaWRkbGV3YXJlS2luZC5VUkJJX1ZBTFVFIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlZBTFVFUyI+PCEtLSAtLT48L0E+PEgzPgorVkFMVUVTPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGZpbmFsIGphdmEudXRpbC5MaXN0Jmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0E+Jmd0OyA8Qj5WQUxVRVM8L0I+PC9QUkU+Cis8REw+Cis8REQ+QSBwdWJsaWMgcmVhZC1vbmx5IGxpc3Qgb2YgYWxsIHRoZSAnPGVtPjxiPlJvYm90aWMgTWlkZGxld2FyZSBLaW5kPC9iPjwvZW0+JyBlbnVtZXJhdG9ycy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJ2YWx1ZXMoKSI+PCEtLSAtLT48L0E+PEgzPgordmFsdWVzPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGZpbmFsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0E+W10gPEI+dmFsdWVzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhbiBhcnJheSBjb250YWluaW5nIHRoZSBjb25zdGFudHMgb2YgdGhpcyBlbnVtIHR5cGUsIGluCit0aGUgb3JkZXIgdGhleSdyZSBkZWNsYXJlZC4gIFRoaXMgbWV0aG9kIG1heSBiZSB1c2VkIHRvIGl0ZXJhdGUKK292ZXIgdGhlIGNvbnN0YW50cyBhcyBmb2xsb3dzOgorPHByZT4KK2ZvcihSb2JvdGljTWlkZGxld2FyZUtpbmQgYyA6IFJvYm90aWNNaWRkbGV3YXJlS2luZC52YWx1ZXMoKSkKKyAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKGMpOworPC9wcmU+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YW4gYXJyYXkgY29udGFpbmluZyB0aGUgY29uc3RhbnRzIG9mIHRoaXMgZW51bSB0eXBlLCBpbgordGhlIG9yZGVyIHRoZXkncmUgZGVjbGFyZWQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InZhbHVlT2YoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3ZhbHVlT2Y8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT4gPEI+dmFsdWVPZjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25hbWUpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgZW51bSBjb25zdGFudCBvZiB0aGlzIHR5cGUgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUuCitUaGUgc3RyaW5nIG11c3QgbWF0Y2ggPEk+ZXhhY3RseTwvST4gYW4gaWRlbnRpZmllciB1c2VkIHRvIGRlY2xhcmUgYW4KK2VudW0gY29uc3RhbnQgaW4gdGhpcyB0eXBlLiAgKEV4dHJhbmVvdXMgd2hpdGVzcGFjZSBjaGFyYWN0ZXJzIGFyZSAKK25vdCBwZXJtaXR0ZWQuKQorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uYW1lPC9DT0RFPiAtIHRoZSBuYW1lIG9mIHRoZSBlbnVtIGNvbnN0YW50IHRvIGJlIHJldHVybmVkLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgZW51bSBjb25zdGFudCB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZQorPERUPjxCPlRocm93czo8L0I+Cis8REQ+PENPREU+amF2YS5sYW5nLklsbGVnYWxBcmd1bWVudEV4Y2VwdGlvbjwvQ09ERT4gLSBpZiB0aGlzIGVudW0gdHlwZSBoYXMgbm8gY29uc3RhbnQKK3dpdGggdGhlIHNwZWNpZmllZCBuYW1lPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXQoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2dldDwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPiA8Qj5nZXQ8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtsaXRlcmFsKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlICc8ZW0+PGI+Um9ib3RpYyBNaWRkbGV3YXJlIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGxpdGVyYWwgdmFsdWUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0QnlOYW1lKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitnZXRCeU5hbWU8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT4gPEI+Z2V0QnlOYW1lPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmFtZSk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSAnPGVtPjxiPlJvYm90aWMgTWlkZGxld2FyZSBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitnZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT4gPEI+Z2V0PC9CPihpbnQmbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSAnPGVtPjxiPlJvYm90aWMgTWlkZGxld2FyZSBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBpbnRlZ2VyIHZhbHVlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFZhbHVlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFZhbHVlPC9IMz4KKzxQUkU+CitwdWJsaWMgaW50IDxCPmdldFZhbHVlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5nZXRWYWx1ZTwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FbnVtZXJhdG9yPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TmFtZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXROYW1lPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXROYW1lPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5nZXROYW1lPC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3I8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRMaXRlcmFsKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldExpdGVyYWw8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldExpdGVyYWw8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmdldExpdGVyYWw8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InRvU3RyaW5nKCkiPjwhLS0gLS0+PC9BPjxIMz4KK3RvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj50b1N0cmluZzwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIGxpdGVyYWwgdmFsdWUgb2YgdGhlIGVudW1lcmF0b3IsIHdoaWNoIGlzIGl0cyBzdHJpbmcgcmVwcmVzZW50YXRpb24uCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT50b1N0cmluZzwvQ09ERT4gaW4gY2xhc3MgPENPREU+amF2YS5sYW5nLkVudW0mbHQ7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT4mZ3Q7PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNlbnVtX2NvbnN0YW50X3N1bW1hcnkiPkVOVU0gQ09OU1RBTlRTPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZW51bV9jb25zdGFudF9kZXRhaWwiPkVOVU0gQ09OU1RBTlRTPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1NpbXVsYXRvci5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1NpbXVsYXRvci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJjNGY0NzAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwKQEAgLTAsMCArMSwyMjggQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyNyBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1JvYm90aWNTaW11bGF0b3IKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY1NpbXVsYXRvciBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlJvYm90aWNTaW11bGF0b3IiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUm9ib3RpY1NpbXVsYXRvci5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1NpbXVsYXRvci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlJvYm90aWNTaW11bGF0b3IuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0ZPTlQ+Cis8QlI+CitJbnRlcmZhY2UgUm9ib3RpY1NpbXVsYXRvcjwvSDI+Cis8REw+Cis8RFQ+PEI+QWxsIFN1cGVyaW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGxhdGZvcm08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIFN1YmludGVyZmFjZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QmxlbmRlck1vcnNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkN5Y2FiVEs8L0E+PC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIEltcGxlbWVudGluZyBDbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5CbGVuZGVyTW9yc2VJbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ3ljYWJUS0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5DeWNhYlRLSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTaW11bGF0b3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY1NpbXVsYXRvckltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPlJvYm90aWNTaW11bGF0b3I8L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGF0Zm9ybTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Sb2JvdGljIFNpbXVsYXRvcjwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdGljU2ltdWxhdG9yKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFJvYm90aWNTaW11bGF0b3IoKTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGxhdGZvcm0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGF0Zm9ybTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCNnZXRCYXNlX05vZGUoKSI+Z2V0QmFzZV9Ob2RlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwjc2V0QmFzZV9Ob2RlKG9yZy5lY2xpcHNlLnVtbDIudW1sLk5vZGUpIj5zZXRCYXNlX05vZGU8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RpY1NpbXVsYXRvci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkyYzVjNzUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwKQEAgLTAsMCArMSwzNTIgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyNyBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1JvYm90aWNTeXN0ZW0KKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY1N5c3RlbSBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlJvYm90aWNTeXN0ZW0iOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUm9ib3RpY1N5c3RlbS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlJvYm90aWNTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvRk9OVD4KKzxCUj4KK0ludGVyZmFjZSBSb2JvdGljU3lzdGVtPC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBTdWJpbnRlcmZhY2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWN0dWF0b3JTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5FbmdpbmVTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5HUFNTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkltYWdlU2Vuc29yU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBJbXBsZW1lbnRpbmcgQ2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BY3R1YXRvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BY3R1YXRvclN5c3RlbUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q2FtZXJhU3lzdGVtSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5FbmdpbmVTeXN0ZW1JbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR1BTU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkdQU1N5c3RlbUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9JbWFnZVNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5JbWFnZVNlbnNvclN5c3RlbUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MaWRhclN5c3RlbUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU3lzdGVtSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JTeXN0ZW1JbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2hlZWxTeXN0ZW1JbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5Sb2JvdGljU3lzdGVtPC9CPjxEVD5leHRlbmRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Sb2JvdGljIFN5c3RlbTwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisKKyA8cD4KKyBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgPHVsPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxQb3NpdGlvbigpIj48Q09ERT48ZW0+TG9jYWwgUG9zaXRpb248L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsT3JpZW50YXRpb24oKSI+PENPREU+PGVtPkxvY2FsIE9yaWVudGF0aW9uPC9lbT48L0NPREU+PC9BPjwvbGk+CisgPC91bD4KKyA8L3A+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdGljU3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFJvYm90aWNTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbE9yaWVudGF0aW9uKCkiPmdldExvY2FsT3JpZW50YXRpb248L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbFBvc2l0aW9uKCkiPmdldExvY2FsUG9zaXRpb248L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Mb2NhbCBQb3NpdGlvbjwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNzZXRMb2NhbE9yaWVudGF0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMb2NhbE9yaWVudGF0aW9uPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsT3JpZW50YXRpb24oKSI+PENPREU+PGVtPkxvY2FsIE9yaWVudGF0aW9uPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNzZXRMb2NhbFBvc2l0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMb2NhbFBvc2l0aW9uPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsUG9zaXRpb24oKSI+PENPREU+PGVtPkxvY2FsIFBvc2l0aW9uPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0TG9jYWxQb3NpdGlvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRMb2NhbFBvc2l0aW9uPC9IMz4KKzxQUkU+CitqYXZhLmxhbmcuU3RyaW5nIDxCPmdldExvY2FsUG9zaXRpb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Mb2NhbCBQb3NpdGlvbjwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+TG9jYWwgUG9zaXRpb248L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPkxvY2FsIFBvc2l0aW9uPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPnNldExvY2FsUG9zaXRpb24oU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90aWNTeXN0ZW1fTG9jYWxQb3NpdGlvbigpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRSb2JvdGljU3lzdGVtX0xvY2FsUG9zaXRpb24oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRMb2NhbFBvc2l0aW9uKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRMb2NhbFBvc2l0aW9uPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldExvY2FsUG9zaXRpb248L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxQb3NpdGlvbigpIj48Q09ERT48ZW0+TG9jYWwgUG9zaXRpb248L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5Mb2NhbCBQb3NpdGlvbjwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbFBvc2l0aW9uKCkiPjxDT0RFPmdldExvY2FsUG9zaXRpb24oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRMb2NhbE9yaWVudGF0aW9uKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldExvY2FsT3JpZW50YXRpb248L0gzPgorPFBSRT4KK2phdmEubGFuZy5TdHJpbmcgPEI+Z2V0TG9jYWxPcmllbnRhdGlvbjwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkxvY2FsIE9yaWVudGF0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5Mb2NhbCBPcmllbnRhdGlvbjwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+TG9jYWwgT3JpZW50YXRpb248L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjc2V0TG9jYWxPcmllbnRhdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+c2V0TG9jYWxPcmllbnRhdGlvbihTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Um9ib3RpY1N5c3RlbV9Mb2NhbE9yaWVudGF0aW9uKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFJvYm90aWNTeXN0ZW1fTG9jYWxPcmllbnRhdGlvbigpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldExvY2FsT3JpZW50YXRpb24oamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldExvY2FsT3JpZW50YXRpb248L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0TG9jYWxPcmllbnRhdGlvbjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbE9yaWVudGF0aW9uKCkiPjxDT0RFPjxlbT5Mb2NhbCBPcmllbnRhdGlvbjwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkxvY2FsIE9yaWVudGF0aW9uPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsT3JpZW50YXRpb24oKSI+PENPREU+Z2V0TG9jYWxPcmllbnRhdGlvbigpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1JvYm90aWNTeXN0ZW0uaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdGljU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yRHJpdmVyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjQxODkwZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5odG1sCkBAIC0wLDAgKzEsMjI1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjggQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitTZW5zb3JEcml2ZXIKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2Vuc29yRHJpdmVyIGludGVyZmFjZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iU2Vuc29yRHJpdmVyIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1NlbnNvckRyaXZlci5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yRHJpdmVyLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU2Vuc29yRHJpdmVyLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIFNlbnNvckRyaXZlcjwvSDI+Cis8REw+Cis8RFQ+PEI+QWxsIFN1cGVyaW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U29mdHdhcmU8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIEltcGxlbWVudGluZyBDbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvckRyaXZlckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JEcml2ZXJJbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5TZW5zb3JEcml2ZXI8L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Tb2Z0d2FyZTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TZW5zb3IgRHJpdmVyPC9iPjwvZW0+Jy4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNlbnNvckRyaXZlcigpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRTZW5zb3JEcml2ZXIoKTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU29mdHdhcmUiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Tb2Z0d2FyZTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXREZWFkbGluZSgpIj5nZXREZWFkbGluZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldFBlcmlvZCgpIj5nZXRQZXJpb2Q8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXRQcmlvcml0eSgpIj5nZXRQcmlvcml0eTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldFdjZXQoKSI+Z2V0V2NldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2lzSXNQZXJpb2RpYygpIj5pc0lzUGVyaW9kaWM8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXREZWFkbGluZShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0RGVhZGxpbmU8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXRJc1BlcmlvZGljKGJvb2xlYW4pIj5zZXRJc1BlcmlvZGljPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjc2V0UGVyaW9kKGphdmEubGFuZy5TdHJpbmcpIj5zZXRQZXJpb2Q8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXRQcmlvcml0eShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0UHJpb3JpdHk8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXRXY2V0KGphdmEubGFuZy5TdHJpbmcpIj5zZXRXY2V0PC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU2Vuc29yRHJpdmVyLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JEcml2ZXIuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTZW5zb3JEcml2ZXIuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmExMTVmNAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sCkBAIC0wLDAgKzEsMzYxIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjggQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitTZW5zb3JTeXN0ZW0KKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2Vuc29yU3lzdGVtIGludGVyZmFjZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iU2Vuc29yU3lzdGVtIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1NlbnNvclN5c3RlbS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTZW5zb3JTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvRk9OVD4KKzxCUj4KK0ludGVyZmFjZSBTZW5zb3JTeXN0ZW08L0gyPgorPERMPgorPERUPjxCPkFsbCBTdXBlcmludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5BbGwgS25vd24gU3ViaW50ZXJmYWNlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5HUFNTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkltYWdlU2Vuc29yU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIEltcGxlbWVudGluZyBDbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5DYW1lcmFTeXN0ZW1JbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR1BTU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkdQU1N5c3RlbUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9JbWFnZVNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5JbWFnZVNlbnNvclN5c3RlbUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MaWRhclN5c3RlbUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlbnNvclN5c3RlbUltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPlNlbnNvclN5c3RlbTwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TZW5zb3IgU3lzdGVtPC9iPjwvZW0+Jy4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKworIDxwPgorIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyA8dWw+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI2dldEZyZXF1ZW5jeSgpIj48Q09ERT48ZW0+RnJlcXVlbmN5PC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI2dldElkZW50aWZpZXIoKSI+PENPREU+PGVtPklkZW50aWZpZXI8L2VtPjwvQ09ERT48L0E+PC9saT4KKyA8L3VsPgorIDwvcD4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNlbnNvclN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRTZW5zb3JTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI2dldEZyZXF1ZW5jeSgpIj5nZXRGcmVxdWVuY3k8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5GcmVxdWVuY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNnZXRJZGVudGlmaWVyKCkiPmdldElkZW50aWZpZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5JZGVudGlmaWVyPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjc2V0RnJlcXVlbmN5KGphdmEubGFuZy5TdHJpbmcpIj5zZXRGcmVxdWVuY3k8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNnZXRGcmVxdWVuY3koKSI+PENPREU+PGVtPkZyZXF1ZW5jeTwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNzZXRJZGVudGlmaWVyKGphdmEubGFuZy5TdHJpbmcpIj5zZXRJZGVudGlmaWVyPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjZ2V0SWRlbnRpZmllcigpIj48Q09ERT48ZW0+SWRlbnRpZmllcjwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbE9yaWVudGF0aW9uKCkiPmdldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsUG9zaXRpb24oKSI+Z2V0TG9jYWxQb3NpdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjc2V0TG9jYWxPcmllbnRhdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxPcmllbnRhdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjc2V0TG9jYWxQb3NpdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxQb3NpdGlvbjwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0RnJlcXVlbmN5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEZyZXF1ZW5jeTwvSDM+Cis8UFJFPgoramF2YS5sYW5nLlN0cmluZyA8Qj5nZXRGcmVxdWVuY3k8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5GcmVxdWVuY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkZyZXF1ZW5jeTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+RnJlcXVlbmN5PC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjc2V0RnJlcXVlbmN5KGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5zZXRGcmVxdWVuY3koU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNlbnNvclN5c3RlbV9GcmVxdWVuY3koKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0U2Vuc29yU3lzdGVtX0ZyZXF1ZW5jeSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldEZyZXF1ZW5jeShqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0RnJlcXVlbmN5PC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldEZyZXF1ZW5jeTwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI2dldEZyZXF1ZW5jeSgpIj48Q09ERT48ZW0+RnJlcXVlbmN5PC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+RnJlcXVlbmN5PC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjZ2V0RnJlcXVlbmN5KCkiPjxDT0RFPmdldEZyZXF1ZW5jeSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldElkZW50aWZpZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0SWRlbnRpZmllcjwvSDM+Cis8UFJFPgoramF2YS5sYW5nLlN0cmluZyA8Qj5nZXRJZGVudGlmaWVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+SWRlbnRpZmllcjwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+SWRlbnRpZmllcjwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+SWRlbnRpZmllcjwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI3NldElkZW50aWZpZXIoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPnNldElkZW50aWZpZXIoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNlbnNvclN5c3RlbV9JZGVudGlmaWVyKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFNlbnNvclN5c3RlbV9JZGVudGlmaWVyKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0SWRlbnRpZmllcihqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0SWRlbnRpZmllcjwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRJZGVudGlmaWVyPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjZ2V0SWRlbnRpZmllcigpIj48Q09ERT48ZW0+SWRlbnRpZmllcjwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPklkZW50aWZpZXI8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNnZXRJZGVudGlmaWVyKCkiPjxDT0RFPmdldElkZW50aWZpZXIoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9TZW5zb3JTeXN0ZW0uaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JEcml2ZXIuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU2Vuc29yU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjYyMWYyMQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sCkBAIC0wLDAgKzEsNjE3IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjggQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitTZXJ2aWNlRmxvd0tpbmQKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2VydmljZUZsb3dLaW5kIGNsYXNzIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJTZXJ2aWNlRmxvd0tpbmQiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU2VydmljZUZsb3dLaW5kLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2VudW1fY29uc3RhbnRfc3VtbWFyeSI+RU5VTSBDT05TVEFOVFM8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwOzxBIEhSRUY9IiNlbnVtX2NvbnN0YW50X2RldGFpbCI+RU5VTSBDT05TVEFOVFM8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9kZXRhaWwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorRW51bSBTZXJ2aWNlRmxvd0tpbmQ8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPmphdmEubGFuZy5FbnVtJmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlRmxvd0tpbmQ8L0E+Jmd0OworICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlRmxvd0tpbmQ8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5qYXZhLmlvLlNlcmlhbGl6YWJsZSwgamF2YS5sYW5nLkNvbXBhcmFibGUmbHQ7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT4mZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGVudW0gPEI+U2VydmljZUZsb3dLaW5kPC9CPjxEVD5leHRlbmRzIGphdmEubGFuZy5FbnVtJmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlRmxvd0tpbmQ8L0E+Jmd0OzxEVD5pbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FbnVtZXJhdG9yPC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbGl0ZXJhbHMgb2YgdGhlIGVudW1lcmF0aW9uICc8ZW0+PGI+U2VydmljZSBGbG93IEtpbmQ8L2I+PC9lbT4nLAorIGFuZCB1dGlsaXR5IG1ldGhvZHMgZm9yIHdvcmtpbmcgd2l0aCB0aGVtLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U2VydmljZUZsb3dLaW5kKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFNlcnZpY2VGbG93S2luZCgpPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT09PT0gRU5VTSBDT05TVEFOVCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJlbnVtX2NvbnN0YW50X3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5FbnVtIENvbnN0YW50IFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sI1BST1ZJREVEIj5QUk9WSURFRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgJzxlbT48Yj5Qcm92aWRlZDwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3Q8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCNSRVFVSVJFRCI+UkVRVUlSRUQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlICc8ZW0+PGI+UmVxdWlyZWQ8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwjUFJPVklERURfVkFMVUUiPlBST1ZJREVEX1ZBTFVFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSAnPGVtPjxiPlByb3ZpZGVkPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwjUkVRVUlSRURfVkFMVUUiPlJFUVVJUkVEX1ZBTFVFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSAnPGVtPjxiPlJlcXVpcmVkPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEudXRpbC5MaXN0Jmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlRmxvd0tpbmQ8L0E+Jmd0OzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwjVkFMVUVTIj5WQUxVRVM8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSBwdWJsaWMgcmVhZC1vbmx5IGxpc3Qgb2YgYWxsIHRoZSAnPGVtPjxiPlNlcnZpY2UgRmxvdyBLaW5kPC9iPjwvZW0+JyBlbnVtZXJhdG9yczwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sI2dldChpbnQpIj5nZXQ8L0E+PC9CPihpbnQmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlICc8ZW0+PGI+U2VydmljZSBGbG93IEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGludGVnZXIgdmFsdWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sI2dldChqYXZhLmxhbmcuU3RyaW5nKSI+Z2V0PC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO2xpdGVyYWwpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSAnPGVtPjxiPlNlcnZpY2UgRmxvdyBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBsaXRlcmFsIHZhbHVlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlRmxvd0tpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCNnZXRCeU5hbWUoamF2YS5sYW5nLlN0cmluZykiPmdldEJ5TmFtZTwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuYW1lKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgJzxlbT48Yj5TZXJ2aWNlIEZsb3cgS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCNnZXRMaXRlcmFsKCkiPmdldExpdGVyYWw8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sI2dldE5hbWUoKSI+Z2V0TmFtZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCNnZXRWYWx1ZSgpIj5nZXRWYWx1ZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwjdG9TdHJpbmcoKSI+dG9TdHJpbmc8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBsaXRlcmFsIHZhbHVlIG9mIHRoZSBlbnVtZXJhdG9yLCB3aGljaCBpcyBpdHMgc3RyaW5nIHJlcHJlc2VudGF0aW9uPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlRmxvd0tpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCN2YWx1ZU9mKGphdmEubGFuZy5TdHJpbmcpIj52YWx1ZU9mPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25hbWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBlbnVtIGNvbnN0YW50IG9mIHRoaXMgdHlwZSB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT5bXTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwjdmFsdWVzKCkiPnZhbHVlczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYW4gYXJyYXkgY29udGFpbmluZyB0aGUgY29uc3RhbnRzIG9mIHRoaXMgZW51bSB0eXBlLCBpbgordGhlIG9yZGVyIHRoZXkncmUgZGVjbGFyZWQuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuRW51bSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLkVudW08L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5jb21wYXJlVG8sIGVxdWFscywgZ2V0RGVjbGFyaW5nQ2xhc3MsIGhhc2hDb2RlLCBuYW1lLCBvcmRpbmFsLCB2YWx1ZU9mPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmdldENsYXNzLCBub3RpZnksIG5vdGlmeUFsbCwgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBFTlVNIENPTlNUQU5UIERFVEFJTCA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZW51bV9jb25zdGFudF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5FbnVtIENvbnN0YW50IERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJQUk9WSURFRCI+PCEtLSAtLT48L0E+PEgzPgorUFJPVklERUQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT4gPEI+UFJPVklERUQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlICc8ZW0+PGI+UHJvdmlkZWQ8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCNQUk9WSURFRF9WQUxVRSI+PENPREU+UFJPVklERURfVkFMVUU8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJSRVFVSVJFRCI+PCEtLSAtLT48L0E+PEgzPgorUkVRVUlSRUQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT4gPEI+UkVRVUlSRUQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlICc8ZW0+PGI+UmVxdWlyZWQ8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCNSRVFVSVJFRF9WQUxVRSI+PENPREU+UkVRVUlSRURfVkFMVUU8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorCis8IS0tID09PT09PT09PT09PSBGSUVMRCBERVRBSUwgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJQUk9WSURFRF9WQUxVRSI+PCEtLSAtLT48L0E+PEgzPgorUFJPVklERURfVkFMVUU8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgaW50IDxCPlBST1ZJREVEX1ZBTFVFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPlByb3ZpZGVkPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgJzxlbT48Yj5Qcm92aWRlZDwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sI1BST1ZJREVEIj48Q09ERT5QUk9WSURFRDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlRmxvd0tpbmQuUFJPVklERURfVkFMVUUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iUkVRVUlSRURfVkFMVUUiPjwhLS0gLS0+PC9BPjxIMz4KK1JFUVVJUkVEX1ZBTFVFPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGZpbmFsIGludCA8Qj5SRVFVSVJFRF9WQUxVRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgJzxlbT48Yj5SZXF1aXJlZDwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mICc8ZW0+PGI+UmVxdWlyZWQ8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0IGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCNSRVFVSVJFRCI+PENPREU+UkVRVUlSRUQ8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2VydmljZUZsb3dLaW5kLlJFUVVJUkVEX1ZBTFVFIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlZBTFVFUyI+PCEtLSAtLT48L0E+PEgzPgorVkFMVUVTPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGZpbmFsIGphdmEudXRpbC5MaXN0Jmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlRmxvd0tpbmQ8L0E+Jmd0OyA8Qj5WQUxVRVM8L0I+PC9QUkU+Cis8REw+Cis8REQ+QSBwdWJsaWMgcmVhZC1vbmx5IGxpc3Qgb2YgYWxsIHRoZSAnPGVtPjxiPlNlcnZpY2UgRmxvdyBLaW5kPC9iPjwvZW0+JyBlbnVtZXJhdG9ycy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8L0RMPgorPC9ETD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJ2YWx1ZXMoKSI+PCEtLSAtLT48L0E+PEgzPgordmFsdWVzPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGZpbmFsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlRmxvd0tpbmQ8L0E+W10gPEI+dmFsdWVzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhbiBhcnJheSBjb250YWluaW5nIHRoZSBjb25zdGFudHMgb2YgdGhpcyBlbnVtIHR5cGUsIGluCit0aGUgb3JkZXIgdGhleSdyZSBkZWNsYXJlZC4gIFRoaXMgbWV0aG9kIG1heSBiZSB1c2VkIHRvIGl0ZXJhdGUKK292ZXIgdGhlIGNvbnN0YW50cyBhcyBmb2xsb3dzOgorPHByZT4KK2ZvcihTZXJ2aWNlRmxvd0tpbmQgYyA6IFNlcnZpY2VGbG93S2luZC52YWx1ZXMoKSkKKyAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKGMpOworPC9wcmU+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YW4gYXJyYXkgY29udGFpbmluZyB0aGUgY29uc3RhbnRzIG9mIHRoaXMgZW51bSB0eXBlLCBpbgordGhlIG9yZGVyIHRoZXkncmUgZGVjbGFyZWQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InZhbHVlT2YoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3ZhbHVlT2Y8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT4gPEI+dmFsdWVPZjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25hbWUpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgZW51bSBjb25zdGFudCBvZiB0aGlzIHR5cGUgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUuCitUaGUgc3RyaW5nIG11c3QgbWF0Y2ggPEk+ZXhhY3RseTwvST4gYW4gaWRlbnRpZmllciB1c2VkIHRvIGRlY2xhcmUgYW4KK2VudW0gY29uc3RhbnQgaW4gdGhpcyB0eXBlLiAgKEV4dHJhbmVvdXMgd2hpdGVzcGFjZSBjaGFyYWN0ZXJzIGFyZSAKK25vdCBwZXJtaXR0ZWQuKQorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uYW1lPC9DT0RFPiAtIHRoZSBuYW1lIG9mIHRoZSBlbnVtIGNvbnN0YW50IHRvIGJlIHJldHVybmVkLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgZW51bSBjb25zdGFudCB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZQorPERUPjxCPlRocm93czo8L0I+Cis8REQ+PENPREU+amF2YS5sYW5nLklsbGVnYWxBcmd1bWVudEV4Y2VwdGlvbjwvQ09ERT4gLSBpZiB0aGlzIGVudW0gdHlwZSBoYXMgbm8gY29uc3RhbnQKK3dpdGggdGhlIHNwZWNpZmllZCBuYW1lPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXQoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2dldDwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZUZsb3dLaW5kPC9BPiA8Qj5nZXQ8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtsaXRlcmFsKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlICc8ZW0+PGI+U2VydmljZSBGbG93IEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGxpdGVyYWwgdmFsdWUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0QnlOYW1lKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitnZXRCeU5hbWU8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT4gPEI+Z2V0QnlOYW1lPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmFtZSk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSAnPGVtPjxiPlNlcnZpY2UgRmxvdyBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitnZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT4gPEI+Z2V0PC9CPihpbnQmbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSAnPGVtPjxiPlNlcnZpY2UgRmxvdyBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBpbnRlZ2VyIHZhbHVlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFZhbHVlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFZhbHVlPC9IMz4KKzxQUkU+CitwdWJsaWMgaW50IDxCPmdldFZhbHVlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+Z2V0VmFsdWU8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXROYW1lKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldE5hbWU8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldE5hbWU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5nZXROYW1lPC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3I8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBuYW1lPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRMaXRlcmFsKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldExpdGVyYWw8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldExpdGVyYWw8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5nZXRMaXRlcmFsPC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3I8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBsaXRlcmFsPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJ0b1N0cmluZygpIj48IS0tIC0tPjwvQT48SDM+Cit0b1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+dG9TdHJpbmc8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBsaXRlcmFsIHZhbHVlIG9mIHRoZSBlbnVtZXJhdG9yLCB3aGljaCBpcyBpdHMgc3RyaW5nIHJlcHJlc2VudGF0aW9uLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+dG9TdHJpbmc8L0NPREU+IGluIGNsYXNzIDxDT0RFPmphdmEubGFuZy5FbnVtJmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlRmxvd0tpbmQ8L0E+Jmd0OzwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1NlcnZpY2VGbG93S2luZC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU2VydmljZUZsb3dLaW5kLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNlbnVtX2NvbnN0YW50X3N1bW1hcnkiPkVOVU0gQ09OU1RBTlRTPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZW51bV9jb25zdGFudF9kZXRhaWwiPkVOVU0gQ09OU1RBTlRTPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWRjNGVjMAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwKQEAgLTAsMCArMSwyOTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyOCBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1NlcnZpY2VQb3J0Cis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlcnZpY2VQb3J0IGludGVyZmFjZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iU2VydmljZVBvcnQiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU2VydmljZVBvcnQuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTZXJ2aWNlUG9ydC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIFNlcnZpY2VQb3J0PC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBvcnQ8L0E+PC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIEltcGxlbWVudGluZyBDbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlcnZpY2VQb3J0SW1wbDwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBpbnRlcmZhY2UgPEI+U2VydmljZVBvcnQ8L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBvcnQ8L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U2VydmljZSBQb3J0PC9iPjwvZW0+Jy4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKworIDxwPgorIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyA8dWw+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwjZ2V0S2luZCgpIj48Q09ERT48ZW0+S2luZDwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U2VydmljZVBvcnQoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0U2VydmljZVBvcnQoKTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlRmxvd0tpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sI2dldEtpbmQoKSI+Z2V0S2luZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPktpbmQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCNzZXRLaW5kKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlRmxvd0tpbmQpIj5zZXRLaW5kPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT4mbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwjZ2V0S2luZCgpIj48Q09ERT48ZW0+S2luZDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBvcnQiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBvcnQ8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCNnZXRCYXNlX1BvcnQoKSI+Z2V0QmFzZV9Qb3J0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCNnZXRTeW5jaHJvbml6YXRpb25Qb2xpY3koKSI+Z2V0U3luY2hyb25pemF0aW9uUG9saWN5PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCNzZXRCYXNlX1BvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPnNldEJhc2VfUG9ydDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwjc2V0U3luY2hyb25pemF0aW9uUG9saWN5KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeW5jaHJvbml6YXRpb25LaW5kKSI+c2V0U3luY2hyb25pemF0aW9uUG9saWN5PC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0S2luZCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRLaW5kPC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZUZsb3dLaW5kPC9BPiA8Qj5nZXRLaW5kPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+S2luZDwvYj48L2VtPicgYXR0cmlidXRlLgorIFRoZSBsaXRlcmFscyBhcmUgZnJvbSB0aGUgZW51bWVyYXRpb24gPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlNlcnZpY2VGbG93S2luZDwvQ09ERT48L0E+LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+S2luZDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+S2luZDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlNlcnZpY2VGbG93S2luZDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sI3NldEtpbmQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlcnZpY2VGbG93S2luZCkiPjxDT0RFPnNldEtpbmQoU2VydmljZUZsb3dLaW5kKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNlcnZpY2VQb3J0X0tpbmQoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0U2VydmljZVBvcnRfS2luZCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldEtpbmQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlcnZpY2VGbG93S2luZCkiPjwhLS0gLS0+PC9BPjxIMz4KK3NldEtpbmQ8L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0S2luZDwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT4mbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sI2dldEtpbmQoKSI+PENPREU+PGVtPktpbmQ8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5LaW5kPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+U2VydmljZUZsb3dLaW5kPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwjZ2V0S2luZCgpIj48Q09ERT5nZXRLaW5kKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU2VydmljZVBvcnQuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTZXJ2aWNlUG9ydC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zYjI4YTBhCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbApAQCAtMCwwICsxLDcwOCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI4IENFVCAyMDEyIC0tPgorPFRJVExFPgorU2hhZGUKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2hhZGUgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlNoYWRlIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1NoYWRlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNoYWRlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNlbnVtX2NvbnN0YW50X3N1bW1hcnkiPkVOVU0gQ09OU1RBTlRTPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZW51bV9jb25zdGFudF9kZXRhaWwiPkVOVU0gQ09OU1RBTlRTPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvRk9OVD4KKzxCUj4KK0VudW0gU2hhZGU8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPmphdmEubGFuZy5FbnVtJmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPiZndDsKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2hhZGU8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5qYXZhLmlvLlNlcmlhbGl6YWJsZSwgamF2YS5sYW5nLkNvbXBhcmFibGUmbHQ7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2hhZGU8L0E+Jmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3I8L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBlbnVtIDxCPlNoYWRlPC9CPjxEVD5leHRlbmRzIGphdmEubGFuZy5FbnVtJmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPiZndDs8RFQ+aW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIGxpdGVyYWxzIG9mIHRoZSBlbnVtZXJhdGlvbiAnPGVtPjxiPlNoYWRlPC9iPjwvZW0+JywKKyBhbmQgdXRpbGl0eSBtZXRob2RzIGZvciB3b3JraW5nIHdpdGggdGhlbS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNoYWRlKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFNoYWRlKCk8L0NPREU+PC9BPjwvREw+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PT09PSBFTlVNIENPTlNUQU5UIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImVudW1fY29uc3RhbnRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkVudW0gQ29uc3RhbnQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCNCT1VOREJPWCI+Qk9VTkRCT1g8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlICc8ZW0+PGI+Qk9VTkRCT1g8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCNTT0xJRCI+U09MSUQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlICc8ZW0+PGI+U09MSUQ8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCNURVhUVVJFRCI+VEVYVFVSRUQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlICc8ZW0+PGI+VEVYVFVSRUQ8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCNXSVJFRlJBTUUiPldJUkVGUkFNRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgJzxlbT48Yj5XSVJFRlJBTUU8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCNCT1VOREJPWF9WQUxVRSI+Qk9VTkRCT1hfVkFMVUU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlICc8ZW0+PGI+Qk9VTkRCT1g8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sI1NPTElEX1ZBTFVFIj5TT0xJRF9WQUxVRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgJzxlbT48Yj5TT0xJRDwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwjVEVYVFVSRURfVkFMVUUiPlRFWFRVUkVEX1ZBTFVFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSAnPGVtPjxiPlRFWFRVUkVEPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEudXRpbC5MaXN0Jmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPiZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwjVkFMVUVTIj5WQUxVRVM8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSBwdWJsaWMgcmVhZC1vbmx5IGxpc3Qgb2YgYWxsIHRoZSAnPGVtPjxiPlNoYWRlPC9iPjwvZW0+JyBlbnVtZXJhdG9yczwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwjV0lSRUZSQU1FX1ZBTFVFIj5XSVJFRlJBTUVfVkFMVUU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlICc8ZW0+PGI+V0lSRUZSQU1FPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwjZ2V0KGludCkiPmdldDwvQT48L0I+KGludCZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgJzxlbT48Yj5TaGFkZTwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgaW50ZWdlciB2YWx1ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwjZ2V0KGphdmEubGFuZy5TdHJpbmcpIj5nZXQ8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bGl0ZXJhbCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlICc8ZW0+PGI+U2hhZGU8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGxpdGVyYWwgdmFsdWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2hhZGU8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sI2dldEJ5TmFtZShqYXZhLmxhbmcuU3RyaW5nKSI+Z2V0QnlOYW1lPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25hbWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSAnPGVtPjxiPlNoYWRlPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwjZ2V0TGl0ZXJhbCgpIj5nZXRMaXRlcmFsPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwjZ2V0TmFtZSgpIj5nZXROYW1lPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCNnZXRWYWx1ZSgpIj5nZXRWYWx1ZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sI3RvU3RyaW5nKCkiPnRvU3RyaW5nPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbGl0ZXJhbCB2YWx1ZSBvZiB0aGUgZW51bWVyYXRvciwgd2hpY2ggaXMgaXRzIHN0cmluZyByZXByZXNlbnRhdGlvbjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwjdmFsdWVPZihqYXZhLmxhbmcuU3RyaW5nKSI+dmFsdWVPZjwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuYW1lKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgZW51bSBjb25zdGFudCBvZiB0aGlzIHR5cGUgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPltdPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sI3ZhbHVlcygpIj52YWx1ZXM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGFuIGFycmF5IGNvbnRhaW5pbmcgdGhlIGNvbnN0YW50cyBvZiB0aGlzIGVudW0gdHlwZSwgaW4KK3RoZSBvcmRlciB0aGV5J3JlIGRlY2xhcmVkLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLkVudW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5FbnVtPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Y29tcGFyZVRvLCBlcXVhbHMsIGdldERlY2xhcmluZ0NsYXNzLCBoYXNoQ29kZSwgbmFtZSwgb3JkaW5hbCwgdmFsdWVPZjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXRDbGFzcywgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gRU5VTSBDT05TVEFOVCBERVRBSUwgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImVudW1fY29uc3RhbnRfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+RW51bSBDb25zdGFudCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iV0lSRUZSQU1FIj48IS0tIC0tPjwvQT48SDM+CitXSVJFRlJBTUU8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2hhZGU8L0E+IDxCPldJUkVGUkFNRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgJzxlbT48Yj5XSVJFRlJBTUU8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sI1dJUkVGUkFNRV9WQUxVRSI+PENPREU+V0lSRUZSQU1FX1ZBTFVFPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQk9VTkRCT1giPjwhLS0gLS0+PC9BPjxIMz4KK0JPVU5EQk9YPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGZpbmFsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPiA8Qj5CT1VOREJPWDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgJzxlbT48Yj5CT1VOREJPWDwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwjQk9VTkRCT1hfVkFMVUUiPjxDT0RFPkJPVU5EQk9YX1ZBTFVFPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU09MSUQiPjwhLS0gLS0+PC9BPjxIMz4KK1NPTElEPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGZpbmFsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPiA8Qj5TT0xJRDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgJzxlbT48Yj5TT0xJRDwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwjU09MSURfVkFMVUUiPjxDT0RFPlNPTElEX1ZBTFVFPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVEVYVFVSRUQiPjwhLS0gLS0+PC9BPjxIMz4KK1RFWFRVUkVEPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGZpbmFsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPiA8Qj5URVhUVVJFRDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgJzxlbT48Yj5URVhUVVJFRDwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwjVEVYVFVSRURfVkFMVUUiPjxDT0RFPlRFWFRVUkVEX1ZBTFVFPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKworPCEtLSA9PT09PT09PT09PT0gRklFTEQgREVUQUlMID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iV0lSRUZSQU1FX1ZBTFVFIj48IS0tIC0tPjwvQT48SDM+CitXSVJFRlJBTUVfVkFMVUU8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgaW50IDxCPldJUkVGUkFNRV9WQUxVRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgJzxlbT48Yj5XSVJFRlJBTUU8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiAnPGVtPjxiPldJUkVGUkFNRTwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwjV0lSRUZSQU1FIj48Q09ERT5XSVJFRlJBTUU8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2hhZGUuV0lSRUZSQU1FX1ZBTFVFIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkJPVU5EQk9YX1ZBTFVFIj48IS0tIC0tPjwvQT48SDM+CitCT1VOREJPWF9WQUxVRTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgPEI+Qk9VTkRCT1hfVkFMVUU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlICc8ZW0+PGI+Qk9VTkRCT1g8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiAnPGVtPjxiPkJPVU5EQk9YPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdCBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCNCT1VOREJPWCI+PENPREU+Qk9VTkRCT1g8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2hhZGUuQk9VTkRCT1hfVkFMVUUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iU09MSURfVkFMVUUiPjwhLS0gLS0+PC9BPjxIMz4KK1NPTElEX1ZBTFVFPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGZpbmFsIGludCA8Qj5TT0xJRF9WQUxVRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgJzxlbT48Yj5TT0xJRDwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mICc8ZW0+PGI+U09MSUQ8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0IGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sI1NPTElEIj48Q09ERT5TT0xJRDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TaGFkZS5TT0xJRF9WQUxVRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJURVhUVVJFRF9WQUxVRSI+PCEtLSAtLT48L0E+PEgzPgorVEVYVFVSRURfVkFMVUU8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgaW50IDxCPlRFWFRVUkVEX1ZBTFVFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPlRFWFRVUkVEPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgJzxlbT48Yj5URVhUVVJFRDwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwjVEVYVFVSRUQiPjxDT0RFPlRFWFRVUkVEPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNoYWRlLlRFWFRVUkVEX1ZBTFVFIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlZBTFVFUyI+PCEtLSAtLT48L0E+PEgzPgorVkFMVUVTPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGZpbmFsIGphdmEudXRpbC5MaXN0Jmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPiZndDsgPEI+VkFMVUVTPC9CPjwvUFJFPgorPERMPgorPEREPkEgcHVibGljIHJlYWQtb25seSBsaXN0IG9mIGFsbCB0aGUgJzxlbT48Yj5TaGFkZTwvYj48L2VtPicgZW51bWVyYXRvcnMuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0idmFsdWVzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK3ZhbHVlczwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT5bXSA8Qj52YWx1ZXM8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIGFuIGFycmF5IGNvbnRhaW5pbmcgdGhlIGNvbnN0YW50cyBvZiB0aGlzIGVudW0gdHlwZSwgaW4KK3RoZSBvcmRlciB0aGV5J3JlIGRlY2xhcmVkLiAgVGhpcyBtZXRob2QgbWF5IGJlIHVzZWQgdG8gaXRlcmF0ZQorb3ZlciB0aGUgY29uc3RhbnRzIGFzIGZvbGxvd3M6Cis8cHJlPgorZm9yKFNoYWRlIGMgOiBTaGFkZS52YWx1ZXMoKSkKKyAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKGMpOworPC9wcmU+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YW4gYXJyYXkgY29udGFpbmluZyB0aGUgY29uc3RhbnRzIG9mIHRoaXMgZW51bSB0eXBlLCBpbgordGhlIG9yZGVyIHRoZXkncmUgZGVjbGFyZWQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InZhbHVlT2YoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3ZhbHVlT2Y8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2hhZGU8L0E+IDxCPnZhbHVlT2Y8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuYW1lKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIGVudW0gY29uc3RhbnQgb2YgdGhpcyB0eXBlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLgorVGhlIHN0cmluZyBtdXN0IG1hdGNoIDxJPmV4YWN0bHk8L0k+IGFuIGlkZW50aWZpZXIgdXNlZCB0byBkZWNsYXJlIGFuCitlbnVtIGNvbnN0YW50IGluIHRoaXMgdHlwZS4gIChFeHRyYW5lb3VzIHdoaXRlc3BhY2UgY2hhcmFjdGVycyBhcmUgCitub3QgcGVybWl0dGVkLikKKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmFtZTwvQ09ERT4gLSB0aGUgbmFtZSBvZiB0aGUgZW51bSBjb25zdGFudCB0byBiZSByZXR1cm5lZC4KKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGVudW0gY29uc3RhbnQgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUKKzxEVD48Qj5UaHJvd3M6PC9CPgorPEREPjxDT0RFPmphdmEubGFuZy5JbGxlZ2FsQXJndW1lbnRFeGNlcHRpb248L0NPREU+IC0gaWYgdGhpcyBlbnVtIHR5cGUgaGFzIG5vIGNvbnN0YW50Cit3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0KGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitnZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2hhZGU8L0E+IDxCPmdldDwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO2xpdGVyYWwpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgJzxlbT48Yj5TaGFkZTwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbGl0ZXJhbCB2YWx1ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRCeU5hbWUoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEJ5TmFtZTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT4gPEI+Z2V0QnlOYW1lPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmFtZSk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSAnPGVtPjxiPlNoYWRlPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitnZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2hhZGU8L0E+IDxCPmdldDwvQj4oaW50Jm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgJzxlbT48Yj5TaGFkZTwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgaW50ZWdlciB2YWx1ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRWYWx1ZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRWYWx1ZTwvSDM+Cis8UFJFPgorcHVibGljIGludCA8Qj5nZXRWYWx1ZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+Z2V0VmFsdWU8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldE5hbWUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TmFtZTwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0TmFtZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+Z2V0TmFtZTwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FbnVtZXJhdG9yPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TGl0ZXJhbCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRMaXRlcmFsPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRMaXRlcmFsPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5nZXRMaXRlcmFsPC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3I8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJ0b1N0cmluZygpIj48IS0tIC0tPjwvQT48SDM+Cit0b1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+dG9TdHJpbmc8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBsaXRlcmFsIHZhbHVlIG9mIHRoZSBlbnVtZXJhdG9yLCB3aGljaCBpcyBpdHMgc3RyaW5nIHJlcHJlc2VudGF0aW9uLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+dG9TdHJpbmc8L0NPREU+IGluIGNsYXNzIDxDT0RFPmphdmEubGFuZy5FbnVtJmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPiZndDs8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9TaGFkZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTaGFkZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZW51bV9jb25zdGFudF9zdW1tYXJ5Ij5FTlVNIENPTlNUQU5UUzwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX3N1bW1hcnkiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7PEEgSFJFRj0iI2VudW1fY29uc3RhbnRfZGV0YWlsIj5FTlVNIENPTlNUQU5UUzwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjUyZTM3MAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sCkBAIC0wLDAgKzEsMzMyIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjggQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitTaW11bGF0ZWRTeXN0ZW0KKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2ltdWxhdGVkU3lzdGVtIGludGVyZmFjZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iU2ltdWxhdGVkU3lzdGVtIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1NpbXVsYXRlZFN5c3RlbS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0ZPTlQ+Cis8QlI+CitJbnRlcmZhY2UgU2ltdWxhdGVkU3lzdGVtPC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Tb2Z0d2FyZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5BbGwgS25vd24gSW1wbGVtZW50aW5nIENsYXNzZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2ltdWxhdGVkU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNpbXVsYXRlZFN5c3RlbUltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPlNpbXVsYXRlZFN5c3RlbTwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNvZnR3YXJlPC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNpbXVsYXRlZCBTeXN0ZW08L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCisgPHA+CisgVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwjZ2V0QmFzZV9Qcm9wZXJ0eSgpIj48Q09ERT48ZW0+QmFzZSBQcm9wZXJ0eTwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCNnZXRNZXNoKCkiPjxDT0RFPjxlbT5NZXNoPC9lbT48L0NPREU+PC9BPjwvbGk+CisgPC91bD4KKyA8L3A+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTaW11bGF0ZWRTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0U2ltdWxhdGVkU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8SFI+CisKKzxQPgorCis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS51bWwyLnVtbC5Qcm9wZXJ0eTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwjZ2V0QmFzZV9Qcm9wZXJ0eSgpIj5nZXRCYXNlX1Byb3BlcnR5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QmFzZSBQcm9wZXJ0eTwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdCZsdDtqYXZhLmxhbmcuU3RyaW5nJmd0OzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwjZ2V0TWVzaCgpIj5nZXRNZXNoPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TWVzaDwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sI3NldEJhc2VfUHJvcGVydHkob3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHkpIj5zZXRCYXNlX1Byb3BlcnR5PC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHkmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sI2dldEJhc2VfUHJvcGVydHkoKSI+PENPREU+PGVtPkJhc2UgUHJvcGVydHk8L2VtPjwvQ09ERT48L0E+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Tb2Z0d2FyZSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNvZnR3YXJlPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldERlYWRsaW5lKCkiPmdldERlYWRsaW5lPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjZ2V0UGVyaW9kKCkiPmdldFBlcmlvZDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldFByaW9yaXR5KCkiPmdldFByaW9yaXR5PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjZ2V0V2NldCgpIj5nZXRXY2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjaXNJc1BlcmlvZGljKCkiPmlzSXNQZXJpb2RpYzwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI3NldERlYWRsaW5lKGphdmEubGFuZy5TdHJpbmcpIj5zZXREZWFkbGluZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI3NldElzUGVyaW9kaWMoYm9vbGVhbikiPnNldElzUGVyaW9kaWM8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXRQZXJpb2QoamF2YS5sYW5nLlN0cmluZykiPnNldFBlcmlvZDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI3NldFByaW9yaXR5KGphdmEubGFuZy5TdHJpbmcpIj5zZXRQcmlvcml0eTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI3NldFdjZXQoamF2YS5sYW5nLlN0cmluZykiPnNldFdjZXQ8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImdldEJhc2VfUHJvcGVydHkoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QmFzZV9Qcm9wZXJ0eTwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHkgPEI+Z2V0QmFzZV9Qcm9wZXJ0eTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkJhc2UgUHJvcGVydHk8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkJhc2UgUHJvcGVydHk8L2VtPicgcmVmZXJlbmNlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgUHJvcGVydHk8L2VtPicgcmVmZXJlbmNlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCNzZXRCYXNlX1Byb3BlcnR5KG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5KSI+PENPREU+c2V0QmFzZV9Qcm9wZXJ0eShQcm9wZXJ0eSk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTaW11bGF0ZWRTeXN0ZW1fQmFzZV9Qcm9wZXJ0eSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRTaW11bGF0ZWRTeXN0ZW1fQmFzZV9Qcm9wZXJ0eSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldEJhc2VfUHJvcGVydHkob3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHkpIj48IS0tIC0tPjwvQT48SDM+CitzZXRCYXNlX1Byb3BlcnR5PC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldEJhc2VfUHJvcGVydHk8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5Jm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwjZ2V0QmFzZV9Qcm9wZXJ0eSgpIj48Q09ERT48ZW0+QmFzZSBQcm9wZXJ0eTwvZW0+PC9DT0RFPjwvQT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgUHJvcGVydHk8L2VtPicgcmVmZXJlbmNlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCNnZXRCYXNlX1Byb3BlcnR5KCkiPjxDT0RFPmdldEJhc2VfUHJvcGVydHkoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRNZXNoKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldE1lc2g8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdCZsdDtqYXZhLmxhbmcuU3RyaW5nJmd0OyA8Qj5nZXRNZXNoPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TWVzaDwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QuCisgVGhlIGxpc3QgY29udGVudHMgYXJlIG9mIHR5cGUgPENPREU+U3RyaW5nPC9DT0RFPi4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPk1lc2g8L2VtPicgYXR0cmlidXRlIGxpc3QgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+TWVzaDwvZW0+JyBhdHRyaWJ1dGUgbGlzdC48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTaW11bGF0ZWRTeXN0ZW1fTWVzaCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRTaW11bGF0ZWRTeXN0ZW1fTWVzaCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1NpbXVsYXRlZFN5c3RlbS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIzMGExZDkKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sCkBAIC0wLDAgKzEsNTI5IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjggQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitTb2Z0d2FyZQorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Tb2Z0d2FyZSBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlNvZnR3YXJlIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1NvZnR3YXJlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTb2Z0d2FyZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIFNvZnR3YXJlPC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBTdWJpbnRlcmZhY2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JEcml2ZXIuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvckRyaXZlcjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNpbXVsYXRlZFN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5BbGwgS25vd24gSW1wbGVtZW50aW5nIENsYXNzZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yRHJpdmVySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlbnNvckRyaXZlckltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2ltdWxhdGVkU3lzdGVtSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNvZnR3YXJlSW1wbDwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBpbnRlcmZhY2UgPEI+U29mdHdhcmU8L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNvZnR3YXJlPC9iPjwvZW0+Jy4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKworIDxwPgorIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyA8dWw+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjaXNJc1BlcmlvZGljKCkiPjxDT0RFPjxlbT5JcyBQZXJpb2RpYzwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldFBlcmlvZCgpIj48Q09ERT48ZW0+UGVyaW9kPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjZ2V0UHJpb3JpdHkoKSI+PENPREU+PGVtPlByaW9yaXR5PC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjZ2V0RGVhZGxpbmUoKSI+PENPREU+PGVtPkRlYWRsaW5lPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjZ2V0V2NldCgpIj48Q09ERT48ZW0+V2NldDwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U29mdHdhcmUoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0U29mdHdhcmUoKTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjZ2V0RGVhZGxpbmUoKSI+Z2V0RGVhZGxpbmU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5EZWFkbGluZTwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjZ2V0UGVyaW9kKCkiPmdldFBlcmlvZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlBlcmlvZDwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjZ2V0UHJpb3JpdHkoKSI+Z2V0UHJpb3JpdHk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Qcmlvcml0eTwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjZ2V0V2NldCgpIj5nZXRXY2V0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2NldDwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2Jvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjaXNJc1BlcmlvZGljKCkiPmlzSXNQZXJpb2RpYzwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPklzIFBlcmlvZGljPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXREZWFkbGluZShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0RGVhZGxpbmU8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldERlYWRsaW5lKCkiPjxDT0RFPjxlbT5EZWFkbGluZTwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI3NldElzUGVyaW9kaWMoYm9vbGVhbikiPnNldElzUGVyaW9kaWM8L0E+PC9CPihib29sZWFuJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2lzSXNQZXJpb2RpYygpIj48Q09ERT48ZW0+SXMgUGVyaW9kaWM8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXRQZXJpb2QoamF2YS5sYW5nLlN0cmluZykiPnNldFBlcmlvZDwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjZ2V0UGVyaW9kKCkiPjxDT0RFPjxlbT5QZXJpb2Q8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXRQcmlvcml0eShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0UHJpb3JpdHk8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldFByaW9yaXR5KCkiPjxDT0RFPjxlbT5Qcmlvcml0eTwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI3NldFdjZXQoamF2YS5sYW5nLlN0cmluZykiPnNldFdjZXQ8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldFdjZXQoKSI+PENPREU+PGVtPldjZXQ8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJpc0lzUGVyaW9kaWMoKSI+PCEtLSAtLT48L0E+PEgzPgoraXNJc1BlcmlvZGljPC9IMz4KKzxQUkU+Citib29sZWFuIDxCPmlzSXNQZXJpb2RpYzwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPklzIFBlcmlvZGljPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5JcyBQZXJpb2RpYzwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+SXMgUGVyaW9kaWM8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI3NldElzUGVyaW9kaWMoYm9vbGVhbikiPjxDT0RFPnNldElzUGVyaW9kaWMoYm9vbGVhbik8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTb2Z0d2FyZV9Jc1BlcmlvZGljKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFNvZnR3YXJlX0lzUGVyaW9kaWMoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRJc1BlcmlvZGljKGJvb2xlYW4pIj48IS0tIC0tPjwvQT48SDM+CitzZXRJc1BlcmlvZGljPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldElzUGVyaW9kaWM8L0I+KGJvb2xlYW4mbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2lzSXNQZXJpb2RpYygpIj48Q09ERT48ZW0+SXMgUGVyaW9kaWM8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5JcyBQZXJpb2RpYzwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjaXNJc1BlcmlvZGljKCkiPjxDT0RFPmlzSXNQZXJpb2RpYygpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBlcmlvZCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRQZXJpb2Q8L0gzPgorPFBSRT4KK2phdmEubGFuZy5TdHJpbmcgPEI+Z2V0UGVyaW9kPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+UGVyaW9kPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5QZXJpb2Q8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPlBlcmlvZDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjc2V0UGVyaW9kKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5zZXRQZXJpb2QoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNvZnR3YXJlX1BlcmlvZCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRTb2Z0d2FyZV9QZXJpb2QoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRQZXJpb2QoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFBlcmlvZDwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRQZXJpb2Q8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldFBlcmlvZCgpIj48Q09ERT48ZW0+UGVyaW9kPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+UGVyaW9kPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXRQZXJpb2QoKSI+PENPREU+Z2V0UGVyaW9kKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UHJpb3JpdHkoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UHJpb3JpdHk8L0gzPgorPFBSRT4KK2phdmEubGFuZy5TdHJpbmcgPEI+Z2V0UHJpb3JpdHk8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Qcmlvcml0eTwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+UHJpb3JpdHk8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPlByaW9yaXR5PC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXRQcmlvcml0eShqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+c2V0UHJpb3JpdHkoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNvZnR3YXJlX1ByaW9yaXR5KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFNvZnR3YXJlX1ByaW9yaXR5KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0UHJpb3JpdHkoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFByaW9yaXR5PC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldFByaW9yaXR5PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXRQcmlvcml0eSgpIj48Q09ERT48ZW0+UHJpb3JpdHk8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5Qcmlvcml0eTwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjZ2V0UHJpb3JpdHkoKSI+PENPREU+Z2V0UHJpb3JpdHkoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXREZWFkbGluZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXREZWFkbGluZTwvSDM+Cis8UFJFPgoramF2YS5sYW5nLlN0cmluZyA8Qj5nZXREZWFkbGluZTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkRlYWRsaW5lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5EZWFkbGluZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+RGVhZGxpbmU8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI3NldERlYWRsaW5lKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5zZXREZWFkbGluZShTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U29mdHdhcmVfRGVhZGxpbmUoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0U29mdHdhcmVfRGVhZGxpbmUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXREZWFkbGluZShqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0RGVhZGxpbmU8L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0RGVhZGxpbmU8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldERlYWRsaW5lKCkiPjxDT0RFPjxlbT5EZWFkbGluZTwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkRlYWRsaW5lPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXREZWFkbGluZSgpIj48Q09ERT5nZXREZWFkbGluZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFdjZXQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2NldDwvSDM+Cis8UFJFPgoramF2YS5sYW5nLlN0cmluZyA8Qj5nZXRXY2V0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2NldDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+V2NldDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+V2NldDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjc2V0V2NldChqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+c2V0V2NldChTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U29mdHdhcmVfV2NldCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRTb2Z0d2FyZV9XY2V0KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0V2NldChqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0V2NldDwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRXY2V0PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXRXY2V0KCkiPjxDT0RFPjxlbT5XY2V0PC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+V2NldDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjZ2V0V2NldCgpIj48Q09ERT5nZXRXY2V0KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU29mdHdhcmUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNvZnR3YXJlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTFmNDQyNgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sCkBAIC0wLDAgKzEsMjI1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjggQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitTdGFpcnMKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RhaXJzIGludGVyZmFjZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iU3RhaXJzIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1N0YWlycy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTdGFpcnMuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0ZPTlQ+Cis8QlI+CitJbnRlcmZhY2UgU3RhaXJzPC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Hcm91bmQ8L0E+LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBJbXBsZW1lbnRpbmcgQ2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGFpcnNJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3RhaXJzSW1wbDwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBpbnRlcmZhY2UgPEI+U3RhaXJzPC9CPjxEVD5leHRlbmRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Hcm91bmQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkdyb3VuZDwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TdGFpcnM8L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U3RhaXJzKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFN0YWlycygpPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaHlzaWNhbE9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEV2ZWxvdmVzSW4oKSI+Z2V0RXZlbG92ZXNJbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEhhc1N1cmZhY2UoKSI+Z2V0SGFzU3VyZmFjZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI3NldEhhc1N1cmZhY2Uob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN1cmZhY2UpIj5zZXRIYXNTdXJmYWNlPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU3RhaXJzLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlN0YWlycy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTczN2YxYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwKQEAgLTAsMCArMSwzNzMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyOCBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1N0YXRlCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0YXRlIGludGVyZmFjZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iU3RhdGUiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU3RhdGUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTdGF0ZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorSW50ZXJmYWNlIFN0YXRlPC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBJbXBsZW1lbnRpbmcgQ2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TdGF0ZUltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgaW50ZXJmYWNlIDxCPlN0YXRlPC9CPjxEVD5leHRlbmRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3RhdGU8L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCisgPHA+CisgVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCNnZXRCYXNlX1N0YXRlKCkiPjxDT0RFPjxlbT5CYXNlIFN0YXRlPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwjZ2V0T3BlcmF0aW9uKCkiPjxDT0RFPjxlbT5PcGVyYXRpb248L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCNnZXRBcmd1bWVudHMoKSI+PENPREU+PGVtPkFyZ3VtZW50czwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U3RhdGUoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0U3RhdGUoKTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdCZsdDtvcmcuZWNsaXBzZS51bWwyLnVtbC5Qcm9wZXJ0eSZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwjZ2V0QXJndW1lbnRzKCkiPmdldEFyZ3VtZW50czwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkFyZ3VtZW50czwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3QuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLnVtbDIudW1sLlN0YXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sI2dldEJhc2VfU3RhdGUoKSI+Z2V0QmFzZV9TdGF0ZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkJhc2UgU3RhdGU8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sI2dldE9wZXJhdGlvbigpIj5nZXRPcGVyYXRpb248L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5PcGVyYXRpb248L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sI3NldEJhc2VfU3RhdGUob3JnLmVjbGlwc2UudW1sMi51bWwuU3RhdGUpIj5zZXRCYXNlX1N0YXRlPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuU3RhdGUmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwjZ2V0QmFzZV9TdGF0ZSgpIj48Q09ERT48ZW0+QmFzZSBTdGF0ZTwvZW0+PC9DT0RFPjwvQT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sI3NldE9wZXJhdGlvbihvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtKSI+c2V0T3BlcmF0aW9uPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPiZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCNnZXRPcGVyYXRpb24oKSI+PENPREU+PGVtPk9wZXJhdGlvbjwvZW0+PC9DT0RFPjwvQT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJnZXRCYXNlX1N0YXRlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEJhc2VfU3RhdGU8L0gzPgorPFBSRT4KK29yZy5lY2xpcHNlLnVtbDIudW1sLlN0YXRlIDxCPmdldEJhc2VfU3RhdGU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CYXNlIFN0YXRlPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5CYXNlIFN0YXRlPC9lbT4nIHJlZmVyZW5jZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5CYXNlIFN0YXRlPC9lbT4nIHJlZmVyZW5jZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCNzZXRCYXNlX1N0YXRlKG9yZy5lY2xpcHNlLnVtbDIudW1sLlN0YXRlKSI+PENPREU+c2V0QmFzZV9TdGF0ZShvcmcuZWNsaXBzZS51bWwyLnVtbC5TdGF0ZSk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTdGF0ZV9CYXNlX1N0YXRlKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFN0YXRlX0Jhc2VfU3RhdGUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRCYXNlX1N0YXRlKG9yZy5lY2xpcHNlLnVtbDIudW1sLlN0YXRlKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0QmFzZV9TdGF0ZTwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRCYXNlX1N0YXRlPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5TdGF0ZSZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwjZ2V0QmFzZV9TdGF0ZSgpIj48Q09ERT48ZW0+QmFzZSBTdGF0ZTwvZW0+PC9DT0RFPjwvQT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgU3RhdGU8L2VtPicgcmVmZXJlbmNlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sI2dldEJhc2VfU3RhdGUoKSI+PENPREU+Z2V0QmFzZV9TdGF0ZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldE9wZXJhdGlvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRPcGVyYXRpb248L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT4gPEI+Z2V0T3BlcmF0aW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+T3BlcmF0aW9uPC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5PcGVyYXRpb248L2VtPicgcmVmZXJlbmNlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPk9wZXJhdGlvbjwvZW0+JyByZWZlcmVuY2UuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwjc2V0T3BlcmF0aW9uKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0pIj48Q09ERT5zZXRPcGVyYXRpb24oQWxnb3JpdGhtKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFN0YXRlX09wZXJhdGlvbigpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRTdGF0ZV9PcGVyYXRpb24oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRPcGVyYXRpb24ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobSkiPjwhLS0gLS0+PC9BPjxIMz4KK3NldE9wZXJhdGlvbjwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRPcGVyYXRpb248L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT4mbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sI2dldE9wZXJhdGlvbigpIj48Q09ERT48ZW0+T3BlcmF0aW9uPC9lbT48L0NPREU+PC9BPicgcmVmZXJlbmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+T3BlcmF0aW9uPC9lbT4nIHJlZmVyZW5jZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCNnZXRPcGVyYXRpb24oKSI+PENPREU+Z2V0T3BlcmF0aW9uKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0QXJndW1lbnRzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEFyZ3VtZW50czwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0Jmx0O29yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5Jmd0OyA8Qj5nZXRBcmd1bWVudHM8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Bcmd1bWVudHM8L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0LgorIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIDxDT0RFPlByb3BlcnR5PC9DT0RFPi4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkFyZ3VtZW50czwvZW0+JyByZWZlcmVuY2UgbGlzdCBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5Bcmd1bWVudHM8L2VtPicgcmVmZXJlbmNlIGxpc3QuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U3RhdGVfQXJndW1lbnRzKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFN0YXRlX0FyZ3VtZW50cygpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1N0YXRlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU3RhdGUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAyZGY5MzUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwKQEAgLTAsMCArMSwyMjggQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyOCBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1N1cmZhY2UKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlN1cmZhY2UiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU3VyZmFjZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU3VyZmFjZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvRk9OVD4KKzxCUj4KK0ludGVyZmFjZSBTdXJmYWNlPC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5BbGwgS25vd24gU3ViaW50ZXJmYWNlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkZsb29yPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+R3JvdW5kPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MYW5kU3VyZmFjZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YWlyczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XYXRlclN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldhdGVyU3VyZmFjZTwvQT48L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5BbGwgS25vd24gSW1wbGVtZW50aW5nIENsYXNzZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRmxvb3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Rmxvb3JJbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR3JvdW5kSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkdyb3VuZEltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MYW5kU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MYW5kU3VyZmFjZUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGFpcnNJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3RhaXJzSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3VyZmFjZUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XYXRlclN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2F0ZXJTdXJmYWNlSW1wbDwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBpbnRlcmZhY2UgPEI+U3VyZmFjZTwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlN1cmZhY2U8L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U3VyZmFjZSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRTdXJmYWNlKCk8L0NPREU+PC9BPjwvREw+Cis8SFI+CisKKzxQPgorCis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBoeXNpY2FsT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0RXZlbG92ZXNJbigpIj5nZXRFdmVsb3Zlc0luPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0SGFzU3VyZmFjZSgpIj5nZXRIYXNTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjc2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPnNldEhhc1N1cmZhY2U8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9TdXJmYWNlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTdXJmYWNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzkxOWE4NgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbApAQCAtMCwwICsxLDY2NCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI4IENFVCAyMDEyIC0tPgorPFRJVExFPgorU3luY2hyb25pemF0aW9uS2luZAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeW5jaHJvbml6YXRpb25LaW5kIGNsYXNzIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJTeW5jaHJvbml6YXRpb25LaW5kIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlN5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2VudW1fY29uc3RhbnRfc3VtbWFyeSI+RU5VTSBDT05TVEFOVFM8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwOzxBIEhSRUY9IiNlbnVtX2NvbnN0YW50X2RldGFpbCI+RU5VTSBDT05TVEFOVFM8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9kZXRhaWwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9GT05UPgorPEJSPgorRW51bSBTeW5jaHJvbml6YXRpb25LaW5kPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5qYXZhLmxhbmcuRW51bSZsdDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5bmNocm9uaXphdGlvbktpbmQ8L0E+Jmd0OworICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeW5jaHJvbml6YXRpb25LaW5kPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+amF2YS5pby5TZXJpYWxpemFibGUsIGphdmEubGFuZy5Db21wYXJhYmxlJmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT4mZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGVudW0gPEI+U3luY2hyb25pemF0aW9uS2luZDwvQj48RFQ+ZXh0ZW5kcyBqYXZhLmxhbmcuRW51bSZsdDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5bmNocm9uaXphdGlvbktpbmQ8L0E+Jmd0OzxEVD5pbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FbnVtZXJhdG9yPC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbGl0ZXJhbHMgb2YgdGhlIGVudW1lcmF0aW9uICc8ZW0+PGI+U3luY2hyb25pemF0aW9uIEtpbmQ8L2I+PC9lbT4nLAorIGFuZCB1dGlsaXR5IG1ldGhvZHMgZm9yIHdvcmtpbmcgd2l0aCB0aGVtLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U3luY2hyb25pemF0aW9uS2luZCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRTeW5jaHJvbml6YXRpb25LaW5kKCk8L0NPREU+PC9BPjwvREw+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PT09PSBFTlVNIENPTlNUQU5UIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImVudW1fY29uc3RhbnRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkVudW0gQ29uc3RhbnQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sI0FTWU5DSCI+QVNZTkNIPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSAnPGVtPjxiPkFTWU5DSDwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3Q8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwjU1lOQ0giPlNZTkNIPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSAnPGVtPjxiPlNZTkNIPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdDwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCNVTkRFRklORUQiPlVOREVGSU5FRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgJzxlbT48Yj5VbmRlZmluZWQ8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sI0FTWU5DSF9WQUxVRSI+QVNZTkNIX1ZBTFVFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSAnPGVtPjxiPkFTWU5DSDwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCNTWU5DSF9WQUxVRSI+U1lOQ0hfVkFMVUU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlICc8ZW0+PGI+U1lOQ0g8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwjVU5ERUZJTkVEX1ZBTFVFIj5VTkRFRklORURfVkFMVUU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlICc8ZW0+PGI+VW5kZWZpbmVkPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEudXRpbC5MaXN0Jmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT4mZ3Q7PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwjVkFMVUVTIj5WQUxVRVM8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSBwdWJsaWMgcmVhZC1vbmx5IGxpc3Qgb2YgYWxsIHRoZSAnPGVtPjxiPlN5bmNocm9uaXphdGlvbiBLaW5kPC9iPjwvZW0+JyBlbnVtZXJhdG9yczwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeW5jaHJvbml6YXRpb25LaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sI2dldChpbnQpIj5nZXQ8L0E+PC9CPihpbnQmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlICc8ZW0+PGI+U3luY2hyb25pemF0aW9uIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGludGVnZXIgdmFsdWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeW5jaHJvbml6YXRpb25LaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sI2dldChqYXZhLmxhbmcuU3RyaW5nKSI+Z2V0PC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO2xpdGVyYWwpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSAnPGVtPjxiPlN5bmNocm9uaXphdGlvbiBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBsaXRlcmFsIHZhbHVlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCNnZXRCeU5hbWUoamF2YS5sYW5nLlN0cmluZykiPmdldEJ5TmFtZTwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuYW1lKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgJzxlbT48Yj5TeW5jaHJvbml6YXRpb24gS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwjZ2V0TGl0ZXJhbCgpIj5nZXRMaXRlcmFsPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwjZ2V0TmFtZSgpIj5nZXROYW1lPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCNnZXRWYWx1ZSgpIj5nZXRWYWx1ZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sI3RvU3RyaW5nKCkiPnRvU3RyaW5nPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgbGl0ZXJhbCB2YWx1ZSBvZiB0aGUgZW51bWVyYXRvciwgd2hpY2ggaXMgaXRzIHN0cmluZyByZXByZXNlbnRhdGlvbjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5bmNocm9uaXphdGlvbktpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwjdmFsdWVPZihqYXZhLmxhbmcuU3RyaW5nKSI+dmFsdWVPZjwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuYW1lKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgZW51bSBjb25zdGFudCBvZiB0aGlzIHR5cGUgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT5bXTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sI3ZhbHVlcygpIj52YWx1ZXM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGFuIGFycmF5IGNvbnRhaW5pbmcgdGhlIGNvbnN0YW50cyBvZiB0aGlzIGVudW0gdHlwZSwgaW4KK3RoZSBvcmRlciB0aGV5J3JlIGRlY2xhcmVkLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLkVudW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5FbnVtPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Y29tcGFyZVRvLCBlcXVhbHMsIGdldERlY2xhcmluZ0NsYXNzLCBoYXNoQ29kZSwgbmFtZSwgb3JkaW5hbCwgdmFsdWVPZjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXRDbGFzcywgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gRU5VTSBDT05TVEFOVCBERVRBSUwgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImVudW1fY29uc3RhbnRfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+RW51bSBDb25zdGFudCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iU1lOQ0giPjwhLS0gLS0+PC9BPjxIMz4KK1NZTkNIPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGZpbmFsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT4gPEI+U1lOQ0g8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlICc8ZW0+PGI+U1lOQ0g8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwjU1lOQ0hfVkFMVUUiPjxDT0RFPlNZTkNIX1ZBTFVFPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQVNZTkNIIj48IS0tIC0tPjwvQT48SDM+CitBU1lOQ0g8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeW5jaHJvbml6YXRpb25LaW5kPC9BPiA8Qj5BU1lOQ0g8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlICc8ZW0+PGI+QVNZTkNIPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdC4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sI0FTWU5DSF9WQUxVRSI+PENPREU+QVNZTkNIX1ZBTFVFPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVU5ERUZJTkVEIj48IS0tIC0tPjwvQT48SDM+CitVTkRFRklORUQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeW5jaHJvbml6YXRpb25LaW5kPC9BPiA8Qj5VTkRFRklORUQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlICc8ZW0+PGI+VW5kZWZpbmVkPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdC4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sI1VOREVGSU5FRF9WQUxVRSI+PENPREU+VU5ERUZJTkVEX1ZBTFVFPC9DT0RFPjwvQT48L0RMPgorPC9ETD4KKworPCEtLSA9PT09PT09PT09PT0gRklFTEQgREVUQUlMID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iU1lOQ0hfVkFMVUUiPjwhLS0gLS0+PC9BPjxIMz4KK1NZTkNIX1ZBTFVFPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGZpbmFsIGludCA8Qj5TWU5DSF9WQUxVRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgJzxlbT48Yj5TWU5DSDwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mICc8ZW0+PGI+U1lOQ0g8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0IGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwjU1lOQ0giPjxDT0RFPlNZTkNIPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5bmNocm9uaXphdGlvbktpbmQuU1lOQ0hfVkFMVUUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iQVNZTkNIX1ZBTFVFIj48IS0tIC0tPjwvQT48SDM+CitBU1lOQ0hfVkFMVUU8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgaW50IDxCPkFTWU5DSF9WQUxVRTwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgJzxlbT48Yj5BU1lOQ0g8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiAnPGVtPjxiPkFTWU5DSDwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCNBU1lOQ0giPjxDT0RFPkFTWU5DSDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeW5jaHJvbml6YXRpb25LaW5kLkFTWU5DSF9WQUxVRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJVTkRFRklORURfVkFMVUUiPjwhLS0gLS0+PC9BPjxIMz4KK1VOREVGSU5FRF9WQUxVRTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgPEI+VU5ERUZJTkVEX1ZBTFVFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPlVuZGVmaW5lZDwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mICc8ZW0+PGI+VW5kZWZpbmVkPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdCBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sI1VOREVGSU5FRCI+PENPREU+VU5ERUZJTkVEPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5bmNocm9uaXphdGlvbktpbmQuVU5ERUZJTkVEX1ZBTFVFIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IlZBTFVFUyI+PCEtLSAtLT48L0E+PEgzPgorVkFMVUVTPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGZpbmFsIGphdmEudXRpbC5MaXN0Jmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT4mZ3Q7IDxCPlZBTFVFUzwvQj48L1BSRT4KKzxETD4KKzxERD5BIHB1YmxpYyByZWFkLW9ubHkgbGlzdCBvZiBhbGwgdGhlICc8ZW0+PGI+U3luY2hyb25pemF0aW9uIEtpbmQ8L2I+PC9lbT4nIGVudW1lcmF0b3JzLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzwvREw+Cis8L0RMPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9InZhbHVlcygpIj48IS0tIC0tPjwvQT48SDM+Cit2YWx1ZXM8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeW5jaHJvbml6YXRpb25LaW5kPC9BPltdIDxCPnZhbHVlczwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgYW4gYXJyYXkgY29udGFpbmluZyB0aGUgY29uc3RhbnRzIG9mIHRoaXMgZW51bSB0eXBlLCBpbgordGhlIG9yZGVyIHRoZXkncmUgZGVjbGFyZWQuICBUaGlzIG1ldGhvZCBtYXkgYmUgdXNlZCB0byBpdGVyYXRlCitvdmVyIHRoZSBjb25zdGFudHMgYXMgZm9sbG93czoKKzxwcmU+Citmb3IoU3luY2hyb25pemF0aW9uS2luZCBjIDogU3luY2hyb25pemF0aW9uS2luZC52YWx1ZXMoKSkKKyAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKGMpOworPC9wcmU+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YW4gYXJyYXkgY29udGFpbmluZyB0aGUgY29uc3RhbnRzIG9mIHRoaXMgZW51bSB0eXBlLCBpbgordGhlIG9yZGVyIHRoZXkncmUgZGVjbGFyZWQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InZhbHVlT2YoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3ZhbHVlT2Y8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeW5jaHJvbml6YXRpb25LaW5kPC9BPiA8Qj52YWx1ZU9mPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmFtZSk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBlbnVtIGNvbnN0YW50IG9mIHRoaXMgdHlwZSB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZS4KK1RoZSBzdHJpbmcgbXVzdCBtYXRjaCA8ST5leGFjdGx5PC9JPiBhbiBpZGVudGlmaWVyIHVzZWQgdG8gZGVjbGFyZSBhbgorZW51bSBjb25zdGFudCBpbiB0aGlzIHR5cGUuICAoRXh0cmFuZW91cyB3aGl0ZXNwYWNlIGNoYXJhY3RlcnMgYXJlIAorbm90IHBlcm1pdHRlZC4pCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5hbWU8L0NPREU+IC0gdGhlIG5hbWUgb2YgdGhlIGVudW0gY29uc3RhbnQgdG8gYmUgcmV0dXJuZWQuCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBlbnVtIGNvbnN0YW50IHdpdGggdGhlIHNwZWNpZmllZCBuYW1lCis8RFQ+PEI+VGhyb3dzOjwvQj4KKzxERD48Q09ERT5qYXZhLmxhbmcuSWxsZWdhbEFyZ3VtZW50RXhjZXB0aW9uPC9DT0RFPiAtIGlmIHRoaXMgZW51bSB0eXBlIGhhcyBubyBjb25zdGFudAord2l0aCB0aGUgc3BlY2lmaWVkIG5hbWU8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldChqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT4gPEI+Z2V0PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bGl0ZXJhbCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSAnPGVtPjxiPlN5bmNocm9uaXphdGlvbiBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBsaXRlcmFsIHZhbHVlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEJ5TmFtZShqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QnlOYW1lPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT4gPEI+Z2V0QnlOYW1lPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmFtZSk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSAnPGVtPjxiPlN5bmNocm9uaXphdGlvbiBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitnZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeW5jaHJvbml6YXRpb25LaW5kPC9BPiA8Qj5nZXQ8L0I+KGludCZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlICc8ZW0+PGI+U3luY2hyb25pemF0aW9uIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGludGVnZXIgdmFsdWUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0VmFsdWUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0VmFsdWU8L0gzPgorPFBSRT4KK3B1YmxpYyBpbnQgPEI+Z2V0VmFsdWU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5nZXRWYWx1ZTwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FbnVtZXJhdG9yPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWU8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldE5hbWUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TmFtZTwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0TmFtZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmdldE5hbWU8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG5hbWU8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldExpdGVyYWwoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TGl0ZXJhbDwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0TGl0ZXJhbDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmdldExpdGVyYWw8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGxpdGVyYWw8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InRvU3RyaW5nKCkiPjwhLS0gLS0+PC9BPjxIMz4KK3RvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj50b1N0cmluZzwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIGxpdGVyYWwgdmFsdWUgb2YgdGhlIGVudW1lcmF0b3IsIHdoaWNoIGlzIGl0cyBzdHJpbmcgcmVwcmVzZW50YXRpb24uCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT50b1N0cmluZzwvQ09ERT4gaW4gY2xhc3MgPENPREU+amF2YS5sYW5nLkVudW0mbHQ7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeW5jaHJvbml6YXRpb25LaW5kPC9BPiZndDs8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNlbnVtX2NvbnN0YW50X3N1bW1hcnkiPkVOVU0gQ09OU1RBTlRTPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZW51bV9jb25zdGFudF9kZXRhaWwiPkVOVU0gQ09OU1RBTlRTPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41OGE0ZDAyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwKQEAgLTAsMCArMSwyODQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyOCBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1N5c3RlbQorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0gaW50ZXJmYWNlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJTeXN0ZW0iOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU3lzdGVtLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0ZPTlQ+Cis8QlI+CitJbnRlcmZhY2UgU3lzdGVtPC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBTdWJpbnRlcmZhY2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWN0dWF0b3JTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QmxlbmRlck1vcnNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0J1aWxkaW5nLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5CdWlsZGluZzwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNhbWVyYVN5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DeWNhYlRLPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW5naW5lU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Vudmlyb25tZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5FbnZpcm9ubWVudDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Rmxvb3I8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5HUFNTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Hcm91bmQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSGFyZHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkhhcmR3YXJlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5IdW1hbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9JbWFnZVNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SW1hZ2VTZW5zb3JTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxhbmRTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGVkZXN0cmlhbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhbmV0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGFuZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBsYXRmb3JtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmU8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1NpbXVsYXRvci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1NpbXVsYXRvcjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yRHJpdmVyPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2ltdWxhdGVkU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Tb2Z0d2FyZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YWlyczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2F0ZXJTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5BbGwgS25vd24gSW1wbGVtZW50aW5nIENsYXNzZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWN0dWF0b3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWN0dWF0b3JTeXN0ZW1JbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWdlbnRJbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkJsZW5kZXJNb3JzZUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CdWlsZGluZ0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5CdWlsZGluZ0ltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q2FtZXJhU3lzdGVtSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q3ljYWJUS0ltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+RW5naW5lU3lzdGVtSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Vudmlyb25tZW50SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkVudmlyb25tZW50SW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Zsb29ySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkZsb29ySW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dQU1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5HUFNTeXN0ZW1JbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR3JvdW5kSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkdyb3VuZEltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IYXJkd2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5IYXJkd2FyZUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IdW1hbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5IdW1hbkltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9JbWFnZVNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5JbWFnZVNlbnNvclN5c3RlbUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MYW5kU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MYW5kU3VyZmFjZUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MaWRhclN5c3RlbUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGVkZXN0cmlhbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QZWRlc3RyaWFuSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBoeXNpY2FsT2JqZWN0SW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYW5ldEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QbGFuZXRJbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGxhdGZvcm1JbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY01pZGRsZXdhcmVJbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1NpbXVsYXRvckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU2ltdWxhdG9ySW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY1N5c3RlbUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdEltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JEcml2ZXJJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2Vuc29yRHJpdmVySW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JTeXN0ZW1JbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2ltdWxhdGVkU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNpbXVsYXRlZFN5c3RlbUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Tb2Z0d2FyZUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGFpcnNJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3RhaXJzSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3VyZmFjZUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3lzdGVtSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1dhdGVyU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5XYXRlclN1cmZhY2VJbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2hlZWxTeXN0ZW1JbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5TeXN0ZW08L0I+PERUPmV4dGVuZHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TeXN0ZW08L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCisgPHA+CisgVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj48Q09ERT48ZW0+QmFzZSBDbGFzczwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPjxDT0RFPjxlbT5CYXNlIENsYXNzPC9lbT48L0NPREU+PC9BPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImdldEJhc2VfQ2xhc3MoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QmFzZV9DbGFzczwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgPEI+Z2V0QmFzZV9DbGFzczwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkJhc2UgQ2xhc3M8L2VtPicgcmVmZXJlbmNlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgQ2xhc3M8L2VtPicgcmVmZXJlbmNlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+PENPREU+c2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTeXN0ZW1fQmFzZV9DbGFzcygpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRTeXN0ZW1fQmFzZV9DbGFzcygpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj48IS0tIC0tPjwvQT48SDM+CitzZXRCYXNlX0NsYXNzPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldEJhc2VfQ2xhc3M8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj48Q09ERT48ZW0+QmFzZSBDbGFzczwvZW0+PC9DT0RFPjwvQT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgQ2xhc3M8L2VtPicgcmVmZXJlbmNlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPjxDT0RFPmdldEJhc2VfQ2xhc3MoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9TeXN0ZW0uaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdkZjJiOGUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwKQEAgLTAsMCArMSw0MDUgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyOCBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1RyYW5zaXRpb24KKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVHJhbnNpdGlvbiBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlRyYW5zaXRpb24iOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvVHJhbnNpdGlvbi5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlRyYW5zaXRpb24uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvRk9OVD4KKzxCUj4KK0ludGVyZmFjZSBUcmFuc2l0aW9uPC9IMj4KKzxETD4KKzxEVD48Qj5BbGwgU3VwZXJpbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkFsbCBLbm93biBJbXBsZW1lbnRpbmcgQ2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlRyYW5zaXRpb25JbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5UcmFuc2l0aW9uPC9CPjxEVD5leHRlbmRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+VHJhbnNpdGlvbjwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisKKyA8IS0tIGJlZ2luLW1vZGVsLWRvYyAtLT4KKyBndWFyZCBpcyB0eXBlZCB3aXRoIGEgYm9vbGVhbiBvcGVyYXRpb24gdGhhdCBoYXZlIHRvIGJlIGRlZmluZWQgaW4gdGhlIG1vZGVsIGJlZm9yZSB1c2luZyBpdAorIGVmZmVjdCBpcyB0eXBlZCBieSBhbiBvcGVyYXRpb24gdGhhdCBpcyBvd25lZCBieSB0aGUgY29tcG9uZW50IHRoYXQgaXMgYmVoYXZpb3JlZCBieSB0aGUgRlNNCisgCisgPCEtLSBlbmQtbW9kZWwtZG9jIC0tPgorCisgPHA+CisgVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sI2dldEJhc2VfVHJhbnNpdGlvbigpIj48Q09ERT48ZW0+QmFzZSBUcmFuc2l0aW9uPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCNnZXRHdWFyZCgpIj48Q09ERT48ZW0+R3VhcmQ8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sI2dldEVmZmVjdCgpIj48Q09ERT48ZW0+RWZmZWN0PC9lbT48L0NPREU+PC9BPjwvbGk+CisgPC91bD4KKyA8L3A+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRUcmFuc2l0aW9uKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFRyYW5zaXRpb24oKTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLnVtbDIudW1sLlRyYW5zaXRpb248L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCNnZXRCYXNlX1RyYW5zaXRpb24oKSI+Z2V0QmFzZV9UcmFuc2l0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QmFzZSBUcmFuc2l0aW9uPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sI2dldEVmZmVjdCgpIj5nZXRFZmZlY3Q8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5FZmZlY3Q8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwjZ2V0R3VhcmQoKSI+Z2V0R3VhcmQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5HdWFyZDwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCNzZXRCYXNlX1RyYW5zaXRpb24ob3JnLmVjbGlwc2UudW1sMi51bWwuVHJhbnNpdGlvbikiPnNldEJhc2VfVHJhbnNpdGlvbjwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlRyYW5zaXRpb24mbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCNnZXRCYXNlX1RyYW5zaXRpb24oKSI+PENPREU+PGVtPkJhc2UgVHJhbnNpdGlvbjwvZW0+PC9DT0RFPjwvQT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwjc2V0RWZmZWN0KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0pIj5zZXRFZmZlY3Q8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG08L0E+Jm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwjZ2V0RWZmZWN0KCkiPjxDT0RFPjxlbT5FZmZlY3Q8L2VtPjwvQ09ERT48L0E+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sI3NldEd1YXJkKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0pIj5zZXRHdWFyZDwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT4mbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCNnZXRHdWFyZCgpIj48Q09ERT48ZW0+R3VhcmQ8L2VtPjwvQ09ERT48L0E+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0QmFzZV9UcmFuc2l0aW9uKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEJhc2VfVHJhbnNpdGlvbjwvSDM+Cis8UFJFPgorb3JnLmVjbGlwc2UudW1sMi51bWwuVHJhbnNpdGlvbiA8Qj5nZXRCYXNlX1RyYW5zaXRpb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CYXNlIFRyYW5zaXRpb248L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkJhc2UgVHJhbnNpdGlvbjwvZW0+JyByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+QmFzZSBUcmFuc2l0aW9uPC9lbT4nIHJlZmVyZW5jZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sI3NldEJhc2VfVHJhbnNpdGlvbihvcmcuZWNsaXBzZS51bWwyLnVtbC5UcmFuc2l0aW9uKSI+PENPREU+c2V0QmFzZV9UcmFuc2l0aW9uKG9yZy5lY2xpcHNlLnVtbDIudW1sLlRyYW5zaXRpb24pPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0VHJhbnNpdGlvbl9CYXNlX1RyYW5zaXRpb24oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0VHJhbnNpdGlvbl9CYXNlX1RyYW5zaXRpb24oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRCYXNlX1RyYW5zaXRpb24ob3JnLmVjbGlwc2UudW1sMi51bWwuVHJhbnNpdGlvbikiPjwhLS0gLS0+PC9BPjxIMz4KK3NldEJhc2VfVHJhbnNpdGlvbjwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRCYXNlX1RyYW5zaXRpb248L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlRyYW5zaXRpb24mbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwjZ2V0QmFzZV9UcmFuc2l0aW9uKCkiPjxDT0RFPjxlbT5CYXNlIFRyYW5zaXRpb248L2VtPjwvQ09ERT48L0E+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5CYXNlIFRyYW5zaXRpb248L2VtPicgcmVmZXJlbmNlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwjZ2V0QmFzZV9UcmFuc2l0aW9uKCkiPjxDT0RFPmdldEJhc2VfVHJhbnNpdGlvbigpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEd1YXJkKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEd1YXJkPC9IMz4KKzxQUkU+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG08L0E+IDxCPmdldEd1YXJkPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+R3VhcmQ8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkd1YXJkPC9lbT4nIHJlZmVyZW5jZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5HdWFyZDwvZW0+JyByZWZlcmVuY2UuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCNzZXRHdWFyZChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtKSI+PENPREU+c2V0R3VhcmQoQWxnb3JpdGhtKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFRyYW5zaXRpb25fR3VhcmQoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0VHJhbnNpdGlvbl9HdWFyZCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldEd1YXJkKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0pIj48IS0tIC0tPjwvQT48SDM+CitzZXRHdWFyZDwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRHdWFyZDwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPiZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCNnZXRHdWFyZCgpIj48Q09ERT48ZW0+R3VhcmQ8L2VtPjwvQ09ERT48L0E+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5HdWFyZDwvZW0+JyByZWZlcmVuY2UuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCNnZXRHdWFyZCgpIj48Q09ERT5nZXRHdWFyZCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEVmZmVjdCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRFZmZlY3Q8L0gzPgorPFBSRT4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT4gPEI+Z2V0RWZmZWN0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+RWZmZWN0PC9iPjwvZW0+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5FZmZlY3Q8L2VtPicgcmVmZXJlbmNlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPkVmZmVjdDwvZW0+JyByZWZlcmVuY2UuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCNzZXRFZmZlY3Qob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobSkiPjxDT0RFPnNldEVmZmVjdChBbGdvcml0aG0pPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0VHJhbnNpdGlvbl9FZmZlY3QoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0VHJhbnNpdGlvbl9FZmZlY3QoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRFZmZlY3Qob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobSkiPjwhLS0gLS0+PC9BPjxIMz4KK3NldEVmZmVjdDwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRFZmZlY3Q8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT4mbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwjZ2V0RWZmZWN0KCkiPjxDT0RFPjxlbT5FZmZlY3Q8L2VtPjwvQ09ERT48L0E+JyByZWZlcmVuY2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5FZmZlY3Q8L2VtPicgcmVmZXJlbmNlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwjZ2V0RWZmZWN0KCkiPjxDT0RFPmdldEVmZmVjdCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1RyYW5zaXRpb24uaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJUcmFuc2l0aW9uLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZTc4MDYxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sCkBAIC0wLDAgKzEsNjE3IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjggQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVR1ZLaW5kCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlVHVktpbmQgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVHVktpbmQiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvVUdWS2luZC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iVUdWS2luZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZW51bV9jb25zdGFudF9zdW1tYXJ5Ij5FTlVNIENPTlNUQU5UUzwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX3N1bW1hcnkiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7PEEgSFJFRj0iI2VudW1fY29uc3RhbnRfZGV0YWlsIj5FTlVNIENPTlNUQU5UUzwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0ZPTlQ+Cis8QlI+CitFbnVtIFVHVktpbmQ8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPmphdmEubGFuZy5FbnVtJmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VUdWS2luZDwvQT4mZ3Q7CisgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlVHVktpbmQ8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5qYXZhLmlvLlNlcmlhbGl6YWJsZSwgamF2YS5sYW5nLkNvbXBhcmFibGUmbHQ7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5VR1ZLaW5kPC9BPiZndDssIG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FbnVtZXJhdG9yPC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgZW51bSA8Qj5VR1ZLaW5kPC9CPjxEVD5leHRlbmRzIGphdmEubGFuZy5FbnVtJmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VUdWS2luZDwvQT4mZ3Q7PERUPmltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3I8L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBsaXRlcmFscyBvZiB0aGUgZW51bWVyYXRpb24gJzxlbT48Yj5VR1YgS2luZDwvYj48L2VtPicsCisgYW5kIHV0aWxpdHkgbWV0aG9kcyBmb3Igd29ya2luZyB3aXRoIHRoZW0uCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRVR1ZLaW5kKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFVHVktpbmQoKTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09PT09IEVOVU0gQ09OU1RBTlQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZW51bV9jb25zdGFudF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RW51bSBDb25zdGFudCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwjQ0FSIj5DQVI8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlICc8ZW0+PGI+Q2FyPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdDwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCNESUZGRVJFTlRJQUwiPkRJRkZFUkVOVElBTDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgJzxlbT48Yj5EaWZmZXJlbnRpYWw8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sI0NBUl9WQUxVRSI+Q0FSX1ZBTFVFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSAnPGVtPjxiPkNhcjwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCNESUZGRVJFTlRJQUxfVkFMVUUiPkRJRkZFUkVOVElBTF9WQUxVRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgJzxlbT48Yj5EaWZmZXJlbnRpYWw8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS51dGlsLkxpc3QmbHQ7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5VR1ZLaW5kPC9BPiZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCNWQUxVRVMiPlZBTFVFUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHB1YmxpYyByZWFkLW9ubHkgbGlzdCBvZiBhbGwgdGhlICc8ZW0+PGI+VUdWIEtpbmQ8L2I+PC9lbT4nIGVudW1lcmF0b3JzPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVHVktpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwjZ2V0KGludCkiPmdldDwvQT48L0I+KGludCZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgJzxlbT48Yj5VR1YgS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgaW50ZWdlciB2YWx1ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVHVktpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwjZ2V0KGphdmEubGFuZy5TdHJpbmcpIj5nZXQ8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bGl0ZXJhbCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlICc8ZW0+PGI+VUdWIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGxpdGVyYWwgdmFsdWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5VR1ZLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sI2dldEJ5TmFtZShqYXZhLmxhbmcuU3RyaW5nKSI+Z2V0QnlOYW1lPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25hbWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSAnPGVtPjxiPlVHViBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCNnZXRMaXRlcmFsKCkiPmdldExpdGVyYWw8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCNnZXROYW1lKCkiPmdldE5hbWU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sI2dldFZhbHVlKCkiPmdldFZhbHVlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwjdG9TdHJpbmcoKSI+dG9TdHJpbmc8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBsaXRlcmFsIHZhbHVlIG9mIHRoZSBlbnVtZXJhdG9yLCB3aGljaCBpcyBpdHMgc3RyaW5nIHJlcHJlc2VudGF0aW9uPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VUdWS2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCN2YWx1ZU9mKGphdmEubGFuZy5TdHJpbmcpIj52YWx1ZU9mPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25hbWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBlbnVtIGNvbnN0YW50IG9mIHRoaXMgdHlwZSB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5VR1ZLaW5kPC9BPltdPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwjdmFsdWVzKCkiPnZhbHVlczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYW4gYXJyYXkgY29udGFpbmluZyB0aGUgY29uc3RhbnRzIG9mIHRoaXMgZW51bSB0eXBlLCBpbgordGhlIG9yZGVyIHRoZXkncmUgZGVjbGFyZWQuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuRW51bSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLkVudW08L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5jb21wYXJlVG8sIGVxdWFscywgZ2V0RGVjbGFyaW5nQ2xhc3MsIGhhc2hDb2RlLCBuYW1lLCBvcmRpbmFsLCB2YWx1ZU9mPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmdldENsYXNzLCBub3RpZnksIG5vdGlmeUFsbCwgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBFTlVNIENPTlNUQU5UIERFVEFJTCA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZW51bV9jb25zdGFudF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5FbnVtIENvbnN0YW50IERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJESUZGRVJFTlRJQUwiPjwhLS0gLS0+PC9BPjxIMz4KK0RJRkZFUkVOVElBTDwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVHVktpbmQ8L0E+IDxCPkRJRkZFUkVOVElBTDwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgJzxlbT48Yj5EaWZmZXJlbnRpYWw8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwjRElGRkVSRU5USUFMX1ZBTFVFIj48Q09ERT5ESUZGRVJFTlRJQUxfVkFMVUU8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJDQVIiPjwhLS0gLS0+PC9BPjxIMz4KK0NBUjwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVHVktpbmQ8L0E+IDxCPkNBUjwvQj48L1BSRT4KKzxETD4KKzxERD5UaGUgJzxlbT48Yj5DYXI8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwjQ0FSX1ZBTFVFIj48Q09ERT5DQVJfVkFMVUU8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorCis8IS0tID09PT09PT09PT09PSBGSUVMRCBERVRBSUwgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJESUZGRVJFTlRJQUxfVkFMVUUiPjwhLS0gLS0+PC9BPjxIMz4KK0RJRkZFUkVOVElBTF9WQUxVRTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgPEI+RElGRkVSRU5USUFMX1ZBTFVFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPkRpZmZlcmVudGlhbDwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mICc8ZW0+PGI+RGlmZmVyZW50aWFsPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdCBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sI0RJRkZFUkVOVElBTCI+PENPREU+RElGRkVSRU5USUFMPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlVHVktpbmQuRElGRkVSRU5USUFMX1ZBTFVFIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkNBUl9WQUxVRSI+PCEtLSAtLT48L0E+PEgzPgorQ0FSX1ZBTFVFPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGZpbmFsIGludCA8Qj5DQVJfVkFMVUU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlICc8ZW0+PGI+Q2FyPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgJzxlbT48Yj5DYXI8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0IGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwjQ0FSIj48Q09ERT5DQVI8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVUdWS2luZC5DQVJfVkFMVUUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVkFMVUVTIj48IS0tIC0tPjwvQT48SDM+CitWQUxVRVM8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgamF2YS51dGlsLkxpc3QmbHQ7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5VR1ZLaW5kPC9BPiZndDsgPEI+VkFMVUVTPC9CPjwvUFJFPgorPERMPgorPEREPkEgcHVibGljIHJlYWQtb25seSBsaXN0IG9mIGFsbCB0aGUgJzxlbT48Yj5VR1YgS2luZDwvYj48L2VtPicgZW51bWVyYXRvcnMuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0idmFsdWVzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK3ZhbHVlczwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVHVktpbmQ8L0E+W10gPEI+dmFsdWVzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyBhbiBhcnJheSBjb250YWluaW5nIHRoZSBjb25zdGFudHMgb2YgdGhpcyBlbnVtIHR5cGUsIGluCit0aGUgb3JkZXIgdGhleSdyZSBkZWNsYXJlZC4gIFRoaXMgbWV0aG9kIG1heSBiZSB1c2VkIHRvIGl0ZXJhdGUKK292ZXIgdGhlIGNvbnN0YW50cyBhcyBmb2xsb3dzOgorPHByZT4KK2ZvcihVR1ZLaW5kIGMgOiBVR1ZLaW5kLnZhbHVlcygpKQorICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oYyk7Cis8L3ByZT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hbiBhcnJheSBjb250YWluaW5nIHRoZSBjb25zdGFudHMgb2YgdGhpcyBlbnVtIHR5cGUsIGluCit0aGUgb3JkZXIgdGhleSdyZSBkZWNsYXJlZDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0idmFsdWVPZihqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgordmFsdWVPZjwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVHVktpbmQ8L0E+IDxCPnZhbHVlT2Y8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuYW1lKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIGVudW0gY29uc3RhbnQgb2YgdGhpcyB0eXBlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLgorVGhlIHN0cmluZyBtdXN0IG1hdGNoIDxJPmV4YWN0bHk8L0k+IGFuIGlkZW50aWZpZXIgdXNlZCB0byBkZWNsYXJlIGFuCitlbnVtIGNvbnN0YW50IGluIHRoaXMgdHlwZS4gIChFeHRyYW5lb3VzIHdoaXRlc3BhY2UgY2hhcmFjdGVycyBhcmUgCitub3QgcGVybWl0dGVkLikKKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmFtZTwvQ09ERT4gLSB0aGUgbmFtZSBvZiB0aGUgZW51bSBjb25zdGFudCB0byBiZSByZXR1cm5lZC4KKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGVudW0gY29uc3RhbnQgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUKKzxEVD48Qj5UaHJvd3M6PC9CPgorPEREPjxDT0RFPmphdmEubGFuZy5JbGxlZ2FsQXJndW1lbnRFeGNlcHRpb248L0NPREU+IC0gaWYgdGhpcyBlbnVtIHR5cGUgaGFzIG5vIGNvbnN0YW50Cit3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0KGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitnZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5VR1ZLaW5kPC9BPiA8Qj5nZXQ8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtsaXRlcmFsKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlICc8ZW0+PGI+VUdWIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGxpdGVyYWwgdmFsdWUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0QnlOYW1lKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitnZXRCeU5hbWU8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5VR1ZLaW5kPC9BPiA8Qj5nZXRCeU5hbWU8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuYW1lKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlICc8ZW0+PGI+VUdWIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0KGludCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldDwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVHVktpbmQ8L0E+IDxCPmdldDwvQj4oaW50Jm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgJzxlbT48Yj5VR1YgS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgaW50ZWdlciB2YWx1ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRWYWx1ZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRWYWx1ZTwvSDM+Cis8UFJFPgorcHVibGljIGludCA8Qj5nZXRWYWx1ZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmdldFZhbHVlPC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3I8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TmFtZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXROYW1lPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXROYW1lPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+Z2V0TmFtZTwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FbnVtZXJhdG9yPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmFtZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TGl0ZXJhbCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRMaXRlcmFsPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRMaXRlcmFsPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+Z2V0TGl0ZXJhbDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FbnVtZXJhdG9yPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbGl0ZXJhbDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0idG9TdHJpbmcoKSI+PCEtLSAtLT48L0E+PEgzPgordG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPnRvU3RyaW5nPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbGl0ZXJhbCB2YWx1ZSBvZiB0aGUgZW51bWVyYXRvciwgd2hpY2ggaXMgaXRzIHN0cmluZyByZXByZXNlbnRhdGlvbi4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPnRvU3RyaW5nPC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5qYXZhLmxhbmcuRW51bSZsdDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVHVktpbmQ8L0E+Jmd0OzwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1VHVktpbmQuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlVHVktpbmQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2VudW1fY29uc3RhbnRfc3VtbWFyeSI+RU5VTSBDT05TVEFOVFM8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwOzxBIEhSRUY9IiNlbnVtX2NvbnN0YW50X2RldGFpbCI+RU5VTSBDT05TVEFOVFM8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9kZXRhaWwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNDBhZDdjCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbApAQCAtMCwwICsxLDcxMSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI4IENFVCAyMDEyIC0tPgorPFRJVExFPgorVW5pdEtpbmQKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVW5pdEtpbmQgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVuaXRLaW5kIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1VuaXRLaW5kLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlVuaXRLaW5kLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNlbnVtX2NvbnN0YW50X3N1bW1hcnkiPkVOVU0gQ09OU1RBTlRTPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZW51bV9jb25zdGFudF9kZXRhaWwiPkVOVU0gQ09OU1RBTlRTPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvRk9OVD4KKzxCUj4KK0VudW0gVW5pdEtpbmQ8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPmphdmEubGFuZy5FbnVtJmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPiZndDsKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVW5pdEtpbmQ8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5qYXZhLmlvLlNlcmlhbGl6YWJsZSwgamF2YS5sYW5nLkNvbXBhcmFibGUmbHQ7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VW5pdEtpbmQ8L0E+Jmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3I8L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBlbnVtIDxCPlVuaXRLaW5kPC9CPjxEVD5leHRlbmRzIGphdmEubGFuZy5FbnVtJmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPiZndDs8RFQ+aW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIGxpdGVyYWxzIG9mIHRoZSBlbnVtZXJhdGlvbiAnPGVtPjxiPlVuaXQgS2luZDwvYj48L2VtPicsCisgYW5kIHV0aWxpdHkgbWV0aG9kcyBmb3Igd29ya2luZyB3aXRoIHRoZW0uCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRVbml0S2luZCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRVbml0S2luZCgpPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT09PT0gRU5VTSBDT05TVEFOVCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJlbnVtX2NvbnN0YW50X3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5FbnVtIENvbnN0YW50IFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjREVHUkVFIj5ERUdSRUU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlICc8ZW0+PGI+RGVncmVlPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdDwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjSU5DSCI+SU5DSDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgJzxlbT48Yj5JbmNoPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdDwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjTUVURVIiPk1FVEVSPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSAnPGVtPjxiPk1ldGVyPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdDwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjUkFESUFOIj5SQURJQU48L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlICc8ZW0+PGI+UmFkaWFuPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdDwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjREVHUkVFX1ZBTFVFIj5ERUdSRUVfVkFMVUU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlICc8ZW0+PGI+RGVncmVlPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCNJTkNIX1ZBTFVFIj5JTkNIX1ZBTFVFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSAnPGVtPjxiPkluY2g8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sI01FVEVSX1ZBTFVFIj5NRVRFUl9WQUxVRTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgJzxlbT48Yj5NZXRlcjwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjUkFESUFOX1ZBTFVFIj5SQURJQU5fVkFMVUU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlICc8ZW0+PGI+UmFkaWFuPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEudXRpbC5MaXN0Jmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPiZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjVkFMVUVTIj5WQUxVRVM8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSBwdWJsaWMgcmVhZC1vbmx5IGxpc3Qgb2YgYWxsIHRoZSAnPGVtPjxiPlVuaXQgS2luZDwvYj48L2VtPicgZW51bWVyYXRvcnM8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCNnZXQoaW50KSI+Z2V0PC9BPjwvQj4oaW50Jm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSAnPGVtPjxiPlVuaXQgS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgaW50ZWdlciB2YWx1ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Vbml0S2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjZ2V0KGphdmEubGFuZy5TdHJpbmcpIj5nZXQ8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bGl0ZXJhbCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlICc8ZW0+PGI+VW5pdCBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBsaXRlcmFsIHZhbHVlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCNnZXRCeU5hbWUoamF2YS5sYW5nLlN0cmluZykiPmdldEJ5TmFtZTwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuYW1lKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgJzxlbT48Yj5Vbml0IEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCNnZXRMaXRlcmFsKCkiPmdldExpdGVyYWw8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjZ2V0TmFtZSgpIj5nZXROYW1lPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjZ2V0VmFsdWUoKSI+Z2V0VmFsdWU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjdG9TdHJpbmcoKSI+dG9TdHJpbmc8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBsaXRlcmFsIHZhbHVlIG9mIHRoZSBlbnVtZXJhdG9yLCB3aGljaCBpcyBpdHMgc3RyaW5nIHJlcHJlc2VudGF0aW9uPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCN2YWx1ZU9mKGphdmEubGFuZy5TdHJpbmcpIj52YWx1ZU9mPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25hbWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBlbnVtIGNvbnN0YW50IG9mIHRoaXMgdHlwZSB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VW5pdEtpbmQ8L0E+W108L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjdmFsdWVzKCkiPnZhbHVlczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYW4gYXJyYXkgY29udGFpbmluZyB0aGUgY29uc3RhbnRzIG9mIHRoaXMgZW51bSB0eXBlLCBpbgordGhlIG9yZGVyIHRoZXkncmUgZGVjbGFyZWQuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuRW51bSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLkVudW08L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5jb21wYXJlVG8sIGVxdWFscywgZ2V0RGVjbGFyaW5nQ2xhc3MsIGhhc2hDb2RlLCBuYW1lLCBvcmRpbmFsLCB2YWx1ZU9mPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmdldENsYXNzLCBub3RpZnksIG5vdGlmeUFsbCwgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBFTlVNIENPTlNUQU5UIERFVEFJTCA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZW51bV9jb25zdGFudF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5FbnVtIENvbnN0YW50IERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJJTkNIIj48IS0tIC0tPjwvQT48SDM+CitJTkNIPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGZpbmFsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPiA8Qj5JTkNIPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPkluY2g8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sI0lOQ0hfVkFMVUUiPjxDT0RFPklOQ0hfVkFMVUU8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJNRVRFUiI+PCEtLSAtLT48L0E+PEgzPgorTUVURVI8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VW5pdEtpbmQ8L0E+IDxCPk1FVEVSPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPk1ldGVyPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdC4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCNNRVRFUl9WQUxVRSI+PENPREU+TUVURVJfVkFMVUU8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJERUdSRUUiPjwhLS0gLS0+PC9BPjxIMz4KK0RFR1JFRTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Vbml0S2luZDwvQT4gPEI+REVHUkVFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPkRlZ3JlZTwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjREVHUkVFX1ZBTFVFIj48Q09ERT5ERUdSRUVfVkFMVUU8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJSQURJQU4iPjwhLS0gLS0+PC9BPjxIMz4KK1JBRElBTjwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Vbml0S2luZDwvQT4gPEI+UkFESUFOPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPlJhZGlhbjwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjUkFESUFOX1ZBTFVFIj48Q09ERT5SQURJQU5fVkFMVUU8L0NPREU+PC9BPjwvREw+Cis8L0RMPgorCis8IS0tID09PT09PT09PT09PSBGSUVMRCBERVRBSUwgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJJTkNIX1ZBTFVFIj48IS0tIC0tPjwvQT48SDM+CitJTkNIX1ZBTFVFPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGZpbmFsIGludCA8Qj5JTkNIX1ZBTFVFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPkluY2g8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiAnPGVtPjxiPkluY2g8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0IGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sI0lOQ0giPjxDT0RFPklOQ0g8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVW5pdEtpbmQuSU5DSF9WQUxVRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJNRVRFUl9WQUxVRSI+PCEtLSAtLT48L0E+PEgzPgorTUVURVJfVkFMVUU8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgaW50IDxCPk1FVEVSX1ZBTFVFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPk1ldGVyPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgJzxlbT48Yj5NZXRlcjwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjTUVURVIiPjxDT0RFPk1FVEVSPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlVuaXRLaW5kLk1FVEVSX1ZBTFVFIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9IkRFR1JFRV9WQUxVRSI+PCEtLSAtLT48L0E+PEgzPgorREVHUkVFX1ZBTFVFPC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIGZpbmFsIGludCA8Qj5ERUdSRUVfVkFMVUU8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlICc8ZW0+PGI+RGVncmVlPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgJzxlbT48Yj5EZWdyZWU8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0IGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sI0RFR1JFRSI+PENPREU+REVHUkVFPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlVuaXRLaW5kLkRFR1JFRV9WQUxVRSI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJSQURJQU5fVkFMVUUiPjwhLS0gLS0+PC9BPjxIMz4KK1JBRElBTl9WQUxVRTwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgPEI+UkFESUFOX1ZBTFVFPC9CPjwvUFJFPgorPERMPgorPEREPlRoZSAnPGVtPjxiPlJhZGlhbjwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mICc8ZW0+PGI+UmFkaWFuPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdCBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCNSQURJQU4iPjxDT0RFPlJBRElBTjwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Vbml0S2luZC5SQURJQU5fVkFMVUUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iVkFMVUVTIj48IS0tIC0tPjwvQT48SDM+CitWQUxVRVM8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgamF2YS51dGlsLkxpc3QmbHQ7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VW5pdEtpbmQ8L0E+Jmd0OyA8Qj5WQUxVRVM8L0I+PC9QUkU+Cis8REw+Cis8REQ+QSBwdWJsaWMgcmVhZC1vbmx5IGxpc3Qgb2YgYWxsIHRoZSAnPGVtPjxiPlVuaXQgS2luZDwvYj48L2VtPicgZW51bWVyYXRvcnMuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPERMPgorPC9ETD4KKzwvREw+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0idmFsdWVzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK3ZhbHVlczwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyBmaW5hbCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Vbml0S2luZDwvQT5bXSA8Qj52YWx1ZXM8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIGFuIGFycmF5IGNvbnRhaW5pbmcgdGhlIGNvbnN0YW50cyBvZiB0aGlzIGVudW0gdHlwZSwgaW4KK3RoZSBvcmRlciB0aGV5J3JlIGRlY2xhcmVkLiAgVGhpcyBtZXRob2QgbWF5IGJlIHVzZWQgdG8gaXRlcmF0ZQorb3ZlciB0aGUgY29uc3RhbnRzIGFzIGZvbGxvd3M6Cis8cHJlPgorZm9yKFVuaXRLaW5kIGMgOiBVbml0S2luZC52YWx1ZXMoKSkKKyAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKGMpOworPC9wcmU+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YW4gYXJyYXkgY29udGFpbmluZyB0aGUgY29uc3RhbnRzIG9mIHRoaXMgZW51bSB0eXBlLCBpbgordGhlIG9yZGVyIHRoZXkncmUgZGVjbGFyZWQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InZhbHVlT2YoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3ZhbHVlT2Y8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VW5pdEtpbmQ8L0E+IDxCPnZhbHVlT2Y8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuYW1lKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIGVudW0gY29uc3RhbnQgb2YgdGhpcyB0eXBlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLgorVGhlIHN0cmluZyBtdXN0IG1hdGNoIDxJPmV4YWN0bHk8L0k+IGFuIGlkZW50aWZpZXIgdXNlZCB0byBkZWNsYXJlIGFuCitlbnVtIGNvbnN0YW50IGluIHRoaXMgdHlwZS4gIChFeHRyYW5lb3VzIHdoaXRlc3BhY2UgY2hhcmFjdGVycyBhcmUgCitub3QgcGVybWl0dGVkLikKKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmFtZTwvQ09ERT4gLSB0aGUgbmFtZSBvZiB0aGUgZW51bSBjb25zdGFudCB0byBiZSByZXR1cm5lZC4KKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGVudW0gY29uc3RhbnQgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUKKzxEVD48Qj5UaHJvd3M6PC9CPgorPEREPjxDT0RFPmphdmEubGFuZy5JbGxlZ2FsQXJndW1lbnRFeGNlcHRpb248L0NPREU+IC0gaWYgdGhpcyBlbnVtIHR5cGUgaGFzIG5vIGNvbnN0YW50Cit3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0KGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitnZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VW5pdEtpbmQ8L0E+IDxCPmdldDwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO2xpdGVyYWwpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgJzxlbT48Yj5Vbml0IEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGxpdGVyYWwgdmFsdWUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0QnlOYW1lKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitnZXRCeU5hbWU8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VW5pdEtpbmQ8L0E+IDxCPmdldEJ5TmFtZTwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25hbWUpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgJzxlbT48Yj5Vbml0IEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0KGludCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldDwvSDM+Cis8UFJFPgorcHVibGljIHN0YXRpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Vbml0S2luZDwvQT4gPEI+Z2V0PC9CPihpbnQmbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSAnPGVtPjxiPlVuaXQgS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgaW50ZWdlciB2YWx1ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRWYWx1ZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRWYWx1ZTwvSDM+Cis8UFJFPgorcHVibGljIGludCA8Qj5nZXRWYWx1ZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmdldFZhbHVlPC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3I8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TmFtZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXROYW1lPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXROYW1lPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+Z2V0TmFtZTwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FbnVtZXJhdG9yPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmFtZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TGl0ZXJhbCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRMaXRlcmFsPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRMaXRlcmFsPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+Z2V0TGl0ZXJhbDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FbnVtZXJhdG9yPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbGl0ZXJhbDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0idG9TdHJpbmcoKSI+PCEtLSAtLT48L0E+PEgzPgordG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPnRvU3RyaW5nPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgbGl0ZXJhbCB2YWx1ZSBvZiB0aGUgZW51bWVyYXRvciwgd2hpY2ggaXMgaXRzIHN0cmluZyByZXByZXNlbnRhdGlvbi4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPnRvU3RyaW5nPC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5qYXZhLmxhbmcuRW51bSZsdDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Vbml0S2luZDwvQT4mZ3Q7PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvVW5pdEtpbmQuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iVW5pdEtpbmQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2VudW1fY29uc3RhbnRfc3VtbWFyeSI+RU5VTSBDT05TVEFOVFM8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwOzxBIEhSRUY9IiNlbnVtX2NvbnN0YW50X2RldGFpbCI+RU5VTSBDT05TVEFOVFM8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9kZXRhaWwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XYXRlclN1cmZhY2UuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmMzYWVhYTUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XYXRlclN1cmZhY2UuaHRtbApAQCAtMCwwICsxLDIyNSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI4IENFVCAyMDEyIC0tPgorPFRJVExFPgorV2F0ZXJTdXJmYWNlCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLldhdGVyU3VyZmFjZSBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IldhdGVyU3VyZmFjZSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9XYXRlclN1cmZhY2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IldhdGVyU3VyZmFjZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvRk9OVD4KKzxCUj4KK0ludGVyZmFjZSBXYXRlclN1cmZhY2U8L0gyPgorPERMPgorPERUPjxCPkFsbCBTdXBlcmludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+QWxsIEtub3duIEltcGxlbWVudGluZyBDbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1dhdGVyU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5XYXRlclN1cmZhY2VJbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5XYXRlclN1cmZhY2U8L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+V2F0ZXIgU3VyZmFjZTwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRXYXRlclN1cmZhY2UoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0V2F0ZXJTdXJmYWNlKCk8L0NPREU+PC9BPjwvREw+Cis8SFI+CisKKzxQPgorCis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBoeXNpY2FsT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0RXZlbG92ZXNJbigpIj5nZXRFdmVsb3Zlc0luPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0SGFzU3VyZmFjZSgpIj5nZXRIYXNTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjc2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPnNldEhhc1N1cmZhY2U8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9XYXRlclN1cmZhY2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IldhdGVyU3VyZmFjZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2IwNjJmNgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwKQEAgLTAsMCArMSwxMTg0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjggQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitXaGVlbFN5c3RlbQorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5XaGVlbFN5c3RlbSBpbnRlcmZhY2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IldoZWVsU3lzdGVtIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1doZWVsU3lzdGVtLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwO05FWFQgQ0xBU1M8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iV2hlZWxTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvRk9OVD4KKzxCUj4KK0ludGVyZmFjZSBXaGVlbFN5c3RlbTwvSDI+Cis8REw+Cis8RFQ+PEI+QWxsIFN1cGVyaW50ZXJmYWNlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWN0dWF0b3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFjdHVhdG9yU3lzdGVtPC9BPiwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5BbGwgS25vd24gSW1wbGVtZW50aW5nIENsYXNzZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2hlZWxTeXN0ZW1JbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGludGVyZmFjZSA8Qj5XaGVlbFN5c3RlbTwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWN0dWF0b3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFjdHVhdG9yU3lzdGVtPC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPldoZWVsIFN5c3RlbTwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisKKyA8cD4KKyBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgPHVsPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsUmFkaXVzKCkiPjxDT0RFPjxlbT5XaGVlbCBSYWRpdXM8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFdpZHRoKCkiPjxDT0RFPjxlbT5XaGVlbCBXaWR0aDwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25SZXN0TGVuZ3RoKCkiPjxDT0RFPjxlbT5TdXNwZW5zaW9uIFJlc3QgTGVuZ3RoPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0KCkiPjxDT0RFPjxlbT5XaGVlbCBDb25uZWN0aW9uIEhlaWdodDwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFR5cGVPZldoZWVsKCkiPjxDT0RFPjxlbT5UeXBlIE9mIFdoZWVsPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRGtwKCkiPjxDT0RFPjxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEa3A8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEa2koKSI+PENPREU+PGVtPldoZWVsIFZlbG9jaXR5IFBJIERraTwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURrZCgpIj48Q09ERT48ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtkPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxTdGVlcmluZ1BJRGtwKCkiPjxDT0RFPjxlbT5XaGVlbCBTdGVlcmluZyBQSSBEa3A8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFN0ZWVyaW5nUElEa2QoKSI+PENPREU+PGVtPldoZWVsIFN0ZWVyaW5nIFBJIERrZDwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsRnJpY3Rpb24oKSI+PENPREU+PGVtPldoZWVsIEZyaWN0aW9uPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0U3VzcGVuc2lvblN0aWZmbmVzcygpIj48Q09ERT48ZW0+U3VzcGVuc2lvbiBTdGlmZm5lc3M8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRTdXNwZW5zaW9uRGFtcGluZygpIj48Q09ERT48ZW0+U3VzcGVuc2lvbiBEYW1waW5nPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uKCkiPjxDT0RFPjxlbT5TdXNwZW5zaW9uIENvbXByZXNzaW9uPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bSgpIj48Q09ERT48ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRG1heCBTdW08L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEbWF4VmFsKCkiPjxDT0RFPjxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEbWF4IFZhbDwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0V2hlZWxTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uKCkiPmdldFN1c3BlbnNpb25Db21wcmVzc2lvbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlN1c3BlbnNpb24gQ29tcHJlc3Npb248L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25EYW1waW5nKCkiPmdldFN1c3BlbnNpb25EYW1waW5nPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+U3VzcGVuc2lvbiBEYW1waW5nPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRTdXNwZW5zaW9uUmVzdExlbmd0aCgpIj5nZXRTdXNwZW5zaW9uUmVzdExlbmd0aDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlN1c3BlbnNpb24gUmVzdCBMZW5ndGg8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25TdGlmZm5lc3MoKSI+Z2V0U3VzcGVuc2lvblN0aWZmbmVzczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlN1c3BlbnNpb24gU3RpZmZuZXNzPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRUeXBlT2ZXaGVlbCgpIj5nZXRUeXBlT2ZXaGVlbDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlR5cGUgT2YgV2hlZWw8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsQ29ubmVjdGlvbkhlaWdodCgpIj5nZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5XaGVlbCBDb25uZWN0aW9uIEhlaWdodDwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxGcmljdGlvbigpIj5nZXRXaGVlbEZyaWN0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2hlZWwgRnJpY3Rpb248L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsUmFkaXVzKCkiPmdldFdoZWVsUmFkaXVzPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2hlZWwgUmFkaXVzPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFN0ZWVyaW5nUElEa2QoKSI+Z2V0V2hlZWxTdGVlcmluZ1BJRGtkPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2hlZWwgU3RlZXJpbmcgUEkgRGtkPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFN0ZWVyaW5nUElEa3AoKSI+Z2V0V2hlZWxTdGVlcmluZ1BJRGtwPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2hlZWwgU3RlZXJpbmcgUEkgRGtwPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEa2QoKSI+Z2V0V2hlZWxWZWxvY2l0eVBJRGtkPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRGtkPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEa2koKSI+Z2V0V2hlZWxWZWxvY2l0eVBJRGtpPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRGtpPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEa3AoKSI+Z2V0V2hlZWxWZWxvY2l0eVBJRGtwPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRGtwPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtKCkiPmdldFdoZWVsVmVsb2NpdHlQSURtYXhTdW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5XaGVlbCBWZWxvY2l0eSBQSSBEbWF4IFN1bTwvYj48L2VtPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbCgpIj5nZXRXaGVlbFZlbG9jaXR5UElEbWF4VmFsPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRG1heCBWYWw8L2I+PC9lbT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsV2lkdGgoKSI+Z2V0V2hlZWxXaWR0aDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPldoZWVsIFdpZHRoPC9iPjwvZW0+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRTdXNwZW5zaW9uQ29tcHJlc3Npb24oamF2YS5sYW5nLlN0cmluZykiPnNldFN1c3BlbnNpb25Db21wcmVzc2lvbjwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uKCkiPjxDT0RFPjxlbT5TdXNwZW5zaW9uIENvbXByZXNzaW9uPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0U3VzcGVuc2lvbkRhbXBpbmcoamF2YS5sYW5nLlN0cmluZykiPnNldFN1c3BlbnNpb25EYW1waW5nPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRTdXNwZW5zaW9uRGFtcGluZygpIj48Q09ERT48ZW0+U3VzcGVuc2lvbiBEYW1waW5nPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0U3VzcGVuc2lvblJlc3RMZW5ndGgoamF2YS5sYW5nLlN0cmluZykiPnNldFN1c3BlbnNpb25SZXN0TGVuZ3RoPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRTdXNwZW5zaW9uUmVzdExlbmd0aCgpIj48Q09ERT48ZW0+U3VzcGVuc2lvbiBSZXN0IExlbmd0aDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI3NldFN1c3BlbnNpb25TdGlmZm5lc3MoamF2YS5sYW5nLlN0cmluZykiPnNldFN1c3BlbnNpb25TdGlmZm5lc3M8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25TdGlmZm5lc3MoKSI+PENPREU+PGVtPlN1c3BlbnNpb24gU3RpZmZuZXNzPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0VHlwZU9mV2hlZWwoamF2YS5sYW5nLlN0cmluZykiPnNldFR5cGVPZldoZWVsPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRUeXBlT2ZXaGVlbCgpIj48Q09ERT48ZW0+VHlwZSBPZiBXaGVlbDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI3NldFdoZWVsQ29ubmVjdGlvbkhlaWdodChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0PC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQoKSI+PENPREU+PGVtPldoZWVsIENvbm5lY3Rpb24gSGVpZ2h0PC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0V2hlZWxGcmljdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0V2hlZWxGcmljdGlvbjwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxGcmljdGlvbigpIj48Q09ERT48ZW0+V2hlZWwgRnJpY3Rpb248L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRXaGVlbFJhZGl1cyhqYXZhLmxhbmcuU3RyaW5nKSI+c2V0V2hlZWxSYWRpdXM8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsUmFkaXVzKCkiPjxDT0RFPjxlbT5XaGVlbCBSYWRpdXM8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRXaGVlbFN0ZWVyaW5nUElEa2QoamF2YS5sYW5nLlN0cmluZykiPnNldFdoZWVsU3RlZXJpbmdQSURrZDwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxTdGVlcmluZ1BJRGtkKCkiPjxDT0RFPjxlbT5XaGVlbCBTdGVlcmluZyBQSSBEa2Q8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRXaGVlbFN0ZWVyaW5nUElEa3AoamF2YS5sYW5nLlN0cmluZykiPnNldFdoZWVsU3RlZXJpbmdQSURrcDwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxTdGVlcmluZ1BJRGtwKCkiPjxDT0RFPjxlbT5XaGVlbCBTdGVlcmluZyBQSSBEa3A8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRXaGVlbFZlbG9jaXR5UElEa2QoamF2YS5sYW5nLlN0cmluZykiPnNldFdoZWVsVmVsb2NpdHlQSURrZDwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRGtkKCkiPjxDT0RFPjxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEa2Q8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRXaGVlbFZlbG9jaXR5UElEa2koamF2YS5sYW5nLlN0cmluZykiPnNldFdoZWVsVmVsb2NpdHlQSURraTwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRGtpKCkiPjxDT0RFPjxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEa2k8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRXaGVlbFZlbG9jaXR5UElEa3AoamF2YS5sYW5nLlN0cmluZykiPnNldFdoZWVsVmVsb2NpdHlQSURrcDwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRGtwKCkiPjxDT0RFPjxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEa3A8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtKGphdmEubGFuZy5TdHJpbmcpIj5zZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtKCkiPjxDT0RFPjxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEbWF4IFN1bTwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI3NldFdoZWVsVmVsb2NpdHlQSURtYXhWYWwoamF2YS5sYW5nLlN0cmluZykiPnNldFdoZWVsVmVsb2NpdHlQSURtYXhWYWw8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURtYXhWYWwoKSI+PENPREU+PGVtPldoZWVsIFZlbG9jaXR5IFBJIERtYXggVmFsPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0V2hlZWxXaWR0aChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0V2hlZWxXaWR0aDwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxXaWR0aCgpIj48Q09ERT48ZW0+V2hlZWwgV2lkdGg8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxPcmllbnRhdGlvbigpIj5nZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbFBvc2l0aW9uKCkiPmdldExvY2FsUG9zaXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsT3JpZW50YXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsUG9zaXRpb248L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImdldFdoZWVsUmFkaXVzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFdoZWVsUmFkaXVzPC9IMz4KKzxQUkU+CitqYXZhLmxhbmcuU3RyaW5nIDxCPmdldFdoZWVsUmFkaXVzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2hlZWwgUmFkaXVzPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5XaGVlbCBSYWRpdXM8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPldoZWVsIFJhZGl1czwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0V2hlZWxSYWRpdXMoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPnNldFdoZWVsUmFkaXVzKFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRXaGVlbFN5c3RlbV9XaGVlbFJhZGl1cygpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRXaGVlbFN5c3RlbV9XaGVlbFJhZGl1cygpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFdoZWVsUmFkaXVzKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRXaGVlbFJhZGl1czwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRXaGVlbFJhZGl1czwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxSYWRpdXMoKSI+PENPREU+PGVtPldoZWVsIFJhZGl1czwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPldoZWVsIFJhZGl1czwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxSYWRpdXMoKSI+PENPREU+Z2V0V2hlZWxSYWRpdXMoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXaGVlbFdpZHRoKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFdoZWVsV2lkdGg8L0gzPgorPFBSRT4KK2phdmEubGFuZy5TdHJpbmcgPEI+Z2V0V2hlZWxXaWR0aDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPldoZWVsIFdpZHRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5XaGVlbCBXaWR0aDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+V2hlZWwgV2lkdGg8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI3NldFdoZWVsV2lkdGgoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPnNldFdoZWVsV2lkdGgoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1doZWVsV2lkdGgoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0V2hlZWxTeXN0ZW1fV2hlZWxXaWR0aCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFdoZWVsV2lkdGgoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFdoZWVsV2lkdGg8L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0V2hlZWxXaWR0aDwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxXaWR0aCgpIj48Q09ERT48ZW0+V2hlZWwgV2lkdGg8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5XaGVlbCBXaWR0aDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxXaWR0aCgpIj48Q09ERT5nZXRXaGVlbFdpZHRoKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U3VzcGVuc2lvblJlc3RMZW5ndGgoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U3VzcGVuc2lvblJlc3RMZW5ndGg8L0gzPgorPFBSRT4KK2phdmEubGFuZy5TdHJpbmcgPEI+Z2V0U3VzcGVuc2lvblJlc3RMZW5ndGg8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5TdXNwZW5zaW9uIFJlc3QgTGVuZ3RoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5TdXNwZW5zaW9uIFJlc3QgTGVuZ3RoPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5TdXNwZW5zaW9uIFJlc3QgTGVuZ3RoPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRTdXNwZW5zaW9uUmVzdExlbmd0aChqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+c2V0U3VzcGVuc2lvblJlc3RMZW5ndGgoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25SZXN0TGVuZ3RoKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25SZXN0TGVuZ3RoKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0U3VzcGVuc2lvblJlc3RMZW5ndGgoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFN1c3BlbnNpb25SZXN0TGVuZ3RoPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldFN1c3BlbnNpb25SZXN0TGVuZ3RoPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRTdXNwZW5zaW9uUmVzdExlbmd0aCgpIj48Q09ERT48ZW0+U3VzcGVuc2lvbiBSZXN0IExlbmd0aDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlN1c3BlbnNpb24gUmVzdCBMZW5ndGg8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25SZXN0TGVuZ3RoKCkiPjxDT0RFPmdldFN1c3BlbnNpb25SZXN0TGVuZ3RoKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFdoZWVsQ29ubmVjdGlvbkhlaWdodDwvSDM+Cis8UFJFPgoramF2YS5sYW5nLlN0cmluZyA8Qj5nZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5XaGVlbCBDb25uZWN0aW9uIEhlaWdodDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+V2hlZWwgQ29ubmVjdGlvbiBIZWlnaHQ8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPldoZWVsIENvbm5lY3Rpb24gSGVpZ2h0PC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPnNldFdoZWVsQ29ubmVjdGlvbkhlaWdodChTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxDb25uZWN0aW9uSGVpZ2h0KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFdoZWVsU3lzdGVtX1doZWVsQ29ubmVjdGlvbkhlaWdodCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFdoZWVsQ29ubmVjdGlvbkhlaWdodChqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0PC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldFdoZWVsQ29ubmVjdGlvbkhlaWdodDwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0KCkiPjxDT0RFPjxlbT5XaGVlbCBDb25uZWN0aW9uIEhlaWdodDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPldoZWVsIENvbm5lY3Rpb24gSGVpZ2h0PC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQoKSI+PENPREU+Z2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0VHlwZU9mV2hlZWwoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0VHlwZU9mV2hlZWw8L0gzPgorPFBSRT4KK2phdmEubGFuZy5TdHJpbmcgPEI+Z2V0VHlwZU9mV2hlZWw8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5UeXBlIE9mIFdoZWVsPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5UeXBlIE9mIFdoZWVsPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5UeXBlIE9mIFdoZWVsPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRUeXBlT2ZXaGVlbChqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+c2V0VHlwZU9mV2hlZWwoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1R5cGVPZldoZWVsKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFdoZWVsU3lzdGVtX1R5cGVPZldoZWVsKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0VHlwZU9mV2hlZWwoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFR5cGVPZldoZWVsPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldFR5cGVPZldoZWVsPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRUeXBlT2ZXaGVlbCgpIj48Q09ERT48ZW0+VHlwZSBPZiBXaGVlbDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlR5cGUgT2YgV2hlZWw8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFR5cGVPZldoZWVsKCkiPjxDT0RFPmdldFR5cGVPZldoZWVsKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V2hlZWxWZWxvY2l0eVBJRGtwKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFdoZWVsVmVsb2NpdHlQSURrcDwvSDM+Cis8UFJFPgoramF2YS5sYW5nLlN0cmluZyA8Qj5nZXRXaGVlbFZlbG9jaXR5UElEa3A8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5XaGVlbCBWZWxvY2l0eSBQSSBEa3A8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPldoZWVsIFZlbG9jaXR5IFBJIERrcDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtwPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRXaGVlbFZlbG9jaXR5UElEa3AoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPnNldFdoZWVsVmVsb2NpdHlQSURrcChTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtwKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURrcCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFdoZWVsVmVsb2NpdHlQSURrcChqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0V2hlZWxWZWxvY2l0eVBJRGtwPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldFdoZWVsVmVsb2NpdHlQSURrcDwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRGtwKCkiPjxDT0RFPjxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEa3A8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEa3A8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURrcCgpIj48Q09ERT5nZXRXaGVlbFZlbG9jaXR5UElEa3AoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXaGVlbFZlbG9jaXR5UElEa2koKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2hlZWxWZWxvY2l0eVBJRGtpPC9IMz4KKzxQUkU+CitqYXZhLmxhbmcuU3RyaW5nIDxCPmdldFdoZWVsVmVsb2NpdHlQSURraTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPldoZWVsIFZlbG9jaXR5IFBJIERraTwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtpPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEa2k8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI3NldFdoZWVsVmVsb2NpdHlQSURraShqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+c2V0V2hlZWxWZWxvY2l0eVBJRGtpKFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEa2koKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtpKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0V2hlZWxWZWxvY2l0eVBJRGtpKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRXaGVlbFZlbG9jaXR5UElEa2k8L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0V2hlZWxWZWxvY2l0eVBJRGtpPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEa2koKSI+PENPREU+PGVtPldoZWVsIFZlbG9jaXR5IFBJIERraTwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPldoZWVsIFZlbG9jaXR5IFBJIERraTwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRGtpKCkiPjxDT0RFPmdldFdoZWVsVmVsb2NpdHlQSURraSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFdoZWVsVmVsb2NpdHlQSURrZCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRXaGVlbFZlbG9jaXR5UElEa2Q8L0gzPgorPFBSRT4KK2phdmEubGFuZy5TdHJpbmcgPEI+Z2V0V2hlZWxWZWxvY2l0eVBJRGtkPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRGtkPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEa2Q8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPldoZWVsIFZlbG9jaXR5IFBJIERrZDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0V2hlZWxWZWxvY2l0eVBJRGtkKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5zZXRXaGVlbFZlbG9jaXR5UElEa2QoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURrZCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEa2QoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRXaGVlbFZlbG9jaXR5UElEa2QoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFdoZWVsVmVsb2NpdHlQSURrZDwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRXaGVlbFZlbG9jaXR5UElEa2Q8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURrZCgpIj48Q09ERT48ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtkPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtkPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEa2QoKSI+PENPREU+Z2V0V2hlZWxWZWxvY2l0eVBJRGtkKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V2hlZWxTdGVlcmluZ1BJRGtwKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFdoZWVsU3RlZXJpbmdQSURrcDwvSDM+Cis8UFJFPgoramF2YS5sYW5nLlN0cmluZyA8Qj5nZXRXaGVlbFN0ZWVyaW5nUElEa3A8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5XaGVlbCBTdGVlcmluZyBQSSBEa3A8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPldoZWVsIFN0ZWVyaW5nIFBJIERrcDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+V2hlZWwgU3RlZXJpbmcgUEkgRGtwPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRXaGVlbFN0ZWVyaW5nUElEa3AoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPnNldFdoZWVsU3RlZXJpbmdQSURrcChTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxTdGVlcmluZ1BJRGtwKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFdoZWVsU3lzdGVtX1doZWVsU3RlZXJpbmdQSURrcCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFdoZWVsU3RlZXJpbmdQSURrcChqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0V2hlZWxTdGVlcmluZ1BJRGtwPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldFdoZWVsU3RlZXJpbmdQSURrcDwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxTdGVlcmluZ1BJRGtwKCkiPjxDT0RFPjxlbT5XaGVlbCBTdGVlcmluZyBQSSBEa3A8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5XaGVlbCBTdGVlcmluZyBQSSBEa3A8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsU3RlZXJpbmdQSURrcCgpIj48Q09ERT5nZXRXaGVlbFN0ZWVyaW5nUElEa3AoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXaGVlbFN0ZWVyaW5nUElEa2QoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2hlZWxTdGVlcmluZ1BJRGtkPC9IMz4KKzxQUkU+CitqYXZhLmxhbmcuU3RyaW5nIDxCPmdldFdoZWVsU3RlZXJpbmdQSURrZDwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPldoZWVsIFN0ZWVyaW5nIFBJIERrZDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+V2hlZWwgU3RlZXJpbmcgUEkgRGtkPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5XaGVlbCBTdGVlcmluZyBQSSBEa2Q8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI3NldFdoZWVsU3RlZXJpbmdQSURrZChqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+c2V0V2hlZWxTdGVlcmluZ1BJRGtkKFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRXaGVlbFN5c3RlbV9XaGVlbFN0ZWVyaW5nUElEa2QoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0V2hlZWxTeXN0ZW1fV2hlZWxTdGVlcmluZ1BJRGtkKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0V2hlZWxTdGVlcmluZ1BJRGtkKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRXaGVlbFN0ZWVyaW5nUElEa2Q8L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0V2hlZWxTdGVlcmluZ1BJRGtkPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFN0ZWVyaW5nUElEa2QoKSI+PENPREU+PGVtPldoZWVsIFN0ZWVyaW5nIFBJIERrZDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPldoZWVsIFN0ZWVyaW5nIFBJIERrZDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxTdGVlcmluZ1BJRGtkKCkiPjxDT0RFPmdldFdoZWVsU3RlZXJpbmdQSURrZCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFdoZWVsRnJpY3Rpb24oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2hlZWxGcmljdGlvbjwvSDM+Cis8UFJFPgoramF2YS5sYW5nLlN0cmluZyA8Qj5nZXRXaGVlbEZyaWN0aW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2hlZWwgRnJpY3Rpb248L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPldoZWVsIEZyaWN0aW9uPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwKKyB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisgPC9wPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5XaGVlbCBGcmljdGlvbjwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0V2hlZWxGcmljdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+c2V0V2hlZWxGcmljdGlvbihTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxGcmljdGlvbigpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRXaGVlbFN5c3RlbV9XaGVlbEZyaWN0aW9uKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0V2hlZWxGcmljdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0V2hlZWxGcmljdGlvbjwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRXaGVlbEZyaWN0aW9uPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbEZyaWN0aW9uKCkiPjxDT0RFPjxlbT5XaGVlbCBGcmljdGlvbjwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPldoZWVsIEZyaWN0aW9uPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbEZyaWN0aW9uKCkiPjxDT0RFPmdldFdoZWVsRnJpY3Rpb24oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTdXNwZW5zaW9uU3RpZmZuZXNzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFN1c3BlbnNpb25TdGlmZm5lc3M8L0gzPgorPFBSRT4KK2phdmEubGFuZy5TdHJpbmcgPEI+Z2V0U3VzcGVuc2lvblN0aWZmbmVzczwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlN1c3BlbnNpb24gU3RpZmZuZXNzPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5TdXNwZW5zaW9uIFN0aWZmbmVzczwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+U3VzcGVuc2lvbiBTdGlmZm5lc3M8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI3NldFN1c3BlbnNpb25TdGlmZm5lc3MoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPnNldFN1c3BlbnNpb25TdGlmZm5lc3MoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25TdGlmZm5lc3MoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvblN0aWZmbmVzcygpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFN1c3BlbnNpb25TdGlmZm5lc3MoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFN1c3BlbnNpb25TdGlmZm5lc3M8L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0U3VzcGVuc2lvblN0aWZmbmVzczwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0U3VzcGVuc2lvblN0aWZmbmVzcygpIj48Q09ERT48ZW0+U3VzcGVuc2lvbiBTdGlmZm5lc3M8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5TdXNwZW5zaW9uIFN0aWZmbmVzczwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0U3VzcGVuc2lvblN0aWZmbmVzcygpIj48Q09ERT5nZXRTdXNwZW5zaW9uU3RpZmZuZXNzKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U3VzcGVuc2lvbkRhbXBpbmcoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U3VzcGVuc2lvbkRhbXBpbmc8L0gzPgorPFBSRT4KK2phdmEubGFuZy5TdHJpbmcgPEI+Z2V0U3VzcGVuc2lvbkRhbXBpbmc8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5TdXNwZW5zaW9uIERhbXBpbmc8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDxwPgorIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlN1c3BlbnNpb24gRGFtcGluZzwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+U3VzcGVuc2lvbiBEYW1waW5nPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRTdXNwZW5zaW9uRGFtcGluZyhqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+c2V0U3VzcGVuc2lvbkRhbXBpbmcoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25EYW1waW5nKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25EYW1waW5nKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0U3VzcGVuc2lvbkRhbXBpbmcoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFN1c3BlbnNpb25EYW1waW5nPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldFN1c3BlbnNpb25EYW1waW5nPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7dmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRTdXNwZW5zaW9uRGFtcGluZygpIj48Q09ERT48ZW0+U3VzcGVuc2lvbiBEYW1waW5nPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+U3VzcGVuc2lvbiBEYW1waW5nPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRTdXNwZW5zaW9uRGFtcGluZygpIj48Q09ERT5nZXRTdXNwZW5zaW9uRGFtcGluZygpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFN1c3BlbnNpb25Db21wcmVzc2lvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTdXNwZW5zaW9uQ29tcHJlc3Npb248L0gzPgorPFBSRT4KK2phdmEubGFuZy5TdHJpbmcgPEI+Z2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+U3VzcGVuc2lvbiBDb21wcmVzc2lvbjwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+U3VzcGVuc2lvbiBDb21wcmVzc2lvbjwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+U3VzcGVuc2lvbiBDb21wcmVzc2lvbjwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5zZXRTdXNwZW5zaW9uQ29tcHJlc3Npb24oU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25Db21wcmVzc2lvbigpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uQ29tcHJlc3Npb24oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRTdXNwZW5zaW9uQ29tcHJlc3Npb24oamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFN1c3BlbnNpb25Db21wcmVzc2lvbjwvSDM+Cis8UFJFPgordm9pZCA8Qj5zZXRTdXNwZW5zaW9uQ29tcHJlc3Npb248L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25Db21wcmVzc2lvbigpIj48Q09ERT48ZW0+U3VzcGVuc2lvbiBDb21wcmVzc2lvbjwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT52YWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlN1c3BlbnNpb24gQ29tcHJlc3Npb248L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25Db21wcmVzc2lvbigpIj48Q09ERT5nZXRTdXNwZW5zaW9uQ29tcHJlc3Npb24oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFdoZWVsVmVsb2NpdHlQSURtYXhTdW08L0gzPgorPFBSRT4KK2phdmEubGFuZy5TdHJpbmcgPEI+Z2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bTwvQj4oKTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPldoZWVsIFZlbG9jaXR5IFBJIERtYXggU3VtPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8cD4KKyBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEbWF4IFN1bTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorIDwvcD4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRG1heCBTdW08L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI3NldFdoZWVsVmVsb2NpdHlQSURtYXhTdW0oamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPnNldFdoZWVsVmVsb2NpdHlQSURtYXhTdW0oU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURtYXhTdW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRG1heFN1bSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFdoZWVsVmVsb2NpdHlQSURtYXhTdW0oamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFdoZWVsVmVsb2NpdHlQSURtYXhTdW08L0gzPgorPFBSRT4KK3ZvaWQgPEI+c2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bTwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO3ZhbHVlKTwvUFJFPgorPERMPgorPEREPlNldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bSgpIj48Q09ERT48ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRG1heCBTdW08L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGUuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEbWF4IFN1bTwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bSgpIj48Q09ERT5nZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRXaGVlbFZlbG9jaXR5UElEbWF4VmFsPC9IMz4KKzxQUkU+CitqYXZhLmxhbmcuU3RyaW5nIDxCPmdldFdoZWVsVmVsb2NpdHlQSURtYXhWYWw8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5XaGVlbCBWZWxvY2l0eSBQSSBEbWF4IFZhbDwvYj48L2VtPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPHA+CisgSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRG1heCBWYWw8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLAorIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKyA8L3A+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPldoZWVsIFZlbG9jaXR5IFBJIERtYXggVmFsPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRXaGVlbFZlbG9jaXR5UElEbWF4VmFsKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5zZXRXaGVlbFZlbG9jaXR5UElEbWF4VmFsKFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4VmFsKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURtYXhWYWwoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRXaGVlbFZlbG9jaXR5UElEbWF4VmFsKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRXaGVlbFZlbG9jaXR5UElEbWF4VmFsPC9IMz4KKzxQUkU+Cit2b2lkIDxCPnNldFdoZWVsVmVsb2NpdHlQSURtYXhWYWw8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt2YWx1ZSk8L1BSRT4KKzxETD4KKzxERD5TZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURtYXhWYWwoKSI+PENPREU+PGVtPldoZWVsIFZlbG9jaXR5IFBJIERtYXggVmFsPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRG1heCBWYWw8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURtYXhWYWwoKSI+PENPREU+Z2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1doZWVsU3lzdGVtLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwO05FWFQgQ0xBU1M8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iV2hlZWxTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0FjdHVhdG9yU3lzdGVtLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQWN0dWF0b3JTeXN0ZW0uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NDBjYzJhCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0FjdHVhdG9yU3lzdGVtLmh0bWwKQEAgLTAsMCArMSwyOTAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRvclN5c3RlbQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRvclN5c3RlbSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdG9yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9BY3R1YXRvclN5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFjdHVhdG9yU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgSW50ZXJmYWNlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRvclN5c3RlbTwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdG9yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BY3R1YXRvclN5c3RlbTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWN0dWF0b3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFjdHVhdG9yU3lzdGVtPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5TdWJpbnRlcmZhY2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWN0dWF0b3JTeXN0ZW08L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVuZ2luZVN5c3RlbTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5FbmdpbmUgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5XaGVlbCBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWN0dWF0b3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFjdHVhdG9yU3lzdGVtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdG9yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BY3R1YXRvclN5c3RlbTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnkuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUFjdHVhdG9yU3lzdGVtKCkiPmNyZWF0ZUFjdHVhdG9yU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5BY3R1YXRvciBTeXN0ZW08L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWN0dWF0b3JTeXN0ZW08L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5DbGFzc2VzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCBpbXBsZW1lbnQgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdG9yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BY3R1YXRvclN5c3RlbTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FjdHVhdG9yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFjdHVhdG9yU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QWN0dWF0b3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+RW5naW5lU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+RW5naW5lIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2hlZWxTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5XaGVlbCBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdG9yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BY3R1YXRvclN5c3RlbTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWN0dWF0b3JTeXN0ZW08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlQWN0dWF0b3JTeXN0ZW0oKSI+Y3JlYXRlQWN0dWF0b3JTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWN0dWF0b3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFjdHVhdG9yU3lzdGVtPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+IHdpdGggcGFyYW1ldGVycyBvZiB0eXBlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWN0dWF0b3JTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MU3dpdGNoLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZUFjdHVhdG9yU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRvclN5c3RlbSkiPmNhc2VBY3R1YXRvclN5c3RlbTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWN0dWF0b3JTeXN0ZW08L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+QWN0dWF0b3IgU3lzdGVtPC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQWN0dWF0b3JTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJBY3R1YXRvclN5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0FnZW50Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQWdlbnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42YzQ1NjMwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0FnZW50Lmh0bWwKQEAgLTAsMCArMSwzMDYgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BZ2VudAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BZ2VudCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9BZ2VudC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFnZW50Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgSW50ZXJmYWNlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BZ2VudDwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BZ2VudDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5TdWJpbnRlcmZhY2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWdlbnQ8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SHVtYW48L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SHVtYW48L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGVkZXN0cmlhbjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QZWRlc3RyaWFuPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Sb2JvdDwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWdlbnQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlQWdlbnQoKSI+Y3JlYXRlQWdlbnQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkFnZW50PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWdlbnQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BZ2VudEltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFnZW50PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IdW1hbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5IdW1hbkltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkh1bWFuPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QZWRlc3RyaWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBlZGVzdHJpYW5JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QZWRlc3RyaWFuPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdEltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWdlbnQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUFnZW50KCkiPmNyZWF0ZUFnZW50PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+IHdpdGggcGFyYW1ldGVycyBvZiB0eXBlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWdlbnQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MU3dpdGNoLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZUFnZW50KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BZ2VudCkiPmNhc2VBZ2VudDwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWdlbnQ8L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+QWdlbnQ8L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9BZ2VudC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFnZW50Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQWxnb3JpdGhtLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQWxnb3JpdGhtLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGU3YTlhZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9BbGdvcml0aG0uaHRtbApAQCAtMCwwICsxLDM4NiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0iOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0FsZ29yaXRobS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFsZ29yaXRobS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVBbGdvcml0aG0oKSI+Y3JlYXRlQWxnb3JpdGhtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5BbGdvcml0aG08L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5UcmFuc2l0aW9uLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sI2dldEVmZmVjdCgpIj5nZXRFZmZlY3Q8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5FZmZlY3Q8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlRyYW5zaXRpb24uPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwjZ2V0R3VhcmQoKSI+Z2V0R3VhcmQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5HdWFyZDwvYj48L2VtPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+U3RhdGUuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sI2dldE9wZXJhdGlvbigpIj5nZXRPcGVyYXRpb248L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5PcGVyYXRpb248L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5UcmFuc2l0aW9uLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sI3NldEVmZmVjdChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtKSI+c2V0RWZmZWN0PC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPiZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sI2dldEVmZmVjdCgpIj48Q09ERT48ZW0+RWZmZWN0PC9lbT48L0NPREU+PC9BPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+VHJhbnNpdGlvbi48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCNzZXRHdWFyZChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtKSI+c2V0R3VhcmQ8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG08L0E+Jm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwjZ2V0R3VhcmQoKSI+PENPREU+PGVtPkd1YXJkPC9lbT48L0NPREU+PC9BPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+U3RhdGUuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sI3NldE9wZXJhdGlvbihvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtKSI+c2V0T3BlcmF0aW9uPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPiZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCNnZXRPcGVyYXRpb24oKSI+PENPREU+PGVtPk9wZXJhdGlvbjwvZW0+PC9DT0RFPjwvQT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BbGdvcml0aG1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BbGdvcml0aG08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5UcmFuc2l0aW9uSW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCNiYXNpY0dldEVmZmVjdCgpIj5iYXNpY0dldEVmZmVjdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5UcmFuc2l0aW9uSW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCNiYXNpY0dldEd1YXJkKCkiPmJhc2ljR2V0R3VhcmQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+U3RhdGVJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuaHRtbCNiYXNpY0dldE9wZXJhdGlvbigpIj5iYXNpY0dldE9wZXJhdGlvbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUFsZ29yaXRobSgpIj5jcmVhdGVBbGdvcml0aG08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+VHJhbnNpdGlvbkltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwjZ2V0RWZmZWN0KCkiPmdldEVmZmVjdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5UcmFuc2l0aW9uSW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCNnZXRHdWFyZCgpIj5nZXRHdWFyZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5TdGF0ZUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5odG1sI2dldE9wZXJhdGlvbigpIj5nZXRPcGVyYXRpb248L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5UcmFuc2l0aW9uSW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCNzZXRFZmZlY3Qob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobSkiPnNldEVmZmVjdDwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT4mbmJzcDtuZXdFZmZlY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+VHJhbnNpdGlvbkltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwjc2V0R3VhcmQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobSkiPnNldEd1YXJkPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPiZuYnNwO25ld0d1YXJkKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlN0YXRlSW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhdGVJbXBsLmh0bWwjc2V0T3BlcmF0aW9uKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0pIj5zZXRPcGVyYXRpb248L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG08L0E+Jm5ic3A7bmV3T3BlcmF0aW9uKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+IHdpdGggcGFyYW1ldGVycyBvZiB0eXBlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxTd2l0Y2guPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlQWxnb3JpdGhtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0pIj5jYXNlQWxnb3JpdGhtPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkFsZ29yaXRobTwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9BbGdvcml0aG0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJBbGdvcml0aG0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQWxnb3JpdGhtTGlicmFyeS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBmNTFiNmUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQWxnb3JpdGhtTGlicmFyeS5odG1sCkBAIC0wLDAgKzEsMjUwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtTGlicmFyeQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG1MaWJyYXJ5IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQWxnb3JpdGhtTGlicmFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFsZ29yaXRobUxpYnJhcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBJbnRlcmZhY2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobUxpYnJhcnk8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG1MaWJyYXJ5PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG1MaWJyYXJ5PC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtTGlicmFyeTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG1MaWJyYXJ5PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlQWxnb3JpdGhtTGlicmFyeSgpIj5jcmVhdGVBbGdvcml0aG1MaWJyYXJ5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5BbGdvcml0aG0gTGlicmFyeTwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobUxpYnJhcnk8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5DbGFzc2VzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCBpbXBsZW1lbnQgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobUxpYnJhcnk8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1MaWJyYXJ5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFsZ29yaXRobUxpYnJhcnlJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BbGdvcml0aG0gTGlicmFyeTwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtTGlicmFyeTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG1MaWJyYXJ5PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUFsZ29yaXRobUxpYnJhcnkoKSI+Y3JlYXRlQWxnb3JpdGhtTGlicmFyeTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG1MaWJyYXJ5PC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+IHdpdGggcGFyYW1ldGVycyBvZiB0eXBlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG1MaWJyYXJ5PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTFN3aXRjaC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VBbGdvcml0aG1MaWJyYXJ5KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG1MaWJyYXJ5KSI+Y2FzZUFsZ29yaXRobUxpYnJhcnk8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtTGlicmFyeTwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5BbGdvcml0aG0gTGlicmFyeTwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQWxnb3JpdGhtTGlicmFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFsZ29yaXRobUxpYnJhcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9CbGVuZGVyTW9yc2UuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9CbGVuZGVyTW9yc2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNDJjOWE0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0JsZW5kZXJNb3JzZS5odG1sCkBAIC0wLDAgKzEsMjUwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQmxlbmRlck1vcnNlCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkJsZW5kZXJNb3JzZSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQmxlbmRlck1vcnNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQmxlbmRlck1vcnNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgSW50ZXJmYWNlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5CbGVuZGVyTW9yc2U8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJsZW5kZXJNb3JzZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5CbGVuZGVyTW9yc2U8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJsZW5kZXJNb3JzZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJsZW5kZXJNb3JzZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnkuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUJsZW5kZXJNb3JzZSgpIj5jcmVhdGVCbGVuZGVyTW9yc2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkJsZW5kZXIgTW9yc2U8L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJsZW5kZXJNb3JzZTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPkNsYXNzZXMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IGltcGxlbWVudCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5CbGVuZGVyTW9yc2U8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QmxlbmRlck1vcnNlSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QmxlbmRlciBNb3JzZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5CbGVuZGVyTW9yc2U8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5CbGVuZGVyTW9yc2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlQmxlbmRlck1vcnNlKCkiPmNyZWF0ZUJsZW5kZXJNb3JzZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QmxlbmRlck1vcnNlPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+IHdpdGggcGFyYW1ldGVycyBvZiB0eXBlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJsZW5kZXJNb3JzZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxTd2l0Y2guPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlQmxlbmRlck1vcnNlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5CbGVuZGVyTW9yc2UpIj5jYXNlQmxlbmRlck1vcnNlPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QmxlbmRlck1vcnNlPC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkJsZW5kZXIgTW9yc2U8L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQmxlbmRlck1vcnNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQmxlbmRlck1vcnNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQnVpbGRpbmcuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9CdWlsZGluZy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZiMGY3ZDgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQnVpbGRpbmcuaHRtbApAQCAtMCwwICsxLDI1MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkJ1aWxkaW5nCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkJ1aWxkaW5nIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQnVpbGRpbmcuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0J1aWxkaW5nLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQnVpbGRpbmcuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBJbnRlcmZhY2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkJ1aWxkaW5nPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQnVpbGRpbmcuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJ1aWxkaW5nPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CdWlsZGluZy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QnVpbGRpbmc8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CdWlsZGluZy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QnVpbGRpbmc8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQnVpbGRpbmcuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJ1aWxkaW5nPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlQnVpbGRpbmcoKSI+Y3JlYXRlQnVpbGRpbmc8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkJ1aWxkaW5nPC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQnVpbGRpbmcuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJ1aWxkaW5nPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CdWlsZGluZy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QnVpbGRpbmc8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CdWlsZGluZ0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5CdWlsZGluZ0ltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkJ1aWxkaW5nPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CdWlsZGluZy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QnVpbGRpbmc8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQnVpbGRpbmcuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJ1aWxkaW5nPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUJ1aWxkaW5nKCkiPmNyZWF0ZUJ1aWxkaW5nPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQnVpbGRpbmcuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJ1aWxkaW5nPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+IHdpdGggcGFyYW1ldGVycyBvZiB0eXBlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CdWlsZGluZy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QnVpbGRpbmc8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MU3dpdGNoLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZUJ1aWxkaW5nKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5CdWlsZGluZykiPmNhc2VCdWlsZGluZzwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CdWlsZGluZy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QnVpbGRpbmc8L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+QnVpbGRpbmc8L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0J1aWxkaW5nLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9CdWlsZGluZy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkJ1aWxkaW5nLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQ2FtZXJhU3lzdGVtLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQ2FtZXJhU3lzdGVtLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTM1ZTAyYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9DYW1lcmFTeXN0ZW0uaHRtbApAQCAtMCwwICsxLDI1MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNhbWVyYVN5c3RlbQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DYW1lcmFTeXN0ZW0iOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0NhbWVyYVN5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkNhbWVyYVN5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2FtZXJhU3lzdGVtPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q2FtZXJhU3lzdGVtPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVDYW1lcmFTeXN0ZW0oKSI+Y3JlYXRlQ2FtZXJhU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5DYW1lcmEgU3lzdGVtPC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5DbGFzc2VzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCBpbXBsZW1lbnQgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q2FtZXJhU3lzdGVtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkNhbWVyYVN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNhbWVyYSBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q2FtZXJhU3lzdGVtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q2FtZXJhU3lzdGVtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUNhbWVyYVN5c3RlbSgpIj5jcmVhdGVDYW1lcmFTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q2FtZXJhU3lzdGVtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTFN3aXRjaC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VDYW1lcmFTeXN0ZW0ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNhbWVyYVN5c3RlbSkiPmNhc2VDYW1lcmFTeXN0ZW08L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Q2FtZXJhIFN5c3RlbTwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9DYW1lcmFTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJDYW1lcmFTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Db2xsZWN0aW9uLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQ29sbGVjdGlvbi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI0MTAxMDkKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQ29sbGVjdGlvbi5odG1sCkBAIC0wLDAgKzEsMjUwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ29sbGVjdGlvbgorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Db2xsZWN0aW9uIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQ29sbGVjdGlvbi5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkNvbGxlY3Rpb24uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBJbnRlcmZhY2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNvbGxlY3Rpb248L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Db2xsZWN0aW9uPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Db2xsZWN0aW9uPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q29sbGVjdGlvbjwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Db2xsZWN0aW9uPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlQ29sbGVjdGlvbigpIj5jcmVhdGVDb2xsZWN0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Db2xsZWN0aW9uPC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q29sbGVjdGlvbjwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPkNsYXNzZXMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IGltcGxlbWVudCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q29sbGVjdGlvbjwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbGxlY3Rpb25JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q29sbGVjdGlvbkltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNvbGxlY3Rpb248L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbGxlY3Rpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNvbGxlY3Rpb248L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q29sbGVjdGlvbjwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnlJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVDb2xsZWN0aW9uKCkiPmNyZWF0ZUNvbGxlY3Rpb248L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q29sbGVjdGlvbjwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q29sbGVjdGlvbjwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxTd2l0Y2guPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlQ29sbGVjdGlvbihvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ29sbGVjdGlvbikiPmNhc2VDb2xsZWN0aW9uPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbGxlY3Rpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNvbGxlY3Rpb248L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Q29sbGVjdGlvbjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQ29sbGVjdGlvbi5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkNvbGxlY3Rpb24uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Db21wb3NlZERhdGEuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Db21wb3NlZERhdGEuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43OWQ0YzA3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0NvbXBvc2VkRGF0YS5odG1sCkBAIC0wLDAgKzEsMjUwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ29tcG9zZWREYXRhCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNvbXBvc2VkRGF0YSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbXBvc2VkRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQ29tcG9zZWREYXRhLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQ29tcG9zZWREYXRhLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgSW50ZXJmYWNlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Db21wb3NlZERhdGE8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNvbXBvc2VkRGF0YTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcG9zZWREYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Db21wb3NlZERhdGE8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNvbXBvc2VkRGF0YTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNvbXBvc2VkRGF0YTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnkuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUNvbXBvc2VkRGF0YSgpIj5jcmVhdGVDb21wb3NlZERhdGE8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkNvbXBvc2VkIERhdGE8L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNvbXBvc2VkRGF0YTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPkNsYXNzZXMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IGltcGxlbWVudCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcG9zZWREYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Db21wb3NlZERhdGE8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db21wb3NlZERhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q29tcG9zZWREYXRhSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q29tcG9zZWQgRGF0YTwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcG9zZWREYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Db21wb3NlZERhdGE8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcG9zZWREYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Db21wb3NlZERhdGE8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlQ29tcG9zZWREYXRhKCkiPmNyZWF0ZUNvbXBvc2VkRGF0YTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNvbXBvc2VkRGF0YTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcG9zZWREYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Db21wb3NlZERhdGE8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MU3dpdGNoLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZUNvbXBvc2VkRGF0YShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ29tcG9zZWREYXRhKSI+Y2FzZUNvbXBvc2VkRGF0YTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNvbXBvc2VkRGF0YTwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Db21wb3NlZCBEYXRhPC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0NvbXBvc2VkRGF0YS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkNvbXBvc2VkRGF0YS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0N5Y2FiVEsuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9DeWNhYlRLLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzUzMjdiNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9DeWNhYlRLLmh0bWwKQEAgLTAsMCArMSwyNTAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DeWNhYlRLCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkN5Y2FiVEsiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9DeWNhYlRLLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQ3ljYWJUSy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ3ljYWJUSzwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkN5Y2FiVEs8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkN5Y2FiVEs8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DeWNhYlRLPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkN5Y2FiVEs8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVDeWNhYlRLKCkiPmNyZWF0ZUN5Y2FiVEs8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkN5Y2FiIFRLPC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q3ljYWJUSzwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPkNsYXNzZXMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IGltcGxlbWVudCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q3ljYWJUSzwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q3ljYWJUS0ltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkN5Y2FiIFRLPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DeWNhYlRLPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkN5Y2FiVEs8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlQ3ljYWJUSygpIj5jcmVhdGVDeWNhYlRLPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q3ljYWJUSzwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q3ljYWJUSzwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxTd2l0Y2guPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlQ3ljYWJUSyhvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ3ljYWJUSykiPmNhc2VDeWNhYlRLPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkN5Y2FiVEs8L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Q3ljYWIgVEs8L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0N5Y2FiVEsuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJDeWNhYlRLLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDQ1NTNlOAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbApAQCAtMCwwICsxLDMwMyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGF0YUZsb3dEaXJlY3Rpb25LaW5kCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGF0YUZsb3dEaXJlY3Rpb25LaW5kIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgQ2xhc3M8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRhdGFGbG93RGlyZWN0aW9uS2luZDwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93RGlyZWN0aW9uS2luZDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPkZpZWxkcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gd2l0aCB0eXBlIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS51dGlsLkxpc3QmbHQ7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93RGlyZWN0aW9uS2luZDwvQT4mZ3Q7PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPkRhdGFGbG93RGlyZWN0aW9uS2luZC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sI1ZBTFVFUyI+VkFMVUVTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcHVibGljIHJlYWQtb25seSBsaXN0IG9mIGFsbCB0aGUgJzxlbT48Yj5EYXRhIEZsb3cgRGlyZWN0aW9uIEtpbmQ8L2I+PC9lbT4nIGVudW1lcmF0b3JzPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93RGlyZWN0aW9uS2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwjZ2V0KGludCkiPmdldDwvQT48L0I+KGludCZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgJzxlbT48Yj5EYXRhIEZsb3cgRGlyZWN0aW9uIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGludGVnZXIgdmFsdWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93RGlyZWN0aW9uS2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwjZ2V0KGphdmEubGFuZy5TdHJpbmcpIj5nZXQ8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bGl0ZXJhbCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlICc8ZW0+PGI+RGF0YSBGbG93IERpcmVjdGlvbiBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBsaXRlcmFsIHZhbHVlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPkRhdGFGbG93RGlyZWN0aW9uS2luZC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sI2dldEJ5TmFtZShqYXZhLmxhbmcuU3RyaW5nKSI+Z2V0QnlOYW1lPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25hbWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSAnPGVtPjxiPkRhdGEgRmxvdyBEaXJlY3Rpb24gS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5EYXRhRmxvd1BvcnQuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCNnZXREaXJlY3Rpb24oKSI+Z2V0RGlyZWN0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+RGlyZWN0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPkRhdGFGbG93RGlyZWN0aW9uS2luZC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sI3ZhbHVlT2YoamF2YS5sYW5nLlN0cmluZykiPnZhbHVlT2Y8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmFtZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIGVudW0gY29uc3RhbnQgb2YgdGhpcyB0eXBlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPltdPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPkRhdGFGbG93RGlyZWN0aW9uS2luZC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sI3ZhbHVlcygpIj52YWx1ZXM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGFuIGFycmF5IGNvbnRhaW5pbmcgdGhlIGNvbnN0YW50cyBvZiB0aGlzIGVudW0gdHlwZSwgaW4KK3RoZSBvcmRlciB0aGV5J3JlIGRlY2xhcmVkLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93RGlyZWN0aW9uS2luZDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+RGF0YUZsb3dQb3J0LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwjc2V0RGlyZWN0aW9uKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EYXRhRmxvd0RpcmVjdGlvbktpbmQpIj5zZXREaXJlY3Rpb248L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPiZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwjZ2V0RGlyZWN0aW9uKCkiPjxDT0RFPjxlbT5EaXJlY3Rpb248L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93RGlyZWN0aW9uS2luZDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlRGF0YUZsb3dEaXJlY3Rpb25LaW5kRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlRGF0YUZsb3dEaXJlY3Rpb25LaW5kRnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPkRhdGFGbG93UG9ydEltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCNnZXREaXJlY3Rpb24oKSI+Z2V0RGlyZWN0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHdpdGggcGFyYW1ldGVycyBvZiB0eXBlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPkRhdGFGbG93UG9ydEltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCNzZXREaXJlY3Rpb24ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRhdGFGbG93RGlyZWN0aW9uS2luZCkiPnNldERpcmVjdGlvbjwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0E+Jm5ic3A7bmV3RGlyZWN0aW9uKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvRGF0YUZsb3dQb3J0Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvRGF0YUZsb3dQb3J0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmUzNDk0OQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9EYXRhRmxvd1BvcnQuaHRtbApAQCAtMCwwICsxLDI3OSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRhdGFGbG93UG9ydAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EYXRhRmxvd1BvcnQiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0RhdGFGbG93UG9ydC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkRhdGFGbG93UG9ydC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGF0YUZsb3dQb3J0PC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd1BvcnQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1cyI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1cyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dQb3J0PC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1czwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd1BvcnQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5zd3QuZ3JhcGhpY3MuSW1hZ2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+QWN0aXZhdG9yLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvQWN0aXZhdG9yLmh0bWwjZ2V0Rmxvd1BvcnRJbWFnZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGF0YUZsb3dQb3J0KSI+Z2V0Rmxvd1BvcnRJbWFnZTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93UG9ydDwvQT4mbmJzcDtmbG93UG9ydCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0dldHMgdGhlIGZsb3cgcG9ydCBpbWFnZS48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd1BvcnQ8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93UG9ydDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93UG9ydDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnkuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZURhdGFGbG93UG9ydCgpIj5jcmVhdGVEYXRhRmxvd1BvcnQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkRhdGEgRmxvdyBQb3J0PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd1BvcnQ8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5DbGFzc2VzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCBpbXBsZW1lbnQgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dQb3J0PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRGF0YUZsb3dQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkRhdGFGbG93UG9ydEltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkRhdGEgRmxvdyBQb3J0PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93UG9ydDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93UG9ydDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnlJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVEYXRhRmxvd1BvcnQoKSI+Y3JlYXRlRGF0YUZsb3dQb3J0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dQb3J0PC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+IHdpdGggcGFyYW1ldGVycyBvZiB0eXBlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93UG9ydDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxTd2l0Y2guPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlRGF0YUZsb3dQb3J0KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EYXRhRmxvd1BvcnQpIj5jYXNlRGF0YUZsb3dQb3J0PC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dQb3J0PC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkRhdGEgRmxvdyBQb3J0PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0RhdGFGbG93UG9ydC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkRhdGFGbG93UG9ydC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0VuZ2luZVN5c3RlbS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0VuZ2luZVN5c3RlbS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRhODUzMTIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvRW5naW5lU3lzdGVtLmh0bWwKQEAgLTAsMCArMSwyNTAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FbmdpbmVTeXN0ZW0KKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRW5naW5lU3lzdGVtIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9FbmdpbmVTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJFbmdpbmVTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBJbnRlcmZhY2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkVuZ2luZVN5c3RlbTwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW5naW5lU3lzdGVtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVuZ2luZVN5c3RlbTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW5naW5lU3lzdGVtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW5naW5lU3lzdGVtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlRW5naW5lU3lzdGVtKCkiPmNyZWF0ZUVuZ2luZVN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+RW5naW5lIFN5c3RlbTwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW5naW5lU3lzdGVtPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVuZ2luZVN5c3RlbTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5FbmdpbmVTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5FbmdpbmUgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVuZ2luZVN5c3RlbTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVuZ2luZVN5c3RlbTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnlJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVFbmdpbmVTeXN0ZW0oKSI+Y3JlYXRlRW5naW5lU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW5naW5lU3lzdGVtPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+IHdpdGggcGFyYW1ldGVycyBvZiB0eXBlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVuZ2luZVN5c3RlbTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxTd2l0Y2guPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlRW5naW5lU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FbmdpbmVTeXN0ZW0pIj5jYXNlRW5naW5lU3lzdGVtPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW5naW5lU3lzdGVtPC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkVuZ2luZSBTeXN0ZW08L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvRW5naW5lU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRW5naW5lU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvRW52aXJvbm1lbnQuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9FbnZpcm9ubWVudC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIyYWM0MjQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvRW52aXJvbm1lbnQuaHRtbApAQCAtMCwwICsxLDI4MiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkVudmlyb25tZW50Cis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkVudmlyb25tZW50IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0Vudmlyb25tZW50Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRW52aXJvbm1lbnQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBJbnRlcmZhY2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkVudmlyb25tZW50PC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVudmlyb25tZW50PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW52aXJvbm1lbnQ8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW52aXJvbm1lbnQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVudmlyb25tZW50PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlRW52aXJvbm1lbnQoKSI+Y3JlYXRlRW52aXJvbm1lbnQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkVudmlyb25tZW50PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB0aGF0IHJldHVybiB0eXBlcyB3aXRoIGFyZ3VtZW50cyBvZiB0eXBlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW52aXJvbm1lbnQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3QmbHQ7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Vudmlyb25tZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5FbnZpcm9ubWVudDwvQT4mZ3Q7PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlBoeXNpY2FsT2JqZWN0LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRFdmVsb3Zlc0luKCkiPmdldEV2ZWxvdmVzSW48L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5FdmVsb3ZlcyBJbjwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3QuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVudmlyb25tZW50PC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW52aXJvbm1lbnQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbnZpcm9ubWVudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5FbnZpcm9ubWVudEltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkVudmlyb25tZW50PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW52aXJvbm1lbnQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVudmlyb25tZW50PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUVudmlyb25tZW50KCkiPmNyZWF0ZUVudmlyb25tZW50PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgcmV0dXJuIHR5cGVzIHdpdGggYXJndW1lbnRzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Vudmlyb25tZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5FbnZpcm9ubWVudDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdCZsdDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVudmlyb25tZW50PC9BPiZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+UGh5c2ljYWxPYmplY3RJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNnZXRFdmVsb3Zlc0luKCkiPmdldEV2ZWxvdmVzSW48L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW52aXJvbm1lbnQ8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Vudmlyb25tZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5FbnZpcm9ubWVudDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxTd2l0Y2guPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlRW52aXJvbm1lbnQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkVudmlyb25tZW50KSI+Y2FzZUVudmlyb25tZW50PC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Vudmlyb25tZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5FbnZpcm9ubWVudDwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5FbnZpcm9ubWVudDwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0Vudmlyb25tZW50Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRW52aXJvbm1lbnQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9GbG9vci5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0Zsb29yLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzhmMDllNQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9GbG9vci5odG1sCkBAIC0wLDAgKzEsMjUwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRmxvb3IKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRmxvb3IiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvRmxvb3IuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJGbG9vci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRmxvb3I8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Rmxvb3I8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5GbG9vcjwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5GbG9vcjwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Rmxvb3I8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVGbG9vcigpIj5jcmVhdGVGbG9vcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Rmxvb3I8L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Rmxvb3I8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5DbGFzc2VzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCBpbXBsZW1lbnQgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5GbG9vcjwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Zsb29ySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkZsb29ySW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Rmxvb3I8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5GbG9vcjwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Rmxvb3I8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlRmxvb3IoKSI+Y3JlYXRlRmxvb3I8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Rmxvb3I8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5GbG9vcjwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxTd2l0Y2guPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlRmxvb3Iob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkZsb29yKSI+Y2FzZUZsb29yPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5GbG9vcjwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5GbG9vcjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0Zsb29yLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRmxvb3IuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9HUFNTeXN0ZW0uaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9HUFNTeXN0ZW0uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wNzcxOGMyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0dQU1N5c3RlbS5odG1sCkBAIC0wLDAgKzEsMjUwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuR1BTU3lzdGVtCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkdQU1N5c3RlbSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvR1BTU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iR1BTU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgSW50ZXJmYWNlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5HUFNTeXN0ZW08L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkdQU1N5c3RlbTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5HUFNTeXN0ZW08L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkdQU1N5c3RlbTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkdQU1N5c3RlbTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnkuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUdQU1N5c3RlbSgpIj5jcmVhdGVHUFNTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkdQUyBTeXN0ZW08L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkdQU1N5c3RlbTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPkNsYXNzZXMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IGltcGxlbWVudCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5HUFNTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HUFNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+R1BTU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+R1BTIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5HUFNTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5HUFNTeXN0ZW08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlR1BTU3lzdGVtKCkiPmNyZWF0ZUdQU1N5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkdQU1N5c3RlbTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5HUFNTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MU3dpdGNoLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZUdQU1N5c3RlbShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuR1BTU3lzdGVtKSI+Y2FzZUdQU1N5c3RlbTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkdQU1N5c3RlbTwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5HUFMgU3lzdGVtPC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0dQU1N5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkdQU1N5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0dyb3VuZC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0dyb3VuZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVhMDJjNDIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvR3JvdW5kLmh0bWwKQEAgLTAsMCArMSwyNzQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Hcm91bmQKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuR3JvdW5kIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Hcm91bmQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJHcm91bmQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBJbnRlcmZhY2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkdyb3VuZDwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+R3JvdW5kPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Hcm91bmQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkdyb3VuZDwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+U3ViaW50ZXJmYWNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Hcm91bmQ8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Rmxvb3I8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Rmxvb3I8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxhbmRTdXJmYWNlPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxhbmQgU3VyZmFjZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YWlyczwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TdGFpcnM8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Hcm91bmQ8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5DbGFzc2VzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCBpbXBsZW1lbnQgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+R3JvdW5kPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRmxvb3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Rmxvb3JJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5GbG9vcjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR3JvdW5kSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkdyb3VuZEltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkdyb3VuZDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGFuZFN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TGFuZFN1cmZhY2VJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5MYW5kIFN1cmZhY2U8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YWlyc0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TdGFpcnNJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TdGFpcnM8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Hcm91bmQ8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+R3JvdW5kPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTFN3aXRjaC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VHcm91bmQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkdyb3VuZCkiPmNhc2VHcm91bmQ8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Hcm91bmQ8L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+R3JvdW5kPC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Hcm91bmQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0dyb3VuZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ikdyb3VuZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0hhcmR3YXJlLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvSGFyZHdhcmUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMjZjOTEzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0hhcmR3YXJlLmh0bWwKQEAgLTAsMCArMSwyNTAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5IYXJkd2FyZQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5IYXJkd2FyZSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0hhcmR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9IYXJkd2FyZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkhhcmR3YXJlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgSW50ZXJmYWNlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5IYXJkd2FyZTwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0hhcmR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5IYXJkd2FyZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSGFyZHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkhhcmR3YXJlPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSGFyZHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkhhcmR3YXJlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0hhcmR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5IYXJkd2FyZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnkuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUhhcmR3YXJlKCkiPmNyZWF0ZUhhcmR3YXJlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5IYXJkd2FyZTwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0hhcmR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5IYXJkd2FyZTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPkNsYXNzZXMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IGltcGxlbWVudCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSGFyZHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkhhcmR3YXJlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSGFyZHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+SGFyZHdhcmVJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5IYXJkd2FyZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSGFyZHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkhhcmR3YXJlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0hhcmR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5IYXJkd2FyZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnlJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVIYXJkd2FyZSgpIj5jcmVhdGVIYXJkd2FyZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IYXJkd2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SGFyZHdhcmU8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0hhcmR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5IYXJkd2FyZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxTd2l0Y2guPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlSGFyZHdhcmUob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkhhcmR3YXJlKSI+Y2FzZUhhcmR3YXJlPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0hhcmR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5IYXJkd2FyZTwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5IYXJkd2FyZTwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSGFyZHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0hhcmR3YXJlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iSGFyZHdhcmUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9IdW1hbi5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0h1bWFuLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTYxZGE1MQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9IdW1hbi5odG1sCkBAIC0wLDAgKzEsMjc0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSHVtYW4KKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSHVtYW4iOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvSHVtYW4uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJIdW1hbi5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSHVtYW48L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SHVtYW48L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5IdW1hbjwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+U3ViaW50ZXJmYWNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSHVtYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkh1bWFuPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGVkZXN0cmlhbjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QZWRlc3RyaWFuPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5IdW1hbjwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SHVtYW48L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVIdW1hbigpIj5jcmVhdGVIdW1hbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+SHVtYW48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SHVtYW48L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5DbGFzc2VzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCBpbXBsZW1lbnQgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5IdW1hbjwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0h1bWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkh1bWFuSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SHVtYW48L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BlZGVzdHJpYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGVkZXN0cmlhbkltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBlZGVzdHJpYW48L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5IdW1hbjwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SHVtYW48L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlSHVtYW4oKSI+Y3JlYXRlSHVtYW48L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SHVtYW48L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5IdW1hbjwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxTd2l0Y2guPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlSHVtYW4ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkh1bWFuKSI+Y2FzZUh1bWFuPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5IdW1hbjwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5IdW1hbjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSHVtYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0h1bWFuLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iSHVtYW4uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9JbWFnZVNlbnNvclN5c3RlbS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDAwNjg2ZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9JbWFnZVNlbnNvclN5c3RlbS5odG1sCkBAIC0wLDAgKzEsMjc0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSW1hZ2VTZW5zb3JTeXN0ZW0KKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSW1hZ2VTZW5zb3JTeXN0ZW0iOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9JbWFnZVNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJJbWFnZVNlbnNvclN5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSW1hZ2VTZW5zb3JTeXN0ZW08L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9JbWFnZVNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SW1hZ2VTZW5zb3JTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5JbWFnZVNlbnNvclN5c3RlbTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+U3ViaW50ZXJmYWNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkltYWdlU2Vuc29yU3lzdGVtPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q2FtZXJhIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9JbWFnZVNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SW1hZ2VTZW5zb3JTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkltYWdlU2Vuc29yU3lzdGVtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlSW1hZ2VTZW5zb3JTeXN0ZW0oKSI+Y3JlYXRlSW1hZ2VTZW5zb3JTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkltYWdlIFNlbnNvciBTeXN0ZW08L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9JbWFnZVNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SW1hZ2VTZW5zb3JTeXN0ZW08L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5DbGFzc2VzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCBpbXBsZW1lbnQgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5JbWFnZVNlbnNvclN5c3RlbTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5DYW1lcmFTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5DYW1lcmEgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9JbWFnZVNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5JbWFnZVNlbnNvclN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkltYWdlIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5JbWFnZVNlbnNvclN5c3RlbTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9JbWFnZVNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SW1hZ2VTZW5zb3JTeXN0ZW08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlSW1hZ2VTZW5zb3JTeXN0ZW0oKSI+Y3JlYXRlSW1hZ2VTZW5zb3JTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkltYWdlU2Vuc29yU3lzdGVtPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+IHdpdGggcGFyYW1ldGVycyBvZiB0eXBlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9JbWFnZVNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SW1hZ2VTZW5zb3JTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MU3dpdGNoLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZUltYWdlU2Vuc29yU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5JbWFnZVNlbnNvclN5c3RlbSkiPmNhc2VJbWFnZVNlbnNvclN5c3RlbTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9JbWFnZVNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SW1hZ2VTZW5zb3JTeXN0ZW08L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+SW1hZ2UgU2Vuc29yIFN5c3RlbTwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9MYW5kU3VyZmFjZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0xhbmRTdXJmYWNlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2QxZGY4NwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9MYW5kU3VyZmFjZS5odG1sCkBAIC0wLDAgKzEsMjUwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGFuZFN1cmZhY2UKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGFuZFN1cmZhY2UiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvTGFuZFN1cmZhY2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJMYW5kU3VyZmFjZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGFuZFN1cmZhY2U8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGFuZFN1cmZhY2U8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MYW5kU3VyZmFjZTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MYW5kU3VyZmFjZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGFuZFN1cmZhY2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVMYW5kU3VyZmFjZSgpIj5jcmVhdGVMYW5kU3VyZmFjZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TGFuZCBTdXJmYWNlPC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxhbmRTdXJmYWNlPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGFuZFN1cmZhY2U8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MYW5kU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MYW5kU3VyZmFjZUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxhbmQgU3VyZmFjZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxhbmRTdXJmYWNlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MYW5kU3VyZmFjZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnlJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVMYW5kU3VyZmFjZSgpIj5jcmVhdGVMYW5kU3VyZmFjZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MYW5kU3VyZmFjZTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxhbmRTdXJmYWNlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTFN3aXRjaC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VMYW5kU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGFuZFN1cmZhY2UpIj5jYXNlTGFuZFN1cmZhY2U8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxhbmRTdXJmYWNlPC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkxhbmQgU3VyZmFjZTwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0xhbmRTdXJmYWNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iTGFuZFN1cmZhY2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9MaWRhclN5c3RlbS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0xpZGFyU3lzdGVtLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWI4YWE0ZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9MaWRhclN5c3RlbS5odG1sCkBAIC0wLDAgKzEsMjUwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW0KKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW0iOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvTGlkYXJTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJMaWRhclN5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW08L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGlkYXJTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGlkYXJTeXN0ZW08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVMaWRhclN5c3RlbSgpIj5jcmVhdGVMaWRhclN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TGlkYXIgU3lzdGVtPC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxpZGFyU3lzdGVtPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGlkYXJTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MaWRhclN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxpZGFyIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxpZGFyU3lzdGVtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnlJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVMaWRhclN5c3RlbSgpIj5jcmVhdGVMaWRhclN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGlkYXJTeXN0ZW08L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxTd2l0Y2guPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlTGlkYXJTeXN0ZW0ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxpZGFyU3lzdGVtKSI+Y2FzZUxpZGFyU3lzdGVtPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5MaWRhciBTeXN0ZW08L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9MaWRhclN5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkxpZGFyU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzk1MmYyMAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbApAQCAtMCwwICsxLDI3NCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxvY2FsaXphdGlvblNlbnNvclN5c3RlbQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0iOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0xvY2FsaXphdGlvblNlbnNvclN5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkxvY2FsaXphdGlvblNlbnNvclN5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xvY2FsaXphdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5TdWJpbnRlcmZhY2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+R1BTU3lzdGVtPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkdQUyBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0oKSI+Y3JlYXRlTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Mb2NhbGl6YXRpb24gU2Vuc29yIFN5c3RlbTwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xvY2FsaXphdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dQU1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5HUFNTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5HUFMgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xvY2FsaXphdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xvY2FsaXphdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUxvY2FsaXphdGlvblNlbnNvclN5c3RlbSgpIj5jcmVhdGVMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xvY2FsaXphdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTFN3aXRjaC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxvY2FsaXphdGlvblNlbnNvclN5c3RlbSkiPmNhc2VMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xvY2FsaXphdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmUzY2ZiNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbApAQCAtMCwwICsxLDI3NCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0iOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ik9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5TdWJpbnRlcmZhY2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5MaWRhciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0oKSI+Y3JlYXRlT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5PYmplY3QgRGV0ZWN0aW9uIFNlbnNvciBTeXN0ZW08L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPkNsYXNzZXMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IGltcGxlbWVudCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MaWRhclN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxpZGFyIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtKCkiPmNyZWF0ZU9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MU3dpdGNoLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZU9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtKSI+Y2FzZU9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5PYmplY3QgRGV0ZWN0aW9uIFNlbnNvciBTeXN0ZW08L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNkNDM1MGUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbApAQCAtMCwwICsxLDI3NCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBJbnRlcmZhY2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPlN1YmludGVyZmFjZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5MaWRhciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnkuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtKCkiPmNyZWF0ZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5PYmplY3QgVHJhY2tpbmcgU2Vuc29yIFN5c3RlbTwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPkNsYXNzZXMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IGltcGxlbWVudCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TGlkYXJTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5MaWRhciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T2JqZWN0IFRyYWNraW5nIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0oKSI+Y3JlYXRlT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+IHdpdGggcGFyYW1ldGVycyBvZiB0eXBlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MU3dpdGNoLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSkiPmNhc2VPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+T2JqZWN0IFRyYWNraW5nIFNlbnNvciBTeXN0ZW08L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ik9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvT25Qb3J0Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvT25Qb3J0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTBjZWFjZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9PblBvcnQuaHRtbApAQCAtMCwwICsxLDI1MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9uUG9ydAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PblBvcnQiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL09uUG9ydC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ik9uUG9ydC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT25Qb3J0PC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PblBvcnQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T25Qb3J0PC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PblBvcnQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PblBvcnQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVPblBvcnQoKSI+Y3JlYXRlT25Qb3J0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5PbiBQb3J0PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PblBvcnQ8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5DbGFzc2VzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCBpbXBsZW1lbnQgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T25Qb3J0PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT25Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPk9uUG9ydEltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9uIFBvcnQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T25Qb3J0PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T25Qb3J0PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZU9uUG9ydCgpIj5jcmVhdGVPblBvcnQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9uUG9ydDwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PblBvcnQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MU3dpdGNoLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZU9uUG9ydChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT25Qb3J0KSI+Y2FzZU9uUG9ydDwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9uUG9ydDwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5PbiBQb3J0PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL09uUG9ydC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ik9uUG9ydC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1BlZGVzdHJpYW4uaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9QZWRlc3RyaWFuLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjM1NzgwYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9QZWRlc3RyaWFuLmh0bWwKQEAgLTAsMCArMSwyNTAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QZWRlc3RyaWFuCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBlZGVzdHJpYW4iOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9QZWRlc3RyaWFuLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUGVkZXN0cmlhbi5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGVkZXN0cmlhbjwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBlZGVzdHJpYW48L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBlZGVzdHJpYW48L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QZWRlc3RyaWFuPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBlZGVzdHJpYW48L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVQZWRlc3RyaWFuKCkiPmNyZWF0ZVBlZGVzdHJpYW48L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlBlZGVzdHJpYW48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QZWRlc3RyaWFuPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QZWRlc3RyaWFuPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGVkZXN0cmlhbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QZWRlc3RyaWFuSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGVkZXN0cmlhbjwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGVkZXN0cmlhbjwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QZWRlc3RyaWFuPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVBlZGVzdHJpYW4oKSI+Y3JlYXRlUGVkZXN0cmlhbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBlZGVzdHJpYW48L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBlZGVzdHJpYW48L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MU3dpdGNoLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZVBlZGVzdHJpYW4ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBlZGVzdHJpYW4pIj5jYXNlUGVkZXN0cmlhbjwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QZWRlc3RyaWFuPC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlBlZGVzdHJpYW48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1BlZGVzdHJpYW4uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQZWRlc3RyaWFuLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUGh5c2ljYWxEYXRhLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUGh5c2ljYWxEYXRhLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGJmYjA0YgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9QaHlzaWNhbERhdGEuaHRtbApAQCAtMCwwICsxLDI1MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBoeXNpY2FsRGF0YQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaHlzaWNhbERhdGEiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1BoeXNpY2FsRGF0YS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlBoeXNpY2FsRGF0YS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGh5c2ljYWxEYXRhPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbERhdGE8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxEYXRhPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbERhdGE8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbERhdGE8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVQaHlzaWNhbERhdGEoKSI+Y3JlYXRlUGh5c2ljYWxEYXRhPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5QaHlzaWNhbCBEYXRhPC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbERhdGE8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5DbGFzc2VzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCBpbXBsZW1lbnQgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxEYXRhPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxEYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBoeXNpY2FsRGF0YUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBoeXNpY2FsIERhdGE8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxEYXRhPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxEYXRhPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVBoeXNpY2FsRGF0YSgpIj5jcmVhdGVQaHlzaWNhbERhdGE8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbERhdGE8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxEYXRhPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTFN3aXRjaC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VQaHlzaWNhbERhdGEob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBoeXNpY2FsRGF0YSkiPmNhc2VQaHlzaWNhbERhdGE8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbERhdGE8L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UGh5c2ljYWwgRGF0YTwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9QaHlzaWNhbERhdGEuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQaHlzaWNhbERhdGEuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9QaHlzaWNhbE9iamVjdC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1BoeXNpY2FsT2JqZWN0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTNkN2I0YwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9QaHlzaWNhbE9iamVjdC5odG1sCkBAIC0wLDAgKzEsNDUwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGh5c2ljYWxPYmplY3QKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGh5c2ljYWxPYmplY3QiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQaHlzaWNhbE9iamVjdC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGh5c2ljYWxPYmplY3Q8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+U3ViaW50ZXJmYWNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFnZW50PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0J1aWxkaW5nLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5CdWlsZGluZzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5CdWlsZGluZzwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Rmxvb3I8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Rmxvb3I8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Hcm91bmQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+R3JvdW5kPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5IdW1hbjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5IdW1hbjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGFuZFN1cmZhY2U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TGFuZCBTdXJmYWNlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBlZGVzdHJpYW48L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGVkZXN0cmlhbjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGFuZXQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBsYW5ldDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QbGFuZXQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90PC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3RhaXJzPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlN0YWlyczwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdXJmYWNlPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlN1cmZhY2U8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XYXRlclN1cmZhY2U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+V2F0ZXIgU3VyZmFjZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlUGh5c2ljYWxPYmplY3QoKSI+Y3JlYXRlUGh5c2ljYWxPYmplY3Q8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlBoeXNpY2FsIE9iamVjdDwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPkNsYXNzZXMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IGltcGxlbWVudCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWdlbnRJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BZ2VudDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQnVpbGRpbmdJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QnVpbGRpbmdJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5CdWlsZGluZzwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRmxvb3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Rmxvb3JJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5GbG9vcjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR3JvdW5kSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkdyb3VuZEltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkdyb3VuZDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSHVtYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+SHVtYW5JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5IdW1hbjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGFuZFN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TGFuZFN1cmZhY2VJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5MYW5kIFN1cmZhY2U8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BlZGVzdHJpYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGVkZXN0cmlhbkltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBlZGVzdHJpYW48L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBoeXNpY2FsT2JqZWN0SW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGh5c2ljYWwgT2JqZWN0PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGFuZXRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGxhbmV0SW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGxhbmV0PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdEltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGFpcnNJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3RhaXJzSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3RhaXJzPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN1cmZhY2VJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TdXJmYWNlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XYXRlclN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2F0ZXJTdXJmYWNlSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+V2F0ZXIgU3VyZmFjZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnlJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQaHlzaWNhbE9iamVjdCgpIj5jcmVhdGVQaHlzaWNhbE9iamVjdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTFN3aXRjaC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VQaHlzaWNhbE9iamVjdChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGh5c2ljYWxPYmplY3QpIj5jYXNlUGh5c2ljYWxPYmplY3Q8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlBoeXNpY2FsIE9iamVjdDwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUGh5c2ljYWxPYmplY3QuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9QbGFuZXQuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9QbGFuZXQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kMTU0MDEzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1BsYW5ldC5odG1sCkBAIC0wLDAgKzEsMjUwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGxhbmV0Cis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBsYW5ldCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYW5ldC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUGxhbmV0Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUGxhbmV0Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgSW50ZXJmYWNlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QbGFuZXQ8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGFuZXQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBsYW5ldDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhbmV0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGFuZXQ8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGFuZXQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBsYW5ldDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGFuZXQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBsYW5ldDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnkuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVBsYW5ldCgpIj5jcmVhdGVQbGFuZXQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlBsYW5ldDwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYW5ldC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGxhbmV0PC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGFuZXQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBsYW5ldDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYW5ldEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QbGFuZXRJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QbGFuZXQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYW5ldC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGxhbmV0PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYW5ldC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGxhbmV0PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVBsYW5ldCgpIj5jcmVhdGVQbGFuZXQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGFuZXQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBsYW5ldDwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhbmV0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGFuZXQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MU3dpdGNoLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZVBsYW5ldChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGxhbmV0KSI+Y2FzZVBsYW5ldDwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGFuZXQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBsYW5ldDwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5QbGFuZXQ8L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYW5ldC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUGxhbmV0Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUGxhbmV0Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUGxhdGZvcm0uaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9QbGF0Zm9ybS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRkMDJjMDMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUGxhdGZvcm0uaHRtbApAQCAtMCwwICsxLDMyMiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBsYXRmb3JtCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBsYXRmb3JtIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1BsYXRmb3JtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUGxhdGZvcm0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBJbnRlcmZhY2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBsYXRmb3JtPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBsYXRmb3JtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGxhdGZvcm08L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPlN1YmludGVyZmFjZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGF0Zm9ybTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QmxlbmRlck1vcnNlPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkJsZW5kZXIgTW9yc2U8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q3ljYWJUSzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5DeWNhYiBUSzwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmU8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Um9ib3RpYyBNaWRkbGV3YXJlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTaW11bGF0b3I8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Um9ib3RpYyBTaW11bGF0b3I8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBsYXRmb3JtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGF0Zm9ybTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnkuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVBsYXRmb3JtKCkiPmNyZWF0ZVBsYXRmb3JtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5QbGF0Zm9ybTwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGF0Zm9ybTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPkNsYXNzZXMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IGltcGxlbWVudCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBsYXRmb3JtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkJsZW5kZXJNb3JzZUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkJsZW5kZXIgTW9yc2U8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q3ljYWJUS0ltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkN5Y2FiIFRLPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QbGF0Zm9ybUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBsYXRmb3JtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljTWlkZGxld2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljTWlkZGxld2FyZUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90aWMgTWlkZGxld2FyZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1NpbXVsYXRvckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU2ltdWxhdG9ySW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Um9ib3RpYyBTaW11bGF0b3I8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGF0Zm9ybTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGxhdGZvcm08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlUGxhdGZvcm0oKSI+Y3JlYXRlUGxhdGZvcm08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGxhdGZvcm08L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGF0Zm9ybTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxTd2l0Y2guPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlUGxhdGZvcm0ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBsYXRmb3JtKSI+Y2FzZVBsYXRmb3JtPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGF0Zm9ybTwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5QbGF0Zm9ybTwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1BsYXRmb3JtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUGxhdGZvcm0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Qb3J0Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUG9ydC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVkOTlhNTAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUG9ydC5odG1sCkBAIC0wLDAgKzEsMzMwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG9ydAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Qb3J0IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUG9ydC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlBvcnQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBJbnRlcmZhY2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBvcnQ8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Qb3J0PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Qb3J0PC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5TdWJpbnRlcmZhY2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Qb3J0PC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd1BvcnQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+RGF0YSBGbG93IFBvcnQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VQb3J0PC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNlcnZpY2UgUG9ydDwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Qb3J0PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBvcnQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPk9uUG9ydC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sI2dldFBvcnQoKSI+Z2V0UG9ydDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlBvcnQ8L2I+PC9lbT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBvcnQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPk9uUG9ydC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sI3NldFBvcnQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBvcnQpIj5zZXRQb3J0PC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBvcnQ8L0E+Jm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCNnZXRQb3J0KCkiPjxDT0RFPjxlbT5Qb3J0PC9lbT48L0NPREU+PC9BPicgcmVmZXJlbmNlPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UG9ydDwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPkNsYXNzZXMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IGltcGxlbWVudCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UG9ydDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5EYXRhRmxvd1BvcnRJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5EYXRhIEZsb3cgUG9ydDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Qb3J0SW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UG9ydDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2VydmljZVBvcnRJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TZXJ2aWNlIFBvcnQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBvcnQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UG9ydDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+T25Qb3J0SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT25Qb3J0SW1wbC5odG1sI2Jhc2ljR2V0UG9ydCgpIj5iYXNpY0dldFBvcnQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBvcnQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPk9uUG9ydEltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCNnZXRQb3J0KCkiPmdldFBvcnQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UG9ydDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+T25Qb3J0SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT25Qb3J0SW1wbC5odG1sI3NldFBvcnQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBvcnQpIj5zZXRQb3J0PC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBvcnQ8L0E+Jm5ic3A7bmV3UG9ydCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBvcnQ8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBvcnQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MU3dpdGNoLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZVBvcnQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBvcnQpIj5jYXNlUG9ydDwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Qb3J0PC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlBvcnQ8L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1BvcnQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQb3J0Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUHJpbWl0aXZlRGF0YS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1ByaW1pdGl2ZURhdGEuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41YWM3NWVmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1ByaW1pdGl2ZURhdGEuaHRtbApAQCAtMCwwICsxLDI1MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlByaW1pdGl2ZURhdGEKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUHJpbWl0aXZlRGF0YSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1ByaW1pdGl2ZURhdGEuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQcmltaXRpdmVEYXRhLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgSW50ZXJmYWNlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QcmltaXRpdmVEYXRhPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UHJpbWl0aXZlRGF0YTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UHJpbWl0aXZlRGF0YTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlByaW1pdGl2ZURhdGE8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UHJpbWl0aXZlRGF0YTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnkuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVByaW1pdGl2ZURhdGEoKSI+Y3JlYXRlUHJpbWl0aXZlRGF0YTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UHJpbWl0aXZlIERhdGE8L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QcmltaXRpdmVEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QcmltaXRpdmVEYXRhPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QcmltaXRpdmVEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QcmltaXRpdmVEYXRhPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUHJpbWl0aXZlRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QcmltaXRpdmVEYXRhSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UHJpbWl0aXZlIERhdGE8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlByaW1pdGl2ZURhdGE8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UHJpbWl0aXZlRGF0YTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnlJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQcmltaXRpdmVEYXRhKCkiPmNyZWF0ZVByaW1pdGl2ZURhdGE8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UHJpbWl0aXZlRGF0YTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UHJpbWl0aXZlRGF0YTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxTd2l0Y2guPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlUHJpbWl0aXZlRGF0YShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUHJpbWl0aXZlRGF0YSkiPmNhc2VQcmltaXRpdmVEYXRhPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlByaW1pdGl2ZURhdGE8L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UHJpbWl0aXZlIERhdGE8L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1ByaW1pdGl2ZURhdGEuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQcmltaXRpdmVEYXRhLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUm9ib3QuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Sb2JvdC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI1ZWIwMzcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUm9ib3QuaHRtbApAQCAtMCwwICsxLDI1MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90Cis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3QuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBJbnRlcmZhY2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90PC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3Q8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3Q8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlUm9ib3QoKSI+Y3JlYXRlUm9ib3Q8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlJvYm90PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90PC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3Q8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdEltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3Q8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVJvYm90KCkiPmNyZWF0ZVJvYm90PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdDwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTFN3aXRjaC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VSb2JvdChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3QpIj5jYXNlUm9ib3Q8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90PC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlJvYm90PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUm9ib3QuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90S2luZC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90S2luZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhkNDhkNjgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUm9ib3RLaW5kLmh0bWwKQEAgLTAsMCArMSwzMDMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90S2luZAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90S2luZCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90S2luZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlJvYm90S2luZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdEtpbmQ8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdEtpbmQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5GaWVsZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHdpdGggdHlwZSBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90S2luZDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEudXRpbC5MaXN0Jmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdEtpbmQ8L0E+Jmd0OzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdEtpbmQuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCNWQUxVRVMiPlZBTFVFUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHB1YmxpYyByZWFkLW9ubHkgbGlzdCBvZiBhbGwgdGhlICc8ZW0+PGI+Um9ib3QgS2luZDwvYj48L2VtPicgZW51bWVyYXRvcnM8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdEtpbmQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdEtpbmQuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCNnZXQoaW50KSI+Z2V0PC9BPjwvQj4oaW50Jm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSAnPGVtPjxiPlJvYm90IEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGludGVnZXIgdmFsdWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90S2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RLaW5kLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwjZ2V0KGphdmEubGFuZy5TdHJpbmcpIj5nZXQ8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bGl0ZXJhbCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlICc8ZW0+PGI+Um9ib3QgS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbGl0ZXJhbCB2YWx1ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdEtpbmQuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCNnZXRCeU5hbWUoamF2YS5sYW5nLlN0cmluZykiPmdldEJ5TmFtZTwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuYW1lKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgJzxlbT48Yj5Sb2JvdCBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdEtpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNnZXRLaW5kKCkiPmdldEtpbmQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5LaW5kPC9iPjwvZW0+JyBhdHRyaWJ1dGUuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdEtpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90S2luZC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sI3ZhbHVlT2YoamF2YS5sYW5nLlN0cmluZykiPnZhbHVlT2Y8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmFtZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIGVudW0gY29uc3RhbnQgb2YgdGhpcyB0eXBlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPltdPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90S2luZC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sI3ZhbHVlcygpIj52YWx1ZXM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGFuIGFycmF5IGNvbnRhaW5pbmcgdGhlIGNvbnN0YW50cyBvZiB0aGlzIGVudW0gdHlwZSwgaW4KK3RoZSBvcmRlciB0aGV5J3JlIGRlY2xhcmVkLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90S2luZDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3QuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI3NldEtpbmQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90S2luZCkiPnNldEtpbmQ8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPiZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNnZXRLaW5kKCkiPjxDT0RFPjxlbT5LaW5kPC9lbT48L0NPREU+PC9BPicgYXR0cmlidXRlPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdEtpbmQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVJvYm90S2luZEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZVJvYm90S2luZEZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdEltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sI2dldEtpbmQoKSI+Z2V0S2luZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdEltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sI3NldEtpbmQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90S2luZCkiPnNldEtpbmQ8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPiZuYnNwO25ld0tpbmQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Sb2JvdEtpbmQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdEtpbmQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Sb2JvdE1MRmFjdG9yeS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90TUxGYWN0b3J5Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGQ2OTZiNAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Sb2JvdE1MRmFjdG9yeS5odG1sCkBAIC0wLDAgKzEsMjQ1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTEZhY3RvcnkKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTEZhY3RvcnkiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdE1MRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTEZhY3Rvcnk8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5GaWVsZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IGRlY2xhcmVkIGFzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjZUlOU1RBTkNFIj5lSU5TVEFOQ0U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiB0aGUgZmFjdG9yeTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxQYWNrYWdlLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdE1MRmFjdG9yeSgpIj5nZXRSb2JvdE1MRmFjdG9yeTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIGZhY3RvcnkgdGhhdCBjcmVhdGVzIHRoZSBpbnN0YW5jZXMgb2YgdGhlIG1vZGVsPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPkZhY3Rvcnk8L2I+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxQYWNrYWdlSW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Um9ib3RNTEZhY3RvcnkoKSI+Z2V0Um9ib3RNTEZhY3Rvcnk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjaW5pdCgpIj5pbml0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyB0aGUgZGVmYXVsdCBmYWN0b3J5IGltcGxlbWVudGF0aW9uPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdE1MRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xODA5N2ZlCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwKQEAgLTAsMCArMSwxNDAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MaXRlcmFscworPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MaXRlcmFscyI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgSW50ZXJmYWNlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQj48L0gyPgorPC9DRU5URVI+CitObyB1c2FnZSBvZiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Sb2JvdE1MUGFja2FnZS5MaXRlcmFscy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUm9ib3RNTFBhY2thZ2UuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Sb2JvdE1MUGFja2FnZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRkOWJmYWYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUm9ib3RNTFBhY2thZ2UuaHRtbApAQCAtMCwwICsxLDI1MyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90TUxQYWNrYWdlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBJbnRlcmZhY2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+RmllbGRzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiBkZWNsYXJlZCBhcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTFBhY2thZ2UuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2VJTlNUQU5DRSI+ZUlOU1RBTkNFPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIHBhY2thZ2U8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjZ2V0Um9ib3RNTFBhY2thZ2UoKSI+Z2V0Um9ib3RNTFBhY2thZ2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBwYWNrYWdlIHN1cHBvcnRlZCBieSB0aGlzIGZhY3Rvcnk8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5DbGFzc2VzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCBpbXBsZW1lbnQgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgPGI+UGFja2FnZTwvYj48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnlJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNnZXRQYWNrYWdlKCkiPmdldFBhY2thZ2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST48L0k+Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjZ2V0Um9ib3RNTFBhY2thZ2UoKSI+Z2V0Um9ib3RNTFBhY2thZ2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxQYWNrYWdlSW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjaW5pdCgpIj5pbml0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcywgcmVnaXN0ZXJzLCBhbmQgaW5pdGlhbGl6ZXMgdGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGlzIG1vZGVsLCBhbmQgZm9yIGFueSBvdGhlcnMgdXBvbiB3aGljaCBpdCBkZXBlbmRzLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90TUxQYWNrYWdlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Sb2JvdGljTWlkZGxld2FyZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90aWNNaWRkbGV3YXJlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTI3ZDRmYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Sb2JvdGljTWlkZGxld2FyZS5odG1sCkBAIC0wLDAgKzEsMjUwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmUKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmUiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdGljTWlkZGxld2FyZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmU8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmU8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmU8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVSb2JvdGljTWlkZGxld2FyZSgpIj5jcmVhdGVSb2JvdGljTWlkZGxld2FyZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Um9ib3RpYyBNaWRkbGV3YXJlPC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmU8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljTWlkZGxld2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljTWlkZGxld2FyZUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90aWMgTWlkZGxld2FyZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnlJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVSb2JvdGljTWlkZGxld2FyZSgpIj5jcmVhdGVSb2JvdGljTWlkZGxld2FyZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTFN3aXRjaC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VSb2JvdGljTWlkZGxld2FyZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmUpIj5jYXNlUm9ib3RpY01pZGRsZXdhcmU8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlPC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlJvYm90aWMgTWlkZGxld2FyZTwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90aWNNaWRkbGV3YXJlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RpY01pZGRsZXdhcmUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNDYwZWJmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sCkBAIC0wLDAgKzEsMzAzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljTWlkZGxld2FyZUtpbmQKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljTWlkZGxld2FyZUtpbmQiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmVLaW5kPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+RmllbGRzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB3aXRoIHR5cGUgcGFyYW1ldGVycyBvZiB0eXBlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLnV0aWwuTGlzdCZsdDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPiZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RpY01pZGRsZXdhcmVLaW5kLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwjVkFMVUVTIj5WQUxVRVM8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSBwdWJsaWMgcmVhZC1vbmx5IGxpc3Qgb2YgYWxsIHRoZSAnPGVtPjxiPlJvYm90aWMgTWlkZGxld2FyZSBLaW5kPC9iPjwvZW0+JyBlbnVtZXJhdG9yczwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90aWNNaWRkbGV3YXJlS2luZC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sI2dldChpbnQpIj5nZXQ8L0E+PC9CPihpbnQmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlICc8ZW0+PGI+Um9ib3RpYyBNaWRkbGV3YXJlIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGludGVnZXIgdmFsdWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RpY01pZGRsZXdhcmVLaW5kLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwjZ2V0KGphdmEubGFuZy5TdHJpbmcpIj5nZXQ8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bGl0ZXJhbCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlICc8ZW0+PGI+Um9ib3RpYyBNaWRkbGV3YXJlIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGxpdGVyYWwgdmFsdWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RpY01pZGRsZXdhcmVLaW5kLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwjZ2V0QnlOYW1lKGphdmEubGFuZy5TdHJpbmcpIj5nZXRCeU5hbWU8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmFtZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlICc8ZW0+PGI+Um9ib3RpYyBNaWRkbGV3YXJlIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RpY01pZGRsZXdhcmUuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sI2dldEtpbmQoKSI+Z2V0S2luZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPktpbmQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RpY01pZGRsZXdhcmVLaW5kLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwjdmFsdWVPZihqYXZhLmxhbmcuU3RyaW5nKSI+dmFsdWVPZjwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuYW1lKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgZW51bSBjb25zdGFudCBvZiB0aGlzIHR5cGUgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0E+W108L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RpY01pZGRsZXdhcmVLaW5kLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwjdmFsdWVzKCkiPnZhbHVlczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYW4gYXJyYXkgY29udGFpbmluZyB0aGUgY29uc3RhbnRzIG9mIHRoaXMgZW51bSB0eXBlLCBpbgordGhlIG9yZGVyIHRoZXkncmUgZGVjbGFyZWQuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdGljTWlkZGxld2FyZS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwjc2V0S2luZChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmVLaW5kKSI+c2V0S2luZDwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0E+Jm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sI2dldEtpbmQoKSI+PENPREU+PGVtPktpbmQ8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlUm9ib3RpY01pZGRsZXdhcmVLaW5kRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlUm9ib3RpY01pZGRsZXdhcmVLaW5kRnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RpY01pZGRsZXdhcmVJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljTWlkZGxld2FyZUltcGwuaHRtbCNnZXRLaW5kKCkiPmdldEtpbmQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdGljTWlkZGxld2FyZUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNNaWRkbGV3YXJlSW1wbC5odG1sI3NldEtpbmQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNNaWRkbGV3YXJlS2luZCkiPnNldEtpbmQ8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPiZuYnNwO25ld0tpbmQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlJvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90aWNTaW11bGF0b3IuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Sb2JvdGljU2ltdWxhdG9yLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmFhNDdlZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Sb2JvdGljU2ltdWxhdG9yLmh0bWwKQEAgLTAsMCArMSwyOTAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljU2ltdWxhdG9yCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTaW11bGF0b3IiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RpY1NpbXVsYXRvci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY1NpbXVsYXRvcjwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTaW11bGF0b3I8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTaW11bGF0b3I8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPlN1YmludGVyZmFjZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTaW11bGF0b3I8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJsZW5kZXJNb3JzZTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5CbGVuZGVyIE1vcnNlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkN5Y2FiVEs8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q3ljYWIgVEs8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1NpbXVsYXRvci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1NpbXVsYXRvcjwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU2ltdWxhdG9yPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlUm9ib3RpY1NpbXVsYXRvcigpIj5jcmVhdGVSb2JvdGljU2ltdWxhdG9yPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Sb2JvdGljIFNpbXVsYXRvcjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTaW11bGF0b3I8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5DbGFzc2VzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCBpbXBsZW1lbnQgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTaW11bGF0b3I8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QmxlbmRlck1vcnNlSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QmxlbmRlciBNb3JzZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ3ljYWJUS0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5DeWNhYlRLSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q3ljYWIgVEs8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTaW11bGF0b3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY1NpbXVsYXRvckltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90aWMgU2ltdWxhdG9yPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU2ltdWxhdG9yPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTaW11bGF0b3I8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlUm9ib3RpY1NpbXVsYXRvcigpIj5jcmVhdGVSb2JvdGljU2ltdWxhdG9yPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1NpbXVsYXRvci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1NpbXVsYXRvcjwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1NpbXVsYXRvci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1NpbXVsYXRvcjwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxTd2l0Y2guPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlUm9ib3RpY1NpbXVsYXRvcihvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY1NpbXVsYXRvcikiPmNhc2VSb2JvdGljU2ltdWxhdG9yPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTaW11bGF0b3I8L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Um9ib3RpYyBTaW11bGF0b3I8L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUm9ib3RpY1N5c3RlbS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90aWNTeXN0ZW0uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NGE1ZTg2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90aWNTeXN0ZW0uaHRtbApAQCAtMCwwICsxLDQzNCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTeXN0ZW0KKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY1N5c3RlbSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90aWNTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdGljU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgSW50ZXJmYWNlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljU3lzdGVtPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+U3ViaW50ZXJmYWNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdG9yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BY3R1YXRvclN5c3RlbTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BY3R1YXRvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q2FtZXJhIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVuZ2luZVN5c3RlbTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5FbmdpbmUgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+R1BTU3lzdGVtPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkdQUyBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkltYWdlU2Vuc29yU3lzdGVtPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkltYWdlIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxpZGFyU3lzdGVtPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxpZGFyIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Mb2NhbGl6YXRpb24gU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5PYmplY3QgRGV0ZWN0aW9uIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9iamVjdCBUcmFja2luZyBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPldoZWVsIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTeXN0ZW08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVSb2JvdGljU3lzdGVtKCkiPmNyZWF0ZVJvYm90aWNTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlJvYm90aWMgU3lzdGVtPC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPkNsYXNzZXMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IGltcGxlbWVudCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FjdHVhdG9yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFjdHVhdG9yU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QWN0dWF0b3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q2FtZXJhU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q2FtZXJhIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkVuZ2luZVN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkVuZ2luZSBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dQU1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5HUFNTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5HUFMgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9JbWFnZVNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5JbWFnZVNlbnNvclN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkltYWdlIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkxpZGFyU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TGlkYXIgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5PYmplY3QgRGV0ZWN0aW9uIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T2JqZWN0IFRyYWNraW5nIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY1N5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90aWMgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2Vuc29yU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2hlZWxTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5XaGVlbCBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnlJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVSb2JvdGljU3lzdGVtKCkiPmNyZWF0ZVJvYm90aWNTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxTd2l0Y2guPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlUm9ib3RpY1N5c3RlbShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY1N5c3RlbSkiPmNhc2VSb2JvdGljU3lzdGVtPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTeXN0ZW08L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Um9ib3RpYyBTeXN0ZW08L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90aWNTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdGljU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU2Vuc29yRHJpdmVyLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU2Vuc29yRHJpdmVyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmY0NGIxNQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9TZW5zb3JEcml2ZXIuaHRtbApAQCAtMCwwICsxLDI1MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvckRyaXZlcgorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZW5zb3JEcml2ZXIiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JEcml2ZXIuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NlbnNvckRyaXZlci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNlbnNvckRyaXZlci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2Vuc29yRHJpdmVyPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yRHJpdmVyLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JEcml2ZXI8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yRHJpdmVyPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yRHJpdmVyLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JEcml2ZXI8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yRHJpdmVyLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JEcml2ZXI8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVTZW5zb3JEcml2ZXIoKSI+Y3JlYXRlU2Vuc29yRHJpdmVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TZW5zb3IgRHJpdmVyPC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yRHJpdmVyLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JEcml2ZXI8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5DbGFzc2VzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCBpbXBsZW1lbnQgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yRHJpdmVyPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yRHJpdmVySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlbnNvckRyaXZlckltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNlbnNvciBEcml2ZXI8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yRHJpdmVyPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yRHJpdmVyPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVNlbnNvckRyaXZlcigpIj5jcmVhdGVTZW5zb3JEcml2ZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JEcml2ZXIuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvckRyaXZlcjwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yRHJpdmVyLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JEcml2ZXI8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MU3dpdGNoLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZVNlbnNvckRyaXZlcihvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2Vuc29yRHJpdmVyKSI+Y2FzZVNlbnNvckRyaXZlcjwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JEcml2ZXIuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvckRyaXZlcjwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5TZW5zb3IgRHJpdmVyPC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JEcml2ZXIuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NlbnNvckRyaXZlci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNlbnNvckRyaXZlci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NlbnNvclN5c3RlbS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NlbnNvclN5c3RlbS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI3MWZjZmEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU2Vuc29yU3lzdGVtLmh0bWwKQEAgLTAsMCArMSwzNzAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZW5zb3JTeXN0ZW0KKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2Vuc29yU3lzdGVtIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9TZW5zb3JTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTZW5zb3JTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBJbnRlcmZhY2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvclN5c3RlbTwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvclN5c3RlbTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+U3ViaW50ZXJmYWNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JTeXN0ZW08L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNhbWVyYVN5c3RlbTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5DYW1lcmEgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+R1BTU3lzdGVtPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkdQUyBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkltYWdlU2Vuc29yU3lzdGVtPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkltYWdlIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxpZGFyU3lzdGVtPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxpZGFyIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Mb2NhbGl6YXRpb24gU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5PYmplY3QgRGV0ZWN0aW9uIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9iamVjdCBUcmFja2luZyBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlU2Vuc29yU3lzdGVtKCkiPmNyZWF0ZVNlbnNvclN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+U2Vuc29yIFN5c3RlbTwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvclN5c3RlbTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5DYW1lcmFTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5DYW1lcmEgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HUFNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+R1BTU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+R1BTIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+SW1hZ2VTZW5zb3JTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5JbWFnZSBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MaWRhclN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxpZGFyIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxvY2FsaXphdGlvbiBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T2JqZWN0IERldGVjdGlvbiBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9iamVjdCBUcmFja2luZyBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2Vuc29yU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JTeXN0ZW08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlU2Vuc29yU3lzdGVtKCkiPmNyZWF0ZVNlbnNvclN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvclN5c3RlbTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MU3dpdGNoLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZVNlbnNvclN5c3RlbShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2Vuc29yU3lzdGVtKSI+Y2FzZVNlbnNvclN5c3RlbTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvclN5c3RlbTwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5TZW5zb3IgU3lzdGVtPC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NlbnNvclN5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNlbnNvclN5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NlcnZpY2VGbG93S2luZC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NlcnZpY2VGbG93S2luZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU3NGEwNzgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU2VydmljZUZsb3dLaW5kLmh0bWwKQEAgLTAsMCArMSwzMDMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlcnZpY2VGbG93S2luZAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlcnZpY2VGbG93S2luZCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NlcnZpY2VGbG93S2luZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNlcnZpY2VGbG93S2luZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlRmxvd0tpbmQ8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlRmxvd0tpbmQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZUZsb3dLaW5kPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5GaWVsZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHdpdGggdHlwZSBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwO2phdmEudXRpbC5MaXN0Jmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlRmxvd0tpbmQ8L0E+Jmd0OzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5TZXJ2aWNlRmxvd0tpbmQuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCNWQUxVRVMiPlZBTFVFUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHB1YmxpYyByZWFkLW9ubHkgbGlzdCBvZiBhbGwgdGhlICc8ZW0+PGI+U2VydmljZSBGbG93IEtpbmQ8L2I+PC9lbT4nIGVudW1lcmF0b3JzPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZUZsb3dLaW5kPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+U2VydmljZUZsb3dLaW5kLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwjZ2V0KGludCkiPmdldDwvQT48L0I+KGludCZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgJzxlbT48Yj5TZXJ2aWNlIEZsb3cgS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgaW50ZWdlciB2YWx1ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZUZsb3dLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5TZXJ2aWNlRmxvd0tpbmQuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCNnZXQoamF2YS5sYW5nLlN0cmluZykiPmdldDwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtsaXRlcmFsKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgJzxlbT48Yj5TZXJ2aWNlIEZsb3cgS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbGl0ZXJhbCB2YWx1ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZUZsb3dLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5TZXJ2aWNlRmxvd0tpbmQuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCNnZXRCeU5hbWUoamF2YS5sYW5nLlN0cmluZykiPmdldEJ5TmFtZTwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuYW1lKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgJzxlbT48Yj5TZXJ2aWNlIEZsb3cgS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZUZsb3dLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5TZXJ2aWNlUG9ydC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwjZ2V0S2luZCgpIj5nZXRLaW5kPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+S2luZDwvYj48L2VtPicgYXR0cmlidXRlLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZUZsb3dLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5TZXJ2aWNlRmxvd0tpbmQuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCN2YWx1ZU9mKGphdmEubGFuZy5TdHJpbmcpIj52YWx1ZU9mPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25hbWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBlbnVtIGNvbnN0YW50IG9mIHRoaXMgdHlwZSB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT5bXTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5TZXJ2aWNlRmxvd0tpbmQuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCN2YWx1ZXMoKSI+dmFsdWVzPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhbiBhcnJheSBjb250YWluaW5nIHRoZSBjb25zdGFudHMgb2YgdGhpcyBlbnVtIHR5cGUsIGluCit0aGUgb3JkZXIgdGhleSdyZSBkZWNsYXJlZC48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHdpdGggcGFyYW1ldGVycyBvZiB0eXBlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlRmxvd0tpbmQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlNlcnZpY2VQb3J0LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCNzZXRLaW5kKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlRmxvd0tpbmQpIj5zZXRLaW5kPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT4mbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwjZ2V0S2luZCgpIj48Q09ERT48ZW0+S2luZDwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZUZsb3dLaW5kPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnlJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVTZXJ2aWNlRmxvd0tpbmRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVTZXJ2aWNlRmxvd0tpbmRGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+U2VydmljZVBvcnRJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZXJ2aWNlUG9ydEltcGwuaHRtbCNnZXRLaW5kKCkiPmdldEtpbmQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+U2VydmljZVBvcnRJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZXJ2aWNlUG9ydEltcGwuaHRtbCNzZXRLaW5kKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlRmxvd0tpbmQpIj5zZXRLaW5kPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT4mbmJzcDtuZXdLaW5kKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU2VydmljZUZsb3dLaW5kLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU2VydmljZVBvcnQuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9TZXJ2aWNlUG9ydC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgwZjY2MmMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU2VydmljZVBvcnQuaHRtbApAQCAtMCwwICsxLDI3OSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlcnZpY2VQb3J0Cis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlcnZpY2VQb3J0IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NlcnZpY2VQb3J0Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU2VydmljZVBvcnQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBJbnRlcmZhY2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlcnZpY2VQb3J0PC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VQb3J0PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1czwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZVBvcnQ8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXM8L0E+IHdpdGggcGFyYW1ldGVycyBvZiB0eXBlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZVBvcnQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5zd3QuZ3JhcGhpY3MuSW1hZ2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+QWN0aXZhdG9yLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvQWN0aXZhdG9yLmh0bWwjZ2V0U2VydmljZVBvcnRJbWFnZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2VydmljZVBvcnQpIj5nZXRTZXJ2aWNlUG9ydEltYWdlPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlUG9ydDwvQT4mbmJzcDtzZXJ2aWNlUG9ydCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0dldHMgdGhlIHNlcnZpY2UgcG9ydCBpbWFnZS48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VQb3J0PC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VQb3J0PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlUG9ydDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnkuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVNlcnZpY2VQb3J0KCkiPmNyZWF0ZVNlcnZpY2VQb3J0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TZXJ2aWNlIFBvcnQ8L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZVBvcnQ8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5DbGFzc2VzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCBpbXBsZW1lbnQgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlUG9ydDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlcnZpY2VQb3J0SW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U2VydmljZSBQb3J0PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZVBvcnQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VQb3J0PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVNlcnZpY2VQb3J0KCkiPmNyZWF0ZVNlcnZpY2VQb3J0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlUG9ydDwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VQb3J0PC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTFN3aXRjaC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VTZXJ2aWNlUG9ydChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2VydmljZVBvcnQpIj5jYXNlU2VydmljZVBvcnQ8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VQb3J0PC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlNlcnZpY2UgUG9ydDwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NlcnZpY2VQb3J0Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU2VydmljZVBvcnQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9TaGFkZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NoYWRlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTIzYTdhZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9TaGFkZS5odG1sCkBAIC0wLDAgKzEsMzAzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TaGFkZQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNoYWRlIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9TaGFkZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNoYWRlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgQ2xhc3M8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNoYWRlPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5GaWVsZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHdpdGggdHlwZSBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2hhZGU8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLnV0aWwuTGlzdCZsdDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT4mZ3Q7PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlNoYWRlLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCNWQUxVRVMiPlZBTFVFUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHB1YmxpYyByZWFkLW9ubHkgbGlzdCBvZiBhbGwgdGhlICc8ZW0+PGI+U2hhZGU8L2I+PC9lbT4nIGVudW1lcmF0b3JzPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5CbGVuZGVyTW9yc2UuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNnZXRfdmlld3BvcnRfc2hhZGUoKSI+Z2V0X3ZpZXdwb3J0X3NoYWRlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+dmlld3BvcnQgc2hhZGU8L2I+PC9lbT4nIGF0dHJpYnV0ZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2hhZGU8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlNoYWRlLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCNnZXQoaW50KSI+Z2V0PC9BPjwvQj4oaW50Jm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSAnPGVtPjxiPlNoYWRlPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBpbnRlZ2VyIHZhbHVlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5TaGFkZS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwjZ2V0KGphdmEubGFuZy5TdHJpbmcpIj5nZXQ8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bGl0ZXJhbCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlICc8ZW0+PGI+U2hhZGU8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGxpdGVyYWwgdmFsdWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2hhZGU8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlNoYWRlLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCNnZXRCeU5hbWUoamF2YS5sYW5nLlN0cmluZykiPmdldEJ5TmFtZTwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuYW1lKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgJzxlbT48Yj5TaGFkZTwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+U2hhZGUuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sI3ZhbHVlT2YoamF2YS5sYW5nLlN0cmluZykiPnZhbHVlT2Y8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmFtZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIGVudW0gY29uc3RhbnQgb2YgdGhpcyB0eXBlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT5bXTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5TaGFkZS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwjdmFsdWVzKCkiPnZhbHVlczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYW4gYXJyYXkgY29udGFpbmluZyB0aGUgY29uc3RhbnRzIG9mIHRoaXMgZW51bSB0eXBlLCBpbgordGhlIG9yZGVyIHRoZXkncmUgZGVjbGFyZWQuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+QmxlbmRlck1vcnNlLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjc2V0X3ZpZXdwb3J0X3NoYWRlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TaGFkZSkiPnNldF92aWV3cG9ydF9zaGFkZTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPiZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjZ2V0X3ZpZXdwb3J0X3NoYWRlKCkiPjxDT0RFPjxlbT52aWV3cG9ydCBzaGFkZTwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2hhZGU8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2hhZGU8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnlJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVTaGFkZUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZVNoYWRlRnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+QmxlbmRlck1vcnNlSW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sI2dldF92aWV3cG9ydF9zaGFkZSgpIj5nZXRfdmlld3BvcnRfc2hhZGU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+QmxlbmRlck1vcnNlSW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sI3NldF92aWV3cG9ydF9zaGFkZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2hhZGUpIj5zZXRfdmlld3BvcnRfc2hhZGU8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT4mbmJzcDtuZXdfdmlld3BvcnRfc2hhZGUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU2hhZGUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTaGFkZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NpbXVsYXRlZFN5c3RlbS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NpbXVsYXRlZFN5c3RlbS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRhYTgyNmIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU2ltdWxhdGVkU3lzdGVtLmh0bWwKQEAgLTAsMCArMSwyNTAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TaW11bGF0ZWRTeXN0ZW0KKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2ltdWxhdGVkU3lzdGVtIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9TaW11bGF0ZWRTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTaW11bGF0ZWRTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBJbnRlcmZhY2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNpbXVsYXRlZFN5c3RlbTwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2ltdWxhdGVkU3lzdGVtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNpbXVsYXRlZFN5c3RlbTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2ltdWxhdGVkU3lzdGVtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2ltdWxhdGVkU3lzdGVtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlU2ltdWxhdGVkU3lzdGVtKCkiPmNyZWF0ZVNpbXVsYXRlZFN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+U2ltdWxhdGVkIFN5c3RlbTwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2ltdWxhdGVkU3lzdGVtPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNpbXVsYXRlZFN5c3RlbTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NpbXVsYXRlZFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TaW11bGF0ZWRTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TaW11bGF0ZWQgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNpbXVsYXRlZFN5c3RlbTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNpbXVsYXRlZFN5c3RlbTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnlJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVTaW11bGF0ZWRTeXN0ZW0oKSI+Y3JlYXRlU2ltdWxhdGVkU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2ltdWxhdGVkU3lzdGVtPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+IHdpdGggcGFyYW1ldGVycyBvZiB0eXBlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNpbXVsYXRlZFN5c3RlbTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxTd2l0Y2guPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlU2ltdWxhdGVkU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TaW11bGF0ZWRTeXN0ZW0pIj5jYXNlU2ltdWxhdGVkU3lzdGVtPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2ltdWxhdGVkU3lzdGVtPC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlNpbXVsYXRlZCBTeXN0ZW08L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU29mdHdhcmUuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Tb2Z0d2FyZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk4NzlhYzkKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU29mdHdhcmUuaHRtbApAQCAtMCwwICsxLDI5MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNvZnR3YXJlCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNvZnR3YXJlIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NvZnR3YXJlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU29mdHdhcmUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBJbnRlcmZhY2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNvZnR3YXJlPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNvZnR3YXJlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U29mdHdhcmU8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPlN1YmludGVyZmFjZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Tb2Z0d2FyZTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yRHJpdmVyPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNlbnNvciBEcml2ZXI8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaW11bGF0ZWRTeXN0ZW08L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U2ltdWxhdGVkIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U29mdHdhcmU8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNvZnR3YXJlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlU29mdHdhcmUoKSI+Y3JlYXRlU29mdHdhcmU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlNvZnR3YXJlPC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNvZnR3YXJlPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U29mdHdhcmU8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JEcml2ZXJJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2Vuc29yRHJpdmVySW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U2Vuc29yIERyaXZlcjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2ltdWxhdGVkU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNpbXVsYXRlZFN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNpbXVsYXRlZCBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNvZnR3YXJlSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U29mdHdhcmU8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Tb2Z0d2FyZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U29mdHdhcmU8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlU29mdHdhcmUoKSI+Y3JlYXRlU29mdHdhcmU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNvZnR3YXJlPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+IHdpdGggcGFyYW1ldGVycyBvZiB0eXBlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U29mdHdhcmU8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MU3dpdGNoLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZVNvZnR3YXJlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Tb2Z0d2FyZSkiPmNhc2VTb2Z0d2FyZTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U29mdHdhcmU8L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U29mdHdhcmU8L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Tb2Z0d2FyZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNvZnR3YXJlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU3RhaXJzLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU3RhaXJzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzk0NWUwYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9TdGFpcnMuaHRtbApAQCAtMCwwICsxLDI1MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0YWlycworPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGFpcnMiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1N0YWlycy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlN0YWlycy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RhaXJzPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdGFpcnM8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3RhaXJzPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdGFpcnM8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdGFpcnM8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVTdGFpcnMoKSI+Y3JlYXRlU3RhaXJzPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TdGFpcnM8L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YWlyczwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPkNsYXNzZXMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IGltcGxlbWVudCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdGFpcnM8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGFpcnNJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3RhaXJzSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3RhaXJzPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YWlyczwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YWlyczwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnlJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVTdGFpcnMoKSI+Y3JlYXRlU3RhaXJzPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdGFpcnM8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3RhaXJzPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTFN3aXRjaC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VTdGFpcnMob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0YWlycykiPmNhc2VTdGFpcnM8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdGFpcnM8L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U3RhaXJzPC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1N0YWlycy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlN0YWlycy5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1N0YXRlLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU3RhdGUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMzc1NWI2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1N0YXRlLmh0bWwKQEAgLTAsMCArMSwyNTAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGF0ZQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGF0ZSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9TdGF0ZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlN0YXRlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgSW50ZXJmYWNlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGF0ZTwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdGF0ZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YXRlPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YXRlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdGF0ZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnkuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVN0YXRlKCkiPmNyZWF0ZVN0YXRlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TdGF0ZTwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdGF0ZTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPkNsYXNzZXMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IGltcGxlbWVudCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YXRlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhdGVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3RhdGVJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TdGF0ZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YXRlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdGF0ZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnlJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVTdGF0ZSgpIj5jcmVhdGVTdGF0ZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3RhdGU8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdGF0ZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxTd2l0Y2guPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlU3RhdGUob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0YXRlKSI+Y2FzZVN0YXRlPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdGF0ZTwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5TdGF0ZTwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1N0YXRlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU3RhdGUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9TdXJmYWNlLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU3VyZmFjZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNhNmM0NmYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU3VyZmFjZS5odG1sCkBAIC0wLDAgKzEsNDI2IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU3VyZmFjZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlN1cmZhY2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBJbnRlcmZhY2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN1cmZhY2U8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdXJmYWNlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdXJmYWNlPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5TdWJpbnRlcmZhY2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdXJmYWNlPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkZsb29yPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkZsb29yPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+R3JvdW5kPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkdyb3VuZDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGFuZFN1cmZhY2U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TGFuZCBTdXJmYWNlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3RhaXJzPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlN0YWlyczwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XYXRlclN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldhdGVyU3VyZmFjZTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5XYXRlciBTdXJmYWNlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3VyZmFjZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnkuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVN1cmZhY2UoKSI+Y3JlYXRlU3VyZmFjZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+U3VyZmFjZTwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3VyZmFjZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+UGh5c2ljYWxPYmplY3QuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEhhc1N1cmZhY2UoKSI+Z2V0SGFzU3VyZmFjZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkhhcyBTdXJmYWNlPC9iPjwvZW0+JyByZWZlcmVuY2U8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHRoYXQgcmV0dXJuIHR5cGVzIHdpdGggYXJndW1lbnRzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3QmbHQ7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+Jmd0OzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5BZ2VudC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwjZ2V0TW92ZXNPdmVyKCkiPmdldE1vdmVzT3ZlcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPk1vdmVzIE92ZXI8L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0LjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlBoeXNpY2FsT2JqZWN0LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNzZXRIYXNTdXJmYWNlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlKSI+c2V0SGFzU3VyZmFjZTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdXJmYWNlPC9BPiZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRIYXNTdXJmYWNlKCkiPjxDT0RFPjxlbT5IYXMgU3VyZmFjZTwvZW0+PC9DT0RFPjwvQT4nIHJlZmVyZW5jZTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5DbGFzc2VzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCBpbXBsZW1lbnQgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9GbG9vckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5GbG9vckltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkZsb29yPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Hcm91bmRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+R3JvdW5kSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+R3JvdW5kPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MYW5kU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MYW5kU3VyZmFjZUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxhbmQgU3VyZmFjZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhaXJzSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN0YWlyc0ltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlN0YWlyczwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TdXJmYWNlSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3VyZmFjZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2F0ZXJTdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPldhdGVyU3VyZmFjZUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPldhdGVyIFN1cmZhY2U8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3VyZmFjZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+UGh5c2ljYWxPYmplY3RJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNiYXNpY0dldEhhc1N1cmZhY2UoKSI+YmFzaWNHZXRIYXNTdXJmYWNlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdXJmYWNlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeUltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVN1cmZhY2UoKSI+Y3JlYXRlU3VyZmFjZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3VyZmFjZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+UGh5c2ljYWxPYmplY3RJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNnZXRIYXNTdXJmYWNlKCkiPmdldEhhc1N1cmZhY2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IHJldHVybiB0eXBlcyB3aXRoIGFyZ3VtZW50cyBvZiB0eXBlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdXJmYWNlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0Jmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdXJmYWNlPC9BPiZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+QWdlbnRJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCNnZXRNb3Zlc092ZXIoKSI+Z2V0TW92ZXNPdmVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlBoeXNpY2FsT2JqZWN0SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjc2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPnNldEhhc1N1cmZhY2U8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3VyZmFjZTwvQT4mbmJzcDtuZXdIYXNTdXJmYWNlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3VyZmFjZTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3VyZmFjZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxTd2l0Y2guPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPmNhc2VTdXJmYWNlPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U3VyZmFjZTwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU3VyZmFjZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlN1cmZhY2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU3luY2hyb25pemF0aW9uS2luZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFiNGY5NjgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU3luY2hyb25pemF0aW9uS2luZC5odG1sCkBAIC0wLDAgKzEsMzAzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeW5jaHJvbml6YXRpb25LaW5kCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3luY2hyb25pemF0aW9uS2luZCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeW5jaHJvbml6YXRpb25LaW5kPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5bmNocm9uaXphdGlvbktpbmQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5bmNocm9uaXphdGlvbktpbmQ8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPkZpZWxkcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gd2l0aCB0eXBlIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5bmNocm9uaXphdGlvbktpbmQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLnV0aWwuTGlzdCZsdDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5bmNocm9uaXphdGlvbktpbmQ8L0E+Jmd0OzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5TeW5jaHJvbml6YXRpb25LaW5kLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sI1ZBTFVFUyI+VkFMVUVTPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcHVibGljIHJlYWQtb25seSBsaXN0IG9mIGFsbCB0aGUgJzxlbT48Yj5TeW5jaHJvbml6YXRpb24gS2luZDwvYj48L2VtPicgZW51bWVyYXRvcnM8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+U3luY2hyb25pemF0aW9uS2luZC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCNnZXQoaW50KSI+Z2V0PC9BPjwvQj4oaW50Jm5ic3A7dmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSAnPGVtPjxiPlN5bmNocm9uaXphdGlvbiBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBpbnRlZ2VyIHZhbHVlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+U3luY2hyb25pemF0aW9uS2luZC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCNnZXQoamF2YS5sYW5nLlN0cmluZykiPmdldDwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtsaXRlcmFsKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgJzxlbT48Yj5TeW5jaHJvbml6YXRpb24gS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbGl0ZXJhbCB2YWx1ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5bmNocm9uaXphdGlvbktpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlN5bmNocm9uaXphdGlvbktpbmQuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwjZ2V0QnlOYW1lKGphdmEubGFuZy5TdHJpbmcpIj5nZXRCeU5hbWU8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmFtZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlICc8ZW0+PGI+U3luY2hyb25pemF0aW9uIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeW5jaHJvbml6YXRpb25LaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Qb3J0LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sI2dldFN5bmNocm9uaXphdGlvblBvbGljeSgpIj5nZXRTeW5jaHJvbml6YXRpb25Qb2xpY3k8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5TeW5jaHJvbml6YXRpb24gUG9saWN5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+U3luY2hyb25pemF0aW9uS2luZC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCN2YWx1ZU9mKGphdmEubGFuZy5TdHJpbmcpIj52YWx1ZU9mPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25hbWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBlbnVtIGNvbnN0YW50IG9mIHRoaXMgdHlwZSB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeW5jaHJvbml6YXRpb25LaW5kPC9BPltdPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlN5bmNocm9uaXphdGlvbktpbmQuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwjdmFsdWVzKCkiPnZhbHVlczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYW4gYXJyYXkgY29udGFpbmluZyB0aGUgY29uc3RhbnRzIG9mIHRoaXMgZW51bSB0eXBlLCBpbgordGhlIG9yZGVyIHRoZXkncmUgZGVjbGFyZWQuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5bmNocm9uaXphdGlvbktpbmQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlBvcnQuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwjc2V0U3luY2hyb25pemF0aW9uUG9saWN5KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeW5jaHJvbml6YXRpb25LaW5kKSI+c2V0U3luY2hyb25pemF0aW9uUG9saWN5PC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeW5jaHJvbml6YXRpb25LaW5kPC9BPiZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0cyB0aGUgdmFsdWUgb2YgdGhlICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sI2dldFN5bmNocm9uaXphdGlvblBvbGljeSgpIj48Q09ERT48ZW0+U3luY2hyb25pemF0aW9uIFBvbGljeTwvZW0+PC9DT0RFPjwvQT4nIGF0dHJpYnV0ZTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeW5jaHJvbml6YXRpb25LaW5kPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnlJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVTeW5jaHJvbml6YXRpb25LaW5kRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlU3luY2hyb25pemF0aW9uS2luZEZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeW5jaHJvbml6YXRpb25LaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Qb3J0SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCNnZXRTeW5jaHJvbml6YXRpb25Qb2xpY3koKSI+Z2V0U3luY2hyb25pemF0aW9uUG9saWN5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHdpdGggcGFyYW1ldGVycyBvZiB0eXBlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+UG9ydEltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwjc2V0U3luY2hyb25pemF0aW9uUG9saWN5KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeW5jaHJvbml6YXRpb25LaW5kKSI+c2V0U3luY2hyb25pemF0aW9uUG9saWN5PC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeW5jaHJvbml6YXRpb25LaW5kPC9BPiZuYnNwO25ld1N5bmNocm9uaXphdGlvblBvbGljeSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1N5c3RlbS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1N5c3RlbS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRjNTc5OTEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU3lzdGVtLmh0bWwKQEAgLTAsMCArMSw4MTggQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0KKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9TeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBJbnRlcmZhY2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbTwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+U3ViaW50ZXJmYWNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWN0dWF0b3JTeXN0ZW08L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QWN0dWF0b3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BZ2VudDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BZ2VudDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJsZW5kZXJNb3JzZTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5CbGVuZGVyIE1vcnNlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0J1aWxkaW5nLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5CdWlsZGluZzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5CdWlsZGluZzwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNhbWVyYVN5c3RlbTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5DYW1lcmEgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkN5Y2FiVEs8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q3ljYWIgVEs8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5FbmdpbmVTeXN0ZW08L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+RW5naW5lIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW52aXJvbm1lbnQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+RW52aXJvbm1lbnQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkZsb29yPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkZsb29yPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+R1BTU3lzdGVtPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkdQUyBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Hcm91bmQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+R3JvdW5kPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0hhcmR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5IYXJkd2FyZTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5IYXJkd2FyZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SHVtYW48L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SHVtYW48L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkltYWdlU2Vuc29yU3lzdGVtPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkltYWdlIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxhbmRTdXJmYWNlPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxhbmQgU3VyZmFjZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGlkYXJTeXN0ZW08L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TGlkYXIgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xvY2FsaXphdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxvY2FsaXphdGlvbiBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T2JqZWN0IFRyYWNraW5nIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGVkZXN0cmlhbjwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QZWRlc3RyaWFuPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QaHlzaWNhbCBPYmplY3Q8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhbmV0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGFuZXQ8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGxhbmV0PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGF0Zm9ybTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QbGF0Zm9ybTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3Q8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Um9ib3Q8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90aWMgTWlkZGxld2FyZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU2ltdWxhdG9yPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90aWMgU2ltdWxhdG9yPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTeXN0ZW08L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Um9ib3RpYyBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yRHJpdmVyLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JEcml2ZXI8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U2Vuc29yIERyaXZlcjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvclN5c3RlbTwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TZW5zb3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2ltdWxhdGVkU3lzdGVtPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNpbXVsYXRlZCBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNvZnR3YXJlPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNvZnR3YXJlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtpbnRlcmZhY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3RhaXJzPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlN0YWlyczwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdXJmYWNlPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlN1cmZhY2U8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2ludGVyZmFjZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XYXRlclN1cmZhY2U8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+V2F0ZXIgU3VyZmFjZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50ZXJmYWNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+V2hlZWwgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlU3lzdGVtKCkiPmNyZWF0ZVN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+U3lzdGVtPC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5DbGFzc2VzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCBpbXBsZW1lbnQgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWN0dWF0b3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWN0dWF0b3JTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BY3R1YXRvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFnZW50SW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QWdlbnQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5CbGVuZGVyTW9yc2VJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5CbGVuZGVyIE1vcnNlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CdWlsZGluZ0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5CdWlsZGluZ0ltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkJ1aWxkaW5nPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q2FtZXJhU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q2FtZXJhIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ3ljYWJUS0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5DeWNhYlRLSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q3ljYWIgVEs8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5FbmdpbmVTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5FbmdpbmUgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbnZpcm9ubWVudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5FbnZpcm9ubWVudEltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkVudmlyb25tZW50PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9GbG9vckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5GbG9vckltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkZsb29yPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HUFNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+R1BTU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+R1BTIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR3JvdW5kSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkdyb3VuZEltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkdyb3VuZDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSGFyZHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+SGFyZHdhcmVJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5IYXJkd2FyZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSHVtYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+SHVtYW5JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5IdW1hbjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+SW1hZ2VTZW5zb3JTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5JbWFnZSBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MYW5kU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MYW5kU3VyZmFjZUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxhbmQgU3VyZmFjZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TGlkYXJTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5MaWRhciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Mb2NhbGl6YXRpb24gU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5PYmplY3QgVHJhY2tpbmcgU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGVkZXN0cmlhbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QZWRlc3RyaWFuSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGVkZXN0cmlhbjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGh5c2ljYWxPYmplY3RJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QaHlzaWNhbCBPYmplY3Q8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYW5ldEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QbGFuZXRJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QbGFuZXQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBsYXRmb3JtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGxhdGZvcm08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNNaWRkbGV3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90aWNNaWRkbGV3YXJlSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Um9ib3RpYyBNaWRkbGV3YXJlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU2ltdWxhdG9ySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90aWNTaW11bGF0b3JJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Sb2JvdGljIFNpbXVsYXRvcjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Um9ib3RpYyBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90SW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Um9ib3Q8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvckRyaXZlckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JEcml2ZXJJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TZW5zb3IgRHJpdmVyPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2Vuc29yU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2ltdWxhdGVkU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNpbXVsYXRlZFN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNpbXVsYXRlZCBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNvZnR3YXJlSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U29mdHdhcmU8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YWlyc0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TdGFpcnNJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TdGFpcnM8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3VyZmFjZUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlN1cmZhY2U8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1dhdGVyU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5XYXRlclN1cmZhY2VJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5XYXRlciBTdXJmYWNlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5XaGVlbFN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPldoZWVsIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlU3lzdGVtKCkiPmNyZWF0ZVN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MU3dpdGNoLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZVN5c3RlbShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtKSI+Y2FzZVN5c3RlbTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5TeXN0ZW08L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvVHJhbnNpdGlvbi5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1RyYW5zaXRpb24uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40ZTU1Nzc5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1RyYW5zaXRpb24uaHRtbApAQCAtMCwwICsxLDI1MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBJbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlRyYW5zaXRpb24KKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVHJhbnNpdGlvbiI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1RyYW5zaXRpb24uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJUcmFuc2l0aW9uLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgSW50ZXJmYWNlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5UcmFuc2l0aW9uPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VHJhbnNpdGlvbjwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VHJhbnNpdGlvbjwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlRyYW5zaXRpb248L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VHJhbnNpdGlvbjwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnkuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVRyYW5zaXRpb24oKSI+Y3JlYXRlVHJhbnNpdGlvbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+VHJhbnNpdGlvbjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlRyYW5zaXRpb248L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5DbGFzc2VzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gdGhhdCBpbXBsZW1lbnQgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlRyYW5zaXRpb248L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlRyYW5zaXRpb25JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5UcmFuc2l0aW9uPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5UcmFuc2l0aW9uPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlRyYW5zaXRpb248L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlVHJhbnNpdGlvbigpIj5jcmVhdGVUcmFuc2l0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlRyYW5zaXRpb248L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlRyYW5zaXRpb248L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MU3dpdGNoLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZVRyYW5zaXRpb24ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlRyYW5zaXRpb24pIj5jYXNlVHJhbnNpdGlvbjwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5UcmFuc2l0aW9uPC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlRyYW5zaXRpb248L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1RyYW5zaXRpb24uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJUcmFuc2l0aW9uLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvVUdWS2luZC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1VHVktpbmQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NGQ3MzUxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1VHVktpbmQuaHRtbApAQCAtMCwwICsxLDMwMyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVUdWS2luZAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlVHVktpbmQiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvVUdWS2luZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlVHVktpbmQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVUdWS2luZDwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5VR1ZLaW5kPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5VR1ZLaW5kPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5GaWVsZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHdpdGggdHlwZSBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5VR1ZLaW5kPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7amF2YS51dGlsLkxpc3QmbHQ7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5VR1ZLaW5kPC9BPiZndDs8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+VUdWS2luZC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCNWQUxVRVMiPlZBTFVFUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHB1YmxpYyByZWFkLW9ubHkgbGlzdCBvZiBhbGwgdGhlICc8ZW0+PGI+VUdWIEtpbmQ8L2I+PC9lbT4nIGVudW1lcmF0b3JzPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVHVktpbmQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVHVktpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlVHVktpbmQuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwjZ2V0KGludCkiPmdldDwvQT48L0I+KGludCZuYnNwO3ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgJzxlbT48Yj5VR1YgS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgaW50ZWdlciB2YWx1ZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVHVktpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlVHVktpbmQuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwjZ2V0KGphdmEubGFuZy5TdHJpbmcpIj5nZXQ8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bGl0ZXJhbCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlICc8ZW0+PGI+VUdWIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGxpdGVyYWwgdmFsdWU8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5VR1ZLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5VR1ZLaW5kLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sI2dldEJ5TmFtZShqYXZhLmxhbmcuU3RyaW5nKSI+Z2V0QnlOYW1lPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25hbWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSAnPGVtPjxiPlVHViBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VUdWS2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3QuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI2dldFVndktpbmQoKSI+Z2V0VWd2S2luZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlVndiBLaW5kPC9iPjwvZW0+JyBhdHRyaWJ1dGUuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VUdWS2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+VUdWS2luZC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCN2YWx1ZU9mKGphdmEubGFuZy5TdHJpbmcpIj52YWx1ZU9mPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25hbWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBlbnVtIGNvbnN0YW50IG9mIHRoaXMgdHlwZSB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5VR1ZLaW5kPC9BPltdPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlVHVktpbmQuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwjdmFsdWVzKCkiPnZhbHVlczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYW4gYXJyYXkgY29udGFpbmluZyB0aGUgY29uc3RhbnRzIG9mIHRoaXMgZW51bSB0eXBlLCBpbgordGhlIG9yZGVyIHRoZXkncmUgZGVjbGFyZWQuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9BPiB3aXRoIHBhcmFtZXRlcnMgb2YgdHlwZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVHVktpbmQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNzZXRVZ3ZLaW5kKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5VR1ZLaW5kKSI+c2V0VWd2S2luZDwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VUdWS2luZDwvQT4mbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjZ2V0VWd2S2luZCgpIj48Q09ERT48ZW0+VWd2IEtpbmQ8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VUdWS2luZDwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVHVktpbmQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVHVktpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlVUdWS2luZEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZVVHVktpbmRGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VUdWS2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCNnZXRVZ3ZLaW5kKCkiPmdldFVndktpbmQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5VR1ZLaW5kPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdEltcGwuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sI3NldFVndktpbmQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlVHVktpbmQpIj5zZXRVZ3ZLaW5kPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5VR1ZLaW5kPC9BPiZuYnNwO25ld1VndktpbmQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvVUdWS2luZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlVHVktpbmQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Vbml0S2luZC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1VuaXRLaW5kLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTUxYjFkYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Vbml0S2luZC5odG1sCkBAIC0wLDAgKzEsMzAzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Vbml0S2luZAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlVuaXRLaW5kIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Vbml0S2luZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlVuaXRLaW5kLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgQ2xhc3M8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlVuaXRLaW5kPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Vbml0S2luZDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5GaWVsZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHdpdGggdHlwZSBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VW5pdEtpbmQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLnV0aWwuTGlzdCZsdDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Vbml0S2luZDwvQT4mZ3Q7PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlVuaXRLaW5kLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCNWQUxVRVMiPlZBTFVFUzwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHB1YmxpYyByZWFkLW9ubHkgbGlzdCBvZiBhbGwgdGhlICc8ZW0+PGI+VW5pdCBLaW5kPC9iPjwvZW0+JyBlbnVtZXJhdG9yczwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VW5pdEtpbmQ8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Vbml0S2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+VW5pdEtpbmQuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sI2dldChpbnQpIj5nZXQ8L0E+PC9CPihpbnQmbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlICc8ZW0+PGI+VW5pdCBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBpbnRlZ2VyIHZhbHVlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Vbml0S2luZC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjZ2V0KGphdmEubGFuZy5TdHJpbmcpIj5nZXQ8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bGl0ZXJhbCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlICc8ZW0+PGI+VW5pdCBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBsaXRlcmFsIHZhbHVlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Vbml0S2luZC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjZ2V0QnlOYW1lKGphdmEubGFuZy5TdHJpbmcpIj5nZXRCeU5hbWU8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmFtZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlICc8ZW0+PGI+VW5pdCBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5QaHlzaWNhbERhdGEuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCNnZXRVbml0KCkiPmdldFVuaXQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Vbml0PC9iPjwvZW0+JyBhdHRyaWJ1dGUuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Vbml0S2luZC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwjdmFsdWVPZihqYXZhLmxhbmcuU3RyaW5nKSI+dmFsdWVPZjwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuYW1lKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgZW51bSBjb25zdGFudCBvZiB0aGlzIHR5cGUgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPltdPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlVuaXRLaW5kLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCN2YWx1ZXMoKSI+dmFsdWVzPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyBhbiBhcnJheSBjb250YWluaW5nIHRoZSBjb25zdGFudHMgb2YgdGhpcyBlbnVtIHR5cGUsIGluCit0aGUgb3JkZXIgdGhleSdyZSBkZWNsYXJlZC48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHdpdGggcGFyYW1ldGVycyBvZiB0eXBlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5QaHlzaWNhbERhdGEuPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCNzZXRVbml0KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Vbml0S2luZCkiPnNldFVuaXQ8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Vbml0S2luZDwvQT4mbmJzcDt2YWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldHMgdGhlIHZhbHVlIG9mIHRoZSAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sI2dldFVuaXQoKSI+PENPREU+PGVtPlVuaXQ8L2VtPjwvQ09ERT48L0E+JyBhdHRyaWJ1dGU8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VW5pdEtpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5SW1wbC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlVW5pdEtpbmRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVVbml0S2luZEZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5QaHlzaWNhbERhdGFJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbERhdGFJbXBsLmh0bWwjZ2V0VW5pdCgpIj5nZXRVbml0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHdpdGggcGFyYW1ldGVycyBvZiB0eXBlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5QaHlzaWNhbERhdGFJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbERhdGFJbXBsLmh0bWwjc2V0VW5pdChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVW5pdEtpbmQpIj5zZXRVbml0PC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VW5pdEtpbmQ8L0E+Jm5ic3A7bmV3VW5pdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvVW5pdEtpbmQuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJVbml0S2luZC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1dhdGVyU3VyZmFjZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1dhdGVyU3VyZmFjZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc5YmJiMWEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvV2F0ZXJTdXJmYWNlLmh0bWwKQEAgLTAsMCArMSwyNTAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgSW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5XYXRlclN1cmZhY2UKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuV2F0ZXJTdXJmYWNlIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9XYXRlclN1cmZhY2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJXYXRlclN1cmZhY2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBJbnRlcmZhY2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLldhdGVyU3VyZmFjZTwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2F0ZXJTdXJmYWNlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XYXRlclN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldhdGVyU3VyZmFjZTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2F0ZXJTdXJmYWNlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2F0ZXJTdXJmYWNlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj5Sb2JvdE1MRmFjdG9yeS48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlV2F0ZXJTdXJmYWNlKCkiPmNyZWF0ZVdhdGVyU3VyZmFjZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+V2F0ZXIgU3VyZmFjZTwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2F0ZXJTdXJmYWNlPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XYXRlclN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldhdGVyU3VyZmFjZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1dhdGVyU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5XYXRlclN1cmZhY2VJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5XYXRlciBTdXJmYWNlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XYXRlclN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldhdGVyU3VyZmFjZTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XYXRlclN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldhdGVyU3VyZmFjZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnlJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVXYXRlclN1cmZhY2UoKSI+Y3JlYXRlV2F0ZXJTdXJmYWNlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XYXRlclN1cmZhY2U8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2F0ZXJTdXJmYWNlPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTFN3aXRjaC48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VXYXRlclN1cmZhY2Uob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLldhdGVyU3VyZmFjZSkiPmNhc2VXYXRlclN1cmZhY2U8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XYXRlclN1cmZhY2U8L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+V2F0ZXIgU3VyZmFjZTwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9XYXRlclN1cmZhY2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJXYXRlclN1cmZhY2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9XaGVlbFN5c3RlbS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1doZWVsU3lzdGVtLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWYwZjBlOQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9XaGVlbFN5c3RlbS5odG1sCkBAIC0wLDAgKzEsMjUwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuV2hlZWxTeXN0ZW0KKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIEludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuV2hlZWxTeXN0ZW0iOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvV2hlZWxTeXN0ZW0uaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJXaGVlbFN5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIEludGVyZmFjZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuV2hlZWxTeXN0ZW08L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+TWV0aG9kcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gdGhhdCByZXR1cm4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxGYWN0b3J5LjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVXaGVlbFN5c3RlbSgpIj5jcmVhdGVXaGVlbFN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+V2hlZWwgU3lzdGVtPC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+Q2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHRoYXQgaW1wbGVtZW50IDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5XaGVlbFN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPldoZWVsIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPiB0aGF0IHJldHVybiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+Um9ib3RNTEZhY3RvcnlJbXBsLjwvQj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVXaGVlbFN5c3RlbSgpIj5jcmVhdGVXaGVlbFN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5NZXRob2RzIGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT4gd2l0aCBwYXJhbWV0ZXJzIG9mIHR5cGUgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPlJvYm90TUxTd2l0Y2guPC9CPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlV2hlZWxTeXN0ZW0ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLldoZWVsU3lzdGVtKSI+Y2FzZVdoZWVsU3lzdGVtPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5XaGVlbCBTeXN0ZW08L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9XaGVlbFN5c3RlbS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IldoZWVsU3lzdGVtLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FjdHVhdG9yU3lzdGVtSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BY3R1YXRvclN5c3RlbUltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43YWNlYTk1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BY3R1YXRvclN5c3RlbUltcGwuaHRtbApAQCAtMCwwICsxLDM1MyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjIwIENFVCAyMDEyIC0tPgorPFRJVExFPgorQWN0dWF0b3JTeXN0ZW1JbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWN0dWF0b3JTeXN0ZW1JbXBsIGNsYXNzIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJBY3R1YXRvclN5c3RlbUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvQWN0dWF0b3JTeXN0ZW1JbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWIENMQVNTJm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWN0dWF0b3JTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWN0dWF0b3JTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdGljU3lzdGVtSW1wbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIEFjdHVhdG9yU3lzdGVtSW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RpY1N5c3RlbUltcGw8L0E+CisgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkFjdHVhdG9yU3lzdGVtSW1wbDwvQj4KKzwvUFJFPgorPERMPgorPERUPjxCPkFsbCBJbXBsZW1lbnRlZCBJbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdG9yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BY3R1YXRvclN5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkRpcmVjdCBLbm93biBTdWJjbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5FbmdpbmVTeXN0ZW1JbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2hlZWxTeXN0ZW1JbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGNsYXNzIDxCPkFjdHVhdG9yU3lzdGVtSW1wbDwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90aWNTeXN0ZW1JbXBsPC9BPjxEVD5pbXBsZW1lbnRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWN0dWF0b3JTeXN0ZW08L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFjdHVhdG9yIFN5c3RlbTwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgPHA+CisgPC9wPgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVBZGFwdGVyTGlzdCZsdDtFIGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCAmIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXImZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVPYnNlcnZhYmxlQWRhcHRlckxpc3Q8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QuRVN0b3JlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RUxBU1RfRU9CSkVDVF9GTEFHPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RU9QUE9TSVRFX0ZFQVRVUkVfQkFTRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdGljU3lzdGVtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU3lzdGVtSW1wbDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjZUlzU2V0KGludCkiPmVJc1NldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj5lU2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCNnZXRMb2NhbE9yaWVudGF0aW9uKCkiPmdldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI2dldExvY2FsUG9zaXRpb24oKSI+Z2V0TG9jYWxQb3NpdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjc2V0TG9jYWxPcmllbnRhdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxPcmllbnRhdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjc2V0TG9jYWxQb3NpdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxQb3NpdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjdG9TdHJpbmcoKSI+dG9TdHJpbmc8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9DbGFzcygpIj5iYXNpY0dldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZUludGVybmFsQ29udGFpbmVyLCBlSW52b2tlLCBlSXNQcm94eSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURpcmVjdFJlc291cmNlLCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVByb3h5VVJJLCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVVUklGcmFnbWVudFNlZ21lbnQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkLCBlTm90aWZ5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVxdWFscywgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxPcmllbnRhdGlvbigpIj5nZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbFBvc2l0aW9uKCkiPmdldExvY2FsUG9zaXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsT3JpZW50YXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsUG9zaXRpb248L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0FjdHVhdG9yU3lzdGVtSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViBDTEFTUyZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FjdHVhdG9yU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFjdHVhdG9yU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RpY1N5c3RlbUltcGwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hZWFlN2Q3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbApAQCAtMCwwICsxLDUwMCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjIwIENFVCAyMDEyIC0tPgorPFRJVExFPgorQWdlbnRJbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWdlbnRJbXBsIGNsYXNzIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJBZ2VudEltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvQWdlbnRJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BY3R1YXRvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWdlbnRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIEFnZW50SW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsT2JqZWN0SW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWdlbnRJbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5EaXJlY3QgS25vd24gU3ViY2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IdW1hbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5IdW1hbkltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdEltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+QWdlbnRJbXBsPC9CPjxEVD5leHRlbmRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBoeXNpY2FsT2JqZWN0SW1wbDwvQT48RFQ+aW1wbGVtZW50cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BZ2VudDwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgPHA+CisgVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgPHVsPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sI2dldE1vdmVzT3ZlcigpIj48Q09ERT48ZW0+TW92ZXMgT3ZlcjwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVBZGFwdGVyTGlzdCZsdDtFIGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCAmIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXImZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVPYnNlcnZhYmxlQWRhcHRlckxpc3Q8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QuRVN0b3JlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RUxBU1RfRU9CSkVDVF9GTEFHPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RU9QUE9TSVRFX0ZFQVRVUkVfQkFTRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5PYmplY3Q8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj5lR2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICBib29sZWFuJm5ic3A7cmVzb2x2ZSwKKyAgICAgYm9vbGVhbiZuYnNwO2NvcmVUeXBlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2Jvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwjZUlzU2V0KGludCkiPmVJc1NldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+ZVNldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO25ld1ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwjZVVuc2V0KGludCkiPmVVbnNldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3QmbHQ7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+Jmd0OzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCNnZXRNb3Zlc092ZXIoKSI+Z2V0TW92ZXNPdmVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QaHlzaWNhbE9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBoeXNpY2FsT2JqZWN0SW1wbDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNiYXNpY0dldEhhc1N1cmZhY2UoKSI+YmFzaWNHZXRIYXNTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZ2V0RXZlbG92ZXNJbigpIj5nZXRFdmVsb3Zlc0luPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZ2V0SGFzU3VyZmFjZSgpIj5nZXRIYXNTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjc2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPnNldEhhc1N1cmZhY2U8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9DbGFzcygpIj5iYXNpY0dldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZUludGVybmFsQ29udGFpbmVyLCBlSW52b2tlLCBlSXNQcm94eSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURpcmVjdFJlc291cmNlLCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVByb3h5VVJJLCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVVUklGcmFnbWVudFNlZ21lbnQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQsIHRvU3RyaW5nPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGh5c2ljYWxPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRFdmVsb3Zlc0luKCkiPmdldEV2ZWxvdmVzSW48L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRIYXNTdXJmYWNlKCkiPmdldEhhc1N1cmZhY2U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNzZXRIYXNTdXJmYWNlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlKSI+c2V0SGFzU3VyZmFjZTwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJnZXRNb3Zlc092ZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TW92ZXNPdmVyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0Jmx0OzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdXJmYWNlPC9BPiZndDsgPEI+Z2V0TW92ZXNPdmVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCNnZXRNb3Zlc092ZXIoKSI+Z2V0TW92ZXNPdmVyPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWdlbnQ8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+TW92ZXMgT3ZlcjwvZW0+JyByZWZlcmVuY2UgbGlzdC48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBZ2VudF9Nb3Zlc092ZXIoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0QWdlbnRfTW92ZXNPdmVyKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj48IS0tIC0tPjwvQT48SDM+CitlR2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLk9iamVjdCA8Qj5lR2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtyZXNvbHZlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sZWFuJm5ic3A7Y29yZVR5cGUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lR2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj5lR2V0PC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGh5c2ljYWxPYmplY3RJbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDxERD48Q09ERT5yZXNvbHZlPC9DT0RFPiAtIHRoZSByZXNvbHZlPEREPjxDT0RFPmNvcmVUeXBlPC9DT0RFPiAtIHRoZSBjb3JlIHR5cGUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG9iamVjdDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+CitlU2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5lU2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtuZXdWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVTZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QaHlzaWNhbE9iamVjdEltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkPEREPjxDT0RFPm5ld1ZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWU8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVVbnNldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlVW5zZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmVVbnNldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVVuc2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZVVuc2V0KGludCkiPmVVbnNldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBoeXNpY2FsT2JqZWN0SW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVJc1NldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlSXNTZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBib29sZWFuIDxCPmVJc1NldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZUlzU2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZUlzU2V0KGludCkiPmVJc1NldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBoeXNpY2FsT2JqZWN0SW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dHJ1ZSwgaWYgc3VjY2Vzc2Z1bDwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvQWdlbnRJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BY3R1YXRvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWdlbnRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1JbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzA1MDVhOAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sCkBAIC0wLDAgKzEsNjk2IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitBbGdvcml0aG1JbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWxnb3JpdGhtSW1wbCBjbGFzcyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iQWxnb3JpdGhtSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9BbGdvcml0aG1JbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJBbGdvcml0aG1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIEFsZ29yaXRobUltcGw8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsCisgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsCisgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BbGdvcml0aG1JbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG08L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+QWxnb3JpdGhtSW1wbDwvQj48RFQ+ZXh0ZW5kcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDxEVD5pbXBsZW1lbnRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QWxnb3JpdGhtPC9iPjwvZW0+Jy4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyA8cD4KKyBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyA8dWw+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sI2dldEJhc2VfT3BlcmF0aW9uKCkiPjxDT0RFPjxlbT5CYXNlIE9wZXJhdGlvbjwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCNpc0lzRXh0ZXJuYWwoKSI+PENPREU+PGVtPklzIEV4dGVybmFsPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sI2dldEV4dEZ1bmN0aW9uTmFtZSgpIj48Q09ERT48ZW0+RXh0IEZ1bmN0aW9uIE5hbWU8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1JbXBsLmh0bWwjZ2V0UGF0aCgpIj48Q09ERT48ZW0+UGF0aDwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVBZGFwdGVyTGlzdCZsdDtFIGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCAmIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXImZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVPYnNlcnZhYmxlQWRhcHRlckxpc3Q8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QuRVN0b3JlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RUxBU1RfRU9CSkVDVF9GTEFHPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RU9QUE9TSVRFX0ZFQVRVUkVfQkFTRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLnVtbDIudW1sLk9wZXJhdGlvbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1JbXBsLmh0bWwjYmFzaWNHZXRCYXNlX09wZXJhdGlvbigpIj5iYXNpY0dldEJhc2VfT3BlcmF0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuT2JqZWN0PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPmVHZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgIGJvb2xlYW4mbmJzcDtyZXNvbHZlLAorICAgICBib29sZWFuJm5ic3A7Y29yZVR5cGUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2Jvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+ZVNldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO25ld1ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS51bWwyLnVtbC5PcGVyYXRpb248L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sI2dldEJhc2VfT3BlcmF0aW9uKCkiPmdldEJhc2VfT3BlcmF0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCNnZXRFeHRGdW5jdGlvbk5hbWUoKSI+Z2V0RXh0RnVuY3Rpb25OYW1lPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCNnZXRQYXRoKCkiPmdldFBhdGg8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2Jvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sI2lzSXNFeHRlcm5hbCgpIj5pc0lzRXh0ZXJuYWw8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sI3NldEJhc2VfT3BlcmF0aW9uKG9yZy5lY2xpcHNlLnVtbDIudW1sLk9wZXJhdGlvbikiPnNldEJhc2VfT3BlcmF0aW9uPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuT3BlcmF0aW9uJm5ic3A7bmV3QmFzZV9PcGVyYXRpb24pPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sI3NldEV4dEZ1bmN0aW9uTmFtZShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0RXh0RnVuY3Rpb25OYW1lPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld0V4dEZ1bmN0aW9uTmFtZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1JbXBsLmh0bWwjc2V0SXNFeHRlcm5hbChib29sZWFuKSI+c2V0SXNFeHRlcm5hbDwvQT48L0I+KGJvb2xlYW4mbmJzcDtuZXdJc0V4dGVybmFsKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCNzZXRQYXRoKGphdmEubGFuZy5TdHJpbmcpIj5zZXRQYXRoPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld1BhdGgpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtSW1wbC5odG1sI3RvU3RyaW5nKCkiPnRvU3RyaW5nPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlQ2xhc3MsIGVDb250YWluZXJGZWF0dXJlSUQsIGVEZWxpdmVyLCBlSW50ZXJuYWxDb250YWluZXIsIGVJbnZva2UsIGVJc1Byb3h5LCBlU2V0Q2xhc3MsIGVTZXREZWxpdmVyLCBlU2V0UHJveHlVUkk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQmFzZVN0cnVjdHVyYWxGZWF0dXJlSUQsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXJGZWF0dXJlLCBlQmFzaWNTZXRDb250YWluZXIsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRhaW5zLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGlyZWN0UmVzb3VyY2UsIGVEeW5hbWljQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlRHluYW1pY0dldCwgZUR5bmFtaWNHZXQsIGVEeW5hbWljSW52ZXJzZUFkZCwgZUR5bmFtaWNJbnZlcnNlUmVtb3ZlLCBlRHluYW1pY0ludm9rZSwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1Vuc2V0LCBlRHluYW1pY1Vuc2V0LCBlR2V0LCBlR2V0LCBlR2V0LCBlSW50ZXJuYWxSZXNvdXJjZSwgZUludmVyc2VBZGQsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZVJlbW92ZSwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZU9iamVjdEZvclVSSUZyYWdtZW50U2VnbWVudCwgZU9wZW5HZXQsIGVPcGVuSXNTZXQsIGVPcGVuU2V0LCBlT3BlblVuc2V0LCBlUHJveHlVUkksIGVSZXNvbHZlUHJveHksIGVSZXNvdXJjZSwgZVNldCwgZVNldFJlc291cmNlLCBlU2V0U3RvcmUsIGVTZXR0aW5nLCBlU3RvcmUsIGVVbnNldCwgZVVSSUZyYWdtZW50U2VnbWVudCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbElzU2V0LCBlVmlydHVhbFNldCwgZVZpcnR1YWxVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQsIGVOb3RpZnk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB3YWl0LCB3YWl0LCB3YWl0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImdldEJhc2VfT3BlcmF0aW9uKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEJhc2VfT3BlcmF0aW9uPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UudW1sMi51bWwuT3BlcmF0aW9uIDxCPmdldEJhc2VfT3BlcmF0aW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI2dldEJhc2VfT3BlcmF0aW9uKCkiPmdldEJhc2VfT3BlcmF0aW9uPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBiYXNlXyBvcGVyYXRpb248RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwjc2V0QmFzZV9PcGVyYXRpb24ob3JnLmVjbGlwc2UudW1sMi51bWwuT3BlcmF0aW9uKSI+PENPREU+QWxnb3JpdGhtLnNldEJhc2VfT3BlcmF0aW9uKE9wZXJhdGlvbik8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBbGdvcml0aG1fQmFzZV9PcGVyYXRpb24oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0QWxnb3JpdGhtX0Jhc2VfT3BlcmF0aW9uKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iYmFzaWNHZXRCYXNlX09wZXJhdGlvbigpIj48IS0tIC0tPjwvQT48SDM+CitiYXNpY0dldEJhc2VfT3BlcmF0aW9uPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UudW1sMi51bWwuT3BlcmF0aW9uIDxCPmJhc2ljR2V0QmFzZV9PcGVyYXRpb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgb3BlcmF0aW9uPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRCYXNlX09wZXJhdGlvbihvcmcuZWNsaXBzZS51bWwyLnVtbC5PcGVyYXRpb24pIj48IS0tIC0tPjwvQT48SDM+CitzZXRCYXNlX09wZXJhdGlvbjwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0QmFzZV9PcGVyYXRpb248L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLk9wZXJhdGlvbiZuYnNwO25ld0Jhc2VfT3BlcmF0aW9uKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNzZXRCYXNlX09wZXJhdGlvbihvcmcuZWNsaXBzZS51bWwyLnVtbC5PcGVyYXRpb24pIj5zZXRCYXNlX09wZXJhdGlvbjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3QmFzZV9PcGVyYXRpb248L0NPREU+IC0gdGhlIG5ldyBiYXNlXyBvcGVyYXRpb248RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwjZ2V0QmFzZV9PcGVyYXRpb24oKSI+PENPREU+QWxnb3JpdGhtLmdldEJhc2VfT3BlcmF0aW9uKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaXNJc0V4dGVybmFsKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2lzSXNFeHRlcm5hbDwvSDM+Cis8UFJFPgorcHVibGljIGJvb2xlYW4gPEI+aXNJc0V4dGVybmFsPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI2lzSXNFeHRlcm5hbCgpIj5pc0lzRXh0ZXJuYWw8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dHJ1ZSwgaWYgaXMgY2hlY2tzIGlmIGlzIGV4dGVybmFsPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI3NldElzRXh0ZXJuYWwoYm9vbGVhbikiPjxDT0RFPkFsZ29yaXRobS5zZXRJc0V4dGVybmFsKGJvb2xlYW4pPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QWxnb3JpdGhtX0lzRXh0ZXJuYWwoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0QWxnb3JpdGhtX0lzRXh0ZXJuYWwoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRJc0V4dGVybmFsKGJvb2xlYW4pIj48IS0tIC0tPjwvQT48SDM+CitzZXRJc0V4dGVybmFsPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRJc0V4dGVybmFsPC9CPihib29sZWFuJm5ic3A7bmV3SXNFeHRlcm5hbCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwjc2V0SXNFeHRlcm5hbChib29sZWFuKSI+c2V0SXNFeHRlcm5hbDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3SXNFeHRlcm5hbDwvQ09ERT4gLSB0aGUgbmV3IGNoZWNrcyBpZiBpcyBleHRlcm5hbDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNpc0lzRXh0ZXJuYWwoKSI+PENPREU+QWxnb3JpdGhtLmlzSXNFeHRlcm5hbCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEV4dEZ1bmN0aW9uTmFtZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRFeHRGdW5jdGlvbk5hbWU8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldEV4dEZ1bmN0aW9uTmFtZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNnZXRFeHRGdW5jdGlvbk5hbWUoKSI+Z2V0RXh0RnVuY3Rpb25OYW1lPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBleHQgZnVuY3Rpb24gbmFtZTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNzZXRFeHRGdW5jdGlvbk5hbWUoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPkFsZ29yaXRobS5zZXRFeHRGdW5jdGlvbk5hbWUoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEFsZ29yaXRobV9FeHRGdW5jdGlvbk5hbWUoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0QWxnb3JpdGhtX0V4dEZ1bmN0aW9uTmFtZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldEV4dEZ1bmN0aW9uTmFtZShqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0RXh0RnVuY3Rpb25OYW1lPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRFeHRGdW5jdGlvbk5hbWU8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdFeHRGdW5jdGlvbk5hbWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI3NldEV4dEZ1bmN0aW9uTmFtZShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0RXh0RnVuY3Rpb25OYW1lPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdFeHRGdW5jdGlvbk5hbWU8L0NPREU+IC0gdGhlIG5ldyBleHQgZnVuY3Rpb24gbmFtZTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNnZXRFeHRGdW5jdGlvbk5hbWUoKSI+PENPREU+QWxnb3JpdGhtLmdldEV4dEZ1bmN0aW9uTmFtZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBhdGgoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UGF0aDwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0UGF0aDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNnZXRQYXRoKCkiPmdldFBhdGg8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHBhdGg8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwjc2V0UGF0aChqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+QWxnb3JpdGhtLnNldFBhdGgoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEFsZ29yaXRobV9QYXRoKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEFsZ29yaXRobV9QYXRoKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0UGF0aChqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0UGF0aDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0UGF0aDwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld1BhdGgpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI3NldFBhdGgoamF2YS5sYW5nLlN0cmluZykiPnNldFBhdGg8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld1BhdGg8L0NPREU+IC0gdGhlIG5ldyBwYXRoPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI2dldFBhdGgoKSI+PENPREU+QWxnb3JpdGhtLmdldFBhdGgoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPjwhLS0gLS0+PC9BPjxIMz4KK2VHZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuT2JqZWN0IDxCPmVHZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbGVhbiZuYnNwO3Jlc29sdmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtjb3JlVHlwZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lR2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+ZUdldDwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDxERD48Q09ERT5yZXNvbHZlPC9DT0RFPiAtIHRoZSByZXNvbHZlPEREPjxDT0RFPmNvcmVUeXBlPC9DT0RFPiAtIHRoZSBjb3JlIHR5cGUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG9iamVjdDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+CitlU2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5lU2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtuZXdWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lU2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+ZVNldDwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDxERD48Q09ERT5uZXdWYWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlVW5zZXQoaW50KSI+PCEtLSAtLT48L0E+PEgzPgorZVVuc2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5lVW5zZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lVW5zZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5lVW5zZXQ8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVJc1NldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlSXNTZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBib29sZWFuIDxCPmVJc1NldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVJc1NldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmVJc1NldDwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZAorPERUPjxCPlJldHVybnM6PC9CPjxERD50cnVlLCBpZiBzdWNjZXNzZnVsPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJ0b1N0cmluZygpIj48IS0tIC0tPjwvQT48SDM+Cit0b1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+dG9TdHJpbmc8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT50b1N0cmluZzwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvQWxnb3JpdGhtSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1MaWJyYXJ5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWxnb3JpdGhtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmQ0YTAwNQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbApAQCAtMCwwICsxLDU5MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjIxIENFVCAyMDEyIC0tPgorPFRJVExFPgorQWxnb3JpdGhtTGlicmFyeUltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BbGdvcml0aG1MaWJyYXJ5SW1wbCBjbGFzcyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iQWxnb3JpdGhtTGlicmFyeUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJBbGdvcml0aG1MaWJyYXJ5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0ZPTlQ+Cis8QlI+CitDbGFzcyBBbGdvcml0aG1MaWJyYXJ5SW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkFsZ29yaXRobUxpYnJhcnlJbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtTGlicmFyeTwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5BbGdvcml0aG1MaWJyYXJ5SW1wbDwvQj48RFQ+ZXh0ZW5kcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDxEVD5pbXBsZW1lbnRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG1MaWJyYXJ5PC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BbGdvcml0aG0gTGlicmFyeTwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgPHA+CisgVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgPHVsPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj48Q09ERT48ZW0+QmFzZSBDbGFzczwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwjZ2V0UGF0aCgpIj48Q09ERT48ZW0+UGF0aDwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVBZGFwdGVyTGlzdCZsdDtFIGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCAmIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXImZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVPYnNlcnZhYmxlQWRhcHRlckxpc3Q8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QuRVN0b3JlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RUxBU1RfRU9CSkVDVF9GTEFHPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RU9QUE9TSVRFX0ZFQVRVUkVfQkFTRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwjYmFzaWNHZXRCYXNlX0NsYXNzKCkiPmJhc2ljR2V0QmFzZV9DbGFzczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLk9iamVjdDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1MaWJyYXJ5SW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgYm9vbGVhbiZuYnNwO3Jlc29sdmUsCisgICAgIGJvb2xlYW4mbmJzcDtjb3JlVHlwZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Ym9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1MaWJyYXJ5SW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtuZXdWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1MaWJyYXJ5SW1wbC5odG1sI2VVbnNldChpbnQpIj5lVW5zZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwjZ2V0UGF0aCgpIj5nZXRQYXRoPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyZuYnNwO25ld0Jhc2VfQ2xhc3MpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCNzZXRQYXRoKGphdmEubGFuZy5TdHJpbmcpIj5zZXRQYXRoPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld1BhdGgpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCN0b1N0cmluZygpIj50b1N0cmluZzwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZUludGVybmFsQ29udGFpbmVyLCBlSW52b2tlLCBlSXNQcm94eSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURpcmVjdFJlc291cmNlLCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVByb3h5VVJJLCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVVUklGcmFnbWVudFNlZ21lbnQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkLCBlTm90aWZ5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVxdWFscywgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJnZXRCYXNlX0NsYXNzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEJhc2VfQ2xhc3M8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyA8Qj5nZXRCYXNlX0NsYXNzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobUxpYnJhcnk8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgYmFzZV8gY2xhc3M8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj48Q09ERT5BbGdvcml0aG1MaWJyYXJ5LnNldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QWxnb3JpdGhtTGlicmFyeV9CYXNlX0NsYXNzKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEFsZ29yaXRobUxpYnJhcnlfQmFzZV9DbGFzcygpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImJhc2ljR2V0QmFzZV9DbGFzcygpIj48IS0tIC0tPjwvQT48SDM+CitiYXNpY0dldEJhc2VfQ2xhc3M8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyA8Qj5iYXNpY0dldEJhc2VfQ2xhc3M8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgb3JnLmVjbGlwc2UudW1sMi51bWwuIGNsYXNzPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0QmFzZV9DbGFzczwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0QmFzZV9DbGFzczwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MmbmJzcDtuZXdCYXNlX0NsYXNzKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobUxpYnJhcnk8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3QmFzZV9DbGFzczwvQ09ERT4gLSB0aGUgbmV3IGJhc2VfIGNsYXNzPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCNnZXRCYXNlX0NsYXNzKCkiPjxDT0RFPkFsZ29yaXRobUxpYnJhcnkuZ2V0QmFzZV9DbGFzcygpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBhdGgoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UGF0aDwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0UGF0aDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwjZ2V0UGF0aCgpIj5nZXRQYXRoPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG1MaWJyYXJ5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHBhdGg8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sI3NldFBhdGgoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPkFsZ29yaXRobUxpYnJhcnkuc2V0UGF0aChTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QWxnb3JpdGhtTGlicmFyeV9QYXRoKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEFsZ29yaXRobUxpYnJhcnlfUGF0aCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFBhdGgoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFBhdGg8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldFBhdGg8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdQYXRoKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwjc2V0UGF0aChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0UGF0aDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtTGlicmFyeTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdQYXRoPC9DT0RFPiAtIHRoZSBuZXcgcGF0aDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwjZ2V0UGF0aCgpIj48Q09ERT5BbGdvcml0aG1MaWJyYXJ5LmdldFBhdGgoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPjwhLS0gLS0+PC9BPjxIMz4KK2VHZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuT2JqZWN0IDxCPmVHZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbGVhbiZuYnNwO3Jlc29sdmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtjb3JlVHlwZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lR2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+ZUdldDwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDxERD48Q09ERT5yZXNvbHZlPC9DT0RFPiAtIHRoZSByZXNvbHZlPEREPjxDT0RFPmNvcmVUeXBlPC9DT0RFPiAtIHRoZSBjb3JlIHR5cGUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG9iamVjdDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+CitlU2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5lU2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtuZXdWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lU2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+ZVNldDwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDxERD48Q09ERT5uZXdWYWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlVW5zZXQoaW50KSI+PCEtLSAtLT48L0E+PEgzPgorZVVuc2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5lVW5zZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lVW5zZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5lVW5zZXQ8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVJc1NldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlSXNTZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBib29sZWFuIDxCPmVJc1NldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVJc1NldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmVJc1NldDwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZAorPERUPjxCPlJldHVybnM6PC9CPjxERD50cnVlLCBpZiBzdWNjZXNzZnVsPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJ0b1N0cmluZygpIj48IS0tIC0tPjwvQT48SDM+Cit0b1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+dG9TdHJpbmc8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT50b1N0cmluZzwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJBbGdvcml0aG1MaWJyYXJ5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBmMWY0NGMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbApAQCAtMCwwICsxLDcxMCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjIxIENFVCAyMDEyIC0tPgorPFRJVExFPgorQmxlbmRlck1vcnNlSW1wbAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkJsZW5kZXJNb3JzZUltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkJsZW5kZXJNb3JzZUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvQmxlbmRlck1vcnNlSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0J1aWxkaW5nSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQmxlbmRlck1vcnNlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0ZPTlQ+Cis8QlI+CitDbGFzcyBCbGVuZGVyTW9yc2VJbXBsPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsCisgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbAorICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbAorICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGw8L0E+CisgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGxhdGZvcm1JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU2ltdWxhdG9ySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90aWNTaW11bGF0b3JJbXBsPC9BPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQmxlbmRlck1vcnNlSW1wbDwvQj4KKzwvUFJFPgorPERMPgorPERUPjxCPkFsbCBJbXBsZW1lbnRlZCBJbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QmxlbmRlck1vcnNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGF0Zm9ybTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU2ltdWxhdG9yPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGNsYXNzIDxCPkJsZW5kZXJNb3JzZUltcGw8L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1NpbXVsYXRvckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU2ltdWxhdG9ySW1wbDwvQT48RFQ+aW1wbGVtZW50cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5CbGVuZGVyTW9yc2U8L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkJsZW5kZXIgTW9yc2U8L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorIDxwPgorIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwjaXNEZWJ1Z01vZGUoKSI+PENPREU+PGVtPkRlYnVnIE1vZGU8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwjaXNEZWJ1Z0Rpc3BsYXkoKSI+PENPREU+PGVtPkRlYnVnIERpc3BsYXk8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwjZ2V0R3Jhdml0eSgpIj48Q09ERT48ZW0+R3Jhdml0eTwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCNnZXRfdmlld3BvcnRfc2hhZGUoKSI+PENPREU+PGVtPnZpZXdwb3J0IHNoYWRlPC9lbT48L0NPREU+PC9BPjwvbGk+CisgPC91bD4KKyA8L3A+Cis8UD4KKworPFA+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PSBORVNURUQgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0ibmVzdGVkX2NsYXNzX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5OZXN0ZWQgQ2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRUFkYXB0ZXJMaXN0Jmx0O0UgZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0ICYgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciZndDssIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRU9ic2VydmFibGVBZGFwdGVyTGlzdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdC5FU3RvcmU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FTEFTVF9FT0JKRUNUX0ZMQUc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FT1BQT1NJVEVfRkVBVFVSRV9CQVNFPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLk9iamVjdDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj5lR2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICBib29sZWFuJm5ic3A7cmVzb2x2ZSwKKyAgICAgYm9vbGVhbiZuYnNwO2NvcmVUeXBlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2Jvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj5lU2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7bmV3VmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwjZVVuc2V0KGludCkiPmVVbnNldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sI2dldF92aWV3cG9ydF9zaGFkZSgpIj5nZXRfdmlld3BvcnRfc2hhZGU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwjZ2V0R3Jhdml0eSgpIj5nZXRHcmF2aXR5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2Jvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sI2lzRGVidWdEaXNwbGF5KCkiPmlzRGVidWdEaXNwbGF5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2Jvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sI2lzRGVidWdNb2RlKCkiPmlzRGVidWdNb2RlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sI3NldF92aWV3cG9ydF9zaGFkZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2hhZGUpIj5zZXRfdmlld3BvcnRfc2hhZGU8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT4mbmJzcDtuZXdfdmlld3BvcnRfc2hhZGUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwjc2V0RGVidWdEaXNwbGF5KGJvb2xlYW4pIj5zZXREZWJ1Z0Rpc3BsYXk8L0E+PC9CPihib29sZWFuJm5ic3A7bmV3RGVidWdEaXNwbGF5KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sI3NldERlYnVnTW9kZShib29sZWFuKSI+c2V0RGVidWdNb2RlPC9BPjwvQj4oYm9vbGVhbiZuYnNwO25ld0RlYnVnTW9kZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCNzZXRHcmF2aXR5KGphdmEubGFuZy5TdHJpbmcpIj5zZXRHcmF2aXR5PC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld0dyYXZpdHkpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwjdG9TdHJpbmcoKSI+dG9TdHJpbmc8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBsYXRmb3JtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGxhdGZvcm1JbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9Ob2RlKCkiPmJhc2ljR2V0QmFzZV9Ob2RlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwjZ2V0QmFzZV9Ob2RlKCkiPmdldEJhc2VfTm9kZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sI3NldEJhc2VfTm9kZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Ob2RlKSI+c2V0QmFzZV9Ob2RlPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TeXN0ZW1JbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNiYXNpY0dldEJhc2VfQ2xhc3MoKSI+YmFzaWNHZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVDbGFzcywgZUNvbnRhaW5lckZlYXR1cmVJRCwgZURlbGl2ZXIsIGVJbnRlcm5hbENvbnRhaW5lciwgZUludm9rZSwgZUlzUHJveHksIGVTZXRDbGFzcywgZVNldERlbGl2ZXIsIGVTZXRQcm94eVVSSTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVCYXNlU3RydWN0dXJhbEZlYXR1cmVJRCwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lckZlYXR1cmUsIGVCYXNpY1NldENvbnRhaW5lciwgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGFpbnMsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEaXJlY3RSZXNvdXJjZSwgZUR5bmFtaWNCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVEeW5hbWljR2V0LCBlRHluYW1pY0dldCwgZUR5bmFtaWNJbnZlcnNlQWRkLCBlRHluYW1pY0ludmVyc2VSZW1vdmUsIGVEeW5hbWljSW52b2tlLCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljVW5zZXQsIGVEeW5hbWljVW5zZXQsIGVHZXQsIGVHZXQsIGVHZXQsIGVJbnRlcm5hbFJlc291cmNlLCBlSW52ZXJzZUFkZCwgZUludmVyc2VBZGQsIGVJbnZlcnNlUmVtb3ZlLCBlSW52ZXJzZVJlbW92ZSwgZUludm9rZSwgZUlzU2V0LCBlT2JqZWN0Rm9yVVJJRnJhZ21lbnRTZWdtZW50LCBlT3BlbkdldCwgZU9wZW5Jc1NldCwgZU9wZW5TZXQsIGVPcGVuVW5zZXQsIGVQcm94eVVSSSwgZVJlc29sdmVQcm94eSwgZVJlc291cmNlLCBlU2V0LCBlU2V0UmVzb3VyY2UsIGVTZXRTdG9yZSwgZVNldHRpbmcsIGVTdG9yZSwgZVVuc2V0LCBlVVJJRnJhZ21lbnRTZWdtZW50LCBlVmlydHVhbEdldCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsSXNTZXQsIGVWaXJ0dWFsU2V0LCBlVmlydHVhbFVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGxhdGZvcm0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGF0Zm9ybTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCNnZXRCYXNlX05vZGUoKSI+Z2V0QmFzZV9Ob2RlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwjc2V0QmFzZV9Ob2RlKG9yZy5lY2xpcHNlLnVtbDIudW1sLk5vZGUpIj5zZXRCYXNlX05vZGU8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iaXNEZWJ1Z01vZGUoKSI+PCEtLSAtLT48L0E+PEgzPgoraXNEZWJ1Z01vZGU8L0gzPgorPFBSRT4KK3B1YmxpYyBib29sZWFuIDxCPmlzRGVidWdNb2RlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjaXNEZWJ1Z01vZGUoKSI+aXNEZWJ1Z01vZGU8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QmxlbmRlck1vcnNlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPkRlYnVnIE1vZGU8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNzZXREZWJ1Z01vZGUoYm9vbGVhbikiPjxDT0RFPkJsZW5kZXJNb3JzZS5zZXREZWJ1Z01vZGUoYm9vbGVhbik8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRCbGVuZGVyTW9yc2VfRGVidWdNb2RlKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEJsZW5kZXJNb3JzZV9EZWJ1Z01vZGUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXREZWJ1Z01vZGUoYm9vbGVhbikiPjwhLS0gLS0+PC9BPjxIMz4KK3NldERlYnVnTW9kZTwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0RGVidWdNb2RlPC9CPihib29sZWFuJm5ic3A7bmV3RGVidWdNb2RlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sI3NldERlYnVnTW9kZShib29sZWFuKSI+c2V0RGVidWdNb2RlPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJsZW5kZXJNb3JzZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdEZWJ1Z01vZGU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5EZWJ1ZyBNb2RlPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjaXNEZWJ1Z01vZGUoKSI+PENPREU+QmxlbmRlck1vcnNlLmlzRGVidWdNb2RlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iaXNEZWJ1Z0Rpc3BsYXkoKSI+PCEtLSAtLT48L0E+PEgzPgoraXNEZWJ1Z0Rpc3BsYXk8L0gzPgorPFBSRT4KK3B1YmxpYyBib29sZWFuIDxCPmlzRGVidWdEaXNwbGF5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjaXNEZWJ1Z0Rpc3BsYXkoKSI+aXNEZWJ1Z0Rpc3BsYXk8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QmxlbmRlck1vcnNlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPkRlYnVnIERpc3BsYXk8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNzZXREZWJ1Z0Rpc3BsYXkoYm9vbGVhbikiPjxDT0RFPkJsZW5kZXJNb3JzZS5zZXREZWJ1Z0Rpc3BsYXkoYm9vbGVhbik8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRCbGVuZGVyTW9yc2VfRGVidWdEaXNwbGF5KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEJsZW5kZXJNb3JzZV9EZWJ1Z0Rpc3BsYXkoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXREZWJ1Z0Rpc3BsYXkoYm9vbGVhbikiPjwhLS0gLS0+PC9BPjxIMz4KK3NldERlYnVnRGlzcGxheTwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0RGVidWdEaXNwbGF5PC9CPihib29sZWFuJm5ic3A7bmV3RGVidWdEaXNwbGF5KTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sI3NldERlYnVnRGlzcGxheShib29sZWFuKSI+c2V0RGVidWdEaXNwbGF5PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJsZW5kZXJNb3JzZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdEZWJ1Z0Rpc3BsYXk8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5EZWJ1ZyBEaXNwbGF5PC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjaXNEZWJ1Z0Rpc3BsYXkoKSI+PENPREU+QmxlbmRlck1vcnNlLmlzRGVidWdEaXNwbGF5KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0R3Jhdml0eSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRHcmF2aXR5PC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRHcmF2aXR5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjZ2V0R3Jhdml0eSgpIj5nZXRHcmF2aXR5PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJsZW5kZXJNb3JzZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5HcmF2aXR5PC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjc2V0R3Jhdml0eShqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+QmxlbmRlck1vcnNlLnNldEdyYXZpdHkoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEJsZW5kZXJNb3JzZV9HcmF2aXR5KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEJsZW5kZXJNb3JzZV9HcmF2aXR5KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0R3Jhdml0eShqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0R3Jhdml0eTwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0R3Jhdml0eTwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld0dyYXZpdHkpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjc2V0R3Jhdml0eShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0R3Jhdml0eTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5CbGVuZGVyTW9yc2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3R3Jhdml0eTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkdyYXZpdHk8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNnZXRHcmF2aXR5KCkiPjxDT0RFPkJsZW5kZXJNb3JzZS5nZXRHcmF2aXR5KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0X3ZpZXdwb3J0X3NoYWRlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldF92aWV3cG9ydF9zaGFkZTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPiA8Qj5nZXRfdmlld3BvcnRfc2hhZGU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNnZXRfdmlld3BvcnRfc2hhZGUoKSI+Z2V0X3ZpZXdwb3J0X3NoYWRlPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJsZW5kZXJNb3JzZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT52aWV3cG9ydCBzaGFkZTwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+U2hhZGU8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjc2V0X3ZpZXdwb3J0X3NoYWRlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TaGFkZSkiPjxDT0RFPkJsZW5kZXJNb3JzZS5zZXRfdmlld3BvcnRfc2hhZGUoU2hhZGUpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QmxlbmRlck1vcnNlX192aWV3cG9ydF9zaGFkZSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRCbGVuZGVyTW9yc2VfX3ZpZXdwb3J0X3NoYWRlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0X3ZpZXdwb3J0X3NoYWRlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TaGFkZSkiPjwhLS0gLS0+PC9BPjxIMz4KK3NldF92aWV3cG9ydF9zaGFkZTwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0X3ZpZXdwb3J0X3NoYWRlPC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT4mbmJzcDtuZXdfdmlld3BvcnRfc2hhZGUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjc2V0X3ZpZXdwb3J0X3NoYWRlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TaGFkZSkiPnNldF92aWV3cG9ydF9zaGFkZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5CbGVuZGVyTW9yc2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3X3ZpZXdwb3J0X3NoYWRlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+dmlld3BvcnQgc2hhZGU8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlNoYWRlPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sI2dldF92aWV3cG9ydF9zaGFkZSgpIj48Q09ERT5CbGVuZGVyTW9yc2UuZ2V0X3ZpZXdwb3J0X3NoYWRlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj48IS0tIC0tPjwvQT48SDM+CitlR2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLk9iamVjdCA8Qj5lR2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtyZXNvbHZlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sZWFuJm5ic3A7Y29yZVR5cGUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lR2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj5lR2V0PC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGxhdGZvcm1JbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDxERD48Q09ERT5yZXNvbHZlPC9DT0RFPiAtIHRoZSByZXNvbHZlPEREPjxDT0RFPmNvcmVUeXBlPC9DT0RFPiAtIHRoZSBjb3JlIHR5cGUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG9iamVjdDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+CitlU2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5lU2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtuZXdWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVTZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QbGF0Zm9ybUltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkPEREPjxDT0RFPm5ld1ZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWU8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVVbnNldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlVW5zZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmVVbnNldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVVuc2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwjZVVuc2V0KGludCkiPmVVbnNldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBsYXRmb3JtSW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVJc1NldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlSXNTZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBib29sZWFuIDxCPmVJc1NldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZUlzU2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwjZUlzU2V0KGludCkiPmVJc1NldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBsYXRmb3JtSW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dHJ1ZSwgaWYgc3VjY2Vzc2Z1bDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0idG9TdHJpbmcoKSI+PCEtLSAtLT48L0E+PEgzPgordG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPnRvU3RyaW5nPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT50b1N0cmluZzwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0JsZW5kZXJNb3JzZUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CdWlsZGluZ0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkJsZW5kZXJNb3JzZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CdWlsZGluZ0ltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQnVpbGRpbmdJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDcxNzJlOQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQnVpbGRpbmdJbXBsLmh0bWwKQEAgLTAsMCArMSwzNTAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK0J1aWxkaW5nSW1wbAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkJ1aWxkaW5nSW1wbCBjbGFzcyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iQnVpbGRpbmdJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0J1aWxkaW5nSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CdWlsZGluZ0ltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJCdWlsZGluZ0ltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsT2JqZWN0SW1wbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIEJ1aWxkaW5nSW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsT2JqZWN0SW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQnVpbGRpbmdJbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQnVpbGRpbmcuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJ1aWxkaW5nPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5CdWlsZGluZ0ltcGw8L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGh5c2ljYWxPYmplY3RJbXBsPC9BPjxEVD5pbXBsZW1lbnRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CdWlsZGluZy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QnVpbGRpbmc8L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkJ1aWxkaW5nPC9iPjwvZW0+Jy4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyA8cD4KKyA8L3A+Cis8UD4KKworPFA+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PSBORVNURUQgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0ibmVzdGVkX2NsYXNzX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5OZXN0ZWQgQ2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRUFkYXB0ZXJMaXN0Jmx0O0UgZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0ICYgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciZndDssIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRU9ic2VydmFibGVBZGFwdGVyTGlzdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdC5FU3RvcmU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FTEFTVF9FT0JKRUNUX0ZMQUc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FT1BQT1NJVEVfRkVBVFVSRV9CQVNFPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGh5c2ljYWxPYmplY3RJbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sI2Jhc2ljR2V0SGFzU3VyZmFjZSgpIj5iYXNpY0dldEhhc1N1cmZhY2U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPmVHZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNlSXNTZXQoaW50KSI+ZUlzU2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj5lU2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZVVuc2V0KGludCkiPmVVbnNldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sI2dldEV2ZWxvdmVzSW4oKSI+Z2V0RXZlbG92ZXNJbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sI2dldEhhc1N1cmZhY2UoKSI+Z2V0SGFzU3VyZmFjZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sI3NldEhhc1N1cmZhY2Uob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN1cmZhY2UpIj5zZXRIYXNTdXJmYWNlPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TeXN0ZW1JbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNiYXNpY0dldEJhc2VfQ2xhc3MoKSI+YmFzaWNHZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVDbGFzcywgZUNvbnRhaW5lckZlYXR1cmVJRCwgZURlbGl2ZXIsIGVJbnRlcm5hbENvbnRhaW5lciwgZUludm9rZSwgZUlzUHJveHksIGVTZXRDbGFzcywgZVNldERlbGl2ZXIsIGVTZXRQcm94eVVSSTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVCYXNlU3RydWN0dXJhbEZlYXR1cmVJRCwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lckZlYXR1cmUsIGVCYXNpY1NldENvbnRhaW5lciwgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGFpbnMsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEaXJlY3RSZXNvdXJjZSwgZUR5bmFtaWNCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVEeW5hbWljR2V0LCBlRHluYW1pY0dldCwgZUR5bmFtaWNJbnZlcnNlQWRkLCBlRHluYW1pY0ludmVyc2VSZW1vdmUsIGVEeW5hbWljSW52b2tlLCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljVW5zZXQsIGVEeW5hbWljVW5zZXQsIGVHZXQsIGVHZXQsIGVHZXQsIGVJbnRlcm5hbFJlc291cmNlLCBlSW52ZXJzZUFkZCwgZUludmVyc2VBZGQsIGVJbnZlcnNlUmVtb3ZlLCBlSW52ZXJzZVJlbW92ZSwgZUludm9rZSwgZUlzU2V0LCBlT2JqZWN0Rm9yVVJJRnJhZ21lbnRTZWdtZW50LCBlT3BlbkdldCwgZU9wZW5Jc1NldCwgZU9wZW5TZXQsIGVPcGVuVW5zZXQsIGVQcm94eVVSSSwgZVJlc29sdmVQcm94eSwgZVJlc291cmNlLCBlU2V0LCBlU2V0UmVzb3VyY2UsIGVTZXRTdG9yZSwgZVNldHRpbmcsIGVTdG9yZSwgZVVuc2V0LCBlVVJJRnJhZ21lbnRTZWdtZW50LCBlVmlydHVhbEdldCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsSXNTZXQsIGVWaXJ0dWFsU2V0LCBlVmlydHVhbFVuc2V0LCB0b1N0cmluZzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQsIGVOb3RpZnk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB3YWl0LCB3YWl0LCB3YWl0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBoeXNpY2FsT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0RXZlbG92ZXNJbigpIj5nZXRFdmVsb3Zlc0luPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0SGFzU3VyZmFjZSgpIj5nZXRIYXNTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjc2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPnNldEhhc1N1cmZhY2U8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0J1aWxkaW5nSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CdWlsZGluZ0ltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJCdWlsZGluZ0ltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsT2JqZWN0SW1wbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzdjNDBjMgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sCkBAIC0wLDAgKzEsODg3IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitDYW1lcmFTeXN0ZW1JbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQ2FtZXJhU3lzdGVtSW1wbCBjbGFzcyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iQ2FtZXJhU3lzdGVtSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CdWlsZGluZ0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbGxlY3Rpb25JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJDYW1lcmFTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIENhbWVyYVN5c3RlbUltcGw8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsCisgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsCisgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90aWNTeXN0ZW1JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU2Vuc29yU3lzdGVtSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0ltYWdlU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkltYWdlU2Vuc29yU3lzdGVtSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5DYW1lcmFTeXN0ZW1JbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkltYWdlU2Vuc29yU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+Q2FtZXJhU3lzdGVtSW1wbDwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9JbWFnZVNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5JbWFnZVNlbnNvclN5c3RlbUltcGw8L0E+PERUPmltcGxlbWVudHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q2FtZXJhU3lzdGVtPC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5DYW1lcmEgU3lzdGVtPC9iPjwvZW0+Jy4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyA8cD4KKyBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyA8dWw+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sI2dldFdpZHRoKCkiPjxDT0RFPjxlbT5XaWR0aDwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCNnZXRIZWlnaHQoKSI+PENPREU+PGVtPkhlaWdodDwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCNnZXRBbHBoYV91KCkiPjxDT0RFPjxlbT5BbHBoYSB1PC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sI2dldEFscGhhX3YoKSI+PENPREU+PGVtPkFscGhhIHY8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwjZ2V0VTAoKSI+PENPREU+PGVtPlUwPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sI2dldFYwKCkiPjxDT0RFPjxlbT5WMDwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCNnZXRDb2xvcl9mb3JtYXQoKSI+PENPREU+PGVtPkNvbG9yIGZvcm1hdDwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVBZGFwdGVyTGlzdCZsdDtFIGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCAmIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXImZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVPYnNlcnZhYmxlQWRhcHRlckxpc3Q8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QuRVN0b3JlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RUxBU1RfRU9CSkVDVF9GTEFHPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RU9QUE9TSVRFX0ZFQVRVUkVfQkFTRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5PYmplY3Q8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgYm9vbGVhbiZuYnNwO3Jlc29sdmUsCisgICAgIGJvb2xlYW4mbmJzcDtjb3JlVHlwZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Ym9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwjZUlzU2V0KGludCkiPmVJc1NldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj5lU2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7bmV3VmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sI2VVbnNldChpbnQpIj5lVW5zZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sI2dldEFscGhhX3UoKSI+Z2V0QWxwaGFfdTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwjZ2V0QWxwaGFfdigpIj5nZXRBbHBoYV92PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCNnZXRDb2xvcl9mb3JtYXQoKSI+Z2V0Q29sb3JfZm9ybWF0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sI2dldEhlaWdodCgpIj5nZXRIZWlnaHQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sI2dldFUwKCkiPmdldFUwPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCNnZXRWMCgpIj5nZXRWMDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwjZ2V0V2lkdGgoKSI+Z2V0V2lkdGg8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sI3NldEFscGhhX3UoamF2YS5sYW5nLlN0cmluZykiPnNldEFscGhhX3U8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3QWxwaGFfdSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwjc2V0QWxwaGFfdihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0QWxwaGFfdjwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdBbHBoYV92KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCNzZXRDb2xvcl9mb3JtYXQoamF2YS5sYW5nLlN0cmluZykiPnNldENvbG9yX2Zvcm1hdDwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdDb2xvcl9mb3JtYXQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwjc2V0SGVpZ2h0KGphdmEubGFuZy5TdHJpbmcpIj5zZXRIZWlnaHQ8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3SGVpZ2h0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCNzZXRVMChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0VTA8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3VTApPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sI3NldFYwKGphdmEubGFuZy5TdHJpbmcpIj5zZXRWMDwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdWMCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwjc2V0V2lkdGgoamF2YS5sYW5nLlN0cmluZykiPnNldFdpZHRoPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld1dpZHRoKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCN0b1N0cmluZygpIj50b1N0cmluZzwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNlbnNvclN5c3RlbUltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JTeXN0ZW1JbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNnZXRGcmVxdWVuY3koKSI+Z2V0RnJlcXVlbmN5PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI2dldElkZW50aWZpZXIoKSI+Z2V0SWRlbnRpZmllcjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNzZXRGcmVxdWVuY3koamF2YS5sYW5nLlN0cmluZykiPnNldEZyZXF1ZW5jeTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNzZXRJZGVudGlmaWVyKGphdmEubGFuZy5TdHJpbmcpIj5zZXRJZGVudGlmaWVyPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90aWNTeXN0ZW1JbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90aWNTeXN0ZW1JbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjZ2V0TG9jYWxPcmllbnRhdGlvbigpIj5nZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCNnZXRMb2NhbFBvc2l0aW9uKCkiPmdldExvY2FsUG9zaXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI3NldExvY2FsT3JpZW50YXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI3NldExvY2FsUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsUG9zaXRpb248L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9DbGFzcygpIj5iYXNpY0dldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZUludGVybmFsQ29udGFpbmVyLCBlSW52b2tlLCBlSXNQcm94eSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURpcmVjdFJlc291cmNlLCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVByb3h5VVJJLCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVVUklGcmFnbWVudFNlZ21lbnQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkLCBlTm90aWZ5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVxdWFscywgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZW5zb3JTeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNnZXRGcmVxdWVuY3koKSI+Z2V0RnJlcXVlbmN5PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI2dldElkZW50aWZpZXIoKSI+Z2V0SWRlbnRpZmllcjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNzZXRGcmVxdWVuY3koamF2YS5sYW5nLlN0cmluZykiPnNldEZyZXF1ZW5jeTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNzZXRJZGVudGlmaWVyKGphdmEubGFuZy5TdHJpbmcpIj5zZXRJZGVudGlmaWVyPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxPcmllbnRhdGlvbigpIj5nZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbFBvc2l0aW9uKCkiPmdldExvY2FsUG9zaXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsT3JpZW50YXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsUG9zaXRpb248L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0V2lkdGgoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2lkdGg8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldFdpZHRoPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldFdpZHRoKCkiPmdldFdpZHRoPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNhbWVyYVN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB3aWR0aDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNzZXRXaWR0aChqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+Q2FtZXJhU3lzdGVtLnNldFdpZHRoKFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDYW1lcmFTeXN0ZW1fV2lkdGgoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0Q2FtZXJhU3lzdGVtX1dpZHRoKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0V2lkdGgoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFdpZHRoPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRXaWR0aDwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld1dpZHRoKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNzZXRXaWR0aChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0V2lkdGg8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q2FtZXJhU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld1dpZHRoPC9DT0RFPiAtIHRoZSBuZXcgd2lkdGg8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0V2lkdGgoKSI+PENPREU+Q2FtZXJhU3lzdGVtLmdldFdpZHRoKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0SGVpZ2h0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEhlaWdodDwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0SGVpZ2h0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldEhlaWdodCgpIj5nZXRIZWlnaHQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q2FtZXJhU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGhlaWdodDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNzZXRIZWlnaHQoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPkNhbWVyYVN5c3RlbS5zZXRIZWlnaHQoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENhbWVyYVN5c3RlbV9IZWlnaHQoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0Q2FtZXJhU3lzdGVtX0hlaWdodCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldEhlaWdodChqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0SGVpZ2h0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRIZWlnaHQ8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdIZWlnaHQpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI3NldEhlaWdodChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0SGVpZ2h0PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNhbWVyYVN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdIZWlnaHQ8L0NPREU+IC0gdGhlIG5ldyBoZWlnaHQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0SGVpZ2h0KCkiPjxDT0RFPkNhbWVyYVN5c3RlbS5nZXRIZWlnaHQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRBbHBoYV91KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEFscGhhX3U8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldEFscGhhX3U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0QWxwaGFfdSgpIj5nZXRBbHBoYV91PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNhbWVyYVN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBhbHBoYV91PERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI3NldEFscGhhX3UoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPkNhbWVyYVN5c3RlbS5zZXRBbHBoYV91KFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDYW1lcmFTeXN0ZW1fQWxwaGFfdSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRDYW1lcmFTeXN0ZW1fQWxwaGFfdSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldEFscGhhX3UoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldEFscGhhX3U8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldEFscGhhX3U8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdBbHBoYV91KTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNzZXRBbHBoYV91KGphdmEubGFuZy5TdHJpbmcpIj5zZXRBbHBoYV91PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNhbWVyYVN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdBbHBoYV91PC9DT0RFPiAtIHRoZSBuZXcgYWxwaGFfdTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRBbHBoYV91KCkiPjxDT0RFPkNhbWVyYVN5c3RlbS5nZXRBbHBoYV91KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0QWxwaGFfdigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRBbHBoYV92PC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRBbHBoYV92PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldEFscGhhX3YoKSI+Z2V0QWxwaGFfdjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgYWxwaGFfdjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNzZXRBbHBoYV92KGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5DYW1lcmFTeXN0ZW0uc2V0QWxwaGFfdihTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q2FtZXJhU3lzdGVtX0FscGhhX3YoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0Q2FtZXJhU3lzdGVtX0FscGhhX3YoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRBbHBoYV92KGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRBbHBoYV92PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRBbHBoYV92PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3QWxwaGFfdik8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjc2V0QWxwaGFfdihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0QWxwaGFfdjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3QWxwaGFfdjwvQ09ERT4gLSB0aGUgbmV3IGFscGhhX3Y8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0QWxwaGFfdigpIj48Q09ERT5DYW1lcmFTeXN0ZW0uZ2V0QWxwaGFfdigpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFUwKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFUwPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRVMDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRVMCgpIj5nZXRVMDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdTA8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjc2V0VTAoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPkNhbWVyYVN5c3RlbS5zZXRVMChTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q2FtZXJhU3lzdGVtX1UwKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldENhbWVyYVN5c3RlbV9VMCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFUwKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRVMDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0VTA8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdVMCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjc2V0VTAoamF2YS5sYW5nLlN0cmluZykiPnNldFUwPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNhbWVyYVN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdVMDwvQ09ERT4gLSB0aGUgbmV3IHUwPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldFUwKCkiPjxDT0RFPkNhbWVyYVN5c3RlbS5nZXRVMCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFYwKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFYwPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRWMDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRWMCgpIj5nZXRWMDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdjA8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjc2V0VjAoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPkNhbWVyYVN5c3RlbS5zZXRWMChTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q2FtZXJhU3lzdGVtX1YwKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldENhbWVyYVN5c3RlbV9WMCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFYwKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRWMDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0VjA8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdWMCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjc2V0VjAoamF2YS5sYW5nLlN0cmluZykiPnNldFYwPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNhbWVyYVN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdWMDwvQ09ERT4gLSB0aGUgbmV3IHYwPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldFYwKCkiPjxDT0RFPkNhbWVyYVN5c3RlbS5nZXRWMCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldENvbG9yX2Zvcm1hdCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRDb2xvcl9mb3JtYXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldENvbG9yX2Zvcm1hdDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI2dldENvbG9yX2Zvcm1hdCgpIj5nZXRDb2xvcl9mb3JtYXQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q2FtZXJhU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPkNvbG9yIGZvcm1hdDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sI3NldENvbG9yX2Zvcm1hdChqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+Q2FtZXJhU3lzdGVtLnNldENvbG9yX2Zvcm1hdChTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q2FtZXJhU3lzdGVtX0NvbG9yX2Zvcm1hdCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRDYW1lcmFTeXN0ZW1fQ29sb3JfZm9ybWF0KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0Q29sb3JfZm9ybWF0KGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRDb2xvcl9mb3JtYXQ8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldENvbG9yX2Zvcm1hdDwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld0NvbG9yX2Zvcm1hdCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNzZXRDb2xvcl9mb3JtYXQoamF2YS5sYW5nLlN0cmluZykiPnNldENvbG9yX2Zvcm1hdDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3Q29sb3JfZm9ybWF0PC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+Q29sb3IgZm9ybWF0PC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0Q29sb3JfZm9ybWF0KCkiPjxDT0RFPkNhbWVyYVN5c3RlbS5nZXRDb2xvcl9mb3JtYXQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPjwhLS0gLS0+PC9BPjxIMz4KK2VHZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuT2JqZWN0IDxCPmVHZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbGVhbiZuYnNwO3Jlc29sdmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtjb3JlVHlwZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lR2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JTeXN0ZW1JbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDxERD48Q09ERT5yZXNvbHZlPC9DT0RFPiAtIHRoZSByZXNvbHZlPEREPjxDT0RFPmNvcmVUeXBlPC9DT0RFPiAtIHRoZSBjb3JlIHR5cGUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG9iamVjdDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+CitlU2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5lU2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtuZXdWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lU2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+ZVNldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JTeXN0ZW1JbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDxERD48Q09ERT5uZXdWYWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlVW5zZXQoaW50KSI+PCEtLSAtLT48L0E+PEgzPgorZVVuc2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5lVW5zZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lVW5zZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwjZVVuc2V0KGludCkiPmVVbnNldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JTeXN0ZW1JbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUlzU2V0KGludCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VJc1NldDwvSDM+Cis8UFJFPgorcHVibGljIGJvb2xlYW4gPEI+ZUlzU2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZUlzU2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2Vuc29yU3lzdGVtSW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dHJ1ZSwgaWYgc3VjY2Vzc2Z1bDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0idG9TdHJpbmcoKSI+PCEtLSAtLT48L0E+PEgzPgordG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPnRvU3RyaW5nPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI3RvU3RyaW5nKCkiPnRvU3RyaW5nPC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlbnNvclN5c3RlbUltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CdWlsZGluZ0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbGxlY3Rpb25JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJDYW1lcmFTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29sbGVjdGlvbkltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29sbGVjdGlvbkltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yYTg1N2M3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db2xsZWN0aW9uSW1wbC5odG1sCkBAIC0wLDAgKzEsNTExIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitDb2xsZWN0aW9uSW1wbAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkNvbGxlY3Rpb25JbXBsIGNsYXNzIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJDb2xsZWN0aW9uSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9Db2xsZWN0aW9uSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29tcG9zZWREYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db2xsZWN0aW9uSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkNvbGxlY3Rpb25JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIENvbGxlY3Rpb25JbXBsPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsCisgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbAorICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbAorICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQ29sbGVjdGlvbkltcGw8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Db2xsZWN0aW9uPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGNsYXNzIDxCPkNvbGxlY3Rpb25JbXBsPC9CPjxEVD5leHRlbmRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPERUPmltcGxlbWVudHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbGxlY3Rpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNvbGxlY3Rpb248L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNvbGxlY3Rpb248L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorIDxwPgorIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db2xsZWN0aW9uSW1wbC5odG1sI2dldEJhc2VfRGF0YVR5cGUoKSI+PENPREU+PGVtPkJhc2UgRGF0YSBUeXBlPC9lbT48L0NPREU+PC9BPjwvbGk+CisgPC91bD4KKyA8L3A+Cis8UD4KKworPFA+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PSBORVNURUQgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0ibmVzdGVkX2NsYXNzX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5OZXN0ZWQgQ2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRUFkYXB0ZXJMaXN0Jmx0O0UgZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0ICYgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciZndDssIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRU9ic2VydmFibGVBZGFwdGVyTGlzdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdC5FU3RvcmU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FTEFTVF9FT0JKRUNUX0ZMQUc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FT1BQT1NJVEVfRkVBVFVSRV9CQVNFPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29sbGVjdGlvbkltcGwuaHRtbCNiYXNpY0dldEJhc2VfRGF0YVR5cGUoKSI+YmFzaWNHZXRCYXNlX0RhdGFUeXBlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuT2JqZWN0PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbGxlY3Rpb25JbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj5lR2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICBib29sZWFuJm5ic3A7cmVzb2x2ZSwKKyAgICAgYm9vbGVhbiZuYnNwO2NvcmVUeXBlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtib29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbGxlY3Rpb25JbXBsLmh0bWwjZUlzU2V0KGludCkiPmVJc1NldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db2xsZWN0aW9uSW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+ZVNldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO25ld1ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbGxlY3Rpb25JbXBsLmh0bWwjZVVuc2V0KGludCkiPmVVbnNldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29sbGVjdGlvbkltcGwuaHRtbCNnZXRCYXNlX0RhdGFUeXBlKCkiPmdldEJhc2VfRGF0YVR5cGU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29sbGVjdGlvbkltcGwuaHRtbCNzZXRCYXNlX0RhdGFUeXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlKSI+c2V0QmFzZV9EYXRhVHlwZTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlJm5ic3A7bmV3QmFzZV9EYXRhVHlwZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZUludGVybmFsQ29udGFpbmVyLCBlSW52b2tlLCBlSXNQcm94eSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURpcmVjdFJlc291cmNlLCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVByb3h5VVJJLCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVVUklGcmFnbWVudFNlZ21lbnQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQsIHRvU3RyaW5nPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0QmFzZV9EYXRhVHlwZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRCYXNlX0RhdGFUeXBlPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUgPEI+Z2V0QmFzZV9EYXRhVHlwZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwjZ2V0QmFzZV9EYXRhVHlwZSgpIj5nZXRCYXNlX0RhdGFUeXBlPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Db2xsZWN0aW9uPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGJhc2VfIGRhdGEgdHlwZTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwjc2V0QmFzZV9EYXRhVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5EYXRhVHlwZSkiPjxDT0RFPkNvbGxlY3Rpb24uc2V0QmFzZV9EYXRhVHlwZShEYXRhVHlwZSk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDb2xsZWN0aW9uX0Jhc2VfRGF0YVR5cGUoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0Q29sbGVjdGlvbl9CYXNlX0RhdGFUeXBlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iYmFzaWNHZXRCYXNlX0RhdGFUeXBlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2Jhc2ljR2V0QmFzZV9EYXRhVHlwZTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlIDxCPmJhc2ljR2V0QmFzZV9EYXRhVHlwZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBkYXRhIHR5cGU8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldEJhc2VfRGF0YVR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUpIj48IS0tIC0tPjwvQT48SDM+CitzZXRCYXNlX0RhdGFUeXBlPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRCYXNlX0RhdGFUeXBlPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5EYXRhVHlwZSZuYnNwO25ld0Jhc2VfRGF0YVR5cGUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbGxlY3Rpb24uaHRtbCNzZXRCYXNlX0RhdGFUeXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlKSI+c2V0QmFzZV9EYXRhVHlwZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q29sbGVjdGlvbjwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdCYXNlX0RhdGFUeXBlPC9DT0RFPiAtIHRoZSBuZXcgYmFzZV8gZGF0YSB0eXBlPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbGxlY3Rpb24uaHRtbCNnZXRCYXNlX0RhdGFUeXBlKCkiPjxDT0RFPkNvbGxlY3Rpb24uZ2V0QmFzZV9EYXRhVHlwZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+PCEtLSAtLT48L0E+PEgzPgorZUdldDwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5PYmplY3QgPEI+ZUdldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sZWFuJm5ic3A7cmVzb2x2ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbGVhbiZuYnNwO2NvcmVUeXBlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVHZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5lR2V0PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkPEREPjxDT0RFPnJlc29sdmU8L0NPREU+IC0gdGhlIHJlc29sdmU8REQ+PENPREU+Y29yZVR5cGU8L0NPREU+IC0gdGhlIGNvcmUgdHlwZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgb2JqZWN0PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VTZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmVTZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO25ld1ZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVTZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5lU2V0PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkPEREPjxDT0RFPm5ld1ZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWU8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVVbnNldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlVW5zZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmVVbnNldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVVbnNldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmVVbnNldDwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUlzU2V0KGludCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VJc1NldDwvSDM+Cis8UFJFPgorcHVibGljIGJvb2xlYW4gPEI+ZUlzU2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZUlzU2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+ZUlzU2V0PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRydWUsIGlmIHN1Y2Nlc3NmdWw8L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0NvbGxlY3Rpb25JbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db21wb3NlZERhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbGxlY3Rpb25JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQ29sbGVjdGlvbkltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db21wb3NlZERhdGFJbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbXBvc2VkRGF0YUltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xOWI3YjAwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db21wb3NlZERhdGFJbXBsLmh0bWwKQEAgLTAsMCArMSw1MTEgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK0NvbXBvc2VkRGF0YUltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Db21wb3NlZERhdGFJbXBsIGNsYXNzIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJDb21wb3NlZERhdGFJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0NvbXBvc2VkRGF0YUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbGxlY3Rpb25JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db21wb3NlZERhdGFJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQ29tcG9zZWREYXRhSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0ZPTlQ+Cis8QlI+CitDbGFzcyBDb21wb3NlZERhdGFJbXBsPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsCisgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbAorICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbAorICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQ29tcG9zZWREYXRhSW1wbDwvQj4KKzwvUFJFPgorPERMPgorPERUPjxCPkFsbCBJbXBsZW1lbnRlZCBJbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbXBvc2VkRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q29tcG9zZWREYXRhPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGNsYXNzIDxCPkNvbXBvc2VkRGF0YUltcGw8L0I+PERUPmV4dGVuZHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8RFQ+aW1wbGVtZW50cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcG9zZWREYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Db21wb3NlZERhdGE8L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNvbXBvc2VkIERhdGE8L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorIDxwPgorIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db21wb3NlZERhdGFJbXBsLmh0bWwjZ2V0QmFzZV9EYXRhVHlwZSgpIj48Q09ERT48ZW0+QmFzZSBEYXRhIFR5cGU8L2VtPjwvQ09ERT48L0E+PC9saT4KKyA8L3VsPgorIDwvcD4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09IE5FU1RFRCBDTEFTUyBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk5lc3RlZCBDbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FQWRhcHRlckxpc3QmbHQ7RSBleHRlbmRzIGphdmEubGFuZy5PYmplY3QgJiBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyJmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FT2JzZXJ2YWJsZUFkYXB0ZXJMaXN0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LkVTdG9yZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVMQVNUX0VPQkpFQ1RfRkxBRzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVPUFBPU0lURV9GRUFUVVJFX0JBU0U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS51bWwyLnVtbC5EYXRhVHlwZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db21wb3NlZERhdGFJbXBsLmh0bWwjYmFzaWNHZXRCYXNlX0RhdGFUeXBlKCkiPmJhc2ljR2V0QmFzZV9EYXRhVHlwZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLk9iamVjdDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db21wb3NlZERhdGFJbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj5lR2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICBib29sZWFuJm5ic3A7cmVzb2x2ZSwKKyAgICAgYm9vbGVhbiZuYnNwO2NvcmVUeXBlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtib29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbXBvc2VkRGF0YUltcGwuaHRtbCNlSXNTZXQoaW50KSI+ZUlzU2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbXBvc2VkRGF0YUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtuZXdWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db21wb3NlZERhdGFJbXBsLmh0bWwjZVVuc2V0KGludCkiPmVVbnNldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29tcG9zZWREYXRhSW1wbC5odG1sI2dldEJhc2VfRGF0YVR5cGUoKSI+Z2V0QmFzZV9EYXRhVHlwZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db21wb3NlZERhdGFJbXBsLmh0bWwjc2V0QmFzZV9EYXRhVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5EYXRhVHlwZSkiPnNldEJhc2VfRGF0YVR5cGU8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5EYXRhVHlwZSZuYnNwO25ld0Jhc2VfRGF0YVR5cGUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVDbGFzcywgZUNvbnRhaW5lckZlYXR1cmVJRCwgZURlbGl2ZXIsIGVJbnRlcm5hbENvbnRhaW5lciwgZUludm9rZSwgZUlzUHJveHksIGVTZXRDbGFzcywgZVNldERlbGl2ZXIsIGVTZXRQcm94eVVSSTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVCYXNlU3RydWN0dXJhbEZlYXR1cmVJRCwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lckZlYXR1cmUsIGVCYXNpY1NldENvbnRhaW5lciwgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGFpbnMsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEaXJlY3RSZXNvdXJjZSwgZUR5bmFtaWNCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVEeW5hbWljR2V0LCBlRHluYW1pY0dldCwgZUR5bmFtaWNJbnZlcnNlQWRkLCBlRHluYW1pY0ludmVyc2VSZW1vdmUsIGVEeW5hbWljSW52b2tlLCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljVW5zZXQsIGVEeW5hbWljVW5zZXQsIGVHZXQsIGVHZXQsIGVHZXQsIGVJbnRlcm5hbFJlc291cmNlLCBlSW52ZXJzZUFkZCwgZUludmVyc2VBZGQsIGVJbnZlcnNlUmVtb3ZlLCBlSW52ZXJzZVJlbW92ZSwgZUludm9rZSwgZUlzU2V0LCBlT2JqZWN0Rm9yVVJJRnJhZ21lbnRTZWdtZW50LCBlT3BlbkdldCwgZU9wZW5Jc1NldCwgZU9wZW5TZXQsIGVPcGVuVW5zZXQsIGVQcm94eVVSSSwgZVJlc29sdmVQcm94eSwgZVJlc291cmNlLCBlU2V0LCBlU2V0UmVzb3VyY2UsIGVTZXRTdG9yZSwgZVNldHRpbmcsIGVTdG9yZSwgZVVuc2V0LCBlVVJJRnJhZ21lbnRTZWdtZW50LCBlVmlydHVhbEdldCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsSXNTZXQsIGVWaXJ0dWFsU2V0LCBlVmlydHVhbFVuc2V0LCB0b1N0cmluZzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQsIGVOb3RpZnk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB3YWl0LCB3YWl0LCB3YWl0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImdldEJhc2VfRGF0YVR5cGUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QmFzZV9EYXRhVHlwZTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlIDxCPmdldEJhc2VfRGF0YVR5cGU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcG9zZWREYXRhLmh0bWwjZ2V0QmFzZV9EYXRhVHlwZSgpIj5nZXRCYXNlX0RhdGFUeXBlPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNvbXBvc2VkRGF0YTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBiYXNlXyBkYXRhIHR5cGU8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcG9zZWREYXRhLmh0bWwjc2V0QmFzZV9EYXRhVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5EYXRhVHlwZSkiPjxDT0RFPkNvbXBvc2VkRGF0YS5zZXRCYXNlX0RhdGFUeXBlKERhdGFUeXBlKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENvbXBvc2VkRGF0YV9CYXNlX0RhdGFUeXBlKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldENvbXBvc2VkRGF0YV9CYXNlX0RhdGFUeXBlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iYmFzaWNHZXRCYXNlX0RhdGFUeXBlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2Jhc2ljR2V0QmFzZV9EYXRhVHlwZTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlIDxCPmJhc2ljR2V0QmFzZV9EYXRhVHlwZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBkYXRhIHR5cGU8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldEJhc2VfRGF0YVR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUpIj48IS0tIC0tPjwvQT48SDM+CitzZXRCYXNlX0RhdGFUeXBlPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRCYXNlX0RhdGFUeXBlPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5EYXRhVHlwZSZuYnNwO25ld0Jhc2VfRGF0YVR5cGUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbXBvc2VkRGF0YS5odG1sI3NldEJhc2VfRGF0YVR5cGUob3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUpIj5zZXRCYXNlX0RhdGFUeXBlPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNvbXBvc2VkRGF0YTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdCYXNlX0RhdGFUeXBlPC9DT0RFPiAtIHRoZSBuZXcgYmFzZV8gZGF0YSB0eXBlPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbXBvc2VkRGF0YS5odG1sI2dldEJhc2VfRGF0YVR5cGUoKSI+PENPREU+Q29tcG9zZWREYXRhLmdldEJhc2VfRGF0YVR5cGUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPjwhLS0gLS0+PC9BPjxIMz4KK2VHZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuT2JqZWN0IDxCPmVHZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbGVhbiZuYnNwO3Jlc29sdmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtjb3JlVHlwZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lR2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+ZUdldDwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDxERD48Q09ERT5yZXNvbHZlPC9DT0RFPiAtIHRoZSByZXNvbHZlPEREPjxDT0RFPmNvcmVUeXBlPC9DT0RFPiAtIHRoZSBjb3JlIHR5cGUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG9iamVjdDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+CitlU2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5lU2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtuZXdWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lU2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+ZVNldDwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDxERD48Q09ERT5uZXdWYWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlVW5zZXQoaW50KSI+PCEtLSAtLT48L0E+PEgzPgorZVVuc2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5lVW5zZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lVW5zZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5lVW5zZXQ8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVJc1NldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlSXNTZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBib29sZWFuIDxCPmVJc1NldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVJc1NldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmVJc1NldDwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZAorPERUPjxCPlJldHVybnM6PC9CPjxERD50cnVlLCBpZiBzdWNjZXNzZnVsPC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9Db21wb3NlZERhdGFJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db2xsZWN0aW9uSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ3ljYWJUS0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29tcG9zZWREYXRhSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkNvbXBvc2VkRGF0YUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFhNTU4MmYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwKQEAgLTAsMCArMSw2NTUgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK0N5Y2FiVEtJbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQ3ljYWJUS0ltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkN5Y2FiVEtJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0N5Y2FiVEtJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db21wb3NlZERhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9EYXRhRmxvd1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQ3ljYWJUS0ltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9GT05UPgorPEJSPgorQ2xhc3MgQ3ljYWJUS0ltcGw8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsCisgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsCisgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QbGF0Zm9ybUltcGw8L0E+CisgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTaW11bGF0b3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RpY1NpbXVsYXRvckltcGw8L0E+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5DeWNhYlRLSW1wbDwvQj4KKzwvUFJFPgorPERMPgorPERUPjxCPkFsbCBJbXBsZW1lbnRlZCBJbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkN5Y2FiVEs8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBsYXRmb3JtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTaW11bGF0b3I8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+Q3ljYWJUS0ltcGw8L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1NpbXVsYXRvckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU2ltdWxhdG9ySW1wbDwvQT48RFQ+aW1wbGVtZW50cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q3ljYWJUSzwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q3ljYWIgVEs8L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorIDxwPgorIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sI2lzVXNlUmVhbFRpbWUoKSI+PENPREU+PGVtPlVzZSBSZWFsIFRpbWU8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sI2dldFRpbWVTdGVwKCkiPjxDT0RFPjxlbT5UaW1lIFN0ZXA8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sI2dldFRpbWVGYWN0b3IoKSI+PENPREU+PGVtPlRpbWUgRmFjdG9yPC9lbT48L0NPREU+PC9BPjwvbGk+CisgPC91bD4KKyA8L3A+Cis8UD4KKworPFA+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PSBORVNURUQgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0ibmVzdGVkX2NsYXNzX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5OZXN0ZWQgQ2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRUFkYXB0ZXJMaXN0Jmx0O0UgZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0ICYgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciZndDssIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRU9ic2VydmFibGVBZGFwdGVyTGlzdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdC5FU3RvcmU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FTEFTVF9FT0JKRUNUX0ZMQUc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FT1BQT1NJVEVfRkVBVFVSRV9CQVNFPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLk9iamVjdDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgYm9vbGVhbiZuYnNwO3Jlc29sdmUsCisgICAgIGJvb2xlYW4mbmJzcDtjb3JlVHlwZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtib29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwjZUlzU2V0KGludCkiPmVJc1NldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj5lU2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7bmV3VmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sI2VVbnNldChpbnQpIj5lVW5zZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sI2dldFRpbWVGYWN0b3IoKSI+Z2V0VGltZUZhY3RvcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwjZ2V0VGltZVN0ZXAoKSI+Z2V0VGltZVN0ZXA8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Ym9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sI2lzVXNlUmVhbFRpbWUoKSI+aXNVc2VSZWFsVGltZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwjc2V0VGltZUZhY3RvcihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0VGltZUZhY3RvcjwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdUaW1lRmFjdG9yKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ3ljYWJUS0ltcGwuaHRtbCNzZXRUaW1lU3RlcChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0VGltZVN0ZXA8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3VGltZVN0ZXApPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sI3NldFVzZVJlYWxUaW1lKGJvb2xlYW4pIj5zZXRVc2VSZWFsVGltZTwvQT48L0I+KGJvb2xlYW4mbmJzcDtuZXdVc2VSZWFsVGltZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwjdG9TdHJpbmcoKSI+dG9TdHJpbmc8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBsYXRmb3JtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGxhdGZvcm1JbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9Ob2RlKCkiPmJhc2ljR2V0QmFzZV9Ob2RlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwjZ2V0QmFzZV9Ob2RlKCkiPmdldEJhc2VfTm9kZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sI3NldEJhc2VfTm9kZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Ob2RlKSI+c2V0QmFzZV9Ob2RlPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TeXN0ZW1JbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNiYXNpY0dldEJhc2VfQ2xhc3MoKSI+YmFzaWNHZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVDbGFzcywgZUNvbnRhaW5lckZlYXR1cmVJRCwgZURlbGl2ZXIsIGVJbnRlcm5hbENvbnRhaW5lciwgZUludm9rZSwgZUlzUHJveHksIGVTZXRDbGFzcywgZVNldERlbGl2ZXIsIGVTZXRQcm94eVVSSTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVCYXNlU3RydWN0dXJhbEZlYXR1cmVJRCwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lckZlYXR1cmUsIGVCYXNpY1NldENvbnRhaW5lciwgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGFpbnMsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEaXJlY3RSZXNvdXJjZSwgZUR5bmFtaWNCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVEeW5hbWljR2V0LCBlRHluYW1pY0dldCwgZUR5bmFtaWNJbnZlcnNlQWRkLCBlRHluYW1pY0ludmVyc2VSZW1vdmUsIGVEeW5hbWljSW52b2tlLCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljVW5zZXQsIGVEeW5hbWljVW5zZXQsIGVHZXQsIGVHZXQsIGVHZXQsIGVJbnRlcm5hbFJlc291cmNlLCBlSW52ZXJzZUFkZCwgZUludmVyc2VBZGQsIGVJbnZlcnNlUmVtb3ZlLCBlSW52ZXJzZVJlbW92ZSwgZUludm9rZSwgZUlzU2V0LCBlT2JqZWN0Rm9yVVJJRnJhZ21lbnRTZWdtZW50LCBlT3BlbkdldCwgZU9wZW5Jc1NldCwgZU9wZW5TZXQsIGVPcGVuVW5zZXQsIGVQcm94eVVSSSwgZVJlc29sdmVQcm94eSwgZVJlc291cmNlLCBlU2V0LCBlU2V0UmVzb3VyY2UsIGVTZXRTdG9yZSwgZVNldHRpbmcsIGVTdG9yZSwgZVVuc2V0LCBlVVJJRnJhZ21lbnRTZWdtZW50LCBlVmlydHVhbEdldCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsSXNTZXQsIGVWaXJ0dWFsU2V0LCBlVmlydHVhbFVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGxhdGZvcm0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGF0Zm9ybTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCNnZXRCYXNlX05vZGUoKSI+Z2V0QmFzZV9Ob2RlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwjc2V0QmFzZV9Ob2RlKG9yZy5lY2xpcHNlLnVtbDIudW1sLk5vZGUpIj5zZXRCYXNlX05vZGU8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iaXNVc2VSZWFsVGltZSgpIj48IS0tIC0tPjwvQT48SDM+Citpc1VzZVJlYWxUaW1lPC9IMz4KKzxQUkU+CitwdWJsaWMgYm9vbGVhbiA8Qj5pc1VzZVJlYWxUaW1lPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sI2lzVXNlUmVhbFRpbWUoKSI+aXNVc2VSZWFsVGltZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q3ljYWJUSzwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5Vc2UgUmVhbCBUaW1lPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sI3NldFVzZVJlYWxUaW1lKGJvb2xlYW4pIj48Q09ERT5DeWNhYlRLLnNldFVzZVJlYWxUaW1lKGJvb2xlYW4pPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q3ljYWJUS19Vc2VSZWFsVGltZSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRDeWNhYlRLX1VzZVJlYWxUaW1lKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0VXNlUmVhbFRpbWUoYm9vbGVhbikiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFVzZVJlYWxUaW1lPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRVc2VSZWFsVGltZTwvQj4oYm9vbGVhbiZuYnNwO25ld1VzZVJlYWxUaW1lKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCNzZXRVc2VSZWFsVGltZShib29sZWFuKSI+c2V0VXNlUmVhbFRpbWU8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkN5Y2FiVEs8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3VXNlUmVhbFRpbWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5Vc2UgUmVhbCBUaW1lPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sI2lzVXNlUmVhbFRpbWUoKSI+PENPREU+Q3ljYWJUSy5pc1VzZVJlYWxUaW1lKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0VGltZVN0ZXAoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0VGltZVN0ZXA8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldFRpbWVTdGVwPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sI2dldFRpbWVTdGVwKCkiPmdldFRpbWVTdGVwPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DeWNhYlRLPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPlRpbWUgU3RlcDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCNzZXRUaW1lU3RlcChqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+Q3ljYWJUSy5zZXRUaW1lU3RlcChTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q3ljYWJUS19UaW1lU3RlcCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRDeWNhYlRLX1RpbWVTdGVwKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0VGltZVN0ZXAoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFRpbWVTdGVwPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRUaW1lU3RlcDwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld1RpbWVTdGVwKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCNzZXRUaW1lU3RlcChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0VGltZVN0ZXA8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkN5Y2FiVEs8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3VGltZVN0ZXA8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5UaW1lIFN0ZXA8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwjZ2V0VGltZVN0ZXAoKSI+PENPREU+Q3ljYWJUSy5nZXRUaW1lU3RlcCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFRpbWVGYWN0b3IoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0VGltZUZhY3RvcjwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0VGltZUZhY3RvcjwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCNnZXRUaW1lRmFjdG9yKCkiPmdldFRpbWVGYWN0b3I8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkN5Y2FiVEs8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+VGltZSBGYWN0b3I8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwjc2V0VGltZUZhY3RvcihqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+Q3ljYWJUSy5zZXRUaW1lRmFjdG9yKFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDeWNhYlRLX1RpbWVGYWN0b3IoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0Q3ljYWJUS19UaW1lRmFjdG9yKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0VGltZUZhY3RvcihqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0VGltZUZhY3RvcjwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0VGltZUZhY3RvcjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld1RpbWVGYWN0b3IpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sI3NldFRpbWVGYWN0b3IoamF2YS5sYW5nLlN0cmluZykiPnNldFRpbWVGYWN0b3I8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkN5Y2FiVEs8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3VGltZUZhY3RvcjwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlRpbWUgRmFjdG9yPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sI2dldFRpbWVGYWN0b3IoKSI+PENPREU+Q3ljYWJUSy5nZXRUaW1lRmFjdG9yKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj48IS0tIC0tPjwvQT48SDM+CitlR2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLk9iamVjdCA8Qj5lR2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtyZXNvbHZlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sZWFuJm5ic3A7Y29yZVR5cGUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lR2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj5lR2V0PC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGxhdGZvcm1JbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDxERD48Q09ERT5yZXNvbHZlPC9DT0RFPiAtIHRoZSByZXNvbHZlPEREPjxDT0RFPmNvcmVUeXBlPC9DT0RFPiAtIHRoZSBjb3JlIHR5cGUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG9iamVjdDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+CitlU2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5lU2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtuZXdWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVTZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QbGF0Zm9ybUltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkPEREPjxDT0RFPm5ld1ZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWU8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVVbnNldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlVW5zZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmVVbnNldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVVuc2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwjZVVuc2V0KGludCkiPmVVbnNldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBsYXRmb3JtSW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVJc1NldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlSXNTZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBib29sZWFuIDxCPmVJc1NldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZUlzU2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwjZUlzU2V0KGludCkiPmVJc1NldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBsYXRmb3JtSW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dHJ1ZSwgaWYgc3VjY2Vzc2Z1bDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0idG9TdHJpbmcoKSI+PCEtLSAtLT48L0E+PEgzPgordG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPnRvU3RyaW5nPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT50b1N0cmluZzwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0N5Y2FiVEtJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db21wb3NlZERhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9EYXRhRmxvd1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQ3ljYWJUS0ltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9EYXRhRmxvd1BvcnRJbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hYzZjOTc5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9EYXRhRmxvd1BvcnRJbXBsLmh0bWwKQEAgLTAsMCArMSw2MjEgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK0RhdGFGbG93UG9ydEltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5EYXRhRmxvd1BvcnRJbXBsIGNsYXNzIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJEYXRhRmxvd1BvcnRJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0RhdGFGbG93UG9ydEltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJEYXRhRmxvd1BvcnRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIERhdGFGbG93UG9ydEltcGw8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsCisgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsCisgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBvcnRJbXBsPC9BPgorICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkRhdGFGbG93UG9ydEltcGw8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93UG9ydDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Qb3J0PC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGNsYXNzIDxCPkRhdGFGbG93UG9ydEltcGw8L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Qb3J0SW1wbDwvQT48RFQ+aW1wbGVtZW50cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd1BvcnQ8L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkRhdGEgRmxvdyBQb3J0PC9iPjwvZW0+Jy4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyA8cD4KKyBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyA8dWw+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRGF0YUZsb3dQb3J0SW1wbC5odG1sI2dldERpcmVjdGlvbigpIj48Q09ERT48ZW0+RGlyZWN0aW9uPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRGF0YUZsb3dQb3J0SW1wbC5odG1sI2dldEJ1ZmZlclNpemUoKSI+PENPREU+PGVtPkJ1ZmZlciBTaXplPC9lbT48L0NPREU+PC9BPjwvbGk+CisgPC91bD4KKyA8L3A+Cis8UD4KKworPFA+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PSBORVNURUQgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0ibmVzdGVkX2NsYXNzX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5OZXN0ZWQgQ2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRUFkYXB0ZXJMaXN0Jmx0O0UgZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0ICYgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciZndDssIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRU9ic2VydmFibGVBZGFwdGVyTGlzdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdC5FU3RvcmU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FTEFTVF9FT0JKRUNUX0ZMQUc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FT1BQT1NJVEVfRkVBVFVSRV9CQVNFPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLk9iamVjdDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9EYXRhRmxvd1BvcnRJbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj5lR2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICBib29sZWFuJm5ic3A7cmVzb2x2ZSwKKyAgICAgYm9vbGVhbiZuYnNwO2NvcmVUeXBlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtib29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCNlSXNTZXQoaW50KSI+ZUlzU2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtuZXdWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9EYXRhRmxvd1BvcnRJbXBsLmh0bWwjZVVuc2V0KGludCkiPmVVbnNldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCNnZXRCdWZmZXJTaXplKCkiPmdldEJ1ZmZlclNpemU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCNnZXREaXJlY3Rpb24oKSI+Z2V0RGlyZWN0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS51bWwyLnVtbC5JbWFnZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9EYXRhRmxvd1BvcnRJbXBsLmh0bWwjZ2V0SWNvbigpIj5nZXRJY29uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7SW1hZ2VzIHJlZ2lzdGVyZWQgaW4gUHJvZmlsZSBhcmUgOgorIAorIDAgLSBGbG93UG9ydCBJTgorIDEgLSBGbG93UG9ydCBPVVQKKyAKKyA8ITwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCNzZXRCdWZmZXJTaXplKGludCkiPnNldEJ1ZmZlclNpemU8L0E+PC9CPihpbnQmbmJzcDtuZXdCdWZmZXJTaXplKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCNzZXREaXJlY3Rpb24ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRhdGFGbG93RGlyZWN0aW9uS2luZCkiPnNldERpcmVjdGlvbjwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0E+Jm5ic3A7bmV3RGlyZWN0aW9uKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCN0b1N0cmluZygpIj50b1N0cmluZzwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBvcnRJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBvcnRJbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwjYmFzaWNHZXRCYXNlX1BvcnQoKSI+YmFzaWNHZXRCYXNlX1BvcnQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sI2dldEJhc2VfUG9ydCgpIj5nZXRCYXNlX1BvcnQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sI2dldFN5bmNocm9uaXphdGlvblBvbGljeSgpIj5nZXRTeW5jaHJvbml6YXRpb25Qb2xpY3k8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sI3NldEJhc2VfUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+c2V0QmFzZV9Qb3J0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCNzZXRTeW5jaHJvbml6YXRpb25Qb2xpY3kob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5bmNocm9uaXphdGlvbktpbmQpIj5zZXRTeW5jaHJvbml6YXRpb25Qb2xpY3k8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlQ2xhc3MsIGVDb250YWluZXJGZWF0dXJlSUQsIGVEZWxpdmVyLCBlSW50ZXJuYWxDb250YWluZXIsIGVJbnZva2UsIGVJc1Byb3h5LCBlU2V0Q2xhc3MsIGVTZXREZWxpdmVyLCBlU2V0UHJveHlVUkk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQmFzZVN0cnVjdHVyYWxGZWF0dXJlSUQsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXJGZWF0dXJlLCBlQmFzaWNTZXRDb250YWluZXIsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRhaW5zLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGlyZWN0UmVzb3VyY2UsIGVEeW5hbWljQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlRHluYW1pY0dldCwgZUR5bmFtaWNHZXQsIGVEeW5hbWljSW52ZXJzZUFkZCwgZUR5bmFtaWNJbnZlcnNlUmVtb3ZlLCBlRHluYW1pY0ludm9rZSwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1Vuc2V0LCBlRHluYW1pY1Vuc2V0LCBlR2V0LCBlR2V0LCBlR2V0LCBlSW50ZXJuYWxSZXNvdXJjZSwgZUludmVyc2VBZGQsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZVJlbW92ZSwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZU9iamVjdEZvclVSSUZyYWdtZW50U2VnbWVudCwgZU9wZW5HZXQsIGVPcGVuSXNTZXQsIGVPcGVuU2V0LCBlT3BlblVuc2V0LCBlUHJveHlVUkksIGVSZXNvbHZlUHJveHksIGVSZXNvdXJjZSwgZVNldCwgZVNldFJlc291cmNlLCBlU2V0U3RvcmUsIGVTZXR0aW5nLCBlU3RvcmUsIGVVbnNldCwgZVVSSUZyYWdtZW50U2VnbWVudCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbElzU2V0LCBlVmlydHVhbFNldCwgZVZpcnR1YWxVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQsIGVOb3RpZnk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB3YWl0LCB3YWl0LCB3YWl0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBvcnQiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBvcnQ8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCNnZXRCYXNlX1BvcnQoKSI+Z2V0QmFzZV9Qb3J0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCNnZXRTeW5jaHJvbml6YXRpb25Qb2xpY3koKSI+Z2V0U3luY2hyb25pemF0aW9uUG9saWN5PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCNzZXRCYXNlX1BvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPnNldEJhc2VfUG9ydDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwjc2V0U3luY2hyb25pemF0aW9uUG9saWN5KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeW5jaHJvbml6YXRpb25LaW5kKSI+c2V0U3luY2hyb25pemF0aW9uUG9saWN5PC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJnZXREaXJlY3Rpb24oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0RGlyZWN0aW9uPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93RGlyZWN0aW9uS2luZDwvQT4gPEI+Z2V0RGlyZWN0aW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sI2dldERpcmVjdGlvbigpIj5nZXREaXJlY3Rpb248L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dQb3J0PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGRpcmVjdGlvbjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwjc2V0RGlyZWN0aW9uKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EYXRhRmxvd0RpcmVjdGlvbktpbmQpIj48Q09ERT5EYXRhRmxvd1BvcnQuc2V0RGlyZWN0aW9uKERhdGFGbG93RGlyZWN0aW9uS2luZCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXREYXRhRmxvd1BvcnRfRGlyZWN0aW9uKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldERhdGFGbG93UG9ydF9EaXJlY3Rpb24oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXREaXJlY3Rpb24ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRhdGFGbG93RGlyZWN0aW9uS2luZCkiPjwhLS0gLS0+PC9BPjxIMz4KK3NldERpcmVjdGlvbjwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0RGlyZWN0aW9uPC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPiZuYnNwO25ld0RpcmVjdGlvbik8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwjc2V0RGlyZWN0aW9uKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EYXRhRmxvd0RpcmVjdGlvbktpbmQpIj5zZXREaXJlY3Rpb248L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dQb3J0PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld0RpcmVjdGlvbjwvQ09ERT4gLSB0aGUgbmV3IGRpcmVjdGlvbjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwjZ2V0RGlyZWN0aW9uKCkiPjxDT0RFPkRhdGFGbG93UG9ydC5nZXREaXJlY3Rpb24oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRCdWZmZXJTaXplKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEJ1ZmZlclNpemU8L0gzPgorPFBSRT4KK3B1YmxpYyBpbnQgPEI+Z2V0QnVmZmVyU2l6ZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCNnZXRCdWZmZXJTaXplKCkiPmdldEJ1ZmZlclNpemU8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dQb3J0PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGJ1ZmZlciBzaXplPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sI3NldEJ1ZmZlclNpemUoaW50KSI+PENPREU+RGF0YUZsb3dQb3J0LnNldEJ1ZmZlclNpemUoaW50KTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldERhdGFGbG93UG9ydF9CdWZmZXJTaXplKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldERhdGFGbG93UG9ydF9CdWZmZXJTaXplKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0QnVmZmVyU2l6ZShpbnQpIj48IS0tIC0tPjwvQT48SDM+CitzZXRCdWZmZXJTaXplPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRCdWZmZXJTaXplPC9CPihpbnQmbmJzcDtuZXdCdWZmZXJTaXplKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCNzZXRCdWZmZXJTaXplKGludCkiPnNldEJ1ZmZlclNpemU8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dQb3J0PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld0J1ZmZlclNpemU8L0NPREU+IC0gdGhlIG5ldyBidWZmZXIgc2l6ZTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCNnZXRCdWZmZXJTaXplKCkiPjxDT0RFPkRhdGFGbG93UG9ydC5nZXRCdWZmZXJTaXplKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj48IS0tIC0tPjwvQT48SDM+CitlR2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLk9iamVjdCA8Qj5lR2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtyZXNvbHZlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sZWFuJm5ic3A7Y29yZVR5cGUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZUdldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj5lR2V0PC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Qb3J0SW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8REQ+PENPREU+cmVzb2x2ZTwvQ09ERT4gLSB0aGUgcmVzb2x2ZTxERD48Q09ERT5jb3JlVHlwZTwvQ09ERT4gLSB0aGUgY29yZSB0eXBlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBvYmplY3Q8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorZVNldDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+ZVNldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7bmV3VmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVNldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj5lU2V0PC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Qb3J0SW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8REQ+PENPREU+bmV3VmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZVVuc2V0KGludCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VVbnNldDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+ZVVuc2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVVuc2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Qb3J0SW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVJc1NldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlSXNTZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBib29sZWFuIDxCPmVJc1NldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVJc1NldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwjZUlzU2V0KGludCkiPmVJc1NldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UG9ydEltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRydWUsIGlmIHN1Y2Nlc3NmdWw8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InRvU3RyaW5nKCkiPjwhLS0gLS0+PC9BPjxIMz4KK3RvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj50b1N0cmluZzwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwjdG9TdHJpbmcoKSI+dG9TdHJpbmc8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBvcnRJbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0SWNvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRJY29uPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UudW1sMi51bWwuSW1hZ2UgPEI+Z2V0SWNvbjwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgSW1hZ2VzIHJlZ2lzdGVyZWQgaW4gUHJvZmlsZSBhcmUgOgorIAorIDAgLSBGbG93UG9ydCBJTgorIDEgLSBGbG93UG9ydCBPVVQKKyAKKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGljb248L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0RhdGFGbG93UG9ydEltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJEYXRhRmxvd1BvcnRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGI4MGM1ZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sCkBAIC0wLDAgKzEsODE1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitFbmdpbmVTeXN0ZW1JbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuRW5naW5lU3lzdGVtSW1wbCBjbGFzcyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iRW5naW5lU3lzdGVtSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9EYXRhRmxvd1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbnZpcm9ubWVudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkVuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9GT05UPgorPEJSPgorQ2xhc3MgRW5naW5lU3lzdGVtSW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RpY1N5c3RlbUltcGw8L0E+CisgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FjdHVhdG9yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkFjdHVhdG9yU3lzdGVtSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkVuZ2luZVN5c3RlbUltcGw8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWN0dWF0b3JTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5FbmdpbmVTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5FbmdpbmVTeXN0ZW1JbXBsPC9CPjxEVD5leHRlbmRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FjdHVhdG9yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFjdHVhdG9yU3lzdGVtSW1wbDwvQT48RFQ+aW1wbGVtZW50cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5FbmdpbmVTeXN0ZW08L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkVuZ2luZSBTeXN0ZW08L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorIDxwPgorIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwjZ2V0VmVoaWNsZVRyYWN0aW9uKCkiPjxDT0RFPjxlbT5WZWhpY2xlIFRyYWN0aW9uPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sI2dldE1heEVuZ2luZUZvcmNlKCkiPjxDT0RFPjxlbT5NYXggRW5naW5lIEZvcmNlPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sI2dldE1heEJyZWFraW5nRm9yY2UoKSI+PENPREU+PGVtPk1heCBCcmVha2luZyBGb3JjZTwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCNnZXRNYXhBbGxvd2VkU3RlZXJpbmcoKSI+PENPREU+PGVtPk1heCBBbGxvd2VkIFN0ZWVyaW5nPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sI2dldE1heEFsbG93ZWRWZWxvY2l0eSgpIj48Q09ERT48ZW0+TWF4IEFsbG93ZWQgVmVsb2NpdHk8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwjZ2V0R2Vhcl9yYXRpb24oKSI+PENPREU+PGVtPkdlYXIgcmF0aW9uPC9lbT48L0NPREU+PC9BPjwvbGk+CisgPC91bD4KKyA8L3A+Cis8UD4KKworPFA+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PSBORVNURUQgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0ibmVzdGVkX2NsYXNzX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5OZXN0ZWQgQ2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRUFkYXB0ZXJMaXN0Jmx0O0UgZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0ICYgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciZndDssIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRU9ic2VydmFibGVBZGFwdGVyTGlzdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdC5FU3RvcmU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FTEFTVF9FT0JKRUNUX0ZMQUc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FT1BQT1NJVEVfRkVBVFVSRV9CQVNFPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLk9iamVjdDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj5lR2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICBib29sZWFuJm5ic3A7cmVzb2x2ZSwKKyAgICAgYm9vbGVhbiZuYnNwO2NvcmVUeXBlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtib29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCNlSXNTZXQoaW50KSI+ZUlzU2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtuZXdWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwjZVVuc2V0KGludCkiPmVVbnNldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwjZ2V0R2Vhcl9yYXRpb24oKSI+Z2V0R2Vhcl9yYXRpb248L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwjZ2V0TWF4QWxsb3dlZFN0ZWVyaW5nKCkiPmdldE1heEFsbG93ZWRTdGVlcmluZzwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwjZ2V0TWF4QWxsb3dlZFZlbG9jaXR5KCkiPmdldE1heEFsbG93ZWRWZWxvY2l0eTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwjZ2V0TWF4QnJlYWtpbmdGb3JjZSgpIj5nZXRNYXhCcmVha2luZ0ZvcmNlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCNnZXRNYXhFbmdpbmVGb3JjZSgpIj5nZXRNYXhFbmdpbmVGb3JjZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwjZ2V0VmVoaWNsZVRyYWN0aW9uKCkiPmdldFZlaGljbGVUcmFjdGlvbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwjc2V0R2Vhcl9yYXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldEdlYXJfcmF0aW9uPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld0dlYXJfcmF0aW9uKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sI3NldE1heEFsbG93ZWRTdGVlcmluZyhqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TWF4QWxsb3dlZFN0ZWVyaW5nPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld01heEFsbG93ZWRTdGVlcmluZyk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwjc2V0TWF4QWxsb3dlZFZlbG9jaXR5KGphdmEubGFuZy5TdHJpbmcpIj5zZXRNYXhBbGxvd2VkVmVsb2NpdHk8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3TWF4QWxsb3dlZFZlbG9jaXR5KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCNzZXRNYXhCcmVha2luZ0ZvcmNlKGphdmEubGFuZy5TdHJpbmcpIj5zZXRNYXhCcmVha2luZ0ZvcmNlPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld01heEJyZWFraW5nRm9yY2UpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sI3NldE1heEVuZ2luZUZvcmNlKGphdmEubGFuZy5TdHJpbmcpIj5zZXRNYXhFbmdpbmVGb3JjZTwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdNYXhFbmdpbmVGb3JjZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwjc2V0VmVoaWNsZVRyYWN0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRWZWhpY2xlVHJhY3Rpb248L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3VmVoaWNsZVRyYWN0aW9uKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCN0b1N0cmluZygpIj50b1N0cmluZzwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90aWNTeXN0ZW1JbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90aWNTeXN0ZW1JbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjZ2V0TG9jYWxPcmllbnRhdGlvbigpIj5nZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCNnZXRMb2NhbFBvc2l0aW9uKCkiPmdldExvY2FsUG9zaXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI3NldExvY2FsT3JpZW50YXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI3NldExvY2FsUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsUG9zaXRpb248L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9DbGFzcygpIj5iYXNpY0dldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZUludGVybmFsQ29udGFpbmVyLCBlSW52b2tlLCBlSXNQcm94eSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURpcmVjdFJlc291cmNlLCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVByb3h5VVJJLCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVVUklGcmFnbWVudFNlZ21lbnQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkLCBlTm90aWZ5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVxdWFscywgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxPcmllbnRhdGlvbigpIj5nZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbFBvc2l0aW9uKCkiPmdldExvY2FsUG9zaXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsT3JpZW50YXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsUG9zaXRpb248L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0VmVoaWNsZVRyYWN0aW9uKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFZlaGljbGVUcmFjdGlvbjwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0VmVoaWNsZVRyYWN0aW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI2dldFZlaGljbGVUcmFjdGlvbigpIj5nZXRWZWhpY2xlVHJhY3Rpb248L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW5naW5lU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZlaGljbGUgdHJhY3Rpb248RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjc2V0VmVoaWNsZVRyYWN0aW9uKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5FbmdpbmVTeXN0ZW0uc2V0VmVoaWNsZVRyYWN0aW9uKFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRFbmdpbmVTeXN0ZW1fVmVoaWNsZVRyYWN0aW9uKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEVuZ2luZVN5c3RlbV9WZWhpY2xlVHJhY3Rpb24oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRWZWhpY2xlVHJhY3Rpb24oamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFZlaGljbGVUcmFjdGlvbjwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0VmVoaWNsZVRyYWN0aW9uPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3VmVoaWNsZVRyYWN0aW9uKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNzZXRWZWhpY2xlVHJhY3Rpb24oamF2YS5sYW5nLlN0cmluZykiPnNldFZlaGljbGVUcmFjdGlvbjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5FbmdpbmVTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3VmVoaWNsZVRyYWN0aW9uPC9DT0RFPiAtIHRoZSBuZXcgdmVoaWNsZSB0cmFjdGlvbjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRWZWhpY2xlVHJhY3Rpb24oKSI+PENPREU+RW5naW5lU3lzdGVtLmdldFZlaGljbGVUcmFjdGlvbigpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldE1heEVuZ2luZUZvcmNlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldE1heEVuZ2luZUZvcmNlPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRNYXhFbmdpbmVGb3JjZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhFbmdpbmVGb3JjZSgpIj5nZXRNYXhFbmdpbmVGb3JjZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5FbmdpbmVTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWF4IGVuZ2luZSBmb3JjZTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNzZXRNYXhFbmdpbmVGb3JjZShqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+RW5naW5lU3lzdGVtLnNldE1heEVuZ2luZUZvcmNlKFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRFbmdpbmVTeXN0ZW1fTWF4RW5naW5lRm9yY2UoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0RW5naW5lU3lzdGVtX01heEVuZ2luZUZvcmNlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0TWF4RW5naW5lRm9yY2UoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldE1heEVuZ2luZUZvcmNlPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRNYXhFbmdpbmVGb3JjZTwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld01heEVuZ2luZUZvcmNlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNzZXRNYXhFbmdpbmVGb3JjZShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TWF4RW5naW5lRm9yY2U8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW5naW5lU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld01heEVuZ2luZUZvcmNlPC9DT0RFPiAtIHRoZSBuZXcgbWF4IGVuZ2luZSBmb3JjZTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhFbmdpbmVGb3JjZSgpIj48Q09ERT5FbmdpbmVTeXN0ZW0uZ2V0TWF4RW5naW5lRm9yY2UoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRNYXhCcmVha2luZ0ZvcmNlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldE1heEJyZWFraW5nRm9yY2U8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldE1heEJyZWFraW5nRm9yY2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0TWF4QnJlYWtpbmdGb3JjZSgpIj5nZXRNYXhCcmVha2luZ0ZvcmNlPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVuZ2luZVN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtYXggYnJlYWtpbmcgZm9yY2U8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjc2V0TWF4QnJlYWtpbmdGb3JjZShqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+RW5naW5lU3lzdGVtLnNldE1heEJyZWFraW5nRm9yY2UoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEVuZ2luZVN5c3RlbV9NYXhCcmVha2luZ0ZvcmNlKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEVuZ2luZVN5c3RlbV9NYXhCcmVha2luZ0ZvcmNlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0TWF4QnJlYWtpbmdGb3JjZShqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0TWF4QnJlYWtpbmdGb3JjZTwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0TWF4QnJlYWtpbmdGb3JjZTwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld01heEJyZWFraW5nRm9yY2UpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI3NldE1heEJyZWFraW5nRm9yY2UoamF2YS5sYW5nLlN0cmluZykiPnNldE1heEJyZWFraW5nRm9yY2U8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW5naW5lU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld01heEJyZWFraW5nRm9yY2U8L0NPREU+IC0gdGhlIG5ldyBtYXggYnJlYWtpbmcgZm9yY2U8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0TWF4QnJlYWtpbmdGb3JjZSgpIj48Q09ERT5FbmdpbmVTeXN0ZW0uZ2V0TWF4QnJlYWtpbmdGb3JjZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldE1heEFsbG93ZWRTdGVlcmluZygpIj48IS0tIC0tPjwvQT48SDM+CitnZXRNYXhBbGxvd2VkU3RlZXJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldE1heEFsbG93ZWRTdGVlcmluZzwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhBbGxvd2VkU3RlZXJpbmcoKSI+Z2V0TWF4QWxsb3dlZFN0ZWVyaW5nPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVuZ2luZVN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtYXggYWxsb3dlZCBzdGVlcmluZzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNzZXRNYXhBbGxvd2VkU3RlZXJpbmcoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPkVuZ2luZVN5c3RlbS5zZXRNYXhBbGxvd2VkU3RlZXJpbmcoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEVuZ2luZVN5c3RlbV9NYXhBbGxvd2VkU3RlZXJpbmcoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0RW5naW5lU3lzdGVtX01heEFsbG93ZWRTdGVlcmluZygpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldE1heEFsbG93ZWRTdGVlcmluZyhqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0TWF4QWxsb3dlZFN0ZWVyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRNYXhBbGxvd2VkU3RlZXJpbmc8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdNYXhBbGxvd2VkU3RlZXJpbmcpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI3NldE1heEFsbG93ZWRTdGVlcmluZyhqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TWF4QWxsb3dlZFN0ZWVyaW5nPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVuZ2luZVN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdNYXhBbGxvd2VkU3RlZXJpbmc8L0NPREU+IC0gdGhlIG5ldyBtYXggYWxsb3dlZCBzdGVlcmluZzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhBbGxvd2VkU3RlZXJpbmcoKSI+PENPREU+RW5naW5lU3lzdGVtLmdldE1heEFsbG93ZWRTdGVlcmluZygpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldE1heEFsbG93ZWRWZWxvY2l0eSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRNYXhBbGxvd2VkVmVsb2NpdHk8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldE1heEFsbG93ZWRWZWxvY2l0eTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhBbGxvd2VkVmVsb2NpdHkoKSI+Z2V0TWF4QWxsb3dlZFZlbG9jaXR5PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVuZ2luZVN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtYXggYWxsb3dlZCB2ZWxvY2l0eTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNzZXRNYXhBbGxvd2VkVmVsb2NpdHkoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPkVuZ2luZVN5c3RlbS5zZXRNYXhBbGxvd2VkVmVsb2NpdHkoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEVuZ2luZVN5c3RlbV9NYXhBbGxvd2VkVmVsb2NpdHkoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0RW5naW5lU3lzdGVtX01heEFsbG93ZWRWZWxvY2l0eSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldE1heEFsbG93ZWRWZWxvY2l0eShqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0TWF4QWxsb3dlZFZlbG9jaXR5PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRNYXhBbGxvd2VkVmVsb2NpdHk8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdNYXhBbGxvd2VkVmVsb2NpdHkpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI3NldE1heEFsbG93ZWRWZWxvY2l0eShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TWF4QWxsb3dlZFZlbG9jaXR5PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVuZ2luZVN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdNYXhBbGxvd2VkVmVsb2NpdHk8L0NPREU+IC0gdGhlIG5ldyBtYXggYWxsb3dlZCB2ZWxvY2l0eTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCNnZXRNYXhBbGxvd2VkVmVsb2NpdHkoKSI+PENPREU+RW5naW5lU3lzdGVtLmdldE1heEFsbG93ZWRWZWxvY2l0eSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEdlYXJfcmF0aW9uKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEdlYXJfcmF0aW9uPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRHZWFyX3JhdGlvbjwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI2dldEdlYXJfcmF0aW9uKCkiPmdldEdlYXJfcmF0aW9uPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVuZ2luZVN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5HZWFyIHJhdGlvbjwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI3NldEdlYXJfcmF0aW9uKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5FbmdpbmVTeXN0ZW0uc2V0R2Vhcl9yYXRpb24oU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEVuZ2luZVN5c3RlbV9HZWFyX3JhdGlvbigpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRFbmdpbmVTeXN0ZW1fR2Vhcl9yYXRpb24oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRHZWFyX3JhdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0R2Vhcl9yYXRpb248L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldEdlYXJfcmF0aW9uPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3R2Vhcl9yYXRpb24pPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjc2V0R2Vhcl9yYXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldEdlYXJfcmF0aW9uPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVuZ2luZVN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdHZWFyX3JhdGlvbjwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkdlYXIgcmF0aW9uPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0R2Vhcl9yYXRpb24oKSI+PENPREU+RW5naW5lU3lzdGVtLmdldEdlYXJfcmF0aW9uKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj48IS0tIC0tPjwvQT48SDM+CitlR2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLk9iamVjdCA8Qj5lR2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtyZXNvbHZlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sZWFuJm5ic3A7Y29yZVR5cGUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZUdldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj5lR2V0PC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU3lzdGVtSW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8REQ+PENPREU+cmVzb2x2ZTwvQ09ERT4gLSB0aGUgcmVzb2x2ZTxERD48Q09ERT5jb3JlVHlwZTwvQ09ERT4gLSB0aGUgY29yZSB0eXBlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBvYmplY3Q8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorZVNldDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+ZVNldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7bmV3VmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVNldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj5lU2V0PC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU3lzdGVtSW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8REQ+PENPREU+bmV3VmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZVVuc2V0KGludCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VVbnNldDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+ZVVuc2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVVuc2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU3lzdGVtSW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVJc1NldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlSXNTZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBib29sZWFuIDxCPmVJc1NldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVJc1NldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjZUlzU2V0KGludCkiPmVJc1NldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY1N5c3RlbUltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRydWUsIGlmIHN1Y2Nlc3NmdWw8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InRvU3RyaW5nKCkiPjwhLS0gLS0+PC9BPjxIMz4KK3RvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj50b1N0cmluZzwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjdG9TdHJpbmcoKSI+dG9TdHJpbmc8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90aWNTeXN0ZW1JbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvRW5naW5lU3lzdGVtSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRGF0YUZsb3dQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW52aXJvbm1lbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJFbmdpbmVTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW52aXJvbm1lbnRJbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Vudmlyb25tZW50SW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJjMTk4NTQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Vudmlyb25tZW50SW1wbC5odG1sCkBAIC0wLDAgKzEsMzMxIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitFbnZpcm9ubWVudEltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5FbnZpcm9ubWVudEltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkVudmlyb25tZW50SW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9FbnZpcm9ubWVudEltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Zsb29ySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbnZpcm9ubWVudEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJFbnZpcm9ubWVudEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0ZPTlQ+Cis8QlI+CitDbGFzcyBFbnZpcm9ubWVudEltcGw8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsCisgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsCisgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5FbnZpcm9ubWVudEltcGw8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW52aXJvbm1lbnQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+RW52aXJvbm1lbnRJbXBsPC9CPjxEVD5leHRlbmRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TeXN0ZW1JbXBsPC9BPjxEVD5pbXBsZW1lbnRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW52aXJvbm1lbnQ8L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkVudmlyb25tZW50PC9iPjwvZW0+Jy4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyA8cD4KKyA8L3A+Cis8UD4KKworPFA+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PSBORVNURUQgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0ibmVzdGVkX2NsYXNzX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5OZXN0ZWQgQ2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRUFkYXB0ZXJMaXN0Jmx0O0UgZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0ICYgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciZndDssIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRU9ic2VydmFibGVBZGFwdGVyTGlzdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdC5FU3RvcmU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FTEFTVF9FT0JKRUNUX0ZMQUc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FT1BQT1NJVEVfRkVBVFVSRV9CQVNFPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TeXN0ZW1JbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNiYXNpY0dldEJhc2VfQ2xhc3MoKSI+YmFzaWNHZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNlSXNTZXQoaW50KSI+ZUlzU2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+ZVNldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVDbGFzcywgZUNvbnRhaW5lckZlYXR1cmVJRCwgZURlbGl2ZXIsIGVJbnRlcm5hbENvbnRhaW5lciwgZUludm9rZSwgZUlzUHJveHksIGVTZXRDbGFzcywgZVNldERlbGl2ZXIsIGVTZXRQcm94eVVSSTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVCYXNlU3RydWN0dXJhbEZlYXR1cmVJRCwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lckZlYXR1cmUsIGVCYXNpY1NldENvbnRhaW5lciwgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGFpbnMsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEaXJlY3RSZXNvdXJjZSwgZUR5bmFtaWNCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVEeW5hbWljR2V0LCBlRHluYW1pY0dldCwgZUR5bmFtaWNJbnZlcnNlQWRkLCBlRHluYW1pY0ludmVyc2VSZW1vdmUsIGVEeW5hbWljSW52b2tlLCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljVW5zZXQsIGVEeW5hbWljVW5zZXQsIGVHZXQsIGVHZXQsIGVHZXQsIGVJbnRlcm5hbFJlc291cmNlLCBlSW52ZXJzZUFkZCwgZUludmVyc2VBZGQsIGVJbnZlcnNlUmVtb3ZlLCBlSW52ZXJzZVJlbW92ZSwgZUludm9rZSwgZUlzU2V0LCBlT2JqZWN0Rm9yVVJJRnJhZ21lbnRTZWdtZW50LCBlT3BlbkdldCwgZU9wZW5Jc1NldCwgZU9wZW5TZXQsIGVPcGVuVW5zZXQsIGVQcm94eVVSSSwgZVJlc29sdmVQcm94eSwgZVJlc291cmNlLCBlU2V0LCBlU2V0UmVzb3VyY2UsIGVTZXRTdG9yZSwgZVNldHRpbmcsIGVTdG9yZSwgZVVuc2V0LCBlVVJJRnJhZ21lbnRTZWdtZW50LCBlVmlydHVhbEdldCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsSXNTZXQsIGVWaXJ0dWFsU2V0LCBlVmlydHVhbFVuc2V0LCB0b1N0cmluZzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQsIGVOb3RpZnk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB3YWl0LCB3YWl0LCB3YWl0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0Vudmlyb25tZW50SW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRmxvb3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Vudmlyb25tZW50SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkVudmlyb25tZW50SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRmxvb3JJbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Zsb29ySW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY4ZGUzN2EKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Zsb29ySW1wbC5odG1sCkBAIC0wLDAgKzEsMzUyIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitGbG9vckltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5GbG9vckltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkZsb29ySW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9GbG9vckltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Vudmlyb25tZW50SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR1BTU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9GbG9vckltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJGbG9vckltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsT2JqZWN0SW1wbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIEZsb29ySW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsT2JqZWN0SW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TdXJmYWNlSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dyb3VuZEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Hcm91bmRJbXBsPC9BPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkZsb29ySW1wbDwvQj4KKzwvUFJFPgorPERMPgorPERUPjxCPkFsbCBJbXBsZW1lbnRlZCBJbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5GbG9vcjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Hcm91bmQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkdyb3VuZDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3VyZmFjZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5GbG9vckltcGw8L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR3JvdW5kSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkdyb3VuZEltcGw8L0E+PERUPmltcGxlbWVudHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5GbG9vcjwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Rmxvb3I8L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorIDxwPgorIDwvcD4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09IE5FU1RFRCBDTEFTUyBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk5lc3RlZCBDbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FQWRhcHRlckxpc3QmbHQ7RSBleHRlbmRzIGphdmEubGFuZy5PYmplY3QgJiBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyJmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FT2JzZXJ2YWJsZUFkYXB0ZXJMaXN0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LkVTdG9yZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVMQVNUX0VPQkpFQ1RfRkxBRzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVPUFBPU0lURV9GRUFUVVJFX0JBU0U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGh5c2ljYWxPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QaHlzaWNhbE9iamVjdEltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjYmFzaWNHZXRIYXNTdXJmYWNlKCkiPmJhc2ljR2V0SGFzU3VyZmFjZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZ2V0RXZlbG92ZXNJbigpIj5nZXRFdmVsb3Zlc0luPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZ2V0SGFzU3VyZmFjZSgpIj5nZXRIYXNTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjc2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPnNldEhhc1N1cmZhY2U8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9DbGFzcygpIj5iYXNpY0dldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZUludGVybmFsQ29udGFpbmVyLCBlSW52b2tlLCBlSXNQcm94eSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURpcmVjdFJlc291cmNlLCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVByb3h5VVJJLCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVVUklGcmFnbWVudFNlZ21lbnQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQsIHRvU3RyaW5nPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGh5c2ljYWxPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRFdmVsb3Zlc0luKCkiPmdldEV2ZWxvdmVzSW48L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRIYXNTdXJmYWNlKCkiPmdldEhhc1N1cmZhY2U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNzZXRIYXNTdXJmYWNlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlKSI+c2V0SGFzU3VyZmFjZTwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvRmxvb3JJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbnZpcm9ubWVudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dQU1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRmxvb3JJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRmxvb3JJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QaHlzaWNhbE9iamVjdEltcGwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dQU1N5c3RlbUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR1BTU3lzdGVtSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE5ZjJlMWYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dQU1N5c3RlbUltcGwuaHRtbApAQCAtMCwwICsxLDU2OSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjIyIENFVCAyMDEyIC0tPgorPFRJVExFPgorR1BTU3lzdGVtSW1wbAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkdQU1N5c3RlbUltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkdQU1N5c3RlbUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvR1BTU3lzdGVtSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRmxvb3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Hcm91bmRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dQU1N5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJHUFNTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIEdQU1N5c3RlbUltcGw8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsCisgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsCisgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90aWNTeXN0ZW1JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU2Vuc29yU3lzdGVtSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkdQU1N5c3RlbUltcGw8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkdQU1N5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGNsYXNzIDxCPkdQU1N5c3RlbUltcGw8L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGw8L0E+PERUPmltcGxlbWVudHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+R1BTU3lzdGVtPC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5HUFMgU3lzdGVtPC9iPjwvZW0+Jy4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyA8cD4KKyBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyA8dWw+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR1BTU3lzdGVtSW1wbC5odG1sI2dldE9yaWdpblBvc2l0aW9uKCkiPjxDT0RFPjxlbT5PcmlnaW4gUG9zaXRpb248L2VtPjwvQ09ERT48L0E+PC9saT4KKyA8L3VsPgorIDwvcD4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09IE5FU1RFRCBDTEFTUyBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk5lc3RlZCBDbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FQWRhcHRlckxpc3QmbHQ7RSBleHRlbmRzIGphdmEubGFuZy5PYmplY3QgJiBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyJmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FT2JzZXJ2YWJsZUFkYXB0ZXJMaXN0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LkVTdG9yZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVMQVNUX0VPQkpFQ1RfRkxBRzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVPUFBPU0lURV9GRUFUVVJFX0JBU0U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuT2JqZWN0PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dQU1N5c3RlbUltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPmVHZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgIGJvb2xlYW4mbmJzcDtyZXNvbHZlLAorICAgICBib29sZWFuJm5ic3A7Y29yZVR5cGUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2Jvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR1BTU3lzdGVtSW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR1BTU3lzdGVtSW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+ZVNldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO25ld1ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dQU1N5c3RlbUltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dQU1N5c3RlbUltcGwuaHRtbCNnZXRPcmlnaW5Qb3NpdGlvbigpIj5nZXRPcmlnaW5Qb3NpdGlvbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HUFNTeXN0ZW1JbXBsLmh0bWwjc2V0T3JpZ2luUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldE9yaWdpblBvc2l0aW9uPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld09yaWdpblBvc2l0aW9uKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dQU1N5c3RlbUltcGwuaHRtbCN0b1N0cmluZygpIj50b1N0cmluZzwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNlbnNvclN5c3RlbUltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JTeXN0ZW1JbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNnZXRGcmVxdWVuY3koKSI+Z2V0RnJlcXVlbmN5PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI2dldElkZW50aWZpZXIoKSI+Z2V0SWRlbnRpZmllcjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNzZXRGcmVxdWVuY3koamF2YS5sYW5nLlN0cmluZykiPnNldEZyZXF1ZW5jeTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNzZXRJZGVudGlmaWVyKGphdmEubGFuZy5TdHJpbmcpIj5zZXRJZGVudGlmaWVyPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90aWNTeXN0ZW1JbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90aWNTeXN0ZW1JbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjZ2V0TG9jYWxPcmllbnRhdGlvbigpIj5nZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCNnZXRMb2NhbFBvc2l0aW9uKCkiPmdldExvY2FsUG9zaXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI3NldExvY2FsT3JpZW50YXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI3NldExvY2FsUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsUG9zaXRpb248L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9DbGFzcygpIj5iYXNpY0dldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZUludGVybmFsQ29udGFpbmVyLCBlSW52b2tlLCBlSXNQcm94eSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURpcmVjdFJlc291cmNlLCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVByb3h5VVJJLCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVVUklGcmFnbWVudFNlZ21lbnQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkLCBlTm90aWZ5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVxdWFscywgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZW5zb3JTeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNnZXRGcmVxdWVuY3koKSI+Z2V0RnJlcXVlbmN5PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI2dldElkZW50aWZpZXIoKSI+Z2V0SWRlbnRpZmllcjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNzZXRGcmVxdWVuY3koamF2YS5sYW5nLlN0cmluZykiPnNldEZyZXF1ZW5jeTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNzZXRJZGVudGlmaWVyKGphdmEubGFuZy5TdHJpbmcpIj5zZXRJZGVudGlmaWVyPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxPcmllbnRhdGlvbigpIj5nZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbFBvc2l0aW9uKCkiPmdldExvY2FsUG9zaXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsT3JpZW50YXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsUG9zaXRpb248L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0T3JpZ2luUG9zaXRpb24oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0T3JpZ2luUG9zaXRpb248L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldE9yaWdpblBvc2l0aW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sI2dldE9yaWdpblBvc2l0aW9uKCkiPmdldE9yaWdpblBvc2l0aW9uPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkdQU1N5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBvcmlnaW4gcG9zaXRpb248RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwjc2V0T3JpZ2luUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPkdQU1N5c3RlbS5zZXRPcmlnaW5Qb3NpdGlvbihTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0R1BTU3lzdGVtX09yaWdpblBvc2l0aW9uKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEdQU1N5c3RlbV9PcmlnaW5Qb3NpdGlvbigpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldE9yaWdpblBvc2l0aW9uKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRPcmlnaW5Qb3NpdGlvbjwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0T3JpZ2luUG9zaXRpb248L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdPcmlnaW5Qb3NpdGlvbik8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwjc2V0T3JpZ2luUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldE9yaWdpblBvc2l0aW9uPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkdQU1N5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdPcmlnaW5Qb3NpdGlvbjwvQ09ERT4gLSB0aGUgbmV3IG9yaWdpbiBwb3NpdGlvbjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCNnZXRPcmlnaW5Qb3NpdGlvbigpIj48Q09ERT5HUFNTeXN0ZW0uZ2V0T3JpZ2luUG9zaXRpb24oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPjwhLS0gLS0+PC9BPjxIMz4KK2VHZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuT2JqZWN0IDxCPmVHZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbGVhbiZuYnNwO3Jlc29sdmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtjb3JlVHlwZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lR2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JTeXN0ZW1JbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDxERD48Q09ERT5yZXNvbHZlPC9DT0RFPiAtIHRoZSByZXNvbHZlPEREPjxDT0RFPmNvcmVUeXBlPC9DT0RFPiAtIHRoZSBjb3JlIHR5cGUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG9iamVjdDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+CitlU2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5lU2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtuZXdWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lU2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+ZVNldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JTeXN0ZW1JbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDxERD48Q09ERT5uZXdWYWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlVW5zZXQoaW50KSI+PCEtLSAtLT48L0E+PEgzPgorZVVuc2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5lVW5zZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lVW5zZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwjZVVuc2V0KGludCkiPmVVbnNldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JTeXN0ZW1JbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUlzU2V0KGludCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VJc1NldDwvSDM+Cis8UFJFPgorcHVibGljIGJvb2xlYW4gPEI+ZUlzU2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZUlzU2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2Vuc29yU3lzdGVtSW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dHJ1ZSwgaWYgc3VjY2Vzc2Z1bDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0idG9TdHJpbmcoKSI+PCEtLSAtLT48L0E+PEgzPgordG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPnRvU3RyaW5nPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI3RvU3RyaW5nKCkiPnRvU3RyaW5nPC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlbnNvclN5c3RlbUltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9HUFNTeXN0ZW1JbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9GbG9vckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dyb3VuZEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR1BTU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkdQU1N5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Hcm91bmRJbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dyb3VuZEltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hZDNkOWEzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Hcm91bmRJbXBsLmh0bWwKQEAgLTAsMCArMSwzNTQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK0dyb3VuZEltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Hcm91bmRJbXBsIGNsYXNzIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJHcm91bmRJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0dyb3VuZEltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dQU1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0hhcmR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Hcm91bmRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iR3JvdW5kSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGh5c2ljYWxPYmplY3RJbXBsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9GT05UPgorPEJSPgorQ2xhc3MgR3JvdW5kSW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsT2JqZWN0SW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TdXJmYWNlSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkdyb3VuZEltcGw8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Hcm91bmQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkdyb3VuZDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3VyZmFjZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5EaXJlY3QgS25vd24gU3ViY2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9GbG9vckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5GbG9vckltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MYW5kU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MYW5kU3VyZmFjZUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGFpcnNJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3RhaXJzSW1wbDwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBhYnN0cmFjdCBjbGFzcyA8Qj5Hcm91bmRJbXBsPC9CPjxEVD5leHRlbmRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3VyZmFjZUltcGw8L0E+PERUPmltcGxlbWVudHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+R3JvdW5kPC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Hcm91bmQ8L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorIDxwPgorIDwvcD4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09IE5FU1RFRCBDTEFTUyBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk5lc3RlZCBDbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FQWRhcHRlckxpc3QmbHQ7RSBleHRlbmRzIGphdmEubGFuZy5PYmplY3QgJiBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyJmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FT2JzZXJ2YWJsZUFkYXB0ZXJMaXN0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LkVTdG9yZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVMQVNUX0VPQkpFQ1RfRkxBRzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVPUFBPU0lURV9GRUFUVVJFX0JBU0U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGh5c2ljYWxPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QaHlzaWNhbE9iamVjdEltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjYmFzaWNHZXRIYXNTdXJmYWNlKCkiPmJhc2ljR2V0SGFzU3VyZmFjZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZ2V0RXZlbG92ZXNJbigpIj5nZXRFdmVsb3Zlc0luPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZ2V0SGFzU3VyZmFjZSgpIj5nZXRIYXNTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjc2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPnNldEhhc1N1cmZhY2U8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9DbGFzcygpIj5iYXNpY0dldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZUludGVybmFsQ29udGFpbmVyLCBlSW52b2tlLCBlSXNQcm94eSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURpcmVjdFJlc291cmNlLCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVByb3h5VVJJLCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVVUklGcmFnbWVudFNlZ21lbnQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQsIHRvU3RyaW5nPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGh5c2ljYWxPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRFdmVsb3Zlc0luKCkiPmdldEV2ZWxvdmVzSW48L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRIYXNTdXJmYWNlKCkiPmdldEhhc1N1cmZhY2U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNzZXRIYXNTdXJmYWNlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlKSI+c2V0SGFzU3VyZmFjZTwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvR3JvdW5kSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR1BTU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSGFyZHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dyb3VuZEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJHcm91bmRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QaHlzaWNhbE9iamVjdEltcGwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0hhcmR3YXJlSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IYXJkd2FyZUltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iZTlmZjk3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IYXJkd2FyZUltcGwuaHRtbApAQCAtMCwwICsxLDMzMSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjIyIENFVCAyMDEyIC0tPgorPFRJVExFPgorSGFyZHdhcmVJbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuSGFyZHdhcmVJbXBsIGNsYXNzIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJIYXJkd2FyZUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvSGFyZHdhcmVJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Hcm91bmRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IdW1hbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSGFyZHdhcmVJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iSGFyZHdhcmVJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9GT05UPgorPEJSPgorQ2xhc3MgSGFyZHdhcmVJbXBsPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsCisgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbAorICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbAorICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGw8L0E+CisgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuSGFyZHdhcmVJbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSGFyZHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkhhcmR3YXJlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGNsYXNzIDxCPkhhcmR3YXJlSW1wbDwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3lzdGVtSW1wbDwvQT48RFQ+aW1wbGVtZW50cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSGFyZHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkhhcmR3YXJlPC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5IYXJkd2FyZTwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgPHA+CisgPC9wPgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVBZGFwdGVyTGlzdCZsdDtFIGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCAmIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXImZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVPYnNlcnZhYmxlQWRhcHRlckxpc3Q8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QuRVN0b3JlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RUxBU1RfRU9CSkVDVF9GTEFHPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RU9QUE9TSVRFX0ZFQVRVUkVfQkFTRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3lzdGVtSW1wbDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjYmFzaWNHZXRCYXNlX0NsYXNzKCkiPmJhc2ljR2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPmVHZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZUlzU2V0KGludCkiPmVJc1NldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZVVuc2V0KGludCkiPmVVbnNldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlQ2xhc3MsIGVDb250YWluZXJGZWF0dXJlSUQsIGVEZWxpdmVyLCBlSW50ZXJuYWxDb250YWluZXIsIGVJbnZva2UsIGVJc1Byb3h5LCBlU2V0Q2xhc3MsIGVTZXREZWxpdmVyLCBlU2V0UHJveHlVUkk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQmFzZVN0cnVjdHVyYWxGZWF0dXJlSUQsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXJGZWF0dXJlLCBlQmFzaWNTZXRDb250YWluZXIsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRhaW5zLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGlyZWN0UmVzb3VyY2UsIGVEeW5hbWljQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlRHluYW1pY0dldCwgZUR5bmFtaWNHZXQsIGVEeW5hbWljSW52ZXJzZUFkZCwgZUR5bmFtaWNJbnZlcnNlUmVtb3ZlLCBlRHluYW1pY0ludm9rZSwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1Vuc2V0LCBlRHluYW1pY1Vuc2V0LCBlR2V0LCBlR2V0LCBlR2V0LCBlSW50ZXJuYWxSZXNvdXJjZSwgZUludmVyc2VBZGQsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZVJlbW92ZSwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZU9iamVjdEZvclVSSUZyYWdtZW50U2VnbWVudCwgZU9wZW5HZXQsIGVPcGVuSXNTZXQsIGVPcGVuU2V0LCBlT3BlblVuc2V0LCBlUHJveHlVUkksIGVSZXNvbHZlUHJveHksIGVSZXNvdXJjZSwgZVNldCwgZVNldFJlc291cmNlLCBlU2V0U3RvcmUsIGVTZXR0aW5nLCBlU3RvcmUsIGVVbnNldCwgZVVSSUZyYWdtZW50U2VnbWVudCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbElzU2V0LCBlVmlydHVhbFNldCwgZVZpcnR1YWxVbnNldCwgdG9TdHJpbmc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkLCBlTm90aWZ5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVxdWFscywgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9IYXJkd2FyZUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dyb3VuZEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0h1bWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IYXJkd2FyZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJIYXJkd2FyZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0h1bWFuSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IdW1hbkltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMmQ2ZDgxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IdW1hbkltcGwuaHRtbApAQCAtMCwwICsxLDM3MiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjIyIENFVCAyMDEyIC0tPgorPFRJVExFPgorSHVtYW5JbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuSHVtYW5JbXBsIGNsYXNzIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJIdW1hbkltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvSHVtYW5JbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IYXJkd2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0ltYWdlU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IdW1hbkltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJIdW1hbkltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkFnZW50SW1wbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIEh1bWFuSW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsT2JqZWN0SW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWdlbnRJbXBsPC9BPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuSHVtYW5JbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5IdW1hbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+RGlyZWN0IEtub3duIFN1YmNsYXNzZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGVkZXN0cmlhbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QZWRlc3RyaWFuSW1wbDwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5IdW1hbkltcGw8L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWdlbnRJbXBsPC9BPjxEVD5pbXBsZW1lbnRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SHVtYW48L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkh1bWFuPC9iPjwvZW0+Jy4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyA8cD4KKyA8L3A+Cis8UD4KKworPFA+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PSBORVNURUQgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0ibmVzdGVkX2NsYXNzX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5OZXN0ZWQgQ2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRUFkYXB0ZXJMaXN0Jmx0O0UgZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0ICYgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciZndDssIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRU9ic2VydmFibGVBZGFwdGVyTGlzdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdC5FU3RvcmU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FTEFTVF9FT0JKRUNUX0ZMQUc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FT1BQT1NJVEVfRkVBVFVSRV9CQVNFPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkFnZW50SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWdlbnRJbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwjZ2V0TW92ZXNPdmVyKCkiPmdldE1vdmVzT3ZlcjwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QaHlzaWNhbE9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBoeXNpY2FsT2JqZWN0SW1wbDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNiYXNpY0dldEhhc1N1cmZhY2UoKSI+YmFzaWNHZXRIYXNTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZ2V0RXZlbG92ZXNJbigpIj5nZXRFdmVsb3Zlc0luPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZ2V0SGFzU3VyZmFjZSgpIj5nZXRIYXNTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjc2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPnNldEhhc1N1cmZhY2U8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9DbGFzcygpIj5iYXNpY0dldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZUludGVybmFsQ29udGFpbmVyLCBlSW52b2tlLCBlSXNQcm94eSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURpcmVjdFJlc291cmNlLCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVByb3h5VVJJLCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVVUklGcmFnbWVudFNlZ21lbnQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQsIHRvU3RyaW5nPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWdlbnQiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BZ2VudDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCNnZXRNb3Zlc092ZXIoKSI+Z2V0TW92ZXNPdmVyPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaHlzaWNhbE9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEV2ZWxvdmVzSW4oKSI+Z2V0RXZlbG92ZXNJbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEhhc1N1cmZhY2UoKSI+Z2V0SGFzU3VyZmFjZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI3NldEhhc1N1cmZhY2Uob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN1cmZhY2UpIj5zZXRIYXNTdXJmYWNlPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9IdW1hbkltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0hhcmR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0h1bWFuSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ikh1bWFuSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWdlbnRJbXBsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9JbWFnZVNlbnNvclN5c3RlbUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODgzYzZjNgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsLmh0bWwKQEAgLTAsMCArMSwzNzIgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK0ltYWdlU2Vuc29yU3lzdGVtSW1wbAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkltYWdlU2Vuc29yU3lzdGVtSW1wbCBjbGFzcyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0ltYWdlU2Vuc29yU3lzdGVtSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSHVtYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MYW5kU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TZW5zb3JTeXN0ZW1JbXBsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9GT05UPgorPEJSPgorQ2xhc3MgSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsCisgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbAorICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbAorICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGw8L0E+CisgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdGljU3lzdGVtSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNlbnNvclN5c3RlbUltcGw8L0E+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5JbWFnZVNlbnNvclN5c3RlbUltcGw8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9JbWFnZVNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SW1hZ2VTZW5zb3JTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvclN5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5EaXJlY3QgS25vd24gU3ViY2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q2FtZXJhU3lzdGVtSW1wbDwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5JbWFnZVNlbnNvclN5c3RlbUltcGw8L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlbnNvclN5c3RlbUltcGw8L0E+PERUPmltcGxlbWVudHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5JbWFnZVNlbnNvclN5c3RlbTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SW1hZ2UgU2Vuc29yIFN5c3RlbTwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgPHA+CisgPC9wPgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVBZGFwdGVyTGlzdCZsdDtFIGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCAmIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXImZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVPYnNlcnZhYmxlQWRhcHRlckxpc3Q8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QuRVN0b3JlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RUxBU1RfRU9CSkVDVF9GTEFHPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RU9QUE9TSVRFX0ZFQVRVUkVfQkFTRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TZW5zb3JTeXN0ZW1JbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2Vuc29yU3lzdGVtSW1wbDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj5lR2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj5lU2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI2VVbnNldChpbnQpIj5lVW5zZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwjZ2V0RnJlcXVlbmN5KCkiPmdldEZyZXF1ZW5jeTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNnZXRJZGVudGlmaWVyKCkiPmdldElkZW50aWZpZXI8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwjc2V0RnJlcXVlbmN5KGphdmEubGFuZy5TdHJpbmcpIj5zZXRGcmVxdWVuY3k8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwjc2V0SWRlbnRpZmllcihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0SWRlbnRpZmllcjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCN0b1N0cmluZygpIj50b1N0cmluZzwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdGljU3lzdGVtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU3lzdGVtSW1wbDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI2dldExvY2FsT3JpZW50YXRpb24oKSI+Z2V0TG9jYWxPcmllbnRhdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjZ2V0TG9jYWxQb3NpdGlvbigpIj5nZXRMb2NhbFBvc2l0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCNzZXRMb2NhbE9yaWVudGF0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCNzZXRMb2NhbFBvc2l0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMb2NhbFBvc2l0aW9uPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TeXN0ZW1JbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNiYXNpY0dldEJhc2VfQ2xhc3MoKSI+YmFzaWNHZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVDbGFzcywgZUNvbnRhaW5lckZlYXR1cmVJRCwgZURlbGl2ZXIsIGVJbnRlcm5hbENvbnRhaW5lciwgZUludm9rZSwgZUlzUHJveHksIGVTZXRDbGFzcywgZVNldERlbGl2ZXIsIGVTZXRQcm94eVVSSTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVCYXNlU3RydWN0dXJhbEZlYXR1cmVJRCwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lckZlYXR1cmUsIGVCYXNpY1NldENvbnRhaW5lciwgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGFpbnMsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEaXJlY3RSZXNvdXJjZSwgZUR5bmFtaWNCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVEeW5hbWljR2V0LCBlRHluYW1pY0dldCwgZUR5bmFtaWNJbnZlcnNlQWRkLCBlRHluYW1pY0ludmVyc2VSZW1vdmUsIGVEeW5hbWljSW52b2tlLCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljVW5zZXQsIGVEeW5hbWljVW5zZXQsIGVHZXQsIGVHZXQsIGVHZXQsIGVJbnRlcm5hbFJlc291cmNlLCBlSW52ZXJzZUFkZCwgZUludmVyc2VBZGQsIGVJbnZlcnNlUmVtb3ZlLCBlSW52ZXJzZVJlbW92ZSwgZUludm9rZSwgZUlzU2V0LCBlT2JqZWN0Rm9yVVJJRnJhZ21lbnRTZWdtZW50LCBlT3BlbkdldCwgZU9wZW5Jc1NldCwgZU9wZW5TZXQsIGVPcGVuVW5zZXQsIGVQcm94eVVSSSwgZVJlc29sdmVQcm94eSwgZVJlc291cmNlLCBlU2V0LCBlU2V0UmVzb3VyY2UsIGVTZXRTdG9yZSwgZVNldHRpbmcsIGVTdG9yZSwgZVVuc2V0LCBlVVJJRnJhZ21lbnRTZWdtZW50LCBlVmlydHVhbEdldCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsSXNTZXQsIGVWaXJ0dWFsU2V0LCBlVmlydHVhbFVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2Vuc29yU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvclN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjZ2V0RnJlcXVlbmN5KCkiPmdldEZyZXF1ZW5jeTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNnZXRJZGVudGlmaWVyKCkiPmdldElkZW50aWZpZXI8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjc2V0RnJlcXVlbmN5KGphdmEubGFuZy5TdHJpbmcpIj5zZXRGcmVxdWVuY3k8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjc2V0SWRlbnRpZmllcihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0SWRlbnRpZmllcjwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY1N5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsT3JpZW50YXRpb24oKSI+Z2V0TG9jYWxPcmllbnRhdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxQb3NpdGlvbigpIj5nZXRMb2NhbFBvc2l0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNzZXRMb2NhbE9yaWVudGF0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNzZXRMb2NhbFBvc2l0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMb2NhbFBvc2l0aW9uPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9JbWFnZVNlbnNvclN5c3RlbUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0h1bWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGFuZFN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0ltYWdlU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkltYWdlU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU2Vuc29yU3lzdGVtSW1wbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGFuZFN1cmZhY2VJbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xhbmRTdXJmYWNlSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJmNDcxYmUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xhbmRTdXJmYWNlSW1wbC5odG1sCkBAIC0wLDAgKzEsMzUyIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitMYW5kU3VyZmFjZUltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5MYW5kU3VyZmFjZUltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkxhbmRTdXJmYWNlSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9MYW5kU3VyZmFjZUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0ltYWdlU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xhbmRTdXJmYWNlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkxhbmRTdXJmYWNlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGh5c2ljYWxPYmplY3RJbXBsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9GT05UPgorPEJSPgorQ2xhc3MgTGFuZFN1cmZhY2VJbXBsPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsCisgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbAorICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbAorICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGw8L0E+CisgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGh5c2ljYWxPYmplY3RJbXBsPC9BPgorICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN1cmZhY2VJbXBsPC9BPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR3JvdW5kSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkdyb3VuZEltcGw8L0E+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTGFuZFN1cmZhY2VJbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Hcm91bmQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxhbmRTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGNsYXNzIDxCPkxhbmRTdXJmYWNlSW1wbDwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Hcm91bmRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+R3JvdW5kSW1wbDwvQT48RFQ+aW1wbGVtZW50cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxhbmRTdXJmYWNlPC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5MYW5kIFN1cmZhY2U8L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorIDxwPgorIDwvcD4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09IE5FU1RFRCBDTEFTUyBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk5lc3RlZCBDbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FQWRhcHRlckxpc3QmbHQ7RSBleHRlbmRzIGphdmEubGFuZy5PYmplY3QgJiBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyJmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FT2JzZXJ2YWJsZUFkYXB0ZXJMaXN0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LkVTdG9yZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVMQVNUX0VPQkpFQ1RfRkxBRzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVPUFBPU0lURV9GRUFUVVJFX0JBU0U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGh5c2ljYWxPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QaHlzaWNhbE9iamVjdEltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjYmFzaWNHZXRIYXNTdXJmYWNlKCkiPmJhc2ljR2V0SGFzU3VyZmFjZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZ2V0RXZlbG92ZXNJbigpIj5nZXRFdmVsb3Zlc0luPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZ2V0SGFzU3VyZmFjZSgpIj5nZXRIYXNTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjc2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPnNldEhhc1N1cmZhY2U8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9DbGFzcygpIj5iYXNpY0dldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZUludGVybmFsQ29udGFpbmVyLCBlSW52b2tlLCBlSXNQcm94eSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURpcmVjdFJlc291cmNlLCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVByb3h5VVJJLCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVVUklGcmFnbWVudFNlZ21lbnQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQsIHRvU3RyaW5nPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGh5c2ljYWxPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRFdmVsb3Zlc0luKCkiPmdldEV2ZWxvdmVzSW48L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRIYXNTdXJmYWNlKCkiPmdldEhhc1N1cmZhY2U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNzZXRIYXNTdXJmYWNlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlKSI+c2V0SGFzU3VyZmFjZTwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvTGFuZFN1cmZhY2VJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9JbWFnZVNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MYW5kU3VyZmFjZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJMYW5kU3VyZmFjZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsT2JqZWN0SW1wbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ4ZDA0MWIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sCkBAIC0wLDAgKzEsMTE0NCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjIyIENFVCAyMDEyIC0tPgorPFRJVExFPgorTGlkYXJTeXN0ZW1JbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTGlkYXJTeXN0ZW1JbXBsIGNsYXNzIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJMaWRhclN5c3RlbUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MYW5kU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIExpZGFyU3lzdGVtSW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RpY1N5c3RlbUltcGw8L0E+CisgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TZW5zb3JTeXN0ZW1JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGw8L0E+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTGlkYXJTeXN0ZW1JbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxpZGFyU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGNsYXNzIDxCPkxpZGFyU3lzdGVtSW1wbDwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbDwvQT48RFQ+aW1wbGVtZW50cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxpZGFyU3lzdGVtPC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5MaWRhciBTeXN0ZW08L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorIDxwPgorIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCNnZXROYkxheWVycygpIj48Q09ERT48ZW0+TmIgTGF5ZXJzPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjZ2V0TGF5ZXJBbmdsZU1pbigpIj48Q09ERT48ZW0+TGF5ZXIgQW5nbGUgTWluPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjZ2V0TGF5ZXJBbmdsZVN0ZXAoKSI+PENPREU+PGVtPkxheWVyIEFuZ2xlIFN0ZXA8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCNnZXROb2lzZSgpIj48Q09ERT48ZW0+Tm9pc2U8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCNnZXRTaWdtYU5vaXNlKCkiPjxDT0RFPjxlbT5TaWdtYSBOb2lzZTwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI2dldEFuZ2xlX21pbigpIj48Q09ERT48ZW0+QW5nbGUgbWluPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjZ2V0QW5nbGVfbWF4KCkiPjxDT0RFPjxlbT5BbmdsZSBtYXg8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCNnZXRUaW1lX2luY3JlbWVudCgpIj48Q09ERT48ZW0+VGltZSBpbmNyZW1lbnQ8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCNnZXRTY2FuX3RpbWUoKSI+PENPREU+PGVtPlNjYW4gdGltZTwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI2dldFJhbmdlX21pbigpIj48Q09ERT48ZW0+UmFuZ2UgbWluPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjZ2V0UmFuZ2VfbWF4KCkiPjxDT0RFPjxlbT5SYW5nZSBtYXg8L2VtPjwvQ09ERT48L0E+PC9saT4KKyA8L3VsPgorIDwvcD4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09IE5FU1RFRCBDTEFTUyBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk5lc3RlZCBDbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FQWRhcHRlckxpc3QmbHQ7RSBleHRlbmRzIGphdmEubGFuZy5PYmplY3QgJiBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyJmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FT2JzZXJ2YWJsZUFkYXB0ZXJMaXN0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LkVTdG9yZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVMQVNUX0VPQkpFQ1RfRkxBRzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVPUFBPU0lURV9GRUFUVVJFX0JBU0U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuT2JqZWN0PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgYm9vbGVhbiZuYnNwO3Jlc29sdmUsCisgICAgIGJvb2xlYW4mbmJzcDtjb3JlVHlwZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Ym9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCNlSXNTZXQoaW50KSI+ZUlzU2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+ZVNldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO25ld1ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI2VVbnNldChpbnQpIj5lVW5zZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjZ2V0QW5nbGVfbWF4KCkiPmdldEFuZ2xlX21heDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI2dldEFuZ2xlX21pbigpIj5nZXRBbmdsZV9taW48L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCNnZXRMYXllckFuZ2xlTWluKCkiPmdldExheWVyQW5nbGVNaW48L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjZ2V0TGF5ZXJBbmdsZVN0ZXAoKSI+Z2V0TGF5ZXJBbmdsZVN0ZXA8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjZ2V0TmJMYXllcnMoKSI+Z2V0TmJMYXllcnM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjZ2V0Tm9pc2UoKSI+Z2V0Tm9pc2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjZ2V0UmFuZ2VfbWF4KCkiPmdldFJhbmdlX21heDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI2dldFJhbmdlX21pbigpIj5nZXRSYW5nZV9taW48L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCNnZXRTY2FuX3RpbWUoKSI+Z2V0U2Nhbl90aW1lPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjZ2V0U2lnbWFOb2lzZSgpIj5nZXRTaWdtYU5vaXNlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI2dldFRpbWVfaW5jcmVtZW50KCkiPmdldFRpbWVfaW5jcmVtZW50PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjc2V0QW5nbGVfbWF4KGphdmEubGFuZy5TdHJpbmcpIj5zZXRBbmdsZV9tYXg8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3QW5nbGVfbWF4KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjc2V0QW5nbGVfbWluKGphdmEubGFuZy5TdHJpbmcpIj5zZXRBbmdsZV9taW48L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3QW5nbGVfbWluKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjc2V0TGF5ZXJBbmdsZU1pbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TGF5ZXJBbmdsZU1pbjwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdMYXllckFuZ2xlTWluKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI3NldExheWVyQW5nbGVTdGVwKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMYXllckFuZ2xlU3RlcDwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdMYXllckFuZ2xlU3RlcCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCNzZXROYkxheWVycyhqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TmJMYXllcnM8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3TmJMYXllcnMpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwjc2V0Tm9pc2UoamF2YS5sYW5nLlN0cmluZykiPnNldE5vaXNlPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld05vaXNlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI3NldFJhbmdlX21heChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0UmFuZ2VfbWF4PC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld1JhbmdlX21heCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI3NldFJhbmdlX21pbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0UmFuZ2VfbWluPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld1JhbmdlX21pbik8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI3NldFNjYW5fdGltZShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0U2Nhbl90aW1lPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld1NjYW5fdGltZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sI3NldFNpZ21hTm9pc2UoamF2YS5sYW5nLlN0cmluZykiPnNldFNpZ21hTm9pc2U8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3U2lnbWFOb2lzZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCNzZXRUaW1lX2luY3JlbWVudChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0VGltZV9pbmNyZW1lbnQ8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3VGltZV9pbmNyZW1lbnQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCN0b1N0cmluZygpIj50b1N0cmluZzwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNlbnNvclN5c3RlbUltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JTeXN0ZW1JbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNnZXRGcmVxdWVuY3koKSI+Z2V0RnJlcXVlbmN5PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI2dldElkZW50aWZpZXIoKSI+Z2V0SWRlbnRpZmllcjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNzZXRGcmVxdWVuY3koamF2YS5sYW5nLlN0cmluZykiPnNldEZyZXF1ZW5jeTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNzZXRJZGVudGlmaWVyKGphdmEubGFuZy5TdHJpbmcpIj5zZXRJZGVudGlmaWVyPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90aWNTeXN0ZW1JbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90aWNTeXN0ZW1JbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjZ2V0TG9jYWxPcmllbnRhdGlvbigpIj5nZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCNnZXRMb2NhbFBvc2l0aW9uKCkiPmdldExvY2FsUG9zaXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI3NldExvY2FsT3JpZW50YXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI3NldExvY2FsUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsUG9zaXRpb248L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9DbGFzcygpIj5iYXNpY0dldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZUludGVybmFsQ29udGFpbmVyLCBlSW52b2tlLCBlSXNQcm94eSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURpcmVjdFJlc291cmNlLCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVByb3h5VVJJLCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVVUklGcmFnbWVudFNlZ21lbnQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkLCBlTm90aWZ5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVxdWFscywgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZW5zb3JTeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNnZXRGcmVxdWVuY3koKSI+Z2V0RnJlcXVlbmN5PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI2dldElkZW50aWZpZXIoKSI+Z2V0SWRlbnRpZmllcjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNzZXRGcmVxdWVuY3koamF2YS5sYW5nLlN0cmluZykiPnNldEZyZXF1ZW5jeTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNzZXRJZGVudGlmaWVyKGphdmEubGFuZy5TdHJpbmcpIj5zZXRJZGVudGlmaWVyPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxPcmllbnRhdGlvbigpIj5nZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbFBvc2l0aW9uKCkiPmdldExvY2FsUG9zaXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsT3JpZW50YXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsUG9zaXRpb248L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZW5zb3JTeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNnZXRGcmVxdWVuY3koKSI+Z2V0RnJlcXVlbmN5PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI2dldElkZW50aWZpZXIoKSI+Z2V0SWRlbnRpZmllcjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNzZXRGcmVxdWVuY3koamF2YS5sYW5nLlN0cmluZykiPnNldEZyZXF1ZW5jeTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNzZXRJZGVudGlmaWVyKGphdmEubGFuZy5TdHJpbmcpIj5zZXRJZGVudGlmaWVyPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxPcmllbnRhdGlvbigpIj5nZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbFBvc2l0aW9uKCkiPmdldExvY2FsUG9zaXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsT3JpZW50YXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsUG9zaXRpb248L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0TmJMYXllcnMoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TmJMYXllcnM8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldE5iTGF5ZXJzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0TmJMYXllcnMoKSI+Z2V0TmJMYXllcnM8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBuYiBsYXllcnM8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNzZXROYkxheWVycyhqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+TGlkYXJTeXN0ZW0uc2V0TmJMYXllcnMoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtX05iTGF5ZXJzKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldExpZGFyU3lzdGVtX05iTGF5ZXJzKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0TmJMYXllcnMoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldE5iTGF5ZXJzPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXROYkxheWVyczwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld05iTGF5ZXJzKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI3NldE5iTGF5ZXJzKGphdmEubGFuZy5TdHJpbmcpIj5zZXROYkxheWVyczwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxpZGFyU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld05iTGF5ZXJzPC9DT0RFPiAtIHRoZSBuZXcgbmIgbGF5ZXJzPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0TmJMYXllcnMoKSI+PENPREU+TGlkYXJTeXN0ZW0uZ2V0TmJMYXllcnMoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRMYXllckFuZ2xlTWluKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldExheWVyQW5nbGVNaW48L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldExheWVyQW5nbGVNaW48L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRMYXllckFuZ2xlTWluKCkiPmdldExheWVyQW5nbGVNaW48L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBsYXllciBhbmdsZSBtaW48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNzZXRMYXllckFuZ2xlTWluKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5MaWRhclN5c3RlbS5zZXRMYXllckFuZ2xlTWluKFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbV9MYXllckFuZ2xlTWluKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldExpZGFyU3lzdGVtX0xheWVyQW5nbGVNaW4oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRMYXllckFuZ2xlTWluKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRMYXllckFuZ2xlTWluPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRMYXllckFuZ2xlTWluPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3TGF5ZXJBbmdsZU1pbik8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNzZXRMYXllckFuZ2xlTWluKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMYXllckFuZ2xlTWluPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGlkYXJTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3TGF5ZXJBbmdsZU1pbjwvQ09ERT4gLSB0aGUgbmV3IGxheWVyIGFuZ2xlIG1pbjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldExheWVyQW5nbGVNaW4oKSI+PENPREU+TGlkYXJTeXN0ZW0uZ2V0TGF5ZXJBbmdsZU1pbigpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldExheWVyQW5nbGVTdGVwKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldExheWVyQW5nbGVTdGVwPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRMYXllckFuZ2xlU3RlcDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldExheWVyQW5nbGVTdGVwKCkiPmdldExheWVyQW5nbGVTdGVwPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGlkYXJTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbGF5ZXIgYW5nbGUgc3RlcDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI3NldExheWVyQW5nbGVTdGVwKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5MaWRhclN5c3RlbS5zZXRMYXllckFuZ2xlU3RlcChTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fTGF5ZXJBbmdsZVN0ZXAoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0TGlkYXJTeXN0ZW1fTGF5ZXJBbmdsZVN0ZXAoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRMYXllckFuZ2xlU3RlcChqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0TGF5ZXJBbmdsZVN0ZXA8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldExheWVyQW5nbGVTdGVwPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3TGF5ZXJBbmdsZVN0ZXApPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjc2V0TGF5ZXJBbmdsZVN0ZXAoamF2YS5sYW5nLlN0cmluZykiPnNldExheWVyQW5nbGVTdGVwPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGlkYXJTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3TGF5ZXJBbmdsZVN0ZXA8L0NPREU+IC0gdGhlIG5ldyBsYXllciBhbmdsZSBzdGVwPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0TGF5ZXJBbmdsZVN0ZXAoKSI+PENPREU+TGlkYXJTeXN0ZW0uZ2V0TGF5ZXJBbmdsZVN0ZXAoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXROb2lzZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXROb2lzZTwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0Tm9pc2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXROb2lzZSgpIj5nZXROb2lzZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxpZGFyU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG5vaXNlPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjc2V0Tm9pc2UoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPkxpZGFyU3lzdGVtLnNldE5vaXNlKFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbV9Ob2lzZSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRMaWRhclN5c3RlbV9Ob2lzZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldE5vaXNlKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXROb2lzZTwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0Tm9pc2U8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdOb2lzZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNzZXROb2lzZShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0Tm9pc2U8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdOb2lzZTwvQ09ERT4gLSB0aGUgbmV3IG5vaXNlPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0Tm9pc2UoKSI+PENPREU+TGlkYXJTeXN0ZW0uZ2V0Tm9pc2UoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTaWdtYU5vaXNlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFNpZ21hTm9pc2U8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldFNpZ21hTm9pc2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRTaWdtYU5vaXNlKCkiPmdldFNpZ21hTm9pc2U8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzaWdtYSBub2lzZTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI3NldFNpZ21hTm9pc2UoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPkxpZGFyU3lzdGVtLnNldFNpZ21hTm9pc2UoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtX1NpZ21hTm9pc2UoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0TGlkYXJTeXN0ZW1fU2lnbWFOb2lzZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFNpZ21hTm9pc2UoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFNpZ21hTm9pc2U8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldFNpZ21hTm9pc2U8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdTaWdtYU5vaXNlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI3NldFNpZ21hTm9pc2UoamF2YS5sYW5nLlN0cmluZykiPnNldFNpZ21hTm9pc2U8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdTaWdtYU5vaXNlPC9DT0RFPiAtIHRoZSBuZXcgc2lnbWEgbm9pc2U8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRTaWdtYU5vaXNlKCkiPjxDT0RFPkxpZGFyU3lzdGVtLmdldFNpZ21hTm9pc2UoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRBbmdsZV9taW4oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QW5nbGVfbWluPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRBbmdsZV9taW48L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldEFuZ2xlX21pbigpIj5nZXRBbmdsZV9taW48L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5BbmdsZSBtaW48L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI3NldEFuZ2xlX21pbihqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+TGlkYXJTeXN0ZW0uc2V0QW5nbGVfbWluKFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbV9BbmdsZV9taW4oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0TGlkYXJTeXN0ZW1fQW5nbGVfbWluKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0QW5nbGVfbWluKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRBbmdsZV9taW48L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldEFuZ2xlX21pbjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld0FuZ2xlX21pbik8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI3NldEFuZ2xlX21pbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0QW5nbGVfbWluPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGlkYXJTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3QW5nbGVfbWluPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+QW5nbGUgbWluPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRBbmdsZV9taW4oKSI+PENPREU+TGlkYXJTeXN0ZW0uZ2V0QW5nbGVfbWluKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0QW5nbGVfbWF4KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEFuZ2xlX21heDwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0QW5nbGVfbWF4PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRBbmdsZV9tYXgoKSI+Z2V0QW5nbGVfbWF4PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGlkYXJTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+QW5nbGUgbWF4PC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNzZXRBbmdsZV9tYXgoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPkxpZGFyU3lzdGVtLnNldEFuZ2xlX21heChTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fQW5nbGVfbWF4KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldExpZGFyU3lzdGVtX0FuZ2xlX21heCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldEFuZ2xlX21heChqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0QW5nbGVfbWF4PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRBbmdsZV9tYXg8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdBbmdsZV9tYXgpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNzZXRBbmdsZV9tYXgoamF2YS5sYW5nLlN0cmluZykiPnNldEFuZ2xlX21heDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxpZGFyU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld0FuZ2xlX21heDwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkFuZ2xlIG1heDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0QW5nbGVfbWF4KCkiPjxDT0RFPkxpZGFyU3lzdGVtLmdldEFuZ2xlX21heCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFRpbWVfaW5jcmVtZW50KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFRpbWVfaW5jcmVtZW50PC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRUaW1lX2luY3JlbWVudDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0VGltZV9pbmNyZW1lbnQoKSI+Z2V0VGltZV9pbmNyZW1lbnQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5UaW1lIGluY3JlbWVudDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjc2V0VGltZV9pbmNyZW1lbnQoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPkxpZGFyU3lzdGVtLnNldFRpbWVfaW5jcmVtZW50KFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbV9UaW1lX2luY3JlbWVudCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRMaWRhclN5c3RlbV9UaW1lX2luY3JlbWVudCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFRpbWVfaW5jcmVtZW50KGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRUaW1lX2luY3JlbWVudDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0VGltZV9pbmNyZW1lbnQ8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdUaW1lX2luY3JlbWVudCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI3NldFRpbWVfaW5jcmVtZW50KGphdmEubGFuZy5TdHJpbmcpIj5zZXRUaW1lX2luY3JlbWVudDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxpZGFyU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld1RpbWVfaW5jcmVtZW50PC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+VGltZSBpbmNyZW1lbnQ8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFRpbWVfaW5jcmVtZW50KCkiPjxDT0RFPkxpZGFyU3lzdGVtLmdldFRpbWVfaW5jcmVtZW50KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U2Nhbl90aW1lKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFNjYW5fdGltZTwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0U2Nhbl90aW1lPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRTY2FuX3RpbWUoKSI+Z2V0U2Nhbl90aW1lPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGlkYXJTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+U2NhbiB0aW1lPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNzZXRTY2FuX3RpbWUoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPkxpZGFyU3lzdGVtLnNldFNjYW5fdGltZShTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fU2Nhbl90aW1lKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldExpZGFyU3lzdGVtX1NjYW5fdGltZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFNjYW5fdGltZShqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0U2Nhbl90aW1lPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRTY2FuX3RpbWU8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdTY2FuX3RpbWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNzZXRTY2FuX3RpbWUoamF2YS5sYW5nLlN0cmluZykiPnNldFNjYW5fdGltZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxpZGFyU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld1NjYW5fdGltZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlNjYW4gdGltZTwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0U2Nhbl90aW1lKCkiPjxDT0RFPkxpZGFyU3lzdGVtLmdldFNjYW5fdGltZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFJhbmdlX21pbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRSYW5nZV9taW48L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldFJhbmdlX21pbjwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0UmFuZ2VfbWluKCkiPmdldFJhbmdlX21pbjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxpZGFyU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPlJhbmdlIG1pbjwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjc2V0UmFuZ2VfbWluKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5MaWRhclN5c3RlbS5zZXRSYW5nZV9taW4oU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtX1JhbmdlX21pbigpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRMaWRhclN5c3RlbV9SYW5nZV9taW4oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRSYW5nZV9taW4oamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFJhbmdlX21pbjwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0UmFuZ2VfbWluPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3UmFuZ2VfbWluKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjc2V0UmFuZ2VfbWluKGphdmEubGFuZy5TdHJpbmcpIj5zZXRSYW5nZV9taW48L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdSYW5nZV9taW48L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5SYW5nZSBtaW48L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFJhbmdlX21pbigpIj48Q09ERT5MaWRhclN5c3RlbS5nZXRSYW5nZV9taW4oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRSYW5nZV9tYXgoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UmFuZ2VfbWF4PC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRSYW5nZV9tYXg8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFJhbmdlX21heCgpIj5nZXRSYW5nZV9tYXg8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5SYW5nZSBtYXg8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI3NldFJhbmdlX21heChqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+TGlkYXJTeXN0ZW0uc2V0UmFuZ2VfbWF4KFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbV9SYW5nZV9tYXgoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0TGlkYXJTeXN0ZW1fUmFuZ2VfbWF4KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0UmFuZ2VfbWF4KGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRSYW5nZV9tYXg8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldFJhbmdlX21heDwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld1JhbmdlX21heCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI3NldFJhbmdlX21heChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0UmFuZ2VfbWF4PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGlkYXJTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3UmFuZ2VfbWF4PC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+UmFuZ2UgbWF4PC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRSYW5nZV9tYXgoKSI+PENPREU+TGlkYXJTeXN0ZW0uZ2V0UmFuZ2VfbWF4KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj48IS0tIC0tPjwvQT48SDM+CitlR2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLk9iamVjdCA8Qj5lR2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtyZXNvbHZlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sZWFuJm5ic3A7Y29yZVR5cGUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZUdldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPmVHZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2Vuc29yU3lzdGVtSW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8REQ+PENPREU+cmVzb2x2ZTwvQ09ERT4gLSB0aGUgcmVzb2x2ZTxERD48Q09ERT5jb3JlVHlwZTwvQ09ERT4gLSB0aGUgY29yZSB0eXBlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBvYmplY3Q8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorZVNldDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+ZVNldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7bmV3VmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVNldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2Vuc29yU3lzdGVtSW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8REQ+PENPREU+bmV3VmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZVVuc2V0KGludCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VVbnNldDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+ZVVuc2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVVuc2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI2VVbnNldChpbnQpIj5lVW5zZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2Vuc29yU3lzdGVtSW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVJc1NldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlSXNTZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBib29sZWFuIDxCPmVJc1NldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVJc1NldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNlSXNTZXQoaW50KSI+ZUlzU2V0PC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlbnNvclN5c3RlbUltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRydWUsIGlmIHN1Y2Nlc3NmdWw8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InRvU3RyaW5nKCkiPjwhLS0gLS0+PC9BPjxIMz4KK3RvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj50b1N0cmluZzwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCN0b1N0cmluZygpIj50b1N0cmluZzwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JTeXN0ZW1JbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MYW5kU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTg5YjQxZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sCkBAIC0wLDAgKzEsMzcyIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjMgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbCBjbGFzcyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkxvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNlbnNvclN5c3RlbUltcGwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0ZPTlQ+Cis8QlI+CitDbGFzcyBMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsCisgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbAorICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbAorICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGw8L0E+CisgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdGljU3lzdGVtSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNlbnNvclN5c3RlbUltcGw8L0E+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvclN5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5EaXJlY3QgS25vd24gU3ViY2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HUFNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+R1BTU3lzdGVtSW1wbDwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsPC9CPjxEVD5leHRlbmRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JTeXN0ZW1JbXBsPC9BPjxEVD5pbXBsZW1lbnRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorIDxwPgorIDwvcD4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09IE5FU1RFRCBDTEFTUyBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk5lc3RlZCBDbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FQWRhcHRlckxpc3QmbHQ7RSBleHRlbmRzIGphdmEubGFuZy5PYmplY3QgJiBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyJmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FT2JzZXJ2YWJsZUFkYXB0ZXJMaXN0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LkVTdG9yZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVMQVNUX0VPQkpFQ1RfRkxBRzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVPUFBPU0lURV9GRUFUVVJFX0JBU0U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU2Vuc29yU3lzdGVtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlbnNvclN5c3RlbUltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNlSXNTZXQoaW50KSI+ZUlzU2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+ZVNldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI2dldEZyZXF1ZW5jeSgpIj5nZXRGcmVxdWVuY3k8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwjZ2V0SWRlbnRpZmllcigpIj5nZXRJZGVudGlmaWVyPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI3NldEZyZXF1ZW5jeShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0RnJlcXVlbmN5PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI3NldElkZW50aWZpZXIoamF2YS5sYW5nLlN0cmluZykiPnNldElkZW50aWZpZXI8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwjdG9TdHJpbmcoKSI+dG9TdHJpbmc8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RpY1N5c3RlbUltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY1N5c3RlbUltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCNnZXRMb2NhbE9yaWVudGF0aW9uKCkiPmdldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI2dldExvY2FsUG9zaXRpb24oKSI+Z2V0TG9jYWxQb3NpdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjc2V0TG9jYWxPcmllbnRhdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxPcmllbnRhdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjc2V0TG9jYWxQb3NpdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxQb3NpdGlvbjwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3lzdGVtSW1wbDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjYmFzaWNHZXRCYXNlX0NsYXNzKCkiPmJhc2ljR2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlQ2xhc3MsIGVDb250YWluZXJGZWF0dXJlSUQsIGVEZWxpdmVyLCBlSW50ZXJuYWxDb250YWluZXIsIGVJbnZva2UsIGVJc1Byb3h5LCBlU2V0Q2xhc3MsIGVTZXREZWxpdmVyLCBlU2V0UHJveHlVUkk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQmFzZVN0cnVjdHVyYWxGZWF0dXJlSUQsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXJGZWF0dXJlLCBlQmFzaWNTZXRDb250YWluZXIsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRhaW5zLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGlyZWN0UmVzb3VyY2UsIGVEeW5hbWljQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlRHluYW1pY0dldCwgZUR5bmFtaWNHZXQsIGVEeW5hbWljSW52ZXJzZUFkZCwgZUR5bmFtaWNJbnZlcnNlUmVtb3ZlLCBlRHluYW1pY0ludm9rZSwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1Vuc2V0LCBlRHluYW1pY1Vuc2V0LCBlR2V0LCBlR2V0LCBlR2V0LCBlSW50ZXJuYWxSZXNvdXJjZSwgZUludmVyc2VBZGQsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZVJlbW92ZSwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZU9iamVjdEZvclVSSUZyYWdtZW50U2VnbWVudCwgZU9wZW5HZXQsIGVPcGVuSXNTZXQsIGVPcGVuU2V0LCBlT3BlblVuc2V0LCBlUHJveHlVUkksIGVSZXNvbHZlUHJveHksIGVSZXNvdXJjZSwgZVNldCwgZVNldFJlc291cmNlLCBlU2V0U3RvcmUsIGVTZXR0aW5nLCBlU3RvcmUsIGVVbnNldCwgZVVSSUZyYWdtZW50U2VnbWVudCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbElzU2V0LCBlVmlydHVhbFNldCwgZVZpcnR1YWxVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQsIGVOb3RpZnk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB3YWl0LCB3YWl0LCB3YWl0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvclN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JTeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI2dldEZyZXF1ZW5jeSgpIj5nZXRGcmVxdWVuY3k8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjZ2V0SWRlbnRpZmllcigpIj5nZXRJZGVudGlmaWVyPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI3NldEZyZXF1ZW5jeShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0RnJlcXVlbmN5PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI3NldElkZW50aWZpZXIoamF2YS5sYW5nLlN0cmluZykiPnNldElkZW50aWZpZXI8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbE9yaWVudGF0aW9uKCkiPmdldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsUG9zaXRpb24oKSI+Z2V0TG9jYWxQb3NpdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjc2V0TG9jYWxPcmllbnRhdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxPcmllbnRhdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjc2V0TG9jYWxQb3NpdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxQb3NpdGlvbjwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TZW5zb3JTeXN0ZW1JbXBsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NDYyOTc1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwKQEAgLTAsMCArMSwzNzIgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyMyBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsIGNsYXNzIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU2Vuc29yU3lzdGVtSW1wbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIE9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGw8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsCisgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsCisgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90aWNTeXN0ZW1JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU2Vuc29yU3lzdGVtSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGw8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkRpcmVjdCBLbm93biBTdWJjbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkxpZGFyU3lzdGVtSW1wbDwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsPC9CPjxEVD5leHRlbmRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JTeXN0ZW1JbXBsPC9BPjxEVD5pbXBsZW1lbnRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T2JqZWN0IERldGVjdGlvbiBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+Jy4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyA8cD4KKyA8L3A+Cis8UD4KKworPFA+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PSBORVNURUQgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0ibmVzdGVkX2NsYXNzX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5OZXN0ZWQgQ2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRUFkYXB0ZXJMaXN0Jmx0O0UgZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0ICYgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciZndDssIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRU9ic2VydmFibGVBZGFwdGVyTGlzdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdC5FU3RvcmU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FTEFTVF9FT0JKRUNUX0ZMQUc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FT1BQT1NJVEVfRkVBVFVSRV9CQVNFPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNlbnNvclN5c3RlbUltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JTeXN0ZW1JbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPmVHZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwjZUlzU2V0KGludCkiPmVJc1NldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwjZVVuc2V0KGludCkiPmVVbnNldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNnZXRGcmVxdWVuY3koKSI+Z2V0RnJlcXVlbmN5PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI2dldElkZW50aWZpZXIoKSI+Z2V0SWRlbnRpZmllcjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNzZXRGcmVxdWVuY3koamF2YS5sYW5nLlN0cmluZykiPnNldEZyZXF1ZW5jeTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNzZXRJZGVudGlmaWVyKGphdmEubGFuZy5TdHJpbmcpIj5zZXRJZGVudGlmaWVyPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI3RvU3RyaW5nKCkiPnRvU3RyaW5nPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90aWNTeXN0ZW1JbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90aWNTeXN0ZW1JbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjZ2V0TG9jYWxPcmllbnRhdGlvbigpIj5nZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCNnZXRMb2NhbFBvc2l0aW9uKCkiPmdldExvY2FsUG9zaXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI3NldExvY2FsT3JpZW50YXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI3NldExvY2FsUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsUG9zaXRpb248L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9DbGFzcygpIj5iYXNpY0dldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZUludGVybmFsQ29udGFpbmVyLCBlSW52b2tlLCBlSXNQcm94eSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURpcmVjdFJlc291cmNlLCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVByb3h5VVJJLCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVVUklGcmFnbWVudFNlZ21lbnQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkLCBlTm90aWZ5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVxdWFscywgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZW5zb3JTeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNnZXRGcmVxdWVuY3koKSI+Z2V0RnJlcXVlbmN5PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI2dldElkZW50aWZpZXIoKSI+Z2V0SWRlbnRpZmllcjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNzZXRGcmVxdWVuY3koamF2YS5sYW5nLlN0cmluZykiPnNldEZyZXF1ZW5jeTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNzZXRJZGVudGlmaWVyKGphdmEubGFuZy5TdHJpbmcpIj5zZXRJZGVudGlmaWVyPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxPcmllbnRhdGlvbigpIj5nZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbFBvc2l0aW9uKCkiPmdldExvY2FsUG9zaXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsT3JpZW50YXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPnNldExvY2FsUG9zaXRpb248L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU2Vuc29yU3lzdGVtSW1wbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmYzZDY2ZmQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbC5odG1sCkBAIC0wLDAgKzEsMzY5IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjMgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9Ik9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TZW5zb3JTeXN0ZW1JbXBsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9GT05UPgorPEJSPgorQ2xhc3MgT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsCisgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbAorICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbAorICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGw8L0E+CisgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdGljU3lzdGVtSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNlbnNvclN5c3RlbUltcGw8L0E+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGw8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvclN5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGw8L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlbnNvclN5c3RlbUltcGw8L0E+PERUPmltcGxlbWVudHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T2JqZWN0IFRyYWNraW5nIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorIDxwPgorIDwvcD4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09IE5FU1RFRCBDTEFTUyBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk5lc3RlZCBDbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FQWRhcHRlckxpc3QmbHQ7RSBleHRlbmRzIGphdmEubGFuZy5PYmplY3QgJiBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyJmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FT2JzZXJ2YWJsZUFkYXB0ZXJMaXN0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LkVTdG9yZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVMQVNUX0VPQkpFQ1RfRkxBRzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVPUFBPU0lURV9GRUFUVVJFX0JBU0U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU2Vuc29yU3lzdGVtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlbnNvclN5c3RlbUltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNlSXNTZXQoaW50KSI+ZUlzU2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+ZVNldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI2dldEZyZXF1ZW5jeSgpIj5nZXRGcmVxdWVuY3k8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwjZ2V0SWRlbnRpZmllcigpIj5nZXRJZGVudGlmaWVyPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI3NldEZyZXF1ZW5jeShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0RnJlcXVlbmN5PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI3NldElkZW50aWZpZXIoamF2YS5sYW5nLlN0cmluZykiPnNldElkZW50aWZpZXI8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwjdG9TdHJpbmcoKSI+dG9TdHJpbmc8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RpY1N5c3RlbUltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY1N5c3RlbUltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCNnZXRMb2NhbE9yaWVudGF0aW9uKCkiPmdldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI2dldExvY2FsUG9zaXRpb24oKSI+Z2V0TG9jYWxQb3NpdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjc2V0TG9jYWxPcmllbnRhdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxPcmllbnRhdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjc2V0TG9jYWxQb3NpdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxQb3NpdGlvbjwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3lzdGVtSW1wbDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjYmFzaWNHZXRCYXNlX0NsYXNzKCkiPmJhc2ljR2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlQ2xhc3MsIGVDb250YWluZXJGZWF0dXJlSUQsIGVEZWxpdmVyLCBlSW50ZXJuYWxDb250YWluZXIsIGVJbnZva2UsIGVJc1Byb3h5LCBlU2V0Q2xhc3MsIGVTZXREZWxpdmVyLCBlU2V0UHJveHlVUkk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQmFzZVN0cnVjdHVyYWxGZWF0dXJlSUQsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXJGZWF0dXJlLCBlQmFzaWNTZXRDb250YWluZXIsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRhaW5zLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGlyZWN0UmVzb3VyY2UsIGVEeW5hbWljQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlRHluYW1pY0dldCwgZUR5bmFtaWNHZXQsIGVEeW5hbWljSW52ZXJzZUFkZCwgZUR5bmFtaWNJbnZlcnNlUmVtb3ZlLCBlRHluYW1pY0ludm9rZSwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1Vuc2V0LCBlRHluYW1pY1Vuc2V0LCBlR2V0LCBlR2V0LCBlR2V0LCBlSW50ZXJuYWxSZXNvdXJjZSwgZUludmVyc2VBZGQsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZVJlbW92ZSwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZU9iamVjdEZvclVSSUZyYWdtZW50U2VnbWVudCwgZU9wZW5HZXQsIGVPcGVuSXNTZXQsIGVPcGVuU2V0LCBlT3BlblVuc2V0LCBlUHJveHlVUkksIGVSZXNvbHZlUHJveHksIGVSZXNvdXJjZSwgZVNldCwgZVNldFJlc291cmNlLCBlU2V0U3RvcmUsIGVTZXR0aW5nLCBlU3RvcmUsIGVVbnNldCwgZVVSSUZyYWdtZW50U2VnbWVudCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbElzU2V0LCBlVmlydHVhbFNldCwgZVZpcnR1YWxVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQsIGVOb3RpZnk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB3YWl0LCB3YWl0LCB3YWl0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvclN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JTeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI2dldEZyZXF1ZW5jeSgpIj5nZXRGcmVxdWVuY3k8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjZ2V0SWRlbnRpZmllcigpIj5nZXRJZGVudGlmaWVyPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI3NldEZyZXF1ZW5jeShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0RnJlcXVlbmN5PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI3NldElkZW50aWZpZXIoamF2YS5sYW5nLlN0cmluZykiPnNldElkZW50aWZpZXI8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbE9yaWVudGF0aW9uKCkiPmdldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsUG9zaXRpb24oKSI+Z2V0TG9jYWxQb3NpdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjc2V0TG9jYWxPcmllbnRhdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxPcmllbnRhdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjc2V0TG9jYWxQb3NpdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxQb3NpdGlvbjwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PblBvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ik9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU2Vuc29yU3lzdGVtSW1wbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT25Qb3J0SW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PblBvcnRJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzZlYTdmYQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT25Qb3J0SW1wbC5odG1sCkBAIC0wLDAgKzEsNTg2IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjMgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitPblBvcnRJbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuT25Qb3J0SW1wbCBjbGFzcyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iT25Qb3J0SW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9PblBvcnRJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BlZGVzdHJpYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJPblBvcnRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIE9uUG9ydEltcGw8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsCisgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsCisgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5PblBvcnRJbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PblBvcnQ8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+T25Qb3J0SW1wbDwvQj48RFQ+ZXh0ZW5kcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDxEVD5pbXBsZW1lbnRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9uUG9ydDwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T24gUG9ydDwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgPHA+CisgVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgPHVsPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCNnZXRQb3J0KCkiPjxDT0RFPjxlbT5Qb3J0PC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT25Qb3J0SW1wbC5odG1sI2dldEJhc2VfUGFyYW1ldGVyKCkiPjxDT0RFPjxlbT5CYXNlIFBhcmFtZXRlcjwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVBZGFwdGVyTGlzdCZsdDtFIGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCAmIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXImZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVPYnNlcnZhYmxlQWRhcHRlckxpc3Q8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QuRVN0b3JlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RUxBU1RfRU9CSkVDVF9GTEFHPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RU9QUE9TSVRFX0ZFQVRVUkVfQkFTRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLnVtbDIudW1sLlBhcmFtZXRlcjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PblBvcnRJbXBsLmh0bWwjYmFzaWNHZXRCYXNlX1BhcmFtZXRlcigpIj5iYXNpY0dldEJhc2VfUGFyYW1ldGVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Qb3J0PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PblBvcnRJbXBsLmh0bWwjYmFzaWNHZXRQb3J0KCkiPmJhc2ljR2V0UG9ydDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuT2JqZWN0PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPmVHZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgIGJvb2xlYW4mbmJzcDtyZXNvbHZlLAorICAgICBib29sZWFuJm5ic3A7Y29yZVR5cGUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Ym9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PblBvcnRJbXBsLmh0bWwjZUlzU2V0KGludCkiPmVJc1NldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtuZXdWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLnVtbDIudW1sLlBhcmFtZXRlcjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PblBvcnRJbXBsLmh0bWwjZ2V0QmFzZV9QYXJhbWV0ZXIoKSI+Z2V0QmFzZV9QYXJhbWV0ZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBvcnQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCNnZXRQb3J0KCkiPmdldFBvcnQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PblBvcnRJbXBsLmh0bWwjc2V0QmFzZV9QYXJhbWV0ZXIob3JnLmVjbGlwc2UudW1sMi51bWwuUGFyYW1ldGVyKSI+c2V0QmFzZV9QYXJhbWV0ZXI8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5QYXJhbWV0ZXImbmJzcDtuZXdCYXNlX1BhcmFtZXRlcik8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCNzZXRQb3J0KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Qb3J0KSI+c2V0UG9ydDwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Qb3J0PC9BPiZuYnNwO25ld1BvcnQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZUludGVybmFsQ29udGFpbmVyLCBlSW52b2tlLCBlSXNQcm94eSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURpcmVjdFJlc291cmNlLCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVByb3h5VVJJLCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVVUklGcmFnbWVudFNlZ21lbnQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQsIHRvU3RyaW5nPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0UG9ydCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRQb3J0PC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBvcnQ8L0E+IDxCPmdldFBvcnQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCNnZXRQb3J0KCkiPmdldFBvcnQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T25Qb3J0PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPlBvcnQ8L2VtPicgcmVmZXJlbmNlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCNzZXRQb3J0KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Qb3J0KSI+PENPREU+T25Qb3J0LnNldFBvcnQoUG9ydCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRPblBvcnRfUG9ydCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRPblBvcnRfUG9ydCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImJhc2ljR2V0UG9ydCgpIj48IS0tIC0tPjwvQT48SDM+CitiYXNpY0dldFBvcnQ8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UG9ydDwvQT4gPEI+YmFzaWNHZXRQb3J0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0UG9ydChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG9ydCkiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFBvcnQ8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldFBvcnQ8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Qb3J0PC9BPiZuYnNwO25ld1BvcnQpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwjc2V0UG9ydChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG9ydCkiPnNldFBvcnQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T25Qb3J0PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld1BvcnQ8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5Qb3J0PC9lbT4nIHJlZmVyZW5jZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwjZ2V0UG9ydCgpIj48Q09ERT5PblBvcnQuZ2V0UG9ydCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEJhc2VfUGFyYW1ldGVyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEJhc2VfUGFyYW1ldGVyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UudW1sMi51bWwuUGFyYW1ldGVyIDxCPmdldEJhc2VfUGFyYW1ldGVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwjZ2V0QmFzZV9QYXJhbWV0ZXIoKSI+Z2V0QmFzZV9QYXJhbWV0ZXI8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T25Qb3J0PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgUGFyYW1ldGVyPC9lbT4nIHJlZmVyZW5jZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwjc2V0QmFzZV9QYXJhbWV0ZXIob3JnLmVjbGlwc2UudW1sMi51bWwuUGFyYW1ldGVyKSI+PENPREU+T25Qb3J0LnNldEJhc2VfUGFyYW1ldGVyKFBhcmFtZXRlcik8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRPblBvcnRfQmFzZV9QYXJhbWV0ZXIoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0T25Qb3J0X0Jhc2VfUGFyYW1ldGVyKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iYmFzaWNHZXRCYXNlX1BhcmFtZXRlcigpIj48IS0tIC0tPjwvQT48SDM+CitiYXNpY0dldEJhc2VfUGFyYW1ldGVyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UudW1sMi51bWwuUGFyYW1ldGVyIDxCPmJhc2ljR2V0QmFzZV9QYXJhbWV0ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRCYXNlX1BhcmFtZXRlcihvcmcuZWNsaXBzZS51bWwyLnVtbC5QYXJhbWV0ZXIpIj48IS0tIC0tPjwvQT48SDM+CitzZXRCYXNlX1BhcmFtZXRlcjwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0QmFzZV9QYXJhbWV0ZXI8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhcmFtZXRlciZuYnNwO25ld0Jhc2VfUGFyYW1ldGVyKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sI3NldEJhc2VfUGFyYW1ldGVyKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhcmFtZXRlcikiPnNldEJhc2VfUGFyYW1ldGVyPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9uUG9ydDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdCYXNlX1BhcmFtZXRlcjwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgUGFyYW1ldGVyPC9lbT4nIHJlZmVyZW5jZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwjZ2V0QmFzZV9QYXJhbWV0ZXIoKSI+PENPREU+T25Qb3J0LmdldEJhc2VfUGFyYW1ldGVyKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj48IS0tIC0tPjwvQT48SDM+CitlR2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLk9iamVjdCA8Qj5lR2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtyZXNvbHZlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sZWFuJm5ic3A7Y29yZVR5cGUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lR2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+ZUdldDwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorZVNldDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+ZVNldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7bmV3VmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lU2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+ZVNldDwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVVbnNldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlVW5zZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmVVbnNldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVVuc2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+ZVVuc2V0PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUlzU2V0KGludCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VJc1NldDwvSDM+Cis8UFJFPgorcHVibGljIGJvb2xlYW4gPEI+ZUlzU2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lSXNTZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5lSXNTZXQ8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9PblBvcnRJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BlZGVzdHJpYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJPblBvcnRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGVkZXN0cmlhbkltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGVkZXN0cmlhbkltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40OGYzNTc0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QZWRlc3RyaWFuSW1wbC5odG1sCkBAIC0wLDAgKzEsMzcwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjMgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitQZWRlc3RyaWFuSW1wbAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBlZGVzdHJpYW5JbXBsIGNsYXNzIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJQZWRlc3RyaWFuSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9QZWRlc3RyaWFuSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT25Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxEYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QZWRlc3RyaWFuSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlBlZGVzdHJpYW5JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BZ2VudEltcGwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0ZPTlQ+Cis8QlI+CitDbGFzcyBQZWRlc3RyaWFuSW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsT2JqZWN0SW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWdlbnRJbXBsPC9BPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSHVtYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuSHVtYW5JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBlZGVzdHJpYW5JbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5IdW1hbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QZWRlc3RyaWFuPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5QZWRlc3RyaWFuSW1wbDwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IdW1hbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5IdW1hbkltcGw8L0E+PERUPmltcGxlbWVudHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBlZGVzdHJpYW48L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBlZGVzdHJpYW48L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorIDxwPgorIDwvcD4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09IE5FU1RFRCBDTEFTUyBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk5lc3RlZCBDbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FQWRhcHRlckxpc3QmbHQ7RSBleHRlbmRzIGphdmEubGFuZy5PYmplY3QgJiBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyJmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FT2JzZXJ2YWJsZUFkYXB0ZXJMaXN0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LkVTdG9yZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVMQVNUX0VPQkpFQ1RfRkxBRzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVPUFBPU0lURV9GRUFUVVJFX0JBU0U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWdlbnRJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BZ2VudEltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj5lR2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwjZUlzU2V0KGludCkiPmVJc1NldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+ZVNldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sI2VVbnNldChpbnQpIj5lVW5zZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCNnZXRNb3Zlc092ZXIoKSI+Z2V0TW92ZXNPdmVyPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGh5c2ljYWxPYmplY3RJbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sI2Jhc2ljR2V0SGFzU3VyZmFjZSgpIj5iYXNpY0dldEhhc1N1cmZhY2U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNnZXRFdmVsb3Zlc0luKCkiPmdldEV2ZWxvdmVzSW48L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNnZXRIYXNTdXJmYWNlKCkiPmdldEhhc1N1cmZhY2U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNzZXRIYXNTdXJmYWNlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlKSI+c2V0SGFzU3VyZmFjZTwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3lzdGVtSW1wbDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjYmFzaWNHZXRCYXNlX0NsYXNzKCkiPmJhc2ljR2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlQ2xhc3MsIGVDb250YWluZXJGZWF0dXJlSUQsIGVEZWxpdmVyLCBlSW50ZXJuYWxDb250YWluZXIsIGVJbnZva2UsIGVJc1Byb3h5LCBlU2V0Q2xhc3MsIGVTZXREZWxpdmVyLCBlU2V0UHJveHlVUkk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQmFzZVN0cnVjdHVyYWxGZWF0dXJlSUQsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXJGZWF0dXJlLCBlQmFzaWNTZXRDb250YWluZXIsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRhaW5zLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGlyZWN0UmVzb3VyY2UsIGVEeW5hbWljQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlRHluYW1pY0dldCwgZUR5bmFtaWNHZXQsIGVEeW5hbWljSW52ZXJzZUFkZCwgZUR5bmFtaWNJbnZlcnNlUmVtb3ZlLCBlRHluYW1pY0ludm9rZSwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1Vuc2V0LCBlRHluYW1pY1Vuc2V0LCBlR2V0LCBlR2V0LCBlR2V0LCBlSW50ZXJuYWxSZXNvdXJjZSwgZUludmVyc2VBZGQsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZVJlbW92ZSwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZU9iamVjdEZvclVSSUZyYWdtZW50U2VnbWVudCwgZU9wZW5HZXQsIGVPcGVuSXNTZXQsIGVPcGVuU2V0LCBlT3BlblVuc2V0LCBlUHJveHlVUkksIGVSZXNvbHZlUHJveHksIGVSZXNvdXJjZSwgZVNldCwgZVNldFJlc291cmNlLCBlU2V0U3RvcmUsIGVTZXR0aW5nLCBlU3RvcmUsIGVVbnNldCwgZVVSSUZyYWdtZW50U2VnbWVudCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbElzU2V0LCBlVmlydHVhbFNldCwgZVZpcnR1YWxVbnNldCwgdG9TdHJpbmc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkLCBlTm90aWZ5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVxdWFscywgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BZ2VudCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sI2dldE1vdmVzT3ZlcigpIj5nZXRNb3Zlc092ZXI8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBoeXNpY2FsT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0RXZlbG92ZXNJbigpIj5nZXRFdmVsb3Zlc0luPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0SGFzU3VyZmFjZSgpIj5nZXRIYXNTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjc2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPnNldEhhc1N1cmZhY2U8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1BlZGVzdHJpYW5JbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PblBvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbERhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BlZGVzdHJpYW5JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUGVkZXN0cmlhbkltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkFnZW50SW1wbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxEYXRhSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbERhdGFJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjk4MjFhYQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxEYXRhSW1wbC5odG1sCkBAIC0wLDAgKzEsNTkyIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjMgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitQaHlzaWNhbERhdGFJbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGh5c2ljYWxEYXRhSW1wbCBjbGFzcyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iUGh5c2ljYWxEYXRhSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9QaHlzaWNhbERhdGFJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QZWRlc3RyaWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsRGF0YUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQaHlzaWNhbERhdGFJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIFBoeXNpY2FsRGF0YUltcGw8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsCisgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsCisgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QaHlzaWNhbERhdGFJbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbERhdGE8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+UGh5c2ljYWxEYXRhSW1wbDwvQj48RFQ+ZXh0ZW5kcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDxEVD5pbXBsZW1lbnRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsRGF0YTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGh5c2ljYWwgRGF0YTwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgPHA+CisgVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgPHVsPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsRGF0YUltcGwuaHRtbCNnZXRCYXNlX0RhdGFUeXBlKCkiPjxDT0RFPjxlbT5CYXNlIERhdGEgVHlwZTwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsRGF0YUltcGwuaHRtbCNnZXRVbml0KCkiPjxDT0RFPjxlbT5Vbml0PC9lbT48L0NPREU+PC9BPjwvbGk+CisgPC91bD4KKyA8L3A+Cis8UD4KKworPFA+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PSBORVNURUQgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0ibmVzdGVkX2NsYXNzX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5OZXN0ZWQgQ2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRUFkYXB0ZXJMaXN0Jmx0O0UgZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0ICYgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciZndDssIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRU9ic2VydmFibGVBZGFwdGVyTGlzdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdC5FU3RvcmU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FTEFTVF9FT0JKRUNUX0ZMQUc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FT1BQT1NJVEVfRkVBVFVSRV9CQVNFPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxEYXRhSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9EYXRhVHlwZSgpIj5iYXNpY0dldEJhc2VfRGF0YVR5cGU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5PYmplY3Q8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxEYXRhSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgYm9vbGVhbiZuYnNwO3Jlc29sdmUsCisgICAgIGJvb2xlYW4mbmJzcDtjb3JlVHlwZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Ym9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbERhdGFJbXBsLmh0bWwjZUlzU2V0KGludCkiPmVJc1NldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbERhdGFJbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj5lU2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7bmV3VmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxEYXRhSW1wbC5odG1sI2VVbnNldChpbnQpIj5lVW5zZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsRGF0YUltcGwuaHRtbCNnZXRCYXNlX0RhdGFUeXBlKCkiPmdldEJhc2VfRGF0YVR5cGU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbERhdGFJbXBsLmh0bWwjZ2V0VW5pdCgpIj5nZXRVbml0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsRGF0YUltcGwuaHRtbCNzZXRCYXNlX0RhdGFUeXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlKSI+c2V0QmFzZV9EYXRhVHlwZTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlJm5ic3A7bmV3QmFzZV9EYXRhVHlwZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbERhdGFJbXBsLmh0bWwjc2V0VW5pdChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVW5pdEtpbmQpIj5zZXRVbml0PC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VW5pdEtpbmQ8L0E+Jm5ic3A7bmV3VW5pdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbERhdGFJbXBsLmh0bWwjdG9TdHJpbmcoKSI+dG9TdHJpbmc8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVDbGFzcywgZUNvbnRhaW5lckZlYXR1cmVJRCwgZURlbGl2ZXIsIGVJbnRlcm5hbENvbnRhaW5lciwgZUludm9rZSwgZUlzUHJveHksIGVTZXRDbGFzcywgZVNldERlbGl2ZXIsIGVTZXRQcm94eVVSSTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVCYXNlU3RydWN0dXJhbEZlYXR1cmVJRCwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lckZlYXR1cmUsIGVCYXNpY1NldENvbnRhaW5lciwgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGFpbnMsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEaXJlY3RSZXNvdXJjZSwgZUR5bmFtaWNCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVEeW5hbWljR2V0LCBlRHluYW1pY0dldCwgZUR5bmFtaWNJbnZlcnNlQWRkLCBlRHluYW1pY0ludmVyc2VSZW1vdmUsIGVEeW5hbWljSW52b2tlLCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljVW5zZXQsIGVEeW5hbWljVW5zZXQsIGVHZXQsIGVHZXQsIGVHZXQsIGVJbnRlcm5hbFJlc291cmNlLCBlSW52ZXJzZUFkZCwgZUludmVyc2VBZGQsIGVJbnZlcnNlUmVtb3ZlLCBlSW52ZXJzZVJlbW92ZSwgZUludm9rZSwgZUlzU2V0LCBlT2JqZWN0Rm9yVVJJRnJhZ21lbnRTZWdtZW50LCBlT3BlbkdldCwgZU9wZW5Jc1NldCwgZU9wZW5TZXQsIGVPcGVuVW5zZXQsIGVQcm94eVVSSSwgZVJlc29sdmVQcm94eSwgZVJlc291cmNlLCBlU2V0LCBlU2V0UmVzb3VyY2UsIGVTZXRTdG9yZSwgZVNldHRpbmcsIGVTdG9yZSwgZVVuc2V0LCBlVVJJRnJhZ21lbnRTZWdtZW50LCBlVmlydHVhbEdldCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsSXNTZXQsIGVWaXJ0dWFsU2V0LCBlVmlydHVhbFVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0QmFzZV9EYXRhVHlwZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRCYXNlX0RhdGFUeXBlPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUgPEI+Z2V0QmFzZV9EYXRhVHlwZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCNnZXRCYXNlX0RhdGFUeXBlKCkiPmdldEJhc2VfRGF0YVR5cGU8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxEYXRhPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGJhc2VfIGRhdGEgdHlwZTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCNzZXRCYXNlX0RhdGFUeXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlKSI+PENPREU+UGh5c2ljYWxEYXRhLnNldEJhc2VfRGF0YVR5cGUoRGF0YVR5cGUpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGh5c2ljYWxEYXRhX0Jhc2VfRGF0YVR5cGUoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0UGh5c2ljYWxEYXRhX0Jhc2VfRGF0YVR5cGUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJiYXNpY0dldEJhc2VfRGF0YVR5cGUoKSI+PCEtLSAtLT48L0E+PEgzPgorYmFzaWNHZXRCYXNlX0RhdGFUeXBlPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UudW1sMi51bWwuRGF0YVR5cGUgPEI+YmFzaWNHZXRCYXNlX0RhdGFUeXBlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGRhdGEgdHlwZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0QmFzZV9EYXRhVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5EYXRhVHlwZSkiPjwhLS0gLS0+PC9BPjxIMz4KK3NldEJhc2VfRGF0YVR5cGU8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldEJhc2VfRGF0YVR5cGU8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkRhdGFUeXBlJm5ic3A7bmV3QmFzZV9EYXRhVHlwZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwjc2V0QmFzZV9EYXRhVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5EYXRhVHlwZSkiPnNldEJhc2VfRGF0YVR5cGU8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxEYXRhPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld0Jhc2VfRGF0YVR5cGU8L0NPREU+IC0gdGhlIG5ldyBiYXNlXyBkYXRhIHR5cGU8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwjZ2V0QmFzZV9EYXRhVHlwZSgpIj48Q09ERT5QaHlzaWNhbERhdGEuZ2V0QmFzZV9EYXRhVHlwZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFVuaXQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0VW5pdDwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPiA8Qj5nZXRVbml0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sI2dldFVuaXQoKSI+Z2V0VW5pdDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbERhdGE8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdW5pdDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlVuaXRLaW5kPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sI3NldFVuaXQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlVuaXRLaW5kKSI+PENPREU+UGh5c2ljYWxEYXRhLnNldFVuaXQoVW5pdEtpbmQpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGh5c2ljYWxEYXRhX1VuaXQoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0UGh5c2ljYWxEYXRhX1VuaXQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRVbml0KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Vbml0S2luZCkiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFVuaXQ8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldFVuaXQ8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPiZuYnNwO25ld1VuaXQpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sI3NldFVuaXQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlVuaXRLaW5kKSI+c2V0VW5pdDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbERhdGE8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3VW5pdDwvQ09ERT4gLSB0aGUgbmV3IHVuaXQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVW5pdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5Vbml0S2luZDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCNnZXRVbml0KCkiPjxDT0RFPlBoeXNpY2FsRGF0YS5nZXRVbml0KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj48IS0tIC0tPjwvQT48SDM+CitlR2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLk9iamVjdCA8Qj5lR2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtyZXNvbHZlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sZWFuJm5ic3A7Y29yZVR5cGUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZUdldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmVHZXQ8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8REQ+PENPREU+cmVzb2x2ZTwvQ09ERT4gLSB0aGUgcmVzb2x2ZTxERD48Q09ERT5jb3JlVHlwZTwvQ09ERT4gLSB0aGUgY29yZSB0eXBlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBvYmplY3Q8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorZVNldDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+ZVNldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7bmV3VmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVNldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmVTZXQ8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8REQ+PENPREU+bmV3VmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZVVuc2V0KGludCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VVbnNldDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+ZVVuc2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVVuc2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+ZVVuc2V0PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlSXNTZXQoaW50KSI+PCEtLSAtLT48L0E+PEgzPgorZUlzU2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgYm9vbGVhbiA8Qj5lSXNTZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lSXNTZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5lSXNTZXQ8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dHJ1ZSwgaWYgc3VjY2Vzc2Z1bDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0idG9TdHJpbmcoKSI+PCEtLSAtLT48L0E+PEgzPgordG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPnRvU3RyaW5nPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+dG9TdHJpbmc8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1BoeXNpY2FsRGF0YUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BlZGVzdHJpYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxEYXRhSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlBoeXNpY2FsRGF0YUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTBiMzIyMgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwKQEAgLTAsMCArMSw1NTkgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyMyBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1BoeXNpY2FsT2JqZWN0SW1wbAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsT2JqZWN0SW1wbCBjbGFzcyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iUGh5c2ljYWxPYmplY3RJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxEYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhbmV0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9GT05UPgorPEJSPgorQ2xhc3MgUGh5c2ljYWxPYmplY3RJbXBsPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsCisgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbAorICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbAorICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGw8L0E+CisgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGh5c2ljYWxPYmplY3RJbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkRpcmVjdCBLbm93biBTdWJjbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFnZW50SW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0J1aWxkaW5nSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkJ1aWxkaW5nSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYW5ldEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QbGFuZXRJbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TdXJmYWNlSW1wbDwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5QaHlzaWNhbE9iamVjdEltcGw8L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PERUPmltcGxlbWVudHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGh5c2ljYWwgT2JqZWN0PC9iPjwvZW0+Jy4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyA8cD4KKyBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyA8dWw+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZ2V0RXZlbG92ZXNJbigpIj48Q09ERT48ZW0+RXZlbG92ZXMgSW48L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNnZXRIYXNTdXJmYWNlKCkiPjxDT0RFPjxlbT5IYXMgU3VyZmFjZTwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVBZGFwdGVyTGlzdCZsdDtFIGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCAmIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXImZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVPYnNlcnZhYmxlQWRhcHRlckxpc3Q8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QuRVN0b3JlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RUxBU1RfRU9CSkVDVF9GTEFHPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RU9QUE9TSVRFX0ZFQVRVUkVfQkFTRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdXJmYWNlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNiYXNpY0dldEhhc1N1cmZhY2UoKSI+YmFzaWNHZXRIYXNTdXJmYWNlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5PYmplY3Q8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj5lR2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICBib29sZWFuJm5ic3A7cmVzb2x2ZSwKKyAgICAgYm9vbGVhbiZuYnNwO2NvcmVUeXBlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2Jvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZUlzU2V0KGludCkiPmVJc1NldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+ZVNldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO25ld1ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZVVuc2V0KGludCkiPmVVbnNldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3QmbHQ7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Vudmlyb25tZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5FbnZpcm9ubWVudDwvQT4mZ3Q7PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sI2dldEV2ZWxvdmVzSW4oKSI+Z2V0RXZlbG92ZXNJbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3VyZmFjZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZ2V0SGFzU3VyZmFjZSgpIj5nZXRIYXNTdXJmYWNlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjc2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPnNldEhhc1N1cmZhY2U8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3VyZmFjZTwvQT4mbmJzcDtuZXdIYXNTdXJmYWNlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3lzdGVtSW1wbDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjYmFzaWNHZXRCYXNlX0NsYXNzKCkiPmJhc2ljR2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlQ2xhc3MsIGVDb250YWluZXJGZWF0dXJlSUQsIGVEZWxpdmVyLCBlSW50ZXJuYWxDb250YWluZXIsIGVJbnZva2UsIGVJc1Byb3h5LCBlU2V0Q2xhc3MsIGVTZXREZWxpdmVyLCBlU2V0UHJveHlVUkk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQmFzZVN0cnVjdHVyYWxGZWF0dXJlSUQsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXJGZWF0dXJlLCBlQmFzaWNTZXRDb250YWluZXIsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRhaW5zLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGlyZWN0UmVzb3VyY2UsIGVEeW5hbWljQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlRHluYW1pY0dldCwgZUR5bmFtaWNHZXQsIGVEeW5hbWljSW52ZXJzZUFkZCwgZUR5bmFtaWNJbnZlcnNlUmVtb3ZlLCBlRHluYW1pY0ludm9rZSwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1Vuc2V0LCBlRHluYW1pY1Vuc2V0LCBlR2V0LCBlR2V0LCBlR2V0LCBlSW50ZXJuYWxSZXNvdXJjZSwgZUludmVyc2VBZGQsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZVJlbW92ZSwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZU9iamVjdEZvclVSSUZyYWdtZW50U2VnbWVudCwgZU9wZW5HZXQsIGVPcGVuSXNTZXQsIGVPcGVuU2V0LCBlT3BlblVuc2V0LCBlUHJveHlVUkksIGVSZXNvbHZlUHJveHksIGVSZXNvdXJjZSwgZVNldCwgZVNldFJlc291cmNlLCBlU2V0U3RvcmUsIGVTZXR0aW5nLCBlU3RvcmUsIGVVbnNldCwgZVVSSUZyYWdtZW50U2VnbWVudCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbElzU2V0LCBlVmlydHVhbFNldCwgZVZpcnR1YWxVbnNldCwgdG9TdHJpbmc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkLCBlTm90aWZ5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVxdWFscywgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImdldEV2ZWxvdmVzSW4oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0RXZlbG92ZXNJbjwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdCZsdDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVudmlyb25tZW50PC9BPiZndDsgPEI+Z2V0RXZlbG92ZXNJbjwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0RXZlbG92ZXNJbigpIj5nZXRFdmVsb3Zlc0luPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+RXZlbG92ZXMgSW48L2VtPicgcmVmZXJlbmNlIGxpc3QuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGh5c2ljYWxPYmplY3RfRXZlbG92ZXNJbigpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRQaHlzaWNhbE9iamVjdF9FdmVsb3Zlc0luKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0SGFzU3VyZmFjZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRIYXNTdXJmYWNlPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+IDxCPmdldEhhc1N1cmZhY2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEhhc1N1cmZhY2UoKSI+Z2V0SGFzU3VyZmFjZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPkhhcyBTdXJmYWNlPC9lbT4nIHJlZmVyZW5jZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNzZXRIYXNTdXJmYWNlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlKSI+PENPREU+UGh5c2ljYWxPYmplY3Quc2V0SGFzU3VyZmFjZShTdXJmYWNlKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFBoeXNpY2FsT2JqZWN0X0hhc1N1cmZhY2UoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0UGh5c2ljYWxPYmplY3RfSGFzU3VyZmFjZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImJhc2ljR2V0SGFzU3VyZmFjZSgpIj48IS0tIC0tPjwvQT48SDM+CitiYXNpY0dldEhhc1N1cmZhY2U8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3VyZmFjZTwvQT4gPEI+YmFzaWNHZXRIYXNTdXJmYWNlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPjwhLS0gLS0+PC9BPjxIMz4KK3NldEhhc1N1cmZhY2U8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldEhhc1N1cmZhY2U8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdXJmYWNlPC9BPiZuYnNwO25ld0hhc1N1cmZhY2UpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNzZXRIYXNTdXJmYWNlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlKSI+c2V0SGFzU3VyZmFjZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld0hhc1N1cmZhY2U8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5IYXMgU3VyZmFjZTwvZW0+JyByZWZlcmVuY2UuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0SGFzU3VyZmFjZSgpIj48Q09ERT5QaHlzaWNhbE9iamVjdC5nZXRIYXNTdXJmYWNlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj48IS0tIC0tPjwvQT48SDM+CitlR2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLk9iamVjdCA8Qj5lR2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtyZXNvbHZlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sZWFuJm5ic3A7Y29yZVR5cGUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lR2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TeXN0ZW1JbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDxERD48Q09ERT5yZXNvbHZlPC9DT0RFPiAtIHRoZSByZXNvbHZlPEREPjxDT0RFPmNvcmVUeXBlPC9DT0RFPiAtIHRoZSBjb3JlIHR5cGUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG9iamVjdDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+CitlU2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5lU2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtuZXdWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVTZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj5lU2V0PC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkPEREPjxDT0RFPm5ld1ZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWU8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVVbnNldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlVW5zZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmVVbnNldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVVuc2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2VVbnNldChpbnQpIj5lVW5zZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3lzdGVtSW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVJc1NldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlSXNTZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBib29sZWFuIDxCPmVJc1NldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZUlzU2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3lzdGVtSW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dHJ1ZSwgaWYgc3VjY2Vzc2Z1bDwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbERhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGFuZXRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlBoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYW5ldEltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhbmV0SW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIyODhhNzAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYW5ldEltcGwuaHRtbApAQCAtMCwwICsxLDM1MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjIzIENFVCAyMDEyIC0tPgorPFRJVExFPgorUGxhbmV0SW1wbAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBsYW5ldEltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlBsYW5ldEltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUGxhbmV0SW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhbmV0SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlBsYW5ldEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsT2JqZWN0SW1wbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIFBsYW5ldEltcGw8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsCisgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsCisgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QaHlzaWNhbE9iamVjdEltcGw8L0E+CisgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBsYW5ldEltcGw8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhbmV0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGFuZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+UGxhbmV0SW1wbDwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QaHlzaWNhbE9iamVjdEltcGw8L0E+PERUPmltcGxlbWVudHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYW5ldC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGxhbmV0PC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QbGFuZXQ8L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorIDxwPgorIDwvcD4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09IE5FU1RFRCBDTEFTUyBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk5lc3RlZCBDbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FQWRhcHRlckxpc3QmbHQ7RSBleHRlbmRzIGphdmEubGFuZy5PYmplY3QgJiBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyJmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FT2JzZXJ2YWJsZUFkYXB0ZXJMaXN0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LkVTdG9yZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVMQVNUX0VPQkpFQ1RfRkxBRzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVPUFBPU0lURV9GRUFUVVJFX0JBU0U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGh5c2ljYWxPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QaHlzaWNhbE9iamVjdEltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjYmFzaWNHZXRIYXNTdXJmYWNlKCkiPmJhc2ljR2V0SGFzU3VyZmFjZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZ2V0RXZlbG92ZXNJbigpIj5nZXRFdmVsb3Zlc0luPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZ2V0SGFzU3VyZmFjZSgpIj5nZXRIYXNTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjc2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPnNldEhhc1N1cmZhY2U8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9DbGFzcygpIj5iYXNpY0dldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZUludGVybmFsQ29udGFpbmVyLCBlSW52b2tlLCBlSXNQcm94eSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURpcmVjdFJlc291cmNlLCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVByb3h5VVJJLCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVVUklGcmFnbWVudFNlZ21lbnQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQsIHRvU3RyaW5nPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGh5c2ljYWxPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRFdmVsb3Zlc0luKCkiPmdldEV2ZWxvdmVzSW48L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRIYXNTdXJmYWNlKCkiPmdldEhhc1N1cmZhY2U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNzZXRIYXNTdXJmYWNlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlKSI+c2V0SGFzU3VyZmFjZTwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUGxhbmV0SW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhbmV0SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlBsYW5ldEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsT2JqZWN0SW1wbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA1OWU1ZjUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sCkBAIC0wLDAgKzEsNTMyIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjMgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitQbGF0Zm9ybUltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QbGF0Zm9ybUltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlBsYXRmb3JtSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9QbGF0Zm9ybUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYW5ldEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlBsYXRmb3JtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0ZPTlQ+Cis8QlI+CitDbGFzcyBQbGF0Zm9ybUltcGw8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsCisgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsCisgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QbGF0Zm9ybUltcGw8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGxhdGZvcm08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+RGlyZWN0IEtub3duIFN1YmNsYXNzZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY01pZGRsZXdhcmVJbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1NpbXVsYXRvckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU2ltdWxhdG9ySW1wbDwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5QbGF0Zm9ybUltcGw8L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PERUPmltcGxlbWVudHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGF0Zm9ybTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGxhdGZvcm08L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorIDxwPgorIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCNnZXRCYXNlX05vZGUoKSI+PENPREU+PGVtPkJhc2UgTm9kZTwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVBZGFwdGVyTGlzdCZsdDtFIGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCAmIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXImZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVPYnNlcnZhYmxlQWRhcHRlckxpc3Q8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QuRVN0b3JlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RUxBU1RfRU9CSkVDVF9GTEFHPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RU9QUE9TSVRFX0ZFQVRVUkVfQkFTRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLnVtbDIudW1sLk5vZGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwjYmFzaWNHZXRCYXNlX05vZGUoKSI+YmFzaWNHZXRCYXNlX05vZGU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLk9iamVjdDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPmVHZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgIGJvb2xlYW4mbmJzcDtyZXNvbHZlLAorICAgICBib29sZWFuJm5ic3A7Y29yZVR5cGUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Ym9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCNlSXNTZXQoaW50KSI+ZUlzU2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj5lU2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7bmV3VmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLnVtbDIudW1sLk5vZGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwjZ2V0QmFzZV9Ob2RlKCkiPmdldEJhc2VfTm9kZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sI3NldEJhc2VfTm9kZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Ob2RlKSI+c2V0QmFzZV9Ob2RlPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuTm9kZSZuYnNwO25ld0Jhc2VfTm9kZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9DbGFzcygpIj5iYXNpY0dldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZUludGVybmFsQ29udGFpbmVyLCBlSW52b2tlLCBlSXNQcm94eSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURpcmVjdFJlc291cmNlLCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVByb3h5VVJJLCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVVUklGcmFnbWVudFNlZ21lbnQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQsIHRvU3RyaW5nPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJnZXRCYXNlX05vZGUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QmFzZV9Ob2RlPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UudW1sMi51bWwuTm9kZSA8Qj5nZXRCYXNlX05vZGU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sI2dldEJhc2VfTm9kZSgpIj5nZXRCYXNlX05vZGU8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGF0Zm9ybTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5CYXNlIE5vZGU8L2VtPicgcmVmZXJlbmNlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sI3NldEJhc2VfTm9kZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Ob2RlKSI+PENPREU+UGxhdGZvcm0uc2V0QmFzZV9Ob2RlKE5vZGUpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGxhdGZvcm1fQmFzZV9Ob2RlKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFBsYXRmb3JtX0Jhc2VfTm9kZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImJhc2ljR2V0QmFzZV9Ob2RlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2Jhc2ljR2V0QmFzZV9Ob2RlPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UudW1sMi51bWwuTm9kZSA8Qj5iYXNpY0dldEJhc2VfTm9kZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldEJhc2VfTm9kZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Ob2RlKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0QmFzZV9Ob2RlPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRCYXNlX05vZGU8L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLk5vZGUmbmJzcDtuZXdCYXNlX05vZGUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCNzZXRCYXNlX05vZGUob3JnLmVjbGlwc2UudW1sMi51bWwuTm9kZSkiPnNldEJhc2VfTm9kZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBsYXRmb3JtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld0Jhc2VfTm9kZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgTm9kZTwvZW0+JyByZWZlcmVuY2UuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwjZ2V0QmFzZV9Ob2RlKCkiPjxDT0RFPlBsYXRmb3JtLmdldEJhc2VfTm9kZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+PCEtLSAtLT48L0E+PEgzPgorZUdldDwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5PYmplY3QgPEI+ZUdldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sZWFuJm5ic3A7cmVzb2x2ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbGVhbiZuYnNwO2NvcmVUeXBlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZUdldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPmVHZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3lzdGVtSW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8REQ+PENPREU+cmVzb2x2ZTwvQ09ERT4gLSB0aGUgcmVzb2x2ZTxERD48Q09ERT5jb3JlVHlwZTwvQ09ERT4gLSB0aGUgY29yZSB0eXBlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBvYmplY3Q8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorZVNldDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+ZVNldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7bmV3VmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lU2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+ZVNldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TeXN0ZW1JbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDxERD48Q09ERT5uZXdWYWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlVW5zZXQoaW50KSI+PCEtLSAtLT48L0E+PEgzPgorZVVuc2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5lVW5zZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVVbnNldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlSXNTZXQoaW50KSI+PCEtLSAtLT48L0E+PEgzPgorZUlzU2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgYm9vbGVhbiA8Qj5lSXNTZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVJc1NldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNlSXNTZXQoaW50KSI+ZUlzU2V0PC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRydWUsIGlmIHN1Y2Nlc3NmdWw8L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1BsYXRmb3JtSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhbmV0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUGxhdGZvcm1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NTU2YzhiCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sCkBAIC0wLDAgKzEsNTk1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjMgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitQb3J0SW1wbAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBvcnRJbXBsIGNsYXNzIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJQb3J0SW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9Qb3J0SW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QcmltaXRpdmVEYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlBvcnRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIFBvcnRJbXBsPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsCisgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbAorICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbAorICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUG9ydEltcGw8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Qb3J0PC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkRpcmVjdCBLbm93biBTdWJjbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RhdGFGbG93UG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5EYXRhRmxvd1BvcnRJbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2VydmljZVBvcnRJbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGFic3RyYWN0IGNsYXNzIDxCPlBvcnRJbXBsPC9CPjxEVD5leHRlbmRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPERUPmltcGxlbWVudHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBvcnQ8L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBvcnQ8L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorIDxwPgorIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sI2dldEJhc2VfUG9ydCgpIj48Q09ERT48ZW0+QmFzZSBQb3J0PC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCNnZXRTeW5jaHJvbml6YXRpb25Qb2xpY3koKSI+PENPREU+PGVtPlN5bmNocm9uaXphdGlvbiBQb2xpY3k8L2VtPjwvQ09ERT48L0E+PC9saT4KKyA8L3VsPgorIDwvcD4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09IE5FU1RFRCBDTEFTUyBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk5lc3RlZCBDbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FQWRhcHRlckxpc3QmbHQ7RSBleHRlbmRzIGphdmEubGFuZy5PYmplY3QgJiBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyJmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FT2JzZXJ2YWJsZUFkYXB0ZXJMaXN0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LkVTdG9yZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVMQVNUX0VPQkpFQ1RfRkxBRzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVPUFBPU0lURV9GRUFUVVJFX0JBU0U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwjYmFzaWNHZXRCYXNlX1BvcnQoKSI+YmFzaWNHZXRCYXNlX1BvcnQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5PYmplY3Q8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPmVHZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgIGJvb2xlYW4mbmJzcDtyZXNvbHZlLAorICAgICBib29sZWFuJm5ic3A7Y29yZVR5cGUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2Jvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCNlSXNTZXQoaW50KSI+ZUlzU2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj5lU2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7bmV3VmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwjZ2V0QmFzZV9Qb3J0KCkiPmdldEJhc2VfUG9ydDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeW5jaHJvbml6YXRpb25LaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sI2dldFN5bmNocm9uaXphdGlvblBvbGljeSgpIj5nZXRTeW5jaHJvbml6YXRpb25Qb2xpY3k8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCNzZXRCYXNlX1BvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCkiPnNldEJhc2VfUG9ydDwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQmbmJzcDtuZXdCYXNlX1BvcnQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCNzZXRTeW5jaHJvbml6YXRpb25Qb2xpY3kob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5bmNocm9uaXphdGlvbktpbmQpIj5zZXRTeW5jaHJvbml6YXRpb25Qb2xpY3k8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5bmNocm9uaXphdGlvbktpbmQ8L0E+Jm5ic3A7bmV3U3luY2hyb25pemF0aW9uUG9saWN5KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwjdG9TdHJpbmcoKSI+dG9TdHJpbmc8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVDbGFzcywgZUNvbnRhaW5lckZlYXR1cmVJRCwgZURlbGl2ZXIsIGVJbnRlcm5hbENvbnRhaW5lciwgZUludm9rZSwgZUlzUHJveHksIGVTZXRDbGFzcywgZVNldERlbGl2ZXIsIGVTZXRQcm94eVVSSTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVCYXNlU3RydWN0dXJhbEZlYXR1cmVJRCwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lckZlYXR1cmUsIGVCYXNpY1NldENvbnRhaW5lciwgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGFpbnMsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEaXJlY3RSZXNvdXJjZSwgZUR5bmFtaWNCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVEeW5hbWljR2V0LCBlRHluYW1pY0dldCwgZUR5bmFtaWNJbnZlcnNlQWRkLCBlRHluYW1pY0ludmVyc2VSZW1vdmUsIGVEeW5hbWljSW52b2tlLCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljVW5zZXQsIGVEeW5hbWljVW5zZXQsIGVHZXQsIGVHZXQsIGVHZXQsIGVJbnRlcm5hbFJlc291cmNlLCBlSW52ZXJzZUFkZCwgZUludmVyc2VBZGQsIGVJbnZlcnNlUmVtb3ZlLCBlSW52ZXJzZVJlbW92ZSwgZUludm9rZSwgZUlzU2V0LCBlT2JqZWN0Rm9yVVJJRnJhZ21lbnRTZWdtZW50LCBlT3BlbkdldCwgZU9wZW5Jc1NldCwgZU9wZW5TZXQsIGVPcGVuVW5zZXQsIGVQcm94eVVSSSwgZVJlc29sdmVQcm94eSwgZVJlc291cmNlLCBlU2V0LCBlU2V0UmVzb3VyY2UsIGVTZXRTdG9yZSwgZVNldHRpbmcsIGVTdG9yZSwgZVVuc2V0LCBlVVJJRnJhZ21lbnRTZWdtZW50LCBlVmlydHVhbEdldCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsSXNTZXQsIGVWaXJ0dWFsU2V0LCBlVmlydHVhbFVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0QmFzZV9Qb3J0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEJhc2VfUG9ydDwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQgPEI+Z2V0QmFzZV9Qb3J0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCNnZXRCYXNlX1BvcnQoKSI+Z2V0QmFzZV9Qb3J0PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Qb3J0PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGJhc2VfIHBvcnQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sI3NldEJhc2VfUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+PENPREU+UG9ydC5zZXRCYXNlX1BvcnQob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQb3J0X0Jhc2VfUG9ydCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRQb3J0X0Jhc2VfUG9ydCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImJhc2ljR2V0QmFzZV9Qb3J0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2Jhc2ljR2V0QmFzZV9Qb3J0PC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCA8Qj5iYXNpY0dldEJhc2VfUG9ydDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBvcmcuZWNsaXBzZS51bWwyLnVtbC4gcG9ydDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0QmFzZV9Qb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj48IS0tIC0tPjwvQT48SDM+CitzZXRCYXNlX1BvcnQ8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldEJhc2VfUG9ydDwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCZuYnNwO25ld0Jhc2VfUG9ydCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sI3NldEJhc2VfUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+c2V0QmFzZV9Qb3J0PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Qb3J0PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld0Jhc2VfUG9ydDwvQ09ERT4gLSB0aGUgbmV3IGJhc2VfIHBvcnQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sI2dldEJhc2VfUG9ydCgpIj48Q09ERT5Qb3J0LmdldEJhc2VfUG9ydCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFN5bmNocm9uaXphdGlvblBvbGljeSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTeW5jaHJvbml6YXRpb25Qb2xpY3k8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5bmNocm9uaXphdGlvbktpbmQ8L0E+IDxCPmdldFN5bmNocm9uaXphdGlvblBvbGljeTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwjZ2V0U3luY2hyb25pemF0aW9uUG9saWN5KCkiPmdldFN5bmNocm9uaXphdGlvblBvbGljeTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UG9ydDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzeW5jaHJvbml6YXRpb24gcG9saWN5PERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5TeW5jaHJvbml6YXRpb25LaW5kPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCNzZXRTeW5jaHJvbml6YXRpb25Qb2xpY3kob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5bmNocm9uaXphdGlvbktpbmQpIj48Q09ERT5Qb3J0LnNldFN5bmNocm9uaXphdGlvblBvbGljeShTeW5jaHJvbml6YXRpb25LaW5kKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFBvcnRfU3luY2hyb25pemF0aW9uUG9saWN5KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFBvcnRfU3luY2hyb25pemF0aW9uUG9saWN5KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0U3luY2hyb25pemF0aW9uUG9saWN5KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeW5jaHJvbml6YXRpb25LaW5kKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0U3luY2hyb25pemF0aW9uUG9saWN5PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRTeW5jaHJvbml6YXRpb25Qb2xpY3k8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT4mbmJzcDtuZXdTeW5jaHJvbml6YXRpb25Qb2xpY3kpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCNzZXRTeW5jaHJvbml6YXRpb25Qb2xpY3kob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5bmNocm9uaXphdGlvbktpbmQpIj5zZXRTeW5jaHJvbml6YXRpb25Qb2xpY3k8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBvcnQ8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3U3luY2hyb25pemF0aW9uUG9saWN5PC9DT0RFPiAtIHRoZSBuZXcgc3luY2hyb25pemF0aW9uIHBvbGljeTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+U3luY2hyb25pemF0aW9uS2luZDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwjZ2V0U3luY2hyb25pemF0aW9uUG9saWN5KCkiPjxDT0RFPlBvcnQuZ2V0U3luY2hyb25pemF0aW9uUG9saWN5KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj48IS0tIC0tPjwvQT48SDM+CitlR2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLk9iamVjdCA8Qj5lR2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtyZXNvbHZlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sZWFuJm5ic3A7Y29yZVR5cGUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZUdldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmVHZXQ8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8REQ+PENPREU+cmVzb2x2ZTwvQ09ERT4gLSB0aGUgcmVzb2x2ZTxERD48Q09ERT5jb3JlVHlwZTwvQ09ERT4gLSB0aGUgY29yZSB0eXBlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBvYmplY3Q8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorZVNldDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+ZVNldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7bmV3VmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVNldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmVTZXQ8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8REQ+PENPREU+bmV3VmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZVVuc2V0KGludCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VVbnNldDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+ZVVuc2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVVuc2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+ZVVuc2V0PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlSXNTZXQoaW50KSI+PCEtLSAtLT48L0E+PEgzPgorZUlzU2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgYm9vbGVhbiA8Qj5lSXNTZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lSXNTZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5lSXNTZXQ8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dHJ1ZSwgaWYgc3VjY2Vzc2Z1bDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0idG9TdHJpbmcoKSI+PCEtLSAtLT48L0E+PEgzPgordG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPnRvU3RyaW5nPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+dG9TdHJpbmc8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1BvcnRJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1ByaW1pdGl2ZURhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUG9ydEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QcmltaXRpdmVEYXRhSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QcmltaXRpdmVEYXRhSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJiM2EwMGMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1ByaW1pdGl2ZURhdGFJbXBsLmh0bWwKQEAgLTAsMCArMSw1MTEgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyMyBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1ByaW1pdGl2ZURhdGFJbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUHJpbWl0aXZlRGF0YUltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlByaW1pdGl2ZURhdGFJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1ByaW1pdGl2ZURhdGFJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1ByaW1pdGl2ZURhdGFJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUHJpbWl0aXZlRGF0YUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9GT05UPgorPEJSPgorQ2xhc3MgUHJpbWl0aXZlRGF0YUltcGw8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsCisgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsCisgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QcmltaXRpdmVEYXRhSW1wbDwvQj4KKzwvUFJFPgorPERMPgorPERUPjxCPkFsbCBJbXBsZW1lbnRlZCBJbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlByaW1pdGl2ZURhdGE8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+UHJpbWl0aXZlRGF0YUltcGw8L0I+PERUPmV4dGVuZHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8RFQ+aW1wbGVtZW50cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UHJpbWl0aXZlRGF0YTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UHJpbWl0aXZlIERhdGE8L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorIDxwPgorIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QcmltaXRpdmVEYXRhSW1wbC5odG1sI2dldEJhc2VfUHJpbWl0aXZlVHlwZSgpIj48Q09ERT48ZW0+QmFzZSBQcmltaXRpdmUgVHlwZTwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVBZGFwdGVyTGlzdCZsdDtFIGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCAmIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXImZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVPYnNlcnZhYmxlQWRhcHRlckxpc3Q8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QuRVN0b3JlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RUxBU1RfRU9CSkVDVF9GTEFHPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RU9QUE9TSVRFX0ZFQVRVUkVfQkFTRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLnVtbDIudW1sLlByaW1pdGl2ZVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUHJpbWl0aXZlRGF0YUltcGwuaHRtbCNiYXNpY0dldEJhc2VfUHJpbWl0aXZlVHlwZSgpIj5iYXNpY0dldEJhc2VfUHJpbWl0aXZlVHlwZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLk9iamVjdDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QcmltaXRpdmVEYXRhSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgYm9vbGVhbiZuYnNwO3Jlc29sdmUsCisgICAgIGJvb2xlYW4mbmJzcDtjb3JlVHlwZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Ym9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QcmltaXRpdmVEYXRhSW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUHJpbWl0aXZlRGF0YUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtuZXdWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QcmltaXRpdmVEYXRhSW1wbC5odG1sI2VVbnNldChpbnQpIj5lVW5zZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLnVtbDIudW1sLlByaW1pdGl2ZVR5cGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUHJpbWl0aXZlRGF0YUltcGwuaHRtbCNnZXRCYXNlX1ByaW1pdGl2ZVR5cGUoKSI+Z2V0QmFzZV9QcmltaXRpdmVUeXBlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1ByaW1pdGl2ZURhdGFJbXBsLmh0bWwjc2V0QmFzZV9QcmltaXRpdmVUeXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLlByaW1pdGl2ZVR5cGUpIj5zZXRCYXNlX1ByaW1pdGl2ZVR5cGU8L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5QcmltaXRpdmVUeXBlJm5ic3A7bmV3QmFzZV9QcmltaXRpdmVUeXBlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlQ2xhc3MsIGVDb250YWluZXJGZWF0dXJlSUQsIGVEZWxpdmVyLCBlSW50ZXJuYWxDb250YWluZXIsIGVJbnZva2UsIGVJc1Byb3h5LCBlU2V0Q2xhc3MsIGVTZXREZWxpdmVyLCBlU2V0UHJveHlVUkk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQmFzZVN0cnVjdHVyYWxGZWF0dXJlSUQsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXJGZWF0dXJlLCBlQmFzaWNTZXRDb250YWluZXIsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRhaW5zLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGlyZWN0UmVzb3VyY2UsIGVEeW5hbWljQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlRHluYW1pY0dldCwgZUR5bmFtaWNHZXQsIGVEeW5hbWljSW52ZXJzZUFkZCwgZUR5bmFtaWNJbnZlcnNlUmVtb3ZlLCBlRHluYW1pY0ludm9rZSwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1Vuc2V0LCBlRHluYW1pY1Vuc2V0LCBlR2V0LCBlR2V0LCBlR2V0LCBlSW50ZXJuYWxSZXNvdXJjZSwgZUludmVyc2VBZGQsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZVJlbW92ZSwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZU9iamVjdEZvclVSSUZyYWdtZW50U2VnbWVudCwgZU9wZW5HZXQsIGVPcGVuSXNTZXQsIGVPcGVuU2V0LCBlT3BlblVuc2V0LCBlUHJveHlVUkksIGVSZXNvbHZlUHJveHksIGVSZXNvdXJjZSwgZVNldCwgZVNldFJlc291cmNlLCBlU2V0U3RvcmUsIGVTZXR0aW5nLCBlU3RvcmUsIGVVbnNldCwgZVVSSUZyYWdtZW50U2VnbWVudCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbElzU2V0LCBlVmlydHVhbFNldCwgZVZpcnR1YWxVbnNldCwgdG9TdHJpbmc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkLCBlTm90aWZ5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVxdWFscywgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJnZXRCYXNlX1ByaW1pdGl2ZVR5cGUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QmFzZV9QcmltaXRpdmVUeXBlPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UudW1sMi51bWwuUHJpbWl0aXZlVHlwZSA8Qj5nZXRCYXNlX1ByaW1pdGl2ZVR5cGU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sI2dldEJhc2VfUHJpbWl0aXZlVHlwZSgpIj5nZXRCYXNlX1ByaW1pdGl2ZVR5cGU8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlByaW1pdGl2ZURhdGE8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgYmFzZV8gcHJpbWl0aXZlIHR5cGU8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sI3NldEJhc2VfUHJpbWl0aXZlVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5QcmltaXRpdmVUeXBlKSI+PENPREU+UHJpbWl0aXZlRGF0YS5zZXRCYXNlX1ByaW1pdGl2ZVR5cGUoUHJpbWl0aXZlVHlwZSk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQcmltaXRpdmVEYXRhX0Jhc2VfUHJpbWl0aXZlVHlwZSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRQcmltaXRpdmVEYXRhX0Jhc2VfUHJpbWl0aXZlVHlwZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImJhc2ljR2V0QmFzZV9QcmltaXRpdmVUeXBlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2Jhc2ljR2V0QmFzZV9QcmltaXRpdmVUeXBlPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UudW1sMi51bWwuUHJpbWl0aXZlVHlwZSA8Qj5iYXNpY0dldEJhc2VfUHJpbWl0aXZlVHlwZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBwcmltaXRpdmUgdHlwZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0QmFzZV9QcmltaXRpdmVUeXBlKG9yZy5lY2xpcHNlLnVtbDIudW1sLlByaW1pdGl2ZVR5cGUpIj48IS0tIC0tPjwvQT48SDM+CitzZXRCYXNlX1ByaW1pdGl2ZVR5cGU8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldEJhc2VfUHJpbWl0aXZlVHlwZTwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUHJpbWl0aXZlVHlwZSZuYnNwO25ld0Jhc2VfUHJpbWl0aXZlVHlwZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sI3NldEJhc2VfUHJpbWl0aXZlVHlwZShvcmcuZWNsaXBzZS51bWwyLnVtbC5QcmltaXRpdmVUeXBlKSI+c2V0QmFzZV9QcmltaXRpdmVUeXBlPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QcmltaXRpdmVEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QcmltaXRpdmVEYXRhPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld0Jhc2VfUHJpbWl0aXZlVHlwZTwvQ09ERT4gLSB0aGUgbmV3IGJhc2VfIHByaW1pdGl2ZSB0eXBlPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCNnZXRCYXNlX1ByaW1pdGl2ZVR5cGUoKSI+PENPREU+UHJpbWl0aXZlRGF0YS5nZXRCYXNlX1ByaW1pdGl2ZVR5cGUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPjwhLS0gLS0+PC9BPjxIMz4KK2VHZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuT2JqZWN0IDxCPmVHZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbGVhbiZuYnNwO3Jlc29sdmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtjb3JlVHlwZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lR2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+ZUdldDwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDxERD48Q09ERT5yZXNvbHZlPC9DT0RFPiAtIHRoZSByZXNvbHZlPEREPjxDT0RFPmNvcmVUeXBlPC9DT0RFPiAtIHRoZSBjb3JlIHR5cGUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG9iamVjdDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+CitlU2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5lU2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtuZXdWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lU2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+ZVNldDwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDxERD48Q09ERT5uZXdWYWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlVW5zZXQoaW50KSI+PCEtLSAtLT48L0E+PEgzPgorZVVuc2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5lVW5zZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lVW5zZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5lVW5zZXQ8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVJc1NldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlSXNTZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBib29sZWFuIDxCPmVJc1NldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVJc1NldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmVJc1NldDwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZAorPERUPjxCPlJldHVybnM6PC9CPjxERD50cnVlLCBpZiBzdWNjZXNzZnVsPC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9QcmltaXRpdmVEYXRhSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNNaWRkbGV3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QcmltaXRpdmVEYXRhSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlByaW1pdGl2ZURhdGFJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFlODg5YjgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sCkBAIC0wLDAgKzEsNzMxIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjQgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitSb2JvdEltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdEltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlJvYm90SW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9Sb2JvdEltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIFJvYm90SW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsT2JqZWN0SW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWdlbnRJbXBsPC9BPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RJbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3Q8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+Um9ib3RJbXBsPC9CPjxEVD5leHRlbmRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFnZW50SW1wbDwvQT48RFQ+aW1wbGVtZW50cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90PC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Sb2JvdDwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgPHA+CisgVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgPHVsPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sI2dldEtpbmQoKSI+PENPREU+PGVtPktpbmQ8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCNnZXRNYXNzKCkiPjxDT0RFPjxlbT5NYXNzPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmh0bWwjZ2V0V2lkdGgoKSI+PENPREU+PGVtPldpZHRoPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmh0bWwjZ2V0VWd2S2luZCgpIj48Q09ERT48ZW0+VWd2IEtpbmQ8L2VtPjwvQ09ERT48L0E+PC9saT4KKyA8L3VsPgorIDwvcD4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09IE5FU1RFRCBDTEFTUyBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk5lc3RlZCBDbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FQWRhcHRlckxpc3QmbHQ7RSBleHRlbmRzIGphdmEubGFuZy5PYmplY3QgJiBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyJmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FT2JzZXJ2YWJsZUFkYXB0ZXJMaXN0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LkVTdG9yZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVMQVNUX0VPQkpFQ1RfRkxBRzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVPUFBPU0lURV9GRUFUVVJFX0JBU0U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuT2JqZWN0PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgYm9vbGVhbiZuYnNwO3Jlc29sdmUsCisgICAgIGJvb2xlYW4mbmJzcDtjb3JlVHlwZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Ym9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCNlSXNTZXQoaW50KSI+ZUlzU2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+ZVNldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO25ld1ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sI2VVbnNldChpbnQpIj5lVW5zZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdEtpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sI2dldEtpbmQoKSI+Z2V0S2luZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCNnZXRNYXNzKCkiPmdldE1hc3M8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VUdWS2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmh0bWwjZ2V0VWd2S2luZCgpIj5nZXRVZ3ZLaW5kPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sI2dldFdpZHRoKCkiPmdldFdpZHRoPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sI3NldEtpbmQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90S2luZCkiPnNldEtpbmQ8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPiZuYnNwO25ld0tpbmQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmh0bWwjc2V0TWFzcyhqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TWFzczwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdNYXNzKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sI3NldFVndktpbmQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlVHVktpbmQpIj5zZXRVZ3ZLaW5kPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5VR1ZLaW5kPC9BPiZuYnNwO25ld1VndktpbmQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmh0bWwjc2V0V2lkdGgoamF2YS5sYW5nLlN0cmluZykiPnNldFdpZHRoPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld1dpZHRoKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sI3RvU3RyaW5nKCkiPnRvU3RyaW5nPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWdlbnRJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BZ2VudEltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwjZ2V0TW92ZXNPdmVyKCkiPmdldE1vdmVzT3ZlcjwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QaHlzaWNhbE9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBoeXNpY2FsT2JqZWN0SW1wbDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNiYXNpY0dldEhhc1N1cmZhY2UoKSI+YmFzaWNHZXRIYXNTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZ2V0RXZlbG92ZXNJbigpIj5nZXRFdmVsb3Zlc0luPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZ2V0SGFzU3VyZmFjZSgpIj5nZXRIYXNTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjc2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPnNldEhhc1N1cmZhY2U8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9DbGFzcygpIj5iYXNpY0dldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZUludGVybmFsQ29udGFpbmVyLCBlSW52b2tlLCBlSXNQcm94eSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURpcmVjdFJlc291cmNlLCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVByb3h5VVJJLCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVVUklGcmFnbWVudFNlZ21lbnQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkLCBlTm90aWZ5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVxdWFscywgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BZ2VudCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sI2dldE1vdmVzT3ZlcigpIj5nZXRNb3Zlc092ZXI8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBoeXNpY2FsT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0RXZlbG92ZXNJbigpIj5nZXRFdmVsb3Zlc0luPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjZ2V0SGFzU3VyZmFjZSgpIj5nZXRIYXNTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwjc2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPnNldEhhc1N1cmZhY2U8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0S2luZCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRLaW5kPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90S2luZDwvQT4gPEI+Z2V0S2luZDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI2dldEtpbmQoKSI+Z2V0S2luZDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGtpbmQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+Um9ib3RLaW5kPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjc2V0S2luZChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RLaW5kKSI+PENPREU+Um9ib3Quc2V0S2luZChSb2JvdEtpbmQpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Um9ib3RfS2luZCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRSb2JvdF9LaW5kKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0S2luZChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RLaW5kKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0S2luZDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0S2luZDwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90S2luZDwvQT4mbmJzcDtuZXdLaW5kKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI3NldEtpbmQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90S2luZCkiPnNldEtpbmQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdLaW5kPC9DT0RFPiAtIHRoZSBuZXcga2luZDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5Sb2JvdEtpbmQ8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNnZXRLaW5kKCkiPjxDT0RFPlJvYm90LmdldEtpbmQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRNYXNzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldE1hc3M8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldE1hc3M8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNnZXRNYXNzKCkiPmdldE1hc3M8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtYXNzPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjc2V0TWFzcyhqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+Um9ib3Quc2V0TWFzcyhTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Um9ib3RfTWFzcygpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRSb2JvdF9NYXNzKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0TWFzcyhqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0TWFzczwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0TWFzczwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld01hc3MpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjc2V0TWFzcyhqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TWFzczwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld01hc3M8L0NPREU+IC0gdGhlIG5ldyBtYXNzPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjZ2V0TWFzcygpIj48Q09ERT5Sb2JvdC5nZXRNYXNzKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V2lkdGgoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2lkdGg8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldFdpZHRoPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjZ2V0V2lkdGgoKSI+Z2V0V2lkdGg8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB3aWR0aDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI3NldFdpZHRoKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5Sb2JvdC5zZXRXaWR0aChTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Um9ib3RfV2lkdGgoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0Um9ib3RfV2lkdGgoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRXaWR0aChqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0V2lkdGg8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldFdpZHRoPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3V2lkdGgpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjc2V0V2lkdGgoamF2YS5sYW5nLlN0cmluZykiPnNldFdpZHRoPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3Q8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3V2lkdGg8L0NPREU+IC0gdGhlIG5ldyB3aWR0aDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI2dldFdpZHRoKCkiPjxDT0RFPlJvYm90LmdldFdpZHRoKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0VWd2S2luZCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRVZ3ZLaW5kPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5VR1ZLaW5kPC9BPiA8Qj5nZXRVZ3ZLaW5kPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjZ2V0VWd2S2luZCgpIj5nZXRVZ3ZLaW5kPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3Q8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdWd2IGtpbmQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlVHVktpbmQ8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNzZXRVZ3ZLaW5kKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5VR1ZLaW5kKSI+PENPREU+Um9ib3Quc2V0VWd2S2luZChVR1ZLaW5kKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90X1VndktpbmQoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0Um9ib3RfVWd2S2luZCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFVndktpbmQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlVHVktpbmQpIj48IS0tIC0tPjwvQT48SDM+CitzZXRVZ3ZLaW5kPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRVZ3ZLaW5kPC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVHVktpbmQ8L0E+Jm5ic3A7bmV3VWd2S2luZCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNzZXRVZ3ZLaW5kKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5VR1ZLaW5kKSI+c2V0VWd2S2luZDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld1VndktpbmQ8L0NPREU+IC0gdGhlIG5ldyB1Z3Yga2luZDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+VUdWS2luZDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI2dldFVndktpbmQoKSI+PENPREU+Um9ib3QuZ2V0VWd2S2luZCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+PCEtLSAtLT48L0E+PEgzPgorZUdldDwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5PYmplY3QgPEI+ZUdldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sZWFuJm5ic3A7cmVzb2x2ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbGVhbiZuYnNwO2NvcmVUeXBlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVHZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPmVHZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BZ2VudEltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkPEREPjxDT0RFPnJlc29sdmU8L0NPREU+IC0gdGhlIHJlc29sdmU8REQ+PENPREU+Y29yZVR5cGU8L0NPREU+IC0gdGhlIGNvcmUgdHlwZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgb2JqZWN0PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VTZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmVTZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO25ld1ZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVTZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BZ2VudEltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkPEREPjxDT0RFPm5ld1ZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWU8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVVbnNldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlVW5zZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmVVbnNldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVVbnNldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sI2VVbnNldChpbnQpIj5lVW5zZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BZ2VudEltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlSXNTZXQoaW50KSI+PCEtLSAtLT48L0E+PEgzPgorZUlzU2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgYm9vbGVhbiA8Qj5lSXNTZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lSXNTZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCNlSXNTZXQoaW50KSI+ZUlzU2V0PC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWdlbnRJbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZAorPERUPjxCPlJldHVybnM6PC9CPjxERD50cnVlLCBpZiBzdWNjZXNzZnVsPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJ0b1N0cmluZygpIj48IS0tIC0tPjwvQT48SDM+Cit0b1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+dG9TdHJpbmc8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT50b1N0cmluZzwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUm9ib3RJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlJvYm90SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kMDg1ZjAwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbApAQCAtMCwwICsxLDIyMzYgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyNCBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1JvYm90TUxGYWN0b3J5SW1wbAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxGYWN0b3J5SW1wbCBjbGFzcyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iUm9ib3RNTEZhY3RvcnlJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX3N1bW1hcnkiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9kZXRhaWwiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9GT05UPgorPEJSPgorQ2xhc3MgUm9ib3RNTEZhY3RvcnlJbXBsPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsCisgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbAorICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIKKyAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTW9kZWxFbGVtZW50SW1wbAorICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FRmFjdG9yeUltcGwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxGYWN0b3J5SW1wbDwvQj4KKzwvUFJFPgorPERMPgorPERUPjxCPkFsbCBJbXBsZW1lbnRlZCBJbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3RvcnksIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTW9kZWxFbGVtZW50LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVTdHJ1Y3R1cmFsRmVhdHVyZS5JbnRlcm5hbC5EeW5hbWljVmFsdWVIb2xkZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+Um9ib3RNTEZhY3RvcnlJbXBsPC9CPjxEVD5leHRlbmRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVGYWN0b3J5SW1wbDxEVD5pbXBsZW1lbnRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPkZhY3Rvcnk8L2I+LgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyLkR5bmFtaWM8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FQWRhcHRlckxpc3QmbHQ7RSBleHRlbmRzIGphdmEubGFuZy5PYmplY3QgJiBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyJmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FT2JzZXJ2YWJsZUFkYXB0ZXJMaXN0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LkVTdG9yZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTEZhY3RvcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2VJTlNUQU5DRSI+ZUlOU1RBTkNFPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVTdHJ1Y3R1cmFsRmVhdHVyZS5JbnRlcm5hbC5EeW5hbWljVmFsdWVIb2xkZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FU3RydWN0dXJhbEZlYXR1cmUuSW50ZXJuYWwuRHluYW1pY1ZhbHVlSG9sZGVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+TklMPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RU9QUE9TSVRFX0ZFQVRVUkVfQkFTRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT0gQ09OU1RSVUNUT1IgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0iY29uc3RydWN0b3Jfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjUm9ib3RNTEZhY3RvcnlJbXBsKCkiPlJvYm90TUxGYWN0b3J5SW1wbDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIGZhY3Rvcnk8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY29udmVydERhdGFGbG93RGlyZWN0aW9uS2luZFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0RGF0YUZsb3dEaXJlY3Rpb25LaW5kVG9TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRSb2JvdGljTWlkZGxld2FyZUtpbmRUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydFJvYm90aWNNaWRkbGV3YXJlS2luZFRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRSb2JvdEtpbmRUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydFJvYm90S2luZFRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0U2VydmljZUZsb3dLaW5kVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRTZXJ2aWNlRmxvd0tpbmRUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY29udmVydFNoYWRlVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRTaGFkZVRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY29udmVydFN5bmNocm9uaXphdGlvbktpbmRUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydFN5bmNocm9uaXphdGlvbktpbmRUb1N0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NvbnZlcnRUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+Y29udmVydFRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjb252ZXJ0VUdWS2luZFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj5jb252ZXJ0VUdWS2luZFRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY29udmVydFVuaXRLaW5kVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPmNvbnZlcnRVbml0S2luZFRvU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGUob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcykiPmNyZWF0ZTwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MmbmJzcDtlQ2xhc3MpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWN0dWF0b3JTeXN0ZW08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUFjdHVhdG9yU3lzdGVtKCkiPmNyZWF0ZUFjdHVhdG9yU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVBZ2VudCgpIj5jcmVhdGVBZ2VudDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUFsZ29yaXRobSgpIj5jcmVhdGVBbGdvcml0aG08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG1MaWJyYXJ5PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVBbGdvcml0aG1MaWJyYXJ5KCkiPmNyZWF0ZUFsZ29yaXRobUxpYnJhcnk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJsZW5kZXJNb3JzZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlQmxlbmRlck1vcnNlKCkiPmNyZWF0ZUJsZW5kZXJNb3JzZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQnVpbGRpbmcuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJ1aWxkaW5nPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVCdWlsZGluZygpIj5jcmVhdGVCdWlsZGluZzwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUNhbWVyYVN5c3RlbSgpIj5jcmVhdGVDYW1lcmFTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Db2xsZWN0aW9uPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVDb2xsZWN0aW9uKCkiPmNyZWF0ZUNvbGxlY3Rpb248L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNvbXBvc2VkRGF0YTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlQ29tcG9zZWREYXRhKCkiPmNyZWF0ZUNvbXBvc2VkRGF0YTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkN5Y2FiVEs8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUN5Y2FiVEsoKSI+Y3JlYXRlQ3ljYWJUSzwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVEYXRhRmxvd0RpcmVjdGlvbktpbmRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVEYXRhRmxvd0RpcmVjdGlvbktpbmRGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dQb3J0PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVEYXRhRmxvd1BvcnQoKSI+Y3JlYXRlRGF0YUZsb3dQb3J0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5FbmdpbmVTeXN0ZW08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUVuZ2luZVN5c3RlbSgpIj5jcmVhdGVFbmdpbmVTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW52aXJvbm1lbnQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUVudmlyb25tZW50KCkiPmNyZWF0ZUVudmlyb25tZW50PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkZsb29yPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVGbG9vcigpIj5jcmVhdGVGbG9vcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuT2JqZWN0PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZUZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5HUFNTeXN0ZW08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUdQU1N5c3RlbSgpIj5jcmVhdGVHUFNTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IYXJkd2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SGFyZHdhcmU8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZUhhcmR3YXJlKCkiPmNyZWF0ZUhhcmR3YXJlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSHVtYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkh1bWFuPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVIdW1hbigpIj5jcmVhdGVIdW1hbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkltYWdlU2Vuc29yU3lzdGVtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVJbWFnZVNlbnNvclN5c3RlbSgpIj5jcmVhdGVJbWFnZVNlbnNvclN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MYW5kU3VyZmFjZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlTGFuZFN1cmZhY2UoKSI+Y3JlYXRlTGFuZFN1cmZhY2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlTGlkYXJTeXN0ZW0oKSI+Y3JlYXRlTGlkYXJTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtKCkiPmNyZWF0ZUxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0oKSI+Y3JlYXRlT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSgpIj5jcmVhdGVPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T25Qb3J0PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVPblBvcnQoKSI+Y3JlYXRlT25Qb3J0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QZWRlc3RyaWFuPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQZWRlc3RyaWFuKCkiPmNyZWF0ZVBlZGVzdHJpYW48L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxEYXRhPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQaHlzaWNhbERhdGEoKSI+Y3JlYXRlUGh5c2ljYWxEYXRhPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVQaHlzaWNhbE9iamVjdCgpIj5jcmVhdGVQaHlzaWNhbE9iamVjdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhbmV0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGFuZXQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVBsYW5ldCgpIj5jcmVhdGVQbGFuZXQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGF0Zm9ybTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlUGxhdGZvcm0oKSI+Y3JlYXRlUGxhdGZvcm08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlByaW1pdGl2ZURhdGE8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVByaW1pdGl2ZURhdGEoKSI+Y3JlYXRlUHJpbWl0aXZlRGF0YTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlUm9ib3QoKSI+Y3JlYXRlUm9ib3Q8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmU8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVJvYm90aWNNaWRkbGV3YXJlKCkiPmNyZWF0ZVJvYm90aWNNaWRkbGV3YXJlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVJvYm90aWNNaWRkbGV3YXJlS2luZEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZVJvYm90aWNNaWRkbGV3YXJlS2luZEZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU2ltdWxhdG9yPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVSb2JvdGljU2ltdWxhdG9yKCkiPmNyZWF0ZVJvYm90aWNTaW11bGF0b3I8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTeXN0ZW08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVJvYm90aWNTeXN0ZW0oKSI+Y3JlYXRlUm9ib3RpY1N5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90S2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlUm9ib3RLaW5kRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlUm9ib3RLaW5kRnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JEcml2ZXIuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvckRyaXZlcjwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlU2Vuc29yRHJpdmVyKCkiPmNyZWF0ZVNlbnNvckRyaXZlcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JTeXN0ZW08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVNlbnNvclN5c3RlbSgpIj5jcmVhdGVTZW5zb3JTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlRmxvd0tpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVNlcnZpY2VGbG93S2luZEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZVNlcnZpY2VGbG93S2luZEZyb21TdHJpbmc8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VQb3J0PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVTZXJ2aWNlUG9ydCgpIj5jcmVhdGVTZXJ2aWNlUG9ydDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2hhZGU8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVNoYWRlRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlU2hhZGVGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNpbXVsYXRlZFN5c3RlbTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlU2ltdWxhdGVkU3lzdGVtKCkiPmNyZWF0ZVNpbXVsYXRlZFN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Tb2Z0d2FyZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlU29mdHdhcmUoKSI+Y3JlYXRlU29mdHdhcmU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YWlyczwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlU3RhaXJzKCkiPmNyZWF0ZVN0YWlyczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YXRlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVTdGF0ZSgpIj5jcmVhdGVTdGF0ZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVN1cmZhY2UoKSI+Y3JlYXRlU3VyZmFjZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5bmNocm9uaXphdGlvbktpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVN5bmNocm9uaXphdGlvbktpbmRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVTeW5jaHJvbml6YXRpb25LaW5kRnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVN5c3RlbSgpIj5jcmVhdGVTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5UcmFuc2l0aW9uPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVUcmFuc2l0aW9uKCkiPmNyZWF0ZVRyYW5zaXRpb248L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VUdWS2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwjY3JlYXRlVUdWS2luZEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZVVHVktpbmRGcm9tU3RyaW5nPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVVbml0S2luZEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPmNyZWF0ZVVuaXRLaW5kRnJvbVN0cmluZzwvQT48L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2F0ZXJTdXJmYWNlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVXYXRlclN1cmZhY2UoKSI+Y3JlYXRlV2F0ZXJTdXJmYWNlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2NyZWF0ZVdoZWVsU3lzdGVtKCkiPmNyZWF0ZVdoZWVsU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNnZXRQYWNrYWdlKCkiPmdldFBhY2thZ2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST48L0k+Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sI2dldFJvYm90TUxQYWNrYWdlKCkiPmdldFJvYm90TUxQYWNrYWdlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCNpbml0KCkiPmluaXQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIHRoZSBkZWZhdWx0IGZhY3RvcnkgaW1wbGVtZW50YXRpb248L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVGYWN0b3J5SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+YmFzaWNTZXRFUGFja2FnZSwgZUdldCwgZUludmVyc2VBZGQsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVTZXQsIGVVbnNldCwgZ2V0RVBhY2thZ2UsIHNldEVQYWNrYWdlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU1vZGVsRWxlbWVudEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVNb2RlbEVsZW1lbnRJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU9iamVjdEZvclVSSUZyYWdtZW50U2VnbWVudCwgZVVSSUZyYWdtZW50U2VnbWVudCwgZ2V0RUFubm90YXRpb24sIGdldEVBbm5vdGF0aW9uczwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lSW50ZXJuYWxDb250YWluZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmR5bmFtaWNHZXQsIGR5bmFtaWNTZXQsIGR5bmFtaWNVbnNldCwgZUFkYXB0ZXJzLCBlQ2xhc3MsIGVDb250YWluZXJGZWF0dXJlSUQsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZURlbGl2ZXIsIGVEaXJlY3RSZXNvdXJjZSwgZUlzUHJveHksIGVQcm94eVVSSSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEeW5hbWljQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlRHluYW1pY0dldCwgZUR5bmFtaWNHZXQsIGVEeW5hbWljSW52ZXJzZUFkZCwgZUR5bmFtaWNJbnZlcnNlUmVtb3ZlLCBlRHluYW1pY0ludm9rZSwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1Vuc2V0LCBlRHluYW1pY1Vuc2V0LCBlR2V0LCBlR2V0LCBlR2V0LCBlSW50ZXJuYWxSZXNvdXJjZSwgZUludmVyc2VBZGQsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVJlc29sdmVQcm94eSwgZVJlc291cmNlLCBlU2V0LCBlU2V0UmVzb3VyY2UsIGVTZXRTdG9yZSwgZVNldHRpbmcsIGVTdG9yZSwgZVVuc2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsSXNTZXQsIGVWaXJ0dWFsU2V0LCBlVmlydHVhbFVuc2V0LCB0b1N0cmluZzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQsIGVOb3RpZnk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB3YWl0LCB3YWl0LCB3YWl0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0RVBhY2thZ2UsIHNldEVQYWNrYWdlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmdldEVBbm5vdGF0aW9uLCBnZXRFQW5ub3RhdGlvbnM8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09IENPTlNUUlVDVE9SIERFVEFJTCA9PT09PT09PSAtLT4KKworPEEgTkFNRT0iY29uc3RydWN0b3JfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+Q29uc3RydWN0b3IgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9IlJvYm90TUxGYWN0b3J5SW1wbCgpIj48IS0tIC0tPjwvQT48SDM+CitSb2JvdE1MRmFjdG9yeUltcGw8L0gzPgorPFBSRT4KK3B1YmxpYyA8Qj5Sb2JvdE1MRmFjdG9yeUltcGw8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSBmYWN0b3J5LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzwvREw+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iaW5pdCgpIj48IS0tIC0tPjwvQT48SDM+Citpbml0PC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+IDxCPmluaXQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIHRoZSBkZWZhdWx0IGZhY3RvcnkgaW1wbGVtZW50YXRpb24uCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGU8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCA8Qj5jcmVhdGU8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MmbmJzcDtlQ2xhc3MpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+Y3JlYXRlPC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5jcmVhdGU8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVGYWN0b3J5SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVDbGFzczwvQ09ERT4gLSB0aGUgZSBjbGFzcworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgZSBvYmplY3Q8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuT2JqZWN0IDxCPmNyZWF0ZUZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+Y3JlYXRlRnJvbVN0cmluZzwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeTwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+Y3JlYXRlRnJvbVN0cmluZzwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG9iamVjdDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0VG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5jb252ZXJ0VG9TdHJpbmc8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3Rvcnk8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmNvbnZlcnRUb1N0cmluZzwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbnN0YW5jZVZhbHVlPC9DT0RFPiAtIHRoZSBpbnN0YW5jZSB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVUcmFuc2l0aW9uKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVRyYW5zaXRpb248L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VHJhbnNpdGlvbjwvQT4gPEI+Y3JlYXRlVHJhbnNpdGlvbjwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVRyYW5zaXRpb24oKSI+Y3JlYXRlVHJhbnNpdGlvbjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHRyYW5zaXRpb248L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUFsZ29yaXRobSgpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVBbGdvcml0aG08L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG08L0E+IDxCPmNyZWF0ZUFsZ29yaXRobTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUFsZ29yaXRobSgpIj5jcmVhdGVBbGdvcml0aG08L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBhbGdvcml0aG08L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVJvYm90KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVJvYm90PC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdDwvQT4gPEI+Y3JlYXRlUm9ib3Q8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVSb2JvdCgpIj5jcmVhdGVSb2JvdDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHJvYm90PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVTeXN0ZW0oKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlU3lzdGVtPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPiA8Qj5jcmVhdGVTeXN0ZW08L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVTeXN0ZW0oKSI+Y3JlYXRlU3lzdGVtPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgb3JnLmVjbGlwc2UucGFweXJ1cy4gcm9ib3QgbSBsLiBzeXN0ZW08L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZURhdGFGbG93UG9ydCgpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVEYXRhRmxvd1BvcnQ8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd1BvcnQ8L0E+IDxCPmNyZWF0ZURhdGFGbG93UG9ydDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZURhdGFGbG93UG9ydCgpIj5jcmVhdGVEYXRhRmxvd1BvcnQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBkYXRhIGZsb3cgcG9ydDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlRW52aXJvbm1lbnQoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlRW52aXJvbm1lbnQ8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVudmlyb25tZW50PC9BPiA8Qj5jcmVhdGVFbnZpcm9ubWVudDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUVudmlyb25tZW50KCkiPmNyZWF0ZUVudmlyb25tZW50PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgZW52aXJvbm1lbnQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVN1cmZhY2UoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlU3VyZmFjZTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdXJmYWNlPC9BPiA8Qj5jcmVhdGVTdXJmYWNlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVTdXJmYWNlKCkiPmNyZWF0ZVN1cmZhY2U8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlN1cmZhY2U8L2VtPicuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVCdWlsZGluZygpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVCdWlsZGluZzwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CdWlsZGluZy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QnVpbGRpbmc8L0E+IDxCPmNyZWF0ZUJ1aWxkaW5nPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVCdWlsZGluZygpIj5jcmVhdGVCdWlsZGluZzwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+QnVpbGRpbmc8L2VtPicuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVBZ2VudCgpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVBZ2VudDwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWdlbnQ8L0E+IDxCPmNyZWF0ZUFnZW50PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVBZ2VudCgpIj5jcmVhdGVBZ2VudDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+QWdlbnQ8L2VtPicuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVQbGFuZXQoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlUGxhbmV0PC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYW5ldC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGxhbmV0PC9BPiA8Qj5jcmVhdGVQbGFuZXQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVBsYW5ldCgpIj5jcmVhdGVQbGFuZXQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlBsYW5ldDwvZW0+Jy48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUxhbmRTdXJmYWNlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUxhbmRTdXJmYWNlPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MYW5kU3VyZmFjZTwvQT4gPEI+Y3JlYXRlTGFuZFN1cmZhY2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUxhbmRTdXJmYWNlKCkiPmNyZWF0ZUxhbmRTdXJmYWNlPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5MYW5kIFN1cmZhY2U8L2VtPicuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVGbG9vcigpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVGbG9vcjwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Rmxvb3I8L0E+IDxCPmNyZWF0ZUZsb29yPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVGbG9vcigpIj5jcmVhdGVGbG9vcjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Rmxvb3I8L2VtPicuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVXYXRlclN1cmZhY2UoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlV2F0ZXJTdXJmYWNlPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2F0ZXJTdXJmYWNlPC9BPiA8Qj5jcmVhdGVXYXRlclN1cmZhY2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVdhdGVyU3VyZmFjZSgpIj5jcmVhdGVXYXRlclN1cmZhY2U8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPldhdGVyIFN1cmZhY2U8L2VtPicuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVIdW1hbigpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVIdW1hbjwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SHVtYW48L0E+IDxCPmNyZWF0ZUh1bWFuPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVIdW1hbigpIj5jcmVhdGVIdW1hbjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+SHVtYW48L2VtPicuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVQZWRlc3RyaWFuKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVBlZGVzdHJpYW48L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGVkZXN0cmlhbjwvQT4gPEI+Y3JlYXRlUGVkZXN0cmlhbjwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlUGVkZXN0cmlhbigpIj5jcmVhdGVQZWRlc3RyaWFuPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5QZWRlc3RyaWFuPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlU3RhaXJzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVN0YWlyczwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YWlyczwvQT4gPEI+Y3JlYXRlU3RhaXJzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVTdGFpcnMoKSI+Y3JlYXRlU3RhaXJzPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TdGFpcnM8L2VtPicuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVQbGF0Zm9ybSgpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVQbGF0Zm9ybTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGxhdGZvcm08L0E+IDxCPmNyZWF0ZVBsYXRmb3JtPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVQbGF0Zm9ybSgpIj5jcmVhdGVQbGF0Zm9ybTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UGxhdGZvcm08L2VtPicuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVSb2JvdGljTWlkZGxld2FyZSgpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVSb2JvdGljTWlkZGxld2FyZTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmU8L0E+IDxCPmNyZWF0ZVJvYm90aWNNaWRkbGV3YXJlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVSb2JvdGljTWlkZGxld2FyZSgpIj5jcmVhdGVSb2JvdGljTWlkZGxld2FyZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Um9ib3RpYyBNaWRkbGV3YXJlPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlUm9ib3RpY1NpbXVsYXRvcigpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVSb2JvdGljU2ltdWxhdG9yPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTaW11bGF0b3I8L0E+IDxCPmNyZWF0ZVJvYm90aWNTaW11bGF0b3I8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVJvYm90aWNTaW11bGF0b3IoKSI+Y3JlYXRlUm9ib3RpY1NpbXVsYXRvcjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Um9ib3RpYyBTaW11bGF0b3I8L2VtPicuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVDeWNhYlRLKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUN5Y2FiVEs8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q3ljYWJUSzwvQT4gPEI+Y3JlYXRlQ3ljYWJUSzwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlQ3ljYWJUSygpIj5jcmVhdGVDeWNhYlRLPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5DeWNhYiBUSzwvZW0+Jy48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUJsZW5kZXJNb3JzZSgpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVCbGVuZGVyTW9yc2U8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5CbGVuZGVyTW9yc2U8L0E+IDxCPmNyZWF0ZUJsZW5kZXJNb3JzZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlQmxlbmRlck1vcnNlKCkiPmNyZWF0ZUJsZW5kZXJNb3JzZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+QmxlbmRlciBNb3JzZTwvZW0+Jy48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZU9uUG9ydCgpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVPblBvcnQ8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PblBvcnQ8L0E+IDxCPmNyZWF0ZU9uUG9ydDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlT25Qb3J0KCkiPmNyZWF0ZU9uUG9ydDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+YSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+T24gUG9ydDwvZW0+Jy48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVNlcnZpY2VQb3J0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVNlcnZpY2VQb3J0PC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlUG9ydDwvQT4gPEI+Y3JlYXRlU2VydmljZVBvcnQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVTZXJ2aWNlUG9ydCgpIj5jcmVhdGVTZXJ2aWNlUG9ydDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHNlcnZpY2UgcG9ydDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlQWN0dWF0b3JTeXN0ZW0oKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlQWN0dWF0b3JTeXN0ZW08L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWN0dWF0b3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFjdHVhdG9yU3lzdGVtPC9BPiA8Qj5jcmVhdGVBY3R1YXRvclN5c3RlbTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUFjdHVhdG9yU3lzdGVtKCkiPmNyZWF0ZUFjdHVhdG9yU3lzdGVtPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgYWN0dWF0b3Igc3lzdGVtPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVSb2JvdGljU3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVJvYm90aWNTeXN0ZW08L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT4gPEI+Y3JlYXRlUm9ib3RpY1N5c3RlbTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVJvYm90aWNTeXN0ZW0oKSI+Y3JlYXRlUm9ib3RpY1N5c3RlbTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHJvYm90aWMgc3lzdGVtPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVTZW5zb3JTeXN0ZW0oKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlU2Vuc29yU3lzdGVtPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPiA8Qj5jcmVhdGVTZW5zb3JTeXN0ZW08L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVTZW5zb3JTeXN0ZW0oKSI+Y3JlYXRlU2Vuc29yU3lzdGVtPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc2Vuc29yIHN5c3RlbTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlSGFyZHdhcmUoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlSGFyZHdhcmU8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSGFyZHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkhhcmR3YXJlPC9BPiA8Qj5jcmVhdGVIYXJkd2FyZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUhhcmR3YXJlKCkiPmNyZWF0ZUhhcmR3YXJlPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgaGFyZHdhcmU8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVNvZnR3YXJlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVNvZnR3YXJlPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Tb2Z0d2FyZTwvQT4gPEI+Y3JlYXRlU29mdHdhcmU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVTb2Z0d2FyZSgpIj5jcmVhdGVTb2Z0d2FyZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHNvZnR3YXJlPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVQcmltaXRpdmVEYXRhKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVByaW1pdGl2ZURhdGE8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UHJpbWl0aXZlRGF0YTwvQT4gPEI+Y3JlYXRlUHJpbWl0aXZlRGF0YTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVByaW1pdGl2ZURhdGEoKSI+Y3JlYXRlUHJpbWl0aXZlRGF0YTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHByaW1pdGl2ZSBkYXRhPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVQaHlzaWNhbERhdGEoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlUGh5c2ljYWxEYXRhPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxEYXRhPC9BPiA8Qj5jcmVhdGVQaHlzaWNhbERhdGE8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVQaHlzaWNhbERhdGEoKSI+Y3JlYXRlUGh5c2ljYWxEYXRhPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcGh5c2ljYWwgZGF0YTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlQ29tcG9zZWREYXRhKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUNvbXBvc2VkRGF0YTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNvbXBvc2VkRGF0YTwvQT4gPEI+Y3JlYXRlQ29tcG9zZWREYXRhPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlQ29tcG9zZWREYXRhKCkiPmNyZWF0ZUNvbXBvc2VkRGF0YTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGNvbXBvc2VkIGRhdGE8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUNvbGxlY3Rpb24oKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlQ29sbGVjdGlvbjwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Db2xsZWN0aW9uPC9BPiA8Qj5jcmVhdGVDb2xsZWN0aW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlQ29sbGVjdGlvbigpIj5jcmVhdGVDb2xsZWN0aW9uPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgY29sbGVjdGlvbjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlRW5naW5lU3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUVuZ2luZVN5c3RlbTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVuZ2luZVN5c3RlbTwvQT4gPEI+Y3JlYXRlRW5naW5lU3lzdGVtPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlRW5naW5lU3lzdGVtKCkiPmNyZWF0ZUVuZ2luZVN5c3RlbTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGVuZ2luZSBzeXN0ZW08L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVdoZWVsU3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVdoZWVsU3lzdGVtPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT4gPEI+Y3JlYXRlV2hlZWxTeXN0ZW08L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVXaGVlbFN5c3RlbSgpIj5jcmVhdGVXaGVlbFN5c3RlbTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHdoZWVsIHN5c3RlbTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlSW1hZ2VTZW5zb3JTeXN0ZW0oKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlSW1hZ2VTZW5zb3JTeXN0ZW08L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkltYWdlU2Vuc29yU3lzdGVtPC9BPiA8Qj5jcmVhdGVJbWFnZVNlbnNvclN5c3RlbTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUltYWdlU2Vuc29yU3lzdGVtKCkiPmNyZWF0ZUltYWdlU2Vuc29yU3lzdGVtPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgaW1hZ2Ugc2Vuc29yIHN5c3RlbTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlQ2FtZXJhU3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUNhbWVyYVN5c3RlbTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNhbWVyYVN5c3RlbTwvQT4gPEI+Y3JlYXRlQ2FtZXJhU3lzdGVtPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlQ2FtZXJhU3lzdGVtKCkiPmNyZWF0ZUNhbWVyYVN5c3RlbTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGNhbWVyYSBzeXN0ZW08L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZU9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbSgpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0E+IDxCPmNyZWF0ZU9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZU9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbSgpIj5jcmVhdGVPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBvYmplY3QgZGV0ZWN0aW9uIHNlbnNvciBzeXN0ZW08L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT4gPEI+Y3JlYXRlT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSgpIj5jcmVhdGVPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG9iamVjdCB0cmFja2luZyBzZW5zb3Igc3lzdGVtPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVMaWRhclN5c3RlbSgpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVMaWRhclN5c3RlbTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGlkYXJTeXN0ZW08L0E+IDxCPmNyZWF0ZUxpZGFyU3lzdGVtPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlTGlkYXJTeXN0ZW0oKSI+Y3JlYXRlTGlkYXJTeXN0ZW08L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBsaWRhciBzeXN0ZW08L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUxvY2FsaXphdGlvblNlbnNvclN5c3RlbSgpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0E+IDxCPmNyZWF0ZUxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUxvY2FsaXphdGlvblNlbnNvclN5c3RlbSgpIj5jcmVhdGVMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBsb2NhbGl6YXRpb24gc2Vuc29yIHN5c3RlbTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlR1BTU3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUdQU1N5c3RlbTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkdQU1N5c3RlbTwvQT4gPEI+Y3JlYXRlR1BTU3lzdGVtPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlR1BTU3lzdGVtKCkiPmNyZWF0ZUdQU1N5c3RlbTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGdQUyBzeXN0ZW08L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVNpbXVsYXRlZFN5c3RlbSgpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVTaW11bGF0ZWRTeXN0ZW08L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaW11bGF0ZWRTeXN0ZW08L0E+IDxCPmNyZWF0ZVNpbXVsYXRlZFN5c3RlbTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZVNpbXVsYXRlZFN5c3RlbSgpIj5jcmVhdGVTaW11bGF0ZWRTeXN0ZW08L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzaW11bGF0ZWQgc3lzdGVtPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVBbGdvcml0aG1MaWJyYXJ5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUFsZ29yaXRobUxpYnJhcnk8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtTGlicmFyeTwvQT4gPEI+Y3JlYXRlQWxnb3JpdGhtTGlicmFyeTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sI2NyZWF0ZUFsZ29yaXRobUxpYnJhcnkoKSI+Y3JlYXRlQWxnb3JpdGhtTGlicmFyeTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGFsZ29yaXRobSBsaWJyYXJ5PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVTdGF0ZSgpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVTdGF0ZTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3RhdGU8L0E+IDxCPmNyZWF0ZVN0YXRlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlU3RhdGUoKSI+Y3JlYXRlU3RhdGU8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdGF0ZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlU2Vuc29yRHJpdmVyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVNlbnNvckRyaXZlcjwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JEcml2ZXIuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvckRyaXZlcjwvQT4gPEI+Y3JlYXRlU2Vuc29yRHJpdmVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNjcmVhdGVTZW5zb3JEcml2ZXIoKSI+Y3JlYXRlU2Vuc29yRHJpdmVyPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TZW5zb3IgRHJpdmVyPC9lbT4nLjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlUGh5c2ljYWxPYmplY3QoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlUGh5c2ljYWxPYmplY3Q8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPiA8Qj5jcmVhdGVQaHlzaWNhbE9iamVjdDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwjY3JlYXRlUGh5c2ljYWxPYmplY3QoKSI+Y3JlYXRlUGh5c2ljYWxPYmplY3Q8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlBoeXNpY2FsIE9iamVjdDwvZW0+Jy48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVJvYm90S2luZEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVJvYm90S2luZEZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RLaW5kPC9BPiA8Qj5jcmVhdGVSb2JvdEtpbmRGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSByb2JvdCBraW5kPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0Um9ib3RLaW5kVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRSb2JvdEtpbmRUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydFJvYm90S2luZFRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVVHVktpbmRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVVR1ZLaW5kRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VUdWS2luZDwvQT4gPEI+Y3JlYXRlVUdWS2luZEZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdUdWIGtpbmQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRVR1ZLaW5kVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRVR1ZLaW5kVG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRVR1ZLaW5kVG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVN5bmNocm9uaXphdGlvbktpbmRGcm9tU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVTeW5jaHJvbml6YXRpb25LaW5kRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT4gPEI+Y3JlYXRlU3luY2hyb25pemF0aW9uS2luZEZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7aW5pdGlhbFZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluaXRpYWxWYWx1ZTwvQ09ERT4gLSB0aGUgaW5pdGlhbCB2YWx1ZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3luY2hyb25pemF0aW9uIGtpbmQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnRTeW5jaHJvbml6YXRpb25LaW5kVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRTeW5jaHJvbml6YXRpb25LaW5kVG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRTeW5jaHJvbml6YXRpb25LaW5kVG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZURhdGFGbG93RGlyZWN0aW9uS2luZEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZURhdGFGbG93RGlyZWN0aW9uS2luZEZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPiA8Qj5jcmVhdGVEYXRhRmxvd0RpcmVjdGlvbktpbmRGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5pdGlhbFZhbHVlPC9DT0RFPiAtIHRoZSBpbml0aWFsIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBkYXRhIGZsb3cgZGlyZWN0aW9uIGtpbmQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNvbnZlcnREYXRhRmxvd0RpcmVjdGlvbktpbmRUb1N0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorY29udmVydERhdGFGbG93RGlyZWN0aW9uS2luZFRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0RGF0YUZsb3dEaXJlY3Rpb25LaW5kVG9TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO2luc3RhbmNlVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmVEYXRhVHlwZTwvQ09ERT4gLSB0aGUgZSBkYXRhIHR5cGU8REQ+PENPREU+aW5zdGFuY2VWYWx1ZTwvQ09ERT4gLSB0aGUgaW5zdGFuY2UgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlU2VydmljZUZsb3dLaW5kRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlU2VydmljZUZsb3dLaW5kRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlRmxvd0tpbmQ8L0E+IDxCPmNyZWF0ZVNlcnZpY2VGbG93S2luZEZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHNlcnZpY2UgZmxvdyBraW5kPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjb252ZXJ0U2VydmljZUZsb3dLaW5kVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRTZXJ2aWNlRmxvd0tpbmRUb1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Y29udmVydFNlcnZpY2VGbG93S2luZFRvU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVVuaXRLaW5kRnJvbVN0cmluZyhvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlVW5pdEtpbmRGcm9tU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VW5pdEtpbmQ8L0E+IDxCPmNyZWF0ZVVuaXRLaW5kRnJvbVN0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2luaXRpYWxWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZURhdGFUeXBlPC9DT0RFPiAtIHRoZSBlIGRhdGEgdHlwZTxERD48Q09ERT5pbml0aWFsVmFsdWU8L0NPREU+IC0gdGhlIGluaXRpYWwgdmFsdWUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHVuaXQga2luZDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydFVuaXRLaW5kVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRVbml0S2luZFRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0VW5pdEtpbmRUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5lRGF0YVR5cGU8L0NPREU+IC0gdGhlIGUgZGF0YSB0eXBlPEREPjxDT0RFPmluc3RhbmNlVmFsdWU8L0NPREU+IC0gdGhlIGluc3RhbmNlIHZhbHVlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVJvYm90aWNNaWRkbGV3YXJlS2luZEZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVJvYm90aWNNaWRkbGV3YXJlS2luZEZyb21TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPiA8Qj5jcmVhdGVSb2JvdGljTWlkZGxld2FyZUtpbmRGcm9tU3RyaW5nPC9CPihvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlJm5ic3A7ZURhdGFUeXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydFJvYm90aWNNaWRkbGV3YXJlS2luZFRvU3RyaW5nKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+Citjb252ZXJ0Um9ib3RpY01pZGRsZXdhcmVLaW5kVG9TdHJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmNvbnZlcnRSb2JvdGljTWlkZGxld2FyZUtpbmRUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7aW5zdGFuY2VWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVTaGFkZUZyb21TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVNoYWRlRnJvbVN0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaGFkZS5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNoYWRlPC9BPiA8Qj5jcmVhdGVTaGFkZUZyb21TdHJpbmc8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGUmbmJzcDtlRGF0YVR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtpbml0aWFsVmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY29udmVydFNoYWRlVG9TdHJpbmcob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NvbnZlcnRTaGFkZVRvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5jb252ZXJ0U2hhZGVUb1N0cmluZzwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZSZuYnNwO2VEYXRhVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtpbnN0YW5jZVZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFJvYm90TUxQYWNrYWdlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFJvYm90TUxQYWNrYWdlPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4gPEI+Z2V0Um9ib3RNTFBhY2thZ2U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCNnZXRSb2JvdE1MUGFja2FnZSgpIj5nZXRSb2JvdE1MUGFja2FnZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHJvYm90IG1sIHBhY2thZ2U8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBhY2thZ2UoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UGFja2FnZTwvSDM+Cis8UFJFPgorPEZPTlQgU0laRT0iLTEiPkBEZXByZWNhdGVkCis8L0ZPTlQ+cHVibGljIHN0YXRpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPiA8Qj5nZXRQYWNrYWdlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEk+PC9JPgorPFA+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHBhY2thZ2U8L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX3N1bW1hcnkiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9kZXRhaWwiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTk2YTQ5OAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwKQEAgLTAsMCArMSw0NTEzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjQgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitSb2JvdE1MUGFja2FnZUltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlJvYm90TUxQYWNrYWdlSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yRHJpdmVySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0ZPTlQ+Cis8QlI+CitDbGFzcyBSb2JvdE1MUGFja2FnZUltcGw8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsCisgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbAorICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lcgorICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVNb2RlbEVsZW1lbnRJbXBsCisgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOYW1lZEVsZW1lbnRJbXBsCisgICAgICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FUGFja2FnZUltcGwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGw8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTmFtZWRFbGVtZW50LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVN0cnVjdHVyYWxGZWF0dXJlLkludGVybmFsLkR5bmFtaWNWYWx1ZUhvbGRlciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuQmFzaWNFeHRlbmRlZE1ldGFEYXRhLkVQYWNrYWdlRXh0ZW5kZWRNZXRhRGF0YS5Ib2xkZXIsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+Um9ib3RNTFBhY2thZ2VJbXBsPC9CPjxEVD5leHRlbmRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVQYWNrYWdlSW1wbDxEVD5pbXBsZW1lbnRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPlBhY2thZ2U8L2I+LgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyLkR5bmFtaWM8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FQWRhcHRlckxpc3QmbHQ7RSBleHRlbmRzIGphdmEubGFuZy5PYmplY3QgJiBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyJmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FT2JzZXJ2YWJsZUFkYXB0ZXJMaXN0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UuRGVzY3JpcHRvciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlLlJlZ2lzdHJ5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LkVTdG9yZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FDVFVBVE9SX1NZU1RFTSI+QUNUVUFUT1JfU1lTVEVNPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQUNUVUFUT1JfU1lTVEVNX19CQVNFX0NMQVNTIj5BQ1RVQVRPUl9TWVNURU1fX0JBU0VfQ0xBU1M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBQ1RVQVRPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj5BQ1RVQVRPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQUNUVUFUT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+QUNUVUFUT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FDVFVBVE9SX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj5BQ1RVQVRPUl9TWVNURU1fRkVBVFVSRV9DT1VOVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FHRU5UIj5BR0VOVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FHRU5UX19CQVNFX0NMQVNTIj5BR0VOVF9fQkFTRV9DTEFTUzwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FHRU5UX19FVkVMT1ZFU19JTiI+QUdFTlRfX0VWRUxPVkVTX0lOPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQUdFTlRfX0hBU19TVVJGQUNFIj5BR0VOVF9fSEFTX1NVUkZBQ0U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBR0VOVF9fTU9WRVNfT1ZFUiI+QUdFTlRfX01PVkVTX09WRVI8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBR0VOVF9GRUFUVVJFX0NPVU5UIj5BR0VOVF9GRUFUVVJFX0NPVU5UPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQUxHT1JJVEhNIj5BTEdPUklUSE08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBTEdPUklUSE1fX0JBU0VfT1BFUkFUSU9OIj5BTEdPUklUSE1fX0JBU0VfT1BFUkFUSU9OPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQUxHT1JJVEhNX19FWFRfRlVOQ1RJT05fTkFNRSI+QUxHT1JJVEhNX19FWFRfRlVOQ1RJT05fTkFNRTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FMR09SSVRITV9fSVNfRVhURVJOQUwiPkFMR09SSVRITV9fSVNfRVhURVJOQUw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNBTEdPUklUSE1fX1BBVEgiPkFMR09SSVRITV9fUEFUSDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FMR09SSVRITV9GRUFUVVJFX0NPVU5UIj5BTEdPUklUSE1fRkVBVFVSRV9DT1VOVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FMR09SSVRITV9MSUJSQVJZIj5BTEdPUklUSE1fTElCUkFSWTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FMR09SSVRITV9MSUJSQVJZX19CQVNFX0NMQVNTIj5BTEdPUklUSE1fTElCUkFSWV9fQkFTRV9DTEFTUzwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FMR09SSVRITV9MSUJSQVJZX19QQVRIIj5BTEdPUklUSE1fTElCUkFSWV9fUEFUSDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0FMR09SSVRITV9MSUJSQVJZX0ZFQVRVUkVfQ09VTlQiPkFMR09SSVRITV9MSUJSQVJZX0ZFQVRVUkVfQ09VTlQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNCTEVOREVSX01PUlNFIj5CTEVOREVSX01PUlNFPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQkxFTkRFUl9NT1JTRV9fQkFTRV9DTEFTUyI+QkxFTkRFUl9NT1JTRV9fQkFTRV9DTEFTUzwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0JMRU5ERVJfTU9SU0VfX0JBU0VfTk9ERSI+QkxFTkRFUl9NT1JTRV9fQkFTRV9OT0RFPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQkxFTkRFUl9NT1JTRV9fREVCVUdfRElTUExBWSI+QkxFTkRFUl9NT1JTRV9fREVCVUdfRElTUExBWTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0JMRU5ERVJfTU9SU0VfX0RFQlVHX01PREUiPkJMRU5ERVJfTU9SU0VfX0RFQlVHX01PREU8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNCTEVOREVSX01PUlNFX19HUkFWSVRZIj5CTEVOREVSX01PUlNFX19HUkFWSVRZPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQkxFTkRFUl9NT1JTRV9fVklFV1BPUlRfU0hBREUiPkJMRU5ERVJfTU9SU0VfX1ZJRVdQT1JUX1NIQURFPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQkxFTkRFUl9NT1JTRV9GRUFUVVJFX0NPVU5UIj5CTEVOREVSX01PUlNFX0ZFQVRVUkVfQ09VTlQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNCVUlMRElORyI+QlVJTERJTkc8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNCVUlMRElOR19fQkFTRV9DTEFTUyI+QlVJTERJTkdfX0JBU0VfQ0xBU1M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNCVUlMRElOR19fRVZFTE9WRVNfSU4iPkJVSUxESU5HX19FVkVMT1ZFU19JTjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0JVSUxESU5HX19IQVNfU1VSRkFDRSI+QlVJTERJTkdfX0hBU19TVVJGQUNFPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQlVJTERJTkdfRkVBVFVSRV9DT1VOVCI+QlVJTERJTkdfRkVBVFVSRV9DT1VOVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NBTUVSQV9TWVNURU0iPkNBTUVSQV9TWVNURU08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDQU1FUkFfU1lTVEVNX19BTFBIQV9VIj5DQU1FUkFfU1lTVEVNX19BTFBIQV9VPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ0FNRVJBX1NZU1RFTV9fQUxQSEFfViI+Q0FNRVJBX1NZU1RFTV9fQUxQSEFfVjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NBTUVSQV9TWVNURU1fX0JBU0VfQ0xBU1MiPkNBTUVSQV9TWVNURU1fX0JBU0VfQ0xBU1M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDQU1FUkFfU1lTVEVNX19DT0xPUl9GT1JNQVQiPkNBTUVSQV9TWVNURU1fX0NPTE9SX0ZPUk1BVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0NBTUVSQV9TWVNURU1fX0ZSRVFVRU5DWSI+Q0FNRVJBX1NZU1RFTV9fRlJFUVVFTkNZPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ0FNRVJBX1NZU1RFTV9fSEVJR0hUIj5DQU1FUkFfU1lTVEVNX19IRUlHSFQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDQU1FUkFfU1lTVEVNX19JREVOVElGSUVSIj5DQU1FUkFfU1lTVEVNX19JREVOVElGSUVSPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ0FNRVJBX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPkNBTUVSQV9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ0FNRVJBX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPkNBTUVSQV9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ0FNRVJBX1NZU1RFTV9fVTAiPkNBTUVSQV9TWVNURU1fX1UwPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ0FNRVJBX1NZU1RFTV9fVjAiPkNBTUVSQV9TWVNURU1fX1YwPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ0FNRVJBX1NZU1RFTV9fV0lEVEgiPkNBTUVSQV9TWVNURU1fX1dJRFRIPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ0FNRVJBX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj5DQU1FUkFfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDT0xMRUNUSU9OIj5DT0xMRUNUSU9OPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ09MTEVDVElPTl9fQkFTRV9EQVRBX1RZUEUiPkNPTExFQ1RJT05fX0JBU0VfREFUQV9UWVBFPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ09MTEVDVElPTl9GRUFUVVJFX0NPVU5UIj5DT0xMRUNUSU9OX0ZFQVRVUkVfQ09VTlQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDT01QT1NFRF9EQVRBIj5DT01QT1NFRF9EQVRBPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ09NUE9TRURfREFUQV9fQkFTRV9EQVRBX1RZUEUiPkNPTVBPU0VEX0RBVEFfX0JBU0VfREFUQV9UWVBFPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ09NUE9TRURfREFUQV9GRUFUVVJFX0NPVU5UIj5DT01QT1NFRF9EQVRBX0ZFQVRVUkVfQ09VTlQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDWUNBQl9USyI+Q1lDQUJfVEs8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDWUNBQl9US19fQkFTRV9DTEFTUyI+Q1lDQUJfVEtfX0JBU0VfQ0xBU1M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDWUNBQl9US19fQkFTRV9OT0RFIj5DWUNBQl9US19fQkFTRV9OT0RFPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ1lDQUJfVEtfX1RJTUVfRkFDVE9SIj5DWUNBQl9US19fVElNRV9GQUNUT1I8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNDWUNBQl9US19fVElNRV9TVEVQIj5DWUNBQl9US19fVElNRV9TVEVQPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ1lDQUJfVEtfX1VTRV9SRUFMX1RJTUUiPkNZQ0FCX1RLX19VU0VfUkVBTF9USU1FPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjQ1lDQUJfVEtfRkVBVFVSRV9DT1VOVCI+Q1lDQUJfVEtfRkVBVFVSRV9DT1VOVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0RBVEFfRkxPV19ESVJFQ1RJT05fS0lORCI+REFUQV9GTE9XX0RJUkVDVElPTl9LSU5EPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjREFUQV9GTE9XX1BPUlQiPkRBVEFfRkxPV19QT1JUPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjREFUQV9GTE9XX1BPUlRfX0JBU0VfUE9SVCI+REFUQV9GTE9XX1BPUlRfX0JBU0VfUE9SVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0RBVEFfRkxPV19QT1JUX19CVUZGRVJfU0laRSI+REFUQV9GTE9XX1BPUlRfX0JVRkZFUl9TSVpFPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjREFUQV9GTE9XX1BPUlRfX0RJUkVDVElPTiI+REFUQV9GTE9XX1BPUlRfX0RJUkVDVElPTjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0RBVEFfRkxPV19QT1JUX19TWU5DSFJPTklaQVRJT05fUE9MSUNZIj5EQVRBX0ZMT1dfUE9SVF9fU1lOQ0hST05JWkFUSU9OX1BPTElDWTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0RBVEFfRkxPV19QT1JUX0ZFQVRVUkVfQ09VTlQiPkRBVEFfRkxPV19QT1JUX0ZFQVRVUkVfQ09VTlQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNlSU5TVEFOQ0UiPmVJTlNUQU5DRTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2VOQU1FIj5lTkFNRTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0VOR0lORV9TWVNURU0iPkVOR0lORV9TWVNURU08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNFTkdJTkVfU1lTVEVNX19CQVNFX0NMQVNTIj5FTkdJTkVfU1lTVEVNX19CQVNFX0NMQVNTPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5HSU5FX1NZU1RFTV9fR0VBUl9SQVRJT04iPkVOR0lORV9TWVNURU1fX0dFQVJfUkFUSU9OPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5HSU5FX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPkVOR0lORV9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5HSU5FX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPkVOR0lORV9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5HSU5FX1NZU1RFTV9fTUFYX0FMTE9XRURfU1RFRVJJTkciPkVOR0lORV9TWVNURU1fX01BWF9BTExPV0VEX1NURUVSSU5HPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5HSU5FX1NZU1RFTV9fTUFYX0FMTE9XRURfVkVMT0NJVFkiPkVOR0lORV9TWVNURU1fX01BWF9BTExPV0VEX1ZFTE9DSVRZPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5HSU5FX1NZU1RFTV9fTUFYX0JSRUFLSU5HX0ZPUkNFIj5FTkdJTkVfU1lTVEVNX19NQVhfQlJFQUtJTkdfRk9SQ0U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNFTkdJTkVfU1lTVEVNX19NQVhfRU5HSU5FX0ZPUkNFIj5FTkdJTkVfU1lTVEVNX19NQVhfRU5HSU5FX0ZPUkNFPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRU5HSU5FX1NZU1RFTV9fVkVISUNMRV9UUkFDVElPTiI+RU5HSU5FX1NZU1RFTV9fVkVISUNMRV9UUkFDVElPTjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0VOR0lORV9TWVNURU1fRkVBVFVSRV9DT1VOVCI+RU5HSU5FX1NZU1RFTV9GRUFUVVJFX0NPVU5UPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZU5TX1BSRUZJWCI+ZU5TX1BSRUZJWDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2VOU19VUkkiPmVOU19VUkk8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNFTlZJUk9OTUVOVCI+RU5WSVJPTk1FTlQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNFTlZJUk9OTUVOVF9fQkFTRV9DTEFTUyI+RU5WSVJPTk1FTlRfX0JBU0VfQ0xBU1M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNFTlZJUk9OTUVOVF9GRUFUVVJFX0NPVU5UIj5FTlZJUk9OTUVOVF9GRUFUVVJFX0NPVU5UPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRkxPT1IiPkZMT09SPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRkxPT1JfX0JBU0VfQ0xBU1MiPkZMT09SX19CQVNFX0NMQVNTPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjRkxPT1JfX0VWRUxPVkVTX0lOIj5GTE9PUl9fRVZFTE9WRVNfSU48L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNGTE9PUl9fSEFTX1NVUkZBQ0UiPkZMT09SX19IQVNfU1VSRkFDRTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0ZMT09SX0ZFQVRVUkVfQ09VTlQiPkZMT09SX0ZFQVRVUkVfQ09VTlQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNHUFNfU1lTVEVNIj5HUFNfU1lTVEVNPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjR1BTX1NZU1RFTV9fQkFTRV9DTEFTUyI+R1BTX1NZU1RFTV9fQkFTRV9DTEFTUzwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0dQU19TWVNURU1fX0ZSRVFVRU5DWSI+R1BTX1NZU1RFTV9fRlJFUVVFTkNZPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjR1BTX1NZU1RFTV9fSURFTlRJRklFUiI+R1BTX1NZU1RFTV9fSURFTlRJRklFUjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0dQU19TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj5HUFNfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0dQU19TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj5HUFNfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0dQU19TWVNURU1fX09SSUdJTl9QT1NJVElPTiI+R1BTX1NZU1RFTV9fT1JJR0lOX1BPU0lUSU9OPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjR1BTX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj5HUFNfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNHUk9VTkQiPkdST1VORDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0dST1VORF9fQkFTRV9DTEFTUyI+R1JPVU5EX19CQVNFX0NMQVNTPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjR1JPVU5EX19FVkVMT1ZFU19JTiI+R1JPVU5EX19FVkVMT1ZFU19JTjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0dST1VORF9fSEFTX1NVUkZBQ0UiPkdST1VORF9fSEFTX1NVUkZBQ0U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNHUk9VTkRfRkVBVFVSRV9DT1VOVCI+R1JPVU5EX0ZFQVRVUkVfQ09VTlQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNIQVJEV0FSRSI+SEFSRFdBUkU8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNIQVJEV0FSRV9fQkFTRV9DTEFTUyI+SEFSRFdBUkVfX0JBU0VfQ0xBU1M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNIQVJEV0FSRV9GRUFUVVJFX0NPVU5UIj5IQVJEV0FSRV9GRUFUVVJFX0NPVU5UPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjSFVNQU4iPkhVTUFOPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjSFVNQU5fX0JBU0VfQ0xBU1MiPkhVTUFOX19CQVNFX0NMQVNTPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjSFVNQU5fX0VWRUxPVkVTX0lOIj5IVU1BTl9fRVZFTE9WRVNfSU48L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNIVU1BTl9fSEFTX1NVUkZBQ0UiPkhVTUFOX19IQVNfU1VSRkFDRTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0hVTUFOX19NT1ZFU19PVkVSIj5IVU1BTl9fTU9WRVNfT1ZFUjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0hVTUFOX0ZFQVRVUkVfQ09VTlQiPkhVTUFOX0ZFQVRVUkVfQ09VTlQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNJTUFHRV9TRU5TT1JfU1lTVEVNIj5JTUFHRV9TRU5TT1JfU1lTVEVNPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjSU1BR0VfU0VOU09SX1NZU1RFTV9fQkFTRV9DTEFTUyI+SU1BR0VfU0VOU09SX1NZU1RFTV9fQkFTRV9DTEFTUzwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0lNQUdFX1NFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWSI+SU1BR0VfU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjSU1BR0VfU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUiI+SU1BR0VfU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0lNQUdFX1NFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj5JTUFHRV9TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0lNQUdFX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj5JTUFHRV9TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0lNQUdFX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCI+SU1BR0VfU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTEFORF9TVVJGQUNFIj5MQU5EX1NVUkZBQ0U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMQU5EX1NVUkZBQ0VfX0JBU0VfQ0xBU1MiPkxBTkRfU1VSRkFDRV9fQkFTRV9DTEFTUzwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xBTkRfU1VSRkFDRV9fRVZFTE9WRVNfSU4iPkxBTkRfU1VSRkFDRV9fRVZFTE9WRVNfSU48L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMQU5EX1NVUkZBQ0VfX0hBU19TVVJGQUNFIj5MQU5EX1NVUkZBQ0VfX0hBU19TVVJGQUNFPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTEFORF9TVVJGQUNFX0ZFQVRVUkVfQ09VTlQiPkxBTkRfU1VSRkFDRV9GRUFUVVJFX0NPVU5UPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTElEQVJfU1lTVEVNIj5MSURBUl9TWVNURU08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX0FOR0xFX01BWCI+TElEQVJfU1lTVEVNX19BTkdMRV9NQVg8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX0FOR0xFX01JTiI+TElEQVJfU1lTVEVNX19BTkdMRV9NSU48L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX0JBU0VfQ0xBU1MiPkxJREFSX1NZU1RFTV9fQkFTRV9DTEFTUzwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xJREFSX1NZU1RFTV9fRlJFUVVFTkNZIj5MSURBUl9TWVNURU1fX0ZSRVFVRU5DWTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xJREFSX1NZU1RFTV9fSURFTlRJRklFUiI+TElEQVJfU1lTVEVNX19JREVOVElGSUVSPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTElEQVJfU1lTVEVNX19MQVlFUl9BTkdMRV9NSU4iPkxJREFSX1NZU1RFTV9fTEFZRVJfQU5HTEVfTUlOPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTElEQVJfU1lTVEVNX19MQVlFUl9BTkdMRV9TVEVQIj5MSURBUl9TWVNURU1fX0xBWUVSX0FOR0xFX1NURVA8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj5MSURBUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTElEQVJfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+TElEQVJfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xJREFSX1NZU1RFTV9fTkJfTEFZRVJTIj5MSURBUl9TWVNURU1fX05CX0xBWUVSUzwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xJREFSX1NZU1RFTV9fTk9JU0UiPkxJREFSX1NZU1RFTV9fTk9JU0U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX1JBTkdFX01BWCI+TElEQVJfU1lTVEVNX19SQU5HRV9NQVg8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX1JBTkdFX01JTiI+TElEQVJfU1lTVEVNX19SQU5HRV9NSU48L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX1NDQU5fVElNRSI+TElEQVJfU1lTVEVNX19TQ0FOX1RJTUU8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMSURBUl9TWVNURU1fX1NJR01BX05PSVNFIj5MSURBUl9TWVNURU1fX1NJR01BX05PSVNFPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTElEQVJfU1lTVEVNX19USU1FX0lOQ1JFTUVOVCI+TElEQVJfU1lTVEVNX19USU1FX0lOQ1JFTUVOVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xJREFSX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj5MSURBUl9TWVNURU1fRkVBVFVSRV9DT1VOVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNIj5MT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTIj5MT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fQkFTRV9DTEFTUzwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1kiPkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1k8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUiI+TE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fX0lERU5USUZJRVI8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNMT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI0xPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+TE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCI+TE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI09CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTSI+T0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTIj5PQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWSI+T0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1k8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0lERU5USUZJRVIiPk9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI09CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPk9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT048L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj5PQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPk9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU0iPk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1MiPk9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWSI+T0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI09CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSIj5PQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI09CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+T0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj5PQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT048L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj5PQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjT05fUE9SVCI+T05fUE9SVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI09OX1BPUlRfX0JBU0VfUEFSQU1FVEVSIj5PTl9QT1JUX19CQVNFX1BBUkFNRVRFUjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI09OX1BPUlRfX1BPUlQiPk9OX1BPUlRfX1BPUlQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNPTl9QT1JUX0ZFQVRVUkVfQ09VTlQiPk9OX1BPUlRfRkVBVFVSRV9DT1VOVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BFREVTVFJJQU4iPlBFREVTVFJJQU48L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQRURFU1RSSUFOX19CQVNFX0NMQVNTIj5QRURFU1RSSUFOX19CQVNFX0NMQVNTPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUEVERVNUUklBTl9fRVZFTE9WRVNfSU4iPlBFREVTVFJJQU5fX0VWRUxPVkVTX0lOPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUEVERVNUUklBTl9fSEFTX1NVUkZBQ0UiPlBFREVTVFJJQU5fX0hBU19TVVJGQUNFPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUEVERVNUUklBTl9fTU9WRVNfT1ZFUiI+UEVERVNUUklBTl9fTU9WRVNfT1ZFUjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BFREVTVFJJQU5fRkVBVFVSRV9DT1VOVCI+UEVERVNUUklBTl9GRUFUVVJFX0NPVU5UPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUEhZU0lDQUxfREFUQSI+UEhZU0lDQUxfREFUQTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BIWVNJQ0FMX0RBVEFfX0JBU0VfREFUQV9UWVBFIj5QSFlTSUNBTF9EQVRBX19CQVNFX0RBVEFfVFlQRTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BIWVNJQ0FMX0RBVEFfX1VOSVQiPlBIWVNJQ0FMX0RBVEFfX1VOSVQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQSFlTSUNBTF9EQVRBX0ZFQVRVUkVfQ09VTlQiPlBIWVNJQ0FMX0RBVEFfRkVBVFVSRV9DT1VOVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BIWVNJQ0FMX09CSkVDVCI+UEhZU0lDQUxfT0JKRUNUPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUEhZU0lDQUxfT0JKRUNUX19CQVNFX0NMQVNTIj5QSFlTSUNBTF9PQkpFQ1RfX0JBU0VfQ0xBU1M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQSFlTSUNBTF9PQkpFQ1RfX0VWRUxPVkVTX0lOIj5QSFlTSUNBTF9PQkpFQ1RfX0VWRUxPVkVTX0lOPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUEhZU0lDQUxfT0JKRUNUX19IQVNfU1VSRkFDRSI+UEhZU0lDQUxfT0JKRUNUX19IQVNfU1VSRkFDRTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BIWVNJQ0FMX09CSkVDVF9GRUFUVVJFX0NPVU5UIj5QSFlTSUNBTF9PQkpFQ1RfRkVBVFVSRV9DT1VOVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BMQU5FVCI+UExBTkVUPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUExBTkVUX19CQVNFX0NMQVNTIj5QTEFORVRfX0JBU0VfQ0xBU1M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQTEFORVRfX0VWRUxPVkVTX0lOIj5QTEFORVRfX0VWRUxPVkVTX0lOPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUExBTkVUX19IQVNfU1VSRkFDRSI+UExBTkVUX19IQVNfU1VSRkFDRTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BMQU5FVF9GRUFUVVJFX0NPVU5UIj5QTEFORVRfRkVBVFVSRV9DT1VOVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BMQVRGT1JNIj5QTEFURk9STTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BMQVRGT1JNX19CQVNFX0NMQVNTIj5QTEFURk9STV9fQkFTRV9DTEFTUzwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BMQVRGT1JNX19CQVNFX05PREUiPlBMQVRGT1JNX19CQVNFX05PREU8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNQTEFURk9STV9GRUFUVVJFX0NPVU5UIj5QTEFURk9STV9GRUFUVVJFX0NPVU5UPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUE9SVCI+UE9SVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BPUlRfX0JBU0VfUE9SVCI+UE9SVF9fQkFTRV9QT1JUPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUE9SVF9fU1lOQ0hST05JWkFUSU9OX1BPTElDWSI+UE9SVF9fU1lOQ0hST05JWkFUSU9OX1BPTElDWTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1BPUlRfRkVBVFVSRV9DT1VOVCI+UE9SVF9GRUFUVVJFX0NPVU5UPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUFJJTUlUSVZFX0RBVEEiPlBSSU1JVElWRV9EQVRBPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUFJJTUlUSVZFX0RBVEFfX0JBU0VfUFJJTUlUSVZFX1RZUEUiPlBSSU1JVElWRV9EQVRBX19CQVNFX1BSSU1JVElWRV9UWVBFPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUFJJTUlUSVZFX0RBVEFfRkVBVFVSRV9DT1VOVCI+UFJJTUlUSVZFX0RBVEFfRkVBVFVSRV9DT1VOVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9UIj5ST0JPVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9UX19CQVNFX0NMQVNTIj5ST0JPVF9fQkFTRV9DTEFTUzwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9UX19FVkVMT1ZFU19JTiI+Uk9CT1RfX0VWRUxPVkVTX0lOPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RfX0hBU19TVVJGQUNFIj5ST0JPVF9fSEFTX1NVUkZBQ0U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVF9fS0lORCI+Uk9CT1RfX0tJTkQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVF9fTUFTUyI+Uk9CT1RfX01BU1M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVF9fTU9WRVNfT1ZFUiI+Uk9CT1RfX01PVkVTX09WRVI8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVF9fVUdWX0tJTkQiPlJPQk9UX19VR1ZfS0lORDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9UX19XSURUSCI+Uk9CT1RfX1dJRFRIPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RfRkVBVFVSRV9DT1VOVCI+Uk9CT1RfRkVBVFVSRV9DT1VOVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9UX0tJTkQiPlJPQk9UX0tJTkQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVElDX01JRERMRVdBUkUiPlJPQk9USUNfTUlERExFV0FSRTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9USUNfTUlERExFV0FSRV9fQkFTRV9DTEFTUyI+Uk9CT1RJQ19NSURETEVXQVJFX19CQVNFX0NMQVNTPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RJQ19NSURETEVXQVJFX19CQVNFX05PREUiPlJPQk9USUNfTUlERExFV0FSRV9fQkFTRV9OT0RFPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RJQ19NSURETEVXQVJFX19LSU5EIj5ST0JPVElDX01JRERMRVdBUkVfX0tJTkQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVElDX01JRERMRVdBUkVfRkVBVFVSRV9DT1VOVCI+Uk9CT1RJQ19NSURETEVXQVJFX0ZFQVRVUkVfQ09VTlQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVElDX01JRERMRVdBUkVfS0lORCI+Uk9CT1RJQ19NSURETEVXQVJFX0tJTkQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVElDX1NJTVVMQVRPUiI+Uk9CT1RJQ19TSU1VTEFUT1I8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVElDX1NJTVVMQVRPUl9fQkFTRV9DTEFTUyI+Uk9CT1RJQ19TSU1VTEFUT1JfX0JBU0VfQ0xBU1M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVElDX1NJTVVMQVRPUl9fQkFTRV9OT0RFIj5ST0JPVElDX1NJTVVMQVRPUl9fQkFTRV9OT0RFPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RJQ19TSU1VTEFUT1JfRkVBVFVSRV9DT1VOVCI+Uk9CT1RJQ19TSU1VTEFUT1JfRkVBVFVSRV9DT1VOVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9USUNfU1lTVEVNIj5ST0JPVElDX1NZU1RFTTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9USUNfU1lTVEVNX19CQVNFX0NMQVNTIj5ST0JPVElDX1NZU1RFTV9fQkFTRV9DTEFTUzwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1JPQk9USUNfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiI+Uk9CT1RJQ19TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjUk9CT1RJQ19TWVNURU1fX0xPQ0FMX1BPU0lUSU9OIj5ST0JPVElDX1NZU1RFTV9fTE9DQUxfUE9TSVRJT048L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNST0JPVElDX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj5ST0JPVElDX1NZU1RFTV9GRUFUVVJFX0NPVU5UPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VOU09SX0RSSVZFUiI+U0VOU09SX0RSSVZFUjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFTlNPUl9EUklWRVJfX0JBU0VfQ0xBU1MiPlNFTlNPUl9EUklWRVJfX0JBU0VfQ0xBU1M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRU5TT1JfRFJJVkVSX19ERUFETElORSI+U0VOU09SX0RSSVZFUl9fREVBRExJTkU8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRU5TT1JfRFJJVkVSX19JU19QRVJJT0RJQyI+U0VOU09SX0RSSVZFUl9fSVNfUEVSSU9ESUM8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRU5TT1JfRFJJVkVSX19QRVJJT0QiPlNFTlNPUl9EUklWRVJfX1BFUklPRDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFTlNPUl9EUklWRVJfX1BSSU9SSVRZIj5TRU5TT1JfRFJJVkVSX19QUklPUklUWTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFTlNPUl9EUklWRVJfX1dDRVQiPlNFTlNPUl9EUklWRVJfX1dDRVQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRU5TT1JfRFJJVkVSX0ZFQVRVUkVfQ09VTlQiPlNFTlNPUl9EUklWRVJfRkVBVFVSRV9DT1VOVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFTlNPUl9TWVNURU0iPlNFTlNPUl9TWVNURU08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTIj5TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZIj5TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1k8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRU5TT1JfU1lTVEVNX19JREVOVElGSUVSIj5TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04iPlNFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04iPlNFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj5TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRVJWSUNFX0ZMT1dfS0lORCI+U0VSVklDRV9GTE9XX0tJTkQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRVJWSUNFX1BPUlQiPlNFUlZJQ0VfUE9SVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFUlZJQ0VfUE9SVF9fQkFTRV9QT1JUIj5TRVJWSUNFX1BPUlRfX0JBU0VfUE9SVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NFUlZJQ0VfUE9SVF9fS0lORCI+U0VSVklDRV9QT1JUX19LSU5EPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0VSVklDRV9QT1JUX19TWU5DSFJPTklaQVRJT05fUE9MSUNZIj5TRVJWSUNFX1BPUlRfX1NZTkNIUk9OSVpBVElPTl9QT0xJQ1k8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTRVJWSUNFX1BPUlRfRkVBVFVSRV9DT1VOVCI+U0VSVklDRV9QT1JUX0ZFQVRVUkVfQ09VTlQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTSEFERSI+U0hBREU8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTSU1VTEFURURfU1lTVEVNIj5TSU1VTEFURURfU1lTVEVNPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0lNVUxBVEVEX1NZU1RFTV9fQkFTRV9DTEFTUyI+U0lNVUxBVEVEX1NZU1RFTV9fQkFTRV9DTEFTUzwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NJTVVMQVRFRF9TWVNURU1fX0JBU0VfUFJPUEVSVFkiPlNJTVVMQVRFRF9TWVNURU1fX0JBU0VfUFJPUEVSVFk8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTSU1VTEFURURfU1lTVEVNX19ERUFETElORSI+U0lNVUxBVEVEX1NZU1RFTV9fREVBRExJTkU8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTSU1VTEFURURfU1lTVEVNX19JU19QRVJJT0RJQyI+U0lNVUxBVEVEX1NZU1RFTV9fSVNfUEVSSU9ESUM8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTSU1VTEFURURfU1lTVEVNX19NRVNIIj5TSU1VTEFURURfU1lTVEVNX19NRVNIPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0lNVUxBVEVEX1NZU1RFTV9fUEVSSU9EIj5TSU1VTEFURURfU1lTVEVNX19QRVJJT0Q8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTSU1VTEFURURfU1lTVEVNX19QUklPUklUWSI+U0lNVUxBVEVEX1NZU1RFTV9fUFJJT1JJVFk8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTSU1VTEFURURfU1lTVEVNX19XQ0VUIj5TSU1VTEFURURfU1lTVEVNX19XQ0VUPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU0lNVUxBVEVEX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj5TSU1VTEFURURfU1lTVEVNX0ZFQVRVUkVfQ09VTlQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTT0ZUV0FSRSI+U09GVFdBUkU8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTT0ZUV0FSRV9fQkFTRV9DTEFTUyI+U09GVFdBUkVfX0JBU0VfQ0xBU1M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTT0ZUV0FSRV9fREVBRExJTkUiPlNPRlRXQVJFX19ERUFETElORTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NPRlRXQVJFX19JU19QRVJJT0RJQyI+U09GVFdBUkVfX0lTX1BFUklPRElDPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU09GVFdBUkVfX1BFUklPRCI+U09GVFdBUkVfX1BFUklPRDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NPRlRXQVJFX19QUklPUklUWSI+U09GVFdBUkVfX1BSSU9SSVRZPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU09GVFdBUkVfX1dDRVQiPlNPRlRXQVJFX19XQ0VUPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU09GVFdBUkVfRkVBVFVSRV9DT1VOVCI+U09GVFdBUkVfRkVBVFVSRV9DT1VOVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NUQUlSUyI+U1RBSVJTPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU1RBSVJTX19CQVNFX0NMQVNTIj5TVEFJUlNfX0JBU0VfQ0xBU1M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTVEFJUlNfX0VWRUxPVkVTX0lOIj5TVEFJUlNfX0VWRUxPVkVTX0lOPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU1RBSVJTX19IQVNfU1VSRkFDRSI+U1RBSVJTX19IQVNfU1VSRkFDRTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NUQUlSU19GRUFUVVJFX0NPVU5UIj5TVEFJUlNfRkVBVFVSRV9DT1VOVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NUQVRFIj5TVEFURTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NUQVRFX19BUkdVTUVOVFMiPlNUQVRFX19BUkdVTUVOVFM8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTVEFURV9fQkFTRV9TVEFURSI+U1RBVEVfX0JBU0VfU1RBVEU8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTVEFURV9fT1BFUkFUSU9OIj5TVEFURV9fT1BFUkFUSU9OPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU1RBVEVfRkVBVFVSRV9DT1VOVCI+U1RBVEVfRkVBVFVSRV9DT1VOVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NVUkZBQ0UiPlNVUkZBQ0U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTVVJGQUNFX19CQVNFX0NMQVNTIj5TVVJGQUNFX19CQVNFX0NMQVNTPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU1VSRkFDRV9fRVZFTE9WRVNfSU4iPlNVUkZBQ0VfX0VWRUxPVkVTX0lOPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU1VSRkFDRV9fSEFTX1NVUkZBQ0UiPlNVUkZBQ0VfX0hBU19TVVJGQUNFPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU1VSRkFDRV9GRUFUVVJFX0NPVU5UIj5TVVJGQUNFX0ZFQVRVUkVfQ09VTlQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTWU5DSFJPTklaQVRJT05fS0lORCI+U1lOQ0hST05JWkFUSU9OX0tJTkQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNTWVNURU0iPlNZU1RFTTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1NZU1RFTV9fQkFTRV9DTEFTUyI+U1lTVEVNX19CQVNFX0NMQVNTPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjU1lTVEVNX0ZFQVRVUkVfQ09VTlQiPlNZU1RFTV9GRUFUVVJFX0NPVU5UPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjVFJBTlNJVElPTiI+VFJBTlNJVElPTjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1RSQU5TSVRJT05fX0JBU0VfVFJBTlNJVElPTiI+VFJBTlNJVElPTl9fQkFTRV9UUkFOU0lUSU9OPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjVFJBTlNJVElPTl9fRUZGRUNUIj5UUkFOU0lUSU9OX19FRkZFQ1Q8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNUUkFOU0lUSU9OX19HVUFSRCI+VFJBTlNJVElPTl9fR1VBUkQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNUUkFOU0lUSU9OX0ZFQVRVUkVfQ09VTlQiPlRSQU5TSVRJT05fRkVBVFVSRV9DT1VOVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1VHVl9LSU5EIj5VR1ZfS0lORDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1VOSVRfS0lORCI+VU5JVF9LSU5EPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0FURVJfU1VSRkFDRSI+V0FURVJfU1VSRkFDRTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dBVEVSX1NVUkZBQ0VfX0JBU0VfQ0xBU1MiPldBVEVSX1NVUkZBQ0VfX0JBU0VfQ0xBU1M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXQVRFUl9TVVJGQUNFX19FVkVMT1ZFU19JTiI+V0FURVJfU1VSRkFDRV9fRVZFTE9WRVNfSU48L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXQVRFUl9TVVJGQUNFX19IQVNfU1VSRkFDRSI+V0FURVJfU1VSRkFDRV9fSEFTX1NVUkZBQ0U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXQVRFUl9TVVJGQUNFX0ZFQVRVUkVfQ09VTlQiPldBVEVSX1NVUkZBQ0VfRkVBVFVSRV9DT1VOVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTSI+V0hFRUxfU1lTVEVNPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0hFRUxfU1lTVEVNX19CQVNFX0NMQVNTIj5XSEVFTF9TWVNURU1fX0JBU0VfQ0xBU1M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXSEVFTF9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OIj5XSEVFTF9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0hFRUxfU1lTVEVNX19MT0NBTF9QT1NJVElPTiI+V0hFRUxfU1lTVEVNX19MT0NBTF9QT1NJVElPTjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9DT01QUkVTU0lPTiI+V0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0NPTVBSRVNTSU9OPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0RBTVBJTkciPldIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9EQU1QSU5HPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX1JFU1RfTEVOR1RIIj5XSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fUkVTVF9MRU5HVEg8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fU1RJRkZORVNTIj5XSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fU1RJRkZORVNTPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0hFRUxfU1lTVEVNX19UWVBFX09GX1dIRUVMIj5XSEVFTF9TWVNURU1fX1RZUEVfT0ZfV0hFRUw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXSEVFTF9TWVNURU1fX1dIRUVMX0NPTk5FQ1RJT05fSEVJR0hUIj5XSEVFTF9TWVNURU1fX1dIRUVMX0NPTk5FQ1RJT05fSEVJR0hUPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0hFRUxfU1lTVEVNX19XSEVFTF9GUklDVElPTiI+V0hFRUxfU1lTVEVNX19XSEVFTF9GUklDVElPTjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfUkFESVVTIj5XSEVFTF9TWVNURU1fX1dIRUVMX1JBRElVUzwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfU1RFRVJJTkdfUElfREtEIj5XSEVFTF9TWVNURU1fX1dIRUVMX1NURUVSSU5HX1BJX0RLRDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfU1RFRVJJTkdfUElfREtQIj5XSEVFTF9TWVNURU1fX1dIRUVMX1NURUVSSU5HX1BJX0RLUDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtEIj5XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLRDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtJIj5XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLSTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtQIj5XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLUDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9TVU0iPldIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9TVU08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNXSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RNQVhfVkFMIj5XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RNQVhfVkFMPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjV0hFRUxfU1lTVEVNX19XSEVFTF9XSURUSCI+V0hFRUxfU1lTVEVNX19XSEVFTF9XSURUSDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI1dIRUVMX1NZU1RFTV9GRUFUVVJFX0NPVU5UIj5XSEVFTF9TWVNURU1fRkVBVFVSRV9DT1VOVDwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FU3RydWN0dXJhbEZlYXR1cmUuSW50ZXJuYWwuRHluYW1pY1ZhbHVlSG9sZGVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVN0cnVjdHVyYWxGZWF0dXJlLkludGVybmFsLkR5bmFtaWNWYWx1ZUhvbGRlcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPk5JTDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVPUFBPU0lURV9GRUFUVVJFX0JBU0U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2NyZWF0ZVBhY2thZ2VDb250ZW50cygpIj5jcmVhdGVQYWNrYWdlQ29udGVudHM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIHRoZSBtZXRhLW1vZGVsIG9iamVjdHMgZm9yIHRoZSBwYWNrYWdlLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEFjdHVhdG9yU3lzdGVtKCkiPmdldEFjdHVhdG9yU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRBZ2VudF9Nb3Zlc092ZXIoKSI+Z2V0QWdlbnRfTW92ZXNPdmVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0QWdlbnQoKSI+Z2V0QWdlbnQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0QWxnb3JpdGhtX0Jhc2VfT3BlcmF0aW9uKCkiPmdldEFsZ29yaXRobV9CYXNlX09wZXJhdGlvbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0QWxnb3JpdGhtX0V4dEZ1bmN0aW9uTmFtZSgpIj5nZXRBbGdvcml0aG1fRXh0RnVuY3Rpb25OYW1lPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRBbGdvcml0aG1fSXNFeHRlcm5hbCgpIj5nZXRBbGdvcml0aG1fSXNFeHRlcm5hbDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0QWxnb3JpdGhtX1BhdGgoKSI+Z2V0QWxnb3JpdGhtX1BhdGg8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0QWxnb3JpdGhtKCkiPmdldEFsZ29yaXRobTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0QWxnb3JpdGhtTGlicmFyeV9CYXNlX0NsYXNzKCkiPmdldEFsZ29yaXRobUxpYnJhcnlfQmFzZV9DbGFzczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0QWxnb3JpdGhtTGlicmFyeV9QYXRoKCkiPmdldEFsZ29yaXRobUxpYnJhcnlfUGF0aDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRBbGdvcml0aG1MaWJyYXJ5KCkiPmdldEFsZ29yaXRobUxpYnJhcnk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEJsZW5kZXJNb3JzZV9fdmlld3BvcnRfc2hhZGUoKSI+Z2V0QmxlbmRlck1vcnNlX192aWV3cG9ydF9zaGFkZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRCbGVuZGVyTW9yc2VfRGVidWdEaXNwbGF5KCkiPmdldEJsZW5kZXJNb3JzZV9EZWJ1Z0Rpc3BsYXk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0QmxlbmRlck1vcnNlX0RlYnVnTW9kZSgpIj5nZXRCbGVuZGVyTW9yc2VfRGVidWdNb2RlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEJsZW5kZXJNb3JzZV9HcmF2aXR5KCkiPmdldEJsZW5kZXJNb3JzZV9HcmF2aXR5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0QmxlbmRlck1vcnNlKCkiPmdldEJsZW5kZXJNb3JzZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEJ1aWxkaW5nKCkiPmdldEJ1aWxkaW5nPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldENhbWVyYVN5c3RlbV9BbHBoYV91KCkiPmdldENhbWVyYVN5c3RlbV9BbHBoYV91PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRDYW1lcmFTeXN0ZW1fQWxwaGFfdigpIj5nZXRDYW1lcmFTeXN0ZW1fQWxwaGFfdjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Q2FtZXJhU3lzdGVtX0NvbG9yX2Zvcm1hdCgpIj5nZXRDYW1lcmFTeXN0ZW1fQ29sb3JfZm9ybWF0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldENhbWVyYVN5c3RlbV9IZWlnaHQoKSI+Z2V0Q2FtZXJhU3lzdGVtX0hlaWdodDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Q2FtZXJhU3lzdGVtX1UwKCkiPmdldENhbWVyYVN5c3RlbV9VMDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Q2FtZXJhU3lzdGVtX1YwKCkiPmdldENhbWVyYVN5c3RlbV9WMDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Q2FtZXJhU3lzdGVtX1dpZHRoKCkiPmdldENhbWVyYVN5c3RlbV9XaWR0aDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRDYW1lcmFTeXN0ZW0oKSI+Z2V0Q2FtZXJhU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRDb2xsZWN0aW9uX0Jhc2VfRGF0YVR5cGUoKSI+Z2V0Q29sbGVjdGlvbl9CYXNlX0RhdGFUeXBlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldENvbGxlY3Rpb24oKSI+Z2V0Q29sbGVjdGlvbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Q29tcG9zZWREYXRhX0Jhc2VfRGF0YVR5cGUoKSI+Z2V0Q29tcG9zZWREYXRhX0Jhc2VfRGF0YVR5cGU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Q29tcG9zZWREYXRhKCkiPmdldENvbXBvc2VkRGF0YTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Q3ljYWJUS19UaW1lRmFjdG9yKCkiPmdldEN5Y2FiVEtfVGltZUZhY3RvcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRDeWNhYlRLX1RpbWVTdGVwKCkiPmdldEN5Y2FiVEtfVGltZVN0ZXA8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Q3ljYWJUS19Vc2VSZWFsVGltZSgpIj5nZXRDeWNhYlRLX1VzZVJlYWxUaW1lPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Q3ljYWJUSygpIj5nZXRDeWNhYlRLPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRW51bTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXREYXRhRmxvd0RpcmVjdGlvbktpbmQoKSI+Z2V0RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXREYXRhRmxvd1BvcnRfQnVmZmVyU2l6ZSgpIj5nZXREYXRhRmxvd1BvcnRfQnVmZmVyU2l6ZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0RGF0YUZsb3dQb3J0X0RpcmVjdGlvbigpIj5nZXREYXRhRmxvd1BvcnRfRGlyZWN0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldERhdGFGbG93UG9ydCgpIj5nZXREYXRhRmxvd1BvcnQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEVuZ2luZVN5c3RlbV9HZWFyX3JhdGlvbigpIj5nZXRFbmdpbmVTeXN0ZW1fR2Vhcl9yYXRpb248L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0RW5naW5lU3lzdGVtX01heEFsbG93ZWRTdGVlcmluZygpIj5nZXRFbmdpbmVTeXN0ZW1fTWF4QWxsb3dlZFN0ZWVyaW5nPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRFbmdpbmVTeXN0ZW1fTWF4QWxsb3dlZFZlbG9jaXR5KCkiPmdldEVuZ2luZVN5c3RlbV9NYXhBbGxvd2VkVmVsb2NpdHk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEVuZ2luZVN5c3RlbV9NYXhCcmVha2luZ0ZvcmNlKCkiPmdldEVuZ2luZVN5c3RlbV9NYXhCcmVha2luZ0ZvcmNlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRFbmdpbmVTeXN0ZW1fTWF4RW5naW5lRm9yY2UoKSI+Z2V0RW5naW5lU3lzdGVtX01heEVuZ2luZUZvcmNlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRFbmdpbmVTeXN0ZW1fVmVoaWNsZVRyYWN0aW9uKCkiPmdldEVuZ2luZVN5c3RlbV9WZWhpY2xlVHJhY3Rpb248L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0RW5naW5lU3lzdGVtKCkiPmdldEVuZ2luZVN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRFbnZpcm9ubWVudCgpIj5nZXRFbnZpcm9ubWVudDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRGbG9vcigpIj5nZXRGbG9vcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRHUFNTeXN0ZW1fT3JpZ2luUG9zaXRpb24oKSI+Z2V0R1BTU3lzdGVtX09yaWdpblBvc2l0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEdQU1N5c3RlbSgpIj5nZXRHUFNTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0R3JvdW5kKCkiPmdldEdyb3VuZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEhhcmR3YXJlKCkiPmdldEhhcmR3YXJlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldEh1bWFuKCkiPmdldEh1bWFuPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0SW1hZ2VTZW5zb3JTeXN0ZW0oKSI+Z2V0SW1hZ2VTZW5zb3JTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0TGFuZFN1cmZhY2UoKSI+Z2V0TGFuZFN1cmZhY2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fQW5nbGVfbWF4KCkiPmdldExpZGFyU3lzdGVtX0FuZ2xlX21heDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRMaWRhclN5c3RlbV9BbmdsZV9taW4oKSI+Z2V0TGlkYXJTeXN0ZW1fQW5nbGVfbWluPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldExpZGFyU3lzdGVtX0xheWVyQW5nbGVNaW4oKSI+Z2V0TGlkYXJTeXN0ZW1fTGF5ZXJBbmdsZU1pbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fTGF5ZXJBbmdsZVN0ZXAoKSI+Z2V0TGlkYXJTeXN0ZW1fTGF5ZXJBbmdsZVN0ZXA8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldExpZGFyU3lzdGVtX05iTGF5ZXJzKCkiPmdldExpZGFyU3lzdGVtX05iTGF5ZXJzPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRMaWRhclN5c3RlbV9Ob2lzZSgpIj5nZXRMaWRhclN5c3RlbV9Ob2lzZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fUmFuZ2VfbWF4KCkiPmdldExpZGFyU3lzdGVtX1JhbmdlX21heDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRMaWRhclN5c3RlbV9SYW5nZV9taW4oKSI+Z2V0TGlkYXJTeXN0ZW1fUmFuZ2VfbWluPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldExpZGFyU3lzdGVtX1NjYW5fdGltZSgpIj5nZXRMaWRhclN5c3RlbV9TY2FuX3RpbWU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fU2lnbWFOb2lzZSgpIj5nZXRMaWRhclN5c3RlbV9TaWdtYU5vaXNlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRMaWRhclN5c3RlbV9UaW1lX2luY3JlbWVudCgpIj5nZXRMaWRhclN5c3RlbV9UaW1lX2luY3JlbWVudDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldExpZGFyU3lzdGVtKCkiPmdldExpZGFyU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldExvY2FsaXphdGlvblNlbnNvclN5c3RlbSgpIj5nZXRMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtKCkiPmdldE9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSgpIj5nZXRPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0T25Qb3J0X0Jhc2VfUGFyYW1ldGVyKCkiPmdldE9uUG9ydF9CYXNlX1BhcmFtZXRlcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRPblBvcnRfUG9ydCgpIj5nZXRPblBvcnRfUG9ydDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldE9uUG9ydCgpIj5nZXRPblBvcnQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRQZWRlc3RyaWFuKCkiPmdldFBlZGVzdHJpYW48L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0UGh5c2ljYWxEYXRhX0Jhc2VfRGF0YVR5cGUoKSI+Z2V0UGh5c2ljYWxEYXRhX0Jhc2VfRGF0YVR5cGU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFBoeXNpY2FsRGF0YV9Vbml0KCkiPmdldFBoeXNpY2FsRGF0YV9Vbml0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFBoeXNpY2FsRGF0YSgpIj5nZXRQaHlzaWNhbERhdGE8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFBoeXNpY2FsT2JqZWN0X0V2ZWxvdmVzSW4oKSI+Z2V0UGh5c2ljYWxPYmplY3RfRXZlbG92ZXNJbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRQaHlzaWNhbE9iamVjdF9IYXNTdXJmYWNlKCkiPmdldFBoeXNpY2FsT2JqZWN0X0hhc1N1cmZhY2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRQaHlzaWNhbE9iamVjdCgpIj5nZXRQaHlzaWNhbE9iamVjdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFBsYW5ldCgpIj5nZXRQbGFuZXQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0UGxhdGZvcm1fQmFzZV9Ob2RlKCkiPmdldFBsYXRmb3JtX0Jhc2VfTm9kZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFBsYXRmb3JtKCkiPmdldFBsYXRmb3JtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFBvcnRfQmFzZV9Qb3J0KCkiPmdldFBvcnRfQmFzZV9Qb3J0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRQb3J0X1N5bmNocm9uaXphdGlvblBvbGljeSgpIj5nZXRQb3J0X1N5bmNocm9uaXphdGlvblBvbGljeTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRQb3J0KCkiPmdldFBvcnQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFByaW1pdGl2ZURhdGFfQmFzZV9QcmltaXRpdmVUeXBlKCkiPmdldFByaW1pdGl2ZURhdGFfQmFzZV9QcmltaXRpdmVUeXBlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFByaW1pdGl2ZURhdGEoKSI+Z2V0UHJpbWl0aXZlRGF0YTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Um9ib3RfS2luZCgpIj5nZXRSb2JvdF9LaW5kPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRSb2JvdF9NYXNzKCkiPmdldFJvYm90X01hc3M8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFJvYm90X1VndktpbmQoKSI+Z2V0Um9ib3RfVWd2S2luZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Um9ib3RfV2lkdGgoKSI+Z2V0Um9ib3RfV2lkdGg8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Um9ib3QoKSI+Z2V0Um9ib3Q8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFJvYm90aWNNaWRkbGV3YXJlX0tpbmQoKSI+Z2V0Um9ib3RpY01pZGRsZXdhcmVfS2luZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFJvYm90aWNNaWRkbGV3YXJlKCkiPmdldFJvYm90aWNNaWRkbGV3YXJlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRW51bTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRSb2JvdGljTWlkZGxld2FyZUtpbmQoKSI+Z2V0Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Um9ib3RpY1NpbXVsYXRvcigpIj5nZXRSb2JvdGljU2ltdWxhdG9yPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFJvYm90aWNTeXN0ZW1fTG9jYWxPcmllbnRhdGlvbigpIj5nZXRSb2JvdGljU3lzdGVtX0xvY2FsT3JpZW50YXRpb248L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFJvYm90aWNTeXN0ZW1fTG9jYWxQb3NpdGlvbigpIj5nZXRSb2JvdGljU3lzdGVtX0xvY2FsUG9zaXRpb248L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Um9ib3RpY1N5c3RlbSgpIj5nZXRSb2JvdGljU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUVudW08L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Um9ib3RLaW5kKCkiPmdldFJvYm90S2luZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0Um9ib3RNTEZhY3RvcnkoKSI+Z2V0Um9ib3RNTEZhY3Rvcnk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U2Vuc29yRHJpdmVyKCkiPmdldFNlbnNvckRyaXZlcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRTZW5zb3JTeXN0ZW1fRnJlcXVlbmN5KCkiPmdldFNlbnNvclN5c3RlbV9GcmVxdWVuY3k8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U2Vuc29yU3lzdGVtX0lkZW50aWZpZXIoKSI+Z2V0U2Vuc29yU3lzdGVtX0lkZW50aWZpZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRTZW5zb3JTeXN0ZW0oKSI+Z2V0U2Vuc29yU3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUVudW08L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U2VydmljZUZsb3dLaW5kKCkiPmdldFNlcnZpY2VGbG93S2luZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U2VydmljZVBvcnRfS2luZCgpIj5nZXRTZXJ2aWNlUG9ydF9LaW5kPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFNlcnZpY2VQb3J0KCkiPmdldFNlcnZpY2VQb3J0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUVudW08L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U2hhZGUoKSI+Z2V0U2hhZGU8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U2ltdWxhdGVkU3lzdGVtX0Jhc2VfUHJvcGVydHkoKSI+Z2V0U2ltdWxhdGVkU3lzdGVtX0Jhc2VfUHJvcGVydHk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFNpbXVsYXRlZFN5c3RlbV9NZXNoKCkiPmdldFNpbXVsYXRlZFN5c3RlbV9NZXNoPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFNpbXVsYXRlZFN5c3RlbSgpIj5nZXRTaW11bGF0ZWRTeXN0ZW08L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFNvZnR3YXJlX0RlYWRsaW5lKCkiPmdldFNvZnR3YXJlX0RlYWRsaW5lPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFNvZnR3YXJlX0lzUGVyaW9kaWMoKSI+Z2V0U29mdHdhcmVfSXNQZXJpb2RpYzwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRTb2Z0d2FyZV9QZXJpb2QoKSI+Z2V0U29mdHdhcmVfUGVyaW9kPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFNvZnR3YXJlX1ByaW9yaXR5KCkiPmdldFNvZnR3YXJlX1ByaW9yaXR5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFNvZnR3YXJlX1djZXQoKSI+Z2V0U29mdHdhcmVfV2NldDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFNvZnR3YXJlKCkiPmdldFNvZnR3YXJlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFN0YWlycygpIj5nZXRTdGFpcnM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U3RhdGVfQXJndW1lbnRzKCkiPmdldFN0YXRlX0FyZ3VtZW50czwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U3RhdGVfQmFzZV9TdGF0ZSgpIj5nZXRTdGF0ZV9CYXNlX1N0YXRlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRTdGF0ZV9PcGVyYXRpb24oKSI+Z2V0U3RhdGVfT3BlcmF0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFN0YXRlKCkiPmdldFN0YXRlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFN1cmZhY2UoKSI+Z2V0U3VyZmFjZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUVudW08L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0U3luY2hyb25pemF0aW9uS2luZCgpIj5nZXRTeW5jaHJvbml6YXRpb25LaW5kPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRTeXN0ZW1fQmFzZV9DbGFzcygpIj5nZXRTeXN0ZW1fQmFzZV9DbGFzczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRTeXN0ZW0oKSI+Z2V0U3lzdGVtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRUcmFuc2l0aW9uX0Jhc2VfVHJhbnNpdGlvbigpIj5nZXRUcmFuc2l0aW9uX0Jhc2VfVHJhbnNpdGlvbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0VHJhbnNpdGlvbl9FZmZlY3QoKSI+Z2V0VHJhbnNpdGlvbl9FZmZlY3Q8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFRyYW5zaXRpb25fR3VhcmQoKSI+Z2V0VHJhbnNpdGlvbl9HdWFyZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRUcmFuc2l0aW9uKCkiPmdldFRyYW5zaXRpb248L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRW51bTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRVR1ZLaW5kKCkiPmdldFVHVktpbmQ8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FRW51bTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRVbml0S2luZCgpIj5nZXRVbml0S2luZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRXYXRlclN1cmZhY2UoKSI+Z2V0V2F0ZXJTdXJmYWNlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25Db21wcmVzc2lvbigpIj5nZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uQ29tcHJlc3Npb248L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25EYW1waW5nKCkiPmdldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25EYW1waW5nPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uUmVzdExlbmd0aCgpIj5nZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uUmVzdExlbmd0aDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvblN0aWZmbmVzcygpIj5nZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uU3RpZmZuZXNzPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRXaGVlbFN5c3RlbV9UeXBlT2ZXaGVlbCgpIj5nZXRXaGVlbFN5c3RlbV9UeXBlT2ZXaGVlbDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxDb25uZWN0aW9uSGVpZ2h0KCkiPmdldFdoZWVsU3lzdGVtX1doZWVsQ29ubmVjdGlvbkhlaWdodDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxGcmljdGlvbigpIj5nZXRXaGVlbFN5c3RlbV9XaGVlbEZyaWN0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRXaGVlbFN5c3RlbV9XaGVlbFJhZGl1cygpIj5nZXRXaGVlbFN5c3RlbV9XaGVlbFJhZGl1czwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxTdGVlcmluZ1BJRGtkKCkiPmdldFdoZWVsU3lzdGVtX1doZWVsU3RlZXJpbmdQSURrZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxTdGVlcmluZ1BJRGtwKCkiPmdldFdoZWVsU3lzdGVtX1doZWVsU3RlZXJpbmdQSURrcDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtkKCkiPmdldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURrZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtpKCkiPmdldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURraTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtwKCkiPmdldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURrcDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRG1heFN1bSgpIj5nZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4U3VtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4VmFsKCkiPmdldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURtYXhWYWw8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2dldFdoZWVsU3lzdGVtX1doZWVsV2lkdGgoKSI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxXaWR0aDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNnZXRXaGVlbFN5c3RlbSgpIj5nZXRXaGVlbFN5c3RlbTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwjaW5pdCgpIj5pbml0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcywgcmVnaXN0ZXJzLCBhbmQgaW5pdGlhbGl6ZXMgdGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGlzIG1vZGVsLCBhbmQgZm9yIGFueSBvdGhlcnMgdXBvbiB3aGljaCBpdCBkZXBlbmRzLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sI2luaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKSI+aW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50czwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NvbXBsZXRlIHRoZSBpbml0aWFsaXphdGlvbiBvZiB0aGUgcGFja2FnZSBhbmQgaXRzIG1ldGEtbW9kZWwuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FUGFja2FnZUltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVQYWNrYWdlSW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmJhc2ljR2V0RVN1cGVyUGFja2FnZSwgYmFzaWNTZXRFRmFjdG9yeUluc3RhbmNlLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUdldCwgZUludmVyc2VBZGQsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVTZXQsIGVTZXRQcm94eVVSSSwgZVVuc2V0LCBmcmVlemUsIGdldEVDbGFzc2lmaWVyLCBnZXRFQ2xhc3NpZmllckdlbiwgZ2V0RUNsYXNzaWZpZXJzLCBnZXRFRmFjdG9yeUluc3RhbmNlLCBnZXRFU3VicGFja2FnZXMsIGdldEVTdXBlclBhY2thZ2UsIGdldEV4dGVuZGVkTWV0YURhdGEsIGdldE5zUHJlZml4LCBnZXROc1VSSSwgc2V0RUZhY3RvcnlJbnN0YW5jZSwgc2V0RXh0ZW5kZWRNZXRhRGF0YSwgc2V0TmFtZXNwYWNlVVJJLCBzZXROc1ByZWZpeCwgc2V0TnNVUkksIHRvU3RyaW5nPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5hbWVkRWxlbWVudEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOYW1lZEVsZW1lbnRJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBnZXROYW1lLCBnZXROYW1lR2VuLCBzZXROYW1lPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU1vZGVsRWxlbWVudEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVNb2RlbEVsZW1lbnRJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZVVSSUZyYWdtZW50U2VnbWVudCwgZ2V0RUFubm90YXRpb24sIGdldEVBbm5vdGF0aW9uczwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lSW50ZXJuYWxDb250YWluZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmR5bmFtaWNHZXQsIGR5bmFtaWNTZXQsIGR5bmFtaWNVbnNldCwgZUFkYXB0ZXJzLCBlQ2xhc3MsIGVDb250YWluZXJGZWF0dXJlSUQsIGVEZWxpdmVyLCBlRGlyZWN0UmVzb3VyY2UsIGVJc1Byb3h5LCBlUHJveHlVUkksIGVTZXRDbGFzcywgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQmFzZVN0cnVjdHVyYWxGZWF0dXJlSUQsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVCYXNpY1NldENvbnRhaW5lciwgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGFpbnMsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZVJlbW92ZSwgZUludm9rZSwgZUlzU2V0LCBlT3BlbkdldCwgZU9wZW5Jc1NldCwgZU9wZW5TZXQsIGVPcGVuVW5zZXQsIGVSZXNvbHZlUHJveHksIGVSZXNvdXJjZSwgZVNldCwgZVNldFJlc291cmNlLCBlU2V0U3RvcmUsIGVTZXR0aW5nLCBlU3RvcmUsIGVVbnNldCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbElzU2V0LCBlVmlydHVhbFNldCwgZVZpcnR1YWxVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQsIGVOb3RpZnk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB3YWl0LCB3YWl0LCB3YWl0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0RUNsYXNzaWZpZXIsIGdldEVDbGFzc2lmaWVycywgZ2V0RUZhY3RvcnlJbnN0YW5jZSwgZ2V0RVN1YnBhY2thZ2VzLCBnZXRFU3VwZXJQYWNrYWdlLCBnZXROc1ByZWZpeCwgZ2V0TnNVUkksIHNldEVGYWN0b3J5SW5zdGFuY2UsIHNldE5zUHJlZml4LCBzZXROc1VSSTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FTmFtZWRFbGVtZW50Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVOYW1lZEVsZW1lbnQ8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXROYW1lLCBzZXROYW1lPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmdldEVBbm5vdGF0aW9uLCBnZXRFQW5ub3RhdGlvbnM8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iaW5pdCgpIj48IS0tIC0tPjwvQT48SDM+Citpbml0PC9IMz4KKzxQUkU+CitwdWJsaWMgc3RhdGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+IDxCPmluaXQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzLCByZWdpc3RlcnMsIGFuZCBpbml0aWFsaXplcyB0aGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoaXMgbW9kZWwsIGFuZCBmb3IgYW55IG90aGVycyB1cG9uIHdoaWNoIGl0IGRlcGVuZHMuCisgCisgPHA+VGhpcyBtZXRob2QgaXMgdXNlZCB0byBpbml0aWFsaXplIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2VJTlNUQU5DRSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZUlOU1RBTkNFPC9DT0RFPjwvQT4gd2hlbiB0aGF0IGZpZWxkIGlzIGFjY2Vzc2VkLgorIENsaWVudHMgc2hvdWxkIG5vdCBpbnZva2UgaXQgZGlyZWN0bHkuIEluc3RlYWQsIHRoZXkgc2hvdWxkIHNpbXBseSBhY2Nlc3MgdGhhdCBmaWVsZCB0byBvYnRhaW4gdGhlIHBhY2thZ2UuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2VOU19VUkkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmVOU19VUkk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNjcmVhdGVQYWNrYWdlQ29udGVudHMoKSI+PENPREU+Y3JlYXRlUGFja2FnZUNvbnRlbnRzKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCNpbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCkiPjxDT0RFPmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRUcmFuc2l0aW9uKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFRyYW5zaXRpb248L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldFRyYW5zaXRpb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRUcmFuc2l0aW9uKCkiPmdldFRyYW5zaXRpb248L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB0cmFuc2l0aW9uPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlRyYW5zaXRpb248L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0VHJhbnNpdGlvbl9CYXNlX1RyYW5zaXRpb24oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0VHJhbnNpdGlvbl9CYXNlX1RyYW5zaXRpb248L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZSA8Qj5nZXRUcmFuc2l0aW9uX0Jhc2VfVHJhbnNpdGlvbjwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFRyYW5zaXRpb25fQmFzZV9UcmFuc2l0aW9uKCkiPmdldFRyYW5zaXRpb25fQmFzZV9UcmFuc2l0aW9uPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdHJhbnNpdGlvbl8gYmFzZV8gdHJhbnNpdGlvbjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwjZ2V0QmFzZV9UcmFuc2l0aW9uKCkiPjxDT0RFPlRyYW5zaXRpb24uZ2V0QmFzZV9UcmFuc2l0aW9uKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRUcmFuc2l0aW9uKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFRyYW5zaXRpb24oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRUcmFuc2l0aW9uX0d1YXJkKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFRyYW5zaXRpb25fR3VhcmQ8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZSA8Qj5nZXRUcmFuc2l0aW9uX0d1YXJkPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0VHJhbnNpdGlvbl9HdWFyZCgpIj5nZXRUcmFuc2l0aW9uX0d1YXJkPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdHJhbnNpdGlvbl8gZ3VhcmQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sI2dldEd1YXJkKCkiPjxDT0RFPlRyYW5zaXRpb24uZ2V0R3VhcmQoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFRyYW5zaXRpb24oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0VHJhbnNpdGlvbigpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFRyYW5zaXRpb25fRWZmZWN0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFRyYW5zaXRpb25fRWZmZWN0PC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2UgPEI+Z2V0VHJhbnNpdGlvbl9FZmZlY3Q8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRUcmFuc2l0aW9uX0VmZmVjdCgpIj5nZXRUcmFuc2l0aW9uX0VmZmVjdDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHRyYW5zaXRpb25fIGVmZmVjdDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwjZ2V0RWZmZWN0KCkiPjxDT0RFPlRyYW5zaXRpb24uZ2V0RWZmZWN0KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRUcmFuc2l0aW9uKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFRyYW5zaXRpb24oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRBbGdvcml0aG0oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QWxnb3JpdGhtPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRBbGdvcml0aG08L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBbGdvcml0aG0oKSI+Z2V0QWxnb3JpdGhtPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgYWxnb3JpdGhtPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+QWxnb3JpdGhtPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEFsZ29yaXRobV9CYXNlX09wZXJhdGlvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRBbGdvcml0aG1fQmFzZV9PcGVyYXRpb248L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZSA8Qj5nZXRBbGdvcml0aG1fQmFzZV9PcGVyYXRpb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBbGdvcml0aG1fQmFzZV9PcGVyYXRpb24oKSI+Z2V0QWxnb3JpdGhtX0Jhc2VfT3BlcmF0aW9uPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgYWxnb3JpdGhtXyBiYXNlXyBvcGVyYXRpb248RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwjZ2V0QmFzZV9PcGVyYXRpb24oKSI+PENPREU+QWxnb3JpdGhtLmdldEJhc2VfT3BlcmF0aW9uKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBbGdvcml0aG0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0QWxnb3JpdGhtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0QWxnb3JpdGhtX0lzRXh0ZXJuYWwoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QWxnb3JpdGhtX0lzRXh0ZXJuYWw8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRBbGdvcml0aG1fSXNFeHRlcm5hbDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEFsZ29yaXRobV9Jc0V4dGVybmFsKCkiPmdldEFsZ29yaXRobV9Jc0V4dGVybmFsPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgYWxnb3JpdGhtXyBpcyBleHRlcm5hbDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCNpc0lzRXh0ZXJuYWwoKSI+PENPREU+QWxnb3JpdGhtLmlzSXNFeHRlcm5hbCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QWxnb3JpdGhtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEFsZ29yaXRobSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEFsZ29yaXRobV9FeHRGdW5jdGlvbk5hbWUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QWxnb3JpdGhtX0V4dEZ1bmN0aW9uTmFtZTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldEFsZ29yaXRobV9FeHRGdW5jdGlvbk5hbWU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBbGdvcml0aG1fRXh0RnVuY3Rpb25OYW1lKCkiPmdldEFsZ29yaXRobV9FeHRGdW5jdGlvbk5hbWU8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBhbGdvcml0aG1fIGV4dCBmdW5jdGlvbiBuYW1lPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI2dldEV4dEZ1bmN0aW9uTmFtZSgpIj48Q09ERT5BbGdvcml0aG0uZ2V0RXh0RnVuY3Rpb25OYW1lKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBbGdvcml0aG0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0QWxnb3JpdGhtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0QWxnb3JpdGhtX1BhdGgoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QWxnb3JpdGhtX1BhdGg8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRBbGdvcml0aG1fUGF0aDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEFsZ29yaXRobV9QYXRoKCkiPmdldEFsZ29yaXRobV9QYXRoPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgYWxnb3JpdGhtXyBwYXRoPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sI2dldFBhdGgoKSI+PENPREU+QWxnb3JpdGhtLmdldFBhdGgoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEFsZ29yaXRobSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRBbGdvcml0aG0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRSb2JvdCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRSb2JvdDwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0Um9ib3Q8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdCgpIj5nZXRSb2JvdDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHJvYm90PERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5Sb2JvdDwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRSb2JvdF9LaW5kKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFJvYm90X0tpbmQ8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRSb2JvdF9LaW5kPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Um9ib3RfS2luZCgpIj5nZXRSb2JvdF9LaW5kPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcm9ib3RfIGtpbmQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNnZXRLaW5kKCkiPjxDT0RFPlJvYm90LmdldEtpbmQoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFJvYm90KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Um9ib3RfTWFzcygpIj48IS0tIC0tPjwvQT48SDM+CitnZXRSb2JvdF9NYXNzPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0Um9ib3RfTWFzczwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90X01hc3MoKSI+Z2V0Um9ib3RfTWFzczwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHJvYm90XyBtYXNzPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwjZ2V0TWFzcygpIj48Q09ERT5Sb2JvdC5nZXRNYXNzKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRSb2JvdCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFJvYm90X1dpZHRoKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFJvYm90X1dpZHRoPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0Um9ib3RfV2lkdGg8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdF9XaWR0aCgpIj5nZXRSb2JvdF9XaWR0aDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHJvYm90XyB3aWR0aDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sI2dldFdpZHRoKCkiPjxDT0RFPlJvYm90LmdldFdpZHRoKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRSb2JvdCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFJvYm90X1VndktpbmQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Um9ib3RfVWd2S2luZDwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldFJvYm90X1VndktpbmQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdF9VZ3ZLaW5kKCkiPmdldFJvYm90X1VndktpbmQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSByb2JvdF8gdWd2IGtpbmQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCNnZXRVZ3ZLaW5kKCkiPjxDT0RFPlJvYm90LmdldFVndktpbmQoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFJvYm90KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFN5c3RlbTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0U3lzdGVtPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U3lzdGVtKCkiPmdldFN5c3RlbTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN5c3RlbTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlN5c3RlbTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTeXN0ZW1fQmFzZV9DbGFzcygpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTeXN0ZW1fQmFzZV9DbGFzczwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlIDxCPmdldFN5c3RlbV9CYXNlX0NsYXNzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U3lzdGVtX0Jhc2VfQ2xhc3MoKSI+Z2V0U3lzdGVtX0Jhc2VfQ2xhc3M8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzeXN0ZW1fIGJhc2VfIGNsYXNzPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+PENPREU+U3lzdGVtLmdldEJhc2VfQ2xhc3MoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXREYXRhRmxvd1BvcnQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0RGF0YUZsb3dQb3J0PC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXREYXRhRmxvd1BvcnQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXREYXRhRmxvd1BvcnQoKSI+Z2V0RGF0YUZsb3dQb3J0PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgZGF0YSBmbG93IHBvcnQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5EYXRhRmxvd1BvcnQ8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RGF0YUZsb3dQb3J0X0RpcmVjdGlvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXREYXRhRmxvd1BvcnRfRGlyZWN0aW9uPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0RGF0YUZsb3dQb3J0X0RpcmVjdGlvbjwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldERhdGFGbG93UG9ydF9EaXJlY3Rpb24oKSI+Z2V0RGF0YUZsb3dQb3J0X0RpcmVjdGlvbjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGRhdGEgZmxvdyBwb3J0XyBkaXJlY3Rpb248RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwjZ2V0RGlyZWN0aW9uKCkiPjxDT0RFPkRhdGFGbG93UG9ydC5nZXREaXJlY3Rpb24oKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldERhdGFGbG93UG9ydCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXREYXRhRmxvd1BvcnQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXREYXRhRmxvd1BvcnRfQnVmZmVyU2l6ZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXREYXRhRmxvd1BvcnRfQnVmZmVyU2l6ZTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldERhdGFGbG93UG9ydF9CdWZmZXJTaXplPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0RGF0YUZsb3dQb3J0X0J1ZmZlclNpemUoKSI+Z2V0RGF0YUZsb3dQb3J0X0J1ZmZlclNpemU8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBkYXRhIGZsb3cgcG9ydF8gYnVmZmVyIHNpemU8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwjZ2V0QnVmZmVyU2l6ZSgpIj48Q09ERT5EYXRhRmxvd1BvcnQuZ2V0QnVmZmVyU2l6ZSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0RGF0YUZsb3dQb3J0KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldERhdGFGbG93UG9ydCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBvcnQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UG9ydDwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0UG9ydDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFBvcnQoKSI+Z2V0UG9ydDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHBvcnQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+UG9ydDwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRQb3J0X0Jhc2VfUG9ydCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRQb3J0X0Jhc2VfUG9ydDwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlIDxCPmdldFBvcnRfQmFzZV9Qb3J0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UG9ydF9CYXNlX1BvcnQoKSI+Z2V0UG9ydF9CYXNlX1BvcnQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBwb3J0XyBiYXNlXyBwb3J0PERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCNnZXRCYXNlX1BvcnQoKSI+PENPREU+UG9ydC5nZXRCYXNlX1BvcnQoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFBvcnQoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0UG9ydCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBvcnRfU3luY2hyb25pemF0aW9uUG9saWN5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBvcnRfU3luY2hyb25pemF0aW9uUG9saWN5PC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0UG9ydF9TeW5jaHJvbml6YXRpb25Qb2xpY3k8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQb3J0X1N5bmNocm9uaXphdGlvblBvbGljeSgpIj5nZXRQb3J0X1N5bmNocm9uaXphdGlvblBvbGljeTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHBvcnRfIHN5bmNocm9uaXphdGlvbiBwb2xpY3k8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sI2dldFN5bmNocm9uaXphdGlvblBvbGljeSgpIj48Q09ERT5Qb3J0LmdldFN5bmNocm9uaXphdGlvblBvbGljeSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UG9ydCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRQb3J0KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RW52aXJvbm1lbnQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0RW52aXJvbm1lbnQ8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldEVudmlyb25tZW50PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0RW52aXJvbm1lbnQoKSI+Z2V0RW52aXJvbm1lbnQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBlbnZpcm9ubWVudDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+RW52aXJvbm1lbnQ8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U3VyZmFjZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTdXJmYWNlPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRTdXJmYWNlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTdXJmYWNlKCkiPmdldFN1cmZhY2U8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5TdXJmYWNlPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5TdXJmYWNlPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEJ1aWxkaW5nKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEJ1aWxkaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRCdWlsZGluZzwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QnVpbGRpbmcoKSI+Z2V0QnVpbGRpbmc8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5CdWlsZGluZzwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQnVpbGRpbmcuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkJ1aWxkaW5nPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEFnZW50KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEFnZW50PC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRBZ2VudDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QWdlbnQoKSI+Z2V0QWdlbnQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5BZ2VudDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkFnZW50PC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEFnZW50X01vdmVzT3ZlcigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRBZ2VudF9Nb3Zlc092ZXI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZSA8Qj5nZXRBZ2VudF9Nb3Zlc092ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEFnZW50X01vdmVzT3ZlcigpIj5nZXRBZ2VudF9Nb3Zlc092ZXI8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSBsaXN0ICc8ZW0+TW92ZXMgT3ZlcjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCNnZXRNb3Zlc092ZXIoKSI+PENPREU+QWdlbnQuZ2V0TW92ZXNPdmVyKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBZ2VudCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRBZ2VudCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBsYW5ldCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRQbGFuZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldFBsYW5ldDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGxhbmV0KCkiPmdldFBsYW5ldDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlBsYW5ldDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhbmV0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5QbGFuZXQ8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TGFuZFN1cmZhY2UoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TGFuZFN1cmZhY2U8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldExhbmRTdXJmYWNlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMYW5kU3VyZmFjZSgpIj5nZXRMYW5kU3VyZmFjZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkxhbmQgU3VyZmFjZTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkxhbmRTdXJmYWNlPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEdyb3VuZCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRHcm91bmQ8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldEdyb3VuZDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0R3JvdW5kKCkiPmdldEdyb3VuZDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkdyb3VuZDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5Hcm91bmQ8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Rmxvb3IoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Rmxvb3I8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldEZsb29yPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRGbG9vcigpIj5nZXRGbG9vcjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkZsb29yPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+Rmxvb3I8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V2F0ZXJTdXJmYWNlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFdhdGVyU3VyZmFjZTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0V2F0ZXJTdXJmYWNlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRXYXRlclN1cmZhY2UoKSI+Z2V0V2F0ZXJTdXJmYWNlPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+V2F0ZXIgU3VyZmFjZTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5XYXRlclN1cmZhY2U8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0SHVtYW4oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0SHVtYW48L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldEh1bWFuPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRIdW1hbigpIj5nZXRIdW1hbjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkh1bWFuPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+SHVtYW48L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UGVkZXN0cmlhbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRQZWRlc3RyaWFuPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRQZWRlc3RyaWFuPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQZWRlc3RyaWFuKCkiPmdldFBlZGVzdHJpYW48L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5QZWRlc3RyaWFuPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5QZWRlc3RyaWFuPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFN0YWlycygpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTdGFpcnM8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldFN0YWlyczwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U3RhaXJzKCkiPmdldFN0YWlyczwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlN0YWlyczwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5TdGFpcnM8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UGxhdGZvcm0oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UGxhdGZvcm08L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldFBsYXRmb3JtPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQbGF0Zm9ybSgpIj5nZXRQbGF0Zm9ybTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlBsYXRmb3JtPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+UGxhdGZvcm08L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UGxhdGZvcm1fQmFzZV9Ob2RlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBsYXRmb3JtX0Jhc2VfTm9kZTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlIDxCPmdldFBsYXRmb3JtX0Jhc2VfTm9kZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGxhdGZvcm1fQmFzZV9Ob2RlKCkiPmdldFBsYXRmb3JtX0Jhc2VfTm9kZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8ZW0+QmFzZSBOb2RlPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sI2dldEJhc2VfTm9kZSgpIj48Q09ERT5QbGF0Zm9ybS5nZXRCYXNlX05vZGUoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFBsYXRmb3JtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFBsYXRmb3JtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Um9ib3RpY01pZGRsZXdhcmUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Um9ib3RpY01pZGRsZXdhcmU8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldFJvYm90aWNNaWRkbGV3YXJlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdGljTWlkZGxld2FyZSgpIj5nZXRSb2JvdGljTWlkZGxld2FyZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlJvYm90aWMgTWlkZGxld2FyZTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlJvYm90aWNNaWRkbGV3YXJlPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFJvYm90aWNNaWRkbGV3YXJlX0tpbmQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Um9ib3RpY01pZGRsZXdhcmVfS2luZDwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldFJvYm90aWNNaWRkbGV3YXJlX0tpbmQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90aWNNaWRkbGV3YXJlX0tpbmQoKSI+Z2V0Um9ib3RpY01pZGRsZXdhcmVfS2luZDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+S2luZDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCNnZXRLaW5kKCkiPjxDT0RFPlJvYm90aWNNaWRkbGV3YXJlLmdldEtpbmQoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90aWNNaWRkbGV3YXJlKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFJvYm90aWNNaWRkbGV3YXJlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Um9ib3RpY1NpbXVsYXRvcigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRSb2JvdGljU2ltdWxhdG9yPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRSb2JvdGljU2ltdWxhdG9yPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdGljU2ltdWxhdG9yKCkiPmdldFJvYm90aWNTaW11bGF0b3I8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5Sb2JvdGljIFNpbXVsYXRvcjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1NpbXVsYXRvci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+Um9ib3RpY1NpbXVsYXRvcjwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRDeWNhYlRLKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEN5Y2FiVEs8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldEN5Y2FiVEs8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEN5Y2FiVEsoKSI+Z2V0Q3ljYWJUSzwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkN5Y2FiIFRLPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5DeWNhYlRLPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEN5Y2FiVEtfVXNlUmVhbFRpbWUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Q3ljYWJUS19Vc2VSZWFsVGltZTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldEN5Y2FiVEtfVXNlUmVhbFRpbWU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEN5Y2FiVEtfVXNlUmVhbFRpbWUoKSI+Z2V0Q3ljYWJUS19Vc2VSZWFsVGltZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+VXNlIFJlYWwgVGltZTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sI2lzVXNlUmVhbFRpbWUoKSI+PENPREU+Q3ljYWJUSy5pc1VzZVJlYWxUaW1lKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDeWNhYlRLKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEN5Y2FiVEsoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRDeWNhYlRLX1RpbWVTdGVwKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEN5Y2FiVEtfVGltZVN0ZXA8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRDeWNhYlRLX1RpbWVTdGVwPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDeWNhYlRLX1RpbWVTdGVwKCkiPmdldEN5Y2FiVEtfVGltZVN0ZXA8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlRpbWUgU3RlcDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sI2dldFRpbWVTdGVwKCkiPjxDT0RFPkN5Y2FiVEsuZ2V0VGltZVN0ZXAoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEN5Y2FiVEsoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0Q3ljYWJUSygpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEN5Y2FiVEtfVGltZUZhY3RvcigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRDeWNhYlRLX1RpbWVGYWN0b3I8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRDeWNhYlRLX1RpbWVGYWN0b3I8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEN5Y2FiVEtfVGltZUZhY3RvcigpIj5nZXRDeWNhYlRLX1RpbWVGYWN0b3I8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlRpbWUgRmFjdG9yPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwjZ2V0VGltZUZhY3RvcigpIj48Q09ERT5DeWNhYlRLLmdldFRpbWVGYWN0b3IoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEN5Y2FiVEsoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0Q3ljYWJUSygpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEJsZW5kZXJNb3JzZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRCbGVuZGVyTW9yc2U8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldEJsZW5kZXJNb3JzZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QmxlbmRlck1vcnNlKCkiPmdldEJsZW5kZXJNb3JzZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkJsZW5kZXIgTW9yc2U8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+QmxlbmRlck1vcnNlPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEJsZW5kZXJNb3JzZV9EZWJ1Z01vZGUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QmxlbmRlck1vcnNlX0RlYnVnTW9kZTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldEJsZW5kZXJNb3JzZV9EZWJ1Z01vZGU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEJsZW5kZXJNb3JzZV9EZWJ1Z01vZGUoKSI+Z2V0QmxlbmRlck1vcnNlX0RlYnVnTW9kZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+RGVidWcgTW9kZTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjaXNEZWJ1Z01vZGUoKSI+PENPREU+QmxlbmRlck1vcnNlLmlzRGVidWdNb2RlKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRCbGVuZGVyTW9yc2UoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0QmxlbmRlck1vcnNlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0QmxlbmRlck1vcnNlX0RlYnVnRGlzcGxheSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRCbGVuZGVyTW9yc2VfRGVidWdEaXNwbGF5PC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0QmxlbmRlck1vcnNlX0RlYnVnRGlzcGxheTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QmxlbmRlck1vcnNlX0RlYnVnRGlzcGxheSgpIj5nZXRCbGVuZGVyTW9yc2VfRGVidWdEaXNwbGF5PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5EZWJ1ZyBEaXNwbGF5PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCNpc0RlYnVnRGlzcGxheSgpIj48Q09ERT5CbGVuZGVyTW9yc2UuaXNEZWJ1Z0Rpc3BsYXkoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEJsZW5kZXJNb3JzZSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRCbGVuZGVyTW9yc2UoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRCbGVuZGVyTW9yc2VfR3Jhdml0eSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRCbGVuZGVyTW9yc2VfR3Jhdml0eTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldEJsZW5kZXJNb3JzZV9HcmF2aXR5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRCbGVuZGVyTW9yc2VfR3Jhdml0eSgpIj5nZXRCbGVuZGVyTW9yc2VfR3Jhdml0eTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+R3Jhdml0eTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwjZ2V0R3Jhdml0eSgpIj48Q09ERT5CbGVuZGVyTW9yc2UuZ2V0R3Jhdml0eSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QmxlbmRlck1vcnNlKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEJsZW5kZXJNb3JzZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEJsZW5kZXJNb3JzZV9fdmlld3BvcnRfc2hhZGUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QmxlbmRlck1vcnNlX192aWV3cG9ydF9zaGFkZTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldEJsZW5kZXJNb3JzZV9fdmlld3BvcnRfc2hhZGU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEJsZW5kZXJNb3JzZV9fdmlld3BvcnRfc2hhZGUoKSI+Z2V0QmxlbmRlck1vcnNlX192aWV3cG9ydF9zaGFkZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+dmlld3BvcnQgc2hhZGU8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sI2dldF92aWV3cG9ydF9zaGFkZSgpIj48Q09ERT5CbGVuZGVyTW9yc2UuZ2V0X3ZpZXdwb3J0X3NoYWRlKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRCbGVuZGVyTW9yc2UoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0QmxlbmRlck1vcnNlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0T25Qb3J0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldE9uUG9ydDwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0T25Qb3J0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRPblBvcnQoKSI+Z2V0T25Qb3J0PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+T24gUG9ydDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5PblBvcnQ8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0T25Qb3J0X1BvcnQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0T25Qb3J0X1BvcnQ8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZSA8Qj5nZXRPblBvcnRfUG9ydDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0T25Qb3J0X1BvcnQoKSI+Z2V0T25Qb3J0X1BvcnQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPGVtPlBvcnQ8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sI2dldFBvcnQoKSI+PENPREU+T25Qb3J0LmdldFBvcnQoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldE9uUG9ydCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRPblBvcnQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRPblBvcnRfQmFzZV9QYXJhbWV0ZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0T25Qb3J0X0Jhc2VfUGFyYW1ldGVyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2UgPEI+Z2V0T25Qb3J0X0Jhc2VfUGFyYW1ldGVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRPblBvcnRfQmFzZV9QYXJhbWV0ZXIoKSI+Z2V0T25Qb3J0X0Jhc2VfUGFyYW1ldGVyPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxlbT5CYXNlIFBhcmFtZXRlcjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwjZ2V0QmFzZV9QYXJhbWV0ZXIoKSI+PENPREU+T25Qb3J0LmdldEJhc2VfUGFyYW1ldGVyKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRPblBvcnQoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0T25Qb3J0KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U2VydmljZVBvcnQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U2VydmljZVBvcnQ8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldFNlcnZpY2VQb3J0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U2VydmljZVBvcnQoKSI+Z2V0U2VydmljZVBvcnQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzZXJ2aWNlIHBvcnQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlNlcnZpY2VQb3J0PC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFNlcnZpY2VQb3J0X0tpbmQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U2VydmljZVBvcnRfS2luZDwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldFNlcnZpY2VQb3J0X0tpbmQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTZXJ2aWNlUG9ydF9LaW5kKCkiPmdldFNlcnZpY2VQb3J0X0tpbmQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzZXJ2aWNlIHBvcnRfIGtpbmQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCNnZXRLaW5kKCkiPjxDT0RFPlNlcnZpY2VQb3J0LmdldEtpbmQoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNlcnZpY2VQb3J0KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFNlcnZpY2VQb3J0KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0QWN0dWF0b3JTeXN0ZW0oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QWN0dWF0b3JTeXN0ZW08L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldEFjdHVhdG9yU3lzdGVtPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QWN0dWF0b3JTeXN0ZW0oKSI+Z2V0QWN0dWF0b3JTeXN0ZW08L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBhY3R1YXRvciBzeXN0ZW08RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWN0dWF0b3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkFjdHVhdG9yU3lzdGVtPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFJvYm90aWNTeXN0ZW0oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Um9ib3RpY1N5c3RlbTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0Um9ib3RpY1N5c3RlbTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90aWNTeXN0ZW0oKSI+Z2V0Um9ib3RpY1N5c3RlbTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHJvYm90aWMgc3lzdGVtPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlJvYm90aWNTeXN0ZW08L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Um9ib3RpY1N5c3RlbV9Mb2NhbFBvc2l0aW9uKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFJvYm90aWNTeXN0ZW1fTG9jYWxQb3NpdGlvbjwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldFJvYm90aWNTeXN0ZW1fTG9jYWxQb3NpdGlvbjwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90aWNTeXN0ZW1fTG9jYWxQb3NpdGlvbigpIj5nZXRSb2JvdGljU3lzdGVtX0xvY2FsUG9zaXRpb248L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSByb2JvdGljIHN5c3RlbV8gbG9jYWwgcG9zaXRpb248RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsUG9zaXRpb24oKSI+PENPREU+Um9ib3RpY1N5c3RlbS5nZXRMb2NhbFBvc2l0aW9uKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdGljU3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFJvYm90aWNTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRSb2JvdGljU3lzdGVtX0xvY2FsT3JpZW50YXRpb24oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Um9ib3RpY1N5c3RlbV9Mb2NhbE9yaWVudGF0aW9uPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0Um9ib3RpY1N5c3RlbV9Mb2NhbE9yaWVudGF0aW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Um9ib3RpY1N5c3RlbV9Mb2NhbE9yaWVudGF0aW9uKCkiPmdldFJvYm90aWNTeXN0ZW1fTG9jYWxPcmllbnRhdGlvbjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHJvYm90aWMgc3lzdGVtXyBsb2NhbCBvcmllbnRhdGlvbjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxPcmllbnRhdGlvbigpIj48Q09ERT5Sb2JvdGljU3lzdGVtLmdldExvY2FsT3JpZW50YXRpb24oKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90aWNTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0Um9ib3RpY1N5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFNlbnNvclN5c3RlbSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTZW5zb3JTeXN0ZW08L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldFNlbnNvclN5c3RlbTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNlbnNvclN5c3RlbSgpIj5nZXRTZW5zb3JTeXN0ZW08L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzZW5zb3Igc3lzdGVtPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+U2Vuc29yU3lzdGVtPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFNlbnNvclN5c3RlbV9GcmVxdWVuY3koKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U2Vuc29yU3lzdGVtX0ZyZXF1ZW5jeTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldFNlbnNvclN5c3RlbV9GcmVxdWVuY3k8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNlbnNvclN5c3RlbV9GcmVxdWVuY3koKSI+Z2V0U2Vuc29yU3lzdGVtX0ZyZXF1ZW5jeTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+RnJlcXVlbmN5PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNnZXRGcmVxdWVuY3koKSI+PENPREU+U2Vuc29yU3lzdGVtLmdldEZyZXF1ZW5jeSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U2Vuc29yU3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFNlbnNvclN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFNlbnNvclN5c3RlbV9JZGVudGlmaWVyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFNlbnNvclN5c3RlbV9JZGVudGlmaWVyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0U2Vuc29yU3lzdGVtX0lkZW50aWZpZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNlbnNvclN5c3RlbV9JZGVudGlmaWVyKCkiPmdldFNlbnNvclN5c3RlbV9JZGVudGlmaWVyPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5JZGVudGlmaWVyPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNnZXRJZGVudGlmaWVyKCkiPjxDT0RFPlNlbnNvclN5c3RlbS5nZXRJZGVudGlmaWVyKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTZW5zb3JTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0U2Vuc29yU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0SGFyZHdhcmUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0SGFyZHdhcmU8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldEhhcmR3YXJlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0SGFyZHdhcmUoKSI+Z2V0SGFyZHdhcmU8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBoYXJkd2FyZTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IYXJkd2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+SGFyZHdhcmU8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U29mdHdhcmUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U29mdHdhcmU8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldFNvZnR3YXJlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U29mdHdhcmUoKSI+Z2V0U29mdHdhcmU8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzb2Z0d2FyZTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+U29mdHdhcmU8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U29mdHdhcmVfSXNQZXJpb2RpYygpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTb2Z0d2FyZV9Jc1BlcmlvZGljPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0U29mdHdhcmVfSXNQZXJpb2RpYzwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U29mdHdhcmVfSXNQZXJpb2RpYygpIj5nZXRTb2Z0d2FyZV9Jc1BlcmlvZGljPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5JcyBQZXJpb2RpYzwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNpc0lzUGVyaW9kaWMoKSI+PENPREU+U29mdHdhcmUuaXNJc1BlcmlvZGljKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTb2Z0d2FyZSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRTb2Z0d2FyZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFNvZnR3YXJlX1BlcmlvZCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTb2Z0d2FyZV9QZXJpb2Q8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRTb2Z0d2FyZV9QZXJpb2Q8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNvZnR3YXJlX1BlcmlvZCgpIj5nZXRTb2Z0d2FyZV9QZXJpb2Q8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlBlcmlvZDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXRQZXJpb2QoKSI+PENPREU+U29mdHdhcmUuZ2V0UGVyaW9kKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTb2Z0d2FyZSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRTb2Z0d2FyZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFNvZnR3YXJlX1ByaW9yaXR5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFNvZnR3YXJlX1ByaW9yaXR5PC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0U29mdHdhcmVfUHJpb3JpdHk8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNvZnR3YXJlX1ByaW9yaXR5KCkiPmdldFNvZnR3YXJlX1ByaW9yaXR5PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5Qcmlvcml0eTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXRQcmlvcml0eSgpIj48Q09ERT5Tb2Z0d2FyZS5nZXRQcmlvcml0eSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U29mdHdhcmUoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0U29mdHdhcmUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTb2Z0d2FyZV9EZWFkbGluZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTb2Z0d2FyZV9EZWFkbGluZTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldFNvZnR3YXJlX0RlYWRsaW5lPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTb2Z0d2FyZV9EZWFkbGluZSgpIj5nZXRTb2Z0d2FyZV9EZWFkbGluZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+RGVhZGxpbmU8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjZ2V0RGVhZGxpbmUoKSI+PENPREU+U29mdHdhcmUuZ2V0RGVhZGxpbmUoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNvZnR3YXJlKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFNvZnR3YXJlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U29mdHdhcmVfV2NldCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTb2Z0d2FyZV9XY2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0U29mdHdhcmVfV2NldDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U29mdHdhcmVfV2NldCgpIj5nZXRTb2Z0d2FyZV9XY2V0PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5XY2V0PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldFdjZXQoKSI+PENPREU+U29mdHdhcmUuZ2V0V2NldCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U29mdHdhcmUoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0U29mdHdhcmUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRQcmltaXRpdmVEYXRhKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFByaW1pdGl2ZURhdGE8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldFByaW1pdGl2ZURhdGE8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQcmltaXRpdmVEYXRhKCkiPmdldFByaW1pdGl2ZURhdGE8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBwcmltaXRpdmUgZGF0YTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QcmltaXRpdmVEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5QcmltaXRpdmVEYXRhPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFByaW1pdGl2ZURhdGFfQmFzZV9QcmltaXRpdmVUeXBlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFByaW1pdGl2ZURhdGFfQmFzZV9QcmltaXRpdmVUeXBlPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2UgPEI+Z2V0UHJpbWl0aXZlRGF0YV9CYXNlX1ByaW1pdGl2ZVR5cGU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQcmltaXRpdmVEYXRhX0Jhc2VfUHJpbWl0aXZlVHlwZSgpIj5nZXRQcmltaXRpdmVEYXRhX0Jhc2VfUHJpbWl0aXZlVHlwZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHByaW1pdGl2ZSBkYXRhXyBiYXNlXyBwcmltaXRpdmUgdHlwZTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QcmltaXRpdmVEYXRhLmh0bWwjZ2V0QmFzZV9QcmltaXRpdmVUeXBlKCkiPjxDT0RFPlByaW1pdGl2ZURhdGEuZ2V0QmFzZV9QcmltaXRpdmVUeXBlKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQcmltaXRpdmVEYXRhKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFByaW1pdGl2ZURhdGEoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRQaHlzaWNhbERhdGEoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0UGh5c2ljYWxEYXRhPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRQaHlzaWNhbERhdGE8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQaHlzaWNhbERhdGEoKSI+Z2V0UGh5c2ljYWxEYXRhPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcGh5c2ljYWwgZGF0YTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlBoeXNpY2FsRGF0YTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRQaHlzaWNhbERhdGFfQmFzZV9EYXRhVHlwZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRQaHlzaWNhbERhdGFfQmFzZV9EYXRhVHlwZTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlIDxCPmdldFBoeXNpY2FsRGF0YV9CYXNlX0RhdGFUeXBlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGh5c2ljYWxEYXRhX0Jhc2VfRGF0YVR5cGUoKSI+Z2V0UGh5c2ljYWxEYXRhX0Jhc2VfRGF0YVR5cGU8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBwaHlzaWNhbCBkYXRhXyBiYXNlXyBkYXRhIHR5cGU8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwjZ2V0QmFzZV9EYXRhVHlwZSgpIj48Q09ERT5QaHlzaWNhbERhdGEuZ2V0QmFzZV9EYXRhVHlwZSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGh5c2ljYWxEYXRhKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFBoeXNpY2FsRGF0YSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFBoeXNpY2FsRGF0YV9Vbml0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBoeXNpY2FsRGF0YV9Vbml0PC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0UGh5c2ljYWxEYXRhX1VuaXQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQaHlzaWNhbERhdGFfVW5pdCgpIj5nZXRQaHlzaWNhbERhdGFfVW5pdDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHBoeXNpY2FsIGRhdGFfIHVuaXQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwjZ2V0VW5pdCgpIj48Q09ERT5QaHlzaWNhbERhdGEuZ2V0VW5pdCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGh5c2ljYWxEYXRhKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFBoeXNpY2FsRGF0YSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldENvbXBvc2VkRGF0YSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRDb21wb3NlZERhdGE8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldENvbXBvc2VkRGF0YTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENvbXBvc2VkRGF0YSgpIj5nZXRDb21wb3NlZERhdGE8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBjb21wb3NlZCBkYXRhPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbXBvc2VkRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+Q29tcG9zZWREYXRhPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldENvbXBvc2VkRGF0YV9CYXNlX0RhdGFUeXBlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldENvbXBvc2VkRGF0YV9CYXNlX0RhdGFUeXBlPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2UgPEI+Z2V0Q29tcG9zZWREYXRhX0Jhc2VfRGF0YVR5cGU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDb21wb3NlZERhdGFfQmFzZV9EYXRhVHlwZSgpIj5nZXRDb21wb3NlZERhdGFfQmFzZV9EYXRhVHlwZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGNvbXBvc2VkIGRhdGFfIGJhc2VfIGRhdGEgdHlwZTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCNnZXRCYXNlX0RhdGFUeXBlKCkiPjxDT0RFPkNvbXBvc2VkRGF0YS5nZXRCYXNlX0RhdGFUeXBlKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDb21wb3NlZERhdGEoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0Q29tcG9zZWREYXRhKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Q29sbGVjdGlvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRDb2xsZWN0aW9uPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRDb2xsZWN0aW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q29sbGVjdGlvbigpIj5nZXRDb2xsZWN0aW9uPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgY29sbGVjdGlvbjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5Db2xsZWN0aW9uPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldENvbGxlY3Rpb25fQmFzZV9EYXRhVHlwZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRDb2xsZWN0aW9uX0Jhc2VfRGF0YVR5cGU8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZSA8Qj5nZXRDb2xsZWN0aW9uX0Jhc2VfRGF0YVR5cGU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDb2xsZWN0aW9uX0Jhc2VfRGF0YVR5cGUoKSI+Z2V0Q29sbGVjdGlvbl9CYXNlX0RhdGFUeXBlPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgY29sbGVjdGlvbl8gYmFzZV8gZGF0YSB0eXBlPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbGxlY3Rpb24uaHRtbCNnZXRCYXNlX0RhdGFUeXBlKCkiPjxDT0RFPkNvbGxlY3Rpb24uZ2V0QmFzZV9EYXRhVHlwZSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q29sbGVjdGlvbigpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRDb2xsZWN0aW9uKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RW5naW5lU3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEVuZ2luZVN5c3RlbTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0RW5naW5lU3lzdGVtPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0RW5naW5lU3lzdGVtKCkiPmdldEVuZ2luZVN5c3RlbTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGVuZ2luZSBzeXN0ZW08RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5FbmdpbmVTeXN0ZW08L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RW5naW5lU3lzdGVtX1ZlaGljbGVUcmFjdGlvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRFbmdpbmVTeXN0ZW1fVmVoaWNsZVRyYWN0aW9uPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0RW5naW5lU3lzdGVtX1ZlaGljbGVUcmFjdGlvbjwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEVuZ2luZVN5c3RlbV9WZWhpY2xlVHJhY3Rpb24oKSI+Z2V0RW5naW5lU3lzdGVtX1ZlaGljbGVUcmFjdGlvbjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGVuZ2luZSBzeXN0ZW1fIHZlaGljbGUgdHJhY3Rpb248RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0VmVoaWNsZVRyYWN0aW9uKCkiPjxDT0RFPkVuZ2luZVN5c3RlbS5nZXRWZWhpY2xlVHJhY3Rpb24oKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEVuZ2luZVN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRFbmdpbmVTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRFbmdpbmVTeXN0ZW1fTWF4RW5naW5lRm9yY2UoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0RW5naW5lU3lzdGVtX01heEVuZ2luZUZvcmNlPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0RW5naW5lU3lzdGVtX01heEVuZ2luZUZvcmNlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0RW5naW5lU3lzdGVtX01heEVuZ2luZUZvcmNlKCkiPmdldEVuZ2luZVN5c3RlbV9NYXhFbmdpbmVGb3JjZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGVuZ2luZSBzeXN0ZW1fIG1heCBlbmdpbmUgZm9yY2U8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0TWF4RW5naW5lRm9yY2UoKSI+PENPREU+RW5naW5lU3lzdGVtLmdldE1heEVuZ2luZUZvcmNlKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRFbmdpbmVTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0RW5naW5lU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RW5naW5lU3lzdGVtX01heEJyZWFraW5nRm9yY2UoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0RW5naW5lU3lzdGVtX01heEJyZWFraW5nRm9yY2U8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRFbmdpbmVTeXN0ZW1fTWF4QnJlYWtpbmdGb3JjZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEVuZ2luZVN5c3RlbV9NYXhCcmVha2luZ0ZvcmNlKCkiPmdldEVuZ2luZVN5c3RlbV9NYXhCcmVha2luZ0ZvcmNlPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgZW5naW5lIHN5c3RlbV8gbWF4IGJyZWFraW5nIGZvcmNlPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sI2dldE1heEJyZWFraW5nRm9yY2UoKSI+PENPREU+RW5naW5lU3lzdGVtLmdldE1heEJyZWFraW5nRm9yY2UoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEVuZ2luZVN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRFbmdpbmVTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRFbmdpbmVTeXN0ZW1fTWF4QWxsb3dlZFN0ZWVyaW5nKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEVuZ2luZVN5c3RlbV9NYXhBbGxvd2VkU3RlZXJpbmc8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRFbmdpbmVTeXN0ZW1fTWF4QWxsb3dlZFN0ZWVyaW5nPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0RW5naW5lU3lzdGVtX01heEFsbG93ZWRTdGVlcmluZygpIj5nZXRFbmdpbmVTeXN0ZW1fTWF4QWxsb3dlZFN0ZWVyaW5nPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgZW5naW5lIHN5c3RlbV8gbWF4IGFsbG93ZWQgc3RlZXJpbmc8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0TWF4QWxsb3dlZFN0ZWVyaW5nKCkiPjxDT0RFPkVuZ2luZVN5c3RlbS5nZXRNYXhBbGxvd2VkU3RlZXJpbmcoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEVuZ2luZVN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRFbmdpbmVTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRFbmdpbmVTeXN0ZW1fTWF4QWxsb3dlZFZlbG9jaXR5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEVuZ2luZVN5c3RlbV9NYXhBbGxvd2VkVmVsb2NpdHk8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRFbmdpbmVTeXN0ZW1fTWF4QWxsb3dlZFZlbG9jaXR5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0RW5naW5lU3lzdGVtX01heEFsbG93ZWRWZWxvY2l0eSgpIj5nZXRFbmdpbmVTeXN0ZW1fTWF4QWxsb3dlZFZlbG9jaXR5PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgZW5naW5lIHN5c3RlbV8gbWF4IGFsbG93ZWQgdmVsb2NpdHk8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0TWF4QWxsb3dlZFZlbG9jaXR5KCkiPjxDT0RFPkVuZ2luZVN5c3RlbS5nZXRNYXhBbGxvd2VkVmVsb2NpdHkoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEVuZ2luZVN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRFbmdpbmVTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRFbmdpbmVTeXN0ZW1fR2Vhcl9yYXRpb24oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0RW5naW5lU3lzdGVtX0dlYXJfcmF0aW9uPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0RW5naW5lU3lzdGVtX0dlYXJfcmF0aW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRFbmdpbmVTeXN0ZW1fR2Vhcl9yYXRpb24oKSI+Z2V0RW5naW5lU3lzdGVtX0dlYXJfcmF0aW9uPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5HZWFyIHJhdGlvbjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwjZ2V0R2Vhcl9yYXRpb24oKSI+PENPREU+RW5naW5lU3lzdGVtLmdldEdlYXJfcmF0aW9uKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRFbmdpbmVTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0RW5naW5lU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V2hlZWxTeXN0ZW0oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2hlZWxTeXN0ZW08L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldFdoZWVsU3lzdGVtPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW0oKSI+Z2V0V2hlZWxTeXN0ZW08L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB3aGVlbCBzeXN0ZW08RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPldoZWVsU3lzdGVtPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFdoZWVsU3lzdGVtX1doZWVsUmFkaXVzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFdoZWVsU3lzdGVtX1doZWVsUmFkaXVzPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxSYWRpdXM8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRXaGVlbFN5c3RlbV9XaGVlbFJhZGl1cygpIj5nZXRXaGVlbFN5c3RlbV9XaGVlbFJhZGl1czwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHdoZWVsIHN5c3RlbV8gd2hlZWwgcmFkaXVzPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxSYWRpdXMoKSI+PENPREU+V2hlZWxTeXN0ZW0uZ2V0V2hlZWxSYWRpdXMoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFdoZWVsU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V2hlZWxTeXN0ZW1fV2hlZWxXaWR0aCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRXaGVlbFN5c3RlbV9XaGVlbFdpZHRoPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxXaWR0aDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1doZWVsV2lkdGgoKSI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxXaWR0aDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHdoZWVsIHN5c3RlbV8gd2hlZWwgd2lkdGg8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFdpZHRoKCkiPjxDT0RFPldoZWVsU3lzdGVtLmdldFdoZWVsV2lkdGgoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFdoZWVsU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvblJlc3RMZW5ndGgoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvblJlc3RMZW5ndGg8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uUmVzdExlbmd0aDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25SZXN0TGVuZ3RoKCkiPmdldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25SZXN0TGVuZ3RoPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgd2hlZWwgc3lzdGVtXyBzdXNwZW5zaW9uIHJlc3QgbGVuZ3RoPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0U3VzcGVuc2lvblJlc3RMZW5ndGgoKSI+PENPREU+V2hlZWxTeXN0ZW0uZ2V0U3VzcGVuc2lvblJlc3RMZW5ndGgoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFdoZWVsU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V2hlZWxTeXN0ZW1fV2hlZWxDb25uZWN0aW9uSGVpZ2h0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFdoZWVsU3lzdGVtX1doZWVsQ29ubmVjdGlvbkhlaWdodDwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldFdoZWVsU3lzdGVtX1doZWVsQ29ubmVjdGlvbkhlaWdodDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1doZWVsQ29ubmVjdGlvbkhlaWdodCgpIj5nZXRXaGVlbFN5c3RlbV9XaGVlbENvbm5lY3Rpb25IZWlnaHQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB3aGVlbCBzeXN0ZW1fIHdoZWVsIGNvbm5lY3Rpb24gaGVpZ2h0PERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0KCkiPjxDT0RFPldoZWVsU3lzdGVtLmdldFdoZWVsQ29ubmVjdGlvbkhlaWdodCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0V2hlZWxTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXaGVlbFN5c3RlbV9UeXBlT2ZXaGVlbCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRXaGVlbFN5c3RlbV9UeXBlT2ZXaGVlbDwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldFdoZWVsU3lzdGVtX1R5cGVPZldoZWVsPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fVHlwZU9mV2hlZWwoKSI+Z2V0V2hlZWxTeXN0ZW1fVHlwZU9mV2hlZWw8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB3aGVlbCBzeXN0ZW1fIHR5cGUgb2Ygd2hlZWw8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRUeXBlT2ZXaGVlbCgpIj48Q09ERT5XaGVlbFN5c3RlbS5nZXRUeXBlT2ZXaGVlbCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0V2hlZWxTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEa3AoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtwPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtwPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtwKCkiPmdldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURrcDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHdoZWVsIHN5c3RlbV8gd2hlZWwgdmVsb2NpdHkgcGkgZGtwPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRGtwKCkiPjxDT0RFPldoZWVsU3lzdGVtLmdldFdoZWVsVmVsb2NpdHlQSURrcCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0V2hlZWxTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEa2koKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtpPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtpPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtpKCkiPmdldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURraTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHdoZWVsIHN5c3RlbV8gd2hlZWwgdmVsb2NpdHkgcGkgZGtpPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRGtpKCkiPjxDT0RFPldoZWVsU3lzdGVtLmdldFdoZWVsVmVsb2NpdHlQSURraSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0V2hlZWxTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEa2QoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtkPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtkPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtkKCkiPmdldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURrZDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHdoZWVsIHN5c3RlbV8gd2hlZWwgdmVsb2NpdHkgcGkgZGtkPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRGtkKCkiPjxDT0RFPldoZWVsU3lzdGVtLmdldFdoZWVsVmVsb2NpdHlQSURrZCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0V2hlZWxTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXaGVlbFN5c3RlbV9XaGVlbFN0ZWVyaW5nUElEa3AoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2hlZWxTeXN0ZW1fV2hlZWxTdGVlcmluZ1BJRGtwPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxTdGVlcmluZ1BJRGtwPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxTdGVlcmluZ1BJRGtwKCkiPmdldFdoZWVsU3lzdGVtX1doZWVsU3RlZXJpbmdQSURrcDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHdoZWVsIHN5c3RlbV8gd2hlZWwgc3RlZXJpbmcgcGkgZGtwPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxTdGVlcmluZ1BJRGtwKCkiPjxDT0RFPldoZWVsU3lzdGVtLmdldFdoZWVsU3RlZXJpbmdQSURrcCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0V2hlZWxTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXaGVlbFN5c3RlbV9XaGVlbFN0ZWVyaW5nUElEa2QoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2hlZWxTeXN0ZW1fV2hlZWxTdGVlcmluZ1BJRGtkPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0V2hlZWxTeXN0ZW1fV2hlZWxTdGVlcmluZ1BJRGtkPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxTdGVlcmluZ1BJRGtkKCkiPmdldFdoZWVsU3lzdGVtX1doZWVsU3RlZXJpbmdQSURrZDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHdoZWVsIHN5c3RlbV8gd2hlZWwgc3RlZXJpbmcgcGkgZGtkPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxTdGVlcmluZ1BJRGtkKCkiPjxDT0RFPldoZWVsU3lzdGVtLmdldFdoZWVsU3RlZXJpbmdQSURrZCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0V2hlZWxTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXaGVlbFN5c3RlbV9XaGVlbEZyaWN0aW9uKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFdoZWVsU3lzdGVtX1doZWVsRnJpY3Rpb248L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRXaGVlbFN5c3RlbV9XaGVlbEZyaWN0aW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxGcmljdGlvbigpIj5nZXRXaGVlbFN5c3RlbV9XaGVlbEZyaWN0aW9uPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgd2hlZWwgc3lzdGVtXyB3aGVlbCBmcmljdGlvbjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsRnJpY3Rpb24oKSI+PENPREU+V2hlZWxTeXN0ZW0uZ2V0V2hlZWxGcmljdGlvbigpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0V2hlZWxTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uU3RpZmZuZXNzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25TdGlmZm5lc3M8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uU3RpZmZuZXNzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvblN0aWZmbmVzcygpIj5nZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uU3RpZmZuZXNzPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgd2hlZWwgc3lzdGVtXyBzdXNwZW5zaW9uIHN0aWZmbmVzczxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25TdGlmZm5lc3MoKSI+PENPREU+V2hlZWxTeXN0ZW0uZ2V0U3VzcGVuc2lvblN0aWZmbmVzcygpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0V2hlZWxTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uRGFtcGluZygpIj48IS0tIC0tPjwvQT48SDM+CitnZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uRGFtcGluZzwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25EYW1waW5nPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvbkRhbXBpbmcoKSI+Z2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvbkRhbXBpbmc8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB3aGVlbCBzeXN0ZW1fIHN1c3BlbnNpb24gZGFtcGluZzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25EYW1waW5nKCkiPjxDT0RFPldoZWVsU3lzdGVtLmdldFN1c3BlbnNpb25EYW1waW5nKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRXaGVlbFN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRXaGVlbFN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25Db21wcmVzc2lvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uQ29tcHJlc3Npb248L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uQ29tcHJlc3Npb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uQ29tcHJlc3Npb24oKSI+Z2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvbkNvbXByZXNzaW9uPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgd2hlZWwgc3lzdGVtXyBzdXNwZW5zaW9uIGNvbXByZXNzaW9uPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uKCkiPjxDT0RFPldoZWVsU3lzdGVtLmdldFN1c3BlbnNpb25Db21wcmVzc2lvbigpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0V2hlZWxTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4U3VtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURtYXhTdW08L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4U3VtPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRG1heFN1bSgpIj5nZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4U3VtPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgd2hlZWwgc3lzdGVtXyB3aGVlbCB2ZWxvY2l0eSBwaSBkbWF4IHN1bTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURtYXhTdW0oKSI+PENPREU+V2hlZWxTeXN0ZW0uZ2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0V2hlZWxTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4VmFsKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURtYXhWYWw8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4VmFsPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRG1heFZhbCgpIj5nZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4VmFsPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgd2hlZWwgc3lzdGVtXyB3aGVlbCB2ZWxvY2l0eSBwaSBkbWF4IHZhbDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURtYXhWYWwoKSI+PENPREU+V2hlZWxTeXN0ZW0uZ2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0V2hlZWxTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRJbWFnZVNlbnNvclN5c3RlbSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRJbWFnZVNlbnNvclN5c3RlbTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0SW1hZ2VTZW5zb3JTeXN0ZW08L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRJbWFnZVNlbnNvclN5c3RlbSgpIj5nZXRJbWFnZVNlbnNvclN5c3RlbTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGltYWdlIHNlbnNvciBzeXN0ZW08RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkltYWdlU2Vuc29yU3lzdGVtPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldENhbWVyYVN5c3RlbSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRDYW1lcmFTeXN0ZW08L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldENhbWVyYVN5c3RlbTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENhbWVyYVN5c3RlbSgpIj5nZXRDYW1lcmFTeXN0ZW08L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBjYW1lcmEgc3lzdGVtPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+Q2FtZXJhU3lzdGVtPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldENhbWVyYVN5c3RlbV9XaWR0aCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRDYW1lcmFTeXN0ZW1fV2lkdGg8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRDYW1lcmFTeXN0ZW1fV2lkdGg8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDYW1lcmFTeXN0ZW1fV2lkdGgoKSI+Z2V0Q2FtZXJhU3lzdGVtX1dpZHRoPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgY2FtZXJhIHN5c3RlbV8gd2lkdGg8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0V2lkdGgoKSI+PENPREU+Q2FtZXJhU3lzdGVtLmdldFdpZHRoKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDYW1lcmFTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0Q2FtZXJhU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Q2FtZXJhU3lzdGVtX0hlaWdodCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRDYW1lcmFTeXN0ZW1fSGVpZ2h0PC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0Q2FtZXJhU3lzdGVtX0hlaWdodDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENhbWVyYVN5c3RlbV9IZWlnaHQoKSI+Z2V0Q2FtZXJhU3lzdGVtX0hlaWdodDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGNhbWVyYSBzeXN0ZW1fIGhlaWdodDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRIZWlnaHQoKSI+PENPREU+Q2FtZXJhU3lzdGVtLmdldEhlaWdodCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q2FtZXJhU3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldENhbWVyYVN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldENhbWVyYVN5c3RlbV9BbHBoYV91KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldENhbWVyYVN5c3RlbV9BbHBoYV91PC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0Q2FtZXJhU3lzdGVtX0FscGhhX3U8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDYW1lcmFTeXN0ZW1fQWxwaGFfdSgpIj5nZXRDYW1lcmFTeXN0ZW1fQWxwaGFfdTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGNhbWVyYSBzeXN0ZW1fIGFscGhhX3U8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0QWxwaGFfdSgpIj48Q09ERT5DYW1lcmFTeXN0ZW0uZ2V0QWxwaGFfdSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q2FtZXJhU3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldENhbWVyYVN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldENhbWVyYVN5c3RlbV9BbHBoYV92KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldENhbWVyYVN5c3RlbV9BbHBoYV92PC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0Q2FtZXJhU3lzdGVtX0FscGhhX3Y8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDYW1lcmFTeXN0ZW1fQWxwaGFfdigpIj5nZXRDYW1lcmFTeXN0ZW1fQWxwaGFfdjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGNhbWVyYSBzeXN0ZW1fIGFscGhhX3Y8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0QWxwaGFfdigpIj48Q09ERT5DYW1lcmFTeXN0ZW0uZ2V0QWxwaGFfdigpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Q2FtZXJhU3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldENhbWVyYVN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldENhbWVyYVN5c3RlbV9VMCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRDYW1lcmFTeXN0ZW1fVTA8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRDYW1lcmFTeXN0ZW1fVTA8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDYW1lcmFTeXN0ZW1fVTAoKSI+Z2V0Q2FtZXJhU3lzdGVtX1UwPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgY2FtZXJhIHN5c3RlbV8gdTA8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0VTAoKSI+PENPREU+Q2FtZXJhU3lzdGVtLmdldFUwKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDYW1lcmFTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0Q2FtZXJhU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Q2FtZXJhU3lzdGVtX1YwKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldENhbWVyYVN5c3RlbV9WMDwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldENhbWVyYVN5c3RlbV9WMDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENhbWVyYVN5c3RlbV9WMCgpIj5nZXRDYW1lcmFTeXN0ZW1fVjA8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBjYW1lcmEgc3lzdGVtXyB2MDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCNnZXRWMCgpIj48Q09ERT5DYW1lcmFTeXN0ZW0uZ2V0VjAoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENhbWVyYVN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRDYW1lcmFTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRDYW1lcmFTeXN0ZW1fQ29sb3JfZm9ybWF0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldENhbWVyYVN5c3RlbV9Db2xvcl9mb3JtYXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRDYW1lcmFTeXN0ZW1fQ29sb3JfZm9ybWF0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRDYW1lcmFTeXN0ZW1fQ29sb3JfZm9ybWF0KCkiPmdldENhbWVyYVN5c3RlbV9Db2xvcl9mb3JtYXQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkNvbG9yIGZvcm1hdDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwjZ2V0Q29sb3JfZm9ybWF0KCkiPjxDT0RFPkNhbWVyYVN5c3RlbS5nZXRDb2xvcl9mb3JtYXQoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldENhbWVyYVN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRDYW1lcmFTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0oKSI+Z2V0T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgb2JqZWN0IGRldGVjdGlvbiBzZW5zb3Igc3lzdGVtPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldE9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldE9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldE9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtKCkiPmdldE9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgb2JqZWN0IHRyYWNraW5nIHNlbnNvciBzeXN0ZW08RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldExpZGFyU3lzdGVtKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldExpZGFyU3lzdGVtPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRMaWRhclN5c3RlbTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtKCkiPmdldExpZGFyU3lzdGVtPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbGlkYXIgc3lzdGVtPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5MaWRhclN5c3RlbTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRMaWRhclN5c3RlbV9OYkxheWVycygpIj48IS0tIC0tPjwvQT48SDM+CitnZXRMaWRhclN5c3RlbV9OYkxheWVyczwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldExpZGFyU3lzdGVtX05iTGF5ZXJzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fTmJMYXllcnMoKSI+Z2V0TGlkYXJTeXN0ZW1fTmJMYXllcnM8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBsaWRhciBzeXN0ZW1fIG5iIGxheWVyczxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldE5iTGF5ZXJzKCkiPjxDT0RFPkxpZGFyU3lzdGVtLmdldE5iTGF5ZXJzKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRMaWRhclN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldExpZGFyU3lzdGVtX0xheWVyQW5nbGVNaW4oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TGlkYXJTeXN0ZW1fTGF5ZXJBbmdsZU1pbjwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldExpZGFyU3lzdGVtX0xheWVyQW5nbGVNaW48L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbV9MYXllckFuZ2xlTWluKCkiPmdldExpZGFyU3lzdGVtX0xheWVyQW5nbGVNaW48L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBsaWRhciBzeXN0ZW1fIGxheWVyIGFuZ2xlIG1pbjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldExheWVyQW5nbGVNaW4oKSI+PENPREU+TGlkYXJTeXN0ZW0uZ2V0TGF5ZXJBbmdsZU1pbigpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0TGlkYXJTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRMaWRhclN5c3RlbV9MYXllckFuZ2xlU3RlcCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRMaWRhclN5c3RlbV9MYXllckFuZ2xlU3RlcDwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldExpZGFyU3lzdGVtX0xheWVyQW5nbGVTdGVwPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fTGF5ZXJBbmdsZVN0ZXAoKSI+Z2V0TGlkYXJTeXN0ZW1fTGF5ZXJBbmdsZVN0ZXA8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBsaWRhciBzeXN0ZW1fIGxheWVyIGFuZ2xlIHN0ZXA8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRMYXllckFuZ2xlU3RlcCgpIj48Q09ERT5MaWRhclN5c3RlbS5nZXRMYXllckFuZ2xlU3RlcCgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0TGlkYXJTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRMaWRhclN5c3RlbV9Ob2lzZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRMaWRhclN5c3RlbV9Ob2lzZTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldExpZGFyU3lzdGVtX05vaXNlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fTm9pc2UoKSI+Z2V0TGlkYXJTeXN0ZW1fTm9pc2U8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBsaWRhciBzeXN0ZW1fIG5vaXNlPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwjZ2V0Tm9pc2UoKSI+PENPREU+TGlkYXJTeXN0ZW0uZ2V0Tm9pc2UoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldExpZGFyU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TGlkYXJTeXN0ZW1fU2lnbWFOb2lzZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRMaWRhclN5c3RlbV9TaWdtYU5vaXNlPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0TGlkYXJTeXN0ZW1fU2lnbWFOb2lzZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtX1NpZ21hTm9pc2UoKSI+Z2V0TGlkYXJTeXN0ZW1fU2lnbWFOb2lzZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGxpZGFyIHN5c3RlbV8gc2lnbWEgbm9pc2U8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRTaWdtYU5vaXNlKCkiPjxDT0RFPkxpZGFyU3lzdGVtLmdldFNpZ21hTm9pc2UoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldExpZGFyU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TGlkYXJTeXN0ZW1fQW5nbGVfbWluKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldExpZGFyU3lzdGVtX0FuZ2xlX21pbjwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldExpZGFyU3lzdGVtX0FuZ2xlX21pbjwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fQW5nbGVfbWluKCkiPmdldExpZGFyU3lzdGVtX0FuZ2xlX21pbjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+QW5nbGUgbWluPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldEFuZ2xlX21pbigpIj48Q09ERT5MaWRhclN5c3RlbS5nZXRBbmdsZV9taW4oKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldExpZGFyU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TGlkYXJTeXN0ZW1fQW5nbGVfbWF4KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldExpZGFyU3lzdGVtX0FuZ2xlX21heDwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlIDxCPmdldExpZGFyU3lzdGVtX0FuZ2xlX21heDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fQW5nbGVfbWF4KCkiPmdldExpZGFyU3lzdGVtX0FuZ2xlX21heDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+QW5nbGUgbWF4PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldEFuZ2xlX21heCgpIj48Q09ERT5MaWRhclN5c3RlbS5nZXRBbmdsZV9tYXgoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldExpZGFyU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TGlkYXJTeXN0ZW1fVGltZV9pbmNyZW1lbnQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0TGlkYXJTeXN0ZW1fVGltZV9pbmNyZW1lbnQ8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRMaWRhclN5c3RlbV9UaW1lX2luY3JlbWVudDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0TGlkYXJTeXN0ZW1fVGltZV9pbmNyZW1lbnQoKSI+Z2V0TGlkYXJTeXN0ZW1fVGltZV9pbmNyZW1lbnQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlRpbWUgaW5jcmVtZW50PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sI2dldFRpbWVfaW5jcmVtZW50KCkiPjxDT0RFPkxpZGFyU3lzdGVtLmdldFRpbWVfaW5jcmVtZW50KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRMaWRhclN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldExpZGFyU3lzdGVtX1NjYW5fdGltZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRMaWRhclN5c3RlbV9TY2FuX3RpbWU8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRMaWRhclN5c3RlbV9TY2FuX3RpbWU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtX1NjYW5fdGltZSgpIj5nZXRMaWRhclN5c3RlbV9TY2FuX3RpbWU8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlNjYW4gdGltZTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRTY2FuX3RpbWUoKSI+PENPREU+TGlkYXJTeXN0ZW0uZ2V0U2Nhbl90aW1lKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRMaWRhclN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldExpZGFyU3lzdGVtX1JhbmdlX21pbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRMaWRhclN5c3RlbV9SYW5nZV9taW48L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRMaWRhclN5c3RlbV9SYW5nZV9taW48L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtX1JhbmdlX21pbigpIj5nZXRMaWRhclN5c3RlbV9SYW5nZV9taW48L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlJhbmdlIG1pbjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRSYW5nZV9taW4oKSI+PENPREU+TGlkYXJTeXN0ZW0uZ2V0UmFuZ2VfbWluKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRMaWRhclN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldExpZGFyU3lzdGVtX1JhbmdlX21heCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRMaWRhclN5c3RlbV9SYW5nZV9tYXg8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRMaWRhclN5c3RlbV9SYW5nZV9tYXg8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExpZGFyU3lzdGVtX1JhbmdlX21heCgpIj5nZXRMaWRhclN5c3RlbV9SYW5nZV9tYXg8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlJhbmdlIG1heDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCNnZXRSYW5nZV9tYXgoKSI+PENPREU+TGlkYXJTeXN0ZW0uZ2V0UmFuZ2VfbWF4KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRMaWRhclN5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRMaWRhclN5c3RlbSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldExvY2FsaXphdGlvblNlbnNvclN5c3RlbSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzIDxCPmdldExvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldExvY2FsaXphdGlvblNlbnNvclN5c3RlbSgpIj5nZXRMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBsb2NhbGl6YXRpb24gc2Vuc29yIHN5c3RlbTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRHUFNTeXN0ZW0oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0R1BTU3lzdGVtPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRHUFNTeXN0ZW08L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRHUFNTeXN0ZW0oKSI+Z2V0R1BTU3lzdGVtPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgZ1BTIHN5c3RlbTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkdQU1N5c3RlbTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRHUFNTeXN0ZW1fT3JpZ2luUG9zaXRpb24oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0R1BTU3lzdGVtX09yaWdpblBvc2l0aW9uPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGUgPEI+Z2V0R1BTU3lzdGVtX09yaWdpblBvc2l0aW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0R1BTU3lzdGVtX09yaWdpblBvc2l0aW9uKCkiPmdldEdQU1N5c3RlbV9PcmlnaW5Qb3NpdGlvbjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGdQUyBzeXN0ZW1fIG9yaWdpbiBwb3NpdGlvbjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCNnZXRPcmlnaW5Qb3NpdGlvbigpIj48Q09ERT5HUFNTeXN0ZW0uZ2V0T3JpZ2luUG9zaXRpb24oKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEdQU1N5c3RlbSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRHUFNTeXN0ZW0oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTaW11bGF0ZWRTeXN0ZW0oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U2ltdWxhdGVkU3lzdGVtPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRTaW11bGF0ZWRTeXN0ZW08L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTaW11bGF0ZWRTeXN0ZW0oKSI+Z2V0U2ltdWxhdGVkU3lzdGVtPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc2ltdWxhdGVkIHN5c3RlbTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlNpbXVsYXRlZFN5c3RlbTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTaW11bGF0ZWRTeXN0ZW1fQmFzZV9Qcm9wZXJ0eSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTaW11bGF0ZWRTeXN0ZW1fQmFzZV9Qcm9wZXJ0eTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlIDxCPmdldFNpbXVsYXRlZFN5c3RlbV9CYXNlX1Byb3BlcnR5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U2ltdWxhdGVkU3lzdGVtX0Jhc2VfUHJvcGVydHkoKSI+Z2V0U2ltdWxhdGVkU3lzdGVtX0Jhc2VfUHJvcGVydHk8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzaW11bGF0ZWQgc3lzdGVtXyBiYXNlXyBwcm9wZXJ0eTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCNnZXRCYXNlX1Byb3BlcnR5KCkiPjxDT0RFPlNpbXVsYXRlZFN5c3RlbS5nZXRCYXNlX1Byb3BlcnR5KCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTaW11bGF0ZWRTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0U2ltdWxhdGVkU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U2ltdWxhdGVkU3lzdGVtX01lc2goKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U2ltdWxhdGVkU3lzdGVtX01lc2g8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRTaW11bGF0ZWRTeXN0ZW1fTWVzaDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNpbXVsYXRlZFN5c3RlbV9NZXNoKCkiPmdldFNpbXVsYXRlZFN5c3RlbV9NZXNoPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc2ltdWxhdGVkIHN5c3RlbV8gbWVzaDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCNnZXRNZXNoKCkiPjxDT0RFPlNpbXVsYXRlZFN5c3RlbS5nZXRNZXNoKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTaW11bGF0ZWRTeXN0ZW0oKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0U2ltdWxhdGVkU3lzdGVtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0QWxnb3JpdGhtTGlicmFyeSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRBbGdvcml0aG1MaWJyYXJ5PC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRBbGdvcml0aG1MaWJyYXJ5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QWxnb3JpdGhtTGlicmFyeSgpIj5nZXRBbGdvcml0aG1MaWJyYXJ5PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgYWxnb3JpdGhtIGxpYnJhcnk8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+QWxnb3JpdGhtTGlicmFyeTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRBbGdvcml0aG1MaWJyYXJ5X0Jhc2VfQ2xhc3MoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QWxnb3JpdGhtTGlicmFyeV9CYXNlX0NsYXNzPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2UgPEI+Z2V0QWxnb3JpdGhtTGlicmFyeV9CYXNlX0NsYXNzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0QWxnb3JpdGhtTGlicmFyeV9CYXNlX0NsYXNzKCkiPmdldEFsZ29yaXRobUxpYnJhcnlfQmFzZV9DbGFzczwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGFsZ29yaXRobSBsaWJyYXJ5XyBiYXNlXyBjbGFzczxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwjZ2V0QmFzZV9DbGFzcygpIj48Q09ERT5BbGdvcml0aG1MaWJyYXJ5LmdldEJhc2VfQ2xhc3MoKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldEFsZ29yaXRobUxpYnJhcnkoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0QWxnb3JpdGhtTGlicmFyeSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEFsZ29yaXRobUxpYnJhcnlfUGF0aCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRBbGdvcml0aG1MaWJyYXJ5X1BhdGg8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZSA8Qj5nZXRBbGdvcml0aG1MaWJyYXJ5X1BhdGg8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBbGdvcml0aG1MaWJyYXJ5X1BhdGgoKSI+Z2V0QWxnb3JpdGhtTGlicmFyeV9QYXRoPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgYWxnb3JpdGhtIGxpYnJhcnlfIHBhdGg8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sI2dldFBhdGgoKSI+PENPREU+QWxnb3JpdGhtTGlicmFyeS5nZXRQYXRoKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRBbGdvcml0aG1MaWJyYXJ5KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldEFsZ29yaXRobUxpYnJhcnkoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTdGF0ZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTdGF0ZTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0U3RhdGU8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTdGF0ZSgpIj5nZXRTdGF0ZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0YXRlPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5TdGF0ZTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTdGF0ZV9CYXNlX1N0YXRlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFN0YXRlX0Jhc2VfU3RhdGU8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZSA8Qj5nZXRTdGF0ZV9CYXNlX1N0YXRlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U3RhdGVfQmFzZV9TdGF0ZSgpIj5nZXRTdGF0ZV9CYXNlX1N0YXRlPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RhdGVfIGJhc2VfIHN0YXRlPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwjZ2V0QmFzZV9TdGF0ZSgpIj48Q09ERT5TdGF0ZS5nZXRCYXNlX1N0YXRlKCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTdGF0ZSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRTdGF0ZSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFN0YXRlX09wZXJhdGlvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRTdGF0ZV9PcGVyYXRpb248L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZSA8Qj5nZXRTdGF0ZV9PcGVyYXRpb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTdGF0ZV9PcGVyYXRpb24oKSI+Z2V0U3RhdGVfT3BlcmF0aW9uPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RhdGVfIG9wZXJhdGlvbjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sI2dldE9wZXJhdGlvbigpIj48Q09ERT5TdGF0ZS5nZXRPcGVyYXRpb24oKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFN0YXRlKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFN0YXRlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U3RhdGVfQXJndW1lbnRzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFN0YXRlX0FyZ3VtZW50czwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlIDxCPmdldFN0YXRlX0FyZ3VtZW50czwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFN0YXRlX0FyZ3VtZW50cygpIj5nZXRTdGF0ZV9Bcmd1bWVudHM8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdGF0ZV8gYXJndW1lbnRzPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwjZ2V0QXJndW1lbnRzKCkiPjxDT0RFPlN0YXRlLmdldEFyZ3VtZW50cygpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U3RhdGUoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0U3RhdGUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTZW5zb3JEcml2ZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U2Vuc29yRHJpdmVyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzcyA8Qj5nZXRTZW5zb3JEcml2ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNlbnNvckRyaXZlcigpIj5nZXRTZW5zb3JEcml2ZXI8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5TZW5zb3IgRHJpdmVyPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JEcml2ZXIuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlNlbnNvckRyaXZlcjwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRQaHlzaWNhbE9iamVjdCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRQaHlzaWNhbE9iamVjdDwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3MgPEI+Z2V0UGh5c2ljYWxPYmplY3Q8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFBoeXNpY2FsT2JqZWN0KCkiPmdldFBoeXNpY2FsT2JqZWN0PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+UGh5c2ljYWwgT2JqZWN0PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+UGh5c2ljYWxPYmplY3Q8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UGh5c2ljYWxPYmplY3RfRXZlbG92ZXNJbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRQaHlzaWNhbE9iamVjdF9FdmVsb3Zlc0luPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2UgPEI+Z2V0UGh5c2ljYWxPYmplY3RfRXZlbG92ZXNJbjwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGh5c2ljYWxPYmplY3RfRXZlbG92ZXNJbigpIj5nZXRQaHlzaWNhbE9iamVjdF9FdmVsb3Zlc0luPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgbGlzdCAnPGVtPkV2ZWxvdmVzIEluPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEV2ZWxvdmVzSW4oKSI+PENPREU+UGh5c2ljYWxPYmplY3QuZ2V0RXZlbG92ZXNJbigpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGh5c2ljYWxPYmplY3QoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0UGh5c2ljYWxPYmplY3QoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRQaHlzaWNhbE9iamVjdF9IYXNTdXJmYWNlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBoeXNpY2FsT2JqZWN0X0hhc1N1cmZhY2U8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZSA8Qj5nZXRQaHlzaWNhbE9iamVjdF9IYXNTdXJmYWNlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRQaHlzaWNhbE9iamVjdF9IYXNTdXJmYWNlKCkiPmdldFBoeXNpY2FsT2JqZWN0X0hhc1N1cmZhY2U8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPGVtPkhhcyBTdXJmYWNlPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEhhc1N1cmZhY2UoKSI+PENPREU+UGh5c2ljYWxPYmplY3QuZ2V0SGFzU3VyZmFjZSgpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0UGh5c2ljYWxPYmplY3QoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0UGh5c2ljYWxPYmplY3QoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRSb2JvdEtpbmQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Um9ib3RLaW5kPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVFbnVtIDxCPmdldFJvYm90S2luZDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90S2luZCgpIj5nZXRSb2JvdEtpbmQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSByb2JvdCBraW5kPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlJvYm90S2luZDwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRVR1ZLaW5kKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFVHVktpbmQ8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUVudW0gPEI+Z2V0VUdWS2luZDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFVHVktpbmQoKSI+Z2V0VUdWS2luZDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHVHViBraW5kPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5VR1ZLaW5kPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFN5bmNocm9uaXphdGlvbktpbmQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U3luY2hyb25pemF0aW9uS2luZDwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRW51bSA8Qj5nZXRTeW5jaHJvbml6YXRpb25LaW5kPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U3luY2hyb25pemF0aW9uS2luZCgpIj5nZXRTeW5jaHJvbml6YXRpb25LaW5kPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3luY2hyb25pemF0aW9uIGtpbmQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlN5bmNocm9uaXphdGlvbktpbmQ8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RGF0YUZsb3dEaXJlY3Rpb25LaW5kKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldERhdGFGbG93RGlyZWN0aW9uS2luZDwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRW51bSA8Qj5nZXREYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXREYXRhRmxvd0RpcmVjdGlvbktpbmQoKSI+Z2V0RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgZGF0YSBmbG93IGRpcmVjdGlvbiBraW5kPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkRhdGFGbG93RGlyZWN0aW9uS2luZDwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTZXJ2aWNlRmxvd0tpbmQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U2VydmljZUZsb3dLaW5kPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVFbnVtIDxCPmdldFNlcnZpY2VGbG93S2luZDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNlcnZpY2VGbG93S2luZCgpIj5nZXRTZXJ2aWNlRmxvd0tpbmQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzZXJ2aWNlIGZsb3cga2luZDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5TZXJ2aWNlRmxvd0tpbmQ8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0VW5pdEtpbmQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0VW5pdEtpbmQ8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUVudW0gPEI+Z2V0VW5pdEtpbmQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRVbml0S2luZCgpIj5nZXRVbml0S2luZDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHVuaXQga2luZDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlVuaXRLaW5kPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFJvYm90aWNNaWRkbGV3YXJlS2luZCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRSb2JvdGljTWlkZGxld2FyZUtpbmQ8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUVudW0gPEI+Z2V0Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdGljTWlkZGxld2FyZUtpbmQoKSI+Z2V0Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbWV0YSBvYmplY3QgZm9yIGVudW0gJzxlbT5Sb2JvdGljIE1pZGRsZXdhcmUgS2luZDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFNoYWRlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFNoYWRlPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVFbnVtIDxCPmdldFNoYWRlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTaGFkZSgpIj5nZXRTaGFkZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1ldGEgb2JqZWN0IGZvciBlbnVtICc8ZW0+U2hhZGU8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+U2hhZGU8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0Um9ib3RNTEZhY3RvcnkoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0Um9ib3RNTEZhY3Rvcnk8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxGYWN0b3J5PC9BPiA8Qj5nZXRSb2JvdE1MRmFjdG9yeTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFJvYm90TUxGYWN0b3J5KCkiPmdldFJvYm90TUxGYWN0b3J5PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTFBhY2thZ2U8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcm9ib3QgbWwgZmFjdG9yeTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlUGFja2FnZUNvbnRlbnRzKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVBhY2thZ2VDb250ZW50czwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+Y3JlYXRlUGFja2FnZUNvbnRlbnRzPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcyB0aGUgbWV0YS1tb2RlbCBvYmplY3RzIGZvciB0aGUgcGFja2FnZS4gIFRoaXMgbWV0aG9kIGlzCisgZ3VhcmRlZCB0byBoYXZlIG5vIGFmZmVjdCBvbiBhbnkgaW52b2NhdGlvbiBidXQgaXRzIGZpcnN0LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKSI+PCEtLSAtLT48L0E+PEgzPgoraW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50czwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+aW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50czwvQj4oKTwvUFJFPgorPERMPgorPEREPkNvbXBsZXRlIHRoZSBpbml0aWFsaXphdGlvbiBvZiB0aGUgcGFja2FnZSBhbmQgaXRzIG1ldGEtbW9kZWwuICBUaGlzCisgbWV0aG9kIGlzIGd1YXJkZWQgdG8gaGF2ZSBubyBhZmZlY3Qgb24gYW55IGludm9jYXRpb24gYnV0IGl0cyBmaXJzdC4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yRHJpdmVySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNNaWRkbGV3YXJlSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljTWlkZGxld2FyZUltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42OGJmZDNjCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljTWlkZGxld2FyZUltcGwuaHRtbApAQCAtMCwwICsxLDU1MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI0IENFVCAyMDEyIC0tPgorPFRJVExFPgorUm9ib3RpY01pZGRsZXdhcmVJbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RpY01pZGRsZXdhcmVJbXBsIGNsYXNzIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJSb2JvdGljTWlkZGxld2FyZUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QcmltaXRpdmVEYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1NpbXVsYXRvckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIFJvYm90aWNNaWRkbGV3YXJlSW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBsYXRmb3JtSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RpY01pZGRsZXdhcmVJbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBsYXRmb3JtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5Sb2JvdGljTWlkZGxld2FyZUltcGw8L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGxhdGZvcm1JbXBsPC9BPjxEVD5pbXBsZW1lbnRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmU8L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90aWMgTWlkZGxld2FyZTwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgPHA+CisgVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgPHVsPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNNaWRkbGV3YXJlSW1wbC5odG1sI2dldEtpbmQoKSI+PENPREU+PGVtPktpbmQ8L2VtPjwvQ09ERT48L0E+PC9saT4KKyA8L3VsPgorIDwvcD4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09IE5FU1RFRCBDTEFTUyBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk5lc3RlZCBDbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FQWRhcHRlckxpc3QmbHQ7RSBleHRlbmRzIGphdmEubGFuZy5PYmplY3QgJiBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyJmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FT2JzZXJ2YWJsZUFkYXB0ZXJMaXN0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LkVTdG9yZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVMQVNUX0VPQkpFQ1RfRkxBRzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVPUFBPU0lURV9GRUFUVVJFX0JBU0U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuT2JqZWN0PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNNaWRkbGV3YXJlSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgYm9vbGVhbiZuYnNwO3Jlc29sdmUsCisgICAgIGJvb2xlYW4mbmJzcDtjb3JlVHlwZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtib29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNNaWRkbGV3YXJlSW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljTWlkZGxld2FyZUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtuZXdWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNNaWRkbGV3YXJlSW1wbC5odG1sI2VVbnNldChpbnQpIj5lVW5zZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwjZ2V0S2luZCgpIj5nZXRLaW5kPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwjc2V0S2luZChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmVLaW5kKSI+c2V0S2luZDwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0E+Jm5ic3A7bmV3S2luZCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNNaWRkbGV3YXJlSW1wbC5odG1sI3RvU3RyaW5nKCkiPnRvU3RyaW5nPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QbGF0Zm9ybUltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBsYXRmb3JtSW1wbDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCNiYXNpY0dldEJhc2VfTm9kZSgpIj5iYXNpY0dldEJhc2VfTm9kZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sI2dldEJhc2VfTm9kZSgpIj5nZXRCYXNlX05vZGU8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCNzZXRCYXNlX05vZGUob3JnLmVjbGlwc2UudW1sMi51bWwuTm9kZSkiPnNldEJhc2VfTm9kZTwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3lzdGVtSW1wbDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjYmFzaWNHZXRCYXNlX0NsYXNzKCkiPmJhc2ljR2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlQ2xhc3MsIGVDb250YWluZXJGZWF0dXJlSUQsIGVEZWxpdmVyLCBlSW50ZXJuYWxDb250YWluZXIsIGVJbnZva2UsIGVJc1Byb3h5LCBlU2V0Q2xhc3MsIGVTZXREZWxpdmVyLCBlU2V0UHJveHlVUkk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQmFzZVN0cnVjdHVyYWxGZWF0dXJlSUQsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXJGZWF0dXJlLCBlQmFzaWNTZXRDb250YWluZXIsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRhaW5zLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGlyZWN0UmVzb3VyY2UsIGVEeW5hbWljQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlRHluYW1pY0dldCwgZUR5bmFtaWNHZXQsIGVEeW5hbWljSW52ZXJzZUFkZCwgZUR5bmFtaWNJbnZlcnNlUmVtb3ZlLCBlRHluYW1pY0ludm9rZSwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1Vuc2V0LCBlRHluYW1pY1Vuc2V0LCBlR2V0LCBlR2V0LCBlR2V0LCBlSW50ZXJuYWxSZXNvdXJjZSwgZUludmVyc2VBZGQsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZVJlbW92ZSwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZU9iamVjdEZvclVSSUZyYWdtZW50U2VnbWVudCwgZU9wZW5HZXQsIGVPcGVuSXNTZXQsIGVPcGVuU2V0LCBlT3BlblVuc2V0LCBlUHJveHlVUkksIGVSZXNvbHZlUHJveHksIGVSZXNvdXJjZSwgZVNldCwgZVNldFJlc291cmNlLCBlU2V0U3RvcmUsIGVTZXR0aW5nLCBlU3RvcmUsIGVVbnNldCwgZVVSSUZyYWdtZW50U2VnbWVudCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbElzU2V0LCBlVmlydHVhbFNldCwgZVZpcnR1YWxVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQsIGVOb3RpZnk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB3YWl0LCB3YWl0LCB3YWl0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBsYXRmb3JtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGxhdGZvcm08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwjZ2V0QmFzZV9Ob2RlKCkiPmdldEJhc2VfTm9kZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sI3NldEJhc2VfTm9kZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Ob2RlKSI+c2V0QmFzZV9Ob2RlPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImdldEtpbmQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0S2luZDwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0E+IDxCPmdldEtpbmQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sI2dldEtpbmQoKSI+Z2V0S2luZDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPktpbmQ8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCNzZXRLaW5kKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljTWlkZGxld2FyZUtpbmQpIj48Q09ERT5Sb2JvdGljTWlkZGxld2FyZS5zZXRLaW5kKFJvYm90aWNNaWRkbGV3YXJlS2luZCk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRSb2JvdGljTWlkZGxld2FyZV9LaW5kKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFJvYm90aWNNaWRkbGV3YXJlX0tpbmQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRLaW5kKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljTWlkZGxld2FyZUtpbmQpIj48IS0tIC0tPjwvQT48SDM+CitzZXRLaW5kPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRLaW5kPC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmVLaW5kPC9BPiZuYnNwO25ld0tpbmQpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCNzZXRLaW5kKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljTWlkZGxld2FyZUtpbmQpIj5zZXRLaW5kPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmU8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3S2luZDwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPktpbmQ8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCNnZXRLaW5kKCkiPjxDT0RFPlJvYm90aWNNaWRkbGV3YXJlLmdldEtpbmQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPjwhLS0gLS0+PC9BPjxIMz4KK2VHZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuT2JqZWN0IDxCPmVHZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbGVhbiZuYnNwO3Jlc29sdmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtjb3JlVHlwZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVHZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPmVHZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QbGF0Zm9ybUltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkPEREPjxDT0RFPnJlc29sdmU8L0NPREU+IC0gdGhlIHJlc29sdmU8REQ+PENPREU+Y29yZVR5cGU8L0NPREU+IC0gdGhlIGNvcmUgdHlwZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgb2JqZWN0PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VTZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmVTZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO25ld1ZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVNldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+ZVNldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBsYXRmb3JtSW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8REQ+PENPREU+bmV3VmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZVVuc2V0KGludCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VVbnNldDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+ZVVuc2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lVW5zZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGxhdGZvcm1JbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUlzU2V0KGludCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VJc1NldDwvSDM+Cis8UFJFPgorcHVibGljIGJvb2xlYW4gPEI+ZUlzU2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lSXNTZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCNlSXNTZXQoaW50KSI+ZUlzU2V0PC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGxhdGZvcm1JbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZAorPERUPjxCPlJldHVybnM6PC9CPjxERD50cnVlLCBpZiBzdWNjZXNzZnVsPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJ0b1N0cmluZygpIj48IS0tIC0tPjwvQT48SDM+Cit0b1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+dG9TdHJpbmc8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPnRvU3RyaW5nPC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QcmltaXRpdmVEYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1NpbXVsYXRvckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1NpbXVsYXRvckltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1NpbXVsYXRvckltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40YTZlMjMzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU2ltdWxhdG9ySW1wbC5odG1sCkBAIC0wLDAgKzEsMzUzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjQgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitSb2JvdGljU2ltdWxhdG9ySW1wbAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90aWNTaW11bGF0b3JJbXBsIGNsYXNzIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJSb2JvdGljU2ltdWxhdG9ySW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9Sb2JvdGljU2ltdWxhdG9ySW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU2ltdWxhdG9ySW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlJvYm90aWNTaW11bGF0b3JJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QbGF0Zm9ybUltcGwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0ZPTlQ+Cis8QlI+CitDbGFzcyBSb2JvdGljU2ltdWxhdG9ySW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBsYXRmb3JtSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RpY1NpbXVsYXRvckltcGw8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGxhdGZvcm08L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1NpbXVsYXRvci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1NpbXVsYXRvcjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5EaXJlY3QgS25vd24gU3ViY2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QmxlbmRlck1vcnNlSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q3ljYWJUS0ltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+Um9ib3RpY1NpbXVsYXRvckltcGw8L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGxhdGZvcm1JbXBsPC9BPjxEVD5pbXBsZW1lbnRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU2ltdWxhdG9yPC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Sb2JvdGljIFNpbXVsYXRvcjwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgPHA+CisgPC9wPgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVBZGFwdGVyTGlzdCZsdDtFIGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCAmIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXImZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVPYnNlcnZhYmxlQWRhcHRlckxpc3Q8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QuRVN0b3JlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RUxBU1RfRU9CSkVDVF9GTEFHPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RU9QUE9TSVRFX0ZFQVRVUkVfQkFTRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QbGF0Zm9ybUltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBsYXRmb3JtSW1wbDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCNiYXNpY0dldEJhc2VfTm9kZSgpIj5iYXNpY0dldEJhc2VfTm9kZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwjZ2V0QmFzZV9Ob2RlKCkiPmdldEJhc2VfTm9kZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sI3NldEJhc2VfTm9kZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Ob2RlKSI+c2V0QmFzZV9Ob2RlPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TeXN0ZW1JbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNiYXNpY0dldEJhc2VfQ2xhc3MoKSI+YmFzaWNHZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVDbGFzcywgZUNvbnRhaW5lckZlYXR1cmVJRCwgZURlbGl2ZXIsIGVJbnRlcm5hbENvbnRhaW5lciwgZUludm9rZSwgZUlzUHJveHksIGVTZXRDbGFzcywgZVNldERlbGl2ZXIsIGVTZXRQcm94eVVSSTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVCYXNlU3RydWN0dXJhbEZlYXR1cmVJRCwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lckZlYXR1cmUsIGVCYXNpY1NldENvbnRhaW5lciwgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGFpbnMsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEaXJlY3RSZXNvdXJjZSwgZUR5bmFtaWNCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVEeW5hbWljR2V0LCBlRHluYW1pY0dldCwgZUR5bmFtaWNJbnZlcnNlQWRkLCBlRHluYW1pY0ludmVyc2VSZW1vdmUsIGVEeW5hbWljSW52b2tlLCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljVW5zZXQsIGVEeW5hbWljVW5zZXQsIGVHZXQsIGVHZXQsIGVHZXQsIGVJbnRlcm5hbFJlc291cmNlLCBlSW52ZXJzZUFkZCwgZUludmVyc2VBZGQsIGVJbnZlcnNlUmVtb3ZlLCBlSW52ZXJzZVJlbW92ZSwgZUludm9rZSwgZUlzU2V0LCBlT2JqZWN0Rm9yVVJJRnJhZ21lbnRTZWdtZW50LCBlT3BlbkdldCwgZU9wZW5Jc1NldCwgZU9wZW5TZXQsIGVPcGVuVW5zZXQsIGVQcm94eVVSSSwgZVJlc29sdmVQcm94eSwgZVJlc291cmNlLCBlU2V0LCBlU2V0UmVzb3VyY2UsIGVTZXRTdG9yZSwgZVNldHRpbmcsIGVTdG9yZSwgZVVuc2V0LCBlVVJJRnJhZ21lbnRTZWdtZW50LCBlVmlydHVhbEdldCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsSXNTZXQsIGVWaXJ0dWFsU2V0LCBlVmlydHVhbFVuc2V0LCB0b1N0cmluZzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQsIGVOb3RpZnk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB3YWl0LCB3YWl0LCB3YWl0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBsYXRmb3JtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGxhdGZvcm08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwjZ2V0QmFzZV9Ob2RlKCkiPmdldEJhc2VfTm9kZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sI3NldEJhc2VfTm9kZShvcmcuZWNsaXBzZS51bWwyLnVtbC5Ob2RlKSI+c2V0QmFzZV9Ob2RlPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9Sb2JvdGljU2ltdWxhdG9ySW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU2ltdWxhdG9ySW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlJvYm90aWNTaW11bGF0b3JJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QbGF0Zm9ybUltcGwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODU0MTlhZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbApAQCAtMCwwICsxLDU4NiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI0IENFVCAyMDEyIC0tPgorPFRJVExFPgorUm9ib3RpY1N5c3RlbUltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdGljU3lzdGVtSW1wbCBjbGFzcyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iUm9ib3RpY1N5c3RlbUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTaW11bGF0b3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0ZPTlQ+Cis8QlI+CitDbGFzcyBSb2JvdGljU3lzdGVtSW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90aWNTeXN0ZW1JbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5EaXJlY3QgS25vd24gU3ViY2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BY3R1YXRvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BY3R1YXRvclN5c3RlbUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2Vuc29yU3lzdGVtSW1wbDwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5Sb2JvdGljU3lzdGVtSW1wbDwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3lzdGVtSW1wbDwvQT48RFQ+aW1wbGVtZW50cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Um9ib3RpYyBTeXN0ZW08L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorIDxwPgorIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI2dldExvY2FsUG9zaXRpb24oKSI+PENPREU+PGVtPkxvY2FsIFBvc2l0aW9uPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCNnZXRMb2NhbE9yaWVudGF0aW9uKCkiPjxDT0RFPjxlbT5Mb2NhbCBPcmllbnRhdGlvbjwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVBZGFwdGVyTGlzdCZsdDtFIGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCAmIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXImZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVPYnNlcnZhYmxlQWRhcHRlckxpc3Q8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QuRVN0b3JlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RUxBU1RfRU9CSkVDVF9GTEFHPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RU9QUE9TSVRFX0ZFQVRVUkVfQkFTRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5PYmplY3Q8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPmVHZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgIGJvb2xlYW4mbmJzcDtyZXNvbHZlLAorICAgICBib29sZWFuJm5ic3A7Y29yZVR5cGUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2Jvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCNlSXNTZXQoaW50KSI+ZUlzU2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj5lU2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7bmV3VmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjZ2V0TG9jYWxPcmllbnRhdGlvbigpIj5nZXRMb2NhbE9yaWVudGF0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjZ2V0TG9jYWxQb3NpdGlvbigpIj5nZXRMb2NhbFBvc2l0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjc2V0TG9jYWxPcmllbnRhdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxPcmllbnRhdGlvbjwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdMb2NhbE9yaWVudGF0aW9uKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjc2V0TG9jYWxQb3NpdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxQb3NpdGlvbjwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdMb2NhbFBvc2l0aW9uKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjdG9TdHJpbmcoKSI+dG9TdHJpbmc8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3lzdGVtSW1wbDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjYmFzaWNHZXRCYXNlX0NsYXNzKCkiPmJhc2ljR2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlQ2xhc3MsIGVDb250YWluZXJGZWF0dXJlSUQsIGVEZWxpdmVyLCBlSW50ZXJuYWxDb250YWluZXIsIGVJbnZva2UsIGVJc1Byb3h5LCBlU2V0Q2xhc3MsIGVTZXREZWxpdmVyLCBlU2V0UHJveHlVUkk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQmFzZVN0cnVjdHVyYWxGZWF0dXJlSUQsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXJGZWF0dXJlLCBlQmFzaWNTZXRDb250YWluZXIsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRhaW5zLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGlyZWN0UmVzb3VyY2UsIGVEeW5hbWljQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlRHluYW1pY0dldCwgZUR5bmFtaWNHZXQsIGVEeW5hbWljSW52ZXJzZUFkZCwgZUR5bmFtaWNJbnZlcnNlUmVtb3ZlLCBlRHluYW1pY0ludm9rZSwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1Vuc2V0LCBlRHluYW1pY1Vuc2V0LCBlR2V0LCBlR2V0LCBlR2V0LCBlSW50ZXJuYWxSZXNvdXJjZSwgZUludmVyc2VBZGQsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZVJlbW92ZSwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZU9iamVjdEZvclVSSUZyYWdtZW50U2VnbWVudCwgZU9wZW5HZXQsIGVPcGVuSXNTZXQsIGVPcGVuU2V0LCBlT3BlblVuc2V0LCBlUHJveHlVUkksIGVSZXNvbHZlUHJveHksIGVSZXNvdXJjZSwgZVNldCwgZVNldFJlc291cmNlLCBlU2V0U3RvcmUsIGVTZXR0aW5nLCBlU3RvcmUsIGVVbnNldCwgZVVSSUZyYWdtZW50U2VnbWVudCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbElzU2V0LCBlVmlydHVhbFNldCwgZVZpcnR1YWxVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQsIGVOb3RpZnk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB3YWl0LCB3YWl0LCB3YWl0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0TG9jYWxQb3NpdGlvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRMb2NhbFBvc2l0aW9uPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRMb2NhbFBvc2l0aW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbFBvc2l0aW9uKCkiPmdldExvY2FsUG9zaXRpb248L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbG9jYWwgcG9zaXRpb248RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPlJvYm90aWNTeXN0ZW0uc2V0TG9jYWxQb3NpdGlvbihTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Um9ib3RpY1N5c3RlbV9Mb2NhbFBvc2l0aW9uKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFJvYm90aWNTeXN0ZW1fTG9jYWxQb3NpdGlvbigpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldExvY2FsUG9zaXRpb24oamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldExvY2FsUG9zaXRpb248L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldExvY2FsUG9zaXRpb248L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdMb2NhbFBvc2l0aW9uKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjc2V0TG9jYWxQb3NpdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxQb3NpdGlvbjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdMb2NhbFBvc2l0aW9uPC9DT0RFPiAtIHRoZSBuZXcgbG9jYWwgcG9zaXRpb248RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsUG9zaXRpb24oKSI+PENPREU+Um9ib3RpY1N5c3RlbS5nZXRMb2NhbFBvc2l0aW9uKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0TG9jYWxPcmllbnRhdGlvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRMb2NhbE9yaWVudGF0aW9uPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRMb2NhbE9yaWVudGF0aW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbE9yaWVudGF0aW9uKCkiPmdldExvY2FsT3JpZW50YXRpb248L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbG9jYWwgb3JpZW50YXRpb248RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI3NldExvY2FsT3JpZW50YXRpb24oamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPlJvYm90aWNTeXN0ZW0uc2V0TG9jYWxPcmllbnRhdGlvbihTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0Um9ib3RpY1N5c3RlbV9Mb2NhbE9yaWVudGF0aW9uKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFJvYm90aWNTeXN0ZW1fTG9jYWxPcmllbnRhdGlvbigpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldExvY2FsT3JpZW50YXRpb24oamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldExvY2FsT3JpZW50YXRpb248L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldExvY2FsT3JpZW50YXRpb248L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdMb2NhbE9yaWVudGF0aW9uKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjc2V0TG9jYWxPcmllbnRhdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxPcmllbnRhdGlvbjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdMb2NhbE9yaWVudGF0aW9uPC9DT0RFPiAtIHRoZSBuZXcgbG9jYWwgb3JpZW50YXRpb248RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsT3JpZW50YXRpb24oKSI+PENPREU+Um9ib3RpY1N5c3RlbS5nZXRMb2NhbE9yaWVudGF0aW9uKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj48IS0tIC0tPjwvQT48SDM+CitlR2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLk9iamVjdCA8Qj5lR2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtyZXNvbHZlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sZWFuJm5ic3A7Y29yZVR5cGUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZUdldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPmVHZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3lzdGVtSW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8REQ+PENPREU+cmVzb2x2ZTwvQ09ERT4gLSB0aGUgcmVzb2x2ZTxERD48Q09ERT5jb3JlVHlwZTwvQ09ERT4gLSB0aGUgY29yZSB0eXBlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBvYmplY3Q8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorZVNldDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+ZVNldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7bmV3VmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVNldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3lzdGVtSW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8REQ+PENPREU+bmV3VmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZVVuc2V0KGludCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VVbnNldDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+ZVVuc2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVVuc2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2VVbnNldChpbnQpIj5lVW5zZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3lzdGVtSW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVJc1NldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlSXNTZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBib29sZWFuIDxCPmVJc1NldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVJc1NldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNlSXNTZXQoaW50KSI+ZUlzU2V0PC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRydWUsIGlmIHN1Y2Nlc3NmdWw8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InRvU3RyaW5nKCkiPjwhLS0gLS0+PC9BPjxIMz4KK3RvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj50b1N0cmluZzwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPnRvU3RyaW5nPC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3RyaW5nPC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1NpbXVsYXRvckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlJvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yRHJpdmVySW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JEcml2ZXJJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmJiNGU4NAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yRHJpdmVySW1wbC5odG1sCkBAIC0wLDAgKzEsMzUwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjUgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitTZW5zb3JEcml2ZXJJbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU2Vuc29yRHJpdmVySW1wbCBjbGFzcyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iU2Vuc29yRHJpdmVySW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9TZW5zb3JEcml2ZXJJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yRHJpdmVySW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNlbnNvckRyaXZlckltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNvZnR3YXJlSW1wbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIFNlbnNvckRyaXZlckltcGw8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsCisgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsCisgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Tb2Z0d2FyZUltcGw8L0E+CisgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNlbnNvckRyaXZlckltcGw8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JEcml2ZXIuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvckRyaXZlcjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U29mdHdhcmU8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+U2Vuc29yRHJpdmVySW1wbDwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Tb2Z0d2FyZUltcGw8L0E+PERUPmltcGxlbWVudHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yRHJpdmVyPC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TZW5zb3IgRHJpdmVyPC9iPjwvZW0+Jy4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyA8cD4KKyA8L3A+Cis8UD4KKworPFA+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PSBORVNURUQgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0ibmVzdGVkX2NsYXNzX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5OZXN0ZWQgQ2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRUFkYXB0ZXJMaXN0Jmx0O0UgZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0ICYgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciZndDssIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRU9ic2VydmFibGVBZGFwdGVyTGlzdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdC5FU3RvcmU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FTEFTVF9FT0JKRUNUX0ZMQUc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FT1BQT1NJVEVfRkVBVFVSRV9CQVNFPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNvZnR3YXJlSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U29mdHdhcmVJbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwjZ2V0RGVhZGxpbmUoKSI+Z2V0RGVhZGxpbmU8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNnZXRQZXJpb2QoKSI+Z2V0UGVyaW9kPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwjZ2V0UHJpb3JpdHkoKSI+Z2V0UHJpb3JpdHk8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNnZXRXY2V0KCkiPmdldFdjZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNpc0lzUGVyaW9kaWMoKSI+aXNJc1BlcmlvZGljPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwjc2V0RGVhZGxpbmUoamF2YS5sYW5nLlN0cmluZykiPnNldERlYWRsaW5lPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwjc2V0SXNQZXJpb2RpYyhib29sZWFuKSI+c2V0SXNQZXJpb2RpYzwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sI3NldFBlcmlvZChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0UGVyaW9kPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwjc2V0UHJpb3JpdHkoamF2YS5sYW5nLlN0cmluZykiPnNldFByaW9yaXR5PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwjc2V0V2NldChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0V2NldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sI3RvU3RyaW5nKCkiPnRvU3RyaW5nPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TeXN0ZW1JbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNiYXNpY0dldEJhc2VfQ2xhc3MoKSI+YmFzaWNHZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVDbGFzcywgZUNvbnRhaW5lckZlYXR1cmVJRCwgZURlbGl2ZXIsIGVJbnRlcm5hbENvbnRhaW5lciwgZUludm9rZSwgZUlzUHJveHksIGVTZXRDbGFzcywgZVNldERlbGl2ZXIsIGVTZXRQcm94eVVSSTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVCYXNlU3RydWN0dXJhbEZlYXR1cmVJRCwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lckZlYXR1cmUsIGVCYXNpY1NldENvbnRhaW5lciwgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGFpbnMsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEaXJlY3RSZXNvdXJjZSwgZUR5bmFtaWNCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVEeW5hbWljR2V0LCBlRHluYW1pY0dldCwgZUR5bmFtaWNJbnZlcnNlQWRkLCBlRHluYW1pY0ludmVyc2VSZW1vdmUsIGVEeW5hbWljSW52b2tlLCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljVW5zZXQsIGVEeW5hbWljVW5zZXQsIGVHZXQsIGVHZXQsIGVHZXQsIGVJbnRlcm5hbFJlc291cmNlLCBlSW52ZXJzZUFkZCwgZUludmVyc2VBZGQsIGVJbnZlcnNlUmVtb3ZlLCBlSW52ZXJzZVJlbW92ZSwgZUludm9rZSwgZUlzU2V0LCBlT2JqZWN0Rm9yVVJJRnJhZ21lbnRTZWdtZW50LCBlT3BlbkdldCwgZU9wZW5Jc1NldCwgZU9wZW5TZXQsIGVPcGVuVW5zZXQsIGVQcm94eVVSSSwgZVJlc29sdmVQcm94eSwgZVJlc291cmNlLCBlU2V0LCBlU2V0UmVzb3VyY2UsIGVTZXRTdG9yZSwgZVNldHRpbmcsIGVTdG9yZSwgZVVuc2V0LCBlVVJJRnJhZ21lbnRTZWdtZW50LCBlVmlydHVhbEdldCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsSXNTZXQsIGVWaXJ0dWFsU2V0LCBlVmlydHVhbFVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU29mdHdhcmUiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Tb2Z0d2FyZTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXREZWFkbGluZSgpIj5nZXREZWFkbGluZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldFBlcmlvZCgpIj5nZXRQZXJpb2Q8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXRQcmlvcml0eSgpIj5nZXRQcmlvcml0eTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldFdjZXQoKSI+Z2V0V2NldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2lzSXNQZXJpb2RpYygpIj5pc0lzUGVyaW9kaWM8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXREZWFkbGluZShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0RGVhZGxpbmU8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXRJc1BlcmlvZGljKGJvb2xlYW4pIj5zZXRJc1BlcmlvZGljPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjc2V0UGVyaW9kKGphdmEubGFuZy5TdHJpbmcpIj5zZXRQZXJpb2Q8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXRQcmlvcml0eShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0UHJpb3JpdHk8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXRXY2V0KGphdmEubGFuZy5TdHJpbmcpIj5zZXRXY2V0PC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9TZW5zb3JEcml2ZXJJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yRHJpdmVySW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNlbnNvckRyaXZlckltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNvZnR3YXJlSW1wbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWJhMDc3MQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sCkBAIC0wLDAgKzEsNjA1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjUgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitTZW5zb3JTeXN0ZW1JbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU2Vuc29yU3lzdGVtSW1wbCBjbGFzcyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iU2Vuc29yU3lzdGVtSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JEcml2ZXJJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZXJ2aWNlUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9GT05UPgorPEJSPgorQ2xhc3MgU2Vuc29yU3lzdGVtSW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RpY1N5c3RlbUltcGw8L0E+CisgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNlbnNvclN5c3RlbUltcGw8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QsIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREQ+Cis8L0RMPgorPERMPgorPERUPjxCPkRpcmVjdCBLbm93biBTdWJjbGFzc2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0ltYWdlU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkltYWdlU2Vuc29yU3lzdGVtSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGw8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+U2Vuc29yU3lzdGVtSW1wbDwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90aWNTeXN0ZW1JbXBsPC9BPjxEVD5pbXBsZW1lbnRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvclN5c3RlbTwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U2Vuc29yIFN5c3RlbTwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgPHA+CisgVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgPHVsPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNnZXRGcmVxdWVuY3koKSI+PENPREU+PGVtPkZyZXF1ZW5jeTwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNnZXRJZGVudGlmaWVyKCkiPjxDT0RFPjxlbT5JZGVudGlmaWVyPC9lbT48L0NPREU+PC9BPjwvbGk+CisgPC91bD4KKyA8L3A+Cis8UD4KKworPFA+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PSBORVNURUQgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0ibmVzdGVkX2NsYXNzX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5OZXN0ZWQgQ2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRUFkYXB0ZXJMaXN0Jmx0O0UgZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0ICYgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciZndDssIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRU9ic2VydmFibGVBZGFwdGVyTGlzdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdC5FU3RvcmU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FTEFTVF9FT0JKRUNUX0ZMQUc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FT1BQT1NJVEVfRkVBVFVSRV9CQVNFPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLk9iamVjdDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj5lR2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICBib29sZWFuJm5ic3A7cmVzb2x2ZSwKKyAgICAgYm9vbGVhbiZuYnNwO2NvcmVUeXBlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2Jvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj5lU2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7bmV3VmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwjZVVuc2V0KGludCkiPmVVbnNldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNnZXRGcmVxdWVuY3koKSI+Z2V0RnJlcXVlbmN5PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI2dldElkZW50aWZpZXIoKSI+Z2V0SWRlbnRpZmllcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCNzZXRGcmVxdWVuY3koamF2YS5sYW5nLlN0cmluZykiPnNldEZyZXF1ZW5jeTwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdGcmVxdWVuY3kpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwjc2V0SWRlbnRpZmllcihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0SWRlbnRpZmllcjwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdJZGVudGlmaWVyKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sI3RvU3RyaW5nKCkiPnRvU3RyaW5nPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdGljU3lzdGVtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU3lzdGVtSW1wbDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI2dldExvY2FsT3JpZW50YXRpb24oKSI+Z2V0TG9jYWxPcmllbnRhdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjZ2V0TG9jYWxQb3NpdGlvbigpIj5nZXRMb2NhbFBvc2l0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCNzZXRMb2NhbE9yaWVudGF0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCNzZXRMb2NhbFBvc2l0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMb2NhbFBvc2l0aW9uPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TeXN0ZW1JbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNiYXNpY0dldEJhc2VfQ2xhc3MoKSI+YmFzaWNHZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVDbGFzcywgZUNvbnRhaW5lckZlYXR1cmVJRCwgZURlbGl2ZXIsIGVJbnRlcm5hbENvbnRhaW5lciwgZUludm9rZSwgZUlzUHJveHksIGVTZXRDbGFzcywgZVNldERlbGl2ZXIsIGVTZXRQcm94eVVSSTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVCYXNlU3RydWN0dXJhbEZlYXR1cmVJRCwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lckZlYXR1cmUsIGVCYXNpY1NldENvbnRhaW5lciwgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGFpbnMsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEaXJlY3RSZXNvdXJjZSwgZUR5bmFtaWNCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVEeW5hbWljR2V0LCBlRHluYW1pY0dldCwgZUR5bmFtaWNJbnZlcnNlQWRkLCBlRHluYW1pY0ludmVyc2VSZW1vdmUsIGVEeW5hbWljSW52b2tlLCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljVW5zZXQsIGVEeW5hbWljVW5zZXQsIGVHZXQsIGVHZXQsIGVHZXQsIGVJbnRlcm5hbFJlc291cmNlLCBlSW52ZXJzZUFkZCwgZUludmVyc2VBZGQsIGVJbnZlcnNlUmVtb3ZlLCBlSW52ZXJzZVJlbW92ZSwgZUludm9rZSwgZUlzU2V0LCBlT2JqZWN0Rm9yVVJJRnJhZ21lbnRTZWdtZW50LCBlT3BlbkdldCwgZU9wZW5Jc1NldCwgZU9wZW5TZXQsIGVPcGVuVW5zZXQsIGVQcm94eVVSSSwgZVJlc29sdmVQcm94eSwgZVJlc291cmNlLCBlU2V0LCBlU2V0UmVzb3VyY2UsIGVTZXRTdG9yZSwgZVNldHRpbmcsIGVTdG9yZSwgZVVuc2V0LCBlVVJJRnJhZ21lbnRTZWdtZW50LCBlVmlydHVhbEdldCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsSXNTZXQsIGVWaXJ0dWFsU2V0LCBlVmlydHVhbFVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY1N5c3RlbSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsT3JpZW50YXRpb24oKSI+Z2V0TG9jYWxPcmllbnRhdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjZ2V0TG9jYWxQb3NpdGlvbigpIj5nZXRMb2NhbFBvc2l0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNzZXRMb2NhbE9yaWVudGF0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMb2NhbE9yaWVudGF0aW9uPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNzZXRMb2NhbFBvc2l0aW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRMb2NhbFBvc2l0aW9uPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImdldEZyZXF1ZW5jeSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRGcmVxdWVuY3k8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldEZyZXF1ZW5jeTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI2dldEZyZXF1ZW5jeSgpIj5nZXRGcmVxdWVuY3k8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPkZyZXF1ZW5jeTwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI3NldEZyZXF1ZW5jeShqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+U2Vuc29yU3lzdGVtLnNldEZyZXF1ZW5jeShTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U2Vuc29yU3lzdGVtX0ZyZXF1ZW5jeSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRTZW5zb3JTeXN0ZW1fRnJlcXVlbmN5KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0RnJlcXVlbmN5KGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRGcmVxdWVuY3k8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldEZyZXF1ZW5jeTwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld0ZyZXF1ZW5jeSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNzZXRGcmVxdWVuY3koamF2YS5sYW5nLlN0cmluZykiPnNldEZyZXF1ZW5jeTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3RnJlcXVlbmN5PC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+RnJlcXVlbmN5PC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwjZ2V0RnJlcXVlbmN5KCkiPjxDT0RFPlNlbnNvclN5c3RlbS5nZXRGcmVxdWVuY3koKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRJZGVudGlmaWVyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldElkZW50aWZpZXI8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldElkZW50aWZpZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNnZXRJZGVudGlmaWVyKCkiPmdldElkZW50aWZpZXI8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPklkZW50aWZpZXI8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNzZXRJZGVudGlmaWVyKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5TZW5zb3JTeXN0ZW0uc2V0SWRlbnRpZmllcihTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U2Vuc29yU3lzdGVtX0lkZW50aWZpZXIoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0U2Vuc29yU3lzdGVtX0lkZW50aWZpZXIoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRJZGVudGlmaWVyKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRJZGVudGlmaWVyPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRJZGVudGlmaWVyPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3SWRlbnRpZmllcik8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCNzZXRJZGVudGlmaWVyKGphdmEubGFuZy5TdHJpbmcpIj5zZXRJZGVudGlmaWVyPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvclN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdJZGVudGlmaWVyPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+SWRlbnRpZmllcjwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sI2dldElkZW50aWZpZXIoKSI+PENPREU+U2Vuc29yU3lzdGVtLmdldElkZW50aWZpZXIoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPjwhLS0gLS0+PC9BPjxIMz4KK2VHZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuT2JqZWN0IDxCPmVHZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbGVhbiZuYnNwO3Jlc29sdmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtjb3JlVHlwZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVHZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY1N5c3RlbUltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkPEREPjxDT0RFPnJlc29sdmU8L0NPREU+IC0gdGhlIHJlc29sdmU8REQ+PENPREU+Y29yZVR5cGU8L0NPREU+IC0gdGhlIGNvcmUgdHlwZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgb2JqZWN0PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VTZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmVTZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO25ld1ZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVNldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj5lU2V0PC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU3lzdGVtSW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8REQ+PENPREU+bmV3VmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZVVuc2V0KGludCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VVbnNldDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+ZVVuc2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lVW5zZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI2VVbnNldChpbnQpIj5lVW5zZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90aWNTeXN0ZW1JbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUlzU2V0KGludCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VJc1NldDwvSDM+Cis8UFJFPgorcHVibGljIGJvb2xlYW4gPEI+ZUlzU2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lSXNTZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90aWNTeXN0ZW1JbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZAorPERUPjxCPlJldHVybnM6PC9CPjxERD50cnVlLCBpZiBzdWNjZXNzZnVsPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJ0b1N0cmluZygpIj48IS0tIC0tPjwvQT48SDM+Cit0b1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+dG9TdHJpbmc8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjdG9TdHJpbmcoKSI+dG9TdHJpbmc8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90aWNTeXN0ZW1JbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU2Vuc29yU3lzdGVtSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yRHJpdmVySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjMwNDY3NDgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sCkBAIC0wLDAgKzEsNTY4IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjUgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitTZXJ2aWNlUG9ydEltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TZXJ2aWNlUG9ydEltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlNlcnZpY2VQb3J0SW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9TZXJ2aWNlUG9ydEltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NpbXVsYXRlZFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU2VydmljZVBvcnRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIFNlcnZpY2VQb3J0SW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUG9ydEltcGw8L0E+CisgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU2VydmljZVBvcnRJbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UG9ydDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZVBvcnQ8L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+U2VydmljZVBvcnRJbXBsPC9CPjxEVD5leHRlbmRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UG9ydEltcGw8L0E+PERUPmltcGxlbWVudHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlUG9ydDwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U2VydmljZSBQb3J0PC9iPjwvZW0+Jy4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyA8cD4KKyBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyA8dWw+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmh0bWwjZ2V0S2luZCgpIj48Q09ERT48ZW0+S2luZDwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVBZGFwdGVyTGlzdCZsdDtFIGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCAmIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXImZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVPYnNlcnZhYmxlQWRhcHRlckxpc3Q8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QuRVN0b3JlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RUxBU1RfRU9CSkVDVF9GTEFHPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RU9QUE9TSVRFX0ZFQVRVUkVfQkFTRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5PYmplY3Q8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj5lR2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICBib29sZWFuJm5ic3A7cmVzb2x2ZSwKKyAgICAgYm9vbGVhbiZuYnNwO2NvcmVUeXBlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtib29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj5lU2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7bmV3VmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmh0bWwjZVVuc2V0KGludCkiPmVVbnNldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UudW1sMi51bWwuSW1hZ2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmh0bWwjZ2V0SWNvbigpIj5nZXRJY29uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7SW1hZ2VzIHJlZ2lzdGVyZWQgaW4gUHJvZmlsZSBhcmUgOgorIAorIDAgLSBTZXJ2aWNlUG9ydCBQcm92aWRlZAorIDEgLSBTZXJ2aWNlUG9ydCBSZXF1aXJlZAorIAorIDwhPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlRmxvd0tpbmQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sI2dldEtpbmQoKSI+Z2V0S2luZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZXJ2aWNlUG9ydEltcGwuaHRtbCNzZXRLaW5kKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlRmxvd0tpbmQpIj5zZXRLaW5kPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VGbG93S2luZDwvQT4mbmJzcDtuZXdLaW5kKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sI3RvU3RyaW5nKCkiPnRvU3RyaW5nPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUG9ydEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UG9ydEltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCNiYXNpY0dldEJhc2VfUG9ydCgpIj5iYXNpY0dldEJhc2VfUG9ydDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwjZ2V0QmFzZV9Qb3J0KCkiPmdldEJhc2VfUG9ydDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwjZ2V0U3luY2hyb25pemF0aW9uUG9saWN5KCkiPmdldFN5bmNocm9uaXphdGlvblBvbGljeTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwjc2V0QmFzZV9Qb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpIj5zZXRCYXNlX1BvcnQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sI3NldFN5bmNocm9uaXphdGlvblBvbGljeShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3luY2hyb25pemF0aW9uS2luZCkiPnNldFN5bmNocm9uaXphdGlvblBvbGljeTwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVDbGFzcywgZUNvbnRhaW5lckZlYXR1cmVJRCwgZURlbGl2ZXIsIGVJbnRlcm5hbENvbnRhaW5lciwgZUludm9rZSwgZUlzUHJveHksIGVTZXRDbGFzcywgZVNldERlbGl2ZXIsIGVTZXRQcm94eVVSSTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVCYXNlU3RydWN0dXJhbEZlYXR1cmVJRCwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lckZlYXR1cmUsIGVCYXNpY1NldENvbnRhaW5lciwgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGFpbnMsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEaXJlY3RSZXNvdXJjZSwgZUR5bmFtaWNCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVEeW5hbWljR2V0LCBlRHluYW1pY0dldCwgZUR5bmFtaWNJbnZlcnNlQWRkLCBlRHluYW1pY0ludmVyc2VSZW1vdmUsIGVEeW5hbWljSW52b2tlLCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljVW5zZXQsIGVEeW5hbWljVW5zZXQsIGVHZXQsIGVHZXQsIGVHZXQsIGVJbnRlcm5hbFJlc291cmNlLCBlSW52ZXJzZUFkZCwgZUludmVyc2VBZGQsIGVJbnZlcnNlUmVtb3ZlLCBlSW52ZXJzZVJlbW92ZSwgZUludm9rZSwgZUlzU2V0LCBlT2JqZWN0Rm9yVVJJRnJhZ21lbnRTZWdtZW50LCBlT3BlbkdldCwgZU9wZW5Jc1NldCwgZU9wZW5TZXQsIGVPcGVuVW5zZXQsIGVQcm94eVVSSSwgZVJlc29sdmVQcm94eSwgZVJlc291cmNlLCBlU2V0LCBlU2V0UmVzb3VyY2UsIGVTZXRTdG9yZSwgZVNldHRpbmcsIGVTdG9yZSwgZVVuc2V0LCBlVVJJRnJhZ21lbnRTZWdtZW50LCBlVmlydHVhbEdldCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsSXNTZXQsIGVWaXJ0dWFsU2V0LCBlVmlydHVhbFVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG9ydCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UG9ydDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sI2dldEJhc2VfUG9ydCgpIj5nZXRCYXNlX1BvcnQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sI2dldFN5bmNocm9uaXphdGlvblBvbGljeSgpIj5nZXRTeW5jaHJvbml6YXRpb25Qb2xpY3k8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sI3NldEJhc2VfUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KSI+c2V0QmFzZV9Qb3J0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCNzZXRTeW5jaHJvbml6YXRpb25Qb2xpY3kob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5bmNocm9uaXphdGlvbktpbmQpIj5zZXRTeW5jaHJvbml6YXRpb25Qb2xpY3k8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImdldEtpbmQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0S2luZDwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlRmxvd0tpbmQ8L0E+IDxCPmdldEtpbmQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCNnZXRLaW5kKCkiPmdldEtpbmQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlUG9ydDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBraW5kPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlNlcnZpY2VGbG93S2luZDwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sI3NldEtpbmQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlcnZpY2VGbG93S2luZCkiPjxDT0RFPlNlcnZpY2VQb3J0LnNldEtpbmQoU2VydmljZUZsb3dLaW5kKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNlcnZpY2VQb3J0X0tpbmQoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0U2VydmljZVBvcnRfS2luZCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldEtpbmQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlcnZpY2VGbG93S2luZCkiPjwhLS0gLS0+PC9BPjxIMz4KK3NldEtpbmQ8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldEtpbmQ8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlRmxvd0tpbmQ8L0E+Jm5ic3A7bmV3S2luZCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCNzZXRLaW5kKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlRmxvd0tpbmQpIj5zZXRLaW5kPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZVBvcnQ8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3S2luZDwvQ09ERT4gLSB0aGUgbmV3IGtpbmQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+U2VydmljZUZsb3dLaW5kPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwjZ2V0S2luZCgpIj48Q09ERT5TZXJ2aWNlUG9ydC5nZXRLaW5kKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj48IS0tIC0tPjwvQT48SDM+CitlR2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLk9iamVjdCA8Qj5lR2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtyZXNvbHZlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sZWFuJm5ic3A7Y29yZVR5cGUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZUdldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj5lR2V0PC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Qb3J0SW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8REQ+PENPREU+cmVzb2x2ZTwvQ09ERT4gLSB0aGUgcmVzb2x2ZTxERD48Q09ERT5jb3JlVHlwZTwvQ09ERT4gLSB0aGUgY29yZSB0eXBlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBvYmplY3Q8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorZVNldDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+ZVNldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7bmV3VmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVNldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj5lU2V0PC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Qb3J0SW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8REQ+PENPREU+bmV3VmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZVVuc2V0KGludCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VVbnNldDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+ZVVuc2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVVuc2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Qb3J0SW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVJc1NldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlSXNTZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBib29sZWFuIDxCPmVJc1NldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVJc1NldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwjZUlzU2V0KGludCkiPmVJc1NldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UG9ydEltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRydWUsIGlmIHN1Y2Nlc3NmdWw8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InRvU3RyaW5nKCkiPjwhLS0gLS0+PC9BPjxIMz4KK3RvU3RyaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj50b1N0cmluZzwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwjdG9TdHJpbmcoKSI+dG9TdHJpbmc8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBvcnRJbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN0cmluZzwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0SWNvbigpIj48IS0tIC0tPjwvQT48SDM+CitnZXRJY29uPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UudW1sMi51bWwuSW1hZ2UgPEI+Z2V0SWNvbjwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgSW1hZ2VzIHJlZ2lzdGVyZWQgaW4gUHJvZmlsZSBhcmUgOgorIAorIDAgLSBTZXJ2aWNlUG9ydCBQcm92aWRlZAorIDEgLSBTZXJ2aWNlUG9ydCBSZXF1aXJlZAorIAorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgaWNvbiBvZiB0aGUgcG9ydDwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU2VydmljZVBvcnRJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNlcnZpY2VQb3J0SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NpbXVsYXRlZFN5c3RlbUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2ltdWxhdGVkU3lzdGVtSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI3ZDEyOGMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NpbXVsYXRlZFN5c3RlbUltcGwuaHRtbApAQCAtMCwwICsxLDYwMiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI1IENFVCAyMDEyIC0tPgorPFRJVExFPgorU2ltdWxhdGVkU3lzdGVtSW1wbAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNpbXVsYXRlZFN5c3RlbUltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlNpbXVsYXRlZFN5c3RlbUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU2ltdWxhdGVkU3lzdGVtSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2ltdWxhdGVkU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNpbXVsYXRlZFN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9GT05UPgorPEJSPgorQ2xhc3MgU2ltdWxhdGVkU3lzdGVtSW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNvZnR3YXJlSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU2ltdWxhdGVkU3lzdGVtSW1wbDwvQj4KKzwvUFJFPgorPERMPgorPERUPjxCPkFsbCBJbXBsZW1lbnRlZCBJbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2ltdWxhdGVkU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Tb2Z0d2FyZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5TaW11bGF0ZWRTeXN0ZW1JbXBsPC9CPjxEVD5leHRlbmRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNvZnR3YXJlSW1wbDwvQT48RFQ+aW1wbGVtZW50cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaW11bGF0ZWRTeXN0ZW08L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNpbXVsYXRlZCBTeXN0ZW08L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorIDxwPgorIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwjZ2V0QmFzZV9Qcm9wZXJ0eSgpIj48Q09ERT48ZW0+QmFzZSBQcm9wZXJ0eTwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NpbXVsYXRlZFN5c3RlbUltcGwuaHRtbCNnZXRNZXNoKCkiPjxDT0RFPjxlbT5NZXNoPC9lbT48L0NPREU+PC9BPjwvbGk+CisgPC91bD4KKyA8L3A+Cis8UD4KKworPFA+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PSBORVNURUQgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0ibmVzdGVkX2NsYXNzX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5OZXN0ZWQgQ2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRUFkYXB0ZXJMaXN0Jmx0O0UgZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0ICYgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciZndDssIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRU9ic2VydmFibGVBZGFwdGVyTGlzdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdC5FU3RvcmU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FTEFTVF9FT0JKRUNUX0ZMQUc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FT1BQT1NJVEVfRkVBVFVSRV9CQVNFPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHk8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2ltdWxhdGVkU3lzdGVtSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9Qcm9wZXJ0eSgpIj5iYXNpY0dldEJhc2VfUHJvcGVydHk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5PYmplY3Q8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2ltdWxhdGVkU3lzdGVtSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgYm9vbGVhbiZuYnNwO3Jlc29sdmUsCisgICAgIGJvb2xlYW4mbmJzcDtjb3JlVHlwZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Ym9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwjZUlzU2V0KGludCkiPmVJc1NldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj5lU2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7bmV3VmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2ltdWxhdGVkU3lzdGVtSW1wbC5odG1sI2VVbnNldChpbnQpIj5lVW5zZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NpbXVsYXRlZFN5c3RlbUltcGwuaHRtbCNnZXRCYXNlX1Byb3BlcnR5KCkiPmdldEJhc2VfUHJvcGVydHk8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdCZsdDtqYXZhLmxhbmcuU3RyaW5nJmd0OzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwjZ2V0TWVzaCgpIj5nZXRNZXNoPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NpbXVsYXRlZFN5c3RlbUltcGwuaHRtbCNzZXRCYXNlX1Byb3BlcnR5KG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5KSI+c2V0QmFzZV9Qcm9wZXJ0eTwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5Jm5ic3A7bmV3QmFzZV9Qcm9wZXJ0eSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwjdG9TdHJpbmcoKSI+dG9TdHJpbmc8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Tb2Z0d2FyZUltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNvZnR3YXJlSW1wbDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNnZXREZWFkbGluZSgpIj5nZXREZWFkbGluZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sI2dldFBlcmlvZCgpIj5nZXRQZXJpb2Q8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNnZXRQcmlvcml0eSgpIj5nZXRQcmlvcml0eTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sI2dldFdjZXQoKSI+Z2V0V2NldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sI2lzSXNQZXJpb2RpYygpIj5pc0lzUGVyaW9kaWM8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNzZXREZWFkbGluZShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0RGVhZGxpbmU8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNzZXRJc1BlcmlvZGljKGJvb2xlYW4pIj5zZXRJc1BlcmlvZGljPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwjc2V0UGVyaW9kKGphdmEubGFuZy5TdHJpbmcpIj5zZXRQZXJpb2Q8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNzZXRQcmlvcml0eShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0UHJpb3JpdHk8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNzZXRXY2V0KGphdmEubGFuZy5TdHJpbmcpIj5zZXRXY2V0PC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TeXN0ZW1JbXBsPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNiYXNpY0dldEJhc2VfQ2xhc3MoKSI+YmFzaWNHZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2dldEJhc2VfQ2xhc3MoKSI+Z2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVDbGFzcywgZUNvbnRhaW5lckZlYXR1cmVJRCwgZURlbGl2ZXIsIGVJbnRlcm5hbENvbnRhaW5lciwgZUludm9rZSwgZUlzUHJveHksIGVTZXRDbGFzcywgZVNldERlbGl2ZXIsIGVTZXRQcm94eVVSSTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVCYXNlU3RydWN0dXJhbEZlYXR1cmVJRCwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUJhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lckZlYXR1cmUsIGVCYXNpY1NldENvbnRhaW5lciwgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGFpbnMsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRPcGVyYXRpb25JRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEaXJlY3RSZXNvdXJjZSwgZUR5bmFtaWNCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVEeW5hbWljR2V0LCBlRHluYW1pY0dldCwgZUR5bmFtaWNJbnZlcnNlQWRkLCBlRHluYW1pY0ludmVyc2VSZW1vdmUsIGVEeW5hbWljSW52b2tlLCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY0lzU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljVW5zZXQsIGVEeW5hbWljVW5zZXQsIGVHZXQsIGVHZXQsIGVHZXQsIGVJbnRlcm5hbFJlc291cmNlLCBlSW52ZXJzZUFkZCwgZUludmVyc2VBZGQsIGVJbnZlcnNlUmVtb3ZlLCBlSW52ZXJzZVJlbW92ZSwgZUludm9rZSwgZUlzU2V0LCBlT2JqZWN0Rm9yVVJJRnJhZ21lbnRTZWdtZW50LCBlT3BlbkdldCwgZU9wZW5Jc1NldCwgZU9wZW5TZXQsIGVPcGVuVW5zZXQsIGVQcm94eVVSSSwgZVJlc29sdmVQcm94eSwgZVJlc291cmNlLCBlU2V0LCBlU2V0UmVzb3VyY2UsIGVTZXRTdG9yZSwgZVNldHRpbmcsIGVTdG9yZSwgZVVuc2V0LCBlVVJJRnJhZ21lbnRTZWdtZW50LCBlVmlydHVhbEdldCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsSXNTZXQsIGVWaXJ0dWFsU2V0LCBlVmlydHVhbFVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU29mdHdhcmUiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Tb2Z0d2FyZTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXREZWFkbGluZSgpIj5nZXREZWFkbGluZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldFBlcmlvZCgpIj5nZXRQZXJpb2Q8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXRQcmlvcml0eSgpIj5nZXRQcmlvcml0eTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldFdjZXQoKSI+Z2V0V2NldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2lzSXNQZXJpb2RpYygpIj5pc0lzUGVyaW9kaWM8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXREZWFkbGluZShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0RGVhZGxpbmU8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXRJc1BlcmlvZGljKGJvb2xlYW4pIj5zZXRJc1BlcmlvZGljPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjc2V0UGVyaW9kKGphdmEubGFuZy5TdHJpbmcpIj5zZXRQZXJpb2Q8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXRQcmlvcml0eShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0UHJpb3JpdHk8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXRXY2V0KGphdmEubGFuZy5TdHJpbmcpIj5zZXRXY2V0PC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImdldEJhc2VfUHJvcGVydHkoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QmFzZV9Qcm9wZXJ0eTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5IDxCPmdldEJhc2VfUHJvcGVydHk8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwjZ2V0QmFzZV9Qcm9wZXJ0eSgpIj5nZXRCYXNlX1Byb3BlcnR5PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNpbXVsYXRlZFN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBiYXNlXyBwcm9wZXJ0eTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCNzZXRCYXNlX1Byb3BlcnR5KG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5KSI+PENPREU+U2ltdWxhdGVkU3lzdGVtLnNldEJhc2VfUHJvcGVydHkoUHJvcGVydHkpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U2ltdWxhdGVkU3lzdGVtX0Jhc2VfUHJvcGVydHkoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0U2ltdWxhdGVkU3lzdGVtX0Jhc2VfUHJvcGVydHkoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJiYXNpY0dldEJhc2VfUHJvcGVydHkoKSI+PCEtLSAtLT48L0E+PEgzPgorYmFzaWNHZXRCYXNlX1Byb3BlcnR5PC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHkgPEI+YmFzaWNHZXRCYXNlX1Byb3BlcnR5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHByb3BlcnR5PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRCYXNlX1Byb3BlcnR5KG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5KSI+PCEtLSAtLT48L0E+PEgzPgorc2V0QmFzZV9Qcm9wZXJ0eTwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0QmFzZV9Qcm9wZXJ0eTwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHkmbmJzcDtuZXdCYXNlX1Byb3BlcnR5KTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCNzZXRCYXNlX1Byb3BlcnR5KG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5KSI+c2V0QmFzZV9Qcm9wZXJ0eTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaW11bGF0ZWRTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3QmFzZV9Qcm9wZXJ0eTwvQ09ERT4gLSB0aGUgbmV3IGJhc2VfIHByb3BlcnR5PERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sI2dldEJhc2VfUHJvcGVydHkoKSI+PENPREU+U2ltdWxhdGVkU3lzdGVtLmdldEJhc2VfUHJvcGVydHkoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRNZXNoKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldE1lc2g8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3QmbHQ7amF2YS5sYW5nLlN0cmluZyZndDsgPEI+Z2V0TWVzaDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCNnZXRNZXNoKCkiPmdldE1lc2g8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2ltdWxhdGVkU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG1lc2g8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTaW11bGF0ZWRTeXN0ZW1fTWVzaCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRTaW11bGF0ZWRTeXN0ZW1fTWVzaCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+PCEtLSAtLT48L0E+PEgzPgorZUdldDwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5PYmplY3QgPEI+ZUdldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sZWFuJm5ic3A7cmVzb2x2ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbGVhbiZuYnNwO2NvcmVUeXBlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVHZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPmVHZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Tb2Z0d2FyZUltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkPEREPjxDT0RFPnJlc29sdmU8L0NPREU+IC0gdGhlIHJlc29sdmU8REQ+PENPREU+Y29yZVR5cGU8L0NPREU+IC0gdGhlIGNvcmUgdHlwZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgb2JqZWN0PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VTZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmVTZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO25ld1ZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVTZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Tb2Z0d2FyZUltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkPEREPjxDT0RFPm5ld1ZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWU8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVVbnNldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlVW5zZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmVVbnNldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVVbnNldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sI2VVbnNldChpbnQpIj5lVW5zZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Tb2Z0d2FyZUltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlSXNTZXQoaW50KSI+PCEtLSAtLT48L0E+PEgzPgorZUlzU2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgYm9vbGVhbiA8Qj5lSXNTZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lSXNTZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNlSXNTZXQoaW50KSI+ZUlzU2V0PC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U29mdHdhcmVJbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZAorPERUPjxCPlJldHVybnM6PC9CPjxERD50cnVlLCBpZiBzdWNjZXNzZnVsPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJ0b1N0cmluZygpIj48IS0tIC0tPjwvQT48SDM+Cit0b1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+dG9TdHJpbmc8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCN0b1N0cmluZygpIj50b1N0cmluZzwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNvZnR3YXJlSW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1NpbXVsYXRlZFN5c3RlbUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NpbXVsYXRlZFN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjYzNjlhYTAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sCkBAIC0wLDAgKzEsNzQ0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjUgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitTb2Z0d2FyZUltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Tb2Z0d2FyZUltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlNvZnR3YXJlSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9Tb2Z0d2FyZUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NpbXVsYXRlZFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YWlyc0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU29mdHdhcmVJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIFNvZnR3YXJlSW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNvZnR3YXJlSW1wbDwvQj4KKzwvUFJFPgorPERMPgorPERUPjxCPkFsbCBJbXBsZW1lbnRlZCBJbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Tb2Z0d2FyZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxETD4KKzxEVD48Qj5EaXJlY3QgS25vd24gU3ViY2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JEcml2ZXJJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2Vuc29yRHJpdmVySW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NpbXVsYXRlZFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TaW11bGF0ZWRTeXN0ZW1JbXBsPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGNsYXNzIDxCPlNvZnR3YXJlSW1wbDwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3lzdGVtSW1wbDwvQT48RFQ+aW1wbGVtZW50cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNvZnR3YXJlPC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Tb2Z0d2FyZTwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgPHA+CisgVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgPHVsPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sI2lzSXNQZXJpb2RpYygpIj48Q09ERT48ZW0+SXMgUGVyaW9kaWM8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNnZXRQZXJpb2QoKSI+PENPREU+PGVtPlBlcmlvZDwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sI2dldFByaW9yaXR5KCkiPjxDT0RFPjxlbT5Qcmlvcml0eTwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sI2dldERlYWRsaW5lKCkiPjxDT0RFPjxlbT5EZWFkbGluZTwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sI2dldFdjZXQoKSI+PENPREU+PGVtPldjZXQ8L2VtPjwvQ09ERT48L0E+PC9saT4KKyA8L3VsPgorIDwvcD4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09IE5FU1RFRCBDTEFTUyBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk5lc3RlZCBDbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FQWRhcHRlckxpc3QmbHQ7RSBleHRlbmRzIGphdmEubGFuZy5PYmplY3QgJiBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyJmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FT2JzZXJ2YWJsZUFkYXB0ZXJMaXN0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LkVTdG9yZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVMQVNUX0VPQkpFQ1RfRkxBRzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVPUFBPU0lURV9GRUFUVVJFX0JBU0U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuT2JqZWN0PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgYm9vbGVhbiZuYnNwO3Jlc29sdmUsCisgICAgIGJvb2xlYW4mbmJzcDtjb3JlVHlwZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtib29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtuZXdWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sI2VVbnNldChpbnQpIj5lVW5zZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNnZXREZWFkbGluZSgpIj5nZXREZWFkbGluZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sI2dldFBlcmlvZCgpIj5nZXRQZXJpb2Q8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNnZXRQcmlvcml0eSgpIj5nZXRQcmlvcml0eTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sI2dldFdjZXQoKSI+Z2V0V2NldDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtib29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sI2lzSXNQZXJpb2RpYygpIj5pc0lzUGVyaW9kaWM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNzZXREZWFkbGluZShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0RGVhZGxpbmU8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3RGVhZGxpbmUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNzZXRJc1BlcmlvZGljKGJvb2xlYW4pIj5zZXRJc1BlcmlvZGljPC9BPjwvQj4oYm9vbGVhbiZuYnNwO25ld0lzUGVyaW9kaWMpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNzZXRQZXJpb2QoamF2YS5sYW5nLlN0cmluZykiPnNldFBlcmlvZDwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdQZXJpb2QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNzZXRQcmlvcml0eShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0UHJpb3JpdHk8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3UHJpb3JpdHkpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCNzZXRXY2V0KGphdmEubGFuZy5TdHJpbmcpIj5zZXRXY2V0PC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld1djZXQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCN0b1N0cmluZygpIj50b1N0cmluZzwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9DbGFzcygpIj5iYXNpY0dldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZUludGVybmFsQ29udGFpbmVyLCBlSW52b2tlLCBlSXNQcm94eSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURpcmVjdFJlc291cmNlLCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVByb3h5VVJJLCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVVUklGcmFnbWVudFNlZ21lbnQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkLCBlTm90aWZ5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVxdWFscywgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImlzSXNQZXJpb2RpYygpIj48IS0tIC0tPjwvQT48SDM+Citpc0lzUGVyaW9kaWM8L0gzPgorPFBSRT4KK3B1YmxpYyBib29sZWFuIDxCPmlzSXNQZXJpb2RpYzwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjaXNJc1BlcmlvZGljKCkiPmlzSXNQZXJpb2RpYzwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNvZnR3YXJlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPklzIFBlcmlvZGljPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXRJc1BlcmlvZGljKGJvb2xlYW4pIj48Q09ERT5Tb2Z0d2FyZS5zZXRJc1BlcmlvZGljKGJvb2xlYW4pPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U29mdHdhcmVfSXNQZXJpb2RpYygpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRTb2Z0d2FyZV9Jc1BlcmlvZGljKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0SXNQZXJpb2RpYyhib29sZWFuKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0SXNQZXJpb2RpYzwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0SXNQZXJpb2RpYzwvQj4oYm9vbGVhbiZuYnNwO25ld0lzUGVyaW9kaWMpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXRJc1BlcmlvZGljKGJvb2xlYW4pIj5zZXRJc1BlcmlvZGljPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U29mdHdhcmU8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3SXNQZXJpb2RpYzwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPklzIFBlcmlvZGljPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNpc0lzUGVyaW9kaWMoKSI+PENPREU+U29mdHdhcmUuaXNJc1BlcmlvZGljKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0UGVyaW9kKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFBlcmlvZDwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0UGVyaW9kPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXRQZXJpb2QoKSI+Z2V0UGVyaW9kPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U29mdHdhcmU8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgdmFsdWUgb2YgdGhlICc8ZW0+UGVyaW9kPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXRQZXJpb2QoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPlNvZnR3YXJlLnNldFBlcmlvZChTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U29mdHdhcmVfUGVyaW9kKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFNvZnR3YXJlX1BlcmlvZCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFBlcmlvZChqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0UGVyaW9kPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRQZXJpb2Q8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdQZXJpb2QpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXRQZXJpb2QoamF2YS5sYW5nLlN0cmluZykiPnNldFBlcmlvZDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNvZnR3YXJlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld1BlcmlvZDwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlBlcmlvZDwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjZ2V0UGVyaW9kKCkiPjxDT0RFPlNvZnR3YXJlLmdldFBlcmlvZCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFByaW9yaXR5KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFByaW9yaXR5PC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRQcmlvcml0eTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjZ2V0UHJpb3JpdHkoKSI+Z2V0UHJpb3JpdHk8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Tb2Z0d2FyZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5Qcmlvcml0eTwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjc2V0UHJpb3JpdHkoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPlNvZnR3YXJlLnNldFByaW9yaXR5KFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTb2Z0d2FyZV9Qcmlvcml0eSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRTb2Z0d2FyZV9Qcmlvcml0eSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFByaW9yaXR5KGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRQcmlvcml0eTwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0UHJpb3JpdHk8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdQcmlvcml0eSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI3NldFByaW9yaXR5KGphdmEubGFuZy5TdHJpbmcpIj5zZXRQcmlvcml0eTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNvZnR3YXJlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld1ByaW9yaXR5PC9DT0RFPiAtIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+UHJpb3JpdHk8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldFByaW9yaXR5KCkiPjxDT0RFPlNvZnR3YXJlLmdldFByaW9yaXR5KCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RGVhZGxpbmUoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0RGVhZGxpbmU8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldERlYWRsaW5lPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXREZWFkbGluZSgpIj5nZXREZWFkbGluZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNvZnR3YXJlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPkRlYWRsaW5lPC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNzZXREZWFkbGluZShqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+U29mdHdhcmUuc2V0RGVhZGxpbmUoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNvZnR3YXJlX0RlYWRsaW5lKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFNvZnR3YXJlX0RlYWRsaW5lKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0RGVhZGxpbmUoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldERlYWRsaW5lPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXREZWFkbGluZTwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld0RlYWRsaW5lKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjc2V0RGVhZGxpbmUoamF2YS5sYW5nLlN0cmluZykiPnNldERlYWRsaW5lPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U29mdHdhcmU8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3RGVhZGxpbmU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5EZWFkbGluZTwvZW0+JyBhdHRyaWJ1dGUuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjZ2V0RGVhZGxpbmUoKSI+PENPREU+U29mdHdhcmUuZ2V0RGVhZGxpbmUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXY2V0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFdjZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldFdjZXQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI2dldFdjZXQoKSI+Z2V0V2NldDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNvZnR3YXJlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHZhbHVlIG9mIHRoZSAnPGVtPldjZXQ8L2VtPicgYXR0cmlidXRlLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sI3NldFdjZXQoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPlNvZnR3YXJlLnNldFdjZXQoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFNvZnR3YXJlX1djZXQoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0U29mdHdhcmVfV2NldCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFdjZXQoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFdjZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldFdjZXQ8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdXY2V0KTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwjc2V0V2NldChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0V2NldDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNvZnR3YXJlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld1djZXQ8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5XY2V0PC9lbT4nIGF0dHJpYnV0ZS48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCNnZXRXY2V0KCkiPjxDT0RFPlNvZnR3YXJlLmdldFdjZXQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPjwhLS0gLS0+PC9BPjxIMz4KK2VHZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuT2JqZWN0IDxCPmVHZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbGVhbiZuYnNwO3Jlc29sdmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtjb3JlVHlwZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVHZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj5lR2V0PC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkPEREPjxDT0RFPnJlc29sdmU8L0NPREU+IC0gdGhlIHJlc29sdmU8REQ+PENPREU+Y29yZVR5cGU8L0NPREU+IC0gdGhlIGNvcmUgdHlwZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgb2JqZWN0PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VTZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmVTZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO25ld1ZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVNldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3lzdGVtSW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8REQ+PENPREU+bmV3VmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZVVuc2V0KGludCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VVbnNldDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+ZVVuc2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lVW5zZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZVVuc2V0KGludCkiPmVVbnNldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TeXN0ZW1JbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUlzU2V0KGludCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VJc1NldDwvSDM+Cis8UFJFPgorcHVibGljIGJvb2xlYW4gPEI+ZUlzU2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lSXNTZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZUlzU2V0KGludCkiPmVJc1NldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TeXN0ZW1JbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZAorPERUPjxCPlJldHVybnM6PC9CPjxERD50cnVlLCBpZiBzdWNjZXNzZnVsPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJ0b1N0cmluZygpIj48IS0tIC0tPjwvQT48SDM+Cit0b1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+dG9TdHJpbmc8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPnRvU3RyaW5nPC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU29mdHdhcmVJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGFpcnNJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNvZnR3YXJlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YWlyc0ltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhaXJzSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRmMzgzNDQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YWlyc0ltcGwuaHRtbApAQCAtMCwwICsxLDM1MiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI2IENFVCAyMDEyIC0tPgorPFRJVExFPgorU3RhaXJzSW1wbAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN0YWlyc0ltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlN0YWlyc0ltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU3RhaXJzSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhaXJzSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlN0YWlyc0ltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsT2JqZWN0SW1wbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIFN0YWlyc0ltcGw8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsCisgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsCisgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QaHlzaWNhbE9iamVjdEltcGw8L0E+CisgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3VyZmFjZUltcGw8L0E+CisgICAgICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Hcm91bmRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuR3JvdW5kSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TdGFpcnNJbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Hcm91bmQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3RhaXJzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+U3RhaXJzSW1wbDwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Hcm91bmRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+R3JvdW5kSW1wbDwvQT48RFQ+aW1wbGVtZW50cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdGFpcnM8L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlN0YWlyczwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgPHA+CisgPC9wPgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVBZGFwdGVyTGlzdCZsdDtFIGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCAmIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXImZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVPYnNlcnZhYmxlQWRhcHRlckxpc3Q8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QuRVN0b3JlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RUxBU1RfRU9CSkVDVF9GTEFHPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RU9QUE9TSVRFX0ZFQVRVUkVfQkFTRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QaHlzaWNhbE9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBoeXNpY2FsT2JqZWN0SW1wbDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNiYXNpY0dldEhhc1N1cmZhY2UoKSI+YmFzaWNHZXRIYXNTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj5lR2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZUlzU2V0KGludCkiPmVJc1NldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+ZVNldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sI2VVbnNldChpbnQpIj5lVW5zZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNnZXRFdmVsb3Zlc0luKCkiPmdldEV2ZWxvdmVzSW48L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNnZXRIYXNTdXJmYWNlKCkiPmdldEhhc1N1cmZhY2U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNzZXRIYXNTdXJmYWNlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlKSI+c2V0SGFzU3VyZmFjZTwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3lzdGVtSW1wbDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjYmFzaWNHZXRCYXNlX0NsYXNzKCkiPmJhc2ljR2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlQ2xhc3MsIGVDb250YWluZXJGZWF0dXJlSUQsIGVEZWxpdmVyLCBlSW50ZXJuYWxDb250YWluZXIsIGVJbnZva2UsIGVJc1Byb3h5LCBlU2V0Q2xhc3MsIGVTZXREZWxpdmVyLCBlU2V0UHJveHlVUkk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQmFzZVN0cnVjdHVyYWxGZWF0dXJlSUQsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXJGZWF0dXJlLCBlQmFzaWNTZXRDb250YWluZXIsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRhaW5zLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGlyZWN0UmVzb3VyY2UsIGVEeW5hbWljQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlRHluYW1pY0dldCwgZUR5bmFtaWNHZXQsIGVEeW5hbWljSW52ZXJzZUFkZCwgZUR5bmFtaWNJbnZlcnNlUmVtb3ZlLCBlRHluYW1pY0ludm9rZSwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1Vuc2V0LCBlRHluYW1pY1Vuc2V0LCBlR2V0LCBlR2V0LCBlR2V0LCBlSW50ZXJuYWxSZXNvdXJjZSwgZUludmVyc2VBZGQsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZVJlbW92ZSwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZU9iamVjdEZvclVSSUZyYWdtZW50U2VnbWVudCwgZU9wZW5HZXQsIGVPcGVuSXNTZXQsIGVPcGVuU2V0LCBlT3BlblVuc2V0LCBlUHJveHlVUkksIGVSZXNvbHZlUHJveHksIGVSZXNvdXJjZSwgZVNldCwgZVNldFJlc291cmNlLCBlU2V0U3RvcmUsIGVTZXR0aW5nLCBlU3RvcmUsIGVVbnNldCwgZVVSSUZyYWdtZW50U2VnbWVudCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbElzU2V0LCBlVmlydHVhbFNldCwgZVZpcnR1YWxVbnNldCwgdG9TdHJpbmc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkLCBlTm90aWZ5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVxdWFscywgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaHlzaWNhbE9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEV2ZWxvdmVzSW4oKSI+Z2V0RXZlbG92ZXNJbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI2dldEhhc1N1cmZhY2UoKSI+Z2V0SGFzU3VyZmFjZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sI3NldEhhc1N1cmZhY2Uob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN1cmZhY2UpIj5zZXRIYXNTdXJmYWNlPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUNsYXNzLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250ZW50cywgZUNyb3NzUmVmZXJlbmNlcywgZUdldCwgZUdldCwgZUludm9rZSwgZUlzUHJveHksIGVJc1NldCwgZVJlc291cmNlLCBlU2V0LCBlVW5zZXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlRGVsaXZlciwgZU5vdGlmeSwgZVNldERlbGl2ZXI8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9TdGFpcnNJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGFpcnNJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU3RhaXJzSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGh5c2ljYWxPYmplY3RJbXBsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhdGVJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzA0ODNlOQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhdGVJbXBsLmh0bWwKQEAgLTAsMCArMSw2MTcgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyNiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1N0YXRlSW1wbAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN0YXRlSW1wbCBjbGFzcyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iU3RhdGVJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1N0YXRlSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhaXJzSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhdGVJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU3RhdGVJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIFN0YXRlSW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN0YXRlSW1wbDwvQj4KKzwvUFJFPgorPERMPgorPERUPjxCPkFsbCBJbXBsZW1lbnRlZCBJbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdGF0ZTwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5TdGF0ZUltcGw8L0I+PERUPmV4dGVuZHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8RFQ+aW1wbGVtZW50cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YXRlPC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TdGF0ZTwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgPHA+CisgVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgPHVsPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5odG1sI2dldEJhc2VfU3RhdGUoKSI+PENPREU+PGVtPkJhc2UgU3RhdGU8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuaHRtbCNnZXRPcGVyYXRpb24oKSI+PENPREU+PGVtPk9wZXJhdGlvbjwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5odG1sI2dldEFyZ3VtZW50cygpIj48Q09ERT48ZW0+QXJndW1lbnRzPC9lbT48L0NPREU+PC9BPjwvbGk+CisgPC91bD4KKyA8L3A+Cis8UD4KKworPFA+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PSBORVNURUQgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0ibmVzdGVkX2NsYXNzX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5OZXN0ZWQgQ2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRUFkYXB0ZXJMaXN0Jmx0O0UgZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0ICYgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciZndDssIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRU9ic2VydmFibGVBZGFwdGVyTGlzdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdC5FU3RvcmU8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FTEFTVF9FT0JKRUNUX0ZMQUc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5GaWVsZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5FT1BQT1NJVEVfRkVBVFVSRV9CQVNFPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UudW1sMi51bWwuU3RhdGU8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhdGVJbXBsLmh0bWwjYmFzaWNHZXRCYXNlX1N0YXRlKCkiPmJhc2ljR2V0QmFzZV9TdGF0ZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuaHRtbCNiYXNpY0dldE9wZXJhdGlvbigpIj5iYXNpY0dldE9wZXJhdGlvbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLk9iamVjdDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPmVHZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgIGJvb2xlYW4mbmJzcDtyZXNvbHZlLAorICAgICBib29sZWFuJm5ic3A7Y29yZVR5cGUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2Jvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhdGVJbXBsLmh0bWwjZUlzU2V0KGludCkiPmVJc1NldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtuZXdWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3QmbHQ7b3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHkmZ3Q7PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5odG1sI2dldEFyZ3VtZW50cygpIj5nZXRBcmd1bWVudHM8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLnVtbDIudW1sLlN0YXRlPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5odG1sI2dldEJhc2VfU3RhdGUoKSI+Z2V0QmFzZV9TdGF0ZTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuaHRtbCNnZXRPcGVyYXRpb24oKSI+Z2V0T3BlcmF0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5odG1sI3NldEJhc2VfU3RhdGUob3JnLmVjbGlwc2UudW1sMi51bWwuU3RhdGUpIj5zZXRCYXNlX1N0YXRlPC9BPjwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuU3RhdGUmbmJzcDtuZXdCYXNlX1N0YXRlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5odG1sI3NldE9wZXJhdGlvbihvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtKSI+c2V0T3BlcmF0aW9uPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPiZuYnNwO25ld09wZXJhdGlvbik8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZUludGVybmFsQ29udGFpbmVyLCBlSW52b2tlLCBlSXNQcm94eSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURpcmVjdFJlc291cmNlLCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVByb3h5VVJJLCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVVUklGcmFnbWVudFNlZ21lbnQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQsIHRvU3RyaW5nPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0QmFzZV9TdGF0ZSgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRCYXNlX1N0YXRlPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UudW1sMi51bWwuU3RhdGUgPEI+Z2V0QmFzZV9TdGF0ZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sI2dldEJhc2VfU3RhdGUoKSI+Z2V0QmFzZV9TdGF0ZTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YXRlPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGJhc2VfIHN0YXRlPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwjc2V0QmFzZV9TdGF0ZShvcmcuZWNsaXBzZS51bWwyLnVtbC5TdGF0ZSkiPjxDT0RFPlN0YXRlLnNldEJhc2VfU3RhdGUob3JnLmVjbGlwc2UudW1sMi51bWwuU3RhdGUpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0U3RhdGVfQmFzZV9TdGF0ZSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRTdGF0ZV9CYXNlX1N0YXRlKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iYmFzaWNHZXRCYXNlX1N0YXRlKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2Jhc2ljR2V0QmFzZV9TdGF0ZTwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLnVtbDIudW1sLlN0YXRlIDxCPmJhc2ljR2V0QmFzZV9TdGF0ZTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBvcmcuZWNsaXBzZS51bWwyLnVtbC4gc3RhdGU8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldEJhc2VfU3RhdGUob3JnLmVjbGlwc2UudW1sMi51bWwuU3RhdGUpIj48IS0tIC0tPjwvQT48SDM+CitzZXRCYXNlX1N0YXRlPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRCYXNlX1N0YXRlPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5TdGF0ZSZuYnNwO25ld0Jhc2VfU3RhdGUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwjc2V0QmFzZV9TdGF0ZShvcmcuZWNsaXBzZS51bWwyLnVtbC5TdGF0ZSkiPnNldEJhc2VfU3RhdGU8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdGF0ZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdCYXNlX1N0YXRlPC9DT0RFPiAtIHRoZSBuZXcgYmFzZV8gc3RhdGU8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCNnZXRCYXNlX1N0YXRlKCkiPjxDT0RFPlN0YXRlLmdldEJhc2VfU3RhdGUoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRPcGVyYXRpb24oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0T3BlcmF0aW9uPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPiA8Qj5nZXRPcGVyYXRpb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCNnZXRPcGVyYXRpb24oKSI+Z2V0T3BlcmF0aW9uPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3RhdGU8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgb3BlcmF0aW9uPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwjc2V0T3BlcmF0aW9uKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0pIj48Q09ERT5TdGF0ZS5zZXRPcGVyYXRpb24oQWxnb3JpdGhtKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFN0YXRlX09wZXJhdGlvbigpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRTdGF0ZV9PcGVyYXRpb24oKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJiYXNpY0dldE9wZXJhdGlvbigpIj48IS0tIC0tPjwvQT48SDM+CitiYXNpY0dldE9wZXJhdGlvbjwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT4gPEI+YmFzaWNHZXRPcGVyYXRpb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgYWxnb3JpdGhtPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRPcGVyYXRpb24ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobSkiPjwhLS0gLS0+PC9BPjxIMz4KK3NldE9wZXJhdGlvbjwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0T3BlcmF0aW9uPC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG08L0E+Jm5ic3A7bmV3T3BlcmF0aW9uKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sI3NldE9wZXJhdGlvbihvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtKSI+c2V0T3BlcmF0aW9uPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3RhdGU8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3T3BlcmF0aW9uPC9DT0RFPiAtIHRoZSBuZXcgb3BlcmF0aW9uPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwjZ2V0T3BlcmF0aW9uKCkiPjxDT0RFPlN0YXRlLmdldE9wZXJhdGlvbigpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEFyZ3VtZW50cygpIj48IS0tIC0tPjwvQT48SDM+CitnZXRBcmd1bWVudHM8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3QmbHQ7b3JnLmVjbGlwc2UudW1sMi51bWwuUHJvcGVydHkmZ3Q7IDxCPmdldEFyZ3VtZW50czwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sI2dldEFyZ3VtZW50cygpIj5nZXRBcmd1bWVudHM8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdGF0ZTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBhcmd1bWVudHM8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTdGF0ZV9Bcmd1bWVudHMoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0U3RhdGVfQXJndW1lbnRzKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj48IS0tIC0tPjwvQT48SDM+CitlR2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLk9iamVjdCA8Qj5lR2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtyZXNvbHZlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sZWFuJm5ic3A7Y29yZVR5cGUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZUdldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmVHZXQ8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8REQ+PENPREU+cmVzb2x2ZTwvQ09ERT4gLSB0aGUgcmVzb2x2ZTxERD48Q09ERT5jb3JlVHlwZTwvQ09ERT4gLSB0aGUgY29yZSB0eXBlCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBvYmplY3Q8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgorZVNldDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+ZVNldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICAgICAgICAgICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7bmV3VmFsdWUpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVNldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmVTZXQ8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8REQ+PENPREU+bmV3VmFsdWU8L0NPREU+IC0gdGhlIG5ldyB2YWx1ZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZVVuc2V0KGludCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VVbnNldDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+ZVVuc2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+ZVVuc2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+ZVVuc2V0PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlSXNTZXQoaW50KSI+PCEtLSAtLT48L0E+PEgzPgorZUlzU2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgYm9vbGVhbiA8Qj5lSXNTZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lSXNTZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5lSXNTZXQ8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dHJ1ZSwgaWYgc3VjY2Vzc2Z1bDwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU3RhdGVJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGFpcnNJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTdGF0ZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdXJmYWNlSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdXJmYWNlSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZlNGNkMzgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N1cmZhY2VJbXBsLmh0bWwKQEAgLTAsMCArMSwzNTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyNiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1N1cmZhY2VJbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3VyZmFjZUltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlN1cmZhY2VJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1N1cmZhY2VJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3VyZmFjZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTdXJmYWNlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGh5c2ljYWxPYmplY3RJbXBsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9GT05UPgorPEJSPgorQ2xhc3MgU3VyZmFjZUltcGw8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsCisgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsCisgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QaHlzaWNhbE9iamVjdEltcGw8L0E+CisgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN1cmZhY2VJbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+RGlyZWN0IEtub3duIFN1YmNsYXNzZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR3JvdW5kSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkdyb3VuZEltcGw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XYXRlclN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2F0ZXJTdXJmYWNlSW1wbDwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5TdXJmYWNlSW1wbDwvQj48RFQ+ZXh0ZW5kcyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QaHlzaWNhbE9iamVjdEltcGw8L0E+PERUPmltcGxlbWVudHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlN1cmZhY2U8L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorIDxwPgorIDwvcD4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09IE5FU1RFRCBDTEFTUyBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk5lc3RlZCBDbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FQWRhcHRlckxpc3QmbHQ7RSBleHRlbmRzIGphdmEubGFuZy5PYmplY3QgJiBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyJmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FT2JzZXJ2YWJsZUFkYXB0ZXJMaXN0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LkVTdG9yZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVMQVNUX0VPQkpFQ1RfRkxBRzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVPUFBPU0lURV9GRUFUVVJFX0JBU0U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGh5c2ljYWxPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QaHlzaWNhbE9iamVjdEltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjYmFzaWNHZXRIYXNTdXJmYWNlKCkiPmJhc2ljR2V0SGFzU3VyZmFjZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZ2V0RXZlbG92ZXNJbigpIj5nZXRFdmVsb3Zlc0luPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZ2V0SGFzU3VyZmFjZSgpIj5nZXRIYXNTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjc2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPnNldEhhc1N1cmZhY2U8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9DbGFzcygpIj5iYXNpY0dldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZUludGVybmFsQ29udGFpbmVyLCBlSW52b2tlLCBlSXNQcm94eSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURpcmVjdFJlc291cmNlLCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVByb3h5VVJJLCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVVUklGcmFnbWVudFNlZ21lbnQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQsIHRvU3RyaW5nPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGh5c2ljYWxPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRFdmVsb3Zlc0luKCkiPmdldEV2ZWxvdmVzSW48L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRIYXNTdXJmYWNlKCkiPmdldEhhc1N1cmZhY2U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNzZXRIYXNTdXJmYWNlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlKSI+c2V0SGFzU3VyZmFjZTwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU3VyZmFjZUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdXJmYWNlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlN1cmZhY2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QaHlzaWNhbE9iamVjdEltcGwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg4MWQxM2YKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbApAQCAtMCwwICsxLDUxNCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI2IENFVCAyMDEyIC0tPgorPFRJVExFPgorU3lzdGVtSW1wbAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlN5c3RlbUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvU3lzdGVtSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIFN5c3RlbUltcGw8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsCisgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsCisgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsPC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9ERD4KKzwvREw+Cis8REw+Cis8RFQ+PEI+RGlyZWN0IEtub3duIFN1YmNsYXNzZXM6PC9CPiA8REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW52aXJvbm1lbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+RW52aXJvbm1lbnRJbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSGFyZHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+SGFyZHdhcmVJbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGh5c2ljYWxPYmplY3RJbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGxhdGZvcm1JbXBsPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU3lzdGVtSW1wbDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNvZnR3YXJlSW1wbDwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5TeXN0ZW1JbXBsPC9CPjxEVD5leHRlbmRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPERUPmltcGxlbWVudHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TeXN0ZW08L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorIDxwPgorIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorIDx1bD4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj48Q09ERT48ZW0+QmFzZSBDbGFzczwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVBZGFwdGVyTGlzdCZsdDtFIGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCAmIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXImZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVPYnNlcnZhYmxlQWRhcHRlckxpc3Q8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QuRVN0b3JlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RUxBU1RfRU9CSkVDVF9GTEFHPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RU9QUE9TSVRFX0ZFQVRVUkVfQkFTRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNiYXNpY0dldEJhc2VfQ2xhc3MoKSI+YmFzaWNHZXRCYXNlX0NsYXNzPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuT2JqZWN0PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPmVHZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgIGJvb2xlYW4mbmJzcDtyZXNvbHZlLAorICAgICBib29sZWFuJm5ic3A7Y29yZVR5cGUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2Jvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+ZVNldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO25ld1ZhbHVlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0I+KG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzJm5ic3A7bmV3QmFzZV9DbGFzcyk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZUludGVybmFsQ29udGFpbmVyLCBlSW52b2tlLCBlSXNQcm94eSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURpcmVjdFJlc291cmNlLCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVByb3h5VVJJLCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVVUklGcmFnbWVudFNlZ21lbnQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQsIHRvU3RyaW5nPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQ2xhc3MsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlR2V0LCBlR2V0LCBlSW52b2tlLCBlSXNQcm94eSwgZUlzU2V0LCBlUmVzb3VyY2UsIGVTZXQsIGVVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iZ2V0QmFzZV9DbGFzcygpIj48IS0tIC0tPjwvQT48SDM+CitnZXRCYXNlX0NsYXNzPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgPEI+Z2V0QmFzZV9DbGFzczwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGJhc2VfIGNsYXNzPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj48Q09ERT5TeXN0ZW0uc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRTeXN0ZW1fQmFzZV9DbGFzcygpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRTeXN0ZW1fQmFzZV9DbGFzcygpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImJhc2ljR2V0QmFzZV9DbGFzcygpIj48IS0tIC0tPjwvQT48SDM+CitiYXNpY0dldEJhc2VfQ2xhc3M8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyA8Qj5iYXNpY0dldEJhc2VfQ2xhc3M8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgb3JnLmVjbGlwc2UudW1sMi51bWwuIGNsYXNzPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0QmFzZV9DbGFzczwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0QmFzZV9DbGFzczwvQj4ob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MmbmJzcDtuZXdCYXNlX0NsYXNzKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCNzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKSI+c2V0QmFzZV9DbGFzczwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3QmFzZV9DbGFzczwvQ09ERT4gLSB0aGUgbmV3IGJhc2VfIGNsYXNzPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI2dldEJhc2VfQ2xhc3MoKSI+PENPREU+U3lzdGVtLmdldEJhc2VfQ2xhc3MoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPjwhLS0gLS0+PC9BPjxIMz4KK2VHZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuT2JqZWN0IDxCPmVHZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbGVhbiZuYnNwO3Jlc29sdmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtjb3JlVHlwZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lR2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+ZUdldDwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDxERD48Q09ERT5yZXNvbHZlPC9DT0RFPiAtIHRoZSByZXNvbHZlPEREPjxDT0RFPmNvcmVUeXBlPC9DT0RFPiAtIHRoZSBjb3JlIHR5cGUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG9iamVjdDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+CitlU2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5lU2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtuZXdWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lU2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+ZVNldDwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDxERD48Q09ERT5uZXdWYWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlVW5zZXQoaW50KSI+PCEtLSAtLT48L0E+PEgzPgorZVVuc2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5lVW5zZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lVW5zZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5lVW5zZXQ8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVJc1NldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlSXNTZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBib29sZWFuIDxCPmVJc1NldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVJc1NldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmVJc1NldDwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZAorPERUPjxCPlJldHVybnM6PC9CPjxERD50cnVlLCBpZiBzdWNjZXNzZnVsPC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9TeXN0ZW1JbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFlZWZiMjcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwKQEAgLTAsMCArMSw2NjkgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyNiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1RyYW5zaXRpb25JbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuVHJhbnNpdGlvbkltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlRyYW5zaXRpb25JbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1RyYW5zaXRpb25JbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XYXRlclN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iVHJhbnNpdGlvbkltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9GT05UPgorPEJSPgorQ2xhc3MgVHJhbnNpdGlvbkltcGw8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsCisgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsCisgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5UcmFuc2l0aW9uSW1wbDwvQj4KKzwvUFJFPgorPERMPgorPERUPjxCPkFsbCBJbXBsZW1lbnRlZCBJbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlRyYW5zaXRpb248L0E+PC9ERD4KKzwvREw+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+VHJhbnNpdGlvbkltcGw8L0I+PERUPmV4dGVuZHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGw8RFQ+aW1wbGVtZW50cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VHJhbnNpdGlvbjwvQT48L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+VHJhbnNpdGlvbjwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgPHA+CisgVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgPHVsPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwjZ2V0QmFzZV9UcmFuc2l0aW9uKCkiPjxDT0RFPjxlbT5CYXNlIFRyYW5zaXRpb248L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sI2dldEd1YXJkKCkiPjxDT0RFPjxlbT5HdWFyZDwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwjZ2V0RWZmZWN0KCkiPjxDT0RFPjxlbT5FZmZlY3Q8L2VtPjwvQ09ERT48L0E+PC9saT4KKyA8L3VsPgorIDwvcD4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09IE5FU1RFRCBDTEFTUyBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk5lc3RlZCBDbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FQWRhcHRlckxpc3QmbHQ7RSBleHRlbmRzIGphdmEubGFuZy5PYmplY3QgJiBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyJmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FT2JzZXJ2YWJsZUFkYXB0ZXJMaXN0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LkVTdG9yZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVMQVNUX0VPQkpFQ1RfRkxBRzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVPUFBPU0lURV9GRUFUVVJFX0JBU0U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS51bWwyLnVtbC5UcmFuc2l0aW9uPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwjYmFzaWNHZXRCYXNlX1RyYW5zaXRpb24oKSI+YmFzaWNHZXRCYXNlX1RyYW5zaXRpb248L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCNiYXNpY0dldEVmZmVjdCgpIj5iYXNpY0dldEVmZmVjdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sI2Jhc2ljR2V0R3VhcmQoKSI+YmFzaWNHZXRHdWFyZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLk9iamVjdDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgYm9vbGVhbiZuYnNwO3Jlc29sdmUsCisgICAgIGJvb2xlYW4mbmJzcDtjb3JlVHlwZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Ym9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtuZXdWYWx1ZSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sI2VVbnNldChpbnQpIj5lVW5zZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLnVtbDIudW1sLlRyYW5zaXRpb248L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCNnZXRCYXNlX1RyYW5zaXRpb24oKSI+Z2V0QmFzZV9UcmFuc2l0aW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG08L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwjZ2V0RWZmZWN0KCkiPmdldEVmZmVjdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sI2dldEd1YXJkKCkiPmdldEd1YXJkPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwjc2V0QmFzZV9UcmFuc2l0aW9uKG9yZy5lY2xpcHNlLnVtbDIudW1sLlRyYW5zaXRpb24pIj5zZXRCYXNlX1RyYW5zaXRpb248L0E+PC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5UcmFuc2l0aW9uJm5ic3A7bmV3QmFzZV9UcmFuc2l0aW9uKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwjc2V0RWZmZWN0KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0pIj5zZXRFZmZlY3Q8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG08L0E+Jm5ic3A7bmV3RWZmZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwjc2V0R3VhcmQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobSkiPnNldEd1YXJkPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPiZuYnNwO25ld0d1YXJkKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlQ2xhc3MsIGVDb250YWluZXJGZWF0dXJlSUQsIGVEZWxpdmVyLCBlSW50ZXJuYWxDb250YWluZXIsIGVJbnZva2UsIGVJc1Byb3h5LCBlU2V0Q2xhc3MsIGVTZXREZWxpdmVyLCBlU2V0UHJveHlVUkk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQmFzZVN0cnVjdHVyYWxGZWF0dXJlSUQsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXJGZWF0dXJlLCBlQmFzaWNTZXRDb250YWluZXIsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRhaW5zLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGlyZWN0UmVzb3VyY2UsIGVEeW5hbWljQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlRHluYW1pY0dldCwgZUR5bmFtaWNHZXQsIGVEeW5hbWljSW52ZXJzZUFkZCwgZUR5bmFtaWNJbnZlcnNlUmVtb3ZlLCBlRHluYW1pY0ludm9rZSwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1Vuc2V0LCBlRHluYW1pY1Vuc2V0LCBlR2V0LCBlR2V0LCBlR2V0LCBlSW50ZXJuYWxSZXNvdXJjZSwgZUludmVyc2VBZGQsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZVJlbW92ZSwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZU9iamVjdEZvclVSSUZyYWdtZW50U2VnbWVudCwgZU9wZW5HZXQsIGVPcGVuSXNTZXQsIGVPcGVuU2V0LCBlT3BlblVuc2V0LCBlUHJveHlVUkksIGVSZXNvbHZlUHJveHksIGVSZXNvdXJjZSwgZVNldCwgZVNldFJlc291cmNlLCBlU2V0U3RvcmUsIGVTZXR0aW5nLCBlU3RvcmUsIGVVbnNldCwgZVVSSUZyYWdtZW50U2VnbWVudCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbElzU2V0LCBlVmlydHVhbFNldCwgZVZpcnR1YWxVbnNldCwgdG9TdHJpbmc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZU5vdGlmaWNhdGlvblJlcXVpcmVkLCBlTm90aWZ5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVxdWFscywgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJnZXRCYXNlX1RyYW5zaXRpb24oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0QmFzZV9UcmFuc2l0aW9uPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UudW1sMi51bWwuVHJhbnNpdGlvbiA8Qj5nZXRCYXNlX1RyYW5zaXRpb248L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sI2dldEJhc2VfVHJhbnNpdGlvbigpIj5nZXRCYXNlX1RyYW5zaXRpb248L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlRyYW5zaXRpb248L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgYmFzZV8gdHJhbnNpdGlvbjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwjc2V0QmFzZV9UcmFuc2l0aW9uKG9yZy5lY2xpcHNlLnVtbDIudW1sLlRyYW5zaXRpb24pIj48Q09ERT5UcmFuc2l0aW9uLnNldEJhc2VfVHJhbnNpdGlvbihvcmcuZWNsaXBzZS51bWwyLnVtbC5UcmFuc2l0aW9uKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFRyYW5zaXRpb25fQmFzZV9UcmFuc2l0aW9uKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFRyYW5zaXRpb25fQmFzZV9UcmFuc2l0aW9uKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iYmFzaWNHZXRCYXNlX1RyYW5zaXRpb24oKSI+PCEtLSAtLT48L0E+PEgzPgorYmFzaWNHZXRCYXNlX1RyYW5zaXRpb248L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS51bWwyLnVtbC5UcmFuc2l0aW9uIDxCPmJhc2ljR2V0QmFzZV9UcmFuc2l0aW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG9yZy5lY2xpcHNlLnVtbDIudW1sLiB0cmFuc2l0aW9uPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRCYXNlX1RyYW5zaXRpb24ob3JnLmVjbGlwc2UudW1sMi51bWwuVHJhbnNpdGlvbikiPjwhLS0gLS0+PC9BPjxIMz4KK3NldEJhc2VfVHJhbnNpdGlvbjwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0QmFzZV9UcmFuc2l0aW9uPC9CPihvcmcuZWNsaXBzZS51bWwyLnVtbC5UcmFuc2l0aW9uJm5ic3A7bmV3QmFzZV9UcmFuc2l0aW9uKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwjc2V0QmFzZV9UcmFuc2l0aW9uKG9yZy5lY2xpcHNlLnVtbDIudW1sLlRyYW5zaXRpb24pIj5zZXRCYXNlX1RyYW5zaXRpb248L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlRyYW5zaXRpb248L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3QmFzZV9UcmFuc2l0aW9uPC9DT0RFPiAtIHRoZSBuZXcgYmFzZV8gdHJhbnNpdGlvbjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwjZ2V0QmFzZV9UcmFuc2l0aW9uKCkiPjxDT0RFPlRyYW5zaXRpb24uZ2V0QmFzZV9UcmFuc2l0aW9uKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0R3VhcmQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0R3VhcmQ8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG08L0E+IDxCPmdldEd1YXJkPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCNnZXRHdWFyZCgpIj5nZXRHdWFyZDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VHJhbnNpdGlvbjwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBndWFyZDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwjc2V0R3VhcmQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobSkiPjxDT0RFPlRyYW5zaXRpb24uc2V0R3VhcmQoQWxnb3JpdGhtKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFRyYW5zaXRpb25fR3VhcmQoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0VHJhbnNpdGlvbl9HdWFyZCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImJhc2ljR2V0R3VhcmQoKSI+PCEtLSAtLT48L0E+PEgzPgorYmFzaWNHZXRHdWFyZDwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT4gPEI+YmFzaWNHZXRHdWFyZDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBhbGdvcml0aG08L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldEd1YXJkKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0pIj48IS0tIC0tPjwvQT48SDM+CitzZXRHdWFyZDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0R3VhcmQ8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT4mbmJzcDtuZXdHdWFyZCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sI3NldEd1YXJkKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0pIj5zZXRHdWFyZDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VHJhbnNpdGlvbjwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdHdWFyZDwvQ09ERT4gLSB0aGUgbmV3IGd1YXJkPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCNnZXRHdWFyZCgpIj48Q09ERT5UcmFuc2l0aW9uLmdldEd1YXJkKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0RWZmZWN0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEVmZmVjdDwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT4gPEI+Z2V0RWZmZWN0PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCNnZXRFZmZlY3QoKSI+Z2V0RWZmZWN0PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5UcmFuc2l0aW9uPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIGVmZmVjdDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwjc2V0RWZmZWN0KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0pIj48Q09ERT5UcmFuc2l0aW9uLnNldEVmZmVjdChBbGdvcml0aG0pPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0VHJhbnNpdGlvbl9FZmZlY3QoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0VHJhbnNpdGlvbl9FZmZlY3QoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJiYXNpY0dldEVmZmVjdCgpIj48IS0tIC0tPjwvQT48SDM+CitiYXNpY0dldEVmZmVjdDwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT4gPEI+YmFzaWNHZXRFZmZlY3Q8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgYWxnb3JpdGhtPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRFZmZlY3Qob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobSkiPjwhLS0gLS0+PC9BPjxIMz4KK3NldEVmZmVjdDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0RWZmZWN0PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG08L0E+Jm5ic3A7bmV3RWZmZWN0KTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwjc2V0RWZmZWN0KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0pIj5zZXRFZmZlY3Q8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlRyYW5zaXRpb248L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3RWZmZWN0PC9DT0RFPiAtIHRoZSBuZXcgZWZmZWN0PERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCNnZXRFZmZlY3QoKSI+PENPREU+VHJhbnNpdGlvbi5nZXRFZmZlY3QoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlR2V0KGludCwgYm9vbGVhbiwgYm9vbGVhbikiPjwhLS0gLS0+PC9BPjxIMz4KK2VHZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuT2JqZWN0IDxCPmVHZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbGVhbiZuYnNwO3Jlc29sdmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtjb3JlVHlwZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lR2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+ZUdldDwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDxERD48Q09ERT5yZXNvbHZlPC9DT0RFPiAtIHRoZSByZXNvbHZlPEREPjxDT0RFPmNvcmVUeXBlPC9DT0RFPiAtIHRoZSBjb3JlIHR5cGUKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG9iamVjdDwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj48IS0tIC0tPjwvQT48SDM+CitlU2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5lU2V0PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQsCisgICAgICAgICAgICAgICAgIGphdmEubGFuZy5PYmplY3QmbmJzcDtuZXdWYWx1ZSk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lU2V0PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+ZVNldDwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZDxERD48Q09ERT5uZXdWYWx1ZTwvQ09ERT4gLSB0aGUgbmV3IHZhbHVlPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlVW5zZXQoaW50KSI+PCEtLSAtLT48L0E+PEgzPgorZVVuc2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5lVW5zZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lVW5zZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5lVW5zZXQ8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5mZWF0dXJlSUQ8L0NPREU+IC0gdGhlIGZlYXR1cmUgaWQ8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVJc1NldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlSXNTZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyBib29sZWFuIDxCPmVJc1NldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVJc1NldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmVJc1NldDwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZAorPERUPjxCPlJldHVybnM6PC9CPjxERD50cnVlLCBpZiBzdWNjZXNzZnVsPC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9UcmFuc2l0aW9uSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2F0ZXJTdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlRyYW5zaXRpb25JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2F0ZXJTdXJmYWNlSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XYXRlclN1cmZhY2VJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWQxZjFhMQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2F0ZXJTdXJmYWNlSW1wbC5odG1sCkBAIC0wLDAgKzEsMzUxIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjYgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitXYXRlclN1cmZhY2VJbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuV2F0ZXJTdXJmYWNlSW1wbCBjbGFzcyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iV2F0ZXJTdXJmYWNlSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9XYXRlclN1cmZhY2VJbXBsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1dhdGVyU3VyZmFjZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJXYXRlclN1cmZhY2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QaHlzaWNhbE9iamVjdEltcGwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0ZPTlQ+Cis8QlI+CitDbGFzcyBXYXRlclN1cmZhY2VJbXBsPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsCisgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbAorICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbAorICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGw8L0E+CisgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGh5c2ljYWxPYmplY3RJbXBsPC9BPgorICAgICAgICAgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN1cmZhY2VJbXBsPC9BPgorICAgICAgICAgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuV2F0ZXJTdXJmYWNlSW1wbDwvQj4KKzwvUFJFPgorPERMPgorPERUPjxCPkFsbCBJbXBsZW1lbnRlZCBJbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2F0ZXJTdXJmYWNlPC9BPjwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGNsYXNzIDxCPldhdGVyU3VyZmFjZUltcGw8L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TdXJmYWNlSW1wbDwvQT48RFQ+aW1wbGVtZW50cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XYXRlclN1cmZhY2U8L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPldhdGVyIFN1cmZhY2U8L2I+PC9lbT4nLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorIDxwPgorIDwvcD4KKzxQPgorCis8UD4KKzxIUj4KKworPFA+Cis8IS0tID09PT09PT09IE5FU1RFRCBDTEFTUyBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk5lc3RlZCBDbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FQWRhcHRlckxpc3QmbHQ7RSBleHRlbmRzIGphdmEubGFuZy5PYmplY3QgJiBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyJmd0Oywgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbC5FT2JzZXJ2YWJsZUFkYXB0ZXJMaXN0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0LkVTdG9yZTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVMQVNUX0VPQkpFQ1RfRkxBRzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPkVPUFBPU0lURV9GRUFUVVJFX0JBU0U8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGh5c2ljYWxPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QaHlzaWNhbE9iamVjdEltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjYmFzaWNHZXRIYXNTdXJmYWNlKCkiPmJhc2ljR2V0SGFzU3VyZmFjZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPmVTZXQ8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCNlVW5zZXQoaW50KSI+ZVVuc2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZ2V0RXZlbG92ZXNJbigpIj5nZXRFdmVsb3Zlc0luPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjZ2V0SGFzU3VyZmFjZSgpIj5nZXRIYXNTdXJmYWNlPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwjc2V0SGFzU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZSkiPnNldEhhc1N1cmZhY2U8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI2Jhc2ljR2V0QmFzZV9DbGFzcygpIj5iYXNpY0dldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZUNsYXNzLCBlQ29udGFpbmVyRmVhdHVyZUlELCBlRGVsaXZlciwgZUludGVybmFsQ29udGFpbmVyLCBlSW52b2tlLCBlSXNQcm94eSwgZVNldENsYXNzLCBlU2V0RGVsaXZlciwgZVNldFByb3h5VVJJPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuQmFzaWNFT2JqZWN0SW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBbGxDb250ZW50cywgZUJhc2VTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyRmVhdHVyZSwgZUJhc2ljU2V0Q29udGFpbmVyLCBlQ29udGFpbmVyLCBlQ29udGFpbmluZ0ZlYXR1cmUsIGVDb250YWlubWVudEZlYXR1cmUsIGVDb250YWlucywgZUNvbnRlbnRzLCBlQ3Jvc3NSZWZlcmVuY2VzLCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZE9wZXJhdGlvbklELCBlRGVyaXZlZFN0cnVjdHVyYWxGZWF0dXJlSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURpcmVjdFJlc291cmNlLCBlRHluYW1pY0Jhc2ljUmVtb3ZlRnJvbUNvbnRhaW5lciwgZUR5bmFtaWNHZXQsIGVEeW5hbWljR2V0LCBlRHluYW1pY0ludmVyc2VBZGQsIGVEeW5hbWljSW52ZXJzZVJlbW92ZSwgZUR5bmFtaWNJbnZva2UsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljSXNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1NldCwgZUR5bmFtaWNVbnNldCwgZUR5bmFtaWNVbnNldCwgZUdldCwgZUdldCwgZUdldCwgZUludGVybmFsUmVzb3VyY2UsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZUFkZCwgZUludmVyc2VSZW1vdmUsIGVJbnZlcnNlUmVtb3ZlLCBlSW52b2tlLCBlSXNTZXQsIGVPYmplY3RGb3JVUklGcmFnbWVudFNlZ21lbnQsIGVPcGVuR2V0LCBlT3BlbklzU2V0LCBlT3BlblNldCwgZU9wZW5VbnNldCwgZVByb3h5VVJJLCBlUmVzb2x2ZVByb3h5LCBlUmVzb3VyY2UsIGVTZXQsIGVTZXRSZXNvdXJjZSwgZVNldFN0b3JlLCBlU2V0dGluZywgZVN0b3JlLCBlVW5zZXQsIGVVUklGcmFnbWVudFNlZ21lbnQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbEdldCwgZVZpcnR1YWxJc1NldCwgZVZpcnR1YWxTZXQsIGVWaXJ0dWFsVW5zZXQsIHRvU3RyaW5nPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVOb3RpZmljYXRpb25SZXF1aXJlZCwgZU5vdGlmeTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGh5c2ljYWxPYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRFdmVsb3Zlc0luKCkiPmdldEV2ZWxvdmVzSW48L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNnZXRIYXNTdXJmYWNlKCkiPmdldEhhc1N1cmZhY2U8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCNzZXRIYXNTdXJmYWNlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlKSI+c2V0SGFzU3VyZmFjZTwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvV2F0ZXJTdXJmYWNlSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XYXRlclN1cmZhY2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iV2F0ZXJTdXJmYWNlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIj5ORVNURUQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGh5c2ljYWxPYmplY3RJbXBsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDtNRVRIT0Q8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzkzY2E5OAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwKQEAgLTAsMCArMSwxMzQ1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjYgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitXaGVlbFN5c3RlbUltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5XaGVlbFN5c3RlbUltcGwgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IldoZWVsU3lzdGVtSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9XaGVlbFN5c3RlbUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1dhdGVyU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwO05FWFQgQ0xBU1M8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvRk9OVD4KKzxCUj4KK0NsYXNzIFdoZWVsU3lzdGVtSW1wbDwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbAorICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwKKyAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsPC9BPgorICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RpY1N5c3RlbUltcGw8L0E+CisgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FjdHVhdG9yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkFjdHVhdG9yU3lzdGVtSW1wbDwvQT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLldoZWVsU3lzdGVtSW1wbDwvQj4KKzwvUFJFPgorPERMPgorPERUPjxCPkFsbCBJbXBsZW1lbnRlZCBJbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdG9yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BY3R1YXRvclN5c3RlbTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT48L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5XaGVlbFN5c3RlbUltcGw8L0I+PERUPmV4dGVuZHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWN0dWF0b3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWN0dWF0b3JTeXN0ZW1JbXBsPC9BPjxEVD5pbXBsZW1lbnRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPldoZWVsIFN5c3RlbTwvYj48L2VtPicuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgPHA+CisgVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgPHVsPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI2dldFdoZWVsUmFkaXVzKCkiPjxDT0RFPjxlbT5XaGVlbCBSYWRpdXM8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNnZXRXaGVlbFdpZHRoKCkiPjxDT0RFPjxlbT5XaGVlbCBXaWR0aDwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI2dldFN1c3BlbnNpb25SZXN0TGVuZ3RoKCkiPjxDT0RFPjxlbT5TdXNwZW5zaW9uIFJlc3QgTGVuZ3RoPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjZ2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0KCkiPjxDT0RFPjxlbT5XaGVlbCBDb25uZWN0aW9uIEhlaWdodDwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI2dldFR5cGVPZldoZWVsKCkiPjxDT0RFPjxlbT5UeXBlIE9mIFdoZWVsPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRGtwKCkiPjxDT0RFPjxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEa3A8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEa2koKSI+PENPREU+PGVtPldoZWVsIFZlbG9jaXR5IFBJIERraTwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURrZCgpIj48Q09ERT48ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtkPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjZ2V0V2hlZWxTdGVlcmluZ1BJRGtwKCkiPjxDT0RFPjxlbT5XaGVlbCBTdGVlcmluZyBQSSBEa3A8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNnZXRXaGVlbFN0ZWVyaW5nUElEa2QoKSI+PENPREU+PGVtPldoZWVsIFN0ZWVyaW5nIFBJIERrZDwvZW0+PC9DT0RFPjwvQT48L2xpPgorICAgPGxpPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI2dldFdoZWVsRnJpY3Rpb24oKSI+PENPREU+PGVtPldoZWVsIEZyaWN0aW9uPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjZ2V0U3VzcGVuc2lvblN0aWZmbmVzcygpIj48Q09ERT48ZW0+U3VzcGVuc2lvbiBTdGlmZm5lc3M8L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNnZXRTdXNwZW5zaW9uRGFtcGluZygpIj48Q09ERT48ZW0+U3VzcGVuc2lvbiBEYW1waW5nPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjZ2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uKCkiPjxDT0RFPjxlbT5TdXNwZW5zaW9uIENvbXByZXNzaW9uPC9lbT48L0NPREU+PC9BPjwvbGk+CisgICA8bGk+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bSgpIj48Q09ERT48ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRG1heCBTdW08L2VtPjwvQ09ERT48L0E+PC9saT4KKyAgIDxsaT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEbWF4VmFsKCkiPjxDT0RFPjxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEbWF4IFZhbDwvZW0+PC9DT0RFPjwvQT48L2xpPgorIDwvdWw+CisgPC9wPgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc19zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TmVzdGVkIENsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVBZGFwdGVyTGlzdCZsdDtFIGV4dGVuZHMgamF2YS5sYW5nLk9iamVjdCAmIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXImZ3Q7LCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsLkVPYnNlcnZhYmxlQWRhcHRlckxpc3Q8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TmVzdGVkIGNsYXNzZXMvaW50ZXJmYWNlcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QuRVN0b3JlPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09PSBGSUVMRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RmllbGQgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RUxBU1RfRU9CSkVDVF9GTEFHPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+RU9QUE9TSVRFX0ZFQVRVUkVfQkFTRTwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5PYmplY3Q8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjZUdldChpbnQsIGJvb2xlYW4sIGJvb2xlYW4pIj5lR2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICBib29sZWFuJm5ic3A7cmVzb2x2ZSwKKyAgICAgYm9vbGVhbiZuYnNwO2NvcmVUeXBlKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtib29sZWFuPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+PC9CPihpbnQmbmJzcDtmZWF0dXJlSUQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjZVNldChpbnQsIGphdmEubGFuZy5PYmplY3QpIj5lU2V0PC9BPjwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICBqYXZhLmxhbmcuT2JqZWN0Jm5ic3A7bmV3VmFsdWUpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjZVVuc2V0KGludCkiPmVVbnNldDwvQT48L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNnZXRTdXNwZW5zaW9uQ29tcHJlc3Npb24oKSI+Z2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI2dldFN1c3BlbnNpb25EYW1waW5nKCkiPmdldFN1c3BlbnNpb25EYW1waW5nPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI2dldFN1c3BlbnNpb25SZXN0TGVuZ3RoKCkiPmdldFN1c3BlbnNpb25SZXN0TGVuZ3RoPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI2dldFN1c3BlbnNpb25TdGlmZm5lc3MoKSI+Z2V0U3VzcGVuc2lvblN0aWZmbmVzczwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNnZXRUeXBlT2ZXaGVlbCgpIj5nZXRUeXBlT2ZXaGVlbDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNnZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQoKSI+Z2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI2dldFdoZWVsRnJpY3Rpb24oKSI+Z2V0V2hlZWxGcmljdGlvbjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNnZXRXaGVlbFJhZGl1cygpIj5nZXRXaGVlbFJhZGl1czwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNnZXRXaGVlbFN0ZWVyaW5nUElEa2QoKSI+Z2V0V2hlZWxTdGVlcmluZ1BJRGtkPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI2dldFdoZWVsU3RlZXJpbmdQSURrcCgpIj5nZXRXaGVlbFN0ZWVyaW5nUElEa3A8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRGtkKCkiPmdldFdoZWVsVmVsb2NpdHlQSURrZDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEa2koKSI+Z2V0V2hlZWxWZWxvY2l0eVBJRGtpPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURrcCgpIj5nZXRXaGVlbFZlbG9jaXR5UElEa3A8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bSgpIj5nZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURtYXhWYWwoKSI+Z2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNnZXRXaGVlbFdpZHRoKCkiPmdldFdoZWVsV2lkdGg8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjc2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRTdXNwZW5zaW9uQ29tcHJlc3Npb248L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3U3VzcGVuc2lvbkNvbXByZXNzaW9uKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI3NldFN1c3BlbnNpb25EYW1waW5nKGphdmEubGFuZy5TdHJpbmcpIj5zZXRTdXNwZW5zaW9uRGFtcGluZzwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdTdXNwZW5zaW9uRGFtcGluZyk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNzZXRTdXNwZW5zaW9uUmVzdExlbmd0aChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0U3VzcGVuc2lvblJlc3RMZW5ndGg8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3U3VzcGVuc2lvblJlc3RMZW5ndGgpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjc2V0U3VzcGVuc2lvblN0aWZmbmVzcyhqYXZhLmxhbmcuU3RyaW5nKSI+c2V0U3VzcGVuc2lvblN0aWZmbmVzczwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdTdXNwZW5zaW9uU3RpZmZuZXNzKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI3NldFR5cGVPZldoZWVsKGphdmEubGFuZy5TdHJpbmcpIj5zZXRUeXBlT2ZXaGVlbDwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdUeXBlT2ZXaGVlbCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNzZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQoamF2YS5sYW5nLlN0cmluZykiPnNldFdoZWVsQ29ubmVjdGlvbkhlaWdodDwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdXaGVlbENvbm5lY3Rpb25IZWlnaHQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjc2V0V2hlZWxGcmljdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0V2hlZWxGcmljdGlvbjwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdXaGVlbEZyaWN0aW9uKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI3NldFdoZWVsUmFkaXVzKGphdmEubGFuZy5TdHJpbmcpIj5zZXRXaGVlbFJhZGl1czwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdXaGVlbFJhZGl1cyk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNzZXRXaGVlbFN0ZWVyaW5nUElEa2QoamF2YS5sYW5nLlN0cmluZykiPnNldFdoZWVsU3RlZXJpbmdQSURrZDwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdXaGVlbFN0ZWVyaW5nUElEa2QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjc2V0V2hlZWxTdGVlcmluZ1BJRGtwKGphdmEubGFuZy5TdHJpbmcpIj5zZXRXaGVlbFN0ZWVyaW5nUElEa3A8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3V2hlZWxTdGVlcmluZ1BJRGtwKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI3NldFdoZWVsVmVsb2NpdHlQSURrZChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0V2hlZWxWZWxvY2l0eVBJRGtkPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld1doZWVsVmVsb2NpdHlQSURrZCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNzZXRXaGVlbFZlbG9jaXR5UElEa2koamF2YS5sYW5nLlN0cmluZykiPnNldFdoZWVsVmVsb2NpdHlQSURraTwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdXaGVlbFZlbG9jaXR5UElEa2kpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjc2V0V2hlZWxWZWxvY2l0eVBJRGtwKGphdmEubGFuZy5TdHJpbmcpIj5zZXRXaGVlbFZlbG9jaXR5UElEa3A8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3V2hlZWxWZWxvY2l0eVBJRGtwKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI3NldFdoZWVsVmVsb2NpdHlQSURtYXhTdW0oamF2YS5sYW5nLlN0cmluZykiPnNldFdoZWVsVmVsb2NpdHlQSURtYXhTdW08L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3V2hlZWxWZWxvY2l0eVBJRG1heFN1bSk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCNzZXRXaGVlbFZlbG9jaXR5UElEbWF4VmFsKGphdmEubGFuZy5TdHJpbmcpIj5zZXRXaGVlbFZlbG9jaXR5UElEbWF4VmFsPC9BPjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld1doZWVsVmVsb2NpdHlQSURtYXhWYWwpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwjc2V0V2hlZWxXaWR0aChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0V2hlZWxXaWR0aDwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdXaGVlbFdpZHRoKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sI3RvU3RyaW5nKCkiPnRvU3RyaW5nPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RpY1N5c3RlbUltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY1N5c3RlbUltcGw8L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCNnZXRMb2NhbE9yaWVudGF0aW9uKCkiPmdldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI2dldExvY2FsUG9zaXRpb24oKSI+Z2V0TG9jYWxQb3NpdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjc2V0TG9jYWxPcmllbnRhdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxPcmllbnRhdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjc2V0TG9jYWxQb3NpdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxQb3NpdGlvbjwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3lzdGVtSW1wbDwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjYmFzaWNHZXRCYXNlX0NsYXNzKCkiPmJhc2ljR2V0QmFzZV9DbGFzczwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCNnZXRCYXNlX0NsYXNzKCkiPmdldEJhc2VfQ2xhc3M8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykiPnNldEJhc2VfQ2xhc3M8L0E+PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFkYXB0ZXJzLCBlQ2xhc3MsIGVDb250YWluZXJGZWF0dXJlSUQsIGVEZWxpdmVyLCBlSW50ZXJuYWxDb250YWluZXIsIGVJbnZva2UsIGVJc1Byb3h5LCBlU2V0Q2xhc3MsIGVTZXREZWxpdmVyLCBlU2V0UHJveHlVUkk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZUFsbENvbnRlbnRzLCBlQmFzZVN0cnVjdHVyYWxGZWF0dXJlSUQsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXIsIGVCYXNpY1JlbW92ZUZyb21Db250YWluZXJGZWF0dXJlLCBlQmFzaWNTZXRDb250YWluZXIsIGVDb250YWluZXIsIGVDb250YWluaW5nRmVhdHVyZSwgZUNvbnRhaW5tZW50RmVhdHVyZSwgZUNvbnRhaW5zLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkT3BlcmF0aW9uSUQsIGVEZXJpdmVkU3RydWN0dXJhbEZlYXR1cmVJRCwgZURlcml2ZWRTdHJ1Y3R1cmFsRmVhdHVyZUlELCBlRGlyZWN0UmVzb3VyY2UsIGVEeW5hbWljQmFzaWNSZW1vdmVGcm9tQ29udGFpbmVyLCBlRHluYW1pY0dldCwgZUR5bmFtaWNHZXQsIGVEeW5hbWljSW52ZXJzZUFkZCwgZUR5bmFtaWNJbnZlcnNlUmVtb3ZlLCBlRHluYW1pY0ludm9rZSwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNJc1NldCwgZUR5bmFtaWNTZXQsIGVEeW5hbWljU2V0LCBlRHluYW1pY1Vuc2V0LCBlRHluYW1pY1Vuc2V0LCBlR2V0LCBlR2V0LCBlR2V0LCBlSW50ZXJuYWxSZXNvdXJjZSwgZUludmVyc2VBZGQsIGVJbnZlcnNlQWRkLCBlSW52ZXJzZVJlbW92ZSwgZUludmVyc2VSZW1vdmUsIGVJbnZva2UsIGVJc1NldCwgZU9iamVjdEZvclVSSUZyYWdtZW50U2VnbWVudCwgZU9wZW5HZXQsIGVPcGVuSXNTZXQsIGVPcGVuU2V0LCBlT3BlblVuc2V0LCBlUHJveHlVUkksIGVSZXNvbHZlUHJveHksIGVSZXNvdXJjZSwgZVNldCwgZVNldFJlc291cmNlLCBlU2V0U3RvcmUsIGVTZXR0aW5nLCBlU3RvcmUsIGVVbnNldCwgZVVSSUZyYWdtZW50U2VnbWVudCwgZVZpcnR1YWxHZXQsIGVWaXJ0dWFsR2V0LCBlVmlydHVhbElzU2V0LCBlVmlydHVhbFNldCwgZVZpcnR1YWxVbnNldDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQsIGVOb3RpZnk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB3YWl0LCB3YWl0LCB3YWl0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTeXN0ZW0iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTeXN0ZW08L0E+PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCNnZXRMb2NhbE9yaWVudGF0aW9uKCkiPmdldExvY2FsT3JpZW50YXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sI2dldExvY2FsUG9zaXRpb24oKSI+Z2V0TG9jYWxQb3NpdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjc2V0TG9jYWxPcmllbnRhdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxPcmllbnRhdGlvbjwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwjc2V0TG9jYWxQb3NpdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0TG9jYWxQb3NpdGlvbjwvQT48L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwjZ2V0QmFzZV9DbGFzcygpIj5nZXRCYXNlX0NsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpIj5zZXRCYXNlX0NsYXNzPC9BPjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWxsQ29udGVudHMsIGVDbGFzcywgZUNvbnRhaW5lciwgZUNvbnRhaW5pbmdGZWF0dXJlLCBlQ29udGFpbm1lbnRGZWF0dXJlLCBlQ29udGVudHMsIGVDcm9zc1JlZmVyZW5jZXMsIGVHZXQsIGVHZXQsIGVJbnZva2UsIGVJc1Byb3h5LCBlSXNTZXQsIGVSZXNvdXJjZSwgZVNldCwgZVVuc2V0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVBZGFwdGVycywgZURlbGl2ZXIsIGVOb3RpZnksIGVTZXREZWxpdmVyPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gaW50ZXJmYWNlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJnZXRXaGVlbFJhZGl1cygpIj48IS0tIC0tPjwvQT48SDM+CitnZXRXaGVlbFJhZGl1czwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0V2hlZWxSYWRpdXM8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFJhZGl1cygpIj5nZXRXaGVlbFJhZGl1czwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHdoZWVsIHJhZGl1czxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI3NldFdoZWVsUmFkaXVzKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5XaGVlbFN5c3RlbS5zZXRXaGVlbFJhZGl1cyhTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxSYWRpdXMoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0V2hlZWxTeXN0ZW1fV2hlZWxSYWRpdXMoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRXaGVlbFJhZGl1cyhqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0V2hlZWxSYWRpdXM8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldFdoZWVsUmFkaXVzPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3V2hlZWxSYWRpdXMpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0V2hlZWxSYWRpdXMoamF2YS5sYW5nLlN0cmluZykiPnNldFdoZWVsUmFkaXVzPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3V2hlZWxSYWRpdXM8L0NPREU+IC0gdGhlIG5ldyB3aGVlbCByYWRpdXM8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFJhZGl1cygpIj48Q09ERT5XaGVlbFN5c3RlbS5nZXRXaGVlbFJhZGl1cygpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFdoZWVsV2lkdGgoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2hlZWxXaWR0aDwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0V2hlZWxXaWR0aDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsV2lkdGgoKSI+Z2V0V2hlZWxXaWR0aDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHdoZWVsIHdpZHRoPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0V2hlZWxXaWR0aChqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+V2hlZWxTeXN0ZW0uc2V0V2hlZWxXaWR0aChTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxXaWR0aCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRXaGVlbFN5c3RlbV9XaGVlbFdpZHRoKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0V2hlZWxXaWR0aChqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0V2hlZWxXaWR0aDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0V2hlZWxXaWR0aDwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld1doZWVsV2lkdGgpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0V2hlZWxXaWR0aChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0V2hlZWxXaWR0aDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld1doZWVsV2lkdGg8L0NPREU+IC0gdGhlIG5ldyB3aGVlbCB3aWR0aDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsV2lkdGgoKSI+PENPREU+V2hlZWxTeXN0ZW0uZ2V0V2hlZWxXaWR0aCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFN1c3BlbnNpb25SZXN0TGVuZ3RoKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFN1c3BlbnNpb25SZXN0TGVuZ3RoPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRTdXNwZW5zaW9uUmVzdExlbmd0aDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25SZXN0TGVuZ3RoKCkiPmdldFN1c3BlbnNpb25SZXN0TGVuZ3RoPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3VzcGVuc2lvbiByZXN0IGxlbmd0aDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI3NldFN1c3BlbnNpb25SZXN0TGVuZ3RoKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5XaGVlbFN5c3RlbS5zZXRTdXNwZW5zaW9uUmVzdExlbmd0aChTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvblJlc3RMZW5ndGgoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvblJlc3RMZW5ndGgoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRTdXNwZW5zaW9uUmVzdExlbmd0aChqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0U3VzcGVuc2lvblJlc3RMZW5ndGg8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldFN1c3BlbnNpb25SZXN0TGVuZ3RoPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3U3VzcGVuc2lvblJlc3RMZW5ndGgpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0U3VzcGVuc2lvblJlc3RMZW5ndGgoamF2YS5sYW5nLlN0cmluZykiPnNldFN1c3BlbnNpb25SZXN0TGVuZ3RoPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3U3VzcGVuc2lvblJlc3RMZW5ndGg8L0NPREU+IC0gdGhlIG5ldyBzdXNwZW5zaW9uIHJlc3QgbGVuZ3RoPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0U3VzcGVuc2lvblJlc3RMZW5ndGgoKSI+PENPREU+V2hlZWxTeXN0ZW0uZ2V0U3VzcGVuc2lvblJlc3RMZW5ndGgoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0PC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQoKSI+Z2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0PC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgd2hlZWwgY29ubmVjdGlvbiBoZWlnaHQ8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPldoZWVsU3lzdGVtLnNldFdoZWVsQ29ubmVjdGlvbkhlaWdodChTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxDb25uZWN0aW9uSGVpZ2h0KCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFdoZWVsU3lzdGVtX1doZWVsQ29ubmVjdGlvbkhlaWdodCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFdoZWVsQ29ubmVjdGlvbkhlaWdodChqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQ8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdXaGVlbENvbm5lY3Rpb25IZWlnaHQpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0KGphdmEubGFuZy5TdHJpbmcpIj5zZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQ8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdXaGVlbENvbm5lY3Rpb25IZWlnaHQ8L0NPREU+IC0gdGhlIG5ldyB3aGVlbCBjb25uZWN0aW9uIGhlaWdodDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsQ29ubmVjdGlvbkhlaWdodCgpIj48Q09ERT5XaGVlbFN5c3RlbS5nZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRUeXBlT2ZXaGVlbCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRUeXBlT2ZXaGVlbDwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0VHlwZU9mV2hlZWw8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRUeXBlT2ZXaGVlbCgpIj5nZXRUeXBlT2ZXaGVlbDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHR5cGUgb2Ygd2hlZWw8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRUeXBlT2ZXaGVlbChqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+V2hlZWxTeXN0ZW0uc2V0VHlwZU9mV2hlZWwoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1R5cGVPZldoZWVsKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFdoZWVsU3lzdGVtX1R5cGVPZldoZWVsKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0VHlwZU9mV2hlZWwoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFR5cGVPZldoZWVsPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRUeXBlT2ZXaGVlbDwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld1R5cGVPZldoZWVsKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI3NldFR5cGVPZldoZWVsKGphdmEubGFuZy5TdHJpbmcpIj5zZXRUeXBlT2ZXaGVlbDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld1R5cGVPZldoZWVsPC9DT0RFPiAtIHRoZSBuZXcgdHlwZSBvZiB3aGVlbDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFR5cGVPZldoZWVsKCkiPjxDT0RFPldoZWVsU3lzdGVtLmdldFR5cGVPZldoZWVsKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V2hlZWxWZWxvY2l0eVBJRGtwKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFdoZWVsVmVsb2NpdHlQSURrcDwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0V2hlZWxWZWxvY2l0eVBJRGtwPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRGtwKCkiPmdldFdoZWVsVmVsb2NpdHlQSURrcDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHdoZWVsIHZlbG9jaXR5IHBpIGRrcDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI3NldFdoZWVsVmVsb2NpdHlQSURrcChqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+V2hlZWxTeXN0ZW0uc2V0V2hlZWxWZWxvY2l0eVBJRGtwKFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEa3AoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtwKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0V2hlZWxWZWxvY2l0eVBJRGtwKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRXaGVlbFZlbG9jaXR5UElEa3A8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldFdoZWVsVmVsb2NpdHlQSURrcDwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld1doZWVsVmVsb2NpdHlQSURrcCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRXaGVlbFZlbG9jaXR5UElEa3AoamF2YS5sYW5nLlN0cmluZykiPnNldFdoZWVsVmVsb2NpdHlQSURrcDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld1doZWVsVmVsb2NpdHlQSURrcDwvQ09ERT4gLSB0aGUgbmV3IHdoZWVsIHZlbG9jaXR5IHBpIGRrcDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURrcCgpIj48Q09ERT5XaGVlbFN5c3RlbS5nZXRXaGVlbFZlbG9jaXR5UElEa3AoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXaGVlbFZlbG9jaXR5UElEa2koKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2hlZWxWZWxvY2l0eVBJRGtpPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRXaGVlbFZlbG9jaXR5UElEa2k8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEa2koKSI+Z2V0V2hlZWxWZWxvY2l0eVBJRGtpPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgd2hlZWwgdmVsb2NpdHkgcGkgZGtpPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0V2hlZWxWZWxvY2l0eVBJRGtpKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5XaGVlbFN5c3RlbS5zZXRXaGVlbFZlbG9jaXR5UElEa2koU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURraSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEa2koKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRXaGVlbFZlbG9jaXR5UElEa2koamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFdoZWVsVmVsb2NpdHlQSURraTwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0V2hlZWxWZWxvY2l0eVBJRGtpPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3V2hlZWxWZWxvY2l0eVBJRGtpKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI3NldFdoZWVsVmVsb2NpdHlQSURraShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0V2hlZWxWZWxvY2l0eVBJRGtpPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3V2hlZWxWZWxvY2l0eVBJRGtpPC9DT0RFPiAtIHRoZSBuZXcgd2hlZWwgdmVsb2NpdHkgcGkgZGtpPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxWZWxvY2l0eVBJRGtpKCkiPjxDT0RFPldoZWVsU3lzdGVtLmdldFdoZWVsVmVsb2NpdHlQSURraSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFdoZWVsVmVsb2NpdHlQSURrZCgpIj48IS0tIC0tPjwvQT48SDM+CitnZXRXaGVlbFZlbG9jaXR5UElEa2Q8L0gzPgorPFBSRT4KK3B1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPmdldFdoZWVsVmVsb2NpdHlQSURrZDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURrZCgpIj5nZXRXaGVlbFZlbG9jaXR5UElEa2Q8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSB3aGVlbCB2ZWxvY2l0eSBwaSBka2Q8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRXaGVlbFZlbG9jaXR5UElEa2QoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPldoZWVsU3lzdGVtLnNldFdoZWVsVmVsb2NpdHlQSURrZChTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtkKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURrZCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFdoZWVsVmVsb2NpdHlQSURrZChqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0V2hlZWxWZWxvY2l0eVBJRGtkPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRXaGVlbFZlbG9jaXR5UElEa2Q8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdXaGVlbFZlbG9jaXR5UElEa2QpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0V2hlZWxWZWxvY2l0eVBJRGtkKGphdmEubGFuZy5TdHJpbmcpIj5zZXRXaGVlbFZlbG9jaXR5UElEa2Q8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdXaGVlbFZlbG9jaXR5UElEa2Q8L0NPREU+IC0gdGhlIG5ldyB3aGVlbCB2ZWxvY2l0eSBwaSBka2Q8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFZlbG9jaXR5UElEa2QoKSI+PENPREU+V2hlZWxTeXN0ZW0uZ2V0V2hlZWxWZWxvY2l0eVBJRGtkKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0V2hlZWxTdGVlcmluZ1BJRGtwKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFdoZWVsU3RlZXJpbmdQSURrcDwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0V2hlZWxTdGVlcmluZ1BJRGtwPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxTdGVlcmluZ1BJRGtwKCkiPmdldFdoZWVsU3RlZXJpbmdQSURrcDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHdoZWVsIHN0ZWVyaW5nIHBpIGRrcDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI3NldFdoZWVsU3RlZXJpbmdQSURrcChqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+V2hlZWxTeXN0ZW0uc2V0V2hlZWxTdGVlcmluZ1BJRGtwKFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRXaGVlbFN5c3RlbV9XaGVlbFN0ZWVyaW5nUElEa3AoKSI+PENPREU+Um9ib3RNTFBhY2thZ2UuZ2V0V2hlZWxTeXN0ZW1fV2hlZWxTdGVlcmluZ1BJRGtwKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0V2hlZWxTdGVlcmluZ1BJRGtwKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRXaGVlbFN0ZWVyaW5nUElEa3A8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPnNldFdoZWVsU3RlZXJpbmdQSURrcDwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld1doZWVsU3RlZXJpbmdQSURrcCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRXaGVlbFN0ZWVyaW5nUElEa3AoamF2YS5sYW5nLlN0cmluZykiPnNldFdoZWVsU3RlZXJpbmdQSURrcDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld1doZWVsU3RlZXJpbmdQSURrcDwvQ09ERT4gLSB0aGUgbmV3IHdoZWVsIHN0ZWVyaW5nIHBpIGRrcDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsU3RlZXJpbmdQSURrcCgpIj48Q09ERT5XaGVlbFN5c3RlbS5nZXRXaGVlbFN0ZWVyaW5nUElEa3AoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRXaGVlbFN0ZWVyaW5nUElEa2QoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2hlZWxTdGVlcmluZ1BJRGtkPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRXaGVlbFN0ZWVyaW5nUElEa2Q8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNnZXRXaGVlbFN0ZWVyaW5nUElEa2QoKSI+Z2V0V2hlZWxTdGVlcmluZ1BJRGtkPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgd2hlZWwgc3RlZXJpbmcgcGkgZGtkPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0V2hlZWxTdGVlcmluZ1BJRGtkKGphdmEubGFuZy5TdHJpbmcpIj48Q09ERT5XaGVlbFN5c3RlbS5zZXRXaGVlbFN0ZWVyaW5nUElEa2QoU3RyaW5nKTwvQ09ERT48L0E+LCAKKzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sI2dldFdoZWVsU3lzdGVtX1doZWVsU3RlZXJpbmdQSURrZCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRXaGVlbFN5c3RlbV9XaGVlbFN0ZWVyaW5nUElEa2QoKTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzZXRXaGVlbFN0ZWVyaW5nUElEa2QoamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KK3NldFdoZWVsU3RlZXJpbmdQSURrZDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0V2hlZWxTdGVlcmluZ1BJRGtkPC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmV3V2hlZWxTdGVlcmluZ1BJRGtkKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI3NldFdoZWVsU3RlZXJpbmdQSURrZChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0V2hlZWxTdGVlcmluZ1BJRGtkPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bmV3V2hlZWxTdGVlcmluZ1BJRGtkPC9DT0RFPiAtIHRoZSBuZXcgd2hlZWwgc3RlZXJpbmcgcGkgZGtkPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0V2hlZWxTdGVlcmluZ1BJRGtkKCkiPjxDT0RFPldoZWVsU3lzdGVtLmdldFdoZWVsU3RlZXJpbmdQSURrZCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFdoZWVsRnJpY3Rpb24oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2hlZWxGcmljdGlvbjwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0V2hlZWxGcmljdGlvbjwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsRnJpY3Rpb24oKSI+Z2V0V2hlZWxGcmljdGlvbjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHdoZWVsIGZyaWN0aW9uPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0V2hlZWxGcmljdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+V2hlZWxTeXN0ZW0uc2V0V2hlZWxGcmljdGlvbihTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxGcmljdGlvbigpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRXaGVlbFN5c3RlbV9XaGVlbEZyaWN0aW9uKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0V2hlZWxGcmljdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0V2hlZWxGcmljdGlvbjwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0V2hlZWxGcmljdGlvbjwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld1doZWVsRnJpY3Rpb24pPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0V2hlZWxGcmljdGlvbihqYXZhLmxhbmcuU3RyaW5nKSI+c2V0V2hlZWxGcmljdGlvbjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld1doZWVsRnJpY3Rpb248L0NPREU+IC0gdGhlIG5ldyB3aGVlbCBmcmljdGlvbjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsRnJpY3Rpb24oKSI+PENPREU+V2hlZWxTeXN0ZW0uZ2V0V2hlZWxGcmljdGlvbigpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFN1c3BlbnNpb25TdGlmZm5lc3MoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0U3VzcGVuc2lvblN0aWZmbmVzczwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0U3VzcGVuc2lvblN0aWZmbmVzczwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25TdGlmZm5lc3MoKSI+Z2V0U3VzcGVuc2lvblN0aWZmbmVzczwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN1c3BlbnNpb24gc3RpZmZuZXNzPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0U3VzcGVuc2lvblN0aWZmbmVzcyhqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+V2hlZWxTeXN0ZW0uc2V0U3VzcGVuc2lvblN0aWZmbmVzcyhTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvblN0aWZmbmVzcygpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uU3RpZmZuZXNzKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0U3VzcGVuc2lvblN0aWZmbmVzcyhqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0U3VzcGVuc2lvblN0aWZmbmVzczwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0U3VzcGVuc2lvblN0aWZmbmVzczwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld1N1c3BlbnNpb25TdGlmZm5lc3MpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0U3VzcGVuc2lvblN0aWZmbmVzcyhqYXZhLmxhbmcuU3RyaW5nKSI+c2V0U3VzcGVuc2lvblN0aWZmbmVzczwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld1N1c3BlbnNpb25TdGlmZm5lc3M8L0NPREU+IC0gdGhlIG5ldyBzdXNwZW5zaW9uIHN0aWZmbmVzczxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25TdGlmZm5lc3MoKSI+PENPREU+V2hlZWxTeXN0ZW0uZ2V0U3VzcGVuc2lvblN0aWZmbmVzcygpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFN1c3BlbnNpb25EYW1waW5nKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFN1c3BlbnNpb25EYW1waW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5nZXRTdXNwZW5zaW9uRGFtcGluZzwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25EYW1waW5nKCkiPmdldFN1c3BlbnNpb25EYW1waW5nPC9BPjwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgc3VzcGVuc2lvbiBkYW1waW5nPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0U3VzcGVuc2lvbkRhbXBpbmcoamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPldoZWVsU3lzdGVtLnNldFN1c3BlbnNpb25EYW1waW5nKFN0cmluZyk8L0NPREU+PC9BPiwgCis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCNnZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uRGFtcGluZygpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uRGFtcGluZygpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFN1c3BlbnNpb25EYW1waW5nKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CitzZXRTdXNwZW5zaW9uRGFtcGluZzwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0U3VzcGVuc2lvbkRhbXBpbmc8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdTdXNwZW5zaW9uRGFtcGluZyk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRTdXNwZW5zaW9uRGFtcGluZyhqYXZhLmxhbmcuU3RyaW5nKSI+c2V0U3VzcGVuc2lvbkRhbXBpbmc8L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdTdXNwZW5zaW9uRGFtcGluZzwvQ09ERT4gLSB0aGUgbmV3IHN1c3BlbnNpb24gZGFtcGluZzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFN1c3BlbnNpb25EYW1waW5nKCkiPjxDT0RFPldoZWVsU3lzdGVtLmdldFN1c3BlbnNpb25EYW1waW5nKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFN1c3BlbnNpb25Db21wcmVzc2lvbjwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uKCkiPmdldFN1c3BlbnNpb25Db21wcmVzc2lvbjwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHN1c3BlbnNpb24gY29tcHJlc3Npb248RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCNzZXRTdXNwZW5zaW9uQ29tcHJlc3Npb24oamF2YS5sYW5nLlN0cmluZykiPjxDT0RFPldoZWVsU3lzdGVtLnNldFN1c3BlbnNpb25Db21wcmVzc2lvbihTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fU3VzcGVuc2lvbkNvbXByZXNzaW9uKCkiPjxDT0RFPlJvYm90TUxQYWNrYWdlLmdldFdoZWVsU3lzdGVtX1N1c3BlbnNpb25Db21wcmVzc2lvbigpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9InNldFN1c3BlbnNpb25Db21wcmVzc2lvbihqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uPC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zZXRTdXNwZW5zaW9uQ29tcHJlc3Npb248L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtuZXdTdXNwZW5zaW9uQ29tcHJlc3Npb24pPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uKGphdmEubGFuZy5TdHJpbmcpIj5zZXRTdXNwZW5zaW9uQ29tcHJlc3Npb248L0E+PC9DT0RFPiBpbiBpbnRlcmZhY2UgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XaGVlbFN5c3RlbTwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5uZXdTdXNwZW5zaW9uQ29tcHJlc3Npb248L0NPREU+IC0gdGhlIG5ldyBzdXNwZW5zaW9uIGNvbXByZXNzaW9uPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjZ2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uKCkiPjxDT0RFPldoZWVsU3lzdGVtLmdldFN1c3BlbnNpb25Db21wcmVzc2lvbigpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFdoZWVsVmVsb2NpdHlQSURtYXhTdW0oKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bTwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bTwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURtYXhTdW0oKSI+Z2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHdoZWVsIHZlbG9jaXR5IHBpIGRtYXggc3VtPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bShqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+V2hlZWxTeXN0ZW0uc2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bShTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRG1heFN1bSgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4U3VtKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bShqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bTwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bTwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld1doZWVsVmVsb2NpdHlQSURtYXhTdW0pPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bShqYXZhLmxhbmcuU3RyaW5nKSI+c2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bTwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld1doZWVsVmVsb2NpdHlQSURtYXhTdW08L0NPREU+IC0gdGhlIG5ldyB3aGVlbCB2ZWxvY2l0eSBwaSBkbWF4IHN1bTxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURtYXhTdW0oKSI+PENPREU+V2hlZWxTeXN0ZW0uZ2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bSgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldFdoZWVsVmVsb2NpdHlQSURtYXhWYWwoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbDwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+Z2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbDwvQj4oKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURtYXhWYWwoKSI+Z2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHdoZWVsIHZlbG9jaXR5IHBpIGRtYXggdmFsPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbChqYXZhLmxhbmcuU3RyaW5nKSI+PENPREU+V2hlZWxTeXN0ZW0uc2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbChTdHJpbmcpPC9DT0RFPjwvQT4sIAorPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwjZ2V0V2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRG1heFZhbCgpIj48Q09ERT5Sb2JvdE1MUGFja2FnZS5nZXRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4VmFsKCk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0ic2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbChqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorc2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbDwvQj4oamF2YS5sYW5nLlN0cmluZyZuYnNwO25ld1doZWVsVmVsb2NpdHlQSURtYXhWYWwpPC9QUkU+Cis8REw+Cis8REQ+PCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwjc2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbChqYXZhLmxhbmcuU3RyaW5nKSI+c2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbDwvQT48L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5ld1doZWVsVmVsb2NpdHlQSURtYXhWYWw8L0NPREU+IC0gdGhlIG5ldyB3aGVlbCB2ZWxvY2l0eSBwaSBkbWF4IHZhbDxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sI2dldFdoZWVsVmVsb2NpdHlQSURtYXhWYWwoKSI+PENPREU+V2hlZWxTeXN0ZW0uZ2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbCgpPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+PCEtLSAtLT48L0E+PEgzPgorZUdldDwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5PYmplY3QgPEI+ZUdldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlELAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sZWFuJm5ic3A7cmVzb2x2ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbGVhbiZuYnNwO2NvcmVUeXBlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVHZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI2VHZXQoaW50LCBib29sZWFuLCBib29sZWFuKSI+ZUdldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY1N5c3RlbUltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkPEREPjxDT0RFPnJlc29sdmU8L0NPREU+IC0gdGhlIHJlc29sdmU8REQ+PENPREU+Y29yZVR5cGU8L0NPREU+IC0gdGhlIGNvcmUgdHlwZQorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgb2JqZWN0PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlU2V0KGludCwgamF2YS5sYW5nLk9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2VTZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmVTZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCwKKyAgICAgICAgICAgICAgICAgamF2YS5sYW5nLk9iamVjdCZuYnNwO25ld1ZhbHVlKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVTZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI2VTZXQoaW50LCBqYXZhLmxhbmcuT2JqZWN0KSI+ZVNldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY1N5c3RlbUltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkPEREPjxDT0RFPm5ld1ZhbHVlPC9DT0RFPiAtIHRoZSBuZXcgdmFsdWU8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImVVbnNldChpbnQpIj48IS0tIC0tPjwvQT48SDM+CitlVW5zZXQ8L0gzPgorPFBSRT4KK3B1YmxpYyB2b2lkIDxCPmVVbnNldDwvQj4oaW50Jm5ic3A7ZmVhdHVyZUlEKTwvUFJFPgorPERMPgorPEREPjwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmVVbnNldDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwjZVVuc2V0KGludCkiPmVVbnNldDwvQT48L0NPREU+IGluIGNsYXNzIDxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY1N5c3RlbUltcGw8L0E+PC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmVhdHVyZUlEPC9DT0RFPiAtIHRoZSBmZWF0dXJlIGlkPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJlSXNTZXQoaW50KSI+PCEtLSAtLT48L0E+PEgzPgorZUlzU2V0PC9IMz4KKzxQUkU+CitwdWJsaWMgYm9vbGVhbiA8Qj5lSXNTZXQ8L0I+KGludCZuYnNwO2ZlYXR1cmVJRCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5lSXNTZXQ8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0PC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI2VJc1NldChpbnQpIj5lSXNTZXQ8L0E+PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90aWNTeXN0ZW1JbXBsPC9BPjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZlYXR1cmVJRDwvQ09ERT4gLSB0aGUgZmVhdHVyZSBpZAorPERUPjxCPlJldHVybnM6PC9CPjxERD50cnVlLCBpZiBzdWNjZXNzZnVsPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJ0b1N0cmluZygpIj48IS0tIC0tPjwvQT48SDM+Cit0b1N0cmluZzwvSDM+Cis8UFJFPgorcHVibGljIGphdmEubGFuZy5TdHJpbmcgPEI+dG9TdHJpbmc8L0I+KCk8L1BSRT4KKzxETD4KKzxERD48IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sI3RvU3RyaW5nKCkiPnRvU3RyaW5nPC9BPjwvQ09ERT4gaW4gY2xhc3MgPENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU3lzdGVtSW1wbDwvQT48L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzdHJpbmc8L0RMPgorPC9ERD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1doZWVsU3lzdGVtSW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2F0ZXJTdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7TkVYVCBDTEFTUzwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJXaGVlbFN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVPYmplY3RJbXBsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvQWN0dWF0b3JTeXN0ZW1JbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9BY3R1YXRvclN5c3RlbUltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xZDE0ZjE0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvQWN0dWF0b3JTeXN0ZW1JbXBsLmh0bWwKQEAgLTAsMCArMSwxODQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWN0dWF0b3JTeXN0ZW1JbXBsCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BY3R1YXRvclN5c3RlbUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FjdHVhdG9yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvQWN0dWF0b3JTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWN0dWF0b3JTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgQ2xhc3M8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWN0dWF0b3JTeXN0ZW1JbXBsPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BY3R1YXRvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BY3R1YXRvclN5c3RlbUltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FjdHVhdG9yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFjdHVhdG9yU3lzdGVtSW1wbDwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPlN1YmNsYXNzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWN0dWF0b3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWN0dWF0b3JTeXN0ZW1JbXBsPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+RW5naW5lU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+RW5naW5lIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2hlZWxTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5XaGVlbCBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FjdHVhdG9yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvQWN0dWF0b3JTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWN0dWF0b3JTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9BZ2VudEltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0FnZW50SW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZlZGU5M2MKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9BZ2VudEltcGwuaHRtbApAQCAtMCwwICsxLDE5MiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BZ2VudEltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkFnZW50SW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9BZ2VudEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJBZ2VudEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BZ2VudEltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFnZW50SW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWdlbnRJbXBsPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+U3ViY2xhc3NlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BZ2VudEltcGw8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0h1bWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkh1bWFuSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SHVtYW48L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BlZGVzdHJpYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGVkZXN0cmlhbkltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBlZGVzdHJpYW48L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90SW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Um9ib3Q8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvQWdlbnRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWdlbnRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9BbGdvcml0aG1JbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9BbGdvcml0aG1JbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDJlYTQ1MwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0FsZ29yaXRobUltcGwuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BbGdvcml0aG1JbXBsCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BbGdvcml0aG1JbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9BbGdvcml0aG1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWxnb3JpdGhtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkFsZ29yaXRobUltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWxnb3JpdGhtSW1wbAorPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9BbGdvcml0aG1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQWxnb3JpdGhtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzk5Yjc2YgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwKQEAgLTAsMCArMSwxNDAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWxnb3JpdGhtTGlicmFyeUltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkFsZ29yaXRobUxpYnJhcnlJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1MaWJyYXJ5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJBbGdvcml0aG1MaWJyYXJ5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkFsZ29yaXRobUxpYnJhcnlJbXBsPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkFsZ29yaXRobUxpYnJhcnlJbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9BbGdvcml0aG1MaWJyYXJ5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9CbGVuZGVyTW9yc2VJbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9CbGVuZGVyTW9yc2VJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmRjNTRkOQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0JsZW5kZXJNb3JzZUltcGwuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5CbGVuZGVyTW9yc2VJbXBsCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5CbGVuZGVyTW9yc2VJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9CbGVuZGVyTW9yc2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQmxlbmRlck1vcnNlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkJsZW5kZXJNb3JzZUltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQmxlbmRlck1vcnNlSW1wbAorPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9CbGVuZGVyTW9yc2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQmxlbmRlck1vcnNlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvQnVpbGRpbmdJbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9CdWlsZGluZ0ltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lNjQ0MzlhCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvQnVpbGRpbmdJbXBsLmh0bWwKQEAgLTAsMCArMSwxNDAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQnVpbGRpbmdJbXBsCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5CdWlsZGluZ0ltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0J1aWxkaW5nSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvQnVpbGRpbmdJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQnVpbGRpbmdJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgQ2xhc3M8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQnVpbGRpbmdJbXBsPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkJ1aWxkaW5nSW1wbAorPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CdWlsZGluZ0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0J1aWxkaW5nSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkJ1aWxkaW5nSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvQ2FtZXJhU3lzdGVtSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNkNTM2ODEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwKQEAgLTAsMCArMSwxNDAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQ2FtZXJhU3lzdGVtSW1wbAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQ2FtZXJhU3lzdGVtSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkNhbWVyYVN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5DYW1lcmFTeXN0ZW1JbXBsPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkNhbWVyYVN5c3RlbUltcGwKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkNhbWVyYVN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0NvbGxlY3Rpb25JbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Db2xsZWN0aW9uSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjYyNmJhNjcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Db2xsZWN0aW9uSW1wbC5odG1sCkBAIC0wLDAgKzEsMTQwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkNvbGxlY3Rpb25JbXBsCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Db2xsZWN0aW9uSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29sbGVjdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0NvbGxlY3Rpb25JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQ29sbGVjdGlvbkltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Db2xsZWN0aW9uSW1wbDwvQj48L0gyPgorPC9DRU5URVI+CitObyB1c2FnZSBvZiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Db2xsZWN0aW9uSW1wbAorPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db2xsZWN0aW9uSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvQ29sbGVjdGlvbkltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJDb2xsZWN0aW9uSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvQ29tcG9zZWREYXRhSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvQ29tcG9zZWREYXRhSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNlZGZmYzcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Db21wb3NlZERhdGFJbXBsLmh0bWwKQEAgLTAsMCArMSwxNDAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQ29tcG9zZWREYXRhSW1wbAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQ29tcG9zZWREYXRhSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29tcG9zZWREYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvQ29tcG9zZWREYXRhSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkNvbXBvc2VkRGF0YUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Db21wb3NlZERhdGFJbXBsPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkNvbXBvc2VkRGF0YUltcGwKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29tcG9zZWREYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvQ29tcG9zZWREYXRhSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkNvbXBvc2VkRGF0YUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0N5Y2FiVEtJbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9DeWNhYlRLSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJhZjZmYTMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9DeWNhYlRLSW1wbC5odG1sCkBAIC0wLDAgKzEsMTQwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkN5Y2FiVEtJbXBsCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5DeWNhYlRLSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ3ljYWJUS0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0N5Y2FiVEtJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iQ3ljYWJUS0ltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5DeWNhYlRLSW1wbDwvQj48L0gyPgorPC9DRU5URVI+CitObyB1c2FnZSBvZiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5DeWNhYlRLSW1wbAorPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvQ3ljYWJUS0ltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJDeWNhYlRLSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvRGF0YUZsb3dQb3J0SW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvRGF0YUZsb3dQb3J0SW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNlNjA3ZjQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9EYXRhRmxvd1BvcnRJbXBsLmh0bWwKQEAgLTAsMCArMSwxNDAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuRGF0YUZsb3dQb3J0SW1wbAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuRGF0YUZsb3dQb3J0SW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRGF0YUZsb3dQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvRGF0YUZsb3dQb3J0SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkRhdGFGbG93UG9ydEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5EYXRhRmxvd1BvcnRJbXBsPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkRhdGFGbG93UG9ydEltcGwKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRGF0YUZsb3dQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvRGF0YUZsb3dQb3J0SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkRhdGFGbG93UG9ydEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0VuZ2luZVN5c3RlbUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0VuZ2luZVN5c3RlbUltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44NWU1YjAxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvRW5naW5lU3lzdGVtSW1wbC5odG1sCkBAIC0wLDAgKzEsMTQwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkVuZ2luZVN5c3RlbUltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkVuZ2luZVN5c3RlbUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJFbmdpbmVTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgQ2xhc3M8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuRW5naW5lU3lzdGVtSW1wbDwvQj48L0gyPgorPC9DRU5URVI+CitObyB1c2FnZSBvZiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5FbmdpbmVTeXN0ZW1JbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0VuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJFbmdpbmVTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9FbnZpcm9ubWVudEltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0Vudmlyb25tZW50SW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ5ODIyNTgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9FbnZpcm9ubWVudEltcGwuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5FbnZpcm9ubWVudEltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkVudmlyb25tZW50SW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW52aXJvbm1lbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9FbnZpcm9ubWVudEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJFbnZpcm9ubWVudEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5FbnZpcm9ubWVudEltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuRW52aXJvbm1lbnRJbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Vudmlyb25tZW50SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvRW52aXJvbm1lbnRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRW52aXJvbm1lbnRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9GbG9vckltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0Zsb29ySW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBkNGJkMjYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9GbG9vckltcGwuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5GbG9vckltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkZsb29ySW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRmxvb3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9GbG9vckltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJGbG9vckltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5GbG9vckltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuRmxvb3JJbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Zsb29ySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvRmxvb3JJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iRmxvb3JJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9HUFNTeXN0ZW1JbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9HUFNTeXN0ZW1JbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODNjMjEyNQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0dQU1N5c3RlbUltcGwuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5HUFNTeXN0ZW1JbXBsCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5HUFNTeXN0ZW1JbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HUFNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9HUFNTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iR1BTU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkdQU1N5c3RlbUltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuR1BTU3lzdGVtSW1wbAorPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HUFNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9HUFNTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iR1BTU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvR3JvdW5kSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvR3JvdW5kSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjMzMjJmZWQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Hcm91bmRJbXBsLmh0bWwKQEAgLTAsMCArMSwxOTIgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuR3JvdW5kSW1wbAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuR3JvdW5kSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR3JvdW5kSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvR3JvdW5kSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ikdyb3VuZEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Hcm91bmRJbXBsPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Hcm91bmRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+R3JvdW5kSW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR3JvdW5kSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkdyb3VuZEltcGw8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5TdWJjbGFzc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dyb3VuZEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Hcm91bmRJbXBsPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9GbG9vckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5GbG9vckltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkZsb29yPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MYW5kU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MYW5kU3VyZmFjZUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxhbmQgU3VyZmFjZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhaXJzSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN0YWlyc0ltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlN0YWlyczwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR3JvdW5kSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvR3JvdW5kSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ikdyb3VuZEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0hhcmR3YXJlSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvSGFyZHdhcmVJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjFmZTZiNAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0hhcmR3YXJlSW1wbC5odG1sCkBAIC0wLDAgKzEsMTQwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkhhcmR3YXJlSW1wbAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuSGFyZHdhcmVJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IYXJkd2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0hhcmR3YXJlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkhhcmR3YXJlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkhhcmR3YXJlSW1wbDwvQj48L0gyPgorPC9DRU5URVI+CitObyB1c2FnZSBvZiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5IYXJkd2FyZUltcGwKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSGFyZHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9IYXJkd2FyZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJIYXJkd2FyZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0h1bWFuSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvSHVtYW5JbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTRjNGFmMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0h1bWFuSW1wbC5odG1sCkBAIC0wLDAgKzEsMTc2IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkh1bWFuSW1wbAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuSHVtYW5JbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IdW1hbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0h1bWFuSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ikh1bWFuSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkh1bWFuSW1wbDwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSHVtYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+SHVtYW5JbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IdW1hbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5IdW1hbkltcGw8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5TdWJjbGFzc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0h1bWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkh1bWFuSW1wbDwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGVkZXN0cmlhbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QZWRlc3RyaWFuSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGVkZXN0cmlhbjwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSHVtYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9IdW1hbkltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJIdW1hbkltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0ltYWdlU2Vuc29yU3lzdGVtSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDQxZDhlZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0ltYWdlU2Vuc29yU3lzdGVtSW1wbC5odG1sCkBAIC0wLDAgKzEsMTc2IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkltYWdlU2Vuc29yU3lzdGVtSW1wbAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9JbWFnZVNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0ltYWdlU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkltYWdlU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkltYWdlU2Vuc29yU3lzdGVtSW1wbDwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+SW1hZ2VTZW5zb3JTeXN0ZW1JbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9JbWFnZVNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5JbWFnZVNlbnNvclN5c3RlbUltcGw8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5TdWJjbGFzc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0ltYWdlU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkltYWdlU2Vuc29yU3lzdGVtSW1wbDwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkNhbWVyYVN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNhbWVyYSBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0ltYWdlU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9MYW5kU3VyZmFjZUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0xhbmRTdXJmYWNlSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI0OTRlMTEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9MYW5kU3VyZmFjZUltcGwuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5MYW5kU3VyZmFjZUltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkxhbmRTdXJmYWNlSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGFuZFN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9MYW5kU3VyZmFjZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJMYW5kU3VyZmFjZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5MYW5kU3VyZmFjZUltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTGFuZFN1cmZhY2VJbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xhbmRTdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvTGFuZFN1cmZhY2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iTGFuZFN1cmZhY2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9MaWRhclN5c3RlbUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0xpZGFyU3lzdGVtSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE0YzZjZTkKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9MaWRhclN5c3RlbUltcGwuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5MaWRhclN5c3RlbUltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkxpZGFyU3lzdGVtSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9MaWRhclN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJMaWRhclN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5MaWRhclN5c3RlbUltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTGlkYXJTeXN0ZW1JbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTI5NDBiNQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL0xvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbApAQCAtMCwwICsxLDE3NiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkxvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbDwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPlN1YmNsYXNzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGw8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dQU1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5HUFNTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5HUFMgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhlN2YxYjMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwKQEAgLTAsMCArMSwxNzYgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ik9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGw8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5TdWJjbGFzc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MaWRhclN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxpZGFyIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ik9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmE4MTk0ZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbC5odG1sCkBAIC0wLDAgKzEsMTQwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ik9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbDwvQj48L0gyPgorPC9DRU5URVI+CitObyB1c2FnZSBvZiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL09uUG9ydEltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL09uUG9ydEltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MjU2MDY1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvT25Qb3J0SW1wbC5odG1sCkBAIC0wLDAgKzEsMTQwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk9uUG9ydEltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk9uUG9ydEltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL09uUG9ydEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJPblBvcnRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgQ2xhc3M8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuT25Qb3J0SW1wbDwvQj48L0gyPgorPC9DRU5URVI+CitObyB1c2FnZSBvZiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5PblBvcnRJbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL09uUG9ydEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJPblBvcnRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9QZWRlc3RyaWFuSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvUGVkZXN0cmlhbkltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41Y2E4YTZmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvUGVkZXN0cmlhbkltcGwuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QZWRlc3RyaWFuSW1wbAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGVkZXN0cmlhbkltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BlZGVzdHJpYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9QZWRlc3RyaWFuSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlBlZGVzdHJpYW5JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgQ2xhc3M8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGVkZXN0cmlhbkltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGVkZXN0cmlhbkltcGwKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGVkZXN0cmlhbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1BlZGVzdHJpYW5JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUGVkZXN0cmlhbkltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1BoeXNpY2FsRGF0YUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1BoeXNpY2FsRGF0YUltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hZGExYjViCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvUGh5c2ljYWxEYXRhSW1wbC5odG1sCkBAIC0wLDAgKzEsMTQwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsRGF0YUltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsRGF0YUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1BoeXNpY2FsRGF0YUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQaHlzaWNhbERhdGFJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgQ2xhc3M8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGh5c2ljYWxEYXRhSW1wbDwvQj48L0gyPgorPC9DRU5URVI+CitObyB1c2FnZSBvZiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QaHlzaWNhbERhdGFJbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1BoeXNpY2FsRGF0YUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQaHlzaWNhbERhdGFJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmYzOGY3MjUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9QaHlzaWNhbE9iamVjdEltcGwuaHRtbApAQCAtMCwwICsxLDI2NCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QaHlzaWNhbE9iamVjdEltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsT2JqZWN0SW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QaHlzaWNhbE9iamVjdEltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBoeXNpY2FsT2JqZWN0SW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGh5c2ljYWxPYmplY3RJbXBsPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+U3ViY2xhc3NlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QaHlzaWNhbE9iamVjdEltcGw8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFnZW50SW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QWdlbnQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0J1aWxkaW5nSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkJ1aWxkaW5nSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QnVpbGRpbmc8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Zsb29ySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkZsb29ySW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Rmxvb3I8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dyb3VuZEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Hcm91bmRJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Hcm91bmQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0h1bWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkh1bWFuSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SHVtYW48L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xhbmRTdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkxhbmRTdXJmYWNlSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TGFuZCBTdXJmYWNlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QZWRlc3RyaWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBlZGVzdHJpYW5JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QZWRlc3RyaWFuPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGFuZXRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGxhbmV0SW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGxhbmV0PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdEltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGFpcnNJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3RhaXJzSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3RhaXJzPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN1cmZhY2VJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TdXJmYWNlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XYXRlclN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2F0ZXJTdXJmYWNlSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+V2F0ZXIgU3VyZmFjZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1BsYW5ldEltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1BsYW5ldEltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iNDM3YWYzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvUGxhbmV0SW1wbC5odG1sCkBAIC0wLDAgKzEsMTQwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBsYW5ldEltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBsYW5ldEltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYW5ldEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1BsYW5ldEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQbGFuZXRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgQ2xhc3M8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGxhbmV0SW1wbDwvQj48L0gyPgorPC9DRU5URVI+CitObyB1c2FnZSBvZiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QbGFuZXRJbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYW5ldEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1BsYW5ldEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQbGFuZXRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9QbGF0Zm9ybUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1BsYXRmb3JtSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJjNTQ1OWUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9QbGF0Zm9ybUltcGwuaHRtbApAQCAtMCwwICsxLDIwMCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QbGF0Zm9ybUltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBsYXRmb3JtSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9QbGF0Zm9ybUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQbGF0Zm9ybUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QbGF0Zm9ybUltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBsYXRmb3JtSW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGxhdGZvcm1JbXBsPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+U3ViY2xhc3NlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QbGF0Zm9ybUltcGw8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5CbGVuZGVyTW9yc2VJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5CbGVuZGVyIE1vcnNlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkN5Y2FiVEtJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5DeWNhYiBUSzwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY01pZGRsZXdhcmVJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Sb2JvdGljIE1pZGRsZXdhcmU8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTaW11bGF0b3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY1NpbXVsYXRvckltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90aWMgU2ltdWxhdG9yPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1BsYXRmb3JtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlBsYXRmb3JtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvUG9ydEltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1BvcnRJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDM2YTU2NwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1BvcnRJbXBsLmh0bWwKQEAgLTAsMCArMSwxODQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUG9ydEltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBvcnRJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvUG9ydEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQb3J0SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBvcnRJbXBsPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBvcnRJbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBvcnRJbXBsPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+U3ViY2xhc3NlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBvcnRJbXBsPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9EYXRhRmxvd1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+RGF0YUZsb3dQb3J0SW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+RGF0YSBGbG93IFBvcnQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlcnZpY2VQb3J0SW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U2VydmljZSBQb3J0PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvUG9ydEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQb3J0SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvUHJpbWl0aXZlRGF0YUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1ByaW1pdGl2ZURhdGFJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDkzZjkwMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1ByaW1pdGl2ZURhdGFJbXBsLmh0bWwKQEAgLTAsMCArMSwxNDAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUHJpbWl0aXZlRGF0YUltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlByaW1pdGl2ZURhdGFJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QcmltaXRpdmVEYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvUHJpbWl0aXZlRGF0YUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJQcmltaXRpdmVEYXRhSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlByaW1pdGl2ZURhdGFJbXBsPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlByaW1pdGl2ZURhdGFJbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1ByaW1pdGl2ZURhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9QcmltaXRpdmVEYXRhSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlByaW1pdGl2ZURhdGFJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Sb2JvdEltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1JvYm90SW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdkMmRhMTgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Sb2JvdEltcGwuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdEltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90SW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Sb2JvdEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdEltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RJbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvUm9ib3RJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM3NzE5YjUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MRmFjdG9yeUltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxGYWN0b3J5SW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MRmFjdG9yeUltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTEZhY3RvcnlJbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVjNGY5YTcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RNTFBhY2thZ2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Sb2JvdGljTWlkZGxld2FyZUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1JvYm90aWNNaWRkbGV3YXJlSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY1ZDdiOTAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Sb2JvdGljTWlkZGxld2FyZUltcGwuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdGljTWlkZGxld2FyZUltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90aWNNaWRkbGV3YXJlSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Sb2JvdGljTWlkZGxld2FyZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdGljTWlkZGxld2FyZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdGljTWlkZGxld2FyZUltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RpY01pZGRsZXdhcmVJbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNNaWRkbGV3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Sb2JvdGljU2ltdWxhdG9ySW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvUm9ib3RpY1NpbXVsYXRvckltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mNzUzNjljCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvUm9ib3RpY1NpbXVsYXRvckltcGwuaHRtbApAQCAtMCwwICsxLDE4NCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdGljU2ltdWxhdG9ySW1wbAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RpY1NpbXVsYXRvckltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTaW11bGF0b3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Sb2JvdGljU2ltdWxhdG9ySW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlJvYm90aWNTaW11bGF0b3JJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgQ2xhc3M8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RpY1NpbXVsYXRvckltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTaW11bGF0b3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY1NpbXVsYXRvckltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTaW11bGF0b3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY1NpbXVsYXRvckltcGw8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj5TdWJjbGFzc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTaW11bGF0b3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY1NpbXVsYXRvckltcGw8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5CbGVuZGVyTW9yc2VJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5CbGVuZGVyIE1vcnNlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkN5Y2FiVEtJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5DeWNhYiBUSzwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1NpbXVsYXRvckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1JvYm90aWNTaW11bGF0b3JJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RpY1NpbXVsYXRvckltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Sb2JvdGljU3lzdGVtSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmMwYzY5ZTIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Sb2JvdGljU3lzdGVtSW1wbC5odG1sCkBAIC0wLDAgKzEsMjU2IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90aWNTeXN0ZW1JbXBsCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdGljU3lzdGVtSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdGljU3lzdGVtSW1wbDwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU3lzdGVtSW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8QSBOQU1FPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU3lzdGVtSW1wbDwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPlN1YmNsYXNzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU3lzdGVtSW1wbDwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWN0dWF0b3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWN0dWF0b3JTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BY3R1YXRvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5DYW1lcmFTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5DYW1lcmEgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+RW5naW5lU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+RW5naW5lIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR1BTU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkdQU1N5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkdQUyBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0ltYWdlU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkltYWdlU2Vuc29yU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SW1hZ2UgU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TGlkYXJTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5MaWRhciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Mb2NhbGl6YXRpb24gU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5PYmplY3QgVHJhY2tpbmcgU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlbnNvclN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPldoZWVsU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+V2hlZWwgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdGljU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvU2Vuc29yRHJpdmVySW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvU2Vuc29yRHJpdmVySW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVmZmQyZWQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9TZW5zb3JEcml2ZXJJbXBsLmh0bWwKQEAgLTAsMCArMSwxNDAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU2Vuc29yRHJpdmVySW1wbAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU2Vuc29yRHJpdmVySW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yRHJpdmVySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvU2Vuc29yRHJpdmVySW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNlbnNvckRyaXZlckltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TZW5zb3JEcml2ZXJJbXBsPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNlbnNvckRyaXZlckltcGwKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yRHJpdmVySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvU2Vuc29yRHJpdmVySW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlNlbnNvckRyaXZlckltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1NlbnNvclN5c3RlbUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1NlbnNvclN5c3RlbUltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41Nzk1ZjRjCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvU2Vuc29yU3lzdGVtSW1wbC5odG1sCkBAIC0wLDAgKzEsMjI0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNlbnNvclN5c3RlbUltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNlbnNvclN5c3RlbUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgQ2xhc3M8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU2Vuc29yU3lzdGVtSW1wbDwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlbnNvclN5c3RlbUltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JTeXN0ZW1JbXBsPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+U3ViY2xhc3NlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2Vuc29yU3lzdGVtSW1wbDwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkNhbWVyYVN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNhbWVyYSBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dQU1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5HUFNTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5HUFMgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9JbWFnZVNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5JbWFnZVNlbnNvclN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkltYWdlIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkxpZGFyU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TGlkYXIgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5PYmplY3QgRGV0ZWN0aW9uIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T2JqZWN0IFRyYWNraW5nIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9TZXJ2aWNlUG9ydEltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1NlcnZpY2VQb3J0SW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjllNTBlMjgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9TZXJ2aWNlUG9ydEltcGwuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TZXJ2aWNlUG9ydEltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNlcnZpY2VQb3J0SW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9TZXJ2aWNlUG9ydEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTZXJ2aWNlUG9ydEltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TZXJ2aWNlUG9ydEltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU2VydmljZVBvcnRJbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvU2VydmljZVBvcnRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU2VydmljZVBvcnRJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjE5MDM2ZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1NpbXVsYXRlZFN5c3RlbUltcGwuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TaW11bGF0ZWRTeXN0ZW1JbXBsCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TaW11bGF0ZWRTeXN0ZW1JbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU2ltdWxhdGVkU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNpbXVsYXRlZFN5c3RlbUltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU2ltdWxhdGVkU3lzdGVtSW1wbAorPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9TaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU2ltdWxhdGVkU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvU29mdHdhcmVJbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Tb2Z0d2FyZUltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZjQ0MGFhCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvU29mdHdhcmVJbXBsLmh0bWwKQEAgLTAsMCArMSwxODQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU29mdHdhcmVJbXBsCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Tb2Z0d2FyZUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvU29mdHdhcmVJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU29mdHdhcmVJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgQ2xhc3M8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU29mdHdhcmVJbXBsPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Tb2Z0d2FyZUltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitVc2VzIG9mIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNvZnR3YXJlSW1wbDwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPlN1YmNsYXNzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U29mdHdhcmVJbXBsPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JEcml2ZXJJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2Vuc29yRHJpdmVySW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U2Vuc29yIERyaXZlcjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2ltdWxhdGVkU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNpbXVsYXRlZFN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNpbXVsYXRlZCBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvU29mdHdhcmVJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU29mdHdhcmVJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9TdGFpcnNJbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9TdGFpcnNJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjZhNjBhMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1N0YWlyc0ltcGwuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TdGFpcnNJbXBsCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TdGFpcnNJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGFpcnNJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9TdGFpcnNJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU3RhaXJzSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN0YWlyc0ltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3RhaXJzSW1wbAorPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGFpcnNJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9TdGFpcnNJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU3RhaXJzSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvU3RhdGVJbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9TdGF0ZUltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MWZmNmYyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvU3RhdGVJbXBsLmh0bWwKQEAgLTAsMCArMSwxNDAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3RhdGVJbXBsCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TdGF0ZUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvU3RhdGVJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU3RhdGVJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgQ2xhc3M8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3RhdGVJbXBsPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN0YXRlSW1wbAorPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1N0YXRlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlN0YXRlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvU3VyZmFjZUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1N1cmZhY2VJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmM3YWMyOQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1N1cmZhY2VJbXBsLmh0bWwKQEAgLTAsMCArMSwyMDggQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3VyZmFjZUltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN1cmZhY2VJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvU3VyZmFjZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTdXJmYWNlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN1cmZhY2VJbXBsPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN1cmZhY2VJbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN1cmZhY2VJbXBsPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+U3ViY2xhc3NlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN1cmZhY2VJbXBsPC9BPiBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9GbG9vckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5GbG9vckltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkZsb29yPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Hcm91bmRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+R3JvdW5kSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+R3JvdW5kPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MYW5kU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MYW5kU3VyZmFjZUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxhbmQgU3VyZmFjZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhaXJzSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN0YWlyc0ltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlN0YWlyczwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2F0ZXJTdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPldhdGVyU3VyZmFjZUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPldhdGVyIFN1cmZhY2U8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9TdXJmYWNlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlN1cmZhY2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9TeXN0ZW1JbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9TeXN0ZW1JbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzcxNjU2MAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1N5c3RlbUltcGwuaHRtbApAQCAtMCwwICsxLDQ0OCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9TeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iU3lzdGVtSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TeXN0ZW1JbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorVXNlcyBvZiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3lzdGVtSW1wbDwvQT4gaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPlN1YmNsYXNzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN5c3RlbUltcGw8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FjdHVhdG9yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFjdHVhdG9yU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QWN0dWF0b3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BZ2VudEltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFnZW50PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QmxlbmRlck1vcnNlSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QmxlbmRlciBNb3JzZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQnVpbGRpbmdJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QnVpbGRpbmdJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5CdWlsZGluZzwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkNhbWVyYVN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNhbWVyYSBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q3ljYWJUS0ltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkN5Y2FiIFRLPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+RW5naW5lU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+RW5naW5lIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW52aXJvbm1lbnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+RW52aXJvbm1lbnRJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5FbnZpcm9ubWVudDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRmxvb3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Rmxvb3JJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5GbG9vcjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR1BTU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkdQU1N5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkdQUyBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dyb3VuZEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Hcm91bmRJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Hcm91bmQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0hhcmR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkhhcmR3YXJlSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SGFyZHdhcmU8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0h1bWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkh1bWFuSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SHVtYW48L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0ltYWdlU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkltYWdlU2Vuc29yU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SW1hZ2UgU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGFuZFN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TGFuZFN1cmZhY2VJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5MYW5kIFN1cmZhY2U8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkxpZGFyU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TGlkYXIgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5PYmplY3QgRGV0ZWN0aW9uIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T2JqZWN0IFRyYWNraW5nIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BlZGVzdHJpYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGVkZXN0cmlhbkltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBlZGVzdHJpYW48L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBoeXNpY2FsT2JqZWN0SW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGh5c2ljYWwgT2JqZWN0PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGFuZXRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UGxhbmV0SW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGxhbmV0PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QbGF0Zm9ybUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBsYXRmb3JtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljTWlkZGxld2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljTWlkZGxld2FyZUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90aWMgTWlkZGxld2FyZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1NpbXVsYXRvckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdGljU2ltdWxhdG9ySW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Um9ib3RpYyBTaW11bGF0b3I8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY1N5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90aWMgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Sb2JvdEltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JEcml2ZXJJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U2Vuc29yRHJpdmVySW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U2Vuc29yIERyaXZlcjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlbnNvclN5c3RlbUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO2NsYXNzPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NpbXVsYXRlZFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TaW11bGF0ZWRTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TaW11bGF0ZWQgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Tb2Z0d2FyZUltcGw8L0E+PC9CPjwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNvZnR3YXJlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGFpcnNJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U3RhaXJzSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3RhaXJzPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlN1cmZhY2VJbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TdXJmYWNlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XYXRlclN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2F0ZXJTdXJmYWNlSW1wbDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+V2F0ZXIgU3VyZmFjZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Y2xhc3M8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+V2hlZWxTeXN0ZW1JbXBsPC9BPjwvQj48L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5XaGVlbCBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1N5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9UcmFuc2l0aW9uSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvVHJhbnNpdGlvbkltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40YTQ3NWZhCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvVHJhbnNpdGlvbkltcGwuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5UcmFuc2l0aW9uSW1wbAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuVHJhbnNpdGlvbkltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9UcmFuc2l0aW9uSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlRyYW5zaXRpb25JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgQ2xhc3M8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuVHJhbnNpdGlvbkltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuVHJhbnNpdGlvbkltcGwKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1RyYW5zaXRpb25JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iVHJhbnNpdGlvbkltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1dhdGVyU3VyZmFjZUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1dhdGVyU3VyZmFjZUltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mNTRlOWU3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvV2F0ZXJTdXJmYWNlSW1wbC5odG1sCkBAIC0wLDAgKzEsMTQwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLldhdGVyU3VyZmFjZUltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLldhdGVyU3VyZmFjZUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1dhdGVyU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1dhdGVyU3VyZmFjZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJXYXRlclN1cmZhY2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgQ2xhc3M8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuV2F0ZXJTdXJmYWNlSW1wbDwvQj48L0gyPgorPC9DRU5URVI+CitObyB1c2FnZSBvZiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5XYXRlclN1cmZhY2VJbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1dhdGVyU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1dhdGVyU3VyZmFjZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJXYXRlclN1cmZhY2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9XaGVlbFN5c3RlbUltcGwuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1doZWVsU3lzdGVtSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE4MDJlYmQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9XaGVlbFN5c3RlbUltcGwuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5XaGVlbFN5c3RlbUltcGwKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLldoZWVsU3lzdGVtSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9XaGVlbFN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJXaGVlbFN5c3RlbUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5XaGVlbFN5c3RlbUltcGw8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuV2hlZWxTeXN0ZW1JbXBsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2UtZnJhbWUuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1mcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQwYjU1YTEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2UtZnJhbWUuaHRtbApAQCAtMCwwICsxLDEzMCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCBwYWNrYWdlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiPgorPEZPTlQgc2l6ZT0iKzEiIENMQVNTPSJGcmFtZVRpdGxlRm9udCI+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQT48L0ZPTlQ+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBOT1dSQVA+PEZPTlQgc2l6ZT0iKzEiIENMQVNTPSJGcmFtZUhlYWRpbmdGb250Ij4KK0NsYXNzZXM8L0ZPTlQ+Jm5ic3A7Cis8Rk9OVCBDTEFTUz0iRnJhbWVJdGVtRm9udCI+Cis8QlI+Cis8QSBIUkVGPSJBY3R1YXRvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkFjdHVhdG9yU3lzdGVtSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9IkFnZW50SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+QWdlbnRJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0iQWxnb3JpdGhtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+QWxnb3JpdGhtSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9IkFsZ29yaXRobUxpYnJhcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5BbGdvcml0aG1MaWJyYXJ5SW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9IkJsZW5kZXJNb3JzZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkJsZW5kZXJNb3JzZUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJCdWlsZGluZ0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkJ1aWxkaW5nSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9IkNhbWVyYVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkNhbWVyYVN5c3RlbUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJDb2xsZWN0aW9uSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+Q29sbGVjdGlvbkltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJDb21wb3NlZERhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5Db21wb3NlZERhdGFJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0iQ3ljYWJUS0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkN5Y2FiVEtJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0iRGF0YUZsb3dQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+RGF0YUZsb3dQb3J0SW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9IkVuZ2luZVN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkVuZ2luZVN5c3RlbUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJFbnZpcm9ubWVudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkVudmlyb25tZW50SW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9IkZsb29ySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+Rmxvb3JJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0iR1BTU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+R1BTU3lzdGVtSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Ikdyb3VuZEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkdyb3VuZEltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJIYXJkd2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkhhcmR3YXJlSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Ikh1bWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+SHVtYW5JbXBsPC9BPgorPEJSPgorPEEgSFJFRj0iSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5JbWFnZVNlbnNvclN5c3RlbUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJMYW5kU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPkxhbmRTdXJmYWNlSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9IkxpZGFyU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+TGlkYXJTeXN0ZW1JbXBsPC9BPgorPEJSPgorPEEgSFJFRj0iTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Ik9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9Ik9uUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPk9uUG9ydEltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJQZWRlc3RyaWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+UGVkZXN0cmlhbkltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJQaHlzaWNhbERhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5QaHlzaWNhbERhdGFJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0iUGh5c2ljYWxPYmplY3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5QaHlzaWNhbE9iamVjdEltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJQbGFuZXRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5QbGFuZXRJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0iUGxhdGZvcm1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5QbGF0Zm9ybUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+UG9ydEltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJQcmltaXRpdmVEYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+UHJpbWl0aXZlRGF0YUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJSb2JvdGljTWlkZGxld2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPlJvYm90aWNNaWRkbGV3YXJlSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9IlJvYm90aWNTaW11bGF0b3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5Sb2JvdGljU2ltdWxhdG9ySW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9IlJvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5Sb2JvdGljU3lzdGVtSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9IlJvYm90SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+Um9ib3RJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0iUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5Sb2JvdE1MRmFjdG9yeUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJSb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9IlNlbnNvckRyaXZlckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPlNlbnNvckRyaXZlckltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5TZW5zb3JTeXN0ZW1JbXBsPC9BPgorPEJSPgorPEEgSFJFRj0iU2VydmljZVBvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5TZXJ2aWNlUG9ydEltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJTaW11bGF0ZWRTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5TaW11bGF0ZWRTeXN0ZW1JbXBsPC9BPgorPEJSPgorPEEgSFJFRj0iU29mdHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5Tb2Z0d2FyZUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJTdGFpcnNJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5TdGFpcnNJbXBsPC9BPgorPEJSPgorPEEgSFJFRj0iU3RhdGVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5TdGF0ZUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJTdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+U3VyZmFjZUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5TeXN0ZW1JbXBsPC9BPgorPEJSPgorPEEgSFJFRj0iVHJhbnNpdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPlRyYW5zaXRpb25JbXBsPC9BPgorPEJSPgorPEEgSFJFRj0iV2F0ZXJTdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+V2F0ZXJTdXJmYWNlSW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9IldoZWVsU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiIHRhcmdldD0iY2xhc3NGcmFtZSI+V2hlZWxTeXN0ZW1JbXBsPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+CisKKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODJmYzFiMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwKQEAgLTAsMCArMSwzNTAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwgcGFja2FnZSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlBhY2thZ2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5QUkVWIFBBQ0tBR0U8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPk5FWFQgUEFDS0FHRTwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxIMj4KK1BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwKKzwvSDI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+Q2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BY3R1YXRvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BY3R1YXRvclN5c3RlbUltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFjdHVhdG9yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkFnZW50SW1wbDwvQT48L0I+PC9URD4KKzxURD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QWdlbnQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QWxnb3JpdGhtSW1wbDwvQT48L0I+PC9URD4KKzxURD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QWxnb3JpdGhtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5BbGdvcml0aG1MaWJyYXJ5SW1wbDwvQT48L0I+PC9URD4KKzxURD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QWxnb3JpdGhtIExpYnJhcnk8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+QmxlbmRlck1vcnNlSW1wbDwvQT48L0I+PC9URD4KKzxURD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QmxlbmRlciBNb3JzZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0J1aWxkaW5nSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkJ1aWxkaW5nSW1wbDwvQT48L0I+PC9URD4KKzxURD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QnVpbGRpbmc8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q2FtZXJhU3lzdGVtSW1wbDwvQT48L0I+PC9URD4KKzxURD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q2FtZXJhIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbGxlY3Rpb25JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q29sbGVjdGlvbkltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNvbGxlY3Rpb248L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db21wb3NlZERhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q29tcG9zZWREYXRhSW1wbDwvQT48L0I+PC9URD4KKzxURD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q29tcG9zZWQgRGF0YTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Q3ljYWJUS0ltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkN5Y2FiIFRLPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRGF0YUZsb3dQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkRhdGFGbG93UG9ydEltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkRhdGEgRmxvdyBQb3J0PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkVuZ2luZVN5c3RlbUltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkVuZ2luZSBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbnZpcm9ubWVudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5FbnZpcm9ubWVudEltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkVudmlyb25tZW50PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRmxvb3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Rmxvb3JJbXBsPC9BPjwvQj48L1REPgorPFREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5GbG9vcjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dQU1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5HUFNTeXN0ZW1JbXBsPC9BPjwvQj48L1REPgorPFREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5HUFMgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR3JvdW5kSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkdyb3VuZEltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkdyb3VuZDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0hhcmR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPkhhcmR3YXJlSW1wbDwvQT48L0I+PC9URD4KKzxURD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SGFyZHdhcmU8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IdW1hbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5IdW1hbkltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkh1bWFuPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+SW1hZ2VTZW5zb3JTeXN0ZW1JbXBsPC9BPjwvQj48L1REPgorPFREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5JbWFnZSBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGFuZFN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+TGFuZFN1cmZhY2VJbXBsPC9BPjwvQj48L1REPgorPFREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5MYW5kIFN1cmZhY2U8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5MaWRhclN5c3RlbUltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxpZGFyIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsPC9BPjwvQj48L1REPgorPFREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Mb2NhbGl6YXRpb24gU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsPC9BPjwvQj48L1REPgorPFREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5PYmplY3QgRGV0ZWN0aW9uIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9iamVjdCBUcmFja2luZyBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT25Qb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPk9uUG9ydEltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9uIFBvcnQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QZWRlc3RyaWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBlZGVzdHJpYW5JbXBsPC9BPjwvQj48L1REPgorPFREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QZWRlc3RyaWFuPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxEYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlBoeXNpY2FsRGF0YUltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBoeXNpY2FsIERhdGE8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QaHlzaWNhbE9iamVjdEltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBoeXNpY2FsIE9iamVjdDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYW5ldEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QbGFuZXRJbXBsPC9BPjwvQj48L1REPgorPFREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QbGFuZXQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5QbGF0Zm9ybUltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBsYXRmb3JtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5Qb3J0SW1wbDwvQT48L0I+PC9URD4KKzxURD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UG9ydDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1ByaW1pdGl2ZURhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+UHJpbWl0aXZlRGF0YUltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlByaW1pdGl2ZSBEYXRhPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY01pZGRsZXdhcmVJbXBsPC9BPjwvQj48L1REPgorPFREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Sb2JvdGljIE1pZGRsZXdhcmU8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU2ltdWxhdG9ySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90aWNTaW11bGF0b3JJbXBsPC9BPjwvQj48L1REPgorPFREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Sb2JvdGljIFNpbXVsYXRvcjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RpY1N5c3RlbUltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90aWMgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+Um9ib3RJbXBsPC9BPjwvQj48L1REPgorPFREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Sb2JvdDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxGYWN0b3J5SW1wbDwvQT48L0I+PC9URD4KKzxURD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgPGI+RmFjdG9yeTwvYj48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlJvYm90TUxQYWNrYWdlSW1wbDwvQT48L0I+PC9URD4KKzxURD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgPGI+UGFja2FnZTwvYj48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvckRyaXZlckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZW5zb3JEcml2ZXJJbXBsPC9BPjwvQj48L1REPgorPFREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TZW5zb3IgRHJpdmVyPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlNlbnNvclN5c3RlbUltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZXJ2aWNlUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TZXJ2aWNlUG9ydEltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNlcnZpY2UgUG9ydDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NpbXVsYXRlZFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TaW11bGF0ZWRTeXN0ZW1JbXBsPC9BPjwvQj48L1REPgorPFREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TaW11bGF0ZWQgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+U29mdHdhcmVJbXBsPC9BPjwvQj48L1REPgorPFREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Tb2Z0d2FyZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YWlyc0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TdGFpcnNJbXBsPC9BPjwvQj48L1REPgorPFREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TdGFpcnM8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TdGF0ZUltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlN0YXRlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TdXJmYWNlSW1wbDwvQT48L0I+PC9URD4KKzxURD5BbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3VyZmFjZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5TeXN0ZW1JbXBsPC9BPjwvQj48L1REPgorPFREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPlRyYW5zaXRpb25JbXBsPC9BPjwvQj48L1REPgorPFREPkFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5UcmFuc2l0aW9uPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2F0ZXJTdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPldhdGVyU3VyZmFjZUltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPldhdGVyIFN1cmZhY2U8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XaGVlbFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj5XaGVlbFN5c3RlbUltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPldoZWVsIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKworPFA+Cis8REw+Cis8L0RMPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdXNlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPlBSRVYgUEFDS0FHRTwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+TkVYVCBQQUNLQUdFPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2UtdHJlZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZTFjYzYwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbApAQCAtMCwwICsxLDI1NyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwgQ2xhc3MgSGllcmFyY2h5Cis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwgQ2xhc3MgSGllcmFyY2h5IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5UcmVlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS10cmVlLmh0bWwiPjxCPlBSRVY8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS10cmVlLmh0bWwiPjxCPk5FWFQ8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorSGllcmFyY2h5IEZvciBQYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsCis8L0gyPgorPC9DRU5URVI+Cis8REw+Cis8RFQ+PEI+UGFja2FnZSBIaWVyYXJjaGllczo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+QWxsIFBhY2thZ2VzPC9BPjwvREw+Cis8SFI+Cis8SDI+CitDbGFzcyBIaWVyYXJjaHkKKzwvSDI+Cis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5qYXZhLmxhbmcuT2JqZWN0PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcikKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkJhc2ljRU9iamVjdEltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3QpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FT2JqZWN0SW1wbCAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5BbGdvcml0aG1JbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT4pCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1MaWJyYXJ5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkFsZ29yaXRobUxpYnJhcnlJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG1MaWJyYXJ5PC9BPikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbGxlY3Rpb25JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+Q29sbGVjdGlvbkltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbGxlY3Rpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNvbGxlY3Rpb248L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29tcG9zZWREYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkNvbXBvc2VkRGF0YUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbXBvc2VkRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q29tcG9zZWREYXRhPC9BPikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5PblBvcnRJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9uUG9ydDwvQT4pCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbERhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UGh5c2ljYWxEYXRhSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbERhdGE8L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Qb3J0SW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UG9ydDwvQT4pCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9EYXRhRmxvd1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+RGF0YUZsb3dQb3J0SW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd1BvcnQ8L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+U2VydmljZVBvcnRJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZVBvcnQ8L0E+KQorPC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1ByaW1pdGl2ZURhdGFJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UHJpbWl0aXZlRGF0YUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlByaW1pdGl2ZURhdGE8L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhdGVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+U3RhdGVJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3RhdGU8L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlN5c3RlbUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPikKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Vudmlyb25tZW50SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkVudmlyb25tZW50SW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVudmlyb25tZW50PC9BPikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0hhcmR3YXJlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkhhcmR3YXJlSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSGFyZHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkhhcmR3YXJlPC9BPikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBoeXNpY2FsT2JqZWN0SW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPikKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FnZW50SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkFnZW50SW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPikKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0h1bWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkh1bWFuSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSHVtYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkh1bWFuPC9BPikKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BlZGVzdHJpYW5JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UGVkZXN0cmlhbkltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBlZGVzdHJpYW48L0E+KQorPC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlJvYm90SW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90PC9BPikKKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CdWlsZGluZ0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5CdWlsZGluZ0ltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0J1aWxkaW5nLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5CdWlsZGluZzwvQT4pCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGFuZXRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UGxhbmV0SW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhbmV0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGFuZXQ8L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3VyZmFjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5TdXJmYWNlSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3VyZmFjZTwvQT4pCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Hcm91bmRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+R3JvdW5kSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Hcm91bmQ8L0E+KQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRmxvb3JJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+Rmxvb3JJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Rmxvb3I8L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGFuZFN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TGFuZFN1cmZhY2VJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGFuZFN1cmZhY2U8L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RhaXJzSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlN0YWlyc0ltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3RhaXJzPC9BPikKKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XYXRlclN1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+V2F0ZXJTdXJmYWNlSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XYXRlclN1cmZhY2U8L0E+KQorPC9VTD4KKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGF0Zm9ybUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QbGF0Zm9ybUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGF0Zm9ybTwvQT4pCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljTWlkZGxld2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Sb2JvdGljTWlkZGxld2FyZUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZTwvQT4pCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU2ltdWxhdG9ySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlJvYm90aWNTaW11bGF0b3JJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU2ltdWxhdG9yPC9BPikKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0JsZW5kZXJNb3JzZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5CbGVuZGVyTW9yc2VJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJsZW5kZXJNb3JzZTwvQT4pCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWNhYlRLSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkN5Y2FiVEtJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DeWNhYlRLPC9BPikKKzwvVUw+Cis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Sb2JvdGljU3lzdGVtSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT4pCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BY3R1YXRvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5BY3R1YXRvclN5c3RlbUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdG9yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BY3R1YXRvclN5c3RlbTwvQT4pCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+RW5naW5lU3lzdGVtSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5FbmdpbmVTeXN0ZW08L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2hlZWxTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+V2hlZWxTeXN0ZW1JbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+KQorPC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5TZW5zb3JTeXN0ZW1JbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvclN5c3RlbTwvQT4pCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9JbWFnZVNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5JbWFnZVNlbnNvclN5c3RlbUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5JbWFnZVNlbnNvclN5c3RlbTwvQT4pCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+Q2FtZXJhU3lzdGVtSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+KQorPC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQT4pCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HUFNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+R1BTU3lzdGVtSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5HUFNTeXN0ZW08L0E+KQorPC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQT4pCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5MaWRhclN5c3RlbUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MaWRhclN5c3RlbTwvQT4pCis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+KQorPC9VTD4KKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Tb2Z0d2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Tb2Z0d2FyZUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Tb2Z0d2FyZTwvQT4pCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JEcml2ZXJJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+U2Vuc29yRHJpdmVySW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yRHJpdmVyLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JEcml2ZXI8L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2ltdWxhdGVkU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlNpbXVsYXRlZFN5c3RlbUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2ltdWxhdGVkU3lzdGVtPC9BPikKKzwvVUw+Cis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5UcmFuc2l0aW9uSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VHJhbnNpdGlvbjwvQT4pCis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsIChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVN0cnVjdHVyYWxGZWF0dXJlLkludGVybmFsLkR5bmFtaWNWYWx1ZUhvbGRlcikKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXI8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTW9kZWxFbGVtZW50SW1wbCAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudCkKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVGYWN0b3J5SW1wbCAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3RvcnkpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Sb2JvdE1MRmFjdG9yeUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MRmFjdG9yeTwvQT4pCis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5hbWVkRWxlbWVudEltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVOYW1lZEVsZW1lbnQpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FUGFja2FnZUltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuQmFzaWNFeHRlbmRlZE1ldGFEYXRhLkVQYWNrYWdlRXh0ZW5kZWRNZXRhRGF0YS5Ib2xkZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZSkKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlJvYm90TUxQYWNrYWdlSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPikKKzwvVUw+Cis8L1VMPgorPC9VTD4KKzwvVUw+Cis8L1VMPgorPC9VTD4KKzwvVUw+Cis8L1VMPgorPC9VTD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlRyZWU8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXRyZWUuaHRtbCI+PEI+UFJFVjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXRyZWUuaHRtbCI+PEI+TkVYVDwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXVzZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXVzZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA0YTdkZmIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2UtdXNlLmh0bWwKQEAgLTAsMCArMSwyNTYgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMyBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgUGFja2FnZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDwvQj48L0gyPgorPC9DRU5URVI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorUGFja2FnZXMgdGhhdCB1c2UgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorQ2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+IHVzZWQgYnkgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9BY3R1YXRvclN5c3RlbUltcGwuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+QWN0dWF0b3JTeXN0ZW1JbXBsPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BY3R1YXRvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvQWdlbnRJbXBsLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkFnZW50SW1wbDwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QWdlbnQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvR3JvdW5kSW1wbC5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Hcm91bmRJbXBsPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Hcm91bmQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvSHVtYW5JbXBsLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkh1bWFuSW1wbDwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SHVtYW48L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkltYWdlU2Vuc29yU3lzdGVtSW1wbDwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SW1hZ2UgU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGw8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxvY2FsaXphdGlvbiBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbDwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T2JqZWN0IERldGVjdGlvbiBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1BoeXNpY2FsT2JqZWN0SW1wbC5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QaHlzaWNhbE9iamVjdEltcGw8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBoeXNpY2FsIE9iamVjdDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9QbGF0Zm9ybUltcGwuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UGxhdGZvcm1JbXBsPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QbGF0Zm9ybTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Qb3J0SW1wbC5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Qb3J0SW1wbDwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UG9ydDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Sb2JvdGljU2ltdWxhdG9ySW1wbC5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Sb2JvdGljU2ltdWxhdG9ySW1wbDwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Um9ib3RpYyBTaW11bGF0b3I8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9jbGFzcy11c2UvUm9ib3RpY1N5c3RlbUltcGwuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+Um9ib3RpY1N5c3RlbUltcGw8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90aWMgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvY2xhc3MtdXNlL1NlbnNvclN5c3RlbUltcGwuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+U2Vuc29yU3lzdGVtSW1wbDwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9Tb2Z0d2FyZUltcGwuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+U29mdHdhcmVJbXBsPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0FuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Tb2Z0d2FyZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9TdXJmYWNlSW1wbC5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5TdXJmYWNlSW1wbDwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3VyZmFjZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL2NsYXNzLXVzZS9TeXN0ZW1JbXBsLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlN5c3RlbUltcGw8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLWZyYW1lLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLWZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjdjZGY2OAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2UtZnJhbWUuaHRtbApAQCAtMCwwICsxLDE1NyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIHBhY2thZ2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSI+Cis8Rk9OVCBzaXplPSIrMSIgQ0xBU1M9IkZyYW1lVGl0bGVGb250Ij4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgTk9XUkFQPjxGT05UIHNpemU9IisxIiBDTEFTUz0iRnJhbWVIZWFkaW5nRm9udCI+CitJbnRlcmZhY2VzPC9GT05UPiZuYnNwOworPEZPTlQgQ0xBU1M9IkZyYW1lSXRlbUZvbnQiPgorPEJSPgorPEEgSFJFRj0iQWN0dWF0b3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+QWN0dWF0b3JTeXN0ZW08L0k+PC9BPgorPEJSPgorPEEgSFJFRj0iQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+QWdlbnQ8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0iQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPkFsZ29yaXRobTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJBbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPkFsZ29yaXRobUxpYnJhcnk8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0iQmxlbmRlck1vcnNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPkJsZW5kZXJNb3JzZTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJCdWlsZGluZy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5CdWlsZGluZzwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJDYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+Q2FtZXJhU3lzdGVtPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9IkNvbGxlY3Rpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+Q29sbGVjdGlvbjwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJDb21wb3NlZERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+Q29tcG9zZWREYXRhPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9IkN5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+Q3ljYWJUSzwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJEYXRhRmxvd1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+RGF0YUZsb3dQb3J0PC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9IkVuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5FbmdpbmVTeXN0ZW08L0k+PC9BPgorPEJSPgorPEEgSFJFRj0iRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+RW52aXJvbm1lbnQ8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0iRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+Rmxvb3I8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0iR1BTU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPkdQU1N5c3RlbTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJHcm91bmQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+R3JvdW5kPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9IkhhcmR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPkhhcmR3YXJlPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9Ikh1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPkh1bWFuPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9IkltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPkltYWdlU2Vuc29yU3lzdGVtPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9IkxhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPkxhbmRTdXJmYWNlPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9IkxpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPkxpZGFyU3lzdGVtPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9IkxvY2FsaXphdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0k+PC9BPgorPEJSPgorPEEgSFJFRj0iT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJPblBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+T25Qb3J0PC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9IlBlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+UGVkZXN0cmlhbjwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJQaHlzaWNhbERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+UGh5c2ljYWxEYXRhPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9IlBoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPlBoeXNpY2FsT2JqZWN0PC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9IlBsYW5ldC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5QbGFuZXQ8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0iUGxhdGZvcm0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+UGxhdGZvcm08L0k+PC9BPgorPEJSPgorPEEgSFJFRj0iUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5Qb3J0PC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9IlByaW1pdGl2ZURhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+UHJpbWl0aXZlRGF0YTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJSb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5Sb2JvdDwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJSb2JvdGljTWlkZGxld2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5Sb2JvdGljTWlkZGxld2FyZTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJSb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPlJvYm90aWNTaW11bGF0b3I8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0iUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5Sb2JvdGljU3lzdGVtPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9IlJvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPlJvYm90TUxGYWN0b3J5PC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9IlJvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPlJvYm90TUxQYWNrYWdlPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9IlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9IlNlbnNvckRyaXZlci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5TZW5zb3JEcml2ZXI8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0iU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPlNlbnNvclN5c3RlbTwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJTZXJ2aWNlUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5TZXJ2aWNlUG9ydDwvST48L0E+Cis8QlI+Cis8QSBIUkVGPSJTaW11bGF0ZWRTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+U2ltdWxhdGVkU3lzdGVtPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9IlNvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPjxJPlNvZnR3YXJlPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9IlN0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5TdGFpcnM8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0iU3RhdGUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+U3RhdGU8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0iU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5TdXJmYWNlPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9IlN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5TeXN0ZW08L0k+PC9BPgorPEJSPgorPEEgSFJFRj0iVHJhbnNpdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5UcmFuc2l0aW9uPC9JPjwvQT4KKzxCUj4KKzxBIEhSRUY9IldhdGVyU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj48ST5XYXRlclN1cmZhY2U8L0k+PC9BPgorPEJSPgorPEEgSFJFRj0iV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+PEk+V2hlZWxTeXN0ZW08L0k+PC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+CisKKworPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgTk9XUkFQPjxGT05UIHNpemU9IisxIiBDTEFTUz0iRnJhbWVIZWFkaW5nRm9udCI+CitFbnVtczwvRk9OVD4mbmJzcDsKKzxGT05UIENMQVNTPSJGcmFtZUl0ZW1Gb250Ij4KKzxCUj4KKzxBIEhSRUY9IkRhdGFGbG93RGlyZWN0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9BPgorPEJSPgorPEEgSFJFRj0iUm9ib3RpY01pZGRsZXdhcmVLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0E+Cis8QlI+Cis8QSBIUkVGPSJSb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPlJvYm90S2luZDwvQT4KKzxCUj4KKzxBIEhSRUY9IlNlcnZpY2VGbG93S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+U2VydmljZUZsb3dLaW5kPC9BPgorPEJSPgorPEEgSFJFRj0iU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPlNoYWRlPC9BPgorPEJSPgorPEEgSFJFRj0iU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+U3luY2hyb25pemF0aW9uS2luZDwvQT4KKzxCUj4KKzxBIEhSRUY9IlVHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPlVHVktpbmQ8L0E+Cis8QlI+Cis8QSBIUkVGPSJVbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiIHRhcmdldD0iY2xhc3NGcmFtZSI+VW5pdEtpbmQ8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKworCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjMyMDI1NzMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbApAQCAtMCwwICsxLDQxMSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIHBhY2thZ2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdXNlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5QUkVWIFBBQ0tBR0U8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPk5FWFQgUEFDS0FHRTwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8SDI+CitQYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTAorPC9IMj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5JbnRlcmZhY2UgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWN0dWF0b3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFjdHVhdG9yU3lzdGVtPC9BPjwvQj48L1REPgorPFREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFjdHVhdG9yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWdlbnQ8L0E+PC9CPjwvVEQ+Cis8VEQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QWdlbnQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG08L0E+PC9CPjwvVEQ+Cis8VEQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QWxnb3JpdGhtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobUxpYnJhcnk8L0E+PC9CPjwvVEQ+Cis8VEQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QWxnb3JpdGhtIExpYnJhcnk8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5CbGVuZGVyTW9yc2U8L0E+PC9CPjwvVEQ+Cis8VEQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QmxlbmRlciBNb3JzZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CdWlsZGluZy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QnVpbGRpbmc8L0E+PC9CPjwvVEQ+Cis8VEQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QnVpbGRpbmc8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+PC9CPjwvVEQ+Cis8VEQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q2FtZXJhIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Db2xsZWN0aW9uPC9BPjwvQj48L1REPgorPFREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNvbGxlY3Rpb248L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcG9zZWREYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Db21wb3NlZERhdGE8L0E+PC9CPjwvVEQ+Cis8VEQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q29tcG9zZWQgRGF0YTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DeWNhYlRLPC9BPjwvQj48L1REPgorPFREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkN5Y2FiIFRLPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dQb3J0PC9BPjwvQj48L1REPgorPFREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkRhdGEgRmxvdyBQb3J0PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW5naW5lU3lzdGVtPC9BPjwvQj48L1REPgorPFREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkVuZ2luZSBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVudmlyb25tZW50PC9BPjwvQj48L1REPgorPFREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkVudmlyb25tZW50PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5GbG9vcjwvQT48L0I+PC9URD4KKzxURD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5GbG9vcjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkdQU1N5c3RlbTwvQT48L0I+PC9URD4KKzxURD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5HUFMgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+R3JvdW5kPC9BPjwvQj48L1REPgorPFREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkdyb3VuZDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IYXJkd2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SGFyZHdhcmU8L0E+PC9CPjwvVEQ+Cis8VEQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SGFyZHdhcmU8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSHVtYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkh1bWFuPC9BPjwvQj48L1REPgorPFREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkh1bWFuPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5JbWFnZVNlbnNvclN5c3RlbTwvQT48L0I+PC9URD4KKzxURD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5JbWFnZSBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5MYW5kU3VyZmFjZTwvQT48L0I+PC9URD4KKzxURD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5MYW5kIFN1cmZhY2U8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxpZGFyU3lzdGVtPC9BPjwvQj48L1REPgorPFREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxpZGFyIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQT48L0I+PC9URD4KKzxURD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Mb2NhbGl6YXRpb24gU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQT48L0I+PC9URD4KKzxURD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5PYmplY3QgRGV0ZWN0aW9uIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9BPjwvQj48L1REPgorPFREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9iamVjdCBUcmFja2luZyBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T25Qb3J0PC9BPjwvQj48L1REPgorPFREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9uIFBvcnQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGVkZXN0cmlhbjwvQT48L0I+PC9URD4KKzxURD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QZWRlc3RyaWFuPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxEYXRhPC9BPjwvQj48L1REPgorPFREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBoeXNpY2FsIERhdGE8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsT2JqZWN0PC9BPjwvQj48L1REPgorPFREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBoeXNpY2FsIE9iamVjdDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGFuZXQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBsYW5ldDwvQT48L0I+PC9URD4KKzxURD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QbGFuZXQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBsYXRmb3JtPC9BPjwvQj48L1REPgorPFREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBsYXRmb3JtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBvcnQ8L0E+PC9CPjwvVEQ+Cis8VEQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UG9ydDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QcmltaXRpdmVEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QcmltaXRpdmVEYXRhPC9BPjwvQj48L1REPgorPFREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlByaW1pdGl2ZSBEYXRhPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdDwvQT48L0I+PC9URD4KKzxURD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Sb2JvdDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmU8L0E+PC9CPjwvVEQ+Cis8VEQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Um9ib3RpYyBNaWRkbGV3YXJlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTaW11bGF0b3I8L0E+PC9CPjwvVEQ+Cis8VEQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Um9ib3RpYyBTaW11bGF0b3I8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1N5c3RlbTwvQT48L0I+PC9URD4KKzxURD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Sb2JvdGljIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+PC9CPjwvVEQ+Cis8VEQ+VGhlIDxiPkZhY3Rvcnk8L2I+IGZvciB0aGUgbW9kZWwuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90TUxQYWNrYWdlPC9BPjwvQj48L1REPgorPFREPlRoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhlIG1vZGVsLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZS5MaXRlcmFsczwvQT48L0I+PC9URD4KKzxURD5EZWZpbmVzIGxpdGVyYWxzIGZvciB0aGUgbWV0YSBvYmplY3RzIHRoYXQgcmVwcmVzZW50CisgCisgZWFjaCBjbGFzcywKKyBlYWNoIGZlYXR1cmUgb2YgZWFjaCBjbGFzcywKKyBlYWNoIGVudW0sCisgYW5kIGVhY2ggZGF0YSB0eXBlCisgCisgPCE8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JEcml2ZXIuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlbnNvckRyaXZlcjwvQT48L0I+PC9URD4KKzxURD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TZW5zb3IgRHJpdmVyPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPjwvQj48L1REPgorPFREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VQb3J0PC9BPjwvQj48L1REPgorPFREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNlcnZpY2UgUG9ydDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNpbXVsYXRlZFN5c3RlbTwvQT48L0I+PC9URD4KKzxURD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TaW11bGF0ZWQgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Tb2Z0d2FyZTwvQT48L0I+PC9URD4KKzxURD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Tb2Z0d2FyZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YWlyczwvQT48L0I+PC9URD4KKzxURD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TdGFpcnM8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YXRlPC9BPjwvQj48L1REPgorPFREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlN0YXRlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+PC9CPjwvVEQ+Cis8VEQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3VyZmFjZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT48L0I+PC9URD4KKzxURD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VHJhbnNpdGlvbjwvQT48L0I+PC9URD4KKzxURD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5UcmFuc2l0aW9uPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2F0ZXJTdXJmYWNlPC9BPjwvQj48L1REPgorPFREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPldhdGVyIFN1cmZhY2U8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPjwvQj48L1REPgorPFREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPldoZWVsIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKworPFA+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+RW51bSBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0E+PC9CPjwvVEQ+Cis8VEQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbGl0ZXJhbHMgb2YgdGhlIGVudW1lcmF0aW9uICc8ZW0+PGI+RGF0YSBGbG93IERpcmVjdGlvbiBLaW5kPC9iPjwvZW0+JywKKyBhbmQgdXRpbGl0eSBtZXRob2RzIGZvciB3b3JraW5nIHdpdGggdGhlbTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQT48L0I+PC9URD4KKzxURD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBsaXRlcmFscyBvZiB0aGUgZW51bWVyYXRpb24gJzxlbT48Yj5Sb2JvdGljIE1pZGRsZXdhcmUgS2luZDwvYj48L2VtPicsCisgYW5kIHV0aWxpdHkgbWV0aG9kcyBmb3Igd29ya2luZyB3aXRoIHRoZW08L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdEtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdEtpbmQ8L0E+PC9CPjwvVEQ+Cis8VEQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbGl0ZXJhbHMgb2YgdGhlIGVudW1lcmF0aW9uICc8ZW0+PGI+Um9ib3QgS2luZDwvYj48L2VtPicsCisgYW5kIHV0aWxpdHkgbWV0aG9kcyBmb3Igd29ya2luZyB3aXRoIHRoZW08L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlRmxvd0tpbmQ8L0E+PC9CPjwvVEQ+Cis8VEQ+QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbGl0ZXJhbHMgb2YgdGhlIGVudW1lcmF0aW9uICc8ZW0+PGI+U2VydmljZSBGbG93IEtpbmQ8L2I+PC9lbT4nLAorIGFuZCB1dGlsaXR5IG1ldGhvZHMgZm9yIHdvcmtpbmcgd2l0aCB0aGVtPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaGFkZTwvQT48L0I+PC9URD4KKzxURD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBsaXRlcmFscyBvZiB0aGUgZW51bWVyYXRpb24gJzxlbT48Yj5TaGFkZTwvYj48L2VtPicsCisgYW5kIHV0aWxpdHkgbWV0aG9kcyBmb3Igd29ya2luZyB3aXRoIHRoZW08L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3luY2hyb25pemF0aW9uS2luZDwvQT48L0I+PC9URD4KKzxURD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBsaXRlcmFscyBvZiB0aGUgZW51bWVyYXRpb24gJzxlbT48Yj5TeW5jaHJvbml6YXRpb24gS2luZDwvYj48L2VtPicsCisgYW5kIHV0aWxpdHkgbWV0aG9kcyBmb3Igd29ya2luZyB3aXRoIHRoZW08L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+VUdWS2luZDwvQT48L0I+PC9URD4KKzxURD5BIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBsaXRlcmFscyBvZiB0aGUgZW51bWVyYXRpb24gJzxlbT48Yj5VR1YgS2luZDwvYj48L2VtPicsCisgYW5kIHV0aWxpdHkgbWV0aG9kcyBmb3Igd29ya2luZyB3aXRoIHRoZW08L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlVuaXRLaW5kPC9BPjwvQj48L1REPgorPFREPkEgcmVwcmVzZW50YXRpb24gb2YgdGhlIGxpdGVyYWxzIG9mIHRoZSBlbnVtZXJhdGlvbiAnPGVtPjxiPlVuaXQgS2luZDwvYj48L2VtPicsCisgYW5kIHV0aWxpdHkgbWV0aG9kcyBmb3Igd29ya2luZyB3aXRoIHRoZW08L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKworPFA+Cis8REw+Cis8L0RMPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdXNlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5QUkVWIFBBQ0tBR0U8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPk5FWFQgUEFDS0FHRTwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2UtdHJlZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS10cmVlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzA2Y2JmNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2UtdHJlZS5odG1sCkBAIC0wLDAgKzEsMjE1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwgQ2xhc3MgSGllcmFyY2h5Cis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIENsYXNzIEhpZXJhcmNoeSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VHJlZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbCI+PEI+UFJFVjwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbCI+PEI+TkVYVDwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorSGllcmFyY2h5IEZvciBQYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTAorPC9IMj4KKzwvQ0VOVEVSPgorPERMPgorPERUPjxCPlBhY2thZ2UgSGllcmFyY2hpZXM6PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy10cmVlLmh0bWwiPkFsbCBQYWNrYWdlczwvQT48L0RMPgorPEhSPgorPEgyPgorSW50ZXJmYWNlIEhpZXJhcmNoeQorPC9IMj4KKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+QWxnb3JpdGhtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkFsZ29yaXRobUxpYnJhcnk8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q29sbGVjdGlvbjwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkNvbXBvc2VkRGF0YTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQ8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3Rvcnk8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdE1MRmFjdG9yeTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTmFtZWRFbGVtZW50PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3RNTFBhY2thZ2U8L0I+PC9BPjwvVUw+Cis8L1VMPgorPC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5PblBvcnQ8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QaHlzaWNhbERhdGE8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UG9ydDwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkRhdGFGbG93UG9ydDwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2VydmljZVBvcnQ8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlByaW1pdGl2ZURhdGE8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlN0YXRlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Vudmlyb25tZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5FbnZpcm9ubWVudDwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IYXJkd2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+SGFyZHdhcmU8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxPYmplY3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBoeXNpY2FsT2JqZWN0PC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5BZ2VudDwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+SHVtYW48L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UGVkZXN0cmlhbjwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90PC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPikKKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0J1aWxkaW5nLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5CdWlsZGluZzwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGFuZXQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBsYW5ldDwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TdXJmYWNlPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R3JvdW5kPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5GbG9vcjwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGFuZFN1cmZhY2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TdGFpcnM8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+V2F0ZXJTdXJmYWNlPC9CPjwvQT48L1VMPgorPC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBsYXRmb3JtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdGljTWlkZGxld2FyZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdGljU2ltdWxhdG9yPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+QmxlbmRlck1vcnNlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkN5Y2FiVEs8L0I+PC9BPjwvVUw+Cis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3Q8L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3RpY1N5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+QWN0dWF0b3JTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5FbmdpbmVTeXN0ZW08L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPldoZWVsU3lzdGVtPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9JbWFnZVNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+SW1hZ2VTZW5zb3JTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5DYW1lcmFTeXN0ZW08L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xvY2FsaXphdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R1BTU3lzdGVtPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGlkYXJTeXN0ZW08L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9BPikKKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGlkYXJTeXN0ZW08L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0E+KQorPC9VTD4KKzwvVUw+Cis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U29mdHdhcmU8L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yRHJpdmVyLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TZW5zb3JEcml2ZXI8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TaW11bGF0ZWRTeXN0ZW08L0I+PC9BPjwvVUw+Cis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5UcmFuc2l0aW9uPC9CPjwvQT48L1VMPgorPC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9CPjwvQT48L1VMPgorPEgyPgorRW51bSBIaWVyYXJjaHkKKzwvSDI+Cis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5qYXZhLmxhbmcuT2JqZWN0PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+amF2YS5sYW5nLkVudW0mbHQ7RSZndDsgKGltcGxlbWVudHMgamF2YS5sYW5nLkNvbXBhcmFibGUmbHQ7VCZndDssIGphdmEuaW8uU2VyaWFsaXphYmxlKQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Vbml0S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlVuaXRLaW5kPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3IpCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5VR1ZLaW5kPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3IpCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TeW5jaHJvbml6YXRpb25LaW5kPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3IpCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2hhZGU8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2VydmljZUZsb3dLaW5kPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3IpCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90S2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90S2luZDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FbnVtZXJhdG9yKQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+RGF0YUZsb3dEaXJlY3Rpb25LaW5kPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3IpCis8L1VMPgorPC9VTD4KKzwvVUw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlVzZTwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5UcmVlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdHJlZS5odG1sIj48Qj5QUkVWPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2UtdHJlZS5odG1sIj48Qj5ORVhUPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS11c2UuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2UtdXNlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmE5ZDcxNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2UtdXNlLmh0bWwKQEAgLTAsMCArMSwxMjExIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIFBhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBQYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIFBhY2thZ2U8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9CPjwvQT48L1REPgorPFREPiZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEEgSFJFRj0iI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1czwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorQ2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gdXNlZCBieSA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0FjdHVhdG9yU3lzdGVtLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5BY3R1YXRvclN5c3RlbTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BY3R1YXRvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0FnZW50Lmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5BZ2VudDwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BZ2VudDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQWxnb3JpdGhtLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5BbGdvcml0aG08L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QWxnb3JpdGhtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5BbGdvcml0aG1MaWJyYXJ5PC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFsZ29yaXRobSBMaWJyYXJ5PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9CbGVuZGVyTW9yc2UuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkJsZW5kZXJNb3JzZTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5CbGVuZGVyIE1vcnNlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9CdWlsZGluZy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+QnVpbGRpbmc8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QnVpbGRpbmc8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0NhbWVyYVN5c3RlbS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q2FtZXJhU3lzdGVtPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNhbWVyYSBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0NvbGxlY3Rpb24uaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkNvbGxlY3Rpb248L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q29sbGVjdGlvbjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQ29tcG9zZWREYXRhLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Db21wb3NlZERhdGE8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q29tcG9zZWQgRGF0YTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQ3ljYWJUSy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q3ljYWJUSzwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5DeWNhYiBUSzwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbGl0ZXJhbHMgb2YgdGhlIGVudW1lcmF0aW9uICc8ZW0+PGI+RGF0YSBGbG93IERpcmVjdGlvbiBLaW5kPC9iPjwvZW0+JywKKyBhbmQgdXRpbGl0eSBtZXRob2RzIGZvciB3b3JraW5nIHdpdGggdGhlbTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9EYXRhRmxvd1BvcnQuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkRhdGFGbG93UG9ydDwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5EYXRhIEZsb3cgUG9ydDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvRW5naW5lU3lzdGVtLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5FbmdpbmVTeXN0ZW08L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+RW5naW5lIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvRW52aXJvbm1lbnQuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkVudmlyb25tZW50PC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkVudmlyb25tZW50PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9GbG9vci5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Rmxvb3I8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Rmxvb3I8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0dQU1N5c3RlbS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R1BTU3lzdGVtPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkdQUyBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0dyb3VuZC5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R3JvdW5kPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkdyb3VuZDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvSGFyZHdhcmUuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkhhcmR3YXJlPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkhhcmR3YXJlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9IdW1hbi5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+SHVtYW48L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SHVtYW48L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5JbWFnZVNlbnNvclN5c3RlbTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5JbWFnZSBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9MYW5kU3VyZmFjZS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGFuZFN1cmZhY2U8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TGFuZCBTdXJmYWNlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9MaWRhclN5c3RlbS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGlkYXJTeXN0ZW08L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TGlkYXIgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Mb2NhbGl6YXRpb24gU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T2JqZWN0IERldGVjdGlvbiBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T2JqZWN0IFRyYWNraW5nIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL09uUG9ydC5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+T25Qb3J0PC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9uIFBvcnQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1BlZGVzdHJpYW4uaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBlZGVzdHJpYW48L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGVkZXN0cmlhbjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUGh5c2ljYWxEYXRhLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QaHlzaWNhbERhdGE8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGh5c2ljYWwgRGF0YTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUGh5c2ljYWxPYmplY3QuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBoeXNpY2FsT2JqZWN0PC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBoeXNpY2FsIE9iamVjdDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUGxhbmV0Lmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QbGFuZXQ8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGxhbmV0PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9QbGF0Zm9ybS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UGxhdGZvcm08L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGxhdGZvcm08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1BvcnQuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBvcnQ8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UG9ydDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUHJpbWl0aXZlRGF0YS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UHJpbWl0aXZlRGF0YTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QcmltaXRpdmUgRGF0YTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUm9ib3QuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90PC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Sb2JvdGljTWlkZGxld2FyZS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3RpY01pZGRsZXdhcmU8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Um9ib3RpYyBNaWRkbGV3YXJlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Sb2JvdGljTWlkZGxld2FyZUtpbmQuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBsaXRlcmFscyBvZiB0aGUgZW51bWVyYXRpb24gJzxlbT48Yj5Sb2JvdGljIE1pZGRsZXdhcmUgS2luZDwvYj48L2VtPicsCisgYW5kIHV0aWxpdHkgbWV0aG9kcyBmb3Igd29ya2luZyB3aXRoIHRoZW08L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUm9ib3RpY1NpbXVsYXRvci5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3RpY1NpbXVsYXRvcjwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Sb2JvdGljIFNpbXVsYXRvcjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUm9ib3RpY1N5c3RlbS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3RpY1N5c3RlbTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Sb2JvdGljIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUm9ib3RLaW5kLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdEtpbmQ8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbGl0ZXJhbHMgb2YgdGhlIGVudW1lcmF0aW9uICc8ZW0+PGI+Um9ib3QgS2luZDwvYj48L2VtPicsCisgYW5kIHV0aWxpdHkgbWV0aG9kcyBmb3Igd29ya2luZyB3aXRoIHRoZW08L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUm9ib3RNTEZhY3RvcnkuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90TUxGYWN0b3J5PC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSA8Yj5GYWN0b3J5PC9iPiBmb3IgdGhlIG1vZGVsLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Sb2JvdE1MUGFja2FnZS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3RNTFBhY2thZ2U8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGUgbW9kZWwuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NlbnNvckRyaXZlci5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2Vuc29yRHJpdmVyPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNlbnNvciBEcml2ZXI8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NlbnNvclN5c3RlbS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2Vuc29yU3lzdGVtPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NlcnZpY2VGbG93S2luZC5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2VydmljZUZsb3dLaW5kPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIGxpdGVyYWxzIG9mIHRoZSBlbnVtZXJhdGlvbiAnPGVtPjxiPlNlcnZpY2UgRmxvdyBLaW5kPC9iPjwvZW0+JywKKyBhbmQgdXRpbGl0eSBtZXRob2RzIGZvciB3b3JraW5nIHdpdGggdGhlbTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9TZXJ2aWNlUG9ydC5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2VydmljZVBvcnQ8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U2VydmljZSBQb3J0PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9TaGFkZS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2hhZGU8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbGl0ZXJhbHMgb2YgdGhlIGVudW1lcmF0aW9uICc8ZW0+PGI+U2hhZGU8L2I+PC9lbT4nLAorIGFuZCB1dGlsaXR5IG1ldGhvZHMgZm9yIHdvcmtpbmcgd2l0aCB0aGVtPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NpbXVsYXRlZFN5c3RlbS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2ltdWxhdGVkU3lzdGVtPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNpbXVsYXRlZCBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NvZnR3YXJlLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Tb2Z0d2FyZTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Tb2Z0d2FyZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU3RhaXJzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TdGFpcnM8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3RhaXJzPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9TdGF0ZS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U3RhdGU8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3RhdGU8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1N1cmZhY2UuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlN1cmZhY2U8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3VyZmFjZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU3luY2hyb25pemF0aW9uS2luZC5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U3luY2hyb25pemF0aW9uS2luZDwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBsaXRlcmFscyBvZiB0aGUgZW51bWVyYXRpb24gJzxlbT48Yj5TeW5jaHJvbml6YXRpb24gS2luZDwvYj48L2VtPicsCisgYW5kIHV0aWxpdHkgbWV0aG9kcyBmb3Igd29ya2luZyB3aXRoIHRoZW08L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU3lzdGVtLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TeXN0ZW08L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9UcmFuc2l0aW9uLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5UcmFuc2l0aW9uPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlRyYW5zaXRpb248L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1VHVktpbmQuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlVHVktpbmQ8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbGl0ZXJhbHMgb2YgdGhlIGVudW1lcmF0aW9uICc8ZW0+PGI+VUdWIEtpbmQ8L2I+PC9lbT4nLAorIGFuZCB1dGlsaXR5IG1ldGhvZHMgZm9yIHdvcmtpbmcgd2l0aCB0aGVtPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1VuaXRLaW5kLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Vbml0S2luZDwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBsaXRlcmFscyBvZiB0aGUgZW51bWVyYXRpb24gJzxlbT48Yj5Vbml0IEtpbmQ8L2I+PC9lbT4nLAorIGFuZCB1dGlsaXR5IG1ldGhvZHMgZm9yIHdvcmtpbmcgd2l0aCB0aGVtPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1dhdGVyU3VyZmFjZS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+V2F0ZXJTdXJmYWNlPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPldhdGVyIFN1cmZhY2U8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1doZWVsU3lzdGVtLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5XaGVlbFN5c3RlbTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5XaGVlbCBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorQ2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gdXNlZCBieSA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9BY3R1YXRvclN5c3RlbS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5BY3R1YXRvclN5c3RlbTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BY3R1YXRvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0FnZW50Lmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkFnZW50PC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFnZW50PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9BbGdvcml0aG0uaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+QWxnb3JpdGhtPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFsZ29yaXRobTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQWxnb3JpdGhtTGlicmFyeS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5BbGdvcml0aG1MaWJyYXJ5PC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFsZ29yaXRobSBMaWJyYXJ5PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9CbGVuZGVyTW9yc2UuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+QmxlbmRlck1vcnNlPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkJsZW5kZXIgTW9yc2U8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0J1aWxkaW5nLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkJ1aWxkaW5nPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkJ1aWxkaW5nPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9DYW1lcmFTeXN0ZW0uaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+Q2FtZXJhU3lzdGVtPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNhbWVyYSBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0NvbGxlY3Rpb24uaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+Q29sbGVjdGlvbjwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Db2xsZWN0aW9uPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Db21wb3NlZERhdGEuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+Q29tcG9zZWREYXRhPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNvbXBvc2VkIERhdGE8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0N5Y2FiVEsuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+Q3ljYWJUSzwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5DeWNhYiBUSzwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkRhdGFGbG93RGlyZWN0aW9uS2luZDwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBsaXRlcmFscyBvZiB0aGUgZW51bWVyYXRpb24gJzxlbT48Yj5EYXRhIEZsb3cgRGlyZWN0aW9uIEtpbmQ8L2I+PC9lbT4nLAorIGFuZCB1dGlsaXR5IG1ldGhvZHMgZm9yIHdvcmtpbmcgd2l0aCB0aGVtPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0RhdGFGbG93UG9ydC5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5EYXRhRmxvd1BvcnQ8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+RGF0YSBGbG93IFBvcnQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0VuZ2luZVN5c3RlbS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5FbmdpbmVTeXN0ZW08L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+RW5naW5lIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvRW52aXJvbm1lbnQuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+RW52aXJvbm1lbnQ8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+RW52aXJvbm1lbnQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0Zsb29yLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkZsb29yPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkZsb29yPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9HUFNTeXN0ZW0uaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+R1BTU3lzdGVtPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkdQUyBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0dyb3VuZC5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Hcm91bmQ8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+R3JvdW5kPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9IYXJkd2FyZS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5IYXJkd2FyZTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5IYXJkd2FyZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvSHVtYW4uaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+SHVtYW48L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SHVtYW48L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkltYWdlU2Vuc29yU3lzdGVtPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkltYWdlIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0xhbmRTdXJmYWNlLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkxhbmRTdXJmYWNlPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxhbmQgU3VyZmFjZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvTGlkYXJTeXN0ZW0uaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TGlkYXJTeXN0ZW08L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TGlkYXIgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxvY2FsaXphdGlvbiBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T2JqZWN0IFRyYWNraW5nIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL09uUG9ydC5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5PblBvcnQ8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T24gUG9ydDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUGVkZXN0cmlhbi5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QZWRlc3RyaWFuPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBlZGVzdHJpYW48L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1BoeXNpY2FsRGF0YS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QaHlzaWNhbERhdGE8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGh5c2ljYWwgRGF0YTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUGh5c2ljYWxPYmplY3QuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UGh5c2ljYWxPYmplY3Q8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGh5c2ljYWwgT2JqZWN0PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9QbGFuZXQuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UGxhbmV0PC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBsYW5ldDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUGxhdGZvcm0uaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UGxhdGZvcm08L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGxhdGZvcm08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1BvcnQuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UG9ydDwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Qb3J0PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9QcmltaXRpdmVEYXRhLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlByaW1pdGl2ZURhdGE8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UHJpbWl0aXZlIERhdGE8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90Lmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlJvYm90PC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Sb2JvdGljTWlkZGxld2FyZS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Sb2JvdGljTWlkZGxld2FyZTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Sb2JvdGljIE1pZGRsZXdhcmU8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Sb2JvdGljTWlkZGxld2FyZUtpbmQ8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbGl0ZXJhbHMgb2YgdGhlIGVudW1lcmF0aW9uICc8ZW0+PGI+Um9ib3RpYyBNaWRkbGV3YXJlIEtpbmQ8L2I+PC9lbT4nLAorIGFuZCB1dGlsaXR5IG1ldGhvZHMgZm9yIHdvcmtpbmcgd2l0aCB0aGVtPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90aWNTaW11bGF0b3IuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+Um9ib3RpY1NpbXVsYXRvcjwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Sb2JvdGljIFNpbXVsYXRvcjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUm9ib3RpY1N5c3RlbS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Sb2JvdGljU3lzdGVtPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90aWMgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Sb2JvdEtpbmQuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+Um9ib3RLaW5kPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIGxpdGVyYWxzIG9mIHRoZSBlbnVtZXJhdGlvbiAnPGVtPjxiPlJvYm90IEtpbmQ8L2I+PC9lbT4nLAorIGFuZCB1dGlsaXR5IG1ldGhvZHMgZm9yIHdvcmtpbmcgd2l0aCB0aGVtPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90TUxGYWN0b3J5Lmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlJvYm90TUxGYWN0b3J5PC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSA8Yj5GYWN0b3J5PC9iPiBmb3IgdGhlIG1vZGVsLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Sb2JvdE1MUGFja2FnZS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Sb2JvdE1MUGFja2FnZTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoZSBtb2RlbC48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU2Vuc29yRHJpdmVyLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlNlbnNvckRyaXZlcjwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TZW5zb3IgRHJpdmVyPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9TZW5zb3JTeXN0ZW0uaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+U2Vuc29yU3lzdGVtPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NlcnZpY2VGbG93S2luZC5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5TZXJ2aWNlRmxvd0tpbmQ8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbGl0ZXJhbHMgb2YgdGhlIGVudW1lcmF0aW9uICc8ZW0+PGI+U2VydmljZSBGbG93IEtpbmQ8L2I+PC9lbT4nLAorIGFuZCB1dGlsaXR5IG1ldGhvZHMgZm9yIHdvcmtpbmcgd2l0aCB0aGVtPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NlcnZpY2VQb3J0Lmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlNlcnZpY2VQb3J0PC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNlcnZpY2UgUG9ydDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU2hhZGUuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+U2hhZGU8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbGl0ZXJhbHMgb2YgdGhlIGVudW1lcmF0aW9uICc8ZW0+PGI+U2hhZGU8L2I+PC9lbT4nLAorIGFuZCB1dGlsaXR5IG1ldGhvZHMgZm9yIHdvcmtpbmcgd2l0aCB0aGVtPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NpbXVsYXRlZFN5c3RlbS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5TaW11bGF0ZWRTeXN0ZW08L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U2ltdWxhdGVkIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU29mdHdhcmUuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+U29mdHdhcmU8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U29mdHdhcmU8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1N0YWlycy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5TdGFpcnM8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3RhaXJzPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9TdGF0ZS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5TdGF0ZTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TdGF0ZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU3VyZmFjZS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5TdXJmYWNlPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlN1cmZhY2U8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1N5bmNocm9uaXphdGlvbktpbmQuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+U3luY2hyb25pemF0aW9uS2luZDwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBsaXRlcmFscyBvZiB0aGUgZW51bWVyYXRpb24gJzxlbT48Yj5TeW5jaHJvbml6YXRpb24gS2luZDwvYj48L2VtPicsCisgYW5kIHV0aWxpdHkgbWV0aG9kcyBmb3Igd29ya2luZyB3aXRoIHRoZW08L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU3lzdGVtLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlN5c3RlbTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1RyYW5zaXRpb24uaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+VHJhbnNpdGlvbjwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5UcmFuc2l0aW9uPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9VR1ZLaW5kLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlVHVktpbmQ8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbGl0ZXJhbHMgb2YgdGhlIGVudW1lcmF0aW9uICc8ZW0+PGI+VUdWIEtpbmQ8L2I+PC9lbT4nLAorIGFuZCB1dGlsaXR5IG1ldGhvZHMgZm9yIHdvcmtpbmcgd2l0aCB0aGVtPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1VuaXRLaW5kLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlVuaXRLaW5kPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIGxpdGVyYWxzIG9mIHRoZSBlbnVtZXJhdGlvbiAnPGVtPjxiPlVuaXQgS2luZDwvYj48L2VtPicsCisgYW5kIHV0aWxpdHkgbWV0aG9kcyBmb3Igd29ya2luZyB3aXRoIHRoZW08L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvV2F0ZXJTdXJmYWNlLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPldhdGVyU3VyZmFjZTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5XYXRlciBTdXJmYWNlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9XaGVlbFN5c3RlbS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5XaGVlbFN5c3RlbTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5XaGVlbCBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorQ2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDwvQT4gdXNlZCBieSA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9BY3R1YXRvclN5c3RlbS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5BY3R1YXRvclN5c3RlbTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BY3R1YXRvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0FnZW50Lmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPkFnZW50PC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFnZW50PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9BbGdvcml0aG0uaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+QWxnb3JpdGhtPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFsZ29yaXRobTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvQWxnb3JpdGhtTGlicmFyeS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5BbGdvcml0aG1MaWJyYXJ5PC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFsZ29yaXRobSBMaWJyYXJ5PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9CbGVuZGVyTW9yc2UuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+QmxlbmRlck1vcnNlPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkJsZW5kZXIgTW9yc2U8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0J1aWxkaW5nLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPkJ1aWxkaW5nPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkJ1aWxkaW5nPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9DYW1lcmFTeXN0ZW0uaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+Q2FtZXJhU3lzdGVtPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNhbWVyYSBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0NvbGxlY3Rpb24uaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+Q29sbGVjdGlvbjwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Db2xsZWN0aW9uPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Db21wb3NlZERhdGEuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+Q29tcG9zZWREYXRhPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNvbXBvc2VkIERhdGE8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0N5Y2FiVEsuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+Q3ljYWJUSzwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5DeWNhYiBUSzwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvRGF0YUZsb3dQb3J0Lmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPkRhdGFGbG93UG9ydDwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5EYXRhIEZsb3cgUG9ydDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvRW5naW5lU3lzdGVtLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPkVuZ2luZVN5c3RlbTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5FbmdpbmUgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9FbnZpcm9ubWVudC5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5FbnZpcm9ubWVudDwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5FbnZpcm9ubWVudDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvRmxvb3IuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+Rmxvb3I8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Rmxvb3I8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0dQU1N5c3RlbS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5HUFNTeXN0ZW08L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+R1BTIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvR3JvdW5kLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPkdyb3VuZDwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Hcm91bmQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0hhcmR3YXJlLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPkhhcmR3YXJlPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkhhcmR3YXJlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9IdW1hbi5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5IdW1hbjwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5IdW1hbjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+SW1hZ2VTZW5zb3JTeXN0ZW08L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SW1hZ2UgU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvTGFuZFN1cmZhY2UuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+TGFuZFN1cmZhY2U8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TGFuZCBTdXJmYWNlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9MaWRhclN5c3RlbS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5MaWRhclN5c3RlbTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5MaWRhciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL0xvY2FsaXphdGlvblNlbnNvclN5c3RlbS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T2JqZWN0IERldGVjdGlvbiBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5PYmplY3QgVHJhY2tpbmcgU2Vuc29yIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvT25Qb3J0Lmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPk9uUG9ydDwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5PbiBQb3J0PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9QZWRlc3RyaWFuLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPlBlZGVzdHJpYW48L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGVkZXN0cmlhbjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUGh5c2ljYWxEYXRhLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPlBoeXNpY2FsRGF0YTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QaHlzaWNhbCBEYXRhPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9QaHlzaWNhbE9iamVjdC5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5QaHlzaWNhbE9iamVjdDwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QaHlzaWNhbCBPYmplY3Q8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1BsYW5ldC5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5QbGFuZXQ8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGxhbmV0PC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9QbGF0Zm9ybS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5QbGF0Zm9ybTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QbGF0Zm9ybTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUG9ydC5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5Qb3J0PC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBvcnQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1ByaW1pdGl2ZURhdGEuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+UHJpbWl0aXZlRGF0YTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QcmltaXRpdmUgRGF0YTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUm9ib3QuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+Um9ib3Q8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Um9ib3Q8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1JvYm90aWNNaWRkbGV3YXJlLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPlJvYm90aWNNaWRkbGV3YXJlPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90aWMgTWlkZGxld2FyZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvUm9ib3RpY1NpbXVsYXRvci5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5Sb2JvdGljU2ltdWxhdG9yPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90aWMgU2ltdWxhdG9yPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9Sb2JvdGljU3lzdGVtLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPlJvYm90aWNTeXN0ZW08L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Um9ib3RpYyBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NlbnNvckRyaXZlci5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5TZW5zb3JEcml2ZXI8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U2Vuc29yIERyaXZlcjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU2Vuc29yU3lzdGVtLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPlNlbnNvclN5c3RlbTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TZW5zb3IgU3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9TZXJ2aWNlUG9ydC5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5TZXJ2aWNlUG9ydDwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TZXJ2aWNlIFBvcnQ8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1NpbXVsYXRlZFN5c3RlbS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5TaW11bGF0ZWRTeXN0ZW08L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U2ltdWxhdGVkIFN5c3RlbTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU29mdHdhcmUuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+U29mdHdhcmU8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U29mdHdhcmU8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1N0YWlycy5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5TdGFpcnM8L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3RhaXJzPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9TdGF0ZS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5TdGF0ZTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TdGF0ZTwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU3VyZmFjZS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5TdXJmYWNlPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlN1cmZhY2U8L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvY2xhc3MtdXNlL1N5c3RlbS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5TeXN0ZW08L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3lzdGVtPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9UcmFuc2l0aW9uLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPlRyYW5zaXRpb248L0I+PC9BPjwvQj4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+VHJhbnNpdGlvbjwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvV2F0ZXJTdXJmYWNlLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPldhdGVyU3VyZmFjZTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5XYXRlciBTdXJmYWNlPC9iPjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9XaGVlbFN5c3RlbS5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5XaGVlbFN5c3RlbTwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5XaGVlbCBTeXN0ZW08L2I+PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1cyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK0NsYXNzZXMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+IHVzZWQgYnkgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXM8L0E+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2NsYXNzLXVzZS9EYXRhRmxvd1BvcnQuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMiPjxCPkRhdGFGbG93UG9ydDwvQj48L0E+PC9CPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5EYXRhIEZsb3cgUG9ydDwvYj48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9jbGFzcy11c2UvU2VydmljZVBvcnQuaHRtbCNvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMiPjxCPlNlcnZpY2VQb3J0PC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0EgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNlcnZpY2UgUG9ydDwvYj48L2VtPic8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvcGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDk0YzUxNgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwKQEAgLTAsMCArMSwxNTg0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MjkgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitSb2JvdE1MQWRhcHRlckZhY3RvcnkKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC5Sb2JvdE1MQWRhcHRlckZhY3RvcnkgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlJvYm90TUxBZGFwdGVyRmFjdG9yeSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYgQ0xBU1MmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlJvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3Jfc3VtbWFyeSI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX2RldGFpbCI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0ZPTlQ+Cis8QlI+CitDbGFzcyBSb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQWRhcHRlckZhY3RvcnlJbXBsCisgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuUm9ib3RNTEFkYXB0ZXJGYWN0b3J5PC9CPgorPC9QUkU+Cis8REw+Cis8RFQ+PEI+QWxsIEltcGxlbWVudGVkIEludGVyZmFjZXM6PC9CPiA8REQ+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlckZhY3Rvcnk8L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5Sb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0I+PERUPmV4dGVuZHMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5BZGFwdGVyRmFjdG9yeUltcGw8L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGUgPGI+QWRhcHRlciBGYWN0b3J5PC9iPiBmb3IgdGhlIG1vZGVsLgorIEl0IHByb3ZpZGVzIGFuIGFkYXB0ZXIgPGNvZGU+Y3JlYXRlWFhYPC9jb2RlPiBtZXRob2QgZm9yIGVhY2ggY2xhc3Mgb2YgdGhlIG1vZGVsLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5Sb2JvdE1MUGFja2FnZTwvQ09ERT48L0E+PC9ETD4KKzxIUj4KKworPFA+CisKKzwhLS0gPT09PT09PT0gQ09OU1RSVUNUT1IgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0iY29uc3RydWN0b3Jfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjUm9ib3RNTEFkYXB0ZXJGYWN0b3J5KCkiPlJvYm90TUxBZGFwdGVyRmFjdG9yeTwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIGFkYXB0ZXIgZmFjdG9yeTwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlcjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVBY3R1YXRvclN5c3RlbUFkYXB0ZXIoKSI+Y3JlYXRlQWN0dWF0b3JTeXN0ZW1BZGFwdGVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkFjdHVhdG9yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlQWRhcHRlcihvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcikiPmNyZWF0ZUFkYXB0ZXI8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllciZuYnNwO3RhcmdldCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMgYW4gYWRhcHRlciBmb3IgdGhlIDxjb2RlPnRhcmdldDwvY29kZT48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlcjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVBZ2VudEFkYXB0ZXIoKSI+Y3JlYXRlQWdlbnRBZGFwdGVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkFnZW50PC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlcjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVBbGdvcml0aG1BZGFwdGVyKCkiPmNyZWF0ZUFsZ29yaXRobUFkYXB0ZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkFsZ29yaXRobTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlQWxnb3JpdGhtTGlicmFyeUFkYXB0ZXIoKSI+Y3JlYXRlQWxnb3JpdGhtTGlicmFyeUFkYXB0ZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5BbGdvcml0aG0gTGlicmFyeTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlQmxlbmRlck1vcnNlQWRhcHRlcigpIj5jcmVhdGVCbGVuZGVyTW9yc2VBZGFwdGVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5CbGVuZGVyIE1vcnNlPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlcjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVCdWlsZGluZ0FkYXB0ZXIoKSI+Y3JlYXRlQnVpbGRpbmdBZGFwdGVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CdWlsZGluZy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkJ1aWxkaW5nPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlcjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVDYW1lcmFTeXN0ZW1BZGFwdGVyKCkiPmNyZWF0ZUNhbWVyYVN5c3RlbUFkYXB0ZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkNhbWVyYSBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZUNvbGxlY3Rpb25BZGFwdGVyKCkiPmNyZWF0ZUNvbGxlY3Rpb25BZGFwdGVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Q29sbGVjdGlvbjwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlQ29tcG9zZWREYXRhQWRhcHRlcigpIj5jcmVhdGVDb21wb3NlZERhdGFBZGFwdGVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Db21wb3NlZCBEYXRhPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlcjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVDeWNhYlRLQWRhcHRlcigpIj5jcmVhdGVDeWNhYlRLQWRhcHRlcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkN5Y2FiIFRLPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlcjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVEYXRhRmxvd1BvcnRBZGFwdGVyKCkiPmNyZWF0ZURhdGFGbG93UG9ydEFkYXB0ZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkRhdGEgRmxvdyBQb3J0PC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlcjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVFbmdpbmVTeXN0ZW1BZGFwdGVyKCkiPmNyZWF0ZUVuZ2luZVN5c3RlbUFkYXB0ZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkVuZ2luZSBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZUVudmlyb25tZW50QWRhcHRlcigpIj5jcmVhdGVFbnZpcm9ubWVudEFkYXB0ZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Vudmlyb25tZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+RW52aXJvbm1lbnQ8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZUVPYmplY3RBZGFwdGVyKCkiPmNyZWF0ZUVPYmplY3RBZGFwdGVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciB0aGUgZGVmYXVsdCBjYXNlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlRmxvb3JBZGFwdGVyKCkiPmNyZWF0ZUZsb29yQWRhcHRlcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5GbG9vcjwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlR1BTU3lzdGVtQWRhcHRlcigpIj5jcmVhdGVHUFNTeXN0ZW1BZGFwdGVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5HUFMgU3lzdGVtPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlcjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVHcm91bmRBZGFwdGVyKCkiPmNyZWF0ZUdyb3VuZEFkYXB0ZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkdyb3VuZDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlSGFyZHdhcmVBZGFwdGVyKCkiPmNyZWF0ZUhhcmR3YXJlQWRhcHRlcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSGFyZHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5IYXJkd2FyZTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlSHVtYW5BZGFwdGVyKCkiPmNyZWF0ZUh1bWFuQWRhcHRlcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSHVtYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5IdW1hbjwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlSW1hZ2VTZW5zb3JTeXN0ZW1BZGFwdGVyKCkiPmNyZWF0ZUltYWdlU2Vuc29yU3lzdGVtQWRhcHRlcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5JbWFnZSBTZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlcjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVMYW5kU3VyZmFjZUFkYXB0ZXIoKSI+Y3JlYXRlTGFuZFN1cmZhY2VBZGFwdGVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkxhbmQgU3VyZmFjZTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlTGlkYXJTeXN0ZW1BZGFwdGVyKCkiPmNyZWF0ZUxpZGFyU3lzdGVtQWRhcHRlcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5MaWRhciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZUxvY2FsaXphdGlvblNlbnNvclN5c3RlbUFkYXB0ZXIoKSI+Y3JlYXRlTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtQWRhcHRlcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZU9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUFkYXB0ZXIoKSI+Y3JlYXRlT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtQWRhcHRlcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+T2JqZWN0IERldGVjdGlvbiBTZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlcjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUFkYXB0ZXIoKSI+Y3JlYXRlT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1BZGFwdGVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPk9iamVjdCBUcmFja2luZyBTZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlcjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVPblBvcnRBZGFwdGVyKCkiPmNyZWF0ZU9uUG9ydEFkYXB0ZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPk9uIFBvcnQ8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZVBlZGVzdHJpYW5BZGFwdGVyKCkiPmNyZWF0ZVBlZGVzdHJpYW5BZGFwdGVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+UGVkZXN0cmlhbjwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlUGh5c2ljYWxEYXRhQWRhcHRlcigpIj5jcmVhdGVQaHlzaWNhbERhdGFBZGFwdGVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5QaHlzaWNhbCBEYXRhPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlcjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVQaHlzaWNhbE9iamVjdEFkYXB0ZXIoKSI+Y3JlYXRlUGh5c2ljYWxPYmplY3RBZGFwdGVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlBoeXNpY2FsIE9iamVjdDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlUGxhbmV0QWRhcHRlcigpIj5jcmVhdGVQbGFuZXRBZGFwdGVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGFuZXQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5QbGFuZXQ8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZVBsYXRmb3JtQWRhcHRlcigpIj5jcmVhdGVQbGF0Zm9ybUFkYXB0ZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+UGxhdGZvcm08L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZVBvcnRBZGFwdGVyKCkiPmNyZWF0ZVBvcnRBZGFwdGVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+UG9ydDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlUHJpbWl0aXZlRGF0YUFkYXB0ZXIoKSI+Y3JlYXRlUHJpbWl0aXZlRGF0YUFkYXB0ZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5QcmltaXRpdmUgRGF0YTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlUm9ib3RBZGFwdGVyKCkiPmNyZWF0ZVJvYm90QWRhcHRlcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Sb2JvdDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlUm9ib3RpY01pZGRsZXdhcmVBZGFwdGVyKCkiPmNyZWF0ZVJvYm90aWNNaWRkbGV3YXJlQWRhcHRlcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Sb2JvdGljIE1pZGRsZXdhcmU8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZVJvYm90aWNTaW11bGF0b3JBZGFwdGVyKCkiPmNyZWF0ZVJvYm90aWNTaW11bGF0b3JBZGFwdGVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Um9ib3RpYyBTaW11bGF0b3I8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZVJvYm90aWNTeXN0ZW1BZGFwdGVyKCkiPmNyZWF0ZVJvYm90aWNTeXN0ZW1BZGFwdGVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Um9ib3RpYyBTeXN0ZW08L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZVNlbnNvckRyaXZlckFkYXB0ZXIoKSI+Y3JlYXRlU2Vuc29yRHJpdmVyQWRhcHRlcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yRHJpdmVyLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+U2Vuc29yIERyaXZlcjwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlU2Vuc29yU3lzdGVtQWRhcHRlcigpIj5jcmVhdGVTZW5zb3JTeXN0ZW1BZGFwdGVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlcjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVTZXJ2aWNlUG9ydEFkYXB0ZXIoKSI+Y3JlYXRlU2VydmljZVBvcnRBZGFwdGVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlNlcnZpY2UgUG9ydDwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlU2ltdWxhdGVkU3lzdGVtQWRhcHRlcigpIj5jcmVhdGVTaW11bGF0ZWRTeXN0ZW1BZGFwdGVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TaW11bGF0ZWQgU3lzdGVtPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlcjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVTb2Z0d2FyZUFkYXB0ZXIoKSI+Y3JlYXRlU29mdHdhcmVBZGFwdGVyPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlNvZnR3YXJlPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlcjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVTdGFpcnNBZGFwdGVyKCkiPmNyZWF0ZVN0YWlyc0FkYXB0ZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlN0YWlyczwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlU3RhdGVBZGFwdGVyKCkiPmNyZWF0ZVN0YXRlQWRhcHRlcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TdGF0ZTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlU3VyZmFjZUFkYXB0ZXIoKSI+Y3JlYXRlU3VyZmFjZUFkYXB0ZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TdXJmYWNlPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlcjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVTeXN0ZW1BZGFwdGVyKCkiPmNyZWF0ZVN5c3RlbUFkYXB0ZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwjY3JlYXRlVHJhbnNpdGlvbkFkYXB0ZXIoKSI+Y3JlYXRlVHJhbnNpdGlvbkFkYXB0ZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5UcmFuc2l0aW9uPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlcjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNjcmVhdGVXYXRlclN1cmZhY2VBZGFwdGVyKCkiPmNyZWF0ZVdhdGVyU3VyZmFjZUFkYXB0ZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPldhdGVyIFN1cmZhY2U8L2VtPjwvQ09ERT48L0E+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sI2NyZWF0ZVdoZWVsU3lzdGVtQWRhcHRlcigpIj5jcmVhdGVXaGVlbFN5c3RlbUFkYXB0ZXI8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+V2hlZWwgU3lzdGVtPC9lbT48L0NPREU+PC9BPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7Ym9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCNpc0ZhY3RvcnlGb3JUeXBlKGphdmEubGFuZy5PYmplY3QpIj5pc0ZhY3RvcnlGb3JUeXBlPC9BPjwvQj4oamF2YS5sYW5nLk9iamVjdCZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgd2hldGhlciB0aGlzIGZhY3RvcnkgaXMgYXBwbGljYWJsZSBmb3IgdGhlIHR5cGUgb2YgdGhlIG9iamVjdDwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5BZGFwdGVyRmFjdG9yeUltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQWRhcHRlckZhY3RvcnlJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+YWRhcHQsIGFkYXB0LCBhZGFwdEFsbE5ldywgYWRhcHROZXc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB0b1N0cmluZywgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PSBDT05TVFJVQ1RPUiBERVRBSUwgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImNvbnN0cnVjdG9yX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJSb2JvdE1MQWRhcHRlckZhY3RvcnkoKSI+PCEtLSAtLT48L0E+PEgzPgorUm9ib3RNTEFkYXB0ZXJGYWN0b3J5PC9IMz4KKzxQUkU+CitwdWJsaWMgPEI+Um9ib3RNTEFkYXB0ZXJGYWN0b3J5PC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgYWRhcHRlciBmYWN0b3J5LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzwvREw+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iaXNGYWN0b3J5Rm9yVHlwZShqYXZhLmxhbmcuT2JqZWN0KSI+PCEtLSAtLT48L0E+PEgzPgoraXNGYWN0b3J5Rm9yVHlwZTwvSDM+Cis8UFJFPgorcHVibGljIGJvb2xlYW4gPEI+aXNGYWN0b3J5Rm9yVHlwZTwvQj4oamF2YS5sYW5nLk9iamVjdCZuYnNwO29iamVjdCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHdoZXRoZXIgdGhpcyBmYWN0b3J5IGlzIGFwcGxpY2FibGUgZm9yIHRoZSB0eXBlIG9mIHRoZSBvYmplY3QuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgPGNvZGU+dHJ1ZTwvY29kZT4gaWYgdGhlIG9iamVjdCBpcyBlaXRoZXIgdGhlIG1vZGVsJ3MgcGFja2FnZSBvciBpcyBhbiBpbnN0YW5jZSBvYmplY3Qgb2YgdGhlIG1vZGVsLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPmlzRmFjdG9yeUZvclR5cGU8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyRmFjdG9yeTwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+aXNGYWN0b3J5Rm9yVHlwZTwvQ09ERT4gaW4gY2xhc3MgPENPREU+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5BZGFwdGVyRmFjdG9yeUltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPndoZXRoZXIgdGhpcyBmYWN0b3J5IGlzIGFwcGxpY2FibGUgZm9yIHRoZSB0eXBlIG9mIHRoZSBvYmplY3QuPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVBZGFwdGVyKG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlQWRhcHRlcjwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXIgPEI+Y3JlYXRlQWRhcHRlcjwvQj4ob3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXImbmJzcDt0YXJnZXQpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcyBhbiBhZGFwdGVyIGZvciB0aGUgPGNvZGU+dGFyZ2V0PC9jb2RlPi4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPmNyZWF0ZUFkYXB0ZXI8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQWRhcHRlckZhY3RvcnlJbXBsPC9DT0RFPjwvREw+Cis8L0REPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+dGFyZ2V0PC9DT0RFPiAtIHRoZSBvYmplY3QgdG8gYWRhcHQuCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBhZGFwdGVyIGZvciB0aGUgPGNvZGU+dGFyZ2V0PC9jb2RlPi48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVRyYW5zaXRpb25BZGFwdGVyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVRyYW5zaXRpb25BZGFwdGVyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciA8Qj5jcmVhdGVUcmFuc2l0aW9uQWRhcHRlcjwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVHJhbnNpdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlRyYW5zaXRpb248L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKyBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmV3IGFkYXB0ZXIuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlRyYW5zaXRpb248L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlQWxnb3JpdGhtQWRhcHRlcigpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVBbGdvcml0aG1BZGFwdGVyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciA8Qj5jcmVhdGVBbGdvcml0aG1BZGFwdGVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5BbGdvcml0aG08L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKyBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmV3IGFkYXB0ZXIuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+QWxnb3JpdGhtPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVJvYm90QWRhcHRlcigpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVSb2JvdEFkYXB0ZXI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyIDxCPmNyZWF0ZVJvYm90QWRhcHRlcjwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Sb2JvdDwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBuZXcgYWRhcHRlci48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlJvYm90PC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVN5c3RlbUFkYXB0ZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlU3lzdGVtQWRhcHRlcjwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXIgPEI+Y3JlYXRlU3lzdGVtQWRhcHRlcjwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+U3lzdGVtPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisgaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG5ldyBhZGFwdGVyLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlN5c3RlbTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVEYXRhRmxvd1BvcnRBZGFwdGVyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZURhdGFGbG93UG9ydEFkYXB0ZXI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyIDxCPmNyZWF0ZURhdGFGbG93UG9ydEFkYXB0ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkRhdGEgRmxvdyBQb3J0PC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisgaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG5ldyBhZGFwdGVyLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkRhdGFGbG93UG9ydDwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVQb3J0QWRhcHRlcigpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVQb3J0QWRhcHRlcjwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXIgPEI+Y3JlYXRlUG9ydEFkYXB0ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5Qb3J0PC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisgaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG5ldyBhZGFwdGVyLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5Qb3J0PC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUVudmlyb25tZW50QWRhcHRlcigpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVFbnZpcm9ubWVudEFkYXB0ZXI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyIDxCPmNyZWF0ZUVudmlyb25tZW50QWRhcHRlcjwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5FbnZpcm9ubWVudDwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBuZXcgYWRhcHRlci48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkVudmlyb25tZW50PC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVN1cmZhY2VBZGFwdGVyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVN1cmZhY2VBZGFwdGVyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciA8Qj5jcmVhdGVTdXJmYWNlQWRhcHRlcjwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlN1cmZhY2U8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKyBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmV3IGFkYXB0ZXIuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlN1cmZhY2U8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlQnVpbGRpbmdBZGFwdGVyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUJ1aWxkaW5nQWRhcHRlcjwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXIgPEI+Y3JlYXRlQnVpbGRpbmdBZGFwdGVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CdWlsZGluZy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkJ1aWxkaW5nPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisgaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG5ldyBhZGFwdGVyLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CdWlsZGluZy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+QnVpbGRpbmc8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlQWdlbnRBZGFwdGVyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUFnZW50QWRhcHRlcjwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXIgPEI+Y3JlYXRlQWdlbnRBZGFwdGVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkFnZW50PC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisgaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG5ldyBhZGFwdGVyLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+QWdlbnQ8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlUGxhbmV0QWRhcHRlcigpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVQbGFuZXRBZGFwdGVyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciA8Qj5jcmVhdGVQbGFuZXRBZGFwdGVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGFuZXQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5QbGFuZXQ8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKyBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmV3IGFkYXB0ZXIuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYW5ldC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+UGxhbmV0PC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUxhbmRTdXJmYWNlQWRhcHRlcigpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVMYW5kU3VyZmFjZUFkYXB0ZXI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyIDxCPmNyZWF0ZUxhbmRTdXJmYWNlQWRhcHRlcjwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5MYW5kIFN1cmZhY2U8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKyBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmV3IGFkYXB0ZXIuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5MYW5kU3VyZmFjZTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVHcm91bmRBZGFwdGVyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUdyb3VuZEFkYXB0ZXI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyIDxCPmNyZWF0ZUdyb3VuZEFkYXB0ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkdyb3VuZDwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBuZXcgYWRhcHRlci48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5Hcm91bmQ8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlRmxvb3JBZGFwdGVyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUZsb29yQWRhcHRlcjwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXIgPEI+Y3JlYXRlRmxvb3JBZGFwdGVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkZsb29yPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisgaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG5ldyBhZGFwdGVyLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+Rmxvb3I8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlV2F0ZXJTdXJmYWNlQWRhcHRlcigpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVXYXRlclN1cmZhY2VBZGFwdGVyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciA8Qj5jcmVhdGVXYXRlclN1cmZhY2VBZGFwdGVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XYXRlclN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5XYXRlciBTdXJmYWNlPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisgaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG5ldyBhZGFwdGVyLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XYXRlclN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPldhdGVyU3VyZmFjZTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVIdW1hbkFkYXB0ZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlSHVtYW5BZGFwdGVyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciA8Qj5jcmVhdGVIdW1hbkFkYXB0ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+SHVtYW48L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKyBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmV3IGFkYXB0ZXIuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5IdW1hbjwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVQZWRlc3RyaWFuQWRhcHRlcigpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVQZWRlc3RyaWFuQWRhcHRlcjwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXIgPEI+Y3JlYXRlUGVkZXN0cmlhbkFkYXB0ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5QZWRlc3RyaWFuPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisgaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG5ldyBhZGFwdGVyLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5QZWRlc3RyaWFuPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVN0YWlyc0FkYXB0ZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlU3RhaXJzQWRhcHRlcjwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXIgPEI+Y3JlYXRlU3RhaXJzQWRhcHRlcjwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+U3RhaXJzPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisgaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG5ldyBhZGFwdGVyLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlN0YWlyczwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVQbGF0Zm9ybUFkYXB0ZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlUGxhdGZvcm1BZGFwdGVyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciA8Qj5jcmVhdGVQbGF0Zm9ybUFkYXB0ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+UGxhdGZvcm08L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKyBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmV3IGFkYXB0ZXIuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5QbGF0Zm9ybTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVSb2JvdGljTWlkZGxld2FyZUFkYXB0ZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlUm9ib3RpY01pZGRsZXdhcmVBZGFwdGVyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciA8Qj5jcmVhdGVSb2JvdGljTWlkZGxld2FyZUFkYXB0ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Um9ib3RpYyBNaWRkbGV3YXJlPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisgaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG5ldyBhZGFwdGVyLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+Um9ib3RpY01pZGRsZXdhcmU8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlUm9ib3RpY1NpbXVsYXRvckFkYXB0ZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlUm9ib3RpY1NpbXVsYXRvckFkYXB0ZXI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyIDxCPmNyZWF0ZVJvYm90aWNTaW11bGF0b3JBZGFwdGVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Um9ib3RpYyBTaW11bGF0b3I8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKyBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmV3IGFkYXB0ZXIuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlJvYm90aWNTaW11bGF0b3I8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlQ3ljYWJUS0FkYXB0ZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlQ3ljYWJUS0FkYXB0ZXI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyIDxCPmNyZWF0ZUN5Y2FiVEtBZGFwdGVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Q3ljYWIgVEs8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKyBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmV3IGFkYXB0ZXIuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkN5Y2FiVEs8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlQmxlbmRlck1vcnNlQWRhcHRlcigpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVCbGVuZGVyTW9yc2VBZGFwdGVyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciA8Qj5jcmVhdGVCbGVuZGVyTW9yc2VBZGFwdGVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5CbGVuZGVyIE1vcnNlPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisgaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG5ldyBhZGFwdGVyLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkJsZW5kZXJNb3JzZTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVPblBvcnRBZGFwdGVyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZU9uUG9ydEFkYXB0ZXI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyIDxCPmNyZWF0ZU9uUG9ydEFkYXB0ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPk9uIFBvcnQ8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKyBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmV3IGFkYXB0ZXIuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+T25Qb3J0PC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVNlcnZpY2VQb3J0QWRhcHRlcigpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVTZXJ2aWNlUG9ydEFkYXB0ZXI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyIDxCPmNyZWF0ZVNlcnZpY2VQb3J0QWRhcHRlcjwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TZXJ2aWNlIFBvcnQ8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKyBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmV3IGFkYXB0ZXIuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5TZXJ2aWNlUG9ydDwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVBY3R1YXRvclN5c3RlbUFkYXB0ZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlQWN0dWF0b3JTeXN0ZW1BZGFwdGVyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciA8Qj5jcmVhdGVBY3R1YXRvclN5c3RlbUFkYXB0ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdG9yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+QWN0dWF0b3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisgaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG5ldyBhZGFwdGVyLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+QWN0dWF0b3JTeXN0ZW08L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlUm9ib3RpY1N5c3RlbUFkYXB0ZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlUm9ib3RpY1N5c3RlbUFkYXB0ZXI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyIDxCPmNyZWF0ZVJvYm90aWNTeXN0ZW1BZGFwdGVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Um9ib3RpYyBTeXN0ZW08L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKyBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmV3IGFkYXB0ZXIuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlJvYm90aWNTeXN0ZW08L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlU2Vuc29yU3lzdGVtQWRhcHRlcigpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVTZW5zb3JTeXN0ZW1BZGFwdGVyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciA8Qj5jcmVhdGVTZW5zb3JTeXN0ZW1BZGFwdGVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisgaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG5ldyBhZGFwdGVyLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlNlbnNvclN5c3RlbTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVIYXJkd2FyZUFkYXB0ZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlSGFyZHdhcmVBZGFwdGVyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciA8Qj5jcmVhdGVIYXJkd2FyZUFkYXB0ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0hhcmR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+SGFyZHdhcmU8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKyBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmV3IGFkYXB0ZXIuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0hhcmR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5IYXJkd2FyZTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVTb2Z0d2FyZUFkYXB0ZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlU29mdHdhcmVBZGFwdGVyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciA8Qj5jcmVhdGVTb2Z0d2FyZUFkYXB0ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+U29mdHdhcmU8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKyBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmV3IGFkYXB0ZXIuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5Tb2Z0d2FyZTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVQcmltaXRpdmVEYXRhQWRhcHRlcigpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVQcmltaXRpdmVEYXRhQWRhcHRlcjwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXIgPEI+Y3JlYXRlUHJpbWl0aXZlRGF0YUFkYXB0ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5QcmltaXRpdmUgRGF0YTwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBuZXcgYWRhcHRlci48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+UHJpbWl0aXZlRGF0YTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVQaHlzaWNhbERhdGFBZGFwdGVyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVBoeXNpY2FsRGF0YUFkYXB0ZXI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyIDxCPmNyZWF0ZVBoeXNpY2FsRGF0YUFkYXB0ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlBoeXNpY2FsIERhdGE8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKyBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmV3IGFkYXB0ZXIuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+UGh5c2ljYWxEYXRhPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUNvbXBvc2VkRGF0YUFkYXB0ZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlQ29tcG9zZWREYXRhQWRhcHRlcjwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXIgPEI+Y3JlYXRlQ29tcG9zZWREYXRhQWRhcHRlcjwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcG9zZWREYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Q29tcG9zZWQgRGF0YTwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBuZXcgYWRhcHRlci48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcG9zZWREYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5Db21wb3NlZERhdGE8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlQ29sbGVjdGlvbkFkYXB0ZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlQ29sbGVjdGlvbkFkYXB0ZXI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyIDxCPmNyZWF0ZUNvbGxlY3Rpb25BZGFwdGVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Q29sbGVjdGlvbjwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBuZXcgYWRhcHRlci48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29sbGVjdGlvbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+Q29sbGVjdGlvbjwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVFbmdpbmVTeXN0ZW1BZGFwdGVyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUVuZ2luZVN5c3RlbUFkYXB0ZXI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyIDxCPmNyZWF0ZUVuZ2luZVN5c3RlbUFkYXB0ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkVuZ2luZSBTeXN0ZW08L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKyBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmV3IGFkYXB0ZXIuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+RW5naW5lU3lzdGVtPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVdoZWVsU3lzdGVtQWRhcHRlcigpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVXaGVlbFN5c3RlbUFkYXB0ZXI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyIDxCPmNyZWF0ZVdoZWVsU3lzdGVtQWRhcHRlcjwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5XaGVlbCBTeXN0ZW08L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKyBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmV3IGFkYXB0ZXIuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5XaGVlbFN5c3RlbTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVJbWFnZVNlbnNvclN5c3RlbUFkYXB0ZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlSW1hZ2VTZW5zb3JTeXN0ZW1BZGFwdGVyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciA8Qj5jcmVhdGVJbWFnZVNlbnNvclN5c3RlbUFkYXB0ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+SW1hZ2UgU2Vuc29yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBuZXcgYWRhcHRlci48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkltYWdlU2Vuc29yU3lzdGVtPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUNhbWVyYVN5c3RlbUFkYXB0ZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlQ2FtZXJhU3lzdGVtQWRhcHRlcjwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXIgPEI+Y3JlYXRlQ2FtZXJhU3lzdGVtQWRhcHRlcjwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+Q2FtZXJhIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBuZXcgYWRhcHRlci48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5DYW1lcmFTeXN0ZW08L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtQWRhcHRlcigpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1BZGFwdGVyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciA8Qj5jcmVhdGVPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1BZGFwdGVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5PYmplY3QgRGV0ZWN0aW9uIFNlbnNvciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKyBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmV3IGFkYXB0ZXIuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtQWRhcHRlcigpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUFkYXB0ZXI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyIDxCPmNyZWF0ZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtQWRhcHRlcjwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5PYmplY3QgVHJhY2tpbmcgU2Vuc29yIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBuZXcgYWRhcHRlci48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZUxpZGFyU3lzdGVtQWRhcHRlcigpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVMaWRhclN5c3RlbUFkYXB0ZXI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyIDxCPmNyZWF0ZUxpZGFyU3lzdGVtQWRhcHRlcjwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5MaWRhciBTeXN0ZW08L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKyBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmV3IGFkYXB0ZXIuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5MaWRhclN5c3RlbTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1BZGFwdGVyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUxvY2FsaXphdGlvblNlbnNvclN5c3RlbUFkYXB0ZXI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyIDxCPmNyZWF0ZUxvY2FsaXphdGlvblNlbnNvclN5c3RlbUFkYXB0ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xvY2FsaXphdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkxvY2FsaXphdGlvbiBTZW5zb3IgU3lzdGVtPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisgaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG5ldyBhZGFwdGVyLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVHUFNTeXN0ZW1BZGFwdGVyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZUdQU1N5c3RlbUFkYXB0ZXI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyIDxCPmNyZWF0ZUdQU1N5c3RlbUFkYXB0ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPkdQUyBTeXN0ZW08L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKyBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmV3IGFkYXB0ZXIuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+R1BTU3lzdGVtPC9DT0RFPjwvQT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNyZWF0ZVNpbXVsYXRlZFN5c3RlbUFkYXB0ZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlU2ltdWxhdGVkU3lzdGVtQWRhcHRlcjwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXIgPEI+Y3JlYXRlU2ltdWxhdGVkU3lzdGVtQWRhcHRlcjwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+U2ltdWxhdGVkIFN5c3RlbTwvZW0+PC9DT0RFPjwvQT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBuZXcgYWRhcHRlci48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT5TaW11bGF0ZWRTeXN0ZW08L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlQWxnb3JpdGhtTGlicmFyeUFkYXB0ZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlQWxnb3JpdGhtTGlicmFyeUFkYXB0ZXI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyIDxCPmNyZWF0ZUFsZ29yaXRobUxpYnJhcnlBZGFwdGVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+QWxnb3JpdGhtIExpYnJhcnk8L2VtPjwvQ09ERT48L0E+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKyBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmV3IGFkYXB0ZXIuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPkFsZ29yaXRobUxpYnJhcnk8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlU3RhdGVBZGFwdGVyKCkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVN0YXRlQWRhcHRlcjwvSDM+Cis8UFJFPgorcHVibGljIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXIgPEI+Y3JlYXRlU3RhdGVBZGFwdGVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+PGVtPlN0YXRlPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisgaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG5ldyBhZGFwdGVyLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+U3RhdGU8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlU2Vuc29yRHJpdmVyQWRhcHRlcigpIj48IS0tIC0tPjwvQT48SDM+CitjcmVhdGVTZW5zb3JEcml2ZXJBZGFwdGVyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciA8Qj5jcmVhdGVTZW5zb3JEcml2ZXJBZGFwdGVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JEcml2ZXIuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPjxlbT5TZW5zb3IgRHJpdmVyPC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisgaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG5ldyBhZGFwdGVyLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JEcml2ZXIuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlNlbnNvckRyaXZlcjwvQ09ERT48L0E+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjcmVhdGVQaHlzaWNhbE9iamVjdEFkYXB0ZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlUGh5c2ljYWxPYmplY3RBZGFwdGVyPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciA8Qj5jcmVhdGVQaHlzaWNhbE9iamVjdEFkYXB0ZXI8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAnPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Q09ERT48ZW0+UGh5c2ljYWwgT2JqZWN0PC9lbT48L0NPREU+PC9BPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisgaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIG5ldyBhZGFwdGVyLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PENPREU+UGh5c2ljYWxPYmplY3Q8L0NPREU+PC9BPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY3JlYXRlRU9iamVjdEFkYXB0ZXIoKSI+PCEtLSAtLT48L0E+PEgzPgorY3JlYXRlRU9iamVjdEFkYXB0ZXI8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyIDxCPmNyZWF0ZUVPYmplY3RBZGFwdGVyPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+Q3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciB0aGUgZGVmYXVsdCBjYXNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbC4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKworPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgbmV3IGFkYXB0ZXIuPC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYgQ0xBU1MmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlJvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3Jfc3VtbWFyeSI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX2RldGFpbCI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDA1NjkyYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFJlc291cmNlRmFjdG9yeUltcGwuaHRtbApAQCAtMCwwICsxLDI5MSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI5IENFVCAyMDEyIC0tPgorPFRJVExFPgorUm9ib3RNTFJlc291cmNlRmFjdG9yeUltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC5Sb2JvdE1MUmVzb3VyY2VGYWN0b3J5SW1wbCBjbGFzcyI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iUm9ib3RNTFJlc291cmNlRmFjdG9yeUltcGwiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUm9ib3RNTFJlc291cmNlRmFjdG9yeUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFJlc291cmNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MUmVzb3VyY2VGYWN0b3J5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlJvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7TkVTVEVEJm5ic3A7fCZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3JfZGV0YWlsIj5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvRk9OVD4KKzxCUj4KK0NsYXNzIFJvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuaW1wbC5SZXNvdXJjZUZhY3RvcnlJbXBsCisgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuUm9ib3RNTFJlc291cmNlRmFjdG9yeUltcGw8L0I+Cis8L1BSRT4KKzxETD4KKzxEVD48Qj5BbGwgSW1wbGVtZW50ZWQgSW50ZXJmYWNlczo8L0I+IDxERD5vcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuUmVzb3VyY2UuRmFjdG9yeTwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGNsYXNzIDxCPlJvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsPC9CPjxEVD5leHRlbmRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5yZXNvdXJjZS5pbXBsLlJlc291cmNlRmFjdG9yeUltcGw8L0RMPgorPC9QUkU+CisKKzxQPgorPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGUgPGI+UmVzb3VyY2UgRmFjdG9yeTwvYj4gYXNzb2NpYXRlZCB3aXRoIHRoZSBwYWNrYWdlLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+CisKKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFJlc291cmNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxDT0RFPlJvYm90TUxSZXNvdXJjZUltcGw8L0NPREU+PC9BPjwvREw+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PSBORVNURUQgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0ibmVzdGVkX2NsYXNzX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5OZXN0ZWQgQ2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnJlc291cmNlLlJlc291cmNlLkZhY3RvcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuUmVzb3VyY2UuRmFjdG9yeTwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5yZXNvdXJjZS5SZXNvdXJjZS5GYWN0b3J5LkRlc2NyaXB0b3IsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5yZXNvdXJjZS5SZXNvdXJjZS5GYWN0b3J5LlJlZ2lzdHJ5PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworCis8IS0tID09PT09PT09IENPTlNUUlVDVE9SIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImNvbnN0cnVjdG9yX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5Db25zdHJ1Y3RvciBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsLmh0bWwjUm9ib3RNTFJlc291cmNlRmFjdG9yeUltcGwoKSI+Um9ib3RNTFJlc291cmNlRmFjdG9yeUltcGw8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSByZXNvdXJjZSBmYWN0b3J5PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuUmVzb3VyY2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFJlc291cmNlRmFjdG9yeUltcGwuaHRtbCNjcmVhdGVSZXNvdXJjZShvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuVVJJKSI+Y3JlYXRlUmVzb3VyY2U8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuVVJJJm5ic3A7dXJpKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgcmVzb3VyY2U8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHRvU3RyaW5nLCB3YWl0LCB3YWl0LCB3YWl0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+CisKKzwhLS0gPT09PT09PT09IENPTlNUUlVDVE9SIERFVEFJTCA9PT09PT09PSAtLT4KKworPEEgTkFNRT0iY29uc3RydWN0b3JfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+Q29uc3RydWN0b3IgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9IlJvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsKCkiPjwhLS0gLS0+PC9BPjxIMz4KK1JvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsPC9IMz4KKzxQUkU+CitwdWJsaWMgPEI+Um9ib3RNTFJlc291cmNlRmFjdG9yeUltcGw8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSByZXNvdXJjZSBmYWN0b3J5LgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzwvREw+CisKKzwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iY3JlYXRlUmVzb3VyY2Uob3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLlVSSSkiPjwhLS0gLS0+PC9BPjxIMz4KK2NyZWF0ZVJlc291cmNlPC9IMz4KKzxQUkU+CitwdWJsaWMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnJlc291cmNlLlJlc291cmNlIDxCPmNyZWF0ZVJlc291cmNlPC9CPihvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuVVJJJm5ic3A7dXJpKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIHJlc291cmNlLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+U3BlY2lmaWVkIGJ5OjwvQj48REQ+PENPREU+Y3JlYXRlUmVzb3VyY2U8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuUmVzb3VyY2UuRmFjdG9yeTwvQ09ERT48RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+Y3JlYXRlUmVzb3VyY2U8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5yZXNvdXJjZS5pbXBsLlJlc291cmNlRmFjdG9yeUltcGw8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPC9ETD4KKzwvREQ+Cis8L0RMPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9Sb2JvdE1MUmVzb3VyY2VGYWN0b3J5SW1wbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MUmVzb3VyY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RNTFJlc291cmNlRmFjdG9yeUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX3N1bW1hcnkiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9kZXRhaWwiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MUmVzb3VyY2VJbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxSZXNvdXJjZUltcGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42ZTk1OTA2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MUmVzb3VyY2VJbXBsLmh0bWwKQEAgLTAsMCArMSwzNjIgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyOSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1JvYm90TUxSZXNvdXJjZUltcGwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC5Sb2JvdE1MUmVzb3VyY2VJbXBsIGNsYXNzIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJSb2JvdE1MUmVzb3VyY2VJbXBsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1JvYm90TUxSZXNvdXJjZUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxSZXNvdXJjZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdE1MUmVzb3VyY2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX3N1bW1hcnkiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnhtaS5pbXBsLlhNTFJlc291cmNlSW1wbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3JfZGV0YWlsIj5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0ZPTlQ+Cis8QlI+CitDbGFzcyBSb2JvdE1MUmVzb3VyY2VJbXBsPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsCisgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5Ob3RpZmllckltcGwKKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLnJlc291cmNlLmltcGwuUmVzb3VyY2VJbXBsCisgICAgICAgICAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUueG1pLmltcGwuWE1MUmVzb3VyY2VJbXBsCisgICAgICAgICAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuUm9ib3RNTFJlc291cmNlSW1wbDwvQj4KKzwvUFJFPgorPERMPgorPERUPjxCPkFsbCBJbXBsZW1lbnRlZCBJbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuUmVzb3VyY2UsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5yZXNvdXJjZS5SZXNvdXJjZS5JbnRlcm5hbCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnhtaS5YTUxSZXNvdXJjZTwvREQ+Cis8L0RMPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGNsYXNzIDxCPlJvYm90TUxSZXNvdXJjZUltcGw8L0I+PERUPmV4dGVuZHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnhtaS5pbXBsLlhNTFJlc291cmNlSW1wbDwvREw+Cis8L1BSRT4KKworPFA+Cis8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoZSA8Yj5SZXNvdXJjZSA8L2I+IGFzc29jaWF0ZWQgd2l0aCB0aGUgcGFja2FnZS4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorCis8UD4KKzxETD4KKzxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PENPREU+Um9ib3RNTFJlc291cmNlRmFjdG9yeUltcGw8L0NPREU+PC9BPjwvREw+Cis8SFI+CisKKzxQPgorPCEtLSA9PT09PT09PSBORVNURUQgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0ibmVzdGVkX2NsYXNzX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5OZXN0ZWQgQ2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibmVzdGVkX2NsYXNzZXNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk5lc3RlZCBjbGFzc2VzL2ludGVyZmFjZXMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5CYXNpY05vdGlmaWVySW1wbDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRUFkYXB0ZXJMaXN0Jmx0O0UgZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0ICYgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlciZndDssIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwuRU9ic2VydmFibGVBZGFwdGVyTGlzdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxBIE5BTUU9Im5lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS54bWkuWE1MUmVzb3VyY2UiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUueG1pLlhNTFJlc291cmNlPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLnhtaS5YTUxSZXNvdXJjZS5FbGVtZW50SGFuZGxlciwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnhtaS5YTUxSZXNvdXJjZS5SZXNvdXJjZUVudGl0eUhhbmRsZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS54bWkuWE1MUmVzb3VyY2UuUmVzb3VyY2VIYW5kbGVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUueG1pLlhNTFJlc291cmNlLlVSSUhhbmRsZXIsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS54bWkuWE1MUmVzb3VyY2UuWE1MSW5mbywgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnhtaS5YTUxSZXNvdXJjZS5YTUxNYXA8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nlc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuUmVzb3VyY2UiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5OZXN0ZWQgY2xhc3Nlcy9pbnRlcmZhY2VzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuUmVzb3VyY2U8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5vcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuUmVzb3VyY2UuRGlhZ25vc3RpYywgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnJlc291cmNlLlJlc291cmNlLkZhY3RvcnksIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5yZXNvdXJjZS5SZXNvdXJjZS5JbnRlcm5hbCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnJlc291cmNlLlJlc291cmNlLklPV3JhcHBlZEV4Y2VwdGlvbjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUueG1pLlhNTFJlc291cmNlIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUueG1pLlhNTFJlc291cmNlPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+SFJFRiwgTklMLCBOT19OQU1FU1BBQ0VfU0NIRU1BX0xPQ0FUSU9OLCBPUFRJT05fQU5ZX1NJTVBMRV9UWVBFLCBPUFRJT05fQU5ZX1RZUEUsIE9QVElPTl9CSU5BUlksIE9QVElPTl9DT05GSUdVUkFUSU9OX0NBQ0hFLCBPUFRJT05fREVDTEFSRV9YTUwsIE9QVElPTl9ERUZFUl9BVFRBQ0hNRU5ULCBPUFRJT05fREVGRVJfSURSRUZfUkVTT0xVVElPTiwgT1BUSU9OX0RJU0FCTEVfTk9USUZZLCBPUFRJT05fRE9NX1VTRV9OQU1FU1BBQ0VTX0lOX1NDT1BFLCBPUFRJT05fRUxFTUVOVF9IQU5ETEVSLCBPUFRJT05fRU5DT0RJTkcsIE9QVElPTl9FU0NBUEVfVVNJTkdfQ0RBVEEsIE9QVElPTl9FWFRFTkRFRF9NRVRBX0RBVEEsIE9QVElPTl9GTFVTSF9USFJFU0hPTEQsIE9QVElPTl9GT1JNQVRURUQsIE9QVElPTl9LRUVQX0RFRkFVTFRfQ09OVEVOVCwgT1BUSU9OX0xBWF9GRUFUVVJFX1BST0NFU1NJTkcsIE9QVElPTl9MQVhfV0lMRENBUkRfUFJPQ0VTU0lORywgT1BUSU9OX0xJTkVfV0lEVEgsIE9QVElPTl9QQVJTRVJfRkVBVFVSRVMsIE9QVElPTl9QQVJTRVJfUFJPUEVSVElFUywgT1BUSU9OX1BST0NFU1NfREFOR0xJTkdfSFJFRiwgT1BUSU9OX1BST0NFU1NfREFOR0xJTkdfSFJFRl9ESVNDQVJELCBPUFRJT05fUFJPQ0VTU19EQU5HTElOR19IUkVGX1JFQ09SRCwgT1BUSU9OX1BST0NFU1NfREFOR0xJTkdfSFJFRl9USFJPVywgT1BUSU9OX1BST1hZX0FUVFJJQlVURVMsIE9QVElPTl9SRUNPUkRfQU5ZX1RZUEVfTkFNRVNQQUNFX0RFQ0xBUkFUSU9OUywgT1BUSU9OX1JFQ09SRF9VTktOT1dOX0ZFQVRVUkUsIE9QVElPTl9SRVNPVVJDRV9FTlRJVFlfSEFORExFUiwgT1BUSU9OX1JFU09VUkNFX0hBTkRMRVIsIE9QVElPTl9ST09UX09CSkVDVFMsIE9QVElPTl9TQVZFX0RPQ1RZUEUsIE9QVElPTl9TQVZFX1RZUEVfSU5GT1JNQVRJT04sIE9QVElPTl9TQ0hFTUFfTE9DQVRJT04sIE9QVElPTl9TQ0hFTUFfTE9DQVRJT05fSU1QTEVNRU5UQVRJT04sIE9QVElPTl9TS0lQX0VTQ0FQRSwgT1BUSU9OX1NLSVBfRVNDQVBFX1VSSSwgT1BUSU9OX1NVUFBSRVNTX0RPQ1VNRU5UX1JPT1QsIE9QVElPTl9VUklfSEFORExFUiwgT1BUSU9OX1VTRV9DQUNIRURfTE9PS1VQX1RBQkxFLCBPUFRJT05fVVNFX0RFUFJFQ0FURURfTUVUSE9EUywgT1BUSU9OX1VTRV9FTkNPREVEX0FUVFJJQlVURV9TVFlMRSwgT1BUSU9OX1VTRV9GSUxFX0JVRkZFUiwgT1BUSU9OX1VTRV9MRVhJQ0FMX0hBTkRMRVIsIE9QVElPTl9VU0VfUEFSU0VSX1BPT0wsIE9QVElPTl9VU0VfWE1MX05BTUVfVE9fRkVBVFVSRV9NQVAsIE9QVElPTl9YTUxfTUFQLCBPUFRJT05fWE1MX09QVElPTlMsIE9QVElPTl9YTUxfVkVSU0lPTiwgU0NIRU1BX0xPQ0FUSU9OLCBUWVBFLCBYTUxfTlMsIFhNTF9TQ0hFTUFfVVJJLCBYU0lfTlMsIFhTSV9VUkk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5yZXNvdXJjZS5SZXNvdXJjZSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnJlc291cmNlLlJlc291cmNlPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+T1BUSU9OX0NJUEhFUiwgT1BUSU9OX1NBVkVfT05MWV9JRl9DSEFOR0VELCBPUFRJT05fU0FWRV9PTkxZX0lGX0NIQU5HRURfRklMRV9CVUZGRVIsIE9QVElPTl9TQVZFX09OTFlfSUZfQ0hBTkdFRF9NRU1PUllfQlVGRkVSLCBPUFRJT05fWklQLCBSRVNPVVJDRV9fQ09OVEVOVFMsIFJFU09VUkNFX19FUlJPUlMsIFJFU09VUkNFX19JU19MT0FERUQsIFJFU09VUkNFX19JU19NT0RJRklFRCwgUkVTT1VSQ0VfX0lTX1RSQUNLSU5HX01PRElGSUNBVElPTiwgUkVTT1VSQ0VfX1JFU09VUkNFX1NFVCwgUkVTT1VSQ0VfX1RJTUVfU1RBTVAsIFJFU09VUkNFX19VUkksIFJFU09VUkNFX19XQVJOSU5HUzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT0gQ09OU1RSVUNUT1IgU1VNTUFSWSA9PT09PT09PSAtLT4KKworPEEgTkFNRT0iY29uc3RydWN0b3Jfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFJlc291cmNlSW1wbC5odG1sI1JvYm90TUxSZXNvdXJjZUltcGwob3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLlVSSSkiPlJvYm90TUxSZXNvdXJjZUltcGw8L0E+PC9CPihvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuVVJJJm5ic3A7dXJpKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgcmVzb3VyY2U8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUueG1pLmltcGwuWE1MUmVzb3VyY2VJbXBsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUueG1pLmltcGwuWE1MUmVzb3VyY2VJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZG9Mb2FkLCBkb0xvYWQsIGRvTG9hZCwgZG9TYXZlLCBkb1NhdmUsIGdldERlZmF1bHRMb2FkT3B0aW9ucywgZ2V0RGVmYXVsdFNhdmVPcHRpb25zLCBnZXRET01IZWxwZXIsIGdldEVuY29kaW5nLCBnZXRFT2JqZWN0VG9FeHRlbnNpb25NYXAsIGdldEVPYmplY3RUb0lETWFwLCBnZXRJRCwgZ2V0SURUb0VPYmplY3RNYXAsIGdldFB1YmxpY0lkLCBnZXRTeXN0ZW1JZCwgZ2V0VVJJRnJhZ21lbnQsIGdldFhNTFZlcnNpb24sIGxvYWQsIGxvYWQsIHNhdmUsIHNhdmUsIHNldERvY3R5cGVJbmZvLCBzZXRFbmNvZGluZywgc2V0SUQsIHNldFVzZVppcCwgc2V0WE1MVmVyc2lvbiwgdG9LZXlTdHJpbmcsIHVzZVppcDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS5yZXNvdXJjZS5pbXBsLlJlc291cmNlSW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnJlc291cmNlLmltcGwuUmVzb3VyY2VJbXBsPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+YXR0YWNoZWQsIGJhc2ljU2V0UmVzb3VyY2VTZXQsIGRlbGV0ZSwgZGV0YWNoZWQsIGdldEFsbENvbnRlbnRzLCBnZXRDb250ZW50cywgZ2V0RU9iamVjdCwgZ2V0RXJyb3JzLCBnZXRJbnRyaW5zaWNJRFRvRU9iamVjdE1hcCwgZ2V0UmVzb3VyY2VTZXQsIGdldFRpbWVTdGFtcCwgZ2V0VVJJLCBnZXRXYXJuaW5ncywgaXNMb2FkZWQsIGlzTG9hZGluZywgaXNNb2RpZmllZCwgaXNUcmFja2luZ01vZGlmaWNhdGlvbiwgbG9hZCwgbG9hZCwgc2F2ZSwgc2F2ZSwgc2V0SW50cmluc2ljSURUb0VPYmplY3RNYXAsIHNldE1vZGlmaWVkLCBzZXRUaW1lU3RhbXAsIHNldFRyYWNraW5nTW9kaWZpY2F0aW9uLCBzZXRVUkksIHRvU3RyaW5nLCB1bmxvYWQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLk5vdGlmaWVySW1wbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5Ob3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGw8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lTm90aWZpY2F0aW9uUmVxdWlyZWQsIGVOb3RpZnk8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB3YWl0LCB3YWl0LCB3YWl0PC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnJlc291cmNlLlJlc291cmNlIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnJlc291cmNlLlJlc291cmNlPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZGVsZXRlLCBnZXRBbGxDb250ZW50cywgZ2V0Q29udGVudHMsIGdldEVPYmplY3QsIGdldEVycm9ycywgZ2V0UmVzb3VyY2VTZXQsIGdldFRpbWVTdGFtcCwgZ2V0VVJJLCBnZXRXYXJuaW5ncywgaXNMb2FkZWQsIGlzTW9kaWZpZWQsIGlzVHJhY2tpbmdNb2RpZmljYXRpb24sIGxvYWQsIGxvYWQsIHNhdmUsIHNhdmUsIHNldE1vZGlmaWVkLCBzZXRUaW1lU3RhbXAsIHNldFRyYWNraW5nTW9kaWZpY2F0aW9uLCBzZXRVUkksIHVubG9hZDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBpbnRlcmZhY2Ugb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lQWRhcHRlcnMsIGVEZWxpdmVyLCBlTm90aWZ5LCBlU2V0RGVsaXZlcjwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PSBDT05TVFJVQ1RPUiBERVRBSUwgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImNvbnN0cnVjdG9yX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJSb2JvdE1MUmVzb3VyY2VJbXBsKG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5VUkkpIj48IS0tIC0tPjwvQT48SDM+CitSb2JvdE1MUmVzb3VyY2VJbXBsPC9IMz4KKzxQUkU+CitwdWJsaWMgPEI+Um9ib3RNTFJlc291cmNlSW1wbDwvQj4ob3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLlVSSSZuYnNwO3VyaSk8L1BSRT4KKzxETD4KKzxERD5DcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSByZXNvdXJjZS4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnVyaTwvQ09ERT4gLSB0aGUgVVJJIG9mIHRoZSBuZXcgcmVzb3VyY2UuPC9ETD4KKzwvREw+Cis8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1JvYm90TUxSZXNvdXJjZUltcGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxSZXNvdXJjZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdE1MUmVzb3VyY2VJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzxUUj4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CisgIFNVTU1BUlk6Jm5ic3A7PEEgSFJFRj0iI25lc3RlZF9jbGFzc2VzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX3N1bW1hcnkiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnhtaS5pbXBsLlhNTFJlc291cmNlSW1wbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3JfZGV0YWlsIj5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRmOTRmNzUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbApAQCAtMCwwICsxLDE1MzUgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyOSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1JvYm90TUxTd2l0Y2gKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC5Sb2JvdE1MU3dpdGNoIGNsYXNzIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJSb2JvdE1MU3dpdGNoIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1JvYm90TUxTd2l0Y2guaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxSZXNvdXJjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxYTUxQcm9jZXNzb3IuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlJvYm90TUxTd2l0Y2guaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX3N1bW1hcnkiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9zdW1tYXJ5Ij5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9kZXRhaWwiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4KKzxIMj4KKzxGT05UIFNJWkU9Ii0xIj4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9GT05UPgorPEJSPgorQ2xhc3MgUm9ib3RNTFN3aXRjaCZsdDtUJmd0OzwvSDI+Cis8UFJFPgoramF2YS5sYW5nLk9iamVjdAorICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuU3dpdGNoJmx0O1QmZ3Q7CisgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuUm9ib3RNTFN3aXRjaCZsdDtUJmd0OzwvQj4KKzwvUFJFPgorPEhSPgorPERMPgorPERUPjxQUkU+cHVibGljIGNsYXNzIDxCPlJvYm90TUxTd2l0Y2gmbHQ7VCZndDs8L0I+PERUPmV4dGVuZHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuU3dpdGNoJmx0O1QmZ3Q7PC9ETD4KKzwvUFJFPgorCis8UD4KKzwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhlIDxiPlN3aXRjaDwvYj4gZm9yIHRoZSBtb2RlbCdzIGluaGVyaXRhbmNlIGhpZXJhcmNoeS4KKyBJdCBzdXBwb3J0cyB0aGUgY2FsbCA8Q09ERT5kb1N3aXRjaChvYmplY3QpPC9DT0RFPgorIHRvIGludm9rZSB0aGUgPGNvZGU+Y2FzZVhYWDwvY29kZT4gbWV0aG9kIGZvciBlYWNoIGNsYXNzIG9mIHRoZSBtb2RlbCwKKyBzdGFydGluZyB3aXRoIHRoZSBhY3R1YWwgY2xhc3Mgb2YgdGhlIG9iamVjdAorIGFuZCBwcm9jZWVkaW5nIHVwIHRoZSBpbmhlcml0YW5jZSBoaWVyYXJjaHkKKyB1bnRpbCBhIG5vbi1udWxsIHJlc3VsdCBpcyByZXR1cm5lZCwKKyB3aGljaCBpcyB0aGUgcmVzdWx0IG9mIHRoZSBzd2l0Y2guCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKworPFA+Cis8REw+Cis8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxDT0RFPlJvYm90TUxQYWNrYWdlPC9DT0RFPjwvQT48L0RMPgorPEhSPgorCis8UD4KKworPCEtLSA9PT09PT09PSBDT05TVFJVQ1RPUiBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+Q29uc3RydWN0b3IgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjUm9ib3RNTFN3aXRjaCgpIj5Sb2JvdE1MU3dpdGNoPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgc3dpdGNoPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZUFjdHVhdG9yU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRvclN5c3RlbSkiPmNhc2VBY3R1YXRvclN5c3RlbTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWN0dWF0b3JTeXN0ZW08L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+QWN0dWF0b3IgU3lzdGVtPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlQWdlbnQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFnZW50KSI+Y2FzZUFnZW50PC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BZ2VudDwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5BZ2VudDwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZUFsZ29yaXRobShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtKSI+Y2FzZUFsZ29yaXRobTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFsZ29yaXRobTwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5BbGdvcml0aG08L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VBbGdvcml0aG1MaWJyYXJ5KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG1MaWJyYXJ5KSI+Y2FzZUFsZ29yaXRobUxpYnJhcnk8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtTGlicmFyeTwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5BbGdvcml0aG0gTGlicmFyeTwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZUJsZW5kZXJNb3JzZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQmxlbmRlck1vcnNlKSI+Y2FzZUJsZW5kZXJNb3JzZTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJsZW5kZXJNb3JzZTwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5CbGVuZGVyIE1vcnNlPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlQnVpbGRpbmcob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkJ1aWxkaW5nKSI+Y2FzZUJ1aWxkaW5nPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0J1aWxkaW5nLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5CdWlsZGluZzwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5CdWlsZGluZzwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZUNhbWVyYVN5c3RlbShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2FtZXJhU3lzdGVtKSI+Y2FzZUNhbWVyYVN5c3RlbTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNhbWVyYVN5c3RlbTwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5DYW1lcmEgU3lzdGVtPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlQ29sbGVjdGlvbihvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ29sbGVjdGlvbikiPmNhc2VDb2xsZWN0aW9uPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbGxlY3Rpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNvbGxlY3Rpb248L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Q29sbGVjdGlvbjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZUNvbXBvc2VkRGF0YShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ29tcG9zZWREYXRhKSI+Y2FzZUNvbXBvc2VkRGF0YTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNvbXBvc2VkRGF0YTwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Db21wb3NlZCBEYXRhPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlQ3ljYWJUSyhvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ3ljYWJUSykiPmNhc2VDeWNhYlRLPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkN5Y2FiVEs8L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Q3ljYWIgVEs8L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VEYXRhRmxvd1BvcnQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRhdGFGbG93UG9ydCkiPmNhc2VEYXRhRmxvd1BvcnQ8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd1BvcnQ8L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+RGF0YSBGbG93IFBvcnQ8L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VFbmdpbmVTeXN0ZW0ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkVuZ2luZVN5c3RlbSkiPmNhc2VFbmdpbmVTeXN0ZW08L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5FbmdpbmVTeXN0ZW08L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+RW5naW5lIFN5c3RlbTwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZUVudmlyb25tZW50KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FbnZpcm9ubWVudCkiPmNhc2VFbnZpcm9ubWVudDwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW52aXJvbm1lbnQ8L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+RW52aXJvbm1lbnQ8L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VGbG9vcihvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRmxvb3IpIj5jYXNlRmxvb3I8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkZsb29yPC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkZsb29yPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlR1BTU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5HUFNTeXN0ZW0pIj5jYXNlR1BTU3lzdGVtPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+R1BTU3lzdGVtPC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkdQUyBTeXN0ZW08L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VHcm91bmQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkdyb3VuZCkiPmNhc2VHcm91bmQ8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Hcm91bmQ8L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+R3JvdW5kPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlSGFyZHdhcmUob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkhhcmR3YXJlKSI+Y2FzZUhhcmR3YXJlPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0hhcmR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5IYXJkd2FyZTwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5IYXJkd2FyZTwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZUh1bWFuKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5IdW1hbikiPmNhc2VIdW1hbjwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SHVtYW48L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+SHVtYW48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VJbWFnZVNlbnNvclN5c3RlbShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSW1hZ2VTZW5zb3JTeXN0ZW0pIj5jYXNlSW1hZ2VTZW5zb3JTeXN0ZW08L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkltYWdlU2Vuc29yU3lzdGVtPC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkltYWdlIFNlbnNvciBTeXN0ZW08L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VMYW5kU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGFuZFN1cmZhY2UpIj5jYXNlTGFuZFN1cmZhY2U8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxhbmRTdXJmYWNlPC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkxhbmQgU3VyZmFjZTwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZUxpZGFyU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MaWRhclN5c3RlbSkiPmNhc2VMaWRhclN5c3RlbTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGlkYXJTeXN0ZW08L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TGlkYXIgU3lzdGVtPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0pIj5jYXNlTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xvY2FsaXphdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtPC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkxvY2FsaXphdGlvbiBTZW5zb3IgU3lzdGVtPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0pIj5jYXNlT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSkiPmNhc2VPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+T2JqZWN0IFRyYWNraW5nIFNlbnNvciBTeXN0ZW08L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VPblBvcnQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9uUG9ydCkiPmNhc2VPblBvcnQ8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PblBvcnQ8L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+T24gUG9ydDwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZVBlZGVzdHJpYW4ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBlZGVzdHJpYW4pIj5jYXNlUGVkZXN0cmlhbjwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QZWRlc3RyaWFuPC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlBlZGVzdHJpYW48L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VQaHlzaWNhbERhdGEob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBoeXNpY2FsRGF0YSkiPmNhc2VQaHlzaWNhbERhdGE8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGh5c2ljYWxEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbERhdGE8L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UGh5c2ljYWwgRGF0YTwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZVBoeXNpY2FsT2JqZWN0KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaHlzaWNhbE9iamVjdCkiPmNhc2VQaHlzaWNhbE9iamVjdDwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxPYmplY3Q8L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UGh5c2ljYWwgT2JqZWN0PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlUGxhbmV0KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QbGFuZXQpIj5jYXNlUGxhbmV0PC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYW5ldC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGxhbmV0PC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlBsYW5ldDwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZVBsYXRmb3JtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QbGF0Zm9ybSkiPmNhc2VQbGF0Zm9ybTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGxhdGZvcm08L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UGxhdGZvcm08L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VQb3J0KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Qb3J0KSI+Y2FzZVBvcnQ8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UG9ydDwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Qb3J0PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlUHJpbWl0aXZlRGF0YShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUHJpbWl0aXZlRGF0YSkiPmNhc2VQcmltaXRpdmVEYXRhPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1ByaW1pdGl2ZURhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlByaW1pdGl2ZURhdGE8L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UHJpbWl0aXZlIERhdGE8L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VSb2JvdChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3QpIj5jYXNlUm9ib3Q8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90PC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlJvYm90PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlUm9ib3RpY01pZGRsZXdhcmUob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNNaWRkbGV3YXJlKSI+Y2FzZVJvYm90aWNNaWRkbGV3YXJlPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZTwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Sb2JvdGljIE1pZGRsZXdhcmU8L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VSb2JvdGljU2ltdWxhdG9yKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljU2ltdWxhdG9yKSI+Y2FzZVJvYm90aWNTaW11bGF0b3I8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1NpbXVsYXRvci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1NpbXVsYXRvcjwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Sb2JvdGljIFNpbXVsYXRvcjwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZVJvYm90aWNTeXN0ZW0ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTeXN0ZW0pIj5jYXNlUm9ib3RpY1N5c3RlbTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlJvYm90aWMgU3lzdGVtPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlU2Vuc29yRHJpdmVyKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZW5zb3JEcml2ZXIpIj5jYXNlU2Vuc29yRHJpdmVyPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yRHJpdmVyPC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlNlbnNvciBEcml2ZXI8L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VTZW5zb3JTeXN0ZW0ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvclN5c3RlbSkiPmNhc2VTZW5zb3JTeXN0ZW08L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JTeXN0ZW08L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U2Vuc29yIFN5c3RlbTwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZVNlcnZpY2VQb3J0KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlUG9ydCkiPmNhc2VTZXJ2aWNlUG9ydDwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZVBvcnQ8L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U2VydmljZSBQb3J0PC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlU2ltdWxhdGVkU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TaW11bGF0ZWRTeXN0ZW0pIj5jYXNlU2ltdWxhdGVkU3lzdGVtPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2ltdWxhdGVkU3lzdGVtPC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlNpbXVsYXRlZCBTeXN0ZW08L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VTb2Z0d2FyZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU29mdHdhcmUpIj5jYXNlU29mdHdhcmU8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNvZnR3YXJlPC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlNvZnR3YXJlPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlU3RhaXJzKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGFpcnMpIj5jYXNlU3RhaXJzPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3RhaXJzPC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlN0YWlyczwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZVN0YXRlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGF0ZSkiPmNhc2VTdGF0ZTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3RhdGU8L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U3RhdGU8L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VTdXJmYWNlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlKSI+Y2FzZVN1cmZhY2U8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3VyZmFjZTwvQT4mbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5TdXJmYWNlPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNjYXNlU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0pIj5jYXNlU3lzdGVtPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlN5c3RlbTwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZVRyYW5zaXRpb24ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlRyYW5zaXRpb24pIj5jYXNlVHJhbnNpdGlvbjwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5UcmFuc2l0aW9uPC9BPiZuYnNwO29iamVjdCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlRyYW5zaXRpb248L2VtPic8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT48L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sI2Nhc2VXYXRlclN1cmZhY2Uob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLldhdGVyU3VyZmFjZSkiPmNhc2VXYXRlclN1cmZhY2U8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5XYXRlclN1cmZhY2U8L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+V2F0ZXIgU3VyZmFjZTwvZW0+JzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwjY2FzZVdoZWVsU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5XaGVlbFN5c3RlbSkiPmNhc2VXaGVlbFN5c3RlbTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+Jm5ic3A7b2JqZWN0KTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+V2hlZWwgU3lzdGVtPC9lbT4nPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCNkZWZhdWx0Q2FzZShvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkiPmRlZmF1bHRDYXNlPC9BPjwvQj4ob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QmbmJzcDtvYmplY3QpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5FT2JqZWN0PC9lbT4nPC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5Td2l0Y2giPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLlN3aXRjaDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmRvU3dpdGNoPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPmVxdWFscywgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgdG9TdHJpbmcsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT0gQ09OU1RSVUNUT1IgREVUQUlMID09PT09PT09IC0tPgorCis8QSBOQU1FPSJjb25zdHJ1Y3Rvcl9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5Db25zdHJ1Y3RvciBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iUm9ib3RNTFN3aXRjaCgpIj48IS0tIC0tPjwvQT48SDM+CitSb2JvdE1MU3dpdGNoPC9IMz4KKzxQUkU+CitwdWJsaWMgPEI+Um9ib3RNTFN3aXRjaDwvQj4oKTwvUFJFPgorPERMPgorPEREPkNyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIHN3aXRjaC4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8L0RMPgorCis8IS0tID09PT09PT09PT09PSBNRVRIT0QgREVUQUlMID09PT09PT09PT0gLS0+CisKKzxBIE5BTUU9Im1ldGhvZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgRGV0YWlsPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CisKKzxBIE5BTUU9ImNhc2VUcmFuc2l0aW9uKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5UcmFuc2l0aW9uKSI+PCEtLSAtLT48L0E+PEgzPgorY2FzZVRyYW5zaXRpb248L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPiA8Qj5jYXNlVHJhbnNpdGlvbjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlRyYW5zaXRpb248L0E+Jm5ic3A7b2JqZWN0KTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlRyYW5zaXRpb248L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKyByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+b2JqZWN0PC9DT0RFPiAtIHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlRyYW5zaXRpb248L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+ZG9Td2l0Y2goRU9iamVjdCk8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjYXNlQWxnb3JpdGhtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0pIj48IS0tIC0tPjwvQT48SDM+CitjYXNlQWxnb3JpdGhtPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT4gPEI+Y2FzZUFsZ29yaXRobTwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtPC9BPiZuYnNwO29iamVjdCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5BbGdvcml0aG08L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKyByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+b2JqZWN0PC9DT0RFPiAtIHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkFsZ29yaXRobTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5kb1N3aXRjaChFT2JqZWN0KTwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNhc2VSb2JvdChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3QpIj48IS0tIC0tPjwvQT48SDM+CitjYXNlUm9ib3Q8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPiA8Qj5jYXNlUm9ib3Q8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3Q8L0E+Jm5ic3A7b2JqZWN0KTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlJvYm90PC9lbT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisgcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm9iamVjdDwvQ09ERT4gLSB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Sb2JvdDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5kb1N3aXRjaChFT2JqZWN0KTwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNhc2VTeXN0ZW0ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSkiPjwhLS0gLS0+PC9BPjxIMz4KK2Nhc2VTeXN0ZW08L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPiA8Qj5jYXNlU3lzdGVtPC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+Jm5ic3A7b2JqZWN0KTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlN5c3RlbTwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5vYmplY3Q8L0NPREU+IC0gdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U3lzdGVtPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPmRvU3dpdGNoKEVPYmplY3QpPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY2FzZURhdGFGbG93UG9ydChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGF0YUZsb3dQb3J0KSI+PCEtLSAtLT48L0E+PEgzPgorY2FzZURhdGFGbG93UG9ydDwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+IDxCPmNhc2VEYXRhRmxvd1BvcnQ8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkRhdGFGbG93UG9ydDwvQT4mbmJzcDtvYmplY3QpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+RGF0YSBGbG93IFBvcnQ8L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKyByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+b2JqZWN0PC9DT0RFPiAtIHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkRhdGEgRmxvdyBQb3J0PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPmRvU3dpdGNoKEVPYmplY3QpPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY2FzZVBvcnQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBvcnQpIj48IS0tIC0tPjwvQT48SDM+CitjYXNlUG9ydDwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+IDxCPmNhc2VQb3J0PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UG9ydDwvQT4mbmJzcDtvYmplY3QpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UG9ydDwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5vYmplY3Q8L0NPREU+IC0gdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UG9ydDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5kb1N3aXRjaChFT2JqZWN0KTwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNhc2VFbnZpcm9ubWVudChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRW52aXJvbm1lbnQpIj48IS0tIC0tPjwvQT48SDM+CitjYXNlRW52aXJvbm1lbnQ8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPiA8Qj5jYXNlRW52aXJvbm1lbnQ8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW52aXJvbm1lbnQ8L0E+Jm5ic3A7b2JqZWN0KTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkVudmlyb25tZW50PC9lbT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisgcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm9iamVjdDwvQ09ERT4gLSB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5FbnZpcm9ubWVudDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5kb1N3aXRjaChFT2JqZWN0KTwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNhc2VTdXJmYWNlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlKSI+PCEtLSAtLT48L0E+PEgzPgorY2FzZVN1cmZhY2U8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPiA8Qj5jYXNlU3VyZmFjZTwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+Jm5ic3A7b2JqZWN0KTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlN1cmZhY2U8L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKyByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+b2JqZWN0PC9DT0RFPiAtIHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlN1cmZhY2U8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+ZG9Td2l0Y2goRU9iamVjdCk8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjYXNlQnVpbGRpbmcob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkJ1aWxkaW5nKSI+PCEtLSAtLT48L0E+PEgzPgorY2FzZUJ1aWxkaW5nPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT4gPEI+Y2FzZUJ1aWxkaW5nPC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQnVpbGRpbmcuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkJ1aWxkaW5nPC9BPiZuYnNwO29iamVjdCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5CdWlsZGluZzwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5vYmplY3Q8L0NPREU+IC0gdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+QnVpbGRpbmc8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+ZG9Td2l0Y2goRU9iamVjdCk8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjYXNlQWdlbnQob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFnZW50KSI+PCEtLSAtLT48L0E+PEgzPgorY2FzZUFnZW50PC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT4gPEI+Y2FzZUFnZW50PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPiZuYnNwO29iamVjdCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5BZ2VudDwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5vYmplY3Q8L0NPREU+IC0gdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+QWdlbnQ8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+ZG9Td2l0Y2goRU9iamVjdCk8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjYXNlUGxhbmV0KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QbGFuZXQpIj48IS0tIC0tPjwvQT48SDM+CitjYXNlUGxhbmV0PC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT4gPEI+Y2FzZVBsYW5ldDwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYW5ldC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGxhbmV0PC9BPiZuYnNwO29iamVjdCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5QbGFuZXQ8L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKyByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+b2JqZWN0PC9DT0RFPiAtIHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlBsYW5ldDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5kb1N3aXRjaChFT2JqZWN0KTwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNhc2VMYW5kU3VyZmFjZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGFuZFN1cmZhY2UpIj48IS0tIC0tPjwvQT48SDM+CitjYXNlTGFuZFN1cmZhY2U8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPiA8Qj5jYXNlTGFuZFN1cmZhY2U8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGFuZFN1cmZhY2U8L0E+Jm5ic3A7b2JqZWN0KTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkxhbmQgU3VyZmFjZTwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5vYmplY3Q8L0NPREU+IC0gdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TGFuZCBTdXJmYWNlPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPmRvU3dpdGNoKEVPYmplY3QpPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY2FzZUdyb3VuZChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuR3JvdW5kKSI+PCEtLSAtLT48L0E+PEgzPgorY2FzZUdyb3VuZDwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+IDxCPmNhc2VHcm91bmQ8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Hcm91bmQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkdyb3VuZDwvQT4mbmJzcDtvYmplY3QpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+R3JvdW5kPC9lbT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisgcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm9iamVjdDwvQ09ERT4gLSB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Hcm91bmQ8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+ZG9Td2l0Y2goRU9iamVjdCk8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjYXNlRmxvb3Iob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkZsb29yKSI+PCEtLSAtLT48L0E+PEgzPgorY2FzZUZsb29yPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT4gPEI+Y2FzZUZsb29yPC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkZsb29yPC9BPiZuYnNwO29iamVjdCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5GbG9vcjwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5vYmplY3Q8L0NPREU+IC0gdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Rmxvb3I8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+ZG9Td2l0Y2goRU9iamVjdCk8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjYXNlV2F0ZXJTdXJmYWNlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5XYXRlclN1cmZhY2UpIj48IS0tIC0tPjwvQT48SDM+CitjYXNlV2F0ZXJTdXJmYWNlPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT4gPEI+Y2FzZVdhdGVyU3VyZmFjZTwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2F0ZXJTdXJmYWNlPC9BPiZuYnNwO29iamVjdCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5XYXRlciBTdXJmYWNlPC9lbT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisgcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm9iamVjdDwvQ09ERT4gLSB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5XYXRlciBTdXJmYWNlPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPmRvU3dpdGNoKEVPYmplY3QpPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY2FzZUh1bWFuKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5IdW1hbikiPjwhLS0gLS0+PC9BPjxIMz4KK2Nhc2VIdW1hbjwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+IDxCPmNhc2VIdW1hbjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5IdW1hbjwvQT4mbmJzcDtvYmplY3QpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+SHVtYW48L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKyByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+b2JqZWN0PC9DT0RFPiAtIHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkh1bWFuPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPmRvU3dpdGNoKEVPYmplY3QpPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY2FzZVBlZGVzdHJpYW4ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBlZGVzdHJpYW4pIj48IS0tIC0tPjwvQT48SDM+CitjYXNlUGVkZXN0cmlhbjwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+IDxCPmNhc2VQZWRlc3RyaWFuPC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGVkZXN0cmlhbjwvQT4mbmJzcDtvYmplY3QpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UGVkZXN0cmlhbjwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5vYmplY3Q8L0NPREU+IC0gdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UGVkZXN0cmlhbjwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5kb1N3aXRjaChFT2JqZWN0KTwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNhc2VTdGFpcnMob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0YWlycykiPjwhLS0gLS0+PC9BPjxIMz4KK2Nhc2VTdGFpcnM8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPiA8Qj5jYXNlU3RhaXJzPC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TdGFpcnM8L0E+Jm5ic3A7b2JqZWN0KTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlN0YWlyczwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5vYmplY3Q8L0NPREU+IC0gdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U3RhaXJzPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPmRvU3dpdGNoKEVPYmplY3QpPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY2FzZVBsYXRmb3JtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QbGF0Zm9ybSkiPjwhLS0gLS0+PC9BPjxIMz4KK2Nhc2VQbGF0Zm9ybTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+IDxCPmNhc2VQbGF0Zm9ybTwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QbGF0Zm9ybTwvQT4mbmJzcDtvYmplY3QpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UGxhdGZvcm08L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKyByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+b2JqZWN0PC9DT0RFPiAtIHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlBsYXRmb3JtPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPmRvU3dpdGNoKEVPYmplY3QpPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY2FzZVJvYm90aWNNaWRkbGV3YXJlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljTWlkZGxld2FyZSkiPjwhLS0gLS0+PC9BPjxIMz4KK2Nhc2VSb2JvdGljTWlkZGxld2FyZTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+IDxCPmNhc2VSb2JvdGljTWlkZGxld2FyZTwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljTWlkZGxld2FyZTwvQT4mbmJzcDtvYmplY3QpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Um9ib3RpYyBNaWRkbGV3YXJlPC9lbT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisgcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm9iamVjdDwvQ09ERT4gLSB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Sb2JvdGljIE1pZGRsZXdhcmU8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+ZG9Td2l0Y2goRU9iamVjdCk8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjYXNlUm9ib3RpY1NpbXVsYXRvcihvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY1NpbXVsYXRvcikiPjwhLS0gLS0+PC9BPjxIMz4KK2Nhc2VSb2JvdGljU2ltdWxhdG9yPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT4gPEI+Y2FzZVJvYm90aWNTaW11bGF0b3I8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU2ltdWxhdG9yPC9BPiZuYnNwO29iamVjdCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Sb2JvdGljIFNpbXVsYXRvcjwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5vYmplY3Q8L0NPREU+IC0gdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Um9ib3RpYyBTaW11bGF0b3I8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+ZG9Td2l0Y2goRU9iamVjdCk8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjYXNlQ3ljYWJUSyhvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ3ljYWJUSykiPjwhLS0gLS0+PC9BPjxIMz4KK2Nhc2VDeWNhYlRLPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT4gPEI+Y2FzZUN5Y2FiVEs8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DeWNhYlRLPC9BPiZuYnNwO29iamVjdCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5DeWNhYiBUSzwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5vYmplY3Q8L0NPREU+IC0gdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Q3ljYWIgVEs8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+ZG9Td2l0Y2goRU9iamVjdCk8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjYXNlQmxlbmRlck1vcnNlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5CbGVuZGVyTW9yc2UpIj48IS0tIC0tPjwvQT48SDM+CitjYXNlQmxlbmRlck1vcnNlPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT4gPEI+Y2FzZUJsZW5kZXJNb3JzZTwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QmxlbmRlck1vcnNlPC9BPiZuYnNwO29iamVjdCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5CbGVuZGVyIE1vcnNlPC9lbT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisgcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm9iamVjdDwvQ09ERT4gLSB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5CbGVuZGVyIE1vcnNlPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPmRvU3dpdGNoKEVPYmplY3QpPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY2FzZU9uUG9ydChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT25Qb3J0KSI+PCEtLSAtLT48L0E+PEgzPgorY2FzZU9uUG9ydDwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+IDxCPmNhc2VPblBvcnQ8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9uUG9ydDwvQT4mbmJzcDtvYmplY3QpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+T24gUG9ydDwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5vYmplY3Q8L0NPREU+IC0gdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+T24gUG9ydDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5kb1N3aXRjaChFT2JqZWN0KTwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNhc2VTZXJ2aWNlUG9ydChvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2VydmljZVBvcnQpIj48IS0tIC0tPjwvQT48SDM+CitjYXNlU2VydmljZVBvcnQ8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPiA8Qj5jYXNlU2VydmljZVBvcnQ8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2VydmljZVBvcnQ8L0E+Jm5ic3A7b2JqZWN0KTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlNlcnZpY2UgUG9ydDwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5vYmplY3Q8L0NPREU+IC0gdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U2VydmljZSBQb3J0PC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPmRvU3dpdGNoKEVPYmplY3QpPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY2FzZUFjdHVhdG9yU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRvclN5c3RlbSkiPjwhLS0gLS0+PC9BPjxIMz4KK2Nhc2VBY3R1YXRvclN5c3RlbTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+IDxCPmNhc2VBY3R1YXRvclN5c3RlbTwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdG9yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BY3R1YXRvclN5c3RlbTwvQT4mbmJzcDtvYmplY3QpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+QWN0dWF0b3IgU3lzdGVtPC9lbT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisgcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm9iamVjdDwvQ09ERT4gLSB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5BY3R1YXRvciBTeXN0ZW08L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+ZG9Td2l0Y2goRU9iamVjdCk8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjYXNlUm9ib3RpY1N5c3RlbShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY1N5c3RlbSkiPjwhLS0gLS0+PC9BPjxIMz4KK2Nhc2VSb2JvdGljU3lzdGVtPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT4gPEI+Y2FzZVJvYm90aWNTeXN0ZW08L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdGljU3lzdGVtPC9BPiZuYnNwO29iamVjdCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Sb2JvdGljIFN5c3RlbTwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5vYmplY3Q8L0NPREU+IC0gdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Um9ib3RpYyBTeXN0ZW08L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+ZG9Td2l0Y2goRU9iamVjdCk8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjYXNlU2Vuc29yU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZW5zb3JTeXN0ZW0pIj48IS0tIC0tPjwvQT48SDM+CitjYXNlU2Vuc29yU3lzdGVtPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT4gPEI+Y2FzZVNlbnNvclN5c3RlbTwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yU3lzdGVtPC9BPiZuYnNwO29iamVjdCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5TZW5zb3IgU3lzdGVtPC9lbT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisgcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm9iamVjdDwvQ09ERT4gLSB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5TZW5zb3IgU3lzdGVtPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPmRvU3dpdGNoKEVPYmplY3QpPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY2FzZUhhcmR3YXJlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5IYXJkd2FyZSkiPjwhLS0gLS0+PC9BPjxIMz4KK2Nhc2VIYXJkd2FyZTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+IDxCPmNhc2VIYXJkd2FyZTwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0hhcmR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5IYXJkd2FyZTwvQT4mbmJzcDtvYmplY3QpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+SGFyZHdhcmU8L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKyByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+b2JqZWN0PC9DT0RFPiAtIHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkhhcmR3YXJlPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPmRvU3dpdGNoKEVPYmplY3QpPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY2FzZVNvZnR3YXJlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Tb2Z0d2FyZSkiPjwhLS0gLS0+PC9BPjxIMz4KK2Nhc2VTb2Z0d2FyZTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+IDxCPmNhc2VTb2Z0d2FyZTwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NvZnR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Tb2Z0d2FyZTwvQT4mbmJzcDtvYmplY3QpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U29mdHdhcmU8L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKyByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+b2JqZWN0PC9DT0RFPiAtIHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlNvZnR3YXJlPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPmRvU3dpdGNoKEVPYmplY3QpPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY2FzZVByaW1pdGl2ZURhdGEob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlByaW1pdGl2ZURhdGEpIj48IS0tIC0tPjwvQT48SDM+CitjYXNlUHJpbWl0aXZlRGF0YTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+IDxCPmNhc2VQcmltaXRpdmVEYXRhPC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UHJpbWl0aXZlRGF0YTwvQT4mbmJzcDtvYmplY3QpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UHJpbWl0aXZlIERhdGE8L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKyByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+b2JqZWN0PC9DT0RFPiAtIHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlByaW1pdGl2ZSBEYXRhPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPmRvU3dpdGNoKEVPYmplY3QpPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY2FzZVBoeXNpY2FsRGF0YShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGh5c2ljYWxEYXRhKSI+PCEtLSAtLT48L0E+PEgzPgorY2FzZVBoeXNpY2FsRGF0YTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+IDxCPmNhc2VQaHlzaWNhbERhdGE8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBoeXNpY2FsRGF0YTwvQT4mbmJzcDtvYmplY3QpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UGh5c2ljYWwgRGF0YTwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5vYmplY3Q8L0NPREU+IC0gdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UGh5c2ljYWwgRGF0YTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5kb1N3aXRjaChFT2JqZWN0KTwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNhc2VDb21wb3NlZERhdGEob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNvbXBvc2VkRGF0YSkiPjwhLS0gLS0+PC9BPjxIMz4KK2Nhc2VDb21wb3NlZERhdGE8L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPiA8Qj5jYXNlQ29tcG9zZWREYXRhPC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcG9zZWREYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Db21wb3NlZERhdGE8L0E+Jm5ic3A7b2JqZWN0KTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkNvbXBvc2VkIERhdGE8L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKyByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+b2JqZWN0PC9DT0RFPiAtIHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkNvbXBvc2VkIERhdGE8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+ZG9Td2l0Y2goRU9iamVjdCk8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjYXNlQ29sbGVjdGlvbihvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ29sbGVjdGlvbikiPjwhLS0gLS0+PC9BPjxIMz4KK2Nhc2VDb2xsZWN0aW9uPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT4gPEI+Y2FzZUNvbGxlY3Rpb248L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Db2xsZWN0aW9uPC9BPiZuYnNwO29iamVjdCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Db2xsZWN0aW9uPC9lbT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisgcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm9iamVjdDwvQ09ERT4gLSB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Db2xsZWN0aW9uPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPmRvU3dpdGNoKEVPYmplY3QpPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY2FzZUVuZ2luZVN5c3RlbShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRW5naW5lU3lzdGVtKSI+PCEtLSAtLT48L0E+PEgzPgorY2FzZUVuZ2luZVN5c3RlbTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+IDxCPmNhc2VFbmdpbmVTeXN0ZW08L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkVuZ2luZVN5c3RlbTwvQT4mbmJzcDtvYmplY3QpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+RW5naW5lIFN5c3RlbTwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5vYmplY3Q8L0NPREU+IC0gdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+RW5naW5lIFN5c3RlbTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5kb1N3aXRjaChFT2JqZWN0KTwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNhc2VXaGVlbFN5c3RlbShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuV2hlZWxTeXN0ZW0pIj48IS0tIC0tPjwvQT48SDM+CitjYXNlV2hlZWxTeXN0ZW08L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPiA8Qj5jYXNlV2hlZWxTeXN0ZW08L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2hlZWxTeXN0ZW08L0E+Jm5ic3A7b2JqZWN0KTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPldoZWVsIFN5c3RlbTwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5vYmplY3Q8L0NPREU+IC0gdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+V2hlZWwgU3lzdGVtPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPmRvU3dpdGNoKEVPYmplY3QpPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY2FzZUltYWdlU2Vuc29yU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5JbWFnZVNlbnNvclN5c3RlbSkiPjwhLS0gLS0+PC9BPjxIMz4KK2Nhc2VJbWFnZVNlbnNvclN5c3RlbTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+IDxCPmNhc2VJbWFnZVNlbnNvclN5c3RlbTwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5JbWFnZVNlbnNvclN5c3RlbTwvQT4mbmJzcDtvYmplY3QpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+SW1hZ2UgU2Vuc29yIFN5c3RlbTwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5vYmplY3Q8L0NPREU+IC0gdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+SW1hZ2UgU2Vuc29yIFN5c3RlbTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5kb1N3aXRjaChFT2JqZWN0KTwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNhc2VDYW1lcmFTeXN0ZW0ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNhbWVyYVN5c3RlbSkiPjwhLS0gLS0+PC9BPjxIMz4KK2Nhc2VDYW1lcmFTeXN0ZW08L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPiA8Qj5jYXNlQ2FtZXJhU3lzdGVtPC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5DYW1lcmFTeXN0ZW08L0E+Jm5ic3A7b2JqZWN0KTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkNhbWVyYSBTeXN0ZW08L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKyByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+b2JqZWN0PC9DT0RFPiAtIHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkNhbWVyYSBTeXN0ZW08L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+ZG9Td2l0Y2goRU9iamVjdCk8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjYXNlT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0pIj48IS0tIC0tPjwvQT48SDM+CitjYXNlT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT4gPEI+Y2FzZU9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPiZuYnNwO29iamVjdCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5PYmplY3QgRGV0ZWN0aW9uIFNlbnNvciBTeXN0ZW08L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKyByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+b2JqZWN0PC9DT0RFPiAtIHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5kb1N3aXRjaChFT2JqZWN0KTwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNhc2VPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0pIj48IS0tIC0tPjwvQT48SDM+CitjYXNlT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPiA8Qj5jYXNlT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+Jm5ic3A7b2JqZWN0KTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPk9iamVjdCBUcmFja2luZyBTZW5zb3IgU3lzdGVtPC9lbT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisgcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm9iamVjdDwvQ09ERT4gLSB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5PYmplY3QgVHJhY2tpbmcgU2Vuc29yIFN5c3RlbTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5kb1N3aXRjaChFT2JqZWN0KTwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNhc2VMaWRhclN5c3RlbShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW0pIj48IS0tIC0tPjwvQT48SDM+CitjYXNlTGlkYXJTeXN0ZW08L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPiA8Qj5jYXNlTGlkYXJTeXN0ZW08L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGlkYXJTeXN0ZW08L0E+Jm5ic3A7b2JqZWN0KTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkxpZGFyIFN5c3RlbTwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5vYmplY3Q8L0NPREU+IC0gdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TGlkYXIgU3lzdGVtPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPmRvU3dpdGNoKEVPYmplY3QpPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY2FzZUxvY2FsaXphdGlvblNlbnNvclN5c3RlbShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtKSI+PCEtLSAtLT48L0E+PEgzPgorY2FzZUxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+IDxCPmNhc2VMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQT4mbmJzcDtvYmplY3QpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKyByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+b2JqZWN0PC9DT0RFPiAtIHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkxvY2FsaXphdGlvbiBTZW5zb3IgU3lzdGVtPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPmRvU3dpdGNoKEVPYmplY3QpPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY2FzZUdQU1N5c3RlbShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuR1BTU3lzdGVtKSI+PCEtLSAtLT48L0E+PEgzPgorY2FzZUdQU1N5c3RlbTwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+IDxCPmNhc2VHUFNTeXN0ZW08L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkdQU1N5c3RlbTwvQT4mbmJzcDtvYmplY3QpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+R1BTIFN5c3RlbTwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5vYmplY3Q8L0NPREU+IC0gdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+R1BTIFN5c3RlbTwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5kb1N3aXRjaChFT2JqZWN0KTwvQ09ERT48L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImNhc2VTaW11bGF0ZWRTeXN0ZW0ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNpbXVsYXRlZFN5c3RlbSkiPjwhLS0gLS0+PC9BPjxIMz4KK2Nhc2VTaW11bGF0ZWRTeXN0ZW08L0gzPgorPFBSRT4KK3B1YmxpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPiA8Qj5jYXNlU2ltdWxhdGVkU3lzdGVtPC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TaW11bGF0ZWRTeXN0ZW08L0E+Jm5ic3A7b2JqZWN0KTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlNpbXVsYXRlZCBTeXN0ZW08L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKyByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+b2JqZWN0PC9DT0RFPiAtIHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlNpbXVsYXRlZCBTeXN0ZW08L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+ZG9Td2l0Y2goRU9iamVjdCk8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjYXNlQWxnb3JpdGhtTGlicmFyeShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtTGlicmFyeSkiPjwhLS0gLS0+PC9BPjxIMz4KK2Nhc2VBbGdvcml0aG1MaWJyYXJ5PC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT4gPEI+Y2FzZUFsZ29yaXRobUxpYnJhcnk8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG1MaWJyYXJ5PC9BPiZuYnNwO29iamVjdCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5BbGdvcml0aG0gTGlicmFyeTwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5vYmplY3Q8L0NPREU+IC0gdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+QWxnb3JpdGhtIExpYnJhcnk8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+ZG9Td2l0Y2goRU9iamVjdCk8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjYXNlU3RhdGUob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0YXRlKSI+PCEtLSAtLT48L0E+PEgzPgorY2FzZVN0YXRlPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT4gPEI+Y2FzZVN0YXRlPC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YXRlPC9BPiZuYnNwO29iamVjdCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5TdGF0ZTwvZW0+Jy4KKyA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorPFA+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5vYmplY3Q8L0NPREU+IC0gdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U3RhdGU8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+ZG9Td2l0Y2goRU9iamVjdCk8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJjYXNlU2Vuc29yRHJpdmVyKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZW5zb3JEcml2ZXIpIj48IS0tIC0tPjwvQT48SDM+CitjYXNlU2Vuc29yRHJpdmVyPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT4gPEI+Y2FzZVNlbnNvckRyaXZlcjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yRHJpdmVyPC9BPiZuYnNwO29iamVjdCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5TZW5zb3IgRHJpdmVyPC9lbT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisgcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm9iamVjdDwvQ09ERT4gLSB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5TZW5zb3IgRHJpdmVyPC9lbT4nLjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPmRvU3dpdGNoKEVPYmplY3QpPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iY2FzZVBoeXNpY2FsT2JqZWN0KG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaHlzaWNhbE9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2Nhc2VQaHlzaWNhbE9iamVjdDwvSDM+Cis8UFJFPgorcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9InR5cGUgcGFyYW1ldGVyIGluIFJvYm90TUxTd2l0Y2giPlQ8L0E+IDxCPmNhc2VQaHlzaWNhbE9iamVjdDwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT4mbmJzcDtvYmplY3QpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UGh5c2ljYWwgT2JqZWN0PC9lbT4nLgorIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisgcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm9iamVjdDwvQ09ERT4gLSB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5QaHlzaWNhbCBPYmplY3Q8L2VtPicuPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PENPREU+ZG9Td2l0Y2goRU9iamVjdCk8L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJkZWZhdWx0Q2FzZShvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkiPjwhLS0gLS0+PC9BPjxIMz4KK2RlZmF1bHRDYXNlPC9IMz4KKzxQUkU+CitwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0idHlwZSBwYXJhbWV0ZXIgaW4gUm9ib3RNTFN3aXRjaCI+VDwvQT4gPEI+ZGVmYXVsdENhc2U8L0I+KG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0Jm5ic3A7b2JqZWN0KTwvUFJFPgorPERMPgorPEREPlJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkVPYmplY3Q8L2VtPicuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKyByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaCwgYnV0IHRoaXMgaXMgdGhlIGxhc3QgY2FzZSBhbnl3YXkuCisgPCEtLSBlbmQtdXNlci1kb2MgLS0+Cis8UD4KKzxERD48REw+Cis8RFQ+PEI+T3ZlcnJpZGVzOjwvQj48REQ+PENPREU+ZGVmYXVsdENhc2U8L0NPREU+IGluIGNsYXNzIDxDT0RFPm9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLlN3aXRjaCZsdDs8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJ0eXBlIHBhcmFtZXRlciBpbiBSb2JvdE1MU3dpdGNoIj5UPC9BPiZndDs8L0NPREU+PC9ETD4KKzwvREQ+Cis8REQ+PERMPgorPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5vYmplY3Q8L0NPREU+IC0gdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+RU9iamVjdDwvZW0+Jy48RFQ+PEI+U2VlIEFsc286PC9CPjxERD48Q09ERT5Td2l0Y2guZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpPC9DT0RFPjwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUm9ib3RNTFN3aXRjaC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFJlc291cmNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFhNTFByb2Nlc3Nvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RNTFN3aXRjaC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3Jfc3VtbWFyeSI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX2RldGFpbCI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxYTUxQcm9jZXNzb3IuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFhNTFByb2Nlc3Nvci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM5NjhhZTAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxYTUxQcm9jZXNzb3IuaHRtbApAQCAtMCwwICsxLDI0MSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjI5IENFVCAyMDEyIC0tPgorPFRJVExFPgorUm9ib3RNTFhNTFByb2Nlc3NvcgorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLlJvYm90TUxYTUxQcm9jZXNzb3IgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlJvYm90TUxYTUxQcm9jZXNzb3IiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUm9ib3RNTFhNTFByb2Nlc3Nvci5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7TkVYVCBDTEFTUzwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MWE1MUHJvY2Vzc29yLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RNTFhNTFByb2Nlc3Nvci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3Jfc3VtbWFyeSI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUueG1pLnV0aWwuWE1MUHJvY2Vzc29yIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9kZXRhaWwiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+Cis8SDI+Cis8Rk9OVCBTSVpFPSItMSI+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvRk9OVD4KKzxCUj4KK0NsYXNzIFJvYm90TUxYTUxQcm9jZXNzb3I8L0gyPgorPFBSRT4KK2phdmEubGFuZy5PYmplY3QKKyAgPElNRyBTUkM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9pbmhlcml0LmdpZiIgQUxUPSJleHRlbmRlZCBieSAiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS54bWkudXRpbC5YTUxQcm9jZXNzb3IKKyAgICAgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC5Sb2JvdE1MWE1MUHJvY2Vzc29yPC9CPgorPC9QUkU+Cis8SFI+Cis8REw+Cis8RFQ+PFBSRT5wdWJsaWMgY2xhc3MgPEI+Um9ib3RNTFhNTFByb2Nlc3NvcjwvQj48RFQ+ZXh0ZW5kcyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUueG1pLnV0aWwuWE1MUHJvY2Vzc29yPC9ETD4KKzwvUFJFPgorCis8UD4KK1RoaXMgY2xhc3MgY29udGFpbnMgaGVscGVyIG1ldGhvZHMgdG8gc2VyaWFsaXplIGFuZCBkZXNlcmlhbGl6ZSBYTUwgZG9jdW1lbnRzCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4uCis8UD4KKworPFA+Cis8SFI+CisKKzxQPgorCis8IS0tID09PT09PT09IENPTlNUUlVDVE9SIFNVTU1BUlkgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImNvbnN0cnVjdG9yX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5Db25zdHJ1Y3RvciBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxYTUxQcm9jZXNzb3IuaHRtbCNSb2JvdE1MWE1MUHJvY2Vzc29yKCkiPlJvYm90TUxYTUxQcm9jZXNzb3I8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtQdWJsaWMgY29uc3RydWN0b3IgdG8gaW5zdGFudGlhdGUgdGhlIGhlbHBlcjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmVtZi5lY29yZS54bWkudXRpbC5YTUxQcm9jZXNzb3IiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS54bWkudXRpbC5YTUxQcm9jZXNzb3I8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5nZXRFUGFja2FnZVJlZ2lzdHJ5LCBnZXRFeHRlbmRlZE1ldGFEYXRhLCBsb2FkLCBsb2FkLCBsb2FkLCBsb2FkLCBzYXZlLCBzYXZlLCBzYXZlLCBzYXZlVG9TdHJpbmc8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBqYXZhLmxhbmcuT2JqZWN0PC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+ZXF1YWxzLCBnZXRDbGFzcywgaGFzaENvZGUsIG5vdGlmeSwgbm90aWZ5QWxsLCB0b1N0cmluZywgd2FpdCwgd2FpdCwgd2FpdDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8IS0tID09PT09PT09PSBDT05TVFJVQ1RPUiBERVRBSUwgPT09PT09PT0gLS0+CisKKzxBIE5BTUU9ImNvbnN0cnVjdG9yX2RldGFpbCI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjEiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNvbnN0cnVjdG9yIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJSb2JvdE1MWE1MUHJvY2Vzc29yKCkiPjwhLS0gLS0+PC9BPjxIMz4KK1JvYm90TUxYTUxQcm9jZXNzb3I8L0gzPgorPFBSRT4KK3B1YmxpYyA8Qj5Sb2JvdE1MWE1MUHJvY2Vzc29yPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UHVibGljIGNvbnN0cnVjdG9yIHRvIGluc3RhbnRpYXRlIHRoZSBoZWxwZXIuCisgPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKzxQPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvUm9ib3RNTFhNTFByb2Nlc3Nvci5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOworJm5ic3A7TkVYVCBDTEFTUzwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MWE1MUHJvY2Vzc29yLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RNTFhNTFByb2Nlc3Nvci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDtGSUVMRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3Jfc3VtbWFyeSI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5lbWYuZWNvcmUueG1pLnV0aWwuWE1MUHJvY2Vzc29yIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorREVUQUlMOiZuYnNwO0ZJRUxEJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9kZXRhaWwiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvY2xhc3MtdXNlL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9jbGFzcy11c2UvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDQ1MTYzMQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvY2xhc3MtdXNlL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sCkBAIC0wLDAgKzEsMTQwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLlJvYm90TUxBZGFwdGVyRmFjdG9yeQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuUm9ib3RNTEFkYXB0ZXJGYWN0b3J5IjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvY2xhc3MtdXNlL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlJvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLlJvYm90TUxBZGFwdGVyRmFjdG9yeTwvQj48L0gyPgorPC9DRU5URVI+CitObyB1c2FnZSBvZiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC5Sb2JvdE1MQWRhcHRlckZhY3RvcnkKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5Lmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL2NsYXNzLXVzZS9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvY2xhc3MtdXNlL1JvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL2NsYXNzLXVzZS9Sb2JvdE1MUmVzb3VyY2VGYWN0b3J5SW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI3YjE0MTcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL2NsYXNzLXVzZS9Sb2JvdE1MUmVzb3VyY2VGYWN0b3J5SW1wbC5odG1sCkBAIC0wLDAgKzEsMTQwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLlJvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC5Sb2JvdE1MUmVzb3VyY2VGYWN0b3J5SW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFJlc291cmNlRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvY2xhc3MtdXNlL1JvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RNTFJlc291cmNlRmFjdG9yeUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC5Sb2JvdE1MUmVzb3VyY2VGYWN0b3J5SW1wbDwvQj48L0gyPgorPC9DRU5URVI+CitObyB1c2FnZSBvZiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC5Sb2JvdE1MUmVzb3VyY2VGYWN0b3J5SW1wbAorPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MUmVzb3VyY2VGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9jbGFzcy11c2UvUm9ib3RNTFJlc291cmNlRmFjdG9yeUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdE1MUmVzb3VyY2VGYWN0b3J5SW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9jbGFzcy11c2UvUm9ib3RNTFJlc291cmNlSW1wbC5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9jbGFzcy11c2UvUm9ib3RNTFJlc291cmNlSW1wbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM0NzM0ODgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL2NsYXNzLXVzZS9Sb2JvdE1MUmVzb3VyY2VJbXBsLmh0bWwKQEAgLTAsMCArMSwxNDAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuUm9ib3RNTFJlc291cmNlSW1wbAorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuUm9ib3RNTFJlc291cmNlSW1wbCI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFJlc291cmNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9jbGFzcy11c2UvUm9ib3RNTFJlc291cmNlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlJvYm90TUxSZXNvdXJjZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC5Sb2JvdE1MUmVzb3VyY2VJbXBsPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLlJvYm90TUxSZXNvdXJjZUltcGwKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFJlc291cmNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9jbGFzcy11c2UvUm9ib3RNTFJlc291cmNlSW1wbC5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IlJvYm90TUxSZXNvdXJjZUltcGwuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvY2xhc3MtdXNlL1JvYm90TUxTd2l0Y2guaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvY2xhc3MtdXNlL1JvYm90TUxTd2l0Y2guaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hYjdjZmZjCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9jbGFzcy11c2UvUm9ib3RNTFN3aXRjaC5odG1sCkBAIC0wLDAgKzEsMTQwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzIgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLlJvYm90TUxTd2l0Y2gKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIENsYXNzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLlJvYm90TUxTd2l0Y2giOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvY2xhc3MtdXNlL1JvYm90TUxTd2l0Y2guaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdE1MU3dpdGNoLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgQ2xhc3M8YnI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuUm9ib3RNTFN3aXRjaDwvQj48L0gyPgorPC9DRU5URVI+CitObyB1c2FnZSBvZiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC5Sb2JvdE1MU3dpdGNoCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxTd2l0Y2guaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvY2xhc3MtdXNlL1JvYm90TUxTd2l0Y2guaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJSb2JvdE1MU3dpdGNoLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL2NsYXNzLXVzZS9Sb2JvdE1MWE1MUHJvY2Vzc29yLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL2NsYXNzLXVzZS9Sb2JvdE1MWE1MUHJvY2Vzc29yLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTA3ZjllNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvY2xhc3MtdXNlL1JvYm90TUxYTUxQcm9jZXNzb3IuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMyIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC5Sb2JvdE1MWE1MUHJvY2Vzc29yCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBDbGFzcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC5Sb2JvdE1MWE1MUHJvY2Vzc29yIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MWE1MUHJvY2Vzc29yLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL2NsYXNzLXVzZS9Sb2JvdE1MWE1MUHJvY2Vzc29yLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RNTFhNTFByb2Nlc3Nvci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxDRU5URVI+Cis8SDI+Cis8Qj5Vc2VzIG9mIENsYXNzPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLlJvYm90TUxYTUxQcm9jZXNzb3I8L0I+PC9IMj4KKzwvQ0VOVEVSPgorTm8gdXNhZ2Ugb2Ygb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuUm9ib3RNTFhNTFByb2Nlc3NvcgorPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MWE1MUHJvY2Vzc29yLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5DbGFzczwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL2NsYXNzLXVzZS9Sb2JvdE1MWE1MUHJvY2Vzc29yLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0iUm9ib3RNTFhNTFByb2Nlc3Nvci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLWZyYW1lLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2UtZnJhbWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hODcyMDI5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLWZyYW1lLmh0bWwKQEAgLTAsMCArMSw0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCBwYWNrYWdlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiPgorPEZPTlQgc2l6ZT0iKzEiIENMQVNTPSJGcmFtZVRpdGxlRm9udCI+Cis8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT48L0ZPTlQ+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBOT1dSQVA+PEZPTlQgc2l6ZT0iKzEiIENMQVNTPSJGcmFtZUhlYWRpbmdGb250Ij4KK0NsYXNzZXM8L0ZPTlQ+Jm5ic3A7Cis8Rk9OVCBDTEFTUz0iRnJhbWVJdGVtRm9udCI+Cis8QlI+Cis8QSBIUkVGPSJSb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPlJvYm90TUxBZGFwdGVyRmFjdG9yeTwvQT4KKzxCUj4KKzxBIEhSRUY9IlJvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5Sb2JvdE1MUmVzb3VyY2VGYWN0b3J5SW1wbDwvQT4KKzxCUj4KKzxBIEhSRUY9IlJvYm90TUxSZXNvdXJjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIiB0YXJnZXQ9ImNsYXNzRnJhbWUiPlJvYm90TUxSZXNvdXJjZUltcGw8L0E+Cis8QlI+Cis8QSBIUkVGPSJSb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5Sb2JvdE1MU3dpdGNoPC9BPgorPEJSPgorPEEgSFJFRj0iUm9ib3RNTFhNTFByb2Nlc3Nvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiIHRhcmdldD0iY2xhc3NGcmFtZSI+Um9ib3RNTFhNTFByb2Nlc3NvcjwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorCisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkwYWU5NzcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sCkBAIC0wLDAgKzEsMTcxIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbAorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIHBhY2thZ2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5QYWNrYWdlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5QUkVWIFBBQ0tBR0U8L0I+PC9BPiZuYnNwOworJm5ic3A7TkVYVCBQQUNLQUdFPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxIMj4KK1BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwKKzwvSDI+CisKKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+Q2xhc3MgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj5Sb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0E+PC9CPjwvVEQ+Cis8VEQ+VGhlIDxiPkFkYXB0ZXIgRmFjdG9yeTwvYj4gZm9yIHRoZSBtb2RlbC48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIxNSUiPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFJlc291cmNlRmFjdG9yeUltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+VGhlIDxiPlJlc291cmNlIEZhY3Rvcnk8L2I+IGFzc29jaWF0ZWQgd2l0aCB0aGUgcGFja2FnZTwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFJlc291cmNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxSZXNvdXJjZUltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+VGhlIDxiPlJlc291cmNlIDwvYj4gYXNzb2NpYXRlZCB3aXRoIHRoZSBwYWNrYWdlPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMTUlIj48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+Um9ib3RNTFN3aXRjaCZsdDtUJmd0OzwvQT48L0I+PC9URD4KKzxURD5UaGUgPGI+U3dpdGNoPC9iPiBmb3IgdGhlIG1vZGVsJ3MgaW5oZXJpdGFuY2UgaGllcmFyY2h5LjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFhNTFByb2Nlc3Nvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPlJvYm90TUxYTUxQcm9jZXNzb3I8L0E+PC9CPjwvVEQ+Cis8VEQ+VGhpcyBjbGFzcyBjb250YWlucyBoZWxwZXIgbWV0aG9kcyB0byBzZXJpYWxpemUgYW5kIGRlc2VyaWFsaXplIFhNTCBkb2N1bWVudHMKKyA8ITwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworCis8UD4KKzxETD4KKzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5QYWNrYWdlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Qj5QUkVWIFBBQ0tBR0U8L0I+PC9BPiZuYnNwOworJm5ic3A7TkVYVCBQQUNLQUdFPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXRyZWUuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS10cmVlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGQxM2Y3MQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS10cmVlLmh0bWwKQEAgLTAsMCArMSwxNzAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIENsYXNzIEhpZXJhcmNoeQorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIENsYXNzIEhpZXJhcmNoeSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VHJlZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvcGFja2FnZS10cmVlLmh0bWwiPjxCPlBSRVY8L0I+PC9BPiZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorSGllcmFyY2h5IEZvciBQYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsCis8L0gyPgorPC9DRU5URVI+Cis8REw+Cis8RFQ+PEI+UGFja2FnZSBIaWVyYXJjaGllczo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXRyZWUuaHRtbCI+QWxsIFBhY2thZ2VzPC9BPjwvREw+Cis8SFI+Cis8SDI+CitDbGFzcyBIaWVyYXJjaHkKKzwvSDI+Cis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5qYXZhLmxhbmcuT2JqZWN0PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5BZGFwdGVyRmFjdG9yeUltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlckZhY3RvcnkpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MQWRhcHRlckZhY3RvcnkuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5Sb2JvdE1MQWRhcHRlckZhY3Rvcnk8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkJhc2ljTm90aWZpZXJJbXBsIChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyKQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5Ob3RpZmllckltcGw8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuaW1wbC5SZXNvdXJjZUltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnJlc291cmNlLlJlc291cmNlLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuUmVzb3VyY2UuSW50ZXJuYWwpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUueG1pLmltcGwuWE1MUmVzb3VyY2VJbXBsIChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS54bWkuWE1MUmVzb3VyY2UpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MUmVzb3VyY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+Um9ib3RNTFJlc291cmNlSW1wbDwvQj48L0E+PC9VTD4KKzwvVUw+Cis8L1VMPgorPC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5yZXNvdXJjZS5pbXBsLlJlc291cmNlRmFjdG9yeUltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnJlc291cmNlLlJlc291cmNlLkZhY3RvcnkpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MUmVzb3VyY2VGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPlJvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuU3dpdGNoJmx0O1QmZ3Q7PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPlJvYm90TUxTd2l0Y2g8L0I+PC9BPiZsdDtUJmd0OzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUueG1pLnV0aWwuWE1MUHJvY2Vzc29yPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwuPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFhNTFByb2Nlc3Nvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPlJvYm90TUxYTUxQcm9jZXNzb3I8L0I+PC9BPjwvVUw+Cis8L1VMPgorPC9VTD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlRyZWU8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2UtdHJlZS5odG1sIj48Qj5QUkVWPC9CPjwvQT4mbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS10cmVlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl9ib3R0b20iPjwvQT4KKzwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4KKworPEhSPgorCis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2UtdXNlLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2UtdXNlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGRiNTExZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS11c2UuaHRtbApAQCAtMCwwICsxLDE0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMzIENFVCAyMDEyIC0tPgorPFRJVExFPgorVXNlcyBvZiBQYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsCis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iVXNlcyBvZiBQYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL3BhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBQYWNrYWdlPGJyPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsPC9CPjwvSDI+Cis8L0NFTlRFUj4KK05vIHVzYWdlIG9mIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsCis8UD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvcGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvQWN0aXZhdG9yLmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9BY3RpdmF0b3IuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNTk1MjI0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvQWN0aXZhdG9yLmh0bWwKQEAgLTAsMCArMSw0NDQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OToyOCBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK0FjdGl2YXRvcgorPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1cy5BY3RpdmF0b3IgY2xhc3MiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkFjdGl2YXRvciI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9BY3RpdmF0b3IuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYgQ0xBU1MmbmJzcDsKKyZuYnNwO05FWFQgQ0xBU1M8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL0FjdGl2YXRvci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFjdGl2YXRvci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8VFI+Cis8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgorICBTVU1NQVJZOiZuYnNwO05FU1RFRCZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KK0RFVEFJTDombmJzcDs8QSBIUkVGPSIjZmllbGRfZGV0YWlsIj5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX2RldGFpbCI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPgorPEgyPgorPEZPTlQgU0laRT0iLTEiPgorb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzPC9GT05UPgorPEJSPgorQ2xhc3MgQWN0aXZhdG9yPC9IMj4KKzxQUkU+CitqYXZhLmxhbmcuT2JqZWN0CisgIDxJTUcgU1JDPSIuLi8uLi8uLi8uLi9yZXNvdXJjZXMvaW5oZXJpdC5naWYiIEFMVD0iZXh0ZW5kZWQgYnkgIj5vcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWUuUGx1Z2luCisgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+b3JnLmVjbGlwc2UudWkucGx1Z2luLkFic3RyYWN0VUlQbHVnaW4KKyAgICAgICAgICA8SU1HIFNSQz0iLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2luaGVyaXQuZ2lmIiBBTFQ9ImV4dGVuZGVkIGJ5ICI+PEI+b3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzLkFjdGl2YXRvcjwvQj4KKzwvUFJFPgorPERMPgorPERUPjxCPkFsbCBJbXBsZW1lbnRlZCBJbnRlcmZhY2VzOjwvQj4gPEREPm9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVBY3RpdmF0b3I8L0REPgorPC9ETD4KKzxIUj4KKzxETD4KKzxEVD48UFJFPnB1YmxpYyBjbGFzcyA8Qj5BY3RpdmF0b3I8L0I+PERUPmV4dGVuZHMgb3JnLmVjbGlwc2UudWkucGx1Z2luLkFic3RyYWN0VUlQbHVnaW48L0RMPgorPC9QUkU+CisKKzxQPgorVGhlIGFjdGl2YXRvciBjbGFzcyBjb250cm9scyB0aGUgcGx1Zy1pbiBsaWZlIGN5Y2xlLgorPFA+CisKKzxQPgorPEhSPgorCis8UD4KKzwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9BY3RpdmF0b3IuaHRtbCNQTFVHSU5fSUQiPlBMVUdJTl9JRDwvQT48L0I+PC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgQ29uc3RhbnQgUExVR0lOX0lELjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWUuUGx1Z2luIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCI+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5QbHVnaW48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5QTFVHSU5fUFJFRkVSRU5DRV9TQ09QRSwgUFJFRkVSRU5DRVNfREVGQVVMVF9PVkVSUklERV9CQVNFX05BTUUsIFBSRUZFUkVOQ0VTX0RFRkFVTFRfT1ZFUlJJREVfRklMRV9OQU1FPC9DT0RFPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPCEtLSA9PT09PT09PSBDT05TVFJVQ1RPUiBTVU1NQVJZID09PT09PT09IC0tPgorCis8QSBOQU1FPSJjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorPEI+Q29uc3RydWN0b3IgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvQWN0aXZhdG9yLmh0bWwjQWN0aXZhdG9yKCkiPkFjdGl2YXRvcjwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBjb25zdHJ1Y3Rvci48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KKworPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9BY3RpdmF0b3IuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1cyI+QWN0aXZhdG9yPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvQWN0aXZhdG9yLmh0bWwjZ2V0RGVmYXVsdCgpIj5nZXREZWZhdWx0PC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgc2hhcmVkIGluc3RhbmNlLjwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDtvcmcuZWNsaXBzZS5zd3QuZ3JhcGhpY3MuSW1hZ2U8L0NPREU+PC9GT05UPjwvVEQ+Cis8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL0FjdGl2YXRvci5odG1sI2dldEZsb3dQb3J0SW1hZ2Uob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRhdGFGbG93UG9ydCkiPmdldEZsb3dQb3J0SW1hZ2U8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5EYXRhRmxvd1BvcnQ8L0E+Jm5ic3A7Zmxvd1BvcnQpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtHZXRzIHRoZSBmbG93IHBvcnQgaW1hZ2UuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9BY3RpdmF0b3IuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1cyI+QWN0aXZhdG9yPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvQWN0aXZhdG9yLmh0bWwjZ2V0SW5zdGFuY2UoKSI+Z2V0SW5zdGFuY2U8L0E+PC9CPigpPC9DT0RFPgorCis8QlI+CismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIHRoZSBzaGFyZWQgaW5zdGFuY2UuPC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KKzxDT0RFPiZuYnNwO29yZy5lY2xpcHNlLnN3dC5ncmFwaGljcy5JbWFnZTwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvQWN0aXZhdG9yLmh0bWwjZ2V0U2VydmljZVBvcnRJbWFnZShvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2VydmljZVBvcnQpIj5nZXRTZXJ2aWNlUG9ydEltYWdlPC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlUG9ydDwvQT4mbmJzcDtzZXJ2aWNlUG9ydCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0dldHMgdGhlIHNlcnZpY2UgcG9ydCBpbWFnZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KKzxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvQWN0aXZhdG9yLmh0bWwjc3RhcnQob3JnLm9zZ2kuZnJhbWV3b3JrLkJ1bmRsZUNvbnRleHQpIj5zdGFydDwvQT48L0I+KG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0Jm5ic3A7Y29udGV4dCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+Cis8Q09ERT4mbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9BY3RpdmF0b3IuaHRtbCNzdG9wKG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0KSI+c3RvcDwvQT48L0I+KG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0Jm5ic3A7Y29udGV4dCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOzxBIE5BTUU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmVjbGlwc2UudWkucGx1Z2luLkFic3RyYWN0VUlQbHVnaW4iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLnVpLnBsdWdpbi5BYnN0cmFjdFVJUGx1Z2luPC9CPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQ+PENPREU+Z2V0RGlhbG9nU2V0dGluZ3MsIGdldEltYWdlUmVnaXN0cnksIGdldFByZWZlcmVuY2VTdG9yZSwgZ2V0V29ya2JlbmNoLCBpbWFnZURlc2NyaXB0b3JGcm9tUGx1Z2luLCBzaHV0ZG93biwgc3RhcnR1cDwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5lY2xpcHNlLmNvcmUucnVudGltZS5QbHVnaW4iPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIG9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5QbHVnaW48L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5maW5kLCBmaW5kLCBnZXRCdW5kbGUsIGdldERlc2NyaXB0b3IsIGdldExvZywgZ2V0UGx1Z2luUHJlZmVyZW5jZXMsIGdldFN0YXRlTG9jYXRpb24sIGludGVybmFsSW5pdGlhbGl6ZURlZmF1bHRQbHVnaW5QcmVmZXJlbmNlcywgaXNEZWJ1Z2dpbmcsIG9wZW5TdHJlYW0sIG9wZW5TdHJlYW0sIHNhdmVQbHVnaW5QcmVmZXJlbmNlcywgc2V0RGVidWdnaW5nLCB0b1N0cmluZzwvQ09ERT48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0Ij48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Q09ERT5lcXVhbHMsIGdldENsYXNzLCBoYXNoQ29kZSwgbm90aWZ5LCBub3RpZnlBbGwsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKworPCEtLSA9PT09PT09PT09PT0gRklFTEQgREVUQUlMID09PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJmaWVsZF9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5GaWVsZCBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iUExVR0lOX0lEIj48IS0tIC0tPjwvQT48SDM+CitQTFVHSU5fSUQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgZmluYWwgamF2YS5sYW5nLlN0cmluZyA8Qj5QTFVHSU5fSUQ8L0I+PC9QUkU+Cis8REw+Cis8REQ+VGhlIENvbnN0YW50IFBMVUdJTl9JRC4KKzxQPgorPERMPgorPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzLkFjdGl2YXRvci5QTFVHSU5fSUQiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgorPC9ETD4KKworPCEtLSA9PT09PT09PT0gQ09OU1RSVUNUT1IgREVUQUlMID09PT09PT09IC0tPgorCis8QSBOQU1FPSJjb25zdHJ1Y3Rvcl9kZXRhaWwiPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIxIj48Rk9OVCBTSVpFPSIrMiI+Cis8Qj5Db25zdHJ1Y3RvciBEZXRhaWw8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPC9UQUJMRT4KKworPEEgTkFNRT0iQWN0aXZhdG9yKCkiPjwhLS0gLS0+PC9BPjxIMz4KK0FjdGl2YXRvcjwvSDM+Cis8UFJFPgorcHVibGljIDxCPkFjdGl2YXRvcjwvQj4oKTwvUFJFPgorPERMPgorPEREPlRoZSBjb25zdHJ1Y3Rvci4KKzxQPgorPC9ETD4KKworPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgorCis8QSBOQU1FPSJtZXRob2RfZGV0YWlsIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMSI+PEZPTlQgU0laRT0iKzIiPgorPEI+TWV0aG9kIERldGFpbDwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8QSBOQU1FPSJzdGFydChvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQ29udGV4dCkiPjwhLS0gLS0+PC9BPjxIMz4KK3N0YXJ0PC9IMz4KKzxQUkU+CitwdWJsaWMgdm9pZCA8Qj5zdGFydDwvQj4ob3JnLm9zZ2kuZnJhbWV3b3JrLkJ1bmRsZUNvbnRleHQmbmJzcDtjb250ZXh0KQorICAgICAgICAgICB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbjwvUFJFPgorPERMPgorPEREPjxETD4KKzxEVD48Qj5TcGVjaWZpZWQgYnk6PC9CPjxERD48Q09ERT5zdGFydDwvQ09ERT4gaW4gaW50ZXJmYWNlIDxDT0RFPm9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVBY3RpdmF0b3I8L0NPREU+PERUPjxCPk92ZXJyaWRlczo8L0I+PEREPjxDT0RFPnN0YXJ0PC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS51aS5wbHVnaW4uQWJzdHJhY3RVSVBsdWdpbjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5UaHJvd3M6PC9CPgorPEREPjxDT0RFPmphdmEubGFuZy5FeGNlcHRpb248L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJzdG9wKG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVDb250ZXh0KSI+PCEtLSAtLT48L0E+PEgzPgorc3RvcDwvSDM+Cis8UFJFPgorcHVibGljIHZvaWQgPEI+c3RvcDwvQj4ob3JnLm9zZ2kuZnJhbWV3b3JrLkJ1bmRsZUNvbnRleHQmbmJzcDtjb250ZXh0KQorICAgICAgICAgIHRocm93cyBqYXZhLmxhbmcuRXhjZXB0aW9uPC9QUkU+Cis8REw+Cis8REQ+PERMPgorPERUPjxCPlNwZWNpZmllZCBieTo8L0I+PEREPjxDT0RFPnN0b3A8L0NPREU+IGluIGludGVyZmFjZSA8Q09ERT5vcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQWN0aXZhdG9yPC9DT0RFPjxEVD48Qj5PdmVycmlkZXM6PC9CPjxERD48Q09ERT5zdG9wPC9DT0RFPiBpbiBjbGFzcyA8Q09ERT5vcmcuZWNsaXBzZS51aS5wbHVnaW4uQWJzdHJhY3RVSVBsdWdpbjwvQ09ERT48L0RMPgorPC9ERD4KKzxERD48REw+CisKKzxEVD48Qj5UaHJvd3M6PC9CPgorPEREPjxDT0RFPmphdmEubGFuZy5FeGNlcHRpb248L0NPREU+PC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXREZWZhdWx0KCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldERlZmF1bHQ8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzIj5BY3RpdmF0b3I8L0E+IDxCPmdldERlZmF1bHQ8L0I+KCk8L1BSRT4KKzxETD4KKzxERD5SZXR1cm5zIHRoZSBzaGFyZWQgaW5zdGFuY2UuCis8UD4KKzxERD48REw+CisKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHNoYXJlZCBpbnN0YW5jZTwvREw+Cis8L0REPgorPC9ETD4KKzxIUj4KKworPEEgTkFNRT0iZ2V0SW5zdGFuY2UoKSI+PCEtLSAtLT48L0E+PEgzPgorZ2V0SW5zdGFuY2U8L0gzPgorPFBSRT4KK3B1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzIj5BY3RpdmF0b3I8L0E+IDxCPmdldEluc3RhbmNlPC9CPigpPC9QUkU+Cis8REw+Cis8REQ+UmV0dXJucyB0aGUgc2hhcmVkIGluc3RhbmNlLgorPFA+Cis8REQ+PERMPgorCis8RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRoZSBzaGFyZWQgaW5zdGFuY2U8L0RMPgorPC9ERD4KKzwvREw+Cis8SFI+CisKKzxBIE5BTUU9ImdldEZsb3dQb3J0SW1hZ2Uob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRhdGFGbG93UG9ydCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldEZsb3dQb3J0SW1hZ2U8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5zd3QuZ3JhcGhpY3MuSW1hZ2UgPEI+Z2V0Rmxvd1BvcnRJbWFnZTwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dQb3J0PC9BPiZuYnNwO2Zsb3dQb3J0KTwvUFJFPgorPERMPgorPEREPkdldHMgdGhlIGZsb3cgcG9ydCBpbWFnZS4KKzxQPgorPEREPjxETD4KKzxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+Zmxvd1BvcnQ8L0NPREU+IC0gdGhlIGZsb3cgcG9ydAorPERUPjxCPlJldHVybnM6PC9CPjxERD50aGUgZmxvdyBwb3J0IGltYWdlPC9ETD4KKzwvREQ+Cis8L0RMPgorPEhSPgorCis8QSBOQU1FPSJnZXRTZXJ2aWNlUG9ydEltYWdlKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlUG9ydCkiPjwhLS0gLS0+PC9BPjxIMz4KK2dldFNlcnZpY2VQb3J0SW1hZ2U8L0gzPgorPFBSRT4KK3B1YmxpYyBvcmcuZWNsaXBzZS5zd3QuZ3JhcGhpY3MuSW1hZ2UgPEI+Z2V0U2VydmljZVBvcnRJbWFnZTwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZXJ2aWNlUG9ydDwvQT4mbmJzcDtzZXJ2aWNlUG9ydCk8L1BSRT4KKzxETD4KKzxERD5HZXRzIHRoZSBzZXJ2aWNlIHBvcnQgaW1hZ2UuCis8UD4KKzxERD48REw+Cis8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnNlcnZpY2VQb3J0PC9DT0RFPiAtIHRoZSBzZXJ2aWNlIHBvcnQKKzxEVD48Qj5SZXR1cm5zOjwvQj48REQ+dGhlIHNlcnZpY2UgcG9ydCBpbWFnZTwvREw+Cis8L0REPgorPC9ETD4KKzwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvQWN0aXZhdG9yLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWIENMQVNTJm5ic3A7CismbmJzcDtORVhUIENMQVNTPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9BY3RpdmF0b3IuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJBY3RpdmF0b3IuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPFRSPgorPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KKyAgU1VNTUFSWTombmJzcDtORVNURUQmbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX3N1bW1hcnkiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3Jfc3VtbWFyeSI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CitERVRBSUw6Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9kZXRhaWwiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvY2xhc3MtdXNlL0FjdGl2YXRvci5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvY2xhc3MtdXNlL0FjdGl2YXRvci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZjMjYzNWMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9jbGFzcy11c2UvQWN0aXZhdG9yLmh0bWwKQEAgLTAsMCArMSwxODQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzLkFjdGl2YXRvcgorPC9USVRMRT4KKworCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Z1bmN0aW9uIHdpbmRvd1RpdGxlKCkKK3sKKyAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IlVzZXMgb2YgQ2xhc3Mgb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzLkFjdGl2YXRvciI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkNsYXNzPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VXNlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL2NsYXNzLXVzZS9BY3RpdmF0b3IuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJBY3RpdmF0b3IuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorPEI+VXNlcyBvZiBDbGFzczxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMuQWN0aXZhdG9yPC9CPjwvSDI+Cis8L0NFTlRFUj4KKworPFRBQkxFIEJPUkRFUj0iMSIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgorPFRIIEFMSUdOPSJsZWZ0IiBDT0xTUEFOPSIyIj48Rk9OVCBTSVpFPSIrMiI+CitQYWNrYWdlcyB0aGF0IHVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvQWN0aXZhdG9yLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMiPkFjdGl2YXRvcjwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48QSBIUkVGPSIjb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzIj48Qj5vcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXM8L0I+PC9BPjwvVEQ+Cis8VEQ+Jm5ic3A7Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorJm5ic3A7Cis8UD4KKzxBIE5BTUU9Im9yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1cyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1VzZXMgb2YgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzIj5BY3RpdmF0b3I8L0E+IGluIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPk1ldGhvZHMgaW4gPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXM8L0E+IHRoYXQgcmV0dXJuIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9BY3RpdmF0b3IuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1cyI+QWN0aXZhdG9yPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzIj5BY3RpdmF0b3I8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPkFjdGl2YXRvci48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL0FjdGl2YXRvci5odG1sI2dldERlZmF1bHQoKSI+Z2V0RGVmYXVsdDwvQT48L0I+KCk8L0NPREU+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIHNoYXJlZCBpbnN0YW5jZS48L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgorPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzIj5BY3RpdmF0b3I8L0E+PC9DT0RFPjwvRk9OVD48L1REPgorPFREPjxDT0RFPjxCPkFjdGl2YXRvci48L0I+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL0FjdGl2YXRvci5odG1sI2dldEluc3RhbmNlKCkiPmdldEluc3RhbmNlPC9BPjwvQj4oKTwvQ09ERT4KKworPEJSPgorJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UmV0dXJucyB0aGUgc2hhcmVkIGluc3RhbmNlLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworPFA+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvQWN0aXZhdG9yLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+Q2xhc3M8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi9wYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvY2xhc3MtdXNlL0FjdGl2YXRvci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9IkFjdGl2YXRvci5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvcGFja2FnZS1mcmFtZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvcGFja2FnZS1mcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM5MDA1NjcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9wYWNrYWdlLWZyYW1lLmh0bWwKQEAgLTAsMCArMSwzMiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzCis8L1RJVExFPgorCis8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0ib3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzIHBhY2thZ2UiPgorCis8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CisKKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSI+Cis8Rk9OVCBzaXplPSIrMSIgQ0xBU1M9IkZyYW1lVGl0bGVGb250Ij4KKzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9wYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJjbGFzc0ZyYW1lIj5vcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXM8L0E+PC9GT05UPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgTk9XUkFQPjxGT05UIHNpemU9IisxIiBDTEFTUz0iRnJhbWVIZWFkaW5nRm9udCI+CitDbGFzc2VzPC9GT05UPiZuYnNwOworPEZPTlQgQ0xBU1M9IkZyYW1lSXRlbUZvbnQiPgorPEJSPgorPEEgSFJFRj0iQWN0aXZhdG9yLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMiIHRhcmdldD0iY2xhc3NGcmFtZSI+QWN0aXZhdG9yPC9BPjwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+CisKKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9wYWNrYWdlLXN1bW1hcnkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wODc0ODg1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwKQEAgLTAsMCArMSwxNTQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMSBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK29yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1cworPC9USVRMRT4KKworPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1cyBwYWNrYWdlIj4KKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlBhY2thZ2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViBQQUNLQUdFJm5ic3A7CismbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEI+TkVYVCBQQUNLQUdFPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfdG9wIj48L0E+Cis8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+CisKKzxIUj4KKzxIMj4KK1BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzCis8L0gyPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPkNsYXNzIFN1bW1hcnk8L0I+PC9GT05UPjwvVEg+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjE1JSI+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzIj5BY3RpdmF0b3I8L0E+PC9CPjwvVEQ+Cis8VEQ+VGhlIGFjdGl2YXRvciBjbGFzcyBjb250cm9scyB0aGUgcGx1Zy1pbiBsaWZlIGN5Y2xlLjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKyZuYnNwOworCis8UD4KKzxETD4KKzwvREw+Cis8SFI+CisKKworPCEtLSA9PT09PT09IFNUQVJUIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfYm90dG9tIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5QYWNrYWdlPC9CPjwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS11c2UuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYgUEFDS0FHRSZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxCPk5FWFQgUEFDS0FHRTwvQj48L0E+PC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9wYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL3BhY2thZ2UtdHJlZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvcGFja2FnZS10cmVlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjgwNmMxZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL3BhY2thZ2UtdHJlZS5odG1sCkBAIC0wLDAgKzEsMTU0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzEgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMgQ2xhc3MgSGllcmFyY2h5Cis8L1RJVExFPgorCisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzIENsYXNzIEhpZXJhcmNoeSI7Cit9Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKzwvTk9TQ1JJUFQ+CisKKzwvSEVBRD4KKworPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0id2luZG93VGl0bGUoKTsiPgorCisKKzwhLS0gPT09PT09PT09IFNUQVJUIE9GIFRPUCBOQVZCQVIgPT09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl90b3AiPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX3RvcCIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl90b3BfZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+VHJlZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvcGFja2FnZS10cmVlLmh0bWwiPjxCPk5FWFQ8L0I+PC9BPjwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvcGFja2FnZS10cmVlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KK0hpZXJhcmNoeSBGb3IgUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMKKzwvSDI+Cis8L0NFTlRFUj4KKzxETD4KKzxEVD48Qj5QYWNrYWdlIEhpZXJhcmNoaWVzOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctdHJlZS5odG1sIj5BbGwgUGFja2FnZXM8L0E+PC9ETD4KKzxIUj4KKzxIMj4KK0NsYXNzIEhpZXJhcmNoeQorPC9IMj4KKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPmphdmEubGFuZy5PYmplY3Q8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5jb3JlLnJ1bnRpbWUuUGx1Z2luIChpbXBsZW1lbnRzIG9yZy5vc2dpLmZyYW1ld29yay5CdW5kbGVBY3RpdmF0b3IpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS51aS5wbHVnaW4uQWJzdHJhY3RVSVBsdWdpbjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1cy48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvQWN0aXZhdG9yLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMiPjxCPkFjdGl2YXRvcjwvQj48L0E+PC9VTD4KKzwvVUw+Cis8L1VMPgorPC9VTD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlRyZWU8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL3BhY2thZ2UtdHJlZS5odG1sIj48Qj5ORVhUPC9CPjwvQT48L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4Lmh0bWw/b3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL3BhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvcGFja2FnZS11c2UuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL3BhY2thZ2UtdXNlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDQyMTU5NwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL3BhY2thZ2UtdXNlLmh0bWwKQEAgLTAsMCArMSwxNjYgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGQiPgorPCEtLU5ld1BhZ2UtLT4KKzxIVE1MPgorPEhFQUQ+Cis8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIChidWlsZCAxLjUuMF8yMikgb24gV2VkIEZlYiAyOSAxMzo1OTozMiBDRVQgMjAxMiAtLT4KKzxUSVRMRT4KK1VzZXMgb2YgUGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9Ii4uLy4uLy4uLy4uL3N0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJVc2VzIG9mIFBhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzIjsKK30KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorPC9OT1NDUklQVD4KKworPC9IRUFEPgorCis8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJ3aW5kb3dUaXRsZSgpOyI+CisKKworPCEtLSA9PT09PT09PT0gU1RBUlQgT0YgVE9QIE5BVkJBUiA9PT09PT09IC0tPgorPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+Cis8QSBIUkVGPSIjc2tpcC1uYXZiYXJfdG9wIiB0aXRsZT0iU2tpcCBuYXZpZ2F0aW9uIGxpbmtzIj48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSPgorPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgorPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+Cis8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiIFNVTU1BUlk9IiI+CisgIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlVzZTwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1maWxlcy9pbmRleC0xLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPC9UUj4KKzwvVEFCTEU+Cis8L1REPgorPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+Cis8L0VNPgorPC9URD4KKzwvVFI+CisKKzxUUj4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CismbmJzcDtQUkVWJm5ic3A7CismbmJzcDtORVhUPC9GT05UPjwvVEQ+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9wYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9InBhY2thZ2UtdXNlLmh0bWwiIHRhcmdldD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOworJm5ic3A7PFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICA8IS0tCisgIGlmKHdpbmRvdz09dG9wKSB7CisgICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKKyAgfQorICAvLy0tPgorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+CisgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Cis8L05PU0NSSVBUPgorCisKKzwvRk9OVD48L1REPgorPC9UUj4KKzwvVEFCTEU+Cis8QSBOQU1FPSJza2lwLW5hdmJhcl90b3AiPjwvQT4KKzwhLS0gPT09PT09PT09IEVORCBPRiBUT1AgTkFWQkFSID09PT09PT09PSAtLT4KKworPEhSPgorPENFTlRFUj4KKzxIMj4KKzxCPlVzZXMgb2YgUGFja2FnZTxicj5vcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXM8L0I+PC9IMj4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KK1BhY2thZ2VzIHRoYXQgdXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzPC9BPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREPjxBIEhSRUY9IiNvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMiPjxCPm9yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1czwvQj48L0E+PC9URD4KKzxURD4mbmJzcDsmbmJzcDs8L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEEgTkFNRT0ib3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzIj48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjEiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KKzxUSCBBTElHTj0ibGVmdCIgQ09MU1BBTj0iMiI+PEZPTlQgU0laRT0iKzIiPgorQ2xhc3NlcyBpbiA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1czwvQT4gdXNlZCBieSA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1czwvQT48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURD48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvY2xhc3MtdXNlL0FjdGl2YXRvci5odG1sI29yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1cyI+PEI+QWN0aXZhdG9yPC9CPjwvQT48L0I+CisKKzxCUj4KKyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBhY3RpdmF0b3IgY2xhc3MgY29udHJvbHMgdGhlIHBsdWctaW4gbGlmZSBjeWNsZS48L1REPgorPC9UUj4KKzwvVEFCTEU+CismbmJzcDsKKzxQPgorPEhSPgorCisKKzwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgorPEEgSFJFRj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KKzxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgorPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIiBTVU1NQVJZPSIiPgorICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5DbGFzczwvRk9OVD4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5Vc2U8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtZmlsZXMvaW5kZXgtMS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDwvVFI+Cis8L1RBQkxFPgorPC9URD4KKzxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgorPC9FTT4KKzwvVEQ+Cis8L1RSPgorCis8VFI+Cis8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgorJm5ic3A7UFJFViZuYnNwOworJm5ic3A7TkVYVDwvRk9OVD48L1REPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvZWNsaXBzZS9wYXB5cnVzL3Byb3RldXMvcGFja2FnZS11c2UuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8QSBIUkVGPSJwYWNrYWdlLXVzZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxTQ1JJUFQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgPCEtLQorICBpZih3aW5kb3c9PXRvcCkgeworICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CisgIH0KKyAgLy8tLT4KKzwvU0NSSVBUPgorPE5PU0NSSVBUPgorICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgorPC9OT1NDUklQVD4KKworCis8L0ZPTlQ+PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorPEEgTkFNRT0ic2tpcC1uYXZiYXJfYm90dG9tIj48L0E+Cis8IS0tID09PT09PT09IEVORCBPRiBCT1RUT00gTkFWQkFSID09PT09PT0gLS0+CisKKzxIUj4KKworPC9CT0RZPgorPC9IVE1MPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vdmVydmlldy1mcmFtZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vdmVydmlldy1mcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg4NWVhZjgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL292ZXJ2aWV3LWZyYW1lLmh0bWwKQEAgLTAsMCArMSw3MiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMxIENFVCAyMDEyIC0tPgorPFRJVExFPgorT3ZlcnZpZXcKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJPdmVydmlldywgUm9ib3RNTCBqYXZhIEFQSSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSJzdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIj4KKworPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEggQUxJR049ImxlZnQiIE5PV1JBUD48Rk9OVCBzaXplPSIrMSIgQ0xBU1M9IkZyYW1lVGl0bGVGb250Ij4KKzxCPjwvQj48L0ZPTlQ+PC9USD4KKzwvVFI+Cis8L1RBQkxFPgorCis8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgU1VNTUFSWT0iIj4KKzxUUj4KKzxURCBOT1dSQVA+PEZPTlQgQ0xBU1M9IkZyYW1lSXRlbUZvbnQiPjxBIEhSRUY9ImFsbGNsYXNzZXMtZnJhbWUuaHRtbCIgdGFyZ2V0PSJwYWNrYWdlRnJhbWUiPkFsbCBDbGFzc2VzPC9BPjwvRk9OVD4KKzxQPgorPEZPTlQgc2l6ZT0iKzEiIENMQVNTPSJGcmFtZUhlYWRpbmdGb250Ij4KK1BhY2thZ2VzPC9GT05UPgorPEJSPgorPEZPTlQgQ0xBU1M9IkZyYW1lSXRlbUZvbnQiPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9wYWNrYWdlLWZyYW1lLmh0bWwiIHRhcmdldD0icGFja2FnZUZyYW1lIj5vcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXM8L0E+PC9GT05UPgorPEJSPgorPEZPTlQgQ0xBU1M9IkZyYW1lSXRlbUZvbnQiPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL3BhY2thZ2UtZnJhbWUuaHRtbCIgdGFyZ2V0PSJwYWNrYWdlRnJhbWUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzPC9BPjwvRk9OVD4KKzxCUj4KKzxGT05UIENMQVNTPSJGcmFtZUl0ZW1Gb250Ij48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtZnJhbWUuaHRtbCIgdGFyZ2V0PSJwYWNrYWdlRnJhbWUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGw8L0E+PC9GT05UPgorPEJSPgorPEZPTlQgQ0xBU1M9IkZyYW1lSXRlbUZvbnQiPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9wYWNrYWdlLWZyYW1lLmh0bWwiIHRhcmdldD0icGFja2FnZUZyYW1lIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXM8L0E+PC9GT05UPgorPEJSPgorPEZPTlQgQ0xBU1M9IkZyYW1lSXRlbUZvbnQiPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtZnJhbWUuaHRtbCIgdGFyZ2V0PSJwYWNrYWdlRnJhbWUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsPC9BPjwvRk9OVD4KKzxCUj4KKzxGT05UIENMQVNTPSJGcmFtZUl0ZW1Gb250Ij48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL3BhY2thZ2UtZnJhbWUuaHRtbCIgdGFyZ2V0PSJwYWNrYWdlRnJhbWUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXM8L0E+PC9GT05UPgorPEJSPgorPEZPTlQgQ0xBU1M9IkZyYW1lSXRlbUZvbnQiPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLWZyYW1lLmh0bWwiIHRhcmdldD0icGFja2FnZUZyYW1lIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGw8L0E+PC9GT05UPgorPEJSPgorPEZPTlQgQ0xBU1M9IkZyYW1lSXRlbUZvbnQiPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL3BhY2thZ2UtZnJhbWUuaHRtbCIgdGFyZ2V0PSJwYWNrYWdlRnJhbWUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzPC9BPjwvRk9OVD4KKzxCUj4KKzxGT05UIENMQVNTPSJGcmFtZUl0ZW1Gb250Ij48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtZnJhbWUuaHRtbCIgdGFyZ2V0PSJwYWNrYWdlRnJhbWUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGw8L0E+PC9GT05UPgorPEJSPgorPEZPTlQgQ0xBU1M9IkZyYW1lSXRlbUZvbnQiPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL3BhY2thZ2UtZnJhbWUuaHRtbCIgdGFyZ2V0PSJwYWNrYWdlRnJhbWUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzPC9BPjwvRk9OVD4KKzxCUj4KKzxGT05UIENMQVNTPSJGcmFtZUl0ZW1Gb250Ij48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtZnJhbWUuaHRtbCIgdGFyZ2V0PSJwYWNrYWdlRnJhbWUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGw8L0E+PC9GT05UPgorPEJSPgorPEZPTlQgQ0xBU1M9IkZyYW1lSXRlbUZvbnQiPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL3BhY2thZ2UtZnJhbWUuaHRtbCIgdGFyZ2V0PSJwYWNrYWdlRnJhbWUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzPC9BPjwvRk9OVD4KKzxCUj4KKzxGT05UIENMQVNTPSJGcmFtZUl0ZW1Gb250Ij48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtZnJhbWUuaHRtbCIgdGFyZ2V0PSJwYWNrYWdlRnJhbWUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGw8L0E+PC9GT05UPgorPEJSPgorPEZPTlQgQ0xBU1M9IkZyYW1lSXRlbUZvbnQiPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9wYWNrYWdlLWZyYW1lLmh0bWwiIHRhcmdldD0icGFja2FnZUZyYW1lIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9GT05UPgorPEJSPgorPEZPTlQgQ0xBU1M9IkZyYW1lSXRlbUZvbnQiPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL3BhY2thZ2UtZnJhbWUuaHRtbCIgdGFyZ2V0PSJwYWNrYWdlRnJhbWUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsPC9BPjwvRk9OVD4KKzxCUj4KKzxGT05UIENMQVNTPSJGcmFtZUl0ZW1Gb250Ij48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLWZyYW1lLmh0bWwiIHRhcmdldD0icGFja2FnZUZyYW1lIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbDwvQT48L0ZPTlQ+Cis8QlI+Cis8L1REPgorPC9UUj4KKzwvVEFCTEU+CisKKzxQPgorJm5ic3A7Cis8L0JPRFk+Cis8L0hUTUw+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3ZlcnZpZXctc3VtbWFyeS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA1OWMzODQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL292ZXJ2aWV3LXN1bW1hcnkuaHRtbApAQCAtMCwwICsxLDIxMyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tTmV3UGFnZS0tPgorPEhUTUw+Cis8SEVBRD4KKzwhLS0gR2VuZXJhdGVkIGJ5IGphdmFkb2MgKGJ1aWxkIDEuNS4wXzIyKSBvbiBXZWQgRmViIDI5IDEzOjU5OjMzIENFVCAyMDEyIC0tPgorPFRJVExFPgorT3ZlcnZpZXcKKzwvVElUTEU+CisKKzxNRVRBIE5BTUU9ImtleXdvcmRzIiBDT05URU5UPSJPdmVydmlldywgUm9ib3RNTCBqYXZhIEFQSSI+CisKKzxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSJzdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KKworPFNDUklQVCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZnVuY3Rpb24gd2luZG93VGl0bGUoKQoreworICAgIHBhcmVudC5kb2N1bWVudC50aXRsZT0iT3ZlcnZpZXciOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJvdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJkZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImluZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJoZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9ImluZGV4Lmh0bWw/b3ZlcnZpZXctc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Im92ZXJ2aWV3LXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSJhbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgxPgorUm9ib3RNTCBqYXZhIEFQSQorPC9IMT4KKzwvQ0VOVEVSPgorCis8VEFCTEUgQk9SREVSPSIxIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBTVU1NQVJZPSIiPgorPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+Cis8VEggQUxJR049ImxlZnQiIENPTFNQQU49IjIiPjxGT05UIFNJWkU9IisyIj4KKzxCPlBhY2thZ2VzPC9CPjwvRk9OVD48L1RIPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIyMCUiPjxCPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzPC9BPjwvQj48L1REPgorPFREPiZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjIwJSI+PEI+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzPC9BPjwvQj48L1REPgorPFREPiZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjIwJSI+PEI+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbDwvQT48L0I+PC9URD4KKzxURD4mbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIyMCUiPjxCPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzPC9BPjwvQj48L1REPgorPFREPiZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjIwJSI+PEI+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsPC9BPjwvQj48L1REPgorPFREPiZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjIwJSI+PEI+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlczwvQT48L0I+PC9URD4KKzxURD4mbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIyMCUiPjxCPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsPC9BPjwvQj48L1REPgorPFREPiZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjIwJSI+PEI+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzPC9BPjwvQj48L1REPgorPFREPiZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjIwJSI+PEI+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbDwvQT48L0I+PC9URD4KKzxURD4mbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIyMCUiPjxCPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlczwvQT48L0I+PC9URD4KKzxURD4mbmJzcDs8L1REPgorPC9UUj4KKzxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgorPFREIFdJRFRIPSIyMCUiPjxCPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMjAlIj48Qj48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXM8L0E+PC9CPjwvVEQ+Cis8VEQ+Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMjAlIj48Qj48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsPC9BPjwvQj48L1REPgorPFREPiZuYnNwOzwvVEQ+Cis8L1RSPgorPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+Cis8VEQgV0lEVEg9IjIwJSI+PEI+PEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+PC9CPjwvVEQ+Cis8VEQ+Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMjAlIj48Qj48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+PC9CPjwvVEQ+Cis8VEQ+Jm5ic3A7PC9URD4KKzwvVFI+Cis8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KKzxURCBXSURUSD0iMjAlIj48Qj48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+PC9CPjwvVEQ+Cis8VEQ+Jm5ic3A7PC9URD4KKzwvVFI+Cis8L1RBQkxFPgorCis8UD4KKyZuYnNwOzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJvdmVydmlldy10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJkZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImluZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJoZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9ImluZGV4Lmh0bWw/b3ZlcnZpZXctc3VtbWFyeS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Im92ZXJ2aWV3LXN1bW1hcnkuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSJhbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3ZlcnZpZXctdHJlZS5odG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9vdmVydmlldy10cmVlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTlhOTUyZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvb3ZlcnZpZXctdHJlZS5odG1sCkBAIC0wLDAgKzEsNzMwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvbG9vc2UuZHRkIj4KKzwhLS1OZXdQYWdlLS0+Cis8SFRNTD4KKzxIRUFEPgorPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyAoYnVpbGQgMS41LjBfMjIpIG9uIFdlZCBGZWIgMjkgMTM6NTk6MzMgQ0VUIDIwMTIgLS0+Cis8VElUTEU+CitDbGFzcyBIaWVyYXJjaHkKKzwvVElUTEU+CisKKworPExJTksgUkVMID0ic3R5bGVzaGVldCIgVFlQRT0idGV4dC9jc3MiIEhSRUY9InN0eWxlc2hlZXQuY3NzIiBUSVRMRT0iU3R5bGUiPgorCis8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiB3aW5kb3dUaXRsZSgpCit7CisgICAgcGFyZW50LmRvY3VtZW50LnRpdGxlPSJDbGFzcyBIaWVyYXJjaHkiOworfQorPC9TQ1JJUFQ+Cis8Tk9TQ1JJUFQ+Cis8L05PU0NSSVBUPgorCis8L0hFQUQ+CisKKzxCT0RZIEJHQ09MT1I9IndoaXRlIiBvbmxvYWQ9IndpbmRvd1RpdGxlKCk7Ij4KKworCis8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Im92ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlRyZWU8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJkZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImluZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJoZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9ImluZGV4Lmh0bWw/b3ZlcnZpZXctdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Im92ZXJ2aWV3LXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSJhbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX3RvcCI+PC9BPgorPCEtLSA9PT09PT09PT0gRU5EIE9GIFRPUCBOQVZCQVIgPT09PT09PT09IC0tPgorCis8SFI+Cis8Q0VOVEVSPgorPEgyPgorSGllcmFyY2h5IEZvciBBbGwgUGFja2FnZXM8L0gyPgorPC9DRU5URVI+Cis8REw+Cis8RFQ+PEI+UGFja2FnZSBIaWVyYXJjaGllczo8L0I+PEREPjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvcHJvdGV1cy9wYWNrYWdlLXRyZWUuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzPC9BPiwgPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvcGFja2FnZS10cmVlLmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzPC9BPiwgPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbDwvQT4sIDxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9wYWNrYWdlLXRyZWUuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzPC9BPiwgPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS10cmVlLmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsPC9BPiwgPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9wYWNrYWdlLXRyZWUuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlczwvQT4sIDxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsPC9BPiwgPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvcGFja2FnZS10cmVlLmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzPC9BPiwgPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbDwvQT4sIDxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL3BhY2thZ2UtdHJlZS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlczwvQT4sIDxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvcGFja2FnZS10cmVlLmh0bWwiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGw8L0E+LCA8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9wYWNrYWdlLXRyZWUuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXM8L0E+LCA8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL3BhY2thZ2UtdHJlZS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsPC9BPiwgPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3BhY2thZ2UtdHJlZS5odG1sIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw8L0E+LCA8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9wYWNrYWdlLXRyZWUuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw8L0E+LCA8QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9wYWNrYWdlLXRyZWUuaHRtbCI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw8L0E+PC9ETD4KKzxIUj4KKzxIMj4KK0NsYXNzIEhpZXJhcmNoeQorPC9IMj4KKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPmphdmEubGFuZy5PYmplY3Q8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkFkYXB0ZXJGYWN0b3J5SW1wbCAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyRmFjdG9yeSkKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWwiPjxCPlJvYm90TUxBZGFwdGVyRmFjdG9yeTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQmFzaWNOb3RpZmllckltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXIpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5CYXNpY0VPYmplY3RJbXBsIChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0LCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0KQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU9iamVjdEltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+QWxnb3JpdGhtSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BbGdvcml0aG08L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtTGlicmFyeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5BbGdvcml0aG1MaWJyYXJ5SW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWxnb3JpdGhtTGlicmFyeTwvQT4pCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db2xsZWN0aW9uSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkNvbGxlY3Rpb25JbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Db2xsZWN0aW9uPC9BPikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NvbXBvc2VkRGF0YUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Db21wb3NlZERhdGFJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wb3NlZERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkNvbXBvc2VkRGF0YTwvQT4pCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PblBvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+T25Qb3J0SW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PblBvcnQ8L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxEYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBoeXNpY2FsRGF0YUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGh5c2ljYWxEYXRhPC9BPikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UG9ydEltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlBvcnQ8L0E+KQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRGF0YUZsb3dQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkRhdGFGbG93UG9ydEltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RGF0YUZsb3dQb3J0PC9BPikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlcnZpY2VQb3J0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlNlcnZpY2VQb3J0SW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNlcnZpY2VQb3J0PC9BPikKKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QcmltaXRpdmVEYXRhSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlByaW1pdGl2ZURhdGFJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QcmltaXRpdmVEYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QcmltaXRpdmVEYXRhPC9BPikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlN0YXRlSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhdGUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YXRlPC9BPikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5TeXN0ZW1JbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT4pCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbnZpcm9ubWVudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5FbnZpcm9ubWVudEltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Vudmlyb25tZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5FbnZpcm9ubWVudDwvQT4pCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IYXJkd2FyZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5IYXJkd2FyZUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0hhcmR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5IYXJkd2FyZTwvQT4pCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QaHlzaWNhbE9iamVjdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5QaHlzaWNhbE9iamVjdEltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QaHlzaWNhbE9iamVjdDwvQT4pCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5BZ2VudEltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5BZ2VudDwvQT4pCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IdW1hbkltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5IdW1hbkltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5IdW1hbjwvQT4pCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QZWRlc3RyaWFuSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBlZGVzdHJpYW5JbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5QZWRlc3RyaWFuPC9BPikKKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Sb2JvdEltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdDwvQT4pCis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQnVpbGRpbmdJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+QnVpbGRpbmdJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CdWlsZGluZy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QnVpbGRpbmc8L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhbmV0SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlBsYW5ldEltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYW5ldC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGxhbmV0PC9BPikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N1cmZhY2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+U3VyZmFjZUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN1cmZhY2U8L0E+KQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR3JvdW5kSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkdyb3VuZEltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+R3JvdW5kPC9BPikKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Zsb29ySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkZsb29ySW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkZsb29yPC9BPikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xhbmRTdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkxhbmRTdXJmYWNlSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkxhbmRTdXJmYWNlPC9BPikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YWlyc0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5TdGFpcnNJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN0YWlyczwvQT4pCis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2F0ZXJTdXJmYWNlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPldhdGVyU3VyZmFjZUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+V2F0ZXJTdXJmYWNlPC9BPikKKzwvVUw+Cis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+UGxhdGZvcm1JbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+UGxhdGZvcm08L0E+KQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+Um9ib3RpY01pZGRsZXdhcmVJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY01pZGRsZXdhcmU8L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1NpbXVsYXRvckltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Sb2JvdGljU2ltdWxhdG9ySW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1NpbXVsYXRvci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RpY1NpbXVsYXRvcjwvQT4pCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+QmxlbmRlck1vcnNlSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5CbGVuZGVyTW9yc2U8L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ3ljYWJUS0ltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5DeWNhYlRLSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q3ljYWJUSzwvQT4pCis8L1VMPgorPC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+Um9ib3RpY1N5c3RlbUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlJvYm90aWNTeXN0ZW08L0E+KQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWN0dWF0b3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+QWN0dWF0b3JTeXN0ZW1JbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWN0dWF0b3JTeXN0ZW08L0E+KQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkVuZ2luZVN5c3RlbUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+RW5naW5lU3lzdGVtPC9BPikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1doZWVsU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPldoZWVsU3lzdGVtSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPldoZWVsU3lzdGVtPC9BPikKKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+U2Vuc29yU3lzdGVtSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TZW5zb3JTeXN0ZW08L0E+KQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+SW1hZ2VTZW5zb3JTeXN0ZW1JbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9JbWFnZVNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+SW1hZ2VTZW5zb3JTeXN0ZW08L0E+KQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2FtZXJhU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkNhbWVyYVN5c3RlbUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Q2FtZXJhU3lzdGVtPC9BPikKKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0E+KQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR1BTU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPkdQU1N5c3RlbUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+R1BTU3lzdGVtPC9BPikKKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0E+KQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGlkYXJTeXN0ZW1JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+TGlkYXJTeXN0ZW1JbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+TGlkYXJTeXN0ZW08L0E+KQorPC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9BPikKKzwvVUw+Cis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+U29mdHdhcmVJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U29mdHdhcmU8L0E+KQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yRHJpdmVySW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwiPjxCPlNlbnNvckRyaXZlckltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U2Vuc29yRHJpdmVyPC9BPikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NpbXVsYXRlZFN5c3RlbUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5TaW11bGF0ZWRTeXN0ZW1JbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlNpbXVsYXRlZFN5c3RlbTwvQT4pCis8L1VMPgorPC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1RyYW5zaXRpb25JbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+VHJhbnNpdGlvbkltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlRyYW5zaXRpb248L0E+KQorPC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbCAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCwgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVTdHJ1Y3R1cmFsRmVhdHVyZS5JbnRlcm5hbC5EeW5hbWljVmFsdWVIb2xkZXIpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU1vZGVsRWxlbWVudEltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FRmFjdG9yeUltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5KQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbCI+PEI+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwiPjxCPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5PC9BPikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbCI+PEI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbCI+PEI+TmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+TmF2X2RhdGF0eXBlc0ZhY3Rvcnk8L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTEZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbCI+PEI+Um9ib3RNTEZhY3RvcnlJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+Um9ib3RNTEZhY3Rvcnk8L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbCI+PEI+U2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+U2Vuc29yX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbCI+PEI+U3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+U3RkX2RhdGF0eXBlc0ZhY3Rvcnk8L0E+KQorPC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOYW1lZEVsZW1lbnRJbXBsIChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FTmFtZWRFbGVtZW50KQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRVBhY2thZ2VJbXBsIChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLkJhc2ljRXh0ZW5kZWRNZXRhRGF0YS5FUGFja2FnZUV4dGVuZGVkTWV0YURhdGEuSG9sZGVyLCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsIj48Qj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQT4pCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbCI+PEI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsIj48Qj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQT4pCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsIj48Qj5OYXZfZGF0YXR5cGVzUGFja2FnZUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQT4pCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MUGFja2FnZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsIj48Qj5Sb2JvdE1MUGFja2FnZUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5Sb2JvdE1MUGFja2FnZTwvQT4pCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsIj48Qj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQT4pCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsIj48Qj5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGw8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQT4pCis8L1VMPgorPC9VTD4KKzwvVUw+Cis8L1VMPgorPC9VTD4KKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLk5vdGlmaWVySW1wbDxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5yZXNvdXJjZS5pbXBsLlJlc291cmNlSW1wbCAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuUmVzb3VyY2UsIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5yZXNvdXJjZS5SZXNvdXJjZS5JbnRlcm5hbCkKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS54bWkuaW1wbC5YTUxSZXNvdXJjZUltcGwgKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnhtaS5YTUxSZXNvdXJjZSkKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxSZXNvdXJjZUltcGwuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsIj48Qj5Sb2JvdE1MUmVzb3VyY2VJbXBsPC9CPjwvQT48L1VMPgorPC9VTD4KKzwvVUw+Cis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLlBsdWdpbiAoaW1wbGVtZW50cyBvcmcub3NnaS5mcmFtZXdvcmsuQnVuZGxlQWN0aXZhdG9yKQorPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UudWkucGx1Z2luLkFic3RyYWN0VUlQbHVnaW48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9wcm90ZXVzL0FjdGl2YXRvci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5wcm90ZXVzIj48Qj5BY3RpdmF0b3I8L0I+PC9BPjwvVUw+Cis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLnJlc291cmNlLmltcGwuUmVzb3VyY2VGYWN0b3J5SW1wbCAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuUmVzb3VyY2UuRmFjdG9yeSkKKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+Um9ib3RNTFJlc291cmNlRmFjdG9yeUltcGw8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5Td2l0Y2gmbHQ7VCZndDs8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+Um9ib3RNTFN3aXRjaDwvQj48L0E+Jmx0O1QmZ3Q7PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS54bWkudXRpbC5YTUxQcm9jZXNzb3I8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MWE1MUHJvY2Vzc29yLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbCI+PEI+Um9ib3RNTFhNTFByb2Nlc3NvcjwvQj48L0E+PC9VTD4KKzwvVUw+Cis8L1VMPgorPEgyPgorSW50ZXJmYWNlIEhpZXJhcmNoeQorPC9IMj4KKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPjxCPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+PEI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPjxCPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPjxCPk5hdl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPjxCPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj48Qj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+QWN0dWF0b3JTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5FbmdpbmVTeXN0ZW08L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPldoZWVsU3lzdGVtPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+QWdlbnQ8L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSHVtYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkh1bWFuPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBlZGVzdHJpYW48L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBlZGVzdHJpYW48L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90PC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPikKKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+QWxnb3JpdGhtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkFsZ29yaXRobUxpYnJhcnk8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5CbGVuZGVyTW9yc2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQnVpbGRpbmcuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkJ1aWxkaW5nPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q2FtZXJhU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbGxlY3Rpb24uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkNvbGxlY3Rpb248L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcG9zZWREYXRhLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Db21wb3NlZERhdGE8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q3ljYWJUSzwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd1BvcnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkRhdGFGbG93UG9ydDwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPjxCPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPjxCPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+PEI+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48Qj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+PEI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+PEI+TmF2X2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90TUxGYWN0b3J5PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj48Qj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+PEI+U3RkX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU1vZGVsRWxlbWVudDxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPjxCPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj48Qj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPjxCPkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPjxCPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+PEI+QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48Qj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+PEI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+PEI+TmF2X2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90TUxGYWN0b3J5PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj48Qj5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+PEI+U3RkX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU5hbWVkRWxlbWVudDxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPjxCPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+PEI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj48Qj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPjxCPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj48Qj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj48Qj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3RNTFBhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPjxCPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj48Qj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+PEI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+PEI+TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90TUxQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj48Qj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+PEI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj48Qj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPjxCPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj48Qj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj48Qj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3RNTFBhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPjxCPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj48Qj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+PEI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj48Qj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj48Qj5OYXZfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+PEI+TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90TUxGYWN0b3J5PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdE1MUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+PEI+U2Vuc29yX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPjxCPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj48Qj5TdGRfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+PEI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU5hbWVkRWxlbWVudDxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPjxCPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+PEI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj48Qj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPjxCPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj48Qj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj48Qj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3RNTFBhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPjxCPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj48Qj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+PEI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+PEI+TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90TUxQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj48Qj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+PEI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+RW5naW5lU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Vudmlyb25tZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5FbnZpcm9ubWVudDwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj48Qj5BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+PEI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWN0dWF0b3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkFjdHVhdG9yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+RW5naW5lU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5XaGVlbFN5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkFnZW50PC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5IdW1hbjwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QZWRlc3RyaWFuPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QZWRlc3RyaWFuPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdDwvQj48L0E+IChhbHNvIGV4dGVuZHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT4pCis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkFsZ29yaXRobTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG1MaWJyYXJ5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5BbGdvcml0aG1MaWJyYXJ5PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+QmxlbmRlck1vcnNlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0J1aWxkaW5nLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5CdWlsZGluZzwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkNhbWVyYVN5c3RlbTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db2xsZWN0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Db2xsZWN0aW9uPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NvbXBvc2VkRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q29tcG9zZWREYXRhPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkN5Y2FiVEs8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5EYXRhRmxvd1BvcnQ8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48Qj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48Qj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeTxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPjxCPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+PEI+RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPjxCPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPjxCPk5hdl9kYXRhdHlwZXNGYWN0b3J5PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdE1MRmFjdG9yeTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+PEI+U2Vuc29yX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPjxCPlN0ZF9kYXRhdHlwZXNGYWN0b3J5PC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVNb2RlbEVsZW1lbnQ8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj48Qj5BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+PEI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48Qj5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48Qj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeTxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPjxCPkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+PEI+RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPjxCPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPjxCPk5hdl9kYXRhdHlwZXNGYWN0b3J5PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdE1MRmFjdG9yeTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+PEI+U2Vuc29yX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPjxCPlN0ZF9kYXRhdHlwZXNGYWN0b3J5PC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVOYW1lZEVsZW1lbnQ8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj48Qj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPjxCPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+PEI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48Qj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+PEI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+PEI+TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90TUxQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj48Qj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+PEI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPjxCPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPjxCPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdE1MUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+PEI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPjxCPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+PEI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48Qj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+PEI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+PEI+TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90TUxQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj48Qj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+PEI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPjxCPkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+PEI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+PEI+TmF2X2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPjxCPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdE1MRmFjdG9yeTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3RNTFBhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPjxCPlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj48Qj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+PEI+U3RkX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPjxCPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVOYW1lZEVsZW1lbnQ8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzIj48Qj5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMiPjxCPkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlPFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI+PEI+QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIj48Qj5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+PEI+R2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+PEI+TmF2X2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90TUxQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj48Qj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+PEI+U3RkX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPjxCPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPjxCPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdE1MUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+PEI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPjxCPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkVuZ2luZVN5c3RlbTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+RW52aXJvbm1lbnQ8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZTxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPjxCPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+PEI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPjxCPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPjxCPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdE1MUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+PEI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPjxCPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Rmxvb3I8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+PEI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj48Qj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R1BTU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R3JvdW5kPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5GbG9vcjwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGFuZFN1cmZhY2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TdGFpcnM8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0hhcmR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5IYXJkd2FyZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+SHVtYW48L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UGVkZXN0cmlhbjwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkltYWdlU2Vuc29yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q2FtZXJhU3lzdGVtPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGFuZFN1cmZhY2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPiwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkdQU1N5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPjxCPk5hdl9kYXRhdHlwZXNGYWN0b3J5PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj48Qj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGlkYXJTeXN0ZW08L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9BPikKKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGlkYXJTeXN0ZW08L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0E+KQorPC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5PblBvcnQ8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UGVkZXN0cmlhbjwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBoeXNpY2FsRGF0YTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UGh5c2ljYWxPYmplY3Q8L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkFnZW50PC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5IdW1hbjwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QZWRlc3RyaWFuPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QZWRlc3RyaWFuPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdDwvQj48L0E+IChhbHNvIGV4dGVuZHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT4pCis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CdWlsZGluZy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+QnVpbGRpbmc8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkZsb29yPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R3JvdW5kPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5GbG9vcjwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGFuZFN1cmZhY2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TdGFpcnM8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5IdW1hbjwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QZWRlc3RyaWFuPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGFuZFN1cmZhY2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UGVkZXN0cmlhbjwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGFuZXQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBsYW5ldDwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3Q8L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPiwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT4pCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U3RhaXJzPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlN1cmZhY2U8L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkZsb29yPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R3JvdW5kPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5GbG9vcjwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGFuZFN1cmZhY2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TdGFpcnM8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5MYW5kU3VyZmFjZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlN0YWlyczwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XYXRlclN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPldhdGVyU3VyZmFjZTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5XYXRlclN1cmZhY2U8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYW5ldC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UGxhbmV0PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QbGF0Zm9ybTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkJsZW5kZXJNb3JzZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5DeWNhYlRLPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdGljTWlkZGxld2FyZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdGljU2ltdWxhdG9yPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+QmxlbmRlck1vcnNlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkN5Y2FiVEs8L0I+PC9BPjwvVUw+Cis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Qb3J0PC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+RGF0YUZsb3dQb3J0PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TZXJ2aWNlUG9ydDwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UHJpbWl0aXZlRGF0YTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3Q8L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPiwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT4pCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdGljTWlkZGxld2FyZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdGljU2ltdWxhdG9yPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+QmxlbmRlck1vcnNlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkN5Y2FiVEs8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90aWNTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWN0dWF0b3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkFjdHVhdG9yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+RW5naW5lU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5XaGVlbFN5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5DYW1lcmFTeXN0ZW08L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5FbmdpbmVTeXN0ZW08L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5HUFNTeXN0ZW08L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkltYWdlU2Vuc29yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q2FtZXJhU3lzdGVtPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGlkYXJTeXN0ZW08L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0E+LCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT4pCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xvY2FsaXphdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R1BTU3lzdGVtPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGlkYXJTeXN0ZW08L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9BPikKKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGlkYXJTeXN0ZW08L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0E+KQorPC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TZW5zb3JTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5DYW1lcmFTeXN0ZW08L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5HUFNTeXN0ZW08L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkltYWdlU2Vuc29yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q2FtZXJhU3lzdGVtPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGlkYXJTeXN0ZW08L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0E+LCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT4pCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xvY2FsaXphdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R1BTU3lzdGVtPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGlkYXJTeXN0ZW08L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9BPikKKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGlkYXJTeXN0ZW08L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0E+KQorPC9VTD4KKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5XaGVlbFN5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90TUxGYWN0b3J5PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdE1MUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+PEI+U2Vuc29yX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPjxCPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2Vuc29yRHJpdmVyPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2Vuc29yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q2FtZXJhU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R1BTU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5JbWFnZVNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkNhbWVyYVN5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPiwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkdQU1N5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT4pCis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPikKKzwvVUw+Cis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2VydmljZVBvcnQ8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TaW11bGF0ZWRTeXN0ZW08L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlNvZnR3YXJlPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2Vuc29yRHJpdmVyPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2ltdWxhdGVkU3lzdGVtPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlN0YWlyczwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U3RhdGU8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPjxCPlN0ZF9kYXRhdHlwZXNGYWN0b3J5PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj48Qj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TdXJmYWNlPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5GbG9vcjwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Hcm91bmQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkdyb3VuZDwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Rmxvb3I8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxhbmRTdXJmYWNlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U3RhaXJzPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGFuZFN1cmZhY2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TdGFpcnM8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5XYXRlclN1cmZhY2U8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdG9yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5BY3R1YXRvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkVuZ2luZVN5c3RlbTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+V2hlZWxTeXN0ZW08L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5BZ2VudDwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+SHVtYW48L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UGVkZXN0cmlhbjwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UGVkZXN0cmlhbjwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3Q8L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+KQorPC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5CbGVuZGVyTW9yc2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQnVpbGRpbmcuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkJ1aWxkaW5nPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q2FtZXJhU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkN5Y2FiVEs8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5FbmdpbmVTeXN0ZW08L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkVudmlyb25tZW50PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5GbG9vcjwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkdQU1N5c3RlbTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Hcm91bmQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkdyb3VuZDwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Rmxvb3I8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxhbmRTdXJmYWNlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U3RhaXJzPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IYXJkd2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+SGFyZHdhcmU8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSHVtYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkh1bWFuPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBlZGVzdHJpYW48L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5JbWFnZVNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkNhbWVyYVN5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxhbmRTdXJmYWNlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5MaWRhclN5c3RlbTwvQj48L0E+IChhbHNvIGV4dGVuZHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQT4sIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9BPikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5HUFNTeXN0ZW08L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5MaWRhclN5c3RlbTwvQj48L0E+IChhbHNvIGV4dGVuZHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+KQorPC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5MaWRhclN5c3RlbTwvQj48L0E+IChhbHNvIGV4dGVuZHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQT4pCis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QZWRlc3RyaWFuPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QaHlzaWNhbE9iamVjdDwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+QWdlbnQ8L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSHVtYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkh1bWFuPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBlZGVzdHJpYW48L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBlZGVzdHJpYW48L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90PC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPikKKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0J1aWxkaW5nLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5CdWlsZGluZzwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Rmxvb3I8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Hcm91bmQ8L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkZsb29yPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5MYW5kU3VyZmFjZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlN0YWlyczwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSHVtYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkh1bWFuPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBlZGVzdHJpYW48L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5MYW5kU3VyZmFjZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QZWRlc3RyaWFuPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYW5ldC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UGxhbmV0PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdDwvQj48L0E+IChhbHNvIGV4dGVuZHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWdlbnQ8L0E+LCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TdGFpcnM8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U3VyZmFjZTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Rmxvb3I8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Hcm91bmQ8L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkZsb29yPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5MYW5kU3VyZmFjZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlN0YWlyczwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxhbmRTdXJmYWNlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U3RhaXJzPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+V2F0ZXJTdXJmYWNlPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XYXRlclN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPldhdGVyU3VyZmFjZTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhbmV0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QbGFuZXQ8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBsYXRmb3JtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+QmxlbmRlck1vcnNlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkN5Y2FiVEs8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90aWNNaWRkbGV3YXJlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90aWNTaW11bGF0b3I8L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5CbGVuZGVyTW9yc2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q3ljYWJUSzwvQj48L0E+PC9VTD4KKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdDwvQj48L0E+IChhbHNvIGV4dGVuZHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWdlbnQ8L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3RpY01pZGRsZXdhcmU8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1NpbXVsYXRvci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3RpY1NpbXVsYXRvcjwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkJsZW5kZXJNb3JzZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5DeWNhYlRLPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdGljU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdG9yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5BY3R1YXRvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkVuZ2luZVN5c3RlbTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+V2hlZWxTeXN0ZW08L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q2FtZXJhU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+RW5naW5lU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R1BTU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5JbWFnZVNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkNhbWVyYVN5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPiwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkdQU1N5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT4pCis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPikKKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2Vuc29yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q2FtZXJhU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R1BTU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5JbWFnZVNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkNhbWVyYVN5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPiwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkdQU1N5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT4pCis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPikKKzwvVUw+Cis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+V2hlZWxTeXN0ZW08L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2Vuc29yRHJpdmVyPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2Vuc29yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q2FtZXJhU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R1BTU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5JbWFnZVNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkNhbWVyYVN5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPiwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkdQU1N5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT4pCis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPikKKzwvVUw+Cis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlNpbXVsYXRlZFN5c3RlbTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U29mdHdhcmU8L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yRHJpdmVyLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TZW5zb3JEcml2ZXI8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TaW11bGF0ZWRTeXN0ZW08L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U3RhaXJzPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlN1cmZhY2U8L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkZsb29yPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R3JvdW5kPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5GbG9vcjwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGFuZFN1cmZhY2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TdGFpcnM8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5MYW5kU3VyZmFjZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlN0YWlyczwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XYXRlclN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPldhdGVyU3VyZmFjZTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5XYXRlclN1cmZhY2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPldoZWVsU3lzdGVtPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5UcmFuc2l0aW9uPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+V2F0ZXJTdXJmYWNlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5XaGVlbFN5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZTxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPjxCPkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+PEI+RGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPjxCPkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPjxCPk5hdl9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdE1MUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+PEI+U2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPjxCPlN0ZF9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Rmxvb3I8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI+PEI+R2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzIj48Qj5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R1BTU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R3JvdW5kPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5GbG9vcjwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGFuZFN1cmZhY2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TdGFpcnM8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0hhcmR3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5IYXJkd2FyZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+SHVtYW48L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UGVkZXN0cmlhbjwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkltYWdlU2Vuc29yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q2FtZXJhU3lzdGVtPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGFuZFN1cmZhY2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPiwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkdQU1N5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiPjxCPk5hdl9kYXRhdHlwZXNGYWN0b3J5PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzIj48Qj5OYXZfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGlkYXJTeXN0ZW08L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9BPikKKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGlkYXJTeXN0ZW08L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0E+KQorPC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5PblBvcnQ8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UGVkZXN0cmlhbjwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbERhdGEuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBoeXNpY2FsRGF0YTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UGh5c2ljYWxPYmplY3Q8L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkFnZW50PC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5IdW1hbjwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QZWRlc3RyaWFuPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QZWRlc3RyaWFuPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdDwvQj48L0E+IChhbHNvIGV4dGVuZHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT4pCis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CdWlsZGluZy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+QnVpbGRpbmc8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkZsb29yPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R3JvdW5kPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5GbG9vcjwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGFuZFN1cmZhY2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TdGFpcnM8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5IdW1hbjwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QZWRlc3RyaWFuPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGFuZFN1cmZhY2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UGVkZXN0cmlhbjwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGFuZXQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBsYW5ldDwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3Q8L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPiwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT4pCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U3RhaXJzPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlN1cmZhY2U8L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkZsb29yPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R3JvdW5kPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5GbG9vcjwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGFuZFN1cmZhY2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TdGFpcnM8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5MYW5kU3VyZmFjZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlN0YWlyczwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XYXRlclN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPldhdGVyU3VyZmFjZTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5XYXRlclN1cmZhY2U8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYW5ldC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UGxhbmV0PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYXRmb3JtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QbGF0Zm9ybTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkJsZW5kZXJNb3JzZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5DeWNhYlRLPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdGljTWlkZGxld2FyZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdGljU2ltdWxhdG9yPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+QmxlbmRlck1vcnNlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkN5Y2FiVEs8L0I+PC9BPjwvVUw+Cis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Qb3J0PC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+RGF0YUZsb3dQb3J0PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlcnZpY2VQb3J0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TZXJ2aWNlUG9ydDwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUHJpbWl0aXZlRGF0YS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UHJpbWl0aXZlRGF0YTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3Q8L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPkFnZW50PC9BPiwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPlN5c3RlbTwvQT4pCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdGljTWlkZGxld2FyZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdGljU2ltdWxhdG9yPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+QmxlbmRlck1vcnNlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkN5Y2FiVEs8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90aWNTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWN0dWF0b3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkFjdHVhdG9yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+RW5naW5lU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5XaGVlbFN5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5DYW1lcmFTeXN0ZW08L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5FbmdpbmVTeXN0ZW08L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5HUFNTeXN0ZW08L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkltYWdlU2Vuc29yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q2FtZXJhU3lzdGVtPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGlkYXJTeXN0ZW08L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0E+LCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT4pCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xvY2FsaXphdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R1BTU3lzdGVtPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGlkYXJTeXN0ZW08L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9BPikKKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGlkYXJTeXN0ZW08L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0E+KQorPC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TZW5zb3JTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2FtZXJhU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5DYW1lcmFTeXN0ZW08L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5HUFNTeXN0ZW08L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW1hZ2VTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkltYWdlU2Vuc29yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q2FtZXJhU3lzdGVtPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGlkYXJTeXN0ZW08L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0E+LCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT4pCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xvY2FsaXphdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R1BTU3lzdGVtPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGlkYXJTeXN0ZW08L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9BPikKKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGlkYXJTeXN0ZW08L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0E+KQorPC9VTD4KKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5XaGVlbFN5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90TUxGYWN0b3J5PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdE1MUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+PEI+U2Vuc29yX2RhdGF0eXBlc0ZhY3Rvcnk8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiPjxCPlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2Vuc29yRHJpdmVyPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2Vuc29yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q2FtZXJhU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R1BTU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5JbWFnZVNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkNhbWVyYVN5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPiwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkdQU1N5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT4pCis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPikKKzwvVUw+Cis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2VydmljZVBvcnQ8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TaW11bGF0ZWRTeXN0ZW08L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlNvZnR3YXJlPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2Vuc29yRHJpdmVyPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NpbXVsYXRlZFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2ltdWxhdGVkU3lzdGVtPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlN0YWlyczwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U3RhdGU8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUHJvdGV1c0xpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMiPjxCPlN0ZF9kYXRhdHlwZXNGYWN0b3J5PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzUGFja2FnZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIj48Qj5TdGRfZGF0YXR5cGVzUGFja2FnZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TdXJmYWNlPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5GbG9vcjwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Hcm91bmQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkdyb3VuZDwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Rmxvb3I8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxhbmRTdXJmYWNlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U3RhaXJzPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGFuZFN1cmZhY2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TdGFpcnM8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5XYXRlclN1cmZhY2U8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdG9yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5BY3R1YXRvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkVuZ2luZVN5c3RlbTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+V2hlZWxTeXN0ZW08L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FnZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5BZ2VudDwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IdW1hbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+SHVtYW48L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UGVkZXN0cmlhbjwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UGVkZXN0cmlhbjwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3Q8L0I+PC9BPiAoYWxzbyBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5TeXN0ZW08L0E+KQorPC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5CbGVuZGVyTW9yc2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQnVpbGRpbmcuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkJ1aWxkaW5nPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q2FtZXJhU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkN5Y2FiVEs8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW5naW5lU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5FbmdpbmVTeXN0ZW08L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRW52aXJvbm1lbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkVudmlyb25tZW50PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5GbG9vcjwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkdQU1N5c3RlbTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Hcm91bmQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkdyb3VuZDwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Rmxvb3I8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxhbmRTdXJmYWNlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U3RhaXJzPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9IYXJkd2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+SGFyZHdhcmU8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSHVtYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkh1bWFuPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBlZGVzdHJpYW48L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5JbWFnZVNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkNhbWVyYVN5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxhbmRTdXJmYWNlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5MaWRhclN5c3RlbTwvQj48L0E+IChhbHNvIGV4dGVuZHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQT4sIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9BPikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5HUFNTeXN0ZW08L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5MaWRhclN5c3RlbTwvQj48L0E+IChhbHNvIGV4dGVuZHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+KQorPC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xpZGFyU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5MaWRhclN5c3RlbTwvQj48L0E+IChhbHNvIGV4dGVuZHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTwvQT4pCis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QZWRlc3RyaWFuPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QaHlzaWNhbE9iamVjdDwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+QWdlbnQ8L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSHVtYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkh1bWFuPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBlZGVzdHJpYW48L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBlZGVzdHJpYW48L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90PC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPikKKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0J1aWxkaW5nLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5CdWlsZGluZzwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Rmxvb3I8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Hcm91bmQ8L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkZsb29yPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5MYW5kU3VyZmFjZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlN0YWlyczwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSHVtYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkh1bWFuPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBlZGVzdHJpYW48L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5MYW5kU3VyZmFjZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QZWRlc3RyaWFuLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QZWRlc3RyaWFuPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BsYW5ldC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+UGxhbmV0PC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdDwvQj48L0E+IChhbHNvIGV4dGVuZHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWdlbnQ8L0E+LCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+U3lzdGVtPC9BPikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TdGFpcnM8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U3VyZmFjZTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Rmxvb3I8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Hcm91bmQ8L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkZsb29yPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5MYW5kU3VyZmFjZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlN0YWlyczwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxhbmRTdXJmYWNlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U3RhaXJzPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+V2F0ZXJTdXJmYWNlPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XYXRlclN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPldhdGVyU3VyZmFjZTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhbmV0Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5QbGFuZXQ8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlBsYXRmb3JtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+QmxlbmRlck1vcnNlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkN5Y2FiVEs8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90aWNNaWRkbGV3YXJlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTaW11bGF0b3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90aWNTaW11bGF0b3I8L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5CbGVuZGVyTW9yc2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3ljYWJUSy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q3ljYWJUSzwvQj48L0E+PC9VTD4KKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdDwvQj48L0E+IChhbHNvIGV4dGVuZHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+QWdlbnQ8L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3RpY01pZGRsZXdhcmU8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1NpbXVsYXRvci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3RpY1NpbXVsYXRvcjwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CbGVuZGVyTW9yc2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkJsZW5kZXJNb3JzZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5DeWNhYlRLPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5Sb2JvdGljU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdG9yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5BY3R1YXRvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkVuZ2luZVN5c3RlbTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+V2hlZWxTeXN0ZW08L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q2FtZXJhU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+RW5naW5lU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R1BTU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5JbWFnZVNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkNhbWVyYVN5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPiwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkdQU1N5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT4pCis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPikKKzwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2Vuc29yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q2FtZXJhU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R1BTU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5JbWFnZVNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkNhbWVyYVN5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPiwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkdQU1N5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT4pCis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPikKKzwvVUw+Cis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XaGVlbFN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+V2hlZWxTeXN0ZW08L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2Vuc29yRHJpdmVyPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U2Vuc29yU3lzdGVtPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Q2FtZXJhU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R1BTU3lzdGVtPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5JbWFnZVNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkNhbWVyYVN5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPiwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0E+KQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTwvQj48L0E+PFVMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HUFNTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkdQU1N5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTwvQT4pCis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW08L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkxpZGFyU3lzdGVtPC9CPjwvQT4gKGFsc28gZXh0ZW5kcyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtPC9BPikKKzwvVUw+Cis8L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TaW11bGF0ZWRTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlNpbXVsYXRlZFN5c3RlbTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U29mdHdhcmU8L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yRHJpdmVyLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TZW5zb3JEcml2ZXI8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2ltdWxhdGVkU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TaW11bGF0ZWRTeXN0ZW08L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+U3RhaXJzPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlN1cmZhY2U8L0I+PC9BPjxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPkZsb29yPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+R3JvdW5kPC9CPjwvQT48VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Zsb29yLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5GbG9vcjwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+TGFuZFN1cmZhY2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TdGFpcnM8L0I+PC9BPjwvVUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xhbmRTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5MYW5kU3VyZmFjZTwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGFpcnMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlN0YWlyczwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XYXRlclN1cmZhY2UuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPldhdGVyU3VyZmFjZTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5XYXRlclN1cmZhY2U8L0I+PC9BPjxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2hlZWxTeXN0ZW0uaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPldoZWVsU3lzdGVtPC9CPjwvQT48L1VMPgorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5UcmFuc2l0aW9uPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dhdGVyU3VyZmFjZS5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+V2F0ZXJTdXJmYWNlPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1doZWVsU3lzdGVtLmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5XaGVlbFN5c3RlbTwvQj48L0E+PC9VTD4KKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90TUxQYWNrYWdlLkxpdGVyYWxzPC9CPjwvQT48TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1Byb3RldXNMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzIj48Qj5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFsczwvQj48L0E+PExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Qcm90ZXVzTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+PEI+U3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHM8L0I+PC9BPjwvVUw+Cis8SDI+CitFbnVtIEhpZXJhcmNoeQorPC9IMj4KKzxVTD4KKzxMSSBUWVBFPSJjaXJjbGUiPmphdmEubGFuZy5PYmplY3Q8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5qYXZhLmxhbmcuRW51bSZsdDtFJmd0OyAoaW1wbGVtZW50cyBqYXZhLmxhbmcuQ29tcGFyYWJsZSZsdDtUJmd0OywgamF2YS5pby5TZXJpYWxpemFibGUpCis8VUw+Cis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VuaXRLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+VW5pdEtpbmQ8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvVUdWS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlVHVktpbmQ8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlN5bmNocm9uaXphdGlvbktpbmQ8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TaGFkZTwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FbnVtZXJhdG9yKQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5TZXJ2aWNlRmxvd0tpbmQ8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcikKKzxMSSBUWVBFPSJjaXJjbGUiPm9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC48QSBIUkVGPSJvcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RLaW5kLmh0bWwiIHRpdGxlPSJlbnVtIGluIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTCI+PEI+Um9ib3RLaW5kPC9CPjwvQT4gKGltcGxlbWVudHMgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3IpCis8TEkgVFlQRT0iY2lyY2xlIj5vcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuPEEgSFJFRj0ib3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlS2luZC5odG1sIiB0aXRsZT0iZW51bSBpbiBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwiPjxCPlJvYm90aWNNaWRkbGV3YXJlS2luZDwvQj48L0E+IChpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FbnVtZXJhdG9yKQorPExJIFRZUEU9ImNpcmNsZSI+b3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLjxBIEhSRUY9Im9yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuaHRtbCIgdGl0bGU9ImVudW0gaW4gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MIj48Qj5EYXRhRmxvd0RpcmVjdGlvbktpbmQ8L0I+PC9BPiAoaW1wbGVtZW50cyBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcikKKzwvVUw+Cis8L1VMPgorPC9VTD4KKzxIUj4KKworCis8IS0tID09PT09PT0gU1RBUlQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT0gLS0+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KKzxBIEhSRUY9IiNza2lwLW5hdmJhcl9ib3R0b20iIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiIFNVTU1BUlk9IiI+Cis8VFI+Cis8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+Cis8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KKzxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyIgU1VNTUFSWT0iIj4KKyAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Im92ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPlBhY2thZ2U8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPlRyZWU8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJkZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KKyAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImluZGV4LWZpbGVzL2luZGV4LTEuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CisgIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJoZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgorICA8L1RSPgorPC9UQUJMRT4KKzwvVEQ+Cis8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KKzwvRU0+Cis8L1REPgorPC9UUj4KKworPFRSPgorPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KKyZuYnNwO1BSRVYmbmJzcDsKKyZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KKzxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CisgIDxBIEhSRUY9ImluZGV4Lmh0bWw/b3ZlcnZpZXctdHJlZS5odG1sIiB0YXJnZXQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKKyZuYnNwOzxBIEhSRUY9Im92ZXJ2aWV3LXRyZWUuaHRtbCIgdGFyZ2V0PSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CismbmJzcDs8U0NSSVBUIHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgIDwhLS0KKyAgaWYod2luZG93PT10b3ApIHsKKyAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSJhbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOworICB9CisgIC8vLS0+Cis8L1NDUklQVD4KKzxOT1NDUklQVD4KKyAgPEEgSFJFRj0iYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KKzwvTk9TQ1JJUFQ+CisKKworPC9GT05UPjwvVEQ+Cis8L1RSPgorPC9UQUJMRT4KKzxBIE5BTUU9InNraXAtbmF2YmFyX2JvdHRvbSI+PC9BPgorPCEtLSA9PT09PT09PSBFTkQgT0YgQk9UVE9NIE5BVkJBUiA9PT09PT09IC0tPgorCis8SFI+CisKKzwvQk9EWT4KKzwvSFRNTD4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvcGFja2FnZS1saXN0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9wYWNrYWdlLWxpc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWE3NmUyZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvcGFja2FnZS1saXN0CkBAIC0wLDAgKzEsMTYgQEAKK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzCitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsCitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMKK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsCitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzCitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwKK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzCitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsCitvcmcuZWNsaXBzZS5wYXB5cnVzLlByb3RldXNMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcworb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbAorb3JnLmVjbGlwc2UucGFweXJ1cy5Qcm90ZXVzTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMKK29yZy5lY2xpcHNlLnBhcHlydXMuUHJvdGV1c0xpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwKK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTAorb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwKK29yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsCitvcmcuZWNsaXBzZS5wYXB5cnVzLnByb3RldXMKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvcmVzb3VyY2VzL2luaGVyaXQuZ2lmIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2RvYy9yZXNvdXJjZXMvaW5oZXJpdC5naWYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzgxNDg2NwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2MvcmVzb3VyY2VzL2luaGVyaXQuZ2lmCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9kb2Mvc3R5bGVzaGVldC5jc3MgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL3N0eWxlc2hlZXQuY3NzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZkMzFmZGIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL3N0eWxlc2hlZXQuY3NzCkBAIC0wLDAgKzEsMjkgQEAKKy8qIEphdmFkb2Mgc3R5bGUgc2hlZXQgKi8KKworLyogRGVmaW5lIGNvbG9ycywgZm9udHMgYW5kIG90aGVyIHN0eWxlIGF0dHJpYnV0ZXMgaGVyZSB0byBvdmVycmlkZSB0aGUgZGVmYXVsdHMgKi8KKworLyogUGFnZSBiYWNrZ3JvdW5kIGNvbG9yICovCitib2R5IHsgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRiB9CisKKy8qIEhlYWRpbmdzICovCitoMSB7IGZvbnQtc2l6ZTogMTQ1JSB9CisKKy8qIFRhYmxlIGNvbG9ycyAqLworLlRhYmxlSGVhZGluZ0NvbG9yICAgICB7IGJhY2tncm91bmQ6ICNDQ0NDRkYgfSAvKiBEYXJrIG1hdXZlICovCisuVGFibGVTdWJIZWFkaW5nQ29sb3IgIHsgYmFja2dyb3VuZDogI0VFRUVGRiB9IC8qIExpZ2h0IG1hdXZlICovCisuVGFibGVSb3dDb2xvciAgICAgICAgIHsgYmFja2dyb3VuZDogI0ZGRkZGRiB9IC8qIFdoaXRlICovCisKKy8qIEZvbnQgdXNlZCBpbiBsZWZ0LWhhbmQgZnJhbWUgbGlzdHMgKi8KKy5GcmFtZVRpdGxlRm9udCAgIHsgZm9udC1zaXplOiAxMDAlOyBmb250LWZhbWlseTogSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZiB9CisuRnJhbWVIZWFkaW5nRm9udCB7IGZvbnQtc2l6ZTogIDkwJTsgZm9udC1mYW1pbHk6IEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYgfQorLkZyYW1lSXRlbUZvbnQgICAgeyBmb250LXNpemU6ICA5MCU7IGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmIH0KKworLyogTmF2aWdhdGlvbiBiYXIgZm9udHMgYW5kIGNvbG9ycyAqLworLk5hdkJhckNlbGwxICAgIHsgYmFja2dyb3VuZC1jb2xvcjojRUVFRUZGO30gLyogTGlnaHQgbWF1dmUgKi8KKy5OYXZCYXJDZWxsMVJldiB7IGJhY2tncm91bmQtY29sb3I6IzAwMDA4Qjt9IC8qIERhcmsgQmx1ZSAqLworLk5hdkJhckZvbnQxICAgIHsgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7IGNvbG9yOiMwMDAwMDA7fQorLk5hdkJhckZvbnQxUmV2IHsgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7IGNvbG9yOiNGRkZGRkY7fQorCisuTmF2QmFyQ2VsbDIgICAgeyBmb250LWZhbWlseTogQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjsgYmFja2dyb3VuZC1jb2xvcjojRkZGRkZGO30KKy5OYXZCYXJDZWxsMyAgICB7IGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmOyBiYWNrZ3JvdW5kLWNvbG9yOiNGRkZGRkY7fQorCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMDFfQ3ljYWJfVEsucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzAxX0N5Y2FiX1RLLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMGM4MDQ3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzAxX0N5Y2FiX1RLLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMDJfc3lzdGVtLnBuZyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8wMl9zeXN0ZW0ucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNiMTJjYzcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMDJfc3lzdGVtLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMDNfcm9ib3Rfc3lzdGVtLnBuZyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8wM19yb2JvdF9zeXN0ZW0ucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQzMWEzYzIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMDNfcm9ib3Rfc3lzdGVtLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMDRfcm9ib3RpY19zaW11bGF0b3IucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzA0X3JvYm90aWNfc2ltdWxhdG9yLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45Yzk0NWU4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzA0X3JvYm90aWNfc2ltdWxhdG9yLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMDVfcm9ib3RpY19taWRkbGV3YXJlLnBuZyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8wNV9yb2JvdGljX21pZGRsZXdhcmUucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVjNjZjYjIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMDVfcm9ib3RpY19taWRkbGV3YXJlLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMDVfcm9ib3RpY19wbGF0Zm9ybS5wbmcgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMDVfcm9ib3RpY19wbGF0Zm9ybS5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjg1M2U5OQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8wNV9yb2JvdGljX3BsYXRmb3JtLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMDdfc2Vuc29yX2RyaXZlci5wbmcgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMDdfc2Vuc29yX2RyaXZlci5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDBhZWE0ZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8wN19zZW5zb3JfZHJpdmVyLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMDhfc2ltdWxhdGVkX3N5c3RlbS5wbmcgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMDhfc2ltdWxhdGVkX3N5c3RlbS5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjI1OWIzYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8wOF9zaW11bGF0ZWRfc3lzdGVtLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMDlfbGlkYXJfc3lzdGVtLnBuZyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8wOV9saWRhcl9zeXN0ZW0ucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA5YmYwNzcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMDlfbGlkYXJfc3lzdGVtLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMTBfY2FtZXJhX3N5c3RlbS5wbmcgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMTBfY2FtZXJhX3N5c3RlbS5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTIzZWExNgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8xMF9jYW1lcmFfc3lzdGVtLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMTFfdHJhY2tpbmdfc2Vuc29yLnBuZyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8xMV90cmFja2luZ19zZW5zb3IucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM0MjAxNzAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMTFfdHJhY2tpbmdfc2Vuc29yLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMTJfb2JqZWN0X2RldGVjdGlvbl9zeXN0ZW0ucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzEyX29iamVjdF9kZXRlY3Rpb25fc3lzdGVtLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZDQzOGU0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzEyX29iamVjdF9kZXRlY3Rpb25fc3lzdGVtLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMTNfYWN0aW9uLnBuZyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8xM19hY3Rpb24ucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJkZDVmMjgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMTNfYWN0aW9uLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMTRfZW5naW5lX3N5c3RlbS5wbmcgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMTRfZW5naW5lX3N5c3RlbS5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzVkM2I2OQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8xNF9lbmdpbmVfc3lzdGVtLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMTVfd2hlZWxfc3lzdGVtLnBuZyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8xNV93aGVlbF9zeXN0ZW0ucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU5OTkyYTEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMTVfd2hlZWxfc3lzdGVtLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMTZfcm9ib3QucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzE2X3JvYm90LnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNjFjZWUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzE2X3JvYm90LnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMTdfaGFyZHdhcmUucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzE3X2hhcmR3YXJlLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wNGU4YjUxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzE3X2hhcmR3YXJlLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMThfc29mdHdhcmUucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzE4X3NvZnR3YXJlLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mNjFiOWE4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzE4X3NvZnR3YXJlLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMTlfZ3BzLnBuZyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8xOV9ncHMucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc5YzY3ZDcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMTlfZ3BzLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMjBfaW1hZ2Vfc2Vuc29yX3N5c3RlbS5wbmcgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMjBfaW1hZ2Vfc2Vuc29yX3N5c3RlbS5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWFlZTlhNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8yMF9pbWFnZV9zZW5zb3Jfc3lzdGVtLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvcm9ib3RtbF8xNl8xNi5wbmcgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvcm9ib3RtbF8xNl8xNi5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODNhMWE4MgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi9yb2JvdG1sXzE2XzE2LnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMzJ4MzIvcm9ib3RtbF8zMl8zMi5wbmcgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMzJ4MzIvcm9ib3RtbF8zMl8zMi5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDI0MTBiNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8zMngzMi9yb2JvdG1sXzMyXzMyLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMzJ4MzIvcm9ib3RtbF8zMl8zMl9vbGQucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzMyeDMyL3JvYm90bWxfMzJfMzJfb2xkLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZGRhZTk1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzMyeDMyL3JvYm90bWxfMzJfMzJfb2xkLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvY29tcG9uZW50cy1kZXByZWNhdGVkL2FjdHVhdG9yQS5naWYgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvY29tcG9uZW50cy1kZXByZWNhdGVkL2FjdHVhdG9yQS5naWYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDRjMGY3ZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy9jb21wb25lbnRzLWRlcHJlY2F0ZWQvYWN0dWF0b3JBLmdpZgpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvY29tcG9uZW50cy1kZXByZWNhdGVkL2NvbXBvbmVudC5naWYgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvY29tcG9uZW50cy1kZXByZWNhdGVkL2NvbXBvbmVudC5naWYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODhhNjk5MwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy9jb21wb25lbnRzLWRlcHJlY2F0ZWQvY29tcG9uZW50LmdpZgpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvY29tcG9uZW50cy1kZXByZWNhdGVkL3NlbnNvclMuZ2lmIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zL2NvbXBvbmVudHMtZGVwcmVjYXRlZC9zZW5zb3JTLmdpZgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43Y2FkZmY2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zL2NvbXBvbmVudHMtZGVwcmVjYXRlZC9zZW5zb3JTLmdpZgpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvSW4ucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zL3BvcnRzL0luLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jMGI5NjQ2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zL3BvcnRzL0luLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvSW5PdXQucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zL3BvcnRzL0luT3V0LnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMDI5NDQ3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zL3BvcnRzL0luT3V0LnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvT3V0LnBuZyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy9wb3J0cy9PdXQucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJkZjllODYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvT3V0LnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvUHJvdmlkZWQucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zL3BvcnRzL1Byb3ZpZGVkLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40ODRkZjFiCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zL3BvcnRzL1Byb3ZpZGVkLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvUmVxdWlyZWQucG5nIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zL3BvcnRzL1JlcXVpcmVkLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNDlmYWZkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zL3BvcnRzL1JlcXVpcmVkLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvb2xkL0luLnBuZyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy9wb3J0cy9vbGQvSW4ucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjMyNzMxODEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvb2xkL0luLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvb2xkL0luT3V0LnBuZyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy9wb3J0cy9vbGQvSW5PdXQucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM4NWY3NTMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvb2xkL0luT3V0LnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvb2xkL091dC5wbmcgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvb2xkL091dC5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjI0MTlmNgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy9wb3J0cy9vbGQvT3V0LnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvb2xkL1Byb3ZpZGVkLnBuZyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy9wb3J0cy9vbGQvUHJvdmlkZWQucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjViZjkyZjUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvb2xkL1Byb3ZpZGVkLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvb2xkL1JlcXVpcmVkLnBuZyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy9wb3J0cy9vbGQvUmVxdWlyZWQucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIyNTJkYTQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvb2xkL1JlcXVpcmVkLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcm9ib3RtbC9Sb2JvdE1MLTE2eDE2LThiaXRzLnBuZyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy9yb2JvdG1sL1JvYm90TUwtMTZ4MTYtOGJpdHMucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJjNzgyM2QKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcm9ib3RtbC9Sb2JvdE1MLTE2eDE2LThiaXRzLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcm9ib3RtbC9Sb2JvdE1MLTMyeDMyLnBuZyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy9yb2JvdG1sL1JvYm90TUwtMzJ4MzIucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU1OTI4ODMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcm9ib3RtbC9Sb2JvdE1MLTMyeDMyLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcm9ib3RtbC9Sb2JvdE1MLTQ4eDQ4LnBuZyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy9yb2JvdG1sL1JvYm90TUwtNDh4NDgucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjczYzUzYTQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcm9ib3RtbC9Sb2JvdE1MLTQ4eDQ4LnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvbW9kZWwvUm9ib3RNTC5lY29yZSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9tb2RlbC9Sb2JvdE1MLmVjb3JlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmYxNTViMzgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvbW9kZWwvUm9ib3RNTC5lY29yZQpAQCAtMCwwICsxLDQyMyBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxlY29yZTpFUGFja2FnZSB4bWk6dmVyc2lvbj0iMi4wIiB4bWxuczp4bWk9Imh0dHA6Ly93d3cub21nLm9yZy9YTUkiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiCisgICAgeG1sbnM6ZWNvcmU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUiIG5hbWU9IlJvYm90TUwiIG5zVVJJPSJodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEiIG5zUHJlZml4PSJSb2JvdE1MIj4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJUcmFuc2l0aW9uIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJndWFyZCBpcyB0eXBlZCB3aXRoIGEgYm9vbGVhbiBvcGVyYXRpb24gdGhhdCBoYXZlIHRvIGJlIGRlZmluZWQgaW4gdGhlIG1vZGVsIGJlZm9yZSB1c2luZyBpdCYjeEQ7JiN4QTtlZmZlY3QgaXMgdHlwZWQgYnkgYW4gb3BlcmF0aW9uIHRoYXQgaXMgb3duZWQgYnkgdGhlIGNvbXBvbmVudCB0aGF0IGlzIGJlaGF2aW9yZWQgYnkgdGhlIEZTTSYjeEQ7JiN4QTsiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iYmFzZV9UcmFuc2l0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVDbGFzcyAuLi8uLi9vcmcuZWNsaXBzZS51bWwyLnVtbC9tb2RlbC9VTUwuZWNvcmUjLy9UcmFuc2l0aW9uIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Imd1YXJkIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVDbGFzcyAuLi8uLi9vcmcuZWNsaXBzZS51bWwyLnVtbC9tb2RlbC9VTUwuZWNvcmUjLy9CZWhhdmlvciIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlZmZlY3QiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RUNsYXNzIC4uLy4uL29yZy5lY2xpcHNlLnVtbDIudW1sL21vZGVsL1VNTC5lY29yZSMvL0JlaGF2aW9yIi8+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkFsZ29yaXRobSI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iTGliRmlsZUZvcm1hdCBjYW4gYmUgZWxmLCBtYXRsYWIsIGV0YyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJiYXNlX09wZXJhdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFQ2xhc3MgLi4vLi4vb3JnLmVjbGlwc2UudW1sMi51bWwvbW9kZWwvVU1MLmVjb3JlIy8vT3BlcmF0aW9uIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImlzRXh0ZXJuYWwiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIC4uLy4uL29yZy5lY2xpcHNlLnVtbDIudHlwZXMvbW9kZWwvVHlwZXMuZWNvcmUjLy9Cb29sZWFuIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImV4dEZ1bmN0aW9uTmFtZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgLi4vLi4vb3JnLmVjbGlwc2UudW1sMi50eXBlcy9tb2RlbC9UeXBlcy5lY29yZSMvL1N0cmluZyIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJsaWJQYXRoIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSAuLi8uLi9vcmcuZWNsaXBzZS51bWwyLnR5cGVzL21vZGVsL1R5cGVzLmVjb3JlIy8vU3RyaW5nIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImxpYkZpbGVGb3JtYXQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIC4uLy4uL29yZy5lY2xpcHNlLnVtbDIudHlwZXMvbW9kZWwvVHlwZXMuZWNvcmUjLy9TdHJpbmciCisgICAgICAgIGRlZmF1bHRWYWx1ZUxpdGVyYWw9ImVsZiIvPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTdGF0ZSI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iV2hlbiBhIHN0YXRlIGlzIGFjdGl2YXRlZCwgYSBiZWhhdmlvciBpcyBhY3RpdmF0ZWQgYW5kIGV4ZWN1dGVkLiYjeEQ7JiN4QTtJdCBpcyBwb3NzaWJsZSB0byBhc3NvY2lhdGUgbW9yZSBvbmUgYmVoYXZpb3IgdG8gdGhlIHN0YXRlLiBCdXQgdGhlIHF1ZXN0aW9uIGlzIGhvdyB0byBkZWZpbmUgdGhlIG9yZGVyIG9mIGV4ZWN1dGlvbiBvZiB0aGUgYmVoYXZpb3JzPyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJiYXNlX1N0YXRlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVDbGFzcyAuLi8uLi9vcmcuZWNsaXBzZS51bWwyLnVtbC9tb2RlbC9VTUwuZWNvcmUjLy9TdGF0ZSIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJiZWhhdmlvciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFQ2xhc3MgLi4vLi4vb3JnLmVjbGlwc2UudW1sMi51bWwvbW9kZWwvVU1MLmVjb3JlIy8vQmVoYXZpb3IiLz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQWN0dWF0ZWRKb2ludCIgZVN1cGVyVHlwZXM9IiMvL0pvaW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJtb3Rvcml6ZWQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSm9pbnQiPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJiYXNlX0Nvbm5lY3RvciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFQ2xhc3MgLi4vLi4vb3JnLmVjbGlwc2UudW1sMi51bWwvbW9kZWwvVU1MLmVjb3JlIy8vQ29ubmVjdG9yIi8+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNvbXBsZXRlQm9uZGluZyIgZVN1cGVyVHlwZXM9IiMvL0pvaW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGlzIHJlbGF0aW9uIHNwZWNpZmllcyB0aGF0JiN4RDsmI3hBOyB0d28gUGh5c2ljYWxPYmplY3QgYXJlIHNvIHRpZ2h0bHkmI3hEOyYjeEE7IGxpbmtlZCB0aGF0IHRoZWlyIGZyYW1lcyBhcmUgc3RhdGljYWxseSBsaW5rZWQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUm9ib3QiIGVTdXBlclR5cGVzPSIjLy9TeXN0ZW0iPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJ3aWR0aCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMiIvPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTeXN0ZW0iPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJiYXNlX0NsYXNzIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVDbGFzcyAuLi8uLi9vcmcuZWNsaXBzZS51bWwyLnVtbC9tb2RlbC9VTUwuZWNvcmUjLy9DbGFzcyIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJuYXRpdmUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIC4uLy4uL29yZy5lY2xpcHNlLnVtbDIudHlwZXMvbW9kZWwvVHlwZXMuZWNvcmUjLy9Cb29sZWFuIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImxpYnJhcnlQYXRoIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSAuLi8uLi9vcmcuZWNsaXBzZS51bWwyLnR5cGVzL21vZGVsL1R5cGVzLmVjb3JlIy8vU3RyaW5nIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImxpYnJhcnlDb21wb25lbnROYW1lIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSAuLi8uLi9vcmcuZWNsaXBzZS51bWwyLnR5cGVzL21vZGVsL1R5cGVzLmVjb3JlIy8vU3RyaW5nIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImFsaWFzIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSAuLi8uLi9vcmcuZWNsaXBzZS51bWwyLnR5cGVzL21vZGVsL1R5cGVzLmVjb3JlIy8vU3RyaW5nIi8+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkFnZW50IiBlU3VwZXJUeXBlcz0iIy8vUGh5c2ljYWxPYmplY3QiLz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQaHlzaWNhbE9iamVjdCI+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImhlaWdodCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMiIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJtYXNzIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIKKyAgICAgICAgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImJhc2VfQ2xhc3MiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RUNsYXNzIC4uLy4uL29yZy5lY2xpcHNlLnVtbDIudW1sL21vZGVsL1VNTC5lY29yZSMvL0NsYXNzIi8+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkRhdGFGbG93UG9ydCIgZVN1cGVyVHlwZXM9IiMvL1BvcnQiPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJkaXJlY3Rpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vRGF0YUZsb3dEaXJlY3Rpb25LaW5kIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImJ1ZmZlclNpemUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIC4uLy4uL29yZy5lY2xpcHNlLnVtbDIudHlwZXMvbW9kZWwvVHlwZXMuZWNvcmUjLy9JbnRlZ2VyIgorICAgICAgICBkZWZhdWx0VmFsdWVMaXRlcmFsPSIwIi8+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlBvcnQiIGFic3RyYWN0PSJ0cnVlIj4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iYmFzZV9Qb3J0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVDbGFzcyAuLi8uLi9vcmcuZWNsaXBzZS51bWwyLnVtbC9tb2RlbC9VTUwuZWNvcmUjLy9Qb3J0Ii8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InN5bmNocm9uaXphdGlvblBvbGljeSIKKyAgICAgICAgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9TeW5jaHJvbml6YXRpb25LaW5kIi8+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRW51bSIgbmFtZT0iU3luY2hyb25pemF0aW9uS2luZCI+CisgICAgPGVMaXRlcmFscyBuYW1lPSJTWU5DSCIvPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0iQVNZTkNIIiB2YWx1ZT0iMSIvPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0idW5kZWZpbmVkIiB2YWx1ZT0iMiIvPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUVudW0iIG5hbWU9IkRhdGFGbG93RGlyZWN0aW9uS2luZCI+CisgICAgPGVMaXRlcmFscyBuYW1lPSJpbiIvPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0ib3V0IiB2YWx1ZT0iMSIvPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0iaW5vdXQiIHZhbHVlPSIyIi8+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRW51bSIgbmFtZT0iU2VydmljZUZsb3dLaW5kIj4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9InByb3ZpZGVkIi8+CisgICAgPGVMaXRlcmFscyBuYW1lPSJyZXF1aXJlZCIgdmFsdWU9IjEiLz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU2VydmljZVBvcnQiIGVTdXBlclR5cGVzPSIjLy9Qb3J0Ij4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ia2luZCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiCisgICAgICAgIGVUeXBlPSIjLy9TZXJ2aWNlRmxvd0tpbmQiLz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQWN0dWF0b3JTeXN0ZW0iIGVTdXBlclR5cGVzPSIjLy9Sb2JvdGljU3lzdGVtICMvL0N5YmVyUGh5c2ljYWxTeXN0ZW0iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlN5c3RlbSBJTkNMVURJTkcgc29mdHdhcmUgd2hpY2ggY29udHJvbCBlZmZlY3RvcnMsIGxpa2UgYSBtZWNoYW5pY2FsIGFybSBkcml2ZXIuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlJvYm90aWNTeXN0ZW0iIGVTdXBlclR5cGVzPSIjLy9TeXN0ZW0iPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJsb2NhbFBvc2l0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVDbGFzcyBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1BvaW50MzIiCisgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImxvY2FsT3JpZW50YXRpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RUNsYXNzIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9pbnQzMiIKKyAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ3liZXJQaHlzaWNhbFN5c3RlbSIgZVN1cGVyVHlwZXM9IiMvL1N5c3RlbSIvPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlNlbnNvclN5c3RlbSIgZVN1cGVyVHlwZXM9IiMvL1JvYm90aWNTeXN0ZW0gIy8vQ3liZXJQaHlzaWNhbFN5c3RlbSI+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImZyZXF1ZW5jeSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMiIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpZGVudGlmaWVyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdHJpbmciLz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSGFyZHdhcmUiIGVTdXBlclR5cGVzPSIjLy9TeXN0ZW0iLz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTb2Z0d2FyZSIgZVN1cGVyVHlwZXM9IiMvL1N5c3RlbSI+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImlzUGVyaW9kaWMiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIC4uLy4uL29yZy5lY2xpcHNlLnVtbDIudHlwZXMvbW9kZWwvVHlwZXMuZWNvcmUjLy9Cb29sZWFuIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InBlcmlvZCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMiIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJwcmlvcml0eSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDgiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iZGVhZGxpbmUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzIiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0id2NldCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiCisgICAgICAgIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMiIvPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFbmdpbmVTeXN0ZW0iIGVTdXBlclR5cGVzPSIjLy9BY3R1YXRvclN5c3RlbSI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhpcyBpcyB0aGUgbW90b3JpemF0aW9uIHN5c3RlbSBmb2N1c2VkIGluIHRoZSBlbmdpbmUgb2YgYSByb2JvdGljIHZlaGljbGUuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InZlaGljbGVUcmFjdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgLi4vLi4vb3JnLmVjbGlwc2UudW1sMi50eXBlcy9tb2RlbC9UeXBlcy5lY29yZSMvL1N0cmluZyIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJtYXhFbmdpbmVGb3JjZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMiIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJtYXhCcmVha2luZ0ZvcmNlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9Im1heEFsbG93ZWRTdGVlcmluZyIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMiIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJtYXhBbGxvd2VkVmVsb2NpdHkiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzIiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iZ2Vhcl9yYXRpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzIiLz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU3RlZXJlZFdoZWVsU3lzdGVtIiBlU3VwZXJUeXBlcz0iIy8vTG9jb21vdGlvblN5c3RlbSI+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9IndoZWVsUmFkaXVzIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9IndoZWVsV2lkdGgiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzIiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ic3VzcGVuc2lvblJlc3RMZW5ndGgiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzIiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0id2hlZWxDb25uZWN0aW9uSGVpZ2h0IgorICAgICAgICBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InR5cGVPZldoZWVsIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdHJpbmciLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0id2hlZWxWZWxvY2l0eVBJRGtwIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9IndoZWVsVmVsb2NpdHlQSURraSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMiIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJ3aGVlbFZlbG9jaXR5UElEa2QiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzIiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0id2hlZWxTdGVlcmluZ1BJRGtwIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9IndoZWVsU3RlZXJpbmdQSURrZCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMiIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJ3aGVlbEZyaWN0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InN1c3BlbnNpb25TdGlmZm5lc3MiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzIiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ic3VzcGVuc2lvbkRhbXBpbmciIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzIiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ic3VzcGVuc2lvbkNvbXByZXNzaW9uIgorICAgICAgICBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9IndoZWVsVmVsb2NpdHlQSURtYXhTdW0iCisgICAgICAgIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzIiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0id2hlZWxWZWxvY2l0eVBJRG1heFZhbCIKKyAgICAgICAgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMiIvPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJMb2NvbW90aW9uU3lzdGVtIiBlU3VwZXJUeXBlcz0iIy8vQWN0dWF0b3JTeXN0ZW0iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9Ik1lY2hhbmljYWwgZGV2aWNlIGFzc29jaWF0ZWQgdG8gaXRzIERyaXZlciBmb3IgbW92aW5nIGEgTW9iaWxlIFJvYm90LiYjeEQ7JiN4QTtJdCBpcyBvcGVyYXRlZCBieSBhIHNvdXJjZSBvZiBlbmVyZ3ksIHVzdWFsbHkgaW4gdGhlIGZvcm0gb2YgYW4gZWxlY3RyaWMgY3VycmVudCwgaHlkcmF1bGljIGZsdWlkIHByZXNzdXJlIG9yIHBuZXVtYXRpYyBwcmVzc3VyZSwgYW5kIGNvbnZlcnRzIHRoYXQgZW5lcmd5IGludG8gc29tZSBraW5kIG9mIG1vdGlvbiAobWVhbmluZyBwb3NpdGlvbiBvZiBncmF2aXR5IGNlbnRyZSBvZiB0aGUgUm9ib3QgdGhhdCBpcyB1c2luZyBpdCBoYXMgYmVlbiBjaGFuZ2VkIHNpZ25pZmljYXRpdmVseSB0aHJvdWdoIHRpbWUpLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJJbWFnZVNlbnNvclN5c3RlbSIgZVN1cGVyVHlwZXM9IiMvL1NlbnNvclN5c3RlbSIvPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNhbWVyYVN5c3RlbSIgZVN1cGVyVHlwZXM9IiMvL0ltYWdlU2Vuc29yU3lzdGVtIj4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0id2lkdGgiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQzMiIKKyAgICAgICAgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iMCIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJoZWlnaHQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQzMiIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJhbHBoYV91IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImFscGhhX3YiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzIiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0idTAiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIgorICAgICAgICBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzIiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0idjAiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIgorICAgICAgICBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzIiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iY29sb3JfZm9ybWF0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdHJpbmciLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0idHJhbnNsYXRlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVDbGFzcyBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1BvaW50MzIiCisgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InJvdGF0ZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFQ2xhc3MgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb2ludDMyIgorICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0iIGVTdXBlclR5cGVzPSIjLy9TZW5zb3JTeXN0ZW0iLz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSIgZVN1cGVyVHlwZXM9IiMvL1NlbnNvclN5c3RlbSIvPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkxpZGFyU3lzdGVtIiBlU3VwZXJUeXBlcz0iIy8vT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtICMvL09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtIj4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ibmJMYXllcnMiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQzMiIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJsYXllckFuZ2xlTWluIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImxheWVyQW5nbGVTdGVwIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9Im5vaXNlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9Cb29sIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InNpZ21hTm9pc2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzIiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iYW5nbGVfbWluIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImFuZ2xlX21heCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMiIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJ0aW1lX2luY3JlbWVudCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ib3JpZ2luYWxOYW1lIiB2YWx1ZT0idGltZV9pbmNyZW1lbnQgIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InNjYW5fdGltZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ib3JpZ2luYWxOYW1lIiB2YWx1ZT0ic2Nhbl90aW1lICAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0icmFuZ2VfbWluIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InJhbmdlX21heCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMiIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJuYlJheXMiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQzMiIvPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0iIGVTdXBlclR5cGVzPSIjLy9TZW5zb3JTeXN0ZW0iLz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJHUFNTeXN0ZW0iIGVTdXBlclR5cGVzPSIjLy9Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0iPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJvcmlnaW5Qb3NpdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSJlY29yZTpFQ2xhc3MgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb2ludDMyIgorICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUVudW0iIG5hbWU9IlVHVktpbmQiPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0iZGlmZmVyZW50aWFsIi8+CisgICAgPGVMaXRlcmFscyBuYW1lPSJjYXIiIHZhbHVlPSIxIi8+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkFsZ29yaXRobUxpYnJhcnkiPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJiYXNlX0NsYXNzIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVDbGFzcyAuLi8uLi9vcmcuZWNsaXBzZS51bWwyLnVtbC9tb2RlbC9VTUwuZWNvcmUjLy9DbGFzcyIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJwYXRoIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIKKyAgICAgICAgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSAuLi8uLi9vcmcuZWNsaXBzZS51bWwyLnR5cGVzL21vZGVsL1R5cGVzLmVjb3JlIy8vU3RyaW5nIi8+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlNlbnNvckRyaXZlciIgZVN1cGVyVHlwZXM9IiMvL1NvZnR3YXJlIi8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRW52aXJvbm1lbnQiPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJiYXNlX0NsYXNzIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVDbGFzcyAuLi8uLi9vcmcuZWNsaXBzZS51bWwyLnVtbC9tb2RlbC9VTUwuZWNvcmUjLy9DbGFzcyIvPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJCdWlsZGluZyIgZVN1cGVyVHlwZXM9IiMvL1BoeXNpY2FsT2JqZWN0Ii8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU3VyZmFjZSIgZVN1cGVyVHlwZXM9IiMvL1BoeXNpY2FsT2JqZWN0Ii8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUGxhbmV0IiBlU3VwZXJUeXBlcz0iIy8vUGh5c2ljYWxPYmplY3QiLz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJMYW5kU3VyZmFjZSIgZVN1cGVyVHlwZXM9IiMvL0dyb3VuZCIvPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ikdyb3VuZCIgYWJzdHJhY3Q9InRydWUiIGVTdXBlclR5cGVzPSIjLy9TdXJmYWNlIi8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRmxvb3IiIGVTdXBlclR5cGVzPSIjLy9Hcm91bmQiLz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJXYXRlclN1cmZhY2UiIGVTdXBlclR5cGVzPSIjLy9TdXJmYWNlIi8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSHVtYW4iIGVTdXBlclR5cGVzPSIjLy9BZ2VudCIvPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlBlZGVzdHJpYW4iIGVTdXBlclR5cGVzPSIjLy9IdW1hbiIvPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlN0YWlycyIgZVN1cGVyVHlwZXM9IiMvL0dyb3VuZCIvPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlBsYXRmb3JtIiBlU3VwZXJUeXBlcz0iIy8vU3lzdGVtIj4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iYmFzZV9Ob2RlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVDbGFzcyAuLi8uLi9vcmcuZWNsaXBzZS51bWwyLnVtbC9tb2RlbC9VTUwuZWNvcmUjLy9Ob2RlIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImxpYnJhcnkiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0V4dGVybmFsTGlicmFyeSIvPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFeHRlcm5hbExpYnJhcnkiPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJsaWJQYXRoIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSAuLi8uLi9vcmcuZWNsaXBzZS51bWwyLnR5cGVzL21vZGVsL1R5cGVzLmVjb3JlIy8vU3RyaW5nIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImxpYkZpbGVGb3JtYXQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIC4uLy4uL29yZy5lY2xpcHNlLnVtbDIudHlwZXMvbW9kZWwvVHlwZXMuZWNvcmUjLy9TdHJpbmciCisgICAgICAgIGRlZmF1bHRWYWx1ZUxpdGVyYWw9ImVsZiIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJiYXNlX0ludGVyZmFjZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFQ2xhc3MgLi4vLi4vb3JnLmVjbGlwc2UudW1sMi51bWwvbW9kZWwvVU1MLmVjb3JlIy8vSW50ZXJmYWNlIi8+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlJvYm90aWNNaWRkbGV3YXJlIiBlU3VwZXJUeXBlcz0iIy8vUGxhdGZvcm0iPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJraW5kIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIKKyAgICAgICAgZVR5cGU9IiMvL1JvYm90aWNNaWRkbGV3YXJlS2luZCIvPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUVudW0iIG5hbWU9IlJvYm90aWNNaWRkbGV3YXJlS2luZCI+CisgICAgPGVMaXRlcmFscyBuYW1lPSJSVE1hcHMiLz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9IkFST0NBTSIgdmFsdWU9IjEiLz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9IlJPUyIgdmFsdWU9IjIiLz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9Ik9ST0NPUyIgdmFsdWU9IjMiLz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9IlVSQkkiIHZhbHVlPSI0Ii8+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlJvYm90aWNTaW11bGF0b3IiIGVTdXBlclR5cGVzPSIjLy9QbGF0Zm9ybSIvPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkN5Y2FiVEsiIGVTdXBlclR5cGVzPSIjLy9Sb2JvdGljU2ltdWxhdG9yIj4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0idXNlUmVhbFRpbWUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIC4uLy4uL29yZy5lY2xpcHNlLnVtbDIudHlwZXMvbW9kZWwvVHlwZXMuZWNvcmUjLy9Cb29sZWFuIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InRpbWVTdGVwIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InRpbWVGYWN0b3IiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzIiLz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQmxlbmRlck1vcnNlIiBlU3VwZXJUeXBlcz0iIy8vUm9ib3RpY1NpbXVsYXRvciI+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImRlYnVnTW9kZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgLi4vLi4vb3JnLmVjbGlwc2UudW1sMi50eXBlcy9tb2RlbC9UeXBlcy5lY29yZSMvL0Jvb2xlYW4iLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iZGVidWdEaXNwbGF5IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSAuLi8uLi9vcmcuZWNsaXBzZS51bWwyLnR5cGVzL21vZGVsL1R5cGVzLmVjb3JlIy8vQm9vbGVhbiIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJncmF2aXR5IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9Il92aWV3cG9ydF9zaGFkZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9TaGFkZSIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iV0lSRUZSQU1FIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJvcmlnaW5hbE5hbWUiIHZhbHVlPSIgdmlld3BvcnRfc2hhZGUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVFbnVtIiBuYW1lPSJTaGFkZSI+CisgICAgPGVMaXRlcmFscyBuYW1lPSJXSVJFRlJBTUUiLz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9IkJPVU5EQk9YIiB2YWx1ZT0iMSIvPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0iU09MSUQiIHZhbHVlPSIyIi8+CisgICAgPGVMaXRlcmFscyBuYW1lPSJURVhUVVJFRCIgdmFsdWU9IjMiLz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iT25Qb3J0Ij4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icG9ydCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiCisgICAgICAgIGVUeXBlPSIjLy9Qb3J0Ii8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImJhc2VfUGFyYW1ldGVyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVDbGFzcyAuLi8uLi9vcmcuZWNsaXBzZS51bWwyLnVtbC9tb2RlbC9VTUwuZWNvcmUjLy9QYXJhbWV0ZXIiLz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQWxsb2NhdGUiPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJiYXNlX0Fic3RyYWN0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVDbGFzcyAuLi8uLi9vcmcuZWNsaXBzZS51bWwyLnVtbC9tb2RlbC9VTUwuZWNvcmUjLy9BYnN0cmFjdGlvbiIvPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJJbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbSIgZVN1cGVyVHlwZXM9IiMvL1NlbnNvclN5c3RlbSIvPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbSIgZVN1cGVyVHlwZXM9IiMvL0dQU1N5c3RlbSIvPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9kb21ldHJ5U3lzdGVtIiBlU3VwZXJUeXBlcz0iIy8vTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtIi8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtIiBlU3VwZXJUeXBlcz0iIy8vT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtIi8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRGVwbG95bWVudFBsYW4iPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJiYXNlX1BhY2thZ2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RUNsYXNzIC4uLy4uL29yZy5lY2xpcHNlLnVtbDIudW1sL21vZGVsL1VNTC5lY29yZSMvL1BhY2thZ2UiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ibWFpbkluc3RhbmNlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVDbGFzcyAuLi8uLi9vcmcuZWNsaXBzZS51bWwyLnVtbC9tb2RlbC9VTUwuZWNvcmUjLy9JbnN0YW5jZVNwZWNpZmljYXRpb24iLz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iR3lyb3Njb3BlIiBlU3VwZXJUeXBlcz0iIy8vU2Vuc29yU3lzdGVtIi8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iT25WYXJpYWJsZSI+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InByb3BlcnR5IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVDbGFzcyAuLi8uLi9vcmcuZWNsaXBzZS51bWwyLnVtbC9tb2RlbC9VTUwuZWNvcmUjLy9Qcm9wZXJ0eSIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJiYXNlX1BhcmFtZXRlciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFQ2xhc3MgLi4vLi4vb3JnLmVjbGlwc2UudW1sMi51bWwvbW9kZWwvVU1MLmVjb3JlIy8vUGFyYW1ldGVyIi8+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNoYXNzaXMiIGVTdXBlclR5cGVzPSIjLy9TdXBwb3J0aW5nU3RydWN0dXJlIi8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU3VwcG9ydGluZ1N0cnVjdHVyZSIgZVN1cGVyVHlwZXM9IiMvL0hhcmR3YXJlIi8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iTWVjaGFuaWNhbExpbmthZ2UiIGVTdXBlclR5cGVzPSIjLy9IYXJkd2FyZSIvPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkxlZyIgZVN1cGVyVHlwZXM9IiMvL0xvY29tb3Rpb25IYXJkd2FyZSAjLy9NZWNoYW5pY2FsTGlua2FnZSIvPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkxvY29tb3Rpb25IYXJkd2FyZSIgZVN1cGVyVHlwZXM9IiMvL0FjdHVhdG9ySGFyZHdhcmUiLz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJBY3R1YXRvckhhcmR3YXJlIiBlU3VwZXJUeXBlcz0iIy8vSGFyZHdhcmUiLz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJNb2JpbGVSb2JvdCIgZVN1cGVyVHlwZXM9IiMvL1JvYm90Ij4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ia2luZCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiCisgICAgICAgIGVUeXBlPSIjLy9Nb2JpbGVSb2JvdEtpbmQiLz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVFbnVtIiBuYW1lPSJNb2JpbGVSb2JvdEtpbmQiPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0iQWlyVmVoaWNsZSIvPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0iSHlicmlkVmVoaWNsZSIgdmFsdWU9IjEiLz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9IlN1cmZhY2VWZWhpY2xlIiB2YWx1ZT0iMiIvPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0iVW5kZXJ3YXRlclZlaGljbGUiIHZhbHVlPSIzIi8+CisgICAgPGVMaXRlcmFscyBuYW1lPSJDYXJMaWtlVmVoaWNsZSIgdmFsdWU9IjQiLz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9IkRpZmZlcmVudGlhbFZlaGljbGUiIHZhbHVlPSI1Ii8+CisgICAgPGVMaXRlcmFscyBuYW1lPSJMZWdnZWRWZWhpY2xlIiB2YWx1ZT0iNiIvPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJNYW5pcHVsYXRvciIgZVN1cGVyVHlwZXM9IiMvL1JvYm90Ii8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUGlsb3RlZFN5c3RlbSIgZVN1cGVyVHlwZXM9IiMvL1JvYm90Ii8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUG93ZXJIYXJkd2FyZSIgZVN1cGVyVHlwZXM9IiMvL0hhcmR3YXJlIi8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU2Vuc29ySGFyZHdhcmUiIGVTdXBlclR5cGVzPSIjLy9IYXJkd2FyZSIvPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkdyYXNwaW5nSGFyZHdhcmUiIGVTdXBlclR5cGVzPSIjLy9BY3R1YXRvckhhcmR3YXJlIi8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU3RlZXJlZFdoZWVsSGFyZHdhcmUiIGVTdXBlclR5cGVzPSIjLy9Mb2NvbW90aW9uSGFyZHdhcmUiLz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJBcm0iLz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJMZWdTeXN0ZW0iIGVTdXBlclR5cGVzPSIjLy9Mb2NvbW90aW9uU3lzdGVtIi8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iR3Jhc3BpbmdTeXN0ZW0iIGVTdXBlclR5cGVzPSIjLy9BY3R1YXRvclN5c3RlbSI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iU3lzdGVtIG9mIGEgcm9ib3RpYyBwbGF0Zm9ybSB3aGljaCBjb3JyZXNwb25kIHdpdGggdGhlIHNvZnR3YXJlIGFuZCBoYXJkd2FyZSBvZiB0aGUgbWFuaXB1bGF0aW5nIGVmZmVjdG9ycyBvZiB0aGUgcm9ib3Q6IG1lY2hhbmljYWwgZmluZ2VycywgbWVjaGFuaWNhbCBhcm1zLCBncmFicyAuLi4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iV2VhcG9uU3lzdGVtIiBlU3VwZXJUeXBlcz0iIy8vQWN0dWF0b3JTeXN0ZW0iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlN5c3RlbSBvZiBhIHJvYm90aWMgcGxhdGZvcm0gd2hpY2ggY29ycmVzcG9uZCB3aXRoIHRoZSBzb2Z0d2FyZSBhbmQgaGFyZHdhcmUgb2YgdGhlIHdlYXBvbiBjb21wb25lbnRzIChhdHRhY2stZGVmZW5zZSkgb2YgIGEgcm9ib3QuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0iIGVTdXBlclR5cGVzPSIjLy9DeWJlclBoeXNpY2FsU3lzdGVtIi8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ2xvc2VkTG9vcENvbnRyb2xTeXN0ZW0iIGVTdXBlclR5cGVzPSIjLy9DeWJlclBoeXNpY2FsU3lzdGVtIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCI+CisgICAgICA8ZGV0YWlscyBrZXk9Im9yaWdpbmFsTmFtZSIgdmFsdWU9IkNsb3NlZC1Mb29wQ29udHJvbFN5c3RlbSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPcGVuTG9vcENvbnRyb2xTeXN0ZW0iIGVTdXBlclR5cGVzPSIjLy9DeWJlclBoeXNpY2FsU3lzdGVtIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCI+CisgICAgICA8ZGV0YWlscyBrZXk9Im9yaWdpbmFsTmFtZSIgdmFsdWU9Ik9wZW4tTG9vcENvbnRyb2xTeXN0ZW0iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUm9ib3RpY0hlYWQiIGVTdXBlclR5cGVzPSIjLy9NYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtIi8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0iIGVTdXBlclR5cGVzPSIjLy9NYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtIi8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSm95c3RpY05hdmlnYXRpb25TeXN0ZW0iIGVTdXBlclR5cGVzPSIjLy9OYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbSIvPgorPC9lY29yZTpFUGFja2FnZT4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9tb2RlbC9Sb2JvdE1MLmdlbm1vZGVsIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL21vZGVsL1JvYm90TUwuZ2VubW9kZWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmM5NGM5YQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9tb2RlbC9Sb2JvdE1MLmdlbm1vZGVsCkBAIC0wLDAgKzEsOTM2IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPGdlbm1vZGVsOkdlbk1vZGVsIHhtaTp2ZXJzaW9uPSIyLjAiIHhtbG5zOnhtaT0iaHR0cDovL3d3dy5vbWcub3JnL1hNSSIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIKKyAgICB4bWxuczplY29yZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSIgeG1sbnM6Z2VubW9kZWw9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjIuMC9HZW5Nb2RlbCIKKyAgICBtb2RlbERpcmVjdG9yeT0iL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMiIG1vZGVsUGx1Z2luSUQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbCIKKyAgICBtb2RlbE5hbWU9IlJvYm90TUwiIHJvb3RFeHRlbmRzQ2xhc3M9Im9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbCRDb250YWluZXIiCisgICAgaW1wb3J0ZXJJRD0ib3JnLmVjbGlwc2UudW1sMi51bWwuZWNvcmUuaW1wb3J0ZXIiIGNvbXBsaWFuY2VMZXZlbD0iNS4wIiBjb3B5cmlnaHRGaWVsZHM9ImZhbHNlIgorICAgIHVzZWRHZW5QYWNrYWdlcz0iLi4vLi4vb3JnLmVjbGlwc2UuZW1mLmVjb3JlL21vZGVsL0Vjb3JlLmdlbm1vZGVsIy8vZWNvcmUgLi4vLi4vb3JnLmVjbGlwc2UudW1sMi50eXBlcy9tb2RlbC9UeXBlcy5nZW5tb2RlbCMvL3R5cGVzIC4uLy4uL29yZy5lY2xpcHNlLnVtbDIudW1sL21vZGVsL1VNTC5nZW5tb2RlbCMvL3VtbCIKKyAgICBvcGVyYXRpb25SZWZsZWN0aW9uPSJ0cnVlIiBpbXBvcnRPcmdhbml6aW5nPSJ0cnVlIj4KKyAgPGdlbkFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbC9pbXBvcnRlci9vcmcuZWNsaXBzZS51bWwyLnVtbC5lY29yZS5pbXBvcnRlciI+CisgICAgPGRldGFpbHMga2V5PSJFQ09SRV9UQUdHRURfVkFMVUVTIiB2YWx1ZT0iUFJPQ0VTUyIvPgorICAgIDxkZXRhaWxzIGtleT0iVU5JT05fUFJPUEVSVElFUyIgdmFsdWU9IlJFUE9SVCIvPgorICAgIDxkZXRhaWxzIGtleT0iVU5UWVBFRF9QUk9QRVJUSUVTIiB2YWx1ZT0iUkVQT1JUIi8+CisgICAgPGRldGFpbHMga2V5PSJEVVBMSUNBVEVfRkVBVFVSRVMiIHZhbHVlPSJESVNDQVJEIi8+CisgICAgPGRldGFpbHMga2V5PSJTVUJTRVRUSU5HX1BST1BFUlRJRVMiIHZhbHVlPSJSRVBPUlQiLz4KKyAgICA8ZGV0YWlscyBrZXk9IlZBTElEQVRJT05fREVMRUdBVEVTIiB2YWx1ZT0iSUdOT1JFIi8+CisgICAgPGRldGFpbHMga2V5PSJPUFBPU0lURV9ST0xFX05BTUVTIiB2YWx1ZT0iSUdOT1JFIi8+CisgICAgPGRldGFpbHMga2V5PSJDT01NRU5UUyIgdmFsdWU9IlBST0NFU1MiLz4KKyAgICA8ZGV0YWlscyBrZXk9IkRVUExJQ0FURV9GRUFUVVJFX0lOSEVSSVRBTkNFIiB2YWx1ZT0iRElTQ0FSRCIvPgorICAgIDxkZXRhaWxzIGtleT0iRFVQTElDQVRFX09QRVJBVElPTlMiIHZhbHVlPSJESVNDQVJEIi8+CisgICAgPGRldGFpbHMga2V5PSJQUk9QRVJUWV9ERUZBVUxUX0VYUFJFU1NJT05TIiB2YWx1ZT0iSUdOT1JFIi8+CisgICAgPGRldGFpbHMga2V5PSJJTlZBUklBTlRfQ09OU1RSQUlOVFMiIHZhbHVlPSJQUk9DRVNTIi8+CisgICAgPGRldGFpbHMga2V5PSJSRURFRklOSU5HX1BST1BFUlRJRVMiIHZhbHVlPSJSRVBPUlQiLz4KKyAgICA8ZGV0YWlscyBrZXk9IkFOTk9UQVRJT05fREVUQUlMUyIgdmFsdWU9IlBST0NFU1MiLz4KKyAgICA8ZGV0YWlscyBrZXk9Ik5PTl9BUElfSU5WQVJJQU5UUyIgdmFsdWU9IklHTk9SRSIvPgorICAgIDxkZXRhaWxzIGtleT0iRFVQTElDQVRFX09QRVJBVElPTl9JTkhFUklUQU5DRSIgdmFsdWU9IkRJU0NBUkQiLz4KKyAgICA8ZGV0YWlscyBrZXk9IlJFREVGSU5JTkdfT1BFUkFUSU9OUyIgdmFsdWU9IlJFUE9SVCIvPgorICAgIDxkZXRhaWxzIGtleT0iSU5WT0NBVElPTl9ERUxFR0FURVMiIHZhbHVlPSJJR05PUkUiLz4KKyAgICA8ZGV0YWlscyBrZXk9IkRFUklWRURfRkVBVFVSRVMiIHZhbHVlPSJQUk9DRVNTIi8+CisgICAgPGRldGFpbHMga2V5PSJPUEVSQVRJT05fQk9ESUVTIiB2YWx1ZT0iSUdOT1JFIi8+CisgICAgPGRldGFpbHMga2V5PSJDQU1FTF9DQVNFX05BTUVTIiB2YWx1ZT0iSUdOT1JFIi8+CisgICAgPGRldGFpbHMga2V5PSJTVVBFUl9DTEFTU19PUkRFUiIgdmFsdWU9IlBST0NFU1MiLz4KKyAgPC9nZW5Bbm5vdGF0aW9ucz4KKyAgPGZvcmVpZ25Nb2RlbD5Sb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbDwvZm9yZWlnbk1vZGVsPgorICA8Z2VuUGFja2FnZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlblBhY2thZ2UiIHByZWZpeD0iUm9ib3RNTCIgYmFzZVBhY2thZ2U9Im9yZy5lY2xpcHNlLnBhcHlydXMiCisgICAgICBkaXNwb3NhYmxlUHJvdmlkZXJGYWN0b3J5PSJ0cnVlIiBlY29yZVBhY2thZ2U9IlJvYm90TUwuZWNvcmUjLyI+CisgICAgPGdlbkVudW1zIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5FbnVtIiB0eXBlU2FmZUVudW1Db21wYXRpYmxlPSJmYWxzZSIgZWNvcmVFbnVtPSJSb2JvdE1MLmVjb3JlIy8vU3luY2hyb25pemF0aW9uS2luZCI+CisgICAgICA8Z2VuRW51bUxpdGVyYWxzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5FbnVtTGl0ZXJhbCIgZWNvcmVFbnVtTGl0ZXJhbD0iUm9ib3RNTC5lY29yZSMvL1N5bmNocm9uaXphdGlvbktpbmQvU1lOQ0giLz4KKyAgICAgIDxnZW5FbnVtTGl0ZXJhbHMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkVudW1MaXRlcmFsIiBlY29yZUVudW1MaXRlcmFsPSJSb2JvdE1MLmVjb3JlIy8vU3luY2hyb25pemF0aW9uS2luZC9BU1lOQ0giLz4KKyAgICAgIDxnZW5FbnVtTGl0ZXJhbHMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkVudW1MaXRlcmFsIiBlY29yZUVudW1MaXRlcmFsPSJSb2JvdE1MLmVjb3JlIy8vU3luY2hyb25pemF0aW9uS2luZC91bmRlZmluZWQiLz4KKyAgICA8L2dlbkVudW1zPgorICAgIDxnZW5FbnVtcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRW51bSIgdHlwZVNhZmVFbnVtQ29tcGF0aWJsZT0iZmFsc2UiIGVjb3JlRW51bT0iUm9ib3RNTC5lY29yZSMvL0RhdGFGbG93RGlyZWN0aW9uS2luZCI+CisgICAgICA8Z2VuRW51bUxpdGVyYWxzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5FbnVtTGl0ZXJhbCIgZWNvcmVFbnVtTGl0ZXJhbD0iUm9ib3RNTC5lY29yZSMvL0RhdGFGbG93RGlyZWN0aW9uS2luZC9pbiIvPgorICAgICAgPGdlbkVudW1MaXRlcmFscyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRW51bUxpdGVyYWwiIGVjb3JlRW51bUxpdGVyYWw9IlJvYm90TUwuZWNvcmUjLy9EYXRhRmxvd0RpcmVjdGlvbktpbmQvb3V0Ii8+CisgICAgICA8Z2VuRW51bUxpdGVyYWxzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5FbnVtTGl0ZXJhbCIgZWNvcmVFbnVtTGl0ZXJhbD0iUm9ib3RNTC5lY29yZSMvL0RhdGFGbG93RGlyZWN0aW9uS2luZC9pbm91dCIvPgorICAgIDwvZ2VuRW51bXM+CisgICAgPGdlbkVudW1zIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5FbnVtIiB0eXBlU2FmZUVudW1Db21wYXRpYmxlPSJmYWxzZSIgZWNvcmVFbnVtPSJSb2JvdE1MLmVjb3JlIy8vU2VydmljZUZsb3dLaW5kIj4KKyAgICAgIDxnZW5FbnVtTGl0ZXJhbHMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkVudW1MaXRlcmFsIiBlY29yZUVudW1MaXRlcmFsPSJSb2JvdE1MLmVjb3JlIy8vU2VydmljZUZsb3dLaW5kL3Byb3ZpZGVkIi8+CisgICAgICA8Z2VuRW51bUxpdGVyYWxzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5FbnVtTGl0ZXJhbCIgZWNvcmVFbnVtTGl0ZXJhbD0iUm9ib3RNTC5lY29yZSMvL1NlcnZpY2VGbG93S2luZC9yZXF1aXJlZCIvPgorICAgIDwvZ2VuRW51bXM+CisgICAgPGdlbkVudW1zIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5FbnVtIiB0eXBlU2FmZUVudW1Db21wYXRpYmxlPSJmYWxzZSIgZWNvcmVFbnVtPSJSb2JvdE1MLmVjb3JlIy8vVUdWS2luZCI+CisgICAgICA8Z2VuRW51bUxpdGVyYWxzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5FbnVtTGl0ZXJhbCIgZWNvcmVFbnVtTGl0ZXJhbD0iUm9ib3RNTC5lY29yZSMvL1VHVktpbmQvZGlmZmVyZW50aWFsIi8+CisgICAgICA8Z2VuRW51bUxpdGVyYWxzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5FbnVtTGl0ZXJhbCIgZWNvcmVFbnVtTGl0ZXJhbD0iUm9ib3RNTC5lY29yZSMvL1VHVktpbmQvY2FyIi8+CisgICAgPC9nZW5FbnVtcz4KKyAgICA8Z2VuRW51bXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkVudW0iIHR5cGVTYWZlRW51bUNvbXBhdGlibGU9ImZhbHNlIiBlY29yZUVudW09IlJvYm90TUwuZWNvcmUjLy9Sb2JvdGljTWlkZGxld2FyZUtpbmQiPgorICAgICAgPGdlbkVudW1MaXRlcmFscyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRW51bUxpdGVyYWwiIGVjb3JlRW51bUxpdGVyYWw9IlJvYm90TUwuZWNvcmUjLy9Sb2JvdGljTWlkZGxld2FyZUtpbmQvUlRNYXBzIi8+CisgICAgICA8Z2VuRW51bUxpdGVyYWxzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5FbnVtTGl0ZXJhbCIgZWNvcmVFbnVtTGl0ZXJhbD0iUm9ib3RNTC5lY29yZSMvL1JvYm90aWNNaWRkbGV3YXJlS2luZC9BUk9DQU0iLz4KKyAgICAgIDxnZW5FbnVtTGl0ZXJhbHMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkVudW1MaXRlcmFsIiBlY29yZUVudW1MaXRlcmFsPSJSb2JvdE1MLmVjb3JlIy8vUm9ib3RpY01pZGRsZXdhcmVLaW5kL1JPUyIvPgorICAgICAgPGdlbkVudW1MaXRlcmFscyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRW51bUxpdGVyYWwiIGVjb3JlRW51bUxpdGVyYWw9IlJvYm90TUwuZWNvcmUjLy9Sb2JvdGljTWlkZGxld2FyZUtpbmQvT1JPQ09TIi8+CisgICAgICA8Z2VuRW51bUxpdGVyYWxzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5FbnVtTGl0ZXJhbCIgZWNvcmVFbnVtTGl0ZXJhbD0iUm9ib3RNTC5lY29yZSMvL1JvYm90aWNNaWRkbGV3YXJlS2luZC9VUkJJIi8+CisgICAgPC9nZW5FbnVtcz4KKyAgICA8Z2VuRW51bXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkVudW0iIHR5cGVTYWZlRW51bUNvbXBhdGlibGU9ImZhbHNlIiBlY29yZUVudW09IlJvYm90TUwuZWNvcmUjLy9TaGFkZSI+CisgICAgICA8Z2VuRW51bUxpdGVyYWxzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5FbnVtTGl0ZXJhbCIgZWNvcmVFbnVtTGl0ZXJhbD0iUm9ib3RNTC5lY29yZSMvL1NoYWRlL1dJUkVGUkFNRSIvPgorICAgICAgPGdlbkVudW1MaXRlcmFscyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRW51bUxpdGVyYWwiIGVjb3JlRW51bUxpdGVyYWw9IlJvYm90TUwuZWNvcmUjLy9TaGFkZS9CT1VOREJPWCIvPgorICAgICAgPGdlbkVudW1MaXRlcmFscyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRW51bUxpdGVyYWwiIGVjb3JlRW51bUxpdGVyYWw9IlJvYm90TUwuZWNvcmUjLy9TaGFkZS9TT0xJRCIvPgorICAgICAgPGdlbkVudW1MaXRlcmFscyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRW51bUxpdGVyYWwiIGVjb3JlRW51bUxpdGVyYWw9IlJvYm90TUwuZWNvcmUjLy9TaGFkZS9URVhUVVJFRCIvPgorICAgIDwvZ2VuRW51bXM+CisgICAgPGdlbkVudW1zIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5FbnVtIiB0eXBlU2FmZUVudW1Db21wYXRpYmxlPSJmYWxzZSIgZWNvcmVFbnVtPSJSb2JvdE1MLmVjb3JlIy8vTW9iaWxlUm9ib3RLaW5kIj4KKyAgICAgIDxnZW5FbnVtTGl0ZXJhbHMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkVudW1MaXRlcmFsIiBlY29yZUVudW1MaXRlcmFsPSJSb2JvdE1MLmVjb3JlIy8vTW9iaWxlUm9ib3RLaW5kL0FpclZlaGljbGUiLz4KKyAgICAgIDxnZW5FbnVtTGl0ZXJhbHMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkVudW1MaXRlcmFsIiBlY29yZUVudW1MaXRlcmFsPSJSb2JvdE1MLmVjb3JlIy8vTW9iaWxlUm9ib3RLaW5kL0h5YnJpZFZlaGljbGUiLz4KKyAgICAgIDxnZW5FbnVtTGl0ZXJhbHMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkVudW1MaXRlcmFsIiBlY29yZUVudW1MaXRlcmFsPSJSb2JvdE1MLmVjb3JlIy8vTW9iaWxlUm9ib3RLaW5kL1N1cmZhY2VWZWhpY2xlIi8+CisgICAgICA8Z2VuRW51bUxpdGVyYWxzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5FbnVtTGl0ZXJhbCIgZWNvcmVFbnVtTGl0ZXJhbD0iUm9ib3RNTC5lY29yZSMvL01vYmlsZVJvYm90S2luZC9VbmRlcndhdGVyVmVoaWNsZSIvPgorICAgICAgPGdlbkVudW1MaXRlcmFscyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRW51bUxpdGVyYWwiIGVjb3JlRW51bUxpdGVyYWw9IlJvYm90TUwuZWNvcmUjLy9Nb2JpbGVSb2JvdEtpbmQvQ2FyTGlrZVZlaGljbGUiLz4KKyAgICAgIDxnZW5FbnVtTGl0ZXJhbHMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkVudW1MaXRlcmFsIiBlY29yZUVudW1MaXRlcmFsPSJSb2JvdE1MLmVjb3JlIy8vTW9iaWxlUm9ib3RLaW5kL0RpZmZlcmVudGlhbFZlaGljbGUiLz4KKyAgICAgIDxnZW5FbnVtTGl0ZXJhbHMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkVudW1MaXRlcmFsIiBlY29yZUVudW1MaXRlcmFsPSJSb2JvdE1MLmVjb3JlIy8vTW9iaWxlUm9ib3RLaW5kL0xlZ2dlZFZlaGljbGUiLz4KKyAgICA8L2dlbkVudW1zPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL1RyYW5zaXRpb24iPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBub3RpZnk9ImZhbHNlIiBjcmVhdGVDaGlsZD0iZmFsc2UiCisgICAgICAgICAgcHJvcGVydHlTb3J0Q2hvaWNlcz0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUwuZWNvcmUjLy9UcmFuc2l0aW9uL2Jhc2VfVHJhbnNpdGlvbiIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBub3RpZnk9ImZhbHNlIiBjcmVhdGVDaGlsZD0iZmFsc2UiCisgICAgICAgICAgcHJvcGVydHlTb3J0Q2hvaWNlcz0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUwuZWNvcmUjLy9UcmFuc2l0aW9uL2d1YXJkIi8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIG5vdGlmeT0iZmFsc2UiIGNyZWF0ZUNoaWxkPSJmYWxzZSIKKyAgICAgICAgICBwcm9wZXJ0eVNvcnRDaG9pY2VzPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTC5lY29yZSMvL1RyYW5zaXRpb24vZWZmZWN0Ii8+CisgICAgPC9nZW5DbGFzc2VzPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL0FsZ29yaXRobSI+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIG5vdGlmeT0iZmFsc2UiIGNyZWF0ZUNoaWxkPSJmYWxzZSIKKyAgICAgICAgICBwcm9wZXJ0eVNvcnRDaG9pY2VzPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTC5lY29yZSMvL0FsZ29yaXRobS9iYXNlX09wZXJhdGlvbiIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vQWxnb3JpdGhtL2lzRXh0ZXJuYWwiLz4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTC5lY29yZSMvL0FsZ29yaXRobS9leHRGdW5jdGlvbk5hbWUiLz4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTC5lY29yZSMvL0FsZ29yaXRobS9saWJQYXRoIi8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9BbGdvcml0aG0vbGliRmlsZUZvcm1hdCIvPgorICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9TdGF0ZSI+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIG5vdGlmeT0iZmFsc2UiIGNyZWF0ZUNoaWxkPSJmYWxzZSIKKyAgICAgICAgICBwcm9wZXJ0eVNvcnRDaG9pY2VzPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTC5lY29yZSMvL1N0YXRlL2Jhc2VfU3RhdGUiLz4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgbm90aWZ5PSJmYWxzZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIgorICAgICAgICAgIHByb3BlcnR5U29ydENob2ljZXM9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MLmVjb3JlIy8vU3RhdGUvYmVoYXZpb3IiLz4KKyAgICA8L2dlbkNsYXNzZXM+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vQWN0dWF0ZWRKb2ludCIvPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL0pvaW50Ij4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgbm90aWZ5PSJmYWxzZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIgorICAgICAgICAgIHByb3BlcnR5U29ydENob2ljZXM9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MLmVjb3JlIy8vSm9pbnQvYmFzZV9Db25uZWN0b3IiLz4KKyAgICA8L2dlbkNsYXNzZXM+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vQ29tcGxldGVCb25kaW5nIi8+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vUm9ib3QiPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vUm9ib3Qvd2lkdGgiLz4KKyAgICA8L2dlbkNsYXNzZXM+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vU3lzdGVtIj4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgbm90aWZ5PSJmYWxzZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIgorICAgICAgICAgIHByb3BlcnR5U29ydENob2ljZXM9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MLmVjb3JlIy8vU3lzdGVtL2Jhc2VfQ2xhc3MiLz4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTC5lY29yZSMvL1N5c3RlbS9uYXRpdmUiLz4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTC5lY29yZSMvL1N5c3RlbS9saWJyYXJ5UGF0aCIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vU3lzdGVtL2xpYnJhcnlDb21wb25lbnROYW1lIi8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9TeXN0ZW0vYWxpYXMiLz4KKyAgICA8L2dlbkNsYXNzZXM+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vQWdlbnQiLz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9QaHlzaWNhbE9iamVjdCI+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9QaHlzaWNhbE9iamVjdC9oZWlnaHQiLz4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTC5lY29yZSMvL1BoeXNpY2FsT2JqZWN0L21hc3MiLz4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgbm90aWZ5PSJmYWxzZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIgorICAgICAgICAgIHByb3BlcnR5U29ydENob2ljZXM9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MLmVjb3JlIy8vUGh5c2ljYWxPYmplY3QvYmFzZV9DbGFzcyIvPgorICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9EYXRhRmxvd1BvcnQiPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vRGF0YUZsb3dQb3J0L2RpcmVjdGlvbiIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vRGF0YUZsb3dQb3J0L2J1ZmZlclNpemUiLz4KKyAgICA8L2dlbkNsYXNzZXM+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBpbWFnZT0iZmFsc2UiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9Qb3J0Ij4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgbm90aWZ5PSJmYWxzZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIgorICAgICAgICAgIHByb3BlcnR5U29ydENob2ljZXM9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MLmVjb3JlIy8vUG9ydC9iYXNlX1BvcnQiLz4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTC5lY29yZSMvL1BvcnQvc3luY2hyb25pemF0aW9uUG9saWN5Ii8+CisgICAgPC9nZW5DbGFzc2VzPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL1NlcnZpY2VQb3J0Ij4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTC5lY29yZSMvL1NlcnZpY2VQb3J0L2tpbmQiLz4KKyAgICA8L2dlbkNsYXNzZXM+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vQWN0dWF0b3JTeXN0ZW0iLz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9Sb2JvdGljU3lzdGVtIj4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTC5lY29yZSMvL1JvYm90aWNTeXN0ZW0vbG9jYWxQb3NpdGlvbiIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MLmVjb3JlIy8vUm9ib3RpY1N5c3RlbS9sb2NhbE9yaWVudGF0aW9uIi8+CisgICAgPC9nZW5DbGFzc2VzPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL0N5YmVyUGh5c2ljYWxTeXN0ZW0iLz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9TZW5zb3JTeXN0ZW0iPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vU2Vuc29yU3lzdGVtL2ZyZXF1ZW5jeSIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vU2Vuc29yU3lzdGVtL2lkZW50aWZpZXIiLz4KKyAgICA8L2dlbkNsYXNzZXM+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vSGFyZHdhcmUiLz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9Tb2Z0d2FyZSI+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9Tb2Z0d2FyZS9pc1BlcmlvZGljIi8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9Tb2Z0d2FyZS9wZXJpb2QiLz4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTC5lY29yZSMvL1NvZnR3YXJlL3ByaW9yaXR5Ii8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9Tb2Z0d2FyZS9kZWFkbGluZSIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vU29mdHdhcmUvd2NldCIvPgorICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9FbmdpbmVTeXN0ZW0iPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vRW5naW5lU3lzdGVtL3ZlaGljbGVUcmFjdGlvbiIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vRW5naW5lU3lzdGVtL21heEVuZ2luZUZvcmNlIi8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9FbmdpbmVTeXN0ZW0vbWF4QnJlYWtpbmdGb3JjZSIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vRW5naW5lU3lzdGVtL21heEFsbG93ZWRTdGVlcmluZyIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vRW5naW5lU3lzdGVtL21heEFsbG93ZWRWZWxvY2l0eSIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vRW5naW5lU3lzdGVtL2dlYXJfcmF0aW9uIi8+CisgICAgPC9nZW5DbGFzc2VzPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL1N0ZWVyZWRXaGVlbFN5c3RlbSI+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9TdGVlcmVkV2hlZWxTeXN0ZW0vd2hlZWxSYWRpdXMiLz4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTC5lY29yZSMvL1N0ZWVyZWRXaGVlbFN5c3RlbS93aGVlbFdpZHRoIi8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9TdGVlcmVkV2hlZWxTeXN0ZW0vc3VzcGVuc2lvblJlc3RMZW5ndGgiLz4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTC5lY29yZSMvL1N0ZWVyZWRXaGVlbFN5c3RlbS93aGVlbENvbm5lY3Rpb25IZWlnaHQiLz4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTC5lY29yZSMvL1N0ZWVyZWRXaGVlbFN5c3RlbS90eXBlT2ZXaGVlbCIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vU3RlZXJlZFdoZWVsU3lzdGVtL3doZWVsVmVsb2NpdHlQSURrcCIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vU3RlZXJlZFdoZWVsU3lzdGVtL3doZWVsVmVsb2NpdHlQSURraSIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vU3RlZXJlZFdoZWVsU3lzdGVtL3doZWVsVmVsb2NpdHlQSURrZCIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vU3RlZXJlZFdoZWVsU3lzdGVtL3doZWVsU3RlZXJpbmdQSURrcCIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vU3RlZXJlZFdoZWVsU3lzdGVtL3doZWVsU3RlZXJpbmdQSURrZCIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vU3RlZXJlZFdoZWVsU3lzdGVtL3doZWVsRnJpY3Rpb24iLz4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTC5lY29yZSMvL1N0ZWVyZWRXaGVlbFN5c3RlbS9zdXNwZW5zaW9uU3RpZmZuZXNzIi8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9TdGVlcmVkV2hlZWxTeXN0ZW0vc3VzcGVuc2lvbkRhbXBpbmciLz4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTC5lY29yZSMvL1N0ZWVyZWRXaGVlbFN5c3RlbS9zdXNwZW5zaW9uQ29tcHJlc3Npb24iLz4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTC5lY29yZSMvL1N0ZWVyZWRXaGVlbFN5c3RlbS93aGVlbFZlbG9jaXR5UElEbWF4U3VtIi8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9TdGVlcmVkV2hlZWxTeXN0ZW0vd2hlZWxWZWxvY2l0eVBJRG1heFZhbCIvPgorICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9Mb2NvbW90aW9uU3lzdGVtIi8+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vSW1hZ2VTZW5zb3JTeXN0ZW0iLz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9DYW1lcmFTeXN0ZW0iPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vQ2FtZXJhU3lzdGVtL3dpZHRoIi8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9DYW1lcmFTeXN0ZW0vaGVpZ2h0Ii8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9DYW1lcmFTeXN0ZW0vYWxwaGFfdSIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vQ2FtZXJhU3lzdGVtL2FscGhhX3YiLz4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTC5lY29yZSMvL0NhbWVyYVN5c3RlbS91MCIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vQ2FtZXJhU3lzdGVtL3YwIi8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9DYW1lcmFTeXN0ZW0vY29sb3JfZm9ybWF0Ii8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUwuZWNvcmUjLy9DYW1lcmFTeXN0ZW0vdHJhbnNsYXRlIi8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUwuZWNvcmUjLy9DYW1lcmFTeXN0ZW0vcm90YXRlIi8+CisgICAgPC9nZW5DbGFzc2VzPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbSIvPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtIi8+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vTGlkYXJTeXN0ZW0iPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vTGlkYXJTeXN0ZW0vbmJMYXllcnMiLz4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTC5lY29yZSMvL0xpZGFyU3lzdGVtL2xheWVyQW5nbGVNaW4iLz4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTC5lY29yZSMvL0xpZGFyU3lzdGVtL2xheWVyQW5nbGVTdGVwIi8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9MaWRhclN5c3RlbS9ub2lzZSIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vTGlkYXJTeXN0ZW0vc2lnbWFOb2lzZSIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vTGlkYXJTeXN0ZW0vYW5nbGVfbWluIi8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9MaWRhclN5c3RlbS9hbmdsZV9tYXgiLz4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTC5lY29yZSMvL0xpZGFyU3lzdGVtL3RpbWVfaW5jcmVtZW50Ii8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9MaWRhclN5c3RlbS9zY2FuX3RpbWUiLz4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTC5lY29yZSMvL0xpZGFyU3lzdGVtL3JhbmdlX21pbiIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vTGlkYXJTeXN0ZW0vcmFuZ2VfbWF4Ii8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9MaWRhclN5c3RlbS9uYlJheXMiLz4KKyAgICA8L2dlbkNsYXNzZXM+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtIi8+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vR1BTU3lzdGVtIj4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTC5lY29yZSMvL0dQU1N5c3RlbS9vcmlnaW5Qb3NpdGlvbiIvPgorICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9BbGdvcml0aG1MaWJyYXJ5Ij4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgbm90aWZ5PSJmYWxzZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIgorICAgICAgICAgIHByb3BlcnR5U29ydENob2ljZXM9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MLmVjb3JlIy8vQWxnb3JpdGhtTGlicmFyeS9iYXNlX0NsYXNzIi8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9BbGdvcml0aG1MaWJyYXJ5L3BhdGgiLz4KKyAgICA8L2dlbkNsYXNzZXM+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vU2Vuc29yRHJpdmVyIi8+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vRW52aXJvbm1lbnQiPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBub3RpZnk9ImZhbHNlIiBjcmVhdGVDaGlsZD0iZmFsc2UiCisgICAgICAgICAgcHJvcGVydHlTb3J0Q2hvaWNlcz0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUwuZWNvcmUjLy9FbnZpcm9ubWVudC9iYXNlX0NsYXNzIi8+CisgICAgPC9nZW5DbGFzc2VzPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL0J1aWxkaW5nIi8+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vU3VyZmFjZSIvPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL1BsYW5ldCIvPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL0xhbmRTdXJmYWNlIi8+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBpbWFnZT0iZmFsc2UiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9Hcm91bmQiLz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9GbG9vciIvPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL1dhdGVyU3VyZmFjZSIvPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL0h1bWFuIi8+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vUGVkZXN0cmlhbiIvPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL1N0YWlycyIvPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL1BsYXRmb3JtIj4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgbm90aWZ5PSJmYWxzZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIgorICAgICAgICAgIHByb3BlcnR5U29ydENob2ljZXM9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MLmVjb3JlIy8vUGxhdGZvcm0vYmFzZV9Ob2RlIi8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIG5vdGlmeT0iZmFsc2UiIGNyZWF0ZUNoaWxkPSJmYWxzZSIKKyAgICAgICAgICBwcm9wZXJ0eVNvcnRDaG9pY2VzPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTC5lY29yZSMvL1BsYXRmb3JtL2xpYnJhcnkiLz4KKyAgICA8L2dlbkNsYXNzZXM+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vRXh0ZXJuYWxMaWJyYXJ5Ij4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTC5lY29yZSMvL0V4dGVybmFsTGlicmFyeS9saWJQYXRoIi8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9FeHRlcm5hbExpYnJhcnkvbGliRmlsZUZvcm1hdCIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBub3RpZnk9ImZhbHNlIiBjcmVhdGVDaGlsZD0iZmFsc2UiCisgICAgICAgICAgcHJvcGVydHlTb3J0Q2hvaWNlcz0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUwuZWNvcmUjLy9FeHRlcm5hbExpYnJhcnkvYmFzZV9JbnRlcmZhY2UiLz4KKyAgICA8L2dlbkNsYXNzZXM+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vUm9ib3RpY01pZGRsZXdhcmUiPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vUm9ib3RpY01pZGRsZXdhcmUva2luZCIvPgorICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9Sb2JvdGljU2ltdWxhdG9yIi8+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vQ3ljYWJUSyI+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9DeWNhYlRLL3VzZVJlYWxUaW1lIi8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9DeWNhYlRLL3RpbWVTdGVwIi8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9DeWNhYlRLL3RpbWVGYWN0b3IiLz4KKyAgICA8L2dlbkNsYXNzZXM+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vQmxlbmRlck1vcnNlIj4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTC5lY29yZSMvL0JsZW5kZXJNb3JzZS9kZWJ1Z01vZGUiLz4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTC5lY29yZSMvL0JsZW5kZXJNb3JzZS9kZWJ1Z0Rpc3BsYXkiLz4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTC5lY29yZSMvL0JsZW5kZXJNb3JzZS9ncmF2aXR5Ii8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUwuZWNvcmUjLy9CbGVuZGVyTW9yc2UvX3ZpZXdwb3J0X3NoYWRlIi8+CisgICAgPC9nZW5DbGFzc2VzPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL09uUG9ydCI+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIG5vdGlmeT0iZmFsc2UiIGNyZWF0ZUNoaWxkPSJmYWxzZSIKKyAgICAgICAgICBwcm9wZXJ0eVNvcnRDaG9pY2VzPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTC5lY29yZSMvL09uUG9ydC9wb3J0Ii8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIG5vdGlmeT0iZmFsc2UiIGNyZWF0ZUNoaWxkPSJmYWxzZSIKKyAgICAgICAgICBwcm9wZXJ0eVNvcnRDaG9pY2VzPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTC5lY29yZSMvL09uUG9ydC9iYXNlX1BhcmFtZXRlciIvPgorICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9BbGxvY2F0ZSI+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIG5vdGlmeT0iZmFsc2UiIGNyZWF0ZUNoaWxkPSJmYWxzZSIKKyAgICAgICAgICBwcm9wZXJ0eVNvcnRDaG9pY2VzPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTC5lY29yZSMvL0FsbG9jYXRlL2Jhc2VfQWJzdHJhY3Rpb24iLz4KKyAgICA8L2dlbkNsYXNzZXM+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0iLz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9JbmVydGlhbE5hdmlnYXRpb25TeXN0ZW0iLz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9PZG9tZXRyeVN5c3RlbSIvPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL0luZnJhUmVkUHJveGltZXRyeVN5c3RlbSIvPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL0RlcGxveW1lbnRQbGFuIj4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgbm90aWZ5PSJmYWxzZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIgorICAgICAgICAgIHByb3BlcnR5U29ydENob2ljZXM9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MLmVjb3JlIy8vRGVwbG95bWVudFBsYW4vYmFzZV9QYWNrYWdlIi8+CisgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIG5vdGlmeT0iZmFsc2UiIGNyZWF0ZUNoaWxkPSJmYWxzZSIKKyAgICAgICAgICBwcm9wZXJ0eVNvcnRDaG9pY2VzPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTC5lY29yZSMvL0RlcGxveW1lbnRQbGFuL21haW5JbnN0YW5jZSIvPgorICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9HeXJvc2NvcGUiLz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9PblZhcmlhYmxlIj4KKyAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgbm90aWZ5PSJmYWxzZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIgorICAgICAgICAgIHByb3BlcnR5U29ydENob2ljZXM9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MLmVjb3JlIy8vT25WYXJpYWJsZS9wcm9wZXJ0eSIvPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBub3RpZnk9ImZhbHNlIiBjcmVhdGVDaGlsZD0iZmFsc2UiCisgICAgICAgICAgcHJvcGVydHlTb3J0Q2hvaWNlcz0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUwuZWNvcmUjLy9PblZhcmlhYmxlL2Jhc2VfUGFyYW1ldGVyIi8+CisgICAgPC9nZW5DbGFzc2VzPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL0NoYXNzaXMiLz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9TdXBwb3J0aW5nU3RydWN0dXJlIi8+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vTWVjaGFuaWNhbExpbmthZ2UiLz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9MZWciLz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9Mb2NvbW90aW9uSGFyZHdhcmUiLz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9BY3R1YXRvckhhcmR3YXJlIi8+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vTW9iaWxlUm9ib3QiPgorICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MLmVjb3JlIy8vTW9iaWxlUm9ib3Qva2luZCIvPgorICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9NYW5pcHVsYXRvciIvPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL1BpbG90ZWRTeXN0ZW0iLz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9Qb3dlckhhcmR3YXJlIi8+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vU2Vuc29ySGFyZHdhcmUiLz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9HcmFzcGluZ0hhcmR3YXJlIi8+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vU3RlZXJlZFdoZWVsSGFyZHdhcmUiLz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9Bcm0iLz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9MZWdTeXN0ZW0iLz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9HcmFzcGluZ1N5c3RlbSIvPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL1dlYXBvblN5c3RlbSIvPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL01hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0iLz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9DbG9zZWRMb29wQ29udHJvbFN5c3RlbSIvPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL09wZW5Mb29wQ29udHJvbFN5c3RlbSIvPgorICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTC5lY29yZSMvL1JvYm90aWNIZWFkIi8+CisgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MLmVjb3JlIy8vTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0iLz4KKyAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUwuZWNvcmUjLy9Kb3lzdGljTmF2aWdhdGlvblN5c3RlbSIvPgorICA8L2dlblBhY2thZ2VzPgorICA8Z2VuUGFja2FnZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlblBhY2thZ2UiIHByZWZpeD0iUm9ib3RNTExpYnJhcmllcyIgYmFzZVBhY2thZ2U9Im9yZy5lY2xpcHNlLnBhcHlydXMiCisgICAgICBkaXNwb3NhYmxlUHJvdmlkZXJGYWN0b3J5PSJ0cnVlIiBlY29yZVBhY2thZ2U9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLyI+CisgICAgPG5lc3RlZEdlblBhY2thZ2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5QYWNrYWdlIiBwcmVmaXg9IlJvYm90TUxfTW9kZWxMaWJyYXJ5IgorICAgICAgICBiYXNlUGFja2FnZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzIiBkaXNwb3NhYmxlUHJvdmlkZXJGYWN0b3J5PSJ0cnVlIgorICAgICAgICBlY29yZVBhY2thZ2U9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeSI+CisgICAgICA8bmVzdGVkR2VuUGFja2FnZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlblBhY2thZ2UiIHByZWZpeD0iUm9ib3RNTF9EYXRhVHlwZXMiCisgICAgICAgICAgYmFzZVBhY2thZ2U9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeSIKKyAgICAgICAgICBkaXNwb3NhYmxlUHJvdmlkZXJGYWN0b3J5PSJ0cnVlIiBlY29yZVBhY2thZ2U9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcyI+CisgICAgICAgIDxuZXN0ZWRHZW5QYWNrYWdlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuUGFja2FnZSIgcHJlZml4PSJEaWFnbm9zdGljX2RhdGF0eXBlcyIKKyAgICAgICAgICAgIGJhc2VQYWNrYWdlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMiCisgICAgICAgICAgICBkaXNwb3NhYmxlUHJvdmlkZXJGYWN0b3J5PSJ0cnVlIiBlY29yZVBhY2thZ2U9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcyI+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY0FycmF5Ij4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNBcnJheS9oZWFkZXIiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNBcnJheS9zdGF0dXMiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNBcnJheS92YWx1ZXMiLz4KKyAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY1N0YXR1cyI+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljU3RhdHVzL09LIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljU3RhdHVzL1dBUk4iLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNTdGF0dXMvRVJST1IiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNTdGF0dXMvbGV2ZWwiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNTdGF0dXMvbmFtZSIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY1N0YXR1cy9tZXNzYWdlIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljU3RhdHVzL2hhcmR3YXJlX2lkIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljU3RhdHVzL3ZhbHVlcyIvPgorICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9LZXlWYWx1ZSI+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9LZXlWYWx1ZS9rZXkiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0tleVZhbHVlL3ZhbHVlIi8+CisgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICA8L25lc3RlZEdlblBhY2thZ2VzPgorICAgICAgICA8bmVzdGVkR2VuUGFja2FnZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlblBhY2thZ2UiIHByZWZpeD0iR2VvbWV0cnlfZGF0YXR5cGVzIgorICAgICAgICAgICAgYmFzZVBhY2thZ2U9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcyIKKyAgICAgICAgICAgIGRpc3Bvc2FibGVQcm92aWRlckZhY3Rvcnk9InRydWUiIGVjb3JlUGFja2FnZT0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcyI+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1BvaW50Ij4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb2ludC94Ii8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9pbnQveSIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1BvaW50L3oiLz4KKyAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1BvaW50MzIiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1BvaW50MzIveCIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1BvaW50MzIveSIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1BvaW50MzIveiIvPgorICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9pbnRTdGFtcGVkIj4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb2ludFN0YW1wZWQvaGVhZGVyIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9pbnRTdGFtcGVkL3BvaW50Ii8+CisgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb2x5Z29uIj4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb2x5Z29uL3BvaW50Ii8+CisgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb2x5Z29uU3RhbXBlZCI+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9seWdvblN0YW1wZWQvaGVhZGVyIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9seWdvblN0YW1wZWQvcG9seWdvbiIvPgorICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvVmVjdG9yMyI+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvVmVjdG9yMy94Ii8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvVmVjdG9yMy95Ii8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvVmVjdG9yMy96Ii8+CisgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9WZWN0b3IzU3RhbXBlZCI+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvVmVjdG9yM1N0YW1wZWQvaGVhZGVyIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvVmVjdG9yM1N0YW1wZWQvdmVjdG9yIi8+CisgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9RdWF0ZXJuaW9uIj4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9RdWF0ZXJuaW9uL3giLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9RdWF0ZXJuaW9uL3kiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9RdWF0ZXJuaW9uL3oiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9RdWF0ZXJuaW9uL3ciLz4KKyAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1Bvc2UiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1Bvc2UvcG9zaXRpb24iLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb3NlL29yaWVudGF0aW9uIi8+CisgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb3NlU3RhbXBlZCI+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9zZVN0YW1wZWQvaGVhZGVyIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9zZVN0YW1wZWQvcG9zZSIvPgorICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvVHdpc3RXaXRoQ292YXJpYW5jZSI+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvVHdpc3RXaXRoQ292YXJpYW5jZS90d2lzdCIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1R3aXN0V2l0aENvdmFyaWFuY2UvY292YXJpYW5jZSIvPgorICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvVHdpc3QiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1R3aXN0L2xpbmVhciIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1R3aXN0L2FuZ3VsYXIiLz4KKyAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1R3aXN0U3RhbXBlZCI+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvVHdpc3RTdGFtcGVkL2hlYWRlciIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1R3aXN0U3RhbXBlZC90d2lzdCIvPgorICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9zZVdpdGhDb3ZhcmlhbmNlIj4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb3NlV2l0aENvdmFyaWFuY2UvcG9zZSIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1Bvc2VXaXRoQ292YXJpYW5jZS9jb3ZhcmlhbmNlIi8+CisgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb3NlMkQiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1Bvc2UyRC94Ii8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9zZTJEL3kiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb3NlMkQvdGhldGEiLz4KKyAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1Bvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWQiLz4KKyAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9zZUFycmF5Ij4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb3NlQXJyYXkvaGVhZGVyIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9zZUFycmF5L3Bvc2VzIi8+CisgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9RdWF0ZXJuaW9uU3RhbXBlZCI+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUXVhdGVybmlvblN0YW1wZWQvaGVhZGVyIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUXVhdGVybmlvblN0YW1wZWQvcXVhdGVybmlvbiIvPgorICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvVHJhbnNmb3JtIj4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9UcmFuc2Zvcm0vdHJhbnNsYXRpb24iLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9UcmFuc2Zvcm0vcm90YXRpb24iLz4KKyAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1dyZW5jaFN0YW1wZWQiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1dyZW5jaFN0YW1wZWQvaGVhZGVyIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvV3JlbmNoU3RhbXBlZC93cmVuY2giLz4KKyAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1dyZW5jaCI+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvV3JlbmNoL2ZvcmNlIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvV3JlbmNoL3RvcnF1ZSIvPgorICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgPC9uZXN0ZWRHZW5QYWNrYWdlcz4KKyAgICAgICAgPG5lc3RlZEdlblBhY2thZ2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5QYWNrYWdlIiBwcmVmaXg9Ik5hdl9kYXRhdHlwZXMiIGJhc2VQYWNrYWdlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMiCisgICAgICAgICAgICBkaXNwb3NhYmxlUHJvdmlkZXJGYWN0b3J5PSJ0cnVlIiBlY29yZVBhY2thZ2U9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzIj4KKyAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL1BhdGgiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9QYXRoL2hlYWRlciIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9QYXRoL3Bvc2VzIi8+CisgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvT2RvbWV0cnkiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9PZG9tZXRyeS9oZWFkZXIiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvT2RvbWV0cnkvY2hpbGRfZnJhbWVfaWQiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvT2RvbWV0cnkvcG9zZSIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9PZG9tZXRyeS90d2lzdCIvPgorICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL01hcE1ldGFEYXRhIj4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTWFwTWV0YURhdGEvbWFwX2xvYWRfdGltZSIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9NYXBNZXRhRGF0YS9yZXNvbHV0aW9uIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL01hcE1ldGFEYXRhL3dpZHRoIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL01hcE1ldGFEYXRhL29yaWdpbiIvPgorICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL09jY3VwYW5jeUdyaWQiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9PY2N1cGFuY3lHcmlkL2hlYWRlciIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9PY2N1cGFuY3lHcmlkL2luZm8iLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvT2NjdXBhbmN5R3JpZC9kYXRhIi8+CisgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvR3JpZENlbGxzIj4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvR3JpZENlbGxzL2hlYWRlciIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9HcmlkQ2VsbHMvY2VsbF93aWR0aCIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9HcmlkQ2VsbHMvY2VsbF9oZWlnaHQiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvR3JpZENlbGxzL2NlbGxzIi8+CisgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICA8L25lc3RlZEdlblBhY2thZ2VzPgorICAgICAgICA8bmVzdGVkR2VuUGFja2FnZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlblBhY2thZ2UiIHByZWZpeD0iU2Vuc29yX2RhdGF0eXBlcyIKKyAgICAgICAgICAgIGJhc2VQYWNrYWdlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMiCisgICAgICAgICAgICBkaXNwb3NhYmxlUHJvdmlkZXJGYWN0b3J5PSJ0cnVlIiBlY29yZVBhY2thZ2U9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzIj4KKyAgICAgICAgICA8Z2VuRW51bXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkVudW0iIHR5cGVTYWZlRW51bUNvbXBhdGlibGU9ImZhbHNlIiBlY29yZUVudW09IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NUQVRVU19UWVBFIj4KKyAgICAgICAgICAgIDxnZW5FbnVtTGl0ZXJhbHMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkVudW1MaXRlcmFsIiBlY29yZUVudW1MaXRlcmFsPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TVEFUVVNfVFlQRS9TVEFUVVNfTk9fRklYIi8+CisgICAgICAgICAgICA8Z2VuRW51bUxpdGVyYWxzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5FbnVtTGl0ZXJhbCIgZWNvcmVFbnVtTGl0ZXJhbD0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU1RBVFVTX1RZUEUvU1RBVFVTX0ZJWCIvPgorICAgICAgICAgICAgPGdlbkVudW1MaXRlcmFscyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRW51bUxpdGVyYWwiIGVjb3JlRW51bUxpdGVyYWw9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NUQVRVU19UWVBFL1NUQVRVU19TQkFTX0ZJWCIvPgorICAgICAgICAgICAgPGdlbkVudW1MaXRlcmFscyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRW51bUxpdGVyYWwiIGVjb3JlRW51bUxpdGVyYWw9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NUQVRVU19UWVBFL1NUQVRVU19HQkFTX0ZJWCIvPgorICAgICAgICAgIDwvZ2VuRW51bXM+CisgICAgICAgICAgPGdlbkVudW1zIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5FbnVtIiB0eXBlU2FmZUVudW1Db21wYXRpYmxlPSJmYWxzZSIgZWNvcmVFbnVtPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TRVJWSUNFX1RZUEUiPgorICAgICAgICAgICAgPGdlbkVudW1MaXRlcmFscyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRW51bUxpdGVyYWwiIGVjb3JlRW51bUxpdGVyYWw9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NFUlZJQ0VfVFlQRS9TRVJWSUNFX0dQUyIvPgorICAgICAgICAgICAgPGdlbkVudW1MaXRlcmFscyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRW51bUxpdGVyYWwiIGVjb3JlRW51bUxpdGVyYWw9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NFUlZJQ0VfVFlQRS9TRVJWSUNFX0dMT05BU1MiLz4KKyAgICAgICAgICAgIDxnZW5FbnVtTGl0ZXJhbHMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkVudW1MaXRlcmFsIiBlY29yZUVudW1MaXRlcmFsPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TRVJWSUNFX1RZUEUvU0VSVklDRV9DT01QQVNTIi8+CisgICAgICAgICAgICA8Z2VuRW51bUxpdGVyYWxzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5FbnVtTGl0ZXJhbCIgZWNvcmVFbnVtTGl0ZXJhbD0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU0VSVklDRV9UWVBFL1NFUlZJQ0VfR0FMSUxFTyIvPgorICAgICAgICAgIDwvZ2VuRW51bXM+CisgICAgICAgICAgPGdlbkVudW1zIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5FbnVtIiB0eXBlU2FmZUVudW1Db21wYXRpYmxlPSJmYWxzZSIgZWNvcmVFbnVtPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9DT1ZBUklBTkNFX1RZUEUiPgorICAgICAgICAgICAgPGdlbkVudW1MaXRlcmFscyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRW51bUxpdGVyYWwiIGVjb3JlRW51bUxpdGVyYWw9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0NPVkFSSUFOQ0VfVFlQRS9DT1ZBUklBTkNFX1RZUEVfVU5LTk9XTiIvPgorICAgICAgICAgICAgPGdlbkVudW1MaXRlcmFscyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRW51bUxpdGVyYWwiIGVjb3JlRW51bUxpdGVyYWw9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0NPVkFSSUFOQ0VfVFlQRS9DT1ZBUklBTkNFX1RZUEVfQVBQUk9YSU1BVEVEIi8+CisgICAgICAgICAgICA8Z2VuRW51bUxpdGVyYWxzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5FbnVtTGl0ZXJhbCIgZWNvcmVFbnVtTGl0ZXJhbD0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvQ09WQVJJQU5DRV9UWVBFL19DT1ZBUklBTkNFX1RZUEVfRElBR09OQUxfS05PV04iLz4KKyAgICAgICAgICAgIDxnZW5FbnVtTGl0ZXJhbHMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkVudW1MaXRlcmFsIiBlY29yZUVudW1MaXRlcmFsPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9DT1ZBUklBTkNFX1RZUEUvQ09WQVJJQU5DRV9UWVBFX0tOT1dOIi8+CisgICAgICAgICAgPC9nZW5FbnVtcz4KKyAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1JlZ2lvbk9mSW50ZXJlc3QiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9SZWdpb25PZkludGVyZXN0L3hfb2Zmc2V0Ii8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1JlZ2lvbk9mSW50ZXJlc3QveV9vZmZzZXQiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvUmVnaW9uT2ZJbnRlcmVzdC9oZWlnaHQiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvUmVnaW9uT2ZJbnRlcmVzdC9kb19yZWN0aWZ5Ii8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1JlZ2lvbk9mSW50ZXJlc3Qvd2lkdGgiLz4KKyAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9SYW5nZSI+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1JhbmdlL1VMVFJBU09VTkQiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvUmFuZ2UvSU5GUkFSRUQiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvUmFuZ2UvaGVhZGVyIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1JhbmdlL3JhZGlhdGlvbl90eXBlIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1JhbmdlL2ZpZWxkX29mX3ZpZXciLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvUmFuZ2UvbWluX3JhbmdlIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1JhbmdlL21heF9yYW5nZSIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9SYW5nZS9yYW5nZSIvPgorICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0NhbWVyYUluZm8iPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9DYW1lcmFJbmZvL2hlYWRlciIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9DYW1lcmFJbmZvL2hlaWdodCIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9DYW1lcmFJbmZvL3dpZHRoIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0NhbWVyYUluZm8vZGlzdG9yc2lvbl9tb2RlbCIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9DYW1lcmFJbmZvL0QiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvQ2FtZXJhSW5mby9LIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0NhbWVyYUluZm8vUiIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9DYW1lcmFJbmZvL1AiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvQ2FtZXJhSW5mby9iaW5uaW5nX3giLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvQ2FtZXJhSW5mby9iaW5uaW5nX3kiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvQ2FtZXJhSW5mby9yb2kiLz4KKyAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9JbXUiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9JbXUvaGVhZGVyIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0ltdS9vcmllbnRhdGlvbiIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9JbXUvb3JpZW50YXRpb25fY292YXJpYW5jZSIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9JbXUvYW5ndWxhcl92ZWxvY2l0eSIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9JbXUvYW5ndWxhcl92ZWxvY2l0eV9jb3ZhcmlhbmNlIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0ltdS9saW5lYXJfYWNjZWxlcmF0aW9uIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0ltdS9saW5lYXJfYWNjZWxlcmF0aW9uX2NvdmFyaWFuY2UiLz4KKyAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9MYXNlclNjYW4iPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9MYXNlclNjYW4vaGVhZGVyIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0xhc2VyU2Nhbi9hbmdsZV9taW4iLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvTGFzZXJTY2FuL2FuZ2xlX21heCIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9MYXNlclNjYW4vYW5nbGVfaW5jcmVtZW50Ii8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0xhc2VyU2Nhbi90aW1lX2luY3JlbWVudCIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9MYXNlclNjYW4vc2Nhbl90aW1lIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0xhc2VyU2Nhbi9yYW5nZV9taW4iLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvTGFzZXJTY2FuL3JhbmdlX21heCIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9MYXNlclNjYW4vcmFuZ2UiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvTGFzZXJTY2FuL2ludGVuc2l0aWVzIi8+CisgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvSW1hZ2UiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9JbWFnZS9oZWFkZXIiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvSW1hZ2UvaGVpZ2h0Ii8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0ltYWdlL3dpZHRoIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0ltYWdlL2VuY29kaW5nIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0ltYWdlL2lzX2JpZ2VuZGlhbiIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9JbWFnZS9zdGVwIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0ltYWdlL2RhdGEiLz4KKyAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9DaGFubmVsRmxvYXQzMiI+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0NoYW5uZWxGbG9hdDMyL25hbWUiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvQ2hhbm5lbEZsb2F0MzIvdmFsdWVzIi8+CisgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvQ29tcHJlc3NlZEltYWdlIj4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvQ29tcHJlc3NlZEltYWdlL2hlYWRlciIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Db21wcmVzc2VkSW1hZ2UvZm9ybWF0Ii8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0NvbXByZXNzZWRJbWFnZS9kYXRhIi8+CisgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvUG9pbnRDbG91ZCI+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1BvaW50Q2xvdWQvaGVhZGVyIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1BvaW50Q2xvdWQvcG9pbnRzIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1BvaW50Q2xvdWQvY2hhbm5lbHMiLz4KKyAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Qb2ludEZpZWxkIj4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvUG9pbnRGaWVsZC9uYW1lIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1BvaW50RmllbGQvb2Zmc2V0Ii8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1BvaW50RmllbGQvZGF0YXR5cGUiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvUG9pbnRGaWVsZC9jb3VudCIvPgorICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1BvaW50Q2xvdWQyIj4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvUG9pbnRDbG91ZDIvaGVhZGVyIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1BvaW50Q2xvdWQyL2hlaWdodCIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Qb2ludENsb3VkMi93aWR0aCIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Qb2ludENsb3VkMi9maWVsZHMiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvUG9pbnRDbG91ZDIvaXNfYmlnZW5kaWFuIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1BvaW50Q2xvdWQyL3BvaW50X3N0ZXAiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvUG9pbnRDbG91ZDIvcm93X3N0ZXAiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvUG9pbnRDbG91ZDIvZGF0YSIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Qb2ludENsb3VkMi9pc19kZW5zZSIvPgorICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0pvaW50U3RhdGUiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Kb2ludFN0YXRlL25hbWUiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvSm9pbnRTdGF0ZS9wb3NpdGlvbiIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Kb2ludFN0YXRlL3ZlbG9jaXR5Ii8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0pvaW50U3RhdGUvZWZmb3J0Ii8+CisgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvTmF2U2F0U3RhdHVzIj4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9IlJlYWRvbmx5IiBjcmVhdGVDaGlsZD0iZmFsc2UiCisgICAgICAgICAgICAgICAgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL05hdlNhdFN0YXR1cy9TVEFUVVNfTk9fRklYIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJSZWFkb25seSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIgorICAgICAgICAgICAgICAgIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9OYXZTYXRTdGF0dXMvU1RBVFVTX0ZJWCIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iUmVhZG9ubHkiIGNyZWF0ZUNoaWxkPSJmYWxzZSIKKyAgICAgICAgICAgICAgICBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvTmF2U2F0U3RhdHVzL1NUQVRVU19TQkFTX0ZJWCIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iUmVhZG9ubHkiIGNyZWF0ZUNoaWxkPSJmYWxzZSIKKyAgICAgICAgICAgICAgICBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvTmF2U2F0U3RhdHVzL1NUQVRVU19HQkFTX0ZJWCIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9OYXZTYXRTdGF0dXMvc3RhdHVzIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJSZWFkb25seSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIgorICAgICAgICAgICAgICAgIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9OYXZTYXRTdGF0dXMvU0VSVklDRV9HUFMiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9IlJlYWRvbmx5IiBjcmVhdGVDaGlsZD0iZmFsc2UiCisgICAgICAgICAgICAgICAgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL05hdlNhdFN0YXR1cy9TRVJWSUNFX0dMT05BU1MiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9IlJlYWRvbmx5IiBjcmVhdGVDaGlsZD0iZmFsc2UiCisgICAgICAgICAgICAgICAgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL05hdlNhdFN0YXR1cy9TRVJWSUNFX0NPTVBBU1MiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9IlJlYWRvbmx5IiBjcmVhdGVDaGlsZD0iZmFsc2UiCisgICAgICAgICAgICAgICAgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL05hdlNhdFN0YXR1cy9TRVJWSUNFX0dBTElMRU8iLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvTmF2U2F0U3RhdHVzL3NlcnZpY2UiLz4KKyAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9OYXZTYXRGaXgiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9OYXZTYXRGaXgvc3RhdHVzIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL05hdlNhdEZpeC9zZXJ2aWNlIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL05hdlNhdEZpeC9oZWFkZXIiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvTmF2U2F0Rml4L2xhdGl0dWRlIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL05hdlNhdEZpeC9sb25naXR1ZGUiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvTmF2U2F0Rml4L2FsdGl0dWRlIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL05hdlNhdEZpeC9wb3NpdGlvbl9jb3ZhcmlhbmNlIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL05hdlNhdEZpeC9wb3NpdGlvbl9jb3ZhcmlhbmNlX3R5cGUiLz4KKyAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Kb3kiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Kb3kvaGVhZGVyIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0pveS9heGVzIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0pveS9idXR0b25zIi8+CisgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvSm95RmVlZGJhY2siPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Kb3lGZWVkYmFjay9UWVBFX0xFRCIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Kb3lGZWVkYmFjay9UWVBFX1JVTUJMRSIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Kb3lGZWVkYmFjay9UWVBFX0JVWlpFUiIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Kb3lGZWVkYmFjay90eXBlIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0pveUZlZWRiYWNrL2lkIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0pveUZlZWRiYWNrL2ludGVuc2l0eSIvPgorICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0pveUZlZWRiYWNrQXJyYXkiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Kb3lGZWVkYmFja0FycmF5L2FycmF5Ii8+CisgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvQ2FyTGlrZU9kb21ldHJ5Ij4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvQ2FyTGlrZU9kb21ldHJ5L2hlYWRlciIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9DYXJMaWtlT2RvbWV0cnkvc3RlZXJpbmdfYW5nbGUiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvQ2FyTGlrZU9kb21ldHJ5L2xlZnRfcmVhcl93aGVlbF9kaXN0YW5jZSIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9DYXJMaWtlT2RvbWV0cnkvcmlnaHRfcmVhcl93aGVlbF9kaXN0YW5jZSIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9DYXJMaWtlT2RvbWV0cnkvcmlnaHRfcmVhcl93aGVlbF92ZWxvY2l0eSIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9DYXJMaWtlT2RvbWV0cnkvbGVmdF9yZWFyX3doZWVsX3ZlbG9jaXR5Ii8+CisgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvRGlmZmVyZW50aWFsT2RvbWV0cnkiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9EaWZmZXJlbnRpYWxPZG9tZXRyeS9oZWFkZXIiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvRGlmZmVyZW50aWFsT2RvbWV0cnkvcmlnaHRfZGlzdGFuY2UiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvRGlmZmVyZW50aWFsT2RvbWV0cnkvbGVmdF9kaXN0YW5jZSIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9EaWZmZXJlbnRpYWxPZG9tZXRyeS9sZWZ0X3ZlbG9jaXR5Ii8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0RpZmZlcmVudGlhbE9kb21ldHJ5L3JpZ2h0X3ZlbG9jaXR5Ii8+CisgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICA8L25lc3RlZEdlblBhY2thZ2VzPgorICAgICAgICA8bmVzdGVkR2VuUGFja2FnZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlblBhY2thZ2UiIHByZWZpeD0iQWN0aW9ubGliX2RhdGF0eXBlcyIKKyAgICAgICAgICAgIGJhc2VQYWNrYWdlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMiCisgICAgICAgICAgICBkaXNwb3NhYmxlUHJvdmlkZXJGYWN0b3J5PSJ0cnVlIiBlY29yZVBhY2thZ2U9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzIj4KKyAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0dvYWxJRCI+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0dvYWxJRC9zdGFtcCIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9Hb2FsSUQvaWQiLz4KKyAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9Hb2FsU3RhdHVzIj4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvR29hbFN0YXR1cy9QRU5ESU5HIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0dvYWxTdGF0dXMvQUNUSVZFIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0dvYWxTdGF0dXMvUFJFRU1QVEVEIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0dvYWxTdGF0dXMvU1VDQ0VFREVEIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0dvYWxTdGF0dXMvQUJPUlRFRCIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9Hb2FsU3RhdHVzL1JFSkVDVEVEIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0dvYWxTdGF0dXMvUFJFRU1QVElORyIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9Hb2FsU3RhdHVzL1JFQ0FMTElORyIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9Hb2FsU3RhdHVzL1JFQ0FMTEVEIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0dvYWxTdGF0dXMvTE9TVCIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9Hb2FsU3RhdHVzL3RleHQiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvR29hbFN0YXR1cy9zdGF0dXMiLz4KKyAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9Hb2FsU3RhdHVzQXJyYXkiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9Hb2FsU3RhdHVzQXJyYXkvaGVhZGVyIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0dvYWxTdGF0dXNBcnJheS9zdGF0dXNfbGlzdCIvPgorICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgPC9uZXN0ZWRHZW5QYWNrYWdlcz4KKyAgICAgICAgPG5lc3RlZEdlblBhY2thZ2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5QYWNrYWdlIiBwcmVmaXg9IlN0ZXJlb19kYXRhdHlwZXMiCisgICAgICAgICAgICBiYXNlUGFja2FnZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzIgorICAgICAgICAgICAgZGlzcG9zYWJsZVByb3ZpZGVyRmFjdG9yeT0idHJ1ZSIgZWNvcmVQYWNrYWdlPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RlcmVvX2RhdGF0eXBlcyIvPgorICAgICAgICA8bmVzdGVkR2VuUGFja2FnZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlblBhY2thZ2UiIHByZWZpeD0iT2FycHNfZGF0YXR5cGVzIgorICAgICAgICAgICAgYmFzZVBhY2thZ2U9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcyIKKyAgICAgICAgICAgIGRpc3Bvc2FibGVQcm92aWRlckZhY3Rvcnk9InRydWUiIGVjb3JlUGFja2FnZT0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcyI+CisgICAgICAgICAgPG5lc3RlZEdlblBhY2thZ2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5QYWNrYWdlIiBwcmVmaXg9Ik9hcnAxX2RhdGF0eXBlcyIKKyAgICAgICAgICAgICAgYmFzZVBhY2thZ2U9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMiCisgICAgICAgICAgICAgIGRpc3Bvc2FibGVQcm92aWRlckZhY3Rvcnk9InRydWUiIGVjb3JlUGFja2FnZT0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwMV9kYXRhdHlwZXMiPgorICAgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnAxX2RhdGF0eXBlcy9DYXJMaWtlQ29tbWFuZCI+CisgICAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwMV9kYXRhdHlwZXMvQ2FyTGlrZUNvbW1hbmQvdmVsb2NpdHkiLz4KKyAgICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnAxX2RhdGF0eXBlcy9DYXJMaWtlQ29tbWFuZC9zdGVlcmluZ0FuZ2xlIi8+CisgICAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDFfZGF0YXR5cGVzL011bHRpTGF5ZXJMaWRhclNjYW4iPgorICAgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwMV9kYXRhdHlwZXMvTXVsdGlMYXllckxpZGFyU2Nhbi9sYXllcnMiLz4KKyAgICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnAxX2RhdGF0eXBlcy9NdWx0aUxheWVyTGlkYXJTY2FuL25iTGF5ZXIiLz4KKyAgICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwMV9kYXRhdHlwZXMvRXh0ZW50ZWRMaWRhclNjYW4iPgorICAgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwMV9kYXRhdHlwZXMvRXh0ZW50ZWRMaWRhclNjYW4vc2NhbiIvPgorICAgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDFfZGF0YXR5cGVzL0V4dGVudGVkTGlkYXJTY2FuL2xheWVySWQiLz4KKyAgICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnAxX2RhdGF0eXBlcy9FeHRlbnRlZExpZGFyU2Nhbi9sYXllckFuZ2xlIi8+CisgICAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgPC9uZXN0ZWRHZW5QYWNrYWdlcz4KKyAgICAgICAgICA8bmVzdGVkR2VuUGFja2FnZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlblBhY2thZ2UiIHByZWZpeD0iT2FycDRfZGF0YXR5cGVzIgorICAgICAgICAgICAgICBiYXNlUGFja2FnZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcyIKKyAgICAgICAgICAgICAgZGlzcG9zYWJsZVByb3ZpZGVyRmFjdG9yeT0idHJ1ZSIgZWNvcmVQYWNrYWdlPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcyI+CisgICAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL1ZlbG9jaXR5X0xpbmVhciI+CisgICAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvVmVsb2NpdHlfTGluZWFyL3ZhbHVlIi8+CisgICAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL0FydF9TZXRfUG9pbnQiPgorICAgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvQXJ0X1NldF9Qb2ludC9vbWVnYV9sZWZ0Ii8+CisgICAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9BcnRfU2V0X1BvaW50L29tZWdhX3JpZ2h0Ii8+CisgICAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL1ZlbG9jaXR5X0FuZ3VsYXIiPgorICAgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL1ZlbG9jaXR5X0FuZ3VsYXIvdmFsdWUiLz4KKyAgICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvRGlzdGFuY2UiPgorICAgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL0Rpc3RhbmNlL3ZhbHVlIi8+CisgICAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL01ldHJpYyI+CisgICAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvTWV0cmljL3ZhbHVlIi8+CisgICAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL0FuZ3VsYXIiPgorICAgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL0FuZ3VsYXIvdmFsdWUiLz4KKyAgICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvT3BfU2V0X1BvaW50Ij4KKyAgICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL09wX1NldF9Qb2ludC92ZWxvY2l0eSIvPgorICAgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvT3BfU2V0X1BvaW50L29yaWVudGF0aW9uIi8+CisgICAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL1NwZWVkX1RpY3NfTGVmdF9SaWdodCI+CisgICAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9TcGVlZF9UaWNzX0xlZnRfUmlnaHQvc3BlZWRfdGljc19sZWZ0Ii8+CisgICAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9TcGVlZF9UaWNzX0xlZnRfUmlnaHQvc3BlZWRfdGljc19yaWdodCIvPgorICAgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9TcGVlZF9UaWNzIj4KKyAgICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9TcGVlZF9UaWNzL3ZhbHVlIi8+CisgICAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL09kb21ldGVyX1RpY3MiPgorICAgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL09kb21ldGVyX1RpY3MvdmFsdWUiLz4KKyAgICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvT2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0Ij4KKyAgICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL09kb21ldGVyX1RpY3NfTGVmdF9SaWdodC9vZG9tZXRlcl90aWNzX2xlZnQiLz4KKyAgICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL09kb21ldGVyX1RpY3NfTGVmdF9SaWdodC9vZG9tZXRlcl90aWNzX3JpZ2h0Ii8+CisgICAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL1Byb3hpX0xlZnRfUmlnaHQiPgorICAgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvUHJveGlfTGVmdF9SaWdodC9wcm94aV9sZWZ0Ii8+CisgICAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9Qcm94aV9MZWZ0X1JpZ2h0L3Byb3hpX3JpZ2h0Ii8+CisgICAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL01pbGxpX0FtcCI+CisgICAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvTWlsbGlfQW1wL3ZhbHVlIi8+CisgICAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL09kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0Ij4KKyAgICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL09kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0L29kb21ldGVyX2xpbmVhcl9sZWZ0Ii8+CisgICAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9PZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodC9vZG9tZXRlcl9saW5lYXJfcmlnaHQiLz4KKyAgICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvVmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0Ij4KKyAgICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL1ZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodC92ZWxvY2l0eV9hbmd1bGFyX2xlZnQiLz4KKyAgICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL1ZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodC92ZWxvY2l0eV9hbmd1bGFyX3JpZ2h0Ii8+CisgICAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL1ZlbG9jaXR5Ij4KKyAgICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL1ZlbG9jaXR5L3ZlbG9jaXR5X2xpbmVhciIvPgorICAgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvVmVsb2NpdHkvdmVsb2NpdHlfYW5ndWxhciIvPgorICAgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICAgIDwvbmVzdGVkR2VuUGFja2FnZXM+CisgICAgICAgIDwvbmVzdGVkR2VuUGFja2FnZXM+CisgICAgICAgIDxuZXN0ZWRHZW5QYWNrYWdlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuUGFja2FnZSIgcHJlZml4PSJTdGRfZGF0YXR5cGVzIiBiYXNlUGFja2FnZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzIgorICAgICAgICAgICAgZGlzcG9zYWJsZVByb3ZpZGVyRmFjdG9yeT0idHJ1ZSIgZWNvcmVQYWNrYWdlPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcyI+CisgICAgICAgICAgPGdlbkRhdGFUeXBlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRGF0YVR5cGUiIGVjb3JlRGF0YVR5cGU9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQzMiIvPgorICAgICAgICAgIDxnZW5EYXRhVHlwZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkRhdGFUeXBlIiBlY29yZURhdGFUeXBlPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9UaW1lIi8+CisgICAgICAgICAgPGdlbkRhdGFUeXBlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRGF0YVR5cGUiIGVjb3JlRGF0YVR5cGU9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0cmluZyIvPgorICAgICAgICAgIDxnZW5EYXRhVHlwZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkRhdGFUeXBlIiBlY29yZURhdGFUeXBlPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9CeXRlIi8+CisgICAgICAgICAgPGdlbkRhdGFUeXBlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRGF0YVR5cGUiIGVjb3JlRGF0YVR5cGU9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0NjQiLz4KKyAgICAgICAgICA8Z2VuRGF0YVR5cGVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5EYXRhVHlwZSIgZWNvcmVEYXRhVHlwZT0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvSW50OCIvPgorICAgICAgICAgIDxnZW5EYXRhVHlwZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkRhdGFUeXBlIiBlY29yZURhdGFUeXBlPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9Cb29sIi8+CisgICAgICAgICAgPGdlbkRhdGFUeXBlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRGF0YVR5cGUiIGVjb3JlRGF0YVR5cGU9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQ4Ii8+CisgICAgICAgICAgPGdlbkRhdGFUeXBlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRGF0YVR5cGUiIGVjb3JlRGF0YVR5cGU9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQxNiIvPgorICAgICAgICAgIDxnZW5EYXRhVHlwZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkRhdGFUeXBlIiBlY29yZURhdGFUeXBlPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9JbnQzMiIvPgorICAgICAgICAgIDxnZW5EYXRhVHlwZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkRhdGFUeXBlIiBlY29yZURhdGFUeXBlPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9JbnQxNiIvPgorICAgICAgICAgIDxnZW5EYXRhVHlwZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkRhdGFUeXBlIiBlY29yZURhdGFUeXBlPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9DaGFyIi8+CisgICAgICAgICAgPGdlbkRhdGFUeXBlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRGF0YVR5cGUiIGVjb3JlRGF0YVR5cGU9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0R1cmF0aW9uIi8+CisgICAgICAgICAgPGdlbkRhdGFUeXBlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRGF0YVR5cGUiIGVjb3JlRGF0YVR5cGU9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0ludDY0Ii8+CisgICAgICAgICAgPGdlbkRhdGFUeXBlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRGF0YVR5cGUiIGVjb3JlRGF0YVR5cGU9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQ2NCIvPgorICAgICAgICAgIDxnZW5EYXRhVHlwZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkRhdGFUeXBlIiBlY29yZURhdGFUeXBlPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9IZWFkZXIiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9IZWFkZXIvc2VxIi8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0hlYWRlci9zdGFtcCIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9IZWFkZXIvZnJhbWVfaWQiLz4KKyAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9NdWx0aUFycmF5RGltZW5zaW9uIj4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvTXVsdGlBcnJheURpbWVuc2lvbi9sYWJlbCIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9NdWx0aUFycmF5RGltZW5zaW9uL3NpemUiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvTXVsdGlBcnJheURpbWVuc2lvbi9zdHJpZGUiLz4KKyAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9NdWx0aUFycmF5TGF5b3V0Ij4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvTXVsdGlBcnJheUxheW91dC9kaW0iLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvTXVsdGlBcnJheUxheW91dC9kYXRhX29mZnNldCIvPgorICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0J5dGVNdWx0aUFycmF5Ij4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvQnl0ZU11bHRpQXJyYXkvbGF5b3V0Ii8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0J5dGVNdWx0aUFycmF5L2RhdGEiLz4KKyAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9Db2xvclJHQkEiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9Db2xvclJHQkEvciIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9Db2xvclJHQkEvZyIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9Db2xvclJHQkEvYiIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9Db2xvclJHQkEvYSIvPgorICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzJNdWx0aUFycmF5Ij4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMk11bHRpQXJyYXkvbGF5b3V0Ii8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzJNdWx0aUFycmF5L2RhdGEiLz4KKyAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9JbnQzMk11bHRpQXJyYXkiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9JbnQzMk11bHRpQXJyYXkvbGF5b3V0Ii8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0ludDMyTXVsdGlBcnJheS9kYXRhIi8+CisgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvSW50OE11bHRpQXJyYXkiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9JbnQ4TXVsdGlBcnJheS9sYXlvdXQiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvSW50OE11bHRpQXJyYXkvZGF0YSIvPgorICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0ludDE2TXVsdGlBcnJheSI+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0ludDE2TXVsdGlBcnJheS9sYXlvdXQiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvSW50MTZNdWx0aUFycmF5L2RhdGEiLz4KKyAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9JbnQ2NE11bHRpQXJyYXkiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9JbnQ2NE11bHRpQXJyYXkvbGF5b3V0Ii8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0ludDY0TXVsdGlBcnJheS9kYXRhIi8+CisgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQ2NE11bHRpQXJyYXkiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDY0TXVsdGlBcnJheS9sYXlvdXQiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQ2NE11bHRpQXJyYXkvZGF0YSIvPgorICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQ2NE11bHRpQXJyYXkiPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBwcm9wZXJ0eT0iTm9uZSIgY2hpbGRyZW49InRydWUiCisgICAgICAgICAgICAgICAgY3JlYXRlQ2hpbGQ9InRydWUiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RVJlZmVyZW5jZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50NjRNdWx0aUFycmF5L2xheW91dCIvPgorICAgICAgICAgICAgPGdlbkZlYXR1cmVzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5GZWF0dXJlIiBjcmVhdGVDaGlsZD0iZmFsc2UiIGVjb3JlRmVhdHVyZT0iZWNvcmU6RUF0dHJpYnV0ZSBSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50NjRNdWx0aUFycmF5L2RhdGEiLz4KKyAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgICAgPGdlbkNsYXNzZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkNsYXNzIiBlY29yZUNsYXNzPSJSb2JvdE1MTGlicmFyaWVzLmVjb3JlIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50MTZNdWx0aUFycmF5Ij4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgcHJvcGVydHk9Ik5vbmUiIGNoaWxkcmVuPSJ0cnVlIgorICAgICAgICAgICAgICAgIGNyZWF0ZUNoaWxkPSJ0cnVlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVSZWZlcmVuY2UgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDE2TXVsdGlBcnJheS9sYXlvdXQiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDE2TXVsdGlBcnJheS9kYXRhIi8+CisgICAgICAgICAgPC9nZW5DbGFzc2VzPgorICAgICAgICAgIDxnZW5DbGFzc2VzIHhzaTp0eXBlPSJnZW5tb2RlbDpHZW5DbGFzcyIgZWNvcmVDbGFzcz0iUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDMyTXVsdGlBcnJheSI+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQzMk11bHRpQXJyYXkvbGF5b3V0Ii8+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIGNyZWF0ZUNoaWxkPSJmYWxzZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFQXR0cmlidXRlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQzMk11bHRpQXJyYXkvZGF0YSIvPgorICAgICAgICAgIDwvZ2VuQ2xhc3Nlcz4KKyAgICAgICAgICA8Z2VuQ2xhc3NlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuQ2xhc3MiIGVjb3JlQ2xhc3M9IlJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQ4TXVsdGlBcnJheSI+CisgICAgICAgICAgICA8Z2VuRmVhdHVyZXMgeHNpOnR5cGU9Imdlbm1vZGVsOkdlbkZlYXR1cmUiIHByb3BlcnR5PSJOb25lIiBjaGlsZHJlbj0idHJ1ZSIKKyAgICAgICAgICAgICAgICBjcmVhdGVDaGlsZD0idHJ1ZSIgZWNvcmVGZWF0dXJlPSJlY29yZTpFUmVmZXJlbmNlIFJvYm90TUxMaWJyYXJpZXMuZWNvcmUjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQ4TXVsdGlBcnJheS9sYXlvdXQiLz4KKyAgICAgICAgICAgIDxnZW5GZWF0dXJlcyB4c2k6dHlwZT0iZ2VubW9kZWw6R2VuRmVhdHVyZSIgY3JlYXRlQ2hpbGQ9ImZhbHNlIiBlY29yZUZlYXR1cmU9ImVjb3JlOkVBdHRyaWJ1dGUgUm9ib3RNTExpYnJhcmllcy5lY29yZSMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDhNdWx0aUFycmF5L2RhdGEiLz4KKyAgICAgICAgICA8L2dlbkNsYXNzZXM+CisgICAgICAgIDwvbmVzdGVkR2VuUGFja2FnZXM+CisgICAgICA8L25lc3RlZEdlblBhY2thZ2VzPgorICAgIDwvbmVzdGVkR2VuUGFja2FnZXM+CisgIDwvZ2VuUGFja2FnZXM+Cis8L2dlbm1vZGVsOkdlbk1vZGVsPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL21vZGVsL1JvYm90TUxMaWJyYXJpZXMuZWNvcmUgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvbW9kZWwvUm9ib3RNTExpYnJhcmllcy5lY29yZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZjYwMWI3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL21vZGVsL1JvYm90TUxMaWJyYXJpZXMuZWNvcmUKQEAgLTAsMCArMSw4ODcgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8ZWNvcmU6RVBhY2thZ2UgeG1pOnZlcnNpb249IjIuMCIgeG1sbnM6eG1pPSJodHRwOi8vd3d3Lm9tZy5vcmcvWE1JIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIgorICAgIHhtbG5zOmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIiBuYW1lPSJSb2JvdE1MTGlicmFyaWVzIiBuc1VSST0iaHR0cDovLy9Sb2JvdE1MTGlicmFyaWVzLmVjb3JlIiBuc1ByZWZpeD0iUm9ib3RNTExpYnJhcmllcyI+CisgIDxlU3VicGFja2FnZXMgbmFtZT0iUm9ib3RNTF9Nb2RlbExpYnJhcnkiIG5zVVJJPSJodHRwOi8vL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkuZWNvcmUiCisgICAgICBuc1ByZWZpeD0iUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeSI+CisgICAgPGVTdWJwYWNrYWdlcyBuYW1lPSJSb2JvdE1MX0RhdGFUeXBlcyIgbnNVUkk9Imh0dHA6Ly8vUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy5lY29yZSIKKyAgICAgICAgbnNQcmVmaXg9IlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMiPgorICAgICAgPGVTdWJwYWNrYWdlcyBuYW1lPSJkaWFnbm9zdGljX2RhdGF0eXBlcyIgbnNVUkk9Imh0dHA6Ly8vUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy5lY29yZSIKKyAgICAgICAgICBuc1ByZWZpeD0iUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcyI+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRGlhZ25vc3RpY0FycmF5Ij4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iaGVhZGVyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvSGVhZGVyIgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJzdGF0dXMiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNTdGF0dXMiCisgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InZhbHVlcyIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvS2V5VmFsdWUiCisgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkRpYWdub3N0aWNTdGF0dXMiPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJPSyIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0J5dGUiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iV0FSTiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0J5dGUiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iRVJST1IiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9CeXRlIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImxldmVsIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvQnl0ZSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJuYW1lIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RyaW5nIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9Im1lc3NhZ2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdHJpbmciLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaGFyZHdhcmVfaWQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdHJpbmciLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0idmFsdWVzIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9LZXlWYWx1ZSIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iS2V5VmFsdWUiPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJrZXkiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdHJpbmciLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0idmFsdWUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdHJpbmciLz4KKyAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8L2VTdWJwYWNrYWdlcz4KKyAgICAgIDxlU3VicGFja2FnZXMgbmFtZT0iZ2VvbWV0cnlfZGF0YXR5cGVzIiBuc1VSST0iaHR0cDovLy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy5lY29yZSIKKyAgICAgICAgICBuc1ByZWZpeD0iUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMiPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlBvaW50Ij4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ieCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0NjQiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ieSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0NjQiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ieiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0NjQiLz4KKyAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUG9pbnQzMiI+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9IngiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InkiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InoiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlBvaW50U3RhbXBlZCI+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImhlYWRlciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0hlYWRlciIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icG9pbnQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1BvaW50IgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQb2x5Z29uIj4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icG9pbnQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIzIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb2ludDMyIgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQb2x5Z29uU3RhbXBlZCI+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImhlYWRlciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0hlYWRlciIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icG9seWdvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9seWdvbiIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iVmVjdG9yMyI+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9IngiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDY0Ii8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InkiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDY0Ii8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InoiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDY0Ii8+CisgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlZlY3RvcjNTdGFtcGVkIj4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iaGVhZGVyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvSGVhZGVyIgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJ2ZWN0b3IiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1ZlY3RvcjMiCisgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlF1YXRlcm5pb24iPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJ4IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQ2NCIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJ5IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQ2NCIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJ6IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQ2NCIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJ3IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQ2NCIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQb3NlIj4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icG9zaXRpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1BvaW50IgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJvcmllbnRhdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUXVhdGVybmlvbiIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUG9zZVN0YW1wZWQiPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJoZWFkZXIiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9IZWFkZXIiCisgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InBvc2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1Bvc2UiCisgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlR3aXN0V2l0aENvdmFyaWFuY2UiPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJ0d2lzdCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvVHdpc3QiCisgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImNvdmFyaWFuY2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIzNiIgdXBwZXJCb3VuZD0iMzYiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0NjQiLz4KKyAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iVHdpc3QiPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJsaW5lYXIiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1ZlY3RvcjMiCisgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImFuZ3VsYXIiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1ZlY3RvcjMiCisgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlR3aXN0U3RhbXBlZCI+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImhlYWRlciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0hlYWRlciIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0idHdpc3QiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1R3aXN0IgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQb3NlV2l0aENvdmFyaWFuY2UiPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJwb3NlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb3NlIgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJjb3ZhcmlhbmNlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMzYiIHVwcGVyQm91bmQ9IjM2IiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDY0Ii8+CisgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlBvc2UyRCI+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9IngiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDY0Ii8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InkiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDY0Ii8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InRoZXRhIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQ2NCIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkIi8+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUG9zZUFycmF5Ij4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iaGVhZGVyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvSGVhZGVyIgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJwb3NlcyIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1Bvc2UiCisgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlF1YXRlcm5pb25TdGFtcGVkIj4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iaGVhZGVyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvSGVhZGVyIgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJxdWF0ZXJuaW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9RdWF0ZXJuaW9uIgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJUcmFuc2Zvcm0iPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJ0cmFuc2xhdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvVmVjdG9yMyIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icm90YXRpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1F1YXRlcm5pb24iCisgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IldyZW5jaFN0YW1wZWQiPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJoZWFkZXIiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9IZWFkZXIiCisgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9IndyZW5jaCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvV3JlbmNoIgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJXcmVuY2giPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJmb3JjZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvVmVjdG9yMyIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0idG9ycXVlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9WZWN0b3IzIgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDwvZVN1YnBhY2thZ2VzPgorICAgICAgPGVTdWJwYWNrYWdlcyBuYW1lPSJuYXZfZGF0YXR5cGVzIiBuc1VSST0iaHR0cDovLy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMuZWNvcmUiCisgICAgICAgICAgbnNQcmVmaXg9IlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcyI+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUGF0aCI+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImhlYWRlciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0hlYWRlciIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icG9zZXMiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb3NlU3RhbXBlZCIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iT2RvbWV0cnkiPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJoZWFkZXIiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9IZWFkZXIiCisgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImNoaWxkX2ZyYW1lX2lkIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RyaW5nIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InBvc2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1Bvc2VXaXRoQ292YXJpYW5jZSIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0idHdpc3QiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1R3aXN0V2l0aENvdmFyaWFuY2UiCisgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik1hcE1ldGFEYXRhIj4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ibWFwX2xvYWRfdGltZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1RpbWUiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0icmVzb2x1dGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzIiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0id2lkdGgiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50MzIiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib3JpZ2luIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb3NlIgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPY2N1cGFuY3lHcmlkIj4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iaGVhZGVyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvSGVhZGVyIgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJpbmZvIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTWFwTWV0YURhdGEiCisgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImRhdGEiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvSW50OCIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJHcmlkQ2VsbHMiPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJoZWFkZXIiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9IZWFkZXIiCisgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImNlbGxfd2lkdGgiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImNlbGxfaGVpZ2h0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMiIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJjZWxscyIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1BvaW50IgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDwvZVN1YnBhY2thZ2VzPgorICAgICAgPGVTdWJwYWNrYWdlcyBuYW1lPSJzZW5zb3JfZGF0YXR5cGVzIiBuc1VSST0iaHR0cDovLy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMuZWNvcmUiCisgICAgICAgICAgbnNQcmVmaXg9IlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcyI+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUmVnaW9uT2ZJbnRlcmVzdCI+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9Inhfb2Zmc2V0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDMyIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9Inlfb2Zmc2V0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDMyIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImhlaWdodCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQzMiIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJkb19yZWN0aWZ5IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvQm9vbCIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJ3aWR0aCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQzMiIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJSYW5nZSI+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9IlVMVFJBU09VTkQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50OCIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJJTkZSQVJFRCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQ4Ii8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImhlYWRlciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0hlYWRlciIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0icmFkaWF0aW9uX3R5cGUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50OCIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJmaWVsZF9vZl92aWV3IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMiIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJtaW5fcmFuZ2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9Im1heF9yYW5nZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzIiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0icmFuZ2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNhbWVyYUluZm8iPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJoZWFkZXIiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9IZWFkZXIiCisgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImhlaWdodCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQzMiIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJ3aWR0aCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQzMiIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJkaXN0b3JzaW9uX21vZGVsIgorICAgICAgICAgICAgICBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RyaW5nIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9IkQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQ2NCIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJLIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iOSIgdXBwZXJCb3VuZD0iOSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQ2NCIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJSIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iOSIgdXBwZXJCb3VuZD0iOSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQ2NCIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJQIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMTIiIHVwcGVyQm91bmQ9IjEyIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDY0Ii8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImJpbm5pbmdfeCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQzMiIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJiaW5uaW5nX3kiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50MzIiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icm9pIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvUmVnaW9uT2ZJbnRlcmVzdCIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSW11Ij4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iaGVhZGVyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvSGVhZGVyIgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJvcmllbnRhdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUXVhdGVybmlvbiIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ib3JpZW50YXRpb25fY292YXJpYW5jZSIKKyAgICAgICAgICAgICAgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjkiIHVwcGVyQm91bmQ9IjkiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0NjQiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iYW5ndWxhcl92ZWxvY2l0eSIKKyAgICAgICAgICAgICAgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvVmVjdG9yMyIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iYW5ndWxhcl92ZWxvY2l0eV9jb3ZhcmlhbmNlIgorICAgICAgICAgICAgICBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iOSIgdXBwZXJCb3VuZD0iOSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQ2NCIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJsaW5lYXJfYWNjZWxlcmF0aW9uIgorICAgICAgICAgICAgICBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9WZWN0b3IzIgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJsaW5lYXJfYWNjZWxlcmF0aW9uX2NvdmFyaWFuY2UiCisgICAgICAgICAgICAgIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSI5IiB1cHBlckJvdW5kPSI5IiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDY0Ii8+CisgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ikxhc2VyU2NhbiI+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImhlYWRlciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0hlYWRlciIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iYW5nbGVfbWluIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMiIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJhbmdsZV9tYXgiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImFuZ2xlX2luY3JlbWVudCIKKyAgICAgICAgICAgICAgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzIiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0idGltZV9pbmNyZW1lbnQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InNjYW5fdGltZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzIiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0icmFuZ2VfbWluIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMiIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJyYW5nZV9tYXgiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InJhbmdlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzIiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaW50ZW5zaXRpZXMiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMiIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJJbWFnZSI+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImhlYWRlciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0hlYWRlciIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaGVpZ2h0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDMyIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9IndpZHRoIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDMyIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImVuY29kaW5nIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RyaW5nIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImlzX2JpZ2VuZGlhbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQ4Ii8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InN0ZXAiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50MzIiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iZGF0YSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50OCIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDaGFubmVsRmxvYXQzMiI+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9Im5hbWUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdHJpbmciLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0idmFsdWVzIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzIiLz4KKyAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ29tcHJlc3NlZEltYWdlIj4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iaGVhZGVyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvSGVhZGVyIgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJmb3JtYXQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdHJpbmciLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iZGF0YSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50OCIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQb2ludENsb3VkIj4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iaGVhZGVyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvSGVhZGVyIgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJwb2ludHMiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb2ludDMyIgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJjaGFubmVscyIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9DaGFubmVsRmxvYXQzMiIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUG9pbnRGaWVsZCI+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9Im5hbWUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdHJpbmciLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ib2Zmc2V0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDMyIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImRhdGF0eXBlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDgiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iY291bnQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50MzIiLz4KKyAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUG9pbnRDbG91ZDIiPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJoZWFkZXIiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9IZWFkZXIiCisgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImhlaWdodCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQzMiIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJ3aWR0aCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQzMiIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJmaWVsZHMiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvUG9pbnRGaWVsZCIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNfYmlnZW5kaWFuIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvQm9vbCIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJwb2ludF9zdGVwIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDMyIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InJvd19zdGVwIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDMyIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImRhdGEiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDgiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNfZGVuc2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9Cb29sIi8+CisgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkpvaW50U3RhdGUiPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJuYW1lIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0cmluZyIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJwb3NpdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDY0Ii8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InZlbG9jaXR5IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0NjQiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iZWZmb3J0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0NjQiLz4KKyAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iTmF2U2F0U3RhdHVzIj4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iU1RBVFVTX05PX0ZJWCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0ludDgiCisgICAgICAgICAgICAgIGNoYW5nZWFibGU9ImZhbHNlIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSItMSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJTVEFUVVNfRklYIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvSW50OCIKKyAgICAgICAgICAgICAgY2hhbmdlYWJsZT0iZmFsc2UiIGRlZmF1bHRWYWx1ZUxpdGVyYWw9IjAiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iU1RBVFVTX1NCQVNfRklYIgorICAgICAgICAgICAgICBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvSW50OCIKKyAgICAgICAgICAgICAgY2hhbmdlYWJsZT0iZmFsc2UiIGRlZmF1bHRWYWx1ZUxpdGVyYWw9IjEiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iU1RBVFVTX0dCQVNfRklYIgorICAgICAgICAgICAgICBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvSW50OCIKKyAgICAgICAgICAgICAgY2hhbmdlYWJsZT0iZmFsc2UiIGRlZmF1bHRWYWx1ZUxpdGVyYWw9IjIiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ic3RhdHVzIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvSW50OCIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJTRVJWSUNFX0dQUyIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQxNiIKKyAgICAgICAgICAgICAgY2hhbmdlYWJsZT0iZmFsc2UiIGRlZmF1bHRWYWx1ZUxpdGVyYWw9IjEiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iU0VSVklDRV9HTE9OQVNTIgorICAgICAgICAgICAgICBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDE2IgorICAgICAgICAgICAgICBjaGFuZ2VhYmxlPSJmYWxzZSIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iMiIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJTRVJWSUNFX0NPTVBBU1MiCisgICAgICAgICAgICAgIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50MTYiCisgICAgICAgICAgICAgIGNoYW5nZWFibGU9ImZhbHNlIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSI0Ii8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9IlNFUlZJQ0VfR0FMSUxFTyIKKyAgICAgICAgICAgICAgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQxNiIKKyAgICAgICAgICAgICAgY2hhbmdlYWJsZT0iZmFsc2UiIGRlZmF1bHRWYWx1ZUxpdGVyYWw9IjgiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ic2VydmljZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQxNiIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJOYXZTYXRGaXgiPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJzdGF0dXMiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TVEFUVVNfVFlQRSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJzZXJ2aWNlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU0VSVklDRV9UWVBFIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImhlYWRlciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0hlYWRlciIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ibGF0aXR1ZGUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDY0Ii8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImxvbmdpdHVkZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0NjQiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iYWx0aXR1ZGUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDY0Ii8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InBvc2l0aW9uX2NvdmFyaWFuY2UiCisgICAgICAgICAgICAgIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSI5IiB1cHBlckJvdW5kPSI5IiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDY0Ii8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InBvc2l0aW9uX2NvdmFyaWFuY2VfdHlwZSIKKyAgICAgICAgICAgICAgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0NPVkFSSUFOQ0VfVFlQRSIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUVudW0iIG5hbWU9IlNUQVRVU19UWVBFIj4KKyAgICAgICAgICA8ZUxpdGVyYWxzIG5hbWU9IlNUQVRVU19OT19GSVgiLz4KKyAgICAgICAgICA8ZUxpdGVyYWxzIG5hbWU9IlNUQVRVU19GSVgiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGVMaXRlcmFscyBuYW1lPSJTVEFUVVNfU0JBU19GSVgiIHZhbHVlPSIyIi8+CisgICAgICAgICAgPGVMaXRlcmFscyBuYW1lPSJTVEFUVVNfR0JBU19GSVgiIHZhbHVlPSIzIi8+CisgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRW51bSIgbmFtZT0iU0VSVklDRV9UWVBFIj4KKyAgICAgICAgICA8ZUxpdGVyYWxzIG5hbWU9IlNFUlZJQ0VfR1BTIi8+CisgICAgICAgICAgPGVMaXRlcmFscyBuYW1lPSJTRVJWSUNFX0dMT05BU1MiIHZhbHVlPSIxIi8+CisgICAgICAgICAgPGVMaXRlcmFscyBuYW1lPSJTRVJWSUNFX0NPTVBBU1MiIHZhbHVlPSIyIi8+CisgICAgICAgICAgPGVMaXRlcmFscyBuYW1lPSJTRVJWSUNFX0dBTElMRU8iIHZhbHVlPSIzIi8+CisgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRW51bSIgbmFtZT0iQ09WQVJJQU5DRV9UWVBFIj4KKyAgICAgICAgICA8ZUxpdGVyYWxzIG5hbWU9IkNPVkFSSUFOQ0VfVFlQRV9VTktOT1dOIi8+CisgICAgICAgICAgPGVMaXRlcmFscyBuYW1lPSJDT1ZBUklBTkNFX1RZUEVfQVBQUk9YSU1BVEVEIiB2YWx1ZT0iMSIvPgorICAgICAgICAgIDxlTGl0ZXJhbHMgbmFtZT0iX0NPVkFSSUFOQ0VfVFlQRV9ESUFHT05BTF9LTk9XTiIgdmFsdWU9IjIiLz4KKyAgICAgICAgICA8ZUxpdGVyYWxzIG5hbWU9IkNPVkFSSUFOQ0VfVFlQRV9LTk9XTiIgdmFsdWU9IjMiLz4KKyAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSm95Ij4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iaGVhZGVyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvSGVhZGVyIgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJheGVzIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzIiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iYnV0dG9ucyIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9JbnQzMiIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJKb3lGZWVkYmFjayI+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9IlRZUEVfTEVEIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDgiCisgICAgICAgICAgICAgIGRlZmF1bHRWYWx1ZUxpdGVyYWw9IjAiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iVFlQRV9SVU1CTEUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50OCIKKyAgICAgICAgICAgICAgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iMSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJUWVBFX0JVWlpFUiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQ4IgorICAgICAgICAgICAgICBkZWZhdWx0VmFsdWVMaXRlcmFsPSIyIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InR5cGUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50OCIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpZCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQ4Ii8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImludGVuc2l0eSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzIiLz4KKyAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSm95RmVlZGJhY2tBcnJheSI+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImFycmF5IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0pveUZlZWRiYWNrIgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDYXJMaWtlT2RvbWV0cnkiPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJoZWFkZXIiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9IZWFkZXIiCisgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InN0ZWVyaW5nX2FuZ2xlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQ2NCIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJsZWZ0X3JlYXJfd2hlZWxfZGlzdGFuY2UiCisgICAgICAgICAgICAgIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDY0Ii8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InJpZ2h0X3JlYXJfd2hlZWxfZGlzdGFuY2UiCisgICAgICAgICAgICAgIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDY0Ii8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InJpZ2h0X3JlYXJfd2hlZWxfdmVsb2NpdHkiCisgICAgICAgICAgICAgIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDY0Ii8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImxlZnRfcmVhcl93aGVlbF92ZWxvY2l0eSIKKyAgICAgICAgICAgICAgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0NjQiLz4KKyAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRGlmZmVyZW50aWFsT2RvbWV0cnkiPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJoZWFkZXIiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9IZWFkZXIiCisgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InJpZ2h0X2Rpc3RhbmNlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQ2NCIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJsZWZ0X2Rpc3RhbmNlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQ2NCIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJsZWZ0X3ZlbG9jaXR5IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQ2NCIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJyaWdodF92ZWxvY2l0eSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0NjQiLz4KKyAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8L2VTdWJwYWNrYWdlcz4KKyAgICAgIDxlU3VicGFja2FnZXMgbmFtZT0iYWN0aW9ubGliX2RhdGF0eXBlcyIgbnNVUkk9Imh0dHA6Ly8vUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzLmVjb3JlIgorICAgICAgICAgIG5zUHJlZml4PSJSb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMiPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkdvYWxJRCI+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InN0YW1wIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVGltZSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpZCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0cmluZyIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJHb2FsU3RhdHVzIj4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iUEVORElORyIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQ4IgorICAgICAgICAgICAgICBkZWZhdWx0VmFsdWVMaXRlcmFsPSIwIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9IkFDVElWRSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQ4IgorICAgICAgICAgICAgICBkZWZhdWx0VmFsdWVMaXRlcmFsPSIxIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9IlBSRUVNUFRFRCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQ4IgorICAgICAgICAgICAgICBkZWZhdWx0VmFsdWVMaXRlcmFsPSIyIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9IlNVQ0NFRURFRCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQ4Ii8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9IkFCT1JURUQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50OCIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJSRUpFQ1RFRCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQ4Ii8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9IlBSRUVNUFRJTkciIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50OCIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJSRUNBTExJTkciIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50OCIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJSRUNBTExFRCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQ4Ii8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9IkxPU1QiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50OCIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJ0ZXh0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RyaW5nIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InN0YXR1cyIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQ4Ii8+CisgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkdvYWxTdGF0dXNBcnJheSI+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImhlYWRlciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0hlYWRlciIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ic3RhdHVzX2xpc3QiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvR29hbFN0YXR1cyIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8L2VTdWJwYWNrYWdlcz4KKyAgICAgIDxlU3VicGFja2FnZXMgbmFtZT0ic3RlcmVvX2RhdGF0eXBlcyIgbnNVUkk9Imh0dHA6Ly8vUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGVyZW9fZGF0YXR5cGVzLmVjb3JlIgorICAgICAgICAgIG5zUHJlZml4PSJSb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZXJlb19kYXRhdHlwZXMiLz4KKyAgICAgIDxlU3VicGFja2FnZXMgbmFtZT0ib2FycHNfZGF0YXR5cGVzIiBuc1VSST0iaHR0cDovLy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy5lY29yZSIKKyAgICAgICAgICBuc1ByZWZpeD0iUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMiPgorICAgICAgICA8ZVN1YnBhY2thZ2VzIG5hbWU9Im9hcnAxX2RhdGF0eXBlcyIgbnNVUkk9Imh0dHA6Ly8vUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDFfZGF0YXR5cGVzLmVjb3JlIgorICAgICAgICAgICAgbnNQcmVmaXg9IlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcyI+CisgICAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDYXJMaWtlQ29tbWFuZCI+CisgICAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0idmVsb2NpdHkiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0NjQiCisgICAgICAgICAgICAgICAgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iMCIvPgorICAgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InN0ZWVyaW5nQW5nbGUiCisgICAgICAgICAgICAgICAgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0NjQiCisgICAgICAgICAgICAgICAgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iMCIvPgorICAgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iTXVsdGlMYXllckxpZGFyU2NhbiI+CisgICAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ibGF5ZXJzIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnAxX2RhdGF0eXBlcy9FeHRlbnRlZExpZGFyU2NhbiIKKyAgICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9Im5iTGF5ZXIiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQ4Ii8+CisgICAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFeHRlbnRlZExpZGFyU2NhbiI+CisgICAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ic2NhbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvTGFzZXJTY2FuIgorICAgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ibGF5ZXJJZCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDgiLz4KKyAgICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJsYXllckFuZ2xlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgIDwvZVN1YnBhY2thZ2VzPgorICAgICAgICA8ZVN1YnBhY2thZ2VzIG5hbWU9Im9hcnA0X2RhdGF0eXBlcyIgbnNVUkk9Imh0dHA6Ly8vUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzLmVjb3JlIgorICAgICAgICAgICAgbnNQcmVmaXg9IlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcyI+CisgICAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJWZWxvY2l0eV9MaW5lYXIiPgorICAgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InZhbHVlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgICB1bmlxdWU9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9JbnQzMiIvPgorICAgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQXJ0X1NldF9Qb2ludCI+CisgICAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib21lZ2FfbGVmdCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgICAgdW5pcXVlPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvVmVsb2NpdHlfQW5ndWxhciIKKyAgICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im9tZWdhX3JpZ2h0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9WZWxvY2l0eV9Bbmd1bGFyIgorICAgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJWZWxvY2l0eV9Bbmd1bGFyIj4KKyAgICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJ2YWx1ZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgICAgdW5pcXVlPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQ2NCIvPgorICAgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRGlzdGFuY2UiPgorICAgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InZhbHVlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgICB1bmlxdWU9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50MzIiLz4KKyAgICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik1ldHJpYyI+CisgICAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0idmFsdWUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICAgIHVuaXF1ZT0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0NjQiLz4KKyAgICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkFuZ3VsYXIiPgorICAgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InZhbHVlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgICB1bmlxdWU9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50MzIiLz4KKyAgICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9wX1NldF9Qb2ludCI+CisgICAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0idmVsb2NpdHkiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICAgIHVuaXF1ZT0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL1ZlbG9jaXR5X0xpbmVhciIKKyAgICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im9yaWVudGF0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgICB1bmlxdWU9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9Bbmd1bGFyIgorICAgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTcGVlZF9UaWNzX0xlZnRfUmlnaHQiPgorICAgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InNwZWVkX3RpY3NfbGVmdCIKKyAgICAgICAgICAgICAgICBvcmRlcmVkPSJmYWxzZSIgdW5pcXVlPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvU3BlZWRfVGljcyIKKyAgICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InNwZWVkX3RpY3NfcmlnaHQiCisgICAgICAgICAgICAgICAgb3JkZXJlZD0iZmFsc2UiIHVuaXF1ZT0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL1NwZWVkX1RpY3MiCisgICAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlNwZWVkX1RpY3MiPgorICAgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InZhbHVlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgICB1bmlxdWU9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9JbnQzMiIvPgorICAgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iT2RvbWV0ZXJfVGljcyI+CisgICAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0idmFsdWUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICAgIHVuaXF1ZT0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0ludDMyIi8+CisgICAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHQiPgorICAgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im9kb21ldGVyX3RpY3NfbGVmdCIKKyAgICAgICAgICAgICAgICBvcmRlcmVkPSJmYWxzZSIgdW5pcXVlPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvT2RvbWV0ZXJfVGljcyIKKyAgICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im9kb21ldGVyX3RpY3NfcmlnaHQiCisgICAgICAgICAgICAgICAgb3JkZXJlZD0iZmFsc2UiIHVuaXF1ZT0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL09kb21ldGVyX1RpY3MiCisgICAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlByb3hpX0xlZnRfUmlnaHQiPgorICAgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InByb3hpX2xlZnQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICAgIHVuaXF1ZT0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL0Rpc3RhbmNlIgorICAgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icHJveGlfcmlnaHQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICAgIHVuaXF1ZT0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL0Rpc3RhbmNlIgorICAgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJNaWxsaV9BbXAiPgorICAgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InZhbHVlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgICB1bmlxdWU9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50MzIiLz4KKyAgICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0Ij4KKyAgICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJvZG9tZXRlcl9saW5lYXJfbGVmdCIKKyAgICAgICAgICAgICAgICBvcmRlcmVkPSJmYWxzZSIgdW5pcXVlPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvTWV0cmljIgorICAgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib2RvbWV0ZXJfbGluZWFyX3JpZ2h0IgorICAgICAgICAgICAgICAgIG9yZGVyZWQ9ImZhbHNlIiB1bmlxdWU9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9NZXRyaWMiCisgICAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodCI+CisgICAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0idmVsb2NpdHlfYW5ndWxhcl9sZWZ0IgorICAgICAgICAgICAgICAgIG9yZGVyZWQ9ImZhbHNlIiB1bmlxdWU9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9WZWxvY2l0eV9Bbmd1bGFyIgorICAgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0idmVsb2NpdHlfYW5ndWxhcl9yaWdodCIKKyAgICAgICAgICAgICAgICBvcmRlcmVkPSJmYWxzZSIgdW5pcXVlPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvVmVsb2NpdHlfQW5ndWxhciIKKyAgICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iVmVsb2NpdHkiPgorICAgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InZlbG9jaXR5X2xpbmVhciIKKyAgICAgICAgICAgICAgICBvcmRlcmVkPSJmYWxzZSIgdW5pcXVlPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvVmVsb2NpdHlfTGluZWFyIgorICAgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0idmVsb2NpdHlfYW5ndWxhciIKKyAgICAgICAgICAgICAgICBvcmRlcmVkPSJmYWxzZSIgdW5pcXVlPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvVmVsb2NpdHlfQW5ndWxhciIKKyAgICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICA8L2VTdWJwYWNrYWdlcz4KKyAgICAgIDwvZVN1YnBhY2thZ2VzPgorICAgICAgPGVTdWJwYWNrYWdlcyBuYW1lPSJzdGRfZGF0YXR5cGVzIiBuc1VSST0iaHR0cDovLy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMuZWNvcmUiCisgICAgICAgICAgbnNQcmVmaXg9IlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcyI+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSGVhZGVyIj4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ic2VxIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDMyIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InN0YW1wIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVGltZSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJmcmFtZV9pZCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0cmluZyIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBuYW1lPSJVSW50MzIiIGluc3RhbmNlQ2xhc3NOYW1lPSJsb25nIi8+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgbmFtZT0iVGltZSIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEudXRpbC5EYXRlIi8+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgbmFtZT0iU3RyaW5nIiBpbnN0YW5jZUNsYXNzTmFtZT0iamF2YS5sYW5nLlN0cmluZyIvPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IkJ5dGUiIGluc3RhbmNlQ2xhc3NOYW1lPSJieXRlIi8+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgbmFtZT0iRmxvYXQ2NCIgaW5zdGFuY2VDbGFzc05hbWU9ImRvdWJsZSIvPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IkludDgiIGluc3RhbmNlQ2xhc3NOYW1lPSJjaGFyIi8+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgbmFtZT0iQm9vbCIgaW5zdGFuY2VDbGFzc05hbWU9ImJvb2xlYW4iLz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBuYW1lPSJVSW50OCIgaW5zdGFuY2VDbGFzc05hbWU9ImNoYXIiLz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBuYW1lPSJVSW50MTYiIGluc3RhbmNlQ2xhc3NOYW1lPSJpbnQiLz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBuYW1lPSJJbnQzMiIgaW5zdGFuY2VDbGFzc05hbWU9ImludCIvPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IkludDE2IiBpbnN0YW5jZUNsYXNzTmFtZT0iaW50Ii8+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iTXVsdGlBcnJheURpbWVuc2lvbiI+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImxhYmVsIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RyaW5nIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InNpemUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50MzIiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ic3RyaWRlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDMyIi8+CisgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik11bHRpQXJyYXlMYXlvdXQiPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJkaW0iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvTXVsdGlBcnJheURpbWVuc2lvbiIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iZGF0YV9vZmZzZXQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50MzIiLz4KKyAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQnl0ZU11bHRpQXJyYXkiPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJsYXlvdXQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9NdWx0aUFycmF5TGF5b3V0IgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJkYXRhIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0J5dGUiLz4KKyAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgbmFtZT0iQ2hhciIgaW5zdGFuY2VDbGFzc05hbWU9ImNoYXIiLz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb2xvclJHQkEiPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMiIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJnIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMiIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJiIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMiIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJhIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMiIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBuYW1lPSJEdXJhdGlvbiIgaW5zdGFuY2VDbGFzc05hbWU9ImRvdWJsZSIvPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkZsb2F0MzJNdWx0aUFycmF5Ij4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ibGF5b3V0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvTXVsdGlBcnJheUxheW91dCIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iZGF0YSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9GbG9hdDMyIi8+CisgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkludDMyTXVsdGlBcnJheSI+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImxheW91dCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL011bHRpQXJyYXlMYXlvdXQiCisgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImRhdGEiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvSW50MzIiLz4KKyAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSW50OE11bHRpQXJyYXkiPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJsYXlvdXQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9NdWx0aUFycmF5TGF5b3V0IgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJkYXRhIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0ludDgiLz4KKyAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSW50MTZNdWx0aUFycmF5Ij4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ibGF5b3V0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvTXVsdGlBcnJheUxheW91dCIKKyAgICAgICAgICAgICAgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iZGF0YSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9JbnQxNiIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJJbnQ2NE11bHRpQXJyYXkiPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJsYXlvdXQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9NdWx0aUFycmF5TGF5b3V0IgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJkYXRhIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0ludDY0Ii8+CisgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IkludDY0IiBpbnN0YW5jZUNsYXNzTmFtZT0iZG91YmxlIi8+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRmxvYXQ2NE11bHRpQXJyYXkiPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJsYXlvdXQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9NdWx0aUFycmF5TGF5b3V0IgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJkYXRhIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0NjQiLz4KKyAgICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICAgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iVUludDY0TXVsdGlBcnJheSI+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImxheW91dCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL011bHRpQXJyYXlMYXlvdXQiCisgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImRhdGEiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDY0Ii8+CisgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IlVJbnQ2NCIgaW5zdGFuY2VDbGFzc05hbWU9ImxvbmciLz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJVSWludDE2TXVsdGlBcnJheSI+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImxheW91dCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL011bHRpQXJyYXlMYXlvdXQiCisgICAgICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImRhdGEiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDE2Ii8+CisgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlVJbnQzMk11bHRpQXJyYXkiPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJsYXlvdXQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9NdWx0aUFycmF5TGF5b3V0IgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJkYXRhIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQzMiIvPgorICAgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgICAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJVSW50OE11bHRpQXJyYXkiPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJsYXlvdXQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9NdWx0aUFycmF5TGF5b3V0IgorICAgICAgICAgICAgICBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJkYXRhIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQ4Ii8+CisgICAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IkZsb2F0MzIiIGluc3RhbmNlQ2xhc3NOYW1lPSJmbG9hdCIvPgorICAgICAgPC9lU3VicGFja2FnZXM+CisgICAgPC9lU3VicGFja2FnZXM+CisgIDwvZVN1YnBhY2thZ2VzPgorPC9lY29yZTpFUGFja2FnZT4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9tb2RlbC9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMuZGkgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvbW9kZWwvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLmRpCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJhZjkyY2UKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvbW9kZWwvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLmRpCkBAIC0wLDAgKzEsMjYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8ZGk6U2FzaFdpbmRvd3NNbmdyIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zOlhNST0iaHR0cDovL3d3dy5vbWcub3JnL1hNSSIgeG1sbnM6ZGk9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvcGFweXJ1cy8wLjcuMC9zYXNoZGkiIFhNSTp2ZXJzaW9uPSIyLjAiPgorICA8cGFnZUxpc3Q+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICAgIDxhdmFpbGFibGVQYWdlLz4KKyAgICA8YXZhaWxhYmxlUGFnZS8+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICAgIDxhdmFpbGFibGVQYWdlLz4KKyAgICA8YXZhaWxhYmxlUGFnZS8+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICAgIDxhdmFpbGFibGVQYWdlLz4KKyAgICA8YXZhaWxhYmxlUGFnZS8+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICAgIDxhdmFpbGFibGVQYWdlLz4KKyAgICA8YXZhaWxhYmxlUGFnZS8+CisgICAgPGF2YWlsYWJsZVBhZ2UvPgorICAgIDxhdmFpbGFibGVQYWdlLz4KKyAgPC9wYWdlTGlzdD4KKyAgPHNhc2hNb2RlbCBjdXJyZW50U2VsZWN0aW9uPSIjLy9Ac2FzaE1vZGVsL0B3aW5kb3dzLjAvQGNoaWxkcmVuLjAiPgorICAgIDx3aW5kb3dzPgorICAgICAgPGNoaWxkcmVuIHhzaTp0eXBlPSJkaTpUYWJGb2xkZXIiPgorICAgICAgICA8Y2hpbGRyZW4gZW1mUGFnZUlkZW50aWZpZXI9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy5ub3RhdGlvbiNfMHdjYjhBTExFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICA8L3dpbmRvd3M+CisgIDwvc2FzaE1vZGVsPgorPC9kaTpTYXNoV2luZG93c01uZ3I+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvbW9kZWwvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLm5vdGF0aW9uIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL21vZGVsL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy5ub3RhdGlvbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44Nzg2OTRiCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL21vZGVsL1JvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy5ub3RhdGlvbgpAQCAtMCwwICsxLDQxODAgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8eG1pOlhNSSB4bWk6dmVyc2lvbj0iMi4wIiB4bWxuczp4bWk9Imh0dHA6Ly93d3cub21nLm9yZy9YTUkiIHhtbG5zOmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIiB4bWxuczpub3RhdGlvbj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9nbWYvcnVudGltZS8xLjAuMi9ub3RhdGlvbiIgeG1sbnM6dW1sPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNC4wLjAvVU1MIj4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfSGZ4d1FBTEpFZUN0WU1YcHBmcUxNdyIgdHlwZT0iUGFweXJ1c1VNTENsYXNzRGlhZ3JhbSIgbmFtZT0iUHJvdGV1c01vZGVsTGlicmFyaWVzIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9ZUS1Lb0FMTEVlQ3RZTVhwcGZxTE13IiB0eXBlPSIyMDA3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMjYzMjI1NiwgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfWVEtS29nTExFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1lRLUtvd0xMRWVDdFlNWHBwZnFMTXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1lRLUtwQUxMRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1lRLUtwUUxMRWVDdFlNWHBwZnFMTXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfWVEtS3BnTExFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ZUS1LcHdMTEVlQ3RZTVhwcGZxTE13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfWVEtS3FBTExFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTAyNiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfWVEtS3FRTExFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNzAxNiI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2FDcXh3QUxMRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMDkiIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYUNxeHdnTExFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9hQ3F4d3dMTEVlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2FDcXh4QUxMRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9hQ3F4eFFMTEVlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYUNxeHhnTExFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYUNxeHh3TExFZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2pFMTg0QUxMRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iUGFweXJ1c0h5cGVyTGlua19EaWFncmFtIiByZWZlcmVuY2VzPSJfaFhLNklBTExFZUN0WU1YcHBmcUxNdyI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2pFMTg0UUxMRWVDdFlNWHBwZnFMTXciIGtleT0idG9vbHRpcF90ZXh0IiB2YWx1ZT0iUk9TLW1zZ3MiLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfakUxODRnTExFZUN0WU1YcHBmcUxNdyIga2V5PSJkaWFncmFtX25hbWUiIHZhbHVlPSJST1MtbXNncyIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2FDcXh5QUxMRWVDdFlNWHBwZnFMTXciIHR5cGU9IjUwMTciLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9hQ3F4eVFMTEVlQ3RZTVhwcGZxTE13IiB0eXBlPSI3MDEwIj4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2FDcXh5Z0xMRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfZHRfeTRBSHRFZUNRUU9LcmhPX2ZJUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2FDcXh3UUxMRWVDdFlNWHBwZnFMTXciIHg9IjEzNSIgeT0iMTAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfWVEtS3FnTExFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfelJoM3NBSHJFZUNRUU9LcmhPX2ZJUSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfWVEtS29RTExFZUN0WU1YcHBmcUxNdyIgeD0iMjUiIHk9IjIwIiB3aWR0aD0iNTQ2IiBoZWlnaHQ9IjMzMSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9IZnh3UVFMSkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpNb2RlbCIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfX0dJa3dBTElFZUN0WU1YcHBmcUxNdyIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX2hYSzZJQUxMRWVDdFlNWHBwZnFMTXciIHR5cGU9IlBhcHlydXNVTUxDbGFzc0RpYWdyYW0iIG5hbWU9IlJPUy1Ub3BpY3MiIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2tkV244QUxMRWVDdFlNWHBwZnFMTXciIHR5cGU9IjIwMDciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rZGdZOEFMTEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfa2RnWThRTExFZUN0WU1YcHBmcUxNdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfa2RnWThnTExFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfa2RnWTh3TExFZUN0WU1YcHBmcUxNdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9rZGdZOUFMTEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2tkZ1k5UUxMRWVDdFlNWHBwZnFMTXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rZGdZOWdMTEVlQ3RZTVhwcGZxTE13IiB0eXBlPSI1MDI2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9rZGdZOXdMTEVlQ3RZTVhwcGZxTE13IiB0eXBlPSI3MDE2Ij4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfbG9kSklBTExFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAwOSIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9sb2RKSWdMTEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2xvZEpJd0xMRWVDdFlNWHBwZnFMTXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbG9kSkpBTExFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2xvZEpKUUxMRWVDdFlNWHBwZnFMTXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9sb2RKSmdMTEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9sb2RKSndMTEVlQ3RZTVhwcGZxTE13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUkN5M1FBTE1FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJQYXB5cnVzSHlwZXJMaW5rX0RpYWdyYW0iIHJlZmVyZW5jZXM9Il8wd2NiOEFMTEVlQ3RZTVhwcGZxTE13Ij4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUkN5M1FRTE1FZUN0WU1YcHBmcUxNdyIga2V5PSJ0b29sdGlwX3RleHQiIHZhbHVlPSJzdGRfbXNncyIvPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9SQ3kzUWdMTUVlQ3RZTVhwcGZxTE13IiBrZXk9ImRpYWdyYW1fbmFtZSIgdmFsdWU9InN0ZF9tc2dzIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbG9kSktBTExFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTAxNyIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2xvZEpLUUxMRWVDdFlNWHBwZnFMTXciIHR5cGU9IjcwMTAiPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbG9kSktnTExFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI193eVM2Z0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbG9kSklRTExFZUN0WU1YcHBmcUxNdyIgeD0iMzAiIHk9IjE1Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2w5QkQ0QUxMRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMDkiIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbDlLMDRBTExFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9sOUswNFFMTEVlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2w5SzA0Z0xMRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9sOUswNHdMTEVlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbDlLMDVBTExFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbDlLMDVRTExFZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2FRYUxjQUxPRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iUGFweXJ1c0h5cGVyTGlua19EaWFncmFtIiByZWZlcmVuY2VzPSJfWHUyREVBTE5FZUN0WU1YcHBmcUxNdyI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2FRYUxjUUxPRWVDdFlNWHBwZnFMTXciIGtleT0idG9vbHRpcF90ZXh0IiB2YWx1ZT0iZGlzZ25vc3RpYy1tc2dzIi8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2FRYUxjZ0xPRWVDdFlNWHBwZnFMTXciIGtleT0iZGlhZ3JhbV9uYW1lIiB2YWx1ZT0iZGlzZ25vc3RpYy1tc2dzIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbDlLMDVnTExFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTAxNyIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2w5SzA1d0xMRWVDdFlNWHBwZnFMTXciIHR5cGU9IjcwMTAiPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbDlLMDZBTExFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19feEE2WUFIdkVlQ1FRT0tyaE9fZklRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbDlCRDRRTExFZUN0WU1YcHBmcUxNdyIgeD0iMjY1IiB5PSIxNSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9uVFM2VUFMTEVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDA5IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX25UUzZVZ0xMRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfblRTNlV3TExFZUN0WU1YcHBmcUxNdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9uVFM2VkFMTEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfblRTNlZRTExFZUN0WU1YcHBmcUxNdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX25UUzZWZ0xMRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX25UUzZWd0xMRWVDdFlNWHBwZnFMTXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9GTWJYSUFMVkVlQ0x5UGhvN1VIVkhRIiBzb3VyY2U9IlBhcHlydXNIeXBlckxpbmtfRGlhZ3JhbSIgcmVmZXJlbmNlcz0iX2VUc2FzQUxPRWVDdFlNWHBwZnFMTXciPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9GTWJYSVFMVkVlQ0x5UGhvN1VIVkhRIiBrZXk9InRvb2x0aXBfdGV4dCIgdmFsdWU9Imdlb21ldHJ5LW1zZ3MiLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRk1iWElnTFZFZUNMeVBobzdVSFZIUSIga2V5PSJkaWFncmFtX25hbWUiIHZhbHVlPSJnZW9tZXRyeS1tc2dzIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfblRTNldBTExFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTAxNyIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX25UUzZXUUxMRWVDdFlNWHBwZnFMTXciIHR5cGU9IjcwMTAiPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfblRTNldnTExFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19EZjRfNEFId0VlQ1FRT0tyaE9fZklRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfblRTNlVRTExFZUN0WU1YcHBmcUxNdyIgeD0iMzAiIHk9IjE0MCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9ubmo2SUFMTEVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDA5IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX25uajZJZ0xMRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbm5qNkl3TExFZUN0WU1YcHBmcUxNdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9ubmo2SkFMTEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbm5qNkpRTExFZUN0WU1YcHBmcUxNdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX25uajZKZ0xMRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX25uajZKd0xMRWVDdFlNWHBwZnFMTXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9BNndxY0FMUkVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlBhcHlydXNIeXBlckxpbmtfRGlhZ3JhbSIgcmVmZXJlbmNlcz0iX3BZeURVQUxQRWVDdFlNWHBwZnFMTXciPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9BNndxY1FMUkVlQ3RZTVhwcGZxTE13IiBrZXk9InRvb2x0aXBfdGV4dCIgdmFsdWU9Im5hdi1tc2dzIi8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0E2d3FjZ0xSRWVDdFlNWHBwZnFMTXciIGtleT0iZGlhZ3JhbV9uYW1lIiB2YWx1ZT0ibmF2LW1zZ3MiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9ubmo2S0FMTEVlQ3RZTVhwcGZxTE13IiB0eXBlPSI1MDE3Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbm5qNktRTExFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNzAxMCI+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9ubmo2S2dMTEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0dvNV9RQUh3RWVDUVFPS3JoT19mSVEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9ubmo2SVFMTEVlQ3RZTVhwcGZxTE13IiB4PSIyNjUiIHk9IjE0MCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9uM0R1c0FMTEVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDA5IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX24zRHVzZ0xMRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbjNEdXN3TExFZUN0WU1YcHBmcUxNdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9uM0R1dEFMTEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbjNEdXRRTExFZUN0WU1YcHBmcUxNdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX24zRHV0Z0xMRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX24zRHV0d0xMRWVDdFlNWHBwZnFMTXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il91ZzFsY0FMVEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlBhcHlydXNIeXBlckxpbmtfRGlhZ3JhbSIgcmVmZXJlbmNlcz0iX0lYQVprQUxSRWVDdFlNWHBwZnFMTXciPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il91ZzFsY1FMVEVlQ3RZTVhwcGZxTE13IiBrZXk9InRvb2x0aXBfdGV4dCIgdmFsdWU9InNlbnNvci1tc2dzIi8+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3VnMWxjZ0xURWVDdFlNWHBwZnFMTXciIGtleT0iZGlhZ3JhbV9uYW1lIiB2YWx1ZT0ic2Vuc29yLW1zZ3MiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9uM0R1dUFMTEVlQ3RZTVhwcGZxTE13IiB0eXBlPSI1MDE3Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbjNEdXVRTExFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNzAxMCI+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9uM0R1dWdMTEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0pTb2FrQUh3RWVDUVFPS3JoT19mSVEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9uM0R1c1FMTEVlQ3RZTVhwcGZxTE13IiB4PSIzMCIgeT0iMjcwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX29KX1J3QUxMRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMDkiIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfb0pfUndnTExFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vSl9Sd3dMTEVlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX29KX1J4QUxMRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vSl9SeFFMTEVlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfb0pfUnhnTExFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb0pfUnh3TExFZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3dXSEZBQUxURWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iUGFweXJ1c0h5cGVyTGlua19EaWFncmFtIiByZWZlcmVuY2VzPSJfa1l4d1VBTFRFZUN0WU1YcHBmcUxNdyI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3dXSEZBUUxURWVDdFlNWHBwZnFMTXciIGtleT0idG9vbHRpcF90ZXh0IiB2YWx1ZT0iYWN0aW9uTGliLW1zZ3MiLz4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfd1dIRkFnTFRFZUN0WU1YcHBmcUxNdyIga2V5PSJkaWFncmFtX25hbWUiIHZhbHVlPSJhY3Rpb25MaWItbXNncyIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX29KX1J5QUxMRWVDdFlNWHBwZnFMTXciIHR5cGU9IjUwMTciLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9vSl9SeVFMTEVlQ3RZTVhwcGZxTE13IiB0eXBlPSI3MDEwIj4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX29KX1J5Z0xMRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTWx5TllBSHdFZUNRUU9LcmhPX2ZJUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX29KX1J3UUxMRWVDdFlNWHBwZnFMTXciIHg9IjI2NSIgeT0iMjcwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1FLWVN3S3hZRWVDSkQ0Nkd0RHNBQkEiIHR5cGU9IjMwMDkiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1FLWVN3cXhZRWVDSkQ0Nkd0RHNBQkEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUUtZU3c2eFlFZUNKRDQ2R3REc0FCQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9RS1lTeEt4WUVlQ0pENDZHdERzQUJBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUUtZU3hheFlFZUNKRDQ2R3REc0FCQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1FLWVN4cXhZRWVDSkQ0Nkd0RHNBQkEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1FLWVN4NnhZRWVDSkQ0Nkd0RHNBQkEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1FLWVN5S3hZRWVDSkQ0Nkd0RHNBQkEiIHR5cGU9IjUwMTciLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9RS1lTeWF4WUVlQ0pENDZHdERzQUJBIiB0eXBlPSI3MDEwIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1FLWVN5cXhZRWVDSkQ0Nkd0RHNBQkEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1FLWVN5NnhZRWVDSkQ0Nkd0RHNBQkEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfUUpDMkFLeFlFZUNKRDQ2R3REc0FCQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1FLWVN3YXhZRWVDSkQ0Nkd0RHNBQkEiIHg9IjMwIiB5PSI0MDgiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfa2RnWS1BTExFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfZHRfeTRBSHRFZUNRUU9LcmhPX2ZJUSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfa2RXbjhRTExFZUN0WU1YcHBmcUxNdyIgeD0iMzUiIHk9IjMwIiB3aWR0aD0iNjE2IiBoZWlnaHQ9IjY0MSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfbDBaSDBBTFZFZUNMeVBobzdVSFZIUSIgdHlwZT0iMjAxNiIgZWxlbWVudD0iX0hmeHdRQUxKRWVDdFlNWHBwZnFMTXciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9sMFpIMGdMVkVlQ0x5UGhvN1VIVkhRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbDBaSDB3TFZFZUNMeVBobzdVSFZIUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbDBaSDFBTFZFZUNMeVBobzdVSFZIUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbDBaSDFRTFZFZUNMeVBobzdVSFZIUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9sMFpIMWdMVkVlQ0x5UGhvN1VIVkhRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2wwWkgxd0xWRWVDTHlQaG83VUhWSFEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9sMFpIMkFMVkVlQ0x5UGhvN1VIVkhRIiB0eXBlPSIwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9sMFpIMlFMVkVlQ0x5UGhvN1VIVkhRIiB5PSI1Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbDBaSDBRTFZFZUNMeVBobzdVSFZIUSIgeD0iNTUiIHk9IjYwNSIgd2lkdGg9IjM0IiBoZWlnaHQ9IjIwIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX2hYSzZJUUxMRWVDdFlNWHBwZnFMTXciLz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3pSaDNzQUhyRWVDUVFPS3JoT19mSVEiLz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il8wd2NiOEFMTEVlQ3RZTVhwcGZxTE13IiB0eXBlPSJQYXB5cnVzVU1MQ2xhc3NEaWFncmFtIiBuYW1lPSJzdGRfbXNncyIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfMWs1WHNBTExFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMjAwNyIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8xazVYc2dMTEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMWs1WHN3TExFZUN0WU1YcHBmcUxNdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMWs1WHRBTExFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMWs1WHRRTExFZUN0WU1YcHBmcUxNdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8xazVYdGdMTEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzFrNVh0d0xMRWVDdFlNWHBwZnFMTXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8xazVYdUFMTEVlQ3RZTVhwcGZxTE13IiB0eXBlPSI1MDI2Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8xazVYdVFMTEVlQ3RZTVhwcGZxTE13IiB0eXBlPSI3MDE2Ij4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfMjZreE1BTExFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8yNmt4TWdMTEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzI2a3hNd0xMRWVDdFlNWHBwZnFMTXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMjZreE5BTExFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzI2a3hOUUxMRWVDdFlNWHBwZnFMTXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8yNmt4TmdMTEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8yNmt4TndMTEVlQ3RZTVhwcGZxTE13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8yNmt4T0FMTEVlQ3RZTVhwcGZxTE13IiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il8yNmt4T1FMTEVlQ3RZTVhwcGZxTE13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iXzI2a3hPZ0xMRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il8yNmt4T3dMTEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8yNmt4UEFMTEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzI2a3hQUUxMRWVDdFlNWHBwZnFMTXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfMjZreFBnTExFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iXzI2a3hQd0xMRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzI2a3hRQUxMRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzI2a3hNUUxMRWVDdFlNWHBwZnFMTXciIHg9IjIwIiB5PSIxNSIgd2lkdGg9IjEwMCIgaGVpZ2h0PSIzNCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il8zVFVCVUFMTEVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzNUVUJVZ0xMRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfM1RVQlV3TExFZUN0WU1YcHBmcUxNdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8zVFVCVkFMTEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfM1RVQlZRTExFZUN0WU1YcHBmcUxNdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzNUVUJWZ0xMRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzNUVUJWd0xMRWVDdFlNWHBwZnFMTXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzNUVUJXQUxMRWVDdFlNWHBwZnFMTXciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzNUVUJXUUxMRWVDdFlNWHBwZnFMTXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfM1RVQldnTExFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iXzNUVUJXd0xMRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzNUVUJYQUxMRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfM1RVQlhRTExFZUN0WU1YcHBmcUxNdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il8zVFVCWGdMTEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfM1RVQlh3TExFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfM1RVQllBTExFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xdVhtQUFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfM1RVQlVRTExFZUN0WU1YcHBmcUxNdyIgeD0iMTU1IiB5PSIxNSIgd2lkdGg9IjEwMCIgaGVpZ2h0PSIzNCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il8zOWVfc0FMTEVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzM5ZV9zZ0xMRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMzllX3N3TExFZUN0WU1YcHBmcUxNdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8zOWVfdEFMTEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMzllX3RRTExFZUN0WU1YcHBmcUxNdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzM5ZV90Z0xMRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzM5ZV90d0xMRWVDdFlNWHBwZnFMTXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzM5ZV91QUxMRWVDdFlNWHBwZnFMTXciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzM5ZV91UUxMRWVDdFlNWHBwZnFMTXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfMzllX3VnTExFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iXzM5ZV91d0xMRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzM5ZV92QUxMRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfMzllX3ZRTExFZUN0WU1YcHBmcUxNdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il8zOWVfdmdMTEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfMzllX3Z3TExFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMzllX3dBTExFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19uQ091b0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMzllX3NRTExFZUN0WU1YcHBmcUxNdyIgeD0iMjg1IiB5PSIxNSIgd2lkdGg9IjEwMCIgaGVpZ2h0PSIzNCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il85QTFrMEFMTEVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzlBX1YwQUxMRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOUFfVjBRTExFZUN0WU1YcHBmcUxNdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il85QV9WMGdMTEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOUFfVjB3TExFZUN0WU1YcHBmcUxNdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzlBX1YxQUxMRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzlBX1YxUUxMRWVDdFlNWHBwZnFMTXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzlBX1YxZ0xMRWVDdFlNWHBwZnFMTXciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzlBX1Yxd0xMRWVDdFlNWHBwZnFMTXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfOUFfVjJBTExFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iXzlBX1YyUUxMRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzlBX1YyZ0xMRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfOUFfVjJ3TExFZUN0WU1YcHBmcUxNdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il85QV9WM0FMTEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfOUFfVjNRTExFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfOUFfVjNnTExFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19neXQ0WUFILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfOUExazBRTExFZUN0WU1YcHBmcUxNdyIgeD0iMjAiIHk9IjcwIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjM0Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzlTSUpJQUxMRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOVNJSklnTExFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il85U0lKSXdMTEVlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzlTSUpKQUxMRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il85U0lKSlFMTEVlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOVNJSkpnTExFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOVNJSkp3TExFZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfOVNJSktBTExFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfOVNJSktRTExFZUN0WU1YcHBmcUxNdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il85U0lKS2dMTEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfOVNJSkt3TExFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfOVNJSkxBTExFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il85U0lKTFFMTEVlQ3RZTVhwcGZxTE13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iXzlTSUpMZ0xMRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il85U0lKTHdMTEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il85U0lKTUFMTEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3FhUzJvQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il85U0lKSVFMTEVlQ3RZTVhwcGZxTE13IiB4PSIxNTUiIHk9IjcwIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjM0Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzlqMnlVQUxMRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOWoyeVVnTExFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il85ajJ5VXdMTEVlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzlqMnlWQUxMRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il85ajJ5VlFMTEVlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOWoyeVZnTExFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOWoyeVZ3TExFZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfOWoyeVdBTExFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfOWoyeVdRTExFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iXzlqMnlXZ0xMRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il85ajJ5V3dMTEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9UNmJmTUt1akVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il85ajJ5WEFMTEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzlqMnlYUUxMRWVDdFlNWHBwZnFMTXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfOWoyeVhnTExFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iXzlqMnlYd0xMRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzlqMnlZQUxMRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1Y4eENnQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il85ajJ5VVFMTEVlQ3RZTVhwcGZxTE13IiB4PSIyODUiIHk9IjcwIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjkxIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzkyVnBjQUxMRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOTJWcGNnTExFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il85MlZwY3dMTEVlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzkyVnBkQUxMRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il85MlZwZFFMTEVlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOTJWcGRnTExFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOTJWcGR3TExFZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfOTJWcGVBTExFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfOTJWcGVRTExFZUN0WU1YcHBmcUxNdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il85MlZwZWdMTEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfOTJWcGV3TExFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfOTJWcGZBTExFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il85MlZwZlFMTEVlQ3RZTVhwcGZxTE13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iXzkyVnBmZ0xMRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il85MlZwZndMTEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il85MlZwZ0FMTEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3Z6akhZQUlMRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il85MlZwY1FMTEVlQ3RZTVhwcGZxTE13IiB4PSIyMCIgeT0iMTI1IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjM0Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXy1JT0RvQUxMRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfLUlPRG9nTExFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tSU9Eb3dMTEVlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXy1JT0RwQUxMRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tSU9EcFFMTEVlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfLUlPRHBnTExFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfLUlPRHB3TExFZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfLUlPRHFBTExFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfLUlPRHFRTExFZUN0WU1YcHBmcUxNdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il8tSU9EcWdMTEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfLUlPRHF3TExFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfLUlPRHJBTExFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il8tSU9EclFMTEVlQ3RZTVhwcGZxTE13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iXy1JT0RyZ0xMRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il8tSU9EcndMTEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8tSU9Ec0FMTEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX05ablRzQUlVRWVDVnJMRUJINWVqblEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8tSU9Eb1FMTEVlQ3RZTVhwcGZxTE13IiB4PSIxNTUiIHk9IjEyNSIgd2lkdGg9IjEwMCIgaGVpZ2h0PSIzNCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9FRlpNc0FMTUVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0VGWk1zZ0xNRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRUZaTXN3TE1FZUN0WU1YcHBmcUxNdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9FRlpNdEFMTUVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRUZaTXRRTE1FZUN0WU1YcHBmcUxNdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0VGWk10Z0xNRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0VGWk10d0xNRWVDdFlNWHBwZnFMTXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0VGWk11QUxNRWVDdFlNWHBwZnFMTXciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0VGWk11UUxNRWVDdFlNWHBwZnFMTXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfRUZaTXVnTE1FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0VGWk11d0xNRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0VGWk12QUxNRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfRUZaTXZRTE1FZUN0WU1YcHBmcUxNdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9FRlpNdmdMTUVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfRUZaTXZ3TE1FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfRUZaTXdBTE1FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI182Tkpma0FLbkVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfRUZaTXNRTE1FZUN0WU1YcHBmcUxNdyIgeD0iMjg1IiB5PSIxODUiIHdpZHRoPSIxMDAiIGhlaWdodD0iMzQiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfRVdZUEFBTE1FZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9FV1lQQWdMTUVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0VXWVBBd0xNRWVDdFlNWHBwZnFMTXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRVdZUEJBTE1FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0VXWVBCUUxNRWVDdFlNWHBwZnFMTXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9FV1lQQmdMTUVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9FV1lQQndMTUVlQ3RZTVhwcGZxTE13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9FV1lQQ0FMTUVlQ3RZTVhwcGZxTE13IiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9FV1lQQ1FMTUVlQ3RZTVhwcGZxTE13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0VXWVBDZ0xNRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9FV1lQQ3dMTUVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9FV1lQREFMTUVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0VXWVBEUUxNRWVDdFlNWHBwZnFMTXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfRVdZUERnTE1FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0VXWVBEd0xNRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0VXWVBFQUxNRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfV3I5cndBSzNFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0VXWVBBUUxNRWVDdFlNWHBwZnFMTXciIHg9IjIwIiB5PSIxODAiIHdpZHRoPSIxMDAiIGhlaWdodD0iMzQiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfTG5LbWdLbElFZUNEWC1SNHVweElwZyIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9MbkttZ3FsSUVlQ0RYLVI0dXB4SXBnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0xuS21nNmxJRWVDRFgtUjR1cHhJcGciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTG5LbWhLbElFZUNEWC1SNHVweElwZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0xuS21oYWxJRWVDRFgtUjR1cHhJcGciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9MbkttaHFsSUVlQ0RYLVI0dXB4SXBnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9MbkttaDZsSUVlQ0RYLVI0dXB4SXBnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9MbkttaUtsSUVlQ0RYLVI0dXB4SXBnIiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9MbkttaWFsSUVlQ0RYLVI0dXB4SXBnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9MbkttaXFsSUVlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0xuS21pNmxJRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9MbkttaktsSUVlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9MbkttamFsSUVlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0xuS21qcWxJRWVDRFgtUjR1cHhJcGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0xuS21qNmxJRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfTG5LbWtLbElFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0xuS21rYWxJRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0xuS21rcWxJRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTG1ST29LbElFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0xuS21nYWxJRWVDRFgtUjR1cHhJcGciIHg9IjE1MyIgeT0iMTg1IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjM0Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0stSzVZS3VrRWVDV0ZKeldrZmhQSGciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSy1LNVlxdWtFZUNXRkp6V2tmaFBIZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LLUs1WTZ1a0VlQ1dGSnpXa2ZoUEhnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0stSzVaS3VrRWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LLUs1WmF1a0VlQ1dGSnpXa2ZoUEhnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSy1LNVpxdWtFZUNXRkp6V2tmaFBIZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSy1LNVo2dWtFZUNXRkp6V2tmaFBIZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfSy1LNWFLdWtFZUNXRkp6V2tmaFBIZyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfSy1LNWFhdWtFZUNXRkp6V2tmaFBIZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfSy1LNWFxdWtFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9LLUs1YTZ1a0VlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfSy1LNWJLdWtFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfSy1LNWJhdWtFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9LLUs1YnF1a0VlQ1dGSnpXa2ZoUEhnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9LLUs1YjZ1a0VlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0stSzVjS3VrRWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9LLUs1Y2F1a0VlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9LLUs1Y3F1a0VlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0s5bERnS3VrRWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9LLUs1WWF1a0VlQ1dGSnpXa2ZoUEhnIiB4PSIyMCIgeT0iMjQzIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjM0Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX01ldXRNS3VrRWVDV0ZKeldrZmhQSGciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTWV1dE1xdWtFZUNXRkp6V2tmaFBIZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NZXV0TTZ1a0VlQ1dGSnpXa2ZoUEhnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01ldXROS3VrRWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NZXV0TmF1a0VlQ1dGSnpXa2ZoUEhnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTWV1dE5xdWtFZUNXRkp6V2tmaFBIZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTWV1dE42dWtFZUNXRkp6V2tmaFBIZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTWV1dE9LdWtFZUNXRkp6V2tmaFBIZyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfTWV1dE9hdWtFZUNXRkp6V2tmaFBIZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfTWV1dE9xdWtFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9NZXV0TzZ1a0VlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfTWV1dFBLdWtFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTWV1dFBhdWtFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9NZXV0UHF1a0VlQ1dGSnpXa2ZoUEhnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9NZXV0UDZ1a0VlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX01ldXRRS3VrRWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9NZXV0UWF1a0VlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9NZXV0UXF1a0VlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX01lSTNVS3VrRWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9NZXV0TWF1a0VlQ1dGSnpXa2ZoUEhnIiB4PSIxNTMiIHk9IjI0MyIgd2lkdGg9IjEwMCIgaGVpZ2h0PSIzNCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9RQ1FkVUt1dkVlQ1dGSnpXa2ZoUEhnIiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1FDUWRVcXV2RWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUUNRZFU2dXZFZUNXRkp6V2tmaFBIZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9RQ1FkVkt1dkVlQ1dGSnpXa2ZoUEhnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUUNRZFZhdXZFZUNXRkp6V2tmaFBIZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1FDUWRWcXV2RWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1FDUWRWNnV2RWVDV0ZKeldrZmhQSGciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1FDUWRXS3V2RWVDV0ZKeldrZmhQSGciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1FDUWRXYXV2RWVDV0ZKeldrZmhQSGciIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfOEFEZDBLdXZFZUNXRkp6V2tmaFBIZyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19ueExZS3V2RWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19ueExZYXV2RWVDV0ZKeldrZmhQSGciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI2MCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfN19kbjhLdXZFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzhBRGQwYXV2RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9Bai1VOEt1d0VlQ1dGSnpXa2ZoUEhnIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRVZZS0FLdXdFZUNXRkp6V2tmaFBIZyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRVZZS0FhdXdFZUNXRkp6V2tmaFBIZyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjYwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19Balg0QUt1d0VlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQWotVThhdXdFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0ZJb3k4S3V3RWVDV0ZKeldrZmhQSGciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9KaWtBa0t1d0VlQ1dGSnpXa2ZoUEhnIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9KaWtBa2F1d0VlQ1dGSnpXa2ZoUEhnIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNjAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0ZJQ1dBS3V3RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9GSW95OGF1d0VlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfUUNRZFdxdXZFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9RQ1FkVzZ1dkVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfUUNRZFhLdXZFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfUUNRZFhhdXZFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9RQ1FkWHF1dkVlQ1dGSnpXa2ZoUEhnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9RQ1FkWDZ1dkVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX1FDUWRZS3V2RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9RQ1FkWWF1dkVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9RQ1FkWXF1dkVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19RQmdQWUt1dkVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfUUNRZFVhdXZFZUNXRkp6V2tmaFBIZyIgeD0iMjUiIHk9IjI5MiIgd2lkdGg9IjEwNiIgaGVpZ2h0PSI4MCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9XN1BSNUt1d0VlQ1dGSnpXa2ZoUEhnIiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1c3UFI1YXV3RWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVzdQUjVxdXdFZUNXRkp6V2tmaFBIZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9XN1BSNTZ1d0VlQ1dGSnpXa2ZoUEhnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVzdQUjZLdXdFZUNXRkp6V2tmaFBIZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1c3UFI2YXV3RWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1c3UFI2cXV3RWVDV0ZKeldrZmhQSGciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1c3UFI2NnV3RWVDV0ZKeldrZmhQSGciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1c3UFI3S3V3RWVDV0ZKeldrZmhQSGciIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfVzdQUjdhdXdFZUNXRkp6V2tmaFBIZyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1c3UFI3cXV3RWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1c3UFI3NnV3RWVDV0ZKeldrZmhQSGciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI2MCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfVzdQUjRhdXdFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1c3UFI4S3V3RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9XN1BSOWF1d0VlQ1dGSnpXa2ZoUEhnIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVzdQUjlxdXdFZUNXRkp6V2tmaFBIZyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVzdQUjk2dXdFZUNXRkp6V2tmaFBIZyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjYwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19XN1BSNDZ1d0VlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVzdQUi1LdXdFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1c3UFItYXV3RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfVzdQUi1xdXdFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX1c3UFItNnV3RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1c3UFJfS3V3RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfVzdQUl9hdXdFZUNXRkp6V2tmaFBIZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfVzdQUl9xdXdFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9XN1BSXzZ1d0VlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfVzdQU0FLdXdFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfVzdQU0FhdXdFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfVzdQUjRLdXdFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1c3UFNBcXV3RWVDV0ZKeldrZmhQSGciIHg9IjE5MCIgeT0iMjkwIiB3aWR0aD0iMTcxIiBoZWlnaHQ9IjgwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0lyeWg0S3UyRWVDV0ZKeldrZmhQSGciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSXJ5aDRxdTJFZUNXRkp6V2tmaFBIZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9JcnloNDZ1MkVlQ1dGSnpXa2ZoUEhnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0lyeWg1S3UyRWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9JcnloNWF1MkVlQ1dGSnpXa2ZoUEhnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSXJ5aDVxdTJFZUNXRkp6V2tmaFBIZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSXJ5aDU2dTJFZUNXRkp6V2tmaFBIZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfSXJ5aDZLdTJFZUNXRkp6V2tmaFBIZyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfSXJ5aDZhdTJFZUNXRkp6V2tmaFBIZyIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9NUS1mNEt1MkVlQ1dGSnpXa2ZoUEhnIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUXh4S2dLdTJFZUNXRkp6V2tmaFBIZyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUXh4S2dhdTJFZUNXRkp6V2tmaFBIZyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjYwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19NUVlDOEt1MkVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTVEtZjRhdTJFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1NZbFhVS3UyRWVDV0ZKeldrZmhQSGciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9XMkdyZ0t1MkVlQ1dGSnpXa2ZoUEhnIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9XMkdyZ2F1MkVlQ1dGSnpXa2ZoUEhnIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNjAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1NYX2hjS3UyRWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9TWWxYVWF1MkVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfSXJ5aDZxdTJFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9JcnloNjZ1MkVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfSXJ5aDdLdTJFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfSXJ5aDdhdTJFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9JcnloN3F1MkVlQ1dGSnpXa2ZoUEhnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9JcnloNzZ1MkVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0lyeWg4S3UyRWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9JcnloOGF1MkVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9JcnloOHF1MkVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19JckM3QUt1MkVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfSXJ5aDRhdTJFZUNXRkp6V2tmaFBIZyIgeD0iMjUiIHk9IjQwOCIgd2lkdGg9IjE1MiIgaGVpZ2h0PSI4MCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9kbERQd0t1MkVlQ1dGSnpXa2ZoUEhnIiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2RsTkF3S3UyRWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZGxOQXdhdTJFZUNXRkp6V2tmaFBIZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9kbE5Bd3F1MkVlQ1dGSnpXa2ZoUEhnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZGxOQXc2dTJFZUNXRkp6V2tmaFBIZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2RsTkF4S3UyRWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2RsTkF4YXUyRWVDV0ZKeldrZmhQSGciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2RsTkF4cXUyRWVDV0ZKeldrZmhQSGciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2RsTkF4NnUyRWVDV0ZKeldrZmhQSGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2RsTkF5S3UyRWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfZGxOQXlhdTJFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2RsTkF5cXUyRWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2RsTkF5NnUyRWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZGxOQXpLdTJFZUNXRkp6V2tmaFBIZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZGxOQXphdTJFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9kbE5BenF1MkVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfZGxOQXo2dTJFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZGxOQTBLdTJFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ka1RvNEt1MkVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZGxEUHdhdTJFZUNXRkp6V2tmaFBIZyIgeD0iMjk2IiB5PSI0MTEiIHdpZHRoPSIxMDAiIGhlaWdodD0iMzQiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfaGp1RXdLdTJFZUNXRkp6V2tmaFBIZyIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9oanVFd3F1MkVlQ1dGSnpXa2ZoUEhnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2hqdUV3NnUyRWVDV0ZKeldrZmhQSGciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfaGp1RXhLdTJFZUNXRkp6V2tmaFBIZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2hqdUV4YXUyRWVDV0ZKeldrZmhQSGciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9oanVFeHF1MkVlQ1dGSnpXa2ZoUEhnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9oanVFeDZ1MkVlQ1dGSnpXa2ZoUEhnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9oanVFeUt1MkVlQ1dGSnpXa2ZoUEhnIiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9oanVFeWF1MkVlQ1dGSnpXa2ZoUEhnIiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX21DUjZ3S3UyRWVDV0ZKeldrZmhQSGciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9xZk15QUt1MkVlQ1dGSnpXa2ZoUEhnIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9xZk15QWF1MkVlQ1dGSnpXa2ZoUEhnIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNjAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX21CaVQ0S3UyRWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9tQ1I2d2F1MkVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfcnZoS1lLdTJFZUNXRkp6V2tmaFBIZyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3VtTkRvS3UyRWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3VtTkRvYXUyRWVDV0ZKeldrZmhQSGciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI2MCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcnV4amdLdTJFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3J2aEtZYXUyRWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9MYzhsY0t1M0VlQ1dGSnpXa2ZoUEhnIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19MY0ROa0t1M0VlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTGM4bGNhdTNFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0NrUzMwS3U1RWVDV0ZKeldrZmhQSGciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0NqMkw0S3U1RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9Da1MzMGF1NUVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfaGp1RXlxdTJFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9oanVFeTZ1MkVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfaGp1RXpLdTJFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfaGp1RXphdTJFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9oanVFenF1MkVlQ1dGSnpXa2ZoUEhnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9oanVFejZ1MkVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2hqdUUwS3UyRWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9oanVFMGF1MkVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9oanVFMHF1MkVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19oaTBzNEt1MkVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfaGp1RXdhdTJFZUNXRkp6V2tmaFBIZyIgeD0iMjUiIHk9IjUwNSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9JdWxQMEt1NUVlQ1dGSnpXa2ZoUEhnIiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0l1NEt3S3U1RWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSXU0S3dhdTVFZUNXRkp6V2tmaFBIZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9JdTRLd3F1NUVlQ1dGSnpXa2ZoUEhnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSXU0S3c2dTVFZUNXRkp6V2tmaFBIZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0l1NEt4S3U1RWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0l1NEt4YXU1RWVDV0ZKeldrZmhQSGciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0l1NEt4cXU1RWVDV0ZKeldrZmhQSGciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0l1NEt4NnU1RWVDV0ZKeldrZmhQSGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0l1NEt5S3U1RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfSXU0S3lhdTVFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0l1NEt5cXU1RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0l1NEt5NnU1RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfSXU0S3pLdTVFZUNXRkp6V2tmaFBIZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfSXU0S3phdTVFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9JdTRLenF1NUVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfSXU0S3o2dTVFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfSXU0SzBLdTVFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19JdVNVNEt1NUVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfSXVsUDBhdTVFZUNXRkp6V2tmaFBIZyIgeD0iMjk1IiB5PSI0NjUiIHdpZHRoPSIxMDAiIGhlaWdodD0iMzQiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfU2N0aUFLdTVFZUNXRkp6V2tmaFBIZyIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9TY3RpQWF1NUVlQ1dGSnpXa2ZoUEhnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1NjdGlBcXU1RWVDV0ZKeldrZmhQSGciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfU2N0aUE2dTVFZUNXRkp6V2tmaFBIZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1NjdGlCS3U1RWVDV0ZKeldrZmhQSGciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9TY3RpQmF1NUVlQ1dGSnpXa2ZoUEhnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9TY3RpQnF1NUVlQ1dGSnpXa2ZoUEhnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9TY3RpQjZ1NUVlQ1dGSnpXa2ZoUEhnIiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9TY3RpQ0t1NUVlQ1dGSnpXa2ZoUEhnIiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1NjdGlDYXU1RWVDV0ZKeldrZmhQSGciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9TY3RpQ3F1NUVlQ1dGSnpXa2ZoUEhnIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9TY3RpQzZ1NUVlQ1dGSnpXa2ZoUEhnIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNjAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1NjanhBYXU1RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9TY3RpREt1NUVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfU2N0aURhdTVFZUNXRkp6V2tmaFBIZyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1NjdGlEcXU1RWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1NjdGlENnU1RWVDV0ZKeldrZmhQSGciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI2MCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfU2NqeEFxdTVFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1NjdGlFS3U1RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9TY3RpRWF1NUVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX1NjdGlFcXU1RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9TY3RpRTZ1NUVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9TY3RpRkt1NUVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1NjdGlGYXU1RWVDV0ZKeldrZmhQSGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1NjdGlGcXU1RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfU2N0aUY2dTVFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX1NjdGlHS3U1RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1NjdGlHYXU1RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1NjanhBS3U1RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9TY3RpR3F1NUVlQ1dGSnpXa2ZoUEhnIiB4PSIxNTMiIHk9IjUyOCIgd2lkdGg9IjE1MiIgaGVpZ2h0PSI4MCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9kaldmUmF1NUVlQ1dGSnpXa2ZoUEhnIiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2RqV2ZScXU1RWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZGpXZlI2dTVFZUNXRkp6V2tmaFBIZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9kaldmU0t1NUVlQ1dGSnpXa2ZoUEhnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZGpXZlNhdTVFZUNXRkp6V2tmaFBIZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2RqV2ZTcXU1RWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2RqV2ZTNnU1RWVDV0ZKeldrZmhQSGciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2RqV2ZUS3U1RWVDV0ZKeldrZmhQSGciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2RqV2ZUYXU1RWVDV0ZKeldrZmhQSGciIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZGpXZlRxdTVFZUNXRkp6V2tmaFBIZyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2RqV2ZUNnU1RWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2RqV2ZVS3U1RWVDV0ZKeldrZmhQSGciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI2MCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfZGpXZlFhdTVFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2RqV2ZVYXU1RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9kaldmVXF1NUVlQ1dGSnpXa2ZoUEhnIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZGpXZlU2dTVFZUNXRkp6V2tmaFBIZyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZGpXZlZLdTVFZUNXRkp6V2tmaFBIZyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjYwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19kaldmUXF1NUVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZGpXZlZhdTVFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2RqV2ZWcXU1RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfZGpXZlY2dTVFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2RqV2ZXS3U1RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2RqV2ZXYXU1RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZGpXZldxdTVFZUNXRkp6V2tmaFBIZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZGpXZlc2dTVFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9kaldmWEt1NUVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfZGpXZlhhdTVFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZGpXZlhxdTVFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfZGpXZlFLdTVFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2RqV2ZYNnU1RWVDV0ZKeldrZmhQSGciIHg9IjMxMyIgeT0iNTMzIiB3aWR0aD0iMTUyIiBoZWlnaHQ9IjgwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzBJRE1oYXVfRWVDazNkLVdpd1c5RVEiIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMElETWhxdV9FZUNrM2QtV2l3VzlFUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wSURNaDZ1X0VlQ2szZC1XaXdXOUVRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzBJRE1pS3VfRWVDazNkLVdpd1c5RVEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wSURNaWF1X0VlQ2szZC1XaXdXOUVRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMElETWlxdV9FZUNrM2QtV2l3VzlFUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMElETWk2dV9FZUNrM2QtV2l3VzlFUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfMElETWpLdV9FZUNrM2QtV2l3VzlFUSIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfMElETWphdV9FZUNrM2QtV2l3VzlFUSIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il8wSURNanF1X0VlQ2szZC1XaXdXOUVRIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMElETWo2dV9FZUNrM2QtV2l3VzlFUSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMElETWtLdV9FZUNrM2QtV2l3VzlFUSIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjYwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI18wSURNZ2F1X0VlQ2szZC1XaXdXOUVRIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMElETWthdV9FZUNrM2QtV2l3VzlFUSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzBJRE1rcXVfRWVDazNkLVdpd1c5RVEiIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8wSURNazZ1X0VlQ2szZC1XaXdXOUVRIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wSURNbEt1X0VlQ2szZC1XaXdXOUVRIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNjAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzBJRE1ncXVfRWVDazNkLVdpd1c5RVEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8wSURNbGF1X0VlQ2szZC1XaXdXOUVRIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfMElETWxxdV9FZUNrM2QtV2l3VzlFUSIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il8wSURNbDZ1X0VlQ2szZC1XaXdXOUVRIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfMElETW1LdV9FZUNrM2QtV2l3VzlFUSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMElETW1hdV9FZUNrM2QtV2l3VzlFUSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il8wSURNbXF1X0VlQ2szZC1XaXdXOUVRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il8wSURNbTZ1X0VlQ2szZC1XaXdXOUVRIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iXzBJRE1uS3VfRWVDazNkLVdpd1c5RVEiLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il8wSURNbmF1X0VlQ2szZC1XaXdXOUVRIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8wSURNbnF1X0VlQ2szZC1XaXdXOUVRIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI18wSURNZ0t1X0VlQ2szZC1XaXdXOUVRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMElETW42dV9FZUNrM2QtV2l3VzlFUSIgeD0iNDA1IiB5PSIxNjUiIHdpZHRoPSIxNTIiIGhlaWdodD0iODAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfN05wV01LdV9FZUNrM2QtV2l3VzlFUSIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il83TnBXTWF1X0VlQ2szZC1XaXdXOUVRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzdOcFdNcXVfRWVDazNkLVdpd1c5RVEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfN05wV002dV9FZUNrM2QtV2l3VzlFUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzdOcFdOS3VfRWVDazNkLVdpd1c5RVEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il83TnBXTmF1X0VlQ2szZC1XaXdXOUVRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il83TnBXTnF1X0VlQ2szZC1XaXdXOUVRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il83TnBXTjZ1X0VlQ2szZC1XaXdXOUVRIiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il83TnBXT0t1X0VlQ2szZC1XaXdXOUVRIiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzdOcFdPYXVfRWVDazNkLVdpd1c5RVEiIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il83TnBXT3F1X0VlQ2szZC1XaXdXOUVRIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il83TnBXTzZ1X0VlQ2szZC1XaXdXOUVRIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNjAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzdOZmxNYXVfRWVDazNkLVdpd1c5RVEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il83TnBXUEt1X0VlQ2szZC1XaXdXOUVRIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfN05wV1BhdV9FZUNrM2QtV2l3VzlFUSIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzdOcFdQcXVfRWVDazNkLVdpd1c5RVEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzdOcFdQNnVfRWVDazNkLVdpd1c5RVEiIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI2MCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfN05mbE1xdV9FZUNrM2QtV2l3VzlFUSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzdOcFdRS3VfRWVDazNkLVdpd1c5RVEiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il83TnBXUWF1X0VlQ2szZC1XaXdXOUVRIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iXzdOcFdRcXVfRWVDazNkLVdpd1c5RVEiLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il83TnBXUTZ1X0VlQ2szZC1XaXdXOUVRIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il83TnBXUkt1X0VlQ2szZC1XaXdXOUVRIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzdOcFdSYXVfRWVDazNkLVdpd1c5RVEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzdOcFdScXVfRWVDazNkLVdpd1c5RVEiLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfN05wV1I2dV9FZUNrM2QtV2l3VzlFUSIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iXzdOcFdTS3VfRWVDazNkLVdpd1c5RVEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzdOcFdTYXVfRWVDazNkLVdpd1c5RVEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzdOZmxNS3VfRWVDazNkLVdpd1c5RVEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il83TnBXU3F1X0VlQ2szZC1XaXdXOUVRIiB4PSIzODUiIHk9IjI4MCIgd2lkdGg9IjE1MiIgaGVpZ2h0PSI4MCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9DNmxNdGF2QUVlQ2szZC1XaXdXOUVRIiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0M2bE10cXZBRWVDazNkLVdpd1c5RVEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQzZsTXQ2dkFFZUNrM2QtV2l3VzlFUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9DNmxNdUt2QUVlQ2szZC1XaXdXOUVRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQzZsTXVhdkFFZUNrM2QtV2l3VzlFUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0M2bE11cXZBRWVDazNkLVdpd1c5RVEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0M2bE11NnZBRWVDazNkLVdpd1c5RVEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0M2bE12S3ZBRWVDazNkLVdpd1c5RVEiIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0M2bE12YXZBRWVDazNkLVdpd1c5RVEiIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfQzZsTXZxdkFFZUNrM2QtV2l3VzlFUSIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0M2bE12NnZBRWVDazNkLVdpd1c5RVEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0M2bE13S3ZBRWVDazNkLVdpd1c5RVEiIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI2MCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfQzZsTXNhdkFFZUNrM2QtV2l3VzlFUSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0M2bE13YXZBRWVDazNkLVdpd1c5RVEiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9DNmxNd3F2QUVlQ2szZC1XaXdXOUVRIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQzZsTXc2dkFFZUNrM2QtV2l3VzlFUSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQzZsTXhLdkFFZUNrM2QtV2l3VzlFUSIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjYwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19DNmxNc3F2QUVlQ2szZC1XaXdXOUVRIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQzZsTXhhdkFFZUNrM2QtV2l3VzlFUSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0M2bE14cXZBRWVDazNkLVdpd1c5RVEiLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfQzZsTXg2dkFFZUNrM2QtV2l3VzlFUSIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0M2bE15S3ZBRWVDazNkLVdpd1c5RVEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0M2bE15YXZBRWVDazNkLVdpd1c5RVEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfQzZsTXlxdkFFZUNrM2QtV2l3VzlFUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfQzZsTXk2dkFFZUNrM2QtV2l3VzlFUSIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9DNmxNekt2QUVlQ2szZC1XaXdXOUVRIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfQzZsTXphdkFFZUNrM2QtV2l3VzlFUSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfQzZsTXpxdkFFZUNrM2QtV2l3VzlFUSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfQzZsTXNLdkFFZUNrM2QtV2l3VzlFUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0M2bE16NnZBRWVDazNkLVdpd1c5RVEiIHg9IjQxMCIgeT0iMzc3IiB3aWR0aD0iMTUyIiBoZWlnaHQ9IjgwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1paSlZZS3ZKRWVDRnZidExWX3pDSHciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfWlpKVllhdkpFZUNGdmJ0TFZfekNIdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9aWkpWWXF2SkVlQ0Z2YnRMVl96Q0h3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1paSlZZNnZKRWVDRnZidExWX3pDSHciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9aWkpWWkt2SkVlQ0Z2YnRMVl96Q0h3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfWlpKVlphdkpFZUNGdmJ0TFZfekNIdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWlpKVlpxdkpFZUNGdmJ0TFZfekNIdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfWlpKVlo2dkpFZUNGdmJ0TFZfekNIdyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfWlpKVmFLdkpFZUNGdmJ0TFZfekNIdyIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9aWkpWYWF2SkVlQ0Z2YnRMVl96Q0h3IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfWlpKVmFxdkpFZUNGdmJ0TFZfekNIdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWlpKVmE2dkpFZUNGdmJ0TFZfekNIdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjYwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19aWkFMY2F2SkVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfWlpKVmJLdkpFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1paSlZiYXZKRWVDRnZidExWX3pDSHciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9aWkpWYnF2SkVlQ0Z2YnRMVl96Q0h3IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9aWkpWYjZ2SkVlQ0Z2YnRMVl96Q0h3IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNjAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1paQUxjcXZKRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9aWkpWY0t2SkVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfWlpKVmNhdkpFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9aWkpWY3F2SkVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfWlpKVmM2dkpFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfWlpKVmRLdkpFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9aWkpWZGF2SkVlQ0Z2YnRMVl96Q0h3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9aWkpWZHF2SkVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX1paSlZkNnZKRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9aWkpWZUt2SkVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9aWkpWZWF2SkVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19aWkFMY0t2SkVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfWlpKVmVxdkpFZUNGdmJ0TFZfekNIdyIgeD0iNDM1IiB5PSI3MCIgd2lkdGg9IjE1MiIgaGVpZ2h0PSI4MCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9XMGw0aGF2S0VlQ0Z2YnRMVl96Q0h3IiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1cwbDRocXZLRWVDRnZidExWX3pDSHciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVzBsNGg2dktFZUNGdmJ0TFZfekNIdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9XMGw0aUt2S0VlQ0Z2YnRMVl96Q0h3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVzBsNGlhdktFZUNGdmJ0TFZfekNIdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1cwbDRpcXZLRWVDRnZidExWX3pDSHciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1cwbDRpNnZLRWVDRnZidExWX3pDSHciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1cwbDRqS3ZLRWVDRnZidExWX3pDSHciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1cwbDRqYXZLRWVDRnZidExWX3pDSHciIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfVzBsNGpxdktFZUNGdmJ0TFZfekNIdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1cwbDRqNnZLRWVDRnZidExWX3pDSHciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1cwbDRrS3ZLRWVDRnZidExWX3pDSHciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI2MCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfVzBsNGdhdktFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1cwbDRrYXZLRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9XMGw0a3F2S0VlQ0Z2YnRMVl96Q0h3IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVzBsNGs2dktFZUNGdmJ0TFZfekNIdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVzBsNGxLdktFZUNGdmJ0TFZfekNIdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjYwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19XMGw0Z3F2S0VlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVzBsNGxhdktFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1cwbDRscXZLRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfVzBsNGw2dktFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX1cwbDRtS3ZLRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1cwbDRtYXZLRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfVzBsNG1xdktFZUNGdmJ0TFZfekNIdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfVzBsNG02dktFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9XMGw0bkt2S0VlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfVzBsNG5hdktFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfVzBsNG5xdktFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfVzBsNGdLdktFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1cwbDRuNnZLRWVDRnZidExWX3pDSHciIHg9IjU4NSIgeT0iMzcwIiB3aWR0aD0iMTUyIiBoZWlnaHQ9IjgwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX20xT3FrYXZLRWVDRnZidExWX3pDSHciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbTFPcWtxdktFZUNGdmJ0TFZfekNIdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9tMU9xazZ2S0VlQ0Z2YnRMVl96Q0h3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX20xT3FsS3ZLRWVDRnZidExWX3pDSHciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9tMU9xbGF2S0VlQ0Z2YnRMVl96Q0h3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbTFPcWxxdktFZUNGdmJ0TFZfekNIdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbTFPcWw2dktFZUNGdmJ0TFZfekNIdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbTFPcW1LdktFZUNGdmJ0TFZfekNIdyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfbTFPcW1hdktFZUNGdmJ0TFZfekNIdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9tMU9xbXF2S0VlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfbTFPcW02dktFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbTFPcW5LdktFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9tMU9xbmF2S0VlQ0Z2YnRMVl96Q0h3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX20xT3FucXZLRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9tMU9xbjZ2S0VlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9tMU9xb0t2S0VlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX20xT3FrS3ZLRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9tMU9xb2F2S0VlQ0Z2YnRMVl96Q0h3IiB4PSI0MTUiIHk9IjE1IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjM0Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzdqUzFFYXZLRWVDRnZidExWX3pDSHciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfN2pTMUVxdktFZUNGdmJ0TFZfekNIdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il83alMxRTZ2S0VlQ0Z2YnRMVl96Q0h3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzdqUzFGS3ZLRWVDRnZidExWX3pDSHciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il83alMxRmF2S0VlQ0Z2YnRMVl96Q0h3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfN2pTMUZxdktFZUNGdmJ0TFZfekNIdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfN2pTMUY2dktFZUNGdmJ0TFZfekNIdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfN2pTMUdLdktFZUNGdmJ0TFZfekNIdyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfN2pTMUdhdktFZUNGdmJ0TFZfekNIdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il83alMxR3F2S0VlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfN2pTMUc2dktFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfN2pTMUhLdktFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il83alMxSGF2S0VlQ0Z2YnRMVl96Q0h3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iXzdqUzFIcXZLRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il83alMxSDZ2S0VlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il83alMxSUt2S0VlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzdqUzFFS3ZLRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il83alMxSWF2S0VlQ0Z2YnRMVl96Q0h3IiB4PSI1NTAiIHk9IjE1IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjM0Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0RBSkJKYXZMRWVDRnZidExWX3pDSHciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfREFKQkpxdkxFZUNGdmJ0TFZfekNIdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9EQUpCSjZ2TEVlQ0Z2YnRMVl96Q0h3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0RBSkJLS3ZMRWVDRnZidExWX3pDSHciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9EQUpCS2F2TEVlQ0Z2YnRMVl96Q0h3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfREFKQktxdkxFZUNGdmJ0TFZfekNIdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfREFKQks2dkxFZUNGdmJ0TFZfekNIdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfREFKQkxLdkxFZUNGdmJ0TFZfekNIdyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfREFKQkxhdkxFZUNGdmJ0TFZfekNIdyIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9EQUpCTHF2TEVlQ0Z2YnRMVl96Q0h3IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfREFKQkw2dkxFZUNGdmJ0TFZfekNIdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfREFKQk1LdkxFZUNGdmJ0TFZfekNIdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjYwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19EQUpCSWF2TEVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfREFKQk1hdkxFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0RBSkJNcXZMRWVDRnZidExWX3pDSHciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9EQUpCTTZ2TEVlQ0Z2YnRMVl96Q0h3IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9EQUpCTkt2TEVlQ0Z2YnRMVl96Q0h3IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNjAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0RBSkJJcXZMRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9EQUpCTmF2TEVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfREFKQk5xdkxFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9EQUpCTjZ2TEVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfREFKQk9LdkxFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfREFKQk9hdkxFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9EQUpCT3F2TEVlQ0Z2YnRMVl96Q0h3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9EQUpCTzZ2TEVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0RBSkJQS3ZMRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9EQUpCUGF2TEVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9EQUpCUHF2TEVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19EQUpCSUt2TEVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfREFKQlA2dkxFZUNGdmJ0TFZfekNIdyIgeD0iNTcwIiB5PSIyODAiIHdpZHRoPSIxNTIiIGhlaWdodD0iODAiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfV0wyb0VLdkxFZUNGdmJ0TFZfekNIdyIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9XTDJvRWF2TEVlQ0Z2YnRMVl96Q0h3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1dMMm9FcXZMRWVDRnZidExWX3pDSHciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfV0wyb0U2dkxFZUNGdmJ0TFZfekNIdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1dMMm9GS3ZMRWVDRnZidExWX3pDSHciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9XTDJvRmF2TEVlQ0Z2YnRMVl96Q0h3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9XTDJvRnF2TEVlQ0Z2YnRMVl96Q0h3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9XTDJvRjZ2TEVlQ0Z2YnRMVl96Q0h3IiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9XTDJvR0t2TEVlQ0Z2YnRMVl96Q0h3IiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1dMMm9HYXZMRWVDRnZidExWX3pDSHciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9XTDJvR3F2TEVlQ0Z2YnRMVl96Q0h3IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9XTDJvRzZ2TEVlQ0Z2YnRMVl96Q0h3IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNjAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1dMczNFYXZMRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9XTDJvSEt2TEVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfV0wyb0hhdkxFZUNGdmJ0TFZfekNIdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1dMMm9IcXZMRWVDRnZidExWX3pDSHciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1dMMm9INnZMRWVDRnZidExWX3pDSHciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI2MCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfV0xzM0VxdkxFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1dMMm9JS3ZMRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9XTDJvSWF2TEVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX1dMMm9JcXZMRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9XTDJvSTZ2TEVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9XTDJvSkt2TEVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1dMMm9KYXZMRWVDRnZidExWX3pDSHciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1dMMm9KcXZMRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfV0wyb0o2dkxFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX1dMMm9LS3ZMRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1dMMm9LYXZMRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1dMczNFS3ZMRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9XTDJvS3F2TEVlQ0Z2YnRMVl96Q0h3IiB4PSI1MzAiIHk9IjQ4MiIgd2lkdGg9IjE1MiIgaGVpZ2h0PSI4MCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9qci1sTmF2TEVlQ0Z2YnRMVl96Q0h3IiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2pyLWxOcXZMRWVDRnZidExWX3pDSHciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfanItbE42dkxFZUNGdmJ0TFZfekNIdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9qci1sT0t2TEVlQ0Z2YnRMVl96Q0h3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfanItbE9hdkxFZUNGdmJ0TFZfekNIdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2pyLWxPcXZMRWVDRnZidExWX3pDSHciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2pyLWxPNnZMRWVDRnZidExWX3pDSHciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2pyLWxQS3ZMRWVDRnZidExWX3pDSHciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2pyLWxQYXZMRWVDRnZidExWX3pDSHciIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfanItbFBxdkxFZUNGdmJ0TFZfekNIdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2pyLWxQNnZMRWVDRnZidExWX3pDSHciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2pyLWxRS3ZMRWVDRnZidExWX3pDSHciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI2MCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfanItbE1hdkxFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2pyLWxRYXZMRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9qci1sUXF2TEVlQ0Z2YnRMVl96Q0h3IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfanItbFE2dkxFZUNGdmJ0TFZfekNIdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfanItbFJLdkxFZUNGdmJ0TFZfekNIdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjYwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19qci1sTXF2TEVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfanItbFJhdkxFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2pyLWxScXZMRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfanItbFI2dkxFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2pyLWxTS3ZMRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2pyLWxTYXZMRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfanItbFNxdkxFZUNGdmJ0TFZfekNIdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfanItbFM2dkxFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9qci1sVEt2TEVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfanItbFRhdkxFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfanItbFRxdkxFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfanItbE1LdkxFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2pyLWxUNnZMRWVDRnZidExWX3pDSHciIHg9IjU3NSIgeT0iMTY3IiB3aWR0aD0iMTUyIiBoZWlnaHQ9IjgwIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzFrNVh1Z0xMRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3d5UzZnQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzFrNVhzUUxMRWVDdFlNWHBwZnFMTXciIHg9IjM1IiB5PSI0NSIgd2lkdGg9Ijc2NiIgaGVpZ2h0PSI2NjYiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX09rUHhNQUxNRWVDdFlNWHBwZnFMTXciIHR5cGU9IjIwMTYiIGVsZW1lbnQ9Il9oWEs2SUFMTEVlQ3RZTVhwcGZxTE13IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfT2tQeE1nTE1FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX09rUHhNd0xNRWVDdFlNWHBwZnFMTXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX09rUHhOQUxNRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX09rUHhOUUxNRWVDdFlNWHBwZnFMTXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfT2tQeE5nTE1FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9Pa1B4TndMTUVlQ3RZTVhwcGZxTE13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfT2tQeE9BTE1FZUN0WU1YcHBmcUxNdyIgdHlwZT0iMCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfT2tQeE9RTE1FZUN0WU1YcHBmcUxNdyIgeD0iNTQiIHk9IjUiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9Pa1B4TVFMTUVlQ3RZTVhwcGZxTE13IiB4PSIxNTAiIHk9IjE1IiB3aWR0aD0iMzQiIGhlaWdodD0iMjAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfMHdjYjhRTExFZUN0WU1YcHBmcUxNdyIvPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfelJoM3NBSHJFZUNRUU9LcmhPX2ZJUSIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX1h1MkRFQUxORWVDdFlNWHBwZnFMTXciIHR5cGU9IlBhcHlydXNVTUxDbGFzc0RpYWdyYW0iIG5hbWU9ImRpc2dub3N0aWMtbXNncyIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYWxpallBTE5FZUN0WU1YcHBmcUxNdyIgdHlwZT0iMjAwNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2FsaWpZZ0xORWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9hbGlqWXdMTkVlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9hbGlqWkFMTkVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9hbGlqWlFMTkVlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2FsaWpaZ0xORWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYWxpalp3TE5FZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il81U0RSNEFSckVlQ0Y5dEdZTnBJQjVBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWkRTdXNBMWRFZUtDbHRUZHJPTTMyUSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWkRTdXNRMWRFZUtDbHRUZHJPTTMyUSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1pEU3VzZzFkRWVLQ2x0VGRyT00zMlEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9aRFN1c3cxZEVlS0NsdFRkck9NMzJRIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWkRTdXRBMWRFZUtDbHRUZHJPTTMyUSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2FsaWphQUxORWVDdFlNWHBwZnFMTXciIHR5cGU9IjUwMjYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2FsaWphUUxORWVDdFlNWHBwZnFMTXciIHR5cGU9IjcwMTYiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iNkNSSUFMTkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2I2Q1JJZ0xORWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYjZDUkl3TE5FZUN0WU1YcHBmcUxNdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9iNkNSSkFMTkVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYjZDUkpRTE5FZUN0WU1YcHBmcUxNdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2I2Q1JKZ0xORWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2I2Q1JKd0xORWVDdFlNWHBwZnFMTXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2I2Q1JLQUxORWVDdFlNWHBwZnFMTXciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2I2Q1JLUUxORWVDdFlNWHBwZnFMTXciIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfa0xNMkVBTE5FZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX25sOXN3QUxORWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX25fY2p3QUxORWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfM1FEdGdBSVJFZUNOM1AzdnhCZWJKdyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2tMTTJFUUxORWVDdFlNWHBwZnFMTXciIHg9IjIyIiB5PSI3Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfa21VcjBBTE5FZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX29nWUdrQUxORWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29teVFrQUxORWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfQndHazBBSVNFZUNOM1AzdnhCZWJKdyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ttVXIwUUxORWVDdFlNWHBwZnFMTXciIHg9IjQ1IiB5PSIyMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2xWandZQUxORWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9wQ2Y4TUFMTkVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9wQ2Y4TVFMTkVlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNjAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2hYMW5rQUlTRWVDTjNQM3Z4QmViSnciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9sVmp3WVFMTkVlQ3RZTVhwcGZxTE13IiB4PSIzOCIgeT0iMzIiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2I2Q1JLZ0xORWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9iNkNSS3dMTkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9iNkNSTEFMTkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2I2Q1JMUUxORWVDdFlNWHBwZnFMTXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfYjZDUkxnTE5FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2I2Q1JMd0xORWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2I2Q1JNQUxORWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2ZEXzJVQUlLRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9iNkNSSVFMTkVlQ3RZTVhwcGZxTE13IiB4PSIxNSIgeT0iMTEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfY00wRE1BTE5FZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9jTTBETWdMTkVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2NNMERNd0xORWVDdFlNWHBwZnFMTXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfY00wRE5BTE5FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2NNMEROUUxORWVDdFlNWHBwZnFMTXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9jTTBETmdMTkVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9jTTBETndMTkVlQ3RZTVhwcGZxTE13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9jTTBET0FMTkVlQ3RZTVhwcGZxTE13IiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9jTTBET1FMTkVlQ3RZTVhwcGZxTE13IiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1NqZHQ0QUxPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9TX3gyY0FMT0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9URmNaa0FMT0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX25NV2RnQUlLRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9TamR0NFFMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfU2pkdDRnTE9FZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1RlbnVrQUxPRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1RsVXpnQUxPRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcTVKZllBSUtFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1NqZHQ0d0xPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2NNMERPZ0xORWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9jTTBET3dMTkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9jTTBEUEFMTkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2NNMERQUUxORWVDdFlNWHBwZnFMTXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfY00wRFBnTE5FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2NNMERQd0xORWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2NNMERRQUxORWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2xmM3RrQUlLRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9jTTBETVFMTkVlQ3RZTVhwcGZxTE13IiB4PSIyMDAiIHk9IjE2IiBoZWlnaHQ9IjcxIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2NkTlBvQUxORWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfY2ROUG9nTE5FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9jZE5Qb3dMTkVlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2NkTlBwQUxORWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9jZE5QcFFMTkVlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfY2ROUHBnTE5FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfY2ROUHB3TE5FZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfY2ROUHFBTE5FZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfY2ROUHFRTE5FZUN0WU1YcHBmcUxNdyIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9xbFRMc0FMTkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSldITmdBTE9FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTFY5bFlBTE9FZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9Ijg4Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19ucHZjd0FJTkVlQ04zUDN2eEJlYkp3Ii8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfcWxUTHNRTE5FZUN0WU1YcHBmcUxNdyIgeD0iMjciIHk9IjE2Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfcThfUzhBTE5FZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0tSUk9NQUxPRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0x2dlhVQUxPRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI4OCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcDE5Y3NBSU5FZUNOM1AzdnhCZWJKdyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3E4X1M4UUxORWVDdFlNWHBwZnFMTXciIHg9IjM5IiB5PSIyMyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3MwZ09NQUxORWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NMi1GSUFMT0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ORHlaSUFMT0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iODgiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3R6dTUwQUlORWVDTjNQM3Z4QmViSnciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9zMGdPTVFMTkVlQ3RZTVhwcGZxTE13IiB4PSIzNSIgeT0iMzAiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il91a2tkb0FMTkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTmdaY29BTE9FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTnVRU2NBTE9FZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9Ijg4Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI193Tnp2a0FJTkVlQ04zUDN2eEJlYkp3Ii8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdWtrZG9RTE5FZUN0WU1YcHBmcUxNdyIgeD0iMzUiIHk9Ijg2Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfemEwYTRBTE5FZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX09TVW8wQUxPRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX09YaWdBQUxPRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfekI5NVFBSU5FZUNOM1AzdnhCZWJKdyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3phMGE0UUxORWVDdFlNWHBwZnFMTXciIHg9IjcwIiB5PSI5NiIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0NyZWhnQUxPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9PdFN0a0FMT0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9PeWdrd0FMT0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzFraWpzQUlORWVDTjNQM3Z4QmViSnciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9DcmVoZ1FMT0VlQ3RZTVhwcGZxTE13IiB4PSI0MyIgeT0iNzMiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9EeTNBVUFMT0VlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUElhalVBTE9FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUFBhak1BTE9FZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI18zUjZyZ0FJTkVlQ04zUDN2eEJlYkp3Ii8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfRHkzQVVRTE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0R5M0FVZ0xPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9RSGNYWUFMT0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9RZHBRNEFMT0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNTYiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzU4RkxzQUlORWVDTjNQM3Z4QmViSnciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9EeTNBVXdMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9jZE5QcWdMTkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfY2ROUHF3TE5FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfY2ROUHJBTE5FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9jZE5QclFMTkVlQ3RZTVhwcGZxTE13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2NkTlByZ0xORWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9jZE5QcndMTkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9jZE5Qc0FMTkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xRzZVc0FJTEVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfY2ROUG9RTE5FZUN0WU1YcHBmcUxNdyIgeD0iMTUiIHk9IjEyNiIgd2lkdGg9IjEzMSIgaGVpZ2h0PSIxNDYiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfYWxpamFnTE5FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfX3hBNllBSHZFZUNRUU9LcmhPX2ZJUSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfYWxpallRTE5FZUN0WU1YcHBmcUxNdyIgeD0iMjUiIHk9IjIwIiB3aWR0aD0iMzMxIiBoZWlnaHQ9IjMyNiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfWWJrd3dBTE9FZUN0WU1YcHBmcUxNdyIgdHlwZT0iMjAxNiIgZWxlbWVudD0iX2hYSzZJQUxMRWVDdFlNWHBwZnFMTXciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9ZYmt3d2dMT0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWWJrd3d3TE9FZUN0WU1YcHBmcUxNdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfWWJrd3hBTE9FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWWJrd3hRTE9FZUN0WU1YcHBmcUxNdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9ZYmt3eGdMT0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1lia3d4d0xPRWVDdFlNWHBwZnFMTXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9ZYmt3eUFMT0VlQ3RZTVhwcGZxTE13IiB0eXBlPSIwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9ZYmt3eVFMT0VlQ3RZTVhwcGZxTE13IiB5PSI1Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfWWJrd3dRTE9FZUN0WU1YcHBmcUxNdyIgeD0iOTEiIHk9IjQxOSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9YdTJERVFMTkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI196Umgzc0FIckVlQ1FRT0tyaE9fZklRIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfZVRzYXNBTE9FZUN0WU1YcHBmcUxNdyIgdHlwZT0iUGFweXJ1c1VNTENsYXNzRGlhZ3JhbSIgbmFtZT0iZ2VvbWV0cnktbXNncyIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZkZubTRBTE9FZUN0WU1YcHBmcUxNdyIgdHlwZT0iMjAwNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2ZGbm00Z0xPRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mRm5tNHdMT0VlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9mRm5tNUFMT0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mRm5tNVFMT0VlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2ZGbm01Z0xPRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZkZubTV3TE9FZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2ZGbm02QUxPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjUwMjYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2ZGbm02UUxPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjcwMTYiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9naWN4UUFMT0VlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2dpY3hRZ0xPRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZ2ljeFF3TE9FZUN0WU1YcHBmcUxNdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9naWN4UkFMT0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZ2ljeFJRTE9FZUN0WU1YcHBmcUxNdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2dpY3hSZ0xPRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2dpY3hSd0xPRWVDdFlNWHBwZnFMTXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2dpY3hTQUxPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2dpY3hTUUxPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfOUJ4NG9BTE9FZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19VM1ZrQUxPRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19aTDA0QUxPRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyOCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTzFmYW9BSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzlCeDRvUUxPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il85Qng0b2dMT0VlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSEpzajBBTFBFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSFVJU01BTFBFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19laWIwb0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfOUJ4NG93TE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzlCeDRwQUxPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9IcVZMc0FMUEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9Idl91MEFMUEVlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2lMOFI4QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il85Qng0cFFMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9naWN4U2dMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfZ2ljeFN3TE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZ2ljeFRBTE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9naWN4VFFMT0VlQ3RZTVhwcGZxTE13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2dpY3hUZ0xPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9naWN4VHdMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9naWN4VUFMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI18xXy01b0FINUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZ2ljeFFRTE9FZUN0WU1YcHBmcUxNdyIgeD0iNDMiIHk9IjMwIiBoZWlnaHQ9Ijk2Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2lJWU5RQUxPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfaUlZTlFnTE9FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9pSVlOUXdMT0VlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2lJWU5SQUxPRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9pSVlOUlFMT0VlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfaUlZTlJnTE9FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfaUlZTlJ3TE9FZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfaUlZTlNBTE9FZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfaUlZTlNRTE9FZUN0WU1YcHBmcUxNdyIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il85b1gta0FMT0VlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSUswQ2tBTFBFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSVJPTWtBTFBFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI191VUpaNFFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfOW9YLWtRTE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzlvWC1rZ0xPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9JcnZsWUFMUEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9KQ19ud0FMUEVlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3VVSlo1UUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il85b1gta3dMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfOW9YLWxBTE9FZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0pkejdnQUxQRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0p3dmVrQUxQRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfdVVKWjZRSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzlvWC1sUUxPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2lJWU5TZ0xPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9pSVlOU3dMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9pSVlOVEFMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2lJWU5UUUxPRWVDdFlNWHBwZnFMTXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfaUlZTlRnTE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2lJWU5Ud0xPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2lJWU5VQUxPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3VVSlo0QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9pSVlOUVFMT0VlQ3RZTVhwcGZxTE13IiB4PSIyMDIiIHk9IjMwIiBoZWlnaHQ9Ijk2Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2lhMmRVQUxPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfaWEyZFVnTE9FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9pYTJkVXdMT0VlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2lhMmRWQUxPRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9pYTJkVlFMT0VlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfaWEyZFZnTE9FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfaWEyZFZ3TE9FZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfaWEyZFdBTE9FZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfaWEyZFdRTE9FZUN0WU1YcHBmcUxNdyIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il8tRlNrRUFMT0VlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfS0s5OGNBTFBFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfS1JPVmNBTFBFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19KZHZySUFJQUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfLUZTa0VRTE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXy1GU2tFZ0xPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9LcXRNY0FMUEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LdnhTb0FMUEVlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX09lSDB3QUlBRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8tRlNrRXdMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9pYTJkV2dMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfaWEyZFd3TE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfaWEyZFhBTE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9pYTJkWFFMT0VlQ3RZTVhwcGZxTE13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2lhMmRYZ0xPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9pYTJkWHdMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9pYTJkWUFMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19SQTJpSUFILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfaWEyZFVRTE9FZUN0WU1YcHBmcUxNdyIgeD0iMzYxIiB5PSIzMCIgaGVpZ2h0PSI5NiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9pdDdLVUFMT0VlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2l0N0tVZ0xPRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfaXQ3S1V3TE9FZUN0WU1YcHBmcUxNdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9pdDdLVkFMT0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfaXQ3S1ZRTE9FZUN0WU1YcHBmcUxNdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2l0N0tWZ0xPRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2l0N0tWd0xPRWVDdFlNWHBwZnFMTXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2l0N0tXQUxPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2l0N0tXUUxPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfQk9KeWNBTFBFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX01NNV9BQUxQRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1NFYWs4QUxQRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI1NiIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfd1Y2R01BSU9FZUNOM1AzdnhCZWJKdyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0JPSnljUUxQRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2l0N0tXZ0xPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9pdDdLV3dMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9pdDdLWEFMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2l0N0tYUUxPRWVDdFlNWHBwZnFMTXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfaXQ3S1hnTE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2l0N0tYd0xPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2l0N0tZQUxPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0NweTFvQUlCRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9pdDdLVVFMT0VlQ3RZTVhwcGZxTE13IiB4PSI0MyIgeT0iMTY1IiBoZWlnaHQ9Ijk2Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2k5dWc0QUxPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfaTl1ZzRnTE9FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9pOXVnNHdMT0VlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2k5dWc1QUxPRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9pOXVnNVFMT0VlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfaTl1ZzVnTE9FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfaTl1ZzV3TE9FZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfaTl1ZzZBTE9FZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfaTl1ZzZRTE9FZUN0WU1YcHBmcUxNdyIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9DcUdNQUFMUEVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVUVhdDBBTFBFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVVJZeTBBTFBFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xTS0ya1FJQ0VlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQ3FHTUFRTFBFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0NxR01BZ0xQRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Vb0xpTUFMUEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9Vc3B5Z0FMUEVlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3FNLTJsUUlDRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9DcUdNQXdMUEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9pOXVnNmdMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfaTl1ZzZ3TE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfaTl1ZzdBTE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9pOXVnN1FMT0VlQ3RZTVhwcGZxTE13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2k5dWc3Z0xPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9pOXVnN3dMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9pOXVnOEFMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xTS0ya0FJQ0VlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfaTl1ZzRRTE9FZUN0WU1YcHBmcUxNdyIgeD0iMjAyIiB5PSIxNjciIGhlaWdodD0iOTYiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfak4wTFVBTE9FZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9qTjBMVWdMT0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2pOMExVd0xPRWVDdFlNWHBwZnFMTXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfak4wTFZBTE9FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2pOMExWUUxPRWVDdFlNWHBwZnFMTXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9qTjBMVmdMT0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9qTjBMVndMT0VlQ3RZTVhwcGZxTE13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9qTjBMV0FMT0VlQ3RZTVhwcGZxTE13IiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9qTjBMV1FMT0VlQ3RZTVhwcGZxTE13IiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0NxR01CQUxQRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9WRVdnMEFMUEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9WTE12c0FMUEVlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzhucjNVUUlDRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9DcUdNQlFMUEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfQ3FHTUJnTFBFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1ZtSzBjQUxQRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1ZyX0lrQUxQRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfOG5yM1ZRSUNFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0NxR01Cd0xQRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9DcVA5QUFMUEVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfV0JTcU1BTFBFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfV0dObWNBTFBFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI184bnIzV1FJQ0VlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQ3FQOUFRTFBFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfak4wTFdnTE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2pOMExXd0xPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2pOMExYQUxPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfak4wTFhRTE9FZUN0WU1YcHBmcUxNdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9qTjBMWGdMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfak4wTFh3TE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfak4wTFlBTE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfOG5yM1VBSUNFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2pOMExVUUxPRWVDdFlNWHBwZnFMTXciIHg9IjM2MSIgeT0iMTY3IiBoZWlnaHQ9Ijk2Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX25paUkwQUxPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbmlpSTBnTE9FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9uaWlJMHdMT0VlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX25paUkxQUxPRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9uaWlJMVFMT0VlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbmlpSTFnTE9FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbmlpSTF3TE9FZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbmlpSTJBTE9FZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfbmlpSTJRTE9FZUN0WU1YcHBmcUxNdyIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9DcVA5RmdMUEVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfWG56OEVBTFBFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWDFPdEFBTFBFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19OZXMzd1FJREVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQ3FQOUZ3TFBFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0NxUDlHQUxQRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9ZSnlud0FMUEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ZT2FDQUFMUEVlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX05lczN4UUlERWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9DcVA5R1FMUEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9uaWlJMmdMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfbmlpSTJ3TE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbmlpSTNBTE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9uaWlJM1FMT0VlQ3RZTVhwcGZxTE13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX25paUkzZ0xPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9uaWlJM3dMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9uaWlJNEFMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19OZXMzd0FJREVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbmlpSTBRTE9FZUN0WU1YcHBmcUxNdyIgeD0iNDMiIHk9IjMwMCIgaGVpZ2h0PSI5NiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9uMFJaRUFMT0VlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX24wUlpFZ0xPRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbjBSWkV3TE9FZUN0WU1YcHBmcUxNdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9uMFJaRkFMT0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbjBSWkZRTE9FZUN0WU1YcHBmcUxNdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX24wUlpGZ0xPRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX24wUlpGd0xPRWVDdFlNWHBwZnFMTXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX24wUlpHQUxPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX24wUlpHUUxPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfQ3FQOURnTFBFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1ludklBQUxQRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1l0UWhNQUxQRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTlJxbmNRS3FFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0NxUDlEd0xQRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9DcVA5RUFMUEVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfWkJOX0FBTFBFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWkZfS1FBTFBFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19OUnFuZFFLcUVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQ3FQOUVRTFBFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0NxUDlFZ0xQRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9aY0M1MEFMUEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9aZ1haSUFMUEVlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX05ScW5lUUtxRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9DcVA5RXdMUEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfQ3FQOUZBTFBFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2E0dTZRQUxQRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2E5V1VnQUxQRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfVmpHNU1BS3FFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0NxUDlGUUxQRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX24wUlpHZ0xPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9uMFJaR3dMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9uMFJaSEFMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX24wUlpIUUxPRWVDdFlNWHBwZnFMTXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfbjBSWkhnTE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX24wUlpId0xPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX24wUlpJQUxPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX05ScW5jQUtxRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9uMFJaRVFMT0VlQ3RZTVhwcGZxTE13IiB4PSIyMDIiIHk9IjMwNSIgaGVpZ2h0PSI5NiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9vSE1WRUFMT0VlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX29ITVZFZ0xPRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb0hNVkV3TE9FZUN0WU1YcHBmcUxNdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9vSE1WRkFMT0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb0hNVkZRTE9FZUN0WU1YcHBmcUxNdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX29ITVZGZ0xPRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29ITVZGd0xPRWVDdFlNWHBwZnFMTXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX29ITVZHQUxPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX29ITVZHUUxPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfQ3FQOUNnTFBFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2JXcmFnQUxQRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2JvdGxzQUxQRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfVlZKS0lBSzBFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0NxUDlDd0xQRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9DcVA5REFMUEVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYi1LNFVBTFBFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfY0RZdmdBTFBFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19YMllYMEFLMEVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQ3FQOURRTFBFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfb0hNVkdnTE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX29ITVZHd0xPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX29ITVZIQUxPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfb0hNVkhRTE9FZUN0WU1YcHBmcUxNdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9vSE1WSGdMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfb0hNVkh3TE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfb0hNVklBTE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfUmtvczhBSzBFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX29ITVZFUUxPRWVDdFlNWHBwZnFMTXciIHg9IjM2MSIgeT0iMzA1IiBoZWlnaHQ9Ijk2Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3JlWHNRQUxPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcmVYc1FnTE9FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9yZVhzUXdMT0VlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3JlWHNSQUxPRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9yZVhzUlFMT0VlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcmVYc1JnTE9FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcmVYc1J3TE9FZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfcmVYc1NBTE9FZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfcmVYc1NRTE9FZUN0WU1YcHBmcUxNdyIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il8tcUY2UUFMT0VlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTE5iZkFBTFBFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTFM4UklBTFBFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19oVVFuZ1FLMEVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfLXFGNlFRTE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXy1xRjZRZ0xPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9McGwya0FMUEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9MeENpWUFMUEVlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2hVUW5oUUswRWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8tcUY2UXdMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9yZVhzU2dMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfcmVYc1N3TE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfcmVYc1RBTE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9yZVhzVFFMT0VlQ3RZTVhwcGZxTE13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3JlWHNUZ0xPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9yZVhzVHdMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9yZVhzVUFMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19oVVFuZ0FLMEVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfcmVYc1FRTE9FZUN0WU1YcHBmcUxNdyIgeD0iNTQzIiB5PSIzMCIgaGVpZ2h0PSI5NiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9yeFNvUUFMT0VlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3J4U29RZ0xPRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcnhTb1F3TE9FZUN0WU1YcHBmcUxNdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9yeFNvUkFMT0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcnhTb1JRTE9FZUN0WU1YcHBmcUxNdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3J4U29SZ0xPRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3J4U29Sd0xPRWVDdFlNWHBwZnFMTXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3J4U29TQUxPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3J4U29TUUxPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfQ3FQOUFnTFBFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1doN1NFQUxQRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1dtWmlZQUxQRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfX2k1SlVBSzBFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0NxUDlBd0xQRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9DcVA5QkFMUEVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVzlvOXNBTFBFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWENIT0FBTFBFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjU2Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19Rb01kWUFLMUVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQ3FQOUJRTFBFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfcnhTb1NnTE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX3J4U29Td0xPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3J4U29UQUxPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfcnhTb1RRTE9FZUN0WU1YcHBmcUxNdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9yeFNvVGdMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfcnhTb1R3TE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfcnhTb1VBTE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfN2l2R2tBSzBFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3J4U29RUUxPRWVDdFlNWHBwZnFMTXciIHg9IjUyMCIgeT0iMTY3IiBoZWlnaHQ9Ijk2Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3NGYWVJQUxPRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfc0ZhZUlnTE9FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9zRmFlSXdMT0VlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3NGYWVKQUxPRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9zRmFlSlFMT0VlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfc0ZhZUpnTE9FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfc0ZhZUp3TE9FZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfc0ZhZUtBTE9FZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfc0ZhZUtRTE9FZUN0WU1YcHBmcUxNdyIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9DcVA5QmdMUEVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfY2dJODhBTFBFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfY29DN3dBTFBFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19IaFF1RUFLMUVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQ3FQOUJ3TFBFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0NxUDlDQUxQRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9jLVlfTUFMUEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9keHBvSUFMUEVlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0ppbTZ3QUsxRWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9DcVA5Q1FMUEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9zRmFlS2dMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfc0ZhZUt3TE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfc0ZhZUxBTE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9zRmFlTFFMT0VlQ3RZTVhwcGZxTE13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3NGYWVMZ0xPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9zRmFlTHdMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9zRmFlTUFMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19DNUJYb0FLMUVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfc0ZhZUlRTE9FZUN0WU1YcHBmcUxNdyIgeD0iNTM5IiB5PSIzMDUiIGhlaWdodD0iOTYiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfdTc5TmNBTE9FZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il91NzlOY2dMT0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3U3OU5jd0xPRWVDdFlNWHBwZnFMTXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdTc5TmRBTE9FZUN0WU1YcHBmcUxNdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3U3OU5kUUxPRWVDdFlNWHBwZnFMTXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il91NzlOZGdMT0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il91NzlOZHdMT0VlQ3RZTVhwcGZxTE13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il91NzlOZUFMT0VlQ3RZTVhwcGZxTE13IiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il91NzlOZVFMT0VlQ3RZTVhwcGZxTE13IiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0NxUDlHZ0xQRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lTGNCSUFMUEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9lWDh6SUFMUEVlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2NFVFVVUUsxRWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9DcVA5R3dMUEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfQ3FQOUhBTFBFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VwUFhjQUxQRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2V2bzZZQUxQRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfY0VUVVZBSzFFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0NxUDlIUUxQRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3U3OU5lZ0xPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il91NzlOZXdMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il91NzlOZkFMT0VlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3U3OU5mUUxPRWVDdFlNWHBwZnFMTXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfdTc5TmZnTE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX3U3OU5md0xPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3U3OU5nQUxPRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2NFVFVVQUsxRWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il91NzlOY1FMT0VlQ3RZTVhwcGZxTE13IiB4PSI0MyIgeT0iNDM1IiBoZWlnaHQ9Ijk2Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2xhRE1ZS2xoRWVDMHNadS1fVmdleXciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbGFETVlhbGhFZUMwc1p1LV9WZ2V5dyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9sYURNWXFsaEVlQzBzWnUtX1ZnZXl3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2xhRE1ZNmxoRWVDMHNadS1fVmdleXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9sYURNWktsaEVlQzBzWnUtX1ZnZXl3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbGFETVphbGhFZUMwc1p1LV9WZ2V5dyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbGFETVpxbGhFZUMwc1p1LV9WZ2V5dyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbGFETVo2bGhFZUMwc1p1LV9WZ2V5dyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfbGFETWFLbGhFZUMwc1p1LV9WZ2V5dyIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9sYURNYWFsaEVlQzBzWnUtX1ZnZXl3IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbGFETWFxbGhFZUMwc1p1LV9WZ2V5dyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbGFETWE2bGhFZUMwc1p1LV9WZ2V5dyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19sWjViWWFsaEVlQzBzWnUtX1ZnZXl3Ii8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfbGFETWJLbGhFZUMwc1p1LV9WZ2V5dyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2xhRE1iYWxoRWVDMHNadS1fVmdleXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9sYURNYnFsaEVlQzBzWnUtX1ZnZXl3IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9sYURNYjZsaEVlQzBzWnUtX1ZnZXl3IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2xaNWJaYWxoRWVDMHNadS1fVmdleXciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9sYURNY0tsaEVlQzBzWnUtX1ZnZXl3Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfbGFETWNhbGhFZUMwc1p1LV9WZ2V5dyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2xhRE1jcWxoRWVDMHNadS1fVmdleXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2xhRE1jNmxoRWVDMHNadS1fVmdleXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfbFo1YmFhbGhFZUMwc1p1LV9WZ2V5dyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2xhRE1kS2xoRWVDMHNadS1fVmdleXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2xhRE1kYWxoRWVDMHNadS1fVmdleXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9sYURNZHFsaEVlQzBzWnUtX1ZnZXl3Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9sYURNZDZsaEVlQzBzWnUtX1ZnZXl3Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2xhRE1lS2xoRWVDMHNadS1fVmdleXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfbGFETWVhbGhFZUMwc1p1LV9WZ2V5dyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2xhRE1lcWxoRWVDMHNadS1fVmdleXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2xhRE1lNmxoRWVDMHNadS1fVmdleXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2xaNWJZS2xoRWVDMHNadS1fVmdleXciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9sYURNZktsaEVlQzBzWnUtX1ZnZXl3IiB4PSIyMzAiIHk9IjQyMCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI5NiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9oXzhaMEt2T0VlQ0Z2YnRMVl96Q0h3IiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2hfOFowcXZPRWVDRnZidExWX3pDSHciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfaF84WjA2dk9FZUNGdmJ0TFZfekNIdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9oXzhaMUt2T0VlQ0Z2YnRMVl96Q0h3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfaF84WjFhdk9FZUNGdmJ0TFZfekNIdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2hfOFoxcXZPRWVDRnZidExWX3pDSHciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2hfOFoxNnZPRWVDRnZidExWX3pDSHciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2hfOFoyS3ZPRWVDRnZidExWX3pDSHciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2hfOFoyYXZPRWVDRnZidExWX3pDSHciIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfa2I5d1VLdk9FZUNGdmJ0TFZfekNIdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfWlhKTmNLdk5FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2tiOXdVYXZPRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9rYjl3VXF2T0VlQ0Z2YnRMVl96Q0h3IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19oaUxWTUt2TkVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfa2I5d1U2dk9FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2hfOFoycXZPRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfaF84WjI2dk9FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2hfOFozS3ZPRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2hfOFozYXZPRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfaF84WjNxdk9FZUNGdmJ0TFZfekNIdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfaF84WjM2dk9FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9oXzhaNEt2T0VlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfaF84WjRhdk9FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfaF84WjRxdk9FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfWDJsWm9Ldk5FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2hfOFowYXZPRWVDRnZidExWX3pDSHciIHg9IjM2MCIgeT0iNDIwIiBoZWlnaHQ9IjgxIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3BPVjZNS3ZPRWVDRnZidExWX3pDSHciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcE9mRUlLdk9FZUNGdmJ0TFZfekNIdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9wT2ZFSWF2T0VlQ0Z2YnRMVl96Q0h3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3BPZkVJcXZPRWVDRnZidExWX3pDSHciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9wT2ZFSTZ2T0VlQ0Z2YnRMVl96Q0h3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcE9mRUpLdk9FZUNGdmJ0TFZfekNIdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcE9mRUphdk9FZUNGdmJ0TFZfekNIdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfcE9mRUpxdk9FZUNGdmJ0TFZfekNIdyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfcE9mRUo2dk9FZUNGdmJ0TFZfekNIdyIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9wT2ZFS0t2T0VlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3BPZkVLYXZPRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9wT2ZFS3F2T0VlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9wT2ZFSzZ2T0VlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3BPZkVMS3ZPRWVDRnZidExWX3pDSHciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3BPZkVMYXZPRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfcE9mRUxxdk9FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX3BPZkVMNnZPRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3BPZkVNS3ZPRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2hVUW5nQUswRWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9wT1Y2TWF2T0VlQ0Z2YnRMVl96Q0h3IiB4PSI1MzUiIHk9IjQ0NSIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI3NiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il8xN0RkWUt2T0VlQ0Z2YnRMVl96Q0h3IiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzE3RGRZcXZPRWVDRnZidExWX3pDSHciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMTdEZFk2dk9FZUNGdmJ0TFZfekNIdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8xN0RkWkt2T0VlQ0Z2YnRMVl96Q0h3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMTdEZFphdk9FZUNGdmJ0TFZfekNIdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzE3RGRacXZPRWVDRnZidExWX3pDSHciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzE3RGRaNnZPRWVDRnZidExWX3pDSHciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzE3RGRhS3ZPRWVDRnZidExWX3pDSHciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzE3RGRhYXZPRWVDRnZidExWX3pDSHciIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfNkxtc2tLdk9FZUNGdmJ0TFZfekNIdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfNkt0VXNLdk9FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzZMbXNrYXZPRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il84akFCd0t2T0VlQ0Z2YnRMVl96Q0h3IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI184aUdwNEt2T0VlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfOGpBQndhdk9FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzE3RGRhcXZPRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfMTdEZGE2dk9FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iXzE3RGRiS3ZPRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzE3RGRiYXZPRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfMTdEZGJxdk9FZUNGdmJ0TFZfekNIdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfMTdEZGI2dk9FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il8xN0RkY0t2T0VlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfMTdEZGNhdk9FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMTdEZGNxdk9FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfMTVhZW9Ldk9FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzE3RGRZYXZPRWVDRnZidExWX3pDSHciIHg9IjQ1IiB5PSI1NDMiIHdpZHRoPSIxNDYiIGhlaWdodD0iNzUiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfSWtwT3NLdlBFZUNGdmJ0TFZfekNIdyIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Ja3BPc3F2UEVlQ0Z2YnRMVl96Q0h3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0lrcE9zNnZQRWVDRnZidExWX3pDSHciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSWtwT3RLdlBFZUNGdmJ0TFZfekNIdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0lrcE90YXZQRWVDRnZidExWX3pDSHciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Ja3BPdHF2UEVlQ0Z2YnRMVl96Q0h3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9Ja3BPdDZ2UEVlQ0Z2YnRMVl96Q0h3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9Ja3BPdUt2UEVlQ0Z2YnRMVl96Q0h3IiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9Ja3BPdWF2UEVlQ0Z2YnRMVl96Q0h3IiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0taeGtVS3ZQRWVDRnZidExWX3pDSHciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0tZNE1jS3ZQRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9LWnhrVWF2UEVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfUURSamNLdlBFZUNGdmJ0TFZfekNIdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfUUNQQm9LdlBFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1FEUmpjYXZQRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9Ja3BPdXF2UEVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0lrcE91NnZQRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9Ja3BPdkt2UEVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9Ja3BPdmF2UEVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0lrcE92cXZQRWVDRnZidExWX3pDSHciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0lrcE92NnZQRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfSWtwT3dLdlBFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0lrcE93YXZQRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0lrcE93cXZQRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0lqQVA4S3ZQRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9Ja3BPc2F2UEVlQ0Z2YnRMVl96Q0h3IiB4PSIyMzciIHk9IjUzOSIgd2lkdGg9IjEyNCIgaGVpZ2h0PSI2NiIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9ibmE4RUt2UEVlQ0Z2YnRMVl96Q0h3IiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2JuYThFcXZQRWVDRnZidExWX3pDSHciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYm5hOEU2dlBFZUNGdmJ0TFZfekNIdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9ibmE4Rkt2UEVlQ0Z2YnRMVl96Q0h3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYm5hOEZhdlBFZUNGdmJ0TFZfekNIdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2JuYThGcXZQRWVDRnZidExWX3pDSHciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2JuYThGNnZQRWVDRnZidExWX3pDSHciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2JuYThHS3ZQRWVDRnZidExWX3pDSHciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2JuYThHYXZQRWVDRnZidExWX3pDSHciIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfNFVkYjhLeFdFZUNKRDQ2R3REc0FCQSIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfNFNoaVFLeFdFZUNKRDQ2R3REc0FCQSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzRVZGI4YXhXRWVDSkQ0Nkd0RHNBQkEiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il96ZkJoa0t4WEVlQ0pENDZHdERzQUJBIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI196ZWJyc0t4WEVlQ0pENDZHdERzQUJBIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfemZCaGtheFhFZUNKRDQ2R3REc0FCQSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2JuYThHcXZQRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfYm5hOEc2dlBFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2JuYThIS3ZQRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2JuYThIYXZQRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfYm5hOEhxdlBFZUNGdmJ0TFZfekNIdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfYm5hOEg2dlBFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9ibmE4SUt2UEVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfYm5hOElhdlBFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfYm5hOElxdlBFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfYm1PcFFLdlBFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2JuYThFYXZQRWVDRnZidExWX3pDSHciIHg9IjQwNSIgeT0iNTQyIiB3aWR0aD0iMTAwIiBoZWlnaHQ9Ijc2Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2QxaTNzS3hYRWVDSkQ0Nkd0RHNBQkEiIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZDFfam9LeFhFZUNKRDQ2R3REc0FCQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9kMV9qb2F4WEVlQ0pENDZHdERzQUJBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2QxX2pvcXhYRWVDSkQ0Nkd0RHNBQkEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9kMV9qbzZ4WEVlQ0pENDZHdERzQUJBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZDFfanBLeFhFZUNKRDQ2R3REc0FCQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZDFfanBheFhFZUNKRDQ2R3REc0FCQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZDFfanBxeFhFZUNKRDQ2R3REc0FCQSIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZDFfanA2eFhFZUNKRDQ2R3REc0FCQSIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9ramxkQUt4WEVlQ0pENDZHdERzQUJBIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19raTEySUt4WEVlQ0pENDZHdERzQUJBIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfa2psZEFheFhFZUNKRDQ2R3REc0FCQSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX29keGFvS3hYRWVDSkQ0Nkd0RHNBQkEiIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX29kQk1zS3hYRWVDSkQ0Nkd0RHNBQkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9vZHhhb2F4WEVlQ0pENDZHdERzQUJBIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZDFfanFLeFhFZUNKRDQ2R3REc0FCQSIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9kMV9qcWF4WEVlQ0pENDZHdERzQUJBIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfZDFfanFxeFhFZUNKRDQ2R3REc0FCQSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZDFfanE2eFhFZUNKRDQ2R3REc0FCQSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9kMV9qckt4WEVlQ0pENDZHdERzQUJBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9kMV9qcmF4WEVlQ0pENDZHdERzQUJBIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2QxX2pycXhYRWVDSkQ0Nkd0RHNBQkEiLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9kMV9qcjZ4WEVlQ0pENDZHdERzQUJBIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9kMV9qc0t4WEVlQ0pENDZHdERzQUJBIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19kMHBmMEt4WEVlQ0pENDZHdERzQUJBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZDFpM3NheFhFZUNKRDQ2R3REc0FCQSIgeD0iNTM2IiB5PSI1NDQiIHdpZHRoPSIxMDAiIGhlaWdodD0iNzYiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZkZubTZnTE9FZUN0WU1YcHBmcUxNdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfRGY0XzRBSHdFZUNRUU9LcmhPX2ZJUSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZkZubTRRTE9FZUN0WU1YcHBmcUxNdyIgeD0iMjAiIHk9IjEwIiB3aWR0aD0iODExIiBoZWlnaHQ9IjcxNiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfM2VmWXNBT2VFZUNEVF84S3lOWENJZyIgdHlwZT0iMjAxNiIgZWxlbWVudD0iX2hYSzZJQUxMRWVDdFlNWHBwZnFMTXciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8zZWZZc2dPZUVlQ0RUXzhLeU5YQ0lnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfM2VmWXN3T2VFZUNEVF84S3lOWENJZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfM2VmWXRBT2VFZUNEVF84S3lOWENJZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfM2VmWXRRT2VFZUNEVF84S3lOWENJZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8zZWZZdGdPZUVlQ0RUXzhLeU5YQ0lnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzNlZll0d09lRWVDRFRfOEt5TlhDSWciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8zZWZZdUFPZUVlQ0RUXzhLeU5YQ0lnIiB0eXBlPSIwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8zZWZZdVFPZUVlQ0RUXzhLeU5YQ0lnIiB5PSI1Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfM2VmWXNRT2VFZUNEVF84S3lOWENJZyIgeD0iNzc4IiB5PSIzNTkiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfZVRzYXNRTE9FZUN0WU1YcHBmcUxNdyIvPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfelJoM3NBSHJFZUNRUU9LcmhPX2ZJUSIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX3BZeURVQUxQRWVDdFlNWHBwZnFMTXciIHR5cGU9IlBhcHlydXNVTUxDbGFzc0RpYWdyYW0iIG5hbWU9Im5hdi1tc2dzIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9xVENzSUFMUEVlQ3RZTVhwcGZxTE13IiB0eXBlPSIyMDA3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcVRDc0lnTFBFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3FUQ3NJd0xQRWVDdFlNWHBwZnFMTXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3FUQ3NKQUxQRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3FUQ3NKUUxQRWVDdFlNWHBwZnFMTXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcVRDc0pnTFBFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9xVENzSndMUEVlQ3RZTVhwcGZxTE13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfcVRDc0tBTFBFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTAyNiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfcVRDc0tRTFBFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNzAxNiI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3J5ai1JQUxQRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcnlqLUlnTFBFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9yeWotSXdMUEVlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3J5ai1KQUxQRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9yeWotSlFMUEVlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcnlqLUpnTFBFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcnlqLUp3TFBFZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfcnlqLUtBTFBFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfcnlqLUtRTFBFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9nYkk5Y0FMUUVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcFRvQkVBTFFFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcGRLWGtBTFFFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI190Y0swZ0FLMEVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZ2JJOWNRTFFFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2diSTljZ0xRRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9wM3J3WUFMUUVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9wOThKWUFMUUVlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNTYiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3dLOVdBQUswRWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9nYkk5Y3dMUUVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9yeWotS2dMUEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfcnlqLUt3TFBFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfcnlqLUxBTFBFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9yeWotTFFMUEVlQ3RZTVhwcGZxTE13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3J5ai1MZ0xQRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9yeWotTHdMUEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9yeWotTUFMUEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19wM3ZFY0FLMEVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfcnlqLUlRTFBFZUN0WU1YcHBmcUxNdyIgeD0iMzAiIHk9IjMwIiBoZWlnaHQ9IjkxIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3NER1VnQUxQRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfc0RHVWdnTFBFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9zREdVZ3dMUEVlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3NER1VoQUxQRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9zREdVaFFMUEVlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfc0RHVWhnTFBFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfc0RHVWh3TFBFZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfc0RHVWlBTFBFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfc0RHVWlRTFBFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9nYkk5ZEFMUUVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcVl4RU1BTFFFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcWZMT01BTFFFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19vMjJad0FLMUVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZ2JJOWRRTFFFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2diSTlkZ0xRRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9xMFUtMEFMUUVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9yRDB6WUFMUUVlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3NfcGJJQUsxRWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9nYkk5ZHdMUUVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZ2JJOWVBTFFFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3JlZjlNQUxRRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3Jqa0RZQUxRRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfdnluU0FBSzFFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2diSTllUUxRRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9nYkk5ZWdMUUVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfeTVqWmdBTFFFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeS14UXNBTFFFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI182MVA1QUFLMUVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZ2JJOWV3TFFFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfc0RRRmdBTFBFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX3NEUUZnUUxQRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3NEUUZnZ0xQRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfc0RRRmd3TFBFZUN0WU1YcHBmcUxNdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9zRFFGaEFMUEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfc0RRRmhRTFBFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfc0RRRmhnTFBFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfa3dJY0FBSzFFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3NER1VnUUxQRWVDdFlNWHBwZnFMTXciIHg9IjE5MCIgeT0iMzAiIGhlaWdodD0iOTEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfc1RDMUFBTFBFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9zVEMxQWdMUEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3NUQzFBd0xQRWVDdFlNWHBwZnFMTXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfc1RDMUJBTFBFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3NUQzFCUUxQRWVDdFlNWHBwZnFMTXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9zVEMxQmdMUEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9zVEMxQndMUEVlQ3RZTVhwcGZxTE13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9zVEMxQ0FMUEVlQ3RZTVhwcGZxTE13IiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9zVEMxQ1FMUEVlQ3RZTVhwcGZxTE13IiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2diSTlpZ0xRRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8ySDhCRUFMUUVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8yVk1aOEFMUUVlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0hxd3k0QUsyRWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9nYkk5aXdMUUVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZ2JJOWpBTFFFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzJxemRrQUxRRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzJ3QlV3QUxRRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTkVuemdBSzJFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2diSTlqUUxRRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9nYkk5amdMUUVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfM0ZvWVlBTFFFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfM0tQeW9BTFFFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19SQXdSNEFLMkVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZ2JJOWp3TFFFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2diSTlrQUxRRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8zMFJBQUFMUUVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8zMzE0Y0FMUUVlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjgiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1RNclc0QUsyRWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9nYkk5a1FMUUVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9zVEMxQ2dMUEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfc1RDMUN3TFBFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfc1RDMURBTFBFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9zVE1tQUFMUEVlQ3RZTVhwcGZxTE13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3NUTW1BUUxQRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9zVE1tQWdMUEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9zVE1tQXdMUEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19GNU44d0FLMkVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfc1RDMUFRTFBFZUN0WU1YcHBmcUxNdyIgeD0iMzAiIHk9IjE2NSIgd2lkdGg9IjExNSIgaGVpZ2h0PSI5MSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9zaFdXd0FMUEVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3NoV1d3Z0xQRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfc2hXV3d3TFBFZUN0WU1YcHBmcUxNdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9zaFdXeEFMUEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfc2hXV3hRTFBFZUN0WU1YcHBmcUxNdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3NoV1d4Z0xQRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3NoV1d4d0xQRWVDdFlNWHBwZnFMTXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3NoV1d5QUxQRWVDdFlNWHBwZnFMTXciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3NoV1d5UUxQRWVDdFlNWHBwZnFMTXciIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZ2JJOWhBTFFFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzRhdDhBQUxRRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzRmTGxRQUxRRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTVk0NWNBSzNFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2diSTloUUxRRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9nYkk5aGdMUUVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNDQwTlFBTFFFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNC1VX1lBTFFFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19PV3Btb0FLM0VlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZ2JJOWh3TFFFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2diSTlpQUxRRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il81VlJmd0FMUUVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il81WUd4VUFMUUVlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNTYiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1J3elpVQUszRWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9nYkk5aVFMUUVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9zaFdXeWdMUEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfc2hXV3l3TFBFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfc2hXV3pBTFBFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9zaFdXelFMUEVlQ3RZTVhwcGZxTE13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3NoV1d6Z0xQRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9zaFdXendMUEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9zaFdXMEFMUEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19GS05GTUFLM0VlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfc2hXV3dRTFBFZUN0WU1YcHBmcUxNdyIgeD0iMTkwIiB5PSIxNjUiIHdpZHRoPSIxMTUiIGhlaWdodD0iOTEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfc3lDZUlBTFBFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9zeUNlSWdMUEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3N5Q2VJd0xQRWVDdFlNWHBwZnFMTXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfc3lDZUpBTFBFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3N5Q2VKUUxQRWVDdFlNWHBwZnFMTXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9zeUNlSmdMUEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9zeUNlSndMUEVlQ3RZTVhwcGZxTE13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9zeUNlS0FMUEVlQ3RZTVhwcGZxTE13IiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9zeUNlS1FMUEVlQ3RZTVhwcGZxTE13IiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2diSTlmQUxRRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il96YmlGTUFMUUVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il96aG90TUFMUUVlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzc0dzVrQUszRWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9nYkk5ZlFMUUVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZ2JJOWZnTFFFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3ozc2N3QUxRRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzBBeUhVQUxRRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfLWhBSElBSzNFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2diSTlmd0xRRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9nYkk5Z0FMUUVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMGJBbE1BTFFFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMGk1ODhBTFFFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19CakJHb0FLNEVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZ2JJOWdRTFFFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2diSTlnZ0xRRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8xYkZpSUFMUUVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8xYkZpSVFMUUVlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNjAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0V3WE1ZQUs0RWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9nYkk5Z3dMUUVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9zeUNlS2dMUEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfc3lDZUt3TFBFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfc3lDZUxBTFBFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9zeUNlTFFMUEVlQ3RZTVhwcGZxTE13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3N5Q2VMZ0xQRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9zeUNlTHdMUEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9zeUNlTUFMUEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI195cnN0RUFLM0VlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfc3lDZUlRTFBFZUN0WU1YcHBmcUxNdyIgeD0iMzcwIiB5PSIzMCIgaGVpZ2h0PSI5MSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9xVENzS2dMUEVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19HbzVfUUFId0VlQ1FRT0tyaE9fZklRIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9xVENzSVFMUEVlQ3RZTVhwcGZxTE13IiB4PSIyNSIgeT0iMzUiIHdpZHRoPSI1MTEiIGhlaWdodD0iNDgxIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il8tMzdRQUFMUUVlQ3RZTVhwcGZxTE13IiB0eXBlPSIyMDE2IiBlbGVtZW50PSJfaFhLNklBTExFZUN0WU1YcHBmcUxNdyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXy0zN1FBZ0xRRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tMzdRQXdMUUVlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8tMzdRQkFMUUVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tMzdRQlFMUUVlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXy0zN1FCZ0xRRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfLTM3UUJ3TFFFZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXy0zN1FDQUxRRWVDdFlNWHBwZnFMTXciIHR5cGU9IjAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXy0zN1FDUUxRRWVDdFlNWHBwZnFMTXciIHk9IjUiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8tMzdRQVFMUUVlQ3RZTVhwcGZxTE13IiB4PSI4MCIgeT0iNTY1IiB3aWR0aD0iMzQiIGhlaWdodD0iMjAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfcFl5RFVRTFBFZUN0WU1YcHBmcUxNdyIvPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfelJoM3NBSHJFZUNRUU9LcmhPX2ZJUSIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX0lYQVprQUxSRWVDdFlNWHBwZnFMTXciIHR5cGU9IlBhcHlydXNVTUxDbGFzc0RpYWdyYW0iIG5hbWU9InNlbnNvci1tc2dzIiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9KZ2Q4QUFMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIyMDA3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSmdkOEFnTFJFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0pnZDhBd0xSRWVDdFlNWHBwZnFMTXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0pnZDhCQUxSRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0pnZDhCUUxSRWVDdFlNWHBwZnFMTXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSmdkOEJnTFJFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9KZ2Q4QndMUkVlQ3RZTVhwcGZxTE13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfSmdkOENBTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTAyNiIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfSmdkOENRTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNzAxNiI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0xwSERnQUxSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTHBIRGdnTFJFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9McEhEZ3dMUkVlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0xwSERoQUxSRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9McEhEaFFMUkVlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTHBIRGhnTFJFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTHBIRGh3TFJFZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTHBIRGlBTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfTHBIRGlRTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iLXVuS0FMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfeEM1dkFBTFNFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeEhxNlFBTFNFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19RMWNYa0FLbkVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYi11bktRTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItdW5LZ0xSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il94Ym9fSUFMU0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il94ZzIyVUFMU0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2JCaVlJQUtuRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLXVuS3dMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYi11bkxBTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3gwcktNQUxTRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3g2TDhVQUxTRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfZUhJUUVBS25FZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ItdW5MUUxSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iLXVuTGdMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfeWd5Q1FBTFNFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeWt6bW9BTFNFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19nNXFDRUFLbkVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYi11bkx3TFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX25DcklvRlcwRWVLR2ZxRW9WMGVrRHciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX25BbGQ4RlcwRWVLR2ZxRW9WMGVrRHciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9uQ3JJb1ZXMEVlS0dmcUVvVjBla0R3Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9McEhEaWdMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfTHBIRGl3TFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTHBIRGpBTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9McEhEalFMUkVlQ3RZTVhwcGZxTE13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0xwSERqZ0xSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9McEhEandMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9McEhEa0FMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI193Y2puSUFJV0VlQ1ZyTEVCSDVlam5RIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTHBIRGdRTFJFZUN0WU1YcHBmcUxNdyIgeD0iNTY1IiB5PSIyOCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSIxMTMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfTHAycVlBTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9McDJxWWdMUkVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0xwMnFZd0xSRWVDdFlNWHBwZnFMTXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTHAycVpBTFJFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0xwMnFaUUxSRWVDdFlNWHBwZnFMTXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9McDJxWmdMUkVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9McDJxWndMUkVlQ3RZTVhwcGZxTE13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9McDJxYUFMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9McDJxYVFMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItdW5HQUxSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8yb0x4OEFMUkVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8zQmczOEFMUkVlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iODgiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1BfZDhZQUtvRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLXVuR1FMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYi11bkdnTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzNacHJJQUxSRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzNzNEpJQUxSRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI4OCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfVFdnSm9BS29FZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ItdW5Hd0xSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iLXVuSEFMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNk1LMkVBTFJFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNmc0aDBBTFJFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19YU2UzQUFLb0VlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYi11bkhRTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItdW5IZ0xSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il83VHNlMEFMUkVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il83WXdsQUFMUkVlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2JXOVpFQUtvRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLXVuSHdMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYi11bklBTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzhhVXZzQUxSRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzhuSkRzQUxSRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfZmNVcjhBS29FZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ItdW5JUUxSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iLXVuSWdMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOVVjT2tBTFJFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOWc5bm9BTFJFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19qY0xNc0FLb0VlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYi11bkl3TFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItdW5KQUxSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8tRHJUSUFMUkVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tSk1GUUFMUkVlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX21YN3pNQUtvRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLXVuSlFMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYi11bkpnTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXy03YU1ZQUxSRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19DUkNVQUxSRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcE1QRzBBS29FZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ItdW5Kd0xSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0xwMnFhZ0xSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9McDJxYXdMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9McDJxYkFMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0xwMnFiUUxSRWVDdFlNWHBwZnFMTXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfTHAycWJnTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0xwMnFid0xSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0xwMnFjQUxSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX09IZzhRQUtvRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9McDJxWVFMUkVlQ3RZTVhwcGZxTE13IiB4PSIyNCIgeT0iMzQiIGhlaWdodD0iMTcxIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0xxbVJRQUxSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTHFtUlFnTFJFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9McW1SUXdMUkVlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0xxbVJSQUxSRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9McW1SUlFMUkVlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTHFtUlJnTFJFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTHFtUlJ3TFJFZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTHFtUlNBTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfTHFtUlNRTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iLWxkUEFMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfWlVLbzBBTFNFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWmNOeGtBTFNFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19CRlF4Y0FLcEVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYi1sZFBRTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItbGRQZ0xSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9aektSOEFMU0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9aM2V4UUFMU0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0R1MWJ3QUtwRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLWxkUHdMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYi1sZFFBTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2FQN0djQUxTRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2FXVlFjQUxTRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfR0tHa1VBS3BFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ItbGRRUUxSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iLWxkUWdMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYkVPUk1BTFNFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYko0MFVBTFNFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19JOU9NTUFLcEVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYi1sZFF3TFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItbGRSQUxSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9jQm50a0FMU0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9jRldYQUFMU0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNTYiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX01YOTB3QUtwRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLWxkUlFMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYi1sZFJnTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2NvVzljQUxTRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2N0NFdvQUxTRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI1NiIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfZVlSWWdBS3BFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ItbGRSd0xSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iLWxkU0FMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZFZYTllBTFNFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZGJCd2dBTFNFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjU2Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19vYWc1Z0FLcEVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYi1sZFNRTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItdW5FQUxSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQkJaZ0FMU0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9lSFNaa0FMU0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNTYiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3MwSk1NQUtwRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLXVuRVFMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYi11bkVnTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2Uxb0dRQUxTRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2h1c2xJQUxTRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfeXpqdzhBS3BFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ItdW5Fd0xSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iLXVuRkFMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZmdQd2tBTFNFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfaFpyLWNBTFNFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI18yVjUyVUFLcEVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYi11bkZRTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItdW5GZ0xSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9nT2NUVUFMU0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9oQ3ZlRUFMU0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzVLcDE0QUtwRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLXVuRndMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9McW1SU2dMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfTHFtUlN3TFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTHFtUlRBTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9McW1SVFFMUkVlQ3RZTVhwcGZxTE13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0xxbVJUZ0xSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9McW1SVHdMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9McW1SVUFMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI181ZF9lRUFLb0VlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTHFtUlFRTFJFZUN0WU1YcHBmcUxNdyIgeD0iMjQiIHk9IjI0MyIgaGVpZ2h0PSIxODkiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfTHJWNElBTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9MclY0SWdMUkVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0xyVjRJd0xSRWVDdFlNWHBwZnFMTXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTHJWNEpBTFJFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0xyVjRKUUxSRWVDdFlNWHBwZnFMTXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9MclY0SmdMUkVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9MclY0SndMUkVlQ3RZTVhwcGZxTE13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9MclY0S0FMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9MclY0S1FMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItdW5NQUxSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il96LTBHZ0FMU0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wSEFaTUFMU0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2Y2WEE0QUtxRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLXVuTVFMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYi11bk1nTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzBhaHlJQUxTRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzExYkMwQUxTRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfaDlvZ01BS3FFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ItdW5Nd0xSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iLXVuTkFMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMlNWQlFBTFNFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMlhfa1lBTFNFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjU2Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19uQ1ZKSUFLcUVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYi11bk5RTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItdW5OZ0xSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8ydjFjb0FMU0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il80MDVyc0FMU0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3YzclpNQUtxRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLXVuTndMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYi11bk9BTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzNna1dBQUxTRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzNrU1lZQUxTRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI1NiIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfMnhNMXdBS3FFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ItdW5PUUxSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iLXVuT2dMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNWppNllBTFNFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNW9kMm9BTFNFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI184NEVHVUFLcUVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYi11bk93TFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItNFlFQUxSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il82WmZENEFMU0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il82MHdxb0FMU0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNTYiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0F4TmlJQUtyRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLTRZRVFMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9MclY0S2dMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfTHJWNEt3TFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTHJWNExBTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9MclY0TFFMUkVlQ3RZTVhwcGZxTE13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0xyVjRMZ0xSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9MclY0THdMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9MclY0TUFMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19jZ1dZSUFLcUVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTHJWNElRTFJFZUN0WU1YcHBmcUxNdyIgeD0iMjA5IiB5PSIyNDMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfTHI4VkVBTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9McjhWRWdMUkVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0xyOFZFd0xSRWVDdFlNWHBwZnFMTXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTHI4VkZBTFJFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0xyOFZGUUxSRWVDdFlNWHBwZnFMTXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9McjhWRmdMUkVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9McjhWRndMUkVlQ3RZTVhwcGZxTE13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9McjhWR0FMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9McjhWR1FMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItUjdKZ0xSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9BQUdqa0FMU0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9BRmVMd0FMU0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzVlRkEwQUtzRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLVI3SndMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYi1SN0tBTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0FmMXprQUxTRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0Frd3YwQUxTRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfQUZ1cVFBS3RFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ItUjdLUUxSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iLWJzSUFMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQTdIYVVBTFNFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQkZQbXNBTFNFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19EVkthc0FLdEVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYi1ic0lRTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItYnNJZ0xSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9CdjNSQUFMU0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9CX1hGa0FMU0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0dNbWg0QUt0RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLWJzSXdMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYi1ic0pBTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0NndlVVQUxTRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0NtakJZQUxTRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfS0x0YndBS3RFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ItYnNKUUxSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iLWJzSmdMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRE0yTVlBTFNFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRFI2U2tBTFNFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19OUndtc0FLdEVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYi1ic0p3TFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItYnNLQUxSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9EMTAzOEFMU0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9EODAzMEFMU0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1FXd0JzQUt0RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLWJzS1FMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYi1ic0tnTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0U1N1pRQUxTRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0ZGUDRjQUxTRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfUzNpamNBS3RFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ItYnNLd0xSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iLWJzTEFMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRmltaTBBTFNFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRm1MYlFBTFNFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjU2Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19WRU5QVUFLdEVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYi1ic0xRTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItYnNMZ0xSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9GLXc2WUFMU0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9HRWJkZ0FMU0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNTYiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2FPa2JZQUt0RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLWJzTHdMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9McjhWR2dMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfTHI4Vkd3TFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTHI4VkhBTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9McjhWSFFMUkVlQ3RZTVhwcGZxTE13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0xyOFZIZ0xSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9McjhWSHdMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9McjhWSUFMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI196ZHdkSUFLc0VlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTHI4VkVRTFJFZUN0WU1YcHBmcUxNdyIgeD0iMjA5IiB5PSIzMCIgaGVpZ2h0PSIxNzEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfTHMxczhBTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9MczFzOGdMUkVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0xzMXM4d0xSRWVDdFlNWHBwZnFMTXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTHMxczlBTFJFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0xzMXM5UUxSRWVDdFlNWHBwZnFMTXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9MczFzOWdMUkVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9MczFzOXdMUkVlQ3RZTVhwcGZxTE13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9MczFzLUFMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9MczFzLVFMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItbGRJQUxSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9zQy1SVUFMU0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9zSVY1Z0FMU0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3BqcWdvQUt1RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLWxkSVFMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYi1sZElnTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3NnZXNzQUxTRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3NsWm84QUxTRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcnFFemdBS3VFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ItbGRJd0xSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iLWxkSkFMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfczhXSlVBTFNFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdEJSRmtBTFNFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI190MkFma0FLdUVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYi1sZEpRTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItbGRKZ0xSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il90aThQUUFMU0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il90bnRhZ0FMU0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3dLNEZNQUt1RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLWxkSndMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYi1sZEtBTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2wxMm53QUxTRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX25UdTdBQUxTRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfeWVHc0VBS3VFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ItbGRLUUxSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iLWxkS2dMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdVNWRTBBTFNFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdVhQYUFBTFNFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI18xMEdYZ0FLdUVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYi1sZEt3TFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItbGRMQUxSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il92Q1R3UUFMU0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il92R3lBa0FMU0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNTYiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzRDdGtJQUt1RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLWxkTFFMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9MczFzLWdMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfTHMxcy13TFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTHMxc19BTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9MczFzX1FMUkVlQ3RZTVhwcGZxTE13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0xzMXNfZ0xSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9MczFzX3dMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9MczF0QUFMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19tSkRhOEFLdUVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTHMxczhRTFJFZUN0WU1YcHBmcUxNdyIgeD0iNDcwIiB5PSIyNDMiIGhlaWdodD0iMTM2Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0x0bFQwQUxSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTHRsVDBnTFJFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9MdGxUMHdMUkVlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0x0bFQxQUxSRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9MdGxUMVFMUkVlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTHRsVDFnTFJFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTHRsVDF3TFJFZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTHRsVDJBTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfTHRsVDJRTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iLWJzTUFMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfeS1Jc29BTFNFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeklIdkVBTFNFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI193dmdtMEFLdkVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYi1ic01RTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItYnNNZ0xSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il96Zk9BY0FMU0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il96azRqa0FMU0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzBmSHNJQUt2RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLWJzTXdMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9MdGxUMmdMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfTHRsVDJ3TFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTHRsVDNBTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9MdGxUM1FMUkVlQ3RZTVhwcGZxTE13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0x0bFQzZ0xSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9MdGxUM3dMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9MdGxUNEFMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xeEpLOEFLdkVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTHRsVDBRTFJFZUN0WU1YcHBmcUxNdyIgeD0iMTg1IiB5PSI0NTgiIGhlaWdodD0iNzEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfTHVMSnNBTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9MdUxKc2dMUkVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0x1TEpzd0xSRWVDdFlNWHBwZnFMTXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTHVMSnRBTFJFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0x1TEp0UUxSRWVDdFlNWHBwZnFMTXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9MdUxKdGdMUkVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9MdVU2c0FMUkVlQ3RZTVhwcGZxTE13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9MdVU2c1FMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9MdVU2c2dMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItUjdJQUxSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il92a3VnMEFMU0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il92eEdJNEFMU0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1EwZEtBQUt3RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLVI3SVFMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYi1SN0lnTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3dFZHcwQUxTRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3dKTzhFQUxTRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfUzhESW9BS3dFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ItUjdJd0xSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iLVI3SkFMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfd2JhNFFBTFNFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfd3JxVHNBTFNFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjU2Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19WTjdyc0FLd0VlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYi1SN0pRTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfTHVVNnN3TFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0x1VTZ0QUxSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0x1VTZ0UUxSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfTHVVNnRnTFJFZUN0WU1YcHBmcUxNdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9MdVU2dHdMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfTHVVNnVBTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTHVVNnVRTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfT3pzek1BS3dFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0x1TEpzUUxSRWVDdFlNWHBwZnFMTXciIHg9IjMwIiB5PSI0NTgiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfTHU2d2tBTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9MdTZ3a2dMUkVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0x1Nndrd0xSRWVDdFlNWHBwZnFMTXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTHU2d2xBTFJFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0x1NndsUUxSRWVDdFlNWHBwZnFMTXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9MdTZ3bGdMUkVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9MdTZ3bHdMUkVlQ3RZTVhwcGZxTE13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9MdTZ3bUFMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9MdTZ3bVFMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItbGROZ0xSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9vUE1kc0FMU0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vV01ka0FMU0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3NfTzlzQUt3RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLWxkTndMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYi1sZE9BTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX29xVHNZQUxTRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX292aGprQUxTRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfdm5leVVBS3dFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ItbGRPUUxSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iLWxkT2dMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcEd4bDhBTFNFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcExQUE1BTFNFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI18xWjhnTUFLd0VlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYi1sZE93TFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfTHU2d21nTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0x1Nndtd0xSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0x1NnduQUxSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfTHU2d25RTFJFZUN0WU1YcHBmcUxNdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9MdTZ3bmdMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfTHU2d253TFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTHU2d29BTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfbzk0QkVBS3dFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0x1NndrUUxSRWVDdFlNWHBwZnFMTXciIHg9IjM1MCIgeT0iNDU4IiBoZWlnaHQ9Ijg0Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0x2cVhjQUxSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTHZxWGNnTFJFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9MdnFYY3dMUkVlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0x2cVhkQUxSRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9MdnFYZFFMUkVlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTHZxWGRnTFJFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTHZxWGR3TFJFZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTHZxWGVBTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfTHZxWGVRTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iLWxkTGdMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcG9TLW9BTFNFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcHk0ZUFBTFNFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI4Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI195NmlwRUFLeEVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYi1sZEx3TFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItbGRNQUxSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9xWGlxUUFMU0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9xZHBTUUFMU0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzFKU19vQUt4RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLWxkTVFMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYi1sZE1nTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3EzSUpRQUxTRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3E4ZnhjQUxTRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfM2pyWFlBS3hFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ItbGRNd0xSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iLWxkTkFMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcmh2emtBTFNFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcm1YTjBBTFNFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI182VkFQZ0FLeEVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYi1sZE5RTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfTHZxWGVnTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0x2cVhld0xSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0x2cVhmQUxSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfTHZxWGZRTFJFZUN0WU1YcHBmcUxNdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9MdnFYZmdMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfTHZxWGZ3TFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTHZxWGdBTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfdnUxaUVBS3hFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0x2cVhjUUxSRWVDdFlNWHBwZnFMTXciIHg9IjU1MCIgeT0iNDU4IiBoZWlnaHQ9Ijk3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0x3UTBZQUxSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTHdRMFlnTFJFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9Md1EwWXdMUkVlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0x3UTBaQUxSRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9Md1EwWlFMUkVlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTHdRMFpnTFJFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTHdRMFp3TFJFZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTHdRMGFBTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfTHdRMGFRTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iLWJzTkFMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSEU5R1lBTFNFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSE1aeU1BTFNFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19kb3ZOY1FLekVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYi1ic05RTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItYnNPZ0xSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9SZTR1b0FMU0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9SbEp1c0FMU0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2lyeTNvQUt6RWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLWJzT3dMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYi1ic1BBTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1ItVkRzQUxTRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1NGTDVvQUxTRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfbUh2YUVBS3pFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ItYnNQUUxSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iLWJzUGdMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfU3ZOSEFBTFNFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUzBJRFFBTFNFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19vdjFkc0FLekVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYi1ic1B3TFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItYnNRQUxSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9UVUtPTUFMU0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9UWjB4VUFMU0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3RDbmhnQUt6RWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLWJzUVFMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYi1ic1FnTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1VTNXVZQUxTRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1VYMERrQUxTRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfdnEydkVBS3pFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ItYnNRd0xSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9iLWJzUkFMUkVlQ3RZTVhwcGZxTE13IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVThVZTBBTFNFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVkNJeThBTFNFZUN0WU1YcHBmcUxNdyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI196V0pWRUFLekVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYi1ic1JRTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ItYnNSZ0xSRWVDdFlNWHBwZnFMTXciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9WMnU0b0FMU0VlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9WNktuSUFMU0VlQ3RZTVhwcGZxTE13IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNTYiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzFybXdrQUt6RWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iLWJzUndMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYi1ic1NBTFJFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1hHbWxFQUxTRWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1h5YWlNQUxTRWVDdFlNWHBwZnFMTXciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfNE1Gd1VBS3pFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2ItYnNTUUxSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0x3UTBhZ0xSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9Md1EwYXdMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9Md1EwYkFMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0x3UTBiUUxSRWVDdFlNWHBwZnFMTXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfTHdRMGJnTFJFZUN0WU1YcHBmcUxNdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0x3UTBid0xSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0x3UTBjQUxSRWVDdFlNWHBwZnFMTXciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2Rvdk5jQUt6RWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9Md1EwWVFMUkVlQ3RZTVhwcGZxTE13IiB4PSI0MTAiIHk9IjMwIiBoZWlnaHQ9IjE3MSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9Fc2lsY0tsQ0VlQ0RYLVI0dXB4SXBnIiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0VzaWxjcWxDRWVDRFgtUjR1cHhJcGciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRXNpbGM2bENFZUNEWC1SNHVweElwZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Fc2lsZEtsQ0VlQ0RYLVI0dXB4SXBnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRXNpbGRhbENFZUNEWC1SNHVweElwZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0Vzc1djS2xDRWVDRFgtUjR1cHhJcGciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0Vzc1djYWxDRWVDRFgtUjR1cHhJcGciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0Vzc1djcWxDRWVDRFgtUjR1cHhJcGciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0Vzc1djNmxDRWVDRFgtUjR1cHhJcGciIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfSjBZQjhLbENFZUNEWC1SNHVweElwZyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfSm9BWjRLbENFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0owWUI4YWxDRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9TbXYyZ0tsQ0VlQ0RYLVI0dXB4SXBnIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19TbUFQb0tsQ0VlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfU212MmdhbENFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1hfSHBZS2xDRWVDRFgtUjR1cHhJcGciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1gtT1JnS2xDRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9YX0hwWWFsQ0VlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZFFMNllLbENFZUNEWC1SNHVweElwZyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfZFBjVGdLbENFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2RRTDZZYWxDRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9Fc3NXZEtsQ0VlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0Vzc1dkYWxDRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9Fc3NXZHFsQ0VlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9Fc3NXZDZsQ0VlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0Vzc1dlS2xDRWVDRFgtUjR1cHhJcGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0Vzc1dlYWxDRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfRXNzV2VxbENFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0Vzc1dlNmxDRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0Vzc1dmS2xDRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0VyV1NvS2xDRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9Fc2lsY2FsQ0VlQ0RYLVI0dXB4SXBnIiB4PSIzNTAiIHk9IjU5MSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9HTTB2b0tsR0VlQ0RYLVI0dXB4SXBnIiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dOUmJrS2xHRWVDRFgtUjR1cHhJcGciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR05SYmthbEdFZUNEWC1SNHVweElwZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9HTlJia3FsR0VlQ0RYLVI0dXB4SXBnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfR05SYms2bEdFZUNEWC1SNHVweElwZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dOUmJsS2xHRWVDRFgtUjR1cHhJcGciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0dOUmJsYWxHRWVDRFgtUjR1cHhJcGciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0dOUmJscWxHRWVDRFgtUjR1cHhJcGciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0dOUmJsNmxHRWVDRFgtUjR1cHhJcGciIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZ3dMNWtLbEdFZUNEWC1SNHVweElwZyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0dzeS1FS3VVRWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3VpdFFRS3VoRWVDV0ZKeldrZmhQSGciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIxMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2d2Y1NzS2xHRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9nd0w1a2FsR0VlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfM2s5NDhLbEdFZUNEWC1SNHVweElwZyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzVUSjdFS3VoRWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZGOTRFS3VoRWVDV0ZKeldrZmhQSGciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI5MiIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfM2tPU0VLbEdFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzNrOTQ4YWxHRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il85Z052WUtsR0VlQ0RYLVI0dXB4SXBnIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfLWpMRE1LdWhFZUNXRkp6V2tmaFBIZyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfLW9zY1lLdWhFZUNXRkp6V2tmaFBIZyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjEyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfOWZkaGNLbEdFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzlnTnZZYWxHRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9FaTAyZ0tsSEVlQ0RYLVI0dXB4SXBnIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfX2lOZVVLdWhFZUNXRkp6V2tmaFBIZyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfXzNxdzhLdWhFZUNXRkp6V2tmaFBIZyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjEyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfRWg3ZW9LbEhFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0VpMDJnYWxIRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9KZzBhZ0tsSEVlQ0RYLVI0dXB4SXBnIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRF9hcGNLdWlFZUNXRkp6V2tmaFBIZyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRVFRaDBLdWlFZUNXRkp6V2tmaFBIZyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjEyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfSmdFem9LbEhFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0pnMGFnYWxIRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9QQU0wVUtsSEVlQ0RYLVI0dXB4SXBnIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfS1QxMDRLdWlFZUNXRkp6V2tmaFBIZyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfS2RyR1VLdWlFZUNXRkp6V2tmaFBIZyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjEyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfT19UY2NLbEhFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1BBTTBVYWxIRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9WVldfa0tsSEVlQ0RYLVI0dXB4SXBnIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTElTd29LdWlFZUNXRkp6V2tmaFBIZyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTFBKbWtLdWlFZUNXRkp6V2tmaFBIZyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjEyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfVlU2NnNLbEhFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1ZWV19rYWxIRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9hV01jTUtsSEVlQ0RYLVI0dXB4SXBnIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUUdjRm9LdWlFZUNXRkp6V2tmaFBIZyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUWo3NThLdWlFZUNXRkp6V2tmaFBIZyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjEyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfYVZjT1FLbEhFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2FXTWNNYWxIRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9kTjYzUUtsSEVlQ0RYLVI0dXB4SXBnIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUmlYNElLdWlFZUNXRkp6V2tmaFBIZyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUm95Q0lLdWlFZUNXRkp6V2tmaFBIZyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjEyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfZE5MUVlLbEhFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2RONjNRYWxIRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9nOHk4d0tsSEVlQ0RYLVI0dXB4SXBnIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVzdXdkFLdWlFZUNXRkp6V2tmaFBIZyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVzdnZ0FLdWlFZUNXRkp6V2tmaFBIZyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjYwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19nOEN1MEtsSEVlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZzh5OHdhbEhFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0dOUmJtS2xHRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfR05SYm1hbEdFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0dOUmJtcWxHRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dOUmJtNmxHRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfR05SYm5LbEdFZUNEWC1SNHVweElwZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfR05SYm5hbEdFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9HTlJibnFsR0VlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfR05SYm42bEdFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR05SYm9LbEdFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfR01GSXdLbEdFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0dNMHZvYWxHRWVDRFgtUjR1cHhJcGciIHg9IjUwNSIgeT0iNTcxIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX014cEhnS2xHRWVDRFgtUjR1cHhJcGciIHR5cGU9IjMwMjciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTXlGemNLbEdFZUNEWC1SNHVweElwZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NeUZ6Y2FsR0VlQ0RYLVI0dXB4SXBnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX015RnpjcWxHRWVDRFgtUjR1cHhJcGciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NeUZ6YzZsR0VlQ0RYLVI0dXB4SXBnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTXlGemRLbEdFZUNEWC1SNHVweElwZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTXlGemRhbEdFZUNEWC1SNHVweElwZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTXlGemRxbEdFZUNEWC1SNHVweElwZyIgdHlwZT0iNTA2MSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfTXlGemQ2bEdFZUNEWC1SNHVweElwZyIgdHlwZT0iNzAzMiI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il91S25YQUtsSkVlQ0RYLVI0dXB4SXBnIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcWhCMmNLdVVFZUNXRkp6V2tmaFBIZyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcWhlaVlLdVVFZUNXRkp6V2tmaFBIZyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjYwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI191SjNKRUtsSkVlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdUtuWEFhbEpFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0VSbzRnS2xLRWVDRFgtUjR1cHhJcGciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9wWG1kVUt1aEVlQ1dGSnpXa2ZoUEhnIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9wWG1kVWF1aEVlQ1dGSnpXa2ZoUEhnIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNjAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0VRd0hzS2xLRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9FUm80Z2FsS0VlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfSTVjS0VLbEtFZUNEWC1SNHVweElwZyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3BGYklNS3VoRWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3BGYklNYXVoRWVDV0ZKeldrZmhQSGciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI2MCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfSTRpeU1LbEtFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0k1Y0tFYWxLRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9RbmFpWUtsS0VlQ0RYLVI0dXB4SXBnIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfb3lwV0lLdWhFZUNXRkp6V2tmaFBIZyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb3lwV0lhdWhFZUNXRkp6V2tmaFBIZyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjYwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19RbWhLZ0tsS0VlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfUW5haVlhbEtFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1ZMN1BZS2xLRWVDRFgtUjR1cHhJcGciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9vZjNrRUt1aEVlQ1dGSnpXa2ZoUEhnIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vZjNrRWF1aEVlQ1dGSnpXa2ZoUEhnIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iNjAiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1ZMQ2VrS2xLRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9WTDdQWWFsS0VlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfRXlOWmdLbExFZUNEWC1SNHVweElwZyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3A0UEZNS3VoRWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3F6WkY0S3VoRWVDV0ZKeldrZmhQSGciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI2MCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfRXhVb3NLbExFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0V5TlpnYWxMRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il8yVlVQZUZXNEVlS0dmcUVvVjBla0R3IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI18ySWhUb0tsSEVlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMlZVUGVWVzRFZUtHZnFFb1YwZWtEdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzJWVVBnbFc0RWVLR2ZxRW9WMGVrRHciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2FsTGQ4S2xJRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8yVlVQZzFXNEVlS0dmcUVvVjBla0R3Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfTXlGemVLbEdFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9NeUZ6ZWFsR0VlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfTXlGemVxbEdFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTXlGemU2bEdFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9NeUZ6ZktsR0VlQ0RYLVI0dXB4SXBnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9NeUZ6ZmFsR0VlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX015RnpmcWxHRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9NeUZ6ZjZsR0VlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9NeUZ6Z0tsR0VlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19Nd3Z2b0tsR0VlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTXhwSGdhbEdFZUNEWC1SNHVweElwZyIgeD0iMjUiIHk9IjU3OCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il8wZ1dCY0t1akVlQ1dGSnpXa2ZoUEhnIiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzBnV0JjcXVqRWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMGdXQmM2dWpFZUNXRkp6V2tmaFBIZyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8wZ1dCZEt1akVlQ1dGSnpXa2ZoUEhnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMGdXQmRhdWpFZUNXRkp6V2tmaFBIZyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzBnV0JkcXVqRWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzBnV0JkNnVqRWVDV0ZKeldrZmhQSGciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzBnV0JlS3VqRWVDV0ZKeldrZmhQSGciIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzBnV0JlYXVqRWVDV0ZKeldrZmhQSGciIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfMmNuZzRLdWpFZUNXRkp6V2tmaFBIZyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzZoaXU0S3VqRWVDV0ZKeldrZmhQSGciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZoX2EwS3VqRWVDV0ZKeldrZmhQSGciIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI2MCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfMmIzNkFLdWpFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzJjbmc0YXVqRWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il83NWRrRUt1akVlQ1dGSnpXa2ZoUEhnIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQVpEVTBLdWtFZUNXRkp6V2tmaFBIZyIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQVpEVTBhdWtFZUNXRkp6V2tmaFBIZyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjYwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI183NHQ5TUt1akVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfNzVka0VhdWpFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0JuNGZjS3VrRWVDV0ZKeldrZmhQSGciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0JuU3BrS3VrRWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9CbjRmY2F1a0VlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfMGdXQmVxdWpFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il8wZ1dCZTZ1akVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfMGdXQmZLdWpFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMGdXQmZhdWpFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il8wZ1dCZnF1akVlQ1dGSnpXa2ZoUEhnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il8wZ1dCZjZ1akVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iXzBnV0JnS3VqRWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il8wZ1dCZ2F1akVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8wZ1dCZ3F1akVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI18wZV85b0t1akVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMGdXQmNhdWpFZUNXRkp6V2tmaFBIZyIgeD0iNjgwIiB5PSIyNSIgd2lkdGg9IjEwMCIgaGVpZ2h0PSIxMTMiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfUWFrd2dLdk1FZUNGdmJ0TFZfekNIdyIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9RYWt3Z3F2TUVlQ0Z2YnRMVl96Q0h3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1Fha3dnNnZNRWVDRnZidExWX3pDSHciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUWFrd2hLdk1FZUNGdmJ0TFZfekNIdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1Fha3doYXZNRWVDRnZidExWX3pDSHciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9RYWt3aHF2TUVlQ0Z2YnRMVl96Q0h3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9RYWt3aDZ2TUVlQ0Z2YnRMVl96Q0h3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9RYWt3aUt2TUVlQ0Z2YnRMVl96Q0h3IiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9RYWt3aWF2TUVlQ0Z2YnRMVl96Q0h3IiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1N6bkVjS3ZNRWVDRnZidExWX3pDSHciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9mYXFya0t2TUVlQ0Z2YnRMVl96Q0h3IiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mYXFya2F2TUVlQ0Z2YnRMVl96Q0h3IiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMTIwIi8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19TeC1zd0t2TUVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfU3puRWNhdk1FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2xISnRRS3ZNRWVDRnZidExWX3pDSHciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2xHajNZS3ZNRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9sSEp0UWF2TUVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfcnRtYzBLdk1FZUNGdmJ0TFZfekNIdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcnMyMThLdk1FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3J0bWMwYXZNRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il93ZW9pNEt2TUVlQ0Z2YnRMVl96Q0h3IiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI193ZDQ4QUt2TUVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfd2VvaTRhdk1FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3p0bkFVS3ZNRWVDRnZidExWX3pDSHciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3pzM1pjS3ZNRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il96dG5BVWF2TUVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfMTgwQzBLdk1FZUNGdmJ0TFZfekNIdyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfMThFYjhLdk1FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzE4MEMwYXZNRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9RYWt3aXF2TUVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX1Fha3dpNnZNRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9RYWt3akt2TUVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9RYWt3amF2TUVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1Fha3dqcXZNRWVDRnZidExWX3pDSHciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1Fha3dqNnZNRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfUWFrd2tLdk1FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX1Fha3drYXZNRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1Fha3drcXZNRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1FacllvS3ZNRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9RYWt3Z2F2TUVlQ0Z2YnRMVl96Q0h3IiB4PSI2MzciIHk9IjIwMCIgaGVpZ2h0PSIxMjYiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfOVhINFFLdk1FZUNGdmJ0TFZfekNIdyIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il85WEg0UXF2TUVlQ0Z2YnRMVl96Q0h3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzlYSDRRNnZNRWVDRnZidExWX3pDSHciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOVhINFJLdk1FZUNGdmJ0TFZfekNIdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzlYSDRSYXZNRWVDRnZidExWX3pDSHciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il85WEg0UnF2TUVlQ0Z2YnRMVl96Q0h3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il85WEg0UjZ2TUVlQ0Z2YnRMVl96Q0h3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il85WEg0U0t2TUVlQ0Z2YnRMVl96Q0h3IiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il85WEg0U2F2TUVlQ0Z2YnRMVl96Q0h3IiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX19vMnFVS3ZNRWVDRnZidExWX3pDSHciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX19vSERjS3ZNRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9fbzJxVWF2TUVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfOVhINFNxdk1FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il85WEg0UzZ2TUVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfOVhINFRLdk1FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfOVhINFRhdk1FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il85WEg0VHF2TUVlQ0Z2YnRMVl96Q0h3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il85WEg0VDZ2TUVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iXzlYSDRVS3ZNRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il85WEg0VWF2TUVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il85WEg0VXF2TUVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI185V1lSWUt2TUVlQ0Z2YnRMVl96Q0h3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfOVhINFFhdk1FZUNGdmJ0TFZfekNIdyIgeD0iNjQwIiB5PSIzNDAiIGhlaWdodD0iNjYiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfVFdVaTREaWhFZUtydWZKcXhSNldpZyIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9UV1VpNGppaEVlS3J1ZkpxeFI2V2lnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1RXVWk0emloRWVLcnVmSnF4UjZXaWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVFdVaTVEaWhFZUtydWZKcXhSNldpZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1RXVWk1VGloRWVLcnVmSnF4UjZXaWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9UV1VpNWppaEVlS3J1ZkpxeFI2V2lnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9UV1VpNXppaEVlS3J1ZkpxeFI2V2lnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9UV1VpNkRpaEVlS3J1ZkpxeFI2V2lnIiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9UV1VpNlRpaEVlS3J1ZkpxeFI2V2lnIiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2JOX0NzRGloRWVLcnVmSnF4UjZXaWciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2JOUGIwRGloRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9iTl9Dc1RpaEVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfODVicG9EaWhFZUtydWZKcXhSNldpZyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfODVJdXNEaWhFZUtydWZKcXhSNldpZyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzg1YnBvVGloRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9CWUlwa0RpaUVlS3J1ZkpxeFI2V2lnIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19CWHI5b0RpaUVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQllJcGtUaWlFZUtydWZKcXhSNldpZyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dVeUp3RGlpRWVLcnVmSnF4UjZXaWciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0dVVmQwRGlpRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9HVXlKd1RpaUVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfTkl5ME1EaWlFZUtydWZKcXhSNldpZyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTklmU01EaWlFZUtydWZKcXhSNldpZyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX05JeTBNVGlpRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9QYjNxRURpaUVlS3J1ZkpxeFI2V2lnIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19QYmtJRURpaUVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfUGIzcUVUaWlFZUtydWZKcXhSNldpZyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1RXVWk2amloRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfVFdVaTZ6aWhFZUtydWZKcXhSNldpZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX1RXVWk3RGloRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1RXVWk3VGloRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfVFdVaTdqaWhFZUtydWZKcXhSNldpZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfVFdVaTd6aWhFZUtydWZKcXhSNldpZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9UV1VpOERpaEVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfVFdVaThUaWhFZUtydWZKcXhSNldpZyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfVFdVaThqaWhFZUtydWZKcXhSNldpZyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfVFZrOEFEaWhFZUtydWZKcXhSNldpZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1RXVWk0VGloRWVLcnVmSnF4UjZXaWciIHg9IjgxNiIgeT0iMzYiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfVnE0bWdEaWhFZUtydWZKcXhSNldpZyIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9WcTRtZ2ppaEVlS3J1ZkpxeFI2V2lnIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1ZxNG1nemloRWVLcnVmSnF4UjZXaWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVnE0bWhEaWhFZUtydWZKcXhSNldpZyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1ZxNG1oVGloRWVLcnVmSnF4UjZXaWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9WcTRtaGppaEVlS3J1ZkpxeFI2V2lnIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9WcTRtaHppaEVlS3J1ZkpxeFI2V2lnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9WcTRtaURpaEVlS3J1ZkpxeFI2V2lnIiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9WcTRtaVRpaEVlS3J1ZkpxeFI2V2lnIiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzZVZVprRGloRWVLcnVmSnF4UjZXaWciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzZVQ1VzRGloRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il82VWVaa1RpaEVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfWk1YNjBEaWlFZUtydWZKcXhSNldpZyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfWkx4ZDREaWlFZUtydWZKcXhSNldpZyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1pNWDYwVGlpRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9ienR3Z0RpaUVlS3J1ZkpxeFI2V2lnIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19iempfZ0RpaUVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYnp0d2dUaWlFZUtydWZKcXhSNldpZyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2R4eF9zRGlpRWVLcnVmSnF4UjZXaWciIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2R4ZWRzRGlpRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9keHhfc1RpaUVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfaE9LbkFEaWlFZUtydWZKcXhSNldpZyIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfaE50N0VEaWlFZUtydWZKcXhSNldpZyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2hPS25BVGlpRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9WcTRtaWppaEVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX1ZxNG1pemloRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9WcTRtakRpaEVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9WcTRtalRpaEVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1ZxNG1qamloRWVLcnVmSnF4UjZXaWciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1ZxNG1qemloRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfVnE0bWtEaWhFZUtydWZKcXhSNldpZyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX1ZxNG1rVGloRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1ZxNG1ramloRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1ZxU3dvRGloRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9WcTRtZ1RpaEVlS3J1ZkpxeFI2V2lnIiB4PSI4MTYiIHk9IjIwNSIgd2lkdGg9IjEyMCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9VWFlLVUZXNEVlS0dmcUVvVjBla0R3IiB0eXBlPSIzMDI1IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1VYWUtVbFc0RWVLR2ZxRW9WMGVrRHciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVVhZS1UxVzRFZUtHZnFFb1YwZWtEdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9VWFlLVkZXNEVlS0dmcUVvVjBla0R3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVVhZS1ZWVzRFZUtHZnFFb1YwZWtEdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1VYWUtWbFc0RWVLR2ZxRW9WMGVrRHciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1VYWUtWMVc0RWVLR2ZxRW9WMGVrRHciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1VYWUtXRlc0RWVLR2ZxRW9WMGVrRHciIHR5cGU9IjUwNTUiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1VYWUtXVlc0RWVLR2ZxRW9WMGVrRHciIHR5cGU9IjcwMzEiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfWndDUkVGVzRFZUtHZnFFb1YwZWtEdyIgdHlwZT0iMzAxNyIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX1p2bU1NRlc0RWVLR2ZxRW9WMGVrRHciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9ad0NSRVZXNEVlS0dmcUVvVjBla0R3Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfcklrRElGVzRFZUtHZnFFb1YwZWtEdyIgdHlwZT0iMzAxNyIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3JIMGNRRlc0RWVLR2ZxRW9WMGVrRHciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9ySWtESVZXNEVlS0dmcUVvVjBla0R3Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfc3hVd3NGVzRFZUtHZnFFb1YwZWtEdyIgdHlwZT0iMzAxNyIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3N3dVR3Rlc0RWVLR2ZxRW9WMGVrRHciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9zeFV3c1ZXNEVlS0dmcUVvVjBla0R3Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfd3dsYmtGVzRFZUtHZnFFb1YwZWtEdyIgdHlwZT0iMzAxNyIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3d2MU5vRlc0RWVLR2ZxRW9WMGVrRHciLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il93d2xia1ZXNEVlS0dmcUVvVjBla0R3Ii8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfVVhZS1dsVzRFZUtHZnFFb1YwZWtEdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9VWFlLVzFXNEVlS0dmcUVvVjBla0R3Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfVVhZS1hGVzRFZUtHZnFFb1YwZWtEdyIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfVVhZS1hWVzRFZUtHZnFFb1YwZWtEdyIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbiIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfVVduOFlGVzRFZUtHZnFFb1YwZWtEdyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1VYWUtVVlc0RWVLR2ZxRW9WMGVrRHciIHg9IjcyNSIgeT0iNTY1Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzUzWFo0Rlc0RWVLR2ZxRW9WMGVrRHciIHR5cGU9IjMwMjUiIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgZ3JhZGllbnQ9IjEzNDIwNDQzLCAxNjc3NzIxNSwgMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNTNYWjRsVzRFZUtHZnFFb1YwZWtEdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il81M1haNDFXNEVlS0dmcUVvVjBla0R3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzUzWFo1Rlc0RWVLR2ZxRW9WMGVrRHciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il81M1haNVZXNEVlS0dmcUVvVjBla0R3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNTNYWjVsVzRFZUtHZnFFb1YwZWtEdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNTNYWjUxVzRFZUtHZnFFb1YwZWtEdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfNTNYWjZGVzRFZUtHZnFFb1YwZWtEdyIgdHlwZT0iNTA1NSIvPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfNTNYWjZWVzRFZUtHZnFFb1YwZWtEdyIgdHlwZT0iNzAzMSI+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il84eGZCb0ZXNEVlS0dmcUVvVjBla0R3IiB0eXBlPSIzMDE3IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfOHc1THdGVzRFZUtHZnFFb1YwZWtEdyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzh4ZkJvVlc0RWVLR2ZxRW9WMGVrRHciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9BSzVOY0ZXNUVlS0dmcUVvVjBla0R3IiB0eXBlPSIzMDE3IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfQUtUWGtGVzVFZUtHZnFFb1YwZWtEdyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0FLNU5jVlc1RWVLR2ZxRW9WMGVrRHciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9CMGlyMEZXNUVlS0dmcUVvVjBla0R3IiB0eXBlPSIzMDE3IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfQnp6RThGVzVFZUtHZnFFb1YwZWtEdyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0IwaXIwVlc1RWVLR2ZxRW9WMGVrRHciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9EUVZVWUZXNUVlS0dmcUVvVjBla0R3IiB0eXBlPSIzMDE3IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfRFBjamtGVzVFZUtHZnFFb1YwZWtEdyIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0RRVlVZVlc1RWVLR2ZxRW9WMGVrRHciLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il81M1haNmxXNEVlS0dmcUVvVjBla0R3Ii8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iXzUzWFo2MVc0RWVLR2ZxRW9WMGVrRHciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il81M1haN0ZXNEVlS0dmcUVvVjBla0R3Ii8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il81M1haN1ZXNEVlS0dmcUVvVjBla0R3Ii8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI181MjdWQUZXNEVlS0dmcUVvVjBla0R3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfNTNYWjRWVzRFZUtHZnFFb1YwZWtEdyIgeD0iNzM3IiB5PSI2OTUiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfSVpEaHNGVzVFZUtHZnFFb1YwZWtEdyIgdHlwZT0iMzAyNSIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9JWkRoc2xXNUVlS0dmcUVvVjBla0R3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0laRGhzMVc1RWVLR2ZxRW9WMGVrRHciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSVpEaHRGVzVFZUtHZnFFb1YwZWtEdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0laRGh0Vlc1RWVLR2ZxRW9WMGVrRHciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9JWkRodGxXNUVlS0dmcUVvVjBla0R3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9JWkRodDFXNUVlS0dmcUVvVjBla0R3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9JWkRodUZXNUVlS0dmcUVvVjBla0R3IiB0eXBlPSI1MDU1Ii8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9JWkRodVZXNUVlS0dmcUVvVjBla0R3IiB0eXBlPSI3MDMxIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0tsbERvRlc1RWVLR2ZxRW9WMGVrRHciIHR5cGU9IjMwMTciIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb25MaXRlcmFsIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19LbFNJc0ZXNUVlS0dmcUVvVjBla0R3Ii8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfS2xsRG9WVzVFZUtHZnFFb1YwZWtEdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX01YdVdzRlc1RWVLR2ZxRW9WMGVrRHciIHR5cGU9IjMwMTciIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb25MaXRlcmFsIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19NWEg1d0ZXNUVlS0dmcUVvVjBla0R3Ii8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTVh1V3NWVzVFZUtHZnFFb1YwZWtEdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1EtZDRVRlc1RWVLR2ZxRW9WMGVrRHciIHR5cGU9IjMwMTciIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb25MaXRlcmFsIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19RLUJNWUZXNUVlS0dmcUVvVjBla0R3Ii8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfUS1kNFVWVzVFZUtHZnFFb1YwZWtEdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1NwbkxnRlc1RWVLR2ZxRW9WMGVrRHciIHR5cGU9IjMwMTciIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb25MaXRlcmFsIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19TbzI5a0ZXNUVlS0dmcUVvVjBla0R3Ii8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfU3BuTGdWVzVFZUtHZnFFb1YwZWtEdyIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0laRGh1bFc1RWVLR2ZxRW9WMGVrRHciLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfSVpEaHUxVzVFZUtHZnFFb1YwZWtEdyIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0laRGh2Rlc1RWVLR2ZxRW9WMGVrRHciLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0laRGh2Vlc1RWVLR2ZxRW9WMGVrRHciLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb24iIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0lZVDYwRlc1RWVLR2ZxRW9WMGVrRHciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9JWkRoc1ZXNUVlS0dmcUVvVjBla0R3IiB4PSI5MjMiIHk9IjcxNCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9KZ2Q4Q2dMUkVlQ3RZTVhwcGZxTE13Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19KU29ha0FId0VlQ1FRT0tyaE9fZklRIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9KZ2Q4QVFMUkVlQ3RZTVhwcGZxTE13IiB4PSIxNSIgeT0iMTAiIHdpZHRoPSIxMTExIiBoZWlnaHQ9Ijk2MSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfcmNjQVVBTFRFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMjAxNiIgZWxlbWVudD0iX2hYSzZJQUxMRWVDdFlNWHBwZnFMTXciIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9yY2NBVWdMVEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcmNjQVV3TFRFZUN0WU1YcHBmcUxNdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcmNjQVZBTFRFZUN0WU1YcHBmcUxNdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcmNseFVBTFRFZUN0WU1YcHBmcUxNdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9yY2x4VVFMVEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3JjbHhVZ0xURWVDdFlNWHBwZnFMTXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9yY2x4VXdMVEVlQ3RZTVhwcGZxTE13IiB0eXBlPSIwIj4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9yY2x4VkFMVEVlQ3RZTVhwcGZxTE13IiB4PSI1NCIgeT0iMjciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9yY2NBVVFMVEVlQ3RZTVhwcGZxTE13IiB4PSI0ODAiIHk9Ijg5NSIgd2lkdGg9IjM0IiBoZWlnaHQ9IjIwIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9teUQ4OEZXNEVlS0dmcUVvVjBla0R3IiB0eXBlPSIyMDE2IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX215RDg4bFc0RWVLR2ZxRW9WMGVrRHciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9teUQ4ODFXNEVlS0dmcUVvVjBla0R3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9teUQ4OUZXNEVlS0dmcUVvVjBla0R3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9teUQ4OVZXNEVlS0dmcUVvVjBla0R3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX215RDg5bFc0RWVLR2ZxRW9WMGVrRHciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbXlEODkxVzRFZUtHZnFFb1YwZWtEdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX215RDgtRlc0RWVLR2ZxRW9WMGVrRHciIHR5cGU9IjAiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX215RDgtVlc0RWVLR2ZxRW9WMGVrRHciIHk9IjUiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfbXZPcllGVzRFZUtHZnFFb1YwZWtEdyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbXlEODhWVzRFZUtHZnFFb1YwZWtEdyIgeD0iMTMwNCIgeT0iNjI0Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX0lYQVprUUxSRWVDdFlNWHBwZnFMTXciLz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3pSaDNzQUhyRWVDUVFPS3JoT19mSVEiLz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9rWXh3VUFMVEVlQ3RZTVhwcGZxTE13IiB0eXBlPSJQYXB5cnVzVU1MQ2xhc3NEaWFncmFtIiBuYW1lPSJhY3Rpb25MaWItbXNncyIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfMXJmMVVBTFRFZUN0WU1YcHBmcUxNdyIgdHlwZT0iMjAwNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzFyZjFVZ0xURWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8xcmYxVXdMVEVlQ3RZTVhwcGZxTE13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8xcmYxVkFMVEVlQ3RZTVhwcGZxTE13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8xcmYxVlFMVEVlQ3RZTVhwcGZxTE13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzFyZjFWZ0xURWVDdFlNWHBwZnFMTXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMXJmMVZ3TFRFZUN0WU1YcHBmcUxNdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzFyZjFXQUxURWVDdFlNWHBwZnFMTXciIHR5cGU9IjUwMjYiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzFyZjFXUUxURWVDdFlNWHBwZnFMTXciIHR5cGU9IjcwMTYiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9wWDRTSUFMVUVlQ0x5UGhvN1VIVkhRIiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3BYNFNJZ0xVRWVDTHlQaG83VUhWSFEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcFg0U0l3TFVFZUNMeVBobzdVSFZIUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9wWDRTSkFMVUVlQ0x5UGhvN1VIVkhRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcFg0U0pRTFVFZUNMeVBobzdVSFZIUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3BYNFNKZ0xVRWVDTHlQaG83VUhWSFEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3BYNFNKd0xVRWVDTHlQaG83VUhWSFEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3BYNFNLQUxVRWVDTHlQaG83VUhWSFEiIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3BYNFNLUUxVRWVDTHlQaG83VUhWSFEiIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfcnlfcHNBTFVFZUNMeVBobzdVSFZIUSIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3ZEdzI0QUxVRWVDTHlQaG83VUhWSFEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3ZOQVNjQUxVRWVDTHlQaG83VUhWSFEiIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfRXUyN0VBSzVFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3J5X3BzUUxVRWVDTHlQaG83VUhWSFEiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9yeV9wc2dMVUVlQ0x5UGhvN1VIVkhRIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdm8zdkVBTFVFZUNMeVBobzdVSFZIUSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdnQ3MVFBTFVFZUNMeVBobzdVSFZIUSIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19HZUs4a0FLNUVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfcnlfcHN3TFVFZUNMeVBobzdVSFZIUSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfcFg0U0tnTFVFZUNMeVBobzdVSFZIUSIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX3BYNFNLd0xVRWVDTHlQaG83VUhWSFEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3BYNFNMQUxVRWVDTHlQaG83VUhWSFEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfcFg0U0xRTFVFZUNMeVBobzdVSFZIUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjcwMzMiPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9wWDRTTGdMVUVlQ0x5UGhvN1VIVkhRIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfcFg0U0x3TFVFZUNMeVBobzdVSFZIUSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfcFg0U01BTFVFZUNMeVBobzdVSFZIUSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfQng2QndBSzVFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3BYNFNJUUxVRWVDTHlQaG83VUhWSFEiIHg9IjUwIiB5PSIxMCIgd2lkdGg9IjE0MiIgaGVpZ2h0PSI3MCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9wWkVrOEFMVUVlQ0x5UGhvN1VIVkhRIiB0eXBlPSIzMDI3IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGdyYWRpZW50PSIxMzQyMDQ0MywgMTY3NzcyMTUsIDAiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3BaRWs4Z0xVRWVDTHlQaG83VUhWSFEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcFpFazh3TFVFZUNMeVBobzdVSFZIUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9wWkVrOUFMVUVlQ0x5UGhvN1VIVkhRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcFpFazlRTFVFZUNMeVBobzdVSFZIUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3BaRWs5Z0xVRWVDTHlQaG83VUhWSFEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3BaRWs5d0xVRWVDTHlQaG83VUhWSFEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3BaRWstQUxVRWVDTHlQaG83VUhWSFEiIHR5cGU9IjUwNjEiLz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3BaRWstUUxVRWVDTHlQaG83VUhWSFEiIHR5cGU9IjcwMzIiPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfcnkyZndBTFVFZUNMeVBobzdVSFZIUSIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3hCT3BJQUxVRWVDTHlQaG83VUhWSFEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3hGakljQUxVRWVDTHlQaG83VUhWSFEiIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTWxQa1VBTEFFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3J5MmZ3UUxVRWVDTHlQaG83VUhWSFEiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9yeTJmd2dMVUVlQ0x5UGhvN1VIVkhRIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfeFpxLVVBTFVFZUNMeVBobzdVSFZIUSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeGVTWWtBTFVFZUNMeVBobzdVSFZIUSIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19VMEFWZ0FMQUVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfcnkyZnd3TFVFZUNMeVBobzdVSFZIUSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3J5MmZ4QUxVRWVDTHlQaG83VUhWSFEiIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il94eWpZWUFMVUVlQ0x5UGhvN1VIVkhRIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il94M25la0FMVUVlQ0x5UGhvN1VIVkhRIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzdoemNBQUxBRWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9yeTJmeFFMVUVlQ0x5UGhvN1VIVkhRIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfcnkyZnhnTFVFZUNMeVBobzdVSFZIUSIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3llWFZnQUxVRWVDTHlQaG83VUhWSFEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3lrTENrQUxVRWVDTHlQaG83VUhWSFEiIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfRkR0UUVBTEJFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3J5MmZ4d0xVRWVDTHlQaG83VUhWSFEiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9yeTJmeUFMVUVlQ0x5UGhvN1VIVkhRIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfekg3MjhBTFVFZUNMeVBobzdVSFZIUSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfelZ6VDBBTFVFZUNMeVBobzdVSFZIUSIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19heEd3b0FMQkVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfcnkyZnlRTFVFZUNMeVBobzdVSFZIUSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3J5MmZ5Z0xVRWVDTHlQaG83VUhWSFEiIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il96MV9Qd0FMVUVlQ0x5UGhvN1VIVkhRIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il96OFl5c0FMVUVlQ0x5UGhvN1VIVkhRIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2RwYm9vQUxCRWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9yeTJmeXdMVUVlQ0x5UGhvN1VIVkhRIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfcnkyZnpBTFVFZUNMeVBobzdVSFZIUSIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzBmYUFNQUxVRWVDTHlQaG83VUhWSFEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzBsRWpVQUxVRWVDTHlQaG83VUhWSFEiIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfZ1FVeVlBTEJFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3J5MmZ6UUxVRWVDTHlQaG83VUhWSFEiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9yeTJmemdMVUVlQ0x5UGhvN1VIVkhRIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMVMwYUlBTFVFZUNMeVBobzdVSFZIUSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMWFSRjhBTFVFZUNMeVBobzdVSFZIUSIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19peW1oNEFMQkVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfcnkyZnp3TFVFZUNMeVBobzdVSFZIUSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3J5MmYwQUxVRWVDTHlQaG83VUhWSFEiIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8yQjZVd0FMVUVlQ0x5UGhvN1VIVkhRIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8yTGNyUUFMVUVlQ0x5UGhvN1VIVkhRIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3RjQi1zQUxCRWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9yeTJmMFFMVUVlQ0x5UGhvN1VIVkhRIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfcnkyZjBnTFVFZUNMeVBobzdVSFZIUSIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzJ0SDA4QUxVRWVDTHlQaG83VUhWSFEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzIyOUdZQUxVRWVDTHlQaG83VUhWSFEiIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSIyNCIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfdnFmYVVBTEJFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3J5MmYwd0xVRWVDTHlQaG83VUhWSFEiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9yeTJmMUFMVUVlQ0x5UGhvN1VIVkhRIiB0eXBlPSIzMDE4IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfM21WNzhBTFVFZUNMeVBobzdVSFZIUSIgc291cmNlPSJDdXN0b21BcHBlYXJhbmNlX0Fubm90YXRpb24iPgorICAgICAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfM3NKcEFBTFVFZUNMeVBobzdVSFZIUSIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjI0Ii8+CisgICAgICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI195WGZ6SUFMQkVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfcnkyZjFRTFVFZUNMeVBobzdVSFZIUSIvPgorICAgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3J5MmYxZ0xVRWVDTHlQaG83VUhWSFEiIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il81T2dNa0FMVUVlQ0x5UGhvN1VIVkhRIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il81VXdsa0FMVUVlQ0x5UGhvN1VIVkhRIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0R4TjRBQUxDRWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9yeTJmMXdMVUVlQ0x5UGhvN1VIVkhRIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9wWkVrLWdMVUVlQ0x5UGhvN1VIVkhRIi8+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfcFpFay13TFVFZUNMeVBobzdVSFZIUSIvPgorICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfcFpFa19BTFVFZUNMeVBobzdVSFZIUSIvPgorICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9wWkVrX1FMVUVlQ0x5UGhvN1VIVkhRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNzAzMyI+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3BaRWtfZ0xVRWVDTHlQaG83VUhWSFEiLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9wWkVrX3dMVUVlQ0x5UGhvN1VIVkhRIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9wWkVsQUFMVUVlQ0x5UGhvN1VIVkhRIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19IZkRHa0FMQUVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfcFpFazhRTFVFZUNMeVBobzdVSFZIUSIgeD0iMjMwIiB5PSIxMCIgd2lkdGg9IjE3MSIgaGVpZ2h0PSIyNDEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfcFowTDBBTFVFZUNMeVBobzdVSFZIUSIgdHlwZT0iMzAyNyIgZm9udEhlaWdodD0iOCIgdHJhbnNwYXJlbmN5PSIwIiBncmFkaWVudD0iMTM0MjA0NDMsIDE2Nzc3MjE1LCAwIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9wWjBMMGdMVUVlQ0x5UGhvN1VIVkhRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3BaMEwwd0xVRWVDTHlQaG83VUhWSFEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcFowTDFBTFVFZUNMeVBobzdVSFZIUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3BaMEwxUUxVRWVDTHlQaG83VUhWSFEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9wWjBMMWdMVUVlQ0x5UGhvN1VIVkhRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9wWjBMMXdMVUVlQ0x5UGhvN1VIVkhRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9wWjBMMkFMVUVlQ0x5UGhvN1VIVkhRIiB0eXBlPSI1MDYxIi8+CisgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9wWjBMMlFMVUVlQ0x5UGhvN1VIVkhRIiB0eXBlPSI3MDMyIj4KKyAgICAgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3J5X3B0QUxVRWVDTHlQaG83VUhWSFEiIHR5cGU9IjMwMTgiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il93S0dNMEFMVUVlQ0x5UGhvN1VIVkhRIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il93UEJKRUFMVUVlQ0x5UGhvN1VIVkhRIiBrZXk9IkN1c3RvbUFwcGVhcmFuY2VfTWFza1ZhbHVlIiB2YWx1ZT0iMjQiLz4KKyAgICAgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0sxVU00QUxDRWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9yeV9wdFFMVUVlQ0x5UGhvN1VIVkhRIi8+CisgICAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfcnlfcHRnTFVFZUNMeVBobzdVSFZIUSIgdHlwZT0iMzAxOCIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3dscXVnQUxVRWVDTHlQaG83VUhWSFEiIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0E4THA4QUxWRWVDTHlQaG83VUhWSFEiIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI1NiIvPgorICAgICAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTndvSGNBTENFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3J5X3B0d0xVRWVDTHlQaG83VUhWSFEiLz4KKyAgICAgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3BaMEwyZ0xVRWVDTHlQaG83VUhWSFEiLz4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9wWjBMMndMVUVlQ0x5UGhvN1VIVkhRIi8+CisgICAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9wWjBMM0FMVUVlQ0x5UGhvN1VIVkhRIi8+CisgICAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3BaMEwzUUxVRWVDTHlQaG83VUhWSFEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI3MDMzIj4KKyAgICAgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfcFowTDNnTFVFZUNMeVBobzdVSFZIUSIvPgorICAgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX3BaMEwzd0xVRWVDTHlQaG83VUhWSFEiLz4KKyAgICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3BaMEw0QUxVRWVDTHlQaG83VUhWSFEiLz4KKyAgICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX0pWZl84QUxDRWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9wWjBMMFFMVUVlQ0x5UGhvN1VIVkhRIiB4PSI1MCIgeT0iMTQwIiB3aWR0aD0iMTQyIiBoZWlnaHQ9IjcxIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzFyZjFXZ0xURWVDdFlNWHBwZnFMTXciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX01seU5ZQUh3RWVDUVFPS3JoT19mSVEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzFyZjFVUUxURWVDdFlNWHBwZnFMTXciIHg9IjI1IiB5PSIzNSIgd2lkdGg9IjQzNiIgaGVpZ2h0PSIyOTEiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0RScEZjQUxWRWVDTHlQaG83VUhWSFEiIHR5cGU9IjIwMTYiIGVsZW1lbnQ9Il9oWEs2SUFMTEVlQ3RZTVhwcGZxTE13IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRFJwRmNnTFZFZUNMeVBobzdVSFZIUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0RScEZjd0xWRWVDTHlQaG83VUhWSFEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0RScEZkQUxWRWVDTHlQaG83VUhWSFEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0RScEZkUUxWRWVDTHlQaG83VUhWSFEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRFJwRmRnTFZFZUNMeVBobzdVSFZIUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9EUnBGZHdMVkVlQ0x5UGhvN1VIVkhRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfRFJwRmVBTFZFZUNMeVBobzdVSFZIUSIgdHlwZT0iMCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfRFJwRmVRTFZFZUNMeVBobzdVSFZIUSIgeD0iNTQiIHk9IjI3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfRFJwRmNRTFZFZUNMeVBobzdVSFZIUSIgeD0iMTEwIiB5PSItNSIgd2lkdGg9IjM0IiBoZWlnaHQ9IjIwIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX2tZeHdVUUxURWVDdFlNWHBwZnFMTXciLz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3pSaDNzQUhyRWVDUVFPS3JoT19mSVEiLz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9xckZKOEFMVkVlQ0x5UGhvN1VIVkhRIiB0eXBlPSJQYXB5cnVzVU1MQ2xhc3NEaWFncmFtIiBuYW1lPSJST1Mtc2VydmljZXMiIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0ZDUThBQU41RWVDM2ZyOER3N3I5V0EiIHR5cGU9IjIwMTYiIGVsZW1lbnQ9Il9IZnh3UUFMSkVlQ3RZTVhwcGZxTE13IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRkNROEFnTjVFZUMzZnI4RHc3cjlXQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0ZDUThBd041RWVDM2ZyOER3N3I5V0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0ZDUThCQU41RWVDM2ZyOER3N3I5V0EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0ZDUThCUU41RWVDM2ZyOER3N3I5V0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRkNROEJnTjVFZUMzZnI4RHc3cjlXQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9GQ1E4QndONUVlQzNmcjhEdzdyOVdBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfRkNROENBTjVFZUMzZnI4RHc3cjlXQSIgdHlwZT0iMCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfRkNROENRTjVFZUMzZnI4RHc3cjlXQSIgeD0iLTIwIiB5PSI0MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0ZDUThBUU41RWVDM2ZyOER3N3I5V0EiIHg9Ijk1IiB5PSIzNTUiIHdpZHRoPSIzNCIgaGVpZ2h0PSIyMCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9xckZKOFFMVkVlQ0x5UGhvN1VIVkhRIi8+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI196Umgzc0FIckVlQ1FRT0tyaE9fZklRIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfeERZSXdBTFZFZUNMeVBobzdVSFZIUSIgdHlwZT0iUGFweXJ1c1VNTENsYXNzRGlhZ3JhbSIgbmFtZT0iZGlhZ25vc3RpYy1zcnYiIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzBJWGp3QUxWRWVDTHlQaG83VUhWSFEiIHR5cGU9IjIwMTYiIGVsZW1lbnQ9Il9xckZKOEFMVkVlQ0x5UGhvN1VIVkhRIiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMElYandnTFZFZUNMeVBobzdVSFZIUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzBJWGp3d0xWRWVDTHlQaG83VUhWSFEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzBJWGp4QUxWRWVDTHlQaG83VUhWSFEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzBJWGp4UUxWRWVDTHlQaG83VUhWSFEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMElYanhnTFZFZUNMeVBobzdVSFZIUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wSVhqeHdMVkVlQ0x5UGhvN1VIVkhRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfMElYanlBTFZFZUNMeVBobzdVSFZIUSIgdHlwZT0iMCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMElYanlRTFZFZUNMeVBobzdVSFZIUSIgeT0iNSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzBJWGp3UUxWRWVDTHlQaG83VUhWSFEiIHg9IjY1IiB5PSI0MTUiIHdpZHRoPSIzNCIgaGVpZ2h0PSIyMCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il94RFlJd1FMVkVlQ0x5UGhvN1VIVkhRIi8+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI196Umgzc0FIckVlQ1FRT0tyaE9fZklRIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfMXdtSXdBTjRFZUMzZnI4RHc3cjlXQSIgdHlwZT0iUGFweXJ1c1VNTENsYXNzRGlhZ3JhbSIgbmFtZT0ibmF2LXNydnMiIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3I2Q2VFQU9lRWVDRFRfOEt5TlhDSWciIHR5cGU9IjIwMTYiIGVsZW1lbnQ9Il9xckZKOEFMVkVlQ0x5UGhvN1VIVkhRIiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcjZDZUVnT2VFZUNEVF84S3lOWENJZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3I2Q2VFd09lRWVDRFRfOEt5TlhDSWciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3I2Q2VGQU9lRWVDRFRfOEt5TlhDSWciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3I2Q2VGUU9lRWVDRFRfOEt5TlhDSWciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcjZDZUZnT2VFZUNEVF84S3lOWENJZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9yNkNlRndPZUVlQ0RUXzhLeU5YQ0lnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfcjZDZUdBT2VFZUNEVF84S3lOWENJZyIgdHlwZT0iMCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfcjZDZUdRT2VFZUNEVF84S3lOWENJZyIgeT0iNSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3I2Q2VFUU9lRWVDRFRfOEt5TlhDSWciIHg9IjcxIiB5PSIzODYiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfMXdtSXdRTjRFZUMzZnI4RHc3cjlXQSIvPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfelJoM3NBSHJFZUNRUU9LcmhPX2ZJUSIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iXzhrNXVJQU40RWVDM2ZyOER3N3I5V0EiIHR5cGU9IlBhcHlydXNVTUxDbGFzc0RpYWdyYW0iIG5hbWU9ImRpYWdub3N0aWMtc3J2cyIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il84azV1SVFONEVlQzNmcjhEdzdyOVdBIi8+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI196Umgzc0FIckVlQ1FRT0tyaE9fZklRIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfQm14c2tBTjVFZUMzZnI4RHc3cjlXQSIgdHlwZT0iUGFweXJ1c1VNTENsYXNzRGlhZ3JhbSIgbmFtZT0ic2Vuc29yLXNydnMiIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1N3WngwQVE3RWVDNkFZS19fd1VVN2ciIHR5cGU9IjIwMTYiIGVsZW1lbnQ9Il9xckZKOEFMVkVlQ0x5UGhvN1VIVkhRIiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfU3daeDBnUTdFZUM2QVlLX193VVU3ZyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1N3Wngwd1E3RWVDNkFZS19fd1VVN2ciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1N3WngxQVE3RWVDNkFZS19fd1VVN2ciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1N3WngxUVE3RWVDNkFZS19fd1VVN2ciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfU3daeDFnUTdFZUM2QVlLX193VVU3ZyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9Td1p4MXdRN0VlQzZBWUtfX3dVVTdnIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfU3daeDJBUTdFZUM2QVlLX193VVU3ZyIgdHlwZT0iMCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfU3daeDJRUTdFZUM2QVlLX193VVU3ZyIgeT0iNSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1N3WngwUVE3RWVDNkFZS19fd1VVN2ciIHg9Ijk1IiB5PSI0MjUiIHdpZHRoPSIzNCIgaGVpZ2h0PSIyMCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9CbXhza1FONUVlQzNmcjhEdzdyOVdBIi8+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI196Umgzc0FIckVlQ1FRT0tyaE9fZklRIi8+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPG5vdGF0aW9uOkRpYWdyYW0geG1pOmlkPSJfUGZNTjBBUTlFZUM2QVlLX193VVU3ZyIgdHlwZT0iUGFweXJ1c1VNTENsYXNzRGlhZ3JhbSIgbmFtZT0iUk9TLWFjdGlvbnMiIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfUGZNTjBRUTlFZUM2QVlLX193VVU3ZyIvPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfelJoM3NBSHJFZUNRUU9LcmhPX2ZJUSIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+Cis8L3htaTpYTUk+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvbW9kZWwvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9tb2RlbC9Sb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNkYTVlMzEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvbW9kZWwvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbApAQCAtMCwwICsxLDE0MDMgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8eG1pOlhNSSB4bWk6dmVyc2lvbj0iMi4xIiB4bWxuczp4bWk9Imh0dHA6Ly9zY2hlbWEub21nLm9yZy9zcGVjL1hNSS8yLjEiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zOmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIiB4bWxuczpsMj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzQuMC4wL1VNTC9Qcm9maWxlL0wyIiB4bWxuczpub3RhdGlvbj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9nbWYvcnVudGltZS8xLjAuMi9ub3RhdGlvbiIgeG1sbnM6dW1sPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNC4wLjAvVU1MIj4KKyAgPHVtbDpNb2RlbCB4bWk6aWQ9Il9fR0lrd0FMSUVlQ3RZTVhwcGZxTE13IiBuYW1lPSJSb2JvdE1MTGlicmFyaWVzIj4KKyAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgeG1pOmlkPSJfelJoM3NBSHJFZUNRUU9LcmhPX2ZJUSIgbmFtZT0iUm9ib3RNTF9Nb2RlbExpYnJhcnkiPgorICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIHhtaTppZD0iX2R0X3k0QUh0RWVDUVFPS3JoT19mSVEiIG5hbWU9IlJvYm90TUxfRGF0YVR5cGVzIj4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIHhtaTppZD0iX3d5UzZnQUgtRWVDX1pMekxRaFctVFEiIG5hbWU9InN0ZF9kYXRhdHlwZXMiPgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiB4bWk6aWQ9Il9ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIiBuYW1lPSJGbG9hdDY0Ii8+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIHhtaTppZD0iX3F1WG1BQUg2RWVDX1pMekxRaFctVFEiIG5hbWU9IkZsb2F0MzIiLz4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgeG1pOmlkPSJfbkNPdW9BSC1FZUNfWkx6TFFoVy1UUSIgbmFtZT0iVUludDMyIi8+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIHhtaTppZD0iX2d5dDRZQUgtRWVDX1pMekxRaFctVFEiIG5hbWU9IlRpbWUiLz4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgeG1pOmlkPSJfcWFTMm9BSC1FZUNfWkx6TFFoVy1UUSIgbmFtZT0iU3RyaW5nIi8+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9WOHhDZ0FILUVlQ19aTHpMUWhXLVRRIiBuYW1lPSJIZWFkZXIiPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX3JGYm80QUhfRWVDX1pMekxRaFctVFEiIG5hbWU9InNlcSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfbkNPdW9BSC1FZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3VGcDRvQUhfRWVDX1pMekxRaFctVFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX3VGcDRvUUhfRWVDX1pMekxRaFctVFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il91Rnpwb0FIX0VlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfd2hPak1BSF9FZUNfWkx6TFFoVy1UUSIgbmFtZT0ic3RhbXAiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX2d5dDRZQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il8wWTR4UUFIX0VlQ19aTHpMUWhXLVRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il8wWkI3TUFIX0VlQ19aTHpMUWhXLVRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfMFpCN01RSF9FZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iXzNiZm1vQUhfRWVDX1pMekxRaFctVFEiIG5hbWU9ImZyYW1lX2lkIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9xYVMyb0FILUVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfNmJhN2NBSF9FZUNfWkx6TFFoVy1UUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfNmJhN2NRSF9FZUNfWkx6TFFoVy1UUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iXzZiYTdjZ0hfRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgeG1pOmlkPSJfdnpqSFlBSUxFZUNfWkx6TFFoVy1UUSIgbmFtZT0iQnl0ZSIvPgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiB4bWk6aWQ9Il9OWm5Uc0FJVUVlQ1ZyTEVCSDVlam5RIiBuYW1lPSJCb29sIi8+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIHhtaTppZD0iXzZOSmZrQUtuRWVDUVJlSU9JV0owbkEiIG5hbWU9IlVJbnQ4Ii8+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIHhtaTppZD0iX1dyOXJ3QUszRWVDc0dfVjBSODY1d0EiIG5hbWU9IkludDgiLz4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgeG1pOmlkPSJfTG1ST29LbElFZUNEWC1SNHVweElwZyIgbmFtZT0iVUludDE2Ii8+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIHhtaTppZD0iX0s5bERnS3VrRWVDV0ZKeldrZmhQSGciIG5hbWU9IkludDE2Ii8+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIHhtaTppZD0iX01lSTNVS3VrRWVDV0ZKeldrZmhQSGciIG5hbWU9IkludDMyIi8+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9RQmdQWUt1dkVlQ1dGSnpXa2ZoUEhnIiBuYW1lPSJNdWx0aUFycmF5RGltZW5zaW9uIj4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il83X2RuOEt1dkVlQ1dGSnpXa2ZoUEhnIiBuYW1lPSJsYWJlbCIgdHlwZT0iX3FhUzJvQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9Balg0QUt1d0VlQ1dGSnpXa2ZoUEhnIiBuYW1lPSJzaXplIiB0eXBlPSJfbkNPdW9BSC1FZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0ZJQ1dBS3V3RWVDV0ZKeldrZmhQSGciIG5hbWU9InN0cmlkZSIgdHlwZT0iX25DT3VvQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX1c3UFI0S3V3RWVDV0ZKeldrZmhQSGciIG5hbWU9Ik11bHRpQXJyYXlMYXlvdXQiPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX1c3UFI0YXV3RWVDV0ZKeldrZmhQSGciIG5hbWU9ImRpbSIgdHlwZT0iX1FCZ1BZS3V2RWVDV0ZKeldrZmhQSGciPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il8xRTR6d0t1MUVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzFFNHp3YXUxRWVDV0ZKeldrZmhQSGciIHZhbHVlPSIqIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX1c3UFI0NnV3RWVDV0ZKeldrZmhQSGciIG5hbWU9ImRhdGFfb2Zmc2V0IiB0eXBlPSJfbkNPdW9BSC1FZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfSXJDN0FLdTJFZUNXRkp6V2tmaFBIZyIgbmFtZT0iQnl0ZU11bHRpQXJyYXkiPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX01RWUM4S3UyRWVDV0ZKeldrZmhQSGciIG5hbWU9ImxheW91dCIgdHlwZT0iX1c3UFI0S3V3RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9TWF9oY0t1MkVlQ1dGSnpXa2ZoUEhnIiBuYW1lPSJkYXRhIiB0eXBlPSJfdnpqSFlBSUxFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX1Y5N0dVS3UyRWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfVi1FM1VLdTJFZUNXRkp6V2tmaFBIZyIgdmFsdWU9IioiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIHhtaTppZD0iX2RrVG80S3UyRWVDV0ZKeldrZmhQSGciIG5hbWU9IkNoYXIiLz4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX2hpMHM0S3UyRWVDV0ZKeldrZmhQSGciIG5hbWU9IkNvbG9yUkdCQSI+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfbUJpVDRLdTJFZUNXRkp6V2tmaFBIZyIgbmFtZT0iciIgdHlwZT0iX3F1WG1BQUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9ydXhqZ0t1MkVlQ1dGSnpXa2ZoUEhnIiBuYW1lPSJnIiB0eXBlPSJfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0xjRE5rS3UzRWVDV0ZKeldrZmhQSGciIG5hbWU9ImIiIHR5cGU9Il9xdVhtQUFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfQ2oyTDRLdTVFZUNXRkp6V2tmaFBIZyIgbmFtZT0iYSIgdHlwZT0iX3F1WG1BQUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgeG1pOmlkPSJfSXVTVTRLdTVFZUNXRkp6V2tmaFBIZyIgbmFtZT0iRHVyYXRpb24iLz4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX1NjanhBS3U1RWVDV0ZKeldrZmhQSGciIG5hbWU9IkZsb2F0MzJNdWx0aUFycmF5Ij4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9TY2p4QWF1NUVlQ1dGSnpXa2ZoUEhnIiBuYW1lPSJsYXlvdXQiIHR5cGU9Il9XN1BSNEt1d0VlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfU2NqeEFxdTVFZUNXRkp6V2tmaFBIZyIgbmFtZT0iZGF0YSIgdHlwZT0iX3F1WG1BQUg2RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9TY2p4Qkt1NUVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX1NjanhBNnU1RWVDV0ZKeldrZmhQSGciIHZhbHVlPSIqIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfZGpXZlFLdTVFZUNXRkp6V2tmaFBIZyIgbmFtZT0iSW50MzJNdWx0aUFycmF5Ij4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9kaldmUWF1NUVlQ1dGSnpXa2ZoUEhnIiBuYW1lPSJsYXlvdXQiIHR5cGU9Il9XN1BSNEt1d0VlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfZGpXZlFxdTVFZUNXRkp6V2tmaFBIZyIgbmFtZT0iZGF0YSIgdHlwZT0iX01lSTNVS3VrRWVDV0ZKeldrZmhQSGciPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9kaldmUkt1NUVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2RqV2ZRNnU1RWVDV0ZKeldrZmhQSGciIHZhbHVlPSIqIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfMElETWdLdV9FZUNrM2QtV2l3VzlFUSIgbmFtZT0iSW50OE11bHRpQXJyYXkiPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iXzBJRE1nYXVfRWVDazNkLVdpd1c5RVEiIG5hbWU9ImxheW91dCIgdHlwZT0iX1c3UFI0S3V3RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il8wSURNZ3F1X0VlQ2szZC1XaXdXOUVRIiBuYW1lPSJkYXRhIiB0eXBlPSJfV3I5cndBSzNFZUNzR19WMFI4NjV3QSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzBJRE1oS3VfRWVDazNkLVdpd1c5RVEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfMElETWc2dV9FZUNrM2QtV2l3VzlFUSIgdmFsdWU9IioiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il83TmZsTUt1X0VlQ2szZC1XaXdXOUVRIiBuYW1lPSJJbnQxNk11bHRpQXJyYXkiPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iXzdOZmxNYXVfRWVDazNkLVdpd1c5RVEiIG5hbWU9ImxheW91dCIgdHlwZT0iX1c3UFI0S3V3RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il83TmZsTXF1X0VlQ2szZC1XaXdXOUVRIiBuYW1lPSJkYXRhIiB0eXBlPSJfSzlsRGdLdWtFZUNXRkp6V2tmaFBIZyI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzdOZmxOS3VfRWVDazNkLVdpd1c5RVEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfN05mbE02dV9FZUNrM2QtV2l3VzlFUSIgdmFsdWU9IioiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9DNmxNc0t2QUVlQ2szZC1XaXdXOUVRIiBuYW1lPSJJbnQ2NE11bHRpQXJyYXkiPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0M2bE1zYXZBRWVDazNkLVdpd1c5RVEiIG5hbWU9ImxheW91dCIgdHlwZT0iX1c3UFI0S3V3RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9DNmxNc3F2QUVlQ2szZC1XaXdXOUVRIiBuYW1lPSJkYXRhIiB0eXBlPSJfbTFPcWtLdktFZUNGdmJ0TFZfekNIdyI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0M2bE10S3ZBRWVDazNkLVdpd1c5RVEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfQzZsTXM2dkFFZUNrM2QtV2l3VzlFUSIgdmFsdWU9IioiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9aWkFMY0t2SkVlQ0Z2YnRMVl96Q0h3IiBuYW1lPSJGbG9hdDY0TXVsdGlBcnJheSI+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfWlpBTGNhdkpFZUNGdmJ0TFZfekNIdyIgbmFtZT0ibGF5b3V0IiB0eXBlPSJfVzdQUjRLdXdFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX1paQUxjcXZKRWVDRnZidExWX3pDSHciIG5hbWU9ImRhdGEiIHR5cGU9Il9ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfWlpBTGRLdkpFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9aWkFMYzZ2SkVlQ0Z2YnRMVl96Q0h3IiB2YWx1ZT0iKiIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX1cwbDRnS3ZLRWVDRnZidExWX3pDSHciIG5hbWU9IlVJbnQ2NE11bHRpQXJyYXkiPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX1cwbDRnYXZLRWVDRnZidExWX3pDSHciIG5hbWU9ImxheW91dCIgdHlwZT0iX1c3UFI0S3V3RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9XMGw0Z3F2S0VlQ0Z2YnRMVl96Q0h3IiBuYW1lPSJkYXRhIiB0eXBlPSJfN2pTMUVLdktFZUNGdmJ0TFZfekNIdyI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX1cwbDRoS3ZLRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfVzBsNGc2dktFZUNGdmJ0TFZfekNIdyIgdmFsdWU9IioiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIHhtaTppZD0iX20xT3FrS3ZLRWVDRnZidExWX3pDSHciIG5hbWU9IkludDY0Ii8+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIHhtaTppZD0iXzdqUzFFS3ZLRWVDRnZidExWX3pDSHciIG5hbWU9IlVJbnQ2NCIvPgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfREFKQklLdkxFZUNGdmJ0TFZfekNIdyIgbmFtZT0iVUludDE2TXVsdGlBcnJheSI+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfREFKQklhdkxFZUNGdmJ0TFZfekNIdyIgbmFtZT0ibGF5b3V0IiB0eXBlPSJfVzdQUjRLdXdFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0RBSkJJcXZMRWVDRnZidExWX3pDSHciIG5hbWU9ImRhdGEiIHR5cGU9Il9MbVJPb0tsSUVlQ0RYLVI0dXB4SXBnIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfREFKQkpLdkxFZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9EQUpCSTZ2TEVlQ0Z2YnRMVl96Q0h3IiB2YWx1ZT0iKiIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX1dMczNFS3ZMRWVDRnZidExWX3pDSHciIG5hbWU9IlVJbnQzMk11bHRpQXJyYXkiPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX1dMczNFYXZMRWVDRnZidExWX3pDSHciIG5hbWU9ImxheW91dCIgdHlwZT0iX1c3UFI0S3V3RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9XTHMzRXF2TEVlQ0Z2YnRMVl96Q0h3IiBuYW1lPSJkYXRhIiB0eXBlPSJfbkNPdW9BSC1FZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX1dMczNGS3ZMRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfV0xzM0U2dkxFZUNGdmJ0TFZfekNIdyIgdmFsdWU9IioiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9qci1sTUt2TEVlQ0Z2YnRMVl96Q0h3IiBuYW1lPSJVSW50OE11bHRpQXJyYXkiPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX2pyLWxNYXZMRWVDRnZidExWX3pDSHciIG5hbWU9ImxheW91dCIgdHlwZT0iX1c3UFI0S3V3RWVDV0ZKeldrZmhQSGciLz4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9qci1sTXF2TEVlQ0Z2YnRMVl96Q0h3IiBuYW1lPSJkYXRhIiB0eXBlPSJfNk5KZmtBS25FZUNRUmVJT0lXSjBuQSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2pyLWxOS3ZMRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfanItbE02dkxFZUNGdmJ0TFZfekNIdyIgdmFsdWU9IioiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgeG1pOmlkPSJfX3hBNllBSHZFZUNRUU9LcmhPX2ZJUSIgbmFtZT0iZGlhZ25vc3RpY19kYXRhdHlwZXMiPgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfZkRfMlVBSUtFZUNfWkx6TFFoVy1UUSIgbmFtZT0iRGlhZ25vc3RpY0FycmF5Ij4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il8zUUR0Z0FJUkVlQ04zUDN2eEJlYkp3IiBuYW1lPSJoZWFkZXIiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1Y4eENnQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il81QUhWNEFJUkVlQ04zUDN2eEJlYkp3IiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il81QWtCMEFJUkVlQ04zUDN2eEJlYkp3IiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9Cd0drMEFJU0VlQ04zUDN2eEJlYkp3IiBuYW1lPSJzdGF0dXMiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX3FHNlVzQUlMRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9GdDRCOEFJU0VlQ04zUDN2eEJlYkp3Ii8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0Z1Szg0QUlTRWVDTjNQM3Z4QmViSnciIHZhbHVlPSIqIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX2hYMW5rQUlTRWVDTjNQM3Z4QmViSnciIG5hbWU9InZhbHVlcyIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfbGYzdGtBSUtFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2plWnJjQUlTRWVDTjNQM3Z4QmViSnciLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfamVfaFVBSVNFZUNOM1AzdnhCZWJKdyIgdmFsdWU9IioiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9sZjN0a0FJS0VlQ19aTHpMUWhXLVRRIiBuYW1lPSJLZXlWYWx1ZSI+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfbk1XZGdBSUtFZUNfWkx6TFFoVy1UUSIgbmFtZT0ia2V5IiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9xYVMyb0FILUVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfbzBndUlBSUtFZUNfWkx6TFFoVy1UUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfbzBndUlRSUtFZUNfWkx6TFFoVy1UUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX28wcWZJQUlLRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9xNUpmWUFJS0VlQ19aTHpMUWhXLVRRIiBuYW1lPSJ2YWx1ZSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfcWFTMm9BSC1FZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3NKZDN3QUlLRWVDX1pMekxRaFctVFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX3NKZDN3UUlLRWVDX1pMekxRaFctVFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9zSmQzd2dJS0VlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9xRzZVc0FJTEVlQ19aTHpMUWhXLVRRIiBuYW1lPSJEaWFnbm9zdGljU3RhdHVzIj4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9ucHZjd0FJTkVlQ04zUDN2eEJlYkp3IiBuYW1lPSJPSyIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfdnpqSFlBSUxFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3BUaXNJQUlORWVDTjNQM3Z4QmViSnciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX3BUaXNJUUlORWVDTjNQM3Z4QmViSnciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9wVGlzSWdJTkVlQ04zUDN2eEJlYkp3Ij4KKyAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfcDE5Y3NBSU5FZUNOM1AzdnhCZWJKdyIgbmFtZT0iV0FSTiIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfdnpqSFlBSUxFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3JpVENzQUlORWVDTjNQM3Z4QmViSnciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX3JpVENzUUlORWVDTjNQM3Z4QmViSnciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9yaWNNb0FJTkVlQ04zUDN2eEJlYkp3Ij4KKyAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfdHp1NTBBSU5FZUNOM1AzdnhCZWJKdyIgbmFtZT0iRVJST1IiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX3Z6akhZQUlMRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il92bGtxNEFJTkVlQ04zUDN2eEJlYkp3IiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il92bGtxNFFJTkVlQ04zUDN2eEJlYkp3IiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfdmxrcTRnSU5FZUNOM1AzdnhCZWJKdyI+CisgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX3dOenZrQUlORWVDTjNQM3Z4QmViSnciIG5hbWU9ImxldmVsIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il92empIWUFJTEVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfeGdFQm9BSU5FZUNOM1AzdnhCZWJKdyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfeGdFQm9RSU5FZUNOM1AzdnhCZWJKdyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX3hnRUJvZ0lORWVDTjNQM3Z4QmViSnciPgorICAgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il96Qjk1UUFJTkVlQ04zUDN2eEJlYkp3IiBuYW1lPSJuYW1lIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9xYVMyb0FILUVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfMURUZTRBSU5FZUNOM1AzdnhCZWJKdyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfMURkUDRBSU5FZUNOM1AzdnhCZWJKdyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iXzFEZFA0UUlORWVDTjNQM3Z4QmViSnciPgorICAgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il8xa2lqc0FJTkVlQ04zUDN2eEJlYkp3IiBuYW1lPSJtZXNzYWdlIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9xYVMyb0FILUVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfMncxWHNBSU5FZUNOM1AzdnhCZWJKdyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfMnctaG9BSU5FZUNOM1AzdnhCZWJKdyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iXzJ3LWhvUUlORWVDTjNQM3Z4QmViSnciPgorICAgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il8zUjZyZ0FJTkVlQ04zUDN2eEJlYkp3IiBuYW1lPSJoYXJkd2FyZV9pZCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfcWFTMm9BSC1FZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzVkcl9nQUlORWVDTjNQM3Z4QmViSnciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzVkMXdnQUlORWVDTjNQM3Z4QmViSnciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il81ZDF3Z1FJTkVlQ04zUDN2eEJlYkp3Ij4KKyAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfNThGTHNBSU5FZUNOM1AzdnhCZWJKdyIgbmFtZT0idmFsdWVzIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9sZjN0a0FJS0VlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfYU5HY0FBSU9FZUNOM1AzdnhCZWJKdyIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9hTnM0OEFJT0VlQ04zUDN2eEJlYkp3IiB2YWx1ZT0iKiIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiB4bWk6aWQ9Il9EZjRfNEFId0VlQ1FRT0tyaE9fZklRIiBuYW1lPSJnZW9tZXRyeV9kYXRhdHlwZXMiPgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfMV8tNW9BSDVFZUNfWkx6TFFoVy1UUSIgbmFtZT0iUG9pbnQiPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX08xZmFvQUg2RWVDX1pMekxRaFctVFEiIG5hbWU9IngiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9QMDB3c0FINkVlQ19aTHpMUWhXLVRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9QMC1oc0FINkVlQ19aTHpMUWhXLVRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfUDAtaHNRSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX2VpYjBvQUg2RWVDX1pMekxRaFctVFEiIG5hbWU9InkiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9nY0xrZ0FINkVlQ19aTHpMUWhXLVRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9nY1V1Y0FINkVlQ19aTHpMUWhXLVRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfZ2NVdWNRSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX2lMOFI4QUg2RWVDX1pMekxRaFctVFEiIG5hbWU9InoiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9qaUVYWUFINkVlQ19aTHpMUWhXLVRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9qaU9JWUFINkVlQ19aTHpMUWhXLVRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfamlPSVlRSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfdVVKWjRBSDZFZUNfWkx6TFFoVy1UUSIgbmFtZT0iUG9pbnQzMiI+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfdVVKWjRRSDZFZUNfWkx6TFFoVy1UUSIgbmFtZT0ieCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3VVSlo0d0g2RWVDX1pMekxRaFctVFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX3VVSlo0Z0g2RWVDX1pMekxRaFctVFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il91VUpaNUFINkVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfdVVKWjVRSDZFZUNfWkx6TFFoVy1UUSIgbmFtZT0ieSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3VVSlo1d0g2RWVDX1pMekxRaFctVFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX3VVSlo1Z0g2RWVDX1pMekxRaFctVFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il91VUpaNkFINkVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfdVVKWjZRSDZFZUNfWkx6TFFoVy1UUSIgbmFtZT0ieiIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3VVSlo2d0g2RWVDX1pMekxRaFctVFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX3VVSlo2Z0g2RWVDX1pMekxRaFctVFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il91VUpaN0FINkVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9SQTJpSUFILUVlQ19aTHpMUWhXLVRRIiBuYW1lPSJQb2ludFN0YW1wZWQiPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0pkdnJJQUlBRWVDX1pMekxRaFctVFEiIG5hbWU9ImhlYWRlciIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfVjh4Q2dBSC1FZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX01DaktNQUlBRWVDX1pMekxRaFctVFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX01DaktNUUlBRWVDX1pMekxRaFctVFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9NQ3M3TUFJQUVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfT2VIMHdBSUFFZUNfWkx6TFFoVy1UUSIgbmFtZT0icG9pbnQiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iXzFfLTVvQUg1RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9Rd1RTd0FJQUVlQ19aTHpMUWhXLVRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9Rd2REd0FJQUVlQ19aTHpMUWhXLVRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfUXdkRHdRSUFFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfQ3B5MW9BSUJFZUNfWkx6TFFoVy1UUSIgbmFtZT0iUG9seWdvbiI+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfd1Y2R01BSU9FZUNOM1AzdnhCZWJKdyIgbmFtZT0icG9pbnQiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX3VVSlo0QUg2RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il95dFVDY0FJT0VlQ04zUDN2eEJlYkp3IiB2YWx1ZT0iMyIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il95dHdIVUFJT0VlQ04zUDN2eEJlYkp3IiB2YWx1ZT0iKiIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX3FNLTJrQUlDRWVDX1pMekxRaFctVFEiIG5hbWU9IlBvbHlnb25TdGFtcGVkIj4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9xTS0ya1FJQ0VlQ19aTHpMUWhXLVRRIiBuYW1lPSJoZWFkZXIiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1Y4eENnQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9xTS0ya3dJQ0VlQ19aTHpMUWhXLVRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9xTS0ya2dJQ0VlQ19aTHpMUWhXLVRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfcU0tMmxBSUNFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX3FNLTJsUUlDRWVDX1pMekxRaFctVFEiIG5hbWU9InBvbHlnb24iIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX0NweTFvQUlCRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9xTS0ybHdJQ0VlQ19aTHpMUWhXLVRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9xTS0ybGdJQ0VlQ19aTHpMUWhXLVRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfcU0tMm1BSUNFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfOG5yM1VBSUNFZUNfWkx6TFFoVy1UUSIgbmFtZT0iVmVjdG9yMyI+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfOG5yM1VRSUNFZUNfWkx6TFFoVy1UUSIgbmFtZT0ieCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzhucjNVd0lDRWVDX1pMekxRaFctVFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzhucjNVZ0lDRWVDX1pMekxRaFctVFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il84bnIzVkFJQ0VlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfOG5yM1ZRSUNFZUNfWkx6TFFoVy1UUSIgbmFtZT0ieSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzhucjNWd0lDRWVDX1pMekxRaFctVFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzhucjNWZ0lDRWVDX1pMekxRaFctVFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il84bnIzV0FJQ0VlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfOG5yM1dRSUNFZUNfWkx6TFFoVy1UUSIgbmFtZT0ieiIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzhucjNXd0lDRWVDX1pMekxRaFctVFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzhucjNXZ0lDRWVDX1pMekxRaFctVFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il84bnIzWEFJQ0VlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9OZXMzd0FJREVlQ19aTHpMUWhXLVRRIiBuYW1lPSJWZWN0b3IzU3RhbXBlZCI+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfTmVzM3dRSURFZUNfWkx6TFFoVy1UUSIgbmFtZT0iaGVhZGVyIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9WOHhDZ0FILUVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfTmVzM3d3SURFZUNfWkx6TFFoVy1UUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfTmVzM3dnSURFZUNfWkx6TFFoVy1UUSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX05lczN4QUlERWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9OZXMzeFFJREVlQ19aTHpMUWhXLVRRIiBuYW1lPSJ2ZWN0b3IiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iXzhucjNVQUlDRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9OZXMzeHdJREVlQ19aTHpMUWhXLVRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9OZXMzeGdJREVlQ19aTHpMUWhXLVRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfTmVzM3lBSURFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfTlJxbmNBS3FFZUNRUmVJT0lXSjBuQSIgbmFtZT0iUXVhdGVybmlvbiI+CisgICAgICAgICAgICA8b3duZWRDb21tZW50IHhtaTppZD0iX0ROU0tNS3hZRWVDSkQ0Nkd0RHNBQkEiPgorICAgICAgICAgICAgICA8Ym9keT5UaGlzIHJlcHJlc2VudHMgYW4gb3JpZW50YXRpb24gaW4gZnJlZSBzcGFjZSBpbiBxdWF0ZXJuaW9uIGZvcm0uPC9ib2R5PgorICAgICAgICAgICAgPC9vd25lZENvbW1lbnQ+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfTlJxbmNRS3FFZUNRUmVJT0lXSjBuQSIgbmFtZT0ieCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX05ScW5jd0txRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX05ScW5jZ0txRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9OUnFuZEFLcUVlQ1FSZUlPSVdKMG5BIj4KKyAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfTlJxbmRRS3FFZUNRUmVJT0lXSjBuQSIgbmFtZT0ieSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX05ScW5kd0txRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX05ScW5kZ0txRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9OUnFuZUFLcUVlQ1FSZUlPSVdKMG5BIj4KKyAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfTlJxbmVRS3FFZUNRUmVJT0lXSjBuQSIgbmFtZT0ieiIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX05ScW5ld0txRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX05ScW5lZ0txRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9OUnFuZkFLcUVlQ1FSZUlPSVdKMG5BIj4KKyAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfVmpHNU1BS3FFZUNRUmVJT0lXSjBuQSIgbmFtZT0idyIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX1hOTkRnQUtxRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX1hOZi1jQUtxRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfUmtvczhBSzBFZUNzR19WMFI4NjV3QSIgbmFtZT0iUG9zZSI+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfVlZKS0lBSzBFZUNzR19WMFI4NjV3QSIgbmFtZT0icG9zaXRpb24iIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iXzFfLTVvQUg1RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9YYVhLTUFLMEVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9YYXoySUFLMEVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9YMllYMEFLMEVlQ3NHX1YwUjg2NXdBIiBuYW1lPSJvcmllbnRhdGlvbiIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfTlJxbmNBS3FFZUNRUmVJT0lXSjBuQSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2EyQXhzQUswRWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2EyVHNvQUswRWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfaFVRbmdBSzBFZUNzR19WMFI4NjV3QSIgbmFtZT0iUG9zZVN0YW1wZWQiPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX2hVUW5nUUswRWVDc0dfVjBSODY1d0EiIG5hbWU9ImhlYWRlciIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfVjh4Q2dBSC1FZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2hVUW5nd0swRWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2hVUW5nZ0swRWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9oVVFuaEFLMEVlQ3NHX1YwUjg2NXdBIj4KKyAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfaFVRbmhRSzBFZUNzR19WMFI4NjV3QSIgbmFtZT0icG9zZSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfUmtvczhBSzBFZUNzR19WMFI4NjV3QSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2hVUW5od0swRWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2hVUW5oZ0swRWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9oVVFuaUFLMEVlQ3NHX1YwUjg2NXdBIj4KKyAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il83aXZHa0FLMEVlQ3NHX1YwUjg2NXdBIiBuYW1lPSJUd2lzdFdpdGhDb3ZhcmlhbmNlIj4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9faTVKVUFLMEVlQ3NHX1YwUjg2NXdBIiBuYW1lPSJ0d2lzdCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfQzVCWG9BSzFFZUNzR19WMFI4NjV3QSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0JyRms0QUsxRWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0Jyc0IwQUsxRWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX1FvTWRZQUsxRWVDc0dfVjBSODY1d0EiIG5hbWU9ImNvdmFyaWFuY2UiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9TeDR0d0FLMUVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMzYiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfU3lWWnNBSzFFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjM2Ii8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfcUptSzRLbEVFZUNEWC1SNHVweElwZyIgbmFtZT0iVHdpc3RTdGFtcGVkIj4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il8xMTlyWUtsRUVlQ0RYLVI0dXB4SXBnIiBuYW1lPSJoZWFkZXIiIHR5cGU9Il9WOHhDZ0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfX3puQVFLbEVFZUNEWC1SNHVweElwZyIgbmFtZT0idHdpc3QiIHR5cGU9Il9DNUJYb0FLMUVlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9DNUJYb0FLMUVlQ3NHX1YwUjg2NXdBIiBuYW1lPSJUd2lzdCI+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfSGhRdUVBSzFFZUNzR19WMFI4NjV3QSIgbmFtZT0ibGluZWFyIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il84bnIzVUFJQ0VlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfSkxOSFlBSzFFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfSkxwelVBSzFFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfSmltNndBSzFFZUNzR19WMFI4NjV3QSIgbmFtZT0iYW5ndWxhciIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfOG5yM1VBSUNFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0xHSktFQUsxRWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0xHbDJBQUsxRWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfY0VUVVVBSzFFZUNzR19WMFI4NjV3QSIgbmFtZT0iUG9zZVdpdGhDb3ZhcmlhbmNlIj4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9jRVRVVVFLMUVlQ3NHX1YwUjg2NXdBIiBuYW1lPSJwb3NlIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9Sa29zOEFLMEVlQ3NHX1YwUjg2NXdBIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfY0VUVVV3SzFFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfY0VUVVVnSzFFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfY0VUVVZBSzFFZUNzR19WMFI4NjV3QSIgbmFtZT0iY292YXJpYW5jZSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2NFVFVWZ0sxRWVDc0dfVjBSODY1d0EiIHZhbHVlPSIzNiIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9jRVRVVlFLMUVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMzYiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9sWjViWUtsaEVlQzBzWnUtX1ZnZXl3IiBuYW1lPSJQb3NlMkQiPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX2xaNWJZYWxoRWVDMHNadS1fVmdleXciIG5hbWU9IngiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9sWjViWTZsaEVlQzBzWnUtX1ZnZXl3IiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9sWjViWXFsaEVlQzBzWnUtX1ZnZXl3IiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfbFo1YlpLbGhFZUMwc1p1LV9WZ2V5dyI+CisgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX2xaNWJaYWxoRWVDMHNadS1fVmdleXciIG5hbWU9InkiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9sWjViWjZsaEVlQzBzWnUtX1ZnZXl3IiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9sWjViWnFsaEVlQzBzWnUtX1ZnZXl3IiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfbFo1YmFLbGhFZUMwc1p1LV9WZ2V5dyI+CisgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX2xaNWJhYWxoRWVDMHNadS1fVmdleXciIG5hbWU9InRoZXRhIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfbFo1YmE2bGhFZUMwc1p1LV9WZ2V5dyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfbFo1YmFxbGhFZUMwc1p1LV9WZ2V5dyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2xaNWJiS2xoRWVDMHNadS1fVmdleXciPgorICAgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX05veTZnS3ZPRWVDRnZidExWX3pDSHciIG5hbWU9IlBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWQiLz4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX1gybFpvS3ZORWVDRnZidExWX3pDSHciIG5hbWU9IlBvc2VBcnJheSI+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfWlhKTmNLdk5FZUNGdmJ0TFZfekNIdyIgbmFtZT0iaGVhZGVyIiB0eXBlPSJfVjh4Q2dBSC1FZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX2hpTFZNS3ZORWVDRnZidExWX3pDSHciIG5hbWU9InBvc2VzIiB0eXBlPSJfUmtvczhBSzBFZUNzR19WMFI4NjV3QSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2xiZWlBS3ZORWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfbGJlaUFhdk5FZUNGdmJ0TFZfekNIdyIgdmFsdWU9IioiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il8xNWFlb0t2T0VlQ0Z2YnRMVl96Q0h3IiBuYW1lPSJRdWF0ZXJuaW9uU3RhbXBlZCI+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfNkt0VXNLdk9FZUNGdmJ0TFZfekNIdyIgbmFtZT0iaGVhZGVyIiB0eXBlPSJfVjh4Q2dBSC1FZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iXzhpR3A0S3ZPRWVDRnZidExWX3pDSHciIG5hbWU9InF1YXRlcm5pb24iIHR5cGU9Il9OUnFuY0FLcUVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9JakFQOEt2UEVlQ0Z2YnRMVl96Q0h3IiBuYW1lPSJUcmFuc2Zvcm0iPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0tZNE1jS3ZQRWVDRnZidExWX3pDSHciIG5hbWU9InRyYW5zbGF0aW9uIiB0eXBlPSJfOG5yM1VBSUNFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX1FDUEJvS3ZQRWVDRnZidExWX3pDSHciIG5hbWU9InJvdGF0aW9uIiB0eXBlPSJfTlJxbmNBS3FFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfYm1PcFFLdlBFZUNGdmJ0TFZfekNIdyIgbmFtZT0iV3JlbmNoU3RhbXBlZCI+CisgICAgICAgICAgICA8b3duZWRDb21tZW50IHhtaTppZD0iX3hBZkNrS3hYRWVDSkQ0Nkd0RHNBQkEiPgorICAgICAgICAgICAgICA8Ym9keT5BIHdyZW5jaCB3aXRoIHJlZmVyZW5jZSBjb29yZGluYXRlIGZyYW1lIGFuZCB0aW1lc3RhbXA8L2JvZHk+CisgICAgICAgICAgICA8L293bmVkQ29tbWVudD4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il80U2hpUUt4V0VlQ0pENDZHdERzQUJBIiBuYW1lPSJoZWFkZXIiIHR5cGU9Il9WOHhDZ0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfemVicnNLeFhFZUNKRDQ2R3REc0FCQSIgbmFtZT0id3JlbmNoIiB0eXBlPSJfZDBwZjBLeFhFZUNKRDQ2R3REc0FCQSIvPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfZDBwZjBLeFhFZUNKRDQ2R3REc0FCQSIgbmFtZT0iV3JlbmNoIj4KKyAgICAgICAgICAgIDxvd25lZENvbW1lbnQgeG1pOmlkPSJfZ3hseUVLeFhFZUNKRDQ2R3REc0FCQSI+CisgICAgICAgICAgICAgIDxib2R5PiBUaGlzIHJlcHJlc2VudHMgZm9yY2UgaW4gZnJlZSBzcGFjZSwgc2VwZXJhdGVkIGludG8gJiN4RDsKKyBpdCdzIGxpbmVhciBhbmQgYW5ndWxhciBwYXJ0cy4gIDwvYm9keT4KKyAgICAgICAgICAgIDwvb3duZWRDb21tZW50PgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX2tpMTJJS3hYRWVDSkQ0Nkd0RHNBQkEiIG5hbWU9ImZvcmNlIiB0eXBlPSJfOG5yM1VBSUNFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX29kQk1zS3hYRWVDSkQ0Nkd0RHNBQkEiIG5hbWU9InRvcnF1ZSIgdHlwZT0iXzhucjNVQUlDRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiB4bWk6aWQ9Il9HbzVfUUFId0VlQ1FRT0tyaE9fZklRIiBuYW1lPSJuYXZfZGF0YXR5cGVzIj4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX3AzdkVjQUswRWVDc0dfVjBSODY1d0EiIG5hbWU9IlBhdGgiPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX3RjSzBnQUswRWVDc0dfVjBSODY1d0EiIG5hbWU9ImhlYWRlciIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfVjh4Q2dBSC1FZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3ZRaThNQUswRWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX3ZRX29JQUswRWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX3dLOVdBQUswRWVDc0dfVjBSODY1d0EiIG5hbWU9InBvc2VzIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9oVVFuZ0FLMEVlQ3NHX1YwUjg2NXdBIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfemdwZmNBSzBFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il96aFBWVUFLMEVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iKiIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX2t3SWNBQUsxRWVDc0dfVjBSODY1d0EiIG5hbWU9Ik9kb21ldHJ5Ij4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9vMjJad0FLMUVlQ3NHX1YwUjg2NXdBIiBuYW1lPSJoZWFkZXIiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1Y4eENnQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9xXzhOTUFLMUVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9yQVk1SUFLMUVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9zX3BiSUFLMUVlQ3NHX1YwUjg2NXdBIiBuYW1lPSJjaGlsZF9mcmFtZV9pZCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfcWFTMm9BSC1FZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3ZKeVhjQUsxRWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX3ZLUERZQUsxRWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX3Z5blNBQUsxRWVDc0dfVjBSODY1d0EiIG5hbWU9InBvc2UiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX2NFVFVVQUsxRWVDc0dfVjBSODY1d0EiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il81VXJlSUFLMUVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il81VklLRUFLMUVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il82MVA1QUFLMUVlQ3NHX1YwUjg2NXdBIiBuYW1lPSJ0d2lzdCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfN2l2R2tBSzBFZUNzR19WMFI4NjV3QSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzlpWmJ3QUsxRWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzlqSnBzQUsxRWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfRjVOOHdBSzJFZUNzR19WMFI4NjV3QSIgbmFtZT0iTWFwTWV0YURhdGEiPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0hxd3k0QUsyRWVDc0dfVjBSODY1d0EiIG5hbWU9Im1hcF9sb2FkX3RpbWUiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX2d5dDRZQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9KcXc3d0FLMkVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9Kck5uc0FLMkVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9ORW56Z0FLMkVlQ3NHX1YwUjg2NXdBIiBuYW1lPSJyZXNvbHV0aW9uIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9xdVhtQUFINkVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfTzZWX0FBSzJFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfTzZ5cThBSzJFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfUkF3UjRBSzJFZUNzR19WMFI4NjV3QSIgbmFtZT0id2lkdGgiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX25DT3VvQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9TZ3VQMEFLMkVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9TaEs3d0FLMkVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9UTXJXNEFLMkVlQ3NHX1YwUjg2NXdBIiBuYW1lPSJvcmlnaW4iIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1Jrb3M4QUswRWVDc0dfVjBSODY1d0EiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9VNFF1OEFLMkVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9VNHRhNEFLMkVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6T3BhcXVlRXhwcmVzc2lvbiIgeG1pOmlkPSJTdGFydE9iamVjdEJlaGF2aW9yQWN0aW9uLXR5cGVfb2Zfb2JqZWN0LV9zcGVjaWZpY2F0aW9uIj4KKyAgICAgICAgICAgICAgICA8bGFuZ3VhZ2U+T0NMPC9sYW5ndWFnZT4KKyAgICAgICAgICAgICAgICA8Ym9keT50cnVlPC9ib2R5PgorICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9GS05GTUFLM0VlQ3NHX1YwUjg2NXdBIiBuYW1lPSJPY2N1cGFuY3lHcmlkIj4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9NWTQ1Y0FLM0VlQ3NHX1YwUjg2NXdBIiBuYW1lPSJoZWFkZXIiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1Y4eENnQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9OMjZXb0FLM0VlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9OM3A5Z0FLM0VlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9PV3Btb0FLM0VlQ3NHX1YwUjg2NXdBIiBuYW1lPSJpbmZvIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9GNU44d0FLMkVlQ3NHX1YwUjg2NXdBIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfUW9GZHdBSzNFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfUW9pSnNBSzNFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfUnd6WlVBSzNFZUNzR19WMFI4NjV3QSIgbmFtZT0iZGF0YSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfV3I5cndBSzNFZUNzR19WMFI4NjV3QSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX1VOdUhzQUszRWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfVU9LTWtBSzNFZUNzR19WMFI4NjV3QSIgdmFsdWU9IioiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il95cnN0RUFLM0VlQ3NHX1YwUjg2NXdBIiBuYW1lPSJHcmlkQ2VsbHMiPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iXzc0dzVrQUszRWVDc0dfVjBSODY1d0EiIG5hbWU9ImhlYWRlciIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfVjh4Q2dBSC1FZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzl3dDVzQUszRWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzl4S2xvQUszRWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iXy1oQUhJQUszRWVDc0dfVjBSODY1d0EiIG5hbWU9ImNlbGxfd2lkdGgiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX3F1WG1BQUg2RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9BZ2FhSUFLNEVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9BZzJmQUFLNEVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9CakJHb0FLNEVlQ3NHX1YwUjg2NXdBIiBuYW1lPSJjZWxsX2hlaWdodCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0VHZkk4QUs0RWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0VHNzA0QUs0RWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0V3WE1ZQUs0RWVDc0dfVjBSODY1d0EiIG5hbWU9ImNlbGxzIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il8xXy01b0FINUVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfR1c0ZVFBSzRFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9HWFZLTUFLNEVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iKiIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiB4bWk6aWQ9Il9KU29ha0FId0VlQ1FRT0tyaE9fZklRIiBuYW1lPSJzZW5zb3JfZGF0YXR5cGVzIj4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX3djam5JQUlXRWVDVnJMRUJINWVqblEiIG5hbWU9IlJlZ2lvbk9mSW50ZXJlc3QiPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX1ExY1hrQUtuRWVDUVJlSU9JV0owbkEiIG5hbWU9Inhfb2Zmc2V0IiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9uQ091b0FILUVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfU3ZWUllBS25FZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfU3ZWUllRS25FZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfYkJpWUlBS25FZUNRUmVJT0lXSjBuQSIgbmFtZT0ieV9vZmZzZXQiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX25DT3VvQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9kanFXb0FLbkVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9kajBIb0FLbkVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9lSElRRUFLbkVlQ1FSZUlPSVdKMG5BIiBuYW1lPSJoZWlnaHQiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX25DT3VvQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9mMjQ5Z0FLbkVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9mM0N1Z0FLbkVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9nNXFDRUFLbkVlQ1FSZUlPSVdKMG5BIiBuYW1lPSJkb19yZWN0aWZ5IiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9OWm5Uc0FJVUVlQ1ZyTEVCSDVlam5RIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfajNwZE1BS25FZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfajNwZE1RS25FZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfbkFsZDhGVzBFZUtHZnFFb1YwZWtEdyIgbmFtZT0id2lkdGgiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX25DT3VvQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9wQmUtc0ZXMEVlS0dmcUVvVjBla0R3IiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9wQmUtc1ZXMEVlS0dmcUVvVjBla0R3IiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfcEJlLXNsVzBFZUtHZnFFb1YwZWtEdyI+CisgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfT0hnOFFBS29FZUNRUmVJT0lXSjBuQSIgbmFtZT0iUmFuZ2UiPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX1BfZDhZQUtvRWVDUVJlSU9JV0owbkEiIG5hbWU9IlVMVFJBU09VTkQiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iXzZOSmZrQUtuRWVDUVJlSU9JV0owbkEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9TbGVWVUFLb0VlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9TbHhRUUFLb0VlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9UV2dKb0FLb0VlQ1FSZUlPSVdKMG5BIiBuYW1lPSJJTkZSQVJFRCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfNk5KZmtBS25FZUNRUmVJT0lXSjBuQSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX1dVVnp3QUtvRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX1dVeWZzQUtvRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX1hTZTNBQUtvRWVDUVJlSU9JV0owbkEiIG5hbWU9ImhlYWRlciIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfVjh4Q2dBSC1FZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2Fhd1BnQUtvRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2FiTTdjQUtvRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX2JXOVpFQUtvRWVDUVJlSU9JV0owbkEiIG5hbWU9InJhZGlhdGlvbl90eXBlIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il82Tkpma0FLbkVlQ1FSZUlPSVdKMG5BIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfZUpMQ0FBS29FZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfZUpla0FBS29FZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfZmNVcjhBS29FZUNRUmVJT0lXSjBuQSIgbmFtZT0iZmllbGRfb2ZfdmlldyIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2lydjFVQUtvRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2lzTWhRQUtvRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX2pjTE1zQUtvRWVDUVJlSU9JV0owbkEiIG5hbWU9Im1pbl9yYW5nZSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2xqZTNjQUtvRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2xqN2pZQUtvRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX21YN3pNQUtvRWVDUVJlSU9JV0owbkEiIG5hbWU9Im1heF9yYW5nZSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX29iTjVrQUtvRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX29iOWdjQUtvRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX3BNUEcwQUtvRWVDUVJlSU9JV0owbkEiIG5hbWU9InJhbmdlIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9xdVhtQUFINkVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfcXlkZHdBS29FZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfcXl3X3dBS29FZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il81ZF9lRUFLb0VlQ1FSZUlPSVdKMG5BIiBuYW1lPSJDYW1lcmFJbmZvIj4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9CRlF4Y0FLcEVlQ1FSZUlPSVdKMG5BIiBuYW1lPSJoZWFkZXIiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1Y4eENnQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9EQW81QUFLcEVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9EQTd6OEFLcEVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9EdTFid0FLcEVlQ1FSZUlPSVdKMG5BIiBuYW1lPSJoZWlnaHQiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX25DT3VvQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9GcHhlY0FLcEVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9GcU9LWUFLcEVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9HS0drVUFLcEVlQ1FSZUlPSVdKMG5BIiBuYW1lPSJ3aWR0aCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfbkNPdW9BSC1FZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0lWU0NjQUtwRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0lWazlZQUtwRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0k5T01NQUtwRWVDUVJlSU9JV0owbkEiIG5hbWU9ImRpc3RvcnNpb25fbW9kZWwiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX3FhUzJvQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9MZXZ0d0FLcEVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9MZk1ac0FLcEVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9NWDkwd0FLcEVlQ1FSZUlPSVdKMG5BIiBuYW1lPSJEIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfT2hxRklBS3BFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9PaDlBRUFLcEVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iKiIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9lWVJZZ0FLcEVlQ1FSZUlPSVdKMG5BIiBuYW1lPSJLIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfaE9YYjRBS3BFZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjkiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfaE8wSDBBS3BFZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjkiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfb2FnNWdBS3BFZUNRUmVJT0lXSjBuQSIgbmFtZT0iUiIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3FHaTlnQUtwRWVDUVJlSU9JV0owbkEiIHZhbHVlPSI5Ii8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX3FHX3BjQUtwRWVDUVJlSU9JV0owbkEiIHZhbHVlPSI5Ii8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX3MwSk1NQUtwRWVDUVJlSU9JV0owbkEiIG5hbWU9IlAiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il92Sm1uc0FLcEVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMTIiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfdktEVG9BS3BFZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjEyIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX3l6anc4QUtwRWVDUVJlSU9JV0owbkEiIG5hbWU9ImJpbm5pbmdfeCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfbkNPdW9BSC1FZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzFjLXFRQUtwRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzFkUmxNQUtwRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iXzJWNTJVQUtwRWVDUVJlSU9JV0owbkEiIG5hbWU9ImJpbm5pbmdfeSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfbkNPdW9BSC1FZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzRaN2prQUtwRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzRhT2VnQUtwRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iXzVLcDE0QUtwRWVDUVJlSU9JV0owbkEiIG5hbWU9InJvaSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfd2NqbklBSVdFZUNWckxFQkg1ZWpuUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzhFNm5rQUtwRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzhGT0prQUtwRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfY2dXWUlBS3FFZUNRUmVJT0lXSjBuQSIgbmFtZT0iSW11Ij4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9mNlhBNEFLcUVlQ1FSZUlPSVdKMG5BIiBuYW1lPSJoZWFkZXIiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1Y4eENnQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9oc014OEFLcUVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9oc2ZzNEFLcUVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9oOW9nTUFLcUVlQ1FSZUlPSVdKMG5BIiBuYW1lPSJvcmllbnRhdGlvbiIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfTlJxbmNBS3FFZUNRUmVJT0lXSjBuQSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2tyWWY0QUtxRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2tycmEwQUtxRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX25DVkpJQUtxRWVDUVJlSU9JV0owbkEiIG5hbWU9Im9yaWVudGF0aW9uX2NvdmFyaWFuY2UiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9xcHY3d0FLcUVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iOSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9xcUMyc0FLcUVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iOSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il92M3JaTUFLcUVlQ1FSZUlPSVdKMG5BIiBuYW1lPSJhbmd1bGFyX3ZlbG9jaXR5IiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il84bnIzVUFJQ0VlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfeXFXVklBS3FFZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfeXF6QkVBS3FFZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfMnhNMXdBS3FFZUNRUmVJT0lXSjBuQSIgbmFtZT0iYW5ndWxhcl92ZWxvY2l0eV9jb3ZhcmlhbmNlIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfNlNYUFlBS3FFZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjkiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfNlNxS1VBS3FFZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjkiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfODRFR1VBS3FFZUNRUmVJT0lXSjBuQSIgbmFtZT0ibGluZWFyX2FjY2VsZXJhdGlvbiIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfOG5yM1VBSUNFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0FlNGNBQUtyRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0FmTFc4QUtyRWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0F4TmlJQUtyRWVDUVJlSU9JV0owbkEiIG5hbWU9ImxpbmVhcl9hY2NlbGVyYXRpb25fY292YXJpYW5jZSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0VGakFzQUtyRWVDUVJlSU9JV0owbkEiIHZhbHVlPSI5Ii8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0VGMmlzQUtyRWVDUVJlSU9JV0owbkEiIHZhbHVlPSI5Ii8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfemR3ZElBS3NFZUNRUmVJT0lXSjBuQSIgbmFtZT0iTGFzZXJTY2FuIj4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il81ZUZBMEFLc0VlQ1FSZUlPSVdKMG5BIiBuYW1lPSJoZWFkZXIiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1Y4eENnQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il83T1NhTUFLc0VlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il83T3VmRUFLc0VlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9BRnVxUUFLdEVlQ1FSZUlPSVdKMG5BIiBuYW1lPSJhbmdsZV9taW4iIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX3F1WG1BQUg2RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9DX2pYRUFLdEVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9EQUFEQUFLdEVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9EVkthc0FLdEVlQ1FSZUlPSVdKMG5BIiBuYW1lPSJhbmdsZV9tYXgiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX3F1WG1BQUg2RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9GOUd0VUFLdEVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9GOWl5TUFLdEVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9HTW1oNEFLdEVlQ1FSZUlPSVdKMG5BIiBuYW1lPSJhbmdsZV9pbmNyZW1lbnQiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX3F1WG1BQUg2RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9Ka3JROEFLdEVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9KbEhWMEFLdEVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9LTHRid0FLdEVlQ1FSZUlPSVdKMG5BIiBuYW1lPSJ0aW1lX2luY3JlbWVudCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX012VlBFQUt0RWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX012b0tBQUt0RWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX05Sd21zQUt0RWVDUVJlSU9JV0owbkEiIG5hbWU9InNjYW5fdGltZSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX1BxTWRzQUt0RWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX1BxcEpvQUt0RWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX1FXd0JzQUt0RWVDUVJlSU9JV0owbkEiIG5hbWU9InJhbmdlX21pbiIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX1NPdEIwQUt0RWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX1NQSnR3QUt0RWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX1MzaWpjQUt0RWVDUVJlSU9JV0owbkEiIG5hbWU9InJhbmdlX21heCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX1VUQ1JFQUt0RWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX1VUVk1BQUt0RWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX1ZFTlBVQUt0RWVDUVJlSU9JV0owbkEiIG5hbWU9InJhbmdlIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9xdVhtQUFINkVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfVzVMejhBS3RFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9XNWV1NEFLdEVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iKiIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9hT2tiWUFLdEVlQ1FSZUlPSVdKMG5BIiBuYW1lPSJpbnRlbnNpdGllcyIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2NpcnpFQUt0RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfY2lfVkVBS3RFZUNRUmVJT0lXSjBuQSIgdmFsdWU9IioiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9tSkRhOEFLdUVlQ1FSZUlPSVdKMG5BIiBuYW1lPSJJbWFnZSI+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfcGpxZ29BS3VFZUNRUmVJT0lXSjBuQSIgbmFtZT0iaGVhZGVyIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9WOHhDZ0FILUVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfck1iT01BS3VFZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfck0zNklBS3VFZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfcnFFemdBS3VFZUNRUmVJT0lXSjBuQSIgbmFtZT0iaGVpZ2h0IiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9uQ091b0FILUVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfdG1nckFBS3VFZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfdG05VzhBS3VFZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfdDJBZmtBS3VFZUNRUmVJT0lXSjBuQSIgbmFtZT0id2lkdGgiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX25DT3VvQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il92b21la0FLdUVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il92cERLZ0FLdUVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il93SzRGTUFLdUVlQ1FSZUlPSVdKMG5BIiBuYW1lPSJlbmNvZGluZyIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfcWFTMm9BSC1FZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3hfUXo4QUt1RWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX3hfdGY0QUt1RWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX3llR3NFQUt1RWVDUVJlSU9JV0owbkEiIG5hbWU9ImlzX2JpZ2VuZGlhbiIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfNk5KZmtBS25FZUNRUmVJT0lXSjBuQSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzFCNFFZQUt1RWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzFDVThVQUt1RWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iXzEwR1hnQUt1RWVDUVJlSU9JV0owbkEiIG5hbWU9InN0ZXAiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX25DT3VvQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il8zcmRod0FLdUVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il8zcndjc0FLdUVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il80Q3RrSUFLdUVlQ1FSZUlPSVdKMG5BIiBuYW1lPSJkYXRhIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il82Tkpma0FLbkVlQ1FSZUlPSVdKMG5BIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfNS1HU3dBS3VFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il81LWktc0FLdUVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iKiIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX3F4Sks4QUt2RWVDUVJlSU9JV0owbkEiIG5hbWU9IkNoYW5uZWxGbG9hdDMyIj4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il93dmdtMEFLdkVlQ1FSZUlPSVdKMG5BIiBuYW1lPSJuYW1lIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9xYVMyb0FILUVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfejZ3YTBBS3ZFZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfejdXM3dBS3ZFZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfMGZIc0lBS3ZFZUNRUmVJT0lXSjBuQSIgbmFtZT0idmFsdWVzIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9xdVhtQUFINkVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfMjFucGNBS3ZFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il8yMkVWWUFLdkVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iKiIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX096c3pNQUt3RWVDUVJlSU9JV0owbkEiIG5hbWU9IkNvbXByZXNzZWRJbWFnZSI+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfUTBkS0FBS3dFZUNRUmVJT0lXSjBuQSIgbmFtZT0iaGVhZGVyIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9WOHhDZ0FILUVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfU2tneVlBS3dFZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfU2s5ZVVBS3dFZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfUzhESW9BS3dFZUNRUmVJT0lXSjBuQSIgbmFtZT0iZm9ybWF0IiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9xYVMyb0FILUVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfVXg3RklBS3dFZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfVXlYeEVBS3dFZUNRUmVJT0lXSjBuQSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfVk43cnNBS3dFZUNRUmVJT0lXSjBuQSIgbmFtZT0iZGF0YSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfNk5KZmtBS25FZUNRUmVJT0lXSjBuQSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX1hDS3BjQUt3RWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfWENuVllBS3dFZUNRUmVJT0lXSjBuQSIgdmFsdWU9IioiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9vOTRCRUFLd0VlQ1FSZUlPSVdKMG5BIiBuYW1lPSJQb2ludENsb3VkIj4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9zX085c0FLd0VlQ1FSZUlPSVdKMG5BIiBuYW1lPSJoZWFkZXIiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1Y4eENnQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il92TFR6c0FLd0VlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il92TG5Wc0FLd0VlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il92bmV5VUFLd0VlQ1FSZUlPSVdKMG5BIiBuYW1lPSJwb2ludHMiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX3VVSlo0QUg2RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il8wRmw4WUFLd0VlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzBHTVpVQUt3RWVDUVJlSU9JV0owbkEiIHZhbHVlPSIqIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iXzFaOGdNQUt3RWVDUVJlSU9JV0owbkEiIG5hbWU9ImNoYW5uZWxzIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9xeEpLOEFLdkVlQ1FSZUlPSVdKMG5BIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfM3A1SmtBS3dFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il8zcWZtZ0FLd0VlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iKiIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX3Z1MWlFQUt4RWVDUVJlSU9JV0owbkEiIG5hbWU9IlBvaW50RmllbGQiPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX3k2aXBFQUt4RWVDUVJlSU9JV0owbkEiIG5hbWU9Im5hbWUiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX3FhUzJvQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il8wbzBJd0FLeEVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il8wcEhEc0FLeEVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il8xSlNfb0FLeEVlQ1FSZUlPSVdKMG5BIiBuYW1lPSJvZmZzZXQiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX25DT3VvQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il8yLWtmTUFLeEVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il8yX0JMSUFLeEVlQ1FSZUlPSVdKMG5BIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il8zanJYWUFLeEVlQ1FSZUlPSVdKMG5BIiBuYW1lPSJkYXRhdHlwZSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfNk5KZmtBS25FZUNRUmVJT0lXSjBuQSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzVzeEswQUt4RWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzV0TjJ3QUt4RWVDUVJlSU9JV0owbkEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iXzZWQVBnQUt4RWVDUVJlSU9JV0owbkEiIG5hbWU9ImNvdW50IiB0eXBlPSJfbkNPdW9BSC1FZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfZG92TmNBS3pFZUNzR19WMFI4NjV3QSIgbmFtZT0iUG9pbnRDbG91ZDIiPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX2Rvdk5jUUt6RWVDc0dfVjBSODY1d0EiIG5hbWU9ImhlYWRlciIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfVjh4Q2dBSC1FZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2Rvdk5jd0t6RWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2Rvdk5jZ0t6RWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX2lyeTNvQUt6RWVDc0dfVjBSODY1d0EiIG5hbWU9ImhlaWdodCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfbkNPdW9BSC1FZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2xwZlgwQUt6RWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2xwcEkwQUt6RWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX21IdmFFQUt6RWVDc0dfVjBSODY1d0EiIG5hbWU9IndpZHRoIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9uQ091b0FILUVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfbnBXV3dBS3pFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfbnBnSHdBS3pFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfb3YxZHNBS3pFZUNzR19WMFI4NjV3QSIgbmFtZT0iZmllbGRzIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il92dTFpRUFLeEVlQ1FSZUlPSVdKMG5BIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfcThOT29BS3pFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9xOFdZa0FLekVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iKiIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il90Q25oZ0FLekVlQ3NHX1YwUjg2NXdBIiBuYW1lPSJpc19iaWdlbmRpYW4iIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX05ablRzQUlVRWVDVnJMRUJINWVqblEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il92RkpaOEFLekVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il92RkpaOFFLekVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il92cTJ2RUFLekVlQ3NHX1YwUjg2NXdBIiBuYW1lPSJwb2ludF9zdGVwIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9uQ091b0FILUVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfeHJjdDBBS3pFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfeHJtZTBBS3pFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfeldKVkVBS3pFZUNzR19WMFI4NjV3QSIgbmFtZT0icm93X3N0ZXAiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX25DT3VvQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il8xTEg1c0FLekVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il8xcm13a0FLekVlQ3NHX1YwUjg2NXdBIiBuYW1lPSJkYXRhIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il82Tkpma0FLbkVlQ1FSZUlPSVdKMG5BIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfM044dEVBS3pFZUNzR19WMFI4NjV3QSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il8zT0dlRUFLekVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iKiIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il80TUZ3VUFLekVlQ3NHX1YwUjg2NXdBIiBuYW1lPSJpc19kZW5zZSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfTlpuVHNBSVVFZUNWckxFQkg1ZWpuUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzVtaThJQUt6RWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzVtc0dFQUt6RWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfRXJXU29LbENFZUNEWC1SNHVweElwZyIgbmFtZT0iSm9pbnRTdGF0ZSI+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfSm9BWjRLbENFZUNEWC1SNHVweElwZyIgbmFtZT0ibmFtZSIgdHlwZT0iX3FhUzJvQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9RWlZqd0tsQ0VlQ0RYLVI0dXB4SXBnIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX1FaVmp3YWxDRWVDRFgtUjR1cHhJcGciIHZhbHVlPSIqIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX1NtQVBvS2xDRWVDRFgtUjR1cHhJcGciIG5hbWU9InBvc2l0aW9uIiB0eXBlPSJfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2d0VXZvS2xDRWVDRFgtUjR1cHhJcGciLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfZ3RVdm9hbENFZUNEWC1SNHVweElwZyIgdmFsdWU9IioiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfWC1PUmdLbENFZUNEWC1SNHVweElwZyIgbmFtZT0idmVsb2NpdHkiIHR5cGU9Il9ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfaGN0bE1LbENFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9oY3RsTWFsQ0VlQ0RYLVI0dXB4SXBnIiB2YWx1ZT0iKiIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9kUGNUZ0tsQ0VlQ0RYLVI0dXB4SXBnIiBuYW1lPSJlZmZvcnQiIHR5cGU9Il9ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfaWpDN0lLbENFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9pakM3SWFsQ0VlQ0RYLVI0dXB4SXBnIiB2YWx1ZT0iKiIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX0dNRkl3S2xHRWVDRFgtUjR1cHhJcGciIG5hbWU9Ik5hdlNhdFN0YXR1cyI+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfZ3ZjU3NLbEdFZUNEWC1SNHVweElwZyIgbmFtZT0iU1RBVFVTX05PX0ZJWCIgdHlwZT0iX1dyOXJ3QUszRWVDc0dfVjBSODY1d0EiIGlzUmVhZE9ubHk9InRydWUiPgorICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzFhdmZFS3VoRWVDV0ZKeldrZmhQSGciIHZhbHVlPSItMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il8za09TRUtsR0VlQ0RYLVI0dXB4SXBnIiBuYW1lPSJTVEFUVVNfRklYIiB0eXBlPSJfV3I5cndBSzNFZUNzR19WMFI4NjV3QSIgaXNSZWFkT25seT0idHJ1ZSI+CisgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfNE1YNU1LdWhFZUNXRkp6V2tmaFBIZyIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il85ZmRoY0tsR0VlQ0RYLVI0dXB4SXBnIiBuYW1lPSJTVEFUVVNfU0JBU19GSVgiIHR5cGU9Il9Xcjlyd0FLM0VlQ3NHX1YwUjg2NXdBIiBpc1JlYWRPbmx5PSJ0cnVlIj4KKyAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il85RE5zVUt1aEVlQ1dGSnpXa2ZoUEhnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9FaDdlb0tsSEVlQ0RYLVI0dXB4SXBnIiBuYW1lPSJTVEFUVVNfR0JBU19GSVgiIHR5cGU9Il9Xcjlyd0FLM0VlQ3NHX1YwUjg2NXdBIiBpc1JlYWRPbmx5PSJ0cnVlIj4KKyAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9DdkdSRUt1aUVlQ1dGSnpXa2ZoUEhnIiB2YWx1ZT0iMiIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9KZ0V6b0tsSEVlQ0RYLVI0dXB4SXBnIiBuYW1lPSJzdGF0dXMiIHR5cGU9Il9Xcjlyd0FLM0VlQ3NHX1YwUjg2NXdBIi8+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfT19UY2NLbEhFZUNEWC1SNHVweElwZyIgbmFtZT0iU0VSVklDRV9HUFMiIHR5cGU9Il9MbVJPb0tsSUVlQ0RYLVI0dXB4SXBnIiBpc1JlYWRPbmx5PSJ0cnVlIj4KKyAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9KYlhVd0t1aUVlQ1dGSnpXa2ZoUEhnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9WVTY2c0tsSEVlQ0RYLVI0dXB4SXBnIiBuYW1lPSJTRVJWSUNFX0dMT05BU1MiIHR5cGU9Il9MbVJPb0tsSUVlQ0RYLVI0dXB4SXBnIiBpc1JlYWRPbmx5PSJ0cnVlIj4KKyAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9OVlFYY0t1aUVlQ1dGSnpXa2ZoUEhnIiB2YWx1ZT0iMiIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9hVmNPUUtsSEVlQ0RYLVI0dXB4SXBnIiBuYW1lPSJTRVJWSUNFX0NPTVBBU1MiIHR5cGU9Il9MbVJPb0tsSUVlQ0RYLVI0dXB4SXBnIiBpc1JlYWRPbmx5PSJ0cnVlIj4KKyAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9QWmtfb0t1aUVlQ1dGSnpXa2ZoUEhnIiB2YWx1ZT0iNCIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9kTkxRWUtsSEVlQ0RYLVI0dXB4SXBnIiBuYW1lPSJTRVJWSUNFX0dBTElMRU8iIHR5cGU9Il9MbVJPb0tsSUVlQ0RYLVI0dXB4SXBnIiBpc1JlYWRPbmx5PSJ0cnVlIj4KKyAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9UZXp2b0t1aUVlQ1dGSnpXa2ZoUEhnIiB2YWx1ZT0iOCIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9nOEN1MEtsSEVlQ0RYLVI0dXB4SXBnIiBuYW1lPSJzZXJ2aWNlIiB0eXBlPSJfTG1ST29LbElFZUNEWC1SNHVweElwZyIvPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfTXd2dm9LbEdFZUNEWC1SNHVweElwZyIgbmFtZT0iTmF2U2F0Rml4Ij4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il8ySWhUb0tsSEVlQ0RYLVI0dXB4SXBnIiBuYW1lPSJzdGF0dXMiIHR5cGU9Il9JWVQ2MEZXNUVlS0dmcUVvVjBla0R3Ii8+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfYWxMZDhLbElFZUNEWC1SNHVweElwZyIgbmFtZT0ic2VydmljZSIgdHlwZT0iXzUyN1ZBRlc0RWVLR2ZxRW9WMGVrRHciLz4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il91SjNKRUtsSkVlQ0RYLVI0dXB4SXBnIiBuYW1lPSJoZWFkZXIiIHR5cGU9Il9WOHhDZ0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfRVF3SHNLbEtFZUNEWC1SNHVweElwZyIgbmFtZT0ibGF0aXR1ZGUiIHR5cGU9Il9ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfSTRpeU1LbEtFZUNEWC1SNHVweElwZyIgbmFtZT0ibG9uZ2l0dWRlIiB0eXBlPSJfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX1FtaEtnS2xLRWVDRFgtUjR1cHhJcGciIG5hbWU9ImFsdGl0dWRlIiB0eXBlPSJfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX1ZMQ2VrS2xLRWVDRFgtUjR1cHhJcGciIG5hbWU9InBvc2l0aW9uX2NvdmFyaWFuY2UiIHR5cGU9Il9ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfYUdEQUFLbEtFZUNEWC1SNHVweElwZyIgdmFsdWU9IjkiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfYUdNeEFLbEtFZUNEWC1SNHVweElwZyIgdmFsdWU9IjkiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfRXhVb3NLbExFZUNEWC1SNHVweElwZyIgbmFtZT0icG9zaXRpb25fY292YXJpYW5jZV90eXBlIiB0eXBlPSJfVVduOFlGVzRFZUtHZnFFb1YwZWtEdyIvPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfMGVfOW9LdWpFZUNXRkp6V2tmaFBIZyIgbmFtZT0iSm95Ij4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il8yYjM2QUt1akVlQ1dGSnpXa2ZoUEhnIiBuYW1lPSJoZWFkZXIiIHR5cGU9Il9WOHhDZ0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfNzR0OU1LdWpFZUNXRkp6V2tmaFBIZyIgbmFtZT0iYXhlcyIgdHlwZT0iX3F1WG1BQUg2RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9fU0lKQUt1akVlQ1dGSnpXa2ZoUEhnIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX19TSUpBYXVqRWVDV0ZKeldrZmhQSGciIHZhbHVlPSIqIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0JuU3BrS3VrRWVDV0ZKeldrZmhQSGciIG5hbWU9ImJ1dHRvbnMiIHR5cGU9Il9NZUkzVUt1a0VlQ1dGSnpXa2ZoUEhnIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfS0loam9Ldk1FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9LSWhqb2F2TUVlQ0Z2YnRMVl96Q0h3IiB2YWx1ZT0iKiIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX1FacllvS3ZNRWVDRnZidExWX3pDSHciIG5hbWU9IkpveUZlZWRiYWNrIj4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9TeC1zd0t2TUVlQ0Z2YnRMVl96Q0h3IiBuYW1lPSJUWVBFX0xFRCIgdHlwZT0iXzZOSmZrQUtuRWVDUVJlSU9JV0owbkEiPgorICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2VIOXRrS3ZNRWVDRnZidExWX3pDSHciLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfbEdqM1lLdk1FZUNGdmJ0TFZfekNIdyIgbmFtZT0iVFlQRV9SVU1CTEUiIHR5cGU9Il82Tkpma0FLbkVlQ1FSZUlPSVdKMG5BIj4KKyAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9yT0tId0t2TUVlQ0Z2YnRMVl96Q0h3IiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9yczIxOEt2TUVlQ0Z2YnRMVl96Q0h3IiBuYW1lPSJUWVBFX0JVWlpFUiIgdHlwZT0iXzZOSmZrQUtuRWVDUVJlSU9JV0owbkEiPgorICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3ZxTG5JS3ZNRWVDRnZidExWX3pDSHciIHZhbHVlPSIyIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX3dkNDhBS3ZNRWVDRnZidExWX3pDSHciIG5hbWU9InR5cGUiIHR5cGU9Il82Tkpma0FLbkVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfenMzWmNLdk1FZUNGdmJ0TFZfekNIdyIgbmFtZT0iaWQiIHR5cGU9Il82Tkpma0FLbkVlQ1FSZUlPSVdKMG5BIi8+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfMThFYjhLdk1FZUNGdmJ0TFZfekNIdyIgbmFtZT0iaW50ZW5zaXR5IiB0eXBlPSJfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfOVdZUllLdk1FZUNGdmJ0TFZfekNIdyIgbmFtZT0iSm95RmVlZGJhY2tBcnJheSI+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfX29IRGNLdk1FZUNGdmJ0TFZfekNIdyIgbmFtZT0iYXJyYXkiIHR5cGU9Il9RWnJZb0t2TUVlQ0Z2YnRMVl96Q0h3Ij4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfRkRkUjBLdk5FZUNGdmJ0TFZfekNIdyIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9GRGRSMGF2TkVlQ0Z2YnRMVl96Q0h3IiB2YWx1ZT0iKiIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX1RWazhBRGloRWVLcnVmSnF4UjZXaWciIG5hbWU9IkNhckxpa2VPZG9tZXRyeSI+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfYk5QYjBEaWhFZUtydWZKcXhSNldpZyIgbmFtZT0iaGVhZGVyIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9WOHhDZ0FILUVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfZUlfYlFEaWhFZUtydWZKcXhSNldpZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfZUlfYlFUaWhFZUtydWZKcXhSNldpZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2VKSk1RRGloRWVLcnVmSnF4UjZXaWciPgorICAgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il84NUl1c0RpaEVlS3J1ZkpxeFI2V2lnIiBuYW1lPSJzdGVlcmluZ19hbmdsZSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfWTl0QXdBSDZFZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXy1yYkxzRGloRWVLcnVmSnF4UjZXaWciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXy1yYkxzVGloRWVLcnVmSnF4UjZXaWciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il8tcmJMc2ppaEVlS3J1ZkpxeFI2V2lnIj4KKyAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfQlhyOW9EaWlFZUtydWZKcXhSNldpZyIgbmFtZT0ibGVmdF9yZWFyX3doZWVsX2Rpc3RhbmNlIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfRTBPVjhEaWlFZUtydWZKcXhSNldpZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfRTBPVjhUaWlFZUtydWZKcXhSNldpZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX0UwWUc4RGlpRWVLcnVmSnF4UjZXaWciPgorICAgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9HVVZkMERpaUVlS3J1ZkpxeFI2V2lnIiBuYW1lPSJyaWdodF9yZWFyX3doZWVsX2Rpc3RhbmNlIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfSWVLNElEaWlFZUtydWZKcXhSNldpZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfSWVLNElUaWlFZUtydWZKcXhSNldpZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX0llSzRJamlpRWVLcnVmSnF4UjZXaWciPgorICAgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9OSWZTTURpaUVlS3J1ZkpxeFI2V2lnIiBuYW1lPSJyaWdodF9yZWFyX3doZWVsX3ZlbG9jaXR5IiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfUEVCeDBEaWlFZUtydWZKcXhSNldpZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfUEVCeDBUaWlFZUtydWZKcXhSNldpZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX1BFSzd3RGlpRWVLcnVmSnF4UjZXaWciPgorICAgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9QYmtJRURpaUVlS3J1ZkpxeFI2V2lnIiBuYW1lPSJsZWZ0X3JlYXJfd2hlZWxfdmVsb2NpdHkiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9YQnBJb0RpaUVlS3J1ZkpxeFI2V2lnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9YQnk1b0RpaUVlS3J1ZkpxeFI2V2lnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfWEJ5NW9UaWlFZUtydWZKcXhSNldpZyI+CisgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfVnFTd29EaWhFZUtydWZKcXhSNldpZyIgbmFtZT0iRGlmZmVyZW50aWFsT2RvbWV0cnkiPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iXzZVQ1VzRGloRWVLcnVmSnF4UjZXaWciIG5hbWU9ImhlYWRlciIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfVjh4Q2dBSC1FZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzdVUWJrRGloRWVLcnVmSnF4UjZXaWciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzdVUWJrVGloRWVLcnVmSnF4UjZXaWciIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il83VVFia2ppaEVlS3J1ZkpxeFI2V2lnIj4KKyAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfWkx4ZDREaWlFZUtydWZKcXhSNldpZyIgbmFtZT0icmlnaHRfZGlzdGFuY2UiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9iUWl5QURpaUVlS3J1ZkpxeFI2V2lnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9iUWl5QVRpaUVlS3J1ZkpxeFI2V2lnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfYlFzakFEaWlFZUtydWZKcXhSNldpZyI+CisgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX2J6al9nRGlpRWVLcnVmSnF4UjZXaWciIG5hbWU9ImxlZnRfZGlzdGFuY2UiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9kUzdnZ0RpaUVlS3J1ZkpxeFI2V2lnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9kVEZSZ0RpaUVlS3J1ZkpxeFI2V2lnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfZFRPYmNEaWlFZUtydWZKcXhSNldpZyI+CisgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX2R4ZWRzRGlpRWVLcnVmSnF4UjZXaWciIG5hbWU9ImxlZnRfdmVsb2NpdHkiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9ndWJYQURpaUVlS3J1ZkpxeFI2V2lnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9ndWJYQVRpaUVlS3J1ZkpxeFI2V2lnIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfZ3VrZzhEaWlFZUtydWZKcXhSNldpZyI+CisgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX2hOdDdFRGlpRWVLcnVmSnF4UjZXaWciIG5hbWU9InJpZ2h0X3ZlbG9jaXR5IiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfaXFfeFlEaWlFZUtydWZKcXhSNldpZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfaXFfeFlUaWlFZUtydWZKcXhSNldpZyIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2lySmlZRGlpRWVLcnVmSnF4UjZXaWciPgorICAgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb24iIHhtaTppZD0iX1VXbjhZRlc0RWVLR2ZxRW9WMGVrRHciIG5hbWU9IkNPVkFSSUFOQ0VfVFlQRSI+CisgICAgICAgICAgICA8b3duZWRMaXRlcmFsIHhtaTppZD0iX1p2bU1NRlc0RWVLR2ZxRW9WMGVrRHciIG5hbWU9IkNPVkFSSUFOQ0VfVFlQRV9VTktOT1dOIi8+CisgICAgICAgICAgICA8b3duZWRMaXRlcmFsIHhtaTppZD0iX3JIMGNRRlc0RWVLR2ZxRW9WMGVrRHciIG5hbWU9IkNPVkFSSUFOQ0VfVFlQRV9BUFBST1hJTUFURUQiLz4KKyAgICAgICAgICAgIDxvd25lZExpdGVyYWwgeG1pOmlkPSJfc3d1VHdGVzRFZUtHZnFFb1YwZWtEdyIgbmFtZT0iIENPVkFSSUFOQ0VfVFlQRV9ESUFHT05BTF9LTk9XTiIvPgorICAgICAgICAgICAgPG93bmVkTGl0ZXJhbCB4bWk6aWQ9Il93djFOb0ZXNEVlS0dmcUVvVjBla0R3IiBuYW1lPSJDT1ZBUklBTkNFX1RZUEVfS05PV04iLz4KKyAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb24iIHhtaTppZD0iXzUyN1ZBRlc0RWVLR2ZxRW9WMGVrRHciIG5hbWU9IlNFUlZJQ0VfVFlQRSI+CisgICAgICAgICAgICA8b3duZWRMaXRlcmFsIHhtaTppZD0iXzh3NUx3Rlc0RWVLR2ZxRW9WMGVrRHciIG5hbWU9IlNFUlZJQ0VfR1BTIi8+CisgICAgICAgICAgICA8b3duZWRMaXRlcmFsIHhtaTppZD0iX0FLVFhrRlc1RWVLR2ZxRW9WMGVrRHciIG5hbWU9IlNFUlZJQ0VfR0xPTkFTUyIvPgorICAgICAgICAgICAgPG93bmVkTGl0ZXJhbCB4bWk6aWQ9Il9CenpFOEZXNUVlS0dmcUVvVjBla0R3IiBuYW1lPSJTRVJWSUNFX0NPTVBBU1MiLz4KKyAgICAgICAgICAgIDxvd25lZExpdGVyYWwgeG1pOmlkPSJfRFBjamtGVzVFZUtHZnFFb1YwZWtEdyIgbmFtZT0iU0VSVklDRV9HQUxJTEVPIi8+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uIiB4bWk6aWQ9Il9JWVQ2MEZXNUVlS0dmcUVvVjBla0R3IiBuYW1lPSJTVEFUVVNfVFlQRSI+CisgICAgICAgICAgICA8b3duZWRMaXRlcmFsIHhtaTppZD0iX0tsU0lzRlc1RWVLR2ZxRW9WMGVrRHciIG5hbWU9IlNUQVRVU19OT19GSVgiLz4KKyAgICAgICAgICAgIDxvd25lZExpdGVyYWwgeG1pOmlkPSJfTVhINXdGVzVFZUtHZnFFb1YwZWtEdyIgbmFtZT0iU1RBVFVTX0ZJWCIvPgorICAgICAgICAgICAgPG93bmVkTGl0ZXJhbCB4bWk6aWQ9Il9RLUJNWUZXNUVlS0dmcUVvVjBla0R3IiBuYW1lPSJTVEFUVVNfU0JBU19GSVgiLz4KKyAgICAgICAgICAgIDxvd25lZExpdGVyYWwgeG1pOmlkPSJfU28yOWtGVzVFZUtHZnFFb1YwZWtEdyIgbmFtZT0iU1RBVFVTX0dCQVNfRklYIi8+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgeG1pOmlkPSJfTWx5TllBSHdFZUNRUU9LcmhPX2ZJUSIgbmFtZT0iYWN0aW9ubGliX2RhdGF0eXBlcyI+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9CeDZCd0FLNUVlQ3NHX1YwUjg2NXdBIiBuYW1lPSJHb2FsSUQiPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0V1MjdFQUs1RWVDc0dfVjBSODY1d0EiIG5hbWU9InN0YW1wIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9neXQ0WUFILUVlQ19aTHpMUWhXLVRRIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfR0NUZjhBSzVFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfR0N3TDRBSzVFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfR2VLOGtBSzVFZUNzR19WMFI4NjV3QSIgbmFtZT0iaWQiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX3FhUzJvQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9JQmtCOEFLNUVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9JQ0F0NEFLNUVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX0hmREdrQUxBRWVDc0dfVjBSODY1d0EiIG5hbWU9IkdvYWxTdGF0dXMiPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX01sUGtVQUxBRWVDc0dfVjBSODY1d0EiIG5hbWU9IlBFTkRJTkciIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iXzZOSmZrQUtuRWVDUVJlSU9JV0owbkEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9Tc1p2MEFMQUVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9Tc19sc0FMQUVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iRVN0cnVjdHVyYWxGZWF0dXJlLWRlZmF1bHRWYWx1ZUxpdGVyYWwtX2xvd2VyVmFsdWUiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfVTBBVmdBTEFFZUNzR19WMFI4NjV3QSIgbmFtZT0iQUNUSVZFIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il82Tkpma0FLbkVlQ1FSZUlPSVdKMG5BIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfWExHdndBTEFFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfWExqYnNBTEFFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il8xSy1Jc0FLekVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il83aHpjQUFMQUVlQ3NHX1YwUjg2NXdBIiBuYW1lPSJQUkVFTVBURUQiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iXzZOSmZrQUtuRWVDUVJlSU9JV0owbkEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il8tN0QyMEFMQUVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il8tN2dpd0FMQUVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iTGlua0FjdGlvbi1lbmREYXRhLV9sb3dlclZhbHVlIiB2YWx1ZT0iMiIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9GRHRRRUFMQkVlQ3NHX1YwUjg2NXdBIiBuYW1lPSJTVUNDRUVERUQiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iXzZOSmZrQUtuRWVDUVJlSU9JV0owbkEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9HeWJic0FMQkVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9HekJSa0FMQkVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9heEd3b0FMQkVlQ3NHX1YwUjg2NXdBIiBuYW1lPSJBQk9SVEVEIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il82Tkpma0FLbkVlQ1FSZUlPSVdKMG5BIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfZEJNajhBTEJFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfZEJ6QTRBTEJFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfZHBib29BTEJFZUNzR19WMFI4NjV3QSIgbmFtZT0iUkVKRUNURUQiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iXzZOSmZrQUtuRWVDUVJlSU9JV0owbkEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9mWGpYVUFMQkVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9mWUFEUUFMQkVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9nUVV5WUFMQkVlQ3NHX1YwUjg2NXdBIiBuYW1lPSJQUkVFTVBUSU5HIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il82Tkpma0FLbkVlQ1FSZUlPSVdKMG5BIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfaUk0UGNBTEJFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfaUplRlVBTEJFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfaXltaDRBTEJFZUNzR19WMFI4NjV3QSIgbmFtZT0iUkVDQUxMSU5HIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il82Tkpma0FLbkVlQ1FSZUlPSVdKMG5BIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfa2paeElBTEJFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfa2pfbkFBTEJFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfdGNCLXNBTEJFZUNzR19WMFI4NjV3QSIgbmFtZT0iUkVDQUxMRUQiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iXzZOSmZrQUtuRWVDUVJlSU9JV0owbkEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il92SGVNMEFMQkVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il92SUVwd0FMQkVlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il92cWZhVUFMQkVlQ3NHX1YwUjg2NXdBIiBuYW1lPSJMT1NUIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il82Tkpma0FLbkVlQ1FSZUlPSVdKMG5BIj4KKyAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfeHZqcFlBTEJFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfeHdLR1VBTEJFZUNzR19WMFI4NjV3QSIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfeVhmeklBTEJFZUNzR19WMFI4NjV3QSIgbmFtZT0idGV4dCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfcWFTMm9BSC1FZUNfWkx6TFFoVy1UUSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3o2Y01rQUxCRWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX3o3Q0NjQUxCRWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0R4TjRBQUxDRWVDc0dfVjBSODY1d0EiIG5hbWU9InN0YXR1cyIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfNk5KZmtBS25FZUNRUmVJT0lXSjBuQSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0ZmN2NrQUxDRWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0ZnWUlnQUxDRWVDc0dfVjBSODY1d0EiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfSlZmXzhBTENFZUNzR19WMFI4NjV3QSIgbmFtZT0iR29hbFN0YXR1c0FycmF5Ij4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9LMVVNNEFMQ0VlQ3NHX1YwUjg2NXdBIiBuYW1lPSJoZWFkZXIiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1Y4eENnQUgtRWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9NaHk4MEFMQ0VlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9NaVBvd0FMQ0VlQ3NHX1YwUjg2NXdBIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9Od29IY0FMQ0VlQ3NHX1YwUjg2NXdBIiBuYW1lPSJzdGF0dXNfbGlzdCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfSGZER2tBTEFFZUNzR19WMFI4NjV3QSI+CisgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX1NYMFZBQUxDRWVDc0dfVjBSODY1d0EiLz4KKyAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfU1lheDhBTENFZUNzR19WMFI4NjV3QSIgdmFsdWU9IioiLz4KKyAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgeG1pOmlkPSJfUUpDMkFLeFlFZUNKRDQ2R3REc0FCQSIgbmFtZT0ic3RlcmVvX2RhdGF0eXBlcyI+CisgICAgICAgICAgPG93bmVkQ29tbWVudCB4bWk6aWQ9Il9VSGFKQUt4WUVlQ0pENDZHdERzQUJBIj4KKyAgICAgICAgICAgIDxib2R5PnN0ZXJlb19tc2dzIGNvbnRhaW5zIG1lc3NhZ2VzIHNwZWNpZmljIHRvIHN0ZXJlbyBwcm9jZXNzaW5nLCBzdWNoIGFzIGRpc3Bhcml0eSBpbWFnZXMuPC9ib2R5PgorICAgICAgICAgIDwvb3duZWRDb21tZW50PgorICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIHhtaTppZD0iX0dDbktnQ01fRWVLd2VkN0ZFRUYtNFEiIG5hbWU9Im9hcnBzX2RhdGF0eXBlcyI+CisgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOk1vZGVsIiB4bWk6aWQ9Il9jdXRMSUNOREVlS3dlZDdGRUVGLTRRIiBuYW1lPSJvYXJwMV9kYXRhdHlwZXMiPgorICAgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9jdXRMTnlOREVlS3dlZDdGRUVGLTRRIiBuYW1lPSJDYXJMaWtlQ29tbWFuZCI+CisgICAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9jdXRMT0NOREVlS3dlZDdGRUVGLTRRIiBuYW1lPSJ2ZWxvY2l0eSIgdHlwZT0iX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2N1dExPU05ERWVLd2VkN0ZFRUYtNFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfY3V0TE9pTkRFZUt3ZWQ3RkVFRi00USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2N1dExPeU5ERWVLd2VkN0ZFRUYtNFEiIG5hbWU9ImRlZmF1bHRTcGVlZCIvPgorICAgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfY3V0TFBDTkRFZUt3ZWQ3RkVFRi00USIgbmFtZT0ic3RlZXJpbmdBbmdsZSIgdHlwZT0iX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiPgorICAgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2N1dExQU05ERWVLd2VkN0ZFRUYtNFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfY3V0TFBpTkRFZUt3ZWQ3RkVFRi00USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2N1dExQeU5ERWVLd2VkN0ZFRUYtNFEiIG5hbWU9ImRlZmF1bHRTdGVlcmluZyIvPgorICAgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX2N1dExRQ05ERWVLd2VkN0ZFRUYtNFEiIG5hbWU9Ik11bHRpTGF5ZXJMaWRhclNjYW4iPgorICAgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfY3V0TFFTTkRFZUt3ZWQ3RkVFRi00USIgbmFtZT0ibGF5ZXJzIiB0eXBlPSJfY3V0TFF5TkRFZUt3ZWQ3RkVFRi00USIvPgorICAgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfY3V0TFFpTkRFZUt3ZWQ3RkVFRi00USIgbmFtZT0ibmJMYXllciIgdHlwZT0iXzZOSmZrQUtuRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9jdXRMUXlOREVlS3dlZDdGRUVGLTRRIiBuYW1lPSJFeHRlbnRlZExpZGFyU2NhbiI+CisgICAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9jdXRMUkNOREVlS3dlZDdGRUVGLTRRIiBuYW1lPSJzY2FuIiB0eXBlPSJfemR3ZElBS3NFZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfY3V0TFJTTkRFZUt3ZWQ3RkVFRi00USIgbmFtZT0ibGF5ZXJJZCIgdHlwZT0iXzZOSmZrQUtuRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX2N1dExSaU5ERWVLd2VkN0ZFRUYtNFEiIG5hbWU9ImxheWVyQW5nbGUiIHR5cGU9Il9xdVhtQUFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgeG1pOmlkPSJfQTNMVHNDTjhFZUt3ZWQ3RkVFRi00USIgbmFtZT0ib2FycDRfZGF0YXR5cGVzIj4KKyAgICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfQTNMVDlTTjhFZUt3ZWQ3RkVFRi00USIgbmFtZT0iVmVsb2NpdHlfTGluZWFyIj4KKyAgICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0EzTFQ5aU44RWVLd2VkN0ZFRUYtNFEiIG5hbWU9InZhbHVlIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9NZUkzVUt1a0VlQ1dGSnpXa2ZoUEhnIiBpc1VuaXF1ZT0iZmFsc2UiPgorICAgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0EzTFQ5eU44RWVLd2VkN0ZFRUYtNFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfQTNMVC1DTjhFZUt3ZWQ3RkVFRi00USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfQTNMVC1TTjhFZUt3ZWQ3RkVFRi00USI+CisgICAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX0EzTFVEeU44RWVLd2VkN0ZFRUYtNFEiIG5hbWU9IkFydF9TZXRfUG9pbnQiPgorICAgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfQTNMVUVDTjhFZUt3ZWQ3RkVFRi00USIgbmFtZT0ib21lZ2FfbGVmdCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfQTNMVVVpTjhFZUt3ZWQ3RkVFRi00USIgaXNVbmlxdWU9ImZhbHNlIj4KKyAgICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9BM0xVRVNOOEVlS3dlZDdGRUVGLTRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0EzTFVFaU44RWVLd2VkN0ZFRUYtNFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX0EzTFVFeU44RWVLd2VkN0ZFRUYtNFEiPgorICAgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0EzTFVGQ044RWVLd2VkN0ZFRUYtNFEiIG5hbWU9Im9tZWdhX3JpZ2h0IiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9BM0xVVWlOOEVlS3dlZDdGRUVGLTRRIj4KKyAgICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9BM0xVRlNOOEVlS3dlZDdGRUVGLTRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0EzTFVGaU44RWVLd2VkN0ZFRUYtNFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX0EzTFVGeU44RWVLd2VkN0ZFRUYtNFEiPgorICAgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9BM0xVT1NOOEVlS3dlZDdGRUVGLTRRIiBuYW1lPSJEaXN0YW5jZSI+CisgICAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9BM0xVT2lOOEVlS3dlZDdGRUVGLTRRIiBuYW1lPSJ2YWx1ZSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfbkNPdW9BSC1FZUNfWkx6TFFoVy1UUSIgaXNVbmlxdWU9ImZhbHNlIj4KKyAgICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9BM0xVT3lOOEVlS3dlZDdGRUVGLTRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0EzTFVQQ044RWVLd2VkN0ZFRUYtNFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX0EzTFVQU044RWVLd2VkN0ZFRUYtNFEiPgorICAgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9BM0xVUGlOOEVlS3dlZDdGRUVGLTRRIiBuYW1lPSJNZXRyaWMiPgorICAgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfQTNMVVB5TjhFZUt3ZWQ3RkVFRi00USIgbmFtZT0idmFsdWUiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1k5dEF3QUg2RWVDX1pMekxRaFctVFEiIGlzVW5pcXVlPSJmYWxzZSI+CisgICAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfQTNMVVFDTjhFZUt3ZWQ3RkVFRi00USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9BM0xVUVNOOEVlS3dlZDdGRUVGLTRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9BM0xVUWlOOEVlS3dlZDdGRUVGLTRRIj4KKyAgICAgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfQTNMVVF5TjhFZUt3ZWQ3RkVFRi00USIgbmFtZT0iQW5ndWxhciI+CisgICAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9BM0xVUkNOOEVlS3dlZDdGRUVGLTRRIiBuYW1lPSJ2YWx1ZSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfbkNPdW9BSC1FZUNfWkx6TFFoVy1UUSIgaXNVbmlxdWU9ImZhbHNlIj4KKyAgICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9BM0xVUlNOOEVlS3dlZDdGRUVGLTRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0EzTFVSaU44RWVLd2VkN0ZFRUYtNFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX0EzTFVSeU44RWVLd2VkN0ZFRUYtNFEiPgorICAgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9BM0xVVWlOOEVlS3dlZDdGRUVGLTRRIiBuYW1lPSJWZWxvY2l0eV9Bbmd1bGFyIj4KKyAgICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0EzTFVVeU44RWVLd2VkN0ZFRUYtNFEiIG5hbWU9InZhbHVlIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9ZOXRBd0FINkVlQ19aTHpMUWhXLVRRIiBpc1VuaXF1ZT0iZmFsc2UiPgorICAgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0EzTFVWQ044RWVLd2VkN0ZFRUYtNFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfQTNMVVZTTjhFZUt3ZWQ3RkVFRi00USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfQTNMVVZpTjhFZUt3ZWQ3RkVFRi00USI+CisgICAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX0EzTFVWeU44RWVLd2VkN0ZFRUYtNFEiIG5hbWU9Ik9wX1NldF9Qb2ludCI+CisgICAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9BM0xVV0NOOEVlS3dlZDdGRUVGLTRRIiBuYW1lPSJ2ZWxvY2l0eSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfQTNMVDlTTjhFZUt3ZWQ3RkVFRi00USIgaXNVbmlxdWU9ImZhbHNlIj4KKyAgICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9BM0xVV1NOOEVlS3dlZDdGRUVGLTRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0EzTFVXaU44RWVLd2VkN0ZFRUYtNFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX0EzTFVXeU44RWVLd2VkN0ZFRUYtNFEiPgorICAgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0EzTFVYQ044RWVLd2VkN0ZFRUYtNFEiIG5hbWU9Im9yaWVudGF0aW9uIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9BM0xVUXlOOEVlS3dlZDdGRUVGLTRRIiBpc1VuaXF1ZT0iZmFsc2UiPgorICAgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0EzTFVYU044RWVLd2VkN0ZFRUYtNFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfQTNMVVhpTjhFZUt3ZWQ3RkVFRi00USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfQTNMVVh5TjhFZUt3ZWQ3RkVFRi00USI+CisgICAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX0EzTFVaU044RWVLd2VkN0ZFRUYtNFEiIG5hbWU9IlNwZWVkX1RpY3NfTGVmdF9SaWdodCI+CisgICAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9BM0xVWmlOOEVlS3dlZDdGRUVGLTRRIiBuYW1lPSJzcGVlZF90aWNzX2xlZnQiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX0EzTFViaU44RWVLd2VkN0ZFRUYtNFEiIGlzVW5pcXVlPSJmYWxzZSI+CisgICAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfQTNMVVp5TjhFZUt3ZWQ3RkVFRi00USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9BM0xVYUNOOEVlS3dlZDdGRUVGLTRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9BM0xVYVNOOEVlS3dlZDdGRUVGLTRRIj4KKyAgICAgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9BM0xVYWlOOEVlS3dlZDdGRUVGLTRRIiBuYW1lPSJzcGVlZF90aWNzX3JpZ2h0IiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9BM0xVYmlOOEVlS3dlZDdGRUVGLTRRIiBpc1VuaXF1ZT0iZmFsc2UiPgorICAgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0EzTFVheU44RWVLd2VkN0ZFRUYtNFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfQTNMVWJDTjhFZUt3ZWQ3RkVFRi00USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfQTNMVWJTTjhFZUt3ZWQ3RkVFRi00USI+CisgICAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgICAgICAgICAgICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIHhtaTppZD0iX0EzTFViaU44RWVLd2VkN0ZFRUYtNFEiIG5hbWU9IlNwZWVkX1RpY3MiPgorICAgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfQTNMVWJ5TjhFZUt3ZWQ3RkVFRi00USIgbmFtZT0idmFsdWUiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX01lSTNVS3VrRWVDV0ZKeldrZmhQSGciIGlzVW5pcXVlPSJmYWxzZSI+CisgICAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfQTNMVWNDTjhFZUt3ZWQ3RkVFRi00USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9BM0xVY1NOOEVlS3dlZDdGRUVGLTRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9BM0xVY2lOOEVlS3dlZDdGRUVGLTRRIj4KKyAgICAgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfQTNMVWN5TjhFZUt3ZWQ3RkVFRi00USIgbmFtZT0iT2RvbWV0ZXJfVGljcyI+CisgICAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9BM0xVZENOOEVlS3dlZDdGRUVGLTRRIiBuYW1lPSJ2YWx1ZSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfTWVJM1VLdWtFZUNXRkp6V2tmaFBIZyIgaXNVbmlxdWU9ImZhbHNlIj4KKyAgICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9BM0xVZFNOOEVlS3dlZDdGRUVGLTRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0EzTFVkaU44RWVLd2VkN0ZFRUYtNFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX0EzTFVkeU44RWVLd2VkN0ZFRUYtNFEiPgorICAgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9BM0xVZUNOOEVlS3dlZDdGRUVGLTRRIiBuYW1lPSJPZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHQiPgorICAgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfQTNMVWVTTjhFZUt3ZWQ3RkVFRi00USIgbmFtZT0ib2RvbWV0ZXJfdGljc19sZWZ0IiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9BM0xVY3lOOEVlS3dlZDdGRUVGLTRRIiBpc1VuaXF1ZT0iZmFsc2UiPgorICAgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0EzTFVlaU44RWVLd2VkN0ZFRUYtNFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfQTNMVWV5TjhFZUt3ZWQ3RkVFRi00USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfQTNMVWZDTjhFZUt3ZWQ3RkVFRi00USI+CisgICAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfQTNMVWZTTjhFZUt3ZWQ3RkVFRi00USIgbmFtZT0ib2RvbWV0ZXJfdGljc19yaWdodCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfQTNMVWN5TjhFZUt3ZWQ3RkVFRi00USIgaXNVbmlxdWU9ImZhbHNlIj4KKyAgICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9BM0xVZmlOOEVlS3dlZDdGRUVGLTRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0EzTFVmeU44RWVLd2VkN0ZFRUYtNFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX0EzTFVnQ044RWVLd2VkN0ZFRUYtNFEiPgorICAgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9BM0xVZ1NOOEVlS3dlZDdGRUVGLTRRIiBuYW1lPSJQcm94aV9MZWZ0X1JpZ2h0Ij4KKyAgICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0EzTFVnaU44RWVLd2VkN0ZFRUYtNFEiIG5hbWU9InByb3hpX2xlZnQiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX0EzTFVPU044RWVLd2VkN0ZFRUYtNFEiIGlzVW5pcXVlPSJmYWxzZSI+CisgICAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfQTNMVWd5TjhFZUt3ZWQ3RkVFRi00USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9BM0xVaENOOEVlS3dlZDdGRUVGLTRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9BM0xVaFNOOEVlS3dlZDdGRUVGLTRRIj4KKyAgICAgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9BM0xVaGlOOEVlS3dlZDdGRUVGLTRRIiBuYW1lPSJwcm94aV9yaWdodCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfQTNMVU9TTjhFZUt3ZWQ3RkVFRi00USIgaXNVbmlxdWU9ImZhbHNlIj4KKyAgICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9BM0xVaHlOOEVlS3dlZDdGRUVGLTRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0EzTFVpQ044RWVLd2VkN0ZFRUYtNFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX0EzTFVpU044RWVLd2VkN0ZFRUYtNFEiPgorICAgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgICAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiB4bWk6aWQ9Il9BM0xVanlOOEVlS3dlZDdGRUVGLTRRIiBuYW1lPSJNaWxsaV9BbXAiPgorICAgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfQTNMVWtDTjhFZUt3ZWQ3RkVFRi00USIgbmFtZT0idmFsdWUiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX25DT3VvQUgtRWVDX1pMekxRaFctVFEiIGlzVW5pcXVlPSJmYWxzZSI+CisgICAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfQTNMVWtTTjhFZUt3ZWQ3RkVFRi00USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9BM0xVa2lOOEVlS3dlZDdGRUVGLTRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9BM0xVa3lOOEVlS3dlZDdGRUVGLTRRIj4KKyAgICAgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfQTNMVWxDTjhFZUt3ZWQ3RkVFRi00USIgbmFtZT0iT2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHQiPgorICAgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfQTNMVWxTTjhFZUt3ZWQ3RkVFRi00USIgbmFtZT0ib2RvbWV0ZXJfbGluZWFyX2xlZnQiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX0EzTFVQaU44RWVLd2VkN0ZFRUYtNFEiIGlzVW5pcXVlPSJmYWxzZSI+CisgICAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfQTNMVWxpTjhFZUt3ZWQ3RkVFRi00USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9BM0xVbHlOOEVlS3dlZDdGRUVGLTRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9BM0xVbUNOOEVlS3dlZDdGRUVGLTRRIj4KKyAgICAgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6aWQ9Il9BM0xVbVNOOEVlS3dlZDdGRUVGLTRRIiBuYW1lPSJvZG9tZXRlcl9saW5lYXJfcmlnaHQiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX0EzTFVQaU44RWVLd2VkN0ZFRUYtNFEiIGlzVW5pcXVlPSJmYWxzZSI+CisgICAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfQTNMVW1pTjhFZUt3ZWQ3RkVFRi00USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9BM0xVbXlOOEVlS3dlZDdGRUVGLTRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9BM0xVbkNOOEVlS3dlZDdGRUVGLTRRIj4KKyAgICAgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfQTNMVW5TTjhFZUt3ZWQ3RkVFRi00USIgbmFtZT0iVmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0Ij4KKyAgICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0EzTFVuaU44RWVLd2VkN0ZFRUYtNFEiIG5hbWU9InZlbG9jaXR5X2FuZ3VsYXJfbGVmdCIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfQTNMVVVpTjhFZUt3ZWQ3RkVFRi00USIgaXNVbmlxdWU9ImZhbHNlIj4KKyAgICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9BM0xVbnlOOEVlS3dlZDdGRUVGLTRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0EzTFVvQ044RWVLd2VkN0ZFRUYtNFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX0EzTFVvU044RWVLd2VkN0ZFRUYtNFEiPgorICAgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgICAgPG93bmVkQXR0cmlidXRlIHhtaTppZD0iX0EzTFVvaU44RWVLd2VkN0ZFRUYtNFEiIG5hbWU9InZlbG9jaXR5X2FuZ3VsYXJfcmlnaHQiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX0EzTFVVaU44RWVLd2VkN0ZFRUYtNFEiIGlzVW5pcXVlPSJmYWxzZSI+CisgICAgICAgICAgICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfQTNMVW95TjhFZUt3ZWQ3RkVFRi00USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9BM0xVcENOOEVlS3dlZDdGRUVGLTRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9BM0xVcFNOOEVlS3dlZDdGRUVGLTRRIj4KKyAgICAgICAgICAgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICAgICAgICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgICAgICAgICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgICAgICAgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgeG1pOmlkPSJfQTNMVXBpTjhFZUt3ZWQ3RkVFRi00USIgbmFtZT0iVmVsb2NpdHkiPgorICAgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfQTNMVXFDTjhFZUt3ZWQ3RkVFRi00USIgbmFtZT0idmVsb2NpdHlfbGluZWFyIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il9BM0xUOVNOOEVlS3dlZDdGRUVGLTRRIiBpc1VuaXF1ZT0iZmFsc2UiPgorICAgICAgICAgICAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0EzTFVxU044RWVLd2VkN0ZFRUYtNFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfQTNMVXFpTjhFZUt3ZWQ3RkVFRi00USIgdmFsdWU9IjEiLz4KKyAgICAgICAgICAgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfQTNMVXF5TjhFZUt3ZWQ3RkVFRi00USI+CisgICAgICAgICAgICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgICAgICAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgICAgICAgICAgICA8L293bmVkQXR0cmlidXRlPgorICAgICAgICAgICAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOmlkPSJfQTNMVXJDTjhFZUt3ZWQ3RkVFRi00USIgbmFtZT0idmVsb2NpdHlfYW5ndWxhciIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfQTNMVVVpTjhFZUt3ZWQ3RkVFRi00USIgaXNVbmlxdWU9ImZhbHNlIj4KKyAgICAgICAgICAgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9BM0xVclNOOEVlS3dlZDdGRUVGLTRRIiB2YWx1ZT0iMSIvPgorICAgICAgICAgICAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0EzTFVyaU44RWVLd2VkN0ZFRUYtNFEiIHZhbHVlPSIxIi8+CisgICAgICAgICAgICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX0EzTFVyeU44RWVLd2VkN0ZFRUYtNFEiPgorICAgICAgICAgICAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgICAgICAgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICAgICAgICAgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgICAgICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDwvcGFja2FnZWRFbGVtZW50PgorICAgIDxwcm9maWxlQXBwbGljYXRpb24geG1pOmlkPSJfVE1SVGtEWWFFZUdVeWR3RXpjelY0dyI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTppZD0iX1RVVWNVRFlhRWVHVXlkd0V6Y3pWNHciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIHhtaTp0eXBlPSJlY29yZTpFUGFja2FnZSIgaHJlZj0icGF0aG1hcDovL1VNTF9QUk9GSUxFUy9FY29yZS5wcm9maWxlLnVtbCNfejFPRmNIanFFZHk4UzRDcjhSY19OQSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8YXBwbGllZFByb2ZpbGUgaHJlZj0icGF0aG1hcDovL1VNTF9QUk9GSUxFUy9FY29yZS5wcm9maWxlLnVtbCNfMCIvPgorICAgIDwvcHJvZmlsZUFwcGxpY2F0aW9uPgorICAgIDxwcm9maWxlQXBwbGljYXRpb24geG1pOmlkPSJfWkJRSjhEWWFFZUdVeWR3RXpjelY0dyI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTppZD0iX1pMUE1ZRFlhRWVHVXlkd0V6Y3pWNHciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIHhtaTp0eXBlPSJlY29yZTpFUGFja2FnZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzQuMC4wL1VNTC9Qcm9maWxlL0wyIy8iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGFwcGxpZWRQcm9maWxlIGhyZWY9InBhdGhtYXA6Ly9VTUxfUFJPRklMRVMvU3RhbmRhcmRMMi5wcm9maWxlLnVtbCNfMCIvPgorICAgIDwvcHJvZmlsZUFwcGxpY2F0aW9uPgorICA8L3VtbDpNb2RlbD4KKyAgPGwyOk1vZGVsTGlicmFyeSB4bWk6aWQ9Il8xYlZBVUFIc0VlQ1FRT0tyaE9fZklRIiBiYXNlX1BhY2thZ2U9Il96Umgzc0FIckVlQ1FRT0tyaE9fZklRIi8+CisgIDxsMjpNb2RlbExpYnJhcnkgeG1pOmlkPSJfNG1fZUVEWVpFZUdVeWR3RXpjelY0dyIgYmFzZV9QYWNrYWdlPSJfZHRfeTRBSHRFZUNRUU9LcmhPX2ZJUSIvPgorICA8bDI6TW9kZWxMaWJyYXJ5IHhtaTppZD0iXzVpQVUwRFlaRWVHVXlkd0V6Y3pWNHciIGJhc2VfUGFja2FnZT0iX3d5UzZnQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgPGwyOk1vZGVsTGlicmFyeSB4bWk6aWQ9Il82WXNGTURZWkVlR1V5ZHdFemN6VjR3IiBiYXNlX1BhY2thZ2U9Il9feEE2WUFIdkVlQ1FRT0tyaE9fZklRIi8+CisgIDxsMjpNb2RlbExpYnJhcnkgeG1pOmlkPSJfN09mRXdEWVpFZUdVeWR3RXpjelY0dyIgYmFzZV9QYWNrYWdlPSJfRGY0XzRBSHdFZUNRUU9LcmhPX2ZJUSIvPgorICA8bDI6TW9kZWxMaWJyYXJ5IHhtaTppZD0iXzc3TVp3RFlaRWVHVXlkd0V6Y3pWNHciIGJhc2VfUGFja2FnZT0iX0dvNV9RQUh3RWVDUVFPS3JoT19mSVEiLz4KKyAgPGwyOk1vZGVsTGlicmFyeSB4bWk6aWQ9Il84cFk4Z0RZWkVlR1V5ZHdFemN6VjR3IiBiYXNlX1BhY2thZ2U9Il9KU29ha0FId0VlQ1FRT0tyaE9fZklRIi8+CisgIDxsMjpNb2RlbExpYnJhcnkgeG1pOmlkPSJfOVR0RTBEWVpFZUdVeWR3RXpjelY0dyIgYmFzZV9QYWNrYWdlPSJfTWx5TllBSHdFZUNRUU9LcmhPX2ZJUSIvPgorICA8bDI6TW9kZWxMaWJyYXJ5IHhtaTppZD0iXy1GQjBFRFlaRWVHVXlkd0V6Y3pWNHciIGJhc2VfUGFja2FnZT0iX1FKQzJBS3hZRWVDSkQ0Nkd0RHNBQkEiLz4KKyAgPGwyOk1vZGVsTGlicmFyeSB4bWk6aWQ9Il9oMjZqRURZYUVlR1V5ZHdFemN6VjR3IiBiYXNlX1BhY2thZ2U9Il9fR0lrd0FMSUVlQ3RZTVhwcGZxTE13Ii8+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX212T3JZRlc0RWVLR2ZxRW9WMGVrRHciLz4KKzwveG1pOlhNST4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9tb2RlbC9Sb2JvdE1MUHJvZmlsZS5wcm9maWxlLmRpIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL21vZGVsL1JvYm90TUxQcm9maWxlLnByb2ZpbGUuZGkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmY5YWJhYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9tb2RlbC9Sb2JvdE1MUHJvZmlsZS5wcm9maWxlLmRpCkBAIC0wLDAgKzEsMiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzx4bWk6WE1JIHhtaTp2ZXJzaW9uPSIyLjAiIHhtbG5zOnhtaT0iaHR0cDovL3d3dy5vbWcub3JnL1hNSSIvPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL21vZGVsL1JvYm90TUxQcm9maWxlLnByb2ZpbGUubm90YXRpb24gYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvbW9kZWwvUm9ib3RNTFByb2ZpbGUucHJvZmlsZS5ub3RhdGlvbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NGFlZDg3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL21vZGVsL1JvYm90TUxQcm9maWxlLnByb2ZpbGUubm90YXRpb24KQEAgLTAsMCArMSw0ODIzIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHhtaTpYTUkgeG1pOnZlcnNpb249IjIuMCIgeG1sbnM6eG1pPSJodHRwOi8vd3d3Lm9tZy5vcmcvWE1JIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczpjc3M9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvcGFweXJ1cy9pbmZyYS9nbWZkaWFnL2NzcyIgeG1sbnM6ZWNvcmU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUiIHhtbG5zOm5vdGF0aW9uPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2dtZi9ydW50aW1lLzEuMC4yL25vdGF0aW9uIiB4bWxuczpzdGFuZGFyZD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTC9Qcm9maWxlL1N0YW5kYXJkIiB4bWxuczp1bWw9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwiPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il8zUS1WQVBjRUVkLUowNlU1SE1fby1RIiB0eXBlPSJQYXB5cnVzVU1MUHJvZmlsZURpYWdyYW0iIG5hbWU9IlJvYm90aWNTeXN0ZW0iIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0VlcDZjUGNKRWQtSjA2VTVITV9vLVEiIHR5cGU9IjEwMjYiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0I3RFZvRTNSRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0I3RDhzRTNSRWVPTm9kRTkzV0pvVnciIGtleT0idmlzaWJsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfRWV6cmR2Y0pFZC1KMDZVNUhNX28tUSIgdHlwZT0iMTAzNCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9FZXpyZF9jSkVkLUowNlU1SE1fby1RIiB0eXBlPSIxMDcxIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9FZXpyZVBjSkVkLUowNlU1SE1fby1RIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9FZXpyZWZjSkVkLUowNlU1SE1fby1RIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0VlenJldmNKRWQtSjA2VTVITV9vLVEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0VlenJlX2NKRWQtSjA2VTVITV9vLVEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9FZXpyZlBjSkVkLUowNlU1SE1fby1RIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9FZXpyZmZjSkVkLUowNlU1SE1fby1RIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0VlenJmdmNKRWQtSjA2VTVITV9vLVEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZpN2RBRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0I3RDhzVTNSRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQjdEOHNrM1JFZU9Ob2RFOTNXSm9WdyIga2V5PSJ2aXNpYmxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZmk3ZEFVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9maTdkQWtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfRWRuWW9QY0pFZC1KMDZVNUhNX28tUSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfRWVwNmNmY0pFZC1KMDZVNUhNX28tUSIgeD0iNzEiIHk9IjIyMiIgd2lkdGg9IjE3NiIgaGVpZ2h0PSIxNDYiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0dvcEZ3ZmNKRWQtSjA2VTVITV9vLVEiIHR5cGU9IjEwMjYiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfR29wRnlmY0pFZC1KMDZVNUhNX28tUSIgdHlwZT0iMTAzNCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9Hb3BGeXZjSkVkLUowNlU1SE1fby1RIiB0eXBlPSIxMDcxIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfbmt5MmtCZWdFZUs3bWJGMmMtd1pQQSIgdHlwZT0iMzAwMiI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3BaRHFNRWUwRWVPLTdMYXZNdy1HWnciIHNvdXJjZT0iQ3VzdG9tQXBwZWFyYW5jZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcWU0cDBFZTBFZU8tN0xhdk13LUdadyIga2V5PSJDdXN0b21BcHBlYXJhbmNlX01hc2tWYWx1ZSIgdmFsdWU9IjYwIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Qm9vbGVhblZhbHVlU3R5bGUiIHhtaTppZD0iX3NUaDNRRWUwRWVPLTdMYXZNdy1HWnciIG5hbWU9InNoYXBlX3Zpc2liaWxpdHkiLz4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfbmZiMWNCZWdFZUs3bWJGMmMtd1pQQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfbmt5MmtSZWdFZUs3bWJGMmMtd1pQQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il83MEtTNEJlZ0VlSzdtYkYyYy13WlBBIiB0eXBlPSIzMDAyIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfN3ktQUVCZWdFZUs3bWJGMmMtd1pQQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfNzBLUzRSZWdFZUs3bWJGMmMtd1pQQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il81U2ZxMENNNkVlS3dlZDdGRUVGLTRRIiB0eXBlPSIzMDAyIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfNVNXZzRDTTZFZUt3ZWQ3RkVFRi00USIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfNVNmcTBTTTZFZUt3ZWQ3RkVFRi00USIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9OVEdGd0FDQUVlVy1Rc2poRlBDX2dnIiB0eXBlPSIzMDAyIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfTlFLR2dBQ0FFZVctUXNqaEZQQ19nZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTlRHRndRQ0FFZVctUXNqaEZQQ19nZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0dvcEZ5X2NKRWQtSjA2VTVITV9vLVEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0dvcEZ6UGNKRWQtSjA2VTVITV9vLVEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR29wRnpmY0pFZC1KMDZVNUhNX28tUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfR29wRnp2Y0pFZC1KMDZVNUhNX28tUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0dvcEZ6X2NKRWQtSjA2VTVITV9vLVEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0dvcEYwUGNKRWQtSjA2VTVITV9vLVEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfR29wRjBmY0pFZC1KMDZVNUhNX28tUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZmk5NVFFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9maTk1UVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZpOTVRa2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19Hb3BGd1BjSkVkLUowNlU1SE1fby1RIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9Hb3BGd3ZjSkVkLUowNlU1SE1fby1RIiB4PSIzMzgiIHk9IjEwMSIgd2lkdGg9IjIxNiIgaGVpZ2h0PSI4NSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfN2NMSklQY1BFZC1KMDZVNUhNX28tUSIgdHlwZT0iMTAzMSI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfN2NMSkt2Y1BFZC1KMDZVNUhNX28tUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29ZNzRzQWZiRWVLblNOWkRYWV9ZVGciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29ZNzRzUWZiRWVLblNOWkRYWV9ZVGciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vWTc0c2dmYkVlS25TTlpEWFlfWVRnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb1k3NHN3ZmJFZUtuU05aRFhZX1lUZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29ZNzR0QWZiRWVLblNOWkRYWV9ZVGciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQjdReEFFM1JFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQjdSWUVFM1JFZU9Ob2RFOTNXSm9WdyIga2V5PSJ2aXNpYmxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il83Y0xKS1BjUEVkLUowNlU1SE1fby1RIiB0eXBlPSIxMDg0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZqQVZnRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJBcHBsaWVkU3RlcmVvdHlwZUNvbXBhcnRlbWVudCI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZqQVZnVWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InN0YW5kYXJkOk1ldGFjbGFzcyIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL1VNTC5tZXRhbW9kZWwudW1sI19TaDZIOEt0S0VlR0Y0dXdKb2IzNE13Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZqQVZna2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZqQThrRWJNRWVPODliZFBwQjhnVGciIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQjdSWUVVM1JFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9CN1JZRWszUkVlT05vZEU5M1dKb1Z3IiBrZXk9InZpc2libGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9makE4a1ViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZqQThra2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvVU1MLm1ldGFtb2RlbC51bWwjQ2xhc3MiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzdjTEpLZmNQRWQtSjA2VTVITV9vLVEiIHg9IjM2NSIgeT0iNSIgd2lkdGg9IjE2MCIgaGVpZ2h0PSI2MiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfSGxmamdGN2JFZUNHaExUakVEa3hmZyIgdHlwZT0iMTAyNiI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQjdFandFM1JFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQjdGSzBFM1JFZU9Ob2RFOTNXSm9WdyIga2V5PSJ2aXNpYmxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9IbGZqaUY3YkVlQ0doTFRqRURreGZnIiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0hsZmppVjdiRWVDR2hMVGpFRGt4ZmciIHR5cGU9IjEwNzEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0hsZmppbDdiRWVDR2hMVGpFRGt4ZmciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0hsZmppMTdiRWVDR2hMVGpFRGt4ZmciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfSGxmampGN2JFZUNHaExUakVEa3hmZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfSGxmampWN2JFZUNHaExUakVEa3hmZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0hsZmpqbDdiRWVDR2hMVGpFRGt4ZmciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0hsZmpqMTdiRWVDR2hMVGpFRGt4ZmciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfSGxmamtGN2JFZUNHaExUakVEa3hmZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZmpDeHdFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQjdGSzBVM1JFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9CN0ZLMGszUkVlT05vZEU5M1dKb1Z3IiBrZXk9InZpc2libGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9makN4d1ViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZqQ3h3a2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19IbFZ5Z0Y3YkVlQ0doTFRqRURreGZnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9IbGZqZ1Y3YkVlQ0doTFRqRURreGZnIiB4PSIyNzAiIHk9IjM4NSIgaGVpZ2h0PSI0NCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfS1QxWkVGN2JFZUNHaExUakVEa3hmZyIgdHlwZT0iMTAyNiI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQjdGeDRFM1JFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQjdHWThFM1JFZU9Ob2RFOTNXSm9WdyIga2V5PSJ2aXNpYmxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9LVDFaR0Y3YkVlQ0doTFRqRURreGZnIiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0tUMVpHVjdiRWVDR2hMVGpFRGt4ZmciIHR5cGU9IjEwNzEiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9xRW90a0VOdkVlR01aT1NKSWZhMGdnIiB0eXBlPSIzMDAyIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfcUNaNDhFTnZFZUdNWk9TSklmYTBnZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfcUVvdGtVTnZFZUdNWk9TSklmYTBnZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il84WE5VVUUybkVlRzNxWm9kM2FUcFVBIiB0eXBlPSIzMDAyIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfOFhEalVFMm5FZUczcVpvZDNhVHBVQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfOFhOVVVVMm5FZUczcVpvZDNhVHBVQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0tUMVpHbDdiRWVDR2hMVGpFRGt4ZmciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0tUMVpHMTdiRWVDR2hMVGpFRGt4ZmciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfS1QxWkhGN2JFZUNHaExUakVEa3hmZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfS1QxWkhWN2JFZUNHaExUakVEa3hmZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0tUMVpIbDdiRWVDR2hMVGpFRGt4ZmciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0tUMVpIMTdiRWVDR2hMVGpFRGt4ZmciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfS1QxWklGN2JFZUNHaExUakVEa3hmZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZmpFbThFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQjdHWThVM1JFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9CN0dZOGszUkVlT05vZEU5M1dKb1Z3IiBrZXk9InZpc2libGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9makVtOFViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZqRW04a2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19LVHNQSUY3YkVlQ0doTFRqRURreGZnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9LVDFaRVY3YkVlQ0doTFRqRURreGZnIiB4PSI0NDUiIHk9IjM1MCIgd2lkdGg9IjE4NiIgaGVpZ2h0PSI3NiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfb3JDVXNWOWlFZUNYbklRc2x4dnYzQSIgdHlwZT0iMTAyNiI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQjdBNVlFM1JFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQjdBNVlVM1JFZU9Ob2RFOTNXSm9WdyIga2V5PSJ2aXNpYmxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9vckNVdVY5aUVlQ1huSVFzbHh2djNBIiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX29yQ1V1bDlpRWVDWG5JUXNseHZ2M0EiIHR5cGU9IjEwNzEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX29yQ1V1MTlpRWVDWG5JUXNseHZ2M0EiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX29yQ1V2RjlpRWVDWG5JUXNseHZ2M0EiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfb3JDVXZWOWlFZUNYbklRc2x4dnYzQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfb3JDVXZsOWlFZUNYbklRc2x4dnYzQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX29yQ1V2MTlpRWVDWG5JUXNseHZ2M0EiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX29yQ1V3RjlpRWVDWG5JUXNseHZ2M0EiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfb3JDVXdWOWlFZUNYbklRc2x4dnYzQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZmpIRE1FYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQjdCZ2NFM1JFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9CN0JnY1UzUkVlT05vZEU5M1dKb1Z3IiBrZXk9InZpc2libGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9makhETVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZqSERNa2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19vckNVc0Y5aUVlQ1huSVFzbHh2djNBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9vckNVc2w5aUVlQ1huSVFzbHh2djNBIiB4PSI1OTUiIHk9IjI2MCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MyIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfeERmTllGOWlFZUNYbklRc2x4dnYzQSIgdHlwZT0iMTAyNiI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQjY2THNFM1JFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQjY5UEFFM1JFZU9Ob2RFOTNXSm9WdyIga2V5PSJ2aXNpYmxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il94RGZOYUY5aUVlQ1huSVFzbHh2djNBIiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3hEZk5hVjlpRWVDWG5JUXNseHZ2M0EiIHR5cGU9IjEwNzEiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9GOEJZUUVOOUVlR01aT1NKSWZhMGdnIiB0eXBlPSIzMDAyIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfRjdSeFlFTjlFZUdNWk9TSklmYTBnZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfRjhCWVFVTjlFZUdNWk9TSklmYTBnZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9PN05nMEVOOUVlR01aT1NKSWZhMGdnIiB0eXBlPSIzMDAyIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfTzZVSThFTjlFZUdNWk9TSklmYTBnZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTzdOZzBVTjlFZUdNWk9TSklmYTBnZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9VS296RUVOOUVlR01aT1NKSWZhMGdnIiB0eXBlPSIzMDAyIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfVUo1TU1FTjlFZUdNWk9TSklmYTBnZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVUt5a0VFTjlFZUdNWk9TSklmYTBnZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9naEpjd0VOOUVlR01aT1NKSWZhMGdnIiB0eXBlPSIzMDAyIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfZ2dRRTRFTjlFZUdNWk9TSklmYTBnZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZ2hKY3dVTjlFZUdNWk9TSklmYTBnZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9WSTh1RUVPQUVlR01aT1NKSWZhMGdnIiB0eXBlPSIzMDAyIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfVklOSE1FT0FFZUdNWk9TSklmYTBnZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVkk4dUVVT0FFZUdNWk9TSklmYTBnZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3hEZk5hbDlpRWVDWG5JUXNseHZ2M0EiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX3hEZk5hMTlpRWVDWG5JUXNseHZ2M0EiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfeERmTmJGOWlFZUNYbklRc2x4dnYzQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfeERmTmJWOWlFZUNYbklRc2x4dnYzQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3hEZk5ibDlpRWVDWG5JUXNseHZ2M0EiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX3hEZk5iMTlpRWVDWG5JUXNseHZ2M0EiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfeERmTmNGOWlFZUNYbklRc2x4dnYzQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZmpJUlVFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQjZfRU1FM1JFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9CNl9yUUUzUkVlT05vZEU5M1dKb1Z3IiBrZXk9InZpc2libGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9maklSVVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZqSTRZRWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI194RFZjWUY5aUVlQ1huSVFzbHh2djNBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il94RGZOWVY5aUVlQ1huSVFzbHh2djNBIiB4PSI3NjAiIHk9IjIwNSIgd2lkdGg9IjE3NiIgaGVpZ2h0PSIxMjYiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3kzak9FUC1xRWVDUEs0WW5NUmg2QXciIHR5cGU9IjEwMjYiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0s1bWxBRTNSRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0s1bk1FRTNSRWVPTm9kRTkzV0pvVnciIGtleT0idmlzaWJsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfeTNqT0dQLXFFZUNQSzRZbk1SaDZBdyIgdHlwZT0iMTAzNCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il95M2pPR2YtcUVlQ1BLNFluTVJoNkF3IiB0eXBlPSIxMDcxIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0s1bk1FVTNSRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSzVuTUVrM1JFZU9Ob2RFOTNXSm9WdyIga2V5PSJ2aXNpYmxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfS0lkcWtCdGNFZUdaQnFRTEsydFBSQSIgdHlwZT0iMzAwMiI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX0tJS3ZvQnRjRWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0tJZHFrUnRjRWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfTy1RVTBCdGNFZUdaQnFRTEsydFBSQSIgdHlwZT0iMzAwMiI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX085OVo0QnRjRWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX08tUVUwUnRjRWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfVFV3YkFCdGNFZUdaQnFRTEsydFBSQSIgdHlwZT0iMzAwMiI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX1RVQTBJQnRjRWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1RVd2JBUnRjRWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfUTNibmdCdGRFZUdaQnFRTEsydFBSQSIgdHlwZT0iMzAwMiI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX1EzSXNrQnRkRWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1EzYm5nUnRkRWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfVUFUYzhCdGRFZUdaQnFRTEsydFBSQSIgdHlwZT0iMzAwMiI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX1VBQWlBQnRkRWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1VBVGM4UnRkRWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZS1Lb0VFTnlFZUdNWk9TSklmYTBnZyIgdHlwZT0iMzAwMiI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX2UtQmVJRU55RWVHTVpPU0pJZmEwZ2ciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2UtS29FVU55RWVHTVpPU0pJZmEwZ2ciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfeTNqT0d2LXFFZUNQSzRZbk1SaDZBdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3kzak9HXy1xRWVDUEs0WW5NUmg2QXciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX3kzak9IUC1xRWVDUEs0WW5NUmg2QXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfeTNqT0hmLXFFZUNQSzRZbk1SaDZBdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfeTNqT0h2LXFFZUNQSzRZbk1SaDZBdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il95M2pPSF8tcUVlQ1BLNFluTVJoNkF3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfeTNqT0lQLXFFZUNQSzRZbk1SaDZBdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfeTNqT0lmLXFFZUNQSzRZbk1SaDZBdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il95M2pPSXYtcUVlQ1BLNFluTVJoNkF3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9makt0a0ViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZqS3RrVWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZmpLdGtrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3kzUVRJUC1xRWVDUEs0WW5NUmg2QXciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3kzak9FZi1xRWVDUEs0WW5NUmg2QXciIHg9IjI0MCIgeT0iNjU1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il96MVpXWVAtcUVlQ1BLNFluTVJoNkF3IiB0eXBlPSIxMDI2Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9CN1BpNEUzUkVlT05vZEU5M1dKb1Z3IiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9CN1FKOEUzUkVlT05vZEU5M1dKb1Z3IiBrZXk9InZpc2libGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3oxWldhUC1xRWVDUEs0WW5NUmg2QXciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfejFaV2FmLXFFZUNQSzRZbk1SaDZBdyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3FmdkE4QUNPRWVHWEpPSnRXS244alEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19xYnRja0FDT0VlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9xZnZBOFFDT0VlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzRnSjgwQUNRRWVHWEpPSnRXS244alEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI180ZDdJTUFDUUVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il80Z0o4MFFDUUVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXy1rZTJ3QUNRRWVHWEpPSnRXS244alEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI18tZ3cwWUFDUUVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8ta2Uyd1FDUUVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0VDaE13QUNSRWVHWEpPSnRXS244alEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19ELUM4Y0FDUkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9FQ2hNd1FDUkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0hkSHJZQUNSRWVHWEpPSnRXS244alEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19IYWJqd0FDUkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9IZEhyWVFDUkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX01tNGFnQUNSRWVHWEpPSnRXS244alEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19NakFuSUFDUkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9NbTRhZ1FDUkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1FyVzhrQUNSRWVHWEpPSnRXS244alEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19RbkNkUUFDUkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9Rclc4a1FDUkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1RPLUkwQUNSRWVHWEpPSnRXS244alEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19UTF90VUFDUkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9UTy1JMFFDUkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2phQTBFQUNSRWVHWEpPSnRXS244alEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19qV2I3b0FDUkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9qYUEwRVFDUkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX290ZHFzQUNSRWVHWEpPSnRXS244alEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19vcW9aSUFDUkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9vdGRxc1FDUkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2Z3TkNnQUNXRWVHWEpPSnRXS244alEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19mc1VvRUFDV0VlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9md05DZ1FDV0VlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2pYd19FQUNXRWVHWEpPSnRXS244alEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19qVDVMc0FDV0VlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9qWHdfRVFDV0VlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX25BOTZZQUNXRWVHWEpPSnRXS244alEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19tOUdIQUFDV0VlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9uQTk2WVFDV0VlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3JaYWhVQUNXRWVHWEpPSnRXS244alEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19yVnIzNEFDV0VlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9yWmFoVVFDV0VlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1BQQWNzQnRURWVHWkJxUUxLMnRQUkEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19QT1pfd0J0VEVlR1pCcVFMSzJ0UFJBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9QUEFjc1J0VEVlR1pCcVFMSzJ0UFJBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1Z5NjFvQnRURWVHWkJxUUxLMnRQUkEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19WeW42c0J0VEVlR1pCcVFMSzJ0UFJBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9WeTYxb1J0VEVlR1pCcVFMSzJ0UFJBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3oxWldhdi1xRWVDUEs0WW5NUmg2QXciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il96MVpXYV8tcUVlQ1BLNFluTVJoNkF3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il96MVpXYlAtcUVlQ1BLNFluTVJoNkF3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3oxWldiZi1xRWVDUEs0WW5NUmg2QXciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3oxWldidi1xRWVDUEs0WW5NUmg2QXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfejFaV2JfLXFFZUNQSzRZbk1SaDZBdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3oxWldjUC1xRWVDUEs0WW5NUmg2QXciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX3oxWldjZi1xRWVDUEs0WW5NUmg2QXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfejFaV2N2LXFFZUNQSzRZbk1SaDZBdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZmpOdzRFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQjdRSjhVM1JFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9CN1FKOGszUkVlT05vZEU5M1dKb1Z3IiBrZXk9InZpc2libGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mak53NFViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZqTnc0a2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI196MVBsWVAtcUVlQ1BLNFluTVJoNkF3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il96MVpXWWYtcUVlQ1BLNFluTVJoNkF3IiB4PSIxMCIgeT0iNTI1IiBoZWlnaHQ9IjMzNiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfWmhpdVlBQjJFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMTAyNiI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQjdPVXdFM1JFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQjdPNzBFM1JFZU9Ob2RFOTNXSm9WdyIga2V5PSJ2aXNpYmxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9aaGl1YUFCMkVlR1hKT0p0V0tuOGpRIiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1poaXVhUUIyRWVHWEpPSnRXS244alEiIHR5cGU9IjEwNzEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSzVvYU1FM1JFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LNXBCUUUzUkVlT05vZEU5M1dKb1Z3IiBrZXk9InZpc2libGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9aaGl1YWdCMkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfWmhpdWF3QjJFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfWmhpdWJBQjJFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9aaGl1YlFCMkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9aaGl1YmdCMkVlR1hKT0p0V0tuOGpRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1poaXVid0IyRWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9aaGl1Y0FCMkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9aaGl1Y1FCMkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1poaXVjZ0IyRWVHWEpPSnRXS244alEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZqU3BZRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0I3TzcwVTNSRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQjdPNzBrM1JFZU9Ob2RFOTNXSm9WdyIga2V5PSJ2aXNpYmxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZmpTcFlVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9malNwWWtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfWmVRdzRBQjJFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfWmhpdVlRQjJFZUdYSk9KdFdLbjhqUSIgeD0iMzYwIiB5PSI1MDAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2ZoXzA4QUIyRWVHWEpPSnRXS244alEiIHR5cGU9IjEwMjYiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0s1bFc0RTNSRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0s1bFc0VTNSRWVPTm9kRTkzV0pvVnciIGtleT0idmlzaWJsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZmhfMC1BQjJFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMTAzNCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9maF8wLVFCMkVlR1hKT0p0V0tuOGpRIiB0eXBlPSIxMDcxIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0s1bDk4RTNSRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSzVsOThVM1JFZU9Ob2RFOTNXSm9WdyIga2V5PSJ2aXNpYmxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfc0gwYkVBQjRFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMzAwMiI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3NEcHN3QUI0RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3NIMGJFUUI0RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfeFEyS1lBQjRFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMzAwMiI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3hPQTQwQUI0RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3hRMktZUUI0RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfNEdNUmtBQjRFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMzAwMiI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzRDeEtJQUI0RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzRHTVJrUUI0RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfOWQ5bmdBQjRFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMzAwMiI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzlaTWNRQUI0RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzlkOW5nUUI0RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfQ0pNQWdBQjVFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMzAwMiI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX0NHV3U4QUI1RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0NKTUFnUUI1RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfRkprQlFBQjVFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMzAwMiI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX0ZHSVN3QUI1RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0ZKa0JRUUI1RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfTWFlcUlBQjVFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMzAwMiI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX01XZEZ3QUI1RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX01hZXFJUUI1RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfNWtRLUlId01FZUtYaGJ3TjNXWE82QSIgdHlwZT0iMzAwMiI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzVpeHdZSHdNRWVLWGhid04zV1hPNkEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzVrUS1JWHdNRWVLWGhid04zV1hPNkEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfMEMxZ2NId05FZUtYaGJ3TjNXWE82QSIgdHlwZT0iMzAwMiI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzBCV1NzSHdORWVLWGhid04zV1hPNkEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzBDMWdjWHdORWVLWGhid04zV1hPNkEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZmhfMC1nQjJFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2ZoXzAtd0IyRWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2ZoXzBfQUIyRWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZmhfMF9RQjJFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZmhfMF9nQjJFZUdYSk9KdFdLbjhqUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9maF8wX3dCMkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfZmhfMUFBQjJFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfZmhfMUFRQjJFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9maF8xQWdCMkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9malVla0ViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZqVWVrVWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZmpVZWtrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX2ZlYThnQUIyRWVHWEpPSnRXS244alEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZoXzA4UUIyRWVHWEpPSnRXS244alEiIHg9IjQ0MCIgeT0iNzkwIiBoZWlnaHQ9IjE4NiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZy1zOElBQjVFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMTAyNiI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQjdOR29FM1JFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQjdOdHNFM1JFZU9Ob2RFOTNXSm9WdyIga2V5PSJ2aXNpYmxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9nLXM4S0FCNUVlR1hKT0p0V0tuOGpRIiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ctczhLUUI1RWVHWEpPSnRXS244alEiIHR5cGU9IjEwNzEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9nLXM4S2dCNUVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfZy1zOEt3QjVFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfZy1zOExBQjVFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9nLXM4TFFCNUVlR1hKT0p0V0tuOGpRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9nLXM4TGdCNUVlR1hKT0p0V0tuOGpRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ctczhMd0I1RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9nLXM4TUFCNUVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9nLXM4TVFCNUVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ctczhNZ0I1RWVHWEpPSnRXS244alEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZqWUk4RWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0I3TnRzVTNSRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQjdOdHNrM1JFZU9Ob2RFOTNXSm9WdyIga2V5PSJ2aXNpYmxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZmpZSThVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mallJOGtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfZzdibHNBQjVFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZy1zOElRQjVFZUdYSk9KdFdLbjhqUSIgeD0iNDkwIiB5PSI1MDAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0tPQTlJQUI2RWVHWEpPSnRXS244alEiIHR5cGU9IjEwMjYiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0I3TDRnRTNSRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0I3TDRnVTNSRWVPTm9kRTkzV0pvVnciIGtleT0idmlzaWJsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfS09BOUtBQjZFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMTAzNCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9LT0E5S1FCNkVlR1hKT0p0V0tuOGpRIiB0eXBlPSIxMDcxIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfS09BOUtnQjZFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0tPQTlLd0I2RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0tPQTlMQUI2RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfS09BOUxRQjZFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfS09BOUxnQjZFZUdYSk9KdFdLbjhqUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9LT0E5THdCNkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfS09BOU1BQjZFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfS09BOU1RQjZFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9LT0E5TWdCNkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9malpYRUViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9CN01ma0UzUkVlT05vZEU5M1dKb1Z3IiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0I3TWZrVTNSRWVPTm9kRTkzV0pvVnciIGtleT0idmlzaWJsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZqWlhFVWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZmpaWEVrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX0tKX1l3QUI2RWVHWEpPSnRXS244alEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0tPQTlJUUI2RWVHWEpPSnRXS244alEiIHg9IjY5MCIgeT0iNTAwIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9TVEZtMEFCNkVlR1hKT0p0V0tuOGpRIiB0eXBlPSIxMDI2Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9LNWlUa0UzUkVlT05vZEU5M1dKb1Z3IiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LNWlUa1UzUkVlT05vZEU5M1dKb1Z3IiBrZXk9InZpc2libGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1NURm0yQUI2RWVHWEpPSnRXS244alEiIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfU1RGbTJRQjZFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9LNWk2b0UzUkVlT05vZEU5M1dKb1Z3IiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0s1aTZvVTNSRWVPTm9kRTkzV0pvVnciIGtleT0idmlzaWJsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX09naTZrQUNBRWVHWEpPSnRXS244alEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19PZFE5RUFDQUVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9PZ2k2a1FDQUVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0RwS0UwQUNCRWVHWEpPSnRXS244alEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19Ea1B2b0FDQkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9EcEtFMFFDQkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0lFbEhRQUNCRWVHWEpPSnRXS244alEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19JQWFZOEFDQkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9JRWxIUVFDQkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX01xNGtBQUNCRWVHWEpPSnRXS244alEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19NblRya0FDQkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9NcTRrQVFDQkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1EyRGo4QUNCRWVHWEpPSnRXS244alEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19ReFNZc0FDQkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9RMkRqOFFDQkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3N1VW9jRU4yRWVHTVpPU0pJZmEwZ2ciIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19zdUJHY0VOMkVlR01aT1NKSWZhMGdnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9zdVVvY1VOMkVlR01aT1NKSWZhMGdnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1d4eURNRU4zRWVHTVpPU0pJZmEwZ2ciIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19XeENjVUVOM0VlR01aT1NKSWZhMGdnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9XeHlETVVOM0VlR01aT1NKSWZhMGdnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3J4M1lnRU44RWVHTVpPU0pJZmEwZ2ciIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19ydy1Bb0VOOEVlR01aT1NKSWZhMGdnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9yeDNZZ1VOOEVlR01aT1NKSWZhMGdnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3ZVOXIwRU44RWVHTVpPU0pJZmEwZ2ciIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI192VU9FOEVOOEVlR01aT1NKSWZhMGdnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il92VTlyMFVOOEVlR01aT1NKSWZhMGdnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3lfTkk4RU44RWVHTVpPU0pJZmEwZ2ciIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI195LWRpRUVOOEVlR01aT1NKSWZhMGdnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il95X05JOFVOOEVlR01aT1NKSWZhMGdnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzFFdUQ4RU44RWVHTVpPU0pJZmEwZ2ciIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI18xRC1kRUVOOEVlR01aT1NKSWZhMGdnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8xRXVEOFVOOEVlR01aT1NKSWZhMGdnIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1k2Zm93Q002RWVLd2VkN0ZFRUYtNFEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19ZMEZld0NNNkVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9ZNmZvd1NNNkVlS3dlZDdGRUVGLTRRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1NURm0yZ0I2RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9TVEZtMndCNkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9TVEZtM0FCNkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1NURm0zUUI2RWVHWEpPSnRXS244alEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1NURm0zZ0I2RWVHWEpPSnRXS244alEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfU1RGbTN3QjZFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX1NURm00QUI2RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX1NURm00UUI2RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfU1RGbTRnQjZFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZmpiTVFFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mamJNUVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZqYk1Ra2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19TTzY0Z0FCNkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9TVEZtMFFCNkVlR1hKT0p0V0tuOGpRIiB4PSI2ODUiIHk9IjY4NSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfMkVKNjBBQ1lFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMTAyNiI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQjdLcVlFM1JFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQjdLcVlVM1JFZU9Ob2RFOTNXSm9WdyIga2V5PSJ2aXNpYmxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8yRVRyMWdDWUVlR1hKT0p0V0tuOGpRIiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzJFVHIxd0NZRWVHWEpPSnRXS244alEiIHR5cGU9IjEwNzEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il8yRVRyMkFDWUVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfMkVUcjJRQ1lFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfMkVUcjJnQ1lFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8yRVRyMndDWUVlR1hKT0p0V0tuOGpRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il8yRVRyM0FDWUVlR1hKT0p0V0tuOGpRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzJFVHIzUUNZRWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il8yRVRyM2dDWUVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il8yRVRyM3dDWUVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzJFVHI0QUNZRWVHWEpPSnRXS244alEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZqZTJvRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0I3TFJjRTNSRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQjdMUmNVM1JFZU9Ob2RFOTNXSm9WdyIga2V5PSJ2aXNpYmxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZmplMm9VYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mamUyb2tiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfMkFJV2NBQ1lFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMkVKNjBRQ1lFZUdYSk9KdFdLbjhqUSIgeD0iODUwIiB5PSI1MDAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzZBU1pNQUNZRWVHWEpPSnRXS244alEiIHR5cGU9IjEwMjYiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0s1aEZjRTNSRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0s1aEZjVTNSRWVPTm9kRTkzV0pvVnciIGtleT0idmlzaWJsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfNkFTWk9BQ1lFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMTAzNCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il82QVNaT1FDWUVlR1hKT0p0V0tuOGpRIiB0eXBlPSIxMDcxIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0s1aEZjazNSRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSzVoc2dFM1JFZU9Ob2RFOTNXSm9WdyIga2V5PSJ2aXNpYmxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfT201UTBBQ1pFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMzAwMiI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX09qblRVQUNaRWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX09tNVEwUUNaRWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfNkFTWk9nQ1lFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iXzZBU1pPd0NZRWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iXzZBU1pQQUNZRWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfNkFTWlBRQ1lFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfNkFTWlBnQ1lFZUdYSk9KdFdLbjhqUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il82QVNaUHdDWUVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfNkFTWlFBQ1lFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfNkFTWlFRQ1lFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il82QVNaUWdDWUVlR1hKT0p0V0tuOGpRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mamdFd0ViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZqZ0V3VWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZmpnRXdrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzU4SEQwQUNZRWVHWEpPSnRXS244alEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzZBU1pNUUNZRWVHWEpPSnRXS244alEiIHg9IjkwMCIgeT0iNjU1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9ZLXhqUUFDY0VlR1hKT0p0V0tuOGpRIiB0eXBlPSIxMDI2Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9CN0NIZ0UzUkVlT05vZEU5M1dKb1Z3IiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9CN0N1a0UzUkVlT05vZEU5M1dKb1Z3IiBrZXk9InZpc2libGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1ktNnROZ0NjRWVHWEpPSnRXS244alEiIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfWS02dE53Q2NFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0E5MnJRQnRURWVHWkJxUUxLMnRQUkEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19BOWp3VUJ0VEVlR1pCcVFMSzJ0UFJBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9BOTJyUVJ0VEVlR1pCcVFMSzJ0UFJBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0RKeHdRQnRURWVHWkJxUUxLMnRQUkEiIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19ESmUxVUJ0VEVlR1pCcVFMSzJ0UFJBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9ESnh3UVJ0VEVlR1pCcVFMSzJ0UFJBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1ktNnRPQUNjRWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9ZLTZ0T1FDY0VlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9ZLTZ0T2dDY0VlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1ktNnRPd0NjRWVHWEpPSnRXS244alEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1ktNnRQQUNjRWVHWEpPSnRXS244alEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfWS02dFBRQ2NFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX1ktNnRQZ0NjRWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX1ktNnRQd0NjRWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfWS02dFFBQ2NFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZmppaEFFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQjdDdWtVM1JFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9CN0N1a2szUkVlT05vZEU5M1dKb1Z3IiBrZXk9InZpc2libGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mamloQVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZqaWhBa2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19ZNUhBSUFDY0VlR1hKT0p0V0tuOGpRIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9ZLXhqUVFDY0VlR1hKT0p0V0tuOGpRIiB4PSIzNTUiIHk9IjIzMCIgaGVpZ2h0PSI4NiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfcWVVcGdCdGFFZUdaQnFRTEsydFBSQSIgdHlwZT0iMjAwNiI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9xZVVwaUJ0YUVlR1pCcVFMSzJ0UFJBIiB0eXBlPSI1MDIzIi8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3FlVXBpUnRhRWVHWkJxUUxLMnRQUkEiIHR5cGU9IjEwNjMiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9yM2J4Z0J0YUVlR1pCcVFMSzJ0UFJBIiB0eXBlPSIxMDM3Ij4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3IzU0FnQnRhRWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3IzYnhnUnRhRWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfd3ZBa2NCdGFFZUdaQnFRTEsydFBSQSIgdHlwZT0iMTAzNyI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI193dWtma0J0YUVlR1pCcVFMSzJ0UFJBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il93dkFrY1J0YUVlR1pCcVFMSzJ0UFJBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3FlVXBpaHRhRWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9xZVVwaXh0YUVlR1pCcVFMSzJ0UFJBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9xZVVwakJ0YUVlR1pCcVFMSzJ0UFJBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3FlVXBqUnRhRWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2Zqa1dNRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZmprV01VYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mamtXTWtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3FlQnVrQnRhRWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3FlVXBnUnRhRWVHWkJxUUxLMnRQUkEiIHg9IjY2NSIgeT0iNjUiIGhlaWdodD0iODIiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2FXNHlrRU9BRWVHTVpPU0pJZmEwZ2ciIHR5cGU9IjEwMjYiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0I3SEFBRTNSRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0I3SG5FRTNSRWVPTm9kRTkzV0pvVnciIGtleT0idmlzaWJsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYVc0eW1FT0FFZUdNWk9TSklmYTBnZyIgdHlwZT0iMTAzNCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9hVzR5bVVPQUVlR01aT1NKSWZhMGdnIiB0eXBlPSIxMDcxIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfYVc0eW1rT0FFZUdNWk9TSklmYTBnZyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2FXNHltME9BRWVHTVpPU0pJZmEwZ2ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2FXNHluRU9BRWVHTVpPU0pJZmEwZ2ciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfYVc0eW5VT0FFZUdNWk9TSklmYTBnZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfYVc0eW5rT0FFZUdNWk9TSklmYTBnZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9hVzR5bjBPQUVlR01aT1NKSWZhMGdnIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfYVc0eW9FT0FFZUdNWk9TSklmYTBnZyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfYVc0eW9VT0FFZUdNWk9TSklmYTBnZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9hVzR5b2tPQUVlR01aT1NKSWZhMGdnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9manFjMEViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9CN0huRVUzUkVlT05vZEU5M1dKb1Z3IiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0I3SG5FazNSRWVPTm9kRTkzV0pvVnciIGtleT0idmlzaWJsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZqcWMwVWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZmpxYzBrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX2FWMXBzRU9BRWVHTVpPU0pJZmEwZ2ciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2FXNHlrVU9BRWVHTVpPU0pJZmEwZ2ciIHg9IjgxMCIgeT0iMzcwIiBoZWlnaHQ9IjYxIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9jN2NVOERpZkVlS3J1ZkpxeFI2V2lnIiB0eXBlPSIxMDI2Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9CN0pjUUUzUkVlT05vZEU5M1dKb1Z3IiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9CN0pjUVUzUkVlT05vZEU5M1dKb1Z3IiBrZXk9InZpc2libGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2M3bUY5amlmRWVLcnVmSnF4UjZXaWciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfYzdtRjl6aWZFZUtydWZKcXhSNldpZyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2M3bUYtRGlmRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9jN21GLVRpZkVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9jN21GLWppZkVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2M3bUYtemlmRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2M3bUZfRGlmRWVLcnVmSnF4UjZXaWciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfYzdtRl9UaWZFZUtydWZKcXhSNldpZyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2M3bUZfamlmRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2M3bUZfemlmRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfYzdtR0FEaWZFZUtydWZKcXhSNldpZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZmpzU0FFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQjdLRFVFM1JFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9CN0tEVVUzUkVlT05vZEU5M1dKb1Z3IiBrZXk9InZpc2libGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9manNTQVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2Zqc1NBa2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19jNjJmRURpZkVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9jN2NVOFRpZkVlS3J1ZkpxeFI2V2lnIiB4PSIxMDE1IiB5PSI1MDAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3JXUm0wRGlmRWVLcnVmSnF4UjZXaWciIHR5cGU9IjEwMjYiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0s1ZlFRRTNSRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0s1ZjNVRTNSRWVPTm9kRTkzV0pvVnciIGtleT0idmlzaWJsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfcldhd3hqaWZFZUtydWZKcXhSNldpZyIgdHlwZT0iMTAzNCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9yV2F3eHppZkVlS3J1ZkpxeFI2V2lnIiB0eXBlPSIxMDcxIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0s1ZjNVVTNSRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSzVmM1VrM1JFZU9Ob2RFOTNXSm9WdyIga2V5PSJ2aXNpYmxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfcldhd3lEaWZFZUtydWZKcXhSNldpZyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3JXYXd5VGlmRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX3JXYXd5amlmRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfcldhd3l6aWZFZUtydWZKcXhSNldpZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfcldhd3pEaWZFZUtydWZKcXhSNldpZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9yV2F3elRpZkVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfcldhd3pqaWZFZUtydWZKcXhSNldpZyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfcldhd3p6aWZFZUtydWZKcXhSNldpZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9yV2F3MERpZkVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9manRnSUViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZqdGdJVWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZmp0Z0lrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3JXSDEwRGlmRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3JXUm0wVGlmRWVLcnVmSnF4UjZXaWciIHg9IjkzNSIgeT0iODAwIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9KMmFvQURpakVlS3J1ZkpxeFI2V2lnIiB0eXBlPSIxMDI2Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9LNWRiRUUzUkVlT05vZEU5M1dKb1Z3IiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LNWVDSUUzUkVlT05vZEU5M1dKb1Z3IiBrZXk9InZpc2libGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0oyYW9DRGlqRWVLcnVmSnF4UjZXaWciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfSjJhb0NUaWpFZUtydWZKcXhSNldpZyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9LNWVDSVUzUkVlT05vZEU5M1dKb1Z3IiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0s1ZXBNRTNSRWVPTm9kRTkzV0pvVnciIGtleT0idmlzaWJsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0oyYW9DamlqRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9KMmFvQ3ppakVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9KMmFvRERpakVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0oyYW9EVGlqRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0oyYW9EamlqRWVLcnVmSnF4UjZXaWciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfSjJhb0R6aWpFZUtydWZKcXhSNldpZyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0oyYW9FRGlqRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0oyYW9FVGlqRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfSjJhb0VqaWpFZUtydWZKcXhSNldpZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZmp1dVFFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9manV1UVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZqdXVRa2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19KMkh0RURpakVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9KMmFvQVRpakVlS3J1ZkpxeFI2V2lnIiB4PSIxMTA1IiB5PSI2NjAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2xVVGdnRGlqRWVLcnVmSnF4UjZXaWciIHR5cGU9IjEwMjYiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0s1a0l3RTNSRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0s1a0l3VTNSRWVPTm9kRTkzV0pvVnciIGtleT0idmlzaWJsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbFVUZ2lEaWpFZUtydWZKcXhSNldpZyIgdHlwZT0iMTAzNCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9sVVRnaVRpakVlS3J1ZkpxeFI2V2lnIiB0eXBlPSIxMDcxIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0s1a0l3azNSRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSzVrdjBFM1JFZU9Ob2RFOTNXSm9WdyIga2V5PSJ2aXNpYmxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfbFVUZ2lqaWpFZUtydWZKcXhSNldpZyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2xVVGdpemlqRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2xVVGdqRGlqRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbFVUZ2pUaWpFZUtydWZKcXhSNldpZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfbFVUZ2pqaWpFZUtydWZKcXhSNldpZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9sVVRnanppakVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfbFVUZ2tEaWpFZUtydWZKcXhSNldpZyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfbFVUZ2tUaWpFZUtydWZKcXhSNldpZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9sVVRna2ppakVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mandqY0ViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2Zqd2pjVWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZmp3amNrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX2xVQWxrRGlqRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2xVVGdnVGlqRWVLcnVmSnF4UjZXaWciIHg9IjUwNyIgeT0iNjgyIiBoZWlnaHQ9Ijc2Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il94TS1sNEozMEVlS1pRYzNWYlpuMkJnIiB0eXBlPSIxMDI2Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9CN0lPSUUzUkVlT05vZEU5M1dKb1Z3IiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9CN0kxTUUzUkVlT05vZEU5M1dKb1Z3IiBrZXk9InZpc2libGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3hNLWw0cDMwRWVLWlFjM1ZiWm4yQmciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfeE0tbDQ1MzBFZUtaUWMzVmJabjJCZyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3hNLWw1SjMwRWVLWlFjM1ZiWm4yQmciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il94TS1sNVozMEVlS1pRYzNWYlpuMkJnIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il94TS1sNXAzMEVlS1pRYzNWYlpuMkJnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3hNLWw1NTMwRWVLWlFjM1ZiWm4yQmciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3hNLWw2SjMwRWVLWlFjM1ZiWm4yQmciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfeE0tbDZaMzBFZUtaUWMzVmJabjJCZyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3hNLWw2cDMwRWVLWlFjM1ZiWm4yQmciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX3hNLWw2NTMwRWVLWlFjM1ZiWm4yQmciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfeE0tbDdKMzBFZUtaUWMzVmJabjJCZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZmowTjBFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQjdJMU1VM1JFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9CN0kxTWszUkVlT05vZEU5M1dKb1Z3IiBrZXk9InZpc2libGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9majBOMFViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZqME4wa2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI194SzQ3TUozMEVlS1pRYzNWYlpuMkJnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il94TS1sNFozMEVlS1pRYzNWYlpuMkJnIiB4PSIxMjMwIiB5PSI1MDAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfM1EtVkFmY0VFZC1KMDZVNUhNX28tUSIvPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkVPYmplY3RMaXN0VmFsdWVTdHlsZSIgeG1pOmlkPSJfUFdNdjBFZTFFZU8tN0xhdk13LUdadyIgbmFtZT0iY3NzX3N0eWxlc2hlZXRzIiBlT2JqZWN0TGlzdFZhbHVlPSJfUFdOVzRFZTFFZU8tN0xhdk13LUdadyIvPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvZmlsZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzNRT0hFUGNFRWQtSjA2VTVITV9vLVEiLz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfX1BYRzRQY1BFZC1KMDZVNUhNX28tUSIgdHlwZT0iMTAxMyIgc291cmNlPSJfR29wRndmY0pFZC1KMDZVNUhNX28tUSIgdGFyZ2V0PSJfN2NMSklQY1BFZC1KMDZVNUhNX28tUSI+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX19QWEc0ZmNQRWQtSjA2VTVITV9vLVEiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RXh0ZW5zaW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfX082YThmY1BFZC1KMDZVNUhNX28tUSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfX1BYRzR2Y1BFZC1KMDZVNUhNX28tUSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX19QenkwUGNQRWQtSjA2VTVITV9vLVEiIGlkPSIoMC40OTA3NDA3NDA3NDA3NDA3NiwwLjApIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfX1B6eTBmY1BFZC1KMDZVNUhNX28tUSIgaWQ9IigwLjQ5Mzc1LDEuMCkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9udDRjUVY3YkVlQ0doTFRqRURreGZnIiB0eXBlPSI0MDAyIiBzb3VyY2U9Il9IbGZqZ0Y3YkVlQ0doTFRqRURreGZnIiB0YXJnZXQ9Il9ZLXhqUUFDY0VlR1hKT0p0V0tuOGpRIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX250NGNSRjdiRWVDR2hMVGpFRGt4ZmciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9udDRjUlY3YkVlQ0doTFRqRURreGZnIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfbnQ0Y1FsN2JFZUNHaExUakVEa3hmZyIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX250NGNRRjdiRWVDR2hMVGpFRGt4ZmciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX250NGNRMTdiRWVDR2hMVGpFRGt4ZmciIHBvaW50cz0iWzI1LCAtMjIsIC05NCwgODJdJFsxMjYsIC05MSwgNywgMTNdIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfbnQ0Y1JsN2JFZUNHaExUakVEa3hmZyIgaWQ9IigwLjM1LDAuOTM0MjEwNTI2MzE1Nzg5NSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9vTm5zUUY3YkVlQ0doTFRqRURreGZnIiB0eXBlPSI0MDAyIiBzb3VyY2U9Il9LVDFaRUY3YkVlQ0doTFRqRURreGZnIiB0YXJnZXQ9Il9ZLXhqUUFDY0VlR1hKT0p0V0tuOGpRIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX29ObnNRMTdiRWVDR2hMVGpFRGt4ZmciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9vTm5zUkY3YkVlQ0doTFRqRURreGZnIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfb05uc1FWN2JFZUNHaExUakVEa3hmZyIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX29OZDdRRjdiRWVDR2hMVGpFRGt4ZmciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX29ObnNRbDdiRWVDR2hMVGpFRGt4ZmciIHBvaW50cz0iWy0xOSwgLTI2LCA1MywgNzZdJFstNzQsIC05MCwgLTIsIDEyXSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX29ObnNSVjdiRWVDR2hMVGpFRGt4ZmciIGlkPSIoMC40NCwwLjc3NjMxNTc4OTQ3MzY4NDIpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfcXJiTGNWN2JFZUNHaExUakVEa3hmZyIgdHlwZT0iNDAwMiIgc291cmNlPSJfRWVwNmNQY0pFZC1KMDZVNUhNX28tUSIgdGFyZ2V0PSJfR29wRndmY0pFZC1KMDZVNUhNX28tUSI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9xcmJMZEY3YkVlQ0doTFRqRURreGZnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfcXJiTGRWN2JFZUNHaExUakVEa3hmZyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX3FyYkxjbDdiRWVDR2hMVGpFRGt4ZmciLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19xcmJMY0Y3YkVlQ0doTFRqRURreGZnIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9xcmJMYzE3YkVlQ0doTFRqRURreGZnIiBwb2ludHM9IlstNjAsIC0yOCwgMTYyLCA3Nl0kWy0yMTMsIC05MiwgOSwgMTJdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfVUM5UEFRQ0xFZVctUXNqaEZQQ19nZyIgaWQ9IigxLjAsMC4yNDY1NzUzNDI0NjU3NTM0KSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX3FyazhjRjdiRWVDR2hMVGpFRGt4ZmciIGlkPSIoMC4zODQyNTkyNTkyNTkyNTkyNCwxLjApIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfdVdMNW9GOWlFZUNYbklRc2x4dnYzQSIgdHlwZT0iNDAwMiIgc291cmNlPSJfb3JDVXNWOWlFZUNYbklRc2x4dnYzQSIgdGFyZ2V0PSJfR29wRndmY0pFZC1KMDZVNUhNX28tUSI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il91V0w1bzE5aUVlQ1huSVFzbHh2djNBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdVdMNXBGOWlFZUNYbklRc2x4dnYzQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX3VXTDVvVjlpRWVDWG5JUXNseHZ2M0EiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI191V0NJb0Y5aUVlQ1huSVFzbHh2djNBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il91V0w1b2w5aUVlQ1huSVFzbHh2djNBIiBwb2ludHM9IlstMTAsIC00LCAxMzYsIDYyXSRbLTE0MiwgLTY0LCA0LCAyXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX3VXTDVwVjlpRWVDWG5JUXNseHZ2M0EiIGlkPSIoMC4yOCwwLjApIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfdVdMNXBsOWlFZUNYbklRc2x4dnYzQSIgaWQ9IigwLjY4NTE4NTE4NTE4NTE4NTIsMS4wKSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX3pLQ3FNVjlpRWVDWG5JUXNseHZ2M0EiIHR5cGU9IjQwMDIiIHNvdXJjZT0iX3hEZk5ZRjlpRWVDWG5JUXNseHZ2M0EiIHRhcmdldD0iX0dvcEZ3ZmNKRWQtSjA2VTVITV9vLVEiIGF2b2lkT2JzdHJ1Y3Rpb25zPSJ0cnVlIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3pLQ3FORjlpRWVDWG5JUXNseHZ2M0EiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il96S0NxTlY5aUVlQ1huSVFzbHh2djNBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfektDcU1sOWlFZUNYbklRc2x4dnYzQSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3pLQ3FNRjlpRWVDWG5JUXNseHZ2M0EiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX3pLQ3FNMTlpRWVDWG5JUXNseHZ2M0EiIHBvaW50cz0iWy01NiwgLTUsIDIxMiwgNDldJFstMjk0LCAtMjksIC0yNiwgMjVdJFstMjk0LCAtMjksIC0yNiwgMjVdJFstMzIyLCAtNiwgLTU0LCA0OF0kWy0zNDgsIC0xNiwgLTgwLCAzOF0kWy0yNDksIC0xNiwgMTksIDM4XSRbLTMwNSwgLTM1LCAtMzcsIDE5XSRbLTMwNSwgLTM1LCAtMzcsIDE5XSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX3pLTWJNRjlpRWVDWG5JUXNseHZ2M0EiIGlkPSIoMC4wLDAuMTY2NjY2NjY2NjY2NjY2NjYpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfektNYk1WOWlFZUNYbklRc2x4dnYzQSIgaWQ9IigwLjc4NzAzNzAzNzAzNzAzNzEsMS4wKSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2JNaVFrQUIyRWVHWEpPSnRXS244alEiIHR5cGU9IjQwMDIiIHNvdXJjZT0iX1poaXVZQUIyRWVHWEpPSnRXS244alEiIHRhcmdldD0iX0tUMVpFRjdiRWVDR2hMVGpFRGt4ZmciIHJvdXRpbmc9IlRyZWUiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYk1pUWt3QjJFZUdYSk9KdFdLbjhqUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMDciPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2JNaVFsQUIyRWVHWEpPSnRXS244alEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9iTWlRa1FCMkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfYkl6bklBQjJFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfYk1pUWtnQjJFZUdYSk9KdFdLbjhqUSIgcG9pbnRzPSJbNSwgLTcsIC01NCwgODJdJFs2MiwgLTYyLCAzLCAyN10iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9iUkpxMEFCMkVlR1hKT0p0V0tuOGpRIiBpZD0iKDAuNDIsMC4wNykiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9IeU43TUFDZEVlR1hKT0p0V0tuOGpRIiBpZD0iKDAuMTksMC45NzM2ODQyMTA1MjYzMTU4KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2d6TmxNQUIyRWVHWEpPSnRXS244alEiIHR5cGU9IjQwMDIiIHNvdXJjZT0iX2ZoXzA4QUIyRWVHWEpPSnRXS244alEiIHRhcmdldD0iX1poaXVZQUIyRWVHWEpPSnRXS244alEiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZ3pObE13QjJFZUdYSk9KdFdLbjhqUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMDciPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2d6TmxOQUIyRWVHWEpPSnRXS244alEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9nek5sTVFCMkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfZ3cwX2tBQjJFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfZ3pObE1nQjJFZUdYSk9KdFdLbjhqUSIgcG9pbnRzPSJbMCwgLTEyLCAxMCwgOTRdJFsxNSwgLTU2LCAyNSwgNTBdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfZzNPaWdBQjJFZUdYSk9KdFdLbjhqUSIgaWQ9IigwLjM3LDAuMTIpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfbTBYZmNIYnFFZVNYZXQtZkM3N1dqQSIgaWQ9IigwLjg1ODQ5MDU2NjAzNzczNTksMC45NikiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9JMXpOQUFCNkVlR1hKT0p0V0tuOGpRIiB0eXBlPSI0MDAyIiBzb3VyY2U9Il9nLXM4SUFCNUVlR1hKT0p0V0tuOGpRIiB0YXJnZXQ9Il9LVDFaRUY3YkVlQ0doTFRqRURreGZnIiByb3V0aW5nPSJUcmVlIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0kxek5Bd0I2RWVHWEpPSnRXS244alEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9JMXpOQkFCNkVlR1hKT0p0V0tuOGpRIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfSTF6TkFRQjZFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX0l5T1VrQUI2RWVHWEpPSnRXS244alEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX0kxek5BZ0I2RWVHWEpPSnRXS244alEiIHBvaW50cz0iWy0xMywgLTEwLCAxMTgsIDEwMF0kWy0xMzYsIC04MywgLTUsIDI3XSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX0k2a1lRQUI2RWVHWEpPSnRXS244alEiIGlkPSIoMC40MzI0MzI0MzI0MzI0MzI0NiwwLjEpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfTWhQa0FBQjZFZUdYSk9KdFdLbjhqUSIgdHlwZT0iNDAwMiIgc291cmNlPSJfS09BOUlBQjZFZUdYSk9KdFdLbjhqUSIgdGFyZ2V0PSJfS1QxWkVGN2JFZUNHaExUakVEa3hmZyIgcm91dGluZz0iVHJlZSI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9NaFBrQXdCNkVlR1hKT0p0V0tuOGpRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfTWhQa0JBQjZFZUdYSk9KdFdLbjhqUSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX01oUGtBUUI2RWVHWEpPSnRXS244alEiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19NZDltZ0FCNkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9NaFBrQWdCNkVlR1hKT0p0V0tuOGpRIiBwb2ludHM9IlstMjIsIC03LCAyNzEsIDg4XSRbLTI3MywgLTg0LCAyMCwgMTFdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfTW5mOUFBQjZFZUdYSk9KdFdLbjhqUSIgaWQ9IigwLjM1OTE1NDkyOTU3NzQ2NDgsMC4wNykiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9NbmY5QVFCNkVlR1hKT0p0V0tuOGpRIiBpZD0iKDAuNTYsMC45NDczNjg0MjEwNTI2MzE1KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX0o4VmgwQUI3RWVHWEpPSnRXS244alEiIHR5cGU9IjQwMDIiIHNvdXJjZT0iX1NURm0wQUI2RWVHWEpPSnRXS244alEiIHRhcmdldD0iX2ctczhJQUI1RWVHWEpPSnRXS244alEiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfSjhWaDB3QjdFZUdYSk9KdFdLbjhqUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMDciPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0o4VmgxQUI3RWVHWEpPSnRXS244alEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9KOFZoMFFCN0VlR1hKT0p0V0tuOGpRIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfSjR3cFlBQjdFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfSjhWaDBnQjdFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX0pfNmFRQUI3RWVHWEpPSnRXS244alEiIGlkPSIoMC40OTczNjg0MjEwNTI2MzE1NywwLjApIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfSl82YVFRQjdFZUdYSk9KdFdLbjhqUSIgaWQ9IigwLjY2NDU3MDIzMDYwNzk2NjksMS4wKSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX0tsQlNjQUI3RWVHWEpPSnRXS244alEiIHR5cGU9IjQwMDIiIHNvdXJjZT0iX1NURm0wQUI2RWVHWEpPSnRXS244alEiIHRhcmdldD0iX0tPQTlJQUI2RWVHWEpPSnRXS244alEiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfS2xCU2N3QjdFZUdYSk9KdFdLbjhqUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMDciPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0tsQlNkQUI3RWVHWEpPSnRXS244alEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9LbEJTY1FCN0VlR1hKT0p0V0tuOGpRIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfS2g1RjhBQjdFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfS2xCU2NnQjdFZUdYSk9KdFdLbjhqUSIgcG9pbnRzPSJbMTEsIC0xNSwgLTQxLCA1NV0kWzQ4LCAtNTksIC00LCAxMV0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9LcGZpd0FCN0VlR1hKT0p0V0tuOGpRIiBpZD0iKDAuNjMsMC4xNSkiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9LcGZpd1FCN0VlR1hKT0p0V0tuOGpRIiBpZD0iKDAuNzI3MjcyNzI3MjcyNzI3MywwLjkzKSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iXzR3MnhvQUNZRWVHWEpPSnRXS244alEiIHR5cGU9IjQwMDIiIHNvdXJjZT0iXzJFSjYwQUNZRWVHWEpPSnRXS244alEiIHRhcmdldD0iX0tUMVpFRjdiRWVDR2hMVGpFRGt4ZmciIHJvdXRpbmc9IlRyZWUiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfNHcyeG93Q1lFZUdYSk9KdFdLbjhqUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMDciPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzR3MnhwQUNZRWVHWEpPSnRXS244alEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il80dzJ4b1FDWUVlR1hKT0p0V0tuOGpRIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfNHMtLVFBQ1lFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfNHcyeG9nQ1lFZUdYSk9KdFdLbjhqUSIgcG9pbnRzPSJbLTMzLCAtMTQsIDI1NywgMTEyXSRbLTI4MiwgLTEyMywgOCwgM10iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il80MXh0NEFDWUVlR1hKT0p0V0tuOGpRIiBpZD0iKDAuNTUyLDAuMDUpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfNDF4dDRRQ1lFZUdYSk9KdFdLbjhqUSIgaWQ9IigwLjk2LDAuODI4OTQ3MzY4NDIxMDUyNykiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il93anM0RUFDYUVlR1hKT0p0V0tuOGpRIiB0eXBlPSI0MDAyIiBzb3VyY2U9Il82QVNaTUFDWUVlR1hKT0p0V0tuOGpRIiB0YXJnZXQ9Il8yRUo2MEFDWUVlR1hKT0p0V0tuOGpRIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3dqczRFd0NhRWVHWEpPSnRXS244alEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il93anM0RkFDYUVlR1hKT0p0V0tuOGpRIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfd2pzNEVRQ2FFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3dmcjZ3QUNhRWVHWEpPSnRXS244alEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX3dqczRFZ0NhRWVHWEpPSnRXS244alEiIHBvaW50cz0iWy0yLCAtMTMsIC0yMSwgMTE1XSRbLTQzLCAtODUsIC02MiwgNDNdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfd294bFVBQ2FFZUdYSk9KdFdLbjhqUSIgaWQ9IigwLjM4NzUsMC4wKSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX0RDcnA4QUNkRWVHWEpPSnRXS244alEiIHR5cGU9IjQwMDIiIHNvdXJjZT0iX1kteGpRQUNjRWVHWEpPSnRXS244alEiIHRhcmdldD0iX0dvcEZ3ZmNKRWQtSjA2VTVITV9vLVEiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfRENycDh3Q2RFZUdYSk9KdFdLbjhqUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMDciPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0RDcnA5QUNkRWVHWEpPSnRXS244alEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9EQ3JwOFFDZEVlR1hKT0p0V0tuOGpRIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfQ19HeGdBQ2RFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfRENycDhnQ2RFZUdYSk9KdFdLbjhqUSIgcG9pbnRzPSJbLTEsIC03LCA4LCA4N10kWy0xLCAtMTIyLCA4LCAtMjhdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfRElmWEFBQ2RFZUdYSk9KdFdLbjhqUSIgaWQ9IigwLjQ3NjQzOTc5MDU3NTkxNjIzLDAuMCkiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9VQzlQQUFDTEVlVy1Rc2poRlBDX2dnIiBpZD0iKDAuNSwxLjApIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfNzNYNW9CdFNFZUdaQnFRTEsydFBSQSIgdHlwZT0iNDAwMiIgc291cmNlPSJfejFaV1lQLXFFZUNQSzRZbk1SaDZBdyIgdGFyZ2V0PSJfSGxmamdGN2JFZUNHaExUakVEa3hmZyI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il83M1g1b3h0U0VlR1pCcVFMSzJ0UFJBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfNzNYNXBCdFNFZUdaQnFRTEsydFBSQSIgeD0iLTE4IiB5PSItNDQiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iXzczWDVvUnRTRWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI183Mnhjc0J0U0VlR1pCcVFMSzJ0UFJBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il83M1g1b2h0U0VlR1pCcVFMSzJ0UFJBIiBwb2ludHM9IlsxNSwgLTIxLCAtMTQ0LCAyMjNdJFsyMDksIC0yMzgsIDUwLCA2XSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iXzczcTBrQnRTRWVHWkJxUUxLMnRQUkEiIGlkPSIoMC41MzE1Nzg5NDczNjg0MjEsMC4wNjk3Njc0NDE4NjA0NjUxMikiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il84Z2Z2SUJ0U0VlR1pCcVFMSzJ0UFJBIiB0eXBlPSI0MDAyIiBzb3VyY2U9Il95M2pPRVAtcUVlQ1BLNFluTVJoNkF3IiB0YXJnZXQ9Il9IbGZqZ0Y3YkVlQ0doTFRqRURreGZnIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzhnZnZJeHRTRWVHWkJxUUxLMnRQUkEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il84Z2Z2SkJ0U0VlR1pCcVFMSzJ0UFJBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfOGdmdklSdFNFZUdaQnFRTEsydFBSQSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzhnTTBNQnRTRWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iXzhnZnZJaHRTRWVHWkJxUUxLMnRQUkEiIHBvaW50cz0iWy0yLCAtMjIsIDEzLCAyMTBdJFstMTMsIC0yMjMsIDIsIDldIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfOGdwZ0lCdFNFZUdaQnFRTEsydFBSQSIgaWQ9IigwLjQ1MzMzMzMzMzMzMzMzMzMsMC4xNTYwMjgzNjg3OTQzMjYyNCkiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il84Z3BnSVJ0U0VlR1pCcVFMSzJ0UFJBIiBpZD0iKDAuNTMsMC43OTU0NTQ1NDU0NTQ1NDU0KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2RSd0JNRU9BRWVHTVpPU0pJZmEwZ2ciIHR5cGU9IjQwMDIiIHNvdXJjZT0iX2FXNHlrRU9BRWVHTVpPU0pJZmEwZ2ciIHRhcmdldD0iX3hEZk5ZRjlpRWVDWG5JUXNseHZ2M0EiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZFJ3Qk0wT0FFZUdNWk9TSklmYTBnZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMDciPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2RSd0JORU9BRWVHTVpPU0pJZmEwZ2ciIHg9Ii0xIiB5PSItMzIiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2RSd0JNVU9BRWVHTVpPU0pJZmEwZ2ciLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19kUVo5WUVPQUVlR01aT1NKSWZhMGdnIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9kUndCTWtPQUVlR01aT1NKSWZhMGdnIiBwb2ludHM9IlstMjksIC0xMywgMTUyLCA2OV0kWy0yMDIsIC01MiwgLTIxLCAzMF0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9kVkxJb0VPQUVlR01aT1NKSWZhMGdnIiBpZD0iKDAuNDYsMC4xMykiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9kVkxJb1VPQUVlR01aT1NKSWZhMGdnIiBpZD0iKDAuNiwwLjk2MDMxNzQ2MDMxNzQ2MDMpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfaHplYTREaWZFZUtydWZKcXhSNldpZyIgdHlwZT0iNDAwMiIgc291cmNlPSJfYzdjVThEaWZFZUtydWZKcXhSNldpZyIgdGFyZ2V0PSJfS1QxWkVGN2JFZUNHaExUakVEa3hmZyIgcm91dGluZz0iVHJlZSI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9oemVhNHppZkVlS3J1ZkpxeFI2V2lnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfaHplYTVEaWZFZUtydWZKcXhSNldpZyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2h6ZWE0VGlmRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19oeUlYRURpZkVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9oemVhNGppZkVlS3J1ZkpxeFI2V2lnIiBwb2ludHM9IlstMzksIC0xMiwgMzk5LCAxMjNdJFstNDIyLCAtMTM0LCAxNiwgMV0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9oejdHMERpZkVlS3J1ZkpxeFI2V2lnIiBpZD0iKDAuNDgsMC4xMikiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9oejdHMFRpZkVlS3J1ZkpxeFI2V2lnIiBpZD0iKDAuOTEzOTc4NDk0NjIzNjU1OSwwLjYxODQyMTA1MjYzMTU3OSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il96ZElaTVRpZkVlS3J1ZkpxeFI2V2lnIiB0eXBlPSI0MDAyIiBzb3VyY2U9Il9yV1JtMERpZkVlS3J1ZkpxeFI2V2lnIiB0YXJnZXQ9Il82QVNaTUFDWUVlR1hKT0p0V0tuOGpRIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3pkSVpORGlmRWVLcnVmSnF4UjZXaWciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il96ZElaTlRpZkVlS3J1ZkpxeFI2V2lnIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfemRJWk1qaWZFZUtydWZKcXhSNldpZyIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3pkSVpNRGlmRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX3pkSVpNemlmRWVLcnVmSnF4UjZXaWciIHBvaW50cz0iWzk5LCAwLCAyNywgNjZdJFsxMjcsIDAsIDU1LCA2Nl0kWzc4LCAtNTgsIDYsIDhdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfemRTS01EaWZFZUtydWZKcXhSNldpZyIgaWQ9IigwLjI1NDA5ODM2MDY1NTczNzcsMC4xMSkiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il96ZFNLTVRpZkVlS3J1ZkpxeFI2V2lnIiBpZD0iKDAuMzE0ODE0ODE0ODE0ODE0OCwwLjkzKSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX01QNW40VGlqRWVLcnVmSnF4UjZXaWciIHR5cGU9IjQwMDIiIHNvdXJjZT0iX0oyYW9BRGlqRWVLcnVmSnF4UjZXaWciIHRhcmdldD0iXzJFSjYwQUNZRWVHWEpPSnRXS244alEiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTVA1bjVEaWpFZUtydWZKcXhSNldpZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMDciPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX01QNW41VGlqRWVLcnVmSnF4UjZXaWciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9NUDVuNGppakVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfTVA1bjREaWpFZUtydWZKcXhSNldpZyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfTVA1bjR6aWpFZUtydWZKcXhSNldpZyIgcG9pbnRzPSJbLTIzLCAtMTYsIDEwOCwgNzldJFstMTM5LCAtNzYsIC04LCAxOV0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9NUURZNERpakVlS3J1ZkpxeFI2V2lnIiBpZD0iKDAuMzYsMC4xNikiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9NUURZNFRpakVlS3J1ZkpxeFI2V2lnIiBpZD0iKDAuNCwwLjgxKSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iXzlfLXdFRGlqRWVLcnVmSnF4UjZXaWciIHR5cGU9IjQwMDIiIHNvdXJjZT0iX2xVVGdnRGlqRWVLcnVmSnF4UjZXaWciIHRhcmdldD0iX2ctczhJQUI1RWVHWEpPSnRXS244alEiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfOV8td0V6aWpFZUtydWZKcXhSNldpZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMDciPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzlfLXdGRGlqRWVLcnVmSnF4UjZXaWciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il85Xy13RVRpakVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfOV8wX0VEaWpFZUtydWZKcXhSNldpZyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfOV8td0VqaWpFZUtydWZKcXhSNldpZyIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iXy1BUnJBRGlqRWVLcnVmSnF4UjZXaWciIGlkPSIoMC40OTY0MDI4Nzc2OTc4NDE3NSwwLjApIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfLUFSckFUaWpFZUtydWZKcXhSNldpZyIgaWQ9IigwLjQ5MDU2NjAzNzczNTg0OTA2LDAuOTQpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfNWhHWU1KMzBFZUtaUWMzVmJabjJCZyIgdHlwZT0iNDAwMiIgc291cmNlPSJfeE0tbDRKMzBFZUtaUWMzVmJabjJCZyIgdGFyZ2V0PSJfS1QxWkVGN2JFZUNHaExUakVEa3hmZyIgcm91dGluZz0iVHJlZSI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il81aEdZTTUzMEVlS1pRYzNWYlpuMkJnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfNWhHWU5KMzBFZUtaUWMzVmJabjJCZyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iXzVoR1lNWjMwRWVLWlFjM1ZiWm4yQmciLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI181ZjZGWUozMEVlS1pRYzNWYlpuMkJnIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il81aEdZTXAzMEVlS1pRYzNWYlpuMkJnIiBwb2ludHM9IlstMjcsIC02LCA0NDEsIDkxXSRbLTQ2NywgLTEyMCwgMSwgLTIzXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iXzVpdlc4SjMwRWVLWlFjM1ZiWm4yQmciIGlkPSIoMC4zNiwwLjEpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfNWl2VzhaMzBFZUtaUWMzVmJabjJCZyIgaWQ9IigwLjgxNzIwNDMwMTA3NTI2ODksMC40MDc4OTQ3MzY4NDIxMDUyNSkiLz4KKyAgICA8L2VkZ2VzPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX3I0VVNnR0F5RWVDVVFmM3ZwQUc2SkEiIHR5cGU9IlBhcHlydXNVTUxQcm9maWxlRGlhZ3JhbSIgbmFtZT0iRGF0YVR5cGVzUHJvZmlsZSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9yNFVTZ1dBeUVlQ1VRZjN2cEFHNkpBIi8+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9maWxlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfM1FPSEVQY0VFZC1KMDZVNUhNX28tUSIvPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX1dGcnVzQUI2RWVHWEpPSnRXS244alEiIHR5cGU9IlBhcHlydXNVTUxQcm9maWxlRGlhZ3JhbSIgbmFtZT0iUG9ydHMiIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2FqQ3EwQUI2RWVHWEpPSnRXS244alEiIHR5cGU9IjEwMzEiIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9hakNxMFFCNkVlR1hKT0p0V0tuOGpRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYWpDcTBnQjZFZUdYSk9KdFdLbjhqUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYWpDcTB3QjZFZUdYSk9KdFdLbjhqUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYWpDcTFBQjZFZUdYSk9KdFdLbjhqUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9hakNxMVFCNkVlR1hKT0p0V0tuOGpRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2FqQ3ExZ0I2RWVHWEpPSnRXS244alEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYWpDcTF3QjZFZUdYSk9KdFdLbjhqUSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29aMVFrQWZiRWVLblNOWkRYWV9ZVGciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29aMVFrUWZiRWVLblNOWkRYWV9ZVGciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vWjFRa2dmYkVlS25TTlpEWFlfWVRnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb1oxUWt3ZmJFZUtuU05aRFhZX1lUZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29aMVFsQWZiRWVLblNOWkRYWV9ZVGciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9hakNxM1FCNkVlR1hKT0p0V0tuOGpRIiB0eXBlPSIxMDg0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZKNVI4RWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJBcHBsaWVkU3RlcmVvdHlwZUNvbXBhcnRlbWVudCI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZKNVI4VWJNRWVPODliZFBwQjhnVGciIHNob3dUaXRsZT0idHJ1ZSIvPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0ic3RhbmRhcmQ6TWV0YWNsYXNzIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvVU1MLm1ldGFtb2RlbC51bWwjX1NsTGVZYXRLRWVHRjR1d0pvYjM0TXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZko1UjhrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZko1NUFFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mSjU1QVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZKNTVBa2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvVU1MLm1ldGFtb2RlbC51bWwjUG9ydCIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfYWpDcTNnQjZFZUdYSk9KdFdLbjhqUSIgeD0iNDkwIiB5PSI0NSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYWpDcTZnQjZFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMjAwNiIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9hakNxNndCNkVlR1hKT0p0V0tuOGpRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYWpDcTdBQjZFZUdYSk9KdFdLbjhqUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYWpDcTdRQjZFZUdYSk9KdFdLbjhqUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYWpDcTdnQjZFZUdYSk9KdFdLbjhqUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9hakNxN3dCNkVlR1hKT0p0V0tuOGpRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2FqQ3E4QUI2RWVHWEpPSnRXS244alEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9hakNxOFFCNkVlR1hKT0p0V0tuOGpRIiB0eXBlPSI1MDIzIi8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2FqQ3E4Z0I2RWVHWEpPSnRXS244alEiIHR5cGU9IjEwNjMiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9hakNxOHdCNkVlR1hKT0p0V0tuOGpRIiB0eXBlPSIxMDM3IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb25MaXRlcmFsIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfT3U1U0FHQkNFZUNVUWYzdnBBRzZKQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYWpDcTlBQjZFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9hakNxOVFCNkVlR1hKT0p0V0tuOGpRIiB0eXBlPSIxMDM3IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb25MaXRlcmFsIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfUGtfTWdHQkNFZUNVUWYzdnBBRzZKQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYWpDcTlnQjZFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9hakNxOXdCNkVlR1hKT0p0V0tuOGpRIiB0eXBlPSIxMDM3IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb25MaXRlcmFsIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfOU9oOUlHQkNFZUNVUWYzdnBBRzZKQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYWpDcS1BQjZFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2FqQ3EtUUI2RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2FqQ3EtZ0I2RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfYWpDcS13QjZFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZko4VlFFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mSjhWUVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZKOFZRa2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfSi1uWjRHQkNFZUNVUWYzdnBBRzZKQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfYWpDcV9BQjZFZUdYSk9KdFdLbjhqUSIgeD0iMTc1IiB5PSIyMzAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2FqQ3JCQUI2RWVHWEpPSnRXS244alEiIHR5cGU9IjEwMjYiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYWpDckJRQjZFZUdYSk9KdFdLbjhqUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2FqQ3JCZ0I2RWVHWEpPSnRXS244alEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2FqQ3JCd0I2RWVHWEpPSnRXS244alEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2FqQ3JDQUI2RWVHWEpPSnRXS244alEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYWpDckNRQjZFZUdYSk9KdFdLbjhqUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9hakNyQ2dCNkVlR1hKT0p0V0tuOGpRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYWpDckN3QjZFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMTAzNCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9hakNyREFCNkVlR1hKT0p0V0tuOGpRIiB0eXBlPSIxMDcxIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYWpDckRRQjZFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMzAwMiIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfYXUxTDRGN2JFZUNHaExUakVEa3hmZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYWpDckRnQjZFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2FqQ3JEd0I2RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2FqQ3JFQUI2RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfYWpDckVRQjZFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfYWpDckVnQjZFZUdYSk9KdFdLbjhqUSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2FqQ3JFd0I2RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2FqQ3JGQUI2RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfYWpDckZRQjZFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZkotS2NFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mSi1LY1ViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZKLUtja2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19CUEllWUY3YkVlQ0doTFRqRURreGZnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9hakNyRmdCNkVlR1hKT0p0V0tuOGpRIiB4PSIzNTUiIHk9IjI3NSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYWpNYjBBQjZFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMTAyNiIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9hak1iMFFCNkVlR1hKT0p0V0tuOGpRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYWpNYjBnQjZFZUdYSk9KdFdLbjhqUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYWpNYjB3QjZFZUdYSk9KdFdLbjhqUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYWpNYjFBQjZFZUdYSk9KdFdLbjhqUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9hak1iMVFCNkVlR1hKT0p0V0tuOGpRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2FqTWIxZ0I2RWVHWEpPSnRXS244alEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9hak1iMXdCNkVlR1hKT0p0V0tuOGpRIiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2FqTWIyQUI2RWVHWEpPSnRXS244alEiIHR5cGU9IjEwNzEiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9hak1iMlFCNkVlR1hKT0p0V0tuOGpRIiB0eXBlPSIzMDAyIiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9hak1iMmdCNkVlR1hKT0p0V0tuOGpRIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2FqTWIyd0I2RWVHWEpPSnRXS244alEiIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI2MCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19SX3FmTUdCQ0VlQ1VRZjN2cEFHNkpBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9hak1iM0FCNkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfYWpNYjNRQjZFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfYWpNYjNnQjZFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9hak1iM3dCNkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9hak1iNEFCNkVlR1hKT0p0V0tuOGpRIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9hak1iNFFCNkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9hak1iNGdCNkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2FqTWI0d0I2RWVHWEpPSnRXS244alEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZLQW1zRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZktBbXNVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mS0Ftc2tiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfMXRkTjBHQkJFZUNVUWYzdnBBRzZKQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfYWpNYjVBQjZFZUdYSk9KdFdLbjhqUSIgeD0iNDQwIiB5PSIxNDUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2FqTWI1UUI2RWVHWEpPSnRXS244alEiIHR5cGU9IjEwMjYiIGZvbnRIZWlnaHQ9IjgiIHRyYW5zcGFyZW5jeT0iMCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9hak1iNWdCNkVlR1hKT0p0V0tuOGpRIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYWpNYjV3QjZFZUdYSk9KdFdLbjhqUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYWpNYjZBQjZFZUdYSk9KdFdLbjhqUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYWpNYjZRQjZFZUdYSk9KdFdLbjhqUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9hak1iNmdCNkVlR1hKT0p0V0tuOGpRIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2FqTWI2d0I2RWVHWEpPSnRXS244alEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9hak1iN0FCNkVlR1hKT0p0V0tuOGpRIiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2FqTWI3UUI2RWVHWEpPSnRXS244alEiIHR5cGU9IjEwNzEiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9hak1iN2dCNkVlR1hKT0p0V0tuOGpRIiB0eXBlPSIzMDAyIiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9hak1iN3dCNkVlR1hKT0p0V0tuOGpRIiBzb3VyY2U9IkN1c3RvbUFwcGVhcmFuY2VfQW5ub3RhdGlvbiI+CisgICAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2FqTWI4QUI2RWVHWEpPSnRXS244alEiIGtleT0iQ3VzdG9tQXBwZWFyYW5jZV9NYXNrVmFsdWUiIHZhbHVlPSI2MCIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19McTNrQUNsU0VlQ1VEdXdDR19obFp3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9hak1iOFFCNkVlR1hKT0p0V0tuOGpRIiB4PSIyOSIgeT0iOCIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9hak1iOGdCNkVlR1hKT0p0V0tuOGpRIiB0eXBlPSIzMDAyIiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19CRlNXMEdCRUVlQ1VRZjN2cEFHNkpBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9hak1iOHdCNkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfYWpNYjlBQjZFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfYWpNYjlRQjZFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9hak1iOWdCNkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9hak1iOXdCNkVlR1hKT0p0V0tuOGpRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfYWpNYi1BQjZFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfYWpNYi1RQjZFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9hak1iLWdCNkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mS0RDOEViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZLREM4VWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZktEQzhrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX1J6d1FzQm1pRWVDUWlyeGNqX1JhRmciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2FqTWItd0I2RWVHWEpPSnRXS244alEiIHg9IjU0NSIgeT0iMjc1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9hak1iX0FCNkVlR1hKT0p0V0tuOGpRIiB0eXBlPSIyMDA2IiBmb250SGVpZ2h0PSI4IiB0cmFuc3BhcmVuY3k9IjAiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYWpNYl9RQjZFZUdYSk9KdFdLbjhqUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2FqTWJfZ0I2RWVHWEpPSnRXS244alEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2FqTWJfd0I2RWVHWEpPSnRXS244alEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2FqTWNBQUI2RWVHWEpPSnRXS244alEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYWpNY0FRQjZFZUdYSk9KdFdLbjhqUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9hak1jQWdCNkVlR1hKT0p0V0tuOGpRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYWpNY0F3QjZFZUdYSk9KdFdLbjhqUSIgdHlwZT0iNTAyMyIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9hak1jQkFCNkVlR1hKT0p0V0tuOGpRIiB0eXBlPSIxMDYzIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYWpNY0JRQjZFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMTAzNyIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX2FjRGdZQ2xTRWVDVUR1d0NHX2hsWnciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2FqTWNCZ0I2RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYWpNY0J3QjZFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMTAzNyIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX2JMVE1BQ2xTRWVDVUR1d0NHX2hsWnciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2FqTWNDQUI2RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfOTB2Y2tCZzZFZUtKb05pZkd0N18xUSIgdHlwZT0iMTAzNyIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzl6MkVzQmc2RWVLSm9OaWZHdDdfMVEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzkwdmNrUmc2RWVLSm9OaWZHdDdfMVEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9hak1jQ1FCNkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9hak1jQ2dCNkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2FqTWNDd0I2RWVHWEpPSnRXS244alEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZLRTRJRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZktFNElVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mS0U0SWtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX1dYYjBZQ2xTRWVDVUR1d0NHX2hsWnciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2FqTWNEQUI2RWVHWEpPSnRXS244alEiIHg9IjE3MCIgeT0iMjAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2FqTWNEUUI2RWVHWEpPSnRXS244alEiIHR5cGU9IjIwMDYiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYWpNY0RnQjZFZUdYSk9KdFdLbjhqUSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2FqTWNEd0I2RWVHWEpPSnRXS244alEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2FqTWNFQUI2RWVHWEpPSnRXS244alEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2FqTWNFUUI2RWVHWEpPSnRXS244alEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYWpNY0VnQjZFZUdYSk9KdFdLbjhqUSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9hak1jRXdCNkVlR1hKT0p0V0tuOGpRIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYWpNY0ZBQjZFZUdYSk9KdFdLbjhqUSIgdHlwZT0iNTAyMyIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9hak1jRlFCNkVlR1hKT0p0V0tuOGpRIiB0eXBlPSIxMDYzIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYWpNY0ZnQjZFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMTAzNyIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXy1oRmp3RjdhRWVDR2hMVGpFRGt4ZmciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2FqTWNGd0I2RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYWpNY0dBQjZFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMTAzNyIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX19VV01zRjdhRWVDR2hMVGpFRGt4ZmciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2FqTWNHUUI2RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9hak1jR2dCNkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9halZsd0FCNkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2FqVmx3UUI2RWVHWEpPSnRXS244alEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZLSFVZRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZktIVVlVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mS0hVWWtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzYtYjhZRjdhRWVDR2hMVGpFRGt4ZmciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2FqVmx3Z0I2RWVHWEpPSnRXS244alEiIHg9IjE3MCIgeT0iMTI1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9xWk1pa0dMUEVlR3lBOGhLMU1oZ0JRIiB0eXBlPSIxMDMxIiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3FaTWlrbUxQRWVHeUE4aEsxTWhnQlEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9xWk1pazJMUEVlR3lBOGhLMU1oZ0JRIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9xWk1pbEdMUEVlR3lBOGhLMU1oZ0JRIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9xWk1pbFdMUEVlR3lBOGhLMU1oZ0JRIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3FaTWlsbUxQRWVHeUE4aEsxTWhnQlEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcVpNaWwyTFBFZUd5QThoSzFNaGdCUSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9xWk1pbW1MUEVlR3lBOGhLMU1oZ0JRIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb1oxUW1BZmJFZUtuU05aRFhZX1lUZyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb1oxUW1RZmJFZUtuU05aRFhZX1lUZyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29aMVFtZ2ZiRWVLblNOWkRYWV9ZVGciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vWjFRbXdmYkVlS25TTlpEWFlfWVRnIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb1oxUW5BZmJFZUtuU05aRFhZX1lUZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3FaTWltR0xQRWVHeUE4aEsxTWhnQlEiIHR5cGU9IjEwODQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZktKd29FYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IkFwcGxpZWRTdGVyZW90eXBlQ29tcGFydGVtZW50Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZktKd29VYk1FZU84OWJkUHBCOGdUZyIgc2hvd1RpdGxlPSJ0cnVlIi8+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJzdGFuZGFyZDpNZXRhY2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNfU2xGWHdhdEtFZUdGNHV3Sm9iMzRNdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mS0p3b2tiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mS0p3bzBiTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZLSndwRWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZktKd3BVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNQYXJhbWV0ZXIiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3FaTWltV0xQRWVHeUE4aEsxTWhnQlEiIHg9Ijc1OCIgeT0iNjQiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfV0ZydXNRQjZFZUdYSk9KdFdLbjhqUSIvPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvZmlsZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzNRT0hFUGNFRWQtSjA2VTVITV9vLVEiLz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfYWpDcTN3QjZFZUdYSk9KdFdLbjhqUSIgdHlwZT0iMTAxMyIgc291cmNlPSJfYWpNYjBBQjZFZUdYSk9KdFdLbjhqUSIgdGFyZ2V0PSJfYWpDcTBBQjZFZUdYSk9KdFdLbjhqUSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfYWpDcTRBQjZFZUdYSk9KdFdLbjhqUSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFeHRlbnNpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI183UnY4MFdCQkVlQ1VRZjN2cEFHNkpBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9hakNxNFFCNkVlR1hKT0p0V0tuOGpRIiBwb2ludHM9IlswLCAtMTIsIC05LCA2NV0kWzAsIC01MiwgLTksIDI1XSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2FqQ3E0Z0I2RWVHWEpPSnRXS244alEiIGlkPSIoMC40MjEwNTI2MzE1Nzg5NDczNSwwLjA0KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2FqQ3E0d0I2RWVHWEpPSnRXS244alEiIHR5cGU9IjQwMDIiIHNvdXJjZT0iX2FqTWI1UUI2RWVHWEpPSnRXS244alEiIHRhcmdldD0iX2FqTWIwQUI2RWVHWEpPSnRXS244alEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9hakNxNUFCNkVlR1hKT0p0V0tuOGpRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYWpDcTVRQjZFZUdYSk9KdFdLbjhqUSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2FqQ3E1Z0I2RWVHWEpPSnRXS244alEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI181UTJjRUdCQkVlQ1VRZjN2cEFHNkpBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9hakNxNXdCNkVlR1hKT0p0V0tuOGpRIiBwb2ludHM9Ils0NCwgLTIwLCAtODMsIDQ2XSRbMTI0LCAtMTYsIC0zLCA1MF0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9hakNxNkFCNkVlR1hKT0p0V0tuOGpRIiBpZD0iKDAuNzY3MTk1NzY3MTk1NzY3MiwwLjMzKSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2FqQ3E2UUI2RWVHWEpPSnRXS244alEiIGlkPSIoMC41OCwwLjk4KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2FqQ3FfUUI2RWVHWEpPSnRXS244alEiIHR5cGU9IjQwMDIiIHNvdXJjZT0iX2FqQ3JCQUI2RWVHWEpPSnRXS244alEiIHRhcmdldD0iX2FqTWIwQUI2RWVHWEpPSnRXS244alEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9hakNxX2dCNkVlR1hKT0p0V0tuOGpRIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYWpDcV93QjZFZUdYSk9KdFdLbjhqUSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2FqQ3JBQUI2RWVHWEpPSnRXS244alEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI184RXRxMEdCQkVlQ1VRZjN2cEFHNkpBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9hakNyQVFCNkVlR1hKT0p0V0tuOGpRIiBwb2ludHM9IlsyOSwgLTE1LCAtOTgsIDQ5XSRbMTM5LCAtNDUsIDEyLCAxOV0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9hakNyQWdCNkVlR1hKT0p0V0tuOGpRIiBpZD0iKDAuNDY4OTY1NTE3MjQxMzc5MywwLjE1KSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2FqQ3JBd0I2RWVHWEpPSnRXS244alEiIGlkPSIoMC43LDAuODEpIi8+CisgICAgPC9lZGdlcz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il8zMGNhUUJ0VEVlR1pCcVFMSzJ0UFJBIiB0eXBlPSJQYXB5cnVzVU1MUHJvZmlsZURpYWdyYW0iIG5hbWU9IkFsZ29yaXRobURpYWdyYW0iIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzZoQUhJQnRURWVHWkJxUUxLMnRQUkEiIHR5cGU9IjEwMzEiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNmhBSElodFRFZUdaQnFRTEsydFBSQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZoQUhJeHRURWVHWkJxUUxLMnRQUkEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzZoQUhKQnRURWVHWkJxUUxLMnRQUkEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZoQUhKUnRURWVHWkJxUUxLMnRQUkEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNmhBSEpodFRFZUdaQnFRTEsydFBSQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il82aEFISnh0VEVlR1pCcVFMSzJ0UFJBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzZoQUhLaHRURWVHWkJxUUxLMnRQUkEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vWl9Ca0FmYkVlS25TTlpEWFlfWVRnIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vWl9Ca1FmYkVlS25TTlpEWFlfWVRnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb1pfQmtnZmJFZUtuU05aRFhZX1lUZyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29aX0Jrd2ZiRWVLblNOWkRYWV9ZVGciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vWl9CbEFmYkVlS25TTlpEWFlfWVRnIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfNmhBSEtCdFRFZUdaQnFRTEsydFBSQSIgdHlwZT0iMTA4NCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mTkZ2NEViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iQXBwbGllZFN0ZXJlb3R5cGVDb21wYXJ0ZW1lbnQiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mTkZ2NFViTUVlTzg5YmRQcEI4Z1RnIiBzaG93VGl0bGU9InRydWUiLz4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InN0YW5kYXJkOk1ldGFjbGFzcyIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL1VNTC5tZXRhbW9kZWwudW1sI19TazJITUt0S0VlR0Y0dXdKb2IzNE13Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZORnY0a2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZOR1c4RWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZk5HVzhVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mTkdXOGtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL1VNTC5tZXRhbW9kZWwudW1sI09wZXJhdGlvbiIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfNmhBSEtSdFRFZUdaQnFRTEsydFBSQSIgeD0iNDg0IiB5PSI4OCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfOUdhRElCdFRFZUdaQnFRTEsydFBSQSIgdHlwZT0iMTAyNiIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il85R2FESWh0VEVlR1pCcVFMSzJ0UFJBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOUdhREl4dFRFZUdaQnFRTEsydFBSQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOUdhREpCdFRFZUdaQnFRTEsydFBSQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOUdhREpSdFRFZUdaQnFRTEsydFBSQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il85R2pORUJ0VEVlR1pCcVFMSzJ0UFJBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzlHak5FUnRURWVHWkJxUUxLMnRQUkEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il85R2pORWh0VEVlR1pCcVFMSzJ0UFJBIiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzlHak5FeHRURWVHWkJxUUxLMnRQUkEiIHR5cGU9IjEwNzEiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il94TXNOc0J0VUVlR1pCcVFMSzJ0UFJBIiB0eXBlPSIzMDAyIiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI194STlrUUJ0VUVlR1pCcVFMSzJ0UFJBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il94TXNOc1J0VUVlR1pCcVFMSzJ0UFJBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzBpT21JQnRVRWVHWkJxUUxLMnRQUkEiIHR5cGU9IjMwMDIiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzBkNkcwQnRVRWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzBpT21JUnRVRWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfNjRiVE1CdFVFZUdaQnFRTEsydFBSQSIgdHlwZT0iMzAwMiIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfNjBHejRCdFVFZUdaQnFRTEsydFBSQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfNjRiVE1SdFVFZUdaQnFRTEsydFBSQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9oM3o4UUo0QUVlS05TTUZkc2NYMHJnIiB0eXBlPSIzMDAyIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfaDJ4YWNKNEFFZUtOU01GZHNjWDByZyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfaDN6OFFaNEFFZUtOU01GZHNjWDByZyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il85R2pORkJ0VEVlR1pCcVFMSzJ0UFJBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfOUdqTkZSdFRFZUdaQnFRTEsydFBSQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfOUdqTkZodFRFZUdaQnFRTEsydFBSQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il85R2pORnh0VEVlR1pCcVFMSzJ0UFJBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il85R2pOR0J0VEVlR1pCcVFMSzJ0UFJBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzlHak5HUnRURWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il85R2pOR2h0VEVlR1pCcVFMSzJ0UFJBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il85R2pOR3h0VEVlR1pCcVFMSzJ0UFJBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzlHak5IQnRURWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZOSXpNRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZk5Jek1VYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mTkl6TWtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfOUVCZGdCdFRFZUdaQnFRTEsydFBSQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfOUdhRElSdFRFZUdaQnFRTEsydFBSQSIgeD0iNDE5IiB5PSIyMDgiIHdpZHRoPSIyMDYiIGhlaWdodD0iMTE2Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9MTDNSOENEbUVlR0NjOXNIa3J2WmJnIiB0eXBlPSIxMDI2IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0xMM1I4aURtRWVHQ2M5c0hrcnZaYmciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9MTDNSOHlEbUVlR0NjOXNIa3J2WmJnIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9MTDNSOUNEbUVlR0NjOXNIa3J2WmJnIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9MTDNSOVNEbUVlR0NjOXNIa3J2WmJnIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0xMM1I5aURtRWVHQ2M5c0hrcnZaYmciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTEwzUjl5RG1FZUdDYzlzSGtydlpiZyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0xMM1ItQ0RtRWVHQ2M5c0hrcnZaYmciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfTEwzUi1TRG1FZUdDYzlzSGtydlpiZyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2MxNHh3Q0RvRWVHQ2M5c0hrcnZaYmciIHR5cGU9IjMwMDIiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX2N6cDlJQ0RvRWVHQ2M5c0hrcnZaYmciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2MxNHh3U0RvRWVHQ2M5c0hrcnZaYmciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfTEwzUi1pRG1FZUdDYzlzSGtydlpiZyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0xMM1IteURtRWVHQ2M5c0hrcnZaYmciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0xMM1JfQ0RtRWVHQ2M5c0hrcnZaYmciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTEwzUl9TRG1FZUdDYzlzSGtydlpiZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfTEwzUl9pRG1FZUdDYzlzSGtydlpiZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9MTDNSX3lEbUVlR0NjOXNIa3J2WmJnIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfTEwzU0FDRG1FZUdDYzlzSGtydlpiZyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfTEwzU0FTRG1FZUdDYzlzSGtydlpiZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9MTDNTQWlEbUVlR0NjOXNIa3J2WmJnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mTkxQY0ViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZOTFBjVWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZk5MUGNrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX0xLaE9JQ0RtRWVHQ2M5c0hrcnZaYmciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0xMM1I4U0RtRWVHQ2M5c0hrcnZaYmciIHg9IjY3OSIgeT0iMjQzIiBoZWlnaHQ9IjY2Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il81TWZmQUNKcEVlR1hiYjQ1M3RQMHlBIiB0eXBlPSIxMDMxIiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzVNZmZBaUpwRWVHWGJiNDUzdFAweUEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il81TWZmQXlKcEVlR1hiYjQ1M3RQMHlBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il81TWZmQkNKcEVlR1hiYjQ1M3RQMHlBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il81TWZmQlNKcEVlR1hiYjQ1M3RQMHlBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzVNZmZCaUpwRWVHWGJiNDUzdFAweUEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNU1mZkJ5SnBFZUdYYmI0NTN0UDB5QSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il81TW9vOENKcEVlR1hiYjQ1M3RQMHlBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb1pfQm1BZmJFZUtuU05aRFhZX1lUZyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb1pfQm1RZmJFZUtuU05aRFhZX1lUZyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29aX0JtZ2ZiRWVLblNOWkRYWV9ZVGciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vWl9CbXdmYkVlS25TTlpEWFlfWVRnIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb1pfQm5BZmJFZUtuU05aRFhZX1lUZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzVNZmZDQ0pwRWVHWGJiNDUzdFAweUEiIHR5cGU9IjEwODQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZk5OcnNFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IkFwcGxpZWRTdGVyZW90eXBlQ29tcGFydGVtZW50Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZk5OcnNVYk1FZU84OWJkUHBCOGdUZyIgc2hvd1RpdGxlPSJ0cnVlIi8+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJzdGFuZGFyZDpNZXRhY2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNfU2g2SDhLdEtFZUdGNHV3Sm9iMzRNdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mTk5yc2tiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mTk9Td0ViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZOT1N3VWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZk5PU3drYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNDbGFzcyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfNU1mZkNTSnBFZUdYYmI0NTN0UDB5QSIgeD0iNjc0IiB5PSIxNDgiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2RfeVk4Q0p3RWVHWGJiNDUzdFAweUEiIHR5cGU9IjEwMDIiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZF95WThpSndFZUdYYmI0NTN0UDB5QSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2RfeVk4eUp3RWVHWGJiNDUzdFAweUEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2RfeVk5Q0p3RWVHWGJiNDUzdFAweUEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2RfeVk5U0p3RWVHWGJiNDUzdFAweUEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZF95WTlpSndFZUdYYmI0NTN0UDB5QSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9kX3lZOXlKd0VlR1hiYjQ1M3RQMHlBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZF95WS1DSndFZUdYYmI0NTN0UDB5QSIgdHlwZT0iMyIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfZDdLLXNDSndFZUdYYmI0NTN0UDB5QSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZF95WThTSndFZUdYYmI0NTN0UDB5QSIgeD0iMzkwIiB5PSI0MDAiIHdpZHRoPSIxNDYiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzRhX09RSjRBRWVLTlNNRmRzY1gwcmciIHR5cGU9IjEwMDIiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfNGFfT1FwNEFFZUtOU01GZHNjWDByZyIgdHlwZT0iMyIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfNFpEVWtKNEFFZUtOU01GZHNjWDByZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfNGFfT1FaNEFFZUtOU01GZHNjWDByZyIgeD0iNTY2IiB5PSIzNzEiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0Q2TWdRTHZBRWVLdF82MVRFclJmdHciIHR5cGU9IjEwMzEiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0Q2TWdSTHZBRWVLdF82MVRFclJmdHciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9PaGI4Z0hicEVlU1hldC1mQzc3V2pBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9PaGI4Z1hicEVlU1hldC1mQzc3V2pBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT2hiOGduYnBFZVNYZXQtZkM3N1dqQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX09oYjhnM2JwRWVTWGV0LWZDNzdXakEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9PaGI4aEhicEVlU1hldC1mQzc3V2pBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfRDZNZ1FydkFFZUt0XzYxVEVyUmZ0dyIgdHlwZT0iMTA4NCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mTlJXRUViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iQXBwbGllZFN0ZXJlb3R5cGVDb21wYXJ0ZW1lbnQiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mTlJXRVViTUVlTzg5YmRQcEI4Z1RnIiBzaG93VGl0bGU9InRydWUiLz4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InN0YW5kYXJkOk1ldGFjbGFzcyIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL1VNTC5tZXRhbW9kZWwudW1sI19Ta0t4d0t0S0VlR0Y0dXdKb2IzNE13Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZOUldFa2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZOUldFMGJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZk5SV0ZFYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mTlJXRlViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL1VNTC5tZXRhbW9kZWwudW1sI0ludGVyZmFjZSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfRDZNZ1E3dkFFZUt0XzYxVEVyUmZ0dyIgeD0iODU0IiB5PSI1MyIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYXlQcWdMdktFZUt0XzYxVEVyUmZ0dyIgdHlwZT0iMTAzMSI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYXlQcWhMdktFZUt0XzYxVEVyUmZ0dyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX09oajRVSGJwRWVTWGV0LWZDNzdXakEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX09oajRVWGJwRWVTWGV0LWZDNzdXakEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9PaGo0VW5icEVlU1hldC1mQzc3V2pBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT2hqNFUzYnBFZVNYZXQtZkM3N1dqQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX09oajRWSGJwRWVTWGV0LWZDNzdXakEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9heVBxZ3J2S0VlS3RfNjFURXJSZnR3IiB0eXBlPSIxMDg0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZOVkFjRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJBcHBsaWVkU3RlcmVvdHlwZUNvbXBhcnRlbWVudCI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZOVkFjVWJNRWVPODliZFBwQjhnVGciIHNob3dUaXRsZT0idHJ1ZSIvPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0ic3RhbmRhcmQ6TWV0YWNsYXNzIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvVU1MLm1ldGFtb2RlbC51bWwjX1NrOE4wS3RLRWVHRjR1d0pvYjM0TXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZk5WQWNrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZk5WQWMwYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mTlZBZEViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZOVkFkVWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvVU1MLm1ldGFtb2RlbC51bWwjUGFja2FnZSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfYXlQcWc3dktFZUt0XzYxVEVyUmZ0dyIgeD0iNjg0IiB5PSIzOCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfdzQ3NEFMdk9FZUt0XzYxVEVyUmZ0dyIgdHlwZT0iMTAyNiI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il93NDc0QXJ2T0VlS3RfNjFURXJSZnR3IiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3c0NzRBN3ZPRWVLdF82MVRFclJmdHciIHR5cGU9IjEwNzEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdzQ3NERidk9FZUt0XzYxVEVyUmZ0dyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il93NDc0RHJ2T0VlS3RfNjFURXJSZnR3IiBrZXk9InNob3dUaXRsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0RUbnFvTHZQRWVLdF82MVRFclJmdHciIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19EVGQ1b0x2UEVlS3RfNjFURXJSZnR3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9EVG5xb2J2UEVlS3RfNjFURXJSZnR3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0g2OXBNTHZQRWVLdF82MVRFclJmdHciIHR5cGU9IjMwMDIiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19INno0TUx2UEVlS3RfNjFURXJSZnR3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9INjlwTWJ2UEVlS3RfNjFURXJSZnR3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3c0NzRCTHZPRWVLdF82MVRFclJmdHciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il93NDc0QmJ2T0VlS3RfNjFURXJSZnR3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il93NDc0QnJ2T0VlS3RfNjFURXJSZnR3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3c0NzRCN3ZPRWVLdF82MVRFclJmdHciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3c0NzRDTHZPRWVLdF82MVRFclJmdHciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3c0NzREN3ZPRWVLdF82MVRFclJmdHciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdzQ3NEVMdk9FZUt0XzYxVEVyUmZ0dyIga2V5PSJzaG93VGl0bGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il93NDc0Q2J2T0VlS3RfNjFURXJSZnR3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfdzQ3NENydk9FZUt0XzYxVEVyUmZ0dyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfdzQ3NEM3dk9FZUt0XzYxVEVyUmZ0dyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il93NDc0REx2T0VlS3RfNjFURXJSZnR3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mTlhjc0ViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZOWGNzVWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZk5YY3NrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3c0bzlFTHZPRWVLdF82MVRFclJmdHciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3c0NzRBYnZPRWVLdF82MVRFclJmdHciIHg9Ijc5OSIgeT0iMTc4Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9RNk9Nd0x2YkVlS0ZqT2lQSUNxWVRBIiB0eXBlPSIxMDI2Ij4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1E2T013cnZiRWVLRmpPaVBJQ3FZVEEiIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfUTZPTXc3dmJFZUtGak9pUElDcVlUQSIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9RNk9NemJ2YkVlS0ZqT2lQSUNxWVRBIiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1E2T016cnZiRWVLRmpPaVBJQ3FZVEEiIGtleT0ic2hvd1RpdGxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpOb2RlIiB4bWk6aWQ9Il9BcElPSUhyMUVlU2NVUHdYemlFSWpBIiB0eXBlPSIzMDAyIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfc0xNcnNHTFBFZUd5QThoSzFNaGdCUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQXBJT0lYcjFFZVNjVVB3WHppRUlqQSIgeD0iMzYiIHk9IjEzIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246Tm9kZSIgeG1pOmlkPSJfT3pCRWdIcjJFZVNjVVB3WHppRUlqQSIgdHlwZT0iMzAwMiI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3c0ODBRR0xQRWVHeUE4aEsxTWhnQlEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX096QkVnWHIyRWVTY1VQd1h6aUVJakEiIHg9IjQ5IiB5PSIyOSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9RNk9NeEx2YkVlS0ZqT2lQSUNxWVRBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfUTZPTXhidmJFZUtGak9pUElDcVlUQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfUTZPTXhydmJFZUtGak9pUElDcVlUQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9RNk9NeDd2YkVlS0ZqT2lQSUNxWVRBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9RNk9NeUx2YkVlS0ZqT2lQSUNxWVRBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9RNk9Nejd2YkVlS0ZqT2lQSUNxWVRBIiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1E2T00wTHZiRWVLRmpPaVBJQ3FZVEEiIGtleT0ic2hvd1RpdGxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfUTZPTXlidmJFZUtGak9pUElDcVlUQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX1E2T015cnZiRWVLRmpPaVBJQ3FZVEEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX1E2T015N3ZiRWVLRmpPaVBJQ3FZVEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfUTZPTXpMdmJFZUtGak9pUElDcVlUQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZk5aNDhFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mTlo0OFViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZOWjQ4a2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19xdXAxTUdMUEVlR3lBOGhLMU1oZ0JRIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9RNk9Nd2J2YkVlS0ZqT2lQSUNxWVRBIiB4PSItNiIgeT0iMjMxIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9TaDd4ZGJ2YkVlS0ZqT2lQSUNxWVRBIiB0eXBlPSIxMDI2Ij4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1NoN3hkcnZiRWVLRmpPaVBJQ3FZVEEiIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfU2g3eGQ3dmJFZUtGak9pUElDcVlUQSIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9TaDd4ZUx2YkVlS0ZqT2lQSUNxWVRBIiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1NoN3hlYnZiRWVLRmpPaVBJQ3FZVEEiIGtleT0ic2hvd1RpdGxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfQVZJMFlMdmNFZUtGak9pUElDcVlUQSIgdHlwZT0iMzAwMiI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX1NoN3hjYnZiRWVLRmpPaVBJQ3FZVEEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0FWSTBZYnZjRWVLRmpPaVBJQ3FZVEEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfU2g3eGVydmJFZUtGak9pUElDcVlUQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX1NoN3hlN3ZiRWVLRmpPaVBJQ3FZVEEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX1NoN3hmTHZiRWVLRmpPaVBJQ3FZVEEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfU2g3eGZidmJFZUtGak9pUElDcVlUQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfU2g3eGZydmJFZUtGak9pUElDcVlUQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfU2g3eGY3dmJFZUtGak9pUElDcVlUQSIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9TaDd4Z0x2YkVlS0ZqT2lQSUNxWVRBIiBrZXk9InNob3dUaXRsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1NoN3hnYnZiRWVLRmpPaVBJQ3FZVEEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9TaDd4Z3J2YkVlS0ZqT2lQSUNxWVRBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9TaDd4Zzd2YkVlS0ZqT2lQSUNxWVRBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1NoN3hoTHZiRWVLRmpPaVBJQ3FZVEEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZOYkhFRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZk5iSEVVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mTmJIRWtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfU2g3eGNMdmJFZUtGak9pUElDcVlUQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfU2g3eGhidmJFZUtGak9pUElDcVlUQSIgeD0iMjMxIiB5PSIyMzUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0NnaURBTHZlRWVLRmpPaVBJQ3FZVEEiIHR5cGU9IjEwMzEiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0NnaURCTHZlRWVLRmpPaVBJQ3FZVEEiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9PaHRwVUhicEVlU1hldC1mQzc3V2pBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9PaHRwVVhicEVlU1hldC1mQzc3V2pBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT2h0cFVuYnBFZVNYZXQtZkM3N1dqQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX09odHBVM2JwRWVTWGV0LWZDNzdXakEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9PaHRwVkhicEVlU1hldC1mQzc3V2pBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfQ2dpREFydmVFZUtGak9pUElDcVlUQSIgdHlwZT0iMTA4NCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mTmVLWUViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iQXBwbGllZFN0ZXJlb3R5cGVDb21wYXJ0ZW1lbnQiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mTmVLWVViTUVlTzg5YmRQcEI4Z1RnIiBzaG93VGl0bGU9InRydWUiLz4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InN0YW5kYXJkOk1ldGFjbGFzcyIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL1VNTC5tZXRhbW9kZWwudW1sI19TbFNNRUt0S0VlR0Y0dXdKb2IzNE13Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZOZUtZa2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZOZXhjRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZk5leGNVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mTmV4Y2tiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL1VNTC5tZXRhbW9kZWwudW1sI1Byb3BlcnR5Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9DZ2lEQTd2ZUVlS0ZqT2lQSUNxWVRBIiB4PSItNSIgeT0iNDUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX09RNGRRSHIxRWVTY1VQd1h6aUVJakEiIHR5cGU9IjEwMzEiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfT1E1cllIcjFFZVNjVVB3WHppRUlqQSIgdHlwZT0iMTA4NCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL1VNTC5tZXRhbW9kZWwudW1sI1BhcmFtZXRlciIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfT1E0ZFFYcjFFZVNjVVB3WHppRUlqQSIgeD0iMTcxIiB5PSIxMDMiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfMzBjYVFSdFRFZUdaQnFRTEsydFBSQSIvPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvZmlsZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzNRT0hFUGNFRWQtSjA2VTVITV9vLVEiLz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfT0VRRVVCdFVFZUdaQnFRTEsydFBSQSIgdHlwZT0iMTAxMyIgc291cmNlPSJfOUdhRElCdFRFZUdaQnFRTEsydFBSQSIgdGFyZ2V0PSJfNmhBSElCdFRFZUdaQnFRTEsydFBSQSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfT0VRRVVSdFVFZUdaQnFRTEsydFBSQSIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFeHRlbnNpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19OXzdsQVJ0VUVlR1pCcVFMSzJ0UFJBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9PRVFFVWh0VUVlR1pCcVFMSzJ0UFJBIiBwb2ludHM9IlswLCAtMTUsIC0xMCwgMTIwXSRbLTQwLCAtMTMyLCAtNTAsIDNdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfT0lSb3NCdFVFZUdaQnFRTEsydFBSQSIgaWQ9IigwLjI1MjQyNzE4NDQ2NjAxOTQsMC4wKSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2xLUFJvQ0pwRWVHWGJiNDUzdFAweUEiIGlkPSIoMC42OSwxLjApIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfQWNacElDRG5FZUdDYzlzSGtydlpiZyIgdHlwZT0iMTAxMyIgc291cmNlPSJfTEwzUjhDRG1FZUdDYzlzSGtydlpiZyIgdGFyZ2V0PSJfNU1mZkFDSnBFZUdYYmI0NTN0UDB5QSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfQWNacElTRG5FZUdDYzlzSGtydlpiZyIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFeHRlbnNpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19BYjg5TUNEbkVlR0NjOXNIa3J2WmJnIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9BY1pwSWlEbkVlR0NjOXNIa3J2WmJnIiBwb2ludHM9IlsxLCAtMTYsIDQsIDg4XSRbMSwgLTc5LCA0LCAyNV0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9BY19mQUNEbkVlR0NjOXNIa3J2WmJnIiBpZD0iKDAuMDUsMC4wKSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iXzZaRk44Q0pwRWVHWGJiNDUzdFAweUEiIGlkPSIoMC45NSwxLjApIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfOXY3U29KNEFFZUtOU01GZHNjWDByZyIgdHlwZT0iMTAyMiIgc291cmNlPSJfNGFfT1FKNEFFZUtOU01GZHNjWDByZyIgdGFyZ2V0PSJfOUdhRElCdFRFZUdaQnFRTEsydFBSQSI+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iXzl2N1NvWjRBRWVLTlNNRmRzY1gwcmciLz4KKyAgICAgIDxlbGVtZW50IHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iXzl2N1NvcDRBRWVLTlNNRmRzY1gwcmciIHBvaW50cz0iWy03LCAtMzAsIDksIDM4XSRbLTMwLCAtNDksIC0xNCwgMTldIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfVEVxVlVIcjFFZVNjVVB3WHppRUlqQSIgaWQ9IigwLjgwMzEwODgwODI5MDE1NTQsMC4wKSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iXzl3T05rSjRBRWVLTlNNRmRzY1gwcmciIGlkPSIoMC4wMjkxMjYyMTM1OTIyMzMwMSwxLjApIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfV193V3NMdlNFZUt0XzYxVEVyUmZ0dyIgdHlwZT0iMTAxMyIgc291cmNlPSJfdzQ3NEFMdk9FZUt0XzYxVEVyUmZ0dyIgdGFyZ2V0PSJfRDZNZ1FMdkFFZUt0XzYxVEVyUmZ0dyI+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX1dfd1dzYnZTRWVLdF82MVRFclJmdHciLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RXh0ZW5zaW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfV19UcXdidlNFZUt0XzYxVEVyUmZ0dyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfV193V3NydlNFZUt0XzYxVEVyUmZ0dyIgcG9pbnRzPSJbLTEsIC0xNSwgNywgMTIwXSRbLTEsIC0xMTAsIDcsIDI1XSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX1hBRFJvTHZTRWVLdF82MVRFclJmdHciIGlkPSIoMC45MDk2Mzg1NTQyMTY4Njc1LDAuMCkiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9URThDSUhyMUVlU2NVUHdYemlFSWpBIiBpZD0iKDAuMDgsMS4wKSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX09TU3lnSHIxRWVTY1VQd1h6aUVJakEiIHR5cGU9IjEwMTMiIHNvdXJjZT0iX1E2T013THZiRWVLRmpPaVBJQ3FZVEEiIHRhcmdldD0iX09RNGRRSHIxRWVTY1VQd1h6aUVJakEiPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9PU1N5Z1hyMUVlU2NVUHdYemlFSWpBIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkV4dGVuc2lvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3c0ODBRV0xQRWVHeUE4aEsxTWhnQlEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX09TU3lnbnIxRWVTY1VQd1h6aUVJakEiIHBvaW50cz0iWy05LCAtNTAsIDM2LCAyMTBdJFstNDUsIC0yNjAsIDAsIDBdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfUWpzTllIcjFFZVNjVVB3WHppRUlqQSIgaWQ9IigwLjUyNzA5MzU5NjA1OTExMzMsMC4wKSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX1FqdGJnSHIxRWVTY1VQd1h6aUVJakEiIGlkPSIoMC41LDEuMCkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9WcnYyNEhyMkVlU2NVUHdYemlFSWpBIiB0eXBlPSIxMDEzIiBzb3VyY2U9Il9TaDd4ZGJ2YkVlS0ZqT2lQSUNxWVRBIiB0YXJnZXQ9Il9PUTRkUUhyMUVlU2NVUHdYemlFSWpBIj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfVnJ2MjRYcjJFZVNjVVB3WHppRUlqQSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFeHRlbnNpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19WcmdtVUhyMkVlU2NVUHdYemlFSWpBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9WcnYyNG5yMkVlU2NVUHdYemlFSWpBIiBwb2ludHM9IlstMTgsIC0yMywgMTcyLCAyNDZdJFstMTkzLCAtMjQ0LCAtMywgMjVdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfVnI2MkFIcjJFZVNjVVB3WHppRUlqQSIgaWQ9IigwLjY1Mzg0NjE1Mzg0NjE1MzksMC4wKSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX1pvSXo4SHIyRWVTY1VQd1h6aUVJakEiIGlkPSIoMC40NCwxLjApIi8+CisgICAgPC9lZGdlcz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9HR0tnSUNKcUVlR1hiYjQ1M3RQMHlBIiB0eXBlPSJQYXB5cnVzVU1MUHJvZmlsZURpYWdyYW0iIG5hbWU9IlN0YXRlTWFjaGluZSIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfSU9YaXdTSnFFZUdYYmI0NTN0UDB5QSIgdHlwZT0iMTAzMSIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9JT2dzc0NKcUVlR1hiYjQ1M3RQMHlBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSU9nc3NTSnFFZUdYYmI0NTN0UDB5QSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSU9nc3NpSnFFZUdYYmI0NTN0UDB5QSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSU9nc3N5SnFFZUdYYmI0NTN0UDB5QSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9JT2dzdENKcUVlR1hiYjQ1M3RQMHlBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0lPZ3N0U0pxRWVHWGJiNDUzdFAweUEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfSU9nc3VDSnFFZUdYYmI0NTN0UDB5QSIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29hSUxnQWZiRWVLblNOWkRYWV9ZVGciIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29hSUxnUWZiRWVLblNOWkRYWV9ZVGciIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vYUlMZ2dmYkVlS25TTlpEWFlfWVRnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb2FJTGd3ZmJFZUtuU05aRFhZX1lUZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29hSUxoQWZiRWVLblNOWkRYWV9ZVGciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9JT2dzdGlKcUVlR1hiYjQ1M3RQMHlBIiB0eXBlPSIxMDg0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZQcWl3RWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJBcHBsaWVkU3RlcmVvdHlwZUNvbXBhcnRlbWVudCI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZQcWl3VWJNRWVPODliZFBwQjhnVGciIHNob3dUaXRsZT0idHJ1ZSIvPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0ic3RhbmRhcmQ6TWV0YWNsYXNzIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvVU1MLm1ldGFtb2RlbC51bWwjX1NsNEI4S3RLRWVHRjR1d0pvYjM0TXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZlBxaXdrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZlBySjBFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mUHJKMFViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZQckowa2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvVU1MLm1ldGFtb2RlbC51bWwjU3RhdGUiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0lPZ3N0eUpxRWVHWGJiNDUzdFAweUEiIHg9IjIyNSIgeT0iMTI1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9LVTZfa0NKcUVlR1hiYjQ1M3RQMHlBIiB0eXBlPSIxMDMxIiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0tVNl9raUpxRWVHWGJiNDUzdFAweUEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LVTZfa3lKcUVlR1hiYjQ1M3RQMHlBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9LVTZfbENKcUVlR1hiYjQ1M3RQMHlBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LVTZfbFNKcUVlR1hiYjQ1M3RQMHlBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0tVNl9saUpxRWVHWGJiNDUzdFAweUEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfS1U2X2x5SnFFZUdYYmI0NTN0UDB5QSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9LVTZfbWlKcUVlR1hiYjQ1M3RQMHlBIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb2FJTGlBZmJFZUtuU05aRFhZX1lUZyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb2FJTGlRZmJFZUtuU05aRFhZX1lUZyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29hSUxpZ2ZiRWVLblNOWkRYWV9ZVGciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vYUlMaXdmYkVlS25TTlpEWFlfWVRnIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb2FJTGpBZmJFZUtuU05aRFhZX1lUZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0tVNl9tQ0pxRWVHWGJiNDUzdFAweUEiIHR5cGU9IjEwODQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZlB0bUVFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IkFwcGxpZWRTdGVyZW90eXBlQ29tcGFydGVtZW50Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZlB0bUVVYk1FZU84OWJkUHBCOGdUZyIgc2hvd1RpdGxlPSJ0cnVlIi8+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJzdGFuZGFyZDpNZXRhY2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNfU21TUm9LdEtFZUdGNHV3Sm9iMzRNdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mUHRtRWtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mUHVOSUViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZQdU5JVWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZlB1TklrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNUcmFuc2l0aW9uIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9LVTZfbVNKcUVlR1hiYjQ1M3RQMHlBIiB4PSI0ODAiIHk9IjE2MCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfTHhkUEFDSnFFZUdYYmI0NTN0UDB5QSIgdHlwZT0iMTAyNiIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9MeG5BQUNKcUVlR1hiYjQ1M3RQMHlBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTHhuQUFTSnFFZUdYYmI0NTN0UDB5QSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTHhuQUFpSnFFZUdYYmI0NTN0UDB5QSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTHhuQUF5SnFFZUdYYmI0NTN0UDB5QSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9MeG5BQkNKcUVlR1hiYjQ1M3RQMHlBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0x4bkFCU0pxRWVHWGJiNDUzdFAweUEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9MeG5BQmlKcUVlR1hiYjQ1M3RQMHlBIiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0x4bkFCeUpxRWVHWGJiNDUzdFAweUEiIHR5cGU9IjEwNzEiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9mU1ZOb0NKcUVlR1hiYjQ1M3RQMHlBIiB0eXBlPSIzMDAyIiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19mTnR6WUNKcUVlR1hiYjQ1M3RQMHlBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9mU1ZOb1NKcUVlR1hiYjQ1M3RQMHlBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0x4bkFDQ0pxRWVHWGJiNDUzdFAweUEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9MeG5BQ1NKcUVlR1hiYjQ1M3RQMHlBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9MeG5BQ2lKcUVlR1hiYjQ1M3RQMHlBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0x4bkFDeUpxRWVHWGJiNDUzdFAweUEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0x4bkFEQ0pxRWVHWGJiNDUzdFAweUEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfTHhuQURTSnFFZUdYYmI0NTN0UDB5QSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0x4bkFEaUpxRWVHWGJiNDUzdFAweUEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0x4bkFEeUpxRWVHWGJiNDUzdFAweUEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTHhuQUVDSnFFZUdYYmI0NTN0UDB5QSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZlB3cFlFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mUHdwWVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZQd3BZa2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19Md2tlTUNKcUVlR1hiYjQ1M3RQMHlBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9MeGRQQVNKcUVlR1hiYjQ1M3RQMHlBIiB4PSIxOTUiIHk9IjIzNSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfU2hKYUlDSnFFZUdYYmI0NTN0UDB5QSIgdHlwZT0iMTAyNiIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9TaEphSWlKcUVlR1hiYjQ1M3RQMHlBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfU2hKYUl5SnFFZUdYYmI0NTN0UDB5QSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfU2hKYUpDSnFFZUdYYmI0NTN0UDB5QSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfU2hKYUpTSnFFZUdYYmI0NTN0UDB5QSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9TaEphSmlKcUVlR1hiYjQ1M3RQMHlBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1NoSmFKeUpxRWVHWGJiNDUzdFAweUEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9TaEphS0NKcUVlR1hiYjQ1M3RQMHlBIiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1NoSmFLU0pxRWVHWGJiNDUzdFAweUEiIHR5cGU9IjEwNzEiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9PcTdrUUNKdkVlR1hiYjQ1M3RQMHlBIiB0eXBlPSIzMDAyIiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19PbHR0RUNKdkVlR1hiYjQ1M3RQMHlBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9PcTdrUVNKdkVlR1hiYjQ1M3RQMHlBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0tzZVZNQ0p3RWVHWGJiNDUzdFAweUEiIHR5cGU9IjMwMDIiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzNkYTcwQ0p1RWVHWGJiNDUzdFAweUEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0tzZVZNU0p3RWVHWGJiNDUzdFAweUEiIHg9IjYwIiB5PSIyOSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9TaEphS2lKcUVlR1hiYjQ1M3RQMHlBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfU2hKYUt5SnFFZUdYYmI0NTN0UDB5QSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfU2hKYUxDSnFFZUdYYmI0NTN0UDB5QSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9TaEphTFNKcUVlR1hiYjQ1M3RQMHlBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9TaEphTGlKcUVlR1hiYjQ1M3RQMHlBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1NoSmFMeUpxRWVHWGJiNDUzdFAweUEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9TaEphTUNKcUVlR1hiYjQ1M3RQMHlBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9TaEphTVNKcUVlR1hiYjQ1M3RQMHlBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1NoSmFNaUpxRWVHWGJiNDUzdFAweUEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZQeWVrRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZlB5ZWtVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mUHlla2tiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfU2dqa1FDSnFFZUdYYmI0NTN0UDB5QSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfU2hKYUlTSnFFZUdYYmI0NTN0UDB5QSIgeD0iNDc1IiB5PSIyOTAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1dBbllZQ0p2RWVHWGJiNDUzdFAweUEiIHR5cGU9IjEwMDIiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfV0FuWVlpSnZFZUdYYmI0NTN0UDB5QSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1dBbllZeUp2RWVHWGJiNDUzdFAweUEiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1dBbllaQ0p2RWVHWGJiNDUzdFAweUEiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1dBbllaU0p2RWVHWGJiNDUzdFAweUEiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfV0FuWVppSnZFZUdYYmI0NTN0UDB5QSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9XQW5ZWnlKdkVlR1hiYjQ1M3RQMHlBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfV0FuWWFDSnZFZUdYYmI0NTN0UDB5QSIgdHlwZT0iMyIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfVjNPeTRDSnZFZUdYYmI0NTN0UDB5QSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfV0FuWVlTSnZFZUdYYmI0NTN0UDB5QSIgeD0iNDIwIiB5PSI0MjAiIHdpZHRoPSIxNzUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3FuX1lBTHZHRWVLdF82MVRFclJmdHciIHR5cGU9IjEwMzEiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3FuX1lCTHZHRWVLdF82MVRFclJmdHciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9PaDJNTUhicEVlU1hldC1mQzc3V2pBIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9PaDJ6UUhicEVlU1hldC1mQzc3V2pBIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT2gyelFYYnBFZVNYZXQtZkM3N1dqQSIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX09oMnpRbmJwRWVTWGV0LWZDNzdXakEiIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9PaDJ6UTNicEVlU1hldC1mQzc3V2pBIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfcW5fWUFydkdFZUt0XzYxVEVyUmZ0dyIgdHlwZT0iMTA4NCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mUDJJOEViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iQXBwbGllZFN0ZXJlb3R5cGVDb21wYXJ0ZW1lbnQiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mUDJJOFViTUVlTzg5YmRQcEI4Z1RnIiBzaG93VGl0bGU9InRydWUiLz4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InN0YW5kYXJkOk1ldGFjbGFzcyIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL1VNTC5tZXRhbW9kZWwudW1sI19TaG4wRUt0S0VlR0Y0dXdKb2IzNE13Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZQMkk4a2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZQMkk4MGJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZlAySTlFYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mUDJJOVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL1VNTC5tZXRhbW9kZWwudW1sI0JlaGF2aW9yIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9xbl9ZQTd2R0VlS3RfNjFURXJSZnR3IiB4PSIzNjAiIHk9IjEzMCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfWWYtTlFMdkhFZUt0XzYxVEVyUmZ0dyIgdHlwZT0iMTAwMiI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9ZZi1OUXJ2SEVlS3RfNjFURXJSZnR3IiB0eXBlPSIzIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19ZYzJBd0x2SEVlS3RfNjFURXJSZnR3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9ZZi1OUWJ2SEVlS3RfNjFURXJSZnR3IiB4PSIxMTUiIHk9IjM1NSIgd2lkdGg9IjI0NiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9HR0tnSVNKcUVlR1hiYjQ1M3RQMHlBIi8+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9maWxlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfM1FPSEVQY0VFZC1KMDZVNUhNX28tUSIvPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9YdU1Hd0NKcUVlR1hiYjQ1M3RQMHlBIiB0eXBlPSIxMDEzIiBzb3VyY2U9Il9MeGRQQUNKcUVlR1hiYjQ1M3RQMHlBIiB0YXJnZXQ9Il9JT1hpd1NKcUVlR1hiYjQ1M3RQMHlBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9YdU1Hd1NKcUVlR1hiYjQ1M3RQMHlBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkV4dGVuc2lvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX1h0VFY4U0pxRWVHWGJiNDUzdFAweUEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX1h1TUd3aUpxRWVHWGJiNDUzdFAweUEiIHBvaW50cz0iWzIsIC03LCAwLCAxMDRdJFstMSwgLTEwNSwgLTMsIDZdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfWHVveXNDSnFFZUdYYmI0NTN0UDB5QSIgaWQ9IigwLjUsMC4wKSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX1h1b3lzU0pxRWVHWGJiNDUzdFAweUEiIGlkPSIoMC40MiwwLjg4KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX1lPcmtzQ0pxRWVHWGJiNDUzdFAweUEiIHR5cGU9IjEwMTMiIHNvdXJjZT0iX1NoSmFJQ0pxRWVHWGJiNDUzdFAweUEiIHRhcmdldD0iX0tVNl9rQ0pxRWVHWGJiNDUzdFAweUEiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX1lPcmtzU0pxRWVHWGJiNDUzdFAweUEiIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RXh0ZW5zaW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfWU9PNHdTSnFFZUdYYmI0NTN0UDB5QSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfWU9ya3NpSnFFZUdYYmI0NTN0UDB5QSIgcG9pbnRzPSJbMSwgLTgsIDAsIDEwMF0kWy00LCAtMTAxLCAtNSwgN10iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9ZUFJha0NKcUVlR1hiYjQ1M3RQMHlBIiBpZD0iKDAuNDEsMC4wOCkiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9ZUFJha1NKcUVlR1hiYjQ1M3RQMHlBIiBpZD0iKDAuMzksMC44NikiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9mVU9Sd0NKdkVlR1hiYjQ1M3RQMHlBIiB0eXBlPSIxMDIyIiBzb3VyY2U9Il9XQW5ZWUNKdkVlR1hiYjQ1M3RQMHlBIiB0YXJnZXQ9Il9TaEphSUNKcUVlR1hiYjQ1M3RQMHlBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9mVU9Sd1NKdkVlR1hiYjQ1M3RQMHlBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9mVU9Sd2lKdkVlR1hiYjQ1M3RQMHlBIiBwb2ludHM9IlstMjYsIC05LCAxNjQsIDBdJFstMTI4LCAtOSwgNjIsIDBdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfZmdTWDBDSnZFZUdYYmI0NTN0UDB5QSIgaWQ9IigwLjY1MTQyODU3MTQyODU3MTUsMC4wMzYyMzE4ODQwNTc5NzEwMTYpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfMzNkTmdMdkhFZUt0XzYxVEVyUmZ0dyIgdHlwZT0iMTAyMiIgc291cmNlPSJfWWYtTlFMdkhFZUt0XzYxVEVyUmZ0dyIgdGFyZ2V0PSJfTHhkUEFDSnFFZUdYYmI0NTN0UDB5QSI+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iXzMzZE5nYnZIRWVLdF82MVRFclJmdHciLz4KKyAgICAgIDxlbGVtZW50IHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iXzMzZE5ncnZIRWVLdF82MVRFclJmdHciIHBvaW50cz0iWzAsIC01LCAwLCAzOF0kWzgsIC0yNSwgOCwgMThdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfMzN3SWNMdkhFZUt0XzYxVEVyUmZ0dyIgaWQ9IigwLjI0ODQ3NTYwOTc1NjA5NzU2LDAuMDgzMzMzMzMzMzMzMzMzMzMpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfMzN3SWNidkhFZUt0XzYxVEVyUmZ0dyIgaWQ9IigwLjYxMDI5NDExNzY0NzA1ODksMC44MikiLz4KKyAgICA8L2VkZ2VzPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX1lPVjhFRVhORWVHZTNNM05fODQ2cnciIHR5cGU9IlBhcHlydXNVTUxQcm9maWxlRGlhZ3JhbSIgbmFtZT0iRW52aXJvbm1lbnQiIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1pZakZZRVhORWVHZTNNM05fODQ2cnciIHR5cGU9IjEwMjYiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfWllqRllrWE5FZUdlM00zTl84NDZydyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1pZakZZMFhORWVHZTNNM05fODQ2cnciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1pZakZaRVhORWVHZTNNM05fODQ2cnciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1pZakZaVVhORWVHZTNNM05fODQ2cnciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfWllqRlprWE5FZUdlM00zTl84NDZydyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9aWWpGWjBYTkVlR2UzTTNOXzg0NnJ3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfWllqRmFFWE5FZUdlM00zTl84NDZydyIgdHlwZT0iMTAzNCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9aWWpGYVVYTkVlR2UzTTNOXzg0NnJ3IiB0eXBlPSIxMDcxIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfWTZsZ3dFNERFZU9Ob2RFOTNXSm9WdyIgdHlwZT0iMzAwMiI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX1k2RDhVRTRERWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1k2bGd3VTRERWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYklzLUlFNERFZU9Ob2RFOTNXSm9WdyIgdHlwZT0iMzAwMiI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX2JJTk80RTRERWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2JJcy1JVTRERWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfWllqRmFrWE5FZUdlM00zTl84NDZydyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX1pZakZhMFhORWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX1pZakZiRVhORWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfWllqRmJVWE5FZUdlM00zTl84NDZydyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfWllqRmJrWE5FZUdlM00zTl84NDZydyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9aWWpGYjBYTkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfWllqRmNFWE5FZUdlM00zTl84NDZydyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfWllqRmNVWE5FZUdlM00zTl84NDZydyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9aWWpGY2tYTkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mWFZSQUViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZYVlJBVWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZlhWUkFrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX1pVaGhBRVhORWVHZTNNM05fODQ2cnciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1pZakZZVVhORWVHZTNNM05fODQ2cnciIHg9IjQyMyIgeT0iMjUxIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9EOGFDQUVYUEVlR2UzTTNOXzg0NnJ3IiB0eXBlPSIxMDI2IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0Q4YUNBa1hQRWVHZTNNM05fODQ2cnciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9EOGFDQTBYUEVlR2UzTTNOXzg0NnJ3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9EOGFDQkVYUEVlR2UzTTNOXzg0NnJ3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9EOGFDQlVYUEVlR2UzTTNOXzg0NnJ3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0Q4YUNCa1hQRWVHZTNNM05fODQ2cnciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRDhhQ0IwWFBFZUdlM00zTl84NDZydyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0Q4YUNDRVhQRWVHZTNNM05fODQ2cnciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfRDhhQ0NVWFBFZUdlM00zTl84NDZydyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0Q4YUNDa1hQRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9EOGFDQzBYUEVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9EOGFDREVYUEVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0Q4YUNEVVhQRWVHZTNNM05fODQ2cnciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0Q4YUNEa1hQRWVHZTNNM05fODQ2cnciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfRDhhQ0QwWFBFZUdlM00zTl84NDZydyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0Q4YUNFRVhQRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0Q4YUNFVVhQRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfRDhhQ0VrWFBFZUdlM00zTl84NDZydyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZlhhSmdFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mWGFKZ1ViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZYYUpna2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19EN1c1SUVYUEVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9EOGFDQVVYUEVlR2UzTTNOXzg0NnJ3IiB4PSI3MTAiIHk9IjI2MCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfOUlGSElFWFJFZUdlM00zTl84NDZydyIgdHlwZT0iMTAyNiIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il85SUZISWtYUkVlR2UzTTNOXzg0NnJ3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOUlGSEkwWFJFZUdlM00zTl84NDZydyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfOUlGSEpFWFJFZUdlM00zTl84NDZydyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOUlGSEpVWFJFZUdlM00zTl84NDZydyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il85SUZISmtYUkVlR2UzTTNOXzg0NnJ3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzlJRkhKMFhSRWVHZTNNM05fODQ2cnciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il85SUZIS0VYUkVlR2UzTTNOXzg0NnJ3IiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzlJRkhLVVhSRWVHZTNNM05fODQ2cnciIHR5cGU9IjEwNzEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il85SUZIS2tYUkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfOUlGSEswWFJFZUdlM00zTl84NDZydyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfOUlGSExFWFJFZUdlM00zTl84NDZydyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il85SUZITFVYUkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il85SUZITGtYUkVlR2UzTTNOXzg0NnJ3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzlJRkhMMFhSRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il85SUZITUVYUkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il85SUZITVVYUkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzlJRkhNa1hSRWVHZTNNM05fODQ2cnciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZYYi1zRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZlhiLXNVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mWGItc2tiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfOUhDbFVFWFJFZUdlM00zTl84NDZydyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfOUlGSElVWFJFZUdlM00zTl84NDZydyIgeD0iOTQwIiB5PSI0MTAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXy1BMmlNRVhSRWVHZTNNM05fODQ2cnciIHR5cGU9IjEwMjYiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfLUEyaU1rWFJFZUdlM00zTl84NDZydyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXy1BMmlNMFhSRWVHZTNNM05fODQ2cnciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXy1BMmlORVhSRWVHZTNNM05fODQ2cnciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXy1BMmlOVVhSRWVHZTNNM05fODQ2cnciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfLUEyaU5rWFJFZUdlM00zTl84NDZydyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tQTJpTjBYUkVlR2UzTTNOXzg0NnJ3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfLUEyaU9FWFJFZUdlM00zTl84NDZydyIgdHlwZT0iMTAzNCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il8tQTJpT1VYUkVlR2UzTTNOXzg0NnJ3IiB0eXBlPSIxMDcxIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfLUEyaU9rWFJFZUdlM00zTl84NDZydyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iXy1BMmlPMFhSRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iXy1BMmlQRVhSRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfLUEyaVBVWFJFZUdlM00zTl84NDZydyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfLUEyaVBrWFJFZUdlM00zTl84NDZydyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il8tQTJpUDBYUkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfLUEyaVFFWFJFZUdlM00zTl84NDZydyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfLUEyaVFVWFJFZUdlM00zTl84NDZydyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8tQTJpUWtYUkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mWGR6NEViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZYZHo0VWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZlhkejRrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXy1BUXNVRVhSRWVHZTNNM05fODQ2cnciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXy1BMmlNVVhSRWVHZTNNM05fODQ2cnciIHg9Ijc0MCIgeT0iNDEwIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9GamhpRUVYVkVlR2UzTTNOXzg0NnJ3IiB0eXBlPSIxMDI2IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0ZqaGlFa1hWRWVHZTNNM05fODQ2cnciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9GamhpRTBYVkVlR2UzTTNOXzg0NnJ3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9GamhpRkVYVkVlR2UzTTNOXzg0NnJ3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9GamhpRlVYVkVlR2UzTTNOXzg0NnJ3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0ZqaGlGa1hWRWVHZTNNM05fODQ2cnciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRmpoaUYwWFZFZUdlM00zTl84NDZydyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0ZqaGlHRVhWRWVHZTNNM05fODQ2cnciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfRmpoaUdVWFZFZUdlM00zTl84NDZydyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0ZqaGlHa1hWRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9GamhpRzBYVkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9GamhpSEVYVkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0ZqaGlIVVhWRWVHZTNNM05fODQ2cnciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0ZqaGlIa1hWRWVHZTNNM05fODQ2cnciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfRmpoaUgwWFZFZUdlM00zTl84NDZydyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0ZqaGlJRVhWRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0ZqaGlJVVhWRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfRmpoaUlrWFZFZUdlM00zTl84NDZydyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZlhmcEVFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mWGZwRVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZYZnBFa2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19GaWZBUUVYVkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9GamhpRVVYVkVlR2UzTTNOXzg0NnJ3IiB4PSIzMTUiIHk9IjQyMCIgd2lkdGg9IjE0MSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfbHNXZnNFWFZFZUdlM00zTl84NDZydyIgdHlwZT0iMTAyNiIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9sc1dmc2tYVkVlR2UzTTNOXzg0NnJ3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbHNXZnMwWFZFZUdlM00zTl84NDZydyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbHNXZnRFWFZFZUdlM00zTl84NDZydyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbHNXZnRVWFZFZUdlM00zTl84NDZydyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9sc1dmdGtYVkVlR2UzTTNOXzg0NnJ3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2xzV2Z0MFhWRWVHZTNNM05fODQ2cnciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9sc1dmdUVYVkVlR2UzTTNOXzg0NnJ3IiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2xzV2Z1VVhWRWVHZTNNM05fODQ2cnciIHR5cGU9IjEwNzEiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9TUF9fUkVYV0VlR2UzTTNOXzg0NnJ3IiB0eXBlPSIzMDAyIiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19fTzZhOFBjUEVkLUowNlU1SE1fby1RIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9TUF9fUlVYV0VlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2xzV2Z1a1hWRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9sc1dmdTBYVkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9sc1dmdkVYVkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2xzV2Z2VVhWRWVHZTNNM05fODQ2cnciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2xzV2Z2a1hWRWVHZTNNM05fODQ2cnciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfbHNXZnYwWFZFZUdlM00zTl84NDZydyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2xzV2Z3RVhWRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2xzV2Z3VVhWRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbHNXZndrWFZFZUdlM00zTl84NDZydyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZlhpRlVFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mWGlGVVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZYaUZVa2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19sclRXMEVYVkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9sc1dmc1VYVkVlR2UzTTNOXzg0NnJ3IiB4PSI0NSIgeT0iNDEwIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9vdXprRUVYVkVlR2UzTTNOXzg0NnJ3IiB0eXBlPSIxMDI2IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX291emtFa1hWRWVHZTNNM05fODQ2cnciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vdXprRTBYVkVlR2UzTTNOXzg0NnJ3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9vdXprRkVYVkVlR2UzTTNOXzg0NnJ3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vdXprRlVYVkVlR2UzTTNOXzg0NnJ3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX291emtGa1hWRWVHZTNNM05fODQ2cnciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb3V6a0YwWFZFZUdlM00zTl84NDZydyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX291emtHRVhWRWVHZTNNM05fODQ2cnciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfb3V6a0dVWFZFZUdlM00zTl84NDZydyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX291emtHa1hWRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9vdXprRzBYVkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9vdXprSEVYVkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX291emtIVVhWRWVHZTNNM05fODQ2cnciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX291emtIa1hWRWVHZTNNM05fODQ2cnciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfb3V6a0gwWFZFZUdlM00zTl84NDZydyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX291emtJRVhWRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX291emtJVVhWRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfb3V6a0lrWFZFZUdlM00zTl84NDZydyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZlhraGtFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mWGtoa1ViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZYa2hra2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19vdHhDUUVYVkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9vdXprRVVYVkVlR2UzTTNOXzg0NnJ3IiB4PSIxMTAiIHk9IjcyNSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfNXBFVGdFWGFFZUdlM00zTl84NDZydyIgdHlwZT0iMTAyNiIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il81cEVUZ2tYYUVlR2UzTTNOXzg0NnJ3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNXBPRWdFWGFFZUdlM00zTl84NDZydyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNXBPRWdVWGFFZUdlM00zTl84NDZydyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNXBPRWdrWGFFZUdlM00zTl84NDZydyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il81cE9FZzBYYUVlR2UzTTNOXzg0NnJ3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzVwT0VoRVhhRWVHZTNNM05fODQ2cnciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il81cE9FaFVYYUVlR2UzTTNOXzg0NnJ3IiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzVwT0Voa1hhRWVHZTNNM05fODQ2cnciIHR5cGU9IjEwNzEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il81cE9FaDBYYUVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfNXBPRWlFWGFFZUdlM00zTl84NDZydyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfNXBPRWlVWGFFZUdlM00zTl84NDZydyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il81cE9FaWtYYUVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il81cE9FaTBYYUVlR2UzTTNOXzg0NnJ3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzVwT0VqRVhhRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il81cE9FalVYYUVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il81cE9FamtYYUVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzVwT0VqMFhhRWVHZTNNM05fODQ2cnciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZYbVd3RWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZlhtV3dVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mWG1Xd2tiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfNW9CeHNFWGFFZUdlM00zTl84NDZydyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfNXBFVGdVWGFFZUdlM00zTl84NDZydyIgeD0iMjMwIiB5PSI3MjUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzZxeVBNRVhhRWVHZTNNM05fODQ2cnciIHR5cGU9IjEwMjYiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNnF5UE1rWGFFZUdlM00zTl84NDZydyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZxeVBNMFhhRWVHZTNNM05fODQ2cnciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzZxeVBORVhhRWVHZTNNM05fODQ2cnciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZxeVBOVVhhRWVHZTNNM05fODQ2cnciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNnF5UE5rWGFFZUdlM00zTl84NDZydyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il82cXlQTjBYYUVlR2UzTTNOXzg0NnJ3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfNnF5UE9FWGFFZUdlM00zTl84NDZydyIgdHlwZT0iMTAzNCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il82cXlQT1VYYUVlR2UzTTNOXzg0NnJ3IiB0eXBlPSIxMDcxIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfNnF5UE9rWGFFZUdlM00zTl84NDZydyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iXzZxeVBPMFhhRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iXzZxeVBQRVhhRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfNnF5UFBVWGFFZUdlM00zTl84NDZydyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfNnF5UFBrWGFFZUdlM00zTl84NDZydyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il82cXlQUDBYYUVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfNnF5UFFFWGFFZUdlM00zTl84NDZydyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfNnF5UFFVWGFFZUdlM00zTl84NDZydyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il82cXlQUWtYYUVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mWG9MOEViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZYb0w4VWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZlhvTDhrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzZwdnRZRVhhRWVHZTNNM05fODQ2cnciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzZxeVBNVVhhRWVHZTNNM05fODQ2cnciIHg9IjQ4NSIgeT0iNTY1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9ZdDlINEVYYkVlR2UzTTNOXzg0NnJ3IiB0eXBlPSIxMDI2IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1l0OUg0a1hiRWVHZTNNM05fODQ2cnciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ZdDlINDBYYkVlR2UzTTNOXzg0NnJ3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9ZdDlINUVYYkVlR2UzTTNOXzg0NnJ3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ZdDlINVVYYkVlR2UzTTNOXzg0NnJ3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1l0OUg1a1hiRWVHZTNNM05fODQ2cnciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWXQ5SDUwWGJFZUdlM00zTl84NDZydyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1l0OUg2RVhiRWVHZTNNM05fODQ2cnciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfWXQ5SDZVWGJFZUdlM00zTl84NDZydyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1l0OUg2a1hiRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9ZdDlINjBYYkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9ZdDlIN0VYYkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1l0OUg3VVhiRWVHZTNNM05fODQ2cnciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1l0OUg3a1hiRWVHZTNNM05fODQ2cnciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfWXQ5SDcwWGJFZUdlM00zTl84NDZydyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX1l0OUg4RVhiRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX1l0OUg4VVhiRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfWXQ5SDhrWGJFZUdlM00zTl84NDZydyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZlhxQklFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mWHFCSVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZYcUJJa2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19Zc3cxRUVYYkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9ZdDlINFVYYkVlR2UzTTNOXzg0NnJ3IiB4PSI3MDAiIHk9IjU5MCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYUpjMWdFWGJFZUdlM00zTl84NDZydyIgdHlwZT0iMTAyNiIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9hSmMxZ2tYYkVlR2UzTTNOXzg0NnJ3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYUpjMWcwWGJFZUdlM00zTl84NDZydyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYUpjMWhFWGJFZUdlM00zTl84NDZydyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYUpjMWhVWGJFZUdlM00zTl84NDZydyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9hSmMxaGtYYkVlR2UzTTNOXzg0NnJ3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2FKYzFoMFhiRWVHZTNNM05fODQ2cnciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9hSmMxaUVYYkVlR2UzTTNOXzg0NnJ3IiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2FKYzFpVVhiRWVHZTNNM05fODQ2cnciIHR5cGU9IjEwNzEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9hSmMxaWtYYkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfYUpjMWkwWGJFZUdlM00zTl84NDZydyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfYUpjMWpFWGJFZUdlM00zTl84NDZydyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9hSmMxalVYYkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9hSmMxamtYYkVlR2UzTTNOXzg0NnJ3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2FKYzFqMFhiRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9hSmMxa0VYYkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9hSmMxa1VYYkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2FKYzFra1hiRWVHZTNNM05fODQ2cnciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZYclBRRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZlhyUFFVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mWHJQUWtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfYUlRaXNFWGJFZUdlM00zTl84NDZydyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfYUpjMWdVWGJFZUdlM00zTl84NDZydyIgeD0iNzEwIiB5PSI3NDUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX21BWkc4RVhlRWVHZTNNM05fODQ2cnciIHR5cGU9IjEwMjYiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbUFaRzhrWGVFZUdlM00zTl84NDZydyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX21BWkc4MFhlRWVHZTNNM05fODQ2cnciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX21BWkc5RVhlRWVHZTNNM05fODQ2cnciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX21BWkc5VVhlRWVHZTNNM05fODQ2cnciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbUFaRzlrWGVFZUdlM00zTl84NDZydyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9tQVpHOTBYZUVlR2UzTTNOXzg0NnJ3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbUFaRy1FWGVFZUdlM00zTl84NDZydyIgdHlwZT0iMTAzNCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9tQVpHLVVYZUVlR2UzTTNOXzg0NnJ3IiB0eXBlPSIxMDcxIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfbUFaRy1rWGVFZUdlM00zTl84NDZydyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX21BWkctMFhlRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX21BWkdfRVhlRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbUFaR19VWGVFZUdlM00zTl84NDZydyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfbUFaR19rWGVFZUdlM00zTl84NDZydyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9tQVpHXzBYZUVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfbUFaSEFFWGVFZUdlM00zTl84NDZydyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfbUFaSEFVWGVFZUdlM00zTl84NDZydyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9tQVpIQWtYZUVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mWHRFY0ViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZYdEVjVWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZlh0RWNrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX2xfTTBJRVhlRWVHZTNNM05fODQ2cnciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX21BWkc4VVhlRWVHZTNNM05fODQ2cnciIHg9IjM2NSIgeT0iNzI1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9MRWVnMEVYakVlR2UzTTNOXzg0NnJ3IiB0eXBlPSIxMDI2IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0xFZWcwa1hqRWVHZTNNM05fODQ2cnciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9MRWVnMDBYakVlR2UzTTNOXzg0NnJ3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9MRWVnMUVYakVlR2UzTTNOXzg0NnJ3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9MRWVnMVVYakVlR2UzTTNOXzg0NnJ3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0xFZWcxa1hqRWVHZTNNM05fODQ2cnciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTEVlZzEwWGpFZUdlM00zTl84NDZydyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0xFZWcyRVhqRWVHZTNNM05fODQ2cnciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfTEVlZzJVWGpFZUdlM00zTl84NDZydyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0xFZWcya1hqRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9MRWVnMjBYakVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9MRWVnM0VYakVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0xFZWczVVhqRWVHZTNNM05fODQ2cnciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0xFZWcza1hqRWVHZTNNM05fODQ2cnciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfTEVlZzMwWGpFZUdlM00zTl84NDZydyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0xFZWc0RVhqRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0xFZWc0VVhqRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTEVlZzRrWGpFZUdlM00zTl84NDZydyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZlh1NW9FYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mWHU1b1ViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZYdTVva2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19MRFNPQUVYakVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9MRWVnMFVYakVlR2UzTTNOXzg0NnJ3IiB4PSIyNDUiIHk9IjU2NSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfMmJTR3NGdkVFZUczWkw4Q1FoaXRuUSIgdHlwZT0iMTAyNiIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8yYlNHc2x2RUVlRzNaTDhDUWhpdG5RIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMmJTR3MxdkVFZUczWkw4Q1FoaXRuUSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMmJTR3RGdkVFZUczWkw4Q1FoaXRuUSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMmJTR3RWdkVFZUczWkw4Q1FoaXRuUSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8yYlNHdGx2RUVlRzNaTDhDUWhpdG5RIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzJiU0d0MXZFRWVHM1pMOENRaGl0blEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8yYlNHdUZ2RUVlRzNaTDhDUWhpdG5RIiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzJiU0d1VnZFRWVHM1pMOENRaGl0blEiIHR5cGU9IjEwNzEiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il91RGE3c0U0REVlT05vZEU5M1dKb1Z3IiB0eXBlPSIzMDAyIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfa3RqdHdCRXpFZUdlNWFsMFNBTmhYUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdURhN3NVNERFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il8yYlNHdWx2RUVlRzNaTDhDUWhpdG5RIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfMmJTR3UxdkVFZUczWkw4Q1FoaXRuUSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfMmJTR3ZGdkVFZUczWkw4Q1FoaXRuUSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8yYlNHdlZ2RUVlRzNaTDhDUWhpdG5RIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il8yYlNHdmx2RUVlRzNaTDhDUWhpdG5RIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzJiU0d2MXZFRWVHM1pMOENRaGl0blEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il8yYlNHd0Z2RUVlRzNaTDhDUWhpdG5RIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il8yYlNHd1Z2RUVlRzNaTDhDUWhpdG5RIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzJiU0d3bHZFRWVHM1pMOENRaGl0blEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZYd3UwRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZlh3dTBVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mWHd1MGtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfRWRuWW9QY0pFZC1KMDZVNUhNX28tUSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMmJTR3NWdkVFZUczWkw4Q1FoaXRuUSIgeD0iODIwIiB5PSI1OTAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3o4bHdnQUJfRWVXLVFzamhGUENfZ2ciIHR5cGU9IjEwMzEiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3o5TTBnQUJfRWVXLVFzamhGUENfZ2ciIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il96OU0wZ1FCX0VlVy1Rc2poRlBDX2dnIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il96OU5ia0FCX0VlVy1Rc2poRlBDX2dnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iU3RhbmRhcmRQcm9maWxlOjpNZXRhY2xhc3MiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il96OU5ia1FCX0VlVy1Rc2poRlBDX2dnIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfejlOYmtnQl9FZVctUXNqaEZQQ19nZyIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3o5TmJrd0JfRWVXLVFzamhGUENfZ2ciIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il96OUp4TUFCX0VlVy1Rc2poRlBDX2dnIiB0eXBlPSIxMDg0Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvVU1MLm1ldGFtb2RlbC51bWwjQ2xhc3MiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3o5S1lRQUJfRWVXLVFzamhGUENfZ2ciIHg9IjU2NyIgeT0iMTAyIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX1lPVjhFVVhORWVHZTNNM05fODQ2cnciLz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb2ZpbGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI18zUU9IRVBjRUVkLUowNlU1SE1fby1RIi8+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX0dfQlBzRVhWRWVHZTNNM05fODQ2cnciIHR5cGU9IjQwMDIiIHNvdXJjZT0iXzlJRkhJRVhSRWVHZTNNM05fODQ2cnciIHRhcmdldD0iX1pZakZZRVhORWVHZTNNM05fODQ2cnciIHJvdXRpbmc9IlRyZWUiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9HX0JQczBYVkVlR2UzTTNOXzg0NnJ3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfR19CUHRFWFZFZUdlM00zTl84NDZydyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX0dfQlBzVVhWRWVHZTNNM05fODQ2cnciIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19HLVJvMEVYVkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9HX0JQc2tYVkVlR2UzTTNOXzg0NnJ3IiBwb2ludHM9IlstMzQsIC0yMSwgMTM0LCA4NF0kWy0xNjUsIC05MCwgMywgMTVdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfSENBU1FFWFZFZUdlM00zTl84NDZydyIgaWQ9IigwLjUzLDAuMjEpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfSENBU1FVWFZFZUdlM00zTl84NDZydyIgaWQ9IigwLjU3LDAuODUpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfSHY1VEFFWFZFZUdlM00zTl84NDZydyIgdHlwZT0iNDAwMiIgc291cmNlPSJfLUEyaU1FWFJFZUdlM00zTl84NDZydyIgdGFyZ2V0PSJfWllqRllFWE5FZUdlM00zTl84NDZydyIgcm91dGluZz0iVHJlZSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0h2NVRBMFhWRWVHZTNNM05fODQ2cnciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9IdjVUQkVYVkVlR2UzTTNOXzg0NnJ3IiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfSHY1VEFVWFZFZUdlM00zTl84NDZydyIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX0h1MnhNRVhWRWVHZTNNM05fODQ2cnciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX0h2NVRBa1hWRWVHZTNNM05fODQ2cnciIHBvaW50cz0iWy0xLCAtMTcsIDAsIDgwXSRbMiwgLTg2LCAzLCAxMV0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9IekJmZ0VYVkVlR2UzTTNOXzg0NnJ3IiBpZD0iKDAuNDMsMC4xNykiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9IekJmZ1VYVkVlR2UzTTNOXzg0NnJ3IiBpZD0iKDAuNjQsMC44OSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9Jc18wY0VYVkVlR2UzTTNOXzg0NnJ3IiB0eXBlPSI0MDAyIiBzb3VyY2U9Il9GamhpRUVYVkVlR2UzTTNOXzg0NnJ3IiB0YXJnZXQ9Il9aWWpGWUVYTkVlR2UzTTNOXzg0NnJ3IiByb3V0aW5nPSJUcmVlIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfSXNfMGMwWFZFZUdlM00zTl84NDZydyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMDciPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0lzXzBkRVhWRWVHZTNNM05fODQ2cnciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9Jc18wY1VYVkVlR2UzTTNOXzg0NnJ3IiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfSXNqSWdFWFZFZUdlM00zTl84NDZydyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfSXNfMGNrWFZFZUdlM00zTl84NDZydyIgcG9pbnRzPSJbMTQsIC0xNiwgLTcwLCA3N10kWzc4LCAtODUsIC02LCA4XSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX0l0bHFVRVhWRWVHZTNNM05fODQ2cnciIGlkPSIoMC40NywwLjE2KSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX0l0bHFVVVhWRWVHZTNNM05fODQ2cnciIGlkPSIoMC4yMywwLjkyKSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX211TmxVRVhWRWVHZTNNM05fODQ2cnciIHR5cGU9IjQwMDIiIHNvdXJjZT0iX2xzV2ZzRVhWRWVHZTNNM05fODQ2cnciIHRhcmdldD0iX1pZakZZRVhORWVHZTNNM05fODQ2cnciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9tdU5sVTBYVkVlR2UzTTNOXzg0NnJ3IiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9tdU5sVkVYVkVlR2UzTTNOXzg0NnJ3IiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfbXVObFVVWFZFZUdlM00zTl84NDZydyIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX210VU5jRVhWRWVHZTNNM05fODQ2cnciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX211TmxVa1hWRWVHZTNNM05fODQ2cnciIHBvaW50cz0iWzAsIC0xOSwgLTMyMywgMTEwXSRbMCwgLTEyOSwgLTMyMywgMF0kWzMxOSwgLTEyOSwgLTQsIDBdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfbXhmaTBFWFZFZUdlM00zTl84NDZydyIgaWQ9IigwLjMyLDAuMTUpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfbXhmaTBVWFZFZUdlM00zTl84NDZydyIgaWQ9IigwLjA0LDAuNDkpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfcVdxNXdFWFZFZUdlM00zTl84NDZydyIgdHlwZT0iNDAwMiIgc291cmNlPSJfb3V6a0VFWFZFZUdlM00zTl84NDZydyIgdGFyZ2V0PSJfTEVlZzBFWGpFZUdlM00zTl84NDZydyIgcm91dGluZz0iVHJlZSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3FXcTV3MFhWRWVHZTNNM05fODQ2cnciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9xV3E1eEVYVkVlR2UzTTNOXzg0NnJ3IiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfcVdxNXdVWFZFZUdlM00zTl84NDZydyIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3FWeGg0RVhWRWVHZTNNM05fODQ2cnciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX3FXcTV3a1hWRWVHZTNNM05fODQ2cnciLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9xWXdrY0VYVkVlR2UzTTNOXzg0NnJ3IiBpZD0iKDAuNDk1LDAuMCkiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9xWXdrY1VYVkVlR2UzTTNOXzg0NnJ3IiBpZD0iKDAuNTQsMC45NSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9DYlMtSUVYYkVlR2UzTTNOXzg0NnJ3IiB0eXBlPSI0MDAyIiBzb3VyY2U9Il81cEVUZ0VYYUVlR2UzTTNOXzg0NnJ3IiB0YXJnZXQ9Il9MRWVnMEVYakVlR2UzTTNOXzg0NnJ3IiByb3V0aW5nPSJUcmVlIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfQ2JTLUkwWGJFZUdlM00zTl84NDZydyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMDciPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0NiUy1KRVhiRWVHZTNNM05fODQ2cnciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9DYlMtSVVYYkVlR2UzTTNOXzg0NnJ3IiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfQ2FqWFFFWGJFZUdlM00zTl84NDZydyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfQ2JTLUlrWGJFZUdlM00zTl84NDZydyIgcG9pbnRzPSJbLTEzLCAtMTUsIDgxLCAxMDFdJFstODgsIC0xMDYsIDYsIDEwXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX0NkMVV3RVhiRWVHZTNNM05fODQ2cnciIGlkPSIoMC4yLDAuMTUpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfQ2QxVXdVWGJFZUdlM00zTl84NDZydyIgaWQ9IigwLjg3LDAuNzgpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfRFc1cXdFWGJFZUdlM00zTl84NDZydyIgdHlwZT0iNDAwMiIgc291cmNlPSJfNnF5UE1FWGFFZUdlM00zTl84NDZydyIgdGFyZ2V0PSJfRmpoaUVFWFZFZUdlM00zTl84NDZydyIgcm91dGluZz0iVHJlZSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0RXNXF3MFhiRWVHZTNNM05fODQ2cnciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9EVzVxeEVYYkVlR2UzTTNOXzg0NnJ3IiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfRFc1cXdVWGJFZUdlM00zTl84NDZydyIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX0RXS0Q0RVhiRWVHZTNNM05fODQ2cnciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX0RXNXF3a1hiRWVHZTNNM05fODQ2cnciIHBvaW50cz0iWy0zNSwgLTE3LCAyMjgsIDEwN10kWy0yNTQsIC0xMTEsIDksIDEzXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX0RhZWpNRVhiRWVHZTNNM05fODQ2cnciIGlkPSIoMC4zNSwwLjE5KSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX0RhZWpNVVhiRWVHZTNNM05fODQ2cnciIGlkPSIoMC42MDk5MjkwNzgwMTQxODQ0LDAuOTMpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfYm9YcWtFWGJFZUdlM00zTl84NDZydyIgdHlwZT0iNDAwMiIgc291cmNlPSJfWXQ5SDRFWGJFZUdlM00zTl84NDZydyIgdGFyZ2V0PSJfLUEyaU1FWFJFZUdlM00zTl84NDZydyIgcm91dGluZz0iVHJlZSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2JvWHFrMFhiRWVHZTNNM05fODQ2cnciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9ib1hxbEVYYkVlR2UzTTNOXzg0NnJ3IiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfYm9YcWtVWGJFZUdlM00zTl84NDZydyIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX2Jub0RzRVhiRWVHZTNNM05fODQ2cnciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2JvWHFra1hiRWVHZTNNM05fODQ2cnciIHBvaW50cz0iWy0zLCAtMTMsIDAsIDU5XSRbMCwgLTU4LCAzLCAxNF0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9icnl5QUVYYkVlR2UzTTNOXzg0NnJ3IiBpZD0iKDAuMzksMC4xMykiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9icnl5QVVYYkVlR2UzTTNOXzg0NnJ3IiBpZD0iKDAuNiwwLjg2KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2NKS0RjRVhiRWVHZTNNM05fODQ2cnciIHR5cGU9IjQwMDIiIHNvdXJjZT0iX2FKYzFnRVhiRWVHZTNNM05fODQ2cnciIHRhcmdldD0iX1l0OUg0RVhiRWVHZTNNM05fODQ2cnciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9jSlROWUVYYkVlR2UzTTNOXzg0NnJ3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfY0pUTllVWGJFZUdlM00zTl84NDZydyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2NKS0RjVVhiRWVHZTNNM05fODQ2cnciIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19jSVoxZ0VYYkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9jSktEY2tYYkVlR2UzTTNOXzg0NnJ3IiBwb2ludHM9IlstMSwgLTE4LCA3LCA4Ml0kWy0xLCAtNTAsIDcsIDUwXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2NMLXQ4RVhiRWVHZTNNM05fODQ2cnciIGlkPSIoMC41MSwwLjE4KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX25NUFBBRVhlRWVHZTNNM05fODQ2cnciIHR5cGU9IjQwMDIiIHNvdXJjZT0iX21BWkc4RVhlRWVHZTNNM05fODQ2cnciIHRhcmdldD0iX0xFZWcwRVhqRWVHZTNNM05fODQ2cnciIHJvdXRpbmc9IlRyZWUiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9uTVBQQTBYZUVlR2UzTTNOXzg0NnJ3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfbk1QUEJFWGVFZUdlM00zTl84NDZydyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX25NUFBBVVhlRWVHZTNNM05fODQ2cnciIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19uTGZvSUVYZUVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9uTVBQQWtYZUVlR2UzTTNOXzg0NnJ3IiBwb2ludHM9IlstNSwgLTEyLCAxMDMsIDI2MF0kWy0xMDAsIC0yNDgsIDgsIDI0XSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX25Ra1ZZRVhlRWVHZTNNM05fODQ2cnciIGlkPSIoMC40OSwwLjEyKSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX25Ra1ZZVVhlRWVHZTNNM05fODQ2cnciIGlkPSIoMC44LDAuOTcpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfT0FyelFFWGpFZUdlM00zTl84NDZydyIgdHlwZT0iNDAwMiIgc291cmNlPSJfTEVlZzBFWGpFZUdlM00zTl84NDZydyIgdGFyZ2V0PSJfRmpoaUVFWFZFZUdlM00zTl84NDZydyIgcm91dGluZz0iVHJlZSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX09BcnpRMFhqRWVHZTNNM05fODQ2cnciIHR5cGU9IjYwMDciPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX09BcnpSRVhqRWVHZTNNM05fODQ2cnciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9PQXJ6UVVYakVlR2UzTTNOXzg0NnJ3IiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfTl95YllFWGpFZUdlM00zTl84NDZydyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfT0FyelFrWGpFZUdlM00zTl84NDZydyIgcG9pbnRzPSJbMzQsIC0xNiwgLTE2MCwgNzJdJFsxODMsIC03NCwgLTExLCAxNF0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9PRDlKc0VYakVlR2UzTTNOXzg0NnJ3IiBpZD0iKDAuNjYsMC4yKSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX09EOUpzVVhqRWVHZTNNM05fODQ2cnciIGlkPSIoMC4zMTIwNTY3Mzc1ODg2NTI1LDAuODYpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfNk9LaWNGdkVFZUczWkw4Q1FoaXRuUSIgdHlwZT0iNDAwMiIgc291cmNlPSJfMmJTR3NGdkVFZUczWkw4Q1FoaXRuUSIgdGFyZ2V0PSJfLUEyaU1FWFJFZUdlM00zTl84NDZydyIgcm91dGluZz0iVHJlZSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzZPS2ljMXZFRWVHM1pMOENRaGl0blEiIHR5cGU9IjYwMDciPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzZPS2lkRnZFRWVHM1pMOENRaGl0blEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il82T0tpY1Z2RUVlRzNaTDhDUWhpdG5RIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfNkxveTRGdkVFZUczWkw4Q1FoaXRuUSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfNk9LaWNsdkVFZUczWkw4Q1FoaXRuUSIgcG9pbnRzPSJbLTExLCAtMTEsIDEyMSwgMTMwXSRbLTEyMywgLTkxLCA5LCA1MF0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il82UjVMNEZ2RUVlRzNaTDhDUWhpdG5RIiBpZD0iKDAuMzIsMC4xMSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il8xWUtXb0FCX0VlVy1Rc2poRlBDX2dnIiB0eXBlPSIxMDEzIiBzb3VyY2U9Il9aWWpGWUVYTkVlR2UzTTNOXzg0NnJ3IiB0YXJnZXQ9Il96OGx3Z0FCX0VlVy1Rc2poRlBDX2dnIj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfMVlLV29RQl9FZVctUXNqaEZQQ19nZyIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFeHRlbnNpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI18xWGlFZ0FCX0VlVy1Rc2poRlBDX2dnIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il8xWUtXb2dCX0VlVy1Rc2poRlBDX2dnIiBwb2ludHM9IlsxMCwgLTEyLCAtODgsIDEwM10kWzk1LCAtMTExLCAtMywgNF0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il8xWVhLOEFCX0VlVy1Rc2poRlBDX2dnIiBpZD0iKDAuNTg2OTU2NTIxNzM5MTMwNSwwLjExMTExMTExMTExMTExMTEpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfMVlZWkVBQl9FZVctUXNqaEZQQ19nZyIgaWQ9IigwLjM1LDAuOTIpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfMnE5YlFBQl9FZVctUXNqaEZQQ19nZyIgdHlwZT0iMTAxMyIgc291cmNlPSJfRDhhQ0FFWFBFZUdlM00zTl84NDZydyIgdGFyZ2V0PSJfejhsd2dBQl9FZVctUXNqaEZQQ19nZyI+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iXzJxOWJRUUJfRWVXLVFzamhGUENfZ2ciLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RXh0ZW5zaW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfMnF6RE1BQl9FZVctUXNqaEZQQ19nZyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfMnE5YlFnQl9FZVctUXNqaEZQQ19nZyIgcG9pbnRzPSJbLTE2LCAtMTYsIDExNCwgMTE3XSRbLTEyOCwgLTEyNCwgMiwgOV0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il8yckh6VUFCX0VlVy1Rc2poRlBDX2dnIiBpZD0iKDAuNDEsMC4xNikiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il8ycklhWUFCX0VlVy1Rc2poRlBDX2dnIiBpZD0iKDAuNTQsMC44MikiLz4KKyAgICA8L2VkZ2VzPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX1dfMDZjRWFSRWVHMVJ2eEtnY0RabXciIHR5cGU9IlBhcHlydXNVTUxQcm9maWxlRGlhZ3JhbSIgbmFtZT0iUGxhdGZvcm0iIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX29vdlI0RWFSRWVHMVJ2eEtnY0RabXciIHR5cGU9IjEwMjYiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfb292UjRrYVJFZUcxUnZ4S2djRFptdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29vdlI0MGFSRWVHMVJ2eEtnY0RabXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX29vdlI1RWFSRWVHMVJ2eEtnY0RabXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29vdlI1VWFSRWVHMVJ2eEtnY0RabXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfb292UjVrYVJFZUcxUnZ4S2djRFptdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vb3ZSNTBhUkVlRzFSdnhLZ2NEWm13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfb292UjZFYVJFZUcxUnZ4S2djRFptdyIgdHlwZT0iMTAzNCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9vb3ZSNlVhUkVlRzFSdnhLZ2NEWm13IiB0eXBlPSIxMDcxIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfWWQzbFlMdlFFZUt0XzYxVEVyUmZ0dyIgdHlwZT0iMzAwMiI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX1lkdDBZTHZRRWVLdF82MVRFclJmdHciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1lkM2xZYnZRRWVLdF82MVRFclJmdHciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfb292UjZrYVJFZUcxUnZ4S2djRFptdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX29vdlI2MGFSRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX29vdlI3RWFSRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfb292UjdVYVJFZUcxUnZ4S2djRFptdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfb292UjdrYVJFZUcxUnZ4S2djRFptdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9vb3ZSNzBhUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfb292UjhFYVJFZUcxUnZ4S2djRFptdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfb292UjhVYVJFZUcxUnZ4S2djRFptdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9vb3ZSOGthUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mYlRMQUViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZiVExBVWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZmJUTEFrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX29tcU9RRWFSRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX29vdlI0VWFSRWVHMVJ2eEtnY0RabXciIHg9IjMxNSIgeT0iMjgwIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9yTmpZQUVhUkVlRzFSdnhLZ2NEWm13IiB0eXBlPSIxMDMxIiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3JOallBa2FSRWVHMVJ2eEtnY0RabXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9yTmpZQTBhUkVlRzFSdnhLZ2NEWm13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9yTmpZQkVhUkVlRzFSdnhLZ2NEWm13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9yTmpZQlVhUkVlRzFSdnhLZ2NEWm13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3JOallCa2FSRWVHMVJ2eEtnY0RabXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfck5qWUIwYVJFZUcxUnZ4S2djRFptdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9yTnNoOEVhUkVlRzFSdnhLZ2NEWm13IiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb2FiR2NBZmJFZUtuU05aRFhZX1lUZyIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb2FiR2NRZmJFZUtuU05aRFhZX1lUZyIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29hYkdjZ2ZiRWVLblNOWkRYWV9ZVGciIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vYWJHY3dmYkVlS25TTlpEWFlfWVRnIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb2FiR2RBZmJFZUtuU05aRFhZX1lUZyIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3JOallDRWFSRWVHMVJ2eEtnY0RabXciIHR5cGU9IjEwODQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZmJWblFFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IkFwcGxpZWRTdGVyZW90eXBlQ29tcGFydGVtZW50Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZmJWblFVYk1FZU84OWJkUHBCOGdUZyIgc2hvd1RpdGxlPSJ0cnVlIi8+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJzdGFuZGFyZDpNZXRhY2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNfU2tzV01LdEtFZUdGNHV3Sm9iMzRNdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mYlZuUWtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mYldPVUViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZiV09VVWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZmJXT1VrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNOb2RlIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9yTmpZQ1VhUkVlRzFSdnhLZ2NEWm13IiB4PSIzNjUiIHk9IjE2NSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfdlBvdFlFYVJFZUcxUnZ4S2djRFptdyIgdHlwZT0iMTAyNiIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il92UG90WWthUkVlRzFSdnhLZ2NEWm13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdlBvdFkwYVJFZUcxUnZ4S2djRFptdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdlBvdFpFYVJFZUcxUnZ4S2djRFptdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdlBvdFpVYVJFZUcxUnZ4S2djRFptdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il92UG90WmthUkVlRzFSdnhLZ2NEWm13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3ZQb3RaMGFSRWVHMVJ2eEtnY0RabXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il92UG90YUVhUkVlRzFSdnhLZ2NEWm13IiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3ZQb3RhVWFSRWVHMVJ2eEtnY0RabXciIHR5cGU9IjEwNzEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il92UG90YWthUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfdlBvdGEwYVJFZUcxUnZ4S2djRFptdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfdlBvdGJFYVJFZUcxUnZ4S2djRFptdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il92UG90YlVhUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il92UG90YmthUkVlRzFSdnhLZ2NEWm13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3ZQb3RiMGFSRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il92UG90Y0VhUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il92UG90Y1VhUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3ZQb3Rja2FSRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZiWXFrRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZmJZcWtVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mYllxa2tiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfR29wRndQY0pFZC1KMDZVNUhNX28tUSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfdlBvdFlVYVJFZUcxUnZ4S2djRFptdyIgeD0iMjI1IiB5PSIxMzUiIGhlaWdodD0iODAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzBMMklzRWFSRWVHMVJ2eEtnY0RabXciIHR5cGU9IjEwMjYiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMEwySXNrYVJFZUcxUnZ4S2djRFptdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzBMMklzMGFSRWVHMVJ2eEtnY0RabXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzBMMkl0RWFSRWVHMVJ2eEtnY0RabXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzBMMkl0VWFSRWVHMVJ2eEtnY0RabXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMEwySXRrYVJFZUcxUnZ4S2djRFptdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wTDJJdDBhUkVlRzFSdnhLZ2NEWm13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfMEwySXVFYVJFZUcxUnZ4S2djRFptdyIgdHlwZT0iMTAzNCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il8wTDJJdVVhUkVlRzFSdnhLZ2NEWm13IiB0eXBlPSIxMDcxIj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfbkUzQUlFYVlFZUcxUnZ4S2djRFptdyIgdHlwZT0iMzAwMiIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfbkNua2NFYVlFZUcxUnZ4S2djRFptdyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfbkUzQUlVYVlFZUcxUnZ4S2djRFptdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il8wTDJJdWthUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfMEwySXUwYVJFZUcxUnZ4S2djRFptdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfMEwySXZFYVJFZUcxUnZ4S2djRFptdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8wTDJJdlVhUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il8wTDJJdmthUkVlRzFSdnhLZ2NEWm13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzBMMkl2MGFSRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il8wTDJJd0VhUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il8wTDJJd1VhUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzBMMkl3a2FSRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZiYWZ3RWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZmJhZndVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mYmFmd2tiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfMEtwMTRFYVJFZUcxUnZ4S2djRFptdyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMEwySXNVYVJFZUcxUnZ4S2djRFptdyIgeD0iMTcwIiB5PSI0NTUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzFzX3lZRWFSRWVHMVJ2eEtnY0RabXciIHR5cGU9IjEwMjYiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMXRKallFYVJFZUcxUnZ4S2djRFptdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzF0SmpZVWFSRWVHMVJ2eEtnY0RabXciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzF0SmpZa2FSRWVHMVJ2eEtnY0RabXciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzF0SmpZMGFSRWVHMVJ2eEtnY0RabXciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMXRKalpFYVJFZUcxUnZ4S2djRFptdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8xdEpqWlVhUkVlRzFSdnhLZ2NEWm13IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfMXRKalprYVJFZUcxUnZ4S2djRFptdyIgdHlwZT0iMTAzNCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il8xdEpqWjBhUkVlRzFSdnhLZ2NEWm13IiB0eXBlPSIxMDcxIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfMXRKamFFYVJFZUcxUnZ4S2djRFptdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iXzF0SmphVWFSRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iXzF0Smpha2FSRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMXRKamEwYVJFZUcxUnZ4S2djRFptdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfMXRKamJFYVJFZUcxUnZ4S2djRFptdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il8xdEpqYlVhUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfMXRKamJrYVJFZUcxUnZ4S2djRFptdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfMXRKamIwYVJFZUcxUnZ4S2djRFptdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8xdEpqY0VhUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mYmM4QUViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZiYzhBVWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZmJjOEFrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzFyemZrRWFSRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzFzX3lZVWFSRWVHMVJ2eEtnY0RabXciIHg9IjQ2MCIgeT0iNDYwIiB3aWR0aD0iMTQ2Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il81N0tiOEVhUkVlRzFSdnhLZ2NEWm13IiB0eXBlPSIyMDA2IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzU3S2I4a2FSRWVHMVJ2eEtnY0RabXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il81N0tiODBhUkVlRzFSdnhLZ2NEWm13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il81N0tiOUVhUkVlRzFSdnhLZ2NEWm13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il81N0tiOVVhUkVlRzFSdnhLZ2NEWm13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzU3S2I5a2FSRWVHMVJ2eEtnY0RabXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNTdLYjkwYVJFZUcxUnZ4S2djRFptdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzU3S2ItRWFSRWVHMVJ2eEtnY0RabXciIHR5cGU9IjUwMjMiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfNTdLYi1VYVJFZUcxUnZ4S2djRFptdyIgdHlwZT0iMTA2MyI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzlKWlNnRWFSRWVHMVJ2eEtnY0RabXciIHR5cGU9IjEwMzciIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI185SVdKb0VhUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il85SlpTZ1VhUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX19tNTJ3RWFSRWVHMVJ2eEtnY0RabXciIHR5cGU9IjEwMzciIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19fbVRaMEVhUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9fbTUyd1VhUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2Q1SmVnRWFZRWVHMVJ2eEtnY0RabXciIHR5cGU9IjEwMzciIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19kNFF0c0VhWUVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9kNUplZ1VhWUVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2g3c0c0RWFZRWVHMVJ2eEtnY0RabXciIHR5cGU9IjEwMzciIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19oNnl2QUVhWUVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9oN3NHNFVhWUVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2p3WEpnRWFZRWVHMVJ2eEtnY0RabXciIHR5cGU9IjEwMzciIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19qdmVZc0VhWUVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9qd1hKZ1VhWUVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzU3S2Ita2FSRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il81N0tiLTBhUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il81N0tiX0VhUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzU3S2JfVWFSRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZiZUtJRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZmJleE1FYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mYmV4TVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzU1LUpJRWFSRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzU3S2I4VWFSRWVHMVJ2eEtnY0RabXciIHg9IjYyNCIgeT0iMzIxIiB3aWR0aD0iMTY3Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il90eFJOd0VhWUVlRzFSdnhLZ2NEWm13IiB0eXBlPSIxMDI2IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3R4Uk53a2FZRWVHMVJ2eEtnY0RabXciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il90eFJOdzBhWUVlRzFSdnhLZ2NEWm13IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il90eFJOeEVhWUVlRzFSdnhLZ2NEWm13IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il90eFJOeFVhWUVlRzFSdnhLZ2NEWm13IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3R4Uk54a2FZRWVHMVJ2eEtnY0RabXciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdHhSTngwYVlFZUcxUnZ4S2djRFptdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3R4Uk55RWFZRWVHMVJ2eEtnY0RabXciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfdHhSTnlVYVlFZUcxUnZ4S2djRFptdyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3dkaF9zRWFZRWVHMVJ2eEtnY0RabXciIHR5cGU9IjMwMDIiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3djZTIwRWFZRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3dkaF9zVWFZRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfM2RkbVFFYVlFZUcxUnZ4S2djRFptdyIgdHlwZT0iMzAwMiIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfM2NrT1lFYVlFZUcxUnZ4S2djRFptdyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfM2RkbVFVYVlFZUcxUnZ4S2djRFptdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il83Rm5fd0VhWUVlRzFSdnhLZ2NEWm13IiB0eXBlPSIzMDAyIiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI183RXVuNEVhWUVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il83Rm5fd1VhWUVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3R4Uk55a2FZRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il90eFJOeTBhWUVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il90eFJOekVhWUVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3R4Uk56VWFZRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3R4Uk56a2FZRWVHMVJ2eEtnY0RabXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfdHhSTnowYVlFZUcxUnZ4S2djRFptdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3R4Uk4wRWFZRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX3R4Uk4wVWFZRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfdHhSTjBrYVlFZUcxUnZ4S2djRFptdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZmJnbVlFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mYmdtWVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZiZ21Za2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI190d0U2OEVhWUVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il90eFJOd1VhWUVlRzFSdnhLZ2NEWm13IiB4PSIzNjUiIHk9IjYxMCIgaGVpZ2h0PSI4NiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfQllqV1lFYVpFZUcxUnZ4S2djRFptdyIgdHlwZT0iMTAyNiIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9CWWpXWWthWkVlRzFSdnhLZ2NEWm13IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQllqV1kwYVpFZUcxUnZ4S2djRFptdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfQllqV1pFYVpFZUcxUnZ4S2djRFptdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQllqV1pVYVpFZUcxUnZ4S2djRFptdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9CWWpXWmthWkVlRzFSdnhLZ2NEWm13IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0JZaldaMGFaRWVHMVJ2eEtnY0RabXciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9CWWpXYUVhWkVlRzFSdnhLZ2NEWm13IiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0JZaldhVWFaRWVHMVJ2eEtnY0RabXciIHR5cGU9IjEwNzEiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9tRVlhTUUyaEVlRzNxWm9kM2FUcFVBIiB0eXBlPSIzMDAyIiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19sLWt0SUUyaEVlRzNxWm9kM2FUcFVBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9tRVlhTVUyaEVlRzNxWm9kM2FUcFVBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3NaX1JZRTJoRWVHM3Fab2QzYVRwVUEiIHR5cGU9IjMwMDIiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3Nac1djRTJoRWVHM3Fab2QzYVRwVUEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3NaX1JZVTJoRWVHM3Fab2QzYVRwVUEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfdlpkNlFFMmhFZUczcVpvZDNhVHBVQSIgdHlwZT0iMzAwMiIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfdlpLX1VFMmhFZUczcVpvZDNhVHBVQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdlpkNlFVMmhFZUczcVpvZDNhVHBVQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9ndkFlc0UybUVlRzNxWm9kM2FUcFVBIiB0eXBlPSIzMDAyIiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19ndXM4c0UybUVlRzNxWm9kM2FUcFVBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9ndkFlc1UybUVlRzNxWm9kM2FUcFVBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0JZaldha2FaRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9CWWpXYTBhWkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9CWWpXYkVhWkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0JZaldiVWFaRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0JZaldia2FaRWVHMVJ2eEtnY0RabXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfQllqV2IwYVpFZUcxUnZ4S2djRFptdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0JZaldjRWFaRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0JZaldjVWFaRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfQllqV2NrYVpFZUcxUnZ4S2djRFptdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZmJqQ29FYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mYmpDb1ViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZiakNva2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19CWE5Ta0VhWkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9CWWpXWVVhWkVlRzFSdnhLZ2NEWm13IiB4PSI1ODUiIHk9IjYxMCIgaGVpZ2h0PSI4NiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfbkJmSllFMm1FZUczcVpvZDNhVHBVQSIgdHlwZT0iMjAwNiIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9uQmZKWWsybUVlRzNxWm9kM2FUcFVBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbkJmSlkwMm1FZUczcVpvZDNhVHBVQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbkJmSlpFMm1FZUczcVpvZDNhVHBVQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbkJmSlpVMm1FZUczcVpvZDNhVHBVQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9uQmZKWmsybUVlRzNxWm9kM2FUcFVBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX25CZkpaMDJtRWVHM3Fab2QzYVRwVUEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9uQmZKYUUybUVlRzNxWm9kM2FUcFVBIiB0eXBlPSI1MDIzIi8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX25CZkphVTJtRWVHM3Fab2QzYVRwVUEiIHR5cGU9IjEwNjMiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il8zTnRnWUUybUVlRzNxWm9kM2FUcFVBIiB0eXBlPSIxMDM3IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb25MaXRlcmFsIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfM05hbGNFMm1FZUczcVpvZDNhVHBVQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfM050Z1lVMm1FZUczcVpvZDNhVHBVQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il83VndUMEUybUVlRzNxWm9kM2FUcFVBIiB0eXBlPSIxMDM3IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb25MaXRlcmFsIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfN1ZkWTRFMm1FZUczcVpvZDNhVHBVQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfN1Z3VDBVMm1FZUczcVpvZDNhVHBVQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il85WFFSZ0UybUVlRzNxWm9kM2FUcFVBIiB0eXBlPSIxMDM3IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb25MaXRlcmFsIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfOVc4dmdFMm1FZUczcVpvZDNhVHBVQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfOVhRUmdVMm1FZUczcVpvZDNhVHBVQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9FTXdKc0UybkVlRzNxWm9kM2FUcFVBIiB0eXBlPSIxMDM3IiBmb250SGVpZ2h0PSI4IiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb25MaXRlcmFsIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfRU1tWXNFMm5FZUczcVpvZDNhVHBVQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfRU13SnNVMm5FZUczcVpvZDNhVHBVQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9uQmZKYWsybUVlRzNxWm9kM2FUcFVBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfbkJmSmEwMm1FZUczcVpvZDNhVHBVQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfbkJmSmJFMm1FZUczcVpvZDNhVHBVQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9uQmZKYlUybUVlRzNxWm9kM2FUcFVBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mYmxlNEViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZibGU0VWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZmJtRjhFYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19uQkNkY0UybUVlRzNxWm9kM2FUcFVBIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9uQmZKWVUybUVlRzNxWm9kM2FUcFVBIiB4PSI2OTAiIHk9IjQ1MCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9XXzA2Y1VhUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9maWxlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfM1FPSEVQY0VFZC1KMDZVNUhNX28tUSIvPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9yeEFxWUVhUkVlRzFSdnhLZ2NEWm13IiB0eXBlPSIxMDEzIiBzb3VyY2U9Il9vb3ZSNEVhUkVlRzFSdnhLZ2NEWm13IiB0YXJnZXQ9Il9yTmpZQUVhUkVlRzFSdnhLZ2NEWm13IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9yeEFxWVVhUkVlRzFSdnhLZ2NEWm13IiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkV4dGVuc2lvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3J3SDVrVWFSRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX3J4QXFZa2FSRWVHMVJ2eEtnY0RabXciIHBvaW50cz0iWzMsIC0xNywgLTI5LCAxMTFdJFsyNiwgLTEwMywgLTYsIDI1XSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX3IwNUUwRWFSRWVHMVJ2eEtnY0RabXciIGlkPSIoMC41MiwwLjE3KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX3Z5Z3c4RWFSRWVHMVJ2eEtnY0RabXciIHR5cGU9IjQwMDIiIHNvdXJjZT0iX29vdlI0RWFSRWVHMVJ2eEtnY0RabXciIHRhcmdldD0iX3ZQb3RZRWFSRWVHMVJ2eEtnY0RabXciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il92eWd3ODBhUkVlRzFSdnhLZ2NEWm13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdnlndzlFYVJFZUcxUnZ4S2djRFptdyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX3Z5Z3c4VWFSRWVHMVJ2eEtnY0RabXciIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI192d2JHUUVhUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il92eWd3OGthUkVlRzFSdnhLZ2NEWm13IiBwb2ludHM9IlstNCwgLTEsIDE2OSwgNDRdJFstMTcxLCAtMzUsIDIsIDEwXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX3Y0QmpFRWFSRWVHMVJ2eEtnY0RabXciIGlkPSIoMC4yNSwwLjAxKSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX3Y0QmpFVWFSRWVHMVJ2eEtnY0RabXciIGlkPSIoMC42LDAuOSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il8zZ29UTUVhUkVlRzFSdnhLZ2NEWm13IiB0eXBlPSI0MDAyIiBzb3VyY2U9Il8wTDJJc0VhUkVlRzFSdnhLZ2NEWm13IiB0YXJnZXQ9Il9vb3ZSNEVhUkVlRzFSdnhLZ2NEWm13IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfM2dvVE0wYVJFZUcxUnZ4S2djRFptdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMDciPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzNnb1RORWFSRWVHMVJ2eEtnY0RabXciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il8zZ29UTVVhUkVlRzFSdnhLZ2NEWm13IiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfM2VzWmdFYVJFZUcxUnZ4S2djRFptdyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfM2dvVE1rYVJFZUcxUnZ4S2djRFptdyIgcG9pbnRzPSJbNywgLTEwLCAtNjMsIDg5XSRbNzEsIC04OSwgMSwgMTBdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfM2t6b2tFYVJFZUcxUnZ4S2djRFptdyIgaWQ9IigwLjU0LDAuMSkiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il8za3pva1VhUkVlRzFSdnhLZ2NEWm13IiBpZD0iKDAuNTQsMC45KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iXzM3S1RFRWFSRWVHMVJ2eEtnY0RabXciIHR5cGU9IjQwMDIiIHNvdXJjZT0iXzFzX3lZRWFSRWVHMVJ2eEtnY0RabXciIHRhcmdldD0iX29vdlI0RWFSRWVHMVJ2eEtnY0RabXciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8zN0tURTBhUkVlRzFSdnhLZ2NEWm13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMzdLVEZFYVJFZUcxUnZ4S2djRFptdyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iXzM3S1RFVWFSRWVHMVJ2eEtnY0RabXciIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI18zNlE3TUVhUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il8zN0tURWthUkVlRzFSdnhLZ2NEWm13IiBwb2ludHM9IlstNywgLTgsIDc5LCA5OV0kWy05MCwgLTg4LCAtNCwgMTldIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfNEFFb1FFYVJFZUcxUnZ4S2djRFptdyIgaWQ9IigwLjMxLDAuMDgpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfNEFFb1FVYVJFZUcxUnZ4S2djRFptdyIgaWQ9IigwLjQ1LDAuODEpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfdTlIVjBFYVlFZUcxUnZ4S2djRFptdyIgdHlwZT0iNDAwMiIgc291cmNlPSJfdHhSTndFYVlFZUcxUnZ4S2djRFptdyIgdGFyZ2V0PSJfMXNfeVlFYVJFZUcxUnZ4S2djRFptdyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3U5SFYwMGFZRWVHMVJ2eEtnY0RabXciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il91OUhWMUVhWUVlRzFSdnhLZ2NEWm13IiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfdTlIVjBVYVlFZUcxUnZ4S2djRFptdyIgZm9udEhlaWdodD0iOCIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3U4Tjk4RWFZRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX3U5SFYwa2FZRWVHMVJ2eEtnY0RabXciIHBvaW50cz0iWzcsIC0yMCwgLTI5LCA3Ml0kWzI0LCAtNzksIC0xMiwgMTNdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfdkFQaVVFYVlFZUcxUnZ4S2djRFptdyIgaWQ9IigwLjU2LDAuMikiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il92QVBpVVVhWUVlRzFSdnhLZ2NEWm13IiBpZD0iKDAuNDI0NjU3NTM0MjQ2NTc1MywwLjk3KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX0N0TU9FRWFaRWVHMVJ2eEtnY0RabXciIHR5cGU9IjQwMDIiIHNvdXJjZT0iX0JZaldZRWFaRWVHMVJ2eEtnY0RabXciIHRhcmdldD0iXzFzX3lZRWFSRWVHMVJ2eEtnY0RabXciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9DdE1PRTBhWkVlRzFSdnhLZ2NEWm13IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQ3RNT0ZFYVpFZUcxUnZ4S2djRFptdyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX0N0TU9FVWFaRWVHMVJ2eEtnY0RabXciIGZvbnRIZWlnaHQ9IjgiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19Dc0pzUUVhWkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9DdE1PRWthWkVlRzFSdnhLZ2NEWm13IiBwb2ludHM9IlstNSwgLTMsIDEyNSwgNzVdJFstMTMwLCAtNTgsIDAsIDIwXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX0N5SEtVRWFaRWVHMVJ2eEtnY0RabXciIGlkPSIoMC4zMSwwLjAzKSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX0N5SEtVVWFaRWVHMVJ2eEtnY0RabXciIGlkPSIoMC41LDAuOCkiLz4KKyAgICA8L2VkZ2VzPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX3RGZDZBR3d2RWVHbWNlWGxsWXpGUlEiIHR5cGU9IlBhcHlydXNVTUxQcm9maWxlRGlhZ3JhbSIgbmFtZT0iRGVwbG95bWVudCIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfT3dEMm9JNnhFZUdkQ2VGRkpseDhrQSIgdHlwZT0iMTAyNiIgZm9udEhlaWdodD0iOCIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Pd05Ba0k2eEVlR2RDZUZGSmx4OGtBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT3dOQWtZNnhFZUdkQ2VGRkpseDhrQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfT3dOQWtvNnhFZUdkQ2VGRkpseDhrQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT3dOQWs0NnhFZUdkQ2VGRkpseDhrQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Pd05BbEk2eEVlR2RDZUZGSmx4OGtBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX093TkFsWTZ4RWVHZENlRkZKbHg4a0EiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9Pd05BbG82eEVlR2RDZUZGSmx4OGtBIiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX093TkFsNDZ4RWVHZENlRkZKbHg4a0EiIHR5cGU9IjEwNzEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9Pd05BbUk2eEVlR2RDZUZGSmx4OGtBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfT3dOQW1ZNnhFZUdkQ2VGRkpseDhrQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfT3dOQW1vNnhFZUdkQ2VGRkpseDhrQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9Pd05BbTQ2eEVlR2RDZUZGSmx4OGtBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9Pd05Bbkk2eEVlR2RDZUZGSmx4OGtBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX093TkFuWTZ4RWVHZENlRkZKbHg4a0EiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9Pd05Bbm82eEVlR2RDZUZGSmx4OGtBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9Pd05BbjQ2eEVlR2RDZUZGSmx4OGtBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX093TkFvSTZ4RWVHZENlRkZKbHg4a0EiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZSOUJ3RWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZlI5QndVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mUjlCd2tiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfT3NlWElJNnhFZUdkQ2VGRkpseDhrQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfT3dEMm9ZNnhFZUdkQ2VGRkpseDhrQSIgeD0iNDE1IiB5PSIyMDUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX20zUDVFSTZ4RWVHZENlRkZKbHg4a0EiIHR5cGU9IjEwMzEiIGZvbnRIZWlnaHQ9IjgiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbTNacUVJNnhFZUdkQ2VGRkpseDhrQSIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX20zWnFFWTZ4RWVHZENlRkZKbHg4a0EiIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX20zWnFFbzZ4RWVHZENlRkZKbHg4a0EiIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX20zWnFFNDZ4RWVHZENlRkZKbHg4a0EiIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbTNacUZJNnhFZUdkQ2VGRkpseDhrQSIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9tM1pxRlk2eEVlR2RDZUZGSmx4OGtBIiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX20zWnFHSTZ4RWVHZENlRkZKbHg4a0EiIHNvdXJjZT0iU3RlcmVvdHlwZV9Bbm5vdGF0aW9uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vYWszY0FmYkVlS25TTlpEWFlfWVRnIiBrZXk9IlN0ZXJlb3R5cGVXaXRoUXVhbGlmaWVkTmFtZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vYWszY1FmYkVlS25TTlpEWFlfWVRnIiBrZXk9IlN0ZXJlb3R5cGVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb2FrM2NnZmJFZUtuU05aRFhZX1lUZyIga2V5PSJTdGVyZW90eXBlX1ByZXNlbnRhdGlvbl9LaW5kIiB2YWx1ZT0iSG9yaXpvbnRhbFN0ZXJlbyIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX29hazNjd2ZiRWVLblNOWkRYWV9ZVGciIGtleT0iUHJvcFN0ZXJlb0Rpc3BsYXkiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9vYWszZEFmYkVlS25TTlpEWFlfWVRnIiBrZXk9IlN0ZXJlb3R5cGVQcm9wZXJ0eUxvY2F0aW9uIiB2YWx1ZT0iQ29tcGFydG1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbTNacUZvNnhFZUdkQ2VGRkpseDhrQSIgdHlwZT0iMTA4NCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mUl9lQUViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iQXBwbGllZFN0ZXJlb3R5cGVDb21wYXJ0ZW1lbnQiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mUl9lQVViTUVlTzg5YmRQcEI4Z1RnIiBzaG93VGl0bGU9InRydWUiLz4KKyAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InN0YW5kYXJkOk1ldGFjbGFzcyIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL1VNTC5tZXRhbW9kZWwudW1sI19TaFFuc0t0S0VlR0Y0dXdKb2IzNE13Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZSX2VBa2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZTQUZFRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZlNBRkVVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mU0FGRWtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL1VNTC5tZXRhbW9kZWwudW1sI0Fic3RyYWN0aW9uIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9tM1pxRjQ2eEVlR2RDZUZGSmx4OGtBIiB4PSI0MjAiIHk9IjExOCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfcTVxdThId3RFZUtsRGJDTGFJejZ0ZyIgdHlwZT0iMTAyNiI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9xNXF1OG53dEVlS2xEYkNMYUl6NnRnIiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3E1ejQ0SHd0RWVLbERiQ0xhSXo2dGciIHR5cGU9IjEwNzEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcTV6NDZud3RFZUtsRGJDTGFJejZ0ZyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9xNXo0NjN3dEVlS2xEYkNMYUl6NnRnIiBrZXk9InNob3dUaXRsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3E1ejQ0WHd0RWVLbERiQ0xhSXo2dGciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9xNXo0NG53dEVlS2xEYkNMYUl6NnRnIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9xNXo0NDN3dEVlS2xEYkNMYUl6NnRnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3E1ejQ1SHd0RWVLbERiQ0xhSXo2dGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3E1ejQ1WHd0RWVLbERiQ0xhSXo2dGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3E1ejQ3SHd0RWVLbERiQ0xhSXo2dGciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcTV6NDdYd3RFZUtsRGJDTGFJejZ0ZyIga2V5PSJzaG93VGl0bGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9xNXo0NW53dEVlS2xEYkNMYUl6NnRnIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfcTV6NDUzd3RFZUtsRGJDTGFJejZ0ZyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfcTV6NDZId3RFZUtsRGJDTGFJejZ0ZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9xNXo0Nlh3dEVlS2xEYkNMYUl6NnRnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mU0NoVUViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZTQ2hVVWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZlNDaFVrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3E0ZWNJSHd0RWVLbERiQ0xhSXo2dGciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3E1cXU4WHd0RWVLbERiQ0xhSXo2dGciIHg9IjYzOSIgeT0iMjA3Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il92ekRmd0h3dEVlS2xEYkNMYUl6NnRnIiB0eXBlPSIxMDMxIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il92ekRmeEh3dEVlS2xEYkNMYUl6NnRnIiBzb3VyY2U9IlN0ZXJlb3R5cGVfQW5ub3RhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT2hfOU1IYnBFZVNYZXQtZkM3N1dqQSIga2V5PSJTdGVyZW90eXBlV2l0aFF1YWxpZmllZE5hbWVMaXN0IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT2hfOU1YYnBFZVNYZXQtZkM3N1dqQSIga2V5PSJTdGVyZW90eXBlTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX09oXzlNbmJwRWVTWGV0LWZDNzdXakEiIGtleT0iU3RlcmVvdHlwZV9QcmVzZW50YXRpb25fS2luZCIgdmFsdWU9Ikhvcml6b250YWxTdGVyZW8iLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9PaUFrUUhicEVlU1hldC1mQzc3V2pBIiBrZXk9IlByb3BTdGVyZW9EaXNwbGF5IiB2YWx1ZT0iIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT2lBa1FYYnBFZVNYZXQtZkM3N1dqQSIga2V5PSJTdGVyZW90eXBlUHJvcGVydHlMb2NhdGlvbiIgdmFsdWU9IkNvbXBhcnRtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3Z6RGZ3bnd0RWVLbERiQ0xhSXo2dGciIHR5cGU9IjEwODQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZlNHTHNFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IkFwcGxpZWRTdGVyZW90eXBlQ29tcGFydGVtZW50Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZlNHTHNVYk1FZU84OWJkUHBCOGdUZyIgc2hvd1RpdGxlPSJ0cnVlIi8+CisgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJzdGFuZGFyZDpNZXRhY2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNfU2s4TjBLdEtFZUdGNHV3Sm9iMzRNdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mU0dMc2tiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mU0d5d0ViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZTR3l3VWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZlNHeXdrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNQYWNrYWdlIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il92ekRmdzN3dEVlS2xEYkNMYUl6NnRnIiB4PSI2MzAiIHk9IjExNSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfZUFKTDRIdzZFZUtrM2FYLVBfb2tKdyIgdHlwZT0iMTAzMSI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUFKTDVIdzZFZUtrM2FYLVBfb2tKdyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX09pTllrSGJwRWVTWGV0LWZDNzdXakEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX09pTllrWGJwRWVTWGV0LWZDNzdXakEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9PaU5Za25icEVlU1hldC1mQzc3V2pBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT2lOWWszYnBFZVNYZXQtZkM3N1dqQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX09pTllsSGJwRWVTWGV0LWZDNzdXakEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9lQUpMNG53NkVlS2szYVgtUF9va0p3IiB0eXBlPSIxMDg0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZTSlBBRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJBcHBsaWVkU3RlcmVvdHlwZUNvbXBhcnRlbWVudCI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZTSlBBVWJNRWVPODliZFBwQjhnVGciIHNob3dUaXRsZT0idHJ1ZSIvPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0ic3RhbmRhcmQ6TWV0YWNsYXNzIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvVU1MLm1ldGFtb2RlbC51bWwjX1NrRUVFS3RLRWVHRjR1d0pvYjM0TXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZlNKUEFrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZlNKMkVFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mU0oyRVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZTSjJFa2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvVU1MLm1ldGFtb2RlbC51bWwjSW5zdGFuY2VTcGVjaWZpY2F0aW9uIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9lQUpMNDN3NkVlS2szYVgtUF9va0p3IiB4PSI4ODAiIHk9IjIyNSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfQ3VUMndMdlNFZUt0XzYxVEVyUmZ0dyIgdHlwZT0iMTAwMiI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9DdVQyd3J2U0VlS3RfNjFURXJSZnR3IiB0eXBlPSIzIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19DdUtGd0x2U0VlS3RfNjFURXJSZnR3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9DdVQyd2J2U0VlS3RfNjFURXJSZnR3IiB4PSI0NjIiIHk9IjM0NCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il90RmQ2QVd3dkVlR21jZVhsbFl6RlJRIi8+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9maWxlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfM1FPSEVQY0VFZC1KMDZVNUhNX28tUSIvPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9ua0dZQUk2eEVlR2RDZUZGSmx4OGtBIiB0eXBlPSIxMDEzIiBzb3VyY2U9Il9Pd0Qyb0k2eEVlR2RDZUZGSmx4OGtBIiB0YXJnZXQ9Il9tM1A1RUk2eEVlR2RDZUZGSmx4OGtBIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9ua0dZQVk2eEVlR2RDZUZGSmx4OGtBIiBmb250SGVpZ2h0PSI4Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkV4dGVuc2lvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX25kakVFWTZ4RWVHZENlRkZKbHg4a0EiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX25rR1lBbzZ4RWVHZENlRkZKbHg4a0EiIHBvaW50cz0iWzUsIC05LCAtMjUsIDU5XSRbLTIwLCAtNjIsIC01MCwgNl0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9ubXlmb0k2eEVlR2RDZUZGSmx4OGtBIiBpZD0iKDAuNDYsMC4wOSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il93WUJPQUh3dEVlS2xEYkNMYUl6NnRnIiB0eXBlPSIxMDEzIiBzb3VyY2U9Il9xNXF1OEh3dEVlS2xEYkNMYUl6NnRnIiB0YXJnZXQ9Il92ekRmd0h3dEVlS2xEYkNMYUl6NnRnIj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfd1lCT0FYd3RFZUtsRGJDTGFJejZ0ZyIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFeHRlbnNpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI193WHRzQVh3dEVlS2xEYkNMYUl6NnRnIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il93WUJPQW53dEVlS2xEYkNMYUl6NnRnIiBwb2ludHM9IlstMiwgLTExLCAtMTEsIDY2XSRbLTQxLCAtNzQsIC01MCwgM10iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il93WVVJOEh3dEVlS2xEYkNMYUl6NnRnIiBpZD0iKDAuNSwwLjExKSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2hEektJSHc2RWVLazNhWC1QX29rSnciIHR5cGU9IjQwMDEiIHNvdXJjZT0iX3E1cXU4SHd0RWVLbERiQ0xhSXo2dGciIHRhcmdldD0iX2VBSkw0SHc2RWVLazNhWC1QX29rSnciPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfaER6S0kzdzZFZUtrM2FYLVBfb2tKdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMDEiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2hEektKSHc2RWVLazNhWC1QX29rSnciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfaER6S0pYdzZFZUtrM2FYLVBfb2tKdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMDIiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2hEektKbnc2RWVLazNhWC1QX29rSnciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfaER6S0ozdzZFZUtrM2FYLVBfb2tKdyIgdHlwZT0iNjAwMyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfaER6S0tIdzZFZUtrM2FYLVBfb2tKdyIgeT0iMjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9oRHpLS1h3NkVlS2szYVgtUF9va0p3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNSI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfaER6S0tudzZFZUtrM2FYLVBfb2tKdyIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfaER6S0szdzZFZUtrM2FYLVBfb2tKdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMzMiPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2hEektMSHc2RWVLazNhWC1QX29rSnciIHk9IjIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfaER6S0xYdzZFZUtrM2FYLVBfb2tKdyIgdHlwZT0iNjAzNCI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfaER6S0xudzZFZUtrM2FYLVBfb2tKdyIgeT0iLTIwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9oRHpLSVh3NkVlS2szYVgtUF9va0p3Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkFzc29jaWF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfaERwWkkzdzZFZUtrM2FYLVBfb2tKdyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfaER6S0ludzZFZUtrM2FYLVBfb2tKdyIgcG9pbnRzPSJbMTksIDAsIC0xNjEsIDBdJFsxNjAsIDcsIC0yMCwgN10iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9oRDg3SUh3NkVlS2szYVgtUF9va0p3IiBpZD0iKDAuODEsMC41NikiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9oRDg3SVh3NkVlS2szYVgtUF9va0p3IiBpZD0iKDAuMTc4NTcxNDI4NTcxNDI4NTgsMC43NikiLz4KKyAgICA8L2VkZ2VzPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX2ZESjhRQmtqRWVPb0tLT0pQRkdkQ3ciIHR5cGU9IlBhcHlydXNVTUxQcm9maWxlRGlhZ3JhbSIgbmFtZT0iSGFyZHdhcmUiIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2dwNVFrQmtqRWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwMjYiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9ncUFsVUJrakVlT29LS09KUEZHZEN3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZ3FBbFVSa2pFZU9vS0tPSlBGR2RDdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZ3FCTVlCa2pFZU9vS0tPSlBGR2RDdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZ3FCemNCa2pFZU9vS0tPSlBGR2RDdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9ncUJ6Y1JrakVlT29LS09KUEZHZEN3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2dxQ2FnQmtqRWVPb0tLT0pQRkdkQ3ciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9ncUNhZ1JrakVlT29LS09KUEZHZEN3IiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2dxQ2FnaGtqRWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwNzEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9ncUNhZ3hrakVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfZ3FDYWhCa2pFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfZ3FDYWhSa2pFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9ncURCa0JrakVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9ncURCa1JrakVlT29LS09KUEZHZEN3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2dxREJraGtqRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9ncURCa3hrakVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9ncURCbEJrakVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2dxREJsUmtqRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZvaTgwRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZm9pODBVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mb2k4MGtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfb3JDVXNGOWlFZUNYbklRc2x4dnYzQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZ3A1UWtSa2pFZU9vS0tPSlBGR2RDdyIgeD0iMzU1IiB5PSIxMTAiIHdpZHRoPSIxMjMiIGhlaWdodD0iNjYiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3Y5UUY0QmtqRWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwMjYiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il92OVRKTUJrakVlT29LS09KUEZHZEN3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdjlUSk1Sa2pFZU9vS0tPSlBGR2RDdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdjlUd1FCa2pFZU9vS0tPSlBGR2RDdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdjlUd1FSa2pFZU9vS0tPSlBGR2RDdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il92OVR3UWhrakVlT29LS09KUEZHZEN3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3Y5VVhVQmtqRWVPb0tLT0pQRkdkQ3ciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il92OVVYVVJrakVlT29LS09KUEZHZEN3IiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3Y5VVhVaGtqRWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwNzEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il92OVVYVXhrakVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfdjlVWFZCa2pFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfdjlVWFZSa2pFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il92OVVYVmhrakVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il92OVUtWUJrakVlT29LS09KUEZHZEN3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3Y5VS1ZUmtqRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il92OVUtWWhrakVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il92OVUtWXhrakVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3Y5VS1aQmtqRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZvbUFJRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZm9tQUlVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mb21BSWtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfWlVoaEFFWE5FZUdlM00zTl84NDZydyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfdjlRRjRSa2pFZU9vS0tPSlBGR2RDdyIgeD0iMzU1IiB5PSIxNSIgd2lkdGg9IjEyMyIgaGVpZ2h0PSI2NiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfaEVHRDBCa2tFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTAyNiIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2hFSFI4QmtrRWVPb0tLT0pQRkdkQ3ciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9oRUhSOFJra0VlT29LS09KUEZHZEN3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9oRUhSOGhra0VlT29LS09KUEZHZEN3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9oRUg1QUJra0VlT29LS09KUEZHZEN3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2hFSDVBUmtrRWVPb0tLT0pQRkdkQ3ciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfaEVINUFoa2tFZU9vS0tPSlBGR2RDdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2hFSDVBeGtrRWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfaEVJZ0VCa2tFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2hFSWdFUmtrRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9oRUlnRWhra0VlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9oRUlnRXhra0VlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2hFSWdGQmtrRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2hFSWdGUmtrRWVPb0tLT0pQRkdkQ3ciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfaEVJZ0Zoa2tFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2hFSWdGeGtrRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2hFSWdHQmtrRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfaEVJZ0dSa2tFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZm9uMVVFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mb24xVVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZvbjFVa2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19oQzM3MEJra0VlT29LS09KUEZHZEN3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9oRUdEMFJra0VlT29LS09KUEZHZEN3IiB4PSI1NTUiIHk9IjM1NSIgd2lkdGg9IjEyMyIgaGVpZ2h0PSI2NiIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfOXFnVWdCa3RFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTAyNiIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzlxaXd3Qmt0RWVPb0tLT0pQRkdkQ3ciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il85cWl3d1JrdEVlT29LS09KUEZHZEN3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il85cWpYMEJrdEVlT29LS09KUEZHZEN3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il85cWpYMFJrdEVlT29LS09KUEZHZEN3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzlxalgwaGt0RWVPb0tLT0pQRkdkQ3ciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfOXFqLTRCa3RFZU9vS0tPSlBGR2RDdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzlxai00Umt0RWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfOXFqLTRoa3RFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzlxai00eGt0RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il85cWotNUJrdEVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il85cWotNVJrdEVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzlxai01aGt0RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzlxa2w4Qmt0RWVPb0tLT0pQRkdkQ3ciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfOXFrbDhSa3RFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iXzlxa2w4aGt0RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iXzlxa2w4eGt0RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfOXFrbDlCa3RFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZm9wcWdFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mb3BxZ1ViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZvcHFna2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI185b21RQUJrdEVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il85cWdVZ1JrdEVlT29LS09KUEZHZEN3IiB4PSI3MjciIHk9IjIzNCIgd2lkdGg9IjEyOSIgaGVpZ2h0PSI2NyIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfRGROUzhCa3VFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTAyNiIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0RkUHZNQmt1RWVPb0tLT0pQRkdkQ3ciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9EZFB2TVJrdUVlT29LS09KUEZHZEN3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9EZFFXUUJrdUVlT29LS09KUEZHZEN3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9EZFFXUVJrdUVlT29LS09KUEZHZEN3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0RkUVdRaGt1RWVPb0tLT0pQRkdkQ3ciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRGRROVVCa3VFZU9vS0tPSlBGR2RDdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0RkUTlVUmt1RWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfRGRROVVoa3VFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0RkUTlVeGt1RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9EZFE5VkJrdUVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9EZFE5VlJrdUVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0RkUTlWaGt1RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0RkUmtZQmt1RWVPb0tLT0pQRkdkQ3ciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfRGRSa1lSa3VFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0RkUmtZaGt1RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0RkUmtZeGt1RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfRGRSa1pCa3VFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZm9xNG9FYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mb3E0b1ViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZvcTRva2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19EY2FCc0JrdUVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9EZE5TOFJrdUVlT29LS09KUEZHZEN3IiB4PSI2OTUiIHk9IjU1MCIgd2lkdGg9IjQwNSIgaGVpZ2h0PSI4NCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfVkVUUUFCa3ZFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTAyNiIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1ZFVWVJQmt2RWVPb0tLT0pQRkdkQ3ciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9WRVVlSVJrdkVlT29LS09KUEZHZEN3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9WRVZGTUJrdkVlT29LS09KUEZHZEN3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9WRVZGTVJrdkVlT29LS09KUEZHZEN3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1ZFVkZNaGt2RWVPb0tLT0pQRkdkQ3ciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVkVWc1FCa3ZFZU9vS0tPSlBGR2RDdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1ZFVnNRUmt2RWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfVkVWc1Foa3ZFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1ZFVnNReGt2RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9WRVZzUkJrdkVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9WRVZzUlJrdkVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1ZFVnNSaGt2RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1ZFV1RVQmt2RWVPb0tLT0pQRkdkQ3ciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfVkVXVFVSa3ZFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX1ZFV1RVaGt2RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX1ZFV1RVeGt2RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfVkVXVFZCa3ZFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZm92S0VFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mb3ZLRVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZvdktFa2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19WRGhNNEJrdkVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9WRVRRQVJrdkVlT29LS09KUEZHZEN3IiB4PSI4ODUiIHk9IjIzMCIgaGVpZ2h0PSI2NyIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfVjFQdlVCa3dFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTAyNiIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1YxUTljQmt3RWVPb0tLT0pQRkdkQ3ciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9WMVE5Y1Jrd0VlT29LS09KUEZHZEN3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9WMVE5Y2hrd0VlT29LS09KUEZHZEN3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9WMVJrZ0Jrd0VlT29LS09KUEZHZEN3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1YxUmtnUmt3RWVPb0tLT0pQRkdkQ3ciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfVjFSa2doa3dFZU9vS0tPSlBGR2RDdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1YxU0xrQmt3RWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfVjFTTGtSa3dFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1YxU0xraGt3RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9WMVNMa3hrd0VlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9WMVNMbEJrd0VlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1YxU0xsUmt3RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1YxU0xsaGt3RWVPb0tLT0pQRkdkQ3ciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfVjFTTGx4a3dFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX1YxU0xtQmt3RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX1YxU0xtUmt3RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfVjFTTG1oa3dFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZm94bVVFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mb3htVVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZveG1Va2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19WMGFvNEJrd0VlT29LS09KUEZHZEN3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9WMVB2VVJrd0VlT29LS09KUEZHZEN3IiB4PSI1NjkiIHk9IjIzNCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI2NyIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfX2xwWlFCa3lFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTAyNiIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19sck9jQmt5RWVPb0tLT0pQRkdkQ3ciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fbHJPY1JreUVlT29LS09KUEZHZEN3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9fbHJPY2hreUVlT29LS09KUEZHZEN3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fbHIxZ0JreUVlT29LS09KUEZHZEN3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19scjFnUmt5RWVPb0tLT0pQRkdkQ3ciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX2xyMWdoa3lFZU9vS0tPSlBGR2RDdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX19scjFneGt5RWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfX2xzY2tCa3lFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX19sc2NrUmt5RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9fbHNja2hreUVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9fbHNja3hreUVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX19sc2NsQmt5RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX19sc2NsUmt5RWVPb0tLT0pQRkdkQ3ciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfX2xzY2xoa3lFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX19sc2NseGt5RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX19sc2NtQmt5RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfX2xzY21Sa3lFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZm8wQ2tFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mbzBDa1ViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZvMENra2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19fazBTMEJreUVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9fbHBaUVJreUVlT29LS09KUEZHZEN3IiB4PSIxMDYwIiB5PSIzMzUiIHdpZHRoPSIxODYiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1dzdEhnQmxMRWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwMjYiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Xc3VWb0JsTEVlT29LS09KUEZHZEN3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfV3N1Vm9SbExFZU9vS0tPSlBGR2RDdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfV3N1Vm9obExFZU9vS0tPSlBGR2RDdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfV3N1Vm94bExFZU9vS0tPSlBGR2RDdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9Xc3U4c0JsTEVlT29LS09KUEZHZEN3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1dzdThzUmxMRWVPb0tLT0pQRkdkQ3ciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9Xc3U4c2hsTEVlT29LS09KUEZHZEN3IiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1dzdThzeGxMRWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwNzEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9Xc3U4dEJsTEVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfV3N1OHRSbExFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfV3N1OHRobExFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9Xc3U4dHhsTEVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9Xc3Zqd0JsTEVlT29LS09KUEZHZEN3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1dzdmp3UmxMRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9Xc3Zqd2hsTEVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9Xc3Zqd3hsTEVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1dzdmp4QmxMRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZvMmUwRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZm8yZTBVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mbzJlMGtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfV3I0b0lCbExFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfV3N0SGdSbExFZU9vS0tPSlBGR2RDdyIgeD0iOTUiIHk9IjIzNCIgaGVpZ2h0PSI2NyIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfYzlnWE1CbExFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTAyNiIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2M5aGxVQmxMRWVPb0tLT0pQRkdkQ3ciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9jOWhsVVJsTEVlT29LS09KUEZHZEN3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9jOWhsVWhsTEVlT29LS09KUEZHZEN3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9jOWhsVXhsTEVlT29LS09KUEZHZEN3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2M5aU1ZQmxMRWVPb0tLT0pQRkdkQ3ciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfYzlpTVlSbExFZU9vS0tPSlBGR2RDdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2M5aU1ZaGxMRWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfYzlpTVl4bExFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2M5aU1aQmxMRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9jOWlNWlJsTEVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9jOWlNWmhsTEVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2M5aU1aeGxMRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2M5aXpjQmxMRWVPb0tLT0pQRkdkQ3ciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfYzlpemNSbExFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX2M5aXpjaGxMRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX2M5aXpjeGxMRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfYzlpemRCbExFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZm80VUFFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mbzRVQVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZvNFVBa2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19jOHZpTUJsTEVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9jOWdYTVJsTEVlT29LS09KUEZHZEN3IiB4PSIyNTMiIHk9IjIzNCIgaGVpZ2h0PSI2NyIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfX1pWNVFCbExFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTAyNiIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19aV2dVQmxMRWVPb0tLT0pQRkdkQ3ciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fWlhIWUJsTEVlT29LS09KUEZHZEN3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9fWlhIWVJsTEVlT29LS09KUEZHZEN3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fWlhIWWhsTEVlT29LS09KUEZHZEN3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19aWEhZeGxMRWVPb0tLT0pQRkdkQ3ciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX1pYSFpCbExFZU9vS0tPSlBGR2RDdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX19aWHVjQmxMRWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfX1pYdWNSbExFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX19aWHVjaGxMRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9fWlh1Y3hsTEVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9fWlh1ZEJsTEVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX19aWHVkUmxMRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX19aWHVkaGxMRWVPb0tLT0pQRkdkQ3ciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfX1pZVmdCbExFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX19aWVZnUmxMRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX19aWVZnaGxMRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfX1pZVmd4bExFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZm82Sk1FYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mbzZKTVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZvNkpNa2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19fWWtkTUJsTEVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9fWlY1UVJsTEVlT29LS09KUEZHZEN3IiB4PSI4OTQiIHk9IjM0MyIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfMGducDhCbFFFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTAyNiIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzBnbzRFQmxRRWVPb0tLT0pQRkdkQ3ciIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wZ280RVJsUUVlT29LS09KUEZHZEN3IiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8wZ280RWhsUUVlT29LS09KUEZHZEN3IiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wZ3BmSUJsUUVlT29LS09KUEZHZEN3IiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzBncGZJUmxRRWVPb0tLT0pQRkdkQ3ciIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMGdwZklobFFFZU9vS0tPSlBGR2RDdyIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzBncGZJeGxRRWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfMGdxR01CbFFFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzBncUdNUmxRRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il8wZ3FHTWhsUUVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il8wZ3FHTXhsUUVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzBncUdOQmxRRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzBncUdOUmxRRWVPb0tLT0pQRkdkQ3ciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfMGdxR05obFFFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iXzBncUdOeGxRRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iXzBncUdPQmxRRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMGdxR09SbFFFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZm83LVlFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mbzctWVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2ZvNy1Za2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI18wZjFtMEJsUUVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8wZ25wOFJsUUVlT29LS09KUEZHZEN3IiB4PSIxMTc1IiB5PSI1NDUiIHdpZHRoPSIxNDUiIGhlaWdodD0iODQiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2RzM3Y0QmxSRWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwMjYiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9kczRXOEJsUkVlT29LS09KUEZHZEN3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZHM0LUFCbFJFZU9vS0tPSlBGR2RDdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZHM0LUFSbFJFZU9vS0tPSlBGR2RDdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZHM0LUFobFJFZU9vS0tPSlBGR2RDdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9kczQtQXhsUkVlT29LS09KUEZHZEN3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2RzNWxFQmxSRWVPb0tLT0pQRkdkQ3ciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9kczVsRVJsUkVlT29LS09KUEZHZEN3IiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2RzNWxFaGxSRWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwNzEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9kczVsRXhsUkVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfZHM1bEZCbFJFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfZHM1bEZSbFJFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9kczVsRmhsUkVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9kczZNSUJsUkVlT29LS09KUEZHZEN3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2RzNk1JUmxSRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9kczZNSWhsUkVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9kczZNSXhsUkVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2RzNk1KQmxSRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZvLWFvRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZm8tYW9VYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mby1hb2tiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfZHNGRnNCbFJFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZHMzdjRSbFJFZU9vS0tPSlBGR2RDdyIgeD0iNzc1IiB5PSI0NDAiIGhlaWdodD0iNTciLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfZkRKOFFSa2pFZU9vS0tPSlBGR2RDdyIvPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvZmlsZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzNRT0hFUGNFRWQtSjA2VTVITV9vLVEiLz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfeDFHX1lCa2pFZU9vS0tPSlBGR2RDdyIgdHlwZT0iNDAwMiIgc291cmNlPSJfZ3A1UWtCa2pFZU9vS0tPSlBGR2RDdyIgdGFyZ2V0PSJfdjlRRjRCa2pFZU9vS0tPSlBGR2RDdyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3gxTFEwQmtqRWVPb0tLT0pQRkdkQ3ciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il94MUwzNEJrakVlT29LS09KUEZHZEN3IiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfeDFHX1lSa2pFZU9vS0tPSlBGR2RDdyIgZm9udE5hbWU9IlNlZ29lIFVJIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfeHpJQ1lCa2pFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfeDFHX1loa2pFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX3gxZGtzQmtqRWVPb0tLT0pQRkdkQ3ciIGlkPSIoMC40OTU5MzQ5NTkzNDk1OTM1LDAuMCkiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il94MWVMd0JrakVlT29LS09KUEZHZEN3IiBpZD0iKDAuNDk1OTM0OTU5MzQ5NTkzNSwxLjApIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfa20tVXNCa2tFZU9vS0tPSlBGR2RDdyIgdHlwZT0iNDAwMiIgc291cmNlPSJfaEVHRDBCa2tFZU9vS0tPSlBGR2RDdyIgdGFyZ2V0PSJfVjFQdlVCa3dFZU9vS0tPSlBGR2RDdyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2tuQUo0QmtrRWVPb0tLT0pQRkdkQ3ciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9rbkFKNFJra0VlT29LS09KUEZHZEN3IiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfa20tVXNSa2tFZU9vS0tPSlBGR2RDdyIgZm9udE5hbWU9IlNlZ29lIFVJIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfa21pUDBCa2tFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfa20tVXNoa2tFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2tuS2g4QmtrRWVPb0tLT0pQRkdkQ3ciIGlkPSIoMC40OTU5MzQ5NTkzNDk1OTM1LDAuMCkiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9iMFRya0Jrc0VlT29LS09KUEZHZEN3IiBpZD0iKDAuNDUsMC45ODUwNzQ2MjY4NjU2NzE2KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX0EzOGc0Qmt1RWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjQwMDIiIHNvdXJjZT0iXzlxZ1VnQmt0RWVPb0tLT0pQRkdkQ3ciIHRhcmdldD0iX2dwNVFrQmtqRWVPb0tLT0pQRkdkQ3ciIHJvdXRpbmc9IlRyZWUiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9BNE8wd0JrdUVlT29LS09KUEZHZEN3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQTRPMHdSa3VFZU9vS0tPSlBGR2RDdyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX0EzOGc0Umt1RWVPb0tLT0pQRkdkQ3ciIGZvbnROYW1lPSJTZWdvZSBVSSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX0EzZjA4Qmt1RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX0EzOGc0aGt1RWVPb0tLT0pQRkdkQ3ciIHBvaW50cz0iWy0xNSwgLTQsIDE2MSwgNDNdJFstMTcxLCAtMzgsIDUsIDldIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfQTRYLXNCa3VFZU9vS0tPSlBGR2RDdyIgaWQ9IigwLjQ1NjMxMDY3OTYxMTY1MDUsMC4wNjc3OTY2MTAxNjk0OTE1MykiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9BNFgtc1JrdUVlT29LS09KUEZHZEN3IiBpZD0iKDAuNjE3ODg2MTc4ODYxNzg4NiwwLjg2MzYzNjM2MzYzNjM2MzYpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfWU5YU3NCa3ZFZU9vS0tPSlBGR2RDdyIgdHlwZT0iNDAwMiIgc291cmNlPSJfVkVUUUFCa3ZFZU9vS0tPSlBGR2RDdyIgdGFyZ2V0PSJfZ3A1UWtCa2pFZU9vS0tPSlBGR2RDdyIgcm91dGluZz0iVHJlZSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1lOWkg0Qmt2RWVPb0tLT0pQRkdkQ3ciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9ZTlpINFJrdkVlT29LS09KUEZHZEN3IiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfWU5YNXdCa3ZFZU9vS0tPSlBGR2RDdyIgZm9udE5hbWU9IlNlZ29lIFVJIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfWU04YjhCa3ZFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfWU5YNXdSa3ZFZU9vS0tPSlBGR2RDdyIgcG9pbnRzPSJbLTQ0LCAtOSwgMzA2LCA2OV0kWy0yOTQsIC00NSwgNTYsIDMzXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX1lOaHF3Qmt2RWVPb0tLT0pQRkdkQ3ciIGlkPSIoMC40NCwwLjIwODk1NTIyMzg4MDU5NykiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il96N3NsZ0Jrd0VlT29LS09KUEZHZEN3IiB0eXBlPSI0MDAyIiBzb3VyY2U9Il9WMVB2VUJrd0VlT29LS09KUEZHZEN3IiB0YXJnZXQ9Il9ncDVRa0JrakVlT29LS09KUEZHZEN3IiByb3V0aW5nPSJUcmVlIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfejd1YXNCa3dFZU9vS0tPSlBGR2RDdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMDciPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3o3dWFzUmt3RWVPb0tLT0pQRkdkQ3ciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il96N3NsZ1Jrd0VlT29LS09KUEZHZEN3IiBmb250TmFtZT0iU2Vnb2UgVUkiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI196N1BTZ0Jrd0VlT29LS09KUEZHZEN3Ii8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il96N3NsZ2hrd0VlT29LS09KUEZHZEN3IiBwb2ludHM9IlstMiwgLTE0LCA5LCA2NF0kWy05LCAtNjYsIDIsIDEyXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX3o3NExzQmt3RWVPb0tLT0pQRkdkQ3ciIGlkPSIoMC41NzQwNzQwNzQwNzQwNzQxLDAuMTk3MTgzMDk4NTkxNTQ5MjgpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfejc0eXdCa3dFZU9vS0tPSlBGR2RDdyIgaWQ9IigwLjUzNjU4NTM2NTg1MzY1ODYsMC44MTgxODE4MTgxODE4MTgyKSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX3lRUjZvQmt5RWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjQwMDIiIHNvdXJjZT0iX0RkTlM4Qmt1RWVPb0tLT0pQRkdkQ3ciIHRhcmdldD0iX19scFpRQmt5RWVPb0tLT0pQRkdkQ3ciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il95UVR2MEJreUVlT29LS09KUEZHZEN3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfeVFUdjBSa3lFZU9vS0tPSlBGR2RDdyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX3lRUjZvUmt5RWVPb0tLT0pQRkdkQ3ciIGZvbnROYW1lPSJTZWdvZSBVSSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3lQMEFrQmt5RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX3lRUjZvaGt5RWVPb0tLT0pQRkdkQ3ciIHBvaW50cz0iWzIsIC0xOSwgLTgsIDQ5XSRbLTEsIC01NSwgLTExLCAxM10iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il95UWM1d0JreUVlT29LS09KUEZHZEN3IiBpZD0iKDAuOTMwODY0MTk3NTMwODY0MiwwLjExOTA0NzYxOTA0NzYxOTA0KSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX3lRYzV3Umt5RWVPb0tLT0pQRkdkQ3ciIGlkPSIoMC4wNzUyNjg4MTcyMDQzMDEwOCwwLjk3KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX1kxM01ZQmxMRWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjQwMDIiIHNvdXJjZT0iX1dzdEhnQmxMRWVPb0tLT0pQRkdkQ3ciIHRhcmdldD0iX2dwNVFrQmtqRWVPb0tLT0pQRkdkQ3ciIHJvdXRpbmc9IlRyZWUiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9ZMTRhZ0JsTEVlT29LS09KUEZHZEN3IiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9ZMTRhZ1JsTEVlT29LS09KUEZHZEN3IiB4PSItMTIiIHk9Ii0yMyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfWTEzTVlSbExFZU9vS0tPSlBGR2RDdyIgZm9udE5hbWU9IlNlZ29lIFVJIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfWTFhZ2NCbExFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfWTEzTVlobExFZU9vS0tPSlBGR2RDdyIgcG9pbnRzPSJbMTMsIC0zLCAtMTU2LCAyOF0kWzE1OSwgLTI5LCAtMTAsIDJdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfWTJCa2NCbExFZU9vS0tPSlBGR2RDdyIgaWQ9IigwLjg3LDAuNTQpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfWTJCa2NSbExFZU9vS0tPSlBGR2RDdyIgaWQ9IigwLjA4MTMwMDgxMzAwODEzMDA4LDAuNjgxODE4MTgxODE4MTgxOCkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9mQ2ttUUJsTEVlT29LS09KUEZHZEN3IiB0eXBlPSI0MDAyIiBzb3VyY2U9Il9jOWdYTUJsTEVlT29LS09KUEZHZEN3IiB0YXJnZXQ9Il9ncDVRa0JrakVlT29LS09KUEZHZEN3IiByb3V0aW5nPSJUcmVlIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZkNtYmNCbExFZU9vS0tPSlBGR2RDdyIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfZkNtYmNSbExFZU9vS0tPSlBGR2RDdyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2ZDbE5VQmxMRWVPb0tLT0pQRkdkQ3ciIGZvbnROYW1lPSJTZWdvZSBVSSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX2ZDSWhZQmxMRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2ZDbE5VUmxMRWVPb0tLT0pQRkdkQ3ciIHBvaW50cz0iWzE1LCA2LCAtMTE4LCAtNTZdJFsxMjAsIDYwLCAtMTMsIC0yXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2ZDdHdNQmxMRWVPb0tLT0pQRkdkQ3ciIGlkPSIoMC44NSwwLjYzKSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2ZDdVhRQmxMRWVPb0tLT0pQRkdkQ3ciIGlkPSIoMC4xMDU2OTEwNTY5MTA1NjkxMSwwLjM5MzkzOTM5MzkzOTM5MzkpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfTTRiN29CbE1FZU9vS0tPSlBGR2RDdyIgdHlwZT0iNDAwMiIgc291cmNlPSJfX1pWNVFCbExFZU9vS0tPSlBGR2RDdyIgdGFyZ2V0PSJfVkVUUUFCa3ZFZU9vS0tPSlBGR2RDdyIgcm91dGluZz0iVHJlZSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX000ZEp3QmxNRWVPb0tLT0pQRkdkQ3ciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9NNGRKd1JsTUVlT29LS09KUEZHZEN3IiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfTTRiN29SbE1FZU9vS0tPSlBGR2RDdyIgZm9udE5hbWU9IlNlZ29lIFVJIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfTTM5YWdCbE1FZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfTTRiN29obE1FZU9vS0tPSlBGR2RDdyIgcG9pbnRzPSJbMCwgLTE2LCAwLCA2MF0kWzEsIC02MiwgMSwgMTRdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfTTRsRmtCbE1FZU9vS0tPSlBGR2RDdyIgaWQ9IigwLjQzLDAuMTYpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfTTRsRmtSbE1FZU9vS0tPSlBGR2RDdyIgaWQ9IigwLjUyLDAuNzkxMDQ0Nzc2MTE5NDAyOSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9OdEF6TUJsTUVlT29LS09KUEZHZEN3IiB0eXBlPSI0MDAyIiBzb3VyY2U9Il9fbHBaUUJreUVlT29LS09KUEZHZEN3IiB0YXJnZXQ9Il9WRVRRQUJrdkVlT29LS09KUEZHZEN3IiByb3V0aW5nPSJUcmVlIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTnRDQlVCbE1FZU9vS0tPSlBGR2RDdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMDciPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX050Q29ZQmxNRWVPb0tLT0pQRkdkQ3ciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9OdEF6TVJsTUVlT29LS09KUEZHZEN3IiBmb250TmFtZT0iU2Vnb2UgVUkiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19Oc2xWWUJsTUVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9OdEF6TWhsTUVlT29LS09KUEZHZEN3IiBwb2ludHM9IlstMzYsIC0xOCwgMTEwLCA1Ml0kWy0xMzYsIC01NiwgMTAsIDE0XSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX050S2tNQmxNRWVPb0tLT0pQRkdkQ3ciIGlkPSIoMC4zMDc2OTIzMDc2OTIzMDc3LDAuMTgpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfTnRLa01SbE1FZU9vS0tPSlBGR2RDdyIgaWQ9IigwLjY1LDAuNzkxMDQ0Nzc2MTE5NDAyOSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il8zR1paWUJsUUVlT29LS09KUEZHZEN3IiB0eXBlPSI0MDAyIiBzb3VyY2U9Il8wZ25wOEJsUUVlT29LS09KUEZHZEN3IiB0YXJnZXQ9Il9fbHBaUUJreUVlT29LS09KUEZHZEN3IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfM0diT2tCbFFFZU9vS0tPSlBGR2RDdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMDciPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzNHYk9rUmxRRWVPb0tLT0pQRkdkQ3ciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il8zR1paWVJsUUVlT29LS09KUEZHZEN3IiBmb250TmFtZT0iU2Vnb2UgVUkiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI18zRjk3a0JsUUVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il8zR1paWWhsUUVlT29LS09KUEZHZEN3IiBwb2ludHM9IlstMTcsIC0xOCwgOTAsIDEyM10kWy0xMTMsIC05MSwgLTYsIDUwXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iXzNHaktZQmxRRWVPb0tLT0pQRkdkQ3ciIGlkPSIoMC4zODI4MTI1LDAuMTgpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfbW9yMFVCbFJFZU9vS0tPSlBGR2RDdyIgaWQ9IigwLjg4MTcyMDQzMDEwNzUyNjksMC45MSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9Ub19RSUJsUkVlT29LS09KUEZHZEN3IiB0eXBlPSI0MDAyIiBzb3VyY2U9Il9EZE5TOEJrdUVlT29LS09KUEZHZEN3IiB0YXJnZXQ9Il85cWdVZ0JrdEVlT29LS09KUEZHZEN3IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfVHBCRlVCbFJFZU9vS0tPSlBGR2RDdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMDciPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1RwQkZVUmxSRWVPb0tLT0pQRkdkQ3ciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9Ub19RSVJsUkVlT29LS09KUEZHZEN3IiBmb250TmFtZT0iU2Vnb2UgVUkiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19Ub2lrTUJsUkVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9Ub19RSWhsUkVlT29LS09KUEZHZEN3IiBwb2ludHM9IlstMjIsIC0xNywgMjgxLCAyMTldJFstMzE2LCAtMjI4LCAtMTMsIDhdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfVHBKb01CbFJFZU9vS0tPSlBGR2RDdyIgaWQ9IigwLjEwODY0MTk3NTMwODY0MTk3LDAuMDExOTA0NzYxOTA0NzYxOTA0KSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX1RwSm9NUmxSRWVPb0tLT0pQRkdkQ3ciIGlkPSIoMC4xMywwLjg1MDc0NjI2ODY1NjcxNjQpIi8+CisgICAgPC9lZGdlcz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il91QzFmUUJreEVlT29LS09KUEZHZEN3IiB0eXBlPSJQYXB5cnVzVU1MUHJvZmlsZURpYWdyYW0iIG5hbWU9IlJvYm90IiBtZWFzdXJlbWVudFVuaXQ9IlBpeGVsIj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il93TVlsc0JreEVlT29LS09KUEZHZEN3IiB0eXBlPSIxMDI2IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfd01aejBCa3hFZU9vS0tPSlBGR2RDdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3dNWnowUmt4RWVPb0tLT0pQRkdkQ3ciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3dNWnowaGt4RWVPb0tLT0pQRkdkQ3ciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3dNWnoweGt4RWVPb0tLT0pQRkdkQ3ciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfd01aejFCa3hFZU9vS0tPSlBGR2RDdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il93TVp6MVJreEVlT29LS09KUEZHZEN3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfd01hYTRCa3hFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTAzNCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il93TWFhNFJreEVlT29LS09KUEZHZEN3IiB0eXBlPSIxMDcxIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfd01hYTRoa3hFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3dNYWE0eGt4RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX3dNYWE1Qmt4RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfd01hYTVSa3hFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfd01hYTVoa3hFZU9vS0tPSlBGR2RDdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il93TWFhNXhreEVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfd01hYTZCa3hFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfd01hYTZSa3hFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il93TWFhNmhreEVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mcmxwd0ViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2ZybHB3VWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZnJscHdrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX0VkbllvUGNKRWQtSjA2VTVITV9vLVEiLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3dNWWxzUmt4RWVPb0tLT0pQRkdkQ3ciIHg9IjIwNSIgeT0iOTUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3hYV2tBQmt4RWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwMjYiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il94WFh5SUJreEVlT29LS09KUEZHZEN3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeFhYeUlSa3hFZU9vS0tPSlBGR2RDdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfeFhZWk1Ca3hFZU9vS0tPSlBGR2RDdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeFhZWk1Sa3hFZU9vS0tPSlBGR2RDdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il94WFlaTWhreEVlT29LS09KUEZHZEN3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3hYWVpNeGt4RWVPb0tLT0pQRkdkQ3ciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il94WFpBUUJreEVlT29LS09KUEZHZEN3IiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3hYWkFRUmt4RWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwNzEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il94WFpBUWhreEVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfeFhaQVF4a3hFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfeFhaQVJCa3hFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il94WFpBUlJreEVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il94WFpuVUJreEVlT29LS09KUEZHZEN3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3hYWm5VUmt4RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il94WFpuVWhreEVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il94WFpuVXhreEVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3hYWm5WQmt4RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZybmU4RWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZnJuZThVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mcm5lOGtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfR29wRndQY0pFZC1KMDZVNUhNX28tUSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfeFhXa0FSa3hFZU9vS0tPSlBGR2RDdyIgeD0iMjEwIiB5PSItNTUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0ticEg0Qmt5RWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwMjYiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9LYnFXQUJreUVlT29LS09KUEZHZEN3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfS2JxV0FSa3lFZU9vS0tPSlBGR2RDdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfS2JxV0Foa3lFZU9vS0tPSlBGR2RDdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfS2JxOUVCa3lFZU9vS0tPSlBGR2RDdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9LYnE5RVJreUVlT29LS09KUEZHZEN3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0ticTlFaGt5RWVPb0tLT0pQRkdkQ3ciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9LYnE5RXhreUVlT29LS09KUEZHZEN3IiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX0ticmtJQmt5RWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwNzEiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9waVNJWUJrMUVlT29LS09KUEZHZEN3IiB0eXBlPSIzMDAyIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3BncS0wQmsxRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX3BpU0lZUmsxRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfS2Jya0lSa3lFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0ticmtJaGt5RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0ticmtJeGt5RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfS2Jya0pCa3lFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfS2Jya0pSa3lFZU9vS0tPSlBGR2RDdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9LYnJrSmhreUVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfS2Jya0p4a3lFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfS2Jya0tCa3lFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9LYnJrS1JreUVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mcnNYY0ViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2Zyc1hjVWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZnJzWGNrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX0thMG9nQmt5RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0ticEg0Umt5RWVPb0tLT0pQRkdkQ3ciIHg9IjI1IiB5PSIyODAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX05nZ25FQmt5RWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwMjYiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9OZ2gxTUJreUVlT29LS09KUEZHZEN3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTmdoMU1Sa3lFZU9vS0tPSlBGR2RDdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTmdpY1FCa3lFZU9vS0tPSlBGR2RDdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfTmdpY1FSa3lFZU9vS0tPSlBGR2RDdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9OZ2ljUWhreUVlT29LS09KUEZHZEN3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX05nakRVQmt5RWVPb0tLT0pQRkdkQ3ciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9OZ2pEVVJreUVlT29LS09KUEZHZEN3IiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX05nakRVaGt5RWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwNzEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9OZ2pEVXhreUVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfTmdqRFZCa3lFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfTmdqRFZSa3lFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9OZ2pEVmhreUVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9OZ2pxWUJreUVlT29LS09KUEZHZEN3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX05nanFZUmt5RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9OZ2pxWWhreUVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9OZ2pxWXhreUVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX05nanFaQmt5RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZydXpzRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZnJ1enNVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mcnV6c2tiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfTmZzdXdCa3lFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTmdnbkVSa3lFZU9vS0tPSlBGR2RDdyIgeD0iMjM1IiB5PSIyODAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1dfalVZQmt5RWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwMjYiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9XX2xKa0JreUVlT29LS09KUEZHZEN3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfV19sSmtSa3lFZU9vS0tPSlBGR2RDdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfV19sSmtoa3lFZU9vS0tPSlBGR2RDdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfV19sSmt4a3lFZU9vS0tPSlBGR2RDdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9XX2x3b0JreUVlT29LS09KUEZHZEN3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1dfbHdvUmt5RWVPb0tLT0pQRkdkQ3ciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9XX2x3b2hreUVlT29LS09KUEZHZEN3IiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1dfbVhzQmt5RWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwNzEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9XX21Yc1JreUVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfV19tWHNoa3lFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfV19tWHN4a3lFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9XX21YdEJreUVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9XX20td0JreUVlT29LS09KUEZHZEN3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1dfbS13Umt5RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9XX20td2hreUVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9XX20td3hreUVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1dfbS14Qmt5RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2Zyd0IwRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZnJ3QjBVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mcndCMGtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfVy1zXzBCa3lFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfV19qN2NCa3lFZU9vS0tPSlBGR2RDdyIgeD0iNDAwIiB5PSIyODIiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3lOZU1VQmswRWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjIwMDYiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il95TmZhY0JrMEVlT29LS09KUEZHZEN3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeU5mYWNSazBFZU9vS0tPSlBGR2RDdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfeU5mYWNoazBFZU9vS0tPSlBGR2RDdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeU5mYWN4azBFZU9vS0tPSlBGR2RDdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il95TmdCZ0JrMEVlT29LS09KUEZHZEN3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3lOZ0JnUmswRWVPb0tLT0pQRkdkQ3ciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il95TmdCZ2hrMEVlT29LS09KUEZHZEN3IiB0eXBlPSI1MDIzIi8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3lOZ29rQmswRWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwNjMiPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il85THhGNEJrMEVlT29LS09KUEZHZEN3IiB0eXBlPSIxMDM3IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI185TFR5NEJrMEVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il85THhGNFJrMEVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX0VLX2gwQmsxRWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwMzciIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX0VLamM4QmsxRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX0VLX2gwUmsxRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfRzZfa1FCazFFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTAzNyIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb25MaXRlcmFsIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfRzZqZllCazFFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfRzZfa1FSazFFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9KdVpnQUJrMUVlT29LS09KUEZHZEN3IiB0eXBlPSIxMDM3IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19KdDdsOEJrMUVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9KdVpnQVJrMUVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1ZjZENrQmsxRWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwMzciIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX1ZiX0lnQmsxRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1ZjZENrUmsxRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfWnRoMk1CazFFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTAzNyIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb25MaXRlcmFsIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfWnRGeFVCazFFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfWnRoMk1SazFFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9oU0Vsc0JrMUVlT29LS09KUEZHZEN3IiB0eXBlPSIxMDM3IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19oUm41d0JrMUVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9oU0Vsc1JrMUVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3lOZ29rUmswRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il95Tmdva2hrMEVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il95Tmdva3hrMEVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3lOZ29sQmswRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2ZyeFA4RWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZnJ4UDhVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9mcnhQOGtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3lNNDlnQmswRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3lOZU1VUmswRWVPb0tLT0pQRkdkQ3ciIHg9IjUzMyIgeT0iMjI2Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpEaWFncmFtU3R5bGUiIHhtaTppZD0iX3VDMWZRUmt4RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb2ZpbGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI18zUU9IRVBjRUVkLUowNlU1SE1fby1RIi8+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX3hYclVJQmt4RWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjQwMDIiIHNvdXJjZT0iX3dNWWxzQmt4RWVPb0tLT0pQRkdkQ3ciIHRhcmdldD0iX3hYV2tBQmt4RWVPb0tLT0pQRkdkQ3ciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il94WHNpUUJreEVlT29LS09KUEZHZEN3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfeFh0SlVCa3hFZU9vS0tPSlBGR2RDdyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX3hYclVJUmt4RWVPb0tLT0pQRkdkQ3ciIGZvbnROYW1lPSJTZWdvZSBVSSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3FyYkxjRjdiRWVDR2hMVGpFRGt4ZmciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX3hYclVJaGt4RWVPb0tLT0pQRkdkQ3ciIHBvaW50cz0iWy01MCwgLTI5LCAyMzUsIDEzNF0kWy0yODUsIC0xNjMsIDAsIDBdIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfYVhMWGdCa3lFZU9vS0tPSlBGR2RDdyIgdHlwZT0iNDAwMiIgc291cmNlPSJfS2JwSDRCa3lFZU9vS0tPSlBGR2RDdyIgdGFyZ2V0PSJfd01ZbHNCa3hFZU9vS0tPSlBGR2RDdyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX2FYTk1zQmt5RWVPb0tLT0pQRkdkQ3ciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9hWE5Nc1JreUVlT29LS09KUEZHZEN3IiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfYVhMWGdSa3lFZU9vS0tPSlBGR2RDdyIgZm9udE5hbWU9IlNlZ29lIFVJIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfYVd0ZGNCa3lFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfYVhMWGdoa3lFZU9vS0tPSlBGR2RDdyIgcG9pbnRzPSJbMjMsIC0xMywgLTk3LCA1M10kWzExNywgLTU4LCAtMywgOF0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9hWFc5c0JreUVlT29LS09KUEZHZEN3IiBpZD0iKDAuNTMsMC4xMykiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9hWFc5c1JreUVlT29LS09KUEZHZEN3IiBpZD0iKDAuMzg2NjY2NjY2NjY2NjY2NjYsMC45NDI4NTcxNDI4NTcxNDI4KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX2JMSDg4Qmt5RWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjQwMDIiIHNvdXJjZT0iX05nZ25FQmt5RWVPb0tLT0pQRkdkQ3ciIHRhcmdldD0iX3dNWWxzQmt4RWVPb0tLT0pQRkdkQ3ciIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9iTEp5SUJreUVlT29LS09KUEZHZEN3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfYkxKeUlSa3lFZU9vS0tPSlBGR2RDdyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX2JMSDg4Umt5RWVPb0tLT0pQRkdkQ3ciIGZvbnROYW1lPSJTZWdvZSBVSSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX2JLclJBQmt5RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX2JMSDg4aGt5RWVPb0tLT0pQRkdkQ3ciIHBvaW50cz0iWzIsIC0xMiwgMCwgNjNdJFsyLCAtNTcsIDAsIDE4XSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2JMUzhFQmt5RWVPb0tLT0pQRkdkQ3ciIGlkPSIoMC40MywwLjEyKSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2JMUzhFUmt5RWVPb0tLT0pQRkdkQ3ciIGlkPSIoMC41LDAuODcxNDI4NTcxNDI4NTcxNCkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9iOUZsWUJreUVlT29LS09KUEZHZEN3IiB0eXBlPSI0MDAyIiBzb3VyY2U9Il9XX2pVWUJreUVlT29LS09KUEZHZEN3IiB0YXJnZXQ9Il93TVlsc0JreEVlT29LS09KUEZHZEN3IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfYjlIYWtCa3lFZU9vS0tPSlBGR2RDdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMDciPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX2I5SGFrUmt5RWVPb0tLT0pQRkdkQ3ciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9iOUZsWVJreUVlT29LS09KUEZHZEN3IiBmb250TmFtZT0iU2Vnb2UgVUkiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19iOG81Y0JreUVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9iOUZsWWhreUVlT29LS09KUEZHZEN3IiBwb2ludHM9IlstNDAsIC0yMCwgMTE0LCA1N10kWy0xNTAsIC02NywgNCwgMTBdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfYjlQV1lCa3lFZU9vS0tPSlBGR2RDdyIgaWQ9IigwLjYyLDAuMikiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9iOVA5Y0JreUVlT29LS09KUEZHZEN3IiBpZD0iKDAuNjg2NjY2NjY2NjY2NjY2NiwwLjkyODU3MTQyODU3MTQyODYpIi8+CisgICAgPC9lZGdlcz4KKyAgPC9ub3RhdGlvbjpEaWFncmFtPgorICA8bm90YXRpb246RGlhZ3JhbSB4bWk6aWQ9Il9mNmsyTUJsVUVlT29LS09KUEZHZEN3IiB0eXBlPSJQYXB5cnVzVU1MUHJvZmlsZURpYWdyYW0iIG5hbWU9IlBoeXNpY2FsSW50ZXJhY3Rpb24iIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX21hOEw0QmxVRWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwMzEiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9tYTlhQUJsVUVlT29LS09KUEZHZEN3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbWE5YUFSbFVFZU9vS0tPSlBGR2RDdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbWEtb0lCbFVFZU9vS0tPSlBGR2RDdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbWEtb0lSbFVFZU9vS0tPSlBGR2RDdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9tYS1vSWhsVUVlT29LS09KUEZHZEN3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX21hX1BNQmxVRWVPb0tLT0pQRkdkQ3ciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbWJCRVlCbFVFZU9vS0tPSlBGR2RDdyIgc291cmNlPSJTdGVyZW90eXBlX0Fubm90YXRpb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX09oU3lrSGJwRWVTWGV0LWZDNzdXakEiIGtleT0iU3RlcmVvdHlwZVdpdGhRdWFsaWZpZWROYW1lTGlzdCIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX09oU3lrWGJwRWVTWGV0LWZDNzdXakEiIGtleT0iU3RlcmVvdHlwZUxpc3QiIHZhbHVlPSIiLz4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9PaFN5a25icEVlU1hldC1mQzc3V2pBIiBrZXk9IlN0ZXJlb3R5cGVfUHJlc2VudGF0aW9uX0tpbmQiIHZhbHVlPSJIb3Jpem9udGFsU3RlcmVvIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfT2hTeWszYnBFZVNYZXQtZkM3N1dqQSIga2V5PSJQcm9wU3RlcmVvRGlzcGxheSIgdmFsdWU9IiIvPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX09oU3lsSGJwRWVTWGV0LWZDNzdXakEiIGtleT0iU3RlcmVvdHlwZVByb3BlcnR5TG9jYXRpb24iIHZhbHVlPSJDb21wYXJ0bWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9tYV9QTVJsVUVlT29LS09KUEZHZEN3IiB0eXBlPSIxMDg0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2Z0dEpvRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJBcHBsaWVkU3RlcmVvdHlwZUNvbXBhcnRlbWVudCI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2Z0dEpvVWJNRWVPODliZFBwQjhnVGciIHNob3dUaXRsZT0idHJ1ZSIvPgorICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0ic3RhbmRhcmQ6TWV0YWNsYXNzIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvVU1MLm1ldGFtb2RlbC51bWwjX1NpemYwS3RLRWVHRjR1d0pvYjM0TXciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZnR0Sm9rYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZnR0d3NFYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9mdHR3c1ViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2Z0dHdza2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvVU1MLm1ldGFtb2RlbC51bWwjQ29ubmVjdG9yIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9tYV9QTWhsVUVlT29LS09KUEZHZEN3IiB4PSIyOTkiIHk9Ijk3Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9uZnh0QUJsVUVlT29LS09KUEZHZEN3IiB0eXBlPSIxMDI2IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbmZ5N0lCbFVFZU9vS0tPSlBGR2RDdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX25meTdJUmxVRWVPb0tLT0pQRkdkQ3ciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX25meTdJaGxVRWVPb0tLT0pQRkdkQ3ciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX25meTdJeGxVRWVPb0tLT0pQRkdkQ3ciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbmZ5N0pCbFVFZU9vS0tPSlBGR2RDdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9uZnppTUJsVUVlT29LS09KUEZHZEN3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfbmZ6aU1SbFVFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTAzNCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9uZnppTWhsVUVlT29LS09KUEZHZEN3IiB0eXBlPSIxMDcxIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfbmZ6aU14bFVFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX25memlOQmxVRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX25memlOUmxVRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbmZ6aU5obFVFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfbmYwSlFCbFVFZU9vS0tPSlBGR2RDdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9uZjBKUVJsVUVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfbmYwSlFobFVFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfbmYwSlF4bFVFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9uZjBKUkJsVUVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mdHdNOEViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2Z0d004VWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZnR3TThrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX25lNFZJQmxVRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX25meHRBUmxVRWVPb0tLT0pQRkdkQ3ciIHg9IjMwMCIgeT0iMjEwIi8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9LbGNrVUJsWEVlT29LS09KUEZHZEN3IiB0eXBlPSIxMDI2IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfS2xkeWNCbFhFZU9vS0tPSlBGR2RDdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0tsZHljUmxYRWVPb0tLT0pQRkdkQ3ciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0tsZHljaGxYRWVPb0tLT0pQRkdkQ3ciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0tsZHljeGxYRWVPb0tLT0pQRkdkQ3ciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfS2xlWmdCbFhFZU9vS0tPSlBGR2RDdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9LbGVaZ1JsWEVlT29LS09KUEZHZEN3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfS2xlWmdobFhFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTAzNCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9LbGVaZ3hsWEVlT29LS09KUEZHZEN3IiB0eXBlPSIxMDcxIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfS2xlWmhCbFhFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX0tsZVpoUmxYRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX0tsZVpoaGxYRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfS2xlWmh4bFhFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfS2xmQWtCbFhFZU9vS0tPSlBGR2RDdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9LbGZBa1JsWEVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfS2xmQWtobFhFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfS2xmQWt4bFhFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9LbGZBbEJsWEVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mdHlDSUViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2Z0eUNJVWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZnR5Q0lrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX0trbTIwQmxYRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0tsY2tVUmxYRWVPb0tLT0pQRkdkQ3ciIHg9IjIxNSIgeT0iMzY1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9NLXJGZ0JsWEVlT29LS09KUEZHZEN3IiB0eXBlPSIxMDI2IiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTS1zVG9CbFhFZU9vS0tPSlBGR2RDdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX00tc1RvUmxYRWVPb0tLT0pQRkdkQ3ciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX00tczZzQmxYRWVPb0tLT0pQRkdkQ3ciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX00tczZzUmxYRWVPb0tLT0pQRkdkQ3ciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTS1zNnNobFhFZU9vS0tPSlBGR2RDdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9NLXM2c3hsWEVlT29LS09KUEZHZEN3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfTS1zNnRCbFhFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTAzNCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9NLXRod0JsWEVlT29LS09KUEZHZEN3IiB0eXBlPSIxMDcxIj4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfTS10aHdSbFhFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX00tdGh3aGxYRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX00tdGh3eGxYRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfTS10aHhCbFhFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfTS11STBCbFhFZU9vS0tPSlBGR2RDdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9NLXVJMFJsWEVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfTS11STBobFhFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfTS11STB4bFhFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9NLXVJMUJsWEVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9mdHpRUUViTUVlTzg5YmRQcEI4Z1RnIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2Z0elFRVWJNRWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZnR6UVFrYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX005M05NQmxYRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX00tckZnUmxYRWVPb0tLT0pQRkdkQ3ciIHg9IjM4NSIgeT0iMzY1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9mMldXSUJsWEVlT29LS09KUEZHZEN3IiB0eXBlPSIxMDAyIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZjJYa1FCbFhFZU9vS0tPSlBGR2RDdyIgc291cmNlPSJTaGFkb3dGaWd1cmUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2YyWGtRUmxYRWVPb0tLT0pQRkdkQ3ciIGtleT0iU2hhZG93RmlndXJlX1ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2YyWGtRaGxYRWVPb0tLT0pQRkdkQ3ciIHNvdXJjZT0iZGlzcGxheU5hbWVMYWJlbEljb24iPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2YyWGtReGxYRWVPb0tLT0pQRkdkQ3ciIGtleT0iZGlzcGxheU5hbWVMYWJlbEljb25fdmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZjJZTFVCbFhFZU9vS0tPSlBGR2RDdyIgc291cmNlPSJRdWFsaWZpZWROYW1lIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9mMllMVVJsWEVlT29LS09KUEZHZEN3IiBrZXk9IlF1YWxpZmllZE5hbWVEZXB0aCIgdmFsdWU9IjEwMDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfZjJZTFVobFhFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMyIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpDb21tZW50IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfZjFoUHNCbFhFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfZjJXV0lSbFhFZU9vS0tPSlBGR2RDdyIgeD0iNjQ1IiB5PSIzODAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3lSSG9VQmxYRWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjEwMDIiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il95UkkyY0JsWEVlT29LS09KUEZHZEN3IiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeVJKZGdCbFhFZU9vS0tPSlBGR2RDdyIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfeVJKZGdSbFhFZU9vS0tPSlBGR2RDdyIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeVJKZGdobFhFZU9vS0tPSlBGR2RDdyIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il95UkpkZ3hsWEVlT29LS09KUEZHZEN3IiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3lSSmRoQmxYRWVPb0tLT0pQRkdkQ3ciIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il95UktFa0JsWEVlT29LS09KUEZHZEN3IiB0eXBlPSIzIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI195UW1xOEJsWEVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il95UkhvVVJsWEVlT29LS09KUEZHZEN3IiB4PSItNTAiIHk9IjM0MCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RGlhZ3JhbVN0eWxlIiB4bWk6aWQ9Il9mNmsyTVJsVUVlT29LS09KUEZHZEN3Ii8+CisgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9maWxlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfM1FPSEVQY0VFZC1KMDZVNUhNX28tUSIvPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9xUWxBc0JsVUVlT29LS09KUEZHZEN3IiB0eXBlPSIxMDEzIiBzb3VyY2U9Il9uZnh0QUJsVUVlT29LS09KUEZHZEN3IiB0YXJnZXQ9Il9tYThMNEJsVUVlT29LS09KUEZHZEN3IiBsaW5lQ29sb3I9IjAiPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9xUWxBc1JsVUVlT29LS09KUEZHZEN3IiBmb250TmFtZT0iU2Vnb2UgVUkiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6RXh0ZW5zaW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfcVA4SGdCbFVFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfcVFsQXNobFVFZU9vS0tPSlBGR2RDdyIgcG9pbnRzPSJbMCwgLTE0LCAtNSwgODhdJFswLCAtNzcsIC01LCAyNV0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9xUXVLb0JsVUVlT29LS09KUEZHZEN3IiBpZD0iKDAuNDQsMC4xNCkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9TVTBxMEJsWEVlT29LS09KUEZHZEN3IiB0eXBlPSI0MDAyIiBzb3VyY2U9Il9LbGNrVUJsWEVlT29LS09KUEZHZEN3IiB0YXJnZXQ9Il9uZnh0QUJsVUVlT29LS09KUEZHZEN3IiByb3V0aW5nPSJUcmVlIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfU1UxNDhCbFhFZU9vS0tPSlBGR2RDdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMDciPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1NVMTQ4UmxYRWVPb0tLT0pQRkdkQ3ciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9TVTBxMFJsWEVlT29LS09KUEZHZEN3IiBmb250TmFtZT0iU2Vnb2UgVUkiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19TVVhYMEJsWEVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9TVTBxMGhsWEVlT29LS09KUEZHZEN3IiBwb2ludHM9IlsxNSwgLTE1LCAtNzUsIDcyXSRbODksIC03MCwgLTEsIDE3XSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX1NVOTB3QmxYRWVPb0tLT0pQRkdkQ3ciIGlkPSIoMC40NCwwLjE1KSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX1NVOTB3UmxYRWVPb0tLT0pQRkdkQ3ciIGlkPSIoMC40OSwwLjgzKSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX1RQenNZQmxYRWVPb0tLT0pQRkdkQ3ciIHR5cGU9IjQwMDIiIHNvdXJjZT0iX00tckZnQmxYRWVPb0tLT0pQRkdkQ3ciIHRhcmdldD0iX25meHRBQmxVRWVPb0tLT0pQRkdkQ3ciIHJvdXRpbmc9IlRyZWUiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9UUDFoa0JsWEVlT29LS09KUEZHZEN3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVFAxaGtSbFhFZU9vS0tPSlBGR2RDdyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX1RQenNZUmxYRWVPb0tLT0pQRkdkQ3ciIGZvbnROYW1lPSJTZWdvZSBVSSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX1RQTjJnQmxYRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX1RQenNZaGxYRWVPb0tLT0pQRkdkQ3ciIHBvaW50cz0iWy0yNCwgLTIxLCA4MywgNzRdJFstMTE5LCAtNzYsIC0xMiwgMTldIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfVFA3b01CbFhFZU9vS0tPSlBGR2RDdyIgaWQ9IigwLjUzLDAuMjEpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfVFA4UFFCbFhFZU9vS0tPSlBGR2RDdyIgaWQ9IigwLjMxLDAuODEpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfaDJIMWdCbFhFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTAyMiIgc291cmNlPSJfZjJXV0lCbFhFZU9vS0tPSlBGR2RDdyIgdGFyZ2V0PSJfTS1yRmdCbFhFZU9vS0tPSlBGR2RDdyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfaDJIMWdSbFhFZU9vS0tPSlBGR2RDdyIgZm9udE5hbWU9IlNlZ29lIFVJIi8+CisgICAgICA8ZWxlbWVudCB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9oMkgxZ2hsWEVlT29LS09KUEZHZEN3IiBwb2ludHM9IlstNywgMywgOTcsIDldJFstNTQsIDMsIDUwLCA5XSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX2gyT2pNQmxYRWVPb0tLT0pQRkdkQ3ciIGlkPSIoMC4wNywwLjYzMzMzMzMzMzMzMzMzMzMpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfNG9nb01CbFhFZU9vS0tPSlBGR2RDdyIgdHlwZT0iMTAyMiIgc291cmNlPSJfeVJIb1VCbFhFZU9vS0tPSlBGR2RDdyIgdGFyZ2V0PSJfS2xja1VCbFhFZU9vS0tPSlBGR2RDdyIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfNG9nb01SbFhFZU9vS0tPSlBGR2RDdyIgZm9udE5hbWU9IlNlZ29lIFVJIi8+CisgICAgICA8ZWxlbWVudCB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il80b2dvTWhsWEVlT29LS09KUEZHZEN3IiBwb2ludHM9IlsxNywgMTAsIC05MCwgLTI5XSRbNTcsIDU5LCAtNTAsIDIwXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iXzRvbXUwQmxYRWVPb0tLT0pQRkdkQ3ciIGlkPSIoMC45MjQ0NDQ0NDQ0NDQ0NDQ0LDAuNikiLz4KKyAgICA8L2VkZ2VzPgorICA8L25vdGF0aW9uOkRpYWdyYW0+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX29OampvQ21vRWVPTndMay05WkxxREEiIHR5cGU9IlBhcHlydXNVTUxQcm9maWxlRGlhZ3JhbSIgbmFtZT0iQWN0dWF0b3JTeXN0ZW0iIG1lYXN1cmVtZW50VW5pdD0iUGl4ZWwiPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3ZqcmNvQ21vRWVPTndMay05WkxxREEiIHR5cGU9IjEwMjYiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il92anpZY0Ntb0VlT053TGstOVpMcURBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdmp6X2dDbW9FZU9Od0xrLTlaTHFEQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdmp6X2dTbW9FZU9Od0xrLTlaTHFEQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdmp6X2dpbW9FZU9Od0xrLTlaTHFEQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il92ajBta0Ntb0VlT053TGstOVpMcURBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3ZqMG1rU21vRWVPTndMay05WkxxREEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il92ajFOb0Ntb0VlT053TGstOVpMcURBIiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3ZqMU5vU21vRWVPTndMay05WkxxREEiIHR5cGU9IjEwNzEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il92ajFOb2ltb0VlT053TGstOVpMcURBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfdmoxTm95bW9FZU9Od0xrLTlaTHFEQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfdmoxTnBDbW9FZU9Od0xrLTlaTHFEQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il92ajFOcFNtb0VlT053TGstOVpMcURBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il92ajEwc0Ntb0VlT053TGstOVpMcURBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3ZqMTBzU21vRWVPTndMay05WkxxREEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il92ajEwc2ltb0VlT053TGstOVpMcURBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il92ajEwc3ltb0VlT053TGstOVpMcURBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3ZqMTB0Q21vRWVPTndMay05WkxxREEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2Z3TnJFRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZndOckVVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9md05yRWtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfSGxWeWdGN2JFZUNHaExUakVEa3hmZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfdmpyY29TbW9FZU9Od0xrLTlaTHFEQSIgeD0iNDIwIiB5PSI2NSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfLWU2RjBDbW9FZU9Od0xrLTlaTHFEQSIgdHlwZT0iMTAyNiIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXy1lNzdBQ21vRWVPTndMay05WkxxREEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tZTc3QVNtb0VlT053TGstOVpMcURBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8tZTc3QWltb0VlT053TGstOVpMcURBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8tZTc3QXltb0VlT053TGstOVpMcURBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXy1lOGlFQ21vRWVPTndMay05WkxxREEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfLWU4aUVTbW9FZU9Od0xrLTlaTHFEQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXy1lOGlFaW1vRWVPTndMay05WkxxREEiIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfLWU4aUV5bW9FZU9Od0xrLTlaTHFEQSIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1JtVE5jQ21wRWVPTndMay05WkxxREEiIHR5cGU9IjMwMDIiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfS0lLdm9CdGNFZUdaQnFRTEsydFBSQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfUm1UTmNTbXBFZU9Od0xrLTlaTHFEQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9SbVZDb0NtcEVlT053TGstOVpMcURBIiB0eXBlPSIzMDAyIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX085OVo0QnRjRWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1JtVkNvU21wRWVPTndMay05WkxxREEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfUm1XUXdDbXBFZU9Od0xrLTlaTHFEQSIgdHlwZT0iMzAwMiIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19UVUEwSUJ0Y0VlR1pCcVFMSzJ0UFJBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9SbVdRd1NtcEVlT053TGstOVpMcURBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1JtWUY4Q21wRWVPTndMay05WkxxREEiIHR5cGU9IjMwMDIiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfUTNJc2tCdGRFZUdaQnFRTEsydFBSQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfUm1ZRjhTbXBFZU9Od0xrLTlaTHFEQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9SbVpVRUNtcEVlT053TGstOVpMcURBIiB0eXBlPSIzMDAyIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX1VBQWlBQnRkRWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1JtWjdJQ21wRWVPTndMay05WkxxREEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfUm1iSlFDbXBFZU9Od0xrLTlaTHFEQSIgdHlwZT0iMzAwMiIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19lLUJlSUVOeUVlR01aT1NKSWZhMGdnIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9SbWJKUVNtcEVlT053TGstOVpMcURBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXy1lOGlGQ21vRWVPTndMay05WkxxREEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il8tZThpRlNtb0VlT053TGstOVpMcURBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il8tZThpRmltb0VlT053TGstOVpMcURBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXy1lOGlGeW1vRWVPTndMay05WkxxREEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXy1lOUpJQ21vRWVPTndMay05WkxxREEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfLWU5SklTbW9FZU9Od0xrLTlaTHFEQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iXy1lOUpJaW1vRWVPTndMay05WkxxREEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iXy1lOUpJeW1vRWVPTndMay05WkxxREEiLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfLWU5SkpDbW9FZU9Od0xrLTlaTHFEQSIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfZndPNU1FYk1FZU84OWJkUHBCOGdUZyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9md081TVViTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2Z3TzVNa2JNRWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI195M1FUSVAtcUVlQ1BLNFluTVJoNkF3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8tZTZGMFNtb0VlT053TGstOVpMcURBIiB4PSIxMTkiIHk9IjI2NSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfQThaYjhDbXBFZU9Od0xrLTlaTHFEQSIgdHlwZT0iMTAyNiIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0E4YXFFQ21wRWVPTndMay05WkxxREEiIHNvdXJjZT0iU2hhZG93RmlndXJlIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9BOGFxRVNtcEVlT053TGstOVpMcURBIiBrZXk9IlNoYWRvd0ZpZ3VyZV9WYWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9BOGFxRWltcEVlT053TGstOVpMcURBIiBzb3VyY2U9ImRpc3BsYXlOYW1lTGFiZWxJY29uIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9BOGFxRXltcEVlT053TGstOVpMcURBIiBrZXk9ImRpc3BsYXlOYW1lTGFiZWxJY29uX3ZhbHVlIiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0E4YlJJQ21wRWVPTndMay05WkxxREEiIHNvdXJjZT0iUXVhbGlmaWVkTmFtZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfQThiUklTbXBFZU9Od0xrLTlaTHFEQSIga2V5PSJRdWFsaWZpZWROYW1lRGVwdGgiIHZhbHVlPSIxMDAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX0E4YlJJaW1wRWVPTndMay05WkxxREEiIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfQThiUkl5bXBFZU9Od0xrLTlaTHFEQSIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1pIR0ZZQ21wRWVPTndMay05WkxxREEiIHR5cGU9IjMwMDIiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfcWJ0Y2tBQ09FZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfWkhHRllTbXBFZU9Od0xrLTlaTHFEQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9aSEg2a0NtcEVlT053TGstOVpMcURBIiB0eXBlPSIzMDAyIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzRkN0lNQUNRRWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1pISDZrU21wRWVPTndMay05WkxxREEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfWkhKSXNDbXBFZU9Od0xrLTlaTHFEQSIgdHlwZT0iMzAwMiIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI18tZ3cwWUFDUUVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9aSEpJc1NtcEVlT053TGstOVpMcURBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1pISzk0Q21wRWVPTndMay05WkxxREEiIHR5cGU9IjMwMDIiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfRC1DOGNBQ1JFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfWkhLOTRTbXBFZU9Od0xrLTlaTHFEQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9aSE1NQUNtcEVlT053TGstOVpMcURBIiB0eXBlPSIzMDAyIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX0hhYmp3QUNSRWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1pITU1BU21wRWVPTndMay05WkxxREEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfWkhOYUlDbXBFZU9Od0xrLTlaTHFEQSIgdHlwZT0iMzAwMiIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19NakFuSUFDUkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9aSE5hSVNtcEVlT053TGstOVpMcURBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1pIUFBVQ21wRWVPTndMay05WkxxREEiIHR5cGU9IjMwMDIiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfUW5DZFFBQ1JFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfWkhQUFVTbXBFZU9Od0xrLTlaTHFEQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9aSFFkY0NtcEVlT053TGstOVpMcURBIiB0eXBlPSIzMDAyIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX1RMX3RVQUNSRWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1pIUWRjU21wRWVPTndMay05WkxxREEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfWkhScmtDbXBFZU9Od0xrLTlaTHFEQSIgdHlwZT0iMzAwMiIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19qV2I3b0FDUkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9aSFJya1NtcEVlT053TGstOVpMcURBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1pIVGd3Q21wRWVPTndMay05WkxxREEiIHR5cGU9IjMwMDIiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfb3FvWklBQ1JFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfWkhUZ3dTbXBFZU9Od0xrLTlaTHFEQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9aSFV1NENtcEVlT053TGstOVpMcURBIiB0eXBlPSIzMDAyIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX2ZzVW9FQUNXRWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1pIVXU0U21wRWVPTndMay05WkxxREEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfWkhXa0VDbXBFZU9Od0xrLTlaTHFEQSIgdHlwZT0iMzAwMiIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19qVDVMc0FDV0VlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9aSFdrRVNtcEVlT053TGstOVpMcURBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1pIWHlNQ21wRWVPTndMay05WkxxREEiIHR5cGU9IjMwMDIiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfbTlHSEFBQ1dFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfWkhYeU1TbXBFZU9Od0xrLTlaTHFEQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9aSFpuWUNtcEVlT053TGstOVpMcURBIiB0eXBlPSIzMDAyIiBmb250TmFtZT0iU2Vnb2UgVUkiIGxpbmVDb2xvcj0iMCI+CisgICAgICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3JWcjM0QUNXRWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1pIWm5ZU21wRWVPTndMay05WkxxREEiLz4KKyAgICAgICAgPC9jaGlsZHJlbj4KKyAgICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfWkhhMWdDbXBFZU9Od0xrLTlaTHFEQSIgdHlwZT0iMzAwMiIgZm9udE5hbWU9IlNlZ29lIFVJIiBsaW5lQ29sb3I9IjAiPgorICAgICAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19QT1pfd0J0VEVlR1pCcVFMSzJ0UFJBIi8+CisgICAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9aSGExZ1NtcEVlT053TGstOVpMcURBIi8+CisgICAgICAgIDwvY2hpbGRyZW4+CisgICAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX1pIY3FzQ21wRWVPTndMay05WkxxREEiIHR5cGU9IjMwMDIiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfVnluNnNCdFRFZUdaQnFRTEsydFBSQSIvPgorICAgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfWkhjcXNTbXBFZU9Od0xrLTlaTHFEQSIvPgorICAgICAgICA8L2NoaWxkcmVuPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9BOGJSSkNtcEVlT053TGstOVpMcURBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfQThiUkpTbXBFZU9Od0xrLTlaTHFEQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfQThiUkppbXBFZU9Od0xrLTlaTHFEQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9BOGJSSnltcEVlT053TGstOVpMcURBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9BOGJSS0NtcEVlT053TGstOVpMcURBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX0E4YlJLU21wRWVPTndMay05WkxxREEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9BOGJSS2ltcEVlT053TGstOVpMcURBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9BOGJSS3ltcEVlT053TGstOVpMcURBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX0E4YlJMQ21wRWVPTndMay05WkxxREEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2Z3UlZjRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZndSVmNVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9md1JWY2tiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfejFQbFlQLXFFZUNQSzRZbk1SaDZBdyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfQThaYjhTbXBFZU9Od0xrLTlaTHFEQSIgeD0iMzE1IiB5PSI0NTAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX2xTZWRJQ21wRWVPTndMay05WkxxREEiIHR5cGU9IjEwMjYiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9sU2ZyUUNtcEVlT053TGstOVpMcURBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbFNmclFTbXBFZU9Od0xrLTlaTHFEQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfbFNmclFpbXBFZU9Od0xrLTlaTHFEQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfbFNmclF5bXBFZU9Od0xrLTlaTHFEQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9sU2dTVUNtcEVlT053TGstOVpMcURBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2xTZ1NVU21wRWVPTndMay05WkxxREEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9sU2dTVWltcEVlT053TGstOVpMcURBIiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2xTZ1NVeW1wRWVPTndMay05WkxxREEiIHR5cGU9IjEwNzEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9sU2dTVkNtcEVlT053TGstOVpMcURBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfbFNnU1ZTbXBFZU9Od0xrLTlaTHFEQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfbFNnU1ZpbXBFZU9Od0xrLTlaTHFEQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9sU2dTVnltcEVlT053TGstOVpMcURBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9sU2dTV0NtcEVlT053TGstOVpMcURBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX2xTZ1NXU21wRWVPTndMay05WkxxREEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9sU2dTV2ltcEVlT053TGstOVpMcURBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9sU2dTV3ltcEVlT053TGstOVpMcURBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX2xTZ1NYQ21wRWVPTndMay05WkxxREEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2Z3VV8wRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZndVXzBVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9md1VfMGtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfbFJQSEFDbXBFZU9Od0xrLTlaTHFEQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfbFNlZElTbXBFZU9Od0xrLTlaTHFEQSIgeD0iMzc3IiB5PSIyNjUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzBkTmg4Q21wRWVPTndMay05WkxxREEiIHR5cGU9IjEwMjYiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8wZE9KQUNtcEVlT053TGstOVpMcURBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMGRPSkFTbXBFZU9Od0xrLTlaTHFEQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMGRPSkFpbXBFZU9Od0xrLTlaTHFEQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMGRPSkF5bXBFZU9Od0xrLTlaTHFEQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8wZE9KQkNtcEVlT053TGstOVpMcURBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzBkT0pCU21wRWVPTndMay05WkxxREEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8wZE93RUNtcEVlT053TGstOVpMcURBIiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzBkT3dFU21wRWVPTndMay05WkxxREEiIHR5cGU9IjEwNzEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il8wZE93RWltcEVlT053TGstOVpMcURBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfMGRPd0V5bXBFZU9Od0xrLTlaTHFEQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfMGRPd0ZDbXBFZU9Od0xrLTlaTHFEQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8wZE93RlNtcEVlT053TGstOVpMcURBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il8wZE93RmltcEVlT053TGstOVpMcURBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzBkT3dGeW1wRWVPTndMay05WkxxREEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il8wZE93R0NtcEVlT053TGstOVpMcURBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il8wZE93R1NtcEVlT053TGstOVpMcURBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzBkT3dHaW1wRWVPTndMay05WkxxREEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2Z3V044RWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZndXTjhVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9md1dOOGtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfMGNmd1FDbXBFZU9Od0xrLTlaTHFEQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMGROaDhTbXBFZU9Od0xrLTlaTHFEQSIgeD0iNTkwIiB5PSI0NTAiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzZ0RmtrQ21wRWVPTndMay05WkxxREEiIHR5cGU9IjEwMjYiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il82dEd5c0NtcEVlT053TGstOVpMcURBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNnRHeXNTbXBFZU9Od0xrLTlaTHFEQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNnRIWndDbXBFZU9Od0xrLTlaTHFEQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNnRIWndTbXBFZU9Od0xrLTlaTHFEQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il82dEhad2ltcEVlT053TGstOVpMcURBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzZ0SFp3eW1wRWVPTndMay05WkxxREEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il82dEhaeENtcEVlT053TGstOVpMcURBIiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzZ0SUEwQ21wRWVPTndMay05WkxxREEiIHR5cGU9IjEwNzEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il82dElBMFNtcEVlT053TGstOVpMcURBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfNnRJQTBpbXBFZU9Od0xrLTlaTHFEQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfNnRJQTB5bXBFZU9Od0xrLTlaTHFEQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il82dElBMUNtcEVlT053TGstOVpMcURBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il82dElBMVNtcEVlT053TGstOVpMcURBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzZ0SUExaW1wRWVPTndMay05WkxxREEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il82dElBMXltcEVlT053TGstOVpMcURBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il82dElBMkNtcEVlT053TGstOVpMcURBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzZ0SUEyU21wRWVPTndMay05WkxxREEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2Z3WGNFRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZndYY0VVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9md1hjRWtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfNnNQM0VDbXBFZU9Od0xrLTlaTHFEQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfNnRGa2tTbXBFZU9Od0xrLTlaTHFEQSIgeD0iNTQ1IiB5PSIyNjUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3gySzA4Q211RWVPTndMay05WkxxREEiIHR5cGU9IjEwMjYiIGZvbnROYW1lPSJTZWdvZSBVSSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il94MkswOGltdUVlT053TGstOVpMcURBIiBzb3VyY2U9IlNoYWRvd0ZpZ3VyZSI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeDJLMDh5bXVFZU9Od0xrLTlaTHFEQSIga2V5PSJTaGFkb3dGaWd1cmVfVmFsdWUiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfeDJLMDlDbXVFZU9Od0xrLTlaTHFEQSIgc291cmNlPSJkaXNwbGF5TmFtZUxhYmVsSWNvbiI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfeDJLMDlTbXVFZU9Od0xrLTlaTHFEQSIga2V5PSJkaXNwbGF5TmFtZUxhYmVsSWNvbl92YWx1ZSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il94MkswOWltdUVlT053TGstOVpMcURBIiBzb3VyY2U9IlF1YWxpZmllZE5hbWUiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3gySzA5eW11RWVPTndMay05WkxxREEiIGtleT0iUXVhbGlmaWVkTmFtZURlcHRoIiB2YWx1ZT0iMTAwMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il94MkswLUNtdUVlT053TGstOVpMcURBIiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3gySzAtU211RWVPTndMay05WkxxREEiIHR5cGU9IjEwNzEiPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il94MkswLWltdUVlT053TGstOVpMcURBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfeDJLMC15bXVFZU9Od0xrLTlaTHFEQSIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfeDJLMF9DbXVFZU9Od0xrLTlaTHFEQSIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il94MkswX1NtdUVlT053TGstOVpMcURBIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il94MkswX2ltdUVlT053TGstOVpMcURBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3gySzBfeW11RWVPTndMay05WkxxREEiLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il94MksxQUNtdUVlT053TGstOVpMcURBIi8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il94MksxQVNtdUVlT053TGstOVpMcURBIi8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3gySzFBaW11RWVPTndMay05WkxxREEiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX2Z3WjRVRWJNRWVPODliZFBwQjhnVGciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfZndaNFVVYk1FZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9md1o0VWtiTUVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfeDFTRUlDbXVFZU9Od0xrLTlaTHFEQSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfeDJLMDhTbXVFZU9Od0xrLTlaTHFEQSIgeD0iNzExIiB5PSIyNjUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfb05qam9TbW9FZU9Od0xrLTlaTHFEQSIvPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvZmlsZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzNRT0hFUGNFRWQtSjA2VTVITV9vLVEiLz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfXzBaNUlDbW9FZU9Od0xrLTlaTHFEQSIgdHlwZT0iNDAwMiIgc291cmNlPSJfLWU2RjBDbW9FZU9Od0xrLTlaTHFEQSIgdGFyZ2V0PSJfdmpyY29DbW9FZU9Od0xrLTlaTHFEQSIgcm91dGluZz0iVHJlZSIgbGluZUNvbG9yPSIwIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX18wY1ZZQ21vRWVPTndMay05WkxxREEiIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9fMGM4Y0Ntb0VlT053TGstOVpMcURBIiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfXzBaNUlTbW9FZU9Od0xrLTlaTHFEQSIgZm9udE5hbWU9IlNlZ29lIFVJIi8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfOGdNME1CdFNFZUdaQnFRTEsydFBSQSIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfXzBaNUlpbW9FZU9Od0xrLTlaTHFEQSIgcG9pbnRzPSJbMTYsIC01MCwgLTM3LCAxMDldJFszNiwgLTEwOSwgLTE3LCA1MF0iLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9COHp3RUNtcEVlT053TGstOVpMcURBIiB0eXBlPSI0MDAyIiBzb3VyY2U9Il9sU2VkSUNtcEVlT053TGstOVpMcURBIiB0YXJnZXQ9Il92anJjb0Ntb0VlT053TGstOVpMcURBIiByb3V0aW5nPSJUcmVlIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfQjgwLU1DbXBFZU9Od0xrLTlaTHFEQSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfQjgxbFFDbXBFZU9Od0xrLTlaTHFEQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX0I4endFU21wRWVPTndMay05WkxxREEiIGZvbnROYW1lPSJTZWdvZSBVSSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzcyeGNzQnRTRWVHWkJxUUxLMnRQUkEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX0I4endFaW1wRWVPTndMay05WkxxREEiIHBvaW50cz0iWy00NSwgLTUwLCAxMjYsIDE0MV0kWy0xMjcsIC0xNDEsIDQ0LCA1MF0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il90UEdWY0NtcEVlT053TGstOVpMcURBIiBpZD0iKDAuMTc0NzU3MjgxNTUzMzk4MDYsMC4wKSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX3l1RWZrQ21wRWVPTndMay05WkxxREEiIHR5cGU9IjQwMDIiIHNvdXJjZT0iX0E4WmI4Q21wRWVPTndMay05WkxxREEiIHRhcmdldD0iX2xTZWRJQ21wRWVPTndMay05WkxxREEiIHJvdXRpbmc9IlRyZWUiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il95dUZHb0NtcEVlT053TGstOVpMcURBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfeXVGR29TbXBFZU9Od0xrLTlaTHFEQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX3l1RWZrU21wRWVPTndMay05WkxxREEiIGZvbnROYW1lPSJTZWdvZSBVSSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3l0M0VNQ21wRWVPTndMay05WkxxREEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX3l1RWZraW1wRWVPTndMay05WkxxREEiIHBvaW50cz0iWzYsIC0xMywgMCwgNzhdJFsxMSwgLTczLCA1LCAxOF0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il95dUpZRUNtcEVlT053TGstOVpMcURBIiBpZD0iKDAuNDcyOTcyOTcyOTcyOTcyOTcsMC4wNDA2MjUpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfeXVKWUVTbXBFZU9Od0xrLTlaTHFEQSIgaWQ9IigwLjU5MjIzMzAwOTcwODczNzgsMC44MikiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il8zdlpyY0NtcEVlT053TGstOVpMcURBIiB0eXBlPSI0MDAyIiBzb3VyY2U9Il8wZE5oOENtcEVlT053TGstOVpMcURBIiB0YXJnZXQ9Il9sU2VkSUNtcEVlT053TGstOVpMcURBIiByb3V0aW5nPSJUcmVlIiBsaW5lQ29sb3I9IjAiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfM3ZjSHNDbXBFZU9Od0xrLTlaTHFEQSIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMDciPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iXzN2Y0hzU21wRWVPTndMay05WkxxREEiIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il8zdlpyY1NtcEVlT053TGstOVpMcURBIiBmb250TmFtZT0iU2Vnb2UgVUkiLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI18zdkFDMENtcEVlT053TGstOVpMcURBIi8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il8zdlpyY2ltcEVlT053TGstOVpMcURBIiBwb2ludHM9IlstMjYsIC0xMiwgMTk4LCA5Ml0kWy0yMjIsIC04NCwgMiwgMjBdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfM3ZrRGdDbXBFZU9Od0xrLTlaTHFEQSIgaWQ9IigwLjU1LDAuMTIpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfM3ZrRGdTbXBFZU9Od0xrLTlaTHFEQSIgaWQ9IigwLjUzMzk4MDU4MjUyNDI3MTgsMC44KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iXzlsSUlzQ21wRWVPTndMay05WkxxREEiIHR5cGU9IjQwMDIiIHNvdXJjZT0iXzZ0RmtrQ21wRWVPTndMay05WkxxREEiIHRhcmdldD0iX3ZqcmNvQ21vRWVPTndMay05WkxxREEiIHJvdXRpbmc9IlRyZWUiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il85bEpXMENtcEVlT053TGstOVpMcURBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfOWxKVzBTbXBFZU9Od0xrLTlaTHFEQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iXzlsSUlzU21wRWVPTndMay05WkxxREEiIGZvbnROYW1lPSJTZWdvZSBVSSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzlrcmN3Q21wRWVPTndMay05WkxxREEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iXzlsSUlzaW1wRWVPTndMay05WkxxREEiIHBvaW50cz0iWy03LCAtMywgMjg0LCAxMTJdJFstMjg5LCAtOTQsIDIsIDIxXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iXzlsU2d3Q21wRWVPTndMay05WkxxREEiIGlkPSIoMC4wNywwLjE0KSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iXzlsU2d3U21wRWVPTndMay05WkxxREEiIGlkPSIoMC41MywwLjc5KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iXzI3Z1hFQ211RWVPTndMay05WkxxREEiIHR5cGU9IjQwMDIiIHNvdXJjZT0iX3gySzA4Q211RWVPTndMay05WkxxREEiIHRhcmdldD0iX3ZqcmNvQ21vRWVPTndMay05WkxxREEiIHJvdXRpbmc9IlRyZWUiIGxpbmVDb2xvcj0iMCI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8yN2dYRXltdUVlT053TGstOVpMcURBIiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfMjdnWEZDbXVFZU9Od0xrLTlaTHFEQSIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iXzI3Z1hFU211RWVPTndMay05WkxxREEiIGZvbnROYW1lPSJTZWdvZSBVSSIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzI3RHJJQ211RWVPTndMay05WkxxREEiLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iXzI3Z1hFaW11RWVPTndMay05WkxxREEiIHBvaW50cz0iWy0yNCwgLTEyLCAyMzcsIDExOV0kWy0yNTcsIC0xMTgsIDQsIDEzXSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iXzI3cGhBQ211RWVPTndMay05WkxxREEiIGlkPSIoMC4zMywwLjEyKSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iXzI3cGhBU211RWVPTndMay05WkxxREEiIGlkPSIoMC42MywwLjg3KSIvPgorICAgIDwvZWRnZXM+CisgIDwvbm90YXRpb246RGlhZ3JhbT4KKyAgPGNzczpTdHlsZVNoZWV0UmVmZXJlbmNlIHhtaTppZD0iX1BXTlc0RWUxRWVPLTdMYXZNdy1HWnciIHBhdGg9Ii9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvZG9jL3N0eWxlc2hlZXQuY3NzIi8+CisgIDxub3RhdGlvbjpEaWFncmFtIHhtaTppZD0iX0llemhFRTNTRWVPTm9kRTkzV0pvVnciIHR5cGU9IlBhcHlydXNVTUxQcm9maWxlRGlhZ3JhbSIgbmFtZT0iQ3liZXJQaHlzaWNhbCIgbWVhc3VyZW1lbnRVbml0PSJQaXhlbCI+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfU3ZrbVFFM1NFZU9Ob2RFOTNXSm9WdyIgdHlwZT0iMTAyNiI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9Tdm8zc0UzU0VlT05vZEU5M1dKb1Z3IiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1N2cGV3RTNTRWVPTm9kRTkzV0pvVnciIHR5cGU9IjEwNzEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfU3ZxRjBFM1NFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9TdnFzNEUzU0VlT05vZEU5M1dKb1Z3IiBrZXk9InNob3dUaXRsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1N2cGV3VTNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9TdnBld2szU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9TdnBldzAzU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1N2cGV4RTNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1N2cGV4VTNTRWVPTm9kRTkzV0pvVnciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1N2clQ4RTNTRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfU3ZyVDhVM1NFZU9Ob2RFOTNXSm9WdyIga2V5PSJzaG93VGl0bGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9TdnBleGszU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfU3ZwZXgwM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfU3ZwZXlFM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9TdnBleVUzU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9TdjJURUUzU0VlT05vZEU5M1dKb1Z3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9TdjI2SUUzU0VlT05vZEU5M1dKb1Z3IiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1N2MjZJVTNTRWVPTm9kRTkzV0pvVnciIGtleT0ibXV0YWJsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1N2MlRFVTNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfU3YyVEVrM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX1N0bVFVRTNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1N2a21RVTNTRWVPTm9kRTkzV0pvVnciIHg9IjE5MyIgeT0iMTI0Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9YVFdUY0UzU0VlT05vZEU5M1dKb1Z3IiB0eXBlPSIxMDI2Ij4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1hUWGhrRTNTRWVPTm9kRTkzV0pvVnciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfWFRYaGtVM1NFZU9Ob2RFOTNXSm9WdyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9YVFlJb0UzU0VlT05vZEU5M1dKb1Z3IiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1hUWXZzRTNTRWVPTm9kRTkzV0pvVnciIGtleT0ic2hvd1RpdGxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfWFRYaGtrM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX1hUWGhrMDNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX1hUWGhsRTNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfWFRYaGxVM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfWFRYaGxrM1NFZU9Ob2RFOTNXSm9WdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfWFRaOTBFM1NFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9YVFo5MFUzU0VlT05vZEU5M1dKb1Z3IiBrZXk9InNob3dUaXRsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX1hUWGhsMDNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9YVFhobUUzU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9YVFhobVUzU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX1hUWGhtazNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX1hUanUwRTNTRWVPTm9kRTkzV0pvVnciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1hUa1Y0RTNTRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWFRrVjRVM1NFZU9Ob2RFOTNXSm9WdyIga2V5PSJtdXRhYmxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfWFRqdTBVM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9YVGp1MGszU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfR29wRndQY0pFZC1KMDZVNUhNX28tUSIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfWFRXVGNVM1NFZU9Ob2RFOTNXSm9WdyIgeD0iMTk1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9yUk1oOEUzU0VlT05vZEU5M1dKb1Z3IiB0eXBlPSIxMDI2Ij4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3JSTkpBRTNTRWVPTm9kRTkzV0pvVnciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfclJOSkFVM1NFZU9Ob2RFOTNXSm9WdyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9yUk9YSUUzU0VlT05vZEU5M1dKb1Z3IiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3JST1hJVTNTRWVPTm9kRTkzV0pvVnciIGtleT0ic2hvd1RpdGxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfclJOSkFrM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3JSTkpBMDNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX3JSTkpCRTNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfclJOSkJVM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfclJOd0VFM1NFZU9Ob2RFOTNXSm9WdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfclJPLU1FM1NFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9yUlBsUUUzU0VlT05vZEU5M1dKb1Z3IiBrZXk9InNob3dUaXRsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3JSTndFVTNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9yUk53RWszU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9yUk53RTAzU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3JSTndGRTNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3JSYnlnRTNTRWVPTm9kRTkzV0pvVnciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3JSY1prRTNTRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfclJjWmtVM1NFZU9Ob2RFOTNXSm9WdyIga2V5PSJtdXRhYmxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfclJieWdVM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9yUmJ5Z2szU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfS1RzUElGN2JFZUNHaExUakVEa3hmZyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfclJNaDhVM1NFZU9Ob2RFOTNXSm9WdyIgeD0iMjEwIiB5PSIzMDUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iX3RBRzYwRTNTRWVPTm9kRTkzV0pvVnciIHR5cGU9IjEwMjYiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfdEFJSThFM1NFZU9Ob2RFOTNXSm9WdyIgdHlwZT0iMTAzNCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il90QUlJOFUzU0VlT05vZEU5M1dKb1Z3IiB0eXBlPSIxMDcxIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3RBSlhFRTNTRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdEFKWEVVM1NFZU9Ob2RFOTNXSm9WdyIga2V5PSJzaG93VGl0bGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il90QUlJOGszU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfdEFJSTgwM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfdEFJSTlFM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il90QUlJOVUzU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il90QUl3QUUzU0VlT05vZEU5M1dKb1Z3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il90QUotSUUzU0VlT05vZEU5M1dKb1Z3IiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3RBSi1JVTNTRWVPTm9kRTkzV0pvVnciIGtleT0ic2hvd1RpdGxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfdEFJd0FVM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3RBSXdBazNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX3RBSXdBMDNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfdEFJd0JFM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfdEFVV01FM1NFZU9Ob2RFOTNXSm9WdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdEFVV00wM1NFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il90QVU5UUUzU0VlT05vZEU5M1dKb1Z3IiBrZXk9Im11dGFibGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il90QVVXTVUzU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3RBVVdNazNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19IbFZ5Z0Y3YkVlQ0doTFRqRURreGZnIi8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il90QUc2MFUzU0VlT05vZEU5M1dKb1Z3IiB4PSIzMzUiIHk9IjMwNSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfMVhmY2dFM1NFZU9Ob2RFOTNXSm9WdyIgdHlwZT0iMTAyNiI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il8xWGZjZ2szU0VlT05vZEU5M1dKb1Z3IiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzFYZmNnMDNTRWVPTm9kRTkzV0pvVnciIHR5cGU9IjEwNzEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMVhncW9FM1NFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8xWGhSc0UzU0VlT05vZEU5M1dKb1Z3IiBrZXk9InNob3dUaXRsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzFYZmNoRTNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il8xWGZjaFUzU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il8xWGZjaGszU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzFYZmNoMDNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzFYZ0RrRTNTRWVPTm9kRTkzV0pvVnciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzFYaDR3RTNTRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMVhoNHdVM1NFZU9Ob2RFOTNXSm9WdyIga2V5PSJzaG93VGl0bGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il8xWGdEa1UzU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfMVhnRGtrM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfMVhnRGswM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8xWGdEbEUzU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il8xWHNRMEUzU0VlT05vZEU5M1dKb1Z3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8xWHMzNEUzU0VlT05vZEU5M1dKb1Z3IiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzFYczM0VTNTRWVPTm9kRTkzV0pvVnciIGtleT0ibXV0YWJsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzFYc1EwVTNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMVhzUTBrM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzFXcVdFRTNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzFYZmNnVTNTRWVPTm9kRTkzV0pvVnciIHg9IjMxIiB5PSIzMDUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246U2hhcGUiIHhtaTppZD0iXzdkTEJVRTNTRWVPTm9kRTkzV0pvVnciIHR5cGU9IjEwMjYiPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfN2RMQlVrM1NFZU9Ob2RFOTNXSm9WdyIgdHlwZT0iMTAzNCIvPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il83ZExCVTAzU0VlT05vZEU5M1dKb1Z3IiB0eXBlPSIxMDcxIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzdkTEJYVTNTRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfN2RMQlhrM1NFZU9Ob2RFOTNXSm9WdyIga2V5PSJzaG93VGl0bGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il83ZExCVkUzU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfN2RMQlZVM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfN2RMQlZrM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il83ZExCVjAzU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il83ZExCV0UzU0VlT05vZEU5M1dKb1Z3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iMTAxOSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il83ZExCWDAzU0VlT05vZEU5M1dKb1Z3IiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzdkTEJZRTNTRWVPTm9kRTkzV0pvVnciIGtleT0ic2hvd1RpdGxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfN2RMQldVM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iXzdkTEJXazNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iXzdkTEJXMDNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfN2RMQlhFM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfN2RkOFFFM1NFZU9Ob2RFOTNXSm9WdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9ImNvbXBhcnRtZW50X3NoYXBlX2Rpc3BsYXkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfN2RkOFEwM1NFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il83ZGQ4UkUzU0VlT05vZEU5M1dKb1Z3IiBrZXk9Im11dGFibGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il83ZGQ4UVUzU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzdkZDhRazNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI183Y2JhY0UzU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il83ZExCVVUzU0VlT05vZEU5M1dKb1Z3IiB4PSI0NjAiIHk9IjMwNSIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfX040NTRFM1NFZU9Ob2RFOTNXSm9WdyIgdHlwZT0iMTAyNiI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9fTjQ1NGszU0VlT05vZEU5M1dKb1Z3IiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX19ONDU0MDNTRWVPTm9kRTkzV0pvVnciIHR5cGU9IjEwNzEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfX040NTdVM1NFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9fTjQ1N2szU0VlT05vZEU5M1dKb1Z3IiBrZXk9InNob3dUaXRsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX19ONDU1RTNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9fTjQ1NVUzU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9fTjQ1NWszU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX19ONDU1MDNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX19ONDU2RTNTRWVPTm9kRTkzV0pvVnciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX19ONDU3MDNTRWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfX040NThFM1NFZU9Ob2RFOTNXSm9WdyIga2V5PSJzaG93VGl0bGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il9fTjQ1NlUzU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfX040NTZrM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfX040NTYwM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9fTjQ1N0UzU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il9fT0NEMEUzU0VlT05vZEU5M1dKb1Z3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9fT0NEMDAzU0VlT05vZEU5M1dKb1Z3IiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX19PQ0QxRTNTRWVPTm9kRTkzV0pvVnciIGtleT0ibXV0YWJsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX19PQ0QwVTNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfX09DRDBrM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX19OSlRBRTNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX19ONDU0VTNTRWVPTm9kRTkzV0pvVnciIHg9IjYzMSIgeT0iMzA1Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il9yQ1E0b0UzVEVlT05vZEU5M1dKb1Z3IiB0eXBlPSIxMDI2Ij4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3JDUTRvazNURWVPTm9kRTkzV0pvVnciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfckNRNG8wM1RFZU9Ob2RFOTNXSm9WdyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9yQ1E0clUzVEVlT05vZEU5M1dKb1Z3IiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3JDUTRyazNURWVPTm9kRTkzV0pvVnciIGtleT0ic2hvd1RpdGxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfckNRNHBFM1RFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iX3JDUTRwVTNURWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iX3JDUTRwazNURWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfckNRNHAwM1RFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfckNRNHFFM1RFZU9Ob2RFOTNXSm9WdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfckNRNHIwM1RFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9yQ1E0c0UzVEVlT05vZEU5M1dKb1Z3IiBrZXk9InNob3dUaXRsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3JDUTRxVTNURWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il9yQ1E0cWszVEVlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il9yQ1E0cTAzVEVlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3JDUTRyRTNURWVPTm9kRTkzV0pvVnciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3JDYXBvRTNURWVPTm9kRTkzV0pvVnciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3JDYXBvMDNURWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfckNhcHBFM1RFZU9Ob2RFOTNXSm9WdyIga2V5PSJtdXRhYmxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfckNhcG9VM1RFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il9yQ2Fwb2szVEVlT05vZEU5M1dKb1Z3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfckJZSDBFM1RFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfckNRNG9VM1RFZU9Ob2RFOTNXSm9WdyIgeD0iMTEiIHk9IjQ3OCIvPgorICAgIDwvY2hpbGRyZW4+CisgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpTaGFwZSIgeG1pOmlkPSJfdFNSemNFM1RFZU9Ob2RFOTNXSm9WdyIgdHlwZT0iMTAyNiI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il90U1J6Y2szVEVlT05vZEU5M1dKb1Z3IiB0eXBlPSIxMDM0Ii8+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3RTYmtjRTNURWVPTm9kRTkzV0pvVnciIHR5cGU9IjEwNzEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfdFNia2VrM1RFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il90U2JrZTAzVEVlT05vZEU5M1dKb1Z3IiBrZXk9InNob3dUaXRsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3RTYmtjVTNURWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il90U2JrY2szVEVlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il90U2JrYzAzVEVlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3RTYmtkRTNURWVPTm9kRTkzV0pvVnciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iX3RTYmtkVTNURWVPTm9kRTkzV0pvVnciIHZpc2libGU9ImZhbHNlIiB0eXBlPSIxMDE5Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX3RTYmtmRTNURWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfdFNia2ZVM1RFZU9Ob2RFOTNXSm9WdyIga2V5PSJzaG93VGl0bGUiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpUaXRsZVN0eWxlIiB4bWk6aWQ9Il90U2JrZGszVEVlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlNvcnRpbmdTdHlsZSIgeG1pOmlkPSJfdFNia2QwM1RFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGaWx0ZXJpbmdTdHlsZSIgeG1pOmlkPSJfdFNia2VFM1RFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il90U2JrZVUzVEVlT05vZEU5M1dKb1Z3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpCYXNpY0NvbXBhcnRtZW50IiB4bWk6aWQ9Il90U2t1WUUzVEVlT05vZEU5M1dKb1Z3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iY29tcGFydG1lbnRfc2hhcGVfZGlzcGxheSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il90U2t1WTAzVEVlT05vZEU5M1dKb1Z3IiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3RTa3VaRTNURWVPTm9kRTkzV0pvVnciIGtleT0ibXV0YWJsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iX3RTa3VZVTNURWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfdFNrdVlrM1RFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3RSaU1rRTNURWVPTm9kRTkzV0pvVnciLz4KKyAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iX3RTUnpjVTNURWVPTm9kRTkzV0pvVnciIHg9IjE1NiIgeT0iNDc4Ii8+CisgICAgPC9jaGlsZHJlbj4KKyAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOlNoYXBlIiB4bWk6aWQ9Il8wUTVMWUUzVEVlT05vZEU5M1dKb1Z3IiB0eXBlPSIxMDI2Ij4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzBRNUxZazNURWVPTm9kRTkzV0pvVnciIHR5cGU9IjEwMzQiLz4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfMFE1TFkwM1RFZU9Ob2RFOTNXSm9WdyIgdHlwZT0iMTA3MSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8wUTVMYlUzVEVlT05vZEU5M1dKb1Z3IiBzb3VyY2U9IlBhcHlydXNDU1NGb3JjZVZhbHVlIj4KKyAgICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzBRNUxiazNURWVPTm9kRTkzV0pvVnciIGtleT0ic2hvd1RpdGxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfMFE1TFpFM1RFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpTb3J0aW5nU3R5bGUiIHhtaTppZD0iXzBRNUxaVTNURWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246RmlsdGVyaW5nU3R5bGUiIHhtaTppZD0iXzBRNUxaazNURWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMFE1TFowM1RFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246QmFzaWNDb21wYXJ0bWVudCIgeG1pOmlkPSJfMFE1TGFFM1RFZU9Ob2RFOTNXSm9WdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjEwMTkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMFE1TGIwM1RFZU9Ob2RFOTNXSm9WdyIgc291cmNlPSJQYXB5cnVzQ1NTRm9yY2VWYWx1ZSI+CisgICAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8wUTVMY0UzVEVlT05vZEU5M1dKb1Z3IiBrZXk9InNob3dUaXRsZSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOlRpdGxlU3R5bGUiIHhtaTppZD0iXzBRNUxhVTNURWVPTm9kRTkzV0pvVnciLz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246U29ydGluZ1N0eWxlIiB4bWk6aWQ9Il8wUTVMYWszVEVlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZpbHRlcmluZ1N0eWxlIiB4bWk6aWQ9Il8wUTVMYTAzVEVlT05vZEU5M1dKb1Z3Ii8+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpCb3VuZHMiIHhtaTppZD0iXzBRNUxiRTNURWVPTm9kRTkzV0pvVnciLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkJhc2ljQ29tcGFydG1lbnQiIHhtaTppZD0iXzBSQzhZRTNURWVPTm9kRTkzV0pvVnciIHZpc2libGU9ImZhbHNlIiB0eXBlPSJjb21wYXJ0bWVudF9zaGFwZV9kaXNwbGF5Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzBSQzhZMDNURWVPTm9kRTkzV0pvVnciIHNvdXJjZT0iUGFweXJ1c0NTU0ZvcmNlVmFsdWUiPgorICAgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMFJDOFpFM1RFZU9Ob2RFOTNXSm9WdyIga2V5PSJtdXRhYmxlIiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246VGl0bGVTdHlsZSIgeG1pOmlkPSJfMFJDOFlVM1RFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246Qm91bmRzIiB4bWk6aWQ9Il8wUkM4WWszVEVlT05vZEU5M1dKb1Z3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfMFFKa2dFM1RFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkJvdW5kcyIgeG1pOmlkPSJfMFE1TFlVM1RFZU9Ob2RFOTNXSm9WdyIgeD0iMTY1IiB5PSI2MjUiLz4KKyAgICA8L2NoaWxkcmVuPgorICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkRpYWdyYW1TdHlsZSIgeG1pOmlkPSJfSWV6aEVVM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6UHJvZmlsZSIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzNRT0hFUGNFRWQtSjA2VTVITV9vLVEiLz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfWTZMSFVFM1NFZU9Ob2RFOTNXSm9WdyIgdHlwZT0iNDAwMiIgc291cmNlPSJfU3ZrbVFFM1NFZU9Ob2RFOTNXSm9WdyIgdGFyZ2V0PSJfWFRXVGNFM1NFZU9Ob2RFOTNXSm9WdyI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9ZNkx1WUUzU0VlT05vZEU5M1dKb1Z3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfWTZMdVlVM1NFZU9Ob2RFOTNXSm9WdyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX1k2TEhVVTNTRWVPTm9kRTkzV0pvVnciLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19ZNFhKY0UzU0VlT05vZEU5M1dKb1Z3Ii8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9ZNkxIVWszU0VlT05vZEU5M1dKb1Z3IiBwb2ludHM9Ils1LCAtMTUsIDAsIDQ0XSRbNywgLTM5LCAyLCAyMF0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9ZNld0Z0UzU0VlT05vZEU5M1dKb1Z3IiBpZD0iKDAuNDU1MzU3MTQyODU3MTQyODUsMC4xNSkiLz4KKyAgICAgIDx0YXJnZXRBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9ZNld0Z1UzU0VlT05vZEU5M1dKb1Z3IiBpZD0iKDAuNTQsMC44KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX1JrdjhjRTNURWVPTm9kRTkzV0pvVnciIHR5cGU9IjQwMDIiIHNvdXJjZT0iXzFYZmNnRTNTRWVPTm9kRTkzV0pvVnciIHRhcmdldD0iX1N2a21RRTNTRWVPTm9kRTkzV0pvVnciPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfUmt2OGMwM1RFZU9Ob2RFOTNXSm9WdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMDciPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1JrdjhkRTNURWVPTm9kRTkzV0pvVnciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9Sa3Y4Y1UzVEVlT05vZEU5M1dKb1Z3Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfUmtUUWdFM1RFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfUmt2OGNrM1RFZU9Ob2RFOTNXSm9WdyIgcG9pbnRzPSJbMjIsIC0xOSwgLTExNiwgOTddJFsxMzEsIC0xMDYsIC03LCAxMF0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9SazV0Y0UzVEVlT05vZEU5M1dKb1Z3IiBpZD0iKDAuNDc0MDI1OTc0MDI1OTc0LDAuMTkpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfUms1dGNVM1RFZU9Ob2RFOTNXSm9WdyIgaWQ9IigwLjI3Njc4NTcxNDI4NTcxNDMsMC45KSIvPgorICAgIDwvZWRnZXM+CisgICAgPGVkZ2VzIHhtaTp0eXBlPSJub3RhdGlvbjpDb25uZWN0b3IiIHhtaTppZD0iX1NOcVdrRTNURWVPTm9kRTkzV0pvVnciIHR5cGU9IjQwMDIiIHNvdXJjZT0iX3JSTWg4RTNTRWVPTm9kRTkzV0pvVnciIHRhcmdldD0iX1N2a21RRTNTRWVPTm9kRTkzV0pvVnciPgorICAgICAgPGNoaWxkcmVuIHhtaTp0eXBlPSJub3RhdGlvbjpEZWNvcmF0aW9uTm9kZSIgeG1pOmlkPSJfU05xV2swM1RFZU9Ob2RFOTNXSm9WdyIgdmlzaWJsZT0iZmFsc2UiIHR5cGU9IjYwMDciPgorICAgICAgICA8bGF5b3V0Q29uc3RyYWludCB4bWk6dHlwZT0ibm90YXRpb246TG9jYXRpb24iIHhtaTppZD0iX1NOcVdsRTNURWVPTm9kRTkzV0pvVnciIHk9IjYwIi8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9TTnFXa1UzVEVlT05vZEU5M1dKb1Z3Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfU05FZ3NFM1RFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfU05xV2trM1RFZU9Ob2RFOTNXSm9WdyIgcG9pbnRzPSJbLTIsIC0xNCwgMTAsIDk2XSRbLTEzLCAtMTAwLCAtMSwgMTBdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfU04wSGtFM1RFZU9Ob2RFOTNXSm9WdyIgaWQ9IigwLjQ5LDAuMTQpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfU04wSGtVM1RFZU9Ob2RFOTNXSm9WdyIgaWQ9IigwLjQ4MjE0Mjg1NzE0Mjg1NzE1LDAuOSkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9UUUJMY0UzVEVlT05vZEU5M1dKb1Z3IiB0eXBlPSI0MDAyIiBzb3VyY2U9Il90QUc2MEUzU0VlT05vZEU5M1dKb1Z3IiB0YXJnZXQ9Il9TdmttUUUzU0VlT05vZEU5M1dKb1Z3Ij4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1RRQkxjMDNURWVPTm9kRTkzV0pvVnciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9UUUJMZEUzVEVlT05vZEU5M1dKb1Z3IiB4PSIzOSIgeT0iLTI3Ii8+CisgICAgICA8L2NoaWxkcmVuPgorICAgICAgPHN0eWxlcyB4bWk6dHlwZT0ibm90YXRpb246Rm9udFN0eWxlIiB4bWk6aWQ9Il9UUUJMY1UzVEVlT05vZEU5M1dKb1Z3Ii8+CisgICAgICA8ZWxlbWVudCB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiBocmVmPSJSb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbCNfVFBrZmdFM1RFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgPGJlbmRwb2ludHMgeG1pOnR5cGU9Im5vdGF0aW9uOlJlbGF0aXZlQmVuZHBvaW50cyIgeG1pOmlkPSJfVFFCTGNrM1RFZU9Ob2RFOTNXSm9WdyIgcG9pbnRzPSJbLTIyLCAtMTQsIDE0OSwgOThdJFstMTY3LCAtOTUsIDQsIDE3XSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX1RRS1ZZRTNURWVPTm9kRTkzV0pvVnciIGlkPSIoMC40OSwwLjE0KSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX1RRS1ZZVTNURWVPTm9kRTkzV0pvVnciIGlkPSIoMC41ODAzNTcxNDI4NTcxNDI5LDAuODMpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfVUF6dk1FM1RFZU9Ob2RFOTNXSm9WdyIgdHlwZT0iNDAwMiIgc291cmNlPSJfN2RMQlVFM1NFZU9Ob2RFOTNXSm9WdyIgdGFyZ2V0PSJfU3ZrbVFFM1NFZU9Ob2RFOTNXSm9WdyI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il9VQXp2TTAzVEVlT05vZEU5M1dKb1Z3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfVUF6dk5FM1RFZU9Ob2RFOTNXSm9WdyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX1VBenZNVTNURWVPTm9kRTkzV0pvVnciLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI19VQVhxVUUzVEVlT05vZEU5M1dKb1Z3Ii8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il9VQXp2TWszVEVlT05vZEU5M1dKb1Z3IiBwb2ludHM9IlstMTUsIC03LCAyMzAsIDEwNl0kWy0yMzksIC05OSwgNiwgMTRdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfVUE5Z01FM1RFZU9Ob2RFOTNXSm9WdyIgaWQ9IigwLjEwMjczOTcyNjAyNzM5NzI1LDAuMTgpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfVUE5Z01VM1RFZU9Ob2RFOTNXSm9WdyIgaWQ9IigwLjY0Mjg1NzE0Mjg1NzE0MjksMC44NikiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il9WVm0tOEUzVEVlT05vZEU5M1dKb1Z3IiB0eXBlPSI0MDAyIiBzb3VyY2U9Il9fTjQ1NEUzU0VlT05vZEU5M1dKb1Z3IiB0YXJnZXQ9Il9TdmttUUUzU0VlT05vZEU5M1dKb1Z3Ij4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX1ZWbS04MDNURWVPTm9kRTkzV0pvVnciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il9WVm0tOUUzVEVlT05vZEU5M1dKb1Z3IiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfVlZtLThVM1RFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX1ZVa2RJRTNURWVPTm9kRTkzV0pvVnciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX1ZWbS04azNURWVPTm9kRTkzV0pvVnciIHBvaW50cz0iWy0xNywgLTUsIDM5NSwgMTA1XSRbLTQwMywgLTkyLCA5LCAxOF0iLz4KKyAgICAgIDxzb3VyY2VBbmNob3IgeG1pOnR5cGU9Im5vdGF0aW9uOklkZW50aXR5QW5jaG9yIiB4bWk6aWQ9Il9WVnd2OEUzVEVlT05vZEU5M1dKb1Z3IiBpZD0iKDAuMTIyMzAyMTU4MjczMzgxMywwLjExKSIvPgorICAgICAgPHRhcmdldEFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iX1ZWd3Y4VTNURWVPTm9kRTkzV0pvVnciIGlkPSIoMC42NDI4NTcxNDI4NTcxNDI5LDAuODIpIi8+CisgICAgPC9lZGdlcz4KKyAgICA8ZWRnZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkNvbm5lY3RvciIgeG1pOmlkPSJfdnV5U0lFM1RFZU9Ob2RFOTNXSm9WdyIgdHlwZT0iNDAwMiIgc291cmNlPSJfckNRNG9FM1RFZU9Ob2RFOTNXSm9WdyIgdGFyZ2V0PSJfMVhmY2dFM1NFZU9Ob2RFOTNXSm9WdyIgcm91dGluZz0iVHJlZSI+CisgICAgICA8Y2hpbGRyZW4geG1pOnR5cGU9Im5vdGF0aW9uOkRlY29yYXRpb25Ob2RlIiB4bWk6aWQ9Il92dXlTSTAzVEVlT05vZEU5M1dKb1Z3IiB2aXNpYmxlPSJmYWxzZSIgdHlwZT0iNjAwNyI+CisgICAgICAgIDxsYXlvdXRDb25zdHJhaW50IHhtaTp0eXBlPSJub3RhdGlvbjpMb2NhdGlvbiIgeG1pOmlkPSJfdnV5U0pFM1RFZU9Ob2RFOTNXSm9WdyIgeT0iNjAiLz4KKyAgICAgIDwvY2hpbGRyZW4+CisgICAgICA8c3R5bGVzIHhtaTp0eXBlPSJub3RhdGlvbjpGb250U3R5bGUiIHhtaTppZD0iX3Z1eVNJVTNURWVPTm9kRTkzV0pvVnciLz4KKyAgICAgIDxlbGVtZW50IHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIGhyZWY9IlJvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sI192dVZtTUUzVEVlT05vZEU5M1dKb1Z3Ii8+CisgICAgICA8YmVuZHBvaW50cyB4bWk6dHlwZT0ibm90YXRpb246UmVsYXRpdmVCZW5kcG9pbnRzIiB4bWk6aWQ9Il92dXlTSWszVEVlT05vZEU5M1dKb1Z3IiBwb2ludHM9IlsyLCAtMTEsIC0yMiwgODNdJFsyMiwgLTc4LCAtMiwgMTZdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfdnU4RElFM1RFZU9Ob2RFOTNXSm9WdyIgaWQ9IigwLjUyLDAuMTEpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfdnU4RElVM1RFZU9Ob2RFOTNXSm9WdyIgaWQ9IigwLjQ4MDUxOTQ4MDUxOTQ4MDUsMC44NCkiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il93YmF1b0UzVEVlT05vZEU5M1dKb1Z3IiB0eXBlPSI0MDAyIiBzb3VyY2U9Il90U1J6Y0UzVEVlT05vZEU5M1dKb1Z3IiB0YXJnZXQ9Il8xWGZjZ0UzU0VlT05vZEU5M1dKb1Z3IiByb3V0aW5nPSJUcmVlIj4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iX3diYXVvMDNURWVPTm9kRTkzV0pvVnciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il93YmF1cEUzVEVlT05vZEU5M1dKb1Z3IiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfd2JhdW9VM1RFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjX3dhLUNzRTNURWVPTm9kRTkzV0pvVnciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iX3diYXVvazNURWVPTm9kRTkzV0pvVnciIHBvaW50cz0iWy0zLCAtMiwgMTA1LCA4Nl0kWy0xMDAsIC03NSwgOCwgMTNdIi8+CisgICAgICA8c291cmNlQW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfd2JrZm9FM1RFZU9Ob2RFOTNXSm9WdyIgaWQ9IigwLjQzNzkwODQ5NjczMjAyNjE0LDAuMDIpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfd2JrZm9VM1RFZU9Ob2RFOTNXSm9WdyIgaWQ9IigwLjY2MjMzNzY2MjMzNzY2MjMsMC44NykiLz4KKyAgICA8L2VkZ2VzPgorICAgIDxlZGdlcyB4bWk6dHlwZT0ibm90YXRpb246Q29ubmVjdG9yIiB4bWk6aWQ9Il8zNDFpY0UzVEVlT05vZEU5M1dKb1Z3IiB0eXBlPSI0MDAyIiBzb3VyY2U9Il8wUTVMWUUzVEVlT05vZEU5M1dKb1Z3IiB0YXJnZXQ9Il90U1J6Y0UzVEVlT05vZEU5M1dKb1Z3Ij4KKyAgICAgIDxjaGlsZHJlbiB4bWk6dHlwZT0ibm90YXRpb246RGVjb3JhdGlvbk5vZGUiIHhtaTppZD0iXzM0MWljMDNURWVPTm9kRTkzV0pvVnciIHZpc2libGU9ImZhbHNlIiB0eXBlPSI2MDA3Ij4KKyAgICAgICAgPGxheW91dENvbnN0cmFpbnQgeG1pOnR5cGU9Im5vdGF0aW9uOkxvY2F0aW9uIiB4bWk6aWQ9Il8zNDFpZEUzVEVlT05vZEU5M1dKb1Z3IiB5PSI2MCIvPgorICAgICAgPC9jaGlsZHJlbj4KKyAgICAgIDxzdHlsZXMgeG1pOnR5cGU9Im5vdGF0aW9uOkZvbnRTdHlsZSIgeG1pOmlkPSJfMzQxaWNVM1RFZU9Ob2RFOTNXSm9WdyIvPgorICAgICAgPGVsZW1lbnQgeG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgaHJlZj0iUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzM0aUFjRTNURWVPTm9kRTkzV0pvVnciLz4KKyAgICAgIDxiZW5kcG9pbnRzIHhtaTp0eXBlPSJub3RhdGlvbjpSZWxhdGl2ZUJlbmRwb2ludHMiIHhtaTppZD0iXzM0MWljazNURWVPTm9kRTkzV0pvVnciIHBvaW50cz0iWzUsIC0xNCwgMCwgNTldJFs4LCAtNTUsIDMsIDE4XSIvPgorICAgICAgPHNvdXJjZUFuY2hvciB4bWk6dHlwZT0ibm90YXRpb246SWRlbnRpdHlBbmNob3IiIHhtaTppZD0iXzM0LXNZRTNURWVPTm9kRTkzV0pvVnciIGlkPSIoMC41MTkwODM5Njk0NjU2NDg4LDAuMTQpIi8+CisgICAgICA8dGFyZ2V0QW5jaG9yIHhtaTp0eXBlPSJub3RhdGlvbjpJZGVudGl0eUFuY2hvciIgeG1pOmlkPSJfMzQtc1lVM1RFZU9Ob2RFOTNXSm9WdyIgaWQ9IigwLjUzNTk0NzcxMjQxODMwMDYsMC44MikiLz4KKyAgICA8L2VkZ2VzPgorICA8L25vdGF0aW9uOkRpYWdyYW0+Cis8L3htaTpYTUk+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvbW9kZWwvUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvbW9kZWwvUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjA3NTMyZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9tb2RlbC9Sb2JvdE1MUHJvZmlsZS5wcm9maWxlLnVtbApAQCAtMCwwICsxLDIyMTUgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8dW1sOlByb2ZpbGUgeG1pOnZlcnNpb249IjIwMTMxMDAxIiB4bWxuczp4bWk9Imh0dHA6Ly93d3cub21nLm9yZy9zcGVjL1hNSS8yMDEzMTAwMSIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgeG1sbnM6ZWNvcmU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUiIHhtbG5zOnVtbD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCIgeG1pOmlkPSJfM1FPSEVQY0VFZC1KMDZVNUhNX28tUSIgbmFtZT0iUm9ib3RNTCIgVVJJPSJodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEiIG1ldGFjbGFzc1JlZmVyZW5jZT0iXzdidWRNUGNQRWQtSjA2VTVITV9vLVEgXzhfWV9VQ2xYRWVDaVZaUTlvLTFIMkEgX3ViTDM0R0F5RWVDVVFmM3ZwQUc2SkEgX3d1YWV3R0F5RWVDVVFmM3ZwQUc2SkEgXzZlSzFrQnRURWVHWkJxUUxLMnRQUkEgX05JRGgwQnRVRWVHWkJxUUxLMnRQUkEgX1hVbU1VQnRxRWVHWkJxUUxLMnRQUkEgX19IS1VnQ0RtRWVHQ2M5c0hrcnZaYmcgX0lPWGl3Q0pxRWVHWGJiNDUzdFAweUEgX0tVeDFvQ0pxRWVHWGJiNDUzdFAweUEgX3JNcUFJRWFSRWVHMVJ2eEtnY0RabXcgX3FaQ3hrR0xQRWVHeUE4aEsxTWhnQlEgX20wYW5nSTZ4RWVHZENlRkZKbHg4a0EgX3Z5NlYwSHd0RWVLbERiQ0xhSXo2dGcgX2VBQUI4SHc2RWVLazNhWC1QX29rSncgX3FualRJTHZHRWVLdF82MVRFclJmdHcgX21hSTZvQmxVRWVPb0tLT0pQRkdkQ3ciPgorICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfVm9ScW9SNFZFZUNLb3QwclhpNnFyZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICA8Y29udGVudHMgeG1pOnR5cGU9ImVjb3JlOkVQYWNrYWdlIiB4bWk6aWQ9Il9lQzFRY0VmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJSb2JvdE1MIiBuc1VSST0iaHR0cDovLy9zY2hlbWFzL1JvYm90TUwvX2NrU08wRWZDRWVPaUdfY0lFcGJ6UVEvMSIgbnNQcmVmaXg9IlJvYm90TUwiPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMVFjVWZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzQuMC4wL1VNTCI+CisgICAgICAgIDxyZWZlcmVuY2VzIHhtaTp0eXBlPSJ1bWw6UGFja2FnZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfd3lTNmdBSC1FZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMVFja2ZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IlJvYm90IiBlU3VwZXJUeXBlcz0iX2VDMVFla2ZDRWVPaUdfY0lFcGJ6UVEgX2VDMVFoRWZDRWVPaUdfY0lFcGJ6UVEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxUWMwZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfRWRuWW9QY0pFZC1KMDZVNUhNX28tUSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUWRFZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0ibWFzcyIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfZUMxUWxrZkNFZU9pR19jSUVwYnpRUSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUWRrZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0id2lkdGgiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX2VDMVFsa2ZDRWVPaUdfY0lFcGJ6UVEiLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzFRZWtmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJTeXN0ZW0iPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxUWUwZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfR29wRndQY0pFZC1KMDZVNUhNX28tUSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgeG1pOmlkPSJfZUMxUWZFZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iYmFzZV9DbGFzcyIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiPgorICAgICAgICAgIDxlVHlwZSB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQ2xhc3MiLz4KKyAgICAgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUWZrZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0ibmF0aXZlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgICAgPGVUeXBlIHhtaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9UeXBlcyMvL0Jvb2xlYW4iLz4KKyAgICAgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUWdFZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0ibGlicmFyeVBhdGgiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1R5cGVzIy8vU3RyaW5nIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMVFna2ZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9ImxpYnJhcnlDb21wb25lbnROYW1lIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgICAgPGVUeXBlIHhtaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9UeXBlcyMvL1N0cmluZyIvPgorICAgICAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfZUMxUWhFZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iQWdlbnQiIGVTdXBlclR5cGVzPSJfZUMxUWlVZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzFRaFVmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il8tQVFzVUVYUkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiB4bWk6aWQ9Il9lQzFRaGtmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJtb3Zlc092ZXIiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9Il9lQzFRazBmQ0VlT2lHX2NJRXBielFRIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfZUMxUWlVZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iUGh5c2ljYWxPYmplY3QiIGVTdXBlclR5cGVzPSJfZUMxUWVrZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzFRaWtmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9aVWhoQUVYTkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiB4bWk6aWQ9Il9lQzFRaTBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJldmVsb3Zlc0luIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSJfZUMxUWtFZkNFZU9pR19jSUVwYnpRUSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgeG1pOmlkPSJfZUMxUWpVZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iaGFzU3VyZmFjZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfZUMxUWswZkNFZU9pR19jSUVwYnpRUSIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMVFrRWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IkVudmlyb25tZW50IiBlU3VwZXJUeXBlcz0iX2VDMVFla2ZDRWVPaUdfY0lFcGJ6UVEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxUWtVZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfRDdXNUlFWFBFZUdlM00zTl84NDZydyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMVFrMGZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IlN1cmZhY2UiIGVTdXBlclR5cGVzPSJfZUMxUWlVZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzFRbEVmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9GaWZBUUVYVkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgeG1pOmlkPSJfZUMxUWxrZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iUm9ib3RNTExpYnJhcmllc19Sb2JvdE1MX01vZGVsTGlicmFyeV9Sb2JvdE1MX0RhdGFUeXBlc19zdGRfZGF0YXR5cGVzX0Zsb2F0MzIiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLmxhbmcuU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMVFsMGZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xdVhtQUFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMVFtRWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IkRhdGFGbG93UG9ydCIgZVN1cGVyVHlwZXM9Il9lQzFRbjBmQ0VlT2lHX2NJRXBielFRIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMVFtVWZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX1J6d1FzQm1pRWVDUWlyeGNqX1JhRmciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMVFta2ZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9ImRpcmVjdGlvbiIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfZUMxUXFrZkNFZU9pR19jSUVwYnpRUSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUW5FZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iYnVmZmVyU2l6ZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGRlZmF1bHRWYWx1ZUxpdGVyYWw9IjAiPgorICAgICAgICAgIDxlVHlwZSB4bWk6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVHlwZXMjLy9JbnRlZ2VyIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzFRbjBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJQb3J0IiBhYnN0cmFjdD0idHJ1ZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzFRb0VmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il8xdGROMEdCQkVlQ1VRZjN2cEFHNkpBIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiB4bWk6aWQ9Il9lQzFRb1VmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJiYXNlX1BvcnQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1BvcnQiLz4KKyAgICAgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUW8wZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0ic3luY2hyb25pemF0aW9uUG9saWN5IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzFRcFVmQ0VlT2lHX2NJRXBielFRIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtIiB4bWk6aWQ9Il9lQzFRcFVmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJTeW5jaHJvbml6YXRpb25LaW5kIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMVFwa2ZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX0otblo0R0JDRWVDVVFmM3ZwQUc2SkEiLz4KKyAgICAgICAgPGVMaXRlcmFscyB4bWk6dHlwZT0iZWNvcmU6RUVudW1MaXRlcmFsIiB4bWk6aWQ9Il9lQzFRcDBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJTWU5DSCIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX2VDMVFxRWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IkFTWU5DSCIgdmFsdWU9IjEiLz4KKyAgICAgICAgPGVMaXRlcmFscyB4bWk6dHlwZT0iZWNvcmU6RUVudW1MaXRlcmFsIiB4bWk6aWQ9Il9lQzFRcVVmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJ1bmRlZmluZWQiIHZhbHVlPSIyIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtIiB4bWk6aWQ9Il9lQzFRcWtmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJEYXRhRmxvd0RpcmVjdGlvbktpbmQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxUXEwZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfV1hiMFlDbFNFZUNVRHV3Q0dfaGxadyIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX2VDMVFyRWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9ImluIi8+CisgICAgICAgIDxlTGl0ZXJhbHMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtTGl0ZXJhbCIgeG1pOmlkPSJfZUMxUXJVZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0ib3V0IiB2YWx1ZT0iMSIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX2VDMVFya2ZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9Imlub3V0IiB2YWx1ZT0iMiIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFRW51bSIgeG1pOmlkPSJfZUMxUXIwZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iU2VydmljZUZsb3dLaW5kIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMVFzRWZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iXzYtYjhZRjdhRWVDR2hMVGpFRGt4ZmciLz4KKyAgICAgICAgPGVMaXRlcmFscyB4bWk6dHlwZT0iZWNvcmU6RUVudW1MaXRlcmFsIiB4bWk6aWQ9Il9lQzFRc1VmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJwcm92aWRlZCIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX2VDMVFza2ZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9InJlcXVpcmVkIiB2YWx1ZT0iMSIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMVFzMGZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IlNlcnZpY2VQb3J0IiBlU3VwZXJUeXBlcz0iX2VDMVFuMGZDRWVPaUdfY0lFcGJ6UVEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxUXRFZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfQlBJZVlGN2JFZUNHaExUakVEa3hmZyIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUXRVZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0ia2luZCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfZUMxUXIwZkNFZU9pR19jSUVwYnpRUSIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMVF1RWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IkFjdHVhdG9yU3lzdGVtIiBlU3VwZXJUeXBlcz0iX2VDMVF1MGZDRWVPaUdfY0lFcGJ6UVEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxUXVVZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfSGxWeWdGN2JFZUNHaExUakVEa3hmZyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMVF1MGZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IlJvYm90aWNTeXN0ZW0iIGVTdXBlclR5cGVzPSJfZUMxUWVrZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzFRdkVmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9ZNUhBSUFDY0VlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiB4bWk6aWQ9Il9lQzFRdlVmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJsb2NhbFBvc2l0aW9uIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzFRd2tmQ0VlT2lHX2NJRXBielFRIiBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgeG1pOmlkPSJfZUMxUXYwZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0ibG9jYWxPcmllbnRhdGlvbiIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfZUMxUXdrZkNFZU9pR19jSUVwYnpRUSIgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzFRd2tmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJSb2JvdE1MTGlicmFyaWVzX1JvYm90TUxfTW9kZWxMaWJyYXJ5X1JvYm90TUxfRGF0YVR5cGVzX2dlb21ldHJ5X2RhdGF0eXBlc19Qb2ludDMyIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMVF3MGZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfdVVKWjRBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMVF4RWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IngiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX2VDMVFsa2ZDRWVPaUdfY0lFcGJ6UVEiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMVF4a2ZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9InkiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX2VDMVFsa2ZDRWVPaUdfY0lFcGJ6UVEiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMVF5RWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9InoiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX2VDMVFsa2ZDRWVPaUdfY0lFcGJ6UVEiLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzFReWtmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJTZW5zb3JTeXN0ZW0iIGVTdXBlclR5cGVzPSJfZUMxUXUwZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzFReTBmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9LVHNQSUY3YkVlQ0doTFRqRURreGZnIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzFRekVmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJmcmVxdWVuY3kiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX2VDMVFsa2ZDRWVPaUdfY0lFcGJ6UVEiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMVF6a2ZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9ImlkZW50aWZpZXIiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX2VDMVEwVWZDRWVPaUdfY0lFcGJ6UVEiLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiB4bWk6aWQ9Il9lQzFRMFVmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJSb2JvdE1MTGlicmFyaWVzX1JvYm90TUxfTW9kZWxMaWJyYXJ5X1JvYm90TUxfRGF0YVR5cGVzX3N0ZF9kYXRhdHlwZXNfU3RyaW5nIiBpbnN0YW5jZUNsYXNzTmFtZT0iamF2YS5sYW5nLlN0cmluZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzFRMGtmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcWFTMm9BSC1FZUNfWkx6TFFoVy1UUSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzFRMDBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJIYXJkd2FyZSIgZVN1cGVyVHlwZXM9Il9lQzFRZWtmQ0VlT2lHX2NJRXBielFRIF9lQzFRaVVmQ0VlT2lHX2NJRXBielFRIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMVExRWZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX29yQ1VzRjlpRWVDWG5JUXNseHZ2M0EiLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzFRMTBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJTb2Z0d2FyZSIgZVN1cGVyVHlwZXM9Il9lQzFRZWtmQ0VlT2lHX2NJRXBielFRIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMVEyRWZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX3hEVmNZRjlpRWVDWG5JUXNseHZ2M0EiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMVEyVWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9ImlzUGVyaW9kaWMiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1R5cGVzIy8vQm9vbGVhbiIvPgorICAgICAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzFRMjBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJwZXJpb2QiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX2VDMVFsa2ZDRWVPaUdfY0lFcGJ6UVEiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMVEzVWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9InByaW9yaXR5IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzFRNUVmQ0VlT2lHX2NJRXBielFRIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzFRMzBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJkZWFkbGluZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfZUMxUWxrZkNFZU9pR19jSUVwYnpRUSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUTRVZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0id2NldCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfZUMxUWxrZkNFZU9pR19jSUVwYnpRUSIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIHhtaTppZD0iX2VDMVE1RWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IlJvYm90TUxMaWJyYXJpZXNfUm9ib3RNTF9Nb2RlbExpYnJhcnlfUm9ib3RNTF9EYXRhVHlwZXNfc3RkX2RhdGF0eXBlc19VSW50OCIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEubGFuZy5TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxUTVVZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjXzZOSmZrQUtuRWVDUVJlSU9JV0owbkEiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfZUMxUTVrZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iRW5naW5lU3lzdGVtIiBlU3VwZXJUeXBlcz0iX2VDMVF1RWZDRWVPaUdfY0lFcGJ6UVEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxUTUwZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfeTNRVElQLXFFZUNQSzRZbk1SaDZBdyIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUTZFZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0idmVoaWNsZVRyYWN0aW9uIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgICAgPGVUeXBlIHhtaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9UeXBlcyMvL1N0cmluZyIvPgorICAgICAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzFRNmtmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJtYXhFbmdpbmVGb3JjZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfZUMxUWxrZkNFZU9pR19jSUVwYnpRUSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUTdFZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0ibWF4QnJlYWtpbmdGb3JjZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfZUMxUWxrZkNFZU9pR19jSUVwYnpRUSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUTdrZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0ibWF4QWxsb3dlZFN0ZWVyaW5nIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzFRbGtmQ0VlT2lHX2NJRXBielFRIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzFROEVmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJtYXhBbGxvd2VkVmVsb2NpdHkiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX2VDMVFsa2ZDRWVPaUdfY0lFcGJ6UVEiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMVE4a2ZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9ImdlYXJfcmF0aW9uIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzFRbGtmQ0VlT2lHX2NJRXBielFRIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfZUMxUTlVZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iV2hlZWxTeXN0ZW0iIGVTdXBlclR5cGVzPSJfZUMxUkdFZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzFROWtmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il96MVBsWVAtcUVlQ1BLNFluTVJoNkF3Ii8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzFROTBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJ3aGVlbFJhZGl1cyIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfZUMxUWxrZkNFZU9pR19jSUVwYnpRUSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUS1VZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0id2hlZWxXaWR0aCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfZUMxUWxrZkNFZU9pR19jSUVwYnpRUSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUS0wZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0ic3VzcGVuc2lvblJlc3RMZW5ndGgiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX2VDMVFsa2ZDRWVPaUdfY0lFcGJ6UVEiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMVFfVWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IndoZWVsQ29ubmVjdGlvbkhlaWdodCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfZUMxUWxrZkNFZU9pR19jSUVwYnpRUSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUV8wZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0idHlwZU9mV2hlZWwiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX2VDMVEwVWZDRWVPaUdfY0lFcGJ6UVEiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMVJBVWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IndoZWVsVmVsb2NpdHlQSURrcCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfZUMxUWxrZkNFZU9pR19jSUVwYnpRUSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUkEwZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0id2hlZWxWZWxvY2l0eVBJRGtpIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzFRbGtmQ0VlT2lHX2NJRXBielFRIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzFSQlVmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJ3aGVlbFZlbG9jaXR5UElEa2QiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX2VDMVFsa2ZDRWVPaUdfY0lFcGJ6UVEiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMVJCMGZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IndoZWVsU3RlZXJpbmdQSURrcCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfZUMxUWxrZkNFZU9pR19jSUVwYnpRUSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUkNVZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0id2hlZWxTdGVlcmluZ1BJRGtkIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzFRbGtmQ0VlT2lHX2NJRXBielFRIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzFSQzBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJ3aGVlbEZyaWN0aW9uIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzFRbGtmQ0VlT2lHX2NJRXBielFRIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzFSRFVmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJzdXNwZW5zaW9uU3RpZmZuZXNzIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzFRbGtmQ0VlT2lHX2NJRXBielFRIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzFSRDBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJzdXNwZW5zaW9uRGFtcGluZyIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfZUMxUWxrZkNFZU9pR19jSUVwYnpRUSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUkVVZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0ic3VzcGVuc2lvbkNvbXByZXNzaW9uIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzFRbGtmQ0VlT2lHX2NJRXBielFRIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzFSRTBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJ3aGVlbFZlbG9jaXR5UElEbWF4U3VtIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzFRbGtmQ0VlT2lHX2NJRXBielFRIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzFSRlVmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJ3aGVlbFZlbG9jaXR5UElEbWF4VmFsIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzFRbGtmQ0VlT2lHX2NJRXBielFRIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfZUMxUkdFZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iTG9jb21vdGlvblN5c3RlbSIgZVN1cGVyVHlwZXM9Il9lQzFRdUVmQ0VlT2lHX2NJRXBielFRIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMVJHVWZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX2xSUEhBQ21wRWVPTndMay05WkxxREEiLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzFSRzBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJJbWFnZVNlbnNvclN5c3RlbSIgZVN1cGVyVHlwZXM9Il9lQzFReWtmQ0VlT2lHX2NJRXBielFRIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMVJIRWZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX1plUXc0QUIyRWVHWEpPSnRXS244alEiLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzFSSGtmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJDYW1lcmFTeXN0ZW0iIGVTdXBlclR5cGVzPSJfZUMxUkcwZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzFSSDBmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9mZWE4Z0FCMkVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzFSSUVmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJ3aWR0aCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfZUMxUk0wZkNFZU9pR19jSUVwYnpRUSIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iMCIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUklrZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iaGVpZ2h0IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzFSTTBmQ0VlT2lHX2NJRXBielFRIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzFSSkVmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJhbHBoYV91IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzFRbGtmQ0VlT2lHX2NJRXBielFRIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzFSSmtmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJhbHBoYV92IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzFRbGtmQ0VlT2lHX2NJRXBielFRIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzFSS0VmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJ1MCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfZUMxUWxrZkNFZU9pR19jSUVwYnpRUSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUktrZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0idjAiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX2VDMVFsa2ZDRWVPaUdfY0lFcGJ6UVEiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMVJMRWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9ImNvbG9yX2Zvcm1hdCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfZUMxUTBVZkNFZU9pR19jSUVwYnpRUSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgeG1pOmlkPSJfZUMxUkxrZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0idHJhbnNsYXRlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzFRd2tmQ0VlT2lHX2NJRXBielFRIiBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgeG1pOmlkPSJfZUMxUk1FZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0icm90YXRlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzFRd2tmQ0VlT2lHX2NJRXBielFRIiBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIHhtaTppZD0iX2VDMVJNMGZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IlJvYm90TUxMaWJyYXJpZXNfUm9ib3RNTF9Nb2RlbExpYnJhcnlfUm9ib3RNTF9EYXRhVHlwZXNfc3RkX2RhdGF0eXBlc19VSW50MzIiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLmxhbmcuU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMVJORWZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19uQ091b0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMVJOVWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9Ik9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbSIgZVN1cGVyVHlwZXM9Il9lQzFReWtmQ0VlT2lHX2NJRXBielFRIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMVJOa2ZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX2c3YmxzQUI1RWVHWEpPSnRXS244alEiLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzFST0VmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSIgZVN1cGVyVHlwZXM9Il9lQzFReWtmQ0VlT2lHX2NJRXBielFRIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMVJPVWZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX0tKX1l3QUI2RWVHWEpPSnRXS244alEiLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzFSTzBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJMaWRhclN5c3RlbSIgZVN1cGVyVHlwZXM9Il9lQzFSTlVmQ0VlT2lHX2NJRXBielFRIF9lQzFST0VmQ0VlT2lHX2NJRXBielFRIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMVJQRWZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX1NPNjRnQUI2RWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMVJQVWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9Im5iTGF5ZXJzIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzFSTTBmQ0VlT2lHX2NJRXBielFRIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzFSUDBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJsYXllckFuZ2xlTWluIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzFRbGtmQ0VlT2lHX2NJRXBielFRIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzFSUVVmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJsYXllckFuZ2xlU3RlcCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfZUMxUWxrZkNFZU9pR19jSUVwYnpRUSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUlEwZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0ibm9pc2UiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX2VDMVJWMGZDRWVPaUdfY0lFcGJ6UVEiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMVJSVWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9InNpZ21hTm9pc2UiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX2VDMVFsa2ZDRWVPaUdfY0lFcGJ6UVEiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMVJSMGZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9ImFuZ2xlX21pbiIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfZUMxUWxrZkNFZU9pR19jSUVwYnpRUSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUlNVZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iYW5nbGVfbWF4IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzFRbGtmQ0VlT2lHX2NJRXBielFRIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzFSUzBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJ0aW1lX2luY3JlbWVudCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfZUMxUWxrZkNFZU9pR19jSUVwYnpRUSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUlRVZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0ic2Nhbl90aW1lIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzFRbGtmQ0VlT2lHX2NJRXBielFRIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzFSVDBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJyYW5nZV9taW4iIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX2VDMVFsa2ZDRWVPaUdfY0lFcGJ6UVEiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMVJVVWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9InJhbmdlX21heCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfZUMxUWxrZkNFZU9pR19jSUVwYnpRUSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUlUwZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0ibmJSYXlzIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzFSTTBmQ0VlT2lHX2NJRXBielFRIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgeG1pOmlkPSJfZUMxUlYwZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iUm9ib3RNTExpYnJhcmllc19Sb2JvdE1MX01vZGVsTGlicmFyeV9Sb2JvdE1MX0RhdGFUeXBlc19zdGRfZGF0YXR5cGVzX0Jvb2wiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLmxhbmcuU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMVJXRWZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19OWm5Uc0FJVUVlQ1ZyTEVCSDVlam5RIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMVJXVWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IkxvY2FsaXphdGlvblNlbnNvclN5c3RlbSIgZVN1cGVyVHlwZXM9Il9lQzFReWtmQ0VlT2lHX2NJRXBielFRIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMVJXa2ZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iXzJBSVdjQUNZRWVHWEpPSnRXS244alEiLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzFSWEVmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJHUFNTeXN0ZW0iIGVTdXBlclR5cGVzPSJfZUMxUldVZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzFSWFVmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il81OEhEMEFDWUVlR1hKT0p0V0tuOGpRIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiB4bWk6aWQ9Il9lQzFSWGtmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJvcmlnaW5Qb3NpdGlvbiIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSJfZUMxUXdrZkNFZU9pR19jSUVwYnpRUSIgY29udGFpbm1lbnQ9InRydWUiLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzFSWVVmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJBbGdvcml0aG0iPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxUllrZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfOUVCZGdCdFRFZUdaQnFRTEsydFBSQSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgeG1pOmlkPSJfZUMxUlkwZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iYmFzZV9PcGVyYXRpb24iIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL09wZXJhdGlvbiIvPgorICAgICAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzFSWlVmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJpc0V4dGVybmFsIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgICAgPGVUeXBlIHhtaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9UeXBlcyMvL0Jvb2xlYW4iLz4KKyAgICAgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxUlowZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iZXh0RnVuY3Rpb25OYW1lIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgICAgPGVUeXBlIHhtaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9UeXBlcyMvL1N0cmluZyIvPgorICAgICAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzFSYVVmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJsaWJQYXRoIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgICAgPGVUeXBlIHhtaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9UeXBlcyMvL1N0cmluZyIvPgorICAgICAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzFSYTBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJsaWJGaWxlRm9ybWF0IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iZWxmIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1R5cGVzIy8vU3RyaW5nIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUVudW0iIHhtaTppZD0iX2VDMVJiVWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IlVHVktpbmQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxUmJrZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfcWVCdWtCdGFFZUdaQnFRTEsydFBSQSIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX2VDMVJiMGZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9ImRpZmZlcmVudGlhbCIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX2VDMVJjRWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9ImNhciIgdmFsdWU9IjEiLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzFSY1VmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJBbGdvcml0aG1MaWJyYXJ5Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMVJja2ZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX0xLaE9JQ0RtRWVHQ2M5c0hrcnZaYmciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIHhtaTppZD0iX2VDMVJjMGZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9ImJhc2VfQ2xhc3MiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMVJkVWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9InBhdGgiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1R5cGVzIy8vU3RyaW5nIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzFSZDBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJTdGF0ZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzFSZUVmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9Md2tlTUNKcUVlR1hiYjQ1M3RQMHlBIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiB4bWk6aWQ9Il9lQzFSZVVmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJiYXNlX1N0YXRlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgICAgPGVUeXBlIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9TdGF0ZSIvPgorICAgICAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiB4bWk6aWQ9Il9lQzFSZTBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJiZWhhdmlvciIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiPgorICAgICAgICAgIDxlVHlwZSB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQmVoYXZpb3IiLz4KKyAgICAgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMVJmVWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IlRyYW5zaXRpb24iPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxUmZrZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfU2dqa1FDSnFFZUdYYmI0NTN0UDB5QSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgeG1pOmlkPSJfZUMxUmYwZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iYmFzZV9UcmFuc2l0aW9uIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgICAgPGVUeXBlIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UcmFuc2l0aW9uIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIHhtaTppZD0iX2VDMVJnVWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9Imd1YXJkIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgICAgPGVUeXBlIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9CZWhhdmlvciIvPgorICAgICAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiB4bWk6aWQ9Il9lQzFSZzBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJlZmZlY3QiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0JlaGF2aW9yIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzFSaFVmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJTZW5zb3JEcml2ZXIiIGVTdXBlclR5cGVzPSJfZUMxUTEwZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzFSaGtmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9hVjFwc0VPQUVlR01aT1NKSWZhMGdnIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfZUMxUmlFZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iQnVpbGRpbmciIGVTdXBlclR5cGVzPSJfZUMxUWlVZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzFSaVVmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il85SENsVUVYUkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfZUMxUmkwZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iUGxhbmV0IiBlU3VwZXJUeXBlcz0iX2VDMVFpVWZDRWVPaUdfY0lFcGJ6UVEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxUmpFZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfbHJUVzBFWFZFZUdlM00zTl84NDZydyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMVJqa2ZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IkxhbmRTdXJmYWNlIiBlU3VwZXJUeXBlcz0iX2VDMVJrVWZDRWVPaUdfY0lFcGJ6UVEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxUmowZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfb3R4Q1FFWFZFZUdlM00zTl84NDZydyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMVJrVWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9Ikdyb3VuZCIgYWJzdHJhY3Q9InRydWUiIGVTdXBlclR5cGVzPSJfZUMxUWswZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzFSa2tmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9MRFNPQUVYakVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfZUMxUmxFZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iRmxvb3IiIGVTdXBlclR5cGVzPSJfZUMxUmtVZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzFSbFVmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il81b0J4c0VYYUVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfZUMxM2dVZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iV2F0ZXJTdXJmYWNlIiBlU3VwZXJUeXBlcz0iX2VDMVFrMGZDRWVPaUdfY0lFcGJ6UVEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxM2drZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfNnB2dFlFWGFFZUdlM00zTl84NDZydyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMTNoRWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9Ikh1bWFuIiBlU3VwZXJUeXBlcz0iX2VDMVFoRWZDRWVPaUdfY0lFcGJ6UVEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxM2hVZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfWXN3MUVFWGJFZUdlM00zTl84NDZydyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMTNoMGZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IlBlZGVzdHJpYW4iIGVTdXBlclR5cGVzPSJfZUMxM2hFZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzEzaUVmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9hSVFpc0VYYkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfZUMxM2lrZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iU3RhaXJzIiBlU3VwZXJUeXBlcz0iX2VDMVJrVWZDRWVPaUdfY0lFcGJ6UVEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxM2kwZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfbF9NMElFWGVFZUdlM00zTl84NDZydyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMTNqVWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IlBsYXRmb3JtIiBlU3VwZXJUeXBlcz0iX2VDMVFla2ZDRWVPaUdfY0lFcGJ6UVEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxM2prZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfb21xT1FFYVJFZUcxUnZ4S2djRFptdyIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgeG1pOmlkPSJfZUMxM2owZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iYmFzZV9Ob2RlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgICAgPGVUeXBlIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Ob2RlIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIHhtaTppZD0iX2VDMTNrVWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9ImxpYnJhcnkiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9Il9lQzEzbEVmQ0VlT2lHX2NJRXBielFRIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfZUMxM2xFZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iRXh0ZXJuYWxMaWJyYXJ5Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMTNsVWZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX3c0bzlFTHZPRWVLdF82MVRFclJmdHciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMTNsa2ZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9ImxpYlBhdGgiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1R5cGVzIy8vU3RyaW5nIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMTNtRWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9ImxpYkZpbGVGb3JtYXQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSJlbGYiPgorICAgICAgICAgIDxlVHlwZSB4bWk6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVHlwZXMjLy9TdHJpbmciLz4KKyAgICAgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgeG1pOmlkPSJfZUMxM21rZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iYmFzZV9JbnRlcmZhY2UiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0ludGVyZmFjZSIvPgorICAgICAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfZUMxM25FZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iUm9ib3RpY01pZGRsZXdhcmUiIGVTdXBlclR5cGVzPSJfZUMxM2pVZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzEzblVmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il8wS3AxNEVhUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzEzbmtmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJraW5kIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzEzb1VmQ0VlT2lHX2NJRXBielFRIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtIiB4bWk6aWQ9Il9lQzEzb1VmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJSb2JvdGljTWlkZGxld2FyZUtpbmQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxM29rZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfNTUtSklFYVJFZUcxUnZ4S2djRFptdyIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX2VDMTNvMGZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IlJUTWFwcyIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX2VDMTNwRWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IkFST0NBTSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPGVMaXRlcmFscyB4bWk6dHlwZT0iZWNvcmU6RUVudW1MaXRlcmFsIiB4bWk6aWQ9Il9lQzEzcFVmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJST1MiIHZhbHVlPSIyIi8+CisgICAgICAgIDxlTGl0ZXJhbHMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtTGl0ZXJhbCIgeG1pOmlkPSJfZUMxM3BrZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iT1JPQ09TIiB2YWx1ZT0iMyIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX2VDMTNwMGZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IlVSQkkiIHZhbHVlPSI0Ii8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfZUMxM3FFZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iUm9ib3RpY1NpbXVsYXRvciIgZVN1cGVyVHlwZXM9Il9lQzEzalVmQ0VlT2lHX2NJRXBielFRIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMTNxVWZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iXzFyemZrRWFSRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzEzcTBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJDeWNhYlRLIiBlU3VwZXJUeXBlcz0iX2VDMTNxRWZDRWVPaUdfY0lFcGJ6UVEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxM3JFZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfdHdFNjhFYVlFZUcxUnZ4S2djRFptdyIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxM3JVZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0idXNlUmVhbFRpbWUiIG9yZGVyZWQ9ImZhbHNlIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1R5cGVzIy8vQm9vbGVhbiIvPgorICAgICAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzEzcjBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJ0aW1lU3RlcCIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSJfZUMxUWxrZkNFZU9pR19jSUVwYnpRUSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfZUMxM3NVZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0idGltZUZhY3RvciIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSJfZUMxUWxrZkNFZU9pR19jSUVwYnpRUSIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMTN0RWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IkJsZW5kZXJNb3JzZSIgZVN1cGVyVHlwZXM9Il9lQzEzcUVmQ0VlT2lHX2NJRXBielFRIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMTN0VWZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX0JYTlNrRWFaRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMTN0a2ZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9ImRlYnVnTW9kZSIgb3JkZXJlZD0iZmFsc2UiPgorICAgICAgICAgIDxlVHlwZSB4bWk6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVHlwZXMjLy9Cb29sZWFuIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMTN1RWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9ImRlYnVnRGlzcGxheSIgb3JkZXJlZD0iZmFsc2UiPgorICAgICAgICAgIDxlVHlwZSB4bWk6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVHlwZXMjLy9Cb29sZWFuIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMTN1a2ZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9ImdyYXZpdHkiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iX2VDMVFsa2ZDRWVPaUdfY0lFcGJ6UVEiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX2VDMTN2RWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9Il92aWV3cG9ydF9zaGFkZSIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSJfZUMxM3YwZkNFZU9pR19jSUVwYnpRUSIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iV0lSRUZSQU1FIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtIiB4bWk6aWQ9Il9lQzEzdjBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJTaGFkZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzEzd0VmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9uQkNkY0UybUVlRzNxWm9kM2FUcFVBIi8+CisgICAgICAgIDxlTGl0ZXJhbHMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtTGl0ZXJhbCIgeG1pOmlkPSJfZUMxM3dVZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iV0lSRUZSQU1FIi8+CisgICAgICAgIDxlTGl0ZXJhbHMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtTGl0ZXJhbCIgeG1pOmlkPSJfZUMxM3drZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iQk9VTkRCT1giIHZhbHVlPSIxIi8+CisgICAgICAgIDxlTGl0ZXJhbHMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtTGl0ZXJhbCIgeG1pOmlkPSJfZUMxM3cwZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iU09MSUQiIHZhbHVlPSIyIi8+CisgICAgICAgIDxlTGl0ZXJhbHMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtTGl0ZXJhbCIgeG1pOmlkPSJfZUMxM3hFZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iVEVYVFVSRUQiIHZhbHVlPSIzIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfZUMxM3hVZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iT25Qb3J0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMTN4a2ZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX3F1cDFNR0xQRWVHeUE4aEsxTWhnQlEiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIHhtaTppZD0iX2VDMTN4MGZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9InBvcnQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX2VDMVFuMGZDRWVPaUdfY0lFcGJ6UVEiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIHhtaTppZD0iX2VDMTN5VWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9ImJhc2VfUGFyYW1ldGVyIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgICAgPGVUeXBlIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9QYXJhbWV0ZXIiLz4KKyAgICAgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMTN5MGZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IkFsbG9jYXRlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMTN6RWZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX09zZVhJSTZ4RWVHZENlRkZKbHg4a0EiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIHhtaTppZD0iX2VDMTN6VWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9ImJhc2VfQWJzdHJhY3Rpb24iIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Fic3RyYWN0aW9uIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzEzejBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJJbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbSIgZVN1cGVyVHlwZXM9Il9lQzFReWtmQ0VlT2lHX2NJRXBielFRIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMTMwRWZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX2M2MmZFRGlmRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzEzMGtmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJJbmVydGlhbE5hdmlnYXRpb25TeXN0ZW0iIGVTdXBlclR5cGVzPSJfZUMxUlhFZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzEzMDBmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9yV0gxMERpZkVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfZUMxMzFVZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iT2RvbWV0cnlTeXN0ZW0iIGVTdXBlclR5cGVzPSJfZUMxUldVZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzEzMWtmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9KMkh0RURpakVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfZUMxMzJFZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtIiBlU3VwZXJUeXBlcz0iX2VDMVJOVWZDRWVPaUdfY0lFcGJ6UVEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxMzJVZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfbFVBbGtEaWpFZUtydWZKcXhSNldpZyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMTMyMGZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IkRlcGxveW1lbnRQbGFuIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMTMzRWZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX3E0ZWNJSHd0RWVLbERiQ0xhSXo2dGciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIHhtaTppZD0iX2VDMTMzVWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9ImJhc2VfUGFja2FnZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiPgorICAgICAgICAgIDxlVHlwZSB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUGFja2FnZSIvPgorICAgICAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiB4bWk6aWQ9Il9lQzEzMzBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJtYWluSW5zdGFuY2UiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0luc3RhbmNlU3BlY2lmaWNhdGlvbiIvPgorICAgICAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfZUMxMzRVZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iR3lyb3Njb3BlIiBlU3VwZXJUeXBlcz0iX2VDMVF5a2ZDRWVPaUdfY0lFcGJ6UVEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxMzRrZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfeEs0N01KMzBFZUtaUWMzVmJabjJCZyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMTM1RWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9Ik9uUHJvcGVydHkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxMzVVZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfU2g3eGNMdmJFZUtGak9pUElDcVlUQSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgeG1pOmlkPSJfZUMxMzVrZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0icHJvcGVydHkiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIHhtaTppZD0iX2VDMTM2RWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9ImJhc2VfUGFyYW1ldGVyIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgICAgPGVUeXBlIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9QYXJhbWV0ZXIiLz4KKyAgICAgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMTM2a2ZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IkNoYXNzaXMiIGVTdXBlclR5cGVzPSJfZUMxMzdVZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzEzNjBmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9oQzM3MEJra0VlT29LS09KUEZHZEN3Ii8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfZUMxMzdVZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iU3VwcG9ydGluZ1N0cnVjdHVyZSIgZVN1cGVyVHlwZXM9Il9lQzFRMDBmQ0VlT2lHX2NJRXBielFRIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMTM3a2ZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX1YwYW80Qmt3RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzEzOEVmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJNZWNoYW5pY2FsTGlua2FnZSIgZVN1cGVyVHlwZXM9Il9lQzFRMDBmQ0VlT2lHX2NJRXBielFRIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMTM4VWZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iXzlvbVFBQmt0RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzEzODBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJMZWciIGVTdXBlclR5cGVzPSJfZUMxMzkwZkNFZU9pR19jSUVwYnpRUSBfZUMxMzhFZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzEzOUVmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9EY2FCc0JrdUVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfZUMxMzkwZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iTG9jb21vdGlvbkhhcmR3YXJlIiBlU3VwZXJUeXBlcz0iX2VDMTMta2ZDRWVPaUdfY0lFcGJ6UVEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxMy1FZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfX2swUzBCa3lFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMTMta2ZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IkFjdHVhdG9ySGFyZHdhcmUiIGVTdXBlclR5cGVzPSJfZUMxUTAwZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzEzLTBmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9WRGhNNEJrdkVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfZUMxM19VZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iTW9iaWxlUm9ib3QiIGVTdXBlclR5cGVzPSJfZUMxUWNrZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzEzX2tmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9LYTBvZ0JreUVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9lQzEzXzBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJraW5kIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9lQzE0QWtmQ0VlT2lHX2NJRXBielFRIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtIiB4bWk6aWQ9Il9lQzE0QWtmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJNb2JpbGVSb2JvdEtpbmQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxNEEwZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfeU00OWdCazBFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX2VDMTRCRWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IkFpclZlaGljbGUiLz4KKyAgICAgICAgPGVMaXRlcmFscyB4bWk6dHlwZT0iZWNvcmU6RUVudW1MaXRlcmFsIiB4bWk6aWQ9Il9lQzE0QlVmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJIeWJyaWRWZWhpY2xlIiB2YWx1ZT0iMSIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX2VDMTRCa2ZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IlN1cmZhY2VWZWhpY2xlIiB2YWx1ZT0iMiIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX2VDMTRCMGZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IlVuZGVyd2F0ZXJWZWhpY2xlIiB2YWx1ZT0iMyIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX2VDMTRDRWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IkNhckxpa2VWZWhpY2xlIiB2YWx1ZT0iNCIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX2VDMTRDVWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IkRpZmZlcmVudGlhbFZlaGljbGUiIHZhbHVlPSI1Ii8+CisgICAgICAgIDxlTGl0ZXJhbHMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtTGl0ZXJhbCIgeG1pOmlkPSJfZUMxNENrZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iTGVnZ2VkVmVoaWNsZSIgdmFsdWU9IjYiLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzE0QzBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJNYW5pcHVsYXRvciIgZVN1cGVyVHlwZXM9Il9lQzFRY2tmQ0VlT2lHX2NJRXBielFRIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMTRERWZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX05mc3V3Qmt5RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzE0RGtmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJQaWxvdGVkU3lzdGVtIiBlU3VwZXJUeXBlcz0iX2VDMVFja2ZDRWVPaUdfY0lFcGJ6UVEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxNEQwZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfVy1zXzBCa3lFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMTRFVWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IlBvd2VySGFyZHdhcmUiIGVTdXBlclR5cGVzPSJfZUMxUTAwZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzE0RWtmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9XcjRvSUJsTEVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfZUMxNEZFZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iU2Vuc29ySGFyZHdhcmUiIGVTdXBlclR5cGVzPSJfZUMxUTAwZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzE0RlVmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9jOHZpTUJsTEVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfZUMxNEYwZkNFZU9pR19jSUVwYnpRUSIgbmFtZT0iR3Jhc3BpbmdIYXJkd2FyZSIgZVN1cGVyVHlwZXM9Il9lQzEzLWtmQ0VlT2lHX2NJRXBielFRIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMTRHRWZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX19Za2RNQmxMRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzE0R2tmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJTdGVlcmVkV2hlZWxIYXJkd2FyZSIgZVN1cGVyVHlwZXM9Il9lQzEzOTBmQ0VlT2lHX2NJRXBielFRIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMTRHMGZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iXzBmMW0wQmxRRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzE0SFVmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJBcm0iPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxNEhrZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfZHNGRnNCbFJFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMTRIMGZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IkpvaW50Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMTRJRWZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX25lNFZJQmxVRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIHhtaTppZD0iX2VDMTRJVWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9ImJhc2VfQ29ubmVjdG9yIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgICAgPGVUeXBlIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMTRJMGZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IkNvbXBsZXRlQm9uZGluZyIgZVN1cGVyVHlwZXM9Il9lQzE0SDBmQ0VlT2lHX2NJRXBielFRIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMTRKRWZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX0trbTIwQmxYRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzE0SmtmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJBY3R1YXRlZEpvaW50IiBlU3VwZXJUeXBlcz0iX2VDMTRIMGZDRWVPaUdfY0lFcGJ6UVEiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfZUMxNEowZkNFZU9pR19jSUVwYnpRUSIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfTTkzTk1CbFhFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX2VDMTRLVWZDRWVPaUdfY0lFcGJ6UVEiIG5hbWU9IkxlZ1N5c3RlbSIgZVN1cGVyVHlwZXM9Il9lQzFSR0VmQ0VlT2lHX2NJRXBielFRIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMTRLa2ZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iXzBjZndRQ21wRWVPTndMay05WkxxREEiLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzE0TEVmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJHcmFzcGluZ1N5c3RlbSIgZVN1cGVyVHlwZXM9Il9lQzFRdUVmQ0VlT2lHX2NJRXBielFRIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VDMTRMVWZDRWVPaUdfY0lFcGJ6UVEiIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iXzZzUDNFQ21wRWVPTndMay05WkxxREEiLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzE0TDBmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJTdGVlcmVkV2hlZWxTeXN0ZW0iIGVTdXBlclR5cGVzPSJfZUMxUkdFZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzE0TUVmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9lQzE0TWtmQ0VlT2lHX2NJRXBielFRIiBuYW1lPSJXZWFwb25TeXN0ZW0iIGVTdXBlclR5cGVzPSJfZUMxUXVFZkNFZU9pR19jSUVwYnpRUSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9lQzE0TTBmQ0VlT2lHX2NJRXBielFRIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il94MVNFSUNtdUVlT053TGstOVpMcURBIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8L2NvbnRlbnRzPgorICAgIDxjb250ZW50cyB4bWk6dHlwZT0iZWNvcmU6RVBhY2thZ2UiIHhtaTppZD0iX001aE40RWI0RWVPODliZFBwQjhnVGciIG5hbWU9IlJvYm90TUwiIG5zVVJJPSJodHRwOi8vL3NjaGVtYXMvUm9ib3RNTC9fSkhVdW9FYjRFZU84OWJkUHBCOGdUZy8wIiBuc1ByZWZpeD0iUm9ib3RNTCI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoTjRVYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNC4wLjAvVU1MIj4KKyAgICAgICAgPHJlZmVyZW5jZXMgeG1pOnR5cGU9InVtbDpQYWNrYWdlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI193eVM2Z0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVoTjRrYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iUm9ib3QiIGVTdXBlclR5cGVzPSJfTTVoTjZrYjRFZU84OWJkUHBCOGdUZyBfTTVoTjlFYjRFZU84OWJkUHBCOGdUZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWhONDBiNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9FZG5Zb1BjSkVkLUowNlU1SE1fby1RIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWhONUViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJtYXNzIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWhPQmtiNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWhONWtiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJ3aWR0aCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfTTVoT0JrYjRFZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aE42a2I0RWVPODliZFBwQjhnVGciIG5hbWU9IlN5c3RlbSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWhONjBiNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9Hb3BGd1BjSkVkLUowNlU1SE1fby1RIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiB4bWk6aWQ9Il9NNWhON0ViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJiYXNlX0NsYXNzIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgICAgPGVUeXBlIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9DbGFzcyIvPgorICAgICAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWhON2tiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJuYXRpdmUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1R5cGVzIy8vQm9vbGVhbiIvPgorICAgICAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWhOOEViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJsaWJyYXJ5UGF0aCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiPgorICAgICAgICAgIDxlVHlwZSB4bWk6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVHlwZXMjLy9TdHJpbmciLz4KKyAgICAgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfTTVoTjhrYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0ibGlicmFyeUNvbXBvbmVudE5hbWUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1R5cGVzIy8vU3RyaW5nIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9NNWhOOUViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJBZ2VudCIgZVN1cGVyVHlwZXM9Il9NNWhOLVViNEVlTzg5YmRQcEI4Z1RnIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aE45VWI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iXy1BUXNVRVhSRWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIHhtaTppZD0iX001aE45a2I0RWVPODliZFBwQjhnVGciIG5hbWU9Im1vdmVzT3ZlciIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iX001aE9BMGI0RWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9NNWhOLVViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJQaHlzaWNhbE9iamVjdCIgZVN1cGVyVHlwZXM9Il9NNWhONmtiNEVlTzg5YmRQcEI4Z1RnIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aE4ta2I0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX1pVaGhBRVhORWVHZTNNM05fODQ2cnciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIHhtaTppZD0iX001aE4tMGI0RWVPODliZFBwQjhnVGciIG5hbWU9ImV2ZWxvdmVzSW4iIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9Il9NNWhPQUViNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiB4bWk6aWQ9Il9NNWhOX1ViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJoYXNTdXJmYWNlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWhPQTBiNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVoT0FFYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iRW52aXJvbm1lbnQiIGVTdXBlclR5cGVzPSJfTTVoTjZrYjRFZU84OWJkUHBCOGdUZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWhPQVViNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9EN1c1SUVYUEVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVoT0EwYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iU3VyZmFjZSIgZVN1cGVyVHlwZXM9Il9NNWhOLVViNEVlTzg5YmRQcEI4Z1RnIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aE9CRWI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX0ZpZkFRRVhWRWVHZTNNM05fODQ2cnciLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiB4bWk6aWQ9Il9NNWhPQmtiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJSb2JvdE1MTGlicmFyaWVzX1JvYm90TUxfTW9kZWxMaWJyYXJ5X1JvYm90TUxfRGF0YVR5cGVzX3N0ZF9kYXRhdHlwZXNfRmxvYXQzMiIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEubGFuZy5TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoT0IwYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3F1WG1BQUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtIiB4bWk6aWQ9Il9NNWhPQ0ViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJSb2JvdEtpbmQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoT0NVYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIi8+CisgICAgICAgIDxlTGl0ZXJhbHMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtTGl0ZXJhbCIgeG1pOmlkPSJfTTVoT0NrYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iVVVWIi8+CisgICAgICAgIDxlTGl0ZXJhbHMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtTGl0ZXJhbCIgeG1pOmlkPSJfTTVoT0MwYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iVUdWY2FyIiB2YWx1ZT0iMSIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX001aE9ERWI0RWVPODliZFBwQjhnVGciIG5hbWU9IlVHVmRpZmZlcmVudGlhbCIgdmFsdWU9IjIiLz4KKyAgICAgICAgPGVMaXRlcmFscyB4bWk6dHlwZT0iZWNvcmU6RUVudW1MaXRlcmFsIiB4bWk6aWQ9Il9NNWhPRFViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJVQVYiIHZhbHVlPSIzIi8+CisgICAgICAgIDxlTGl0ZXJhbHMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtTGl0ZXJhbCIgeG1pOmlkPSJfTTVoT0RrYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iVVNWIiB2YWx1ZT0iNCIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX001aE9EMGI0RWVPODliZFBwQjhnVGciIG5hbWU9InBpbG90ZWQiIHZhbHVlPSI1Ii8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVoT0VFYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iRGF0YUZsb3dQb3J0IiBlU3VwZXJUeXBlcz0iX001aE9GMGI0RWVPODliZFBwQjhnVGciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoT0VVYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfUnp3UXNCbWlFZUNRaXJ4Y2pfUmFGZyIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfTTVoT0VrYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iZGlyZWN0aW9uIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWhPSWtiNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWhPRkViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJidWZmZXJTaXplIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iMCI+CisgICAgICAgICAgPGVUeXBlIHhtaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9UeXBlcyMvL0ludGVnZXIiLz4KKyAgICAgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aE9GMGI0RWVPODliZFBwQjhnVGciIG5hbWU9IlBvcnQiIGFic3RyYWN0PSJ0cnVlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aE9HRWI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iXzF0ZE4wR0JCRWVDVVFmM3ZwQUc2SkEiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIHhtaTppZD0iX001aE9HVWI0RWVPODliZFBwQjhnVGciIG5hbWU9ImJhc2VfUG9ydCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiPgorICAgICAgICAgIDxlVHlwZSB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUG9ydCIvPgorICAgICAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWhPRzBiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJzeW5jaHJvbml6YXRpb25Qb2xpY3kiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX001aE9IVWI0RWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUVudW0iIHhtaTppZD0iX001aE9IVWI0RWVPODliZFBwQjhnVGciIG5hbWU9IlN5bmNocm9uaXphdGlvbktpbmQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoT0hrYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfSi1uWjRHQkNFZUNVUWYzdnBBRzZKQSIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX001aE9IMGI0RWVPODliZFBwQjhnVGciIG5hbWU9IlNZTkNIIi8+CisgICAgICAgIDxlTGl0ZXJhbHMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtTGl0ZXJhbCIgeG1pOmlkPSJfTTVoT0lFYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iQVNZTkNIIiB2YWx1ZT0iMSIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX001aE9JVWI0RWVPODliZFBwQjhnVGciIG5hbWU9InVuZGVmaW5lZCIgdmFsdWU9IjIiLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUVudW0iIHhtaTppZD0iX001aE9Ja2I0RWVPODliZFBwQjhnVGciIG5hbWU9IkRhdGFGbG93RGlyZWN0aW9uS2luZCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWhPSTBiNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9XWGIwWUNsU0VlQ1VEdXdDR19obFp3Ii8+CisgICAgICAgIDxlTGl0ZXJhbHMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtTGl0ZXJhbCIgeG1pOmlkPSJfTTVoT0pFYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iaW4iLz4KKyAgICAgICAgPGVMaXRlcmFscyB4bWk6dHlwZT0iZWNvcmU6RUVudW1MaXRlcmFsIiB4bWk6aWQ9Il9NNWhPSlViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJvdXQiIHZhbHVlPSIxIi8+CisgICAgICAgIDxlTGl0ZXJhbHMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtTGl0ZXJhbCIgeG1pOmlkPSJfTTVoT0prYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iaW5vdXQiIHZhbHVlPSIyIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtIiB4bWk6aWQ9Il9NNWhPSjBiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJTZXJ2aWNlRmxvd0tpbmQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoT0tFYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfNi1iOFlGN2FFZUNHaExUakVEa3hmZyIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX001aE9LVWI0RWVPODliZFBwQjhnVGciIG5hbWU9InByb3ZpZGVkIi8+CisgICAgICAgIDxlTGl0ZXJhbHMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtTGl0ZXJhbCIgeG1pOmlkPSJfTTVoT0trYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0icmVxdWlyZWQiIHZhbHVlPSIxIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVoT0swYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iU2VydmljZVBvcnQiIGVTdXBlclR5cGVzPSJfTTVoT0YwYjRFZU84OWJkUHBCOGdUZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWhPTEViNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9CUEllWUY3YkVlQ0doTFRqRURreGZnIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWhPTFViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJraW5kIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWhPSjBiNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVoT01FYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iQWN0dWF0b3JTeXN0ZW0iIGVTdXBlclR5cGVzPSJfTTVoT00wYjRFZU84OWJkUHBCOGdUZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWhPTVViNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9IbFZ5Z0Y3YkVlQ0doTFRqRURreGZnIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVoT00wYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iUm9ib3RpY1N5c3RlbSIgZVN1cGVyVHlwZXM9Il9NNWhONmtiNEVlTzg5YmRQcEI4Z1RnIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aE9ORWI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX1k1SEFJQUNjRWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIHhtaTppZD0iX001aE9OVWI0RWVPODliZFBwQjhnVGciIG5hbWU9ImxvY2FsUG9zaXRpb24iIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX001aE9Pa2I0RWVPODliZFBwQjhnVGciIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiB4bWk6aWQ9Il9NNWhPTjBiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJsb2NhbE9yaWVudGF0aW9uIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWhPT2tiNEVlTzg5YmRQcEI4Z1RnIiBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aE9Pa2I0RWVPODliZFBwQjhnVGciIG5hbWU9IlJvYm90TUxMaWJyYXJpZXNfUm9ib3RNTF9Nb2RlbExpYnJhcnlfUm9ib3RNTF9EYXRhVHlwZXNfZ2VvbWV0cnlfZGF0YXR5cGVzX1BvaW50MzIiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoT08wYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI191VUpaNEFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfTTVoT1BFYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0ieCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfTTVoT0JrYjRFZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfTTVoT1BrYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0ieSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfTTVoT0JrYjRFZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfTTVoT1FFYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0ieiIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfTTVoT0JrYjRFZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aE9Ra2I0RWVPODliZFBwQjhnVGciIG5hbWU9IlNlbnNvclN5c3RlbSIgZVN1cGVyVHlwZXM9Il9NNWhPTTBiNEVlTzg5YmRQcEI4Z1RnIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aE9RMGI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX0tUc1BJRjdiRWVDR2hMVGpFRGt4ZmciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aE9SRWI0RWVPODliZFBwQjhnVGciIG5hbWU9ImZyZXF1ZW5jeSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfTTVoT0JrYjRFZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfTTVoT1JrYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iaWRlbnRpZmllciIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfTTVoT1NVYjRFZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIHhtaTppZD0iX001aE9TVWI0RWVPODliZFBwQjhnVGciIG5hbWU9IlJvYm90TUxMaWJyYXJpZXNfUm9ib3RNTF9Nb2RlbExpYnJhcnlfUm9ib3RNTF9EYXRhVHlwZXNfc3RkX2RhdGF0eXBlc19TdHJpbmciIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLmxhbmcuU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aE9Ta2I0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCI+CisgICAgICAgICAgPHJlZmVyZW5jZXMgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xYVMyb0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aE9TMGI0RWVPODliZFBwQjhnVGciIG5hbWU9IkhhcmR3YXJlIiBlU3VwZXJUeXBlcz0iX001aE42a2I0RWVPODliZFBwQjhnVGcgX001aE4tVWI0RWVPODliZFBwQjhnVGciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoT1RFYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfb3JDVXNGOWlFZUNYbklRc2x4dnYzQSIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aE9UMGI0RWVPODliZFBwQjhnVGciIG5hbWU9IlNvZnR3YXJlIiBlU3VwZXJUeXBlcz0iX001aE42a2I0RWVPODliZFBwQjhnVGciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoT1VFYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfeERWY1lGOWlFZUNYbklRc2x4dnYzQSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfTTVoT1VVYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iaXNQZXJpb2RpYyIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiPgorICAgICAgICAgIDxlVHlwZSB4bWk6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVHlwZXMjLy9Cb29sZWFuIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aE9VMGI0RWVPODliZFBwQjhnVGciIG5hbWU9InBlcmlvZCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfTTVoT0JrYjRFZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfTTVoT1ZVYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0icHJpb3JpdHkiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX001aE9YRWI0RWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aE9WMGI0RWVPODliZFBwQjhnVGciIG5hbWU9ImRlYWRsaW5lIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWhPQmtiNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWhPV1ViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJ3Y2V0IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWhPQmtiNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgeG1pOmlkPSJfTTVoT1hFYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iUm9ib3RNTExpYnJhcmllc19Sb2JvdE1MX01vZGVsTGlicmFyeV9Sb2JvdE1MX0RhdGFUeXBlc19zdGRfZGF0YXR5cGVzX1VJbnQ4IiBpbnN0YW5jZUNsYXNzTmFtZT0iamF2YS5sYW5nLlN0cmluZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWhPWFViNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICAgIDxyZWZlcmVuY2VzIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfNk5KZmtBS25FZUNRUmVJT0lXSjBuQSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9NNWhPWGtiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJQcmltaXRpdmVEYXRhIiBlU3VwZXJUeXBlcz0iX001aDA4RWI0RWVPODliZFBwQjhnVGciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoT1gwYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiB4bWk6aWQ9Il9NNWhPWUViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJiYXNlX1ByaW1pdGl2ZVR5cGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1ByaW1pdGl2ZVR5cGUiLz4KKyAgICAgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aDA4RWI0RWVPODliZFBwQjhnVGciIG5hbWU9IkRhdGFUeXBlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aDA4VWI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgeG1pOmlkPSJfTTVoMDhrYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iYmFzZV9EYXRhVHlwZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiPgorICAgICAgICAgIDxlVHlwZSB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vRGF0YVR5cGUiLz4KKyAgICAgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfTTVoMDlFYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0ibmF0aXZlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgICAgPGVUeXBlIHhtaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9UeXBlcyMvL0Jvb2xlYW4iLz4KKyAgICAgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfTTVoMDlrYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0ibGlicmFyeVBhdGgiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1R5cGVzIy8vU3RyaW5nIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9NNWgwLUViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJFbmdpbmVTeXN0ZW0iIGVTdXBlclR5cGVzPSJfTTVoT01FYjRFZU84OWJkUHBCOGdUZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWgwLVViNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il95M1FUSVAtcUVlQ1BLNFluTVJoNkF3Ii8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWgwLWtiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJ2ZWhpY2xlVHJhY3Rpb24iIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1R5cGVzIy8vU3RyaW5nIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDBfRWI0RWVPODliZFBwQjhnVGciIG5hbWU9Im1heEVuZ2luZUZvcmNlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWhPQmtiNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWgwX2tiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJtYXhCcmVha2luZ0ZvcmNlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWhPQmtiNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWgxQUViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJtYXhBbGxvd2VkU3RlZXJpbmciIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX001aE9Ca2I0RWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDFBa2I0RWVPODliZFBwQjhnVGciIG5hbWU9Im1heEFsbG93ZWRWZWxvY2l0eSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfTTVoT0JrYjRFZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfTTVoMUJFYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iZ2Vhcl9yYXRpb24iIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX001aE9Ca2I0RWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9NNWgxQjBiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJXaGVlbFN5c3RlbSIgZVN1cGVyVHlwZXM9Il9NNWgxS2tiNEVlTzg5YmRQcEI4Z1RnIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aDFDRWI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX3oxUGxZUC1xRWVDUEs0WW5NUmg2QXciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDFDVWI0RWVPODliZFBwQjhnVGciIG5hbWU9IndoZWVsUmFkaXVzIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWhPQmtiNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWgxQzBiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJ3aGVlbFdpZHRoIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWhPQmtiNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWgxRFViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJzdXNwZW5zaW9uUmVzdExlbmd0aCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfTTVoT0JrYjRFZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfTTVoMUQwYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0id2hlZWxDb25uZWN0aW9uSGVpZ2h0IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWhPQmtiNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWgxRVViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJ0eXBlT2ZXaGVlbCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfTTVoT1NVYjRFZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfTTVoMUUwYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0id2hlZWxWZWxvY2l0eVBJRGtwIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWhPQmtiNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWgxRlViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJ3aGVlbFZlbG9jaXR5UElEa2kiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX001aE9Ca2I0RWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDFGMGI0RWVPODliZFBwQjhnVGciIG5hbWU9IndoZWVsVmVsb2NpdHlQSURrZCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfTTVoT0JrYjRFZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfTTVoMUdVYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0id2hlZWxTdGVlcmluZ1BJRGtwIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWhPQmtiNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWgxRzBiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJ3aGVlbFN0ZWVyaW5nUElEa2QiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX001aE9Ca2I0RWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDFIVWI0RWVPODliZFBwQjhnVGciIG5hbWU9IndoZWVsRnJpY3Rpb24iIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX001aE9Ca2I0RWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDFIMGI0RWVPODliZFBwQjhnVGciIG5hbWU9InN1c3BlbnNpb25TdGlmZm5lc3MiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX001aE9Ca2I0RWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDFJVWI0RWVPODliZFBwQjhnVGciIG5hbWU9InN1c3BlbnNpb25EYW1waW5nIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWhPQmtiNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWgxSTBiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJzdXNwZW5zaW9uQ29tcHJlc3Npb24iIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX001aE9Ca2I0RWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDFKVWI0RWVPODliZFBwQjhnVGciIG5hbWU9IndoZWVsVmVsb2NpdHlQSURtYXhTdW0iIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX001aE9Ca2I0RWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDFKMGI0RWVPODliZFBwQjhnVGciIG5hbWU9IndoZWVsVmVsb2NpdHlQSURtYXhWYWwiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX001aE9Ca2I0RWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9NNWgxS2tiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJMb2NvbW90aW9uU3lzdGVtIiBlU3VwZXJUeXBlcz0iX001aE9NRWI0RWVPODliZFBwQjhnVGciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoMUswYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfbFJQSEFDbXBFZU9Od0xrLTlaTHFEQSIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aDFMVWI0RWVPODliZFBwQjhnVGciIG5hbWU9IkltYWdlU2Vuc29yU3lzdGVtIiBlU3VwZXJUeXBlcz0iX001aE9Ra2I0RWVPODliZFBwQjhnVGciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoMUxrYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfWmVRdzRBQjJFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aDFNRWI0RWVPODliZFBwQjhnVGciIG5hbWU9IkNhbWVyYVN5c3RlbSIgZVN1cGVyVHlwZXM9Il9NNWgxTFViNEVlTzg5YmRQcEI4Z1RnIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aDFNVWI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX2ZlYThnQUIyRWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDFNa2I0RWVPODliZFBwQjhnVGciIG5hbWU9IndpZHRoIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWgxUlViNEVlTzg5YmRQcEI4Z1RnIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSIwIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWgxTkViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJoZWlnaHQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX001aDFSVWI0RWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDFOa2I0RWVPODliZFBwQjhnVGciIG5hbWU9ImFscGhhX3UiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX001aE9Ca2I0RWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDFPRWI0RWVPODliZFBwQjhnVGciIG5hbWU9ImFscGhhX3YiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX001aE9Ca2I0RWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDFPa2I0RWVPODliZFBwQjhnVGciIG5hbWU9InUwIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWhPQmtiNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWgxUEViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJ2MCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfTTVoT0JrYjRFZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfTTVoMVBrYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iY29sb3JfZm9ybWF0IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWhPU1ViNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiB4bWk6aWQ9Il9NNWgxUUViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJ0cmFuc2xhdGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX001aE9Pa2I0RWVPODliZFBwQjhnVGciIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiB4bWk6aWQ9Il9NNWgxUWtiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJyb3RhdGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX001aE9Pa2I0RWVPODliZFBwQjhnVGciIGNvbnRhaW5tZW50PSJ0cnVlIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgeG1pOmlkPSJfTTVoMVJVYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iUm9ib3RNTExpYnJhcmllc19Sb2JvdE1MX01vZGVsTGlicmFyeV9Sb2JvdE1MX0RhdGFUeXBlc19zdGRfZGF0YXR5cGVzX1VJbnQzMiIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEubGFuZy5TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoMVJrYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX25DT3VvQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVoMVIwYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtIiBlU3VwZXJUeXBlcz0iX001aE9Ra2I0RWVPODliZFBwQjhnVGciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoMVNFYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfZzdibHNBQjVFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aDFTa2I0RWVPODliZFBwQjhnVGciIG5hbWU9Ik9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtIiBlU3VwZXJUeXBlcz0iX001aE9Ra2I0RWVPODliZFBwQjhnVGciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoMVMwYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfS0pfWXdBQjZFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aDFUVWI0RWVPODliZFBwQjhnVGciIG5hbWU9IkxpZGFyU3lzdGVtIiBlU3VwZXJUeXBlcz0iX001aDFSMGI0RWVPODliZFBwQjhnVGcgX001aDFTa2I0RWVPODliZFBwQjhnVGciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoMVRrYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfU082NGdBQjZFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfTTVoMVQwYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0ibmJMYXllcnMiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX001aDFSVWI0RWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDFVVWI0RWVPODliZFBwQjhnVGciIG5hbWU9ImxheWVyQW5nbGVNaW4iIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX001aE9Ca2I0RWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDFVMGI0RWVPODliZFBwQjhnVGciIG5hbWU9ImxheWVyQW5nbGVTdGVwIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWhPQmtiNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWgxVlViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJub2lzZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfTTVoMWFVYjRFZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfTTVoMVYwYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0ic2lnbWFOb2lzZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfTTVoT0JrYjRFZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfTTVoMVdVYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iYW5nbGVfbWluIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWhPQmtiNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWgxVzBiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJhbmdsZV9tYXgiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX001aE9Ca2I0RWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDFYVWI0RWVPODliZFBwQjhnVGciIG5hbWU9InRpbWVfaW5jcmVtZW50IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWhPQmtiNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWgxWDBiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJzY2FuX3RpbWUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX001aE9Ca2I0RWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDFZVWI0RWVPODliZFBwQjhnVGciIG5hbWU9InJhbmdlX21pbiIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJfTTVoT0JrYjRFZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfTTVoMVkwYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0icmFuZ2VfbWF4IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWhPQmtiNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWgxWlViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJuYlJheXMiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX001aDFSVWI0RWVPODliZFBwQjhnVGciLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiB4bWk6aWQ9Il9NNWgxYVViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJSb2JvdE1MTGlicmFyaWVzX1JvYm90TUxfTW9kZWxMaWJyYXJ5X1JvYm90TUxfRGF0YVR5cGVzX3N0ZF9kYXRhdHlwZXNfQm9vbCIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEubGFuZy5TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoMWFrYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICAgICAgICA8cmVmZXJlbmNlcyB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX05ablRzQUlVRWVDVnJMRUJINWVqblEiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVoMWEwYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtIiBlU3VwZXJUeXBlcz0iX001aE9Ra2I0RWVPODliZFBwQjhnVGciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoMWJFYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfMkFJV2NBQ1lFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aDFia2I0RWVPODliZFBwQjhnVGciIG5hbWU9IkdQU1N5c3RlbSIgZVN1cGVyVHlwZXM9Il9NNWgxYTBiNEVlTzg5YmRQcEI4Z1RnIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aDFiMGI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iXzU4SEQwQUNZRWVHWEpPSnRXS244alEiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIHhtaTppZD0iX001aDFjRWI0RWVPODliZFBwQjhnVGciIG5hbWU9Im9yaWdpblBvc2l0aW9uIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9Il9NNWhPT2tiNEVlTzg5YmRQcEI4Z1RnIiBjb250YWlubWVudD0idHJ1ZSIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aDFjMGI0RWVPODliZFBwQjhnVGciIG5hbWU9IkFsZ29yaXRobSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWgxZEViNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il85RUJkZ0J0VEVlR1pCcVFMSzJ0UFJBIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiB4bWk6aWQ9Il9NNWgxZFViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJiYXNlX09wZXJhdGlvbiIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiPgorICAgICAgICAgIDxlVHlwZSB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vT3BlcmF0aW9uIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDFkMGI0RWVPODliZFBwQjhnVGciIG5hbWU9ImlzRXh0ZXJuYWwiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1R5cGVzIy8vQm9vbGVhbiIvPgorICAgICAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWgxZVViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJleHRGdW5jdGlvbk5hbWUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1R5cGVzIy8vU3RyaW5nIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDFlMGI0RWVPODliZFBwQjhnVGciIG5hbWU9ImxpYlBhdGgiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1R5cGVzIy8vU3RyaW5nIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDFmVWI0RWVPODliZFBwQjhnVGciIG5hbWU9ImxpYkZpbGVGb3JtYXQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSJlbGYiPgorICAgICAgICAgIDxlVHlwZSB4bWk6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVHlwZXMjLy9TdHJpbmciLz4KKyAgICAgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFRW51bSIgeG1pOmlkPSJfTTVoMWYwYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iVUdWS2luZCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWgxZ0ViNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9xZUJ1a0J0YUVlR1pCcVFMSzJ0UFJBIi8+CisgICAgICAgIDxlTGl0ZXJhbHMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtTGl0ZXJhbCIgeG1pOmlkPSJfTTVoMWdVYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iZGlmZmVyZW50aWFsIi8+CisgICAgICAgIDxlTGl0ZXJhbHMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtTGl0ZXJhbCIgeG1pOmlkPSJfTTVoMWdrYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iY2FyIiB2YWx1ZT0iMSIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aDFnMGI0RWVPODliZFBwQjhnVGciIG5hbWU9IlNpbXVsYXRlZFN5c3RlbSIgZVN1cGVyVHlwZXM9Il9NNWhPVDBiNEVlTzg5YmRQcEI4Z1RnIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aDFoRWI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgeG1pOmlkPSJfTTVoMWhVYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iYmFzZV9Qcm9wZXJ0eSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiPgorICAgICAgICAgIDxlVHlwZSB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUHJvcGVydHkiLz4KKyAgICAgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfTTVoMWgwYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0ibWVzaCIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1R5cGVzIy8vU3RyaW5nIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9NNWgxaWtiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJBbGdvcml0aG1MaWJyYXJ5Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aDFpMGI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX0xLaE9JQ0RtRWVHQ2M5c0hrcnZaYmciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIHhtaTppZD0iX001aDFqRWI0RWVPODliZFBwQjhnVGciIG5hbWU9ImJhc2VfQ2xhc3MiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0NsYXNzIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDFqa2I0RWVPODliZFBwQjhnVGciIG5hbWU9InBhdGgiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1R5cGVzIy8vU3RyaW5nIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9NNWgxa0ViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJTdGF0ZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWgxa1ViNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9Md2tlTUNKcUVlR1hiYjQ1M3RQMHlBIi8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiB4bWk6aWQ9Il9NNWgxa2tiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJiYXNlX1N0YXRlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgICAgPGVUeXBlIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9TdGF0ZSIvPgorICAgICAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiB4bWk6aWQ9Il9NNWgxbEViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJiZWhhdmlvciIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiPgorICAgICAgICAgIDxlVHlwZSB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vQmVoYXZpb3IiLz4KKyAgICAgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aDFsa2I0RWVPODliZFBwQjhnVGciIG5hbWU9IlRyYW5zaXRpb24iPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoMWwwYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfU2dqa1FDSnFFZUdYYmI0NTN0UDB5QSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgeG1pOmlkPSJfTTVoMW1FYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iYmFzZV9UcmFuc2l0aW9uIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgICAgPGVUeXBlIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9UcmFuc2l0aW9uIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIHhtaTppZD0iX001aDFta2I0RWVPODliZFBwQjhnVGciIG5hbWU9Imd1YXJkIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgICAgPGVUeXBlIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9CZWhhdmlvciIvPgorICAgICAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiB4bWk6aWQ9Il9NNWgxbkViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJlZmZlY3QiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0JlaGF2aW9yIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9NNWgxbmtiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJTZW5zb3JEcml2ZXIiIGVTdXBlclR5cGVzPSJfTTVoT1QwYjRFZU84OWJkUHBCOGdUZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWgxbjBiNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9hVjFwc0VPQUVlR01aT1NKSWZhMGdnIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVoMW9VYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iQnVpbGRpbmciIGVTdXBlclR5cGVzPSJfTTVoTi1VYjRFZU84OWJkUHBCOGdUZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWgxb2tiNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il85SENsVUVYUkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVoMXBFYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iUGxhbmV0IiBlU3VwZXJUeXBlcz0iX001aE4tVWI0RWVPODliZFBwQjhnVGciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoMXBVYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfbHJUVzBFWFZFZUdlM00zTl84NDZydyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aDFwMGI0RWVPODliZFBwQjhnVGciIG5hbWU9IkxhbmRTdXJmYWNlIiBlU3VwZXJUeXBlcz0iX001aDFxa2I0RWVPODliZFBwQjhnVGciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoMXFFYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfb3R4Q1FFWFZFZUdlM00zTl84NDZydyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aDFxa2I0RWVPODliZFBwQjhnVGciIG5hbWU9Ikdyb3VuZCIgYWJzdHJhY3Q9InRydWUiIGVTdXBlclR5cGVzPSJfTTVoT0EwYjRFZU84OWJkUHBCOGdUZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWgxcTBiNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9MRFNPQUVYakVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVoMXJVYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iRmxvb3IiIGVTdXBlclR5cGVzPSJfTTVoMXFrYjRFZU84OWJkUHBCOGdUZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWgxcmtiNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il81b0J4c0VYYUVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVoMXNFYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iV2F0ZXJTdXJmYWNlIiBlU3VwZXJUeXBlcz0iX001aE9BMGI0RWVPODliZFBwQjhnVGciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoMXNVYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfNnB2dFlFWGFFZUdlM00zTl84NDZydyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aDFzMGI0RWVPODliZFBwQjhnVGciIG5hbWU9Ikh1bWFuIiBlU3VwZXJUeXBlcz0iX001aE45RWI0RWVPODliZFBwQjhnVGciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoMXRFYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfWXN3MUVFWGJFZUdlM00zTl84NDZydyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aDF0a2I0RWVPODliZFBwQjhnVGciIG5hbWU9IlBlZGVzdHJpYW4iIGVTdXBlclR5cGVzPSJfTTVoMXMwYjRFZU84OWJkUHBCOGdUZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWgxdDBiNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9hSVFpc0VYYkVlR2UzTTNOXzg0NnJ3Ii8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVoMXVVYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iU3RhaXJzIiBlU3VwZXJUeXBlcz0iX001aDFxa2I0RWVPODliZFBwQjhnVGciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoMXVrYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfbF9NMElFWGVFZUdlM00zTl84NDZydyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aDF2RWI0RWVPODliZFBwQjhnVGciIG5hbWU9IlBsYXRmb3JtIiBlU3VwZXJUeXBlcz0iX001aE42a2I0RWVPODliZFBwQjhnVGciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoMXZVYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfb21xT1FFYVJFZUcxUnZ4S2djRFptdyIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgeG1pOmlkPSJfTTVoMXZrYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iYmFzZV9Ob2RlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgICAgPGVUeXBlIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Ob2RlIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIHhtaTppZD0iX001aDF3RWI0RWVPODliZFBwQjhnVGciIG5hbWU9ImxpYnJhcnkiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9Il9NNWgxdzBiNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVoMXcwYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iRXh0ZXJuYWxMaWJyYXJ5Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aDF4RWI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX3c0bzlFTHZPRWVLdF82MVRFclJmdHciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDF4VWI0RWVPODliZFBwQjhnVGciIG5hbWU9ImxpYlBhdGgiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1R5cGVzIy8vU3RyaW5nIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDF4MGI0RWVPODliZFBwQjhnVGciIG5hbWU9ImxpYkZpbGVGb3JtYXQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSJlbGYiPgorICAgICAgICAgIDxlVHlwZSB4bWk6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVHlwZXMjLy9TdHJpbmciLz4KKyAgICAgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgeG1pOmlkPSJfTTVoMXlVYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iYmFzZV9JbnRlcmZhY2UiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0ludGVyZmFjZSIvPgorICAgICAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVoMXkwYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iUm9ib3RpY01pZGRsZXdhcmUiIGVTdXBlclR5cGVzPSJfTTVoMXZFYjRFZU84OWJkUHBCOGdUZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWgxekViNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il8wS3AxNEVhUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWgxelViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJraW5kIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWgxMEViNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtIiB4bWk6aWQ9Il9NNWgxMEViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJSb2JvdGljTWlkZGxld2FyZUtpbmQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoMTBVYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfNTUtSklFYVJFZUcxUnZ4S2djRFptdyIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX001aDEwa2I0RWVPODliZFBwQjhnVGciIG5hbWU9IlJUTWFwcyIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX001aDEwMGI0RWVPODliZFBwQjhnVGciIG5hbWU9IkFST0NBTSIgdmFsdWU9IjEiLz4KKyAgICAgICAgPGVMaXRlcmFscyB4bWk6dHlwZT0iZWNvcmU6RUVudW1MaXRlcmFsIiB4bWk6aWQ9Il9NNWgxMUViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJST1MiIHZhbHVlPSIyIi8+CisgICAgICAgIDxlTGl0ZXJhbHMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtTGl0ZXJhbCIgeG1pOmlkPSJfTTVoMTFVYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iT1JPQ09TIiB2YWx1ZT0iMyIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX001aDExa2I0RWVPODliZFBwQjhnVGciIG5hbWU9IlVSQkkiIHZhbHVlPSI0Ii8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVoMTEwYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iUm9ib3RpY1NpbXVsYXRvciIgZVN1cGVyVHlwZXM9Il9NNWgxdkViNEVlTzg5YmRQcEI4Z1RnIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aDEyRWI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iXzFyemZrRWFSRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9NNWgxMmtiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJDeWNhYlRLIiBlU3VwZXJUeXBlcz0iX001aDExMGI0RWVPODliZFBwQjhnVGciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVoMTIwYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfdHdFNjhFYVlFZUcxUnZ4S2djRFptdyIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfTTVoMTNFYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0idXNlUmVhbFRpbWUiIG9yZGVyZWQ9ImZhbHNlIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1R5cGVzIy8vQm9vbGVhbiIvPgorICAgICAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWgxM2tiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJ0aW1lU3RlcCIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSJfTTVoT0JrYjRFZU84OWJkUHBCOGdUZyIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgeG1pOmlkPSJfTTVoMTRFYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0idGltZUZhY3RvciIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSJfTTVoT0JrYjRFZU84OWJkUHBCOGdUZyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aDE0MGI0RWVPODliZFBwQjhnVGciIG5hbWU9IkJsZW5kZXJNb3JzZSIgZVN1cGVyVHlwZXM9Il9NNWgxMTBiNEVlTzg5YmRQcEI4Z1RnIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aDE1RWI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX0JYTlNrRWFaRWVHMVJ2eEtnY0RabXciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDE1VWI0RWVPODliZFBwQjhnVGciIG5hbWU9ImRlYnVnTW9kZSIgb3JkZXJlZD0iZmFsc2UiPgorICAgICAgICAgIDxlVHlwZSB4bWk6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVHlwZXMjLy9Cb29sZWFuIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDE1MGI0RWVPODliZFBwQjhnVGciIG5hbWU9ImRlYnVnRGlzcGxheSIgb3JkZXJlZD0iZmFsc2UiPgorICAgICAgICAgIDxlVHlwZSB4bWk6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVHlwZXMjLy9Cb29sZWFuIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDE2VWI0RWVPODliZFBwQjhnVGciIG5hbWU9ImdyYXZpdHkiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iX001aE9Ca2I0RWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIHhtaTppZD0iX001aDE2MGI0RWVPODliZFBwQjhnVGciIG5hbWU9Il92aWV3cG9ydF9zaGFkZSIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSJfTTVoMTdrYjRFZU84OWJkUHBCOGdUZyIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iV0lSRUZSQU1FIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtIiB4bWk6aWQ9Il9NNWgxN2tiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJTaGFkZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWgxNzBiNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9uQkNkY0UybUVlRzNxWm9kM2FUcFVBIi8+CisgICAgICAgIDxlTGl0ZXJhbHMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtTGl0ZXJhbCIgeG1pOmlkPSJfTTVoMThFYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iV0lSRUZSQU1FIi8+CisgICAgICAgIDxlTGl0ZXJhbHMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtTGl0ZXJhbCIgeG1pOmlkPSJfTTVoMThVYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iQk9VTkRCT1giIHZhbHVlPSIxIi8+CisgICAgICAgIDxlTGl0ZXJhbHMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtTGl0ZXJhbCIgeG1pOmlkPSJfTTVoMThrYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iU09MSUQiIHZhbHVlPSIyIi8+CisgICAgICAgIDxlTGl0ZXJhbHMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtTGl0ZXJhbCIgeG1pOmlkPSJfTTVoMTgwYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iVEVYVFVSRUQiIHZhbHVlPSIzIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVoMTlFYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iT25Qb3J0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aDE5VWI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX3F1cDFNR0xQRWVHeUE4aEsxTWhnQlEiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIHhtaTppZD0iX001aDE5a2I0RWVPODliZFBwQjhnVGciIG5hbWU9InBvcnQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iX001aE9GMGI0RWVPODliZFBwQjhnVGciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIHhtaTppZD0iX001aDEtRWI0RWVPODliZFBwQjhnVGciIG5hbWU9ImJhc2VfUGFyYW1ldGVyIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgICAgPGVUeXBlIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9QYXJhbWV0ZXIiLz4KKyAgICAgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aDEta2I0RWVPODliZFBwQjhnVGciIG5hbWU9IkFsbG9jYXRlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aDEtMGI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX09zZVhJSTZ4RWVHZENlRkZKbHg4a0EiLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIHhtaTppZD0iX001aDFfRWI0RWVPODliZFBwQjhnVGciIG5hbWU9ImJhc2VfQWJzdHJhY3Rpb24iIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0Fic3RyYWN0aW9uIi8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9NNWgxX2tiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJJbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbSIgZVN1cGVyVHlwZXM9Il9NNWhPUWtiNEVlTzg5YmRQcEI4Z1RnIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aDFfMGI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX2M2MmZFRGlmRWVLcnVmSnF4UjZXaWciLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9NNWgyQVViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJJbmVydGlhbE5hdmlnYXRpb25TeXN0ZW0iIGVTdXBlclR5cGVzPSJfTTVoMWJrYjRFZU84OWJkUHBCOGdUZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWgyQWtiNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9yV0gxMERpZkVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVoMkJFYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iT2RvbWV0cnlTeXN0ZW0iIGVTdXBlclR5cGVzPSJfTTVoMWEwYjRFZU84OWJkUHBCOGdUZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWgyQlViNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9KMkh0RURpakVlS3J1ZkpxeFI2V2lnIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVoMkIwYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtIiBlU3VwZXJUeXBlcz0iX001aDFSMGI0RWVPODliZFBwQjhnVGciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVpY0FFYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfbFVBbGtEaWpFZUtydWZKcXhSNldpZyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aWNBa2I0RWVPODliZFBwQjhnVGciIG5hbWU9IkRlcGxveW1lbnRQbGFuIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aWNBMGI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX3E0ZWNJSHd0RWVLbERiQ0xhSXo2dGciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIHhtaTppZD0iX001aWNCRWI0RWVPODliZFBwQjhnVGciIG5hbWU9ImJhc2VfUGFja2FnZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiPgorICAgICAgICAgIDxlVHlwZSB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvNS4wLjAvVU1MIy8vUGFja2FnZSIvPgorICAgICAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiB4bWk6aWQ9Il9NNWljQmtiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJtYWluSW5zdGFuY2UiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL0luc3RhbmNlU3BlY2lmaWNhdGlvbiIvPgorICAgICAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVpY0NFYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iR3lyb3Njb3BlIiBlU3VwZXJUeXBlcz0iX001aE9Ra2I0RWVPODliZFBwQjhnVGciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVpY0NVYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfeEs0N01KMzBFZUtaUWMzVmJabjJCZyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aWNDMGI0RWVPODliZFBwQjhnVGciIG5hbWU9Ik9uUHJvcGVydHkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVpY0RFYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfU2g3eGNMdmJFZUtGak9pUElDcVlUQSIvPgorICAgICAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4bWk6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgeG1pOmlkPSJfTTVpY0RVYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0icHJvcGVydHkiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgICA8ZVR5cGUgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCMvL1Byb3BlcnR5Ii8+CisgICAgICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIHhtaTppZD0iX001aWNEMGI0RWVPODliZFBwQjhnVGciIG5hbWU9ImJhc2VfUGFyYW1ldGVyIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgICAgPGVUeXBlIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9QYXJhbWV0ZXIiLz4KKyAgICAgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aWNFVWI0RWVPODliZFBwQjhnVGciIG5hbWU9IkNoYXNzaXMiIGVTdXBlclR5cGVzPSJfTTVpY0ZFYjRFZU84OWJkUHBCOGdUZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWljRWtiNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9oQzM3MEJra0VlT29LS09KUEZHZEN3Ii8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVpY0ZFYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iU3VwcG9ydGluZ1N0cnVjdHVyZSIgZVN1cGVyVHlwZXM9Il9NNWhPUzBiNEVlTzg5YmRQcEI4Z1RnIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aWNGVWI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX1YwYW80Qmt3RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9NNWljRjBiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJNZWNoYW5pY2FsTGlua2FnZSIgZVN1cGVyVHlwZXM9Il9NNWhPUzBiNEVlTzg5YmRQcEI4Z1RnIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aWNHRWI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iXzlvbVFBQmt0RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9NNWljR2tiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJMZWciIGVTdXBlclR5cGVzPSJfTTVpY0hrYjRFZU84OWJkUHBCOGdUZyBfTTVpY0YwYjRFZU84OWJkUHBCOGdUZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWljRzBiNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9EY2FCc0JrdUVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVpY0hrYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iTG9jb21vdGlvbkhhcmR3YXJlIiBlU3VwZXJUeXBlcz0iX001aWNJVWI0RWVPODliZFBwQjhnVGciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVpY0gwYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfX2swUzBCa3lFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aWNJVWI0RWVPODliZFBwQjhnVGciIG5hbWU9IkFjdHVhdG9ySGFyZHdhcmUiIGVTdXBlclR5cGVzPSJfTTVoT1MwYjRFZU84OWJkUHBCOGdUZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWljSWtiNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9WRGhNNEJrdkVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVpY0pFYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iTW9iaWxlUm9ib3QiIGVTdXBlclR5cGVzPSJfTTVoTjRrYjRFZU84OWJkUHBCOGdUZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWljSlViNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9LYTBvZ0JreUVlT29LS09KUEZHZEN3Ii8+CisgICAgICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhtaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiB4bWk6aWQ9Il9NNWljSmtiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJraW5kIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9Il9NNWljS1ViNEVlTzg5YmRQcEI4Z1RnIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtIiB4bWk6aWQ9Il9NNWljS1ViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJNb2JpbGVSb2JvdEtpbmQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVpY0trYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfeU00OWdCazBFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX001aWNLMGI0RWVPODliZFBwQjhnVGciIG5hbWU9IkFpclZlaGljbGUiLz4KKyAgICAgICAgPGVMaXRlcmFscyB4bWk6dHlwZT0iZWNvcmU6RUVudW1MaXRlcmFsIiB4bWk6aWQ9Il9NNWljTEViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJIeWJyaWRWZWhpY2xlIiB2YWx1ZT0iMSIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX001aWNMVWI0RWVPODliZFBwQjhnVGciIG5hbWU9IlN1cmZhY2VWZWhpY2xlIiB2YWx1ZT0iMiIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX001aWNMa2I0RWVPODliZFBwQjhnVGciIG5hbWU9IlVuZGVyd2F0ZXJWZWhpY2xlIiB2YWx1ZT0iMyIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX001aWNMMGI0RWVPODliZFBwQjhnVGciIG5hbWU9IkNhckxpa2VWZWhpY2xlIiB2YWx1ZT0iNCIvPgorICAgICAgICA8ZUxpdGVyYWxzIHhtaTp0eXBlPSJlY29yZTpFRW51bUxpdGVyYWwiIHhtaTppZD0iX001aWNNRWI0RWVPODliZFBwQjhnVGciIG5hbWU9IkRpZmZlcmVudGlhbFZlaGljbGUiIHZhbHVlPSI1Ii8+CisgICAgICAgIDxlTGl0ZXJhbHMgeG1pOnR5cGU9ImVjb3JlOkVFbnVtTGl0ZXJhbCIgeG1pOmlkPSJfTTVpY01VYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iTGVnZ2VkVmVoaWNsZSIgdmFsdWU9IjYiLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9NNWljTWtiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJNYW5pcHVsYXRvciIgZVN1cGVyVHlwZXM9Il9NNWhONGtiNEVlTzg5YmRQcEI4Z1RnIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aWNNMGI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX05mc3V3Qmt5RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9NNWljTlViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJQaWxvdGVkU3lzdGVtIiBlU3VwZXJUeXBlcz0iX001aE40a2I0RWVPODliZFBwQjhnVGciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVpY05rYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfVy1zXzBCa3lFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aWNPRWI0RWVPODliZFBwQjhnVGciIG5hbWU9IlBvd2VySGFyZHdhcmUiIGVTdXBlclR5cGVzPSJfTTVoT1MwYjRFZU84OWJkUHBCOGdUZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWljT1ViNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9XcjRvSUJsTEVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVpY08wYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iU2Vuc29ySGFyZHdhcmUiIGVTdXBlclR5cGVzPSJfTTVoT1MwYjRFZU84OWJkUHBCOGdUZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWljUEViNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il9jOHZpTUJsTEVlT29LS09KUEZHZEN3Ii8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICAgIDxlQ2xhc3NpZmllcnMgeG1pOnR5cGU9ImVjb3JlOkVDbGFzcyIgeG1pOmlkPSJfTTVpY1BrYjRFZU84OWJkUHBCOGdUZyIgbmFtZT0iR3Jhc3BpbmdIYXJkd2FyZSIgZVN1cGVyVHlwZXM9Il9NNWljSVViNEVlTzg5YmRQcEI4Z1RnIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aWNQMGI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX19Za2RNQmxMRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9NNWljUVViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJTdGVlcmVkV2hlZWxIYXJkd2FyZSIgZVN1cGVyVHlwZXM9Il9NNWljSGtiNEVlTzg5YmRQcEI4Z1RnIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aWNRa2I0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iXzBmMW0wQmxRRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9NNWljUkViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJBcm0iPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVpY1JVYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfZHNGRnNCbFJFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aWNSa2I0RWVPODliZFBwQjhnVGciIG5hbWU9IkpvaW50Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aWNSMGI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX25lNFZJQmxVRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeG1pOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIHhtaTppZD0iX001aWNTRWI0RWVPODliZFBwQjhnVGciIG5hbWU9ImJhc2VfQ29ubmVjdG9yIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgICAgPGVUeXBlIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9VTUwjLy9Db25uZWN0b3IiLz4KKyAgICAgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aWNTa2I0RWVPODliZFBwQjhnVGciIG5hbWU9IkNvbXBsZXRlQm9uZGluZyIgZVN1cGVyVHlwZXM9Il9NNWljUmtiNEVlTzg5YmRQcEI4Z1RnIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aWNTMGI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iX0trbTIwQmxYRWVPb0tLT0pQRkdkQ3ciLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9NNWljVFViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJBY3R1YXRlZEpvaW50IiBlU3VwZXJUeXBlcz0iX001aWNSa2I0RWVPODliZFBwQjhnVGciPgorICAgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTTVpY1RrYjRFZU84OWJkUHBCOGdUZyIgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIiByZWZlcmVuY2VzPSJfTTkzTk1CbFhFZU9vS0tPSlBGR2RDdyIvPgorICAgICAgPC9lQ2xhc3NpZmllcnM+CisgICAgICA8ZUNsYXNzaWZpZXJzIHhtaTp0eXBlPSJlY29yZTpFQ2xhc3MiIHhtaTppZD0iX001aWNVRWI0RWVPODliZFBwQjhnVGciIG5hbWU9IkxlZ1N5c3RlbSIgZVN1cGVyVHlwZXM9Il9NNWgxS2tiNEVlTzg5YmRQcEI4Z1RnIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aWNVVWI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iXzBjZndRQ21wRWVPTndMay05WkxxREEiLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9NNWljVTBiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJHcmFzcGluZ1N5c3RlbSIgZVN1cGVyVHlwZXM9Il9NNWhPTUViNEVlTzg5YmRQcEI4Z1RnIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX001aWNWRWI0RWVPODliZFBwQjhnVGciIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCIgcmVmZXJlbmNlcz0iXzZzUDNFQ21wRWVPTndMay05WkxxREEiLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9NNWljVmtiNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJTdGVlcmVkV2hlZWxTeXN0ZW0iIGVTdXBlclR5cGVzPSJfTTVoMUtrYjRFZU84OWJkUHBCOGdUZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWljVjBiNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiLz4KKyAgICAgIDwvZUNsYXNzaWZpZXJzPgorICAgICAgPGVDbGFzc2lmaWVycyB4bWk6dHlwZT0iZWNvcmU6RUNsYXNzIiB4bWk6aWQ9Il9NNWljV1ViNEVlTzg5YmRQcEI4Z1RnIiBuYW1lPSJXZWFwb25TeXN0ZW0iIGVTdXBlclR5cGVzPSJfTTVoT01FYjRFZU84OWJkUHBCOGdUZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9NNWljV2tiNEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiIHJlZmVyZW5jZXM9Il94MVNFSUNtdUVlT053TGstOVpMcURBIi8+CisgICAgICA8L2VDbGFzc2lmaWVycz4KKyAgICA8L2NvbnRlbnRzPgorICA8L2VBbm5vdGF0aW9ucz4KKyAgPG93bmVkQ29tbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIHhtaTppZD0iX1YzT3k0Q0p2RWVHWGJiNDUzdFAweUEiIGFubm90YXRlZEVsZW1lbnQ9Il9TZ2prUUNKcUVlR1hiYjQ1M3RQMHlBIj4KKyAgICA8Ym9keT5ndWFyZCBpcyB0eXBlZCB3aXRoIGEgYm9vbGVhbiBvcGVyYXRpb24gdGhhdCBoYXZlIHRvIGJlIGRlZmluZWQgaW4gdGhlIG1vZGVsIGJlZm9yZSB1c2luZyBpdCYjeEQ7CitlZmZlY3QgaXMgdHlwZWQgYnkgYW4gb3BlcmF0aW9uIHRoYXQgaXMgb3duZWQgYnkgdGhlIGNvbXBvbmVudCB0aGF0IGlzIGJlaGF2aW9yZWQgYnkgdGhlIEZTTSYjeEQ7Cis8L2JvZHk+CisgIDwvb3duZWRDb21tZW50PgorICA8b3duZWRDb21tZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgeG1pOmlkPSJfZDdLLXNDSndFZUdYYmI0NTN0UDB5QSI+CisgICAgPGJvZHk+YSBjb21wb25lbnQgY291bGQgaW5oZXJpdCBmcm9tIGFuIGFsZ29yaXRobSBsaWJyYXJ5ICYjeEQ7Cit0byBoYXZlIGFjY2VzcyB0byB0aGUgb3BlcmF0aW9uIGRlZmluZWQgaW4gdGhlIEFsZ29yaXRobUxpYnJhcnk8L2JvZHk+CisgIDwvb3duZWRDb21tZW50PgorICA8b3duZWRDb21tZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgeG1pOmlkPSJfNFpEVWtKNEFFZUtOU01GZHNjWDByZyIgYW5ub3RhdGVkRWxlbWVudD0iXzlFQmRnQnRURWVHWkJxUUxLMnRQUkEiPgorICAgIDxib2R5PkxpYkZpbGVGb3JtYXQgY2FuIGJlIGVsZiwgbWF0bGFiLCBldGM8L2JvZHk+CisgIDwvb3duZWRDb21tZW50PgorICA8b3duZWRDb21tZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgeG1pOmlkPSJfWWMyQXdMdkhFZUt0XzYxVEVyUmZ0dyIgYW5ub3RhdGVkRWxlbWVudD0iX0x3a2VNQ0pxRWVHWGJiNDUzdFAweUEiPgorICAgIDxib2R5PldoZW4gYSBzdGF0ZSBpcyBhY3RpdmF0ZWQsIGEgYmVoYXZpb3IgaXMgYWN0aXZhdGVkIGFuZCBleGVjdXRlZC4mI3hEOworSXQgaXMgcG9zc2libGUgdG8gYXNzb2NpYXRlIG1vcmUgb25lIGJlaGF2aW9yIHRvIHRoZSBzdGF0ZS4gQnV0IHRoZSBxdWVzdGlvbiBpcyBob3cgdG8gZGVmaW5lIHRoZSBvcmRlciBvZiBleGVjdXRpb24gb2YgdGhlIGJlaGF2aW9ycz88L2JvZHk+CisgIDwvb3duZWRDb21tZW50PgorICA8b3duZWRDb21tZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgeG1pOmlkPSJfQ3VLRndMdlNFZUt0XzYxVEVyUmZ0dyI+CisgICAgPGJvZHk+SG93IHRvIGFsbG9jYXRlIGFuIG9wZXJhdGlvbiBvZiBjb21wb25lbnQgdG8gYW4gb3BlcmF0aW9uIHRoYXQgaXMgZGVmaW5lZCBpbiBhbiBleHRlcm5hbCBsaWJyYXJ5PC9ib2R5PgorICA8L293bmVkQ29tbWVudD4KKyAgPG93bmVkQ29tbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIHhtaTppZD0iX2YxaFBzQmxYRWVPb0tLT0pQRkdkQ3ciIGFubm90YXRlZEVsZW1lbnQ9Il9NOTNOTUJsWEVlT29LS09KUEZHZEN3Ij4KKyAgICA8Ym9keT5tb3Rvcml6ZWQ8L2JvZHk+CisgIDwvb3duZWRDb21tZW50PgorICA8b3duZWRDb21tZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgeG1pOmlkPSJfeVFtcThCbFhFZU9vS0tPSlBGR2RDdyIgYW5ub3RhdGVkRWxlbWVudD0iX0trbTIwQmxYRWVPb0tLT0pQRkdkQ3ciPgorICAgIDxib2R5PlRoaXMgcmVsYXRpb24gc3BlY2lmaWVzIHRoYXQmI3hEOworIHR3byBQaHlzaWNhbE9iamVjdCBhcmUgc28gdGlnaHRseSYjeEQ7CisgbGlua2VkIHRoYXQgdGhlaXIgZnJhbWVzIGFyZSBzdGF0aWNhbGx5IGxpbmtlZDwvYm9keT4KKyAgPC9vd25lZENvbW1lbnQ+CisgIDxlbGVtZW50SW1wb3J0IHhtaTp0eXBlPSJ1bWw6RWxlbWVudEltcG9ydCIgeG1pOmlkPSJfN2J1ZE1QY1BFZC1KMDZVNUhNX28tUSIgYWxpYXM9IkNsYXNzIj4KKyAgICA8aW1wb3J0ZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNDbGFzcyIvPgorICA8L2VsZW1lbnRJbXBvcnQ+CisgIDxlbGVtZW50SW1wb3J0IHhtaTp0eXBlPSJ1bWw6RWxlbWVudEltcG9ydCIgeG1pOmlkPSJfOF9ZX1VDbFhFZUNpVlpROW8tMUgyQSIgYWxpYXM9IlBvcnQiPgorICAgIDxpbXBvcnRlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL1VNTC5tZXRhbW9kZWwudW1sI1BvcnQiLz4KKyAgPC9lbGVtZW50SW1wb3J0PgorICA8ZWxlbWVudEltcG9ydCB4bWk6dHlwZT0idW1sOkVsZW1lbnRJbXBvcnQiIHhtaTppZD0iX3ViTDM0R0F5RWVDVVFmM3ZwQUc2SkEiIGFsaWFzPSJEYXRhVHlwZSI+CisgICAgPGltcG9ydGVkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvVU1MLm1ldGFtb2RlbC51bWwjRGF0YVR5cGUiLz4KKyAgPC9lbGVtZW50SW1wb3J0PgorICA8ZWxlbWVudEltcG9ydCB4bWk6dHlwZT0idW1sOkVsZW1lbnRJbXBvcnQiIHhtaTppZD0iX3d1YWV3R0F5RWVDVVFmM3ZwQUc2SkEiIGFsaWFzPSJQcmltaXRpdmVUeXBlIj4KKyAgICA8aW1wb3J0ZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNQcmltaXRpdmVUeXBlIi8+CisgIDwvZWxlbWVudEltcG9ydD4KKyAgPGVsZW1lbnRJbXBvcnQgeG1pOnR5cGU9InVtbDpFbGVtZW50SW1wb3J0IiB4bWk6aWQ9Il82ZUsxa0J0VEVlR1pCcVFMSzJ0UFJBIiBhbGlhcz0iT3BlcmF0aW9uIj4KKyAgICA8aW1wb3J0ZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNPcGVyYXRpb24iLz4KKyAgPC9lbGVtZW50SW1wb3J0PgorICA8ZWxlbWVudEltcG9ydCB4bWk6dHlwZT0idW1sOkVsZW1lbnRJbXBvcnQiIHhtaTppZD0iX05JRGgwQnRVRWVHWkJxUUxLMnRQUkEiIGFsaWFzPSJPcGFxdWVCZWhhdmlvciI+CisgICAgPGltcG9ydGVkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvVU1MLm1ldGFtb2RlbC51bWwjT3BhcXVlQmVoYXZpb3IiLz4KKyAgPC9lbGVtZW50SW1wb3J0PgorICA8ZWxlbWVudEltcG9ydCB4bWk6dHlwZT0idW1sOkVsZW1lbnRJbXBvcnQiIHhtaTppZD0iX1hVbU1VQnRxRWVHWkJxUUxLMnRQUkEiIGFsaWFzPSJQcm9wZXJ0eSI+CisgICAgPGltcG9ydGVkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvVU1MLm1ldGFtb2RlbC51bWwjUHJvcGVydHkiLz4KKyAgPC9lbGVtZW50SW1wb3J0PgorICA8ZWxlbWVudEltcG9ydCB4bWk6dHlwZT0idW1sOkVsZW1lbnRJbXBvcnQiIHhtaTppZD0iX19IS1VnQ0RtRWVHQ2M5c0hrcnZaYmciIGFsaWFzPSJJbnRlcmZhY2UiPgorICAgIDxpbXBvcnRlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL1VNTC5tZXRhbW9kZWwudW1sI0ludGVyZmFjZSIvPgorICA8L2VsZW1lbnRJbXBvcnQ+CisgIDxlbGVtZW50SW1wb3J0IHhtaTp0eXBlPSJ1bWw6RWxlbWVudEltcG9ydCIgeG1pOmlkPSJfSU9YaXdDSnFFZUdYYmI0NTN0UDB5QSIgYWxpYXM9IlN0YXRlIj4KKyAgICA8aW1wb3J0ZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNTdGF0ZSIvPgorICA8L2VsZW1lbnRJbXBvcnQ+CisgIDxlbGVtZW50SW1wb3J0IHhtaTp0eXBlPSJ1bWw6RWxlbWVudEltcG9ydCIgeG1pOmlkPSJfS1V4MW9DSnFFZUdYYmI0NTN0UDB5QSIgYWxpYXM9IlRyYW5zaXRpb24iPgorICAgIDxpbXBvcnRlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL1VNTC5tZXRhbW9kZWwudW1sI1RyYW5zaXRpb24iLz4KKyAgPC9lbGVtZW50SW1wb3J0PgorICA8ZWxlbWVudEltcG9ydCB4bWk6dHlwZT0idW1sOkVsZW1lbnRJbXBvcnQiIHhtaTppZD0iX3JNcUFJRWFSRWVHMVJ2eEtnY0RabXciIGFsaWFzPSJOb2RlIj4KKyAgICA8aW1wb3J0ZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNOb2RlIi8+CisgIDwvZWxlbWVudEltcG9ydD4KKyAgPGVsZW1lbnRJbXBvcnQgeG1pOnR5cGU9InVtbDpFbGVtZW50SW1wb3J0IiB4bWk6aWQ9Il9xWkN4a0dMUEVlR3lBOGhLMU1oZ0JRIiBhbGlhcz0iUGFyYW1ldGVyIj4KKyAgICA8aW1wb3J0ZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNQYXJhbWV0ZXIiLz4KKyAgPC9lbGVtZW50SW1wb3J0PgorICA8ZWxlbWVudEltcG9ydCB4bWk6dHlwZT0idW1sOkVsZW1lbnRJbXBvcnQiIHhtaTppZD0iX20wYW5nSTZ4RWVHZENlRkZKbHg4a0EiIGFsaWFzPSJBYnN0cmFjdGlvbiI+CisgICAgPGltcG9ydGVkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvVU1MLm1ldGFtb2RlbC51bWwjQWJzdHJhY3Rpb24iLz4KKyAgPC9lbGVtZW50SW1wb3J0PgorICA8ZWxlbWVudEltcG9ydCB4bWk6dHlwZT0idW1sOkVsZW1lbnRJbXBvcnQiIHhtaTppZD0iX3Z5NlYwSHd0RWVLbERiQ0xhSXo2dGciIGFsaWFzPSJQYWNrYWdlIj4KKyAgICA8aW1wb3J0ZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNQYWNrYWdlIi8+CisgIDwvZWxlbWVudEltcG9ydD4KKyAgPGVsZW1lbnRJbXBvcnQgeG1pOnR5cGU9InVtbDpFbGVtZW50SW1wb3J0IiB4bWk6aWQ9Il9lQUFCOEh3NkVlS2szYVgtUF9va0p3IiBhbGlhcz0iSW5zdGFuY2VTcGVjaWZpY2F0aW9uIj4KKyAgICA8aW1wb3J0ZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNJbnN0YW5jZVNwZWNpZmljYXRpb24iLz4KKyAgPC9lbGVtZW50SW1wb3J0PgorICA8ZWxlbWVudEltcG9ydCB4bWk6dHlwZT0idW1sOkVsZW1lbnRJbXBvcnQiIHhtaTppZD0iX3FualRJTHZHRWVLdF82MVRFclJmdHciIGFsaWFzPSJCZWhhdmlvciI+CisgICAgPGltcG9ydGVkRWxlbWVudCB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvVU1MLm1ldGFtb2RlbC51bWwjQmVoYXZpb3IiLz4KKyAgPC9lbGVtZW50SW1wb3J0PgorICA8ZWxlbWVudEltcG9ydCB4bWk6dHlwZT0idW1sOkVsZW1lbnRJbXBvcnQiIHhtaTppZD0iX21hSTZvQmxVRWVPb0tLT0pQRkdkQ3ciIGFsaWFzPSJDb25uZWN0b3IiPgorICAgIDxpbXBvcnRlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL1VNTC5tZXRhbW9kZWwudW1sI0Nvbm5lY3RvciIvPgorICA8L2VsZW1lbnRJbXBvcnQ+CisgIDxwYWNrYWdlSW1wb3J0IHhtaTp0eXBlPSJ1bWw6UGFja2FnZUltcG9ydCIgeG1pOmlkPSJfSThYQXdHQkVFZUNVUWYzdnBBRzZKQSI+CisgICAgPGltcG9ydGVkUGFja2FnZSB4bWk6dHlwZT0idW1sOk1vZGVsIiBocmVmPSJwYXRobWFwOi8vVU1MX0xJQlJBUklFUy9VTUxQcmltaXRpdmVUeXBlcy5saWJyYXJ5LnVtbCNfMCIvPgorICA8L3BhY2thZ2VJbXBvcnQ+CisgIDxwYWNrYWdlSW1wb3J0IHhtaTp0eXBlPSJ1bWw6UGFja2FnZUltcG9ydCIgeG1pOmlkPSJfXy1DcGdBQjJFZUdYSk9KdFdLbjhqUSI+CisgICAgPGltcG9ydGVkUGFja2FnZSB4bWk6dHlwZT0idW1sOlBhY2thZ2UiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX2R0X3k0QUh0RWVDUVFPS3JoT19mSVEiLz4KKyAgPC9wYWNrYWdlSW1wb3J0PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfRWRuWW9QY0pFZC1KMDZVNUhNX28tUSIgbmFtZT0iUm9ib3QiPgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il9xcmJMY0Y3YkVlQ0doTFRqRURreGZnIiBnZW5lcmFsPSJfR29wRndQY0pFZC1KMDZVNUhNX28tUSIvPgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il82TG95NEZ2RUVlRzNaTDhDUWhpdG5RIiBnZW5lcmFsPSJfLUFRc1VFWFJFZUdlM00zTl84NDZydyIvPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9rdGp0d0JFekVlR2U1YWwwU0FOaFhRIiBuYW1lPSJ3aWR0aCIgdmlzaWJpbGl0eT0icHVibGljIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfbTdRN2NCRXpFZUdlNWFsMFNBTmhYUSIgdmFsdWU9IjEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX203YXNjQkV6RWVHZTVhbDBTQU5oWFEiIHZhbHVlPSIxIi8+CisgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfc3BITHdFNEJFZU9Ob2RFOTNXSm9WdyI+CisgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxpY29uIHhtaTp0eXBlPSJ1bWw6SW1hZ2UiIHhtaTppZD0iXzNrX25NQTFCRWVLUFZOc01nVkx4bnciIGNvbnRlbnQ9Ii0xMTklODAlNzglNzElMTMlMTAlMjYlMTAlMCUwJTAlMTMlNzMlNzIlNjglODIlMCUwJTAlMTYlMCUwJTAlMTYlOCUyJTAlMCUwJS0xMTIlLTExMSUxMDQlNTQlMCUwJTAlMjUlMTE2JTY5JTg4JTExNiU4MyUxMTElMTAyJTExNiUxMTklOTclMTE0JTEwMSUwJTY1JTEwMCUxMTElOTglMTAxJTMyJTczJTEwOSU5NyUxMDMlMTAxJTgyJTEwMSU5NyUxMDAlMTIxJTExMyUtNTUlMTAxJTYwJTAlMCUxJS03NyU3MyU2OCU2NSU4NCUxMjAlLTM4JTk4JS0yMCU2MSUxMTclLTExNyUtMTIzJS0xMTElLTE1JS05JS02NSUtMSUxMjclLTElLTElMTAzJTk2JTk2JTk2JTEwMiUxMDAlMTAwJTk4JTEwMCUtNCUtNDklMCU5OCU2NyUwJTM1JTMlLTI5JS02NSUtMSUtMSUtMTI3JS0xMjYlLTk3JTEyNyUtMSUtNzElLTEyJS0yOCU0MSU3NSUtMTUlLTU0JS02MSUxMiUtODQlNDQlMTIlNzYlLTExNiUxMiUxMjclLTElNjUlLTEwNyUtNCUtNSUtNDklLTE2JS0xNyUzMSUzJTU0JTk2JS01OSUtMTIlLTExNiU1JTY4JS0xJS0yJS02MSU2NCUyOCUxMjAlMTIyJS0xMCU0JTE5JTIyJTk3JTEwNSUtMzElMTE5JS01MSU0OSUxOSUzNCUtMjAlNDglMTAxJS02NiUxMjQlLTclLTUyJS0xMjYlNDYlLTkwJS05MyUtMTYlNDYlLTM2JTcwJS0xMTIlLTEwOSU0NSUtMzMlNjglNSUtNTYlNDMlLTQwJTEyMCUtMTI2JS0zMSUtNSU0NyUtNzIlLTI4JTQ3JTM4JTIyJTIwJTI3JTExNiUtNTIlODQlLTElMzklNTYlMSU4NSU2NyUtNzIlNjQlNjElLTg5JTUwJS02NyUyNCU5NiU5MiUzMiU5NiUtMzAlLTMxJTY5JTEwNCU3MiUxMTUlNTUlLTcwJTI4JTEwMiUtMTE3JTEwMiUtOTclLTg3JS0xMDglMTYlNzIlLTExMyUtNzYlNDglLTEyNCUtNSUtMTA1JS0xMTUlMjklLTIyJTM2JS05NiUtMTE3JS00MyUtMTI0JTEyMCUtNzQlLTMzJTEyMyUxJTEwMCUtODUlOSUtMTQlNDAlMTElLTE0JS02OCUtMSUtMiUtMjElLTYwJS0xMyUxMTklMTYlLTM5JTU5JTklLTUwJTQyJTExJS0xMCU1MCU2MCUxMjUlLTUzJS00JS0yNSU0NyU3MiUtNjElLTExMCU2OCUtMjUlMTA0JTEwOSUxMjElLTU4JS0xMTAlMTIxJTExMiUtODUlMTAyJS03MCUyNiUwJTg1JTEyMyU3NyUtMzclNiUxNyUtMzklLTEwNiUtMjclLTExJTQ2JS02MSUtNDUlMTEwJS0xMyUtNTUlNTklLTEwNSUtMTI4JS0xNSU4MyU2MCUxMTklLTYyJS0yMyUtMzclLTElLTYzJTk2JS0zNyUtMzUlLTI1JS0xJTgxJTElOTIlLTI4JS0zNSUtNzMlLTk3JTEyJS00NSUtNzQlLTE1JS02OSU1JS0xMjUlLTQlODAlLTgwJS0zMCU4MCUtMTklLTMxJTEwNyUxMjAlLTEyNiUtMSUtMTIlLTc3JTExOSU2NiU1MSUtNzQlNTElLTM2JTEyNSUtMiUtMTUlLTklMTExJS04OCUzMSU5MCU1NCUtOTglLTQwJS0xNiUtNCUtMTklNiU4NyUtNjElLTEyJS0zNSUyMyUtMTI4JS0zNiU5OSUtMTclNjMlOTElOSUtMTQlMiUyNSU5MCUtMTI2JTYwJTM0JTI4JS0xNyUtNTIlLTkwJTExMSUtMTI1JTYlNDYlMjMlMTUlMzQlMzAlLTgyJS0xMDAlLTcwJTI5JS02NCUtNjQlMTEyJS01NiUtNDElMjglMjQlLTg0JTY0JS0zMyUxMjMlNDIlNzMlMCU1JTM5JS05OCUtNzElOTklLTQyJS03MyUxJTk3JTIzJTI3JTQzJTc0JTYwJTAlLTExJTAlLTgzJTYlLTEyMiUxNSU2OCU1MyUtNDglNTQlLTk2JTEwNyUtMTExJTIxJTglNDglNTAlOTYlMzYlLTExNSUtODklMTExJS0xMjclMTIyJS0xMjglLTExNCUtNDIlOTMlMTE3JTEyMCUtNDIlLTUwJTExNSUxMDQlLTExMCU3NiUtNjUlMTI3JS03OSU5NiU3NSU5OCUxMTElODElLTEwMCUtMTI3JTQlNjIlLTElLTUlMTUlMTYlOTYlMCUtNTklMTElLTYwJS0xNCUtOTUlMTE3JTg5JS0xMDIlMCUwJTAlMCU3MyU2OSU3OCU2OCUtODIlNjYlOTYlLTEyNiUiIGZvcm1hdD0iUGFweXJ1cyIgbG9jYXRpb249InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzAzX3JvYm90X3N5c3RlbS5wbmciPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzRWSURvQTFCRWVLUFZOc01nVkx4bnciIHNvdXJjZT0iaW1hZ2VfcGFweXJ1cyI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNFZJRG9RMUJFZUtQVk5zTWdWTHhudyIga2V5PSJpbWFnZV9raW5kX2tleSIgdmFsdWU9Imljb24iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvaWNvbj4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il9Hb3BGd1BjSkVkLUowNlU1SE1fby1RIiBuYW1lPSJTeXN0ZW0iPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9fTzZhOFBjUEVkLUowNlU1SE1fby1RIiBuYW1lPSJiYXNlX0NsYXNzIiBhc3NvY2lhdGlvbj0iX19PNmE4ZmNQRWQtSjA2VTVITV9vLVEiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL1VNTC5tZXRhbW9kZWwudW1sI0NsYXNzIi8+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfTlFLR2dBQ0FFZVctUXNqaEZQQ19nZyIgbmFtZT0iYWxpYXMiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vVU1MX0xJQlJBUklFUy9VTUxQcmltaXRpdmVUeXBlcy5saWJyYXJ5LnVtbCNTdHJpbmciLz4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9uZmIxY0JlZ0VlSzdtYkYyYy13WlBBIiBuYW1lPSJuYXRpdmUiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vVU1MX0xJQlJBUklFUy9VTUxQcmltaXRpdmVUeXBlcy5saWJyYXJ5LnVtbCNCb29sZWFuIi8+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfN3ktQUVCZWdFZUs3bWJGMmMtd1pQQSIgbmFtZT0ibGlicmFyeVBhdGgiIHZpc2liaWxpdHk9InB1YmxpYyI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTElCUkFSSUVTL1VNTFByaW1pdGl2ZVR5cGVzLmxpYnJhcnkudW1sI1N0cmluZyIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfOUpfZFlCZWdFZUs3bWJGMmMtd1pQQSIgdmFsdWU9IjEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzlKX2RZUmVnRWVLN21iRjJjLXdaUEEiIHZhbHVlPSIxIi8+CisgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfOUpfZFloZWdFZUs3bWJGMmMtd1pQQSI+CisgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il81U1dnNENNNkVlS3dlZDdGRUVGLTRRIiBuYW1lPSJsaWJyYXJ5Q29tcG9uZW50TmFtZSIgdmlzaWJpbGl0eT0icHVibGljIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1VNTF9MSUJSQVJJRVMvVU1MUHJpbWl0aXZlVHlwZXMubGlicmFyeS51bWwjU3RyaW5nIi8+CisgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il81NE1fOENNNkVlS3dlZDdGRUVGLTRRIiB2YWx1ZT0iMSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfNTRNXzhTTTZFZUt3ZWQ3RkVFRi00USIgdmFsdWU9IjEiLz4KKyAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il81NFdKNENNNkVlS3dlZDdGRUVGLTRRIj4KKyAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPGljb24geG1pOnR5cGU9InVtbDpJbWFnZSIgeG1pOmlkPSJfQlFyaUFBMUZFZUtQVk5zTWdWTHhudyIgY29udGVudD0iLTExOSU4MCU3OCU3MSUxMyUxMCUyNiUxMCUwJTAlMCUxMyU3MyU3MiU2OCU4MiUwJTAlMCUxNiUwJTAlMCUxNiU4JTIlMCUwJTAlLTExMiUtMTExJTEwNCU1NCUwJTAlMCUyNSUxMTYlNjklODglMTE2JTgzJTExMSUxMDIlMTE2JTExOSU5NyUxMTQlMTAxJTAlNjUlMTAwJTExMSU5OCUxMDElMzIlNzMlMTA5JTk3JTEwMyUxMDElODIlMTAxJTk3JTEwMCUxMjElMTEzJS01NSUxMDElNjAlMCUwJTElMTklNzMlNjglNjUlODQlMTIwJS0zOCU5OCUtMjAlNjElMTE3JS0xMTclLTEyMyUtMTExJS0xNSUtOSUtNjUlLTElMTI3JS0xJS0xJTEwMyU5NiU5NiU5NiUxMDIlMTAwJTEwMCU5OCUxMDAlLTQlLTQ5JTAlOTglNjclMCUzNSUzJS0yOSUtNjUlLTElLTElLTEyNyUtMTI2JS05NyUxMjclLTElLTcxJS0xMiUtMjglNDElNzUlLTE1JS01NCUtNjElMTIlLTg0JTQ0JTEyJTc2JS0xMTYlMTIlMTI3JS0xJTY1JS0xMDclLTQlLTUlLTQ5JS0xNiUtMTclMzElMyU1NCU5NiUtNTklLTEyJS0xMTYlNSU2OCUtMSUtMiUtNjElNjQlMjglMTIwJTEyMiUtMTAlNCUxOSUzJTQxJS0zMiUtNTMlLTEwNSUtNDklLTkyJTEwNSUtOCUtNTklLTYwJS02MiUyJTk3JS0zJS0xNyU3MyUtMTI2JS0xMTclMTEwJS02NSUtOSUtNjIlMTA3JS0zOCU1NCUtODQlLTEyNiU3NiU2MCUtNjglLTkyJS0zOSUtMTYlLTEwNSUtMTE1JTI5JTEwNiUzJS0yOSUtMTIlLTE5JS0zNCU1MCU2NiUtMTElLTU4JS04NiUxMDIlMjclNzklNTAlLTQlLTglNSUyMyU0JS0zOSUtMTA5JS0yMyU5JTk4JS0xMjglNSUtMTAzJS0xJS00JS0xMjMlMTA2JTk2JS03MiUtNSUxMjQlNDMlMyU2NyUtNzQlLTEwJTQ3JTMyJTMlOTclMzIlLTEwMCUxMyU5OSUtNCUtNCUtMSUtOTclNSUtMzklNzAlMTElNzMlLTk1JTEwOSU4OSU5NCUxMjAlLTEwMCUtNjAlLTUwJS01NiUtMTIwJS05MiUtMzElLTM5JTkxJS05NSU1JTEyMyUzMyUtNTIlODMlLTIlLTI2JS0xMTUlMTAzJTExMSUxMTElMTI1JS0xNCUxNCU3NyUtNjElLTU3JS0zMyUtNjUlLTExMSU1MiUxMjQlNzElLTcyJS0yNSUtNTElLTExMyU5NSUzMiUtNDMlLTU2JS01MCUtMTI1JTAlNDYlMzAlLTIwJS05NSU4NCUxMTglLTI2JTU0JS02MSUtNSU0NyU4OCUzNiUtNDAlODglODklLTgwJTEwNiUtNzIlMTE0JS0yMiU1NCU4NiUxMTMlMSU3MCU2JS00NiUtMzAlLTEyNyUtMjMlLTklNDclLTQ2JTUyJTEyNCUtMiUtOSUzMSUzMiUtNjQlMCUtMzglLTExOCUxMTIlLTEwNyUtMTI1JTE0JTE5JS04NCUwJTAlMCUwJTczJTY5JTc4JTY4JS04MiU2NiU5NiUtMTI2JSIgZm9ybWF0PSJQYXB5cnVzIiBsb2NhdGlvbj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMDJfc3lzdGVtLnBuZyI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfRnlOTWNBMUZFZUtQVk5zTWdWTHhudyIgc291cmNlPSJpbWFnZV9wYXB5cnVzIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9GeU5NY1ExRkVlS1BWTnNNZ1ZMeG53IiBrZXk9ImltYWdlX2tpbmRfa2V5IiB2YWx1ZT0iaWNvbiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9pY29uPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkV4dGVuc2lvbiIgeG1pOmlkPSJfX082YThmY1BFZC1KMDZVNUhNX28tUSIgbmFtZT0iRV9TeXN0ZW1fQ2xhc3MwIiBtZW1iZXJFbmQ9Il9fTzZhOHZjUEVkLUowNlU1SE1fby1RIF9fTzZhOFBjUEVkLUowNlU1SE1fby1RIj4KKyAgICA8b3duZWRFbmQgeG1pOnR5cGU9InVtbDpFeHRlbnNpb25FbmQiIHhtaTppZD0iX19PNmE4dmNQRWQtSjA2VTVITV9vLVEiIG5hbWU9ImV4dGVuc2lvbl9TeXN0ZW0iIHR5cGU9Il9Hb3BGd1BjSkVkLUowNlU1SE1fby1RIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIiBhc3NvY2lhdGlvbj0iX19PNmE4ZmNQRWQtSjA2VTVITV9vLVEiLz4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il9SendRc0JtaUVlQ1Fpcnhjal9SYUZnIiBuYW1lPSJEYXRhRmxvd1BvcnQiPgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il81UTJjRUdCQkVlQ1VRZjN2cEFHNkpBIiBnZW5lcmFsPSJfMXRkTjBHQkJFZUNVUWYzdnBBRzZKQSIvPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9McTNrQUNsU0VlQ1VEdXdDR19obFp3IiBuYW1lPSJkaXJlY3Rpb24iIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX1dYYjBZQ2xTRWVDVUR1d0NHX2hsWnciPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfTFhpZHNCM2lFZUt3Y1A0RUVZOC1MZyIgdmFsdWU9IjEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0xYcm5vQjNpRWVLd2NQNEVFWTgtTGciIHZhbHVlPSIxIi8+CisgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfTFgxWW9CM2lFZUt3Y1A0RUVZOC1MZyI+CisgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9CRlNXMEdCRUVlQ1VRZjN2cEFHNkpBIiBuYW1lPSJidWZmZXJTaXplIiB2aXNpYmlsaXR5PSJwdWJsaWMiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vVU1MX0xJQlJBUklFUy9VTUxQcmltaXRpdmVUeXBlcy5saWJyYXJ5LnVtbCNJbnRlZ2VyIi8+CisgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9NdUR3d0dCRUVlQ1VRZjN2cEFHNkpBIiB2YWx1ZT0iMSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfTXVXcnNHQkVFZUNVUWYzdnBBRzZKQSIgdmFsdWU9IjEiLz4KKyAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJBX3JlZGVmaW5lZFBvcnRfcG9ydC1fb3duZWRFbmQuMC1fbG93ZXJWYWx1ZSIvPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPGljb24geG1pOnR5cGU9InVtbDpJbWFnZSIgeG1pOmlkPSJfNlliWnNDVmRFZUNPNnR0OEh6QV9YdyIgY29udGVudD0iLTExOSU4MCU3OCU3MSUxMyUxMCUyNiUxMCUwJTAlMCUxMyU3MyU3MiU2OCU4MiUwJTAlMCUxNiUwJTAlMCUxNiU4JTYlMCUwJTAlMzElLTEzJS0xJTk3JTAlMCUwJTElMTE1JTgyJTcxJTY2JTAlLTgyJS01MCUyOCUtMjMlMCUwJTAlNCUxMDMlNjUlNzclNjUlMCUwJS03OSUtMTEzJTExJS00JTk3JTUlMCUwJTAlOSUxMTIlNzIlODklMTE1JTAlMCUxNCUtNjAlMCUwJTE0JS02MCUxJS0xMDclNDMlMTQlMjclMCUwJTAlMTA3JTczJTY4JTY1JTg0JTU2JTc5JS05MSUtMTA5JS01MyUxMyUwJTMyJTglNjclLTU5JTgxJS05OSUtNjMlNDklLTEwMCUtNjMlODUlLTMlMzclMjYlMTQlLTQ2JS0xMTAlLTY0JS02NyUtNDklLTEwNiUtOTQlLTExNiU1MyU0MSU0OCU1NyUtOTYlNjElLTQ2JTQ4JTY0JTgwJTQlLTg3JS0zJTI1JTI4JS04MyUxMjQlLTUxJTY2JTclOTAlLTkyJTk3JS0xMDIlNjglMzUlNDglOCU1JS0yMCUtNDElMTYlLTI4JS0xOSUtNjQlLTc4JTEwNCUtNzUlMTE2JS05NSU0NiU3JS04OCUxMDYlLTQwJS0xMjYlMjIlOTAlLTExNSUtNzIlMjglLTk2JTU4JTQxJS0xMjglLTM1JTIlNCU0OCUtMTUlLTExNCUtMjQlLTM0JS0xMjclLTc1JTcyJTI2JS0xMjclMTI1JS03NCU0OCU5NiUyJS0xMCUtNzYlNDclOCUtNTYlMTEyJS05OCU1MyUwJTAlMCUwJTczJTY5JTc4JTY4JS04MiU2NiU5NiUtMTI2JSIgZm9ybWF0PSJQYXB5cnVzIiBsb2NhdGlvbj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvSW4ucG5nIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8tZS1fWUNWZEVlQ082dHQ4SHpBX1h3IiBzb3VyY2U9ImltYWdlX3BhcHlydXMiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXy1lLV9ZU1ZkRWVDTzZ0dDhIekFfWHciIGtleT0iaW1hZ2Vfa2luZF9rZXkiIHZhbHVlPSJpY29uIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRG9UcG9DVmVFZUNPNnR0OEh6QV9YdyIga2V5PSJpbWFnZV9leHByX2tleSIgdmFsdWU9ImRpcmVjdGlvbj1pbiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9pY29uPgorICAgIDxpY29uIHhtaTp0eXBlPSJ1bWw6SW1hZ2UiIHhtaTppZD0iX0hPaUpjQ1ZlRWVDTzZ0dDhIekFfWHciIGNvbnRlbnQ9Ii0xMTklODAlNzglNzElMTMlMTAlMjYlMTAlMCUwJTAlMTMlNzMlNzIlNjglODIlMCUwJTAlMTYlMCUwJTAlMTYlOCU2JTAlMCUwJTMxJS0xMyUtMSU5NyUwJTAlMCUxJTExNSU4MiU3MSU2NiUwJS04MiUtNTAlMjglLTIzJTAlMCUwJTQlMTAzJTY1JTc3JTY1JTAlMCUtNzklLTExMyUxMSUtNCU5NyU1JTAlMCUwJTklMTEyJTcyJTg5JTExNSUwJTAlMTQlLTYwJTAlMCUxNCUtNjAlMSUtMTA3JTQzJTE0JTI3JTAlMCUwJTk3JTczJTY4JTY1JTg0JTU2JTc5JTk5JS00JTE1JTQlMTIlMjAlMCUzOCUxMCUtMTIlLTEyNiUtNzUlODIlMTA4JTAlMzUlNDYlNDclNDglLTEwNiUtNTIlLTEyNSU1OSUtMTglMTI3JTc5JTE4JTc4JS0xMjElOTglMTE3JTElLTc5JS0xMDIlLTc5JTEyMiUtMTI3JTIwJS01MSUyNCU2JS0xMTIlLTg2JTI1JTEwMCUwJTYwJTEyJS0xMTIlNTMlMTklMTklNTElLTgwJTExMiUtOTUlMTEwJTQ0JS0xMTIlLTI5JTUlMjAlMjMlMzIlNzElMjMlLTc5JTk0JS02MiUtMTYlMiUtODclLTEyMiU5NiUxMyUzJTgyJTEyJS02MyUtMTAzJTE4JS0xMTklLTExOSU5JS04NiUtMjglNSUtMTE4JS05MyUxNyUwJTExOCUtNDYlNDclOCUxNSUyOCUtNDMlLTcxJTAlMCUwJTAlNzMlNjklNzglNjglLTgyJTY2JTk2JS0xMjYlIiBmb3JtYXQ9IlBhcHlydXMiIGxvY2F0aW9uPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy9wb3J0cy9PdXQucG5nIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9KU2pQb0NWZUVlQ082dHQ4SHpBX1h3IiBzb3VyY2U9ImltYWdlX3BhcHlydXMiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0pkbGE4Q1ZlRWVDTzZ0dDhIekFfWHciIGtleT0iaW1hZ2Vfa2luZF9rZXkiIHZhbHVlPSJpY29uIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSlNqUG9TVmVFZUNPNnR0OEh6QV9YdyIga2V5PSJpbWFnZV9leHByX2tleSIgdmFsdWU9ImRpcmVjdGlvbj1vdXQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvaWNvbj4KKyAgICA8aWNvbiB4bWk6dHlwZT0idW1sOkltYWdlIiB4bWk6aWQ9Il8xV0JGVUJoUkVlS0pvTmlmR3Q3XzFRIiBjb250ZW50PSItMTE5JTgwJTc4JTcxJTEzJTEwJTI2JTEwJTAlMCUwJTEzJTczJTcyJTY4JTgyJTAlMCUwJTE2JTAlMCUwJTE2JTglNiUwJTAlMCUzMSUtMTMlLTElOTclMCUwJTAlMSUxMTUlODIlNzElNjYlMCUtODIlLTUwJTI4JS0yMyUwJTAlMCU0JTEwMyU2NSU3NyU2NSUwJTAlLTc5JS0xMTMlMTElLTQlOTclNSUwJTAlMCU5JTExMiU3MiU4OSUxMTUlMCUwJTE0JS02MCUwJTAlMTQlLTYwJTElLTEwNyU0MyUxNCUyNyUwJTAlMCUtOTklNzMlNjglNjUlODQlNTYlNzklOTklLTQlMTUlNCUxMiUyMCUwJTM4JTEwJS0xMiUtMTI2JS03NSUxNCU4MiUzJS02JTc5JS0zMyU5NyU5NiU0NCUtMTAzJTclMTE4JTM0JS0xMjAlNiUtMTUlMTEzJTElMTIlNDclLTEyOCUyMCUyMyUtODMlNjAlLTYwJS02NCUtOTYlNDQlOSUtNDIlLTQ1JTIzJTExMCU3JS0yNiUtMjklNTIlNCUyMCUxMSU0OCUtNDglMTE5JS0yMiUtMTAlMTI3JS0xMjIlLTMwJS03MSUtMSUyNSUtOTAlMTA5JTY3JTIyJS0yJTE1JTE5JTclLTQ3JS0yNCUtMTI4JS0xMjclLTExMiUxMDIlMTE2JTEyMSUxMTYlNjclLTMyJTk0JTQwJTU4JTExNSUyNyUtMzAlMTAwJTE5JTg1JS02OCU0OSUxMSU4MyU3JTg3JS0xMjQlLTIwJTM2JS0xMTIlLTQ1JTY1JTk0JTY0JS03MyU1JS0xMDUlLTQxJS02NCUtMTE5JTE2JS02MSU3OSUxMDQlLTEyMiUtMzIlLTQ1JS0xMTYlLTQzJTAlLTgwJTMyJS00NCUtMTEyJS0xNyUtMzMlLTY1JTk5JTEzJTg0JTIwJTg3JTk5JTQlNDMlODQlMCUtMjYlMTMlMTA4JTMzJS0xMTMlLTg0JS0xMjElMTEzJS0yNCUxMDMlMzglMCUtNzAlLTY2JTExMyUxMTIlMTklOTQlMCU1MSUwJTAlMCUwJTczJTY5JTc4JTY4JS04MiU2NiU5NiUtMTI2JSIgZm9ybWF0PSJQYXB5cnVzIiBsb2NhdGlvbj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvSW5PdXQucG5nIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8yOXVxQUJoUkVlS0pvTmlmR3Q3XzFRIiBzb3VyY2U9ImltYWdlX3BhcHlydXMiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzI5dXFBUmhSRWVLSm9OaWZHdDdfMVEiIGtleT0iaW1hZ2Vfa2luZF9rZXkiIHZhbHVlPSJpY29uIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNFhsWTRCaFJFZUtKb05pZkd0N18xUSIga2V5PSJpbWFnZV9leHByX2tleSIgdmFsdWU9ImRpcmVjdGlvbj1pbm91dCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9pY29uPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uIiB4bWk6aWQ9Il9XWGIwWUNsU0VlQ1VEdXdDR19obFp3IiBuYW1lPSJEYXRhRmxvd0RpcmVjdGlvbktpbmQiPgorICAgIDxvd25lZExpdGVyYWwgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIHhtaTppZD0iX2FjRGdZQ2xTRWVDVUR1d0NHX2hsWnciIG5hbWU9ImluIi8+CisgICAgPG93bmVkTGl0ZXJhbCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgeG1pOmlkPSJfYkxUTUFDbFNFZUNVRHV3Q0dfaGxadyIgbmFtZT0ib3V0Ii8+CisgICAgPG93bmVkTGl0ZXJhbCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgeG1pOmlkPSJfOXoyRXNCZzZFZUtKb05pZkd0N18xUSIgbmFtZT0iaW5vdXQiLz4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbiIgeG1pOmlkPSJfNi1iOFlGN2FFZUNHaExUakVEa3hmZyIgbmFtZT0iU2VydmljZUZsb3dLaW5kIj4KKyAgICA8b3duZWRMaXRlcmFsIHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb25MaXRlcmFsIiB4bWk6aWQ9Il8taEZqd0Y3YUVlQ0doTFRqRURreGZnIiBuYW1lPSJwcm92aWRlZCIvPgorICAgIDxvd25lZExpdGVyYWwgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIHhtaTppZD0iX19VV01zRjdhRWVDR2hMVGpFRGt4ZmciIG5hbWU9InJlcXVpcmVkIi8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfQlBJZVlGN2JFZUNHaExUakVEa3hmZyIgbmFtZT0iU2VydmljZVBvcnQiPgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il84RXRxMEdCQkVlQ1VRZjN2cEFHNkpBIiBnZW5lcmFsPSJfMXRkTjBHQkJFZUNVUWYzdnBBRzZKQSIvPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9hdTFMNEY3YkVlQ0doTFRqRURreGZnIiBuYW1lPSJraW5kIiB2aXNpYmlsaXR5PSJwdWJsaWMiIHR5cGU9Il82LWI4WUY3YUVlQ0doTFRqRURreGZnIj4KKyAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2RUVndBRjdiRWVDR2hMVGpFRGt4ZmciIHZhbHVlPSIxIi8+CisgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9kVGZoQUY3YkVlQ0doTFRqRURreGZnIiB2YWx1ZT0iMSIvPgorICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2RUb3E4RjdiRWVDR2hMVGpFRGt4ZmciPgorICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8aWNvbiB4bWk6dHlwZT0idW1sOkltYWdlIiB4bWk6aWQ9Il9RdjdRUUdBdkVlQzEtTlBkcHdlUnBBIiBjb250ZW50PSItMTE5JTgwJTc4JTcxJTEzJTEwJTI2JTEwJTAlMCUwJTEzJTczJTcyJTY4JTgyJTAlMCUwJTE2JTAlMCUwJTE2JTglNiUwJTAlMCUzMSUtMTMlLTElOTclMCUwJTAlMSUxMTUlODIlNzElNjYlMCUtODIlLTUwJTI4JS0yMyUwJTAlMCU0JTEwMyU2NSU3NyU2NSUwJTAlLTc5JS0xMTMlMTElLTQlOTclNSUwJTAlMCU5JTExMiU3MiU4OSUxMTUlMCUwJTE0JS02MCUwJTAlMTQlLTYwJTElLTEwNyU0MyUxNCUyNyUwJTAlMCUtMjYlNzMlNjglNjUlODQlNTYlNzklOTklLTQlMTUlNCUxMiUyMCUwJTM4JTEwJS0xMiUtMTI2JS03NSUxNCUtNjglMSUtMTE2JS00MCUtNjIlLTMyJS01NyUtMTEzJTMxJTEyJTMzJS02OSU0NyU1MCUxMDglMTI1JS0xNCUxNCUtMjAlLTUyJTMwJTk5JTIxJS0xMjIlOTglNTElODUlLTg0JS02NiUtNTklLTE2JTY2JS0xNyUtODclLTM3JTEyJS0xMDAlNTMlLTUzJS02NCUtMTAyJS02NyUxMDElLTEyNCUtNjQlLTEwMiU3NCU4NiUyOSUxMDIlLTE2JS0zOSUxMjQlMTglMTIzJTExMiUtMTI3JTkyJS0xMjglMTIlMjQlLTExOCUtMjUlLTIlLTklLTM0JTExNiUyJTY5JS0yMCUtNSUtOSUtMTclLTElNjUlLTMwJS0xMjElMzAlLTY3JTcwJTg3JS0yJTMxJS01OSU1JTMzJS04NSUtMTAlLTEyNiUxMDklLTM5JS0zMCUxMDclLTExNCU5OCUyNyU3JTclNyUzJS0xMjUlLTc4JTM2JS0xMjUlLTM1JS0xMDYlLTQ1JTI0JS04MiU2NCU0OSUtMzIlNyUzOSUxNSU4OCUzMyU1NCUwJS0xMyUxNCUtNzAlMjglLTExOCUxJTI4JS0zMyUtNjUlNDglNDglLTM2JTEyNSUtMTE0JS00MyUwJTg4JS0xMjglLTMwJTUzJTk2JTc3JS0xMDQlNTElLTQwJTUlLTI0JTElNiUtMTAlMjYlLTQ4JTk2JTgwJTEwOCUtOTYlMyUtMTE2JTEwNCUtMzYlMTI2JS0xNyU1JS0xMjUlLTQxJS01MCUtMTMlMTYlLTEwNSUtNjQlLTY4JTMlMTAwJTclLTEwMSUtNTUlNTElLTEyOCU0NSU2NCUzJTg4JS00NSUxJTcyJTEzJS01NiUtNDIlLTc1JTExMSUxMjclLTEyNyUtOTMlMTE0JS0xMTUlLTg1JTYyJTMlNTYlMzIlLTc5JTAlLTEwMCU2JTE2JS0xMDElNzElNiU2MiU0NyUwJTAlMTE3JTEyNiUtMTIzJS0yOSU3NiU2NiU1OSU5MSUwJTAlMCUwJTczJTY5JTc4JTY4JS04MiU2NiU5NiUtMTI2JSIgZm9ybWF0PSJQYXB5cnVzIiBsb2NhdGlvbj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvUHJvdmlkZWQucG5nIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9UbnpjVUdBdkVlQzEtTlBkcHdlUnBBIiBzb3VyY2U9ImltYWdlX3BhcHlydXMiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX1RuOU5VR0F2RWVDMS1OUGRwd2VScEEiIGtleT0iaW1hZ2Vfa2luZF9rZXkiIHZhbHVlPSJpY29uIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfV1RuaVVHQXZFZUMxLU5QZHB3ZVJwQSIga2V5PSJpbWFnZV9leHByX2tleSIgdmFsdWU9ImtpbmQ9cHJvdmlkZWQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvaWNvbj4KKyAgICA8aWNvbiB4bWk6dHlwZT0idW1sOkltYWdlIiB4bWk6aWQ9Il9vZEJYc0dBdkVlQzEtTlBkcHdlUnBBIiBjb250ZW50PSItMTE5JTgwJTc4JTcxJTEzJTEwJTI2JTEwJTAlMCUwJTEzJTczJTcyJTY4JTgyJTAlMCUwJTE2JTAlMCUwJTE2JTglMiUwJTAlMCUtMTEyJS0xMTElMTA0JTU0JTAlMCUwJTklMTEyJTcyJTg5JTExNSUwJTAlMTQlLTYwJTAlMCUxNCUtNjAlMSUtMTA3JTQzJTE0JTI3JTAlMCUwJS0xMjQlNzMlNjglNjUlODQlMTIwJS0xMDAlOTklLTQlLTElLTElNjMlMyU0MSUtMTI4JS0xMTklMzYlLTQzJTg0JS00NiUtNjQlLTQwJS02NSUtMTExJS03OSUxMjclLTI5JS0yMyUxMDMlLTE3JS0xMjAlLTQzJS00OCUxMDQlLTgyJS01MCUtNjQlLTY0JTk2JTU0JTExNyUtMjElLTEwJTEyMyU0NyUtODAlLTI0JS04JS0xMTMlMyU0OCUtMTIlMTA5JTk2JTQwJS05OCUtMTE3JTQxJS0xMTQlLTQ1JTE1JS0xJTExJS0zJTI1JS00MCU4OSUyNSUtNSU1NSUxOCUxMTglMTglMiUtMTIwJS0xNiUxNyUtMjclNyUtNCUwJS04MSUtMTIyJS04OSUxMTElMzMlMSUtMTI4JTEyJTI0JTExMyUtNTklNTIlLTYwJS0xMSUtMSUxMSUtMyUtNDclLTYwJTg5JS04MCU0MyUxMjUlLTYlLTEwNiU2NSU5MCUyNCU4MyU1MyUzJTMlLTc0JTk2JTEwOSU2MCUxMjIlMTI1JS0zNyUtMzUlLTI1JS03MiUtMTI2JTI3JS04OSUtMTA5JTExMiUxJS0zOCUzOSU2MiUwJS05OCU4NSUxMjMlLTEyOCUtMjglLTMyJTAlLTEwMCUwJTAlMCUwJTczJTY5JTc4JTY4JS04MiU2NiU5NiUtMTI2JSIgZm9ybWF0PSJQYXB5cnVzIiBsb2NhdGlvbj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvcG9ydHMvUmVxdWlyZWQucG5nIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9wSmJLc0dBdkVlQzEtTlBkcHdlUnBBIiBzb3VyY2U9ImltYWdlX3BhcHlydXMiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3BKYktzV0F2RWVDMS1OUGRwd2VScEEiIGtleT0iaW1hZ2Vfa2luZF9rZXkiIHZhbHVlPSJpY29uIi8+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfcjQwSklHQXZFZUMxLU5QZHB3ZVJwQSIga2V5PSJpbWFnZV9leHByX2tleSIgdmFsdWU9ImtpbmQ9cmVxdWlyZWQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvaWNvbj4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il9IbFZ5Z0Y3YkVlQ0doTFRqRURreGZnIiBuYW1lPSJBY3R1YXRvclN5c3RlbSI+CisgICAgPG93bmVkQ29tbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIHhtaTppZD0iX0otcUdvQ21wRWVPTndMay05WkxxREEiIGFubm90YXRlZEVsZW1lbnQ9Il9IbFZ5Z0Y3YkVlQ0doTFRqRURreGZnIj4KKyAgICAgIDxib2R5PlN5c3RlbSBJTkNMVURJTkcgc29mdHdhcmUgd2hpY2ggY29udHJvbCBlZmZlY3RvcnMsIGxpa2UgYSBtZWNoYW5pY2FsIGFybSBkcml2ZXIuPC9ib2R5PgorICAgIDwvb3duZWRDb21tZW50PgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il9udDRjUUY3YkVlQ0doTFRqRURreGZnIiBnZW5lcmFsPSJfWTVIQUlBQ2NFZUdYSk9KdFdLbjhqUSIvPgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il9UUGtmZ0UzVEVlT05vZEU5M1dKb1Z3IiBnZW5lcmFsPSJfU3RtUVVFM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgIDxpY29uIHhtaTp0eXBlPSJ1bWw6SW1hZ2UiIHhtaTppZD0iX1NKdVFBQS1QRWVHUldjcmYtS3hiS3ciIGNvbnRlbnQ9Ii0xMTklODAlNzglNzElMTMlMTAlMjYlMTAlMCUwJTAlMTMlNzMlNzIlNjglODIlMCUwJTAlMTYlMCUwJTAlMTYlOCUyJTAlMCUwJS0xMTIlLTExMSUxMDQlNTQlMCUwJTAlMjUlMTE2JTY5JTg4JTExNiU4MyUxMTElMTAyJTExNiUxMTklOTclMTE0JTEwMSUwJTY1JTEwMCUxMTElOTglMTAxJTMyJTczJTEwOSU5NyUxMDMlMTAxJTgyJTEwMSU5NyUxMDAlMTIxJTExMyUtNTUlMTAxJTYwJTAlMCUxJS05MiU3MyU2OCU2NSU4NCUxMjAlLTM4JTk4JS0yMCU2MSUxMTclLTExNyUtMTIzJS0xMTElLTE1JS05JS02NSUtMSUxMjclLTElLTElMTAzJTk2JTk2JTk2JTEwMiUxMDAlMTAwJTk4JTEwMCUtNCUtNDklMCU5OCU2NyUwJTM1JTMlLTI5JS02NSUtMSUtMSUtMTI3JS0xMjYlLTk3JTEyNyUtMSUtNzElLTEyJS0yOCU0MSU3NSUtMTUlLTU0JS02MSUxMiUtODQlNDQlMTIlNzYlLTExNiUxMiUxMjclLTElNjUlLTEwNyUtNCUtNSUtNDklLTE2JS0xNyUzMSUzJTU0JTk2JS01OSUtMTIlLTExNiU1JTY4JS0xJS0yJS02MSU2NCUyOCUxMjAlMTIyJS0xMCU0JTExJTc4JTczJTEwMSUtNTUlNTklMTclLTc0JS01NCUtMTI2JTYwJTY0JS0yNiUtMjMlMTAzJS0xNyUtNTIlLTYlNTQlMCUyNSU5NSUtNjYlMTI0JTEwMiU2NiU4NyUtNTclLTU1JTYlNjYlMTIlMTIlNzUlLTIwJS03NiUzMiUtODYlLTEyNyUtNjQlODQlNzQlMTA0JTkxJS0xMDYlMjMlLTExMiUtMTUlLTExNyUtMTE5JTUlLTk1JTY1JS01NyU3NiUyMSUtOTIlNDYlLTYyJTExOCUtMTI2JS02NSU1JS0xMTIlLTQ3JTExMyUtMTElMTclLTI5JS0xMjYlMTI1JTEwNCUtOTAlNDklLTE1JS0xNiUtNjIlLTEwMCUzNiUtNjAlMTIzJTU3JS01MiUtMTAlLTgyJS04NSUzMyUtNjAlODQlMzElMTAxJTklMzIlMyUtMjQlMTglNTIlMTMlMTI3JS0zOSUtNDAlLTYzJTI2JTExNiUyMCUxMTYlLTcyJTg4JTY1JS01MCUtMTIyJS03MSUxJS02MiUxMDQlNjAlMTIzJS01JS0zMSUtMTExJTk1JTElLTExMCUtNjIlLTUxJS03NCU5MCUtNTclLTk4JS0xMjYlNTIlNTElLTElLTclMTElLTQ2JS04MCUtNjAlODQlNTclOTAlOTElMzAlLTQ1JS0zNyU5MSUxMjQlLTUxJS0xMDUlOTQlMTI1JTI0JTExNSUtMjQlLTM4JS0xMjIlLTI1JTExMSUtODElLTEwMCUtNzAlMTMlMjAlLTclOSUtMTE2JTE2JTMyJTIxJS03NyUtMzAlNDglOTIlODElLTQ1JS00NyUtMjElOTclOTElNzglLTYxJS03MSUzMiUtODclLTY5JS00OSUzMyUtODYlLTEyNyUtMTI4JTI5JTI0JS04MyU2NCUtMjIlNzglODElMCU5MiUtNTklLTEwJTIzJS0xNyU4NiUtMzMlMTIyJTYlLTI1JTM0JTc1JTElLTYzJS01NyUtMzMlLTY1JTY1JTI2JS03MCUtNTAlLTM2JTEyMSUtMSUtMyUyMyU2OCUtMjQlMTIwJS04MCUtMTElLTMzJTY2JTYzJTglMjclNDAlOCUtMTA4JTY2JTExMyUzNyUyMyUxNSU3MiUtNjElLTg0JS05OSUtMjUlLTE4JS02OCUtMSUtMTI2JTglNTklNzAlNzAlOCUtMjklLTYwJS0xMyUxMTklNjQlNDElMjAlMTMlMTA4JS04NCUtNDglMTIwJS03MiUtMTElLTIlMTE1JS0xOSUtMzElMTA3JS01NiU4MiU2NCUtMTglLTY5JS0xNyU2MyUtNDclLTEyNiU2NSUtMTI4JS0xMTElMSUyNiUxNSU0OSUtMTMlLTklMiUtNTUlMzQlMTklLTEwNyUtNjYlNTElMTE5JTUyJS0xMjQlLTcyJS02NyUtMTA4JTM2JTkxJTU0JS05OCUtNjQlMTIlNTUlLTkwJS0zMyUtNjUlODAlLTQ2JS0xMTAlODAlLTE5JTE4JS00JS0xMTklLTE3JS0xMyUtNjUlLTElMCUxJTYlMCUxMTUlMTE4JS0xMDElLTc4JS02JS04NyUxMiUxMCUwJTAlMCUwJTczJTY5JTc4JTY4JS04MiU2NiU5NiUtMTI2JSIgZm9ybWF0PSJQYXB5cnVzIiBsb2NhdGlvbj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMTNfYWN0aW9uLnBuZyI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfU0p1UUFRLVBFZUdSV2NyZi1LeGJLdyIgc291cmNlPSJpbWFnZV9wYXB5cnVzIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9TSnVRQWctUEVlR1JXY3JmLUt4Ykt3IiBrZXk9ImltYWdlX2tpbmRfa2V5IiB2YWx1ZT0iaWNvbiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9pY29uPgorICAgIDxpY29uIHhtaTp0eXBlPSJ1bWw6SW1hZ2UiIHhtaTppZD0iX1FLVFEwRWUyRWVPLTdMYXZNdy1HWnciIGxvY2F0aW9uPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy9zdmcvMTNfYWN0aW9uLnN2ZyI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfUUtUUTBVZTJFZU8tN0xhdk13LUdadyIgc291cmNlPSJpbWFnZV9wYXB5cnVzIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9RS1RRMGtlMkVlTy03TGF2TXctR1p3IiBrZXk9ImltYWdlX2tpbmRfa2V5IiB2YWx1ZT0ic2hhcGUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvaWNvbj4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il9LVHNQSUY3YkVlQ0doTFRqRURreGZnIiBuYW1lPSJTZW5zb3JTeXN0ZW0iPgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il9vTmQ3UUY3YkVlQ0doTFRqRURreGZnIiBnZW5lcmFsPSJfWTVIQUlBQ2NFZUdYSk9KdFdLbjhqUSIvPgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il9TTkVnc0UzVEVlT05vZEU5M1dKb1Z3IiBnZW5lcmFsPSJfU3RtUVVFM1NFZU9Ob2RFOTNXSm9WdyIvPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9xQ1o0OEVOdkVlR01aT1NKSWZhMGdnIiBuYW1lPSJmcmVxdWVuY3kiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xdVhtQUFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfOFhEalVFMm5FZUczcVpvZDNhVHBVQSIgbmFtZT0iaWRlbnRpZmllciI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3FhUzJvQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxpY29uIHhtaTp0eXBlPSJ1bWw6SW1hZ2UiIHhtaTppZD0iX3MyZ21RQS1RRWVHUldjcmYtS3hiS3ciIGNvbnRlbnQ9Ii0xMTklODAlNzglNzElMTMlMTAlMjYlMTAlMCUwJTAlMTMlNzMlNzIlNjglODIlMCUwJTAlMTYlMCUwJTAlMTYlOCUyJTAlMCUwJS0xMTIlLTExMSUxMDQlNTQlMCUwJTAlMjUlMTE2JTY5JTg4JTExNiU4MyUxMTElMTAyJTExNiUxMTklOTclMTE0JTEwMSUwJTY1JTEwMCUxMTElOTglMTAxJTMyJTczJTEwOSU5NyUxMDMlMTAxJTgyJTEwMSU5NyUxMDAlMTIxJTExMyUtNTUlMTAxJTYwJTAlMCUxJS00MyU3MyU2OCU2NSU4NCUxMjAlLTM4JTk4JS0yMyU2MSUxMTclLTExNyUtMTIzJS0xMTElLTE1JS05JS02NSUtMSUxMjclLTElLTElMTAzJTk2JTk2JTk2JTEwMiUxMDAlMTAwJTk4JTEwMCUtNCUtNDklMCU5OCU2NyUwJTM1JTMlLTI5JS02NSUtMSUtMSUtMTI3JS0xMjYlLTk3JTEyNyUtMSUtNzElLTEyJS0yOCU0MSUzNSU2NyUtMTUlOTIlNiU4NiUyMiU2JTM4JTcwJS0xMjIlLTY1JS0xJS05NiU3NCUtMiUtMyUxMDMlLTglLTklLTExMyUxJTI3JS04MCU5OCUxMjIlLTU4JTIlLTk0JTEyNyUtMSU2NSUtMTA1JS0zMSUxMDAlOTklLTExMiUxOCUxMDIlMTIwJS0xMCUtMTA2JS0zMSUtNSU0NyUxMDAlLTMxJS04OSUxMDMlNzklLTgwJTk2JTUzJTklLTg4JS02JTEyNyUtOTAlMzklLTExMiUtMzQlMTI2JS0xNyUtMTIzJS00MSUtNTglLTEwOSUxMiU3OSUtMzMlNjYlLTEyNCUtNjUlMTI0JS03JS01MiUtMTI0JTY5JS03NSUtNzglMzYlLTYxJS01JTQ3JS03MCUtODUlMTQlLTQxJTMwJS02NiUxMDIlMzMlNDElLTEyJS02NSUtNDglOTUlLTU3JTc2JTIxJTM0JS0xMyUtMTE3JS0xMTklLTEyMyU5JS0zOSUyNSU1MyUtMiUyMiUtMSUxMjMlLTExMCU2NCUxMDIlMTElLTE0JTkyJTE0JS03NyU3NyUtNDglLTExMSUtMTE3JS0zNSUxMTUlLTIlLTEyJS03NyUxMTklNjQlNTQlLTEyNSUtNzYlNDglODAlOSUxOSUxNSU0NyUxOSU5MiUtMTElLTg3JTc2JS04MSUxMDIlOTElNDUlNDAlLTklLTM5JTkxJS05NiUxMyUtMTclLTY2JS0xJS0zOCUtMzAlMTA3JS0zNCUxMjAlLTEwJS0xMCUtNSUtMTclLTY1JS0xMDYlLTcyJTI1JTAlLTEyMyUtMSUtNzglLTc5JTY3JTUzJS05MiUtMzklLTIzJS0xMDQlNzQlOSUzMyUxMDglLTUlLTIlLTIxJS01NCUtODclLTM3JTEwMiUtNDUlLTczJTElLTExNSUtOTclMTA0JS05MyUtMzUlMTE5JS0yNiU3OCUtNzYlLTc0JTYwJS00OCU4MCUtMjYlNjMlMTI3JS05NSUyNiU1OCUxMDglLTk2JTEwMiU3OSU2MCUxMTUlLTEyMSUtNzklMTI3JTM1JS01NiUyNyU5NiUxMDklNzMlNzElLTgyJTQyJTExJS0xNCUxMDglMTIwJS0yJTIyJTE4JTE4JTYzJS0xJS0xJS0xMjElLTEyMiUtMTEwJTMyJTQ4JTI4JS02MyUtOTYlOTYlLTUzJS04NyUxMTklLTI3JTMzJTY0JTQ2JS00OCU3MyU2NCU3NSUtODIlOTIlMTI2JS01NiUtOCUtMTAlMTElNDglMTIlMjQlLTg5JTExMSU3JS03MCUtMTA5JS05OSUtMTExJTE3JTM1JTg4JS03MSUtNDAlNjMlLTQlLTQlMTMlLTQ3JS02NSU0NSUtNTMlMTElMzQlNiUxMCUtMzklLTY5JS00OSUtMTI3JS0xMTYlLTExMyUtNjUlMTI3JTY3JTUzJTAlLTY3JTUlODElLTI4JS04MyU0MSUtOTMlNTIlMTI3JTE1JTMlNyUtMzclNCU4MyU4NSU3OSUzNyU5JTg4JS0xMjQlLTY3JS0xMjMlMjUlLTU3JTMlLTQzJTgwJTExMyUtMjglMjYlLTQ4JTI3JTY2JTExJS0xMCUyJS00MyUxJTY3JTYlLTM5JTc0JTk2JTEwOCUzMiU1NiUxMDglLTg0JTgwJTc5JS00OSUtMzglMTIxJS0xOCUtNTAlLTUlNDclMTA1JTQyJS0xMTAlLTclMzglNDIlLTU2JS04NiUtMTI3JS05NSUtNDQlLTc4JS0yMSUyOCUtMTAwJTQzJS02NCUtNTYlLTEyOCUtMTIwJTU2JS03NyUtNjYlMTMlMTYlLTczJS02MyUyOSUtMTAzJS02NiUtNSUyJTQ4JTEwMCUtMTExJS0xMDklMTklLTQ1JS0xNyU5NSUtMzIlLTQ0JTc0JTUyJTk2JS02NyUtNzklMjclMzIlLTY0JTAlLTElOCUtNjclLTM4JTk2JS03OCUxNCUtMTE1JTAlMCUwJTAlNzMlNjklNzglNjglLTgyJTY2JTk2JS0xMjYlIiBmb3JtYXQ9IlBhcHlydXMiIGxvY2F0aW9uPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8wN19zZW5zb3JfZHJpdmVyLnBuZyI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfczJnbVFRLVFFZUdSV2NyZi1LeGJLdyIgc291cmNlPSJpbWFnZV9wYXB5cnVzIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9zMmdtUWctUUVlR1JXY3JmLUt4Ykt3IiBrZXk9ImltYWdlX2tpbmRfa2V5IiB2YWx1ZT0iaWNvbiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9pY29uPgorICAgIDxpY29uIHhtaTp0eXBlPSJ1bWw6SW1hZ2UiIHhtaTppZD0iX2VtV2dJRWUxRWVPLTdMYXZNdy1HWnciIGxvY2F0aW9uPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy9zdmcvMDdfc2Vuc29yX2RyaXZlci5zdmciPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX2VtV2dJVWUxRWVPLTdMYXZNdy1HWnciIHNvdXJjZT0iaW1hZ2VfcGFweXJ1cyI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfZW1XZ0lrZTFFZU8tN0xhdk13LUdadyIga2V5PSJpbWFnZV9raW5kX2tleSIgdmFsdWU9InNoYXBlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2ljb24+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfb3JDVXNGOWlFZUNYbklRc2x4dnYzQSIgbmFtZT0iSGFyZHdhcmUiPgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il91V0NJb0Y5aUVlQ1huSVFzbHh2djNBIiBnZW5lcmFsPSJfR29wRndQY0pFZC1KMDZVNUhNX28tUSIvPgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il94eklDWUJrakVlT29LS09KUEZHZEN3IiBnZW5lcmFsPSJfWlVoaEFFWE5FZUdlM00zTl84NDZydyIvPgorICAgIDxpY29uIHhtaTp0eXBlPSJ1bWw6SW1hZ2UiIHhtaTppZD0iX1dsNWdNQTFTRWVLUFZOc01nVkx4bnciIGNvbnRlbnQ9Ii0xMTklODAlNzglNzElMTMlMTAlMjYlMTAlMCUwJTAlMTMlNzMlNzIlNjglODIlMCUwJTAlMTYlMCUwJTAlMTYlOCUyJTAlMCUwJS0xMTIlLTExMSUxMDQlNTQlMCUwJTAlMjUlMTE2JTY5JTg4JTExNiU4MyUxMTElMTAyJTExNiUxMTklOTclMTE0JTEwMSUwJTY1JTEwMCUxMTElOTglMTAxJTMyJTczJTEwOSU5NyUxMDMlMTAxJTgyJTEwMSU5NyUxMDAlMTIxJTExMyUtNTUlMTAxJTYwJTAlMCUxJS05NyU3MyU2OCU2NSU4NCUxMjAlLTM4JTk4JS0yMCU2MSUxMTclLTExNyUtMTIzJS0xMTElLTE1JS05JS02NSUtMSUxMjclLTElLTElMTAzJTk2JTk2JTk2JTEwMiUxMDAlMTAwJTk4JTEwMCUtNCUtNDklMCU5OCU2NyUwJTM1JTMlLTI5JS02NSUtMSUtMSUtMTI3JS0xMjYlLTk3JTEyNyUtMSUtNzElLTEyJS0yOCU0MSU3NSUtMTUlLTU0JS02MSUxMiUtODQlNDQlMTIlNzYlLTExNiUxMiUxMjclLTElNjUlLTEwNyUtNCUtNSUtNDklLTE2JS0xNyUzMSUzJTU0JTk2JS01OSUtMTIlLTExNiU5JTY4JS0xJS0yJS02MSUtMTYlLTEzJTU1JS02MSUtOTclLTY1JTgwJS0xMiUtMTclLTk3JS03MyUtNjclNTQlLTEyNSUtNzYlNDglLTkwJS0xMjIlLTg5JTEwMyU3OSU0OCUzMyUtMTMlMTA3JS00JTQ1JTExNiUtNTIlODQlMjUlLTEwOCUzNyUtNzMlLTglLTEwMiU0NyUxMTMlNTElOTYlMTYlLTMwJTkzJS0xMTAlLTI0JS0xMTYlLTg0JS0xMyUtNTMlLTEwNSUtNDklNDQlLTU2JTI2JS00JS0xMDglMzclLTEwMiUxMDklLTc1JTMyJS0yMCUxMDQlMTA5JTEyMSUzMiUyJTUwJTk4JTc4JS0zMyUxMDElMTIwJS02JTIyJTM0JS04JS0xMTclLTExOSU1JTEwMiUtMTI1JS0xMTQlMiUtNDglMTA4JTIxJTY1JTMwJTc2JTEwMyU3NiUtNDglLTExMSUzJS03MSUtMTEyJS0xMDklMTMlLTU2JTEwMiUtMzAlLTMxJS0xMjMlLTM4JS04MCUtNjAlODQlMjUlOTglMzAlMzglLTU2JTU1JTgxJS01NSUxMDMlODAlOTclLTY4JS0xMyUyJTEwNCUtNDklOTUlNTQlMTE4JS04OCUxMyU0OSU0MyUxNCUzNSU0MyU1OCUtMyUtMjAlLTM1JS01JS0xNyUtNjUlLTMyJS0zNiUtMzglLTYxJS00MSUzMiUtODIlOTglLTIlLTEzJTIzJS04NiUtOTUlLTU4JS01MSU4JTg5JS0xMjUlLTM5JS01NCUtNjElLTM3JS0xOCU2MSU3MSUtMTAlMjclNDglMzYlLTEyOCUtMTE2JS05NyUtMSUtMSU2NyUtOTklODQlMTAwJS05NCUtMTI2JS04NCUtMzElMTI3JS05NSU2MyU1MCUtNDElODQlNzQlLTU2JTkxJTcwJTEwNCUtMjElLTM1JS0yNSUtMjAlLTY0JTEwNCUtMTIzJTglOSUtNDMlNDYlLTE1JS0zOSUxMjQlMTglLTg1JTMxJS0xOCUtNjYlLTElLTYyJTg4JS02OSUxMDAlLTIxJS02MyUtODUlNjQlLTEwJS01NyUtMzMlLTY1JTE3JS0xNSUxNiUtODclMzYlLTEyNyU4NSUtMTI1JTUwJTQ4JS0yNCUtMTI0JTEyMCUtOTUlMjglNDYlMzAlMTAyJTYlNDMlLTg4JS0xOSUtNzMlLTQwJTg4JS05MCU5NSUxMjUlLTYwJS00OSUtNjQlLTk2JTM5JTM4JS0xMjglNzIlNzIlMTElLTEwJTYxJTEyNyUtMyUtMTUlLTIwJS02MSUtNDElMTIlLTExMiU0OCUtOCUtMTIlNCU5NyUtNjElLTEwNyU4MyUtNzMlLTEyNyUxMDQlLTclLTY3JTIzJTMyJTExNyUtMyUyNyUtMTA1JTk0JTEyNSU4JTEwJS04OCU0MyUxNSUxMDIlLTE5JTYwJS01NyUtMTYlLTE4JTUxJTY4JS0xMTUlMCU0OCUzNyU1MCUyMCUtNDklMTAxJTMyJTI2JTglLTM1JS0zOCUtNjElLTYwJTY0JTEwJS04JS00JS0xNyU2MyU2NCUtMTI4JTElMCUtODIlLTg3JS0xMDYlMTEzJTczJTUlMTIlMTA5JTAlMCUwJTAlNzMlNjklNzglNjglLTgyJTY2JTk2JS0xMjYlIiBmb3JtYXQ9IlBhcHlydXMiIGxvY2F0aW9uPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8xN19oYXJkd2FyZS5wbmciPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1pNVlc4QTFTRWVLUFZOc01nVkx4bnciIHNvdXJjZT0iaW1hZ2VfcGFweXJ1cyI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfWk1WVzhRMVNFZUtQVk5zTWdWTHhudyIga2V5PSJpbWFnZV9raW5kX2tleSIgdmFsdWU9Imljb24iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvaWNvbj4KKyAgICA8aWNvbiB4bWk6dHlwZT0idW1sOkltYWdlIiB4bWk6aWQ9Il9wbEg2MEVlMUVlTy03TGF2TXctR1p3IiBsb2NhdGlvbj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvc3ZnLzE3X2hhcmR3YXJlLnN2ZyI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfcGxINjBVZTFFZU8tN0xhdk13LUdadyIgc291cmNlPSJpbWFnZV9wYXB5cnVzIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9wbEg2MGtlMUVlTy03TGF2TXctR1p3IiBrZXk9ImltYWdlX2tpbmRfa2V5IiB2YWx1ZT0ic2hhcGUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvaWNvbj4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il94RFZjWUY5aUVlQ1huSVFzbHh2djNBIiBuYW1lPSJTb2Z0d2FyZSI+CisgICAgPGdlbmVyYWxpemF0aW9uIHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIHhtaTppZD0iX3pLQ3FNRjlpRWVDWG5JUXNseHZ2M0EiIGdlbmVyYWw9Il9Hb3BGd1BjSkVkLUowNlU1SE1fby1RIi8+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX0Y3UnhZRU45RWVHTVpPU0pJZmEwZ2ciIG5hbWU9ImlzUGVyaW9kaWMiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vVU1MX0xJQlJBUklFUy9VTUxQcmltaXRpdmVUeXBlcy5saWJyYXJ5LnVtbCNCb29sZWFuIi8+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfTzZVSThFTjlFZUdNWk9TSklmYTBnZyIgbmFtZT0icGVyaW9kIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX1VKNU1NRU45RWVHTVpPU0pJZmEwZ2ciIG5hbWU9InByaW9yaXR5Ij4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfNk5KZmtBS25FZUNRUmVJT0lXSjBuQSIvPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2dnUUU0RU45RWVHTVpPU0pJZmEwZ2ciIG5hbWU9ImRlYWRsaW5lIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX1ZJTkhNRU9BRWVHTVpPU0pJZmEwZ2ciIG5hbWU9IndjZXQiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xdVhtQUFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8aWNvbiB4bWk6dHlwZT0idW1sOkltYWdlIiB4bWk6aWQ9Il96RzFTY0ExRUVlS1BWTnNNZ1ZMeG53IiBjb250ZW50PSItMTE5JTgwJTc4JTcxJTEzJTEwJTI2JTEwJTAlMCUwJTEzJTczJTcyJTY4JTgyJTAlMCUwJTE2JTAlMCUwJTE2JTglMiUwJTAlMCUtMTEyJS0xMTElMTA0JTU0JTAlMCUwJTI1JTExNiU2OSU4OCUxMTYlODMlMTExJTEwMiUxMTYlMTE5JTk3JTExNCUxMDElMCU2NSUxMDAlMTExJTk4JTEwMSUzMiU3MyUxMDklOTclMTAzJTEwMSU4MiUxMDElOTclMTAwJTEyMSUxMTMlLTU1JTEwMSU2MCUwJTAlMSUtMTE1JTczJTY4JTY1JTg0JTEyMCUtMzglOTglLTIwJTYxJTExNyUtMTE3JS0xMjMlLTExMSUtMTUlLTklLTY1JS0xJTEyNyUtMSUtMSUxMDMlOTYlOTYlOTYlMTAyJTEwMCUxMDAlOTglMTAwJS00JS00OSUwJTk4JTY3JTAlMzUlMyUtMjklLTY1JS0xJS0xJS0xMjclLTEyNiUtOTclMTI3JS0xJS03MSUtMTIlLTI4JTQxJTM1JTY3JS0xNSU5MiU2JTg2JTIyJTYlMzglNzAlLTEyMiUtNjUlLTElLTk2JTc0JS0yJS0zJTEwMyUtOCUtOSUtMTEzJTElMjclLTgwJTk4JTEyMiUtNTglMiUtOTQlMTI3JS0xJTk3JTMyJTE0JTYwJTYxJTEyMyUtMTI2JTUlOTMlNzYlODklMTE0JS0xMjYlLTg3JS04NiUtMTAyJTE2JTE1JS0xMTIlMTIxJS0yMSUtMzUlLTEwNSUtMTI2JS00NSUtNzMlMjUlLTE4JTYyJS0xMjElNzUlMTI2JS03JS0xNCUyNSU3MyUzJTM5JS0zNyU0JTEyNyUtMTE3JTEyNCUxOSUyMSUtNzIlLTEyOCUtODklMTglNjclLTEwMCUtNzQlLTM2JS05NCUtODUlLTExMyUxMCU1NCUtOTglOTYlLTglLTIlMTElNDAlLTE0JS0xMTclLTExOSUtMTIzJTklNDYlLTExNSUtOTAlMjYlMiUtMTI0JS02JTU1JS0xOCUxMjYlLTIlMjIlNDAlNSUtMzElNTAlLTE1JS0xNiUtNzglLTY0JTkzJS0xMjYlLTg0JS02JS0xMiUtNzclMTE5JTY0JS0xNCUtNDAlLTc3JTExOSU1OCU0MiUxOCUtMTE3JTkzJTEyJTUlNTclLTM5JTMyJTExMCUtNSUtNTMlLTU4JTE0JS00MyUwJTExNiU1NSU5MiUtNzUlLTE4JS04NiUtNjElODclLTE4JS02OCUtMTI4JTU2JS0xNCUxMjclLTk1JTYzJTkyJTY1JS02MyUtMzUlLTI1JS01MiUxMjclLTIlNjYlLTk5JTQlLTE1JTM3JS02MCUxMDglLTk2JS0yMiU1OSUtMTAzJS05OCUtMTclLTEyOCU3NCUtNjUlLTElLTM4JTEyNiUtMTclNSUtNzglLTEyNiUtOTclLTY0JTglLTYzJTIxJS0xMjYlLTE3JTEyNiUtNCUtNjIlMjAlMTAwJTEwMyUxMDAlLTEyNCU1OCU5JTI0JS0xMjYlLTY0JTQ4JTElMiU4MyU0MSUzMyUtOTYlNzUlODQlLTkwJTExMSU3JS03OCUtMTI3JTMwJS0xNiU4NCUtMTEwJS0xMjglNDMlMCUtMTEwJTMxJTEyNyUtMSUtMTIyJTEwNiUwJS02JTklLTI0JS0yMyUtOSUtMzMlMTI3JTklLTgzJTYwJTUwJS02MyU4NiUtMzclNzQlNzQlLTI0JS01MSUtMTEzJTk1JTExMiUtNDMlMTYlNSUzMiUtMTE4JS0xMTclNyUyMiU3NCUxMTklLTk3JTQ3JS02NyUtNiUxMTIlNTclLTQ4JS01OSUtMzMlMTI3JTk4JTYlLTE4JS02MCU1MSUxMTklLTk2JS00NyUtNTclLTU4JS0xMTglLTE2JTY3JS01MiUtMTE4JS02MSUtMTExJTc0JTE4JS0xNyUxOCUtMTAwJTQ5JTg1JS0xMjUlMzQlMTQlMTIlNCUyNCUyNSUtMTEyJTk4JS02JS01JS04MSUtMTA0JS03JTEyMyUtMTUlMzklMTMlLTkwJS0zMyUtNjUlNDglLTQ2JS00NiUtMzUlLTI1JTUlNzIlNDIlLTQ4JS02NCUtMjUlMTI3JS0xJTElMiUxMiUwJS0yMCUtNDYlLTg1JTcyJS0xMDIlLTQ4JS01NyUtMzQlMCUwJTAlMCU3MyU2OSU3OCU2OCUtODIlNjYlOTYlLTEyNiUiIGZvcm1hdD0iUGFweXJ1cyIgbG9jYXRpb249InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzE4X3NvZnR3YXJlLnBuZyI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfenk4S2dBMUVFZUtQVk5zTWdWTHhudyIgc291cmNlPSJpbWFnZV9wYXB5cnVzIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il96ekY3Z0ExRUVlS1BWTnNNZ1ZMeG53IiBrZXk9ImltYWdlX2tpbmRfa2V5IiB2YWx1ZT0iaWNvbiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9pY29uPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIHhtaTppZD0iXzF0ZE4wR0JCRWVDVVFmM3ZwQUc2SkEiIG5hbWU9IlBvcnQiIGlzQWJzdHJhY3Q9InRydWUiPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il83UnY4MEdCQkVlQ1VRZjN2cEFHNkpBIiBuYW1lPSJiYXNlX1BvcnQiIGFzc29jaWF0aW9uPSJfN1J2ODBXQkJFZUNVUWYzdnBBRzZKQSI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvVU1MLm1ldGFtb2RlbC51bWwjUG9ydCIvPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX1JfcWZNR0JDRWVDVVFmM3ZwQUc2SkEiIG5hbWU9InN5bmNocm9uaXphdGlvblBvbGljeSIgdmlzaWJpbGl0eT0icHVibGljIiB0eXBlPSJfSi1uWjRHQkNFZUNVUWYzdnBBRzZKQSI+CisgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9VX3ZsQUdCQ0VlQ1VRZjN2cEFHNkpBIiB2YWx1ZT0iMSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfVkFNUThHQkNFZUNVUWYzdnBBRzZKQSIgdmFsdWU9IjEiLz4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkV4dGVuc2lvbiIgeG1pOmlkPSJfN1J2ODBXQkJFZUNVUWYzdnBBRzZKQSIgbmFtZT0iRV9Qb3J0X1BvcnQwIiBtZW1iZXJFbmQ9Il83UnY4MG1CQkVlQ1VRZjN2cEFHNkpBIF83UnY4MEdCQkVlQ1VRZjN2cEFHNkpBIj4KKyAgICA8b3duZWRFbmQgeG1pOnR5cGU9InVtbDpFeHRlbnNpb25FbmQiIHhtaTppZD0iXzdSdjgwbUJCRWVDVVFmM3ZwQUc2SkEiIG5hbWU9ImV4dGVuc2lvbl9Qb3J0IiB0eXBlPSJfMXRkTjBHQkJFZUNVUWYzdnBBRzZKQSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIgYXNzb2NpYXRpb249Il83UnY4MFdCQkVlQ1VRZjN2cEFHNkpBIi8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb24iIHhtaTppZD0iX0otblo0R0JDRWVDVVFmM3ZwQUc2SkEiIG5hbWU9IlN5bmNocm9uaXphdGlvbktpbmQiPgorICAgIDxvd25lZExpdGVyYWwgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIHhtaTppZD0iX091NVNBR0JDRWVDVVFmM3ZwQUc2SkEiIG5hbWU9IlNZTkNIIi8+CisgICAgPG93bmVkTGl0ZXJhbCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgeG1pOmlkPSJfUGtfTWdHQkNFZUNVUWYzdnBBRzZKQSIgbmFtZT0iQVNZTkNIIi8+CisgICAgPG93bmVkTGl0ZXJhbCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgeG1pOmlkPSJfOU9oOUlHQkNFZUNVUWYzdnBBRzZKQSIgbmFtZT0idW5kZWZpbmVkIi8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfeTNRVElQLXFFZUNQSzRZbk1SaDZBdyIgbmFtZT0iRW5naW5lU3lzdGVtIj4KKyAgICA8b3duZWRDb21tZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgeG1pOmlkPSJfTk5DSElDbXBFZU9Od0xrLTlaTHFEQSIgYW5ub3RhdGVkRWxlbWVudD0iX3kzUVRJUC1xRWVDUEs0WW5NUmg2QXciPgorICAgICAgPGJvZHk+VGhpcyBpcyB0aGUgbW90b3JpemF0aW9uIHN5c3RlbSBmb2N1c2VkIGluIHRoZSBlbmdpbmUgb2YgYSByb2JvdGljIHZlaGljbGUuPC9ib2R5PgorICAgIDwvb3duZWRDb21tZW50PgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il84Z00wTUJ0U0VlR1pCcVFMSzJ0UFJBIiBnZW5lcmFsPSJfSGxWeWdGN2JFZUNHaExUakVEa3hmZyIvPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9LSUt2b0J0Y0VlR1pCcVFMSzJ0UFJBIiBuYW1lPSJ2ZWhpY2xlVHJhY3Rpb24iPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vVU1MX0xJQlJBUklFUy9VTUxQcmltaXRpdmVUeXBlcy5saWJyYXJ5LnVtbCNTdHJpbmciLz4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9POTlaNEJ0Y0VlR1pCcVFMSzJ0UFJBIiBuYW1lPSJtYXhFbmdpbmVGb3JjZSIgdmlzaWJpbGl0eT0icHVibGljIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfUFAxMEVCdGNFZUdaQnFRTEsydFBSQSIgdmFsdWU9IjEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX1BRSXZBQnRjRWVHWkJxUUxLMnRQUkEiIHZhbHVlPSIxIi8+CisgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfUFE0VjRCdGNFZUdaQnFRTEsydFBSQSI+CisgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9UVUEwSUJ0Y0VlR1pCcVFMSzJ0UFJBIiBuYW1lPSJtYXhCcmVha2luZ0ZvcmNlIiB2aXNpYmlsaXR5PSJwdWJsaWMiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xdVhtQUFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il96WXlfUUJ0Y0VlR1pCcVFMSzJ0UFJBIiB2YWx1ZT0iMSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfelpHaFFCdGNFZUdaQnFRTEsydFBSQSIgdmFsdWU9IjEiLz4KKyAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il96WjJJSUJ0Y0VlR1pCcVFMSzJ0UFJBIj4KKyAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX1EzSXNrQnRkRWVHWkJxUUxLMnRQUkEiIG5hbWU9Im1heEFsbG93ZWRTdGVlcmluZyIgdmlzaWJpbGl0eT0icHVibGljIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfU0ZPUVVCdGRFZUdaQnFRTEsydFBSQSIgdmFsdWU9IjEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX1NGaExRQnRkRWVHWkJxUUxLMnRQUkEiIHZhbHVlPSIxIi8+CisgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfU0dReUlCdGRFZUdaQnFRTEsydFBSQSI+CisgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9VQUFpQUJ0ZEVlR1pCcVFMSzJ0UFJBIiBuYW1lPSJtYXhBbGxvd2VkVmVsb2NpdHkiIHZpc2liaWxpdHk9InB1YmxpYyI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3F1WG1BQUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX1ZSOVNFQnRkRWVHWkJxUUxLMnRQUkEiIHZhbHVlPSIxIi8+CisgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9WU1EwRUJ0ZEVlR1pCcVFMSzJ0UFJBIiB2YWx1ZT0iMSIvPgorICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX1ZTdGdBQnRkRWVHWkJxUUxLMnRQUkEiPgorICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfZS1CZUlFTnlFZUdNWk9TSklmYTBnZyIgbmFtZT0iZ2Vhcl9yYXRpb24iPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xdVhtQUFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8aWNvbiB4bWk6dHlwZT0idW1sOkltYWdlIiB4bWk6aWQ9Il9vaWlQb0EtUUVlR1JXY3JmLUt4Ykt3IiBjb250ZW50PSItMTE5JTgwJTc4JTcxJTEzJTEwJTI2JTEwJTAlMCUwJTEzJTczJTcyJTY4JTgyJTAlMCUwJTE2JTAlMCUwJTE2JTglMiUwJTAlMCUtMTEyJS0xMTElMTA0JTU0JTAlMCUwJTI1JTExNiU2OSU4OCUxMTYlODMlMTExJTEwMiUxMTYlMTE5JTk3JTExNCUxMDElMCU2NSUxMDAlMTExJTk4JTEwMSUzMiU3MyUxMDklOTclMTAzJTEwMSU4MiUxMDElOTclMTAwJTEyMSUxMTMlLTU1JTEwMSU2MCUwJTAlMCUtMzIlNzMlNjglNjUlODQlMTIwJS0zOCUtMTA4JS0xMTElNDklMTQlMSU2NSUyMCUtMTIyJS0xJTU1JS00MiUxMCUtMTExJS00OCUtODYlLTM1JS02MiUxNyU5MiUtMTI2JS03MiUtMTI2JTc1JS0xMjAlLTQ4JTgyJTU3JS0xMjglODYlOTclMTUlLTk2JTE3JS0xMTklLTEyNiU4MiU2NiUxMDElLTQ3JTQwJTEwMCUyMSUtMjAlLTIwJS01MiU1MSUtMTAxJS0xMDclMzclOTglLTExNyUtNyUtMTE3JTEyNyUtMzQlLTY4JS00JTk1JS0zNCU3NSUzMCUxMyU4NyU1OSUtMTIxJTcyJTEwNiU4NiUtNTIlMCUxMTQlNjglLTEyNiUtMTIwJTE3JS00MSUtMTE5JTglLTkyJS0xMDMlNzclNTElLTExMiUtNDclLTEwJS0yNCU1OSUtMzUlLTIzJTIlMTIxJTclLTEyNiUtOTYlLTEyJTU5JS05NCUyNSU5MCUtMjklLTk3JTI2JS0zMCUzNiUtMzAlODclNzAlMTIwJTc0JTY4JS0xMTglMTIzJS04MyUtNDAlLTUlMTA5JS00NSUtMjklNjUlMzklLTExJTg0JS0yJTEyMiU0MSU5NiUtOTMlLTUlNjElLTglMiUtMjIlLTc1JTc2JTQ3JS03MCU3MyUzNiUyMCUxNCUtOTUlNTklNzMlNjIlNjMlLTQ1JS02NSU2OSU5OSUxNSUtNSUtNzclNDElNDIlLTEwMSUtMTAzJS0zNSU3NCUtNTQlNDUlLTQwJTElLTcxJTcyJS0zOSUxJTc5JTExNSUxNiU0MyUtOTYlOTYlLTUwJTEwNiU1JS0zNiUtOTIlLTc2JTMlODAlNDIlMTI3JTAlLTE3JTExMiUtNTUlLTEyJTcxJS04JTE0JS03MSUtNyUxNSUtNDglMjglLTUxJTUxJS0zNSUtNjUlMzglLTEwMyU0MiUtNjMlMTEwJTM3JTMzJTY3JS0xNSUxMjMlLTQ3JTEyNyUtOTglNDIlLTQ4JS00JTE4JTk2JTAlNjUlLTk4JTEwMSUtOSUtMzglMCUtNjklLTExNyUwJTAlMCUwJTczJTY5JTc4JTY4JS04MiU2NiU5NiUtMTI2JSIgZm9ybWF0PSJQYXB5cnVzIiBsb2NhdGlvbj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMTRfZW5naW5lX3N5c3RlbS5wbmciPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX29paVBvUS1RRWVHUldjcmYtS3hiS3ciIHNvdXJjZT0iaW1hZ2VfcGFweXJ1cyI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb2lpUG9nLVFFZUdSV2NyZi1LeGJLdyIga2V5PSJpbWFnZV9raW5kX2tleSIgdmFsdWU9Imljb24iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvaWNvbj4KKyAgICA8aWNvbiB4bWk6dHlwZT0idW1sOkltYWdlIiB4bWk6aWQ9Il9sVDBFUUViUkVlTzg5YmRQcEI4Z1RnIiBsb2NhdGlvbj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvc3ZnLzE0X2VuZ2luZV9zeXN0ZW0uc3ZnIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9sVDBFUVViUkVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9ImltYWdlX3BhcHlydXMiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2xUMEVRa2JSRWVPODliZFBwQjhnVGciIGtleT0iaW1hZ2Vfa2luZF9rZXkiIHZhbHVlPSJzaGFwZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9pY29uPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIHhtaTppZD0iX3oxUGxZUC1xRWVDUEs0WW5NUmg2QXciIG5hbWU9IlN0ZWVyZWRXaGVlbFN5c3RlbSI+CisgICAgPGdlbmVyYWxpemF0aW9uIHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIHhtaTppZD0iX3l0M0VNQ21wRWVPTndMay05WkxxREEiIGdlbmVyYWw9Il9sUlBIQUNtcEVlT053TGstOVpMcURBIi8+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX3FidGNrQUNPRWVHWEpPSnRXS244alEiIG5hbWU9IndoZWVsUmFkaXVzIiB2aXNpYmlsaXR5PSJwdWJsaWMiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xdVhtQUFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il91UFdHUUFDT0VlR1hKT0p0V0tuOGpRIiB2YWx1ZT0iMSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfdVBmM1FBQ09FZUdYSk9KdFdLbjhqUSIgdmFsdWU9IjEiLz4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il80ZDdJTUFDUUVlR1hKT0p0V0tuOGpRIiBuYW1lPSJ3aGVlbFdpZHRoIiB2aXNpYmlsaXR5PSJwdWJsaWMiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xdVhtQUFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il8tQjZWTUFDUUVlR1hKT0p0V0tuOGpRIiB2YWx1ZT0iMSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfLUNFR01BQ1FFZUdYSk9KdFdLbjhqUSIgdmFsdWU9IjEiLz4KKyAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il8tQ2d5SUFDUUVlR1hKT0p0V0tuOGpRIj4KKyAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iXy1ndzBZQUNRRWVHWEpPSnRXS244alEiIG5hbWU9InN1c3BlbnNpb25SZXN0TGVuZ3RoIiB2aXNpYmlsaXR5PSJwdWJsaWMiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xdVhtQUFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9Dck1OY0FDUkVlR1hKT0p0V0tuOGpRIiB2YWx1ZT0iMSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfQ3JWLWNBQ1JFZUdYSk9KdFdLbjhqUSIgdmFsdWU9IjEiLz4KKyAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9DcnlxWUFDUkVlR1hKT0p0V0tuOGpRIj4KKyAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX0QtQzhjQUNSRWVHWEpPSnRXS244alEiIG5hbWU9IndoZWVsQ29ubmVjdGlvbkhlaWdodCIgdmlzaWJpbGl0eT0icHVibGljIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfR19BekVBQ1JFZUdYSk9KdFdLbjhqUSIgdmFsdWU9IjEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0dfS2tFQUNSRWVHWEpPSnRXS244alEiIHZhbHVlPSIxIi8+CisgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfR19uUUFBQ1JFZUdYSk9KdFdLbjhqUSI+CisgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9IYWJqd0FDUkVlR1hKT0p0V0tuOGpRIiBuYW1lPSJ0eXBlT2ZXaGVlbCIgdmlzaWJpbGl0eT0icHVibGljIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcWFTMm9BSC1FZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfSzd2dVlBQ1JFZUdYSk9KdFdLbjhqUSIgdmFsdWU9IjEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0s3NDRVQUNSRWVHWEpPSnRXS244alEiIHZhbHVlPSIxIi8+CisgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfSzhWa1FBQ1JFZUdYSk9KdFdLbjhqUSI+CisgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9NakFuSUFDUkVlR1hKT0p0V0tuOGpRIiBuYW1lPSJ3aGVlbFZlbG9jaXR5UElEa3AiIHZpc2liaWxpdHk9InB1YmxpYyI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3F1WG1BQUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX1FCb3FJQUNSRWVHWEpPSnRXS244alEiIHZhbHVlPSIxIi8+CisgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9RQ1lSQUFDUkVlR1hKT0p0V0tuOGpRIiB2YWx1ZT0iMSIvPgorICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX1FDMDg4QUNSRWVHWEpPSnRXS244alEiPgorICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfUW5DZFFBQ1JFZUdYSk9KdFdLbjhqUSIgbmFtZT0id2hlZWxWZWxvY2l0eVBJRGtpIiB2aXNpYmlsaXR5PSJwdWJsaWMiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xdVhtQUFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9TajV5a0FDUkVlR1hKT0p0V0tuOGpRIiB2YWx1ZT0iMSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfU2tEamtBQ1JFZUdYSk9KdFdLbjhqUSIgdmFsdWU9IjEiLz4KKyAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9Ta2dQZ0FDUkVlR1hKT0p0V0tuOGpRIj4KKyAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX1RMX3RVQUNSRWVHWEpPSnRXS244alEiIG5hbWU9IndoZWVsVmVsb2NpdHlQSURrZCIgdmlzaWJpbGl0eT0icHVibGljIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfVm5qdzBBQ1JFZUdYSk9KdFdLbjhqUSIgdmFsdWU9IjEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX1ZudGgwQUNSRWVHWEpPSnRXS244alEiIHZhbHVlPSIxIi8+CisgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfVm9BY3dBQ1JFZUdYSk9KdFdLbjhqUSI+CisgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9qV2I3b0FDUkVlR1hKT0p0V0tuOGpRIiBuYW1lPSJ3aGVlbFN0ZWVyaW5nUElEa3AiIHZpc2liaWxpdHk9InB1YmxpYyI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3F1WG1BQUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX25KbjVZQUNSRWVHWEpPSnRXS244alEiIHZhbHVlPSIxIi8+CisgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9uSnhxWUFDUkVlR1hKT0p0V0tuOGpRIiB2YWx1ZT0iMSIvPgorICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX25LT1dVQUNSRWVHWEpPSnRXS244alEiPgorICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfb3FvWklBQ1JFZUdYSk9KdFdLbjhqUSIgbmFtZT0id2hlZWxTdGVlcmluZ1BJRGtkIiB2aXNpYmlsaXR5PSJwdWJsaWMiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xdVhtQUFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9zd1RPQUFDUkVlR1hKT0p0V0tuOGpRIiB2YWx1ZT0iMSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfc3djWDhBQ1JFZUdYSk9KdFdLbjhqUSIgdmFsdWU9IjEiLz4KKyAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9zd3Y1OEFDUkVlR1hKT0p0V0tuOGpRIj4KKyAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2ZzVW9FQUNXRWVHWEpPSnRXS244alEiIG5hbWU9IndoZWVsRnJpY3Rpb24iIHZpc2liaWxpdHk9InB1YmxpYyI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3F1WG1BQUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2g3WWdvQUNXRWVHWEpPSnRXS244alEiIHZhbHVlPSIxIi8+CisgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9oN2hxa0FDV0VlR1hKT0p0V0tuOGpRIiB2YWx1ZT0iMSIvPgorICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2g3MGxnQUNXRWVHWEpPSnRXS244alEiPgorICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfalQ1THNBQ1dFZUdYSk9KdFdLbjhqUSIgbmFtZT0ic3VzcGVuc2lvblN0aWZmbmVzcyIgdmlzaWJpbGl0eT0icHVibGljIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfbUpQb01BQ1dFZUdYSk9KdFdLbjhqUSIgdmFsdWU9IjEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX21KWXlJQUNXRWVHWEpPSnRXS244alEiIHZhbHVlPSIxIi8+CisgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfbUpzVUlBQ1dFZUdYSk9KdFdLbjhqUSI+CisgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9tOUdIQUFDV0VlR1hKT0p0V0tuOGpRIiBuYW1lPSJzdXNwZW5zaW9uRGFtcGluZyIgdmlzaWJpbGl0eT0icHVibGljIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfcFMyZGNBQ1dFZUdYSk9KdFdLbjhqUSIgdmFsdWU9IjEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX3BTMmRjUUNXRWVHWEpPSnRXS244alEiIHZhbHVlPSIxIi8+CisgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfcFRUSllBQ1dFZUdYSk9KdFdLbjhqUSI+CisgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9yVnIzNEFDV0VlR1hKT0p0V0tuOGpRIiBuYW1lPSJzdXNwZW5zaW9uQ29tcHJlc3Npb24iIHZpc2liaWxpdHk9InB1YmxpYyI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3F1WG1BQUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3QxdXl3QUNXRWVHWEpPSnRXS244alEiIHZhbHVlPSIxIi8+CisgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il90MTM4c0FDV0VlR1hKT0p0V0tuOGpRIiB2YWx1ZT0iMSIvPgorICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX3QyZVpvQUNXRWVHWEpPSnRXS244alEiPgorICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfUE9aX3dCdFRFZUdaQnFRTEsydFBSQSIgbmFtZT0id2hlZWxWZWxvY2l0eVBJRG1heFN1bSI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3F1WG1BQUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9WeW42c0J0VEVlR1pCcVFMSzJ0UFJBIiBuYW1lPSJ3aGVlbFZlbG9jaXR5UElEbWF4VmFsIiB2aXNpYmlsaXR5PSJwdWJsaWMiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xdVhtQUFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9XZkxlc0J0VEVlR1pCcVFMSzJ0UFJBIiB2YWx1ZT0iMSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfV2ZlWm9CdFRFZUdaQnFRTEsydFBSQSIgdmFsdWU9IjEiLz4KKyAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9XZ0Uya0J0VEVlR1pCcVFMSzJ0UFJBIj4KKyAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPGljb24geG1pOnR5cGU9InVtbDpJbWFnZSIgeG1pOmlkPSJfaXFTQzBBLVFFZUdSV2NyZi1LeGJLdyIgY29udGVudD0iLTExOSU4MCU3OCU3MSUxMyUxMCUyNiUxMCUwJTAlMCUxMyU3MyU3MiU2OCU4MiUwJTAlMCUxNiUwJTAlMCUxNiU4JTIlMCUwJTAlLTExMiUtMTExJTEwNCU1NCUwJTAlMCUyNSUxMTYlNjklODglMTE2JTgzJTExMSUxMDIlMTE2JTExOSU5NyUxMTQlMTAxJTAlNjUlMTAwJTExMSU5OCUxMDElMzIlNzMlMTA5JTk3JTEwMyUxMDElODIlMTAxJTk3JTEwMCUxMjElMTEzJS01NSUxMDElNjAlMCUwJTElLTE4JTczJTY4JTY1JTg0JTEyMCUtMzglLTExNiU4MiUtNDklNzUlMjclODElMTYlLTk4JS03MyUxMTAlNTQlLTgyJTM2JS0zMiUtODIlMjIlLTEyNiU2NiUyJS05MCUxMjIlLTExOSUyMyUxMjclOTYlMzclMzklMjElMjAlNCUtODMlLTk4JTYwJS0xMTglNyU0MSUtNjclLTg3JTglODIlMTAlLTk1JTg3JTIxJTY4JS02NyUtMTE5JS00MCUtMTE3JS04JTclNTIlNDAlLTEyMCUxMjIlLTQ1JS0xMTclNjMlMTclLTkxJS0xMTglLTglNDMlNDAlLTExNSUyMCUtODYlNDMlLTExMCU2NCU1MiUtMTAxJS0yMCUtMjElLTczJTEyMSUtODUlNjglLTE2JS0zMiUtODAlLTIwJS01MCUxMjQlLTE3JS0xMDElNTUlNTElLTMzJTQ0JS0xMDElLTQwJTYyJS0xMDclMjUlNTElNDUlLTk4JS0yNyUtMTAwJS0xMjAlMTAlMjQlLTEwOSUyNCUtMjklMTAwJS01JS02MiUyNCU0OSUtMTE3JTExNSUtMTI4JTklNTElMTE1JS04JTM5JS01MCUxMDQlLTglMzklLTcxJTEwMCUtMTEwJTI0JTEwMSU0NSUtMTIxJTk4JTExMyUtNzglNDQlMTIyJS01MyUtNjIlLTQ2JS0xMTUlMTA4JTEyNyUtNTElMTIlLTY3JS00OSUtMzAlMTIzJS0xMDElLTE0JTQzJTY0JTg1JS05MCUtNzAlMjYlMTIzJTY3JTEyNiU3NyU4NSUxNiUtMzUlLTg5JS00NiUtMTMlNzElLTQxJS0xMjUlLTg1JS01JTEwMCUzNiUtNjAlMTIxJTUwJS0xMDMlLTU2JTc1JTQwJTQ3JTQ5JS02NiUtNzQlLTEyNSUxMjIlMTEzJS05NyU0JTE1JTY0JTcxJS00OCU1NSU4MCUtMSUxNyUtNyUtNiUtNTIlNTAlLTU5JS0xNyUtMTI4JS05MiUzNyU4OSUxMTQlLTQwJS03MCU4NyUtODAlNTklMjIlLTczJS03MCUtNDElLTEwJTc1JTg1JTg3JS0xMDclLTE4JS0xMjclLTEyNSUxNiUzMiUtMTE0JTQwJTg3JTgzJS0xNCUxMjAlLTk5JS0xMjQlLTg3JS03NCUyNiUtNjMlLTIlODElODclMjUlLTQyJS02OCU4NSUtMTAyJS03MyUtNzYlODAlLTEyNyUtMTI1JTgwJS0yOCUtOTYlODUlLTQ4JS03OCUtMTE4JS0zNyU3MyU2NCU5MyUxMTYlMTE0JS0xMDclNzQlLTMzJTYyJS05MCUxMDMlMTI3JTk1JTklMTEyJTU0JTExMCUtMjQlLTg2JTIlMTYlNzElMzIlLTQwJS05NCUxMDMlLTc4JS01MCUxMiUtNzIlMyUxMjUlLTExMyUtNDElODclLTc0JTg3JS04JS04JTgwJS0xMDUlMCUxMjElOTUlMTElLTM0JS0zMyU2NiUtMiUtOTElLTExNyUtNjUlMjQlNiUtMiUxOSUyMiUtMTEwJTQ3JS0xMTAlLTExMSUxMjIlOTglLTEwOSUtNDclLTU2JS01OCUtNzklOCUtODklMTE5JS00OSU4OSUxMDAlNjUlODclLTM1JTQ3JTQlNTUlOTklNzglNSU0MCU4JTc3JTQ4JS0yNyUtMTA1JS0yMiU2NCU5NSUtNzUlMTI3JS0yNSUtNTglMTYlNDIlLTM1JS03NCUtNDMlLTExNCUtMjAlLTk4JS0zJTEwNiUtODMlMSUxJS01NiUtMTI1JTEwNSU1OCUyMSUtNDglNzklODAlLTEzJTQlODQlLTkxJTYzJS0yOCUtMTIxJS00NSUxNiUtMzUlLTYyJTMlLTI1JTExNSUtNDglNyUxNiUtMTE0JTE2JS0xMDIlLTExOCU2MCUtNzElOTUlMzUlLTczJTUwJS0yOSUxMjMlLTExMyUxNiUxMCU4MyU5OCUyNCUtNzYlNTUlMTIyJTExNiUxMyUtMTAlODIlLTI1JTM5JTkyJS04MSU3OSU3MCUtMTklLTExJTkzJS04MiU2MyUzOSUtNjglOTQlMjglLTkwJTIwJTQ1JS0zMSUxMTAlLTEwMSUtMyUtNjglLTcyJS0zMCUtNDAlMTIyJTElLTEyMyUyOSU3NyU0MCUtMTExJTI2JTU5JS0xMjAlMTA1JS04NiUtNjklLTc5JTc2JTExMSUxMCUxMjQlLTY0JS0xMDElNjUlLTM5JS0xMjUlODglLTEzJS0zNiUxMCUyNSU3MyU2NSU0MSUtNiUxMTklLTEwNiU4NyUtMzElMjklLTI2JTU4JTg5JS01JTQ3JS02NCUwJTU1JS03JS00NCUxMTQlLTEwOCUtNzIlNzglLTUyJTAlMCUwJTAlNzMlNjklNzglNjglLTgyJTY2JTk2JS0xMjYlIiBmb3JtYXQ9IlBhcHlydXMiIGxvY2F0aW9uPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8xNV93aGVlbF9zeXN0ZW0ucG5nIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9pcVNDMFEtUUVlR1JXY3JmLUt4Ykt3IiBzb3VyY2U9ImltYWdlX3BhcHlydXMiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2lxU0MwZy1RRWVHUldjcmYtS3hiS3ciIGtleT0iaW1hZ2Vfa2luZF9rZXkiIHZhbHVlPSJpY29uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2ljb24+CisgICAgPGljb24geG1pOnR5cGU9InVtbDpJbWFnZSIgeG1pOmlkPSJfcVFLcGdFYlJFZU84OWJkUHBCOGdUZyIgbG9jYXRpb249InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zL3N2Zy8xNV93aGVlbF9zeXN0ZW0uc3ZnIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9xUUtwZ1ViUkVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9ImltYWdlX3BhcHlydXMiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3FRS3Bna2JSRWVPODliZFBwQjhnVGciIGtleT0iaW1hZ2Vfa2luZF9rZXkiIHZhbHVlPSJzaGFwZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9pY29uPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIHhtaTppZD0iX1plUXc0QUIyRWVHWEpPSnRXS244alEiIG5hbWU9IkltYWdlU2Vuc29yU3lzdGVtIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfYkl6bklBQjJFZUdYSk9KdFdLbjhqUSIgZ2VuZXJhbD0iX0tUc1BJRjdiRWVDR2hMVGpFRGt4ZmciLz4KKyAgICA8aWNvbiB4bWk6dHlwZT0idW1sOkltYWdlIiB4bWk6aWQ9Il96bzRSOEEtUUVlR1JXY3JmLUt4Ykt3IiBjb250ZW50PSItMTE5JTgwJTc4JTcxJTEzJTEwJTI2JTEwJTAlMCUwJTEzJTczJTcyJTY4JTgyJTAlMCUwJTE2JTAlMCUwJTE2JTglMiUwJTAlMCUtMTEyJS0xMTElMTA0JTU0JTAlMCUwJTI1JTExNiU2OSU4OCUxMTYlODMlMTExJTEwMiUxMTYlMTE5JTk3JTExNCUxMDElMCU2NSUxMDAlMTExJTk4JTEwMSUzMiU3MyUxMDklOTclMTAzJTEwMSU4MiUxMDElOTclMTAwJTEyMSUxMTMlLTU1JTEwMSU2MCUwJTAlMSU5OCU3MyU2OCU2NSU4NCUxMjAlLTM4JTk4JS0yMCU2MSUxMTclLTExNyUtMTIzJS0xMTElLTE1JS05JS02NSUtMSUxMjclLTElLTElMTAzJTk2JTk2JTk2JTEwMiUxMDAlMTAwJTk4JTEwMCUtNCUtNDklMCU5OCU2NyUwJTM1JTMlLTI5JS02NSUtMSUtMSUtMTI3JS0xMjYlLTk3JTEyNyUtMSUtNzElLTEyJS0yOCU0MSU3NSUtMTUlLTU0JS02MSUxMiUtODQlNDQlMTIlNzYlLTExNiUxMiUxMjclLTElNjUlLTEwNyUtNCUtNSUtNDklLTE2JS0xNyUzMSUzJTU0JTk2JS01OSUtMTIlLTExNiU1JTY4JS0xJS0yJS02MSU2NCUyOCUxMjAlMTIyJS0xMCU0JTExJS0xMjQlLTkxJTk5JS05MCUtMzglMTAxJS05NCUxMCUxMDAlMTIwJTc3JS0zNyUtMTIyJTcxJS02MSUtMTA1JTQ3JS05NyUyNSUyNCUtMTE4JS0yNSUtMiUzOSUxNCUwJTg1JS0xNCU5MCU1NiU0OSU2NSUtNzYlLTM0JTEyNSUtMSUzNyUxMjUlLTklLTEyMyUtMTE5JTEwMyUtMTglLTY0JTEzJTMlLTc4JTI1JS04OSUxMTElNyUxMCUtNjYlLTElLTIlMTElNDYlLTU2JS02MCUtNjElMTElLTQzJTMyJS02MCUtNjMlMjIlLTk2JTQ0JTk3JTM3JTM3JTQlLTMxJS0yMiUtODIlNTglOTIlMTEyJS0yNyUtNDclNTQlMTE5JTY3JS0xMTIlLTQ0JS0xMTYlLTE5JTExMiUxMyUxMjclLTM5JS00MCUtOTUlMTI2JTE2JS0yOCUxMDAlLTEzJTg0JS0xMTAlLTEyOCUtODAlNzklNjMlMTIzJTExOSUtMjclLTIzJS02OSUtMSUtMTIzJS0yJTY0JTU0JTgwJS0xNiUtNDAlLTUlLTQ5JTY0JS0zNyUtMTQlNzclODQlNjQlLTEyNyUtMiUtMjUlNDclMTklLTkwJS00OSUtMzQlLTQlLTglLTU5JS02NCUtNjMlLTEyMiU4JTc0JTY1JS0zNCUxMDclLTE3JS02NSU2NCUtNDAlNjMlLTEyNyUxNyUtMTI2JS04NyUtNjMlNjYlODIlLTEyMCUtMzElLTMlMjMlLTk2JTYxJTY0JTU0JS00OCUzJS03NyUtODIlNjAlNDQlMyUyNyUxNSU0JS0yMCUtMTE2JS0xMTYlNDQlLTEwNCUyNiUtMTI4JS01MCU1OSUtMTA3JS0zMiUxMDglNTQlMTI1JTI3JS0xMjUlLTEwOCU0OCU4MCUtMjUlNCU1NSU2NyUxMDElNjUlMzAlLTEyMCUtNDQlLTU3JS0zMyUtNjUlODklLTgwJS0xMjIlLTczJS04NyUtMTA4JS00OCUtMSUtMjYlLTEwNCUtMTklLTklOTQlMCUxMDklMyUtMjIlNzElNzIlMTEyJS0xNSUtMTI4JTUyJTAlMzclMTEyJS01OSUtNDQlLTExOSUtMjUlLTE3JTgwJS04JTEwOCUtODQlNDQlNCU5OSUyMyUyNSU4JTQ4JTUwJTQ4JTQ5JS0xMTIlMiUtMTA0JTEyNiUtMSUzNCU3NyUtNjElLTI1JTEyNyUtMSUxJTIlMTIlMCUyMCUtOTIlLTkxJS0xMjclLTUzJS05OCUtNTAlLTYxJTAlMCUwJTAlNzMlNjklNzglNjglLTgyJTY2JTk2JS0xMjYlIiBmb3JtYXQ9IlBhcHlydXMiIGxvY2F0aW9uPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8yMF9pbWFnZV9zZW5zb3Jfc3lzdGVtLnBuZyI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfem80UjhRLVFFZUdSV2NyZi1LeGJLdyIgc291cmNlPSJpbWFnZV9wYXB5cnVzIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il96bzRSOGctUUVlR1JXY3JmLUt4Ykt3IiBrZXk9ImltYWdlX2tpbmRfa2V5IiB2YWx1ZT0iaWNvbiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9pY29uPgorICAgIDxpY29uIHhtaTp0eXBlPSJ1bWw6SW1hZ2UiIHhtaTppZD0iXzRjQ1NVRWJSRWVPODliZFBwQjhnVGciIGxvY2F0aW9uPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy9zdmcvMjBfaW1hZ2Vfc2Vuc29yX3N5c3RlbS5zdmciPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzRjQ1NVVWJSRWVPODliZFBwQjhnVGciIHNvdXJjZT0iaW1hZ2VfcGFweXJ1cyI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfNGNDU1VrYlJFZU84OWJkUHBCOGdUZyIga2V5PSJpbWFnZV9raW5kX2tleSIgdmFsdWU9InNoYXBlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2ljb24+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfZmVhOGdBQjJFZUdYSk9KdFdLbjhqUSIgbmFtZT0iQ2FtZXJhU3lzdGVtIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfZ3cwX2tBQjJFZUdYSk9KdFdLbjhqUSIgZ2VuZXJhbD0iX1plUXc0QUIyRWVHWEpPSnRXS244alEiLz4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfc0Rwc3dBQjRFZUdYSk9KdFdLbjhqUSIgbmFtZT0id2lkdGgiIHZpc2liaWxpdHk9InB1YmxpYyI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX25DT3VvQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3ZPd1cwQUI0RWVHWEpPSnRXS244alEiIHZhbHVlPSIxIi8+CisgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il92T3dXMFFCNEVlR1hKT0p0V0tuOGpRIiB2YWx1ZT0iMSIvPgorICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9WVEpva0F0OUVlR0cwZHZtUm41eTdRIiBuYW1lPSIiLz4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il94T0E0MEFCNEVlR1hKT0p0V0tuOGpRIiBuYW1lPSJoZWlnaHQiIHZpc2liaWxpdHk9InB1YmxpYyI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX25DT3VvQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzJ4MlUwQUI0RWVHWEpPSnRXS244alEiIHZhbHVlPSIxIi8+CisgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il8yeUoyMEFCNEVlR1hKT0p0V0tuOGpRIiB2YWx1ZT0iMSIvPgorICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iXzJ5bWl3QUI0RWVHWEpPSnRXS244alEiPgorICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfNEN4S0lBQjRFZUdYSk9KdFdLbjhqUSIgbmFtZT0iYWxwaGFfdSIgdmlzaWJpbGl0eT0icHVibGljIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfN05rNVFBQjRFZUdYSk9KdFdLbjhqUSIgdmFsdWU9IjEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iXzdOdURNQUI0RWVHWEpPSnRXS244alEiIHZhbHVlPSIxIi8+CisgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfN09LdklBQjRFZUdYSk9KdFdLbjhqUSI+CisgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il85Wk1jUUFCNEVlR1hKT0p0V0tuOGpRIiBuYW1lPSJhbHBoYV92IiB2aXNpYmlsaXR5PSJwdWJsaWMiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xdVhtQUFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il85OTJvZ0FCNEVlR1hKT0p0V0tuOGpRIiB2YWx1ZT0iMSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfOS1KamNBQjRFZUdYSk9KdFdLbjhqUSIgdmFsdWU9IjEiLz4KKyAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il85LWRGY0FCNEVlR1hKT0p0V0tuOGpRIj4KKyAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX0NHV3U4QUI1RWVHWEpPSnRXS244alEiIG5hbWU9InUwIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX0ZHSVN3QUI1RWVHWEpPSnRXS244alEiIG5hbWU9InYwIiB2aXNpYmlsaXR5PSJwdWJsaWMiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xdVhtQUFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9JbnZZVUFCNUVlR1hKT0p0V0tuOGpRIiB2YWx1ZT0iMSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfSW40aVFBQjVFZUdYSk9KdFdLbjhqUSIgdmFsdWU9IjEiLz4KKyAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9Jb1ZPTUFCNUVlR1hKT0p0V0tuOGpRIj4KKyAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX01XZEZ3QUI1RWVHWEpPSnRXS244alEiIG5hbWU9ImNvbG9yX2Zvcm1hdCIgdmlzaWJpbGl0eT0icHVibGljIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcWFTMm9BSC1FZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfTkVXR2dBQjVFZUdYSk9KdFdLbjhqUSIgdmFsdWU9IjEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX05FZjNnQUI1RWVHWEpPSnRXS244alEiIHZhbHVlPSIxIi8+CisgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfTkU4amNBQjVFZUdYSk9KdFdLbjhqUSI+CisgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il81aXh3WUh3TUVlS1hoYndOM1dYTzZBIiBuYW1lPSJ0cmFuc2xhdGUiIHZpc2liaWxpdHk9InB1YmxpYyI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkRhdGFUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI191VUpaNEFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il83Tm5oa0h3TUVlS1hoYndOM1dYTzZBIiB2YWx1ZT0iMSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfN053cmdId01FZUtYaGJ3TjNXWE82QSIgdmFsdWU9IjEiLz4KKyAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il83TjZjZ0h3TUVlS1hoYndOM1dYTzZBIj4KKyAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iXzBCV1NzSHdORWVLWGhid04zV1hPNkEiIG5hbWU9InJvdGF0ZSIgdmlzaWJpbGl0eT0icHVibGljIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3VVSlo0QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzFoQXVvSHdORWVLWGhid04zV1hPNkEiIHZhbHVlPSIxIi8+CisgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il8xaEF1b1h3TkVlS1hoYndOM1dYTzZBIiB2YWx1ZT0iMSIvPgorICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iXzFoS2ZvSHdORWVLWGhid04zV1hPNkEiPgorICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8aWNvbiB4bWk6dHlwZT0idW1sOkltYWdlIiB4bWk6aWQ9Il9vTmpEd0ViTUVlTzg5YmRQcEI4Z1RnIiBsb2NhdGlvbj0icGxhdGZvcm06L3Jlc291cmNlL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy9zdmcvMTBfY2FtZXJhX3N5c3RlbS5zdmciPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX29OakR3VWJNRWVPODliZFBwQjhnVGciIHNvdXJjZT0iaW1hZ2VfcGFweXJ1cyI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfb05qRHdrYk1FZU84OWJkUHBCOGdUZyIga2V5PSJpbWFnZV9raW5kX2tleSIgdmFsdWU9InNoYXBlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2ljb24+CisgICAgPGljb24geG1pOnR5cGU9InVtbDpJbWFnZSIgeG1pOmlkPSJfc1Q1dHdFYlBFZU84OWJkUHBCOGdUZyIgY29udGVudD0iLTExOSU4MCU3OCU3MSUxMyUxMCUyNiUxMCUwJTAlMCUxMyU3MyU3MiU2OCU4MiUwJTAlMCUxNiUwJTAlMCUxNiU4JTIlMCUwJTAlLTExMiUtMTExJTEwNCU1NCUwJTAlMCUyNSUxMTYlNjklODglMTE2JTgzJTExMSUxMDIlMTE2JTExOSU5NyUxMTQlMTAxJTAlNjUlMTAwJTExMSU5OCUxMDElMzIlNzMlMTA5JTk3JTEwMyUxMDElODIlMTAxJTk3JTEwMCUxMjElMTEzJS01NSUxMDElNjAlMCUwJTAlLTYlNzMlNjglNjUlODQlMTIwJS0zOCU5OCUtMjAlNjElMTE3JS0xMTclLTEyMyUtMTExJS0xNSUtOSUtNjUlLTElMTI3JS0xJS0xJTEwMyU5NiU5NiU5NiUxMDIlMTAwJTEwMCU5OCUxMDAlLTQlLTQ5JTAlOTglNjclMCUzNSUzJS0yOSUtNjUlLTElLTElLTEyNyUtMTI2JS05NyUxMjclLTElLTcxJS0xMiUtMjglNDElMzUlNjclLTE1JTkyJTYlODYlMjIlNiUzOCU3MCUtMTIyJS02NSUtMSUtOTYlNzQlLTIlLTMlMTAzJS04JS05JS0xMTMlMSUyNyUtODAlOTglMTIyJS01OCUyJS05NCUxMjclLTElOTclMzIlMTQlNjAlNjElMTIzJS0xMjYlNSUtNjIlNzQlMTE1JTU1JS02MiUtMTA4JS05OCUtNzUlLTEzJTI4JS0xMDIlLTU2JS0xMDUlNDclLTk3JS05NSUyNiUxMDIlLTcwJTI2JS0zMiUtNDQlLTY0JS01NSUtMTA2JTEwMiUtODklMyU5NyUtMSU5OCU5OCU5NyUtNjIlLTE3JTYlMjklNTElLTQzJTU5JTY5JTElMTEyJS0yOSUtMTA0JTEyMCUxMjAlODklLTE2JS04OCUtMzQlLTEwNiUtMjclLTI3JS04NyUzNiUtMTI3JTQ0JS0xNCUtMTA1JS0xMTUlMjklLTk3JTEzJTEwNCUtODYlNjUlLTEyNyUtMiUtMjUlNDclMTklMyU0MSUtMzIlLTI1JS0xJS0xJTQ0JTM2JTEwNSU5NiU3JTcwJTQzJTMwJS0yMyUtOSUtMzMlMTI3JS05NSUtMTE5JTEyNCUtNCUtMyUyNyUtOTclNiUtOTUlLTIlLTExNSU3NSUtODElNjIlNjglMTclLTMwJS0zMCUtNjMlLTIxJS0xMjElMTE5JS05NyU5OSUtMjYlLTE3JTEwMSUtMTAwJS02NiUtMyUtMTIlLTc3JTExOSU4MCUxNyU1NCU4NiUzNCUtNCUxMTIlLTklLTcxJTg5JS0zMyU2JTglODMlLTEyOCUtMTExJTElLTg2JS0xMjclLTc5JTEwMCUzMCU0OSUtOTglMTAyJS02JS0zJS0xMTclLTc2JTk2JS0zJS00JS0xNyU2MyU2NCUtMTI4JTElMCUxJTEwJTgyJS03NSU3MSUtMTIlLTEwNiUtMjElMCUwJTAlMCU3MyU2OSU3OCU2OCUtODIlNjYlOTYlLTEyNiUiIGZvcm1hdD0iUGFweXJ1cyIgbG9jYXRpb249InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzEwX2NhbWVyYV9zeXN0ZW0ucG5nIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9zVDV0d1ViUEVlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9ImltYWdlX3BhcHlydXMiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3NUNXR3a2JQRWVPODliZFBwQjhnVGciIGtleT0iaW1hZ2Vfa2luZF9rZXkiIHZhbHVlPSJpY29uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2ljb24+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfZzdibHNBQjVFZUdYSk9KdFdLbjhqUSIgbmFtZT0iT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfSXlPVWtBQjZFZUdYSk9KdFdLbjhqUSIgZ2VuZXJhbD0iX0tUc1BJRjdiRWVDR2hMVGpFRGt4ZmciLz4KKyAgICA8aWNvbiB4bWk6dHlwZT0idW1sOkltYWdlIiB4bWk6aWQ9Il8wbFlXY0EtUUVlR1JXY3JmLUt4Ykt3IiBjb250ZW50PSItMTE5JTgwJTc4JTcxJTEzJTEwJTI2JTEwJTAlMCUwJTEzJTczJTcyJTY4JTgyJTAlMCUwJTE2JTAlMCUwJTE2JTglMiUwJTAlMCUtMTEyJS0xMTElMTA0JTU0JTAlMCUwJTI1JTExNiU2OSU4OCUxMTYlODMlMTExJTEwMiUxMTYlMTE5JTk3JTExNCUxMDElMCU2NSUxMDAlMTExJTk4JTEwMSUzMiU3MyUxMDklOTclMTAzJTEwMSU4MiUxMDElOTclMTAwJTEyMSUxMTMlLTU1JTEwMSU2MCUwJTAlMSUtMjYlNzMlNjglNjUlODQlMTIwJS0zOCU5OCUtMjAlNjElMTE3JS0xMTclLTEyMyUtMTExJS0xNSUtOSUtNjUlLTElMTI3JS0xJS0xJTEwMyU5NiU5NiU5NiUxMDIlMTAwJTEwMCU5OCUxMDAlLTQlLTQ5JTAlOTglNjclMCUzNSUzJS0yOSUtNjUlLTElLTElLTEyNyUtMTI2JS05NyUxMjclLTElLTcxJS0xMiUtMjglNDElNzUlLTE1JS01NCUtNjElMTIlLTg0JTQ0JTEyJTc2JS0xMTYlMTIlMTI3JS0xJTY1JS0xMDclLTQlLTUlLTQ5JS0xNiUtMTclMzElMyU1NCU5NiUtNTklLTEyJS0xMTYlNSU3MiUtMyUxMTElLTExMyUzJS0xMTAlLTE3JS02NSUtMSUtMzglMTE4JS0xNyUxMjElLTU3JS00MyU3MSU4NyU3OCUtMzUlMTAyJS02NCUxJS05OCUtOTglNjElLTYzJTQlLTI1JTglMTE0JS03OCU2OSUxMDclLTUzJTk1JTE0JS03NyUtNjclODMlMjklLTkwJTk5JS05MCUtMTE4JTg1JS02MSUtMTA1JTQ3JS05NyU2NSUyNiUtNzQlLTMzJTEyMyUxJTY4JTExMiU4MSUxMDElNjUlMzAlLTk2JS03NCUxMDklODklOTQlMTIlLTEwMCUxMDglMTA0JTI2JTEyNiU0OSUtNzklNDglNTAlMjAlLTQ5JS0xMjMlLTEzJS0xMjclNiUxMTklLTEwMyUtODglMTIyJTQyJTczJTY0JS03MiUxMTklLTMzJTEyNyU4MSU4OSUtODAlLTEwNSUtMzElLTIzJTkxJS03MiUyJS0yJS0xMTclLTEwMSUtMTA0JTI1JS04NCUtNCUtMTI3JS0xMjIlNjklLTEwMSUtODYlMTE0JTExJS0xNSUxMTAlLTY1JS0xNCUxMDQlLTIzJS05NSUtODUlMTAzJTEyNiUtMiUtMTQlLTEwOCUxOSUtMjklMTAwJTEwMSUyMiUtMzAlMTAwJS0xMyUtMTA2JTIzJS0xMDElMTI1JS0zMSUzMCUtNjElLTk3JS02NSUxNiUxMyUtODQlLTE3JTMxJS0xMjglLTEwMCU0JTUyJTE4JS0xMjAlMTAyJS03MCUyNiUtNCUtODElMTAlLTk5JTE2JTk3JS03MyUtMTElLTQ0JTEwOSUtOTUlMjUlLTM3JS0xMjclOTclMCUtMTA4JTUwJS0xMDclMTglOTAlMTglOTclMTElLTczJS0xMjclLTclLTQ5JTk1JTM4JTcyJS04JS02NCUtMTIzJS0xNCU3NyU4NCU3OCUxMDElMTIyJTQ5JS02OCUtNSUxMiUtNDQlMyUxNyUxJS0xMjIlNCUtMTI1JS03OCUzNiUtMTI0JS0zJTE5JTI0JTMzJTY0JTc0JS04OCUxMTglOSU5OSUtMzclLTIyJS0xMiUtMzUlMjMlLTMyJS05MCUtMTI2JS0xMiU2MCUxMjUlMTElMjAlLTEyNyUtODglLTM3JS0yNiUxMTAlOCU5NyUtODAlMyUtOTMlMjElMTA2JS0xNCUtNjklLTQ5JS03NyUxMTglLTk4JTY3JTExOCU3MyUtMTAyJS02OSUxNyU4MCU0JS0yNCUxMTElLTEyMCUtMTAxJTI1JS0xMjQlMTIwJS0xMjclLTExNiUtMTEzJS02NSUxMjclLTEyNSU1MiUxMjAlLTM3JTEwNyUtNjUlMTA3JS0xMTQlMSUtMTIzJTM1JS0xMTAlNzUlNTglMTA4JS03NiUtMTI4JS0yOCUtMTI2JTQzJS0xMTMlMzIlOTIlMTExJTkzJTU3JTE2JS01OSUtNTklMyUtNDYlLTgwJS01OSUtNDElMjglMjQlMTA3JTY0JTk5JS00NiUtMjAlMTE2JS0xMjglNDYlLTEwMyUxMjAlLTI2JTE0JTM2JTMwJS0xMjclNzglMTExJS03MSUtMTQlMTYlLTk0JTMzJTE4JTE4JS00MiUxMDglLTg0JTc2JS0xMDQlLTQ3JTg5JTAlNTElNTMlNzclNjklLTExMCUtMzElLTE4JTExNSU4JTkxJS0xMjAlLTEwOSUyOSU3MiUxMCU0OCU1MCUtMTI4JS00NiUtMTEwJS0xOCUtODYlLTYxJS02NCUtOCUxMjIlLTklLTMlLTI1JS04NCU2NyU4NyU2NCUtMTEwJS0xNyU2MyU2NyUzNCUtMiUtNDAlLTUlLTQ5JS0xMTIlMTE2JTAlOTglNjMlMTI1JTclMzYlLTEwMyUxMjYlLTElNjYlLTExOSUxMDUlLTEyNiUtMTI4JS0xMSUtNTglMTEwJS0xMjglMCUzJTAlNjglMzAlLTYwJTY5JTUlLTIzJTklLTEwMyUwJTAlMCUwJTczJTY5JTc4JTY4JS04MiU2NiU5NiUtMTI2JSIgZm9ybWF0PSJQYXB5cnVzIiBsb2NhdGlvbj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMTJfb2JqZWN0X2RldGVjdGlvbl9zeXN0ZW0ucG5nIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8wbFlXY1EtUUVlR1JXY3JmLUt4Ykt3IiBzb3VyY2U9ImltYWdlX3BhcHlydXMiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzBsWVdjZy1RRWVHUldjcmYtS3hiS3ciIGtleT0iaW1hZ2Vfa2luZF9rZXkiIHZhbHVlPSJpY29uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2ljb24+CisgICAgPGljb24geG1pOnR5cGU9InVtbDpJbWFnZSIgeG1pOmlkPSJfRGRNU29FYlNFZU84OWJkUHBCOGdUZyIgbG9jYXRpb249InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zL3N2Zy8xMl9vYmplY3RfZGV0ZWN0aW9uX3N5c3RlbS5zdmciPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0RkTVNvVWJTRWVPODliZFBwQjhnVGciIHNvdXJjZT0iaW1hZ2VfcGFweXJ1cyI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfRGRNU29rYlNFZU84OWJkUHBCOGdUZyIga2V5PSJpbWFnZV9raW5kX2tleSIgdmFsdWU9InNoYXBlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2ljb24+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfS0pfWXdBQjZFZUdYSk9KdFdLbjhqUSIgbmFtZT0iT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0iPgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il9NZDltZ0FCNkVlR1hKT0p0V0tuOGpRIiBnZW5lcmFsPSJfS1RzUElGN2JFZUNHaExUakVEa3hmZyIvPgorICAgIDxpY29uIHhtaTp0eXBlPSJ1bWw6SW1hZ2UiIHhtaTppZD0iXzFUSU5RQS1RRWVHUldjcmYtS3hiS3ciIGNvbnRlbnQ9Ii0xMTklODAlNzglNzElMTMlMTAlMjYlMTAlMCUwJTAlMTMlNzMlNzIlNjglODIlMCUwJTAlMTYlMCUwJTAlMTYlOCUyJTAlMCUwJS0xMTIlLTExMSUxMDQlNTQlMCUwJTAlMjUlMTE2JTY5JTg4JTExNiU4MyUxMTElMTAyJTExNiUxMTklOTclMTE0JTEwMSUwJTY1JTEwMCUxMTElOTglMTAxJTMyJTczJTEwOSU5NyUxMDMlMTAxJTgyJTEwMSU5NyUxMDAlMTIxJTExMyUtNTUlMTAxJTYwJTAlMCUyJTQlNzMlNjglNjUlODQlMTIwJS0zOCU5OCUtMjAlNjElMTE3JS0xMTclLTEyMyUtMTExJS0xNSUtOSUtNjUlLTElMTI3JS0xJS0xJTEwMyU5NiU5NiU5NiUxMDIlMTAwJTEwMCU5OCUxMDAlLTQlLTQ5JTAlOTglNjclMCUzNSUzJS0yOSUtNjUlLTElLTElLTEyNyUtMTI2JS05NyUxMjclLTElLTcxJS0xMiUtMjglNDElNzUlLTE1JS01NCUtNjElMTIlLTg0JTQ0JTEyJTc2JS0xMTYlMTIlMTI3JS0xJTY1JS0xMDclNDAlNzQlNDglMTI0JS01JS02MyUtMTYlLTMlMjMlLTEyNSUzMiUxNSUtNjElLTc3JS03MyUzMiUtMTIyJS03OCUzNiUtNjElLTUlNDclMTIlLTE3JTYyJTkxJTQ5JTYxJTk5JTElLTg3JS04JS0zJS0xMjElMSU5JS00JTc5JTExOSUtMzMlMTI2JS0xNyUtNTklLTEyMiUtNjklNDclMTAyJS03MCUyNiUtOCUxMDglNjIlLTcxJS0xMSUtMTklLTQxJS0xJTklNzglLTE3JS02NSUtMSUxOCUtODYlOTMlLTE0JS0xMiUtMjAlOSUzOCU2JTEwOCUtNjQlNjYlODIlMTA0JS00MiUtMTA3JS0xMjElNjQlNzAlLTY3JS03OSU0MiUtNjElLTklLTk3JTY0JS01OCUyOSUtOTYlMTMlMTIlMTIlOTUlLTY2JTEyNCUxMDIlLTYzJTg0JS02NyUtMTIlLTIyJS02MSUxMDQlMTA5JTEyMSUyOSUxMDUlMzMlLTk2JTYxJS05OCU3NCUxOCUxOSU3NiU4NSUyNSUxMDclLTEwNSUtMTI4JTI4JS01OCUtNjQlLTE2JS0xMTclLTExOSU1JS0xMTclMTMlNDklLTEyMSUtODIlMSUtNTUlNjclLTY2JS0yNiU5NCUyNyU3OSUyJTkzJS0xMTAlMTExJS05NCUtMTQlLTgyJTQyJTEwOCU5MSUtMTA2JTIzJTgwJS0xMTIlLTExOSUtMTIxJTIzJS04NCUxJS0yNCUzOSUzMiUtMTI2JS0xMjUlLTY5JS00OSUtMTI3JS0xMDYlOCUxMTQlLTc4JS05OSUxMCUtNzMlMjElLTEwMiUtNzklMTI1JS0zMCUtMTAzJTU5JTY0JTU0JS00OCU0MiUtOTYlLTUyJTk1JTU0JTExOCUtMTEyJS0xMDklLTIlMTAzJTEyMiUyJTczJS05NiU5NyUtMTE3JS04MiU2MiU0MiUtNDAlMTIwJTIlMTA0JTEyMyUtNTIlLTExOCUtNjElMTA2JS0xMDMlLTY4JS05MCU4MiU2NiUtMTclNTAlNjAlLTUlLTUwJS0zNiU5NyUtMjAlLTMzJTglNDklLTExOCUtNyUtNDklOTUlNzAlLTEyMiUtMzAlLTcxJTEwNSUtMTglNzAlMSUtNTQlMTglMTYlNTElNjQlLTk1JTQ5JTk5JTU5JS02MSUtNDUlLTczJTY0JTExOCUtMTE1JS02NSU2OSUtNzclLTgzJTIyJTM0JTY2JTc0JS0yNiUxMTMlOTIlLTM4JTEwJTExNCUtMTEwJS05OSUtMTA4JS0zMiUtNDQlLTg1JTE1JTI1JS04OSUxMTElLTEyMSUtNzIlNCUxMDQlNDIlLTEyNSUtNzYlNDglODAlLTY4JTEwMSUtMjklOSUtNTglLTc0JS00MyUtNjQlLTExMiU1JS02JTMwJS0xMjAlLTEyOCUzNCUtMjAlLTExNiUtMTE2JTMyJTI3JS0yJS05JTM2JTY1JS01MiUtNDglOTMlMTE3JTU2JTkzJTY5JTQyJS01NyU3MiUtNyUtMTglLTUlNDclNDIlLTgzJS04NSUtODAlLTEyNCUtOSUtNzElLTExNSUzMiUyNyUtMTI4JTEwMiUtODklLTE3JS02NiUwJTEwMCU5MiUxNCUtNzclLTUxJS02NyUtMTIlMTYlMTA0JS0xMDQlLTc4JTMyJS0xMTMlLTExNCUtMTAzJTQyJTIyJTEzJTkyJTYwJTMyJTEzJS0zNCU1MCU2NiU3OSUxMjclLTQlNCUxMDYlMyUtNzglLTMzJS0xMjMlLTM3JTEyMCUtMTklNjAlMTUlMTAwJTExNiUtMTAzJTk2JS00NSUtNjQlLTU4JTEwJS00NiUtODAlLTU5JS00MSUyOCUtMTIwJS0xMjglMTIlNzIlOCU2NiUtOTIlMzIlOTclLTEyOCU2JTQlMjQlMjUlODglMzIlODElMTElLTMwJTYxJTEyMyU1OSUtMjUlMzAlLTExMyUtMTAyJTE2JTE1JS02MSUtMTEzJTk1JS03NSUtMTIxJS04MSU4OSU3MyUxMSU5NyUxMDYlOTYlLTYlLTMlMTElLTI4JTEwNSU2JS05NCUxJS0yMSUtMTE1JS0zNSUwJTElNiUwJS0xMDMlLTUzJS00OSU0NiU0JTQzJS0xJTExJTAlMCUwJTAlNzMlNjklNzglNjglLTgyJTY2JTk2JS0xMjYlIiBmb3JtYXQ9IlBhcHlydXMiIGxvY2F0aW9uPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8xMV90cmFja2luZ19zZW5zb3IucG5nIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8xVElOUVEtUUVlR1JXY3JmLUt4Ykt3IiBzb3VyY2U9ImltYWdlX3BhcHlydXMiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzFUSU5RZy1RRWVHUldjcmYtS3hiS3ciIGtleT0iaW1hZ2Vfa2luZF9rZXkiIHZhbHVlPSJpY29uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2ljb24+CisgICAgPGljb24geG1pOnR5cGU9InVtbDpJbWFnZSIgeG1pOmlkPSJfSjVIMFFFYlNFZU84OWJkUHBCOGdUZyIgbG9jYXRpb249InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zL3N2Zy8xMV90cmFja2luZ19zZW5zb3Iuc3ZnIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9KNUgwUVViU0VlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9ImltYWdlX3BhcHlydXMiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX0o1SDBRa2JTRWVPODliZFBwQjhnVGciIGtleT0iaW1hZ2Vfa2luZF9rZXkiIHZhbHVlPSJzaGFwZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9pY29uPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIHhtaTppZD0iX1NPNjRnQUI2RWVHWEpPSnRXS244alEiIG5hbWU9IkxpZGFyU3lzdGVtIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfSjR3cFlBQjdFZUdYSk9KdFdLbjhqUSIgZ2VuZXJhbD0iX2c3YmxzQUI1RWVHWEpPSnRXS244alEiLz4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfS2g1RjhBQjdFZUdYSk9KdFdLbjhqUSIgZ2VuZXJhbD0iX0tKX1l3QUI2RWVHWEpPSnRXS244alEiLz4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfT2RROUVBQ0FFZUdYSk9KdFdLbjhqUSIgbmFtZT0ibmJMYXllcnMiIHZpc2liaWxpdHk9InB1YmxpYyI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX25DT3VvQUgtRWVDX1pMekxRaFctVFEiLz4KKyAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX1J2WG5BQUNBRWVHWEpPSnRXS244alEiIHZhbHVlPSIxIi8+CisgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9SdmhZQUFDQUVlR1hKT0p0V0tuOGpRIiB2YWx1ZT0iMSIvPgorICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX1J2LUQ4QUNBRWVHWEpPSnRXS244alEiPgorICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfRGtQdm9BQ0JFZUdYSk9KdFdLbjhqUSIgbmFtZT0ibGF5ZXJBbmdsZU1pbiIgdmlzaWJpbGl0eT0icHVibGljIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfSGZlUEVBQ0JFZUdYSk9KdFdLbjhqUSIgdmFsdWU9IjEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0hmb0FFQUNCRWVHWEpPSnRXS244alEiIHZhbHVlPSIxIi8+CisgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfSGY2N0FBQ0JFZUdYSk9KdFdLbjhqUSI+CisgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9JQWFZOEFDQkVlR1hKT0p0V0tuOGpRIiBuYW1lPSJsYXllckFuZ2xlU3RlcCIgdmlzaWJpbGl0eT0icHVibGljIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfTHRWOXNBQ0JFZUdYSk9KdFdLbjhqUSIgdmFsdWU9IjEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0x0ZkhvQUNCRWVHWEpPSnRXS244alEiIHZhbHVlPSIxIi8+CisgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfTHQ3emtBQ0JFZUdYSk9KdFdLbjhqUSI+CisgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9NblRya0FDQkVlR1hKT0p0V0tuOGpRIiBuYW1lPSJub2lzZSIgdmlzaWJpbGl0eT0icHVibGljIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfTlpuVHNBSVVFZUNWckxFQkg1ZWpuUSIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfUEd3SmdBQ0JFZUdYSk9KdFdLbjhqUSIgdmFsdWU9IjEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX1BHNVRjQUNCRWVHWEpPSnRXS244alEiIHZhbHVlPSIxIi8+CisgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfUEhWX1lBQ0JFZUdYSk9KdFdLbjhqUSI+CisgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9ReFNZc0FDQkVlR1hKT0p0V0tuOGpRIiBuYW1lPSJzaWdtYU5vaXNlIiB2aXNpYmlsaXR5PSJwdWJsaWMiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xdVhtQUFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9TeXlXWUFDQkVlR1hKT0p0V0tuOGpRIiB2YWx1ZT0iMSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfU3pGUlVBQ0JFZUdYSk9KdFdLbjhqUSIgdmFsdWU9IjEiLz4KKyAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9Temg5UUFDQkVlR1hKT0p0V0tuOGpRIj4KKyAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX3N1QkdjRU4yRWVHTVpPU0pJZmEwZ2ciIG5hbWU9ImFuZ2xlX21pbiI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3F1WG1BQUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9XeENjVUVOM0VlR01aT1NKSWZhMGdnIiBuYW1lPSJhbmdsZV9tYXgiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xdVhtQUFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfcnctQW9FTjhFZUdNWk9TSklmYTBnZyIgbmFtZT0idGltZV9pbmNyZW1lbnQgIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX3ZVT0U4RU44RWVHTVpPU0pJZmEwZ2ciIG5hbWU9InNjYW5fdGltZSAgIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX3ktZGlFRU44RWVHTVpPU0pJZmEwZ2ciIG5hbWU9InJhbmdlX21pbiI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3F1WG1BQUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il8xRC1kRUVOOEVlR01aT1NKSWZhMGdnIiBuYW1lPSJyYW5nZV9tYXgiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xdVhtQUFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfWTBGZXdDTTZFZUt3ZWQ3RkVFRi00USIgbmFtZT0ibmJSYXlzIiB2aXNpYmlsaXR5PSJwdWJsaWMiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19uQ091b0FILUVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9jUzJyc0NNNkVlS3dlZDdGRUVGLTRRIiB2YWx1ZT0iMSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfY1MycnNTTTZFZUt3ZWQ3RkVFRi00USIgdmFsdWU9IjEiLz4KKyAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9jVEFjc0NNNkVlS3dlZDdGRUVGLTRRIj4KKyAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPGljb24geG1pOnR5cGU9InVtbDpJbWFnZSIgeG1pOmlkPSJfMTFzdTBBLVFFZUdSV2NyZi1LeGJLdyIgY29udGVudD0iLTExOSU4MCU3OCU3MSUxMyUxMCUyNiUxMCUwJTAlMCUxMyU3MyU3MiU2OCU4MiUwJTAlMCUxNiUwJTAlMCUxNiU4JTIlMCUwJTAlLTExMiUtMTExJTEwNCU1NCUwJTAlMCUyNSUxMTYlNjklODglMTE2JTgzJTExMSUxMDIlMTE2JTExOSU5NyUxMTQlMTAxJTAlNjUlMTAwJTExMSU5OCUxMDElMzIlNzMlMTA5JTk3JTEwMyUxMDElODIlMTAxJTk3JTEwMCUxMjElMTEzJS01NSUxMDElNjAlMCUwJTElLTEyMiU3MyU2OCU2NSU4NCUxMjAlLTM4JTk4JS0yMCU2MSUxMTclLTExNyUtMTIzJS0xMTElLTE1JS05JS02NSUtMSUxMjclLTElLTElMTAzJTk2JTk2JTk2JTEwMiUxMDAlMTAwJTk4JTEwMCUtNCUtNDklMCU5OCU2NyUwJTM1JTMlLTI5JS02NSUtMSUtMSUtMTI3JS0xMjYlLTk3JTEyNyUtMSUtNzElLTEyJS0yOCU0MSU3NSUtMTUlLTU0JS02MSUxMiUtODQlNDQlMTIlNzYlLTExNiUxMiUxMjclLTElNjUlLTEwNyUtNCUtNSUtNDklLTE2JS0xNyUzMSUzJTU0JTk2JS01OSUtMTIlLTExNiU1JTY4JS0xJS0yJS0xMjUlNDYlMzUlLTYwJTExJTM0JS0zMyUxMjUlNzAlMTklMTI2JTEyMiUtMTAlNCUxOSU4NiUtMTA5JS00NiU3NiU4NSUtMTI3JTglODMlLTQlLTUzJS0xMDUlLTQ5JS00MCU1MyUtOTYlMCU3OCU1NCU1NiUtMTMlMjMlMTklMTElLTExOCUtMTIyJTI2JTEyNyUxMSU2JTEwNSU5NyUxNiU5OCU5NiUtODAlLTEwOSUxOCU0JTU3JTc2JTkwJTEyMCU5MSUtOTQlMTElOTIlMSUxOSUxNSU0NyUxMSUtNzglLTEyMiUtMTA2JTkzJS0yNSUtMTI4JS00NiUtMTclLTY2JS0xJTEyNCUtMTMlLTMlMTE5JS03NiUtNzQlMTI0JS01MiUtOTUlMTA3JS0zNyUtMzYlMTMlLTY3JS0yNiUtMTclLTEyNyU0MyUtOCUtNTMlLTU4JS0xMTQlLTIyJTM2JTc4JTExOCUtODElLTExNSUzOSUtMTIzJTU2JS0zOSUtMTMlNzclODQlLTE4JS02NiUtMSUtMTQlNDYlLTYzJTI1JTM0JTglLTEwNSUxMDMlLTIlLTEzJS0xMDUlMzclLTUxJS0zNSU4JS01MCUtNDElMTglLTI4JS0xMjclNDAlNSUtNzglLTEwNyU1JTEyMSUtMzQlMTI3JS0xJTExNyUtMjAlLTIzJTU5JS03MiUtMTclMTAzJS0xOSU2MCUtOSUxOSUyNCUzMyUtNTYlMjIlOTIlMTIzJS0xJTEwMSUtMTQlLTM5JS02OSU2NCUtOTElMTEyJS0xMTElMTAyJTkxJTQ1JTQ1JTM2JTQ2JTU5JTM1JTM1JTExJTgwJTMxJTY2JS0xMjElLTc2JS0xNiUxMTQlMTE5JS02MSUtMzUlLTklOTUlLTEwMiU3MiU4JTEwJTExNCUtNzglLTM1JTEyMSUtMSUtNTklMTA4JS02MyU3MyUtMTIyJTEwMyUxMTElMjUlLTY2JS0xJS0xMjYlLTU2JTEyNyUtNCUtMyUyNyUtNDMlMTUlLTE3JTYyJS0xMyUxMTUlLTgwJS03MSUxMDklNTYlMSU4NCU2MSUtMTUlLTUyJTI5JS05NiUwJS00OCUtNDUlNDAlMTAlLTcyJTEyMCU4MCU2NiU5JTI0JTY4JTY0JTc5JTMlLTUxJTMlLTg2JTYlNTglLTgxJTk2JS00MSUxMjElODAlMzYlMCUzJS05JS0yMyU5MSUtODglMTAlNTQlODYlMjAlMTMlOTQlNDMlMTQlNjclLTExMCUtNjElNTMlLTgwJS02NSU0OSUtMTA5JS0xMjIlMCUzNSUzJS03MCUtMTA5JS0xNiU3MSU1OCUtNDUlLTE3JTk1JTQ0JTg4JTM3JTEwMiUtOTklLTY2JS0xMTUlODUlLTQlLTEzJS02NSUtMSUwJTElNiUwJTY3JTE3JS0xMTAlLTQ5JS0xJS03NSUtMTElNDclMCUwJTAlMCU3MyU2OSU3OCU2OCUtODIlNjYlOTYlLTEyNiUiIGZvcm1hdD0iUGFweXJ1cyIgbG9jYXRpb249InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzA5X2xpZGFyX3N5c3RlbS5wbmciPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzExc3UwUS1RRWVHUldjcmYtS3hiS3ciIHNvdXJjZT0iaW1hZ2VfcGFweXJ1cyI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMTFzdTBnLVFFZUdSV2NyZi1LeGJLdyIga2V5PSJpbWFnZV9raW5kX2tleSIgdmFsdWU9Imljb24iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvaWNvbj4KKyAgICA8aWNvbiB4bWk6dHlwZT0idW1sOkltYWdlIiB4bWk6aWQ9Il9LZklnMEViUkVlTzg5YmRQcEI4Z1RnIiBsb2NhdGlvbj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvc3ZnLzA5X2xpZGFyX3N5c3RlbS5zdmciPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0tmSWcwVWJSRWVPODliZFBwQjhnVGciIHNvdXJjZT0iaW1hZ2VfcGFweXJ1cyI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfS2ZJZzBrYlJFZU84OWJkUHBCOGdUZyIga2V5PSJpbWFnZV9raW5kX2tleSIgdmFsdWU9InNoYXBlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2ljb24+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfMkFJV2NBQ1lFZUdYSk9KdFdLbjhqUSIgbmFtZT0iTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfNHMtLVFBQ1lFZUdYSk9KdFdLbjhqUSIgZ2VuZXJhbD0iX0tUc1BJRjdiRWVDR2hMVGpFRGt4ZmciLz4KKyAgICA8aWNvbiB4bWk6dHlwZT0idW1sOkltYWdlIiB4bWk6aWQ9Il8yZnQ4TUEtUUVlR1JXY3JmLUt4Ykt3IiBjb250ZW50PSItMTE5JTgwJTc4JTcxJTEzJTEwJTI2JTEwJTAlMCUwJTEzJTczJTcyJTY4JTgyJTAlMCUwJTE2JTAlMCUwJTE2JTglMiUwJTAlMCUtMTEyJS0xMTElMTA0JTU0JTAlMCUwJTI1JTExNiU2OSU4OCUxMTYlODMlMTExJTEwMiUxMTYlMTE5JTk3JTExNCUxMDElMCU2NSUxMDAlMTExJTk4JTEwMSUzMiU3MyUxMDklOTclMTAzJTEwMSU4MiUxMDElOTclMTAwJTEyMSUxMTMlLTU1JTEwMSU2MCUwJTAlMSUtNDMlNzMlNjglNjUlODQlMTIwJS0zOCU5OCUtMjMlNjElMTE3JS0xMTclLTEyMyUtMTExJS0xNSUtOSUtNjUlLTElMTI3JS0xJS0xJTEwMyU5NiU5NiU5NiUxMDIlMTAwJTEwMCU5OCUxMDAlLTQlLTQ5JTAlOTglNjclMCUzNSUzJS0yOSUtNjUlLTElLTElLTEyNyUtMTI2JS05NyUxMjclLTElLTcxJS0xMiUtMjglNDElMzUlNjclLTE1JTkyJTYlODYlMjIlNiUzOCU3MCUtMTIyJS02NSUtMSUtOTYlNzQlLTIlLTMlMTAzJS04JS05JS0xMTMlMSUyNyUtODAlOTglMTIyJS01OCUyJS05NCUxMjclLTElNjUlLTEwNSUtMzElMTAwJTk5JS0xMTIlMTglMTAyJTEyMCUtMTAlLTEwNiUtMzElLTUlNDclMTAwJS0zMSUtODklMTAzJTc5JS04MCU5NiU1MyU5JS04OCUtNiUxMjclLTkwJTM5JS0xMTIlLTM0JTEyNiUtMTclLTEyMyUtNDElLTU4JS0xMDklMTIlNzklLTMzJTY2JS0xMjQlLTY1JTEyNCUtNyUtNTIlLTEyNCU2OSUtNzUlLTc4JTM2JS02MSUtNSU0NyUtNzAlLTg1JTE0JS00MSUzMCUtNjYlMTAyJTMzJTQxJS0xMiUtNjUlLTQ4JTk1JS01NyU3NiUyMSUzNCUtMTMlLTExNyUtMTE5JS0xMjMlOSUtMzklMjUlNTMlLTIlMjIlLTElMTIzJS0xMTAlNjQlMTAyJTExJS0xNCU5MiUxNCUtNzclNzclLTQ4JS0xMTElLTExNyUtMzUlMTE1JS0yJS0xMiUtNzclMTE5JTY0JTU0JS0xMjUlLTc2JTQ4JTgwJTklMTklMTUlNDclMTklOTIlLTExJS04NyU3NiUtODElMTAyJTkxJTQ1JTQwJS05JS0zOSU5MSUtOTYlMTMlLTE3JS02NiUtMSUtMzglLTMwJTEwNyUtMzQlMTIwJS0xMCUtMTAlLTUlLTE3JS02NSUtMTA2JS03MiUyNSUwJS0xMjMlLTElLTc4JS03OSU2NyU1MyUtOTIlLTM5JS0yMyUtMTA0JTc0JTklMzMlMTA4JS01JS0yJS0yMSUtNTQlLTg3JS0zNyUxMDIlLTQ1JS03MyUxJS0xMTUlLTk3JTEwNCUtOTMlLTM1JTExOSUtMjYlNzglLTc2JS03NCU2MCUtNDglODAlLTI2JTYzJTEyNyUtOTUlMjYlNTglMTA4JS05NiUxMDIlNzklNjAlMTE1JS0xMjElLTc5JTEyNyUzNSUtNTYlMjclOTYlMTA5JTczJTcxJS04MiU0MiUxMSUtMTQlMTA4JTEyMCUtMiUyMiUxOCUxOCU2MyUtMSUtMSUtMTIxJS0xMjIlLTExMCUzMiU0OCUyOCUtNjMlLTk2JTk2JS01MyUtODclMTE5JS0yNyUzMyU2NCU0NiUtNDglNzMlNjQlNzUlLTgyJTkyJTEyNiUtNTYlLTglLTEwJTExJTQ4JTEyJTI0JS04OSUxMTElNyUtNzAlLTEwOSUtOTklLTExMSUxNyUzNSU4OCUtNzElLTQwJTYzJS00JS00JTEzJS00NyUtNjUlNDUlLTUzJTExJTM0JTYlMTAlLTM5JS02OSUtNDklLTEyNyUtMTE2JS0xMTMlLTY1JTEyNyU2NyU1MyUwJS02NyU1JTgxJS0yOCUtODMlNDElLTkzJTUyJTEyNyUxNSUzJTclLTM3JTQlODMlODUlNzklMzclOSU4OCUtMTI0JS02NyUtMTIzJTI1JS01NyUzJS00MyU4MCUxMTMlLTI4JTI2JS00OCUyNyU2NiUxMSUtMTAlMiUtNDMlMSU2NyU2JS0zOSU3NCU5NiUxMDglMzIlNTYlMTA4JS04NCU4MCU3OSUtNDklLTM4JTEyMSUtMTglLTUwJS01JTQ3JTEwNSU0MiUtMTEwJS03JTM4JTQyJS01NiUtODYlLTEyNyUtOTUlLTQ0JS03OCUtMjElMjglLTEwMCU0MyUtNjQlLTU2JS0xMjglLTEyMCU1NiUtNzclLTY2JTEzJTE2JS03MyUtNjMlMjklLTEwMyUtNjYlLTUlMiU0OCUxMDAlLTExMSUtMTA5JTE5JS00NSUtMTclOTUlLTMyJS00NCU3NCU1MiU5NiUtNjclLTc5JTI3JTMyJS02NCUwJS0xJTglLTY3JS0zOCU5NiUtNzglMTQlLTExNSUwJTAlMCUwJTczJTY5JTc4JTY4JS04MiU2NiU5NiUtMTI2JSIgZm9ybWF0PSJQYXB5cnVzIiBsb2NhdGlvbj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMDdfc2Vuc29yX2RyaXZlci5wbmciPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iXzJmdDhNUS1RRWVHUldjcmYtS3hiS3ciIHNvdXJjZT0iaW1hZ2VfcGFweXJ1cyI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfMmZ0OE1nLVFFZUdSV2NyZi1LeGJLdyIga2V5PSJpbWFnZV9raW5kX2tleSIgdmFsdWU9Imljb24iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvaWNvbj4KKyAgICA8aWNvbiB4bWk6dHlwZT0idW1sOkltYWdlIiB4bWk6aWQ9Il9PTWNEa0ViU0VlTzg5YmRQcEI4Z1RnIiBsb2NhdGlvbj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvc3ZnLzA3X3NlbnNvcl9kcml2ZXIuc3ZnIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9PTWNEa1ViU0VlTzg5YmRQcEI4Z1RnIiBzb3VyY2U9ImltYWdlX3BhcHlydXMiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX09NY0Rra2JTRWVPODliZFBwQjhnVGciIGtleT0iaW1hZ2Vfa2luZF9rZXkiIHZhbHVlPSJzaGFwZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9pY29uPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIHhtaTppZD0iXzU4SEQwQUNZRWVHWEpPSnRXS244alEiIG5hbWU9IkdQU1N5c3RlbSI+CisgICAgPGdlbmVyYWxpemF0aW9uIHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIHhtaTppZD0iX3dmcjZ3QUNhRWVHWEpPSnRXS244alEiIGdlbmVyYWw9Il8yQUlXY0FDWUVlR1hKT0p0V0tuOGpRIi8+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX09qblRVQUNaRWVHWEpPSnRXS244alEiIG5hbWU9Im9yaWdpblBvc2l0aW9uIiB2aXNpYmlsaXR5PSJwdWJsaWMiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpEYXRhVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfdVVKWjRBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfUlpIZzBBQ1pFZUdYSk9KdFdLbjhqUSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfUlpRcXdBQ1pFZUdYSk9KdFdLbjhqUSIgdmFsdWU9IjEiLz4KKyAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9SWnRXc0FDWkVlR1hKT0p0V0tuOGpRIj4KKyAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPGljb24geG1pOnR5cGU9InVtbDpJbWFnZSIgeG1pOmlkPSJfMjdsWTBBLVFFZUdSV2NyZi1LeGJLdyIgY29udGVudD0iLTExOSU4MCU3OCU3MSUxMyUxMCUyNiUxMCUwJTAlMCUxMyU3MyU3MiU2OCU4MiUwJTAlMCUxNiUwJTAlMCUxNiU4JTIlMCUwJTAlLTExMiUtMTExJTEwNCU1NCUwJTAlMCUyNSUxMTYlNjklODglMTE2JTgzJTExMSUxMDIlMTE2JTExOSU5NyUxMTQlMTAxJTAlNjUlMTAwJTExMSU5OCUxMDElMzIlNzMlMTA5JTk3JTEwMyUxMDElODIlMTAxJTk3JTEwMCUxMjElMTEzJS01NSUxMDElNjAlMCUwJTElLTEwMSU3MyU2OCU2NSU4NCUxMjAlLTM4JTk4JS0yMCU2MSUxMTclLTExNyUtMTIzJS0xMTElLTE1JS05JS02NSUtMSUxMjclLTElLTElMTAzJTk2JTk2JTk2JTEwMiUxMDAlMTAwJTk4JTEwMCUtNCUtNDklMCU5OCU2NyUwJTM1JTMlLTI5JS02NSUtMSUtMSUtMTI3JS0xMjYlLTk3JTEyNyUtMSUtNzElLTEyJS0yOCU0MSU3NSUtMTUlLTU0JS02MSUxMiUtODQlNDQlMTIlNzYlLTExNiUxMiUxMjclLTElNjUlLTEwNyUtNCUtNSUtNDklLTE2JS0xNyUzMSUzJTU0JTk2JS01OSUtMTIlLTExNiU1JTY4JS0xJS0yJS02MSU2NCUyOCUxMjAlMTIyJS0xMCU0JTE5JS05MCUtODglLTExNCUtMTAzJS0yMiUtNjklLTI2JTI0JTYlMTA1JTk3JTc2JS04NyU0NyU5NSU2MiU1MSU5NyUtODYlLTY2JTI4JTEwMiU0MyUtNTYlLTU1JS0xMCU0NiUtNjElLTEwOSUtMTI3JS0xMDklMTMlNzclLTEwJTIzJTE5JTExJS01NiU3MyUxMDUlLTE4JTcwJTE2JS0yJS04NCUtODklLTE3JS04NCU0JTEyMSUtMTclLTY2JS0xJS05NCU0NCUtNTYlLTc3JS0yNCUtMjIlMzUlNiUxMDElLTg3JTUyJTEwNSUzMyUtMTIwJS00NCUtNzklLTklLTk3JS04MSUtMTAwJS03MCUtNTElLTYwJS02MSUxMSUtNDYlNDglLTQ1JS00MyUwJTcyJS02NiUtMSUtMiUxMDclODYlLTM3JS04NiU4OSU4NyUzMCU0JTQwJTc1JTAlNTMlMjAlLTEwMCUtNjYlLTUxJTExMiUtOSUtNyU4MyU5NyUtMTglNDUlLTY2JS0yNiU2NCUtMzklLTExOSUxMDMlLTE4JTIwJS0xMDAlLTcwJS0zJS0xMDUlLTExNSUyOSUtMzElMzYlLTk2JTUxJS02OCUtNTElODQlODElOTIlLTY0JS01NSU4NiUxMTElMTIlMjElLTcxJS0xMCUtMiUxMSU0MCUtNDglLTElLTQlNSUxMDUlLTQwJTEyNiUtMTclLTEyMyUtNDklLTI2JS0xMDklNjQlNiUtNDglNDglMjklLTcyJTMwJTc4JS0xMCU4MyUtMTAzJTk0JS05MCU4MiU2NiUtODklLTk3JS02NyU5OSUtMTAwJS02NiUtMyUtMjMlLTExMyUtOTclNjQlLTc5JS05NyUtMSUtMSU1MSU1MCUyMCUtNDklNjklLTEwJTQ2JS00OCU5NyUyMSU3MSUtODIlMSUtNzElMTE4JTgyJS0xMjYlLTQ3JS0zOCUtMTQlNjQlLTQzJTEwMiUtNDUlLTczJTQ5JTEyNCUtMSU1JTgxJS02MSUxMjclMTIxJTI3JTExJS0zNiUxMjYlLTk2JS05NyUxMTYlLTYzJS0xMTYlMTMlLTgyJS0xMjIlNjQlNjMlLTQ0JTMwJS02NiUtMTA2JS02NiUtNSUtNjIlLTg0JTY3JTg3JS0zMiUtODYlLTEyNyUtMzIlLTI5JS0xNyUtMzMlNDAlLTYzJTEwJS00NCUtNDUlMTAxJS05NCUxMCU4NCUxMyUxMDAlNTUlLTM3JTEwNiUtNTElLTcwJS0xMyUyOCU4OSU1MyU4JTExMiUtMTUlNDglNDklLTExMiU0JS00MCU4OCUtNDclNTMlMTIwJTI5JS03MCUtMTAlMzAlMTA4JTQyJTQ4JTM2JS0xMjglLTYzJS0xMTglMzglNDMlLTY0JS01NiUtNjQlLTEyNiUxMTAlLTU4JS0xMDclNyU2NiU4NyUzMCUtMzIlLTc4JS0xMjglLTIzJS05JTQ3JS00NiUtMTAwJS0xMiUtNyUtMzMlMTI3JS0xMjglMCUzJTAlMTMlLTEyMyUtOTclLTE2JS01OCUtNCU2JS05NiUwJTAlMCUwJTczJTY5JTc4JTY4JS04MiU2NiU5NiUtMTI2JSIgZm9ybWF0PSJQYXB5cnVzIiBsb2NhdGlvbj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMTlfZ3BzLnBuZyI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfMjdsWTBRLVFFZUdSV2NyZi1LeGJLdyIgc291cmNlPSJpbWFnZV9wYXB5cnVzIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il8yN2xZMGctUUVlR1JXY3JmLUt4Ykt3IiBrZXk9ImltYWdlX2tpbmRfa2V5IiB2YWx1ZT0iaWNvbiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9pY29uPgorICAgIDxpY29uIHhtaTp0eXBlPSJ1bWw6SW1hZ2UiIHhtaTppZD0iX2FIRDM4RWJSRWVPODliZFBwQjhnVGciIGxvY2F0aW9uPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy9zdmcvMTlfZ3BzLnN2ZyI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfYUhEMzhVYlJFZU84OWJkUHBCOGdUZyIgc291cmNlPSJpbWFnZV9wYXB5cnVzIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9hSEQzOGtiUkVlTzg5YmRQcEI4Z1RnIiBrZXk9ImltYWdlX2tpbmRfa2V5IiB2YWx1ZT0ic2hhcGUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvaWNvbj4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il9ZNUhBSUFDY0VlR1hKT0p0V0tuOGpRIiBuYW1lPSJSb2JvdGljU3lzdGVtIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfQ19HeGdBQ2RFZUdYSk9KdFdLbjhqUSIgZ2VuZXJhbD0iX0dvcEZ3UGNKRWQtSjA2VTVITV9vLVEiLz4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfQTlqd1VCdFRFZUdaQnFRTEsydFBSQSIgbmFtZT0ibG9jYWxQb3NpdGlvbiIgdmlzaWJpbGl0eT0icHVibGljIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3VVSlo0QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0I5VkxRQnRURWVHWkJxUUxLMnRQUkEiIHZhbHVlPSIxIi8+CisgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9COWU4UUJ0VEVlR1pCcVFMSzJ0UFJBIiB2YWx1ZT0iMSIvPgorICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX0ItWVVJQnRURWVHWkJxUUxLMnRQUkEiPgorICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfREplMVVCdFRFZUdaQnFRTEsydFBSQSIgbmFtZT0ibG9jYWxPcmllbnRhdGlvbiIgdmlzaWJpbGl0eT0icHVibGljIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6RGF0YVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3VVSlo0QUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0VjTHpVQnRURWVHWkJxUUxLMnRQUkEiIHZhbHVlPSIxIi8+CisgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9FY2V1UUJ0VEVlR1pCcVFMSzJ0UFJBIiB2YWx1ZT0iMSIvPgorICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX0VjN2FNQnRURWVHWkJxUUxLMnRQUkEiPgorICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8aWNvbiB4bWk6dHlwZT0idW1sOkltYWdlIiB4bWk6aWQ9Il9wZTdSVUEtT0VlR1JXY3JmLUt4Ykt3IiBjb250ZW50PSItMTE5JTgwJTc4JTcxJTEzJTEwJTI2JTEwJTAlMCUwJTEzJTczJTcyJTY4JTgyJTAlMCUwJTE2JTAlMCUwJTE2JTglMiUwJTAlMCUtMTEyJS0xMTElMTA0JTU0JTAlMCUwJTI1JTExNiU2OSU4OCUxMTYlODMlMTExJTEwMiUxMTYlMTE5JTk3JTExNCUxMDElMCU2NSUxMDAlMTExJTk4JTEwMSUzMiU3MyUxMDklOTclMTAzJTEwMSU4MiUxMDElOTclMTAwJTEyMSUxMTMlLTU1JTEwMSU2MCUwJTAlMSUxOSU3MyU2OCU2NSU4NCUxMjAlLTM4JTk4JS0yMCU2MSUxMTclLTExNyUtMTIzJS0xMTElLTE1JS05JS02NSUtMSUxMjclLTElLTElMTAzJTk2JTk2JTk2JTEwMiUxMDAlMTAwJTk4JTEwMCUtNCUtNDklMCU5OCU2NyUwJTM1JTMlLTI5JS02NSUtMSUtMSUtMTI3JS0xMjYlLTk3JTEyNyUtMSUtNzElLTEyJS0yOCU0MSU3NSUtMTUlLTU0JS02MSUxMiUtODQlNDQlMTIlNzYlLTExNiUxMiUxMjclLTElNjUlLTEwNyUtNCUtNSUtNDklLTE2JS0xNyUzMSUzJTU0JTk2JS01OSUtMTIlLTExNiU1JTY4JS0xJS0yJS02MSU2NCUyOCUxMjAlMTIyJS0xMCU0JTE5JTMlNDElLTMyJS01MyUtMTA1JS00OSUtOTIlMTA1JS04JS01OSUtNjAlLTYyJTIlOTclLTMlLTE3JTczJS0xMjYlLTExNyUxMTAlLTY1JS05JS02MiUxMDclLTM4JTU0JS04NCUtMTI2JTc2JTYwJS02OCUtOTIlLTM5JS0xNiUtMTA1JS0xMTUlMjklMTA2JTMlLTI5JS0xMiUtMTklLTM0JTUwJTY2JS0xMSUtNTglLTg2JTEwMiUyNyU3OSU1MCUtNCUtOCU1JTIzJTQlLTM5JS0xMDklLTIzJTklOTglLTEyOCU1JS0xMDMlLTElLTQlLTEyMyUxMDYlOTYlLTcyJS01JTEyNCU0MyUzJTY3JS03NCUtMTAlNDclMzIlMyU5NyUzMiUtMTAwJTEzJTk5JS00JS00JS0xJS05NyU1JS0zOSU3MCUxMSU3MyUtOTUlMTA5JTg5JTk0JTEyMCUtMTAwJS02MCUtNTAlLTU2JS0xMjAlLTkyJS0zMSUtMzklOTElLTk1JTUlMTIzJTMzJS01MiU4MyUtMiUtMjYlLTExNSUxMDMlMTExJTExMSUxMjUlLTE0JTE0JTc3JS02MSUtNTclLTMzJS02NSUtMTExJTUyJTEyNCU3MSUtNzIlLTI1JS01MSUtMTEzJTk1JTMyJS00MyUtNTYlLTUwJS0xMjUlMCU0NiUzMCUtMjAlLTk1JTg0JTExOCUtMjYlNTQlLTYxJS01JTQ3JTg4JTM2JS00MCU4OCU4OSUtODAlMTA2JS03MiUxMTQlLTIyJTU0JTg2JTExMyUxJTcwJTYlLTQ2JS0zMCUtMTI3JS0yMyUtOSU0NyUtNDYlNTIlMTI0JS0yJS05JTMxJTMyJS02NCUwJS0zOCUtMTE4JTExMiUtMTA3JS0xMjUlMTQlMTklLTg0JTAlMCUwJTAlNzMlNjklNzglNjglLTgyJTY2JTk2JS0xMjYlIiBmb3JtYXQ9IlBhcHlydXMiIGxvY2F0aW9uPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9pY29ucy8xNngxNi8wMl9zeXN0ZW0ucG5nIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9wZTdSVVEtT0VlR1JXY3JmLUt4Ykt3IiBzb3VyY2U9ImltYWdlX3BhcHlydXMiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX3BlN1JVZy1PRWVHUldjcmYtS3hiS3ciIGtleT0iaW1hZ2Vfa2luZF9rZXkiIHZhbHVlPSJpY29uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2ljb24+CisgICAgPGljb24geG1pOnR5cGU9InVtbDpJbWFnZSIgeG1pOmlkPSJfa3h0UElFZTFFZU8tN0xhdk13LUdadyIgbG9jYXRpb249InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zL3N2Zy8wMl9zeXN0ZW0uc3ZnIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il9reHRQSVVlMUVlTy03TGF2TXctR1p3IiBzb3VyY2U9ImltYWdlX3BhcHlydXMiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iX2t4dFBJa2UxRWVPLTdMYXZNdy1HWnciIGtleT0iaW1hZ2Vfa2luZF9rZXkiIHZhbHVlPSJzaGFwZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9pY29uPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIHhtaTppZD0iXzlFQmRnQnRURWVHWkJxUUxLMnRQUkEiIG5hbWU9IkFsZ29yaXRobSI+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX05fN2xBQnRVRWVHWkJxUUxLMnRQUkEiIG5hbWU9ImJhc2VfT3BlcmF0aW9uIiBhc3NvY2lhdGlvbj0iX05fN2xBUnRVRWVHWkJxUUxLMnRQUkEiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL1VNTC5tZXRhbW9kZWwudW1sI09wZXJhdGlvbiIvPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX3hJOWtRQnRVRWVHWkJxUUxLMnRQUkEiIG5hbWU9ImlzRXh0ZXJuYWwiIHZpc2liaWxpdHk9InB1YmxpYyI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTElCUkFSSUVTL1VNTFByaW1pdGl2ZVR5cGVzLmxpYnJhcnkudW1sI0Jvb2xlYW4iLz4KKyAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3lZc0d3QnRVRWVHWkJxUUxLMnRQUkEiIHZhbHVlPSIxIi8+CisgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il95Wkl5c0J0VUVlR1pCcVFMSzJ0UFJBIiB2YWx1ZT0iMSIvPgorICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX3lhQmpnQnRVRWVHWkJxUUxLMnRQUkEiPgorICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfMGQ2RzBCdFVFZUdaQnFRTEsydFBSQSIgbmFtZT0iZXh0RnVuY3Rpb25OYW1lIiB2aXNpYmlsaXR5PSJwdWJsaWMiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vVU1MX0xJQlJBUklFUy9VTUxQcmltaXRpdmVUeXBlcy5saWJyYXJ5LnVtbCNTdHJpbmciLz4KKyAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzJQdjM0QnRVRWVHWkJxUUxLMnRQUkEiIHZhbHVlPSIxIi8+CisgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il8yUUN5MEJ0VUVlR1pCcVFMSzJ0UFJBIiB2YWx1ZT0iMSIvPgorICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iXzJRcFB3QnRVRWVHWkJxUUxLMnRQUkEiPgorICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfNjBHejRCdFVFZUdaQnFRTEsydFBSQSIgbmFtZT0ibGliUGF0aCIgdmlzaWJpbGl0eT0icHVibGljIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1VNTF9MSUJSQVJJRVMvVU1MUHJpbWl0aXZlVHlwZXMubGlicmFyeS51bWwjU3RyaW5nIi8+CisgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il81bVl3VUx2T0VlS3RfNjFURXJSZnR3IiB2YWx1ZT0iMSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfNW1paFVMdk9FZUt0XzYxVEVyUmZ0dyIgdmFsdWU9IjEiLz4KKyAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il81bXJyUUx2T0VlS3RfNjFURXJSZnR3Ij4KKyAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2gyeGFjSjRBRWVLTlNNRmRzY1gwcmciIG5hbWU9ImxpYkZpbGVGb3JtYXQiIHZpc2liaWxpdHk9InB1YmxpYyI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTElCUkFSSUVTL1VNTFByaW1pdGl2ZVR5cGVzLmxpYnJhcnkudW1sI1N0cmluZyIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfbWtPQkFKNEFFZUtOU01GZHNjWDByZyIgdmFsdWU9IjEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX21rT0JBWjRBRWVLTlNNRmRzY1gwcmciIHZhbHVlPSIxIi8+CisgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfMkk0M0lLQWhFZUtOU01GZHNjWDByZyIgbmFtZT0iZWxmIiB2YWx1ZT0iZWxmIi8+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpFeHRlbnNpb24iIHhtaTppZD0iX05fN2xBUnRVRWVHWkJxUUxLMnRQUkEiIG5hbWU9IkVfT3BhcXVlQmVoYXZpb3JfT3BlcmF0aW9uMSIgbWVtYmVyRW5kPSJfTl83bEFodFVFZUdaQnFRTEsydFBSQSBfTl83bEFCdFVFZUdaQnFRTEsydFBSQSI+CisgICAgPG93bmVkRW5kIHhtaTp0eXBlPSJ1bWw6RXh0ZW5zaW9uRW5kIiB4bWk6aWQ9Il9OXzdsQWh0VUVlR1pCcVFMSzJ0UFJBIiBuYW1lPSJleHRlbnNpb25fQWxnb3JpdGhtIiB0eXBlPSJfOUVCZGdCdFRFZUdaQnFRTEsydFBSQSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIgYXNzb2NpYXRpb249Il9OXzdsQVJ0VUVlR1pCcVFMSzJ0UFJBIi8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb24iIHhtaTppZD0iX3FlQnVrQnRhRWVHWkJxUUxLMnRQUkEiIG5hbWU9IlVHVktpbmQiPgorICAgIDxvd25lZExpdGVyYWwgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIHhtaTppZD0iX3IzU0FnQnRhRWVHWkJxUUxLMnRQUkEiIG5hbWU9ImRpZmZlcmVudGlhbCIvPgorICAgIDxvd25lZExpdGVyYWwgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIHhtaTppZD0iX3d1a2ZrQnRhRWVHWkJxUUxLMnRQUkEiIG5hbWU9ImNhciIvPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIHhtaTppZD0iX0xLaE9JQ0RtRWVHQ2M5c0hrcnZaYmciIG5hbWU9IkFsZ29yaXRobUxpYnJhcnkiPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9BYnpNTUNEbkVlR0NjOXNIa3J2WmJnIiBuYW1lPSJiYXNlX0NsYXNzIiBhc3NvY2lhdGlvbj0iX0FiODlNQ0RuRWVHQ2M5c0hrcnZaYmciPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL1VNTC5tZXRhbW9kZWwudW1sI0NsYXNzIi8+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfY3pwOUlDRG9FZUdDYzlzSGtydlpiZyIgbmFtZT0icGF0aCIgdmlzaWJpbGl0eT0icHVibGljIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1VNTF9MSUJSQVJJRVMvVU1MUHJpbWl0aXZlVHlwZXMubGlicmFyeS51bWwjU3RyaW5nIi8+CisgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9mUWtFY0NEb0VlR0NjOXNIa3J2WmJnIiB2YWx1ZT0iMSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfZlF0MWNDRG9FZUdDYzlzSGtydlpiZyIgdmFsdWU9IjEiLz4KKyAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9mUlRyVUNEb0VlR0NjOXNIa3J2WmJnIj4KKyAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RXh0ZW5zaW9uIiB4bWk6aWQ9Il9BYjg5TUNEbkVlR0NjOXNIa3J2WmJnIiBuYW1lPSJFX0FsZ29yaXRobUxpYnJhcnlfQ2xhc3MxIiBtZW1iZXJFbmQ9Il9BYjg5TVNEbkVlR0NjOXNIa3J2WmJnIF9BYnpNTUNEbkVlR0NjOXNIa3J2WmJnIj4KKyAgICA8b3duZWRFbmQgeG1pOnR5cGU9InVtbDpFeHRlbnNpb25FbmQiIHhtaTppZD0iX0FiODlNU0RuRWVHQ2M5c0hrcnZaYmciIG5hbWU9ImV4dGVuc2lvbl9BbGdvcml0aG1MaWJyYXJ5IiB0eXBlPSJfTEtoT0lDRG1FZUdDYzlzSGtydlpiZyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIgYXNzb2NpYXRpb249Il9BYjg5TUNEbkVlR0NjOXNIa3J2WmJnIi8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfTHdrZU1DSnFFZUdYYmI0NTN0UDB5QSIgbmFtZT0iU3RhdGUiPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9YdFRWOENKcUVlR1hiYjQ1M3RQMHlBIiBuYW1lPSJiYXNlX1N0YXRlIiBhc3NvY2lhdGlvbj0iX1h0VFY4U0pxRWVHWGJiNDUzdFAweUEiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL1VNTC5tZXRhbW9kZWwudW1sI1N0YXRlIi8+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfZk50ellDSnFFZUdYYmI0NTN0UDB5QSIgbmFtZT0iYmVoYXZpb3IiIHZpc2liaWxpdHk9InB1YmxpYyI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvVU1MLm1ldGFtb2RlbC51bWwjQmVoYXZpb3IiLz4KKyAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2h5MDBjQ0pxRWVHWGJiNDUzdFAweUEiIHZhbHVlPSIxIi8+CisgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9oelE1VUNKcUVlR1hiYjQ1M3RQMHlBIiB2YWx1ZT0iMSIvPgorICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2gwS1JNQ0pxRWVHWGJiNDUzdFAweUEiPgorICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il9TZ2prUUNKcUVlR1hiYjQ1M3RQMHlBIiBuYW1lPSJUcmFuc2l0aW9uIj4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfWU9PNHdDSnFFZUdYYmI0NTN0UDB5QSIgbmFtZT0iYmFzZV9UcmFuc2l0aW9uIiBhc3NvY2lhdGlvbj0iX1lPTzR3U0pxRWVHWGJiNDUzdFAweUEiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL1VNTC5tZXRhbW9kZWwudW1sI1RyYW5zaXRpb24iLz4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9PbHR0RUNKdkVlR1hiYjQ1M3RQMHlBIiBuYW1lPSJndWFyZCIgdmlzaWJpbGl0eT0icHVibGljIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNCZWhhdmlvciIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfUS13QkFDSnZFZUdYYmI0NTN0UDB5QSIgdmFsdWU9IjEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX1FfTXM4Q0p2RWVHWGJiNDUzdFAweUEiIHZhbHVlPSIxIi8+CisgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfUkFpd3dDSnZFZUdYYmI0NTN0UDB5QSI+CisgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il8zZGE3MENKdUVlR1hiYjQ1M3RQMHlBIiBuYW1lPSJlZmZlY3QiIHZpc2liaWxpdHk9InB1YmxpYyI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvVU1MLm1ldGFtb2RlbC51bWwjQmVoYXZpb3IiLz4KKyAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iXzU0c3JjQ0p1RWVHWGJiNDUzdFAweUEiIHZhbHVlPSIxIi8+CisgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il81NF9tWUNKdUVlR1hiYjQ1M3RQMHlBIiB2YWx1ZT0iMSIvPgorICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iXzU1NC1RQ0p1RWVHWGJiNDUzdFAweUEiPgorICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpFeHRlbnNpb24iIHhtaTppZD0iX1h0VFY4U0pxRWVHWGJiNDUzdFAweUEiIG5hbWU9IkVfU3RhdGVfU3RhdGUxIiBtZW1iZXJFbmQ9Il9YdFRWOGlKcUVlR1hiYjQ1M3RQMHlBIF9YdFRWOENKcUVlR1hiYjQ1M3RQMHlBIj4KKyAgICA8b3duZWRFbmQgeG1pOnR5cGU9InVtbDpFeHRlbnNpb25FbmQiIHhtaTppZD0iX1h0VFY4aUpxRWVHWGJiNDUzdFAweUEiIG5hbWU9ImV4dGVuc2lvbl9TdGF0ZSIgdHlwZT0iX0x3a2VNQ0pxRWVHWGJiNDUzdFAweUEiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiIGFzc29jaWF0aW9uPSJfWHRUVjhTSnFFZUdYYmI0NTN0UDB5QSIvPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkV4dGVuc2lvbiIgeG1pOmlkPSJfWU9PNHdTSnFFZUdYYmI0NTN0UDB5QSIgbmFtZT0iRV9UcmFuc2l0aW9uX1RyYW5zaXRpb24xIiBtZW1iZXJFbmQ9Il9ZT080d2lKcUVlR1hiYjQ1M3RQMHlBIF9ZT080d0NKcUVlR1hiYjQ1M3RQMHlBIj4KKyAgICA8b3duZWRFbmQgeG1pOnR5cGU9InVtbDpFeHRlbnNpb25FbmQiIHhtaTppZD0iX1lPTzR3aUpxRWVHWGJiNDUzdFAweUEiIG5hbWU9ImV4dGVuc2lvbl9UcmFuc2l0aW9uIiB0eXBlPSJfU2dqa1FDSnFFZUdYYmI0NTN0UDB5QSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIgYXNzb2NpYXRpb249Il9ZT080d1NKcUVlR1hiYjQ1M3RQMHlBIi8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfYVYxcHNFT0FFZUdNWk9TSklmYTBnZyIgbmFtZT0iU2Vuc29yRHJpdmVyIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfZFFaOVlFT0FFZUdNWk9TSklmYTBnZyIgZ2VuZXJhbD0iX3hEVmNZRjlpRWVDWG5JUXNseHZ2M0EiLz4KKyAgICA8aWNvbiB4bWk6dHlwZT0idW1sOkltYWdlIiB4bWk6aWQ9Il9Icm1NY0ExRUVlS1BWTnNNZ1ZMeG53IiBjb250ZW50PSItMTE5JTgwJTc4JTcxJTEzJTEwJTI2JTEwJTAlMCUwJTEzJTczJTcyJTY4JTgyJTAlMCUwJTE2JTAlMCUwJTE2JTglMiUwJTAlMCUtMTEyJS0xMTElMTA0JTU0JTAlMCUwJTI1JTExNiU2OSU4OCUxMTYlODMlMTExJTEwMiUxMTYlMTE5JTk3JTExNCUxMDElMCU2NSUxMDAlMTExJTk4JTEwMSUzMiU3MyUxMDklOTclMTAzJTEwMSU4MiUxMDElOTclMTAwJTEyMSUxMTMlLTU1JTEwMSU2MCUwJTAlMSUtNDMlNzMlNjglNjUlODQlMTIwJS0zOCU5OCUtMjMlNjElMTE3JS0xMTclLTEyMyUtMTExJS0xNSUtOSUtNjUlLTElMTI3JS0xJS0xJTEwMyU5NiU5NiU5NiUxMDIlMTAwJTEwMCU5OCUxMDAlLTQlLTQ5JTAlOTglNjclMCUzNSUzJS0yOSUtNjUlLTElLTElLTEyNyUtMTI2JS05NyUxMjclLTElLTcxJS0xMiUtMjglNDElMzUlNjclLTE1JTkyJTYlODYlMjIlNiUzOCU3MCUtMTIyJS02NSUtMSUtOTYlNzQlLTIlLTMlMTAzJS04JS05JS0xMTMlMSUyNyUtODAlOTglMTIyJS01OCUyJS05NCUxMjclLTElNjUlLTEwNSUtMzElMTAwJTk5JS0xMTIlMTglMTAyJTEyMCUtMTAlLTEwNiUtMzElLTUlNDclMTAwJS0zMSUtODklMTAzJTc5JS04MCU5NiU1MyU5JS04OCUtNiUxMjclLTkwJTM5JS0xMTIlLTM0JTEyNiUtMTclLTEyMyUtNDElLTU4JS0xMDklMTIlNzklLTMzJTY2JS0xMjQlLTY1JTEyNCUtNyUtNTIlLTEyNCU2OSUtNzUlLTc4JTM2JS02MSUtNSU0NyUtNzAlLTg1JTE0JS00MSUzMCUtNjYlMTAyJTMzJTQxJS0xMiUtNjUlLTQ4JTk1JS01NyU3NiUyMSUzNCUtMTMlLTExNyUtMTE5JS0xMjMlOSUtMzklMjUlNTMlLTIlMjIlLTElMTIzJS0xMTAlNjQlMTAyJTExJS0xNCU5MiUxNCUtNzclNzclLTQ4JS0xMTElLTExNyUtMzUlMTE1JS0yJS0xMiUtNzclMTE5JTY0JTU0JS0xMjUlLTc2JTQ4JTgwJTklMTklMTUlNDclMTklOTIlLTExJS04NyU3NiUtODElMTAyJTkxJTQ1JTQwJS05JS0zOSU5MSUtOTYlMTMlLTE3JS02NiUtMSUtMzglLTMwJTEwNyUtMzQlMTIwJS0xMCUtMTAlLTUlLTE3JS02NSUtMTA2JS03MiUyNSUwJS0xMjMlLTElLTc4JS03OSU2NyU1MyUtOTIlLTM5JS0yMyUtMTA0JTc0JTklMzMlMTA4JS01JS0yJS0yMSUtNTQlLTg3JS0zNyUxMDIlLTQ1JS03MyUxJS0xMTUlLTk3JTEwNCUtOTMlLTM1JTExOSUtMjYlNzglLTc2JS03NCU2MCUtNDglODAlLTI2JTYzJTEyNyUtOTUlMjYlNTglMTA4JS05NiUxMDIlNzklNjAlMTE1JS0xMjElLTc5JTEyNyUzNSUtNTYlMjclOTYlMTA5JTczJTcxJS04MiU0MiUxMSUtMTQlMTA4JTEyMCUtMiUyMiUxOCUxOCU2MyUtMSUtMSUtMTIxJS0xMjIlLTExMCUzMiU0OCUyOCUtNjMlLTk2JTk2JS01MyUtODclMTE5JS0yNyUzMyU2NCU0NiUtNDglNzMlNjQlNzUlLTgyJTkyJTEyNiUtNTYlLTglLTEwJTExJTQ4JTEyJTI0JS04OSUxMTElNyUtNzAlLTEwOSUtOTklLTExMSUxNyUzNSU4OCUtNzElLTQwJTYzJS00JS00JTEzJS00NyUtNjUlNDUlLTUzJTExJTM0JTYlMTAlLTM5JS02OSUtNDklLTEyNyUtMTE2JS0xMTMlLTY1JTEyNyU2NyU1MyUwJS02NyU1JTgxJS0yOCUtODMlNDElLTkzJTUyJTEyNyUxNSUzJTclLTM3JTQlODMlODUlNzklMzclOSU4OCUtMTI0JS02NyUtMTIzJTI1JS01NyUzJS00MyU4MCUxMTMlLTI4JTI2JS00OCUyNyU2NiUxMSUtMTAlMiUtNDMlMSU2NyU2JS0zOSU3NCU5NiUxMDglMzIlNTYlMTA4JS04NCU4MCU3OSUtNDklLTM4JTEyMSUtMTglLTUwJS01JTQ3JTEwNSU0MiUtMTEwJS03JTM4JTQyJS01NiUtODYlLTEyNyUtOTUlLTQ0JS03OCUtMjElMjglLTEwMCU0MyUtNjQlLTU2JS0xMjglLTEyMCU1NiUtNzclLTY2JTEzJTE2JS03MyUtNjMlMjklLTEwMyUtNjYlLTUlMiU0OCUxMDAlLTExMSUtMTA5JTE5JS00NSUtMTclOTUlLTMyJS00NCU3NCU1MiU5NiUtNjclLTc5JTI3JTMyJS02NCUwJS0xJTglLTY3JS0zOCU5NiUtNzglMTQlLTExNSUwJTAlMCUwJTczJTY5JTc4JTY4JS04MiU2NiU5NiUtMTI2JSIgZm9ybWF0PSJQYXB5cnVzIiBsb2NhdGlvbj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMDdfc2Vuc29yX2RyaXZlci5wbmciPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX0syWjdrQTFFRWVLUFZOc01nVkx4bnciIHNvdXJjZT0iaW1hZ2VfcGFweXJ1cyI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfSzJaN2tRMUVFZUtQVk5zTWdWTHhudyIga2V5PSJpbWFnZV9raW5kX2tleSIgdmFsdWU9Imljb24iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvaWNvbj4KKyAgICA8aWNvbiB4bWk6dHlwZT0idW1sOkltYWdlIiB4bWk6aWQ9Il8yU3JMZ0VlMUVlTy03TGF2TXctR1p3IiBsb2NhdGlvbj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvc3ZnLzA3X3NlbnNvcl9kcml2ZXIuc3ZnIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgeG1pOnR5cGU9ImVjb3JlOkVBbm5vdGF0aW9uIiB4bWk6aWQ9Il8yU3JMZ1VlMUVlTy03TGF2TXctR1p3IiBzb3VyY2U9ImltYWdlX3BhcHlydXMiPgorICAgICAgICA8ZGV0YWlscyB4bWk6dHlwZT0iZWNvcmU6RVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIHhtaTppZD0iXzJTckxna2UxRWVPLTdMYXZNdy1HWnciIGtleT0iaW1hZ2Vfa2luZF9rZXkiIHZhbHVlPSJzaGFwZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9pY29uPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIHhtaTppZD0iX1pVaGhBRVhORWVHZTNNM05fODQ2cnciIG5hbWU9IlBoeXNpY2FsT2JqZWN0Ij4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfWTZEOFVFNERFZU9Ob2RFOTNXSm9WdyIgbmFtZT0iaGVpZ2h0IiB2aXNpYmlsaXR5PSJwdWJsaWMiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJSb2JvdE1MUGxhdGZvcm1MaWJyYXJpZXMudW1sI19xdVhtQUFINkVlQ19aTHpMUWhXLVRRIi8+CisgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9hSS1tZ0U0REVlT05vZEU5M1dKb1Z3IiB2YWx1ZT0iMSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfYUpkSG9FNERFZU9Ob2RFOTNXSm9WdyIgdmFsdWU9IjEiLz4KKyAgICAgIDxkZWZhdWx0VmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsU3RyaW5nIiB4bWk6aWQ9Il9hS3FCZ0U0REVlT05vZEU5M1dKb1Z3Ij4KKyAgICAgICAgPHZhbHVlIHhzaTpuaWw9InRydWUiLz4KKyAgICAgIDwvZGVmYXVsdFZhbHVlPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2JJTk80RTRERWVPTm9kRTkzV0pvVnciIG5hbWU9Im1hc3MiIHZpc2liaWxpdHk9InB1YmxpYyI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9IlJvYm90TUxQbGF0Zm9ybUxpYnJhcmllcy51bWwjX3F1WG1BQUg2RWVDX1pMekxRaFctVFEiLz4KKyAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2NLRVVnRTRERWVPTm9kRTkzV0pvVnciIHZhbHVlPSIxIi8+CisgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9jS2txMEU0REVlT05vZEU5M1dKb1Z3IiB2YWx1ZT0iMSIvPgorICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX2NMM3JVRTRERWVPTm9kRTkzV0pvVnciPgorICAgICAgICA8dmFsdWUgeHNpOm5pbD0idHJ1ZSIvPgorICAgICAgPC9kZWZhdWx0VmFsdWU+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfMVhkekVBQl9FZVctUXNqaEZQQ19nZyIgbmFtZT0iYmFzZV9DbGFzcyIgYXNzb2NpYXRpb249Il8xWGlFZ0FCX0VlVy1Rc2poRlBDX2dnIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNDbGFzcyIvPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfRDdXNUlFWFBFZUdlM00zTl84NDZydyIgbmFtZT0iRW52aXJvbm1lbnQiPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il8ycXgxRUFCX0VlVy1Rc2poRlBDX2dnIiBuYW1lPSJiYXNlX0NsYXNzIiBhc3NvY2lhdGlvbj0iXzJxekRNQUJfRWVXLVFzamhGUENfZ2ciPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL1VNTC5tZXRhbW9kZWwudW1sI0NsYXNzIi8+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il85SENsVUVYUkVlR2UzTTNOXzg0NnJ3IiBuYW1lPSJCdWlsZGluZyI+CisgICAgPGdlbmVyYWxpemF0aW9uIHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIHhtaTppZD0iX0ctUm8wRVhWRWVHZTNNM05fODQ2cnciIGdlbmVyYWw9Il9aVWhoQUVYTkVlR2UzTTNOXzg0NnJ3Ii8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfLUFRc1VFWFJFZUdlM00zTl84NDZydyIgbmFtZT0iQWdlbnQiPgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il9IdTJ4TUVYVkVlR2UzTTNOXzg0NnJ3IiBnZW5lcmFsPSJfWlVoaEFFWE5FZUdlM00zTl84NDZydyIvPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIHhtaTppZD0iX0ZpZkFRRVhWRWVHZTNNM05fODQ2cnciIG5hbWU9IlN1cmZhY2UiPgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il9Jc2pJZ0VYVkVlR2UzTTNOXzg0NnJ3IiBnZW5lcmFsPSJfWlVoaEFFWE5FZUdlM00zTl84NDZydyIvPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIHhtaTppZD0iX2xyVFcwRVhWRWVHZTNNM05fODQ2cnciIG5hbWU9IlBsYW5ldCI+CisgICAgPGdlbmVyYWxpemF0aW9uIHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIHhtaTppZD0iX210VU5jRVhWRWVHZTNNM05fODQ2cnciIGdlbmVyYWw9Il9aVWhoQUVYTkVlR2UzTTNOXzg0NnJ3Ii8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfb3R4Q1FFWFZFZUdlM00zTl84NDZydyIgbmFtZT0iTGFuZFN1cmZhY2UiPgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il9xVnhoNEVYVkVlR2UzTTNOXzg0NnJ3IiBnZW5lcmFsPSJfTERTT0FFWGpFZUdlM00zTl84NDZydyIvPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIHhtaTppZD0iXzVvQnhzRVhhRWVHZTNNM05fODQ2cnciIG5hbWU9IkZsb29yIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfQ2FqWFFFWGJFZUdlM00zTl84NDZydyIgZ2VuZXJhbD0iX0xEU09BRVhqRWVHZTNNM05fODQ2cnciLz4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il82cHZ0WUVYYUVlR2UzTTNOXzg0NnJ3IiBuYW1lPSJXYXRlclN1cmZhY2UiPgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il9EV0tENEVYYkVlR2UzTTNOXzg0NnJ3IiBnZW5lcmFsPSJfRmlmQVFFWFZFZUdlM00zTl84NDZydyIvPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIHhtaTppZD0iX1lzdzFFRVhiRWVHZTNNM05fODQ2cnciIG5hbWU9Ikh1bWFuIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfYm5vRHNFWGJFZUdlM00zTl84NDZydyIgZ2VuZXJhbD0iXy1BUXNVRVhSRWVHZTNNM05fODQ2cnciLz4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il9hSVFpc0VYYkVlR2UzTTNOXzg0NnJ3IiBuYW1lPSJQZWRlc3RyaWFuIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfY0laMWdFWGJFZUdlM00zTl84NDZydyIgZ2VuZXJhbD0iX1lzdzFFRVhiRWVHZTNNM05fODQ2cnciLz4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il9sX00wSUVYZUVlR2UzTTNOXzg0NnJ3IiBuYW1lPSJTdGFpcnMiPgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il9uTGZvSUVYZUVlR2UzTTNOXzg0NnJ3IiBnZW5lcmFsPSJfTERTT0FFWGpFZUdlM00zTl84NDZydyIvPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIHhtaTppZD0iX0xEU09BRVhqRWVHZTNNM05fODQ2cnciIG5hbWU9Ikdyb3VuZCIgaXNBYnN0cmFjdD0idHJ1ZSI+CisgICAgPGdlbmVyYWxpemF0aW9uIHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIHhtaTppZD0iX05feWJZRVhqRWVHZTNNM05fODQ2cnciIGdlbmVyYWw9Il9GaWZBUUVYVkVlR2UzTTNOXzg0NnJ3Ii8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfb21xT1FFYVJFZUcxUnZ4S2djRFptdyIgbmFtZT0iUGxhdGZvcm0iPgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il92d2JHUUVhUkVlRzFSdnhLZ2NEWm13IiBnZW5lcmFsPSJfR29wRndQY0pFZC1KMDZVNUhNX28tUSIvPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9yd0g1a0VhUkVlRzFSdnhLZ2NEWm13IiBuYW1lPSJiYXNlX05vZGUiIGFzc29jaWF0aW9uPSJfcndINWtVYVJFZUcxUnZ4S2djRFptdyI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvVU1MLm1ldGFtb2RlbC51bWwjTm9kZSIvPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX1lkdDBZTHZRRWVLdF82MVRFclJmdHciIG5hbWU9ImxpYnJhcnkiIHR5cGU9Il93NG85RUx2T0VlS3RfNjFURXJSZnR3Ij4KKyAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX2Q5WWlFTHZRRWVLdF82MVRFclJmdHciLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2Q5WWlFYnZRRWVLdF82MVRFclJmdHciIHZhbHVlPSIqIi8+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8aWNvbiB4bWk6dHlwZT0idW1sOkltYWdlIiB4bWk6aWQ9Il9JVUpjWUExVEVlS1BWTnNNZ1ZMeG53IiBjb250ZW50PSItMTE5JTgwJTc4JTcxJTEzJTEwJTI2JTEwJTAlMCUwJTEzJTczJTcyJTY4JTgyJTAlMCUwJTE2JTAlMCUwJTE2JTglMiUwJTAlMCUtMTEyJS0xMTElMTA0JTU0JTAlMCUwJTI1JTExNiU2OSU4OCUxMTYlODMlMTExJTEwMiUxMTYlMTE5JTk3JTExNCUxMDElMCU2NSUxMDAlMTExJTk4JTEwMSUzMiU3MyUxMDklOTclMTAzJTEwMSU4MiUxMDElOTclMTAwJTEyMSUxMTMlLTU1JTEwMSU2MCUwJTAlMSUtNDUlNzMlNjglNjUlODQlMTIwJS0zOCU5OCUtMjAlNjElMTE3JS0xMTclLTEyMyUtMTExJS0xNSUtOSUtNjUlLTElMTI3JS0xJS0xJTEwMyU5NiU5NiU5NiUxMDIlMTAwJTEwMCU5OCUxMDAlLTQlLTQ5JTAlOTglNjclMCUzNSUzJS0yOSUtNjUlLTElLTElLTEyNyUtMTI2JS05NyUxMjclLTElLTcxJS0xMiUtMjglNDElNzUlLTE1JS01NCUtNjElMTIlLTg0JTQ0JTEyJTc2JS0xMTYlMTIlMTI3JS0xJTY1JS0xMDclLTQlLTUlLTQ5JS0xNiUtMTclMzElMyU1NCU5NiUtNTklLTEyJS0xMTYlNSU2OCUtMSUtMiUtMTI1JTQ2JTM1JTQ1JS01MiUtMTYlLTMlMjMlLTYxJS02OSUtNDklMTA0JS02MiU3OSUtNDklLTk4JTk2JS02MiU1MiUzOCUtNTElLTM1JS0yNCUxMjclLTk1JS0xJS02OSU2NiUxMjclMTExJTEyMyUxMDklNTIlLTg3JTQ3JTk1JTYyJS03NyUtOTYlMjUlMTI0JTQyJS0zNiUtNDIlODQlNzQlOCUtNTYlMjAlLTI4JTEwMCUtMzclLTMwJTEwNyUtNjYlOTMlOTElLTM0JTEwNyUtNTklOTclLTcyJTg1JS02NSUtMTA0JTg4JTE2JTU0JTAlLTUxJTMlLTg2JTEyNiUtMTMlLTI5JS00MSUtMTAlMTIzJTQ3JS0xMjglLTM2JS05JS0zMyUxMjclNzclNjAlMTE1JS0yNSUtMzUlLTklLTk3JS04OSUxOCUtMTAwJS0zMSU4NiU0OSUtMTUlLTE2JTY2JTEwOSUtNDAlLTEwNiUtMjclLTI3JS04NyUzNiUtNjMlLTcyJTk2JS0zMyUtMSU0JS04OSUtMTIlLTM1JTIzJS0xMjglMzQlMjclLTE4JS02NiUtODAlLTEwOSUxOCUtMTE2JS00MiUtMTA2JTEwMyUtMTAwJS02NiUtMyUxMjclLTkwJTM5JS01NiUtODYlLTclMTIzJS0yJS03OCUtNzklNjclNTMlMTIwJTI5JS03MCUtMTAlNzglODIlMTA0JS0xMjYlLTExNCUyOCU4MCUtMTElLTc5JS05JS05NyU1OSUzNiUtNzUlNDQlMzYlLTEyMyU0MiUtMTE0JTkyJTU5JS0xMiUtMjAlLTMlMTglNTklNDUlLTk2JTEwOSU2NCU1JS02NCU5NiU5NiUtMiUtMTMlLTEwNSUtMTExJS05NSUxMjAlNDYlLTQ0JTc3JS0xMDAlMTA4JTc1JTM0JTEwOCUtMTI3JTcwJS05NCUxMjElMTE2JS0yMyUtNDMlLTEyMSU0OSU2NCUxMTElMCUzJS0xMTUlLTEyNyUtMTI3JS0yOSUtNDYlODYlLTkyJTgwJS02JS0yJTQzJTEwMiUtMiU5NCUtOTclLTUxJTM5JS0zMyUtMTI1JS0yNyUtMTI4JS0zMiUtMTglLTUlNDclNjQlLTklMCU1JTI1JTk2JTM0JS0yMCUtMTE2JS0xMTYlLTgwJTgwJTgyJS0xMDYlLTEyNCUtNDglOTElLTk3JS02OCUtNzclLTM3JTEyNCUtMTQlLTExMiUtODElLTclLTk5JS05JTk1JS01MiUxMTglOTMlNjQlLTEwNiU5OCUxMjAlLTEwJS0xMCUtMjklLTE3JS0zMyU0OCU3OSUtNjklMjclLTg2JTklLTE0JTQwJTExJS0xNCUwJTc3JS02NyUtMTElLTIlLTUzJS0xMTklLTI1JS0xNyU2NCUtMTI2JTExOCU5MCUxNiUtNjMlLTQ1JS00OSUtMzQlMSU2NyUtNDklMTA3JS0yOSU3MyU2JTQ2JTMwJS0xMDQlLTg5JS04OSUxMDklOTElLTExMCUtMjQlMTIlLTEwOCUzJS04NiU2JS03OCUtMzElLTUwJTEyNCUtNDElMjglMyUzNiU1NSUtMzUlMTI1JS00NyUtNzglLTE1JTQlLTEyMCUtNDklLTU4JS0xMTglLTE2JS02MSUtMTE1JTExOSU5NSUtMTI3JS0yOCUtNzklLTg5JS0xNyUtMTEyJTEyNSUxMiUxMTYlMjQlLTExMiU2MCUtMSUxJTI2JTExMyUyJS02NCUtMTA4JS0xMjAlOCUzNyUzNCUtMTI4JS00OCUtODMlNjElNzYlMTIlLTkyJS0xMjglLTQ5JS0xJS0yJTMlNCUyNCUwJTE1JTEwNiUtNTQlLTg0JTM0JTY4JTc5JS03MyUwJTAlMCUwJTczJTY5JTc4JTY4JS04MiU2NiU5NiUtMTI2JSIgZm9ybWF0PSJQYXB5cnVzIiBsb2NhdGlvbj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvaWNvbnMvMTZ4MTYvMDVfcm9ib3RpY19wbGF0Zm9ybS5wbmciPgorICAgICAgPGVBbm5vdGF0aW9ucyB4bWk6dHlwZT0iZWNvcmU6RUFubm90YXRpb24iIHhtaTppZD0iX1E1Mkc0QTFURWVLUFZOc01nVkx4bnciIHNvdXJjZT0iaW1hZ2VfcGFweXJ1cyI+CisgICAgICAgIDxkZXRhaWxzIHhtaTp0eXBlPSJlY29yZTpFU3RyaW5nVG9TdHJpbmdNYXBFbnRyeSIgeG1pOmlkPSJfUTUyRzRRMVRFZUtQVk5zTWdWTHhudyIga2V5PSJpbWFnZV9raW5kX2tleSIgdmFsdWU9Imljb24iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvaWNvbj4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpFeHRlbnNpb24iIHhtaTppZD0iX3J3SDVrVWFSRWVHMVJ2eEtnY0RabXciIG5hbWU9IkVfUGxhdGZvcm1fTm9kZTEiIG1lbWJlckVuZD0iX3J3SDVra2FSRWVHMVJ2eEtnY0RabXcgX3J3SDVrRWFSRWVHMVJ2eEtnY0RabXciPgorICAgIDxvd25lZEVuZCB4bWk6dHlwZT0idW1sOkV4dGVuc2lvbkVuZCIgeG1pOmlkPSJfcndINWtrYVJFZUcxUnZ4S2djRFptdyIgbmFtZT0iZXh0ZW5zaW9uX1BsYXRmb3JtIiB0eXBlPSJfb21xT1FFYVJFZUcxUnZ4S2djRFptdyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIgYXNzb2NpYXRpb249Il9yd0g1a1VhUkVlRzFSdnhLZ2NEWm13Ii8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfMEtwMTRFYVJFZUcxUnZ4S2djRFptdyIgbmFtZT0iUm9ib3RpY01pZGRsZXdhcmUiPgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il8zZXNaZ0VhUkVlRzFSdnhLZ2NEWm13IiBnZW5lcmFsPSJfb21xT1FFYVJFZUcxUnZ4S2djRFptdyIvPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9uQ25rY0VhWUVlRzFSdnhLZ2NEWm13IiBuYW1lPSJraW5kIiB0eXBlPSJfNTUtSklFYVJFZUcxUnZ4S2djRFptdyI+CisgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9zYTFtVUVhWUVlRzFSdnhLZ2NEWm13IiB2YWx1ZT0iMSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfc2JTU1FFYVlFZUcxUnZ4S2djRFptdyIgdmFsdWU9IjEiLz4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxpY29uIHhtaTp0eXBlPSJ1bWw6SW1hZ2UiIHhtaTppZD0iX29TMkE0QTFERWVLUFZOc01nVkx4bnciIGNvbnRlbnQ9Ii0xMTklODAlNzglNzElMTMlMTAlMjYlMTAlMCUwJTAlMTMlNzMlNzIlNjglODIlMCUwJTAlMTYlMCUwJTAlMTYlOCUyJTAlMCUwJS0xMTIlLTExMSUxMDQlNTQlMCUwJTAlMjUlMTE2JTY5JTg4JTExNiU4MyUxMTElMTAyJTExNiUxMTklOTclMTE0JTEwMSUwJTY1JTEwMCUxMTElOTglMTAxJTMyJTczJTEwOSU5NyUxMDMlMTAxJTgyJTEwMSU5NyUxMDAlMTIxJTExMyUtNTUlMTAxJTYwJTAlMCUyJTI1JTczJTY4JTY1JTg0JTEyMCUtMzglOTglLTIwJTYxJTExNyUtMTE3JS0xMjMlLTExMSUtMTUlLTklLTY1JS0xJTEyNyUtMSUtMSUxMDMlOTYlOTYlOTYlMTAyJTEwMCUxMDAlOTglMTAwJS00JS00OSUwJTk4JTY3JTAlMzUlMyUtMjklLTY1JS0xJS0xJS0xMjclLTEyNiUtOTclMTI3JS0xJS03MSUtMTIlLTI4JTQxJTc1JS0xNSUtNTQlLTYxJTEyJS04NCU0NCUxMiU3NiUtMTE2JTEyJTEyNyUtMSU2NSUtMTA3JS00JS01JS00OSUtMTYlLTE3JTMxJTMlNTQlOTYlLTU5JS0xMiUtMTE2JTUlNjglLTElLTIlLTYxJTY0JTI4JTEyMCUxMjIlLTEwJTQlMTElLTExOCUtMTI4JTE2JS0xNyU0JTU1JS02MSU1NiUxMDklNTclMzIlODMlLTExMiUtMTA5JS0xOSUtMyUtOSU5NSUyMSU3MSUtODIlLTUxJTU4JTExNiUtMTIzJS0zMSUtNSU0NyUtMTIwJS00JS0xMDUlNDclLTk3JS0xMTElNTIlNzIlMTElLTY1JS01MyUtMTYlLTEyNCUtODglMTIzJS05JTMlLTEyNCUtMTI0JTU2JS00MCU4MiUtNzYlLTI3JS0xMjglLTU2JTEyJS0yNCUtMjAlLTg5JTExMSUtMTI3JTc0JTEyNiU0OSUtNzklNDglNjUlODUlMTE1JS03OCU2NSU4NCUtOTclMTI2JS0xMCUxNCUtNTYlODMlMjIlLTI4JTElMzQlMzIlLTYxJTEwOCUtNDElLTEyMyUtOTIlMzUlODclNzklLTEyMyUtMzclNjYlODQlNDklLTE1JS0xNiU2NiUxMDklLTg4JTExMyU1MSUyJS0xMTAlMTE5JS0zMyUxMjclNDklLTEwNyUxOCUtMTI2JTkxJTklLTQ0JS0xJTYzJS02MyU5JTEwNCUtMTI0JS0xMTglMzIlLTExMyUtMTE0JS0xMDMlLTIyJS0xMDclODMlLTczJS0xJS03OCUtNzklNjclMTA5JS00OCUxNiUtMzAlNiUtMTEwJTkxJS0xOCUtNjYlNzIlLTMzJTEyNSUxJS04OCUxMyUzNCU1NiUtMTUlLTUyJTI5JTMyJS05JS01MSUxNSUtMTEyJTclODIlLTEwOCUzNiU2NSUtMTI3JS0yJS0yNSU0NyUzJTY3JS0xNSUtMzYlLTc2JTkzJS0yNSUtMSUtMSUtMSUtODElLTc3JS0xNCUtNDglLTExMCU0MyUxNSUtMTI4JTEyJS0xMjIlLTY2JTEzJTExOSUtMzQlMTI1JS04MiU1NyUxMTYlLTQzJTEyMyUtNDUlOSUxNiUxMTklLTIlLTM0JTgzJTc5JS0zMyUtNjYlLTUlLTEwJTE5JS04OCUtMTI4JS02MSU1MyU4JTEwMCUtMTI1JS05OSUtMTA4JTMyJS0xMTIlMTIlLTExMiUyMCUtNjYlLTE1JS0xOCUtMjElMTIzJTExMiUtMTI4JTAlNjElOTYlMzclNDUlLTEyJTE2JTIyJTU2JTY2JS0xMDAlMTA4JTY0JS0yNSU4OSU5JS0xNCUtNzglNTElNTAlNTAlNTElODglLTclLTgxJS02OSUxMTIlOTUlODAlLTEyMCU1NSUtNjElNjQlMTEzJS0yOSUtNjclMjMlOTclLTU3JTExMSUtOTglLTE0JTU1JS0xMDUlLTI2JS0yNyU4NCUyMSUtMjglLTMxJTEwMyU5NiUtMTA0JTEyMiUtMTUlLTYzJTExNiU3NSUxMTclMzIlLTczJS0xOSUtNjAlLTUxJS0yJS04MyUtODklMTI3JTYyJS02NyUtMTIyJTglODYlOTYlNTYlLTEwNiUtMTAzJS04OCUtNTIlMTE2JS0yNyUtMTI3JS0xMTclNjglMTA3JS01MyUzJTE3JS02MCU3NSUtMjUlNjMlMTI0JTYlOSUxMTMlLTE1JTY0JTYxJTkzJS04MCUtMjElNjAlNDglLTQ0JTg1JS05MCUxMTElLTgxJTYxJTEyNCUxMyUtODIlMSUtMjQlNjAlOTYlMTYlMSUtOTklNyU1MiUxMDclLTIxJS04NyUtMzclMzIlMzMlNTQlODYlLTEwNCUxMyUtMTclNjIlLTM3JTEwOSU2MiUxMjElNDIlLTYzJTI1JS01NiUtMTI0JS0xMjQlLTI5JTU5JTExMiUtMzIlMCU2NyUyNSUtODglNzclMTAxJS02MyU5NCU3MiUxMDAlMTElNDglNTAlNDglLTYzJS01MSUzJTYlNTElNDglNzAlLTEyNyUtMTI3JTglLTExOSUxMCU3MiUtMzYlMSU2NyU4NiUtODglMTI3JTM1JTM2JS0xMDIlNjUlMTclLTklLTUlMjMlMTA2JTkwJTEyMiUtNiUtNDIlMTA3JS0zOCU1NCU5NiUtODQlNTElNzIlOSUtMTI1JS03MiUtNDklLTM0JS02MiU4MyUxNyU0JTEyNCUtMiUtOSUzMSUzMiUtNjQlMCUtODYlLTExJS0xOSUtMTE5JS0yNiUtNDYlLTM3JTElMCUwJTAlMCU3MyU2OSU3OCU2OCUtODIlNjYlOTYlLTEyNiUiIGZvcm1hdD0iUGFweXJ1cyIgbG9jYXRpb249InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzA1X3JvYm90aWNfbWlkZGxld2FyZS5wbmciLz4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il8xcnpma0VhUkVlRzFSdnhLZ2NEWm13IiBuYW1lPSJSb2JvdGljU2ltdWxhdG9yIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfMzZRN01FYVJFZUcxUnZ4S2djRFptdyIgZ2VuZXJhbD0iX29tcU9RRWFSRWVHMVJ2eEtnY0RabXciLz4KKyAgICA8aWNvbiB4bWk6dHlwZT0idW1sOkltYWdlIiB4bWk6aWQ9Il8wdjd6c0ExREVlS1BWTnNNZ1ZMeG53IiBjb250ZW50PSItMTE5JTgwJTc4JTcxJTEzJTEwJTI2JTEwJTAlMCUwJTEzJTczJTcyJTY4JTgyJTAlMCUwJTE2JTAlMCUwJTE2JTglMiUwJTAlMCUtMTEyJS0xMTElMTA0JTU0JTAlMCUwJTI1JTExNiU2OSU4OCUxMTYlODMlMTExJTEwMiUxMTYlMTE5JTk3JTExNCUxMDElMCU2NSUxMDAlMTExJTk4JTEwMSUzMiU3MyUxMDklOTclMTAzJTEwMSU4MiUxMDElOTclMTAwJTEyMSUxMTMlLTU1JTEwMSU2MCUwJTAlMiU2MyU3MyU2OCU2NSU4NCUxMjAlLTM4JTk4JS0yMCU2MSUxMTclLTExNyUtMTIzJS0xMTElLTE1JS05JS02NSUtMSUxMjclLTElLTElMTAzJTk2JTk2JTk2JTEwMiUxMDAlMTAwJTk4JTEwMCUtNCUtNDklMCU5OCU2NyUwJTM1JTMlLTI5JS02NSUtMSUtMSUtMTI3JS0xMjYlLTk3JTEyNyUtMSUtNzElLTEyJS0yOCU0MSUzNSU2NyUtMTUlOTIlNiU4NiUyMiU2JTM4JTcwJS0xMjIlLTY1JS0xJS05NiU3NCUtMiUtMyUxMDMlLTglLTklLTExMyUxJTI3JS04MCU5OCUxMjIlLTU4JTIlLTk0JTEyNyUtMSU2NSUtMTIwJTExMyUtNzglLTkxJS0zOSUtMjMlLTEwOCUtMTAzJS04OCUtMzYlMTIyJS0xJS01OSUxMDclLTI1JTEyMSUtMTIyJS02OSUtNDklLTExMSU1MyU2MCU2MSUxMjMlLTEyNiU5JTY5JS04NyUtNjklLTQ3JS05OSUtOTQlMCUzMiU4MyUtOTElMTExJS0xMjUlLTQxJS0xMTglLTYxJTE5JTc2JTg1JS03MyUxMDElMTIxJTQ5JTQwJTc1JS02MiUtMTA3JTEyNCUtNyUtMTQlLTEwMyU1JS02MiUtNDYlNDklODMlLTM1JS0zMiUxMDYlLTQwJTExNyUtMjYlMTQlODAlNDElLTEyNSUtNzglLTQ0JS02OSUtODYlLTgwJTY5JTg3JTMxJTIxJTEwOCU2MCUtNjMlMzIlLTYwJS02OSUtNTElLTMzJS0xMDAlLTEyNyUtNjMlMTYlOTglLTM3JTQ3JTM4JTIyJS04MCUzMSUtMTA4JTM3JS0xMDUlLTQwJTEwNSUtNTklLTg0JTU2JTEyJS00NCU4OSUtMjklMTAyJS00NCUxMDglLTg1JTUlNDklLTI3JS0xOCUtNSU0NyU0MiU2NCU2NSUtOTYlLTg1JS0xMDglMzclLTczJS03MSUyNyUxMjIlNzclLTM3JS01OCUxMjclMTEzJTE5JS00NCUtMTIyJTY3JS00OSUtMzQlNTElNzIlOSUtMzMlLTExOSUtODAlODUlMjIlLTI4JS0xMjclNTklMCUtNTYlLTIlLTk3JS0yMyU4OSUxMjMlLTglOTAlLTUzJS04MiUxMTUlMTYlLTExMSUtNjUlMTA4JS0yMCU4MCUxMyU0MSUtMzglMTE0JTY0JS0xMTMlNDYlLTcyJS0xNCU4JTIwJTIwJS00NiU2NiUtOTglNzQlMTglNjQlLTI5JS0xMjclNDYlNCUxMTQlLTc1JTQlMTIxJS0xMjglMzAlMyUtMTIyJTElNDAlLTQ4JS0xJS00JTEwMSU5NiUxMDQlOTMlMTE3JS0yMiUtMjMlLTM3JS0xJS02NCU3MiUtMTA0JS03NCUxMyUtNTQlLTg4JTg5JTEyJTM2JTExNyU4NiUzMCUtMzglMTE4JS05JTU3JTY4JS00JS01MCUtNjklLTQ5JTY0JS0xMjIlLTklLTkwJTE5JTI4JS04MiU2NSUtNTIlMTIlLTEyMiUzMCUtMzAlOTglMiU3OCUtMTQlLTk0JS04NiU5MiUxMDglODMlLTgyJTYxJTEyMiUtMyUtNyUtNTclMTklNTQlLTI2JTQ0JTEwOSUxMjElODMlNjUlLTM0JS0xMDAlMTklNTUlMTI2JTEyNyUtMSUtNTElLTUyJS02MCUtMTEyJS05MyUtODElNCUtNzYlNDglMTE5JS0zMyUxMDElLTE4JS02OSUtMTA1JS0xMDQlMjUlLTg0JS00JTE1JS0zJS03JTExJTg0JS04MyUzOCUtNTYlLTIxJTMyJTM3JS01MiUtNTUlLTU0JS0zNiUxMDMlLTkzJTEzJS03NiU5MyUtMTAyJS0xMDUlNTElODIlNzMlLTE0JS01JS0zMyUtNjUlLTExJTIyJTI2JS0yMyUtNjklNDclLTEyMCUxMTQlLTc4JTQ1JS0zNSUxMTklLTIzJS0yNSUtNDUlMTA3JTc2JTExMiU3OSUtMTAxJS0xMSUxMDklLTQwJTExNiUtOSU1JS00OCUtMTElMTEyJTc5JTExJTExNCUtNzglLTExOSUxMTIlLTgwJTQ5JS0xMCUxMTElLTEwMCUtNzUlMTklLTIyJTEwNSU2JTQ2JTMwJS04MCUtMTIyJTMxJS02NSUtMTI4JS05OCU2JTcwJTY5JS01MyUtNTglMTklLTExNiUtNDUlLTczJS0zMyU1JS01JTE1JTglLTEyOCU2JTMlNzclOTclLTglLTIlMTA3JTY2JS0xMjQlLTM1JS04MyUxMTklOTYlNjUlNTQlODYlMTEyJTYwJS02NCU4MiU0JTgwJTkxJS00NiUtMTExJS04NSU4NyU0NiU2MyU0JS01OCU3MCUtNTMlLTEwMyUtMzclMzIlLTkxJTExMCUtMTIyJTg2JTgyJTY2JTEwMiUyNyU3OSU2NiUtNDYlLTEyMCUtNjQlLTMlNjclNDglMTMlNzIlOSU5JS05NCU0NSU2OSU3MyUtNDYlNzElODklMzQlOTYlLTklLTclNDMlLTg5JTExMCUtNjElLTI3JS0xMjMlMTEwJS0xOSU2NSUtNDMlMCUtNDUlNiUtNzYlOTclLTYxJS0xMyUtNzMlLTU2JTc0JTMzJS0xMjglLTExJS01OCUxMTAlLTEyOCUwJTMlMCU2MiU0NiUtNCUtODAlMyUtNjUlLTEwNiUtNzIlMCUwJTAlMCU3MyU2OSU3OCU2OCUtODIlNjYlOTYlLTEyNiUiIGZvcm1hdD0iUGFweXJ1cyIgbG9jYXRpb249InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzA0X3JvYm90aWNfc2ltdWxhdG9yLnBuZyI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfNFRWcEFBMURFZUtQVk5zTWdWTHhudyIgc291cmNlPSJpbWFnZV9wYXB5cnVzIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il80VFZwQVExREVlS1BWTnNNZ1ZMeG53IiBrZXk9ImltYWdlX2tpbmRfa2V5IiB2YWx1ZT0iaWNvbiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9pY29uPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uIiB4bWk6aWQ9Il81NS1KSUVhUkVlRzFSdnhLZ2NEWm13IiBuYW1lPSJSb2JvdGljTWlkZGxld2FyZUtpbmQiPgorICAgIDxvd25lZExpdGVyYWwgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIHhtaTppZD0iXzlJV0pvRWFSRWVHMVJ2eEtnY0RabXciIG5hbWU9IlJUTWFwcyIvPgorICAgIDxvd25lZExpdGVyYWwgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIHhtaTppZD0iX19tVFowRWFSRWVHMVJ2eEtnY0RabXciIG5hbWU9IkFST0NBTSIvPgorICAgIDxvd25lZExpdGVyYWwgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIHhtaTppZD0iX2Q0UXRzRWFZRWVHMVJ2eEtnY0RabXciIG5hbWU9IlJPUyIvPgorICAgIDxvd25lZExpdGVyYWwgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIHhtaTppZD0iX2g2eXZBRWFZRWVHMVJ2eEtnY0RabXciIG5hbWU9Ik9ST0NPUyIvPgorICAgIDxvd25lZExpdGVyYWwgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIHhtaTppZD0iX2p2ZVlzRWFZRWVHMVJ2eEtnY0RabXciIG5hbWU9IlVSQkkiLz4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il90d0U2OEVhWUVlRzFSdnhLZ2NEWm13IiBuYW1lPSJDeWNhYlRLIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfdThOOThFYVlFZUcxUnZ4S2djRFptdyIgZ2VuZXJhbD0iXzFyemZrRWFSRWVHMVJ2eEtnY0RabXciLz4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfd2NlMjBFYVlFZUcxUnZ4S2djRFptdyIgbmFtZT0idXNlUmVhbFRpbWUiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vVU1MX0xJQlJBUklFUy9VTUxQcmltaXRpdmVUeXBlcy5saWJyYXJ5LnVtbCNCb29sZWFuIi8+CisgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9HS2JGWUUycEVlRzNxWm9kM2FUcFVBIi8+CisgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9HSzN4VUUycEVlRzNxWm9kM2FUcFVBIiB2YWx1ZT0iMSIvPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iXzNja09ZRWFZRWVHMVJ2eEtnY0RabXciIG5hbWU9InRpbWVTdGVwIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfR19VdEVFMnBFZUczcVpvZDNhVHBVQSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfR194WkFFMnBFZUczcVpvZDNhVHBVQSIgdmFsdWU9IjEiLz4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il83RXVuNEVhWUVlRzFSdnhLZ2NEWm13IiBuYW1lPSJ0aW1lRmFjdG9yIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfSHJsV0lFMnBFZUczcVpvZDNhVHBVQSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfSHNDQ0VFMnBFZUczcVpvZDNhVHBVQSIgdmFsdWU9IjEiLz4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxpY29uIHhtaTp0eXBlPSJ1bWw6SW1hZ2UiIHhtaTppZD0iX0xuVHNzQTFIRWVLUFZOc01nVkx4bnciIGNvbnRlbnQ9Ii0xMTklODAlNzglNzElMTMlMTAlMjYlMTAlMCUwJTAlMTMlNzMlNzIlNjglODIlMCUwJTAlMTYlMCUwJTAlMTYlOCUyJTAlMCUwJS0xMTIlLTExMSUxMDQlNTQlMCUwJTAlMjUlMTE2JTY5JTg4JTExNiU4MyUxMTElMTAyJTExNiUxMTklOTclMTE0JTEwMSUwJTY1JTEwMCUxMTElOTglMTAxJTMyJTczJTEwOSU5NyUxMDMlMTAxJTgyJTEwMSU5NyUxMDAlMTIxJTExMyUtNTUlMTAxJTYwJTAlMCUxJTM4JTczJTY4JTY1JTg0JTEyMCUtMzglOTglLTIwJTYxJTExNyUtMTE3JS0xMjMlLTExMSUtMTUlLTklLTY1JS0xJTEyNyUtMSUtMSUxMDMlOTYlOTYlOTYlMTAyJTEwMCUxMDAlOTglMTAwJS00JS00OSUwJTk4JTY3JTAlMzUlMyUtMjklLTY1JS0xJS0xJS0xMjclLTEyNiUtOTclMTI3JS0xJS03MSUtMTIlLTI4JTQxJTc1JS0xNSUtNTQlLTYxJTEyJS04NCU0NCUxMiU3NiUtMTE2JTEyJTEyNyUtMSU2NSUtMTA3JS00JS01JS00OSUtMTYlLTE3JTMxJTMlNTQlOTYlLTU5JS0xMiUtMTE2JTUlNjglLTElLTIlLTYxJS05NiU0NCUtNTUlLTEyOCU3JS02OCUtMSUtNjIlLTE2JS0xOCU1MSUtMTEyJTEyNiUxMjIlLTEwJTQlMTElNjglLTI4JTEyNyUtOTAlMzklMzAlLTExJS0zNyUtMTclLTY3JS0xNiUtMTAyJS03NCUxMyUtNTYlLTglLTE0JS0yNyU1MSUxMSU4NiUyMSUtMTE2JS00NSUtNzMlNTElLTM2JTEyNSUxNCU5OCU0MSU3NSUzNCUtMTAxJS0xMSUtMTE3JS0xMTklLTEyMyUtMTE5JS0xMjclMjAlLTY0JS02MCUtNjElNzUlLTEwMiUtMTIyJS02NSUxMDglLTIwJS05MiUxMDUlOTYlLTIlLTEzJTIzJS02OSUzMSUtNjglMTAxJS0xMjQlLTc0JS02MiUyNCUtNTYlLTMwJTYzJS0xJS0xJS01NyUtODIlOTclLTExNyUtODElNTclODYlMTEzJTExOCU5NiUtNzYlLTExMCUtMjglLTkyJS0xMTMlLTY1JTEyNyUtNzclMzIlLTYyJTE3JTEyNyUtNjAlNjUlMCUyMyUxNSUxOSU5MiUtMjQlNzglLTEyNCU0NSU0OCUtNTYlNjUlLTExNCU2JS01OCUwJTE2JS02NyUtMSUtMTQlNDYlLTYzJTI1JTQwJS05NCUzNSUtNTIlMyUtMTE5JTEwMiUxNiU5NiU5OSUtMTIzJTEwNSUxNiUtMjglODElMjIlLTI4JTElLTQ2JS0zOSUtMzglLTE0JTE2JS0xMjclNTIlODMlODUlNjUlNzglNTQlMzIlLTkzJS01MyU2OCUyMSUxMTAlLTEwOSUwJTM1JTMlLTYyJS0xMjIlLTklLTMzJTEyNyUxJS0yMyU5OSU3OSUtMzMlNjUlNCUxMDIlLTk5JS02NiUxMyUxNyUtMTAzJTEyMiUtMTElMzMlMzQlLTMwJTEyNiUtMSU5OCUxMDAlNDAlLTk4JTc1JS02OCUtODklODklMTExJS0yMCU2JTglNDglMCUtMjQlODQlMTA0JS00NSUtOTklLTMxJS0yMyUtOTclMCUwJTAlMCU3MyU2OSU3OCU2OCUtODIlNjYlOTYlLTEyNiUiIGZvcm1hdD0iUGFweXJ1cyIgbG9jYXRpb249IiI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfTm1rT3NBMUhFZUtQVk5zTWdWTHhudyIgc291cmNlPSJpbWFnZV9wYXB5cnVzIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il9ObWtPc1ExSEVlS1BWTnNNZ1ZMeG53IiBrZXk9ImltYWdlX2tpbmRfa2V5IiB2YWx1ZT0iaWNvbiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9pY29uPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIHhtaTppZD0iX0JYTlNrRWFaRWVHMVJ2eEtnY0RabXciIG5hbWU9IkJsZW5kZXJNb3JzZSI+CisgICAgPGdlbmVyYWxpemF0aW9uIHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIHhtaTppZD0iX0NzSnNRRWFaRWVHMVJ2eEtnY0RabXciIGdlbmVyYWw9Il8xcnpma0VhUkVlRzFSdnhLZ2NEWm13Ii8+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX2wta3RJRTJoRWVHM3Fab2QzYVRwVUEiIG5hbWU9ImRlYnVnTW9kZSI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTElCUkFSSUVTL1VNTFByaW1pdGl2ZVR5cGVzLmxpYnJhcnkudW1sI0Jvb2xlYW4iLz4KKyAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0N3dC1vRTJwRWVHM3Fab2QzYVRwVUEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0N4S3FrRTJwRWVHM3Fab2QzYVRwVUEiIHZhbHVlPSIxIi8+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfc1pzV2NFMmhFZUczcVpvZDNhVHBVQSIgbmFtZT0iZGVidWdEaXNwbGF5Ij4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0icGF0aG1hcDovL1VNTF9MSUJSQVJJRVMvVU1MUHJpbWl0aXZlVHlwZXMubGlicmFyeS51bWwjQm9vbGVhbiIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfRGpyc29FMnBFZUczcVpvZDNhVHBVQSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfRGtJWWtFMnBFZUczcVpvZDNhVHBVQSIgdmFsdWU9IjEiLz4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il92WktfVUUyaEVlRzNxWm9kM2FUcFVBIiBuYW1lPSJncmF2aXR5Ij4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6UHJpbWl0aXZlVHlwZSIgaHJlZj0iUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfcXVYbUFBSDZFZUNfWkx6TFFoVy1UUSIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfRVVRMUFFMnBFZUczcVpvZDNhVHBVQSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfRVV0ZzhFMnBFZUczcVpvZDNhVHBVQSIgdmFsdWU9IjEiLz4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9ndXM4c0UybUVlRzNxWm9kM2FUcFVBIiBuYW1lPSIgdmlld3BvcnRfc2hhZGUiIHR5cGU9Il9uQkNkY0UybUVlRzNxWm9kM2FUcFVBIj4KKyAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0ZCYU80RTJwRWVHM3Fab2QzYVRwVUEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0ZDd1NzRTJwRWVHM3Fab2QzYVRwVUEiIHZhbHVlPSIxIi8+CisgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfY0plb2tFMm5FZUczcVpvZDNhVHBVQSIgbmFtZT0id2lyZWZyYW1lIiB2YWx1ZT0iV0lSRUZSQU1FIi8+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8aWNvbiB4bWk6dHlwZT0idW1sOkltYWdlIiB4bWk6aWQ9Il94UXAtZ0ExRkVlS1BWTnNNZ1ZMeG53IiBjb250ZW50PSItMTE5JTgwJTc4JTcxJTEzJTEwJTI2JTEwJTAlMCUwJTEzJTczJTcyJTY4JTgyJTAlMCUwJTE2JTAlMCUwJTE2JTglMiUwJTAlMCUtMTEyJS0xMTElMTA0JTU0JTAlMCUwJTI1JTExNiU2OSU4OCUxMTYlODMlMTExJTEwMiUxMTYlMTE5JTk3JTExNCUxMDElMCU2NSUxMDAlMTExJTk4JTEwMSUzMiU3MyUxMDklOTclMTAzJTEwMSU4MiUxMDElOTclMTAwJTEyMSUxMTMlLTU1JTEwMSU2MCUwJTAlMiU2MyU3MyU2OCU2NSU4NCUxMjAlLTM4JTk4JS0yMCU2MSUxMTclLTExNyUtMTIzJS0xMTElLTE1JS05JS02NSUtMSUxMjclLTElLTElMTAzJTk2JTk2JTk2JTEwMiUxMDAlMTAwJTk4JTEwMCUtNCUtNDklMCU5OCU2NyUwJTM1JTMlLTI5JS02NSUtMSUtMSUtMTI3JS0xMjYlLTk3JTEyNyUtMSUtNzElLTEyJS0yOCU0MSUzNSU2NyUtMTUlOTIlNiU4NiUyMiU2JTM4JTcwJS0xMjIlLTY1JS0xJS05NiU3NCUtMiUtMyUxMDMlLTglLTklLTExMyUxJTI3JS04MCU5OCUxMjIlLTU4JTIlLTk0JTEyNyUtMSU2NSUtMTIwJTExMyUtNzglLTkxJS0zOSUtMjMlLTEwOCUtMTAzJS04OCUtMzYlMTIyJS0xJS01OSUxMDclLTI1JTEyMSUtMTIyJS02OSUtNDklLTExMSU1MyU2MCU2MSUxMjMlLTEyNiU5JTY5JS04NyUtNjklLTQ3JS05OSUtOTQlMCUzMiU4MyUtOTElMTExJS0xMjUlLTQxJS0xMTglLTYxJTE5JTc2JTg1JS03MyUxMDElMTIxJTQ5JTQwJTc1JS02MiUtMTA3JTEyNCUtNyUtMTQlLTEwMyU1JS02MiUtNDYlNDklODMlLTM1JS0zMiUxMDYlLTQwJTExNyUtMjYlMTQlODAlNDElLTEyNSUtNzglLTQ0JS02OSUtODYlLTgwJTY5JTg3JTMxJTIxJTEwOCU2MCUtNjMlMzIlLTYwJS02OSUtNTElLTMzJS0xMDAlLTEyNyUtNjMlMTYlOTglLTM3JTQ3JTM4JTIyJS04MCUzMSUtMTA4JTM3JS0xMDUlLTQwJTEwNSUtNTklLTg0JTU2JTEyJS00NCU4OSUtMjklMTAyJS00NCUxMDglLTg1JTUlNDklLTI3JS0xOCUtNSU0NyU0MiU2NCU2NSUtOTYlLTg1JS0xMDglMzclLTczJS03MSUyNyUxMjIlNzclLTM3JS01OCUxMjclMTEzJTE5JS00NCUtMTIyJTY3JS00OSUtMzQlNTElNzIlOSUtMzMlLTExOSUtODAlODUlMjIlLTI4JS0xMjclNTklMCUtNTYlLTIlLTk3JS0yMyU4OSUxMjMlLTglOTAlLTUzJS04MiUxMTUlMTYlLTExMSUtNjUlMTA4JS0yMCU4MCUxMyU0MSUtMzglMTE0JTY0JS0xMTMlNDYlLTcyJS0xNCU4JTIwJTIwJS00NiU2NiUtOTglNzQlMTglNjQlLTI5JS0xMjclNDYlNCUxMTQlLTc1JTQlMTIxJS0xMjglMzAlMyUtMTIyJTElNDAlLTQ4JS0xJS00JTEwMSU5NiUxMDQlOTMlMTE3JS0yMiUtMjMlLTM3JS0xJS02NCU3MiUtMTA0JS03NCUxMyUtNTQlLTg4JTg5JTEyJTM2JTExNyU4NiUzMCUtMzglMTE4JS05JTU3JTY4JS00JS01MCUtNjklLTQ5JTY0JS0xMjIlLTklLTkwJTE5JTI4JS04MiU2NSUtNTIlMTIlLTEyMiUzMCUtMzAlOTglMiU3OCUtMTQlLTk0JS04NiU5MiUxMDglODMlLTgyJTYxJTEyMiUtMyUtNyUtNTclMTklNTQlLTI2JTQ0JTEwOSUxMjElODMlNjUlLTM0JS0xMDAlMTklNTUlMTI2JTEyNyUtMSUtNTElLTUyJS02MCUtMTEyJS05MyUtODElNCUtNzYlNDglMTE5JS0zMyUxMDElLTE4JS02OSUtMTA1JS0xMDQlMjUlLTg0JS00JTE1JS0zJS03JTExJTg0JS04MyUzOCUtNTYlLTIxJTMyJTM3JS01MiUtNTUlLTU0JS0zNiUxMDMlLTkzJTEzJS03NiU5MyUtMTAyJS0xMDUlNTElODIlNzMlLTE0JS01JS0zMyUtNjUlLTExJTIyJTI2JS0yMyUtNjklNDclLTEyMCUxMTQlLTc4JTQ1JS0zNSUxMTklLTIzJS0yNSUtNDUlMTA3JTc2JTExMiU3OSUtMTAxJS0xMSUxMDklLTQwJTExNiUtOSU1JS00OCUtMTElMTEyJTc5JTExJTExNCUtNzglLTExOSUxMTIlLTgwJTQ5JS0xMCUxMTElLTEwMCUtNzUlMTklLTIyJTEwNSU2JTQ2JTMwJS04MCUtMTIyJTMxJS02NSUtMTI4JS05OCU2JTcwJTY5JS01MyUtNTglMTklLTExNiUtNDUlLTczJS0zMyU1JS01JTE1JTglLTEyOCU2JTMlNzclOTclLTglLTIlMTA3JTY2JS0xMjQlLTM1JS04MyUxMTklOTYlNjUlNTQlODYlMTEyJTYwJS02NCU4MiU0JTgwJTkxJS00NiUtMTExJS04NSU4NyU0NiU2MyU0JS01OCU3MCUtNTMlLTEwMyUtMzclMzIlLTkxJTExMCUtMTIyJTg2JTgyJTY2JTEwMiUyNyU3OSU2NiUtNDYlLTEyMCUtNjQlLTMlNjclNDglMTMlNzIlOSU5JS05NCU0NSU2OSU3MyUtNDYlNzElODklMzQlOTYlLTklLTclNDMlLTg5JTExMCUtNjElLTI3JS0xMjMlMTEwJS0xOSU2NSUtNDMlMCUtNDUlNiUtNzYlOTclLTYxJS0xMyUtNzMlLTU2JTc0JTMzJS0xMjglLTExJS01OCUxMTAlLTEyOCUwJTMlMCU2MiU0NiUtNCUtODAlMyUtNjUlLTEwNiUtNzIlMCUwJTAlMCU3MyU2OSU3OCU2OCUtODIlNjYlOTYlLTEyNiUiIGZvcm1hdD0iUGFweXJ1cyIgbG9jYXRpb249InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzA0X3JvYm90aWNfc2ltdWxhdG9yLnBuZyI+CisgICAgICA8ZUFubm90YXRpb25zIHhtaTp0eXBlPSJlY29yZTpFQW5ub3RhdGlvbiIgeG1pOmlkPSJfeVowbUFBMUZFZUtQVk5zTWdWTHhudyIgc291cmNlPSJpbWFnZV9wYXB5cnVzIj4KKyAgICAgICAgPGRldGFpbHMgeG1pOnR5cGU9ImVjb3JlOkVTdHJpbmdUb1N0cmluZ01hcEVudHJ5IiB4bWk6aWQ9Il95WjBtQVExRkVlS1BWTnNNZ1ZMeG53IiBrZXk9ImltYWdlX2tpbmRfa2V5IiB2YWx1ZT0iaWNvbiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9pY29uPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uIiB4bWk6aWQ9Il9uQkNkY0UybUVlRzNxWm9kM2FUcFVBIiBuYW1lPSJTaGFkZSI+CisgICAgPG93bmVkTGl0ZXJhbCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgeG1pOmlkPSJfM05hbGNFMm1FZUczcVpvZDNhVHBVQSIgbmFtZT0iV0lSRUZSQU1FIi8+CisgICAgPG93bmVkTGl0ZXJhbCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgeG1pOmlkPSJfN1ZkWTRFMm1FZUczcVpvZDNhVHBVQSIgbmFtZT0iQk9VTkRCT1giLz4KKyAgICA8b3duZWRMaXRlcmFsIHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb25MaXRlcmFsIiB4bWk6aWQ9Il85Vzh2Z0UybUVlRzNxWm9kM2FUcFVBIiBuYW1lPSJTT0xJRCIvPgorICAgIDxvd25lZExpdGVyYWwgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIHhtaTppZD0iX0VNbVlzRTJuRWVHM3Fab2QzYVRwVUEiIG5hbWU9IlRFWFRVUkVEIi8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfcXVwMU1HTFBFZUd5QThoSzFNaGdCUSIgbmFtZT0iT25Qb3J0Ij4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfc0xNcnNHTFBFZUd5QThoSzFNaGdCUSIgbmFtZT0icG9ydCIgdHlwZT0iXzF0ZE4wR0JCRWVDVVFmM3ZwQUc2SkEiIGFzc29jaWF0aW9uPSJfc0xNcnMyTFBFZUd5QThoSzFNaGdCUSI+CisgICAgICA8bG93ZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxJbnRlZ2VyIiB4bWk6aWQ9Il9zTE1yc21MUEVlR3lBOGhLMU1oZ0JRIiB2YWx1ZT0iMSIvPgorICAgICAgPHVwcGVyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsVW5saW1pdGVkTmF0dXJhbCIgeG1pOmlkPSJfc0xNcnNXTFBFZUd5QThoSzFNaGdCUSIgdmFsdWU9IjEiLz4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il93NDgwUUdMUEVlR3lBOGhLMU1oZ0JRIiBuYW1lPSJiYXNlX1BhcmFtZXRlciIgYXNzb2NpYXRpb249Il93NDgwUVdMUEVlR3lBOGhLMU1oZ0JRIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNQYXJhbWV0ZXIiLz4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkFzc29jaWF0aW9uIiB4bWk6aWQ9Il9zTE1yczJMUEVlR3lBOGhLMU1oZ0JRIiBuYW1lPSJvblBvcnRfcG9ydF8xIiBtZW1iZXJFbmQ9Il9zTE1ydEdMUEVlR3lBOGhLMU1oZ0JRIF9zTE1yc0dMUEVlR3lBOGhLMU1oZ0JRIj4KKyAgICA8b3duZWRFbmQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfc0xNcnRHTFBFZUd5QThoSzFNaGdCUSIgbmFtZT0ib25Qb3J0IiB0eXBlPSJfcXVwMU1HTFBFZUd5QThoSzFNaGdCUSIgYXNzb2NpYXRpb249Il9zTE1yczJMUEVlR3lBOGhLMU1oZ0JRIj4KKyAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX3NMTXJ0bUxQRWVHeUE4aEsxTWhnQlEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX3NMTXJ0V0xQRWVHeUE4aEsxTWhnQlEiIHZhbHVlPSIqIi8+CisgICAgPC9vd25lZEVuZD4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpFeHRlbnNpb24iIHhtaTppZD0iX3c0ODBRV0xQRWVHeUE4aEsxTWhnQlEiIG5hbWU9IkVfT25Qb3J0X1BhcmFtZXRlcjEiIG1lbWJlckVuZD0iX3c0ODBRbUxQRWVHeUE4aEsxTWhnQlEgX3c0ODBRR0xQRWVHeUE4aEsxTWhnQlEiPgorICAgIDxvd25lZEVuZCB4bWk6dHlwZT0idW1sOkV4dGVuc2lvbkVuZCIgeG1pOmlkPSJfdzQ4MFFtTFBFZUd5QThoSzFNaGdCUSIgbmFtZT0iZXh0ZW5zaW9uX09uUG9ydCIgdHlwZT0iX3F1cDFNR0xQRWVHeUE4aEsxTWhnQlEiIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiIGFzc29jaWF0aW9uPSJfdzQ4MFFXTFBFZUd5QThoSzFNaGdCUSIvPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIHhtaTppZD0iX09zZVhJSTZ4RWVHZENlRkZKbHg4a0EiIG5hbWU9IkFsbG9jYXRlIj4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfbmRqRUVJNnhFZUdkQ2VGRkpseDhrQSIgbmFtZT0iYmFzZV9BYnN0cmFjdGlvbiIgYXNzb2NpYXRpb249Il9uZGpFRVk2eEVlR2RDZUZGSmx4OGtBIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNBYnN0cmFjdGlvbiIvPgorICAgIDwvb3duZWRBdHRyaWJ1dGU+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RXh0ZW5zaW9uIiB4bWk6aWQ9Il9uZGpFRVk2eEVlR2RDZUZGSmx4OGtBIiBuYW1lPSJFX0FsbG9jYXRlX0Fic3RyYWN0aW9uMSIgbWVtYmVyRW5kPSJfbmRqRUVvNnhFZUdkQ2VGRkpseDhrQSBfbmRqRUVJNnhFZUdkQ2VGRkpseDhrQSI+CisgICAgPG93bmVkRW5kIHhtaTp0eXBlPSJ1bWw6RXh0ZW5zaW9uRW5kIiB4bWk6aWQ9Il9uZGpFRW82eEVlR2RDZUZGSmx4OGtBIiBuYW1lPSJleHRlbnNpb25fQWxsb2NhdGUiIHR5cGU9Il9Pc2VYSUk2eEVlR2RDZUZGSmx4OGtBIiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIiBhc3NvY2lhdGlvbj0iX25kakVFWTZ4RWVHZENlRkZKbHg4a0EiLz4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il9jNjJmRURpZkVlS3J1ZkpxeFI2V2lnIiBuYW1lPSJJbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbSI+CisgICAgPGdlbmVyYWxpemF0aW9uIHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIHhtaTppZD0iX2h5SVhFRGlmRWVLcnVmSnF4UjZXaWciIGdlbmVyYWw9Il9LVHNQSUY3YkVlQ0doTFRqRURreGZnIi8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfcldIMTBEaWZFZUtydWZKcXhSNldpZyIgbmFtZT0iSW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfemRJWk1EaWZFZUtydWZKcXhSNldpZyIgZ2VuZXJhbD0iXzU4SEQwQUNZRWVHWEpPSnRXS244alEiLz4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il9KMkh0RURpakVlS3J1ZkpxeFI2V2lnIiBuYW1lPSJPZG9tZXRyeVN5c3RlbSI+CisgICAgPGdlbmVyYWxpemF0aW9uIHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIHhtaTppZD0iX01QNW40RGlqRWVLcnVmSnF4UjZXaWciIGdlbmVyYWw9Il8yQUlXY0FDWUVlR1hKT0p0V0tuOGpRIi8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfbFVBbGtEaWpFZUtydWZKcXhSNldpZyIgbmFtZT0iSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfOV8wX0VEaWpFZUtydWZKcXhSNldpZyIgZ2VuZXJhbD0iX2c3YmxzQUI1RWVHWEpPSnRXS244alEiLz4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il9xNGVjSUh3dEVlS2xEYkNMYUl6NnRnIiBuYW1lPSJEZXBsb3ltZW50UGxhbiI+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX3dYdHNBSHd0RWVLbERiQ0xhSXo2dGciIG5hbWU9ImJhc2VfUGFja2FnZSIgYXNzb2NpYXRpb249Il93WHRzQVh3dEVlS2xEYkNMYUl6NnRnIj4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNQYWNrYWdlIi8+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfaERwWklIdzZFZUtrM2FYLVBfb2tKdyIgbmFtZT0ibWFpbkluc3RhbmNlIiBhc3NvY2lhdGlvbj0iX2hEcFpJM3c2RWVLazNhWC1QX29rSnciPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpDbGFzcyIgaHJlZj0icGF0aG1hcDovL1VNTF9NRVRBTU9ERUxTL1VNTC5tZXRhbW9kZWwudW1sI0luc3RhbmNlU3BlY2lmaWNhdGlvbiIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfaERwWklYdzZFZUtrM2FYLVBfb2tKdyIgdmFsdWU9IjEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2hEcFpJbnc2RWVLazNhWC1QX29rSnciIHZhbHVlPSIxIi8+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpFeHRlbnNpb24iIHhtaTppZD0iX3dYdHNBWHd0RWVLbERiQ0xhSXo2dGciIG5hbWU9IkVfRGVwbG95bWVudFBsYW5fUGFja2FnZTEiIG1lbWJlckVuZD0iX3dYdHNBbnd0RWVLbERiQ0xhSXo2dGcgX3dYdHNBSHd0RWVLbERiQ0xhSXo2dGciPgorICAgIDxvd25lZEVuZCB4bWk6dHlwZT0idW1sOkV4dGVuc2lvbkVuZCIgeG1pOmlkPSJfd1h0c0Fud3RFZUtsRGJDTGFJejZ0ZyIgbmFtZT0iZXh0ZW5zaW9uX0RlcGxveW1lbnRQbGFuIiB0eXBlPSJfcTRlY0lId3RFZUtsRGJDTGFJejZ0ZyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIgYXNzb2NpYXRpb249Il93WHRzQVh3dEVlS2xEYkNMYUl6NnRnIi8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6QXNzb2NpYXRpb24iIHhtaTppZD0iX2hEcFpJM3c2RWVLazNhWC1QX29rSnciIG5hbWU9ImRlcGxveW1lbnRQbGFuX2luc3RhbmNlU3BlY2lmaWNhdGlvbl8xIiBtZW1iZXJFbmQ9Il9oRHBaSkh3NkVlS2szYVgtUF9va0p3IF9oRHBaSUh3NkVlS2szYVgtUF9va0p3Ij4KKyAgICA8b3duZWRFbmQgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfaERwWkpIdzZFZUtrM2FYLVBfb2tKdyIgbmFtZT0iZGVwbG95bWVudFBsYW4iIHR5cGU9Il9xNGVjSUh3dEVlS2xEYkNMYUl6NnRnIiBhc3NvY2lhdGlvbj0iX2hEcFpJM3c2RWVLazNhWC1QX29rSnciPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfaERwWkpYdzZFZUtrM2FYLVBfb2tKdyIgdmFsdWU9IjEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX2hEcFpKbnc2RWVLazNhWC1QX29rSnciIHZhbHVlPSIxIi8+CisgICAgPC9vd25lZEVuZD4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il94SzQ3TUozMEVlS1pRYzNWYlpuMkJnIiBuYW1lPSJHeXJvc2NvcGUiPgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il81ZjZGWUozMEVlS1pRYzNWYlpuMkJnIiBnZW5lcmFsPSJfS1RzUElGN2JFZUNHaExUakVEa3hmZyIvPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIHhtaTppZD0iX3c0bzlFTHZPRWVLdF82MVRFclJmdHciIG5hbWU9IkV4dGVybmFsTGlicmFyeSI+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX0RUZDVvTHZQRWVLdF82MVRFclJmdHciIG5hbWU9ImxpYlBhdGgiIHZpc2liaWxpdHk9InB1YmxpYyI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOlByaW1pdGl2ZVR5cGUiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTElCUkFSSUVTL1VNTFByaW1pdGl2ZVR5cGVzLmxpYnJhcnkudW1sI1N0cmluZyIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfRmRtMThMdlBFZUt0XzYxVEVyUmZ0dyIgdmFsdWU9IjEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX0ZkbTE4YnZQRWVLdF82MVRFclJmdHciIHZhbHVlPSIxIi8+CisgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfRmQ1dzRMdlBFZUt0XzYxVEVyUmZ0dyI+CisgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9INno0TUx2UEVlS3RfNjFURXJSZnR3IiBuYW1lPSJsaWJGaWxlRm9ybWF0IiB2aXNpYmlsaXR5PSJwdWJsaWMiPgorICAgICAgPHR5cGUgeG1pOnR5cGU9InVtbDpQcmltaXRpdmVUeXBlIiBocmVmPSJwYXRobWFwOi8vVU1MX0xJQlJBUklFUy9VTUxQcmltaXRpdmVUeXBlcy5saWJyYXJ5LnVtbCNTdHJpbmciLz4KKyAgICAgIDxsb3dlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbEludGVnZXIiIHhtaTppZD0iX0pXY3Z3THZQRWVLdF82MVRFclJmdHciIHZhbHVlPSIxIi8+CisgICAgICA8dXBwZXJWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiB4bWk6aWQ9Il9KV21nd0x2UEVlS3RfNjFURXJSZnR3IiB2YWx1ZT0iMSIvPgorICAgICAgPGRlZmF1bHRWYWx1ZSB4bWk6dHlwZT0idW1sOkxpdGVyYWxTdHJpbmciIHhtaTppZD0iX0pXd1J3THZQRWVLdF82MVRFclJmdHciIHZhbHVlPSJlbGYiLz4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9XX1Rxd0x2U0VlS3RfNjFURXJSZnR3IiBuYW1lPSJiYXNlX0ludGVyZmFjZSIgYXNzb2NpYXRpb249Il9XX1Rxd2J2U0VlS3RfNjFURXJSZnR3Ij4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNJbnRlcmZhY2UiLz4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkV4dGVuc2lvbiIgeG1pOmlkPSJfV19UcXdidlNFZUt0XzYxVEVyUmZ0dyIgbmFtZT0iRV9FeHRlcm5hbExpYnJhcnlfSW50ZXJmYWNlMSIgbWVtYmVyRW5kPSJfV19UcXdydlNFZUt0XzYxVEVyUmZ0dyBfV19UcXdMdlNFZUt0XzYxVEVyUmZ0dyI+CisgICAgPG93bmVkRW5kIHhtaTp0eXBlPSJ1bWw6RXh0ZW5zaW9uRW5kIiB4bWk6aWQ9Il9XX1Rxd3J2U0VlS3RfNjFURXJSZnR3IiBuYW1lPSJleHRlbnNpb25fRXh0ZXJuYWxMaWJyYXJ5IiB0eXBlPSJfdzRvOUVMdk9FZUt0XzYxVEVyUmZ0dyIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIgYXNzb2NpYXRpb249Il9XX1Rxd2J2U0VlS3RfNjFURXJSZnR3Ii8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfU2g3eGNMdmJFZUtGak9pUElDcVlUQSIgbmFtZT0iT25WYXJpYWJsZSI+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX1NoN3hjYnZiRWVLRmpPaVBJQ3FZVEEiIG5hbWU9InByb3BlcnR5Ij4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNQcm9wZXJ0eSIvPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfU2g3eGNydmJFZUtGak9pUElDcVlUQSIgdmFsdWU9IjEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX1NoN3hjN3ZiRWVLRmpPaVBJQ3FZVEEiIHZhbHVlPSIxIi8+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgICA8b3duZWRBdHRyaWJ1dGUgeG1pOnR5cGU9InVtbDpQcm9wZXJ0eSIgeG1pOmlkPSJfVnJleElIcjJFZVNjVVB3WHppRUlqQSIgbmFtZT0iYmFzZV9QYXJhbWV0ZXIiIGFzc29jaWF0aW9uPSJfVnJnbVVIcjJFZVNjVVB3WHppRUlqQSI+CisgICAgICA8dHlwZSB4bWk6dHlwZT0idW1sOkNsYXNzIiBocmVmPSJwYXRobWFwOi8vVU1MX01FVEFNT0RFTFMvVU1MLm1ldGFtb2RlbC51bWwjUGFyYW1ldGVyIi8+CisgICAgPC9vd25lZEF0dHJpYnV0ZT4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il9oQzM3MEJra0VlT29LS09KUEZHZEN3IiBuYW1lPSJDaGFzc2lzIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfa21pUDBCa2tFZU9vS0tPSlBGR2RDdyIgZ2VuZXJhbD0iX1YwYW80Qmt3RWVPb0tLT0pQRkdkQ3ciLz4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il85b21RQUJrdEVlT29LS09KUEZHZEN3IiBuYW1lPSJNZWNoYW5pY2FsTGlua2FnZSI+CisgICAgPGdlbmVyYWxpemF0aW9uIHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIHhtaTppZD0iX0EzZjA4Qmt1RWVPb0tLT0pQRkdkQ3ciIGdlbmVyYWw9Il9vckNVc0Y5aUVlQ1huSVFzbHh2djNBIi8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfRGNhQnNCa3VFZU9vS0tPSlBGR2RDdyIgbmFtZT0iTGVnIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfeVAwQWtCa3lFZU9vS0tPSlBGR2RDdyIgZ2VuZXJhbD0iX19rMFMwQmt5RWVPb0tLT0pQRkdkQ3ciLz4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfVG9pa01CbFJFZU9vS0tPSlBGR2RDdyIgZ2VuZXJhbD0iXzlvbVFBQmt0RWVPb0tLT0pQRkdkQ3ciLz4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il9WRGhNNEJrdkVlT29LS09KUEZHZEN3IiBuYW1lPSJBY3R1YXRvckhhcmR3YXJlIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfWU04YjhCa3ZFZU9vS0tPSlBGR2RDdyIgZ2VuZXJhbD0iX29yQ1VzRjlpRWVDWG5JUXNseHZ2M0EiLz4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il9WMGFvNEJrd0VlT29LS09KUEZHZEN3IiBuYW1lPSJTdXBwb3J0aW5nU3RydWN0dXJlIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfejdQU2dCa3dFZU9vS0tPSlBGR2RDdyIgZ2VuZXJhbD0iX29yQ1VzRjlpRWVDWG5JUXNseHZ2M0EiLz4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il9LYTBvZ0JreUVlT29LS09KUEZHZEN3IiBuYW1lPSJNb2JpbGVSb2JvdCI+CisgICAgPGdlbmVyYWxpemF0aW9uIHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIHhtaTppZD0iX2FXdGRjQmt5RWVPb0tLT0pQRkdkQ3ciIGdlbmVyYWw9Il9FZG5Zb1BjSkVkLUowNlU1SE1fby1RIi8+CisgICAgPG93bmVkQXR0cmlidXRlIHhtaTp0eXBlPSJ1bWw6UHJvcGVydHkiIHhtaTppZD0iX3BncS0wQmsxRWVPb0tLT0pQRkdkQ3ciIG5hbWU9ImtpbmQiIHZpc2liaWxpdHk9InB1YmxpYyIgdHlwZT0iX3lNNDlnQmswRWVPb0tLT0pQRkdkQ3ciPgorICAgICAgPGxvd2VyVmFsdWUgeG1pOnR5cGU9InVtbDpMaXRlcmFsSW50ZWdlciIgeG1pOmlkPSJfcW1ld1VCazFFZU9vS0tPSlBGR2RDdyIgdmFsdWU9IjEiLz4KKyAgICAgIDx1cHBlclZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFVubGltaXRlZE5hdHVyYWwiIHhtaTppZD0iX3FtMVZvQmsxRWVPb0tLT0pQRkdkQ3ciIHZhbHVlPSIxIi8+CisgICAgICA8ZGVmYXVsdFZhbHVlIHhtaTp0eXBlPSJ1bWw6TGl0ZXJhbFN0cmluZyIgeG1pOmlkPSJfcW5rVmNCazFFZU9vS0tPSlBGR2RDdyI+CisgICAgICAgIDx2YWx1ZSB4c2k6bmlsPSJ0cnVlIi8+CisgICAgICA8L2RlZmF1bHRWYWx1ZT4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIHhtaTppZD0iX05mc3V3Qmt5RWVPb0tLT0pQRkdkQ3ciIG5hbWU9Ik1hbmlwdWxhdG9yIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfYktyUkFCa3lFZU9vS0tPSlBGR2RDdyIgZ2VuZXJhbD0iX0VkbllvUGNKRWQtSjA2VTVITV9vLVEiLz4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il9XLXNfMEJreUVlT29LS09KUEZHZEN3IiBuYW1lPSJQaWxvdGVkU3lzdGVtIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfYjhvNWNCa3lFZU9vS0tPSlBGR2RDdyIgZ2VuZXJhbD0iX0VkbllvUGNKRWQtSjA2VTVITV9vLVEiLz4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il9fazBTMEJreUVlT29LS09KUEZHZEN3IiBuYW1lPSJMb2NvbW90aW9uSGFyZHdhcmUiPgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il9Oc2xWWUJsTUVlT29LS09KUEZHZEN3IiBnZW5lcmFsPSJfVkRoTTRCa3ZFZU9vS0tPSlBGR2RDdyIvPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uIiB4bWk6aWQ9Il95TTQ5Z0JrMEVlT29LS09KUEZHZEN3IiBuYW1lPSJNb2JpbGVSb2JvdEtpbmQiPgorICAgIDxvd25lZExpdGVyYWwgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIHhtaTppZD0iXzlMVHk0QmswRWVPb0tLT0pQRkdkQ3ciIG5hbWU9IkFpclZlaGljbGUiLz4KKyAgICA8b3duZWRMaXRlcmFsIHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb25MaXRlcmFsIiB4bWk6aWQ9Il9FS2pjOEJrMUVlT29LS09KUEZHZEN3IiBuYW1lPSJIeWJyaWRWZWhpY2xlIi8+CisgICAgPG93bmVkTGl0ZXJhbCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgeG1pOmlkPSJfRzZqZllCazFFZU9vS0tPSlBGR2RDdyIgbmFtZT0iU3VyZmFjZVZlaGljbGUiLz4KKyAgICA8b3duZWRMaXRlcmFsIHhtaTp0eXBlPSJ1bWw6RW51bWVyYXRpb25MaXRlcmFsIiB4bWk6aWQ9Il9KdDdsOEJrMUVlT29LS09KUEZHZEN3IiBuYW1lPSJVbmRlcndhdGVyVmVoaWNsZSIvPgorICAgIDxvd25lZExpdGVyYWwgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIHhtaTppZD0iX1ZiX0lnQmsxRWVPb0tLT0pQRkdkQ3ciIG5hbWU9IkNhckxpa2VWZWhpY2xlIi8+CisgICAgPG93bmVkTGl0ZXJhbCB4bWk6dHlwZT0idW1sOkVudW1lcmF0aW9uTGl0ZXJhbCIgeG1pOmlkPSJfWnRGeFVCazFFZU9vS0tPSlBGR2RDdyIgbmFtZT0iRGlmZmVyZW50aWFsVmVoaWNsZSIvPgorICAgIDxvd25lZExpdGVyYWwgeG1pOnR5cGU9InVtbDpFbnVtZXJhdGlvbkxpdGVyYWwiIHhtaTppZD0iX2hSbjV3QmsxRWVPb0tLT0pQRkdkQ3ciIG5hbWU9IkxlZ2dlZFZlaGljbGUiLz4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il9XcjRvSUJsTEVlT29LS09KUEZHZEN3IiBuYW1lPSJQb3dlckhhcmR3YXJlIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfWTFhZ2NCbExFZU9vS0tPSlBGR2RDdyIgZ2VuZXJhbD0iX29yQ1VzRjlpRWVDWG5JUXNseHZ2M0EiLz4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il9jOHZpTUJsTEVlT29LS09KUEZHZEN3IiBuYW1lPSJTZW5zb3JIYXJkd2FyZSI+CisgICAgPGdlbmVyYWxpemF0aW9uIHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIHhtaTppZD0iX2ZDSWhZQmxMRWVPb0tLT0pQRkdkQ3ciIGdlbmVyYWw9Il9vckNVc0Y5aUVlQ1huSVFzbHh2djNBIi8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfX1lrZE1CbExFZU9vS0tPSlBGR2RDdyIgbmFtZT0iR3Jhc3BpbmdIYXJkd2FyZSI+CisgICAgPGdlbmVyYWxpemF0aW9uIHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIHhtaTppZD0iX00zOWFnQmxNRWVPb0tLT0pQRkdkQ3ciIGdlbmVyYWw9Il9WRGhNNEJrdkVlT29LS09KUEZHZEN3Ii8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfMGYxbTBCbFFFZU9vS0tPSlBGR2RDdyIgbmFtZT0iU3RlZXJlZFdoZWVsSGFyZHdhcmUiPgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il8zRjk3a0JsUUVlT29LS09KUEZHZEN3IiBnZW5lcmFsPSJfX2swUzBCa3lFZU9vS0tPSlBGR2RDdyIvPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIHhtaTppZD0iX2RzRkZzQmxSRWVPb0tLT0pQRkdkQ3ciIG5hbWU9IkFybSIvPgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfbmU0VklCbFVFZU9vS0tPSlBGR2RDdyIgbmFtZT0iSm9pbnQiPgorICAgIDxvd25lZEF0dHJpYnV0ZSB4bWk6dHlwZT0idW1sOlByb3BlcnR5IiB4bWk6aWQ9Il9xUHMyOEJsVUVlT29LS09KUEZHZEN3IiBuYW1lPSJiYXNlX0Nvbm5lY3RvciIgYXNzb2NpYXRpb249Il9xUDhIZ0JsVUVlT29LS09KUEZHZEN3Ij4KKyAgICAgIDx0eXBlIHhtaTp0eXBlPSJ1bWw6Q2xhc3MiIGhyZWY9InBhdGhtYXA6Ly9VTUxfTUVUQU1PREVMUy9VTUwubWV0YW1vZGVsLnVtbCNDb25uZWN0b3IiLz4KKyAgICA8L293bmVkQXR0cmlidXRlPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOkV4dGVuc2lvbiIgeG1pOmlkPSJfcVA4SGdCbFVFZU9vS0tPSlBGR2RDdyIgbmFtZT0iRV9Kb2ludF9Db25uZWN0b3IxIiBtZW1iZXJFbmQ9Il9xUDhIZ1JsVUVlT29LS09KUEZHZEN3IF9xUHMyOEJsVUVlT29LS09KUEZHZEN3Ij4KKyAgICA8b3duZWRFbmQgeG1pOnR5cGU9InVtbDpFeHRlbnNpb25FbmQiIHhtaTppZD0iX3FQOEhnUmxVRWVPb0tLT0pQRkdkQ3ciIG5hbWU9ImV4dGVuc2lvbl9Kb2ludCIgdHlwZT0iX25lNFZJQmxVRWVPb0tLT0pQRkdkQ3ciIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiIGFzc29jaWF0aW9uPSJfcVA4SGdCbFVFZU9vS0tPSlBGR2RDdyIvPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIHhtaTppZD0iX0trbTIwQmxYRWVPb0tLT0pQRkdkQ3ciIG5hbWU9IkNvbXBsZXRlQm9uZGluZyI+CisgICAgPGdlbmVyYWxpemF0aW9uIHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIHhtaTppZD0iX1NVWFgwQmxYRWVPb0tLT0pQRkdkQ3ciIGdlbmVyYWw9Il9uZTRWSUJsVUVlT29LS09KUEZHZEN3Ii8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfTTkzTk1CbFhFZU9vS0tPSlBGR2RDdyIgbmFtZT0iQWN0dWF0ZWRKb2ludCI+CisgICAgPGdlbmVyYWxpemF0aW9uIHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIHhtaTppZD0iX1RQTjJnQmxYRWVPb0tLT0pQRkdkQ3ciIGdlbmVyYWw9Il9uZTRWSUJsVUVlT29LS09KUEZHZEN3Ii8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfbFJQSEFDbXBFZU9Od0xrLTlaTHFEQSIgbmFtZT0iTG9jb21vdGlvblN5c3RlbSI+CisgICAgPG93bmVkQ29tbWVudCB4bWk6dHlwZT0idW1sOkNvbW1lbnQiIHhtaTppZD0iX3ByYXpVQ21wRWVPTndMay05WkxxREEiIGFubm90YXRlZEVsZW1lbnQ9Il9sUlBIQUNtcEVlT053TGstOVpMcURBIj4KKyAgICAgIDxib2R5Pk1lY2hhbmljYWwgZGV2aWNlIGFzc29jaWF0ZWQgdG8gaXRzIERyaXZlciBmb3IgbW92aW5nIGEgTW9iaWxlIFJvYm90LiYjeEQ7CitJdCBpcyBvcGVyYXRlZCBieSBhIHNvdXJjZSBvZiBlbmVyZ3ksIHVzdWFsbHkgaW4gdGhlIGZvcm0gb2YgYW4gZWxlY3RyaWMgY3VycmVudCwgaHlkcmF1bGljIGZsdWlkIHByZXNzdXJlIG9yIHBuZXVtYXRpYyBwcmVzc3VyZSwgYW5kIGNvbnZlcnRzIHRoYXQgZW5lcmd5IGludG8gc29tZSBraW5kIG9mIG1vdGlvbiAobWVhbmluZyBwb3NpdGlvbiBvZiBncmF2aXR5IGNlbnRyZSBvZiB0aGUgUm9ib3QgdGhhdCBpcyB1c2luZyBpdCBoYXMgYmVlbiBjaGFuZ2VkIHNpZ25pZmljYXRpdmVseSB0aHJvdWdoIHRpbWUpLjwvYm9keT4KKyAgICA8L293bmVkQ29tbWVudD4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfNzJ4Y3NCdFNFZUdaQnFRTEsydFBSQSIgZ2VuZXJhbD0iX0hsVnlnRjdiRWVDR2hMVGpFRGt4ZmciLz4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il8wY2Z3UUNtcEVlT053TGstOVpMcURBIiBuYW1lPSJMZWdTeXN0ZW0iPgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il8zdkFDMENtcEVlT053TGstOVpMcURBIiBnZW5lcmFsPSJfbFJQSEFDbXBFZU9Od0xrLTlaTHFEQSIvPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIHhtaTppZD0iXzZzUDNFQ21wRWVPTndMay05WkxxREEiIG5hbWU9IkdyYXNwaW5nU3lzdGVtIj4KKyAgICA8b3duZWRDb21tZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgeG1pOmlkPSJfTDhWZTBDbXFFZU9Od0xrLTlaTHFEQSIgYW5ub3RhdGVkRWxlbWVudD0iXzZzUDNFQ21wRWVPTndMay05WkxxREEiPgorICAgICAgPGJvZHk+U3lzdGVtIG9mIGEgcm9ib3RpYyBwbGF0Zm9ybSB3aGljaCBjb3JyZXNwb25kIHdpdGggdGhlIHNvZnR3YXJlIGFuZCBoYXJkd2FyZSBvZiB0aGUgbWFuaXB1bGF0aW5nIGVmZmVjdG9ycyBvZiB0aGUgcm9ib3Q6IG1lY2hhbmljYWwgZmluZ2VycywgbWVjaGFuaWNhbCBhcm1zLCBncmFicyAuLi48L2JvZHk+CisgICAgPC9vd25lZENvbW1lbnQ+CisgICAgPGdlbmVyYWxpemF0aW9uIHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIHhtaTppZD0iXzlrcmN3Q21wRWVPTndMay05WkxxREEiIGdlbmVyYWw9Il9IbFZ5Z0Y3YkVlQ0doTFRqRURreGZnIi8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfeDFTRUlDbXVFZU9Od0xrLTlaTHFEQSIgbmFtZT0iV2VhcG9uU3lzdGVtIj4KKyAgICA8b3duZWRDb21tZW50IHhtaTp0eXBlPSJ1bWw6Q29tbWVudCIgeG1pOmlkPSJfUzdpNllDbXZFZU9Od0xrLTlaTHFEQSIgYW5ub3RhdGVkRWxlbWVudD0iX3gxU0VJQ211RWVPTndMay05WkxxREEiPgorICAgICAgPGJvZHk+U3lzdGVtIG9mIGEgcm9ib3RpYyBwbGF0Zm9ybSB3aGljaCBjb3JyZXNwb25kIHdpdGggdGhlIHNvZnR3YXJlIGFuZCBoYXJkd2FyZSBvZiB0aGUgd2VhcG9uIGNvbXBvbmVudHMgKGF0dGFjay1kZWZlbnNlKSBvZiAgYSByb2JvdC48L2JvZHk+CisgICAgPC9vd25lZENvbW1lbnQ+CisgICAgPGdlbmVyYWxpemF0aW9uIHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIHhtaTppZD0iXzI3RHJJQ211RWVPTndMay05WkxxREEiIGdlbmVyYWw9Il9IbFZ5Z0Y3YkVlQ0doTFRqRURreGZnIi8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfU3RtUVVFM1NFZU9Ob2RFOTNXSm9WdyIgbmFtZT0iQ3liZXJQaHlzaWNhbFN5c3RlbSI+CisgICAgPGdlbmVyYWxpemF0aW9uIHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIHhtaTppZD0iX1k0WEpjRTNTRWVPTm9kRTkzV0pvVnciIGdlbmVyYWw9Il9Hb3BGd1BjSkVkLUowNlU1SE1fby1RIi8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfMVdxV0VFM1NFZU9Ob2RFOTNXSm9WdyIgbmFtZT0iTWFuTWFjaGluZUludGVyZmFjZVN5c3RlbSI+CisgICAgPGdlbmVyYWxpemF0aW9uIHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIHhtaTppZD0iX1JrVFFnRTNURWVPTm9kRTkzV0pvVnciIGdlbmVyYWw9Il9TdG1RVUUzU0VlT05vZEU5M1dKb1Z3Ii8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfN2NiYWNFM1NFZU9Ob2RFOTNXSm9WdyIgbmFtZT0iQ2xvc2VkLUxvb3BDb250cm9sU3lzdGVtIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfVUFYcVVFM1RFZU9Ob2RFOTNXSm9WdyIgZ2VuZXJhbD0iX1N0bVFVRTNTRWVPTm9kRTkzV0pvVnciLz4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il9fTkpUQUUzU0VlT05vZEU5M1dKb1Z3IiBuYW1lPSJPcGVuLUxvb3BDb250cm9sU3lzdGVtIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfVlVrZElFM1RFZU9Ob2RFOTNXSm9WdyIgZ2VuZXJhbD0iX1N0bVFVRTNTRWVPTm9kRTkzV0pvVnciLz4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpTdGVyZW90eXBlIiB4bWk6aWQ9Il9yQllIMEUzVEVlT05vZEU5M1dKb1Z3IiBuYW1lPSJSb2JvdGljSGVhZCI+CisgICAgPGdlbmVyYWxpemF0aW9uIHhtaTp0eXBlPSJ1bWw6R2VuZXJhbGl6YXRpb24iIHhtaTppZD0iX3Z1Vm1NRTNURWVPTm9kRTkzV0pvVnciIGdlbmVyYWw9Il8xV3FXRUUzU0VlT05vZEU5M1dKb1Z3Ii8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6U3RlcmVvdHlwZSIgeG1pOmlkPSJfdFJpTWtFM1RFZU9Ob2RFOTNXSm9WdyIgbmFtZT0iTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0iPgorICAgIDxnZW5lcmFsaXphdGlvbiB4bWk6dHlwZT0idW1sOkdlbmVyYWxpemF0aW9uIiB4bWk6aWQ9Il93YS1Dc0UzVEVlT05vZEU5M1dKb1Z3IiBnZW5lcmFsPSJfMVdxV0VFM1NFZU9Ob2RFOTNXSm9WdyIvPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKyAgPHBhY2thZ2VkRWxlbWVudCB4bWk6dHlwZT0idW1sOlN0ZXJlb3R5cGUiIHhtaTppZD0iXzBRSmtnRTNURWVPTm9kRTkzV0pvVnciIG5hbWU9IkpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtIj4KKyAgICA8Z2VuZXJhbGl6YXRpb24geG1pOnR5cGU9InVtbDpHZW5lcmFsaXphdGlvbiIgeG1pOmlkPSJfMzRpQWNFM1RFZU9Ob2RFOTNXSm9WdyIgZ2VuZXJhbD0iX3RSaU1rRTNURWVPTm9kRTkzV0pvVnciLz4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpFeHRlbnNpb24iIHhtaTppZD0iX1ZyZ21VSHIyRWVTY1VQd1h6aUVJakEiIG5hbWU9IkVfT25WYXJpYWJsZV9QYXJhbWV0ZXIxIiBtZW1iZXJFbmQ9Il9WcmdtVVhyMkVlU2NVUHdYemlFSWpBIF9WcmV4SUhyMkVlU2NVUHdYemlFSWpBIj4KKyAgICA8b3duZWRFbmQgeG1pOnR5cGU9InVtbDpFeHRlbnNpb25FbmQiIHhtaTppZD0iX1ZyZ21VWHIyRWVTY1VQd1h6aUVJakEiIG5hbWU9ImV4dGVuc2lvbl9PblZhcmlhYmxlIiB0eXBlPSJfU2g3eGNMdmJFZUtGak9pUElDcVlUQSIgYWdncmVnYXRpb249ImNvbXBvc2l0ZSIgYXNzb2NpYXRpb249Il9WcmdtVUhyMkVlU2NVUHdYemlFSWpBIi8+CisgIDwvcGFja2FnZWRFbGVtZW50PgorICA8cGFja2FnZWRFbGVtZW50IHhtaTp0eXBlPSJ1bWw6RXh0ZW5zaW9uIiB4bWk6aWQ9Il8xWGlFZ0FCX0VlVy1Rc2poRlBDX2dnIiBuYW1lPSJFX1BoeXNpY2FsT2JqZWN0X0NsYXNzMSIgbWVtYmVyRW5kPSJfMVhpRWdRQl9FZVctUXNqaEZQQ19nZyBfMVhkekVBQl9FZVctUXNqaEZQQ19nZyI+CisgICAgPG93bmVkRW5kIHhtaTp0eXBlPSJ1bWw6RXh0ZW5zaW9uRW5kIiB4bWk6aWQ9Il8xWGlFZ1FCX0VlVy1Rc2poRlBDX2dnIiBuYW1lPSJleHRlbnNpb25fUGh5c2ljYWxPYmplY3QiIHR5cGU9Il9aVWhoQUVYTkVlR2UzTTNOXzg0NnJ3IiBhZ2dyZWdhdGlvbj0iY29tcG9zaXRlIiBhc3NvY2lhdGlvbj0iXzFYaUVnQUJfRWVXLVFzamhGUENfZ2ciLz4KKyAgPC9wYWNrYWdlZEVsZW1lbnQ+CisgIDxwYWNrYWdlZEVsZW1lbnQgeG1pOnR5cGU9InVtbDpFeHRlbnNpb24iIHhtaTppZD0iXzJxekRNQUJfRWVXLVFzamhGUENfZ2ciIG5hbWU9IkVfRW52aXJvbm1lbnRfQ2xhc3MxIiBtZW1iZXJFbmQ9Il8ycXpETVFCX0VlVy1Rc2poRlBDX2dnIF8ycXgxRUFCX0VlVy1Rc2poRlBDX2dnIj4KKyAgICA8b3duZWRFbmQgeG1pOnR5cGU9InVtbDpFeHRlbnNpb25FbmQiIHhtaTppZD0iXzJxekRNUUJfRWVXLVFzamhGUENfZ2ciIG5hbWU9ImV4dGVuc2lvbl9FbnZpcm9ubWVudCIgdHlwZT0iX0Q3VzVJRVhQRWVHZTNNM05fODQ2cnciIGFnZ3JlZ2F0aW9uPSJjb21wb3NpdGUiIGFzc29jaWF0aW9uPSJfMnF6RE1BQl9FZVctUXNqaEZQQ19nZyIvPgorICA8L3BhY2thZ2VkRWxlbWVudD4KKzwvdW1sOlByb2ZpbGU+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvbW9kZWwvYWN0dWF0aW9uLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9tb2RlbC9hY3R1YXRpb24ueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI0Yzg3ZTkKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvbW9kZWwvYWN0dWF0aW9uLnhtbApAQCAtMCwwICsxLDIyMCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cis8TWFjcm9QYWNrYWdlIHhtbG5zPSJodHRwOi8vc2NoZW1hcy5pbnRlbXBvcmEuY29tL1JUTWFwcy8yMDExL1JUTWFwc0ZpbGVzIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4c2k6c2NoZW1hTG9jYXRpb249Imh0dHA6Ly9zY2hlbWFzLmludGVtcG9yYS5jb20vUlRNYXBzLzIwMTEvUlRNYXBzRmlsZXMgaHR0cDovL3d3dy5pbnRlbXBvcmEuY29tL3NjaGVtYXMvUlRNYXBzLzIwMTEvUlRNYXBzRGlhZ3JhbS54c2QgaHR0cDovL3NjaGVtYXMuaW50ZW1wb3JhLmNvbS9SVE1hcHMvMjAxMS9SVE1hcHNGaWxlcyBodHRwOi8vd3d3LmludGVtcG9yYS5jb20vc2NoZW1hcy9SVE1hcHMvMjAxMS9SVE1hcHNEaWFncmFtX1JUQm9hcmRWaWV3LnhzZCI+CisgIDxSZXF1aXJlZFBhY2thZ2VzPgorICAgIDxGaWxlPjwhW0NEQVRBW0M6XFJUTWFwcyA0XHBhY2thZ2VzXHJ0bWFwc193aWZpYm90LnBja11dPgorICAgICAgPFJlbGF0aXZlPjwhW0NEQVRBWyVSVE1BUFNfSU5TVERJUiVccGFja2FnZXNccnRtYXBzX3dpZmlib3QucGNrXV0+PC9SZWxhdGl2ZT4KKyAgICA8L0ZpbGU+CisgIDwvUmVxdWlyZWRQYWNrYWdlcz4KKyAgPFJlcXVpcmVkTWFjcm9QYWNrYWdlcy8+CisgIDxNYWNyb0NvbXBvbmVudE1vZGVsIE1vZGVsPSJhY3R1YXRpb24iIFZlcnNpb249IiI+CisgICAgPENvbXBvbmVudCBJbnN0YW5jZU5hbWU9IlZlY3Rvcml6ZXJfNCIgTW9kZWw9IlZlY3Rvcml6ZXIiIHg9IjMxMiIgeT0iMjA4IiB6PSIwIj4KKyAgICAgIDxJbnB1dCBMb25nTmFtZT0iVmVjdG9yaXplcl80LmlucHV0MiIgTmFtZT0iaW5wdXQyIj4KKyAgICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJWZWN0b3JpemVyXzQuaW5wdXQyLnJlYWRlclR5cGUiIFR5cGU9IjEiPjQ8L1Byb3BlcnR5PgorICAgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IlZlY3Rvcml6ZXJfNC5pbnB1dDIuc3Vic2FtcGxpbmciIFR5cGU9IjEiPjE8L1Byb3BlcnR5PgorICAgICAgPC9JbnB1dD4KKyAgICAgIDxJbnB1dCBMb25nTmFtZT0iVmVjdG9yaXplcl80LmlucHV0MSIgTmFtZT0iaW5wdXQxIj4KKyAgICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJWZWN0b3JpemVyXzQuaW5wdXQxLnJlYWRlclR5cGUiIFR5cGU9IjEiPjQ8L1Byb3BlcnR5PgorICAgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IlZlY3Rvcml6ZXJfNC5pbnB1dDEuc3Vic2FtcGxpbmciIFR5cGU9IjEiPjE8L1Byb3BlcnR5PgorICAgICAgPC9JbnB1dD4KKyAgICAgIDxPdXRwdXQgTG9uZ05hbWU9IlZlY3Rvcml6ZXJfNC5vdXRwdXRJbnRlZ2VyNjQiIE5hbWU9Im91dHB1dEludGVnZXI2NCI+CisgICAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iVmVjdG9yaXplcl80Lm91dHB1dEludGVnZXI2NC5maWZvc2l6ZSIgVHlwZT0iMSI+MTY8L1Byb3BlcnR5PgorICAgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IlZlY3Rvcml6ZXJfNC5vdXRwdXRJbnRlZ2VyNjQucGVyaW9kaWMiIFR5cGU9IjAiPmZhbHNlPC9Qcm9wZXJ0eT4KKyAgICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJWZWN0b3JpemVyXzQub3V0cHV0SW50ZWdlcjY0LnN1YnNhbXBsaW5nIiBUeXBlPSIxIj4xPC9Qcm9wZXJ0eT4KKyAgICAgIDwvT3V0cHV0PgorICAgICAgPE91dHB1dCBMb25nTmFtZT0iVmVjdG9yaXplcl80Lm91dHB1dEludGVnZXIiIE5hbWU9Im91dHB1dEludGVnZXIiPgorICAgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IlZlY3Rvcml6ZXJfNC5vdXRwdXRJbnRlZ2VyLmZpZm9zaXplIiBUeXBlPSIxIj4xNjwvUHJvcGVydHk+CisgICAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iVmVjdG9yaXplcl80Lm91dHB1dEludGVnZXIucGVyaW9kaWMiIFR5cGU9IjAiPmZhbHNlPC9Qcm9wZXJ0eT4KKyAgICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJWZWN0b3JpemVyXzQub3V0cHV0SW50ZWdlci5zdWJzYW1wbGluZyIgVHlwZT0iMSI+MTwvUHJvcGVydHk+CisgICAgICA8L091dHB1dD4KKyAgICAgIDxPdXRwdXQgTG9uZ05hbWU9IlZlY3Rvcml6ZXJfNC5vdXRwdXRGbG9hdCIgTmFtZT0ib3V0cHV0RmxvYXQiPgorICAgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IlZlY3Rvcml6ZXJfNC5vdXRwdXRGbG9hdC5maWZvc2l6ZSIgVHlwZT0iMSI+MTY8L1Byb3BlcnR5PgorICAgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IlZlY3Rvcml6ZXJfNC5vdXRwdXRGbG9hdC5wZXJpb2RpYyIgVHlwZT0iMCI+ZmFsc2U8L1Byb3BlcnR5PgorICAgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IlZlY3Rvcml6ZXJfNC5vdXRwdXRGbG9hdC5zdWJzYW1wbGluZyIgVHlwZT0iMSI+MTwvUHJvcGVydHk+CisgICAgICA8L091dHB1dD4KKyAgICAgIDxPdXRwdXQgTG9uZ05hbWU9IlZlY3Rvcml6ZXJfNC5vdXRwdXRGbG9hdDMyIiBOYW1lPSJvdXRwdXRGbG9hdDMyIj4KKyAgICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJWZWN0b3JpemVyXzQub3V0cHV0RmxvYXQzMi5maWZvc2l6ZSIgVHlwZT0iMSI+MTY8L1Byb3BlcnR5PgorICAgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IlZlY3Rvcml6ZXJfNC5vdXRwdXRGbG9hdDMyLnBlcmlvZGljIiBUeXBlPSIwIj5mYWxzZTwvUHJvcGVydHk+CisgICAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iVmVjdG9yaXplcl80Lm91dHB1dEZsb2F0MzIuc3Vic2FtcGxpbmciIFR5cGU9IjEiPjE8L1Byb3BlcnR5PgorICAgICAgPC9PdXRwdXQ+CisgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IlZlY3Rvcml6ZXJfNC5uYklucHV0cyIgVHlwZT0iMSI+MjwvUHJvcGVydHk+CisgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IlZlY3Rvcml6ZXJfNC5zYW1wbGluZ01vZGUiIFR5cGU9IjQiPjwhW0NEQVRBWzZ8MXxTeW5jaHJvbml6ZWR8UGVyaW9kaWMgcmVzYW1wbGluZ3xBc3luY2hyb25vdXMgYXJyaXZhbCBvbiBhbnkgb2YgdGhlIGlucHV0c3xUcmlnZ2VyZWQgYnkgZmlyc3QgaW5wdXR8V2FpdCBmb3IgYXQgbGVhc3QgMSBhcnJpdmFsIG9uIGVhY2ggaW5wdXR8UGVyaW9kaWMgcmVzYW1wbGluZyB3aGlsZSBwb3N0LXByb2Nlc3NpbmddXT48L1Byb3BlcnR5PgorICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJWZWN0b3JpemVyXzQuc2FtcGxpbmdQZXJpb2QiIFR5cGU9IjEiPjUwMDAwPC9Qcm9wZXJ0eT4KKyAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iVmVjdG9yaXplcl80LnRocmVhZGVkIiBUeXBlPSIwIj50cnVlPC9Qcm9wZXJ0eT4KKyAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iVmVjdG9yaXplcl80LnByaW9yaXR5IiBUeXBlPSIxIj4xMjg8L1Byb3BlcnR5PgorICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJWZWN0b3JpemVyXzQuYXV0b1N0YXJ0IiBUeXBlPSIwIj5mYWxzZTwvUHJvcGVydHk+CisgICAgPC9Db21wb25lbnQ+CisgICAgPENvbXBvbmVudCBJbnN0YW5jZU5hbWU9IndpZmlib3Rfc2VyaWFsXzIiIE1vZGVsPSJ3aWZpYm90X3NlcmlhbCIgeD0iNDcyIiB5PSIxNjAiIHo9IjAiPgorICAgICAgPElucHV0IExvbmdOYW1lPSJ3aWZpYm90X3NlcmlhbF8yLmlsZWZ0X2FuZF9yaWdodF9zcGVlZHMiIE5hbWU9ImlsZWZ0X2FuZF9yaWdodF9zcGVlZHMiPgorICAgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IndpZmlib3Rfc2VyaWFsXzIuaWxlZnRfYW5kX3JpZ2h0X3NwZWVkcy5yZWFkZXJUeXBlIiBUeXBlPSIxIj4yPC9Qcm9wZXJ0eT4KKyAgICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJ3aWZpYm90X3NlcmlhbF8yLmlsZWZ0X2FuZF9yaWdodF9zcGVlZHMuc3Vic2FtcGxpbmciIFR5cGU9IjEiPjE8L1Byb3BlcnR5PgorICAgICAgPC9JbnB1dD4KKyAgICAgIDxJbnB1dCBMb25nTmFtZT0id2lmaWJvdF9zZXJpYWxfMi5pU3RyZWFtOCIgTmFtZT0iaVN0cmVhbTgiPgorICAgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IndpZmlib3Rfc2VyaWFsXzIuaVN0cmVhbTgucmVhZGVyVHlwZSIgVHlwZT0iMSI+MDwvUHJvcGVydHk+CisgICAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0id2lmaWJvdF9zZXJpYWxfMi5pU3RyZWFtOC5zdWJzYW1wbGluZyIgVHlwZT0iMSI+MTwvUHJvcGVydHk+CisgICAgICA8L0lucHV0PgorICAgICAgPE91dHB1dCBMb25nTmFtZT0id2lmaWJvdF9zZXJpYWxfMi5vZG9tZXRlcnNfbGVmdF9yaWdodCIgTmFtZT0ib2RvbWV0ZXJzX2xlZnRfcmlnaHQiPgorICAgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IndpZmlib3Rfc2VyaWFsXzIub2RvbWV0ZXJzX2xlZnRfcmlnaHQuZmlmb3NpemUiIFR5cGU9IjEiPjE2PC9Qcm9wZXJ0eT4KKyAgICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJ3aWZpYm90X3NlcmlhbF8yLm9kb21ldGVyc19sZWZ0X3JpZ2h0LnBlcmlvZGljIiBUeXBlPSIwIj5mYWxzZTwvUHJvcGVydHk+CisgICAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0id2lmaWJvdF9zZXJpYWxfMi5vZG9tZXRlcnNfbGVmdF9yaWdodC5zdWJzYW1wbGluZyIgVHlwZT0iMSI+MTwvUHJvcGVydHk+CisgICAgICA8L091dHB1dD4KKyAgICAgIDxPdXRwdXQgTG9uZ05hbWU9IndpZmlib3Rfc2VyaWFsXzIuY3VycmVudCIgTmFtZT0iY3VycmVudCI+CisgICAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0id2lmaWJvdF9zZXJpYWxfMi5jdXJyZW50LmZpZm9zaXplIiBUeXBlPSIxIj4xNjwvUHJvcGVydHk+CisgICAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0id2lmaWJvdF9zZXJpYWxfMi5jdXJyZW50LnBlcmlvZGljIiBUeXBlPSIwIj5mYWxzZTwvUHJvcGVydHk+CisgICAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0id2lmaWJvdF9zZXJpYWxfMi5jdXJyZW50LnN1YnNhbXBsaW5nIiBUeXBlPSIxIj4xPC9Qcm9wZXJ0eT4KKyAgICAgIDwvT3V0cHV0PgorICAgICAgPE91dHB1dCBMb25nTmFtZT0id2lmaWJvdF9zZXJpYWxfMi52ZXJzaW9uIiBOYW1lPSJ2ZXJzaW9uIj4KKyAgICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJ3aWZpYm90X3NlcmlhbF8yLnZlcnNpb24uZmlmb3NpemUiIFR5cGU9IjEiPjE2PC9Qcm9wZXJ0eT4KKyAgICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJ3aWZpYm90X3NlcmlhbF8yLnZlcnNpb24ucGVyaW9kaWMiIFR5cGU9IjAiPmZhbHNlPC9Qcm9wZXJ0eT4KKyAgICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJ3aWZpYm90X3NlcmlhbF8yLnZlcnNpb24uc3Vic2FtcGxpbmciIFR5cGU9IjEiPjE8L1Byb3BlcnR5PgorICAgICAgPC9PdXRwdXQ+CisgICAgICA8T3V0cHV0IExvbmdOYW1lPSJ3aWZpYm90X3NlcmlhbF8yLm9TdHJlYW04IiBOYW1lPSJvU3RyZWFtOCI+CisgICAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0id2lmaWJvdF9zZXJpYWxfMi5vU3RyZWFtOC5maWZvc2l6ZSIgVHlwZT0iMSI+MTY8L1Byb3BlcnR5PgorICAgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IndpZmlib3Rfc2VyaWFsXzIub1N0cmVhbTgucGVyaW9kaWMiIFR5cGU9IjAiPmZhbHNlPC9Qcm9wZXJ0eT4KKyAgICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJ3aWZpYm90X3NlcmlhbF8yLm9TdHJlYW04LnN1YnNhbXBsaW5nIiBUeXBlPSIxIj4xPC9Qcm9wZXJ0eT4KKyAgICAgIDwvT3V0cHV0PgorICAgICAgPE91dHB1dCBMb25nTmFtZT0id2lmaWJvdF9zZXJpYWxfMi5zcGVlZHNfbGVmdF9yaWdodCIgTmFtZT0ic3BlZWRzX2xlZnRfcmlnaHQiPgorICAgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IndpZmlib3Rfc2VyaWFsXzIuc3BlZWRzX2xlZnRfcmlnaHQuZmlmb3NpemUiIFR5cGU9IjEiPjE2PC9Qcm9wZXJ0eT4KKyAgICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJ3aWZpYm90X3NlcmlhbF8yLnNwZWVkc19sZWZ0X3JpZ2h0LnBlcmlvZGljIiBUeXBlPSIwIj5mYWxzZTwvUHJvcGVydHk+CisgICAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0id2lmaWJvdF9zZXJpYWxfMi5zcGVlZHNfbGVmdF9yaWdodC5zdWJzYW1wbGluZyIgVHlwZT0iMSI+MTwvUHJvcGVydHk+CisgICAgICA8L091dHB1dD4KKyAgICAgIDxPdXRwdXQgTG9uZ05hbWU9IndpZmlib3Rfc2VyaWFsXzIuYmF0dGVyeSIgTmFtZT0iYmF0dGVyeSI+CisgICAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0id2lmaWJvdF9zZXJpYWxfMi5iYXR0ZXJ5LmZpZm9zaXplIiBUeXBlPSIxIj4xNjwvUHJvcGVydHk+CisgICAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0id2lmaWJvdF9zZXJpYWxfMi5iYXR0ZXJ5LnBlcmlvZGljIiBUeXBlPSIwIj5mYWxzZTwvUHJvcGVydHk+CisgICAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0id2lmaWJvdF9zZXJpYWxfMi5iYXR0ZXJ5LnN1YnNhbXBsaW5nIiBUeXBlPSIxIj4xPC9Qcm9wZXJ0eT4KKyAgICAgIDwvT3V0cHV0PgorICAgICAgPE91dHB1dCBMb25nTmFtZT0id2lmaWJvdF9zZXJpYWxfMi5pbmZyYXJlZF9sZWZ0X3JpZ2h0IiBOYW1lPSJpbmZyYXJlZF9sZWZ0X3JpZ2h0Ij4KKyAgICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJ3aWZpYm90X3NlcmlhbF8yLmluZnJhcmVkX2xlZnRfcmlnaHQuZmlmb3NpemUiIFR5cGU9IjEiPjE2PC9Qcm9wZXJ0eT4KKyAgICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJ3aWZpYm90X3NlcmlhbF8yLmluZnJhcmVkX2xlZnRfcmlnaHQucGVyaW9kaWMiIFR5cGU9IjAiPmZhbHNlPC9Qcm9wZXJ0eT4KKyAgICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJ3aWZpYm90X3NlcmlhbF8yLmluZnJhcmVkX2xlZnRfcmlnaHQuc3Vic2FtcGxpbmciIFR5cGU9IjEiPjE8L1Byb3BlcnR5PgorICAgICAgPC9PdXRwdXQ+CisgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IndpZmlib3Rfc2VyaWFsXzIuaW5wdXRfbW9kZSIgVHlwZT0iNCI+PCFbQ0RBVEFbMnwwfFZlY3Rvcml6ZWR8TGVmdC9SaWdodCBzZXBhcmF0ZWRdXT48L1Byb3BlcnR5PgorICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJ3aWZpYm90X3NlcmlhbF8yLmNvbW1hbmRzX3NlbmRfcGVyaW9kIiBUeXBlPSIxIj4xMDAwMDwvUHJvcGVydHk+CisgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IndpZmlib3Rfc2VyaWFsXzIuY2xvc2VkX2xvb3Bfc3BlZWRfY29udHJvbCIgVHlwZT0iMCI+dHJ1ZTwvUHJvcGVydHk+CisgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IndpZmlib3Rfc2VyaWFsXzIucGlkX3NwZWVkIiBUeXBlPSI0Ij48IVtDREFUQVsyfDF8MTAgbXN8NTAgbXNdXT48L1Byb3BlcnR5PgorICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJ3aWZpYm90X3NlcmlhbF8yLnBJbnB1dEZJRk9TaXplIiBUeXBlPSIxIj4xMDAwPC9Qcm9wZXJ0eT4KKyAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0id2lmaWJvdF9zZXJpYWxfMi5wT3V0cHV0RklGT3NTaXplIiBUeXBlPSIxIj4xMDwvUHJvcGVydHk+CisgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IndpZmlib3Rfc2VyaWFsXzIudGhyZWFkZWQiIFR5cGU9IjAiPnRydWU8L1Byb3BlcnR5PgorICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJ3aWZpYm90X3NlcmlhbF8yLnByaW9yaXR5IiBUeXBlPSIxIj4xMjg8L1Byb3BlcnR5PgorICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJ3aWZpYm90X3NlcmlhbF8yLmF1dG9TdGFydCIgVHlwZT0iMCI+ZmFsc2U8L1Byb3BlcnR5PgorICAgIDwvQ29tcG9uZW50PgorICAgIDxDb21wb25lbnQgSW5zdGFuY2VOYW1lPSJTZXJpYWxQb3J0XzMiIE1vZGVsPSJTZXJpYWxQb3J0IiB4PSI1NjAiIHk9IjQwIiB6PSIwIj4KKyAgICAgIDxJbnB1dCBMb25nTmFtZT0iU2VyaWFsUG9ydF8zLnN0cmVhbUlucHV0IiBOYW1lPSJzdHJlYW1JbnB1dCI+CisgICAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iU2VyaWFsUG9ydF8zLnN0cmVhbUlucHV0LnJlYWRlclR5cGUiIFR5cGU9IjEiPjA8L1Byb3BlcnR5PgorICAgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IlNlcmlhbFBvcnRfMy5zdHJlYW1JbnB1dC5zdWJzYW1wbGluZyIgVHlwZT0iMSI+MTwvUHJvcGVydHk+CisgICAgICA8L0lucHV0PgorICAgICAgPElucHV0IExvbmdOYW1lPSJTZXJpYWxQb3J0XzMucnRzX3N0YXRlIiBOYW1lPSJydHNfc3RhdGUiPgorICAgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IlNlcmlhbFBvcnRfMy5ydHNfc3RhdGUucmVhZGVyVHlwZSIgVHlwZT0iMSI+MDwvUHJvcGVydHk+CisgICAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iU2VyaWFsUG9ydF8zLnJ0c19zdGF0ZS5zdWJzYW1wbGluZyIgVHlwZT0iMSI+MTwvUHJvcGVydHk+CisgICAgICA8L0lucHV0PgorICAgICAgPElucHV0IExvbmdOYW1lPSJTZXJpYWxQb3J0XzMuZHRyX3N0YXRlIiBOYW1lPSJkdHJfc3RhdGUiPgorICAgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IlNlcmlhbFBvcnRfMy5kdHJfc3RhdGUucmVhZGVyVHlwZSIgVHlwZT0iMSI+MDwvUHJvcGVydHk+CisgICAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iU2VyaWFsUG9ydF8zLmR0cl9zdGF0ZS5zdWJzYW1wbGluZyIgVHlwZT0iMSI+MTwvUHJvcGVydHk+CisgICAgICA8L0lucHV0PgorICAgICAgPE91dHB1dCBMb25nTmFtZT0iU2VyaWFsUG9ydF8zLnN0cmVhbU91dHB1dCIgTmFtZT0ic3RyZWFtT3V0cHV0Ij4KKyAgICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJTZXJpYWxQb3J0XzMuc3RyZWFtT3V0cHV0LmZpZm9zaXplIiBUeXBlPSIxIj4zMjwvUHJvcGVydHk+CisgICAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iU2VyaWFsUG9ydF8zLnN0cmVhbU91dHB1dC5wZXJpb2RpYyIgVHlwZT0iMCI+ZmFsc2U8L1Byb3BlcnR5PgorICAgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IlNlcmlhbFBvcnRfMy5zdHJlYW1PdXRwdXQuc3Vic2FtcGxpbmciIFR5cGU9IjEiPjE8L1Byb3BlcnR5PgorICAgICAgPC9PdXRwdXQ+CisgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IlNlcmlhbFBvcnRfMy5wb3J0IiBUeXBlPSIzIj48IVtDREFUQVtDT00xXV0+PC9Qcm9wZXJ0eT4KKyAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iU2VyaWFsUG9ydF8zLnVzZV9yaW5nIiBUeXBlPSIwIj5mYWxzZTwvUHJvcGVydHk+CisgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IlNlcmlhbFBvcnRfMy5iYXVkcmF0ZSIgVHlwZT0iNCI+PCFbQ0RBVEFbMTB8NXwxMTB8MzAwfDEyMDB8MjQwMHw0ODAwfDk2MDB8MTkyMDB8Mzg0MDB8NTc2MDB8MTE1MjAwXV0+PC9Qcm9wZXJ0eT4KKyAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iU2VyaWFsUG9ydF8zLnBhcml0eSIgVHlwZT0iNCI+PCFbQ0RBVEFbNXwwfE5vbmV8RXZlbnxPZGR8TWFya3xTcGFjZV1dPjwvUHJvcGVydHk+CisgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IlNlcmlhbFBvcnRfMy5zdG9wYml0cyIgVHlwZT0iNCI+PCFbQ0RBVEFbM3wwfDF8MnwxLDVdXT48L1Byb3BlcnR5PgorICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJTZXJpYWxQb3J0XzMuYnl0ZVNpemUiIFR5cGU9IjQiPjwhW0NEQVRBWzR8M3w1fDZ8N3w4XV0+PC9Qcm9wZXJ0eT4KKyAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iU2VyaWFsUG9ydF8zLmZsb3dDb250cm9sIiBUeXBlPSI0Ij48IVtDREFUQVszfDB8Tm9uZXxYb24vWG9mZnxIYXJkd2FyZSAoUlRTL0NUUyldXT48L1Byb3BlcnR5PgorICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJTZXJpYWxQb3J0XzMuWG9uQ2hhciIgVHlwZT0iMSI+MTc8L1Byb3BlcnR5PgorICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJTZXJpYWxQb3J0XzMuWG9mZkNoYXIiIFR5cGU9IjEiPjE5PC9Qcm9wZXJ0eT4KKyAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iU2VyaWFsUG9ydF8zLm1pbiIgVHlwZT0iMSI+NTA8L1Byb3BlcnR5PgorICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJTZXJpYWxQb3J0XzMud3RpbWUiIFR5cGU9IjEiPjEwMDAwPC9Qcm9wZXJ0eT4KKyAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iU2VyaWFsUG9ydF8zLnVzZV9ub25fc3RhbmRhcmRfYmF1ZHJhdGUiIFR5cGU9IjAiPmZhbHNlPC9Qcm9wZXJ0eT4KKyAgICAgIDxQcm9wZXJ0eSBMb25nTmFtZT0iU2VyaWFsUG9ydF8zLm5vbl9zdGFuZGFyZF9iYXVkcmF0ZSIgVHlwZT0iMSI+MTAwMDA8L1Byb3BlcnR5PgorICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJTZXJpYWxQb3J0XzMudmVyYm9zZSIgVHlwZT0iMCI+ZmFsc2U8L1Byb3BlcnR5PgorICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJTZXJpYWxQb3J0XzMudGhyZWFkZWQiIFR5cGU9IjAiPnRydWU8L1Byb3BlcnR5PgorICAgICAgPFByb3BlcnR5IExvbmdOYW1lPSJTZXJpYWxQb3J0XzMucHJpb3JpdHkiIFR5cGU9IjEiPjI1NTwvUHJvcGVydHk+CisgICAgICA8UHJvcGVydHkgTG9uZ05hbWU9IlNlcmlhbFBvcnRfMy5hdXRvU3RhcnQiIFR5cGU9IjAiPmZhbHNlPC9Qcm9wZXJ0eT4KKyAgICA8L0NvbXBvbmVudD4KKyAgICA8Q29ubmVjdGlvbiBJbnB1dD0id2lmaWJvdF9zZXJpYWxfMi5pbGVmdF9hbmRfcmlnaHRfc3BlZWRzIiBPdXRwdXQ9IlZlY3Rvcml6ZXJfNC5vdXRwdXRJbnRlZ2VyIi8+CisgICAgPENvbm5lY3Rpb24gSW5wdXQ9IndpZmlib3Rfc2VyaWFsXzIuaVN0cmVhbTgiIE91dHB1dD0iU2VyaWFsUG9ydF8zLnN0cmVhbU91dHB1dCIvPgorICAgIDxDb25uZWN0aW9uIElucHV0PSJTZXJpYWxQb3J0XzMuc3RyZWFtSW5wdXQiIE91dHB1dD0id2lmaWJvdF9zZXJpYWxfMi5vU3RyZWFtOCIvPgorICAgIDxJbnB1dCBOYW1lPSJsZWZ0X21vdG9yX2N0bCIgVGFyZ2V0PSJWZWN0b3JpemVyXzQuaW5wdXQxIi8+CisgICAgPElucHV0IE5hbWU9InJpZ2h0X21vdG9yX2N0bCIgVGFyZ2V0PSJWZWN0b3JpemVyXzQuaW5wdXQyIi8+CisgICAgPFJUQm9hcmRWaWV3IElEPSJKYXZhU3R1ZGlvMS4wIj4KKyAgICAgIDxEZXNjcmlwdGlvbi8+CisgICAgICA8Q29tcG9uZW50Qm94IEluc3RhbmNlTmFtZT0iVmVjdG9yaXplcl80IiByZXZlcnNlZD0iZmFsc2UiPgorICAgICAgICA8RGVzY3JpcHRpb24vPgorICAgICAgICA8SW5wdXRJbmZvcyBOYW1lPSJpbnB1dDIiPgorICAgICAgICAgIDxEZXNjcmlwdGlvbi8+CisgICAgICAgIDwvSW5wdXRJbmZvcz4KKyAgICAgICAgPElucHV0SW5mb3MgTmFtZT0iaW5wdXQxIj4KKyAgICAgICAgICA8RGVzY3JpcHRpb24vPgorICAgICAgICA8L0lucHV0SW5mb3M+CisgICAgICAgIDxPdXRwdXRJbmZvcyBOYW1lPSJvdXRwdXRJbnRlZ2VyNjQiPgorICAgICAgICAgIDxEZXNjcmlwdGlvbi8+CisgICAgICAgIDwvT3V0cHV0SW5mb3M+CisgICAgICAgIDxPdXRwdXRJbmZvcyBOYW1lPSJvdXRwdXRJbnRlZ2VyIj4KKyAgICAgICAgICA8RGVzY3JpcHRpb24vPgorICAgICAgICA8L091dHB1dEluZm9zPgorICAgICAgICA8T3V0cHV0SW5mb3MgTmFtZT0ib3V0cHV0RmxvYXQiPgorICAgICAgICAgIDxEZXNjcmlwdGlvbi8+CisgICAgICAgIDwvT3V0cHV0SW5mb3M+CisgICAgICAgIDxPdXRwdXRJbmZvcyBOYW1lPSJvdXRwdXRGbG9hdDMyIj4KKyAgICAgICAgICA8RGVzY3JpcHRpb24vPgorICAgICAgICA8L091dHB1dEluZm9zPgorICAgICAgPC9Db21wb25lbnRCb3g+CisgICAgICA8Q29tcG9uZW50Qm94IEluc3RhbmNlTmFtZT0id2lmaWJvdF9zZXJpYWxfMiIgcmV2ZXJzZWQ9ImZhbHNlIj4KKyAgICAgICAgPERlc2NyaXB0aW9uLz4KKyAgICAgICAgPElucHV0SW5mb3MgTmFtZT0iaWxlZnRfYW5kX3JpZ2h0X3NwZWVkcyI+CisgICAgICAgICAgPERlc2NyaXB0aW9uLz4KKyAgICAgICAgPC9JbnB1dEluZm9zPgorICAgICAgICA8SW5wdXRJbmZvcyBOYW1lPSJpU3RyZWFtOCI+CisgICAgICAgICAgPERlc2NyaXB0aW9uLz4KKyAgICAgICAgPC9JbnB1dEluZm9zPgorICAgICAgICA8T3V0cHV0SW5mb3MgTmFtZT0ib2RvbWV0ZXJzX2xlZnRfcmlnaHQiPgorICAgICAgICAgIDxEZXNjcmlwdGlvbi8+CisgICAgICAgIDwvT3V0cHV0SW5mb3M+CisgICAgICAgIDxPdXRwdXRJbmZvcyBOYW1lPSJjdXJyZW50Ij4KKyAgICAgICAgICA8RGVzY3JpcHRpb24vPgorICAgICAgICA8L091dHB1dEluZm9zPgorICAgICAgICA8T3V0cHV0SW5mb3MgTmFtZT0idmVyc2lvbiI+CisgICAgICAgICAgPERlc2NyaXB0aW9uLz4KKyAgICAgICAgPC9PdXRwdXRJbmZvcz4KKyAgICAgICAgPE91dHB1dEluZm9zIE5hbWU9Im9TdHJlYW04Ij4KKyAgICAgICAgICA8RGVzY3JpcHRpb24vPgorICAgICAgICA8L091dHB1dEluZm9zPgorICAgICAgICA8T3V0cHV0SW5mb3MgTmFtZT0ic3BlZWRzX2xlZnRfcmlnaHQiPgorICAgICAgICAgIDxEZXNjcmlwdGlvbi8+CisgICAgICAgIDwvT3V0cHV0SW5mb3M+CisgICAgICAgIDxPdXRwdXRJbmZvcyBOYW1lPSJiYXR0ZXJ5Ij4KKyAgICAgICAgICA8RGVzY3JpcHRpb24vPgorICAgICAgICA8L091dHB1dEluZm9zPgorICAgICAgICA8T3V0cHV0SW5mb3MgTmFtZT0iaW5mcmFyZWRfbGVmdF9yaWdodCI+CisgICAgICAgICAgPERlc2NyaXB0aW9uLz4KKyAgICAgICAgPC9PdXRwdXRJbmZvcz4KKyAgICAgIDwvQ29tcG9uZW50Qm94PgorICAgICAgPENvbXBvbmVudEJveCBJbnN0YW5jZU5hbWU9IlNlcmlhbFBvcnRfMyIgcmV2ZXJzZWQ9ImZhbHNlIj4KKyAgICAgICAgPERlc2NyaXB0aW9uLz4KKyAgICAgICAgPElucHV0SW5mb3MgTmFtZT0ic3RyZWFtSW5wdXQiPgorICAgICAgICAgIDxEZXNjcmlwdGlvbi8+CisgICAgICAgIDwvSW5wdXRJbmZvcz4KKyAgICAgICAgPElucHV0SW5mb3MgTmFtZT0icnRzX3N0YXRlIj4KKyAgICAgICAgICA8RGVzY3JpcHRpb24vPgorICAgICAgICA8L0lucHV0SW5mb3M+CisgICAgICAgIDxJbnB1dEluZm9zIE5hbWU9ImR0cl9zdGF0ZSI+CisgICAgICAgICAgPERlc2NyaXB0aW9uLz4KKyAgICAgICAgPC9JbnB1dEluZm9zPgorICAgICAgICA8T3V0cHV0SW5mb3MgTmFtZT0ic3RyZWFtT3V0cHV0Ij4KKyAgICAgICAgICA8RGVzY3JpcHRpb24vPgorICAgICAgICA8L091dHB1dEluZm9zPgorICAgICAgPC9Db21wb25lbnRCb3g+CisgICAgICA8SW5wdXRCb3ggSW5zdGFuY2VOYW1lPSJyaWdodF9tb3Rvcl9jdGwiIHJldmVyc2VkPSJmYWxzZSIgeD0iMTUyIiB5PSIyOTYiIHo9Ii0xIj4KKyAgICAgICAgPERlc2NyaXB0aW9uLz4KKyAgICAgIDwvSW5wdXRCb3g+CisgICAgICA8SW5wdXRCb3ggSW5zdGFuY2VOYW1lPSJsZWZ0X21vdG9yX2N0bCIgcmV2ZXJzZWQ9ImZhbHNlIiB4PSIxNTIiIHk9IjEzNiIgej0iLTEiPgorICAgICAgICA8RGVzY3JpcHRpb24vPgorICAgICAgPC9JbnB1dEJveD4KKyAgICAgIDxDb25uZWN0aW9uU2hhcGUgSW5zdGFuY2VOYW1lPSJ3aWZpYm90X3NlcmlhbF8yLmlsZWZ0X2FuZF9yaWdodF9zcGVlZHMiIGNvbG9yPSIwIi8+CisgICAgICA8Q29ubmVjdGlvblNoYXBlIEluc3RhbmNlTmFtZT0id2lmaWJvdF9zZXJpYWxfMi5pU3RyZWFtOCIgY29sb3I9IjAiLz4KKyAgICAgIDxDb25uZWN0aW9uU2hhcGUgSW5zdGFuY2VOYW1lPSJTZXJpYWxQb3J0XzMuc3RyZWFtSW5wdXQiIGNvbG9yPSIwIi8+CisgICAgPC9SVEJvYXJkVmlldz4KKyAgPC9NYWNyb0NvbXBvbmVudE1vZGVsPgorPC9NYWNyb1BhY2thZ2U+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvbW9kZWwvZWNvcmUuZWNvcmUgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvbW9kZWwvZWNvcmUuZWNvcmUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzZjOTNkMgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9tb2RlbC9lY29yZS5lY29yZQpAQCAtMCwwICsxLDQ3NSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxlY29yZTpFUGFja2FnZSB4bWk6dmVyc2lvbj0iMi4wIiB4bWxuczp4bWk9Imh0dHA6Ly93d3cub21nLm9yZy9YTUkiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiCisgICAgeG1sbnM6ZWNvcmU9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUiIG5hbWU9ImVjb3JlIiBuc1VSST0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSIgbnNQcmVmaXg9ImVjb3JlIj4KKyAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgIDxkZXRhaWxzIGtleT0ib3JpZ2luYWxOYW1lIiB2YWx1ZT0iRWNvcmUiLz4KKyAgPC9lQW5ub3RhdGlvbnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRUFubm90YXRpb24iIGVTdXBlclR5cGVzPSIjLy9FTW9kZWxFbGVtZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSI+CisgICAgICA8ZGV0YWlscyBrZXk9ImNvbnN0cmFpbnRzIiB2YWx1ZT0iV2VsbEZvcm1lZFNvdXJjZVVSSSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJzb3VyY2UiIGVUeXBlPSIjLy9FU3RyaW5nIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImRldGFpbHMiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vRVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIGNvbnRhaW5tZW50PSJ0cnVlIiByZXNvbHZlUHJveGllcz0iZmFsc2UiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZU1vZGVsRWxlbWVudCIgZVR5cGU9IiMvL0VNb2RlbEVsZW1lbnQiCisgICAgICAgIHRyYW5zaWVudD0idHJ1ZSIgcmVzb2x2ZVByb3hpZXM9ImZhbHNlIiBlT3Bwb3NpdGU9IiMvL0VNb2RlbEVsZW1lbnQvZUFubm90YXRpb25zIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImNvbnRlbnRzIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL0VPYmplY3QiIGNvbnRhaW5tZW50PSJ0cnVlIiByZXNvbHZlUHJveGllcz0iZmFsc2UiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVmZXJlbmNlcyIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9FT2JqZWN0Ii8+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IkVTdHJpbmciIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLmxhbmcuU3RyaW5nIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovLy9vcmcvZWNsaXBzZS9lbWYvZWNvcmUvdXRpbC9FeHRlbmRlZE1ldGFEYXRhIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iYmFzZVR5cGUiIHZhbHVlPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSNzdHJpbmciLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRVN0cmluZ1RvU3RyaW5nTWFwRW50cnkiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuTWFwJEVudHJ5Ij4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ia2V5IiBlVHlwZT0iIy8vRVN0cmluZyIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJ2YWx1ZSIgZVR5cGU9IiMvL0VTdHJpbmciLz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRU9iamVjdCI+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImVDbGFzcyIgZVR5cGU9IiMvL0VDbGFzcyIvPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJlSXNQcm94eSIgZVR5cGU9IiMvL0VCb29sZWFuIi8+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImVSZXNvdXJjZSIgZVR5cGU9IiMvL0VSZXNvdXJjZSIvPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJlQ29udGFpbmVyIiBlVHlwZT0iIy8vRU9iamVjdCIvPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJlQ29udGFpbmluZ0ZlYXR1cmUiIGVUeXBlPSIjLy9FU3RydWN0dXJhbEZlYXR1cmUiLz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZUNvbnRhaW5tZW50RmVhdHVyZSIgZVR5cGU9IiMvL0VSZWZlcmVuY2UiLz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZUNvbnRlbnRzIiBlVHlwZT0iIy8vRU9iamVjdF9FRUxpc3RfRU9iamVjdCIvPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJlQWxsQ29udGVudHMiIGVUeXBlPSIjLy9FT2JqZWN0X0VUcmVlSXRlcmF0b3JfRU9iamVjdCIvPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJlQ3Jvc3NSZWZlcmVuY2VzIiBlVHlwZT0iIy8vRU9iamVjdF9FRUxpc3RfRU9iamVjdCIvPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJlR2V0IiBlVHlwZT0iIy8vRUphdmFPYmplY3QiPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImZlYXR1cmUiIGVUeXBlPSIjLy9FU3RydWN0dXJhbEZlYXR1cmUiLz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJlR2V0IiBlVHlwZT0iIy8vRUphdmFPYmplY3QiPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImZlYXR1cmUiIGVUeXBlPSIjLy9FU3RydWN0dXJhbEZlYXR1cmUiLz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJyZXNvbHZlIiBlVHlwZT0iIy8vRUJvb2xlYW4iLz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJlU2V0Ij4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJmZWF0dXJlIiBlVHlwZT0iIy8vRVN0cnVjdHVyYWxGZWF0dXJlIi8+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibmV3VmFsdWUiIGVUeXBlPSIjLy9FSmF2YU9iamVjdCIvPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImVJc1NldCIgZVR5cGU9IiMvL0VCb29sZWFuIj4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJmZWF0dXJlIiBlVHlwZT0iIy8vRVN0cnVjdHVyYWxGZWF0dXJlIi8+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZVVuc2V0Ij4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJmZWF0dXJlIiBlVHlwZT0iIy8vRVN0cnVjdHVyYWxGZWF0dXJlIi8+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRUNsYXNzIiBlU3VwZXJUeXBlcz0iIy8vRUNsYXNzaWZpZXIiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iY29uc3RyYWludHMiIHZhbHVlPSJJbnRlcmZhY2VJc0Fic3RyYWN0IEF0TW9zdE9uZUlEIFVuaXF1ZUZlYXR1cmVOYW1lcyBVbmlxdWVPcGVyYXRpb25TaWduYXR1cmVzIE5vQ2lyY3VsYXJTdXBlclR5cGVzIFdlbGxGb3JtZWRNYXBFbnRyeUNsYXNzIENvbnNpc3RlbnRTdXBlclR5cGVzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzU3VwZXJUeXBlT2YiIGVUeXBlPSIjLy9FQm9vbGVhbiI+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ic29tZUNsYXNzIiBlVHlwZT0iIy8vRUNsYXNzIi8+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0RmVhdHVyZUNvdW50IiBlVHlwZT0iIy8vRUludCIvPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRFU3RydWN0dXJhbEZlYXR1cmUiIGVUeXBlPSIjLy9FU3RydWN0dXJhbEZlYXR1cmUiPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImZlYXR1cmVJRCIgZVR5cGU9IiMvL0VJbnQiLz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRGZWF0dXJlSUQiIGVUeXBlPSIjLy9FSW50Ij4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJmZWF0dXJlIiBlVHlwZT0iIy8vRVN0cnVjdHVyYWxGZWF0dXJlIi8+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0RVN0cnVjdHVyYWxGZWF0dXJlIiBlVHlwZT0iIy8vRVN0cnVjdHVyYWxGZWF0dXJlIj4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJmZWF0dXJlTmFtZSIgZVR5cGU9IiMvL0VTdHJpbmciLz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJhYnN0cmFjdCIgZVR5cGU9IiMvL0VCb29sZWFuIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImludGVyZmFjZSIgZVR5cGU9IiMvL0VCb29sZWFuIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImVTdXBlclR5cGVzIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL0VDbGFzcyIgdW5zZXR0YWJsZT0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZElzU2V0VmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVW5zZXRWaXNpYmlsaXR5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlT3BlcmF0aW9ucyIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9FT3BlcmF0aW9uIiBjb250YWlubWVudD0idHJ1ZSIgcmVzb2x2ZVByb3hpZXM9ImZhbHNlIiBlT3Bwb3NpdGU9IiMvL0VPcGVyYXRpb24vZUNvbnRhaW5pbmdDbGFzcyIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlQWxsQXR0cmlidXRlcyIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9FQXR0cmlidXRlIiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIKKyAgICAgICAgZGVyaXZlZD0idHJ1ZSIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlU3RydWN0dXJhbEZlYXR1cmVzIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL0VTdHJ1Y3R1cmFsRmVhdHVyZSIgY29udGFpbm1lbnQ9InRydWUiIHJlc29sdmVQcm94aWVzPSJmYWxzZSIgZU9wcG9zaXRlPSIjLy9FU3RydWN0dXJhbEZlYXR1cmUvZUNvbnRhaW5pbmdDbGFzcyIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlQWxsUmVmZXJlbmNlcyIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9FUmVmZXJlbmNlIiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIKKyAgICAgICAgZGVyaXZlZD0idHJ1ZSIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlUmVmZXJlbmNlcyIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9FUmVmZXJlbmNlIiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIKKyAgICAgICAgZGVyaXZlZD0idHJ1ZSIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlQXR0cmlidXRlcyIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9FQXR0cmlidXRlIiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIKKyAgICAgICAgZGVyaXZlZD0idHJ1ZSIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlQWxsQ29udGFpbm1lbnRzIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL0VSZWZlcmVuY2UiIGNoYW5nZWFibGU9ImZhbHNlIiB2b2xhdGlsZT0idHJ1ZSIgdHJhbnNpZW50PSJ0cnVlIgorICAgICAgICBkZXJpdmVkPSJ0cnVlIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImVBbGxPcGVyYXRpb25zIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL0VPcGVyYXRpb24iIGNoYW5nZWFibGU9ImZhbHNlIiB2b2xhdGlsZT0idHJ1ZSIgdHJhbnNpZW50PSJ0cnVlIgorICAgICAgICBkZXJpdmVkPSJ0cnVlIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImVBbGxTdHJ1Y3R1cmFsRmVhdHVyZXMiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vRVN0cnVjdHVyYWxGZWF0dXJlIiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiCisgICAgICAgIHRyYW5zaWVudD0idHJ1ZSIgZGVyaXZlZD0idHJ1ZSIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlQWxsU3VwZXJUeXBlcyIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9FQ2xhc3MiIGNoYW5nZWFibGU9ImZhbHNlIiB2b2xhdGlsZT0idHJ1ZSIgdHJhbnNpZW50PSJ0cnVlIiBkZXJpdmVkPSJ0cnVlIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImVJREF0dHJpYnV0ZSIgZVR5cGU9IiMvL0VBdHRyaWJ1dGUiCisgICAgICAgIGNoYW5nZWFibGU9ImZhbHNlIiB2b2xhdGlsZT0idHJ1ZSIgdHJhbnNpZW50PSJ0cnVlIiBkZXJpdmVkPSJ0cnVlIiByZXNvbHZlUHJveGllcz0iZmFsc2UiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZUdlbmVyaWNTdXBlclR5cGVzIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL0VHZW5lcmljVHlwZSIgdW5zZXR0YWJsZT0idHJ1ZSIgY29udGFpbm1lbnQ9InRydWUiIHJlc29sdmVQcm94aWVzPSJmYWxzZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZElzU2V0VmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVW5zZXRWaXNpYmlsaXR5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlQWxsR2VuZXJpY1N1cGVyVHlwZXMiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vRUdlbmVyaWNUeXBlIiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiCisgICAgICAgIHRyYW5zaWVudD0idHJ1ZSIgZGVyaXZlZD0idHJ1ZSIvPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFQ2xhc3NpZmllciIgYWJzdHJhY3Q9InRydWUiIGVTdXBlclR5cGVzPSIjLy9FTmFtZWRFbGVtZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSI+CisgICAgICA8ZGV0YWlscyBrZXk9ImNvbnN0cmFpbnRzIiB2YWx1ZT0iV2VsbEZvcm1lZEluc3RhbmNlVHlwZU5hbWUgVW5pcXVlVHlwZVBhcmFtZXRlck5hbWVzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzSW5zdGFuY2UiIGVUeXBlPSIjLy9FQm9vbGVhbiI+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ib2JqZWN0IiBlVHlwZT0iIy8vRUphdmFPYmplY3QiLz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRDbGFzc2lmaWVySUQiIGVUeXBlPSIjLy9FSW50Ii8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9Imluc3RhbmNlQ2xhc3NOYW1lIiBlVHlwZT0iIy8vRVN0cmluZyIKKyAgICAgICAgdm9sYXRpbGU9InRydWUiIHVuc2V0dGFibGU9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9InN1cHByZXNzZWRJc1NldFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFVuc2V0VmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaW5zdGFuY2VDbGFzcyIgZVR5cGU9IiMvL0VDbGFzc2lmaWVyX0VKYXZhQ2xhc3NfV2lsZGNhcmQiCisgICAgICAgIGNoYW5nZWFibGU9ImZhbHNlIiB2b2xhdGlsZT0idHJ1ZSIgdHJhbnNpZW50PSJ0cnVlIiBkZXJpdmVkPSJ0cnVlIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImRlZmF1bHRWYWx1ZSIgZVR5cGU9IiMvL0VKYXZhT2JqZWN0IgorICAgICAgICBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIgZGVyaXZlZD0idHJ1ZSIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpbnN0YW5jZVR5cGVOYW1lIiBlVHlwZT0iIy8vRVN0cmluZyIKKyAgICAgICAgdm9sYXRpbGU9InRydWUiIHVuc2V0dGFibGU9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9InN1cHByZXNzZWRJc1NldFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFVuc2V0VmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZVBhY2thZ2UiIGVUeXBlPSIjLy9FUGFja2FnZSIKKyAgICAgICAgY2hhbmdlYWJsZT0iZmFsc2UiIHRyYW5zaWVudD0idHJ1ZSIgZU9wcG9zaXRlPSIjLy9FUGFja2FnZS9lQ2xhc3NpZmllcnMiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZVR5cGVQYXJhbWV0ZXJzIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL0VUeXBlUGFyYW1ldGVyIiBjb250YWlubWVudD0idHJ1ZSIvPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFTmFtZWRFbGVtZW50IiBhYnN0cmFjdD0idHJ1ZSIgZVN1cGVyVHlwZXM9IiMvL0VNb2RlbEVsZW1lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iY29uc3RyYWludHMiIHZhbHVlPSJXZWxsRm9ybWVkTmFtZSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJuYW1lIiBlVHlwZT0iIy8vRVN0cmluZyIvPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBuYW1lPSJFQ2xhc3NpZmllcl9FSmF2YUNsYXNzX1dpbGRjYXJkIgorICAgICAgaW5zdGFuY2VDbGFzc05hbWU9IkVDbGFzc2lmaWVyX0VKYXZhQ2xhc3NfV2lsZGNhcmQiLz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBuYW1lPSJFSmF2YU9iamVjdCIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEubGFuZy5PYmplY3QiLz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFUGFja2FnZSIgZVN1cGVyVHlwZXM9IiMvL0VOYW1lZEVsZW1lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iY29uc3RyYWludHMiIHZhbHVlPSJXZWxsRm9ybWVkTnNVUkkgV2VsbEZvcm1lZE5zUHJlZml4IFVuaXF1ZVN1YnBhY2thZ2VOYW1lcyBVbmlxdWVDbGFzc2lmaWVyTmFtZXMgVW5pcXVlTnNVUklzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldEVDbGFzc2lmaWVyIiBlVHlwZT0iIy8vRUNsYXNzaWZpZXIiPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im5hbWUiIGVUeXBlPSIjLy9FU3RyaW5nIi8+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ibnNVUkkiIGVUeXBlPSIjLy9FU3RyaW5nIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9Im5zUHJlZml4IiBlVHlwZT0iIy8vRVN0cmluZyIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlRmFjdG9yeUluc3RhbmNlIiBsb3dlckJvdW5kPSIxIgorICAgICAgICBlVHlwZT0iIy8vRUZhY3RvcnkiIHRyYW5zaWVudD0idHJ1ZSIgcmVzb2x2ZVByb3hpZXM9ImZhbHNlIiBlT3Bwb3NpdGU9IiMvL0VGYWN0b3J5L2VQYWNrYWdlIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImVTdWJwYWNrYWdlcyIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9FUGFja2FnZSIgY29udGFpbm1lbnQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vRVBhY2thZ2UvZVN1cGVyUGFja2FnZSIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlU3VwZXJQYWNrYWdlIiBlVHlwZT0iIy8vRVBhY2thZ2UiCisgICAgICAgIGNoYW5nZWFibGU9ImZhbHNlIiB0cmFuc2llbnQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vRVBhY2thZ2UvZVN1YnBhY2thZ2VzIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImVDbGFzc2lmaWVycyIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9FQ2xhc3NpZmllciIgY29udGFpbm1lbnQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vRUNsYXNzaWZpZXIvZVBhY2thZ2UiLz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRUZhY3RvcnkiIGVTdXBlclR5cGVzPSIjLy9FTW9kZWxFbGVtZW50Ij4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY3JlYXRlIiBlVHlwZT0iIy8vRU9iamVjdCI+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZUNsYXNzIiBlVHlwZT0iIy8vRUNsYXNzIi8+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY3JlYXRlRnJvbVN0cmluZyIgZVR5cGU9IiMvL0VKYXZhT2JqZWN0Ij4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlRGF0YVR5cGUiIGVUeXBlPSIjLy9FRGF0YVR5cGUiLz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJsaXRlcmFsVmFsdWUiIGVUeXBlPSIjLy9FU3RyaW5nIi8+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY29udmVydFRvU3RyaW5nIiBlVHlwZT0iIy8vRVN0cmluZyI+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZURhdGFUeXBlIiBlVHlwZT0iIy8vRURhdGFUeXBlIi8+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iaW5zdGFuY2VWYWx1ZSIgZVR5cGU9IiMvL0VKYXZhT2JqZWN0Ii8+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZVBhY2thZ2UiIGxvd2VyQm91bmQ9IjEiCisgICAgICAgIGVUeXBlPSIjLy9FUGFja2FnZSIgdHJhbnNpZW50PSJ0cnVlIiByZXNvbHZlUHJveGllcz0iZmFsc2UiIGVPcHBvc2l0ZT0iIy8vRVBhY2thZ2UvZUZhY3RvcnlJbnN0YW5jZSIvPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFRGF0YVR5cGUiIGVTdXBlclR5cGVzPSIjLy9FQ2xhc3NpZmllciI+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InNlcmlhbGl6YWJsZSIgZVR5cGU9IiMvL0VCb29sZWFuIi8+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IkVCb29sZWFuIiBpbnN0YW5jZUNsYXNzTmFtZT0iYm9vbGVhbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly8vb3JnL2VjbGlwc2UvZW1mL2Vjb3JlL3V0aWwvRXh0ZW5kZWRNZXRhRGF0YSI+CisgICAgICA8ZGV0YWlscyBrZXk9ImJhc2VUeXBlIiB2YWx1ZT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEjYm9vbGVhbiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFVHlwZVBhcmFtZXRlciIgZVN1cGVyVHlwZXM9IiMvL0VOYW1lZEVsZW1lbnQiPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlQm91bmRzIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL0VHZW5lcmljVHlwZSIgY29udGFpbm1lbnQ9InRydWUiIHJlc29sdmVQcm94aWVzPSJmYWxzZSIvPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFR2VuZXJpY1R5cGUiIGVTdXBlclR5cGVzPSIjLy9FT2JqZWN0Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSI+CisgICAgICA8ZGV0YWlscyBrZXk9ImNvbnN0cmFpbnRzIiB2YWx1ZT0iQ29uc2lzdGVudFR5cGUgQ29uc2lzdGVudEJvdW5kcyBDb25zaXN0ZW50QXJndW1lbnRzIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImVVcHBlckJvdW5kIiBlVHlwZT0iIy8vRUdlbmVyaWNUeXBlIgorICAgICAgICBjb250YWlubWVudD0idHJ1ZSIgcmVzb2x2ZVByb3hpZXM9ImZhbHNlIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImVUeXBlQXJndW1lbnRzIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL0VHZW5lcmljVHlwZSIgY29udGFpbm1lbnQ9InRydWUiIHJlc29sdmVQcm94aWVzPSJmYWxzZSIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlUmF3VHlwZSIgbG93ZXJCb3VuZD0iMSIKKyAgICAgICAgZVR5cGU9IiMvL0VDbGFzc2lmaWVyIiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIKKyAgICAgICAgZGVyaXZlZD0idHJ1ZSIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlTG93ZXJCb3VuZCIgZVR5cGU9IiMvL0VHZW5lcmljVHlwZSIKKyAgICAgICAgY29udGFpbm1lbnQ9InRydWUiIHJlc29sdmVQcm94aWVzPSJmYWxzZSIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlVHlwZVBhcmFtZXRlciIgZVR5cGU9IiMvL0VUeXBlUGFyYW1ldGVyIgorICAgICAgICByZXNvbHZlUHJveGllcz0iZmFsc2UiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZUNsYXNzaWZpZXIiIGVUeXBlPSIjLy9FQ2xhc3NpZmllciIvPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBuYW1lPSJFSW50IiBpbnN0YW5jZUNsYXNzTmFtZT0iaW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovLy9vcmcvZWNsaXBzZS9lbWYvZWNvcmUvdXRpbC9FeHRlbmRlZE1ldGFEYXRhIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iYmFzZVR5cGUiIHZhbHVlPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSNpbnQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRUNsYXNzaWZpZXJfV2lsZGNhcmQiLz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFT3BlcmF0aW9uIiBlU3VwZXJUeXBlcz0iIy8vRVR5cGVkRWxlbWVudCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUiPgorICAgICAgPGRldGFpbHMga2V5PSJjb25zdHJhaW50cyIgdmFsdWU9IlVuaXF1ZVBhcmFtZXRlck5hbWVzIFVuaXF1ZVR5cGVQYXJhbWV0ZXJOYW1lcyBOb1JlcGVhdGluZ1ZvaWQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZVR5cGVQYXJhbWV0ZXJzIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL0VUeXBlUGFyYW1ldGVyIiBjb250YWlubWVudD0idHJ1ZSIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlUGFyYW1ldGVycyIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9FUGFyYW1ldGVyIiBjb250YWlubWVudD0idHJ1ZSIgcmVzb2x2ZVByb3hpZXM9ImZhbHNlIiBlT3Bwb3NpdGU9IiMvL0VQYXJhbWV0ZXIvZU9wZXJhdGlvbiIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlRXhjZXB0aW9ucyIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9FQ2xhc3NpZmllciIgdW5zZXR0YWJsZT0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZElzU2V0VmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVW5zZXRWaXNpYmlsaXR5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlR2VuZXJpY0V4Y2VwdGlvbnMiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vRUdlbmVyaWNUeXBlIiB1bnNldHRhYmxlPSJ0cnVlIiBjb250YWlubWVudD0idHJ1ZSIgcmVzb2x2ZVByb3hpZXM9ImZhbHNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkSXNTZXRWaXNpYmlsaXR5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8ZGV0YWlscyBrZXk9InN1cHByZXNzZWRVbnNldFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImVDb250YWluaW5nQ2xhc3MiIGVUeXBlPSIjLy9FQ2xhc3MiCisgICAgICAgIGNoYW5nZWFibGU9ImZhbHNlIiB0cmFuc2llbnQ9InRydWUiIHJlc29sdmVQcm94aWVzPSJmYWxzZSIgZU9wcG9zaXRlPSIjLy9FQ2xhc3MvZU9wZXJhdGlvbnMiLz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRVR5cGVkRWxlbWVudCIgYWJzdHJhY3Q9InRydWUiIGVTdXBlclR5cGVzPSIjLy9FTmFtZWRFbGVtZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSI+CisgICAgICA8ZGV0YWlscyBrZXk9ImNvbnN0cmFpbnRzIiB2YWx1ZT0iVmFsaWRMb3dlckJvdW5kIFZhbGlkVXBwZXJCb3VuZCBDb25zaXN0ZW50Qm91bmRzIFZhbGlkVHlwZSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJvcmRlcmVkIiBlVHlwZT0iIy8vRUJvb2xlYW4iLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0idW5pcXVlIiBlVHlwZT0iIy8vRUJvb2xlYW4iLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ibG93ZXJCb3VuZCIgZVR5cGU9IiMvL0VJbnQiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0idXBwZXJCb3VuZCIgZVR5cGU9IiMvL0VJbnQiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ibWFueSIgZVR5cGU9IiMvL0VCb29sZWFuIgorICAgICAgICBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIgZGVyaXZlZD0idHJ1ZSIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJyZXF1aXJlZCIgZVR5cGU9IiMvL0VCb29sZWFuIgorICAgICAgICBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIgZGVyaXZlZD0idHJ1ZSIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlVHlwZSIgZVR5cGU9IiMvL0VDbGFzc2lmaWVyIgorICAgICAgICB2b2xhdGlsZT0idHJ1ZSIgdW5zZXR0YWJsZT0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZElzU2V0VmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVW5zZXRWaXNpYmlsaXR5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlR2VuZXJpY1R5cGUiIGVUeXBlPSIjLy9FR2VuZXJpY1R5cGUiCisgICAgICAgIHZvbGF0aWxlPSJ0cnVlIiB1bnNldHRhYmxlPSJ0cnVlIiBjb250YWlubWVudD0idHJ1ZSIgcmVzb2x2ZVByb3hpZXM9ImZhbHNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkSXNTZXRWaXNpYmlsaXR5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8ZGV0YWlscyBrZXk9InN1cHByZXNzZWRVbnNldFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkVQYXJhbWV0ZXIiIGVTdXBlclR5cGVzPSIjLy9FVHlwZWRFbGVtZW50Ij4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZU9wZXJhdGlvbiIgZVR5cGU9IiMvL0VPcGVyYXRpb24iCisgICAgICAgIGNoYW5nZWFibGU9ImZhbHNlIiB0cmFuc2llbnQ9InRydWUiIHJlc29sdmVQcm94aWVzPSJmYWxzZSIgZU9wcG9zaXRlPSIjLy9FT3BlcmF0aW9uL2VQYXJhbWV0ZXJzIi8+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkVBdHRyaWJ1dGUiIGVTdXBlclR5cGVzPSIjLy9FU3RydWN0dXJhbEZlYXR1cmUiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iY29uc3RyYWludHMiIHZhbHVlPSJDb25zaXN0ZW50VHJhbnNpZW50Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImlEIiBlVHlwZT0iIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9Im9yaWdpbmFsTmFtZSIgdmFsdWU9ImlkIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImVBdHRyaWJ1dGVUeXBlIiBsb3dlckJvdW5kPSIxIgorICAgICAgICBlVHlwZT0iIy8vRURhdGFUeXBlIiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIgZGVyaXZlZD0idHJ1ZSIvPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFU3RydWN0dXJhbEZlYXR1cmUiIGFic3RyYWN0PSJ0cnVlIgorICAgICAgZVN1cGVyVHlwZXM9IiMvL0VUeXBlZEVsZW1lbnQiPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRGZWF0dXJlSUQiIGVUeXBlPSIjLy9FSW50Ii8+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldENvbnRhaW5lckNsYXNzIiBlVHlwZT0iIy8vRVN0cnVjdHVyYWxGZWF0dXJlX0VKYXZhQ2xhc3NfV2lsZGNhcmQiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZUNvbnRhaW5pbmdDbGFzcyIgZVR5cGU9IiMvL0VDbGFzcyIKKyAgICAgICAgY2hhbmdlYWJsZT0iZmFsc2UiIHRyYW5zaWVudD0idHJ1ZSIgcmVzb2x2ZVByb3hpZXM9ImZhbHNlIiBlT3Bwb3NpdGU9IiMvL0VDbGFzcy9lU3RydWN0dXJhbEZlYXR1cmVzIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImNoYW5nZWFibGUiIGVUeXBlPSIjLy9FQm9vbGVhbiIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJ2b2xhdGlsZSIgZVR5cGU9IiMvL0VCb29sZWFuIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InRyYW5zaWVudCIgZVR5cGU9IiMvL0VCb29sZWFuIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImRlZmF1bHRWYWx1ZUxpdGVyYWwiIGVUeXBlPSIjLy9FU3RyaW5nIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImRlZmF1bHRWYWx1ZSIgZVR5cGU9IiMvL0VKYXZhT2JqZWN0IgorICAgICAgICBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIgZGVyaXZlZD0idHJ1ZSIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJ1bnNldHRhYmxlIiBlVHlwZT0iIy8vRUJvb2xlYW4iLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iZGVyaXZlZCIgZVR5cGU9IiMvL0VCb29sZWFuIi8+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IkVTdHJ1Y3R1cmFsRmVhdHVyZV9FSmF2YUNsYXNzX1dpbGRjYXJkIgorICAgICAgaW5zdGFuY2VDbGFzc05hbWU9IkVTdHJ1Y3R1cmFsRmVhdHVyZV9FSmF2YUNsYXNzX1dpbGRjYXJkIi8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRVN0cnVjdHVyYWxGZWF0dXJlX1dpbGRjYXJkIi8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRVJlZmVyZW5jZSIgZVN1cGVyVHlwZXM9IiMvL0VTdHJ1Y3R1cmFsRmVhdHVyZSI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUiPgorICAgICAgPGRldGFpbHMga2V5PSJjb25zdHJhaW50cyIgdmFsdWU9IkNvbnNpc3RlbnRPcHBvc2l0ZSBTaW5nbGVDb250YWluZXIgQ29uc2lzdGVudEtleXMiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iY29udGFpbm1lbnQiIGVUeXBlPSIjLy9FQm9vbGVhbiIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJjb250YWluZXIiIGVUeXBlPSIjLy9FQm9vbGVhbiIKKyAgICAgICAgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiIGRlcml2ZWQ9InRydWUiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0icmVzb2x2ZVByb3hpZXMiIGVUeXBlPSIjLy9FQm9vbGVhbiIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlT3Bwb3NpdGUiIGVUeXBlPSIjLy9FUmVmZXJlbmNlIi8+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImVSZWZlcmVuY2VUeXBlIiBsb3dlckJvdW5kPSIxIgorICAgICAgICBlVHlwZT0iIy8vRUNsYXNzIiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIgZGVyaXZlZD0idHJ1ZSIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlS2V5cyIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9FQXR0cmlidXRlIi8+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IkVSZXNvdXJjZSIgaW5zdGFuY2VDbGFzc05hbWU9Im9yZy5lY2xpcHNlLmVtZi5lY29yZS5yZXNvdXJjZS5SZXNvdXJjZSIvPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IkVPYmplY3RfRUVMaXN0X0VPYmplY3QiIGluc3RhbmNlQ2xhc3NOYW1lPSJFT2JqZWN0X0VFTGlzdF9FT2JqZWN0Ii8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgbmFtZT0iRU9iamVjdF9FVHJlZUl0ZXJhdG9yX0VPYmplY3QiIGluc3RhbmNlQ2xhc3NOYW1lPSJFT2JqZWN0X0VUcmVlSXRlcmF0b3JfRU9iamVjdCIvPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkVFbnVtIiBlU3VwZXJUeXBlcz0iIy8vRURhdGFUeXBlIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSI+CisgICAgICA8ZGV0YWlscyBrZXk9ImNvbnN0cmFpbnRzIiB2YWx1ZT0iVW5pcXVlRW51bWVyYXRvck5hbWVzIFVuaXF1ZUVudW1lcmF0b3JMaXRlcmFscyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRFRW51bUxpdGVyYWwiIGVUeXBlPSIjLy9FRW51bUxpdGVyYWwiPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im5hbWUiIGVUeXBlPSIjLy9FU3RyaW5nIi8+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0RUVudW1MaXRlcmFsIiBlVHlwZT0iIy8vRUVudW1MaXRlcmFsIj4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJ2YWx1ZSIgZVR5cGU9IiMvL0VJbnQiLz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRFRW51bUxpdGVyYWxCeUxpdGVyYWwiIGVUeXBlPSIjLy9FRW51bUxpdGVyYWwiPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImxpdGVyYWwiIGVUeXBlPSIjLy9FU3RyaW5nIi8+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZUxpdGVyYWxzIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL0VFbnVtTGl0ZXJhbCIgY29udGFpbm1lbnQ9InRydWUiIHJlc29sdmVQcm94aWVzPSJmYWxzZSIgZU9wcG9zaXRlPSIjLy9FRW51bUxpdGVyYWwvZUVudW0iLz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRUVudW1MaXRlcmFsIiBlU3VwZXJUeXBlcz0iIy8vRU5hbWVkRWxlbWVudCI+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InZhbHVlIiBlVHlwZT0iIy8vRUludCIvPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpbnN0YW5jZSIgZVR5cGU9IiMvL0VFbnVtZXJhdG9yIgorICAgICAgICB0cmFuc2llbnQ9InRydWUiLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ibGl0ZXJhbCIgZVR5cGU9IiMvL0VTdHJpbmciLz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZUVudW0iIGVUeXBlPSIjLy9FRW51bSIKKyAgICAgICAgY2hhbmdlYWJsZT0iZmFsc2UiIHRyYW5zaWVudD0idHJ1ZSIgcmVzb2x2ZVByb3hpZXM9ImZhbHNlIiBlT3Bwb3NpdGU9IiMvL0VFbnVtL2VMaXRlcmFscyIvPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBuYW1lPSJFRW51bWVyYXRvciIgaW5zdGFuY2VDbGFzc05hbWU9Im9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FbnVtZXJhdG9yIi8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgbmFtZT0iRUJpZ0RlY2ltYWwiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLm1hdGguQmlnRGVjaW1hbCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly8vb3JnL2VjbGlwc2UvZW1mL2Vjb3JlL3V0aWwvRXh0ZW5kZWRNZXRhRGF0YSI+CisgICAgICA8ZGV0YWlscyBrZXk9ImJhc2VUeXBlIiB2YWx1ZT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEjZGVjaW1hbCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBuYW1lPSJFQmlnSW50ZWdlciIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEubWF0aC5CaWdJbnRlZ2VyIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovLy9vcmcvZWNsaXBzZS9lbWYvZWNvcmUvdXRpbC9FeHRlbmRlZE1ldGFEYXRhIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iYmFzZVR5cGUiIHZhbHVlPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSNpbnRlZ2VyIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IkVCb29sZWFuT2JqZWN0IiBpbnN0YW5jZUNsYXNzTmFtZT0iamF2YS5sYW5nLkJvb2xlYW4iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vL29yZy9lY2xpcHNlL2VtZi9lY29yZS91dGlsL0V4dGVuZGVkTWV0YURhdGEiPgorICAgICAgPGRldGFpbHMga2V5PSJiYXNlVHlwZSIgdmFsdWU9IkVCb29sZWFuIi8+CisgICAgICA8ZGV0YWlscyBrZXk9Im5hbWUiIHZhbHVlPSJFQm9vbGVhbjpPYmplY3QiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgbmFtZT0iRUJ5dGUiIGluc3RhbmNlQ2xhc3NOYW1lPSJieXRlIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovLy9vcmcvZWNsaXBzZS9lbWYvZWNvcmUvdXRpbC9FeHRlbmRlZE1ldGFEYXRhIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iYmFzZVR5cGUiIHZhbHVlPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSNieXRlIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IkVCeXRlQXJyYXkiIGluc3RhbmNlQ2xhc3NOYW1lPSJieXRlW10iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vL29yZy9lY2xpcHNlL2VtZi9lY29yZS91dGlsL0V4dGVuZGVkTWV0YURhdGEiPgorICAgICAgPGRldGFpbHMga2V5PSJiYXNlVHlwZSIgdmFsdWU9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hI2hleEJpbmFyeSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBuYW1lPSJFQnl0ZU9iamVjdCIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEubGFuZy5CeXRlIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovLy9vcmcvZWNsaXBzZS9lbWYvZWNvcmUvdXRpbC9FeHRlbmRlZE1ldGFEYXRhIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iYmFzZVR5cGUiIHZhbHVlPSJFQnl0ZSIvPgorICAgICAgPGRldGFpbHMga2V5PSJuYW1lIiB2YWx1ZT0iRUJ5dGU6T2JqZWN0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IkVDaGFyIiBpbnN0YW5jZUNsYXNzTmFtZT0iY2hhciIvPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IkVDaGFyYWN0ZXJPYmplY3QiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLmxhbmcuQ2hhcmFjdGVyIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovLy9vcmcvZWNsaXBzZS9lbWYvZWNvcmUvdXRpbC9FeHRlbmRlZE1ldGFEYXRhIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iYmFzZVR5cGUiIHZhbHVlPSJFQ2hhciIvPgorICAgICAgPGRldGFpbHMga2V5PSJuYW1lIiB2YWx1ZT0iRUNoYXI6T2JqZWN0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IkVEYXRlIiBpbnN0YW5jZUNsYXNzTmFtZT0iamF2YS51dGlsLkRhdGUiLz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBuYW1lPSJFRGlhZ25vc3RpY0NoYWluIiBpbnN0YW5jZUNsYXNzTmFtZT0ib3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkRpYWdub3N0aWNDaGFpbiIvPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IkVEb3VibGUiIGluc3RhbmNlQ2xhc3NOYW1lPSJkb3VibGUiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vL29yZy9lY2xpcHNlL2VtZi9lY29yZS91dGlsL0V4dGVuZGVkTWV0YURhdGEiPgorICAgICAgPGRldGFpbHMga2V5PSJiYXNlVHlwZSIgdmFsdWU9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hI2RvdWJsZSIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBuYW1lPSJFRG91YmxlT2JqZWN0IiBpbnN0YW5jZUNsYXNzTmFtZT0iamF2YS5sYW5nLkRvdWJsZSI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly8vb3JnL2VjbGlwc2UvZW1mL2Vjb3JlL3V0aWwvRXh0ZW5kZWRNZXRhRGF0YSI+CisgICAgICA8ZGV0YWlscyBrZXk9ImJhc2VUeXBlIiB2YWx1ZT0iRURvdWJsZSIvPgorICAgICAgPGRldGFpbHMga2V5PSJuYW1lIiB2YWx1ZT0iRURvdWJsZTpPYmplY3QiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgbmFtZT0iRUVMaXN0IiBpbnN0YW5jZUNsYXNzTmFtZT0ib3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0Ij4KKyAgICA8ZVR5cGVQYXJhbWV0ZXJzIG5hbWU9IkUiLz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgbmFtZT0iRUZlYXR1cmVNYXAiIGluc3RhbmNlQ2xhc3NOYW1lPSJvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5GZWF0dXJlTWFwIi8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgbmFtZT0iRUZlYXR1cmVNYXBFbnRyeSIgaW5zdGFuY2VDbGFzc05hbWU9Im9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLkZlYXR1cmVNYXAkRW50cnkiLz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBuYW1lPSJFRmxvYXQiIGluc3RhbmNlQ2xhc3NOYW1lPSJmbG9hdCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly8vb3JnL2VjbGlwc2UvZW1mL2Vjb3JlL3V0aWwvRXh0ZW5kZWRNZXRhRGF0YSI+CisgICAgICA8ZGV0YWlscyBrZXk9ImJhc2VUeXBlIiB2YWx1ZT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEjZmxvYXQiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgbmFtZT0iRUZsb2F0T2JqZWN0IiBpbnN0YW5jZUNsYXNzTmFtZT0iamF2YS5sYW5nLkZsb2F0Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovLy9vcmcvZWNsaXBzZS9lbWYvZWNvcmUvdXRpbC9FeHRlbmRlZE1ldGFEYXRhIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iYmFzZVR5cGUiIHZhbHVlPSJFRmxvYXQiLz4KKyAgICAgIDxkZXRhaWxzIGtleT0ibmFtZSIgdmFsdWU9IkVGbG9hdDpPYmplY3QiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgbmFtZT0iRUludGVnZXJPYmplY3QiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLmxhbmcuSW50ZWdlciI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly8vb3JnL2VjbGlwc2UvZW1mL2Vjb3JlL3V0aWwvRXh0ZW5kZWRNZXRhRGF0YSI+CisgICAgICA8ZGV0YWlscyBrZXk9ImJhc2VUeXBlIiB2YWx1ZT0iRUludCIvPgorICAgICAgPGRldGFpbHMga2V5PSJuYW1lIiB2YWx1ZT0iRUludDpPYmplY3QiLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgbmFtZT0iRUphdmFDbGFzcyIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEubGFuZy5DbGFzcyI+CisgICAgPGVUeXBlUGFyYW1ldGVycyBuYW1lPSJUIi8+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IkVMb25nIiBpbnN0YW5jZUNsYXNzTmFtZT0ibG9uZyI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly8vb3JnL2VjbGlwc2UvZW1mL2Vjb3JlL3V0aWwvRXh0ZW5kZWRNZXRhRGF0YSI+CisgICAgICA8ZGV0YWlscyBrZXk9ImJhc2VUeXBlIiB2YWx1ZT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEjbG9uZyIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBuYW1lPSJFTG9uZ09iamVjdCIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEubGFuZy5Mb25nIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovLy9vcmcvZWNsaXBzZS9lbWYvZWNvcmUvdXRpbC9FeHRlbmRlZE1ldGFEYXRhIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iYmFzZVR5cGUiIHZhbHVlPSJFTG9uZyIvPgorICAgICAgPGRldGFpbHMga2V5PSJuYW1lIiB2YWx1ZT0iRUxvbmc6T2JqZWN0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IkVNYXAiIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLnV0aWwuTWFwIj4KKyAgICA8ZVR5cGVQYXJhbWV0ZXJzIG5hbWU9IksiLz4KKyAgICA8ZVR5cGVQYXJhbWV0ZXJzIG5hbWU9IlYiLz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgbmFtZT0iRVJlc291cmNlU2V0IiBpbnN0YW5jZUNsYXNzTmFtZT0ib3JnLmVjbGlwc2UuZW1mLmVjb3JlLnJlc291cmNlLlJlc291cmNlU2V0Ii8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgbmFtZT0iRVNob3J0IiBpbnN0YW5jZUNsYXNzTmFtZT0ic2hvcnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vL29yZy9lY2xpcHNlL2VtZi9lY29yZS91dGlsL0V4dGVuZGVkTWV0YURhdGEiPgorICAgICAgPGRldGFpbHMga2V5PSJiYXNlVHlwZSIgdmFsdWU9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hI3Nob3J0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IkVTaG9ydE9iamVjdCIgaW5zdGFuY2VDbGFzc05hbWU9ImphdmEubGFuZy5TaG9ydCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly8vb3JnL2VjbGlwc2UvZW1mL2Vjb3JlL3V0aWwvRXh0ZW5kZWRNZXRhRGF0YSI+CisgICAgICA8ZGV0YWlscyBrZXk9ImJhc2VUeXBlIiB2YWx1ZT0iRVNob3J0Ii8+CisgICAgICA8ZGV0YWlscyBrZXk9Im5hbWUiIHZhbHVlPSJFU2hvcnQ6T2JqZWN0Ii8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IkVUcmVlSXRlcmF0b3IiIGluc3RhbmNlQ2xhc3NOYW1lPSJvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuVHJlZUl0ZXJhdG9yIj4KKyAgICA8ZVR5cGVQYXJhbWV0ZXJzIG5hbWU9IkUiLz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgbmFtZT0iRUludm9jYXRpb25UYXJnZXRFeGNlcHRpb24iIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLmxhbmcucmVmbGVjdC5JbnZvY2F0aW9uVGFyZ2V0RXhjZXB0aW9uIi8+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRU1vZGVsRWxlbWVudCIgYWJzdHJhY3Q9InRydWUiIGVTdXBlclR5cGVzPSIjLy9FT2JqZWN0Ij4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0RUFubm90YXRpb24iIGVUeXBlPSIjLy9FQW5ub3RhdGlvbiI+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ic291cmNlIiBlVHlwZT0iIy8vRVN0cmluZyIvPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImVBbm5vdGF0aW9ucyIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9FQW5ub3RhdGlvbiIgY29udGFpbm1lbnQ9InRydWUiIHJlc29sdmVQcm94aWVzPSJmYWxzZSIgZU9wcG9zaXRlPSIjLy9FQW5ub3RhdGlvbi9lTW9kZWxFbGVtZW50Ii8+CisgIDwvZUNsYXNzaWZpZXJzPgorPC9lY29yZTpFUGFja2FnZT4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9tb2RlbC90eXBlcy5lY29yZSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9tb2RlbC90eXBlcy5lY29yZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zYjFhNjk1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL21vZGVsL3R5cGVzLmVjb3JlCkBAIC0wLDAgKzEsMzIgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8ZWNvcmU6RVBhY2thZ2UgeG1pOnZlcnNpb249IjIuMCIgeG1sbnM6eG1pPSJodHRwOi8vd3d3Lm9tZy5vcmcvWE1JIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIgorICAgIHhtbG5zOmVjb3JlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIiBuYW1lPSJ0eXBlcyIgbnNVUkk9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi81LjAuMC9UeXBlcyIgbnNQcmVmaXg9InR5cGVzIj4KKyAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgIDxkZXRhaWxzIGtleT0ib3JpZ2luYWxOYW1lIiB2YWx1ZT0iUHJpbWl0aXZlVHlwZXMiLz4KKyAgPC9lQW5ub3RhdGlvbnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVEYXRhVHlwZSIgbmFtZT0iQm9vbGVhbiIgaW5zdGFuY2VDbGFzc05hbWU9ImJvb2xlYW4iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkJvb2xlYW4gaXMgdXNlZCBmb3IgbG9naWNhbCBleHByZXNzaW9ucywgY29uc2lzdGluZyBvZiB0aGUgcHJlZGVmaW5lZCB2YWx1ZXMgdHJ1ZSBhbmQgZmFsc2UuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IkludGVnZXIiIGluc3RhbmNlQ2xhc3NOYW1lPSJpbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkludGVnZXIgaXMgYSBwcmltaXRpdmUgdHlwZSByZXByZXNlbnRpbmcgaW50ZWdlciB2YWx1ZXMuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IlJlYWwiIGluc3RhbmNlQ2xhc3NOYW1lPSJkb3VibGUiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJlYWwgaXMgYSBwcmltaXRpdmUgdHlwZSByZXByZXNlbnRpbmcgdGhlIG1hdGhlbWF0aWNhbCBjb25jZXB0IG9mIHJlYWwuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRGF0YVR5cGUiIG5hbWU9IlVubGltaXRlZE5hdHVyYWwiIGluc3RhbmNlQ2xhc3NOYW1lPSJpbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlVubGltaXRlZE5hdHVyYWwgaXMgYSBwcmltaXRpdmUgdHlwZSByZXByZXNlbnRpbmcgdW5saW1pdGVkIG5hdHVyYWwgdmFsdWVzLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RURhdGFUeXBlIiBuYW1lPSJTdHJpbmciIGluc3RhbmNlQ2xhc3NOYW1lPSJqYXZhLmxhbmcuU3RyaW5nIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTdHJpbmcgaXMgYSBzZXF1ZW5jZSBvZiBjaGFyYWN0ZXJzIGluIHNvbWUgc3VpdGFibGUgY2hhcmFjdGVyIHNldCB1c2VkIHRvIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIG1vZGVsLiBDaGFyYWN0ZXIgc2V0cyBtYXkgaW5jbHVkZSBub24tUm9tYW4gYWxwaGFiZXRzIGFuZCBjaGFyYWN0ZXJzLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKzwvZWNvcmU6RVBhY2thZ2U+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvbW9kZWwvdW1sLmVjb3JlIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL21vZGVsL3VtbC5lY29yZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wNWFjMmY5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL21vZGVsL3VtbC5lY29yZQpAQCAtMCwwICsxLDE5MjI3IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPGVjb3JlOkVQYWNrYWdlIHhtaTp2ZXJzaW9uPSIyLjAiIHhtbG5zOnhtaT0iaHR0cDovL3d3dy5vbWcub3JnL1hNSSIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIKKyAgICB4bWxuczplY29yZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSIgbmFtZT0idW1sIiBuc1VSST0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzUuMC4wL1VNTCIgbnNQcmVmaXg9InVtbCI+CisgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICA8ZGV0YWlscyBrZXk9Im9yaWdpbmFsTmFtZSIgdmFsdWU9IlVNTCIvPgorICA8L2VBbm5vdGF0aW9ucz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJBY3Rpdml0eUNvbnRlbnQiIGFic3RyYWN0PSJ0cnVlIiBpbnRlcmZhY2U9InRydWUiPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjb250YWluaW5nQWN0aXZpdHkiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iIy8vQWN0aXZpdHkiLz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQWN0aXZpdHkiIGVTdXBlclR5cGVzPSIjLy9CZWhhdmlvciI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gQWN0aXZpdHkgaXMgdGhlIHNwZWNpZmljYXRpb24gb2YgcGFyYW1ldGVyaXplZCBCZWhhdmlvciBhcyB0aGUgY29vcmRpbmF0ZWQgc2VxdWVuY2luZyBvZiBzdWJvcmRpbmF0ZSB1bml0cy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibWF4aW11bV9vbmVfcGFyYW1ldGVyX25vZGUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJvd25lZFBhcmFtZXRlci0+Zm9yQWxsKHAgfCAmI3hEOyYjeEE7ICAgcC5kaXJlY3Rpb24gJmx0Oz4gUGFyYW1ldGVyRGlyZWN0aW9uS2luZDo6aW5vdXQgaW1wbGllcyBub2RlLT5zZWxlY3QoJiN4RDsmI3hBOyAgICAgICBvY2xJc0tpbmRPZihBY3Rpdml0eVBhcmFtZXRlck5vZGUpIGFuZCBvY2xBc1R5cGUoQWN0aXZpdHlQYXJhbWV0ZXJOb2RlKS5wYXJhbWV0ZXIgPSBwKS0+c2l6ZSgpPSAxKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgUGFyYW1ldGVyIHdpdGggZGlyZWN0aW9uIG90aGVyIHRoYW4gaW5vdXQgbXVzdCBoYXZlIGV4YWN0bHkgb25lIEFjdGl2aXR5UGFyYW1ldGVyTm9kZSBpbiBhbiBBY3Rpdml0eS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im1heGltdW1fdHdvX3BhcmFtZXRlcl9ub2RlcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im93bmVkUGFyYW1ldGVyLT5mb3JBbGwocCB8ICYjeEQ7JiN4QTtwLmRpcmVjdGlvbiA9IFBhcmFtZXRlckRpcmVjdGlvbktpbmQ6Omlub3V0IGltcGxpZXMmI3hEOyYjeEE7bGV0IGFzc29jaWF0ZWROb2RlcyA6IFNldChBY3Rpdml0eU5vZGUpID0gbm9kZS0+c2VsZWN0KCYjeEQ7JiN4QTsgICAgICAgb2NsSXNLaW5kT2YoQWN0aXZpdHlQYXJhbWV0ZXJOb2RlKSBhbmQgb2NsQXNUeXBlKEFjdGl2aXR5UGFyYW1ldGVyTm9kZSkucGFyYW1ldGVyID0gcCkgaW4gJiN4RDsmI3hBOyAgYXNzb2NpYXRlZE5vZGVzLT5zaXplKCk9MiBhbmQmI3hEOyYjeEE7ICBhc3NvY2lhdGVkTm9kZXMtPnNlbGVjdChpbmNvbWluZy0+bm90RW1wdHkoKSktPnNpemUoKSZsdDs9MSBhbmQmI3hEOyYjeEE7ICBhc3NvY2lhdGVkTm9kZXMtPnNlbGVjdChvdXRnb2luZy0+bm90RW1wdHkoKSktPnNpemUoKSZsdDs9MSYjeEQ7JiN4QTspIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBQYXJhbWV0ZXIgd2l0aCBkaXJlY3Rpb24gaW5vdXQgbXVzdCBoYXZlIGV4YWN0bHkgdHdvIEFjdGl2aXR5UGFyYW1ldGVyTm9kZXMgaW4gYW4gQWN0aXZpdHksIGF0IG1vc3Qgb25lIHdpdGggaW5jb21pbmcgQWN0aXZpdHlFZGdlcyBhbmQgYXQgbW9zdCBvbmUgd2l0aCBvdXRnb2luZyBBY3Rpdml0eUVkZ2VzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib3duZWRHcm91cCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQWN0aXZpdHlHcm91cCIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly8vb3JnL2VjbGlwc2UvZW1mL2Vjb3JlL3V0aWwvRXh0ZW5kZWRNZXRhRGF0YSI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ibmFtZSIgdmFsdWU9Imdyb3VwIi8+CisgICAgICAgIDxkZXRhaWxzIGtleT0ia2luZCIgdmFsdWU9ImVsZW1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0FjdGl2aXR5L2dyb3VwIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlZGdlIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9BY3Rpdml0eUVkZ2UiIGNvbnRhaW5tZW50PSJ0cnVlIiBlT3Bwb3NpdGU9IiMvL0FjdGl2aXR5RWRnZS9hY3Rpdml0eSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFjdGl2aXR5RWRnZXMgZXhwcmVzc2luZyBmbG93IGJldHdlZW4gdGhlIG5vZGVzIG9mIHRoZSBBY3Rpdml0eS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJub2RlIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9BY3Rpdml0eU5vZGUiIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiIGRlcml2ZWQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vQWN0aXZpdHlOb2RlL2FjdGl2aXR5Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQWN0aXZpdHlOb2RlcyBjb29yZGluYXRlZCBieSB0aGUgQWN0aXZpdHkuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vL29yZy9lY2xpcHNlL2VtZi9lY29yZS91dGlsL0V4dGVuZGVkTWV0YURhdGEiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImtpbmQiIHZhbHVlPSJhdHRyaWJ1dGUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mL0NETyI+CisgICAgICAgIDxkZXRhaWxzIGtleT0icGVyc2lzdGVudCIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJmaWx0ZXIiIHZhbHVlPSJvd25lZE5vZGUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJ2YXJpYWJsZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vVmFyaWFibGUiIGNvbnRhaW5tZW50PSJ0cnVlIiBlT3Bwb3NpdGU9IiMvL1ZhcmlhYmxlL2FjdGl2aXR5U2NvcGUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUb3AtbGV2ZWwgVmFyaWFibGVzIGRlZmluZWQgYnkgdGhlIEFjdGl2aXR5LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vTmFtZXNwYWNlL293bmVkTWVtYmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJncm91cCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQWN0aXZpdHlHcm91cCIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIKKyAgICAgICAgZGVyaXZlZD0idHJ1ZSIgZU9wcG9zaXRlPSIjLy9BY3Rpdml0eUdyb3VwL2luQWN0aXZpdHkiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUb3AtbGV2ZWwgQWN0aXZpdHlHcm91cHMgaW4gdGhlIEFjdGl2aXR5LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovLy9vcmcvZWNsaXBzZS9lbWYvZWNvcmUvdXRpbC9FeHRlbmRlZE1ldGFEYXRhIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJraW5kIiB2YWx1ZT0iYXR0cmlidXRlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi9DRE8iPgorICAgICAgICA8ZGV0YWlscyBrZXk9InBlcnNpc3RlbnQiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZmlsdGVyIiB2YWx1ZT0ib3duZWRHcm91cCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im93bmVkTm9kZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQWN0aXZpdHlOb2RlIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovLy9vcmcvZWNsaXBzZS9lbWYvZWNvcmUvdXRpbC9FeHRlbmRlZE1ldGFEYXRhIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJuYW1lIiB2YWx1ZT0ibm9kZSIvPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImtpbmQiIHZhbHVlPSJlbGVtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9BY3Rpdml0eS9ub2RlIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpc1JlYWRPbmx5IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGRlZmF1bHRWYWx1ZUxpdGVyYWw9ImZhbHNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgdHJ1ZSwgdGhpcyBBY3Rpdml0eSBtdXN0IG5vdCBtYWtlIGFueSBjaGFuZ2VzIHRvIG9iamVjdHMuIFRoZSBkZWZhdWx0IGlzIGZhbHNlIChhbiBBY3Rpdml0eSBtYXkgbWFrZSBub25sb2NhbCBjaGFuZ2VzKS4gKFRoaXMgaXMgYW4gYXNzZXJ0aW9uLCBub3QgYW4gZXhlY3V0YWJsZSBwcm9wZXJ0eS4gSXQgbWF5IGJlIHVzZWQgYnkgYW4gZXhlY3V0aW9uIGVuZ2luZSB0byBvcHRpbWl6ZSBtb2RlbCBleGVjdXRpb24uIElmIHRoZSBhc3NlcnRpb24gaXMgdmlvbGF0ZWQgYnkgdGhlIEFjdGl2aXR5LCB0aGVuIHRoZSBtb2RlbCBpcyBpbGwtZm9ybWVkLikiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNTaW5nbGVFeGVjdXRpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iZmFsc2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiB0cnVlLCBhbGwgaW52b2NhdGlvbnMgb2YgdGhlIEFjdGl2aXR5IGFyZSBoYW5kbGVkIGJ5IHRoZSBzYW1lIGV4ZWN1dGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icGFydGl0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9BY3Rpdml0eVBhcnRpdGlvbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRvcC1sZXZlbCBBY3Rpdml0eVBhcnRpdGlvbnMgaW4gdGhlIEFjdGl2aXR5LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQWN0aXZpdHkvZ3JvdXAgIy8vQWN0aXZpdHkvb3duZWRHcm91cCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ic3RydWN0dXJlZE5vZGUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1N0cnVjdHVyZWRBY3Rpdml0eU5vZGUiIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVG9wLWxldmVsIFN0cnVjdHVyZWRBY3Rpdml0eU5vZGVzIGluIHRoZSBBY3Rpdml0eS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0FjdGl2aXR5L2dyb3VwICMvL0FjdGl2aXR5L25vZGUiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkJlaGF2aW9yIiBhYnN0cmFjdD0idHJ1ZSIgZVN1cGVyVHlwZXM9IiMvL0NsYXNzIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJCZWhhdmlvciBpcyBhIHNwZWNpZmljYXRpb24gb2YgaG93IGl0cyBjb250ZXh0IEJlaGF2aW9yZWRDbGFzc2lmaWVyIGNoYW5nZXMgc3RhdGUgb3ZlciB0aW1lLiBUaGlzIHNwZWNpZmljYXRpb24gbWF5IGJlIGVpdGhlciBhIGRlZmluaXRpb24gb2YgcG9zc2libGUgYmVoYXZpb3IgZXhlY3V0aW9uIG9yIGVtZXJnZW50IGJlaGF2aW9yLCBvciBhIHNlbGVjdGl2ZSBpbGx1c3RyYXRpb24gb2YgYW4gaW50ZXJlc3Rpbmcgc3Vic2V0IG9mIHBvc3NpYmxlIGV4ZWN1dGlvbnMuIFRoZSBsYXR0ZXIgZm9ybSBpcyB0eXBpY2FsbHkgdXNlZCBmb3IgY2FwdHVyaW5nIGV4YW1wbGVzLCBzdWNoIGFzIGEgdHJhY2Ugb2YgYSBwYXJ0aWN1bGFyIGV4ZWN1dGlvbi4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibW9zdF9vbmVfYmVoYXZpb3IiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzcGVjaWZpY2F0aW9uICZsdDs+IG51bGwgaW1wbGllcyBfJ2NvbnRleHQnLm93bmVkQmVoYXZpb3ItPnNlbGVjdChzcGVjaWZpY2F0aW9uPXNlbGYuc3BlY2lmaWNhdGlvbiktPnNpemUoKSA9IDEiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGVyZSBtYXkgYmUgYXQgbW9zdCBvbmUgQmVoYXZpb3IgZm9yIGEgZ2l2ZW4gcGFpcmluZyBvZiBCZWhhdmlvcmVkQ2xhc3NpZmllciAoYXMgb3duZXIgb2YgdGhlIEJlaGF2aW9yKSBhbmQgQmVoYXZpb3JhbEZlYXR1cmUgKGFzIHNwZWNpZmljYXRpb24gb2YgdGhlIEJlaGF2aW9yKS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InBhcmFtZXRlcnNfbWF0Y2giIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzcGVjaWZpY2F0aW9uICZsdDs+IG51bGwgaW1wbGllcyBvd25lZFBhcmFtZXRlci0+c2l6ZSgpID0gc3BlY2lmaWNhdGlvbi5vd25lZFBhcmFtZXRlci0+c2l6ZSgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgYSBCZWhhdmlvciBoYXMgYSBzcGVjaWZpY2F0aW9uIEJlaGF2aW9yYWxGZWF0dXJlLCB0aGVuIGl0IG11c3QgaGF2ZSB0aGUgc2FtZSBudW1iZXIgb2Ygb3duZWRQYXJhbWV0ZXJzIGFzIGl0cyBzcGVjaWZpY2F0aW9uLiBUaGUgQmVoYXZpb3IgUGFyYW1ldGVycyBtdXN0IGFsc28gJnF1b3Q7bWF0Y2gmcXVvdDsgdGhlIEJlaGF2aW9yYWxQYXJhbWV0ZXIgUGFyYW1ldGVycywgYnV0IHRoZSBleGFjdCByZXF1aXJlbWVudHMgZm9yIHRoaXMgbWF0Y2hpbmcgYXJlIG5vdCBmb3JtYWxpemVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZmVhdHVyZV9vZl9jb250ZXh0X2NsYXNzaWZpZXIiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJfJ2NvbnRleHQnLmZlYXR1cmUtPmluY2x1ZGVzKHNwZWNpZmljYXRpb24pIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHNwZWNpZmljYXRpb24gQmVoYXZpb3JhbEZlYXR1cmUgbXVzdCBiZSBhIGZlYXR1cmUgKHBvc3NpYmx5IGluaGVyaXRlZCkgb2YgdGhlIGNvbnRleHQgQmVoYXZpb3JlZENsYXNzaWZpZXIgb2YgdGhlIEJlaGF2aW9yLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0Q29udGV4dCIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSIjLy9CZWhhdmlvcmVkQ2xhc3NpZmllciI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgQmVoYXZpb3IgdGhhdCBpcyBkaXJlY3RseSBvd25lZCBhcyBhIG5lc3RlZENsYXNzaWZpZXIgZG9lcyBub3QgaGF2ZSBhIGNvbnRleHQuIE90aGVyd2lzZSwgdG8gZGV0ZXJtaW5lIHRoZSBjb250ZXh0IG9mIGEgQmVoYXZpb3IsIGZpbmQgdGhlIGZpcnN0IEJlaGF2aW9yZWRDbGFzc2lmaWVyIHJlYWNoZWQgYnkgZm9sbG93aW5nIHRoZSBjaGFpbiBvZiBvd25lciByZWxhdGlvbnNoaXBzIGZyb20gdGhlIEJlaGF2aW9yLCBpZiBhbnkuIElmIHRoZXJlIGlzIHN1Y2ggYSBCZWhhdmlvcmVkQ2xhc3NpZmllciwgdGhlbiBpdCBpcyB0aGUgY29udGV4dCwgdW5sZXNzIGl0IGlzIGl0c2VsZiBhIEJlaGF2aW9yIHdpdGggYSBub24tZW1wdHkgY29udGV4dCwgaW4gd2hpY2ggY2FzZSB0aGF0IGlzIGFsc28gdGhlIGNvbnRleHQgZm9yIHRoZSBvcmlnaW5hbCBCZWhhdmlvci4iLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9Im9yaWdpbmFsTmFtZSIgdmFsdWU9ImNvbnRleHQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlmIG5lc3RpbmdDbGFzcyAmbHQ7PiBudWxsIHRoZW4mI3hEOyYjeEE7ICAgIG51bGwmI3hEOyYjeEE7ZWxzZSYjeEQ7JiN4QTsgICAgbGV0IGI6QmVoYXZpb3JlZENsYXNzaWZpZXIgPSBzZWxmLmJlaGF2aW9yZWRDbGFzc2lmaWVyKHNlbGYub3duZXIpIGluJiN4RDsmI3hBOyAgICBpZiBiLm9jbElzS2luZE9mKEJlaGF2aW9yKSBhbmQgYi5vY2xBc1R5cGUoQmVoYXZpb3IpLl8nY29udGV4dCcgJmx0Oz4gbnVsbCB0aGVuICYjeEQ7JiN4QTsgICAgICAgIGIub2NsQXNUeXBlKEJlaGF2aW9yKS5fJ2NvbnRleHQnJiN4RDsmI3hBOyAgICBlbHNlICYjeEQ7JiN4QTsgICAgICAgIGIgJiN4RDsmI3hBOyAgICBlbmRpZiYjeEQ7JiN4QTtlbmRpZiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iYmVoYXZpb3JlZENsYXNzaWZpZXIiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iIy8vQmVoYXZpb3JlZENsYXNzaWZpZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgZmlyc3QgQmVoYXZpb3JlZENsYXNzaWZpZXIgcmVhY2hlZCBieSBmb2xsb3dpbmcgdGhlIGNoYWluIG9mIG93bmVyIHJlbGF0aW9uc2hpcHMgZnJvbSB0aGUgQmVoYXZpb3IsIGlmIGFueS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImZyb20iIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vRWxlbWVudCIvPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlucHV0UGFyYW1ldGVycyIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9QYXJhbWV0ZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgaW4gYW5kIGlub3V0IG93bmVkUGFyYW1ldGVycyBvZiB0aGUgQmVoYXZpb3IuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJvd25lZFBhcmFtZXRlci0+c2VsZWN0KGRpcmVjdGlvbj1QYXJhbWV0ZXJEaXJlY3Rpb25LaW5kOjpfJ2luJyBvciBkaXJlY3Rpb249UGFyYW1ldGVyRGlyZWN0aW9uS2luZDo6aW5vdXQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJvdXRwdXRQYXJhbWV0ZXJzIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1BhcmFtZXRlciI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBvdXQsIGlub3V0IGFuZCByZXR1cm4gb3duZWRQYXJhbWV0ZXJzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ib3duZWRQYXJhbWV0ZXItPnNlbGVjdChkaXJlY3Rpb249UGFyYW1ldGVyRGlyZWN0aW9uS2luZDo6b3V0IG9yIGRpcmVjdGlvbj1QYXJhbWV0ZXJEaXJlY3Rpb25LaW5kOjppbm91dCBvciBkaXJlY3Rpb249UGFyYW1ldGVyRGlyZWN0aW9uS2luZDo6cmV0dXJuKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ic3BlY2lmaWNhdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9CZWhhdmlvcmFsRmVhdHVyZSIgZU9wcG9zaXRlPSIjLy9CZWhhdmlvcmFsRmVhdHVyZS9tZXRob2QiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJEZXNpZ25hdGVzIGEgQmVoYXZpb3JhbEZlYXR1cmUgdGhhdCB0aGUgQmVoYXZpb3IgaW1wbGVtZW50cy4gVGhlIEJlaGF2aW9yYWxGZWF0dXJlIG11c3QgYmUgb3duZWQgYnkgdGhlIEJlaGF2aW9yZWRDbGFzc2lmaWVyIHRoYXQgb3ducyB0aGUgQmVoYXZpb3Igb3IgYmUgaW5oZXJpdGVkIGJ5IGl0LiBUaGUgUGFyYW1ldGVycyBvZiB0aGUgQmVoYXZpb3JhbEZlYXR1cmUgYW5kIHRoZSBpbXBsZW1lbnRpbmcgQmVoYXZpb3IgbXVzdCBtYXRjaC4gQSBCZWhhdmlvciBkb2VzIG5vdCBuZWVkIHRvIGhhdmUgYSBzcGVjaWZpY2F0aW9uLCBpbiB3aGljaCBjYXNlIGl0IGVpdGhlciBpcyB0aGUgY2xhc3NpZmllckJlaGF2aW9yIG9mIGEgQmVoYXZpb3JlZENsYXNzaWZpZXIgb3IgaXQgY2FuIG9ubHkgYmUgaW52b2tlZCBieSBhbm90aGVyIEJlaGF2aW9yIG9mIHRoZSBDbGFzc2lmaWVyLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJjb250ZXh0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL0JlaGF2aW9yZWRDbGFzc2lmaWVyIiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIKKyAgICAgICAgZGVyaXZlZD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBCZWhhdmlvcmVkQ2xhc3NpZmllciB0aGF0IGlzIHRoZSBjb250ZXh0IGZvciB0aGUgZXhlY3V0aW9uIG9mIHRoZSBCZWhhdmlvci4gQSBCZWhhdmlvciB0aGF0IGlzIGRpcmVjdGx5IG93bmVkIGFzIGEgbmVzdGVkQ2xhc3NpZmllciBkb2VzIG5vdCBoYXZlIGEgY29udGV4dC4gT3RoZXJ3aXNlLCB0byBkZXRlcm1pbmUgdGhlIGNvbnRleHQgb2YgYSBCZWhhdmlvciwgZmluZCB0aGUgZmlyc3QgQmVoYXZpb3JlZENsYXNzaWZpZXIgcmVhY2hlZCBieSBmb2xsb3dpbmcgdGhlIGNoYWluIG9mIG93bmVyIHJlbGF0aW9uc2hpcHMgZnJvbSB0aGUgQmVoYXZpb3IsIGlmIGFueS4gSWYgdGhlcmUgaXMgc3VjaCBhIEJlaGF2aW9yZWRDbGFzc2lmaWVyLCB0aGVuIGl0IGlzIHRoZSBjb250ZXh0LCB1bmxlc3MgaXQgaXMgaXRzZWxmIGEgQmVoYXZpb3Igd2l0aCBhIG5vbi1lbXB0eSBjb250ZXh0LCBpbiB3aGljaCBjYXNlIHRoYXQgaXMgYWxzbyB0aGUgY29udGV4dCBmb3IgdGhlIG9yaWdpbmFsIEJlaGF2aW9yLiBGb3IgZXhhbXBsZSwgZm9sbG93aW5nIHRoaXMgYWxnb3JpdGhtLCB0aGUgY29udGV4dCBvZiBhbiBlbnRyeSBCZWhhdmlvciBpbiBhIFN0YXRlTWFjaGluZSBpcyB0aGUgQmVoYXZpb3JlZENsYXNzaWZpZXIgdGhhdCBvd25zIHRoZSBTdGF0ZU1hY2hpbmUuIFRoZSBmZWF0dXJlcyBvZiB0aGUgY29udGV4dCBCZWhhdmlvcmVkQ2xhc3NpZmllciBhcyB3ZWxsIGFzIHRoZSBFbGVtZW50cyB2aXNpYmxlIHRvIHRoZSBjb250ZXh0IENsYXNzaWZpZXIgYXJlIHZpc2libGUgdG8gdGhlIEJlaGF2aW9yLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vUmVkZWZpbmFibGVFbGVtZW50L3JlZGVmaW5pdGlvbkNvbnRleHQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImlzUmVlbnRyYW50IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGRlZmF1bHRWYWx1ZUxpdGVyYWw9InRydWUiIHVuc2V0dGFibGU9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUZWxscyB3aGV0aGVyIHRoZSBCZWhhdmlvciBjYW4gYmUgaW52b2tlZCB3aGlsZSBpdCBpcyBzdGlsbCBleGVjdXRpbmcgZnJvbSBhIHByZXZpb3VzIGludm9jYXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im93bmVkUGFyYW1ldGVyIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL1BhcmFtZXRlciIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZWZlcmVuY2VzIGEgbGlzdCBvZiBQYXJhbWV0ZXJzIHRvIHRoZSBCZWhhdmlvciB3aGljaCBkZXNjcmliZXMgdGhlIG9yZGVyIGFuZCB0eXBlIG9mIGFyZ3VtZW50cyB0aGF0IGNhbiBiZSBnaXZlbiB3aGVuIHRoZSBCZWhhdmlvciBpcyBpbnZva2VkIGFuZCBvZiB0aGUgdmFsdWVzIHdoaWNoIHdpbGwgYmUgcmV0dXJuZWQgd2hlbiB0aGUgQmVoYXZpb3IgY29tcGxldGVzIGl0cyBleGVjdXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lc3BhY2Uvb3duZWRNZW1iZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im93bmVkUGFyYW1ldGVyU2V0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9QYXJhbWV0ZXJTZXQiIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFBhcmFtZXRlclNldHMgb3duZWQgYnkgdGhpcyBCZWhhdmlvci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVzcGFjZS9vd25lZE1lbWJlciIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icG9zdGNvbmRpdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQ29uc3RyYWludCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIG9wdGlvbmFsIHNldCBvZiBDb25zdHJhaW50cyBzcGVjaWZ5aW5nIHdoYXQgaXMgZnVsZmlsbGVkIGFmdGVyIHRoZSBleGVjdXRpb24gb2YgdGhlIEJlaGF2aW9yIGlzIGNvbXBsZXRlZCwgaWYgaXRzIHByZWNvbmRpdGlvbiB3YXMgZnVsZmlsbGVkIGJlZm9yZSBpdHMgaW52b2NhdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVzcGFjZS9vd25lZFJ1bGUiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InByZWNvbmRpdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQ29uc3RyYWludCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIG9wdGlvbmFsIHNldCBvZiBDb25zdHJhaW50cyBzcGVjaWZ5aW5nIHdoYXQgbXVzdCBiZSBmdWxmaWxsZWQgYmVmb3JlIHRoZSBCZWhhdmlvciBpcyBpbnZva2VkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vTmFtZXNwYWNlL293bmVkUnVsZSIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVkZWZpbmVkQmVoYXZpb3IiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0JlaGF2aW9yIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmVmZXJlbmNlcyB0aGUgQmVoYXZpb3IgdGhhdCB0aGlzIEJlaGF2aW9yIHJlZGVmaW5lcy4gQSBzdWJ0eXBlIG9mIEJlaGF2aW9yIG1heSByZWRlZmluZSBhbnkgb3RoZXIgc3VidHlwZSBvZiBCZWhhdmlvci4gSWYgdGhlIEJlaGF2aW9yIGltcGxlbWVudHMgYSBCZWhhdmlvcmFsRmVhdHVyZSwgaXQgcmVwbGFjZXMgdGhlIHJlZGVmaW5lZCBCZWhhdmlvci4gSWYgdGhlIEJlaGF2aW9yIGlzIGEgY2xhc3NpZmllckJlaGF2aW9yLCBpdCBleHRlbmRzIHRoZSByZWRlZmluZWQgQmVoYXZpb3IuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9DbGFzc2lmaWVyL3JlZGVmaW5lZENsYXNzaWZpZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNsYXNzIiBlU3VwZXJUeXBlcz0iIy8vRW5jYXBzdWxhdGVkQ2xhc3NpZmllciAjLy9CZWhhdmlvcmVkQ2xhc3NpZmllciI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBDbGFzcyBjbGFzc2lmaWVzIGEgc2V0IG9mIG9iamVjdHMgYW5kIHNwZWNpZmllcyB0aGUgZmVhdHVyZXMgdGhhdCBjaGFyYWN0ZXJpemUgdGhlIHN0cnVjdHVyZSBhbmQgYmVoYXZpb3Igb2YgdGhvc2Ugb2JqZWN0cy4gIEEgQ2xhc3MgbWF5IGhhdmUgYW4gaW50ZXJuYWwgc3RydWN0dXJlIGFuZCBQb3J0cy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iZHVwbGljYXRlcyI+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im93bmVkQXR0cmlidXRlIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgICBlVHlwZT0iIy8vUHJvcGVydHkiIGNvbnRhaW5tZW50PSJ0cnVlIiBlT3Bwb3NpdGU9IiMvL1Byb3BlcnR5L2NsYXNzIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBhdHRyaWJ1dGVzIChpLmUuLCB0aGUgUHJvcGVydGllcykgb3duZWQgYnkgdGhlIENsYXNzLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vU3RydWN0dXJlZENsYXNzaWZpZXIvb3duZWRBdHRyaWJ1dGUiLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0NsYXNzaWZpZXIvYXR0cmlidXRlICMvL05hbWVzcGFjZS9vd25lZE1lbWJlciIvPgorICAgICAgPC9jb250ZW50cz4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNBYnN0cmFjdCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiCisgICAgICAgICAgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGRlZmF1bHRWYWx1ZUxpdGVyYWw9ImZhbHNlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIHRydWUsIHRoZSBDbGFzcyBkb2VzIG5vdCBwcm92aWRlIGEgY29tcGxldGUgZGVjbGFyYXRpb24gYW5kIGNhbm5vdCBiZSBpbnN0YW50aWF0ZWQuIEFuIGFic3RyYWN0IENsYXNzIGlzIHR5cGljYWxseSB1c2VkIGFzIGEgdGFyZ2V0IG9mIEFzc29jaWF0aW9ucyBvciBHZW5lcmFsaXphdGlvbnMuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9DbGFzc2lmaWVyL2lzQWJzdHJhY3QiLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InBhc3NpdmVfY2xhc3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJub3QgaXNBY3RpdmUgaW1wbGllcyAob3duZWRSZWNlcHRpb24tPmlzRW1wdHkoKSBhbmQgY2xhc3NpZmllckJlaGF2aW9yID0gbnVsbCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJPbmx5IGFuIGFjdGl2ZSBDbGFzcyBtYXkgb3duIFJlY2VwdGlvbnMgYW5kIGhhdmUgYSBjbGFzc2lmaWVyQmVoYXZpb3IuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjcmVhdGVPd25lZE9wZXJhdGlvbiIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9PcGVyYXRpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJDcmVhdGVzIGFuIG9wZXJhdGlvbiB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZSwgcGFyYW1ldGVyIG5hbWVzLCBwYXJhbWV0ZXIgdHlwZXMsIGFuZCByZXR1cm4gdHlwZSAob3IgbnVsbCkgYXMgYW4gb3duZWQgb3BlcmF0aW9uIG9mIHRoaXMgY2xhc3MuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJuYW1lIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbmFtZSBmb3IgdGhlIG5ldyBvcGVyYXRpb24sIG9yIG51bGwuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJwYXJhbWV0ZXJOYW1lcyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBwYXJhbWV0ZXIgbmFtZXMgZm9yIHRoZSBuZXcgb3BlcmF0aW9uLCBvciBudWxsLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icGFyYW1ldGVyVHlwZXMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1R5cGUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHBhcmFtZXRlciB0eXBlcyBmb3IgdGhlIG5ldyBvcGVyYXRpb24sIG9yIG51bGwuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJyZXR1cm5UeXBlIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9IiMvL1R5cGUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHJldHVybiB0eXBlIGZvciB0aGUgbmV3IG9wZXJhdGlvbiwgb3IgbnVsbC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzTWV0YWNsYXNzIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJEZXRlcm1pbmVzIHdoZXRoZXIgdGhpcyBjbGFzcyBpcyBhIG1ldGFjbGFzcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldEV4dGVuc2lvbnMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0V4dGVuc2lvbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkRlcml2YXRpb24gZm9yIENsYXNzOjovZXh0ZW5zaW9uIDogRXh0ZW5zaW9uIi8+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJvcmlnaW5hbE5hbWUiIHZhbHVlPSJleHRlbnNpb24iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9IkV4dGVuc2lvbi5hbGxJbnN0YW5jZXMoKS0+c2VsZWN0KGV4dCB8ICYjeEQ7JiN4QTsgIGxldCBlbmRUeXBlcyA6IFNlcXVlbmNlKENsYXNzaWZpZXIpID0gZXh0Lm1lbWJlckVuZC0+Y29sbGVjdCh0eXBlLm9jbEFzVHlwZShDbGFzc2lmaWVyKSkgaW4mI3hEOyYjeEE7ICBlbmRUeXBlcy0+aW5jbHVkZXMoc2VsZikgb3IgZW5kVHlwZXMuYWxsUGFyZW50cygpLT5pbmNsdWRlcyhzZWxmKSApIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRTdXBlckNsYXNzZXMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iRGVyaXZhdGlvbiBmb3IgQ2xhc3M6Oi9zdXBlckNsYXNzIDogQ2xhc3MiLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9Im9yaWdpbmFsTmFtZSIgdmFsdWU9InN1cGVyQ2xhc3MiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InNlbGYuZ2VuZXJhbCgpLT5zZWxlY3Qob2NsSXNLaW5kT2YoQ2xhc3MpKS0+Y29sbGVjdChvY2xBc1R5cGUoQ2xhc3MpKS0+YXNTZXQoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib3duZWRPcGVyYXRpb24iIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vT3BlcmF0aW9uIiBjb250YWlubWVudD0idHJ1ZSIgZU9wcG9zaXRlPSIjLy9PcGVyYXRpb24vY2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgT3BlcmF0aW9ucyBvd25lZCBieSB0aGUgQ2xhc3MuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9DbGFzc2lmaWVyL2ZlYXR1cmUgIy8vTmFtZXNwYWNlL293bmVkTWVtYmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJleHRlbnNpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0V4dGVuc2lvbiIgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiCisgICAgICAgIGRlcml2ZWQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vRXh0ZW5zaW9uL21ldGFjbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoaXMgcHJvcGVydHkgaXMgdXNlZCB3aGVuIHRoZSBDbGFzcyBpcyBhY3RpbmcgYXMgYSBtZXRhY2xhc3MuIEl0IHJlZmVyZW5jZXMgdGhlIEV4dGVuc2lvbnMgdGhhdCBzcGVjaWZ5IGFkZGl0aW9uYWwgcHJvcGVydGllcyBvZiB0aGUgbWV0YWNsYXNzLiBUaGUgcHJvcGVydHkgaXMgZGVyaXZlZCBmcm9tIHRoZSBFeHRlbnNpb25zIHdob3NlIG1lbWJlckVuZHMgYXJlIHR5cGVkIGJ5IHRoZSBDbGFzcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNBY3RpdmUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iZmFsc2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJEZXRlcm1pbmVzIHdoZXRoZXIgYW4gb2JqZWN0IHNwZWNpZmllZCBieSB0aGlzIENsYXNzIGlzIGFjdGl2ZSBvciBub3QuIElmIHRydWUsIHRoZW4gdGhlIG93bmluZyBDbGFzcyBpcyByZWZlcnJlZCB0byBhcyBhbiBhY3RpdmUgQ2xhc3MuIElmIGZhbHNlLCB0aGVuIHN1Y2ggYSBDbGFzcyBpcyByZWZlcnJlZCB0byBhcyBhIHBhc3NpdmUgQ2xhc3MuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im5lc3RlZENsYXNzaWZpZXIiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vQ2xhc3NpZmllciIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgQ2xhc3NpZmllcnMgb3duZWQgYnkgdGhlIENsYXNzIHRoYXQgYXJlIG5vdCBvd25lZEJlaGF2aW9ycy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVzcGFjZS9vd25lZE1lbWJlciIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib3duZWRSZWNlcHRpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1JlY2VwdGlvbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgUmVjZXB0aW9ucyBvd25lZCBieSB0aGUgQ2xhc3MuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9DbGFzc2lmaWVyL2ZlYXR1cmUgIy8vTmFtZXNwYWNlL293bmVkTWVtYmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJzdXBlckNsYXNzIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9DbGFzcyIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIgZGVyaXZlZD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBzdXBlcmNsYXNzZXMgb2YgYSBDbGFzcywgZGVyaXZlZCBmcm9tIGl0cyBHZW5lcmFsaXphdGlvbnMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL0NsYXNzaWZpZXIvZ2VuZXJhbCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQmVoYXZpb3JlZENsYXNzaWZpZXIiIGFic3RyYWN0PSJ0cnVlIgorICAgICAgZVN1cGVyVHlwZXM9IiMvL0NsYXNzaWZpZXIiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgQmVoYXZpb3JlZENsYXNzaWZpZXIgbWF5IGhhdmUgSW50ZXJmYWNlUmVhbGl6YXRpb25zLCBhbmQgb3ducyBhIHNldCBvZiBCZWhhdmlvcnMgb25lIG9mIHdoaWNoIG1heSBzcGVjaWZ5IHRoZSBiZWhhdmlvciBvZiB0aGUgQmVoYXZpb3JlZENsYXNzaWZpZXIgaXRzZWxmLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjbGFzc19iZWhhdmlvciIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImNsYXNzaWZpZXJCZWhhdmlvci0+bm90RW1wdHkoKSBpbXBsaWVzIGNsYXNzaWZpZXJCZWhhdmlvci5zcGVjaWZpY2F0aW9uLT5pc0VtcHR5KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiBhIGJlaGF2aW9yIGlzIGNsYXNzaWZpZXIgYmVoYXZpb3IsIGl0IGRvZXMgbm90IGhhdmUgYSBzcGVjaWZpY2F0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0QWxsSW1wbGVtZW50ZWRJbnRlcmZhY2VzIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9JbnRlcmZhY2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXRyaWV2ZXMgYWxsIHRoZSBpbnRlcmZhY2VzIG9uIHdoaWNoIHRoaXMgYmVoYXZpb3JlZCBjbGFzc2lmaWVyIG9yIGFueSBvZiBpdHMgcGFyZW50cyBoYXMgYW4gaW50ZXJmYWNlIHJlYWxpemF0aW9uIGRlcGVuZGVuY3kuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRJbXBsZW1lbnRlZEludGVyZmFjZXMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0ludGVyZmFjZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHJpZXZlcyB0aGUgaW50ZXJmYWNlcyBvbiB3aGljaCB0aGlzIGJlaGF2aW9yZWQgY2xhc3NpZmllciBoYXMgYW4gaW50ZXJmYWNlIHJlYWxpemF0aW9uIGRlcGVuZGVuY3kuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJjbGFzc2lmaWVyQmVoYXZpb3IiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vQmVoYXZpb3IiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIEJlaGF2aW9yIHRoYXQgc3BlY2lmaWVzIHRoZSBiZWhhdmlvciBvZiB0aGUgQmVoYXZpb3JlZENsYXNzaWZpZXIgaXRzZWxmLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQmVoYXZpb3JlZENsYXNzaWZpZXIvb3duZWRCZWhhdmlvciIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iaW50ZXJmYWNlUmVhbGl6YXRpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0ludGVyZmFjZVJlYWxpemF0aW9uIiBjb250YWlubWVudD0idHJ1ZSIgZU9wcG9zaXRlPSIjLy9JbnRlcmZhY2VSZWFsaXphdGlvbi9pbXBsZW1lbnRpbmdDbGFzc2lmaWVyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHNldCBvZiBJbnRlcmZhY2VSZWFsaXphdGlvbnMgb3duZWQgYnkgdGhlIEJlaGF2aW9yZWRDbGFzc2lmaWVyLiBJbnRlcmZhY2UgcmVhbGl6YXRpb25zIHJlZmVyZW5jZSB0aGUgSW50ZXJmYWNlcyBvZiB3aGljaCB0aGUgQmVoYXZpb3JlZENsYXNzaWZpZXIgaXMgYW4gaW1wbGVtZW50YXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib3duZWRCZWhhdmlvciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQmVoYXZpb3IiIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQmVoYXZpb3JzIG93bmVkIGJ5IGEgQmVoYXZpb3JlZENsYXNzaWZpZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lc3BhY2Uvb3duZWRNZW1iZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNsYXNzaWZpZXIiIGFic3RyYWN0PSJ0cnVlIiBlU3VwZXJUeXBlcz0iIy8vTmFtZXNwYWNlICMvL1JlZGVmaW5hYmxlRWxlbWVudCAjLy9UeXBlICMvL1RlbXBsYXRlYWJsZUVsZW1lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgQ2xhc3NpZmllciByZXByZXNlbnRzIGEgY2xhc3NpZmljYXRpb24gb2YgaW5zdGFuY2VzIGFjY29yZGluZyB0byB0aGVpciBGZWF0dXJlcy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iZHVwbGljYXRlcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ib3duZWRUZW1wbGF0ZVNpZ25hdHVyZSI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZVR5cGUiIHZhbHVlPSJ1bWw6OlJlZGVmaW5hYmxlVGVtcGxhdGVTaWduYXR1cmUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InRlbXBsYXRlUGFyYW1ldGVyIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJlVHlwZSIgdmFsdWU9InVtbDo6Q2xhc3NpZmllclRlbXBsYXRlUGFyYW1ldGVyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgbmFtZT0iY29uZm9ybXNUbyIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiCisgICAgICAgICAgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IGNvbmZvcm1zVG8oKSBnaXZlcyB0cnVlIGZvciBhIENsYXNzaWZpZXIgdGhhdCBkZWZpbmVzIGEgdHlwZSB0aGF0IGNvbmZvcm1zIHRvIGFub3RoZXIuIFRoaXMgaXMgdXNlZCwgZm9yIGV4YW1wbGUsIGluIHRoZSBzcGVjaWZpY2F0aW9uIG9mIHNpZ25hdHVyZSBjb25mb3JtYW5jZSBmb3Igb3BlcmF0aW9ucy4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL1R5cGUvY29uZm9ybXNUbyIvPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpZiBvdGhlci5vY2xJc0tpbmRPZihDbGFzc2lmaWVyKSB0aGVuJiN4RDsmI3hBOyAgbGV0IG90aGVyQ2xhc3NpZmllciA6IENsYXNzaWZpZXIgPSBvdGhlci5vY2xBc1R5cGUoQ2xhc3NpZmllcikgaW4mI3hEOyYjeEE7ICAgIHNlbGYgPSBvdGhlckNsYXNzaWZpZXIgb3IgYWxsUGFyZW50cygpLT5pbmNsdWRlcyhvdGhlckNsYXNzaWZpZXIpJiN4RDsmI3hBO2Vsc2UmI3hEOyYjeEE7ICBmYWxzZSYjeEQ7JiN4QTtlbmRpZiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im90aGVyIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1R5cGUiLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIG5hbWU9ImlzVGVtcGxhdGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIgorICAgICAgICAgIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBpc1RlbXBsYXRlKCkgcmV0dXJucyB3aGV0aGVyIHRoaXMgQ2xhc3NpZmllciBpcyBhY3R1YWxseSBhIHRlbXBsYXRlLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vVGVtcGxhdGVhYmxlRWxlbWVudC9pc1RlbXBsYXRlIi8+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im93bmVkVGVtcGxhdGVTaWduYXR1cmUgJmx0Oz4gbnVsbCBvciBnZW5lcmFsLT5leGlzdHMoZyB8IGcuaXNUZW1wbGF0ZSgpKSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvY29udGVudHM+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im93bmVkVGVtcGxhdGVTaWduYXR1cmUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgIGVUeXBlPSIjLy9UZW1wbGF0ZVNpZ25hdHVyZSIgY29udGFpbm1lbnQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vUmVkZWZpbmFibGVUZW1wbGF0ZVNpZ25hdHVyZS9jbGFzc2lmaWVyIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBvcHRpb25hbCBSZWRlZmluYWJsZVRlbXBsYXRlU2lnbmF0dXJlIHNwZWNpZnlpbmcgdGhlIGZvcm1hbCB0ZW1wbGF0ZSBwYXJhbWV0ZXJzLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vVGVtcGxhdGVhYmxlRWxlbWVudC9vd25lZFRlbXBsYXRlU2lnbmF0dXJlIi8+CisgICAgICA8L2NvbnRlbnRzPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJ0ZW1wbGF0ZVBhcmFtZXRlciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgZVR5cGU9IiMvL1RlbXBsYXRlUGFyYW1ldGVyIiBlT3Bwb3NpdGU9IiMvL0NsYXNzaWZpZXJUZW1wbGF0ZVBhcmFtZXRlci8lZHVwbGljYXRlcyUvcGFyYW1ldGVyZWRFbGVtZW50Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZUNsYXNzaWZpZXJUZW1wbGF0ZVBhcmFtZXRlciB0aGF0IGV4cG9zZXMgdGhpcyBlbGVtZW50IGFzIGEgZm9ybWFsIHBhcmFtZXRlci4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL1BhcmFtZXRlcmFibGVFbGVtZW50L3RlbXBsYXRlUGFyYW1ldGVyIi8+CisgICAgICA8L2NvbnRlbnRzPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzcGVjaWFsaXplX3R5cGUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJwYXJlbnRzKCktPmZvckFsbChjIHwgc2VsZi5tYXlTcGVjaWFsaXplVHlwZShjKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIENsYXNzaWZpZXIgbWF5IG9ubHkgc3BlY2lhbGl6ZSBDbGFzc2lmaWVycyBvZiBhIHZhbGlkIHR5cGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJtYXBzX3RvX2dlbmVyYWxpemF0aW9uX3NldCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InBvd2VydHlwZUV4dGVudC0+Zm9yQWxsKCBncyB8ICYjeEQ7JiN4QTsgIGdzLmdlbmVyYWxpemF0aW9uLT5mb3JBbGwoIGdlbiB8ICYjeEQ7JiN4QTsgICAgbm90IChnZW4uZ2VuZXJhbCA9IHNlbGYpIGFuZCBub3QgZ2VuLmdlbmVyYWwuYWxsUGFyZW50cygpLT5pbmNsdWRlcyhzZWxmKSBhbmQgbm90IChnZW4uc3BlY2lmaWMgPSBzZWxmKSBhbmQgbm90IHNlbGYuYWxsUGFyZW50cygpLT5pbmNsdWRlcyhnZW4uc3BlY2lmaWMpICYjeEQ7JiN4QTsgICkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIENsYXNzaWZpZXIgdGhhdCBtYXBzIHRvIGEgR2VuZXJhbGl6YXRpb25TZXQgbWF5IG5laXRoZXIgYmUgYSBzcGVjaWZpYyBub3IgYSBnZW5lcmFsIENsYXNzaWZpZXIgaW4gYW55IG9mIHRoZSBHZW5lcmFsaXphdGlvbiByZWxhdGlvbnNoaXBzIGRlZmluZWQgZm9yIHRoYXQgR2VuZXJhbGl6YXRpb25TZXQuIEluIG90aGVyIHdvcmRzLCBhIHBvd2VyIHR5cGUgbWF5IG5vdCBiZSBhbiBpbnN0YW5jZSBvZiBpdHNlbGYgbm9yIG1heSBpdHMgaW5zdGFuY2VzIGFsc28gYmUgaXRzIHN1YmNsYXNzZXMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJub25fZmluYWxfcGFyZW50cyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InBhcmVudHMoKS0+Zm9yQWxsKG5vdCBpc0ZpbmFsU3BlY2lhbGl6YXRpb24pIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHBhcmVudHMgb2YgYSBDbGFzc2lmaWVyIG11c3QgYmUgbm9uLWZpbmFsLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibm9fY3ljbGVzX2luX2dlbmVyYWxpemF0aW9uIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibm90IGFsbFBhcmVudHMoKS0+aW5jbHVkZXMoc2VsZikiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJHZW5lcmFsaXphdGlvbiBoaWVyYXJjaGllcyBtdXN0IGJlIGRpcmVjdGVkIGFuZCBhY3ljbGljYWwuIEEgQ2xhc3NpZmllciBjYW4gbm90IGJlIGJvdGggYSB0cmFuc2l0aXZlbHkgZ2VuZXJhbCBhbmQgdHJhbnNpdGl2ZWx5IHNwZWNpZmljIENsYXNzaWZpZXIgb2YgdGhlIHNhbWUgQ2xhc3NpZmllci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldEFsbEF0dHJpYnV0ZXMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1Byb3BlcnR5Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0cmlldmVzIGFsbCB0aGUgYXR0cmlidXRlcyBvZiB0aGlzIGNsYXNzaWZpZXIsIGluY2x1ZGluZyB0aG9zZSBpbmhlcml0ZWQgZnJvbSBpdHMgcGFyZW50cy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldEFsbE9wZXJhdGlvbnMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL09wZXJhdGlvbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHJpZXZlcyBhbGwgdGhlIG9wZXJhdGlvbnMgb2YgdGhpcyBjbGFzc2lmaWVyLCBpbmNsdWRpbmcgdGhvc2UgaW5oZXJpdGVkIGZyb20gaXRzIHBhcmVudHMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRBbGxVc2VkSW50ZXJmYWNlcyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vSW50ZXJmYWNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0cmlldmVzIGFsbCB0aGUgaW50ZXJmYWNlcyBvbiB3aGljaCB0aGlzIGNsYXNzaWZpZXIgb3IgYW55IG9mIGl0cyBwYXJlbnRzIGhhcyBhIHVzYWdlIGRlcGVuZGVuY3kuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRPcGVyYXRpb24iIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iIy8vT3BlcmF0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0cmlldmVzIHRoZSBmaXJzdCBvcGVyYXRpb24gd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUsIHBhcmFtZXRlciBuYW1lcywgYW5kIHBhcmFtZXRlciB0eXBlcyBmcm9tIHRoaXMgY2xhc3NpZmllci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im5hbWUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBuYW1lIG9mIHRoZSBvcGVyYXRpb24gdG8gcmV0cmlldmUsIG9yIG51bGwuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJwYXJhbWV0ZXJOYW1lcyIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHBhcmFtZXRlciBuYW1lcyBvZiB0aGUgb3BlcmF0aW9uIHRvIHJldHJpZXZlLCBvciBudWxsLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icGFyYW1ldGVyVHlwZXMiIHVuaXF1ZT0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vVHlwZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcGFyYW1ldGVyIHR5cGVzIG9mIHRoZSBvcGVyYXRpb24gdG8gcmV0cmlldmUsIG9yIG51bGwuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRPcGVyYXRpb24iIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iIy8vT3BlcmF0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0cmlldmVzIHRoZSBmaXJzdCBvcGVyYXRpb24gd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUsIHBhcmFtZXRlciBuYW1lcywgYW5kIHBhcmFtZXRlciB0eXBlcyBmcm9tIHRoaXMgY2xhc3NpZmllciwgaWdub3JpbmcgY2FzZSBpZiBpbmRpY2F0ZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJuYW1lIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbmFtZSBvZiB0aGUgb3BlcmF0aW9uIHRvIHJldHJpZXZlLCBvciBudWxsLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icGFyYW1ldGVyTmFtZXMiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBwYXJhbWV0ZXIgbmFtZXMgb2YgdGhlIG9wZXJhdGlvbiB0byByZXRyaWV2ZSwgb3IgbnVsbC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InBhcmFtZXRlclR5cGVzIiB1bmlxdWU9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1R5cGUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHBhcmFtZXRlciB0eXBlcyBvZiB0aGUgb3BlcmF0aW9uIHRvIHJldHJpZXZlLCBvciBudWxsLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iaWdub3JlQ2FzZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IldoZXRoZXIgdG8gaWdub3JlIGNhc2UgaW4gU3RyaW5nIGNvbXBhcmlzb25zLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0T3BlcmF0aW9ucyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vT3BlcmF0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0cmlldmVzIHRoZSBvcGVyYXRpb25zIG9mIHRoaXMgY2xhc3NpZmllci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldFVzZWRJbnRlcmZhY2VzIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9JbnRlcmZhY2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXRyaWV2ZXMgdGhlIGludGVyZmFjZXMgb24gd2hpY2ggdGhpcyBjbGFzc2lmaWVyIGhhcyBhIHVzYWdlIGRlcGVuZGVuY3kuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJhbGxGZWF0dXJlcyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vRmVhdHVyZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBhbGxGZWF0dXJlcygpIGdpdmVzIGFsbCBvZiB0aGUgRmVhdHVyZXMgaW4gdGhlIG5hbWVzcGFjZSBvZiB0aGUgQ2xhc3NpZmllci4gSW4gZ2VuZXJhbCwgdGhyb3VnaCBtZWNoYW5pc21zIHN1Y2ggYXMgaW5oZXJpdGFuY2UsIHRoaXMgd2lsbCBiZSBhIGxhcmdlciBzZXQgdGhhbiBmZWF0dXJlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibWVtYmVyLT5zZWxlY3Qob2NsSXNLaW5kT2YoRmVhdHVyZSkpLT5jb2xsZWN0KG9jbEFzVHlwZShGZWF0dXJlKSktPmFzU2V0KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImFsbFBhcmVudHMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0NsYXNzaWZpZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgYWxsUGFyZW50cygpIGdpdmVzIGFsbCBvZiB0aGUgZGlyZWN0IGFuZCBpbmRpcmVjdCBhbmNlc3RvcnMgb2YgYSBnZW5lcmFsaXplZCBDbGFzc2lmaWVyLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icGFyZW50cygpLT51bmlvbihwYXJlbnRzKCktPmNvbGxlY3QoYWxsUGFyZW50cygpKS0+YXNTZXQoKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldEdlbmVyYWxzIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9DbGFzc2lmaWVyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGdlbmVyYWwgQ2xhc3NpZmllcnMgYXJlIHRoZSBvbmVzIHJlZmVyZW5jZWQgYnkgdGhlIEdlbmVyYWxpemF0aW9uIHJlbGF0aW9uc2hpcHMuIi8+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJvcmlnaW5hbE5hbWUiIHZhbHVlPSJnZW5lcmFsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJwYXJlbnRzKCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Imhhc1Zpc2liaWxpdHlPZiIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IGhhc1Zpc2liaWxpdHlPZigpIGRldGVybWluZXMgd2hldGhlciBhIE5hbWVkRWxlbWVudCBpcyB2aXNpYmxlIGluIHRoZSBjbGFzc2lmaWVyLiBOb24tcHJpdmF0ZSBtZW1iZXJzIGFyZSB2aXNpYmxlLiBJdCBpcyBvbmx5IGNhbGxlZCB3aGVuIHRoZSBhcmd1bWVudCBpcyBzb21ldGhpbmcgb3duZWQgYnkgYSBwYXJlbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJuLnZpc2liaWxpdHkgJmx0Oz4gVmlzaWJpbGl0eUtpbmQ6OnByaXZhdGUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im4iIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vTmFtZWRFbGVtZW50Ii8+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaW5oZXJpdCIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vTmFtZWRFbGVtZW50Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IGluaGVyaXQoKSBkZWZpbmVzIGhvdyB0byBpbmhlcml0IGEgc2V0IG9mIGVsZW1lbnRzIHBhc3NlZCBhcyBpdHMgYXJndW1lbnQuICBJdCBleGNsdWRlcyByZWRlZmluZWQgZWxlbWVudHMgZnJvbSB0aGUgcmVzdWx0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaW5ocy0+cmVqZWN0KGluaCB8JiN4RDsmI3hBOyAgaW5oLm9jbElzS2luZE9mKFJlZGVmaW5hYmxlRWxlbWVudCkgYW5kJiN4RDsmI3hBOyAgb3duZWRNZW1iZXItPnNlbGVjdChvY2xJc0tpbmRPZihSZWRlZmluYWJsZUVsZW1lbnQpKS0+JiN4RDsmI3hBOyAgICBzZWxlY3QocmVkZWZpbmVkRWxlbWVudC0+aW5jbHVkZXMoaW5oLm9jbEFzVHlwZShSZWRlZmluYWJsZUVsZW1lbnQpKSkmI3hEOyYjeEE7ICAgICAgIC0+bm90RW1wdHkoKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImluaHMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL05hbWVkRWxlbWVudCIvPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImluaGVyaXRhYmxlTWVtYmVycyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vTmFtZWRFbGVtZW50Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IGluaGVyaXRhYmxlTWVtYmVycygpIGdpdmVzIGFsbCBvZiB0aGUgbWVtYmVycyBvZiBhIENsYXNzaWZpZXIgdGhhdCBtYXkgYmUgaW5oZXJpdGVkIGluIG9uZSBvZiBpdHMgZGVzY2VuZGFudHMsIHN1YmplY3QgdG8gd2hhdGV2ZXIgdmlzaWJpbGl0eSByZXN0cmljdGlvbnMgYXBwbHkuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJtZW1iZXItPnNlbGVjdChtIHwgYy5oYXNWaXNpYmlsaXR5T2YobSkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0NsYXNzaWZpZXIiLz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRJbmhlcml0ZWRNZW1iZXJzIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9OYW1lZEVsZW1lbnQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgaW5oZXJpdGVkTWVtYmVyIGFzc29jaWF0aW9uIGlzIGRlcml2ZWQgYnkgaW5oZXJpdGluZyB0aGUgaW5oZXJpdGFibGUgbWVtYmVycyBvZiB0aGUgcGFyZW50cy4iLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9Im9yaWdpbmFsTmFtZSIgdmFsdWU9ImluaGVyaXRlZE1lbWJlciIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaW5oZXJpdChwYXJlbnRzKCktPmNvbGxlY3QoaW5oZXJpdGFibGVNZW1iZXJzKHNlbGYpKS0+YXNTZXQoKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im1heVNwZWNpYWxpemVUeXBlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgbWF5U3BlY2lhbGl6ZVR5cGUoKSBkZXRlcm1pbmVzIHdoZXRoZXIgdGhpcyBjbGFzc2lmaWVyIG1heSBoYXZlIGEgZ2VuZXJhbGl6YXRpb24gcmVsYXRpb25zaGlwIHRvIGNsYXNzaWZpZXJzIG9mIHRoZSBzcGVjaWZpZWQgdHlwZS4gQnkgZGVmYXVsdCBhIGNsYXNzaWZpZXIgbWF5IHNwZWNpYWxpemUgY2xhc3NpZmllcnMgb2YgdGhlIHNhbWUgb3IgYSBtb3JlIGdlbmVyYWwgdHlwZS4gSXQgaXMgaW50ZW5kZWQgdG8gYmUgcmVkZWZpbmVkIGJ5IGNsYXNzaWZpZXJzIHRoYXQgaGF2ZSBkaWZmZXJlbnQgc3BlY2lhbGl6YXRpb24gY29uc3RyYWludHMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzZWxmLm9jbElzS2luZE9mKGMub2NsVHlwZSgpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYyIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9DbGFzc2lmaWVyIi8+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0icGFyZW50cyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQ2xhc3NpZmllciI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBwYXJlbnRzKCkgZ2l2ZXMgYWxsIG9mIHRoZSBpbW1lZGlhdGUgYW5jZXN0b3JzIG9mIGEgZ2VuZXJhbGl6ZWQgQ2xhc3NpZmllci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImdlbmVyYWxpemF0aW9uLmdlbmVyYWwtPmFzU2V0KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImRpcmVjdGx5UmVhbGl6ZWRJbnRlcmZhY2VzIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9JbnRlcmZhY2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgSW50ZXJmYWNlcyBkaXJlY3RseSByZWFsaXplZCBieSB0aGlzIENsYXNzaWZpZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9IihjbGllbnREZXBlbmRlbmN5LT4mI3hEOyYjeEE7ICBzZWxlY3Qob2NsSXNLaW5kT2YoUmVhbGl6YXRpb24pIGFuZCBzdXBwbGllci0+Zm9yQWxsKG9jbElzS2luZE9mKEludGVyZmFjZSkpKSktPiYjeEQ7JiN4QTsgICAgICBjb2xsZWN0KHN1cHBsaWVyLm9jbEFzVHlwZShJbnRlcmZhY2UpKS0+YXNTZXQoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZGlyZWN0bHlVc2VkSW50ZXJmYWNlcyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vSW50ZXJmYWNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIEludGVyZmFjZXMgZGlyZWN0bHkgdXNlZCBieSB0aGlzIENsYXNzaWZpZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9IihzdXBwbGllckRlcGVuZGVuY3ktPiYjeEQ7JiN4QTsgIHNlbGVjdChvY2xJc0tpbmRPZihVc2FnZSkgYW5kIGNsaWVudC0+Zm9yQWxsKG9jbElzS2luZE9mKEludGVyZmFjZSkpKSktPiYjeEQ7JiN4QTsgICAgY29sbGVjdChjbGllbnQub2NsQXNUeXBlKEludGVyZmFjZSkpLT5hc1NldCgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJhbGxSZWFsaXplZEludGVyZmFjZXMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0ludGVyZmFjZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBJbnRlcmZhY2VzIHJlYWxpemVkIGJ5IHRoaXMgQ2xhc3NpZmllciBhbmQgYWxsIG9mIGl0cyBnZW5lcmFsaXphdGlvbnMiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImRpcmVjdGx5UmVhbGl6ZWRJbnRlcmZhY2VzKCktPnVuaW9uKHNlbGYuYWxsUGFyZW50cygpLT5jb2xsZWN0KGRpcmVjdGx5UmVhbGl6ZWRJbnRlcmZhY2VzKCkpKS0+YXNTZXQoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iYWxsVXNlZEludGVyZmFjZXMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0ludGVyZmFjZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBJbnRlcmZhY2VzIHVzZWQgYnkgdGhpcyBDbGFzc2lmaWVyIGFuZCBhbGwgb2YgaXRzIGdlbmVyYWxpemF0aW9ucyIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iZGlyZWN0bHlVc2VkSW50ZXJmYWNlcygpLT51bmlvbihzZWxmLmFsbFBhcmVudHMoKS0+Y29sbGVjdChkaXJlY3RseVVzZWRJbnRlcmZhY2VzKCkpKS0+YXNTZXQoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNTdWJzdGl0dXRhYmxlRm9yIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InN1YnN0aXR1dGlvbi5jb250cmFjdC0+aW5jbHVkZXMoY29udHJhY3QpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250cmFjdCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9DbGFzc2lmaWVyIi8+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iYWxsQXR0cmlidXRlcyIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Qcm9wZXJ0eSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBhbGxBdHRyaWJ1dGVzIGdpdmVzIGFuIG9yZGVyZWQgc2V0IG9mIGFsbCBvd25lZCBhbmQgaW5oZXJpdGVkIGF0dHJpYnV0ZXMgb2YgdGhlIENsYXNzaWZpZXIuIEFsbCBvd25lZCBhdHRyaWJ1dGVzIGFwcGVhciBiZWZvcmUgYW55IGluaGVyaXRlZCBhdHRyaWJ1dGVzLCBhbmQgdGhlIGF0dHJpYnV0ZXMgaW5oZXJpdGVkIGZyb20gYW55IG1vcmUgc3BlY2lmaWMgcGFyZW50IENsYXNzaWZpZXIgYXBwZWFyIGJlZm9yZSB0aG9zZSBvZiBhbnkgbW9yZSBnZW5lcmFsIHBhcmVudCBDbGFzc2lmaWVyLiBIb3dldmVyLCBpZiB0aGUgQ2xhc3NpZmllciBoYXMgbXVsdGlwbGUgaW1tZWRpYXRlIHBhcmVudHMsIHRoZW4gdGhlIHJlbGF0aXZlIG9yZGVyaW5nIG9mIHRoZSBzZXRzIG9mIGF0dHJpYnV0ZXMgZnJvbSB0aG9zZSBwYXJlbnRzIGlzIG5vdCBkZWZpbmVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iYXR0cmlidXRlLT5hc1NlcXVlbmNlKCktPnVuaW9uKHBhcmVudHMoKS0+YXNTZXF1ZW5jZSgpLmFsbEF0dHJpYnV0ZXMoKSktPnNlbGVjdChwIHwgbWVtYmVyLT5pbmNsdWRlcyhwKSktPmFzT3JkZXJlZFNldCgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJhbGxTbG90dGFibGVGZWF0dXJlcyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vU3RydWN0dXJhbEZlYXR1cmUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbGwgU3RydWN0dXJhbEZlYXR1cmVzIHJlbGF0ZWQgdG8gdGhlIENsYXNzaWZpZXIgdGhhdCBtYXkgaGF2ZSBTbG90cywgaW5jbHVkaW5nIGRpcmVjdCBhdHRyaWJ1dGVzLCBpbmhlcml0ZWQgYXR0cmlidXRlcywgcHJpdmF0ZSBhdHRyaWJ1dGVzIGluIGdlbmVyYWxpemF0aW9ucywgYW5kIG1lbWJlckVuZHMgb2YgQXNzb2NpYXRpb25zLCBidXQgZXhjbHVkaW5nIHJlZGVmaW5lZCBTdHJ1Y3R1cmFsRmVhdHVyZXMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJtZW1iZXItPnNlbGVjdChvY2xJc0tpbmRPZihTdHJ1Y3R1cmFsRmVhdHVyZSkpLT4mI3hEOyYjeEE7ICBjb2xsZWN0KG9jbEFzVHlwZShTdHJ1Y3R1cmFsRmVhdHVyZSkpLT4mI3hEOyYjeEE7ICAgdW5pb24oc2VsZi5pbmhlcml0KHNlbGYuYWxsUGFyZW50cygpLT5jb2xsZWN0KHAgfCBwLmF0dHJpYnV0ZSktPmFzU2V0KCkpLT4mI3hEOyYjeEE7ICAgICBjb2xsZWN0KG9jbEFzVHlwZShTdHJ1Y3R1cmFsRmVhdHVyZSkpKS0+YXNTZXQoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZmVhdHVyZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vRmVhdHVyZSIgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiCisgICAgICAgIGRlcml2ZWQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vRmVhdHVyZS9mZWF0dXJpbmdDbGFzc2lmaWVyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iU3BlY2lmaWVzIGVhY2ggRmVhdHVyZSBkaXJlY3RseSBkZWZpbmVkIGluIHRoZSBjbGFzc2lmaWVyLiBOb3RlIHRoYXQgdGhlcmUgbWF5IGJlIG1lbWJlcnMgb2YgdGhlIENsYXNzaWZpZXIgdGhhdCBhcmUgb2YgdGhlIHR5cGUgRmVhdHVyZSBidXQgYXJlIG5vdCBpbmNsdWRlZCwgZS5nLiwgaW5oZXJpdGVkIGZlYXR1cmVzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0idW5pb24iLz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lc3BhY2UvbWVtYmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJhdHRyaWJ1dGUiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vUHJvcGVydHkiIGNoYW5nZWFibGU9ImZhbHNlIiB2b2xhdGlsZT0idHJ1ZSIgdHJhbnNpZW50PSJ0cnVlIiBkZXJpdmVkPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQWxsIG9mIHRoZSBQcm9wZXJ0aWVzIHRoYXQgYXJlIGRpcmVjdCAoaS5lLiwgbm90IGluaGVyaXRlZCBvciBpbXBvcnRlZCkgYXR0cmlidXRlcyBvZiB0aGUgQ2xhc3NpZmllci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InVuaW9uIi8+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQ2xhc3NpZmllci9mZWF0dXJlIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJjb2xsYWJvcmF0aW9uVXNlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Db2xsYWJvcmF0aW9uVXNlIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBDb2xsYWJvcmF0aW9uVXNlcyBvd25lZCBieSB0aGUgQ2xhc3NpZmllci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJnZW5lcmFsIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9DbGFzc2lmaWVyIiB2b2xhdGlsZT0idHJ1ZSIgdHJhbnNpZW50PSJ0cnVlIiBkZXJpdmVkPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGdlbmVyYWxpemluZyBDbGFzc2lmaWVycyBmb3IgdGhpcyBDbGFzc2lmaWVyLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJnZW5lcmFsaXphdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vR2VuZXJhbGl6YXRpb24iIGNvbnRhaW5tZW50PSJ0cnVlIiBlT3Bwb3NpdGU9IiMvL0dlbmVyYWxpemF0aW9uL3NwZWNpZmljIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIEdlbmVyYWxpemF0aW9uIHJlbGF0aW9uc2hpcHMgZm9yIHRoaXMgQ2xhc3NpZmllci4gVGhlc2UgR2VuZXJhbGl6YXRpb25zIG5hdmlnYXRlIHRvIG1vcmUgZ2VuZXJhbCBDbGFzc2lmaWVycyBpbiB0aGUgZ2VuZXJhbGl6YXRpb24gaGllcmFyY2h5LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InBvd2VydHlwZUV4dGVudCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vR2VuZXJhbGl6YXRpb25TZXQiIGVPcHBvc2l0ZT0iIy8vR2VuZXJhbGl6YXRpb25TZXQvcG93ZXJ0eXBlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIEdlbmVyYWxpemF0aW9uU2V0IG9mIHdoaWNoIHRoaXMgQ2xhc3NpZmllciBpcyBhIHBvd2VyIHR5cGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImluaGVyaXRlZE1lbWJlciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vTmFtZWRFbGVtZW50IiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiCisgICAgICAgIHRyYW5zaWVudD0idHJ1ZSIgZGVyaXZlZD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFsbCBlbGVtZW50cyBpbmhlcml0ZWQgYnkgdGhpcyBDbGFzc2lmaWVyIGZyb20gaXRzIGdlbmVyYWwgQ2xhc3NpZmllcnMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lc3BhY2UvbWVtYmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpc0Fic3RyYWN0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGRlZmF1bHRWYWx1ZUxpdGVyYWw9ImZhbHNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgdHJ1ZSwgdGhlIENsYXNzaWZpZXIgY2FuIG9ubHkgYmUgaW5zdGFudGlhdGVkIGJ5IGluc3RhbnRpYXRpbmcgb25lIG9mIGl0cyBzcGVjaWFsaXphdGlvbnMuIEFuIGFic3RyYWN0IENsYXNzaWZpZXIgaXMgaW50ZW5kZWQgdG8gYmUgdXNlZCBieSBvdGhlciBDbGFzc2lmaWVycyBlLmcuLCBhcyB0aGUgdGFyZ2V0IG9mIEFzc29jaWF0aW9ucyBvciBHZW5lcmFsaXphdGlvbnMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImlzRmluYWxTcGVjaWFsaXphdGlvbiIKKyAgICAgICAgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIgorICAgICAgICBkZWZhdWx0VmFsdWVMaXRlcmFsPSJmYWxzZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIHRydWUsIHRoZSBDbGFzc2lmaWVyIGNhbm5vdCBiZSBzcGVjaWFsaXplZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib3duZWRVc2VDYXNlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Vc2VDYXNlIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBVc2VDYXNlcyBvd25lZCBieSB0aGlzIGNsYXNzaWZpZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lc3BhY2Uvb3duZWRNZW1iZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InVzZUNhc2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1VzZUNhc2UiIGVPcHBvc2l0ZT0iIy8vVXNlQ2FzZS9zdWJqZWN0Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHNldCBvZiBVc2VDYXNlcyBmb3Igd2hpY2ggdGhpcyBDbGFzc2lmaWVyIGlzIHRoZSBzdWJqZWN0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyZWRlZmluZWRDbGFzc2lmaWVyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9DbGFzc2lmaWVyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIENsYXNzaWZpZXJzIHJlZGVmaW5lZCBieSB0aGlzIENsYXNzaWZpZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9SZWRlZmluYWJsZUVsZW1lbnQvcmVkZWZpbmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVwcmVzZW50YXRpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vQ29sbGFib3JhdGlvblVzZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgQ29sbGFib3JhdGlvblVzZSB3aGljaCBpbmRpY2F0ZXMgdGhlIENvbGxhYm9yYXRpb24gdGhhdCByZXByZXNlbnRzIHRoaXMgQ2xhc3NpZmllci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0NsYXNzaWZpZXIvY29sbGFib3JhdGlvblVzZSIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ic3Vic3RpdHV0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9TdWJzdGl0dXRpb24iIGNvbnRhaW5tZW50PSJ0cnVlIiBlT3Bwb3NpdGU9IiMvL1N1YnN0aXR1dGlvbi9zdWJzdGl0dXRpbmdDbGFzc2lmaWVyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFN1YnN0aXR1dGlvbnMgb3duZWQgYnkgdGhpcyBDbGFzc2lmaWVyLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik5hbWVzcGFjZSIgYWJzdHJhY3Q9InRydWUiIGVTdXBlclR5cGVzPSIjLy9OYW1lZEVsZW1lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgTmFtZXNwYWNlIGlzIGFuIEVsZW1lbnQgaW4gYSBtb2RlbCB0aGF0IG93bnMgYW5kL29yIGltcG9ydHMgYSBzZXQgb2YgTmFtZWRFbGVtZW50cyB0aGF0IGNhbiBiZSBpZGVudGlmaWVkIGJ5IG5hbWUuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im1lbWJlcnNfZGlzdGluZ3Vpc2hhYmxlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibWVtYmVyc0FyZURpc3Rpbmd1aXNoYWJsZSgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQWxsIHRoZSBtZW1iZXJzIG9mIGEgTmFtZXNwYWNlIGFyZSBkaXN0aW5ndWlzaGFibGUgd2l0aGluIGl0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY2Fubm90X2ltcG9ydF9zZWxmIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icGFja2FnZUltcG9ydC5pbXBvcnRlZFBhY2thZ2Uub2NsQXNUeXBlKE5hbWVzcGFjZSktPmV4Y2x1ZGVzKHNlbGYpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBOYW1lc3BhY2UgY2Fubm90IGhhdmUgYSBQYWNrYWdlSW1wb3J0IHRvIGl0c2VsZi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImNhbm5vdF9pbXBvcnRfb3duZWRNZW1iZXJzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iZWxlbWVudEltcG9ydC5pbXBvcnRlZEVsZW1lbnQub2NsQXNUeXBlKEVsZW1lbnQpLT5leGNsdWRlc0FsbChvd25lZE1lbWJlcikiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIE5hbWVzcGFjZSBjYW5ub3QgaGF2ZSBhbiBFbGVtZW50SW1wb3J0IHRvIG9uZSBvZiBpdHMgb3duZWRNZW1iZXJzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY3JlYXRlRWxlbWVudEltcG9ydCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9FbGVtZW50SW1wb3J0Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQ3JlYXRlcyBhbiBpbXBvcnQgb2YgdGhlIHNwZWNpZmllZCBlbGVtZW50IGludG8gdGhpcyBuYW1lc3BhY2Ugd2l0aCB0aGUgc3BlY2lmaWVkIHZpc2liaWxpdHkuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbGVtZW50IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1BhY2thZ2VhYmxlRWxlbWVudCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgZWxlbWVudCB0byBpbXBvcnQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJ2aXNpYmlsaXR5IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1Zpc2liaWxpdHlLaW5kIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB2aXNpYmlsaXR5IGZvciB0aGUgbmV3IGVsZW1lbnQgaW1wb3J0LiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY3JlYXRlUGFja2FnZUltcG9ydCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9QYWNrYWdlSW1wb3J0Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQ3JlYXRlcyBhbiBpbXBvcnQgb2YgdGhlIHNwZWNpZmllZCBwYWNrYWdlIGludG8gdGhpcyBuYW1lc3BhY2Ugd2l0aCB0aGUgc3BlY2lmaWVkIHZpc2liaWxpdHkuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJwYWNrYWdlXyIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9QYWNrYWdlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBwYWNrYWdlIHRvIGltcG9ydC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InZpc2liaWxpdHkiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vVmlzaWJpbGl0eUtpbmQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHZpc2liaWxpdHkgZm9yIHRoZSBuZXcgcGFja2FnZSBpbXBvcnQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRJbXBvcnRlZEVsZW1lbnRzIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9QYWNrYWdlYWJsZUVsZW1lbnQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXRyaWV2ZXMgdGhlIGVsZW1lbnRzIGltcG9ydGVkIGJ5IHRoaXMgbmFtZXNwYWNlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0SW1wb3J0ZWRQYWNrYWdlcyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUGFja2FnZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHJpZXZlcyB0aGUgcGFja2FnZXMgaW1wb3J0ZWQgYnkgdGhpcyBuYW1lc3BhY2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRPd25lZE1lbWJlcnMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL05hbWVkRWxlbWVudCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ib3JpZ2luYWxOYW1lIiB2YWx1ZT0ib3duZWRNZW1iZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9InN1cHByZXNzZWRWaXNpYmlsaXR5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZXhjbHVkZUNvbGxpc2lvbnMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1BhY2thZ2VhYmxlRWxlbWVudCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBleGNsdWRlQ29sbGlzaW9ucygpIGV4Y2x1ZGVzIGZyb20gYSBzZXQgb2YgUGFja2FnZWFibGVFbGVtZW50cyBhbnkgdGhhdCB3b3VsZCBub3QgYmUgZGlzdGluZ3Vpc2hhYmxlIGZyb20gZWFjaCBvdGhlciBpbiB0aGlzIE5hbWVzcGFjZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImltcHMtPnJlamVjdChpbXAxICB8IGltcHMtPmV4aXN0cyhpbXAyIHwgbm90IGltcDEuaXNEaXN0aW5ndWlzaGFibGVGcm9tKGltcDIsIHNlbGYpKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImltcHMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1BhY2thZ2VhYmxlRWxlbWVudCIvPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldE5hbWVzT2ZNZW1iZXIiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBnZXROYW1lc09mTWVtYmVyKCkgZ2l2ZXMgYSBzZXQgb2YgYWxsIG9mIHRoZSBuYW1lcyB0aGF0IGEgbWVtYmVyIHdvdWxkIGhhdmUgaW4gYSBOYW1lc3BhY2UsIHRha2luZyBpbXBvcnRpbmcgaW50byBhY2NvdW50LiBJbiBnZW5lcmFsIGEgbWVtYmVyIGNhbiBoYXZlIG11bHRpcGxlIG5hbWVzIGluIGEgTmFtZXNwYWNlIGlmIGl0IGlzIGltcG9ydGVkIG1vcmUgdGhhbiBvbmNlIHdpdGggZGlmZmVyZW50IGFsaWFzZXMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpZiBzZWxmLm93bmVkTWVtYmVyIC0+aW5jbHVkZXMoZWxlbWVudCkmI3hBO3RoZW4gU2V0e2VsZW1lbnQubmFtZX0mI3hBO2Vsc2UgbGV0IGVsZW1lbnRJbXBvcnRzIDogU2V0KEVsZW1lbnRJbXBvcnQpID0gc2VsZi5lbGVtZW50SW1wb3J0LT5zZWxlY3QoZWkgfCBlaS5pbXBvcnRlZEVsZW1lbnQgPSBlbGVtZW50KSBpbiYjeEE7ICBpZiBlbGVtZW50SW1wb3J0cy0+bm90RW1wdHkoKSYjeEE7ICB0aGVuJiN4QTsgICAgIGVsZW1lbnRJbXBvcnRzLT5jb2xsZWN0KGVsIHwgZWwuZ2V0TmFtZSgpKS0+YXNTZXQoKSYjeEE7ICBlbHNlICYjeEE7ICAgICBzZWxmLnBhY2thZ2VJbXBvcnQtPnNlbGVjdChwaSB8IHBpLmltcG9ydGVkUGFja2FnZS52aXNpYmxlTWVtYmVycygpLm9jbEFzVHlwZShOYW1lZEVsZW1lbnQpLT5pbmNsdWRlcyhlbGVtZW50KSktPiBjb2xsZWN0KHBpIHwgcGkuaW1wb3J0ZWRQYWNrYWdlLmdldE5hbWVzT2ZNZW1iZXIoZWxlbWVudCkpLT5hc1NldCgpJiN4QTsgIGVuZGlmJiN4QTtlbmRpZiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZWxlbWVudCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpbXBvcnRNZW1iZXJzIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9QYWNrYWdlYWJsZUVsZW1lbnQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgaW1wb3J0TWVtYmVycygpIGRlZmluZXMgd2hpY2ggb2YgYSBzZXQgb2YgUGFja2FnZWFibGVFbGVtZW50cyBhcmUgYWN0dWFsbHkgaW1wb3J0ZWQgaW50byB0aGUgTmFtZXNwYWNlLiBUaGlzIGV4Y2x1ZGVzIGhpZGRlbiBvbmVzLCBpLmUuLCB0aG9zZSB3aGljaCBoYXZlIG5hbWVzIHRoYXQgY29uZmxpY3Qgd2l0aCBuYW1lcyBvZiBvd25lZE1lbWJlcnMsIGFuZCBpdCBhbHNvIGV4Y2x1ZGVzIFBhY2thZ2VhYmxlRWxlbWVudHMgdGhhdCB3b3VsZCBoYXZlIHRoZSBpbmRpc3Rpbmd1aXNoYWJsZSBuYW1lcyB3aGVuIGltcG9ydGVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ic2VsZi5leGNsdWRlQ29sbGlzaW9ucyhpbXBzKS0+c2VsZWN0KGltcCB8IHNlbGYub3duZWRNZW1iZXItPmZvckFsbChtZW0gfCBpbXAuaXNEaXN0aW5ndWlzaGFibGVGcm9tKG1lbSwgc2VsZikpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iaW1wcyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUGFja2FnZWFibGVFbGVtZW50Ii8+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0SW1wb3J0ZWRNZW1iZXJzIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9QYWNrYWdlYWJsZUVsZW1lbnQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgaW1wb3J0ZWRNZW1iZXIgcHJvcGVydHkgaXMgZGVyaXZlZCBhcyB0aGUgUGFja2FnZWFibGVFbGVtZW50cyB0aGF0IGFyZSBtZW1iZXJzIG9mIHRoaXMgTmFtZXNwYWNlIGFzIGEgcmVzdWx0IG9mIGVpdGhlciBQYWNrYWdlSW1wb3J0cyBvciBFbGVtZW50SW1wb3J0cy4iLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9Im9yaWdpbmFsTmFtZSIgdmFsdWU9ImltcG9ydGVkTWVtYmVyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzZWxmLmltcG9ydE1lbWJlcnMoZWxlbWVudEltcG9ydC5pbXBvcnRlZEVsZW1lbnQtPmFzU2V0KCktPnVuaW9uKHBhY2thZ2VJbXBvcnQuaW1wb3J0ZWRQYWNrYWdlLT5jb2xsZWN0KHAgfCBwLnZpc2libGVNZW1iZXJzKCkpKS0+YXNTZXQoKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im1lbWJlcnNBcmVEaXN0aW5ndWlzaGFibGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBCb29sZWFuIHF1ZXJ5IG1lbWJlcnNBcmVEaXN0aW5ndWlzaGFibGUoKSBkZXRlcm1pbmVzIHdoZXRoZXIgYWxsIG9mIHRoZSBOYW1lc3BhY2UncyBtZW1iZXJzIGFyZSBkaXN0aW5ndWlzaGFibGUgd2l0aGluIGl0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibWVtYmVyLT5mb3JBbGwoIG1lbWIgfCYjeEE7ICAgbWVtYmVyLT5leGNsdWRpbmcobWVtYiktPmZvckFsbChvdGhlciB8JiN4QTsgICAgICAgbWVtYi5pc0Rpc3Rpbmd1aXNoYWJsZUZyb20ob3RoZXIsIHNlbGYpKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im93bmVkUnVsZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQ29uc3RyYWludCIgY29udGFpbm1lbnQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vQ29uc3RyYWludC9jb250ZXh0Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iU3BlY2lmaWVzIGEgc2V0IG9mIENvbnN0cmFpbnRzIG93bmVkIGJ5IHRoaXMgTmFtZXNwYWNlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vTmFtZXNwYWNlL293bmVkTWVtYmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlbGVtZW50SW1wb3J0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9FbGVtZW50SW1wb3J0IiBjb250YWlubWVudD0idHJ1ZSIgZU9wcG9zaXRlPSIjLy9FbGVtZW50SW1wb3J0L2ltcG9ydGluZ05hbWVzcGFjZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJlZmVyZW5jZXMgdGhlIEVsZW1lbnRJbXBvcnRzIG93bmVkIGJ5IHRoZSBOYW1lc3BhY2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icGFja2FnZUltcG9ydCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUGFja2FnZUltcG9ydCIgY29udGFpbm1lbnQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vUGFja2FnZUltcG9ydC9pbXBvcnRpbmdOYW1lc3BhY2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZWZlcmVuY2VzIHRoZSBQYWNrYWdlSW1wb3J0cyBvd25lZCBieSB0aGUgTmFtZXNwYWNlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im93bmVkTWVtYmVyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9OYW1lZEVsZW1lbnQiIGNoYW5nZWFibGU9ImZhbHNlIiB2b2xhdGlsZT0idHJ1ZSIKKyAgICAgICAgdHJhbnNpZW50PSJ0cnVlIiBkZXJpdmVkPSJ0cnVlIiBlT3Bwb3NpdGU9IiMvL05hbWVkRWxlbWVudC9uYW1lc3BhY2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIGNvbGxlY3Rpb24gb2YgTmFtZWRFbGVtZW50cyBvd25lZCBieSB0aGUgTmFtZXNwYWNlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0idW5pb24iLz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCAjLy9OYW1lc3BhY2UvbWVtYmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJpbXBvcnRlZE1lbWJlciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUGFja2FnZWFibGVFbGVtZW50IiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiCisgICAgICAgIHRyYW5zaWVudD0idHJ1ZSIgZGVyaXZlZD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJlZmVyZW5jZXMgdGhlIFBhY2thZ2VhYmxlRWxlbWVudHMgdGhhdCBhcmUgbWVtYmVycyBvZiB0aGlzIE5hbWVzcGFjZSBhcyBhIHJlc3VsdCBvZiBlaXRoZXIgUGFja2FnZUltcG9ydHMgb3IgRWxlbWVudEltcG9ydHMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lc3BhY2UvbWVtYmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJtZW1iZXIiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL05hbWVkRWxlbWVudCIgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIgorICAgICAgICB0cmFuc2llbnQ9InRydWUiIGRlcml2ZWQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIGNvbGxlY3Rpb24gb2YgTmFtZWRFbGVtZW50cyBpZGVudGlmaWFibGUgd2l0aGluIHRoZSBOYW1lc3BhY2UsIGVpdGhlciBieSBiZWluZyBvd25lZCBvciBieSBiZWluZyBpbnRyb2R1Y2VkIGJ5IGltcG9ydGluZyBvciBpbmhlcml0YW5jZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InVuaW9uIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJOYW1lZEVsZW1lbnQiIGFic3RyYWN0PSJ0cnVlIiBlU3VwZXJUeXBlcz0iIy8vRWxlbWVudCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBOYW1lZEVsZW1lbnQgaXMgYW4gRWxlbWVudCBpbiBhIG1vZGVsIHRoYXQgbWF5IGhhdmUgYSBuYW1lLiBUaGUgbmFtZSBtYXkgYmUgZ2l2ZW4gZGlyZWN0bHkgYW5kL29yIHZpYSB0aGUgdXNlIG9mIGEgU3RyaW5nRXhwcmVzc2lvbi4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0idmlzaWJpbGl0eV9uZWVkc19vd25lcnNoaXAiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIobmFtZXNwYWNlID0gbnVsbCBhbmQgb3duZXIgJmx0Oz4gbnVsbCkgaW1wbGllcyB2aXNpYmlsaXR5ID0gbnVsbCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIGEgTmFtZWRFbGVtZW50IGlzIG93bmVkIGJ5IHNvbWV0aGluZyBvdGhlciB0aGFuIGEgTmFtZXNwYWNlLCBpdCBkb2VzIG5vdCBoYXZlIGEgdmlzaWJpbGl0eS4gT25lIHRoYXQgaXMgbm90IG93bmVkIGJ5IGFueXRoaW5nIChhbmQgaGVuY2UgbXVzdCBiZSBhIFBhY2thZ2UsIGFzIHRoaXMgaXMgdGhlIG9ubHkga2luZCBvZiBOYW1lZEVsZW1lbnQgdGhhdCBvdmVycmlkZXMgbXVzdEJlT3duZWQoKSkgbWF5IGhhdmUgYSB2aXNpYmlsaXR5LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaGFzX3F1YWxpZmllZF9uYW1lIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iKG5hbWUgJmx0Oz4gbnVsbCBhbmQgYWxsTmFtZXNwYWNlcygpLT5zZWxlY3QobnMgfCBucy5uYW1lID0gbnVsbCktPmlzRW1wdHkoKSkgaW1wbGllcyYjeEE7ICBxdWFsaWZpZWROYW1lID0gYWxsTmFtZXNwYWNlcygpLT5pdGVyYXRlKCBucyA6IE5hbWVzcGFjZTsgYWdnOiBTdHJpbmcgPSBuYW1lIHwgbnMubmFtZS5jb25jYXQoc2VsZi5zZXBhcmF0b3IoKSkuY29uY2F0KGFnZykpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iV2hlbiB0aGVyZSBpcyBhIG5hbWUsIGFuZCBhbGwgb2YgdGhlIGNvbnRhaW5pbmcgTmFtZXNwYWNlcyBoYXZlIGEgbmFtZSwgdGhlIHF1YWxpZmllZE5hbWUgaXMgY29uc3RydWN0ZWQgZnJvbSB0aGUgbmFtZSBvZiB0aGUgTmFtZWRFbGVtZW50IGFuZCB0aGUgbmFtZXMgb2YgdGhlIGNvbnRhaW5pbmcgTmFtZXNwYWNlcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Imhhc19ub19xdWFsaWZpZWRfbmFtZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im5hbWU9bnVsbCBvciBhbGxOYW1lc3BhY2VzKCktPnNlbGVjdCggbnMgfCBucy5uYW1lPW51bGwgKS0+bm90RW1wdHkoKSBpbXBsaWVzIHF1YWxpZmllZE5hbWUgPSBudWxsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgdGhlcmUgaXMgbm8gbmFtZSwgb3Igb25lIG9mIHRoZSBjb250YWluaW5nIE5hbWVzcGFjZXMgaGFzIG5vIG5hbWUsIHRoZXJlIGlzIG5vIHF1YWxpZmllZE5hbWUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjcmVhdGVEZXBlbmRlbmN5IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0RlcGVuZGVuY3kiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJDcmVhdGVzIGEgZGVwZW5kZW5jeSBiZXR3ZWVuIHRoaXMgbmFtZWQgZWxlbWVudCBhbmQgdGhlIHNwZWNpZmllZCBzdXBwbGllciwgb3duZWQgYnkgdGhpcyBuYW1lZCBlbGVtZW50J3MgbmVhcmVzdCBwYWNrYWdlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ic3VwcGxpZXIiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vTmFtZWRFbGVtZW50Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBzdXBwbGllciBmb3IgdGhlIG5ldyBkZXBlbmRlbmN5LiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY3JlYXRlVXNhZ2UiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vVXNhZ2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJDcmVhdGVzIGEgdXNhZ2UgYmV0d2VlbiB0aGlzIG5hbWVkIGVsZW1lbnQgYW5kIHRoZSBzcGVjaWZpZWQgc3VwcGxpZXIsIG93bmVkIGJ5IHRoaXMgbmFtZWQgZWxlbWVudCdzIG5lYXJlc3QgcGFja2FnZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InN1cHBsaWVyIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL05hbWVkRWxlbWVudCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc3VwcGxpZXIgZm9yIHRoZSBuZXcgdXNhZ2UuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRMYWJlbCIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXRyaWV2ZXMgYSBsb2NhbGl6ZWQgbGFiZWwgZm9yIHRoaXMgbmFtZWQgZWxlbWVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldExhYmVsIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHJpZXZlcyBhIGxhYmVsIGZvciB0aGlzIG5hbWVkIGVsZW1lbnQsIGxvY2FsaXplZCBpZiBpbmRpY2F0ZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJsb2NhbGl6ZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IldoZXRoZXIgdG8gbG9jYWxpemUgdGhlIGxhYmVsLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0TmFtZXNwYWNlIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9IiMvL05hbWVzcGFjZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ib3JpZ2luYWxOYW1lIiB2YWx1ZT0ibmFtZXNwYWNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImFsbE5hbWVzcGFjZXMiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vTmFtZXNwYWNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IGFsbE5hbWVzcGFjZXMoKSBnaXZlcyB0aGUgc2VxdWVuY2Ugb2YgTmFtZXNwYWNlcyBpbiB3aGljaCB0aGUgTmFtZWRFbGVtZW50IGlzIG5lc3RlZCwgd29ya2luZyBvdXR3YXJkcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlmIG93bmVyID0gbnVsbCYjeEE7ICB0aGVuIE9yZGVyZWRTZXR7fSYjeEE7ZWxzZSYjeEE7ICBsZXQgZW5jbG9zaW5nTmFtZXNwYWNlIDogTmFtZXNwYWNlID0mI3hBOyAgICBpZiBvd25lci5vY2xJc0tpbmRPZihUZW1wbGF0ZVBhcmFtZXRlcikgYW5kIG93bmVyLm9jbEFzVHlwZShUZW1wbGF0ZVBhcmFtZXRlcikuc2lnbmF0dXJlLnRlbXBsYXRlLm9jbElzS2luZE9mKE5hbWVzcGFjZSkmI3hBOyAgICAgIHRoZW4gb3duZXIub2NsQXNUeXBlKFRlbXBsYXRlUGFyYW1ldGVyKS5zaWduYXR1cmUudGVtcGxhdGUub2NsQXNUeXBlKE5hbWVzcGFjZSkmI3hBOyAgICBlbHNlJiN4QTsgICAgICBuYW1lc3BhY2UmI3hBOyAgICBlbmRpZiYjeEE7ICBpbiBlbmNsb3NpbmdOYW1lc3BhY2UuYWxsTmFtZXNwYWNlcygpLT5wcmVwZW5kKGVuY2xvc2luZ05hbWVzcGFjZSkmI3hBO2VuZGlmIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJhbGxPd25pbmdQYWNrYWdlcyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUGFja2FnZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBhbGxPd25pbmdQYWNrYWdlcygpIHJldHVybnMgdGhlIHNldCBvZiBhbGwgdGhlIGVuY2xvc2luZyBOYW1lc3BhY2VzIG9mIHRoaXMgTmFtZWRFbGVtZW50LCB3b3JraW5nIG91dHdhcmRzLCB0aGF0IGFyZSBQYWNrYWdlcywgdXAgdG8gYnV0IG5vdCBpbmNsdWRpbmcgdGhlIGZpcnN0IHN1Y2ggTmFtZXNwYWNlIHRoYXQgaXMgbm90IGEgUGFja2FnZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlmIG5hbWVzcGFjZS5vY2xJc0tpbmRPZihQYWNrYWdlKSYjeEQ7JiN4QTt0aGVuJiN4RDsmI3hBOyAgbGV0IG93bmluZ1BhY2thZ2UgOiBQYWNrYWdlID0gbmFtZXNwYWNlLm9jbEFzVHlwZShQYWNrYWdlKSBpbiYjeEQ7JiN4QTsgICAgb3duaW5nUGFja2FnZS0+dW5pb24ob3duaW5nUGFja2FnZS5hbGxPd25pbmdQYWNrYWdlcygpKSYjeEQ7JiN4QTtlbHNlJiN4RDsmI3hBOyAgbnVsbCYjeEQ7JiN4QTtlbmRpZiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNEaXN0aW5ndWlzaGFibGVGcm9tIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgaXNEaXN0aW5ndWlzaGFibGVGcm9tKCkgZGV0ZXJtaW5lcyB3aGV0aGVyIHR3byBOYW1lZEVsZW1lbnRzIG1heSBsb2dpY2FsbHkgY28tZXhpc3Qgd2l0aGluIGEgTmFtZXNwYWNlLiBCeSBkZWZhdWx0LCB0d28gbmFtZWQgZWxlbWVudHMgYXJlIGRpc3Rpbmd1aXNoYWJsZSBpZiAoYSkgdGhleSBoYXZlIHR5cGVzIG5laXRoZXIgb2Ygd2hpY2ggaXMgYSBraW5kIG9mIHRoZSBvdGhlciBvciAoYikgdGhleSBoYXZlIGRpZmZlcmVudCBuYW1lcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9IihzZWxmLm9jbElzS2luZE9mKG4ub2NsVHlwZSgpKSBvciBuLm9jbElzS2luZE9mKHNlbGYub2NsVHlwZSgpKSkgaW1wbGllcyYjeEE7ICAgIG5zLmdldE5hbWVzT2ZNZW1iZXIoc2VsZiktPmludGVyc2VjdGlvbihucy5nZXROYW1lc09mTWVtYmVyKG4pKS0+aXNFbXB0eSgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJuIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL05hbWVkRWxlbWVudCIvPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im5zIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL05hbWVzcGFjZSIvPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldFF1YWxpZmllZE5hbWUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iV2hlbiBhIE5hbWVkRWxlbWVudCBoYXMgYSBuYW1lLCBhbmQgYWxsIG9mIGl0cyBjb250YWluaW5nIE5hbWVzcGFjZXMgaGF2ZSBhIG5hbWUsIHRoZSBxdWFsaWZpZWROYW1lIGlzIGNvbnN0cnVjdGVkIGZyb20gdGhlIG5hbWUgb2YgdGhlIE5hbWVkRWxlbWVudCBhbmQgdGhlIG5hbWVzIG9mIHRoZSBjb250YWluaW5nIE5hbWVzcGFjZXMuIi8+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJvcmlnaW5hbE5hbWUiIHZhbHVlPSJxdWFsaWZpZWROYW1lIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpZiBzZWxmLm5hbWUgJmx0Oz4gbnVsbCBhbmQgc2VsZi5hbGxOYW1lc3BhY2VzKCktPnNlbGVjdCggbnMgfCBucy5uYW1lPW51bGwgKS0+aXNFbXB0eSgpJiN4QTt0aGVuICYjeEE7ICAgIHNlbGYuYWxsTmFtZXNwYWNlcygpLT5pdGVyYXRlKCBucyA6IE5hbWVzcGFjZTsgYWdnOiBTdHJpbmcgPSBzZWxmLm5hbWUgfCBucy5uYW1lLmNvbmNhdChzZWxmLnNlcGFyYXRvcigpKS5jb25jYXQoYWdnKSkmI3hBO2Vsc2UmI3hBOyAgIG51bGwmI3hBO2VuZGlmIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzZXBhcmF0b3IiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IHNlcGFyYXRvcigpIGdpdmVzIHRoZSBzdHJpbmcgdGhhdCBpcyB1c2VkIHRvIHNlcGFyYXRlIG5hbWVzIHdoZW4gY29uc3RydWN0aW5nIGEgcXVhbGlmaWVkTmFtZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Iic6OiciLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldENsaWVudERlcGVuZGVuY2llcyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vRGVwZW5kZW5jeSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ib3JpZ2luYWxOYW1lIiB2YWx1ZT0iY2xpZW50RGVwZW5kZW5jeSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJEZXBlbmRlbmN5LmFsbEluc3RhbmNlcygpLT5zZWxlY3QoZCB8IGQuY2xpZW50LT5pbmNsdWRlcyhzZWxmKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImNsaWVudERlcGVuZGVuY3kiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0RlcGVuZGVuY3kiIGNoYW5nZWFibGU9ImZhbHNlIiB2b2xhdGlsZT0idHJ1ZSIgdHJhbnNpZW50PSJ0cnVlIgorICAgICAgICBkZXJpdmVkPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSW5kaWNhdGVzIHRoZSBEZXBlbmRlbmNpZXMgdGhhdCByZWZlcmVuY2UgdGhpcyBOYW1lZEVsZW1lbnQgYXMgYSBjbGllbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9Im5hbWUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIgorICAgICAgICB1bnNldHRhYmxlPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG5hbWUgb2YgdGhlIE5hbWVkRWxlbWVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ibmFtZUV4cHJlc3Npb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vU3RyaW5nRXhwcmVzc2lvbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgU3RyaW5nRXhwcmVzc2lvbiB1c2VkIHRvIGRlZmluZSB0aGUgbmFtZSBvZiB0aGlzIE5hbWVkRWxlbWVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJuYW1lc3BhY2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vTmFtZXNwYWNlIiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIgZGVyaXZlZD0idHJ1ZSIKKyAgICAgICAgZU9wcG9zaXRlPSIjLy9OYW1lc3BhY2Uvb3duZWRNZW1iZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgdGhlIE5hbWVzcGFjZSB0aGF0IG93bnMgdGhlIE5hbWVkRWxlbWVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InVuaW9uIi8+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lciIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0icXVhbGlmaWVkTmFtZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciIGNoYW5nZWFibGU9ImZhbHNlIiB2b2xhdGlsZT0idHJ1ZSIKKyAgICAgICAgdHJhbnNpZW50PSJ0cnVlIiBkZXJpdmVkPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBuYW1lIHRoYXQgYWxsb3dzIHRoZSBOYW1lZEVsZW1lbnQgdG8gYmUgaWRlbnRpZmllZCB3aXRoaW4gYSBoaWVyYXJjaHkgb2YgbmVzdGVkIE5hbWVzcGFjZXMuIEl0IGlzIGNvbnN0cnVjdGVkIGZyb20gdGhlIG5hbWVzIG9mIHRoZSBjb250YWluaW5nIE5hbWVzcGFjZXMgc3RhcnRpbmcgYXQgdGhlIHJvb3Qgb2YgdGhlIGhpZXJhcmNoeSBhbmQgZW5kaW5nIHdpdGggdGhlIG5hbWUgb2YgdGhlIE5hbWVkRWxlbWVudCBpdHNlbGYuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InZpc2liaWxpdHkiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vVmlzaWJpbGl0eUtpbmQiIHVuc2V0dGFibGU9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJEZXRlcm1pbmVzIHdoZXRoZXIgYW5kIGhvdyB0aGUgTmFtZWRFbGVtZW50IGlzIHZpc2libGUgb3V0c2lkZSBpdHMgb3duaW5nIE5hbWVzcGFjZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRWxlbWVudCIgYWJzdHJhY3Q9InRydWUiIGVTdXBlclR5cGVzPSJlY29yZS5lY29yZSMvL0VNb2RlbEVsZW1lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIEVsZW1lbnQgaXMgYSBjb25zdGl0dWVudCBvZiBhIG1vZGVsLiBBcyBzdWNoLCBpdCBoYXMgdGhlIGNhcGFiaWxpdHkgb2Ygb3duaW5nIG90aGVyIEVsZW1lbnRzLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJoYXNfb3duZXIiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJtdXN0QmVPd25lZCgpIGltcGxpZXMgb3duZXItPm5vdEVtcHR5KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJFbGVtZW50cyB0aGF0IG11c3QgYmUgb3duZWQgbXVzdCBoYXZlIGFuIG93bmVyLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibm90X293bl9zZWxmIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibm90IGFsbE93bmVkRWxlbWVudHMoKS0+aW5jbHVkZXMoc2VsZikiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBlbGVtZW50IG1heSBub3QgZGlyZWN0bHkgb3IgaW5kaXJlY3RseSBvd24gaXRzZWxmLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iYWRkS2V5d29yZCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQWRkcyB0aGUgc3BlY2lmaWVkIGtleXdvcmQgdG8gdGhpcyBlbGVtZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ia2V5d29yZCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGtleXdvcmQgdG8gYWRkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iYXBwbHlTdGVyZW90eXBlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVDbGFzcyBlY29yZS5lY29yZSMvL0VPYmplY3QiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBcHBsaWVzIHRoZSBzcGVjaWZpZWQgc3RlcmVvdHlwZSB0byB0aGlzIGVsZW1lbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJzdGVyZW90eXBlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1N0ZXJlb3R5cGUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHN0ZXJlb3R5cGUgdG8gYXBwbHkuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjcmVhdGVFQW5ub3RhdGlvbiIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFQ2xhc3MgZWNvcmUuZWNvcmUjLy9FQW5ub3RhdGlvbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkNyZWF0ZXMgYW4gYW5ub3RhdGlvbiB3aXRoIHRoZSBzcGVjaWZpZWQgc291cmNlIGFuZCB0aGlzIGVsZW1lbnQgYXMgaXRzIG1vZGVsIGVsZW1lbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJzb3VyY2UiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBzb3VyY2UgZm9yIHRoZSBuZXcgYW5ub3RhdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImRlc3Ryb3kiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iRGVzdHJveXMgdGhpcyBlbGVtZW50IGJ5IHJlbW92aW5nIGFsbCBjcm9zcyByZWZlcmVuY2VzIHRvL2Zyb20gaXQgYW5kIHJlbW92aW5nIGl0IGZyb20gaXRzIGNvbnRhaW5pbmcgcmVzb3VyY2Ugb3Igb2JqZWN0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0S2V5d29yZHMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHJpZXZlcyB0aGUga2V5d29yZHMgZm9yIHRoaXMgZWxlbWVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldEFwcGxpY2FibGVTdGVyZW90eXBlIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9IiMvL1N0ZXJlb3R5cGUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXRyaWV2ZXMgdGhlIHN0ZXJlb3R5cGUgd2l0aCB0aGUgc3BlY2lmaWVkIHF1YWxpZmllZCBuYW1lIHRoYXQgaXMgYXBwbGljYWJsZSB0byB0aGlzIGVsZW1lbnQsIG9yIG51bGwgaWYgbm8gc3VjaCBzdGVyZW90eXBlIGlzIGFwcGxpY2FibGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJxdWFsaWZpZWROYW1lIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVhbGlmaWVkIG5hbWUgb2YgdGhlIGFwcGxpY2FibGUgc3RlcmVvdHlwZSB0byByZXRyaWV2ZS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldEFwcGxpY2FibGVTdGVyZW90eXBlcyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vU3RlcmVvdHlwZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHJpZXZlcyB0aGUgc3RlcmVvdHlwZXMgdGhhdCBhcmUgYXBwbGljYWJsZSB0byB0aGlzIGVsZW1lbnQsIGluY2x1ZGluZyB0aG9zZSB0aGF0IGFyZSByZXF1aXJlZCBhbmQvb3IgbWF5IGFscmVhZHkgYmUgYXBwbGllZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldEFwcGxpZWRTdGVyZW90eXBlIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9IiMvL1N0ZXJlb3R5cGUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXRyaWV2ZXMgdGhlIHN0ZXJlb3R5cGUgd2l0aCB0aGUgc3BlY2lmaWVkIHF1YWxpZmllZCBuYW1lIHRoYXQgaXMgYXBwbGllZCB0byB0aGlzIGVsZW1lbnQsIG9yIG51bGwgaWYgbm8gc3VjaCBzdGVyZW90eXBlIGlzICBhcHBsaWVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icXVhbGlmaWVkTmFtZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1YWxpZmllZCBuYW1lIG9mIHRoZSBhcHBsaWVkIHN0ZXJlb3R5cGUgdG8gcmV0cmlldmUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRBcHBsaWVkU3RlcmVvdHlwZXMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1N0ZXJlb3R5cGUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXRyaWV2ZXMgdGhlIHN0ZXJlb3R5cGVzIHRoYXQgYXJlIGFwcGxpZWQgdG8gdGhpcyBlbGVtZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0QXBwbGllZFN1YnN0ZXJlb3R5cGUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iIy8vU3RlcmVvdHlwZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHJpZXZlcyB0aGUgc3Vic3RlcmVvdHlwZSBvZiB0aGUgc3BlY2lmaWVkIHN0ZXJlb3R5cGUgd2l0aCB0aGUgc3BlY2lmaWVkIHF1YWxpZmllZCBuYW1lIHRoYXQgaXMgYXBwbGllZCB0byB0aGlzIGVsZW1lbnQsIG9yIG51bGwgaWYgbm8gc3VjaCBzdGVyZW90eXBlIGlzIGFwcGxpZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJzdGVyZW90eXBlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1N0ZXJlb3R5cGUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHN1cGVyc3RlcmVvdHlwZSBvZiB0aGUgYXBwbGllZCBzdWJzdGVyZW90eXBlIHRvIHJldHJpZXZlLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icXVhbGlmaWVkTmFtZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1YWxpZmllZCBuYW1lIG9mIHRoZSBhcHBsaWVkIHN1YnN0ZXJlb3R5cGUgdG8gcmV0cmlldmUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRBcHBsaWVkU3Vic3RlcmVvdHlwZXMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1N0ZXJlb3R5cGUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXRyaWV2ZXMgdGhlIHN1YnN0ZXJlb3R5cGVzIG9mIHRoZSBzcGVjaWZpZWQgc3RlcmVvdHlwZSB0aGF0IGFyZSBhcHBsaWVkIHRvIHRoaXMgZWxlbWVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InN0ZXJlb3R5cGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vU3RlcmVvdHlwZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc3VwZXJzdGVyZW90eXBlIG9mIHRoZSBhcHBsaWVkIHN1YnN0ZXJlb3R5cGVzIHRvIHJldHJpZXZlLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0TW9kZWwiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iIy8vTW9kZWwiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXRyaWV2ZXMgdGhlIG1vZGVsIHRoYXQgb3ducyAoZWl0aGVyIGRpcmVjdGx5IG9yIGluZGlyZWN0bHkpIHRoaXMgZWxlbWVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldE5lYXJlc3RQYWNrYWdlIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9IiMvL1BhY2thZ2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXRyaWV2ZXMgdGhlIG5lYXJlc3QgcGFja2FnZSB0aGF0IG93bnMgKGVpdGhlciBkaXJlY3RseSBvciBpbmRpcmVjdGx5KSB0aGlzIGVsZW1lbnQsIG9yIHRoZSBlbGVtZW50IGl0c2VsZiAoaWYgaXQgaXMgYSBwYWNrYWdlKS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldFJlbGF0aW9uc2hpcHMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1JlbGF0aW9uc2hpcCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHJpZXZlcyB0aGUgcmVsYXRpb25zaGlwcyBpbiB3aGljaCB0aGlzIGVsZW1lbnQgaXMgaW52b2x2ZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRSZWxhdGlvbnNoaXBzIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9SZWxhdGlvbnNoaXAiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXRyaWV2ZXMgdGhlIHJlbGF0aW9uc2hpcHMgb2YgdGhlIHNwZWNpZmllZCB0eXBlIGluIHdoaWNoIHRoaXMgZWxlbWVudCBpcyBpbnZvbHZlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImVDbGFzcyIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFQ2xhc3MgZWNvcmUuZWNvcmUjLy9FQ2xhc3MiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIChtZXRhKXR5cGUgb2YgdGhlIHJlbGF0aW9uc2hpcHMgdG8gcmV0cmlldmUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRSZXF1aXJlZFN0ZXJlb3R5cGUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iIy8vU3RlcmVvdHlwZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHJpZXZlcyB0aGUgc3RlcmVvdHlwZSB3aXRoIHRoZSBzcGVjaWZpZWQgcXVhbGlmaWVkIG5hbWUgdGhhdCBpcyByZXF1aXJlZCBmb3IgdGhpcyBlbGVtZW50LCBvciBudWxsIGlmIG5vIHN1Y2ggc3RlcmVvdHlwZSBpcyByZXF1aXJlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InF1YWxpZmllZE5hbWUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWFsaWZpZWQgbmFtZSBvZiB0aGUgcmVxdWlyZWQgc3RlcmVvdHlwZSB0byByZXRyaWV2ZS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldFJlcXVpcmVkU3RlcmVvdHlwZXMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1N0ZXJlb3R5cGUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXRyaWV2ZXMgdGhlIHN0ZXJlb3R5cGVzIHRoYXQgYXJlIHJlcXVpcmVkIGZvciB0aGlzIGVsZW1lbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRTb3VyY2VEaXJlY3RlZFJlbGF0aW9uc2hpcHMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL0RpcmVjdGVkUmVsYXRpb25zaGlwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0cmlldmVzIHRoZSBkaXJlY3RlZCByZWxhdGlvbnNoaXBzIGZvciB3aGljaCB0aGlzIGVsZW1lbnQgaXMgYSBzb3VyY2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRTb3VyY2VEaXJlY3RlZFJlbGF0aW9uc2hpcHMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL0RpcmVjdGVkUmVsYXRpb25zaGlwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0cmlldmVzIHRoZSBkaXJlY3RlZCByZWxhdGlvbnNoaXBzIG9mIHRoZSBzcGVjaWZpZWQgdHlwZSBmb3Igd2hpY2ggdGhpcyBlbGVtZW50IGlzIGEgc291cmNlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZUNsYXNzIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVDbGFzcyBlY29yZS5lY29yZSMvL0VDbGFzcyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgKG1ldGEpdHlwZSBvZiB0aGUgZGlyZWN0ZWQgcmVsYXRpb25zaGlwcyB0byByZXRyaWV2ZS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldFN0ZXJlb3R5cGVBcHBsaWNhdGlvbiIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSJlY29yZTpFQ2xhc3MgZWNvcmUuZWNvcmUjLy9FT2JqZWN0Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0cmlldmVzIHRoZSBhcHBsaWNhdGlvbiBvZiB0aGUgc3BlY2lmaWVkIHN0ZXJlb3R5cGUgZm9yIHRoaXMgZWxlbWVudCwgb3IgbnVsbCBpZiBubyBzdWNoIHN0ZXJlb3R5cGUgYXBwbGljYXRpb24gZXhpc3RzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ic3RlcmVvdHlwZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9TdGVyZW90eXBlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBzdGVyZW90eXBlIGZvciB3aGljaCB0byByZXRyaWV2ZSBhbiBhcHBsaWNhdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldFN0ZXJlb3R5cGVBcHBsaWNhdGlvbnMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9ImVjb3JlOkVDbGFzcyBlY29yZS5lY29yZSMvL0VPYmplY3QiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXRyaWV2ZXMgdGhlIHN0ZXJlb3R5cGUgYXBwbGljYXRpb25zIGZvciB0aGlzIGVsZW1lbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRUYXJnZXREaXJlY3RlZFJlbGF0aW9uc2hpcHMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL0RpcmVjdGVkUmVsYXRpb25zaGlwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0cmlldmVzIHRoZSBkaXJlY3RlZCByZWxhdGlvbnNoaXBzIGZvciB3aGljaCB0aGlzIGVsZW1lbnQgaXMgYSB0YXJnZXQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRUYXJnZXREaXJlY3RlZFJlbGF0aW9uc2hpcHMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL0RpcmVjdGVkUmVsYXRpb25zaGlwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0cmlldmVzIHRoZSBkaXJlY3RlZCByZWxhdGlvbnNoaXBzIG9mIHRoZSBzcGVjaWZpZWQgdHlwZSBmb3Igd2hpY2ggdGhpcyBlbGVtZW50IGlzIGEgdGFyZ2V0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZUNsYXNzIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVDbGFzcyBlY29yZS5lY29yZSMvL0VDbGFzcyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgKG1ldGEpdHlwZSBvZiB0aGUgZGlyZWN0ZWQgcmVsYXRpb25zaGlwcyB0byByZXRyaWV2ZS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldFZhbHVlIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBlY29yZS5lY29yZSMvL0VKYXZhT2JqZWN0Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0cmlldmVzIHRoZSB2YWx1ZSBvZiB0aGUgcHJvcGVydHkgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUgaW4gdGhlIHNwZWNpZmllZCBzdGVyZW90eXBlIGZvciB0aGlzIGVsZW1lbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJzdGVyZW90eXBlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1N0ZXJlb3R5cGUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHN0ZXJlb3R5cGUgZm9yIHdoaWNoIHRvIHJldHJpZXZlIHRoZSB2YWx1ZS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InByb3BlcnR5TmFtZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG5hbWUgb2YgdGhlIHByb3BlcnR5IHdob3NlIHZhbHVlIHRvIHJldHJpZXZlLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaGFzS2V5d29yZCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iRGV0ZXJtaW5lcyB3aGV0aGVyIHRoaXMgZWxlbWVudCBoYXMgdGhlIHNwZWNpZmllZCBrZXl3b3JkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ia2V5d29yZCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGtleXdvcmQgaW4gcXVlc3Rpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJoYXNWYWx1ZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iRGV0ZXJtaW5lcyB3aGV0aGVyIHRoaXMgZWxlbWVudCBoYXMgYSAobm9uLWRlZmF1bHQpIHZhbHVlIGZvciB0aGUgcHJvcGVydHkgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUgaW4gdGhlIHNwZWNpZmllZCBzdGVyZW90eXBlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ic3RlcmVvdHlwZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9TdGVyZW90eXBlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBzdGVyZW90eXBlIGZvciB3aGljaCB0byB0ZXN0IHRoZSBwcm9wZXJ0eS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InByb3BlcnR5TmFtZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG5hbWUgb2YgdGhlIHByb3BlcnR5IGluIHF1ZXN0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNTdGVyZW90eXBlQXBwbGljYWJsZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iRGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSBzcGVjaWZpZWQgc3RlcmVvdHlwZSBpcyBhcHBsaWNhYmxlIHRvIHRoaXMgZWxlbWVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InN0ZXJlb3R5cGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vU3RlcmVvdHlwZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc3RlcmVvdHlwZSBpbiBxdWVzdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzU3RlcmVvdHlwZUFwcGxpZWQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkRldGVybWluZXMgd2hldGhlciB0aGUgc3BlY2lmaWVkIHN0ZXJlb3R5cGUgaXMgYXBwbGllZCB0byB0aGlzIGVsZW1lbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJzdGVyZW90eXBlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1N0ZXJlb3R5cGUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHN0ZXJlb3R5cGUgaW4gcXVlc3Rpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc1N0ZXJlb3R5cGVSZXF1aXJlZCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iRGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSBzcGVjaWZpZWQgc3RlcmVvdHlwZSBpcyByZXF1aXJlZCBmb3IgdGhpcyBlbGVtZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ic3RlcmVvdHlwZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9TdGVyZW90eXBlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBzdGVyZW90eXBlIGluIHF1ZXN0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0icmVtb3ZlS2V5d29yZCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmVtb3ZlcyB0aGUgc3BlY2lmaWVkIGtleXdvcmQgZnJvbSB0aGlzIGVsZW1lbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJrZXl3b3JkIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUga2V5d29yZCB0byByZW1vdmUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzZXRWYWx1ZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgcHJvcGVydHkgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUgaW4gdGhlIHNwZWNpZmllZCBzdGVyZW90eXBlIGZvciB0aGlzIGVsZW1lbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJzdGVyZW90eXBlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1N0ZXJlb3R5cGUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHN0ZXJlb3R5cGUgZm9yIHdoaWNoIHRvIHNldCB0aGUgdmFsdWUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJwcm9wZXJ0eU5hbWUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBuYW1lIG9mIHRoZSBwcm9wZXJ0eSB3aG9zZSB2YWx1ZSB0byBzZXQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJuZXdWYWx1ZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgZWNvcmUuZWNvcmUjLy9FSmF2YU9iamVjdCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbmV3IHZhbHVlIGZvciB0aGUgcHJvcGVydHkuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJ1bmFwcGx5U3RlcmVvdHlwZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFQ2xhc3MgZWNvcmUuZWNvcmUjLy9FT2JqZWN0Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVW5hcHBsaWVzIHRoZSBzcGVjaWZpZWQgc3RlcmVvdHlwZSBmcm9tIHRoaXMgZWxlbWVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InN0ZXJlb3R5cGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vU3RlcmVvdHlwZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc3RlcmVvdHlwZSB0byB1bmFwcGx5LiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iYWxsT3duZWRFbGVtZW50cyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vRWxlbWVudCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBhbGxPd25lZEVsZW1lbnRzKCkgZ2l2ZXMgYWxsIG9mIHRoZSBkaXJlY3QgYW5kIGluZGlyZWN0IG93bmVkRWxlbWVudHMgb2YgYW4gRWxlbWVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im93bmVkRWxlbWVudC0+dW5pb24ob3duZWRFbGVtZW50LT5jb2xsZWN0KGUgfCBlLmFsbE93bmVkRWxlbWVudHMoKSkpLT5hc1NldCgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJtdXN0QmVPd25lZCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IG11c3RCZU93bmVkKCkgaW5kaWNhdGVzIHdoZXRoZXIgRWxlbWVudHMgb2YgdGhpcyB0eXBlIG11c3QgaGF2ZSBhbiBvd25lci4gU3ViY2xhc3NlcyBvZiBFbGVtZW50IHRoYXQgZG8gbm90IHJlcXVpcmUgYW4gb3duZXIgbXVzdCBvdmVycmlkZSB0aGlzIG9wZXJhdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im93bmVkQ29tbWVudCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQ29tbWVudCIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgQ29tbWVudHMgb3duZWQgYnkgdGhpcyBFbGVtZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im93bmVkRWxlbWVudCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vRWxlbWVudCIgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiCisgICAgICAgIGRlcml2ZWQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vRWxlbWVudC9vd25lciI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBFbGVtZW50cyBvd25lZCBieSB0aGlzIEVsZW1lbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJ1bmlvbiIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib3duZXIiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vRWxlbWVudCIgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiIGRlcml2ZWQ9InRydWUiCisgICAgICAgIGVPcHBvc2l0ZT0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgRWxlbWVudCB0aGF0IG93bnMgdGhpcyBFbGVtZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0idW5pb24iLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNvbW1lbnQiIGVTdXBlclR5cGVzPSIjLy9FbGVtZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIENvbW1lbnQgaXMgYSB0ZXh0dWFsIGFubm90YXRpb24gdGhhdCBjYW4gYmUgYXR0YWNoZWQgdG8gYSBzZXQgb2YgRWxlbWVudHMuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImFubm90YXRlZEVsZW1lbnQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0VsZW1lbnQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZWZlcmVuY2VzIHRoZSBFbGVtZW50KHMpIGJlaW5nIGNvbW1lbnRlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iYm9keSIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciCisgICAgICAgIHVuc2V0dGFibGU9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgYSBzdHJpbmcgdGhhdCBpcyB0aGUgY29tbWVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly8vb3JnL2VjbGlwc2UvZW1mL2Vjb3JlL3V0aWwvRXh0ZW5kZWRNZXRhRGF0YSI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ia2luZCIgdmFsdWU9ImVsZW1lbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU3RlcmVvdHlwZSIgZVN1cGVyVHlwZXM9IiMvL0NsYXNzIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIHN0ZXJlb3R5cGUgZGVmaW5lcyBob3cgYW4gZXhpc3RpbmcgbWV0YWNsYXNzIG1heSBiZSBleHRlbmRlZCwgYW5kIGVuYWJsZXMgdGhlIHVzZSBvZiBwbGF0Zm9ybSBvciBkb21haW4gc3BlY2lmaWMgdGVybWlub2xvZ3kgb3Igbm90YXRpb24gaW4gcGxhY2Ugb2YsIG9yIGluIGFkZGl0aW9uIHRvLCB0aGUgb25lcyB1c2VkIGZvciB0aGUgZXh0ZW5kZWQgbWV0YWNsYXNzLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJiaW5hcnlBc3NvY2lhdGlvbnNPbmx5IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ib3duZWRBdHRyaWJ1dGUuYXNzb2NpYXRpb24tPmZvckFsbChtZW1iZXJFbmQtPnNpemUoKT0yKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlN0ZXJlb3R5cGVzIG1heSBvbmx5IHBhcnRpY2lwYXRlIGluIGJpbmFyeSBhc3NvY2lhdGlvbnMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZW5lcmFsaXplIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iYWxsUGFyZW50cygpLT5mb3JBbGwob2NsSXNLaW5kT2YoU3RlcmVvdHlwZSkpICYjeEQ7JiN4QTthbmQgQ2xhc3NpZmllci5hbGxJbnN0YW5jZXMoKS0+Zm9yQWxsKGMgfCBjLmFsbFBhcmVudHMoKS0+ZXhpc3RzKG9jbElzS2luZE9mKFN0ZXJlb3R5cGUpKSBpbXBsaWVzIGMub2NsSXNLaW5kT2YoU3RlcmVvdHlwZSkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBTdGVyZW90eXBlIG1heSBvbmx5IGdlbmVyYWxpemUgb3Igc3BlY2lhbGl6ZSBhbm90aGVyIFN0ZXJlb3R5cGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJuYW1lX25vdF9jbGFzaCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTdGVyZW90eXBlIG5hbWVzIHNob3VsZCBub3QgY2xhc2ggd2l0aCBrZXl3b3JkIG5hbWVzIGZvciB0aGUgZXh0ZW5kZWQgbW9kZWwgZWxlbWVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImFzc29jaWF0aW9uRW5kT3duZXJzaGlwIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ib3duZWRBdHRyaWJ1dGUmI3hEOyYjeEE7LT5zZWxlY3QoYXNzb2NpYXRpb24tPm5vdEVtcHR5KCkgYW5kIG5vdCBhc3NvY2lhdGlvbi5vY2xJc0tpbmRPZihFeHRlbnNpb24pIGFuZCBub3QgdHlwZS5vY2xJc0tpbmRPZihTdGVyZW90eXBlKSkmI3hEOyYjeEE7LT5mb3JBbGwob3Bwb3NpdGUub3duZXIgPSBhc3NvY2lhdGlvbikiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJXaGVyZSBhIHN0ZXJlb3R5cGXigJlzIHByb3BlcnR5IGlzIGFuIGFzc29jaWF0aW9uIGVuZCBmb3IgYW4gYXNzb2NpYXRpb24gb3RoZXIgdGhhbiBhIGtpbmQgb2YgZXh0ZW5zaW9uLCBhbmQgdGhlIG90aGVyIGVuZCBpcyBub3QgYSBzdGVyZW90eXBlLCB0aGUgb3RoZXIgZW5kIG11c3QgYmUgb3duZWQgYnkgdGhlIGFzc29jaWF0aW9uIGl0c2VsZi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImJhc2VfcHJvcGVydHlfdXBwZXJfYm91bmQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHVwcGVyIGJvdW5kIG9mIGJhc2UtcHJvcGVydGllcyBpcyBleGFjdGx5IDEuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJiYXNlX3Byb3BlcnR5X211bHRpcGxpY2l0eV9zaW5nbGVfZXh0ZW5zaW9uIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIGEgU3RlcmVvdHlwZSBleHRlbmRzIG9ubHkgb25lIG1ldGFjbGFzcywgdGhlIG11bHRpcGxpY2l0eSBvZiB0aGUgY29ycmVzcG9uZGluZyBiYXNlLXByb3BlcnR5IHNoYWxsIGJlIDEuLjEuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJiYXNlX3Byb3BlcnR5X211bHRpcGxpY2l0eV9tdWx0aXBsZV9leHRlbnNpb24iIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgYSBTdGVyZW90eXBlIGV4dGVuZHMgbW9yZSB0aGFuIG9uZSBtZXRhY2xhc3MsIHRoZSBtdWx0aXBsaWNpdHkgb2YgdGhlIGNvcnJlc3BvbmRpbmcgYmFzZS1wcm9wZXJ0aWVzIHNoYWxsIGJlIFswLi4xXS4gQXQgYW55IHBvaW50IGluIHRpbWUsIG9ubHkgb25lIG9mIHRoZXNlIGJhc2UtcHJvcGVydGllcyBjYW4gY29udGFpbiBhIG1ldGFjbGFzcyBpbnN0YW5jZSBkdXJpbmcgcnVudGltZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImNyZWF0ZUV4dGVuc2lvbiIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9FeHRlbnNpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJDcmVhdGVzIGEobikgKHJlcXVpcmVkKSBleHRlbnNpb24gb2YgdGhlIHNwZWNpZmllZCBtZXRhY2xhc3Mgd2l0aCB0aGlzIHN0ZXJlb3R5cGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJtZXRhY2xhc3MiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vQ2xhc3MiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG1ldGFjbGFzcyBmb3IgdGhlIG5ldyBleHRlbnNpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJpc1JlcXVpcmVkIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iV2hldGhlciB0aGUgbmV3IGV4dGVuc2lvbiBzaG91bGQgYmUgcmVxdWlyZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjcmVhdGVJY29uIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0ltYWdlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQ3JlYXRlcyBhbiBpY29uIHdpdGggdGhlIHNwZWNpZmllZCBsb2NhdGlvbiBmb3IgdGhpcyBzdGVyZW90eXBlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibG9jYXRpb24iIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBsb2NhdGlvbiBmb3IgdGhlIG5ldyBpY29uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY3JlYXRlSWNvbiIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9JbWFnZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkNyZWF0ZXMgYW4gaWNvbiB3aXRoIHRoZSBzcGVjaWZpZWQgZm9ybWF0IGFuZCBjb250ZW50IGZvciB0aGlzIHN0ZXJlb3R5cGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJmb3JtYXQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBmb3JtYXQgZm9yIHRoZSBuZXcgaWNvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRlbnQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjb250ZW50IGZvciB0aGUgbmV3IGljb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRBbGxFeHRlbmRlZE1ldGFjbGFzc2VzIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHJpZXZlcyBhbGwgdGhlIG1ldGFjbGFzc2VzIGV4dGVuZGVkIGJ5IHRoaXMgc3RlcmVvdHlwZSwgaW5jbHVkaW5nIHRoZSBtZXRhY2xhc3NlcyBleHRlbmRlZCBieSBpdHMgc3VwZXJzdGVyZW90eXBlcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldERlZmluaXRpb24iIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iZWNvcmU6RUNsYXNzIGVjb3JlLmVjb3JlIy8vRUNsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0cmlldmVzIHRoZSBjdXJyZW50IGRlZmluaXRpb24gKEVjb3JlIHJlcHJlc2VudGF0aW9uKSBvZiB0aGlzIHN0ZXJlb3R5cGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRFeHRlbmRlZE1ldGFjbGFzc2VzIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHJpZXZlcyB0aGUgbWV0YWNsYXNzZXMgZXh0ZW5kZWQgYnkgdGhpcyBzdGVyZW90eXBlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0S2V5d29yZCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXRyaWV2ZXMgdGhlIGxvY2FsaXplZCBrZXl3b3JkIGZvciB0aGlzIHN0ZXJlb3R5cGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRLZXl3b3JkIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHJpZXZlcyB0aGUga2V5d29yZCBmb3IgdGhpcyBzdGVyZW90eXBlLCBsb2NhbGl6ZWQgaWYgaW5kaWNhdGVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibG9jYWxpemUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJXaGV0aGVyIHRvIGxvY2FsaXplIHRoZSBrZXl3b3JkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY29udGFpbmluZ1Byb2ZpbGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUHJvZmlsZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBjb250YWluaW5nUHJvZmlsZSByZXR1cm5zIHRoZSBjbG9zZXN0IHByb2ZpbGUgZGlyZWN0bHkgb3IgaW5kaXJlY3RseSBjb250YWluaW5nIHRoaXMgc3RlcmVvdHlwZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InNlbGYubmFtZXNwYWNlLm9jbEFzVHlwZShQYWNrYWdlKS5jb250YWluaW5nUHJvZmlsZSgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRQcm9maWxlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1Byb2ZpbGUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIHN0ZXJlb3R5cGUgbXVzdCBiZSBjb250YWluZWQsIGRpcmVjdGx5IG9yIGluZGlyZWN0bHksIGluIGEgcHJvZmlsZS4iLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9Im9yaWdpbmFsTmFtZSIgdmFsdWU9InByb2ZpbGUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InNlbGYuY29udGFpbmluZ1Byb2ZpbGUoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iaWNvbiIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vSW1hZ2UiIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iU3RlcmVvdHlwZSBjYW4gY2hhbmdlIHRoZSBncmFwaGljYWwgYXBwZWFyYW5jZSBvZiB0aGUgZXh0ZW5kZWQgbW9kZWwgZWxlbWVudCBieSB1c2luZyBhdHRhY2hlZCBpY29ucy4gV2hlbiB0aGlzIGFzc29jaWF0aW9uIGlzIG5vdCBudWxsLCBpdCByZWZlcmVuY2VzIHRoZSBsb2NhdGlvbiBvZiB0aGUgaWNvbiBjb250ZW50IHRvIGJlIGRpc3BsYXllZCB3aXRoaW4gZGlhZ3JhbXMgcHJlc2VudGluZyB0aGUgZXh0ZW5kZWQgbW9kZWwgZWxlbWVudHMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icHJvZmlsZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Qcm9maWxlIiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIKKyAgICAgICAgZGVyaXZlZD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBwcm9maWxlIHRoYXQgZGlyZWN0bHkgb3IgaW5kaXJlY3RseSBjb250YWlucyB0aGlzIHN0ZXJlb3R5cGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkltYWdlIiBlU3VwZXJUeXBlcz0iIy8vRWxlbWVudCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUGh5c2ljYWwgZGVmaW5pdGlvbiBvZiBhIGdyYXBoaWNhbCBpbWFnZS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iY29udGVudCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciIHVuc2V0dGFibGU9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGlzIGNvbnRhaW5zIHRoZSBzZXJpYWxpemF0aW9uIG9mIHRoZSBpbWFnZSBhY2NvcmRpbmcgdG8gdGhlIGZvcm1hdC4gVGhlIHZhbHVlIGNvdWxkIHJlcHJlc2VudCBhIGJpdG1hcCwgaW1hZ2Ugc3VjaCBhcyBhIEdJRiBmaWxlLCBvciBkcmF3aW5nICdpbnN0cnVjdGlvbnMnIHVzaW5nIGEgc3RhbmRhcmQgc3VjaCBhcyBTY2FsYWJsZSBWZWN0b3IgR3JhcGhpYyAoU1ZHKSAod2hpY2ggaXMgWE1MIGJhc2VkKS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iZm9ybWF0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyIgdW5zZXR0YWJsZT0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoaXMgaW5kaWNhdGVzIHRoZSBmb3JtYXQgb2YgdGhlIGNvbnRlbnQsIHdoaWNoIGlzIGhvdyB0aGUgc3RyaW5nIGNvbnRlbnQgc2hvdWxkIGJlIGludGVycHJldGVkLiBUaGUgZm9sbG93aW5nIHZhbHVlcyBhcmUgcmVzZXJ2ZWQ6IFNWRywgR0lGLCBQTkcsIEpQRywgV01GLCBFTUYsIEJNUC4gSW4gYWRkaXRpb24gdGhlIHByZWZpeCAnTUlNRTogJyBpcyBhbHNvIHJlc2VydmVkLiBUaGlzIG9wdGlvbiBjYW4gYmUgdXNlZCBhcyBhbiBhbHRlcm5hdGl2ZSB0byBleHByZXNzIHRoZSByZXNlcnZlZCB2YWx1ZXMgYWJvdmUsIGZvciBleGFtcGxlICZxdW90O1NWRyZxdW90OyBjb3VsZCBpbnN0ZWFkIGJlIGV4cHJlc3NlZCBhcyAmcXVvdDtNSU1FOiBpbWFnZS9zdmcreG1sJnF1b3Q7LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJsb2NhdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciIHVuc2V0dGFibGU9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGlzIGNvbnRhaW5zIGEgbG9jYXRpb24gdGhhdCBjYW4gYmUgdXNlZCBieSBhIHRvb2wgdG8gbG9jYXRlIHRoZSBpbWFnZSBhcyBhbiBhbHRlcm5hdGl2ZSB0byBlbWJlZGRpbmcgaXQgaW4gdGhlIHN0ZXJlb3R5cGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlByb2ZpbGUiIGVTdXBlclR5cGVzPSIjLy9QYWNrYWdlIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIHByb2ZpbGUgZGVmaW5lcyBsaW1pdGVkIGV4dGVuc2lvbnMgdG8gYSByZWZlcmVuY2UgbWV0YW1vZGVsIHdpdGggdGhlIHB1cnBvc2Ugb2YgYWRhcHRpbmcgdGhlIG1ldGFtb2RlbCB0byBhIHNwZWNpZmljIHBsYXRmb3JtIG9yIGRvbWFpbi4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibWV0YWNsYXNzX3JlZmVyZW5jZV9ub3Rfc3BlY2lhbGl6ZWQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJtZXRhY2xhc3NSZWZlcmVuY2UuaW1wb3J0ZWRFbGVtZW50LT4mI3hEOyYjeEE7JiN4OTtzZWxlY3QoYyB8IGMub2NsSXNLaW5kT2YoQ2xhc3NpZmllcikgYW5kJiN4RDsmI3hBOyYjeDk7JiN4OTsoYy5vY2xBc1R5cGUoQ2xhc3NpZmllcikuYWxsUGFyZW50cygpLT5jb2xsZWN0KG5hbWVzcGFjZSktPmluY2x1ZGVzKHNlbGYpKSktPmlzRW1wdHkoKSYjeEQ7JiN4QTthbmQgJiN4RDsmI3hBO3BhY2thZ2VkRWxlbWVudC0+JiN4RDsmI3hBOyAgICBzZWxlY3Qob2NsSXNLaW5kT2YoQ2xhc3NpZmllcikpLT5jb2xsZWN0KG9jbEFzVHlwZShDbGFzc2lmaWVyKS5hbGxQYXJlbnRzKCkpLT4mI3hEOyYjeEE7ICAgICAgIGludGVyc2VjdGlvbihtZXRhY2xhc3NSZWZlcmVuY2UuaW1wb3J0ZWRFbGVtZW50LT5zZWxlY3Qob2NsSXNLaW5kT2YoQ2xhc3NpZmllcikpLT5jb2xsZWN0KG9jbEFzVHlwZShDbGFzc2lmaWVyKSkpLT5pc0VtcHR5KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBlbGVtZW50IGltcG9ydGVkIGFzIGEgbWV0YWNsYXNzUmVmZXJlbmNlIGlzIG5vdCBzcGVjaWFsaXplZCBvciBnZW5lcmFsaXplZCBpbiBhIFByb2ZpbGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJyZWZlcmVuY2VzX3NhbWVfbWV0YW1vZGVsIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibWV0YW1vZGVsUmVmZXJlbmNlLmltcG9ydGVkUGFja2FnZS5lbGVtZW50SW1wb3J0LmltcG9ydGVkRWxlbWVudC5hbGxPd25pbmdQYWNrYWdlcygpLT4mI3hEOyYjeEE7ICB1bmlvbihtZXRhY2xhc3NSZWZlcmVuY2UuaW1wb3J0ZWRFbGVtZW50LmFsbE93bmluZ1BhY2thZ2VzKCkgKS0+bm90RW1wdHkoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFsbCBlbGVtZW50cyBpbXBvcnRlZCBlaXRoZXIgYXMgbWV0YWNsYXNzUmVmZXJlbmNlcyBvciB0aHJvdWdoIG1ldGFtb2RlbFJlZmVyZW5jZXMgYXJlIG1lbWJlcnMgb2YgdGhlIHNhbWUgYmFzZSByZWZlcmVuY2UgbWV0YW1vZGVsLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY3JlYXRlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVDbGFzcyBlY29yZS5lY29yZSMvL0VPYmplY3QiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJDcmVhdGVzIGFuZCByZXR1cm5zIGFuIGluc3RhbmNlIG9mICh0aGUgRWNvcmUgcmVwcmVzZW50YXRpb24gb2YpIHRoZSBzcGVjaWZpZWQgY2xhc3NpZmllciBkZWZpbmVkIGluIHRoaXMgcHJvZmlsZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNsYXNzaWZpZXIiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vQ2xhc3NpZmllciI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2xhc3NpZmllciBvZiB3aGljaCB0byBjcmVhdGUgYW4gaW5zdGFuY2UuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJkZWZpbmUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iZWNvcmU6RUNsYXNzIGVjb3JlLmVjb3JlIy8vRVBhY2thZ2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJEZWZpbmVzIHRoaXMgcHJvZmlsZSBieSAocmUpY3JlYXRpbmcgRWNvcmUgcmVwcmVzZW50YXRpb25zIG9mIGl0cyBjdXJyZW50IGNvbnRlbnRzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZGVmaW5lIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVDbGFzcyBlY29yZS5lY29yZSMvL0VQYWNrYWdlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iRGVmaW5lcyB0aGlzIHByb2ZpbGUgYnkgKHJlKWNyZWF0aW5nIEVjb3JlIHJlcHJlc2VudGF0aW9ucyBvZiBpdHMgY3VycmVudCBjb250ZW50cywgdXNpbmcgdGhlIHNwZWNpZmllZCBvcHRpb25zLCBkaWFnbm9zdGljcywgYW5kIGNvbnRleHQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJvcHRpb25zIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgb3B0aW9ucyB0byB1c2UuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgZWNvcmUuZWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBlY29yZS5lY29yZSMvL0VTdHJpbmciLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBlY29yZS5lY29yZSMvL0VTdHJpbmciLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBlY29yZS5lY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGVjb3JlLmVjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgZWNvcmUuZWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGVjb3JlLmVjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldERlZmluaXRpb24iIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iZWNvcmU6RUNsYXNzIGVjb3JlLmVjb3JlIy8vRVBhY2thZ2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXRyaWV2ZXMgdGhlIGN1cnJlbnQgZGVmaW5pdGlvbiAoRWNvcmUgcmVwcmVzZW50YXRpb24pIG9mIHRoaXMgcHJvZmlsZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldERlZmluaXRpb24iIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iZWNvcmU6RUNsYXNzIGVjb3JlLmVjb3JlIy8vRU5hbWVkRWxlbWVudCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHJpZXZlcyB0aGUgY3VycmVudCBkZWZpbml0aW9uIChFY29yZSByZXByZXNlbnRhdGlvbikgb2YgdGhlIHNwZWNpZmllZCBuYW1lZCBlbGVtZW50IGluIHRoaXMgcHJvZmlsZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im5hbWVkRWxlbWVudCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9OYW1lZEVsZW1lbnQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG5hbWVkIGVsZW1lbnQgd2hvc2UgZGVmaW5pdGlvbiB0byByZXRyaWV2ZS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldE93bmVkRXh0ZW5zaW9ucyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vRXh0ZW5zaW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0cmlldmVzIHRoZSBleHRlbnNpb25zIG93bmVkIGJ5IHRoaXMgcHJvZmlsZSwgZXhjbHVkaW5nIG5vbi1yZXF1aXJlZCBleHRlbnNpb25zIGlmIGluZGljYXRlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InJlcXVpcmVkT25seSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IldoZXRoZXIgdG8gcmV0cmlldmUgb25seSByZXF1aXJlZCBleHRlbnNpb25zLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0UmVmZXJlbmNlZE1ldGFjbGFzc2VzIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHJpZXZlcyB0aGUgbWV0YWNsYXNzZXMgcmVmZXJlbmNlZCBieSB0aGlzIHByb2ZpbGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRSZWZlcmVuY2VkTWV0YW1vZGVscyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vTW9kZWwiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXRyaWV2ZXMgdGhlIG1ldGFtb2RlbHMgcmVmZXJlbmNlZCBieSB0aGlzIHByb2ZpbGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc0RlZmluZWQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkRldGVybWluZXMgd2hldGhlciB0aGlzIHByb2ZpbGUgaXMgZGVmaW5lZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im1ldGFjbGFzc1JlZmVyZW5jZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vRWxlbWVudEltcG9ydCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJlZmVyZW5jZXMgYSBtZXRhY2xhc3MgdGhhdCBtYXkgYmUgZXh0ZW5kZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lc3BhY2UvZWxlbWVudEltcG9ydCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ibWV0YW1vZGVsUmVmZXJlbmNlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9QYWNrYWdlSW1wb3J0Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmVmZXJlbmNlcyBhIHBhY2thZ2UgY29udGFpbmluZyAoZGlyZWN0bHkgb3IgaW5kaXJlY3RseSkgbWV0YWNsYXNzZXMgdGhhdCBtYXkgYmUgZXh0ZW5kZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lc3BhY2UvcGFja2FnZUltcG9ydCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUGFja2FnZSIgZVN1cGVyVHlwZXM9IiMvL05hbWVzcGFjZSAjLy9QYWNrYWdlYWJsZUVsZW1lbnQgIy8vVGVtcGxhdGVhYmxlRWxlbWVudCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBwYWNrYWdlIGNhbiBoYXZlIG9uZSBvciBtb3JlIHByb2ZpbGUgYXBwbGljYXRpb25zIHRvIGluZGljYXRlIHdoaWNoIHByb2ZpbGVzIGhhdmUgYmVlbiBhcHBsaWVkLiBCZWNhdXNlIGEgcHJvZmlsZSBpcyBhIHBhY2thZ2UsIGl0IGlzIHBvc3NpYmxlIHRvIGFwcGx5IGEgcHJvZmlsZSBub3Qgb25seSB0byBwYWNrYWdlcywgYnV0IGFsc28gdG8gcHJvZmlsZXMuJiN4QTtQYWNrYWdlIHNwZWNpYWxpemVzIFRlbXBsYXRlYWJsZUVsZW1lbnQgYW5kIFBhY2thZ2VhYmxlRWxlbWVudCBzcGVjaWFsaXplcyBQYXJhbWV0ZXJhYmxlRWxlbWVudCB0byBzcGVjaWZ5IHRoYXQgYSBwYWNrYWdlIGNhbiBiZSB1c2VkIGFzIGEgdGVtcGxhdGUgYW5kIGEgUGFja2FnZWFibGVFbGVtZW50IGFzIGEgdGVtcGxhdGUgcGFyYW1ldGVyLiYjeEE7QSBwYWNrYWdlIGlzIHVzZWQgdG8gZ3JvdXAgZWxlbWVudHMsIGFuZCBwcm92aWRlcyBhIG5hbWVzcGFjZSBmb3IgdGhlIGdyb3VwZWQgZWxlbWVudHMuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9ImR1cGxpY2F0ZXMiPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBuYW1lPSJtdXN0QmVPd25lZCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiCisgICAgICAgICAgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IG11c3RCZU93bmVkKCkgaW5kaWNhdGVzIHdoZXRoZXIgZWxlbWVudHMgb2YgdGhpcyB0eXBlIG11c3QgaGF2ZSBhbiBvd25lci4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvbXVzdEJlT3duZWQiLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2NvbnRlbnRzPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJlbGVtZW50c19wdWJsaWNfb3JfcHJpdmF0ZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InBhY2thZ2VkRWxlbWVudC0+Zm9yQWxsKGUgfCBlLnZpc2liaWxpdHkmbHQ7PiBudWxsIGltcGxpZXMgZS52aXNpYmlsaXR5ID0gVmlzaWJpbGl0eUtpbmQ6OnB1YmxpYyBvciBlLnZpc2liaWxpdHkgPSBWaXNpYmlsaXR5S2luZDo6cHJpdmF0ZSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiBhbiBlbGVtZW50IHRoYXQgaXMgb3duZWQgYnkgYSBwYWNrYWdlIGhhcyB2aXNpYmlsaXR5LCBpdCBpcyBwdWJsaWMgb3IgcHJpdmF0ZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImFwcGx5UHJvZmlsZSIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iZWNvcmU6RUNsYXNzIGVjb3JlLmVjb3JlIy8vRU9iamVjdCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFwcGxpZXMgdGhlIGN1cnJlbnQgZGVmaW5pdGlvbiBvZiB0aGUgc3BlY2lmaWVkIHByb2ZpbGUgdG8gdGhpcyBwYWNrYWdlIGFuZCBhdXRvbWF0aWNhbGx5IGFwcGxpZXMgcmVxdWlyZWQgc3RlcmVvdHlwZXMgaW4gdGhlIHByb2ZpbGUgdG8gZWxlbWVudHMgd2l0aGluIHRoaXMgcGFja2FnZSdzIG5hbWVzcGFjZSBoaWVhcmFyY2h5LiBJZiBhIGRpZmZlcmVudCBkZWZpbml0aW9uIGlzIGFscmVhZHkgYXBwbGllZCwgYXV0b21hdGljYWxseSBtaWdyYXRlcyBhbnkgYXNzb2NpYXRlZCBzdGVyZW90eXBlIHZhbHVlcyBvbiBhICZxdW90O2Jlc3QgZWZmb3J0JnF1b3Q7IGJhc2lzIChtYXRjaGluZyBjbGFzc2lmaWVycyBhbmQgc3RydWN0dXJhbCBmZWF0dXJlcyBieSBuYW1lKS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InByb2ZpbGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUHJvZmlsZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcHJvZmlsZSB0byBhcHBseS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImNyZWF0ZU93bmVkQ2xhc3MiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vQ2xhc3MiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJDcmVhdGVzIGEobikgKGFic3RyYWN0KSBjbGFzcyB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZSBhcyBhbiBvd25lZCB0eXBlIG9mIHRoaXMgcGFja2FnZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im5hbWUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBuYW1lIGZvciB0aGUgbmV3IGNsYXNzLCBvciBudWxsLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iaXNBYnN0cmFjdCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IldoZXRoZXIgdGhlIG5ldyBjbGFzcyBzaG91bGQgYmUgYWJzdHJhY3QuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjcmVhdGVPd25lZEVudW1lcmF0aW9uIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0VudW1lcmF0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQ3JlYXRlcyBhIGVudW1lcmF0aW9uIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lIGFzIGFuIG93bmVkIHR5cGUgb2YgdGhpcyBwYWNrYWdlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibmFtZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG5hbWUgZm9yIHRoZSBuZXcgZW51bWVyYXRpb24sIG9yIG51bGwuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjcmVhdGVPd25lZEludGVyZmFjZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9JbnRlcmZhY2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJDcmVhdGVzIGFuIGludGVyZmFjZSB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZSBhcyBhbiBvd25lZCB0eXBlIG9mIHRoaXMgcGFja2FnZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im5hbWUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBuYW1lIGZvciB0aGUgbmV3IGludGVyZmFjZSwgb3IgbnVsbC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImNyZWF0ZU93bmVkUHJpbWl0aXZlVHlwZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9QcmltaXRpdmVUeXBlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQ3JlYXRlcyBhIHByaW1pdGl2ZSB0eXBlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lIGFzIGFuIG93bmVkIHR5cGUgb2YgdGhpcyBwYWNrYWdlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibmFtZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG5hbWUgZm9yIHRoZSBuZXcgcHJpbWl0aXZlIHR5cGUsIG9yIG51bGwuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjcmVhdGVPd25lZFN0ZXJlb3R5cGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vU3RlcmVvdHlwZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkNyZWF0ZXMgYShuKSAoYWJzdHJhY3QpIHN0ZXJlb3R5cGUgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUgYXMgYW4gb3duZWQgc3RlcmVvdHlwZSBvZiB0aGlzIHByb2ZpbGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJuYW1lIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbmFtZSBmb3IgdGhlIG5ldyBzdGVyZW90eXBlLCBvciBudWxsLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iaXNBYnN0cmFjdCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IldoZXRoZXIgdGhlIG5ldyBzdGVyZW90eXBlIHNob3VsZCBiZSBhYnN0cmFjdC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldEFsbEFwcGxpZWRQcm9maWxlcyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUHJvZmlsZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHJpZXZlcyBhbGwgdGhlIHByb2ZpbGVzIHRoYXQgYXJlIGFwcGxpZWQgdG8gdGhpcyBwYWNrYWdlLCBpbmNsdWRpbmcgcHJvZmlsZXMgYXBwbGllZCB0byBpdHMgbmVzdGluZyBwYWNrYWdlKHMpLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0QWxsUHJvZmlsZUFwcGxpY2F0aW9ucyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vUHJvZmlsZUFwcGxpY2F0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0cmlldmVzIGFsbCB0aGUgcHJvZmlsZSBhcHBsaWNhdGlvbnMgZm9yIHRoaXMgcGFja2FnZSwgaW5jbHVkaW5nIHByb2ZpbGUgYXBwbGljYXRpb25zIGZvciBpdHMgbmVzdGluZyBwYWNrYWdlKHMpLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0QXBwbGllZFByb2ZpbGUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iIy8vUHJvZmlsZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHJpZXZlcyB0aGUgcHJvZmlsZSB3aXRoIHRoZSBzcGVjaWZpZWQgcXVhbGlmaWVkIG5hbWUgdGhhdCBpcyBhcHBsaWVkIHRvIHRoaXMgcGFja2FnZSwgb3IgbnVsbCBpZiBubyBzdWNoIHByb2ZpbGUgaXMgYXBwbGllZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InF1YWxpZmllZE5hbWUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWFsaWZpZWQgbmFtZSBvZiB0aGUgYXBwbGllZCBwcm9maWxlIHRvIHJldHJpZXZlLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0QXBwbGllZFByb2ZpbGUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iIy8vUHJvZmlsZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHJpZXZlcyB0aGUgcHJvZmlsZSB3aXRoIHRoZSBzcGVjaWZpZWQgcXVhbGlmaWVkIG5hbWUgdGhhdCBpcyBhcHBsaWVkIHRvIHRoaXMgcGFja2FnZSBvciBhbnkgb2YgaXRzIG5lc3RpbmcgcGFja2FnZXMgKGlmIGluZGljYXRlZCksIG9yIG51bGwgaWYgbm8gc3VjaCBwcm9maWxlIGlzIGFwcGxpZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJxdWFsaWZpZWROYW1lIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVhbGlmaWVkIG5hbWUgb2YgdGhlIGFwcGxpZWQgcHJvZmlsZSB0byByZXRyaWV2ZS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InJlY3Vyc2UiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJXaGV0aGVyIHRvIGxvb2sgaW4gbmVzdGluZyBwYWNrYWdlcy4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldEFwcGxpZWRQcm9maWxlcyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUHJvZmlsZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHJpZXZlcyB0aGUgcHJvZmlsZXMgdGhhdCBhcmUgYXBwbGllZCB0byB0aGlzIHBhY2thZ2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRQcm9maWxlQXBwbGljYXRpb24iIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iIy8vUHJvZmlsZUFwcGxpY2F0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0cmlldmVzIHRoZSBhcHBsaWNhdGlvbiBvZiB0aGUgc3BlY2lmaWVkIHByb2ZpbGUgdG8gdGhpcyBwYWNrYWdlLCBvciBudWxsIGlmIG5vIHN1Y2ggcHJvZmlsZSBpcyBhcHBsaWVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icHJvZmlsZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Qcm9maWxlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBwcm9maWxlIHdob3NlIGFwcGxpY2F0aW9uIHRvIHJldHJpZXZlLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0UHJvZmlsZUFwcGxpY2F0aW9uIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9IiMvL1Byb2ZpbGVBcHBsaWNhdGlvbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHJpZXZlcyB0aGUgYXBwbGljYXRpb24gb2YgdGhlIHNwZWNpZmllZCBwcm9maWxlIHRvIHRoaXMgcGFja2FnZSBvciBhbnkgb2YgaXRzIG5lc3RpbmcgcGFja2FnZXMgKGlmIGluZGljYXRlZCksIG9yIG51bGwgaWYgbm8gc3VjaCBwcm9maWxlIGlzIGFwcGxpZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJwcm9maWxlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1Byb2ZpbGUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHByb2ZpbGUgd2hvc2UgYXBwbGljYXRpb24gdG8gcmV0cmlldmUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJyZWN1cnNlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iV2hldGhlciB0byBsb29rIGluIG5lc3RpbmcgcGFja2FnZXMuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc01vZGVsTGlicmFyeSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iRGV0ZXJtaW5lcyB3aGV0aGVyIHRoaXMgcGFja2FnZSBpcyBhIG1vZGVsIGxpYnJhcnkuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc1Byb2ZpbGVBcHBsaWVkIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJEZXRlcm1pbmVzIHdoZXRoZXIgdGhlIHNwZWNpZmllZCBwcm9maWxlIGlzIGFwcGxpZWQgdG8gdGhpcyBwYWNrYWdlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icHJvZmlsZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Qcm9maWxlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBwcm9maWxlIGluIHF1ZXN0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0idW5hcHBseVByb2ZpbGUiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9ImVjb3JlOkVDbGFzcyBlY29yZS5lY29yZSMvL0VPYmplY3QiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJVbmFwcGxpZXMgdGhlIHNwZWNpZmllZCBwcm9maWxlIGZyb20gdGhpcyBwYWNrYWdlIGFuZCBhdXRvbWF0aWNhbGx5IHVuYXBwbGllcyBzdGVyZW90eXBlcyBpbiB0aGUgcHJvZmlsZSBmcm9tIGVsZW1lbnRzIHdpdGhpbiB0aGlzIHBhY2thZ2UncyBuYW1lc3BhY2UgaGllYXJhcmNoeS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InByb2ZpbGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUHJvZmlsZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcHJvZmlsZSB0byB1bmFwcGx5LiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iYWxsQXBwbGljYWJsZVN0ZXJlb3R5cGVzIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9TdGVyZW90eXBlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IGFsbEFwcGxpY2FibGVTdGVyZW90eXBlcygpIHJldHVybnMgYWxsIHRoZSBkaXJlY3RseSBvciBpbmRpcmVjdGx5IG93bmVkIHN0ZXJlb3R5cGVzLCBpbmNsdWRpbmcgc3RlcmVvdHlwZXMgY29udGFpbmVkIGluIHN1Yi1wcm9maWxlcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImxldCBvd25lZFBhY2thZ2VzIDogQmFnKFBhY2thZ2UpID0gb3duZWRNZW1iZXItPnNlbGVjdChvY2xJc0tpbmRPZihQYWNrYWdlKSktPmNvbGxlY3Qob2NsQXNUeXBlKFBhY2thZ2UpKSBpbiYjeEQ7JiN4QTsgb3duZWRTdGVyZW90eXBlLT51bmlvbihvd25lZFBhY2thZ2VzLmFsbEFwcGxpY2FibGVTdGVyZW90eXBlcygpKS0+ZmxhdHRlbigpLT5hc1NldCgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjb250YWluaW5nUHJvZmlsZSIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSIjLy9Qcm9maWxlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IGNvbnRhaW5pbmdQcm9maWxlKCkgcmV0dXJucyB0aGUgY2xvc2VzdCBwcm9maWxlIGRpcmVjdGx5IG9yIGluZGlyZWN0bHkgY29udGFpbmluZyB0aGlzIHBhY2thZ2UgKG9yIHRoaXMgcGFja2FnZSBpdHNlbGYsIGlmIGl0IGlzIGEgcHJvZmlsZSkuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpZiBzZWxmLm9jbElzS2luZE9mKFByb2ZpbGUpIHRoZW4gJiN4RDsmI3hBOyYjeDk7c2VsZi5vY2xBc1R5cGUoUHJvZmlsZSkmI3hEOyYjeEE7ZWxzZSYjeEQ7JiN4QTsmI3g5O3NlbGYubmFtZXNwYWNlLm9jbEFzVHlwZShQYWNrYWdlKS5jb250YWluaW5nUHJvZmlsZSgpJiN4RDsmI3hBO2VuZGlmIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJtYWtlc1Zpc2libGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBtYWtlc1Zpc2libGUoKSBkZWZpbmVzIHdoZXRoZXIgYSBQYWNrYWdlIG1ha2VzIGFuIGVsZW1lbnQgdmlzaWJsZSBvdXRzaWRlIGl0c2VsZi4gRWxlbWVudHMgd2l0aCBubyB2aXNpYmlsaXR5IGFuZCBlbGVtZW50cyB3aXRoIHB1YmxpYyB2aXNpYmlsaXR5IGFyZSBtYWRlIHZpc2libGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJvd25lZE1lbWJlci0+aW5jbHVkZXMoZWwpIG9yJiN4QTsoZWxlbWVudEltcG9ydC0+c2VsZWN0KGVpfGVpLmltcG9ydGVkRWxlbWVudCA9IFZpc2liaWxpdHlLaW5kOjpwdWJsaWMpLT5jb2xsZWN0KGltcG9ydGVkRWxlbWVudC5vY2xBc1R5cGUoTmFtZWRFbGVtZW50KSktPmluY2x1ZGVzKGVsKSkgb3ImI3hBOyhwYWNrYWdlSW1wb3J0LT5zZWxlY3QodmlzaWJpbGl0eSA9IFZpc2liaWxpdHlLaW5kOjpwdWJsaWMpLT5jb2xsZWN0KGltcG9ydGVkUGFja2FnZS5tZW1iZXItPmluY2x1ZGVzKGVsKSktPm5vdEVtcHR5KCkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXROZXN0ZWRQYWNrYWdlcyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUGFja2FnZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkRlcml2YXRpb24gZm9yIFBhY2thZ2U6Oi9uZXN0ZWRQYWNrYWdlIi8+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJvcmlnaW5hbE5hbWUiIHZhbHVlPSJuZXN0ZWRQYWNrYWdlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJwYWNrYWdlZEVsZW1lbnQtPnNlbGVjdChvY2xJc0tpbmRPZihQYWNrYWdlKSktPmNvbGxlY3Qob2NsQXNUeXBlKFBhY2thZ2UpKS0+YXNTZXQoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0T3duZWRTdGVyZW90eXBlcyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vU3RlcmVvdHlwZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkRlcml2YXRpb24gZm9yIFBhY2thZ2U6Oi9vd25lZFN0ZXJlb3R5cGUiLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9Im9yaWdpbmFsTmFtZSIgdmFsdWU9Im93bmVkU3RlcmVvdHlwZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icGFja2FnZWRFbGVtZW50LT5zZWxlY3Qob2NsSXNLaW5kT2YoU3RlcmVvdHlwZSkpLT5jb2xsZWN0KG9jbEFzVHlwZShTdGVyZW90eXBlKSktPmFzU2V0KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldE93bmVkVHlwZXMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1R5cGUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJEZXJpdmF0aW9uIGZvciBQYWNrYWdlOjovb3duZWRUeXBlIi8+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJvcmlnaW5hbE5hbWUiIHZhbHVlPSJvd25lZFR5cGUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InBhY2thZ2VkRWxlbWVudC0+c2VsZWN0KG9jbElzS2luZE9mKFR5cGUpKS0+Y29sbGVjdChvY2xBc1R5cGUoVHlwZSkpLT5hc1NldCgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJ2aXNpYmxlTWVtYmVycyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUGFja2FnZWFibGVFbGVtZW50Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IHZpc2libGVNZW1iZXJzKCkgZGVmaW5lcyB3aGljaCBtZW1iZXJzIG9mIGEgUGFja2FnZSBjYW4gYmUgYWNjZXNzZWQgb3V0c2lkZSBpdC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im1lbWJlci0+c2VsZWN0KCBtIHwgbS5vY2xJc0tpbmRPZihQYWNrYWdlYWJsZUVsZW1lbnQpIGFuZCBzZWxmLm1ha2VzVmlzaWJsZShtKSktPmNvbGxlY3Qob2NsQXNUeXBlKFBhY2thZ2VhYmxlRWxlbWVudCkpLT5hc1NldCgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJVUkkiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUHJvdmlkZXMgYW4gaWRlbnRpZmllciBmb3IgdGhlIHBhY2thZ2UgdGhhdCBjYW4gYmUgdXNlZCBmb3IgbWFueSBwdXJwb3Nlcy4gQSBVUkkgaXMgdGhlIHVuaXZlcnNhbGx5IHVuaXF1ZSBpZGVudGlmaWNhdGlvbiBvZiB0aGUgcGFja2FnZSBmb2xsb3dpbmcgdGhlIElFVEYgVVJJIHNwZWNpZmljYXRpb24sIFJGQyAyMzk2IGh0dHA6Ly93d3cuaWV0Zi5vcmcvcmZjL3JmYzIzOTYudHh0IGFuZCBpdCBtdXN0IGNvbXBseSB3aXRoIHRob3NlIHN5bnRheCBydWxlcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ibmVzdGVkUGFja2FnZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUGFja2FnZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIgZGVyaXZlZD0idHJ1ZSIKKyAgICAgICAgZU9wcG9zaXRlPSIjLy9QYWNrYWdlL25lc3RpbmdQYWNrYWdlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmVmZXJlbmNlcyB0aGUgcGFja2FnZWQgZWxlbWVudHMgdGhhdCBhcmUgUGFja2FnZXMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9QYWNrYWdlL3BhY2thZ2VkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ibmVzdGluZ1BhY2thZ2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vUGFja2FnZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIgZGVyaXZlZD0idHJ1ZSIgZU9wcG9zaXRlPSIjLy9QYWNrYWdlL25lc3RlZFBhY2thZ2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZWZlcmVuY2VzIHRoZSBQYWNrYWdlIHRoYXQgb3ducyB0aGlzIFBhY2thZ2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lZEVsZW1lbnQvbmFtZXNwYWNlIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJvd25lZFN0ZXJlb3R5cGUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1N0ZXJlb3R5cGUiIGNoYW5nZWFibGU9ImZhbHNlIiB2b2xhdGlsZT0idHJ1ZSIgdHJhbnNpZW50PSJ0cnVlIgorICAgICAgICBkZXJpdmVkPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmVmZXJlbmNlcyB0aGUgU3RlcmVvdHlwZXMgdGhhdCBhcmUgb3duZWQgYnkgdGhlIFBhY2thZ2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9QYWNrYWdlL3BhY2thZ2VkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib3duZWRUeXBlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9UeXBlIiB2b2xhdGlsZT0idHJ1ZSIgdHJhbnNpZW50PSJ0cnVlIiBkZXJpdmVkPSJ0cnVlIgorICAgICAgICBlT3Bwb3NpdGU9IiMvL1R5cGUvcGFja2FnZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJlZmVyZW5jZXMgdGhlIHBhY2thZ2VkIGVsZW1lbnRzIHRoYXQgYXJlIFR5cGVzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vUGFja2FnZS9wYWNrYWdlZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InBhY2thZ2VNZXJnZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUGFja2FnZU1lcmdlIiBjb250YWlubWVudD0idHJ1ZSIgZU9wcG9zaXRlPSIjLy9QYWNrYWdlTWVyZ2UvcmVjZWl2aW5nUGFja2FnZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJlZmVyZW5jZXMgdGhlIFBhY2thZ2VNZXJnZXMgdGhhdCBhcmUgb3duZWQgYnkgdGhpcyBQYWNrYWdlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InBhY2thZ2VkRWxlbWVudCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUGFja2FnZWFibGVFbGVtZW50IiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNwZWNpZmllcyB0aGUgcGFja2FnZWFibGUgZWxlbWVudHMgdGhhdCBhcmUgb3duZWQgYnkgdGhpcyBQYWNrYWdlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vTmFtZXNwYWNlL293bmVkTWVtYmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJwcm9maWxlQXBwbGljYXRpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1Byb2ZpbGVBcHBsaWNhdGlvbiIgY29udGFpbm1lbnQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vUHJvZmlsZUFwcGxpY2F0aW9uL2FwcGx5aW5nUGFja2FnZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJlZmVyZW5jZXMgdGhlIFByb2ZpbGVBcHBsaWNhdGlvbnMgdGhhdCBpbmRpY2F0ZSB3aGljaCBwcm9maWxlcyBoYXZlIGJlZW4gYXBwbGllZCB0byB0aGUgUGFja2FnZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQYWNrYWdlYWJsZUVsZW1lbnQiIGFic3RyYWN0PSJ0cnVlIgorICAgICAgZVN1cGVyVHlwZXM9IiMvL05hbWVkRWxlbWVudCAjLy9QYXJhbWV0ZXJhYmxlRWxlbWVudCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBQYWNrYWdlYWJsZUVsZW1lbnQgaXMgYSBOYW1lZEVsZW1lbnQgdGhhdCBtYXkgYmUgb3duZWQgZGlyZWN0bHkgYnkgYSBQYWNrYWdlLiBBIFBhY2thZ2VhYmxlRWxlbWVudCBpcyBhbHNvIGFibGUgdG8gc2VydmUgYXMgdGhlIHBhcmFtZXRlcmVkRWxlbWVudCBvZiBhIFRlbXBsYXRlUGFyYW1ldGVyLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJkdXBsaWNhdGVzIj4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0idmlzaWJpbGl0eSIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSIjLy9WaXNpYmlsaXR5S2luZCIKKyAgICAgICAgICBkZWZhdWx0VmFsdWVMaXRlcmFsPSJwdWJsaWMiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBQYWNrYWdlYWJsZUVsZW1lbnQgbXVzdCBoYXZlIGEgdmlzaWJpbGl0eSBzcGVjaWZpZWQgaWYgaXQgaXMgb3duZWQgYnkgYSBOYW1lc3BhY2UuIFRoZSBkZWZhdWx0IHZpc2liaWxpdHkgaXMgcHVibGljLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vTmFtZWRFbGVtZW50L3Zpc2liaWxpdHkiLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im5hbWVzcGFjZV9uZWVkc192aXNpYmlsaXR5IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0idmlzaWJpbGl0eSA9IG51bGwgaW1wbGllcyBuYW1lc3BhY2UgPSBudWxsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBQYWNrYWdlYWJsZUVsZW1lbnQgb3duZWQgYnkgYSBOYW1lc3BhY2UgbXVzdCBoYXZlIGEgdmlzaWJpbGl0eS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlBhcmFtZXRlcmFibGVFbGVtZW50IiBhYnN0cmFjdD0idHJ1ZSIKKyAgICAgIGVTdXBlclR5cGVzPSIjLy9FbGVtZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFBhcmFtZXRlcmFibGVFbGVtZW50IGlzIGFuIEVsZW1lbnQgdGhhdCBjYW4gYmUgZXhwb3NlZCBhcyBhIGZvcm1hbCBUZW1wbGF0ZVBhcmFtZXRlciBmb3IgYSB0ZW1wbGF0ZSwgb3Igc3BlY2lmaWVkIGFzIGFuIGFjdHVhbCBwYXJhbWV0ZXIgaW4gYSBiaW5kaW5nIG9mIGEgdGVtcGxhdGUuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzQ29tcGF0aWJsZVdpdGgiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBpc0NvbXBhdGlibGVXaXRoKCkgZGV0ZXJtaW5lcyBpZiB0aGlzIFBhcmFtZXRlcmFibGVFbGVtZW50IGlzIGNvbXBhdGlibGUgd2l0aCB0aGUgc3BlY2lmaWVkIFBhcmFtZXRlcmFibGVFbGVtZW50LiBCeSBkZWZhdWx0LCB0aGlzIFBhcmFtZXRlcmFibGVFbGVtZW50IGlzIGNvbXBhdGlibGUgd2l0aCBhbm90aGVyIFBhcmFtZXRlcmFibGVFbGVtZW50IHAgaWYgdGhlIGtpbmQgb2YgdGhpcyBQYXJhbWV0ZXJhYmxlRWxlbWVudCBpcyB0aGUgc2FtZSBhcyBvciBhIHN1YnR5cGUgb2YgdGhlIGtpbmQgb2YgcC4gU3ViY2xhc3NlcyBvZiBQYXJhbWV0ZXJhYmxlRWxlbWVudCBzaG91bGQgb3ZlcnJpZGUgdGhpcyBvcGVyYXRpb24gdG8gc3BlY2lmeSBkaWZmZXJlbnQgY29tcGF0aWJpbGl0eSBjb25zdHJhaW50cy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InNlbGYub2NsSXNLaW5kT2YocC5vY2xUeXBlKCkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJwIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1BhcmFtZXRlcmFibGVFbGVtZW50Ii8+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNUZW1wbGF0ZVBhcmFtZXRlciIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IGlzVGVtcGxhdGVQYXJhbWV0ZXIoKSBkZXRlcm1pbmVzIGlmIHRoaXMgUGFyYW1ldGVyYWJsZUVsZW1lbnQgaXMgZXhwb3NlZCBhcyBhIGZvcm1hbCBUZW1wbGF0ZVBhcmFtZXRlci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InRlbXBsYXRlUGFyYW1ldGVyLT5ub3RFbXB0eSgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJvd25pbmdUZW1wbGF0ZVBhcmFtZXRlciIKKyAgICAgICAgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSIjLy9UZW1wbGF0ZVBhcmFtZXRlciIgZU9wcG9zaXRlPSIjLy9UZW1wbGF0ZVBhcmFtZXRlci9vd25lZFBhcmFtZXRlcmVkRWxlbWVudCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBmb3JtYWwgVGVtcGxhdGVQYXJhbWV0ZXIgdGhhdCBvd25zIHRoaXMgUGFyYW1ldGVyYWJsZUVsZW1lbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVyICMvL1BhcmFtZXRlcmFibGVFbGVtZW50L3RlbXBsYXRlUGFyYW1ldGVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJ0ZW1wbGF0ZVBhcmFtZXRlciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9UZW1wbGF0ZVBhcmFtZXRlciIgZU9wcG9zaXRlPSIjLy9UZW1wbGF0ZVBhcmFtZXRlci9wYXJhbWV0ZXJlZEVsZW1lbnQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgVGVtcGxhdGVQYXJhbWV0ZXIgdGhhdCBleHBvc2VzIHRoaXMgUGFyYW1ldGVyYWJsZUVsZW1lbnQgYXMgYSBmb3JtYWwgcGFyYW1ldGVyLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJUZW1wbGF0ZVBhcmFtZXRlciIgZVN1cGVyVHlwZXM9IiMvL0VsZW1lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgVGVtcGxhdGVQYXJhbWV0ZXIgZXhwb3NlcyBhIFBhcmFtZXRlcmFibGVFbGVtZW50IGFzIGEgZm9ybWFsIHBhcmFtZXRlciBvZiBhIHRlbXBsYXRlLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJtdXN0X2JlX2NvbXBhdGlibGUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJkZWZhdWx0ICZsdDs+IG51bGwgaW1wbGllcyBkZWZhdWx0LmlzQ29tcGF0aWJsZVdpdGgocGFyYW1ldGVyZWRFbGVtZW50KSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBkZWZhdWx0IG11c3QgYmUgY29tcGF0aWJsZSB3aXRoIHRoZSBmb3JtYWwgVGVtcGxhdGVQYXJhbWV0ZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJkZWZhdWx0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL1BhcmFtZXRlcmFibGVFbGVtZW50Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFBhcmFtZXRlcmFibGVFbGVtZW50IHRoYXQgaXMgdGhlIGRlZmF1bHQgZm9yIHRoaXMgZm9ybWFsIFRlbXBsYXRlUGFyYW1ldGVyLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJvd25lZERlZmF1bHQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vUGFyYW1ldGVyYWJsZUVsZW1lbnQiIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFBhcmFtZXRlcmFibGVFbGVtZW50IHRoYXQgaXMgb3duZWQgYnkgdGhpcyBUZW1wbGF0ZVBhcmFtZXRlciBmb3IgdGhlIHB1cnBvc2Ugb2YgcHJvdmlkaW5nIGEgZGVmYXVsdC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50ICMvL1RlbXBsYXRlUGFyYW1ldGVyL2RlZmF1bHQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InBhcmFtZXRlcmVkRWxlbWVudCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9QYXJhbWV0ZXJhYmxlRWxlbWVudCIgZU9wcG9zaXRlPSIjLy9QYXJhbWV0ZXJhYmxlRWxlbWVudC90ZW1wbGF0ZVBhcmFtZXRlciI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBQYXJhbWV0ZXJhYmxlRWxlbWVudCBleHBvc2VkIGJ5IHRoaXMgVGVtcGxhdGVQYXJhbWV0ZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InNpZ25hdHVyZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9UZW1wbGF0ZVNpZ25hdHVyZSIgZU9wcG9zaXRlPSIjLy9UZW1wbGF0ZVNpZ25hdHVyZS9vd25lZFBhcmFtZXRlciI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBUZW1wbGF0ZVNpZ25hdHVyZSB0aGF0IG93bnMgdGhpcyBUZW1wbGF0ZVBhcmFtZXRlci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im93bmVkUGFyYW1ldGVyZWRFbGVtZW50IgorICAgICAgICBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9IiMvL1BhcmFtZXRlcmFibGVFbGVtZW50IiBjb250YWlubWVudD0idHJ1ZSIgZU9wcG9zaXRlPSIjLy9QYXJhbWV0ZXJhYmxlRWxlbWVudC9vd25pbmdUZW1wbGF0ZVBhcmFtZXRlciI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBQYXJhbWV0ZXJhYmxlRWxlbWVudCB0aGF0IGlzIG93bmVkIGJ5IHRoaXMgVGVtcGxhdGVQYXJhbWV0ZXIgZm9yIHRoZSBwdXJwb3NlIG9mIGV4cG9zaW5nIGl0IGFzIHRoZSBwYXJhbWV0ZXJlZEVsZW1lbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCAjLy9UZW1wbGF0ZVBhcmFtZXRlci9wYXJhbWV0ZXJlZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlRlbXBsYXRlU2lnbmF0dXJlIiBlU3VwZXJUeXBlcz0iIy8vRWxlbWVudCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBUZW1wbGF0ZSBTaWduYXR1cmUgYnVuZGxlcyB0aGUgc2V0IG9mIGZvcm1hbCBUZW1wbGF0ZVBhcmFtZXRlcnMgZm9yIGEgdGVtcGxhdGUuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im93bl9lbGVtZW50cyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InRlbXBsYXRlLm93bmVkRWxlbWVudC0+aW5jbHVkZXNBbGwocGFyYW1ldGVyLnBhcmFtZXRlcmVkRWxlbWVudC0+YXNTZXQoKSAtIHBhcmFtZXRlci5vd25lZFBhcmFtZXRlcmVkRWxlbWVudC0+YXNTZXQoKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJQYXJhbWV0ZXJzIG11c3Qgb3duIHRoZSBQYXJhbWV0ZXJhYmxlRWxlbWVudHMgdGhleSBwYXJhbWV0ZXIgb3IgdGhvc2UgUGFyYW1ldGVyYWJsZUVsZW1lbnRzIG11c3QgYmUgb3duZWQgYnkgdGhlIFRlbXBsYXRlYWJsZUVsZW1lbnQgYmVpbmcgdGVtcGxhdGVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0idW5pcXVlX3BhcmFtZXRlcnMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJwYXJhbWV0ZXItPmZvckFsbCggcDEsIHAyIHwgKHAxICZsdDs+IHAyIGFuZCBwMS5wYXJhbWV0ZXJlZEVsZW1lbnQub2NsSXNLaW5kT2YoTmFtZWRFbGVtZW50KSBhbmQgcDIucGFyYW1ldGVyZWRFbGVtZW50Lm9jbElzS2luZE9mKE5hbWVkRWxlbWVudCkgKSBpbXBsaWVzJiN4RDsmI3hBOyAgIHAxLnBhcmFtZXRlcmVkRWxlbWVudC5vY2xBc1R5cGUoTmFtZWRFbGVtZW50KS5uYW1lICZsdDs+IHAyLnBhcmFtZXRlcmVkRWxlbWVudC5vY2xBc1R5cGUoTmFtZWRFbGVtZW50KS5uYW1lKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBuYW1lcyBvZiB0aGUgcGFyYW1ldGVycyBvZiBhIFRlbXBsYXRlU2lnbmF0dXJlIGFyZSB1bmlxdWUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJwYXJhbWV0ZXIiIGxvd2VyQm91bmQ9IjEiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vVGVtcGxhdGVQYXJhbWV0ZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgb3JkZXJlZCBzZXQgb2YgYWxsIGZvcm1hbCBUZW1wbGF0ZVBhcmFtZXRlcnMgZm9yIHRoaXMgVGVtcGxhdGVTaWduYXR1cmUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InRlbXBsYXRlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1RlbXBsYXRlYWJsZUVsZW1lbnQiIGVPcHBvc2l0ZT0iIy8vVGVtcGxhdGVhYmxlRWxlbWVudC9vd25lZFRlbXBsYXRlU2lnbmF0dXJlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFRlbXBsYXRlYWJsZUVsZW1lbnQgdGhhdCBvd25zIHRoaXMgVGVtcGxhdGVTaWduYXR1cmUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJvd25lZFBhcmFtZXRlciIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9UZW1wbGF0ZVBhcmFtZXRlciIgY29udGFpbm1lbnQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vVGVtcGxhdGVQYXJhbWV0ZXIvc2lnbmF0dXJlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGZvcm1hbCBwYXJhbWV0ZXJzIHRoYXQgYXJlIG93bmVkIGJ5IHRoaXMgVGVtcGxhdGVTaWduYXR1cmUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCAjLy9UZW1wbGF0ZVNpZ25hdHVyZS9wYXJhbWV0ZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlRlbXBsYXRlYWJsZUVsZW1lbnQiIGFic3RyYWN0PSJ0cnVlIgorICAgICAgZVN1cGVyVHlwZXM9IiMvL0VsZW1lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgVGVtcGxhdGVhYmxlRWxlbWVudCBpcyBhbiBFbGVtZW50IHRoYXQgY2FuIG9wdGlvbmFsbHkgYmUgZGVmaW5lZCBhcyBhIHRlbXBsYXRlIGFuZCBib3VuZCB0byBvdGhlciB0ZW1wbGF0ZXMuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzVGVtcGxhdGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBpc1RlbXBsYXRlKCkgcmV0dXJucyB3aGV0aGVyIHRoaXMgVGVtcGxhdGVhYmxlRWxlbWVudCBpcyBhY3R1YWxseSBhIHRlbXBsYXRlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ib3duZWRUZW1wbGF0ZVNpZ25hdHVyZSAmbHQ7PiBudWxsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJwYXJhbWV0ZXJhYmxlRWxlbWVudHMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1BhcmFtZXRlcmFibGVFbGVtZW50Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IHBhcmFtZXRlcmFibGVFbGVtZW50cygpIHJldHVybnMgdGhlIHNldCBvZiBQYXJhbWV0ZXJhYmxlRWxlbWVudHMgdGhhdCBtYXkgYmUgdXNlZCBhcyB0aGUgcGFyYW1ldGVyZWRFbGVtZW50cyBmb3IgYSBUZW1wbGF0ZVBhcmFtZXRlciBvZiB0aGlzIFRlbXBsYXRlYWJsZUVsZW1lbnQuIEJ5IGRlZmF1bHQsIHRoaXMgc2V0IGluY2x1ZGVzIGFsbCB0aGUgb3duZWRFbGVtZW50cy4gU3ViY2xhc3NlcyBtYXkgb3ZlcnJpZGUgdGhpcyBvcGVyYXRpb24gaWYgdGhleSBjaG9vc2UgdG8gcmVzdHJpY3QgdGhlIHNldCBvZiBQYXJhbWV0ZXJhYmxlRWxlbWVudHMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzZWxmLmFsbE93bmVkRWxlbWVudHMoKS0+c2VsZWN0KG9jbElzS2luZE9mKFBhcmFtZXRlcmFibGVFbGVtZW50KSkub2NsQXNUeXBlKFBhcmFtZXRlcmFibGVFbGVtZW50KS0+YXNTZXQoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0idGVtcGxhdGVCaW5kaW5nIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9UZW1wbGF0ZUJpbmRpbmciIGNvbnRhaW5tZW50PSJ0cnVlIiBlT3Bwb3NpdGU9IiMvL1RlbXBsYXRlQmluZGluZy9ib3VuZEVsZW1lbnQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgb3B0aW9uYWwgVGVtcGxhdGVCaW5kaW5ncyBmcm9tIHRoaXMgVGVtcGxhdGVhYmxlRWxlbWVudCB0byBvbmUgb3IgbW9yZSB0ZW1wbGF0ZXMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib3duZWRUZW1wbGF0ZVNpZ25hdHVyZSIKKyAgICAgICAgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSIjLy9UZW1wbGF0ZVNpZ25hdHVyZSIgY29udGFpbm1lbnQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vVGVtcGxhdGVTaWduYXR1cmUvdGVtcGxhdGUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgb3B0aW9uYWwgVGVtcGxhdGVTaWduYXR1cmUgc3BlY2lmeWluZyB0aGUgZm9ybWFsIFRlbXBsYXRlUGFyYW1ldGVycyBmb3IgdGhpcyBUZW1wbGF0ZWFibGVFbGVtZW50LiBJZiBhIFRlbXBsYXRlYWJsZUVsZW1lbnQgaGFzIGEgVGVtcGxhdGVTaWduYXR1cmUsIHRoZW4gaXQgaXMgYSB0ZW1wbGF0ZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJUZW1wbGF0ZUJpbmRpbmciIGVTdXBlclR5cGVzPSIjLy9EaXJlY3RlZFJlbGF0aW9uc2hpcCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBUZW1wbGF0ZUJpbmRpbmcgaXMgYSBEaXJlY3RlZFJlbGF0aW9uc2hpcCBiZXR3ZWVuIGEgVGVtcGxhdGVhYmxlRWxlbWVudCBhbmQgYSB0ZW1wbGF0ZS4gQSBUZW1wbGF0ZUJpbmRpbmcgc3BlY2lmaWVzIHRoZSBUZW1wbGF0ZVBhcmFtZXRlclN1YnN0aXR1dGlvbnMgb2YgYWN0dWFsIHBhcmFtZXRlcnMgZm9yIHRoZSBmb3JtYWwgcGFyYW1ldGVycyBvZiB0aGUgdGVtcGxhdGUuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InBhcmFtZXRlcl9zdWJzdGl0dXRpb25fZm9ybWFsIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icGFyYW1ldGVyU3Vic3RpdHV0aW9uLT5mb3JBbGwoYiB8IHNpZ25hdHVyZS5wYXJhbWV0ZXItPmluY2x1ZGVzKGIuZm9ybWFsKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJFYWNoIHBhcmFtZXRlclN1YnN0aXR1dGlvbiBtdXN0IHJlZmVyIHRvIGEgZm9ybWFsIFRlbXBsYXRlUGFyYW1ldGVyIG9mIHRoZSB0YXJnZXQgVGVtcGxhdGVTaWduYXR1cmUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJvbmVfcGFyYW1ldGVyX3N1YnN0aXR1dGlvbiIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InNpZ25hdHVyZS5wYXJhbWV0ZXItPmZvckFsbChwIHwgcGFyYW1ldGVyU3Vic3RpdHV0aW9uLT5zZWxlY3QoYiB8IGIuZm9ybWFsID0gcCktPnNpemUoKSAmbHQ7PSAxKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgVGVtcGxhdGVCaWluZGluZyBjb250YWlucyBhdCBtb3N0IG9uZSBUZW1wbGF0ZVBhcmFtZXRlclN1YnN0aXR1dGlvbiBmb3IgZWFjaCBmb3JtYWwgVGVtcGxhdGVQYXJhbWV0ZXIgb2YgdGhlIHRhcmdldCBUZW1wbGF0ZVNpZ25hdHVyZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InBhcmFtZXRlclN1YnN0aXR1dGlvbiIKKyAgICAgICAgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vVGVtcGxhdGVQYXJhbWV0ZXJTdWJzdGl0dXRpb24iIGNvbnRhaW5tZW50PSJ0cnVlIgorICAgICAgICBlT3Bwb3NpdGU9IiMvL1RlbXBsYXRlUGFyYW1ldGVyU3Vic3RpdHV0aW9uL3RlbXBsYXRlQmluZGluZyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBUZW1wbGF0ZVBhcmFtZXRlclN1YnN0aXR1dGlvbnMgb3duZWQgYnkgdGhpcyBUZW1wbGF0ZUJpbmRpbmcuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ic2lnbmF0dXJlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1RlbXBsYXRlU2lnbmF0dXJlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFRlbXBsYXRlU2lnbmF0dXJlIGZvciB0aGUgdGVtcGxhdGUgdGhhdCBpcyB0aGUgdGFyZ2V0IG9mIHRoaXMgVGVtcGxhdGVCaW5kaW5nLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRGlyZWN0ZWRSZWxhdGlvbnNoaXAvdGFyZ2V0Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJib3VuZEVsZW1lbnQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vVGVtcGxhdGVhYmxlRWxlbWVudCIgZU9wcG9zaXRlPSIjLy9UZW1wbGF0ZWFibGVFbGVtZW50L3RlbXBsYXRlQmluZGluZyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBUZW1wbGF0ZWFibGVFbGVtZW50IHRoYXQgaXMgYm91bmQgYnkgdGhpcyBUZW1wbGF0ZUJpbmRpbmcuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9EaXJlY3RlZFJlbGF0aW9uc2hpcC9zb3VyY2UgIy8vRWxlbWVudC9vd25lciIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRGlyZWN0ZWRSZWxhdGlvbnNoaXAiIGFic3RyYWN0PSJ0cnVlIgorICAgICAgZVN1cGVyVHlwZXM9IiMvL1JlbGF0aW9uc2hpcCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBEaXJlY3RlZFJlbGF0aW9uc2hpcCByZXByZXNlbnRzIGEgcmVsYXRpb25zaGlwIGJldHdlZW4gYSBjb2xsZWN0aW9uIG9mIHNvdXJjZSBtb2RlbCBFbGVtZW50cyBhbmQgYSBjb2xsZWN0aW9uIG9mIHRhcmdldCBtb2RlbCBFbGVtZW50cy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ic291cmNlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9FbGVtZW50IiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiCisgICAgICAgIHRyYW5zaWVudD0idHJ1ZSIgZGVyaXZlZD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNwZWNpZmllcyB0aGUgc291cmNlIEVsZW1lbnQocykgb2YgdGhlIERpcmVjdGVkUmVsYXRpb25zaGlwLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0idW5pb24iLz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9SZWxhdGlvbnNoaXAvcmVsYXRlZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InRhcmdldCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vRWxlbWVudCIgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIgorICAgICAgICB0cmFuc2llbnQ9InRydWUiIGRlcml2ZWQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgdGhlIHRhcmdldCBFbGVtZW50KHMpIG9mIHRoZSBEaXJlY3RlZFJlbGF0aW9uc2hpcC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InVuaW9uIi8+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vUmVsYXRpb25zaGlwL3JlbGF0ZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJSZWxhdGlvbnNoaXAiIGFic3RyYWN0PSJ0cnVlIiBlU3VwZXJUeXBlcz0iIy8vRWxlbWVudCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmVsYXRpb25zaGlwIGlzIGFuIGFic3RyYWN0IGNvbmNlcHQgdGhhdCBzcGVjaWZpZXMgc29tZSBraW5kIG9mIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIEVsZW1lbnRzLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyZWxhdGVkRWxlbWVudCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vRWxlbWVudCIgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIgorICAgICAgICB0cmFuc2llbnQ9InRydWUiIGRlcml2ZWQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgdGhlIGVsZW1lbnRzIHJlbGF0ZWQgYnkgdGhlIFJlbGF0aW9uc2hpcC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InVuaW9uIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJUZW1wbGF0ZVBhcmFtZXRlclN1YnN0aXR1dGlvbiIgZVN1cGVyVHlwZXM9IiMvL0VsZW1lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgVGVtcGxhdGVQYXJhbWV0ZXJTdWJzdGl0dXRpb24gcmVsYXRlcyB0aGUgYWN0dWFsIHBhcmFtZXRlciB0byBhIGZvcm1hbCBUZW1wbGF0ZVBhcmFtZXRlciBhcyBwYXJ0IG9mIGEgdGVtcGxhdGUgYmluZGluZy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibXVzdF9iZV9jb21wYXRpYmxlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iYWN0dWFsLT5mb3JBbGwoYSB8IGEuaXNDb21wYXRpYmxlV2l0aChmb3JtYWwucGFyYW1ldGVyZWRFbGVtZW50KSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgYWN0dWFsIFBhcmFtZXRlcmFibGVFbGVtZW50IG11c3QgYmUgY29tcGF0aWJsZSB3aXRoIHRoZSBmb3JtYWwgVGVtcGxhdGVQYXJhbWV0ZXIsIGUuZy4sIHRoZSBhY3R1YWwgUGFyYW1ldGVyYWJsZUVsZW1lbnQgZm9yIGEgQ2xhc3MgVGVtcGxhdGVQYXJhbWV0ZXIgbXVzdCBiZSBhIENsYXNzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iYWN0dWFsIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1BhcmFtZXRlcmFibGVFbGVtZW50Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFBhcmFtZXRlcmFibGVFbGVtZW50IHRoYXQgaXMgdGhlIGFjdHVhbCBwYXJhbWV0ZXIgZm9yIHRoaXMgVGVtcGxhdGVQYXJhbWV0ZXJTdWJzdGl0dXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImZvcm1hbCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9UZW1wbGF0ZVBhcmFtZXRlciI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBmb3JtYWwgVGVtcGxhdGVQYXJhbWV0ZXIgdGhhdCBpcyBhc3NvY2lhdGVkIHdpdGggdGhpcyBUZW1wbGF0ZVBhcmFtZXRlclN1YnN0aXR1dGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib3duZWRBY3R1YWwiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vUGFyYW1ldGVyYWJsZUVsZW1lbnQiIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFBhcmFtZXRlcmFibGVFbGVtZW50IHRoYXQgaXMgb3duZWQgYnkgdGhpcyBUZW1wbGF0ZVBhcmFtZXRlclN1YnN0aXR1dGlvbiBhcyBpdHMgYWN0dWFsIHBhcmFtZXRlci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50ICMvL1RlbXBsYXRlUGFyYW1ldGVyU3Vic3RpdHV0aW9uL2FjdHVhbCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0idGVtcGxhdGVCaW5kaW5nIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1RlbXBsYXRlQmluZGluZyIgZU9wcG9zaXRlPSIjLy9UZW1wbGF0ZUJpbmRpbmcvcGFyYW1ldGVyU3Vic3RpdHV0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFRlbXBsYXRlQmluZGluZyB0aGF0IG93bnMgdGhpcyBUZW1wbGF0ZVBhcmFtZXRlclN1YnN0aXR1dGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRW51bSIgbmFtZT0iVmlzaWJpbGl0eUtpbmQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlZpc2liaWxpdHlLaW5kIGlzIGFuIGVudW1lcmF0aW9uIHR5cGUgdGhhdCBkZWZpbmVzIGxpdGVyYWxzIHRvIGRldGVybWluZSB0aGUgdmlzaWJpbGl0eSBvZiBFbGVtZW50cyBpbiBhIG1vZGVsLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0icHVibGljIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBOYW1lZCBFbGVtZW50IHdpdGggcHVibGljIHZpc2liaWxpdHkgaXMgdmlzaWJsZSB0byBhbGwgZWxlbWVudHMgdGhhdCBjYW4gYWNjZXNzIHRoZSBjb250ZW50cyBvZiB0aGUgTmFtZXNwYWNlIHRoYXQgb3ducyBpdC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0icHJpdmF0ZSIgdmFsdWU9IjEiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIE5hbWVkRWxlbWVudCB3aXRoIHByaXZhdGUgdmlzaWJpbGl0eSBpcyBvbmx5IHZpc2libGUgaW5zaWRlIHRoZSBOYW1lc3BhY2UgdGhhdCBvd25zIGl0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lTGl0ZXJhbHM+CisgICAgPGVMaXRlcmFscyBuYW1lPSJwcm90ZWN0ZWQiIHZhbHVlPSIyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBOYW1lZEVsZW1lbnQgd2l0aCBwcm90ZWN0ZWQgdmlzaWJpbGl0eSBpcyB2aXNpYmxlIHRvIEVsZW1lbnRzIHRoYXQgaGF2ZSBhIGdlbmVyYWxpemF0aW9uIHJlbGF0aW9uc2hpcCB0byB0aGUgTmFtZXNwYWNlIHRoYXQgb3ducyBpdC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0icGFja2FnZSIgdmFsdWU9IjMiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIE5hbWVkRWxlbWVudCB3aXRoIHBhY2thZ2UgdmlzaWJpbGl0eSBpcyB2aXNpYmxlIHRvIGFsbCBFbGVtZW50cyB3aXRoaW4gdGhlIG5lYXJlc3QgZW5jbG9zaW5nIFBhY2thZ2UgKGdpdmVuIHRoYXQgb3RoZXIgb3duaW5nIEVsZW1lbnRzIGhhdmUgcHJvcGVyIHZpc2liaWxpdHkpLiBPdXRzaWRlIHRoZSBuZWFyZXN0IGVuY2xvc2luZyBQYWNrYWdlLCBhIE5hbWVkRWxlbWVudCBtYXJrZWQgYXMgaGF2aW5nIHBhY2thZ2UgdmlzaWJpbGl0eSBpcyBub3QgdmlzaWJsZS4gIE9ubHkgTmFtZWRFbGVtZW50cyB0aGF0IGFyZSBub3Qgb3duZWQgYnkgUGFja2FnZXMgY2FuIGJlIG1hcmtlZCBhcyBoYXZpbmcgcGFja2FnZSB2aXNpYmlsaXR5LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lTGl0ZXJhbHM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlR5cGUiIGFic3RyYWN0PSJ0cnVlIiBlU3VwZXJUeXBlcz0iIy8vUGFja2FnZWFibGVFbGVtZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFR5cGUgY29uc3RyYWlucyB0aGUgdmFsdWVzIHJlcHJlc2VudGVkIGJ5IGEgVHlwZWRFbGVtZW50LiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjcmVhdGVBc3NvY2lhdGlvbiIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Bc3NvY2lhdGlvbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkNyZWF0ZXMgYShuKSAoYmluYXJ5KSBhc3NvY2lhdGlvbiBiZXR3ZWVuIHRoaXMgdHlwZSBhbmQgdGhlIHNwZWNpZmllZCBvdGhlciB0eXBlLCB3aXRoIHRoZSBzcGVjaWZpZWQgbmF2aWdhYmlsaXRpZXMsIGFnZ3JlZ2F0aW9ucywgbmFtZXMsIGxvd2VyIGJvdW5kcywgYW5kIHVwcGVyIGJvdW5kcywgYW5kIG93bmVkIGJ5IHRoaXMgdHlwZSdzIG5lYXJlc3QgcGFja2FnZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImVuZDFJc05hdmlnYWJsZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBuYXZpZ2FiaWxpdHkgZm9yIHRoZSBmaXJzdCBlbmQgb2YgdGhlIG5ldyBhc3NvY2lhdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImVuZDFBZ2dyZWdhdGlvbiIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9BZ2dyZWdhdGlvbktpbmQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGFnZ3JlZ2F0aW9uIGZvciB0aGUgZmlyc3QgZW5kIG9mIHRoZSBuZXcgYXNzb2NpYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbmQxTmFtZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG5hbWUgZm9yIHRoZSBmaXJzdCBlbmQgb2YgdGhlIG5ldyBhc3NvY2lhdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImVuZDFMb3dlciIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9JbnRlZ2VyIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBsb3dlciBib3VuZCBmb3IgdGhlIGZpcnN0IGVuZCBvZiB0aGUgbmV3IGFzc29jaWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZW5kMVVwcGVyIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1VubGltaXRlZE5hdHVyYWwiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHVwcGVyIGJvdW5kIGZvciB0aGUgZmlyc3QgZW5kIG9mIHRoZSBuZXcgYXNzb2NpYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbmQxVHlwZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9UeXBlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB0eXBlIGZvciB0aGUgZmlyc3QgZW5kIG9mIHRoZSBuZXcgYXNzb2NpYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbmQySXNOYXZpZ2FibGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbmF2aWdhYmlsaXR5IGZvciB0aGUgc2Vjb25kIGVuZCBvZiB0aGUgbmV3IGFzc29jaWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZW5kMkFnZ3JlZ2F0aW9uIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0FnZ3JlZ2F0aW9uS2luZCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgYWdncmVnYXRpb24gZm9yIHRoZSBzZWNvbmQgZW5kIG9mIHRoZSBuZXcgYXNzb2NpYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbmQyTmFtZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG5hbWUgZm9yIHRoZSBzZWNvbmQgZW5kIG9mIHRoZSBuZXcgYXNzb2NpYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbmQyTG93ZXIiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vSW50ZWdlciI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbG93ZXIgYm91bmQgZm9yIHRoZSBzZWNvbmQgZW5kIG9mIHRoZSBuZXcgYXNzb2NpYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbmQyVXBwZXIiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vVW5saW1pdGVkTmF0dXJhbCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgdXBwZXIgYm91bmQgZm9yIHRoZSBzZWNvbmQgZW5kIG9mIHRoZSBuZXcgYXNzb2NpYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRBc3NvY2lhdGlvbnMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0Fzc29jaWF0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0cmlldmVzIHRoZSBhc3NvY2lhdGlvbnMgaW4gd2hpY2ggdGhpcyB0eXBlIGlzIGludm9sdmVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY29uZm9ybXNUbyIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IGNvbmZvcm1zVG8oKSBnaXZlcyB0cnVlIGZvciBhIFR5cGUgdGhhdCBjb25mb3JtcyB0byBhbm90aGVyLiBCeSBkZWZhdWx0LCB0d28gVHlwZXMgZG8gbm90IGNvbmZvcm0gdG8gZWFjaCBvdGhlci4gVGhpcyBxdWVyeSBpcyBpbnRlbmRlZCB0byBiZSByZWRlZmluZWQgZm9yIHNwZWNpZmljIGNvbmZvcm1hbmNlIHNpdHVhdGlvbnMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJmYWxzZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ib3RoZXIiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vVHlwZSIvPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InBhY2thZ2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vUGFja2FnZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIgZGVyaXZlZD0idHJ1ZSIgZU9wcG9zaXRlPSIjLy9QYWNrYWdlL293bmVkVHlwZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNwZWNpZmllcyB0aGUgb3duaW5nIFBhY2thZ2Ugb2YgdGhpcyBUeXBlLCBpZiBhbnkuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lZEVsZW1lbnQvbmFtZXNwYWNlIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJBc3NvY2lhdGlvbiIgZVN1cGVyVHlwZXM9IiMvL0NsYXNzaWZpZXIgIy8vUmVsYXRpb25zaGlwIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIGxpbmsgaXMgYSB0dXBsZSBvZiB2YWx1ZXMgdGhhdCByZWZlciB0byB0eXBlZCBvYmplY3RzLiAgQW4gQXNzb2NpYXRpb24gY2xhc3NpZmllcyBhIHNldCBvZiBsaW5rcywgZWFjaCBvZiB3aGljaCBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgQXNzb2NpYXRpb24uICBFYWNoIHZhbHVlIGluIHRoZSBsaW5rIHJlZmVycyB0byBhbiBpbnN0YW5jZSBvZiB0aGUgdHlwZSBvZiB0aGUgY29ycmVzcG9uZGluZyBlbmQgb2YgdGhlIEFzc29jaWF0aW9uLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzcGVjaWFsaXplZF9lbmRfbnVtYmVyIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icGFyZW50cygpLT5zZWxlY3Qob2NsSXNLaW5kT2YoQXNzb2NpYXRpb24pKS5vY2xBc1R5cGUoQXNzb2NpYXRpb24pLT5mb3JBbGwocCB8IHAubWVtYmVyRW5kLT5zaXplKCkgPSBzZWxmLm1lbWJlckVuZC0+c2l6ZSgpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIEFzc29jaWF0aW9uIHNwZWNpYWxpemluZyBhbm90aGVyIEFzc29jaWF0aW9uIGhhcyB0aGUgc2FtZSBudW1iZXIgb2YgZW5kcyBhcyB0aGUgb3RoZXIgQXNzb2NpYXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzcGVjaWFsaXplZF9lbmRfdHlwZXMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJTZXF1ZW5jZXsxLi5tZW1iZXJFbmQtPnNpemUoKX0tPiYjeEQ7JiN4QTsmI3g5O2ZvckFsbChpIHwgZ2VuZXJhbC0+c2VsZWN0KG9jbElzS2luZE9mKEFzc29jaWF0aW9uKSkub2NsQXNUeXBlKEFzc29jaWF0aW9uKS0+JiN4RDsmI3hBOyYjeDk7JiN4OTtmb3JBbGwoZ2EgfCBzZWxmLm1lbWJlckVuZC0+YXQoaSkudHlwZS5jb25mb3Jtc1RvKGdhLm1lbWJlckVuZC0+YXQoaSkudHlwZSkpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IldoZW4gYW4gQXNzb2NpYXRpb24gc3BlY2lhbGl6ZXMgYW5vdGhlciBBc3NvY2lhdGlvbiwgZXZlcnkgZW5kIG9mIHRoZSBzcGVjaWZpYyBBc3NvY2lhdGlvbiBjb3JyZXNwb25kcyB0byBhbiBlbmQgb2YgdGhlIGdlbmVyYWwgQXNzb2NpYXRpb24sIGFuZCB0aGUgc3BlY2lmaWMgZW5kIHJlYWNoZXMgdGhlIHNhbWUgdHlwZSBvciBhIHN1YnR5cGUgb2YgdGhlIGNvcnJlc3BvbmRpbmcgZ2VuZXJhbCBlbmQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJiaW5hcnlfYXNzb2NpYXRpb25zIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibWVtYmVyRW5kLT5leGlzdHMoYWdncmVnYXRpb24gJmx0Oz4gQWdncmVnYXRpb25LaW5kOjpub25lKSBpbXBsaWVzIChtZW1iZXJFbmQtPnNpemUoKSA9IDIgYW5kIG1lbWJlckVuZC0+ZXhpc3RzKGFnZ3JlZ2F0aW9uID0gQWdncmVnYXRpb25LaW5kOjpub25lKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJPbmx5IGJpbmFyeSBBc3NvY2lhdGlvbnMgY2FuIGJlIGFnZ3JlZ2F0aW9ucy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImFzc29jaWF0aW9uX2VuZHMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJtZW1iZXJFbmQtPnNpemUoKSA+IDIgaW1wbGllcyBvd25lZEVuZC0+aW5jbHVkZXNBbGwobWVtYmVyRW5kKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkVuZHMgb2YgQXNzb2NpYXRpb25zIHdpdGggbW9yZSB0aGFuIHR3byBlbmRzIG11c3QgYmUgb3duZWQgYnkgdGhlIEFzc29jaWF0aW9uIGl0c2VsZi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImVuZHNfbXVzdF9iZV90eXBlZCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im1lbWJlckVuZC0+Zm9yQWxsKHR5cGUtPm5vdEVtcHR5KCkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc0JpbmFyeSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iRGV0ZXJtaW5lcyB3aGV0aGVyIHRoaXMgYXNzb2NpYXRpb24gaXMgYSBiaW5hcnkgYXNzb2NpYXRpb24sIGkuZS4gd2hldGhlciBpdCBoYXMgZXhhY3RseSB0d28gbWVtYmVyIGVuZHMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRFbmRUeXBlcyIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vVHlwZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9ImVuZFR5cGUgaXMgZGVyaXZlZCBmcm9tIHRoZSB0eXBlcyBvZiB0aGUgbWVtYmVyIGVuZHMuIi8+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJvcmlnaW5hbE5hbWUiIHZhbHVlPSJlbmRUeXBlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJtZW1iZXJFbmQtPmNvbGxlY3QodHlwZSktPmFzU2V0KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImVuZFR5cGUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1R5cGUiIGNoYW5nZWFibGU9ImZhbHNlIiB2b2xhdGlsZT0idHJ1ZSIKKyAgICAgICAgdHJhbnNpZW50PSJ0cnVlIiBkZXJpdmVkPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIENsYXNzaWZpZXJzIHRoYXQgYXJlIHVzZWQgYXMgdHlwZXMgb2YgdGhlIGVuZHMgb2YgdGhlIEFzc29jaWF0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vUmVsYXRpb25zaGlwL3JlbGF0ZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpc0Rlcml2ZWQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iZmFsc2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgd2hldGhlciB0aGUgQXNzb2NpYXRpb24gaXMgZGVyaXZlZCBmcm9tIG90aGVyIG1vZGVsIGVsZW1lbnRzIHN1Y2ggYXMgb3RoZXIgQXNzb2NpYXRpb25zLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJtZW1iZXJFbmQiIGxvd2VyQm91bmQ9IjIiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUHJvcGVydHkiIGVPcHBvc2l0ZT0iIy8vUHJvcGVydHkvYXNzb2NpYXRpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJFYWNoIGVuZCByZXByZXNlbnRzIHBhcnRpY2lwYXRpb24gb2YgaW5zdGFuY2VzIG9mIHRoZSBDbGFzc2lmaWVyIGNvbm5lY3RlZCB0byB0aGUgZW5kIGluIGxpbmtzIG9mIHRoZSBBc3NvY2lhdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVzcGFjZS9tZW1iZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im93bmVkRW5kIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL1Byb3BlcnR5IiBjb250YWlubWVudD0idHJ1ZSIgZU9wcG9zaXRlPSIjLy9Qcm9wZXJ0eS9vd25pbmdBc3NvY2lhdGlvbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBlbmRzIHRoYXQgYXJlIG93bmVkIGJ5IHRoZSBBc3NvY2lhdGlvbiBpdHNlbGYuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9Bc3NvY2lhdGlvbi9tZW1iZXJFbmQgIy8vQ2xhc3NpZmllci9mZWF0dXJlICMvL05hbWVzcGFjZS9vd25lZE1lbWJlciIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ibmF2aWdhYmxlT3duZWRFbmQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1Byb3BlcnR5Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG5hdmlnYWJsZSBlbmRzIHRoYXQgYXJlIG93bmVkIGJ5IHRoZSBBc3NvY2lhdGlvbiBpdHNlbGYuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9Bc3NvY2lhdGlvbi9vd25lZEVuZCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUHJvcGVydHkiIGVTdXBlclR5cGVzPSIjLy9TdHJ1Y3R1cmFsRmVhdHVyZSAjLy9Db25uZWN0YWJsZUVsZW1lbnQgIy8vRGVwbG95bWVudFRhcmdldCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBQcm9wZXJ0eSBpcyBhIFN0cnVjdHVyYWxGZWF0dXJlLiBBIFByb3BlcnR5IHJlbGF0ZWQgYnkgb3duZWRBdHRyaWJ1dGUgdG8gYSBDbGFzc2lmaWVyIChvdGhlciB0aGFuIGFuIGFzc29jaWF0aW9uKSByZXByZXNlbnRzIGFuIGF0dHJpYnV0ZSBhbmQgbWlnaHQgYWxzbyByZXByZXNlbnQgYW4gYXNzb2NpYXRpb24gZW5kLiBJdCByZWxhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSBDbGFzc2lmaWVyIHRvIGEgdmFsdWUgb3Igc2V0IG9mIHZhbHVlcyBvZiB0aGUgdHlwZSBvZiB0aGUgYXR0cmlidXRlLiBBIFByb3BlcnR5IHJlbGF0ZWQgYnkgbWVtYmVyRW5kIHRvIGFuIEFzc29jaWF0aW9uIHJlcHJlc2VudHMgYW4gZW5kIG9mIHRoZSBBc3NvY2lhdGlvbi4gVGhlIHR5cGUgb2YgdGhlIFByb3BlcnR5IGlzIHRoZSB0eXBlIG9mIHRoZSBlbmQgb2YgdGhlIEFzc29jaWF0aW9uLiBBIFByb3BlcnR5IGhhcyB0aGUgY2FwYWJpbGl0eSBvZiBiZWluZyBhIERlcGxveW1lbnRUYXJnZXQgaW4gYSBEZXBsb3ltZW50IHJlbGF0aW9uc2hpcC4gVGhpcyBlbmFibGVzIG1vZGVsaW5nIHRoZSBkZXBsb3ltZW50IHRvIGhpZXJhcmNoaWNhbCBub2RlcyB0aGF0IGhhdmUgUHJvcGVydGllcyBmdW5jdGlvbmluZyBhcyBpbnRlcm5hbCBwYXJ0cy4gIFByb3BlcnR5IHNwZWNpYWxpemVzIFBhcmFtZXRlcmFibGVFbGVtZW50IHRvIHNwZWNpZnkgdGhhdCBhIFByb3BlcnR5IGNhbiBiZSBleHBvc2VkIGFzIGEgZm9ybWFsIHRlbXBsYXRlIHBhcmFtZXRlciwgYW5kIHByb3ZpZGVkIGFzIGFuIGFjdHVhbCBwYXJhbWV0ZXIgaW4gYSBiaW5kaW5nIG9mIGEgdGVtcGxhdGUuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9ImR1cGxpY2F0ZXMiPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBuYW1lPSJpc0NvbXBhdGlibGVXaXRoIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgaXNDb21wYXRpYmxlV2l0aCgpIGRldGVybWluZXMgaWYgdGhpcyBQcm9wZXJ0eSBpcyBjb21wYXRpYmxlIHdpdGggdGhlIHNwZWNpZmllZCBQYXJhbWV0ZXJhYmxlRWxlbWVudC4gVGhpcyBQcm9wZXJ0eSBpcyBjb21wYXRpYmxlIHdpdGggUGFyYW1ldGVyYWJsZUVsZW1lbnQgcCBpZiB0aGUga2luZCBvZiB0aGlzIFByb3BlcnR5IGlzIHRoZXNhbWUgYXMgb3IgYSBzdWJ0eXBlIG9mIHRoZSBraW5kIG9mIHAuIEZ1cnRoZXIsIGlmIHAgaXMgYSBUeXBlZEVsZW1lbnQsIHRoZW4gdGhlIHR5cGUgb2YgdGhpcyBQcm9wZXJ0eSBtdXN0IGJlIGNvbmZvcm1hbnQgd2l0aCB0aGUgdHlwZSBvZiBwLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vUGFyYW1ldGVyYWJsZUVsZW1lbnQvaXNDb21wYXRpYmxlV2l0aCIvPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzZWxmLm9jbElzS2luZE9mKHAub2NsVHlwZSgpKSBhbmQgKHAub2NsSXNLaW5kT2YoVHlwZWRFbGVtZW50KSBpbXBsaWVzJiN4RDsmI3hBO3NlbGYudHlwZS5jb25mb3Jtc1RvKHAub2NsQXNUeXBlKFR5cGVkRWxlbWVudCkudHlwZSkpIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9QYXJhbWV0ZXJhYmxlRWxlbWVudCIvPgorICAgICAgPC9jb250ZW50cz4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgbmFtZT0iaXNDb25zaXN0ZW50V2l0aCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IGlzQ29uc2lzdGVudFdpdGgoKSBzcGVjaWZpZXMsIGZvciBhbnkgdHdvIFByb3BlcnRpZXMgaW4gYSBjb250ZXh0IGluIHdoaWNoIHJlZGVmaW5pdGlvbiBpcyBwb3NzaWJsZSwgd2hldGhlciByZWRlZmluaXRpb24gd291bGQgYmUgbG9naWNhbGx5IGNvbnNpc3RlbnQuIEEgcmVkZWZpbmluZyBQcm9wZXJ0eSBpcyBjb25zaXN0ZW50IHdpdGggYSByZWRlZmluZWQgUHJvcGVydHkgaWYgdGhlIHR5cGUgb2YgdGhlIHJlZGVmaW5pbmcgUHJvcGVydHkgY29uZm9ybXMgdG8gdGhlIHR5cGUgb2YgdGhlIHJlZGVmaW5lZCBQcm9wZXJ0eSwgYW5kIHRoZSBtdWx0aXBsaWNpdHkgb2YgdGhlIHJlZGVmaW5pbmcgUHJvcGVydHkgKGlmIHNwZWNpZmllZCkgaXMgY29udGFpbmVkIGluIHRoZSBtdWx0aXBsaWNpdHkgb2YgdGhlIHJlZGVmaW5lZCBQcm9wZXJ0eS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL1JlZGVmaW5hYmxlRWxlbWVudC9pc0NvbnNpc3RlbnRXaXRoIi8+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InJlZGVmaW5pbmdFbGVtZW50Lm9jbElzS2luZE9mKFByb3BlcnR5KSBhbmQgJiN4QTsgIGxldCBwcm9wIDogUHJvcGVydHkgPSByZWRlZmluaW5nRWxlbWVudC5vY2xBc1R5cGUoUHJvcGVydHkpIGluICYjeEE7ICAocHJvcC50eXBlLmNvbmZvcm1zVG8oc2VsZi50eXBlKSBhbmQgJiN4QTsgICgocHJvcC5sb3dlckJvdW5kKCktPm5vdEVtcHR5KCkgYW5kIHNlbGYubG93ZXJCb3VuZCgpLT5ub3RFbXB0eSgpKSBpbXBsaWVzIHByb3AubG93ZXJCb3VuZCgpID49IHNlbGYubG93ZXJCb3VuZCgpKSBhbmQgJiN4QTsgICgocHJvcC51cHBlckJvdW5kKCktPm5vdEVtcHR5KCkgYW5kIHNlbGYudXBwZXJCb3VuZCgpLT5ub3RFbXB0eSgpKSBpbXBsaWVzIHByb3AubG93ZXJCb3VuZCgpICZsdDs9IHNlbGYubG93ZXJCb3VuZCgpKSBhbmQgJiN4QTsgIChzZWxmLmlzQ29tcG9zaXRlIGltcGxpZXMgcHJvcC5pc0NvbXBvc2l0ZSkpIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icmVkZWZpbmluZ0VsZW1lbnQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUmVkZWZpbmFibGVFbGVtZW50Ii8+CisgICAgICA8L2NvbnRlbnRzPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzdWJzZXR0aW5nX2NvbnRleHRfY29uZm9ybXMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzdWJzZXR0ZWRQcm9wZXJ0eS0+bm90RW1wdHkoKSBpbXBsaWVzJiN4QTsgIChzdWJzZXR0aW5nQ29udGV4dCgpLT5ub3RFbXB0eSgpIGFuZCBzdWJzZXR0aW5nQ29udGV4dCgpLT5mb3JBbGwgKHNjIHwmI3hBOyAgICBzdWJzZXR0ZWRQcm9wZXJ0eS0+Zm9yQWxsKHNwIHwmI3hBOyAgICAgIHNwLnN1YnNldHRpbmdDb250ZXh0KCktPmV4aXN0cyhjIHwgc2MuY29uZm9ybXNUbyhjKSkpKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTdWJzZXR0aW5nIG1heSBvbmx5IG9jY3VyIHdoZW4gdGhlIGNvbnRleHQgb2YgdGhlIHN1YnNldHRpbmcgcHJvcGVydHkgY29uZm9ybXMgdG8gdGhlIGNvbnRleHQgb2YgdGhlIHN1YnNldHRlZCBwcm9wZXJ0eS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImRlcml2ZWRfdW5pb25faXNfcmVhZF9vbmx5IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaXNEZXJpdmVkVW5pb24gaW1wbGllcyBpc1JlYWRPbmx5Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBkZXJpdmVkIHVuaW9uIGlzIHJlYWQgb25seS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im11bHRpcGxpY2l0eV9vZl9jb21wb3NpdGUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpc0NvbXBvc2l0ZSBhbmQgYXNzb2NpYXRpb24gJmx0Oz4gbnVsbCBpbXBsaWVzIG9wcG9zaXRlLnVwcGVyQm91bmQoKSAmbHQ7PSAxIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBtdWx0aXBsaWNpdHkgb24gdGhlIGNvbXBvc2luZyBlbmQgb2YgYSBjb21wb3NpdGUgYWdncmVnYXRpb24gbXVzdCBub3QgaGF2ZSBhbiB1cHBlciBib3VuZCBncmVhdGVyIHRoYW4gMS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InJlZGVmaW5lZF9wcm9wZXJ0eV9pbmhlcml0ZWQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIocmVkZWZpbmVkUHJvcGVydHktPm5vdEVtcHR5KCkpIGltcGxpZXMmI3hEOyYjeEE7ICAocmVkZWZpbml0aW9uQ29udGV4dC0+bm90RW1wdHkoKSBhbmQmI3hEOyYjeEE7ICAgICAgcmVkZWZpbmVkUHJvcGVydHktPmZvckFsbChycHwmI3hEOyYjeEE7ICAgICAgICAoKHJlZGVmaW5pdGlvbkNvbnRleHQtPmNvbGxlY3QoZmN8JiN4RDsmI3hBOyAgICAgICAgICBmYy5hbGxQYXJlbnRzKCkpKS0+YXNTZXQoKSktPmNvbGxlY3QoY3wgYy5hbGxGZWF0dXJlcygpKS0+YXNTZXQoKS0+aW5jbHVkZXMocnApKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIHJlZGVmaW5lZCBQcm9wZXJ0eSBtdXN0IGJlIGluaGVyaXRlZCBmcm9tIGEgbW9yZSBnZW5lcmFsIENsYXNzaWZpZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzdWJzZXR0aW5nX3J1bGVzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ic3Vic2V0dGVkUHJvcGVydHktPmZvckFsbChzcCB8JiN4QTsgIHNlbGYudHlwZS5jb25mb3Jtc1RvKHNwLnR5cGUpIGFuZCYjeEE7ICAgICgoc2VsZi51cHBlckJvdW5kKCktPm5vdEVtcHR5KCkgYW5kIHNwLnVwcGVyQm91bmQoKS0+bm90RW1wdHkoKSkgaW1wbGllcyYjeEE7ICAgICAgc2VsZi51cHBlckJvdW5kKCkgJmx0Oz0gc3AudXBwZXJCb3VuZCgpICkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBzdWJzZXR0aW5nIFByb3BlcnR5IG1heSBzdHJlbmd0aGVuIHRoZSB0eXBlIG9mIHRoZSBzdWJzZXR0ZWQgUHJvcGVydHksIGFuZCBpdHMgdXBwZXIgYm91bmQgbWF5IGJlIGxlc3MuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJiaW5kaW5nX3RvX2F0dHJpYnV0ZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9IihzZWxmLmlzQXR0cmlidXRlKCkmI3hEOyYjeEE7YW5kICh0ZW1wbGF0ZVBhcmFtZXRlclN1YnN0aXR1dGlvbi0+bm90RW1wdHkoKSkmI3hEOyYjeEE7aW1wbGllcyAodGVtcGxhdGVQYXJhbWV0ZXJTdWJzdGl0dXRpb24tPmZvckFsbCh0cyB8JiN4RDsmI3hBOyAgICB0cy5mb3JtYWwub2NsSXNLaW5kT2YoUHJvcGVydHkpJiN4RDsmI3hBOyAgICBhbmQgdHMuZm9ybWFsLm9jbEFzVHlwZShQcm9wZXJ0eSkuaXNBdHRyaWJ1dGUoKSkpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgYmluZGluZyBvZiBhIFByb3BlcnR5VGVtcGxhdGVQYXJhbWV0ZXIgcmVwcmVzZW50aW5nIGFuIGF0dHJpYnV0ZSBtdXN0IGJlIHRvIGFuIGF0dHJpYnV0ZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImRlcml2ZWRfdW5pb25faXNfZGVyaXZlZCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlzRGVyaXZlZFVuaW9uIGltcGxpZXMgaXNEZXJpdmVkIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBkZXJpdmVkIHVuaW9uIGlzIGRlcml2ZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJkZXBsb3ltZW50X3RhcmdldCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImRlcGxveW1lbnQtPm5vdEVtcHR5KCkgaW1wbGllcyBvd25lci5vY2xJc0tpbmRPZihOb2RlKSBhbmQgTm9kZS5hbGxJbnN0YW5jZXMoKS0+ZXhpc3RzKG4gfCBuLnBhcnQtPmV4aXN0cyhwIHwgcCA9IHNlbGYpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgUHJvcGVydHkgY2FuIGJlIGEgRGVwbG95bWVudFRhcmdldCBpZiBpdCBpcyBhIGtpbmQgb2YgTm9kZSBhbmQgZnVuY3Rpb25zIGFzIGEgcGFydCBpbiB0aGUgaW50ZXJuYWwgc3RydWN0dXJlIG9mIGFuIGVuY29tcGFzc2luZyBOb2RlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ic3Vic2V0dGVkX3Byb3BlcnR5X25hbWVzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ic3Vic2V0dGVkUHJvcGVydHktPmZvckFsbChzcCB8IHNwLm5hbWUgJmx0Oz4gbmFtZSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFByb3BlcnR5IG1heSBub3Qgc3Vic2V0IGEgUHJvcGVydHkgd2l0aCB0aGUgc2FtZSBuYW1lLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0idHlwZV9vZl9vcHBvc2l0ZV9lbmQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIob3Bwb3NpdGUtPm5vdEVtcHR5KCkgYW5kIG93bmluZ0Fzc29jaWF0aW9uLT5pc0VtcHR5KCkpIGltcGxpZXMgY2xhc3NpZmllciA9IG9wcG9zaXRlLnR5cGUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiBhIFByb3BlcnR5IGlzIGEgY2xhc3NpZmllci1vd25lZCBlbmQgb2YgYSBiaW5hcnkgQXNzb2NpYXRpb24sIGl0cyBvd25lciBtdXN0IGJlIHRoZSB0eXBlIG9mIHRoZSBvcHBvc2l0ZSBlbmQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJxdWFsaWZpZWRfaXNfYXNzb2NpYXRpb25fZW5kIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icXVhbGlmaWVyLT5ub3RFbXB0eSgpIGltcGxpZXMgYXNzb2NpYXRpb24tPm5vdEVtcHR5KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbGwgcXVhbGlmaWVkIFByb3BlcnRpZXMgbXVzdCBiZSBBc3NvY2lhdGlvbiBlbmRzIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXREZWZhdWx0IiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHJpZXZlcyBhIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGUgZGVmYXVsdCB2YWx1ZSBmb3IgdGhpcyBwcm9wZXJ0eS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldE90aGVyRW5kIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9IiMvL1Byb3BlcnR5Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0cmlldmVzIHRoZSBvdGhlciBlbmQgb2YgdGhlIChiaW5hcnkpIGFzc29jaWF0aW9uIGluIHdoaWNoIHRoaXMgcHJvcGVydHkgaXMgYSBtZW1iZXIgZW5kLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNTZXREZWZhdWx0IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9InN1cHByZXNzZWRWaXNpYmlsaXR5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ic2V0Qm9vbGVhbkRlZmF1bHRWYWx1ZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTZXRzIHRoZSBkZWZhdWx0IHZhbHVlIGZvciB0aGlzIHByb3BlcnR5IHRvIHRoZSBzcGVjaWZpZWQgQm9vbGVhbiB2YWx1ZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InZhbHVlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG5ldyBkZWZhdWx0IHZhbHVlLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ic2V0RGVmYXVsdCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTZXRzIHRoZSBkZWZhdWx0IHZhbHVlIGZvciB0aGlzIHByb3BlcnR5IGJhc2VkIG9uIHRoZSBzcGVjaWZpZWQgc3RyaW5nIHJlcHJlc2VudGF0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibmV3RGVmYXVsdCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBzdHJpbmcgcmVwZXNlbnRhdGlvbiBvZiB0aGUgbmV3IGRlZmF1bHQgdmFsdWUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzZXRJbnRlZ2VyRGVmYXVsdFZhbHVlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNldHMgdGhlIGRlZmF1bHQgdmFsdWUgZm9yIHRoaXMgcHJvcGVydHkgdG8gdGhlIHNwZWNpZmllZCBpbnRlZ2VyIHZhbHVlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0idmFsdWUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vSW50ZWdlciI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbmV3IGRlZmF1bHQgdmFsdWUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzZXRJc0NvbXBvc2l0ZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9InN1cHByZXNzZWRWaXNpYmlsaXR5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibmV3SXNDb21wb3NpdGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIvPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InNldElzTmF2aWdhYmxlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNldHMgdGhlIG5hdmlnYWJpbGl0eSBvZiB0aGlzIHByb3BlcnR5IGFzIGluZGljYXRlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImlzTmF2aWdhYmxlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG5ldyBuYXZpZ2FiaWxpdHkuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzZXROdWxsRGVmYXVsdFZhbHVlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNldHMgdGhlIGRlZmF1bHQgdmFsdWUgZm9yIHRoaXMgcHJvcGVydHkgdG8gdGhlIG51bGwgdmFsdWUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzZXRPcHBvc2l0ZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9InN1cHByZXNzZWRWaXNpYmlsaXR5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibmV3T3Bwb3NpdGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUHJvcGVydHkiLz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzZXRSZWFsRGVmYXVsdFZhbHVlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNldHMgdGhlIGRlZmF1bHQgdmFsdWUgZm9yIHRoaXMgcHJvcGVydHkgdG8gdGhlIHNwZWNpZmllZCByZWFsIHZhbHVlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0idmFsdWUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vUmVhbCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbmV3IGRlZmF1bHQgdmFsdWUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzZXRTdHJpbmdEZWZhdWx0VmFsdWUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iU2V0cyB0aGUgZGVmYXVsdCB2YWx1ZSBmb3IgdGhpcyBwcm9wZXJ0eSB0byB0aGUgc3BlY2lmaWVkIHN0cmluZyB2YWx1ZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InZhbHVlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbmV3IGRlZmF1bHQgdmFsdWUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzZXRVbmxpbWl0ZWROYXR1cmFsRGVmYXVsdFZhbHVlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNldHMgdGhlIGRlZmF1bHQgdmFsdWUgZm9yIHRoaXMgcHJvcGVydHkgdG8gdGhlIHNwZWNpZmllZCB1bmxpbWl0ZWQgbmF0dXJhbCB2YWx1ZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InZhbHVlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1VubGltaXRlZE5hdHVyYWwiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG5ldyBkZWZhdWx0IHZhbHVlLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0idW5zZXREZWZhdWx0IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc0F0dHJpYnV0ZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IGlzQXR0cmlidXRlKCkgaXMgdHJ1ZSBpZiB0aGUgUHJvcGVydHkgaXMgZGVmaW5lZCBhcyBhbiBhdHRyaWJ1dGUgb2Ygc29tZSBDbGFzc2lmaWVyLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibm90IGNsYXNzaWZpZXItPmlzRW1wdHkoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNDb21wb3NpdGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB2YWx1ZSBvZiBpc0NvbXBvc2l0ZSBpcyB0cnVlIG9ubHkgaWYgYWdncmVnYXRpb24gaXMgY29tcG9zaXRlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iYWdncmVnYXRpb24gPSBBZ2dyZWdhdGlvbktpbmQ6OmNvbXBvc2l0ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNOYXZpZ2FibGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBpc05hdmlnYWJsZSgpIGluZGljYXRlcyB3aGV0aGVyIGl0IGlzIHBvc3NpYmxlIHRvIG5hdmlnYXRlIGFjcm9zcyB0aGUgcHJvcGVydHkuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJub3QgY2xhc3NpZmllci0+aXNFbXB0eSgpIG9yIGFzc29jaWF0aW9uLm5hdmlnYWJsZU93bmVkRW5kLT5pbmNsdWRlcyhzZWxmKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0T3Bwb3NpdGUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iIy8vUHJvcGVydHkiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiB0aGlzIHByb3BlcnR5IGlzIGEgbWVtYmVyRW5kIG9mIGEgYmluYXJ5IGFzc29jaWF0aW9uLCB0aGVuIG9wcG9zaXRlIGdpdmVzIHRoZSBvdGhlciBlbmQuIi8+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJvcmlnaW5hbE5hbWUiIHZhbHVlPSJvcHBvc2l0ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaWYgYXNzb2NpYXRpb24gJmx0Oz4gbnVsbCBhbmQgYXNzb2NpYXRpb24ubWVtYmVyRW5kLT5zaXplKCkgPSAyJiN4QTt0aGVuJiN4QTsgICAgYXNzb2NpYXRpb24ubWVtYmVyRW5kLT5hbnkoZSB8IGUgJmx0Oz4gc2VsZikmI3hBO2Vsc2UmI3hBOyAgICBudWxsJiN4QTtlbmRpZiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ic3Vic2V0dGluZ0NvbnRleHQiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1R5cGUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgc3Vic2V0dGluZ0NvbnRleHQoKSBnaXZlcyB0aGUgY29udGV4dCBmb3Igc3Vic2V0dGluZyBhIFByb3BlcnR5LiBJdCBjb25zaXN0cywgaW4gdGhlIGNhc2Ugb2YgYW4gYXR0cmlidXRlLCBvZiB0aGUgY29ycmVzcG9uZGluZyBDbGFzc2lmaWVyLCBhbmQgaW4gdGhlIGNhc2Ugb2YgYW4gYXNzb2NpYXRpb24gZW5kLCBhbGwgb2YgdGhlIENsYXNzaWZpZXJzIGF0IHRoZSBvdGhlciBlbmRzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaWYgYXNzb2NpYXRpb24gJmx0Oz4gbnVsbCYjeEE7dGhlbiBhc3NvY2lhdGlvbi5tZW1iZXJFbmQtPmV4Y2x1ZGluZyhzZWxmKS0+Y29sbGVjdCh0eXBlKS0+YXNTZXQoKSYjeEE7ZWxzZSAmI3hBOyAgaWYgY2xhc3NpZmllciZsdDs+bnVsbCYjeEE7ICB0aGVuIGNsYXNzaWZpZXItPmFzU2V0KCkmI3hBOyAgZWxzZSBTZXR7fSAmI3hBOyAgZW5kaWYmI3hBO2VuZGlmIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJkYXRhdHlwZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9EYXRhVHlwZSIgZU9wcG9zaXRlPSIjLy9EYXRhVHlwZS9vd25lZEF0dHJpYnV0ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBEYXRhVHlwZSB0aGF0IG93bnMgdGhpcyBQcm9wZXJ0eSwgaWYgYW55LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vTmFtZWRFbGVtZW50L25hbWVzcGFjZSAjLy9GZWF0dXJlL2ZlYXR1cmluZ0NsYXNzaWZpZXIgIy8vUmVkZWZpbmFibGVFbGVtZW50L3JlZGVmaW5pdGlvbkNvbnRleHQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImludGVyZmFjZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9JbnRlcmZhY2UiIGVPcHBvc2l0ZT0iIy8vSW50ZXJmYWNlL293bmVkQXR0cmlidXRlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIEludGVyZmFjZSB0aGF0IG93bnMgdGhpcyBQcm9wZXJ0eSwgaWYgYW55LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vTmFtZWRFbGVtZW50L25hbWVzcGFjZSAjLy9GZWF0dXJlL2ZlYXR1cmluZ0NsYXNzaWZpZXIgIy8vUmVkZWZpbmFibGVFbGVtZW50L3JlZGVmaW5pdGlvbkNvbnRleHQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImRlZmF1bHQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIiB2b2xhdGlsZT0idHJ1ZSIgdHJhbnNpZW50PSJ0cnVlIgorICAgICAgICB1bnNldHRhYmxlPSJ0cnVlIiBkZXJpdmVkPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkR2V0VmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkU2V0VmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkSXNTZXRWaXNpYmlsaXR5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8ZGV0YWlscyBrZXk9InN1cHByZXNzZWRVbnNldFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImFnZ3JlZ2F0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0FnZ3JlZ2F0aW9uS2luZCIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0ibm9uZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNwZWNpZmllcyB0aGUga2luZCBvZiBhZ2dyZWdhdGlvbiB0aGF0IGFwcGxpZXMgdG8gdGhlIFByb3BlcnR5LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJhc3NvY2lhdGlvbkVuZCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9Qcm9wZXJ0eSIgZU9wcG9zaXRlPSIjLy9Qcm9wZXJ0eS9xdWFsaWZpZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJEZXNpZ25hdGVzIHRoZSBvcHRpb25hbCBhc3NvY2lhdGlvbiBlbmQgdGhhdCBvd25zIGEgcXVhbGlmaWVyIGF0dHJpYnV0ZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InF1YWxpZmllciIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9Qcm9wZXJ0eSIgY29udGFpbm1lbnQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vUHJvcGVydHkvYXNzb2NpYXRpb25FbmQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBvcHRpb25hbCBsaXN0IG9mIG9yZGVyZWQgcXVhbGlmaWVyIGF0dHJpYnV0ZXMgZm9yIHRoZSBlbmQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iY2xhc3MiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vQ2xhc3MiIGNoYW5nZWFibGU9ImZhbHNlIiB2b2xhdGlsZT0idHJ1ZSIgdHJhbnNpZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIENsYXNzIHRoYXQgb3ducyB0aGlzIFByb3BlcnR5LCBpZiBhbnkuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lZEVsZW1lbnQvbmFtZXNwYWNlICMvL0ZlYXR1cmUvZmVhdHVyaW5nQ2xhc3NpZmllciAjLy9SZWRlZmluYWJsZUVsZW1lbnQvcmVkZWZpbml0aW9uQ29udGV4dCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZGVmYXVsdFZhbHVlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL1ZhbHVlU3BlY2lmaWNhdGlvbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFZhbHVlU3BlY2lmaWNhdGlvbiB0aGF0IGlzIGV2YWx1YXRlZCB0byBnaXZlIGEgZGVmYXVsdCB2YWx1ZSBmb3IgdGhlIFByb3BlcnR5IHdoZW4gYW4gaW5zdGFuY2Ugb2YgdGhlIG93bmluZyBDbGFzc2lmaWVyIGlzIGluc3RhbnRpYXRlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpc0NvbXBvc2l0ZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIiB2b2xhdGlsZT0idHJ1ZSIKKyAgICAgICAgdHJhbnNpZW50PSJ0cnVlIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSJmYWxzZSIgZGVyaXZlZD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIGlzQ29tcG9zaXRlIGlzIHRydWUsIHRoZSBvYmplY3QgY29udGFpbmluZyB0aGUgYXR0cmlidXRlIGlzIGEgY29udGFpbmVyIGZvciB0aGUgb2JqZWN0IG9yIHZhbHVlIGNvbnRhaW5lZCBpbiB0aGUgYXR0cmlidXRlLiBUaGlzIGlzIGEgZGVyaXZlZCB2YWx1ZSwgaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBhZ2dyZWdhdGlvbiBvZiB0aGUgUHJvcGVydHkgaXMgY29tcG9zaXRlIG9yIG5vdC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNEZXJpdmVkIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGRlZmF1bHRWYWx1ZUxpdGVyYWw9ImZhbHNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iU3BlY2lmaWVzIHdoZXRoZXIgdGhlIFByb3BlcnR5IGlzIGRlcml2ZWQsIGkuZS4sIHdoZXRoZXIgaXRzIHZhbHVlIG9yIHZhbHVlcyBjYW4gYmUgY29tcHV0ZWQgZnJvbSBvdGhlciBpbmZvcm1hdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNEZXJpdmVkVW5pb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iZmFsc2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgd2hldGhlciB0aGUgcHJvcGVydHkgaXMgZGVyaXZlZCBhcyB0aGUgdW5pb24gb2YgYWxsIG9mIHRoZSBQcm9wZXJ0aWVzIHRoYXQgYXJlIGNvbnN0cmFpbmVkIHRvIHN1YnNldCBpdC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNJRCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiCisgICAgICAgIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSJmYWxzZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRydWUgaW5kaWNhdGVzIHRoaXMgcHJvcGVydHkgY2FuIGJlIHVzZWQgdG8gdW5pcXVlbHkgaWRlbnRpZnkgYW4gaW5zdGFuY2Ugb2YgdGhlIGNvbnRhaW5pbmcgQ2xhc3MuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im9wcG9zaXRlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL1Byb3BlcnR5IiB2b2xhdGlsZT0idHJ1ZSIgdHJhbnNpZW50PSJ0cnVlIiBkZXJpdmVkPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSW4gdGhlIGNhc2Ugd2hlcmUgdGhlIFByb3BlcnR5IGlzIG9uZSBlbmQgb2YgYSBiaW5hcnkgYXNzb2NpYXRpb24gdGhpcyBnaXZlcyB0aGUgb3RoZXIgZW5kLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJvd25pbmdBc3NvY2lhdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9Bc3NvY2lhdGlvbiIgZU9wcG9zaXRlPSIjLy9Bc3NvY2lhdGlvbi9vd25lZEVuZCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBvd25pbmcgYXNzb2NpYXRpb24gb2YgdGhpcyBwcm9wZXJ0eSwgaWYgYW55LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRmVhdHVyZS9mZWF0dXJpbmdDbGFzc2lmaWVyICMvL05hbWVkRWxlbWVudC9uYW1lc3BhY2UgIy8vUHJvcGVydHkvYXNzb2NpYXRpb24gIy8vUmVkZWZpbmFibGVFbGVtZW50L3JlZGVmaW5pdGlvbkNvbnRleHQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InJlZGVmaW5lZFByb3BlcnR5IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Qcm9wZXJ0eSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBwcm9wZXJ0aWVzIHRoYXQgYXJlIHJlZGVmaW5lZCBieSB0aGlzIHByb3BlcnR5LCBpZiBhbnkuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9SZWRlZmluYWJsZUVsZW1lbnQvcmVkZWZpbmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ic3Vic2V0dGVkUHJvcGVydHkiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1Byb3BlcnR5Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHByb3BlcnRpZXMgb2Ygd2hpY2ggdGhpcyBQcm9wZXJ0eSBpcyBjb25zdHJhaW5lZCB0byBiZSBhIHN1YnNldCwgaWYgYW55LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJhc3NvY2lhdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9Bc3NvY2lhdGlvbiIgZU9wcG9zaXRlPSIjLy9Bc3NvY2lhdGlvbi9tZW1iZXJFbmQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgQXNzb2NpYXRpb24gb2Ygd2hpY2ggdGhpcyBQcm9wZXJ0eSBpcyBhIG1lbWJlciwgaWYgYW55LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb25uZWN0YWJsZUVsZW1lbnQiIGFic3RyYWN0PSJ0cnVlIgorICAgICAgZVN1cGVyVHlwZXM9IiMvL1R5cGVkRWxlbWVudCAjLy9QYXJhbWV0ZXJhYmxlRWxlbWVudCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQ29ubmVjdGFibGVFbGVtZW50IGlzIGFuIGFic3RyYWN0IG1ldGFjbGFzcyByZXByZXNlbnRpbmcgYSBzZXQgb2YgaW5zdGFuY2VzIHRoYXQgcGxheSByb2xlcyBvZiBhIFN0cnVjdHVyZWRDbGFzc2lmaWVyLiBDb25uZWN0YWJsZUVsZW1lbnRzIG1heSBiZSBqb2luZWQgYnkgYXR0YWNoZWQgQ29ubmVjdG9ycyBhbmQgc3BlY2lmeSBjb25maWd1cmF0aW9ucyBvZiBsaW5rZWQgaW5zdGFuY2VzIHRvIGJlIGNyZWF0ZWQgd2l0aGluIGFuIGluc3RhbmNlIG9mIHRoZSBjb250YWluaW5nIFN0cnVjdHVyZWRDbGFzc2lmaWVyLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJkdXBsaWNhdGVzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJ0ZW1wbGF0ZVBhcmFtZXRlciI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZVR5cGUiIHZhbHVlPSJ1bWw6OkNvbm5lY3RhYmxlRWxlbWVudFRlbXBsYXRlUGFyYW1ldGVyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0idGVtcGxhdGVQYXJhbWV0ZXIiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgIGVUeXBlPSIjLy9UZW1wbGF0ZVBhcmFtZXRlciIgZU9wcG9zaXRlPSIjLy9Db25uZWN0YWJsZUVsZW1lbnRUZW1wbGF0ZVBhcmFtZXRlci8lZHVwbGljYXRlcyUvcGFyYW1ldGVyZWRFbGVtZW50Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBDb25uZWN0YWJsZUVsZW1lbnRUZW1wbGF0ZVBhcmFtZXRlciBmb3IgdGhpcyBDb25uZWN0YWJsZUVsZW1lbnQgcGFyYW1ldGVyLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vUGFyYW1ldGVyYWJsZUVsZW1lbnQvdGVtcGxhdGVQYXJhbWV0ZXIiLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldEVuZHMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0Nvbm5lY3RvckVuZCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkRlcml2YXRpb24gZm9yIENvbm5lY3RhYmxlRWxlbWVudDo6L2VuZCA6IENvbm5lY3RvckVuZCIvPgorICAgICAgICA8ZGV0YWlscyBrZXk9InN1cHByZXNzZWRWaXNpYmlsaXR5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ib3JpZ2luYWxOYW1lIiB2YWx1ZT0iZW5kIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJDb25uZWN0b3JFbmQuYWxsSW5zdGFuY2VzKCktPnNlbGVjdChyb2xlID0gc2VsZikiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImVuZCIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vQ29ubmVjdG9yRW5kIiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIKKyAgICAgICAgZGVyaXZlZD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgc2V0IG9mIENvbm5lY3RvckVuZHMgdGhhdCBhdHRhY2ggdG8gdGhpcyBDb25uZWN0YWJsZUVsZW1lbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlR5cGVkRWxlbWVudCIgYWJzdHJhY3Q9InRydWUiIGVTdXBlclR5cGVzPSIjLy9OYW1lZEVsZW1lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgVHlwZWRFbGVtZW50IGlzIGEgTmFtZWRFbGVtZW50IHRoYXQgbWF5IGhhdmUgYSBUeXBlIHNwZWNpZmllZCBmb3IgaXQuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InR5cGUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iIy8vVHlwZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB0eXBlIG9mIHRoZSBUeXBlZEVsZW1lbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNvbm5lY3RvckVuZCIgZVN1cGVyVHlwZXM9IiMvL011bHRpcGxpY2l0eUVsZW1lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgQ29ubmVjdG9yRW5kIGlzIGFuIGVuZHBvaW50IG9mIGEgQ29ubmVjdG9yLCB3aGljaCBhdHRhY2hlcyB0aGUgQ29ubmVjdG9yIHRvIGEgQ29ubmVjdGFibGVFbGVtZW50LiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJyb2xlX2FuZF9wYXJ0X3dpdGhfcG9ydCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InBhcnRXaXRoUG9ydC0+bm90RW1wdHkoKSBpbXBsaWVzICYjeEQ7JiN4QTsgIChyb2xlLm9jbElzS2luZE9mKFBvcnQpIGFuZCBwYXJ0V2l0aFBvcnQudHlwZS5vY2xBc1R5cGUoTmFtZXNwYWNlKS5tZW1iZXItPmluY2x1ZGVzKHJvbGUpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIGEgQ29ubmVjdG9yRW5kIHJlZmVyZW5jZXMgYSBwYXJ0V2l0aFBvcnQsIHRoZW4gdGhlIHJvbGUgbXVzdCBiZSBhIFBvcnQgdGhhdCBpcyBkZWZpbmVkIG9yIGluaGVyaXRlZCBieSB0aGUgdHlwZSBvZiB0aGUgcGFydFdpdGhQb3J0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0icGFydF93aXRoX3BvcnRfZW1wdHkiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIocm9sZS5vY2xJc0tpbmRPZihQb3J0KSBhbmQgcm9sZS5vd25lciA9IGNvbm5lY3Rvci5vd25lcikgaW1wbGllcyBwYXJ0V2l0aFBvcnQtPmlzRW1wdHkoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIGEgQ29ubmVjdG9yRW5kIGlzIGF0dGFjaGVkIHRvIGEgUG9ydCBvZiB0aGUgY29udGFpbmluZyBDbGFzc2lmaWVyLCBwYXJ0V2l0aFBvcnQgd2lsbCBiZSBlbXB0eS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im11bHRpcGxpY2l0eSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InNlbGYuY29tcGF0aWJsZVdpdGgoZGVmaW5pbmdFbmQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG11bHRpcGxpY2l0eSBvZiB0aGUgQ29ubmVjdG9yRW5kIG1heSBub3QgYmUgbW9yZSBnZW5lcmFsIHRoYW4gdGhlIG11bHRpcGxpY2l0eSBvZiB0aGUgY29ycmVzcG9uZGluZyBlbmQgb2YgdGhlIEFzc29jaWF0aW9uIHR5cGluZyB0aGUgb3duaW5nIENvbm5lY3RvciwgaWYgYW55LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ic2VsZl9wYXJ0X3dpdGhfcG9ydCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InBhcnRXaXRoUG9ydC0+bm90RW1wdHkoKSBpbXBsaWVzIG5vdCBwYXJ0V2l0aFBvcnQub2NsSXNLaW5kT2YoUG9ydCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgUHJvcGVydHkgaGVsZCBpbiBzZWxmLnBhcnRXaXRoUG9ydCBtdXN0IG5vdCBiZSBhIFBvcnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXREZWZpbmluZ0VuZCIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSIjLy9Qcm9wZXJ0eSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkRlcml2YXRpb24gZm9yIENvbm5lY3RvckVuZDo6L2RlZmluaW5nRW5kIDogUHJvcGVydHkiLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9Im9yaWdpbmFsTmFtZSIgdmFsdWU9ImRlZmluaW5nRW5kIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpZiBjb25uZWN0b3IudHlwZSA9IG51bGwgJiN4RDsmI3hBO3RoZW4mI3hEOyYjeEE7ICBudWxsICYjeEQ7JiN4QTtlbHNlJiN4RDsmI3hBOyAgbGV0IGluZGV4IDogSW50ZWdlciA9IGNvbm5lY3Rvci5lbmQtPmluZGV4T2Yoc2VsZikgaW4mI3hEOyYjeEE7ICAgIGNvbm5lY3Rvci50eXBlLm1lbWJlckVuZC0+YXQoaW5kZXgpJiN4RDsmI3hBO2VuZGlmIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJkZWZpbmluZ0VuZCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9Qcm9wZXJ0eSIgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiIGRlcml2ZWQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIGRlcml2ZWQgcHJvcGVydHkgcmVmZXJlbmNpbmcgdGhlIGNvcnJlc3BvbmRpbmcgZW5kIG9uIHRoZSBBc3NvY2lhdGlvbiB3aGljaCB0eXBlcyB0aGUgQ29ubmVjdG9yIG93aW5nIHRoaXMgQ29ubmVjdG9yRW5kLCBpZiBhbnkuIEl0IGlzIGRlcml2ZWQgYnkgc2VsZWN0aW5nIHRoZSBlbmQgYXQgdGhlIHNhbWUgcGxhY2UgaW4gdGhlIG9yZGVyaW5nIG9mIEFzc29jaWF0aW9uIGVuZHMgYXMgdGhpcyBDb25uZWN0b3JFbmQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InBhcnRXaXRoUG9ydCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9Qcm9wZXJ0eSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkluZGljYXRlcyB0aGUgcm9sZSBvZiB0aGUgaW50ZXJuYWwgc3RydWN0dXJlIG9mIGEgQ2xhc3NpZmllciB3aXRoIHRoZSBQb3J0IHRvIHdoaWNoIHRoZSBDb25uZWN0b3JFbmQgaXMgYXR0YWNoZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InJvbGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIgorICAgICAgICBlVHlwZT0iIy8vQ29ubmVjdGFibGVFbGVtZW50Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIENvbm5lY3RhYmxlRWxlbWVudCBhdHRhY2hlZCBhdCB0aGlzIENvbm5lY3RvckVuZC4gV2hlbiBhbiBpbnN0YW5jZSBvZiB0aGUgY29udGFpbmluZyBDbGFzc2lmaWVyIGlzIGNyZWF0ZWQsIGEgbGluayBtYXkgKGRlcGVuZGluZyBvbiB0aGUgbXVsdGlwbGljaXRpZXMpIGJlIGNyZWF0ZWQgdG8gYW4gaW5zdGFuY2Ugb2YgdGhlIENsYXNzaWZpZXIgdGhhdCB0eXBlcyB0aGlzIENvbm5lY3RhYmxlRWxlbWVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iTXVsdGlwbGljaXR5RWxlbWVudCIgYWJzdHJhY3Q9InRydWUiCisgICAgICBlU3VwZXJUeXBlcz0iIy8vRWxlbWVudCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBtdWx0aXBsaWNpdHkgaXMgYSBkZWZpbml0aW9uIG9mIGFuIGluY2x1c2l2ZSBpbnRlcnZhbCBvZiBub24tbmVnYXRpdmUgaW50ZWdlcnMgYmVnaW5uaW5nIHdpdGggYSBsb3dlciBib3VuZCBhbmQgZW5kaW5nIHdpdGggYSAocG9zc2libHkgaW5maW5pdGUpIHVwcGVyIGJvdW5kLiBBIE11bHRpcGxpY2l0eUVsZW1lbnQgZW1iZWRzIHRoaXMgaW5mb3JtYXRpb24gdG8gc3BlY2lmeSB0aGUgYWxsb3dhYmxlIGNhcmRpbmFsaXRpZXMgZm9yIGFuIGluc3RhbnRpYXRpb24gb2YgdGhlIEVsZW1lbnQuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InVwcGVyX2dlX2xvd2VyIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0idXBwZXJCb3VuZCgpID49IGxvd2VyQm91bmQoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB1cHBlciBib3VuZCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byB0aGUgbG93ZXIgYm91bmQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJsb3dlcl9nZV8wIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibG93ZXJCb3VuZCgpID49IDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbG93ZXIgYm91bmQgbXVzdCBiZSBhIG5vbi1uZWdhdGl2ZSBpbnRlZ2VyIGxpdGVyYWwuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJ2YWx1ZV9zcGVjaWZpY2F0aW9uX25vX3NpZGVfZWZmZWN0cyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiBhIG5vbi1saXRlcmFsIFZhbHVlU3BlY2lmaWNhdGlvbiBpcyB1c2VkIGZvciBsb3dlclZhbHVlIG9yIHVwcGVyVmFsdWUsIHRoZW4gZXZhbHVhdGluZyB0aGF0IHNwZWNpZmljYXRpb24gbXVzdCBub3QgaGF2ZSBzaWRlIGVmZmVjdHMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJ2YWx1ZV9zcGVjaWZpY2F0aW9uX2NvbnN0YW50IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIGEgbm9uLWxpdGVyYWwgVmFsdWVTcGVjaWZpY2F0aW9uIGlzIHVzZWQgZm9yIGxvd2VyVmFsdWUgb3IgdXBwZXJWYWx1ZSwgdGhlbiB0aGF0IHNwZWNpZmljYXRpb24gbXVzdCBiZSBhIGNvbnN0YW50IGV4cHJlc3Npb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJsb3dlcl9pc19pbnRlZ2VyIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibG93ZXJWYWx1ZSAmbHQ7PiBudWxsIGltcGxpZXMgbG93ZXJWYWx1ZS5pbnRlZ2VyVmFsdWUoKSAmbHQ7PiBudWxsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgaXQgaXMgbm90IGVtcHR5LCB0aGVuIGxvd2VyVmFsdWUgbXVzdCBoYXZlIGFuIEludGVnZXIgdmFsdWUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJ1cHBlcl9pc191bmxpbWl0ZWROYXR1cmFsIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0idXBwZXJWYWx1ZSAmbHQ7PiBudWxsIGltcGxpZXMgdXBwZXJWYWx1ZS51bmxpbWl0ZWRWYWx1ZSgpICZsdDs+IG51bGwiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiBpdCBpcyBub3QgZW1wdHksIHRoZW4gdXBwZXJWYWx1ZSBtdXN0IGhhdmUgYW4gVW5saW1pdGVkTmF0dXJhbCB2YWx1ZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InNldExvd2VyIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJuZXdMb3dlciIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9JbnRlZ2VyIi8+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ic2V0VXBwZXIiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im5ld1VwcGVyIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1VubGltaXRlZE5hdHVyYWwiLz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjb21wYXRpYmxlV2l0aCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG9wZXJhdGlvbiBjb21wYXRpYmxlV2l0aCB0YWtlcyBhbm90aGVyIG11bHRpcGxpY2l0eSBhcyBpbnB1dC4gSXQgcmV0dXJucyB0cnVlIGlmIHRoZSBvdGhlciBtdWx0aXBsaWNpdHkgaXMgd2lkZXIgdGhhbiwgb3IgdGhlIHNhbWUgYXMsIHNlbGYuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIob3RoZXIubG93ZXJCb3VuZCgpICZsdDs9IHNlbGYubG93ZXJCb3VuZCgpKSBhbmQgKChvdGhlci51cHBlckJvdW5kKCkgPSAqKSBvciAoc2VsZi51cHBlckJvdW5kKCkgJmx0Oz0gb3RoZXIudXBwZXJCb3VuZCgpKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im90aGVyIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL011bHRpcGxpY2l0eUVsZW1lbnQiLz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpbmNsdWRlc011bHRpcGxpY2l0eSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IGluY2x1ZGVzTXVsdGlwbGljaXR5KCkgY2hlY2tzIHdoZXRoZXIgdGhpcyBtdWx0aXBsaWNpdHkgaW5jbHVkZXMgYWxsIHRoZSBjYXJkaW5hbGl0aWVzIGFsbG93ZWQgYnkgdGhlIHNwZWNpZmllZCBtdWx0aXBsaWNpdHkuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIoc2VsZi5sb3dlckJvdW5kKCkgJmx0Oz0gTS5sb3dlckJvdW5kKCkpIGFuZCAoc2VsZi51cHBlckJvdW5kKCkgPj0gTS51cHBlckJvdW5kKCkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJNIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL011bHRpcGxpY2l0eUVsZW1lbnQiLz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpcyIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG9wZXJhdGlvbiBpcyBkZXRlcm1pbmVzIGlmIHRoZSB1cHBlciBhbmQgbG93ZXIgYm91bmQgb2YgdGhlIHJhbmdlcyBhcmUgdGhlIG9uZXMgZ2l2ZW4uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJsb3dlcmJvdW5kID0gc2VsZi5sb3dlckJvdW5kKCkgYW5kIHVwcGVyYm91bmQgPSBzZWxmLnVwcGVyQm91bmQoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibG93ZXJib3VuZCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9JbnRlZ2VyIi8+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0idXBwZXJib3VuZCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9VbmxpbWl0ZWROYXR1cmFsIi8+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNNdWx0aXZhbHVlZCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IGlzTXVsdGl2YWx1ZWQoKSBjaGVja3Mgd2hldGhlciB0aGlzIG11bHRpcGxpY2l0eSBoYXMgYW4gdXBwZXIgYm91bmQgZ3JlYXRlciB0aGFuIG9uZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InVwcGVyQm91bmQoKSA+IDEiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldExvd2VyIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0ludGVnZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgZGVyaXZlZCBsb3dlciBhdHRyaWJ1dGUgbXVzdCBlcXVhbCB0aGUgbG93ZXJCb3VuZC4iLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9Im9yaWdpbmFsTmFtZSIgdmFsdWU9Imxvd2VyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJsb3dlckJvdW5kKCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Imxvd2VyQm91bmQiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vSW50ZWdlciI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBsb3dlckJvdW5kKCkgcmV0dXJucyB0aGUgbG93ZXIgYm91bmQgb2YgdGhlIG11bHRpcGxpY2l0eSBhcyBhbiBpbnRlZ2VyLCB3aGljaCBpcyB0aGUgaW50ZWdlclZhbHVlIG9mIGxvd2VyVmFsdWUsIGlmIHRoaXMgaXMgZ2l2ZW4sIGFuZCAxIG90aGVyd2lzZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlmIChsb3dlclZhbHVlPW51bGwgb3IgbG93ZXJWYWx1ZS5pbnRlZ2VyVmFsdWUoKT1udWxsKSB0aGVuIDEgZWxzZSBsb3dlclZhbHVlLmludGVnZXJWYWx1ZSgpIGVuZGlmIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRVcHBlciIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9VbmxpbWl0ZWROYXR1cmFsIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGRlcml2ZWQgdXBwZXIgYXR0cmlidXRlIG11c3QgZXF1YWwgdGhlIHVwcGVyQm91bmQuIi8+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJvcmlnaW5hbE5hbWUiIHZhbHVlPSJ1cHBlciIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0idXBwZXJCb3VuZCgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJ1cHBlckJvdW5kIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1VubGltaXRlZE5hdHVyYWwiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgdXBwZXJCb3VuZCgpIHJldHVybnMgdGhlIHVwcGVyIGJvdW5kIG9mIHRoZSBtdWx0aXBsaWNpdHkgZm9yIGEgYm91bmRlZCBtdWx0aXBsaWNpdHkgYXMgYW4gdW5saW1pdGVkIG5hdHVyYWwsIHdoaWNoIGlzIHRoZSB1bmxpbWl0ZWROYXR1cmFsVmFsdWUgb2YgdXBwZXJWYWx1ZSwgaWYgZ2l2ZW4sIGFuZCAxLCBvdGhlcndpc2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpZiAodXBwZXJWYWx1ZT1udWxsIG9yIHVwcGVyVmFsdWUudW5saW1pdGVkVmFsdWUoKT1udWxsKSB0aGVuIDEgZWxzZSB1cHBlclZhbHVlLnVubGltaXRlZFZhbHVlKCkgZW5kaWYiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImlzT3JkZXJlZCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSJmYWxzZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkZvciBhIG11bHRpdmFsdWVkIG11bHRpcGxpY2l0eSwgdGhpcyBhdHRyaWJ1dGUgc3BlY2lmaWVzIHdoZXRoZXIgdGhlIHZhbHVlcyBpbiBhbiBpbnN0YW50aWF0aW9uIG9mIHRoaXMgTXVsdGlwbGljaXR5RWxlbWVudCBhcmUgc2VxdWVudGlhbGx5IG9yZGVyZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImlzVW5pcXVlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGRlZmF1bHRWYWx1ZUxpdGVyYWw9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJGb3IgYSBtdWx0aXZhbHVlZCBtdWx0aXBsaWNpdHksIHRoaXMgYXR0cmlidXRlcyBzcGVjaWZpZXMgd2hldGhlciB0aGUgdmFsdWVzIGluIGFuIGluc3RhbnRpYXRpb24gb2YgdGhpcyBNdWx0aXBsaWNpdHlFbGVtZW50IGFyZSB1bmlxdWUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9Imxvd2VyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0ludGVnZXIiIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiCisgICAgICAgIGRlZmF1bHRWYWx1ZUxpdGVyYWw9IjEiIGRlcml2ZWQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbG93ZXIgYm91bmQgb2YgdGhlIG11bHRpcGxpY2l0eSBpbnRlcnZhbC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ibG93ZXJWYWx1ZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9WYWx1ZVNwZWNpZmljYXRpb24iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHNwZWNpZmljYXRpb24gb2YgdGhlIGxvd2VyIGJvdW5kIGZvciB0aGlzIG11bHRpcGxpY2l0eS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJ1cHBlciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9VbmxpbWl0ZWROYXR1cmFsIiB2b2xhdGlsZT0idHJ1ZSIKKyAgICAgICAgdHJhbnNpZW50PSJ0cnVlIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSIxIiBkZXJpdmVkPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHVwcGVyIGJvdW5kIG9mIHRoZSBtdWx0aXBsaWNpdHkgaW50ZXJ2YWwuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InVwcGVyVmFsdWUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vVmFsdWVTcGVjaWZpY2F0aW9uIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBzcGVjaWZpY2F0aW9uIG9mIHRoZSB1cHBlciBib3VuZCBmb3IgdGhpcyBtdWx0aXBsaWNpdHkuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iVmFsdWVTcGVjaWZpY2F0aW9uIiBhYnN0cmFjdD0idHJ1ZSIKKyAgICAgIGVTdXBlclR5cGVzPSIjLy9QYWNrYWdlYWJsZUVsZW1lbnQgIy8vVHlwZWRFbGVtZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFZhbHVlU3BlY2lmaWNhdGlvbiBpcyB0aGUgc3BlY2lmaWNhdGlvbiBvZiBhIChwb3NzaWJseSBlbXB0eSkgc2V0IG9mIHZhbHVlcy4gQSBWYWx1ZVNwZWNpZmljYXRpb24gaXMgYSBQYXJhbWV0ZXJhYmxlRWxlbWVudCB0aGF0IG1heSBiZSBleHBvc2VkIGFzIGEgZm9ybWFsIFRlbXBsYXRlUGFyYW1ldGVyIGFuZCBwcm92aWRlZCBhcyB0aGUgYWN0dWFsIHBhcmFtZXRlciBpbiB0aGUgYmluZGluZyBvZiBhIHRlbXBsYXRlLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJkdXBsaWNhdGVzIj4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgbmFtZT0iaXNDb21wYXRpYmxlV2l0aCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IGlzQ29tcGF0aWJsZVdpdGgoKSBkZXRlcm1pbmVzIGlmIHRoaXMgVmFsdWVTcGVjaWZpY2F0aW9uIGlzIGNvbXBhdGlibGUgd2l0aCB0aGUgc3BlY2lmaWVkIFBhcmFtZXRlcmFibGVFbGVtZW50LiBUaGlzIFZhbHVlU3BlY2lmaWNhdGlvbiBpcyBjb21wYXRpYmxlIHdpdGggUGFyYW1ldGVyYWJsZUVsZW1lbnQgcCBpZiB0aGUga2luZCBvZiB0aGlzIFZhbHVlU3BlY2lmaWNhdGlvbiBpcyB0aGUgc2FtZSBhcyBvciBhIHN1YnR5cGUgb2YgdGhlIGtpbmQgb2YgcC4gRnVydGhlciwgaWYgcCBpcyBhIFR5cGVkRWxlbWVudCwgdGhlbiB0aGUgdHlwZSBvZiB0aGlzIFZhbHVlU3BlY2lmaWNhdGlvbiBtdXN0IGJlIGNvbmZvcm1hbnQgd2l0aCB0aGUgdHlwZSBvZiBwLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vUGFyYW1ldGVyYWJsZUVsZW1lbnQvaXNDb21wYXRpYmxlV2l0aCIvPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzZWxmLm9jbElzS2luZE9mKHAub2NsVHlwZSgpKSBhbmQgKHAub2NsSXNLaW5kT2YoVHlwZWRFbGVtZW50KSBpbXBsaWVzICYjeEQ7JiN4QTtzZWxmLnR5cGUuY29uZm9ybXNUbyhwLm9jbEFzVHlwZShUeXBlZEVsZW1lbnQpLnR5cGUpKSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InAiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUGFyYW1ldGVyYWJsZUVsZW1lbnQiLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImJvb2xlYW5WYWx1ZSIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IGJvb2xlYW5WYWx1ZSgpIGdpdmVzIGEgc2luZ2xlIEJvb2xlYW4gdmFsdWUgd2hlbiBvbmUgY2FuIGJlIGNvbXB1dGVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibnVsbCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaW50ZWdlclZhbHVlIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0ludGVnZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgaW50ZWdlclZhbHVlKCkgZ2l2ZXMgYSBzaW5nbGUgSW50ZWdlciB2YWx1ZSB3aGVuIG9uZSBjYW4gYmUgY29tcHV0ZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJudWxsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc0NvbXB1dGFibGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBpc0NvbXB1dGFibGUoKSBkZXRlcm1pbmVzIHdoZXRoZXIgYSB2YWx1ZSBzcGVjaWZpY2F0aW9uIGNhbiBiZSBjb21wdXRlZCBpbiBhIG1vZGVsLiBUaGlzIG9wZXJhdGlvbiBjYW5ub3QgYmUgZnVsbHkgZGVmaW5lZCBpbiBPQ0wuIEEgY29uZm9ybWluZyBpbXBsZW1lbnRhdGlvbiBpcyBleHBlY3RlZCB0byBkZWxpdmVyIHRydWUgZm9yIHRoaXMgb3BlcmF0aW9uIGZvciBhbGwgVmFsdWVTcGVjaWZpY2F0aW9ucyB0aGF0IGl0IGNhbiBjb21wdXRlLCBhbmQgdG8gY29tcHV0ZSBhbGwgb2YgdGhvc2UgZm9yIHdoaWNoIHRoZSBvcGVyYXRpb24gaXMgdHJ1ZS4gQSBjb25mb3JtaW5nIGltcGxlbWVudGF0aW9uIGlzIGV4cGVjdGVkIHRvIGJlIGFibGUgdG8gY29tcHV0ZSBhdCBsZWFzdCB0aGUgdmFsdWUgb2YgYWxsIExpdGVyYWxTcGVjaWZpY2F0aW9ucy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc051bGwiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBpc051bGwoKSByZXR1cm5zIHRydWUgd2hlbiBpdCBjYW4gYmUgY29tcHV0ZWQgdGhhdCB0aGUgdmFsdWUgaXMgbnVsbC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJyZWFsVmFsdWUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vUmVhbCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSByZWFsVmFsdWUoKSBnaXZlcyBhIHNpbmdsZSBSZWFsIHZhbHVlIHdoZW4gb25lIGNhbiBiZSBjb21wdXRlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im51bGwiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InN0cmluZ1ZhbHVlIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBzdHJpbmdWYWx1ZSgpIGdpdmVzIGEgc2luZ2xlIFN0cmluZyB2YWx1ZSB3aGVuIG9uZSBjYW4gYmUgY29tcHV0ZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJudWxsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJ1bmxpbWl0ZWRWYWx1ZSIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9VbmxpbWl0ZWROYXR1cmFsIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IHVubGltaXRlZFZhbHVlKCkgZ2l2ZXMgYSBzaW5nbGUgVW5saW1pdGVkTmF0dXJhbCB2YWx1ZSB3aGVuIG9uZSBjYW4gYmUgY29tcHV0ZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJudWxsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb25uZWN0YWJsZUVsZW1lbnRUZW1wbGF0ZVBhcmFtZXRlciIKKyAgICAgIGVTdXBlclR5cGVzPSIjLy9UZW1wbGF0ZVBhcmFtZXRlciI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBDb25uZWN0YWJsZUVsZW1lbnRUZW1wbGF0ZVBhcmFtZXRlciBleHBvc2VzIGEgQ29ubmVjdGFibGVFbGVtZW50IGFzIGEgZm9ybWFsIHBhcmFtZXRlciBmb3IgYSB0ZW1wbGF0ZS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iZHVwbGljYXRlcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icGFyYW1ldGVyZWRFbGVtZW50Ij4KKyAgICAgICAgPGRldGFpbHMga2V5PSJlVHlwZSIgdmFsdWU9InVtbDo6Q29ubmVjdGFibGVFbGVtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icGFyYW1ldGVyZWRFbGVtZW50IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUGFyYW1ldGVyYWJsZUVsZW1lbnQiIGVPcHBvc2l0ZT0iIy8vQ29ubmVjdGFibGVFbGVtZW50LyVkdXBsaWNhdGVzJS90ZW1wbGF0ZVBhcmFtZXRlciI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgQ29ubmVjdGFibGVFbGVtZW50IGZvciB0aGlzIENvbm5lY3RhYmxlRWxlbWVudFRlbXBsYXRlUGFyYW1ldGVyLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vVGVtcGxhdGVQYXJhbWV0ZXIvcGFyYW1ldGVyZWRFbGVtZW50Ii8+CisgICAgICA8L2NvbnRlbnRzPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJEZXBsb3ltZW50VGFyZ2V0IiBhYnN0cmFjdD0idHJ1ZSIgZVN1cGVyVHlwZXM9IiMvL05hbWVkRWxlbWVudCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBkZXBsb3ltZW50IHRhcmdldCBpcyB0aGUgbG9jYXRpb24gZm9yIGEgZGVwbG95ZWQgYXJ0aWZhY3QuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldERlcGxveWVkRWxlbWVudHMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1BhY2thZ2VhYmxlRWxlbWVudCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkRlcml2YXRpb24gZm9yIERlcGxveW1lbnRUYXJnZXQ6Oi9kZXBsb3llZEVsZW1lbnQiLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9Im9yaWdpbmFsTmFtZSIgdmFsdWU9ImRlcGxveWVkRWxlbWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iZGVwbG95bWVudC5kZXBsb3llZEFydGlmYWN0LT5zZWxlY3Qob2NsSXNLaW5kT2YoQXJ0aWZhY3QpKS0+Y29sbGVjdChvY2xBc1R5cGUoQXJ0aWZhY3QpLm1hbmlmZXN0YXRpb24pLT5jb2xsZWN0KHV0aWxpemVkRWxlbWVudCktPmFzU2V0KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImRlcGxveWVkRWxlbWVudCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUGFja2FnZWFibGVFbGVtZW50IiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiCisgICAgICAgIHRyYW5zaWVudD0idHJ1ZSIgZGVyaXZlZD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBzZXQgb2YgZWxlbWVudHMgdGhhdCBhcmUgbWFuaWZlc3RlZCBpbiBhbiBBcnRpZmFjdCB0aGF0IGlzIGludm9sdmVkIGluIERlcGxveW1lbnQgdG8gYSBEZXBsb3ltZW50VGFyZ2V0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJkZXBsb3ltZW50IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9EZXBsb3ltZW50IiBjb250YWlubWVudD0idHJ1ZSIgZU9wcG9zaXRlPSIjLy9EZXBsb3ltZW50L2xvY2F0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHNldCBvZiBEZXBsb3ltZW50cyBmb3IgYSBEZXBsb3ltZW50VGFyZ2V0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkRlcGxveW1lbnQiIGVTdXBlclR5cGVzPSIjLy9EZXBlbmRlbmN5Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIGRlcGxveW1lbnQgaXMgdGhlIGFsbG9jYXRpb24gb2YgYW4gYXJ0aWZhY3Qgb3IgYXJ0aWZhY3QgaW5zdGFuY2UgdG8gYSBkZXBsb3ltZW50IHRhcmdldC4mI3hBO0EgY29tcG9uZW50IGRlcGxveW1lbnQgaXMgdGhlIGRlcGxveW1lbnQgb2Ygb25lIG9yIG1vcmUgYXJ0aWZhY3RzIG9yIGFydGlmYWN0IGluc3RhbmNlcyB0byBhIGRlcGxveW1lbnQgdGFyZ2V0LCBvcHRpb25hbGx5IHBhcmFtZXRlcml6ZWQgYnkgYSBkZXBsb3ltZW50IHNwZWNpZmljYXRpb24uIEV4YW1wbGVzIGFyZSBleGVjdXRhYmxlcyBhbmQgY29uZmlndXJhdGlvbiBmaWxlcy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iY29uZmlndXJhdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vRGVwbG95bWVudFNwZWNpZmljYXRpb24iIGNvbnRhaW5tZW50PSJ0cnVlIiBlT3Bwb3NpdGU9IiMvL0RlcGxveW1lbnRTcGVjaWZpY2F0aW9uL2RlcGxveW1lbnQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc3BlY2lmaWNhdGlvbiBvZiBwcm9wZXJ0aWVzIHRoYXQgcGFyYW1ldGVyaXplIHRoZSBkZXBsb3ltZW50IGFuZCBleGVjdXRpb24gb2Ygb25lIG9yIG1vcmUgQXJ0aWZhY3RzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImRlcGxveWVkQXJ0aWZhY3QiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0RlcGxveWVkQXJ0aWZhY3QiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgQXJ0aWZhY3RzIHRoYXQgYXJlIGRlcGxveWVkIG9udG8gYSBOb2RlLiBUaGlzIGFzc29jaWF0aW9uIHNwZWNpYWxpemVzIHRoZSBzdXBwbGllciBhc3NvY2lhdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0RlcGVuZGVuY3kvc3VwcGxpZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImxvY2F0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0RlcGxveW1lbnRUYXJnZXQiIGVPcHBvc2l0ZT0iIy8vRGVwbG95bWVudFRhcmdldC9kZXBsb3ltZW50Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIERlcGxveWVkVGFyZ2V0IHdoaWNoIGlzIHRoZSB0YXJnZXQgb2YgYSBEZXBsb3ltZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRGVwZW5kZW5jeS9jbGllbnQgIy8vRWxlbWVudC9vd25lciIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRGVwZW5kZW5jeSIgZVN1cGVyVHlwZXM9IiMvL1BhY2thZ2VhYmxlRWxlbWVudCAjLy9EaXJlY3RlZFJlbGF0aW9uc2hpcCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBEZXBlbmRlbmN5IGlzIGEgUmVsYXRpb25zaGlwIHRoYXQgc2lnbmlmaWVzIHRoYXQgYSBzaW5nbGUgbW9kZWwgRWxlbWVudCBvciBhIHNldCBvZiBtb2RlbCBFbGVtZW50cyByZXF1aXJlcyBvdGhlciBtb2RlbCBFbGVtZW50cyBmb3IgdGhlaXIgc3BlY2lmaWNhdGlvbiBvciBpbXBsZW1lbnRhdGlvbi4gVGhpcyBtZWFucyB0aGF0IHRoZSBjb21wbGV0ZSBzZW1hbnRpY3Mgb2YgdGhlIGNsaWVudCBFbGVtZW50KHMpIGFyZSBlaXRoZXIgc2VtYW50aWNhbGx5IG9yIHN0cnVjdHVyYWxseSBkZXBlbmRlbnQgb24gdGhlIGRlZmluaXRpb24gb2YgdGhlIHN1cHBsaWVyIEVsZW1lbnQocykuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImNsaWVudCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vTmFtZWRFbGVtZW50Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIEVsZW1lbnQocykgZGVwZW5kZW50IG9uIHRoZSBzdXBwbGllciBFbGVtZW50KHMpLiBJbiBzb21lIGNhc2VzIChzdWNoIGFzIGEgdHJhY2UgQWJzdHJhY3Rpb24pIHRoZSBhc3NpZ25tZW50IG9mIGRpcmVjdGlvbiAodGhhdCBpcywgdGhlIGRlc2lnbmF0aW9uIG9mIHRoZSBjbGllbnQgRWxlbWVudCkgaXMgYXQgdGhlIGRpc2NyZXRpb24gb2YgdGhlIG1vZGVsZXIgYW5kIGlzIGEgc3RpcHVsYXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9EaXJlY3RlZFJlbGF0aW9uc2hpcC9zb3VyY2UiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InN1cHBsaWVyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9OYW1lZEVsZW1lbnQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgRWxlbWVudChzKSBvbiB3aGljaCB0aGUgY2xpZW50IEVsZW1lbnQocykgZGVwZW5kIGluIHNvbWUgcmVzcGVjdC4gVGhlIG1vZGVsZXIgbWF5IHN0aXB1bGF0ZSBhIHNlbnNlIG9mIERlcGVuZGVuY3kgZGlyZWN0aW9uIHN1aXRhYmxlIGZvciB0aGVpciBkb21haW4uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9EaXJlY3RlZFJlbGF0aW9uc2hpcC90YXJnZXQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkRlcGxveW1lbnRTcGVjaWZpY2F0aW9uIiBlU3VwZXJUeXBlcz0iIy8vQXJ0aWZhY3QiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgZGVwbG95bWVudCBzcGVjaWZpY2F0aW9uIHNwZWNpZmllcyBhIHNldCBvZiBwcm9wZXJ0aWVzIHRoYXQgZGV0ZXJtaW5lIGV4ZWN1dGlvbiBwYXJhbWV0ZXJzIG9mIGEgY29tcG9uZW50IGFydGlmYWN0IHRoYXQgaXMgZGVwbG95ZWQgb24gYSBub2RlLiBBIGRlcGxveW1lbnQgc3BlY2lmaWNhdGlvbiBjYW4gYmUgYWltZWQgYXQgYSBzcGVjaWZpYyB0eXBlIG9mIGNvbnRhaW5lci4gQW4gYXJ0aWZhY3QgdGhhdCByZWlmaWVzIG9yIGltcGxlbWVudHMgZGVwbG95bWVudCBzcGVjaWZpY2F0aW9uIHByb3BlcnRpZXMgaXMgYSBkZXBsb3ltZW50IGRlc2NyaXB0b3IuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImRlcGxveW1lbnRfdGFyZ2V0IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iZGVwbG95bWVudC0+Zm9yQWxsIChsb2NhdGlvbi5vY2xJc0tpbmRPZihFeGVjdXRpb25FbnZpcm9ubWVudCkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIERlcGxveW1lbnRUYXJnZXQgb2YgYSBEZXBsb3ltZW50U3BlY2lmaWNhdGlvbiBpcyBhIGtpbmQgb2YgRXhlY3V0aW9uRW52aXJvbm1lbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJkZXBsb3llZF9lbGVtZW50cyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImRlcGxveW1lbnQtPmZvckFsbCAobG9jYXRpb24uZGVwbG95ZWRFbGVtZW50LT5mb3JBbGwgKG9jbElzS2luZE9mKENvbXBvbmVudCkpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBkZXBsb3llZEVsZW1lbnRzIG9mIGEgRGVwbG95bWVudFRhcmdldCB0aGF0IGFyZSBpbnZvbHZlZCBpbiBhIERlcGxveW1lbnQgdGhhdCBoYXMgYW4gYXNzb2NpYXRlZCBEZXBsb3ltZW50LVNwZWNpZmljYXRpb24gaXMgYSBraW5kIG9mIENvbXBvbmVudCAoaS5lLiwgdGhlIGNvbmZpZ3VyZWQgY29tcG9uZW50cykuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJkZXBsb3ltZW50TG9jYXRpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIiB1bnNldHRhYmxlPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGxvY2F0aW9uIHdoZXJlIGFuIEFydGlmYWN0IGlzIGRlcGxveWVkIG9udG8gYSBOb2RlLiBUaGlzIGlzIHR5cGljYWxseSBhICdkaXJlY3RvcnknIG9yICdtZW1vcnkgYWRkcmVzcy4nIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImV4ZWN1dGlvbkxvY2F0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyIgdW5zZXR0YWJsZT0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBsb2NhdGlvbiB3aGVyZSBhIGNvbXBvbmVudCBBcnRpZmFjdCBleGVjdXRlcy4gVGhpcyBtYXkgYmUgYSBsb2NhbCBvciByZW1vdGUgbG9jYXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImRlcGxveW1lbnQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vRGVwbG95bWVudCIgZU9wcG9zaXRlPSIjLy9EZXBsb3ltZW50L2NvbmZpZ3VyYXRpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgZGVwbG95bWVudCB3aXRoIHdoaWNoIHRoZSBEZXBsb3ltZW50U3BlY2lmaWNhdGlvbiBpcyBhc3NvY2lhdGVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lciIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQXJ0aWZhY3QiIGVTdXBlclR5cGVzPSIjLy9DbGFzc2lmaWVyICMvL0RlcGxveWVkQXJ0aWZhY3QiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIGFydGlmYWN0IGlzIHRoZSBzcGVjaWZpY2F0aW9uIG9mIGEgcGh5c2ljYWwgcGllY2Ugb2YgaW5mb3JtYXRpb24gdGhhdCBpcyB1c2VkIG9yIHByb2R1Y2VkIGJ5IGEgc29mdHdhcmUgZGV2ZWxvcG1lbnQgcHJvY2Vzcywgb3IgYnkgZGVwbG95bWVudCBhbmQgb3BlcmF0aW9uIG9mIGEgc3lzdGVtLiBFeGFtcGxlcyBvZiBhcnRpZmFjdHMgaW5jbHVkZSBtb2RlbCBmaWxlcywgc291cmNlIGZpbGVzLCBzY3JpcHRzLCBhbmQgYmluYXJ5IGV4ZWN1dGFibGUgZmlsZXMsIGEgdGFibGUgaW4gYSBkYXRhYmFzZSBzeXN0ZW0sIGEgZGV2ZWxvcG1lbnQgZGVsaXZlcmFibGUsIG9yIGEgd29yZC1wcm9jZXNzaW5nIGRvY3VtZW50LCBhIG1haWwgbWVzc2FnZS4mI3hBO0FuIGFydGlmYWN0IGlzIHRoZSBzb3VyY2Ugb2YgYSBkZXBsb3ltZW50IHRvIGEgbm9kZS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY3JlYXRlT3duZWRBdHRyaWJ1dGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUHJvcGVydHkiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJDcmVhdGVzIGEgcHJvcGVydHkgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUsIHR5cGUsIGxvd2VyIGJvdW5kLCBhbmQgdXBwZXIgYm91bmQgYXMgYW4gb3duZWQgYXR0cmlidXRlIG9mIHRoaXMgYXJ0aWZhY3QuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJuYW1lIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbmFtZSBmb3IgdGhlIG5ldyBhdHRyaWJ1dGUsIG9yIG51bGwuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJ0eXBlIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9IiMvL1R5cGUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHR5cGUgZm9yIHRoZSBuZXcgYXR0cmlidXRlLCBvciBudWxsLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibG93ZXIiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vSW50ZWdlciI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbG93ZXIgYm91bmQgZm9yIHRoZSBuZXcgYXR0cmlidXRlLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0idXBwZXIiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vVW5saW1pdGVkTmF0dXJhbCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgdXBwZXIgYm91bmQgZm9yIHRoZSBuZXcgYXR0cmlidXRlLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY3JlYXRlT3duZWRPcGVyYXRpb24iIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vT3BlcmF0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQ3JlYXRlcyBhbiBvcGVyYXRpb24gd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUsIHBhcmFtZXRlciBuYW1lcywgcGFyYW1ldGVyIHR5cGVzLCBhbmQgcmV0dXJuIHR5cGUgKG9yIG51bGwpIGFzIGFuIG93bmVkIG9wZXJhdGlvbiBvZiB0aGlzIGFydGlmYWN0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibmFtZSIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG5hbWUgZm9yIHRoZSBuZXcgb3BlcmF0aW9uLCBvciBudWxsLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icGFyYW1ldGVyTmFtZXMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcGFyYW1ldGVyIG5hbWVzIGZvciAgdGhlIG5ldyBvcGVyYXRpb24sIG9yIG51bGwuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJwYXJhbWV0ZXJUeXBlcyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vVHlwZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcGFyYW1ldGVyIHR5cGVzIGZvciB0aGUgbmV3IG9wZXJhdGlvbiwgb3IgbnVsbC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InJldHVyblR5cGUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iIy8vVHlwZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcmV0dXJuIHR5cGUgZm9yIHRoZSBuZXcgb3BlcmF0aW9uLCBvciBudWxsLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iZmlsZU5hbWUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIiB1bnNldHRhYmxlPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBjb25jcmV0ZSBuYW1lIHRoYXQgaXMgdXNlZCB0byByZWZlciB0byB0aGUgQXJ0aWZhY3QgaW4gYSBwaHlzaWNhbCBjb250ZXh0LiBFeGFtcGxlOiBmaWxlIHN5c3RlbSBuYW1lLCB1bml2ZXJzYWwgcmVzb3VyY2UgbG9jYXRvci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ibWFuaWZlc3RhdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vTWFuaWZlc3RhdGlvbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc2V0IG9mIG1vZGVsIGVsZW1lbnRzIHRoYXQgYXJlIG1hbmlmZXN0ZWQgaW4gdGhlIEFydGlmYWN0LiBUaGF0IGlzLCB0aGVzZSBtb2RlbCBlbGVtZW50cyBhcmUgdXRpbGl6ZWQgaW4gdGhlIGNvbnN0cnVjdGlvbiAob3IgZ2VuZXJhdGlvbikgb2YgdGhlIGFydGlmYWN0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im5lc3RlZEFydGlmYWN0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9BcnRpZmFjdCIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgQXJ0aWZhY3RzIHRoYXQgYXJlIGRlZmluZWQgKG5lc3RlZCkgd2l0aGluIHRoZSBBcnRpZmFjdC4gVGhlIGFzc29jaWF0aW9uIGlzIGEgc3BlY2lhbGl6YXRpb24gb2YgdGhlIG93bmVkTWVtYmVyIGFzc29jaWF0aW9uIGZyb20gTmFtZXNwYWNlIHRvIE5hbWVkRWxlbWVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVzcGFjZS9vd25lZE1lbWJlciIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib3duZWRBdHRyaWJ1dGUiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vUHJvcGVydHkiIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGF0dHJpYnV0ZXMgb3IgYXNzb2NpYXRpb24gZW5kcyBkZWZpbmVkIGZvciB0aGUgQXJ0aWZhY3QuIFRoZSBhc3NvY2lhdGlvbiBpcyBhIHNwZWNpYWxpemF0aW9uIG9mIHRoZSBvd25lZE1lbWJlciBhc3NvY2lhdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0NsYXNzaWZpZXIvYXR0cmlidXRlICMvL05hbWVzcGFjZS9vd25lZE1lbWJlciIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib3duZWRPcGVyYXRpb24iIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vT3BlcmF0aW9uIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBPcGVyYXRpb25zIGRlZmluZWQgZm9yIHRoZSBBcnRpZmFjdC4gVGhlIGFzc29jaWF0aW9uIGlzIGEgc3BlY2lhbGl6YXRpb24gb2YgdGhlIG93bmVkTWVtYmVyIGFzc29jaWF0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQ2xhc3NpZmllci9mZWF0dXJlICMvL05hbWVzcGFjZS9vd25lZE1lbWJlciIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRGVwbG95ZWRBcnRpZmFjdCIgYWJzdHJhY3Q9InRydWUiIGVTdXBlclR5cGVzPSIjLy9OYW1lZEVsZW1lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgZGVwbG95ZWQgYXJ0aWZhY3QgaXMgYW4gYXJ0aWZhY3Qgb3IgYXJ0aWZhY3QgaW5zdGFuY2UgdGhhdCBoYXMgYmVlbiBkZXBsb3llZCB0byBhIGRlcGxveW1lbnQgdGFyZ2V0LiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJNYW5pZmVzdGF0aW9uIiBlU3VwZXJUeXBlcz0iIy8vQWJzdHJhY3Rpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgbWFuaWZlc3RhdGlvbiBpcyB0aGUgY29uY3JldGUgcGh5c2ljYWwgcmVuZGVyaW5nIG9mIG9uZSBvciBtb3JlIG1vZGVsIGVsZW1lbnRzIGJ5IGFuIGFydGlmYWN0LiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJ1dGlsaXplZEVsZW1lbnQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUGFja2FnZWFibGVFbGVtZW50Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG1vZGVsIGVsZW1lbnQgdGhhdCBpcyB1dGlsaXplZCBpbiB0aGUgbWFuaWZlc3RhdGlvbiBpbiBhbiBBcnRpZmFjdC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0RlcGVuZGVuY3kvc3VwcGxpZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkFic3RyYWN0aW9uIiBlU3VwZXJUeXBlcz0iIy8vRGVwZW5kZW5jeSI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gQWJzdHJhY3Rpb24gaXMgYSBSZWxhdGlvbnNoaXAgdGhhdCByZWxhdGVzIHR3byBFbGVtZW50cyBvciBzZXRzIG9mIEVsZW1lbnRzIHRoYXQgcmVwcmVzZW50IHRoZSBzYW1lIGNvbmNlcHQgYXQgZGlmZmVyZW50IGxldmVscyBvZiBhYnN0cmFjdGlvbiBvciBmcm9tIGRpZmZlcmVudCB2aWV3cG9pbnRzLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJtYXBwaW5nIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL09wYXF1ZUV4cHJlc3Npb24iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gT3BhcXVlRXhwcmVzc2lvbiB0aGF0IHN0YXRlcyB0aGUgYWJzdHJhY3Rpb24gcmVsYXRpb25zaGlwIGJldHdlZW4gdGhlIHN1cHBsaWVyKHMpIGFuZCB0aGUgY2xpZW50KHMpLiBJbiBzb21lIGNhc2VzLCBzdWNoIGFzIGRlcml2YXRpb24sIGl0IGlzIHVzdWFsbHkgZm9ybWFsIGFuZCB1bmlkaXJlY3Rpb25hbDsgaW4gb3RoZXIgY2FzZXMsIHN1Y2ggYXMgdHJhY2UsIGl0IGlzIHVzdWFsbHkgaW5mb3JtYWwgYW5kIGJpZGlyZWN0aW9uYWwuIFRoZSBtYXBwaW5nIGV4cHJlc3Npb24gaXMgb3B0aW9uYWwgYW5kIG1heSBiZSBvbWl0dGVkIGlmIHRoZSBwcmVjaXNlIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIHRoZSBFbGVtZW50cyBpcyBub3Qgc3BlY2lmaWVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9wYXF1ZUV4cHJlc3Npb24iIGVTdXBlclR5cGVzPSIjLy9WYWx1ZVNwZWNpZmljYXRpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIE9wYXF1ZUV4cHJlc3Npb24gaXMgYSBWYWx1ZVNwZWNpZmljYXRpb24gdGhhdCBzcGVjaWZpZXMgdGhlIGNvbXB1dGF0aW9uIG9mIGEgY29sbGVjdGlvbiBvZiB2YWx1ZXMgZWl0aGVyIGluIHRlcm1zIG9mIGEgVU1MIEJlaGF2aW9yIG9yIGJhc2VkIG9uIGEgdGV4dHVhbCBzdGF0ZW1lbnQgaW4gYSBsYW5ndWFnZSBvdGhlciB0aGFuIFVNTCIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJkdXBsaWNhdGVzIj4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgbmFtZT0ic3RyaW5nVmFsdWUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9WYWx1ZVNwZWNpZmljYXRpb24vc3RyaW5nVmFsdWUiLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Imxhbmd1YWdlX2JvZHlfc2l6ZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Imxhbmd1YWdlLT5ub3RFbXB0eSgpIGltcGxpZXMgKF8nYm9keSctPnNpemUoKSA9IGxhbmd1YWdlLT5zaXplKCkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgdGhlIGxhbmd1YWdlIGF0dHJpYnV0ZSBpcyBub3QgZW1wdHksIHRoZW4gdGhlIHNpemUgb2YgdGhlIGJvZHkgYW5kIGxhbmd1YWdlIGFycmF5cyBtdXN0IGJlIHRoZSBzYW1lLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ib25lX3JldHVybl9yZXN1bHRfcGFyYW1ldGVyIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iYmVoYXZpb3IgJmx0Oz4gbnVsbCBpbXBsaWVzJiN4RDsmI3hBOyAgIGJlaGF2aW9yLm93bmVkUGFyYW1ldGVyLT5zZWxlY3QoZGlyZWN0aW9uPVBhcmFtZXRlckRpcmVjdGlvbktpbmQ6OnJldHVybiktPnNpemUoKSA9IDEiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgYmVoYXZpb3IgbXVzdCBoYXZlIGV4YWN0bHkgb25lIHJldHVybiByZXN1bHQgcGFyYW1ldGVyLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ib25seV9yZXR1cm5fcmVzdWx0X3BhcmFtZXRlcnMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJiZWhhdmlvciAmbHQ7PiBudWxsIGltcGxpZXMgYmVoYXZpb3Iub3duZWRQYXJhbWV0ZXItPnNlbGVjdChkaXJlY3Rpb24mbHQ7PlBhcmFtZXRlckRpcmVjdGlvbktpbmQ6OnJldHVybiktPmlzRW1wdHkoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBiZWhhdmlvciBtYXkgb25seSBoYXZlIHJldHVybiByZXN1bHQgcGFyYW1ldGVycy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzSW50ZWdyYWwiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBpc0ludGVncmFsKCkgdGVsbHMgd2hldGhlciBhbiBleHByZXNzaW9uIGlzIGludGVuZGVkIHRvIHByb2R1Y2UgYW4gSW50ZWdlci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc05vbk5lZ2F0aXZlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgaXNOb25OZWdhdGl2ZSgpIHRlbGxzIHdoZXRoZXIgYW4gaW50ZWdlciBleHByZXNzaW9uIGhhcyBhIG5vbi1uZWdhdGl2ZSB2YWx1ZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc1Bvc2l0aXZlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgaXNQb3NpdGl2ZSgpIHRlbGxzIHdoZXRoZXIgYW4gaW50ZWdlciBleHByZXNzaW9uIGhhcyBhIHBvc2l0aXZlIHZhbHVlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iZmFsc2UiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldFJlc3VsdCIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSIjLy9QYXJhbWV0ZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJEZXJpdmF0aW9uIGZvciBPcGFxdWVFeHByZXNzaW9uOjovcmVzdWx0Ii8+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJvcmlnaW5hbE5hbWUiIHZhbHVlPSJyZXN1bHQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlmIGJlaGF2aW9yID0gbnVsbCB0aGVuJiN4RDsmI3hBOyYjeDk7bnVsbCYjeEQ7JiN4QTtlbHNlJiN4RDsmI3hBOyYjeDk7YmVoYXZpb3Iub3duZWRQYXJhbWV0ZXItPmZpcnN0KCkmI3hEOyYjeEE7ZW5kaWYiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InZhbHVlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0ludGVnZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgdmFsdWUoKSBnaXZlcyBhbiBpbnRlZ2VyIHZhbHVlIGZvciBhbiBleHByZXNzaW9uIGludGVuZGVkIHRvIHByb2R1Y2Ugb25lLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iYmVoYXZpb3IiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vQmVoYXZpb3IiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgdGhlIGJlaGF2aW9yIG9mIHRoZSBPcGFxdWVFeHByZXNzaW9uIGFzIGEgVU1MIEJlaGF2aW9yLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJib2R5IiB1bmlxdWU9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyIgdW5zZXR0YWJsZT0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgdGV4dHVhbCBkZWZpbml0aW9uIG9mIHRoZSBiZWhhdmlvciBvZiB0aGUgT3BhcXVlRXhwcmVzc2lvbiwgcG9zc2libHkgaW4gbXVsdGlwbGUgbGFuZ3VhZ2VzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovLy9vcmcvZWNsaXBzZS9lbWYvZWNvcmUvdXRpbC9FeHRlbmRlZE1ldGFEYXRhIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJraW5kIiB2YWx1ZT0iZWxlbWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJsYW5ndWFnZSIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciIHVuc2V0dGFibGU9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgdGhlIGxhbmd1YWdlcyB1c2VkIHRvIGV4cHJlc3MgdGhlIHRleHR1YWwgYm9kaWVzIG9mIHRoZSBPcGFxdWVFeHByZXNzaW9uLiAgTGFuZ3VhZ2VzIGFyZSBtYXRjaGVkIHRvIGJvZHkgU3RyaW5ncyBieSBvcmRlci4gVGhlIGludGVycHJldGF0aW9uIG9mIHRoZSBib2R5IGRlcGVuZHMgb24gdGhlIGxhbmd1YWdlcy4gSWYgdGhlIGxhbmd1YWdlcyBhcmUgdW5zcGVjaWZpZWQsIHRoZXkgbWF5IGJlIGltcGxpY2l0IGZyb20gdGhlIGV4cHJlc3Npb24gYm9keSBvciB0aGUgY29udGV4dC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVzdWx0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL1BhcmFtZXRlciIgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiIGRlcml2ZWQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiBhbiBPcGFxdWVFeHByZXNzaW9uIGlzIHNwZWNpZmllZCB1c2luZyBhIFVNTCBCZWhhdmlvciwgdGhlbiB0aGlzIHJlZmVycyB0byB0aGUgc2luZ2xlIHJlcXVpcmVkIHJldHVybiBQYXJhbWV0ZXIgb2YgdGhhdCBCZWhhdmlvci4gV2hlbiB0aGUgQmVoYXZpb3IgY29tcGxldGVzIGV4ZWN1dGlvbiwgdGhlIHZhbHVlcyBvbiB0aGlzIFBhcmFtZXRlciBnaXZlIHRoZSByZXN1bHQgb2YgZXZhbHVhdGluZyB0aGUgT3BhcXVlRXhwcmVzc2lvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUGFyYW1ldGVyIiBlU3VwZXJUeXBlcz0iIy8vQ29ubmVjdGFibGVFbGVtZW50ICMvL011bHRpcGxpY2l0eUVsZW1lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgUGFyYW1ldGVyIGlzIGEgc3BlY2lmaWNhdGlvbiBvZiBhbiBhcmd1bWVudCB1c2VkIHRvIHBhc3MgaW5mb3JtYXRpb24gaW50byBvciBvdXQgb2YgYW4gaW52b2NhdGlvbiBvZiBhIEJlaGF2aW9yYWxGZWF0dXJlLiAgUGFyYW1ldGVycyBjYW4gYmUgdHJlYXRlZCBhcyBDb25uZWN0YWJsZUVsZW1lbnRzIHdpdGhpbiBDb2xsYWJvcmF0aW9ucy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaW5fYW5kX291dCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9IihlZmZlY3QgPSBQYXJhbWV0ZXJFZmZlY3RLaW5kOjpkZWxldGUgaW1wbGllcyAoZGlyZWN0aW9uID0gUGFyYW1ldGVyRGlyZWN0aW9uS2luZDo6Xydpbicgb3IgZGlyZWN0aW9uID0gUGFyYW1ldGVyRGlyZWN0aW9uS2luZDo6aW5vdXQpKSYjeEQ7JiN4QTthbmQmI3hEOyYjeEE7KGVmZmVjdCA9IFBhcmFtZXRlckVmZmVjdEtpbmQ6OmNyZWF0ZSBpbXBsaWVzIChkaXJlY3Rpb24gPSBQYXJhbWV0ZXJEaXJlY3Rpb25LaW5kOjpvdXQgb3IgZGlyZWN0aW9uID0gUGFyYW1ldGVyRGlyZWN0aW9uS2luZDo6aW5vdXQgb3IgZGlyZWN0aW9uID0gUGFyYW1ldGVyRGlyZWN0aW9uS2luZDo6cmV0dXJuKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJPbmx5IGluIGFuZCBpbm91dCBQYXJhbWV0ZXJzIG1heSBoYXZlIGEgZGVsZXRlIGVmZmVjdC4gT25seSBvdXQsIGlub3V0LCBhbmQgcmV0dXJuIFBhcmFtZXRlcnMgbWF5IGhhdmUgYSBjcmVhdGUgZWZmZWN0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibm90X2V4Y2VwdGlvbiIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlzRXhjZXB0aW9uIGltcGxpZXMgKGRpcmVjdGlvbiAmbHQ7PiBQYXJhbWV0ZXJEaXJlY3Rpb25LaW5kOjpfJ2luJyBhbmQgZGlyZWN0aW9uICZsdDs+IFBhcmFtZXRlckRpcmVjdGlvbktpbmQ6Omlub3V0KSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIGlucHV0IFBhcmFtZXRlciBjYW5ub3QgYmUgYW4gZXhjZXB0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY29ubmVjdG9yX2VuZCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImVuZC0+bm90RW1wdHkoKSBpbXBsaWVzIGNvbGxhYm9yYXRpb24tPm5vdEVtcHR5KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFBhcmFtZXRlciBtYXkgb25seSBiZSBhc3NvY2lhdGVkIHdpdGggYSBDb25uZWN0b3IgZW5kIHdpdGhpbiB0aGUgY29udGV4dCBvZiBhIENvbGxhYm9yYXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJyZWVudHJhbnRfYmVoYXZpb3JzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iKGlzU3RyZWFtIGFuZCBiZWhhdmlvciAmbHQ7PiBudWxsKSBpbXBsaWVzIG5vdCBiZWhhdmlvci5pc1JlZW50cmFudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJlZW50cmFudCBiZWhhdmlvcnMgY2Fubm90IGhhdmUgc3RyZWFtIFBhcmFtZXRlcnMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzdHJlYW1fYW5kX2V4Y2VwdGlvbiIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im5vdCAoaXNFeGNlcHRpb24gYW5kIGlzU3RyZWFtKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgUGFyYW1ldGVyIGNhbm5vdCBiZSBhIHN0cmVhbSBhbmQgZXhjZXB0aW9uIGF0IHRoZSBzYW1lIHRpbWUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJvYmplY3RfZWZmZWN0IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iKHR5cGUub2NsSXNLaW5kT2YoRGF0YVR5cGUpKSBpbXBsaWVzIChlZmZlY3QgPSBudWxsKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlBhcmFtZXRlcnMgdHlwZWQgYnkgRGF0YVR5cGVzIGNhbm5vdCBoYXZlIGFuIGVmZmVjdC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzU2V0RGVmYXVsdCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InNldEJvb2xlYW5EZWZhdWx0VmFsdWUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iU2V0cyB0aGUgZGVmYXVsdCB2YWx1ZSBmb3IgdGhpcyBwYXJhbWV0ZXIgdG8gdGhlIHNwZWNpZmllZCBCb29sZWFuIHZhbHVlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0idmFsdWUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbmV3IGRlZmF1bHQgdmFsdWUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzZXREZWZhdWx0IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJuZXdEZWZhdWx0IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyIvPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InNldEludGVnZXJEZWZhdWx0VmFsdWUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iU2V0cyB0aGUgZGVmYXVsdCB2YWx1ZSBmb3IgdGhpcyBwYXJhbWV0ZXIgdG8gdGhlIHNwZWNpZmllZCBpbnRlZ2VyIHZhbHVlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0idmFsdWUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vSW50ZWdlciI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbmV3IGRlZmF1bHQgdmFsdWUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzZXROdWxsRGVmYXVsdFZhbHVlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNldHMgdGhlIGRlZmF1bHQgdmFsdWUgZm9yIHRoaXMgcGFyYW1ldGVyIHRvIHRoZSBudWxsIHZhbHVlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ic2V0UmVhbERlZmF1bHRWYWx1ZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTZXRzIHRoZSBkZWZhdWx0IHZhbHVlIGZvciB0aGlzIHBhcmFtZXRlciB0byB0aGUgc3BlY2lmaWVkIHJlYWwgdmFsdWUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJ2YWx1ZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9SZWFsIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBuZXcgZGVmYXVsdCB2YWx1ZS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InNldFN0cmluZ0RlZmF1bHRWYWx1ZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTZXRzIHRoZSBkZWZhdWx0IHZhbHVlIGZvciB0aGlzIHBhcmFtZXRlciB0byB0aGUgc3BlY2lmaWVkIHN0cmluZyB2YWx1ZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InZhbHVlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbmV3IGRlZmF1bHQgdmFsdWUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzZXRVbmxpbWl0ZWROYXR1cmFsRGVmYXVsdFZhbHVlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNldHMgdGhlIGRlZmF1bHQgdmFsdWUgZm9yIHRoaXMgcGFyYW1ldGVyIHRvIHRoZSBzcGVjaWZpZWQgdW5saW1pdGVkIG5hdHVyYWwgdmFsdWUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJ2YWx1ZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9VbmxpbWl0ZWROYXR1cmFsIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBuZXcgZGVmYXVsdCB2YWx1ZS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InVuc2V0RGVmYXVsdCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9InN1cHByZXNzZWRWaXNpYmlsaXR5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0RGVmYXVsdCIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJEZXJpdmF0aW9uIGZvciBQYXJhbWV0ZXI6Oi9kZWZhdWx0Ii8+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJvcmlnaW5hbE5hbWUiIHZhbHVlPSJkZWZhdWx0Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpZiBzZWxmLnR5cGUgPSBTdHJpbmcgdGhlbiBkZWZhdWx0VmFsdWUuc3RyaW5nVmFsdWUoKSBlbHNlIG51bGwgZW5kaWYiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImRlZmF1bHQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIiB2b2xhdGlsZT0idHJ1ZSIgdHJhbnNpZW50PSJ0cnVlIgorICAgICAgICB1bnNldHRhYmxlPSJ0cnVlIiBkZXJpdmVkPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBTdHJpbmcgdGhhdCByZXByZXNlbnRzIGEgdmFsdWUgdG8gYmUgdXNlZCB3aGVuIG5vIGFyZ3VtZW50IGlzIHN1cHBsaWVkIGZvciB0aGUgUGFyYW1ldGVyLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJkZWZhdWx0VmFsdWUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vVmFsdWVTcGVjaWZpY2F0aW9uIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNwZWNpZmllcyBhIFZhbHVlU3BlY2lmaWNhdGlvbiB0aGF0IHJlcHJlc2VudHMgYSB2YWx1ZSB0byBiZSB1c2VkIHdoZW4gbm8gYXJndW1lbnQgaXMgc3VwcGxpZWQgZm9yIHRoZSBQYXJhbWV0ZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iZGlyZWN0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1BhcmFtZXRlckRpcmVjdGlvbktpbmQiIGRlZmF1bHRWYWx1ZUxpdGVyYWw9ImluIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSW5kaWNhdGVzIHdoZXRoZXIgYSBwYXJhbWV0ZXIgaXMgYmVpbmcgc2VudCBpbnRvIG9yIG91dCBvZiBhIGJlaGF2aW9yYWwgZWxlbWVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iZWZmZWN0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL1BhcmFtZXRlckVmZmVjdEtpbmQiIHVuc2V0dGFibGU9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgdGhlIGVmZmVjdCB0aGF0IGV4ZWN1dGlvbnMgb2YgdGhlIG93bmVyIG9mIHRoZSBQYXJhbWV0ZXIgaGF2ZSBvbiBvYmplY3RzIHBhc3NlZCBpbiBvciBvdXQgb2YgdGhlIHBhcmFtZXRlci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNFeGNlcHRpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iZmFsc2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUZWxscyB3aGV0aGVyIGFuIG91dHB1dCBwYXJhbWV0ZXIgbWF5IGVtaXQgYSB2YWx1ZSB0byB0aGUgZXhjbHVzaW9uIG9mIHRoZSBvdGhlciBvdXRwdXRzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpc1N0cmVhbSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSJmYWxzZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRlbGxzIHdoZXRoZXIgYW4gaW5wdXQgcGFyYW1ldGVyIG1heSBhY2NlcHQgdmFsdWVzIHdoaWxlIGl0cyBiZWhhdmlvciBpcyBleGVjdXRpbmcsIG9yIHdoZXRoZXIgYW4gb3V0cHV0IHBhcmFtZXRlciBtYXkgcG9zdCB2YWx1ZXMgd2hpbGUgdGhlIGJlaGF2aW9yIGlzIGV4ZWN1dGluZy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib3BlcmF0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL09wZXJhdGlvbiIgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgT3BlcmF0aW9uIG93bmluZyB0aGlzIHBhcmFtZXRlci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVkRWxlbWVudC9uYW1lc3BhY2UiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InBhcmFtZXRlclNldCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUGFyYW1ldGVyU2V0IiBlT3Bwb3NpdGU9IiMvL1BhcmFtZXRlclNldC9wYXJhbWV0ZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgUGFyYW1ldGVyU2V0cyBjb250YWluaW5nIHRoZSBwYXJhbWV0ZXIuIFNlZSBQYXJhbWV0ZXJTZXQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRW51bSIgbmFtZT0iUGFyYW1ldGVyRGlyZWN0aW9uS2luZCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUGFyYW1ldGVyRGlyZWN0aW9uS2luZCBpcyBhbiBFbnVtZXJhdGlvbiB0aGF0IGRlZmluZXMgbGl0ZXJhbHMgdXNlZCB0byBzcGVjaWZ5IGRpcmVjdGlvbiBvZiBwYXJhbWV0ZXJzLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0iaW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbmRpY2F0ZXMgdGhhdCBQYXJhbWV0ZXIgdmFsdWVzIGFyZSBwYXNzZWQgaW4gYnkgdGhlIGNhbGxlci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0iaW5vdXQiIHZhbHVlPSIxIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSW5kaWNhdGVzIHRoYXQgUGFyYW1ldGVyIHZhbHVlcyBhcmUgcGFzc2VkIGluIGJ5IHRoZSBjYWxsZXIgYW5kIChwb3NzaWJseSBkaWZmZXJlbnQpIHZhbHVlcyBwYXNzZWQgb3V0IHRvIHRoZSBjYWxsZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9Im91dCIgdmFsdWU9IjIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbmRpY2F0ZXMgdGhhdCBQYXJhbWV0ZXIgdmFsdWVzIGFyZSBwYXNzZWQgb3V0IHRvIHRoZSBjYWxsZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9InJldHVybiIgdmFsdWU9IjMiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbmRpY2F0ZXMgdGhhdCBQYXJhbWV0ZXIgdmFsdWVzIGFyZSBwYXNzZWQgYXMgcmV0dXJuIHZhbHVlcyBiYWNrIHRvIHRoZSBjYWxsZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVFbnVtIiBuYW1lPSJQYXJhbWV0ZXJFZmZlY3RLaW5kIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJQYXJhbWV0ZXJFZmZlY3RLaW5kIGlzIGFuIEVudW1lcmF0aW9uIHRoYXQgaW5kaWNhdGVzIHRoZSBlZmZlY3Qgb2YgYSBCZWhhdmlvciBvbiB2YWx1ZXMgcGFzc2VkIGluIG9yIG91dCBvZiBpdHMgcGFyYW1ldGVycy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9ImNyZWF0ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkluZGljYXRlcyB0aGF0IHRoZSBiZWhhdmlvciBjcmVhdGVzIHZhbHVlcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0icmVhZCIgdmFsdWU9IjEiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbmRpY2F0ZXMgb2JqZWN0cyB0aGF0IGFyZSB2YWx1ZXMgb2YgdGhlIHBhcmFtZXRlciBoYXZlIHZhbHVlcyBvZiB0aGVpciBwcm9wZXJ0aWVzLCBvciBsaW5rcyBpbiB3aGljaCB0aGV5IHBhcnRpY2lwYXRlLCBvciB0aGVpciBjbGFzc2lmaWVycyByZXRyaWV2ZWQgZHVyaW5nIGV4ZWN1dGlvbnMgb2YgdGhlIGJlaGF2aW9yLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lTGl0ZXJhbHM+CisgICAgPGVMaXRlcmFscyBuYW1lPSJ1cGRhdGUiIHZhbHVlPSIyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSW5kaWNhdGVzIG9iamVjdHMgdGhhdCBhcmUgdmFsdWVzIG9mIHRoZSBwYXJhbWV0ZXIgaGF2ZSB2YWx1ZXMgb2YgdGhlaXIgcHJvcGVydGllcywgb3IgbGlua3MgaW4gd2hpY2ggdGhleSBwYXJ0aWNpcGF0ZSwgb3IgdGhlaXIgY2xhc3NpZmljYXRpb24gY2hhbmdlZCBkdXJpbmcgZXhlY3V0aW9ucyBvZiB0aGUgYmVoYXZpb3IuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9ImRlbGV0ZSIgdmFsdWU9IjMiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbmRpY2F0ZXMgb2JqZWN0cyB0aGF0IGFyZSB2YWx1ZXMgb2YgdGhlIHBhcmFtZXRlciBkbyBub3QgZXhpc3QgYWZ0ZXIgZXhlY3V0aW9ucyBvZiB0aGUgYmVoYXZpb3IgYXJlIGZpbmlzaGVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lTGl0ZXJhbHM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9wZXJhdGlvbiIgZVN1cGVyVHlwZXM9IiMvL0JlaGF2aW9yYWxGZWF0dXJlICMvL1BhcmFtZXRlcmFibGVFbGVtZW50ICMvL1RlbXBsYXRlYWJsZUVsZW1lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIE9wZXJhdGlvbiBpcyBhIEJlaGF2aW9yYWxGZWF0dXJlIG9mIGEgQ2xhc3NpZmllciB0aGF0IHNwZWNpZmllcyB0aGUgbmFtZSwgdHlwZSwgcGFyYW1ldGVycywgYW5kIGNvbnN0cmFpbnRzIGZvciBpbnZva2luZyBhbiBhc3NvY2lhdGVkIEJlaGF2aW9yLiBBbiBPcGVyYXRpb24gbWF5IGludm9rZSBib3RoIHRoZSBleGVjdXRpb24gb2YgbWV0aG9kIGJlaGF2aW9ycyBhcyB3ZWxsIGFzIG90aGVyIGJlaGF2aW9yYWwgcmVzcG9uc2VzLiBPcGVyYXRpb24gc3BlY2lhbGl6ZXMgVGVtcGxhdGVhYmxlRWxlbWVudCBpbiBvcmRlciB0byBzdXBwb3J0IHNwZWNpZmljYXRpb24gb2YgdGVtcGxhdGUgb3BlcmF0aW9ucyBhbmQgYm91bmQgb3BlcmF0aW9ucy4gT3BlcmF0aW9uIHNwZWNpYWxpemVzIFBhcmFtZXRlcmFibGVFbGVtZW50IHRvIHNwZWNpZnkgdGhhdCBhbiBvcGVyYXRpb24gY2FuIGJlIGV4cG9zZWQgYXMgYSBmb3JtYWwgdGVtcGxhdGUgcGFyYW1ldGVyLCBhbmQgcHJvdmlkZWQgYXMgYW4gYWN0dWFsIHBhcmFtZXRlciBpbiBhIGJpbmRpbmcgb2YgYSB0ZW1wbGF0ZS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iZHVwbGljYXRlcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0idGVtcGxhdGVQYXJhbWV0ZXIiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImVUeXBlIiB2YWx1ZT0idW1sOjpPcGVyYXRpb25UZW1wbGF0ZVBhcmFtZXRlciIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIG5hbWU9ImlzQ29uc2lzdGVudFdpdGgiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBpc0NvbnNpc3RlbnRXaXRoKCkgc3BlY2lmaWVzLCBmb3IgYW55IHR3byBPcGVyYXRpb25zIGluIGEgY29udGV4dCBpbiB3aGljaCByZWRlZmluaXRpb24gaXMgcG9zc2libGUsIHdoZXRoZXIgcmVkZWZpbml0aW9uIHdvdWxkIGJlIGNvbnNpc3RlbnQuIEEgcmVkZWZpbmluZyBvcGVyYXRpb24gaXMgY29uc2lzdGVudCB3aXRoIGEgcmVkZWZpbmVkIG9wZXJhdGlvbiBpZiYjeEQ7JiN4QTtpdCBoYXMgdGhlIHNhbWUgbnVtYmVyIG9mIG93bmVkIHBhcmFtZXRlcnMsIGFuZCBmb3IgZWFjaCBwYXJhbWV0ZXIgdGhlIGZvbGxvd2luZyBob2xkczomI3hEOyYjeEE7JiN4RDsmI3hBOy0gRGlyZWN0aW9uLCBvcmRlcmluZyBhbmQgdW5pcXVlbmVzcyBhcmUgdGhlIHNhbWUuJiN4RDsmI3hBOy0gVGhlIGNvcnJlc3BvbmRpbmcgdHlwZXMgYXJlIGNvdmFyaWFudCwgY29udHJhdmFyaWFudCBvciBpbnZhcmlhbnQuJiN4RDsmI3hBOy0gVGhlIG11bHRpcGxpY2l0aWVzIGFyZSBjb21wYXRpYmxlLCBkZXBlbmRpbmcgb24gdGhlIHBhcmFtZXRlciBkaXJlY3Rpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9SZWRlZmluYWJsZUVsZW1lbnQvaXNDb25zaXN0ZW50V2l0aCIvPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJyZWRlZmluaW5nRWxlbWVudC5vY2xJc0tpbmRPZihPcGVyYXRpb24pIGFuZCYjeEQ7JiN4QTtsZXQgb3AgOiBPcGVyYXRpb24gPSByZWRlZmluaW5nRWxlbWVudC5vY2xBc1R5cGUoT3BlcmF0aW9uKSBpbiYjeEQ7JiN4QTsmI3g5O3NlbGYub3duZWRQYXJhbWV0ZXItPnNpemUoKSA9IG9wLm93bmVkUGFyYW1ldGVyLT5zaXplKCkgYW5kJiN4RDsmI3hBOyYjeDk7U2VxdWVuY2V7MS4uc2VsZi5vd25lZFBhcmFtZXRlci0+c2l6ZSgpfS0+JiN4RDsmI3hBOyYjeDk7JiN4OTtmb3JBbGwoaSB8ICAmI3hEOyYjeEE7JiN4OTsmI3g5OyAgbGV0IHJlZGVmaW5pbmdQYXJhbSA6IFBhcmFtZXRlciA9IG9wLm93bmVkUGFyYW1ldGVyLT5hdChpKSwmI3hEOyYjeEE7ICAgICAgICAgICAgICAgcmVkZWZpbmVkUGFyYW0gOiBQYXJhbWV0ZXIgPSBzZWxmLm93bmVkUGFyYW1ldGVyLT5hdChpKSBpbiYjeEQ7JiN4QTsgICAgICAgICAgICAgICAgIChyZWRlZmluaW5nUGFyYW0uaXNVbmlxdWUgPSByZWRlZmluZWRQYXJhbS5pc1VuaXF1ZSkgYW5kJiN4RDsmI3hBOyAgICAgICAgICAgICAgICAgKHJlZGVmaW5pbmdQYXJhbS5pc09yZGVyZWQgPSByZWRlZmluZWRQYXJhbS4gaXNPcmRlcmVkKSBhbmQmI3hEOyYjeEE7ICAgICAgICAgICAgICAgICAocmVkZWZpbmluZ1BhcmFtLmRpcmVjdGlvbiA9IHJlZGVmaW5lZFBhcmFtLmRpcmVjdGlvbikgYW5kJiN4RDsmI3hBOyAgICAgICAgICAgICAgICAgKHJlZGVmaW5pbmdQYXJhbS50eXBlLmNvbmZvcm1zVG8ocmVkZWZpbmVkUGFyYW0udHlwZSkgb3ImI3hEOyYjeEE7ICAgICAgICAgICAgICAgICAgICAgcmVkZWZpbmVkUGFyYW0udHlwZS5jb25mb3Jtc1RvKHJlZGVmaW5pbmdQYXJhbS50eXBlKSkgYW5kJiN4RDsmI3hBOyAgICAgICAgICAgICAgICAgKHJlZGVmaW5pbmdQYXJhbS5kaXJlY3Rpb24gPSBQYXJhbWV0ZXJEaXJlY3Rpb25LaW5kOjppbm91dCBpbXBsaWVzJiN4RDsmI3hBOyAgICAgICAgICAgICAgICAgICAgICAgICAocmVkZWZpbmVkUGFyYW0uY29tcGF0aWJsZVdpdGgocmVkZWZpbmluZ1BhcmFtKSBhbmQmI3hEOyYjeEE7ICAgICAgICAgICAgICAgICAgICAgICAgIHJlZGVmaW5pbmdQYXJhbS5jb21wYXRpYmxlV2l0aChyZWRlZmluZWRQYXJhbSkpKSBhbmQmI3hEOyYjeEE7ICAgICAgICAgICAgICAgICAocmVkZWZpbmluZ1BhcmFtLmRpcmVjdGlvbiA9IFBhcmFtZXRlckRpcmVjdGlvbktpbmQ6Ol8naW4nIGltcGxpZXMmI3hEOyYjeEE7ICAgICAgICAgICAgICAgICAgICAgICAgIHJlZGVmaW5lZFBhcmFtLmNvbXBhdGlibGVXaXRoKHJlZGVmaW5pbmdQYXJhbSkpIGFuZCYjeEQ7JiN4QTsgICAgICAgICAgICAgICAgICgocmVkZWZpbmluZ1BhcmFtLmRpcmVjdGlvbiA9IFBhcmFtZXRlckRpcmVjdGlvbktpbmQ6Om91dCBvciYjeEQ7JiN4QTsgICAgICAgICAgICAgICAgICAgICAgcmVkZWZpbmluZ1BhcmFtLmRpcmVjdGlvbiA9IFBhcmFtZXRlckRpcmVjdGlvbktpbmQ6OnJldHVybikgaW1wbGllcyYjeEQ7JiN4QTsgICAgICAgICAgICAgICAgICAgICAgICAgcmVkZWZpbmluZ1BhcmFtLmNvbXBhdGlibGVXaXRoKHJlZGVmaW5lZFBhcmFtKSkmI3hEOyYjeEE7JiN4OTsmI3g5OykiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJyZWRlZmluaW5nRWxlbWVudCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9SZWRlZmluYWJsZUVsZW1lbnQiLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InJhaXNlZEV4Y2VwdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9UeXBlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBUeXBlcyByZXByZXNlbnRpbmcgZXhjZXB0aW9ucyB0aGF0IG1heSBiZSByYWlzZWQgZHVyaW5nIGFuIGludm9jYXRpb24gb2YgdGhpcyBvcGVyYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9CZWhhdmlvcmFsRmVhdHVyZS9yYWlzZWRFeGNlcHRpb24iLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InRlbXBsYXRlUGFyYW1ldGVyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICBlVHlwZT0iIy8vVGVtcGxhdGVQYXJhbWV0ZXIiIGVPcHBvc2l0ZT0iIy8vT3BlcmF0aW9uVGVtcGxhdGVQYXJhbWV0ZXIvJWR1cGxpY2F0ZXMlL3BhcmFtZXRlcmVkRWxlbWVudCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgT3BlcmF0aW9uVGVtcGxhdGVQYXJhbWV0ZXIgdGhhdCBleHBvc2VzIHRoaXMgZWxlbWVudCBhcyBhIGZvcm1hbCBwYXJhbWV0ZXIuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9QYXJhbWV0ZXJhYmxlRWxlbWVudC90ZW1wbGF0ZVBhcmFtZXRlciIvPgorICAgICAgPC9jb250ZW50cz4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib3duZWRQYXJhbWV0ZXIiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICAgIGVUeXBlPSIjLy9QYXJhbWV0ZXIiIGNvbnRhaW5tZW50PSJ0cnVlIiBlT3Bwb3NpdGU9IiMvL1BhcmFtZXRlci9vcGVyYXRpb24iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHBhcmFtZXRlcnMgb3duZWQgYnkgdGhpcyBPcGVyYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9CZWhhdmlvcmFsRmVhdHVyZS9vd25lZFBhcmFtZXRlciIvPgorICAgICAgPC9jb250ZW50cz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iYXRfbW9zdF9vbmVfcmV0dXJuIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ic2VsZi5vd25lZFBhcmFtZXRlci0+c2VsZWN0KGRpcmVjdGlvbiA9IFBhcmFtZXRlckRpcmVjdGlvbktpbmQ6OnJldHVybiktPnNpemUoKSAmbHQ7PSAxIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gT3BlcmF0aW9uIGNhbiBoYXZlIGF0IG1vc3Qgb25lIHJldHVybiBwYXJhbWV0ZXI7IGkuZS4sIGFuIG93bmVkIHBhcmFtZXRlciB3aXRoIHRoZSBkaXJlY3Rpb24gc2V0IHRvICdyZXR1cm4uJyIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ib25seV9ib2R5X2Zvcl9xdWVyeSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImJvZHlDb25kaXRpb24gJmx0Oz4gbnVsbCBpbXBsaWVzIGlzUXVlcnkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIGJvZHlDb25kaXRpb24gY2FuIG9ubHkgYmUgc3BlY2lmaWVkIGZvciBhIHF1ZXJ5IE9wZXJhdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldFJldHVyblJlc3VsdCIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSIjLy9QYXJhbWV0ZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXRyaWV2ZXMgdGhlIChvbmx5KSByZXR1cm4gcmVzdWx0IHBhcmFtZXRlciBmb3IgdGhpcyBvcGVyYXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzZXRJc09yZGVyZWQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJuZXdJc09yZGVyZWQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIvPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InNldElzVW5pcXVlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibmV3SXNVbmlxdWUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIvPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InNldExvd2VyIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibmV3TG93ZXIiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vSW50ZWdlciIvPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InNldFR5cGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIj4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJuZXdUeXBlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1R5cGUiLz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzZXRVcHBlciIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im5ld1VwcGVyIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1VubGltaXRlZE5hdHVyYWwiLz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc09yZGVyZWQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIHRoaXMgb3BlcmF0aW9uIGhhcyBhIHJldHVybiBwYXJhbWV0ZXIsIGlzT3JkZXJlZCBlcXVhbHMgdGhlIHZhbHVlIG9mIGlzT3JkZXJlZCBmb3IgdGhhdCBwYXJhbWV0ZXIuIE90aGVyd2lzZSBpc09yZGVyZWQgaXMgZmFsc2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpZiByZXR1cm5SZXN1bHQoKS0+bm90RW1wdHkoKSB0aGVuIHJldHVyblJlc3VsdCgpLT4gZXhpc3RzKGlzT3JkZXJlZCkgZWxzZSBmYWxzZSBlbmRpZiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNVbmlxdWUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIHRoaXMgb3BlcmF0aW9uIGhhcyBhIHJldHVybiBwYXJhbWV0ZXIsIGlzVW5pcXVlIGVxdWFscyB0aGUgdmFsdWUgb2YgaXNVbmlxdWUgZm9yIHRoYXQgcGFyYW1ldGVyLiBPdGhlcndpc2UgaXNVbmlxdWUgaXMgdHJ1ZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlmIHJldHVyblJlc3VsdCgpLT5ub3RFbXB0eSgpIHRoZW4gcmV0dXJuUmVzdWx0KCktPmV4aXN0cyhpc1VuaXF1ZSkgZWxzZSB0cnVlIGVuZGlmIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRMb3dlciIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9JbnRlZ2VyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgdGhpcyBvcGVyYXRpb24gaGFzIGEgcmV0dXJuIHBhcmFtZXRlciwgbG93ZXIgZXF1YWxzIHRoZSB2YWx1ZSBvZiBsb3dlciBmb3IgdGhhdCBwYXJhbWV0ZXIuIE90aGVyd2lzZSBsb3dlciBoYXMgbm8gdmFsdWUuIi8+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJvcmlnaW5hbE5hbWUiIHZhbHVlPSJsb3dlciIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaWYgcmV0dXJuUmVzdWx0KCktPm5vdEVtcHR5KCkgdGhlbiByZXR1cm5SZXN1bHQoKS0+YW55KHRydWUpLmxvd2VyIGVsc2UgbnVsbCBlbmRpZiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0icmV0dXJuUmVzdWx0IiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9QYXJhbWV0ZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgcmV0dXJuUmVzdWx0KCkgcmV0dXJucyB0aGUgc2V0IGNvbnRhaW5pbmcgdGhlIHJldHVybiBwYXJhbWV0ZXIgb2YgdGhlIE9wZXJhdGlvbiBpZiBvbmUgZXhpc3RzLCBvdGhlcndpc2UsIGl0IHJldHVybnMgYW4gZW1wdHkgc2V0Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJvd25lZFBhcmFtZXRlci0+c2VsZWN0IChkaXJlY3Rpb24gPSBQYXJhbWV0ZXJEaXJlY3Rpb25LaW5kOjpyZXR1cm4pLT5hc1NldCgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRUeXBlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1R5cGUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiB0aGlzIG9wZXJhdGlvbiBoYXMgYSByZXR1cm4gcGFyYW1ldGVyLCB0eXBlIGVxdWFscyB0aGUgdmFsdWUgb2YgdHlwZSBmb3IgdGhhdCBwYXJhbWV0ZXIuIE90aGVyd2lzZSB0eXBlIGhhcyBubyB2YWx1ZS4iLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9Im9yaWdpbmFsTmFtZSIgdmFsdWU9InR5cGUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlmIHJldHVyblJlc3VsdCgpLT5ub3RFbXB0eSgpIHRoZW4gcmV0dXJuUmVzdWx0KCktPmFueSh0cnVlKS50eXBlIGVsc2UgbnVsbCBlbmRpZiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0VXBwZXIiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vVW5saW1pdGVkTmF0dXJhbCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIHRoaXMgb3BlcmF0aW9uIGhhcyBhIHJldHVybiBwYXJhbWV0ZXIsIHVwcGVyIGVxdWFscyB0aGUgdmFsdWUgb2YgdXBwZXIgZm9yIHRoYXQgcGFyYW1ldGVyLiBPdGhlcndpc2UgdXBwZXIgaGFzIG5vIHZhbHVlLiIvPgorICAgICAgICA8ZGV0YWlscyBrZXk9InN1cHByZXNzZWRWaXNpYmlsaXR5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ib3JpZ2luYWxOYW1lIiB2YWx1ZT0idXBwZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlmIHJldHVyblJlc3VsdCgpLT5ub3RFbXB0eSgpIHRoZW4gcmV0dXJuUmVzdWx0KCktPmFueSh0cnVlKS51cHBlciBlbHNlIG51bGwgZW5kaWYiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImJvZHlDb25kaXRpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vQ29uc3RyYWludCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIG9wdGlvbmFsIENvbnN0cmFpbnQgb24gdGhlIHJlc3VsdCB2YWx1ZXMgb2YgYW4gaW52b2NhdGlvbiBvZiB0aGlzIE9wZXJhdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVzcGFjZS9vd25lZFJ1bGUiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImNsYXNzIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL0NsYXNzIiBlT3Bwb3NpdGU9IiMvL0NsYXNzL293bmVkT3BlcmF0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIENsYXNzIHRoYXQgb3ducyB0aGlzIG9wZXJhdGlvbiwgaWYgYW55LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRmVhdHVyZS9mZWF0dXJpbmdDbGFzc2lmaWVyICMvL05hbWVkRWxlbWVudC9uYW1lc3BhY2UgIy8vUmVkZWZpbmFibGVFbGVtZW50L3JlZGVmaW5pdGlvbkNvbnRleHQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImRhdGF0eXBlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL0RhdGFUeXBlIiBlT3Bwb3NpdGU9IiMvL0RhdGFUeXBlL293bmVkT3BlcmF0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIERhdGFUeXBlIHRoYXQgb3ducyB0aGlzIE9wZXJhdGlvbiwgaWYgYW55LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRmVhdHVyZS9mZWF0dXJpbmdDbGFzc2lmaWVyICMvL05hbWVkRWxlbWVudC9uYW1lc3BhY2UgIy8vUmVkZWZpbmFibGVFbGVtZW50L3JlZGVmaW5pdGlvbkNvbnRleHQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImludGVyZmFjZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9JbnRlcmZhY2UiIGVPcHBvc2l0ZT0iIy8vSW50ZXJmYWNlL293bmVkT3BlcmF0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIEludGVyZmFjZSB0aGF0IG93bnMgdGhpcyBPcGVyYXRpb24sIGlmIGFueS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0ZlYXR1cmUvZmVhdHVyaW5nQ2xhc3NpZmllciAjLy9OYW1lZEVsZW1lbnQvbmFtZXNwYWNlICMvL1JlZGVmaW5hYmxlRWxlbWVudC9yZWRlZmluaXRpb25Db250ZXh0Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpc09yZGVyZWQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIgY2hhbmdlYWJsZT0iZmFsc2UiCisgICAgICAgIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiIGRlcml2ZWQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgd2hldGhlciB0aGUgcmV0dXJuIHBhcmFtZXRlciBpcyBvcmRlcmVkIG9yIG5vdCwgaWYgcHJlc2VudC4gIFRoaXMgaW5mb3JtYXRpb24gaXMgZGVyaXZlZCBmcm9tIHRoZSByZXR1cm4gcmVzdWx0IGZvciB0aGlzIE9wZXJhdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNRdWVyeSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSJmYWxzZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNwZWNpZmllcyB3aGV0aGVyIGFuIGV4ZWN1dGlvbiBvZiB0aGUgQmVoYXZpb3JhbEZlYXR1cmUgbGVhdmVzIHRoZSBzdGF0ZSBvZiB0aGUgc3lzdGVtIHVuY2hhbmdlZCAoaXNRdWVyeT10cnVlKSBvciB3aGV0aGVyIHNpZGUgZWZmZWN0cyBtYXkgb2NjdXIgKGlzUXVlcnk9ZmFsc2UpLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpc1VuaXF1ZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIiBjaGFuZ2VhYmxlPSJmYWxzZSIKKyAgICAgICAgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0idHJ1ZSIgZGVyaXZlZD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNwZWNpZmllcyB3aGV0aGVyIHRoZSByZXR1cm4gcGFyYW1ldGVyIGlzIHVuaXF1ZSBvciBub3QsIGlmIHByZXNlbnQuIFRoaXMgaW5mb3JtYXRpb24gaXMgZGVyaXZlZCBmcm9tIHRoZSByZXR1cm4gcmVzdWx0IGZvciB0aGlzIE9wZXJhdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ibG93ZXIiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vSW50ZWdlciIgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIgorICAgICAgICB0cmFuc2llbnQ9InRydWUiIGRlZmF1bHRWYWx1ZUxpdGVyYWw9IjEiIGRlcml2ZWQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgdGhlIGxvd2VyIG11bHRpcGxpY2l0eSBvZiB0aGUgcmV0dXJuIHBhcmFtZXRlciwgaWYgcHJlc2VudC4gVGhpcyBpbmZvcm1hdGlvbiBpcyBkZXJpdmVkIGZyb20gdGhlIHJldHVybiByZXN1bHQgZm9yIHRoaXMgT3BlcmF0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJwb3N0Y29uZGl0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Db25zdHJhaW50Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gb3B0aW9uYWwgc2V0IG9mIENvbnN0cmFpbnRzIHNwZWNpZnlpbmcgdGhlIHN0YXRlIG9mIHRoZSBzeXN0ZW0gd2hlbiB0aGUgT3BlcmF0aW9uIGlzIGNvbXBsZXRlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVzcGFjZS9vd25lZFJ1bGUiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InByZWNvbmRpdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQ29uc3RyYWludCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIG9wdGlvbmFsIHNldCBvZiBDb25zdHJhaW50cyBvbiB0aGUgc3RhdGUgb2YgdGhlIHN5c3RlbSB3aGVuIHRoZSBPcGVyYXRpb24gaXMgaW52b2tlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVzcGFjZS9vd25lZFJ1bGUiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InJlZGVmaW5lZE9wZXJhdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vT3BlcmF0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIE9wZXJhdGlvbnMgdGhhdCBhcmUgcmVkZWZpbmVkIGJ5IHRoaXMgT3BlcmF0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vUmVkZWZpbmFibGVFbGVtZW50L3JlZGVmaW5lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InR5cGUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iIy8vVHlwZSIKKyAgICAgICAgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiIGRlcml2ZWQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcmV0dXJuIHR5cGUgb2YgdGhlIG9wZXJhdGlvbiwgaWYgcHJlc2VudC4gVGhpcyBpbmZvcm1hdGlvbiBpcyBkZXJpdmVkIGZyb20gdGhlIHJldHVybiByZXN1bHQgZm9yIHRoaXMgT3BlcmF0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJ1cHBlciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9VbmxpbWl0ZWROYXR1cmFsIiBjaGFuZ2VhYmxlPSJmYWxzZSIKKyAgICAgICAgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iMSIgZGVyaXZlZD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB1cHBlciBtdWx0aXBsaWNpdHkgb2YgdGhlIHJldHVybiBwYXJhbWV0ZXIsIGlmIHByZXNlbnQuIFRoaXMgaW5mb3JtYXRpb24gaXMgZGVyaXZlZCBmcm9tIHRoZSByZXR1cm4gcmVzdWx0IGZvciB0aGlzIE9wZXJhdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQmVoYXZpb3JhbEZlYXR1cmUiIGFic3RyYWN0PSJ0cnVlIiBlU3VwZXJUeXBlcz0iIy8vTmFtZXNwYWNlICMvL0ZlYXR1cmUiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgQmVoYXZpb3JhbEZlYXR1cmUgaXMgYSBmZWF0dXJlIG9mIGEgQ2xhc3NpZmllciB0aGF0IHNwZWNpZmllcyBhbiBhc3BlY3Qgb2YgdGhlIGJlaGF2aW9yIG9mIGl0cyBpbnN0YW5jZXMuICBBIEJlaGF2aW9yYWxGZWF0dXJlIGlzIGltcGxlbWVudGVkIChyZWFsaXplZCkgYnkgYSBCZWhhdmlvci4gQSBCZWhhdmlvcmFsRmVhdHVyZSBzcGVjaWZpZXMgdGhhdCBhIENsYXNzaWZpZXIgd2lsbCByZXNwb25kIHRvIGEgZGVzaWduYXRlZCByZXF1ZXN0IGJ5IGludm9raW5nIGl0cyBpbXBsZW1lbnRpbmcgbWV0aG9kLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJkdXBsaWNhdGVzIj4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgbmFtZT0iaXNEaXN0aW5ndWlzaGFibGVGcm9tIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgaXNEaXN0aW5ndWlzaGFibGVGcm9tKCkgZGV0ZXJtaW5lcyB3aGV0aGVyIHR3byBCZWhhdmlvcmFsRmVhdHVyZXMgbWF5IGNvZXhpc3QgaW4gdGhlIHNhbWUgTmFtZXNwYWNlLiBJdCBzcGVjaWZpZXMgdGhhdCB0aGV5IG11c3QgaGF2ZSBkaWZmZXJlbnQgc2lnbmF0dXJlcy4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL05hbWVkRWxlbWVudC9pc0Rpc3Rpbmd1aXNoYWJsZUZyb20iLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iKG4ub2NsSXNLaW5kT2YoQmVoYXZpb3JhbEZlYXR1cmUpIGFuZCBucy5nZXROYW1lc09mTWVtYmVyKHNlbGYpLT5pbnRlcnNlY3Rpb24obnMuZ2V0TmFtZXNPZk1lbWJlcihuKSktPm5vdEVtcHR5KCkpIGltcGxpZXMmI3hBOyAgU2V0e3NlbGZ9LT5pbmNsdWRpbmcobi5vY2xBc1R5cGUoQmVoYXZpb3JhbEZlYXR1cmUpKS0+aXNVbmlxdWUob3duZWRQYXJhbWV0ZXItPmNvbGxlY3QocHwmI3hBOyAgVHVwbGUgeyBuYW1lPXAubmFtZSwgdHlwZT1wLnR5cGUsZWZmZWN0PXAuZWZmZWN0LGRpcmVjdGlvbj1wLmRpcmVjdGlvbixpc0V4Y2VwdGlvbj1wLmlzRXhjZXB0aW9uLCYjeEE7ICAgICAgICAgICAgICBpc1N0cmVhbT1wLmlzU3RyZWFtLGlzT3JkZXJlZD1wLmlzT3JkZXJlZCxpc1VuaXF1ZT1wLmlzVW5pcXVlLGxvd2VyPXAubG93ZXIsIHVwcGVyPXAudXBwZXIgfSkpIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibiIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9OYW1lZEVsZW1lbnQiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im5zIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL05hbWVzcGFjZSIvPgorICAgICAgPC9jb250ZW50cz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iYWJzdHJhY3Rfbm9fbWV0aG9kIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaXNBYnN0cmFjdCBpbXBsaWVzIG1ldGhvZC0+aXNFbXB0eSgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iV2hlbiBpc0Fic3RyYWN0IGlzIHRydWUgdGhlcmUgYXJlIG5vIG1ldGhvZHMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjcmVhdGVSZXR1cm5SZXN1bHQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUGFyYW1ldGVyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQ3JlYXRlcyBhIHJldHVybiByZXN1bHQgcGFyYW1ldGVyIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lIGFuZCB0eXBlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibmFtZSIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG5hbWUgZm9yIHRoZSBuZXcgcmV0dXJuIHJlc3VsdCwgb3IgbnVsbC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InR5cGUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iIy8vVHlwZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgdHlwZSBmb3IgdGhlIG5ldyByZXR1cm4gcmVzdWx0LCBvciBudWxsLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaW5wdXRQYXJhbWV0ZXJzIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1BhcmFtZXRlciI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBvd25lZFBhcmFtZXRlcnMgd2l0aCBkaXJlY3Rpb24gaW4gYW5kIGlub3V0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ib3duZWRQYXJhbWV0ZXItPnNlbGVjdChkaXJlY3Rpb249UGFyYW1ldGVyRGlyZWN0aW9uS2luZDo6Xydpbicgb3IgZGlyZWN0aW9uPVBhcmFtZXRlckRpcmVjdGlvbktpbmQ6Omlub3V0KSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ib3V0cHV0UGFyYW1ldGVycyIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9QYXJhbWV0ZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgb3duZWRQYXJhbWV0ZXJzIHdpdGggZGlyZWN0aW9uIG91dCwgaW5vdXQsIG9yIHJldHVybi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im93bmVkUGFyYW1ldGVyLT5zZWxlY3QoZGlyZWN0aW9uPVBhcmFtZXRlckRpcmVjdGlvbktpbmQ6Om91dCBvciBkaXJlY3Rpb249UGFyYW1ldGVyRGlyZWN0aW9uS2luZDo6aW5vdXQgb3IgZGlyZWN0aW9uPVBhcmFtZXRlckRpcmVjdGlvbktpbmQ6OnJldHVybikiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImNvbmN1cnJlbmN5IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0NhbGxDb25jdXJyZW5jeUtpbmQiIGRlZmF1bHRWYWx1ZUxpdGVyYWw9InNlcXVlbnRpYWwiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgdGhlIHNlbWFudGljcyBvZiBjb25jdXJyZW50IGNhbGxzIHRvIHRoZSBzYW1lIHBhc3NpdmUgaW5zdGFuY2UgKGkuZS4sIGFuIGluc3RhbmNlIG9yaWdpbmF0aW5nIGZyb20gYSBDbGFzcyB3aXRoIGlzQWN0aXZlIGJlaW5nIGZhbHNlKS4gQWN0aXZlIGluc3RhbmNlcyBjb250cm9sIGFjY2VzcyB0byB0aGVpciBvd24gQmVoYXZpb3JhbEZlYXR1cmVzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpc0Fic3RyYWN0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGRlZmF1bHRWYWx1ZUxpdGVyYWw9ImZhbHNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgdHJ1ZSwgdGhlbiB0aGUgQmVoYXZpb3JhbEZlYXR1cmUgZG9lcyBub3QgaGF2ZSBhbiBpbXBsZW1lbnRhdGlvbiwgYW5kIG9uZSBtdXN0IGJlIHN1cHBsaWVkIGJ5IGEgbW9yZSBzcGVjaWZpYyBDbGFzc2lmaWVyLiBJZiBmYWxzZSwgdGhlIEJlaGF2aW9yYWxGZWF0dXJlIG11c3QgaGF2ZSBhbiBpbXBsZW1lbnRhdGlvbiBpbiB0aGUgQ2xhc3NpZmllciBvciBvbmUgbXVzdCBiZSBpbmhlcml0ZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im1ldGhvZCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQmVoYXZpb3IiIGVPcHBvc2l0ZT0iIy8vQmVoYXZpb3Ivc3BlY2lmaWNhdGlvbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgQmVoYXZpb3IgdGhhdCBpbXBsZW1lbnRzIHRoZSBCZWhhdmlvcmFsRmVhdHVyZS4gVGhlcmUgbWF5IGJlIGF0IG1vc3Qgb25lIEJlaGF2aW9yIGZvciBhIHBhcnRpY3VsYXIgcGFpcmluZyBvZiBhIENsYXNzaWZpZXIgKGFzIG93bmVyIG9mIHRoZSBCZWhhdmlvcikgYW5kIGEgQmVoYXZpb3JhbEZlYXR1cmUgKGFzIHNwZWNpZmljYXRpb24gb2YgdGhlIEJlaGF2aW9yKS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib3duZWRQYXJhbWV0ZXIiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vUGFyYW1ldGVyIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBvcmRlcmVkIHNldCBvZiBmb3JtYWwgUGFyYW1ldGVycyBvZiB0aGlzIEJlaGF2aW9yYWxGZWF0dXJlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vTmFtZXNwYWNlL293bmVkTWVtYmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJvd25lZFBhcmFtZXRlclNldCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUGFyYW1ldGVyU2V0IiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBQYXJhbWV0ZXJTZXRzIG93bmVkIGJ5IHRoaXMgQmVoYXZpb3JhbEZlYXR1cmUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lc3BhY2Uvb3duZWRNZW1iZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InJhaXNlZEV4Y2VwdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vVHlwZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBUeXBlcyByZXByZXNlbnRpbmcgZXhjZXB0aW9ucyB0aGF0IG1heSBiZSByYWlzZWQgZHVyaW5nIGFuIGludm9jYXRpb24gb2YgdGhpcyBCZWhhdmlvcmFsRmVhdHVyZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRmVhdHVyZSIgYWJzdHJhY3Q9InRydWUiIGVTdXBlclR5cGVzPSIjLy9SZWRlZmluYWJsZUVsZW1lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgRmVhdHVyZSBkZWNsYXJlcyBhIGJlaGF2aW9yYWwgb3Igc3RydWN0dXJhbCBjaGFyYWN0ZXJpc3RpYyBvZiBDbGFzc2lmaWVycy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZmVhdHVyaW5nQ2xhc3NpZmllciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQ2xhc3NpZmllciIgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiCisgICAgICAgIGRlcml2ZWQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vQ2xhc3NpZmllci9mZWF0dXJlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIENsYXNzaWZpZXJzIHRoYXQgaGF2ZSB0aGlzIEZlYXR1cmUgYXMgYSBmZWF0dXJlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0idW5pb24iLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImlzU3RhdGljIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGRlZmF1bHRWYWx1ZUxpdGVyYWw9ImZhbHNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iU3BlY2lmaWVzIHdoZXRoZXIgdGhpcyBGZWF0dXJlIGNoYXJhY3Rlcml6ZXMgaW5kaXZpZHVhbCBpbnN0YW5jZXMgY2xhc3NpZmllZCBieSB0aGUgQ2xhc3NpZmllciAoZmFsc2UpIG9yIHRoZSBDbGFzc2lmaWVyIGl0c2VsZiAodHJ1ZSkuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlJlZGVmaW5hYmxlRWxlbWVudCIgYWJzdHJhY3Q9InRydWUiCisgICAgICBlU3VwZXJUeXBlcz0iIy8vTmFtZWRFbGVtZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFJlZGVmaW5hYmxlRWxlbWVudCBpcyBhbiBlbGVtZW50IHRoYXQsIHdoZW4gZGVmaW5lZCBpbiB0aGUgY29udGV4dCBvZiBhIENsYXNzaWZpZXIsIGNhbiBiZSByZWRlZmluZWQgbW9yZSBzcGVjaWZpY2FsbHkgb3IgZGlmZmVyZW50bHkgaW4gdGhlIGNvbnRleHQgb2YgYW5vdGhlciBDbGFzc2lmaWVyIHRoYXQgc3BlY2lhbGl6ZXMgKGRpcmVjdGx5IG9yIGluZGlyZWN0bHkpIHRoZSBjb250ZXh0IENsYXNzaWZpZXIuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InJlZGVmaW5pdGlvbl9jb25zaXN0ZW50IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icmVkZWZpbmVkRWxlbWVudC0+Zm9yQWxsKHJlIHwgcmUuaXNDb25zaXN0ZW50V2l0aChzZWxmKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIHJlZGVmaW5pbmcgZWxlbWVudCBtdXN0IGJlIGNvbnNpc3RlbnQgd2l0aCBlYWNoIHJlZGVmaW5lZCBlbGVtZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibm9uX2xlYWZfcmVkZWZpbml0aW9uIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icmVkZWZpbmVkRWxlbWVudC0+Zm9yQWxsKHJlIHwgbm90IHJlLmlzTGVhZikiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFJlZGVmaW5hYmxlRWxlbWVudCBjYW4gb25seSByZWRlZmluZSBub24tbGVhZiBSZWRlZmluYWJsZUVsZW1lbnRzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0icmVkZWZpbml0aW9uX2NvbnRleHRfdmFsaWQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJyZWRlZmluZWRFbGVtZW50LT5mb3JBbGwocmUgfCBzZWxmLmlzUmVkZWZpbml0aW9uQ29udGV4dFZhbGlkKHJlKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBdCBsZWFzdCBvbmUgb2YgdGhlIHJlZGVmaW5pdGlvbiBjb250ZXh0cyBvZiB0aGUgcmVkZWZpbmluZyBlbGVtZW50IG11c3QgYmUgYSBzcGVjaWFsaXphdGlvbiBvZiBhdCBsZWFzdCBvbmUgb2YgdGhlIHJlZGVmaW5pdGlvbiBjb250ZXh0cyBmb3IgZWFjaCByZWRlZmluZWQgZWxlbWVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzQ29uc2lzdGVudFdpdGgiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBpc0NvbnNpc3RlbnRXaXRoKCkgc3BlY2lmaWVzLCBmb3IgYW55IHR3byBSZWRlZmluYWJsZUVsZW1lbnRzIGluIGEgY29udGV4dCBpbiB3aGljaCByZWRlZmluaXRpb24gaXMgcG9zc2libGUsIHdoZXRoZXIgcmVkZWZpbml0aW9uIHdvdWxkIGJlIGxvZ2ljYWxseSBjb25zaXN0ZW50LiBCeSBkZWZhdWx0LCB0aGlzIGlzIGZhbHNlOyB0aGlzIG9wZXJhdGlvbiBtdXN0IGJlIG92ZXJyaWRkZW4gZm9yIHN1YmNsYXNzZXMgb2YgUmVkZWZpbmFibGVFbGVtZW50IHRvIGRlZmluZSB0aGUgY29uc2lzdGVuY3kgY29uZGl0aW9ucy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImZhbHNlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJyZWRlZmluaW5nRWxlbWVudCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9SZWRlZmluYWJsZUVsZW1lbnQiLz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc1JlZGVmaW5pdGlvbkNvbnRleHRWYWxpZCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiCisgICAgICAgIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IGlzUmVkZWZpbml0aW9uQ29udGV4dFZhbGlkKCkgc3BlY2lmaWVzIHdoZXRoZXIgdGhlIHJlZGVmaW5pdGlvbiBjb250ZXh0cyBvZiB0aGlzIFJlZGVmaW5hYmxlRWxlbWVudCBhcmUgcHJvcGVybHkgcmVsYXRlZCB0byB0aGUgcmVkZWZpbml0aW9uIGNvbnRleHRzIG9mIHRoZSBzcGVjaWZpZWQgUmVkZWZpbmFibGVFbGVtZW50IHRvIGFsbG93IHRoaXMgZWxlbWVudCB0byByZWRlZmluZSB0aGUgb3RoZXIuIEJ5IGRlZmF1bHQgYXQgbGVhc3Qgb25lIG9mIHRoZSByZWRlZmluaXRpb24gY29udGV4dHMgb2YgdGhpcyBlbGVtZW50IG11c3QgYmUgYSBzcGVjaWFsaXphdGlvbiBvZiBhdCBsZWFzdCBvbmUgb2YgdGhlIHJlZGVmaW5pdGlvbiBjb250ZXh0cyBvZiB0aGUgc3BlY2lmaWVkIGVsZW1lbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJyZWRlZmluaXRpb25Db250ZXh0LT5leGlzdHMoYyB8IGMuYWxsUGFyZW50cygpLT5pbmNsdWRlc0FsbChyZWRlZmluZWRFbGVtZW50LnJlZGVmaW5pdGlvbkNvbnRleHQpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icmVkZWZpbmVkRWxlbWVudCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9SZWRlZmluYWJsZUVsZW1lbnQiLz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpc0xlYWYiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iZmFsc2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbmRpY2F0ZXMgd2hldGhlciBpdCBpcyBwb3NzaWJsZSB0byBmdXJ0aGVyIHJlZGVmaW5lIGEgUmVkZWZpbmFibGVFbGVtZW50LiBJZiB0aGUgdmFsdWUgaXMgdHJ1ZSwgdGhlbiBpdCBpcyBub3QgcG9zc2libGUgdG8gZnVydGhlciByZWRlZmluZSB0aGUgUmVkZWZpbmFibGVFbGVtZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyZWRlZmluZWRFbGVtZW50IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9SZWRlZmluYWJsZUVsZW1lbnQiIGNoYW5nZWFibGU9ImZhbHNlIiB2b2xhdGlsZT0idHJ1ZSIKKyAgICAgICAgdHJhbnNpZW50PSJ0cnVlIiBkZXJpdmVkPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFJlZGVmaW5hYmxlRWxlbWVudCB0aGF0IGlzIGJlaW5nIHJlZGVmaW5lZCBieSB0aGlzIGVsZW1lbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJ1bmlvbiIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVkZWZpbml0aW9uQ29udGV4dCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQ2xhc3NpZmllciIgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiCisgICAgICAgIGRlcml2ZWQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY29udGV4dHMgdGhhdCB0aGlzIGVsZW1lbnQgbWF5IGJlIHJlZGVmaW5lZCBmcm9tLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0idW5pb24iLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRW51bSIgbmFtZT0iQ2FsbENvbmN1cnJlbmN5S2luZCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQ2FsbENvbmN1cnJlbmN5S2luZCBpcyBhbiBFbnVtZXJhdGlvbiB1c2VkIHRvIHNwZWNpZnkgdGhlIHNlbWFudGljcyBvZiBjb25jdXJyZW50IGNhbGxzIHRvIGEgQmVoYXZpb3JhbEZlYXR1cmUuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVMaXRlcmFscyBuYW1lPSJzZXF1ZW50aWFsIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iTm8gY29uY3VycmVuY3kgbWFuYWdlbWVudCBtZWNoYW5pc20gaXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBCZWhhdmlvcmFsRmVhdHVyZSBhbmQsIHRoZXJlZm9yZSwgY29uY3VycmVuY3kgY29uZmxpY3RzIG1heSBvY2N1ci4gSW5zdGFuY2VzIHRoYXQgaW52b2tlIGEgQmVoYXZpb3JhbEZlYXR1cmUgbmVlZCB0byBjb29yZGluYXRlIHNvIHRoYXQgb25seSBvbmUgaW52b2NhdGlvbiB0byBhIHRhcmdldCBvbiBhbnkgQmVoYXZpb3JhbEZlYXR1cmUgb2NjdXJzIGF0IG9uY2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9Imd1YXJkZWQiIHZhbHVlPSIxIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iTXVsdGlwbGUgaW52b2NhdGlvbnMgb2YgYSBCZWhhdmlvcmFsRmVhdHVyZSB0aGF0IG92ZXJsYXAgaW4gdGltZSBtYXkgb2NjdXIgdG8gb25lIGluc3RhbmNlLCBidXQgb25seSBvbmUgaXMgYWxsb3dlZCB0byBjb21tZW5jZS4gVGhlIG90aGVycyBhcmUgYmxvY2tlZCB1bnRpbCB0aGUgcGVyZm9ybWFuY2Ugb2YgdGhlIGN1cnJlbnRseSBleGVjdXRpbmcgQmVoYXZpb3JhbEZlYXR1cmUgaXMgY29tcGxldGUuIEl0IGlzIHRoZSByZXNwb25zaWJpbGl0eSBvZiB0aGUgc3lzdGVtIGRlc2lnbmVyIHRvIGVuc3VyZSB0aGF0IGRlYWRsb2NrcyBkbyBub3Qgb2NjdXIgZHVlIHRvIHNpbXVsdGFuZW91cyBibG9ja2luZy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0iY29uY3VycmVudCIgdmFsdWU9IjIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJNdWx0aXBsZSBpbnZvY2F0aW9ucyBvZiBhIEJlaGF2aW9yYWxGZWF0dXJlIHRoYXQgb3ZlcmxhcCBpbiB0aW1lIG1heSBvY2N1ciB0byBvbmUgaW5zdGFuY2UgYW5kIGFsbCBvZiB0aGVtIG1heSBwcm9jZWVkIGNvbmN1cnJlbnRseS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQYXJhbWV0ZXJTZXQiIGVTdXBlclR5cGVzPSIjLy9OYW1lZEVsZW1lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgUGFyYW1ldGVyU2V0IGRlc2lnbmF0ZXMgYWx0ZXJuYXRpdmUgc2V0cyBvZiBpbnB1dHMgb3Igb3V0cHV0cyB0aGF0IGEgQmVoYXZpb3IgbWF5IHVzZS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ic2FtZV9wYXJhbWV0ZXJpemVkX2VudGl0eSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InBhcmFtZXRlci0+Zm9yQWxsKHAxLCBwMiB8IHNlbGYub3duZXIgPSBwMS5vd25lciBhbmQgc2VsZi5vd25lciA9IHAyLm93bmVyIGFuZCBwMS5kaXJlY3Rpb24gPSBwMi5kaXJlY3Rpb24pIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFBhcmFtZXRlcnMgaW4gYSBQYXJhbWV0ZXJTZXQgbXVzdCBhbGwgYmUgaW5wdXRzIG9yIGFsbCBiZSBvdXRwdXRzIG9mIHRoZSBzYW1lIHBhcmFtZXRlcml6ZWQgZW50aXR5LCBhbmQgdGhlIFBhcmFtZXRlclNldCBpcyBvd25lZCBieSB0aGF0IGVudGl0eS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlucHV0IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iKChwYXJhbWV0ZXItPmV4aXN0cyhkaXJlY3Rpb24gPSBQYXJhbWV0ZXJEaXJlY3Rpb25LaW5kOjpfJ2luJykpIGltcGxpZXMgJiN4RDsmI3hBOyAgICBiZWhhdmlvcmFsRmVhdHVyZS5vd25lZFBhcmFtZXRlci0+c2VsZWN0KHAgfCBwLmRpcmVjdGlvbiA9IFBhcmFtZXRlckRpcmVjdGlvbktpbmQ6Ol8naW4nIGFuZCBwLnBhcmFtZXRlclNldC0+aXNFbXB0eSgpKS0+Zm9yQWxsKGlzU3RyZWFtKSkmI3hEOyYjeEE7ICAgIGFuZCYjeEQ7JiN4QTsoKHBhcmFtZXRlci0+ZXhpc3RzKGRpcmVjdGlvbiA9IFBhcmFtZXRlckRpcmVjdGlvbktpbmQ6Om91dCkpIGltcGxpZXMgJiN4RDsmI3hBOyAgICBiZWhhdmlvcmFsRmVhdHVyZS5vd25lZFBhcmFtZXRlci0+c2VsZWN0KHAgfCBwLmRpcmVjdGlvbiA9IFBhcmFtZXRlckRpcmVjdGlvbktpbmQ6Om91dCBhbmQgcC5wYXJhbWV0ZXJTZXQtPmlzRW1wdHkoKSktPmZvckFsbChpc1N0cmVhbSkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgYSBwYXJhbWV0ZXJpemVkIGVudGl0eSBoYXMgaW5wdXQgUGFyYW1ldGVycyB0aGF0IGFyZSBpbiBhIFBhcmFtZXRlclNldCwgdGhlbiBhbnkgaW5wdXRzIHRoYXQgYXJlIG5vdCBpbiBhIFBhcmFtZXRlclNldCBtdXN0IGJlIHN0cmVhbWluZy4gU2FtZSBmb3Igb3V0cHV0IFBhcmFtZXRlcnMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJ0d29fcGFyYW1ldGVyX3NldHMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJwYXJhbWV0ZXItPmZvckFsbChwYXJhbWV0ZXJTZXQtPmZvckFsbChzMSwgczIgfCBzMS0+c2l6ZSgpID0gczItPnNpemUoKSBpbXBsaWVzIHMxLnBhcmFtZXRlci0+ZXhpc3RzKHAgfCBub3QgczIucGFyYW1ldGVyLT5pbmNsdWRlcyhwKSkpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlR3byBQYXJhbWV0ZXJTZXRzIGNhbm5vdCBoYXZlIGV4YWN0bHkgdGhlIHNhbWUgc2V0IG9mIFBhcmFtZXRlcnMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJjb25kaXRpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0NvbnN0cmFpbnQiIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBjb25zdHJhaW50IHRoYXQgc2hvdWxkIGJlIHNhdGlzZmllZCBmb3IgdGhlIG93bmVyIG9mIHRoZSBQYXJhbWV0ZXJzIGluIGFuIGlucHV0IFBhcmFtZXRlclNldCB0byBzdGFydCBleGVjdXRpb24gdXNpbmcgdGhlIHZhbHVlcyBwcm92aWRlZCBmb3IgdGhvc2UgUGFyYW1ldGVycywgb3IgdGhlIG93bmVyIG9mIHRoZSBQYXJhbWV0ZXJzIGluIGFuIG91dHB1dCBQYXJhbWV0ZXJTZXQgdG8gZW5kIGV4ZWN1dGlvbiBwcm92aWRpbmcgdGhlIHZhbHVlcyBmb3IgdGhvc2UgUGFyYW1ldGVycywgaWYgYWxsIHByZWNvbmRpdGlvbnMgYW5kIGNvbmRpdGlvbnMgb24gaW5wdXQgUGFyYW1ldGVyU2V0cyB3ZXJlIHNhdGlzZmllZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJwYXJhbWV0ZXIiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1BhcmFtZXRlciIgZU9wcG9zaXRlPSIjLy9QYXJhbWV0ZXIvcGFyYW1ldGVyU2V0Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUGFyYW1ldGVycyBpbiB0aGUgUGFyYW1ldGVyU2V0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb25zdHJhaW50IiBlU3VwZXJUeXBlcz0iIy8vUGFja2FnZWFibGVFbGVtZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIENvbnN0cmFpbnQgaXMgYSBjb25kaXRpb24gb3IgcmVzdHJpY3Rpb24gZXhwcmVzc2VkIGluIG5hdHVyYWwgbGFuZ3VhZ2UgdGV4dCBvciBpbiBhIG1hY2hpbmUgcmVhZGFibGUgbGFuZ3VhZ2UgZm9yIHRoZSBwdXJwb3NlIG9mIGRlY2xhcmluZyBzb21lIG9mIHRoZSBzZW1hbnRpY3Mgb2YgYW4gRWxlbWVudCBvciBzZXQgb2YgRWxlbWVudHMuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImJvb2xlYW5fdmFsdWUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFZhbHVlU3BlY2lmaWNhdGlvbiBmb3IgYSBDb25zdHJhaW50IG11c3QgZXZhbHVhdGUgdG8gYSBCb29sZWFuIHZhbHVlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibm9fc2lkZV9lZmZlY3RzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkV2YWx1YXRpbmcgdGhlIFZhbHVlU3BlY2lmaWNhdGlvbiBmb3IgYSBDb25zdHJhaW50IG11c3Qgbm90IGhhdmUgc2lkZSBlZmZlY3RzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibm90X2FwcGx5X3RvX3NlbGYiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJub3QgY29uc3RyYWluZWRFbGVtZW50LT5pbmNsdWRlcyhzZWxmKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgQ29uc3RyYWludCBjYW5ub3QgYmUgYXBwbGllZCB0byBpdHNlbGYuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJjb25zdHJhaW5lZEVsZW1lbnQiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vRWxlbWVudCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBvcmRlcmVkIHNldCBvZiBFbGVtZW50cyByZWZlcmVuY2VkIGJ5IHRoaXMgQ29uc3RyYWludC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iY29udGV4dCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9OYW1lc3BhY2UiIGVPcHBvc2l0ZT0iIy8vTmFtZXNwYWNlL293bmVkUnVsZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNwZWNpZmllcyB0aGUgTmFtZXNwYWNlIHRoYXQgb3ducyB0aGUgQ29uc3RyYWludC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVkRWxlbWVudC9uYW1lc3BhY2UiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InNwZWNpZmljYXRpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vVmFsdWVTcGVjaWZpY2F0aW9uIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgY29uZGl0aW9uIHRoYXQgbXVzdCBiZSB0cnVlIHdoZW4gZXZhbHVhdGVkIGluIG9yZGVyIGZvciB0aGUgQ29uc3RyYWludCB0byBiZSBzYXRpc2ZpZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRGF0YVR5cGUiIGVTdXBlclR5cGVzPSIjLy9DbGFzc2lmaWVyIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIERhdGFUeXBlIGlzIGEgdHlwZSB3aG9zZSBpbnN0YW5jZXMgYXJlIGlkZW50aWZpZWQgb25seSBieSB0aGVpciB2YWx1ZS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY3JlYXRlT3duZWRBdHRyaWJ1dGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUHJvcGVydHkiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJDcmVhdGVzIGEgcHJvcGVydHkgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUsIHR5cGUsIGxvd2VyIGJvdW5kLCBhbmQgdXBwZXIgYm91bmQgYXMgYW4gb3duZWQgYXR0cmlidXRlIG9mIHRoaXMgZGF0YSB0eXBlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibmFtZSIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG5hbWUgZm9yIHRoZSBuZXcgYXR0cmlidXRlLCBvciBudWxsLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0idHlwZSIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSIjLy9UeXBlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB0eXBlIGZvciB0aGUgbmV3IGF0dHJpYnV0ZSwgb3IgbnVsbC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Imxvd2VyIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0ludGVnZXIiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGxvd2VyIGJvdW5kIGZvciB0aGUgbmV3IGF0dHJpYnV0ZS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InVwcGVyIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1VubGltaXRlZE5hdHVyYWwiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHVwcGVyIGJvdW5kIGZvciB0aGUgbmV3IGF0dHJpYnV0ZS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImNyZWF0ZU93bmVkT3BlcmF0aW9uIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL09wZXJhdGlvbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkNyZWF0ZXMgYW4gb3BlcmF0aW9uIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLCBwYXJhbWV0ZXIgbmFtZXMsIHBhcmFtZXRlciB0eXBlcywgYW5kIHJldHVybiB0eXBlIChvciBudWxsKSBhcyBhbiBvd25lZCBvcGVyYXRpb24gb2YgdGhpcyBkYXRhIHR5cGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJuYW1lIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbmFtZSBmb3IgdGhlIG5ldyBvcGVyYXRpb24sIG9yIG51bGwuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJwYXJhbWV0ZXJOYW1lcyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBwYXJhbWV0ZXIgbmFtZXMgZm9yIHRoZSBuZXcgb3BlcmF0aW9uLCBvciBudWxsLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icGFyYW1ldGVyVHlwZXMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1R5cGUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHBhcmFtZXRlciB0eXBlcyBmb3IgdGhlIG5ldyBvcGVyYXRpb24sIG9yIG51bGwuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJyZXR1cm5UeXBlIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9IiMvL1R5cGUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHJldHVybiB0eXBlIGZvciB0aGUgbmV3IG9wZXJhdGlvbiwgb3IgbnVsbC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im93bmVkQXR0cmlidXRlIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL1Byb3BlcnR5IiBjb250YWlubWVudD0idHJ1ZSIgZU9wcG9zaXRlPSIjLy9Qcm9wZXJ0eS9kYXRhdHlwZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBhdHRyaWJ1dGVzIG93bmVkIGJ5IHRoZSBEYXRhVHlwZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0NsYXNzaWZpZXIvYXR0cmlidXRlICMvL05hbWVzcGFjZS9vd25lZE1lbWJlciIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib3duZWRPcGVyYXRpb24iIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vT3BlcmF0aW9uIiBjb250YWlubWVudD0idHJ1ZSIgZU9wcG9zaXRlPSIjLy9PcGVyYXRpb24vZGF0YXR5cGUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgT3BlcmF0aW9ucyBvd25lZCBieSB0aGUgRGF0YVR5cGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9DbGFzc2lmaWVyL2ZlYXR1cmUgIy8vTmFtZXNwYWNlL293bmVkTWVtYmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJJbnRlcmZhY2UiIGVTdXBlclR5cGVzPSIjLy9DbGFzc2lmaWVyIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbnRlcmZhY2VzIGRlY2xhcmUgY29oZXJlbnQgc2VydmljZXMgdGhhdCBhcmUgaW1wbGVtZW50ZWQgYnkgQmVoYXZpb3JlZENsYXNzaWZpZXJzIHRoYXQgaW1wbGVtZW50IHRoZSBJbnRlcmZhY2VzIHZpYSBJbnRlcmZhY2VSZWFsaXphdGlvbnMuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InZpc2liaWxpdHkiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJmZWF0dXJlLT5mb3JBbGwodmlzaWJpbGl0eSA9IFZpc2liaWxpdHlLaW5kOjpwdWJsaWMpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHZpc2liaWxpdHkgb2YgYWxsIEZlYXR1cmVzIG93bmVkIGJ5IGFuIEludGVyZmFjZSBtdXN0IGJlIHB1YmxpYy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImNyZWF0ZU93bmVkQXR0cmlidXRlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1Byb3BlcnR5Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQ3JlYXRlcyBhIHByb3BlcnR5IHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLCB0eXBlLCBsb3dlciBib3VuZCwgYW5kIHVwcGVyIGJvdW5kIGFzIGFuIG93bmVkIGF0dHJpYnV0ZSBvZiB0aGlzIGludGVyZmFjZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im5hbWUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBuYW1lIGZvciB0aGUgbmV3IGF0dHJpYnV0ZSwgb3IgbnVsbC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InR5cGUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iIy8vVHlwZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgdHlwZSBmb3IgdGhlIG5ldyBhdHRyaWJ1dGUsIG9yIG51bGwuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJsb3dlciIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9JbnRlZ2VyIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBsb3dlciBib3VuZCBmb3IgdGhlIG5ldyBhdHRyaWJ1dGUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJ1cHBlciIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9VbmxpbWl0ZWROYXR1cmFsIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB1cHBlciBib3VuZCBmb3IgdGhlIG5ldyBhdHRyaWJ1dGUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjcmVhdGVPd25lZE9wZXJhdGlvbiIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9PcGVyYXRpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJDcmVhdGVzIGFuIG9wZXJhdGlvbiB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZSwgcGFyYW1ldGVyIG5hbWVzLCBwYXJhbWV0ZXIgdHlwZXMsIGFuZCByZXR1cm4gdHlwZSAob3IgbnVsbCkgYXMgYW4gb3duZWQgb3BlcmF0aW9uIG9mIHRoaXMgaW50ZXJmYWNlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibmFtZSIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG5hbWUgZm9yIHRoZSBuZXcgb3BlcmF0aW9uLCBvciBudWxsLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icGFyYW1ldGVyTmFtZXMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcGFyYW1ldGVyIG5hbWVzIGZvciB0aGUgbmV3IG9wZXJhdGlvbiwgb3IgbnVsbC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InBhcmFtZXRlclR5cGVzIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9UeXBlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBwYXJhbWV0ZXIgdHlwZXMgZm9yIHRoZSBuZXcgb3BlcmF0aW9uLCBvciBudWxsLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icmV0dXJuVHlwZSIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSIjLy9UeXBlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSByZXR1cm4gdHlwZSBmb3IgdGhlIG5ldyBvcGVyYXRpb24sIG9yIG51bGwuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJuZXN0ZWRDbGFzc2lmaWVyIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL0NsYXNzaWZpZXIiIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmVmZXJlbmNlcyBhbGwgdGhlIENsYXNzaWZpZXJzIHRoYXQgYXJlIGRlZmluZWQgKG5lc3RlZCkgd2l0aGluIHRoZSBJbnRlcmZhY2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lc3BhY2Uvb3duZWRNZW1iZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im93bmVkQXR0cmlidXRlIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL1Byb3BlcnR5IiBjb250YWlubWVudD0idHJ1ZSIgZU9wcG9zaXRlPSIjLy9Qcm9wZXJ0eS9pbnRlcmZhY2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgYXR0cmlidXRlcyAoaS5lLiwgdGhlIFByb3BlcnRpZXMpIG93bmVkIGJ5IHRoZSBJbnRlcmZhY2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9DbGFzc2lmaWVyL2F0dHJpYnV0ZSAjLy9OYW1lc3BhY2Uvb3duZWRNZW1iZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im93bmVkUmVjZXB0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9SZWNlcHRpb24iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmVjZXB0aW9ucyB0aGF0IG9iamVjdHMgcHJvdmlkaW5nIHRoaXMgSW50ZXJmYWNlIGFyZSB3aWxsaW5nIHRvIGFjY2VwdC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0NsYXNzaWZpZXIvZmVhdHVyZSAjLy9OYW1lc3BhY2Uvb3duZWRNZW1iZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InByb3RvY29sIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL1Byb3RvY29sU3RhdGVNYWNoaW5lIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJlZmVyZW5jZXMgYSBQcm90b2NvbFN0YXRlTWFjaGluZSBzcGVjaWZ5aW5nIHRoZSBsZWdhbCBzZXF1ZW5jZXMgb2YgdGhlIGludm9jYXRpb24gb2YgdGhlIEJlaGF2aW9yYWxGZWF0dXJlcyBkZXNjcmliZWQgaW4gdGhlIEludGVyZmFjZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVzcGFjZS9vd25lZE1lbWJlciIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVkZWZpbmVkSW50ZXJmYWNlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9JbnRlcmZhY2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZWZlcmVuY2VzIGFsbCB0aGUgSW50ZXJmYWNlcyByZWRlZmluZWQgYnkgdGhpcyBJbnRlcmZhY2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9DbGFzc2lmaWVyL3JlZGVmaW5lZENsYXNzaWZpZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im93bmVkT3BlcmF0aW9uIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL09wZXJhdGlvbiIgY29udGFpbm1lbnQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vT3BlcmF0aW9uL2ludGVyZmFjZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBPcGVyYXRpb25zIG93bmVkIGJ5IHRoZSBJbnRlcmZhY2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9DbGFzc2lmaWVyL2ZlYXR1cmUgIy8vTmFtZXNwYWNlL293bmVkTWVtYmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJSZWNlcHRpb24iIGVTdXBlclR5cGVzPSIjLy9CZWhhdmlvcmFsRmVhdHVyZSI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBSZWNlcHRpb24gaXMgYSBkZWNsYXJhdGlvbiBzdGF0aW5nIHRoYXQgYSBDbGFzc2lmaWVyIGlzIHByZXBhcmVkIHRvIHJlYWN0IHRvIHRoZSByZWNlaXB0IG9mIGEgU2lnbmFsLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzYW1lX25hbWVfYXNfc2lnbmFsIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibmFtZSA9IHNpZ25hbC5uYW1lIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBSZWNlcHRpb24gaGFzIHRoZSBzYW1lIG5hbWUgYXMgaXRzIHNpZ25hbCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ic2FtZV9zdHJ1Y3R1cmVfYXNfc2lnbmFsIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ic2lnbmFsLm93bmVkQXR0cmlidXRlLT5zaXplKCkgPSBvd25lZFBhcmFtZXRlci0+c2l6ZSgpIGFuZCYjeEQ7JiN4QTtTZXF1ZW5jZXsxLi5zaWduYWwub3duZWRBdHRyaWJ1dGUtPnNpemUoKX0tPmZvckFsbCggaSB8ICYjeEQ7JiN4QTsgICAgb3duZWRQYXJhbWV0ZXItPmF0KGkpLmRpcmVjdGlvbiA9IFBhcmFtZXRlckRpcmVjdGlvbktpbmQ6Ol8naW4nIGFuZCAmI3hEOyYjeEE7ICAgIG93bmVkUGFyYW1ldGVyLT5hdChpKS5uYW1lID0gc2lnbmFsLm93bmVkQXR0cmlidXRlLT5hdChpKS5uYW1lIGFuZCYjeEQ7JiN4QTsgICAgb3duZWRQYXJhbWV0ZXItPmF0KGkpLnR5cGUgPSBzaWduYWwub3duZWRBdHRyaWJ1dGUtPmF0KGkpLnR5cGUgYW5kJiN4RDsmI3hBOyAgICBvd25lZFBhcmFtZXRlci0+YXQoaSkubG93ZXJCb3VuZCgpID0gc2lnbmFsLm93bmVkQXR0cmlidXRlLT5hdChpKS5sb3dlckJvdW5kKCkgYW5kJiN4RDsmI3hBOyAgICBvd25lZFBhcmFtZXRlci0+YXQoaSkudXBwZXJCb3VuZCgpID0gc2lnbmFsLm93bmVkQXR0cmlidXRlLT5hdChpKS51cHBlckJvdW5kKCkmI3hEOyYjeEE7KSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgUmVjZXB0aW9uJ3MgcGFyYW1ldGVycyBtYXRjaCB0aGUgb3duZWRBdHRyaWJ1dGVzIG9mIGl0cyBzaWduYWwgYnkgbmFtZSwgdHlwZSwgYW5kIG11bHRpcGxpY2l0eSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ic2lnbmFsIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1NpZ25hbCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBTaWduYWwgdGhhdCB0aGlzIFJlY2VwdGlvbiBoYW5kbGVzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTaWduYWwiIGVTdXBlclR5cGVzPSIjLy9DbGFzc2lmaWVyIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFNpZ25hbCBpcyBhIHNwZWNpZmljYXRpb24gb2YgYSBraW5kIG9mIGNvbW11bmljYXRpb24gYmV0d2VlbiBvYmplY3RzIGluIHdoaWNoIGEgcmVhY3Rpb24gaXMgYXN5bmNocm9ub3VzbHkgdHJpZ2dlcmVkIGluIHRoZSByZWNlaXZlciB3aXRob3V0IGEgcmVwbHkuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImNyZWF0ZU93bmVkQXR0cmlidXRlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1Byb3BlcnR5Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQ3JlYXRlcyBhIHByb3BlcnR5IHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLCB0eXBlLCBsb3dlciBib3VuZCwgYW5kIHVwcGVyIGJvdW5kIGFzIGFuIG93bmVkIGF0dHJpYnV0ZSBvZiB0aGlzIHNpZ25hbC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im5hbWUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBuYW1lIGZvciB0aGUgbmV3IGF0dHJpYnV0ZSwgb3IgbnVsbC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InR5cGUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iIy8vVHlwZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgdHlwZSBmb3IgdGhlIG5ldyBhdHRyaWJ1dGUsIG9yIG51bGwuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJsb3dlciIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9JbnRlZ2VyIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBsb3dlciBib3VuZCBmb3IgdGhlIG5ldyBhdHRyaWJ1dGUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJ1cHBlciIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9VbmxpbWl0ZWROYXR1cmFsIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB1cHBlciBib3VuZCBmb3IgdGhlIG5ldyBhdHRyaWJ1dGUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJvd25lZEF0dHJpYnV0ZSIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9Qcm9wZXJ0eSIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgYXR0cmlidXRlcyBvd25lZCBieSB0aGUgU2lnbmFsLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQ2xhc3NpZmllci9hdHRyaWJ1dGUgIy8vTmFtZXNwYWNlL293bmVkTWVtYmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQcm90b2NvbFN0YXRlTWFjaGluZSIgZVN1cGVyVHlwZXM9IiMvL1N0YXRlTWFjaGluZSI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBQcm90b2NvbFN0YXRlTWFjaGluZSBpcyBhbHdheXMgZGVmaW5lZCBpbiB0aGUgY29udGV4dCBvZiBhIENsYXNzaWZpZXIuIEl0IHNwZWNpZmllcyB3aGljaCBCZWhhdmlvcmFsRmVhdHVyZXMgb2YgdGhlIENsYXNzaWZpZXIgY2FuIGJlIGNhbGxlZCBpbiB3aGljaCBTdGF0ZSBhbmQgdW5kZXIgd2hpY2ggY29uZGl0aW9ucywgdGh1cyBzcGVjaWZ5aW5nIHRoZSBhbGxvd2VkIGludm9jYXRpb24gc2VxdWVuY2VzIG9uIHRoZSBDbGFzc2lmaWVyJ3MgQmVoYXZpb3JhbEZlYXR1cmVzLiBBIFByb3RvY29sU3RhdGVNYWNoaW5lIHNwZWNpZmllcyB0aGUgcG9zc2libGUgYW5kIHBlcm1pdHRlZCBUcmFuc2l0aW9ucyBvbiB0aGUgaW5zdGFuY2VzIG9mIGl0cyBjb250ZXh0IENsYXNzaWZpZXIsIHRvZ2V0aGVyIHdpdGggdGhlIEJlaGF2aW9yYWxGZWF0dXJlcyB0aGF0IGNhcnJ5IHRoZSBUcmFuc2l0aW9ucy4gSW4gdGhpcyBtYW5uZXIsIGFuIGluc3RhbmNlIGxpZmVjeWNsZSBjYW4gYmUgc3BlY2lmaWVkIGZvciBhIENsYXNzaWZpZXIsIGJ5IGRlZmluaW5nIHRoZSBvcmRlciBpbiB3aGljaCB0aGUgQmVoYXZpb3JhbEZlYXR1cmVzIGNhbiBiZSBhY3RpdmF0ZWQgYW5kIHRoZSBTdGF0ZXMgdGhyb3VnaCB3aGljaCBhbiBpbnN0YW5jZSBwcm9ncmVzc2VzIGR1cmluZyBpdHMgZXhpc3RlbmNlLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJkdXBsaWNhdGVzIj4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgbmFtZT0iY2xhc3NpZmllcl9jb250ZXh0IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Il8nY29udGV4dCcgJmx0Oz4gbnVsbCBhbmQgc3BlY2lmaWNhdGlvbiA9IG51bGwiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFByb3RvY29sU3RhdGVNYWNoaW5lIG11c3Qgb25seSBoYXZlIGEgQ2xhc3NpZmllciBjb250ZXh0LCBub3QgYSBCZWhhdmlvcmFsRmVhdHVyZSBjb250ZXh0LiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vU3RhdGVNYWNoaW5lL2NsYXNzaWZpZXJfY29udGV4dCIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDwvY29udGVudHM+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImRlZXBfb3Jfc2hhbGxvd19oaXN0b3J5IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icmVnaW9uLT5mb3JBbGwgKHIgfCByLnN1YnZlcnRleC0+Zm9yQWxsICh2IHwgdi5vY2xJc0tpbmRPZihQc2V1ZG9zdGF0ZSkgaW1wbGllcyYjeEE7KCh2Lm9jbEFzVHlwZShQc2V1ZG9zdGF0ZSkua2luZCAmbHQ7PiAgUHNldWRvc3RhdGVLaW5kOjpkZWVwSGlzdG9yeSkgYW5kICh2Lm9jbEFzVHlwZShQc2V1ZG9zdGF0ZSkua2luZCAmbHQ7PiBQc2V1ZG9zdGF0ZUtpbmQ6OnNoYWxsb3dIaXN0b3J5KSkpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlByb3RvY29sU3RhdGVNYWNoaW5lcyBjYW5ub3QgaGF2ZSBkZWVwIG9yIHNoYWxsb3cgaGlzdG9yeSBQc2V1ZG9zdGF0ZXMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJlbnRyeV9leGl0X2RvIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icmVnaW9uLT5mb3JBbGwociB8IHIuc3VidmVydGV4LT5mb3JBbGwodiB8IHYub2NsSXNLaW5kT2YoU3RhdGUpIGltcGxpZXMmI3hBOyh2Lm9jbEFzVHlwZShTdGF0ZSkuZW50cnktPmlzRW1wdHkoKSBhbmQgdi5vY2xBc1R5cGUoU3RhdGUpLmV4aXQtPmlzRW1wdHkoKSBhbmQgdi5vY2xBc1R5cGUoU3RhdGUpLmRvQWN0aXZpdHktPmlzRW1wdHkoKSkpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBzdGF0ZXMgb2YgYSBQcm90b2NvbFN0YXRlTWFjaGluZSBjYW5ub3QgaGF2ZSBlbnRyeSwgZXhpdCwgb3IgZG8gYWN0aXZpdHkgQmVoYXZpb3JzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0icHJvdG9jb2xfdHJhbnNpdGlvbnMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJyZWdpb24tPmZvckFsbChyIHwgci50cmFuc2l0aW9uLT5mb3JBbGwodCB8IHQub2NsSXNUeXBlT2YoUHJvdG9jb2xUcmFuc2l0aW9uKSkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQWxsIFRyYW5zaXRpb25zIG9mIGEgUHJvdG9jb2xTdGF0ZU1hY2hpbmUgbXVzdCBiZSBQcm90b2NvbFRyYW5zaXRpb25zLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iY29uZm9ybWFuY2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1Byb3RvY29sQ29uZm9ybWFuY2UiIGNvbnRhaW5tZW50PSJ0cnVlIiBlT3Bwb3NpdGU9IiMvL1Byb3RvY29sQ29uZm9ybWFuY2Uvc3BlY2lmaWNNYWNoaW5lIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQ29uZm9ybWFuY2UgYmV0d2VlbiBQcm90b2NvbFN0YXRlTWFjaGluZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlN0YXRlTWFjaGluZSIgZVN1cGVyVHlwZXM9IiMvL0JlaGF2aW9yIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTdGF0ZU1hY2hpbmVzIGNhbiBiZSB1c2VkIHRvIGV4cHJlc3MgZXZlbnQtZHJpdmVuIGJlaGF2aW9ycyBvZiBwYXJ0cyBvZiBhIHN5c3RlbS4gQmVoYXZpb3IgaXMgbW9kZWxlZCBhcyBhIHRyYXZlcnNhbCBvZiBhIGdyYXBoIG9mIFZlcnRpY2VzIGludGVyY29ubmVjdGVkIGJ5IG9uZSBvciBtb3JlIGpvaW5lZCBUcmFuc2l0aW9uIGFyY3MgdGhhdCBhcmUgdHJpZ2dlcmVkIGJ5IHRoZSBkaXNwYXRjaGluZyBvZiBzdWNjZXNzaXZlIEV2ZW50IG9jY3VycmVuY2VzLiBEdXJpbmcgdGhpcyB0cmF2ZXJzYWwsIHRoZSBTdGF0ZU1hY2hpbmUgbWF5IGV4ZWN1dGUgYSBzZXF1ZW5jZSBvZiBCZWhhdmlvcnMgYXNzb2NpYXRlZCB3aXRoIHZhcmlvdXMgZWxlbWVudHMgb2YgdGhlIFN0YXRlTWFjaGluZS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iZHVwbGljYXRlcyI+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIG5hbWU9ImlzQ29uc2lzdGVudFdpdGgiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBpc0NvbnNpc3RlbnRXaXRoKCkgc3BlY2lmaWVzIHRoYXQgYSByZWRlZmluaW5nIFN0YXRlTWFjaGluZSBpcyBjb25zaXN0ZW50IHdpdGggYSByZWRlZmluZWQgU3RhdGVNYWNoaW5lIHByb3ZpZGVkIHRoYXQgdGhlIHJlZGVmaW5pbmcgU3RhdGVNYWNoaW5lIGlzIGFuIGV4dGVuc2lvbiBvZiB0aGUgcmVkZWZpbmVkIFN0YXRlTWFjaGluZSA6IFJlZ2lvbnMgYXJlIGluaGVyaXRlZCBhbmQgUmVnaW9ucyBjYW4gYmUgYWRkZWQsIGluaGVyaXRlZCBSZWdpb25zIGNhbiBiZSByZWRlZmluZWQuIEluIGNhc2Ugb2YgbXVsdGlwbGUgcmVkZWZpbmluZyBTdGF0ZU1hY2hpbmUsIGV4dGVuc2lvbiBpbXBsaWVzIHRoYXQgdGhlIHJlZGVmaW5pbmcgU3RhdGVNYWNoaW5lIGdldHMgb3J0aG9nb25hbCBSZWdpb25zIGZvciBlYWNoIG9mIHRoZSByZWRlZmluZWQgU3RhdGVNYWNoaW5lLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vUmVkZWZpbmFibGVFbGVtZW50L2lzQ29uc2lzdGVudFdpdGgiLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iLS0gdGhlIGZvbGxvd2luZyBpcyBtZXJlbHkgYSBkZWZhdWx0IGJvZHk7IGl0IGlzIGV4cGVjdGVkIHRoYXQgdGhlIHNwZWNpZmljIGZvcm0gb2YgdGhpcyBjb25zdHJhaW50IHdpbGwgYmUgc3BlY2lmaWVkIGJ5IHByb2ZpbGVzJiN4RDsmI3hBO3RydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJyZWRlZmluaW5nRWxlbWVudCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9SZWRlZmluYWJsZUVsZW1lbnQiLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIG5hbWU9ImlzUmVkZWZpbml0aW9uQ29udGV4dFZhbGlkIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgaXNSZWRlZmluaXRpb25Db250ZXh0VmFsaWQoKSBzcGVjaWZpZXMgd2hldGhlciB0aGUgcmVkZWZpbml0aW9uIGNvbnRleHQgb2YgYSBTdGF0ZU1hY2hpbmUgaXMgcHJvcGVybHkgcmVsYXRlZCB0byB0aGUgcmVkZWZpbml0aW9uIGNvbnRleHRzIG9mIHRoZSBzcGVjaWZpZWQgU3RhdGVNYWNoaW5lIHRvIGFsbG93IHRoaXMgZWxlbWVudCB0byByZWRlZmluZSB0aGUgb3RoZXIuIFRoZSBjb250ZXh0IENsYXNzaWZpZXIgb2YgYSByZWRlZmluaW5nIFN0YXRlTWFjaGluZSBtdXN0IHJlZGVmaW5lIHRoZSBjb250ZXh0IENsYXNzaWZpZXIgb2YgdGhlIHJlZGVmaW5lZCBTdGF0ZU1hY2hpbmUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9SZWRlZmluYWJsZUVsZW1lbnQvaXNSZWRlZmluaXRpb25Db250ZXh0VmFsaWQiLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaWYgcmVkZWZpbmVkRWxlbWVudC5vY2xJc0tpbmRPZihTdGF0ZU1hY2hpbmUpIHRoZW4mI3hEOyYjeEE7ICBsZXQgcmVkZWZpbmVkU3RhdGVNYWNoaW5lIDogU3RhdGVNYWNoaW5lID0gcmVkZWZpbmVkRWxlbWVudC5vY2xBc1R5cGUoU3RhdGVNYWNoaW5lKSBpbiYjeEQ7JiN4QTsgICAgc2VsZi5fJ2NvbnRleHQnKCkub2NsQXNUeXBlKEJlaGF2aW9yZWRDbGFzc2lmaWVyKS5yZWRlZmluZWRDbGFzc2lmaWVyLT4mI3hEOyYjeEE7ICAgICAgaW5jbHVkZXMocmVkZWZpbmVkU3RhdGVNYWNoaW5lLl8nY29udGV4dCcoKSkmI3hEOyYjeEE7ZWxzZSYjeEQ7JiN4QTsgIGZhbHNlJiN4RDsmI3hBO2VuZGlmIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icmVkZWZpbmVkRWxlbWVudCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9SZWRlZmluYWJsZUVsZW1lbnQiLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImNvbm5lY3Rpb25fcG9pbnRzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iY29ubmVjdGlvblBvaW50LT5mb3JBbGwgKGtpbmQgPSBQc2V1ZG9zdGF0ZUtpbmQ6OmVudHJ5UG9pbnQgb3Iga2luZCA9IFBzZXVkb3N0YXRlS2luZDo6ZXhpdFBvaW50KSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjb25uZWN0aW9uIHBvaW50cyBvZiBhIFN0YXRlTWFjaGluZSBhcmUgUHNldWRvc3RhdGVzIG9mIGtpbmQgZW50cnkgcG9pbnQgb3IgZXhpdCBwb2ludC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImNsYXNzaWZpZXJfY29udGV4dCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Il8nY29udGV4dCcgJmx0Oz4gbnVsbCBpbXBsaWVzIG5vdCBfJ2NvbnRleHQnLm9jbElzS2luZE9mKEludGVyZmFjZSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgQ2xhc3NpZmllciBjb250ZXh0IG9mIGEgU3RhdGVNYWNoaW5lIGNhbm5vdCBiZSBhbiBJbnRlcmZhY2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJtZXRob2QiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzcGVjaWZpY2F0aW9uICZsdDs+IG51bGwgaW1wbGllcyBjb25uZWN0aW9uUG9pbnQtPmlzRW1wdHkoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgU3RhdGVNYWNoaW5lIGFzIHRoZSBtZXRob2QgZm9yIGEgQmVoYXZpb3JhbEZlYXR1cmUgY2Fubm90IGhhdmUgZW50cnkvZXhpdCBjb25uZWN0aW9uIHBvaW50cy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImNvbnRleHRfY2xhc3NpZmllciIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InNwZWNpZmljYXRpb24gJmx0Oz4gbnVsbCBpbXBsaWVzICggXydjb250ZXh0JyAmbHQ7PiBudWxsIGFuZCBzcGVjaWZpY2F0aW9uLmZlYXR1cmluZ0NsYXNzaWZpZXItPmV4aXN0cyhjIHwgYyA9IF8nY29udGV4dCcpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjb250ZXh0IENsYXNzaWZpZXIgb2YgdGhlIG1ldGhvZCBTdGF0ZU1hY2hpbmUgb2YgYSBCZWhhdmlvcmFsRmVhdHVyZSBtdXN0IGJlIHRoZSBDbGFzc2lmaWVyIHRoYXQgb3ducyB0aGUgQmVoYXZpb3JhbEZlYXR1cmUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJMQ0EiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUmVnaW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG9wZXJhdGlvbiBMQ0EoczEsczIpIHJldHVybnMgdGhlIFJlZ2lvbiB0aGF0IGlzIHRoZSBsZWFzdCBjb21tb24gYW5jZXN0b3Igb2YgVmVydGljZXMgczEgYW5kIHMyLCBiYXNlZCBvbiB0aGUgU3RhdGVNYWNoaW5lIGNvbnRhaW5tZW50IGhpZXJhcmNoeS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlmIGFuY2VzdG9yKHMxLCBzMikgdGhlbiAmI3hEOyYjeEE7ICAgIHMyLmNvbnRhaW5lciYjeEQ7JiN4QTtlbHNlJiN4RDsmI3hBOyYjeDk7aWYgYW5jZXN0b3IoczIsIHMxKSB0aGVuJiN4RDsmI3hBOyYjeDk7ICAgIHMxLmNvbnRhaW5lciAmI3hEOyYjeEE7JiN4OTtlbHNlICYjeEQ7JiN4QTsmI3g5OyAgICBMQ0EoczEuY29udGFpbmVyLnN0YXRlLCBzMi5jb250YWluZXIuc3RhdGUpJiN4RDsmI3hBOyYjeDk7ZW5kaWYmI3hEOyYjeEE7ZW5kaWYiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InMxIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1ZlcnRleCIvPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InMyIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1ZlcnRleCIvPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImFuY2VzdG9yIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgYW5jZXN0b3IoczEsIHMyKSBjaGVja3Mgd2hldGhlciBWZXJ0ZXggczIgaXMgYW4gYW5jZXN0b3Igb2YgVmVydGV4IHMxLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaWYgKHMyID0gczEpIHRoZW4gJiN4RDsmI3hBOyYjeDk7dHJ1ZSAmI3hEOyYjeEE7ZWxzZSAmI3hEOyYjeEE7JiN4OTtpZiBzMS5jb250YWluZXIuc3RhdGVNYWNoaW5lLT5ub3RFbXB0eSgpIHRoZW4gJiN4RDsmI3hBOyYjeDk7ICAgIHRydWUmI3hEOyYjeEE7JiN4OTtlbHNlICYjeEQ7JiN4QTsmI3g5OyAgICBpZiBzMi5jb250YWluZXIuc3RhdGVNYWNoaW5lLT5ub3RFbXB0eSgpIHRoZW4gJiN4RDsmI3hBOyYjeDk7ICAgICAgICBmYWxzZSYjeEQ7JiN4QTsmI3g5OyAgICBlbHNlJiN4RDsmI3hBOyYjeDk7ICAgICAgICBhbmNlc3RvcihzMSwgczIuY29udGFpbmVyLnN0YXRlKSYjeEQ7JiN4QTsmI3g5OyAgICAgZW5kaWYmI3hEOyYjeEE7JiN4OTsgZW5kaWYmI3hEOyYjeEE7ZW5kaWYiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InMxIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1ZlcnRleCIvPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InMyIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1ZlcnRleCIvPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9IkxDQVN0YXRlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1N0YXRlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhpcyB1dGlsaXR5IGZ1bmNpdG9uIGlzIGxpa2UgdGhlIExDQSwgZXhjZXB0IHRoYXQgaXQgcmV0dXJucyB0aGUgbmVhcmVzdCBjb21wb3NpdGUgU3RhdGUgdGhhdCBjb250YWlucyBib3RoIGlucHV0IFZlcnRpY2VzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaWYgdjIub2NsSXNUeXBlT2YoU3RhdGUpIGFuZCBhbmNlc3Rvcih2MSwgdjIpIHRoZW4mI3hEOyYjeEE7JiN4OTt2Mi5vY2xBc1R5cGUoU3RhdGUpJiN4RDsmI3hBO2Vsc2UgaWYgdjEub2NsSXNUeXBlT2YoU3RhdGUpIGFuZCBhbmNlc3Rvcih2MiwgdjEpIHRoZW4mI3hEOyYjeEE7JiN4OTt2MS5vY2xBc1R5cGUoU3RhdGUpJiN4RDsmI3hBO2Vsc2UgaWYgKHYxLmNvbnRhaW5lci5zdGF0ZS0+aXNFbXB0eSgpIG9yIHYyLmNvbnRhaW5lci5zdGF0ZS0+aXNFbXB0eSgpKSB0aGVuICYjeEQ7JiN4QTsmI3g5O251bGwub2NsQXNUeXBlKFN0YXRlKSYjeEQ7JiN4QTtlbHNlIExDQVN0YXRlKHYxLmNvbnRhaW5lci5zdGF0ZSwgdjIuY29udGFpbmVyLnN0YXRlKSYjeEQ7JiN4QTtlbmRpZiBlbmRpZiBlbmRpZiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0idjEiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vVmVydGV4Ii8+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0idjIiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vVmVydGV4Ii8+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iY29ubmVjdGlvblBvaW50IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Qc2V1ZG9zdGF0ZSIgY29udGFpbm1lbnQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vUHNldWRvc3RhdGUvc3RhdGVNYWNoaW5lIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNvbm5lY3Rpb24gcG9pbnRzIGRlZmluZWQgZm9yIHRoaXMgU3RhdGVNYWNoaW5lLiBUaGV5IHJlcHJlc2VudCB0aGUgaW50ZXJmYWNlIG9mIHRoZSBTdGF0ZU1hY2hpbmUgd2hlbiB1c2VkIGFzIHBhcnQgb2Ygc3VibWFjaGluZSBTdGF0ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vTmFtZXNwYWNlL293bmVkTWVtYmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJzdWJtYWNoaW5lU3RhdGUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1N0YXRlIiBlT3Bwb3NpdGU9IiMvL1N0YXRlL3N1Ym1hY2hpbmUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZWZlcmVuY2VzIHRoZSBzdWJtYWNoaW5lKHMpIGluIGNhc2Ugb2YgYSBzdWJtYWNoaW5lIFN0YXRlLiBNdWx0aXBsZSBtYWNoaW5lcyBhcmUgcmVmZXJlbmNlZCBpbiBjYXNlIG9mIGEgY29uY3VycmVudCBTdGF0ZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVnaW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9SZWdpb24iIGNvbnRhaW5tZW50PSJ0cnVlIiBlT3Bwb3NpdGU9IiMvL1JlZ2lvbi9zdGF0ZU1hY2hpbmUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgUmVnaW9ucyBvd25lZCBkaXJlY3RseSBieSB0aGUgU3RhdGVNYWNoaW5lLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vTmFtZXNwYWNlL293bmVkTWVtYmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJleHRlbmRlZFN0YXRlTWFjaGluZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vU3RhdGVNYWNoaW5lIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFN0YXRlTWFjaGluZXMgb2Ygd2hpY2ggdGhpcyBpcyBhbiBleHRlbnNpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL0JlaGF2aW9yL3JlZGVmaW5lZEJlaGF2aW9yIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQc2V1ZG9zdGF0ZSIgZVN1cGVyVHlwZXM9IiMvL1ZlcnRleCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBQc2V1ZG9zdGF0ZSBpcyBhbiBhYnN0cmFjdGlvbiB0aGF0IGVuY29tcGFzc2VzIGRpZmZlcmVudCB0eXBlcyBvZiB0cmFuc2llbnQgVmVydGljZXMgaW4gdGhlIFN0YXRlTWFjaGluZSBncmFwaC4gQSBTdGF0ZU1hY2hpbmUgaW5zdGFuY2UgbmV2ZXIgY29tZXMgdG8gcmVzdCBpbiBhIFBzZXVkb3N0YXRlLCBpbnN0ZWFkLCBpdCB3aWxsIGV4aXQgYW5kIGVudGVyIHRoZSBQc2V1ZG9zdGF0ZSB3aXRoaW4gYSBzaW5nbGUgcnVuLXRvLWNvbXBsZXRpb24gc3RlcC4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0idHJhbnNpdGlvbnNfb3V0Z29pbmciIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIoa2luZCA9IFBzZXVkb3N0YXRlS2luZDo6Zm9yaykgaW1wbGllcyYjeEQ7JiN4QTsmI3hEOyYjeEE7LS0gZm9yIGFueSBwYWlyIG9mIG91dGdvaW5nIHRyYW5zaXRpb25zIHRoZXJlIGV4aXN0cyBhbiBvcnRob2dvbmFsIHN0YXRlIHdoaWNoIGNvbnRhaW5zIHRoZSB0YXJnZXRzIG9mIHRoZXNlIHRyYW5zaXRpb25zICYjeEQ7JiN4QTstLSBzdWNoIHRoYXQgdGhlc2UgdGFyZ2V0cyBiZWxvbmcgdG8gZGlmZmVyZW50IHJlZ2lvbnMgb2YgdGhhdCBvcnRob2dvbmFsIHN0YXRlICYjeEQ7JiN4QTsmI3hEOyYjeEE7b3V0Z29pbmctPmZvckFsbCh0MTpUcmFuc2l0aW9uLCB0MjpUcmFuc2l0aW9uIHwgbGV0IGNvbnRTdGF0ZTpTdGF0ZSA9IGNvbnRhaW5pbmdTdGF0ZU1hY2hpbmUoKS5MQ0FTdGF0ZSh0MS50YXJnZXQsIHQyLnRhcmdldCkgaW4mI3hEOyYjeEE7JiN4OTsoKGNvbnRTdGF0ZSAmbHQ7PiBudWxsKSBhbmQgKGNvbnRTdGF0ZS5yZWdpb24mI3hEOyYjeEE7JiN4OTsmI3g5Oy0+ZXhpc3RzKHIxOlJlZ2lvbiwgcjI6IFJlZ2lvbiB8IChyMSAmbHQ7PiByMikgYW5kIHQxLnRhcmdldC5pc0NvbnRhaW5lZEluUmVnaW9uKHIxKSBhbmQgdDIudGFyZ2V0LmlzQ29udGFpbmVkSW5SZWdpb24ocjIpKSkpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFsbCB0cmFuc2l0aW9ucyBvdXRnb2luZyBhIGZvcmsgdmVydGV4IG11c3QgdGFyZ2V0IHN0YXRlcyBpbiBkaWZmZXJlbnQgcmVnaW9ucyBvZiBhbiBvcnRob2dvbmFsIHN0YXRlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY2hvaWNlX3ZlcnRleCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9IihraW5kID0gUHNldWRvc3RhdGVLaW5kOjpjaG9pY2UpIGltcGxpZXMgKGluY29taW5nLT5zaXplKCkgPj0gMSBhbmQgb3V0Z29pbmctPnNpemUoKSA+PSAxKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkluIGEgY29tcGxldGUgc3RhdGVtYWNoaW5lLCBhIGNob2ljZSBWZXJ0ZXggbXVzdCBoYXZlIGF0IGxlYXN0IG9uZSBpbmNvbWluZyBhbmQgb25lIG91dGdvaW5nIFRyYW5zaXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJvdXRnb2luZ19mcm9tX2luaXRpYWwiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIoa2luZCA9IFBzZXVkb3N0YXRlS2luZDo6aW5pdGlhbCkgaW1wbGllcyAob3V0Z29pbmcuZ3VhcmQgPSBudWxsIGFuZCBvdXRnb2luZy50cmlnZ2VyLT5pc0VtcHR5KCkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG91dGdvaW5nIFRyYW5zaXRpb24gZnJvbSBhbiBpbml0aWFsIHZlcnRleCBtYXkgaGF2ZSBhIGJlaGF2aW9yLCBidXQgbm90IGEgdHJpZ2dlciBvciBhIGd1YXJkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iam9pbl92ZXJ0ZXgiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIoa2luZCA9IFBzZXVkb3N0YXRlS2luZDo6am9pbikgaW1wbGllcyAob3V0Z29pbmctPnNpemUoKSA9IDEgYW5kIGluY29taW5nLT5zaXplKCkgPj0gMikiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbiBhIGNvbXBsZXRlIFN0YXRlTWFjaGluZSwgYSBqb2luIFZlcnRleCBtdXN0IGhhdmUgYXQgbGVhc3QgdHdvIGluY29taW5nIFRyYW5zaXRpb25zIGFuZCBleGFjdGx5IG9uZSBvdXRnb2luZyBUcmFuc2l0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ianVuY3Rpb25fdmVydGV4IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iKGtpbmQgPSBQc2V1ZG9zdGF0ZUtpbmQ6Omp1bmN0aW9uKSBpbXBsaWVzIChpbmNvbWluZy0+c2l6ZSgpID49IDEgYW5kIG91dGdvaW5nLT5zaXplKCkgPj0gMSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbiBhIGNvbXBsZXRlIFN0YXRlTWFjaGluZSwgYSBqdW5jdGlvbiBWZXJ0ZXggbXVzdCBoYXZlIGF0IGxlYXN0IG9uZSBpbmNvbWluZyBhbmQgb25lIG91dGdvaW5nIFRyYW5zaXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJoaXN0b3J5X3ZlcnRpY2VzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iKChraW5kID0gUHNldWRvc3RhdGVLaW5kOjpkZWVwSGlzdG9yeSkgb3IgKGtpbmQgPSBQc2V1ZG9zdGF0ZUtpbmQ6OnNoYWxsb3dIaXN0b3J5KSkgaW1wbGllcyAob3V0Z29pbmctPnNpemUoKSAmbHQ7PSAxKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9Ikhpc3RvcnkgVmVydGljZXMgY2FuIGhhdmUgYXQgbW9zdCBvbmUgb3V0Z29pbmcgVHJhbnNpdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImluaXRpYWxfdmVydGV4IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iKGtpbmQgPSBQc2V1ZG9zdGF0ZUtpbmQ6OmluaXRpYWwpIGltcGxpZXMgKG91dGdvaW5nLT5zaXplKCkgJmx0Oz0gMSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBpbml0aWFsIFZlcnRleCBjYW4gaGF2ZSBhdCBtb3N0IG9uZSBvdXRnb2luZyBUcmFuc2l0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZm9ya192ZXJ0ZXgiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIoa2luZCA9IFBzZXVkb3N0YXRlS2luZDo6Zm9yaykgaW1wbGllcyAoaW5jb21pbmctPnNpemUoKSA9IDEgYW5kIG91dGdvaW5nLT5zaXplKCkgPj0gMikiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbiBhIGNvbXBsZXRlIFN0YXRlTWFjaGluZSwgYSBmb3JrIFZlcnRleCBtdXN0IGhhdmUgYXQgbGVhc3QgdHdvIG91dGdvaW5nIFRyYW5zaXRpb25zIGFuZCBleGFjdGx5IG9uZSBpbmNvbWluZyBUcmFuc2l0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0idHJhbnNpdGlvbnNfaW5jb21pbmciIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIoa2luZCA9IFBzZXVkb3N0YXRlS2luZDo6am9pbikgaW1wbGllcyYjeEE7JiN4QTstLSBmb3IgYW55IHBhaXIgb2YgaW5jb21pbmcgdHJhbnNpdGlvbnMgdGhlcmUgZXhpc3RzIGFuIG9ydGhvZ29uYWwgc3RhdGUgd2hpY2ggY29udGFpbnMgdGhlIHNvdXJjZSB2ZXRpY2VzIG9mIHRoZXNlIHRyYW5zaXRpb25zICYjeEE7LS0gc3VjaCB0aGF0IHRoZXNlIHNvdXJjZSB2ZXJ0aWNlcyBiZWxvbmcgdG8gZGlmZmVyZW50IHJlZ2lvbnMgb2YgdGhhdCBvcnRob2dvbmFsIHN0YXRlICYjeEE7JiN4QTtpbmNvbWluZy0+Zm9yQWxsKHQxOlRyYW5zaXRpb24sIHQyOlRyYW5zaXRpb24gfCBsZXQgY29udFN0YXRlOlN0YXRlID0gY29udGFpbmluZ1N0YXRlTWFjaGluZSgpLkxDQVN0YXRlKHQxLnNvdXJjZSwgdDIuc291cmNlKSBpbiYjeEE7JiN4OTsoKGNvbnRTdGF0ZSAmbHQ7PiBudWxsKSBhbmQgKGNvbnRTdGF0ZS5yZWdpb24mI3hBOyYjeDk7JiN4OTstPmV4aXN0cyhyMTpSZWdpb24sIHIyOiBSZWdpb24gfCAocjEgJmx0Oz4gcjIpIGFuZCB0MS5zb3VyY2UuaXNDb250YWluZWRJblJlZ2lvbihyMSkgYW5kIHQyLnNvdXJjZS5pc0NvbnRhaW5lZEluUmVnaW9uKHIyKSkpKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbGwgVHJhbnNpdGlvbnMgaW5jb21pbmcgYSBqb2luIFZlcnRleCBtdXN0IG9yaWdpbmF0ZSBpbiBkaWZmZXJlbnQgUmVnaW9ucyBvZiBhbiBvcnRob2dvbmFsIFN0YXRlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ic3RhdGUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vU3RhdGUiIGVPcHBvc2l0ZT0iIy8vU3RhdGUvY29ubmVjdGlvblBvaW50Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFN0YXRlIHRoYXQgb3ducyB0aGlzIFBzZXVkb3N0YXRlIGFuZCBpbiB3aGljaCBpdCBhcHBlYXJzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vTmFtZWRFbGVtZW50L25hbWVzcGFjZSIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ia2luZCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiCisgICAgICAgIGVUeXBlPSIjLy9Qc2V1ZG9zdGF0ZUtpbmQiIGRlZmF1bHRWYWx1ZUxpdGVyYWw9ImluaXRpYWwiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJEZXRlcm1pbmVzIHRoZSBwcmVjaXNlIHR5cGUgb2YgdGhlIFBzZXVkb3N0YXRlIGFuZCBjYW4gYmUgb25lIG9mOiBlbnRyeVBvaW50LCBleGl0UG9pbnQsIGluaXRpYWwsIGRlZXBIaXN0b3J5LCBzaGFsbG93SGlzdG9yeSwgam9pbiwgZm9yaywganVuY3Rpb24sIHRlcm1pbmF0ZSBvciBjaG9pY2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InN0YXRlTWFjaGluZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9TdGF0ZU1hY2hpbmUiIGVPcHBvc2l0ZT0iIy8vU3RhdGVNYWNoaW5lL2Nvbm5lY3Rpb25Qb2ludCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBTdGF0ZU1hY2hpbmUgaW4gd2hpY2ggdGhpcyBQc2V1ZG9zdGF0ZSBpcyBkZWZpbmVkLiBUaGlzIG9ubHkgYXBwbGllcyB0byBQc2V1ZG9zdGF0ZXMgb2YgdGhlIGtpbmQgZW50cnlQb2ludCBvciBleGl0UG9pbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lZEVsZW1lbnQvbmFtZXNwYWNlIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJWZXJ0ZXgiIGFic3RyYWN0PSJ0cnVlIiBlU3VwZXJUeXBlcz0iIy8vTmFtZWRFbGVtZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFZlcnRleCBpcyBhbiBhYnN0cmFjdGlvbiBvZiBhIG5vZGUgaW4gYSBTdGF0ZU1hY2hpbmUgZ3JhcGguIEl0IGNhbiBiZSB0aGUgc291cmNlIG9yIGRlc3RpbmF0aW9uIG9mIGFueSBudW1iZXIgb2YgVHJhbnNpdGlvbnMuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImNvbnRhaW5pbmdTdGF0ZU1hY2hpbmUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vU3RhdGVNYWNoaW5lIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG9wZXJhdGlvbiBjb250YWluaW5nU3RhdGVNYWNoaW5lKCkgcmV0dXJucyB0aGUgU3RhdGVNYWNoaW5lIGluIHdoaWNoIHRoaXMgVmVydGV4IGlzIGRlZmluZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpZiBjb250YWluZXIgJmx0Oz4gbnVsbCYjeEE7dGhlbiYjeEE7LS0gdGhlIGNvbnRhaW5lciBpcyBhIHJlZ2lvbiYjeEE7ICAgY29udGFpbmVyLmNvbnRhaW5pbmdTdGF0ZU1hY2hpbmUoKSYjeEE7ZWxzZSAmI3hBOyAgIGlmIChzZWxmLm9jbElzS2luZE9mKFBzZXVkb3N0YXRlKSkgYW5kICgoc2VsZi5vY2xBc1R5cGUoUHNldWRvc3RhdGUpLmtpbmQgPSBQc2V1ZG9zdGF0ZUtpbmQ6OmVudHJ5UG9pbnQpIG9yIChzZWxmLm9jbEFzVHlwZShQc2V1ZG9zdGF0ZSkua2luZCA9IFBzZXVkb3N0YXRlS2luZDo6ZXhpdFBvaW50KSkgdGhlbiYjeEE7ICAgICAgc2VsZi5vY2xBc1R5cGUoUHNldWRvc3RhdGUpLnN0YXRlTWFjaGluZSYjeEE7ICAgZWxzZSAmI3hBOyAgICAgIGlmIChzZWxmLm9jbElzS2luZE9mKENvbm5lY3Rpb25Qb2ludFJlZmVyZW5jZSkpIHRoZW4mI3hBOyAgICAgICAgICBzZWxmLm9jbEFzVHlwZShDb25uZWN0aW9uUG9pbnRSZWZlcmVuY2UpLnN0YXRlLmNvbnRhaW5pbmdTdGF0ZU1hY2hpbmUoKSAtLSBubyBvdGhlciB2YWxpZCBjYXNlcyBwb3NzaWJsZSYjeEE7ICAgICAgZWxzZSAmI3hBOyAgICAgICAgICBudWxsJiN4QTsgICAgICBlbmRpZiYjeEE7ICAgZW5kaWYmI3hBO2VuZGlmIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRJbmNvbWluZ3MiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1RyYW5zaXRpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJEZXJpdmF0aW9uIGZvciBWZXJ0ZXg6Oi9pbmNvbWluZy4iLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9Im9yaWdpbmFsTmFtZSIgdmFsdWU9ImluY29taW5nIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJUcmFuc2l0aW9uLmFsbEluc3RhbmNlcygpLT5zZWxlY3QodGFyZ2V0PXNlbGYpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRPdXRnb2luZ3MiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1RyYW5zaXRpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJEZXJpdmF0aW9uIGZvciBWZXJ0ZXg6Oi9vdXRnb2luZyIvPgorICAgICAgICA8ZGV0YWlscyBrZXk9InN1cHByZXNzZWRWaXNpYmlsaXR5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ib3JpZ2luYWxOYW1lIiB2YWx1ZT0ib3V0Z29pbmciLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9IlRyYW5zaXRpb24uYWxsSW5zdGFuY2VzKCktPnNlbGVjdChzb3VyY2U9c2VsZikiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzQ29udGFpbmVkSW5TdGF0ZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhpcyB1dGlsaXR5IG9wZXJhdGlvbiByZXR1cm5zIHRydWUgaWYgdGhlIFZlcnRleCBpcyBjb250YWluZWQgaW4gdGhlIFN0YXRlIHMgKGlucHV0IGFyZ3VtZW50KS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlmIG5vdCBzLmlzQ29tcG9zaXRlKCkgb3IgY29udGFpbmVyLT5pc0VtcHR5KCkgdGhlbiYjeEQ7JiN4QTsmI3g5O2ZhbHNlJiN4RDsmI3hBO2Vsc2UmI3hEOyYjeEE7JiN4OTtpZiBjb250YWluZXIuc3RhdGUgPSBzIHRoZW4gJiN4RDsmI3hBOyYjeDk7JiN4OTt0cnVlJiN4RDsmI3hBOyYjeDk7ZWxzZSYjeEQ7JiN4QTsmI3g5OyYjeDk7Y29udGFpbmVyLnN0YXRlLmlzQ29udGFpbmVkSW5TdGF0ZShzKSYjeEQ7JiN4QTsmI3g5O2VuZGlmJiN4RDsmI3hBO2VuZGlmIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJzIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1N0YXRlIi8+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNDb250YWluZWRJblJlZ2lvbiIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhpcyB1dGlsaXR5IHF1ZXJ5IHJldHVybnMgdHJ1ZSBpZiB0aGUgVmVydGV4IGlzIGNvbnRhaW5lZCBpbiB0aGUgUmVnaW9uIHIgKGlucHV0IGFyZ3VtZW50KS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlmIChjb250YWluZXIgPSByKSB0aGVuJiN4RDsmI3hBOyYjeDk7dHJ1ZSYjeEQ7JiN4QTtlbHNlJiN4RDsmI3hBOyYjeDk7aWYgKHIuc3RhdGUtPmlzRW1wdHkoKSkgdGhlbiYjeEQ7JiN4QTsmI3g5OyYjeDk7ZmFsc2UmI3hEOyYjeEE7JiN4OTtlbHNlJiN4RDsmI3hBOyYjeDk7JiN4OTtjb250YWluZXIuc3RhdGUuaXNDb250YWluZWRJblJlZ2lvbihyKSYjeEQ7JiN4QTsmI3g5O2VuZGlmJiN4RDsmI3hBO2VuZGlmIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJyIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JlZ2lvbiIvPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImNvbnRhaW5lciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9SZWdpb24iIGVPcHBvc2l0ZT0iIy8vUmVnaW9uL3N1YnZlcnRleCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBSZWdpb24gdGhhdCBjb250YWlucyB0aGlzIFZlcnRleC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVkRWxlbWVudC9uYW1lc3BhY2UiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImluY29taW5nIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9UcmFuc2l0aW9uIiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIKKyAgICAgICAgZGVyaXZlZD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNwZWNpZmllcyB0aGUgVHJhbnNpdGlvbnMgZW50ZXJpbmcgdGhpcyBWZXJ0ZXguIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im91dGdvaW5nIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9UcmFuc2l0aW9uIiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIKKyAgICAgICAgZGVyaXZlZD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNwZWNpZmllcyB0aGUgVHJhbnNpdGlvbnMgZGVwYXJ0aW5nIGZyb20gdGhpcyBWZXJ0ZXguIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlJlZ2lvbiIgZVN1cGVyVHlwZXM9IiMvL05hbWVzcGFjZSAjLy9SZWRlZmluYWJsZUVsZW1lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgUmVnaW9uIGlzIGEgdG9wLWxldmVsIHBhcnQgb2YgYSBTdGF0ZU1hY2hpbmUgb3IgYSBjb21wb3NpdGUgU3RhdGUsIHRoYXQgc2VydmVzIGFzIGEgY29udGFpbmVyIGZvciB0aGUgVmVydGljZXMgYW5kIFRyYW5zaXRpb25zIG9mIHRoZSBTdGF0ZU1hY2hpbmUuIEEgU3RhdGVNYWNoaW5lIG9yIGNvbXBvc2l0ZSBTdGF0ZSBtYXkgY29udGFpbiBtdWx0aXBsZSBSZWdpb25zIHJlcHJlc2VudGluZyBiZWhhdmlvcnMgdGhhdCBtYXkgb2NjdXIgaW4gcGFyYWxsZWwuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9ImR1cGxpY2F0ZXMiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5pdGlvbkNvbnRleHQiPgorICAgICAgICA8ZGV0YWlscyBrZXk9Imxvd2VyQm91bmQiIHZhbHVlPSIxIi8+CisgICAgICAgIDxkZXRhaWxzIGtleT0idXBwZXJCb3VuZCIgdmFsdWU9IjEiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBuYW1lPSJpc0NvbnNpc3RlbnRXaXRoIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgaXNDb25zaXN0ZW50V2l0aCgpIHNwZWNpZmllcyB0aGF0IGEgcmVkZWZpbmluZyBSZWdpb24gaXMgY29uc2lzdGVudCB3aXRoIGEgcmVkZWZpbmVkIFJlZ2lvbiBwcm92aWRlZCB0aGF0IHRoZSByZWRlZmluaW5nIFJlZ2lvbiBpcyBhbiBleHRlbnNpb24gb2YgdGhlIFJlZGVmaW5lZCByZWdpb24sIGkuZS4sIGl0cyBWZXJ0aWNlcyBhbmQgVHJhbnNpdGlvbnMgY29uZm9ybSB0byBvbmUgb2YgdGhlIGZvbGxvd2luZzogKDEpIHRoZXkgYXJlIGVxdWFsIHRvIGNvcnJlc3BvbmRpbmcgZWxlbWVudHMgb2YgdGhlIHJlZGVmaW5lZCBSZWdpb24gb3IsICgyKSB0aGV5IGNvbnNpc3RlbnRseSByZWRlZmluZSBhIFN0YXRlIG9yIFRyYW5zaXRpb24gb2YgdGhlIHJlZGVmaW5lZCByZWdpb24sIG9yICgzKSB0aGV5IGFkZCBuZXcgU3RhdGVzIG9yIFRyYW5zaXRpb25zLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vUmVkZWZpbmFibGVFbGVtZW50L2lzQ29uc2lzdGVudFdpdGgiLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iLS0gdGhlIGZvbGxvd2luZyBpcyBtZXJlbHkgYSBkZWZhdWx0IGJvZHk7IGl0IGlzIGV4cGVjdGVkIHRoYXQgdGhlIHNwZWNpZmljIGZvcm0gb2YgdGhpcyBjb25zdHJhaW50IHdpbGwgYmUgc3BlY2lmaWVkIGJ5IHByb2ZpbGVzJiN4RDsmI3hBO3RydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJyZWRlZmluaW5nRWxlbWVudCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9SZWRlZmluYWJsZUVsZW1lbnQiLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIG5hbWU9ImlzUmVkZWZpbml0aW9uQ29udGV4dFZhbGlkIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgaXNSZWRlZmluaXRpb25Db250ZXh0VmFsaWQoKSBzcGVjaWZpZXMgd2hldGhlciB0aGUgcmVkZWZpbml0aW9uIGNvbnRleHRzIG9mIGEgUmVnaW9uIGFyZSBwcm9wZXJseSByZWxhdGVkIHRvIHRoZSByZWRlZmluaXRpb24gY29udGV4dHMgb2YgdGhlIHNwZWNpZmllZCBSZWdpb24gdG8gYWxsb3cgdGhpcyBlbGVtZW50IHRvIHJlZGVmaW5lIHRoZSBvdGhlci4gVGhlIGNvbnRhaW5pbmcgU3RhdGVNYWNoaW5lIG9yIFN0YXRlIG9mIGEgcmVkZWZpbmluZyBSZWdpb24gbXVzdCBSZWRlZmluZSB0aGUgY29udGFpbmluZyBTdGF0ZU1hY2hpbmUgb3IgU3RhdGUgb2YgdGhlIHJlZGVmaW5lZCBSZWdpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9SZWRlZmluYWJsZUVsZW1lbnQvaXNSZWRlZmluaXRpb25Db250ZXh0VmFsaWQiLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaWYgcmVkZWZpbmVkRWxlbWVudC5vY2xJc0tpbmRPZihSZWdpb24pIHRoZW4mI3hEOyYjeEE7ICBsZXQgcmVkZWZpbmVkUmVnaW9uIDogUmVnaW9uID0gcmVkZWZpbmVkRWxlbWVudC5vY2xBc1R5cGUoUmVnaW9uKSBpbiYjeEQ7JiN4QTsgICAgaWYgc3RhdGVNYWNoaW5lLT5pc0VtcHR5KCkgdGhlbiYjeEQ7JiN4QTsgICAgLS0gdGhlIFJlZ2lvbiBpcyBvd25lZCBieSBhIFN0YXRlJiN4RDsmI3hBOyAgICAgIChzdGF0ZS5yZWRlZmluZWRTdGF0ZS0+bm90RW1wdHkoKSBhbmQgc3RhdGUucmVkZWZpbmVkU3RhdGUucmVnaW9uLT5pbmNsdWRlcyhyZWRlZmluZWRSZWdpb24pKSYjeEQ7JiN4QTsgICAgZWxzZSAtLSB0aGUgcmVnaW9uIGlzIG93bmVkIGJ5IGEgU3RhdGVNYWNoaW5lJiN4RDsmI3hBOyAgICAgIChzdGF0ZU1hY2hpbmUuZXh0ZW5kZWRTdGF0ZU1hY2hpbmUtPm5vdEVtcHR5KCkgYW5kJiN4RDsmI3hBOyAgICAgICAgc3RhdGVNYWNoaW5lLmV4dGVuZGVkU3RhdGVNYWNoaW5lLT5leGlzdHMoc20gOiBTdGF0ZU1hY2hpbmUgfCYjeEQ7JiN4QTsgICAgICAgICAgc20ucmVnaW9uLT5pbmNsdWRlcyhyZWRlZmluZWRSZWdpb24pKSkmI3hEOyYjeEE7ICAgIGVuZGlmJiN4RDsmI3hBO2Vsc2UmI3hEOyYjeEE7ICBmYWxzZSYjeEQ7JiN4QTtlbmRpZiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InJlZGVmaW5lZEVsZW1lbnQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUmVkZWZpbmFibGVFbGVtZW50Ii8+CisgICAgICA8L2NvbnRlbnRzPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyZWRlZmluaXRpb25Db250ZXh0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0NsYXNzaWZpZXIiIGNoYW5nZWFibGU9ImZhbHNlIiB2b2xhdGlsZT0idHJ1ZSIKKyAgICAgICAgICB0cmFuc2llbnQ9InRydWUiIGRlcml2ZWQ9InRydWUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmVmZXJlbmNlcyB0aGUgQ2xhc3NpZmllciBpbiB3aGljaCBjb250ZXh0IHRoaXMgZWxlbWVudCBtYXkgYmUgcmVkZWZpbmVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vUmVkZWZpbmFibGVFbGVtZW50L3JlZGVmaW5pdGlvbkNvbnRleHQiLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImRlZXBfaGlzdG9yeV92ZXJ0ZXgiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzZWxmLnN1YnZlcnRleC0+c2VsZWN0IChvY2xJc0tpbmRPZihQc2V1ZG9zdGF0ZSkpLT5jb2xsZWN0KG9jbEFzVHlwZShQc2V1ZG9zdGF0ZSkpLT4mI3hBOyAgIHNlbGVjdChraW5kID0gUHNldWRvc3RhdGVLaW5kOjpkZWVwSGlzdG9yeSktPnNpemUoKSAmbHQ7PSAxIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBSZWdpb24gY2FuIGhhdmUgYXQgbW9zdCBvbmUgZGVlcCBoaXN0b3J5IFZlcnRleC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InNoYWxsb3dfaGlzdG9yeV92ZXJ0ZXgiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzdWJ2ZXJ0ZXgtPnNlbGVjdChvY2xJc0tpbmRPZihQc2V1ZG9zdGF0ZSkpLT5jb2xsZWN0KG9jbEFzVHlwZShQc2V1ZG9zdGF0ZSkpLT4mI3hBOyAgc2VsZWN0KGtpbmQgPSBQc2V1ZG9zdGF0ZUtpbmQ6OnNoYWxsb3dIaXN0b3J5KS0+c2l6ZSgpICZsdDs9IDEiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFJlZ2lvbiBjYW4gaGF2ZSBhdCBtb3N0IG9uZSBzaGFsbG93IGhpc3RvcnkgVmVydGV4LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ib3duZWQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIoc3RhdGVNYWNoaW5lICZsdDs+IG51bGwgaW1wbGllcyBzdGF0ZSA9IG51bGwpIGFuZCAoc3RhdGUgJmx0Oz4gbnVsbCBpbXBsaWVzIHN0YXRlTWFjaGluZSA9IG51bGwpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgYSBSZWdpb24gaXMgb3duZWQgYnkgYSBTdGF0ZU1hY2hpbmUsIHRoZW4gaXQgY2Fubm90IGFsc28gYmUgb3duZWQgYnkgYSBTdGF0ZSBhbmQgdmljZSB2ZXJzYS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImluaXRpYWxfdmVydGV4IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ic2VsZi5zdWJ2ZXJ0ZXgtPnNlbGVjdCAob2NsSXNLaW5kT2YoUHNldWRvc3RhdGUpKS0+Y29sbGVjdChvY2xBc1R5cGUoUHNldWRvc3RhdGUpKS0+JiN4QTsgIHNlbGVjdChraW5kID0gUHNldWRvc3RhdGVLaW5kOjppbml0aWFsKS0+c2l6ZSgpICZsdDs9IDEiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFJlZ2lvbiBjYW4gaGF2ZSBhdCBtb3N0IG9uZSBpbml0aWFsIFZlcnRleC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImJlbG9uZ3NUb1BTTSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG9wZXJhdGlvbiBiZWxvbmdzVG9QU00gKCkgY2hlY2tzIGlmIHRoZSBSZWdpb24gYmVsb25ncyB0byBhIFByb3RvY29sU3RhdGVNYWNoaW5lLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaWYgIHN0YXRlTWFjaGluZSAmbHQ7PiBudWxsICYjeEE7dGhlbiYjeEE7ICBzdGF0ZU1hY2hpbmUub2NsSXNLaW5kT2YoUHJvdG9jb2xTdGF0ZU1hY2hpbmUpJiN4QTtlbHNlICYjeEE7ICBzdGF0ZSAmbHQ7PiBudWxsICBpbXBsaWVzICBzdGF0ZS5jb250YWluZXIuYmVsb25nc1RvUFNNKCkmI3hBO2VuZGlmIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjb250YWluaW5nU3RhdGVNYWNoaW5lIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1N0YXRlTWFjaGluZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBvcGVyYXRpb24gY29udGFpbmluZ1N0YXRlTWFjaGluZSgpIHJldHVybnMgdGhlIFN0YXRlTWFjaGluZSBpbiB3aGljaCB0aGlzIFJlZ2lvbiBpcyBkZWZpbmVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaWYgc3RhdGVNYWNoaW5lID0gbnVsbCAmI3hBO3RoZW4mI3hBOyAgc3RhdGUuY29udGFpbmluZ1N0YXRlTWFjaGluZSgpJiN4QTtlbHNlJiN4QTsgIHN0YXRlTWFjaGluZSYjeEE7ZW5kaWYiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InJlZGVmaW5pdGlvbkNvbnRleHQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vQ2xhc3NpZmllciI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSByZWRlZmluaXRpb24gY29udGV4dCBvZiBhIFJlZ2lvbiBpcyB0aGUgbmVhcmVzdCBjb250YWluaW5nIFN0YXRlTWFjaGluZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImxldCBzbSA6IFN0YXRlTWFjaGluZSA9IGNvbnRhaW5pbmdTdGF0ZU1hY2hpbmUoKSBpbiYjeEE7aWYgc20uXydjb250ZXh0JyA9IG51bGwgb3Igc20uZ2VuZXJhbC0+bm90RW1wdHkoKSB0aGVuJiN4QTsgIHNtJiN4QTtlbHNlJiN4QTsgIHNtLl8nY29udGV4dCcmI3hBO2VuZGlmIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJleHRlbmRlZFJlZ2lvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9SZWdpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcmVnaW9uIG9mIHdoaWNoIHRoaXMgcmVnaW9uIGlzIGFuIGV4dGVuc2lvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL1JlZGVmaW5hYmxlRWxlbWVudC9yZWRlZmluZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJzdGF0ZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9TdGF0ZSIgZU9wcG9zaXRlPSIjLy9TdGF0ZS9yZWdpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgU3RhdGUgdGhhdCBvd25zIHRoZSBSZWdpb24uIElmIGEgUmVnaW9uIGlzIG93bmVkIGJ5IGEgU3RhdGUsIHRoZW4gaXQgY2Fubm90IGFsc28gYmUgb3duZWQgYnkgYSBTdGF0ZU1hY2hpbmUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lZEVsZW1lbnQvbmFtZXNwYWNlIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJzdGF0ZU1hY2hpbmUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vU3RhdGVNYWNoaW5lIiBlT3Bwb3NpdGU9IiMvL1N0YXRlTWFjaGluZS9yZWdpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgU3RhdGVNYWNoaW5lIHRoYXQgb3ducyB0aGUgUmVnaW9uLiBJZiBhIFJlZ2lvbiBpcyBvd25lZCBieSBhIFN0YXRlTWFjaGluZSwgdGhlbiBpdCBjYW5ub3QgYWxzbyBiZSBvd25lZCBieSBhIFN0YXRlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vTmFtZWRFbGVtZW50L25hbWVzcGFjZSIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0idHJhbnNpdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vVHJhbnNpdGlvbiIgY29udGFpbm1lbnQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vVHJhbnNpdGlvbi9jb250YWluZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc2V0IG9mIFRyYW5zaXRpb25zIG93bmVkIGJ5IHRoZSBSZWdpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lc3BhY2Uvb3duZWRNZW1iZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InN1YnZlcnRleCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vVmVydGV4IiBjb250YWlubWVudD0idHJ1ZSIgZU9wcG9zaXRlPSIjLy9WZXJ0ZXgvY29udGFpbmVyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHNldCBvZiBWZXJ0aWNlcyB0aGF0IGFyZSBvd25lZCBieSB0aGlzIFJlZ2lvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVzcGFjZS9vd25lZE1lbWJlciIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU3RhdGUiIGVTdXBlclR5cGVzPSIjLy9OYW1lc3BhY2UgIy8vUmVkZWZpbmFibGVFbGVtZW50ICMvL1ZlcnRleCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBTdGF0ZSBtb2RlbHMgYSBzaXR1YXRpb24gZHVyaW5nIHdoaWNoIHNvbWUgKHVzdWFsbHkgaW1wbGljaXQpIGludmFyaWFudCBjb25kaXRpb24gaG9sZHMuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9ImR1cGxpY2F0ZXMiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5pdGlvbkNvbnRleHQiPgorICAgICAgICA8ZGV0YWlscyBrZXk9Imxvd2VyQm91bmQiIHZhbHVlPSIxIi8+CisgICAgICAgIDxkZXRhaWxzIGtleT0idXBwZXJCb3VuZCIgdmFsdWU9IjEiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBuYW1lPSJjb250YWluaW5nU3RhdGVNYWNoaW5lIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vU3RhdGVNYWNoaW5lIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBjb250YWluaW5nU3RhdGVNYWNoaW5lKCkgcmV0dXJucyB0aGUgU3RhdGVNYWNoaW5lIHRoYXQgY29udGFpbnMgdGhlIFN0YXRlIGVpdGhlciBkaXJlY3RseSBvciB0cmFuc2l0aXZlbHkuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9WZXJ0ZXgvY29udGFpbmluZ1N0YXRlTWFjaGluZSIvPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJjb250YWluZXIuY29udGFpbmluZ1N0YXRlTWFjaGluZSgpIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9jb250ZW50cz4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgbmFtZT0iaXNDb25zaXN0ZW50V2l0aCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IGlzQ29uc2lzdGVudFdpdGgoKSBzcGVjaWZpZXMgdGhhdCBhIHJlZGVmaW5pbmcgU3RhdGUgaXMgY29uc2lzdGVudCB3aXRoIGEgcmVkZWZpbmVkIFN0YXRlIHByb3ZpZGVkIHRoYXQgdGhlIHJlZGVmaW5pbmcgU3RhdGUgaXMgYW4gZXh0ZW5zaW9uIG9mIHRoZSByZWRlZmluZWQgU3RhdGUgQSBzaW1wbGUgU3RhdGUgY2FuIGJlIHJlZGVmaW5lZCAoZXh0ZW5kZWQpIHRvIGJlY29tZSBhIGNvbXBvc2l0ZSBTdGF0ZSAoYnkgYWRkaW5nIG9uZSBvciBtb3JlIFJlZ2lvbnMpIGFuZCBhIGNvbXBvc2l0ZSBTdGF0ZSBjYW4gYmUgcmVkZWZpbmVkIChleHRlbmRlZCkgYnkgYWRkaW5nIFJlZ2lvbnMgYW5kIGJ5IGFkZGluZyBWZXJ0aWNlcywgU3RhdGVzLCBhbmQgVHJhbnNpdGlvbnMgdG8gaW5oZXJpdGVkIFJlZ2lvbnMuIEFsbCBTdGF0ZXMgbWF5IGFkZCBvciByZXBsYWNlIGVudHJ5LCBleGl0LCBhbmQgJ2RvQWN0aXZpdHknIEJlaGF2aW9ycy4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL1JlZGVmaW5hYmxlRWxlbWVudC9pc0NvbnNpc3RlbnRXaXRoIi8+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Ii0tIHRoZSBmb2xsb3dpbmcgaXMgbWVyZWx5IGEgZGVmYXVsdCBib2R5OyBpdCBpcyBleHBlY3RlZCB0aGF0IHRoZSBzcGVjaWZpYyBmb3JtIG9mIHRoaXMgY29uc3RyYWludCB3aWxsIGJlIHNwZWNpZmllZCBieSBwcm9maWxlcyYjeEQ7JiN4QTt0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0icmVkZWZpbmluZ0VsZW1lbnQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUmVkZWZpbmFibGVFbGVtZW50Ii8+CisgICAgICA8L2NvbnRlbnRzPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBuYW1lPSJpc1JlZGVmaW5pdGlvbkNvbnRleHRWYWxpZCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IGlzUmVkZWZpbml0aW9uQ29udGV4dFZhbGlkKCkgc3BlY2lmaWVzIHdoZXRoZXIgdGhlIHJlZGVmaW5pdGlvbiBjb250ZXh0cyBvZiBhIFN0YXRlIGFyZSBwcm9wZXJseSByZWxhdGVkIHRvIHRoZSByZWRlZmluaXRpb24gY29udGV4dHMgb2YgdGhlIHNwZWNpZmllZCBTdGF0ZSB0byBhbGxvdyB0aGlzIGVsZW1lbnQgdG8gcmVkZWZpbmUgdGhlIG90aGVyLiBUaGlzIG1lYW5zIHRoYXQgdGhlIGNvbnRhaW5pbmcgUmVnaW9uIG9mIGEgcmVkZWZpbmluZyBTdGF0ZSBtdXN0IHJlZGVmaW5lIHRoZSBjb250YWluaW5nIFJlZ2lvbiBvZiB0aGUgcmVkZWZpbmVkIFN0YXRlLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vUmVkZWZpbmFibGVFbGVtZW50L2lzUmVkZWZpbml0aW9uQ29udGV4dFZhbGlkIi8+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlmIHJlZGVmaW5lZEVsZW1lbnQub2NsSXNLaW5kT2YoU3RhdGUpIHRoZW4mI3hEOyYjeEE7ICBsZXQgcmVkZWZpbmVkU3RhdGUgOiBTdGF0ZSA9IHJlZGVmaW5lZEVsZW1lbnQub2NsQXNUeXBlKFN0YXRlKSBpbiYjeEQ7JiN4QTsgICAgY29udGFpbmVyLnJlZGVmaW5lZEVsZW1lbnQub2NsQXNUeXBlKFJlZ2lvbiktPmV4aXN0cyhyOlJlZ2lvbiB8JiN4RDsmI3hBOyAgICAgIHIuc3VidmVydGV4LT5pbmNsdWRlcyhyZWRlZmluZWRTdGF0ZSkpJiN4RDsmI3hBO2Vsc2UmI3hEOyYjeEE7ICBmYWxzZSYjeEQ7JiN4QTtlbmRpZiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InJlZGVmaW5lZEVsZW1lbnQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUmVkZWZpbmFibGVFbGVtZW50Ii8+CisgICAgICA8L2NvbnRlbnRzPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyZWRlZmluaXRpb25Db250ZXh0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0NsYXNzaWZpZXIiIGNoYW5nZWFibGU9ImZhbHNlIiB2b2xhdGlsZT0idHJ1ZSIKKyAgICAgICAgICB0cmFuc2llbnQ9InRydWUiIGRlcml2ZWQ9InRydWUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmVmZXJlbmNlcyB0aGUgQ2xhc3NpZmllciBpbiB3aGljaCBjb250ZXh0IHRoaXMgZWxlbWVudCBtYXkgYmUgcmVkZWZpbmVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vUmVkZWZpbmFibGVFbGVtZW50L3JlZGVmaW5pdGlvbkNvbnRleHQiLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImVudHJ5X29yX2V4aXQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJjb25uZWN0aW9uUG9pbnQtPmZvckFsbChraW5kID0gUHNldWRvc3RhdGVLaW5kOjplbnRyeVBvaW50IG9yIGtpbmQgPSBQc2V1ZG9zdGF0ZUtpbmQ6OmV4aXRQb2ludCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJPbmx5IGVudHJ5IG9yIGV4aXQgUHNldWRvc3RhdGVzIGNhbiBzZXJ2ZSBhcyBjb25uZWN0aW9uIHBvaW50cy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InN1Ym1hY2hpbmVfc3RhdGVzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaXNTdWJtYWNoaW5lU3RhdGUgaW1wbGllcyBjb25uZWN0aW9uLT5ub3RFbXB0eSggKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9Ik9ubHkgc3VibWFjaGluZSBTdGF0ZXMgY2FuIGhhdmUgY29ubmVjdGlvbiBwb2ludCByZWZlcmVuY2VzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY29tcG9zaXRlX3N0YXRlcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImNvbm5lY3Rpb25Qb2ludC0+bm90RW1wdHkoKSBpbXBsaWVzIGlzQ29tcG9zaXRlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iT25seSBjb21wb3NpdGUgU3RhdGVzIGNhbiBoYXZlIGVudHJ5IG9yIGV4aXQgUHNldWRvc3RhdGVzIGRlZmluZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJkZXN0aW5hdGlvbnNfb3Jfc291cmNlc19vZl90cmFuc2l0aW9ucyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InNlbGYuaXNTdWJtYWNoaW5lU3RhdGUgaW1wbGllcyAoc2VsZi5jb25uZWN0aW9uLT5mb3JBbGwgKGNwIHwmI3hEOyYjeEE7ICBjcC5lbnRyeS0+Zm9yQWxsIChwcyB8IHBzLnN0YXRlTWFjaGluZSA9IHNlbGYuc3VibWFjaGluZSkgYW5kJiN4RDsmI3hBOyAgY3AuZXhpdC0+Zm9yQWxsIChwcyB8IHBzLnN0YXRlTWFjaGluZSA9IHNlbGYuc3VibWFjaGluZSkpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjb25uZWN0aW9uIHBvaW50IHJlZmVyZW5jZXMgdXNlZCBhcyBkZXN0aW5hdGlvbnMvc291cmNlcyBvZiBUcmFuc2l0aW9ucyBhc3NvY2lhdGVkIHdpdGggYSBzdWJtYWNoaW5lIFN0YXRlIG11c3QgYmUgZGVmaW5lZCBhcyBlbnRyeS9leGl0IHBvaW50cyBpbiB0aGUgc3VibWFjaGluZSBTdGF0ZU1hY2hpbmUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzdWJtYWNoaW5lX29yX3JlZ2lvbnMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpc0NvbXBvc2l0ZSBpbXBsaWVzIG5vdCBpc1N1Ym1hY2hpbmVTdGF0ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgU3RhdGUgaXMgbm90IGFsbG93ZWQgdG8gaGF2ZSBib3RoIGEgc3VibWFjaGluZSBhbmQgUmVnaW9ucy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzQ29tcG9zaXRlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIGNvbXBvc2l0ZSBTdGF0ZSBpcyBhIFN0YXRlIHdpdGggYXQgbGVhc3Qgb25lIFJlZ2lvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InJlZ2lvbi0+bm90RW1wdHkoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNPcnRob2dvbmFsIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBvcnRob2dvbmFsIFN0YXRlIGlzIGEgY29tcG9zaXRlIHN0YXRlIHdpdGggYXQgbGVhc3QgMiByZWdpb25zLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icmVnaW9uLT5zaXplICgpID4gMSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNTaW1wbGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgc2ltcGxlIFN0YXRlIGlzIGEgU3RhdGUgd2l0aG91dCBhbnkgcmVnaW9ucy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9IihyZWdpb24tPmlzRW1wdHkoKSkgYW5kIG5vdCBpc1N1Ym1hY2hpbmVTdGF0ZSgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc1N1Ym1hY2hpbmVTdGF0ZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iT25seSBzdWJtYWNoaW5lIFN0YXRlIHJlZmVyZW5jZXMgYW5vdGhlciBTdGF0ZU1hY2hpbmUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzdWJtYWNoaW5lICZsdDs+IG51bGwiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InJlZGVmaW5pdGlvbkNvbnRleHQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vQ2xhc3NpZmllciI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSByZWRlZmluaXRpb24gY29udGV4dCBvZiBhIFN0YXRlIGlzIHRoZSBuZWFyZXN0IGNvbnRhaW5pbmcgU3RhdGVNYWNoaW5lLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibGV0IHNtIDogU3RhdGVNYWNoaW5lID0gY29udGFpbmluZ1N0YXRlTWFjaGluZSgpIGluJiN4QTtpZiBzbS5fJ2NvbnRleHQnID0gbnVsbCBvciBzbS5nZW5lcmFsLT5ub3RFbXB0eSgpIHRoZW4mI3hBOyAgc20mI3hBO2Vsc2UmI3hBOyAgc20uXydjb250ZXh0JyYjeEE7ZW5kaWYiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImNvbm5lY3Rpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0Nvbm5lY3Rpb25Qb2ludFJlZmVyZW5jZSIgY29udGFpbm1lbnQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vQ29ubmVjdGlvblBvaW50UmVmZXJlbmNlL3N0YXRlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGVudHJ5IGFuZCBleGl0IGNvbm5lY3Rpb24gcG9pbnRzIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGlzIChzdWJtYWNoaW5lKSBTdGF0ZSwgaS5lLiwgYXMgdGFyZ2V0cyBhbmQgc291cmNlcywgcmVzcGVjdGl2ZWx5LCBpbiB0aGUgUmVnaW9uIHdpdGggdGhlIHN1Ym1hY2hpbmUgU3RhdGUuIEEgY29ubmVjdGlvbiBwb2ludCByZWZlcmVuY2UgcmVmZXJlbmNlcyB0aGUgY29ycmVzcG9uZGluZyBkZWZpbml0aW9uIG9mIGEgY29ubmVjdGlvbiBwb2ludCBQc2V1ZG9zdGF0ZSBpbiB0aGUgU3RhdGVNYWNoaW5lIHJlZmVyZW5jZWQgYnkgdGhlIHN1Ym1hY2hpbmUgU3RhdGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lc3BhY2Uvb3duZWRNZW1iZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImNvbm5lY3Rpb25Qb2ludCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUHNldWRvc3RhdGUiIGNvbnRhaW5tZW50PSJ0cnVlIiBlT3Bwb3NpdGU9IiMvL1BzZXVkb3N0YXRlL3N0YXRlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGVudHJ5IGFuZCBleGl0IFBzZXVkb3N0YXRlcyBvZiBhIGNvbXBvc2l0ZSBTdGF0ZS4gVGhlc2UgY2FuIG9ubHkgYmUgZW50cnkgb3IgZXhpdCBQc2V1ZG9zdGF0ZXMsIGFuZCB0aGV5IG11c3QgaGF2ZSBkaWZmZXJlbnQgbmFtZXMuIFRoZXkgY2FuIG9ubHkgYmUgZGVmaW5lZCBmb3IgY29tcG9zaXRlIFN0YXRlcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVzcGFjZS9vd25lZE1lbWJlciIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZGVmZXJyYWJsZVRyaWdnZXIiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1RyaWdnZXIiIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBsaXN0IG9mIFRyaWdnZXJzIHRoYXQgYXJlIGNhbmRpZGF0ZXMgdG8gYmUgcmV0YWluZWQgYnkgdGhlIFN0YXRlTWFjaGluZSBpZiB0aGV5IHRyaWdnZXIgbm8gVHJhbnNpdGlvbnMgb3V0IG9mIHRoZSBTdGF0ZSAobm90IGNvbnN1bWVkKS4gQSBkZWZlcnJlZCBUcmlnZ2VyIGlzIHJldGFpbmVkIHVudGlsIHRoZSBTdGF0ZU1hY2hpbmUgcmVhY2hlcyBhIFN0YXRlIGNvbmZpZ3VyYXRpb24gd2hlcmUgaXQgaXMgbm8gbG9uZ2VyIGRlZmVycmVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImRvQWN0aXZpdHkiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vQmVoYXZpb3IiIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gb3B0aW9uYWwgQmVoYXZpb3IgdGhhdCBpcyBleGVjdXRlZCB3aGlsZSBiZWluZyBpbiB0aGUgU3RhdGUuIFRoZSBleGVjdXRpb24gc3RhcnRzIHdoZW4gdGhpcyBTdGF0ZSBpcyBlbnRlcmVkLCBhbmQgY2Vhc2VzIGVpdGhlciBieSBpdHNlbGYgd2hlbiBkb25lLCBvciB3aGVuIHRoZSBTdGF0ZSBpcyBleGl0ZWQsIHdoaWNoZXZlciBjb21lcyBmaXJzdC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlbnRyeSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9CZWhhdmlvciIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBvcHRpb25hbCBCZWhhdmlvciB0aGF0IGlzIGV4ZWN1dGVkIHdoZW5ldmVyIHRoaXMgU3RhdGUgaXMgZW50ZXJlZCByZWdhcmRsZXNzIG9mIHRoZSBUcmFuc2l0aW9uIHRha2VuIHRvIHJlYWNoIHRoZSBTdGF0ZS4gSWYgZGVmaW5lZCwgZW50cnkgQmVoYXZpb3JzIGFyZSBhbHdheXMgZXhlY3V0ZWQgdG8gY29tcGxldGlvbiBwcmlvciB0byBhbnkgaW50ZXJuYWwgQmVoYXZpb3Igb3IgVHJhbnNpdGlvbnMgcGVyZm9ybWVkIHdpdGhpbiB0aGUgU3RhdGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZXhpdCIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSIjLy9CZWhhdmlvciIKKyAgICAgICAgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBvcHRpb25hbCBCZWhhdmlvciB0aGF0IGlzIGV4ZWN1dGVkIHdoZW5ldmVyIHRoaXMgU3RhdGUgaXMgZXhpdGVkIHJlZ2FyZGxlc3Mgb2Ygd2hpY2ggVHJhbnNpdGlvbiB3YXMgdGFrZW4gb3V0IG9mIHRoZSBTdGF0ZS4gSWYgZGVmaW5lZCwgZXhpdCBCZWhhdmlvcnMgYXJlIGFsd2F5cyBleGVjdXRlZCB0byBjb21wbGV0aW9uIG9ubHkgYWZ0ZXIgYWxsIGludGVybmFsIGFuZCB0cmFuc2l0aW9uIEJlaGF2aW9ycyBoYXZlIGNvbXBsZXRlZCBleGVjdXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNDb21wb3NpdGUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIgY2hhbmdlYWJsZT0iZmFsc2UiCisgICAgICAgIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiIGRlcml2ZWQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIHN0YXRlIHdpdGggaXNDb21wb3NpdGU9dHJ1ZSBpcyBzYWlkIHRvIGJlIGEgY29tcG9zaXRlIFN0YXRlLiBBIGNvbXBvc2l0ZSBTdGF0ZSBpcyBhIFN0YXRlIHRoYXQgY29udGFpbnMgYXQgbGVhc3Qgb25lIFJlZ2lvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNPcnRob2dvbmFsIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGNoYW5nZWFibGU9ImZhbHNlIgorICAgICAgICB2b2xhdGlsZT0idHJ1ZSIgdHJhbnNpZW50PSJ0cnVlIiBkZXJpdmVkPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBTdGF0ZSB3aXRoIGlzT3J0aG9nb25hbD10cnVlIGlzIHNhaWQgdG8gYmUgYW4gb3J0aG9nb25hbCBjb21wb3NpdGUgU3RhdGUgQW4gb3J0aG9nb25hbCBjb21wb3NpdGUgU3RhdGUgY29udGFpbnMgdHdvIG9yIG1vcmUgUmVnaW9ucy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNTaW1wbGUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIgY2hhbmdlYWJsZT0iZmFsc2UiCisgICAgICAgIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiIGRlZmF1bHRWYWx1ZUxpdGVyYWw9InRydWUiIGRlcml2ZWQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFN0YXRlIHdpdGggaXNTaW1wbGU9dHJ1ZSBpcyBzYWlkIHRvIGJlIGEgc2ltcGxlIFN0YXRlIEEgc2ltcGxlIFN0YXRlIGRvZXMgbm90IGhhdmUgYW55IFJlZ2lvbnMgYW5kIGl0IGRvZXMgbm90IHJlZmVyIHRvIGFueSBzdWJtYWNoaW5lIFN0YXRlTWFjaGluZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNTdWJtYWNoaW5lU3RhdGUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIgY2hhbmdlYWJsZT0iZmFsc2UiCisgICAgICAgIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiIGRlcml2ZWQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFN0YXRlIHdpdGggaXNTdWJtYWNoaW5lU3RhdGU9dHJ1ZSBpcyBzYWlkIHRvIGJlIGEgc3VibWFjaGluZSBTdGF0ZSBTdWNoIGEgU3RhdGUgcmVmZXJzIHRvIGFub3RoZXIgU3RhdGVNYWNoaW5lKHN1Ym1hY2hpbmUpLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyZWRlZmluZWRTdGF0ZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9TdGF0ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBTdGF0ZSBvZiB3aGljaCB0aGlzIFN0YXRlIGlzIGEgcmVkZWZpbml0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vUmVkZWZpbmFibGVFbGVtZW50L3JlZGVmaW5lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InN0YXRlSW52YXJpYW50IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL0NvbnN0cmFpbnQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgY29uZGl0aW9ucyB0aGF0IGFyZSBhbHdheXMgdHJ1ZSB3aGVuIHRoaXMgU3RhdGUgaXMgdGhlIGN1cnJlbnQgU3RhdGUuIEluIFByb3RvY29sU3RhdGVNYWNoaW5lcyBzdGF0ZSBpbnZhcmlhbnRzIGFyZSBhZGRpdGlvbmFsIGNvbmRpdGlvbnMgdG8gdGhlIHByZWNvbmRpdGlvbnMgb2YgdGhlIG91dGdvaW5nIFRyYW5zaXRpb25zLCBhbmQgdG8gdGhlIHBvc3Rjb25kaXRpb24gb2YgdGhlIGluY29taW5nIFRyYW5zaXRpb25zLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vTmFtZXNwYWNlL293bmVkUnVsZSIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ic3VibWFjaGluZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9TdGF0ZU1hY2hpbmUiIGVPcHBvc2l0ZT0iIy8vU3RhdGVNYWNoaW5lL3N1Ym1hY2hpbmVTdGF0ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBTdGF0ZU1hY2hpbmUgdGhhdCBpcyB0byBiZSBpbnNlcnRlZCBpbiBwbGFjZSBvZiB0aGUgKHN1Ym1hY2hpbmUpIFN0YXRlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyZWdpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1JlZ2lvbiIgY29udGFpbm1lbnQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vUmVnaW9uL3N0YXRlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFJlZ2lvbnMgb3duZWQgZGlyZWN0bHkgYnkgdGhlIFN0YXRlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vTmFtZXNwYWNlL293bmVkTWVtYmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb25uZWN0aW9uUG9pbnRSZWZlcmVuY2UiIGVTdXBlclR5cGVzPSIjLy9WZXJ0ZXgiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgQ29ubmVjdGlvblBvaW50UmVmZXJlbmNlIHJlcHJlc2VudHMgYSB1c2FnZSAoYXMgcGFydCBvZiBhIHN1Ym1hY2hpbmUgU3RhdGUpIG9mIGFuIGVudHJ5L2V4aXQgcG9pbnQgUHNldWRvc3RhdGUgZGVmaW5lZCBpbiB0aGUgU3RhdGVNYWNoaW5lIHJlZmVyZW5jZWQgYnkgdGhlIHN1Ym1hY2hpbmUgU3RhdGUuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImV4aXRfcHNldWRvc3RhdGVzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iZXhpdC0+Zm9yQWxsKGtpbmQgPSBQc2V1ZG9zdGF0ZUtpbmQ6OmV4aXRQb2ludCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgZXhpdCBQc2V1ZG9zdGF0ZXMgbXVzdCBiZSBQc2V1ZG9zdGF0ZXMgd2l0aCBraW5kIGV4aXRQb2ludC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImVudHJ5X3BzZXVkb3N0YXRlcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImVudHJ5LT5mb3JBbGwoa2luZCA9IFBzZXVkb3N0YXRlS2luZDo6ZW50cnlQb2ludCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgZW50cnkgUHNldWRvc3RhdGVzIG11c3QgYmUgUHNldWRvc3RhdGVzIHdpdGgga2luZCBlbnRyeVBvaW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZW50cnkiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1BzZXVkb3N0YXRlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGVudHJ5UG9pbnQgUHNldWRvc3RhdGVzIGNvcnJlc3BvbmRpbmcgdG8gdGhpcyBjb25uZWN0aW9uIHBvaW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJleGl0IiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9Qc2V1ZG9zdGF0ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBleGl0UG9pbnRzIGtpbmQgUHNldWRvc3RhdGVzIGNvcnJlc3BvbmRpbmcgdG8gdGhpcyBjb25uZWN0aW9uIHBvaW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJzdGF0ZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9TdGF0ZSIgZU9wcG9zaXRlPSIjLy9TdGF0ZS9jb25uZWN0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFN0YXRlIGluIHdoaWNoIHRoZSBDb25uZWN0aW9uUG9pbnRSZWZlcmVuY2UgaXMgZGVmaW5lZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVkRWxlbWVudC9uYW1lc3BhY2UiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlRyaWdnZXIiIGVTdXBlclR5cGVzPSIjLy9OYW1lZEVsZW1lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgVHJpZ2dlciBzcGVjaWZpZXMgYSBzcGVjaWZpYyBwb2ludCAgYXQgd2hpY2ggYW4gRXZlbnQgb2NjdXJyZW5jZSBtYXkgdHJpZ2dlciBhbiBlZmZlY3QgaW4gYSBCZWhhdmlvci4gQSBUcmlnZ2VyIG1heSBiZSBxdWFsaWZpZWQgYnkgdGhlIFBvcnQgb24gd2hpY2ggdGhlIEV2ZW50IG9jY3VycmVkLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJ0cmlnZ2VyX3dpdGhfcG9ydHMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJwb3J0LT5ub3RFbXB0eSgpIGltcGxpZXMgZXZlbnQub2NsSXNLaW5kT2YoTWVzc2FnZUV2ZW50KSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIGEgVHJpZ2dlciBzcGVjaWZpZXMgb25lIG9yIG1vcmUgcG9ydHMsIHRoZSBldmVudCBvZiB0aGUgVHJpZ2dlciBtdXN0IGJlIGEgTWVzc2FnZUV2ZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZXZlbnQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vRXZlbnQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgRXZlbnQgdGhhdCBkZXRlY3RlZCBieSB0aGUgVHJpZ2dlci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icG9ydCIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vUG9ydCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgb3B0aW9uYWwgUG9ydCBvZiB0aHJvdWdoIHdoaWNoIHRoZSBnaXZlbiBlZmZlY3QgaXMgZGV0ZWN0ZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkV2ZW50IiBhYnN0cmFjdD0idHJ1ZSIgZVN1cGVyVHlwZXM9IiMvL1BhY2thZ2VhYmxlRWxlbWVudCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gRXZlbnQgaXMgdGhlIHNwZWNpZmljYXRpb24gb2Ygc29tZSBvY2N1cnJlbmNlIHRoYXQgbWF5IHBvdGVudGlhbGx5IHRyaWdnZXIgZWZmZWN0cyBieSBhbiBvYmplY3QuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlBvcnQiIGVTdXBlclR5cGVzPSIjLy9Qcm9wZXJ0eSI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBQb3J0IGlzIGEgcHJvcGVydHkgb2YgYW4gRW5jYXBzdWxhdGVkQ2xhc3NpZmllciB0aGF0IHNwZWNpZmllcyBhIGRpc3RpbmN0IGludGVyYWN0aW9uIHBvaW50IGJldHdlZW4gdGhhdCBFbmNhcHN1bGF0ZWRDbGFzc2lmaWVyIGFuZCBpdHMgZW52aXJvbm1lbnQgb3IgYmV0d2VlbiB0aGUgKGJlaGF2aW9yIG9mIHRoZSkgRW5jYXBzdWxhdGVkQ2xhc3NpZmllciBhbmQgaXRzIGludGVybmFsIHBhcnRzLiBQb3J0cyBhcmUgY29ubmVjdGVkIHRvIFByb3BlcnRpZXMgb2YgdGhlIEVuY2Fwc3VsYXRlZENsYXNzaWZpZXIgYnkgQ29ubmVjdG9ycyB0aHJvdWdoIHdoaWNoIHJlcXVlc3RzIGNhbiBiZSBtYWRlIHRvIGludm9rZSBCZWhhdmlvcmFsRmVhdHVyZXMuIEEgUG9ydCBtYXkgc3BlY2lmeSB0aGUgc2VydmljZXMgYW4gRW5jYXBzdWxhdGVkQ2xhc3NpZmllciBwcm92aWRlcyAob2ZmZXJzKSB0byBpdHMgZW52aXJvbm1lbnQgYXMgd2VsbCBhcyB0aGUgc2VydmljZXMgdGhhdCBhbiBFbmNhcHN1bGF0ZWRDbGFzc2lmaWVyIGV4cGVjdHMgKHJlcXVpcmVzKSBvZiBpdHMgZW52aXJvbm1lbnQuICBBIFBvcnQgbWF5IGhhdmUgYW4gYXNzb2NpYXRlZCBQcm90b2NvbFN0YXRlTWFjaGluZS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0icG9ydF9hZ2dyZWdhdGlvbiIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImFnZ3JlZ2F0aW9uID0gQWdncmVnYXRpb25LaW5kOjpjb21wb3NpdGUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJQb3J0LmFnZ3JlZ2F0aW9uIG11c3QgYmUgY29tcG9zaXRlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZGVmYXVsdF92YWx1ZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InR5cGUub2NsSXNLaW5kT2YoSW50ZXJmYWNlKSBpbXBsaWVzIGRlZmF1bHRWYWx1ZS0+aXNFbXB0eSgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBkZWZhdWx0VmFsdWUgZm9yIHBvcnQgY2Fubm90IGJlIHNwZWNpZmllZCB3aGVuIHRoZSB0eXBlIG9mIHRoZSBQb3J0IGlzIGFuIEludGVyZmFjZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImVuY2Fwc3VsYXRlZF9vd25lciIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im93bmVyID0gZW5jYXBzdWxhdGVkQ2xhc3NpZmllciIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFsbCBQb3J0cyBhcmUgb3duZWQgYnkgYW4gRW5jYXBzdWxhdGVkQ2xhc3NpZmllci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldFByb3ZpZGVkcyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vSW50ZXJmYWNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iRGVyaXZhdGlvbiBmb3IgUG9ydDo6L3Byb3ZpZGVkIi8+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJvcmlnaW5hbE5hbWUiIHZhbHVlPSJwcm92aWRlZCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaWYgaXNDb25qdWdhdGVkIHRoZW4gYmFzaWNSZXF1aXJlZCgpIGVsc2UgYmFzaWNQcm92aWRlZCgpIGVuZGlmIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRSZXF1aXJlZHMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0ludGVyZmFjZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkRlcml2YXRpb24gZm9yIFBvcnQ6Oi9yZXF1aXJlZCIvPgorICAgICAgICA8ZGV0YWlscyBrZXk9InN1cHByZXNzZWRWaXNpYmlsaXR5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ib3JpZ2luYWxOYW1lIiB2YWx1ZT0icmVxdWlyZWQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlmIGlzQ29uanVnYXRlZCB0aGVuIGJhc2ljUHJvdmlkZWQoKSBlbHNlIGJhc2ljUmVxdWlyZWQoKSBlbmRpZiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iYmFzaWNQcm92aWRlZCIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vSW50ZXJmYWNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHVuaW9uIG9mIHRoZSBzZXRzIG9mIEludGVyZmFjZXMgcmVhbGl6ZWQgYnkgdGhlIHR5cGUgb2YgdGhlIFBvcnQgYW5kIGl0cyBzdXBlcnR5cGVzLCBvciBkaXJlY3RseSB0aGUgdHlwZSBvZiB0aGUgUG9ydCBpZiB0aGUgUG9ydCBpcyB0eXBlZCBieSBhbiBJbnRlcmZhY2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpZiB0eXBlLm9jbElzS2luZE9mKEludGVyZmFjZSkgJiN4RDsmI3hBO3RoZW4gdHlwZS5vY2xBc1R5cGUoSW50ZXJmYWNlKS0+YXNTZXQoKSAmI3hEOyYjeEE7ZWxzZSB0eXBlLm9jbEFzVHlwZShDbGFzc2lmaWVyKS5hbGxSZWFsaXplZEludGVyZmFjZXMoKSAmI3hEOyYjeEE7ZW5kaWYiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImJhc2ljUmVxdWlyZWQiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0ludGVyZmFjZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB1bmlvbiBvZiB0aGUgc2V0cyBvZiBJbnRlcmZhY2VzIHVzZWQgYnkgdGhlIHR5cGUgb2YgdGhlIFBvcnQgYW5kIGl0cyBzdXBlcnR5cGVzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0idHlwZS5vY2xBc1R5cGUoQ2xhc3NpZmllcikuYWxsVXNlZEludGVyZmFjZXMoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNCZWhhdmlvciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSJmYWxzZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNwZWNpZmllcyB3aGV0aGVyIHJlcXVlc3RzIGFycml2aW5nIGF0IHRoaXMgUG9ydCBhcmUgc2VudCB0byB0aGUgY2xhc3NpZmllciBiZWhhdmlvciBvZiB0aGlzIEVuY2Fwc3VsYXRlZENsYXNzaWZpZXIuIFN1Y2ggYSBQb3J0IGlzIHJlZmVycmVkIHRvIGFzIGEgYmVoYXZpb3IgUG9ydC4gQW55IGludm9jYXRpb24gb2YgYSBCZWhhdmlvcmFsRmVhdHVyZSB0YXJnZXRlZCBhdCBhIGJlaGF2aW9yIFBvcnQgd2lsbCBiZSBoYW5kbGVkIGJ5IHRoZSBpbnN0YW5jZSBvZiB0aGUgb3duaW5nIEVuY2Fwc3VsYXRlZENsYXNzaWZpZXIgaXRzZWxmLCByYXRoZXIgdGhhbiBieSBhbnkgaW5zdGFuY2VzIHRoYXQgaXQgbWF5IGNvbnRhaW4uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImlzQ29uanVnYXRlZCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSJmYWxzZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNwZWNpZmllcyB0aGUgd2F5IHRoYXQgdGhlIHByb3ZpZGVkIGFuZCByZXF1aXJlZCBJbnRlcmZhY2VzIGFyZSBkZXJpdmVkIGZyb20gdGhlIFBvcnTigJlzIFR5cGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImlzU2VydmljZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgdHJ1ZSwgaW5kaWNhdGVzIHRoYXQgdGhpcyBQb3J0IGlzIHVzZWQgdG8gcHJvdmlkZSB0aGUgcHVibGlzaGVkIGZ1bmN0aW9uYWxpdHkgb2YgYW4gRW5jYXBzdWxhdGVkQ2xhc3NpZmllci4gIElmIGZhbHNlLCB0aGlzIFBvcnQgaXMgdXNlZCB0byBpbXBsZW1lbnQgdGhlIEVuY2Fwc3VsYXRlZENsYXNzaWZpZXIgYnV0IGlzIG5vdCBwYXJ0IG9mIHRoZSBlc3NlbnRpYWwgZXh0ZXJuYWxseS12aXNpYmxlIGZ1bmN0aW9uYWxpdHkgb2YgdGhlIEVuY2Fwc3VsYXRlZENsYXNzaWZpZXIgYW5kIGNhbiwgdGhlcmVmb3JlLCBiZSBhbHRlcmVkIG9yIGRlbGV0ZWQgYWxvbmcgd2l0aCB0aGUgaW50ZXJuYWwgaW1wbGVtZW50YXRpb24gb2YgdGhlIEVuY2Fwc3VsYXRlZENsYXNzaWZpZXIgYW5kIG90aGVyIHByb3BlcnRpZXMgdGhhdCBhcmUgY29uc2lkZXJlZCBwYXJ0IG9mIGl0cyBpbXBsZW1lbnRhdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icHJvdG9jb2wiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vUHJvdG9jb2xTdGF0ZU1hY2hpbmUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBvcHRpb25hbCBQcm90b2NvbFN0YXRlTWFjaGluZSB3aGljaCBkZXNjcmliZXMgdmFsaWQgaW50ZXJhY3Rpb25zIGF0IHRoaXMgaW50ZXJhY3Rpb24gcG9pbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InByb3ZpZGVkIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9JbnRlcmZhY2UiIGNoYW5nZWFibGU9ImZhbHNlIiB2b2xhdGlsZT0idHJ1ZSIgdHJhbnNpZW50PSJ0cnVlIgorICAgICAgICBkZXJpdmVkPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIEludGVyZmFjZXMgc3BlY2lmeWluZyB0aGUgc2V0IG9mIE9wZXJhdGlvbnMgYW5kIFJlY2VwdGlvbnMgdGhhdCB0aGUgRW5jYXBzdWxhdGVkQ2NsYXNzaWZpZXIgb2ZmZXJzIHRvIGl0cyBlbnZpcm9ubWVudCB2aWEgdGhpcyBQb3J0LCBhbmQgd2hpY2ggaXQgd2lsbCBoYW5kbGUgZWl0aGVyIGRpcmVjdGx5IG9yIGJ5IGZvcndhcmRpbmcgaXQgdG8gYSBwYXJ0IG9mIGl0cyBpbnRlcm5hbCBzdHJ1Y3R1cmUuIFRoaXMgYXNzb2NpYXRpb24gaXMgZGVyaXZlZCBhY2NvcmRpbmcgdG8gdGhlIHZhbHVlIG9mIGlzQ29uanVnYXRlZC4gSWYgaXNDb25qdWdhdGVkIGlzIGZhbHNlLCBwcm92aWRlZCBpcyBkZXJpdmVkIGFzIHRoZSB1bmlvbiBvZiB0aGUgc2V0cyBvZiBJbnRlcmZhY2VzIHJlYWxpemVkIGJ5IHRoZSB0eXBlIG9mIHRoZSBwb3J0IGFuZCBpdHMgc3VwZXJ0eXBlcywgb3IgZGlyZWN0bHkgZnJvbSB0aGUgdHlwZSBvZiB0aGUgUG9ydCBpZiB0aGUgUG9ydCBpcyB0eXBlZCBieSBhbiBJbnRlcmZhY2UuIElmIGlzQ29uanVnYXRlZCBpcyB0cnVlLCBpdCBpcyBkZXJpdmVkIGFzIHRoZSB1bmlvbiBvZiB0aGUgc2V0cyBvZiBJbnRlcmZhY2VzIHVzZWQgYnkgdGhlIHR5cGUgb2YgdGhlIFBvcnQgYW5kIGl0cyBzdXBlcnR5cGVzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyZWRlZmluZWRQb3J0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Qb3J0Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBQb3J0IG1heSBiZSByZWRlZmluZWQgd2hlbiBpdHMgY29udGFpbmluZyBFbmNhcHN1bGF0ZWRDbGFzc2lmaWVyIGlzIHNwZWNpYWxpemVkLiBUaGUgcmVkZWZpbmluZyBQb3J0IG1heSBoYXZlIGFkZGl0aW9uYWwgSW50ZXJmYWNlcyB0byB0aG9zZSB0aGF0IGFyZSBhc3NvY2lhdGVkIHdpdGggdGhlIHJlZGVmaW5lZCBQb3J0IG9yIGl0IG1heSByZXBsYWNlIGFuIEludGVyZmFjZSBieSBvbmUgb2YgaXRzIHN1YnR5cGVzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vUHJvcGVydHkvcmVkZWZpbmVkUHJvcGVydHkiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InJlcXVpcmVkIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9JbnRlcmZhY2UiIGNoYW5nZWFibGU9ImZhbHNlIiB2b2xhdGlsZT0idHJ1ZSIgdHJhbnNpZW50PSJ0cnVlIgorICAgICAgICBkZXJpdmVkPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIEludGVyZmFjZXMgc3BlY2lmeWluZyB0aGUgc2V0IG9mIE9wZXJhdGlvbnMgYW5kIFJlY2VwdGlvbnMgdGhhdCB0aGUgRW5jYXBzdWxhdGVkQ2Fzc2lmaWVyIGV4cGVjdHMgaXRzIGVudmlyb25tZW50IHRvIGhhbmRsZSB2aWEgdGhpcyBwb3J0LiBUaGlzIGFzc29jaWF0aW9uIGlzIGRlcml2ZWQgYWNjb3JkaW5nIHRvIHRoZSB2YWx1ZSBvZiBpc0Nvbmp1Z2F0ZWQuIElmIGlzQ29uanVnYXRlZCBpcyBmYWxzZSwgcmVxdWlyZWQgaXMgZGVyaXZlZCBhcyB0aGUgdW5pb24gb2YgdGhlIHNldHMgb2YgSW50ZXJmYWNlcyB1c2VkIGJ5IHRoZSB0eXBlIG9mIHRoZSBQb3J0IGFuZCBpdHMgc3VwZXJ0eXBlcy4gSWYgaXNDb25qdWdhdGVkIGlzIHRydWUsIGl0IGlzIGRlcml2ZWQgYXMgdGhlIHVuaW9uIG9mIHRoZSBzZXRzIG9mIEludGVyZmFjZXMgcmVhbGl6ZWQgYnkgdGhlIHR5cGUgb2YgdGhlIFBvcnQgYW5kIGl0cyBzdXBlcnR5cGVzLCBvciBkaXJlY3RseSBmcm9tIHRoZSB0eXBlIG9mIHRoZSBQb3J0IGlmIHRoZSBQb3J0IGlzIHR5cGVkIGJ5IGFuIEludGVyZmFjZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVFbnVtIiBuYW1lPSJQc2V1ZG9zdGF0ZUtpbmQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlBzZXVkb3N0YXRlS2luZCBpcyBhbiBFbnVtZXJhdGlvbiB0eXBlIHRoYXQgaXMgdXNlZCB0byBkaWZmZXJlbnRpYXRlIHZhcmlvdXMga2luZHMgb2YgUHNldWRvc3RhdGVzLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0iaW5pdGlhbCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIGluaXRpYWwgcHNldWRvc3RhdGUgcmVwcmVzZW50cyBhIGRlZmF1bHQgdmVydGV4IHRoYXQgaXMgdGhlIHNvdXJjZSBmb3IgYSBzaW5nbGUgdHJhbnNpdGlvbiB0byB0aGUgZGVmYXVsdCBzdGF0ZSBvZiBhIGNvbXBvc2l0ZSBzdGF0ZS4gVGhlcmUgY2FuIGJlIGF0IG1vc3Qgb25lIGluaXRpYWwgdmVydGV4IGluIGEgcmVnaW9uLiBUaGUgb3V0Z29pbmcgdHJhbnNpdGlvbiBmcm9tIHRoZSBpbml0aWFsIHZlcnRleCBtYXkgaGF2ZSBhIGJlaGF2aW9yLCBidXQgbm90IGEgdHJpZ2dlciBvciBndWFyZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0iZGVlcEhpc3RvcnkiIHZhbHVlPSIxIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iRGVlcEhpc3RvcnkgcmVwcmVzZW50cyB0aGUgbW9zdCByZWNlbnQgYWN0aXZlIGNvbmZpZ3VyYXRpb24gb2YgdGhlIGNvbXBvc2l0ZSBzdGF0ZSB0aGF0IGRpcmVjdGx5IGNvbnRhaW5zIHRoaXMgcHNldWRvc3RhdGU7IGUuZy4gdGhlIHN0YXRlIGNvbmZpZ3VyYXRpb24gdGhhdCB3YXMgYWN0aXZlIHdoZW4gdGhlIGNvbXBvc2l0ZSBzdGF0ZSB3YXMgbGFzdCBleGl0ZWQuIEEgY29tcG9zaXRlIHN0YXRlIGNhbiBoYXZlIGF0IG1vc3Qgb25lIGRlZXAgaGlzdG9yeSB2ZXJ0ZXguIEF0IG1vc3Qgb25lIHRyYW5zaXRpb24gbWF5IG9yaWdpbmF0ZSBmcm9tIHRoZSBoaXN0b3J5IGNvbm5lY3RvciB0byB0aGUgZGVmYXVsdCBkZWVwIGhpc3Rvcnkgc3RhdGUuIFRoaXMgdHJhbnNpdGlvbiBpcyB0YWtlbiBpbiBjYXNlIHRoZSBjb21wb3NpdGUgc3RhdGUgaGFkIG5ldmVyIGJlZW4gYWN0aXZlIGJlZm9yZS4gRW50cnkgYWN0aW9ucyBvZiBzdGF0ZXMgZW50ZXJlZCBvbiB0aGUgcGF0aCB0byB0aGUgc3RhdGUgcmVwcmVzZW50ZWQgYnkgYSBkZWVwIGhpc3RvcnkgYXJlIHBlcmZvcm1lZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0ic2hhbGxvd0hpc3RvcnkiIHZhbHVlPSIyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iU2hhbGxvd0hpc3RvcnkgcmVwcmVzZW50cyB0aGUgbW9zdCByZWNlbnQgYWN0aXZlIHN1YnN0YXRlIG9mIGl0cyBjb250YWluaW5nIHN0YXRlIChidXQgbm90IHRoZSBzdWJzdGF0ZXMgb2YgdGhhdCBzdWJzdGF0ZSkuIEEgY29tcG9zaXRlIHN0YXRlIGNhbiBoYXZlIGF0IG1vc3Qgb25lIHNoYWxsb3cgaGlzdG9yeSB2ZXJ0ZXguIEEgdHJhbnNpdGlvbiBjb21pbmcgaW50byB0aGUgc2hhbGxvdyBoaXN0b3J5IHZlcnRleCBpcyBlcXVpdmFsZW50IHRvIGEgdHJhbnNpdGlvbiBjb21pbmcgaW50byB0aGUgbW9zdCByZWNlbnQgYWN0aXZlIHN1YnN0YXRlIG9mIGEgc3RhdGUuIEF0IG1vc3Qgb25lIHRyYW5zaXRpb24gbWF5IG9yaWdpbmF0ZSBmcm9tIHRoZSBoaXN0b3J5IGNvbm5lY3RvciB0byB0aGUgZGVmYXVsdCBzaGFsbG93IGhpc3Rvcnkgc3RhdGUuIFRoaXMgdHJhbnNpdGlvbiBpcyB0YWtlbiBpbiBjYXNlIHRoZSBjb21wb3NpdGUgc3RhdGUgaGFkIG5ldmVyIGJlZW4gYWN0aXZlIGJlZm9yZS4gRW50cnkgYWN0aW9ucyBvZiBzdGF0ZXMgZW50ZXJlZCBvbiB0aGUgcGF0aCB0byB0aGUgc3RhdGUgcmVwcmVzZW50ZWQgYnkgYSBzaGFsbG93IGhpc3RvcnkgYXJlIHBlcmZvcm1lZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0iam9pbiIgdmFsdWU9IjMiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJKb2luIHZlcnRpY2VzIHNlcnZlIHRvIG1lcmdlIHNldmVyYWwgdHJhbnNpdGlvbnMgZW1hbmF0aW5nIGZyb20gc291cmNlIHZlcnRpY2VzIGluIGRpZmZlcmVudCBvcnRob2dvbmFsIHJlZ2lvbnMuIFRoZSB0cmFuc2l0aW9ucyBlbnRlcmluZyBhIGpvaW4gdmVydGV4IGNhbm5vdCBoYXZlIGd1YXJkcyBvciB0cmlnZ2Vycy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0iZm9yayIgdmFsdWU9IjQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJGb3JrIHZlcnRpY2VzIHNlcnZlIHRvIHNwbGl0IGFuIGluY29taW5nIHRyYW5zaXRpb24gaW50byB0d28gb3IgbW9yZSB0cmFuc2l0aW9ucyB0ZXJtaW5hdGluZyBvbiBvcnRob2dvbmFsIHRhcmdldCB2ZXJ0aWNlcyAoaS5lLiB2ZXJ0aWNlcyBpbiBkaWZmZXJlbnQgcmVnaW9ucyBvZiBhIGNvbXBvc2l0ZSBzdGF0ZSkuIFRoZSBzZWdtZW50cyBvdXRnb2luZyBmcm9tIGEgZm9yayB2ZXJ0ZXggbXVzdCBub3QgaGF2ZSBndWFyZHMgb3IgdHJpZ2dlcnMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9Imp1bmN0aW9uIiB2YWx1ZT0iNSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9Ikp1bmN0aW9uIHZlcnRpY2VzIGFyZSBzZW1hbnRpYy1mcmVlIHZlcnRpY2VzIHRoYXQgYXJlIHVzZWQgdG8gY2hhaW4gdG9nZXRoZXIgbXVsdGlwbGUgdHJhbnNpdGlvbnMuIFRoZXkgYXJlIHVzZWQgdG8gY29uc3RydWN0IGNvbXBvdW5kIHRyYW5zaXRpb24gcGF0aHMgYmV0d2VlbiBzdGF0ZXMuIEZvciBleGFtcGxlLCBhIGp1bmN0aW9uIGNhbiBiZSB1c2VkIHRvIGNvbnZlcmdlIG11bHRpcGxlIGluY29taW5nIHRyYW5zaXRpb25zIGludG8gYSBzaW5nbGUgb3V0Z29pbmcgdHJhbnNpdGlvbiByZXByZXNlbnRpbmcgYSBzaGFyZWQgdHJhbnNpdGlvbiBwYXRoICh0aGlzIGlzIGtub3duIGFzIGFuIG1lcmdlKS4gQ29udmVyc2VseSwgdGhleSBjYW4gYmUgdXNlZCB0byBzcGxpdCBhbiBpbmNvbWluZyB0cmFuc2l0aW9uIGludG8gbXVsdGlwbGUgb3V0Z29pbmcgdHJhbnNpdGlvbiBzZWdtZW50cyB3aXRoIGRpZmZlcmVudCBndWFyZCBjb25kaXRpb25zLiBUaGlzIHJlYWxpemVzIGEgc3RhdGljIGNvbmRpdGlvbmFsIGJyYW5jaC4gKEluIHRoZSBsYXR0ZXIgY2FzZSwgb3V0Z29pbmcgdHJhbnNpdGlvbnMgd2hvc2UgZ3VhcmQgY29uZGl0aW9ucyBldmFsdWF0ZSB0byBmYWxzZSBhcmUgZGlzYWJsZWQuIEEgcHJlZGVmaW5lZCBndWFyZCBkZW5vdGVkICdlbHNlJyBtYXkgYmUgZGVmaW5lZCBmb3IgYXQgbW9zdCBvbmUgb3V0Z29pbmcgdHJhbnNpdGlvbi4gVGhpcyB0cmFuc2l0aW9uIGlzIGVuYWJsZWQgaWYgYWxsIHRoZSBndWFyZHMgbGFiZWxpbmcgdGhlIG90aGVyIHRyYW5zaXRpb25zIGFyZSBmYWxzZS4pIFN0YXRpYyBjb25kaXRpb25hbCBicmFuY2hlcyBhcmUgZGlzdGluY3QgZnJvbSBkeW5hbWljIGNvbmRpdGlvbmFsIGJyYW5jaGVzIHRoYXQgYXJlIHJlYWxpemVkIGJ5IGNob2ljZSB2ZXJ0aWNlcyAoZGVzY3JpYmVkIGJlbG93KS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0iY2hvaWNlIiB2YWx1ZT0iNiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkNob2ljZSB2ZXJ0aWNlcyB3aGljaCwgd2hlbiByZWFjaGVkLCByZXN1bHQgaW4gdGhlIGR5bmFtaWMgZXZhbHVhdGlvbiBvZiB0aGUgZ3VhcmRzIG9mIHRoZSB0cmlnZ2VycyBvZiBpdHMgb3V0Z29pbmcgdHJhbnNpdGlvbnMuIFRoaXMgcmVhbGl6ZXMgYSBkeW5hbWljIGNvbmRpdGlvbmFsIGJyYW5jaC4gSXQgYWxsb3dzIHNwbGl0dGluZyBvZiB0cmFuc2l0aW9ucyBpbnRvIG11bHRpcGxlIG91dGdvaW5nIHBhdGhzIHN1Y2ggdGhhdCB0aGUgZGVjaXNpb24gb24gd2hpY2ggcGF0aCB0byB0YWtlIG1heSBiZSBhIGZ1bmN0aW9uIG9mIHRoZSByZXN1bHRzIG9mIHByaW9yIGFjdGlvbnMgcGVyZm9ybWVkIGluIHRoZSBzYW1lIHJ1bi10b2NvbXBsZXRpb24gc3RlcC4gSWYgbW9yZSB0aGFuIG9uZSBvZiB0aGUgZ3VhcmRzIGV2YWx1YXRlcyB0byB0cnVlLCBhbiBhcmJpdHJhcnkgb25lIGlzIHNlbGVjdGVkLiBJZiBub25lIG9mIHRoZSBndWFyZHMgZXZhbHVhdGVzIHRvIHRydWUsIHRoZW4gdGhlIG1vZGVsIGlzIGNvbnNpZGVyZWQgaWxsLWZvcm1lZC4gKFRvIGF2b2lkIHRoaXMsIGl0IGlzIHJlY29tbWVuZGVkIHRvIGRlZmluZSBvbmUgb3V0Z29pbmcgdHJhbnNpdGlvbiB3aXRoIHRoZSBwcmVkZWZpbmVkIGVsc2UgZ3VhcmQgZm9yIGV2ZXJ5IGNob2ljZSB2ZXJ0ZXguKSBDaG9pY2UgdmVydGljZXMgc2hvdWxkIGJlIGRpc3Rpbmd1aXNoZWQgZnJvbSBzdGF0aWMgYnJhbmNoIHBvaW50cyB0aGF0IGFyZSBiYXNlZCBvbiBqdW5jdGlvbiBwb2ludHMgKGRlc2NyaWJlZCBhYm92ZSkuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9ImVudHJ5UG9pbnQiIHZhbHVlPSI3Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gZW50cnkgcG9pbnQgcHNldWRvc3RhdGUgaXMgYW4gZW50cnkgcG9pbnQgb2YgYSBzdGF0ZSBtYWNoaW5lIG9yIGNvbXBvc2l0ZSBzdGF0ZS4gSW4gZWFjaCByZWdpb24gb2YgdGhlIHN0YXRlIG1hY2hpbmUgb3IgY29tcG9zaXRlIHN0YXRlIGl0IGhhcyBhIHNpbmdsZSB0cmFuc2l0aW9uIHRvIGEgdmVydGV4IHdpdGhpbiB0aGUgc2FtZSByZWdpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9ImV4aXRQb2ludCIgdmFsdWU9IjgiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBleGl0IHBvaW50IHBzZXVkb3N0YXRlIGlzIGFuIGV4aXQgcG9pbnQgb2YgYSBzdGF0ZSBtYWNoaW5lIG9yIGNvbXBvc2l0ZSBzdGF0ZS4gRW50ZXJpbmcgYW4gZXhpdCBwb2ludCB3aXRoaW4gYW55IHJlZ2lvbiBvZiB0aGUgY29tcG9zaXRlIHN0YXRlIG9yIHN0YXRlIG1hY2hpbmUgcmVmZXJlbmNlZCBieSBhIHN1Ym1hY2hpbmUgc3RhdGUgaW1wbGllcyB0aGUgZXhpdCBvZiB0aGlzIGNvbXBvc2l0ZSBzdGF0ZSBvciBzdWJtYWNoaW5lIHN0YXRlIGFuZCB0aGUgdHJpZ2dlcmluZyBvZiB0aGUgdHJhbnNpdGlvbiB0aGF0IGhhcyB0aGlzIGV4aXQgcG9pbnQgYXMgc291cmNlIGluIHRoZSBzdGF0ZSBtYWNoaW5lIGVuY2xvc2luZyB0aGUgc3VibWFjaGluZSBvciBjb21wb3NpdGUgc3RhdGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9InRlcm1pbmF0ZSIgdmFsdWU9IjkiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJFbnRlcmluZyBhIHRlcm1pbmF0ZSBwc2V1ZG9zdGF0ZSBpbXBsaWVzIHRoYXQgdGhlIGV4ZWN1dGlvbiBvZiB0aGlzIHN0YXRlIG1hY2hpbmUgYnkgbWVhbnMgb2YgaXRzIGNvbnRleHQgb2JqZWN0IGlzIHRlcm1pbmF0ZWQuIFRoZSBzdGF0ZSBtYWNoaW5lIGRvZXMgbm90IGV4aXQgYW55IHN0YXRlcyBub3IgZG9lcyBpdCBwZXJmb3JtIGFueSBleGl0IGFjdGlvbnMgb3RoZXIgdGhhbiB0aG9zZSBhc3NvY2lhdGVkIHdpdGggdGhlIHRyYW5zaXRpb24gbGVhZGluZyB0byB0aGUgdGVybWluYXRlIHBzZXVkb3N0YXRlLiBFbnRlcmluZyBhIHRlcm1pbmF0ZSBwc2V1ZG9zdGF0ZSBpcyBlcXVpdmFsZW50IHRvIGludm9raW5nIGEgRGVzdHJveU9iamVjdEFjdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQcm90b2NvbENvbmZvcm1hbmNlIiBlU3VwZXJUeXBlcz0iIy8vRGlyZWN0ZWRSZWxhdGlvbnNoaXAiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgUHJvdG9jb2xTdGF0ZU1hY2hpbmUgY2FuIGJlIHJlZGVmaW5lZCBpbnRvIGEgbW9yZSBzcGVjaWZpYyBQcm90b2NvbFN0YXRlTWFjaGluZSBvciBpbnRvIGJlaGF2aW9yYWwgU3RhdGVNYWNoaW5lLiBQcm90b2NvbENvbmZvcm1hbmNlIGRlY2xhcmVzIHRoYXQgdGhlIHNwZWNpZmljIFByb3RvY29sU3RhdGVNYWNoaW5lIHNwZWNpZmllcyBhIHByb3RvY29sIHRoYXQgY29uZm9ybXMgdG8gdGhlIGdlbmVyYWwgUHJvdG9jb2xTdGF0ZU1hY2hpbmUgb3IgdGhhdCB0aGUgc3BlY2lmaWMgYmVoYXZpb3JhbCBTdGF0ZU1hY2hpbmUgYWJpZGVzIGJ5IHRoZSBwcm90b2NvbCBvZiB0aGUgZ2VuZXJhbCBQcm90b2NvbFN0YXRlTWFjaGluZS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZ2VuZXJhbE1hY2hpbmUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUHJvdG9jb2xTdGF0ZU1hY2hpbmUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgdGhlIFByb3RvY29sU3RhdGVNYWNoaW5lIHRvIHdoaWNoIHRoZSBzcGVjaWZpYyBQcm90b2NvbFN0YXRlTWFjaGluZSBjb25mb3Jtcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0RpcmVjdGVkUmVsYXRpb25zaGlwL3RhcmdldCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ic3BlY2lmaWNNYWNoaW5lIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1Byb3RvY29sU3RhdGVNYWNoaW5lIiBlT3Bwb3NpdGU9IiMvL1Byb3RvY29sU3RhdGVNYWNoaW5lL2NvbmZvcm1hbmNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iU3BlY2lmaWVzIHRoZSBQcm90b2NvbFN0YXRlTWFjaGluZSB3aGljaCBjb25mb3JtcyB0byB0aGUgZ2VuZXJhbCBQcm90b2NvbFN0YXRlTWFjaGluZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0RpcmVjdGVkUmVsYXRpb25zaGlwL3NvdXJjZSAjLy9FbGVtZW50L293bmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPcGVyYXRpb25UZW1wbGF0ZVBhcmFtZXRlciIgZVN1cGVyVHlwZXM9IiMvL1RlbXBsYXRlUGFyYW1ldGVyIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBPcGVyYXRpb25UZW1wbGF0ZVBhcmFtZXRlciBleHBvc2VzIGFuIE9wZXJhdGlvbiBhcyBhIGZvcm1hbCBwYXJhbWV0ZXIgZm9yIGEgdGVtcGxhdGUuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9ImR1cGxpY2F0ZXMiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBhcmFtZXRlcmVkRWxlbWVudCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZVR5cGUiIHZhbHVlPSJ1bWw6Ok9wZXJhdGlvbiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InBhcmFtZXRlcmVkRWxlbWVudCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1BhcmFtZXRlcmFibGVFbGVtZW50IiBlT3Bwb3NpdGU9IiMvL09wZXJhdGlvbi8lZHVwbGljYXRlcyUvdGVtcGxhdGVQYXJhbWV0ZXIiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIE9wZXJhdGlvbiBleHBvc2VkIGJ5IHRoaXMgT3BlcmF0aW9uVGVtcGxhdGVQYXJhbWV0ZXIuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9UZW1wbGF0ZVBhcmFtZXRlci9wYXJhbWV0ZXJlZEVsZW1lbnQiLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im1hdGNoX2RlZmF1bHRfc2lnbmF0dXJlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iZGVmYXVsdC0+bm90RW1wdHkoKSBpbXBsaWVzIChkZWZhdWx0Lm9jbElzS2luZE9mKE9wZXJhdGlvbikgYW5kIChsZXQgZGVmYXVsdE9wIDogT3BlcmF0aW9uID0gZGVmYXVsdC5vY2xBc1R5cGUoT3BlcmF0aW9uKSBpbiAmI3hEOyYjeEE7ICAgIGRlZmF1bHRPcC5vd25lZFBhcmFtZXRlci0+c2l6ZSgpID0gcGFyYW1ldGVyZWRFbGVtZW50Lm93bmVkUGFyYW1ldGVyLT5zaXplKCkgYW5kJiN4RDsmI3hBOyAgICBTZXF1ZW5jZXsxLi4gZGVmYXVsdE9wLm93bmVkUGFyYW1ldGVyLT5zaXplKCl9LT5mb3JBbGwoIGl4IHwgJiN4RDsmI3hBOyAgICAgICAgbGV0IHAxOiBQYXJhbWV0ZXIgPSBkZWZhdWx0T3Aub3duZWRQYXJhbWV0ZXItPmF0KGl4KSwgcDIgOiBQYXJhbWV0ZXIgPSBwYXJhbWV0ZXJlZEVsZW1lbnQub3duZWRQYXJhbWV0ZXItPmF0KGl4KSBpbiYjeEQ7JiN4QTsgICAgICAgICAgcDEudHlwZSA9IHAyLnR5cGUgYW5kIHAxLnVwcGVyID0gcDIudXBwZXIgYW5kIHAxLmxvd2VyID0gcDIubG93ZXIgYW5kIHAxLmRpcmVjdGlvbiA9IHAyLmRpcmVjdGlvbiBhbmQgcDEuaXNPcmRlcmVkID0gcDIuaXNPcmRlcmVkIGFuZCBwMS5pc1VuaXF1ZSA9IHAyLmlzVW5pcXVlKSkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTdHJ1Y3R1cmFsRmVhdHVyZSIgYWJzdHJhY3Q9InRydWUiIGVTdXBlclR5cGVzPSIjLy9GZWF0dXJlICMvL1R5cGVkRWxlbWVudCAjLy9NdWx0aXBsaWNpdHlFbGVtZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFN0cnVjdHVyYWxGZWF0dXJlIGlzIGEgdHlwZWQgZmVhdHVyZSBvZiBhIENsYXNzaWZpZXIgdGhhdCBzcGVjaWZpZXMgdGhlIHN0cnVjdHVyZSBvZiBpbnN0YW5jZXMgb2YgdGhlIENsYXNzaWZpZXIuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImlzUmVhZE9ubHkiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iZmFsc2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiBpc1JlYWRPbmx5IGlzIHRydWUsIHRoZSBTdHJ1Y3R1cmFsRmVhdHVyZSBtYXkgbm90IGJlIHdyaXR0ZW4gdG8gYWZ0ZXIgaW5pdGlhbGl6YXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRW51bSIgbmFtZT0iQWdncmVnYXRpb25LaW5kIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBZ2dyZWdhdGlvbktpbmQgaXMgYW4gRW51bWVyYXRpb24gZm9yIHNwZWNpZnlpbmcgdGhlIGtpbmQgb2YgYWdncmVnYXRpb24gb2YgYSBQcm9wZXJ0eS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9Im5vbmUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbmRpY2F0ZXMgdGhhdCB0aGUgUHJvcGVydHkgaGFzIG5vIGFnZ3JlZ2F0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lTGl0ZXJhbHM+CisgICAgPGVMaXRlcmFscyBuYW1lPSJzaGFyZWQiIHZhbHVlPSIxIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSW5kaWNhdGVzIHRoYXQgdGhlIFByb3BlcnR5IGhhcyBzaGFyZWQgYWdncmVnYXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9ImNvbXBvc2l0ZSIgdmFsdWU9IjIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbmRpY2F0ZXMgdGhhdCB0aGUgUHJvcGVydHkgaXMgYWdncmVnYXRlZCBjb21wb3NpdGVseSwgaS5lLiwgdGhlIGNvbXBvc2l0ZSBvYmplY3QgaGFzIHJlc3BvbnNpYmlsaXR5IGZvciB0aGUgZXhpc3RlbmNlIGFuZCBzdG9yYWdlIG9mIHRoZSBjb21wb3NlZCBvYmplY3RzIChwYXJ0cykuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUGFja2FnZU1lcmdlIiBlU3VwZXJUeXBlcz0iIy8vRGlyZWN0ZWRSZWxhdGlvbnNoaXAiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgcGFja2FnZSBtZXJnZSBkZWZpbmVzIGhvdyB0aGUgY29udGVudHMgb2Ygb25lIHBhY2thZ2UgYXJlIGV4dGVuZGVkIGJ5IHRoZSBjb250ZW50cyBvZiBhbm90aGVyIHBhY2thZ2UuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im1lcmdlZFBhY2thZ2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUGFja2FnZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJlZmVyZW5jZXMgdGhlIFBhY2thZ2UgdGhhdCBpcyB0byBiZSBtZXJnZWQgd2l0aCB0aGUgcmVjZWl2aW5nIHBhY2thZ2Ugb2YgdGhlIFBhY2thZ2VNZXJnZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0RpcmVjdGVkUmVsYXRpb25zaGlwL3RhcmdldCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVjZWl2aW5nUGFja2FnZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9QYWNrYWdlIiBlT3Bwb3NpdGU9IiMvL1BhY2thZ2UvcGFja2FnZU1lcmdlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmVmZXJlbmNlcyB0aGUgUGFja2FnZSB0aGF0IGlzIGJlaW5nIGV4dGVuZGVkIHdpdGggdGhlIGNvbnRlbnRzIG9mIHRoZSBtZXJnZWQgcGFja2FnZSBvZiB0aGUgUGFja2FnZU1lcmdlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRGlyZWN0ZWRSZWxhdGlvbnNoaXAvc291cmNlICMvL0VsZW1lbnQvb3duZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlByb2ZpbGVBcHBsaWNhdGlvbiIgZVN1cGVyVHlwZXM9IiMvL0RpcmVjdGVkUmVsYXRpb25zaGlwIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIHByb2ZpbGUgYXBwbGljYXRpb24gaXMgdXNlZCB0byBzaG93IHdoaWNoIHByb2ZpbGVzIGhhdmUgYmVlbiBhcHBsaWVkIHRvIGEgcGFja2FnZS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0QXBwbGllZERlZmluaXRpb24iIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iZWNvcmU6RUNsYXNzIGVjb3JlLmVjb3JlIy8vRVBhY2thZ2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXRyaWV2ZXMgdGhlIGRlZmluaXRpb24gKEVjb3JlIHJlcHJlc2VudGF0aW9uKSBvZiB0aGUgcHJvZmlsZSBhc3NvY2lhdGVkIHdpdGggdGhpcyBwcm9maWxlIGFwcGxpY2F0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0QXBwbGllZERlZmluaXRpb24iIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iZWNvcmU6RUNsYXNzIGVjb3JlLmVjb3JlIy8vRU5hbWVkRWxlbWVudCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHJpZXZlcyB0aGUgZGVmaW5pdGlvbiAoRWNvcmUgcmVwcmVzZW50YXRpb24pIG9mIHRoZSBzcGVjaWZpZWQgbmFtZWQgZWxlbWVudCBpbiB0aGUgcHJvZmlsZSBhc3NvY2lhdGVkIHdpdGggdGhpcyBwcm9maWxlIGFwcGxpY2F0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibmFtZWRFbGVtZW50IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL05hbWVkRWxlbWVudCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbmFtZWQgZWxlbWVudCBmb3Igd2hpY2ggdG8gcmV0cmlldmUgdGhlIGFwcGxpZWQgZGVmaW5pdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImFwcGxpZWRQcm9maWxlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1Byb2ZpbGUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZWZlcmVuY2VzIHRoZSBQcm9maWxlcyB0aGF0IGFyZSBhcHBsaWVkIHRvIGEgUGFja2FnZSB0aHJvdWdoIHRoaXMgUHJvZmlsZUFwcGxpY2F0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRGlyZWN0ZWRSZWxhdGlvbnNoaXAvdGFyZ2V0Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpc1N0cmljdCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSJmYWxzZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNwZWNpZmllcyB0aGF0IHRoZSBQcm9maWxlIGZpbHRlcmluZyBydWxlcyBmb3IgdGhlIG1ldGFjbGFzc2VzIG9mIHRoZSByZWZlcmVuY2VkIG1ldGFtb2RlbCBzaGFsbCBiZSBzdHJpY3RseSBhcHBsaWVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJhcHBseWluZ1BhY2thZ2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUGFja2FnZSIgZU9wcG9zaXRlPSIjLy9QYWNrYWdlL3Byb2ZpbGVBcHBsaWNhdGlvbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBwYWNrYWdlIHRoYXQgb3ducyB0aGUgcHJvZmlsZSBhcHBsaWNhdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0RpcmVjdGVkUmVsYXRpb25zaGlwL3NvdXJjZSAjLy9FbGVtZW50L293bmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFbnVtZXJhdGlvbiIgZVN1cGVyVHlwZXM9IiMvL0RhdGFUeXBlIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBFbnVtZXJhdGlvbiBpcyBhIERhdGFUeXBlIHdob3NlIHZhbHVlcyBhcmUgZW51bWVyYXRlZCBpbiB0aGUgbW9kZWwgYXMgRW51bWVyYXRpb25MaXRlcmFscy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaW1tdXRhYmxlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ib3duZWRBdHRyaWJ1dGUtPmZvckFsbChpc1JlYWRPbmx5KSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib3duZWRMaXRlcmFsIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL0VudW1lcmF0aW9uTGl0ZXJhbCIgY29udGFpbm1lbnQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vRW51bWVyYXRpb25MaXRlcmFsL2VudW1lcmF0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG9yZGVyZWQgc2V0IG9mIGxpdGVyYWxzIG93bmVkIGJ5IHRoaXMgRW51bWVyYXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lc3BhY2Uvb3duZWRNZW1iZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkVudW1lcmF0aW9uTGl0ZXJhbCIgZVN1cGVyVHlwZXM9IiMvL0luc3RhbmNlU3BlY2lmaWNhdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gRW51bWVyYXRpb25MaXRlcmFsIGlzIGEgdXNlci1kZWZpbmVkIGRhdGEgdmFsdWUgZm9yIGFuIEVudW1lcmF0aW9uLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJkdXBsaWNhdGVzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJjbGFzc2lmaWVyIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJsb3dlckJvdW5kIiB2YWx1ZT0iMSIvPgorICAgICAgICA8ZGV0YWlscyBrZXk9InVwcGVyQm91bmQiIHZhbHVlPSIxIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iY2xhc3NpZmllciIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICAgIGVUeXBlPSIjLy9FbnVtZXJhdGlvbiIgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiCisgICAgICAgICAgZGVyaXZlZD0idHJ1ZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2xhc3NpZmllciBvZiB0aGlzIEVudW1lcmF0aW9uTGl0ZXJhbCBkZXJpdmVkIHRvIGJlIGVxdWFsIHRvIGl0cyBFbnVtZXJhdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL0luc3RhbmNlU3BlY2lmaWNhdGlvbi9jbGFzc2lmaWVyIi8+CisgICAgICA8L2NvbnRlbnRzPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRDbGFzc2lmaWVycyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQ2xhc3NpZmllciI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRDbGFzc2lmaWVyIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0VudW1lcmF0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iRGVyaXZhdGlvbiBvZiBFbnVtZXJhdGlvbjo6L2NsYXNzaWZpZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9Im9yaWdpbmFsTmFtZSIgdmFsdWU9ImNsYXNzaWZpZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImVudW1lcmF0aW9uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlbnVtZXJhdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9FbnVtZXJhdGlvbiIgZU9wcG9zaXRlPSIjLy9FbnVtZXJhdGlvbi9vd25lZExpdGVyYWwiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgRW51bWVyYXRpb24gdGhhdCB0aGlzIEVudW1lcmF0aW9uTGl0ZXJhbCBpcyBhIG1lbWJlciBvZi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVkRWxlbWVudC9uYW1lc3BhY2UiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ikluc3RhbmNlU3BlY2lmaWNhdGlvbiIgZVN1cGVyVHlwZXM9IiMvL0RlcGxveW1lbnRUYXJnZXQgIy8vUGFja2FnZWFibGVFbGVtZW50ICMvL0RlcGxveWVkQXJ0aWZhY3QiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIEluc3RhbmNlU3BlY2lmaWNhdGlvbiBpcyBhIG1vZGVsIGVsZW1lbnQgdGhhdCByZXByZXNlbnRzIGFuIGluc3RhbmNlIGluIGEgbW9kZWxlZCBzeXN0ZW0uIEFuIEluc3RhbmNlU3BlY2lmaWNhdGlvbiBjYW4gYWN0IGFzIGEgRGVwbG95bWVudFRhcmdldCBpbiBhIERlcGxveW1lbnQgcmVsYXRpb25zaGlwLCBpbiB0aGUgY2FzZSB0aGF0IGl0IHJlcHJlc2VudHMgYW4gaW5zdGFuY2Ugb2YgYSBOb2RlLiBJdCBjYW4gYWxzbyBhY3QgYXMgYSBEZXBsb3llZEFydGlmYWN0LCBpZiBpdCByZXByZXNlbnRzIGFuIGluc3RhbmNlIG9mIGFuIEFydGlmYWN0LiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJkZXBsb3ltZW50X2FydGlmYWN0IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iZGVwbG95bWVudEZvckFydGlmYWN0LT5ub3RFbXB0eSgpIGltcGxpZXMgY2xhc3NpZmllci0+ZXhpc3RzKG9jbElzS2luZE9mKEFydGlmYWN0KSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBJbnN0YW5jZVNwZWNpZmljYXRpb24gY2FuIGFjdCBhcyBhIERlcGxveWVkQXJ0aWZhY3QgaWYgaXQgcmVwcmVzZW50cyBhbiBpbnN0YW5jZSBvZiBhbiBBcnRpZmFjdC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InN0cnVjdHVyYWxfZmVhdHVyZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImNsYXNzaWZpZXItPmZvckFsbChjIHwgKGMuYWxsU2xvdHRhYmxlRmVhdHVyZXMoKS0+Zm9yQWxsKGYgfCBzbG90LT5zZWxlY3QocyB8IHMuZGVmaW5pbmdGZWF0dXJlID0gZiktPnNpemUoKSAmbHQ7PSAxKSkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iTm8gbW9yZSB0aGFuIG9uZSBzbG90IGluIGFuIEluc3RhbmNlU3BlY2lmaWNhdGlvbiBtYXkgaGF2ZSB0aGUgc2FtZSBkZWZpbmluZ0ZlYXR1cmUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJkZWZpbmluZ19mZWF0dXJlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ic2xvdC0+Zm9yQWxsKHMgfCBjbGFzc2lmaWVyLT5leGlzdHMgKGMgfCBjLmFsbFNsb3R0YWJsZUZlYXR1cmVzKCktPmluY2x1ZGVzIChzLmRlZmluaW5nRmVhdHVyZSkpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBkZWZpbmluZ0ZlYXR1cmUgb2YgZWFjaCBzbG90IGlzIGEgU3RydWN0dXJhbEZlYXR1cmUgcmVsYXRlZCB0byBhIGNsYXNzaWZpZXIgb2YgdGhlIEluc3RhbmNlU3BlY2lmaWNhdGlvbiwgaW5jbHVkaW5nIGRpcmVjdCBhdHRyaWJ1dGVzLCBpbmhlcml0ZWQgYXR0cmlidXRlcywgcHJpdmF0ZSBhdHRyaWJ1dGVzIGluIGdlbmVyYWxpemF0aW9ucywgYW5kIG1lbWJlckVuZHMgb2YgQXNzb2NpYXRpb25zLCBidXQgZXhjbHVkaW5nIHJlZGVmaW5lZCBTdHJ1Y3R1cmFsRmVhdHVyZXMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJkZXBsb3ltZW50X3RhcmdldCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImRlcGxveW1lbnQtPm5vdEVtcHR5KCkgaW1wbGllcyBjbGFzc2lmaWVyLT5leGlzdHMobm9kZSB8IG5vZGUub2NsSXNLaW5kT2YoTm9kZSkgYW5kIE5vZGUuYWxsSW5zdGFuY2VzKCktPmV4aXN0cyhuIHwgbi5wYXJ0LT5leGlzdHMocCB8IHAudHlwZSA9IG5vZGUpKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBJbnN0YW5jZVNwZWNpZmljYXRpb24gY2FuIGFjdCBhcyBhIERlcGxveW1lbnRUYXJnZXQgaWYgaXQgcmVwcmVzZW50cyBhbiBpbnN0YW5jZSBvZiBhIE5vZGUgYW5kIGZ1bmN0aW9ucyBhcyBhIHBhcnQgaW4gdGhlIGludGVybmFsIHN0cnVjdHVyZSBvZiBhbiBlbmNvbXBhc3NpbmcgTm9kZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImNsYXNzaWZpZXIiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0NsYXNzaWZpZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgQ2xhc3NpZmllciBvciBDbGFzc2lmaWVycyBvZiB0aGUgcmVwcmVzZW50ZWQgaW5zdGFuY2UuIElmIG11bHRpcGxlIENsYXNzaWZpZXJzIGFyZSBzcGVjaWZpZWQsIHRoZSBpbnN0YW5jZSBpcyBjbGFzc2lmaWVkIGJ5IGFsbCBvZiB0aGVtLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJzbG90IiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9TbG90IiBjb250YWlubWVudD0idHJ1ZSIgZU9wcG9zaXRlPSIjLy9TbG90L293bmluZ0luc3RhbmNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBTbG90IGdpdmluZyB0aGUgdmFsdWUgb3IgdmFsdWVzIG9mIGEgU3RydWN0dXJhbEZlYXR1cmUgb2YgdGhlIGluc3RhbmNlLiBBbiBJbnN0YW5jZVNwZWNpZmljYXRpb24gY2FuIGhhdmUgb25lIFNsb3QgcGVyIFN0cnVjdHVyYWxGZWF0dXJlIG9mIGl0cyBDbGFzc2lmaWVycywgaW5jbHVkaW5nIGluaGVyaXRlZCBmZWF0dXJlcy4gSXQgaXMgbm90IG5lY2Vzc2FyeSB0byBtb2RlbCBhIFNsb3QgZm9yIGV2ZXJ5IFN0cnVjdHVyYWxGZWF0dXJlLCBpbiB3aGljaCBjYXNlIHRoZSBJbnN0YW5jZVNwZWNpZmljYXRpb24gaXMgYSBwYXJ0aWFsIGRlc2NyaXB0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InNwZWNpZmljYXRpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vVmFsdWVTcGVjaWZpY2F0aW9uIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgc3BlY2lmaWNhdGlvbiBvZiBob3cgdG8gY29tcHV0ZSwgZGVyaXZlLCBvciBjb25zdHJ1Y3QgdGhlIGluc3RhbmNlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlNsb3QiIGVTdXBlclR5cGVzPSIjLy9FbGVtZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFNsb3QgZGVzaWduYXRlcyB0aGF0IGFuIGVudGl0eSBtb2RlbGVkIGJ5IGFuIEluc3RhbmNlU3BlY2lmaWNhdGlvbiBoYXMgYSB2YWx1ZSBvciB2YWx1ZXMgZm9yIGEgc3BlY2lmaWMgU3RydWN0dXJhbEZlYXR1cmUuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImRlZmluaW5nRmVhdHVyZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9TdHJ1Y3R1cmFsRmVhdHVyZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBTdHJ1Y3R1cmFsRmVhdHVyZSB0aGF0IHNwZWNpZmllcyB0aGUgdmFsdWVzIHRoYXQgbWF5IGJlIGhlbGQgYnkgdGhlIFNsb3QuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InZhbHVlIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL1ZhbHVlU3BlY2lmaWNhdGlvbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgdmFsdWUgb3IgdmFsdWVzIGhlbGQgYnkgdGhlIFNsb3QuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib3duaW5nSW5zdGFuY2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vSW5zdGFuY2VTcGVjaWZpY2F0aW9uIiBlT3Bwb3NpdGU9IiMvL0luc3RhbmNlU3BlY2lmaWNhdGlvbi9zbG90Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIEluc3RhbmNlU3BlY2lmaWNhdGlvbiB0aGF0IG93bnMgdGhpcyBTbG90LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lciIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUHJpbWl0aXZlVHlwZSIgZVN1cGVyVHlwZXM9IiMvL0RhdGFUeXBlIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFByaW1pdGl2ZVR5cGUgZGVmaW5lcyBhIHByZWRlZmluZWQgRGF0YVR5cGUsIHdpdGhvdXQgYW55IHN1YnN0cnVjdHVyZS4gQSBQcmltaXRpdmVUeXBlIG1heSBoYXZlIGFuIGFsZ2VicmEgYW5kIG9wZXJhdGlvbnMgZGVmaW5lZCBvdXRzaWRlIG9mIFVNTCwgZm9yIGV4YW1wbGUsIG1hdGhlbWF0aWNhbGx5LiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFbGVtZW50SW1wb3J0IiBlU3VwZXJUeXBlcz0iIy8vRGlyZWN0ZWRSZWxhdGlvbnNoaXAiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIEVsZW1lbnRJbXBvcnQgaWRlbnRpZmllcyBhIE5hbWVkRWxlbWVudCBpbiBhIE5hbWVzcGFjZSBvdGhlciB0aGFuIHRoZSBvbmUgdGhhdCBvd25zIHRoYXQgTmFtZWRFbGVtZW50IGFuZCBhbGxvd3MgdGhlIE5hbWVkRWxlbWVudCB0byBiZSByZWZlcmVuY2VkIHVzaW5nIGFuIHVucXVhbGlmaWVkIG5hbWUgaW4gdGhlIE5hbWVzcGFjZSBvd25pbmcgdGhlIEVsZW1lbnRJbXBvcnQuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImltcG9ydGVkX2VsZW1lbnRfaXNfcHVibGljIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaW1wb3J0ZWRFbGVtZW50LnZpc2liaWxpdHkgJmx0Oz4gbnVsbCBpbXBsaWVzIGltcG9ydGVkRWxlbWVudC52aXNpYmlsaXR5ID0gVmlzaWJpbGl0eUtpbmQ6OnB1YmxpYyIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIGltcG9ydGVkRWxlbWVudCBoYXMgZWl0aGVyIHB1YmxpYyB2aXNpYmlsaXR5IG9yIG5vIHZpc2liaWxpdHkgYXQgYWxsLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0idmlzaWJpbGl0eV9wdWJsaWNfb3JfcHJpdmF0ZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InZpc2liaWxpdHkgPSBWaXNpYmlsaXR5S2luZDo6cHVibGljIG9yIHZpc2liaWxpdHkgPSBWaXNpYmlsaXR5S2luZDo6cHJpdmF0ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB2aXNpYmlsaXR5IG9mIGFuIEVsZW1lbnRJbXBvcnQgaXMgZWl0aGVyIHB1YmxpYyBvciBwcml2YXRlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0TmFtZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgZ2V0TmFtZSgpIHJldHVybnMgdGhlIG5hbWUgdW5kZXIgd2hpY2ggdGhlIGltcG9ydGVkIFBhY2thZ2VhYmxlRWxlbWVudCB3aWxsIGJlIGtub3duIGluIHRoZSBpbXBvcnRpbmcgbmFtZXNwYWNlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaWYgYWxpYXMtPm5vdEVtcHR5KCkgdGhlbiYjeEE7ICBhbGlhcyYjeEE7ZWxzZSYjeEE7ICBpbXBvcnRlZEVsZW1lbnQubmFtZSYjeEE7ZW5kaWYiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImFsaWFzIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyIgdW5zZXR0YWJsZT0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNwZWNpZmllcyB0aGUgbmFtZSB0aGF0IHNob3VsZCBiZSBhZGRlZCB0byB0aGUgaW1wb3J0aW5nIE5hbWVzcGFjZSBpbiBsaWV1IG9mIHRoZSBuYW1lIG9mIHRoZSBpbXBvcnRlZCBQYWNrYWdhYmxlRWxlbWVudC4gVGhlIGFsaWFzIG11c3Qgbm90IGNsYXNoIHdpdGggYW55IG90aGVyIG1lbWJlciBpbiB0aGUgaW1wb3J0aW5nIE5hbWVzcGFjZS4gQnkgZGVmYXVsdCwgbm8gYWxpYXMgaXMgdXNlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iaW1wb3J0ZWRFbGVtZW50IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1BhY2thZ2VhYmxlRWxlbWVudCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNwZWNpZmllcyB0aGUgUGFja2FnZWFibGVFbGVtZW50IHdob3NlIG5hbWUgaXMgdG8gYmUgYWRkZWQgdG8gYSBOYW1lc3BhY2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9EaXJlY3RlZFJlbGF0aW9uc2hpcC90YXJnZXQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImltcG9ydGluZ05hbWVzcGFjZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9OYW1lc3BhY2UiIGVPcHBvc2l0ZT0iIy8vTmFtZXNwYWNlL2VsZW1lbnRJbXBvcnQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgdGhlIE5hbWVzcGFjZSB0aGF0IGltcG9ydHMgYSBQYWNrYWdlYWJsZUVsZW1lbnQgZnJvbSBhbm90aGVyIE5hbWVzcGFjZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0RpcmVjdGVkUmVsYXRpb25zaGlwL3NvdXJjZSAjLy9FbGVtZW50L293bmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJ2aXNpYmlsaXR5IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1Zpc2liaWxpdHlLaW5kIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSJwdWJsaWMiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgdGhlIHZpc2liaWxpdHkgb2YgdGhlIGltcG9ydGVkIFBhY2thZ2VhYmxlRWxlbWVudCB3aXRoaW4gdGhlIGltcG9ydGluZ05hbWVzcGFjZSwgaS5lLiwgd2hldGhlciB0aGUgIGltcG9ydGVkRWxlbWVudCB3aWxsIGluIHR1cm4gYmUgdmlzaWJsZSB0byBvdGhlciBOYW1lc3BhY2VzLiBJZiB0aGUgRWxlbWVudEltcG9ydCBpcyBwdWJsaWMsIHRoZSBpbXBvcnRlZEVsZW1lbnQgd2lsbCBiZSB2aXNpYmxlIG91dHNpZGUgdGhlIGltcG9ydGluZ05hbWVzcGFjZSB3aGlsZSwgaWYgdGhlIEVsZW1lbnRJbXBvcnQgaXMgcHJpdmF0ZSwgaXQgd2lsbCBub3QuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlBhY2thZ2VJbXBvcnQiIGVTdXBlclR5cGVzPSIjLy9EaXJlY3RlZFJlbGF0aW9uc2hpcCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBQYWNrYWdlSW1wb3J0IGlzIGEgUmVsYXRpb25zaGlwIHRoYXQgaW1wb3J0cyBhbGwgdGhlIG5vbi1wcml2YXRlIG1lbWJlcnMgb2YgYSBQYWNrYWdlIGludG8gdGhlIE5hbWVzcGFjZSBvd25pbmcgdGhlIFBhY2thZ2VJbXBvcnQsIHNvIHRoYXQgdGhvc2UgRWxlbWVudHMgbWF5IGJlIHJlZmVycmVkIHRvIGJ5IHRoZWlyIHVucXVhbGlmaWVkIG5hbWVzIGluIHRoZSBpbXBvcnRpbmdOYW1lc3BhY2UuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InB1YmxpY19vcl9wcml2YXRlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0idmlzaWJpbGl0eSA9IFZpc2liaWxpdHlLaW5kOjpwdWJsaWMgb3IgdmlzaWJpbGl0eSA9IFZpc2liaWxpdHlLaW5kOjpwcml2YXRlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHZpc2liaWxpdHkgb2YgYSBQYWNrYWdlSW1wb3J0IGlzIGVpdGhlciBwdWJsaWMgb3IgcHJpdmF0ZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImltcG9ydGVkUGFja2FnZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9QYWNrYWdlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iU3BlY2lmaWVzIHRoZSBQYWNrYWdlIHdob3NlIG1lbWJlcnMgYXJlIGltcG9ydGVkIGludG8gYSBOYW1lc3BhY2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9EaXJlY3RlZFJlbGF0aW9uc2hpcC90YXJnZXQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImltcG9ydGluZ05hbWVzcGFjZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9OYW1lc3BhY2UiIGVPcHBvc2l0ZT0iIy8vTmFtZXNwYWNlL3BhY2thZ2VJbXBvcnQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgdGhlIE5hbWVzcGFjZSB0aGF0IGltcG9ydHMgdGhlIG1lbWJlcnMgZnJvbSBhIFBhY2thZ2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9EaXJlY3RlZFJlbGF0aW9uc2hpcC9zb3VyY2UgIy8vRWxlbWVudC9vd25lciIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0idmlzaWJpbGl0eSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9WaXNpYmlsaXR5S2luZCIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0icHVibGljIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iU3BlY2lmaWVzIHRoZSB2aXNpYmlsaXR5IG9mIHRoZSBpbXBvcnRlZCBQYWNrYWdlYWJsZUVsZW1lbnRzIHdpdGhpbiB0aGUgaW1wb3J0aW5nTmFtZXNwYWNlLCBpLmUuLCB3aGV0aGVyIGltcG9ydGVkIEVsZW1lbnRzIHdpbGwgaW4gdHVybiBiZSB2aXNpYmxlIHRvIG90aGVyIE5hbWVzcGFjZXMuIElmIHRoZSBQYWNrYWdlSW1wb3J0IGlzIHB1YmxpYywgdGhlIGltcG9ydGVkIEVsZW1lbnRzIHdpbGwgYmUgdmlzaWJsZSBvdXRzaWRlIHRoZSBpbXBvcnRpbmdOYW1lc3BhY2UsIHdoaWxlLCBpZiB0aGUgUGFja2FnZUltcG9ydCBpcyBwcml2YXRlLCB0aGV5IHdpbGwgbm90LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFeHRlbnNpb24iIGVTdXBlclR5cGVzPSIjLy9Bc3NvY2lhdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gZXh0ZW5zaW9uIGlzIHVzZWQgdG8gaW5kaWNhdGUgdGhhdCB0aGUgcHJvcGVydGllcyBvZiBhIG1ldGFjbGFzcyBhcmUgZXh0ZW5kZWQgdGhyb3VnaCBhIHN0ZXJlb3R5cGUsIGFuZCBnaXZlcyB0aGUgYWJpbGl0eSB0byBmbGV4aWJseSBhZGQgKGFuZCBsYXRlciByZW1vdmUpIHN0ZXJlb3R5cGVzIHRvIGNsYXNzZXMuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9ImR1cGxpY2F0ZXMiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Im93bmVkRW5kIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJsb3dlckJvdW5kIiB2YWx1ZT0iMSIvPgorICAgICAgICA8ZGV0YWlscyBrZXk9InVwcGVyQm91bmQiIHZhbHVlPSIxIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib3duZWRFbmQiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vRXh0ZW5zaW9uRW5kIgorICAgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJlZmVyZW5jZXMgdGhlIGVuZCBvZiB0aGUgZXh0ZW5zaW9uIHRoYXQgaXMgdHlwZWQgYnkgYSBTdGVyZW90eXBlLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vQXNzb2NpYXRpb24vb3duZWRFbmQiLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im5vbl9vd25lZF9lbmQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJtZXRhY2xhc3NFbmQoKS0+bm90RW1wdHkoKSBhbmQgbWV0YWNsYXNzRW5kKCkudHlwZS5vY2xJc0tpbmRPZihDbGFzcykiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbm9uLW93bmVkIGVuZCBvZiBhbiBFeHRlbnNpb24gaXMgdHlwZWQgYnkgYSBDbGFzcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzX2JpbmFyeSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im1lbWJlckVuZC0+c2l6ZSgpID0gMiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIEV4dGVuc2lvbiBpcyBiaW5hcnksIGkuZS4sIGl0IGhhcyBvbmx5IHR3byBtZW1iZXJFbmRzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0U3RlcmVvdHlwZSIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSIjLy9TdGVyZW90eXBlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0cmlldmVzIHRoZSBzdGVyZW90eXBlIHRoYXQgZXh0ZW5kcyBhIG1ldGFjbGFzcyB0aHJvdWdoIHRoaXMgZXh0ZW5zaW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0U3RlcmVvdHlwZUVuZCIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSIjLy9Qcm9wZXJ0eSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHJpZXZlcyB0aGUgZXh0ZW5zaW9uIGVuZCB0aGF0IGlzIHR5cGVkIGJ5IGEgc3RlcmVvdHlwZSAoYXMgb3Bwb3NlZCB0byBhIG1ldGFjbGFzcykuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc1JlcXVpcmVkIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgaXNSZXF1aXJlZCgpIGlzIHRydWUgaWYgdGhlIG93bmVkIGVuZCBoYXMgYSBtdWx0aXBsaWNpdHkgd2l0aCB0aGUgbG93ZXIgYm91bmQgb2YgMS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im93bmVkRW5kLmxvd2VyQm91bmQoKSA9IDEiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldE1ldGFjbGFzcyIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9DbGFzcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBtZXRhY2xhc3MoKSByZXR1cm5zIHRoZSBtZXRhY2xhc3MgdGhhdCBpcyBiZWluZyBleHRlbmRlZCAoYXMgb3Bwb3NlZCB0byB0aGUgZXh0ZW5kaW5nIHN0ZXJlb3R5cGUpLiIvPgorICAgICAgICA8ZGV0YWlscyBrZXk9InN1cHByZXNzZWRWaXNpYmlsaXR5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ib3JpZ2luYWxOYW1lIiB2YWx1ZT0ibWV0YWNsYXNzIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJtZXRhY2xhc3NFbmQoKS50eXBlLm9jbEFzVHlwZShDbGFzcykiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im1ldGFjbGFzc0VuZCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Qcm9wZXJ0eSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBtZXRhY2xhc3NFbmQoKSByZXR1cm5zIHRoZSBQcm9wZXJ0eSB0aGF0IGlzIHR5cGVkIGJ5IGEgbWV0YWNsYXNzIChhcyBvcHBvc2VkIHRvIGEgc3RlcmVvdHlwZSkuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJtZW1iZXJFbmQtPnJlamVjdChwIHwgb3duZWRFbmQtPmluY2x1ZGVzKHAub2NsQXNUeXBlKEV4dGVuc2lvbkVuZCkpKS0+YW55KHRydWUpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpc1JlcXVpcmVkIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGNoYW5nZWFibGU9ImZhbHNlIgorICAgICAgICB2b2xhdGlsZT0idHJ1ZSIgdHJhbnNpZW50PSJ0cnVlIiBkZXJpdmVkPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSW5kaWNhdGVzIHdoZXRoZXIgYW4gaW5zdGFuY2Ugb2YgdGhlIGV4dGVuZGluZyBzdGVyZW90eXBlIG11c3QgYmUgY3JlYXRlZCB3aGVuIGFuIGluc3RhbmNlIG9mIHRoZSBleHRlbmRlZCBjbGFzcyBpcyBjcmVhdGVkLiBUaGUgYXR0cmlidXRlIHZhbHVlIGlzIGRlcml2ZWQgZnJvbSB0aGUgdmFsdWUgb2YgdGhlIGxvd2VyIHByb3BlcnR5IG9mIHRoZSBFeHRlbnNpb25FbmQgcmVmZXJlbmNlZCBieSBFeHRlbnNpb246Om93bmVkRW5kOyBhIGxvd2VyIHZhbHVlIG9mIDEgbWVhbnMgdGhhdCBpc1JlcXVpcmVkIGlzIHRydWUsIGJ1dCBvdGhlcndpc2UgaXQgaXMgZmFsc2UuIFNpbmNlIHRoZSBkZWZhdWx0IHZhbHVlIG9mIEV4dGVuc2lvbkVuZDo6bG93ZXIgaXMgMCwgdGhlIGRlZmF1bHQgdmFsdWUgb2YgaXNSZXF1aXJlZCBpcyBmYWxzZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ibWV0YWNsYXNzIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0NsYXNzIiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIKKyAgICAgICAgZGVyaXZlZD0idHJ1ZSIgZU9wcG9zaXRlPSIjLy9DbGFzcy9leHRlbnNpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZWZlcmVuY2VzIHRoZSBDbGFzcyB0aGF0IGlzIGV4dGVuZGVkIHRocm91Z2ggYW4gRXh0ZW5zaW9uLiBUaGUgcHJvcGVydHkgaXMgZGVyaXZlZCBmcm9tIHRoZSB0eXBlIG9mIHRoZSBtZW1iZXJFbmQgdGhhdCBpcyBub3QgdGhlIG93bmVkRW5kLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFeHRlbnNpb25FbmQiIGVTdXBlclR5cGVzPSIjLy9Qcm9wZXJ0eSI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gZXh0ZW5zaW9uIGVuZCBpcyB1c2VkIHRvIHRpZSBhbiBleHRlbnNpb24gdG8gYSBzdGVyZW90eXBlIHdoZW4gZXh0ZW5kaW5nIGEgbWV0YWNsYXNzLiYjeEE7VGhlIGRlZmF1bHQgbXVsdGlwbGljaXR5IG9mIGFuIGV4dGVuc2lvbiBlbmQgaXMgMC4uMS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iZHVwbGljYXRlcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0idHlwZSI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ibG93ZXJCb3VuZCIgdmFsdWU9IjEiLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJlVHlwZSIgdmFsdWU9InVtbDo6U3RlcmVvdHlwZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIG5hbWU9ImdldExvd2VyIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0ludGVnZXIiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL011bHRpcGxpY2l0eUVsZW1lbnQvZ2V0TG93ZXIiLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIG5hbWU9InNldExvd2VyIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL011bHRpcGxpY2l0eUVsZW1lbnQvc2V0TG93ZXIiLz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im5ld0xvd2VyIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0ludGVnZXIiLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIG5hbWU9Imxvd2VyQm91bmQiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vSW50ZWdlciI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgbG93ZXJCb3VuZCgpIHJldHVybnMgdGhlIGxvd2VyIGJvdW5kIG9mIHRoZSBtdWx0aXBsaWNpdHkgYXMgYW4gSW50ZWdlci4gVGhpcyBpcyBhIHJlZGVmaW5pdGlvbiBvZiB0aGUgZGVmYXVsdCBsb3dlciBib3VuZCwgd2hpY2ggbm9ybWFsbHksIGZvciBNdWx0aXBsaWNpdHlFbGVtZW50cywgZXZhbHVhdGVzIHRvIDEgaWYgZW1wdHkuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9NdWx0aXBsaWNpdHlFbGVtZW50L2xvd2VyQm91bmQiLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaWYgbG93ZXJWYWx1ZT1udWxsIHRoZW4gMCBlbHNlIGxvd2VyVmFsdWUuaW50ZWdlclZhbHVlKCkgZW5kaWYiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2NvbnRlbnRzPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJsb3dlciIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9JbnRlZ2VyIgorICAgICAgICAgIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiIGRlcml2ZWQ9InRydWUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhpcyByZWRlZmluaXRpb24gY2hhbmdlcyB0aGUgZGVmYXVsdCBtdWx0aXBsaWNpdHkgb2YgYXNzb2NpYXRpb24gZW5kcywgc2luY2UgbW9kZWwgZWxlbWVudHMgYXJlIHVzdWFsbHkgZXh0ZW5kZWQgYnkgMCBvciAxIGluc3RhbmNlIG9mIHRoZSBleHRlbnNpb24gc3RlcmVvdHlwZS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL011bHRpcGxpY2l0eUVsZW1lbnQvbG93ZXIiLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InR5cGUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iIy8vVHlwZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZWZlcmVuY2VzIHRoZSB0eXBlIG9mIHRoZSBFeHRlbnNpb25FbmQuIE5vdGUgdGhhdCB0aGlzIGFzc29jaWF0aW9uIHJlc3RyaWN0cyB0aGUgcG9zc2libGUgdHlwZXMgb2YgYW4gRXh0ZW5zaW9uRW5kIHRvIG9ubHkgYmUgU3RlcmVvdHlwZXMuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9UeXBlZEVsZW1lbnQvdHlwZSIvPgorICAgICAgPC9jb250ZW50cz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibXVsdGlwbGljaXR5IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iKGxvd2VyQm91bmQoKSA9IDAgb3IgbG93ZXJCb3VuZCgpID0gMSkgYW5kIHVwcGVyQm91bmQoKSA9IDEiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbXVsdGlwbGljaXR5IG9mIEV4dGVuc2lvbkVuZCBpcyAwLi4xIG9yIDEuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJhZ2dyZWdhdGlvbiIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InNlbGYuYWdncmVnYXRpb24gPSBBZ2dyZWdhdGlvbktpbmQ6OmNvbXBvc2l0ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBhZ2dyZWdhdGlvbiBvZiBhbiBFeHRlbnNpb25FbmQgaXMgY29tcG9zaXRlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iTW9kZWwiIGVTdXBlclR5cGVzPSIjLy9QYWNrYWdlIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIG1vZGVsIGNhcHR1cmVzIGEgdmlldyBvZiBhIHBoeXNpY2FsIHN5c3RlbS4gSXQgaXMgYW4gYWJzdHJhY3Rpb24gb2YgdGhlIHBoeXNpY2FsIHN5c3RlbSwgd2l0aCBhIGNlcnRhaW4gcHVycG9zZS4gVGhpcyBwdXJwb3NlIGRldGVybWluZXMgd2hhdCBpcyB0byBiZSBpbmNsdWRlZCBpbiB0aGUgbW9kZWwgYW5kIHdoYXQgaXMgaXJyZWxldmFudC4gVGh1cyB0aGUgbW9kZWwgY29tcGxldGVseSBkZXNjcmliZXMgdGhvc2UgYXNwZWN0cyBvZiB0aGUgcGh5c2ljYWwgc3lzdGVtIHRoYXQgYXJlIHJlbGV2YW50IHRvIHRoZSBwdXJwb3NlIG9mIHRoZSBtb2RlbCwgYXQgdGhlIGFwcHJvcHJpYXRlIGxldmVsIG9mIGRldGFpbC4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNNZXRhbW9kZWwiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkRldGVybWluZXMgd2hldGhlciB0aGlzIG1vZGVsIGlzIGEgbWV0YW1vZGVsLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0idmlld3BvaW50IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyIgdW5zZXR0YWJsZT0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBuYW1lIG9mIHRoZSB2aWV3cG9pbnQgdGhhdCBpcyBleHByZXNzZWQgYnkgYSBtb2RlbCAodGhpcyBuYW1lIG1heSByZWZlciB0byBhIHByb2ZpbGUgZGVmaW5pdGlvbikuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlN0cmluZ0V4cHJlc3Npb24iIGVTdXBlclR5cGVzPSIjLy9FeHByZXNzaW9uICMvL1RlbXBsYXRlYWJsZUVsZW1lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgU3RyaW5nRXhwcmVzc2lvbiBpcyBhbiBFeHByZXNzaW9uIHRoYXQgc3BlY2lmaWVzIGEgU3RyaW5nIHZhbHVlIHRoYXQgaXMgZGVyaXZlZCBieSBjb25jYXRlbmF0aW5nIGEgc2VxdWVuY2Ugb2Ygb3BlcmFuZHMgd2l0aCBTdHJpbmcgdmFsdWVzIG9yIGEgc2VxdWVuY2Ugb2Ygc3ViRXhwcmVzc2lvbnMsIHNvbWUgb2Ygd2hpY2ggbWlnaHQgYmUgdGVtcGxhdGUgcGFyYW1ldGVycy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iZHVwbGljYXRlcyI+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIG5hbWU9InN0cmluZ1ZhbHVlIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgc3RyaW5nVmFsdWUoKSByZXR1cm5zIHRoZSBTdHJpbmcgcmVzdWx0aW5nIGZyb20gY29uY2F0ZW5hdGluZywgaW4gb3JkZXIsIGFsbCB0aGUgY29tcG9uZW50IFN0cmluZyB2YWx1ZXMgb2YgYWxsIHRoZSBvcGVyYW5kcyBvciBzdWJFeHByZXNzaW9ucyB0aGF0IGFyZSBwYXJ0IG9mIHRoZSBTdHJpbmdFeHByZXNzaW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vVmFsdWVTcGVjaWZpY2F0aW9uL3N0cmluZ1ZhbHVlIi8+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlmIHN1YkV4cHJlc3Npb24tPm5vdEVtcHR5KCkmI3hBO3RoZW4gc3ViRXhwcmVzc2lvbi0+aXRlcmF0ZShzZTsgc3RyaW5nVmFsdWU6IFN0cmluZyA9ICcnIHwgc3RyaW5nVmFsdWUuY29uY2F0KHNlLnN0cmluZ1ZhbHVlKCkpKSYjeEE7ZWxzZSBvcGVyYW5kLT5pdGVyYXRlKG9wOyBzdHJpbmdWYWx1ZTogU3RyaW5nID0gJycgfCBzdHJpbmdWYWx1ZS5jb25jYXQob3Auc3RyaW5nVmFsdWUoKSkpJiN4QTtlbmRpZiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvY29udGVudHM+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im9wZXJhbmRzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ib3BlcmFuZC0+Zm9yQWxsIChvY2xJc0tpbmRPZiAoTGl0ZXJhbFN0cmluZykpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQWxsIHRoZSBvcGVyYW5kcyBvZiBhIFN0cmluZ0V4cHJlc3Npb24gbXVzdCBiZSBMaXRlcmFsU3RyaW5ncyIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ic3ViZXhwcmVzc2lvbnMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpZiBzdWJFeHByZXNzaW9uLT5ub3RFbXB0eSgpIHRoZW4gb3BlcmFuZC0+aXNFbXB0eSgpIGVsc2Ugb3BlcmFuZC0+bm90RW1wdHkoKSBlbmRpZiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIGEgU3RyaW5nRXhwcmVzc2lvbiBoYXMgc3ViLWV4cHJlc3Npb25zLCBpdCBjYW5ub3QgaGF2ZSBvcGVyYW5kcyBhbmQgdmljZSB2ZXJzYSAodGhpcyBhdm9pZHMgdGhlIHByb2JsZW0gb2YgaGF2aW5nIHRvIGRlZmluZSBhIGNvbGxhdGluZyBzZXF1ZW5jZSBiZXR3ZWVuIG9wZXJhbmRzIGFuZCBzdWJleHByZXNzaW9ucykuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJvd25pbmdFeHByZXNzaW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL1N0cmluZ0V4cHJlc3Npb24iIGVPcHBvc2l0ZT0iIy8vU3RyaW5nRXhwcmVzc2lvbi9zdWJFeHByZXNzaW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFN0cmluZ0V4cHJlc3Npb24gb2Ygd2hpY2ggdGhpcyBTdHJpbmdFeHByZXNzaW9uIGlzIGEgc3ViRXhwcmVzc2lvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InN1YkV4cHJlc3Npb24iIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vU3RyaW5nRXhwcmVzc2lvbiIgY29udGFpbm1lbnQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vU3RyaW5nRXhwcmVzc2lvbi9vd25pbmdFeHByZXNzaW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFN0cmluZ0V4cHJlc3Npb25zIHRoYXQgY29uc3RpdHV0ZSB0aGlzIFN0cmluZ0V4cHJlc3Npb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRXhwcmVzc2lvbiIgZVN1cGVyVHlwZXM9IiMvL1ZhbHVlU3BlY2lmaWNhdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gRXhwcmVzc2lvbiByZXByZXNlbnRzIGEgbm9kZSBpbiBhbiBleHByZXNzaW9uIHRyZWUsIHdoaWNoIG1heSBiZSBub24tdGVybWluYWwgb3IgdGVybWluYWwuIEl0IGRlZmluZXMgYSBzeW1ib2wsIGFuZCBoYXMgYSBwb3NzaWJseSBlbXB0eSBzZXF1ZW5jZSBvZiBvcGVyYW5kcyB0aGF0IGFyZSBWYWx1ZVNwZWNpZmljYXRpb25zLiBJdCBkZW5vdGVzIGEgKHBvc3NpYmx5IGVtcHR5KSBzZXQgb2YgdmFsdWVzIHdoZW4gZXZhbHVhdGVkIGluIGEgY29udGV4dC4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib3BlcmFuZCIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9WYWx1ZVNwZWNpZmljYXRpb24iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iU3BlY2lmaWVzIGEgc2VxdWVuY2Ugb2Ygb3BlcmFuZCBWYWx1ZVNwZWNpZmljYXRpb25zLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InN5bWJvbCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciIHVuc2V0dGFibGU9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc3ltYm9sIGFzc29jaWF0ZWQgd2l0aCB0aGlzIG5vZGUgaW4gdGhlIGV4cHJlc3Npb24gdHJlZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iVXNhZ2UiIGVTdXBlclR5cGVzPSIjLy9EZXBlbmRlbmN5Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFVzYWdlIGlzIGEgRGVwZW5kZW5jeSBpbiB3aGljaCB0aGUgY2xpZW50IEVsZW1lbnQgcmVxdWlyZXMgdGhlIHN1cHBsaWVyIEVsZW1lbnQgKG9yIHNldCBvZiBFbGVtZW50cykgZm9yIGl0cyBmdWxsIGltcGxlbWVudGF0aW9uIG9yIG9wZXJhdGlvbi4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ29sbGFib3JhdGlvblVzZSIgZVN1cGVyVHlwZXM9IiMvL05hbWVkRWxlbWVudCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBDb2xsYWJvcmF0aW9uVXNlIGlzIHVzZWQgdG8gc3BlY2lmeSB0aGUgYXBwbGljYXRpb24gb2YgYSBwYXR0ZXJuIHNwZWNpZmllZCBieSBhIENvbGxhYm9yYXRpb24gdG8gYSBzcGVjaWZpYyBzaXR1YXRpb24uIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImNsaWVudF9lbGVtZW50cyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InJvbGVCaW5kaW5nLT5jb2xsZWN0KGNsaWVudCktPmZvckFsbChuZTEsIG5lMiB8JiN4RDsmI3hBOyAgbmUxLm9jbElzS2luZE9mKENvbm5lY3RhYmxlRWxlbWVudCkgYW5kIG5lMi5vY2xJc0tpbmRPZihDb25uZWN0YWJsZUVsZW1lbnQpIGFuZCYjeEQ7JiN4QTsgICAgbGV0IGNlMSA6IENvbm5lY3RhYmxlRWxlbWVudCA9IG5lMS5vY2xBc1R5cGUoQ29ubmVjdGFibGVFbGVtZW50KSwgY2UyIDogQ29ubmVjdGFibGVFbGVtZW50ID0gbmUyLm9jbEFzVHlwZShDb25uZWN0YWJsZUVsZW1lbnQpIGluJiN4RDsmI3hBOyAgICAgIGNlMS5zdHJ1Y3R1cmVkQ2xhc3NpZmllciA9IGNlMi5zdHJ1Y3R1cmVkQ2xhc3NpZmllcikmI3hEOyYjeEE7YW5kJiN4RDsmI3hBOyAgcm9sZUJpbmRpbmctPmNvbGxlY3Qoc3VwcGxpZXIpLT5mb3JBbGwobmUxLCBuZTIgfCYjeEQ7JiN4QTsgIG5lMS5vY2xJc0tpbmRPZihDb25uZWN0YWJsZUVsZW1lbnQpIGFuZCBuZTIub2NsSXNLaW5kT2YoQ29ubmVjdGFibGVFbGVtZW50KSBhbmQmI3hEOyYjeEE7ICAgIGxldCBjZTEgOiBDb25uZWN0YWJsZUVsZW1lbnQgPSBuZTEub2NsQXNUeXBlKENvbm5lY3RhYmxlRWxlbWVudCksIGNlMiA6IENvbm5lY3RhYmxlRWxlbWVudCA9IG5lMi5vY2xBc1R5cGUoQ29ubmVjdGFibGVFbGVtZW50KSBpbiYjeEQ7JiN4QTsgICAgICBjZTEuY29sbGFib3JhdGlvbiA9IGNlMi5jb2xsYWJvcmF0aW9uKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFsbCB0aGUgY2xpZW50IGVsZW1lbnRzIG9mIGEgcm9sZUJpbmRpbmcgYXJlIGluIG9uZSBDbGFzc2lmaWVyIGFuZCBhbGwgc3VwcGxpZXIgZWxlbWVudHMgb2YgYSByb2xlQmluZGluZyBhcmUgaW4gb25lIENvbGxhYm9yYXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJldmVyeV9yb2xlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0idHlwZS5jb2xsYWJvcmF0aW9uUm9sZS0+Zm9yQWxsKHJvbGUgfCByb2xlQmluZGluZy0+ZXhpc3RzKHJiIHwgcmIuc3VwcGxpZXItPmluY2x1ZGVzKHJvbGUpKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJFdmVyeSBjb2xsYWJvcmF0aW9uUm9sZSBpbiB0aGUgQ29sbGFib3JhdGlvbiBpcyBib3VuZCB3aXRoaW4gdGhlIENvbGxhYm9yYXRpb25Vc2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjb25uZWN0b3JzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0idHlwZS5vd25lZENvbm5lY3Rvci0+Zm9yQWxsKGNvbm5lY3RvciB8JiN4RDsmI3hBOyAgbGV0IHJvbGVzQ29ubmVjdGVkSW5Db2xsYWIgOiBTZXQoQ29ubmVjdGFibGVFbGVtZW50KSA9IGNvbm5lY3Rvci5lbmQucm9sZS0+YXNTZXQoKSwmI3hEOyYjeEE7ICAgICAgICByZWxldmFudEJpbmRpbmdzIDogU2V0KERlcGVuZGVuY3kpID0gcm9sZUJpbmRpbmctPnNlbGVjdChyYiB8IHJiLnN1cHBsaWVyLT5pbnRlcnNlY3Rpb24ocm9sZXNDb25uZWN0ZWRJbkNvbGxhYiktPm5vdEVtcHR5KCkpLCYjeEQ7JiN4QTsgICAgICAgIGJvdW5kUm9sZXMgOiBTZXQoQ29ubmVjdGFibGVFbGVtZW50KSA9IHJlbGV2YW50QmluZGluZ3MtPmNvbGxlY3QoY2xpZW50Lm9jbEFzVHlwZShDb25uZWN0YWJsZUVsZW1lbnQpKS0+YXNTZXQoKSwmI3hEOyYjeEE7ICAgICAgICBjb250ZXh0Q2xhc3NpZmllciA6IFN0cnVjdHVyZWRDbGFzc2lmaWVyID0gYm91bmRSb2xlcy0+YW55KHRydWUpLnN0cnVjdHVyZWRDbGFzc2lmaWVyLT5hbnkodHJ1ZSkgaW4mI3hEOyYjeEE7ICAgICAgICAgIGNvbnRleHRDbGFzc2lmaWVyLm93bmVkQ29ubmVjdG9yLT5leGlzdHMoIGNvcnJlc3BvbmRpbmdDb25uZWN0b3IgfCAmI3hEOyYjeEE7ICAgICAgICAgICAgICBjb3JyZXNwb25kaW5nQ29ubmVjdG9yLmVuZC5yb2xlLT5mb3JBbGwoIHJvbGUgfCBib3VuZFJvbGVzLT5pbmNsdWRlcyhyb2xlKSApJiN4RDsmI3hBOyAgICAgICAgICAgICAgYW5kIChjb25uZWN0b3IudHlwZS0+bm90RW1wdHkoKSBhbmQgY29ycmVzcG9uZGluZ0Nvbm5lY3Rvci50eXBlLT5ub3RFbXB0eSgpKSBpbXBsaWVzIGNvbm5lY3Rvci50eXBlLT5mb3JBbGwoY29uZm9ybXNUbyhjb3JyZXNwb25kaW5nQ29ubmVjdG9yLnR5cGUpKSApJiN4RDsmI3hBOykiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJDb25uZWN0b3JzIGluIGEgQ29sbGFib3JhdGlvbiB0eXBpbmcgYSBDb2xsYWJvcmF0aW9uVXNlIG11c3QgaGF2ZSBjb3JyZXNwb25kaW5nIENvbm5lY3RvcnMgYmV0d2VlbiBlbGVtZW50cyBib3VuZCBpbiB0aGUgY29udGV4dCBDbGFzc2lmaWVyLCBhbmQgdGhlc2UgY29ycmVzcG9uZGluZyBDb25uZWN0b3JzIG11c3QgaGF2ZSB0aGUgc2FtZSBvciBtb3JlIGdlbmVyYWwgdHlwZSB0aGFuIHRoZSBDb2xsYWJvcmF0aW9uIENvbm5lY3RvcnMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyb2xlQmluZGluZyIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vRGVwZW5kZW5jeSIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIG1hcHBpbmcgYmV0d2VlbiBmZWF0dXJlcyBvZiB0aGUgQ29sbGFib3JhdGlvbiBhbmQgZmVhdHVyZXMgb2YgdGhlIG93bmluZyBDbGFzc2lmaWVyLiBUaGlzIG1hcHBpbmcgaW5kaWNhdGVzIHdoaWNoIENvbm5lY3RhYmxlRWxlbWVudCBvZiB0aGUgQ2xhc3NpZmllciBwbGF5cyB3aGljaCByb2xlKHMpIGluIHRoZSBDb2xsYWJvcmF0aW9uLiBBIENvbm5lY3RhYmxlRWxlbWVudCBtYXkgYmUgYm91bmQgdG8gbXVsdGlwbGUgcm9sZXMgaW4gdGhlIHNhbWUgQ29sbGFib3JhdGlvblVzZSAodGhhdCBpcywgaXQgbWF5IHBsYXkgbXVsdGlwbGUgcm9sZXMpLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InR5cGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIgorICAgICAgICBlVHlwZT0iIy8vQ29sbGFib3JhdGlvbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBDb2xsYWJvcmF0aW9uIHdoaWNoIGlzIHVzZWQgaW4gdGhpcyBDb2xsYWJvcmF0aW9uVXNlLiBUaGUgQ29sbGFib3JhdGlvbiBkZWZpbmVzIHRoZSBjb29wZXJhdGlvbiBiZXR3ZWVuIGl0cyByb2xlcyB3aGljaCBhcmUgbWFwcGVkIHRvIENvbm5lY3RhYmxlRWxlbWVudHMgcmVsYXRpbmcgdG8gdGhlIENsYXNzaWZpZXIgb3duaW5nIHRoZSBDb2xsYWJvcmF0aW9uVXNlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb2xsYWJvcmF0aW9uIiBlU3VwZXJUeXBlcz0iIy8vU3RydWN0dXJlZENsYXNzaWZpZXIgIy8vQmVoYXZpb3JlZENsYXNzaWZpZXIiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgQ29sbGFib3JhdGlvbiBkZXNjcmliZXMgYSBzdHJ1Y3R1cmUgb2YgY29sbGFib3JhdGluZyBlbGVtZW50cyAocm9sZXMpLCBlYWNoIHBlcmZvcm1pbmcgYSBzcGVjaWFsaXplZCBmdW5jdGlvbiwgd2hpY2ggY29sbGVjdGl2ZWx5IGFjY29tcGxpc2ggc29tZSBkZXNpcmVkIGZ1bmN0aW9uYWxpdHkuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImNvbGxhYm9yYXRpb25Sb2xlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Db25uZWN0YWJsZUVsZW1lbnQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXByZXNlbnRzIHRoZSBwYXJ0aWNpcGFudHMgaW4gdGhlIENvbGxhYm9yYXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9TdHJ1Y3R1cmVkQ2xhc3NpZmllci9yb2xlIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTdHJ1Y3R1cmVkQ2xhc3NpZmllciIgYWJzdHJhY3Q9InRydWUiCisgICAgICBlU3VwZXJUeXBlcz0iIy8vQ2xhc3NpZmllciI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iU3RydWN0dXJlZENsYXNzaWZpZXJzIG1heSBjb250YWluIGFuIGludGVybmFsIHN0cnVjdHVyZSBvZiBjb25uZWN0ZWQgZWxlbWVudHMgZWFjaCBvZiB3aGljaCBwbGF5cyBhIHJvbGUgaW4gdGhlIG92ZXJhbGwgQmVoYXZpb3IgbW9kZWxlZCBieSB0aGUgU3RydWN0dXJlZENsYXNzaWZpZXIuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImNyZWF0ZU93bmVkQXR0cmlidXRlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1Byb3BlcnR5Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQ3JlYXRlcyBhIHByb3BlcnR5IHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLCB0eXBlLCBsb3dlciBib3VuZCwgYW5kIHVwcGVyIGJvdW5kIGFzIGFuIG93bmVkIGF0dHJpYnV0ZSBvZiB0aGlzIHN0cnVjdHVyZWQgY2xhc3NpZmllci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im5hbWUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBuYW1lIGZvciB0aGUgbmV3IGF0dHJpYnV0ZSwgb3IgbnVsbC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InR5cGUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iIy8vVHlwZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgdHlwZSBmb3IgdGhlIG5ldyBhdHRyaWJ1dGUsIG9yIG51bGwuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJsb3dlciIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9JbnRlZ2VyIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBsb3dlciBib3VuZCBmb3IgdGhlIG5ldyBhdHRyaWJ1dGUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJ1cHBlciIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9VbmxpbWl0ZWROYXR1cmFsIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB1cHBlciBib3VuZCBmb3IgdGhlIG5ldyBhdHRyaWJ1dGUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRQYXJ0cyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUHJvcGVydHkiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJEZXJpdmF0aW9uIGZvciBTdHJ1Y3R1cmVkQ2xhc3NpZmllcjo6L3BhcnQiLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9Im9yaWdpbmFsTmFtZSIgdmFsdWU9InBhcnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im93bmVkQXR0cmlidXRlLT5zZWxlY3QoaXNDb21wb3NpdGUpLT5hc1NldCgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJhbGxSb2xlcyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQ29ubmVjdGFibGVFbGVtZW50Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQWxsIGZlYXR1cmVzIG9mIHR5cGUgQ29ubmVjdGFibGVFbGVtZW50LCBlcXVpdmFsZW50IHRvIGFsbCBkaXJlY3QgYW5kIGluaGVyaXRlZCByb2xlcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImFsbEZlYXR1cmVzKCktPnNlbGVjdChvY2xJc0tpbmRPZihDb25uZWN0YWJsZUVsZW1lbnQpKS0+Y29sbGVjdChvY2xBc1R5cGUoQ29ubmVjdGFibGVFbGVtZW50KSktPmFzU2V0KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im93bmVkQXR0cmlidXRlIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL1Byb3BlcnR5IiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBQcm9wZXJ0aWVzIG93bmVkIGJ5IHRoZSBTdHJ1Y3R1cmVkQ2xhc3NpZmllci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0NsYXNzaWZpZXIvYXR0cmlidXRlICMvL05hbWVzcGFjZS9vd25lZE1lbWJlciAjLy9TdHJ1Y3R1cmVkQ2xhc3NpZmllci9yb2xlIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJvd25lZENvbm5lY3RvciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQ29ubmVjdG9yIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjb25uZWN0b3JzIG93bmVkIGJ5IHRoZSBTdHJ1Y3R1cmVkQ2xhc3NpZmllci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0NsYXNzaWZpZXIvZmVhdHVyZSAjLy9OYW1lc3BhY2Uvb3duZWRNZW1iZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InBhcnQiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL1Byb3BlcnR5IiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIgZGVyaXZlZD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBQcm9wZXJ0aWVzIHNwZWNpZnlpbmcgaW5zdGFuY2VzIHRoYXQgdGhlIFN0cnVjdHVyZWRDbGFzc2lmaWVyIG93bnMgYnkgY29tcG9zaXRpb24uIFRoaXMgY29sbGVjdGlvbiBpcyBkZXJpdmVkLCBzZWxlY3RpbmcgdGhvc2Ugb3duZWQgUHJvcGVydGllcyB3aGVyZSBpc0NvbXBvc2l0ZSBpcyB0cnVlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyb2xlIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9Db25uZWN0YWJsZUVsZW1lbnQiIGNoYW5nZWFibGU9ImZhbHNlIiB2b2xhdGlsZT0idHJ1ZSIgdHJhbnNpZW50PSJ0cnVlIgorICAgICAgICBkZXJpdmVkPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHJvbGVzIHRoYXQgaW5zdGFuY2VzIG1heSBwbGF5IGluIHRoaXMgU3RydWN0dXJlZENsYXNzaWZpZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJ1bmlvbiIvPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVzcGFjZS9tZW1iZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNvbm5lY3RvciIgZVN1cGVyVHlwZXM9IiMvL0ZlYXR1cmUiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgQ29ubmVjdG9yIHNwZWNpZmllcyBsaW5rcyB0aGF0IGVuYWJsZXMgY29tbXVuaWNhdGlvbiBiZXR3ZWVuIHR3byBvciBtb3JlIGluc3RhbmNlcy4gSW4gY29udHJhc3QgdG8gQXNzb2NpYXRpb25zLCB3aGljaCBzcGVjaWZ5IGxpbmtzIGJldHdlZW4gYW55IGluc3RhbmNlIG9mIHRoZSBhc3NvY2lhdGVkIENsYXNzaWZpZXJzLCBDb25uZWN0b3JzIHNwZWNpZnkgbGlua3MgYmV0d2VlbiBpbnN0YW5jZXMgcGxheWluZyB0aGUgY29ubmVjdGVkIHBhcnRzIG9ubHkuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InR5cGVzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0idHlwZSZsdDs+bnVsbCBpbXBsaWVzICYjeEQ7JiN4QTsgIGxldCBub09mRW5kcyA6IEludGVnZXIgPSBlbmQtPnNpemUoKSBpbiAmI3hEOyYjeEE7ICAodHlwZS5tZW1iZXJFbmQtPnNpemUoKSA9IG5vT2ZFbmRzKSBhbmQgU2VxdWVuY2V7MS4ubm9PZkVuZHN9LT5mb3JBbGwoaSB8IGVuZC0+YXQoaSkucm9sZS50eXBlLmNvbmZvcm1zVG8odHlwZS5tZW1iZXJFbmQtPmF0KGkpLnR5cGUpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB0eXBlcyBvZiB0aGUgQ29ubmVjdGFibGVFbGVtZW50cyB0aGF0IHRoZSBlbmRzIG9mIGEgQ29ubmVjdG9yIGFyZSBhdHRhY2hlZCB0byBtdXN0IGNvbmZvcm0gdG8gdGhlIHR5cGVzIG9mIHRoZSBlbmRzIG9mIHRoZSBBc3NvY2lhdGlvbiB0aGF0IHR5cGVzIHRoZSBDb25uZWN0b3IsIGlmIGFueS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InJvbGVzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ic3RydWN0dXJlZENsYXNzaWZpZXIgJmx0Oz4gbnVsbCYjeEQ7JiN4QTthbmQmI3hEOyYjeEE7ICBlbmQtPmZvckFsbCggZSB8IHN0cnVjdHVyZWRDbGFzc2lmaWVyLmFsbFJvbGVzKCktPmluY2x1ZGVzKGUucm9sZSkmI3hEOyYjeEE7b3ImI3hEOyYjeEE7ICBlLnJvbGUub2NsSXNLaW5kT2YoUG9ydCkgYW5kIHN0cnVjdHVyZWRDbGFzc2lmaWVyLmFsbFJvbGVzKCktPmluY2x1ZGVzKGUucGFydFdpdGhQb3J0KSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgQ29ubmVjdGFibGVFbGVtZW50cyBhdHRhY2hlZCBhcyByb2xlcyB0byBlYWNoIENvbm5lY3RvckVuZCBvd25lZCBieSBhIENvbm5lY3RvciBtdXN0IGJlIG93bmVkIG9yIGluaGVyaXRlZCByb2xlcyBvZiB0aGUgQ2xhc3NpZmllciB0aGF0IG93bmVkIHRoZSBDb25uZWN0b3IsIG9yIHRoZXkgbXVzdCBiZSBQb3J0cyBvZiBzdWNoIHJvbGVzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0S2luZCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Db25uZWN0b3JLaW5kIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iRGVyaXZhdGlvbiBmb3IgQ29ubmVjdG9yOjova2luZCA6IENvbm5lY3RvcktpbmQiLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9Im9yaWdpbmFsTmFtZSIgdmFsdWU9ImtpbmQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlmIGVuZC0+ZXhpc3RzKCYjeEQ7JiN4QTsmI3g5OyYjeDk7cm9sZS5vY2xJc0tpbmRPZihQb3J0KSAmI3hEOyYjeEE7JiN4OTsmI3g5O2FuZCBwYXJ0V2l0aFBvcnQtPmlzRW1wdHkoKSYjeEQ7JiN4QTsmI3g5OyYjeDk7YW5kIG5vdCByb2xlLm9jbEFzVHlwZShQb3J0KS5pc0JlaGF2aW9yKSYjeEQ7JiN4QTt0aGVuIENvbm5lY3RvcktpbmQ6OmRlbGVnYXRpb24gJiN4RDsmI3hBO2Vsc2UgQ29ubmVjdG9yS2luZDo6YXNzZW1ibHkgJiN4RDsmI3hBO2VuZGlmIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJjb250cmFjdCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQmVoYXZpb3IiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc2V0IG9mIEJlaGF2aW9ycyB0aGF0IHNwZWNpZnkgdGhlIHZhbGlkIGludGVyYWN0aW9uIHBhdHRlcm5zIGFjcm9zcyB0aGUgQ29ubmVjdG9yLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlbmQiIGxvd2VyQm91bmQ9IjIiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vQ29ubmVjdG9yRW5kIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgQ29ubmVjdG9yIGhhcyBhdCBsZWFzdCB0d28gQ29ubmVjdG9yRW5kcywgZWFjaCByZXByZXNlbnRpbmcgdGhlIHBhcnRpY2lwYXRpb24gb2YgaW5zdGFuY2VzIG9mIHRoZSBDbGFzc2lmaWVycyB0eXBpbmcgdGhlIENvbm5lY3RhYmxlRWxlbWVudHMgYXR0YWNoZWQgdG8gdGhlIGVuZC4gVGhlIHNldCBvZiBDb25uZWN0b3JFbmRzIGlzIG9yZGVyZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ia2luZCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiCisgICAgICAgIGVUeXBlPSIjLy9Db25uZWN0b3JLaW5kIiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIKKyAgICAgICAgZGVyaXZlZD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkluZGljYXRlcyB0aGUga2luZCBvZiBDb25uZWN0b3IuIFRoaXMgaXMgZGVyaXZlZDogYSBDb25uZWN0b3Igd2l0aCBvbmUgb3IgbW9yZSBlbmRzIGNvbm5lY3RlZCB0byBhIFBvcnQgd2hpY2ggaXMgbm90IG9uIGEgUGFydCBhbmQgd2hpY2ggaXMgbm90IGEgYmVoYXZpb3IgcG9ydCBpcyBhIGRlbGVnYXRpb247IG90aGVyd2lzZSBpdCBpcyBhbiBhc3NlbWJseS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVkZWZpbmVkQ29ubmVjdG9yIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Db25uZWN0b3IiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIENvbm5lY3RvciBtYXkgYmUgcmVkZWZpbmVkIHdoZW4gaXRzIGNvbnRhaW5pbmcgQ2xhc3NpZmllciBpcyBzcGVjaWFsaXplZC4gVGhlIHJlZGVmaW5pbmcgQ29ubmVjdG9yIG1heSBoYXZlIGEgdHlwZSB0aGF0IHNwZWNpYWxpemVzIHRoZSB0eXBlIG9mIHRoZSByZWRlZmluZWQgQ29ubmVjdG9yLiBUaGUgdHlwZXMgb2YgdGhlIENvbm5lY3RvckVuZHMgb2YgdGhlIHJlZGVmaW5pbmcgQ29ubmVjdG9yIG1heSBzcGVjaWFsaXplIHRoZSB0eXBlcyBvZiB0aGUgQ29ubmVjdG9yRW5kcyBvZiB0aGUgcmVkZWZpbmVkIENvbm5lY3Rvci4gVGhlIHByb3BlcnRpZXMgb2YgdGhlIENvbm5lY3RvckVuZHMgb2YgdGhlIHJlZGVmaW5pbmcgQ29ubmVjdG9yIG1heSBiZSByZXBsYWNlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL1JlZGVmaW5hYmxlRWxlbWVudC9yZWRlZmluZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJ0eXBlIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9IiMvL0Fzc29jaWF0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gb3B0aW9uYWwgQXNzb2NpYXRpb24gdGhhdCBjbGFzc2lmaWVzIGxpbmtzIGNvcnJlc3BvbmRpbmcgdG8gdGhpcyBDb25uZWN0b3IuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRW51bSIgbmFtZT0iQ29ubmVjdG9yS2luZCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQ29ubmVjdG9yS2luZCBpcyBhbiBlbnVtZXJhdGlvbiB0aGF0IGRlZmluZXMgd2hldGhlciBhIENvbm5lY3RvciBpcyBhbiBhc3NlbWJseSBvciBhIGRlbGVnYXRpb24uIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVMaXRlcmFscyBuYW1lPSJhc3NlbWJseSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkluZGljYXRlcyB0aGF0IHRoZSBDb25uZWN0b3IgaXMgYW4gYXNzZW1ibHkgQ29ubmVjdG9yLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lTGl0ZXJhbHM+CisgICAgPGVMaXRlcmFscyBuYW1lPSJkZWxlZ2F0aW9uIiB2YWx1ZT0iMSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkluZGljYXRlcyB0aGF0IHRoZSBDb25uZWN0b3IgaXMgYSBkZWxlZ2F0aW9uIENvbm5lY3Rvci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJHZW5lcmFsaXphdGlvbiIgZVN1cGVyVHlwZXM9IiMvL0RpcmVjdGVkUmVsYXRpb25zaGlwIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIEdlbmVyYWxpemF0aW9uIGlzIGEgdGF4b25vbWljIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIGEgbW9yZSBnZW5lcmFsIENsYXNzaWZpZXIgYW5kIGEgbW9yZSBzcGVjaWZpYyBDbGFzc2lmaWVyLiBFYWNoIGluc3RhbmNlIG9mIHRoZSBzcGVjaWZpYyBDbGFzc2lmaWVyIGlzIGFsc28gYW4gaW5zdGFuY2Ugb2YgdGhlIGdlbmVyYWwgQ2xhc3NpZmllci4gVGhlIHNwZWNpZmljIENsYXNzaWZpZXIgaW5oZXJpdHMgdGhlIGZlYXR1cmVzIG9mIHRoZSBtb3JlIGdlbmVyYWwgQ2xhc3NpZmllci4gQSBHZW5lcmFsaXphdGlvbiBpcyBvd25lZCBieSB0aGUgc3BlY2lmaWMgQ2xhc3NpZmllci4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZ2VuZXJhbCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9DbGFzc2lmaWVyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGdlbmVyYWwgY2xhc3NpZmllciBpbiB0aGUgR2VuZXJhbGl6YXRpb24gcmVsYXRpb25zaGlwLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRGlyZWN0ZWRSZWxhdGlvbnNoaXAvdGFyZ2V0Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJnZW5lcmFsaXphdGlvblNldCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vR2VuZXJhbGl6YXRpb25TZXQiIGVPcHBvc2l0ZT0iIy8vR2VuZXJhbGl6YXRpb25TZXQvZ2VuZXJhbGl6YXRpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXByZXNlbnRzIGEgc2V0IG9mIGluc3RhbmNlcyBvZiBHZW5lcmFsaXphdGlvbi4gIEEgR2VuZXJhbGl6YXRpb24gbWF5IGFwcGVhciBpbiBtYW55IEdlbmVyYWxpemF0aW9uU2V0cy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNTdWJzdGl0dXRhYmxlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGRlZmF1bHRWYWx1ZUxpdGVyYWw9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbmRpY2F0ZXMgd2hldGhlciB0aGUgc3BlY2lmaWMgQ2xhc3NpZmllciBjYW4gYmUgdXNlZCB3aGVyZXZlciB0aGUgZ2VuZXJhbCBDbGFzc2lmaWVyIGNhbiBiZSB1c2VkLiBJZiB0cnVlLCB0aGUgZXhlY3V0aW9uIHRyYWNlcyBvZiB0aGUgc3BlY2lmaWMgQ2xhc3NpZmllciBzaGFsbCBiZSBhIHN1cGVyc2V0IG9mIHRoZSBleGVjdXRpb24gdHJhY2VzIG9mIHRoZSBnZW5lcmFsIENsYXNzaWZpZXIuIElmIGZhbHNlLCB0aGVyZSBpcyBubyBzdWNoIGNvbnN0cmFpbnQgb24gZXhlY3V0aW9uIHRyYWNlcy4gSWYgdW5zZXQsIHRoZSBtb2RlbGVyIGhhcyBub3Qgc3RhdGVkIHdoZXRoZXIgdGhlcmUgaXMgc3VjaCBhIGNvbnN0cmFpbnQgb3Igbm90LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJzcGVjaWZpYyIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9DbGFzc2lmaWVyIiBlT3Bwb3NpdGU9IiMvL0NsYXNzaWZpZXIvZ2VuZXJhbGl6YXRpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc3BlY2lhbGl6aW5nIENsYXNzaWZpZXIgaW4gdGhlIEdlbmVyYWxpemF0aW9uIHJlbGF0aW9uc2hpcC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0RpcmVjdGVkUmVsYXRpb25zaGlwL3NvdXJjZSAjLy9FbGVtZW50L293bmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJHZW5lcmFsaXphdGlvblNldCIgZVN1cGVyVHlwZXM9IiMvL1BhY2thZ2VhYmxlRWxlbWVudCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBHZW5lcmFsaXphdGlvblNldCBpcyBhIFBhY2thZ2VhYmxlRWxlbWVudCB3aG9zZSBpbnN0YW5jZXMgcmVwcmVzZW50IHNldHMgb2YgR2VuZXJhbGl6YXRpb24gcmVsYXRpb25zaGlwcy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2VuZXJhbGl6YXRpb25fc2FtZV9jbGFzc2lmaWVyIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iZ2VuZXJhbGl6YXRpb24tPmNvbGxlY3QoZ2VuZXJhbCktPmFzU2V0KCktPnNpemUoKSAmbHQ7PSAxIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iRXZlcnkgR2VuZXJhbGl6YXRpb24gYXNzb2NpYXRlZCB3aXRoIGEgcGFydGljdWxhciBHZW5lcmFsaXphdGlvblNldCBtdXN0IGhhdmUgdGhlIHNhbWUgZ2VuZXJhbCBDbGFzc2lmaWVyLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibWFwc190b19nZW5lcmFsaXphdGlvbl9zZXQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJwb3dlcnR5cGUgJmx0Oz4gbnVsbCBpbXBsaWVzIGdlbmVyYWxpemF0aW9uLT5mb3JBbGwoIGdlbiB8ICYjeEQ7JiN4QTsgICAgbm90IChnZW4uZ2VuZXJhbCA9IHBvd2VydHlwZSkgYW5kIG5vdCBnZW4uZ2VuZXJhbC5hbGxQYXJlbnRzKCktPmluY2x1ZGVzKHBvd2VydHlwZSkgYW5kIG5vdCAoZ2VuLnNwZWNpZmljID0gcG93ZXJ0eXBlKSBhbmQgbm90IHBvd2VydHlwZS5hbGxQYXJlbnRzKCktPmluY2x1ZGVzKGdlbi5zcGVjaWZpYykmI3hEOyYjeEE7ICApIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIENsYXNzaWZpZXIgdGhhdCBtYXBzIHRvIGEgR2VuZXJhbGl6YXRpb25TZXQgbWF5IG5laXRoZXIgYmUgYSBzcGVjaWZpYyBub3IgYSBnZW5lcmFsIENsYXNzaWZpZXIgaW4gYW55IG9mIHRoZSBHZW5lcmFsaXphdGlvbiByZWxhdGlvbnNoaXBzIGRlZmluZWQgZm9yIHRoYXQgR2VuZXJhbGl6YXRpb25TZXQuIEluIG90aGVyIHdvcmRzLCBhIHBvd2VyIHR5cGUgbWF5IG5vdCBiZSBhbiBpbnN0YW5jZSBvZiBpdHNlbGYgbm9yIG1heSBpdHMgaW5zdGFuY2VzIGJlIGl0cyBzdWJjbGFzc2VzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNDb3ZlcmluZyIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSJmYWxzZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkluZGljYXRlcyAodmlhIHRoZSBhc3NvY2lhdGVkIEdlbmVyYWxpemF0aW9ucykgd2hldGhlciBvciBub3QgdGhlIHNldCBvZiBzcGVjaWZpYyBDbGFzc2lmaWVycyBhcmUgY292ZXJpbmcgZm9yIGEgcGFydGljdWxhciBnZW5lcmFsIGNsYXNzaWZpZXIuIFdoZW4gaXNDb3ZlcmluZyBpcyB0cnVlLCBldmVyeSBpbnN0YW5jZSBvZiBhIHBhcnRpY3VsYXIgZ2VuZXJhbCBDbGFzc2lmaWVyIGlzIGFsc28gYW4gaW5zdGFuY2Ugb2YgYXQgbGVhc3Qgb25lIG9mIGl0cyBzcGVjaWZpYyBDbGFzc2lmaWVycyBmb3IgdGhlIEdlbmVyYWxpemF0aW9uU2V0LiBXaGVuIGlzQ292ZXJpbmcgaXMgZmFsc2UsIHRoZXJlIGFyZSBvbmUgb3IgbW9yZSBpbnN0YW5jZXMgb2YgdGhlIHBhcnRpY3VsYXIgZ2VuZXJhbCBDbGFzc2lmaWVyIHRoYXQgYXJlIG5vdCBpbnN0YW5jZXMgb2YgYXQgbGVhc3Qgb25lIG9mIGl0cyBzcGVjaWZpYyBDbGFzc2lmaWVycyBkZWZpbmVkIGZvciB0aGUgR2VuZXJhbGl6YXRpb25TZXQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImlzRGlzam9pbnQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iZmFsc2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbmRpY2F0ZXMgd2hldGhlciBvciBub3QgdGhlIHNldCBvZiBzcGVjaWZpYyBDbGFzc2lmaWVycyBpbiBhIEdlbmVyYWxpemF0aW9uIHJlbGF0aW9uc2hpcCBoYXZlIGluc3RhbmNlIGluIGNvbW1vbi4gSWYgaXNEaXNqb2ludCBpcyB0cnVlLCB0aGUgc3BlY2lmaWMgQ2xhc3NpZmllcnMgZm9yIGEgcGFydGljdWxhciBHZW5lcmFsaXphdGlvblNldCBoYXZlIG5vIG1lbWJlcnMgaW4gY29tbW9uOyB0aGF0IGlzLCB0aGVpciBpbnRlcnNlY3Rpb24gaXMgZW1wdHkuIElmIGlzRGlzam9pbnQgaXMgZmFsc2UsIHRoZSBzcGVjaWZpYyBDbGFzc2lmaWVycyBpbiBhIHBhcnRpY3VsYXIgR2VuZXJhbGl6YXRpb25TZXQgaGF2ZSBvbmUgb3IgbW9yZSBtZW1iZXJzIGluIGNvbW1vbjsgdGhhdCBpcywgdGhlaXIgaW50ZXJzZWN0aW9uIGlzIG5vdCBlbXB0eS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icG93ZXJ0eXBlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL0NsYXNzaWZpZXIiIGVPcHBvc2l0ZT0iIy8vQ2xhc3NpZmllci9wb3dlcnR5cGVFeHRlbnQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJEZXNpZ25hdGVzIHRoZSBDbGFzc2lmaWVyIHRoYXQgaXMgZGVmaW5lZCBhcyB0aGUgcG93ZXIgdHlwZSBmb3IgdGhlIGFzc29jaWF0ZWQgR2VuZXJhbGl6YXRpb25TZXQsIGlmIHRoZXJlIGlzIG9uZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZ2VuZXJhbGl6YXRpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0dlbmVyYWxpemF0aW9uIiBlT3Bwb3NpdGU9IiMvL0dlbmVyYWxpemF0aW9uL2dlbmVyYWxpemF0aW9uU2V0Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iRGVzaWduYXRlcyB0aGUgaW5zdGFuY2VzIG9mIEdlbmVyYWxpemF0aW9uIHRoYXQgYXJlIG1lbWJlcnMgb2YgdGhpcyBHZW5lcmFsaXphdGlvblNldC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUmVkZWZpbmFibGVUZW1wbGF0ZVNpZ25hdHVyZSIgZVN1cGVyVHlwZXM9IiMvL1JlZGVmaW5hYmxlRWxlbWVudCAjLy9UZW1wbGF0ZVNpZ25hdHVyZSI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBSZWRlZmluYWJsZVRlbXBsYXRlU2lnbmF0dXJlIHN1cHBvcnRzIHRoZSBhZGRpdGlvbiBvZiBmb3JtYWwgdGVtcGxhdGUgcGFyYW1ldGVycyBpbiBhIHNwZWNpYWxpemF0aW9uIG9mIGEgdGVtcGxhdGUgY2xhc3NpZmllci4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iZHVwbGljYXRlcyI+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIG5hbWU9ImlzQ29uc2lzdGVudFdpdGgiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBpc0NvbnNpc3RlbnRXaXRoKCkgc3BlY2lmaWVzLCBmb3IgYW55IHR3byBSZWRlZmluYWJsZVRlbXBsYXRlU2lnbmF0dXJlcyBpbiBhIGNvbnRleHQgaW4gd2hpY2ggcmVkZWZpbml0aW9uIGlzIHBvc3NpYmxlLCB3aGV0aGVyIHJlZGVmaW5pdGlvbiB3b3VsZCBiZSBsb2dpY2FsbHkgY29uc2lzdGVudC4gQSByZWRlZmluaW5nIHRlbXBsYXRlIHNpZ25hdHVyZSBpcyBhbHdheXMgY29uc2lzdGVudCB3aXRoIGEgcmVkZWZpbmVkIHRlbXBsYXRlIHNpZ25hdHVyZSwgYXMgcmVkZWZpbml0aW9uIG9ubHkgYWRkcyBuZXcgZm9ybWFsIHBhcmFtZXRlcnMuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9SZWRlZmluYWJsZUVsZW1lbnQvaXNDb25zaXN0ZW50V2l0aCIvPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJyZWRlZmluaW5nRWxlbWVudC5vY2xJc0tpbmRPZihSZWRlZmluYWJsZVRlbXBsYXRlU2lnbmF0dXJlKSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InJlZGVmaW5pbmdFbGVtZW50IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JlZGVmaW5hYmxlRWxlbWVudCIvPgorICAgICAgPC9jb250ZW50cz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0icmVkZWZpbmVzX3BhcmVudHMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJjbGFzc2lmaWVyLmFsbFBhcmVudHMoKS0+Zm9yQWxsKGMgfCBjLm93bmVkVGVtcGxhdGVTaWduYXR1cmUtPm5vdEVtcHR5KCkgaW1wbGllcyBzZWxmLT5jbG9zdXJlKGV4dGVuZGVkU2lnbmF0dXJlKS0+aW5jbHVkZXMoYy5vd25lZFRlbXBsYXRlU2lnbmF0dXJlKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiBhbnkgb2YgdGhlIHBhcmVudCBDbGFzc2lmaWVycyBhcmUgYSB0ZW1wbGF0ZSwgdGhlbiB0aGUgZXh0ZW5kZWRTaWduYXR1cmUgbXVzdCBpbmNsdWRlIHRoZSBzaWduYXR1cmUgb2YgdGhhdCBDbGFzc2lmaWVyLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0SW5oZXJpdGVkUGFyYW1ldGVycyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vVGVtcGxhdGVQYXJhbWV0ZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJEZXJpdmF0aW9uIGZvciBSZWRlZmluYWJsZVRlbXBsYXRlU2lnbmF0dXJlOjovaW5oZXJpdGVkUGFyYW1ldGVyIi8+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJvcmlnaW5hbE5hbWUiIHZhbHVlPSJpbmhlcml0ZWRQYXJhbWV0ZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlmIGV4dGVuZGVkU2lnbmF0dXJlLT5pc0VtcHR5KCkgdGhlbiBTZXR7fSBlbHNlIGV4dGVuZGVkU2lnbmF0dXJlLnBhcmFtZXRlci0+YXNTZXQoKSBlbmRpZiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZXh0ZW5kZWRTaWduYXR1cmUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1JlZGVmaW5hYmxlVGVtcGxhdGVTaWduYXR1cmUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc2lnbmF0dXJlcyBleHRlbmRlZCBieSB0aGlzIFJlZGVmaW5hYmxlVGVtcGxhdGVTaWduYXR1cmUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9SZWRlZmluYWJsZUVsZW1lbnQvcmVkZWZpbmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iaW5oZXJpdGVkUGFyYW1ldGVyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9UZW1wbGF0ZVBhcmFtZXRlciIgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIgorICAgICAgICB0cmFuc2llbnQ9InRydWUiIGRlcml2ZWQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgZm9ybWFsIHRlbXBsYXRlIHBhcmFtZXRlcnMgb2YgdGhlIGV4dGVuZGVkIHNpZ25hdHVyZXMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9UZW1wbGF0ZVNpZ25hdHVyZS9wYXJhbWV0ZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImNsYXNzaWZpZXIiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vQ2xhc3NpZmllciIgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgQ2xhc3NpZmllciB0aGF0IG93bnMgdGhpcyBSZWRlZmluYWJsZVRlbXBsYXRlU2lnbmF0dXJlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9UZW1wbGF0ZVNpZ25hdHVyZS90ZW1wbGF0ZSIvPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL1JlZGVmaW5hYmxlRWxlbWVudC9yZWRlZmluaXRpb25Db250ZXh0Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJVc2VDYXNlIiBlU3VwZXJUeXBlcz0iIy8vQmVoYXZpb3JlZENsYXNzaWZpZXIiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgVXNlQ2FzZSBzcGVjaWZpZXMgYSBzZXQgb2YgYWN0aW9ucyBwZXJmb3JtZWQgYnkgaXRzIHN1YmplY3RzLCB3aGljaCB5aWVsZHMgYW4gb2JzZXJ2YWJsZSByZXN1bHQgdGhhdCBpcyBvZiB2YWx1ZSBmb3Igb25lIG9yIG1vcmUgQWN0b3JzIG9yIG90aGVyIHN0YWtlaG9sZGVycyBvZiBlYWNoIHN1YmplY3QuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImJpbmFyeV9hc3NvY2lhdGlvbnMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJBc3NvY2lhdGlvbi5hbGxJbnN0YW5jZXMoKS0+Zm9yQWxsKGEgfCBhLm1lbWJlckVuZC50eXBlLT5pbmNsdWRlcyhzZWxmKSBpbXBsaWVzIGEubWVtYmVyRW5kLT5zaXplKCkgPSAyKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlVzZUNhc2VzIGNhbiBvbmx5IGJlIGludm9sdmVkIGluIGJpbmFyeSBBc3NvY2lhdGlvbnMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJub19hc3NvY2lhdGlvbl90b191c2VfY2FzZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9IkFzc29jaWF0aW9uLmFsbEluc3RhbmNlcygpLT5mb3JBbGwoYSB8IGEubWVtYmVyRW5kLnR5cGUtPmluY2x1ZGVzKHNlbGYpIGltcGxpZXMgJiN4RDsmI3hBOyAgICgmI3hEOyYjeEE7ICAgbGV0IHVzZWNhc2VzOiBTZXQoVXNlQ2FzZSkgPSBhLm1lbWJlckVuZC50eXBlLT5zZWxlY3Qob2NsSXNLaW5kT2YoVXNlQ2FzZSkpLT5jb2xsZWN0KG9jbEFzVHlwZShVc2VDYXNlKSktPmFzU2V0KCkgaW4mI3hEOyYjeEE7ICAgdXNlY2FzZXMtPnNpemUoKSA+IDEgaW1wbGllcyB1c2VjYXNlcy0+Y29sbGVjdChzdWJqZWN0KS0+c2l6ZSgpID4gMSYjeEQ7JiN4QTsgICApJiN4RDsmI3hBOykiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJVc2VDYXNlcyBjYW5ub3QgaGF2ZSBBc3NvY2lhdGlvbnMgdG8gVXNlQ2FzZXMgc3BlY2lmeWluZyB0aGUgc2FtZSBzdWJqZWN0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY2Fubm90X2luY2x1ZGVfc2VsZiIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im5vdCBhbGxJbmNsdWRlZFVzZUNhc2VzKCktPmluY2x1ZGVzKHNlbGYpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBVc2VDYXNlIGNhbm5vdCBpbmNsdWRlIFVzZUNhc2VzIHRoYXQgZGlyZWN0bHkgb3IgaW5kaXJlY3RseSBpbmNsdWRlIGl0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibXVzdF9oYXZlX25hbWUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJuYW1lIC0+IG5vdEVtcHR5ICgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBVc2VDYXNlIG11c3QgaGF2ZSBhIG5hbWUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJhbGxJbmNsdWRlZFVzZUNhc2VzIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Vc2VDYXNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IGFsbEluY2x1ZGVkVXNlQ2FzZXMoKSByZXR1cm5zIHRoZSB0cmFuc2l0aXZlIGNsb3N1cmUgb2YgYWxsIFVzZUNhc2VzIChkaXJlY3RseSBvciBpbmRpcmVjdGx5KSBpbmNsdWRlZCBieSB0aGlzIFVzZUNhc2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzZWxmLmluY2x1ZGUuYWRkaXRpb24tPnVuaW9uKHNlbGYuaW5jbHVkZS5hZGRpdGlvbi0+Y29sbGVjdCh1YyB8IHVjLmFsbEluY2x1ZGVkVXNlQ2FzZXMoKSkpLT5hc1NldCgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJleHRlbmQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0V4dGVuZCIgY29udGFpbm1lbnQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vRXh0ZW5kL2V4dGVuc2lvbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBFeHRlbmQgcmVsYXRpb25zaGlwcyBvd25lZCBieSB0aGlzIFVzZUNhc2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lc3BhY2Uvb3duZWRNZW1iZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImV4dGVuc2lvblBvaW50IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9FeHRlbnNpb25Qb2ludCIgY29udGFpbm1lbnQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vRXh0ZW5zaW9uUG9pbnQvdXNlQ2FzZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBFeHRlbnNpb25Qb2ludHMgb3duZWQgYnkgdGhpcyBVc2VDYXNlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vTmFtZXNwYWNlL293bmVkTWVtYmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJpbmNsdWRlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9JbmNsdWRlIiBjb250YWlubWVudD0idHJ1ZSIgZU9wcG9zaXRlPSIjLy9JbmNsdWRlL2luY2x1ZGluZ0Nhc2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgSW5jbHVkZSByZWxhdGlvbnNoaXBzIG93bmVkIGJ5IHRoaXMgVXNlQ2FzZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVzcGFjZS9vd25lZE1lbWJlciIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ic3ViamVjdCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQ2xhc3NpZmllciIgZU9wcG9zaXRlPSIjLy9DbGFzc2lmaWVyL3VzZUNhc2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc3ViamVjdHMgdG8gd2hpY2ggdGhpcyBVc2VDYXNlIGFwcGxpZXMuIEVhY2ggc3ViamVjdCBvciBpdHMgcGFydHMgcmVhbGl6ZSBhbGwgdGhlIFVzZUNhc2VzIHRoYXQgYXBwbHkgdG8gaXQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkV4dGVuZCIgZVN1cGVyVHlwZXM9IiMvL05hbWVkRWxlbWVudCAjLy9EaXJlY3RlZFJlbGF0aW9uc2hpcCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSByZWxhdGlvbnNoaXAgZnJvbSBhbiBleHRlbmRpbmcgVXNlQ2FzZSB0byBhbiBleHRlbmRlZCBVc2VDYXNlIHRoYXQgc3BlY2lmaWVzIGhvdyBhbmQgd2hlbiB0aGUgYmVoYXZpb3IgZGVmaW5lZCBpbiB0aGUgZXh0ZW5kaW5nIFVzZUNhc2UgY2FuIGJlIGluc2VydGVkIGludG8gdGhlIGJlaGF2aW9yIGRlZmluZWQgaW4gdGhlIGV4dGVuZGVkIFVzZUNhc2UuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImV4dGVuc2lvbl9wb2ludHMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJleHRlbnNpb25Mb2NhdGlvbi0+Zm9yQWxsICh4cCB8IGV4dGVuZGVkQ2FzZS5leHRlbnNpb25Qb2ludC0+aW5jbHVkZXMoeHApKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBFeHRlbnNpb25Qb2ludHMgcmVmZXJlbmNlZCBieSB0aGUgRXh0ZW5kIHJlbGF0aW9uc2hpcCBtdXN0IGJlbG9uZyB0byB0aGUgVXNlQ2FzZSB0aGF0IGlzIGJlaW5nIGV4dGVuZGVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iY29uZGl0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL0NvbnN0cmFpbnQiIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmVmZXJlbmNlcyB0aGUgY29uZGl0aW9uIHRoYXQgbXVzdCBob2xkIHdoZW4gdGhlIGZpcnN0IEV4dGVuc2lvblBvaW50IGlzIHJlYWNoZWQgZm9yIHRoZSBleHRlbnNpb24gdG8gdGFrZSBwbGFjZS4gSWYgbm8gY29uc3RyYWludCBpcyBhc3NvY2lhdGVkIHdpdGggdGhlIEV4dGVuZCByZWxhdGlvbnNoaXAsIHRoZSBleHRlbnNpb24gaXMgdW5jb25kaXRpb25hbC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJleHRlbmRlZENhc2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vVXNlQ2FzZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBVc2VDYXNlIHRoYXQgaXMgYmVpbmcgZXh0ZW5kZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9EaXJlY3RlZFJlbGF0aW9uc2hpcC90YXJnZXQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImV4dGVuc2lvbkxvY2F0aW9uIiBsb3dlckJvdW5kPSIxIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0V4dGVuc2lvblBvaW50Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gb3JkZXJlZCBsaXN0IG9mIEV4dGVuc2lvblBvaW50cyBiZWxvbmdpbmcgdG8gdGhlIGV4dGVuZGVkIFVzZUNhc2UsIHNwZWNpZnlpbmcgd2hlcmUgdGhlIHJlc3BlY3RpdmUgYmVoYXZpb3JhbCBmcmFnbWVudHMgb2YgdGhlIGV4dGVuZGluZyBVc2VDYXNlIGFyZSB0byBiZSBpbnNlcnRlZC4gVGhlIGZpcnN0IGZyYWdtZW50IGluIHRoZSBleHRlbmRpbmcgVXNlQ2FzZSBpcyBhc3NvY2lhdGVkIHdpdGggdGhlIGZpcnN0IGV4dGVuc2lvbiBwb2ludCBpbiB0aGUgbGlzdCwgdGhlIHNlY29uZCBmcmFnbWVudCB3aXRoIHRoZSBzZWNvbmQgcG9pbnQsIGFuZCBzbyBvbi4gTm90ZSB0aGF0LCBpbiBtb3N0IHByYWN0aWNhbCBjYXNlcywgdGhlIGV4dGVuZGluZyBVc2VDYXNlIGhhcyBqdXN0IGEgc2luZ2xlIGJlaGF2aW9yIGZyYWdtZW50LCBzbyB0aGF0IHRoZSBsaXN0IG9mIEV4dGVuc2lvblBvaW50cyBpcyB0cml2aWFsLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJleHRlbnNpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vVXNlQ2FzZSIgZU9wcG9zaXRlPSIjLy9Vc2VDYXNlL2V4dGVuZCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBVc2VDYXNlIHRoYXQgcmVwcmVzZW50cyB0aGUgZXh0ZW5zaW9uIGFuZCBvd25zIHRoZSBFeHRlbmQgcmVsYXRpb25zaGlwLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRGlyZWN0ZWRSZWxhdGlvbnNoaXAvc291cmNlICMvL05hbWVkRWxlbWVudC9uYW1lc3BhY2UiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkV4dGVuc2lvblBvaW50IiBlU3VwZXJUeXBlcz0iIy8vUmVkZWZpbmFibGVFbGVtZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBFeHRlbnNpb25Qb2ludCBpZGVudGlmaWVzIGEgcG9pbnQgaW4gdGhlIGJlaGF2aW9yIG9mIGEgVXNlQ2FzZSB3aGVyZSB0aGF0IGJlaGF2aW9yIGNhbiBiZSBleHRlbmRlZCBieSB0aGUgYmVoYXZpb3Igb2Ygc29tZSBvdGhlciAoZXh0ZW5kaW5nKSBVc2VDYXNlLCBhcyBzcGVjaWZpZWQgYnkgYW4gRXh0ZW5kIHJlbGF0aW9uc2hpcC4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibXVzdF9oYXZlX25hbWUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJuYW1lLT5ub3RFbXB0eSAoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIEV4dGVuc2lvblBvaW50IG11c3QgaGF2ZSBhIG5hbWUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJ1c2VDYXNlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1VzZUNhc2UiIGVPcHBvc2l0ZT0iIy8vVXNlQ2FzZS9leHRlbnNpb25Qb2ludCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBVc2VDYXNlIHRoYXQgb3ducyB0aGlzIEV4dGVuc2lvblBvaW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vTmFtZWRFbGVtZW50L25hbWVzcGFjZSIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSW5jbHVkZSIgZVN1cGVyVHlwZXM9IiMvL05hbWVkRWxlbWVudCAjLy9EaXJlY3RlZFJlbGF0aW9uc2hpcCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gSW5jbHVkZSByZWxhdGlvbnNoaXAgc3BlY2lmaWVzIHRoYXQgYSBVc2VDYXNlIGNvbnRhaW5zIHRoZSBiZWhhdmlvciBkZWZpbmVkIGluIGFub3RoZXIgVXNlQ2FzZS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iYWRkaXRpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vVXNlQ2FzZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBVc2VDYXNlIHRoYXQgaXMgdG8gYmUgaW5jbHVkZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9EaXJlY3RlZFJlbGF0aW9uc2hpcC90YXJnZXQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImluY2x1ZGluZ0Nhc2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vVXNlQ2FzZSIgZU9wcG9zaXRlPSIjLy9Vc2VDYXNlL2luY2x1ZGUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgVXNlQ2FzZSB3aGljaCBpbmNsdWRlcyB0aGUgYWRkaXRpb24gYW5kIG93bnMgdGhlIEluY2x1ZGUgcmVsYXRpb25zaGlwLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRGlyZWN0ZWRSZWxhdGlvbnNoaXAvc291cmNlICMvL05hbWVkRWxlbWVudC9uYW1lc3BhY2UiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlN1YnN0aXR1dGlvbiIgZVN1cGVyVHlwZXM9IiMvL1JlYWxpemF0aW9uIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIHN1YnN0aXR1dGlvbiBpcyBhIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIHR3byBjbGFzc2lmaWVycyBzaWduaWZ5aW5nIHRoYXQgdGhlIHN1YnN0aXR1dGluZyBjbGFzc2lmaWVyIGNvbXBsaWVzIHdpdGggdGhlIGNvbnRyYWN0IHNwZWNpZmllZCBieSB0aGUgY29udHJhY3QgY2xhc3NpZmllci4gVGhpcyBpbXBsaWVzIHRoYXQgaW5zdGFuY2VzIG9mIHRoZSBzdWJzdGl0dXRpbmcgY2xhc3NpZmllciBhcmUgcnVudGltZSBzdWJzdGl0dXRhYmxlIHdoZXJlIGluc3RhbmNlcyBvZiB0aGUgY29udHJhY3QgY2xhc3NpZmllciBhcmUgZXhwZWN0ZWQuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImNvbnRyYWN0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0NsYXNzaWZpZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY29udHJhY3Qgd2l0aCB3aGljaCB0aGUgc3Vic3RpdHV0aW5nIGNsYXNzaWZpZXIgY29tcGxpZXMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9EZXBlbmRlbmN5L3N1cHBsaWVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJzdWJzdGl0dXRpbmdDbGFzc2lmaWVyIgorICAgICAgICBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0NsYXNzaWZpZXIiIGVPcHBvc2l0ZT0iIy8vQ2xhc3NpZmllci9zdWJzdGl0dXRpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbnN0YW5jZXMgb2YgdGhlIHN1YnN0aXR1dGluZyBjbGFzc2lmaWVyIGFyZSBydW50aW1lIHN1YnN0aXR1dGFibGUgd2hlcmUgaW5zdGFuY2VzIG9mIHRoZSBjb250cmFjdCBjbGFzc2lmaWVyIGFyZSBleHBlY3RlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0RlcGVuZGVuY3kvY2xpZW50ICMvL0VsZW1lbnQvb3duZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlJlYWxpemF0aW9uIiBlU3VwZXJUeXBlcz0iIy8vQWJzdHJhY3Rpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJlYWxpemF0aW9uIGlzIGEgc3BlY2lhbGl6ZWQgQWJzdHJhY3Rpb24gcmVsYXRpb25zaGlwIGJldHdlZW4gdHdvIHNldHMgb2YgbW9kZWwgRWxlbWVudHMsIG9uZSByZXByZXNlbnRpbmcgYSBzcGVjaWZpY2F0aW9uICh0aGUgc3VwcGxpZXIpIGFuZCB0aGUgb3RoZXIgcmVwcmVzZW50cyBhbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbGF0dGVyICh0aGUgY2xpZW50KS4gUmVhbGl6YXRpb24gY2FuIGJlIHVzZWQgdG8gbW9kZWwgc3RlcHdpc2UgcmVmaW5lbWVudCwgb3B0aW1pemF0aW9ucywgdHJhbnNmb3JtYXRpb25zLCB0ZW1wbGF0ZXMsIG1vZGVsIHN5bnRoZXNpcywgZnJhbWV3b3JrIGNvbXBvc2l0aW9uLCBldGMuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNsYXNzaWZpZXJUZW1wbGF0ZVBhcmFtZXRlciIgZVN1cGVyVHlwZXM9IiMvL1RlbXBsYXRlUGFyYW1ldGVyIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIENsYXNzaWZpZXJUZW1wbGF0ZVBhcmFtZXRlciBleHBvc2VzIGEgQ2xhc3NpZmllciBhcyBhIGZvcm1hbCB0ZW1wbGF0ZSBwYXJhbWV0ZXIuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9ImR1cGxpY2F0ZXMiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InBhcmFtZXRlcmVkRWxlbWVudCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZVR5cGUiIHZhbHVlPSJ1bWw6OkNsYXNzaWZpZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJwYXJhbWV0ZXJlZEVsZW1lbnQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9QYXJhbWV0ZXJhYmxlRWxlbWVudCIgZU9wcG9zaXRlPSIjLy9DbGFzc2lmaWVyLyVkdXBsaWNhdGVzJS90ZW1wbGF0ZVBhcmFtZXRlciI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgQ2xhc3NpZmllciBleHBvc2VkIGJ5IHRoaXMgQ2xhc3NpZmllclRlbXBsYXRlUGFyYW1ldGVyLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vVGVtcGxhdGVQYXJhbWV0ZXIvcGFyYW1ldGVyZWRFbGVtZW50Ii8+CisgICAgICA8L2NvbnRlbnRzPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJoYXNfY29uc3RyYWluaW5nX2NsYXNzaWZpZXIiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJhbGxvd1N1YnN0aXR1dGFibGUgaW1wbGllcyBjb25zdHJhaW5pbmdDbGFzc2lmaWVyLT5ub3RFbXB0eSgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgYWxsb3dTdWJzdGl0dXRhYmxlIGlzIHRydWUsIHRoZW4gdGhlcmUgbXVzdCBiZSBhIGNvbnN0cmFpbmluZ0NsYXNzaWZpZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJwYXJhbWV0ZXJlZF9lbGVtZW50X25vX2ZlYXR1cmVzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icGFyYW1ldGVyZWRFbGVtZW50LmZlYXR1cmUtPmlzRW1wdHkoKSBhbmQgKGNvbnN0cmFpbmluZ0NsYXNzaWZpZXItPmlzRW1wdHkoKSBpbXBsaWVzICBwYXJhbWV0ZXJlZEVsZW1lbnQuYWxsUGFyZW50cygpLT5pc0VtcHR5KCkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHBhcmFtZXRlcmVkRWxlbWVudCBoYXMgbm8gZGlyZWN0IGZlYXR1cmVzLCBhbmQgaWYgY29uc3RyYWluZWRFbGVtZW50IGlzIGVtcHR5IGl0IGhhcyBubyBnZW5lcmFsaXphdGlvbnMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJtYXRjaGluZ19hYnN0cmFjdCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Iihub3QgcGFyYW1ldGVyZWRFbGVtZW50LmlzQWJzdHJhY3QpIGltcGxpZXMgdGVtcGxhdGVQYXJhbWV0ZXJTdWJzdGl0dXRpb24uYWN0dWFsLT5mb3JBbGwoYSB8IG5vdCBhLm9jbEFzVHlwZShDbGFzc2lmaWVyKS5pc0Fic3RyYWN0KSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIHRoZSBwYXJhbWV0ZXJlZEVsZW1lbnQgaXMgbm90IGFic3RyYWN0LCB0aGVuIHRoZSBDbGFzc2lmaWVyIHVzZWQgYXMgYW4gYXJndW1lbnQgc2hhbGwgbm90IGJlIGFic3RyYWN0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iYWN0dWFsX2lzX2NsYXNzaWZpZXIiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIgdGVtcGxhdGVQYXJhbWV0ZXJTdWJzdGl0dXRpb24uYWN0dWFsLT5mb3JBbGwoYSB8IGEub2NsSXNLaW5kT2YoQ2xhc3NpZmllcikpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGFyZ3VtZW50IHRvIGEgQ2xhc3NpZmllclRlbXBsYXRlUGFyYW1ldGVyIGlzIGEgQ2xhc3NpZmllci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImNvbnN0cmFpbmluZ19jbGFzc2lmaWVyc19jb25zdHJhaW5fYXJncyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InRlbXBsYXRlUGFyYW1ldGVyU3Vic3RpdHV0aW9uLmFjdHVhbC0+Zm9yQWxsKCBhIHwmI3hEOyYjeEE7ICBsZXQgYXJnIDogQ2xhc3NpZmllciA9IGEub2NsQXNUeXBlKENsYXNzaWZpZXIpIGluJiN4RDsmI3hBOyAgICBjb25zdHJhaW5pbmdDbGFzc2lmaWVyLT5mb3JBbGwoJiN4RDsmI3hBOyAgICAgIGNjIHwgICYjeEQ7JiN4QTsgICAgICAgICBhcmcgPSBjYyBvciBhcmcuY29uZm9ybXNUbyhjYykgb3IgKGFsbG93U3Vic3RpdHV0YWJsZSBhbmQgYXJnLmlzU3Vic3RpdHV0YWJsZUZvcihjYykpJiN4RDsmI3hBOyAgICAgICkmI3hEOyYjeEE7KSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIHRoZXJlIGFyZSBhbnkgY29uc3RyYWluaW5nQ2xhc3NpZmllcnMsIHRoZW4gZXZlcnkgYXJndW1lbnQgbXVzdCBiZSB0aGUgc2FtZSBhcyBvciBhIHNwZWNpYWxpemF0aW9uIG9mIHRoZW0sIG9yIGlmIGFsbG93U3Vic3RpdHV0YWJsZSBpcyB0cnVlLCB0aGVuIGl0IGNhbiBhbHNvIGJlIHN1YnN0aXR1dGFibGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjb25zdHJhaW5pbmdfY2xhc3NpZmllcnNfY29uc3RyYWluX3BhcmFtZXRlcmVkX2VsZW1lbnQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJjb25zdHJhaW5pbmdDbGFzc2lmaWVyLT5mb3JBbGwoJiN4RDsmI3hBOyAgICAgY2MgfCAgcGFyYW1ldGVyZWRFbGVtZW50ID0gY2Mgb3IgcGFyYW1ldGVyZWRFbGVtZW50LmNvbmZvcm1zVG8oY2MpIG9yIChhbGxvd1N1YnN0aXR1dGFibGUgYW5kIHBhcmFtZXRlcmVkRWxlbWVudC5pc1N1YnN0aXR1dGFibGVGb3IoY2MpKSYjeEQ7JiN4QTspIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgdGhlcmUgYXJlIGFueSBjb25zdHJhaW5pbmdDbGFzc2lmaWVycywgdGhlbiB0aGUgcGFyYW1ldGVyZWRFbGVtZW50IG11c3QgYmUgdGhlIHNhbWUgYXMgb3IgYSBzcGVjaWFsaXphdGlvbiBvZiB0aGVtLCBvciBpZiBhbGxvd1N1YnN0aXR1dGFibGUgaXMgdHJ1ZSwgdGhlbiBpdCBjYW4gYWxzbyBiZSBzdWJzdGl0dXRhYmxlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iYWxsb3dTdWJzdGl0dXRhYmxlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGRlZmF1bHRWYWx1ZUxpdGVyYWw9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJDb25zdHJhaW5zIHRoZSByZXF1aXJlZCByZWxhdGlvbnNoaXAgYmV0d2VlbiBhbiBhY3R1YWwgcGFyYW1ldGVyIGFuZCB0aGUgcGFyYW1ldGVyZWRFbGVtZW50IGZvciB0aGlzIGZvcm1hbCBwYXJhbWV0ZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImNvbnN0cmFpbmluZ0NsYXNzaWZpZXIiCisgICAgICAgIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0NsYXNzaWZpZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2xhc3NpZmllcnMgdGhhdCBjb25zdHJhaW4gdGhlIGFyZ3VtZW50IHRoYXQgY2FuIGJlIHVzZWQgZm9yIHRoZSBwYXJhbWV0ZXIuIElmIHRoZSBhbGxvd1N1YnN0aXR1dGFibGUgYXR0cmlidXRlIGlzIHRydWUsIHRoZW4gYW55IENsYXNzaWZpZXIgdGhhdCBpcyBjb21wYXRpYmxlIHdpdGggdGhpcyBjb25zdHJhaW5pbmcgQ2xhc3NpZmllciBjYW4gYmUgc3Vic3RpdHV0ZWQ7IG90aGVyd2lzZSwgaXQgbXVzdCBiZSBlaXRoZXIgdGhpcyBDbGFzc2lmaWVyIG9yIG9uZSBvZiBpdHMgc3BlY2lhbGl6YXRpb25zLiBJZiB0aGlzIHByb3BlcnR5IGlzIGVtcHR5LCB0aGVyZSBhcmUgbm8gY29uc3RyYWludHMgb24gdGhlIENsYXNzaWZpZXIgdGhhdCBjYW4gYmUgdXNlZCBhcyBhbiBhcmd1bWVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSW50ZXJmYWNlUmVhbGl6YXRpb24iIGVTdXBlclR5cGVzPSIjLy9SZWFsaXphdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gSW50ZXJmYWNlUmVhbGl6YXRpb24gaXMgYSBzcGVjaWFsaXplZCByZWFsaXphdGlvbiByZWxhdGlvbnNoaXAgYmV0d2VlbiBhIEJlaGF2aW9yZWRDbGFzc2lmaWVyIGFuZCBhbiBJbnRlcmZhY2UuIFRoaXMgcmVsYXRpb25zaGlwIHNpZ25pZmllcyB0aGF0IHRoZSByZWFsaXppbmcgQmVoYXZpb3JlZENsYXNzaWZpZXIgY29uZm9ybXMgdG8gdGhlIGNvbnRyYWN0IHNwZWNpZmllZCBieSB0aGUgSW50ZXJmYWNlLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJjb250cmFjdCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9JbnRlcmZhY2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZWZlcmVuY2VzIHRoZSBJbnRlcmZhY2Ugc3BlY2lmeWluZyB0aGUgY29uZm9ybWFuY2UgY29udHJhY3QuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9EZXBlbmRlbmN5L3N1cHBsaWVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJpbXBsZW1lbnRpbmdDbGFzc2lmaWVyIgorICAgICAgICBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0JlaGF2aW9yZWRDbGFzc2lmaWVyIiBlT3Bwb3NpdGU9IiMvL0JlaGF2aW9yZWRDbGFzc2lmaWVyL2ludGVyZmFjZVJlYWxpemF0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmVmZXJlbmNlcyB0aGUgQmVoYXZpb3JlZENsYXNzaWZpZXIgdGhhdCBvd25zIHRoaXMgSW50ZXJmYWNlUmVhbGl6YXRpb24sIGkuZS4sIHRoZSBCZWhhdmlvcmVkQ2xhc3NpZmllciB0aGF0IHJlYWxpemVzIHRoZSBJbnRlcmZhY2UgdG8gd2hpY2ggaXQgcmVmZXJzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRGVwZW5kZW5jeS9jbGllbnQgIy8vRWxlbWVudC9vd25lciIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRW5jYXBzdWxhdGVkQ2xhc3NpZmllciIgYWJzdHJhY3Q9InRydWUiCisgICAgICBlU3VwZXJUeXBlcz0iIy8vU3RydWN0dXJlZENsYXNzaWZpZXIiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIEVuY2Fwc3VsYXRlZENsYXNzaWZpZXIgbWF5IG93biBQb3J0cyB0byBzcGVjaWZ5IHR5cGVkIGludGVyYWN0aW9uIHBvaW50cy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0T3duZWRQb3J0cyIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Qb3J0Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iRGVyaXZhdGlvbiBmb3IgRW5jYXBzdWxhdGVkQ2xhc3NpZmllcjo6L293bmVkUG9ydCA6IFBvcnQiLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9Im9yaWdpbmFsTmFtZSIgdmFsdWU9Im93bmVkUG9ydCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ib3duZWRBdHRyaWJ1dGUtPnNlbGVjdChvY2xJc0tpbmRPZihQb3J0KSktPmNvbGxlY3Qob2NsQXNUeXBlKFBvcnQpKS0+YXNPcmRlcmVkU2V0KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im93bmVkUG9ydCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUG9ydCIgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiCisgICAgICAgIGRlcml2ZWQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgUG9ydHMgb3duZWQgYnkgdGhlIEVuY2Fwc3VsYXRlZENsYXNzaWZpZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9TdHJ1Y3R1cmVkQ2xhc3NpZmllci9vd25lZEF0dHJpYnV0ZSIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQWN0aXZpdHlHcm91cCIgYWJzdHJhY3Q9InRydWUiIGVTdXBlclR5cGVzPSIjLy9OYW1lZEVsZW1lbnQgIy8vQWN0aXZpdHlDb250ZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBY3Rpdml0eUdyb3VwIGlzIGFuIGFic3RyYWN0IGNsYXNzIGZvciBkZWZpbmluZyBzZXRzIG9mIEFjdGl2aXR5Tm9kZXMgYW5kIEFjdGl2aXR5RWRnZXMgaW4gYW4gQWN0aXZpdHkuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9ImR1cGxpY2F0ZXMiPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBuYW1lPSJjb250YWluaW5nQWN0aXZpdHkiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgIGVUeXBlPSIjLy9BY3Rpdml0eSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgQWN0aXZpdHkgdGhhdCBkaXJlY3RseSBvciBpbmRpcmVjdGx5IGNvbnRhaW5zIHRoaXMgQWN0aXZpdHlHcm91cC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL0FjdGl2aXR5Q29udGVudC9jb250YWluaW5nQWN0aXZpdHkiLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaWYgc3VwZXJHcm91cCZsdDs+bnVsbCB0aGVuIHN1cGVyR3JvdXAuY29udGFpbmluZ0FjdGl2aXR5KCkmI3hEOyYjeEE7ZWxzZSBpbkFjdGl2aXR5JiN4RDsmI3hBO2VuZGlmIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9jb250ZW50cz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibm9kZXNfYW5kX2VkZ2VzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iY29udGFpbmVkTm9kZS0+Zm9yQWxsKGFjdGl2aXR5ID0gc2VsZi5jb250YWluaW5nQWN0aXZpdHkoKSkgYW5kICYjeEQ7JiN4QTtjb250YWluZWRFZGdlLT5mb3JBbGwoYWN0aXZpdHkgPSBzZWxmLmNvbnRhaW5pbmdBY3Rpdml0eSgpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFsbCBjb250YWluZWROb2RlcyBhbmQgY29udGFpbmVFZGdlcyBvZiBhbiBBY3Rpdml0eUdyb3VwIG11c3QgYmUgaW4gdGhlIHNhbWUgQWN0aXZpdHkgYXMgdGhlIGdyb3VwLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibm90X2NvbnRhaW5lZCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InN1Ymdyb3VwLT5jbG9zdXJlKHN1Ymdyb3VwKS5jb250YWluZWROb2RlLT5leGNsdWRlc0FsbChjb250YWluZWROb2RlKSBhbmQmI3hEOyYjeEE7c3VwZXJHcm91cC0+Y2xvc3VyZShzdXBlckdyb3VwKS5jb250YWluZWROb2RlLT5leGNsdWRlc0FsbChjb250YWluZWROb2RlKSBhbmQgJiN4RDsmI3hBO3N1Ymdyb3VwLT5jbG9zdXJlKHN1Ymdyb3VwKS5jb250YWluZWRFZGdlLT5leGNsdWRlc0FsbChjb250YWluZWRFZGdlKSBhbmQgJiN4RDsmI3hBO3N1cGVyR3JvdXAtPmNsb3N1cmUoc3VwZXJHcm91cCkuY29udGFpbmVkRWRnZS0+ZXhjbHVkZXNBbGwoY29udGFpbmVkRWRnZSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJObyBjb250YWluZWROb2RlIG9yIGNvbnRhaW5lZEVkZ2Ugb2YgYW4gQWN0aXZpdHlHcm91cCBtYXkgYmUgY29udGFpbmVkIGJ5IGl0cyBzdWJncm91cHMgb3IgaXRzIHN1cGVyR3JvdXBzLCB0cmFuc2l0aXZlbHkuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJjb250YWluZWRFZGdlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9BY3Rpdml0eUVkZ2UiIGNoYW5nZWFibGU9ImZhbHNlIiB2b2xhdGlsZT0idHJ1ZSIKKyAgICAgICAgdHJhbnNpZW50PSJ0cnVlIiBkZXJpdmVkPSJ0cnVlIiBlT3Bwb3NpdGU9IiMvL0FjdGl2aXR5RWRnZS9pbkdyb3VwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQWN0aXZpdHlFZGdlcyBpbW1lZGlhdGVseSBjb250YWluZWQgaW4gdGhlIEFjdGl2aXR5R3JvdXAuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJ1bmlvbiIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iY29udGFpbmVkTm9kZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQWN0aXZpdHlOb2RlIiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiCisgICAgICAgIHRyYW5zaWVudD0idHJ1ZSIgZGVyaXZlZD0idHJ1ZSIgZU9wcG9zaXRlPSIjLy9BY3Rpdml0eU5vZGUvaW5Hcm91cCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFjdGl2aXR5Tm9kZXMgaW1tZWRpYXRlbHkgY29udGFpbmVkIGluIHRoZSBBY3Rpdml0eUdyb3VwLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0idW5pb24iLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImluQWN0aXZpdHkiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vQWN0aXZpdHkiIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiIGRlcml2ZWQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vQWN0aXZpdHkvZ3JvdXAiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgQWN0aXZpdHkgY29udGFpbmluZyB0aGUgQWN0aXZpdHlHcm91cCwgaWYgaXQgaXMgZGlyZWN0bHkgb3duZWQgYnkgYW4gQWN0aXZpdHkuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJzdWJncm91cCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQWN0aXZpdHlHcm91cCIgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIgorICAgICAgICB0cmFuc2llbnQ9InRydWUiIGRlcml2ZWQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vQWN0aXZpdHlHcm91cC9zdXBlckdyb3VwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iT3RoZXIgQWN0aXZpdHlHcm91cHMgaW1tZWRpYXRlbHkgY29udGFpbmVkIGluIHRoaXMgQWN0aXZpdHlHcm91cC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InVuaW9uIi8+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InN1cGVyR3JvdXAiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vQWN0aXZpdHlHcm91cCIgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiCisgICAgICAgIGRlcml2ZWQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vQWN0aXZpdHlHcm91cC9zdWJncm91cCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBBY3Rpdml0eUdyb3VwIGltbWVkaWF0ZWx5IGNvbnRhaW5pbmcgdGhpcyBBY3Rpdml0eUdyb3VwLCBpZiBpdCBpcyBkaXJlY3RseSBvd25lZCBieSBhbm90aGVyIEFjdGl2aXR5R3JvdXAuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJ1bmlvbiIvPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkFjdGl2aXR5RWRnZSIgYWJzdHJhY3Q9InRydWUiIGVTdXBlclR5cGVzPSIjLy9SZWRlZmluYWJsZUVsZW1lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIEFjdGl2aXR5RWRnZSBpcyBhbiBhYnN0cmFjdCBjbGFzcyBmb3IgZGlyZWN0ZWQgY29ubmVjdGlvbnMgYmV0d2VlbiB0d28gQWN0aXZpdHlOb2Rlcy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iZHVwbGljYXRlcyI+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIG5hbWU9ImlzQ29uc2lzdGVudFdpdGgiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vUmVkZWZpbmFibGVFbGVtZW50L2lzQ29uc2lzdGVudFdpdGgiLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icmVkZWZpbmluZ0VsZW1lbnQub2NsSXNLaW5kT2YoQWN0aXZpdHlFZGdlKSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InJlZGVmaW5pbmdFbGVtZW50IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JlZGVmaW5hYmxlRWxlbWVudCIvPgorICAgICAgPC9jb250ZW50cz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ic291cmNlX2FuZF90YXJnZXQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJhY3Rpdml0eSZsdDs+bnVsbCBpbXBsaWVzIHNvdXJjZS5jb250YWluaW5nQWN0aXZpdHkoKSA9IGFjdGl2aXR5IGFuZCB0YXJnZXQuY29udGFpbmluZ0FjdGl2aXR5KCkgPSBhY3Rpdml0eSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIGFuIEFjdGl2aXR5RWRnZSBpcyBkaXJlY3RseSBvd25lZCBieSBhbiBBY3Rpdml0eSwgdGhlbiBpdHMgc291cmNlIGFuZCB0YXJnZXQgbXVzdCBiZSBkaXJlY3RseSBvciBpbmRpcmVjdGx5IGNvbnRhaW5lZCBpbiB0aGUgc2FtZSBBY3Rpdml0eS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImFjdGl2aXR5IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL0FjdGl2aXR5IiBlT3Bwb3NpdGU9IiMvL0FjdGl2aXR5L2VkZ2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgQWN0aXZpdHkgY29udGFpbmluZyB0aGUgQWN0aXZpdHlFZGdlLCBpZiBpdCBpcyBkaXJlY3RseSBvd25lZCBieSBhbiBBY3Rpdml0eS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Imd1YXJkIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL1ZhbHVlU3BlY2lmaWNhdGlvbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFZhbHVlU3BlY2lmaWNhdGlvbiB0aGF0IGlzIGV2YWx1YXRlZCB0byBkZXRlcm1pbmUgaWYgYSB0b2tlbiBjYW4gdHJhdmVyc2UgdGhlIEFjdGl2aXR5RWRnZS4gSWYgYW4gQWN0aXZpdHlFZGdlIGhhcyBubyBndWFyZCwgdGhlbiB0aGVyZSBpcyBubyByZXN0cmljdGlvbiBvbiB0b2tlbnMgdHJhdmVyc2luZyB0aGUgZWRnZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJpblBhcnRpdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQWN0aXZpdHlQYXJ0aXRpb24iIGVPcHBvc2l0ZT0iIy8vQWN0aXZpdHlQYXJ0aXRpb24vZWRnZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFjdGl2aXR5UGFydGl0aW9ucyBjb250YWluaW5nIHRoZSBBY3Rpdml0eUVkZ2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9BY3Rpdml0eUVkZ2UvaW5Hcm91cCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iaW50ZXJydXB0cyIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9JbnRlcnJ1cHRpYmxlQWN0aXZpdHlSZWdpb24iIGVPcHBvc2l0ZT0iIy8vSW50ZXJydXB0aWJsZUFjdGl2aXR5UmVnaW9uL2ludGVycnVwdGluZ0VkZ2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgSW50ZXJydXB0aWJsZUFjdGl2aXR5UmVnaW9uIGZvciB3aGljaCB0aGlzIEFjdGl2aXR5RWRnZSBpcyBhbiBpbnRlcnJ1cHRpbmdFZGdlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJpblN0cnVjdHVyZWROb2RlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL1N0cnVjdHVyZWRBY3Rpdml0eU5vZGUiIGVPcHBvc2l0ZT0iIy8vU3RydWN0dXJlZEFjdGl2aXR5Tm9kZS9lZGdlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFN0cnVjdHVyZWRBY3Rpdml0eU5vZGUgY29udGFpbmluZyB0aGUgQWN0aXZpdHlFZGdlLCBpZiBpdCBpcyBvd25lZCBieSBhIFN0cnVjdHVyZWRBY3Rpdml0eU5vZGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9BY3Rpdml0eUVkZ2UvaW5Hcm91cCAjLy9FbGVtZW50L293bmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJ0YXJnZXQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vQWN0aXZpdHlOb2RlIiBlT3Bwb3NpdGU9IiMvL0FjdGl2aXR5Tm9kZS9pbmNvbWluZyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBBY3Rpdml0eU5vZGUgdG8gd2hpY2ggdG9rZW5zIGFyZSBwdXQgd2hlbiB0aGV5IHRyYXZlcnNlIHRoZSBBY3Rpdml0eUVkZ2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InNvdXJjZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9BY3Rpdml0eU5vZGUiIGVPcHBvc2l0ZT0iIy8vQWN0aXZpdHlOb2RlL291dGdvaW5nIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIEFjdGl2aXR5Tm9kZSBmcm9tIHdoaWNoIHRva2VucyBhcmUgdGFrZW4gd2hlbiB0aGV5IHRyYXZlcnNlIHRoZSBBY3Rpdml0eUVkZ2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InJlZGVmaW5lZEVkZ2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0FjdGl2aXR5RWRnZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFjdGl2aXR5RWRnZXMgZnJvbSBhIGdlbmVyYWxpemF0aW9uIG9mIHRoZSBBY3Rpdml0eSBjb250YWluaW5nIHRoaXMgQWN0aXZpdHlFZGdlIHRoYXQgYXJlIHJlZGVmaW5lZCBieSB0aGlzIEFjdGl2aXR5RWRnZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL1JlZGVmaW5hYmxlRWxlbWVudC9yZWRlZmluZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJ3ZWlnaHQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vVmFsdWVTcGVjaWZpY2F0aW9uIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBtaW5pbXVtIG51bWJlciBvZiB0b2tlbnMgdGhhdCBtdXN0IHRyYXZlcnNlIHRoZSBBY3Rpdml0eUVkZ2UgYXQgdGhlIHNhbWUgdGltZS4gSWYgbm8gd2VpZ2h0IGlzIHNwZWNpZmllZCwgdGhpcyBpcyBlcXVpdmFsZW50IHRvIHNwZWNpZnlpbmcgYSBjb25zdGFudCB2YWx1ZSBvZiAxLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImluR3JvdXAiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0FjdGl2aXR5R3JvdXAiIGNoYW5nZWFibGU9ImZhbHNlIiB2b2xhdGlsZT0idHJ1ZSIKKyAgICAgICAgdHJhbnNpZW50PSJ0cnVlIiBkZXJpdmVkPSJ0cnVlIiBlT3Bwb3NpdGU9IiMvL0FjdGl2aXR5R3JvdXAvY29udGFpbmVkRWRnZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFjdGl2aXR5R3JvdXBzIGNvbnRhaW5pbmcgdGhlIEFjdGl2aXR5RWRnZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InVuaW9uIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJBY3Rpdml0eVBhcnRpdGlvbiIgZVN1cGVyVHlwZXM9IiMvL0FjdGl2aXR5R3JvdXAiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIEFjdGl2aXR5UGFydGl0aW9uIGlzIGEga2luZCBvZiBBY3Rpdml0eUdyb3VwIGZvciBpZGVudGlmeWluZyBBY3Rpdml0eU5vZGVzIHRoYXQgaGF2ZSBzb21lIGNoYXJhY3RlcmlzdGljIGluIGNvbW1vbi4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0icmVwcmVzZW50c19jbGFzc2lmaWVyIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iKG5vdCBpc0V4dGVybmFsIGFuZCByZXByZXNlbnRzLm9jbElzS2luZE9mKENsYXNzaWZpZXIpIGFuZCBzdXBlclBhcnRpdGlvbi0+bm90RW1wdHkoKSkgaW1wbGllcyYjeEQ7JiN4QTsoJiN4RDsmI3hBOyAgIGxldCByZXByZXNlbnRlZENsYXNzaWZpZXIgOiBDbGFzc2lmaWVyID0gcmVwcmVzZW50cy5vY2xBc1R5cGUoQ2xhc3NpZmllcikgaW4mI3hEOyYjeEE7ICAgICBzdXBlclBhcnRpdGlvbi5yZXByZXNlbnRzLm9jbElzS2luZE9mKENsYXNzaWZpZXIpIGFuZCYjeEQ7JiN4QTsgICAgICBsZXQgcmVwcmVzZW50ZWRTdXBlckNsYXNzaWZpZXIgOiBDbGFzc2lmaWVyID0gc3VwZXJQYXJ0aXRpb24ucmVwcmVzZW50cy5vY2xBc1R5cGUoQ2xhc3NpZmllcikgaW4mI3hEOyYjeEE7ICAgICAgIChyZXByZXNlbnRlZFN1cGVyQ2xhc3NpZmllci5vY2xJc0tpbmRPZihCZWhhdmlvcmVkQ2xhc3NpZmllcikgYW5kIHJlcHJlc2VudGVkQ2xhc3NpZmllci5vY2xJc0tpbmRPZihCZWhhdmlvcikgYW5kICYjeEQ7JiN4QTsgICAgICAgIHJlcHJlc2VudGVkU3VwZXJDbGFzc2lmaWVyLm9jbEFzVHlwZShCZWhhdmlvcmVkQ2xhc3NpZmllcikub3duZWRCZWhhdmlvci0+aW5jbHVkZXMocmVwcmVzZW50ZWRDbGFzc2lmaWVyLm9jbEFzVHlwZShCZWhhdmlvcikpKSAmI3hEOyYjeEE7ICAgICAgIG9yJiN4RDsmI3hBOyAgICAgICAocmVwcmVzZW50ZWRTdXBlckNsYXNzaWZpZXIub2NsSXNLaW5kT2YoQ2xhc3MpIGFuZCAgcmVwcmVzZW50ZWRTdXBlckNsYXNzaWZpZXIub2NsQXNUeXBlKENsYXNzKS5uZXN0ZWRDbGFzc2lmaWVyLT5pbmNsdWRlcyhyZXByZXNlbnRlZENsYXNzaWZpZXIpKSYjeEQ7JiN4QTsgICAgICAgb3ImI3hEOyYjeEE7ICAgICAgIChBc3NvY2lhdGlvbi5hbGxJbnN0YW5jZXMoKS0+ZXhpc3RzKGEgfCBhLm1lbWJlckVuZC0+ZXhpc3RzKGVuZDEgfCBlbmQxLmlzQ29tcG9zaXRlIGFuZCBlbmQxLnR5cGUgPSByZXByZXNlbnRlZENsYXNzaWZpZXIgYW5kICYjeEQ7JiN4QTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYS5tZW1iZXJFbmQtPmV4aXN0cyhlbmQyIHwgZW5kMSZsdDs+ZW5kMiBhbmQgZW5kMi50eXBlID0gcmVwcmVzZW50ZWRTdXBlckNsYXNzaWZpZXIpKSkpJiN4RDsmI3hBOykiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiBhIG5vbi1leHRlcm5hbCBBY3Rpdml0eVBhcnRpdGlvbiByZXByZXNlbnRzIGEgQ2xhc3NpZmllciBhbmQgaGFzIGEgc3VwZXJQYXJ0aXRpb24sIHRoZW4gdGhlIHN1cGVyUGFydGl0aW9uIG11c3QgcmVwcmVzZW50IGEgQ2xhc3NpZmllciwgYW5kIHRoZSBDbGFzc2lmaWVyIG9mIHRoZSBzdWJwYXJ0aXRpb24gbXVzdCBiZSBuZXN0ZWQgKG5lc3RlZENsYXNzaWZpZXIgb3Igb3duZWRCZWhhdmlvcikgaW4gdGhlIENsYXNzaWZpZXIgcmVwcmVzZW50ZWQgYnkgdGhlIHN1cGVyUGFydGl0aW9uLCBvciBiZSBhdCB0aGUgY29udGFpbmVkIGVuZCBvZiBhIGNvbXBvc2l0aW9uIEFzc29jaWF0aW9uIHdpdGggdGhlIENsYXNzaWZpZXIgcmVwcmVzZW50ZWQgYnkgdGhlIHN1cGVyUGFydGl0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0icmVwcmVzZW50c19wcm9wZXJ0eV9hbmRfaXNfY29udGFpbmVkIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iKHJlcHJlc2VudHMub2NsSXNLaW5kT2YoUHJvcGVydHkpIGFuZCBzdXBlclBhcnRpdGlvbi0+bm90RW1wdHkoKSkgaW1wbGllcyYjeEQ7JiN4QTsoJiN4RDsmI3hBOyAgKHN1cGVyUGFydGl0aW9uLnJlcHJlc2VudHMub2NsSXNLaW5kT2YoQ2xhc3NpZmllcikgYW5kIHJlcHJlc2VudHMub3duZXIgPSBzdXBlclBhcnRpdGlvbi5yZXByZXNlbnRzKSBvciAmI3hEOyYjeEE7ICAoc3VwZXJQYXJ0aXRpb24ucmVwcmVzZW50cy5vY2xJc0tpbmRPZihQcm9wZXJ0eSkgYW5kIHJlcHJlc2VudHMub3duZXIgPSBzdXBlclBhcnRpdGlvbi5yZXByZXNlbnRzLm9jbEFzVHlwZShQcm9wZXJ0eSkudHlwZSkmI3hEOyYjeEE7KSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIGFuIEFjdGl2aXR5UGFydGl0aW9uIHJlcHJlc2VudHMgYSBQcm9wZXJ0eSBhbmQgaGFzIGEgc3VwZXJQYXJ0aXRpb24sIHRoZW4gdGhlIFByb3BlcnR5IG11c3QgYmUgb2YgYSBDbGFzc2lmaWVyIHJlcHJlc2VudGVkIGJ5IHRoZSBzdXBlclBhcnRpdGlvbiwgb3Igb2YgYSBDbGFzc2lmaWVyIHRoYXQgaXMgdGhlIHR5cGUgb2YgYSBQcm9wZXJ0eSByZXByZXNlbnRlZCBieSB0aGUgc3VwZXJQYXJ0aXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJyZXByZXNlbnRzX3Byb3BlcnR5IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iKHJlcHJlc2VudHMub2NsSXNLaW5kT2YoUHJvcGVydHkpIGFuZCBzdXBlclBhcnRpdGlvbi0+bm90RW1wdHkoKSBhbmQgc3VwZXJQYXJ0aXRpb24ucmVwcmVzZW50cy5vY2xJc0tpbmRPZihDbGFzc2lmaWVyKSkgaW1wbGllcyYjeEQ7JiN4QTsoJiN4RDsmI3hBOyAgbGV0IHJlcHJlc2VudGVkQ2xhc3NpZmllciA6IENsYXNzaWZpZXIgPSBzdXBlclBhcnRpdGlvbi5yZXByZXNlbnRzLm9jbEFzVHlwZShDbGFzc2lmaWVyKSYjeEQ7JiN4QTsgIGluJiN4RDsmI3hBOyAgICBzdXBlclBhcnRpdGlvbi5zdWJwYXJ0aXRpb24tPnJlamVjdChpc0V4dGVybmFsKS0+Zm9yQWxsKHAgfCAmI3hEOyYjeEE7ICAgICAgIHAucmVwcmVzZW50cy5vY2xJc0tpbmRPZihQcm9wZXJ0eSkgYW5kIHAub3duZXI9cmVwcmVzZW50ZWRDbGFzc2lmaWVyKSYjeEQ7JiN4QTspIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgYW4gQWN0aXZpdHlQYXJ0aXRpb24gcmVwcmVzZW50cyBhIFByb3BlcnR5IGFuZCBoYXMgYSBzdXBlclBhcnRpdGlvbiByZXByZXNlbnRpbmcgYSBDbGFzc2lmaWVyLCB0aGVuIGFsbCB0aGUgb3RoZXIgbm9uLWV4dGVybmFsIHN1YnBhcnRpdGlvbnMgb2YgdGhlIHN1cGVyUGFydGl0aW9uIG11c3QgcmVwcmVzZW50IFByb3BlcnRpZXMgZGlyZWN0bHkgb3duZWQgYnkgdGhlIHNhbWUgQ2xhc3NpZmllci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImRpbWVuc2lvbl9ub3RfY29udGFpbmVkIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaXNEaW1lbnNpb24gaW1wbGllcyBzdXBlclBhcnRpdGlvbi0+aXNFbXB0eSgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gQWN0dml2aXR5UGFydGl0aW9uIHdpdGggaXNEaW1lbnNpb24gPSB0cnVlIG1heSBub3QgYmUgY29udGFpbmVkIGJ5IGFub3RoZXIgQWN0aXZpdHlQYXJ0aXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpc0RpbWVuc2lvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSJmYWxzZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkluZGljYXRlcyB3aGV0aGVyIHRoZSBBY3Rpdml0eVBhcnRpdGlvbiBncm91cHMgb3RoZXIgQWN0aXZpdHlQYXJ0aXRpb25zIGFsb25nIGEgZGltZW5zaW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpc0V4dGVybmFsIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGRlZmF1bHRWYWx1ZUxpdGVyYWw9ImZhbHNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSW5kaWNhdGVzIHdoZXRoZXIgdGhlIEFjdGl2aXR5UGFydGl0aW9uIHJlcHJlc2VudHMgYW4gZW50aXR5IHRvIHdoaWNoIHRoZSBwYXJ0aXRpb25pbmcgc3RydWN0dXJlIGRvZXMgbm90IGFwcGx5LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJub2RlIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9BY3Rpdml0eU5vZGUiIGVPcHBvc2l0ZT0iIy8vQWN0aXZpdHlOb2RlL2luUGFydGl0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQWN0aXZpdHlOb2RlcyBpbW1lZGlhdGVseSBjb250YWluZWQgaW4gdGhlIEFjdGl2aXR5UGFydGl0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQWN0aXZpdHlHcm91cC9jb250YWluZWROb2RlIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyZXByZXNlbnRzIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL0VsZW1lbnQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBFbGVtZW50IHJlcHJlc2VudGVkIGJ5IHRoZSBmdW5jdGlvbmFsaXR5IG1vZGVsZWQgd2l0aGluIHRoZSBBY3Rpdml0eVBhcnRpdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ic3VicGFydGl0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9BY3Rpdml0eVBhcnRpdGlvbiIgY29udGFpbm1lbnQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vQWN0aXZpdHlQYXJ0aXRpb24vc3VwZXJQYXJ0aXRpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJPdGhlciBBY3Rpdml0eVBhcnRpdGlvbnMgaW1tZWRpYXRlbHkgY29udGFpbmVkIGluIHRoaXMgQWN0aXZpdHlQYXJ0aXRpb24gKGFzIGl0cyBzdWJncm91cHMpLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQWN0aXZpdHlHcm91cC9zdWJncm91cCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ic3VwZXJQYXJ0aXRpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vQWN0aXZpdHlQYXJ0aXRpb24iIGVPcHBvc2l0ZT0iIy8vQWN0aXZpdHlQYXJ0aXRpb24vc3VicGFydGl0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iT3RoZXIgQWN0aXZpdHlQYXJ0aXRpb25zIGltbWVkaWF0ZWx5IGNvbnRhaW5pbmcgdGhpcyBBY3Rpdml0eVBhcnRpdGlvbiAoYXMgaXRzIHN1cGVyR3JvdXBzKS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0FjdGl2aXR5R3JvdXAvc3VwZXJHcm91cCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZWRnZSIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vQWN0aXZpdHlFZGdlIiBlT3Bwb3NpdGU9IiMvL0FjdGl2aXR5RWRnZS9pblBhcnRpdGlvbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFjdGl2aXR5RWRnZXMgaW1tZWRpYXRlbHkgY29udGFpbmVkIGluIHRoZSBBY3Rpdml0eVBhcnRpdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0FjdGl2aXR5R3JvdXAvY29udGFpbmVkRWRnZSIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQWN0aXZpdHlOb2RlIiBhYnN0cmFjdD0idHJ1ZSIgZVN1cGVyVHlwZXM9IiMvL1JlZGVmaW5hYmxlRWxlbWVudCAjLy9BY3Rpdml0eUNvbnRlbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFjdGl2aXR5Tm9kZSBpcyBhbiBhYnN0cmFjdCBjbGFzcyBmb3IgcG9pbnRzIGluIHRoZSBmbG93IG9mIGFuIEFjdGl2aXR5IGNvbm5lY3RlZCBieSBBY3Rpdml0eUVkZ2VzLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJkdXBsaWNhdGVzIj4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgbmFtZT0iY29udGFpbmluZ0FjdGl2aXR5IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICBlVHlwZT0iIy8vQWN0aXZpdHkiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIEFjdGl2aXR5IHRoYXQgZGlyZWN0bHkgb3IgaW5kaXJlY3RseSBjb250YWlucyB0aGlzIEFjdGl2aXR5Tm9kZS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL0FjdGl2aXR5Q29udGVudC9jb250YWluaW5nQWN0aXZpdHkiLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaWYgaW5TdHJ1Y3R1cmVkTm9kZSZsdDs+bnVsbCB0aGVuIGluU3RydWN0dXJlZE5vZGUuY29udGFpbmluZ0FjdGl2aXR5KCkmI3hEOyYjeEE7ZWxzZSBhY3Rpdml0eSYjeEQ7JiN4QTtlbmRpZiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvY29udGVudHM+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIG5hbWU9ImlzQ29uc2lzdGVudFdpdGgiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vUmVkZWZpbmFibGVFbGVtZW50L2lzQ29uc2lzdGVudFdpdGgiLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icmVkZWZpbmluZ0VsZW1lbnQub2NsSXNLaW5kT2YoQWN0aXZpdHlOb2RlKSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InJlZGVmaW5pbmdFbGVtZW50IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JlZGVmaW5hYmxlRWxlbWVudCIvPgorICAgICAgPC9jb250ZW50cz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iYWN0aXZpdHkiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vQWN0aXZpdHkiIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiIGRlcml2ZWQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vQWN0aXZpdHkvbm9kZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBBY3Rpdml0eSBjb250YWluaW5nIHRoZSBBY3Rpdml0eU5vZGUsIGlmIGl0IGlzIGRpcmVjdGx5IG93bmVkIGJ5IGFuIEFjdGl2aXR5LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lciIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iaW5Hcm91cCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQWN0aXZpdHlHcm91cCIgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIgorICAgICAgICB0cmFuc2llbnQ9InRydWUiIGRlcml2ZWQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vQWN0aXZpdHlHcm91cC9jb250YWluZWROb2RlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQWN0aXZpdHlHcm91cHMgY29udGFpbmluZyB0aGUgQWN0aXZpdHlOb2RlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0idW5pb24iLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImluSW50ZXJydXB0aWJsZVJlZ2lvbiIKKyAgICAgICAgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vSW50ZXJydXB0aWJsZUFjdGl2aXR5UmVnaW9uIiBlT3Bwb3NpdGU9IiMvL0ludGVycnVwdGlibGVBY3Rpdml0eVJlZ2lvbi9ub2RlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSW50ZXJydXB0aWJsZUFjdGl2aXR5UmVnaW9ucyBjb250YWluaW5nIHRoZSBBY3Rpdml0eU5vZGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9BY3Rpdml0eU5vZGUvaW5Hcm91cCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iaW5TdHJ1Y3R1cmVkTm9kZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9TdHJ1Y3R1cmVkQWN0aXZpdHlOb2RlIiBlT3Bwb3NpdGU9IiMvL1N0cnVjdHVyZWRBY3Rpdml0eU5vZGUvbm9kZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBTdHJ1Y3R1cmVkQWN0aXZpdHlOb2RlIGNvbnRhaW5pbmcgdGhlIEFjdHZpdHlOb2RlLCBpZiBpdCBpcyBkaXJlY3RseSBvd25lZCBieSBhIFN0cnVjdHVyZWRBY3Rpdml0eU5vZGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9BY3Rpdml0eU5vZGUvaW5Hcm91cCAjLy9FbGVtZW50L293bmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJpbmNvbWluZyIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQWN0aXZpdHlFZGdlIiBlT3Bwb3NpdGU9IiMvL0FjdGl2aXR5RWRnZS90YXJnZXQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBY3Rpdml0eUVkZ2VzIHRoYXQgaGF2ZSB0aGUgQWN0aXZpdHlOb2RlIGFzIHRoZWlyIHRhcmdldC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib3V0Z29pbmciIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0FjdGl2aXR5RWRnZSIgZU9wcG9zaXRlPSIjLy9BY3Rpdml0eUVkZ2Uvc291cmNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQWN0aXZpdHlFZGdlcyB0aGF0IGhhdmUgdGhlIEFjdGl2aXR5Tm9kZSBhcyB0aGVpciBzb3VyY2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InJlZGVmaW5lZE5vZGUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0FjdGl2aXR5Tm9kZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFjdGl2aXR5Tm9kZXMgZnJvbSBhIGdlbmVyYWxpemF0aW9uIG9mIHRoZSBBY3Rpdml0eSBjb250YWluaW5pbmcgdGhpcyBBY3Rpdml0eU5vZGUgdGhhdCBhcmUgcmVkZWZpbmVkIGJ5IHRoaXMgQWN0aXZpdHlOb2RlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vUmVkZWZpbmFibGVFbGVtZW50L3JlZGVmaW5lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImluUGFydGl0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9BY3Rpdml0eVBhcnRpdGlvbiIgZU9wcG9zaXRlPSIjLy9BY3Rpdml0eVBhcnRpdGlvbi9ub2RlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQWN0aXZpdHlQYXJ0aXRpb25zIGNvbnRhaW5pbmcgdGhlIEFjdGl2aXR5Tm9kZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0FjdGl2aXR5Tm9kZS9pbkdyb3VwIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJJbnRlcnJ1cHRpYmxlQWN0aXZpdHlSZWdpb24iIGVTdXBlclR5cGVzPSIjLy9BY3Rpdml0eUdyb3VwIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBJbnRlcnJ1cHRpYmxlQWN0aXZpdHlSZWdpb24gaXMgYW4gQWN0aXZpdHlHcm91cCB0aGF0IHN1cHBvcnRzIHRoZSB0ZXJtaW5hdGlvbiBvZiB0b2tlbnMgZmxvd2luZyBpbiB0aGUgcG9ydGlvbnMgb2YgYW4gYWN0aXZpdHkgd2l0aGluIGl0LiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpbnRlcnJ1cHRpbmdfZWRnZXMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpbnRlcnJ1cHRpbmdFZGdlLT5mb3JBbGwoZWRnZSB8ICYjeEQ7JiN4QTsgIG5vZGUtPmluY2x1ZGVzKGVkZ2Uuc291cmNlKSBhbmQgbm9kZS0+ZXhjbHVkZXMoZWRnZS50YXJnZXQpIGFuZCBlZGdlLnRhcmdldC5jb250YWluaW5nQWN0aXZpdHkoKSA9IGluQWN0aXZpdHkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGludGVycnVwdGluZ0VkZ2VzIG9mIGFuIEludGVycnVwdGlibGVBY3Rpdml0eVJlZ2lvbiBtdXN0IGhhdmUgdGhlaXIgc291cmNlIGluIHRoZSByZWdpb24gYW5kIHRoZWlyIHRhcmdldCBvdXRzaWRlIHRoZSByZWdpb24sIGJ1dCB3aXRoaW4gdGhlIHNhbWUgQWN0aXZpdHkgY29udGFpbmluZyB0aGUgcmVnaW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iaW50ZXJydXB0aW5nRWRnZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQWN0aXZpdHlFZGdlIiBlT3Bwb3NpdGU9IiMvL0FjdGl2aXR5RWRnZS9pbnRlcnJ1cHRzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIEFjdGl2aXR5RWRnZXMgbGVhdmluZyB0aGUgSW50ZXJydXB0aWJsZUFjdGl2aXR5UmVnaW9uIG9uIHdoaWNoIGEgdHJhdmVyc2luZyB0b2tlbiB3aWxsIHJlc3VsdCBpbiB0aGUgdGVybWluYXRpb24gb2Ygb3RoZXIgdG9rZW5zIGZsb3dpbmcgaW4gdGhlIEludGVycnVwdGlibGVBY3Rpdml0eVJlZ2lvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ibm9kZSIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vQWN0aXZpdHlOb2RlIiBlT3Bwb3NpdGU9IiMvL0FjdGl2aXR5Tm9kZS9pbkludGVycnVwdGlibGVSZWdpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBY3Rpdml0eU5vZGVzIGltbWVkaWF0ZWx5IGNvbnRhaW5lZCBpbiB0aGUgSW50ZXJydXB0aWJsZUFjdGl2aXR5UmVnaW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQWN0aXZpdHlHcm91cC9jb250YWluZWROb2RlIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTdHJ1Y3R1cmVkQWN0aXZpdHlOb2RlIiBlU3VwZXJUeXBlcz0iIy8vQWN0aW9uICMvL05hbWVzcGFjZSAjLy9BY3Rpdml0eUdyb3VwIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFN0cnVjdHVyZWRBY3Rpdml0eU5vZGUgaXMgYW4gQWN0aW9uIHRoYXQgaXMgYWxzbyBhbiBBY3Rpdml0eUdyb3VwIGFuZCB3aG9zZSBiZWhhdmlvciBpcyBzcGVjaWZpZWQgYnkgdGhlIEFjdGl2aXR5Tm9kZXMgYW5kIEFjdGl2aXR5RWRnZXMgaXQgc28gY29udGFpbnMuIFVubGlrZSBvdGhlciBraW5kcyBvZiBBY3Rpdml0eUdyb3VwLCBhIFN0cnVjdHVyZWRBY3Rpdml0eU5vZGUgb3ducyB0aGUgQWN0aXZpdHlOb2RlcyBhbmQgQWN0aXZpdHlFZGdlcyBpdCBjb250YWlucywgYW5kIHNvIGEgbm9kZSBvciBlZGdlIGNhbiBvbmx5IGJlIGRpcmVjdGx5IGNvbnRhaW5lZCBpbiBvbmUgU3RydWN0dXJlZEFjdGl2aXR5Tm9kZSwgdGhvdWdoIFN0cnVjdHVyZWRBY3Rpdml0eU5vZGVzIG1heSBiZSBuZXN0ZWQuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9ImR1cGxpY2F0ZXMiPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBuYW1lPSJhbGxBY3Rpb25zIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgICAgZVR5cGU9IiMvL0FjdGlvbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXR1cm5zIHRoaXMgU3RydWN0dXJlZEFjdGl2aXR5Tm9kZSBhbmQgYWxsIEFjdGlvbnMgY29udGFpbmVkIGluIGl0LiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vQWN0aW9uL2FsbEFjdGlvbnMiLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibm9kZS0+c2VsZWN0KG9jbElzS2luZE9mKEFjdGlvbikpLm9jbEFzVHlwZShBY3Rpb24pLmFsbEFjdGlvbnMoKS0+aW5jbHVkaW5nKHNlbGYpLT5hc1NldCgpIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9jb250ZW50cz4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgbmFtZT0iYWxsT3duZWROb2RlcyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICAgIGVUeXBlPSIjLy9BY3Rpdml0eU5vZGUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0dXJucyBhbGwgdGhlIEFjdGl2aXR5Tm9kZXMgY29udGFpbmVkIGRpcmVjdGx5IG9yIGluZGlyZWN0bHkgd2l0aGluIHRoaXMgU3RydWN0dXJlZEFjdGl2aXR5Tm9kZSwgaW4gYWRkaXRpb24gdG8gdGhlIFBpbnMgb2YgdGhlIFN0cnVjdHVyZWRBY3Rpdml0eU5vZGUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9BY3Rpb24vYWxsT3duZWROb2RlcyIvPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzZWxmLkFjdGlvbjo6YWxsT3duZWROb2RlcygpLT51bmlvbihub2RlKS0+dW5pb24obm9kZS0+c2VsZWN0KG9jbElzS2luZE9mKEFjdGlvbikpLm9jbEFzVHlwZShBY3Rpb24pLmFsbE93bmVkTm9kZXMoKSktPmFzU2V0KCkiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2NvbnRlbnRzPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBuYW1lPSJjb250YWluaW5nQWN0aXZpdHkiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgIGVUeXBlPSIjLy9BY3Rpdml0eSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgQWN0aXZpdHkgdGhhdCBkaXJlY3RseSBvciBpbmRpcmVjdGx5IGNvbnRhaW5zIHRoaXMgU3RydWN0dXJlZEFjdGl2aXR5Tm9kZSAoY29uc2lkZXJlZCBhcyBhbiBBY3Rpb24pLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vQWN0aXZpdHlHcm91cC8lZHVwbGljYXRlcyUvY29udGFpbmluZ0FjdGl2aXR5ICMvL0FjdGl2aXR5Tm9kZS8lZHVwbGljYXRlcyUvY29udGFpbmluZ0FjdGl2aXR5ICMvL0FjdGl2aXR5Q29udGVudC9jb250YWluaW5nQWN0aXZpdHkiLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ic2VsZi5BY3Rpb246OmNvbnRhaW5pbmdBY3Rpdml0eSgpIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9jb250ZW50cz4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iYWN0aXZpdHkiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iIy8vQWN0aXZpdHkiCisgICAgICAgICAgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIgZGVyaXZlZD0idHJ1ZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgQWN0aXZpdHkgaW1tZWRpYXRlbHkgY29udGFpbmluZyB0aGUgU3RydWN0dXJlZEFjdGl2aXR5Tm9kZSwgaWYgaXQgaXMgbm90IGNvbnRhaW5lZCBpbiBhbm90aGVyIFN0cnVjdHVyZWRBY3Rpdml0eU5vZGUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9BY3Rpdml0eUdyb3VwL2luQWN0aXZpdHkgIy8vQWN0aXZpdHlOb2RlL2FjdGl2aXR5Ii8+CisgICAgICA8L2NvbnRlbnRzPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJvdXRwdXRfcGluX2VkZ2VzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ib3V0cHV0Lm91dGdvaW5nLnRhcmdldC0+ZXhjbHVkZXNBbGwoYWxsT3duZWROb2RlcygpLWlucHV0KSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBvdXRnb2luZyBBY3Rpdml0eUVkZ2VzIG9mIHRoZSBPdXRwdXRQaW5zIG9mIGEgU3RydWN0dXJlZEFjdGl2aXR5Tm9kZSBtdXN0IGhhdmUgdGFyZ2V0cyB0aGF0IGFyZSBub3Qgd2l0aGluIHRoZSBTdHJ1Y3R1cmVkQWN0aXZpdHlOb2RlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZWRnZXMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJlZGdlPXNlbGYuc291cmNlTm9kZXMoKS5vdXRnb2luZy0+aW50ZXJzZWN0aW9uKHNlbGYuYWxsT3duZWROb2RlcygpLmluY29taW5nKS0+JiN4RDsmI3hBOyYjeDk7dW5pb24oc2VsZi50YXJnZXROb2RlcygpLmluY29taW5nLT5pbnRlcnNlY3Rpb24oc2VsZi5hbGxPd25lZE5vZGVzKCkub3V0Z29pbmcpKS0+YXNTZXQoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBlZGdlcyBvZiBhIFN0cnVjdHVyZWRBY3Rpdml0eU5vZGUgYXJlIGFsbCB0aGUgQWN0aXZpdHlFZGdlcyB3aXRoIHNvdXJjZSBhbmQgdGFyZ2V0IEFjdGl2aXR5Tm9kZXMgY29udGFpbmVkIGRpcmVjdGx5IG9yIGluZGlyZWN0bHkgd2l0aGluIHRoZSBTdHJ1Y3R1cmVkQWN0aXZpdHlOb2RlIGFuZCBhdCBsZWFzdCBvbmUgb2YgdGhlIHNvdXJjZSBvciB0YXJnZXQgbm90IGNvbnRhaW5lZCBpbiBhbnkgbW9yZSBkZWVwbHkgbmVzdGVkIFN0cnVjdHVyZWRBY3Rpdml0eU5vZGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpbnB1dF9waW5fZWRnZXMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpbnB1dC5pbmNvbWluZy5zb3VyY2UtPmV4Y2x1ZGVzQWxsKGFsbE93bmVkTm9kZXMoKS1vdXRwdXQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGluY29taW5nIEFjdGl2aXR5RWRnZXMgb2YgYW4gSW5wdXRQaW4gb2YgYSBTdHJ1Y3R1cmVkQWN0aXZpdHlOb2RlIG11c3QgaGF2ZSBzb3VyY2VzIHRoYXQgYXJlIG5vdCB3aXRoaW4gdGhlIFN0cnVjdHVyZWRBY3Rpdml0eU5vZGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzb3VyY2VOb2RlcyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQWN0aXZpdHlOb2RlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0dXJuIHRob3NlIEFjdGl2aXR5Tm9kZXMgY29udGFpbmVkIGltbWVkaWF0ZWx5IHdpdGhpbiB0aGUgU3RydWN0dXJlZEFjdGl2aXR5Tm9kZSB0aGF0IG1heSBhY3QgYXMgc291cmNlcyBvZiBlZGdlcyBvd25lZCBieSB0aGUgU3RydWN0dXJlZEFjdGl2aXR5Tm9kZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im5vZGUtPnVuaW9uKGlucHV0Lm9jbEFzVHlwZShBY3Rpdml0eU5vZGUpLT5hc1NldCgpKS0+JiN4RDsmI3hBOyAgdW5pb24obm9kZS0+c2VsZWN0KG9jbElzS2luZE9mKEFjdGlvbikpLm9jbEFzVHlwZShBY3Rpb24pLm91dHB1dCktPmFzU2V0KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InRhcmdldE5vZGVzIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9BY3Rpdml0eU5vZGUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXR1cm4gdGhvc2UgQWN0aXZpdHlOb2RlcyBjb250YWluZWQgaW1tZWRpYXRlbHkgd2l0aGluIHRoZSBTdHJ1Y3R1cmVkQWN0aXZpdHlOb2RlIHRoYXQgbWF5IGFjdCBhcyB0YXJnZXRzIG9mIGVkZ2VzIG93bmVkIGJ5IHRoZSBTdHJ1Y3R1cmVkQWN0aXZpdHlOb2RlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibm9kZS0+dW5pb24ob3V0cHV0Lm9jbEFzVHlwZShBY3Rpdml0eU5vZGUpLT5hc1NldCgpKS0+JiN4RDsmI3hBOyAgdW5pb24obm9kZS0+c2VsZWN0KG9jbElzS2luZE9mKEFjdGlvbikpLm9jbEFzVHlwZShBY3Rpb24pLmlucHV0KS0+YXNTZXQoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZWRnZSIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vQWN0aXZpdHlFZGdlIiBjb250YWlubWVudD0idHJ1ZSIgZU9wcG9zaXRlPSIjLy9BY3Rpdml0eUVkZ2UvaW5TdHJ1Y3R1cmVkTm9kZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBBY3Rpdml0eUVkZ2VzIGltbWVkaWF0ZWx5IGNvbnRhaW5lZCBpbiB0aGUgU3RydWN0dXJlZEFjdGl2aXR5Tm9kZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0FjdGl2aXR5R3JvdXAvY29udGFpbmVkRWRnZSAjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ibXVzdElzb2xhdGUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iZmFsc2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiB0cnVlLCB0aGVuIGFueSBvYmplY3QgdXNlZCBieSBhbiBBY3Rpb24gd2l0aGluIHRoZSBTdHJ1Y3R1cmVkQWN0aXZpdHlOb2RlIGNhbm5vdCBiZSBhY2Nlc3NlZCBieSBhbnkgQWN0aW9uIG91dHNpZGUgdGhlIG5vZGUgdW50aWwgdGhlIFN0cnVjdHVyZWRBY3Rpdml0eU5vZGUgYXMgYSB3aG9sZSBjb21wbGV0ZXMuIEFueSBjb25jdXJyZW50IEFjdGlvbnMgdGhhdCB3b3VsZCByZXN1bHQgaW4gYWNjZXNzaW5nIHN1Y2ggb2JqZWN0cyBhcmUgcmVxdWlyZWQgdG8gaGF2ZSB0aGVpciBleGVjdXRpb24gZGVmZXJyZWQgdW50aWwgdGhlIGNvbXBsZXRpb24gb2YgdGhlIFN0cnVjdHVyZWRBY3Rpdml0eU5vZGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InN0cnVjdHVyZWROb2RlSW5wdXQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0lucHV0UGluIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBJbnB1dFBpbnMgb3duZWQgYnkgdGhlIFN0cnVjdHVyZWRBY3Rpdml0eU5vZGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9BY3Rpb24vaW5wdXQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InN0cnVjdHVyZWROb2RlT3V0cHV0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9PdXRwdXRQaW4iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIE91dHB1dFBpbnMgb3duZWQgYnkgdGhlIFN0cnVjdHVyZWRBY3Rpdml0eU5vZGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9BY3Rpb24vb3V0cHV0Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJ2YXJpYWJsZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vVmFyaWFibGUiIGNvbnRhaW5tZW50PSJ0cnVlIiBlT3Bwb3NpdGU9IiMvL1ZhcmlhYmxlL3Njb3BlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFZhcmlhYmxlcyBkZWZpbmVkIGluIHRoZSBzY29wZSBvZiB0aGUgU3RydWN0dXJlZEFjdGl2aXR5Tm9kZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVzcGFjZS9vd25lZE1lbWJlciIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ibm9kZSIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vQWN0aXZpdHlOb2RlIiBjb250YWlubWVudD0idHJ1ZSIgZU9wcG9zaXRlPSIjLy9BY3Rpdml0eU5vZGUvaW5TdHJ1Y3R1cmVkTm9kZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBBY3Rpdml0eU5vZGVzIGltbWVkaWF0ZWx5IGNvbnRhaW5lZCBpbiB0aGUgU3RydWN0dXJlZEFjdGl2aXR5Tm9kZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0FjdGl2aXR5R3JvdXAvY29udGFpbmVkTm9kZSAjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQWN0aW9uIiBhYnN0cmFjdD0idHJ1ZSIgZVN1cGVyVHlwZXM9IiMvL0V4ZWN1dGFibGVOb2RlIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBBY3Rpb24gaXMgdGhlIGZ1bmRhbWVudGFsIHVuaXQgb2YgZXhlY3V0YWJsZSBmdW5jdGlvbmFsaXR5LiBUaGUgZXhlY3V0aW9uIG9mIGFuIEFjdGlvbiByZXByZXNlbnRzIHNvbWUgdHJhbnNmb3JtYXRpb24gb3IgcHJvY2Vzc2luZyBpbiB0aGUgbW9kZWxlZCBzeXN0ZW0uIEFjdGlvbnMgcHJvdmlkZSB0aGUgRXhlY3V0YWJsZU5vZGVzIHdpdGhpbiBBY3Rpdml0aWVzIGFuZCBtYXkgYWxzbyBiZSB1c2VkIHdpdGhpbiBJbnRlcmFjdGlvbnMuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldENvbnRleHQiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iIy8vQ2xhc3NpZmllciI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBkZXJpdmF0aW9uIGZvciB0aGUgY29udGV4dCBwcm9wZXJ0eS4iLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9Im9yaWdpbmFsTmFtZSIgdmFsdWU9ImNvbnRleHQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImxldCBiZWhhdmlvcjogQmVoYXZpb3IgPSBzZWxmLmNvbnRhaW5pbmdCZWhhdmlvcigpIGluJiN4RDsmI3hBO2lmIGJlaGF2aW9yPW51bGwgdGhlbiBudWxsJiN4RDsmI3hBO2Vsc2UgaWYgYmVoYXZpb3IuXydjb250ZXh0JyA9IG51bGwgdGhlbiBiZWhhdmlvciYjeEQ7JiN4QTtlbHNlIGJlaGF2aW9yLl8nY29udGV4dCcmI3hEOyYjeEE7ZW5kaWYmI3hEOyYjeEE7ZW5kaWYiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImFsbEFjdGlvbnMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0FjdGlvbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHVybiB0aGlzIEFjdGlvbiBhbmQgYWxsIEFjdGlvbnMgY29udGFpbmVkIGRpcmVjdGx5IG9yIGluZGlyZWN0bHkgaW4gaXQuIEJ5IGRlZmF1bHQgb25seSB0aGUgQWN0aW9uIGl0c2VsZiBpcyByZXR1cm5lZCwgYnV0IHRoZSBvcGVyYXRpb24gaXMgb3ZlcnJpZGRlbiBmb3IgU3RydWN0dXJlZEFjdGl2aXR5Tm9kZXMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzZWxmLT5hc1NldCgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJhbGxPd25lZE5vZGVzIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9BY3Rpdml0eU5vZGUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXR1cm5zIGFsbCB0aGUgQWN0aXZpdHlOb2RlcyBkaXJlY3RseSBvciBpbmRpcmVjdGx5IG93bmVkIGJ5IHRoaXMgQWN0aW9uLiBUaGlzIGluY2x1ZGVzIGF0IGxlYXN0IGFsbCB0aGUgUGlucyBvZiB0aGUgQWN0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaW5wdXQub2NsQXNUeXBlKFBpbiktPmFzU2V0KCktPnVuaW9uKG91dHB1dC0+YXNTZXQoKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImNvbnRhaW5pbmdCZWhhdmlvciIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSIjLy9CZWhhdmlvciI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaWYgaW5TdHJ1Y3R1cmVkTm9kZSZsdDs+bnVsbCB0aGVuIGluU3RydWN0dXJlZE5vZGUuY29udGFpbmluZ0JlaGF2aW9yKCkgJiN4RDsmI3hBO2Vsc2UgaWYgYWN0aXZpdHkmbHQ7Pm51bGwgdGhlbiBhY3Rpdml0eSYjeEQ7JiN4QTtlbHNlIGludGVyYWN0aW9uICYjeEQ7JiN4QTtlbmRpZiYjeEQ7JiN4QTtlbmRpZiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iY29udGV4dCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9DbGFzc2lmaWVyIiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIKKyAgICAgICAgZGVyaXZlZD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjb250ZXh0IENsYXNzaWZpZXIgb2YgdGhlIEJlaGF2aW9yIHRoYXQgY29udGFpbnMgdGhpcyBBY3Rpb24sIG9yIHRoZSBCZWhhdmlvciBpdHNlbGYgaWYgaXQgaGFzIG5vIGNvbnRleHQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImlucHV0IiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL0lucHV0UGluIiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiIHRyYW5zaWVudD0idHJ1ZSIgZGVyaXZlZD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBvcmRlcmVkIHNldCBvZiBJbnB1dFBpbnMgcmVwcmVzZW50aW5nIHRoZSBpbnB1dHMgdG8gdGhlIEFjdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InVuaW9uIi8+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImlzTG9jYWxseVJlZW50cmFudCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSJmYWxzZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIHRydWUsIHRoZSBBY3Rpb24gY2FuIGJlZ2luIGEgbmV3LCBjb25jdXJyZW50IGV4ZWN1dGlvbiwgZXZlbiBpZiB0aGVyZSBpcyBhbHJlYWR5IGFub3RoZXIgZXhlY3V0aW9uIG9mIHRoZSBBY3Rpb24gb25nb2luZy4gSWYgZmFsc2UsIHRoZSBBY3Rpb24gY2Fubm90IGJlZ2luIGEgbmV3IGV4ZWN1dGlvbiB1bnRpbCBhbnkgcHJldmlvdXMgZXhlY3V0aW9uIGhhcyBjb21wbGV0ZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImxvY2FsUG9zdGNvbmRpdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQ29uc3RyYWludCIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIENvbnN0cmFpbnQgdGhhdCBtdXN0IGJlIHNhdGlzZmllZCB3aGVuIGV4ZWN1dGlvbiBvZiB0aGUgQWN0aW9uIGlzIGNvbXBsZXRlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJsb2NhbFByZWNvbmRpdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQ29uc3RyYWludCIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIENvbnN0cmFpbnQgdGhhdCBtdXN0IGJlIHNhdGlzZmllZCB3aGVuIGV4ZWN1dGlvbiBvZiB0aGUgQWN0aW9uIGlzIHN0YXJ0ZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib3V0cHV0IiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL091dHB1dFBpbiIgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiIGRlcml2ZWQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgb3JkZXJlZCBzZXQgb2YgT3V0cHV0UGlucyByZXByZXNlbnRpbmcgb3V0cHV0cyBmcm9tIHRoZSBBY3Rpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJ1bmlvbiIvPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFeGVjdXRhYmxlTm9kZSIgYWJzdHJhY3Q9InRydWUiIGVTdXBlclR5cGVzPSIjLy9BY3Rpdml0eU5vZGUiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIEV4ZWN1dGFibGVOb2RlIGlzIGFuIGFic3RyYWN0IGNsYXNzIGZvciBBY3Rpdml0eU5vZGVzIHdob3NlIGV4ZWN1dGlvbiBtYXkgYmUgY29udHJvbGxlZCB1c2luZyBDb250cm9sRmxvd3MgYW5kIHRvIHdoaWNoIEV4Y2VwdGlvbkhhbmRsZXJzIG1heSBiZSBhdHRhY2hlZC4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iaGFuZGxlciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vRXhjZXB0aW9uSGFuZGxlciIgY29udGFpbm1lbnQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vRXhjZXB0aW9uSGFuZGxlci9wcm90ZWN0ZWROb2RlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBzZXQgb2YgRXhjZXB0aW9uSGFuZGxlcnMgdGhhdCBhcmUgZXhhbWluZWQgaWYgYW4gZXhjZXB0aW9uIHByb3BhZ2F0ZXMgb3V0IG9mIHRoZSBFeGNlcHRpb25Ob2RlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkV4Y2VwdGlvbkhhbmRsZXIiIGVTdXBlclR5cGVzPSIjLy9FbGVtZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBFeGNlcHRpb25IYW5kbGVyIGlzIGFuIEVsZW1lbnQgdGhhdCBzcGVjaWZpZXMgYSBoYW5kbGVyQm9keSBFeGVjdXRhYmxlTm9kZSB0byBleGVjdXRlIGluIGNhc2UgdGhlIHNwZWNpZmllZCBleGNlcHRpb24gb2NjdXJzIGR1cmluZyB0aGUgZXhlY3V0aW9uIG9mIHRoZSBwcm90ZWN0ZWQgRXhlY3V0YWJsZU5vZGUuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImhhbmRsZXJfYm9keV9lZGdlcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImhhbmRsZXJCb2R5LmluY29taW5nLT5pc0VtcHR5KCkgYW5kIGhhbmRsZXJCb2R5Lm91dGdvaW5nLT5pc0VtcHR5KCkgYW5kIGV4Y2VwdGlvbklucHV0LmluY29taW5nLT5pc0VtcHR5KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgaGFuZGxlckJvZHkgaGFzIG5vIGluY29taW5nIG9yIG91dGdvaW5nIEFjdGl2aXR5RWRnZXMgYW5kIHRoZSBleGNlcHRpb25JbnB1dCBoYXMgbm8gaW5jb21pbmcgQWN0aXZpdHlFZGdlcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im91dHB1dF9waW5zIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iKHByb3RlY3RlZE5vZGUub2NsSXNLaW5kT2YoQWN0aW9uKSBhbmQgcHJvdGVjdGVkTm9kZS5vY2xBc1R5cGUoQWN0aW9uKS5vdXRwdXQtPm5vdEVtcHR5KCkpIGltcGxpZXMmI3hEOyYjeEE7KCYjeEQ7JiN4QTsgIGhhbmRsZXJCb2R5Lm9jbElzS2luZE9mKEFjdGlvbikgYW5kICYjeEQ7JiN4QTsgIGxldCBwcm90ZWN0ZWROb2RlT3V0cHV0IDogT3JkZXJlZFNldChPdXRwdXRQaW4pID0gcHJvdGVjdGVkTm9kZS5vY2xBc1R5cGUoQWN0aW9uKS5vdXRwdXQsJiN4RDsmI3hBOyAgICAgICAgaGFuZGxlckJvZHlPdXRwdXQgOiBPcmRlcmVkU2V0KE91dHB1dFBpbikgPSAgaGFuZGxlckJvZHkub2NsQXNUeXBlKEFjdGlvbikub3V0cHV0IGluJiN4RDsmI3hBOyAgICBwcm90ZWN0ZWROb2RlT3V0cHV0LT5zaXplKCkgPSBoYW5kbGVyQm9keU91dHB1dC0+c2l6ZSgpIGFuZCYjeEQ7JiN4QTsgICAgU2VxdWVuY2V7MS4ucHJvdGVjdGVkTm9kZU91dHB1dC0+c2l6ZSgpfS0+Zm9yQWxsKGkgfCYjeEQ7JiN4QTsgICAgJiN4OTtoYW5kbGVyQm9keU91dHB1dC0+YXQoaSkudHlwZS5jb25mb3Jtc1RvKHByb3RlY3RlZE5vZGVPdXRwdXQtPmF0KGkpLnR5cGUpIGFuZCYjeEQ7JiN4QTsgICAgJiN4OTtoYW5kbGVyQm9keU91dHB1dC0+YXQoaSkuaXNPcmRlcmVkPXByb3RlY3RlZE5vZGVPdXRwdXQtPmF0KGkpLmlzT3JkZXJlZCBhbmQmI3hEOyYjeEE7ICAgICYjeDk7aGFuZGxlckJvZHlPdXRwdXQtPmF0KGkpLmNvbXBhdGlibGVXaXRoKHByb3RlY3RlZE5vZGVPdXRwdXQtPmF0KGkpKSkmI3hEOyYjeEE7KSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIHRoZSBwcm90ZWN0ZWROb2RlIGlzIGFuIEFjdGlvbiB3aXRoIE91dHB1dFBpbnMsIHRoZW4gdGhlIGhhbmRsZXJCb2R5IG11c3QgYWxzbyBiZSBhbiBBY3Rpb24gd2l0aCB0aGUgc2FtZSBudW1iZXIgb2YgT3V0cHV0UGlucywgd2hpY2ggYXJlIGNvbXBhdGlibGUgaW4gdHlwZSwgb3JkZXJpbmcsIGFuZCBtdWx0aXBsaWNpdHkgdG8gdGhvc2Ugb2YgdGhlIHByb3RlY3RlZE5vZGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJvbmVfaW5wdXQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJoYW5kbGVyQm9keS5vY2xJc0tpbmRPZihBY3Rpb24pIGFuZCYjeEQ7JiN4QTtsZXQgaW5wdXRzOiBPcmRlcmVkU2V0KElucHV0UGluKSA9IGhhbmRsZXJCb2R5Lm9jbEFzVHlwZShBY3Rpb24pLmlucHV0IGluJiN4RDsmI3hBO2lucHV0cy0+c2l6ZSgpPTEgYW5kIGlucHV0cy0+Zmlyc3QoKT1leGNlcHRpb25JbnB1dCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBoYW5kbGVyQm9keSBpcyBhbiBBY3Rpb24gd2l0aCBvbmUgSW5wdXRQaW4sIGFuZCB0aGF0IElucHV0UGluIGlzIHRoZSBzYW1lIGFzIHRoZSBleGNlcHRpb25JbnB1dC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImVkZ2Vfc291cmNlX3RhcmdldCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImxldCBub2RlczpTZXQoQWN0aXZpdHlOb2RlKSA9IGhhbmRsZXJCb2R5Lm9jbEFzVHlwZShBY3Rpb24pLmFsbE93bmVkTm9kZXMoKSBpbiYjeEQ7JiN4QTtub2Rlcy5vdXRnb2luZy0+Zm9yQWxsKG5vZGVzLT5pbmNsdWRlcyh0YXJnZXQpKSBhbmQmI3hEOyYjeEE7bm9kZXMuaW5jb21pbmctPmZvckFsbChub2Rlcy0+aW5jbHVkZXMoc291cmNlKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBBY3Rpdml0eUVkZ2UgdGhhdCBoYXMgYSBzb3VyY2Ugd2l0aGluIHRoZSBoYW5kbGVyQm9keSBvZiBhbiBFeGNlcHRpb25IYW5kbGVyIG11c3QgaGF2ZSBpdHMgdGFyZ2V0IGluIHRoZSBoYW5kbGVyQm9keSBhbHNvLCBhbmQgdmljZSB2ZXJzYS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImhhbmRsZXJfYm9keV9vd25lciIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImhhbmRsZXJCb2R5Lm93bmVyPXByb3RlY3RlZE5vZGUub3duZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgaGFuZGxlckJvZHkgbXVzdCBoYXZlIHRoZSBzYW1lIG93bmVyIGFzIHRoZSBwcm90ZWN0ZWROb2RlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZXhjZXB0aW9uX2lucHV0X3R5cGUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJleGNlcHRpb25JbnB1dC50eXBlPW51bGwgb3IgJiN4RDsmI3hBO2V4Y2VwdGlvblR5cGUtPmZvckFsbChjb25mb3Jtc1RvKGV4Y2VwdGlvbklucHV0LnR5cGUub2NsQXNUeXBlKENsYXNzaWZpZXIpKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgZXhjZXB0aW9uSW5wdXQgbXVzdCBlaXRoZXIgaGF2ZSBubyB0eXBlIG9yIGV2ZXJ5IGV4Y2VwdGlvblR5cGUgbXVzdCBjb25mb3JtIHRvIHRoZSBleGNlcHRpb25JbnB1dCB0eXBlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZXhjZXB0aW9uSW5wdXQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vT2JqZWN0Tm9kZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIE9iamVjdE5vZGUgd2l0aGluIHRoZSBoYW5kbGVyQm9keS4gV2hlbiB0aGUgRXhjZXB0aW9uSGFuZGxlciBjYXRjaGVzIGFuIGV4Y2VwdGlvbiwgdGhlIGV4Y2VwdGlvbiB0b2tlbiBpcyBwbGFjZWQgb24gdGhpcyBPYmplY3ROb2RlLCBjYXVzaW5nIHRoZSBoYW5kbGVyQm9keSB0byBleGVjdXRlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJleGNlcHRpb25UeXBlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9DbGFzc2lmaWVyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIENsYXNzaWZpZXJzIHdob3NlIGluc3RhbmNlcyB0aGUgRXhjZXB0aW9uSGFuZGxlciBjYXRjaGVzIGFzIGV4Y2VwdGlvbnMuIElmIGFuIGV4Y2VwdGlvbiBvY2N1cnMgd2hvc2UgdHlwZSBpcyBhbnkgZXhjZXB0aW9uVHlwZSwgdGhlIEV4Y2VwdGlvbkhhbmRsZXIgY2F0Y2hlcyB0aGUgZXhjZXB0aW9uIGFuZCBleGVjdXRlcyB0aGUgaGFuZGxlckJvZHkuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImhhbmRsZXJCb2R5IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0V4ZWN1dGFibGVOb2RlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gRXhlY3V0YWJsZU5vZGUgdGhhdCBpcyBleGVjdXRlZCBpZiB0aGUgRXhjZXB0aW9uSGFuZGxlciBjYXRjaGVzIGFuIGV4Y2VwdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icHJvdGVjdGVkTm9kZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9FeGVjdXRhYmxlTm9kZSIgZU9wcG9zaXRlPSIjLy9FeGVjdXRhYmxlTm9kZS9oYW5kbGVyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIEV4ZWN1dGFibGVOb2RlIHByb3RlY3RlZCBieSB0aGUgRXhjZXB0aW9uSGFuZGxlci4gSWYgYW4gZXhjZXB0aW9uIHByb3BhZ2F0ZXMgb3V0IG9mIHRoZSBwcm90ZWN0ZWROb2RlIGFuZCBoYXMgYSB0eXBlIG1hdGNoaW5nIG9uZSBvZiB0aGUgZXhjZXB0aW9uVHlwZXMsIHRoZW4gaXQgaXMgY2F1Z2h0IGJ5IHRoaXMgRXhjZXB0aW9uSGFuZGxlci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9iamVjdE5vZGUiIGFic3RyYWN0PSJ0cnVlIiBlU3VwZXJUeXBlcz0iIy8vQWN0aXZpdHlOb2RlICMvL1R5cGVkRWxlbWVudCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gT2JqZWN0Tm9kZSBpcyBhbiBhYnN0cmFjdCBBY3Rpdml0eU5vZGUgdGhhdCBtYXkgaG9sZCB0b2tlbnMgd2l0aGluIHRoZSBvYmplY3QgZmxvdyBpbiBhbiBBY3Rpdml0eS4gT2JqZWN0Tm9kZXMgYWxzbyBzdXBwb3J0IHRva2VuIHNlbGVjdGlvbiwgbGltaXRhdGlvbiBvbiB0aGUgbnVtYmVyIG9mIHRva2VucyBoZWxkLCBzcGVjaWZpY2F0aW9uIG9mIHRoZSBzdGF0ZSByZXF1aXJlZCBmb3IgdG9rZW5zIGJlaW5nIGhlbGQsIGFuZCBjYXJyeWluZyBjb250cm9sIHZhbHVlcy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaW5wdXRfb3V0cHV0X3BhcmFtZXRlciIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InNlbGVjdGlvbiZsdDs+bnVsbCBpbXBsaWVzJiN4RDsmI3hBOyYjeDk7c2VsZWN0aW9uLmlucHV0UGFyYW1ldGVycygpLT5zaXplKCk9MSBhbmQmI3hEOyYjeEE7JiN4OTtzZWxlY3Rpb24uaW5wdXRQYXJhbWV0ZXJzKCktPmZvckFsbChwIHwgbm90IHAuaXNVbmlxdWUgYW5kIHAuaXMoMCwqKSBhbmQgc2VsZi50eXBlLmNvbmZvcm1zVG8ocC50eXBlKSkgYW5kJiN4RDsmI3hBOyYjeDk7c2VsZWN0aW9uLm91dHB1dFBhcmFtZXRlcnMoKS0+c2l6ZSgpPTEgYW5kJiN4RDsmI3hBOyYjeDk7JiN4OTtzZWxlY3Rpb24uaW5wdXRQYXJhbWV0ZXJzKCktPmZvckFsbChwIHwgc2VsZi50eXBlLmNvbmZvcm1zVG8ocC50eXBlKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIHNlbGVjdGlvbiBCZWhhdmlvciBoYXMgb25lIGlucHV0IFBhcmFtZXRlciBhbmQgb25lIG91dHB1dCBQYXJhbWV0ZXIuIFRoZSBpbnB1dCBQYXJhbWV0ZXIgbXVzdCBoYXZlIHRoZSBzYW1lIHR5cGUgYXMgIG9yIGEgc3VwZXJ0eXBlIG9mIHRoZSB0eXBlIG9mIE9iamVjdE5vZGUsIGJlIG5vbi11bmlxdWUsIGFuZCBoYXZlIG11bHRpcGxpY2l0eSAwLi4qLiBUaGUgb3V0cHV0IFBhcmFtZXRlciBtdXN0IGJlIHRoZSBzYW1lIG9yIGEgc3VidHlwZSBvZiB0aGUgdHlwZSBvZiBPYmplY3ROb2RlLiBUaGUgQmVoYXZpb3IgY2Fubm90IGhhdmUgc2lkZSBlZmZlY3RzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ic2VsZWN0aW9uX2JlaGF2aW9yIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iKHNlbGVjdGlvbiZsdDs+bnVsbCkgPSAob3JkZXJpbmc9T2JqZWN0Tm9kZU9yZGVyaW5nS2luZDo6b3JkZXJlZCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiBhbiBPYmplY3ROb2RlIGhhcyBhIHNlbGVjdGlvbiBCZWhhdmlvciwgdGhlbiB0aGUgb3JkZXJpbmcgb2YgdGhlIG9iamVjdCBub2RlIGlzIG9yZGVyZWQsIGFuZCB2aWNlIHZlcnNhLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ib2JqZWN0X2Zsb3dfZWRnZXMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIobm90IGlzQ29udHJvbFR5cGUpIGltcGxpZXMgaW5jb21pbmctPnVuaW9uKG91dGdvaW5nKS0+Zm9yQWxsKG9jbElzS2luZE9mKE9iamVjdEZsb3cpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIGlzQ29udHJvbFR5cGU9ZmFsc2UsIHRoZSBBY3Rpdml0eUVkZ2VzIGluY29taW5nIHRvIG9yIG91dGdvaW5nIGZyb20gYW4gT2JqZWN0Tm9kZSBtdXN0IGFsbCBiZSBPYmplY3RGbG93cy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImluU3RhdGUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1N0YXRlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFN0YXRlcyByZXF1aXJlZCB0byBiZSBhc3NvY2lhdGVkIHdpdGggdGhlIHZhbHVlcyBoZWxkIGJ5IHRva2VucyBvbiB0aGlzIE9iamVjdE5vZGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImlzQ29udHJvbFR5cGUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iZmFsc2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbmRpY2F0ZXMgd2hldGhlciB0aGUgdHlwZSBvZiB0aGUgT2JqZWN0Tm9kZSBpcyB0byBiZSB0cmVhdGVkIGFzIHJlcHJlc2VudGluZyBjb250cm9sIHZhbHVlcyB0aGF0IG1heSB0cmF2ZXJzZSBDb250cm9sRmxvd3MuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9Im9yZGVyaW5nIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL09iamVjdE5vZGVPcmRlcmluZ0tpbmQiIGRlZmF1bHRWYWx1ZUxpdGVyYWw9IkZJRk8iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbmRpY2F0ZXMgaG93IHRoZSB0b2tlbnMgaGVsZCBieSB0aGUgT2JqZWN0Tm9kZSBhcmUgb3JkZXJlZCBmb3Igc2VsZWN0aW9uIHRvIHRyYXZlcnNlIEFjdGl2aXR5RWRnZXMgb3V0Z29pbmcgZnJvbSB0aGUgT2JqZWN0Tm9kZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ic2VsZWN0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL0JlaGF2aW9yIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBCZWhhdmlvciB1c2VkIHRvIHNlbGVjdCB0b2tlbnMgdG8gYmUgb2ZmZXJlZCBvbiBvdXRnb2luZyBBY3Rpdml0eUVkZ2VzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJ1cHBlckJvdW5kIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL1ZhbHVlU3BlY2lmaWNhdGlvbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbWF4aW11bSBudW1iZXIgb2YgdG9rZW5zIHRoYXQgbWF5IGJlIGhlbGQgYnkgdGhpcyBPYmplY3ROb2RlLiBUb2tlbnMgY2Fubm90IGZsb3cgaW50byB0aGUgT2JqZWN0Tm9kZSBpZiB0aGUgdXBwZXJCb3VuZCBpcyByZWFjaGVkLiBJZiBubyB1cHBlckJvdW5kIGlzIHNwZWNpZmllZCwgdGhlbiB0aGVyZSBpcyBubyBsaW1pdCBvbiBob3cgbWFueSB0b2tlbnMgdGhlIE9iamVjdE5vZGUgY2FuIGhvbGQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVFbnVtIiBuYW1lPSJPYmplY3ROb2RlT3JkZXJpbmdLaW5kIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJPYmplY3ROb2RlT3JkZXJpbmdLaW5kIGlzIGFuIGVudW1lcmF0aW9uIGluZGljYXRpbmcgcXVldWluZyBvcmRlciBmb3Igb2ZmZXJpbmcgdGhlIHRva2VucyBoZWxkIGJ5IGFuIE9iamVjdE5vZGUuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVMaXRlcmFscyBuYW1lPSJ1bm9yZGVyZWQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbmRpY2F0ZXMgdGhhdCB0b2tlbnMgYXJlIHVub3JkZXJlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0ib3JkZXJlZCIgdmFsdWU9IjEiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbmRpY2F0ZXMgdGhhdCB0b2tlbnMgYXJlIG9yZGVyZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9IkxJRk8iIHZhbHVlPSIyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSW5kaWNhdGVzIHRoYXQgdG9rZW5zIGFyZSBxdWV1ZWQgaW4gYSBsYXN0IGluLCBmaXJzdCBvdXQgbWFubmVyLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lTGl0ZXJhbHM+CisgICAgPGVMaXRlcmFscyBuYW1lPSJGSUZPIiB2YWx1ZT0iMyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkluZGljYXRlcyB0aGF0IHRva2VucyBhcmUgcXVldWVkIGluIGEgZmlyc3QgaW4sIGZpcnN0IG91dCBtYW5uZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSW5wdXRQaW4iIGVTdXBlclR5cGVzPSIjLy9QaW4iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIElucHV0UGluIGlzIGEgUGluIHRoYXQgaG9sZHMgaW5wdXQgdmFsdWVzIHRvIGJlIGNvbnN1bWVkIGJ5IGFuIEFjdGlvbi4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ib3V0Z29pbmdfZWRnZXNfc3RydWN0dXJlZF9vbmx5IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ib3V0Z29pbmctPm5vdEVtcHR5KCkgaW1wbGllcyYjeEQ7JiN4QTsmI3g5O2FjdGlvbiZsdDs+bnVsbCBhbmQmI3hEOyYjeEE7JiN4OTthY3Rpb24ub2NsSXNLaW5kT2YoU3RydWN0dXJlZEFjdGl2aXR5Tm9kZSkgYW5kJiN4RDsmI3hBOyYjeDk7YWN0aW9uLm9jbEFzVHlwZShTdHJ1Y3R1cmVkQWN0aXZpdHlOb2RlKS5hbGxPd25lZE5vZGVzKCktPmluY2x1ZGVzQWxsKG91dGdvaW5nLnRhcmdldCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBJbnB1dFBpbiBtYXkgaGF2ZSBvdXRnb2luZyBBY3Rpdml0eUVkZ2VzIG9ubHkgd2hlbiBpdCBpcyBvd25lZCBieSBhIFN0cnVjdHVyZWRBY3Rpdml0eU5vZGUsIGFuZCB0aGVzZSBlZGdlcyBtdXN0IHRhcmdldCBhIG5vZGUgY29udGFpbmVkIChkaXJlY3RseSBvciBpbmRpcmVjdGx5KSBpbiB0aGUgb3duaW5nIFN0cnVjdHVyZWRBY3Rpdml0eU5vZGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJQaW4iIGFic3RyYWN0PSJ0cnVlIiBlU3VwZXJUeXBlcz0iIy8vT2JqZWN0Tm9kZSAjLy9NdWx0aXBsaWNpdHlFbGVtZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFBpbiBpcyBhbiBPYmplY3ROb2RlIGFuZCBNdWx0aXBsaWNpdHlFbGVtZW50IHRoYXQgcHJvdmlkZXMgaW5wdXQgdmFsdWVzIHRvIGFuIEFjdGlvbiBvciBhY2NlcHRzIG91dHB1dCB2YWx1ZXMgZnJvbSBhbiBBY3Rpb24uIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImNvbnRyb2xfcGlucyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlzQ29udHJvbCBpbXBsaWVzIGlzQ29udHJvbFR5cGUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIGNvbnRyb2wgUGluIGhhcyBhIGNvbnRyb2wgdHlwZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im5vdF91bmlxdWUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJub3QgaXNVbmlxdWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJQaW4gbXVsdGlwbGljaXR5IGlzIG5vdCB1bmlxdWUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpc0NvbnRyb2wiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iZmFsc2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbmRpY2F0ZXMgd2hldGhlciB0aGUgUGluIHByb3ZpZGVzIGRhdGEgdG8gdGhlIEFjdGlvbiBvciBqdXN0IGNvbnRyb2xzIGhvdyB0aGUgQWN0aW9uIGV4ZWN1dGVzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPdXRwdXRQaW4iIGVTdXBlclR5cGVzPSIjLy9QaW4iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIE91dHB1dFBpbiBpcyBhIFBpbiB0aGF0IGhvbGRzIG91dHB1dCB2YWx1ZXMgcHJvZHVjZWQgYnkgYW4gQWN0aW9uLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpbmNvbWluZ19lZGdlc19zdHJ1Y3R1cmVkX29ubHkiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpbmNvbWluZy0+bm90RW1wdHkoKSBpbXBsaWVzJiN4RDsmI3hBOyYjeDk7YWN0aW9uJmx0Oz5udWxsIGFuZCYjeEQ7JiN4QTsmI3g5O2FjdGlvbi5vY2xJc0tpbmRPZihTdHJ1Y3R1cmVkQWN0aXZpdHlOb2RlKSBhbmQmI3hEOyYjeEE7JiN4OTthY3Rpb24ub2NsQXNUeXBlKFN0cnVjdHVyZWRBY3Rpdml0eU5vZGUpLmFsbE93bmVkTm9kZXMoKS0+aW5jbHVkZXNBbGwoaW5jb21pbmcuc291cmNlKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIE91dHB1dFBpbiBtYXkgaGF2ZSBpbmNvbWluZyBBY3Rpdml0eUVkZ2VzIG9ubHkgd2hlbiBpdCBpcyBvd25lZCBieSBhIFN0cnVjdHVyZWRBY3Rpdml0eU5vZGUsIGFuZCB0aGVzZSBlZGdlcyBtdXN0IGhhdmUgc291cmNlcyBjb250YWluZWQgKGRpcmVjdGx5IG9yIGluZGlyZWN0bHkpIGluIHRoZSBvd25pbmcgU3RydWN0dXJlZEFjdGl2aXR5Tm9kZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlZhcmlhYmxlIiBlU3VwZXJUeXBlcz0iIy8vQ29ubmVjdGFibGVFbGVtZW50ICMvL011bHRpcGxpY2l0eUVsZW1lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgVmFyaWFibGUgaXMgYSBDb25uZWN0YWJsZUVsZW1lbnQgdGhhdCBtYXkgc3RvcmUgdmFsdWVzIGR1cmluZyB0aGUgZXhlY3V0aW9uIG9mIGFuIEFjdGl2aXR5LiBSZWFkaW5nIGFuZCB3cml0aW5nIHRoZSB2YWx1ZXMgb2YgYSBWYXJpYWJsZSBwcm92aWRlcyBhbiBhbHRlcm5hdGl2ZSBtZWFucyBmb3IgcGFzc2luZyBkYXRhIHRoYW4gdGhlIHVzZSBvZiBPYmplY3RGbG93cy4gQSBWYXJpYWJsZSBtYXkgYmUgb3duZWQgZGlyZWN0bHkgYnkgYW4gQWN0aXZpdHksIGluIHdoaWNoIGNhc2UgaXQgaXMgYWNjZXNzaWJsZSBmcm9tIGFueXdoZXJlIHdpdGhpbiB0aGF0IGFjdGl2aXR5LCBvciBpdCBtYXkgYmUgb3duZWQgYnkgYSBTdHJ1Y3R1cmVkQWN0aXZpdHlOb2RlLCBpbiB3aGljaCBjYXNlIGl0IGlzIG9ubHkgYWNjZXNzaWJsZSB3aXRoaW4gdGhhdCBub2RlLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc0FjY2Vzc2libGVCeSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBWYXJpYWJsZSBpcyBhY2Nlc3NpYmxlIGJ5IEFjdGlvbnMgd2l0aGluIGl0cyBzY29wZSAodGhlIEFjdGl2aXR5IG9yIFN0cnVjdHVyZWRBY3Rpdml0eU5vZGUgdGhhdCBvd25zIGl0KS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlmIHNjb3BlJmx0Oz5udWxsIHRoZW4gc2NvcGUuYWxsT3duZWROb2RlcygpLT5pbmNsdWRlcyhhKSYjeEQ7JiN4QTtlbHNlIGEuY29udGFpbmluZ0FjdGl2aXR5KCk9YWN0aXZpdHlTY29wZSYjeEQ7JiN4QTtlbmRpZiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iYSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9BY3Rpb24iLz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJhY3Rpdml0eVNjb3BlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL0FjdGl2aXR5IiBlT3Bwb3NpdGU9IiMvL0FjdGl2aXR5L3ZhcmlhYmxlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gQWN0aXZpdHkgdGhhdCBvd25zIHRoZSBWYXJpYWJsZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVkRWxlbWVudC9uYW1lc3BhY2UiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InNjb3BlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL1N0cnVjdHVyZWRBY3Rpdml0eU5vZGUiIGVPcHBvc2l0ZT0iIy8vU3RydWN0dXJlZEFjdGl2aXR5Tm9kZS92YXJpYWJsZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgU3RydWN0dXJlZEFjdGl2aXR5Tm9kZSB0aGF0IG93bnMgdGhlIFZhcmlhYmxlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vTmFtZWRFbGVtZW50L25hbWVzcGFjZSIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iVmFsdWVTcGVjaWZpY2F0aW9uQWN0aW9uIiBlU3VwZXJUeXBlcz0iIy8vQWN0aW9uIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFZhbHVlU3BlY2lmaWNhdGlvbkFjdGlvbiBpcyBhbiBBY3Rpb24gdGhhdCBldmFsdWF0ZXMgYSBWYWx1ZVNwZWNpZmljYXRpb24gYW5kIHByb3ZpZGVzIGEgcmVzdWx0LiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJtdWx0aXBsaWNpdHkiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJyZXN1bHQuaXMoMSwxKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBtdWx0aXBsaWNpdHkgb2YgdGhlIHJlc3VsdCBPdXRwdXRQaW4gaXMgMS4uMSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY29tcGF0aWJsZV90eXBlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0idmFsdWUudHlwZS5jb25mb3Jtc1RvKHJlc3VsdC50eXBlKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB0eXBlIG9mIHRoZSB2YWx1ZSBWYWx1ZVNwZWNpZmljYXRpb24gbXVzdCBjb25mb3JtIHRvIHRoZSB0eXBlIG9mIHRoZSByZXN1bHQgT3V0cHV0UGluLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVzdWx0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL091dHB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgT3V0cHV0UGluIG9uIHdoaWNoIHRoZSByZXN1bHQgdmFsdWUgaXMgcGxhY2VkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQWN0aW9uL291dHB1dCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0idmFsdWUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vVmFsdWVTcGVjaWZpY2F0aW9uIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBWYWx1ZVNwZWNpZmljYXRpb24gdG8gYmUgZXZhbHVhdGVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlZhcmlhYmxlQWN0aW9uIiBhYnN0cmFjdD0idHJ1ZSIgZVN1cGVyVHlwZXM9IiMvL0FjdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVmFyaWFibGVBY3Rpb24gaXMgYW4gYWJzdHJhY3QgY2xhc3MgZm9yIEFjdGlvbnMgdGhhdCBvcGVyYXRlIG9uIGEgc3BlY2lmaWVkIFZhcmlhYmxlLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzY29wZV9vZl92YXJpYWJsZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InZhcmlhYmxlLmlzQWNjZXNzaWJsZUJ5KHNlbGYpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFZhcmlhYmxlQWN0aW9uIG11c3QgYmUgaW4gdGhlIHNjb3BlIG9mIHRoZSB2YXJpYWJsZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InZhcmlhYmxlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1ZhcmlhYmxlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFZhcmlhYmxlIHRvIGJlIHJlYWQgb3Igd3JpdHRlbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iV3JpdGVMaW5rQWN0aW9uIiBhYnN0cmFjdD0idHJ1ZSIgZVN1cGVyVHlwZXM9IiMvL0xpbmtBY3Rpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IldyaXRlTGlua0FjdGlvbiBpcyBhbiBhYnN0cmFjdCBjbGFzcyBmb3IgTGlua0FjdGlvbnMgdGhhdCBjcmVhdGUgYW5kIGRlc3Ryb3kgbGlua3MuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImFsbG93X2FjY2VzcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImVuZERhdGEuZW5kLT5leGlzdHMoZW5kIHwmI3hEOyYjeEE7ICBlbmQudHlwZT1fJ2NvbnRleHQnIG9yJiN4RDsmI3hBOyAgZW5kLnZpc2liaWxpdHk9VmlzaWJpbGl0eUtpbmQ6OnB1YmxpYyBvciAmI3hEOyYjeEE7ICBlbmQudmlzaWJpbGl0eT1WaXNpYmlsaXR5S2luZDo6cHJvdGVjdGVkIGFuZCYjeEQ7JiN4QTsgIGVuZERhdGEuZW5kLT5leGlzdHMob3RoZXIgfCAmI3hEOyYjeEE7ICAgIG90aGVyJmx0Oz5lbmQgYW5kIF8nY29udGV4dCcuY29uZm9ybXNUbyhvdGhlci50eXBlLm9jbEFzVHlwZShDbGFzc2lmaWVyKSkpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB2aXNpYmlsaXR5IG9mIGF0IGxlYXN0IG9uZSBlbmQgbXVzdCBhbGxvdyBhY2Nlc3MgZnJvbSB0aGUgY29udGV4dCBDbGFzc2lmaWVyIG9mIHRoZSBXcml0ZUxpbmtBY3Rpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJMaW5rQWN0aW9uIiBhYnN0cmFjdD0idHJ1ZSIgZVN1cGVyVHlwZXM9IiMvL0FjdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iTGlua0FjdGlvbiBpcyBhbiBhYnN0cmFjdCBjbGFzcyBmb3IgYWxsIEFjdGlvbnMgdGhhdCBpZGVudGlmeSB0aGUgbGlua3MgdG8gYmUgYWN0ZWQgb24gdXNpbmcgTGlua0VuZERhdGEuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InNhbWVfcGlucyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlucHV0VmFsdWUtPmFzQmFnKCk9ZW5kRGF0YS5hbGxQaW5zKCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgaW5wdXRWYWx1ZSBJbnB1dFBpbnMgaXMgdGhlIHNhbWUgYXMgdGhlIHVuaW9uIG9mIGFsbCB0aGUgSW5wdXRQaW5zIHJlZmVyZW5jZWQgYnkgdGhlIGVuZERhdGEuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzYW1lX2Fzc29jaWF0aW9uIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iZW5kRGF0YS5lbmQgPSBzZWxmLmFzc29jaWF0aW9uKCkubWVtYmVyRW5kLT5hc0JhZygpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGVuZHMgb2YgdGhlIGVuZERhdGEgbXVzdCBhbGwgYmUgZnJvbSB0aGUgc2FtZSBBc3NvY2lhdGlvbiBhbmQgaW5jbHVkZSBhbGwgYW5kIG9ubHkgdGhlIG1lbWJlckVuZHMgb2YgdGhhdCBhc3NvY2lhdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im5vdF9zdGF0aWMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJlbmREYXRhLT5mb3JBbGwobm90IGVuZC5pc1N0YXRpYykiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgZW5kcyBvZiB0aGUgZW5kRGF0YSBtdXN0IG5vdCBiZSBzdGF0aWMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJhc3NvY2lhdGlvbiIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Bc3NvY2lhdGlvbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHVybnMgdGhlIEFzc29jaWF0aW9uIGFjdGVkIG9uIGJ5IHRoaXMgTGlua0FjdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImVuZERhdGEtPmFzU2VxdWVuY2UoKS0+Zmlyc3QoKS5lbmQuYXNzb2NpYXRpb24iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImVuZERhdGEiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIyIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0xpbmtFbmREYXRhIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBMaW5rRW5kRGF0YSBpZGVudGlmeWluZyB0aGUgdmFsdWVzIG9uIHRoZSBlbmRzIG9mIHRoZSBsaW5rcyBhY3Rpbmcgb24gYnkgdGhpcyBMaW5rQWN0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImlucHV0VmFsdWUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0lucHV0UGluIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklucHV0UGlucyB1c2VkIGJ5IHRoZSBMaW5rRW5kRGF0YSBvZiB0aGUgTGlua0FjdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0FjdGlvbi9pbnB1dCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iTGlua0VuZERhdGEiIGVTdXBlclR5cGVzPSIjLy9FbGVtZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJMaW5rRW5kRGF0YSBpcyBhbiBFbGVtZW50IHRoYXQgaWRlbnRpZmllcyBvbiBlbmQgb2YgYSBsaW5rIHRvIGJlIHJlYWQgb3Igd3JpdHRlbiBieSBhIExpbmtBY3Rpb24uIEFzIGEgbGluayAodGhhdCBpcyBub3QgYSBsaW5rIG9iamVjdCkgY2Fubm90IGJlIHBhc3NlZCBhcyBhIHJ1bnRpbWUgdmFsdWUgdG8gb3IgZnJvbSBhbiBBY3Rpb24sIGl0IGlzIGluc3RlYWQgaWRlbnRpZmllZCBieSBpdHMgZW5kIG9iamVjdHMgYW5kIHF1YWxpZmllciB2YWx1ZXMsIGlmIGFueS4gQSBMaW5rRW5kRGF0YSBpbnN0YW5jZSBwcm92aWRlcyB0aGVzZSB2YWx1ZXMgZm9yIGEgc2luZ2xlIEFzc29jaWF0aW9uIGVuZC4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ic2FtZV90eXBlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0idmFsdWUmbHQ7Pm51bGwgaW1wbGllcyB2YWx1ZS50eXBlLmNvbmZvcm1zVG8oZW5kLnR5cGUpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHR5cGUgb2YgdGhlIHZhbHVlIElucHV0UGluIGNvbmZvcm1zIHRvIHRoZSB0eXBlIG9mIHRoZSBBc3NvY2lhdGlvbiBlbmQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJtdWx0aXBsaWNpdHkiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJ2YWx1ZSZsdDs+bnVsbCBpbXBsaWVzIHZhbHVlLmlzKDEsMSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbXVsdGlwbGljaXR5IG9mIHRoZSB2YWx1ZSBJbnB1dFBpbiBtdXN0IGJlIDEuLjEuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJlbmRfb2JqZWN0X2lucHV0X3BpbiIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InZhbHVlLT5leGNsdWRlc0FsbChxdWFsaWZpZXIudmFsdWUpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHZhbHVlIElucHV0UGluIGlzIG5vdCBhbHNvIHRoZSBxdWFsaWZpZXIgdmFsdWUgSW5wdXRQaW4uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJwcm9wZXJ0eV9pc19hc3NvY2lhdGlvbl9lbmQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJlbmQuYXNzb2NpYXRpb24gJmx0Oz4gbnVsbCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBQcm9wZXJ0eSBtdXN0IGJlIGFuIEFzc29jaWF0aW9uIG1lbWJlckVuZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InF1YWxpZmllcnMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJlbmQucXVhbGlmaWVyLT5pbmNsdWRlc0FsbChxdWFsaWZpZXIucXVhbGlmaWVyKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWFsaWZpZXJzIG11c3QgYmUgcXVhbGlmaWVycyBvZiB0aGUgQXNzb2NpYXRpb24gZW5kLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iYWxsUGlucyIgb3JkZXJlZD0iZmFsc2UiIHVuaXF1ZT0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vSW5wdXRQaW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXR1cm5zIGFsbCB0aGUgSW5wdXRQaW5zIHJlZmVyZW5jZWQgYnkgdGhpcyBMaW5rRW5kRGF0YS4gQnkgZGVmYXVsdCB0aGlzIGluY2x1ZGVzIHRoZSB2YWx1ZSBhbmQgcXVhbGlmaWVyIElucHV0UGlucywgYnV0IHN1YmNsYXNzZXMgbWF5IG92ZXJyaWRlIHRoZSBvcGVyYXRpb24gdG8gYWRkIG90aGVyIElucHV0UGlucy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InZhbHVlLT5hc0JhZygpLT51bmlvbihxdWFsaWZpZXIudmFsdWUpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlbmQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIgorICAgICAgICBlVHlwZT0iIy8vUHJvcGVydHkiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgQXNzb2NpYXRpb27CoGVuZMKgZm9ywqB3aGljaMKgdGhpc8KgTGlua0VuZERhdGHCoHNwZWNpZmllc8KgdmFsdWVzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJxdWFsaWZpZXIiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1F1YWxpZmllclZhbHVlIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgc2V0IG9mIFF1YWxpZmllclZhbHVlcyB1c2VkIHRvIHByb3ZpZGUgdmFsdWVzIGZvciB0aGUgcXVhbGlmaWVycyBvZiB0aGUgZW5kLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InZhbHVlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL0lucHV0UGluIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIElucHV0UGluIHRoYXQgcHJvdmlkZXMgdGhlIHNwZWNpZmllZCB2YWx1ZSBmb3IgdGhlIGdpdmVuIGVuZC4gVGhpcyBJbnB1dFBpbiBpcyBvbWl0dGVkIGlmIHRoZSBMaW5rRW5kRGF0YSBzcGVjaWZpZXMgdGhlICZxdW90O29wZW4mcXVvdDsgZW5kIGZvciBhIFJlYWRMaW5rQWN0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJRdWFsaWZpZXJWYWx1ZSIgZVN1cGVyVHlwZXM9IiMvL0VsZW1lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgUXVhbGlmaWVyVmFsdWUgaXMgYW4gRWxlbWVudCB0aGF0IGlzIHVzZWQgYXMgcGFydCBvZiBMaW5rRW5kRGF0YSB0byBwcm92aWRlIHRoZSB2YWx1ZSBmb3IgYSBzaW5nbGUgcXVhbGlmaWVyIG9mIHRoZSBlbmQgZ2l2ZW4gYnkgdGhlIExpbmtFbmREYXRhLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJtdWx0aXBsaWNpdHlfb2ZfcXVhbGlmaWVyIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0idmFsdWUuaXMoMSwxKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBtdWx0aXBsaWNpdHkgb2YgdGhlIHZhbHVlIElucHV0UGluIGlzIDEuLjEuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJ0eXBlX29mX3F1YWxpZmllciIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InZhbHVlLnR5cGUuY29uZm9ybXNUbyhxdWFsaWZpZXIudHlwZSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgdHlwZSBvZiB0aGUgdmFsdWUgSW5wdXRQaW4gY29uZm9ybXMgdG8gdGhlIHR5cGUgb2YgdGhlIHF1YWxpZmllciBQcm9wZXJ0eS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InF1YWxpZmllcl9hdHRyaWJ1dGUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJsaW5rRW5kRGF0YS5lbmQucXVhbGlmaWVyLT5pbmNsdWRlcyhxdWFsaWZpZXIpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1YWxpZmllciBtdXN0IGJlIGEgcXVhbGlmaWVyIG9mIHRoZSBBc3NvY2lhdGlvbiBlbmQgb2YgdGhlIGxpbmtFbmREYXRhIHRoYXQgb3ducyB0aGlzIFF1YWxpZmllclZhbHVlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icXVhbGlmaWVyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1Byb3BlcnR5Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1YWxpZmllciBQcm9wZXJ0eSBmb3Igd2hpY2ggdGhlIHZhbHVlIGlzIHRvIGJlIHNwZWNpZmllZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0idmFsdWUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vSW5wdXRQaW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgSW5wdXRQaW4gZnJvbSB3aGljaCB0aGUgc3BlY2lmaWVkIHZhbHVlIGZvciB0aGUgcXVhbGlmaWVyIGlzIHRha2VuLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJXcml0ZVN0cnVjdHVyYWxGZWF0dXJlQWN0aW9uIiBhYnN0cmFjdD0idHJ1ZSIKKyAgICAgIGVTdXBlclR5cGVzPSIjLy9TdHJ1Y3R1cmFsRmVhdHVyZUFjdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iV3JpdGVTdHJ1Y3R1cmFsRmVhdHVyZUFjdGlvbiBpcyBhbiBhYnN0cmFjdCBjbGFzcyBmb3IgU3RydWN0dXJhbEZlYXR1cmVBY3Rpb25zIHRoYXQgY2hhbmdlIFN0cnVjdHVyYWxGZWF0dXJlIHZhbHVlcy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibXVsdGlwbGljaXR5X29mX3Jlc3VsdCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InJlc3VsdCAmbHQ7PiBudWxsIGltcGxpZXMgcmVzdWx0LmlzKDEsMSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbXVsdGlwbGljaXR5IG9mIHRoZSByZXN1bHQgT3V0cHV0UGluIG11c3QgYmUgMS4uMS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InR5cGVfb2ZfdmFsdWUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJ2YWx1ZSAmbHQ7PiBudWxsIGltcGxpZXMgdmFsdWUudHlwZS5jb25mb3Jtc1RvKHN0cnVjdHVyYWxGZWF0dXJlLnR5cGUpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHR5cGUgb2YgdGhlIHZhbHVlIElucHV0UGluIG11c3QgY29uZm9ybSB0byB0aGUgdHlwZSBvZiB0aGUgc3RydWN0dXJhbEZlYXR1cmUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJtdWx0aXBsaWNpdHlfb2ZfdmFsdWUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJ2YWx1ZSZsdDs+bnVsbCBpbXBsaWVzIHZhbHVlLmlzKDEsMSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbXVsdGlwbGljaXR5IG9mIHRoZSB2YWx1ZSBJbnB1dFBpbiBpcyAxLi4xLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0idHlwZV9vZl9yZXN1bHQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJyZXN1bHQgJmx0Oz4gbnVsbCBpbXBsaWVzIHJlc3VsdC50eXBlID0gb2JqZWN0LnR5cGUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgdHlwZSBvZiB0aGUgcmVzdWx0IE91dHB1dFBpbiBpcyB0aGUgc2FtZSBhcyB0aGUgdHlwZSBvZiB0aGUgaW5oZXJpdGVkIG9iamVjdCBJbnB1dFBpbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InJlc3VsdCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9PdXRwdXRQaW4iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIE91dHB1dFBpbiBvbiB3aGljaCBpcyBwdXQgdGhlIGlucHV0IG9iamVjdCBhcyBtb2RpZmllZCBieSB0aGUgV3JpdGVTdHJ1Y3R1cmFsRmVhdHVyZUFjdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0FjdGlvbi9vdXRwdXQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InZhbHVlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL0lucHV0UGluIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBJbnB1dFBpbiB0aGF0IHByb3ZpZGVzIHRoZSB2YWx1ZSB0byBiZSBhZGRlZCBvciByZW1vdmVkIGZyb20gdGhlIFN0cnVjdHVyYWxGZWF0dXJlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQWN0aW9uL2lucHV0Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTdHJ1Y3R1cmFsRmVhdHVyZUFjdGlvbiIgYWJzdHJhY3Q9InRydWUiCisgICAgICBlU3VwZXJUeXBlcz0iIy8vQWN0aW9uIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTdHJ1Y3R1cmFsRmVhdHVyZUFjdGlvbiBpcyBhbiBhYnN0cmFjdCBjbGFzcyBmb3IgYWxsIEFjdGlvbnMgdGhhdCBvcGVyYXRlIG9uIFN0cnVjdHVyYWxGZWF0dXJlcy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibXVsdGlwbGljaXR5IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ib2JqZWN0LmlzKDEsMSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbXVsdGlwbGljaXR5IG9mIHRoZSBvYmplY3QgSW5wdXRQaW4gbXVzdCBiZSAxLi4xLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ib2JqZWN0X3R5cGUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJvYmplY3QudHlwZS5vY2xBc1R5cGUoQ2xhc3NpZmllcikuYWxsRmVhdHVyZXMoKS0+aW5jbHVkZXMoc3RydWN0dXJhbEZlYXR1cmUpIG9yJiN4RDsmI3hBOyYjeDk7b2JqZWN0LnR5cGUuY29uZm9ybXNUbyhzdHJ1Y3R1cmFsRmVhdHVyZS5vY2xBc1R5cGUoUHJvcGVydHkpLm9wcG9zaXRlLnR5cGUpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHN0cnVjdHVyYWxGZWF0dXJlIG11c3QgZWl0aGVyIGJlIGFuIG93bmVkIG9yIGluaGVyaXRlZCBmZWF0dXJlIG9mIHRoZSB0eXBlIG9mIHRoZSBvYmplY3QgSW5wdXRQaW4sIG9yIGl0IG11c3QgYmUgYW4gb3duZWQgZW5kIG9mIGEgYmluYXJ5IEFzc29jaWF0aW9uIHdob3NlIG9wcG9zaXRlIGVuZCBoYWQgYXMgYSB0eXBlIHRvIHdoaWNoIHRoZSB0eXBlIG9mIHRoZSBvYmplY3QgSW5wdXRQaW4gY29uZm9ybXMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJ2aXNpYmlsaXR5IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ic3RydWN0dXJhbEZlYXR1cmUudmlzaWJpbGl0eSA9IFZpc2liaWxpdHlLaW5kOjpwdWJsaWMgb3ImI3hBO18nY29udGV4dCcuYWxsRmVhdHVyZXMoKS0+aW5jbHVkZXMoc3RydWN0dXJhbEZlYXR1cmUpIG9yJiN4QTtzdHJ1Y3R1cmFsRmVhdHVyZS52aXNpYmlsaXR5PVZpc2liaWxpdHlLaW5kOjpwcm90ZWN0ZWQgYW5kJiN4QTtfJ2NvbnRleHQnLmNvbmZvcm1zVG8oc3RydWN0dXJhbEZlYXR1cmUub2NsQXNUeXBlKFByb3BlcnR5KS5vcHBvc2l0ZS50eXBlLm9jbEFzVHlwZShDbGFzc2lmaWVyKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgdmlzaWJpbGl0eSBvZiB0aGUgc3RydWN0dXJhbEZlYXR1cmUgbXVzdCBhbGxvdyBhY2Nlc3MgZnJvbSB0aGUgb2JqZWN0IHBlcmZvcm1pbmcgdGhlIFJlYWRTdHJ1Y3R1cmFsRmVhdHVyZUFjdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im5vdF9zdGF0aWMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJub3Qgc3RydWN0dXJhbEZlYXR1cmUuaXNTdGF0aWMiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc3RydWN0dXJhbEZlYXR1cmUgbXVzdCBub3QgYmUgc3RhdGljLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ib25lX2ZlYXR1cmluZ19jbGFzc2lmaWVyIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ic3RydWN0dXJhbEZlYXR1cmUuZmVhdHVyaW5nQ2xhc3NpZmllci0+c2l6ZSgpID0gMSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBzdHJ1Y3R1cmFsRmVhdHVyZSBtdXN0IGhhdmUgZXhhY3RseSBvbmUgZmVhdHVyaW5nQ2xhc3NpZmllci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im9iamVjdCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9JbnB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgSW5wdXRQaW4gZnJvbSB3aGljaCB0aGUgb2JqZWN0IHdob3NlIFN0cnVjdHVyYWxGZWF0dXJlIGlzIHRvIGJlIHJlYWQgb3Igd3JpdHRlbiBpcyBvYnRhaW5lZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0FjdGlvbi9pbnB1dCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ic3RydWN0dXJhbEZlYXR1cmUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vU3RydWN0dXJhbEZlYXR1cmUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgU3RydWN0dXJhbEZlYXR1cmUgdG8gYmUgcmVhZCBvciB3cml0dGVuLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJXcml0ZVZhcmlhYmxlQWN0aW9uIiBhYnN0cmFjdD0idHJ1ZSIKKyAgICAgIGVTdXBlclR5cGVzPSIjLy9WYXJpYWJsZUFjdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iV3JpdGVWYXJpYWJsZUFjdGlvbiBpcyBhbiBhYnN0cmFjdCBjbGFzcyBmb3IgVmFyaWFibGVBY3Rpb25zIHRoYXQgY2hhbmdlIFZhcmlhYmxlIHZhbHVlcy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0idmFsdWVfdHlwZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InZhbHVlICZsdDs+IG51bGwgaW1wbGllcyB2YWx1ZS50eXBlLmNvbmZvcm1zVG8odmFyaWFibGUudHlwZSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgdHlwZSBvZiB0aGUgdmFsdWUgSW5wdXRQaW4gbXVzdCBjb25mb3JtIHRvIHRoZSB0eXBlIG9mIHRoZSB2YXJpYWJsZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im11bHRpcGxpY2l0eSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InZhbHVlJmx0Oz5udWxsIGltcGxpZXMgdmFsdWUuaXMoMSwxKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBtdWx0aXBsaWNpdHkgb2YgdGhlIHZhbHVlIElucHV0UGluIGlzIDEuLjEuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJ2YWx1ZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9JbnB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgSW5wdXRQaW4gdGhhdCBnaXZlcyB0aGUgdmFsdWUgdG8gYmUgYWRkZWQgb3IgcmVtb3ZlZCBmcm9tIHRoZSBWYXJpYWJsZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0FjdGlvbi9pbnB1dCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVFbnVtIiBuYW1lPSJFeHBhbnNpb25LaW5kIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJFeHBhbnNpb25LaW5kIGlzIGFuIGVudW1lcmF0aW9uIHR5cGUgdXNlZCB0byBzcGVjaWZ5IGhvdyBhbiBFeHBhbnNpb25SZWdpb24gZXhlY3V0ZXMgaXRzIGNvbnRlbnRzLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0icGFyYWxsZWwiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY29udGVudCBvZiB0aGUgRXhwYW5zaW9uUmVnaW9uIGlzIGV4ZWN1dGVkIGNvbmN1cnJlbnRseSBmb3IgdGhlIGVsZW1lbnRzIG9mIHRoZSBpbnB1dCBjb2xsZWN0aW9ucy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0iaXRlcmF0aXZlIiB2YWx1ZT0iMSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjb250ZW50IG9mIHRoZSBFeHBhbnNpb25SZWdpb24gaXMgZXhlY3V0ZWQgaXRlcmF0aXZlbHkgZm9yIHRoZSBlbGVtZW50cyBvZiB0aGUgaW5wdXQgY29sbGVjdGlvbnMsIGluIHRoZSBvcmRlciBvZiB0aGUgaW5wdXQgZWxlbWVudHMsIGlmIHRoZSBjb2xsZWN0aW9ucyBhcmUgb3JkZXJlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0ic3RyZWFtIiB2YWx1ZT0iMiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgc3RyZWFtIG9mIGlucHV0IGNvbGxlY3Rpb24gZWxlbWVudHMgZmxvd3MgaW50byBhIHNpbmdsZSBleGVjdXRpb24gb2YgdGhlIGNvbnRlbnQgb2YgdGhlIEV4cGFuc2lvblJlZ2lvbiwgaW4gdGhlIG9yZGVyIG9mIHRoZSBjb2xsZWN0aW9uIGVsZW1lbnRzIGlmIHRoZSBpbnB1dCBjb2xsZWN0aW9ucyBhcmUgb3JkZXJlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJBY2NlcHRDYWxsQWN0aW9uIiBlU3VwZXJUeXBlcz0iIy8vQWNjZXB0RXZlbnRBY3Rpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIEFjY2VwdENhbGxBY3Rpb24gaXMgYW4gQWNjZXB0RXZlbnRBY3Rpb24gdGhhdCBoYW5kbGVzIHRoZSByZWNlaXB0IG9mIGEgc3luY2hyb25vdXMgY2FsbCByZXF1ZXN0LiBJbiBhZGRpdGlvbiB0byB0aGUgdmFsdWVzIGZyb20gdGhlIE9wZXJhdGlvbiBpbnB1dCBwYXJhbWV0ZXJzLCB0aGUgQWN0aW9uIHByb2R1Y2VzIGFuIG91dHB1dCB0aGF0IGlzIG5lZWRlZCBsYXRlciB0byBzdXBwbHkgdGhlIGluZm9ybWF0aW9uIHRvIHRoZSBSZXBseUFjdGlvbiBuZWNlc3NhcnkgdG8gcmV0dXJuIGNvbnRyb2wgdG8gdGhlIGNhbGxlci4gQW4gQWNjZXB0Q2FsbEFjdGlvbiBpcyBmb3Igc3luY2hyb25vdXMgY2FsbHMuIElmIGl0IGlzIHVzZWQgdG8gaGFuZGxlIGFuIGFzeW5jaHJvbm91cyBjYWxsLCBleGVjdXRpb24gb2YgdGhlIHN1YnNlcXVlbnQgUmVwbHlBY3Rpb24gd2lsbCBjb21wbGV0ZSBpbW1lZGlhdGVseSB3aXRoIG5vIGVmZmVjdC4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0icmVzdWx0X3BpbnMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJsZXQgcGFyYW1ldGVyOiBPcmRlcmVkU2V0KFBhcmFtZXRlcikgPSB0cmlnZ2VyLmV2ZW50LT5hc1NlcXVlbmNlKCktPmZpcnN0KCkub2NsQXNUeXBlKENhbGxFdmVudCkub3BlcmF0aW9uLmlucHV0UGFyYW1ldGVycygpIGluJiN4RDsmI3hBO3Jlc3VsdC0+c2l6ZSgpID0gcGFyYW1ldGVyLT5zaXplKCkgYW5kJiN4RDsmI3hBO1NlcXVlbmNlezEuLnJlc3VsdC0+c2l6ZSgpfS0+Zm9yQWxsKGkgfCAmI3hEOyYjeEE7JiN4OTtwYXJhbWV0ZXItPmF0KGkpLnR5cGUuY29uZm9ybXNUbyhyZXN1bHQtPmF0KGkpLnR5cGUpIGFuZCAmI3hEOyYjeEE7JiN4OTtwYXJhbWV0ZXItPmF0KGkpLmlzT3JkZXJlZCA9IHJlc3VsdC0+YXQoaSkuaXNPcmRlcmVkIGFuZCYjeEQ7JiN4QTsmI3g5O3BhcmFtZXRlci0+YXQoaSkuY29tcGF0aWJsZVdpdGgocmVzdWx0LT5hdChpKSkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG51bWJlciBvZiByZXN1bHQgT3V0cHV0UGlucyBtdXN0IGJlIHRoZSBzYW1lIGFzIHRoZSBudW1iZXIgb2YgaW5wdXQgKGluIGFuZCBpbm91dCkgb3duZWRQYXJhbWV0ZXJzIG9mIHRoZSBPcGVyYXRpb24gc3BlY2lmaWVkIGJ5IHRoZSB0cmlnZ2VyIEV2ZW50LiBUaGUgdHlwZSwgb3JkZXJpbmcgYW5kIG11bHRpcGxpY2l0eSBvZiBlYWNoIHJlc3VsdCBPdXRwdXRQaW4gbXVzdCBiZSBjb25zaXN0ZW50IHdpdGggdGhlIGNvcnJlc3BvbmRpbmcgaW5wdXQgUGFyYW1ldGVyLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0idHJpZ2dlcl9jYWxsX2V2ZW50IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0idHJpZ2dlci0+c2l6ZSgpPTEgYW5kJiN4RDsmI3hBO3RyaWdnZXItPmFzU2VxdWVuY2UoKS0+Zmlyc3QoKS5ldmVudC5vY2xJc0tpbmRPZihDYWxsRXZlbnQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGFjdGlvbiBtdXN0IGhhdmUgZXhhY3RseSBvbmUgdHJpZ2dlciwgd2hpY2ggbXVzdCBiZSBmb3IgYSBDYWxsRXZlbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJ1bm1hcnNoYWxsIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaXNVbm1hcnNoYWxsID0gdHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9ImlzVW5tcmFzaGFsbCBtdXN0IGJlIHRydWUgZm9yIGFuIEFjY2VwdENhbGxBY3Rpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyZXR1cm5JbmZvcm1hdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9PdXRwdXRQaW4iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gT3V0cHV0UGluIHdoZXJlIGEgdmFsdWUgaXMgcGxhY2VkIGNvbnRhaW5pbmcgc3VmZmljaWVudCBpbmZvcm1hdGlvbiB0byBwZXJmb3JtIGEgc3Vic2VxdWVudCBSZXBseUFjdGlvbiBhbmQgcmV0dXJuIGNvbnRyb2wgdG8gdGhlIGNhbGxlci4gVGhlIGNvbnRlbnRzIG9mIHRoaXMgdmFsdWUgYXJlIG9wYXF1ZS4gSXQgY2FuIGJlIHBhc3NlZCBhbmQgY29waWVkIGJ1dCBpdCBjYW5ub3QgYmUgbWFuaXB1bGF0ZWQgYnkgdGhlIG1vZGVsLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQWN0aW9uL291dHB1dCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQWNjZXB0RXZlbnRBY3Rpb24iIGVTdXBlclR5cGVzPSIjLy9BY3Rpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIEFjY2VwdEV2ZW50QWN0aW9uIGlzIGFuIEFjdGlvbiB0aGF0IHdhaXRzIGZvciB0aGUgb2NjdXJyZW5jZSBvZiBvbmUgb3IgbW9yZSBzcGVjaWZpYyBFdmVudHMuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im9uZV9vdXRwdXRfcGluIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibm90IGlzVW5tYXJzaGFsbCBhbmQgdHJpZ2dlci0+ZXhpc3RzKGV2ZW50Lm9jbElzS2luZE9mKFNpZ25hbEV2ZW50KSBvciBldmVudC5vY2xJc0tpbmRPZihUaW1lRXZlbnQpKSBpbXBsaWVzICYjeEQ7JiN4QTsmI3g5O291dHB1dC0+c2l6ZSgpID0gMSBhbmQgb3V0cHV0LT5maXJzdCgpLmlzKDEsMSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiBpc1VubWFyc2hhbGw9ZmFsc2UgYW5kIGFueSBvZiB0aGUgdHJpZ2dlcnMgYXJlIGZvciBTaWduYWxFdmVudHMgb3IgVGltZUV2ZW50cywgdGhlcmUgbXVzdCBiZSBleGFjdGx5IG9uZSByZXN1bHQgT3V0cHV0UGluIHdpdGggbXVsdGlwbGljaXR5IDEuLjEuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJub19pbnB1dF9waW5zIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaW5wdXQtPnNpemUoKSA9IDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBY2NlcHRFdmVudEFjdGlvbnMgbWF5IGhhdmUgbm8gaW5wdXQgcGlucy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im5vX291dHB1dF9waW5zIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iKHNlbGYub2NsSXNUeXBlT2YoQWNjZXB0RXZlbnRBY3Rpb24pIGFuZCYjeEQ7JiN4QTsgICAodHJpZ2dlci0+Zm9yQWxsKGV2ZW50Lm9jbElzS2luZE9mKENoYW5nZUV2ZW50KSBvciAgJiN4RDsmI3hBOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQub2NsSXNLaW5kT2YoQ2FsbEV2ZW50KSkpKSYjeEQ7JiN4QTtpbXBsaWVzIG91dHB1dC0+c2l6ZSgpID0gMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZXJlIGFyZSBubyBPdXRwdXRQaW5zIGlmIHRoZSB0cmlnZ2VyIGV2ZW50cyBhcmUgb25seSBDaGFuZ2VFdmVudHMgYW5kL29yIENhbGxFdmVudHMgd2hlbiB0aGlzIGFjdGlvbiBpcyBhbiBpbnN0YW5jZSBvZiBBY2NlcHRFdmVudEFjdGlvbiBhbmQgbm90IGFuIGluc3RhbmNlIG9mIGEgZGVzY2VuZGFudCBvZiBBY2NlcHRFdmVudEFjdGlvbiAoc3VjaCBhcyBBY2NlcHRDYWxsQWN0aW9uKS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InVubWFyc2hhbGxfc2lnbmFsX2V2ZW50cyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlzVW5tYXJzaGFsbCBhbmQgc2VsZi5vY2xJc1R5cGVPZihBY2NlcHRFdmVudEFjdGlvbikgaW1wbGllcyYjeEQ7JiN4QTsmI3g5O3RyaWdnZXItPnNpemUoKT0xIGFuZCYjeEQ7JiN4QTsmI3g5O3RyaWdnZXItPmFzU2VxdWVuY2UoKS0+Zmlyc3QoKS5ldmVudC5vY2xJc0tpbmRPZihTaWduYWxFdmVudCkgYW5kJiN4RDsmI3hBOyYjeDk7bGV0IGF0dHJpYnV0ZTogT3JkZXJlZFNldChQcm9wZXJ0eSkgPSB0cmlnZ2VyLT5hc1NlcXVlbmNlKCktPmZpcnN0KCkuZXZlbnQub2NsQXNUeXBlKFNpZ25hbEV2ZW50KS5zaWduYWwuYWxsQXR0cmlidXRlcygpIGluJiN4RDsmI3hBOyYjeDk7YXR0cmlidXRlLT5zaXplKCk+MCBhbmQgcmVzdWx0LT5zaXplKCkgPSBhdHRyaWJ1dGUtPnNpemUoKSBhbmQmI3hEOyYjeEE7JiN4OTtTZXF1ZW5jZXsxLi5yZXN1bHQtPnNpemUoKX0tPmZvckFsbChpIHwgJiN4RDsmI3hBOyYjeDk7JiN4OTtyZXN1bHQtPmF0KGkpLnR5cGUgPSBhdHRyaWJ1dGUtPmF0KGkpLnR5cGUgYW5kICYjeEQ7JiN4QTsmI3g5OyYjeDk7cmVzdWx0LT5hdChpKS5pc09yZGVyZWQgPSBhdHRyaWJ1dGUtPmF0KGkpLmlzT3JkZXJlZCBhbmQmI3hEOyYjeEE7JiN4OTsmI3g5O3Jlc3VsdC0+YXQoaSkuaW5jbHVkZXNNdWx0aXBsaWNpdHkoYXR0cmlidXRlLT5hdChpKSkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgaXNVbm1hcnNoYWxsIGlzIHRydWUgKGFuZCB0aGlzIGlzIG5vdCBhbiBBY2NlcHRDYWxsQWN0aW9uKSwgdGhlcmUgbXVzdCBiZSBleGFjdGx5IG9uZSB0cmlnZ2VyLCB3aGljaCBpcyBmb3IgYSBTaWduYWxFdmVudC4gVGhlIG51bWJlciBvZiByZXN1bHQgb3V0cHV0IHBpbnMgbXVzdCBiZSB0aGUgc2FtZSBhcyB0aGUgbnVtYmVyIG9mIGF0dHJpYnV0ZXMgb2YgdGhlIHNpZ25hbC4gVGhlIHR5cGUgYW5kIG9yZGVyaW5nIG9mIGVhY2ggcmVzdWx0IG91dHB1dCBwaW4gbXVzdCBiZSB0aGUgc2FtZSBhcyB0aGUgY29ycmVzcG9uZGluZyBhdHRyaWJ1dGUgb2YgdGhlIHNpZ25hbC4gVGhlIG11bHRpcGxpY2l0eSBvZiBlYWNoIHJlc3VsdCBvdXRwdXQgcGluIG11c3QgYmUgY29tcGF0aWJsZSB3aXRoIHRoZSBtdWx0aXBsaWNpdHkgb2YgdGhlIGNvcnJlc3BvbmRpbmcgYXR0cmlidXRlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY29uZm9ybWluZ190eXBlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibm90IGlzVW5tYXJzaGFsbCBpbXBsaWVzICYjeEQ7JiN4QTsmI3g5O3Jlc3VsdC0+aXNFbXB0eSgpIG9yJiN4RDsmI3hBOyYjeDk7bGV0IHR5cGU6IFR5cGUgPSByZXN1bHQtPmZpcnN0KCkudHlwZSBpbiYjeEQ7JiN4QTsmI3g5O3R5cGU9bnVsbCBvciAmI3hEOyYjeEE7JiN4OTsmI3g5Oyh0cmlnZ2VyLT5mb3JBbGwoZXZlbnQub2NsSXNLaW5kT2YoU2lnbmFsRXZlbnQpKSBhbmQgJiN4RDsmI3hBOyYjeDk7JiN4OTsgdHJpZ2dlci5ldmVudC5vY2xBc1R5cGUoU2lnbmFsRXZlbnQpLnNpZ25hbC0+Zm9yQWxsKHMgfCBzLmNvbmZvcm1zVG8odHlwZSkpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIGlzVW5tYXJzaGFsbD1mYWxzZSBhbmQgYWxsIHRoZSB0cmlnZ2VycyBhcmUgZm9yIFNpZ25hbEV2ZW50cywgdGhlbiB0aGUgdHlwZSBvZiB0aGUgc2luZ2xlIHJlc3VsdCBPdXRwdXRQaW4gbXVzdCBlaXRoZXIgYmUgbnVsbCBvciBhbGwgdGhlIHNpZ25hbHMgbXVzdCBjb25mb3JtIHRvIGl0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNVbm1hcnNoYWxsIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGRlZmF1bHRWYWx1ZUxpdGVyYWw9ImZhbHNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSW5kaWNhdGVzIHdoZXRoZXIgdGhlcmUgaXMgYSBzaW5nbGUgT3V0cHV0UGluIGZvciBhIFNpZ25hbEV2ZW50IG9jY3VycmVuY2UsIG9yIG11bHRpcGxlIE91dHB1dFBpbnMgZm9yIGF0dHJpYnV0ZSB2YWx1ZXMgb2YgdGhlIGluc3RhbmNlIG9mIHRoZSBTaWduYWwgYXNzb2NpYXRlZCB3aXRoIGEgU2lnbmFsRXZlbnQgb2NjdXJyZW5jZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVzdWx0IiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL091dHB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJPdXRwdXRQaW5zIGhvbGRpbmcgdGhlIHZhbHVlcyByZWNlaXZlZCBmcm9tIGFuIEV2ZW50IG9jY3VycmVuY2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9BY3Rpb24vb3V0cHV0Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJ0cmlnZ2VyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9UcmlnZ2VyIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBUcmlnZ2VycyBzcGVjaWZ5aW5nIHRoZSBFdmVudHMgb2Ygd2hpY2ggdGhlIEFjY2VwdEV2ZW50QWN0aW9uIHdhaXRzIGZvciBvY2N1cnJlbmNlcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJBY3Rpb25JbnB1dFBpbiIgZVN1cGVyVHlwZXM9IiMvL0lucHV0UGluIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBBY3Rpb25JbnB1dFBpbiBpcyBhIGtpbmQgb2YgSW5wdXRQaW4gdGhhdCBleGVjdXRlcyBhbiBBY3Rpb24gdG8gZGV0ZXJtaW5lIHRoZSB2YWx1ZXMgdG8gaW5wdXQgdG8gYW5vdGhlciBBY3Rpb24uIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlucHV0X3BpbiIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImZyb21BY3Rpb24uaW5wdXQtPmZvckFsbChvY2xJc0tpbmRPZihBY3Rpb25JbnB1dFBpbikpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGZyb21BY3Rpb24gb2YgYW4gQWN0aW9uSW5wdXRQaW4gbXVzdCBvbmx5IGhhdmUgQWN0aW9uSW5wdXRQaW5zIGFzIElucHV0UGlucy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im9uZV9vdXRwdXRfcGluIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iZnJvbUFjdGlvbi5vdXRwdXQtPnNpemUoKSA9IDEiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgZnJvbUFjdGlvbiBvZiBhbiBBY3Rpb25JbnB1dFBpbiBtdXN0IGhhdmUgZXhhY3RseSBvbmUgT3V0cHV0UGluLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibm9fY29udHJvbF9vcl9vYmplY3RfZmxvdyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImZyb21BY3Rpb24uaW5jb21pbmctPnVuaW9uKG91dGdvaW5nKS0+aXNFbXB0eSgpIGFuZCYjeEQ7JiN4QTtmcm9tQWN0aW9uLmlucHV0LmluY29taW5nLT5pc0VtcHR5KCkgYW5kJiN4RDsmI3hBO2Zyb21BY3Rpb24ub3V0cHV0Lm91dGdvaW5nLT5pc0VtcHR5KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgZnJvbUFjdGlvbiBvZiBhbiBBY3Rpb25JbnB1dFBpbiBjYW5ub3QgaGF2ZSBBY3Rpdml0eUVkZ2VzIGNvbWluZyBpbnRvIG9yIG91dCBvZiBpdCBvciBpdHMgUGlucy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImZyb21BY3Rpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vQWN0aW9uIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBBY3Rpb24gdXNlZCB0byBwcm92aWRlIHRoZSB2YWx1ZXMgb2YgdGhlIEFjdGlvbklucHV0UGluLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkFkZFN0cnVjdHVyYWxGZWF0dXJlVmFsdWVBY3Rpb24iIGVTdXBlclR5cGVzPSIjLy9Xcml0ZVN0cnVjdHVyYWxGZWF0dXJlQWN0aW9uIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBBZGRTdHJ1Y3R1cmFsRmVhdHVyZVZhbHVlQWN0aW9uIGlzIGEgV3JpdGVTdHJ1Y3R1cmFsRmVhdHVyZUFjdGlvbiBmb3IgYWRkaW5nIHZhbHVlcyB0byBhIFN0cnVjdHVyYWxGZWF0dXJlLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJyZXF1aXJlZF92YWx1ZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InZhbHVlJmx0Oz5udWxsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSB2YWx1ZSBJbnB1dFBpbiBpcyByZXF1aXJlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Imluc2VydEF0X3BpbiIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlmIG5vdCBzdHJ1Y3R1cmFsRmVhdHVyZS5pc09yZGVyZWQgdGhlbiBpbnNlcnRBdCA9IG51bGwmI3hBO2Vsc2UgJiN4QTsgIG5vdCBpc1JlcGxhY2VBbGwgaW1wbGllcyYjeEE7ICAmI3g5O2luc2VydEF0Jmx0Oz5udWxsIGFuZCAmI3hBOyAgJiN4OTtpbnNlcnRBdC0+Zm9yQWxsKHR5cGU9VW5saW1pdGVkTmF0dXJhbCBhbmQgaXMoMSwxLm9jbEFzVHlwZShVbmxpbWl0ZWROYXR1cmFsKSkpJiN4QTtlbmRpZiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFkZFN0cnVjdHVyYWxGZWF0dXJlQWN0aW9ucyBhZGRpbmcgYSB2YWx1ZSB0byBvcmRlcmVkIFN0cnVjdHVyYWxGZWF0dXJlcyBtdXN0IGhhdmUgYSBzaW5nbGUgSW5wdXRQaW4gZm9yIHRoZSBpbnNlcnRpb24gcG9pbnQgd2l0aCB0eXBlIFVubGltaXRlZE5hdHVyYWwgYW5kIG11bHRpcGxpY2l0eSBvZiAxLi4xIGlmIGlzUmVwbGFjZUFsbD1mYWxzZSwgYW5kIG11c3QgaGF2ZSBubyBJbnB1dCBQaW4gZm9yIHRoZSBpbnNlcnRpb24gcG9pbnQgd2hlbiB0aGUgU3RydWN0dXJhbEZlYXR1cmUgaXMgdW5vcmRlcmVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iaW5zZXJ0QXQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vSW5wdXRQaW4iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIElucHV0UGluIHRoYXQgZ2l2ZXMgdGhlIHBvc2l0aW9uIGF0IHdoaWNoIHRvIGluc2VydCB0aGUgdmFsdWUgaW4gYW4gb3JkZXJlZCBTdHJ1Y3R1cmFsRmVhdHVyZS4gVGhlIHR5cGUgb2YgdGhlIGluc2VydEF0IElucHV0UGluIGlzIFVubGltaXRlZE5hdHVyYWwsIGJ1dCB0aGUgdmFsdWUgY2Fubm90IGJlIHplcm8uIEl0IGlzIG9taXR0ZWQgZm9yIHVub3JkZXJlZCBTdHJ1Y3R1cmFsRmVhdHVyZXMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9BY3Rpb24vaW5wdXQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImlzUmVwbGFjZUFsbCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSJmYWxzZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNwZWNpZmllcyB3aGV0aGVyIGV4aXN0aW5nIHZhbHVlcyBvZiB0aGUgU3RydWN0dXJhbEZlYXR1cmUgc2hvdWxkIGJlIHJlbW92ZWQgYmVmb3JlIGFkZGluZyB0aGUgbmV3IHZhbHVlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJBZGRWYXJpYWJsZVZhbHVlQWN0aW9uIiBlU3VwZXJUeXBlcz0iIy8vV3JpdGVWYXJpYWJsZUFjdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gQWRkVmFyaWFibGVWYWx1ZUFjdGlvbiBpcyBhIFdyaXRlVmFyaWFibGVBY3Rpb24gZm9yIGFkZGluZyB2YWx1ZXMgdG8gYSBWYXJpYWJsZS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0icmVxdWlyZWRfdmFsdWUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJ2YWx1ZSAmbHQ7PiBudWxsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSB2YWx1ZSBJbnB1dFBpbiBpcyByZXF1aXJlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Imluc2VydEF0X3BpbiIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlmIG5vdCB2YXJpYWJsZS5pc09yZGVyZWQgdGhlbiBpbnNlcnRBdCA9IG51bGwmI3hBO2Vsc2UgJiN4QTsgIG5vdCBpc1JlcGxhY2VBbGwgaW1wbGllcyYjeEE7ICAmI3g5O2luc2VydEF0Jmx0Oz5udWxsIGFuZCAmI3hBOyAgJiN4OTtpbnNlcnRBdC0+Zm9yQWxsKHR5cGU9VW5saW1pdGVkTmF0dXJhbCBhbmQgaXMoMSwxLm9jbEFzVHlwZShVbmxpbWl0ZWROYXR1cmFsKSkpJiN4QTtlbmRpZiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFkZFZhcmlhYmxlVmFsdWVBY3Rpb25zIGZvciBvcmRlcmVkIFZhcmlhYmxlcyBtdXN0IGhhdmUgYSBzaW5nbGUgSW5wdXRQaW4gZm9yIHRoZSBpbnNlcnRpb24gcG9pbnQgd2l0aCB0eXBlIFVubGltdGVkTmF0dXJhbCBhbmQgbXVsdGlwbGljaXR5IG9mIDEuLjEgaWYgaXNSZXBsYWNlQWxsPWZhbHNlLCBvdGhlcndpc2UgdGhlIEFjdGlvbiBoYXMgbm8gSW5wdXRQaW4gZm9yIHRoZSBpbnNlcnRpb24gcG9pbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJpbnNlcnRBdCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9JbnB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgSW5wdXRQaW4gdGhhdCBnaXZlcyB0aGUgcG9zaXRpb24gYXQgd2hpY2ggdG8gaW5zZXJ0IGEgbmV3IHZhbHVlIG9yIG1vdmUgYW4gZXhpc3RpbmcgdmFsdWUgaW4gb3JkZXJlZCBWYXJpYWJsZXMuIFRoZSB0eXBlIG9mIHRoZSBpbnNlcnRBdCBJbnB1dFBpbiBpcyBVbmxpbWl0ZWROYXR1cmFsLCBidXQgdGhlIHZhbHVlIGNhbm5vdCBiZSB6ZXJvLiBJdCBpcyBvbWl0dGVkIGZvciB1bm9yZGVyZWQgVmFyaWFibGVzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQWN0aW9uL2lucHV0Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpc1JlcGxhY2VBbGwiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iZmFsc2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgd2hldGhlciBleGlzdGluZyB2YWx1ZXMgb2YgdGhlIFZhcmlhYmxlIHNob3VsZCBiZSByZW1vdmVkIGJlZm9yZSBhZGRpbmcgdGhlIG5ldyB2YWx1ZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQnJvYWRjYXN0U2lnbmFsQWN0aW9uIiBlU3VwZXJUeXBlcz0iIy8vSW52b2NhdGlvbkFjdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBCcm9hZGNhc3RTaWduYWxBY3Rpb24gaXMgYW4gSW52b2NhdGlvbkFjdGlvbiB0aGF0IHRyYW5zbWl0cyBhIFNpZ25hbCBpbnN0YW5jZSB0byBhbGwgdGhlIHBvdGVudGlhbCB0YXJnZXQgb2JqZWN0cyBpbiB0aGUgc3lzdGVtLiBWYWx1ZXMgZnJvbSB0aGUgYXJndW1lbnQgSW5wdXRQaW5zIGFyZSB1c2VkIHRvIHByb3ZpZGUgdmFsdWVzIGZvciB0aGUgYXR0cmlidXRlcyBvZiB0aGUgU2lnbmFsLiBUaGUgcmVxdWVzdG9yIGNvbnRpbnVlcyBleGVjdXRpb24gaW1tZWRpYXRlbHkgYWZ0ZXIgdGhlIFNpZ25hbCBpbnN0YW5jZXMgYXJlIHNlbnQgb3V0IGFuZCBjYW5ub3QgcmVjZWl2ZSByZXBseSB2YWx1ZXMuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im51bWJlcl9vZl9hcmd1bWVudHMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJhcmd1bWVudC0+c2l6ZSgpID0gc2lnbmFsLmFsbEF0dHJpYnV0ZXMoKS0+c2l6ZSgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG51bWJlciBvZiBhcmd1bWVudCBJbnB1dFBpbnMgbXVzdCBiZSB0aGUgc2FtZSBhcyB0aGUgbnVtYmVyIG9mIGF0dHJpYnV0ZXMgaW4gdGhlIHNpZ25hbC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InR5cGVfb3JkZXJpbmdfbXVsdGlwbGljaXR5IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibGV0IGF0dHJpYnV0ZTogT3JkZXJlZFNldChQcm9wZXJ0eSkgPSBzaWduYWwuYWxsQXR0cmlidXRlcygpIGluJiN4RDsmI3hBO1NlcXVlbmNlezEuLmFyZ3VtZW50LT5zaXplKCl9LT5mb3JBbGwoaSB8ICYjeEQ7JiN4QTsmI3g5O2FyZ3VtZW50LT5hdChpKS50eXBlLmNvbmZvcm1zVG8oYXR0cmlidXRlLT5hdChpKS50eXBlKSBhbmQgJiN4RDsmI3hBOyYjeDk7YXJndW1lbnQtPmF0KGkpLmlzT3JkZXJlZCA9IGF0dHJpYnV0ZS0+YXQoaSkuaXNPcmRlcmVkIGFuZCYjeEQ7JiN4QTsmI3g5O2FyZ3VtZW50LT5hdChpKS5jb21wYXRpYmxlV2l0aChhdHRyaWJ1dGUtPmF0KGkpKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgdHlwZSwgb3JkZXJpbmcsIGFuZCBtdWx0aXBsaWNpdHkgb2YgYW4gYXJndW1lbnQgSW5wdXRQaW4gbXVzdCBiZSB0aGUgc2FtZSBhcyB0aGUgY29ycmVzcG9uZGluZyBhdHRyaWJ1dGUgb2YgdGhlIHNpZ25hbC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im5vX29ucG9ydCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im9uUG9ydD1udWxsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBCcm9hZGNhc2VTaWduYWxBY3Rpb24gbWF5IG5vdCBzcGVjaWZ5IG9uUG9ydC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InNpZ25hbCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9TaWduYWwiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgU2lnbmFsIHdob3NlIGluc3RhbmNlcyBhcmUgdG8gYmUgc2VudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSW52b2NhdGlvbkFjdGlvbiIgYWJzdHJhY3Q9InRydWUiIGVTdXBlclR5cGVzPSIjLy9BY3Rpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9Ikludm9jYXRpb25BY3Rpb24gaXMgYW4gYWJzdHJhY3QgY2xhc3MgZm9yIHRoZSB2YXJpb3VzIGFjdGlvbnMgdGhhdCByZXF1ZXN0IEJlaGF2aW9yIGludm9jYXRpb24uIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImFyZ3VtZW50IiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL0lucHV0UGluIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBJbnB1dFBpbnMgdGhhdCBwcm92aWRlIHRoZSBhcmd1bWVudCB2YWx1ZXMgcGFzc2VkIGluIHRoZSBpbnZvY2F0aW9uIHJlcXVlc3QuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9BY3Rpb24vaW5wdXQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im9uUG9ydCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9Qb3J0Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iRm9yIENhbGxPcGVyYXRpb25BY3Rpb25zLCBTZW5kU2lnbmFsQWN0aW9ucywgYW5kIFNlbmRPYmplY3RBY3Rpb25zLCBhbiBvcHRpb25hbCBQb3J0IG9mIHRoZSB0YXJnZXQgb2JqZWN0IHRocm91Z2ggd2hpY2ggdGhlIGludm9jYXRpb24gcmVxdWVzdCBpcyBzZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDYWxsQWN0aW9uIiBhYnN0cmFjdD0idHJ1ZSIgZVN1cGVyVHlwZXM9IiMvL0ludm9jYXRpb25BY3Rpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkNhbGxBY3Rpb24gaXMgYW4gYWJzdHJhY3QgY2xhc3MgZm9yIEFjdGlvbnMgdGhhdCBpbnZva2UgYSBCZWhhdmlvciB3aXRoIGdpdmVuIGFyZ3VtZW50IHZhbHVlcyBhbmQgKGlmIHRoZSBpbnZvY2F0aW9uIGlzIHN5bmNocm9ub3VzKSByZWNlaXZlIHJlcGx5IHZhbHVlcy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iYXJndW1lbnRfcGlucyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImxldCBwYXJhbWV0ZXI6IE9yZGVyZWRTZXQoUGFyYW1ldGVyKSA9IHNlbGYuaW5wdXRQYXJhbWV0ZXJzKCkgaW4mI3hEOyYjeEE7YXJndW1lbnQtPnNpemUoKSA9IHBhcmFtZXRlci0+c2l6ZSgpIGFuZCYjeEQ7JiN4QTtTZXF1ZW5jZXsxLi5hcmd1bWVudC0+c2l6ZSgpfS0+Zm9yQWxsKGkgfCAmI3hEOyYjeEE7JiN4OTthcmd1bWVudC0+YXQoaSkudHlwZS5jb25mb3Jtc1RvKHBhcmFtZXRlci0+YXQoaSkudHlwZSkgYW5kICYjeEQ7JiN4QTsmI3g5O2FyZ3VtZW50LT5hdChpKS5pc09yZGVyZWQgPSBwYXJhbWV0ZXItPmF0KGkpLmlzT3JkZXJlZCBhbmQmI3hEOyYjeEE7JiN4OTthcmd1bWVudC0+YXQoaSkuY29tcGF0aWJsZVdpdGgocGFyYW1ldGVyLT5hdChpKSkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG51bWJlciBvZiBhcmd1bWVudCBJbnB1dFBpbnMgbXVzdCBiZSB0aGUgc2FtZSBhcyB0aGUgbnVtYmVyIG9mIGlucHV0IChpbiBhbmQgaW5vdXQpIG93bmVkUGFyYW1ldGVycyBvZiB0aGUgY2FsbGVkIEJlaGF2aW9yIG9yIE9wZXJhdGlvbi4gVGhlIHR5cGUsIG9yZGVyaW5nIGFuZCBtdWx0aXBsaWNpdHkgb2YgZWFjaCBhcmd1bWVudCBJbnB1dFBpbiBtdXN0IGJlIGNvbnNpc3RlbnQgd2l0aCB0aGUgY29ycmVzcG9uZGluZyBpbnB1dCBQYXJhbWV0ZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJyZXN1bHRfcGlucyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImxldCBwYXJhbWV0ZXI6IE9yZGVyZWRTZXQoUGFyYW1ldGVyKSA9IHNlbGYub3V0cHV0UGFyYW1ldGVycygpIGluJiN4RDsmI3hBO3Jlc3VsdC0+c2l6ZSgpID0gcGFyYW1ldGVyLT5zaXplKCkgYW5kJiN4RDsmI3hBO1NlcXVlbmNlezEuLnJlc3VsdC0+c2l6ZSgpfS0+Zm9yQWxsKGkgfCAmI3hEOyYjeEE7JiN4OTtwYXJhbWV0ZXItPmF0KGkpLnR5cGUuY29uZm9ybXNUbyhyZXN1bHQtPmF0KGkpLnR5cGUpIGFuZCAmI3hEOyYjeEE7JiN4OTtwYXJhbWV0ZXItPmF0KGkpLmlzT3JkZXJlZCA9IHJlc3VsdC0+YXQoaSkuaXNPcmRlcmVkIGFuZCYjeEQ7JiN4QTsmI3g5O3BhcmFtZXRlci0+YXQoaSkuY29tcGF0aWJsZVdpdGgocmVzdWx0LT5hdChpKSkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG51bWJlciBvZiByZXN1bHQgT3V0cHV0UGlucyBtdXN0IGJlIHRoZSBzYW1lIGFzIHRoZSBudW1iZXIgb2Ygb3V0cHV0IChpbm91dCwgb3V0IGFuZCByZXR1cm4pIG93bmVkUGFyYW1ldGVycyBvZiB0aGUgY2FsbGVkIEJlaGF2aW9yIG9yIE9wZXJhdGlvbi4gVGhlIHR5cGUsIG9yZGVyaW5nIGFuZCBtdWx0aXBsaWNpdHkgb2YgZWFjaCByZXN1bHQgT3V0cHV0UGluIG11c3QgYmUgY29uc2lzdGVudCB3aXRoIHRoZSBjb3JyZXNwb25kaW5nIGlucHV0IFBhcmFtZXRlci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InN5bmNocm9ub3VzX2NhbGwiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJyZXN1bHQtPm5vdEVtcHR5KCkgaW1wbGllcyBpc1N5bmNocm9ub3VzIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iT25seSBzeW5jaHJvbm91cyBDYWxsQWN0aW9ucyBjYW4gaGF2ZSByZXN1bHQgT3V0cHV0UGlucy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlucHV0UGFyYW1ldGVycyIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9QYXJhbWV0ZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXR1cm4gdGhlIGluIGFuZCBpbm91dCBvd25lZFBhcmFtZXRlcnMgb2YgdGhlIEJlaGF2aW9yIG9yIE9wZXJhdGlvbiBiZWluZyBjYWxsZWQuIChUaGlzIG9wZXJhdGlvbiBpcyBhYnN0cmFjdCBhbmQgc2hvdWxkIGJlIG92ZXJyaWRkZW4gYnkgc3ViY2xhc3NlcyBvZiBDYWxsQWN0aW9uLikiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im91dHB1dFBhcmFtZXRlcnMiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUGFyYW1ldGVyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0dXJuIHRoZSBpbm91dCwgb3V0IGFuZCByZXR1cm4gb3duZWRQYXJhbWV0ZXJzIG9mIHRoZSBCZWhhdmlvciBvciBPcGVyYXRpb24gYmVpbmcgY2FsbGVkLiAoVGhpcyBvcGVyYXRpb24gaXMgYWJzdHJhY3QgYW5kIHNob3VsZCBiZSBvdmVycmlkZGVuIGJ5IHN1YmNsYXNzZXMgb2YgQ2FsbEFjdGlvbi4pIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpc1N5bmNocm9ub3VzIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGRlZmF1bHRWYWx1ZUxpdGVyYWw9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiB0cnVlLCB0aGUgY2FsbCBpcyBzeW5jaHJvbm91cyBhbmQgdGhlIGNhbGxlciB3YWl0cyBmb3IgY29tcGxldGlvbiBvZiB0aGUgaW52b2tlZCBCZWhhdmlvci4gSWYgZmFsc2UsIHRoZSBjYWxsIGlzIGFzeW5jaHJvbm91cyBhbmQgdGhlIGNhbGxlciBwcm9jZWVkcyBpbW1lZGlhdGVseSBhbmQgY2Fubm90IHJlY2VpdmUgcmV0dXJuIHZhbHVlcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVzdWx0IiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL091dHB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgT3V0cHV0UGlucyBvbiB3aGljaCB0aGUgcmVwbHkgdmFsdWVzIGZyb20gdGhlIGludm9jYXRpb24gYXJlIHBsYWNlZCAoaWYgdGhlIGNhbGwgaXMgc3luY2hyb25vdXMpLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQWN0aW9uL291dHB1dCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ2FsbEJlaGF2aW9yQWN0aW9uIiBlU3VwZXJUeXBlcz0iIy8vQ2FsbEFjdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBDYWxsQmVoYXZpb3JBY3Rpb24gaXMgYSBDYWxsQWN0aW9uIHRoYXQgaW52b2tlcyBhIEJlaGF2aW9yIGRpcmVjdGx5LiBUaGUgYXJndW1lbnQgdmFsdWVzIG9mIHRoZSBDYWxsQmVoYXZpb3JBY3Rpb24gYXJlIHBhc3NlZCBvbiB0aGUgaW5wdXQgUGFyYW1ldGVycyBvZiB0aGUgaW52b2tlZCBCZWhhdmlvci4gSWYgdGhlIGNhbGwgaXMgc3luY2hyb25vdXMsIHRoZSBleGVjdXRpb24gb2YgdGhlIENhbGxCZWhhdmlvckFjdGlvbiB3YWl0cyB1bnRpbCB0aGUgZXhlY3V0aW9uIG9mIHRoZSBpbnZva2VkIEJlaGF2aW9yIGNvbXBsZXRlcyBhbmQgdGhlIHZhbHVlcyBvZiBvdXRwdXQgUGFyYW1ldGVycyBvZiB0aGUgQmVoYXZpb3IgYXJlIHBsYWNlZCBvbiB0aGUgcmVzdWx0IE91dHB1dFBpbnMuIElmIHRoZSBjYWxsIGlzIGFzeW5jaHJvbm91cywgdGhlIENhbGxCZWhhdmlvckFjdGlvbiBjb21wbGV0ZXMgaW1tZWRpYXRlbHkgYW5kIG5vIHJlc3VsdHMgdmFsdWVzIGNhbiBiZSBwcm92aWRlZC4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iZHVwbGljYXRlcyI+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIG5hbWU9Im91dHB1dFBhcmFtZXRlcnMiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICAgIGVUeXBlPSIjLy9QYXJhbWV0ZXIiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0dXJuIHRoZSBpbm91dCwgb3V0IGFuZCByZXR1cm4gb3duZWRQYXJhbWV0ZXJzIG9mIHRoZSBCZWhhdmlvciBiZWluZyBjYWxsZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9DYWxsQWN0aW9uL291dHB1dFBhcmFtZXRlcnMiLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iYmVoYXZpb3Iub3V0cHV0UGFyYW1ldGVycygpIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9jb250ZW50cz4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgbmFtZT0iaW5wdXRQYXJhbWV0ZXJzIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgICBlVHlwZT0iIy8vUGFyYW1ldGVyIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHVybiB0aGUgaW4gYW5kIGlub3V0IG93bmVkUGFyYW1ldGVycyBvZiB0aGUgQmVoYXZpb3IgYmVpbmcgY2FsbGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vQ2FsbEFjdGlvbi9pbnB1dFBhcmFtZXRlcnMiLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iYmVoYXZpb3IuaW5wdXRQYXJhbWV0ZXJzKCkiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2NvbnRlbnRzPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJub19vbnBvcnQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJvblBvcnQ9bnVsbCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgQ2FsbEJlaGF2aW9yQWN0aW9uIG1heSBub3Qgc3BlY2lmeSBvblBvcnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJiZWhhdmlvciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9CZWhhdmlvciI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBCZWhhdmlvciBiZWluZyBpbnZva2VkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDYWxsT3BlcmF0aW9uQWN0aW9uIiBlU3VwZXJUeXBlcz0iIy8vQ2FsbEFjdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBDYWxsT3BlcmF0aW9uQWN0aW9uIGlzIGEgQ2FsbEFjdGlvbiB0aGF0IHRyYW5zbWl0cyBhbiBPcGVyYXRpb24gY2FsbCByZXF1ZXN0IHRvIHRoZSB0YXJnZXQgb2JqZWN0LCB3aGVyZSBpdCBtYXkgY2F1c2UgdGhlIGludm9jYXRpb24gb2YgYXNzb2NpYXRlZCBCZWhhdmlvci4gVGhlIGFyZ3VtZW50IHZhbHVlcyBvZiB0aGUgQ2FsbE9wZXJhdGlvbkFjdGlvbiBhcmUgcGFzc2VkIG9uIHRoZSBpbnB1dCBQYXJhbWV0ZXJzIG9mIHRoZSBPcGVyYXRpb24uIElmIGNhbGwgaXMgc3luY2hyb25vdXMsIHRoZSBleGVjdXRpb24gb2YgdGhlIENhbGxPcGVyYXRpb25BY3Rpb24gd2FpdHMgdW50aWwgdGhlIGV4ZWN1dGlvbiBvZiB0aGUgaW52b2tlZCBPcGVyYXRpb24gY29tcGxldGVzIGFuZCB0aGUgdmFsdWVzIG9mIG91dHB1dCBQYXJhbWV0ZXJzIG9mIHRoZSBPcGVyYXRpb24gYXJlIHBsYWNlZCBvbiB0aGUgcmVzdWx0IE91dHB1dFBpbnMuIElmIHRoZSBjYWxsIGlzIGFzeW5jaHJvbm91cywgdGhlIENhbGxPcGVyYXRpb25BY3Rpb24gY29tcGxldGVzIGltbWVkaWF0ZWx5IGFuZCBubyByZXN1bHRzIHZhbHVlcyBjYW4gYmUgcHJvdmlkZWQuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9ImR1cGxpY2F0ZXMiPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBuYW1lPSJvdXRwdXRQYXJhbWV0ZXJzIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgICBlVHlwZT0iIy8vUGFyYW1ldGVyIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHVybiB0aGUgaW5vdXQsIG91dCBhbmQgcmV0dXJuIG93bmVkUGFyYW1ldGVycyBvZiB0aGUgT3BlcmF0aW9uIGJlaW5nIGNhbGxlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL0NhbGxBY3Rpb24vb3V0cHV0UGFyYW1ldGVycyIvPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJvcGVyYXRpb24ub3V0cHV0UGFyYW1ldGVycygpIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9jb250ZW50cz4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgbmFtZT0iaW5wdXRQYXJhbWV0ZXJzIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgICBlVHlwZT0iIy8vUGFyYW1ldGVyIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHVybiB0aGUgaW4gYW5kIGlub3V0IG93bmVkUGFyYW1ldGVycyBvZiB0aGUgT3BlcmF0aW9uIGJlaW5nIGNhbGxlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL0NhbGxBY3Rpb24vaW5wdXRQYXJhbWV0ZXJzIi8+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im9wZXJhdGlvbi5pbnB1dFBhcmFtZXRlcnMoKSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvY29udGVudHM+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InR5cGVfdGFyZ2V0X3BpbiIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlmIG9uUG9ydD1udWxsIHRoZW4gIHRhcmdldC50eXBlLm9jbEFzVHlwZShDbGFzc2lmaWVyKS5hbGxGZWF0dXJlcygpLT5pbmNsdWRlcyhvcGVyYXRpb24pJiN4RDsmI3hBO2Vsc2UgdGFyZ2V0LnR5cGUub2NsQXNUeXBlKENsYXNzaWZpZXIpLmFsbEZlYXR1cmVzKCktPmluY2x1ZGVzKG9uUG9ydCkgYW5kIG9uUG9ydC5wcm92aWRlZC0+dW5pb24ob25Qb3J0LnJlcXVpcmVkKS5hbGxGZWF0dXJlcygpLT5pbmNsdWRlcyhvcGVyYXRpb24pJiN4RDsmI3hBO2VuZGlmIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgb25Qb3J0IGhhcyBubyB2YWx1ZSwgdGhlIG9wZXJhdGlvbiBtdXN0IGJlIGFuIG93bmVkIG9yIGluaGVyaXRlZCBmZWF0dXJlIG9mIHRoZSB0eXBlIG9mIHRoZSB0YXJnZXQgSW5wdXRQaW4sIG90aGVyd2lzZSB0aGUgUG9ydCBnaXZlbiBieSBvblBvcnQgbXVzdCBiZSBhbiBvd25lZCBvciBpbmhlcml0ZWQgZmVhdHVyZSBvZiB0aGUgdHlwZSBvZiB0aGUgdGFyZ2V0IElucHV0UGluLCBhbmQgdGhlIFBvcnQgbXVzdCBoYXZlIGEgcmVxdWlyZWQgb3IgcHJvdmlkZWQgSW50ZXJmYWNlIHdpdGggdGhlIG9wZXJhdGlvbiBhcyBhbiBvd25lZCBvciBpbmhlcml0ZWQgZmVhdHVyZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im9wZXJhdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9PcGVyYXRpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgT3BlcmF0aW9uIGJlaW5nIGludm9rZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InRhcmdldCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9JbnB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgSW5wdXRQaW4gdGhhdCBwcm92aWRlcyB0aGUgdGFyZ2V0IG9iamVjdCB0byB3aGljaCB0aGUgT3BlcmF0aW9uIGNhbGwgcmVxdWVzdCBpcyBzZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQWN0aW9uL2lucHV0Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDbGF1c2UiIGVTdXBlclR5cGVzPSIjLy9FbGVtZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIENsYXVzZSBpcyBhbiBFbGVtZW50IHRoYXQgcmVwcmVzZW50cyBhIHNpbmdsZSBicmFuY2ggb2YgYSBDb25kaXRpb25hbE5vZGUsIGluY2x1ZGluZyBhIHRlc3QgYW5kIGEgYm9keSBzZWN0aW9uLiBUaGUgYm9keSBzZWN0aW9uIGlzIGV4ZWN1dGVkIG9ubHkgaWYgKGJ1dCBub3QgbmVjZXNzYXJpbHkgaWYpIHRoZSB0ZXN0IHNlY3Rpb24gZXZhbHVhdGVzIHRvIHRydWUuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImJvZHlfb3V0cHV0X3BpbnMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJfJ2JvZHknLm9jbEFzVHlwZShBY3Rpb24pLmFsbEFjdGlvbnMoKS5vdXRwdXQtPmluY2x1ZGVzQWxsKGJvZHlPdXRwdXQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGJvZHlPdXRwdXQgUGlucyBhcmUgT3V0cHV0UGlucyBvbiBBY3Rpb25zIGluIHRoZSBib2R5IG9mIHRoZSBDbGF1c2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJkZWNpZGVyX291dHB1dCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InRlc3Qub2NsQXNUeXBlKEFjdGlvbikuYWxsQWN0aW9ucygpLm91dHB1dC0+aW5jbHVkZXMoZGVjaWRlcikgYW5kJiN4RDsmI3hBO2RlY2lkZXIudHlwZSA9IEJvb2xlYW4gYW5kJiN4RDsmI3hBO2RlY2lkZXIuaXMoMSwxKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBkZWNpZGVyIFBpbiBtdXN0IGJlIG9uIGFuIEFjdGlvbiBpbiB0aGUgdGVzdCBzZWN0aW9uIG9mIHRoZSBDbGF1c2UgYW5kIG11c3QgYmUgb2YgdHlwZSBCb29sZWFuIHdpdGggbXVsdGlwbGljaXR5IDEuLjEuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJ0ZXN0X2FuZF9ib2R5IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0idGVzdC0+aW50ZXJzZWN0aW9uKF8nYm9keScpLT5pc0VtcHR5KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgdGVzdCBhbmQgYm9keSBwYXJ0cyBvZiBhIENvbmRpdGlvbmFsTm9kZSBtdXN0IGJlIGRpc2pvaW50IHdpdGggZWFjaCBvdGhlci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImJvZHkiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL0V4ZWN1dGFibGVOb2RlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHNldCBvZiBFeGVjdXRhYmxlTm9kZXMgdGhhdCBhcmUgZXhlY3V0ZWQgaWYgdGhlIHRlc3QgZXZhbHVhdGVzIHRvIHRydWUgYW5kIHRoZSBDbGF1c2UgaXMgY2hvc2VuIG92ZXIgb3RoZXIgQ2xhdXNlcyB3aXRoaW4gdGhlIENvbmRpdGlvbmFsTm9kZSB0aGF0IGFsc28gaGF2ZSB0ZXN0cyB0aGF0IGV2YWx1YXRlIHRvIHRydWUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImJvZHlPdXRwdXQiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vT3V0cHV0UGluIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIE91dHB1dFBpbnMgb24gQWN0aW9ucyB3aXRoaW4gdGhlIGJvZHkgc2VjdGlvbiB3aG9zZSB2YWx1ZXMgYXJlIG1vdmVkIHRvIHRoZSByZXN1bHQgT3V0cHV0UGlucyBvZiB0aGUgY29udGFpbmluZyBDb25kaXRpb25hbE5vZGUgYWZ0ZXIgZXhlY3V0aW9uIG9mIHRoZSBib2R5LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJkZWNpZGVyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL091dHB1dFBpbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIE91dHB1dFBpbiBvbiBhbiBBY3Rpb24gaW4gdGhlIHRlc3Qgc2VjdGlvbiB3aG9zZSBCb29sZWFuIHZhbHVlIGRldGVybWluZXMgdGhlIHJlc3VsdCBvZiB0aGUgdGVzdC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icHJlZGVjZXNzb3JDbGF1c2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0NsYXVzZSIgZU9wcG9zaXRlPSIjLy9DbGF1c2Uvc3VjY2Vzc29yQ2xhdXNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBzZXQgb2YgQ2xhdXNlcyB3aG9zZSB0ZXN0cyBtdXN0IGFsbCBldmFsdWF0ZSB0byBmYWxzZSBiZWZvcmUgdGhpcyBDbGF1c2UgY2FuIGV2YWx1YXRlIGl0cyB0ZXN0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJzdWNjZXNzb3JDbGF1c2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0NsYXVzZSIgZU9wcG9zaXRlPSIjLy9DbGF1c2UvcHJlZGVjZXNzb3JDbGF1c2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIHNldCBvZiBDbGF1c2VzIHRoYXQgbWF5IG5vdCBldmFsdWF0ZSB0aGVpciB0ZXN0cyB1bmxlc3MgdGhlIHRlc3QgZm9yIHRoaXMgQ2xhdXNlIGV2YWx1YXRlcyB0byBmYWxzZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0idGVzdCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vRXhlY3V0YWJsZU5vZGUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc2V0IG9mIEV4ZWN1dGFibGVOb2RlcyB0aGF0IGFyZSBleGVjdXRlZCBpbiBvcmRlciB0byBwcm92aWRlIGEgdGVzdCByZXN1bHQgZm9yIHRoZSBDbGF1c2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNsZWFyQXNzb2NpYXRpb25BY3Rpb24iIGVTdXBlclR5cGVzPSIjLy9BY3Rpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgQ2xlYXJBc3NvY2lhdGlvbkFjdGlvbiBpcyBhbiBBY3Rpb24gdGhhdCBkZXN0cm95cyBhbGwgbGlua3Mgb2YgYW4gQXNzb2NpYXRpb24gaW4gd2hpY2ggYSBwYXJ0aWN1bGFyIG9iamVjdCBwYXJ0aWNpcGF0ZXMuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im11bHRpcGxpY2l0eSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im9iamVjdC5pcygxLDEpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG11bHRpcGxpY2l0eSBvZiB0aGUgb2JqZWN0IElucHV0UGluIGlzIDEuLjEuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzYW1lX3R5cGUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJhc3NvY2lhdGlvbi5tZW1iZXJFbmQtPmV4aXN0cyhzZWxmLm9iamVjdC50eXBlLmNvbmZvcm1zVG8odHlwZSkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHR5cGUgb2YgdGhlIElucHV0UGluIG11c3QgY29uZm9ybSB0byB0aGUgdHlwZSBvZiBhdCBsZWFzdCBvbmUgb2YgdGhlIG1lbWJlckVuZHMgb2YgdGhlIGFzc29jaWF0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iYXNzb2NpYXRpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vQXNzb2NpYXRpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgQXNzb2NpYXRpb24gdG8gYmUgY2xlYXJlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib2JqZWN0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0lucHV0UGluIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBJbnB1dFBpbiB0aGF0IGdpdmVzIHRoZSBvYmplY3Qgd2hvc2UgcGFydGljaXBhdGlvbiBpbiB0aGUgQXNzb2NpYXRpb24gaXMgdG8gYmUgY2xlYXJlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0FjdGlvbi9pbnB1dCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ2xlYXJTdHJ1Y3R1cmFsRmVhdHVyZUFjdGlvbiIgZVN1cGVyVHlwZXM9IiMvL1N0cnVjdHVyYWxGZWF0dXJlQWN0aW9uIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIENsZWFyU3RydWN0dXJhbEZlYXR1cmVBY3Rpb24gaXMgYSBTdHJ1Y3R1cmFsRmVhdHVyZUFjdGlvbiB0aGF0IHJlbW92ZXMgYWxsIHZhbHVlcyBvZiBhIFN0cnVjdHVyYWxGZWF0dXJlLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJ0eXBlX29mX3Jlc3VsdCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InJlc3VsdCZsdDs+bnVsbCBpbXBsaWVzIHJlc3VsdC50eXBlID0gb2JqZWN0LnR5cGUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgdHlwZSBvZiB0aGUgcmVzdWx0IE91dHB1dFBpbiBpcyB0aGUgc2FtZSBhcyB0aGUgdHlwZSBvZiB0aGUgaW5oZXJpdGVkIG9iamVjdCBJbnB1dFBpbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im11bHRpcGxpY2l0eV9vZl9yZXN1bHQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJyZXN1bHQmbHQ7Pm51bGwgaW1wbGllcyByZXN1bHQuaXMoMSwxKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBtdWx0aXBsaWNpdHkgb2YgdGhlIHJlc3VsdCBPdXRwdXRQaW4gbXVzdCBiZSAxLi4xLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVzdWx0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL091dHB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgT3V0cHV0UGluIG9uIHdoaWNoIGlzIHB1dCB0aGUgaW5wdXQgb2JqZWN0IGFzIG1vZGlmaWVkIGJ5IHRoZSBDbGVhclN0cnVjdHVyYWxGZWF0dXJlQWN0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQWN0aW9uL291dHB1dCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ2xlYXJWYXJpYWJsZUFjdGlvbiIgZVN1cGVyVHlwZXM9IiMvL1ZhcmlhYmxlQWN0aW9uIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIENsZWFyVmFyaWFibGVBY3Rpb24gaXMgYSBWYXJpYWJsZUFjdGlvbiB0aGF0IHJlbW92ZXMgYWxsIHZhbHVlcyBvZiBhIFZhcmlhYmxlLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb25kaXRpb25hbE5vZGUiIGVTdXBlclR5cGVzPSIjLy9TdHJ1Y3R1cmVkQWN0aXZpdHlOb2RlIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIENvbmRpdGlvbmFsTm9kZSBpcyBhIFN0cnVjdHVyZWRBY3Rpdml0eU5vZGUgdGhhdCBjaG9vc2VzIG9uZSBhbW9uZyBzb21lIG51bWJlciBvZiBhbHRlcm5hdGl2ZSBjb2xsZWN0aW9ucyBvZiBFeGVjdXRhYmxlTm9kZXMgdG8gZXhlY3V0ZS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iZHVwbGljYXRlcyI+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIG5hbWU9ImFsbEFjdGlvbnMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgICBlVHlwZT0iIy8vQWN0aW9uIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHVybiBvbmx5IHRoaXMgQ29uZGl0aW9uYWxOb2RlLiBUaGlzIHByZXZlbnRzIEFjdGlvbnMgd2l0aGluIHRoZSBDb25kaXRpb25hbE5vZGUgZnJvbSBoYXZpbmcgdGhlaXIgT3V0cHV0UGlucyB1c2VkIGFzIGJvZHlPdXRwdXRzIG9yIGRlY2lkZXIgUGlucyBpbiBjb250YWluaW5nIExvb3BOb2RlcyBvciBDb25kaXRpb25hbE5vZGVzLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vQWN0aW9uL2FsbEFjdGlvbnMgIy8vU3RydWN0dXJlZEFjdGl2aXR5Tm9kZS8lZHVwbGljYXRlcyUvYWxsQWN0aW9ucyIvPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzZWxmLT5hc1NldCgpIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9jb250ZW50cz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0icmVzdWx0X25vX2luY29taW5nIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icmVzdWx0LmluY29taW5nLT5pc0VtcHR5KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcmVzdWx0IE91dHB1dFBpbnMgaGF2ZSBubyBpbmNvbWluZyBlZGdlcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im5vX2lucHV0X3BpbnMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpbnB1dC0+aXNFbXB0eSgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBDb25kaXRpb25hbE5vZGUgaGFzIG5vIElucHV0UGlucy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im9uZV9jbGF1c2Vfd2l0aF9leGVjdXRhYmxlX25vZGUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJub2RlLT5zZWxlY3Qob2NsSXNLaW5kT2YoRXhlY3V0YWJsZU5vZGUpKS5vY2xBc1R5cGUoRXhlY3V0YWJsZU5vZGUpLT5mb3JBbGwobiB8ICYjeEQ7JiN4QTsmI3g5O3NlbGYuY2xhdXNlLT5zZWxlY3QodGVzdC0+dW5pb24oXydib2R5JyktPmluY2x1ZGVzKG4pKS0+c2l6ZSgpPTEpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iTm8gRXhlY3V0YWJsZU5vZGUgaW4gdGhlIENvbmRpdGlvbk5vZGUgbWF5IGFwcGVhciBpbiB0aGUgdGVzdCBvciBib2R5IHBhcnQgb2YgbW9yZSB0aGFuIG9uZSBjbGF1c2Ugb2YgYSBDb25kaXRpb25hbE5vZGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJtYXRjaGluZ19vdXRwdXRfcGlucyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImNsYXVzZS0+Zm9yQWxsKCYjeEQ7JiN4QTsmI3g5O2JvZHlPdXRwdXQtPnNpemUoKT1zZWxmLnJlc3VsdC0+c2l6ZSgpIGFuZCYjeEQ7JiN4QTsmI3g5O1NlcXVlbmNlezEuLnNlbGYucmVzdWx0LT5zaXplKCl9LT5mb3JBbGwoaSB8JiN4RDsmI3hBOyYjeDk7JiN4OTtib2R5T3V0cHV0LT5hdChpKS50eXBlLmNvbmZvcm1zVG8ocmVzdWx0LT5hdChpKS50eXBlKSBhbmQmI3hEOyYjeEE7JiN4OTsmI3g5O2JvZHlPdXRwdXQtPmF0KGkpLmlzT3JkZXJlZCA9IHJlc3VsdC0+YXQoaSkuaXNPcmRlcmVkIGFuZCYjeEQ7JiN4QTsmI3g5OyYjeDk7Ym9keU91dHB1dC0+YXQoaSkuaXNVbmlxdWUgPSByZXN1bHQtPmF0KGkpLmlzVW5pcXVlIGFuZCYjeEQ7JiN4QTsmI3g5OyYjeDk7Ym9keU91dHB1dC0+YXQoaSkuY29tcGF0aWJsZVdpdGgocmVzdWx0LT5hdChpKSkpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkVhY2ggY2xhdXNlIG9mIGEgQ29uZGl0aW9uYWxOb2RlIG11c3QgaGF2ZSB0aGUgc2FtZSBudW1iZXIgb2YgYm9keU91dHB1dCBwaW5zIGFzIHRoZSBDb25kaXRpb25hbE5vZGUgaGFzIHJlc3VsdCBPdXRwdXRQaW5zLCBhbmQgZWFjaCBjbGF1c2UgYm9keU91dHB1dCBQaW4gbXVzdCBiZSBjb21wYXRpYmxlIHdpdGggdGhlIGNvcnJlc3BvbmRpbmcgcmVzdWx0IE91dHB1dFBpbiAoYnkgcG9zaXRpb25hbCBvcmRlcikgaW4gdHlwZSwgbXVsdGlwbGljaXR5LCBvcmRlcmluZywgYW5kIHVuaXF1ZW5lc3MuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJleGVjdXRhYmxlX25vZGVzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iY2xhdXNlLnRlc3QtPnVuaW9uKGNsYXVzZS5fJ2JvZHknKSA9IG5vZGUtPnNlbGVjdChvY2xJc0tpbmRPZihFeGVjdXRhYmxlTm9kZSkpLm9jbEFzVHlwZShFeGVjdXRhYmxlTm9kZSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgdW5pb24gb2YgdGhlIEV4ZWN1dGFibGVOb2RlcyBpbiB0aGUgdGVzdCBhbmQgYm9keSBwYXJ0cyBvZiBhbGwgY2xhdXNlcyBtdXN0IGJlIHRoZSBzYW1lIGFzIHRoZSBzdWJzZXQgb2Ygbm9kZXMgY29udGFpbmVkIGluIHRoZSBDb25kaXRpb25hbE5vZGUgKGNvbnNpZGVyZWQgYXMgYSBTdHJ1Y3R1cmVkQWN0aXZpdHlOb2RlKSB0aGF0IGFyZSBFeGVjdXRhYmxlTm9kZXMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjbGF1c2Vfbm9fcHJlZGVjZXNzb3IiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJjbGF1c2UtPmNsb3N1cmUocHJlZGVjZXNzb3JDbGF1c2UpLT5pbnRlcnNlY3Rpb24oY2xhdXNlKS0+aXNFbXB0eSgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iTm8gdHdvIGNsYXVzZXMgd2l0aGluIGEgQ29uZGl0aW9uYWxOb2RlIG1heSBiZSBwcmVkZWNlc3NvckNsYXVzZXMgb2YgZWFjaCBvdGhlciwgZWl0aGVyIGRpcmVjdGx5IG9yIGluZGlyZWN0bHkuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJjbGF1c2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0NsYXVzZSIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc2V0IG9mIENsYXVzZXMgY29tcG9zaW5nIHRoZSBDb25kaXRpb25hbE5vZGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNBc3N1cmVkIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGRlZmF1bHRWYWx1ZUxpdGVyYWw9ImZhbHNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgdHJ1ZSwgdGhlIG1vZGVsZXIgYXNzZXJ0cyB0aGF0IHRoZSB0ZXN0IGZvciBhdCBsZWFzdCBvbmUgQ2xhdXNlIG9mIHRoZSBDb25kaXRpb25hbE5vZGUgd2lsbCBzdWNjZWVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpc0RldGVybWluYXRlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGRlZmF1bHRWYWx1ZUxpdGVyYWw9ImZhbHNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgdHJ1ZSwgdGhlIG1vZGVsZXIgYXNzZXJ0cyB0aGF0IHRoZSB0ZXN0IGZvciBhdCBtb3N0IG9uZSBDbGF1c2Ugb2YgdGhlIENvbmRpdGlvbmFsTm9kZSB3aWxsIHN1Y2NlZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InJlc3VsdCIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9PdXRwdXRQaW4iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIE91dHB1dFBpbnMgdGhhdCBvbnRvIHdoaWNoIGFyZSBtb3ZlZCB2YWx1ZXMgZnJvbSB0aGUgYm9keU91dHB1dHMgb2YgdGhlIENsYXVzZSBzZWxlY3RlZCBmb3IgZXhlY3V0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9TdHJ1Y3R1cmVkQWN0aXZpdHlOb2RlL3N0cnVjdHVyZWROb2RlT3V0cHV0Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDcmVhdGVMaW5rQWN0aW9uIiBlU3VwZXJUeXBlcz0iIy8vV3JpdGVMaW5rQWN0aW9uIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIENyZWF0ZUxpbmtBY3Rpb24gaXMgYSBXcml0ZUxpbmtBY3Rpb24gZm9yIGNyZWF0aW5nIGxpbmtzLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJkdXBsaWNhdGVzIj4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZW5kRGF0YSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjIiCisgICAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9MaW5rRW5kQ3JlYXRpb25EYXRhIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgTGlua0VuZERhdGEgdGhhdCBzcGVjaWZpZXMgdGhlIHZhbHVlcyB0byBiZSBwbGFjZWQgb24gdGhlIEFzc29jaWF0aW9uIGVuZHMgZm9yIHRoZSBuZXcgbGluay4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL0xpbmtBY3Rpb24vZW5kRGF0YSIvPgorICAgICAgPC9jb250ZW50cz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iYXNzb2NpYXRpb25fbm90X2Fic3RyYWN0IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibm90IHNlbGYuYXNzb2NpYXRpb24oKS5pc0Fic3RyYWN0Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIEFzc29jaWF0aW9uIGNhbm5vdCBiZSBhbiBhYnN0cmFjdCBDbGFzc2lmaWVyLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iTGlua0VuZENyZWF0aW9uRGF0YSIgZVN1cGVyVHlwZXM9IiMvL0xpbmtFbmREYXRhIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJMaW5rRW5kQ3JlYXRpb25EYXRhIGlzIExpbmtFbmREYXRhIHVzZWQgdG8gcHJvdmlkZSB2YWx1ZXMgZm9yIG9uZSBlbmQgb2YgYSBsaW5rIHRvIGJlIGNyZWF0ZWQgYnkgYSBDcmVhdGVMaW5rQWN0aW9uLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJkdXBsaWNhdGVzIj4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgbmFtZT0iYWxsUGlucyIgb3JkZXJlZD0iZmFsc2UiIHVuaXF1ZT0iZmFsc2UiCisgICAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9JbnB1dFBpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBZGRzIHRoZSBpbnNlcnRBdCBJbnB1dFBpbiAoaWYgYW55KSB0byB0aGUgc2V0IG9mIGFsbCBQaW5zLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vTGlua0VuZERhdGEvYWxsUGlucyIvPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzZWxmLkxpbmtFbmREYXRhOjphbGxQaW5zKCktPmluY2x1ZGluZyhpbnNlcnRBdCkiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2NvbnRlbnRzPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpbnNlcnRBdF9waW4iIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpZiAgbm90IGVuZC5pc09yZGVyZWQmI3hBO3RoZW4gaW5zZXJ0QXQgPSBudWxsJiN4QTtlbHNlJiN4QTsmI3g5O25vdCBpc1JlcGxhY2VBbGw9ZmFsc2UgaW1wbGllcyYjeEE7JiN4OTtpbnNlcnRBdCAmbHQ7PiBudWxsIGFuZCBpbnNlcnRBdC0+Zm9yQWxsKHR5cGU9VW5saW1pdGVkTmF0dXJhbCBhbmQgaXMoMSwxKSkmI3hBO2VuZGlmIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iTGlua0VuZENyZWF0aW9uRGF0YSBmb3Igb3JkZXJlZCBBc3NvY2lhdGlvbiBlbmRzIG11c3QgaGF2ZSBhIHNpbmdsZSBpbnNlcnRBdCBJbnB1dFBpbiBmb3IgdGhlIGluc2VydGlvbiBwb2ludCB3aXRoIHR5cGUgVW5saW1pdGVkTmF0dXJhbCBhbmQgbXVsdGlwbGljaXR5IG9mIDEuLjEsIGlmIGlzUmVwbGFjZUFsbD1mYWxzZSwgYW5kIG11c3QgaGF2ZSBubyBJbnB1dFBpbiBmb3IgdGhlIGluc2VydGlvbiBwb2ludCB3aGVuIHRoZSBhc3NvY2lhdGlvbiBlbmRzIGFyZSB1bm9yZGVyZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJpbnNlcnRBdCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9JbnB1dFBpbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkZvciBvcmRlcmVkIEFzc29jaWF0aW9uIGVuZHMsIHRoZSBJbnB1dFBpbiB0aGF0IHByb3ZpZGVzIHRoZSBwb3NpdGlvbiB3aGVyZSB0aGUgbmV3IGxpbmsgc2hvdWxkIGJlIGluc2VydGVkIG9yIHdoZXJlIGFuIGV4aXN0aW5nIGxpbmsgc2hvdWxkIGJlIG1vdmVkIHRvLiBUaGUgdHlwZSBvZiB0aGUgaW5zZXJ0QXQgSW5wdXRQaW4gaXMgVW5saW1pdGVkTmF0dXJhbCwgYnV0IHRoZSBpbnB1dCBjYW5ub3QgYmUgemVyby4gSXQgaXMgb21pdHRlZCBmb3IgQXNzb2NpYXRpb24gZW5kcyB0aGF0IGFyZSBub3Qgb3JkZXJlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNSZXBsYWNlQWxsIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGRlZmF1bHRWYWx1ZUxpdGVyYWw9ImZhbHNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iU3BlY2lmaWVzIHdoZXRoZXIgdGhlIGV4aXN0aW5nIGxpbmtzIGVtYW5hdGluZyBmcm9tIHRoZSBvYmplY3Qgb24gdGhpcyBlbmQgc2hvdWxkIGJlIGRlc3Ryb3llZCBiZWZvcmUgY3JlYXRpbmcgYSBuZXcgbGluay4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ3JlYXRlTGlua09iamVjdEFjdGlvbiIgZVN1cGVyVHlwZXM9IiMvL0NyZWF0ZUxpbmtBY3Rpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgQ3JlYXRlTGlua09iamVjdEFjdGlvbiBpcyBhIENyZWF0ZUxpbmtBY3Rpb24gZm9yIGNyZWF0aW5nIGxpbmsgb2JqZWN0cyAoQXNzb2NpYXRpb25DbGFzc2UgaW5zdGFuY2VzKS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibXVsdGlwbGljaXR5IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icmVzdWx0LmlzKDEsMSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbXVsdGlwbGljaXR5IG9mIHRoZSBPdXRwdXRQaW4gaXMgMS4uMS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InR5cGVfb2ZfcmVzdWx0IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icmVzdWx0LnR5cGUgPSBhc3NvY2lhdGlvbigpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHR5cGUgb2YgdGhlIHJlc3VsdCBPdXRwdXRQaW4gbXVzdCBiZSB0aGUgc2FtZSBhcyB0aGUgQXNzb2NpYXRpb24gb2YgdGhlIENyZWF0ZUxpbmtPYmplY3RBY3Rpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJhc3NvY2lhdGlvbl9jbGFzcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InNlbGYuYXNzb2NpYXRpb24oKS5vY2xJc0tpbmRPZihBc3NvY2lhdGlvbkNsYXNzKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBBc3NvY2lhdGlvbiBtdXN0IGJlIGFuIEFzc29jaWF0aW9uQ2xhc3MuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyZXN1bHQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vT3V0cHV0UGluIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBvdXRwdXQgcGluIG9uIHdoaWNoIHRoZSBuZXdseSBjcmVhdGVkIGxpbmsgb2JqZWN0IGlzIHBsYWNlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0FjdGlvbi9vdXRwdXQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNyZWF0ZU9iamVjdEFjdGlvbiIgZVN1cGVyVHlwZXM9IiMvL0FjdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBDcmVhdGVPYmplY3RBY3Rpb24gaXMgYW4gQWN0aW9uIHRoYXQgY3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgc3BlY2lmaWVkIENsYXNzaWZpZXIuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImNsYXNzaWZpZXJfbm90X2Fic3RyYWN0IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibm90IGNsYXNzaWZpZXIuaXNBYnN0cmFjdCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjbGFzc2lmaWVyIGNhbm5vdCBiZSBhYnN0cmFjdC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im11bHRpcGxpY2l0eSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InJlc3VsdC5pcygxLDEpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG11bHRpcGxpY2l0eSBvZiB0aGUgcmVzdWx0IE91dHB1dFBpbiBpcyAxLi4xLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY2xhc3NpZmllcl9ub3RfYXNzb2NpYXRpb25fY2xhc3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJub3QgY2xhc3NpZmllci5vY2xJc0tpbmRPZihBc3NvY2lhdGlvbkNsYXNzKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjbGFzc2lmaWVyIGNhbm5vdCBiZSBhbiBBc3NvY2lhdGlvbkNsYXNzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ic2FtZV90eXBlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icmVzdWx0LnR5cGUgPSBjbGFzc2lmaWVyIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHR5cGUgb2YgdGhlIHJlc3VsdCBPdXRwdXRQaW4gbXVzdCBiZSB0aGUgc2FtZSBhcyB0aGUgY2xhc3NpZmllciBvZiB0aGUgQ3JlYXRlT2JqZWN0QWN0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iY2xhc3NpZmllciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9DbGFzc2lmaWVyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIENsYXNzaWZpZXIgdG8gYmUgaW5zdGFudGlhdGVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyZXN1bHQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vT3V0cHV0UGluIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBPdXRwdXRQaW4gb24gd2hpY2ggdGhlIG5ld2x5IGNyZWF0ZWQgb2JqZWN0IGlzIHBsYWNlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0FjdGlvbi9vdXRwdXQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkRlc3Ryb3lMaW5rQWN0aW9uIiBlU3VwZXJUeXBlcz0iIy8vV3JpdGVMaW5rQWN0aW9uIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIERlc3Ryb3lMaW5rQWN0aW9uIGlzIGEgV3JpdGVMaW5rQWN0aW9uIHRoYXQgZGVzdHJveXMgbGlua3MgKGluY2x1ZGluZyBsaW5rIG9iamVjdHMpLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJkdXBsaWNhdGVzIj4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZW5kRGF0YSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjIiCisgICAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9MaW5rRW5kRGVzdHJ1Y3Rpb25EYXRhIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgTGlua0VuZERhdGEgdGhhdCB0aGUgdmFsdWVzIG9mIHRoZSBBc3NvY2lhdGlvbiBlbmRzIGZvciB0aGUgbGlua3MgdG8gYmUgZGVzdHJveWVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vTGlua0FjdGlvbi9lbmREYXRhIi8+CisgICAgICA8L2NvbnRlbnRzPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJMaW5rRW5kRGVzdHJ1Y3Rpb25EYXRhIiBlU3VwZXJUeXBlcz0iIy8vTGlua0VuZERhdGEiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkxpbmtFbmREZXN0cnVjdGlvbkRhdGEgaXMgTGlua0VuZERhdGEgdXNlZCB0byBwcm92aWRlIHZhbHVlcyBmb3Igb25lIGVuZCBvZiBhIGxpbmsgdG8gYmUgZGVzdHJveWVkIGJ5IGEgRGVzdHJveUxpbmtBY3Rpb24uIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9ImR1cGxpY2F0ZXMiPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBuYW1lPSJhbGxQaW5zIiBvcmRlcmVkPSJmYWxzZSIgdW5pcXVlPSJmYWxzZSIKKyAgICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0lucHV0UGluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFkZHMgdGhlIGRlc3Ryb3lBdCBJbnB1dFBpbiAoaWYgYW55KSB0byB0aGUgc2V0IG9mIGFsbCBQaW5zLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vTGlua0VuZERhdGEvYWxsUGlucyIvPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzZWxmLkxpbmtFbmREYXRhOjphbGxQaW5zKCktPmluY2x1ZGluZyhkZXN0cm95QXQpIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9jb250ZW50cz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZGVzdHJveUF0X3BpbiIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlmICBub3QgZW5kLmlzT3JkZXJlZCBvciBlbmQuaXNVbmlxdWUgb3IgaXNEZXN0cm95RHVwbGljYXRlcyYjeEQ7JiN4QTt0aGVuIGRlc3Ryb3lBdCA9IG51bGwmI3hEOyYjeEE7ZWxzZSYjeEQ7JiN4QTsmI3g5O2Rlc3Ryb3lBdCAmbHQ7PiBudWxsIGFuZCAmI3hEOyYjeEE7JiN4OTtkZXN0cm95QXQtPmZvckFsbCh0eXBlPVVubGltaXRlZE5hdHVyYWwgYW5kIGlzKDEsMSkpJiN4RDsmI3hBO2VuZGlmIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iTGlua0VuZERlc3RydWN0aW9uRGF0YSBmb3Igb3JkZXJlZCwgbm9udW5pcXVlIEFzc29jaWF0aW9uIGVuZHMgbXVzdCBoYXZlIGEgc2luZ2xlIGRlc3Ryb3lBdCBJbnB1dFBpbiBpZiBpc0Rlc3Ryb3lEdXBsaWNhdGVzIGlzIGZhbHNlLCB3aGljaCBtdXN0IGJlIG9mIHR5cGUgVW5saW1pdGVkTmF0dXJhbCBhbmQgaGF2ZSBhIG11bHRpcGxpY2l0eSBvZiAxLi4xLiBPdGhlcndpc2UsIHRoZSBhY3Rpb24gaGFzIG5vIGRlc3Ryb3lBdCBpbnB1dCBwaW4uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJkZXN0cm95QXQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vSW5wdXRQaW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgSW5wdXRQaW4gdGhhdCBwcm92aWRlcyB0aGUgcG9zaXRpb24gb2YgYW4gZXhpc3RpbmcgbGluayB0byBiZSBkZXN0cm95ZWQgaW4gYW4gb3JkZXJlZCwgbm9udW5pcXVlIEFzc29jaWF0aW9uIGVuZC4gVGhlIHR5cGUgb2YgdGhlIGRlc3Ryb3lBdCBJbnB1dFBpbiBpcyBVbmxpbWl0ZWROYXR1cmFsLCBidXQgdGhlIHZhbHVlIGNhbm5vdCBiZSB6ZXJvIG9yIHVubGltaXRlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNEZXN0cm95RHVwbGljYXRlcyIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSJmYWxzZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNwZWNpZmllcyB3aGV0aGVyIHRvIGRlc3Ryb3kgZHVwbGljYXRlcyBvZiB0aGUgdmFsdWUgaW4gbm9udW5pcXVlIEFzc29jaWF0aW9uIGVuZHMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkRlc3Ryb3lPYmplY3RBY3Rpb24iIGVTdXBlclR5cGVzPSIjLy9BY3Rpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgRGVzdHJveU9iamVjdEFjdGlvbiBpcyBhbiBBY3Rpb24gdGhhdCBkZXN0cm95cyBvYmplY3RzLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJtdWx0aXBsaWNpdHkiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJ0YXJnZXQuaXMoMSwxKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBtdWx0aXBsaWNpdHkgb2YgdGhlIHRhcmdlIElpbnB1dFBpbiBpcyAxLi4xLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibm9fdHlwZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InRhcmdldC50eXBlPSBudWxsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHRhcmdldCBJbnB1dFBpbiBoYXMgbm8gdHlwZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImlzRGVzdHJveUxpbmtzIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGRlZmF1bHRWYWx1ZUxpdGVyYWw9ImZhbHNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iU3BlY2lmaWVzIHdoZXRoZXIgbGlua3MgaW4gd2hpY2ggdGhlIG9iamVjdCBwYXJ0aWNpcGF0ZXMgYXJlIGRlc3Ryb3llZCBhbG9uZyB3aXRoIHRoZSBvYmplY3QuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImlzRGVzdHJveU93bmVkT2JqZWN0cyIKKyAgICAgICAgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIgorICAgICAgICBkZWZhdWx0VmFsdWVMaXRlcmFsPSJmYWxzZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNwZWNpZmllcyB3aGV0aGVyIG9iamVjdHMgb3duZWQgYnkgdGhlIG9iamVjdCAodmlhIGNvbXBvc2l0aW9uKSBhcmUgZGVzdHJveWVkIGFsb25nIHdpdGggdGhlIG9iamVjdC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0idGFyZ2V0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0lucHV0UGluIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBJbnB1dFBpbiBwcm92aWRpbmcgdGhlIG9iamVjdCB0byBiZSBkZXN0cm95ZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9BY3Rpb24vaW5wdXQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkV4cGFuc2lvbk5vZGUiIGVTdXBlclR5cGVzPSIjLy9PYmplY3ROb2RlIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBFeHBhbnNpb25Ob2RlIGlzIGFuIE9iamVjdE5vZGUgdXNlZCB0byBpbmRpY2F0ZSBhIGNvbGxlY3Rpb24gaW5wdXQgb3Igb3V0cHV0IGZvciBhbiBFeHBhbnNpb25SZWdpb24uIEEgY29sbGVjdGlvbiBpbnB1dCBvZiBhbiBFeHBhbnNpb25SZWdpb24gY29udGFpbnMgYSBjb2xsZWN0aW9uIHRoYXQgaXMgYnJva2VuIGludG8gaXRzIGluZGl2aWR1YWwgZWxlbWVudHMgaW5zaWRlIHRoZSByZWdpb24sIHdob3NlIGNvbnRlbnQgaXMgZXhlY3V0ZWQgb25jZSBwZXIgZWxlbWVudC4gQSBjb2xsZWN0aW9uIG91dHB1dCBvZiBhbiBFeHBhbnNpb25SZWdpb24gY29tYmluZXMgaW5kaXZpZHVhbCBlbGVtZW50cyBwcm9kdWNlZCBieSB0aGUgZXhlY3V0aW9uIG9mIHRoZSByZWdpb24gaW50byBhIGNvbGxlY3Rpb24gZm9yIHVzZSBvdXRzaWRlIHRoZSByZWdpb24uIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InJlZ2lvbl9hc19pbnB1dF9vcl9vdXRwdXQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJyZWdpb25Bc0lucHV0LT5ub3RFbXB0eSgpIHhvciByZWdpb25Bc091dHB1dC0+bm90RW1wdHkoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9Ik9uZSBvZiByZWdpb25Bc0lucHV0IG9yIHJlZ2lvbkFzT3V0cHV0IG11c3QgYmUgbm9uLWVtcHR5LCBidXQgbm90IGJvdGguIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyZWdpb25Bc0lucHV0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL0V4cGFuc2lvblJlZ2lvbiIgZU9wcG9zaXRlPSIjLy9FeHBhbnNpb25SZWdpb24vaW5wdXRFbGVtZW50Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIEV4cGFuc2lvblJlZ2lvbiBmb3Igd2hpY2ggdGhlIEV4cGFuc2lvbk5vZGUgaXMgYW4gaW5wdXQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InJlZ2lvbkFzT3V0cHV0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL0V4cGFuc2lvblJlZ2lvbiIgZU9wcG9zaXRlPSIjLy9FeHBhbnNpb25SZWdpb24vb3V0cHV0RWxlbWVudCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBFeHBhbnNpb25SZWdpb24gZm9yIHdoaWNoIHRoZSBFeHBhbnNpb25Ob2RlIGlzIGFuIG91dHB1dC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRXhwYW5zaW9uUmVnaW9uIiBlU3VwZXJUeXBlcz0iIy8vU3RydWN0dXJlZEFjdGl2aXR5Tm9kZSI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gRXhwYW5zaW9uUmVnaW9uIGlzIGEgU3RydWN0dXJlZEFjdGl2aXR5Tm9kZSB0aGF0IGV4ZWN1dGVzIGl0cyBjb250ZW50IG11bHRpcGxlIHRpbWVzIGNvcnJlc3BvbmRpbmcgdG8gZWxlbWVudHMgb2YgaW5wdXQgY29sbGVjdGlvbihzKS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ibW9kZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiCisgICAgICAgIGVUeXBlPSIjLy9FeHBhbnNpb25LaW5kIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSJpdGVyYXRpdmUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbW9kZSBpbiB3aGljaCB0aGUgRXhwYW5zaW9uUmVnaW9uIGV4ZWN1dGVzIGl0cyBjb250ZW50cy4gSWYgcGFyYWxsZWwsIGV4ZWN1dGlvbnMgYXJlIGNvbmN1cnJlbnQuIElmIGl0ZXJhdGl2ZSwgZXhlY3V0aW9ucyBhcmUgc2VxdWVudGlhbC4gSWYgc3RyZWFtLCBhIHN0cmVhbSBvZiB2YWx1ZXMgZmxvd3MgaW50byBhIHNpbmdsZSBleGVjdXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im91dHB1dEVsZW1lbnQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0V4cGFuc2lvbk5vZGUiIGVPcHBvc2l0ZT0iIy8vRXhwYW5zaW9uTm9kZS9yZWdpb25Bc091dHB1dCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBFeHBhbnNpb25Ob2RlcyB0aGF0IGZvcm0gdGhlIG91dHB1dCBjb2xsZWN0aW9ucyBvZiB0aGUgRXhwYW5zaW9uUmVnaW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJpbnB1dEVsZW1lbnQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0V4cGFuc2lvbk5vZGUiIGVPcHBvc2l0ZT0iIy8vRXhwYW5zaW9uTm9kZS9yZWdpb25Bc0lucHV0Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIEV4cGFuc2lvbk5vZGVzIHRoYXQgaG9sZCB0aGUgaW5wdXQgY29sbGVjdGlvbnMgZm9yIHRoZSBFeHBhbnNpb25SZWdpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ikxvb3BOb2RlIiBlU3VwZXJUeXBlcz0iIy8vU3RydWN0dXJlZEFjdGl2aXR5Tm9kZSI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBMb29wTm9kZSBpcyBhIFN0cnVjdHVyZWRBY3Rpdml0eU5vZGUgdGhhdCByZXByZXNlbnRzIGFuIGl0ZXJhdGl2ZSBsb29wIHdpdGggc2V0dXAsIHRlc3QsIGFuZCBib2R5IHNlY3Rpb25zLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJkdXBsaWNhdGVzIj4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgbmFtZT0iYWxsQWN0aW9ucyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICAgIGVUeXBlPSIjLy9BY3Rpb24iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0dXJuIG9ubHkgdGhpcyBMb29wTm9kZS4gVGhpcyBwcmV2ZW50cyBBY3Rpb25zIHdpdGhpbiB0aGUgTG9vcE5vZGUgZnJvbSBoYXZpbmcgdGhlaXIgT3V0cHV0UGlucyB1c2VkIGFzIGJvZHlPdXRwdXRzIG9yIGRlY2lkZXIgUGlucyBpbiBjb250YWluaW5nIExvb3BOb2RlcyBvciBDb25kaXRpb25hbE5vZGVzLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vQWN0aW9uL2FsbEFjdGlvbnMgIy8vU3RydWN0dXJlZEFjdGl2aXR5Tm9kZS8lZHVwbGljYXRlcyUvYWxsQWN0aW9ucyIvPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzZWxmLT5hc1NldCgpIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9jb250ZW50cz4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgbmFtZT0ic291cmNlTm9kZXMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgICBlVHlwZT0iIy8vQWN0aXZpdHlOb2RlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHVybiB0aGUgbG9vcFZhcmlhYmxlIE91dHB1dFBpbnMgaW4gYWRkaXRpb24gdG8gb3RoZXIgc291cmNlIG5vZGVzIGZvciB0aGUgTG9vcE5vZGUgYXMgYSBTdHJ1Y3R1cmVkQWN0aXZpdHlOb2RlLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vU3RydWN0dXJlZEFjdGl2aXR5Tm9kZS9zb3VyY2VOb2RlcyIvPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzZWxmLlN0cnVjdHVyZWRBY3Rpdml0eU5vZGU6OnNvdXJjZU5vZGVzKCktPnVuaW9uKGxvb3BWYXJpYWJsZSkiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2NvbnRlbnRzPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJyZXN1bHRfbm9faW5jb21pbmciIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJyZXN1bHQuaW5jb21pbmctPmlzRW1wdHkoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSByZXN1bHQgT3V0cHV0UGlucyBoYXZlIG5vIGluY29taW5nIGVkZ2VzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaW5wdXRfZWRnZXMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJsb29wVmFyaWFibGVJbnB1dC5vdXRnb2luZy0+aXNFbXB0eSgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGxvb3BWYXJpYWJsZUlucHV0cyBtdXN0IG5vdCBoYXZlIG91dGdvaW5nIGVkZ2VzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZXhlY3V0YWJsZV9ub2RlcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InNldHVwUGFydC0+dW5pb24odGVzdCktPnVuaW9uKGJvZHlQYXJ0KT1ub2RlLT5zZWxlY3Qob2NsSXNLaW5kT2YoRXhlY3V0YWJsZU5vZGUpKS5vY2xBc1R5cGUoRXhlY3V0YWJsZU5vZGUpLT5hc1NldCgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHVuaW9uIG9mIHRoZSBFeGVjdXRhYmxlTm9kZXMgaW4gdGhlIHNldHVwUGFydCwgdGVzdCBhbmQgYm9keVBhcnQgb2YgYSBMb29wTm9kZSBtdXN0IGJlIHRoZSBzYW1lIGFzIHRoZSBzdWJzZXQgb2Ygbm9kZXMgY29udGFpbmVkIGluIHRoZSBMb29wTm9kZSAoY29uc2lkZXJlZCBhcyBhIFN0cnVjdHVyZWRBY3Rpdml0eU5vZGUpIHRoYXQgYXJlIEV4ZWN1dGFibGVOb2Rlcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImJvZHlfb3V0cHV0X3BpbnMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJib2R5UGFydC5vY2xBc1R5cGUoQWN0aW9uKS5hbGxBY3Rpb25zKCkub3V0cHV0LT5pbmNsdWRlc0FsbChib2R5T3V0cHV0KSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBib2R5T3V0cHV0IHBpbnMgYXJlIE91dHB1dFBpbnMgb24gQWN0aW9ucyBpbiB0aGUgYm9keSBvZiB0aGUgTG9vcE5vZGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzZXR1cF90ZXN0X2FuZF9ib2R5IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ic2V0dXBQYXJ0LT5pbnRlcnNlY3Rpb24odGVzdCktPmlzRW1wdHkoKSBhbmQmI3hEOyYjeEE7c2V0dXBQYXJ0LT5pbnRlcnNlY3Rpb24oYm9keVBhcnQpLT5pc0VtcHR5KCkgYW5kJiN4RDsmI3hBO3Rlc3QtPmludGVyc2VjdGlvbihib2R5UGFydCktPmlzRW1wdHkoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB0ZXN0IGFuZCBib2R5IHBhcnRzIG9mIGEgQ29uZGl0aW9uYWxOb2RlIG11c3QgYmUgZGlzam9pbnQgd2l0aCBlYWNoIG90aGVyLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibWF0Y2hpbmdfb3V0cHV0X3BpbnMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJib2R5T3V0cHV0LT5zaXplKCk9bG9vcFZhcmlhYmxlLT5zaXplKCkgYW5kJiN4RDsmI3hBO1NlcXVlbmNlezEuLmxvb3BWYXJpYWJsZS0+c2l6ZSgpfS0+Zm9yQWxsKGkgfCYjeEQ7JiN4QTsmI3g5O2JvZHlPdXRwdXQtPmF0KGkpLnR5cGUuY29uZm9ybXNUbyhsb29wVmFyaWFibGUtPmF0KGkpLnR5cGUpIGFuZCYjeEQ7JiN4QTsmI3g5O2JvZHlPdXRwdXQtPmF0KGkpLmlzT3JkZXJlZCA9IGxvb3BWYXJpYWJsZS0+YXQoaSkuaXNPcmRlcmVkIGFuZCYjeEQ7JiN4QTsmI3g5O2JvZHlPdXRwdXQtPmF0KGkpLmlzVW5pcXVlID0gbG9vcFZhcmlhYmxlLT5hdChpKS5pc1VuaXF1ZSBhbmQmI3hEOyYjeEE7JiN4OTtsb29wVmFyaWFibGUtPmF0KGkpLmluY2x1ZGVzTXVsdGlwbGljaXR5KGJvZHlPdXRwdXQtPmF0KGkpKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIExvb3BOb2RlIG11c3QgaGF2ZSB0aGUgc2FtZSBudW1iZXIgb2YgYm9keU91dHB1dCBQaW5zIGFzIGxvb3BWYXJpYWJsZXMsIGFuZCBlYWNoIGJvZHlPdXRwdXQgUGluIG11c3QgYmUgY29tcGF0aWJsZSB3aXRoIHRoZSBjb3JyZXNwb25kaW5nIGxvb3BWYXJpYWJsZSAoYnkgcG9zaXRpb25hbCBvcmRlcikgaW4gdHlwZSwgbXVsdGlwbGljaXR5LCBvcmRlcmluZyBhbmQgdW5pcXVlbmVzcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im1hdGNoaW5nX2xvb3BfdmFyaWFibGVzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibG9vcFZhcmlhYmxlSW5wdXQtPnNpemUoKT1sb29wVmFyaWFibGUtPnNpemUoKSBhbmQmI3hEOyYjeEE7bG9vcFZhcmlhYmxlSW5wdXQudHlwZT1sb29wVmFyaWFibGUudHlwZSBhbmQmI3hEOyYjeEE7bG9vcFZhcmlhYmxlSW5wdXQuaXNVbmlxdWU9bG9vcFZhcmlhYmxlLmlzVW5pcXVlIGFuZCYjeEQ7JiN4QTtsb29wVmFyaWFibGVJbnB1dC5sb3dlcj1sb29wVmFyaWFibGUubG93ZXIgYW5kJiN4RDsmI3hBO2xvb3BWYXJpYWJsZUlucHV0LnVwcGVyPWxvb3BWYXJpYWJsZS51cHBlciIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgTG9vcE5vZGUgbXVzdCBoYXZlIHRoZSBzYW1lIG51bWJlciBvZiBsb29wVmFyaWFibGVJbnB1dHMgYW5kIGxvb3BWYXJpYWJsZXMsIGFuZCB0aGV5IG11c3QgbWF0Y2ggaW4gdHlwZSwgdW5pcXVlbmVzcyBhbmQgbXVsdGlwbGljaXR5LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibWF0Y2hpbmdfcmVzdWx0X3BpbnMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJyZXN1bHQtPnNpemUoKT1sb29wVmFyaWFibGUtPnNpemUoKSBhbmQmI3hEOyYjeEE7cmVzdWx0LnR5cGU9bG9vcFZhcmlhYmxlLnR5cGUgYW5kJiN4RDsmI3hBO3Jlc3VsdC5pc1VuaXF1ZT1sb29wVmFyaWFibGUuaXNVbmlxdWUgYW5kJiN4RDsmI3hBO3Jlc3VsdC5sb3dlcj1sb29wVmFyaWFibGUubG93ZXIgYW5kJiN4RDsmI3hBO3Jlc3VsdC51cHBlcj1sb29wVmFyaWFibGUudXBwZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIExvb3BOb2RlIG11c3QgaGF2ZSB0aGUgc2FtZSBudW1iZXIgb2YgcmVzdWx0IE91dHB1dFBpbnMgYW5kIGxvb3BWYXJpYWJsZXMsIGFuZCB0aGV5IG11c3QgbWF0Y2ggaW4gdHlwZSwgdW5pcXVlbmVzcyBhbmQgbXVsdGlwbGljaXR5LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibG9vcF92YXJpYWJsZV9vdXRnb2luZyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImFsbE93bmVkTm9kZXMoKS0+aW5jbHVkZXNBbGwobG9vcFZhcmlhYmxlLm91dGdvaW5nLnRhcmdldCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbGwgQWN0aXZpdHlFZGdlcyBvdXRnb2luZyBmcm9tIGxvb3BWYXJpYWJsZSBPdXRwdXRQaW5zIG11c3QgaGF2ZSB0YXJnZXRzIHdpdGhpbiB0aGUgTG9vcE5vZGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJib2R5T3V0cHV0IiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL091dHB1dFBpbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBPdXRwdXRQaW5zIG9uIEFjdGlvbnMgd2l0aGluIHRoZSBib2R5UGFydCwgdGhlIHZhbHVlcyBvZiB3aGljaCBhcmUgbW92ZWQgdG8gdGhlIGxvb3BWYXJpYWJsZSBPdXRwdXRQaW5zIGFmdGVyIHRoZSBjb21wbGV0aW9uIG9mIGVhY2ggZXhlY3V0aW9uIG9mIHRoZSBib2R5UGFydCwgYmVmb3JlIHRoZSBuZXh0IGl0ZXJhdGlvbiBvZiB0aGUgbG9vcCBiZWdpbnMgb3IgYmVmb3JlIHRoZSBsb29wIGV4aXRzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJib2R5UGFydCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vRXhlY3V0YWJsZU5vZGUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc2V0IG9mIEV4ZWN1dGFibGVOb2RlcyB0aGF0IHBlcmZvcm0gdGhlIHJlcGV0aXRpdmUgY29tcHV0YXRpb25zIG9mIHRoZSBsb29wLiBUaGUgYm9keVBhcnQgaXMgZXhlY3V0ZWQgYXMgbG9uZyBhcyB0aGUgdGVzdCBzZWN0aW9uIHByb2R1Y2VzIGEgdHJ1ZSB2YWx1ZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZGVjaWRlciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9PdXRwdXRQaW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBPdXRwdXRQaW4gb24gYW4gQWN0aW9uIGluIHRoZSB0ZXN0IHNlY3Rpb24gd2hvc2UgQm9vbGVhbiB2YWx1ZSBkZXRlcm1pbmVzIHdoZXRoZXIgdG8gY29udGludWUgZXhlY3V0aW5nIHRoZSBsb29wIGJvZHlQYXJ0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpc1Rlc3RlZEZpcnN0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGRlZmF1bHRWYWx1ZUxpdGVyYWw9ImZhbHNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgdHJ1ZSwgdGhlIHRlc3QgaXMgcGVyZm9ybWVkIGJlZm9yZSB0aGUgZmlyc3QgZXhlY3V0aW9uIG9mIHRoZSBib2R5UGFydC4gSWYgZmFsc2UsIHRoZSBib2R5UGFydCBpcyBleGVjdXRlZCBvbmNlIGJlZm9yZSB0aGUgdGVzdCBpcyBwZXJmb3JtZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Imxvb3BWYXJpYWJsZSIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9PdXRwdXRQaW4iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBsaXN0IG9mIE91dHB1dFBpbnMgdGhhdCBob2xkIHRoZSB2YWx1ZXMgb2YgdGhlIGxvb3AgdmFyaWFibGVzIGR1cmluZyBhbiBleGVjdXRpb24gb2YgdGhlIGxvb3AuIFdoZW4gdGhlIHRlc3QgZmFpbHMsIHRoZSB2YWx1ZXMgYXJlIG1vdmVkIHRvIHRoZSByZXN1bHQgT3V0cHV0UGlucyBvZiB0aGUgbG9vcC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJsb29wVmFyaWFibGVJbnB1dCIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9JbnB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIGxpc3Qgb2YgSW5wdXRQaW5zIHdob3NlIHZhbHVlcyBhcmUgbW92ZWQgaW50byB0aGUgbG9vcFZhcmlhYmxlIFBpbnMgYmVmb3JlIHRoZSBmaXJzdCBpdGVyYXRpb24gb2YgdGhlIGxvb3AuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL1N0cnVjdHVyZWRBY3Rpdml0eU5vZGUvc3RydWN0dXJlZE5vZGVJbnB1dCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVzdWx0IiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9IiMvL091dHB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIGxpc3Qgb2YgT3V0cHV0UGlucyB0aGF0IHJlY2VpdmUgdGhlIGxvb3BWYXJpYWJsZSB2YWx1ZXMgYWZ0ZXIgdGhlIGxhc3QgaXRlcmF0aW9uIG9mIHRoZSBsb29wIGFuZCBjb25zdGl0dXRlIHRoZSBvdXRwdXQgb2YgdGhlIExvb3BOb2RlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9TdHJ1Y3R1cmVkQWN0aXZpdHlOb2RlL3N0cnVjdHVyZWROb2RlT3V0cHV0Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJzZXR1cFBhcnQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0V4ZWN1dGFibGVOb2RlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHNldCBvZiBFeGVjdXRhYmxlTm9kZXMgZXhlY3V0ZWQgYmVmb3JlIHRoZSBmaXJzdCBpdGVyYXRpb24gb2YgdGhlIGxvb3AsIGluIG9yZGVyIHRvIGluaXRpYWxpemUgdmFsdWVzIG9yIHBlcmZvcm0gb3RoZXIgc2V0dXAgY29tcHV0YXRpb25zLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJ0ZXN0IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9FeGVjdXRhYmxlTm9kZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBzZXQgb2YgRXhlY3V0YWJsZU5vZGVzIGV4ZWN1dGVkIGluIG9yZGVyIHRvIHByb3ZpZGUgdGhlIHRlc3QgcmVzdWx0IGZvciB0aGUgbG9vcC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iT3BhcXVlQWN0aW9uIiBlU3VwZXJUeXBlcz0iIy8vQWN0aW9uIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBPcGFxdWVBY3Rpb24gaXMgYW4gQWN0aW9uIHdob3NlIGZ1bmN0aW9uYWxpdHkgaXMgbm90IHNwZWNpZmllZCB3aXRoaW4gVU1MLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJsYW5ndWFnZV9ib2R5X3NpemUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJsYW5ndWFnZS0+bm90RW1wdHkoKSBpbXBsaWVzIChfJ2JvZHknLT5zaXplKCkgPSBsYW5ndWFnZS0+c2l6ZSgpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIHRoZSBsYW5ndWFnZSBhdHRyaWJ1dGUgaXMgbm90IGVtcHR5LCB0aGVuIHRoZSBzaXplIG9mIHRoZSBib2R5IGFuZCBsYW5ndWFnZSBsaXN0cyBtdXN0IGJlIHRoZSBzYW1lLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iYm9keSIgdW5pcXVlPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciIHVuc2V0dGFibGU9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJQcm92aWRlcyBhIHRleHR1YWwgc3BlY2lmaWNhdGlvbiBvZiB0aGUgZnVuY3Rpb25hbGl0eSBvZiB0aGUgQWN0aW9uLCBpbiBvbmUgb3IgbW9yZSBsYW5ndWFnZXMgb3RoZXIgdGhhbiBVTUwuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vL29yZy9lY2xpcHNlL2VtZi9lY29yZS91dGlsL0V4dGVuZGVkTWV0YURhdGEiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImtpbmQiIHZhbHVlPSJlbGVtZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImlucHV0VmFsdWUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0lucHV0UGluIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBJbnB1dFBpbnMgcHJvdmlkaW5nIGlucHV0cyB0byB0aGUgT3BhcXVlQWN0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQWN0aW9uL2lucHV0Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJsYW5ndWFnZSIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciIHVuc2V0dGFibGU9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiBwcm92aWRlZCwgYSBzcGVjaWZpY2F0aW9uIG9mIHRoZSBsYW5ndWFnZSB1c2VkIGZvciBlYWNoIG9mIHRoZSBib2R5IFN0cmluZ3MuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im91dHB1dFZhbHVlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9PdXRwdXRQaW4iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIE91dHB1dFBpbnMgb24gd2hpY2ggdGhlIE9wYXF1ZUFjdGlvbiBwcm92aWRlcyBvdXRwdXRzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQWN0aW9uL291dHB1dCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUmFpc2VFeGNlcHRpb25BY3Rpb24iIGVTdXBlclR5cGVzPSIjLy9BY3Rpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgUmFpc2VFeGNlcHRpb25BY3Rpb24gaXMgYW4gQWN0aW9uIHRoYXQgY2F1c2VzIGFuIGV4Y2VwdGlvbiB0byBvY2N1ci4gVGhlIGlucHV0IHZhbHVlIGJlY29tZXMgdGhlIGV4Y2VwdGlvbiBvYmplY3QuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImV4Y2VwdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9JbnB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBJbnB1dFBpbiB3aG9zZSB2YWx1ZSBiZWNvbWVzIHRoZSBleGNlcHRpb24gb2JqZWN0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQWN0aW9uL2lucHV0Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJSZWFkRXh0ZW50QWN0aW9uIiBlU3VwZXJUeXBlcz0iIy8vQWN0aW9uIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFJlYWRFeHRlbnRBY3Rpb24gaXMgYW4gQWN0aW9uIHRoYXQgcmV0cmlldmVzIHRoZSBjdXJyZW50IGluc3RhbmNlcyBvZiBhIENsYXNzaWZpZXIuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InR5cGVfaXNfY2xhc3NpZmllciIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InJlc3VsdC50eXBlID0gY2xhc3NpZmllciIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB0eXBlIG9mIHRoZSByZXN1bHQgT3V0cHV0UGluIGlzIHRoZSBjbGFzc2lmaWVyLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibXVsdGlwbGljaXR5X29mX3Jlc3VsdCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InJlc3VsdC5pcygwLCopIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG11bHRpcGxpY2l0eSBvZiB0aGUgcmVzdWx0IE91dHB1dFBpbiBpcyAwLi4qLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iY2xhc3NpZmllciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9DbGFzc2lmaWVyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIENsYXNzaWZpZXIgd2hvc2UgaW5zdGFuY2VzIGFyZSB0byBiZSByZXRyaWV2ZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InJlc3VsdCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9PdXRwdXRQaW4iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIE91dHB1dFBpbiBvbiB3aGljaCB0aGUgQ2xhc3NpZmllciBpbnN0YW5jZXMgYXJlIHBsYWNlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0FjdGlvbi9vdXRwdXQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlJlYWRJc0NsYXNzaWZpZWRPYmplY3RBY3Rpb24iIGVTdXBlclR5cGVzPSIjLy9BY3Rpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgUmVhZElzQ2xhc3NpZmllZE9iamVjdEFjdGlvbiBpcyBhbiBBY3Rpb24gdGhhdCBkZXRlcm1pbmVzIHdoZXRoZXIgYW4gb2JqZWN0IGlzIGNsYXNzaWZpZWQgYnkgYSBnaXZlbiBDbGFzc2lmaWVyLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJub190eXBlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ib2JqZWN0LnR5cGUgPSBudWxsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG9iamVjdCBJbnB1dFBpbiBoYXMgbm8gdHlwZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im11bHRpcGxpY2l0eV9vZl9vdXRwdXQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJyZXN1bHQuaXMoMSwxKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBtdWx0aXBsaWNpdHkgb2YgdGhlIHJlc3VsdCBPdXRwdXRQaW4gaXMgMS4uMS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImJvb2xlYW5fcmVzdWx0IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icmVzdWx0LnR5cGUgPSBCb29sZWFuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHR5cGUgb2YgdGhlIHJlc3VsdCBPdXRwdXRQaW4gaXMgQm9vbGVhbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im11bHRpcGxpY2l0eV9vZl9pbnB1dCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im9iamVjdC5pcygxLDEpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG11bHRpcGxpY2l0eSBvZiB0aGUgb2JqZWN0IElucHV0UGluIGlzIDEuLjEuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJjbGFzc2lmaWVyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0NsYXNzaWZpZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgQ2xhc3NpZmllciBhZ2FpbnN0IHdoaWNoIHRoZSBjbGFzc2lmaWNhdGlvbiBvZiB0aGUgaW5wdXQgb2JqZWN0IGlzIHRlc3RlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNEaXJlY3QiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iZmFsc2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbmRpY2F0ZXMgd2hldGhlciB0aGUgaW5wdXQgb2JqZWN0IG11c3QgYmUgZGlyZWN0bHkgY2xhc3NpZmllZCBieSB0aGUgZ2l2ZW4gQ2xhc3NpZmllciBvciB3aGV0aGVyIGl0IG1heSBhbHNvIGJlIGFuIGluc3RhbmNlIG9mIGEgc3BlY2lhbGl6YXRpb24gb2YgdGhlIGdpdmVuIENsYXNzaWZpZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im9iamVjdCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9JbnB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgSW5wdXRQaW4gdGhhdCBob2xkcyB0aGUgb2JqZWN0IHdob3NlIGNsYXNzaWZpY2F0aW9uIGlzIHRvIGJlIHRlc3RlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0FjdGlvbi9pbnB1dCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVzdWx0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL091dHB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgT3V0cHV0UGluIHRoYXQgaG9sZHMgdGhlIEJvb2xlYW4gcmVzdWx0IG9mIHRoZSB0ZXN0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQWN0aW9uL291dHB1dCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUmVhZExpbmtBY3Rpb24iIGVTdXBlclR5cGVzPSIjLy9MaW5rQWN0aW9uIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFJlYWRMaW5rQWN0aW9uIGlzIGEgTGlua0FjdGlvbiB0aGF0IG5hdmlnYXRlcyBhY3Jvc3MgYW4gQXNzb2NpYXRpb24gdG8gcmV0cmlldmUgdGhlIG9iamVjdHMgb24gb25lIGVuZC4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0idHlwZV9hbmRfb3JkZXJpbmciIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzZWxmLm9wZW5FbmQoKS0+Zm9yQWxsKHR5cGU9cmVzdWx0LnR5cGUgYW5kIGlzT3JkZXJlZD1yZXN1bHQuaXNPcmRlcmVkKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB0eXBlIGFuZCBvcmRlcmluZyBvZiB0aGUgcmVzdWx0IE91dHB1dFBpbiBhcmUgc2FtZSBhcyB0aGUgdHlwZSBhbmQgb3JkZXJpbmcgb2YgdGhlIG9wZW4gQXNzb2NpYXRpb24gZW5kLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY29tcGF0aWJsZV9tdWx0aXBsaWNpdHkiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzZWxmLm9wZW5FbmQoKS0+Zmlyc3QoKS5jb21wYXRpYmxlV2l0aChyZXN1bHQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG11bHRpcGxpY2l0eSBvZiB0aGUgb3BlbiBBc3NvY2lhdGlvbiBlbmQgbXVzdCBiZSBjb21wYXRpYmxlIHdpdGggdGhlIG11bHRpcGxpY2l0eSBvZiB0aGUgcmVzdWx0IE91dHB1dFBpbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InZpc2liaWxpdHkiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJsZXQgb3BlbkVuZCA6IFByb3BlcnR5ID0gc2VsZi5vcGVuRW5kKCktPmZpcnN0KCkgaW4mI3hBOyAgb3BlbkVuZC52aXNpYmlsaXR5ID0gVmlzaWJpbGl0eUtpbmQ6OnB1YmxpYyBvciAmI3hBOyAgZW5kRGF0YS0+ZXhpc3RzKG9lZCB8ICYjeEE7ICAgIG9lZC5lbmQmbHQ7Pm9wZW5FbmQgYW5kICYjeEE7ICAgIChfJ2NvbnRleHQnID0gb2VkLmVuZC50eXBlIG9yICYjeEE7ICAgICAgKG9wZW5FbmQudmlzaWJpbGl0eSA9IFZpc2liaWxpdHlLaW5kOjpwcm90ZWN0ZWQgYW5kICYjeEE7ICAgICAgICBfJ2NvbnRleHQnLmNvbmZvcm1zVG8ob2VkLmVuZC50eXBlLm9jbEFzVHlwZShDbGFzc2lmaWVyKSkpKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJWaXNpYmlsaXR5IG9mIHRoZSBvcGVuIGVuZCBtdXN0IGFsbG93IGFjY2VzcyBmcm9tIHRoZSBvYmplY3QgcGVyZm9ybWluZyB0aGUgYWN0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ib25lX29wZW5fZW5kIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ic2VsZi5vcGVuRW5kKCktPnNpemUoKSA9IDEiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJFeGFjdGx5IG9uZSBsaW5rRW5kRGF0YSBzcGVjaWZpY2F0aW9uIChjb3JyZXNwb25kaW5nIHRvIHRoZSAmcXVvdDtvcGVuJnF1b3Q7IGVuZCkgbXVzdCBub3QgaGF2ZSBhbiB2YWx1ZSBJbnB1dFBpbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im5hdmlnYWJsZV9vcGVuX2VuZCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InNlbGYub3BlbkVuZCgpLT5maXJzdCgpLmlzTmF2aWdhYmxlKCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgb3BlbiBlbmQgbXVzdCBiZSBuYXZpZ2FibGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJvcGVuRW5kIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL1Byb3BlcnR5Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0dXJucyB0aGUgZW5kcyBjb3JyZXNwb25kaW5nIHRvIGVuZERhdGEgd2l0aCBubyB2YWx1ZSBJbnB1dFBpbi4gKEEgd2VsbC1mb3JtZWQgUmVhZExpbmtBY3Rpb24gaXMgY29uc3RyYWluZWQgdG8gaGF2ZSBvbmx5IG9uZSBvZiB0aGVzZS4pIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJlbmREYXRhLT5zZWxlY3QodmFsdWU9bnVsbCkuZW5kLT5hc09yZGVyZWRTZXQoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVzdWx0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL091dHB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgT3V0cHV0UGluIG9uIHdoaWNoIHRoZSBvYmplY3RzIHJldHJpZXZlZCBmcm9tIHRoZSAmcXVvdDtvcGVuJnF1b3Q7IGVuZCBvZiB0aG9zZSBsaW5rcyB3aG9zZSB2YWx1ZXMgb24gb3RoZXIgZW5kcyBhcmUgZ2l2ZW4gYnkgdGhlIGVuZERhdGEuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9BY3Rpb24vb3V0cHV0Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJSZWFkTGlua09iamVjdEVuZEFjdGlvbiIgZVN1cGVyVHlwZXM9IiMvL0FjdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBSZWFkTGlua09iamVjdEVuZEFjdGlvbiBpcyBhbiBBY3Rpb24gdGhhdCByZXRyaWV2ZXMgYW4gZW5kIG9iamVjdCBmcm9tIGEgbGluayBvYmplY3QuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InByb3BlcnR5IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iZW5kLmFzc29jaWF0aW9uICZsdDs+IG51bGwiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgZW5kIFByb3BlcnR5IG11c3QgYmUgYW4gQXNzb2NpYXRpb24gbWVtYmVyRW5kLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibXVsdGlwbGljaXR5X29mX29iamVjdCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im9iamVjdC5pcygxLDEpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG11bHRpcGxpY2l0eSBvZiB0aGUgb2JqZWN0IElucHV0UGluIGlzIDEuLjEuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJlbmRzX29mX2Fzc29jaWF0aW9uIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iZW5kLmFzc29jaWF0aW9uLm1lbWJlckVuZC0+Zm9yQWxsKGUgfCBub3QgZS5pc1N0YXRpYykiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgZW5kcyBvZiB0aGUgYXNzb2NpYXRpb24gbXVzdCBub3QgYmUgc3RhdGljLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0idHlwZV9vZl9yZXN1bHQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJyZXN1bHQudHlwZSA9IGVuZC50eXBlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHR5cGUgb2YgdGhlIHJlc3VsdCBPdXRwdXRQaW4gaXMgdGhlIHNhbWUgYXMgdGhlIHR5cGUgb2YgdGhlIGVuZCBQcm9wZXJ0eS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im11bHRpcGxpY2l0eV9vZl9yZXN1bHQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJyZXN1bHQuaXMoMSwxKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBtdWx0aXBsaWNpdHkgb2YgdGhlIHJlc3VsdCBPdXRwdXRQaW4gaXMgMS4uMS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InR5cGVfb2Zfb2JqZWN0IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ib2JqZWN0LnR5cGUgPSBlbmQuYXNzb2NpYXRpb24iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgdHlwZSBvZiB0aGUgb2JqZWN0IElucHV0UGluIGlzIHRoZSBBc3NvY2lhdGlvbkNsYXNzIHRoYXQgb3ducyB0aGUgZW5kIFByb3BlcnR5LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iYXNzb2NpYXRpb25fb2ZfYXNzb2NpYXRpb24iIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJlbmQuYXNzb2NpYXRpb24ub2NsSXNLaW5kT2YoQXNzb2NpYXRpb25DbGFzcykiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgYXNzb2NpYXRpb24gb2YgdGhlIGVuZCBtdXN0IGJlIGFuIEFzc29jaWF0aW9uQ2xhc3MuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlbmQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIgorICAgICAgICBlVHlwZT0iIy8vUHJvcGVydHkiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgQXNzb2NpYXRpb24gZW5kIHRvIGJlIHJlYWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im9iamVjdCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9JbnB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgaW5wdXQgcGluIGZyb20gd2hpY2ggdGhlIGxpbmsgb2JqZWN0IGlzIG9idGFpbmVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQWN0aW9uL2lucHV0Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyZXN1bHQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vT3V0cHV0UGluIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBPdXRwdXRQaW4gd2hlcmUgdGhlIHJlc3VsdCB2YWx1ZSBpcyBwbGFjZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9BY3Rpb24vb3V0cHV0Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJSZWFkTGlua09iamVjdEVuZFF1YWxpZmllckFjdGlvbiIgZVN1cGVyVHlwZXM9IiMvL0FjdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBSZWFkTGlua09iamVjdEVuZFF1YWxpZmllckFjdGlvbiBpcyBhbiBBY3Rpb24gdGhhdCByZXRyaWV2ZXMgYSBxdWFsaWZpZXIgZW5kIHZhbHVlIGZyb20gYSBsaW5rIG9iamVjdC4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibXVsdGlwbGljaXR5X29mX29iamVjdCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im9iamVjdC5pcygxLDEpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG11bHRpcGxpY2l0eSBvZiB0aGUgb2JqZWN0IElucHV0UGluIGlzIDEuLjEuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJ0eXBlX29mX29iamVjdCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im9iamVjdC50eXBlID0gcXVhbGlmaWVyLmFzc29jaWF0aW9uRW5kLmFzc29jaWF0aW9uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHR5cGUgb2YgdGhlIG9iamVjdCBJbnB1dFBpbiBpcyB0aGUgQXNzb2NpYXRpb25DbGFzcyB0aGF0IG93bnMgdGhlIEFzc29jaWF0aW9uIGVuZCB0aGF0IGhhcyB0aGUgZ2l2ZW4gcXVhbGlmaWVyIFByb3BlcnR5LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibXVsdGlwbGljaXR5X29mX3F1YWxpZmllciIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InF1YWxpZmllci5pcygxLDEpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG11bHRpcGxpY2l0eSBvZiB0aGUgcXVhbGlmaWVyIFByb3BlcnR5IGlzIDEuLjEuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJlbmRzX29mX2Fzc29jaWF0aW9uIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icXVhbGlmaWVyLmFzc29jaWF0aW9uRW5kLmFzc29jaWF0aW9uLm1lbWJlckVuZC0+Zm9yQWxsKGUgfCBub3QgZS5pc1N0YXRpYykiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgZW5kcyBvZiB0aGUgQXNzb2NpYXRpb24gbXVzdCBub3QgYmUgc3RhdGljLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibXVsdGlwbGljaXR5X29mX3Jlc3VsdCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InJlc3VsdC5pcygxLDEpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG11bHRpcGxpY2l0eSBvZiB0aGUgcmVzdWx0IE91dHB1dFBpbiBpcyAxLi4xLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ic2FtZV90eXBlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icmVzdWx0LnR5cGUgPSBxdWFsaWZpZXIudHlwZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB0eXBlIG9mIHRoZSByZXN1bHQgT3V0cHV0UGluIGlzIHRoZSBzYW1lIGFzIHRoZSB0eXBlIG9mIHRoZSBxdWFsaWZpZXIgUHJvcGVydHkuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJhc3NvY2lhdGlvbl9vZl9hc3NvY2lhdGlvbiIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InF1YWxpZmllci5hc3NvY2lhdGlvbkVuZC5hc3NvY2lhdGlvbi5vY2xJc0tpbmRPZihBc3NvY2lhdGlvbkNsYXNzKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBhc3NvY2lhdGlvbiBvZiB0aGUgQXNzb2NpYXRpb24gZW5kIG9mIHRoZSBxdWFsaWZpZXIgUHJvcGVydHkgbXVzdCBiZSBhbiBBc3NvY2lhdGlvbkNsYXNzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0icXVhbGlmaWVyX2F0dHJpYnV0ZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InF1YWxpZmllci5hc3NvY2lhdGlvbkVuZCAmbHQ7PiBudWxsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1YWxpZmllciBQcm9wZXJ0eSBtdXN0IGJlIGEgcXVhbGlmaWVyIG9mIGFuIEFzc29jaWF0aW9uIGVuZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im9iamVjdCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9JbnB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgSW5wdXRQaW4gZnJvbSB3aGljaCB0aGUgbGluayBvYmplY3QgaXMgb2J0YWluZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9BY3Rpb24vaW5wdXQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InF1YWxpZmllciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Qcm9wZXJ0eSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWFsaWZpZXIgUHJvcGVydHkgdG8gYmUgcmVhZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVzdWx0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL091dHB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgT3V0cHV0UGluIHdoZXJlIHRoZSByZXN1bHQgdmFsdWUgaXMgcGxhY2VkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQWN0aW9uL291dHB1dCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUmVhZFNlbGZBY3Rpb24iIGVTdXBlclR5cGVzPSIjLy9BY3Rpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgUmVhZFNlbGZBY3Rpb24gaXMgYW4gQWN0aW9uIHRoYXQgcmV0cmlldmVzIHRoZSBjb250ZXh0IG9iamVjdCBvZiB0aGUgQmVoYXZpb3IgZXhlY3V0aW9uIHdpdGhpbiB3aGljaCB0aGUgUmVhZFNlbGZBY3Rpb24gZXhlY3V0aW9uIGlzIHRha2luZyBwbGFjZS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY29udGFpbmVkIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iXydjb250ZXh0JyAmbHQ7PiBudWxsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBSZWFkU2VsZkFjdGlvbiBtdXN0IGhhdmUgYSBjb250ZXh0IENsYXNzaWZpZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJtdWx0aXBsaWNpdHkiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJyZXN1bHQuaXMoMSwxKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBtdWx0aXBsaWNpdHkgb2YgdGhlIHJlc3VsdCBPdXRwdXRQaW4gaXMgMS4uMS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im5vdF9zdGF0aWMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJsZXQgYmVoYXZpb3I6IEJlaGF2aW9yID0gc2VsZi5jb250YWluaW5nQmVoYXZpb3IoKSBpbiYjeEQ7JiN4QTtiZWhhdmlvci5zcGVjaWZpY2F0aW9uJmx0Oz5udWxsIGltcGxpZXMgbm90IGJlaGF2aW9yLnNwZWNpZmljYXRpb24uaXNTdGF0aWMiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiB0aGUgUmVhZFNlbGZBY3Rpb24gaXMgY29udGFpbmVkIGluIGFuIEJlaGF2aW9yIHRoYXQgaXMgYWN0aW5nIGFzIGEgbWV0aG9kLCB0aGVuIHRoZSBPcGVyYXRpb24gb2YgdGhlIG1ldGhvZCBtdXN0IG5vdCBiZSBzdGF0aWMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJ0eXBlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icmVzdWx0LnR5cGUgPSBfJ2NvbnRleHQnIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHR5cGUgb2YgdGhlIHJlc3VsdCBPdXRwdXRQaW4gaXMgdGhlIGNvbnRleHQgQ2xhc3NpZmllci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InJlc3VsdCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9PdXRwdXRQaW4iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIE91dHB1dFBpbiBvbiB3aGljaCB0aGUgY29udGV4dCBvYmplY3QgaXMgcGxhY2VkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQWN0aW9uL291dHB1dCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUmVhZFN0cnVjdHVyYWxGZWF0dXJlQWN0aW9uIiBlU3VwZXJUeXBlcz0iIy8vU3RydWN0dXJhbEZlYXR1cmVBY3Rpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgUmVhZFN0cnVjdHVyYWxGZWF0dXJlQWN0aW9uIGlzIGEgU3RydWN0dXJhbEZlYXR1cmVBY3Rpb24gdGhhdCByZXRyaWV2ZXMgdGhlIHZhbHVlcyBvZiBhIFN0cnVjdHVyYWxGZWF0dXJlLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJkdXBsaWNhdGVzIj4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgbmFtZT0ibXVsdGlwbGljaXR5IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InN0cnVjdHVyYWxGZWF0dXJlLmNvbXBhdGlibGVXaXRoKHJlc3VsdCkiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbXVsdGlwbGljaXR5IG9mIHRoZSBTdHJ1Y3R1cmFsRmVhdHVyZSBtdXN0IGJlIGNvbXBhdGlibGUgd2l0aCB0aGUgbXVsdGlwbGljaXR5IG9mIHRoZSByZXN1bHQgT3V0cHV0UGluLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vU3RydWN0dXJhbEZlYXR1cmVBY3Rpb24vbXVsdGlwbGljaXR5Ii8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9jb250ZW50cz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0idHlwZV9hbmRfb3JkZXJpbmciIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJyZXN1bHQudHlwZSA9c3RydWN0dXJhbEZlYXR1cmUudHlwZSBhbmQgJiN4QTtyZXN1bHQuaXNPcmRlcmVkID0gc3RydWN0dXJhbEZlYXR1cmUuaXNPcmRlcmVkIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHR5cGUgYW5kIG9yZGVyaW5nIG9mIHRoZSByZXN1bHQgT3V0cHV0UGluIGFyZSB0aGUgc2FtZSBhcyB0aGUgdHlwZSBhbmQgb3JkZXJpbmcgb2YgdGhlIFN0cnVjdHVyYWxGZWF0dXJlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVzdWx0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL091dHB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgT3V0cHV0UGluIG9uIHdoaWNoIHRoZSByZXN1bHQgdmFsdWVzIGFyZSBwbGFjZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9BY3Rpb24vb3V0cHV0Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJSZWFkVmFyaWFibGVBY3Rpb24iIGVTdXBlclR5cGVzPSIjLy9WYXJpYWJsZUFjdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBSZWFkVmFyaWFibGVBY3Rpb24gaXMgYSBWYXJpYWJsZUFjdGlvbiB0aGF0IHJldHJpZXZlcyB0aGUgdmFsdWVzIG9mIGEgVmFyaWFibGUuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InR5cGVfYW5kX29yZGVyaW5nIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icmVzdWx0LnR5cGUgPXZhcmlhYmxlLnR5cGUgYW5kICYjeEE7cmVzdWx0LmlzT3JkZXJlZCA9IHZhcmlhYmxlLmlzT3JkZXJlZCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB0eXBlIGFuZCBvcmRlcmluZyBvZiB0aGUgcmVzdWx0IE91dHB1dFBpbiBhcmUgdGhlIHNhbWUgYXMgdGhlIHR5cGUgYW5kIG9yZGVyaW5nIG9mIHRoZSB2YXJpYWJsZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImNvbXBhdGlibGVfbXVsdGlwbGljaXR5IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0idmFyaWFibGUuY29tcGF0aWJsZVdpdGgocmVzdWx0KSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBtdWx0aXBsaWNpdHkgb2YgdGhlIHZhcmlhYmxlIG11c3QgYmUgY29tcGF0aWJsZSB3aXRoIHRoZSBtdWx0aXBsaWNpdHkgb2YgdGhlIG91dHB1dCBwaW4uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyZXN1bHQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vT3V0cHV0UGluIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBPdXRwdXRQaW4gb24gd2hpY2ggdGhlIHJlc3VsdCB2YWx1ZXMgYXJlIHBsYWNlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0FjdGlvbi9vdXRwdXQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlJlY2xhc3NpZnlPYmplY3RBY3Rpb24iIGVTdXBlclR5cGVzPSIjLy9BY3Rpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgUmVjbGFzc2lmeU9iamVjdEFjdGlvbiBpcyBhbiBBY3Rpb24gdGhhdCBjaGFuZ2VzIHRoZSBDbGFzc2lmaWVycyB0aGF0IGNsYXNzaWZ5IGFuIG9iamVjdC4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaW5wdXRfcGluIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ib2JqZWN0LnR5cGUgPSBudWxsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG9iamVjdCBJbnB1dFBpbiBoYXMgbm8gdHlwZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImNsYXNzaWZpZXJfbm90X2Fic3RyYWN0IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibm90IG5ld0NsYXNzaWZpZXItPmV4aXN0cyhpc0Fic3RyYWN0KSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9Ik5vbmUgb2YgdGhlIG5ld0NsYXNzaWZpZXJzIG1heSBiZSBhYnN0cmFjdC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im11bHRpcGxpY2l0eSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im9iamVjdC5pcygxLDEpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG11bHRpcGxpY2l0eSBvZiB0aGUgb2JqZWN0IElucHV0UGluIGlzIDEuLjEuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpc1JlcGxhY2VBbGwiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iZmFsc2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgd2hldGhlciBleGlzdGluZyBDbGFzc2lmaWVycyBzaG91bGQgYmUgcmVtb3ZlZCBiZWZvcmUgYWRkaW5nIHRoZSBuZXcgQ2xhc3NpZmllcnMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im5ld0NsYXNzaWZpZXIiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0NsYXNzaWZpZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIHNldCBvZiBDbGFzc2lmaWVycyB0byBiZSBhZGRlZCB0byB0aGUgQ2xhc3NpZmllcnMgb2YgdGhlIGdpdmVuIG9iamVjdC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib2JqZWN0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0lucHV0UGluIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBJbnB1dFBpbiB0aGF0IGhvbGRzIHRoZSBvYmplY3QgdG8gYmUgcmVjbGFzc2lmaWVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQWN0aW9uL2lucHV0Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJvbGRDbGFzc2lmaWVyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9DbGFzc2lmaWVyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBzZXQgb2YgQ2xhc3NpZmllcnMgdG8gYmUgcmVtb3ZlZCBmcm9tIHRoZSBDbGFzc2lmaWVycyBvZiB0aGUgZ2l2ZW4gb2JqZWN0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJSZWR1Y2VBY3Rpb24iIGVTdXBlclR5cGVzPSIjLy9BY3Rpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgUmVkdWNlQWN0aW9uIGlzIGFuIEFjdGlvbiB0aGF0IHJlZHVjZXMgYSBjb2xsZWN0aW9uIHRvIGEgc2luZ2xlIHZhbHVlIGJ5IHJlcGVhdGVkbHkgY29tYmluaW5nIHRoZSBlbGVtZW50cyBvZiB0aGUgY29sbGVjdGlvbiB1c2luZyBhIHJlZHVjZXIgQmVoYXZpb3IuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InJlZHVjZXJfaW5wdXRzX291dHB1dCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImxldCBpbnB1dHM6IE9yZGVyZWRTZXQoUGFyYW1ldGVyKSA9IHJlZHVjZXIuaW5wdXRQYXJhbWV0ZXJzKCkgaW4mI3hEOyYjeEE7bGV0IG91dHB1dHM6IE9yZGVyZWRTZXQoUGFyYW1ldGVyKSA9IHJlZHVjZXIub3V0cHV0UGFyYW1ldGVycygpIGluJiN4RDsmI3hBO2lucHV0cy0+c2l6ZSgpPTIgYW5kIG91dHB1dHMtPnNpemUoKT0xIGFuZCYjeEQ7JiN4QTtpbnB1dHMudHlwZS0+Zm9yQWxsKHQgfCAmI3hEOyYjeEE7JiN4OTtvdXRwdXRzLnR5cGUtPmZvckFsbChjb25mb3Jtc1RvKHQpKSBhbmQgJiN4RDsmI3hBOyYjeDk7LS0gTm90ZSB0aGF0IHRoZSBmb2xsb3dpbmcgb25seSBjaGVja3MgdGhlIGNhc2Ugd2hlbiB0aGUgY29sbGVjdGlvbiBpcyB2aWEgbXVsdGlwbGUgdG9rZW5zLiYjeEQ7JiN4QTsmI3g5O2NvbGxlY3Rpb24udXBwZXJCb3VuZCgpPjEgaW1wbGllcyBjb2xsZWN0aW9uLnR5cGUuY29uZm9ybXNUbyh0KSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcmVkdWNlciBCZWhhdmlvciBtdXN0IGhhdmUgdHdvIGlucHV0IG93bmVkUGFyYW1ldGVycyBhbmQgb25lIG91dHB1dCBvd25lZFBhcmFtZXRlciwgd2hlcmUgdGhlIHR5cGUgb2YgdGhlIG91dHB1dCBQYXJhbWV0ZXIgYW5kIHRoZSB0eXBlIG9mIGVsZW1lbnRzIG9mIHRoZSBpbnB1dCBjb2xsZWN0aW9uIGNvbmZvcm0gdG8gdGhlIHR5cGVzIG9mIHRoZSBpbnB1dCBQYXJhbWV0ZXJzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaW5wdXRfdHlwZV9pc19jb2xsZWN0aW9uIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB0eXBlIG9mIHRoZSBjb2xsZWN0aW9uIElucHV0UGluIG11c3QgYmUgYSBjb2xsZWN0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ib3V0cHV0X3R5cGVzX2FyZV9jb21wYXRpYmxlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icmVkdWNlci5vdXRwdXRQYXJhbWV0ZXJzKCkudHlwZS0+Zm9yQWxsKGNvbmZvcm1zVG8ocmVzdWx0LnR5cGUpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB0eXBlIG9mIHRoZSBvdXRwdXQgb2YgdGhlIHJlZHVjZXIgQmVoYXZpb3IgbXVzdCBjb25mb3JtIHRvIHRoZSB0eXBlIG9mIHRoZSByZXN1bHQgT3V0cHV0UGluLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iY29sbGVjdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9JbnB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgSW5wdXRQaW4gdGhhdCBwcm92aWRlcyB0aGUgY29sbGVjdGlvbiB0byBiZSByZWR1Y2VkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQWN0aW9uL2lucHV0Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpc09yZGVyZWQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iZmFsc2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbmRpY2F0ZXMgd2hldGhlciB0aGUgb3JkZXIgb2YgdGhlIGlucHV0IGNvbGxlY3Rpb24gc2hvdWxkIGRldGVybWluZSB0aGUgb3JkZXIgaW4gd2hpY2ggdGhlIHJlZHVjZXIgQmVoYXZpb3IgaXMgYXBwbGllZCB0byBpdHMgZWxlbWVudHMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InJlZHVjZXIiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vQmVoYXZpb3IiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIEJlaGF2aW9yIHRoYXQgaXMgcmVwcmVhdGVkbHkgYXBwbGllZCB0byB0d28gZWxlbWVudHMgb2YgdGhlIGlucHV0IGNvbGxlY3Rpb24gdG8gcHJvZHVjZSBhIHZhbHVlIHRoYXQgaXMgb2YgdGhlIHNhbWUgdHlwZSBhcyBlbGVtZW50cyBvZiB0aGUgY29sbGVjdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVzdWx0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL091dHB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgb3V0cHV0IHBpbiBvbiB3aGljaCB0aGUgcmVzdWx0IHZhbHVlIGlzIHBsYWNlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0FjdGlvbi9vdXRwdXQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlJlbW92ZVN0cnVjdHVyYWxGZWF0dXJlVmFsdWVBY3Rpb24iCisgICAgICBlU3VwZXJUeXBlcz0iIy8vV3JpdGVTdHJ1Y3R1cmFsRmVhdHVyZUFjdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBSZW1vdmVTdHJ1Y3R1cmFsRmVhdHVyZVZhbHVlQWN0aW9uIGlzIGEgV3JpdGVTdHJ1Y3R1cmFsRmVhdHVyZUFjdGlvbiB0aGF0IHJlbW92ZXMgdmFsdWVzIGZyb20gYSBTdHJ1Y3R1cmFsRmVhdHVyZS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0icmVtb3ZlQXRfYW5kX3ZhbHVlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaWYgc3RydWN0dXJhbEZlYXR1cmUuaXNPcmRlcmVkIGFuZCBub3Qgc3RydWN0dXJhbEZlYXR1cmUuaXNVbmlxdWUgYW5kICBub3QgaXNSZW1vdmVEdXBsaWNhdGVzIHRoZW4mI3hEOyYjeEE7ICB2YWx1ZSA9IG51bGwgYW5kJiN4RDsmI3hBOyAgcmVtb3ZlQXQgJmx0Oz4gbnVsbCBhbmQmI3hEOyYjeEE7ICByZW1vdmVBdC50eXBlID0gVW5saW1pdGVkTmF0dXJhbCBhbmQmI3hEOyYjeEE7ICByZW1vdmVBdC5pcygxLDEpJiN4RDsmI3hBO2Vsc2UmI3hEOyYjeEE7ICByZW1vdmVBdCA9IG51bGwgYW5kIHZhbHVlICZsdDs+IG51bGwmI3hEOyYjeEE7ZW5kaWYiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZW1vdmVTdHJ1Y3R1cmFsRmVhdHVyZVZhbHVlQWN0aW9ucyByZW1vdmluZyBhIHZhbHVlIGZyb20gb3JkZXJlZCwgbm9uLXVuaXF1ZSBTdHJ1Y3R1cmFsRmVhdHVyZXMgbXVzdCBoYXZlIGEgc2luZ2xlIHJlbW92ZUF0IElucHV0UGluIGFuZCBubyB2YWx1ZSBJbnB1dFBpbiwgaWYgaXNSZW1vdmVEdXBsaWNhdGVzIGlzIGZhbHNlLiBUaGUgcmVtb3ZlQXQgSW5wdXRQaW4gbXVzdCBiZSBvZiB0eXBlIFVubGltaXRlZCBOYXR1cmFsIHdpdGggbXVsdGlwbGljaXR5IDEuLjEuIE90aGVyd2lzZSwgdGhlIEFjdGlvbiBoYXMgYSB2YWx1ZSBJbnB1dFBpbiBhbmQgbm8gcmVtb3ZlQXQgSW5wdXRQaW4uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpc1JlbW92ZUR1cGxpY2F0ZXMiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iZmFsc2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgd2hldGhlciB0byByZW1vdmUgZHVwbGljYXRlcyBvZiB0aGUgdmFsdWUgaW4gbm9udW5pcXVlIFN0cnVjdHVyYWxGZWF0dXJlcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVtb3ZlQXQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vSW5wdXRQaW4iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gSW5wdXRQaW4gdGhhdCBwcm92aWRlcyB0aGUgcG9zaXRpb24gb2YgYW4gZXhpc3RpbmcgdmFsdWUgdG8gcmVtb3ZlIGluIG9yZGVyZWQsIG5vbnVuaXF1ZSBzdHJ1Y3R1cmFsIGZlYXR1cmVzLiBUaGUgdHlwZSBvZiB0aGUgcmVtb3ZlQXQgSW5wdXRQaW4gaXMgVW5saW1pdGVkTmF0dXJhbCwgYnV0IHRoZSB2YWx1ZSBjYW5ub3QgYmUgemVybyBvciB1bmxpbWl0ZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9BY3Rpb24vaW5wdXQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlJlbW92ZVZhcmlhYmxlVmFsdWVBY3Rpb24iIGVTdXBlclR5cGVzPSIjLy9Xcml0ZVZhcmlhYmxlQWN0aW9uIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFJlbW92ZVZhcmlhYmxlVmFsdWVBY3Rpb24gaXMgYSBXcml0ZVZhcmlhYmxlQWN0aW9uIHRoYXQgcmVtb3ZlcyB2YWx1ZXMgZnJvbSBhIFZhcmlhYmxlcy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0icmVtb3ZlQXRfYW5kX3ZhbHVlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaWYgIHZhcmlhYmxlLmlzT3JkZXJlZCBhbmQgbm90IHZhcmlhYmxlLmlzVW5pcXVlIGFuZCBub3QgaXNSZW1vdmVEdXBsaWNhdGVzIHRoZW4gJiN4RDsmI3hBOyAgdmFsdWUgPSBudWxsIGFuZCYjeEQ7JiN4QTsgIHJlbW92ZUF0ICZsdDs+IG51bGwgYW5kJiN4RDsmI3hBOyAgcmVtb3ZlQXQudHlwZSA9IFVubGltaXRlZE5hdHVyYWwgYW5kJiN4RDsmI3hBOyAgcmVtb3ZlQXQuaXMoMSwxKSYjeEQ7JiN4QTtlbHNlJiN4RDsmI3hBOyAgcmVtb3ZlQXQgPSBudWxsIGFuZCB2YWx1ZSAmbHQ7PiBudWxsJiN4RDsmI3hBO2VuZGlmIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmVhZFZhcmlhYmxlQWN0aW9ucyByZW1vdmluZyBhIHZhbHVlIGZyb20gb3JkZXJlZCwgbm9uLXVuaXF1ZSBWYXJpYWJsZXMgbXVzdCBoYXZlIGEgc2luZ2xlIHJlbW92ZUF0IElucHV0UGluIGFuZCBubyB2YWx1ZSBJbnB1dFBpbiwgaWYgaXNSZW1vdmVEdXBsaWNhdGVzIGlzIGZhbHNlLiBUaGUgcmVtb3ZlQXQgSW5wdXRQaW4gbXVzdCBiZSBvZiB0eXBlIFVubGltaXRlZCBOYXR1cmFsIHdpdGggbXVsdGlwbGljaXR5IDEuLjEuIE90aGVyd2lzZSwgdGhlIEFjdGlvbiBoYXMgYSB2YWx1ZSBJbnB1dFBpbiBhbmQgbm8gcmVtb3ZlQXQgSW5wdXRQaW4uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJpc1JlbW92ZUR1cGxpY2F0ZXMiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiIgZGVmYXVsdFZhbHVlTGl0ZXJhbD0iZmFsc2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgd2hldGhlciB0byByZW1vdmUgZHVwbGljYXRlcyBvZiB0aGUgdmFsdWUgaW4gbm9udW5pcXVlIFZhcmlhYmxlcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVtb3ZlQXQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vSW5wdXRQaW4iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gSW5wdXRQaW4gdGhhdCBwcm92aWRlcyB0aGUgcG9zaXRpb24gb2YgYW4gZXhpc3RpbmcgdmFsdWUgdG8gcmVtb3ZlIGluIG9yZGVyZWQsIG5vbnVuaXF1ZSBWYXJpYWJsZXMuIFRoZSB0eXBlIG9mIHRoZSByZW1vdmVBdCBJbnB1dFBpbiBpcyBVbmxpbWl0ZWROYXR1cmFsLCBidXQgdGhlIHZhbHVlIGNhbm5vdCBiZSB6ZXJvIG9yIHVubGltaXRlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0FjdGlvbi9pbnB1dCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUmVwbHlBY3Rpb24iIGVTdXBlclR5cGVzPSIjLy9BY3Rpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgUmVwbHlBY3Rpb24gaXMgYW4gQWN0aW9uIHRoYXQgYWNjZXB0cyBhIHNldCBvZiByZXBseSB2YWx1ZXMgYW5kIGEgdmFsdWUgY29udGFpbmluZyByZXR1cm4gaW5mb3JtYXRpb24gcHJvZHVjZWQgYnkgYSBwcmV2aW91cyBBY2NlcHRDYWxsQWN0aW9uLiBUaGUgUmVwbHlBY3Rpb24gcmV0dXJucyB0aGUgdmFsdWVzIHRvIHRoZSBjYWxsZXIgb2YgdGhlIHByZXZpb3VzIGNhbGwsIGNvbXBsZXRpbmcgZXhlY3V0aW9uIG9mIHRoZSBjYWxsLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJwaW5zX21hdGNoX3BhcmFtZXRlciIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImxldCBwYXJhbWV0ZXI6T3JkZXJlZFNldChQYXJhbWV0ZXIpID0gcmVwbHlUb0NhbGwuZXZlbnQub2NsQXNUeXBlKENhbGxFdmVudCkub3BlcmF0aW9uLm91dHB1dFBhcmFtZXRlcnMoKSBpbiYjeEQ7JiN4QTtyZXBseVZhbHVlLT5zaXplKCk9cGFyYW1ldGVyLT5zaXplKCkgYW5kJiN4RDsmI3hBO1NlcXVlbmNlezEuLnJlcGx5VmFsdWUtPnNpemUoKX0tPmZvckFsbChpIHwmI3hEOyYjeEE7JiN4OTtyZXBseVZhbHVlLT5hdChpKS50eXBlLmNvbmZvcm1zVG8ocGFyYW1ldGVyLT5hdChpKS50eXBlKSBhbmQmI3hEOyYjeEE7JiN4OTtyZXBseVZhbHVlLT5hdChpKS5pc09yZGVyZWQ9cGFyYW1ldGVyLT5hdChpKS5pc09yZGVyZWQgYW5kJiN4RDsmI3hBOyYjeDk7cmVwbHlWYWx1ZS0+YXQoaSkuY29tcGF0aWJsZVdpdGgocGFyYW1ldGVyLT5hdChpKSkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHJlcGx5VmFsdWUgSW5wdXRQaW5zIG11c3QgbWF0Y2ggdGhlIG91dHB1dCAocmV0dXJuLCBvdXQsIGFuZCBpbm91dCkgcGFyYW1ldGVycyBvZiB0aGUgb3BlcmF0aW9uIG9mIHRoZSBldmVudCBvZiB0aGUgcmVwbHlUb0NhbGwgVHJpZ2dlciBpbiBudW1iZXIsIHR5cGUsIG9yZGVyaW5nLCBhbmQgbXVsdGlwbGljaXR5LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZXZlbnRfb25fcmVwbHlfdG9fY2FsbF90cmlnZ2VyIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icmVwbHlUb0NhbGwuZXZlbnQub2NsSXNLaW5kT2YoQ2FsbEV2ZW50KSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBldmVudCBvZiB0aGUgcmVwbHlUb0NhbGwgVHJpZ2dlciBtdXN0IGJlIGEgQ2FsbEV2ZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVwbHlUb0NhbGwiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vVHJpZ2dlciI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBUcmlnZ2VyIHNwZWNpZnlpbmcgdGhlIE9wZXJhdGlvbiB3aG9zZSBjYWxsIGlzIGJlaW5nIHJlcGxpZWQgdG8uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InJlcGx5VmFsdWUiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vSW5wdXRQaW4iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBsaXN0IG9mIElucHV0UGlucyBwcm92aWRpbmcgdGhlIHZhbHVlcyBmb3IgdGhlIG91dHB1dCAoaW5vdXQsIG91dCwgYW5kIHJldHVybikgUGFyYW1ldGVycyBvZiB0aGUgT3BlcmF0aW9uLiBUaGVzZSB2YWx1ZXMgYXJlIHJldHVybmVkIHRvIHRoZSBjYWxsZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9BY3Rpb24vaW5wdXQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InJldHVybkluZm9ybWF0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0lucHV0UGluIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIElucHV0UGluIHRoYXQgaG9sZHMgdGhlIHJldHVybiBpbmZvcm1hdGlvbiB2YWx1ZSBwcm9kdWNlZCBieSBhbiBlYXJsaWVyIEFjY2VwdENhbGxBY3Rpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9BY3Rpb24vaW5wdXQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlNlbmRPYmplY3RBY3Rpb24iIGVTdXBlclR5cGVzPSIjLy9JbnZvY2F0aW9uQWN0aW9uIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFNlbmRPYmplY3RBY3Rpb24gaXMgYW4gSW52b2NhdGlvbkFjdGlvbiB0aGF0IHRyYW5zbWl0cyBhbiBpbnB1dCBvYmplY3QgdG8gdGhlIHRhcmdldCBvYmplY3QsIHdoaWNoIGlzIGhhbmRsZWQgYXMgYSByZXF1ZXN0IG1lc3NhZ2UgYnkgdGhlIHRhcmdldCBvYmplY3QuIFRoZSByZXF1ZXN0b3IgY29udGludWVzIGV4ZWN1dGlvbiBpbW1lZGlhdGVseSBhZnRlciB0aGUgb2JqZWN0IGlzIHNlbnQgb3V0IGFuZCBjYW5ub3QgcmVjZWl2ZSByZXBseSB2YWx1ZXMuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InR5cGVfdGFyZ2V0X3BpbiIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im9uUG9ydCZsdDs+bnVsbCBpbXBsaWVzIHRhcmdldC50eXBlLm9jbEFzVHlwZShDbGFzc2lmaWVyKS5hbGxGZWF0dXJlcygpLT5pbmNsdWRlcyhvblBvcnQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgb25Qb3J0IGlzIG5vdCBlbXB0eSwgdGhlIFBvcnQgZ2l2ZW4gYnkgb25Qb3J0IG11c3QgYmUgYW4gb3duZWQgb3IgaW5oZXJpdGVkIGZlYXR1cmUgb2YgdGhlIHR5cGUgb2YgdGhlIHRhcmdldCBJbnB1dFBpbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InJlcXVlc3QiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vSW5wdXRQaW4iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHJlcXVlc3Qgb2JqZWN0LCB3aGljaCBpcyB0cmFuc21pdHRlZCB0byB0aGUgdGFyZ2V0IG9iamVjdC4gVGhlIG9iamVjdCBtYXkgYmUgY29waWVkIGluIHRyYW5zbWlzc2lvbiwgc28gaWRlbnRpdHkgbWlnaHQgbm90IGJlIHByZXNlcnZlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vSW52b2NhdGlvbkFjdGlvbi9hcmd1bWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0idGFyZ2V0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0lucHV0UGluIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB0YXJnZXQgb2JqZWN0IHRvIHdoaWNoIHRoZSBvYmplY3QgaXMgc2VudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0FjdGlvbi9pbnB1dCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU2VuZFNpZ25hbEFjdGlvbiIgZVN1cGVyVHlwZXM9IiMvL0ludm9jYXRpb25BY3Rpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgU2VuZFNpZ25hbEFjdGlvbiBpcyBhbiBJbnZvY2F0aW9uQWN0aW9uIHRoYXQgY3JlYXRlcyBhIFNpZ25hbCBpbnN0YW5jZSBhbmQgdHJhbnNtaXRzIGl0IHRvIHRoZSB0YXJnZXQgb2JqZWN0LiBWYWx1ZXMgZnJvbSB0aGUgYXJndW1lbnQgSW5wdXRQaW5zIGFyZSB1c2VkIHRvIHByb3ZpZGUgdmFsdWVzIGZvciB0aGUgYXR0cmlidXRlcyBvZiB0aGUgU2lnbmFsLiBUaGUgcmVxdWVzdG9yIGNvbnRpbnVlcyBleGVjdXRpb24gaW1tZWRpYXRlbHkgYWZ0ZXIgdGhlIFNpZ25hbCBpbnN0YW5jZSBpcyBzZW50IG91dCBhbmQgY2Fubm90IHJlY2VpdmUgcmVwbHkgdmFsdWVzLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJ0eXBlX29yZGVyaW5nX211bHRpcGxpY2l0eSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImxldCBhdHRyaWJ1dGU6IE9yZGVyZWRTZXQoUHJvcGVydHkpID0gc2lnbmFsLmFsbEF0dHJpYnV0ZXMoKSBpbiYjeEQ7JiN4QTtTZXF1ZW5jZXsxLi5hcmd1bWVudC0+c2l6ZSgpfS0+Zm9yQWxsKGkgfCAmI3hEOyYjeEE7JiN4OTthcmd1bWVudC0+YXQoaSkudHlwZS5jb25mb3Jtc1RvKGF0dHJpYnV0ZS0+YXQoaSkudHlwZSkgYW5kICYjeEQ7JiN4QTsmI3g5O2FyZ3VtZW50LT5hdChpKS5pc09yZGVyZWQgPSBhdHRyaWJ1dGUtPmF0KGkpLmlzT3JkZXJlZCBhbmQmI3hEOyYjeEE7JiN4OTthcmd1bWVudC0+YXQoaSkuY29tcGF0aWJsZVdpdGgoYXR0cmlidXRlLT5hdChpKSkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHR5cGUsIG9yZGVyaW5nLCBhbmQgbXVsdGlwbGljaXR5IG9mIGFuIGFyZ3VtZW50IElucHV0UGluIG11c3QgYmUgdGhlIHNhbWUgYXMgdGhlIGNvcnJlc3BvbmRpbmcgYXR0cmlidXRlIG9mIHRoZSBzaWduYWwuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJudW1iZXJfb3JkZXIiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJhcmd1bWVudC0+c2l6ZSgpPXNpZ25hbC5hbGxBdHRyaWJ1dGVzKCktPnNpemUoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBudW1iZXIgYW5kIG9yZGVyIG9mIGFyZ3VtZW50IElucHV0UGlucyBtdXN0IGJlIHRoZSBzYW1lIGFzIHRoZSBudW1iZXIgYW5kIG9yZGVyIG9mIGF0dHJpYnV0ZXMgb2YgdGhlIHNpZ25hbC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InR5cGVfdGFyZ2V0X3BpbiIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im5vdCBvblBvcnQtPmlzRW1wdHkoKSBpbXBsaWVzIHRhcmdldC50eXBlLm9jbEFzVHlwZShDbGFzc2lmaWVyKS5hbGxGZWF0dXJlcygpLT5pbmNsdWRlcyhvblBvcnQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgb25Qb3J0IGlzIG5vdCBlbXB0eSwgdGhlIFBvcnQgZ2l2ZW4gYnkgb25Qb3J0IG11c3QgYmUgYW4gb3duZWQgb3IgaW5oZXJpdGVkIGZlYXR1cmUgb2YgdGhlIHR5cGUgb2YgdGhlIHRhcmdldCBJbnB1dFBpbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InNpZ25hbCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9TaWduYWwiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgU2lnbmFsIHdob3NlIGluc3RhbmNlIGlzIHRyYW5zbWl0dGVkIHRvIHRoZSB0YXJnZXQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InRhcmdldCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9JbnB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgSW5wdXRQaW4gdGhhdCBwcm92aWRlcyB0aGUgdGFyZ2V0IG9iamVjdCB0byB3aGljaCB0aGUgU2lnbmFsIGluc3RhbmNlIGlzIHNlbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9BY3Rpb24vaW5wdXQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlNlcXVlbmNlTm9kZSIgZVN1cGVyVHlwZXM9IiMvL1N0cnVjdHVyZWRBY3Rpdml0eU5vZGUiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgU2VxdWVuY2VOb2RlIGlzIGEgU3RydWN0dXJlZEFjdGl2aXR5Tm9kZSB0aGF0IGV4ZWN1dGVzIGEgc2VxdWVuY2Ugb2YgRXhlY3V0YWJsZU5vZGVzIGluIG9yZGVyLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJleGVjdXRhYmxlTm9kZSIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9FeGVjdXRhYmxlTm9kZSIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgb3JkZXJlZCBzZXQgb2YgRXhlY3V0YWJsZU5vZGVzIHRvIGJlIHNlcXVlbmNlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vU3RydWN0dXJlZEFjdGl2aXR5Tm9kZS9ub2RlIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJTdGFydENsYXNzaWZpZXJCZWhhdmlvckFjdGlvbiIgZVN1cGVyVHlwZXM9IiMvL0FjdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBTdGFydENsYXNzaWZpZXJCZWhhdmlvckFjdGlvbiBpcyBhbiBBY3Rpb24gdGhhdCBzdGFydHMgdGhlIGNsYXNzaWZpZXJCZWhhdmlvciBvZiB0aGUgaW5wdXQgb2JqZWN0LiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJtdWx0aXBsaWNpdHkiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJvYmplY3QuaXMoMSwxKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBtdWx0aXBsaWNpdHkgb2YgdGhlIG9iamVjdCBJbnB1dFBpbiBpcyAxLi4xIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJ0eXBlX2hhc19jbGFzc2lmaWVyIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ib2JqZWN0LnR5cGUtPm5vdEVtcHR5KCkgaW1wbGllcyAmI3hEOyYjeEE7ICAgKG9iamVjdC50eXBlLm9jbElzS2luZE9mKEJlaGF2aW9yZWRDbGFzc2lmaWVyKSBhbmQgb2JqZWN0LnR5cGUub2NsQXNUeXBlKEJlaGF2aW9yZWRDbGFzc2lmaWVyKS5jbGFzc2lmaWVyQmVoYXZpb3ImbHQ7Pm51bGwpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgdGhlIElucHV0UGluIGhhcyBhIHR5cGUsIHRoZW4gdGhlIHR5cGUgb3Igb25lIG9mIGl0cyBhbmNlc3RvcnMgbXVzdCBoYXZlIGEgY2xhc3NpZmllckJlaGF2aW9yLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib2JqZWN0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0lucHV0UGluIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBJbnB1dFBpbiB0aGF0IGhvbGRzIHRoZSBvYmplY3Qgd2hvc2UgY2xhc3NpZmllckJlaGF2aW9yIGlzIHRvIGJlIHN0YXJ0ZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9BY3Rpb24vaW5wdXQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlN0YXJ0T2JqZWN0QmVoYXZpb3JBY3Rpb24iIGVTdXBlclR5cGVzPSIjLy9DYWxsQWN0aW9uIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFN0YXJ0T2JqZWN0QmVoYXZpb3JBY3Rpb24gaXMgYW4gSW52b2NhdGlvbkFjdGlvbiB0aGF0IHN0YXJ0cyB0aGUgZXhlY3V0aW9uIGVpdGhlciBvZiBhIGRpcmVjdGx5IGluc3RhbnRpYXRlZCBCZWhhdmlvciBvciBvZiB0aGUgY2xhc3NpZmllckJlaGF2aW9yIG9mIGFuIG9iamVjdC4gQXJndW1lbnQgdmFsdWVzIG1heSBiZSBzdXBwbGllZCBmb3IgdGhlIGlucHV0IFBhcmFtZXRlcnMgb2YgdGhlIEJlaGF2aW9yLiBJZiB0aGUgQmVoYXZpb3IgaXMgaW52b2tlZCBzeW5jaHJvbm91c2x5LCB0aGVuIG91dHB1dCB2YWx1ZXMgbWF5IGJlIG9idGFpbmVkIGZvciBvdXRwdXQgUGFyYW1ldGVycy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iZHVwbGljYXRlcyI+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIG5hbWU9Im91dHB1dFBhcmFtZXRlcnMiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICAgIGVUeXBlPSIjLy9QYXJhbWV0ZXIiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmV0dXJuIHRoZSBpbm91dCwgb3V0IGFuZCByZXR1cm4gb3duZWRQYXJhbWV0ZXJzIG9mIHRoZSBCZWhhdmlvciBiZWluZyBjYWxsZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9DYWxsQWN0aW9uL291dHB1dFBhcmFtZXRlcnMiLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ic2VsZi5iZWhhdmlvcigpLm91dHB1dFBhcmFtZXRlcnMoKSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvY29udGVudHM+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIG5hbWU9ImlucHV0UGFyYW1ldGVycyIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgICAgZVR5cGU9IiMvL1BhcmFtZXRlciI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZXR1cm4gdGhlIGluIGFuZCBpbm91dCBvd25lZFBhcmFtZXRlcnMgb2YgdGhlIEJlaGF2aW9yIGJlaW5nIGNhbGxlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL0NhbGxBY3Rpb24vaW5wdXRQYXJhbWV0ZXJzIi8+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InNlbGYuYmVoYXZpb3IoKS5pbnB1dFBhcmFtZXRlcnMoKSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvY29udGVudHM+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im11bHRpcGxpY2l0eV9vZl9vYmplY3QiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJvYmplY3QuaXMoMSwxKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBtdWx0aXBsaWNpdHkgb2YgdGhlIG9iamVjdCBJbnB1dFBpbiBtdXN0IGJlIDEuLjEuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJ0eXBlX29mX29iamVjdCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InNlbGYuYmVoYXZpb3IoKSZsdDs+bnVsbCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB0eXBlIG9mIHRoZSBvYmplY3QgSW5wdXRQaW4gbXVzdCBiZSBlaXRoZXIgYSBCZWhhdmlvciBvciBhIEJlaGF2aW9yZWRDbGFzc2lmaWVyIHdpdGggYSBjbGFzc2lmaWVyQmVoYXZpb3IuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJub19vbnBvcnQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJvblBvcnQtPmlzRW1wdHkoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgU3RhcnRPYmplY3RCZWhhdmlvckFjdGlvbiBtYXkgbm90IHNwZWNpZnkgb25Qb3J0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iYmVoYXZpb3IiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iIy8vQmVoYXZpb3IiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiB0aGUgdHlwZSBvZiB0aGUgb2JqZWN0IElucHV0UGluIGlzIGEgQmVoYXZpb3IsIHRoZW4gdGhhdCBCZWhhdmlvci4gT3RoZXJ3aXNlLCBpZiB0aGUgdHlwZSBvZiB0aGUgb2JqZWN0IElucHV0UGluIGlzIGEgQmVoYXZpb3JlZENsYXNzaWZpZXIsIHRoZW4gdGhlIGNsYXNzaWZpZXJCZWhhdmlvciBvZiB0aGF0IEJlaGF2aW9yZWRDbGFzc2lmaWVyLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaWYgb2JqZWN0LnR5cGUub2NsSXNLaW5kT2YoQmVoYXZpb3IpIHRoZW4mI3hEOyYjeEE7ICBvYmplY3QudHlwZS5vY2xBc1R5cGUoQmVoYXZpb3IpJiN4RDsmI3hBO2Vsc2UgaWYgb2JqZWN0LnR5cGUub2NsSXNLaW5kT2YoQmVoYXZpb3JlZENsYXNzaWZpZXIpIHRoZW4mI3hEOyYjeEE7ICBvYmplY3QudHlwZS5vY2xBc1R5cGUoQmVoYXZpb3JlZENsYXNzaWZpZXIpLmNsYXNzaWZpZXJCZWhhdmlvciYjeEQ7JiN4QTtlbHNlJiN4RDsmI3hBOyAgbnVsbCYjeEQ7JiN4QTtlbmRpZiYjeEQ7JiN4QTtlbmRpZiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib2JqZWN0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0lucHV0UGluIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIElucHV0UGluIHRoYXQgaG9sZHMgdGhlIG9iamVjdCB0aGF0IGlzIGVpdGhlciBhIEJlaGF2aW9yIHRvIGJlIHN0YXJ0ZWQgb3IgaGFzIGEgY2xhc3NpZmllckJlaGF2aW9yIHRvIGJlIHN0YXJ0ZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9BY3Rpb24vaW5wdXQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlRlc3RJZGVudGl0eUFjdGlvbiIgZVN1cGVyVHlwZXM9IiMvL0FjdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBUZXN0SWRlbnRpdHlBY3Rpb24gaXMgYW4gQWN0aW9uIHRoYXQgdGVzdHMgaWYgdHdvIHZhbHVlcyBhcmUgaWRlbnRpY2FsIG9iamVjdHMuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im11bHRpcGxpY2l0eSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImZpcnN0LmlzKDEsMSkgYW5kIHNlY29uZC5pcygxLDEpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG11bHRpcGxpY2l0eSBvZiB0aGUgSW5wdXRQaW5zIGlzIDEuLjEuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJub190eXBlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iZmlyc3QudHlwZT0gbnVsbCBhbmQgc2Vjb25kLnR5cGUgPSBudWxsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIElucHV0UGlucyBoYXZlIG5vIHR5cGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJyZXN1bHRfaXNfYm9vbGVhbiIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InJlc3VsdC50eXBlPUJvb2xlYW4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgdHlwZSBvZiB0aGUgcmVzdWx0IE91dHB1dFBpbiBpcyBCb29sZWFuLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZmlyc3QiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vSW5wdXRQaW4iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIElucHV0UGluIG9uIHdoaWNoIHRoZSBmaXJzdCBpbnB1dCBvYmplY3QgaXMgcGxhY2VkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQWN0aW9uL2lucHV0Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyZXN1bHQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vT3V0cHV0UGluIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBPdXRwdXRQaW4gd2hvc2UgQm9vbGVhbiB2YWx1ZSBpbmRpY2F0ZXMgd2hldGhlciB0aGUgdHdvIGlucHV0IG9iamVjdHMgYXJlIGlkZW50aWNhbC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0FjdGlvbi9vdXRwdXQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InNlY29uZCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9JbnB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgT3V0cHV0UGluIG9uIHdoaWNoIHRoZSBzZWNvbmQgaW5wdXQgb2JqZWN0IGlzIHBsYWNlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0FjdGlvbi9pbnB1dCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iVW5tYXJzaGFsbEFjdGlvbiIgZVN1cGVyVHlwZXM9IiMvL0FjdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gVW5tYXJzaGFsbEFjdGlvbiBpcyBhbiBBY3Rpb24gdGhhdCByZXRyaWV2ZXMgdGhlIHZhbHVlcyBvZiB0aGUgU3RydWN0dXJhbEZlYXR1cmVzIG9mIGFuIG9iamVjdCBhbmQgcGxhY2VzIHRoZW0gb24gT3V0cHV0UGlucy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ic3RydWN0dXJhbF9mZWF0dXJlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0idW5tYXJzaGFsbFR5cGUuYWxsQXR0cmlidXRlcygpLT5zaXplKCkgPj0gMSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB1bm1hcnNoYWxsVHlwZSBtdXN0IGhhdmUgYXQgbGVhc3Qgb25lIFN0cnVjdHVyYWxGZWF0dXJlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibnVtYmVyX29mX3Jlc3VsdCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InVubWFyc2hhbGxUeXBlLmFsbEF0dHJpYnV0ZXMoKS0+c2l6ZSgpID0gcmVzdWx0LT5zaXplKCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbnVtYmVyIG9mIHJlc3VsdCBvdXRwdXRQaW5zIG11c3QgYmUgdGhlIHNhbWUgYXMgdGhlIG51bWJlciBvZiBhdHRyaWJ1dGVzIG9mIHRoZSB1bm1hcnNoYWxsVHlwZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InR5cGVfb3JkZXJpbmdfYW5kX211bHRpcGxpY2l0eSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImxldCBhdHRyaWJ1dGU6T3JkZXJlZFNldChQcm9wZXJ0eSkgPSB1bm1hcnNoYWxsVHlwZS5hbGxBdHRyaWJ1dGVzKCkgaW4mI3hEOyYjeEE7U2VxdWVuY2V7MS4ucmVzdWx0LT5zaXplKCl9LT5mb3JBbGwoaSB8ICYjeEQ7JiN4QTsmI3g5O2F0dHJpYnV0ZS0+YXQoaSkudHlwZS5jb25mb3Jtc1RvKHJlc3VsdC0+YXQoaSkudHlwZSkgYW5kJiN4RDsmI3hBOyYjeDk7YXR0cmlidXRlLT5hdChpKS5pc09yZGVyZWQ9cmVzdWx0LT5hdChpKS5pc09yZGVyZWQgYW5kJiN4RDsmI3hBOyYjeDk7YXR0cmlidXRlLT5hdChpKS5jb21wYXRpYmxlV2l0aChyZXN1bHQtPmF0KGkpKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgdHlwZSwgb3JkZXJpbmcgYW5kIG11bHRpcGxpY2l0eSBvZiBlYWNoIGF0dHJpYnV0ZSBvZiB0aGUgdW5tYXJzaGFsbFR5cGUgbXVzdCBiZSBjb21wYXRpYmxlIHdpdGggdGhlIHR5cGUsIG9yZGVyaW5nIGFuZCBtdWx0aXBsaWNpdHkgb2YgdGhlIGNvcnJlc3BvbmRpbmcgcmVzdWx0IE91dHB1dFBpbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im11bHRpcGxpY2l0eV9vZl9vYmplY3QiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJvYmplY3QuaXMoMSwxKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBtdWx0aXBsaWNpdHkgb2YgdGhlIG9iamVjdCBJbnB1dFBpbiBpcyAxLi4xIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJvYmplY3RfdHlwZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im9iamVjdC50eXBlLmNvbmZvcm1zVG8odW5tYXJzaGFsbFR5cGUpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHR5cGUgb2YgdGhlIG9iamVjdCBJbnB1dFBpbiBjb25mb3JtIHRvIHRoZSB1bm1hcnNoYWxsVHlwZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im9iamVjdCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9JbnB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgSW5wdXRQaW4gdGhhdCBnaXZlcyB0aGUgb2JqZWN0IHRvIGJlIHVubWFyc2hhbGxlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0FjdGlvbi9pbnB1dCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVzdWx0IiBsb3dlckJvdW5kPSIxIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL091dHB1dFBpbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgT3V0cHV0UGlucyBvbiB3aGljaCBhcmUgcGxhY2VkIHRoZSB2YWx1ZXMgb2YgdGhlIFN0cnVjdHVyYWxGZWF0dXJlcyBvZiB0aGUgaW5wdXQgb2JqZWN0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vQWN0aW9uL291dHB1dCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0idW5tYXJzaGFsbFR5cGUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vQ2xhc3NpZmllciI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB0eXBlIG9mIHRoZSBvYmplY3QgdG8gYmUgdW5tYXJzaGFsbGVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJWYWx1ZVBpbiIgZVN1cGVyVHlwZXM9IiMvL0lucHV0UGluIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFZhbHVlUGluIGlzIGFuIElucHV0UGluIHRoYXQgcHJvdmlkZXMgYSB2YWx1ZSBieSBldmFsdWF0aW5nIGEgVmFsdWVTcGVjaWZpY2F0aW9uLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJub19pbmNvbWluZ19lZGdlcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImluY29taW5nLT5pc0VtcHR5KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFZhbHVlUGluIG1heSBoYXZlIG5vIGluY29taW5nIEFjdGl2aXR5RWRnZXMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjb21wYXRpYmxlX3R5cGUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJ2YWx1ZS50eXBlLmNvbmZvcm1zVG8odHlwZSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgdHlwZSBvZiB0aGUgdmFsdWUgVmFsdWVTcGVjaWZpY2F0aW9uIG11c3QgY29uZm9ybSB0byB0aGUgdHlwZSBvZiB0aGUgVmFsdWVQaW4uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJ2YWx1ZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9WYWx1ZVNwZWNpZmljYXRpb24iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFZhbHVlU3BlY2lmaWNhdGlvbiB0aGF0IGlzIGV2YWx1YXRlZCB0byBvYnRhaW4gdGhlIHZhbHVlIHRoYXQgdGhlIFZhbHVlUGluIHdpbGwgcHJvdmlkZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJBY3Rpdml0eUZpbmFsTm9kZSIgZVN1cGVyVHlwZXM9IiMvL0ZpbmFsTm9kZSI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gQWN0aXZpdHlGaW5hbE5vZGUgaXMgYSBGaW5hbE5vZGUgdGhhdCB0ZXJtaW5hdGVzIHRoZSBleGVjdXRpb24gb2YgaXRzIG93bmluZyBBY3Rpdml0eSBvciBTdHJ1Y3R1cmVkQWN0aXZpdHlOb2RlLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJGaW5hbE5vZGUiIGFic3RyYWN0PSJ0cnVlIiBlU3VwZXJUeXBlcz0iIy8vQ29udHJvbE5vZGUiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgRmluYWxOb2RlIGlzIGFuIGFic3RyYWN0IENvbnRyb2xOb2RlIGF0IHdoaWNoIGEgZmxvdyBpbiBhbiBBY3Rpdml0eSBzdG9wcy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibm9fb3V0Z29pbmdfZWRnZXMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJvdXRnb2luZy0+aXNFbXB0eSgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBGaW5hbE5vZGUgaGFzIG5vIG91dGdvaW5nIEFjdGl2aXR5RWRnZXMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb250cm9sTm9kZSIgYWJzdHJhY3Q9InRydWUiIGVTdXBlclR5cGVzPSIjLy9BY3Rpdml0eU5vZGUiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgQ29udHJvbE5vZGUgaXMgYW4gYWJzdHJhY3QgQWN0aXZpdHlOb2RlIHRoYXQgY29vcmRpbmF0ZXMgZmxvd3MgaW4gYW4gQWN0aXZpdHkuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkFjdGl2aXR5UGFyYW1ldGVyTm9kZSIgZVN1cGVyVHlwZXM9IiMvL09iamVjdE5vZGUiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIEFjdGl2aXR5UGFyYW1ldGVyTm9kZSBpcyBhbiBPYmplY3ROb2RlIGZvciBhY2NlcHRpbmcgdmFsdWVzIGZyb20gdGhlIGlucHV0IFBhcmFtZXRlcnMgb3IgcHJvdmlkaW5nIHZhbHVlcyB0byB0aGUgb3V0cHV0IFBhcmFtZXRlcnMgb2YgYW4gQWN0aXZpdHkuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im5vX291dGdvaW5nX2VkZ2VzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iKGluY29taW5nLT5ub3RFbXB0eSgpIGFuZCBvdXRnb2luZy0+aXNFbXB0eSgpKSBpbXBsaWVzICYjeEQ7JiN4QTsmI3g5OyhwYXJhbWV0ZXIuZGlyZWN0aW9uID0gUGFyYW1ldGVyRGlyZWN0aW9uS2luZDo6b3V0IG9yICYjeEQ7JiN4QTsmI3g5OyBwYXJhbWV0ZXIuZGlyZWN0aW9uID0gUGFyYW1ldGVyRGlyZWN0aW9uS2luZDo6aW5vdXQgb3IgJiN4RDsmI3hBOyYjeDk7IHBhcmFtZXRlci5kaXJlY3Rpb24gPSBQYXJhbWV0ZXJEaXJlY3Rpb25LaW5kOjpyZXR1cm4pIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gQWN0aXZpdHlQYXJhbWV0ZXJOb2RlIHdpdGggbm8gb3V0Z29pbmcgQWN0aXZpdHlFZGdlcyBhbmQgb25lIG9yIG1vcmUgaW5jb21pbmcgQWN0aXZpdHlFZGdlcyBtdXN0IGhhdmUgYSBwYXJhbWV0ZXIgd2l0aCBkaXJlY3Rpb24gb3V0LCBpbm91dCwgb3IgcmV0dXJuLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaGFzX3BhcmFtZXRlcnMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJhY3Rpdml0eS5vd25lZFBhcmFtZXRlci0+aW5jbHVkZXMocGFyYW1ldGVyKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBwYXJhbWV0ZXIgb2YgYW4gQWN0aXZpdHlQYXJhbWV0ZXJOb2RlIG11c3QgYmUgZnJvbSB0aGUgY29udGFpbmluZyBBY3Rpdml0eS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InNhbWVfdHlwZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InR5cGUgPSBwYXJhbWV0ZXIudHlwZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB0eXBlIG9mIGFuIEFjdGl2aXR5UGFyYW1ldGVyTm9kZSBpcyB0aGUgc2FtZSBhcyB0aGUgdHlwZSBvZiBpdHMgcGFyYW1ldGVyLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibm9faW5jb21pbmdfZWRnZXMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIob3V0Z29pbmctPm5vdEVtcHR5KCkgYW5kIGluY29taW5nLT5pc0VtcHR5KCkpIGltcGxpZXMgJiN4RDsmI3hBOyYjeDk7KHBhcmFtZXRlci5kaXJlY3Rpb24gPSBQYXJhbWV0ZXJEaXJlY3Rpb25LaW5kOjpfJ2luJyBvciAmI3hEOyYjeEE7JiN4OTsgcGFyYW1ldGVyLmRpcmVjdGlvbiA9IFBhcmFtZXRlckRpcmVjdGlvbktpbmQ6Omlub3V0KSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIEFjdGl2aXR5UGFyYW1ldGVyTm9kZSB3aXRoIG5vIGluY29taW5nIEFjdGl2aXR5RWRnZXMgYW5kIG9uZSBvciBtb3JlIG91dGdvaW5nIEFjdGl2aXR5RWRnZXMgbXVzdCBoYXZlIGEgcGFyYW1ldGVyIHdpdGggZGlyZWN0aW9uIGluIG9yIGlub3V0LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibm9fZWRnZXMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpbmNvbWluZy0+aXNFbXB0eSgpIG9yIG91dGdvaW5nLT5pc0VtcHR5KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBBY3Rpdml0eVBhcmFtZXRlck5vZGUgbWF5IGhhdmUgYWxsIGluY29taW5nIEFjdGl2aXR5RWRnZXMgb3IgYWxsIG91dGdvaW5nIEFjdGl2aXR5RWRnZXMsIGJ1dCBpdCBtdXN0IG5vdCBoYXZlIGJvdGggaW5jb21pbmcgYW5kIG91dGdvaW5nIEFjdGl2aXR5RWRnZXMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJwYXJhbWV0ZXIiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUGFyYW1ldGVyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIFBhcmFtZXRlciBmb3Igd2hpY2ggdGhlIEFjdGl2aXR5UGFyYW1ldGVyTm9kZSB3aWxsIGJlIGFjY2VwdGluZyBvciBwcm92aWRpbmcgdmFsdWVzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDZW50cmFsQnVmZmVyTm9kZSIgZVN1cGVyVHlwZXM9IiMvL09iamVjdE5vZGUiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgQ2VudHJhbEJ1ZmZlck5vZGUgaXMgYW4gT2JqZWN0Tm9kZSBmb3IgbWFuYWdpbmcgZmxvd3MgZnJvbSBtdWx0aXBsZSBzb3VyY2VzIGFuZCB0YXJnZXRzLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb250cm9sRmxvdyIgZVN1cGVyVHlwZXM9IiMvL0FjdGl2aXR5RWRnZSI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBDb250cm9sRmxvdyBpcyBhbiBBY3Rpdml0eUVkZ2UgdHJhdmVyc2VkIGJ5IGNvbnRyb2wgdG9rZW5zIG9yIG9iamVjdCB0b2tlbnMgb2YgY29udHJvbCB0eXBlLCB3aGljaCBhcmUgdXNlIHRvIGNvbnRyb2wgdGhlIGV4ZWN1dGlvbiBvZiBFeGVjdXRhYmxlTm9kZXMuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im9iamVjdF9ub2RlcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Iihzb3VyY2Uub2NsSXNLaW5kT2YoT2JqZWN0Tm9kZSkgaW1wbGllcyBzb3VyY2Uub2NsQXNUeXBlKE9iamVjdE5vZGUpLmlzQ29udHJvbFR5cGUpIGFuZCAmI3hEOyYjeEE7KHRhcmdldC5vY2xJc0tpbmRPZihPYmplY3ROb2RlKSBpbXBsaWVzIHRhcmdldC5vY2xBc1R5cGUoT2JqZWN0Tm9kZSkuaXNDb250cm9sVHlwZSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJDb250cm9sRmxvd3MgbWF5IG5vdCBoYXZlIE9iamVjdE5vZGVzIGF0IGVpdGhlciBlbmQsIGV4Y2VwdCBmb3IgT2JqZWN0Tm9kZXMgd2l0aCBjb250cm9sIHR5cGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJEYXRhU3RvcmVOb2RlIiBlU3VwZXJUeXBlcz0iIy8vQ2VudHJhbEJ1ZmZlck5vZGUiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgRGF0YVN0b3JlTm9kZSBpcyBhIENlbnRyYWxCdWZmZXJOb2RlIGZvciBwZXJzaXN0ZW50IGRhdGEuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkRlY2lzaW9uTm9kZSIgZVN1cGVyVHlwZXM9IiMvL0NvbnRyb2xOb2RlIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIERlY2lzaW9uTm9kZSBpcyBhIENvbnRyb2xOb2RlIHRoYXQgY2hvb3NlcyBiZXR3ZWVuIG91dGdvaW5nIEFjdGl2aXR5RWRnZXMgZm9yIHRoZSByb3V0aW5nIG9mIHRva2Vucy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iemVyb19pbnB1dF9wYXJhbWV0ZXJzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iKGRlY2lzaW9uSW5wdXQmbHQ7Pm51bGwgYW5kIGRlY2lzaW9uSW5wdXRGbG93PW51bGwgYW5kIGluY29taW5nLT5leGlzdHMob2NsSXNLaW5kT2YoQ29udHJvbEZsb3cpKSkgaW1wbGllcyYjeEQ7JiN4QTsgICBkZWNpc2lvbklucHV0LmlucHV0UGFyYW1ldGVycygpLT5pc0VtcHR5KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiB0aGUgRGVjaXNpb25Ob2RlIGhhcyBubyBkZWNpc2lvbklucHV0RmxvdyBhbmQgYW4gaW5jb21pbmcgQ29udHJvbEZsb3csIHRoZW4gYW55IGRlY2lzaW9uSW5wdXQgQmVoYXZpb3IgaGFzIG5vIGluIHBhcmFtZXRlcnMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJlZGdlcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImxldCBhbGxFZGdlczogU2V0KEFjdGl2aXR5RWRnZSkgPSBpbmNvbWluZy0+dW5pb24ob3V0Z29pbmcpIGluJiN4RDsmI3hBO2xldCBhbGxSZWxldmFudEVkZ2VzOiBTZXQoQWN0aXZpdHlFZGdlKSA9IGlmIGRlY2lzaW9uSW5wdXRGbG93LT5ub3RFbXB0eSgpIHRoZW4gYWxsRWRnZXMtPmV4Y2x1ZGluZyhkZWNpc2lvbklucHV0RmxvdykgZWxzZSBhbGxFZGdlcyBlbmRpZiBpbiYjeEQ7JiN4QTthbGxSZWxldmFudEVkZ2VzLT5mb3JBbGwob2NsSXNLaW5kT2YoQ29udHJvbEZsb3cpKSBvciBhbGxSZWxldmFudEVkZ2VzLT5mb3JBbGwob2NsSXNLaW5kT2YoT2JqZWN0RmxvdykpJiN4RDsmI3hBOyIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBBY3Rpdml0eUVkZ2VzIGluY29taW5nIHRvIGFuZCBvdXRnb2luZyBmcm9tIGEgRGVjaXNpb25Ob2RlLCBvdGhlciB0aGFuIHRoZSBkZWNpc2lvbklucHV0RmxvdyAoaWYgYW55KSwgbXVzdCBiZSBlaXRoZXIgYWxsIE9iamVjdEZsb3dzIG9yIGFsbCBDb250cm9sRmxvd3MuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJkZWNpc2lvbl9pbnB1dF9mbG93X2luY29taW5nIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaW5jb21pbmctPmluY2x1ZGVzKGRlY2lzaW9uSW5wdXRGbG93KSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBkZWNpc2lvbklucHV0RmxvdyBvZiBhIERlY2lzaW9uTm9kZSBtdXN0IGJlIGFuIGluY29taW5nIEFjdGl2aXR5RWRnZSBvZiB0aGUgRGVjaXNpb25Ob2RlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0idHdvX2lucHV0X3BhcmFtZXRlcnMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIoZGVjaXNpb25JbnB1dCZsdDs+bnVsbCBhbmQgZGVjaXNpb25JbnB1dEZsb3cmbHQ7Pm51bGwgYW5kIGluY29taW5nLT5mb3JBbGwob2NsSXNLaW5kT2YoT2JqZWN0RmxvdykpKSBpbXBsaWVzJiN4RDsmI3hBOyYjeDk7ZGVjaXNpb25JbnB1dC5pbnB1dFBhcmFtZXRlcnMoKS0+c2l6ZSgpPTIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiB0aGUgRGVjaXNpb25Ob2RlIGhhcyBhIGRlY2lzaW9uSW5wdXRGbG93IGFuZCBhbiBzZWNvbmQgaW5jb21pbmcgT2JqZWN0RmxvdywgdGhlbiBhbnkgZGVjaXNpb25JbnB1dCBoYXMgdHdvIGluIFBhcmFtZXRlcnMsIHRoZSBmaXJzdCBvZiB3aGljaCBoYXMgYSB0eXBlIHRoYXQgaXMgdGhlIHNhbWUgYXMgb3IgYSBzdXBlcnR5cGUgb2YgdGhlIHR5cGUgb2Ygb2JqZWN0IHRva2VucyBvZmZlcmVkIG9uIHRoZSBub24tZGVjaXNpb25JbnB1dEZsb3cgYW5kIHRoZSBzZWNvbmQgb2Ygd2hpY2ggaGFzIGEgdHlwZSB0aGF0IGlzIHRoZSBzYW1lIGFzIG9yIGEgc3VwZXJ0eXBlIG9mIHRoZSB0eXBlIG9mIG9iamVjdCB0b2tlbnMgb2ZmZXJlZCBvbiB0aGUgZGVjaXNpb25JbnB1dEZsb3cuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpbmNvbWluZ19vdXRnb2luZ19lZGdlcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9IihpbmNvbWluZy0+c2l6ZSgpID0gMSBvciBpbmNvbWluZy0+c2l6ZSgpID0gMikgYW5kIG91dGdvaW5nLT5zaXplKCkgPiAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBEZWNpc2lvbk5vZGUgaGFzIG9uZSBvciB0d28gaW5jb21pbmcgQWN0aXZpdHlFZGdlcyBhbmQgYXQgbGVhc3Qgb25lIG91dGdvaW5nIEFjdGl2aXR5RWRnZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImluY29taW5nX2NvbnRyb2xfb25lX2lucHV0X3BhcmFtZXRlciIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9IihkZWNpc2lvbklucHV0Jmx0Oz5udWxsIGFuZCBkZWNpc2lvbklucHV0RmxvdyZsdDs+bnVsbCBhbmQgaW5jb21pbmctPmV4aXN0cyhvY2xJc0tpbmRPZihDb250cm9sRmxvdykpKSBpbXBsaWVzJiN4RDsmI3hBOyYjeDk7ZGVjaXNpb25JbnB1dC5pbnB1dFBhcmFtZXRlcnMoKS0+c2l6ZSgpPTEiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiB0aGUgRGVjaXNpb25Ob2RlIGhhcyBhIGRlY2lzaW9uSW5wdXRGbG93IGFuZCBhbiBpbmNvbWluZyBDb250cm9sRmxvdywgdGhlbiBhbnkgZGVjaXNpb25JbnB1dCBCZWhhdmlvciBoYXMgb25lIGluIFBhcmFtZXRlciB3aG9zZSB0eXBlIGlzIHRoZSBzYW1lIGFzIG9yIGEgc3VwZXJ0eXBlIG9mIHRoZSB0eXBlIG9mIG9iamVjdCB0b2tlbnMgb2ZmZXJlZCBvbiB0aGUgZGVjaXNpb25JbnB1dEZsb3cuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJwYXJhbWV0ZXJzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iZGVjaXNpb25JbnB1dCZsdDs+bnVsbCBpbXBsaWVzICYjeEQ7JiN4QTsgIChkZWNpc2lvbklucHV0Lm93bmVkUGFyYW1ldGVyLT5mb3JBbGwocGFyIHwgJiN4RDsmI3hBOyAgICAgcGFyLmRpcmVjdGlvbiAmbHQ7PiBQYXJhbWV0ZXJEaXJlY3Rpb25LaW5kOjpvdXQgYW5kICYjeEQ7JiN4QTsgICAgIHBhci5kaXJlY3Rpb24gJmx0Oz4gUGFyYW1ldGVyRGlyZWN0aW9uS2luZDo6aW5vdXQgKSBhbmQmI3hEOyYjeEE7ICAgZGVjaXNpb25JbnB1dC5vd25lZFBhcmFtZXRlci0+b25lKHBhciB8ICYjeEQ7JiN4QTsgICAgIHBhci5kaXJlY3Rpb24gJmx0Oz4gUGFyYW1ldGVyRGlyZWN0aW9uS2luZDo6cmV0dXJuKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIGRlY2lzaW9uSW5wdXQgQmVoYXZpb3IgaGFzIG5vIG91dCBwYXJhbWV0ZXJzLCBubyBpbm91dCBwYXJhbWV0ZXJzLCBhbmQgb25lIHJldHVybiBwYXJhbWV0ZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpbmNvbWluZ19vYmplY3Rfb25lX2lucHV0X3BhcmFtZXRlciIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9IihkZWNpc2lvbklucHV0Jmx0Oz5udWxsIGFuZCBkZWNpc2lvbklucHV0Rmxvdz1udWxsIGFuZCBpbmNvbWluZy0+Zm9yQWxsKG9jbElzS2luZE9mKE9iamVjdEZsb3cpKSkgaW1wbGllcyYjeEQ7JiN4QTsmI3g5O2RlY2lzaW9uSW5wdXQuaW5wdXRQYXJhbWV0ZXJzKCktPnNpemUoKT0xIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgdGhlIERlY2lzaW9uTm9kZSBoYXMgbm8gZGVjaXNpb25JbnB1dEZsb3cgYW5kIGFuIGluY29taW5nIE9iamVjdEZsb3csIHRoZW4gYW55IGRlY2lzaW9uSW5wdXQgQmVoYXZpb3IgaGFzIG9uZSBpbiBQYXJhbWV0ZXIgd2hvc2UgdHlwZSBpcyB0aGUgc2FtZSBhcyBvciBhIHN1cGVydHlwZSBvZiB0aGUgdHlwZSBvZiBvYmplY3QgdG9rZW5zIG9mZmVyZWQgb24gdGhlIGluY29taW5nIE9iamVjdEZsb3cuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJkZWNpc2lvbklucHV0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL0JlaGF2aW9yIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBCZWhhdmlvciB0aGF0IGlzIGV4ZWN1dGVkIHRvIHByb3ZpZGUgYW4gaW5wdXQgdG8gZ3VhcmQgVmFsdWVTcGVjaWZpY2F0aW9ucyBvbiBBY3Rpdml0eUVkZ2VzIG91dGdvaW5nIGZyb20gdGhlIERlY2lzaW9uTm9kZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZGVjaXNpb25JbnB1dEZsb3ciIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vT2JqZWN0RmxvdyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIGFkZGl0aW9uYWwgQWN0aXZpdHlFZGdlIGluY29taW5nIHRvIHRoZSBEZWNpc2lvbk5vZGUgdGhhdCBwcm92aWRlcyBhIGRlY2lzaW9uIGlucHV0IHZhbHVlIGZvciB0aGUgZ3VhcmRzIFZhbHVlU3BlY2lmaWNhdGlvbnMgb24gQWN0aXZpdHlFZGdlcyBvdXRnb2luZyBmcm9tIHRoZSBEZWNpc2lvbk5vZGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9iamVjdEZsb3ciIGVTdXBlclR5cGVzPSIjLy9BY3Rpdml0eUVkZ2UiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIE9iamVjdEZsb3cgaXMgYW4gQWN0aXZpdHlFZGdlIHRoYXQgaXMgdHJhdmVyc2VkIGJ5IG9iamVjdCB0b2tlbnMgdGhhdCBtYXkgaG9sZCB2YWx1ZXMuIE9iamVjdCBmbG93cyBhbHNvIHN1cHBvcnQgbXVsdGljYXN0L3JlY2VpdmUsIHRva2VuIHNlbGVjdGlvbiBmcm9tIG9iamVjdCBub2RlcywgYW5kIHRyYW5zZm9ybWF0aW9uIG9mIHRva2Vucy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaW5wdXRfYW5kX291dHB1dF9wYXJhbWV0ZXIiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzZWxlY3Rpb24mbHQ7Pm51bGwgaW1wbGllcyYjeEQ7JiN4QTsmI3g5O3NlbGVjdGlvbi5pbnB1dFBhcmFtZXRlcnMoKS0+c2l6ZSgpPTEgYW5kJiN4RDsmI3hBOyYjeDk7c2VsZWN0aW9uLmlucHV0UGFyYW1ldGVycygpLT5mb3JBbGwobm90IGlzVW5pcXVlIGFuZCBpcygwLCopKSBhbmQmI3hEOyYjeEE7JiN4OTtzZWxlY3Rpb24ub3V0cHV0UGFyYW1ldGVycygpLT5zaXplKCk9MSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgc2VsZWN0aW9uIEJlaGF2aW9yIGhhcyBvbmUgaW5wdXQgUGFyYW1ldGVyIGFuZCBvbmUgb3V0cHV0IFBhcmFtZXRlci4gVGhlIGlucHV0IFBhcmFtZXRlciBtdXN0IGhhdmUgdGhlIHNhbWUgYXMgb3IgYSBzdXBlcnR5cGUgb2YgdGhlIHR5cGUgb2YgdGhlIHNvdXJjZSBPYmplY3ROb2RlLCBiZSBub24tdW5pcXVlIGFuZCBoYXZlIG11bHRpcGxpY2l0eSAwLi4qLiBUaGUgb3V0cHV0IFBhcmFtZXRlciBtdXN0IGJlIHRoZSBzYW1lIG9yIGEgc3VidHlwZSBvZiB0aGUgdHlwZSBvZiBzb3VyY2UgT2JqZWN0Tm9kZS4gVGhlIEJlaGF2aW9yIGNhbm5vdCBoYXZlIHNpZGUgZWZmZWN0cy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im5vX2V4ZWN1dGFibGVfbm9kZXMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJub3QgKHNvdXJjZS5vY2xJc0tpbmRPZihFeGVjdXRhYmxlTm9kZSkgb3IgdGFyZ2V0Lm9jbElzS2luZE9mKEV4ZWN1dGFibGVOb2RlKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJPYmplY3RGbG93cyBtYXkgbm90IGhhdmUgRXhlY3V0YWJsZU5vZGVzIGF0IGVpdGhlciBlbmQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJ0cmFuc2Zvcm1hdGlvbl9iZWhhdmlvciIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InRyYW5zZm9ybWF0aW9uJmx0Oz5udWxsIGltcGxpZXMmI3hEOyYjeEE7JiN4OTt0cmFuc2Zvcm1hdGlvbi5pbnB1dFBhcmFtZXRlcnMoKS0+c2l6ZSgpPTEgYW5kJiN4RDsmI3hBOyYjeDk7dHJhbnNmb3JtYXRpb24ub3V0cHV0UGFyYW1ldGVycygpLT5zaXplKCk9MSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgdHJhbnNmb3JtYXRpb24gQmVoYXZpb3IgaGFzIG9uZSBpbnB1dCBQYXJhbWV0ZXIgYW5kIG9uZSBvdXRwdXQgUGFyYW1ldGVyLiBUaGUgaW5wdXQgUGFyYW1ldGVyIG11c3QgYmUgdGhlIHNhbWUgYXMgb3IgYSBzdXBlcnR5cGUgb2YgdGhlIHR5cGUgb2Ygb2JqZWN0IHRva2VuIGNvbWluZyBmcm9tIHRoZSBzb3VyY2UgZW5kLiBUaGUgb3V0cHV0IFBhcmFtZXRlciBtdXN0IGJlIHRoZSBzYW1lIG9yIGEgc3VidHlwZSBvZiB0aGUgdHlwZSBvZiBvYmplY3QgdG9rZW4gZXhwZWN0ZWQgZG93bnN0cmVhbS4gVGhlIEJlaGF2aW9yIGNhbm5vdCBoYXZlIHNpZGUgZWZmZWN0cy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InNlbGVjdGlvbl9iZWhhdmlvciIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InNlbGVjdGlvbiZsdDs+bnVsbCBpbXBsaWVzIHNvdXJjZS5vY2xJc0tpbmRPZihPYmplY3ROb2RlKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIE9iamVjdEZsb3cgbWF5IGhhdmUgYSBzZWxlY3Rpb24gQmVoYXZpb3Igb25seSBpZiBpdCBoYXMgYW4gT2JqZWN0Tm9kZSBhcyBpdHMgc291cmNlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY29tcGF0aWJsZV90eXBlcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJPYmplY3ROb2RlcyBjb25uZWN0ZWQgYnkgYW4gT2JqZWN0Rmxvdywgd2l0aCBvcHRpb25hbGx5IGludGVydmVuaW5nIENvbnRyb2xOb2RlcywgbXVzdCBoYXZlIGNvbXBhdGlibGUgdHlwZXMuIEluIHBhcnRpY3VsYXIsIHRoZSBkb3duc3RyZWFtIE9iamVjdE5vZGUgdHlwZSBtdXN0IGJlIHRoZSBzYW1lIG9yIGEgc3VwZXJ0eXBlIG9mIHRoZSB1cHN0cmVhbSBPYmplY3ROb2RlIHR5cGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzYW1lX3VwcGVyX2JvdW5kcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJPYmplY3ROb2RlcyBjb25uZWN0ZWQgYnkgYW4gT2JqZWN0Rmxvdywgd2l0aCBvcHRpb25hbGx5IGludGVydmVuaW5nIENvbnRyb2xOb2RlcywgbXVzdCBoYXZlIHRoZSBzYW1lIHVwcGVyQm91bmRzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0idGFyZ2V0IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIE9iamVjdEZsb3cgd2l0aCBhIGNvbnN0YW50IHdlaWdodCBtYXkgbm90IHRhcmdldCBhbiBPYmplY3ROb2RlLCB3aXRoIG9wdGlvbmFsbHkgaW50ZXJ2ZW5pbmcgQ29udHJvbE5vZGVzLCB0aGF0IGhhcyBhbiB1cHBlciBib3VuZCBsZXNzIHRoYW4gdGhlIHdlaWdodC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImlzX211bHRpY2FzdF9vcl9pc19tdWx0aXJlY2VpdmUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJub3QgKGlzTXVsdGljYXN0IGFuZCBpc011bHRpcmVjZWl2ZSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJpc011bHRpY2FzdCBhbmQgaXNNdWx0aXJlY2VpdmUgY2Fubm90IGJvdGggYmUgdHJ1ZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImlzTXVsdGljYXN0IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGRlZmF1bHRWYWx1ZUxpdGVyYWw9ImZhbHNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSW5kaWNhdGVzIHdoZXRoZXIgdGhlIG9iamVjdHMgaW4gdGhlIE9iamVjdEZsb3cgYXJlIHBhc3NlZCBieSBtdWx0aWNhc3RpbmcuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImlzTXVsdGlyZWNlaXZlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGRlZmF1bHRWYWx1ZUxpdGVyYWw9ImZhbHNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSW5kaWNhdGVzIHdoZXRoZXIgdGhlIG9iamVjdHMgaW4gdGhlIE9iamVjdEZsb3cgYXJlIGdhdGhlcmVkIGZyb20gcmVzcG9uZGVudHMgdG8gbXVsdGljYXN0aW5nLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJzZWxlY3Rpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vQmVoYXZpb3IiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIEJlaGF2aW9yIHVzZWQgdG8gc2VsZWN0IHRva2VucyBmcm9tIGEgc291cmNlIE9iamVjdE5vZGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InRyYW5zZm9ybWF0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL0JlaGF2aW9yIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBCZWhhdmlvciB1c2VkIHRvIGNoYW5nZSBvciByZXBsYWNlIG9iamVjdCB0b2tlbnMgZmxvd2luZyBhbG9uZyB0aGUgT2JqZWN0Rmxvdy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRmxvd0ZpbmFsTm9kZSIgZVN1cGVyVHlwZXM9IiMvL0ZpbmFsTm9kZSI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBGbG93RmluYWxOb2RlIGlzIGEgRmluYWxOb2RlIHRoYXQgdGVybWluYXRlcyBhIGZsb3cgYnkgY29uc3VtaW5nIHRoZSB0b2tlbnMgb2ZmZXJlZCB0byBpdC4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRm9ya05vZGUiIGVTdXBlclR5cGVzPSIjLy9Db250cm9sTm9kZSI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBGb3JrTm9kZSBpcyBhIENvbnRyb2xOb2RlIHRoYXQgc3BsaXRzIGEgZmxvdyBpbnRvIG11bHRpcGxlIGNvbmN1cnJlbnQgZmxvd3MuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImVkZ2VzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibGV0IGFsbEVkZ2VzIDogU2V0KEFjdGl2aXR5RWRnZSkgPSBpbmNvbWluZy0+dW5pb24ob3V0Z29pbmcpIGluJiN4RDsmI3hBO2FsbEVkZ2VzLT5mb3JBbGwob2NsSXNLaW5kT2YoQ29udHJvbEZsb3cpKSBvciBhbGxFZGdlcy0+Zm9yQWxsKG9jbElzS2luZE9mKE9iamVjdEZsb3cpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBBY3Rpdml0eUVkZ2VzIGluY29taW5nIHRvIGFuZCBvdXRnb2luZyBmcm9tIGEgRm9ya05vZGUgbXVzdCBiZSBlaXRoZXIgYWxsIE9iamVjdEZsb3dzIG9yIGFsbCBDb250cm9sRmxvd3MuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJvbmVfaW5jb21pbmdfZWRnZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImluY29taW5nLT5zaXplKCk9MSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgRm9ya05vZGUgaGFzIG9uZSBpbmNvbWluZyBBY3Rpdml0eUVkZ2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJJbml0aWFsTm9kZSIgZVN1cGVyVHlwZXM9IiMvL0NvbnRyb2xOb2RlIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBJbml0aWFsTm9kZSBpcyBhIENvbnRyb2xOb2RlIHRoYXQgb2ZmZXJzIGEgc2luZ2xlIGNvbnRyb2wgdG9rZW4gd2hlbiBpbml0aWFsbHkgZW5hYmxlZC4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibm9faW5jb21pbmdfZWRnZXMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpbmNvbWluZy0+aXNFbXB0eSgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gSW5pdGlhbE5vZGUgaGFzIG5vIGluY29taW5nIEFjdGl2aXR5RWRnZXMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjb250cm9sX2VkZ2VzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ib3V0Z29pbmctPmZvckFsbChvY2xJc0tpbmRPZihDb250cm9sRmxvdykpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQWxsIHRoZSBvdXRnb2luZyBBY3Rpdml0eUVkZ2VzIGZyb20gYW4gSW5pdGlhbE5vZGUgbXVzdCBiZSBDb250cm9sRmxvd3MuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJKb2luTm9kZSIgZVN1cGVyVHlwZXM9IiMvL0NvbnRyb2xOb2RlIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIEpvaW5Ob2RlIGlzIGEgQ29udHJvbE5vZGUgdGhhdCBzeW5jaHJvbml6ZXMgbXVsdGlwbGUgZmxvd3MuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im9uZV9vdXRnb2luZ19lZGdlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ib3V0Z29pbmctPnNpemUoKSA9IDEiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIEpvaW5Ob2RlIGhhcyBvbmUgb3V0Z29pbmcgQWN0aXZpdHlFZGdlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaW5jb21pbmdfb2JqZWN0X2Zsb3ciIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpZiBpbmNvbWluZy0+ZXhpc3RzKG9jbElzS2luZE9mKE9iamVjdEZsb3cpKSB0aGVuIG91dGdvaW5nLT5mb3JBbGwob2NsSXNLaW5kT2YoT2JqZWN0RmxvdykpJiN4RDsmI3hBO2Vsc2Ugb3V0Z29pbmctPmZvckFsbChvY2xJc0tpbmRPZihDb250cm9sRmxvdykpJiN4RDsmI3hBO2VuZGlmIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgb25lIG9mIHRoZSBpbmNvbWluZyBBY3Rpdml0eUVkZ2VzIG9mIGEgSm9pbk5vZGUgaXMgYW4gT2JqZWN0RmxvdywgdGhlbiBpdHMgb3V0Z29pbmcgQWN0aXZpdHlFZGdlIG11c3QgYmUgYW4gT2JqZWN0Rmxvdy4gT3RoZXJ3aXNlIGl0cyBvdXRnb2luZyBBY3Rpdml0eUVkZ2UgbXVzdCBiZSBhIENvbnRyb2xGbG93LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNDb21iaW5lRHVwbGljYXRlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGRlZmF1bHRWYWx1ZUxpdGVyYWw9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbmRpY2F0ZXMgd2hldGhlciBpbmNvbWluZyB0b2tlbnMgaGF2aW5nIG9iamVjdHMgd2l0aCB0aGUgc2FtZSBpZGVudGl0eSBhcmUgY29tYmluZWQgaW50byBvbmUgYnkgdGhlIEpvaW5Ob2RlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJqb2luU3BlYyIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9WYWx1ZVNwZWNpZmljYXRpb24iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBWYWx1ZVNwZWNpZmljYXRpb24gZ2l2aW5nIHRoZSBjb25kaXRpb24gdW5kZXIgd2hpY2ggdGhlIEpvaW5Ob2RlIHdpbGwgb2ZmZXIgYSB0b2tlbiBvbiBpdHMgb3V0Z29pbmcgQWN0aXZpdHlFZGdlLiBJZiBubyBqb2luU3BlYyBpcyBzcGVjaWZpZWQsIHRoZW4gdGhlIEpvaW5Ob2RlIHdpbGwgb2ZmZXIgYW4gb3V0Z29pbmcgdG9rZW4gaWYgdG9rZW5zIGFyZSBvZmZlcmVkIG9uIGFsbCBvZiBpdHMgaW5jb21pbmcgQWN0aXZpdHlFZGdlcyAoYW4gJnF1b3Q7YW5kJnF1b3Q7IGNvbmRpdGlvbikuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iTWVyZ2VOb2RlIiBlU3VwZXJUeXBlcz0iIy8vQ29udHJvbE5vZGUiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgbWVyZ2Ugbm9kZSBpcyBhIGNvbnRyb2wgbm9kZSB0aGF0IGJyaW5ncyB0b2dldGhlciBtdWx0aXBsZSBhbHRlcm5hdGUgZmxvd3MuIEl0IGlzIG5vdCB1c2VkIHRvIHN5bmNocm9uaXplIGNvbmN1cnJlbnQgZmxvd3MgYnV0IHRvIGFjY2VwdCBvbmUgYW1vbmcgc2V2ZXJhbCBhbHRlcm5hdGUgZmxvd3MuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im9uZV9vdXRnb2luZ19lZGdlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ib3V0Z29pbmctPnNpemUoKT0xIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBNZXJnZU5vZGUgaGFzIG9uZSBvdXRnb2luZyBBY3Rpdml0eUVkZ2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJlZGdlcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImxldCBhbGxFZGdlcyA6IFNldChBY3Rpdml0eUVkZ2UpID0gaW5jb21pbmctPnVuaW9uKG91dGdvaW5nKSBpbiYjeEQ7JiN4QTthbGxFZGdlcy0+Zm9yQWxsKG9jbElzS2luZE9mKENvbnRyb2xGbG93KSkgb3IgYWxsRWRnZXMtPmZvckFsbChvY2xJc0tpbmRPZihPYmplY3RGbG93KSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgQWN0aXZpdHlFZGdlcyBpbmNvbWluZyB0byBhbmQgb3V0Z29pbmcgZnJvbSBhIE1lcmdlTm9kZSBtdXN0IGJlIGVpdGhlciBhbGwgT2JqZWN0Rmxvd3Mgb3IgYWxsIENvbnRyb2xGbG93cy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ikluc3RhbmNlVmFsdWUiIGVTdXBlclR5cGVzPSIjLy9WYWx1ZVNwZWNpZmljYXRpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIEluc3RhbmNlVmFsdWUgaXMgYSBWYWx1ZVNwZWNpZmljYXRpb24gdGhhdCBpZGVudGlmaWVzIGFuIGluc3RhbmNlLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJkdXBsaWNhdGVzIj4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgbmFtZT0ic3RyaW5nVmFsdWUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9WYWx1ZVNwZWNpZmljYXRpb24vc3RyaW5nVmFsdWUiLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Imluc3RhbmNlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0luc3RhbmNlU3BlY2lmaWNhdGlvbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBJbnN0YW5jZVNwZWNpZmljYXRpb24gdGhhdCByZXByZXNlbnRzIHRoZSBzcGVjaWZpZWQgdmFsdWUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkFueVJlY2VpdmVFdmVudCIgZVN1cGVyVHlwZXM9IiMvL01lc3NhZ2VFdmVudCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSB0cmlnZ2VyIGZvciBhbiBBbnlSZWNlaXZlRXZlbnQgaXMgdHJpZ2dlcmVkIGJ5IHRoZSByZWNlaXB0IG9mIGFueSBtZXNzYWdlIHRoYXQgaXMgbm90IGV4cGxpY2l0bHkgaGFuZGxlZCBieSBhbnkgcmVsYXRlZCB0cmlnZ2VyLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJNZXNzYWdlRXZlbnQiIGFic3RyYWN0PSJ0cnVlIiBlU3VwZXJUeXBlcz0iIy8vRXZlbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgTWVzc2FnZUV2ZW50IHNwZWNpZmllcyB0aGUgcmVjZWlwdCBieSBhbiBvYmplY3Qgb2YgZWl0aGVyIGFuIE9wZXJhdGlvbiBjYWxsIG9yIGEgU2lnbmFsIGluc3RhbmNlLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDYWxsRXZlbnQiIGVTdXBlclR5cGVzPSIjLy9NZXNzYWdlRXZlbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgQ2FsbEV2ZW50IG1vZGVscyB0aGUgcmVjZWlwdCBieSBhbiBvYmplY3Qgb2YgYSBtZXNzYWdlIGludm9raW5nIGEgY2FsbCBvZiBhbiBPcGVyYXRpb24uIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im9wZXJhdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9PcGVyYXRpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJEZXNpZ25hdGVzIHRoZSBPcGVyYXRpb24gd2hvc2UgaW52b2NhdGlvbiByYWlzZWQgdGhlIENhbEV2ZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDaGFuZ2VFdmVudCIgZVN1cGVyVHlwZXM9IiMvL0V2ZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIENoYW5nZUV2ZW50IG1vZGVscyBhIGNoYW5nZSBpbiB0aGUgc3lzdGVtIGNvbmZpZ3VyYXRpb24gdGhhdCBtYWtlcyBhIGNvbmRpdGlvbiB0cnVlLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJjaGFuZ2VFeHByZXNzaW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1ZhbHVlU3BlY2lmaWNhdGlvbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIEJvb2xlYW4tdmFsdWVkIFZhbHVlU3BlY2lmaWNhdGlvbiB0aGF0IHdpbGwgcmVzdWx0IGluIGEgQ2hhbmdlRXZlbnQgd2hlbmV2ZXIgaXRzIHZhbHVlIGNoYW5nZXMgZnJvbSBmYWxzZSB0byB0cnVlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkZ1bmN0aW9uQmVoYXZpb3IiIGVTdXBlclR5cGVzPSIjLy9PcGFxdWVCZWhhdmlvciI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBGdW5jdGlvbkJlaGF2aW9yIGlzIGFuIE9wYXF1ZUJlaGF2aW9yIHRoYXQgZG9lcyBub3QgYWNjZXNzIG9yIG1vZGlmeSBhbnkgb2JqZWN0cyBvciBvdGhlciBleHRlcm5hbCBkYXRhLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJvbmVfb3V0cHV0X3BhcmFtZXRlciIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InNlbGYub3duZWRQYXJhbWV0ZXItPiYjeEQ7JiN4QTsgIHNlbGVjdChwIHwgcC5kaXJlY3Rpb24gPSBQYXJhbWV0ZXJEaXJlY3Rpb25LaW5kOjpvdXQgb3IgcC5kaXJlY3Rpb249IFBhcmFtZXRlckRpcmVjdGlvbktpbmQ6Omlub3V0IG9yIHAuZGlyZWN0aW9uPSBQYXJhbWV0ZXJEaXJlY3Rpb25LaW5kOjpyZXR1cm4pLT5zaXplKCkgPj0gMSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgRnVuY3Rpb25CZWhhdmlvciBoYXMgYXQgbGVhc3Qgb25lIG91dHB1dCBQYXJhbWV0ZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJ0eXBlc19vZl9wYXJhbWV0ZXJzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ib3duZWRQYXJhbWV0ZXItPmZvckFsbChwIHwgcC50eXBlICZsdDs+IG51bGwgYW5kJiN4RDsmI3hBOyAgcC50eXBlLm9jbElzVHlwZU9mKERhdGFUeXBlKSBhbmQgaGFzQWxsRGF0YVR5cGVBdHRyaWJ1dGVzKHAudHlwZS5vY2xBc1R5cGUoRGF0YVR5cGUpKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgdHlwZXMgb2YgdGhlIG93bmVkUGFyYW1ldGVycyBhcmUgYWxsIERhdGFUeXBlcywgd2hpY2ggbWF5IG5vdCBuZXN0IGFueXRoaW5nIGJ1dCBvdGhlciBEYXRhVHlwZXMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJoYXNBbGxEYXRhVHlwZUF0dHJpYnV0ZXMiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBoYXNBbGxEYXRhVHlwZUF0dHJpYnV0ZXMgcXVlcnkgdGVzdHMgd2hldGhlciB0aGUgdHlwZXMgb2YgdGhlIGF0dHJpYnV0ZXMgb2YgdGhlIGdpdmVuIERhdGFUeXBlIGFyZSBhbGwgRGF0YVR5cGVzLCBhbmQgc2ltaWxhcmx5IGZvciBhbGwgdGhvc2UgRGF0YVR5cGVzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iZC5vd25lZEF0dHJpYnV0ZS0+Zm9yQWxsKGEgfCYjeEQ7JiN4QTsgICAgYS50eXBlLm9jbElzS2luZE9mKERhdGFUeXBlKSBhbmQmI3hEOyYjeEE7ICAgICAgaGFzQWxsRGF0YVR5cGVBdHRyaWJ1dGVzKGEudHlwZS5vY2xBc1R5cGUoRGF0YVR5cGUpKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vRGF0YVR5cGUiLz4KKyAgICA8L2VPcGVyYXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJPcGFxdWVCZWhhdmlvciIgZVN1cGVyVHlwZXM9IiMvL0JlaGF2aW9yIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBPcGFxdWVCZWhhdmlvciBpcyBhIEJlaGF2aW9yIHdob3NlIHNwZWNpZmljYXRpb24gaXMgZ2l2ZW4gaW4gYSB0ZXh0dWFsIGxhbmd1YWdlIG90aGVyIHRoYW4gVU1MLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJib2R5IiB1bmlxdWU9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyIgdW5zZXR0YWJsZT0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNwZWNpZmllcyB0aGUgYmVoYXZpb3IgaW4gb25lIG9yIG1vcmUgbGFuZ3VhZ2VzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovLy9vcmcvZWNsaXBzZS9lbWYvZWNvcmUvdXRpbC9FeHRlbmRlZE1ldGFEYXRhIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJraW5kIiB2YWx1ZT0iZWxlbWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFQXR0cmlidXRlIiBuYW1lPSJsYW5ndWFnZSIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciIHVuc2V0dGFibGU9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJMYW5ndWFnZXMgdGhlIGJvZHkgc3RyaW5ncyB1c2UgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGJvZHkgc3RyaW5ncy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU2lnbmFsRXZlbnQiIGVTdXBlclR5cGVzPSIjLy9NZXNzYWdlRXZlbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgU2lnbmFsRXZlbnQgcmVwcmVzZW50cyB0aGUgcmVjZWlwdCBvZiBhbiBhc3luY2hyb25vdXMgU2lnbmFsIGluc3RhbmNlLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJzaWduYWwiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vU2lnbmFsIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHNwZWNpZmljIFNpZ25hbCB0aGF0IGlzIGFzc29jaWF0ZWQgd2l0aCB0aGlzIFNpZ25hbEV2ZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJUaW1lRXZlbnQiIGVTdXBlclR5cGVzPSIjLy9FdmVudCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBUaW1lRXZlbnQgaXMgYW4gRXZlbnQgdGhhdCBvY2N1cnMgYXQgYSBzcGVjaWZpYyBwb2ludCBpbiB0aW1lLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJ3aGVuX25vbl9uZWdhdGl2ZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9IndoZW4uaW50ZWdlclZhbHVlKCkgPj0gMCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBWYWx1ZVNwZWNpZmljYXRpb24gd2hlbiBtdXN0IHJldHVybiBhIG5vbi1uZWdhdGl2ZSBJbnRlZ2VyLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iaXNSZWxhdGl2ZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSJmYWxzZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNwZWNpZmllcyB3aGV0aGVyIHRoZSBUaW1lRXZlbnQgaXMgc3BlY2lmaWVkIGFzIGFuIGFic29sdXRlIG9yIHJlbGF0aXZlIHRpbWUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9IndoZW4iIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIgorICAgICAgICBlVHlwZT0iIy8vVGltZUV4cHJlc3Npb24iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iU3BlY2lmaWVzIHRoZSB0aW1lIG9mIHRoZSBUaW1lRXZlbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iVGltZUV4cHJlc3Npb24iIGVTdXBlclR5cGVzPSIjLy9WYWx1ZVNwZWNpZmljYXRpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgVGltZUV4cHJlc3Npb24gaXMgYSBWYWx1ZVNwZWNpZmljYXRpb24gdGhhdCByZXByZXNlbnRzIGEgdGltZSB2YWx1ZS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iZHVwbGljYXRlcyI+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIG5hbWU9InN0cmluZ1ZhbHVlIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9InN1cHByZXNzZWRWaXNpYmlsaXR5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vVmFsdWVTcGVjaWZpY2F0aW9uL3N0cmluZ1ZhbHVlIi8+CisgICAgICA8L2NvbnRlbnRzPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJub19leHByX3JlcXVpcmVzX29ic2VydmF0aW9uIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iZXhwciA9IG51bGwgaW1wbGllcyAob2JzZXJ2YXRpb24tPnNpemUoKSA9IDEgYW5kIG9ic2VydmF0aW9uLT5mb3JBbGwob2NsSXNLaW5kT2YoVGltZU9ic2VydmF0aW9uKSkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgYSBUaW1lRXhwcmVzc2lvbiBoYXMgbm8gZXhwciwgdGhlbiBpdCBtdXN0IGhhdmUgYSBzaW5nbGUgb2JzZXJ2YXRpb24gdGhhdCBpcyBhIFRpbWVPYnNlcnZhdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImV4cHIiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iIy8vVmFsdWVTcGVjaWZpY2F0aW9uIgorICAgICAgICBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgVmFsdWVTcGVjaWZpY2F0aW9uIHRoYXQgZXZhbHVhdGVzIHRvIHRoZSB2YWx1ZSBvZiB0aGUgVGltZUV4cHJlc3Npb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ib2JzZXJ2YXRpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL09ic2VydmF0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmVmZXJzIHRvIHRoZSBPYnNlcnZhdGlvbnMgdGhhdCBhcmUgaW52b2x2ZWQgaW4gdGhlIGNvbXB1dGF0aW9uIG9mIHRoZSBUaW1lRXhwcmVzc2lvbiB2YWx1ZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iT2JzZXJ2YXRpb24iIGFic3RyYWN0PSJ0cnVlIiBlU3VwZXJUeXBlcz0iIy8vUGFja2FnZWFibGVFbGVtZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJPYnNlcnZhdGlvbiBzcGVjaWZpZXMgYSB2YWx1ZSBkZXRlcm1pbmVkIGJ5IG9ic2VydmluZyBhbiBldmVudCBvciBldmVudHMgdGhhdCBvY2N1ciByZWxhdGl2ZSB0byBvdGhlciBtb2RlbCBFbGVtZW50cy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ29tbXVuaWNhdGlvblBhdGgiIGVTdXBlclR5cGVzPSIjLy9Bc3NvY2lhdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBjb21tdW5pY2F0aW9uIHBhdGggaXMgYW4gYXNzb2NpYXRpb24gYmV0d2VlbiB0d28gZGVwbG95bWVudCB0YXJnZXRzLCB0aHJvdWdoIHdoaWNoIHRoZXkgYXJlIGFibGUgdG8gZXhjaGFuZ2Ugc2lnbmFscyBhbmQgbWVzc2FnZXMuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9ImR1cGxpY2F0ZXMiPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBuYW1lPSJhc3NvY2lhdGlvbl9lbmRzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImVuZFR5cGUtPmZvckFsbCAob2NsSXNLaW5kT2YoRGVwbG95bWVudFRhcmdldCkpIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGFzc29jaWF0aW9uIGVuZHMgb2YgYSBDb21tdW5pY2F0aW9uUGF0aCBhcmUgdHlwZWQgYnkgRGVwbG95bWVudFRhcmdldHMuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9Bc3NvY2lhdGlvbi9hc3NvY2lhdGlvbl9lbmRzIi8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPC9jb250ZW50cz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRGV2aWNlIiBlU3VwZXJUeXBlcz0iIy8vTm9kZSI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBkZXZpY2UgaXMgYSBwaHlzaWNhbCBjb21wdXRhdGlvbmFsIHJlc291cmNlIHdpdGggcHJvY2Vzc2luZyBjYXBhYmlsaXR5IHVwb24gd2hpY2ggYXJ0aWZhY3RzIG1heSBiZSBkZXBsb3llZCBmb3IgZXhlY3V0aW9uLiBEZXZpY2VzIG1heSBiZSBjb21wbGV4IChpLmUuLCB0aGV5IG1heSBjb25zaXN0IG9mIG90aGVyIGRldmljZXMpLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJOb2RlIiBlU3VwZXJUeXBlcz0iIy8vQ2xhc3MgIy8vRGVwbG95bWVudFRhcmdldCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBOb2RlIGlzIGNvbXB1dGF0aW9uYWwgcmVzb3VyY2UgdXBvbiB3aGljaCBhcnRpZmFjdHMgbWF5IGJlIGRlcGxveWVkIGZvciBleGVjdXRpb24uIE5vZGVzIGNhbiBiZSBpbnRlcmNvbm5lY3RlZCB0aHJvdWdoIGNvbW11bmljYXRpb24gcGF0aHMgdG8gZGVmaW5lIG5ldHdvcmsgc3RydWN0dXJlcy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaW50ZXJuYWxfc3RydWN0dXJlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0icGFydC0+Zm9yQWxsKG9jbElzS2luZE9mKE5vZGUpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBpbnRlcm5hbCBzdHJ1Y3R1cmUgb2YgYSBOb2RlIChpZiBkZWZpbmVkKSBjb25zaXN0cyBzb2xlbHkgb2YgcGFydHMgb2YgdHlwZSBOb2RlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY3JlYXRlQ29tbXVuaWNhdGlvblBhdGgiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vQ29tbXVuaWNhdGlvblBhdGgiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJDcmVhdGVzIGEgKGJpbmFyeSkgY29tbXVuaWNhdGlvbiBwYXRoIGJldHdlZW4gdGhpcyBub2RlIGFuZCB0aGUgc3BlY2lmaWVkIG90aGVyIG5vZGUsIHdpdGggdGhlIHNwZWNpZmllZCBuYXZpZ2FiaWxpdGllcywgYWdncmVnYXRpb25zLCBuYW1lcywgbG93ZXIgYm91bmRzLCBhbmQgdXBwZXIgYm91bmRzLCBhbmQgb3duZWQgYnkgdGhpcyBub2RlJ3MgbmVhcmVzdCBwYWNrYWdlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZW5kMUlzTmF2aWdhYmxlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG5hdmlnYWJpbGl0eSBmb3IgdGhlIGZpcnN0IGVuZCBvZiB0aGUgbmV3IGNvbW11bmljYXRpb24gcGF0aC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImVuZDFBZ2dyZWdhdGlvbiIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9BZ2dyZWdhdGlvbktpbmQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGFnZ3JlZ2F0aW9uIGZvciB0aGUgZmlyc3QgZW5kIG9mIHRoZSBuZXcgY29tbXVuaWNhdGlvbiBwYXRoLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZW5kMU5hbWUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBuYW1lIGZvciB0aGUgZmlyc3QgZW5kIG9mIHRoZSBuZXcgY29tbXVuaWNhdGlvbiBwYXRoLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZW5kMUxvd2VyIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0ludGVnZXIiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGxvd2VyIGJvdW5kIGZvciB0aGUgZmlyc3QgZW5kIG9mIHRoZSBuZXcgY29tbXVuaWNhdGlvbiBwYXRoLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZW5kMVVwcGVyIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1VubGltaXRlZE5hdHVyYWwiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHVwcGVyIGJvdW5kIGZvciB0aGUgZmlyc3QgZW5kIG9mIHRoZSBuZXcgY29tbXVuaWNhdGlvbiBwYXRoLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZW5kMU5vZGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vTm9kZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgdHlwZSBmb3IgdGhlIGZpcnN0IGVuZCBvZiB0aGUgbmV3IGNvbW11bmljYXRpb24gcGF0aC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImVuZDJJc05hdmlnYWJsZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBuYXZpZ2FiaWxpdHkgZm9yIHRoZSBzZWNvbmQgZW5kIG9mIHRoZSBuZXcgY29tbXVuaWNhdGlvbiBwYXRoLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZW5kMkFnZ3JlZ2F0aW9uIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0FnZ3JlZ2F0aW9uS2luZCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgYWdncmVnYXRpb24gZm9yIHRoZSBzZWNvbmQgZW5kIG9mIHRoZSBuZXcgY29tbXVuaWNhdGlvbiBwYXRoLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZW5kMk5hbWUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBuYW1lIGZvciB0aGUgc2Vjb25kIGVuZCBvZiB0aGUgbmV3IGNvbW11bmljYXRpb24gcGF0aC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImVuZDJMb3dlciIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9JbnRlZ2VyIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBsb3dlciBib3VuZCBmb3IgdGhlIHNlY29uZCBlbmQgb2YgdGhlIG5ldyBjb21tdW5pY2F0aW9uIHBhdGguIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJlbmQyVXBwZXIiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vVW5saW1pdGVkTmF0dXJhbCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgdXBwZXIgYm91bmQgZm9yIHRoZSBzZWNvbmQgZW5kIG9mIHRoZSBuZXcgY29tbXVuaWNhdGlvbiBwYXRoLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0Q29tbXVuaWNhdGlvblBhdGhzIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Db21tdW5pY2F0aW9uUGF0aCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHJpZXZlcyB0aGUgY29tbXVuaWNhdGlvbiBwYXRocyBpbiB3aGljaCB0aGlzIG5vZGUgaXMgaW52b2x2ZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJuZXN0ZWROb2RlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Ob2RlIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBOb2RlcyB0aGF0IGFyZSBkZWZpbmVkIChuZXN0ZWQpIHdpdGhpbiB0aGUgTm9kZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVzcGFjZS9vd25lZE1lbWJlciIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRXhlY3V0aW9uRW52aXJvbm1lbnQiIGVTdXBlclR5cGVzPSIjLy9Ob2RlIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBleGVjdXRpb24gZW52aXJvbm1lbnQgaXMgYSBub2RlIHRoYXQgb2ZmZXJzIGFuIGV4ZWN1dGlvbiBlbnZpcm9ubWVudCBmb3Igc3BlY2lmaWMgdHlwZXMgb2YgY29tcG9uZW50cyB0aGF0IGFyZSBkZXBsb3llZCBvbiBpdCBpbiB0aGUgZm9ybSBvZiBleGVjdXRhYmxlIGFydGlmYWN0cy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSW5mb3JtYXRpb25GbG93IiBlU3VwZXJUeXBlcz0iIy8vUGFja2FnZWFibGVFbGVtZW50ICMvL0RpcmVjdGVkUmVsYXRpb25zaGlwIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbmZvcm1hdGlvbkZsb3dzIGRlc2NyaWJlIGNpcmN1bGF0aW9uIG9mIGluZm9ybWF0aW9uIHRocm91Z2ggYSBzeXN0ZW0gaW4gYSBnZW5lcmFsIG1hbm5lci4gVGhleSBkbyBub3Qgc3BlY2lmeSB0aGUgbmF0dXJlIG9mIHRoZSBpbmZvcm1hdGlvbiwgbWVjaGFuaXNtcyBieSB3aGljaCBpdCBpcyBjb252ZXllZCwgc2VxdWVuY2VzIG9mIGV4Y2hhbmdlIG9yIGFueSBjb250cm9sIGNvbmRpdGlvbnMuIER1cmluZyBtb3JlIGRldGFpbGVkIG1vZGVsaW5nLCByZXByZXNlbnRhdGlvbiBhbmQgcmVhbGl6YXRpb24gbGlua3MgbWF5IGJlIGFkZGVkIHRvIHNwZWNpZnkgd2hpY2ggbW9kZWwgZWxlbWVudHMgaW1wbGVtZW50IGFuIEluZm9ybWF0aW9uRmxvdyBhbmQgdG8gc2hvdyBob3cgaW5mb3JtYXRpb24gaXMgY29udmV5ZWQuICBJbmZvcm1hdGlvbkZsb3dzIHJlcXVpcmUgc29tZSBraW5kIG9mIOKAnGluZm9ybWF0aW9uIGNoYW5uZWzigJ0gZm9yIHVuaWRpcmVjdGlvbmFsIHRyYW5zbWlzc2lvbiBvZiBpbmZvcm1hdGlvbiBpdGVtcyBmcm9tIHNvdXJjZXMgdG8gdGFyZ2V0cy7CoCBUaGV5IHNwZWNpZnkgdGhlIGluZm9ybWF0aW9uIGNoYW5uZWzigJlzIHJlYWxpemF0aW9ucywgaWYgYW55LCBhbmQgaWRlbnRpZnkgdGhlIGluZm9ybWF0aW9uIHRoYXQgZmxvd3MgYWxvbmcgdGhlbS7CoCBJbmZvcm1hdGlvbiBtb3ZpbmcgYWxvbmcgdGhlIGluZm9ybWF0aW9uIGNoYW5uZWwgbWF5IGJlIHJlcHJlc2VudGVkIGJ5IGFic3RyYWN0IEluZm9ybWF0aW9uSXRlbXMgYW5kIGJ5IGNvbmNyZXRlIENsYXNzaWZpZXJzLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJtdXN0X2NvbmZvcm0iIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHNvdXJjZXMgYW5kIHRhcmdldHMgb2YgdGhlIGluZm9ybWF0aW9uIGZsb3cgbXVzdCBjb25mb3JtIHRvIHRoZSBzb3VyY2VzIGFuZCB0YXJnZXRzIG9yIGNvbnZlcnNlbHkgdGhlIHRhcmdldHMgYW5kIHNvdXJjZXMgb2YgdGhlIHJlYWxpemF0aW9uIHJlbGF0aW9uc2hpcHMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzb3VyY2VzX2FuZF90YXJnZXRzX2tpbmQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIoc2VsZi5pbmZvcm1hdGlvblNvdXJjZS0+Zm9yQWxsKCBzaXMgfCYjeEQ7JiN4QTsgIG9jbElzS2luZE9mKEFjdG9yKSBvciBvY2xJc0tpbmRPZihOb2RlKSBvciBvY2xJc0tpbmRPZihVc2VDYXNlKSBvciBvY2xJc0tpbmRPZihBcnRpZmFjdCkgb3IgJiN4RDsmI3hBOyAgb2NsSXNLaW5kT2YoQ2xhc3MpIG9yIG9jbElzS2luZE9mKENvbXBvbmVudCkgb3Igb2NsSXNLaW5kT2YoUG9ydCkgb3Igb2NsSXNLaW5kT2YoUHJvcGVydHkpIG9yICYjeEQ7JiN4QTsgIG9jbElzS2luZE9mKEludGVyZmFjZSkgb3Igb2NsSXNLaW5kT2YoUGFja2FnZSkgb3Igb2NsSXNLaW5kT2YoQWN0aXZpdHlOb2RlKSBvciBvY2xJc0tpbmRPZihBY3Rpdml0eVBhcnRpdGlvbikgb3IgJiN4RDsmI3hBOyAgKG9jbElzS2luZE9mKEluc3RhbmNlU3BlY2lmaWNhdGlvbikgYW5kIG5vdCBzaXMub2NsQXNUeXBlKEluc3RhbmNlU3BlY2lmaWNhdGlvbikuY2xhc3NpZmllci0+ZXhpc3RzKG9jbElzS2luZE9mKFJlbGF0aW9uc2hpcCkpKSkpICYjeEQ7JiN4QTsmI3hEOyYjeEE7YW5kJiN4RDsmI3hBOyYjeEQ7JiN4QTsoc2VsZi5pbmZvcm1hdGlvblRhcmdldC0+Zm9yQWxsKCBzaXQgfCAmI3hEOyYjeEE7ICBvY2xJc0tpbmRPZihBY3Rvcikgb3Igb2NsSXNLaW5kT2YoTm9kZSkgb3Igb2NsSXNLaW5kT2YoVXNlQ2FzZSkgb3Igb2NsSXNLaW5kT2YoQXJ0aWZhY3QpIG9yICYjeEQ7JiN4QTsgIG9jbElzS2luZE9mKENsYXNzKSBvciBvY2xJc0tpbmRPZihDb21wb25lbnQpIG9yIG9jbElzS2luZE9mKFBvcnQpIG9yIG9jbElzS2luZE9mKFByb3BlcnR5KSBvciAmI3hEOyYjeEE7ICBvY2xJc0tpbmRPZihJbnRlcmZhY2UpIG9yIG9jbElzS2luZE9mKFBhY2thZ2UpIG9yIG9jbElzS2luZE9mKEFjdGl2aXR5Tm9kZSkgb3Igb2NsSXNLaW5kT2YoQWN0aXZpdHlQYXJ0aXRpb24pIG9yICYjeEQ7JiN4QTsob2NsSXNLaW5kT2YoSW5zdGFuY2VTcGVjaWZpY2F0aW9uKSBhbmQgbm90IHNpdC5vY2xBc1R5cGUoSW5zdGFuY2VTcGVjaWZpY2F0aW9uKS5jbGFzc2lmaWVyLT5leGlzdHMob2NsSXNLaW5kT2YoUmVsYXRpb25zaGlwKSkpKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc291cmNlcyBhbmQgdGFyZ2V0cyBvZiB0aGUgaW5mb3JtYXRpb24gZmxvdyBjYW4gb25seSBiZSBvbmUgb2YgdGhlIGZvbGxvd2luZyBraW5kOiBBY3RvciwgTm9kZSwgVXNlQ2FzZSwgQXJ0aWZhY3QsIENsYXNzLCBDb21wb25lbnQsIFBvcnQsIFByb3BlcnR5LCBJbnRlcmZhY2UsIFBhY2thZ2UsIEFjdGl2aXR5Tm9kZSwgQWN0aXZpdHlQYXJ0aXRpb24sJiN4RDsmI3hBO0JlaGF2aW9yIGFuZCBJbnN0YW5jZVNwZWNpZmljYXRpb24gZXhjZXB0IHdoZW4gaXRzIGNsYXNzaWZpZXIgaXMgYSByZWxhdGlvbnNoaXAgKGkuZS4gaXQgcmVwcmVzZW50cyBhIGxpbmspLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY29udmV5X2NsYXNzaWZpZXJzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ic2VsZi5jb252ZXllZC0+Zm9yQWxsKG9jbElzS2luZE9mKENsYXNzKSBvciBvY2xJc0tpbmRPZihJbnRlcmZhY2UpJiN4RDsmI3hBOyAgb3Igb2NsSXNLaW5kT2YoSW5mb3JtYXRpb25JdGVtKSBvciBvY2xJc0tpbmRPZihTaWduYWwpIG9yIG9jbElzS2luZE9mKENvbXBvbmVudCkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gaW5mb3JtYXRpb24gZmxvdyBjYW4gb25seSBjb252ZXkgY2xhc3NpZmllcnMgdGhhdCBhcmUgYWxsb3dlZCB0byByZXByZXNlbnQgYW4gaW5mb3JtYXRpb24gaXRlbS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImNvbnZleWVkIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9DbGFzc2lmaWVyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iU3BlY2lmaWVzIHRoZSBpbmZvcm1hdGlvbiBpdGVtcyB0aGF0IG1heSBjaXJjdWxhdGUgb24gdGhpcyBpbmZvcm1hdGlvbiBmbG93LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJpbmZvcm1hdGlvblNvdXJjZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vTmFtZWRFbGVtZW50Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iRGVmaW5lcyBmcm9tIHdoaWNoIHNvdXJjZSB0aGUgY29udmV5ZWQgSW5mb3JtYXRpb25JdGVtcyBhcmUgaW5pdGlhdGVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRGlyZWN0ZWRSZWxhdGlvbnNoaXAvc291cmNlIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJpbmZvcm1hdGlvblRhcmdldCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vTmFtZWRFbGVtZW50Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iRGVmaW5lcyB0byB3aGljaCB0YXJnZXQgdGhlIGNvbnZleWVkIEluZm9ybWF0aW9uSXRlbXMgYXJlIGRpcmVjdGVkLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRGlyZWN0ZWRSZWxhdGlvbnNoaXAvdGFyZ2V0Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyZWFsaXphdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vUmVsYXRpb25zaGlwIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iRGV0ZXJtaW5lcyB3aGljaCBSZWxhdGlvbnNoaXAgd2lsbCByZWFsaXplIHRoZSBzcGVjaWZpZWQgZmxvdy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVhbGl6aW5nQWN0aXZpdHlFZGdlIgorICAgICAgICBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9BY3Rpdml0eUVkZ2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJEZXRlcm1pbmVzIHdoaWNoIEFjdGl2aXR5RWRnZXMgd2lsbCByZWFsaXplIHRoZSBzcGVjaWZpZWQgZmxvdy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVhbGl6aW5nQ29ubmVjdG9yIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Db25uZWN0b3IiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJEZXRlcm1pbmVzIHdoaWNoIENvbm5lY3RvcnMgd2lsbCByZWFsaXplIHRoZSBzcGVjaWZpZWQgZmxvdy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVhbGl6aW5nTWVzc2FnZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vTWVzc2FnZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkRldGVybWluZXMgd2hpY2ggTWVzc2FnZXMgd2lsbCByZWFsaXplIHRoZSBzcGVjaWZpZWQgZmxvdy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iTWVzc2FnZSIgZVN1cGVyVHlwZXM9IiMvL05hbWVkRWxlbWVudCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBNZXNzYWdlIGRlZmluZXMgYSBwYXJ0aWN1bGFyIGNvbW11bmljYXRpb24gYmV0d2VlbiBMaWZlbGluZXMgb2YgYW4gSW50ZXJhY3Rpb24uIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9ImR1cGxpY2F0ZXMiPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBuYW1lPSJpc0Rpc3Rpbmd1aXNoYWJsZUZyb20iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBpc0Rpc3Rpbmd1aXNoYWJsZUZyb20oKSBzcGVjaWZpZXMgdGhhdCBhbnkgdHdvIE1lc3NhZ2VzIG1heSBjb2V4aXN0IGluIHRoZSBzYW1lIE5hbWVzcGFjZSwgcmVnYXJkbGVzcyBvZiB0aGVpciBuYW1lcy4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL05hbWVkRWxlbWVudC9pc0Rpc3Rpbmd1aXNoYWJsZUZyb20iLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9Im4iIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vTmFtZWRFbGVtZW50Ii8+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJucyIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9OYW1lc3BhY2UiLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InNlbmRpbmdfcmVjZWl2aW5nX21lc3NhZ2VfZXZlbnQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJyZWNlaXZlRXZlbnQub2NsSXNLaW5kT2YoTWVzc2FnZU9jY3VycmVuY2VTcGVjaWZpY2F0aW9uKSYjeEQ7JiN4QTtpbXBsaWVzJiN4RDsmI3hBO2xldCBmIDogIExpZmVsaW5lID0gc2VuZEV2ZW50LT5zZWxlY3Qob2NsSXNLaW5kT2YoTWVzc2FnZU9jY3VycmVuY2VTcGVjaWZpY2F0aW9uKSkub2NsQXNUeXBlKE1lc3NhZ2VPY2N1cnJlbmNlU3BlY2lmaWNhdGlvbiktPmFzT3JkZXJlZFNldCgpLT5maXJzdCgpLmNvdmVyZWQgaW4mI3hEOyYjeEE7ZiA9IHJlY2VpdmVFdmVudC0+c2VsZWN0KG9jbElzS2luZE9mKE1lc3NhZ2VPY2N1cnJlbmNlU3BlY2lmaWNhdGlvbikpLm9jbEFzVHlwZShNZXNzYWdlT2NjdXJyZW5jZVNwZWNpZmljYXRpb24pLT5hc09yZGVyZWRTZXQoKS0+Zmlyc3QoKS5jb3ZlcmVkICBpbXBsaWVzJiN4RDsmI3hBO2YuZXZlbnRzLT5pbmRleE9mKHNlbmRFdmVudC5vY2xBc1R5cGUoTWVzc2FnZU9jY3VycmVuY2VTcGVjaWZpY2F0aW9uKS0+YXNPcmRlcmVkU2V0KCktPmZpcnN0KCkgKSAmbHQ7ICYjeEQ7JiN4QTtmLmV2ZW50cy0+aW5kZXhPZihyZWNlaXZlRXZlbnQub2NsQXNUeXBlKE1lc3NhZ2VPY2N1cnJlbmNlU3BlY2lmaWNhdGlvbiktPmFzT3JkZXJlZFNldCgpLT5maXJzdCgpICkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiB0aGUgc2VuZEV2ZW50IGFuZCB0aGUgcmVjZWl2ZUV2ZW50IG9mIHRoZSBzYW1lIE1lc3NhZ2UgYXJlIG9uIHRoZSBzYW1lIExpZmVsaW5lLCB0aGUgc2VuZEV2ZW50IG11c3QgYmUgb3JkZXJlZCBiZWZvcmUgdGhlIHJlY2VpdmVFdmVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImFyZ3VtZW50cyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBcmd1bWVudHMgb2YgYSBNZXNzYWdlIG11c3Qgb25seSBiZTogaSkgYXR0cmlidXRlcyBvZiB0aGUgc2VuZGluZyBsaWZlbGluZSwgaWkpIGNvbnN0YW50cywgaWlpKSBzeW1ib2xpYyB2YWx1ZXMgKHdoaWNoIGFyZSB3aWxkY2FyZCB2YWx1ZXMgcmVwcmVzZW50aW5nIGFueSBsZWdhbCB2YWx1ZSksIGl2KSBleHBsaWNpdCBwYXJhbWV0ZXJzIG9mIHRoZSBlbmNsb3NpbmcgSW50ZXJhY3Rpb24sIHYpIGF0dHJpYnV0ZXMgb2YgdGhlIGNsYXNzIG93bmluZyB0aGUgSW50ZXJhY3Rpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjYW5ub3RfY3Jvc3NfYm91bmRhcmllcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InNlbmRFdmVudC0+bm90RW1wdHkoKSBhbmQgcmVjZWl2ZUV2ZW50LT5ub3RFbXB0eSgpIGltcGxpZXMmI3hEOyYjeEE7bGV0IHNlbmRFbmNsb3NpbmdGcmFnIDogU2V0KEludGVyYWN0aW9uRnJhZ21lbnQpID0gJiN4RDsmI3hBO3NlbmRFdmVudC0+YXNPcmRlcmVkU2V0KCktPmZpcnN0KCkuZW5jbG9zaW5nRnJhZ21lbnQoKSYjeEQ7JiN4QTtpbiAmI3hEOyYjeEE7bGV0IHJlY2VpdmVFbmNsb3NpbmdGcmFnIDogU2V0KEludGVyYWN0aW9uRnJhZ21lbnQpID0gJiN4RDsmI3hBO3JlY2VpdmVFdmVudC0+YXNPcmRlcmVkU2V0KCktPmZpcnN0KCkuZW5jbG9zaW5nRnJhZ21lbnQoKSYjeEQ7JiN4QTtpbiAgc2VuZEVuY2xvc2luZ0ZyYWcgPSByZWNlaXZlRW5jbG9zaW5nRnJhZyIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9Ik1lc3NhZ2VzIGNhbm5vdCBjcm9zcyBib3VuZGFyaWVzIG9mIENvbWJpbmVkRnJhZ21lbnRzIG9yIHRoZWlyIG9wZXJhbmRzLiAgVGhpcyBpcyB0cnVlIGlmIGFuZCBvbmx5IGlmIGJvdGggTWVzc2FnZUVuZHMgYXJlIGVuY2xvc2VkIHdpdGhpbiB0aGUgc2FtZSBJbnRlcmFjdGlvbkZyYWdtZW50IChpLmUuLCBhbiBJbnRlcmFjdGlvbk9wZXJhbmQgb3IgYW4gSW50ZXJhY3Rpb24pLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ic2lnbmF0dXJlX2lzX3NpZ25hbCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9IihtZXNzYWdlU29ydCA9IE1lc3NhZ2VTb3J0Ojphc3luY2hTaWduYWwgKSBhbmQgc2lnbmF0dXJlLm9jbElzS2luZE9mKFNpZ25hbCkgaW1wbGllcyYjeEQ7JiN4QTsgICBsZXQgc2lnbmFsQXR0cmlidXRlcyA6IE9yZGVyZWRTZXQoUHJvcGVydHkpID0gc2lnbmF0dXJlLm9jbEFzVHlwZShTaWduYWwpLmluaGVyaXRlZE1lbWJlcigpLT4mI3hEOyYjeEE7ICAgICAgICAgICAgIHNlbGVjdChuOk5hbWVkRWxlbWVudCB8IG4ub2NsSXNUeXBlT2YoUHJvcGVydHkpKS0+Y29sbGVjdChvY2xBc1R5cGUoUHJvcGVydHkpKS0+YXNPcmRlcmVkU2V0KCkmI3hEOyYjeEE7ICAgaW4gc2lnbmFsQXR0cmlidXRlcy0+c2l6ZSgpID0gc2VsZi5hcmd1bWVudC0+c2l6ZSgpJiN4RDsmI3hBOyAgIGFuZCBzZWxmLmFyZ3VtZW50LT5mb3JBbGwoIG86IFZhbHVlU3BlY2lmaWNhdGlvbiB8JiN4RDsmI3hBOyAgICAgICAgICBub3QgKG8ub2NsSXNLaW5kT2YoRXhwcmVzc2lvbikmI3hEOyYjeEE7ICAgICAgICAgIGFuZCBvLm9jbEFzVHlwZShFeHByZXNzaW9uKS5zeW1ib2wtPnNpemUoKT0wJiN4RDsmI3hBOyAgICAgICAgICBhbmQgby5vY2xBc1R5cGUoRXhwcmVzc2lvbikub3BlcmFuZC0+aXNFbXB0eSgpICkgaW1wbGllcyYjeEQ7JiN4QTsgICAgICAgICAgICAgIGxldCBwIDogUHJvcGVydHkgPSBzaWduYWxBdHRyaWJ1dGVzLT5hdChzZWxmLmFyZ3VtZW50LT5pbmRleE9mKG8pKSYjeEQ7JiN4QTsgICAgICAgICAgICAgIGluIG8udHlwZS5vY2xBc1R5cGUoQ2xhc3NpZmllcikuY29uZm9ybXNUbyhwLnR5cGUub2NsQXNUeXBlKENsYXNzaWZpZXIpKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbiB0aGUgY2FzZSB3aGVuIHRoZSBNZXNzYWdlIHNpZ25hdHVyZSBpcyBhIFNpZ25hbCwgdGhlIGFyZ3VtZW50cyBvZiB0aGUgTWVzc2FnZSBtdXN0IGNvcnJlc3BvbmQgdG8gdGhlIGF0dHJpYnV0ZXMgb2YgdGhlIFNpZ25hbC4gQSBNZXNzYWdlIEFyZ3VtZW50IGNvcnJlc3BvbmRzIHRvIGEgU2lnbmFsIEF0dHJpYnV0ZSBpZiB0aGUgQXJndW1lbnQgaXMgb2YgdGhlIHNhbWUgQ2xhc3Mgb3IgYSBzcGVjaWFsaXphdGlvbiBvZiB0aGF0IG9mIHRoZSBBdHRyaWJ1dGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJvY2N1cnJlbmNlX3NwZWNpZmljYXRpb25zIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIHRoZSBNZXNzYWdlRW5kcyBhcmUgYm90aCBPY2N1cnJlbmNlU3BlY2lmaWNhdGlvbnMsIHRoZW4gdGhlIGNvbm5lY3RvciBtdXN0IGdvIGJldHdlZW4gdGhlIFBhcnRzIHJlcHJlc2VudGVkIGJ5IHRoZSBMaWZlbGluZXMgb2YgdGhlIHR3byBNZXNzYWdlRW5kcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InNpZ25hdHVyZV9yZWZlcl90byIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InNpZ25hdHVyZS0+bm90RW1wdHkoKSBpbXBsaWVzICYjeEQ7JiN4QTsoKHNpZ25hdHVyZS5vY2xJc0tpbmRPZihPcGVyYXRpb24pIGFuZCAmI3hEOyYjeEE7KG1lc3NhZ2VTb3J0ID0gTWVzc2FnZVNvcnQ6OmFzeW5jaENhbGwgb3IgbWVzc2FnZVNvcnQgPSBNZXNzYWdlU29ydDo6c3luY2hDYWxsIG9yIG1lc3NhZ2VTb3J0ID0gTWVzc2FnZVNvcnQ6OnJlcGx5KSAmI3hEOyYjeEE7KSBvciAoc2lnbmF0dXJlLm9jbElzS2luZE9mKFNpZ25hbCkgIGFuZCBtZXNzYWdlU29ydCA9IE1lc3NhZ2VTb3J0Ojphc3luY2hTaWduYWwgKSYjeEQ7JiN4QTsgKSBhbmQgbmFtZSA9IHNpZ25hdHVyZS5uYW1lIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHNpZ25hdHVyZSBtdXN0IGVpdGhlciByZWZlciBhbiBPcGVyYXRpb24gKGluIHdoaWNoIGNhc2UgbWVzc2FnZVNvcnQgaXMgZWl0aGVyIHN5bmNoQ2FsbCBvciBhc3luY2hDYWxsIG9yIHJlcGx5KSBvciBhIFNpZ25hbCAoaW4gd2hpY2ggY2FzZSBtZXNzYWdlU29ydCBpcyBhc3luY2hTaWduYWwpLiBUaGUgbmFtZSBvZiB0aGUgTmFtZWRFbGVtZW50IHJlZmVyZW5jZWQgYnkgc2lnbmF0dXJlIG11c3QgYmUgdGhlIHNhbWUgYXMgdGhhdCBvZiB0aGUgTWVzc2FnZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InNpZ25hdHVyZV9pc19vcGVyYXRpb25fcmVxdWVzdCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9IihtZXNzYWdlU29ydCA9IE1lc3NhZ2VTb3J0Ojphc3luY2hDYWxsIG9yIG1lc3NhZ2VTb3J0ID0gTWVzc2FnZVNvcnQ6OnN5bmNoQ2FsbCkgYW5kIHNpZ25hdHVyZS5vY2xJc0tpbmRPZihPcGVyYXRpb24pICBpbXBsaWVzICYjeEQ7JiN4QTsgbGV0IHJlcXVlc3RQYXJtcyA6IE9yZGVyZWRTZXQoUGFyYW1ldGVyKSA9IHNpZ25hdHVyZS5vY2xBc1R5cGUoT3BlcmF0aW9uKS5vd25lZFBhcmFtZXRlci0+JiN4RDsmI3hBOyBzZWxlY3QoZGlyZWN0aW9uID0gUGFyYW1ldGVyRGlyZWN0aW9uS2luZDo6aW5vdXQgb3IgZGlyZWN0aW9uID0gUGFyYW1ldGVyRGlyZWN0aW9uS2luZDo6XydpbicgICkmI3hEOyYjeEE7aW4gcmVxdWVzdFBhcm1zLT5zaXplKCkgPSBzZWxmLmFyZ3VtZW50LT5zaXplKCkgYW5kJiN4RDsmI3hBO3NlbGYuYXJndW1lbnQtPmZvckFsbCggbzogVmFsdWVTcGVjaWZpY2F0aW9uIHwgJiN4RDsmI3hBO25vdCAoby5vY2xJc0tpbmRPZihFeHByZXNzaW9uKSBhbmQgby5vY2xBc1R5cGUoRXhwcmVzc2lvbikuc3ltYm9sLT5zaXplKCk9MCBhbmQgby5vY2xBc1R5cGUoRXhwcmVzc2lvbikub3BlcmFuZC0+aXNFbXB0eSgpICkgaW1wbGllcyAmI3hEOyYjeEE7bGV0IHAgOiBQYXJhbWV0ZXIgPSByZXF1ZXN0UGFybXMtPmF0KHNlbGYuYXJndW1lbnQtPmluZGV4T2YobykpIGluJiN4RDsmI3hBO28udHlwZS5vY2xBc1R5cGUoQ2xhc3NpZmllcikuY29uZm9ybXNUbyhwLnR5cGUub2NsQXNUeXBlKENsYXNzaWZpZXIpKSYjeEQ7JiN4QTspIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSW4gdGhlIGNhc2Ugd2hlbiBhIE1lc3NhZ2Ugd2l0aCBtZXNzYWdlU29ydCBzeW5jaENhbGwgb3IgYXN5bmNoQ2FsbCBoYXMgYSBub24gZW1wdHkgT3BlcmF0aW9uIHNpZ25hdHVyZSwgdGhlIGFyZ3VtZW50cyBvZiB0aGUgTWVzc2FnZSBtdXN0IGNvcnJlc3BvbmQgdG8gdGhlIGluIGFuZCBpbm91dCBwYXJhbWV0ZXJzIG9mIHRoZSBPcGVyYXRpb24uIEEgUGFyYW1ldGVyIGNvcnJlc3BvbmRzIHRvIGFuIEFyZ3VtZW50IGlmIHRoZSBBcmd1bWVudCBpcyBvZiB0aGUgc2FtZSBDbGFzcyBvciBhIHNwZWNpYWxpemF0aW9uIG9mIHRoYXQgb2YgdGhlIFBhcmFtZXRlci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InNpZ25hdHVyZV9pc19vcGVyYXRpb25fcmVwbHkiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIobWVzc2FnZVNvcnQgPSBNZXNzYWdlU29ydDo6cmVwbHkpIGFuZCBzaWduYXR1cmUub2NsSXNLaW5kT2YoT3BlcmF0aW9uKSBpbXBsaWVzICYjeEQ7JiN4QTsgbGV0IHJlcGx5UGFybXMgOiBPcmRlcmVkU2V0KFBhcmFtZXRlcikgPSBzaWduYXR1cmUub2NsQXNUeXBlKE9wZXJhdGlvbikub3duZWRQYXJhbWV0ZXItPiYjeEQ7JiN4QTtzZWxlY3QoZGlyZWN0aW9uID0gUGFyYW1ldGVyRGlyZWN0aW9uS2luZDo6aW5vdXQgb3IgZGlyZWN0aW9uID0gUGFyYW1ldGVyRGlyZWN0aW9uS2luZDo6b3V0IG9yIGRpcmVjdGlvbiA9IFBhcmFtZXRlckRpcmVjdGlvbktpbmQ6OnJldHVybikmI3hEOyYjeEE7aW4gcmVwbHlQYXJtcy0+c2l6ZSgpID0gc2VsZi5hcmd1bWVudC0+c2l6ZSgpIGFuZCYjeEQ7JiN4QTtzZWxmLmFyZ3VtZW50LT5mb3JBbGwoIG86IFZhbHVlU3BlY2lmaWNhdGlvbiB8IG8ub2NsSXNLaW5kT2YoRXhwcmVzc2lvbikgYW5kIGxldCBlIDogRXhwcmVzc2lvbiA9IG8ub2NsQXNUeXBlKEV4cHJlc3Npb24pIGluJiN4RDsmI3hBO2Uub3BlcmFuZC0+bm90RW1wdHkoKSAgaW1wbGllcyAmI3hEOyYjeEE7bGV0IHAgOiBQYXJhbWV0ZXIgPSByZXBseVBhcm1zLT5hdChzZWxmLmFyZ3VtZW50LT5pbmRleE9mKG8pKSBpbiYjeEQ7JiN4QTtlLm9wZXJhbmQtPmFzU2VxdWVuY2UoKS0+Zmlyc3QoKS50eXBlLm9jbEFzVHlwZShDbGFzc2lmaWVyKS5jb25mb3Jtc1RvKHAudHlwZS5vY2xBc1R5cGUoQ2xhc3NpZmllcikpJiN4RDsmI3hBOykiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbiB0aGUgY2FzZSB3aGVuIGEgTWVzc2FnZSB3aXRoIG1lc3NhZ2VTb3J0IHJlcGx5IGhhcyBhIG5vbiBlbXB0eSBPcGVyYXRpb24gc2lnbmF0dXJlLCB0aGUgYXJndW1lbnRzIG9mIHRoZSBNZXNzYWdlIG11c3QgY29ycmVzcG9uZCB0byB0aGUgb3V0LCBpbm91dCwgYW5kIHJldHVybiBwYXJhbWV0ZXJzIG9mIHRoZSBPcGVyYXRpb24uIEEgUGFyYW1ldGVyIGNvcnJlc3BvbmRzIHRvIGFuIEFyZ3VtZW50IGlmIHRoZSBBcmd1bWVudCBpcyBvZiB0aGUgc2FtZSBDbGFzcyBvciBhIHNwZWNpYWxpemF0aW9uIG9mIHRoYXQgb2YgdGhlIFBhcmFtZXRlci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldE1lc3NhZ2VLaW5kIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL01lc3NhZ2VLaW5kIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhpcyBxdWVyeSByZXR1cm5zIHRoZSBNZXNzYWdlS2luZCB2YWx1ZSBmb3IgdGhpcyBNZXNzYWdlLiIvPgorICAgICAgICA8ZGV0YWlscyBrZXk9InN1cHByZXNzZWRWaXNpYmlsaXR5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ib3JpZ2luYWxOYW1lIiB2YWx1ZT0ibWVzc2FnZUtpbmQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im1lc3NhZ2VLaW5kIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJhcmd1bWVudCIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9WYWx1ZVNwZWNpZmljYXRpb24iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGFyZ3VtZW50cyBvZiB0aGUgTWVzc2FnZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJjb25uZWN0b3IiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vQ29ubmVjdG9yIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIENvbm5lY3RvciBvbiB3aGljaCB0aGlzIE1lc3NhZ2UgaXMgc2VudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iaW50ZXJhY3Rpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vSW50ZXJhY3Rpb24iIGVPcHBvc2l0ZT0iIy8vSW50ZXJhY3Rpb24vbWVzc2FnZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBlbmNsb3NpbmcgSW50ZXJhY3Rpb24gb3duaW5nIHRoZSBNZXNzYWdlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vTmFtZWRFbGVtZW50L25hbWVzcGFjZSIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ibWVzc2FnZUtpbmQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vTWVzc2FnZUtpbmQiIGNoYW5nZWFibGU9ImZhbHNlIiB2b2xhdGlsZT0idHJ1ZSIgdHJhbnNpZW50PSJ0cnVlIgorICAgICAgICBkZWZhdWx0VmFsdWVMaXRlcmFsPSJ1bmtub3duIiBkZXJpdmVkPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGRlcml2ZWQga2luZCBvZiB0aGUgTWVzc2FnZSAoY29tcGxldGUsIGxvc3QsIGZvdW5kLCBvciB1bmtub3duKS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ibWVzc2FnZVNvcnQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vTWVzc2FnZVNvcnQiIGRlZmF1bHRWYWx1ZUxpdGVyYWw9InN5bmNoQ2FsbCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBzb3J0IG9mIGNvbW11bmljYXRpb24gcmVmbGVjdGVkIGJ5IHRoZSBNZXNzYWdlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyZWNlaXZlRXZlbnQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vTWVzc2FnZUVuZCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJlZmVyZW5jZXMgdGhlIFJlY2VpdmluZyBvZiB0aGUgTWVzc2FnZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ic2VuZEV2ZW50IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL01lc3NhZ2VFbmQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZWZlcmVuY2VzIHRoZSBTZW5kaW5nIG9mIHRoZSBNZXNzYWdlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJzaWduYXR1cmUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vTmFtZWRFbGVtZW50Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHNpZ25hdHVyZSBvZiB0aGUgTWVzc2FnZSBpcyB0aGUgc3BlY2lmaWNhdGlvbiBvZiBpdHMgY29udGVudC4gSXQgcmVmZXJzIGVpdGhlciBhbiBPcGVyYXRpb24gb3IgYSBTaWduYWwuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkludGVyYWN0aW9uIiBlU3VwZXJUeXBlcz0iIy8vQmVoYXZpb3IgIy8vSW50ZXJhY3Rpb25GcmFnbWVudCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gSW50ZXJhY3Rpb24gaXMgYSB1bml0IG9mIEJlaGF2aW9yIHRoYXQgZm9jdXNlcyBvbiB0aGUgb2JzZXJ2YWJsZSBleGNoYW5nZSBvZiBpbmZvcm1hdGlvbiBiZXR3ZWVuIGNvbm5lY3RhYmxlIGVsZW1lbnRzLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJub3RfY29udGFpbmVkIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iZW5jbG9zaW5nSW50ZXJhY3Rpb24tPmlzRW1wdHkoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIEludGVyYWN0aW9uIGluc3RhbmNlIG11c3Qgbm90IGJlIGNvbnRhaW5lZCB3aXRoaW4gYW5vdGhlciBJbnRlcmFjdGlvbiBpbnN0YW5jZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImxpZmVsaW5lIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9MaWZlbGluZSIgY29udGFpbm1lbnQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vTGlmZWxpbmUvaW50ZXJhY3Rpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgdGhlIHBhcnRpY2lwYW50cyBpbiB0aGlzIEludGVyYWN0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vTmFtZXNwYWNlL293bmVkTWVtYmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJmcmFnbWVudCIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9JbnRlcmFjdGlvbkZyYWdtZW50IiBjb250YWlubWVudD0idHJ1ZSIgZU9wcG9zaXRlPSIjLy9JbnRlcmFjdGlvbkZyYWdtZW50L2VuY2xvc2luZ0ludGVyYWN0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG9yZGVyZWQgc2V0IG9mIGZyYWdtZW50cyBpbiB0aGUgSW50ZXJhY3Rpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lc3BhY2Uvb3duZWRNZW1iZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImFjdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQWN0aW9uIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFjdGlvbnMgb3duZWQgYnkgdGhlIEludGVyYWN0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImZvcm1hbEdhdGUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0dhdGUiIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iU3BlY2lmaWVzIHRoZSBnYXRlcyB0aGF0IGZvcm0gdGhlIG1lc3NhZ2UgaW50ZXJmYWNlIGJldHdlZW4gdGhpcyBJbnRlcmFjdGlvbiBhbmQgYW55IEludGVyYWN0aW9uVXNlcyB3aGljaCByZWZlcmVuY2UgaXQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lc3BhY2Uvb3duZWRNZW1iZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im1lc3NhZ2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL01lc3NhZ2UiIGNvbnRhaW5tZW50PSJ0cnVlIiBlT3Bwb3NpdGU9IiMvL01lc3NhZ2UvaW50ZXJhY3Rpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgTWVzc2FnZXMgY29udGFpbmVkIGluIHRoaXMgSW50ZXJhY3Rpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lc3BhY2Uvb3duZWRNZW1iZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkludGVyYWN0aW9uRnJhZ21lbnQiIGFic3RyYWN0PSJ0cnVlIgorICAgICAgZVN1cGVyVHlwZXM9IiMvL05hbWVkRWxlbWVudCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSW50ZXJhY3Rpb25GcmFnbWVudCBpcyBhbiBhYnN0cmFjdCBub3Rpb24gb2YgdGhlIG1vc3QgZ2VuZXJhbCBpbnRlcmFjdGlvbiB1bml0LiBBbiBJbnRlcmFjdGlvbkZyYWdtZW50IGlzIGEgcGllY2Ugb2YgYW4gSW50ZXJhY3Rpb24uIEVhY2ggSW50ZXJhY3Rpb25GcmFnbWVudCBpcyBjb25jZXB0dWFsbHkgbGlrZSBhbiBJbnRlcmFjdGlvbiBieSBpdHNlbGYuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImNvdmVyZWQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0xpZmVsaW5lIiBlT3Bwb3NpdGU9IiMvL0xpZmVsaW5lL2NvdmVyZWRCeSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJlZmVyZW5jZXMgdGhlIExpZmVsaW5lcyB0aGF0IHRoZSBJbnRlcmFjdGlvbkZyYWdtZW50IGludm9sdmVzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJlbmNsb3NpbmdPcGVyYW5kIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL0ludGVyYWN0aW9uT3BlcmFuZCIgZU9wcG9zaXRlPSIjLy9JbnRlcmFjdGlvbk9wZXJhbmQvZnJhZ21lbnQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgb3BlcmFuZCBlbmNsb3NpbmcgdGhpcyBJbnRlcmFjdGlvbkZyYWdtZW50ICh0aGV5IG1heSBuZXN0IHJlY3Vyc2l2ZWx5KS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVkRWxlbWVudC9uYW1lc3BhY2UiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImVuY2xvc2luZ0ludGVyYWN0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL0ludGVyYWN0aW9uIiBlT3Bwb3NpdGU9IiMvL0ludGVyYWN0aW9uL2ZyYWdtZW50Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIEludGVyYWN0aW9uIGVuY2xvc2luZyB0aGlzIEludGVyYWN0aW9uRnJhZ21lbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lZEVsZW1lbnQvbmFtZXNwYWNlIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJnZW5lcmFsT3JkZXJpbmciIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0dlbmVyYWxPcmRlcmluZyIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgZ2VuZXJhbCBvcmRlcmluZyByZWxhdGlvbnNoaXBzIGNvbnRhaW5lZCBpbiB0aGlzIGZyYWdtZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkxpZmVsaW5lIiBlU3VwZXJUeXBlcz0iIy8vTmFtZWRFbGVtZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIExpZmVsaW5lIHJlcHJlc2VudHMgYW4gaW5kaXZpZHVhbCBwYXJ0aWNpcGFudCBpbiB0aGUgSW50ZXJhY3Rpb24uIFdoaWxlIHBhcnRzIGFuZCBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG1heSBoYXZlIG11bHRpcGxpY2l0eSBncmVhdGVyIHRoYW4gMSwgTGlmZWxpbmVzIHJlcHJlc2VudCBvbmx5IG9uZSBpbnRlcmFjdGluZyBlbnRpdHkuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InNlbGVjdG9yX3NwZWNpZmllZCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9IiBzZWxmLnNlbGVjdG9yLT5ub3RFbXB0eSgpID0gKHNlbGYucmVwcmVzZW50cy5vY2xJc0tpbmRPZihNdWx0aXBsaWNpdHlFbGVtZW50KSBhbmQgc2VsZi5yZXByZXNlbnRzLm9jbEFzVHlwZShNdWx0aXBsaWNpdHlFbGVtZW50KS5pc011bHRpdmFsdWVkKCkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHNlbGVjdG9yIGZvciBhIExpZmVsaW5lIG11c3Qgb25seSBiZSBzcGVjaWZpZWQgaWYgdGhlIHJlZmVyZW5jZWQgUGFydCBpcyBtdWx0aXZhbHVlZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImludGVyYWN0aW9uX3VzZXNfc2hhcmVfbGlmZWxpbmUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJsZXQgaW50VXNlcyA6IFNldChJbnRlcmFjdGlvblVzZSkgPSBpbnRlcmFjdGlvbi5pbnRlcmFjdGlvblVzZSAgaW4gJiN4RDsmI3hBO2ludFVzZXMtPmZvckFsbCYjeEQ7JiN4QTsoIGl1c2UgOiBJbnRlcmFjdGlvblVzZSB8ICYjeEQ7JiN4QTtsZXQgdXNpbmdJbnRlcmFjdGlvbiA6IFNldChJbnRlcmFjdGlvbikgID0gaXVzZS5lbmNsb3NpbmdJbnRlcmFjdGlvbi0+YXNTZXQoKSYjeEQ7JiN4QTstPnVuaW9uKCYjeEQ7JiN4QTtpdXNlLmVuY2xvc2luZ09wZXJhbmQuY29tYmluZWRGcmFnbWVudC0+YXNTZXQoKS0+Y2xvc3VyZShlbmNsb3NpbmdPcGVyYW5kLmNvbWJpbmVkRnJhZ21lbnQpLmVuY2xvc2luZ0ludGVyYWN0aW9uLT5hc1NldCgpJiN4RDsmI3hBOyAgICAgICAgICAgICAgICkgJiN4RDsmI3hBO2luJiN4RDsmI3hBO2xldCBwZWVyVXNlcyA6IFNldChJbnRlcmFjdGlvblVzZSkgPSB1c2luZ0ludGVyYWN0aW9uLmZyYWdtZW50LT5zZWxlY3Qob2NsSXNLaW5kT2YoSW50ZXJhY3Rpb25Vc2UpKS5vY2xBc1R5cGUoSW50ZXJhY3Rpb25Vc2UpLT5hc1NldCgpJiN4RDsmI3hBOy0+dW5pb24oJiN4RDsmI3hBO3VzaW5nSW50ZXJhY3Rpb24uZnJhZ21lbnQtPnNlbGVjdChvY2xJc0tpbmRPZihDb21iaW5lZEZyYWdtZW50KSkub2NsQXNUeXBlKENvbWJpbmVkRnJhZ21lbnQpLT5hc1NldCgpJiN4RDsmI3hBOy0+Y2xvc3VyZShvcGVyYW5kLmZyYWdtZW50LT5zZWxlY3Qob2NsSXNLaW5kT2YoQ29tYmluZWRGcmFnbWVudCkpLm9jbEFzVHlwZShDb21iaW5lZEZyYWdtZW50KSkub3BlcmFuZC5mcmFnbWVudC0+JiN4RDsmI3hBO3NlbGVjdChvY2xJc0tpbmRPZihJbnRlcmFjdGlvblVzZSkpLm9jbEFzVHlwZShJbnRlcmFjdGlvblVzZSktPmFzU2V0KCkmI3hEOyYjeEE7ICAgICAgICAgICAgICAgKS0+ZXhjbHVkaW5nKGl1c2UpJiN4RDsmI3hBOyBpbiYjeEQ7JiN4QTtwZWVyVXNlcy0+Zm9yQWxsKCBwZWVyVXNlIDogSW50ZXJhY3Rpb25Vc2UgfCYjeEQ7JiN4QTsgcGVlclVzZS5yZWZlcnNUby5saWZlbGluZS0+Zm9yQWxsKCBsIDogTGlmZWxpbmUgfCAobC5yZXByZXNlbnRzID0gc2VsZi5yZXByZXNlbnRzIGFuZCAmI3hEOyYjeEE7ICggc2VsZi5zZWxlY3Rvci5vY2xJc0tpbmRPZihMaXRlcmFsU3RyaW5nKSBpbXBsaWVzJiN4RDsmI3hBOyAgbC5zZWxlY3Rvci5vY2xJc0tpbmRPZihMaXRlcmFsU3RyaW5nKSBhbmQgJiN4RDsmI3hBOyAgc2VsZi5zZWxlY3Rvci5vY2xBc1R5cGUoTGl0ZXJhbFN0cmluZykudmFsdWUgPSBsLnNlbGVjdG9yLm9jbEFzVHlwZShMaXRlcmFsU3RyaW5nKS52YWx1ZSApJiN4RDsmI3hBOyAgYW5kICYjeEQ7JiN4QTsoIHNlbGYuc2VsZWN0b3Iub2NsSXNLaW5kT2YoTGl0ZXJhbEludGVnZXIpIGltcGxpZXMmI3hEOyYjeEE7ICBsLnNlbGVjdG9yLm9jbElzS2luZE9mKExpdGVyYWxJbnRlZ2VyKSBhbmQgJiN4RDsmI3hBOyAgc2VsZi5zZWxlY3Rvci5vY2xBc1R5cGUoTGl0ZXJhbEludGVnZXIpLnZhbHVlID0gbC5zZWxlY3Rvci5vY2xBc1R5cGUoTGl0ZXJhbEludGVnZXIpLnZhbHVlICkmI3hEOyYjeEE7KSAgJiN4RDsmI3hBO2ltcGxpZXMmI3hEOyYjeEE7IHVzaW5nSW50ZXJhY3Rpb24ubGlmZWxpbmUtPmV4aXN0cyhyZXByZXNlbnRzID0gc2VsZi5yZXByZXNlbnRzIGFuZCYjeEQ7JiN4QTsgKCBzZWxmLnNlbGVjdG9yLm9jbElzS2luZE9mKExpdGVyYWxTdHJpbmcpIGltcGxpZXMmI3hEOyYjeEE7ICBsLnNlbGVjdG9yLm9jbElzS2luZE9mKExpdGVyYWxTdHJpbmcpIGFuZCAmI3hEOyYjeEE7ICBzZWxmLnNlbGVjdG9yLm9jbEFzVHlwZShMaXRlcmFsU3RyaW5nKS52YWx1ZSA9IGwuc2VsZWN0b3Iub2NsQXNUeXBlKExpdGVyYWxTdHJpbmcpLnZhbHVlICkmI3hEOyYjeEE7YW5kICYjeEQ7JiN4QTsoIHNlbGYuc2VsZWN0b3Iub2NsSXNLaW5kT2YoTGl0ZXJhbEludGVnZXIpIGltcGxpZXMmI3hEOyYjeEE7ICBsLnNlbGVjdG9yLm9jbElzS2luZE9mKExpdGVyYWxJbnRlZ2VyKSBhbmQgJiN4RDsmI3hBOyAgc2VsZi5zZWxlY3Rvci5vY2xBc1R5cGUoTGl0ZXJhbEludGVnZXIpLnZhbHVlID0gbC5zZWxlY3Rvci5vY2xBc1R5cGUoTGl0ZXJhbEludGVnZXIpLnZhbHVlICkmI3hEOyYjeEE7KSYjeEQ7JiN4QTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApJiN4RDsmI3hBOyAgICAgICAgICAgICAgICAgICAgKSYjeEQ7JiN4QTspIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgYSBsaWZlbGluZSBpcyBpbiBhbiBJbnRlcmFjdGlvbiByZWZlcnJlZCB0byBieSBhbiBJbnRlcmFjdGlvblVzZSBpbiBhbiBlbmNsb3NpbmcgSW50ZXJhY3Rpb24sICBhbmQgdGhhdCBsaWZlbGluZSBpcyBjb21tb24gd2l0aCBhbm90aGVyIGxpZmVsaW5lIGluIGFuIEludGVyYWN0aW9uIHJlZmVycmVkIHRvIGJ5IGFub3RoZXIgSW50ZXJhY3RvblVzZSB3aXRoaW4gdGhhdCBzYW1lIGVuY2xvc2luZyBJbnRlcmFjdGlvbiwgaXQgbXVzdCBiZSBjb21tb24gdG8gYSBsaWZlbGluZSB3aXRoaW4gdGhhdCBlbmNsb3NpbmcgSW50ZXJhY3Rpb24uIEJ5IGNvbW1vbiBMaWZlbGluZXMgd2UgbWVhbiBMaWZlbGluZXMgd2l0aCB0aGUgc2FtZSBzZWxlY3RvciBhbmQgcmVwcmVzZW50cyBhc3NvY2lhdGlvbnMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzYW1lX2NsYXNzaWZpZXIiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJyZXByZXNlbnRzLm5hbWVzcGFjZS0+Y2xvc3VyZShuYW1lc3BhY2UpLT5pbmNsdWRlcyhpbnRlcmFjdGlvbi5fJ2NvbnRleHQnKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjbGFzc2lmaWVyIGNvbnRhaW5pbmcgdGhlIHJlZmVyZW5jZWQgQ29ubmVjdGFibGVFbGVtZW50IG11c3QgYmUgdGhlIHNhbWUgY2xhc3NpZmllciwgb3IgYW4gYW5jZXN0b3IsIG9mIHRoZSBjbGFzc2lmaWVyIHRoYXQgY29udGFpbnMgdGhlIGludGVyYWN0aW9uIGVuY2xvc2luZyB0aGlzIGxpZmVsaW5lLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ic2VsZWN0b3JfaW50X29yX3N0cmluZyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InNlbGYuc2VsZWN0b3ItPm5vdEVtcHR5KCkgaW1wbGllcyAmI3hEOyYjeEE7c2VsZi5zZWxlY3Rvci5vY2xJc0tpbmRPZihMaXRlcmFsSW50ZWdlcikgb3IgJiN4RDsmI3hBO3NlbGYuc2VsZWN0b3Iub2NsSXNLaW5kT2YoTGl0ZXJhbFN0cmluZykiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc2VsZWN0b3IgdmFsdWUsIGlmIHByZXNlbnQsIG11c3QgYmUgYSBMaXRlcmFsU3RyaW5nIG9yIGEgTGl0ZXJhbEludGVnZXIiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImRlY29tcG9zZWRBcyIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9QYXJ0RGVjb21wb3NpdGlvbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJlZmVyZW5jZXMgdGhlIEludGVyYWN0aW9uIHRoYXQgcmVwcmVzZW50cyB0aGUgZGVjb21wb3NpdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iaW50ZXJhY3Rpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vSW50ZXJhY3Rpb24iIGVPcHBvc2l0ZT0iIy8vSW50ZXJhY3Rpb24vbGlmZWxpbmUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZWZlcmVuY2VzIHRoZSBJbnRlcmFjdGlvbiBlbmNsb3NpbmcgdGhpcyBMaWZlbGluZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVkRWxlbWVudC9uYW1lc3BhY2UiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InJlcHJlc2VudHMiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vQ29ubmVjdGFibGVFbGVtZW50Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmVmZXJlbmNlcyB0aGUgQ29ubmVjdGFibGVFbGVtZW50IHdpdGhpbiB0aGUgY2xhc3NpZmllciB0aGF0IGNvbnRhaW5zIHRoZSBlbmNsb3NpbmcgaW50ZXJhY3Rpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InNlbGVjdG9yIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL1ZhbHVlU3BlY2lmaWNhdGlvbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiB0aGUgcmVmZXJlbmNlZCBDb25uZWN0YWJsZUVsZW1lbnQgaXMgbXVsdGl2YWx1ZWQsIHRoZW4gdGhpcyBzcGVjaWZpZXMgdGhlIHNwZWNpZmljIGluZGl2aWR1YWwgcGFydCB3aXRoaW4gdGhhdCBzZXQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iY292ZXJlZEJ5IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9JbnRlcmFjdGlvbkZyYWdtZW50IiBlT3Bwb3NpdGU9IiMvL0ludGVyYWN0aW9uRnJhZ21lbnQvY292ZXJlZCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJlZmVyZW5jZXMgdGhlIEludGVyYWN0aW9uRnJhZ21lbnRzIGluIHdoaWNoIHRoaXMgTGlmZWxpbmUgdGFrZXMgcGFydC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUGFydERlY29tcG9zaXRpb24iIGVTdXBlclR5cGVzPSIjLy9JbnRlcmFjdGlvblVzZSI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBQYXJ0RGVjb21wb3NpdGlvbiBpcyBhIGRlc2NyaXB0aW9uIG9mIHRoZSBpbnRlcm5hbCBJbnRlcmFjdGlvbnMgb2Ygb25lIExpZmVsaW5lIHJlbGF0aXZlIHRvIGFuIEludGVyYWN0aW9uLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjb21tdXRhdGl2aXR5X29mX2RlY29tcG9zaXRpb24iIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQXNzdW1lIHRoYXQgd2l0aGluIEludGVyYWN0aW9uIFgsIExpZmVsaW5lIEwgaXMgb2YgY2xhc3MgQyBhbmQgZGVjb21wb3NlZCB0byBELiBBc3N1bWUgYWxzbyB0aGF0IHRoZXJlIGlzIHdpdGhpbiBYIGFuIEludGVyYWN0aW9uVXNlIChzYXkpIFUgdGhhdCBjb3ZlcnMgTC4gQWNjb3JkaW5nIHRvIHRoZSBjb25zdHJhaW50IGFib3ZlIFUgd2lsbCBoYXZlIGEgY291bnRlcnBhcnQgQ1Ugd2l0aGluIEQuIFdpdGhpbiB0aGUgSW50ZXJhY3Rpb24gcmVmZXJlbmNlZCBieSBVLCBMIHNob3VsZCBhbHNvIGJlIGRlY29tcG9zZWQsIGFuZCB0aGUgZGVjb21wb3NpdGlvbiBzaG91bGQgcmVmZXJlbmNlIENVLiAoVGhpcyBydWxlIGlzIGNhbGxlZCBjb21tdXRhdGl2aXR5IG9mIGRlY29tcG9zaXRpb24uKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iYXNzdW1lIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFzc3VtZSB0aGF0IHdpdGhpbiBJbnRlcmFjdGlvbiBYLCBMaWZlbGluZSBMIGlzIG9mIGNsYXNzIEMgYW5kIGRlY29tcG9zZWQgdG8gRC4gV2l0aGluIFggdGhlcmUgaXMgYSBzZXF1ZW5jZSBvZiBjb25zdHJ1Y3RzIGFsb25nIEwgKHN1Y2ggY29uc3RydWN0cyBhcmUgQ29tYmluZWRGcmFnbWVudHMsIEludGVyYWN0aW9uVXNlIGFuZCAocGxhaW4pIE9jY3VycmVuY2VTcGVjaWZpY2F0aW9ucykuIFRoZW4gYSBjb3JyZXNwb25kaW5nIHNlcXVlbmNlIG9mIGNvbnN0cnVjdHMgbXVzdCBhcHBlYXIgd2l0aGluIEQsIG1hdGNoZWQgb25lLXRvLW9uZSBpbiB0aGUgc2FtZSBvcmRlci4gaSkgQ29tYmluZWRGcmFnbWVudCBjb3ZlcmluZyBMIGFyZSBtYXRjaGVkIHdpdGggYW4gZXh0cmEtZ2xvYmFsIENvbWJpbmVkRnJhZ21lbnQgaW4gRC4gaWkpIEFuIEludGVyYWN0aW9uVXNlIGNvdmVyaW5nIEwgaXMgbWF0Y2hlZCB3aXRoIGEgZ2xvYmFsIChpLmUuLCBjb3ZlcmluZyBhbGwgTGlmZWxpbmVzKSBJbnRlcmFjdGlvblVzZSBpbiBELiBpaWkpIEEgcGxhaW4gT2NjdXJyZW5jZVNwZWNpZmljYXRpb24gb24gTCBpcyBjb25zaWRlcmVkIGFuIGFjdHVhbEdhdGUgdGhhdCBtdXN0IGJlIG1hdGNoZWQgYnkgYSBmb3JtYWxHYXRlIG9mIEQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJwYXJ0c19vZl9pbnRlcm5hbF9zdHJ1Y3R1cmVzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlBhcnREZWNvbXBvc2l0aW9ucyBhcHBseSBvbmx5IHRvIFBhcnRzIHRoYXQgYXJlIFBhcnRzIG9mIEludGVybmFsIFN0cnVjdHVyZXMgbm90IHRvIFBhcnRzIG9mIENvbGxhYm9yYXRpb25zLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iSW50ZXJhY3Rpb25Vc2UiIGVTdXBlclR5cGVzPSIjLy9JbnRlcmFjdGlvbkZyYWdtZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBJbnRlcmFjdGlvblVzZSByZWZlcnMgdG8gYW4gSW50ZXJhY3Rpb24uIFRoZSBJbnRlcmFjdGlvblVzZSBpcyBhIHNob3J0aGFuZCBmb3IgY29weWluZyB0aGUgY29udGVudHMgb2YgdGhlIHJlZmVyZW5jZWQgSW50ZXJhY3Rpb24gd2hlcmUgdGhlIEludGVyYWN0aW9uVXNlIGlzLiBUbyBiZSBhY2N1cmF0ZSB0aGUgY29weWluZyBtdXN0IHRha2UgaW50byBhY2NvdW50IHN1YnN0aXR1dGluZyBwYXJhbWV0ZXJzIHdpdGggYXJndW1lbnRzIGFuZCBjb25uZWN0IHRoZSBmb3JtYWwgR2F0ZXMgd2l0aCB0aGUgYWN0dWFsIG9uZXMuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdhdGVzX21hdGNoIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iYWN0dWFsR2F0ZS0+bm90RW1wdHkoKSBpbXBsaWVzICYjeEQ7JiN4QTtyZWZlcnNUby5mb3JtYWxHYXRlLT5mb3JBbGwoIGZnIDogR2F0ZSB8IHNlbGYuYWN0dWFsR2F0ZS0+c2VsZWN0KG1hdGNoZXMoZmcpKS0+c2l6ZSgpPTEpIGFuZCYjeEQ7JiN4QTtzZWxmLmFjdHVhbEdhdGUtPmZvckFsbChhZyA6IEdhdGUgfCByZWZlcnNUby5mb3JtYWxHYXRlLT5zZWxlY3QobWF0Y2hlcyhhZykpLT5zaXplKCk9MSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBY3R1YWwgR2F0ZXMgb2YgdGhlIEludGVyYWN0aW9uVXNlIG11c3QgbWF0Y2ggRm9ybWFsIEdhdGVzIG9mIHRoZSByZWZlcnJlZCBJbnRlcmFjdGlvbi4gR2F0ZXMgbWF0Y2ggd2hlbiB0aGVpciBuYW1lcyBhcmUgZXF1YWwgYW5kIHRoZWlyIG1lc3NhZ2VzIGNvcnJlc3BvbmQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJhcmd1bWVudHNfYXJlX2NvbnN0YW50cyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgYXJndW1lbnRzIG11c3Qgb25seSBiZSBjb25zdGFudHMsIHBhcmFtZXRlcnMgb2YgdGhlIGVuY2xvc2luZyBJbnRlcmFjdGlvbiBvciBhdHRyaWJ1dGVzIG9mIHRoZSBjbGFzc2lmaWVyIG93bmluZyB0aGUgZW5jbG9zaW5nIEludGVyYWN0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0icmV0dXJuVmFsdWVSZWNpcGllbnRfY292ZXJhZ2UiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJyZXR1cm5WYWx1ZVJlY2lwaWVudC0+YXNTZXQoKS0+bm90RW1wdHkoKSBpbXBsaWVzJiN4RDsmI3hBO2xldCBjb3ZDRSA6IFNldChDb25uZWN0YWJsZUVsZW1lbnQpID0gY292ZXJlZC5yZXByZXNlbnRzLT5hc1NldCgpIGluICYjeEQ7JiN4QTtjb3ZDRS0+bm90RW1wdHkoKSBhbmQgbGV0IGNsYXNzZXM6U2V0KENsYXNzaWZpZXIpID0gY292Q0UudHlwZS5vY2xJc0tpbmRPZihDbGFzc2lmaWVyKS5vY2xBc1R5cGUoQ2xhc3NpZmllciktPmFzU2V0KCkgaW4gJiN4RDsmI3hBO2xldCBhbGxQcm9wcyA6IFNldChQcm9wZXJ0eSkgPSBjbGFzc2VzLmF0dHJpYnV0ZS0+dW5pb24oY2xhc3Nlcy5hbGxQYXJlbnRzKCkuYXR0cmlidXRlKS0+YXNTZXQoKSBpbiAmI3hEOyYjeEE7YWxsUHJvcHMtPmluY2x1ZGVzKHJldHVyblZhbHVlUmVjaXBpZW50KSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSByZXR1cm5WYWx1ZVJlY2lwaWVudCBtdXN0IGJlIGEgUHJvcGVydHkgb2YgYSBDb25uZWN0YWJsZUVsZW1lbnQgdGhhdCBpcyByZXByZXNlbnRlZCBieSBhIExpZmVsaW5lIGNvdmVyZWQgYnkgdGhpcyBJbnRlcmFjdGlvblVzZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImFyZ3VtZW50c19jb3JyZXNwb25kX3RvX3BhcmFtZXRlcnMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGFyZ3VtZW50cyBvZiB0aGUgSW50ZXJhY3Rpb25Vc2UgbXVzdCBjb3JyZXNwb25kIHRvIHBhcmFtZXRlcnMgb2YgdGhlIHJlZmVycmVkIEludGVyYWN0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0icmV0dXJuVmFsdWVfdHlwZV9yZWNpcGllbnRfY29ycmVzcG9uZGVuY2UiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJyZXR1cm5WYWx1ZS50eXBlLT5hc1NlcXVlbmNlKCktPm5vdEVtcHR5KCkgaW1wbGllcyByZXR1cm5WYWx1ZS50eXBlLT5hc1NlcXVlbmNlKCktPmZpcnN0KCkgPSByZXR1cm5WYWx1ZVJlY2lwaWVudC50eXBlLT5hc1NlcXVlbmNlKCktPmZpcnN0KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgdHlwZSBvZiB0aGUgcmV0dXJuVmFsdWUgbXVzdCBjb3JyZXNwb25kIHRvIHRoZSB0eXBlIG9mIHRoZSByZXR1cm5WYWx1ZVJlY2lwaWVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImFsbF9saWZlbGluZXMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJsZXQgcGFyZW50SW50ZXJhY3Rpb24gOiBTZXQoSW50ZXJhY3Rpb24pID0gZW5jbG9zaW5nSW50ZXJhY3Rpb24tPmFzU2V0KCktPiYjeEQ7JiN4QTt1bmlvbihlbmNsb3NpbmdPcGVyYW5kLmNvbWJpbmVkRnJhZ21lbnQtPmNsb3N1cmUoZW5jbG9zaW5nT3BlcmFuZC5jb21iaW5lZEZyYWdtZW50KS0+JiN4RDsmI3hBO2NvbGxlY3QoZW5jbG9zaW5nSW50ZXJhY3Rpb24pLm9jbEFzVHlwZShJbnRlcmFjdGlvbiktPmFzU2V0KCkpIGluJiN4RDsmI3hBO3BhcmVudEludGVyYWN0aW9uLT5zaXplKCk9MSBhbmQgbGV0IHJlZkludGVyYWN0aW9uIDogSW50ZXJhY3Rpb24gPSByZWZlcnNUbyBpbiYjeEQ7JiN4QTtwYXJlbnRJbnRlcmFjdGlvbi5jb3ZlcmVkLT4gZm9yQWxsKGludExpZmVsaW5lIDogTGlmZWxpbmUgfCByZWZJbnRlcmFjdGlvbi5jb3ZlcmVkLT4mI3hEOyYjeEE7Zm9yQWxsKCByZWZMaWZlbGluZSA6IExpZmVsaW5lIHwgcmVmTGlmZWxpbmUucmVwcmVzZW50cyA9IGludExpZmVsaW5lLnJlcHJlc2VudHMgYW5kICYjeEQ7JiN4QTsoJiN4RDsmI3hBOyggcmVmTGlmZWxpbmUuc2VsZWN0b3Iub2NsSXNLaW5kT2YoTGl0ZXJhbFN0cmluZykgaW1wbGllcyYjeEQ7JiN4QTsgIGludExpZmVsaW5lLnNlbGVjdG9yLm9jbElzS2luZE9mKExpdGVyYWxTdHJpbmcpIGFuZCAmI3hEOyYjeEE7ICByZWZMaWZlbGluZS5zZWxlY3Rvci5vY2xBc1R5cGUoTGl0ZXJhbFN0cmluZykudmFsdWUgPSBpbnRMaWZlbGluZS5zZWxlY3Rvci5vY2xBc1R5cGUoTGl0ZXJhbFN0cmluZykudmFsdWUgKSBhbmQmI3hEOyYjeEE7KCByZWZMaWZlbGluZS5zZWxlY3Rvci5vY2xJc0tpbmRPZihMaXRlcmFsSW50ZWdlcikgaW1wbGllcyYjeEQ7JiN4QTsgIGludExpZmVsaW5lLnNlbGVjdG9yLm9jbElzS2luZE9mKExpdGVyYWxJbnRlZ2VyKSBhbmQgJiN4RDsmI3hBOyAgcmVmTGlmZWxpbmUuc2VsZWN0b3Iub2NsQXNUeXBlKExpdGVyYWxJbnRlZ2VyKS52YWx1ZSA9IGludExpZmVsaW5lLnNlbGVjdG9yLm9jbEFzVHlwZShMaXRlcmFsSW50ZWdlcikudmFsdWUgKSYjeEQ7JiN4QTspJiN4RDsmI3hBOyBpbXBsaWVzIHNlbGYuY292ZXJlZC0+YXNTZXQoKS0+aW5jbHVkZXMoaW50TGlmZWxpbmUpKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgSW50ZXJhY3Rpb25Vc2UgbXVzdCBjb3ZlciBhbGwgTGlmZWxpbmVzIG9mIHRoZSBlbmNsb3NpbmcgSW50ZXJhY3Rpb24gdGhhdCBhcmUgY29tbW9uIHdpdGggdGhlIGxpZmVsaW5lcyBjb3ZlcmVkIGJ5IHRoZSByZWZlcnJlZCBJbnRlcmFjdGlvbi4gTGlmZWxpbmVzIGFyZSBjb21tb24gaWYgdGhleSBoYXZlIHRoZSBzYW1lIHNlbGVjdG9yIGFuZCByZXByZXNlbnRzIGFzc29jaWF0aW9uRW5kIHZhbHVlcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImFjdHVhbEdhdGUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0dhdGUiIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGFjdHVhbCBnYXRlcyBvZiB0aGUgSW50ZXJhY3Rpb25Vc2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iYXJndW1lbnQiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICBlVHlwZT0iIy8vVmFsdWVTcGVjaWZpY2F0aW9uIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBhY3R1YWwgYXJndW1lbnRzIG9mIHRoZSBJbnRlcmFjdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyZWZlcnNUbyIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9JbnRlcmFjdGlvbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJlZmVycyB0byB0aGUgSW50ZXJhY3Rpb24gdGhhdCBkZWZpbmVzIGl0cyBtZWFuaW5nLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyZXR1cm5WYWx1ZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9WYWx1ZVNwZWNpZmljYXRpb24iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHZhbHVlIG9mIHRoZSBleGVjdXRlZCBJbnRlcmFjdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyZXR1cm5WYWx1ZVJlY2lwaWVudCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9Qcm9wZXJ0eSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSByZWNpcGllbnQgb2YgdGhlIHJldHVybiB2YWx1ZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iR2F0ZSIgZVN1cGVyVHlwZXM9IiMvL01lc3NhZ2VFbmQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgR2F0ZSBpcyBhIE1lc3NhZ2VFbmQgd2hpY2ggc2VydmVzIGFzIGEgY29ubmVjdGlvbiBwb2ludCBmb3IgcmVsYXRpbmcgYSBNZXNzYWdlIHdoaWNoIGhhcyBhIE1lc3NhZ2VFbmQgKHNlbmRFdmVudCAvIHJlY2VpdmVFdmVudCkgb3V0c2lkZSBhbiBJbnRlcmFjdGlvbkZyYWdtZW50IHdpdGggYW5vdGhlciBNZXNzYWdlIHdoaWNoIGhhcyBhIE1lc3NhZ2VFbmQgKHJlY2VpdmVFdmVudCAvIHNlbmRFdmVudCkgIGluc2lkZSB0aGF0IEludGVyYWN0aW9uRnJhZ21lbnQuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9ImR1cGxpY2F0ZXMiPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBuYW1lPSJpc0Rpc3Rpbmd1aXNoYWJsZUZyb20iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBpc0Rpc3Rpbmd1aXNoYWJsZUZyb20oKSBzcGVjaWZpZXMgdGhhdCB0d28gR2F0ZXMgbWF5IGNvZXhpc3QgaW4gdGhlIHNhbWUgTmFtZXNwYWNlLCB3aXRob3V0IGFuIGV4cGxpY2l0IG5hbWUgcHJvcGVydHkuIFRoZSBhc3NvY2lhdGlvbiBlbmQgZm9ybWFsR2F0ZSBzdWJzZXRzIG93bmVkRWxlbWVudCwgYW5kIHNpbmNlIHRoZSBHYXRlIG5hbWUgYXR0cmlidXRlJiN4RDsmI3hBO2lzIG9wdGlvbmFsLCBpdCBpcyBhbGxvd2VkIHRvIGhhdmUgdHdvIGZvcm1hbCBnYXRlcyB3aXRob3V0IGFuIGV4cGxpY2l0IG5hbWUsIGJ1dCBoYXZpbmcgZGVyaXZlZCBuYW1lcyB3aGljaCBhcmUgZGlzdGluY3QuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9OYW1lZEVsZW1lbnQvaXNEaXN0aW5ndWlzaGFibGVGcm9tIi8+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJuIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL05hbWVkRWxlbWVudCIvPgorICAgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibnMiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vTmFtZXNwYWNlIi8+CisgICAgICA8L2NvbnRlbnRzPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJhY3R1YWxfZ2F0ZV9tYXRjaGVkIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaW50ZXJhY3Rpb25Vc2UtPm5vdEVtcHR5KCkgaW1wbGllcyBpbnRlcmFjdGlvblVzZS5yZWZlcnNUby5mb3JtYWxHYXRlLT5zZWxlY3QobWF0Y2hlcyhzZWxmKSktPnNpemUoKT0xIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgdGhpcyBHYXRlIGlzIGFuIGFjdHVhbEdhdGUsIGl0IG11c3QgaGF2ZSBleGFjdGx5IG9uZSBtYXRjaGluZyBmb3JtYWxHYXRlIHdpdGhpbiB0aGUgcmVmZXJyZWQgSW50ZXJhY3Rpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpbnNpZGVfY2ZfbWF0Y2hlZCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlzSW5zaWRlQ0YoKSBpbXBsaWVzIGNvbWJpbmVkRnJhZ21lbnQuY2ZyYWdtZW50R2F0ZS0+c2VsZWN0KGlzT3V0c2lkZUNGKCkgYW5kIG1hdGNoZXMoc2VsZikpLT5zaXplKCk9MSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIHRoaXMgR2F0ZSBpcyBpbnNpZGUgYSBDb21iaW5lZEZyYWdtZW50LCBpdCBtdXN0IGhhdmUgZXhhY3RseSBvbmUgbWF0Y2hpbmcgR2F0ZSB3aGljaCBpcyBvdXRzaWRlIG9mIHRoYXQgQ29tYmluZWRGcmFnbWVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im91dHNpZGVfY2ZfbWF0Y2hlZCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlzT3V0c2lkZUNGKCkgaW1wbGllcyYjeEQ7JiN4QTsgaWYgc2VsZi5jb21iaW5lZEZyYWdtZW50LmludGVyYWN0aW9uT3BlcmF0b3ItPmFzT3JkZXJlZFNldCgpLT5maXJzdCgpID0gSW50ZXJhY3Rpb25PcGVyYXRvcktpbmQ6OmFsdCYjeEQ7JiN4QTsgdGhlbiBzZWxmLmNvbWJpbmVkRnJhZ21lbnQub3BlcmFuZC0+Zm9yQWxsKG9wIDogSW50ZXJhY3Rpb25PcGVyYW5kIHwmI3hEOyYjeEE7IHNlbGYuY29tYmluZWRGcmFnbWVudC5jZnJhZ21lbnRHYXRlLT5zZWxlY3QoaXNJbnNpZGVDRigpIGFuZCAmI3hEOyYjeEE7IG9wcG9zaXRlRW5kKCkuZW5jbG9zaW5nRnJhZ21lbnQoKS0+aW5jbHVkZXMoc2VsZi5jb21iaW5lZEZyYWdtZW50KSBhbmQgbWF0Y2hlcyhzZWxmKSktPnNpemUoKT0xKSYjeEQ7JiN4QTsgZWxzZSAgc2VsZi5jb21iaW5lZEZyYWdtZW50LmNmcmFnbWVudEdhdGUtPnNlbGVjdChpc0luc2lkZUNGKCkgYW5kIG1hdGNoZXMoc2VsZikpLT5zaXplKCk9MSYjeEQ7JiN4QTsgZW5kaWYiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiB0aGlzIEdhdGUgaXMgb3V0c2lkZSBhbiAnYWx0JyBDb21iaW5lZEZyYWdtZW50LCAgZm9yIGV2ZXJ5IEludGVyYWN0aW9uT3BlcmF0b3IgaW5zaWRlIHRoYXQgQ29tYmluZWRGcmFnbWVudCB0aGVyZSBtdXN0IGJlIGV4YWN0bHkgb25lIG1hdGNoaW5nIEdhdGUgaW5zaWRlIHRoZSBDb21iaW5kZWRGcmFnbWVudCB3aXRoIGl0cyBvcHBvc2luZyBlbmQgZW5jbG9zZWQgYnkgdGhhdCBJbnRlcmFjdGlvbk9wZXJhdG9yLiBJZiB0aGlzIEdhdGUgaXMgb3V0c2lkZSBDb21iaW5lZEZyYWdtZW50IHdpdGggb3BlcmF0b3Igb3RoZXIgdGhhbiAnYWx0JywgICB0aGVyZSBtdXN0IGJlIGV4YWN0bHkgb25lIG1hdGNoaW5nIEdhdGUgaW5zaWRlIHRoYXQgQ29tYmluZWRGcmFnbWVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImZvcm1hbF9nYXRlX2Rpc3Rpbmd1aXNoYWJsZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlzRm9ybWFsKCkgaW1wbGllcyBpbnRlcmFjdGlvbi5mb3JtYWxHYXRlLT5zZWxlY3QoZ2V0TmFtZSgpID0gc2VsZi5nZXROYW1lKCkpLT5zaXplKCk9MSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9ImlzRm9ybWFsKCkgaW1wbGllcyB0aGF0IG5vIG90aGVyIGZvcm1hbEdhdGUgb2YgdGhlIHBhcmVudCBJbnRlcmFjdGlvbiByZXR1cm5zIHRoZSBzYW1lIGdldE5hbWUoKSBhcyByZXR1cm5lZCBmb3Igc2VsZiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iYWN0dWFsX2dhdGVfZGlzdGluZ3Vpc2hhYmxlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaXNBY3R1YWwoKSBpbXBsaWVzIGludGVyYWN0aW9uVXNlLmFjdHVhbEdhdGUtPnNlbGVjdChnZXROYW1lKCkgPSBzZWxmLmdldE5hbWUoKSktPnNpemUoKT0xIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iaXNBY3R1YWwoKSBpbXBsaWVzIHRoYXQgbm8gb3RoZXIgYWN0dWFsR2F0ZSBvZiB0aGUgcGFyZW50IEludGVyYWN0aW9uVXNlIHJldHVybnMgdGhlIHNhbWUgZ2V0TmFtZSgpIGFzIHJldHVybmVkIGZvciBzZWxmIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJvdXRzaWRlX2NmX2dhdGVfZGlzdGluZ3Vpc2hhYmxlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaXNPdXRzaWRlQ0YoKSBpbXBsaWVzIGNvbWJpbmVkRnJhZ21lbnQuY2ZyYWdtZW50R2F0ZS0+c2VsZWN0KGdldE5hbWUoKSA9IHNlbGYuZ2V0TmFtZSgpKS0+c2l6ZSgpPTEiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJpc091dHNpZGVDRigpIGltcGxpZXMgdGhhdCBubyBvdGhlciBvdXRzaWRlIGNmcmFnbWVudEdhdGUgb2YgdGhlIHBhcmVudCBDb21iaW5lZEZyYWdtZW50IHJldHVybnMgdGhlIHNhbWUgZ2V0TmFtZSgpIGFzIHJldHVybmVkIGZvciBzZWxmIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpbnNpZGVfY2ZfZ2F0ZV9kaXN0aW5ndWlzaGFibGUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpc0luc2lkZUNGKCkgaW1wbGllcyYjeEQ7JiN4QTtsZXQgc2VsZk9wZXJhbmQgOiBJbnRlcmFjdGlvbk9wZXJhbmQgPSBzZWxmLmdldE9wZXJhbmQoKSBpbiYjeEQ7JiN4QTsgIGNvbWJpbmVkRnJhZ21lbnQuY2ZyYWdtZW50R2F0ZS0+c2VsZWN0KGlzSW5zaWRlQ0YoKSBhbmQgZ2V0TmFtZSgpID0gc2VsZi5nZXROYW1lKCkpLT5zZWxlY3QoZ2V0T3BlcmFuZCgpID0gc2VsZk9wZXJhbmQpLT5zaXplKCk9MSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9ImlzSW5zaWRlQ0YoKSBpbXBsaWVzIHRoYXQgbm8gb3RoZXIgaW5zaWRlIGNmcmFnbWVudEdhdGUgYXR0YWNoZWQgdG8gYSBtZXNzYWdlIHdpdGggaXRzIG90aGVyIGVuZCBpbiB0aGUgc2FtZSBJbnRlcmFjdGlvbk9wZXJhdG9yIGFzIHNlbGYsIHJldHVybnMgdGhlIHNhbWUgZ2V0TmFtZSgpIGFzIHJldHVybmVkIGZvciBzZWxmIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc091dHNpZGVDRiIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhpcyBxdWVyeSByZXR1cm5zIHRydWUgaWYgdGhpcyBHYXRlIGlzIGF0dGFjaGVkIHRvIHRoZSBib3VuZGFyeSBvZiBhIENvbWJpbmVkRnJhZ21lbnQsIGFuZCBpdHMgb3RoZXIgZW5kIChpZiBwcmVzZW50KSAgaXMgb3V0c2lkZSBvZiB0aGUgc2FtZSBDb21iaW5lZEZyYWdtZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ic2VsZi5vcHBvc2l0ZUVuZCgpLT4gbm90RW1wdHkoKSBhbmQgY29tYmluZWRGcmFnbWVudC0+bm90RW1wdHkoKSBpbXBsaWVzJiN4RDsmI3hBO2xldCBvcHBFbmQgOiBNZXNzYWdlRW5kID0gc2VsZi5vcHBvc2l0ZUVuZCgpLT5hc09yZGVyZWRTZXQoKS0+Zmlyc3QoKSBpbiYjeEQ7JiN4QTtpZiBvcHBFbmQub2NsSXNLaW5kT2YoTWVzc2FnZU9jY3VycmVuY2VTcGVjaWZpY2F0aW9uKSAmI3hEOyYjeEE7dGhlbiBsZXQgb3BwTU9TIDogTWVzc2FnZU9jY3VycmVuY2VTcGVjaWZpY2F0aW9uID0gb3BwRW5kLm9jbEFzVHlwZShNZXNzYWdlT2NjdXJyZW5jZVNwZWNpZmljYXRpb24pJiN4RDsmI3hBO2luICBzZWxmLmNvbWJpbmVkRnJhZ21lbnQuZW5jbG9zaW5nSW50ZXJhY3Rpb24ub2NsQXNUeXBlKEludGVyYWN0aW9uRnJhZ21lbnQpLT5hc1NldCgpLT4mI3hEOyYjeEE7ICAgICB1bmlvbihzZWxmLmNvbWJpbmVkRnJhZ21lbnQuZW5jbG9zaW5nT3BlcmFuZC5vY2xBc1R5cGUoSW50ZXJhY3Rpb25GcmFnbWVudCktPmFzU2V0KCkpID0mI3hEOyYjeEE7ICAgICBvcHBNT1MuZW5jbG9zaW5nSW50ZXJhY3Rpb24ub2NsQXNUeXBlKEludGVyYWN0aW9uRnJhZ21lbnQpLT5hc1NldCgpLT4mI3hEOyYjeEE7ICAgICB1bmlvbihvcHBNT1MuZW5jbG9zaW5nT3BlcmFuZC5vY2xBc1R5cGUoSW50ZXJhY3Rpb25GcmFnbWVudCktPmFzU2V0KCkpJiN4RDsmI3hBO2Vsc2UgbGV0IG9wcEdhdGUgOiBHYXRlID0gb3BwRW5kLm9jbEFzVHlwZShHYXRlKSAmI3hEOyYjeEE7aW4gc2VsZi5jb21iaW5lZEZyYWdtZW50LmVuY2xvc2luZ0ludGVyYWN0aW9uLm9jbEFzVHlwZShJbnRlcmFjdGlvbkZyYWdtZW50KS0+YXNTZXQoKS0+JiN4RDsmI3hBOyAgICAgdW5pb24oc2VsZi5jb21iaW5lZEZyYWdtZW50LmVuY2xvc2luZ09wZXJhbmQub2NsQXNUeXBlKEludGVyYWN0aW9uRnJhZ21lbnQpLT5hc1NldCgpKSA9JiN4RDsmI3hBOyAgICAgb3BwR2F0ZS5jb21iaW5lZEZyYWdtZW50LmVuY2xvc2luZ0ludGVyYWN0aW9uLm9jbEFzVHlwZShJbnRlcmFjdGlvbkZyYWdtZW50KS0+YXNTZXQoKS0+JiN4RDsmI3hBOyAgICAgdW5pb24ob3BwR2F0ZS5jb21iaW5lZEZyYWdtZW50LmVuY2xvc2luZ09wZXJhbmQub2NsQXNUeXBlKEludGVyYWN0aW9uRnJhZ21lbnQpLT5hc1NldCgpKSYjeEQ7JiN4QTtlbmRpZiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNJbnNpZGVDRiIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhpcyBxdWVyeSByZXR1cm5zIHRydWUgaWYgdGhpcyBHYXRlIGlzIGF0dGFjaGVkIHRvIHRoZSBib3VuZGFyeSBvZiBhIENvbWJpbmVkRnJhZ21lbnQsIGFuZCBpdHMgb3RoZXIgZW5kIChpZiBwcmVzZW50KSBpcyBpbnNpZGUgb2YgYW4gSW50ZXJhY3Rpb25PcGVyYXRvciBvZiB0aGUgc2FtZSBDb21iaW5lZEZyYWdtZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ic2VsZi5vcHBvc2l0ZUVuZCgpLT4gbm90RW1wdHkoKSBhbmQgY29tYmluZWRGcmFnbWVudC0+bm90RW1wdHkoKSBpbXBsaWVzJiN4RDsmI3hBO2xldCBvcHBFbmQgOiBNZXNzYWdlRW5kID0gc2VsZi5vcHBvc2l0ZUVuZCgpLT5hc09yZGVyZWRTZXQoKS0+Zmlyc3QoKSBpbiYjeEQ7JiN4QTtpZiBvcHBFbmQub2NsSXNLaW5kT2YoTWVzc2FnZU9jY3VycmVuY2VTcGVjaWZpY2F0aW9uKSYjeEQ7JiN4QTt0aGVuIGxldCBvcHBNT1MgOiBNZXNzYWdlT2NjdXJyZW5jZVNwZWNpZmljYXRpb24mI3hEOyYjeEE7PSBvcHBFbmQub2NsQXNUeXBlKE1lc3NhZ2VPY2N1cnJlbmNlU3BlY2lmaWNhdGlvbikmI3hEOyYjeEE7aW4gY29tYmluZWRGcmFnbWVudCA9IG9wcE1PUy5lbmNsb3NpbmdPcGVyYW5kLmNvbWJpbmVkRnJhZ21lbnQmI3hEOyYjeEE7ZWxzZSBsZXQgb3BwR2F0ZSA6IEdhdGUgPSBvcHBFbmQub2NsQXNUeXBlKEdhdGUpJiN4RDsmI3hBO2luIGNvbWJpbmVkRnJhZ21lbnQgPSBvcHBHYXRlLmNvbWJpbmVkRnJhZ21lbnQuZW5jbG9zaW5nT3BlcmFuZC5jb21iaW5lZEZyYWdtZW50JiN4RDsmI3hBO2VuZGlmIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc0FjdHVhbCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhpcyBxdWVyeSByZXR1cm5zIHRydWUgdmFsdWUgaWYgdGhpcyBHYXRlIGlzIGFuIGFjdHVhbEdhdGUgb2YgYW4gSW50ZXJhY3Rpb25Vc2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpbnRlcmFjdGlvblVzZS0+bm90RW1wdHkoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNGb3JtYWwiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoaXMgcXVlcnkgcmV0dXJucyB0cnVlIGlmIHRoaXMgR2F0ZSBpcyBhIGZvcm1hbEdhdGUgb2YgYW4gSW50ZXJhY3Rpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpbnRlcmFjdGlvbi0+bm90RW1wdHkoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0TmFtZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGlzIHF1ZXJ5IHJldHVybnMgdGhlIG5hbWUgb2YgdGhlIGdhdGUsIGVpdGhlciB0aGUgZXhwbGljaXQgbmFtZSAoLm5hbWUpIG9yIHRoZSBjb25zdHJ1Y3RlZCBuYW1lICgnb3V0XyZxdW90OyBvciAnaW5fJyBjb25jYXRlbmF0ZWQgaW4gZnJvbnQgb2YgLm1lc3NhZ2UubmFtZSkgaWYgdGhlIGV4cGxpY2l0IG5hbWUgaXMgbm90IHByZXNlbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpZiBuYW1lLT5ub3RFbXB0eSgpIHRoZW4gbmFtZS0+YXNPcmRlcmVkU2V0KCktPmZpcnN0KCkmI3hEOyYjeEE7ZWxzZSAgaWYgaXNBY3R1YWwoKSBvciBpc091dHNpZGVDRigpICYjeEQ7JiN4QTsgIHRoZW4gaWYgaXNTZW5kKCkgJiN4RDsmI3hBOyAgICB0aGVuICdvdXRfJy5jb25jYXQoc2VsZi5tZXNzYWdlLm5hbWUtPmFzT3JkZXJlZFNldCgpLT5maXJzdCgpKSYjeEQ7JiN4QTsgICAgZWxzZSAnaW5fJy5jb25jYXQoc2VsZi5tZXNzYWdlLm5hbWUtPmFzT3JkZXJlZFNldCgpLT5maXJzdCgpKSYjeEQ7JiN4QTsgICAgZW5kaWYmI3hEOyYjeEE7ICBlbHNlIGlmIGlzU2VuZCgpJiN4RDsmI3hBOyAgICB0aGVuICdpbl8nLmNvbmNhdChzZWxmLm1lc3NhZ2UubmFtZS0+YXNPcmRlcmVkU2V0KCktPmZpcnN0KCkpJiN4RDsmI3hBOyAgICBlbHNlICdvdXRfJy5jb25jYXQoc2VsZi5tZXNzYWdlLm5hbWUtPmFzT3JkZXJlZFNldCgpLT5maXJzdCgpKSYjeEQ7JiN4QTsgICAgZW5kaWYmI3hEOyYjeEE7ICBlbmRpZiYjeEQ7JiN4QTtlbmRpZiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibWF0Y2hlcyIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhpcyBxdWVyeSByZXR1cm5zIHRydWUgaWYgdGhlIG5hbWUgb2YgdGhpcyBHYXRlIG1hdGNoZXMgdGhlIG5hbWUgb2YgdGhlIGluIHBhcmFtZXRlciBHYXRlLCBhbmQgdGhlIG1lc3NhZ2VzIGZvciB0aGUgdHdvIEdhdGVzIGNvcnJlc3BvbmQuIFRoZSBNZXNzYWdlIGZvciBvbmUgR2F0ZSAoc2F5IEEpIGNvcnJlc3BvbmRzIHRvIHRoZSBNZXNzYWdlIGZvciBhbm90aGVyIEdhdGUgKHNheSBCKSBpZiAoQSBhbmQgQiBoYXZlIHRoZSBzYW1lIG5hbWUgdmFsdWUpIGFuZCAoaWYgQSBpcyBhIHNlbmRFdmVudCB0aGVuIEIgaXMgYSByZWNlaXZlRXZlbnQpIGFuZCAoaWYgQSBpcyBhIHJlY2VpdmVFdmVudCB0aGVuIEIgaXMgYSBzZW5kRXZlbnQpIGFuZCAoQSBhbmQgQiBoYXZlIHRoZSBzYW1lIG1lc3NhZ2VTb3J0IHZhbHVlKSBhbmQgKEEgYW5kIEIgaGF2ZSB0aGUgc2FtZSBzaWduYXR1cmUgdmFsdWUpLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ic2VsZi5nZXROYW1lKCkgPSBnYXRlVG9NYXRjaC5nZXROYW1lKCkgYW5kICYjeEQ7JiN4QTtzZWxmLm1lc3NhZ2UubWVzc2FnZVNvcnQgPSBnYXRlVG9NYXRjaC5tZXNzYWdlLm1lc3NhZ2VTb3J0IGFuZCYjeEQ7JiN4QTtzZWxmLm1lc3NhZ2UubmFtZSA9IGdhdGVUb01hdGNoLm1lc3NhZ2UubmFtZSBhbmQmI3hEOyYjeEE7c2VsZi5tZXNzYWdlLnNlbmRFdmVudC0+aW5jbHVkZXMoc2VsZikgaW1wbGllcyBnYXRlVG9NYXRjaC5tZXNzYWdlLnJlY2VpdmVFdmVudC0+aW5jbHVkZXMoZ2F0ZVRvTWF0Y2gpICBhbmQmI3hEOyYjeEE7c2VsZi5tZXNzYWdlLnJlY2VpdmVFdmVudC0+aW5jbHVkZXMoc2VsZikgaW1wbGllcyBnYXRlVG9NYXRjaC5tZXNzYWdlLnNlbmRFdmVudC0+aW5jbHVkZXMoZ2F0ZVRvTWF0Y2gpIGFuZCYjeEQ7JiN4QTtzZWxmLm1lc3NhZ2Uuc2lnbmF0dXJlID0gZ2F0ZVRvTWF0Y2gubWVzc2FnZS5zaWduYXR1cmUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImdhdGVUb01hdGNoIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0dhdGUiLz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRPcGVyYW5kIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0ludGVyYWN0aW9uT3BlcmFuZCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIHRoZSBHYXRlIGlzIGFuIGluc2lkZSBDb21iaW5lZCBGcmFnbWVudCBHYXRlLCB0aGlzIG9wZXJhdGlvbiByZXR1cm5zIHRoZSBJbnRlcmFjdGlvbk9wZXJhbmQgdGhhdCB0aGUgb3Bwb3NpdGUgZW5kIG9mIHRoaXMgR2F0ZSBpcyBpbmNsdWRlZCB3aXRoaW4uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpZiBpc0luc2lkZUNGKCkgdGhlbiYjeEQ7JiN4QTsgIGxldCBvcHBFbmQgOiBNZXNzYWdlRW5kID0gc2VsZi5vcHBvc2l0ZUVuZCgpLT5hc09yZGVyZWRTZXQoKS0+Zmlyc3QoKSBpbiYjeEQ7JiN4QTsgICAgaWYgb3BwRW5kLm9jbElzS2luZE9mKE1lc3NhZ2VPY2N1cnJlbmNlU3BlY2lmaWNhdGlvbikmI3hEOyYjeEE7ICAgIHRoZW4gbGV0IG9wcE1PUyA6IE1lc3NhZ2VPY2N1cnJlbmNlU3BlY2lmaWNhdGlvbiA9IG9wcEVuZC5vY2xBc1R5cGUoTWVzc2FnZU9jY3VycmVuY2VTcGVjaWZpY2F0aW9uKSYjeEQ7JiN4QTsgICAgICAgIGluIG9wcE1PUy5lbmNsb3NpbmdPcGVyYW5kLT5hc09yZGVyZWRTZXQoKS0+Zmlyc3QoKSYjeEQ7JiN4QTsgICAgZWxzZSBsZXQgb3BwR2F0ZSA6IEdhdGUgPSBvcHBFbmQub2NsQXNUeXBlKEdhdGUpJiN4RDsmI3hBOyAgICAgICAgaW4gb3BwR2F0ZS5jb21iaW5lZEZyYWdtZW50LmVuY2xvc2luZ09wZXJhbmQtPmFzT3JkZXJlZFNldCgpLT5maXJzdCgpJiN4RDsmI3hBOyAgICBlbmRpZiYjeEQ7JiN4QTsgIGVsc2UgbnVsbCYjeEQ7JiN4QTtlbmRpZiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iTWVzc2FnZUVuZCIgYWJzdHJhY3Q9InRydWUiIGVTdXBlclR5cGVzPSIjLy9OYW1lZEVsZW1lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9Ik1lc3NhZ2VFbmQgaXMgYW4gYWJzdHJhY3Qgc3BlY2lhbGl6YXRpb24gb2YgTmFtZWRFbGVtZW50IHRoYXQgcmVwcmVzZW50cyB3aGF0IGNhbiBvY2N1ciBhdCB0aGUgZW5kIG9mIGEgTWVzc2FnZS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ib3Bwb3NpdGVFbmQiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL01lc3NhZ2VFbmQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGlzIHF1ZXJ5IHJldHVybnMgYSBzZXQgaW5jbHVkaW5nIHRoZSBNZXNzYWdlRW5kIChpZiBleGlzdHMpIGF0IHRoZSBvcHBvc2l0ZSBlbmQgb2YgdGhlIE1lc3NhZ2UgZm9yIHRoaXMgTWVzc2FnZUVuZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im1lc3NhZ2UtPmFzU2V0KCkubWVzc2FnZUVuZC0+YXNTZXQoKS0+ZXhjbHVkaW5nKHNlbGYpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpc1NlbmQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoaXMgcXVlcnkgcmV0dXJucyB2YWx1ZSB0cnVlIGlmIHRoaXMgTWVzc2FnZUVuZCBpcyBhIHNlbmRFdmVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im1lc3NhZ2Uuc2VuZEV2ZW50LT5hc1NldCgpLT5pbmNsdWRlcyhzZWxmKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXNSZWNlaXZlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGlzIHF1ZXJ5IHJldHVybnMgdmFsdWUgdHJ1ZSBpZiB0aGlzIE1lc3NhZ2VFbmQgaXMgYSByZWNlaXZlRXZlbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJtZXNzYWdlLnJlY2VpdmVFdmVudC0+YXNTZXQoKS0+aW5jbHVkZXMoc2VsZikiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImVuY2xvc2luZ0ZyYWdtZW50IiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9JbnRlcmFjdGlvbkZyYWdtZW50Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhpcyBxdWVyeSByZXR1cm5zIGEgc2V0IGluY2x1ZGluZyB0aGUgZW5jbG9zaW5nIEludGVyYWN0aW9uRnJhZ21lbnQgdGhpcyBNZXNzYWdlRW5kIGlzIGVuY2xvc2VkIHdpdGhpbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlmIHNlbGYtPnNlbGVjdChvY2xJc0tpbmRPZihHYXRlKSktPm5vdEVtcHR5KCkgJiN4RDsmI3hBO3RoZW4gLS0gaXQgaXMgYSBHYXRlJiN4RDsmI3hBO2xldCBlbmRHYXRlIDogR2F0ZSA9ICYjeEQ7JiN4QTsgIHNlbGYtPnNlbGVjdChvY2xJc0tpbmRPZihHYXRlKSkub2NsQXNUeXBlKEdhdGUpLT5hc09yZGVyZWRTZXQoKS0+Zmlyc3QoKSYjeEQ7JiN4QTsgIGluJiN4RDsmI3hBOyAgaWYgZW5kR2F0ZS5pc091dHNpZGVDRigpICYjeEQ7JiN4QTsgIHRoZW4gZW5kR2F0ZS5jb21iaW5lZEZyYWdtZW50LmVuY2xvc2luZ0ludGVyYWN0aW9uLm9jbEFzVHlwZShJbnRlcmFjdGlvbkZyYWdtZW50KS0+YXNTZXQoKS0+JiN4RDsmI3hBOyAgICAgdW5pb24oZW5kR2F0ZS5jb21iaW5lZEZyYWdtZW50LmVuY2xvc2luZ09wZXJhbmQub2NsQXNUeXBlKEludGVyYWN0aW9uRnJhZ21lbnQpLT5hc1NldCgpKSYjeEQ7JiN4QTsgIGVsc2UgaWYgZW5kR2F0ZS5pc0luc2lkZUNGKCkgJiN4RDsmI3hBOyAgICB0aGVuIGVuZEdhdGUuY29tYmluZWRGcmFnbWVudC5vY2xBc1R5cGUoSW50ZXJhY3Rpb25GcmFnbWVudCktPmFzU2V0KCkmI3hEOyYjeEE7ICAgIGVsc2UgaWYgZW5kR2F0ZS5pc0Zvcm1hbCgpICYjeEQ7JiN4QTsgICAgICB0aGVuIGVuZEdhdGUuaW50ZXJhY3Rpb24ub2NsQXNUeXBlKEludGVyYWN0aW9uRnJhZ21lbnQpLT5hc1NldCgpJiN4RDsmI3hBOyAgICAgIGVsc2UgaWYgZW5kR2F0ZS5pc0FjdHVhbCgpICYjeEQ7JiN4QTsgICAgICAgIHRoZW4gZW5kR2F0ZS5pbnRlcmFjdGlvblVzZS5lbmNsb3NpbmdJbnRlcmFjdGlvbi5vY2xBc1R5cGUoSW50ZXJhY3Rpb25GcmFnbWVudCktPmFzU2V0KCktPiYjeEQ7JiN4QTsgICAgIHVuaW9uKGVuZEdhdGUuaW50ZXJhY3Rpb25Vc2UuZW5jbG9zaW5nT3BlcmFuZC5vY2xBc1R5cGUoSW50ZXJhY3Rpb25GcmFnbWVudCktPmFzU2V0KCkpJiN4RDsmI3hBOyAgICAgICAgZWxzZSBudWxsJiN4RDsmI3hBOyAgICAgICAgZW5kaWYmI3hEOyYjeEE7ICAgICAgZW5kaWYmI3hEOyYjeEE7ICAgIGVuZGlmJiN4RDsmI3hBOyAgZW5kaWYmI3hEOyYjeEE7ZWxzZSAtLSBpdCBpcyBhIE1lc3NhZ2VPY2N1cnJlbmNlU3BlY2lmaWNhdGlvbiYjeEQ7JiN4QTtsZXQgZW5kTU9TIDogTWVzc2FnZU9jY3VycmVuY2VTcGVjaWZpY2F0aW9uICA9ICYjeEQ7JiN4QTsgIHNlbGYtPnNlbGVjdChvY2xJc0tpbmRPZihNZXNzYWdlT2NjdXJyZW5jZVNwZWNpZmljYXRpb24pKS5vY2xBc1R5cGUoTWVzc2FnZU9jY3VycmVuY2VTcGVjaWZpY2F0aW9uKS0+YXNPcmRlcmVkU2V0KCktPmZpcnN0KCkgJiN4RDsmI3hBOyAgaW4mI3hEOyYjeEE7ICBpZiBlbmRNT1MuZW5jbG9zaW5nSW50ZXJhY3Rpb24tPm5vdEVtcHR5KCkgJiN4RDsmI3hBOyAgdGhlbiBlbmRNT1MuZW5jbG9zaW5nSW50ZXJhY3Rpb24ub2NsQXNUeXBlKEludGVyYWN0aW9uRnJhZ21lbnQpLT5hc1NldCgpJiN4RDsmI3hBOyAgZWxzZSBlbmRNT1MuZW5jbG9zaW5nT3BlcmFuZC5vY2xBc1R5cGUoSW50ZXJhY3Rpb25GcmFnbWVudCktPmFzU2V0KCkmI3hEOyYjeEE7ICBlbmRpZiYjeEQ7JiN4QTtlbmRpZiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ibWVzc2FnZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9NZXNzYWdlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmVmZXJlbmNlcyBhIE1lc3NhZ2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkludGVyYWN0aW9uT3BlcmFuZCIgZVN1cGVyVHlwZXM9IiMvL05hbWVzcGFjZSAjLy9JbnRlcmFjdGlvbkZyYWdtZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBJbnRlcmFjdGlvbk9wZXJhbmQgaXMgY29udGFpbmVkIGluIGEgQ29tYmluZWRGcmFnbWVudC4gQW4gSW50ZXJhY3Rpb25PcGVyYW5kIHJlcHJlc2VudHMgb25lIG9wZXJhbmQgb2YgdGhlIGV4cHJlc3Npb24gZ2l2ZW4gYnkgdGhlIGVuY2xvc2luZyBDb21iaW5lZEZyYWdtZW50LiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJndWFyZF9jb250YWluX3JlZmVyZW5jZXMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGd1YXJkIG11c3QgY29udGFpbiBvbmx5IHJlZmVyZW5jZXMgdG8gdmFsdWVzIGxvY2FsIHRvIHRoZSBMaWZlbGluZSBvbiB3aGljaCBpdCByZXNpZGVzLCBvciB2YWx1ZXMgZ2xvYmFsIHRvIHRoZSB3aG9sZSBJbnRlcmFjdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Imd1YXJkX2RpcmVjdGx5X3ByaW9yIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBndWFyZCBtdXN0IGJlIHBsYWNlZCBkaXJlY3RseSBwcmlvciB0byAoYWJvdmUpIHRoZSBPY2N1cnJlbmNlU3BlY2lmaWNhdGlvbiB0aGF0IHdpbGwgYmVjb21lIHRoZSBmaXJzdCBPY2N1cnJlbmNlU3BlY2lmaWNhdGlvbiB3aXRoaW4gdGhpcyBJbnRlcmFjdGlvbk9wZXJhbmQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJmcmFnbWVudCIgdXBwZXJCb3VuZD0iLTEiCisgICAgICAgIGVUeXBlPSIjLy9JbnRlcmFjdGlvbkZyYWdtZW50IiBjb250YWlubWVudD0idHJ1ZSIgZU9wcG9zaXRlPSIjLy9JbnRlcmFjdGlvbkZyYWdtZW50L2VuY2xvc2luZ09wZXJhbmQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgZnJhZ21lbnRzIG9mIHRoZSBvcGVyYW5kLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vTmFtZXNwYWNlL293bmVkTWVtYmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJndWFyZCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9JbnRlcmFjdGlvbkNvbnN0cmFpbnQiIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQ29uc3RyYWludCBvZiB0aGUgb3BlcmFuZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJJbnRlcmFjdGlvbkNvbnN0cmFpbnQiIGVTdXBlclR5cGVzPSIjLy9Db25zdHJhaW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBJbnRlcmFjdGlvbkNvbnN0cmFpbnQgaXMgYSBCb29sZWFuIGV4cHJlc3Npb24gdGhhdCBndWFyZHMgYW4gb3BlcmFuZCBpbiBhIENvbWJpbmVkRnJhZ21lbnQuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im1pbmludF9tYXhpbnQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJtYXhpbnQtPm5vdEVtcHR5KCkgb3IgbWluaW50LT5ub3RFbXB0eSgpIGltcGxpZXMmI3hEOyYjeEE7aW50ZXJhY3Rpb25PcGVyYW5kLmNvbWJpbmVkRnJhZ21lbnQuaW50ZXJhY3Rpb25PcGVyYXRvciA9JiN4RDsmI3hBO0ludGVyYWN0aW9uT3BlcmF0b3JLaW5kOjpsb29wIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iTWluaW50L21heGludCBjYW4gb25seSBiZSBwcmVzZW50IGlmIHRoZSBJbnRlcmFjdGlvbkNvbnN0cmFpbnQgaXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBvcGVyYW5kIG9mIGEgbG9vcCBDb21iaW5lZEZyYWdtZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibWluaW50X25vbl9uZWdhdGl2ZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im1pbmludC0+bm90RW1wdHkoKSBpbXBsaWVzICYjeEQ7JiN4QTttaW5pbnQtPmFzU2VxdWVuY2UoKS0+Zmlyc3QoKS5pbnRlZ2VyVmFsdWUoKSA+PSAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgbWluaW50IGlzIHNwZWNpZmllZCwgdGhlbiB0aGUgZXhwcmVzc2lvbiBtdXN0IGV2YWx1YXRlIHRvIGEgbm9uLW5lZ2F0aXZlIGludGVnZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJtYXhpbnRfcG9zaXRpdmUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJtYXhpbnQtPm5vdEVtcHR5KCkgaW1wbGllcyAmI3hEOyYjeEE7bWF4aW50LT5hc1NlcXVlbmNlKCktPmZpcnN0KCkuaW50ZWdlclZhbHVlKCkgPiAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgbWF4aW50IGlzIHNwZWNpZmllZCwgdGhlbiB0aGUgZXhwcmVzc2lvbiBtdXN0IGV2YWx1YXRlIHRvIGEgcG9zaXRpdmUgaW50ZWdlci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImR5bmFtaWNfdmFyaWFibGVzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBkeW5hbWljIHZhcmlhYmxlcyB0aGF0IHRha2UgcGFydCBpbiB0aGUgY29uc3RyYWludCBtdXN0IGJlIG93bmVkIGJ5IHRoZSBDb25uZWN0YWJsZUVsZW1lbnQgY29ycmVzcG9uZGluZyB0byB0aGUgY292ZXJlZCBMaWZlbGluZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Imdsb2JhbF9kYXRhIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjb25zdHJhaW50IG1heSBjb250YWluIHJlZmVyZW5jZXMgdG8gZ2xvYmFsIGRhdGEgb3Igd3JpdGUtb25jZSBkYXRhLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibWF4aW50X2dyZWF0ZXJfZXF1YWxfbWluaW50IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibWF4aW50LT5ub3RFbXB0eSgpIGltcGxpZXMgKG1pbmludC0+bm90RW1wdHkoKSBhbmQgJiN4RDsmI3hBO21heGludC0+YXNTZXF1ZW5jZSgpLT5maXJzdCgpLmludGVnZXJWYWx1ZSgpID49JiN4RDsmI3hBO21pbmludC0+YXNTZXF1ZW5jZSgpLT5maXJzdCgpLmludGVnZXJWYWx1ZSgpICkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJZiBtYXhpbnQgaXMgc3BlY2lmaWVkLCB0aGVuIG1pbmludCBtdXN0IGJlIHNwZWNpZmllZCBhbmQgdGhlIGV2YWx1YXRpb24gb2YgbWF4aW50IG11c3QgYmUgPj0gdGhlIGV2YWx1YXRpb24gb2YgbWluaW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ibWF4aW50IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL1ZhbHVlU3BlY2lmaWNhdGlvbiIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbWF4aW11bSBudW1iZXIgb2YgaXRlcmF0aW9ucyBvZiBhIGxvb3AiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJtaW5pbnQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vVmFsdWVTcGVjaWZpY2F0aW9uIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBtaW5pbXVtIG51bWJlciBvZiBpdGVyYXRpb25zIG9mIGEgbG9vcCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkdlbmVyYWxPcmRlcmluZyIgZVN1cGVyVHlwZXM9IiMvL05hbWVkRWxlbWVudCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBHZW5lcmFsT3JkZXJpbmcgcmVwcmVzZW50cyBhIGJpbmFyeSByZWxhdGlvbiBiZXR3ZWVuIHR3byBPY2N1cnJlbmNlU3BlY2lmaWNhdGlvbnMsIHRvIGRlc2NyaWJlIHRoYXQgb25lIE9jY3VycmVuY2VTcGVjaWZpY2F0aW9uIG11c3Qgb2NjdXIgYmVmb3JlIHRoZSBvdGhlciBpbiBhIHZhbGlkIHRyYWNlLiBUaGlzIG1lY2hhbmlzbSBwcm92aWRlcyB0aGUgYWJpbGl0eSB0byBkZWZpbmUgcGFydGlhbCBvcmRlcnMgb2YgT2NjdXJyZW5jZVNwZWNpZmljYXRpb25zIHRoYXQgbWF5IG90aGVyd2lzZSBub3QgaGF2ZSBhIHNwZWNpZmllZCBvcmRlci4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaXJyZWZsZXhpdmVfdHJhbnNpdGl2ZV9jbG9zdXJlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iYWZ0ZXItPmNsb3N1cmUodG9BZnRlci5hZnRlciktPmV4Y2x1ZGVzKGJlZm9yZSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBvY2N1cnJlbmNlIHNwZWNpZmljYXRpb24gbXVzdCBub3QgYmUgb3JkZXJlZCByZWxhdGl2ZSB0byBpdHNlbGYgdGhyb3VnaCBhIHNlcmllcyBvZiBnZW5lcmFsIG9yZGVyaW5ncy4gKEluIG90aGVyIHdvcmRzLCB0aGUgdHJhbnNpdGl2ZSBjbG9zdXJlIG9mIHRoZSBnZW5lcmFsIG9yZGVyaW5ncyBpcyBpcnJlZmxleGl2ZS4pIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJhZnRlciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9PY2N1cnJlbmNlU3BlY2lmaWNhdGlvbiIgZU9wcG9zaXRlPSIjLy9PY2N1cnJlbmNlU3BlY2lmaWNhdGlvbi90b0JlZm9yZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBPY2N1cnJlbmNlU3BlY2lmaWNhdGlvbiByZWZlcmVuY2VkIGNvbWVzIGFmdGVyIHRoZSBPY2N1cnJlbmNlU3BlY2lmaWNhdGlvbiByZWZlcmVuY2VkIGJ5IGJlZm9yZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iYmVmb3JlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL09jY3VycmVuY2VTcGVjaWZpY2F0aW9uIiBlT3Bwb3NpdGU9IiMvL09jY3VycmVuY2VTcGVjaWZpY2F0aW9uL3RvQWZ0ZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgT2NjdXJyZW5jZVNwZWNpZmljYXRpb24gcmVmZXJlbmNlZCBjb21lcyBiZWZvcmUgdGhlIE9jY3VycmVuY2VTcGVjaWZpY2F0aW9uIHJlZmVyZW5jZWQgYnkgYWZ0ZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9Ik9jY3VycmVuY2VTcGVjaWZpY2F0aW9uIiBlU3VwZXJUeXBlcz0iIy8vSW50ZXJhY3Rpb25GcmFnbWVudCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gT2NjdXJyZW5jZVNwZWNpZmljYXRpb24gaXMgdGhlIGJhc2ljIHNlbWFudGljIHVuaXQgb2YgSW50ZXJhY3Rpb25zLiBUaGUgc2VxdWVuY2VzIG9mIG9jY3VycmVuY2VzIHNwZWNpZmllZCBieSB0aGVtIGFyZSB0aGUgbWVhbmluZ3Mgb2YgSW50ZXJhY3Rpb25zLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJkdXBsaWNhdGVzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJjb3ZlcmVkIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJsb3dlckJvdW5kIiB2YWx1ZT0iMSIvPgorICAgICAgICA8ZGV0YWlscyBrZXk9InVwcGVyQm91bmQiIHZhbHVlPSIxIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iY292ZXJlZCIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIgorICAgICAgICAgIGVUeXBlPSIjLy9MaWZlbGluZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZWZlcmVuY2VzIHRoZSBMaWZlbGluZSBvbiB3aGljaCB0aGUgT2NjdXJyZW5jZVNwZWNpZmljYXRpb24gYXBwZWFycy4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL0ludGVyYWN0aW9uRnJhZ21lbnQvY292ZXJlZCIvPgorICAgICAgPC9jb250ZW50cz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0Q292ZXJlZCIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSIjLy9MaWZlbGluZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJldHVybnMgdGhlIExpZmVsaW5lIG9uIHdoaWNoIHRoZSBPY2N1cnJlbmNlU3BlY2lmaWNhdGlvbiBhcHBlYXJzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ic2V0Q292ZXJlZCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTZXRzIHRoZSBMaWZlbGluZSBvbiB3aGljaCB0aGUgT2NjdXJyZW5jZVNwZWNpZmljYXRpb24gYXBwZWFycy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InZhbHVlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0xpZmVsaW5lIi8+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0idG9BZnRlciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vR2VuZXJhbE9yZGVyaW5nIiBlT3Bwb3NpdGU9IiMvL0dlbmVyYWxPcmRlcmluZy9iZWZvcmUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZWZlcmVuY2VzIHRoZSBHZW5lcmFsT3JkZXJpbmdzIHRoYXQgc3BlY2lmeSBFdmVudE9jdXJyZW5jZXMgdGhhdCBtdXN0IG9jY3VyIGFmdGVyIHRoaXMgT2NjdXJyZW5jZVNwZWNpZmljYXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InRvQmVmb3JlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9HZW5lcmFsT3JkZXJpbmciIGVPcHBvc2l0ZT0iIy8vR2VuZXJhbE9yZGVyaW5nL2FmdGVyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmVmZXJlbmNlcyB0aGUgR2VuZXJhbE9yZGVyaW5ncyB0aGF0IHNwZWNpZnkgRXZlbnRPY3VycmVuY2VzIHRoYXQgbXVzdCBvY2N1ciBiZWZvcmUgdGhpcyBPY2N1cnJlbmNlU3BlY2lmaWNhdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVFbnVtIiBuYW1lPSJNZXNzYWdlS2luZCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhpcyBpcyBhbiBlbnVtZXJhdGVkIHR5cGUgdGhhdCBpZGVudGlmaWVzIHRoZSB0eXBlIG9mIE1lc3NhZ2UuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVMaXRlcmFscyBuYW1lPSJjb21wbGV0ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9InNlbmRFdmVudCBhbmQgcmVjZWl2ZUV2ZW50IGFyZSBwcmVzZW50Ii8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9Imxvc3QiIHZhbHVlPSIxIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0ic2VuZEV2ZW50IHByZXNlbnQgYW5kIHJlY2VpdmVFdmVudCBhYnNlbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0iZm91bmQiIHZhbHVlPSIyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0ic2VuZEV2ZW50IGFic2VudCBhbmQgcmVjZWl2ZUV2ZW50IHByZXNlbnQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0idW5rbm93biIgdmFsdWU9IjMiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJzZW5kRXZlbnQgYW5kIHJlY2VpdmVFdmVudCBhYnNlbnQgKHNob3VsZCBub3QgYXBwZWFyKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lTGl0ZXJhbHM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRW51bSIgbmFtZT0iTWVzc2FnZVNvcnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoaXMgaXMgYW4gZW51bWVyYXRlZCB0eXBlIHRoYXQgaWRlbnRpZmllcyB0aGUgdHlwZSBvZiBjb21tdW5pY2F0aW9uIGFjdGlvbiB0aGF0IHdhcyB1c2VkIHRvIGdlbmVyYXRlIHRoZSBNZXNzYWdlLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0ic3luY2hDYWxsIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG1lc3NhZ2Ugd2FzIGdlbmVyYXRlZCBieSBhIHN5bmNocm9ub3VzIGNhbGwgdG8gYW4gb3BlcmF0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lTGl0ZXJhbHM+CisgICAgPGVMaXRlcmFscyBuYW1lPSJhc3luY2hDYWxsIiB2YWx1ZT0iMSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBtZXNzYWdlIHdhcyBnZW5lcmF0ZWQgYnkgYW4gYXN5bmNocm9ub3VzIGNhbGwgdG8gYW4gb3BlcmF0aW9uOyBpLmUuLCBhIENhbGxBY3Rpb24gd2l0aCBpc1N5bmNocm9ub3VzID0gZmFsc2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9ImFzeW5jaFNpZ25hbCIgdmFsdWU9IjIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbWVzc2FnZSB3YXMgZ2VuZXJhdGVkIGJ5IGFuIGFzeW5jaHJvbm91cyBzZW5kIGFjdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0iY3JlYXRlTWVzc2FnZSIgdmFsdWU9IjMiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbWVzc2FnZSBkZXNpZ25hdGluZyB0aGUgY3JlYXRpb24gb2YgYW5vdGhlciBsaWZlbGluZSBvYmplY3QuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9ImRlbGV0ZU1lc3NhZ2UiIHZhbHVlPSI0Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG1lc3NhZ2UgZGVzaWduYXRpbmcgdGhlIHRlcm1pbmF0aW9uIG9mIGFub3RoZXIgbGlmZWxpbmUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9InJlcGx5IiB2YWx1ZT0iNSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBtZXNzYWdlIGlzIGEgcmVwbHkgbWVzc2FnZSB0byBhbiBvcGVyYXRpb24gY2FsbC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJJbmZvcm1hdGlvbkl0ZW0iIGVTdXBlclR5cGVzPSIjLy9DbGFzc2lmaWVyIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbmZvcm1hdGlvbkl0ZW1zIHJlcHJlc2VudCBtYW55IGtpbmRzIG9mIGluZm9ybWF0aW9uIHRoYXQgY2FuIGZsb3cgZnJvbSBzb3VyY2VzIHRvIHRhcmdldHMgaW4gdmVyeSBhYnN0cmFjdCB3YXlzLsKgIFRoZXkgcmVwcmVzZW50IHRoZSBraW5kcyBvZiBpbmZvcm1hdGlvbiB0aGF0IG1heSBtb3ZlIHdpdGhpbiBhIHN5c3RlbSwgYnV0IGRvIG5vdCBlbGFib3JhdGUgZGV0YWlscyBvZiB0aGUgdHJhbnNmZXJyZWQgaW5mb3JtYXRpb24uwqAgRGV0YWlscyBvZiB0cmFuc2ZlcnJlZCBpbmZvcm1hdGlvbiBhcmUgdGhlIHByb3ZpbmNlIG9mIG90aGVyIENsYXNzaWZpZXJzIHRoYXQgbWF5IHVsdGltYXRlbHkgZGVmaW5lIEluZm9ybWF0aW9uSXRlbXMuwqAgQ29uc2VxdWVudGx5LCBJbmZvcm1hdGlvbkl0ZW1zIGNhbm5vdCBiZSBpbnN0YW50aWF0ZWQgYW5kIGRvIG5vdCB0aGVtc2VsdmVzIGhhdmUgZmVhdHVyZXMsIGdlbmVyYWxpemF0aW9ucywgb3IgYXNzb2NpYXRpb25zLsKgQW4gaW1wb3J0YW50IHVzZSBvZiBJbmZvcm1hdGlvbkl0ZW1zIGlzIHRvIHJlcHJlc2VudCBpbmZvcm1hdGlvbiBkdXJpbmcgZWFybHkgZGVzaWduIHN0YWdlcywgcG9zc2libHkgYmVmb3JlIHRoZSBkZXRhaWxlZCBtb2RlbGluZyBkZWNpc2lvbnMgdGhhdCB3aWxsIHVsdGltYXRlbHkgZGVmaW5lIHRoZW0gaGF2ZSBiZWVuIG1hZGUuIEFub3RoZXIgcHVycG9zZSBvZiBJbmZvcm1hdGlvbkl0ZW1zIGlzIHRvIGFic3RyYWN0IHBvcnRpb25zIG9mIGNvbXBsZXggbW9kZWxzIGluIGxlc3MgcHJlY2lzZSwgYnV0IHBlcmhhcHMgbW9yZSBnZW5lcmFsIGFuZCBjb21tdW5pY2FibGUsIHdheXMuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InNvdXJjZXNfYW5kX3RhcmdldHMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIoc2VsZi5yZXByZXNlbnRlZC0+c2VsZWN0KG9jbElzS2luZE9mKEluZm9ybWF0aW9uSXRlbSkpLT5mb3JBbGwocCB8JiN4RDsmI3hBOyAgcC5jb252ZXlpbmdGbG93LnNvdXJjZS0+Zm9yQWxsKHEgfCBzZWxmLmNvbnZleWluZ0Zsb3cuc291cmNlLT5pbmNsdWRlcyhxKSkgYW5kJiN4RDsmI3hBOyAgICBwLmNvbnZleWluZ0Zsb3cudGFyZ2V0LT5mb3JBbGwocSB8IHNlbGYuY29udmV5aW5nRmxvdy50YXJnZXQtPmluY2x1ZGVzKHEpKSkpIGFuZCYjeEQ7JiN4QTsgICAgICAoc2VsZi5yZXByZXNlbnRlZC0+Zm9yQWxsKG9jbElzS2luZE9mKENsYXNzKSBvciBvY2xJc0tpbmRPZihJbnRlcmZhY2UpIG9yJiN4RDsmI3hBOyAgICAgICAgb2NsSXNLaW5kT2YoSW5mb3JtYXRpb25JdGVtKSBvciBvY2xJc0tpbmRPZihTaWduYWwpIG9yIG9jbElzS2luZE9mKENvbXBvbmVudCkpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBzb3VyY2VzIGFuZCB0YXJnZXRzIG9mIGFuIGluZm9ybWF0aW9uIGl0ZW0gKGl0cyByZWxhdGVkIGluZm9ybWF0aW9uIGZsb3dzKSBtdXN0IGRlc2lnbmF0ZSBzdWJzZXRzIG9mIHRoZSBzb3VyY2VzIGFuZCB0YXJnZXRzIG9mIHRoZSByZXByZXNlbnRhdGlvbiBpbmZvcm1hdGlvbiBpdGVtLCBpZiBhbnkuIFRoZSBDbGFzc2lmaWVycyB0aGF0IGNhbiByZWFsaXplIGFuIGluZm9ybWF0aW9uIGl0ZW0gY2FuIG9ubHkgYmUgb2YgdGhlIGZvbGxvd2luZyBraW5kOiBDbGFzcywgSW50ZXJmYWNlLCBJbmZvcm1hdGlvbkl0ZW0sIFNpZ25hbCwgQ29tcG9uZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaGFzX25vIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ic2VsZi5nZW5lcmFsaXphdGlvbi0+aXNFbXB0eSgpIGFuZCBzZWxmLmZlYXR1cmUtPmlzRW1wdHkoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIGluZm9ybWF0aW9uSXRlbSBoYXMgbm8gZmVhdHVyZSwgbm8gZ2VuZXJhbGl6YXRpb24sIGFuZCBubyBhc3NvY2lhdGlvbnMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJub3RfaW5zdGFudGlhYmxlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaXNBYnN0cmFjdCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9Ikl0IGlzIG5vdCBpbnN0YW50aWFibGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyZXByZXNlbnRlZCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vQ2xhc3NpZmllciI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkRldGVybWluZXMgdGhlIGNsYXNzaWZpZXJzIHRoYXQgd2lsbCBzcGVjaWZ5IHRoZSBzdHJ1Y3R1cmUgYW5kIG5hdHVyZSBvZiB0aGUgaW5mb3JtYXRpb24uIEFuIGluZm9ybWF0aW9uIGl0ZW0gcmVwcmVzZW50cyBhbGwgaXRzIHJlcHJlc2VudGVkIGNsYXNzaWZpZXJzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJBY3Rpb25FeGVjdXRpb25TcGVjaWZpY2F0aW9uIiBlU3VwZXJUeXBlcz0iIy8vRXhlY3V0aW9uU3BlY2lmaWNhdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gQWN0aW9uRXhlY3V0aW9uU3BlY2lmaWNhdGlvbiBpcyBhIGtpbmQgb2YgRXhlY3V0aW9uU3BlY2lmaWNhdGlvbiByZXByZXNlbnRpbmcgdGhlIGV4ZWN1dGlvbiBvZiBhbiBBY3Rpb24uIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImFjdGlvbl9yZWZlcmVuY2VkIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iKGVuY2xvc2luZ0ludGVyYWN0aW9uLT5ub3RFbXB0eSgpIG9yIGVuY2xvc2luZ09wZXJhbmQuY29tYmluZWRGcmFnbWVudC0+bm90RW1wdHkoKSkgYW5kJiN4RDsmI3hBO2xldCBwYXJlbnRJbnRlcmFjdGlvbiA6IFNldChJbnRlcmFjdGlvbikgPSBlbmNsb3NpbmdJbnRlcmFjdGlvbi5vY2xBc1R5cGUoSW50ZXJhY3Rpb24pLT5hc1NldCgpLT51bmlvbigmI3hEOyYjeEE7ZW5jbG9zaW5nT3BlcmFuZC5jb21iaW5lZEZyYWdtZW50LT5jbG9zdXJlKGVuY2xvc2luZ09wZXJhbmQuY29tYmluZWRGcmFnbWVudCktPiYjeEQ7JiN4QTtjb2xsZWN0KGVuY2xvc2luZ0ludGVyYWN0aW9uKS5vY2xBc1R5cGUoSW50ZXJhY3Rpb24pLT5hc1NldCgpKSBpbiYjeEQ7JiN4QTsocGFyZW50SW50ZXJhY3Rpb24tPnNpemUoKSA9IDEpIGFuZCBzZWxmLmFjdGlvbi5pbnRlcmFjdGlvbi0+YXNTZXQoKSA9IHBhcmVudEludGVyYWN0aW9uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIEFjdGlvbiByZWZlcmVuY2VkIGJ5IHRoZSBBY3Rpb25FeGVjdXRpb25TcGVjaWZpY2F0aW9uIG11c3QgYmUgb3duZWQgYnkgdGhlIEludGVyYWN0aW9uIG93bmluZyB0aGF0IEFjdGlvbkV4ZWN1dGlvblNwZWNpZmljYXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJhY3Rpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vQWN0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQWN0aW9uIHdob3NlIGV4ZWN1dGlvbiBpcyBvY2N1cnJpbmcuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkV4ZWN1dGlvblNwZWNpZmljYXRpb24iIGFic3RyYWN0PSJ0cnVlIgorICAgICAgZVN1cGVyVHlwZXM9IiMvL0ludGVyYWN0aW9uRnJhZ21lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIEV4ZWN1dGlvblNwZWNpZmljYXRpb24gaXMgYSBzcGVjaWZpY2F0aW9uIG9mIHRoZSBleGVjdXRpb24gb2YgYSB1bml0IG9mIEJlaGF2aW9yIG9yIEFjdGlvbiB3aXRoaW4gdGhlIExpZmVsaW5lLiBUaGUgZHVyYXRpb24gb2YgYW4gRXhlY3V0aW9uU3BlY2lmaWNhdGlvbiBpcyByZXByZXNlbnRlZCBieSB0d28gT2NjdXJyZW5jZVNwZWNpZmljYXRpb25zLCB0aGUgc3RhcnQgT2NjdXJyZW5jZVNwZWNpZmljYXRpb24gYW5kIHRoZSBmaW5pc2ggT2NjdXJyZW5jZVNwZWNpZmljYXRpb24uIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InNhbWVfbGlmZWxpbmUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzdGFydC5jb3ZlcmVkID0gZmluaXNoLmNvdmVyZWQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc3RhcnRFdmVudCBhbmQgdGhlIGZpbmlzaEV2ZW50IG11c3QgYmUgb24gdGhlIHNhbWUgTGlmZWxpbmUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJmaW5pc2giIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vT2NjdXJyZW5jZVNwZWNpZmljYXRpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZWZlcmVuY2VzIHRoZSBPY2N1cnJlbmNlU3BlY2lmaWNhdGlvbiB0aGF0IGRlc2lnbmF0ZXMgdGhlIGZpbmlzaCBvZiB0aGUgQWN0aW9uIG9yIEJlaGF2aW9yLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJzdGFydCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9PY2N1cnJlbmNlU3BlY2lmaWNhdGlvbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJlZmVyZW5jZXMgdGhlIE9jY3VycmVuY2VTcGVjaWZpY2F0aW9uIHRoYXQgZGVzaWduYXRlcyB0aGUgc3RhcnQgb2YgdGhlIEFjdGlvbiBvciBCZWhhdmlvci4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQmVoYXZpb3JFeGVjdXRpb25TcGVjaWZpY2F0aW9uIiBlU3VwZXJUeXBlcz0iIy8vRXhlY3V0aW9uU3BlY2lmaWNhdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBCZWhhdmlvckV4ZWN1dGlvblNwZWNpZmljYXRpb24gaXMgYSBraW5kIG9mIEV4ZWN1dGlvblNwZWNpZmljYXRpb24gcmVwcmVzZW50aW5nIHRoZSBleGVjdXRpb24gb2YgYSBCZWhhdmlvci4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iYmVoYXZpb3IiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vQmVoYXZpb3IiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJCZWhhdmlvciB3aG9zZSBleGVjdXRpb24gaXMgb2NjdXJyaW5nLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb21iaW5lZEZyYWdtZW50IiBlU3VwZXJUeXBlcz0iIy8vSW50ZXJhY3Rpb25GcmFnbWVudCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBDb21iaW5lZEZyYWdtZW50IGRlZmluZXMgYW4gZXhwcmVzc2lvbiBvZiBJbnRlcmFjdGlvbkZyYWdtZW50cy4gQSBDb21iaW5lZEZyYWdtZW50IGlzIGRlZmluZWQgYnkgYW4gaW50ZXJhY3Rpb24gb3BlcmF0b3IgYW5kIGNvcnJlc3BvbmRpbmcgSW50ZXJhY3Rpb25PcGVyYW5kcy4gVGhyb3VnaCB0aGUgdXNlIG9mIENvbWJpbmVkRnJhZ21lbnRzIHRoZSB1c2VyIHdpbGwgYmUgYWJsZSB0byBkZXNjcmliZSBhIG51bWJlciBvZiB0cmFjZXMgaW4gYSBjb21wYWN0IGFuZCBjb25jaXNlIG1hbm5lci4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iYnJlYWsiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpbnRlcmFjdGlvbk9wZXJhdG9yPUludGVyYWN0aW9uT3BlcmF0b3JLaW5kOjpicmVhayAgaW1wbGllcyAgICYjeEQ7JiN4QTtlbmNsb3NpbmdJbnRlcmFjdGlvbi5vY2xBc1R5cGUoSW50ZXJhY3Rpb25GcmFnbWVudCktPmFzU2V0KCktPnVuaW9uKCYjeEQ7JiN4QTsgICBlbmNsb3NpbmdPcGVyYW5kLm9jbEFzVHlwZShJbnRlcmFjdGlvbkZyYWdtZW50KS0+YXNTZXQoKSkuY292ZXJlZC0+YXNTZXQoKSA9IHNlbGYuY292ZXJlZC0+YXNTZXQoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIHRoZSBpbnRlcmFjdGlvbk9wZXJhdG9yIGlzIGJyZWFrLCB0aGUgY29ycmVzcG9uZGluZyBJbnRlcmFjdGlvbk9wZXJhbmQgbXVzdCBjb3ZlciBhbGwgTGlmZWxpbmVzIGNvdmVyZWQgYnkgdGhlIGVuY2xvc2luZyBJbnRlcmFjdGlvbkZyYWdtZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY29uc2lkZXJfYW5kX2lnbm9yZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9IigoaW50ZXJhY3Rpb25PcGVyYXRvciA9IEludGVyYWN0aW9uT3BlcmF0b3JLaW5kOjpjb25zaWRlcikgb3IgKGludGVyYWN0aW9uT3BlcmF0b3IgPSAgSW50ZXJhY3Rpb25PcGVyYXRvcktpbmQ6Omlnbm9yZSkpIGltcGxpZXMgb2NsSXNLaW5kT2YoQ29uc2lkZXJJZ25vcmVGcmFnbWVudCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgaW50ZXJhY3Rpb24gb3BlcmF0b3JzICdjb25zaWRlcicgYW5kICdpZ25vcmUnIGNhbiBvbmx5IGJlIHVzZWQgZm9yIHRoZSBDb25zaWRlcklnbm9yZUZyYWdtZW50IHN1YnR5cGUgb2YgQ29tYmluZWRGcmFnbWVudCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ib3B0X2xvb3BfYnJlYWtfbmVnIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iKGludGVyYWN0aW9uT3BlcmF0b3IgPSAgSW50ZXJhY3Rpb25PcGVyYXRvcktpbmQ6Om9wdCBvciBpbnRlcmFjdGlvbk9wZXJhdG9yID0gSW50ZXJhY3Rpb25PcGVyYXRvcktpbmQ6Omxvb3Agb3ImI3hEOyYjeEE7aW50ZXJhY3Rpb25PcGVyYXRvciA9IEludGVyYWN0aW9uT3BlcmF0b3JLaW5kOjpicmVhayBvciBpbnRlcmFjdGlvbk9wZXJhdG9yID0gSW50ZXJhY3Rpb25PcGVyYXRvcktpbmQ6OmFzc2VydCBvciYjeEQ7JiN4QTtpbnRlcmFjdGlvbk9wZXJhdG9yID0gSW50ZXJhY3Rpb25PcGVyYXRvcktpbmQ6Om5lZykmI3hEOyYjeEE7aW1wbGllcyBvcGVyYW5kLT5zaXplKCk9MSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIHRoZSBpbnRlcmFjdGlvbk9wZXJhdG9yIGlzIG9wdCwgbG9vcCwgYnJlYWssIGFzc2VydCBvciBuZWcsIHRoZXJlIG11c3QgYmUgZXhhY3RseSBvbmUgb3BlcmFuZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImNmcmFnbWVudEdhdGUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0dhdGUiIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iU3BlY2lmaWVzIHRoZSBnYXRlcyB0aGF0IGZvcm0gdGhlIGludGVyZmFjZSBiZXR3ZWVuIHRoaXMgQ29tYmluZWRGcmFnbWVudCBhbmQgaXRzIHN1cnJvdW5kaW5ncyIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImludGVyYWN0aW9uT3BlcmF0b3IiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vSW50ZXJhY3Rpb25PcGVyYXRvcktpbmQiIGRlZmF1bHRWYWx1ZUxpdGVyYWw9InNlcSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNwZWNpZmllcyB0aGUgb3BlcmF0aW9uIHdoaWNoIGRlZmluZXMgdGhlIHNlbWFudGljcyBvZiB0aGlzIGNvbWJpbmF0aW9uIG9mIEludGVyYWN0aW9uRnJhZ21lbnRzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJvcGVyYW5kIiBsb3dlckJvdW5kPSIxIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0ludGVyYWN0aW9uT3BlcmFuZCIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc2V0IG9mIG9wZXJhbmRzIG9mIHRoZSBjb21iaW5lZCBmcmFnbWVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUVudW0iIG5hbWU9IkludGVyYWN0aW9uT3BlcmF0b3JLaW5kIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbnRlcmFjdGlvbk9wZXJhdG9yS2luZCBpcyBhbiBlbnVtZXJhdGlvbiBkZXNpZ25hdGluZyB0aGUgZGlmZmVyZW50IGtpbmRzIG9mIG9wZXJhdG9ycyBvZiBDb21iaW5lZEZyYWdtZW50cy4gVGhlIEludGVyYWN0aW9uT3BlcmFuZCBkZWZpbmVzIHRoZSB0eXBlIG9mIG9wZXJhdG9yIG9mIGEgQ29tYmluZWRGcmFnbWVudC4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9InNlcSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBJbnRlcmFjdGlvbk9wZXJhdG9yS2luZCBzZXEgZGVzaWduYXRlcyB0aGF0IHRoZSBDb21iaW5lZEZyYWdtZW50IHJlcHJlc2VudHMgYSB3ZWFrIHNlcXVlbmNpbmcgYmV0d2VlbiB0aGUgYmVoYXZpb3JzIG9mIHRoZSBvcGVyYW5kcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0iYWx0IiB2YWx1ZT0iMSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBJbnRlcmFjdGlvbk9wZXJhdG9yS2luZCBhbHQgZGVzaWduYXRlcyB0aGF0IHRoZSBDb21iaW5lZEZyYWdtZW50IHJlcHJlc2VudHMgYSBjaG9pY2Ugb2YgYmVoYXZpb3IuIEF0IG1vc3Qgb25lIG9mIHRoZSBvcGVyYW5kcyB3aWxsIGJlIGNob3Nlbi4gVGhlIGNob3NlbiBvcGVyYW5kIG11c3QgaGF2ZSBhbiBleHBsaWNpdCBvciBpbXBsaWNpdCBndWFyZCBleHByZXNzaW9uIHRoYXQgZXZhbHVhdGVzIHRvIHRydWUgYXQgdGhpcyBwb2ludCBpbiB0aGUgaW50ZXJhY3Rpb24uIEFuIGltcGxpY2l0IHRydWUgZ3VhcmQgaXMgaW1wbGllZCBpZiB0aGUgb3BlcmFuZCBoYXMgbm8gZ3VhcmQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9Im9wdCIgdmFsdWU9IjIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgSW50ZXJhY3Rpb25PcGVyYXRvcktpbmQgb3B0IGRlc2lnbmF0ZXMgdGhhdCB0aGUgQ29tYmluZWRGcmFnbWVudCByZXByZXNlbnRzIGEgY2hvaWNlIG9mIGJlaGF2aW9yIHdoZXJlIGVpdGhlciB0aGUgKHNvbGUpIG9wZXJhbmQgaGFwcGVucyBvciBub3RoaW5nIGhhcHBlbnMuIEFuIG9wdGlvbiBpcyBzZW1hbnRpY2FsbHkgZXF1aXZhbGVudCB0byBhbiBhbHRlcm5hdGl2ZSBDb21iaW5lZEZyYWdtZW50IHdoZXJlIHRoZXJlIGlzIG9uZSBvcGVyYW5kIHdpdGggbm9uLWVtcHR5IGNvbnRlbnQgYW5kIHRoZSBzZWNvbmQgb3BlcmFuZCBpcyBlbXB0eS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0iYnJlYWsiIHZhbHVlPSIzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIEludGVyYWN0aW9uT3BlcmF0b3JLaW5kIGJyZWFrIGRlc2lnbmF0ZXMgdGhhdCB0aGUgQ29tYmluZWRGcmFnbWVudCByZXByZXNlbnRzIGEgYnJlYWtpbmcgc2NlbmFyaW8gaW4gdGhlIHNlbnNlIHRoYXQgdGhlIG9wZXJhbmQgaXMgYSBzY2VuYXJpbyB0aGF0IGlzIHBlcmZvcm1lZCBpbnN0ZWFkIG9mIHRoZSByZW1haW5kZXIgb2YgdGhlIGVuY2xvc2luZyBJbnRlcmFjdGlvbkZyYWdtZW50LiBBIGJyZWFrIG9wZXJhdG9yIHdpdGggYSBndWFyZCBpcyBjaG9zZW4gd2hlbiB0aGUgZ3VhcmQgaXMgdHJ1ZSBhbmQgdGhlIHJlc3Qgb2YgdGhlIGVuY2xvc2luZyBJbnRlcmFjdGlvbiBGcmFnbWVudCBpcyBpZ25vcmVkLiBXaGVuIHRoZSBndWFyZCBvZiB0aGUgYnJlYWsgb3BlcmFuZCBpcyBmYWxzZSwgdGhlIGJyZWFrIG9wZXJhbmQgaXMgaWdub3JlZCBhbmQgdGhlIHJlc3Qgb2YgdGhlIGVuY2xvc2luZyBJbnRlcmFjdGlvbkZyYWdtZW50IGlzIGNob3Nlbi4gVGhlIGNob2ljZSBiZXR3ZWVuIGEgYnJlYWsgb3BlcmFuZCB3aXRob3V0IGEgZ3VhcmQgYW5kIHRoZSByZXN0IG9mIHRoZSBlbmNsb3NpbmcgSW50ZXJhY3Rpb25GcmFnbWVudCBpcyBkb25lIG5vbi1kZXRlcm1pbmlzdGljYWxseS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0icGFyIiB2YWx1ZT0iNCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBJbnRlcmFjdGlvbk9wZXJhdG9yS2luZCBwYXIgZGVzaWduYXRlcyB0aGF0IHRoZSBDb21iaW5lZEZyYWdtZW50IHJlcHJlc2VudHMgYSBwYXJhbGxlbCBtZXJnZSBiZXR3ZWVuIHRoZSBiZWhhdmlvcnMgb2YgdGhlIG9wZXJhbmRzLiBUaGUgT2NjdXJyZW5jZVNwZWNpZmljYXRpb25zIG9mIHRoZSBkaWZmZXJlbnQgb3BlcmFuZHMgY2FuIGJlIGludGVybGVhdmVkIGluIGFueSB3YXkgYXMgbG9uZyBhcyB0aGUgb3JkZXJpbmcgaW1wb3NlZCBieSBlYWNoIG9wZXJhbmQgYXMgc3VjaCBpcyBwcmVzZXJ2ZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9InN0cmljdCIgdmFsdWU9IjUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgSW50ZXJhY3Rpb25PcGVyYXRvcktpbmQgc3RyaWN0IGRlc2lnbmF0ZXMgdGhhdCB0aGUgQ29tYmluZWRGcmFnbWVudCByZXByZXNlbnRzIGEgc3RyaWN0IHNlcXVlbmNpbmcgYmV0d2VlbiB0aGUgYmVoYXZpb3JzIG9mIHRoZSBvcGVyYW5kcy4gVGhlIHNlbWFudGljcyBvZiBzdHJpY3Qgc2VxdWVuY2luZyBkZWZpbmVzIGEgc3RyaWN0IG9yZGVyaW5nIG9mIHRoZSBvcGVyYW5kcyBvbiB0aGUgZmlyc3QgbGV2ZWwgd2l0aGluIHRoZSBDb21iaW5lZEZyYWdtZW50IHdpdGggaW50ZXJhY3Rpb25PcGVyYXRvciBzdHJpY3QuIFRoZXJlZm9yZSBPY2N1cnJlbmNlU3BlY2lmaWNhdGlvbnMgd2l0aGluIGNvbnRhaW5lZCBDb21iaW5lZEZyYWdtZW50IHdpbGwgbm90IGRpcmVjdGx5IGJlIGNvbXBhcmVkIHdpdGggb3RoZXIgT2NjdXJyZW5jZVNwZWNpZmljYXRpb25zIG9mIHRoZSBlbmNsb3NpbmcgQ29tYmluZWRGcmFnbWVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0ibG9vcCIgdmFsdWU9IjYiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgSW50ZXJhY3Rpb25PcGVyYXRvcktpbmQgbG9vcCBkZXNpZ25hdGVzIHRoYXQgdGhlIENvbWJpbmVkRnJhZ21lbnQgcmVwcmVzZW50cyBhIGxvb3AuIFRoZSBsb29wIG9wZXJhbmQgd2lsbCBiZSByZXBlYXRlZCBhIG51bWJlciBvZiB0aW1lcy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0iY3JpdGljYWwiIHZhbHVlPSI3Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIEludGVyYWN0aW9uT3BlcmF0b3JLaW5kIGNyaXRpY2FsIGRlc2lnbmF0ZXMgdGhhdCB0aGUgQ29tYmluZWRGcmFnbWVudCByZXByZXNlbnRzIGEgY3JpdGljYWwgcmVnaW9uLiBBIGNyaXRpY2FsIHJlZ2lvbiBtZWFucyB0aGF0IHRoZSB0cmFjZXMgb2YgdGhlIHJlZ2lvbiBjYW5ub3QgYmUgaW50ZXJsZWF2ZWQgYnkgb3RoZXIgT2NjdXJyZW5jZVNwZWNpZmljYXRpb25zIChvbiB0aG9zZSBMaWZlbGluZXMgY292ZXJlZCBieSB0aGUgcmVnaW9uKS4gVGhpcyBtZWFucyB0aGF0IHRoZSByZWdpb24gaXMgdHJlYXRlZCBhdG9taWNhbGx5IGJ5IHRoZSBlbmNsb3NpbmcgZnJhZ21lbnQgd2hlbiBkZXRlcm1pbmluZyB0aGUgc2V0IG9mIHZhbGlkIHRyYWNlcy4gRXZlbiB0aG91Z2ggZW5jbG9zaW5nIENvbWJpbmVkRnJhZ21lbnRzIG1heSBpbXBseSB0aGF0IHNvbWUgT2NjdXJyZW5jZVNwZWNpZmljYXRpb25zIG1heSBpbnRlcmxlYXZlIGludG8gdGhlIHJlZ2lvbiwgc3VjaCBhcyB3aXRoIHBhci1vcGVyYXRvciwgdGhpcyBpcyBwcmV2ZW50ZWQgYnkgZGVmaW5pbmcgYSByZWdpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9Im5lZyIgdmFsdWU9IjgiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgSW50ZXJhY3Rpb25PcGVyYXRvcktpbmQgbmVnIGRlc2lnbmF0ZXMgdGhhdCB0aGUgQ29tYmluZWRGcmFnbWVudCByZXByZXNlbnRzIHRyYWNlcyB0aGF0IGFyZSBkZWZpbmVkIHRvIGJlIGludmFsaWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9ImFzc2VydCIgdmFsdWU9IjkiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgSW50ZXJhY3Rpb25PcGVyYXRvcktpbmQgYXNzZXJ0IGRlc2lnbmF0ZXMgdGhhdCB0aGUgQ29tYmluZWRGcmFnbWVudCByZXByZXNlbnRzIGFuIGFzc2VydGlvbi4gVGhlIHNlcXVlbmNlcyBvZiB0aGUgb3BlcmFuZCBvZiB0aGUgYXNzZXJ0aW9uIGFyZSB0aGUgb25seSB2YWxpZCBjb250aW51YXRpb25zLiBBbGwgb3RoZXIgY29udGludWF0aW9ucyByZXN1bHQgaW4gYW4gaW52YWxpZCB0cmFjZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0iaWdub3JlIiB2YWx1ZT0iMTAiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgSW50ZXJhY3Rpb25PcGVyYXRvcktpbmQgaWdub3JlIGRlc2lnbmF0ZXMgdGhhdCB0aGVyZSBhcmUgc29tZSBtZXNzYWdlIHR5cGVzIHRoYXQgYXJlIG5vdCBzaG93biB3aXRoaW4gdGhpcyBjb21iaW5lZCBmcmFnbWVudC4gVGhlc2UgbWVzc2FnZSB0eXBlcyBjYW4gYmUgY29uc2lkZXJlZCBpbnNpZ25pZmljYW50IGFuZCBhcmUgaW1wbGljaXRseSBpZ25vcmVkIGlmIHRoZXkgYXBwZWFyIGluIGEgY29ycmVzcG9uZGluZyBleGVjdXRpb24uIEFsdGVybmF0aXZlbHksIG9uZSBjYW4gdW5kZXJzdGFuZCBpZ25vcmUgdG8gbWVhbiB0aGF0IHRoZSBtZXNzYWdlIHR5cGVzIHRoYXQgYXJlIGlnbm9yZWQgY2FuIGFwcGVhciBhbnl3aGVyZSBpbiB0aGUgdHJhY2VzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lTGl0ZXJhbHM+CisgICAgPGVMaXRlcmFscyBuYW1lPSJjb25zaWRlciIgdmFsdWU9IjExIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIEludGVyYWN0aW9uT3BlcmF0b3JLaW5kIGNvbnNpZGVyIGRlc2lnbmF0ZXMgd2hpY2ggbWVzc2FnZXMgc2hvdWxkIGJlIGNvbnNpZGVyZWQgd2l0aGluIHRoaXMgY29tYmluZWQgZnJhZ21lbnQuIFRoaXMgaXMgZXF1aXZhbGVudCB0byBkZWZpbmluZyBldmVyeSBvdGhlciBtZXNzYWdlIHRvIGJlIGlnbm9yZWQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iQ29uc2lkZXJJZ25vcmVGcmFnbWVudCIgZVN1cGVyVHlwZXM9IiMvL0NvbWJpbmVkRnJhZ21lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgQ29uc2lkZXJJZ25vcmVGcmFnbWVudCBpcyBhIGtpbmQgb2YgQ29tYmluZWRGcmFnbWVudCB0aGF0IGlzIHVzZWQgZm9yIHRoZSBjb25zaWRlciBhbmQgaWdub3JlIGNhc2VzLCB3aGljaCByZXF1aXJlIGxpc3RzIG9mIHBlcnRpbmVudCBNZXNzYWdlcyB0byBiZSBzcGVjaWZpZWQuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImNvbnNpZGVyX29yX2lnbm9yZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9IihpbnRlcmFjdGlvbk9wZXJhdG9yID0gIEludGVyYWN0aW9uT3BlcmF0b3JLaW5kOjpjb25zaWRlcikgb3IgKGludGVyYWN0aW9uT3BlcmF0b3IgPSAgSW50ZXJhY3Rpb25PcGVyYXRvcktpbmQ6Omlnbm9yZSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgaW50ZXJhY3Rpb24gb3BlcmF0b3Igb2YgYSBDb25zaWRlcklnbm9yZUZyYWdtZW50IG11c3QgYmUgZWl0aGVyICdjb25zaWRlcicgb3IgJ2lnbm9yZScuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJ0eXBlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibWVzc2FnZS0+Zm9yQWxsKG0gfCBtLm9jbElzS2luZE9mKE9wZXJhdGlvbikgb3IgbS5vY2xJc0tpbmRPZihTaWduYWwpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBOYW1lZEVsZW1lbnRzIG11c3QgYmUgb2YgYSB0eXBlIG9mIGVsZW1lbnQgdGhhdCBjYW4gYmUgYSBzaWduYXR1cmUgZm9yIGEgbWVzc2FnZSAoaS5lLi4sIGFuIE9wZXJhdGlvbiwgb3IgYSBTaWduYWwpLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ibWVzc2FnZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vTmFtZWRFbGVtZW50Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHNldCBvZiBtZXNzYWdlcyB0aGF0IGFwcGx5IHRvIHRoaXMgZnJhZ21lbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNvbnRpbnVhdGlvbiIgZVN1cGVyVHlwZXM9IiMvL0ludGVyYWN0aW9uRnJhZ21lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgQ29udGludWF0aW9uIGlzIGEgc3ludGFjdGljIHdheSB0byBkZWZpbmUgY29udGludWF0aW9ucyBvZiBkaWZmZXJlbnQgYnJhbmNoZXMgb2YgYW4gYWx0ZXJuYXRpdmUgQ29tYmluZWRGcmFnbWVudC4gQ29udGludWF0aW9ucyBhcmUgaW50dWl0aXZlbHkgc2ltaWxhciB0byBsYWJlbHMgcmVwcmVzZW50aW5nIGludGVybWVkaWF0ZSBwb2ludHMgaW4gYSBmbG93IG9mIGNvbnRyb2wuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImZpcnN0X29yX2xhc3RfaW50ZXJhY3Rpb25fZnJhZ21lbnQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIgZW5jbG9zaW5nT3BlcmFuZC0+bm90RW1wdHkoKSBhbmQgJiN4RDsmI3hBOyBsZXQgcGVlckZyYWdtZW50cyA6IE9yZGVyZWRTZXQoSW50ZXJhY3Rpb25GcmFnbWVudCkgPSAgZW5jbG9zaW5nT3BlcmFuZC5mcmFnbWVudCBpbiAmI3hEOyYjeEE7ICAgKCBwZWVyRnJhZ21lbnRzLT5ub3RFbXB0eSgpIGFuZCAmI3hEOyYjeEE7ICAgKChwZWVyRnJhZ21lbnRzLT5maXJzdCgpID0gc2VsZikgb3IgIChwZWVyRnJhZ21lbnRzLT5sYXN0KCkgPSBzZWxmKSkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQ29udGludWF0aW9ucyBhbHdheXMgb2NjdXIgYXMgdGhlIHZlcnkgZmlyc3QgSW50ZXJhY3Rpb25GcmFnbWVudCBvciB0aGUgdmVyeSBsYXN0IEludGVyYWN0aW9uRnJhZ21lbnQgb2YgdGhlIGVuY2xvc2luZyBJbnRlcmFjdGlvbk9wZXJhbmQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzYW1lX25hbWUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJlbmNsb3NpbmdPcGVyYW5kLmNvbWJpbmVkRnJhZ21lbnQtPm5vdEVtcHR5KCkgYW5kJiN4RDsmI3hBO2xldCBwYXJlbnRJbnRlcmFjdGlvbiA6IFNldChJbnRlcmFjdGlvbikgPSAmI3hEOyYjeEE7ZW5jbG9zaW5nT3BlcmFuZC5jb21iaW5lZEZyYWdtZW50LT5jbG9zdXJlKGVuY2xvc2luZ09wZXJhbmQuY29tYmluZWRGcmFnbWVudCktPiYjeEQ7JiN4QTtjb2xsZWN0KGVuY2xvc2luZ0ludGVyYWN0aW9uKS5vY2xBc1R5cGUoSW50ZXJhY3Rpb24pLT5hc1NldCgpJiN4RDsmI3hBO2luICYjeEQ7JiN4QTsocGFyZW50SW50ZXJhY3Rpb24tPnNpemUoKSA9IDEpICYjeEQ7JiN4QTthbmQgbGV0IHBlZXJJbnRlcmFjdGlvbnMgOiBTZXQoSW50ZXJhY3Rpb24pID0mI3hEOyYjeEE7IChwYXJlbnRJbnRlcmFjdGlvbi0+dW5pb24ocGFyZW50SW50ZXJhY3Rpb24tPmNvbGxlY3QoXydjb250ZXh0JyktPmNvbGxlY3QoYmVoYXZpb3IpLT4mI3hEOyYjeEE7IHNlbGVjdChvY2xJc0tpbmRPZihJbnRlcmFjdGlvbikpLm9jbEFzVHlwZShJbnRlcmFjdGlvbiktPmFzU2V0KCkpLT5hc1NldCgpKSBpbiYjeEQ7JiN4QTsgKHBlZXJJbnRlcmFjdGlvbnMtPm5vdEVtcHR5KCkpIGFuZCAmI3hEOyYjeEE7ICBsZXQgY29tYmluZWRGcmFnbWVudHMxIDogU2V0KENvbWJpbmVkRnJhZ21lbnQpID0gcGVlckludGVyYWN0aW9ucy5mcmFnbWVudC0+JiN4RDsmI3hBOyBzZWxlY3Qob2NsSXNLaW5kT2YoQ29tYmluZWRGcmFnbWVudCkpLm9jbEFzVHlwZShDb21iaW5lZEZyYWdtZW50KS0+YXNTZXQoKSBpbiYjeEQ7JiN4QTsgICBjb21iaW5lZEZyYWdtZW50czEtPm5vdEVtcHR5KCkgYW5kICBjb21iaW5lZEZyYWdtZW50czEtPmNsb3N1cmUob3BlcmFuZC5mcmFnbWVudC0+JiN4RDsmI3hBOyAgIHNlbGVjdChvY2xJc0tpbmRPZihDb21iaW5lZEZyYWdtZW50KSkub2NsQXNUeXBlKENvbWJpbmVkRnJhZ21lbnQpKS0+YXNTZXQoKS5vcGVyYW5kLmZyYWdtZW50LT4mI3hEOyYjeEE7ICAgc2VsZWN0KG9jbElzS2luZE9mKENvbnRpbnVhdGlvbikpLm9jbEFzVHlwZShDb250aW51YXRpb24pLT5hc1NldCgpLT4mI3hEOyYjeEE7ICAgZm9yQWxsKGMgOiBDb250aW51YXRpb24gfCAgKGMubmFtZSA9IHNlbGYubmFtZSkgaW1wbGllcyAmI3hEOyYjeEE7ICAoYy5jb3ZlcmVkLT5hc1NldCgpLT5mb3JBbGwoY2wgOiBMaWZlbGluZSB8IC0tICBjbCBtdXN0IGJlIGNvbW1vbiB0byBvbmUgbGlmZWxpbmUgY292ZXJlZCBieSBzZWxmJiN4RDsmI3hBOyAgc2VsZi5jb3ZlcmVkLT5hc1NldCgpLT4mI3hEOyYjeEE7ICBzZWxlY3QocmVwcmVzZW50cyA9IGNsLnJlcHJlc2VudHMgYW5kIHNlbGVjdG9yID0gY2wuc2VsZWN0b3IpLT5hc1NldCgpLT5zaXplKCk9MSkpJiN4RDsmI3hBOyAgIGFuZCYjeEQ7JiN4QTsgKHNlbGYuY292ZXJlZC0+YXNTZXQoKS0+Zm9yQWxsKGNsIDogTGlmZWxpbmUgfCAtLSAgY2wgbXVzdCBiZSBjb21tb24gdG8gb25lIGxpZmVsaW5lIGNvdmVyZWQgYnkgYyYjeEQ7JiN4QTsgYy5jb3ZlcmVkLT5hc1NldCgpLT4mI3hEOyYjeEE7ICBzZWxlY3QocmVwcmVzZW50cyA9IGNsLnJlcHJlc2VudHMgYW5kIHNlbGVjdG9yID0gY2wuc2VsZWN0b3IpLT5hc1NldCgpLT5zaXplKCk9MSkpJiN4RDsmI3hBOyAgKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFjcm9zcyBhbGwgSW50ZXJhY3Rpb24gaW5zdGFuY2VzIGhhdmluZyB0aGUgc2FtZSBjb250ZXh0IHZhbHVlLCBldmVyeSBMaWZlbGluZSBpbnN0YW5jZSBjb3ZlcmVkIGJ5IGEgQ29udGludWF0aW9uIChzZWxmKSBtdXN0IGJlIGNvbW1vbiB3aXRoIG9uZSBjb3ZlcmVkIExpZmVsaW5lIGluc3RhbmNlIG9mIGFsbCBvdGhlciBDb250aW51YXRpb24gaW5zdGFuY2VzIHdpdGggdGhlIHNhbWUgbmFtZSBhcyBzZWxmLCBhbmQgZXZlcnkgTGlmZWxpbmUgaW5zdGFuY2UgY292ZXJlZCBieSBhIENvbnRpbnVhdGlvbiBpbnN0YW5jZSB3aXRoIHRoZSBzYW1lIG5hbWUgYXMgc2VsZiBtdXN0IGJlIGNvbW1vbiB3aXRoIG9uZSBjb3ZlcmVkIExpZmVsaW5lIGluc3RhbmNlIG9mIHNlbGYuIExpZmVsaW5lIGluc3RhbmNlcyBhcmUgY29tbW9uIGlmIHRoZXkgaGF2ZSB0aGUgc2FtZSBzZWxlY3RvciBhbmQgcmVwcmVzZW50cyBhc3NvY2lhdGlvbkVuZCB2YWx1ZXMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnbG9iYWwiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJlbmNsb3NpbmdPcGVyYW5kLT5ub3RFbXB0eSgpIGFuZCYjeEQ7JiN4QTsgIGxldCBvcGVyYW5kTGlmZWxpbmVzIDogU2V0KExpZmVsaW5lKSA9ICBlbmNsb3NpbmdPcGVyYW5kLmNvdmVyZWQgaW4gJiN4RDsmI3hBOyAgICAob3BlcmFuZExpZmVsaW5lcy0+bm90RW1wdHkoKSBhbmQgJiN4RDsmI3hBOyAgICBvcGVyYW5kTGlmZWxpbmVzLT5mb3JBbGwob2wgOkxpZmVsaW5lIHxzZWxmLmNvdmVyZWQtPmluY2x1ZGVzKG9sKSkpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQ29udGludWF0aW9ucyBhcmUgYWx3YXlzIGdsb2JhbCBpbiB0aGUgZW5jbG9zaW5nIEludGVyYWN0aW9uRnJhZ21lbnQgZS5nLiwgaXQgYWx3YXlzIGNvdmVycyBhbGwgTGlmZWxpbmVzIGNvdmVyZWQgYnkgdGhlIGVuY2xvc2luZyBJbnRlcmFjdGlvbk9wZXJhdG9yLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0ic2V0dGluZyIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVHJ1ZTogd2hlbiB0aGUgQ29udGludWF0aW9uIGlzIGF0IHRoZSBlbmQgb2YgdGhlIGVuY2xvc2luZyBJbnRlcmFjdGlvbkZyYWdtZW50IGFuZCBGYWxzZSB3aGVuIGl0IGlzIGluIHRoZSBiZWdpbm5pbmcuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkRlc3RydWN0aW9uT2NjdXJyZW5jZVNwZWNpZmljYXRpb24iCisgICAgICBlU3VwZXJUeXBlcz0iIy8vTWVzc2FnZU9jY3VycmVuY2VTcGVjaWZpY2F0aW9uIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIERlc3RydWN0aW9uT2NjdXJlbmNlU3BlY2lmaWNhdGlvbiBtb2RlbHMgdGhlIGRlc3RydWN0aW9uIG9mIGFuIG9iamVjdC4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibm9fb2NjdXJyZW5jZV9zcGVjaWZpY2F0aW9uc19iZWxvdyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImxldCBvIDogSW50ZXJhY3Rpb25PcGVyYW5kID0gZW5jbG9zaW5nT3BlcmFuZCBpbiBvLT5ub3RFbXB0eSgpIGFuZCAmI3hEOyYjeEE7bGV0IHBlZXJFdmVudHMgOiBPcmRlcmVkU2V0KE9jY3VycmVuY2VTcGVjaWZpY2F0aW9uKSA9IGNvdmVyZWQuZXZlbnRzLT5zZWxlY3QoZW5jbG9zaW5nT3BlcmFuZCA9IG8pJiN4RDsmI3hBO2luIHBlZXJFdmVudHMtPmxhc3QoKSA9IHNlbGYiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJObyBvdGhlciBPY2N1cnJlbmNlU3BlY2lmaWNhdGlvbnMgb24gYSBnaXZlbiBMaWZlbGluZSBpbiBhbiBJbnRlcmFjdGlvbk9wZXJhbmQgbWF5IGFwcGVhciBiZWxvdyBhIERlc3RydWN0aW9uT2NjdXJyZW5jZVNwZWNpZmljYXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJNZXNzYWdlT2NjdXJyZW5jZVNwZWNpZmljYXRpb24iIGVTdXBlclR5cGVzPSIjLy9PY2N1cnJlbmNlU3BlY2lmaWNhdGlvbiAjLy9NZXNzYWdlRW5kIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIE1lc3NhZ2VPY2N1cnJlbmNlU3BlY2lmaWNhdGlvbiBzcGVjaWZpZXMgdGhlIG9jY3VycmVuY2Ugb2YgTWVzc2FnZSBldmVudHMsIHN1Y2ggYXMgc2VuZGluZyBhbmQgcmVjZWl2aW5nIG9mIFNpZ25hbHMgb3IgaW52b2tpbmcgb3IgcmVjZWl2aW5nIG9mIE9wZXJhdGlvbiBjYWxscy4gQSBNZXNzYWdlT2NjdXJyZW5jZVNwZWNpZmljYXRpb24gaXMgYSBraW5kIG9mIE1lc3NhZ2VFbmQuIE1lc3NhZ2VzIGFyZSBnZW5lcmF0ZWQgZWl0aGVyIGJ5IHN5bmNocm9ub3VzIE9wZXJhdGlvbiBjYWxscyBvciBhc3luY2hyb25vdXMgU2lnbmFsIHNlbmRzLiBUaGV5IGFyZSByZWNlaXZlZCBieSB0aGUgZXhlY3V0aW9uIG9mIGNvcnJlc3BvbmRpbmcgQWNjZXB0RXZlbnRBY3Rpb25zLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJFeGVjdXRpb25PY2N1cnJlbmNlU3BlY2lmaWNhdGlvbiIgZVN1cGVyVHlwZXM9IiMvL09jY3VycmVuY2VTcGVjaWZpY2F0aW9uIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBFeGVjdXRpb25PY2N1cnJlbmNlU3BlY2lmaWNhdGlvbiByZXByZXNlbnRzIG1vbWVudHMgaW4gdGltZSBhdCB3aGljaCBBY3Rpb25zIG9yIEJlaGF2aW9ycyBzdGFydCBvciBmaW5pc2guIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImV4ZWN1dGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9FeGVjdXRpb25TcGVjaWZpY2F0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmVmZXJlbmNlcyB0aGUgZXhlY3V0aW9uIHNwZWNpZmljYXRpb24gZGVzY3JpYmluZyB0aGUgZXhlY3V0aW9uIHRoYXQgaXMgc3RhcnRlZCBvciBmaW5pc2hlZCBhdCB0aGlzIGV4ZWN1dGlvbiBldmVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iU3RhdGVJbnZhcmlhbnQiIGVTdXBlclR5cGVzPSIjLy9JbnRlcmFjdGlvbkZyYWdtZW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFN0YXRlSW52YXJpYW50IGlzIGEgcnVudGltZSBjb25zdHJhaW50IG9uIHRoZSBwYXJ0aWNpcGFudHMgb2YgdGhlIEludGVyYWN0aW9uLiBJdCBtYXkgYmUgdXNlZCB0byBzcGVjaWZ5IGEgdmFyaWV0eSBvZiBkaWZmZXJlbnQga2luZHMgb2YgQ29uc3RyYWludHMsIHN1Y2ggYXMgdmFsdWVzIG9mIEF0dHJpYnV0ZXMgb3IgVmFyaWFibGVzLCBpbnRlcm5hbCBvciBleHRlcm5hbCBTdGF0ZXMsIGFuZCBzbyBvbi4gQSBTdGF0ZUludmFyaWFudCBpcyBhbiBJbnRlcmFjdGlvbkZyYWdtZW50IGFuZCBpdCBpcyBwbGFjZWQgb24gYSBMaWZlbGluZS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iZHVwbGljYXRlcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iY292ZXJlZCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ibG93ZXJCb3VuZCIgdmFsdWU9IjEiLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJ1cHBlckJvdW5kIiB2YWx1ZT0iMSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImNvdmVyZWQiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIKKyAgICAgICAgICBlVHlwZT0iIy8vTGlmZWxpbmUiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmVmZXJlbmNlcyB0aGUgTGlmZWxpbmUgb24gd2hpY2ggdGhlIFN0YXRlSW52YXJpYW50IGFwcGVhcnMuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9JbnRlcmFjdGlvbkZyYWdtZW50L2NvdmVyZWQiLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImludmFyaWFudCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9Db25zdHJhaW50IiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgQ29uc3RyYWludCB0aGF0IHNob3VsZCBob2xkIGF0IHJ1bnRpbWUgZm9yIHRoaXMgU3RhdGVJbnZhcmlhbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iRmluYWxTdGF0ZSIgZVN1cGVyVHlwZXM9IiMvL1N0YXRlIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIHNwZWNpYWwga2luZCBvZiBTdGF0ZSwgd2hpY2gsIHdoZW4gZW50ZXJlZCwgc2lnbmlmaWVzIHRoYXQgdGhlIGVuY2xvc2luZyBSZWdpb24gaGFzIGNvbXBsZXRlZC4gSWYgdGhlIGVuY2xvc2luZyBSZWdpb24gaXMgZGlyZWN0bHkgY29udGFpbmVkIGluIGEgU3RhdGVNYWNoaW5lIGFuZCBhbGwgb3RoZXIgUmVnaW9ucyBpbiB0aGF0IFN0YXRlTWFjaGluZSBhbHNvIGFyZSBjb21wbGV0ZWQsIHRoZW4gaXQgbWVhbnMgdGhhdCB0aGUgZW50aXJlIFN0YXRlTWFjaGluZSBiZWhhdmlvciBpcyBjb21wbGV0ZWQuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im5vX2V4aXRfYmVoYXZpb3IiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJleGl0LT5pc0VtcHR5KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIEZpbmFsU3RhdGUgaGFzIG5vIGV4aXQgQmVoYXZpb3IuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJub19vdXRnb2luZ190cmFuc2l0aW9ucyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im91dGdvaW5nLT5zaXplKCkgPSAwIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBGaW5hbFN0YXRlIGNhbm5vdCBoYXZlIGFueSBvdXRnb2luZyBUcmFuc2l0aW9ucy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im5vX3JlZ2lvbnMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJyZWdpb24tPnNpemUoKSA9IDAiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIEZpbmFsU3RhdGUgY2Fubm90IGhhdmUgUmVnaW9ucy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImNhbm5vdF9yZWZlcmVuY2Vfc3VibWFjaGluZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InN1Ym1hY2hpbmUtPmlzRW1wdHkoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgRmluYWxTdGF0ZSBjYW5ub3QgcmVmZXJlbmNlIGEgc3VibWFjaGluZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im5vX2VudHJ5X2JlaGF2aW9yIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iZW50cnktPmlzRW1wdHkoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgRmluYWxTdGF0ZSBoYXMgbm8gZW50cnkgQmVoYXZpb3IuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJub19zdGF0ZV9iZWhhdmlvciIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImRvQWN0aXZpdHktPmlzRW1wdHkoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgRmluYWxTdGF0ZSBoYXMgbm8gc3RhdGUgKGRvQWN0aXZpdHkpIEJlaGF2aW9yLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iUHJvdG9jb2xUcmFuc2l0aW9uIiBlU3VwZXJUeXBlcz0iIy8vVHJhbnNpdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBQcm90b2NvbFRyYW5zaXRpb24gc3BlY2lmaWVzIGEgbGVnYWwgVHJhbnNpdGlvbiBmb3IgYW4gT3BlcmF0aW9uLiBUcmFuc2l0aW9ucyBvZiBQcm90b2NvbFN0YXRlTWFjaGluZXMgaGF2ZSB0aGUgZm9sbG93aW5nIGluZm9ybWF0aW9uOiBhIHByZS1jb25kaXRpb24gKGd1YXJkKSwgYSBUcmlnZ2VyLCBhbmQgYSBwb3N0LWNvbmRpdGlvbi4gRXZlcnkgUHJvdG9jb2xUcmFuc2l0aW9uIGlzIGFzc29jaWF0ZWQgd2l0aCBhdCBtb3N0IG9uZSBCZWhhdmlvcmFsRmVhdHVyZSBiZWxvbmdpbmcgdG8gdGhlIGNvbnRleHQgQ2xhc3NpZmllciBvZiB0aGUgUHJvdG9jb2xTdGF0ZU1hY2hpbmUuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9InJlZmVyc190b19vcGVyYXRpb24iIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJpZiAocmVmZXJyZWQoKS0+bm90RW1wdHkoKSBhbmQgY29udGFpbmluZ1N0YXRlTWFjaGluZSgpLl8nY29udGV4dCctPm5vdEVtcHR5KCkpIHRoZW4gJiN4RDsmI3hBOyAgICBjb250YWluaW5nU3RhdGVNYWNoaW5lKCkuXydjb250ZXh0Jy5vY2xBc1R5cGUoQmVoYXZpb3JlZENsYXNzaWZpZXIpLmFsbEZlYXR1cmVzKCktPmluY2x1ZGVzQWxsKHJlZmVycmVkKCkpJiN4RDsmI3hBO2Vsc2UgdHJ1ZSBlbmRpZiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIGEgUHJvdG9jb2xUcmFuc2l0aW9uIHJlZmVycyB0byBhbiBPcGVyYXRpb24gKGkuZS4sIGhhcyBhIENhbGxFdmVudCB0cmlnZ2VyIGNvcnJlc3BvbmRpbmcgdG8gYW4gT3BlcmF0aW9uKSwgdGhlbiB0aGF0IE9wZXJhdGlvbiBzaG91bGQgYXBwbHkgdG8gdGhlIGNvbnRleHQgQ2xhc3NpZmllciBvZiB0aGUgU3RhdGVNYWNoaW5lIG9mIHRoZSBQcm90b2NvbFRyYW5zaXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJhc3NvY2lhdGVkX2FjdGlvbnMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJlZmZlY3QgPSBudWxsIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBQcm90b2NvbFRyYW5zaXRpb24gbmV2ZXIgaGFzIGFzc29jaWF0ZWQgQmVoYXZpb3JzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iYmVsb25nc190b19wc20iIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJjb250YWluZXIuYmVsb25nc1RvUFNNKCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFByb3RvY29sVHJhbnNpdGlvbiBhbHdheXMgYmVsb25ncyB0byBhIFByb3RvY29sU3RhdGVNYWNoaW5lLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZ2V0UmVmZXJyZWRzIiBvcmRlcmVkPSJmYWxzZSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9PcGVyYXRpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJEZXJpdmF0aW9uIGZvciBQcm90b2NvbFRyYW5zaXRpb246Oi9yZWZlcnJlZCIvPgorICAgICAgICA8ZGV0YWlscyBrZXk9InN1cHByZXNzZWRWaXNpYmlsaXR5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0ib3JpZ2luYWxOYW1lIiB2YWx1ZT0icmVmZXJyZWQiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InRyaWdnZXItPmNvbGxlY3QoZXZlbnQpLT5zZWxlY3Qob2NsSXNLaW5kT2YoQ2FsbEV2ZW50KSktPmNvbGxlY3Qob2NsQXNUeXBlKENhbGxFdmVudCkub3BlcmF0aW9uKS0+YXNTZXQoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icG9zdENvbmRpdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9Db25zdHJhaW50Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iU3BlY2lmaWVzIHRoZSBwb3N0IGNvbmRpdGlvbiBvZiB0aGUgVHJhbnNpdGlvbiB3aGljaCBpcyB0aGUgQ29uZGl0aW9uIHRoYXQgc2hvdWxkIGJlIG9idGFpbmVkIG9uY2UgdGhlIFRyYW5zaXRpb24gaXMgdHJpZ2dlcmVkLiBUaGlzIHBvc3QgY29uZGl0aW9uIGlzIHBhcnQgb2YgdGhlIHBvc3QgY29uZGl0aW9uIG9mIHRoZSBPcGVyYXRpb24gY29ubmVjdGVkIHRvIHRoZSBUcmFuc2l0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vTmFtZXNwYWNlL293bmVkUnVsZSIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icHJlQ29uZGl0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL0NvbnN0cmFpbnQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgdGhlIHByZWNvbmRpdGlvbiBvZiB0aGUgVHJhbnNpdGlvbi4gSXQgc3BlY2lmaWVzIHRoZSBDb25kaXRpb24gdGhhdCBzaG91bGQgYmUgdmVyaWZpZWQgYmVmb3JlIHRyaWdnZXJpbmcgdGhlIFRyYW5zaXRpb24uIFRoaXMgZ3VhcmQgY29uZGl0aW9uIGFkZGVkIHRvIHRoZSBzb3VyY2UgU3RhdGUgd2lsbCBiZSBldmFsdWF0ZWQgYXMgcGFydCBvZiB0aGUgcHJlY29uZGl0aW9uIG9mIHRoZSBPcGVyYXRpb24gcmVmZXJyZWQgYnkgdGhlIFRyYW5zaXRpb24gaWYgYW55LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vVHJhbnNpdGlvbi9ndWFyZCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVmZXJyZWQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL09wZXJhdGlvbiIgY2hhbmdlYWJsZT0iZmFsc2UiIHZvbGF0aWxlPSJ0cnVlIiB0cmFuc2llbnQ9InRydWUiCisgICAgICAgIGRlcml2ZWQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGlzIGFzc29jaWF0aW9uIHJlZmVycyB0byB0aGUgYXNzb2NpYXRlZCBPcGVyYXRpb24uIEl0IGlzIGRlcml2ZWQgZnJvbSB0aGUgT3BlcmF0aW9uIG9mIHRoZSBDYWxsRXZlbnQgVHJpZ2dlciB3aGVuIGFwcGxpY2FibGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFRW51bSIgbmFtZT0iVHJhbnNpdGlvbktpbmQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRyYW5zaXRpb25LaW5kIGlzIGFuIEVudW1lcmF0aW9uIHR5cGUgdXNlZCB0byBkaWZmZXJlbnRpYXRlIHRoZSB2YXJpb3VzIGtpbmRzIG9mIFRyYW5zaXRpb25zLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlTGl0ZXJhbHMgbmFtZT0iaW50ZXJuYWwiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJJbXBsaWVzIHRoYXQgdGhlIFRyYW5zaXRpb24sIGlmIHRyaWdnZXJlZCwgb2NjdXJzIHdpdGhvdXQgZXhpdGluZyBvciBlbnRlcmluZyB0aGUgc291cmNlIFN0YXRlIChpLmUuLCBpdCBkb2VzIG5vdCBjYXVzZSBhIHN0YXRlIGNoYW5nZSkuIFRoaXMgbWVhbnMgdGhhdCB0aGUgZW50cnkgb3IgZXhpdCBjb25kaXRpb24gb2YgdGhlIHNvdXJjZSBTdGF0ZSB3aWxsIG5vdCBiZSBpbnZva2VkLiBBbiBpbnRlcm5hbCBUcmFuc2l0aW9uIGNhbiBiZSB0YWtlbiBldmVuIGlmIHRoZSBTYXRlTWFjaGluZSBpcyBpbiBvbmUgb3IgbW9yZSBSZWdpb25zIG5lc3RlZCB3aXRoaW4gdGhlIGFzc29jaWF0ZWQgU3RhdGUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9ImxvY2FsIiB2YWx1ZT0iMSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkltcGxpZXMgdGhhdCB0aGUgVHJhbnNpdGlvbiwgaWYgdHJpZ2dlcmVkLCB3aWxsIG5vdCBleGl0IHRoZSBjb21wb3NpdGUgKHNvdXJjZSkgU3RhdGUsIGJ1dCBpdCB3aWxsIGV4aXQgYW5kIHJlLWVudGVyIGFueSBzdGF0ZSB3aXRoaW4gdGhlIGNvbXBvc2l0ZSBTdGF0ZSB0aGF0IGlzIGluIHRoZSBjdXJyZW50IHN0YXRlIGNvbmZpZ3VyYXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VMaXRlcmFscz4KKyAgICA8ZUxpdGVyYWxzIG5hbWU9ImV4dGVybmFsIiB2YWx1ZT0iMiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkltcGxpZXMgdGhhdCB0aGUgVHJhbnNpdGlvbiwgaWYgdHJpZ2dlcmVkLCB3aWxsIGV4aXQgdGhlIGNvbXBvc2l0ZSAoc291cmNlKSBTdGF0ZS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZUxpdGVyYWxzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJBc3NvY2lhdGlvbkNsYXNzIiBlU3VwZXJUeXBlcz0iIy8vQ2xhc3MgIy8vQXNzb2NpYXRpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgbW9kZWwgZWxlbWVudCB0aGF0IGhhcyBib3RoIEFzc29jaWF0aW9uIGFuZCBDbGFzcyBwcm9wZXJ0aWVzLiBBbiBBc3NvY2lhdGlvbkNsYXNzIGNhbiBiZSBzZWVuIGFzIGFuIEFzc29jaWF0aW9uIHRoYXQgYWxzbyBoYXMgQ2xhc3MgcHJvcGVydGllcywgb3IgYXMgYSBDbGFzcyB0aGF0IGFsc28gaGFzIEFzc29jaWF0aW9uIHByb3BlcnRpZXMuIEl0IG5vdCBvbmx5IGNvbm5lY3RzIGEgc2V0IG9mIENsYXNzaWZpZXJzIGJ1dCBhbHNvIGRlZmluZXMgYSBzZXQgb2YgRmVhdHVyZXMgdGhhdCBiZWxvbmcgdG8gdGhlIEFzc29jaWF0aW9uIGl0c2VsZiBhbmQgbm90IHRvIGFueSBvZiB0aGUgYXNzb2NpYXRlZCBDbGFzc2lmaWVycy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY2Fubm90X2JlX2RlZmluZWQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzZWxmLmVuZFR5cGUoKS0+ZXhjbHVkZXMoc2VsZikgYW5kIHNlbGYuZW5kVHlwZSgpLT5jb2xsZWN0KGV0fGV0Lm9jbEFzVHlwZShDbGFzc2lmaWVyKS5hbGxQYXJlbnRzKCkpLT5mbGF0dGVuKCktPmV4Y2x1ZGVzKHNlbGYpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQW4gQXNzb2NpYXRpb25DbGFzcyBjYW5ub3QgYmUgZGVmaW5lZCBiZXR3ZWVuIGl0c2VsZiBhbmQgc29tZXRoaW5nIGVsc2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJkaXNqb2ludF9hdHRyaWJ1dGVzX2VuZHMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJvd25lZEF0dHJpYnV0ZS0+aW50ZXJzZWN0aW9uKG93bmVkRW5kKS0+aXNFbXB0eSgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG93bmVkIGF0dHJpYnV0ZXMgYW5kIG93bmVkIGVuZHMgb2YgYW4gQXNzb2NpYXRpb25DbGFzcyBhcmUgZGlzam9pbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJDb21wb25lbnQiIGVTdXBlclR5cGVzPSIjLy9DbGFzcyI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBDb21wb25lbnQgcmVwcmVzZW50cyBhIG1vZHVsYXIgcGFydCBvZiBhIHN5c3RlbSB0aGF0IGVuY2Fwc3VsYXRlcyBpdHMgY29udGVudHMgYW5kIHdob3NlIG1hbmlmZXN0YXRpb24gaXMgcmVwbGFjZWFibGUgd2l0aGluIGl0cyBlbnZpcm9ubWVudC4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ibm9fbmVzdGVkX2NsYXNzaWZpZXJzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibmVzdGVkQ2xhc3NpZmllci0+aXNFbXB0eSgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBDb21wb25lbnQgY2Fubm90IG5lc3QgQ2xhc3NpZmllcnMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJub19wYWNrYWdlZF9lbGVtZW50cyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9Im5lc3RpbmdDbGFzcyAmbHQ7PiBudWxsIGltcGxpZXMgcGFja2FnZWRFbGVtZW50LT5pc0VtcHR5KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIENvbXBvbmVudCBuZXN0ZWQgaW4gYSBDbGFzcyBjYW5ub3QgaGF2ZSBhbnkgcGFja2FnZWQgZWxlbWVudHMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjcmVhdGVPd25lZENsYXNzIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0NsYXNzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQ3JlYXRlcyBhKG4pIChhYnN0cmFjdCkgY2xhc3Mgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUgYXMgYSBwYWNrYWdlZCBlbGVtZW50IG9mIHRoaXMgY29tcG9uZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibmFtZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG5hbWUgZm9yIHRoZSBuZXcgY2xhc3MsIG9yIG51bGwuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJpc0Fic3RyYWN0IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iV2hldGhlciB0aGUgbmV3IGNsYXNzIHNob3VsZCBiZSBhYnN0cmFjdC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImNyZWF0ZU93bmVkRW51bWVyYXRpb24iIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vRW51bWVyYXRpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJDcmVhdGVzIGEgZW51bWVyYXRpb24gd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUgYXMgYSBwYWNrYWdlZCBlbGVtZW50IG9mIHRoaXMgY29tcG9uZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0ibmFtZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIG5hbWUgZm9yIHRoZSBuZXcgZW51bWVyYXRpb24sIG9yIG51bGwuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjcmVhdGVPd25lZEludGVyZmFjZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9JbnRlcmZhY2UiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJDcmVhdGVzIGFuIGludGVyZmFjZSB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZSBhcyBhIHBhY2thZ2VkIGVsZW1lbnQgb2YgdGhpcyBjb21wb25lbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJuYW1lIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbmFtZSBmb3IgdGhlIG5ldyBpbnRlcmZhY2UsIG9yIG51bGwuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJjcmVhdGVPd25lZFByaW1pdGl2ZVR5cGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vUHJpbWl0aXZlVHlwZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkNyZWF0ZXMgYSBwcmltaXRpdmUgdHlwZSB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZSBhcyBhIHBhY2thZ2VkIGVsZW1lbnQgb2YgdGhpcyBjb21wb25lbnQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJuYW1lIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbmFtZSBmb3IgdGhlIG5ldyBwcmltaXRpdmUgdHlwZSwgb3IgbnVsbC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImdldFByb3ZpZGVkcyIgb3JkZXJlZD0iZmFsc2UiIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vSW50ZXJmYWNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iRGVyaXZhdGlvbiBmb3IgQ29tcG9uZW50OjovcHJvdmlkZWQiLz4KKyAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8yLjAuMC9VTUwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9Im9yaWdpbmFsTmFtZSIgdmFsdWU9InByb3ZpZGVkIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJsZXQgJiN4OTtyaXMgOiBTZXQoSW50ZXJmYWNlKSA9IGFsbFJlYWxpemVkSW50ZXJmYWNlcygpLCYjeEQ7JiN4QTsgICAgICAgIHJlYWxpemluZ0NsYXNzaWZpZXJzIDogU2V0KENsYXNzaWZpZXIpID0gIHNlbGYucmVhbGl6YXRpb24ucmVhbGl6aW5nQ2xhc3NpZmllci0+dW5pb24oc2VsZi5hbGxQYXJlbnRzKCktPmNvbGxlY3QocmVhbGl6YXRpb24ucmVhbGl6aW5nQ2xhc3NpZmllcikpLT5hc1NldCgpLCYjeEQ7JiN4QTsgICAgICAgIGFsbFJlYWxpemluZ0NsYXNzaWZpZXJzIDogU2V0KENsYXNzaWZpZXIpID0gcmVhbGl6aW5nQ2xhc3NpZmllcnMtPnVuaW9uKHJlYWxpemluZ0NsYXNzaWZpZXJzLmFsbFBhcmVudHMoKSktPmFzU2V0KCksJiN4RDsmI3hBOyAgICAgICAgcmVhbGl6aW5nQ2xhc3NpZmllckludGVyZmFjZXMgOiBTZXQoSW50ZXJmYWNlKSA9IGFsbFJlYWxpemluZ0NsYXNzaWZpZXJzLT5pdGVyYXRlKGM7IHJjaSA6IFNldChJbnRlcmZhY2UpID0gU2V0e30gfCByY2ktPnVuaW9uKGMuYWxsUmVhbGl6ZWRJbnRlcmZhY2VzKCkpKSwmI3hEOyYjeEE7ICAgICAgICBwb3J0cyA6IFNldChQb3J0KSA9IHNlbGYub3duZWRQb3J0LT51bmlvbihhbGxQYXJlbnRzKCktPmNvbGxlY3Qob3duZWRQb3J0KSktPmFzU2V0KCksJiN4RDsmI3hBOyAgICAgICAgcHJvdmlkZWRCeVBvcnRzIDogU2V0KEludGVyZmFjZSkgPSBwb3J0cy5wcm92aWRlZC0+YXNTZXQoKSYjeEQ7JiN4QTtpbiAgICAgcmlzLT51bmlvbihyZWFsaXppbmdDbGFzc2lmaWVySW50ZXJmYWNlcykgLT51bmlvbihwcm92aWRlZEJ5UG9ydHMpLT5hc1NldCgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJnZXRSZXF1aXJlZHMiIG9yZGVyZWQ9ImZhbHNlIiB1cHBlckJvdW5kPSItMSIgZVR5cGU9IiMvL0ludGVyZmFjZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkRlcml2YXRpb24gZm9yIENvbXBvbmVudDo6L3JlcXVpcmVkIi8+CisgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJvcmlnaW5hbE5hbWUiIHZhbHVlPSJyZXF1aXJlZCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibGV0ICYjeDk7dWlzIDogU2V0KEludGVyZmFjZSkgPSBhbGxVc2VkSW50ZXJmYWNlcygpLCYjeEQ7JiN4QTsgICAgICAgIHJlYWxpemluZ0NsYXNzaWZpZXJzIDogU2V0KENsYXNzaWZpZXIpID0gc2VsZi5yZWFsaXphdGlvbi5yZWFsaXppbmdDbGFzc2lmaWVyLT51bmlvbihzZWxmLmFsbFBhcmVudHMoKS0+Y29sbGVjdChyZWFsaXphdGlvbi5yZWFsaXppbmdDbGFzc2lmaWVyKSktPmFzU2V0KCksJiN4RDsmI3hBOyAgICAgICAgYWxsUmVhbGl6aW5nQ2xhc3NpZmllcnMgOiBTZXQoQ2xhc3NpZmllcikgPSByZWFsaXppbmdDbGFzc2lmaWVycy0+dW5pb24ocmVhbGl6aW5nQ2xhc3NpZmllcnMuYWxsUGFyZW50cygpKS0+YXNTZXQoKSwmI3hEOyYjeEE7ICAgICAgICByZWFsaXppbmdDbGFzc2lmaWVySW50ZXJmYWNlcyA6IFNldChJbnRlcmZhY2UpID0gYWxsUmVhbGl6aW5nQ2xhc3NpZmllcnMtPml0ZXJhdGUoYzsgcmNpIDogU2V0KEludGVyZmFjZSkgPSBTZXR7fSB8IHJjaS0+dW5pb24oYy5hbGxVc2VkSW50ZXJmYWNlcygpKSksJiN4RDsmI3hBOyAgICAgICAgcG9ydHMgOiBTZXQoUG9ydCkgPSBzZWxmLm93bmVkUG9ydC0+dW5pb24oYWxsUGFyZW50cygpLT5jb2xsZWN0KG93bmVkUG9ydCkpLT5hc1NldCgpLCYjeEQ7JiN4QTsgICAgICAgIHVzZWRCeVBvcnRzIDogU2V0KEludGVyZmFjZSkgPSBwb3J0cy5yZXF1aXJlZC0+YXNTZXQoKSYjeEQ7JiN4QTtpbiYjeDk7ICAgIHVpcy0+dW5pb24ocmVhbGl6aW5nQ2xhc3NpZmllckludGVyZmFjZXMpLT51bmlvbih1c2VkQnlQb3J0cyktPmFzU2V0KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImlzSW5kaXJlY3RseUluc3RhbnRpYXRlZCIKKyAgICAgICAgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIgorICAgICAgICBkZWZhdWx0VmFsdWVMaXRlcmFsPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSWYgdHJ1ZSwgdGhlIENvbXBvbmVudCBpcyBkZWZpbmVkIGF0IGRlc2lnbi10aW1lLCBidXQgYXQgcnVuLXRpbWUgKG9yIGV4ZWN1dGlvbi10aW1lKSBhbiBvYmplY3Qgc3BlY2lmaWVkIGJ5IHRoZSBDb21wb25lbnQgZG9lcyBub3QgZXhpc3QsIHRoYXQgaXMsIHRoZSBDb21wb25lbnQgaXMgaW5zdGFudGlhdGVkIGluZGlyZWN0bHksIHRocm91Z2ggdGhlIGluc3RhbnRpYXRpb24gb2YgaXRzIHJlYWxpemluZyBDbGFzc2lmaWVycyBvciBwYXJ0cy4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icGFja2FnZWRFbGVtZW50IiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9QYWNrYWdlYWJsZUVsZW1lbnQiIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHNldCBvZiBQYWNrYWdlYWJsZUVsZW1lbnRzIHRoYXQgYSBDb21wb25lbnQgb3ducy4gSW4gdGhlIG5hbWVzcGFjZSBvZiBhIENvbXBvbmVudCwgYWxsIG1vZGVsIGVsZW1lbnRzIHRoYXQgYXJlIGludm9sdmVkIGluIG9yIHJlbGF0ZWQgdG8gaXRzIGRlZmluaXRpb24gbWF5IGJlIG93bmVkIG9yIGltcG9ydGVkIGV4cGxpY2l0bHkuIFRoZXNlIG1heSBpbmNsdWRlIGUuZy4sIENsYXNzZXMsIEludGVyZmFjZXMsIENvbXBvbmVudHMsIFBhY2thZ2VzLCBVc2VDYXNlcywgRGVwZW5kZW5jaWVzIChlLmcuLCBtYXBwaW5ncyksIGFuZCBBcnRpZmFjdHMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9OYW1lc3BhY2Uvb3duZWRNZW1iZXIiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InByb3ZpZGVkIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9JbnRlcmZhY2UiIGNoYW5nZWFibGU9ImZhbHNlIiB2b2xhdGlsZT0idHJ1ZSIgdHJhbnNpZW50PSJ0cnVlIgorICAgICAgICBkZXJpdmVkPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIEludGVyZmFjZXMgdGhhdCB0aGUgQ29tcG9uZW50IGV4cG9zZXMgdG8gaXRzIGVudmlyb25tZW50LiBUaGVzZSBJbnRlcmZhY2VzIG1heSBiZSBSZWFsaXplZCBieSB0aGUgQ29tcG9uZW50IG9yIGFueSBvZiBpdHMgcmVhbGl6aW5nQ2xhc3NpZmllcnMsIG9yIHRoZXkgbWF5IGJlIHRoZSBJbnRlcmZhY2VzIHRoYXQgYXJlIHByb3ZpZGVkIGJ5IGl0cyBwdWJsaWMgUG9ydHMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InJlYWxpemF0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9Db21wb25lbnRSZWFsaXphdGlvbiIgY29udGFpbm1lbnQ9InRydWUiIGVPcHBvc2l0ZT0iIy8vQ29tcG9uZW50UmVhbGl6YXRpb24vYWJzdHJhY3Rpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc2V0IG9mIFJlYWxpemF0aW9ucyBvd25lZCBieSB0aGUgQ29tcG9uZW50LiBSZWFsaXphdGlvbnMgcmVmZXJlbmNlIHRoZSBDbGFzc2lmaWVycyBvZiB3aGljaCB0aGUgQ29tcG9uZW50IGlzIGFuIGFic3RyYWN0aW9uOyBpLmUuLCB0aGF0IHJlYWxpemUgaXRzIGJlaGF2aW9yLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRWxlbWVudC9vd25lZEVsZW1lbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InJlcXVpcmVkIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9JbnRlcmZhY2UiIGNoYW5nZWFibGU9ImZhbHNlIiB2b2xhdGlsZT0idHJ1ZSIgdHJhbnNpZW50PSJ0cnVlIgorICAgICAgICBkZXJpdmVkPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIEludGVyZmFjZXMgdGhhdCB0aGUgQ29tcG9uZW50IHJlcXVpcmVzIGZyb20gb3RoZXIgQ29tcG9uZW50cyBpbiBpdHMgZW52aXJvbm1lbnQgaW4gb3JkZXIgdG8gYmUgYWJsZSB0byBvZmZlciBpdHMgZnVsbCBzZXQgb2YgcHJvdmlkZWQgZnVuY3Rpb25hbGl0eS4gVGhlc2UgSW50ZXJmYWNlcyBtYXkgYmUgdXNlZCBieSB0aGUgQ29tcG9uZW50IG9yIGFueSBvZiBpdHMgcmVhbGl6aW5nQ2xhc3NpZmllcnMsIG9yIHRoZXkgbWF5IGJlIHRoZSBJbnRlcmZhY2VzIHRoYXQgYXJlIHJlcXVpcmVkIGJ5IGl0cyBwdWJsaWMgUG9ydHMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkNvbXBvbmVudFJlYWxpemF0aW9uIiBlU3VwZXJUeXBlcz0iIy8vUmVhbGl6YXRpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJlYWxpemF0aW9uIGlzIHNwZWNpYWxpemVkIHRvIChvcHRpb25hbGx5KSBkZWZpbmUgdGhlIENsYXNzaWZpZXJzIHRoYXQgcmVhbGl6ZSB0aGUgY29udHJhY3Qgb2ZmZXJlZCBieSBhIENvbXBvbmVudCBpbiB0ZXJtcyBvZiBpdHMgcHJvdmlkZWQgYW5kIHJlcXVpcmVkIEludGVyZmFjZXMuIFRoZSBDb21wb25lbnQgZm9ybXMgYW4gYWJzdHJhY3Rpb24gZnJvbSB0aGVzZSB2YXJpb3VzIENsYXNzaWZpZXJzLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJyZWFsaXppbmdDbGFzc2lmaWVyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9DbGFzc2lmaWVyIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIENsYXNzaWZpZXJzIHRoYXQgYXJlIGludm9sdmVkIGluIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgQ29tcG9uZW50IHRoYXQgb3ducyB0aGlzIFJlYWxpemF0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRGVwZW5kZW5jeS9jbGllbnQiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImFic3RyYWN0aW9uIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgZVR5cGU9IiMvL0NvbXBvbmVudCIgZU9wcG9zaXRlPSIjLy9Db21wb25lbnQvcmVhbGl6YXRpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgQ29tcG9uZW50IHRoYXQgb3ducyB0aGlzIENvbXBvbmVudFJlYWxpemF0aW9uIGFuZCB3aGljaCBpcyBpbXBsZW1lbnRlZCBieSBpdHMgcmVhbGl6aW5nIENsYXNzaWZpZXJzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3Vic2V0cyIgcmVmZXJlbmNlcz0iIy8vRGVwZW5kZW5jeS9zdXBwbGllciAjLy9FbGVtZW50L293bmVyIi8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJBY3RvciIgZVN1cGVyVHlwZXM9IiMvL0JlaGF2aW9yZWRDbGFzc2lmaWVyIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBBY3RvciBzcGVjaWZpZXMgYSByb2xlIHBsYXllZCBieSBhIHVzZXIgb3IgYW55IG90aGVyIHN5c3RlbSB0aGF0IGludGVyYWN0cyB3aXRoIHRoZSBzdWJqZWN0LiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJhc3NvY2lhdGlvbnMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJBc3NvY2lhdGlvbi5hbGxJbnN0YW5jZXMoKS0+Zm9yQWxsKCBhIHwmI3hBOyAgYS5tZW1iZXJFbmQtPmNvbGxlY3QodHlwZSktPmluY2x1ZGVzKHNlbGYpIGltcGxpZXMmI3hBOyAgKCYjeEE7ICAgIGEubWVtYmVyRW5kLT5zaXplKCkgPSAyIGFuZCYjeEE7ICAgIGxldCBhY3RvckVuZCA6IFByb3BlcnR5ID0gYS5tZW1iZXJFbmQtPmFueSh0eXBlID0gc2VsZikgaW4mI3hBOyAgICAgIGFjdG9yRW5kLm9wcG9zaXRlLmNsYXNzLm9jbElzS2luZE9mKFVzZUNhc2UpIG9yJiN4QTsgICAgICAoIGFjdG9yRW5kLm9wcG9zaXRlLmNsYXNzLm9jbElzS2luZE9mKENsYXNzKSBhbmQgbm90JiN4QTsgICAgICAgICBhY3RvckVuZC5vcHBvc2l0ZS5jbGFzcy5vY2xJc0tpbmRPZihCZWhhdmlvcikpJiN4QTsgICAgICApJiN4QTsgICkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBBY3RvciBjYW4gb25seSBoYXZlIEFzc29jaWF0aW9ucyB0byBVc2VDYXNlcywgQ29tcG9uZW50cywgYW5kIENsYXNzZXMuIEZ1cnRoZXJtb3JlIHRoZXNlIEFzc29jaWF0aW9ucyBtdXN0IGJlIGJpbmFyeS4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Im11c3RfaGF2ZV9uYW1lIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibmFtZS0+bm90RW1wdHkoKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIEFjdG9yIG11c3QgaGF2ZSBhIG5hbWUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJEdXJhdGlvbiIgZVN1cGVyVHlwZXM9IiMvL1ZhbHVlU3BlY2lmaWNhdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBEdXJhdGlvbiBpcyBhIFZhbHVlU3BlY2lmaWNhdGlvbiB0aGF0IHNwZWNpZmllcyB0aGUgdGVtcG9yYWwgZGlzdGFuY2UgYmV0d2VlbiB0d28gdGltZSBpbnN0YW50cy4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iZHVwbGljYXRlcyI+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIG5hbWU9InN0cmluZ1ZhbHVlIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9InN1cHByZXNzZWRWaXNpYmlsaXR5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vVmFsdWVTcGVjaWZpY2F0aW9uL3N0cmluZ1ZhbHVlIi8+CisgICAgICA8L2NvbnRlbnRzPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJub19leHByX3JlcXVpcmVzX29ic2VydmF0aW9uIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iZXhwciA9IG51bGwgaW1wbGllcyAob2JzZXJ2YXRpb24tPnNpemUoKSA9IDEgYW5kIG9ic2VydmF0aW9uLT5mb3JBbGwob2NsSXNLaW5kT2YoRHVyYXRpb25PYnNlcnZhdGlvbikpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IklmIGEgRHVyYXRpb24gaGFzIG5vIGV4cHIsIHRoZW4gaXQgbXVzdCBoYXZlIGEgc2luZ2xlIG9ic2VydmF0aW9uIHRoYXQgaXMgYSBEdXJhdGlvbk9ic2VydmF0aW9uLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZXhwciIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSIjLy9WYWx1ZVNwZWNpZmljYXRpb24iCisgICAgICAgIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBWYWx1ZVNwZWNpZmljYXRpb24gdGhhdCBldmFsdWF0ZXMgdG8gdGhlIHZhbHVlIG9mIHRoZSBEdXJhdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJvYnNlcnZhdGlvbiIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9Ii0xIiBlVHlwZT0iIy8vT2JzZXJ2YXRpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZWZlcnMgdG8gdGhlIE9ic2VydmF0aW9ucyB0aGF0IGFyZSBpbnZvbHZlZCBpbiB0aGUgY29tcHV0YXRpb24gb2YgdGhlIER1cmF0aW9uIHZhbHVlIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkR1cmF0aW9uQ29uc3RyYWludCIgZVN1cGVyVHlwZXM9IiMvL0ludGVydmFsQ29uc3RyYWludCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBEdXJhdGlvbkNvbnN0cmFpbnQgaXMgYSBDb25zdHJhaW50IHRoYXQgcmVmZXJzIHRvIGEgRHVyYXRpb25JbnRlcnZhbC4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iZHVwbGljYXRlcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3BlY2lmaWNhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZVR5cGUiIHZhbHVlPSJ1bWw6OkR1cmF0aW9uSW50ZXJ2YWwiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJzcGVjaWZpY2F0aW9uIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIKKyAgICAgICAgICBlVHlwZT0iIy8vVmFsdWVTcGVjaWZpY2F0aW9uIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgRHVyYXRpb25JbnRlcnZhbCBjb25zdHJhaW5pbmcgdGhlIGR1cmF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vSW50ZXJ2YWxDb25zdHJhaW50LyVkdXBsaWNhdGVzJS9zcGVjaWZpY2F0aW9uICMvL0NvbnN0cmFpbnQvc3BlY2lmaWNhdGlvbiIvPgorICAgICAgPC9jb250ZW50cz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZmlyc3RfZXZlbnRfbXVsdGlwbGljaXR5IiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iaWYgKGNvbnN0cmFpbmVkRWxlbWVudC0+c2l6ZSgpID0gMikmI3hEOyYjeEE7ICB0aGVuIChmaXJzdEV2ZW50LT5zaXplKCkgPSAyKSBlbHNlIChmaXJzdEV2ZW50LT5zaXplKCkgPSAwKSAmI3hEOyYjeEE7ZW5kaWYiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgbXVsdGlwbGljaXR5IG9mIGZpcnN0RXZlbnQgbXVzdCBiZSAyIGlmIHRoZSBtdWx0aXBsaWNpdHkgb2YgY29uc3RyYWluZWRFbGVtZW50IGlzIDIuIE90aGVyd2lzZSB0aGUgbXVsdGlwbGljaXR5IG9mIGZpcnN0RXZlbnQgaXMgMC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImRpYWdub3N0aWNzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FRGlhZ25vc3RpY0NoYWluIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjaGFpbiBvZiBkaWFnbm9zdGljcyB0byB3aGljaCBwcm9ibGVtcyBhcmUgdG8gYmUgYXBwZW5kZWQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJjb250ZXh0Ij4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBjYWNoZSBvZiBjb250ZXh0LXNwZWNpZmljIGluZm9ybWF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVHZW5lcmljVHlwZSBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FTWFwIj4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgICA8ZVR5cGVBcmd1bWVudHMgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUphdmFPYmplY3QiLz4KKyAgICAgICAgPC9lR2VuZXJpY1R5cGU+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9Imhhc19vbmVfb3JfdHdvX2NvbnN0cmFpbmVkRWxlbWVudHMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJjb25zdHJhaW5lZEVsZW1lbnQtPnNpemUoKSA9IDEgb3IgY29uc3RyYWluZWRFbGVtZW50LT5zaXplKCk9MiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgRHVyYXRpb25Db25zdHJhaW50IGhhcyBlaXRoZXIgb25lIG9yIHR3byBjb25zdHJhaW5lZEVsZW1lbnRzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iZmlyc3RFdmVudCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIHVwcGVyQm91bmQ9IjIiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHZhbHVlIG9mIGZpcnN0RXZlbnRbaV0gaXMgcmVsYXRlZCB0byBjb25zdHJhaW5lZEVsZW1lbnRbaV0gKHdoZXJlIGkgaXMgMSBvciAyKS4gSWYgZmlyc3RFdmVudFtpXSBpcyB0cnVlLCB0aGVuIHRoZSBjb3JyZXNwb25kaW5nIG9ic2VydmF0aW9uIGV2ZW50IGlzIHRoZSBmaXJzdCB0aW1lIGluc3RhbnQgdGhlIGV4ZWN1dGlvbiBlbnRlcnMgY29uc3RyYWluZWRFbGVtZW50W2ldLiBJZiBmaXJzdEV2ZW50W2ldIGlzIGZhbHNlLCB0aGVuIHRoZSBjb3JyZXNwb25kaW5nIG9ic2VydmF0aW9uIGV2ZW50IGlzIHRoZSBsYXN0IHRpbWUgaW5zdGFudCB0aGUgZXhlY3V0aW9uIGlzIHdpdGhpbiBjb25zdHJhaW5lZEVsZW1lbnRbaV0uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkludGVydmFsQ29uc3RyYWludCIgZVN1cGVyVHlwZXM9IiMvL0NvbnN0cmFpbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkFuIEludGVydmFsQ29uc3RyYWludCBpcyBhIENvbnN0cmFpbnQgdGhhdCBpcyBzcGVjaWZpZWQgYnkgYW4gSW50ZXJ2YWwuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9ImR1cGxpY2F0ZXMiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InNwZWNpZmljYXRpb24iPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImVUeXBlIiB2YWx1ZT0idW1sOjpJbnRlcnZhbCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InNwZWNpZmljYXRpb24iIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIgorICAgICAgICAgIGVUeXBlPSIjLy9WYWx1ZVNwZWNpZmljYXRpb24iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBJbnRlcnZhbCB0aGF0IHNwZWNpZmllcyB0aGUgY29uZGl0aW9uIG9mIHRoZSBJbnRlcnZhbENvbnN0cmFpbnQuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9Db25zdHJhaW50L3NwZWNpZmljYXRpb24iLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkludGVydmFsIiBlU3VwZXJUeXBlcz0iIy8vVmFsdWVTcGVjaWZpY2F0aW9uIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBJbnRlcnZhbCBkZWZpbmVzIHRoZSByYW5nZSBiZXR3ZWVuIHR3byBWYWx1ZVNwZWNpZmljYXRpb25zLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJtYXgiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIgorICAgICAgICBlVHlwZT0iIy8vVmFsdWVTcGVjaWZpY2F0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmVmZXJzIHRvIHRoZSBWYWx1ZVNwZWNpZmljYXRpb24gZGVub3RpbmcgdGhlIG1heGltdW0gdmFsdWUgb2YgdGhlIHJhbmdlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJtaW4iIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIgorICAgICAgICBlVHlwZT0iIy8vVmFsdWVTcGVjaWZpY2F0aW9uIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmVmZXJzIHRvIHRoZSBWYWx1ZVNwZWNpZmljYXRpb24gZGVub3RpbmcgdGhlIG1pbmltdW0gdmFsdWUgb2YgdGhlIHJhbmdlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJEdXJhdGlvbkludGVydmFsIiBlU3VwZXJUeXBlcz0iIy8vSW50ZXJ2YWwiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgRHVyYXRpb25JbnRlcnZhbCBkZWZpbmVzIHRoZSByYW5nZSBiZXR3ZWVuIHR3byBEdXJhdGlvbnMuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9ImR1cGxpY2F0ZXMiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Im1heCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZVR5cGUiIHZhbHVlPSJ1bWw6OkR1cmF0aW9uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJtaW4iPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImVUeXBlIiB2YWx1ZT0idW1sOjpEdXJhdGlvbiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im1heCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiCisgICAgICAgICAgZVR5cGU9IiMvL1ZhbHVlU3BlY2lmaWNhdGlvbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZWZlcnMgdG8gdGhlIER1cmF0aW9uIGRlbm90aW5nIHRoZSBtYXhpbXVtIHZhbHVlIG9mIHRoZSByYW5nZS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL0ludGVydmFsL21heCIvPgorICAgICAgPC9jb250ZW50cz4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0ibWluIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIKKyAgICAgICAgICBlVHlwZT0iIy8vVmFsdWVTcGVjaWZpY2F0aW9uIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJlZmVycyB0byB0aGUgRHVyYXRpb24gZGVub3RpbmcgdGhlIG1pbmltdW0gdmFsdWUgb2YgdGhlIHJhbmdlLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vSW50ZXJ2YWwvbWluIi8+CisgICAgICA8L2NvbnRlbnRzPgorICAgIDwvZUFubm90YXRpb25zPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJEdXJhdGlvbk9ic2VydmF0aW9uIiBlU3VwZXJUeXBlcz0iIy8vT2JzZXJ2YXRpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgRHVyYXRpb25PYnNlcnZhdGlvbiBpcyBhIHJlZmVyZW5jZSB0byBhIGR1cmF0aW9uIGR1cmluZyBhbiBleGVjdXRpb24uIEl0IHBvaW50cyBvdXQgdGhlIE5hbWVkRWxlbWVudChzKSBpbiB0aGUgbW9kZWwgdG8gb2JzZXJ2ZSBhbmQgd2hldGhlciB0aGUgb2JzZXJ2YXRpb25zIGFyZSB3aGVuIHRoaXMgTmFtZWRFbGVtZW50IGlzIGVudGVyZWQgb3Igd2hlbiBpdCBpcyBleGl0ZWQuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVPcGVyYXRpb25zIG5hbWU9ImZpcnN0X2V2ZW50X211bHRpcGxpY2l0eSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9ImlmIChldmVudC0+c2l6ZSgpID0gMikmI3hEOyYjeEE7ICB0aGVuIChmaXJzdEV2ZW50LT5zaXplKCkgPSAyKSBlbHNlIChmaXJzdEV2ZW50LT5zaXplKCkgPSAwKSYjeEQ7JiN4QTtlbmRpZiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBtdWx0aXBsaWNpdHkgb2YgZmlyc3RFdmVudCBtdXN0IGJlIDIgaWYgdGhlIG11bHRpcGxpY2l0eSBvZiBldmVudCBpcyAyLiBPdGhlcndpc2UgdGhlIG11bHRpcGxpY2l0eSBvZiBmaXJzdEV2ZW50IGlzIDAuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJldmVudCIgbG93ZXJCb3VuZD0iMSIgdXBwZXJCb3VuZD0iMiIKKyAgICAgICAgZVR5cGU9IiMvL05hbWVkRWxlbWVudCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBEdXJhdGlvbk9ic2VydmF0aW9uIGlzIGRldGVybWluZWQgYXMgdGhlIGR1cmF0aW9uIGJldHdlZW4gdGhlIGVudGVyaW5nIG9yIGV4aXRpbmcgb2YgYSBzaW5nbGUgZXZlbnQgRWxlbWVudCBkdXJpbmcgZXhlY3V0aW9uLCBvciB0aGUgZW50ZXJpbmcvZXhpdGluZyBvZiBvbmUgZXZlbnQgRWxlbWVudCBhbmQgdGhlIGVudGVyaW5nL2V4aXRpbmcgb2YgYSBzZWNvbmQuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImZpcnN0RXZlbnQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICB1cHBlckJvdW5kPSIyIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSB2YWx1ZSBvZiBmaXJzdEV2ZW50W2ldIGlzIHJlbGF0ZWQgdG8gZXZlbnRbaV0gKHdoZXJlIGkgaXMgMSBvciAyKS4gSWYgZmlyc3RFdmVudFtpXSBpcyB0cnVlLCB0aGVuIHRoZSBjb3JyZXNwb25kaW5nIG9ic2VydmF0aW9uIGV2ZW50IGlzIHRoZSBmaXJzdCB0aW1lIGluc3RhbnQgdGhlIGV4ZWN1dGlvbiBlbnRlcnMgZXZlbnRbaV0uIElmIGZpcnN0RXZlbnRbaV0gaXMgZmFsc2UsIHRoZW4gdGhlIGNvcnJlc3BvbmRpbmcgb2JzZXJ2YXRpb24gZXZlbnQgaXMgdGhlIHRpbWUgaW5zdGFudCB0aGUgZXhlY3V0aW9uIGV4aXRzIGV2ZW50W2ldLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJMaXRlcmFsQm9vbGVhbiIgZVN1cGVyVHlwZXM9IiMvL0xpdGVyYWxTcGVjaWZpY2F0aW9uIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIExpdGVyYWxCb29sZWFuIGlzIGEgc3BlY2lmaWNhdGlvbiBvZiBhIEJvb2xlYW4gdmFsdWUuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9ImR1cGxpY2F0ZXMiPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBuYW1lPSJzdHJpbmdWYWx1ZSIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL1ZhbHVlU3BlY2lmaWNhdGlvbi9zdHJpbmdWYWx1ZSIvPgorICAgICAgPC9jb250ZW50cz4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgbmFtZT0iYm9vbGVhblZhbHVlIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IGJvb2xlYW5WYWx1ZSgpIGdpdmVzIHRoZSB2YWx1ZS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL1ZhbHVlU3BlY2lmaWNhdGlvbi9ib29sZWFuVmFsdWUiLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0idmFsdWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2NvbnRlbnRzPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBuYW1lPSJpc0NvbXB1dGFibGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIgorICAgICAgICAgIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBpc0NvbXB1dGFibGUoKSBpcyByZWRlZmluZWQgdG8gYmUgdHJ1ZS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL1ZhbHVlU3BlY2lmaWNhdGlvbi9pc0NvbXB1dGFibGUiLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvY29udGVudHM+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InZhbHVlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iIGRlZmF1bHRWYWx1ZUxpdGVyYWw9ImZhbHNlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHNwZWNpZmllZCBCb29sZWFuIHZhbHVlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJMaXRlcmFsU3BlY2lmaWNhdGlvbiIgYWJzdHJhY3Q9InRydWUiCisgICAgICBlU3VwZXJUeXBlcz0iIy8vVmFsdWVTcGVjaWZpY2F0aW9uIj4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIExpdGVyYWxTcGVjaWZpY2F0aW9uIGlkZW50aWZpZXMgYSBsaXRlcmFsIGNvbnN0YW50IGJlaW5nIG1vZGVsZWQuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkxpdGVyYWxJbnRlZ2VyIiBlU3VwZXJUeXBlcz0iIy8vTGl0ZXJhbFNwZWNpZmljYXRpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgTGl0ZXJhbEludGVnZXIgaXMgYSBzcGVjaWZpY2F0aW9uIG9mIGFuIEludGVnZXIgdmFsdWUuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9ImR1cGxpY2F0ZXMiPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBuYW1lPSJzdHJpbmdWYWx1ZSIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL1ZhbHVlU3BlY2lmaWNhdGlvbi9zdHJpbmdWYWx1ZSIvPgorICAgICAgPC9jb250ZW50cz4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgbmFtZT0iaW50ZWdlclZhbHVlIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0ludGVnZXIiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IGludGVnZXJWYWx1ZSgpIGdpdmVzIHRoZSB2YWx1ZS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL1ZhbHVlU3BlY2lmaWNhdGlvbi9pbnRlZ2VyVmFsdWUiLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0idmFsdWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2NvbnRlbnRzPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBuYW1lPSJpc0NvbXB1dGFibGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIgorICAgICAgICAgIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBpc0NvbXB1dGFibGUoKSBpcyByZWRlZmluZWQgdG8gYmUgdHJ1ZS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL1ZhbHVlU3BlY2lmaWNhdGlvbi9pc0NvbXB1dGFibGUiLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvY29udGVudHM+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InZhbHVlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0ludGVnZXIiIGRlZmF1bHRWYWx1ZUxpdGVyYWw9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc3BlY2lmaWVkIEludGVnZXIgdmFsdWUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkxpdGVyYWxOdWxsIiBlU3VwZXJUeXBlcz0iIy8vTGl0ZXJhbFNwZWNpZmljYXRpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgTGl0ZXJhbE51bGwgc3BlY2lmaWVzIHRoZSBsYWNrIG9mIGEgdmFsdWUuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9ImR1cGxpY2F0ZXMiPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBuYW1lPSJpc0NvbXB1dGFibGUiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIgorICAgICAgICAgIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSBpc0NvbXB1dGFibGUoKSBpcyByZWRlZmluZWQgdG8gYmUgdHJ1ZS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL1ZhbHVlU3BlY2lmaWNhdGlvbi9pc0NvbXB1dGFibGUiLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvY29udGVudHM+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIG5hbWU9ImlzTnVsbCIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiCisgICAgICAgICAgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IGlzTnVsbCgpIHJldHVybnMgdHJ1ZS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL1ZhbHVlU3BlY2lmaWNhdGlvbi9pc051bGwiLz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0idHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvY29udGVudHM+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkxpdGVyYWxSZWFsIiBlU3VwZXJUeXBlcz0iIy8vTGl0ZXJhbFNwZWNpZmljYXRpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgTGl0ZXJhbFJlYWwgaXMgYSBzcGVjaWZpY2F0aW9uIG9mIGEgUmVhbCB2YWx1ZS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iZHVwbGljYXRlcyI+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIG5hbWU9InN0cmluZ1ZhbHVlIiBvcmRlcmVkPSJmYWxzZSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1N0cmluZyI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL1ZhbHVlU3BlY2lmaWNhdGlvbi9zdHJpbmdWYWx1ZSIvPgorICAgICAgPC9jb250ZW50cz4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgbmFtZT0iaXNDb21wdXRhYmxlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIKKyAgICAgICAgICBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgaXNDb21wdXRhYmxlKCkgaXMgcmVkZWZpbmVkIHRvIGJlIHRydWUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9WYWx1ZVNwZWNpZmljYXRpb24vaXNDb21wdXRhYmxlIi8+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2NvbnRlbnRzPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBuYW1lPSJyZWFsVmFsdWUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vUmVhbCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgcmVhbFZhbHVlKCkgZ2l2ZXMgdGhlIHZhbHVlLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vVmFsdWVTcGVjaWZpY2F0aW9uL3JlYWxWYWx1ZSIvPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJ2YWx1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvY29udGVudHM+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InZhbHVlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1JlYWwiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc3BlY2lmaWVkIFJlYWwgdmFsdWUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkxpdGVyYWxTdHJpbmciIGVTdXBlclR5cGVzPSIjLy9MaXRlcmFsU3BlY2lmaWNhdGlvbiI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBMaXRlcmFsU3RyaW5nIGlzIGEgc3BlY2lmaWNhdGlvbiBvZiBhIFN0cmluZyB2YWx1ZS4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iZHVwbGljYXRlcyI+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIG5hbWU9ImludGVnZXJWYWx1ZSIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9JbnRlZ2VyIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9WYWx1ZVNwZWNpZmljYXRpb24vaW50ZWdlclZhbHVlIi8+CisgICAgICA8L2NvbnRlbnRzPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBuYW1lPSJ1bmxpbWl0ZWRWYWx1ZSIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1VubGltaXRlZE5hdHVyYWwiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJzdXBwcmVzc2VkVmlzaWJpbGl0eSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL1ZhbHVlU3BlY2lmaWNhdGlvbi91bmxpbWl0ZWRWYWx1ZSIvPgorICAgICAgPC9jb250ZW50cz4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgbmFtZT0iaXNDb21wdXRhYmxlIiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIKKyAgICAgICAgICBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgaXNDb21wdXRhYmxlKCkgaXMgcmVkZWZpbmVkIHRvIGJlIHRydWUuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9WYWx1ZVNwZWNpZmljYXRpb24vaXNDb21wdXRhYmxlIi8+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InRydWUiLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2NvbnRlbnRzPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBuYW1lPSJzdHJpbmdWYWx1ZSIgb3JkZXJlZD0iZmFsc2UiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9TdHJpbmciPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IHN0cmluZ1ZhbHVlKCkgZ2l2ZXMgdGhlIHZhbHVlLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vVmFsdWVTcGVjaWZpY2F0aW9uL3N0cmluZ1ZhbHVlIi8+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9InZhbHVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9jb250ZW50cz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0idmFsdWUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIiB1bnNldHRhYmxlPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHNwZWNpZmllZCBTdHJpbmcgdmFsdWUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IkxpdGVyYWxVbmxpbWl0ZWROYXR1cmFsIiBlU3VwZXJUeXBlcz0iIy8vTGl0ZXJhbFNwZWNpZmljYXRpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgTGl0ZXJhbFVubGltaXRlZE5hdHVyYWwgaXMgYSBzcGVjaWZpY2F0aW9uIG9mIGFuIFVubGltaXRlZE5hdHVyYWwgbnVtYmVyLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJkdXBsaWNhdGVzIj4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgbmFtZT0ic3RyaW5nVmFsdWUiIG9yZGVyZWQ9ImZhbHNlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vU3RyaW5nIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0ic3VwcHJlc3NlZFZpc2liaWxpdHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9WYWx1ZVNwZWNpZmljYXRpb24vc3RyaW5nVmFsdWUiLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVPcGVyYXRpb24iIG5hbWU9ImlzQ29tcHV0YWJsZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiCisgICAgICAgICAgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL0Jvb2xlYW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHF1ZXJ5IGlzQ29tcHV0YWJsZSgpIGlzIHJlZGVmaW5lZCB0byBiZSB0cnVlLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vVmFsdWVTcGVjaWZpY2F0aW9uL2lzQ29tcHV0YWJsZSIvPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJ0cnVlIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPC9jb250ZW50cz4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RU9wZXJhdGlvbiIgbmFtZT0idW5saW1pdGVkVmFsdWUiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICAgIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9VbmxpbWl0ZWROYXR1cmFsIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBxdWVyeSB1bmxpbWl0ZWRWYWx1ZSgpIGdpdmVzIHRoZSB2YWx1ZS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL1ZhbHVlU3BlY2lmaWNhdGlvbi91bmxpbWl0ZWRWYWx1ZSIvPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJ2YWx1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvY29udGVudHM+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9InZhbHVlIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgbG93ZXJCb3VuZD0iMSIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSB0eXBlcy5lY29yZSMvL1VubGltaXRlZE5hdHVyYWwiIGRlZmF1bHRWYWx1ZUxpdGVyYWw9IjAiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgc3BlY2lmaWVkIFVubGltaXRlZE5hdHVyYWwgdmFsdWUuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgIDwvZUNsYXNzaWZpZXJzPgorICA8ZUNsYXNzaWZpZXJzIHhzaTp0eXBlPSJlY29yZTpFQ2xhc3MiIG5hbWU9IlRpbWVDb25zdHJhaW50IiBlU3VwZXJUeXBlcz0iIy8vSW50ZXJ2YWxDb25zdHJhaW50Ij4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFRpbWVDb25zdHJhaW50IGlzIGEgQ29uc3RyYWludCB0aGF0IHJlZmVycyB0byBhIFRpbWVJbnRlcnZhbC4iLz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iZHVwbGljYXRlcyI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ic3BlY2lmaWNhdGlvbiI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZVR5cGUiIHZhbHVlPSJ1bWw6OlRpbWVJbnRlcnZhbCIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InNwZWNpZmljYXRpb24iIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIgorICAgICAgICAgIGVUeXBlPSIjLy9WYWx1ZVNwZWNpZmljYXRpb24iIGNvbnRhaW5tZW50PSJ0cnVlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZVRpbWVJbnRlcnZhbCBjb25zdHJhaW5pbmcgdGhlIGR1cmF0aW9uLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5lcyIgcmVmZXJlbmNlcz0iIy8vSW50ZXJ2YWxDb25zdHJhaW50LyVkdXBsaWNhdGVzJS9zcGVjaWZpY2F0aW9uICMvL0NvbnN0cmFpbnQvc3BlY2lmaWNhdGlvbiIvPgorICAgICAgPC9jb250ZW50cz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iaGFzX29uZV9jb25zdHJhaW5lZEVsZW1lbnQiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJjb25zdHJhaW5lZEVsZW1lbnQtPnNpemUoKSA9IDEiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIFRpbWVDb25zdHJhaW50IGhhcyBvbmUgY29uc3RyYWluZWRFbGVtZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iZmlyc3RFdmVudCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHZhbHVlIG9mIGZpcnN0RXZlbnQgaXMgcmVsYXRlZCB0byB0aGUgY29uc3RyYWluZWRFbGVtZW50LiBJZiBmaXJzdEV2ZW50IGlzIHRydWUsIHRoZW4gdGhlIGNvcnJlc3BvbmRpbmcgb2JzZXJ2YXRpb24gZXZlbnQgaXMgdGhlIGZpcnN0IHRpbWUgaW5zdGFudCB0aGUgZXhlY3V0aW9uIGVudGVycyB0aGUgY29uc3RyYWluZWRFbGVtZW50LiBJZiBmaXJzdEV2ZW50IGlzIGZhbHNlLCB0aGVuIHRoZSBjb3JyZXNwb25kaW5nIG9ic2VydmF0aW9uIGV2ZW50IGlzIHRoZSBsYXN0IHRpbWUgaW5zdGFudCB0aGUgZXhlY3V0aW9uIGlzIHdpdGhpbiB0aGUgY29uc3RyYWluZWRFbGVtZW50LiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKyAgPGVDbGFzc2lmaWVycyB4c2k6dHlwZT0iZWNvcmU6RUNsYXNzIiBuYW1lPSJUaW1lSW50ZXJ2YWwiIGVTdXBlclR5cGVzPSIjLy9JbnRlcnZhbCI+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBUaW1lSW50ZXJ2YWwgZGVmaW5lcyB0aGUgcmFuZ2UgYmV0d2VlbiB0d28gVGltZUV4cHJlc3Npb25zLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJkdXBsaWNhdGVzIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJtYXgiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImVUeXBlIiB2YWx1ZT0idW1sOjpUaW1lRXhwcmVzc2lvbiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0ibWluIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJlVHlwZSIgdmFsdWU9InVtbDo6VGltZUV4cHJlc3Npb24iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJtYXgiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIgorICAgICAgICAgIGVUeXBlPSIjLy9WYWx1ZVNwZWNpZmljYXRpb24iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iUmVmZXJzIHRvIHRoZSBUaW1lRXhwcmVzc2lvbiBkZW5vdGluZyB0aGUgbWF4aW11bSB2YWx1ZSBvZiB0aGUgcmFuZ2UuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9JbnRlcnZhbC9tYXgiLz4KKyAgICAgIDwvY29udGVudHM+CisgICAgICA8Y29udGVudHMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9Im1pbiIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiCisgICAgICAgICAgZVR5cGU9IiMvL1ZhbHVlU3BlY2lmaWNhdGlvbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJSZWZlcnMgdG8gdGhlIFRpbWVFeHByZXNzaW9uIGRlbm90aW5nIHRoZSBtaW5pbXVtIHZhbHVlIG9mIHRoZSByYW5nZS4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL0ludGVydmFsL21pbiIvPgorICAgICAgPC9jb250ZW50cz4KKyAgICA8L2VBbm5vdGF0aW9ucz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iVGltZU9ic2VydmF0aW9uIiBlU3VwZXJUeXBlcz0iIy8vT2JzZXJ2YXRpb24iPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgVGltZU9ic2VydmF0aW9uIGlzIGEgcmVmZXJlbmNlIHRvIGEgdGltZSBpbnN0YW50IGR1cmluZyBhbiBleGVjdXRpb24uIEl0IHBvaW50cyBvdXQgdGhlIE5hbWVkRWxlbWVudCBpbiB0aGUgbW9kZWwgdG8gb2JzZXJ2ZSBhbmQgd2hldGhlciB0aGUgb2JzZXJ2YXRpb24gaXMgd2hlbiB0aGlzIE5hbWVkRWxlbWVudCBpcyBlbnRlcmVkIG9yIHdoZW4gaXQgaXMgZXhpdGVkLiIvPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJldmVudCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9OYW1lZEVsZW1lbnQiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgVGltZU9ic2VydmF0aW9uIGlzIGRldGVybWluZWQgYnkgdGhlIGVudGVyaW5nIG9yIGV4aXRpbmcgb2YgdGhlIGV2ZW50IEVsZW1lbnQgZHVyaW5nIGV4ZWN1dGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RUF0dHJpYnV0ZSIgbmFtZT0iZmlyc3RFdmVudCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgdHlwZXMuZWNvcmUjLy9Cb29sZWFuIiBkZWZhdWx0VmFsdWVMaXRlcmFsPSJ0cnVlIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIHZhbHVlIG9mIGZpcnN0RXZlbnQgaXMgcmVsYXRlZCB0byB0aGUgZXZlbnQuIElmIGZpcnN0RXZlbnQgaXMgdHJ1ZSwgdGhlbiB0aGUgY29ycmVzcG9uZGluZyBvYnNlcnZhdGlvbiBldmVudCBpcyB0aGUgZmlyc3QgdGltZSBpbnN0YW50IHRoZSBleGVjdXRpb24gZW50ZXJzIHRoZSBldmVudCBFbGVtZW50LiBJZiBmaXJzdEV2ZW50IGlzIGZhbHNlLCB0aGVuIHRoZSBjb3JyZXNwb25kaW5nIG9ic2VydmF0aW9uIGV2ZW50IGlzIHRoZSB0aW1lIGluc3RhbnQgdGhlIGV4ZWN1dGlvbiBleGl0cyB0aGUgZXZlbnQgRWxlbWVudC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgPC9lQ2xhc3NpZmllcnM+CisgIDxlQ2xhc3NpZmllcnMgeHNpOnR5cGU9ImVjb3JlOkVDbGFzcyIgbmFtZT0iVHJhbnNpdGlvbiIgZVN1cGVyVHlwZXM9IiMvL05hbWVzcGFjZSAjLy9SZWRlZmluYWJsZUVsZW1lbnQiPgorICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgVHJhbnNpdGlvbiByZXByZXNlbnRzIGFuIGFyYyBiZXR3ZWVuIGV4YWN0bHkgb25lIHNvdXJjZSBWZXJ0ZXggYW5kIGV4YWN0bHkgb25lIFRhcmdldCB2ZXJ0ZXggKHRoZSBzb3VyY2UgYW5kIHRhcmdldHMgbWF5IGJlIHRoZSBzYW1lIFZlcnRleCkuIEl0IG1heSBmb3JtIHBhcnQgb2YgYSBjb21wb3VuZCB0cmFuc2l0aW9uLCB3aGljaCB0YWtlcyB0aGUgU3RhdGVNYWNoaW5lIGZyb20gb25lIHN0ZWFkeSBTdGF0ZSBjb25maWd1cmF0aW9uIHRvIGFub3RoZXIsIHJlcHJlc2VudGluZyB0aGUgZnVsbCByZXNwb25zZSBvZiB0aGUgU3RhdGVNYWNoaW5lIHRvIGFuIG9jY3VycmVuY2Ugb2YgYW4gRXZlbnQgdGhhdCB0cmlnZ2VyZWQgaXQuIi8+CisgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9ImR1cGxpY2F0ZXMiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InJlZGVmaW5pdGlvbkNvbnRleHQiPgorICAgICAgICA8ZGV0YWlscyBrZXk9Imxvd2VyQm91bmQiIHZhbHVlPSIxIi8+CisgICAgICAgIDxkZXRhaWxzIGtleT0idXBwZXJCb3VuZCIgdmFsdWU9IjEiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGNvbnRlbnRzIHhzaTp0eXBlPSJlY29yZTpFT3BlcmF0aW9uIiBuYW1lPSJpc0NvbnNpc3RlbnRXaXRoIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIHR5cGVzLmVjb3JlIy8vQm9vbGVhbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgaXNDb25zaXN0ZW50V2l0aCgpIHNwZWNpZmllcyB0aGF0IGEgcmVkZWZpbmluZyBUcmFuc2l0aW9uIGlzIGNvbnNpc3RlbnQgd2l0aCBhIHJlZGVmaW5lZCBUcmFuc2l0aW9uIHByb3ZpZGVkIHRoYXQgdGhlIHJlZGVmaW5pbmcgVHJhbnNpdGlvbiBoYXMgdGhlIGZvbGxvd2luZyByZWxhdGlvbiB0byB0aGUgcmVkZWZpbmVkIFRyYW5zaXRpb246IEEgcmVkZWZpbmluZyBUcmFuc2l0aW9uIHJlZGVmaW5lcyBhbGwgcHJvcGVydGllcyBvZiB0aGUgY29ycmVzcG9uZGluZyByZWRlZmluZWQgVHJhbnNpdGlvbiBleGNlcHQgdGhlIHNvdXJjZSBTdGF0ZSBhbmQgdGhlIFRyaWdnZXIuIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0icmVkZWZpbmVzIiByZWZlcmVuY2VzPSIjLy9SZWRlZmluYWJsZUVsZW1lbnQvaXNDb25zaXN0ZW50V2l0aCIvPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSItLSB0aGUgZm9sbG93aW5nIGlzIG1lcmVseSBhIGRlZmF1bHQgYm9keTsgaXQgaXMgZXhwZWN0ZWQgdGhhdCB0aGUgc3BlY2lmaWMgZm9ybSBvZiB0aGlzIGNvbnN0cmFpbnQgd2lsbCBiZSBzcGVjaWZpZWQgYnkgcHJvZmlsZXMmI3hEOyYjeEE7dHJ1ZSIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9InJlZGVmaW5pbmdFbGVtZW50IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL1JlZGVmaW5hYmxlRWxlbWVudCIvPgorICAgICAgPC9jb250ZW50cz4KKyAgICAgIDxjb250ZW50cyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0icmVkZWZpbml0aW9uQ29udGV4dCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9DbGFzc2lmaWVyIiBjaGFuZ2VhYmxlPSJmYWxzZSIgdm9sYXRpbGU9InRydWUiCisgICAgICAgICAgdHJhbnNpZW50PSJ0cnVlIiBkZXJpdmVkPSJ0cnVlIj4KKyAgICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlJlZmVyZW5jZXMgdGhlIENsYXNzaWZpZXIgaW4gd2hpY2ggY29udGV4dCB0aGlzIGVsZW1lbnQgbWF5IGJlIHJlZGVmaW5lZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJyZWRlZmluZXMiIHJlZmVyZW5jZXM9IiMvL1JlZGVmaW5hYmxlRWxlbWVudC9yZWRlZmluaXRpb25Db250ZXh0Ii8+CisgICAgICA8L2NvbnRlbnRzPgorICAgIDwvZUFubm90YXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJzdGF0ZV9pc19leHRlcm5hbCIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRUJvb2xlYW4iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvdW1sMi8xLjEuMC9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iYm9keSIgdmFsdWU9IihraW5kID0gVHJhbnNpdGlvbktpbmQ6OmV4dGVybmFsKSBpbXBsaWVzJiN4RDsmI3hBOyYjeDk7bm90IChzb3VyY2Uub2NsSXNLaW5kT2YoUHNldWRvc3RhdGUpIGFuZCBzb3VyY2Uub2NsQXNUeXBlKFBzZXVkb3N0YXRlKS5raW5kID0gUHNldWRvc3RhdGVLaW5kOjplbnRyeVBvaW50KSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgVHJhbnNpdGlvbiB3aXRoIGtpbmQgZXh0ZXJuYWwgY2FuIHNvdXJjZSBhbnkgVmVydGV4IGV4Y2VwdCBlbnRyeSBwb2ludHMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJqb2luX3NlZ21lbnRfZ3VhcmRzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iKHRhcmdldC5vY2xJc0tpbmRPZihQc2V1ZG9zdGF0ZSkgYW5kIHRhcmdldC5vY2xBc1R5cGUoUHNldWRvc3RhdGUpLmtpbmQgPSBQc2V1ZG9zdGF0ZUtpbmQ6OmpvaW4pIGltcGxpZXMgKGd1YXJkID0gbnVsbCBhbmQgdHJpZ2dlci0+aXNFbXB0eSgpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgam9pbiBzZWdtZW50IG11c3Qgbm90IGhhdmUgR3VhcmRzIG9yIFRyaWdnZXJzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ic3RhdGVfaXNfaW50ZXJuYWwiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIoa2luZCA9IFRyYW5zaXRpb25LaW5kOjppbnRlcm5hbCkgaW1wbGllcyYjeEQ7JiN4QTsmI3g5OyYjeDk7KHNvdXJjZS5vY2xJc0tpbmRPZiAoU3RhdGUpIGFuZCBzb3VyY2UgPSB0YXJnZXQpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iQSBUcmFuc2l0aW9uIHdpdGgga2luZCBpbnRlcm5hbCBtdXN0IGhhdmUgYSBTdGF0ZSBhcyBpdHMgc291cmNlLCBhbmQgaXRzIHNvdXJjZSBhbmQgdGFyZ2V0IG11c3QgYmUgZXF1YWwuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJvdXRnb2luZ19wc2V1ZG9zdGF0ZXMiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJzb3VyY2Uub2NsSXNLaW5kT2YoUHNldWRvc3RhdGUpIGFuZCAoc291cmNlLm9jbEFzVHlwZShQc2V1ZG9zdGF0ZSkua2luZCAmbHQ7PiBQc2V1ZG9zdGF0ZUtpbmQ6OmluaXRpYWwpIGltcGxpZXMgdHJpZ2dlci0+aXNFbXB0eSgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVHJhbnNpdGlvbnMgb3V0Z29pbmcgUHNldWRvc3RhdGVzIG1heSBub3QgaGF2ZSBhIFRyaWdnZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJqb2luX3NlZ21lbnRfc3RhdGUiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIodGFyZ2V0Lm9jbElzS2luZE9mKFBzZXVkb3N0YXRlKSBhbmQgdGFyZ2V0Lm9jbEFzVHlwZShQc2V1ZG9zdGF0ZSkua2luZCA9IFBzZXVkb3N0YXRlS2luZDo6am9pbikgaW1wbGllcyAoc291cmNlLm9jbElzS2luZE9mKFN0YXRlKSkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBIGpvaW4gc2VnbWVudCBtdXN0IGFsd2F5cyBvcmlnaW5hdGUgZnJvbSBhIFN0YXRlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iZm9ya19zZWdtZW50X3N0YXRlIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iKHNvdXJjZS5vY2xJc0tpbmRPZihQc2V1ZG9zdGF0ZSkgYW5kICBzb3VyY2Uub2NsQXNUeXBlKFBzZXVkb3N0YXRlKS5raW5kID0gUHNldWRvc3RhdGVLaW5kOjpmb3JrKSBpbXBsaWVzICh0YXJnZXQub2NsSXNLaW5kT2YoU3RhdGUpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgZm9yayBzZWdtZW50IG11c3QgYWx3YXlzIHRhcmdldCBhIFN0YXRlLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0ic3RhdGVfaXNfbG9jYWwiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIoa2luZCA9IFRyYW5zaXRpb25LaW5kOjpsb2NhbCkgaW1wbGllcyYjeEQ7JiN4QTsmI3g5OyYjeDk7KChzb3VyY2Uub2NsSXNLaW5kT2YgKFN0YXRlKSBhbmQgc291cmNlLm9jbEFzVHlwZShTdGF0ZSkuaXNDb21wb3NpdGUpIG9yJiN4RDsmI3hBOyYjeDk7JiN4OTsoc291cmNlLm9jbElzS2luZE9mIChQc2V1ZG9zdGF0ZSkgYW5kIHNvdXJjZS5vY2xBc1R5cGUoUHNldWRvc3RhdGUpLmtpbmQgPSBQc2V1ZG9zdGF0ZUtpbmQ6OmVudHJ5UG9pbnQpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgVHJhbnNpdGlvbiB3aXRoIGtpbmQgbG9jYWwgbXVzdCBoYXZlIGEgY29tcG9zaXRlIFN0YXRlIG9yIGFuIGVudHJ5IHBvaW50IGFzIGl0cyBzb3VyY2UuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJpbml0aWFsX3RyYW5zaXRpb24iIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VCb29sZWFuIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSIoc291cmNlLm9jbElzS2luZE9mKFBzZXVkb3N0YXRlKSBhbmQgY29udGFpbmVyLnN0YXRlTWFjaGluZS0+bm90RW1wdHkoKSkgaW1wbGllcyYjeEE7JiN4OTt0cmlnZ2VyLT5pc0VtcHR5KCkiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJBbiBpbml0aWFsIFRyYW5zaXRpb24gYXQgdGhlIHRvcG1vc3QgbGV2ZWwgUmVnaW9uIG9mIGEgU3RhdGVNYWNoaW5lIHRoYXQgaGFzIG5vIFRyaWdnZXIuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlUGFyYW1ldGVycyBuYW1lPSJkaWFnbm9zdGljcyIgZVR5cGU9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRURpYWdub3N0aWNDaGFpbiI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2hhaW4gb2YgZGlhZ25vc3RpY3MgdG8gd2hpY2ggcHJvYmxlbXMgYXJlIHRvIGJlIGFwcGVuZGVkLiIvPgorICAgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iY29udGV4dCI+CisgICAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgY2FjaGUgb2YgY29udGV4dC1zcGVjaWZpYyBpbmZvcm1hdGlvbi4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICAgIDxlR2VuZXJpY1R5cGUgZUNsYXNzaWZpZXI9ImVjb3JlOkVEYXRhVHlwZSBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0Vjb3JlIy8vRU1hcCI+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgICAgPGVUeXBlQXJndW1lbnRzIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VKYXZhT2JqZWN0Ii8+CisgICAgICAgIDwvZUdlbmVyaWNUeXBlPgorICAgICAgPC9lUGFyYW1ldGVycz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJmb3JrX3NlZ21lbnRfZ3VhcmRzIiBlVHlwZT0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FQm9vbGVhbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0iKHNvdXJjZS5vY2xJc0tpbmRPZihQc2V1ZG9zdGF0ZSkgYW5kIHNvdXJjZS5vY2xBc1R5cGUoUHNldWRvc3RhdGUpLmtpbmQgPSBQc2V1ZG9zdGF0ZUtpbmQ6OmZvcmspIGltcGxpZXMgKGd1YXJkID0gbnVsbCBhbmQgdHJpZ2dlci0+aXNFbXB0eSgpKSIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgZm9yayBzZWdtZW50IG11c3Qgbm90IGhhdmUgR3VhcmRzIG9yIFRyaWdnZXJzLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZVBhcmFtZXRlcnMgbmFtZT0iZGlhZ25vc3RpY3MiIGVUeXBlPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VEaWFnbm9zdGljQ2hhaW4iPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNoYWluIG9mIGRpYWdub3N0aWNzIHRvIHdoaWNoIHByb2JsZW1zIGFyZSB0byBiZSBhcHBlbmRlZC4iLz4KKyAgICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8L2VQYXJhbWV0ZXJzPgorICAgICAgPGVQYXJhbWV0ZXJzIG5hbWU9ImNvbnRleHQiPgorICAgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iVGhlIGNhY2hlIG9mIGNvbnRleHQtc3BlY2lmaWMgaW5mb3JtYXRpb24uIi8+CisgICAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgICA8ZUdlbmVyaWNUeXBlIGVDbGFzc2lmaWVyPSJlY29yZTpFRGF0YVR5cGUgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9FY29yZSMvL0VNYXAiPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICAgIDxlVHlwZUFyZ3VtZW50cyBlQ2xhc3NpZmllcj0iZWNvcmU6RURhdGFUeXBlIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvRWNvcmUjLy9FSmF2YU9iamVjdCIvPgorICAgICAgICA8L2VHZW5lcmljVHlwZT4KKyAgICAgIDwvZVBhcmFtZXRlcnM+CisgICAgPC9lT3BlcmF0aW9ucz4KKyAgICA8ZU9wZXJhdGlvbnMgbmFtZT0iY29udGFpbmluZ1N0YXRlTWFjaGluZSIgb3JkZXJlZD0iZmFsc2UiIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9TdGF0ZU1hY2hpbmUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcXVlcnkgY29udGFpbmluZ1N0YXRlTWFjaGluZSgpIHJldHVybnMgdGhlIFN0YXRlTWFjaGluZSB0aGF0IGNvbnRhaW5zIHRoZSBUcmFuc2l0aW9uIGVpdGhlciBkaXJlY3RseSBvciB0cmFuc2l0aXZlbHkuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMS4xLjAvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImJvZHkiIHZhbHVlPSJjb250YWluZXIuY29udGFpbmluZ1N0YXRlTWFjaGluZSgpIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VPcGVyYXRpb25zPgorICAgIDxlT3BlcmF0aW9ucyBuYW1lPSJyZWRlZmluaXRpb25Db250ZXh0IiBvcmRlcmVkPSJmYWxzZSIgbG93ZXJCb3VuZD0iMSIgZVR5cGU9IiMvL0NsYXNzaWZpZXIiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJUaGUgcmVkZWZpbml0aW9uIGNvbnRleHQgb2YgYSBUcmFuc2l0aW9uIGlzIHRoZSBuZWFyZXN0IGNvbnRhaW5pbmcgU3RhdGVNYWNoaW5lLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzEuMS4wL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJib2R5IiB2YWx1ZT0ibGV0IHNtIDogU3RhdGVNYWNoaW5lID0gY29udGFpbmluZ1N0YXRlTWFjaGluZSgpIGluJiN4QTtpZiBzbS5fJ2NvbnRleHQnID0gbnVsbCBvciBzbS5nZW5lcmFsLT5ub3RFbXB0eSgpIHRoZW4mI3hBOyAgc20mI3hBO2Vsc2UmI3hBOyAgc20uXydjb250ZXh0JyYjeEE7ZW5kaWYiLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgIDwvZU9wZXJhdGlvbnM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImNvbnRhaW5lciIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9SZWdpb24iIGVPcHBvc2l0ZT0iIy8vUmVnaW9uL3RyYW5zaXRpb24iPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJEZXNpZ25hdGVzIHRoZSBSZWdpb24gdGhhdCBvd25zIHRoaXMgVHJhbnNpdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVkRWxlbWVudC9uYW1lc3BhY2UiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9ImVmZmVjdCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGVUeXBlPSIjLy9CZWhhdmlvciIgY29udGFpbm1lbnQ9InRydWUiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJTcGVjaWZpZXMgYW4gb3B0aW9uYWwgYmVoYXZpb3IgdG8gYmUgcGVyZm9ybWVkIHdoZW4gdGhlIFRyYW5zaXRpb24gZmlyZXMuIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJzdWJzZXRzIiByZWZlcmVuY2VzPSIjLy9FbGVtZW50L293bmVkRWxlbWVudCIvPgorICAgIDwvZVN0cnVjdHVyYWxGZWF0dXJlcz4KKyAgICA8ZVN0cnVjdHVyYWxGZWF0dXJlcyB4c2k6dHlwZT0iZWNvcmU6RVJlZmVyZW5jZSIgbmFtZT0iZ3VhcmQiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vQ29uc3RyYWludCI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IkEgZ3VhcmQgaXMgYSBDb25zdHJhaW50IHRoYXQgcHJvdmlkZXMgYSBmaW5lLWdyYWluZWQgY29udHJvbCBvdmVyIHRoZSBmaXJpbmcgb2YgdGhlIFRyYW5zaXRpb24uIFRoZSBndWFyZCBpcyBldmFsdWF0ZWQgd2hlbiBhbiBFdmVudCBvY2N1cnJlbmNlIGlzIGRpc3BhdGNoZWQgYnkgdGhlIFN0YXRlTWFjaGluZS4gSWYgdGhlIGd1YXJkIGlzIHRydWUgYXQgdGhhdCB0aW1lLCB0aGUgVHJhbnNpdGlvbiBtYXkgYmUgZW5hYmxlZCwgb3RoZXJ3aXNlLCBpdCBpcyBkaXNhYmxlZC4gR3VhcmRzIHNob3VsZCBiZSBwdXJlIGV4cHJlc3Npb25zIHdpdGhvdXQgc2lkZSBlZmZlY3RzLiBHdWFyZCBleHByZXNzaW9ucyB3aXRoIHNpZGUgZWZmZWN0cyBhcmUgaWxsIGZvcm1lZC4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL05hbWVzcGFjZS9vd25lZFJ1bGUiLz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVBdHRyaWJ1dGUiIG5hbWU9ImtpbmQiIG9yZGVyZWQ9ImZhbHNlIiBsb3dlckJvdW5kPSIxIgorICAgICAgICBlVHlwZT0iIy8vVHJhbnNpdGlvbktpbmQiIGRlZmF1bHRWYWx1ZUxpdGVyYWw9ImV4dGVybmFsIj4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iSW5kaWNhdGVzIHRoZSBwcmVjaXNlIHR5cGUgb2YgdGhlIFRyYW5zaXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InJlZGVmaW5lZFRyYW5zaXRpb24iIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBlVHlwZT0iIy8vVHJhbnNpdGlvbiI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlRoZSBUcmFuc2l0aW9uIHRoYXQgaXMgcmVkZWZpbmVkIGJ5IHRoaXMgVHJhbnNpdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL1JlZGVmaW5hYmxlRWxlbWVudC9yZWRlZmluZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJzb3VyY2UiIG9yZGVyZWQ9ImZhbHNlIgorICAgICAgICBsb3dlckJvdW5kPSIxIiBlVHlwZT0iIy8vVmVydGV4Ij4KKyAgICAgIDxlQW5ub3RhdGlvbnMgc291cmNlPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2VtZi8yMDAyL0dlbk1vZGVsIj4KKyAgICAgICAgPGRldGFpbHMga2V5PSJkb2N1bWVudGF0aW9uIiB2YWx1ZT0iRGVzaWduYXRlcyB0aGUgb3JpZ2luYXRpbmcgVmVydGV4IChTdGF0ZSBvciBQc2V1ZG9zdGF0ZSkgb2YgdGhlIFRyYW5zaXRpb24uIi8+CisgICAgICA8L2VBbm5vdGF0aW9ucz4KKyAgICA8L2VTdHJ1Y3R1cmFsRmVhdHVyZXM+CisgICAgPGVTdHJ1Y3R1cmFsRmVhdHVyZXMgeHNpOnR5cGU9ImVjb3JlOkVSZWZlcmVuY2UiIG5hbWU9InRhcmdldCIgb3JkZXJlZD0iZmFsc2UiCisgICAgICAgIGxvd2VyQm91bmQ9IjEiIGVUeXBlPSIjLy9WZXJ0ZXgiPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvZW1mLzIwMDIvR2VuTW9kZWwiPgorICAgICAgICA8ZGV0YWlscyBrZXk9ImRvY3VtZW50YXRpb24iIHZhbHVlPSJEZXNpZ25hdGVzIHRoZSB0YXJnZXQgVmVydGV4IHRoYXQgaXMgcmVhY2hlZCB3aGVuIHRoZSBUcmFuc2l0aW9uIGlzIHRha2VuLiIvPgorICAgICAgPC9lQW5ub3RhdGlvbnM+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICAgIDxlU3RydWN0dXJhbEZlYXR1cmVzIHhzaTp0eXBlPSJlY29yZTpFUmVmZXJlbmNlIiBuYW1lPSJ0cmlnZ2VyIiBvcmRlcmVkPSJmYWxzZSIKKyAgICAgICAgdXBwZXJCb3VuZD0iLTEiIGVUeXBlPSIjLy9UcmlnZ2VyIiBjb250YWlubWVudD0idHJ1ZSI+CisgICAgICA8ZUFubm90YXRpb25zIHNvdXJjZT0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9lbWYvMjAwMi9HZW5Nb2RlbCI+CisgICAgICAgIDxkZXRhaWxzIGtleT0iZG9jdW1lbnRhdGlvbiIgdmFsdWU9IlNwZWNpZmllcyB0aGUgVHJpZ2dlcnMgdGhhdCBtYXkgZmlyZSB0aGUgdHJhbnNpdGlvbi4iLz4KKyAgICAgIDwvZUFubm90YXRpb25zPgorICAgICAgPGVBbm5vdGF0aW9ucyBzb3VyY2U9InN1YnNldHMiIHJlZmVyZW5jZXM9IiMvL0VsZW1lbnQvb3duZWRFbGVtZW50Ii8+CisgICAgPC9lU3RydWN0dXJhbEZlYXR1cmVzPgorICA8L2VDbGFzc2lmaWVycz4KKzwvZWNvcmU6RVBhY2thZ2U+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcGFsZXR0ZXMvUGFsZXR0ZV9DbGFzc19Sb2JvdE1MLnhtbCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wYWxldHRlcy9QYWxldHRlX0NsYXNzX1JvYm90TUwueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUwZTE5YmEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcGFsZXR0ZXMvUGFsZXR0ZV9DbGFzc19Sb2JvdE1MLnhtbApAQCAtMCwwICsxLDU0IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHBhbGV0dGVEZWZpbml0aW9uPgorCTxjb250ZW50PgorCQk8ZHJhd2VyIGljb25wYXRoPSIvaWNvbnMvZHJhd2VyLmdpZiIgaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kaWFncmFtLmNsYXp6IgorCQkJbmFtZT0iUm9ib3RNTCI+CisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgbmV3IFJvYm90aWMgU3lzdGVtIiBpZD0iY2xhenoudG9vbC5zeXN0ZW0iCisJCQkJbmFtZT0iU3lzdGVtIiByZWZUb29sSWQ9ImNsYXp6LnRvb2wuY2xhc3MiCisJCQkJaWNvbnBhdGg9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL2ljb25zLzE2eDE2LzAzX3JvYm90X3N5c3RlbS5wbmciPgorCQkJCTxwb3N0QWN0aW9uIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLmFwcGx5c3RlcmVvdHlwZWFjdGlvbnByb3ZpZGVyIj4KKwkJCQkJPHN0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQkJCTxzdGVyZW90eXBlIHN0ZXJlb3R5cGVOYW1lPSJSb2JvdE1MOjpTeXN0ZW0iPjwvc3RlcmVvdHlwZT4KKwkJCQkJPC9zdGVyZW90eXBlc1RvQXBwbHk+CisJCQkJPC9wb3N0QWN0aW9uPgorCQkJCTxwb3N0QWN0aW9uCisJCQkJCWlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnBvc3RhY3Rpb24uZGlzcGxheUFwcGxpZWRTdGVyZW90eXBlYWN0aW9ucHJvdmlkZXIiPgorCQkJCQk8ZGlzcGxheU5hbWUgbmFtZT0iUm9ib3RNTDo6U3lzdGVtIiAvPgorCQkJCTwvcG9zdEFjdGlvbj4KKwkJCQk8cG9zdEFjdGlvbgorCQkJCQlpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5wb3N0YWN0aW9uLmNoYW5nZVN0ZXJlb3R5cGVEaXNwbGF5UHJvdmlkZXIiCisJCQkJCWRpc3BsYXlLaW5kPSJJY29uU3RlcmVvdHlwZSIgZGlzcGxheVBsYWNlPSJDb21wYXJ0bWVudCI+PC9wb3N0QWN0aW9uPgorCQkJPC9hc3BlY3RUb29sPgorCQkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IkNyZWF0ZSBhIG5ldyBBbGdvcml0aG1MaWJyYXJ5IgorCQkJCWljb25wYXRoPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnVtbDIudW1sLmVkaXQvaWNvbnMvZnVsbC9vYmoxNi9DbGFzcy5naWYiCisJCQkJaWQ9ImNsYXp6LnRvb2wuQWxnb3JpdGhtTGlicmFyeSIgbmFtZT0iQWxnb3JpdGhtTGlicmFyeSIgcmVmVG9vbElkPSJjbGF6ei50b29sLmNsYXNzIj4KKwkJCQk8cG9zdEFjdGlvbiBpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5hcHBseXN0ZXJlb3R5cGVhY3Rpb25wcm92aWRlciI+CisJCQkJCTxzdGVyZW90eXBlc1RvQXBwbHk+CQkJCQkJCisJCQkJCQk8c3RlcmVvdHlwZSBzdGVyZW90eXBlTmFtZT0iUm9ib3RNTDo6QWxnb3JpdGhtTGlicmFyeSI+CQkJCQkJCQorCQkJCQkJPC9zdGVyZW90eXBlPgorCQkJCQk8L3N0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQk8L3Bvc3RBY3Rpb24+CisJCQkJPHBvc3RBY3Rpb24KKwkJCQkJaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMucG9zdGFjdGlvbi5kaXNwbGF5QXBwbGllZFN0ZXJlb3R5cGVhY3Rpb25wcm92aWRlciI+CisJCQkJCTxkaXNwbGF5TmFtZSBuYW1lPSJSb2JvdE1MOjpBbGdvcml0aG1MaWJyYXJ5IiAvPgorCQkJCTwvcG9zdEFjdGlvbj4JCQkJCisJCQk8L2FzcGVjdFRvb2w+CQkJCisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGFuIG9wZXJhdGlvbiIKKwkJCQlpY29ucGF0aD0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS51bWwyLnVtbC5lZGl0L2ljb25zL2Z1bGwvb2JqMTYvT3BlcmF0aW9uLmdpZiIKKwkJCQlpZD0iY2xhenoudG9vbC5hbGdvcml0aG0iIG5hbWU9Ik9wZXJhdGlvbiIgcmVmVG9vbElkPSJjbGF6ei50b29sLm9wZXJhdGlvbiI+CisJCQkJPHBvc3RBY3Rpb24gaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuYXBwbHlzdGVyZW90eXBlYWN0aW9ucHJvdmlkZXIiPgorCQkJCQk8c3RlcmVvdHlwZXNUb0FwcGx5PgorCQkJCQkJPHN0ZXJlb3R5cGUgc3RlcmVvdHlwZU5hbWU9IlJvYm90TUw6OkFsZ29yaXRobSIgLz4KKwkJCQkJPC9zdGVyZW90eXBlc1RvQXBwbHk+CisJCQkJPC9wb3N0QWN0aW9uPgorCQkJPC9hc3BlY3RUb29sPgorCQkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IkNyZWF0ZSBhIG5ldyBQcm9wZXJ0eSIKKwkJCQlpY29ucGF0aD0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS51bWwyLnVtbC5lZGl0L2ljb25zL2Z1bGwvb2JqMTYvUHJvcGVydHkuZ2lmIgorCQkJCWlkPSJjbGF6ei50b29sLnByb3BlcnR5XzEzMjM3Nzc0MDgwNTciIG5hbWU9IlByb3BlcnR5IiByZWZUb29sSWQ9ImNsYXp6LnRvb2wucHJvcGVydHkiIC8+CisJCQk8YXNwZWN0VG9vbCBkZXNjcmlwdGlvbj0iQ3JlYXRlIGEgZ2VuZXJhbGl6YXRpb24iCisJCQkJaWNvbnBhdGg9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UudW1sMi51bWwuZWRpdC9pY29ucy9mdWxsL29iajE2L0dlbmVyYWxpemF0aW9uLmdpZiIKKwkJCQlpZD0iY2xhenoudG9vbC5nZW5lcmFsaXphdGlvbl8xMzIzNzc3NTQ1Nzc4IiBuYW1lPSJHZW5lcmFsaXphdGlvbiIKKwkJCQlyZWZUb29sSWQ9ImNsYXp6LnRvb2wuZ2VuZXJhbGl6YXRpb24iIC8+CisJCTwvZHJhd2VyPgorCTwvY29udGVudD4KKzwvcGFsZXR0ZURlZmluaXRpb24+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3BhbGV0dGVzL1BhbGV0dGVfU01fUm9ib3RNTC54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcGFsZXR0ZXMvUGFsZXR0ZV9TTV9Sb2JvdE1MLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMzA0MDgxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3BhbGV0dGVzL1BhbGV0dGVfU01fUm9ib3RNTC54bWwKQEAgLTAsMCArMSw0OSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxwYWxldHRlRGVmaW5pdGlvbj4KKwk8Y29udGVudD4KKwkJCisJCTxkcmF3ZXIgaWNvbnBhdGg9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UuZ21mLnJ1bnRpbWUuZGlhZ3JhbS51aS9pY29ucy9ncm91cC5naWYiIGlkPSJkcmF3ZXJfMTMxNTkxOTkxNDI0MCIKKwkJCW5hbWU9IlJvYm90TUwiPgorCQkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IlN0YXRlIgorCQkJCWljb25wYXRoPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnVtbDIudW1sLmVkaXQvaWNvbnMvZnVsbC9vYmoxNi9TdGF0ZS5naWYiCisJCQkJaWQ9ImNyZWF0ZVN0YXRlQ3JlYXRpb25Ub29sXzEzMTU5MTk5Nzc5MjkiIG5hbWU9IlN0YXRlIgorCQkJCXJlZlRvb2xJZD0ic3RhdGVtYWNoaW5lLmNyZWF0ZU5vZGVzR3JvdXAuc3RhdGUiPgorCQkJCTxwb3N0QWN0aW9uIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLmFwcGx5c3RlcmVvdHlwZWFjdGlvbnByb3ZpZGVyIj4KKwkJCQkJPHN0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQkJCTxzdGVyZW90eXBlIHN0ZXJlb3R5cGVOYW1lPSJSb2JvdE1MOjpTdGF0ZSI+PC9zdGVyZW90eXBlPgorCQkJCQk8L3N0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQk8L3Bvc3RBY3Rpb24+CisJCQk8L2FzcGVjdFRvb2w+CisJCQorCQkJPGFzcGVjdFRvb2wgZGVzY3JpcHRpb249IkZpbmFsU3RhdGUiCisJCQkJaWNvbnBhdGg9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UudW1sMi51bWwuZWRpdC9pY29ucy9mdWxsL29iajE2L0ZpbmFsU3RhdGUuZ2lmIgorCQkJCWlkPSJjcmVhdGVGaW5hbFN0YXRlQ3JlYXRpb25Ub29sXzEzMTU5MjA0MTk2MjUiIG5hbWU9IkZpbmFsU3RhdGUiCisJCQkJcmVmVG9vbElkPSJzdGF0ZW1hY2hpbmUuY3JlYXRlTm9kZXNHcm91cC5maW5hbHN0YXRlIiA+CisJCQkJCisJCQk8L2FzcGVjdFRvb2w+CisJCQkKKwkJCTxhc3BlY3RUb29sIGRlc2NyaXB0aW9uPSJJbml0aWFsU3RhdGUiCisJCQkJaWNvbnBhdGg9InBsYXRmb3JtOi9wbHVnaW4vb3JnLmVjbGlwc2UudW1sMi51bWwuZWRpdC9pY29ucy9mdWxsL29iajE2L1BzZXVkb3N0YXRlX2luaXRpYWwuZ2lmIgorCQkJCWlkPSJjcmVhdGVJbml0aWFsQ3JlYXRpb25Ub29sXzEzMTU5MjA1MDkzMjgiIG5hbWU9IkluaXRpYWxTdGF0ZSIKKwkJCQlyZWZUb29sSWQ9InN0YXRlbWFjaGluZS5jcmVhdGVOb2Rlc0dyb3VwLmluaXRpYWwiID4KKwkJCQk8cG9zdEFjdGlvbiBpZD0ib3JnLmVjbGlwc2UucGFweXJ1cy5hcHBseXN0ZXJlb3R5cGVhY3Rpb25wcm92aWRlciI+CisJCQkJCTxzdGVyZW90eXBlc1RvQXBwbHk+CisJCQkJCQk8c3RlcmVvdHlwZSBzdGVyZW90eXBlTmFtZT0iUm9ib3RNTDo6U3RhdGUiPjwvc3RlcmVvdHlwZT4KKwkJCQkJPC9zdGVyZW90eXBlc1RvQXBwbHk+CisJCQkJPC9wb3N0QWN0aW9uPgorCQkJPC9hc3BlY3RUb29sPgorCQkJCisJCQk8c2VwYXJhdG9yIGlkPSJTZXBhcmF0b3JfMTMxNTkyMDUzMTEyNSIgLz4KKwkJCTxhc3BlY3RUb29sIGRlc2NyaXB0aW9uPSJUcmFuc2l0aW9uIgorCQkJCWljb25wYXRoPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnVtbDIudW1sLmVkaXQvaWNvbnMvZnVsbC9vYmoxNi9UcmFuc2l0aW9uX2xvY2FsLmdpZiIKKwkJCQlpZD0iY3JlYXRlVHJhbnNpdGlvbkNyZWF0aW9uVG9vbF8xMzE1OTIwNTM2MDE2IiBuYW1lPSJUcmFuc2l0aW9uIgorCQkJCXJlZlRvb2xJZD0ic3RhdGVtYWNoaW5lLmNyZWF0ZUVkZ2VzR3JvdXAudHJhbnNpdGlvbiIgPgorCQkJCTxwb3N0QWN0aW9uIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLmFwcGx5c3RlcmVvdHlwZWFjdGlvbnByb3ZpZGVyIj4KKwkJCQkJPHN0ZXJlb3R5cGVzVG9BcHBseT4KKwkJCQkJCTxzdGVyZW90eXBlIHN0ZXJlb3R5cGVOYW1lPSJSb2JvdE1MOjpUcmFuc2l0aW9uIj48L3N0ZXJlb3R5cGU+CisJCQkJCTwvc3RlcmVvdHlwZXNUb0FwcGx5PgorCQkJCTwvcG9zdEFjdGlvbj4KKwkJCTwvYXNwZWN0VG9vbD4KKwkJPC9kcmF3ZXI+CisJPC9jb250ZW50PgorPC9wYWxldHRlRGVmaW5pdGlvbj4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcGx1Z2luLnByb3BlcnRpZXMgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcGx1Z2luLnByb3BlcnRpZXMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmE1ZWQzZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wbHVnaW4ucHJvcGVydGllcwpAQCAtMCwwICsxLDUgQEAKKyNQcm9wZXJ0aWVzIGZpbGUgZm9yIG9yZy5lY2xpcHNlLnBhcHlydXMucHJvdGV1cworQnVuZGxlLVZlbmRvciA9IEVjbGlwc2UgTW9kZWxpbmcgUHJvamVjdAorQnVuZGxlLU5hbWUgPSBSb2JvdE1MIHByb2ZpbGUgYW5kIGxpYnJhcmllcyAoSW5jdWJhdGlvbikKK3BsdWdpbk5hbWUgPSBSb2JvdE1MIE1vZGVsCitwcm92aWRlck5hbWUgPSB3d3cuZXhhbXBsZS5vcmcKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wbHVnaW4ueG1sIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3BsdWdpbi54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTA4YmIzZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wbHVnaW4ueG1sCkBAIC0wLDAgKzEsMTY0IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPD9lY2xpcHNlIHZlcnNpb249IjMuNCI/PgorPHBsdWdpbj4KKyAgIDxleHRlbnNpb24KKyAgICAgICAgIHBvaW50PSJvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXJpX21hcHBpbmciPgorICAgICAgPG1hcHBpbmcKKyAgICAgICAgICAgIHNvdXJjZT0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvIgorICAgICAgICAgICAgdGFyZ2V0PSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9tb2RlbC8iPgorICAgICAgPC9tYXBwaW5nPgorICAgICAgPG1hcHBpbmcKKyAgICAgICAgICAgIHNvdXJjZT0icGF0aG1hcDovL1JvYm90bWxfTElCUkFSSUVTLyIKKyAgICAgICAgICAgIHRhcmdldD0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvbW9kZWwvIj4KKyAgICAgIDwvbWFwcGluZz4KKyAgIDwvZXh0ZW5zaW9uPgorICAgPGV4dGVuc2lvbgorICAgICAgICAgcG9pbnQ9Im9yZy5lY2xpcHNlLnBhcHlydXMudW1sLmV4dGVuc2lvbnBvaW50cy5VTUxQcm9maWxlIj4KKyAgICAgIDxwcm9maWxlCisgICAgICAgICAgICBkZXNjcmlwdGlvbj0iVU1MIHByb2ZpbGUgZm9yIHJvYm90aWMgc3lzdGVtcyIKKyAgICAgICAgICAgIGljb25wYXRoPSJpY29ucy9yb2JvdG1sL1JvYm90TUwtMTZ4MTYtOGJpdHMucG5nIgorICAgICAgICAgICAgbmFtZT0iUm9ib3RNTCIKKyAgICAgICAgICAgIHBhdGg9InBhdGhtYXA6Ly9Sb2JvdG1sX1BST0ZJTEVTL1JvYm90TUxQcm9maWxlLnByb2ZpbGUudW1sIgorICAgICAgICAgICAgcHJvdmlkZXI9IkNFQSBMaXN0Ij4KKyAgICAgIDwvcHJvZmlsZT4KKyAgIDwvZXh0ZW5zaW9uPgorICAgPGV4dGVuc2lvbgorICAgICAgICAgcG9pbnQ9Im9yZy5lY2xpcHNlLnBhcHlydXMudW1sLmV4dGVuc2lvbnBvaW50cy5VTUxMaWJyYXJ5Ij4KKyAgICAgICA8bGlicmFyeQorICAgICAgICAgICAgZGVzY3JpcHRpb249IlJvYm90TUwgRGF0YVR5cGVzIExpYmFyYXJ5ICh2MC4xKSIKKyAgICAgICAgICAgIGljb25wYXRoPSJpY29ucy9yb2JvdG1sL1JvYm90TUwtMTZ4MTYtOGJpdHMucG5nIgorICAgICAgICAgICAgbmFtZT0iUm9ib3RNTF9MaWJyYXJpZXMiCisgICAgICAgICAgICBwYXRoPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCIKKyAgICAgICAgICAgIHByb3ZpZGVyPSJDRUEgTElTVCI+CisgICAgICA8L2xpYnJhcnk+CisgICA8L2V4dGVuc2lvbj4KKyAgIDxleHRlbnNpb24KKyAgICAgICAgIHBvaW50PSJvcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5kaWFncmFtLmNvbW1vbi5wYWxldHRlRGVmaW5pdGlvbiI+CisgICAgICA8cGFsZXR0ZURlZmluaXRpb24KKyAgICAgICAgICAgIElEPSJQYWxldHRlX1NNX1JvYm90TUwiCisgICAgICAgICAgICBjbGFzcz0ib3JnLmVjbGlwc2UucGFweXJ1cy51bWwuZGlhZ3JhbS5jb21tb24uc2VydmljZS5QbHVnaW5QYWxldHRlUHJvdmlkZXIiCisgICAgICAgICAgICBpY29uPSJwbGF0Zm9ybTovcGx1Z2luL29yZy5lY2xpcHNlLmdtZi5ydW50aW1lLmRpYWdyYW0udWkvaWNvbnMvZ3JvdXAuZ2lmIgorICAgICAgICAgICAgbmFtZT0iUGFsZXR0ZV9TTV9Sb2JvdE1MIgorICAgICAgICAgICAgcGF0aD0icGFsZXR0ZXMvUGFsZXR0ZV9TTV9Sb2JvdE1MLnhtbCIKKyAgICAgICAgICAgIHByb3ZpZGVyPSJDRUEgTElTVCI+CisgICAgICAgICA8UHJpb3JpdHkKKyAgICAgICAgICAgICAgIG5hbWU9Ik1lZGl1bSI+CisgICAgICAgICA8L1ByaW9yaXR5PgorICAgICAgICAgPGVkaXRvcgorICAgICAgICAgICAgICAgaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMudW1sLmRpYWdyYW0uc3RhdGVtYWNoaW5lIj4KKyAgICAgICAgIDwvZWRpdG9yPgorICAgICAgPC9wYWxldHRlRGVmaW5pdGlvbj4KKyAgIDwvZXh0ZW5zaW9uPgorICAgPGV4dGVuc2lvbiBpZD0icm9ib3RtbC5tZW51IiBuYW1lPSJSb2JvdE1MIE1lbnVzIiBwb2ludD0ib3JnLmVjbGlwc2UudWkubWVudXMiPgorICAgICAgPG1lbnVDb250cmlidXRpb24gbG9jYXRpb25VUkk9InRvb2xiYXI6b3JnLmVjbGlwc2UudWkubWFpbi50b29sYmFyP2VuZG9mPW9yZy5lY2xpcHNlLnBhcHlydXMuZGlhZ3JhbS51aS50b29sYmFyIj4KKyAgICAgICAgIDx0b29sYmFyIGlkPSJvcmcuZWNsaXBzZS5yb2JvdG1sLnVpLnRvb2xiYXIiIGxhYmVsPSJSb2JvdE1MIFRvb2xiYXIiPgorICAgICAgICAgPC90b29sYmFyPgorICAgICAgPC9tZW51Q29udHJpYnV0aW9uPgorICAgPC9leHRlbnNpb24+CisgICA8ZXh0ZW5zaW9uCisgICAgICAgICBwb2ludD0ib3JnLmVjbGlwc2UucGFweXJ1cy51bWwuZGlhZ3JhbS5jb21tb24ucGFsZXR0ZURlZmluaXRpb24iPgorICAgICAgPHBhbGV0dGVEZWZpbml0aW9uCisgICAgICAgICAgICBJRD0iUGFsZXR0ZV9DbGFzc19Sb2JvdE1MIgorICAgICAgICAgICAgY2xhc3M9Im9yZy5lY2xpcHNlLnBhcHlydXMudW1sLmRpYWdyYW0uY29tbW9uLnNlcnZpY2UuUGx1Z2luUGFsZXR0ZVByb3ZpZGVyIgorICAgICAgICAgICAgaWNvbj0icGxhdGZvcm06L3BsdWdpbi9vcmcuZWNsaXBzZS5nbWYucnVudGltZS5kaWFncmFtLnVpL2ljb25zL2dyb3VwLmdpZiIKKyAgICAgICAgICAgIG5hbWU9IlBhbGV0dGVfQ2xhc3NfUm9ib3RNTCIKKyAgICAgICAgICAgIHBhdGg9InBhbGV0dGVzL1BhbGV0dGVfQ2xhc3NfUm9ib3RNTC54bWwiPgorICAgICAgICAgPFByaW9yaXR5CisgICAgICAgICAgICAgICBuYW1lPSJNZWRpdW0iPgorICAgICAgICAgPC9Qcmlvcml0eT4KKyAgICAgICAgIDxlZGl0b3IKKyAgICAgICAgICAgICAgIGlkPSJvcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5kaWFncmFtLmNsYXp6Ij4KKyAgICAgICAgIDwvZWRpdG9yPgorICAgICAgPC9wYWxldHRlRGVmaW5pdGlvbj4KKyAgIDwvZXh0ZW5zaW9uPgorICAgPGV4dGVuc2lvbgorICAgICAgICAgcG9pbnQ9Im9yZy5lY2xpcHNlLnVtbDIudW1sLmdlbmVyYXRlZF9wYWNrYWdlIj4KKyAgICAgIDxwcm9maWxlCisgICAgICAgICAgICBsb2NhdGlvbj0icGF0aG1hcDovL1JvYm90bWxfUFJPRklMRVMvUm9ib3RNTFByb2ZpbGUucHJvZmlsZS51bWwjXzNRT0hFUGNFRWQtSjA2VTVITV9vLVEiCisgICAgICAgICAgICB1cmk9Imh0dHA6Ly9QYXB5cnVzL1JvYm90TUwvMSI+CisgICAgICA8L3Byb2ZpbGU+CisgICA8L2V4dGVuc2lvbj4KKworICAgPGV4dGVuc2lvbiBwb2ludD0ib3JnLmVjbGlwc2UuZW1mLmVjb3JlLmdlbmVyYXRlZF9wYWNrYWdlIj4KKyAgICAgIDwhLS0gQGdlbmVyYXRlZCBSb2JvdE1MIC0tPgorICAgICAgPHBhY2thZ2UKKyAgICAgICAgICAgIHVyaT0iaHR0cDovL1BhcHlydXMvUm9ib3RNTC8xIgorICAgICAgICAgICAgY2xhc3M9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSIKKyAgICAgICAgICAgIGdlbk1vZGVsPSJtb2RlbC9Sb2JvdE1MLmdlbm1vZGVsIi8+CisgICA8L2V4dGVuc2lvbj4KKworICAgPGV4dGVuc2lvbiBwb2ludD0ib3JnLmVjbGlwc2UuZW1mLmVjb3JlLmdlbmVyYXRlZF9wYWNrYWdlIj4KKyAgICAgIDwhLS0gQGdlbmVyYXRlZCBSb2JvdE1MIC0tPgorICAgICAgPHBhY2thZ2UKKyAgICAgICAgICAgIHVyaT0iaHR0cDovLy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzLmVjb3JlIgorICAgICAgICAgICAgY2xhc3M9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UiCisgICAgICAgICAgICBnZW5Nb2RlbD0ibW9kZWwvUm9ib3RNTC5nZW5tb2RlbCIvPgorICAgPC9leHRlbnNpb24+CisKKyAgIDxleHRlbnNpb24gcG9pbnQ9Im9yZy5lY2xpcHNlLmVtZi5lY29yZS5nZW5lcmF0ZWRfcGFja2FnZSI+CisgICAgICA8IS0tIEBnZW5lcmF0ZWQgUm9ib3RNTCAtLT4KKyAgICAgIDxwYWNrYWdlCisgICAgICAgICAgICB1cmk9Imh0dHA6Ly8vUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMuZWNvcmUiCisgICAgICAgICAgICBjbGFzcz0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlIgorICAgICAgICAgICAgZ2VuTW9kZWw9Im1vZGVsL1JvYm90TUwuZ2VubW9kZWwiLz4KKyAgIDwvZXh0ZW5zaW9uPgorCisgICA8ZXh0ZW5zaW9uIHBvaW50PSJvcmcuZWNsaXBzZS5lbWYuZWNvcmUuZ2VuZXJhdGVkX3BhY2thZ2UiPgorICAgICAgPCEtLSBAZ2VuZXJhdGVkIFJvYm90TUwgLS0+CisgICAgICA8cGFja2FnZQorICAgICAgICAgICAgdXJpPSJodHRwOi8vL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy5lY29yZSIKKyAgICAgICAgICAgIGNsYXNzPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5OYXZfZGF0YXR5cGVzUGFja2FnZSIKKyAgICAgICAgICAgIGdlbk1vZGVsPSJtb2RlbC9Sb2JvdE1MLmdlbm1vZGVsIi8+CisgICA8L2V4dGVuc2lvbj4KKworICAgPGV4dGVuc2lvbiBwb2ludD0ib3JnLmVjbGlwc2UuZW1mLmVjb3JlLmdlbmVyYXRlZF9wYWNrYWdlIj4KKyAgICAgIDwhLS0gQGdlbmVyYXRlZCBSb2JvdE1MIC0tPgorICAgICAgPHBhY2thZ2UKKyAgICAgICAgICAgIHVyaT0iaHR0cDovLy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMuZWNvcmUiCisgICAgICAgICAgICBjbGFzcz0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UiCisgICAgICAgICAgICBnZW5Nb2RlbD0ibW9kZWwvUm9ib3RNTC5nZW5tb2RlbCIvPgorICAgPC9leHRlbnNpb24+CisKKyAgIDxleHRlbnNpb24gcG9pbnQ9Im9yZy5lY2xpcHNlLmVtZi5lY29yZS5nZW5lcmF0ZWRfcGFja2FnZSI+CisgICAgICA8IS0tIEBnZW5lcmF0ZWQgUm9ib3RNTCAtLT4KKyAgICAgIDxwYWNrYWdlCisgICAgICAgICAgICB1cmk9Imh0dHA6Ly8vUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzLmVjb3JlIgorICAgICAgICAgICAgY2xhc3M9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlIgorICAgICAgICAgICAgZ2VuTW9kZWw9Im1vZGVsL1JvYm90TUwuZ2VubW9kZWwiLz4KKyAgIDwvZXh0ZW5zaW9uPgorCisgICA8ZXh0ZW5zaW9uIHBvaW50PSJvcmcuZWNsaXBzZS5lbWYuZWNvcmUuZ2VuZXJhdGVkX3BhY2thZ2UiPgorICAgICAgPCEtLSBAZ2VuZXJhdGVkIFJvYm90TUwgLS0+CisgICAgICA8cGFja2FnZQorICAgICAgICAgICAgdXJpPSJodHRwOi8vL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnAxX2RhdGF0eXBlcy5lY29yZSIKKyAgICAgICAgICAgIGNsYXNzPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5PYXJwMV9kYXRhdHlwZXNQYWNrYWdlIgorICAgICAgICAgICAgZ2VuTW9kZWw9Im1vZGVsL1JvYm90TUwuZ2VubW9kZWwiLz4KKyAgIDwvZXh0ZW5zaW9uPgorCisgICA8ZXh0ZW5zaW9uIHBvaW50PSJvcmcuZWNsaXBzZS5lbWYuZWNvcmUuZ2VuZXJhdGVkX3BhY2thZ2UiPgorICAgICAgPCEtLSBAZ2VuZXJhdGVkIFJvYm90TUwgLS0+CisgICAgICA8cGFja2FnZQorICAgICAgICAgICAgdXJpPSJodHRwOi8vL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy5lY29yZSIKKyAgICAgICAgICAgIGNsYXNzPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlIgorICAgICAgICAgICAgZ2VuTW9kZWw9Im1vZGVsL1JvYm90TUwuZ2VubW9kZWwiLz4KKyAgIDwvZXh0ZW5zaW9uPgorCisgICA8ZXh0ZW5zaW9uIHBvaW50PSJvcmcuZWNsaXBzZS5lbWYuZWNvcmUuZ2VuZXJhdGVkX3BhY2thZ2UiPgorICAgICAgPCEtLSBAZ2VuZXJhdGVkIFJvYm90TUwgLS0+CisgICAgICA8cGFja2FnZQorICAgICAgICAgICAgdXJpPSJodHRwOi8vL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy5lY29yZSIKKyAgICAgICAgICAgIGNsYXNzPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZSIKKyAgICAgICAgICAgIGdlbk1vZGVsPSJtb2RlbC9Sb2JvdE1MLmdlbm1vZGVsIi8+CisgICA8L2V4dGVuc2lvbj4KKyAgIDxleHRlbnNpb24gcG9pbnQ9Im9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy5jb250ZXh0Ij4KKyAgICAgIDxjb250ZXh0IGNvbnRleHRNb2RlbD0icHJvcGVydGllcy9Sb2JvdE1MUHJvZmlsZS5jdHgiPgorICAgICAgPC9jb250ZXh0PgorICAgPC9leHRlbnNpb24+CisgICA8ZXh0ZW5zaW9uCisgICAgICAgICBwb2ludD0ib3JnLmVjbGlwc2UudW1sMi51bWwuZ2VuZXJhdGVkX3BhY2thZ2UiPgorICAgICAgPHByb2ZpbGUKKyAgICAgICAgICAgIGxvY2F0aW9uPSJwYXRobWFwOi8vUm9ib3RtbF9MSUJSQVJJRVMvUm9ib3RNTFBsYXRmb3JtTGlicmFyaWVzLnVtbCNfRGY0XzRBSHdFZUNRUU9LcmhPX2ZJUSIKKyAgICAgICAgICAgIHVyaT0iaHR0cDovLy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy5lY29yZSI+CisgICAgICA8L3Byb2ZpbGU+CisgICA8L2V4dGVuc2lvbj4KKzwvcGx1Z2luPgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3BvbS54bWwgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcG9tLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wMmE0NjdiCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3BvbS54bWwKQEAgLTAsMCArMSwxMSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxwcm9qZWN0PgorCTxtb2RlbFZlcnNpb24+NC4wLjA8L21vZGVsVmVyc2lvbj4KKwk8cGFyZW50PgorCQk8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGFyZW50PC9hcnRpZmFjdElkPgorCQk8Z3JvdXBJZD5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWw8L2dyb3VwSWQ+CisJCTx2ZXJzaW9uPjEuMi4wLVNOQVBTSE9UPC92ZXJzaW9uPgorCTwvcGFyZW50PgorCTxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbDwvYXJ0aWZhY3RJZD4KKwk8cGFja2FnaW5nPmVjbGlwc2UtcGx1Z2luPC9wYWNrYWdpbmc+Cis8L3Byb2plY3Q+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvUm9ib3RNTFByb2ZpbGUuY3R4IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvUm9ib3RNTFByb2ZpbGUuY3R4Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI5ZTY2YzgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy9Sb2JvdE1MUHJvZmlsZS5jdHgKQEAgLTAsMCArMSwxNjYwIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJBU0NJSSI/PgorPGNvbnRleHRzOkNvbnRleHQgeG1pOnZlcnNpb249IjIuMCIgeG1sbnM6eG1pPSJodHRwOi8vd3d3Lm9tZy5vcmcvWE1JIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczpjb25zdHJhaW50cz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9wYXB5cnVzL2NvbnN0cmFpbnRzLzAuOSIgeG1sbnM6Y29udGV4dHM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvcGFweXJ1cy9wcm9wZXJ0aWVzL2NvbnRleHRzLzAuOSIgbmFtZT0iUm9ib3RNTCI+CisgIDxkZXBlbmRlbmNpZXMgaHJlZj0icHBlOi9jb250ZXh0L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvVU1ML1VNTC5jdHgjXzY5UUprS0RKRWVTWnhmQ1h6WnozLXciLz4KKyAgPHRhYnMgbGFiZWw9IlJvYm90TUwiIGlkPSJyb2JvdG1sIiBwcmlvcml0eT0iMTAwIj4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIENoYXNzaXMiIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVDaGFzc2lzLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL1NpbmdsZUNoYXNzaXMueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBDaGFzc2lzIiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVDaGFzc2lzLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL011bHRpcGxlQ2hhc3Npcy54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBJbmVydGlhbE5hdmlnYXRpb25TeXN0ZW0iIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVJbmVydGlhbE5hdmlnYXRpb25TeXN0ZW0ueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlSW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgSW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtIiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVJbmVydGlhbE5hdmlnYXRpb25TeXN0ZW0ueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVJbmVydGlhbE5hdmlnYXRpb25TeXN0ZW0ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgT2RvbWV0cnlTeXN0ZW0iIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVPZG9tZXRyeVN5c3RlbS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVPZG9tZXRyeVN5c3RlbS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIE9kb21ldHJ5U3lzdGVtIiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVPZG9tZXRyeVN5c3RlbS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZU9kb21ldHJ5U3lzdGVtLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIFBvcnQiIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVQb3J0Lnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL1NpbmdsZVBvcnQueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBQb3J0IiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVQb3J0Lnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL011bHRpcGxlUG9ydC54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0iIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0ueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtIiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0ueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgSm9pbnQiIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVKb2ludC54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVKb2ludC54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIEpvaW50IiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVKb2ludC54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZUpvaW50Lnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIExvY29tb3Rpb25IYXJkd2FyZSIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZUxvY29tb3Rpb25IYXJkd2FyZS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVMb2NvbW90aW9uSGFyZHdhcmUueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBMb2NvbW90aW9uSGFyZHdhcmUiIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZUxvY29tb3Rpb25IYXJkd2FyZS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZUxvY29tb3Rpb25IYXJkd2FyZS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL1NpbmdsZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0iIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL011bHRpcGxlT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgUGVkZXN0cmlhbiIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZVBlZGVzdHJpYW4ueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlUGVkZXN0cmlhbi54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIFBlZGVzdHJpYW4iIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZVBlZGVzdHJpYW4ueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVQZWRlc3RyaWFuLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIE9uUG9ydCIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZU9uUG9ydC54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVPblBvcnQueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBPblBvcnQiIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZU9uUG9ydC54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZU9uUG9ydC54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBSb2JvdGljU3lzdGVtIiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlUm9ib3RpY1N5c3RlbS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVSb2JvdGljU3lzdGVtLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgUm9ib3RpY1N5c3RlbSIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlUm9ib3RpY1N5c3RlbS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZVJvYm90aWNTeXN0ZW0ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgQ3ljYWJUSyIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZUN5Y2FiVEsueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlQ3ljYWJUSy54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIEN5Y2FiVEsiIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZUN5Y2FiVEsueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVDeWNhYlRLLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIEFjdHVhdG9ySGFyZHdhcmUiIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVBY3R1YXRvckhhcmR3YXJlLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL1NpbmdsZUFjdHVhdG9ySGFyZHdhcmUueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBBY3R1YXRvckhhcmR3YXJlIiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVBY3R1YXRvckhhcmR3YXJlLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL011bHRpcGxlQWN0dWF0b3JIYXJkd2FyZS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBCdWlsZGluZyIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZUJ1aWxkaW5nLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL1NpbmdsZUJ1aWxkaW5nLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgQnVpbGRpbmciIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZUJ1aWxkaW5nLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL011bHRpcGxlQnVpbGRpbmcueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgQXJtIiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlQXJtLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL1NpbmdsZUFybS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIEFybSIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlQXJtLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL011bHRpcGxlQXJtLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIFNlcnZpY2VQb3J0IiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlU2VydmljZVBvcnQueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlU2VydmljZVBvcnQueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBTZXJ2aWNlUG9ydCIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlU2VydmljZVBvcnQueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVTZXJ2aWNlUG9ydC54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBEYXRhRmxvd1BvcnQiIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVEYXRhRmxvd1BvcnQueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlRGF0YUZsb3dQb3J0Lnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgRGF0YUZsb3dQb3J0IiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVEYXRhRmxvd1BvcnQueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVEYXRhRmxvd1BvcnQueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgU29mdHdhcmUiIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVTb2Z0d2FyZS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVTb2Z0d2FyZS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIFNvZnR3YXJlIiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVTb2Z0d2FyZS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZVNvZnR3YXJlLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIFN0YWlycyIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZVN0YWlycy54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVTdGFpcnMueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBTdGFpcnMiIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZVN0YWlycy54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZVN0YWlycy54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBDYW1lcmFTeXN0ZW0iIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVDYW1lcmFTeXN0ZW0ueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlQ2FtZXJhU3lzdGVtLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgQ2FtZXJhU3lzdGVtIiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVDYW1lcmFTeXN0ZW0ueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVDYW1lcmFTeXN0ZW0ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgSHVtYW4iIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVIdW1hbi54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVIdW1hbi54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIEh1bWFuIiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVIdW1hbi54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZUh1bWFuLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIEdQU1N5c3RlbSIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZUdQU1N5c3RlbS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVHUFNTeXN0ZW0ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBHUFNTeXN0ZW0iIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZUdQU1N5c3RlbS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZUdQU1N5c3RlbS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBQaWxvdGVkU3lzdGVtIiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlUGlsb3RlZFN5c3RlbS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVQaWxvdGVkU3lzdGVtLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgUGlsb3RlZFN5c3RlbSIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlUGlsb3RlZFN5c3RlbS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZVBpbG90ZWRTeXN0ZW0ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgU2Vuc29yU3lzdGVtIiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlU2Vuc29yU3lzdGVtLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL1NpbmdsZVNlbnNvclN5c3RlbS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIFNlbnNvclN5c3RlbSIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlU2Vuc29yU3lzdGVtLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL011bHRpcGxlU2Vuc29yU3lzdGVtLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIE1hbmlwdWxhdG9yIiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlTWFuaXB1bGF0b3IueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlTWFuaXB1bGF0b3IueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBNYW5pcHVsYXRvciIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlTWFuaXB1bGF0b3IueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVNYW5pcHVsYXRvci54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBTZW5zb3JEcml2ZXIiIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVTZW5zb3JEcml2ZXIueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlU2Vuc29yRHJpdmVyLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgU2Vuc29yRHJpdmVyIiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVTZW5zb3JEcml2ZXIueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVTZW5zb3JEcml2ZXIueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgQWN0dWF0ZWRKb2ludCIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZUFjdHVhdGVkSm9pbnQueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlQWN0dWF0ZWRKb2ludC54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIEFjdHVhdGVkSm9pbnQiIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZUFjdHVhdGVkSm9pbnQueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVBY3R1YXRlZEpvaW50Lnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIEd5cm9zY29wZSIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZUd5cm9zY29wZS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVHeXJvc2NvcGUueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBHeXJvc2NvcGUiIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZUd5cm9zY29wZS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZUd5cm9zY29wZS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBXYXRlclN1cmZhY2UiIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVXYXRlclN1cmZhY2UueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlV2F0ZXJTdXJmYWNlLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgV2F0ZXJTdXJmYWNlIiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVXYXRlclN1cmZhY2UueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVXYXRlclN1cmZhY2UueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0iIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVOYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVOYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIE5hdmlnYXRpb25Db21tYW5kU3lzdGVtIiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVOYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZU5hdmlnYXRpb25Db21tYW5kU3lzdGVtLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIEluZnJhUmVkUHJveGltZXRyeVN5c3RlbSIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZUluZnJhUmVkUHJveGltZXRyeVN5c3RlbS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVJbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW0ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBJbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW0iIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZUluZnJhUmVkUHJveGltZXRyeVN5c3RlbS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZUluZnJhUmVkUHJveGltZXRyeVN5c3RlbS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBTZW5zb3JIYXJkd2FyZSIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZVNlbnNvckhhcmR3YXJlLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL1NpbmdsZVNlbnNvckhhcmR3YXJlLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgU2Vuc29ySGFyZHdhcmUiIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZVNlbnNvckhhcmR3YXJlLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL011bHRpcGxlU2Vuc29ySGFyZHdhcmUueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgQ2xvc2VkLUxvb3BDb250cm9sU3lzdGVtIiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlQ2xvc2VkLUxvb3BDb250cm9sU3lzdGVtLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL1NpbmdsZUNsb3NlZC1Mb29wQ29udHJvbFN5c3RlbS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIENsb3NlZC1Mb29wQ29udHJvbFN5c3RlbSIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlQ2xvc2VkLUxvb3BDb250cm9sU3lzdGVtLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL011bHRpcGxlQ2xvc2VkLUxvb3BDb250cm9sU3lzdGVtLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIExlZ1N5c3RlbSIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZUxlZ1N5c3RlbS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVMZWdTeXN0ZW0ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBMZWdTeXN0ZW0iIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZUxlZ1N5c3RlbS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZUxlZ1N5c3RlbS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBBY3R1YXRvclN5c3RlbSIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZUFjdHVhdG9yU3lzdGVtLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL1NpbmdsZUFjdHVhdG9yU3lzdGVtLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgQWN0dWF0b3JTeXN0ZW0iIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZUFjdHVhdG9yU3lzdGVtLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL011bHRpcGxlQWN0dWF0b3JTeXN0ZW0ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgTGlkYXJTeXN0ZW0iIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVMaWRhclN5c3RlbS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVMaWRhclN5c3RlbS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIExpZGFyU3lzdGVtIiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVMaWRhclN5c3RlbS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZUxpZGFyU3lzdGVtLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIE1vYmlsZVJvYm90IiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlTW9iaWxlUm9ib3QueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlTW9iaWxlUm9ib3QueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBNb2JpbGVSb2JvdCIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlTW9iaWxlUm9ib3QueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVNb2JpbGVSb2JvdC54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBPblZhcmlhYmxlIiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlT25WYXJpYWJsZS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVPblZhcmlhYmxlLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgT25WYXJpYWJsZSIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlT25WYXJpYWJsZS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZU9uVmFyaWFibGUueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgU3RlZXJlZFdoZWVsSGFyZHdhcmUiIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVTdGVlcmVkV2hlZWxIYXJkd2FyZS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVTdGVlcmVkV2hlZWxIYXJkd2FyZS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIFN0ZWVyZWRXaGVlbEhhcmR3YXJlIiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVTdGVlcmVkV2hlZWxIYXJkd2FyZS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZVN0ZWVyZWRXaGVlbEhhcmR3YXJlLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIEdyYXNwaW5nU3lzdGVtIiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlR3Jhc3BpbmdTeXN0ZW0ueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlR3Jhc3BpbmdTeXN0ZW0ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBHcmFzcGluZ1N5c3RlbSIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlR3Jhc3BpbmdTeXN0ZW0ueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVHcmFzcGluZ1N5c3RlbS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBIYXJkd2FyZSIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZUhhcmR3YXJlLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL1NpbmdsZUhhcmR3YXJlLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgSGFyZHdhcmUiIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZUhhcmR3YXJlLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL011bHRpcGxlSGFyZHdhcmUueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgQmxlbmRlck1vcnNlIiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlQmxlbmRlck1vcnNlLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL1NpbmdsZUJsZW5kZXJNb3JzZS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIEJsZW5kZXJNb3JzZSIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlQmxlbmRlck1vcnNlLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL011bHRpcGxlQmxlbmRlck1vcnNlLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIE1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0iIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL1NpbmdsZU1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtIiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL011bHRpcGxlTWFuTWFjaGluZUludGVyZmFjZVN5c3RlbS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBFbnZpcm9ubWVudCIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZUVudmlyb25tZW50Lnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL1NpbmdsZUVudmlyb25tZW50Lnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgRW52aXJvbm1lbnQiIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZUVudmlyb25tZW50Lnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL011bHRpcGxlRW52aXJvbm1lbnQueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgU3VyZmFjZSIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZVN1cmZhY2UueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlU3VyZmFjZS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIFN1cmZhY2UiIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZVN1cmZhY2UueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVTdXJmYWNlLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIEFsZ29yaXRobSIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZUFsZ29yaXRobS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVBbGdvcml0aG0ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBBbGdvcml0aG0iIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZUFsZ29yaXRobS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZUFsZ29yaXRobS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBPcGVuLUxvb3BDb250cm9sU3lzdGVtIiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlT3Blbi1Mb29wQ29udHJvbFN5c3RlbS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVPcGVuLUxvb3BDb250cm9sU3lzdGVtLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgT3Blbi1Mb29wQ29udHJvbFN5c3RlbSIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlT3Blbi1Mb29wQ29udHJvbFN5c3RlbS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZU9wZW4tTG9vcENvbnRyb2xTeXN0ZW0ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgUGxhbmV0IiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlUGxhbmV0Lnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL1NpbmdsZVBsYW5ldC54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIFBsYW5ldCIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlUGxhbmV0Lnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL011bHRpcGxlUGxhbmV0Lnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIENvbXBsZXRlQm9uZGluZyIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZUNvbXBsZXRlQm9uZGluZy54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVDb21wbGV0ZUJvbmRpbmcueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBDb21wbGV0ZUJvbmRpbmciIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZUNvbXBsZXRlQm9uZGluZy54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZUNvbXBsZXRlQm9uZGluZy54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBXZWFwb25TeXN0ZW0iIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVXZWFwb25TeXN0ZW0ueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlV2VhcG9uU3lzdGVtLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgV2VhcG9uU3lzdGVtIiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVXZWFwb25TeXN0ZW0ueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVXZWFwb25TeXN0ZW0ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgUG93ZXJIYXJkd2FyZSIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZVBvd2VySGFyZHdhcmUueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlUG93ZXJIYXJkd2FyZS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIFBvd2VySGFyZHdhcmUiIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZVBvd2VySGFyZHdhcmUueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVQb3dlckhhcmR3YXJlLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIFN0YXRlIiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlU3RhdGUueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlU3RhdGUueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBTdGF0ZSIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlU3RhdGUueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVTdGF0ZS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0iIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0ueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtIiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0ueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgUGxhdGZvcm0iIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVQbGF0Zm9ybS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVQbGF0Zm9ybS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIFBsYXRmb3JtIiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVQbGF0Zm9ybS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZVBsYXRmb3JtLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIEltYWdlU2Vuc29yU3lzdGVtIiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlSW1hZ2VTZW5zb3JTeXN0ZW0ueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlSW1hZ2VTZW5zb3JTeXN0ZW0ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBJbWFnZVNlbnNvclN5c3RlbSIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlSW1hZ2VTZW5zb3JTeXN0ZW0ueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVJbWFnZVNlbnNvclN5c3RlbS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBMYW5kU3VyZmFjZSIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZUxhbmRTdXJmYWNlLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL1NpbmdsZUxhbmRTdXJmYWNlLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgTGFuZFN1cmZhY2UiIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZUxhbmRTdXJmYWNlLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL011bHRpcGxlTGFuZFN1cmZhY2UueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgUm9ib3RpY1NpbXVsYXRvciIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZVJvYm90aWNTaW11bGF0b3IueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlUm9ib3RpY1NpbXVsYXRvci54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIFJvYm90aWNTaW11bGF0b3IiIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZVJvYm90aWNTaW11bGF0b3IueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVSb2JvdGljU2ltdWxhdG9yLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIERlcGxveW1lbnRQbGFuIiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlRGVwbG95bWVudFBsYW4ueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlRGVwbG95bWVudFBsYW4ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBEZXBsb3ltZW50UGxhbiIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlRGVwbG95bWVudFBsYW4ueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVEZXBsb3ltZW50UGxhbi54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBFeHRlcm5hbExpYnJhcnkiIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVFeHRlcm5hbExpYnJhcnkueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlRXh0ZXJuYWxMaWJyYXJ5Lnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgRXh0ZXJuYWxMaWJyYXJ5IiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVFeHRlcm5hbExpYnJhcnkueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVFeHRlcm5hbExpYnJhcnkueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgQWxnb3JpdGhtTGlicmFyeSIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZUFsZ29yaXRobUxpYnJhcnkueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlQWxnb3JpdGhtTGlicmFyeS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIEFsZ29yaXRobUxpYnJhcnkiIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZUFsZ29yaXRobUxpYnJhcnkueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVBbGdvcml0aG1MaWJyYXJ5Lnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIFJvYm90IiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlUm9ib3QueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlUm9ib3QueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBSb2JvdCIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlUm9ib3QueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVSb2JvdC54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBJbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbSIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZUluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL1NpbmdsZUluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0iIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZUluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL011bHRpcGxlSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgUGh5c2ljYWxPYmplY3QiIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVQaHlzaWNhbE9iamVjdC54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVQaHlzaWNhbE9iamVjdC54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIFBoeXNpY2FsT2JqZWN0IiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVQaHlzaWNhbE9iamVjdC54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZVBoeXNpY2FsT2JqZWN0Lnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIFN1cHBvcnRpbmdTdHJ1Y3R1cmUiIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVTdXBwb3J0aW5nU3RydWN0dXJlLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL1NpbmdsZVN1cHBvcnRpbmdTdHJ1Y3R1cmUueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBTdXBwb3J0aW5nU3RydWN0dXJlIiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVTdXBwb3J0aW5nU3RydWN0dXJlLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL011bHRpcGxlU3VwcG9ydGluZ1N0cnVjdHVyZS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBHcmFzcGluZ0hhcmR3YXJlIiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlR3Jhc3BpbmdIYXJkd2FyZS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVHcmFzcGluZ0hhcmR3YXJlLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgR3Jhc3BpbmdIYXJkd2FyZSIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlR3Jhc3BpbmdIYXJkd2FyZS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZUdyYXNwaW5nSGFyZHdhcmUueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgTWVjaGFuaWNhbExpbmthZ2UiIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVNZWNoYW5pY2FsTGlua2FnZS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVNZWNoYW5pY2FsTGlua2FnZS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIE1lY2hhbmljYWxMaW5rYWdlIiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVNZWNoYW5pY2FsTGlua2FnZS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZU1lY2hhbmljYWxMaW5rYWdlLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIEZsb29yIiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlRmxvb3IueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlRmxvb3IueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBGbG9vciIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlRmxvb3IueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVGbG9vci54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBFbmdpbmVTeXN0ZW0iIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVFbmdpbmVTeXN0ZW0ueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlRW5naW5lU3lzdGVtLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgRW5naW5lU3lzdGVtIiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVFbmdpbmVTeXN0ZW0ueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVFbmdpbmVTeXN0ZW0ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgU3lzdGVtIiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlU3lzdGVtLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL1NpbmdsZVN5c3RlbS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIFN5c3RlbSIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlU3lzdGVtLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL011bHRpcGxlU3lzdGVtLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIFRyYW5zaXRpb24iIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVUcmFuc2l0aW9uLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL1NpbmdsZVRyYW5zaXRpb24ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBUcmFuc2l0aW9uIiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVUcmFuc2l0aW9uLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL011bHRpcGxlVHJhbnNpdGlvbi54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBMb2NvbW90aW9uU3lzdGVtIiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlTG9jb21vdGlvblN5c3RlbS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVMb2NvbW90aW9uU3lzdGVtLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgTG9jb21vdGlvblN5c3RlbSIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlTG9jb21vdGlvblN5c3RlbS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZUxvY29tb3Rpb25TeXN0ZW0ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgTGVnIiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlTGVnLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL1NpbmdsZUxlZy54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIExlZyIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlTGVnLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL011bHRpcGxlTGVnLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIEFnZW50IiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlQWdlbnQueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlQWdlbnQueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBBZ2VudCIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlQWdlbnQueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVBZ2VudC54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBBbGxvY2F0ZSIgc2VjdGlvbkZpbGU9InVpL1NpbmdsZUFsbG9jYXRlLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL1NpbmdsZUFsbG9jYXRlLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgQWxsb2NhdGUiIHNlY3Rpb25GaWxlPSJ1aS9NdWx0aXBsZUFsbG9jYXRlLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL011bHRpcGxlQWxsb2NhdGUueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgU3RlZXJlZFdoZWVsU3lzdGVtIiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlU3RlZXJlZFdoZWVsU3lzdGVtLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL1NpbmdsZVN0ZWVyZWRXaGVlbFN5c3RlbS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIFN0ZWVyZWRXaGVlbFN5c3RlbSIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlU3RlZXJlZFdoZWVsU3lzdGVtLnh3dCI+CisgICAgICA8d2lkZ2V0IGhyZWY9InVpL011bHRpcGxlU3RlZXJlZFdoZWVsU3lzdGVtLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIFJvYm90aWNIZWFkIiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlUm9ib3RpY0hlYWQueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlUm9ib3RpY0hlYWQueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBSb2JvdGljSGVhZCIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlUm9ib3RpY0hlYWQueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVSb2JvdGljSGVhZC54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBDeWJlclBoeXNpY2FsU3lzdGVtIiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlQ3liZXJQaHlzaWNhbFN5c3RlbS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVDeWJlclBoeXNpY2FsU3lzdGVtLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgQ3liZXJQaHlzaWNhbFN5c3RlbSIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlQ3liZXJQaHlzaWNhbFN5c3RlbS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZUN5YmVyUGh5c2ljYWxTeXN0ZW0ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJTaW5nbGUgUm9ib3RpY01pZGRsZXdhcmUiIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVSb2JvdGljTWlkZGxld2FyZS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9TaW5nbGVSb2JvdGljTWlkZGxld2FyZS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9Ik11bHRpcGxlIFJvYm90aWNNaWRkbGV3YXJlIiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVSb2JvdGljTWlkZGxld2FyZS54d3QiPgorICAgICAgPHdpZGdldCBocmVmPSJ1aS9NdWx0aXBsZVJvYm90aWNNaWRkbGV3YXJlLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iU2luZ2xlIEpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtIiBzZWN0aW9uRmlsZT0idWkvU2luZ2xlSm95c3RpY05hdmlnYXRpb25TeXN0ZW0ueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlSm95c3RpY05hdmlnYXRpb25TeXN0ZW0ueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICAgIDxzZWN0aW9ucyBuYW1lPSJNdWx0aXBsZSBKb3lzdGljTmF2aWdhdGlvblN5c3RlbSIgc2VjdGlvbkZpbGU9InVpL011bHRpcGxlSm95c3RpY05hdmlnYXRpb25TeXN0ZW0ueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVKb3lzdGljTmF2aWdhdGlvblN5c3RlbS54d3QjLyIvPgorICAgIDwvc2VjdGlvbnM+CisgICAgPHNlY3Rpb25zIG5hbWU9IlNpbmdsZSBHcm91bmQiIHNlY3Rpb25GaWxlPSJ1aS9TaW5nbGVHcm91bmQueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvU2luZ2xlR3JvdW5kLnh3dCMvIi8+CisgICAgPC9zZWN0aW9ucz4KKyAgICA8c2VjdGlvbnMgbmFtZT0iTXVsdGlwbGUgR3JvdW5kIiBzZWN0aW9uRmlsZT0idWkvTXVsdGlwbGVHcm91bmQueHd0Ij4KKyAgICAgIDx3aWRnZXQgaHJlZj0idWkvTXVsdGlwbGVHcm91bmQueHd0Iy8iLz4KKyAgICA8L3NlY3Rpb25zPgorICA8L3RhYnM+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgQ2hhc3NpcyIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMCIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNSI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc1NpbmdsZUNoYXNzaXMiPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkNoYXNzaXMiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIENoYXNzaXMiIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjEiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjUiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZUNoYXNzaXMiPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkNoYXNzaXMiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIEluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMiIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNTEiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVJbmVydGlhbE5hdmlnYXRpb25TeXN0ZW0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgSW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4zIiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy41MSI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc011bHRpcGxlSW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpJbmVydGlhbE5hdmlnYXRpb25TeXN0ZW0iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIE9kb21ldHJ5U3lzdGVtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy40IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy40Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlT2RvbWV0cnlTeXN0ZW0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6Ok9kb21ldHJ5U3lzdGVtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBPZG9tZXRyeVN5c3RlbSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuNSIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNCI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc011bHRpcGxlT2RvbWV0cnlTeXN0ZW0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6Ok9kb21ldHJ5U3lzdGVtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBQb3J0IiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy42IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy45Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlUG9ydCI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6UG9ydCIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgUG9ydCIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuNyIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuOSI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc011bHRpcGxlUG9ydCI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6UG9ydCIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy44IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy41MiI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc1NpbmdsZU9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0iIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjkiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjUyIj4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6Ok9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgSm9pbnQiIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjEwIiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4xNCI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc1NpbmdsZUpvaW50Ij4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpKb2ludCIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgSm9pbnQiIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjExIiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4xNCI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc011bHRpcGxlSm9pbnQiPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkpvaW50Ii8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBMb2NvbW90aW9uSGFyZHdhcmUiIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjEyIiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4xOSI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc1NpbmdsZUxvY29tb3Rpb25IYXJkd2FyZSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6TG9jb21vdGlvbkhhcmR3YXJlIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBMb2NvbW90aW9uSGFyZHdhcmUiIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjEzIiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4xOSI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc011bHRpcGxlTG9jb21vdGlvbkhhcmR3YXJlIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpMb2NvbW90aW9uSGFyZHdhcmUiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIE9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4xNCIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMjEiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIE9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4xNSIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMjEiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgUGVkZXN0cmlhbiIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMTYiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjY4Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlUGVkZXN0cmlhbiI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6UGVkZXN0cmlhbiIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgUGVkZXN0cmlhbiIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMTciIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjY4Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVQZWRlc3RyaWFuIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpQZWRlc3RyaWFuIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBPblBvcnQiIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjE4IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy42NiI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc1NpbmdsZU9uUG9ydCI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6T25Qb3J0Ii8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBPblBvcnQiIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjE5IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy42NiI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc011bHRpcGxlT25Qb3J0Ij4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpPblBvcnQiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIFJvYm90aWNTeXN0ZW0iIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjIwIiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy42MyI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc1NpbmdsZVJvYm90aWNTeXN0ZW0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OlJvYm90aWNTeXN0ZW0iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIFJvYm90aWNTeXN0ZW0iIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjIxIiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy42MyI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc011bHRpcGxlUm9ib3RpY1N5c3RlbSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6Um9ib3RpY1N5c3RlbSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgQ3ljYWJUSyIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMjIiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjM0Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlQ3ljYWJUSyI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6Q3ljYWJUSyIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgQ3ljYWJUSyIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMjMiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjM0Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVDeWNhYlRLIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpDeWNhYlRLIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBBY3R1YXRvckhhcmR3YXJlIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4yNCIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNzEiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVBY3R1YXRvckhhcmR3YXJlIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpBY3R1YXRvckhhcmR3YXJlIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBBY3R1YXRvckhhcmR3YXJlIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4yNSIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNzEiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZUFjdHVhdG9ySGFyZHdhcmUiPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkFjdHVhdG9ySGFyZHdhcmUiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIEJ1aWxkaW5nIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4yNiIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMTIiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVCdWlsZGluZyI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6QnVpbGRpbmciLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIEJ1aWxkaW5nIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4yNyIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMTIiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZUJ1aWxkaW5nIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpCdWlsZGluZyIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgQXJtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4yOCIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMzgiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVBcm0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkFybSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgQXJtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4yOSIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMzgiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZUFybSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6QXJtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBTZXJ2aWNlUG9ydCIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMzAiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjU1Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlU2VydmljZVBvcnQiPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OlNlcnZpY2VQb3J0Ii8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBTZXJ2aWNlUG9ydCIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMzEiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjU1Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVTZXJ2aWNlUG9ydCI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6U2VydmljZVBvcnQiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIERhdGFGbG93UG9ydCIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMzIiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjciPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVEYXRhRmxvd1BvcnQiPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkRhdGFGbG93UG9ydCIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgRGF0YUZsb3dQb3J0IiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4zMyIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNyI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc011bHRpcGxlRGF0YUZsb3dQb3J0Ij4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpEYXRhRmxvd1BvcnQiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIFNvZnR3YXJlIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4zNCIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMTMiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVTb2Z0d2FyZSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6U29mdHdhcmUiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIFNvZnR3YXJlIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4zNSIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMTMiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZVNvZnR3YXJlIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpTb2Z0d2FyZSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgU3RhaXJzIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4zNiIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNjIiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVTdGFpcnMiPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OlN0YWlycyIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgU3RhaXJzIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4zNyIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNjIiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZVN0YWlycyI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6U3RhaXJzIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBDYW1lcmFTeXN0ZW0iIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjM4IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy42MCI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc1NpbmdsZUNhbWVyYVN5c3RlbSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6Q2FtZXJhU3lzdGVtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBDYW1lcmFTeXN0ZW0iIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjM5IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy42MCI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc011bHRpcGxlQ2FtZXJhU3lzdGVtIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpDYW1lcmFTeXN0ZW0iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIEh1bWFuIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy40MCIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMjgiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVIdW1hbiI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6SHVtYW4iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIEh1bWFuIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy40MSIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMjgiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZUh1bWFuIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpIdW1hbiIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgR1BTU3lzdGVtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy40MiIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMzEiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVHUFNTeXN0ZW0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkdQU1N5c3RlbSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgR1BTU3lzdGVtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy40MyIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMzEiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZUdQU1N5c3RlbSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6R1BTU3lzdGVtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBQaWxvdGVkU3lzdGVtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy40NCIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMjUiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVQaWxvdGVkU3lzdGVtIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpQaWxvdGVkU3lzdGVtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBQaWxvdGVkU3lzdGVtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy40NSIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMjUiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZVBpbG90ZWRTeXN0ZW0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OlBpbG90ZWRTeXN0ZW0iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIFNlbnNvclN5c3RlbSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuNDYiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjI3Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlU2Vuc29yU3lzdGVtIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpTZW5zb3JTeXN0ZW0iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIFNlbnNvclN5c3RlbSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuNDciIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjI3Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVTZW5zb3JTeXN0ZW0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OlNlbnNvclN5c3RlbSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgTWFuaXB1bGF0b3IiIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjQ4IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4zMyI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc1NpbmdsZU1hbmlwdWxhdG9yIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpNYW5pcHVsYXRvciIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgTWFuaXB1bGF0b3IiIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjQ5IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4zMyI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc011bHRpcGxlTWFuaXB1bGF0b3IiPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6Ok1hbmlwdWxhdG9yIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBTZW5zb3JEcml2ZXIiIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjUwIiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4yIj4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlU2Vuc29yRHJpdmVyIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpTZW5zb3JEcml2ZXIiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIFNlbnNvckRyaXZlciIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuNTEiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjIiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZVNlbnNvckRyaXZlciI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6U2Vuc29yRHJpdmVyIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBBY3R1YXRlZEpvaW50IiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy41MiIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMjIiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVBY3R1YXRlZEpvaW50Ij4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpBY3R1YXRlZEpvaW50Ii8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBBY3R1YXRlZEpvaW50IiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy41MyIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMjIiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZUFjdHVhdGVkSm9pbnQiPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkFjdHVhdGVkSm9pbnQiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIEd5cm9zY29wZSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuNTQiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjM3Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlR3lyb3Njb3BlIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpHeXJvc2NvcGUiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIEd5cm9zY29wZSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuNTUiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjM3Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVHeXJvc2NvcGUiPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6Okd5cm9zY29wZSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgV2F0ZXJTdXJmYWNlIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy41NiIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMjkiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVXYXRlclN1cmZhY2UiPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OldhdGVyU3VyZmFjZSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgV2F0ZXJTdXJmYWNlIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy41NyIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMjkiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZVdhdGVyU3VyZmFjZSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6V2F0ZXJTdXJmYWNlIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBOYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuNTgiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjExIj4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6Ok5hdmlnYXRpb25Db21tYW5kU3lzdGVtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBOYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuNTkiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjExIj4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVOYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6TmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIEluZnJhUmVkUHJveGltZXRyeVN5c3RlbSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuNjAiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjc4Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpJbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW0iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIEluZnJhUmVkUHJveGltZXRyeVN5c3RlbSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuNjEiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjc4Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVJbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkluZnJhUmVkUHJveGltZXRyeVN5c3RlbSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgU2Vuc29ySGFyZHdhcmUiIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjYyIiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy41OCI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc1NpbmdsZVNlbnNvckhhcmR3YXJlIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpTZW5zb3JIYXJkd2FyZSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgU2Vuc29ySGFyZHdhcmUiIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjYzIiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy41OCI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc011bHRpcGxlU2Vuc29ySGFyZHdhcmUiPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OlNlbnNvckhhcmR3YXJlIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBDbG9zZWQtTG9vcENvbnRyb2xTeXN0ZW0iIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjY0IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy40NSI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc1NpbmdsZUNsb3NlZC1Mb29wQ29udHJvbFN5c3RlbSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6Q2xvc2VkLUxvb3BDb250cm9sU3lzdGVtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBDbG9zZWQtTG9vcENvbnRyb2xTeXN0ZW0iIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjY1IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy40NSI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc011bHRpcGxlQ2xvc2VkLUxvb3BDb250cm9sU3lzdGVtIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpDbG9zZWQtTG9vcENvbnRyb2xTeXN0ZW0iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIExlZ1N5c3RlbSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuNjYiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjQ5Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlTGVnU3lzdGVtIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpMZWdTeXN0ZW0iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIExlZ1N5c3RlbSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuNjciIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjQ5Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVMZWdTeXN0ZW0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkxlZ1N5c3RlbSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgQWN0dWF0b3JTeXN0ZW0iIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjY4IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy42MSI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc1NpbmdsZUFjdHVhdG9yU3lzdGVtIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpBY3R1YXRvclN5c3RlbSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgQWN0dWF0b3JTeXN0ZW0iIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjY5IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy42MSI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc011bHRpcGxlQWN0dWF0b3JTeXN0ZW0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkFjdHVhdG9yU3lzdGVtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBMaWRhclN5c3RlbSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuNzAiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjU5Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlTGlkYXJTeXN0ZW0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkxpZGFyU3lzdGVtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBMaWRhclN5c3RlbSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuNzEiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjU5Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVMaWRhclN5c3RlbSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6TGlkYXJTeXN0ZW0iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIE1vYmlsZVJvYm90IiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy43MiIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNzUiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVNb2JpbGVSb2JvdCI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6TW9iaWxlUm9ib3QiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIE1vYmlsZVJvYm90IiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy43MyIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNzUiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZU1vYmlsZVJvYm90Ij4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpNb2JpbGVSb2JvdCIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgT25WYXJpYWJsZSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuNzQiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjcyIj4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlT25WYXJpYWJsZSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6T25WYXJpYWJsZSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgT25WYXJpYWJsZSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuNzUiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjcyIj4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVPblZhcmlhYmxlIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpPblZhcmlhYmxlIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBTdGVlcmVkV2hlZWxIYXJkd2FyZSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuNzYiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjY5Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlU3RlZXJlZFdoZWVsSGFyZHdhcmUiPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OlN0ZWVyZWRXaGVlbEhhcmR3YXJlIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBTdGVlcmVkV2hlZWxIYXJkd2FyZSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuNzciIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjY5Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVTdGVlcmVkV2hlZWxIYXJkd2FyZSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6U3RlZXJlZFdoZWVsSGFyZHdhcmUiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIEdyYXNwaW5nU3lzdGVtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy43OCIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMyI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc1NpbmdsZUdyYXNwaW5nU3lzdGVtIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpHcmFzcGluZ1N5c3RlbSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgR3Jhc3BpbmdTeXN0ZW0iIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjc5IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4zIj4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVHcmFzcGluZ1N5c3RlbSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6R3Jhc3BpbmdTeXN0ZW0iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIEhhcmR3YXJlIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy44MCIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNTciPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVIYXJkd2FyZSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6SGFyZHdhcmUiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIEhhcmR3YXJlIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy44MSIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNTciPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZUhhcmR3YXJlIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpIYXJkd2FyZSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgQmxlbmRlck1vcnNlIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy44MiIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNTQiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVCbGVuZGVyTW9yc2UiPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkJsZW5kZXJNb3JzZSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgQmxlbmRlck1vcnNlIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy44MyIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNTQiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZUJsZW5kZXJNb3JzZSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6QmxlbmRlck1vcnNlIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy44NCIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNjciPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy44NSIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNjciPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZU1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6Ok1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIEVudmlyb25tZW50IiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy44NiIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNDgiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVFbnZpcm9ubWVudCI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6RW52aXJvbm1lbnQiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIEVudmlyb25tZW50IiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy44NyIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNDgiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZUVudmlyb25tZW50Ij4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpFbnZpcm9ubWVudCIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgU3VyZmFjZSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuODgiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjAiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVTdXJmYWNlIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpTdXJmYWNlIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBTdXJmYWNlIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy44OSIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMCI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc011bHRpcGxlU3VyZmFjZSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6U3VyZmFjZSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgQWxnb3JpdGhtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy45MCIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNzQiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVBbGdvcml0aG0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkFsZ29yaXRobSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgQWxnb3JpdGhtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy45MSIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNzQiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZUFsZ29yaXRobSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6QWxnb3JpdGhtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBPcGVuLUxvb3BDb250cm9sU3lzdGVtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy45MiIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMTAiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVPcGVuLUxvb3BDb250cm9sU3lzdGVtIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpPcGVuLUxvb3BDb250cm9sU3lzdGVtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBPcGVuLUxvb3BDb250cm9sU3lzdGVtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy45MyIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMTAiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZU9wZW4tTG9vcENvbnRyb2xTeXN0ZW0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6Ok9wZW4tTG9vcENvbnRyb2xTeXN0ZW0iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIFBsYW5ldCIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuOTQiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjUwIj4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlUGxhbmV0Ij4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpQbGFuZXQiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIFBsYW5ldCIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuOTUiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjUwIj4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVQbGFuZXQiPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OlBsYW5ldCIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgQ29tcGxldGVCb25kaW5nIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy45NiIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNDEiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVDb21wbGV0ZUJvbmRpbmciPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkNvbXBsZXRlQm9uZGluZyIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgQ29tcGxldGVCb25kaW5nIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy45NyIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNDEiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZUNvbXBsZXRlQm9uZGluZyI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6Q29tcGxldGVCb25kaW5nIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBXZWFwb25TeXN0ZW0iIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjk4IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy43MyI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc1NpbmdsZVdlYXBvblN5c3RlbSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6V2VhcG9uU3lzdGVtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBXZWFwb25TeXN0ZW0iIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjk5IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy43MyI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc011bHRpcGxlV2VhcG9uU3lzdGVtIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpXZWFwb25TeXN0ZW0iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIFBvd2VySGFyZHdhcmUiIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjEwMCIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNzAiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVQb3dlckhhcmR3YXJlIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpQb3dlckhhcmR3YXJlIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBQb3dlckhhcmR3YXJlIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4xMDEiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjcwIj4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVQb3dlckhhcmR3YXJlIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpQb3dlckhhcmR3YXJlIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBTdGF0ZSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMTAyIiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4xNiI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc1NpbmdsZVN0YXRlIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpTdGF0ZSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgU3RhdGUiIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjEwMyIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMTYiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZVN0YXRlIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpTdGF0ZSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4xMDQiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjY1Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIExvY2FsaXphdGlvblNlbnNvclN5c3RlbSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMTA1IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy42NSI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc011bHRpcGxlTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIFBsYXRmb3JtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4xMDYiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjI0Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlUGxhdGZvcm0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OlBsYXRmb3JtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBQbGF0Zm9ybSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMTA3IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4yNCI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc011bHRpcGxlUGxhdGZvcm0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OlBsYXRmb3JtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBJbWFnZVNlbnNvclN5c3RlbSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMTA4IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy42Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlSW1hZ2VTZW5zb3JTeXN0ZW0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkltYWdlU2Vuc29yU3lzdGVtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBJbWFnZVNlbnNvclN5c3RlbSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMTA5IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy42Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVJbWFnZVNlbnNvclN5c3RlbSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6SW1hZ2VTZW5zb3JTeXN0ZW0iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIExhbmRTdXJmYWNlIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4xMTAiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjI2Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlTGFuZFN1cmZhY2UiPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkxhbmRTdXJmYWNlIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBMYW5kU3VyZmFjZSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMTExIiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4yNiI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc011bHRpcGxlTGFuZFN1cmZhY2UiPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkxhbmRTdXJmYWNlIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBSb2JvdGljU2ltdWxhdG9yIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4xMTIiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjQyIj4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlUm9ib3RpY1NpbXVsYXRvciI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6Um9ib3RpY1NpbXVsYXRvciIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgUm9ib3RpY1NpbXVsYXRvciIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMTEzIiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy40MiI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc011bHRpcGxlUm9ib3RpY1NpbXVsYXRvciI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6Um9ib3RpY1NpbXVsYXRvciIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgRGVwbG95bWVudFBsYW4iIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjExNCIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMjAiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVEZXBsb3ltZW50UGxhbiI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6RGVwbG95bWVudFBsYW4iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIERlcGxveW1lbnRQbGFuIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4xMTUiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjIwIj4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVEZXBsb3ltZW50UGxhbiI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6RGVwbG95bWVudFBsYW4iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIEV4dGVybmFsTGlicmFyeSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMTE2IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy40NyI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc1NpbmdsZUV4dGVybmFsTGlicmFyeSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6RXh0ZXJuYWxMaWJyYXJ5Ii8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBFeHRlcm5hbExpYnJhcnkiIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjExNyIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNDciPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZUV4dGVybmFsTGlicmFyeSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6RXh0ZXJuYWxMaWJyYXJ5Ii8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBBbGdvcml0aG1MaWJyYXJ5IiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4xMTgiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjIzIj4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlQWxnb3JpdGhtTGlicmFyeSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6QWxnb3JpdGhtTGlicmFyeSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgQWxnb3JpdGhtTGlicmFyeSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMTE5IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4yMyI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc011bHRpcGxlQWxnb3JpdGhtTGlicmFyeSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6QWxnb3JpdGhtTGlicmFyeSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgUm9ib3QiIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjEyMCIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMzYiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVSb2JvdCI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6Um9ib3QiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIFJvYm90IiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4xMjEiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjM2Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVSb2JvdCI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6Um9ib3QiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIEluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4xMjIiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjQ0Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBJbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMTIzIiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy40NCI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc011bHRpcGxlSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBQaHlzaWNhbE9iamVjdCIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMTI0IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4xOCI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc1NpbmdsZVBoeXNpY2FsT2JqZWN0Ij4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpQaHlzaWNhbE9iamVjdCIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgUGh5c2ljYWxPYmplY3QiIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjEyNSIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMTgiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZVBoeXNpY2FsT2JqZWN0Ij4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpQaHlzaWNhbE9iamVjdCIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgU3VwcG9ydGluZ1N0cnVjdHVyZSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMTI2IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy42NCI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc1NpbmdsZVN1cHBvcnRpbmdTdHJ1Y3R1cmUiPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OlN1cHBvcnRpbmdTdHJ1Y3R1cmUiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIFN1cHBvcnRpbmdTdHJ1Y3R1cmUiIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjEyNyIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNjQiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZVN1cHBvcnRpbmdTdHJ1Y3R1cmUiPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OlN1cHBvcnRpbmdTdHJ1Y3R1cmUiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIEdyYXNwaW5nSGFyZHdhcmUiIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjEyOCIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNTYiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVHcmFzcGluZ0hhcmR3YXJlIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpHcmFzcGluZ0hhcmR3YXJlIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBHcmFzcGluZ0hhcmR3YXJlIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4xMjkiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjU2Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVHcmFzcGluZ0hhcmR3YXJlIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpHcmFzcGluZ0hhcmR3YXJlIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBNZWNoYW5pY2FsTGlua2FnZSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMTMwIiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy40MCI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc1NpbmdsZU1lY2hhbmljYWxMaW5rYWdlIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpNZWNoYW5pY2FsTGlua2FnZSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgTWVjaGFuaWNhbExpbmthZ2UiIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjEzMSIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNDAiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZU1lY2hhbmljYWxMaW5rYWdlIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpNZWNoYW5pY2FsTGlua2FnZSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgRmxvb3IiIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjEzMiIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMzAiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVGbG9vciI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6Rmxvb3IiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIEZsb29yIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4xMzMiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjMwIj4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVGbG9vciI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6Rmxvb3IiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIEVuZ2luZVN5c3RlbSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMTM0IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4zNSI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc1NpbmdsZUVuZ2luZVN5c3RlbSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6RW5naW5lU3lzdGVtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBFbmdpbmVTeXN0ZW0iIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjEzNSIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMzUiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZUVuZ2luZVN5c3RlbSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6RW5naW5lU3lzdGVtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBTeXN0ZW0iIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjEzNiIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMTUiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVTeXN0ZW0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OlN5c3RlbSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgU3lzdGVtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4xMzciIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjE1Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVTeXN0ZW0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OlN5c3RlbSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgVHJhbnNpdGlvbiIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMTM4IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4xNyI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc1NpbmdsZVRyYW5zaXRpb24iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OlRyYW5zaXRpb24iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIFRyYW5zaXRpb24iIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjEzOSIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMTciPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZVRyYW5zaXRpb24iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OlRyYW5zaXRpb24iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIExvY29tb3Rpb25TeXN0ZW0iIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjE0MCIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNDYiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVMb2NvbW90aW9uU3lzdGVtIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpMb2NvbW90aW9uU3lzdGVtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBMb2NvbW90aW9uU3lzdGVtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4xNDEiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjQ2Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVMb2NvbW90aW9uU3lzdGVtIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpMb2NvbW90aW9uU3lzdGVtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBMZWciIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjE0MiIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNzciPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVMZWciPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkxlZyIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgTGVnIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4xNDMiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjc3Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVMZWciPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkxlZyIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgQWdlbnQiIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjE0NCIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNzkiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVBZ2VudCI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6QWdlbnQiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIEFnZW50IiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4xNDUiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjc5Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzTXVsdGlwbGVBZ2VudCI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6QWdlbnQiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIEFsbG9jYXRlIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4xNDYiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjEiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVBbGxvY2F0ZSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6QWxsb2NhdGUiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIEFsbG9jYXRlIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4xNDciIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjEiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZUFsbG9jYXRlIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpBbGxvY2F0ZSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgU3RlZXJlZFdoZWVsU3lzdGVtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4xNDgiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjgiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNTaW5nbGVTdGVlcmVkV2hlZWxTeXN0ZW0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OlN0ZWVyZWRXaGVlbFN5c3RlbSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgU3RlZXJlZFdoZWVsU3lzdGVtIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4xNDkiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjgiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZVN0ZWVyZWRXaGVlbFN5c3RlbSI+CisgICAgICA8Y29uc3RyYWludFR5cGUgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL0Vudmlyb25tZW50LnhtaSMvL0Bjb25zdHJhaW50VHlwZXMuMSIvPgorICAgICAgPHByb3BlcnRpZXMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlZhbHVlUHJvcGVydHkiIG5hbWU9InN0ZXJlb3R5cGVOYW1lIiB2YWx1ZT0iUm9ib3RNTDo6U3RlZXJlZFdoZWVsU3lzdGVtIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBSb2JvdGljSGVhZCIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMTUwIiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy41MyI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc1NpbmdsZVJvYm90aWNIZWFkIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpSb2JvdGljSGVhZCIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgUm9ib3RpY0hlYWQiIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjE1MSIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNTMiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZVJvYm90aWNIZWFkIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpSb2JvdGljSGVhZCIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgQ3liZXJQaHlzaWNhbFN5c3RlbSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMTUyIiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy40MyI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc1NpbmdsZUN5YmVyUGh5c2ljYWxTeXN0ZW0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkN5YmVyUGh5c2ljYWxTeXN0ZW0iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIEN5YmVyUGh5c2ljYWxTeXN0ZW0iIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjE1MyIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNDMiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZUN5YmVyUGh5c2ljYWxTeXN0ZW0iPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OkN5YmVyUGh5c2ljYWxTeXN0ZW0iLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgbmFtZT0iU2luZ2xlIFJvYm90aWNNaWRkbGV3YXJlIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4xNTQiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjM5Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlUm9ib3RpY01pZGRsZXdhcmUiPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OlJvYm90aWNNaWRkbGV3YXJlIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIGVsZW1lbnRNdWx0aXBsaWNpdHk9Ii0xIiBuYW1lPSJNdWx0aXBsZSBSb2JvdGljTWlkZGxld2FyZSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMTU1IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4zOSI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc011bHRpcGxlUm9ib3RpY01pZGRsZXdhcmUiPgorICAgICAgPGNvbnN0cmFpbnRUeXBlIGhyZWY9InBwZTovZW52aXJvbm1lbnQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9FbnZpcm9ubWVudC54bWkjLy9AY29uc3RyYWludFR5cGVzLjEiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIHhzaTp0eXBlPSJjb25zdHJhaW50czpWYWx1ZVByb3BlcnR5IiBuYW1lPSJzdGVyZW90eXBlTmFtZSIgdmFsdWU9IlJvYm90TUw6OlJvYm90aWNNaWRkbGV3YXJlIi8+CisgICAgPC9jb25zdHJhaW50cz4KKyAgPC92aWV3cz4KKyAgPHZpZXdzIG5hbWU9IlNpbmdsZSBKb3lzdGljTmF2aWdhdGlvblN5c3RlbSIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMTU2IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4zMiI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc1NpbmdsZUpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpKb3lzdGljTmF2aWdhdGlvblN5c3RlbSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBlbGVtZW50TXVsdGlwbGljaXR5PSItMSIgbmFtZT0iTXVsdGlwbGUgSm95c3RpY05hdmlnYXRpb25TeXN0ZW0iIHNlY3Rpb25zPSIvL0B0YWJzLjAvQHNlY3Rpb25zLjE1NyIgYXV0b21hdGljQ29udGV4dD0idHJ1ZSIgZGF0YWNvbnRleHRzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMzIiPgorICAgIDxjb25zdHJhaW50cyB4c2k6dHlwZT0iY29uc3RyYWludHM6U2ltcGxlQ29uc3RyYWludCIgbmFtZT0iaXNNdWx0aXBsZUpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpKb3lzdGljTmF2aWdhdGlvblN5c3RlbSIvPgorICAgIDwvY29uc3RyYWludHM+CisgIDwvdmlld3M+CisgIDx2aWV3cyBuYW1lPSJTaW5nbGUgR3JvdW5kIiBzZWN0aW9ucz0iLy9AdGFicy4wL0BzZWN0aW9ucy4xNTgiIGF1dG9tYXRpY0NvbnRleHQ9InRydWUiIGRhdGFjb250ZXh0cz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjc2Ij4KKyAgICA8Y29uc3RyYWludHMgeHNpOnR5cGU9ImNvbnN0cmFpbnRzOlNpbXBsZUNvbnN0cmFpbnQiIG5hbWU9ImlzU2luZ2xlR3JvdW5kIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpHcm91bmQiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8dmlld3MgZWxlbWVudE11bHRpcGxpY2l0eT0iLTEiIG5hbWU9Ik11bHRpcGxlIEdyb3VuZCIgc2VjdGlvbnM9Ii8vQHRhYnMuMC9Ac2VjdGlvbnMuMTU5IiBhdXRvbWF0aWNDb250ZXh0PSJ0cnVlIiBkYXRhY29udGV4dHM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy43NiI+CisgICAgPGNvbnN0cmFpbnRzIHhzaTp0eXBlPSJjb25zdHJhaW50czpTaW1wbGVDb25zdHJhaW50IiBuYW1lPSJpc011bHRpcGxlR3JvdW5kIj4KKyAgICAgIDxjb25zdHJhaW50VHlwZSBocmVmPSJwcGU6L2Vudmlyb25tZW50L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvRW52aXJvbm1lbnQueG1pIy8vQGNvbnN0cmFpbnRUeXBlcy4xIi8+CisgICAgICA8cHJvcGVydGllcyB4c2k6dHlwZT0iY29uc3RyYWludHM6VmFsdWVQcm9wZXJ0eSIgbmFtZT0ic3RlcmVvdHlwZU5hbWUiIHZhbHVlPSJSb2JvdE1MOjpHcm91bmQiLz4KKyAgICA8L2NvbnN0cmFpbnRzPgorICA8L3ZpZXdzPgorICA8ZGF0YUNvbnRleHRzIG5hbWU9IlJvYm90TUwiPgorICAgIDxlbGVtZW50cyBuYW1lPSJTdXJmYWNlIiBzdXBlcnR5cGVzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMTgiLz4KKyAgICA8ZWxlbWVudHMgbmFtZT0iQWxsb2NhdGUiPgorICAgICAgPHN1cGVydHlwZXMgaHJlZj0icHBlOi9jb250ZXh0L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvVU1ML1VNTC5jdHgjXzY5MHhfcURKRWVTWnhmQ1h6WnozLXciLz4KKyAgICA8L2VsZW1lbnRzPgorICAgIDxlbGVtZW50cyBuYW1lPSJTZW5zb3JEcml2ZXIiIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4xMyIvPgorICAgIDxlbGVtZW50cyBuYW1lPSJHcmFzcGluZ1N5c3RlbSIgc3VwZXJ0eXBlcz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjYxIi8+CisgICAgPGVsZW1lbnRzIG5hbWU9Ik9kb21ldHJ5U3lzdGVtIiBzdXBlcnR5cGVzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNjUiLz4KKyAgICA8ZWxlbWVudHMgbmFtZT0iQ2hhc3NpcyIgc3VwZXJ0eXBlcz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjY0Ii8+CisgICAgPGVsZW1lbnRzIG5hbWU9IkltYWdlU2Vuc29yU3lzdGVtIiBzdXBlcnR5cGVzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMjciLz4KKyAgICA8ZWxlbWVudHMgbmFtZT0iRGF0YUZsb3dQb3J0IiBzdXBlcnR5cGVzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuOSI+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJkaXJlY3Rpb24iIHR5cGU9IkVudW1lcmF0aW9uIi8+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJidWZmZXJTaXplIiB0eXBlPSJJbnRlZ2VyIi8+CisgICAgPC9lbGVtZW50cz4KKyAgICA8ZWxlbWVudHMgbmFtZT0iU3RlZXJlZFdoZWVsU3lzdGVtIiBzdXBlcnR5cGVzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNDYiPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0id2hlZWxSYWRpdXMiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIG5hbWU9IndoZWVsV2lkdGgiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIG5hbWU9InN1c3BlbnNpb25SZXN0TGVuZ3RoIi8+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJ3aGVlbENvbm5lY3Rpb25IZWlnaHQiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIG5hbWU9InR5cGVPZldoZWVsIi8+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJ3aGVlbFZlbG9jaXR5UElEa3AiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIG5hbWU9IndoZWVsVmVsb2NpdHlQSURraSIvPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0id2hlZWxWZWxvY2l0eVBJRGtkIi8+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJ3aGVlbFN0ZWVyaW5nUElEa3AiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIG5hbWU9IndoZWVsU3RlZXJpbmdQSURrZCIvPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0id2hlZWxGcmljdGlvbiIvPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0ic3VzcGVuc2lvblN0aWZmbmVzcyIvPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0ic3VzcGVuc2lvbkRhbXBpbmciLz4KKyAgICAgIDxwcm9wZXJ0aWVzIG5hbWU9InN1c3BlbnNpb25Db21wcmVzc2lvbiIvPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0id2hlZWxWZWxvY2l0eVBJRG1heFN1bSIvPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0id2hlZWxWZWxvY2l0eVBJRG1heFZhbCIvPgorICAgIDwvZWxlbWVudHM+CisgICAgPGVsZW1lbnRzIG5hbWU9IlBvcnQiPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0ic3luY2hyb25pemF0aW9uUG9saWN5IiB0eXBlPSJFbnVtZXJhdGlvbiIvPgorICAgICAgPHN1cGVydHlwZXMgaHJlZj0icHBlOi9jb250ZXh0L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvVU1ML1VNTC5jdHgjXzY5MHlsYURKRWVTWnhmQ1h6WnozLXciLz4KKyAgICA8L2VsZW1lbnRzPgorICAgIDxlbGVtZW50cyBuYW1lPSJPcGVuLUxvb3BDb250cm9sU3lzdGVtIiBzdXBlcnR5cGVzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNDMiLz4KKyAgICA8ZWxlbWVudHMgbmFtZT0iTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0iIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy42NyIvPgorICAgIDxlbGVtZW50cyBuYW1lPSJCdWlsZGluZyIgc3VwZXJ0eXBlcz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjE4Ii8+CisgICAgPGVsZW1lbnRzIG5hbWU9IlNvZnR3YXJlIiBzdXBlcnR5cGVzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMTUiPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0iaXNQZXJpb2RpYyIgdHlwZT0iQm9vbGVhbiIvPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0icGVyaW9kIi8+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJwcmlvcml0eSIvPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0iZGVhZGxpbmUiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIG5hbWU9IndjZXQiLz4KKyAgICA8L2VsZW1lbnRzPgorICAgIDxlbGVtZW50cyBuYW1lPSJKb2ludCI+CisgICAgICA8c3VwZXJ0eXBlcyBocmVmPSJwcGU6L2NvbnRleHQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9VTUwvVU1MLmN0eCNfNjkweXZxREpFZVNaeGZDWHpaejMtdyIvPgorICAgIDwvZWxlbWVudHM+CisgICAgPGVsZW1lbnRzIG5hbWU9IlN5c3RlbSI+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJhbGlhcyIvPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0ibmF0aXZlIiB0eXBlPSJCb29sZWFuIi8+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJsaWJyYXJ5UGF0aCIvPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0ibGlicmFyeUNvbXBvbmVudE5hbWUiLz4KKyAgICAgIDxzdXBlcnR5cGVzIGhyZWY9InBwZTovY29udGV4dC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL1VNTC9VTUwuY3R4I182OTB5WHFESkVlU1p4ZkNYelp6My13Ii8+CisgICAgPC9lbGVtZW50cz4KKyAgICA8ZWxlbWVudHMgbmFtZT0iU3RhdGUiPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0iYmVoYXZpb3IiIHR5cGU9IlJlZmVyZW5jZSIvPgorICAgICAgPHN1cGVydHlwZXMgaHJlZj0icHBlOi9jb250ZXh0L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvVU1ML1VNTC5jdHgjXzY5MHluYURKRWVTWnhmQ1h6WnozLXciLz4KKyAgICA8L2VsZW1lbnRzPgorICAgIDxlbGVtZW50cyBuYW1lPSJUcmFuc2l0aW9uIj4KKyAgICAgIDxwcm9wZXJ0aWVzIG5hbWU9Imd1YXJkIiB0eXBlPSJSZWZlcmVuY2UiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIG5hbWU9ImVmZmVjdCIgdHlwZT0iUmVmZXJlbmNlIi8+CisgICAgICA8c3VwZXJ0eXBlcyBocmVmPSJwcGU6L2NvbnRleHQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9VTUwvVU1MLmN0eCNfNjkweWlLREpFZVNaeGZDWHpaejMtdyIvPgorICAgIDwvZWxlbWVudHM+CisgICAgPGVsZW1lbnRzIG5hbWU9IlBoeXNpY2FsT2JqZWN0Ij4KKyAgICAgIDxwcm9wZXJ0aWVzIG5hbWU9ImhlaWdodCIvPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0ibWFzcyIvPgorICAgICAgPHN1cGVydHlwZXMgaHJlZj0icHBlOi9jb250ZXh0L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvVU1ML1VNTC5jdHgjXzY5MHlYcURKRWVTWnhmQ1h6WnozLXciLz4KKyAgICA8L2VsZW1lbnRzPgorICAgIDxlbGVtZW50cyBuYW1lPSJMb2NvbW90aW9uSGFyZHdhcmUiIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy43MSIvPgorICAgIDxlbGVtZW50cyBuYW1lPSJEZXBsb3ltZW50UGxhbiI+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJtYWluSW5zdGFuY2UiIHR5cGU9IlJlZmVyZW5jZSIvPgorICAgICAgPHN1cGVydHlwZXMgaHJlZj0icHBlOi9jb250ZXh0L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvVU1ML1VNTC5jdHgjXzY5MHhpYURKRWVTWnhmQ1h6WnozLXciLz4KKyAgICA8L2VsZW1lbnRzPgorICAgIDxlbGVtZW50cyBuYW1lPSJPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSIgc3VwZXJ0eXBlcz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjI3Ii8+CisgICAgPGVsZW1lbnRzIG5hbWU9IkFjdHVhdGVkSm9pbnQiIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4xNCIvPgorICAgIDxlbGVtZW50cyBuYW1lPSJBbGdvcml0aG1MaWJyYXJ5Ij4KKyAgICAgIDxwcm9wZXJ0aWVzIG5hbWU9InBhdGgiLz4KKyAgICAgIDxzdXBlcnR5cGVzIGhyZWY9InBwZTovY29udGV4dC9vcmcuZWNsaXBzZS5wYXB5cnVzLnVtbC5wcm9wZXJ0aWVzL01vZGVsL1VNTC9VTUwuY3R4I182OTB5WHFESkVlU1p4ZkNYelp6My13Ii8+CisgICAgPC9lbGVtZW50cz4KKyAgICA8ZWxlbWVudHMgbmFtZT0iUGxhdGZvcm0iIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4xNSI+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJsaWJyYXJ5IiB0eXBlPSJSZWZlcmVuY2UiIG11bHRpcGxpY2l0eT0iLTEiLz4KKyAgICA8L2VsZW1lbnRzPgorICAgIDxlbGVtZW50cyBuYW1lPSJQaWxvdGVkU3lzdGVtIiBzdXBlcnR5cGVzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMzYiLz4KKyAgICA8ZWxlbWVudHMgbmFtZT0iTGFuZFN1cmZhY2UiIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy43NiIvPgorICAgIDxlbGVtZW50cyBuYW1lPSJTZW5zb3JTeXN0ZW0iIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy42MyAvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNDMiPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0iZnJlcXVlbmN5Ii8+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJpZGVudGlmaWVyIi8+CisgICAgPC9lbGVtZW50cz4KKyAgICA8ZWxlbWVudHMgbmFtZT0iSHVtYW4iIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy43OSIvPgorICAgIDxlbGVtZW50cyBuYW1lPSJXYXRlclN1cmZhY2UiIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4wIi8+CisgICAgPGVsZW1lbnRzIG5hbWU9IkZsb29yIiBzdXBlcnR5cGVzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNzYiLz4KKyAgICA8ZWxlbWVudHMgbmFtZT0iR1BTU3lzdGVtIiBzdXBlcnR5cGVzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNjUiPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0ib3JpZ2luUG9zaXRpb24iIHR5cGU9IlJlZmVyZW5jZSIvPgorICAgIDwvZWxlbWVudHM+CisgICAgPGVsZW1lbnRzIG5hbWU9IkpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtIiBzdXBlcnR5cGVzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMTEiLz4KKyAgICA8ZWxlbWVudHMgbmFtZT0iTWFuaXB1bGF0b3IiIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4zNiIvPgorICAgIDxlbGVtZW50cyBuYW1lPSJDeWNhYlRLIiBzdXBlcnR5cGVzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNDIiPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0idXNlUmVhbFRpbWUiIHR5cGU9IkJvb2xlYW4iLz4KKyAgICAgIDxwcm9wZXJ0aWVzIG5hbWU9InRpbWVTdGVwIi8+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJ0aW1lRmFjdG9yIi8+CisgICAgPC9lbGVtZW50cz4KKyAgICA8ZWxlbWVudHMgbmFtZT0iRW5naW5lU3lzdGVtIiBzdXBlcnR5cGVzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNjEiPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0idmVoaWNsZVRyYWN0aW9uIi8+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJtYXhFbmdpbmVGb3JjZSIvPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0ibWF4QnJlYWtpbmdGb3JjZSIvPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0ibWF4QWxsb3dlZFN0ZWVyaW5nIi8+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJtYXhBbGxvd2VkVmVsb2NpdHkiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIG5hbWU9ImdlYXJfcmF0aW9uIi8+CisgICAgPC9lbGVtZW50cz4KKyAgICA8ZWxlbWVudHMgbmFtZT0iUm9ib3QiIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy43OSAvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMTUiPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0id2lkdGgiLz4KKyAgICA8L2VsZW1lbnRzPgorICAgIDxlbGVtZW50cyBuYW1lPSJHeXJvc2NvcGUiIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4yNyIvPgorICAgIDxlbGVtZW50cyBuYW1lPSJBcm0iLz4KKyAgICA8ZWxlbWVudHMgbmFtZT0iUm9ib3RpY01pZGRsZXdhcmUiIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4yNCI+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJraW5kIiB0eXBlPSJFbnVtZXJhdGlvbiIvPgorICAgIDwvZWxlbWVudHM+CisgICAgPGVsZW1lbnRzIG5hbWU9Ik1lY2hhbmljYWxMaW5rYWdlIiBzdXBlcnR5cGVzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNTciLz4KKyAgICA8ZWxlbWVudHMgbmFtZT0iQ29tcGxldGVCb25kaW5nIiBzdXBlcnR5cGVzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMTQiLz4KKyAgICA8ZWxlbWVudHMgbmFtZT0iUm9ib3RpY1NpbXVsYXRvciIgc3VwZXJ0eXBlcz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjI0Ii8+CisgICAgPGVsZW1lbnRzIG5hbWU9IkN5YmVyUGh5c2ljYWxTeXN0ZW0iIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4xNSIvPgorICAgIDxlbGVtZW50cyBuYW1lPSJJbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbSIgc3VwZXJ0eXBlcz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjI3Ii8+CisgICAgPGVsZW1lbnRzIG5hbWU9IkNsb3NlZC1Mb29wQ29udHJvbFN5c3RlbSIgc3VwZXJ0eXBlcz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjQzIi8+CisgICAgPGVsZW1lbnRzIG5hbWU9IkxvY29tb3Rpb25TeXN0ZW0iIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy42MSIvPgorICAgIDxlbGVtZW50cyBuYW1lPSJFeHRlcm5hbExpYnJhcnkiPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0ibGliUGF0aCIvPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0ibGliRmlsZUZvcm1hdCIvPgorICAgICAgPHN1cGVydHlwZXMgaHJlZj0icHBlOi9jb250ZXh0L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvVU1ML1VNTC5jdHgjXzY5MHliS0RKRWVTWnhmQ1h6WnozLXciLz4KKyAgICA8L2VsZW1lbnRzPgorICAgIDxlbGVtZW50cyBuYW1lPSJFbnZpcm9ubWVudCI+CisgICAgICA8c3VwZXJ0eXBlcyBocmVmPSJwcGU6L2NvbnRleHQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9VTUwvVU1MLmN0eCNfNjkweVhxREpFZVNaeGZDWHpaejMtdyIvPgorICAgIDwvZWxlbWVudHM+CisgICAgPGVsZW1lbnRzIG5hbWU9IkxlZ1N5c3RlbSIgc3VwZXJ0eXBlcz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjQ2Ii8+CisgICAgPGVsZW1lbnRzIG5hbWU9IlBsYW5ldCIgc3VwZXJ0eXBlcz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjE4Ii8+CisgICAgPGVsZW1lbnRzIG5hbWU9IkluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbSIgc3VwZXJ0eXBlcz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjMxIi8+CisgICAgPGVsZW1lbnRzIG5hbWU9Ik9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbSIgc3VwZXJ0eXBlcz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjI3Ii8+CisgICAgPGVsZW1lbnRzIG5hbWU9IlJvYm90aWNIZWFkIiBzdXBlcnR5cGVzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNjciLz4KKyAgICA8ZWxlbWVudHMgbmFtZT0iQmxlbmRlck1vcnNlIiBzdXBlcnR5cGVzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNDIiPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0iZGVidWdNb2RlIiB0eXBlPSJCb29sZWFuIi8+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJkZWJ1Z0Rpc3BsYXkiIHR5cGU9IkJvb2xlYW4iLz4KKyAgICAgIDxwcm9wZXJ0aWVzIG5hbWU9ImdyYXZpdHkiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIG5hbWU9IiB2aWV3cG9ydF9zaGFkZSIgdHlwZT0iRW51bWVyYXRpb24iLz4KKyAgICA8L2VsZW1lbnRzPgorICAgIDxlbGVtZW50cyBuYW1lPSJTZXJ2aWNlUG9ydCIgc3VwZXJ0eXBlcz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjkiPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0ia2luZCIgdHlwZT0iRW51bWVyYXRpb24iLz4KKyAgICA8L2VsZW1lbnRzPgorICAgIDxlbGVtZW50cyBuYW1lPSJHcmFzcGluZ0hhcmR3YXJlIiBzdXBlcnR5cGVzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNzEiLz4KKyAgICA8ZWxlbWVudHMgbmFtZT0iSGFyZHdhcmUiIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4xNSAvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMTgiLz4KKyAgICA8ZWxlbWVudHMgbmFtZT0iU2Vuc29ySGFyZHdhcmUiIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy41NyIvPgorICAgIDxlbGVtZW50cyBuYW1lPSJMaWRhclN5c3RlbSIgc3VwZXJ0eXBlcz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjUyIC8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4yMSI+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJuYkxheWVycyIvPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0ibGF5ZXJBbmdsZU1pbiIvPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0ibGF5ZXJBbmdsZVN0ZXAiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIG5hbWU9Im5vaXNlIi8+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJzaWdtYU5vaXNlIi8+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJhbmdsZV9taW4iLz4KKyAgICAgIDxwcm9wZXJ0aWVzIG5hbWU9ImFuZ2xlX21heCIvPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0idGltZV9pbmNyZW1lbnQgIi8+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJzY2FuX3RpbWUgICIvPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0icmFuZ2VfbWluIi8+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJyYW5nZV9tYXgiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIG5hbWU9Im5iUmF5cyIvPgorICAgIDwvZWxlbWVudHM+CisgICAgPGVsZW1lbnRzIG5hbWU9IkNhbWVyYVN5c3RlbSIgc3VwZXJ0eXBlcz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjYiPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0id2lkdGgiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIG5hbWU9ImhlaWdodCIvPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0iYWxwaGFfdSIvPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0iYWxwaGFfdiIvPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0idTAiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIG5hbWU9InYwIi8+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJjb2xvcl9mb3JtYXQiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIG5hbWU9InRyYW5zbGF0ZSIgdHlwZT0iUmVmZXJlbmNlIi8+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJyb3RhdGUiIHR5cGU9IlJlZmVyZW5jZSIvPgorICAgIDwvZWxlbWVudHM+CisgICAgPGVsZW1lbnRzIG5hbWU9IkFjdHVhdG9yU3lzdGVtIiBzdXBlcnR5cGVzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNjMgLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjQzIi8+CisgICAgPGVsZW1lbnRzIG5hbWU9IlN0YWlycyIgc3VwZXJ0eXBlcz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjc2Ii8+CisgICAgPGVsZW1lbnRzIG5hbWU9IlJvYm90aWNTeXN0ZW0iIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4xNSI+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJsb2NhbFBvc2l0aW9uIiB0eXBlPSJSZWZlcmVuY2UiLz4KKyAgICAgIDxwcm9wZXJ0aWVzIG5hbWU9ImxvY2FsT3JpZW50YXRpb24iIHR5cGU9IlJlZmVyZW5jZSIvPgorICAgIDwvZWxlbWVudHM+CisgICAgPGVsZW1lbnRzIG5hbWU9IlN1cHBvcnRpbmdTdHJ1Y3R1cmUiIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy41NyIvPgorICAgIDxlbGVtZW50cyBuYW1lPSJMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0iIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4yNyIvPgorICAgIDxlbGVtZW50cyBuYW1lPSJPblBvcnQiPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0icG9ydCIgdHlwZT0iUmVmZXJlbmNlIi8+CisgICAgICA8c3VwZXJ0eXBlcyBocmVmPSJwcGU6L2NvbnRleHQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9VTUwvVU1MLmN0eCNfNjkweUJhREpFZVNaeGZDWHpaejMtdyIvPgorICAgIDwvZWxlbWVudHM+CisgICAgPGVsZW1lbnRzIG5hbWU9Ik1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0iIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy40MyIvPgorICAgIDxlbGVtZW50cyBuYW1lPSJQZWRlc3RyaWFuIiBzdXBlcnR5cGVzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMjgiLz4KKyAgICA8ZWxlbWVudHMgbmFtZT0iU3RlZXJlZFdoZWVsSGFyZHdhcmUiIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4xOSIvPgorICAgIDxlbGVtZW50cyBuYW1lPSJQb3dlckhhcmR3YXJlIiBzdXBlcnR5cGVzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuNTciLz4KKyAgICA8ZWxlbWVudHMgbmFtZT0iQWN0dWF0b3JIYXJkd2FyZSIgc3VwZXJ0eXBlcz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjU3Ii8+CisgICAgPGVsZW1lbnRzIG5hbWU9Ik9uVmFyaWFibGUiPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0icHJvcGVydHkiIHR5cGU9IlJlZmVyZW5jZSIvPgorICAgICAgPHN1cGVydHlwZXMgaHJlZj0icHBlOi9jb250ZXh0L29yZy5lY2xpcHNlLnBhcHlydXMudW1sLnByb3BlcnRpZXMvTW9kZWwvVU1ML1VNTC5jdHgjXzY5MHlCYURKRWVTWnhmQ1h6WnozLXciLz4KKyAgICA8L2VsZW1lbnRzPgorICAgIDxlbGVtZW50cyBuYW1lPSJXZWFwb25TeXN0ZW0iIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy42MSIvPgorICAgIDxlbGVtZW50cyBuYW1lPSJBbGdvcml0aG0iPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0iaXNFeHRlcm5hbCIgdHlwZT0iQm9vbGVhbiIvPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0iZXh0RnVuY3Rpb25OYW1lIi8+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJsaWJQYXRoIi8+CisgICAgICA8cHJvcGVydGllcyBuYW1lPSJsaWJGaWxlRm9ybWF0Ii8+CisgICAgICA8c3VwZXJ0eXBlcyBocmVmPSJwcGU6L2NvbnRleHQvb3JnLmVjbGlwc2UucGFweXJ1cy51bWwucHJvcGVydGllcy9Nb2RlbC9VTUwvVU1MLmN0eCNfNjkweVFLREpFZVNaeGZDWHpaejMtdyIvPgorICAgIDwvZWxlbWVudHM+CisgICAgPGVsZW1lbnRzIG5hbWU9Ik1vYmlsZVJvYm90IiBzdXBlcnR5cGVzPSIvL0BkYXRhQ29udGV4dHMuMC9AZWxlbWVudHMuMzYiPgorICAgICAgPHByb3BlcnRpZXMgbmFtZT0ia2luZCIgdHlwZT0iRW51bWVyYXRpb24iLz4KKyAgICA8L2VsZW1lbnRzPgorICAgIDxlbGVtZW50cyBuYW1lPSJHcm91bmQiIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4wIi8+CisgICAgPGVsZW1lbnRzIG5hbWU9IkxlZyIgc3VwZXJ0eXBlcz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjQwIC8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy4xOSIvPgorICAgIDxlbGVtZW50cyBuYW1lPSJJbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW0iIHN1cGVydHlwZXM9Ii8vQGRhdGFDb250ZXh0cy4wL0BlbGVtZW50cy41MiIvPgorICAgIDxlbGVtZW50cyBuYW1lPSJBZ2VudCIgc3VwZXJ0eXBlcz0iLy9AZGF0YUNvbnRleHRzLjAvQGVsZW1lbnRzLjE4Ii8+CisgICAgPG1vZGVsRWxlbWVudEZhY3RvcnkgaHJlZj0icHBlOi9lbnZpcm9ubWVudC9vcmcuZWNsaXBzZS5wYXB5cnVzLmluZnJhLndpZGdldHMuZXBmLnJpY2h0ZXh0LmV4dGVuc2lvbi9Nb2RlbC9lbnZpcm9ubWVudC54bWkjLy9AbW9kZWxFbGVtZW50RmFjdG9yaWVzLjIiLz4KKyAgPC9kYXRhQ29udGV4dHM+Cis8L2NvbnRleHRzOkNvbnRleHQ+CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUFjdHVhdGVkSm9pbnQueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVBY3R1YXRlZEpvaW50Lnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMDM3Y2FmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVBY3R1YXRlZEpvaW50Lnh3dApAQCAtMCwwICsxLDkgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlQWN0dWF0b3JIYXJkd2FyZS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUFjdHVhdG9ySGFyZHdhcmUueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ3MzNmZTMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUFjdHVhdG9ySGFyZHdhcmUueHd0CkBAIC0wLDAgKzEsMTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlQWN0dWF0b3JTeXN0ZW0ueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVBY3R1YXRvclN5c3RlbS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDczM2ZlMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlQWN0dWF0b3JTeXN0ZW0ueHd0CkBAIC0wLDAgKzEsMTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlQWdlbnQueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVBZ2VudC54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjAzN2NhZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlQWdlbnQueHd0CkBAIC0wLDAgKzEsOSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVBbGdvcml0aG0ueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVBbGdvcml0aG0ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVjZGU3OWMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUFsZ29yaXRobS54d3QKQEAgLTAsMCArMSwxNyBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOkFsZ29yaXRobTppc0V4dGVybmFsIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUFsZ29yaXRobUxpYnJhcnkueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVBbGdvcml0aG1MaWJyYXJ5Lnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMDM3Y2FmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVBbGdvcml0aG1MaWJyYXJ5Lnh3dApAQCAtMCwwICsxLDkgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlQWxsb2NhdGUueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVBbGxvY2F0ZS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjAzN2NhZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlQWxsb2NhdGUueHd0CkBAIC0wLDAgKzEsOSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVBcm0ueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVBcm0ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIwMzdjYWYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUFybS54d3QKQEAgLTAsMCArMSw5IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUJsZW5kZXJNb3JzZS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUJsZW5kZXJNb3JzZS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDY4ODM1YgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlQmxlbmRlck1vcnNlLnh3dApAQCAtMCwwICsxLDI3IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6QmxlbmRlck1vcnNlOmRlYnVnTW9kZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6QmxlbmRlck1vcnNlOmRlYnVnRGlzcGxheSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6RW51bUNvbWJvIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpCbGVuZGVyTW9yc2U6IHZpZXdwb3J0X3NoYWRlIj48L3BwZTpFbnVtQ29tYm8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUJ1aWxkaW5nLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlQnVpbGRpbmcueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIwMzdjYWYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUJ1aWxkaW5nLnh3dApAQCAtMCwwICsxLDkgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlQ2FtZXJhU3lzdGVtLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlQ2FtZXJhU3lzdGVtLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzMzZmUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVDYW1lcmFTeXN0ZW0ueHd0CkBAIC0wLDAgKzEsMTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlQ2hhc3Npcy54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUNoYXNzaXMueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ3MzNmZTMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUNoYXNzaXMueHd0CkBAIC0wLDAgKzEsMTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlQ2xvc2VkLUxvb3BDb250cm9sU3lzdGVtLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlQ2xvc2VkLUxvb3BDb250cm9sU3lzdGVtLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzMzZmUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVDbG9zZWQtTG9vcENvbnRyb2xTeXN0ZW0ueHd0CkBAIC0wLDAgKzEsMTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlQ29tcGxldGVCb25kaW5nLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlQ29tcGxldGVCb25kaW5nLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMDM3Y2FmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVDb21wbGV0ZUJvbmRpbmcueHd0CkBAIC0wLDAgKzEsOSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVDeWJlclBoeXNpY2FsU3lzdGVtLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlQ3liZXJQaHlzaWNhbFN5c3RlbS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDczM2ZlMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlQ3liZXJQaHlzaWNhbFN5c3RlbS54d3QKQEAgLTAsMCArMSwxNiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVDeWNhYlRLLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlQ3ljYWJUSy54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2UzZmFkOQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlQ3ljYWJUSy54d3QKQEAgLTAsMCArMSwxNyBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6Q3ljYWJUSzp1c2VSZWFsVGltZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZURhdGFGbG93UG9ydC54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZURhdGFGbG93UG9ydC54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDUxNzZkYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlRGF0YUZsb3dQb3J0Lnh3dApAQCAtMCwwICsxLDI1IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkludGVnZXJFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOkRhdGFGbG93UG9ydDpidWZmZXJTaXplIj48L3BwZTpJbnRlZ2VyRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkVudW1Db21ibyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpEYXRhRmxvd1BvcnQ6ZGlyZWN0aW9uIj48L3BwZTpFbnVtQ29tYm8+CisJCTxwcGU6RW51bUNvbWJvIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpQb3J0OnN5bmNocm9uaXphdGlvblBvbGljeSI+PC9wcGU6RW51bUNvbWJvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVEZXBsb3ltZW50UGxhbi54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZURlcGxveW1lbnRQbGFuLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMDM3Y2FmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVEZXBsb3ltZW50UGxhbi54d3QKQEAgLTAsMCArMSw5IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUVuZ2luZVN5c3RlbS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUVuZ2luZVN5c3RlbS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDczM2ZlMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlRW5naW5lU3lzdGVtLnh3dApAQCAtMCwwICsxLDE2IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUVudmlyb25tZW50Lnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlRW52aXJvbm1lbnQueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIwMzdjYWYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUVudmlyb25tZW50Lnh3dApAQCAtMCwwICsxLDkgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlRXh0ZXJuYWxMaWJyYXJ5Lnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlRXh0ZXJuYWxMaWJyYXJ5Lnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMDM3Y2FmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVFeHRlcm5hbExpYnJhcnkueHd0CkBAIC0wLDAgKzEsOSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVGbG9vci54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUZsb29yLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMDM3Y2FmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVGbG9vci54d3QKQEAgLTAsMCArMSw5IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUdQU1N5c3RlbS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUdQU1N5c3RlbS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDczM2ZlMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlR1BTU3lzdGVtLnh3dApAQCAtMCwwICsxLDE2IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUdyYXNwaW5nSGFyZHdhcmUueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVHcmFzcGluZ0hhcmR3YXJlLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzMzZmUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVHcmFzcGluZ0hhcmR3YXJlLnh3dApAQCAtMCwwICsxLDE2IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUdyYXNwaW5nU3lzdGVtLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlR3Jhc3BpbmdTeXN0ZW0ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ3MzNmZTMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUdyYXNwaW5nU3lzdGVtLnh3dApAQCAtMCwwICsxLDE2IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUdyb3VuZC54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUdyb3VuZC54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjAzN2NhZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlR3JvdW5kLnh3dApAQCAtMCwwICsxLDkgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlR3lyb3Njb3BlLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlR3lyb3Njb3BlLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzMzZmUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVHeXJvc2NvcGUueHd0CkBAIC0wLDAgKzEsMTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlSGFyZHdhcmUueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVIYXJkd2FyZS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDczM2ZlMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlSGFyZHdhcmUueHd0CkBAIC0wLDAgKzEsMTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlSHVtYW4ueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVIdW1hbi54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjAzN2NhZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlSHVtYW4ueHd0CkBAIC0wLDAgKzEsOSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVJbWFnZVNlbnNvclN5c3RlbS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUltYWdlU2Vuc29yU3lzdGVtLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzMzZmUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVJbWFnZVNlbnNvclN5c3RlbS54d3QKQEAgLTAsMCArMSwxNiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVJbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzMzZmUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVJbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbS54d3QKQEAgLTAsMCArMSwxNiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVJbmVydGlhbE5hdmlnYXRpb25TeXN0ZW0ueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVJbmVydGlhbE5hdmlnYXRpb25TeXN0ZW0ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ3MzNmZTMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbS54d3QKQEAgLTAsMCArMSwxNiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVJbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW0ueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVJbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW0ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ3MzNmZTMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUluZnJhUmVkUHJveGltZXRyeVN5c3RlbS54d3QKQEAgLTAsMCArMSwxNiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVKb2ludC54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUpvaW50Lnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMDM3Y2FmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVKb2ludC54d3QKQEAgLTAsMCArMSw5IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlSm95c3RpY05hdmlnYXRpb25TeXN0ZW0ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ3MzNmZTMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtLnh3dApAQCAtMCwwICsxLDE2IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUxhbmRTdXJmYWNlLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlTGFuZFN1cmZhY2UueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIwMzdjYWYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUxhbmRTdXJmYWNlLnh3dApAQCAtMCwwICsxLDkgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlTGVnLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlTGVnLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzMzZmUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVMZWcueHd0CkBAIC0wLDAgKzEsMTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlTGVnU3lzdGVtLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlTGVnU3lzdGVtLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzMzZmUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVMZWdTeXN0ZW0ueHd0CkBAIC0wLDAgKzEsMTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlTGlkYXJTeXN0ZW0ueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVMaWRhclN5c3RlbS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDczM2ZlMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlTGlkYXJTeXN0ZW0ueHd0CkBAIC0wLDAgKzEsMTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzMzZmUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0ueHd0CkBAIC0wLDAgKzEsMTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlTG9jb21vdGlvbkhhcmR3YXJlLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlTG9jb21vdGlvbkhhcmR3YXJlLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzMzZmUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVMb2NvbW90aW9uSGFyZHdhcmUueHd0CkBAIC0wLDAgKzEsMTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlTG9jb21vdGlvblN5c3RlbS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUxvY29tb3Rpb25TeXN0ZW0ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ3MzNmZTMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZUxvY29tb3Rpb25TeXN0ZW0ueHd0CkBAIC0wLDAgKzEsMTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlTWFuTWFjaGluZUludGVyZmFjZVN5c3RlbS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZU1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ3MzNmZTMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZU1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0ueHd0CkBAIC0wLDAgKzEsMTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlTWFuaXB1bGF0b3IueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVNYW5pcHVsYXRvci54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDczM2ZlMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlTWFuaXB1bGF0b3IueHd0CkBAIC0wLDAgKzEsMTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlTWVjaGFuaWNhbExpbmthZ2UueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVNZWNoYW5pY2FsTGlua2FnZS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDczM2ZlMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlTWVjaGFuaWNhbExpbmthZ2UueHd0CkBAIC0wLDAgKzEsMTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlTW9iaWxlUm9ib3QueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVNb2JpbGVSb2JvdC54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjhjMWY1ZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlTW9iaWxlUm9ib3QueHd0CkBAIC0wLDAgKzEsMjIgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpFbnVtQ29tYm8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6TW9iaWxlUm9ib3Q6a2luZCI+PC9wcGU6RW51bUNvbWJvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVOYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZU5hdmlnYXRpb25Db21tYW5kU3lzdGVtLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzMzZmUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVOYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbS54d3QKQEAgLTAsMCArMSwxNiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0ueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ3MzNmZTMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZU9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS54d3QKQEAgLTAsMCArMSwxNiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzMzZmUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS54d3QKQEAgLTAsMCArMSwxNiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVPZG9tZXRyeVN5c3RlbS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZU9kb21ldHJ5U3lzdGVtLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzMzZmUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVPZG9tZXRyeVN5c3RlbS54d3QKQEAgLTAsMCArMSwxNiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVPblBvcnQueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVPblBvcnQueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIwMzdjYWYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZU9uUG9ydC54d3QKQEAgLTAsMCArMSw5IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZU9uUHJvcGVydHkueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVPblByb3BlcnR5Lnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZTZmZThiCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVPblByb3BlcnR5Lnh3dApAQCAtMCwwICsxLDggQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlIHhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIgorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0Ij4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZU9uVmFyaWFibGUueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVPblZhcmlhYmxlLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMDM3Y2FmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVPblZhcmlhYmxlLnh3dApAQCAtMCwwICsxLDkgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlT3Blbi1Mb29wQ29udHJvbFN5c3RlbS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZU9wZW4tTG9vcENvbnRyb2xTeXN0ZW0ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ3MzNmZTMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZU9wZW4tTG9vcENvbnRyb2xTeXN0ZW0ueHd0CkBAIC0wLDAgKzEsMTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlUGVkZXN0cmlhbi54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVBlZGVzdHJpYW4ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIwMzdjYWYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVBlZGVzdHJpYW4ueHd0CkBAIC0wLDAgKzEsOSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVQaHlzaWNhbE9iamVjdC54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVBoeXNpY2FsT2JqZWN0Lnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMDM3Y2FmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVQaHlzaWNhbE9iamVjdC54d3QKQEAgLTAsMCArMSw5IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVBpbG90ZWRTeXN0ZW0ueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVQaWxvdGVkU3lzdGVtLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzMzZmUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVQaWxvdGVkU3lzdGVtLnh3dApAQCAtMCwwICsxLDE2IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVBsYW5ldC54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVBsYW5ldC54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjAzN2NhZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlUGxhbmV0Lnh3dApAQCAtMCwwICsxLDkgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlUGxhdGZvcm0ueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVQbGF0Zm9ybS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDczM2ZlMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlUGxhdGZvcm0ueHd0CkBAIC0wLDAgKzEsMTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlUG9ydC54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVBvcnQueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAzOTg5ODYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVBvcnQueHd0CkBAIC0wLDAgKzEsMTcgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6RW51bUNvbWJvIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpQb3J0OnN5bmNocm9uaXphdGlvblBvbGljeSI+PC9wcGU6RW51bUNvbWJvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVQb3dlckhhcmR3YXJlLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlUG93ZXJIYXJkd2FyZS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDczM2ZlMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlUG93ZXJIYXJkd2FyZS54d3QKQEAgLTAsMCArMSwxNiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVSb2JvdC54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVJvYm90Lnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzMzZmUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVSb2JvdC54d3QKQEAgLTAsMCArMSwxNiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVSb2JvdGljSGVhZC54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVJvYm90aWNIZWFkLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzMzZmUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVSb2JvdGljSGVhZC54d3QKQEAgLTAsMCArMSwxNiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVSb2JvdGljTWlkZGxld2FyZS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVJvYm90aWNNaWRkbGV3YXJlLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mM2M1NGM0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVSb2JvdGljTWlkZGxld2FyZS54d3QKQEAgLTAsMCArMSwyMiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkVudW1Db21ibyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpSb2JvdGljTWlkZGxld2FyZTpraW5kIj48L3BwZTpFbnVtQ29tYm8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVJvYm90aWNTaW11bGF0b3IueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVSb2JvdGljU2ltdWxhdG9yLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzMzZmUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVSb2JvdGljU2ltdWxhdG9yLnh3dApAQCAtMCwwICsxLDE2IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVJvYm90aWNTeXN0ZW0ueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVSb2JvdGljU3lzdGVtLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzMzZmUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVSb2JvdGljU3lzdGVtLnh3dApAQCAtMCwwICsxLDE2IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVNlbnNvckRyaXZlci54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVNlbnNvckRyaXZlci54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDNjODE0NQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlU2Vuc29yRHJpdmVyLnh3dApAQCAtMCwwICsxLDE3IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTb2Z0d2FyZTppc1BlcmlvZGljIj48L3BwZTpCb29sZWFuUmFkaW8+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlU2Vuc29ySGFyZHdhcmUueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVTZW5zb3JIYXJkd2FyZS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDczM2ZlMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlU2Vuc29ySGFyZHdhcmUueHd0CkBAIC0wLDAgKzEsMTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlU2Vuc29yU3lzdGVtLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlU2Vuc29yU3lzdGVtLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzMzZmUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVTZW5zb3JTeXN0ZW0ueHd0CkBAIC0wLDAgKzEsMTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlU2VydmljZVBvcnQueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVTZXJ2aWNlUG9ydC54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzgxZTUwZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlU2VydmljZVBvcnQueHd0CkBAIC0wLDAgKzEsMTggQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6RW51bUNvbWJvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlNlcnZpY2VQb3J0OmtpbmQiPjwvcHBlOkVudW1Db21ibz4KKwkJPHBwZTpFbnVtQ29tYm8gaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlBvcnQ6c3luY2hyb25pemF0aW9uUG9saWN5Ij48L3BwZTpFbnVtQ29tYm8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVNvZnR3YXJlLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlU29mdHdhcmUueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQzYzgxNDUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVNvZnR3YXJlLnh3dApAQCAtMCwwICsxLDE3IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTb2Z0d2FyZTppc1BlcmlvZGljIj48L3BwZTpCb29sZWFuUmFkaW8+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlU3RhaXJzLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlU3RhaXJzLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMDM3Y2FmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVTdGFpcnMueHd0CkBAIC0wLDAgKzEsOSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVTdGF0ZS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVN0YXRlLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMDM3Y2FmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVTdGF0ZS54d3QKQEAgLTAsMCArMSw5IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVN0ZWVyZWRXaGVlbEhhcmR3YXJlLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlU3RlZXJlZFdoZWVsSGFyZHdhcmUueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ3MzNmZTMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVN0ZWVyZWRXaGVlbEhhcmR3YXJlLnh3dApAQCAtMCwwICsxLDE2IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVN0ZWVyZWRXaGVlbFN5c3RlbS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVN0ZWVyZWRXaGVlbFN5c3RlbS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDczM2ZlMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlU3RlZXJlZFdoZWVsU3lzdGVtLnh3dApAQCAtMCwwICsxLDE2IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVN1cHBvcnRpbmdTdHJ1Y3R1cmUueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVTdXBwb3J0aW5nU3RydWN0dXJlLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzMzZmUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVTdXBwb3J0aW5nU3RydWN0dXJlLnh3dApAQCAtMCwwICsxLDE2IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVN1cmZhY2UueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVTdXJmYWNlLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMDM3Y2FmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVTdXJmYWNlLnh3dApAQCAtMCwwICsxLDkgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlU3lzdGVtLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlU3lzdGVtLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzMzZmUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVTeXN0ZW0ueHd0CkBAIC0wLDAgKzEsMTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlVHJhbnNpdGlvbi54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVRyYW5zaXRpb24ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIwMzdjYWYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVRyYW5zaXRpb24ueHd0CkBAIC0wLDAgKzEsOSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVXYXRlclN1cmZhY2UueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvTXVsdGlwbGVXYXRlclN1cmZhY2UueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIwMzdjYWYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVdhdGVyU3VyZmFjZS54d3QKQEAgLTAsMCArMSw5IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVdlYXBvblN5c3RlbS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9NdWx0aXBsZVdlYXBvblN5c3RlbS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDczM2ZlMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL011bHRpcGxlV2VhcG9uU3lzdGVtLnh3dApAQCAtMCwwICsxLDE2IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVBY3R1YXRlZEpvaW50Lnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUFjdHVhdGVkSm9pbnQueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIwMzdjYWYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVBY3R1YXRlZEpvaW50Lnh3dApAQCAtMCwwICsxLDkgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUFjdHVhdG9ySGFyZHdhcmUueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlQWN0dWF0b3JIYXJkd2FyZS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmU1N2NhNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUFjdHVhdG9ySGFyZHdhcmUueHd0CkBAIC0wLDAgKzEsMjggQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpQaHlzaWNhbE9iamVjdDpoZWlnaHQiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6UGh5c2ljYWxPYmplY3Q6bWFzcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06YWxpYXMiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlQYXRoIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeUNvbXBvbmVudE5hbWUiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlQWN0dWF0b3JTeXN0ZW0ueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlQWN0dWF0b3JTeXN0ZW0ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjliZDkxMmMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVBY3R1YXRvclN5c3RlbS54d3QKQEAgLTAsMCArMSwzNCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmFsaWFzIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5UGF0aCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlDb21wb25lbnROYW1lIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpSZWZlcmVuY2VEaWFsb2cgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlJvYm90aWNTeXN0ZW06bG9jYWxQb3NpdGlvbiI+PC9wcGU6UmVmZXJlbmNlRGlhbG9nPgorCQk8cHBlOlJlZmVyZW5jZURpYWxvZyBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6Um9ib3RpY1N5c3RlbTpsb2NhbE9yaWVudGF0aW9uIj48L3BwZTpSZWZlcmVuY2VEaWFsb2c+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVBZ2VudC54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVBZ2VudC54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTliOTIwYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUFnZW50Lnh3dApAQCAtMCwwICsxLDE4IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6UGh5c2ljYWxPYmplY3Q6aGVpZ2h0Ij48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlBoeXNpY2FsT2JqZWN0Om1hc3MiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUFsZ29yaXRobS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVBbGdvcml0aG0ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUyOGNlNTcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVBbGdvcml0aG0ueHd0CkBAIC0wLDAgKzEsMjcgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpBbGdvcml0aG06ZXh0RnVuY3Rpb25OYW1lIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOkFsZ29yaXRobTpsaWJQYXRoIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpBbGdvcml0aG06bGliRmlsZUZvcm1hdCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6QWxnb3JpdGhtOmlzRXh0ZXJuYWwiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUFsZ29yaXRobUxpYnJhcnkueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlQWxnb3JpdGhtTGlicmFyeS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzU2MTNjOQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUFsZ29yaXRobUxpYnJhcnkueHd0CkBAIC0wLDAgKzEsMTcgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpBbGdvcml0aG1MaWJyYXJ5OnBhdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUFsbG9jYXRlLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUFsbG9jYXRlLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMDM3Y2FmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlQWxsb2NhdGUueHd0CkBAIC0wLDAgKzEsOSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlQXJtLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUFybS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjAzN2NhZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUFybS54d3QKQEAgLTAsMCArMSw5IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVCbGVuZGVyTW9yc2UueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlQmxlbmRlck1vcnNlLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hYzkxY2FjCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlQmxlbmRlck1vcnNlLnh3dApAQCAtMCwwICsxLDQ1IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6QmxlbmRlck1vcnNlOmdyYXZpdHkiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmFsaWFzIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5UGF0aCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlDb21wb25lbnROYW1lIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpCbGVuZGVyTW9yc2U6ZGVidWdNb2RlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpCbGVuZGVyTW9yc2U6ZGVidWdEaXNwbGF5Ij48L3BwZTpCb29sZWFuUmFkaW8+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpFbnVtQ29tYm8gaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOkJsZW5kZXJNb3JzZTogdmlld3BvcnRfc2hhZGUiPjwvcHBlOkVudW1Db21ibz4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpNdWx0aVJlZmVyZW5jZSBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6UGxhdGZvcm06bGlicmFyeSI+PC9wcGU6TXVsdGlSZWZlcmVuY2U+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVCdWlsZGluZy54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVCdWlsZGluZy54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTliOTIwYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUJ1aWxkaW5nLnh3dApAQCAtMCwwICsxLDE4IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6UGh5c2ljYWxPYmplY3Q6aGVpZ2h0Ij48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlBoeXNpY2FsT2JqZWN0Om1hc3MiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUNhbWVyYVN5c3RlbS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVDYW1lcmFTeXN0ZW0ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmYzYTczOWMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVDYW1lcmFTeXN0ZW0ueHd0CkBAIC0wLDAgKzEsNTIgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpTZW5zb3JTeXN0ZW06ZnJlcXVlbmN5Ij48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpTZW5zb3JTeXN0ZW06aWRlbnRpZmllciI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06YWxpYXMiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlQYXRoIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeUNvbXBvbmVudE5hbWUiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6Q2FtZXJhU3lzdGVtOndpZHRoIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOkNhbWVyYVN5c3RlbTpoZWlnaHQiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOkNhbWVyYVN5c3RlbTphbHBoYV91Ij48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpDYW1lcmFTeXN0ZW06YWxwaGFfdiI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpDYW1lcmFTeXN0ZW06dTAiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6Q2FtZXJhU3lzdGVtOnYwIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpDYW1lcmFTeXN0ZW06Y29sb3JfZm9ybWF0Ij48L3BwZTpTdHJpbmdFZGl0b3I+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpSZWZlcmVuY2VEaWFsb2cgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOkNhbWVyYVN5c3RlbTp0cmFuc2xhdGUiPjwvcHBlOlJlZmVyZW5jZURpYWxvZz4KKwkJPHBwZTpSZWZlcmVuY2VEaWFsb2cgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOkNhbWVyYVN5c3RlbTpyb3RhdGUiPjwvcHBlOlJlZmVyZW5jZURpYWxvZz4KKwkJPHBwZTpSZWZlcmVuY2VEaWFsb2cgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlJvYm90aWNTeXN0ZW06bG9jYWxQb3NpdGlvbiI+PC9wcGU6UmVmZXJlbmNlRGlhbG9nPgorCQk8cHBlOlJlZmVyZW5jZURpYWxvZyBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6Um9ib3RpY1N5c3RlbTpsb2NhbE9yaWVudGF0aW9uIj48L3BwZTpSZWZlcmVuY2VEaWFsb2c+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVDaGFzc2lzLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUNoYXNzaXMueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZlNTdjYTcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVDaGFzc2lzLnh3dApAQCAtMCwwICsxLDI4IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6UGh5c2ljYWxPYmplY3Q6aGVpZ2h0Ij48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlBoeXNpY2FsT2JqZWN0Om1hc3MiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmFsaWFzIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5UGF0aCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlDb21wb25lbnROYW1lIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUNsb3NlZC1Mb29wQ29udHJvbFN5c3RlbS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVDbG9zZWQtTG9vcENvbnRyb2xTeXN0ZW0ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmExYTA1ZjUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVDbG9zZWQtTG9vcENvbnRyb2xTeXN0ZW0ueHd0CkBAIC0wLDAgKzEsMjUgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTphbGlhcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeVBhdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5Q29tcG9uZW50TmFtZSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVDb21wbGV0ZUJvbmRpbmcueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlQ29tcGxldGVCb25kaW5nLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMDM3Y2FmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlQ29tcGxldGVCb25kaW5nLnh3dApAQCAtMCwwICsxLDkgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUN5YmVyUGh5c2ljYWxTeXN0ZW0ueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlQ3liZXJQaHlzaWNhbFN5c3RlbS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTFhMDVmNQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUN5YmVyUGh5c2ljYWxTeXN0ZW0ueHd0CkBAIC0wLDAgKzEsMjUgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTphbGlhcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeVBhdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5Q29tcG9uZW50TmFtZSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVDeWNhYlRLLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUN5Y2FiVEsueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZhMjViNDkKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVDeWNhYlRLLnh3dApAQCAtMCwwICsxLDM1IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpDeWNhYlRLOnRpbWVTdGVwIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOkN5Y2FiVEs6dGltZUZhY3RvciI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06YWxpYXMiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlQYXRoIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeUNvbXBvbmVudE5hbWUiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6Q3ljYWJUSzp1c2VSZWFsVGltZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6TXVsdGlSZWZlcmVuY2UgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlBsYXRmb3JtOmxpYnJhcnkiPjwvcHBlOk11bHRpUmVmZXJlbmNlPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlRGF0YUZsb3dQb3J0Lnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZURhdGFGbG93UG9ydC54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDUxNzZkYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZURhdGFGbG93UG9ydC54d3QKQEAgLTAsMCArMSwyNSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpJbnRlZ2VyRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpEYXRhRmxvd1BvcnQ6YnVmZmVyU2l6ZSI+PC9wcGU6SW50ZWdlckVkaXRvcj4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpFbnVtQ29tYm8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6RGF0YUZsb3dQb3J0OmRpcmVjdGlvbiI+PC9wcGU6RW51bUNvbWJvPgorCQk8cHBlOkVudW1Db21ibyBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6UG9ydDpzeW5jaHJvbml6YXRpb25Qb2xpY3kiPjwvcHBlOkVudW1Db21ibz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZURlcGxveW1lbnRQbGFuLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZURlcGxveW1lbnRQbGFuLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ZmJkN2E3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlRGVwbG95bWVudFBsYW4ueHd0CkBAIC0wLDAgKzEsMTcgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6UmVmZXJlbmNlRGlhbG9nIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpEZXBsb3ltZW50UGxhbjptYWluSW5zdGFuY2UiPjwvcHBlOlJlZmVyZW5jZURpYWxvZz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUVuZ2luZVN5c3RlbS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVFbmdpbmVTeXN0ZW0ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU0MjliNTYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVFbmdpbmVTeXN0ZW0ueHd0CkBAIC0wLDAgKzEsNDYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTphbGlhcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeVBhdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5Q29tcG9uZW50TmFtZSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6RW5naW5lU3lzdGVtOnZlaGljbGVUcmFjdGlvbiI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6RW5naW5lU3lzdGVtOm1heEVuZ2luZUZvcmNlIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpFbmdpbmVTeXN0ZW06bWF4QnJlYWtpbmdGb3JjZSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6RW5naW5lU3lzdGVtOm1heEFsbG93ZWRTdGVlcmluZyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6RW5naW5lU3lzdGVtOm1heEFsbG93ZWRWZWxvY2l0eSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6RW5naW5lU3lzdGVtOmdlYXJfcmF0aW9uIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpSZWZlcmVuY2VEaWFsb2cgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlJvYm90aWNTeXN0ZW06bG9jYWxQb3NpdGlvbiI+PC9wcGU6UmVmZXJlbmNlRGlhbG9nPgorCQk8cHBlOlJlZmVyZW5jZURpYWxvZyBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6Um9ib3RpY1N5c3RlbTpsb2NhbE9yaWVudGF0aW9uIj48L3BwZTpSZWZlcmVuY2VEaWFsb2c+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVFbnZpcm9ubWVudC54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVFbnZpcm9ubWVudC54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjAzN2NhZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUVudmlyb25tZW50Lnh3dApAQCAtMCwwICsxLDkgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUV4dGVybmFsTGlicmFyeS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVFeHRlcm5hbExpYnJhcnkueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjEwZDM3MTUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVFeHRlcm5hbExpYnJhcnkueHd0CkBAIC0wLDAgKzEsMTkgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpFeHRlcm5hbExpYnJhcnk6bGliUGF0aCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6RXh0ZXJuYWxMaWJyYXJ5OmxpYkZpbGVGb3JtYXQiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUZsb29yLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUZsb29yLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lOWI5MjBiCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlRmxvb3IueHd0CkBAIC0wLDAgKzEsMTggQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpQaHlzaWNhbE9iamVjdDpoZWlnaHQiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6UGh5c2ljYWxPYmplY3Q6bWFzcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlR1BTU3lzdGVtLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUdQU1N5c3RlbS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmQyNGIyMgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUdQU1N5c3RlbS54d3QKQEAgLTAsMCArMSw0MCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlNlbnNvclN5c3RlbTpmcmVxdWVuY3kiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlNlbnNvclN5c3RlbTppZGVudGlmaWVyIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTphbGlhcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeVBhdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5Q29tcG9uZW50TmFtZSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6UmVmZXJlbmNlRGlhbG9nIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpHUFNTeXN0ZW06b3JpZ2luUG9zaXRpb24iPjwvcHBlOlJlZmVyZW5jZURpYWxvZz4KKwkJPHBwZTpSZWZlcmVuY2VEaWFsb2cgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlJvYm90aWNTeXN0ZW06bG9jYWxQb3NpdGlvbiI+PC9wcGU6UmVmZXJlbmNlRGlhbG9nPgorCQk8cHBlOlJlZmVyZW5jZURpYWxvZyBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6Um9ib3RpY1N5c3RlbTpsb2NhbE9yaWVudGF0aW9uIj48L3BwZTpSZWZlcmVuY2VEaWFsb2c+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVHcmFzcGluZ0hhcmR3YXJlLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUdyYXNwaW5nSGFyZHdhcmUueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZlNTdjYTcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVHcmFzcGluZ0hhcmR3YXJlLnh3dApAQCAtMCwwICsxLDI4IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6UGh5c2ljYWxPYmplY3Q6aGVpZ2h0Ij48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlBoeXNpY2FsT2JqZWN0Om1hc3MiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmFsaWFzIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5UGF0aCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlDb21wb25lbnROYW1lIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUdyYXNwaW5nU3lzdGVtLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUdyYXNwaW5nU3lzdGVtLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45YmQ5MTJjCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlR3Jhc3BpbmdTeXN0ZW0ueHd0CkBAIC0wLDAgKzEsMzQgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTphbGlhcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeVBhdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5Q29tcG9uZW50TmFtZSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6UmVmZXJlbmNlRGlhbG9nIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpSb2JvdGljU3lzdGVtOmxvY2FsUG9zaXRpb24iPjwvcHBlOlJlZmVyZW5jZURpYWxvZz4KKwkJPHBwZTpSZWZlcmVuY2VEaWFsb2cgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlJvYm90aWNTeXN0ZW06bG9jYWxPcmllbnRhdGlvbiI+PC9wcGU6UmVmZXJlbmNlRGlhbG9nPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlR3JvdW5kLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUdyb3VuZC54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTliOTIwYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUdyb3VuZC54d3QKQEAgLTAsMCArMSwxOCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlBoeXNpY2FsT2JqZWN0OmhlaWdodCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpQaHlzaWNhbE9iamVjdDptYXNzIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVHeXJvc2NvcGUueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlR3lyb3Njb3BlLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zZjczZDRlCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlR3lyb3Njb3BlLnh3dApAQCAtMCwwICsxLDM4IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U2Vuc29yU3lzdGVtOmZyZXF1ZW5jeSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U2Vuc29yU3lzdGVtOmlkZW50aWZpZXIiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmFsaWFzIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5UGF0aCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlDb21wb25lbnROYW1lIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpSZWZlcmVuY2VEaWFsb2cgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlJvYm90aWNTeXN0ZW06bG9jYWxQb3NpdGlvbiI+PC9wcGU6UmVmZXJlbmNlRGlhbG9nPgorCQk8cHBlOlJlZmVyZW5jZURpYWxvZyBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6Um9ib3RpY1N5c3RlbTpsb2NhbE9yaWVudGF0aW9uIj48L3BwZTpSZWZlcmVuY2VEaWFsb2c+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVIYXJkd2FyZS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVIYXJkd2FyZS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmU1N2NhNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUhhcmR3YXJlLnh3dApAQCAtMCwwICsxLDI4IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6UGh5c2ljYWxPYmplY3Q6aGVpZ2h0Ij48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlBoeXNpY2FsT2JqZWN0Om1hc3MiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmFsaWFzIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5UGF0aCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlDb21wb25lbnROYW1lIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUh1bWFuLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUh1bWFuLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lOWI5MjBiCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlSHVtYW4ueHd0CkBAIC0wLDAgKzEsMTggQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpQaHlzaWNhbE9iamVjdDpoZWlnaHQiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6UGh5c2ljYWxPYmplY3Q6bWFzcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlSW1hZ2VTZW5zb3JTeXN0ZW0ueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlSW1hZ2VTZW5zb3JTeXN0ZW0ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNmNzNkNGUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVJbWFnZVNlbnNvclN5c3RlbS54d3QKQEAgLTAsMCArMSwzOCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlNlbnNvclN5c3RlbTpmcmVxdWVuY3kiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlNlbnNvclN5c3RlbTppZGVudGlmaWVyIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTphbGlhcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeVBhdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5Q29tcG9uZW50TmFtZSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6UmVmZXJlbmNlRGlhbG9nIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpSb2JvdGljU3lzdGVtOmxvY2FsUG9zaXRpb24iPjwvcHBlOlJlZmVyZW5jZURpYWxvZz4KKwkJPHBwZTpSZWZlcmVuY2VEaWFsb2cgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlJvYm90aWNTeXN0ZW06bG9jYWxPcmllbnRhdGlvbiI+PC9wcGU6UmVmZXJlbmNlRGlhbG9nPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0ueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNmNzNkNGUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVJbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbS54d3QKQEAgLTAsMCArMSwzOCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlNlbnNvclN5c3RlbTpmcmVxdWVuY3kiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlNlbnNvclN5c3RlbTppZGVudGlmaWVyIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTphbGlhcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeVBhdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5Q29tcG9uZW50TmFtZSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6UmVmZXJlbmNlRGlhbG9nIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpSb2JvdGljU3lzdGVtOmxvY2FsUG9zaXRpb24iPjwvcHBlOlJlZmVyZW5jZURpYWxvZz4KKwkJPHBwZTpSZWZlcmVuY2VEaWFsb2cgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlJvYm90aWNTeXN0ZW06bG9jYWxPcmllbnRhdGlvbiI+PC9wcGU6UmVmZXJlbmNlRGlhbG9nPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlSW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmQyNGIyMgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbS54d3QKQEAgLTAsMCArMSw0MCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlNlbnNvclN5c3RlbTpmcmVxdWVuY3kiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlNlbnNvclN5c3RlbTppZGVudGlmaWVyIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTphbGlhcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeVBhdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5Q29tcG9uZW50TmFtZSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6UmVmZXJlbmNlRGlhbG9nIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpHUFNTeXN0ZW06b3JpZ2luUG9zaXRpb24iPjwvcHBlOlJlZmVyZW5jZURpYWxvZz4KKwkJPHBwZTpSZWZlcmVuY2VEaWFsb2cgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlJvYm90aWNTeXN0ZW06bG9jYWxQb3NpdGlvbiI+PC9wcGU6UmVmZXJlbmNlRGlhbG9nPgorCQk8cHBlOlJlZmVyZW5jZURpYWxvZyBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6Um9ib3RpY1N5c3RlbTpsb2NhbE9yaWVudGF0aW9uIj48L3BwZTpSZWZlcmVuY2VEaWFsb2c+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVJbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW0ueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zZjczZDRlCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtLnh3dApAQCAtMCwwICsxLDM4IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U2Vuc29yU3lzdGVtOmZyZXF1ZW5jeSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U2Vuc29yU3lzdGVtOmlkZW50aWZpZXIiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmFsaWFzIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5UGF0aCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlDb21wb25lbnROYW1lIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpSZWZlcmVuY2VEaWFsb2cgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlJvYm90aWNTeXN0ZW06bG9jYWxQb3NpdGlvbiI+PC9wcGU6UmVmZXJlbmNlRGlhbG9nPgorCQk8cHBlOlJlZmVyZW5jZURpYWxvZyBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6Um9ib3RpY1N5c3RlbTpsb2NhbE9yaWVudGF0aW9uIj48L3BwZTpSZWZlcmVuY2VEaWFsb2c+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVKb2ludC54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVKb2ludC54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjAzN2NhZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUpvaW50Lnh3dApAQCAtMCwwICsxLDkgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMWEwNWY1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlSm95c3RpY05hdmlnYXRpb25TeXN0ZW0ueHd0CkBAIC0wLDAgKzEsMjUgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTphbGlhcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeVBhdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5Q29tcG9uZW50TmFtZSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVMYW5kU3VyZmFjZS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVMYW5kU3VyZmFjZS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTliOTIwYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUxhbmRTdXJmYWNlLnh3dApAQCAtMCwwICsxLDE4IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6UGh5c2ljYWxPYmplY3Q6aGVpZ2h0Ij48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlBoeXNpY2FsT2JqZWN0Om1hc3MiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUxlZy54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVMZWcueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZlNTdjYTcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVMZWcueHd0CkBAIC0wLDAgKzEsMjggQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpQaHlzaWNhbE9iamVjdDpoZWlnaHQiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6UGh5c2ljYWxPYmplY3Q6bWFzcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06YWxpYXMiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlQYXRoIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeUNvbXBvbmVudE5hbWUiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlTGVnU3lzdGVtLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUxlZ1N5c3RlbS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWJkOTEyYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUxlZ1N5c3RlbS54d3QKQEAgLTAsMCArMSwzNCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmFsaWFzIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5UGF0aCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlDb21wb25lbnROYW1lIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpSZWZlcmVuY2VEaWFsb2cgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlJvYm90aWNTeXN0ZW06bG9jYWxQb3NpdGlvbiI+PC9wcGU6UmVmZXJlbmNlRGlhbG9nPgorCQk8cHBlOlJlZmVyZW5jZURpYWxvZyBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6Um9ib3RpY1N5c3RlbTpsb2NhbE9yaWVudGF0aW9uIj48L3BwZTpSZWZlcmVuY2VEaWFsb2c+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVMaWRhclN5c3RlbS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVMaWRhclN5c3RlbS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTQyYmFlNQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUxpZGFyU3lzdGVtLnh3dApAQCAtMCwwICsxLDYwIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U2Vuc29yU3lzdGVtOmZyZXF1ZW5jeSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U2Vuc29yU3lzdGVtOmlkZW50aWZpZXIiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmFsaWFzIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5UGF0aCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlDb21wb25lbnROYW1lIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpMaWRhclN5c3RlbTpuYkxheWVycyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6TGlkYXJTeXN0ZW06bGF5ZXJBbmdsZU1pbiI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6TGlkYXJTeXN0ZW06bGF5ZXJBbmdsZVN0ZXAiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6TGlkYXJTeXN0ZW06bm9pc2UiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOkxpZGFyU3lzdGVtOnNpZ21hTm9pc2UiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOkxpZGFyU3lzdGVtOmFuZ2xlX21pbiI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6TGlkYXJTeXN0ZW06YW5nbGVfbWF4Ij48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpMaWRhclN5c3RlbTp0aW1lX2luY3JlbWVudCAiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOkxpZGFyU3lzdGVtOnNjYW5fdGltZSAgIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpMaWRhclN5c3RlbTpyYW5nZV9taW4iPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOkxpZGFyU3lzdGVtOnJhbmdlX21heCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpMaWRhclN5c3RlbTpuYlJheXMiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlJlZmVyZW5jZURpYWxvZyBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6Um9ib3RpY1N5c3RlbTpsb2NhbFBvc2l0aW9uIj48L3BwZTpSZWZlcmVuY2VEaWFsb2c+CisJCTxwcGU6UmVmZXJlbmNlRGlhbG9nIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpSb2JvdGljU3lzdGVtOmxvY2FsT3JpZW50YXRpb24iPjwvcHBlOlJlZmVyZW5jZURpYWxvZz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUxvY2FsaXphdGlvblNlbnNvclN5c3RlbS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNmNzNkNGUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0ueHd0CkBAIC0wLDAgKzEsMzggQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpTZW5zb3JTeXN0ZW06ZnJlcXVlbmN5Ij48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpTZW5zb3JTeXN0ZW06aWRlbnRpZmllciI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06YWxpYXMiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlQYXRoIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeUNvbXBvbmVudE5hbWUiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlJlZmVyZW5jZURpYWxvZyBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6Um9ib3RpY1N5c3RlbTpsb2NhbFBvc2l0aW9uIj48L3BwZTpSZWZlcmVuY2VEaWFsb2c+CisJCTxwcGU6UmVmZXJlbmNlRGlhbG9nIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpSb2JvdGljU3lzdGVtOmxvY2FsT3JpZW50YXRpb24iPjwvcHBlOlJlZmVyZW5jZURpYWxvZz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZUxvY29tb3Rpb25IYXJkd2FyZS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVMb2NvbW90aW9uSGFyZHdhcmUueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZlNTdjYTcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVMb2NvbW90aW9uSGFyZHdhcmUueHd0CkBAIC0wLDAgKzEsMjggQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpQaHlzaWNhbE9iamVjdDpoZWlnaHQiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6UGh5c2ljYWxPYmplY3Q6bWFzcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06YWxpYXMiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlQYXRoIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeUNvbXBvbmVudE5hbWUiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlTG9jb21vdGlvblN5c3RlbS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVMb2NvbW90aW9uU3lzdGVtLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45YmQ5MTJjCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlTG9jb21vdGlvblN5c3RlbS54d3QKQEAgLTAsMCArMSwzNCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmFsaWFzIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5UGF0aCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlDb21wb25lbnROYW1lIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpSZWZlcmVuY2VEaWFsb2cgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlJvYm90aWNTeXN0ZW06bG9jYWxQb3NpdGlvbiI+PC9wcGU6UmVmZXJlbmNlRGlhbG9nPgorCQk8cHBlOlJlZmVyZW5jZURpYWxvZyBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6Um9ib3RpY1N5c3RlbTpsb2NhbE9yaWVudGF0aW9uIj48L3BwZTpSZWZlcmVuY2VEaWFsb2c+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZU1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmExYTA1ZjUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtLnh3dApAQCAtMCwwICsxLDI1IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06YWxpYXMiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlQYXRoIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeUNvbXBvbmVudE5hbWUiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlTWFuaXB1bGF0b3IueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlTWFuaXB1bGF0b3IueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAxMTgxZTMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVNYW5pcHVsYXRvci54d3QKQEAgLTAsMCArMSwyOSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlBoeXNpY2FsT2JqZWN0OmhlaWdodCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpQaHlzaWNhbE9iamVjdDptYXNzIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTphbGlhcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeVBhdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5Q29tcG9uZW50TmFtZSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpSb2JvdDp3aWR0aCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVNZWNoYW5pY2FsTGlua2FnZS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVNZWNoYW5pY2FsTGlua2FnZS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmU1N2NhNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZU1lY2hhbmljYWxMaW5rYWdlLnh3dApAQCAtMCwwICsxLDI4IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6UGh5c2ljYWxPYmplY3Q6aGVpZ2h0Ij48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlBoeXNpY2FsT2JqZWN0Om1hc3MiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmFsaWFzIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5UGF0aCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlDb21wb25lbnROYW1lIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZU1vYmlsZVJvYm90Lnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZU1vYmlsZVJvYm90Lnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ZWM2OTRlCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlTW9iaWxlUm9ib3QueHd0CkBAIC0wLDAgKzEsMzUgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpQaHlzaWNhbE9iamVjdDpoZWlnaHQiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6UGh5c2ljYWxPYmplY3Q6bWFzcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06YWxpYXMiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlQYXRoIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeUNvbXBvbmVudE5hbWUiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6Um9ib3Q6d2lkdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkVudW1Db21ibyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpNb2JpbGVSb2JvdDpraW5kIj48L3BwZTpFbnVtQ29tYm8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVOYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVOYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTFhMDVmNQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZU5hdmlnYXRpb25Db21tYW5kU3lzdGVtLnh3dApAQCAtMCwwICsxLDI1IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06YWxpYXMiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlQYXRoIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeUNvbXBvbmVudE5hbWUiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZU9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2Y3M2Q0ZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZU9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS54d3QKQEAgLTAsMCArMSwzOCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlNlbnNvclN5c3RlbTpmcmVxdWVuY3kiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlNlbnNvclN5c3RlbTppZGVudGlmaWVyIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTphbGlhcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeVBhdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5Q29tcG9uZW50TmFtZSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6UmVmZXJlbmNlRGlhbG9nIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpSb2JvdGljU3lzdGVtOmxvY2FsUG9zaXRpb24iPjwvcHBlOlJlZmVyZW5jZURpYWxvZz4KKwkJPHBwZTpSZWZlcmVuY2VEaWFsb2cgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlJvYm90aWNTeXN0ZW06bG9jYWxPcmllbnRhdGlvbiI+PC9wcGU6UmVmZXJlbmNlRGlhbG9nPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0ueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNmNzNkNGUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS54d3QKQEAgLTAsMCArMSwzOCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlNlbnNvclN5c3RlbTpmcmVxdWVuY3kiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlNlbnNvclN5c3RlbTppZGVudGlmaWVyIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTphbGlhcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeVBhdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5Q29tcG9uZW50TmFtZSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6UmVmZXJlbmNlRGlhbG9nIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpSb2JvdGljU3lzdGVtOmxvY2FsUG9zaXRpb24iPjwvcHBlOlJlZmVyZW5jZURpYWxvZz4KKwkJPHBwZTpSZWZlcmVuY2VEaWFsb2cgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlJvYm90aWNTeXN0ZW06bG9jYWxPcmllbnRhdGlvbiI+PC9wcGU6UmVmZXJlbmNlRGlhbG9nPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlT2RvbWV0cnlTeXN0ZW0ueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlT2RvbWV0cnlTeXN0ZW0ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNmNzNkNGUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVPZG9tZXRyeVN5c3RlbS54d3QKQEAgLTAsMCArMSwzOCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlNlbnNvclN5c3RlbTpmcmVxdWVuY3kiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlNlbnNvclN5c3RlbTppZGVudGlmaWVyIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTphbGlhcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeVBhdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5Q29tcG9uZW50TmFtZSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6UmVmZXJlbmNlRGlhbG9nIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpSb2JvdGljU3lzdGVtOmxvY2FsUG9zaXRpb24iPjwvcHBlOlJlZmVyZW5jZURpYWxvZz4KKwkJPHBwZTpSZWZlcmVuY2VEaWFsb2cgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlJvYm90aWNTeXN0ZW06bG9jYWxPcmllbnRhdGlvbiI+PC9wcGU6UmVmZXJlbmNlRGlhbG9nPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlT25Qb3J0Lnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZU9uUG9ydC54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzdhYjBkNAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZU9uUG9ydC54d3QKQEAgLTAsMCArMSwxNiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpSZWZlcmVuY2VEaWFsb2cgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6T25Qb3J0OnBvcnQiPjwvcHBlOlJlZmVyZW5jZURpYWxvZz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZU9uUHJvcGVydHkueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlT25Qcm9wZXJ0eS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDhjMmY1MwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZU9uUHJvcGVydHkueHd0CkBAIC0wLDAgKzEsMTYgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlIHhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlJlZmVyZW5jZURpYWxvZyBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6T25Qcm9wZXJ0eTpwcm9wZXJ0eSI+PC9wcGU6UmVmZXJlbmNlRGlhbG9nPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlT25WYXJpYWJsZS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVPblZhcmlhYmxlLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41ZjdlYTdkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlT25WYXJpYWJsZS54d3QKQEAgLTAsMCArMSwxNyBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpSZWZlcmVuY2VEaWFsb2cgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOk9uVmFyaWFibGU6cHJvcGVydHkiPjwvcHBlOlJlZmVyZW5jZURpYWxvZz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZU9wZW4tTG9vcENvbnRyb2xTeXN0ZW0ueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlT3Blbi1Mb29wQ29udHJvbFN5c3RlbS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTFhMDVmNQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZU9wZW4tTG9vcENvbnRyb2xTeXN0ZW0ueHd0CkBAIC0wLDAgKzEsMjUgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTphbGlhcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeVBhdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5Q29tcG9uZW50TmFtZSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVQZWRlc3RyaWFuLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVBlZGVzdHJpYW4ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU5YjkyMGIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVQZWRlc3RyaWFuLnh3dApAQCAtMCwwICsxLDE4IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6UGh5c2ljYWxPYmplY3Q6aGVpZ2h0Ij48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlBoeXNpY2FsT2JqZWN0Om1hc3MiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVBoeXNpY2FsT2JqZWN0Lnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVBoeXNpY2FsT2JqZWN0Lnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lOWI5MjBiCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlUGh5c2ljYWxPYmplY3QueHd0CkBAIC0wLDAgKzEsMTggQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpQaHlzaWNhbE9iamVjdDpoZWlnaHQiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6UGh5c2ljYWxPYmplY3Q6bWFzcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlUGlsb3RlZFN5c3RlbS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVQaWxvdGVkU3lzdGVtLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wMTE4MWUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlUGlsb3RlZFN5c3RlbS54d3QKQEAgLTAsMCArMSwyOSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlBoeXNpY2FsT2JqZWN0OmhlaWdodCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpQaHlzaWNhbE9iamVjdDptYXNzIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTphbGlhcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeVBhdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5Q29tcG9uZW50TmFtZSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpSb2JvdDp3aWR0aCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVQbGFuZXQueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlUGxhbmV0Lnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lOWI5MjBiCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlUGxhbmV0Lnh3dApAQCAtMCwwICsxLDE4IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6UGh5c2ljYWxPYmplY3Q6aGVpZ2h0Ij48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlBoeXNpY2FsT2JqZWN0Om1hc3MiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVBsYXRmb3JtLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVBsYXRmb3JtLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44MWQ5ZjBlCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlUGxhdGZvcm0ueHd0CkBAIC0wLDAgKzEsMzIgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTphbGlhcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeVBhdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5Q29tcG9uZW50TmFtZSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6TXVsdGlSZWZlcmVuY2UgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlBsYXRmb3JtOmxpYnJhcnkiPjwvcHBlOk11bHRpUmVmZXJlbmNlPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlUG9ydC54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVQb3J0Lnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wMzk4OTg2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlUG9ydC54d3QKQEAgLTAsMCArMSwxNyBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpFbnVtQ29tYm8gaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlBvcnQ6c3luY2hyb25pemF0aW9uUG9saWN5Ij48L3BwZTpFbnVtQ29tYm8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVQb3dlckhhcmR3YXJlLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVBvd2VySGFyZHdhcmUueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZlNTdjYTcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVQb3dlckhhcmR3YXJlLnh3dApAQCAtMCwwICsxLDI4IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6UGh5c2ljYWxPYmplY3Q6aGVpZ2h0Ij48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlBoeXNpY2FsT2JqZWN0Om1hc3MiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmFsaWFzIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5UGF0aCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlDb21wb25lbnROYW1lIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVJvYm90Lnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVJvYm90Lnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wMTE4MWUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlUm9ib3QueHd0CkBAIC0wLDAgKzEsMjkgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpQaHlzaWNhbE9iamVjdDpoZWlnaHQiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6UGh5c2ljYWxPYmplY3Q6bWFzcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06YWxpYXMiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlQYXRoIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeUNvbXBvbmVudE5hbWUiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6Um9ib3Q6d2lkdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlUm9ib3RpY0hlYWQueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlUm9ib3RpY0hlYWQueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmExYTA1ZjUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVSb2JvdGljSGVhZC54d3QKQEAgLTAsMCArMSwyNSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmFsaWFzIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5UGF0aCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlDb21wb25lbnROYW1lIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVJvYm90aWNNaWRkbGV3YXJlLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVJvYm90aWNNaWRkbGV3YXJlLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ZTU0NTYzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlUm9ib3RpY01pZGRsZXdhcmUueHd0CkBAIC0wLDAgKzEsMzggQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTphbGlhcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeVBhdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5Q29tcG9uZW50TmFtZSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6RW51bUNvbWJvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlJvYm90aWNNaWRkbGV3YXJlOmtpbmQiPjwvcHBlOkVudW1Db21ibz4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpNdWx0aVJlZmVyZW5jZSBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6UGxhdGZvcm06bGlicmFyeSI+PC9wcGU6TXVsdGlSZWZlcmVuY2U+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVSb2JvdGljU2ltdWxhdG9yLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVJvYm90aWNTaW11bGF0b3IueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgxZDlmMGUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVSb2JvdGljU2ltdWxhdG9yLnh3dApAQCAtMCwwICsxLDMyIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06YWxpYXMiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlQYXRoIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeUNvbXBvbmVudE5hbWUiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOk11bHRpUmVmZXJlbmNlIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpQbGF0Zm9ybTpsaWJyYXJ5Ij48L3BwZTpNdWx0aVJlZmVyZW5jZT4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVJvYm90aWNTeXN0ZW0ueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlUm9ib3RpY1N5c3RlbS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWJkOTEyYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVJvYm90aWNTeXN0ZW0ueHd0CkBAIC0wLDAgKzEsMzQgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTphbGlhcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeVBhdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5Q29tcG9uZW50TmFtZSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6UmVmZXJlbmNlRGlhbG9nIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpSb2JvdGljU3lzdGVtOmxvY2FsUG9zaXRpb24iPjwvcHBlOlJlZmVyZW5jZURpYWxvZz4KKwkJPHBwZTpSZWZlcmVuY2VEaWFsb2cgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlJvYm90aWNTeXN0ZW06bG9jYWxPcmllbnRhdGlvbiI+PC9wcGU6UmVmZXJlbmNlRGlhbG9nPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlU2Vuc29yRHJpdmVyLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVNlbnNvckRyaXZlci54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWFkODhiZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVNlbnNvckRyaXZlci54d3QKQEAgLTAsMCArMSwzMCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U29mdHdhcmU6cGVyaW9kIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlNvZnR3YXJlOnByaW9yaXR5Ij48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlNvZnR3YXJlOmRlYWRsaW5lIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlNvZnR3YXJlOndjZXQiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmFsaWFzIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5UGF0aCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlDb21wb25lbnROYW1lIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlNvZnR3YXJlOmlzUGVyaW9kaWMiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlU2Vuc29ySGFyZHdhcmUueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlU2Vuc29ySGFyZHdhcmUueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZlNTdjYTcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVTZW5zb3JIYXJkd2FyZS54d3QKQEAgLTAsMCArMSwyOCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlBoeXNpY2FsT2JqZWN0OmhlaWdodCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpQaHlzaWNhbE9iamVjdDptYXNzIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTphbGlhcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeVBhdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5Q29tcG9uZW50TmFtZSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVTZW5zb3JTeXN0ZW0ueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlU2Vuc29yU3lzdGVtLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zZjczZDRlCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlU2Vuc29yU3lzdGVtLnh3dApAQCAtMCwwICsxLDM4IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U2Vuc29yU3lzdGVtOmZyZXF1ZW5jeSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U2Vuc29yU3lzdGVtOmlkZW50aWZpZXIiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmFsaWFzIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5UGF0aCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlDb21wb25lbnROYW1lIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpSZWZlcmVuY2VEaWFsb2cgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlJvYm90aWNTeXN0ZW06bG9jYWxQb3NpdGlvbiI+PC9wcGU6UmVmZXJlbmNlRGlhbG9nPgorCQk8cHBlOlJlZmVyZW5jZURpYWxvZyBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6Um9ib3RpY1N5c3RlbTpsb2NhbE9yaWVudGF0aW9uIj48L3BwZTpSZWZlcmVuY2VEaWFsb2c+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVTZXJ2aWNlUG9ydC54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVTZXJ2aWNlUG9ydC54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzgxZTUwZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVNlcnZpY2VQb3J0Lnh3dApAQCAtMCwwICsxLDE4IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkVudW1Db21ibyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTZXJ2aWNlUG9ydDpraW5kIj48L3BwZTpFbnVtQ29tYm8+CisJCTxwcGU6RW51bUNvbWJvIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpQb3J0OnN5bmNocm9uaXphdGlvblBvbGljeSI+PC9wcGU6RW51bUNvbWJvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlU29mdHdhcmUueHd0IGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlU29mdHdhcmUueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjlhZDg4YmQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVTb2Z0d2FyZS54d3QKQEAgLTAsMCArMSwzMCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U29mdHdhcmU6cGVyaW9kIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlNvZnR3YXJlOnByaW9yaXR5Ij48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlNvZnR3YXJlOmRlYWRsaW5lIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlNvZnR3YXJlOndjZXQiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmFsaWFzIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5UGF0aCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlDb21wb25lbnROYW1lIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlNvZnR3YXJlOmlzUGVyaW9kaWMiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlU3RhaXJzLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVN0YWlycy54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTliOTIwYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVN0YWlycy54d3QKQEAgLTAsMCArMSwxOCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlBoeXNpY2FsT2JqZWN0OmhlaWdodCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpQaHlzaWNhbE9iamVjdDptYXNzIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVTdGF0ZS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVTdGF0ZS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWNlOGVkNgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVN0YXRlLnh3dApAQCAtMCwwICsxLDE3IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlJlZmVyZW5jZURpYWxvZyBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3RhdGU6YmVoYXZpb3IiPjwvcHBlOlJlZmVyZW5jZURpYWxvZz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVN0ZWVyZWRXaGVlbEhhcmR3YXJlLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVN0ZWVyZWRXaGVlbEhhcmR3YXJlLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZTU3Y2E3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlU3RlZXJlZFdoZWVsSGFyZHdhcmUueHd0CkBAIC0wLDAgKzEsMjggQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpQaHlzaWNhbE9iamVjdDpoZWlnaHQiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6UGh5c2ljYWxPYmplY3Q6bWFzcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06YWxpYXMiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlQYXRoIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeUNvbXBvbmVudE5hbWUiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMiI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpCb29sZWFuUmFkaW8gaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOm5hdGl2ZSI+PC9wcGU6Qm9vbGVhblJhZGlvPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlU3RlZXJlZFdoZWVsU3lzdGVtLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVN0ZWVyZWRXaGVlbFN5c3RlbS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDM2NTcwYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVN0ZWVyZWRXaGVlbFN5c3RlbS54d3QKQEAgLTAsMCArMSw2NiBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN0ZWVyZWRXaGVlbFN5c3RlbTp3aGVlbFJhZGl1cyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3RlZXJlZFdoZWVsU3lzdGVtOndoZWVsV2lkdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN0ZWVyZWRXaGVlbFN5c3RlbTpzdXNwZW5zaW9uUmVzdExlbmd0aCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3RlZXJlZFdoZWVsU3lzdGVtOndoZWVsQ29ubmVjdGlvbkhlaWdodCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3RlZXJlZFdoZWVsU3lzdGVtOnR5cGVPZldoZWVsIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpTdGVlcmVkV2hlZWxTeXN0ZW06d2hlZWxWZWxvY2l0eVBJRGtwIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpTdGVlcmVkV2hlZWxTeXN0ZW06d2hlZWxWZWxvY2l0eVBJRGtpIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpTdGVlcmVkV2hlZWxTeXN0ZW06d2hlZWxWZWxvY2l0eVBJRGtkIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpTdGVlcmVkV2hlZWxTeXN0ZW06d2hlZWxTdGVlcmluZ1BJRGtwIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpTdGVlcmVkV2hlZWxTeXN0ZW06d2hlZWxTdGVlcmluZ1BJRGtkIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpTdGVlcmVkV2hlZWxTeXN0ZW06d2hlZWxGcmljdGlvbiI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3RlZXJlZFdoZWVsU3lzdGVtOnN1c3BlbnNpb25TdGlmZm5lc3MiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN0ZWVyZWRXaGVlbFN5c3RlbTpzdXNwZW5zaW9uRGFtcGluZyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3RlZXJlZFdoZWVsU3lzdGVtOnN1c3BlbnNpb25Db21wcmVzc2lvbiI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3RlZXJlZFdoZWVsU3lzdGVtOndoZWVsVmVsb2NpdHlQSURtYXhTdW0iPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN0ZWVyZWRXaGVlbFN5c3RlbTp3aGVlbFZlbG9jaXR5UElEbWF4VmFsIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTphbGlhcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeVBhdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5Q29tcG9uZW50TmFtZSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6UmVmZXJlbmNlRGlhbG9nIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpSb2JvdGljU3lzdGVtOmxvY2FsUG9zaXRpb24iPjwvcHBlOlJlZmVyZW5jZURpYWxvZz4KKwkJPHBwZTpSZWZlcmVuY2VEaWFsb2cgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlJvYm90aWNTeXN0ZW06bG9jYWxPcmllbnRhdGlvbiI+PC9wcGU6UmVmZXJlbmNlRGlhbG9nPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlU3VwcG9ydGluZ1N0cnVjdHVyZS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVTdXBwb3J0aW5nU3RydWN0dXJlLnh3dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZTU3Y2E3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlU3VwcG9ydGluZ1N0cnVjdHVyZS54d3QKQEAgLTAsMCArMSwyOCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlBoeXNpY2FsT2JqZWN0OmhlaWdodCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpQaHlzaWNhbE9iamVjdDptYXNzIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTphbGlhcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeVBhdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5Q29tcG9uZW50TmFtZSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVTdXJmYWNlLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVN1cmZhY2UueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU5YjkyMGIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVTdXJmYWNlLnh3dApAQCAtMCwwICsxLDE4IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6UGh5c2ljYWxPYmplY3Q6aGVpZ2h0Ij48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlBoeXNpY2FsT2JqZWN0Om1hc3MiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVN5c3RlbS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVTeXN0ZW0ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmExYTA1ZjUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVTeXN0ZW0ueHd0CkBAIC0wLDAgKzEsMjUgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTphbGlhcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bGlicmFyeVBhdGgiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5Q29tcG9uZW50TmFtZSI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIyIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOkJvb2xlYW5SYWRpbyBpbnB1dD0ie0JpbmRpbmd9IiBwcm9wZXJ0eT0iUm9ib3RNTDpTeXN0ZW06bmF0aXZlIj48L3BwZTpCb29sZWFuUmFkaW8+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVUcmFuc2l0aW9uLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVRyYW5zaXRpb24ueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg2NGE1NDAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVUcmFuc2l0aW9uLnh3dApAQCAtMCwwICsxLDE5IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPENvbXBvc2l0ZQorCXhtbG5zOnBwZWw9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMubGF5b3V0IgorCXhtbG5zOnBwZT0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cyIKKwl4bWxucz0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QvcHJlc2VudGF0aW9uIiB4bWxuczp4PSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dCIKKwl4bWxuczpqPSJjbHItbmFtZXNwYWNlOmphdmEubGFuZyI+CisJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQ+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJPC9Db21wb3NpdGUubGF5b3V0PgorCTxDb21wb3NpdGU+CisJCTxDb21wb3NpdGUubGF5b3V0PgorCQkJPHBwZWw6UHJvcGVydGllc0xheW91dCBudW1Db2x1bW5zPSIxIj48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwkJPC9Db21wb3NpdGUubGF5b3V0PgorCQk8cHBlOlJlZmVyZW5jZURpYWxvZyBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6VHJhbnNpdGlvbjpndWFyZCI+PC9wcGU6UmVmZXJlbmNlRGlhbG9nPgorCQk8cHBlOlJlZmVyZW5jZURpYWxvZyBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6VHJhbnNpdGlvbjplZmZlY3QiPjwvcHBlOlJlZmVyZW5jZURpYWxvZz4KKwk8L0NvbXBvc2l0ZT4KKzwvQ29tcG9zaXRlPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVdhdGVyU3VyZmFjZS54d3QgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVXYXRlclN1cmZhY2UueHd0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU5YjkyMGIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvcHJvcGVydGllcy91aS9TaW5nbGVXYXRlclN1cmZhY2UueHd0CkBAIC0wLDAgKzEsMTggQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8Q29tcG9zaXRlCisJeG1sbnM6cHBlbD0iY2xyLW5hbWVzcGFjZTpvcmcuZWNsaXBzZS5wYXB5cnVzLnZpZXdzLnByb3BlcnRpZXMud2lkZ2V0cy5sYXlvdXQiCisJeG1sbnM6cHBlPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzIgorCXhtbG5zPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3h3dC9wcmVzZW50YXRpb24iIHhtbG5zOng9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0IgorCXhtbG5zOmo9ImNsci1uYW1lc3BhY2U6amF2YS5sYW5nIj4KKwk8Q29tcG9zaXRlLmxheW91dD4KKwkJPHBwZWw6UHJvcGVydGllc0xheW91dD48L3BwZWw6UHJvcGVydGllc0xheW91dD4KKwk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjEiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iCisJCQlwcm9wZXJ0eT0iUm9ib3RNTDpQaHlzaWNhbE9iamVjdDpoZWlnaHQiPjwvcHBlOlN0cmluZ0VkaXRvcj4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6UGh5c2ljYWxPYmplY3Q6bWFzcyI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCTwvQ29tcG9zaXRlPgorPC9Db21wb3NpdGU+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3Byb3BlcnRpZXMvdWkvU2luZ2xlV2VhcG9uU3lzdGVtLnh3dCBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVdlYXBvblN5c3RlbS54d3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWJkOTEyYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9wcm9wZXJ0aWVzL3VpL1NpbmdsZVdlYXBvblN5c3RlbS54d3QKQEAgLTAsMCArMSwzNCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxDb21wb3NpdGUKKwl4bWxuczpwcGVsPSJjbHItbmFtZXNwYWNlOm9yZy5lY2xpcHNlLnBhcHlydXMudmlld3MucHJvcGVydGllcy53aWRnZXRzLmxheW91dCIKKwl4bWxuczpwcGU9ImNsci1uYW1lc3BhY2U6b3JnLmVjbGlwc2UucGFweXJ1cy52aWV3cy5wcm9wZXJ0aWVzLndpZGdldHMiCisJeG1sbnM9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcveHd0L3ByZXNlbnRhdGlvbiIgeG1sbnM6eD0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy94d3QiCisJeG1sbnM6aj0iY2xyLW5hbWVzcGFjZTpqYXZhLmxhbmciPgorCTxDb21wb3NpdGUubGF5b3V0PgorCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0PjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCTwvQ29tcG9zaXRlLmxheW91dD4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpTdHJpbmdFZGl0b3IgaW5wdXQ9IntCaW5kaW5nfSIgcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmFsaWFzIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJCTxwcGU6U3RyaW5nRWRpdG9yIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpsaWJyYXJ5UGF0aCI+PC9wcGU6U3RyaW5nRWRpdG9yPgorCQk8cHBlOlN0cmluZ0VkaXRvciBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6U3lzdGVtOmxpYnJhcnlDb21wb25lbnROYW1lIj48L3BwZTpTdHJpbmdFZGl0b3I+CisJPC9Db21wb3NpdGU+CisJPENvbXBvc2l0ZT4KKwkJPENvbXBvc2l0ZS5sYXlvdXQ+CisJCQk8cHBlbDpQcm9wZXJ0aWVzTGF5b3V0IG51bUNvbHVtbnM9IjIiPjwvcHBlbDpQcm9wZXJ0aWVzTGF5b3V0PgorCQk8L0NvbXBvc2l0ZS5sYXlvdXQ+CisJCTxwcGU6Qm9vbGVhblJhZGlvIGlucHV0PSJ7QmluZGluZ30iIHByb3BlcnR5PSJSb2JvdE1MOlN5c3RlbTpuYXRpdmUiPjwvcHBlOkJvb2xlYW5SYWRpbz4KKwk8L0NvbXBvc2l0ZT4KKwk8Q29tcG9zaXRlPgorCQk8Q29tcG9zaXRlLmxheW91dD4KKwkJCTxwcGVsOlByb3BlcnRpZXNMYXlvdXQgbnVtQ29sdW1ucz0iMSI+PC9wcGVsOlByb3BlcnRpZXNMYXlvdXQ+CisJCTwvQ29tcG9zaXRlLmxheW91dD4KKwkJPHBwZTpSZWZlcmVuY2VEaWFsb2cgaW5wdXQ9IntCaW5kaW5nfSIKKwkJCXByb3BlcnR5PSJSb2JvdE1MOlJvYm90aWNTeXN0ZW06bG9jYWxQb3NpdGlvbiI+PC9wcGU6UmVmZXJlbmNlRGlhbG9nPgorCQk8cHBlOlJlZmVyZW5jZURpYWxvZyBpbnB1dD0ie0JpbmRpbmd9IgorCQkJcHJvcGVydHk9IlJvYm90TUw6Um9ib3RpY1N5c3RlbTpsb2NhbE9yaWVudGF0aW9uIj48L3BwZTpSZWZlcmVuY2VEaWFsb2c+CisJPC9Db21wb3NpdGU+Cis8L0NvbXBvc2l0ZT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRlZEpvaW50LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRlZEpvaW50LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWU4ZjU0NAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdGVkSm9pbnQuamF2YQpAQCAtMCwwICsxLDIxIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QWN0dWF0ZWQgSm9pbnQ8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPCEtLSBiZWdpbi1tb2RlbC1kb2MgLS0+CisgKiBtb3Rvcml6ZWQKKyAqIDwhLS0gZW5kLW1vZGVsLWRvYyAtLT4KKyAqCisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0QWN0dWF0ZWRKb2ludCgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBBY3R1YXRlZEpvaW50IGV4dGVuZHMgSm9pbnQgeworfSAvLyBBY3R1YXRlZEpvaW50CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvckhhcmR3YXJlLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BY3R1YXRvckhhcmR3YXJlLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTc0ZjhhYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdG9ySGFyZHdhcmUuamF2YQpAQCAtMCwwICsxLDE3IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QWN0dWF0b3IgSGFyZHdhcmU8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldEFjdHVhdG9ySGFyZHdhcmUoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgQWN0dWF0b3JIYXJkd2FyZSBleHRlbmRzIEhhcmR3YXJlIHsKK30gLy8gQWN0dWF0b3JIYXJkd2FyZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWN0dWF0b3JTeXN0ZW0uamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdG9yU3lzdGVtLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzZhYzM2NAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FjdHVhdG9yU3lzdGVtLmphdmEKQEAgLTAsMCArMSwyMSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFjdHVhdG9yIFN5c3RlbTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8IS0tIGJlZ2luLW1vZGVsLWRvYyAtLT4KKyAqIFN5c3RlbSBJTkNMVURJTkcgc29mdHdhcmUgd2hpY2ggY29udHJvbCBlZmZlY3RvcnMsIGxpa2UgYSBtZWNoYW5pY2FsIGFybSBkcml2ZXIuCisgKiA8IS0tIGVuZC1tb2RlbC1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldEFjdHVhdG9yU3lzdGVtKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIEFjdHVhdG9yU3lzdGVtIGV4dGVuZHMgUm9ib3RpY1N5c3RlbSwgQ3liZXJQaHlzaWNhbFN5c3RlbSB7Cit9IC8vIEFjdHVhdG9yU3lzdGVtCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BZ2VudC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wMWYwNTJlCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWdlbnQuamF2YQpAQCAtMCwwICsxLDE4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QWdlbnQ8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldEFnZW50KCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIEFnZW50IGV4dGVuZHMgUGh5c2ljYWxPYmplY3QgeworCit9IC8vIEFnZW50CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZmZWUzYzYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9BbGdvcml0aG0uamF2YQpAQCAtMCwwICsxLDE2MCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuT3BlcmF0aW9uOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BbGdvcml0aG08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPCEtLSBiZWdpbi1tb2RlbC1kb2MgLS0+CisgKiBMaWJGaWxlRm9ybWF0IGNhbiBiZSBlbGYsIG1hdGxhYiwgZXRjCisgKiA8IS0tIGVuZC1tb2RlbC1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobSNnZXRCYXNlX09wZXJhdGlvbiA8ZW0+QmFzZSBPcGVyYXRpb248L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0jaXNFeHRlcm5hbCA8ZW0+SXMgRXh0ZXJuYWw8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0jZ2V0RXh0RnVuY3Rpb25OYW1lIDxlbT5FeHQgRnVuY3Rpb24gTmFtZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobSNnZXRMaWJQYXRoIDxlbT5MaWIgUGF0aDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobSNnZXRMaWJGaWxlRm9ybWF0IDxlbT5MaWIgRmlsZSBGb3JtYXQ8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRBbGdvcml0aG0oKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgQWxnb3JpdGhtIGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QmFzZSBPcGVyYXRpb248L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkJhc2UgT3BlcmF0aW9uPC9lbT4nIHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5CYXNlIE9wZXJhdGlvbjwvZW0+JyByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0QmFzZV9PcGVyYXRpb24oT3BlcmF0aW9uKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldEFsZ29yaXRobV9CYXNlX09wZXJhdGlvbigpCisJICogQG1vZGVsIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT3BlcmF0aW9uIGdldEJhc2VfT3BlcmF0aW9uKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtI2dldEJhc2VfT3BlcmF0aW9uIDxlbT5CYXNlIE9wZXJhdGlvbjwvZW0+fScgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+QmFzZSBPcGVyYXRpb248L2VtPicgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldEJhc2VfT3BlcmF0aW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRCYXNlX09wZXJhdGlvbihPcGVyYXRpb24gdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+SXMgRXh0ZXJuYWw8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPklzIEV4dGVybmFsPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwKKwkgKiB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPklzIEV4dGVybmFsPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRJc0V4dGVybmFsKGJvb2xlYW4pCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0QWxnb3JpdGhtX0lzRXh0ZXJuYWwoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UudW1sMi50eXBlcy5Cb29sZWFuIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCWJvb2xlYW4gaXNFeHRlcm5hbCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobSNpc0V4dGVybmFsIDxlbT5JcyBFeHRlcm5hbDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+SXMgRXh0ZXJuYWw8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2lzRXh0ZXJuYWwoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldElzRXh0ZXJuYWwoYm9vbGVhbiB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5FeHQgRnVuY3Rpb24gTmFtZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+RXh0IEZ1bmN0aW9uIE5hbWU8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkV4dCBGdW5jdGlvbiBOYW1lPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRFeHRGdW5jdGlvbk5hbWUoU3RyaW5nKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldEFsZ29yaXRobV9FeHRGdW5jdGlvbk5hbWUoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UudW1sMi50eXBlcy5TdHJpbmciIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJU3RyaW5nIGdldEV4dEZ1bmN0aW9uTmFtZSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobSNnZXRFeHRGdW5jdGlvbk5hbWUgPGVtPkV4dCBGdW5jdGlvbiBOYW1lPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5FeHQgRnVuY3Rpb24gTmFtZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0RXh0RnVuY3Rpb25OYW1lKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRFeHRGdW5jdGlvbk5hbWUoU3RyaW5nIHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkxpYiBQYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5MaWIgUGF0aDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+TGliIFBhdGg8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldExpYlBhdGgoU3RyaW5nKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldEFsZ29yaXRobV9MaWJQYXRoKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnVtbDIudHlwZXMuU3RyaW5nIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCVN0cmluZyBnZXRMaWJQYXRoKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtI2dldExpYlBhdGggPGVtPkxpYiBQYXRoPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5MaWIgUGF0aDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0TGliUGF0aCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0TGliUGF0aChTdHJpbmcgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TGliIEZpbGUgRm9ybWF0PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogVGhlIGRlZmF1bHQgdmFsdWUgaXMgPGNvZGU+ImVsZiI8L2NvZGU+LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+TGliIEZpbGUgRm9ybWF0PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5MaWIgRmlsZSBGb3JtYXQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldExpYkZpbGVGb3JtYXQoU3RyaW5nKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldEFsZ29yaXRobV9MaWJGaWxlRm9ybWF0KCkKKwkgKiBAbW9kZWwgZGVmYXVsdD0iZWxmIiBkYXRhVHlwZT0ib3JnLmVjbGlwc2UudW1sMi50eXBlcy5TdHJpbmciIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJU3RyaW5nIGdldExpYkZpbGVGb3JtYXQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0jZ2V0TGliRmlsZUZvcm1hdCA8ZW0+TGliIEZpbGUgRm9ybWF0PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5MaWIgRmlsZSBGb3JtYXQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldExpYkZpbGVGb3JtYXQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldExpYkZpbGVGb3JtYXQoU3RyaW5nIHZhbHVlKTsKKworfSAvLyBBbGdvcml0aG0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsZ29yaXRobUxpYnJhcnkuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wMzY0NWFmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxnb3JpdGhtTGlicmFyeS5qYXZhCkBAIC0wLDAgKzEsNzUgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BbGdvcml0aG0gTGlicmFyeTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtTGlicmFyeSNnZXRCYXNlX0NsYXNzIDxlbT5CYXNlIENsYXNzPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtTGlicmFyeSNnZXRQYXRoIDxlbT5QYXRoPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0QWxnb3JpdGhtTGlicmFyeSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBBbGdvcml0aG1MaWJyYXJ5IGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+QmFzZSBDbGFzczwvZW0+JyByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+QmFzZSBDbGFzczwvZW0+JyByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRBbGdvcml0aG1MaWJyYXJ5X0Jhc2VfQ2xhc3MoKQorCSAqIEBtb2RlbCByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCW9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzIGdldEJhc2VfQ2xhc3MoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG1MaWJyYXJ5I2dldEJhc2VfQ2xhc3MgPGVtPkJhc2UgQ2xhc3M8L2VtPn0nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgQ2xhc3M8L2VtPicgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldEJhc2VfQ2xhc3MoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+UGF0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+UGF0aDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+UGF0aDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0UGF0aChTdHJpbmcpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0QWxnb3JpdGhtTGlicmFyeV9QYXRoKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnVtbDIudHlwZXMuU3RyaW5nIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCVN0cmluZyBnZXRQYXRoKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtTGlicmFyeSNnZXRQYXRoIDxlbT5QYXRoPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5QYXRoPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRQYXRoKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRQYXRoKFN0cmluZyB2YWx1ZSk7CisKK30gLy8gQWxnb3JpdGhtTGlicmFyeQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQWxsb2NhdGUuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsbG9jYXRlLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzE1ZjZkNAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0FsbG9jYXRlLmphdmEKQEAgLTAsMCArMSw1MCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuQWJzdHJhY3Rpb247CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFsbG9jYXRlPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGxvY2F0ZSNnZXRCYXNlX0Fic3RyYWN0aW9uIDxlbT5CYXNlIEFic3RyYWN0aW9uPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0QWxsb2NhdGUoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgQWxsb2NhdGUgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CYXNlIEFic3RyYWN0aW9uPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5CYXNlIEFic3RyYWN0aW9uPC9lbT4nIHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5CYXNlIEFic3RyYWN0aW9uPC9lbT4nIHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRCYXNlX0Fic3RyYWN0aW9uKEFic3RyYWN0aW9uKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldEFsbG9jYXRlX0Jhc2VfQWJzdHJhY3Rpb24oKQorCSAqIEBtb2RlbCByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUFic3RyYWN0aW9uIGdldEJhc2VfQWJzdHJhY3Rpb24oKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGxvY2F0ZSNnZXRCYXNlX0Fic3RyYWN0aW9uIDxlbT5CYXNlIEFic3RyYWN0aW9uPC9lbT59JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5CYXNlIEFic3RyYWN0aW9uPC9lbT4nIHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRCYXNlX0Fic3RyYWN0aW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRCYXNlX0Fic3RyYWN0aW9uKEFic3RyYWN0aW9uIHZhbHVlKTsKKworfSAvLyBBbGxvY2F0ZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQXJtLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Bcm0uamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iOWMwZDY4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQXJtLmphdmEKQEAgLTAsMCArMSwxOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFybTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0QXJtKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIEFybSBleHRlbmRzIEVPYmplY3QgeworfSAvLyBBcm0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQmxlbmRlck1vcnNlLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDcwMmY3OQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0JsZW5kZXJNb3JzZS5qYXZhCkBAIC0wLDAgKzEsMTMxIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QmxlbmRlciBNb3JzZTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQmxlbmRlck1vcnNlI2lzRGVidWdNb2RlIDxlbT5EZWJ1ZyBNb2RlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQmxlbmRlck1vcnNlI2lzRGVidWdEaXNwbGF5IDxlbT5EZWJ1ZyBEaXNwbGF5PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQmxlbmRlck1vcnNlI2dldEdyYXZpdHkgPGVtPkdyYXZpdHk8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5CbGVuZGVyTW9yc2UjZ2V0X3ZpZXdwb3J0X3NoYWRlIDxlbT52aWV3cG9ydCBzaGFkZTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldEJsZW5kZXJNb3JzZSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBCbGVuZGVyTW9yc2UgZXh0ZW5kcyBSb2JvdGljU2ltdWxhdG9yIHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5EZWJ1ZyBNb2RlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5EZWJ1ZyBNb2RlPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5EZWJ1ZyBNb2RlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXREZWJ1Z01vZGUoYm9vbGVhbikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRCbGVuZGVyTW9yc2VfRGVidWdNb2RlKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnVtbDIudHlwZXMuQm9vbGVhbiIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCWJvb2xlYW4gaXNEZWJ1Z01vZGUoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5CbGVuZGVyTW9yc2UjaXNEZWJ1Z01vZGUgPGVtPkRlYnVnIE1vZGU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkRlYnVnIE1vZGU8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2lzRGVidWdNb2RlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXREZWJ1Z01vZGUoYm9vbGVhbiB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5EZWJ1ZyBEaXNwbGF5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5EZWJ1ZyBEaXNwbGF5PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5EZWJ1ZyBEaXNwbGF5PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXREZWJ1Z0Rpc3BsYXkoYm9vbGVhbikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRCbGVuZGVyTW9yc2VfRGVidWdEaXNwbGF5KCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnVtbDIudHlwZXMuQm9vbGVhbiIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCWJvb2xlYW4gaXNEZWJ1Z0Rpc3BsYXkoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5CbGVuZGVyTW9yc2UjaXNEZWJ1Z0Rpc3BsYXkgPGVtPkRlYnVnIERpc3BsYXk8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkRlYnVnIERpc3BsYXk8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2lzRGVidWdEaXNwbGF5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXREZWJ1Z0Rpc3BsYXkoYm9vbGVhbiB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5HcmF2aXR5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5HcmF2aXR5PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5HcmF2aXR5PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRHcmF2aXR5KEZsb2F0MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0QmxlbmRlck1vcnNlX0dyYXZpdHkoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRHcmF2aXR5KCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQmxlbmRlck1vcnNlI2dldEdyYXZpdHkgPGVtPkdyYXZpdHk8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkdyYXZpdHk8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldEdyYXZpdHkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEdyYXZpdHkoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPnZpZXdwb3J0IHNoYWRlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogVGhlIGRlZmF1bHQgdmFsdWUgaXMgPGNvZGU+IldJUkVGUkFNRSI8L2NvZGU+LgorCSAqIFRoZSBsaXRlcmFscyBhcmUgZnJvbSB0aGUgZW51bWVyYXRpb24ge0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TaGFkZX0uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT52aWV3cG9ydCBzaGFkZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+dmlld3BvcnQgc2hhZGU8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNoYWRlCisJICogQHNlZSAjc2V0X3ZpZXdwb3J0X3NoYWRlKFNoYWRlKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldEJsZW5kZXJNb3JzZV9fdmlld3BvcnRfc2hhZGUoKQorCSAqIEBtb2RlbCBkZWZhdWx0PSJXSVJFRlJBTUUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqICAgICAgICBhbm5vdGF0aW9uPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIG9yaWdpbmFsTmFtZT0nIHZpZXdwb3J0X3NoYWRlJyIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJU2hhZGUgZ2V0X3ZpZXdwb3J0X3NoYWRlKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQmxlbmRlck1vcnNlI2dldF92aWV3cG9ydF9zaGFkZSA8ZW0+dmlld3BvcnQgc2hhZGU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPnZpZXdwb3J0IHNoYWRlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TaGFkZQorCSAqIEBzZWUgI2dldF92aWV3cG9ydF9zaGFkZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0X3ZpZXdwb3J0X3NoYWRlKFNoYWRlIHZhbHVlKTsKKworfSAvLyBCbGVuZGVyTW9yc2UKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0J1aWxkaW5nLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CdWlsZGluZy5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFhZWJjYjkKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9CdWlsZGluZy5qYXZhCkBAIC0wLDAgKzEsMTcgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5CdWlsZGluZzwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0QnVpbGRpbmcoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgQnVpbGRpbmcgZXh0ZW5kcyBQaHlzaWNhbE9iamVjdCB7Cit9IC8vIEJ1aWxkaW5nCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0NhbWVyYVN5c3RlbS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM1OGE4NTMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DYW1lcmFTeXN0ZW0uamF2YQpAQCAtMCwwICsxLDI1OCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludDMyOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5DYW1lcmEgU3lzdGVtPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DYW1lcmFTeXN0ZW0jZ2V0V2lkdGggPGVtPldpZHRoPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2FtZXJhU3lzdGVtI2dldEhlaWdodCA8ZW0+SGVpZ2h0PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2FtZXJhU3lzdGVtI2dldEFscGhhX3UgPGVtPkFscGhhIHU8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DYW1lcmFTeXN0ZW0jZ2V0QWxwaGFfdiA8ZW0+QWxwaGEgdjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNhbWVyYVN5c3RlbSNnZXRVMCA8ZW0+VTA8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DYW1lcmFTeXN0ZW0jZ2V0VjAgPGVtPlYwPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2FtZXJhU3lzdGVtI2dldENvbG9yX2Zvcm1hdCA8ZW0+Q29sb3IgZm9ybWF0PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2FtZXJhU3lzdGVtI2dldFRyYW5zbGF0ZSA8ZW0+VHJhbnNsYXRlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2FtZXJhU3lzdGVtI2dldFJvdGF0ZSA8ZW0+Um90YXRlPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0Q2FtZXJhU3lzdGVtKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIENhbWVyYVN5c3RlbSBleHRlbmRzIEltYWdlU2Vuc29yU3lzdGVtIHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5XaWR0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIGlzIDxjb2RlPiIwIjwvY29kZT4uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5XaWR0aDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+V2lkdGg8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFdpZHRoKFVJbnQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRDYW1lcmFTeXN0ZW1fV2lkdGgoKQorCSAqIEBtb2RlbCBkZWZhdWx0PSIwIiBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRXaWR0aCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNhbWVyYVN5c3RlbSNnZXRXaWR0aCA8ZW0+V2lkdGg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPldpZHRoPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRXaWR0aCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0V2lkdGgoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkhlaWdodDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+SGVpZ2h0PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5IZWlnaHQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldEhlaWdodChVSW50MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0Q2FtZXJhU3lzdGVtX0hlaWdodCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldEhlaWdodCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNhbWVyYVN5c3RlbSNnZXRIZWlnaHQgPGVtPkhlaWdodDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+SGVpZ2h0PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRIZWlnaHQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEhlaWdodChPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QWxwaGEgdTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+QWxwaGEgdTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+QWxwaGEgdTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0QWxwaGFfdShGbG9hdDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldENhbWVyYVN5c3RlbV9BbHBoYV91KCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldEFscGhhX3UoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DYW1lcmFTeXN0ZW0jZ2V0QWxwaGFfdSA8ZW0+QWxwaGEgdTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+QWxwaGEgdTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0QWxwaGFfdSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0QWxwaGFfdShPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QWxwaGEgdjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+QWxwaGEgdjwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+QWxwaGEgdjwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0QWxwaGFfdihGbG9hdDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldENhbWVyYVN5c3RlbV9BbHBoYV92KCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldEFscGhhX3YoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DYW1lcmFTeXN0ZW0jZ2V0QWxwaGFfdiA8ZW0+QWxwaGEgdjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+QWxwaGEgdjwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0QWxwaGFfdigpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0QWxwaGFfdihPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VTA8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlUwPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5VMDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0VTAoRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRDYW1lcmFTeXN0ZW1fVTAoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0VTAoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DYW1lcmFTeXN0ZW0jZ2V0VTAgPGVtPlUwPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5VMDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0VTAoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFUwKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5WMDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+VjA8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlYwPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRWMChGbG9hdDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldENhbWVyYVN5c3RlbV9WMCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRWMCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNhbWVyYVN5c3RlbSNnZXRWMCA8ZW0+VjA8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlYwPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRWMCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0VjAoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkNvbG9yIGZvcm1hdDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+Q29sb3IgZm9ybWF0PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5Db2xvciBmb3JtYXQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldENvbG9yX2Zvcm1hdChTdHJpbmcpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0Q2FtZXJhU3lzdGVtX0NvbG9yX2Zvcm1hdCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdHJpbmciIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldENvbG9yX2Zvcm1hdCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNhbWVyYVN5c3RlbSNnZXRDb2xvcl9mb3JtYXQgPGVtPkNvbG9yIGZvcm1hdDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+Q29sb3IgZm9ybWF0PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRDb2xvcl9mb3JtYXQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldENvbG9yX2Zvcm1hdChPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VHJhbnNsYXRlPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5UcmFuc2xhdGU8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlRyYW5zbGF0ZTwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0VHJhbnNsYXRlKFBvaW50MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0Q2FtZXJhU3lzdGVtX1RyYW5zbGF0ZSgpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCVBvaW50MzIgZ2V0VHJhbnNsYXRlKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2FtZXJhU3lzdGVtI2dldFRyYW5zbGF0ZSA8ZW0+VHJhbnNsYXRlPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5UcmFuc2xhdGU8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldFRyYW5zbGF0ZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0VHJhbnNsYXRlKFBvaW50MzIgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+Um90YXRlPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5Sb3RhdGU8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlJvdGF0ZTwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0Um90YXRlKFBvaW50MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0Q2FtZXJhU3lzdGVtX1JvdGF0ZSgpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCVBvaW50MzIgZ2V0Um90YXRlKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2FtZXJhU3lzdGVtI2dldFJvdGF0ZSA8ZW0+Um90YXRlPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5Sb3RhdGU8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldFJvdGF0ZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0Um90YXRlKFBvaW50MzIgdmFsdWUpOworCit9IC8vIENhbWVyYVN5c3RlbQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2hhc3Npcy5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2hhc3Npcy5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhkZmZiN2EKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DaGFzc2lzLmphdmEKQEAgLTAsMCArMSwxNyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNoYXNzaXM8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldENoYXNzaXMoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgQ2hhc3NpcyBleHRlbmRzIFN1cHBvcnRpbmdTdHJ1Y3R1cmUgeworfSAvLyBDaGFzc2lzCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DbG9zZWRMb29wQ29udHJvbFN5c3RlbS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2xvc2VkTG9vcENvbnRyb2xTeXN0ZW0uamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MzAyOWI3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ2xvc2VkTG9vcENvbnRyb2xTeXN0ZW0uamF2YQpAQCAtMCwwICsxLDE3IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q2xvc2VkIExvb3AgQ29udHJvbCBTeXN0ZW08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldENsb3NlZExvb3BDb250cm9sU3lzdGVtKCkKKyAqIEBtb2RlbCBhbm5vdGF0aW9uPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIG9yaWdpbmFsTmFtZT0nQ2xvc2VkLUxvb3BDb250cm9sU3lzdGVtJyIKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBDbG9zZWRMb29wQ29udHJvbFN5c3RlbSBleHRlbmRzIEN5YmVyUGh5c2ljYWxTeXN0ZW0geworfSAvLyBDbG9zZWRMb29wQ29udHJvbFN5c3RlbQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcGxldGVCb25kaW5nLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Db21wbGV0ZUJvbmRpbmcuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMGU0MzFhCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ29tcGxldGVCb25kaW5nLmphdmEKQEAgLTAsMCArMSwyMyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNvbXBsZXRlIEJvbmRpbmc8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPCEtLSBiZWdpbi1tb2RlbC1kb2MgLS0+CisgKiBUaGlzIHJlbGF0aW9uIHNwZWNpZmllcyB0aGF0CisgKiAgdHdvIFBoeXNpY2FsT2JqZWN0IGFyZSBzbyB0aWdodGx5CisgKiAgbGlua2VkIHRoYXQgdGhlaXIgZnJhbWVzIGFyZSBzdGF0aWNhbGx5IGxpbmtlZAorICogPCEtLSBlbmQtbW9kZWwtZG9jIC0tPgorICoKKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRDb21wbGV0ZUJvbmRpbmcoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgQ29tcGxldGVCb25kaW5nIGV4dGVuZHMgSm9pbnQgeworfSAvLyBDb21wbGV0ZUJvbmRpbmcKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5YmVyUGh5c2ljYWxTeXN0ZW0uamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5YmVyUGh5c2ljYWxTeXN0ZW0uamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40YjQ0MGU4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvQ3liZXJQaHlzaWNhbFN5c3RlbS5qYXZhCkBAIC0wLDAgKzEsMTcgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5DeWJlciBQaHlzaWNhbCBTeXN0ZW08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldEN5YmVyUGh5c2ljYWxTeXN0ZW0oKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgQ3liZXJQaHlzaWNhbFN5c3RlbSBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0geworfSAvLyBDeWJlclBoeXNpY2FsU3lzdGVtCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9DeWNhYlRLLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGY1MzFhZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0N5Y2FiVEsuamF2YQpAQCAtMCwwICsxLDEwMCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkN5Y2FiIFRLPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DeWNhYlRLI2lzVXNlUmVhbFRpbWUgPGVtPlVzZSBSZWFsIFRpbWU8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DeWNhYlRLI2dldFRpbWVTdGVwIDxlbT5UaW1lIFN0ZXA8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DeWNhYlRLI2dldFRpbWVGYWN0b3IgPGVtPlRpbWUgRmFjdG9yPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0Q3ljYWJUSygpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBDeWNhYlRLIGV4dGVuZHMgUm9ib3RpY1NpbXVsYXRvciB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VXNlIFJlYWwgVGltZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+VXNlIFJlYWwgVGltZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+VXNlIFJlYWwgVGltZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0VXNlUmVhbFRpbWUoYm9vbGVhbikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRDeWNhYlRLX1VzZVJlYWxUaW1lKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnVtbDIudHlwZXMuQm9vbGVhbiIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCWJvb2xlYW4gaXNVc2VSZWFsVGltZSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkN5Y2FiVEsjaXNVc2VSZWFsVGltZSA8ZW0+VXNlIFJlYWwgVGltZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+VXNlIFJlYWwgVGltZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjaXNVc2VSZWFsVGltZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0VXNlUmVhbFRpbWUoYm9vbGVhbiB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5UaW1lIFN0ZXA8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlRpbWUgU3RlcDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+VGltZSBTdGVwPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRUaW1lU3RlcChGbG9hdDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldEN5Y2FiVEtfVGltZVN0ZXAoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRUaW1lU3RlcCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkN5Y2FiVEsjZ2V0VGltZVN0ZXAgPGVtPlRpbWUgU3RlcDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+VGltZSBTdGVwPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRUaW1lU3RlcCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0VGltZVN0ZXAoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlRpbWUgRmFjdG9yPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5UaW1lIEZhY3RvcjwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+VGltZSBGYWN0b3I8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFRpbWVGYWN0b3IoRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRDeWNhYlRLX1RpbWVGYWN0b3IoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRUaW1lRmFjdG9yKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ3ljYWJUSyNnZXRUaW1lRmFjdG9yIDxlbT5UaW1lIEZhY3RvcjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+VGltZSBGYWN0b3I8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFRpbWVGYWN0b3IoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFRpbWVGYWN0b3IoT2JqZWN0IHZhbHVlKTsKKworfSAvLyBDeWNhYlRLCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93RGlyZWN0aW9uS2luZC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM2NGYyN2UKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EYXRhRmxvd0RpcmVjdGlvbktpbmQuamF2YQpAQCAtMCwwICsxLDIzMiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCitpbXBvcnQgamF2YS51dGlsLkFycmF5czsKK2ltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbnM7CitpbXBvcnQgamF2YS51dGlsLkxpc3Q7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbGl0ZXJhbHMgb2YgdGhlIGVudW1lcmF0aW9uICc8ZW0+PGI+RGF0YSBGbG93IERpcmVjdGlvbiBLaW5kPC9iPjwvZW0+JywKKyAqIGFuZCB1dGlsaXR5IG1ldGhvZHMgZm9yIHdvcmtpbmcgd2l0aCB0aGVtLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXREYXRhRmxvd0RpcmVjdGlvbktpbmQoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBlbnVtIERhdGFGbG93RGlyZWN0aW9uS2luZCBpbXBsZW1lbnRzIEVudW1lcmF0b3IgeworCS8qKgorCSAqIFRoZSAnPGVtPjxiPkluPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI0lOX1ZBTFVFCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJSU4oMCwgImluIiwgImluIiksCisKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5PdXQ8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjT1VUX1ZBTFVFCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJT1VUKDEsICJvdXQiLCAib3V0IiksCisKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5Jbm91dDwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNJTk9VVF9WQUxVRQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCUlOT1VUKDIsICJpbm91dCIsICJpbm91dCIpOworCisJLyoqCisJICogVGhlICc8ZW0+PGI+SW48L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiAnPGVtPjxiPkluPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdCBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNJTgorCSAqIEBtb2RlbCBuYW1lPSJpbiIKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBJTl9WQUxVRSA9IDA7CisKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5PdXQ8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiAnPGVtPjxiPk91dDwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjT1VUCisJICogQG1vZGVsIG5hbWU9Im91dCIKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBPVVRfVkFMVUUgPSAxOworCisJLyoqCisJICogVGhlICc8ZW0+PGI+SW5vdXQ8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiAnPGVtPjxiPklub3V0PC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdCBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNJTk9VVAorCSAqIEBtb2RlbCBuYW1lPSJpbm91dCIKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBJTk9VVF9WQUxVRSA9IDI7CisKKwkvKioKKwkgKiBBbiBhcnJheSBvZiBhbGwgdGhlICc8ZW0+PGI+RGF0YSBGbG93IERpcmVjdGlvbiBLaW5kPC9iPjwvZW0+JyBlbnVtZXJhdG9ycy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIHN0YXRpYyBmaW5hbCBEYXRhRmxvd0RpcmVjdGlvbktpbmRbXSBWQUxVRVNfQVJSQVkgPQorCQkJbmV3IERhdGFGbG93RGlyZWN0aW9uS2luZFtdIHsKKwkJCUlOLAorCQkJT1VULAorCQkJSU5PVVQsCisJCX07CisKKwkvKioKKwkgKiBBIHB1YmxpYyByZWFkLW9ubHkgbGlzdCBvZiBhbGwgdGhlICc8ZW0+PGI+RGF0YSBGbG93IERpcmVjdGlvbiBLaW5kPC9iPjwvZW0+JyBlbnVtZXJhdG9ycy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIExpc3Q8RGF0YUZsb3dEaXJlY3Rpb25LaW5kPiBWQUxVRVMgPSBDb2xsZWN0aW9ucy51bm1vZGlmaWFibGVMaXN0KEFycmF5cy5hc0xpc3QoVkFMVUVTX0FSUkFZKSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSAnPGVtPjxiPkRhdGEgRmxvdyBEaXJlY3Rpb24gS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbGl0ZXJhbCB2YWx1ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIERhdGFGbG93RGlyZWN0aW9uS2luZCBnZXQoU3RyaW5nIGxpdGVyYWwpIHsKKwkJZm9yIChpbnQgaSA9IDA7IGkgPCBWQUxVRVNfQVJSQVkubGVuZ3RoOyArK2kpIHsKKwkJCURhdGFGbG93RGlyZWN0aW9uS2luZCByZXN1bHQgPSBWQUxVRVNfQVJSQVlbaV07CisJCQlpZiAocmVzdWx0LnRvU3RyaW5nKCkuZXF1YWxzKGxpdGVyYWwpKSB7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJfQorCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSAnPGVtPjxiPkRhdGEgRmxvdyBEaXJlY3Rpb24gS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIERhdGFGbG93RGlyZWN0aW9uS2luZCBnZXRCeU5hbWUoU3RyaW5nIG5hbWUpIHsKKwkJZm9yIChpbnQgaSA9IDA7IGkgPCBWQUxVRVNfQVJSQVkubGVuZ3RoOyArK2kpIHsKKwkJCURhdGFGbG93RGlyZWN0aW9uS2luZCByZXN1bHQgPSBWQUxVRVNfQVJSQVlbaV07CisJCQlpZiAocmVzdWx0LmdldE5hbWUoKS5lcXVhbHMobmFtZSkpIHsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQl9CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlICc8ZW0+PGI+RGF0YSBGbG93IERpcmVjdGlvbiBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBpbnRlZ2VyIHZhbHVlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgRGF0YUZsb3dEaXJlY3Rpb25LaW5kIGdldChpbnQgdmFsdWUpIHsKKwkJc3dpdGNoICh2YWx1ZSkgeworCQkJY2FzZSBJTl9WQUxVRTogcmV0dXJuIElOOworCQkJY2FzZSBPVVRfVkFMVUU6IHJldHVybiBPVVQ7CisJCQljYXNlIElOT1VUX1ZBTFVFOiByZXR1cm4gSU5PVVQ7CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBmaW5hbCBpbnQgdmFsdWU7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIGZpbmFsIFN0cmluZyBuYW1lOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBmaW5hbCBTdHJpbmcgbGl0ZXJhbDsKKworCS8qKgorCSAqIE9ubHkgdGhpcyBjbGFzcyBjYW4gY29uc3RydWN0IGluc3RhbmNlcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIERhdGFGbG93RGlyZWN0aW9uS2luZChpbnQgdmFsdWUsIFN0cmluZyBuYW1lLCBTdHJpbmcgbGl0ZXJhbCkgeworCQl0aGlzLnZhbHVlID0gdmFsdWU7CisJCXRoaXMubmFtZSA9IG5hbWU7CisJCXRoaXMubGl0ZXJhbCA9IGxpdGVyYWw7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIGludCBnZXRWYWx1ZSgpIHsKKwkgIHJldHVybiB2YWx1ZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3RyaW5nIGdldE5hbWUoKSB7CisJICByZXR1cm4gbmFtZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3RyaW5nIGdldExpdGVyYWwoKSB7CisJICByZXR1cm4gbGl0ZXJhbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBsaXRlcmFsIHZhbHVlIG9mIHRoZSBlbnVtZXJhdG9yLCB3aGljaCBpcyBpdHMgc3RyaW5nIHJlcHJlc2VudGF0aW9uLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CisJCXJldHVybiBsaXRlcmFsOworCX0KKworfSAvLyBEYXRhRmxvd0RpcmVjdGlvbktpbmQKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGF0YUZsb3dQb3J0LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDI1ZWQxZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0RhdGFGbG93UG9ydC5qYXZhCkBAIC0wLDAgKzEsNzggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5EYXRhIEZsb3cgUG9ydDwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGF0YUZsb3dQb3J0I2dldERpcmVjdGlvbiA8ZW0+RGlyZWN0aW9uPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGF0YUZsb3dQb3J0I2dldEJ1ZmZlclNpemUgPGVtPkJ1ZmZlciBTaXplPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0RGF0YUZsb3dQb3J0KCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIERhdGFGbG93UG9ydCBleHRlbmRzIFBvcnQgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkRpcmVjdGlvbjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIFRoZSBsaXRlcmFscyBhcmUgZnJvbSB0aGUgZW51bWVyYXRpb24ge0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EYXRhRmxvd0RpcmVjdGlvbktpbmR9LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+RGlyZWN0aW9uPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5EaXJlY3Rpb248L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRhdGFGbG93RGlyZWN0aW9uS2luZAorCSAqIEBzZWUgI3NldERpcmVjdGlvbihEYXRhRmxvd0RpcmVjdGlvbktpbmQpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0RGF0YUZsb3dQb3J0X0RpcmVjdGlvbigpCisJICogQG1vZGVsIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRGF0YUZsb3dEaXJlY3Rpb25LaW5kIGdldERpcmVjdGlvbigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRhdGFGbG93UG9ydCNnZXREaXJlY3Rpb24gPGVtPkRpcmVjdGlvbjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+RGlyZWN0aW9uPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EYXRhRmxvd0RpcmVjdGlvbktpbmQKKwkgKiBAc2VlICNnZXREaXJlY3Rpb24oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldERpcmVjdGlvbihEYXRhRmxvd0RpcmVjdGlvbktpbmQgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QnVmZmVyIFNpemU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyA8Y29kZT4iMCI8L2NvZGU+LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+QnVmZmVyIFNpemU8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkJ1ZmZlciBTaXplPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRCdWZmZXJTaXplKGludCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXREYXRhRmxvd1BvcnRfQnVmZmVyU2l6ZSgpCisJICogQG1vZGVsIGRlZmF1bHQ9IjAiIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS51bWwyLnR5cGVzLkludGVnZXIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IGdldEJ1ZmZlclNpemUoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EYXRhRmxvd1BvcnQjZ2V0QnVmZmVyU2l6ZSA8ZW0+QnVmZmVyIFNpemU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkJ1ZmZlciBTaXplPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRCdWZmZXJTaXplKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRCdWZmZXJTaXplKGludCB2YWx1ZSk7CisKK30gLy8gRGF0YUZsb3dQb3J0CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9EZXBsb3ltZW50UGxhbi5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGVwbG95bWVudFBsYW4uamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMjc4MmUxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRGVwbG95bWVudFBsYW4uamF2YQpAQCAtMCwwICsxLDc2IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5JbnN0YW5jZVNwZWNpZmljYXRpb247CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkRlcGxveW1lbnQgUGxhbjwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGVwbG95bWVudFBsYW4jZ2V0QmFzZV9QYWNrYWdlIDxlbT5CYXNlIFBhY2thZ2U8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EZXBsb3ltZW50UGxhbiNnZXRNYWluSW5zdGFuY2UgPGVtPk1haW4gSW5zdGFuY2U8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXREZXBsb3ltZW50UGxhbigpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBEZXBsb3ltZW50UGxhbiBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkJhc2UgUGFja2FnZTwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+QmFzZSBQYWNrYWdlPC9lbT4nIHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5CYXNlIFBhY2thZ2U8L2VtPicgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldEJhc2VfUGFja2FnZShvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldERlcGxveW1lbnRQbGFuX0Jhc2VfUGFja2FnZSgpCisJICogQG1vZGVsIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJb3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZSBnZXRCYXNlX1BhY2thZ2UoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EZXBsb3ltZW50UGxhbiNnZXRCYXNlX1BhY2thZ2UgPGVtPkJhc2UgUGFja2FnZTwvZW0+fScgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+QmFzZSBQYWNrYWdlPC9lbT4nIHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRCYXNlX1BhY2thZ2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEJhc2VfUGFja2FnZShvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlIHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPk1haW4gSW5zdGFuY2U8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPk1haW4gSW5zdGFuY2U8L2VtPicgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPk1haW4gSW5zdGFuY2U8L2VtPicgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldE1haW5JbnN0YW5jZShJbnN0YW5jZVNwZWNpZmljYXRpb24pCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0RGVwbG95bWVudFBsYW5fTWFpbkluc3RhbmNlKCkKKwkgKiBAbW9kZWwgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlJbnN0YW5jZVNwZWNpZmljYXRpb24gZ2V0TWFpbkluc3RhbmNlKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGVwbG95bWVudFBsYW4jZ2V0TWFpbkluc3RhbmNlIDxlbT5NYWluIEluc3RhbmNlPC9lbT59JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5NYWluIEluc3RhbmNlPC9lbT4nIHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRNYWluSW5zdGFuY2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldE1haW5JbnN0YW5jZShJbnN0YW5jZVNwZWNpZmljYXRpb24gdmFsdWUpOworCit9IC8vIERlcGxveW1lbnRQbGFuCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0VuZ2luZVN5c3RlbS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRmZmQ0NGUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbmdpbmVTeXN0ZW0uamF2YQpAQCAtMCwwICsxLDE4MiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkVuZ2luZSBTeXN0ZW08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPCEtLSBiZWdpbi1tb2RlbC1kb2MgLS0+CisgKiBUaGlzIGlzIHRoZSBtb3Rvcml6YXRpb24gc3lzdGVtIGZvY3VzZWQgaW4gdGhlIGVuZ2luZSBvZiBhIHJvYm90aWMgdmVoaWNsZS4KKyAqIDwhLS0gZW5kLW1vZGVsLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRW5naW5lU3lzdGVtI2dldFZlaGljbGVUcmFjdGlvbiA8ZW0+VmVoaWNsZSBUcmFjdGlvbjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkVuZ2luZVN5c3RlbSNnZXRNYXhFbmdpbmVGb3JjZSA8ZW0+TWF4IEVuZ2luZSBGb3JjZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkVuZ2luZVN5c3RlbSNnZXRNYXhCcmVha2luZ0ZvcmNlIDxlbT5NYXggQnJlYWtpbmcgRm9yY2U8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FbmdpbmVTeXN0ZW0jZ2V0TWF4QWxsb3dlZFN0ZWVyaW5nIDxlbT5NYXggQWxsb3dlZCBTdGVlcmluZzwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkVuZ2luZVN5c3RlbSNnZXRNYXhBbGxvd2VkVmVsb2NpdHkgPGVtPk1heCBBbGxvd2VkIFZlbG9jaXR5PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRW5naW5lU3lzdGVtI2dldEdlYXJfcmF0aW9uIDxlbT5HZWFyIHJhdGlvbjwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldEVuZ2luZVN5c3RlbSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBFbmdpbmVTeXN0ZW0gZXh0ZW5kcyBBY3R1YXRvclN5c3RlbSB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VmVoaWNsZSBUcmFjdGlvbjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+VmVoaWNsZSBUcmFjdGlvbjwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+VmVoaWNsZSBUcmFjdGlvbjwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0VmVoaWNsZVRyYWN0aW9uKFN0cmluZykKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRFbmdpbmVTeXN0ZW1fVmVoaWNsZVRyYWN0aW9uKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnVtbDIudHlwZXMuU3RyaW5nIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCVN0cmluZyBnZXRWZWhpY2xlVHJhY3Rpb24oKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FbmdpbmVTeXN0ZW0jZ2V0VmVoaWNsZVRyYWN0aW9uIDxlbT5WZWhpY2xlIFRyYWN0aW9uPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5WZWhpY2xlIFRyYWN0aW9uPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRWZWhpY2xlVHJhY3Rpb24oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFZlaGljbGVUcmFjdGlvbihTdHJpbmcgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TWF4IEVuZ2luZSBGb3JjZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+TWF4IEVuZ2luZSBGb3JjZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+TWF4IEVuZ2luZSBGb3JjZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0TWF4RW5naW5lRm9yY2UoRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRFbmdpbmVTeXN0ZW1fTWF4RW5naW5lRm9yY2UoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0TWF4RW5naW5lRm9yY2UoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FbmdpbmVTeXN0ZW0jZ2V0TWF4RW5naW5lRm9yY2UgPGVtPk1heCBFbmdpbmUgRm9yY2U8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPk1heCBFbmdpbmUgRm9yY2U8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldE1heEVuZ2luZUZvcmNlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRNYXhFbmdpbmVGb3JjZShPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TWF4IEJyZWFraW5nIEZvcmNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5NYXggQnJlYWtpbmcgRm9yY2U8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPk1heCBCcmVha2luZyBGb3JjZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0TWF4QnJlYWtpbmdGb3JjZShGbG9hdDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldEVuZ2luZVN5c3RlbV9NYXhCcmVha2luZ0ZvcmNlKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldE1heEJyZWFraW5nRm9yY2UoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FbmdpbmVTeXN0ZW0jZ2V0TWF4QnJlYWtpbmdGb3JjZSA8ZW0+TWF4IEJyZWFraW5nIEZvcmNlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5NYXggQnJlYWtpbmcgRm9yY2U8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldE1heEJyZWFraW5nRm9yY2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldE1heEJyZWFraW5nRm9yY2UoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPk1heCBBbGxvd2VkIFN0ZWVyaW5nPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5NYXggQWxsb3dlZCBTdGVlcmluZzwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+TWF4IEFsbG93ZWQgU3RlZXJpbmc8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldE1heEFsbG93ZWRTdGVlcmluZyhGbG9hdDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldEVuZ2luZVN5c3RlbV9NYXhBbGxvd2VkU3RlZXJpbmcoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0TWF4QWxsb3dlZFN0ZWVyaW5nKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRW5naW5lU3lzdGVtI2dldE1heEFsbG93ZWRTdGVlcmluZyA8ZW0+TWF4IEFsbG93ZWQgU3RlZXJpbmc8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPk1heCBBbGxvd2VkIFN0ZWVyaW5nPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRNYXhBbGxvd2VkU3RlZXJpbmcoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldE1heEFsbG93ZWRTdGVlcmluZyhPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TWF4IEFsbG93ZWQgVmVsb2NpdHk8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPk1heCBBbGxvd2VkIFZlbG9jaXR5PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5NYXggQWxsb3dlZCBWZWxvY2l0eTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0TWF4QWxsb3dlZFZlbG9jaXR5KEZsb2F0MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0RW5naW5lU3lzdGVtX01heEFsbG93ZWRWZWxvY2l0eSgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRNYXhBbGxvd2VkVmVsb2NpdHkoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FbmdpbmVTeXN0ZW0jZ2V0TWF4QWxsb3dlZFZlbG9jaXR5IDxlbT5NYXggQWxsb3dlZCBWZWxvY2l0eTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TWF4IEFsbG93ZWQgVmVsb2NpdHk8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldE1heEFsbG93ZWRWZWxvY2l0eSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0TWF4QWxsb3dlZFZlbG9jaXR5KE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5HZWFyIHJhdGlvbjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+R2VhciByYXRpb248L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkdlYXIgcmF0aW9uPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRHZWFyX3JhdGlvbihGbG9hdDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldEVuZ2luZVN5c3RlbV9HZWFyX3JhdGlvbigpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRHZWFyX3JhdGlvbigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkVuZ2luZVN5c3RlbSNnZXRHZWFyX3JhdGlvbiA8ZW0+R2VhciByYXRpb248L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkdlYXIgcmF0aW9uPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRHZWFyX3JhdGlvbigpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0R2Vhcl9yYXRpb24oT2JqZWN0IHZhbHVlKTsKKworfSAvLyBFbmdpbmVTeXN0ZW0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0Vudmlyb25tZW50LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJjODJhYmMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FbnZpcm9ubWVudC5qYXZhCkBAIC0wLDAgKzEsNTEgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkVudmlyb25tZW50PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FbnZpcm9ubWVudCNnZXRCYXNlX0NsYXNzIDxlbT5CYXNlIENsYXNzPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0RW52aXJvbm1lbnQoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgRW52aXJvbm1lbnQgZXh0ZW5kcyBFT2JqZWN0IHsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkJhc2UgQ2xhc3M8L2VtPicgcmVmZXJlbmNlIGlzbid0IGNsZWFyLAorCSAqIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+QmFzZSBDbGFzczwvZW0+JyByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRFbnZpcm9ubWVudF9CYXNlX0NsYXNzKCkKKwkgKiBAbW9kZWwgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyBnZXRCYXNlX0NsYXNzKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRW52aXJvbm1lbnQjZ2V0QmFzZV9DbGFzcyA8ZW0+QmFzZSBDbGFzczwvZW0+fScgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+QmFzZSBDbGFzczwvZW0+JyByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0QmFzZV9DbGFzcygpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyB2YWx1ZSk7Cit9IC8vIEVudmlyb25tZW50CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FeHRlcm5hbExpYnJhcnkuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0V4dGVybmFsTGlicmFyeS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY3ZmIzNmYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9FeHRlcm5hbExpYnJhcnkuamF2YQpAQCAtMCwwICsxLDEwMyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuSW50ZXJmYWNlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5FeHRlcm5hbCBMaWJyYXJ5PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FeHRlcm5hbExpYnJhcnkjZ2V0TGliUGF0aCA8ZW0+TGliIFBhdGg8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FeHRlcm5hbExpYnJhcnkjZ2V0TGliRmlsZUZvcm1hdCA8ZW0+TGliIEZpbGUgRm9ybWF0PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRXh0ZXJuYWxMaWJyYXJ5I2dldEJhc2VfSW50ZXJmYWNlIDxlbT5CYXNlIEludGVyZmFjZTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldEV4dGVybmFsTGlicmFyeSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBFeHRlcm5hbExpYnJhcnkgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5MaWIgUGF0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+TGliIFBhdGg8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkxpYiBQYXRoPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRMaWJQYXRoKFN0cmluZykKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRFeHRlcm5hbExpYnJhcnlfTGliUGF0aCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS51bWwyLnR5cGVzLlN0cmluZyIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTdHJpbmcgZ2V0TGliUGF0aCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkV4dGVybmFsTGlicmFyeSNnZXRMaWJQYXRoIDxlbT5MaWIgUGF0aDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TGliIFBhdGg8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldExpYlBhdGgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldExpYlBhdGgoU3RyaW5nIHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkxpYiBGaWxlIEZvcm1hdDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIGlzIDxjb2RlPiJlbGYiPC9jb2RlPi4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkxpYiBGaWxlIEZvcm1hdDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+TGliIEZpbGUgRm9ybWF0PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRMaWJGaWxlRm9ybWF0KFN0cmluZykKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRFeHRlcm5hbExpYnJhcnlfTGliRmlsZUZvcm1hdCgpCisJICogQG1vZGVsIGRlZmF1bHQ9ImVsZiIgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnVtbDIudHlwZXMuU3RyaW5nIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCVN0cmluZyBnZXRMaWJGaWxlRm9ybWF0KCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRXh0ZXJuYWxMaWJyYXJ5I2dldExpYkZpbGVGb3JtYXQgPGVtPkxpYiBGaWxlIEZvcm1hdDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TGliIEZpbGUgRm9ybWF0PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRMaWJGaWxlRm9ybWF0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRMaWJGaWxlRm9ybWF0KFN0cmluZyB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CYXNlIEludGVyZmFjZTwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+QmFzZSBJbnRlcmZhY2U8L2VtPicgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgSW50ZXJmYWNlPC9lbT4nIHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRCYXNlX0ludGVyZmFjZShJbnRlcmZhY2UpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0RXh0ZXJuYWxMaWJyYXJ5X0Jhc2VfSW50ZXJmYWNlKCkKKwkgKiBAbW9kZWwgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlJbnRlcmZhY2UgZ2V0QmFzZV9JbnRlcmZhY2UoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FeHRlcm5hbExpYnJhcnkjZ2V0QmFzZV9JbnRlcmZhY2UgPGVtPkJhc2UgSW50ZXJmYWNlPC9lbT59JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5CYXNlIEludGVyZmFjZTwvZW0+JyByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0QmFzZV9JbnRlcmZhY2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEJhc2VfSW50ZXJmYWNlKEludGVyZmFjZSB2YWx1ZSk7CisKK30gLy8gRXh0ZXJuYWxMaWJyYXJ5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9GbG9vci5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMGY5NjNiCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvRmxvb3IuamF2YQpAQCAtMCwwICsxLDE3IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Rmxvb3I8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldEZsb29yKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIEZsb29yIGV4dGVuZHMgR3JvdW5kIHsKK30gLy8gRmxvb3IKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR1BTU3lzdGVtLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjIzMTQ3NgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dQU1N5c3RlbS5qYXZhCkBAIC0wLDAgKzEsNDkgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9pbnQzMjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+R1BTIFN5c3RlbTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuR1BTU3lzdGVtI2dldE9yaWdpblBvc2l0aW9uIDxlbT5PcmlnaW4gUG9zaXRpb248L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRHUFNTeXN0ZW0oKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgR1BTU3lzdGVtIGV4dGVuZHMgTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtIHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5PcmlnaW4gUG9zaXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPk9yaWdpbiBQb3NpdGlvbjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+T3JpZ2luIFBvc2l0aW9uPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRPcmlnaW5Qb3NpdGlvbihQb2ludDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldEdQU1N5c3RlbV9PcmlnaW5Qb3NpdGlvbigpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJUG9pbnQzMiBnZXRPcmlnaW5Qb3NpdGlvbigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkdQU1N5c3RlbSNnZXRPcmlnaW5Qb3NpdGlvbiA8ZW0+T3JpZ2luIFBvc2l0aW9uPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5PcmlnaW4gUG9zaXRpb248L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldE9yaWdpblBvc2l0aW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRPcmlnaW5Qb3NpdGlvbihQb2ludDMyIHZhbHVlKTsKKworfSAvLyBHUFNTeXN0ZW0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyYXNwaW5nSGFyZHdhcmUuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyYXNwaW5nSGFyZHdhcmUuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNzY4MmI0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3Jhc3BpbmdIYXJkd2FyZS5qYXZhCkBAIC0wLDAgKzEsMTcgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5HcmFzcGluZyBIYXJkd2FyZTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0R3Jhc3BpbmdIYXJkd2FyZSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBHcmFzcGluZ0hhcmR3YXJlIGV4dGVuZHMgQWN0dWF0b3JIYXJkd2FyZSB7Cit9IC8vIEdyYXNwaW5nSGFyZHdhcmUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyYXNwaW5nU3lzdGVtLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HcmFzcGluZ1N5c3RlbS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI0MTc1N2IKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HcmFzcGluZ1N5c3RlbS5qYXZhCkBAIC0wLDAgKzEsMjEgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5HcmFzcGluZyBTeXN0ZW08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPCEtLSBiZWdpbi1tb2RlbC1kb2MgLS0+CisgKiBTeXN0ZW0gb2YgYSByb2JvdGljIHBsYXRmb3JtIHdoaWNoIGNvcnJlc3BvbmQgd2l0aCB0aGUgc29mdHdhcmUgYW5kIGhhcmR3YXJlIG9mIHRoZSBtYW5pcHVsYXRpbmcgZWZmZWN0b3JzIG9mIHRoZSByb2JvdDogbWVjaGFuaWNhbCBmaW5nZXJzLCBtZWNoYW5pY2FsIGFybXMsIGdyYWJzIC4uLgorICogPCEtLSBlbmQtbW9kZWwtZG9jIC0tPgorICoKKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRHcmFzcGluZ1N5c3RlbSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBHcmFzcGluZ1N5c3RlbSBleHRlbmRzIEFjdHVhdG9yU3lzdGVtIHsKK30gLy8gR3Jhc3BpbmdTeXN0ZW0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3JvdW5kLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGRlYTQ1MAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0dyb3VuZC5qYXZhCkBAIC0wLDAgKzEsMTcgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Hcm91bmQ8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldEdyb3VuZCgpCisgKiBAbW9kZWwgYWJzdHJhY3Q9InRydWUiCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgR3JvdW5kIGV4dGVuZHMgU3VyZmFjZSB7Cit9IC8vIEdyb3VuZApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3lyb3Njb3BlLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9HeXJvc2NvcGUuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wNDZjOWMzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvR3lyb3Njb3BlLmphdmEKQEAgLTAsMCArMSwxNyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkd5cm9zY29wZTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0R3lyb3Njb3BlKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIEd5cm9zY29wZSBleHRlbmRzIFNlbnNvclN5c3RlbSB7Cit9IC8vIEd5cm9zY29wZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSGFyZHdhcmUuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0hhcmR3YXJlLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTRhZDk0YwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0hhcmR3YXJlLmphdmEKQEAgLTAsMCArMSwxNyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkhhcmR3YXJlPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRIYXJkd2FyZSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBIYXJkd2FyZSBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0geworfSAvLyBIYXJkd2FyZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSHVtYW4uamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmFmZjlmOAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0h1bWFuLmphdmEKQEAgLTAsMCArMSwxNyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkh1bWFuPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRIdW1hbigpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBIdW1hbiBleHRlbmRzIEFnZW50IHsKK30gLy8gSHVtYW4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0ltYWdlU2Vuc29yU3lzdGVtLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9JbWFnZVNlbnNvclN5c3RlbS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjllNDFkNzUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9JbWFnZVNlbnNvclN5c3RlbS5qYXZhCkBAIC0wLDAgKzEsMTcgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5JbWFnZSBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRJbWFnZVNlbnNvclN5c3RlbSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBJbWFnZVNlbnNvclN5c3RlbSBleHRlbmRzIFNlbnNvclN5c3RlbSB7Cit9IC8vIEltYWdlU2Vuc29yU3lzdGVtCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9JbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0uamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ODg2ZDM3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0uamF2YQpAQCAtMCwwICsxLDE3IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SW5lcnRpYWwgTWVhc3VyZW1lbnQgVW5pdCBTeXN0ZW08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldEluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIEluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtIGV4dGVuZHMgU2Vuc29yU3lzdGVtIHsKK30gLy8gSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0luZXJ0aWFsTmF2aWdhdGlvblN5c3RlbS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzc0ZjgxNgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0luZXJ0aWFsTmF2aWdhdGlvblN5c3RlbS5qYXZhCkBAIC0wLDAgKzEsMTcgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5JbmVydGlhbCBOYXZpZ2F0aW9uIFN5c3RlbTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0SW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIEluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbSBleHRlbmRzIEdQU1N5c3RlbSB7Cit9IC8vIEluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9JbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW0uamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNDZhOGMyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtLmphdmEKQEAgLTAsMCArMSwxNyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkluZnJhIFJlZCBQcm94aW1ldHJ5IFN5c3RlbTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0SW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIEluZnJhUmVkUHJveGltZXRyeVN5c3RlbSBleHRlbmRzIE9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbSB7Cit9IC8vIEluZnJhUmVkUHJveGltZXRyeVN5c3RlbQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSm9pbnQuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0pvaW50LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWRjMWMzNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0pvaW50LmphdmEKQEAgLTAsMCArMSw1MCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuQ29ubmVjdG9yOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Kb2ludDwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSm9pbnQjZ2V0QmFzZV9Db25uZWN0b3IgPGVtPkJhc2UgQ29ubmVjdG9yPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0Sm9pbnQoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgSm9pbnQgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CYXNlIENvbm5lY3RvcjwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+QmFzZSBDb25uZWN0b3I8L2VtPicgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgQ29ubmVjdG9yPC9lbT4nIHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRCYXNlX0Nvbm5lY3RvcihDb25uZWN0b3IpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0Sm9pbnRfQmFzZV9Db25uZWN0b3IoKQorCSAqIEBtb2RlbCByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUNvbm5lY3RvciBnZXRCYXNlX0Nvbm5lY3RvcigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkpvaW50I2dldEJhc2VfQ29ubmVjdG9yIDxlbT5CYXNlIENvbm5lY3RvcjwvZW0+fScgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+QmFzZSBDb25uZWN0b3I8L2VtPicgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldEJhc2VfQ29ubmVjdG9yKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRCYXNlX0Nvbm5lY3RvcihDb25uZWN0b3IgdmFsdWUpOworCit9IC8vIEpvaW50CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Kb3lzdGljTmF2aWdhdGlvblN5c3RlbS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSm95c3RpY05hdmlnYXRpb25TeXN0ZW0uamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40OTE3N2YxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvSm95c3RpY05hdmlnYXRpb25TeXN0ZW0uamF2YQpAQCAtMCwwICsxLDE3IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Sm95c3RpYyBOYXZpZ2F0aW9uIFN5c3RlbTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0Sm95c3RpY05hdmlnYXRpb25TeXN0ZW0oKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgSm95c3RpY05hdmlnYXRpb25TeXN0ZW0gZXh0ZW5kcyBOYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbSB7Cit9IC8vIEpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MYW5kU3VyZmFjZS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kZWRjNzA1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGFuZFN1cmZhY2UuamF2YQpAQCAtMCwwICsxLDE3IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TGFuZCBTdXJmYWNlPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRMYW5kU3VyZmFjZSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBMYW5kU3VyZmFjZSBleHRlbmRzIEdyb3VuZCB7Cit9IC8vIExhbmRTdXJmYWNlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MZWcuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xlZy5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdjMDJhOTQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MZWcuamF2YQpAQCAtMCwwICsxLDE3IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TGVnPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRMZWcoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgTGVnIGV4dGVuZHMgTG9jb21vdGlvbkhhcmR3YXJlLCBNZWNoYW5pY2FsTGlua2FnZSB7Cit9IC8vIExlZwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGVnU3lzdGVtLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MZWdTeXN0ZW0uamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lNTQ4MzMyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGVnU3lzdGVtLmphdmEKQEAgLTAsMCArMSwxNyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxlZyBTeXN0ZW08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldExlZ1N5c3RlbSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBMZWdTeXN0ZW0gZXh0ZW5kcyBMb2NvbW90aW9uU3lzdGVtIHsKK30gLy8gTGVnU3lzdGVtCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9MaWRhclN5c3RlbS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kOWMzZGU4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTGlkYXJTeXN0ZW0uamF2YQpAQCAtMCwwICsxLDMzNyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxpZGFyIFN5c3RlbTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW0jZ2V0TmJMYXllcnMgPGVtPk5iIExheWVyczwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxpZGFyU3lzdGVtI2dldExheWVyQW5nbGVNaW4gPGVtPkxheWVyIEFuZ2xlIE1pbjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxpZGFyU3lzdGVtI2dldExheWVyQW5nbGVTdGVwIDxlbT5MYXllciBBbmdsZSBTdGVwPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW0jZ2V0Tm9pc2UgPGVtPk5vaXNlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW0jZ2V0U2lnbWFOb2lzZSA8ZW0+U2lnbWEgTm9pc2U8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MaWRhclN5c3RlbSNnZXRBbmdsZV9taW4gPGVtPkFuZ2xlIG1pbjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxpZGFyU3lzdGVtI2dldEFuZ2xlX21heCA8ZW0+QW5nbGUgbWF4PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW0jZ2V0VGltZV9pbmNyZW1lbnQgPGVtPlRpbWUgaW5jcmVtZW50PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW0jZ2V0U2Nhbl90aW1lIDxlbT5TY2FuIHRpbWU8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MaWRhclN5c3RlbSNnZXRSYW5nZV9taW4gPGVtPlJhbmdlIG1pbjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxpZGFyU3lzdGVtI2dldFJhbmdlX21heCA8ZW0+UmFuZ2UgbWF4PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW0jZ2V0TmJSYXlzIDxlbT5OYiBSYXlzPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0TGlkYXJTeXN0ZW0oKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgTGlkYXJTeXN0ZW0gZXh0ZW5kcyBPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0sIE9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtIHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5OYiBMYXllcnM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPk5iIExheWVyczwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+TmIgTGF5ZXJzPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXROYkxheWVycyhVSW50MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0TGlkYXJTeXN0ZW1fTmJMYXllcnMoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXROYkxheWVycygpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxpZGFyU3lzdGVtI2dldE5iTGF5ZXJzIDxlbT5OYiBMYXllcnM8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPk5iIExheWVyczwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0TmJMYXllcnMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldE5iTGF5ZXJzKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5MYXllciBBbmdsZSBNaW48L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkxheWVyIEFuZ2xlIE1pbjwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+TGF5ZXIgQW5nbGUgTWluPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRMYXllckFuZ2xlTWluKEZsb2F0MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0TGlkYXJTeXN0ZW1fTGF5ZXJBbmdsZU1pbigpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRMYXllckFuZ2xlTWluKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW0jZ2V0TGF5ZXJBbmdsZU1pbiA8ZW0+TGF5ZXIgQW5nbGUgTWluPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5MYXllciBBbmdsZSBNaW48L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldExheWVyQW5nbGVNaW4oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldExheWVyQW5nbGVNaW4oT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkxheWVyIEFuZ2xlIFN0ZXA8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkxheWVyIEFuZ2xlIFN0ZXA8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkxheWVyIEFuZ2xlIFN0ZXA8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldExheWVyQW5nbGVTdGVwKEZsb2F0MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0TGlkYXJTeXN0ZW1fTGF5ZXJBbmdsZVN0ZXAoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0TGF5ZXJBbmdsZVN0ZXAoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MaWRhclN5c3RlbSNnZXRMYXllckFuZ2xlU3RlcCA8ZW0+TGF5ZXIgQW5nbGUgU3RlcDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TGF5ZXIgQW5nbGUgU3RlcDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0TGF5ZXJBbmdsZVN0ZXAoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldExheWVyQW5nbGVTdGVwKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Ob2lzZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+Tm9pc2U8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLAorCSAqIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+Tm9pc2U8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldE5vaXNlKEJvb2wpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0TGlkYXJTeXN0ZW1fTm9pc2UoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuQm9vbCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0Tm9pc2UoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MaWRhclN5c3RlbSNnZXROb2lzZSA8ZW0+Tm9pc2U8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPk5vaXNlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXROb2lzZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0Tm9pc2UoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlNpZ21hIE5vaXNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5TaWdtYSBOb2lzZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+U2lnbWEgTm9pc2U8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFNpZ21hTm9pc2UoRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRMaWRhclN5c3RlbV9TaWdtYU5vaXNlKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFNpZ21hTm9pc2UoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MaWRhclN5c3RlbSNnZXRTaWdtYU5vaXNlIDxlbT5TaWdtYSBOb2lzZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+U2lnbWEgTm9pc2U8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFNpZ21hTm9pc2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFNpZ21hTm9pc2UoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkFuZ2xlIG1pbjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+QW5nbGUgbWluPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5BbmdsZSBtaW48L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldEFuZ2xlX21pbihGbG9hdDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldExpZGFyU3lzdGVtX0FuZ2xlX21pbigpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRBbmdsZV9taW4oKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MaWRhclN5c3RlbSNnZXRBbmdsZV9taW4gPGVtPkFuZ2xlIG1pbjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+QW5nbGUgbWluPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRBbmdsZV9taW4oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEFuZ2xlX21pbihPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QW5nbGUgbWF4PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5BbmdsZSBtYXg8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkFuZ2xlIG1heDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0QW5nbGVfbWF4KEZsb2F0MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0TGlkYXJTeXN0ZW1fQW5nbGVfbWF4KCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldEFuZ2xlX21heCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxpZGFyU3lzdGVtI2dldEFuZ2xlX21heCA8ZW0+QW5nbGUgbWF4PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5BbmdsZSBtYXg8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldEFuZ2xlX21heCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0QW5nbGVfbWF4KE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5UaW1lIGluY3JlbWVudDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+VGltZSBpbmNyZW1lbnQ8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlRpbWUgaW5jcmVtZW50PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRUaW1lX2luY3JlbWVudChGbG9hdDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldExpZGFyU3lzdGVtX1RpbWVfaW5jcmVtZW50KCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiAgICAgICAgYW5ub3RhdGlvbj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCBvcmlnaW5hbE5hbWU9J3RpbWVfaW5jcmVtZW50ICciCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRUaW1lX2luY3JlbWVudCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxpZGFyU3lzdGVtI2dldFRpbWVfaW5jcmVtZW50IDxlbT5UaW1lIGluY3JlbWVudDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+VGltZSBpbmNyZW1lbnQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFRpbWVfaW5jcmVtZW50KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRUaW1lX2luY3JlbWVudChPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+U2NhbiB0aW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5TY2FuIHRpbWU8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlNjYW4gdGltZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0U2Nhbl90aW1lKEZsb2F0MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0TGlkYXJTeXN0ZW1fU2Nhbl90aW1lKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiAgICAgICAgYW5ub3RhdGlvbj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCBvcmlnaW5hbE5hbWU9J3NjYW5fdGltZSAgJyIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFNjYW5fdGltZSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxpZGFyU3lzdGVtI2dldFNjYW5fdGltZSA8ZW0+U2NhbiB0aW1lPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5TY2FuIHRpbWU8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFNjYW5fdGltZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0U2Nhbl90aW1lKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5SYW5nZSBtaW48L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlJhbmdlIG1pbjwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+UmFuZ2UgbWluPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRSYW5nZV9taW4oRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRMaWRhclN5c3RlbV9SYW5nZV9taW4oKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0UmFuZ2VfbWluKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW0jZ2V0UmFuZ2VfbWluIDxlbT5SYW5nZSBtaW48L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlJhbmdlIG1pbjwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0UmFuZ2VfbWluKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRSYW5nZV9taW4oT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlJhbmdlIG1heDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+UmFuZ2UgbWF4PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5SYW5nZSBtYXg8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFJhbmdlX21heChGbG9hdDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldExpZGFyU3lzdGVtX1JhbmdlX21heCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRSYW5nZV9tYXgoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MaWRhclN5c3RlbSNnZXRSYW5nZV9tYXggPGVtPlJhbmdlIG1heDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+UmFuZ2UgbWF4PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRSYW5nZV9tYXgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFJhbmdlX21heChPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TmIgUmF5czwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+TmIgUmF5czwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+TmIgUmF5czwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0TmJSYXlzKFVJbnQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRMaWRhclN5c3RlbV9OYlJheXMoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXROYlJheXMoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MaWRhclN5c3RlbSNnZXROYlJheXMgPGVtPk5iIFJheXM8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPk5iIFJheXM8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldE5iUmF5cygpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0TmJSYXlzKE9iamVjdCB2YWx1ZSk7CisKK30gLy8gTGlkYXJTeXN0ZW0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xvY2FsaXphdGlvblNlbnNvclN5c3RlbS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDc1NTZkOQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xvY2FsaXphdGlvblNlbnNvclN5c3RlbS5qYXZhCkBAIC0wLDAgKzEsMTcgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Mb2NhbGl6YXRpb24gU2Vuc29yIFN5c3RlbTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIExvY2FsaXphdGlvblNlbnNvclN5c3RlbSBleHRlbmRzIFNlbnNvclN5c3RlbSB7Cit9IC8vIExvY2FsaXphdGlvblNlbnNvclN5c3RlbQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTG9jb21vdGlvbkhhcmR3YXJlLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NvbW90aW9uSGFyZHdhcmUuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44OThhYzA0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTG9jb21vdGlvbkhhcmR3YXJlLmphdmEKQEAgLTAsMCArMSwxNyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxvY29tb3Rpb24gSGFyZHdhcmU8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldExvY29tb3Rpb25IYXJkd2FyZSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBMb2NvbW90aW9uSGFyZHdhcmUgZXh0ZW5kcyBBY3R1YXRvckhhcmR3YXJlIHsKK30gLy8gTG9jb21vdGlvbkhhcmR3YXJlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NvbW90aW9uU3lzdGVtLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Mb2NvbW90aW9uU3lzdGVtLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTMxNTk0OQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML0xvY29tb3Rpb25TeXN0ZW0uamF2YQpAQCAtMCwwICsxLDIyIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TG9jb21vdGlvbiBTeXN0ZW08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPCEtLSBiZWdpbi1tb2RlbC1kb2MgLS0+CisgKiBNZWNoYW5pY2FsIGRldmljZSBhc3NvY2lhdGVkIHRvIGl0cyBEcml2ZXIgZm9yIG1vdmluZyBhIE1vYmlsZSBSb2JvdC4KKyAqIEl0IGlzIG9wZXJhdGVkIGJ5IGEgc291cmNlIG9mIGVuZXJneSwgdXN1YWxseSBpbiB0aGUgZm9ybSBvZiBhbiBlbGVjdHJpYyBjdXJyZW50LCBoeWRyYXVsaWMgZmx1aWQgcHJlc3N1cmUgb3IgcG5ldW1hdGljIHByZXNzdXJlLCBhbmQgY29udmVydHMgdGhhdCBlbmVyZ3kgaW50byBzb21lIGtpbmQgb2YgbW90aW9uIChtZWFuaW5nIHBvc2l0aW9uIG9mIGdyYXZpdHkgY2VudHJlIG9mIHRoZSBSb2JvdCB0aGF0IGlzIHVzaW5nIGl0IGhhcyBiZWVuIGNoYW5nZWQgc2lnbmlmaWNhdGl2ZWx5IHRocm91Z2ggdGltZSkuCisgKiA8IS0tIGVuZC1tb2RlbC1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldExvY29tb3Rpb25TeXN0ZW0oKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgTG9jb21vdGlvblN5c3RlbSBleHRlbmRzIEFjdHVhdG9yU3lzdGVtIHsKK30gLy8gTG9jb21vdGlvblN5c3RlbQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTWFuTWFjaGluZUludGVyZmFjZVN5c3RlbS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTWFuTWFjaGluZUludGVyZmFjZVN5c3RlbS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ3MTliMzQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9NYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtLmphdmEKQEAgLTAsMCArMSwxNyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk1hbiBNYWNoaW5lIEludGVyZmFjZSBTeXN0ZW08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldE1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0oKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgTWFuTWFjaGluZUludGVyZmFjZVN5c3RlbSBleHRlbmRzIEN5YmVyUGh5c2ljYWxTeXN0ZW0geworfSAvLyBNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9NYW5pcHVsYXRvci5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTWFuaXB1bGF0b3IuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ZDljN2Q5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTWFuaXB1bGF0b3IuamF2YQpAQCAtMCwwICsxLDE3IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TWFuaXB1bGF0b3I8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldE1hbmlwdWxhdG9yKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIE1hbmlwdWxhdG9yIGV4dGVuZHMgUm9ib3QgeworfSAvLyBNYW5pcHVsYXRvcgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTWVjaGFuaWNhbExpbmthZ2UuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML01lY2hhbmljYWxMaW5rYWdlLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTdhM2Y0YQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML01lY2hhbmljYWxMaW5rYWdlLmphdmEKQEAgLTAsMCArMSwxNyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk1lY2hhbmljYWwgTGlua2FnZTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0TWVjaGFuaWNhbExpbmthZ2UoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgTWVjaGFuaWNhbExpbmthZ2UgZXh0ZW5kcyBIYXJkd2FyZSB7Cit9IC8vIE1lY2hhbmljYWxMaW5rYWdlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Nb2JpbGVSb2JvdC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTW9iaWxlUm9ib3QuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMGUwMTFkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTW9iaWxlUm9ib3QuamF2YQpAQCAtMCwwICsxLDUxIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TW9iaWxlIFJvYm90PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Nb2JpbGVSb2JvdCNnZXRLaW5kIDxlbT5LaW5kPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0TW9iaWxlUm9ib3QoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgTW9iaWxlUm9ib3QgZXh0ZW5kcyBSb2JvdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+S2luZDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIFRoZSBsaXRlcmFscyBhcmUgZnJvbSB0aGUgZW51bWVyYXRpb24ge0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Nb2JpbGVSb2JvdEtpbmR9LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+S2luZDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+S2luZDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTW9iaWxlUm9ib3RLaW5kCisJICogQHNlZSAjc2V0S2luZChNb2JpbGVSb2JvdEtpbmQpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0TW9iaWxlUm9ib3RfS2luZCgpCisJICogQG1vZGVsIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJTW9iaWxlUm9ib3RLaW5kIGdldEtpbmQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Nb2JpbGVSb2JvdCNnZXRLaW5kIDxlbT5LaW5kPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5LaW5kPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Nb2JpbGVSb2JvdEtpbmQKKwkgKiBAc2VlICNnZXRLaW5kKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRLaW5kKE1vYmlsZVJvYm90S2luZCB2YWx1ZSk7CisKK30gLy8gTW9iaWxlUm9ib3QKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML01vYmlsZVJvYm90S2luZC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTW9iaWxlUm9ib3RLaW5kLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGM0NzgwMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML01vYmlsZVJvYm90S2luZC5qYXZhCkBAIC0wLDAgKzEsMzM2IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKK2ltcG9ydCBqYXZhLnV0aWwuQXJyYXlzOworaW1wb3J0IGphdmEudXRpbC5Db2xsZWN0aW9uczsKK2ltcG9ydCBqYXZhLnV0aWwuTGlzdDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FbnVtZXJhdG9yOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBsaXRlcmFscyBvZiB0aGUgZW51bWVyYXRpb24gJzxlbT48Yj5Nb2JpbGUgUm9ib3QgS2luZDwvYj48L2VtPicsCisgKiBhbmQgdXRpbGl0eSBtZXRob2RzIGZvciB3b3JraW5nIHdpdGggdGhlbS4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0TW9iaWxlUm9ib3RLaW5kKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgZW51bSBNb2JpbGVSb2JvdEtpbmQgaW1wbGVtZW50cyBFbnVtZXJhdG9yIHsKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5BaXIgVmVoaWNsZTwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNBSVJfVkVISUNMRV9WQUxVRQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCUFJUl9WRUhJQ0xFKDAsICJBaXJWZWhpY2xlIiwgIkFpclZlaGljbGUiKSwKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPkh5YnJpZCBWZWhpY2xlPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI0hZQlJJRF9WRUhJQ0xFX1ZBTFVFCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJSFlCUklEX1ZFSElDTEUoMSwgIkh5YnJpZFZlaGljbGUiLCAiSHlicmlkVmVoaWNsZSIpLAorCisJLyoqCisJICogVGhlICc8ZW0+PGI+U3VyZmFjZSBWZWhpY2xlPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI1NVUkZBQ0VfVkVISUNMRV9WQUxVRQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCVNVUkZBQ0VfVkVISUNMRSgyLCAiU3VyZmFjZVZlaGljbGUiLCAiU3VyZmFjZVZlaGljbGUiKSwKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPlVuZGVyd2F0ZXIgVmVoaWNsZTwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNVTkRFUldBVEVSX1ZFSElDTEVfVkFMVUUKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlVTkRFUldBVEVSX1ZFSElDTEUoMywgIlVuZGVyd2F0ZXJWZWhpY2xlIiwgIlVuZGVyd2F0ZXJWZWhpY2xlIiksCisKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5DYXIgTGlrZSBWZWhpY2xlPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI0NBUl9MSUtFX1ZFSElDTEVfVkFMVUUKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlDQVJfTElLRV9WRUhJQ0xFKDQsICJDYXJMaWtlVmVoaWNsZSIsICJDYXJMaWtlVmVoaWNsZSIpLAorCisJLyoqCisJICogVGhlICc8ZW0+PGI+RGlmZmVyZW50aWFsIFZlaGljbGU8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjRElGRkVSRU5USUFMX1ZFSElDTEVfVkFMVUUKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlESUZGRVJFTlRJQUxfVkVISUNMRSg1LCAiRGlmZmVyZW50aWFsVmVoaWNsZSIsICJEaWZmZXJlbnRpYWxWZWhpY2xlIiksCisKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5MZWdnZWQgVmVoaWNsZTwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNMRUdHRURfVkVISUNMRV9WQUxVRQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCUxFR0dFRF9WRUhJQ0xFKDYsICJMZWdnZWRWZWhpY2xlIiwgIkxlZ2dlZFZlaGljbGUiKTsKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPkFpciBWZWhpY2xlPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgJzxlbT48Yj5BaXIgVmVoaWNsZTwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjQUlSX1ZFSElDTEUKKwkgKiBAbW9kZWwgbmFtZT0iQWlyVmVoaWNsZSIKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBBSVJfVkVISUNMRV9WQUxVRSA9IDA7CisKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5IeWJyaWQgVmVoaWNsZTwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mICc8ZW0+PGI+SHlicmlkIFZlaGljbGU8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0IGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI0hZQlJJRF9WRUhJQ0xFCisJICogQG1vZGVsIG5hbWU9Ikh5YnJpZFZlaGljbGUiCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgSFlCUklEX1ZFSElDTEVfVkFMVUUgPSAxOworCisJLyoqCisJICogVGhlICc8ZW0+PGI+U3VyZmFjZSBWZWhpY2xlPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgJzxlbT48Yj5TdXJmYWNlIFZlaGljbGU8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0IGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI1NVUkZBQ0VfVkVISUNMRQorCSAqIEBtb2RlbCBuYW1lPSJTdXJmYWNlVmVoaWNsZSIKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBTVVJGQUNFX1ZFSElDTEVfVkFMVUUgPSAyOworCisJLyoqCisJICogVGhlICc8ZW0+PGI+VW5kZXJ3YXRlciBWZWhpY2xlPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgJzxlbT48Yj5VbmRlcndhdGVyIFZlaGljbGU8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0IGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI1VOREVSV0FURVJfVkVISUNMRQorCSAqIEBtb2RlbCBuYW1lPSJVbmRlcndhdGVyVmVoaWNsZSIKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBVTkRFUldBVEVSX1ZFSElDTEVfVkFMVUUgPSAzOworCisJLyoqCisJICogVGhlICc8ZW0+PGI+Q2FyIExpa2UgVmVoaWNsZTwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mICc8ZW0+PGI+Q2FyIExpa2UgVmVoaWNsZTwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjQ0FSX0xJS0VfVkVISUNMRQorCSAqIEBtb2RlbCBuYW1lPSJDYXJMaWtlVmVoaWNsZSIKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBDQVJfTElLRV9WRUhJQ0xFX1ZBTFVFID0gNDsKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPkRpZmZlcmVudGlhbCBWZWhpY2xlPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgJzxlbT48Yj5EaWZmZXJlbnRpYWwgVmVoaWNsZTwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjRElGRkVSRU5USUFMX1ZFSElDTEUKKwkgKiBAbW9kZWwgbmFtZT0iRGlmZmVyZW50aWFsVmVoaWNsZSIKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBESUZGRVJFTlRJQUxfVkVISUNMRV9WQUxVRSA9IDU7CisKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5MZWdnZWQgVmVoaWNsZTwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mICc8ZW0+PGI+TGVnZ2VkIFZlaGljbGU8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0IGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI0xFR0dFRF9WRUhJQ0xFCisJICogQG1vZGVsIG5hbWU9IkxlZ2dlZFZlaGljbGUiCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgTEVHR0VEX1ZFSElDTEVfVkFMVUUgPSA2OworCisJLyoqCisJICogQW4gYXJyYXkgb2YgYWxsIHRoZSAnPGVtPjxiPk1vYmlsZSBSb2JvdCBLaW5kPC9iPjwvZW0+JyBlbnVtZXJhdG9ycy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIHN0YXRpYyBmaW5hbCBNb2JpbGVSb2JvdEtpbmRbXSBWQUxVRVNfQVJSQVkgPQorCQkJbmV3IE1vYmlsZVJvYm90S2luZFtdIHsKKwkJCUFJUl9WRUhJQ0xFLAorCQkJSFlCUklEX1ZFSElDTEUsCisJCQlTVVJGQUNFX1ZFSElDTEUsCisJCQlVTkRFUldBVEVSX1ZFSElDTEUsCisJCQlDQVJfTElLRV9WRUhJQ0xFLAorCQkJRElGRkVSRU5USUFMX1ZFSElDTEUsCisJCQlMRUdHRURfVkVISUNMRSwKKwkJfTsKKworCS8qKgorCSAqIEEgcHVibGljIHJlYWQtb25seSBsaXN0IG9mIGFsbCB0aGUgJzxlbT48Yj5Nb2JpbGUgUm9ib3QgS2luZDwvYj48L2VtPicgZW51bWVyYXRvcnMuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHN0YXRpYyBmaW5hbCBMaXN0PE1vYmlsZVJvYm90S2luZD4gVkFMVUVTID0gQ29sbGVjdGlvbnMudW5tb2RpZmlhYmxlTGlzdChBcnJheXMuYXNMaXN0KFZBTFVFU19BUlJBWSkpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgJzxlbT48Yj5Nb2JpbGUgUm9ib3QgS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbGl0ZXJhbCB2YWx1ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIE1vYmlsZVJvYm90S2luZCBnZXQoU3RyaW5nIGxpdGVyYWwpIHsKKwkJZm9yIChpbnQgaSA9IDA7IGkgPCBWQUxVRVNfQVJSQVkubGVuZ3RoOyArK2kpIHsKKwkJCU1vYmlsZVJvYm90S2luZCByZXN1bHQgPSBWQUxVRVNfQVJSQVlbaV07CisJCQlpZiAocmVzdWx0LnRvU3RyaW5nKCkuZXF1YWxzKGxpdGVyYWwpKSB7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJfQorCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSAnPGVtPjxiPk1vYmlsZSBSb2JvdCBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgTW9iaWxlUm9ib3RLaW5kIGdldEJ5TmFtZShTdHJpbmcgbmFtZSkgeworCQlmb3IgKGludCBpID0gMDsgaSA8IFZBTFVFU19BUlJBWS5sZW5ndGg7ICsraSkgeworCQkJTW9iaWxlUm9ib3RLaW5kIHJlc3VsdCA9IFZBTFVFU19BUlJBWVtpXTsKKwkJCWlmIChyZXN1bHQuZ2V0TmFtZSgpLmVxdWFscyhuYW1lKSkgeworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgJzxlbT48Yj5Nb2JpbGUgUm9ib3QgS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgaW50ZWdlciB2YWx1ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIE1vYmlsZVJvYm90S2luZCBnZXQoaW50IHZhbHVlKSB7CisJCXN3aXRjaCAodmFsdWUpIHsKKwkJCWNhc2UgQUlSX1ZFSElDTEVfVkFMVUU6IHJldHVybiBBSVJfVkVISUNMRTsKKwkJCWNhc2UgSFlCUklEX1ZFSElDTEVfVkFMVUU6IHJldHVybiBIWUJSSURfVkVISUNMRTsKKwkJCWNhc2UgU1VSRkFDRV9WRUhJQ0xFX1ZBTFVFOiByZXR1cm4gU1VSRkFDRV9WRUhJQ0xFOworCQkJY2FzZSBVTkRFUldBVEVSX1ZFSElDTEVfVkFMVUU6IHJldHVybiBVTkRFUldBVEVSX1ZFSElDTEU7CisJCQljYXNlIENBUl9MSUtFX1ZFSElDTEVfVkFMVUU6IHJldHVybiBDQVJfTElLRV9WRUhJQ0xFOworCQkJY2FzZSBESUZGRVJFTlRJQUxfVkVISUNMRV9WQUxVRTogcmV0dXJuIERJRkZFUkVOVElBTF9WRUhJQ0xFOworCQkJY2FzZSBMRUdHRURfVkVISUNMRV9WQUxVRTogcmV0dXJuIExFR0dFRF9WRUhJQ0xFOworCQl9CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgZmluYWwgaW50IHZhbHVlOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBmaW5hbCBTdHJpbmcgbmFtZTsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgZmluYWwgU3RyaW5nIGxpdGVyYWw7CisKKwkvKioKKwkgKiBPbmx5IHRoaXMgY2xhc3MgY2FuIGNvbnN0cnVjdCBpbnN0YW5jZXMuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBNb2JpbGVSb2JvdEtpbmQoaW50IHZhbHVlLCBTdHJpbmcgbmFtZSwgU3RyaW5nIGxpdGVyYWwpIHsKKwkJdGhpcy52YWx1ZSA9IHZhbHVlOworCQl0aGlzLm5hbWUgPSBuYW1lOworCQl0aGlzLmxpdGVyYWwgPSBsaXRlcmFsOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBpbnQgZ2V0VmFsdWUoKSB7CisJICByZXR1cm4gdmFsdWU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0cmluZyBnZXROYW1lKCkgeworCSAgcmV0dXJuIG5hbWU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0cmluZyBnZXRMaXRlcmFsKCkgeworCSAgcmV0dXJuIGxpdGVyYWw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgbGl0ZXJhbCB2YWx1ZSBvZiB0aGUgZW51bWVyYXRvciwgd2hpY2ggaXMgaXRzIHN0cmluZyByZXByZXNlbnRhdGlvbi4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlyZXR1cm4gbGl0ZXJhbDsKKwl9CisKK30gLy8gTW9iaWxlUm9ib3RLaW5kCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9OYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0uamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40OGU4YzQyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0uamF2YQpAQCAtMCwwICsxLDE3IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TmF2aWdhdGlvbiBDb21tYW5kIFN5c3RlbTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0TmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0oKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0gZXh0ZW5kcyBNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtIHsKK30gLy8gTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGUwOWE0NwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbS5qYXZhCkBAIC0wLDAgKzEsMTcgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5PYmplY3QgRGV0ZWN0aW9uIFNlbnNvciBTeXN0ZW08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldE9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0gZXh0ZW5kcyBTZW5zb3JTeXN0ZW0geworfSAvLyBPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmExYjdmYzAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbS5qYXZhCkBAIC0wLDAgKzEsMTcgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5PYmplY3QgVHJhY2tpbmcgU2Vuc29yIFN5c3RlbTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0oKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0gZXh0ZW5kcyBTZW5zb3JTeXN0ZW0geworfSAvLyBPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT2RvbWV0cnlTeXN0ZW0uamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09kb21ldHJ5U3lzdGVtLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmIxODRhMgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09kb21ldHJ5U3lzdGVtLmphdmEKQEAgLTAsMCArMSwxNyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9kb21ldHJ5IFN5c3RlbTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0T2RvbWV0cnlTeXN0ZW0oKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgT2RvbWV0cnlTeXN0ZW0gZXh0ZW5kcyBMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0geworfSAvLyBPZG9tZXRyeVN5c3RlbQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9PblBvcnQuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NmJjOGVmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25Qb3J0LmphdmEKQEAgLTAsMCArMSw3NiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUGFyYW1ldGVyOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5PbiBQb3J0PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PblBvcnQjZ2V0UG9ydCA8ZW0+UG9ydDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9uUG9ydCNnZXRCYXNlX1BhcmFtZXRlciA8ZW0+QmFzZSBQYXJhbWV0ZXI8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRPblBvcnQoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgT25Qb3J0IGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+UG9ydDwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+UG9ydDwvZW0+JyByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+UG9ydDwvZW0+JyByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0UG9ydChQb3J0KQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldE9uUG9ydF9Qb3J0KCkKKwkgKiBAbW9kZWwgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlQb3J0IGdldFBvcnQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PblBvcnQjZ2V0UG9ydCA8ZW0+UG9ydDwvZW0+fScgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+UG9ydDwvZW0+JyByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0UG9ydCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0UG9ydChQb3J0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkJhc2UgUGFyYW1ldGVyPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5CYXNlIFBhcmFtZXRlcjwvZW0+JyByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+QmFzZSBQYXJhbWV0ZXI8L2VtPicgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldEJhc2VfUGFyYW1ldGVyKFBhcmFtZXRlcikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRPblBvcnRfQmFzZV9QYXJhbWV0ZXIoKQorCSAqIEBtb2RlbCByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCVBhcmFtZXRlciBnZXRCYXNlX1BhcmFtZXRlcigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9uUG9ydCNnZXRCYXNlX1BhcmFtZXRlciA8ZW0+QmFzZSBQYXJhbWV0ZXI8L2VtPn0nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgUGFyYW1ldGVyPC9lbT4nIHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRCYXNlX1BhcmFtZXRlcigpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0QmFzZV9QYXJhbWV0ZXIoUGFyYW1ldGVyIHZhbHVlKTsKKworfSAvLyBPblBvcnQKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uVmFyaWFibGUuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09uVmFyaWFibGUuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNjk0ZGIwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT25WYXJpYWJsZS5qYXZhCkBAIC0wLDAgKzEsODAgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworCitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUGFyYW1ldGVyOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlByb3BlcnR5OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5PbiBWYXJpYWJsZTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT25WYXJpYWJsZSNnZXRQcm9wZXJ0eSA8ZW0+UHJvcGVydHk8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PblZhcmlhYmxlI2dldEJhc2VfUGFyYW1ldGVyIDxlbT5CYXNlIFBhcmFtZXRlcjwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldE9uVmFyaWFibGUoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgT25WYXJpYWJsZSBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlByb3BlcnR5PC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5Qcm9wZXJ0eTwvZW0+JyByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsCisJICogdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5Qcm9wZXJ0eTwvZW0+JyByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0UHJvcGVydHkoUHJvcGVydHkpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0T25WYXJpYWJsZV9Qcm9wZXJ0eSgpCisJICogQG1vZGVsIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJUHJvcGVydHkgZ2V0UHJvcGVydHkoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PblZhcmlhYmxlI2dldFByb3BlcnR5IDxlbT5Qcm9wZXJ0eTwvZW0+fScgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+UHJvcGVydHk8L2VtPicgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldFByb3BlcnR5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRQcm9wZXJ0eShQcm9wZXJ0eSB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CYXNlIFBhcmFtZXRlcjwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+QmFzZSBQYXJhbWV0ZXI8L2VtPicgcmVmZXJlbmNlIGlzbid0IGNsZWFyLAorCSAqIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+QmFzZSBQYXJhbWV0ZXI8L2VtPicgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldEJhc2VfUGFyYW1ldGVyKFBhcmFtZXRlcikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRPblZhcmlhYmxlX0Jhc2VfUGFyYW1ldGVyKCkKKwkgKiBAbW9kZWwgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlQYXJhbWV0ZXIgZ2V0QmFzZV9QYXJhbWV0ZXIoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PblZhcmlhYmxlI2dldEJhc2VfUGFyYW1ldGVyIDxlbT5CYXNlIFBhcmFtZXRlcjwvZW0+fScgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+QmFzZSBQYXJhbWV0ZXI8L2VtPicgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldEJhc2VfUGFyYW1ldGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRCYXNlX1BhcmFtZXRlcihQYXJhbWV0ZXIgdmFsdWUpOworCit9IC8vIE9uVmFyaWFibGUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09wZW5Mb29wQ29udHJvbFN5c3RlbS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvT3Blbkxvb3BDb250cm9sU3lzdGVtLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2YwMDI3NwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML09wZW5Mb29wQ29udHJvbFN5c3RlbS5qYXZhCkBAIC0wLDAgKzEsMTcgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5PcGVuIExvb3AgQ29udHJvbCBTeXN0ZW08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldE9wZW5Mb29wQ29udHJvbFN5c3RlbSgpCisgKiBAbW9kZWwgYW5ub3RhdGlvbj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCBvcmlnaW5hbE5hbWU9J09wZW4tTG9vcENvbnRyb2xTeXN0ZW0nIgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIE9wZW5Mb29wQ29udHJvbFN5c3RlbSBleHRlbmRzIEN5YmVyUGh5c2ljYWxTeXN0ZW0geworfSAvLyBPcGVuTG9vcENvbnRyb2xTeXN0ZW0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BlZGVzdHJpYW4uamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zYzFiNGJhCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGVkZXN0cmlhbi5qYXZhCkBAIC0wLDAgKzEsMTcgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QZWRlc3RyaWFuPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRQZWRlc3RyaWFuKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFBlZGVzdHJpYW4gZXh0ZW5kcyBIdW1hbiB7Cit9IC8vIFBlZGVzdHJpYW4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BoeXNpY2FsT2JqZWN0LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE4NjhjNzcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaHlzaWNhbE9iamVjdC5qYXZhCkBAIC0wLDAgKzEsMTAyIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGh5c2ljYWwgT2JqZWN0PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaHlzaWNhbE9iamVjdCNnZXRIZWlnaHQgPGVtPkhlaWdodDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBoeXNpY2FsT2JqZWN0I2dldE1hc3MgPGVtPk1hc3M8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaHlzaWNhbE9iamVjdCNnZXRCYXNlX0NsYXNzIDxlbT5CYXNlIENsYXNzPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0UGh5c2ljYWxPYmplY3QoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgUGh5c2ljYWxPYmplY3QgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5IZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkhlaWdodDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+SGVpZ2h0PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRIZWlnaHQoRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRQaHlzaWNhbE9iamVjdF9IZWlnaHQoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0SGVpZ2h0KCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGh5c2ljYWxPYmplY3QjZ2V0SGVpZ2h0IDxlbT5IZWlnaHQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkhlaWdodDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0SGVpZ2h0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRIZWlnaHQoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPk1hc3M8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPk1hc3M8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPk1hc3M8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldE1hc3MoRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRQaHlzaWNhbE9iamVjdF9NYXNzKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldE1hc3MoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaHlzaWNhbE9iamVjdCNnZXRNYXNzIDxlbT5NYXNzPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5NYXNzPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRNYXNzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRNYXNzKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5CYXNlIENsYXNzPC9lbT4nIHJlZmVyZW5jZSBpc24ndCBjbGVhciwKKwkgKiB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgQ2xhc3M8L2VtPicgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0UGh5c2ljYWxPYmplY3RfQmFzZV9DbGFzcygpCisJICogQG1vZGVsIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgZ2V0QmFzZV9DbGFzcygpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBoeXNpY2FsT2JqZWN0I2dldEJhc2VfQ2xhc3MgPGVtPkJhc2UgQ2xhc3M8L2VtPn0nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgQ2xhc3M8L2VtPicgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldEJhc2VfQ2xhc3MoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEJhc2VfQ2xhc3Mob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgdmFsdWUpOworCit9IC8vIFBoeXNpY2FsT2JqZWN0CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaWxvdGVkU3lzdGVtLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QaWxvdGVkU3lzdGVtLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjM4NjE5NQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BpbG90ZWRTeXN0ZW0uamF2YQpAQCAtMCwwICsxLDE3IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGlsb3RlZCBTeXN0ZW08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFBpbG90ZWRTeXN0ZW0oKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgUGlsb3RlZFN5c3RlbSBleHRlbmRzIFJvYm90IHsKK30gLy8gUGlsb3RlZFN5c3RlbQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhbmV0LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGFuZXQuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45ZjViM2Y3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhbmV0LmphdmEKQEAgLTAsMCArMSwxNyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBsYW5ldDwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0UGxhbmV0KCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFBsYW5ldCBleHRlbmRzIFBoeXNpY2FsT2JqZWN0IHsKK30gLy8gUGxhbmV0CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9QbGF0Zm9ybS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zN2Y1NjUyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUGxhdGZvcm0uamF2YQpAQCAtMCwwICsxLDY2IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuTm9kZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGxhdGZvcm08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBsYXRmb3JtI2dldEJhc2VfTm9kZSA8ZW0+QmFzZSBOb2RlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGxhdGZvcm0jZ2V0TGlicmFyeSA8ZW0+TGlicmFyeTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFBsYXRmb3JtKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFBsYXRmb3JtIGV4dGVuZHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QmFzZSBOb2RlPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5CYXNlIE5vZGU8L2VtPicgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgTm9kZTwvZW0+JyByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0QmFzZV9Ob2RlKE5vZGUpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0UGxhdGZvcm1fQmFzZV9Ob2RlKCkKKwkgKiBAbW9kZWwgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlOb2RlIGdldEJhc2VfTm9kZSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBsYXRmb3JtI2dldEJhc2VfTm9kZSA8ZW0+QmFzZSBOb2RlPC9lbT59JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5CYXNlIE5vZGU8L2VtPicgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldEJhc2VfTm9kZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0QmFzZV9Ob2RlKE5vZGUgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TGlicmFyeTwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3QuCisJICogVGhlIGxpc3QgY29udGVudHMgYXJlIG9mIHR5cGUge0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FeHRlcm5hbExpYnJhcnl9LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+TGlicmFyeTwvZW0+JyByZWZlcmVuY2UgbGlzdCBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5MaWJyYXJ5PC9lbT4nIHJlZmVyZW5jZSBsaXN0LgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFBsYXRmb3JtX0xpYnJhcnkoKQorCSAqIEBtb2RlbCBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUxpc3Q8RXh0ZXJuYWxMaWJyYXJ5PiBnZXRMaWJyYXJ5KCk7CisKK30gLy8gUGxhdGZvcm0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1BvcnQuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hYmVhMTVhCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUG9ydC5qYXZhCkBAIC0wLDAgKzEsNzggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Qb3J0PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Qb3J0I2dldEJhc2VfUG9ydCA8ZW0+QmFzZSBQb3J0PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG9ydCNnZXRTeW5jaHJvbml6YXRpb25Qb2xpY3kgPGVtPlN5bmNocm9uaXphdGlvbiBQb2xpY3k8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRQb3J0KCkKKyAqIEBtb2RlbCBhYnN0cmFjdD0idHJ1ZSIKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBQb3J0IGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QmFzZSBQb3J0PC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5CYXNlIFBvcnQ8L2VtPicgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgUG9ydDwvZW0+JyByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0QmFzZV9Qb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0UG9ydF9CYXNlX1BvcnQoKQorCSAqIEBtb2RlbCByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCW9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQgZ2V0QmFzZV9Qb3J0KCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG9ydCNnZXRCYXNlX1BvcnQgPGVtPkJhc2UgUG9ydDwvZW0+fScgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+QmFzZSBQb3J0PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRCYXNlX1BvcnQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEJhc2VfUG9ydChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlN5bmNocm9uaXphdGlvbiBQb2xpY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBUaGUgbGl0ZXJhbHMgYXJlIGZyb20gdGhlIGVudW1lcmF0aW9uIHtAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3luY2hyb25pemF0aW9uS2luZH0uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5TeW5jaHJvbml6YXRpb24gUG9saWN5PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5TeW5jaHJvbml6YXRpb24gUG9saWN5PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeW5jaHJvbml6YXRpb25LaW5kCisJICogQHNlZSAjc2V0U3luY2hyb25pemF0aW9uUG9saWN5KFN5bmNocm9uaXphdGlvbktpbmQpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0UG9ydF9TeW5jaHJvbml6YXRpb25Qb2xpY3koKQorCSAqIEBtb2RlbCByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCVN5bmNocm9uaXphdGlvbktpbmQgZ2V0U3luY2hyb25pemF0aW9uUG9saWN5KCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG9ydCNnZXRTeW5jaHJvbml6YXRpb25Qb2xpY3kgPGVtPlN5bmNocm9uaXphdGlvbiBQb2xpY3k8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlN5bmNocm9uaXphdGlvbiBQb2xpY3k8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5bmNocm9uaXphdGlvbktpbmQKKwkgKiBAc2VlICNnZXRTeW5jaHJvbml6YXRpb25Qb2xpY3koKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFN5bmNocm9uaXphdGlvblBvbGljeShTeW5jaHJvbml6YXRpb25LaW5kIHZhbHVlKTsKKworfSAvLyBQb3J0CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3dlckhhcmR3YXJlLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Qb3dlckhhcmR3YXJlLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGFmMDg3MgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1Bvd2VySGFyZHdhcmUuamF2YQpAQCAtMCwwICsxLDE3IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UG93ZXIgSGFyZHdhcmU8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFBvd2VySGFyZHdhcmUoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgUG93ZXJIYXJkd2FyZSBleHRlbmRzIEhhcmR3YXJlIHsKK30gLy8gUG93ZXJIYXJkd2FyZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3QuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjdlMDJlNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90LmphdmEKQEAgLTAsMCArMSw0OCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdCNnZXRXaWR0aCA8ZW0+V2lkdGg8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRSb2JvdCgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBSb2JvdCBleHRlbmRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0geworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPldpZHRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5XaWR0aDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+V2lkdGg8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFdpZHRoKEZsb2F0MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0Um9ib3RfV2lkdGgoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0V2lkdGgoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdCNnZXRXaWR0aCA8ZW0+V2lkdGg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPldpZHRoPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRXaWR0aCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0V2lkdGgoT2JqZWN0IHZhbHVlKTsKKworfSAvLyBSb2JvdApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTEZhY3RvcnkuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDA4YzFkNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90TUxGYWN0b3J5LmphdmEKQEAgLTAsMCArMSw3MzUgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogVGhlIDxiPkZhY3Rvcnk8L2I+IGZvciB0aGUgbW9kZWwuCisgKiBJdCBwcm92aWRlcyBhIGNyZWF0ZSBtZXRob2QgZm9yIGVhY2ggbm9uLWFic3RyYWN0IGNsYXNzIG9mIHRoZSBtb2RlbC4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBSb2JvdE1MRmFjdG9yeSBleHRlbmRzIEVGYWN0b3J5IHsKKwkvKioKKwkgKiBUaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBmYWN0b3J5LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCVJvYm90TUxGYWN0b3J5IGVJTlNUQU5DRSA9IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxGYWN0b3J5SW1wbC5pbml0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlRyYW5zaXRpb248L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlRyYW5zaXRpb248L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCVRyYW5zaXRpb24gY3JlYXRlVHJhbnNpdGlvbigpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5BbGdvcml0aG08L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkFsZ29yaXRobTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQWxnb3JpdGhtIGNyZWF0ZUFsZ29yaXRobSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TdGF0ZTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+U3RhdGU8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCVN0YXRlIGNyZWF0ZVN0YXRlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkFjdHVhdGVkIEpvaW50PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5BY3R1YXRlZCBKb2ludDwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQWN0dWF0ZWRKb2ludCBjcmVhdGVBY3R1YXRlZEpvaW50KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkpvaW50PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Kb2ludDwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJSm9pbnQgY3JlYXRlSm9pbnQoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Q29tcGxldGUgQm9uZGluZzwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Q29tcGxldGUgQm9uZGluZzwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQ29tcGxldGVCb25kaW5nIGNyZWF0ZUNvbXBsZXRlQm9uZGluZygpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Sb2JvdDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Um9ib3Q8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCVJvYm90IGNyZWF0ZVJvYm90KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlN5c3RlbTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+U3lzdGVtPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTeXN0ZW0gY3JlYXRlU3lzdGVtKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkFnZW50PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5BZ2VudDwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQWdlbnQgY3JlYXRlQWdlbnQoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UGh5c2ljYWwgT2JqZWN0PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5QaHlzaWNhbCBPYmplY3Q8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCVBoeXNpY2FsT2JqZWN0IGNyZWF0ZVBoeXNpY2FsT2JqZWN0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkVudmlyb25tZW50PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5FbnZpcm9ubWVudDwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRW52aXJvbm1lbnQgY3JlYXRlRW52aXJvbm1lbnQoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+U3VyZmFjZTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+U3VyZmFjZTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJU3VyZmFjZSBjcmVhdGVTdXJmYWNlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkRhdGEgRmxvdyBQb3J0PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5EYXRhIEZsb3cgUG9ydDwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRGF0YUZsb3dQb3J0IGNyZWF0ZURhdGFGbG93UG9ydCgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TZXJ2aWNlIFBvcnQ8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlNlcnZpY2UgUG9ydDwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJU2VydmljZVBvcnQgY3JlYXRlU2VydmljZVBvcnQoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+QWN0dWF0b3IgU3lzdGVtPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5BY3R1YXRvciBTeXN0ZW08L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUFjdHVhdG9yU3lzdGVtIGNyZWF0ZUFjdHVhdG9yU3lzdGVtKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlJvYm90aWMgU3lzdGVtPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Sb2JvdGljIFN5c3RlbTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJUm9ib3RpY1N5c3RlbSBjcmVhdGVSb2JvdGljU3lzdGVtKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkN5YmVyIFBoeXNpY2FsIFN5c3RlbTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Q3liZXIgUGh5c2ljYWwgU3lzdGVtPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlDeWJlclBoeXNpY2FsU3lzdGVtIGNyZWF0ZUN5YmVyUGh5c2ljYWxTeXN0ZW0oKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+U2Vuc29yIFN5c3RlbTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+U2Vuc29yIFN5c3RlbTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJU2Vuc29yU3lzdGVtIGNyZWF0ZVNlbnNvclN5c3RlbSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5IYXJkd2FyZTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+SGFyZHdhcmU8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUhhcmR3YXJlIGNyZWF0ZUhhcmR3YXJlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlNvZnR3YXJlPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Tb2Z0d2FyZTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJU29mdHdhcmUgY3JlYXRlU29mdHdhcmUoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+RW5naW5lIFN5c3RlbTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+RW5naW5lIFN5c3RlbTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRW5naW5lU3lzdGVtIGNyZWF0ZUVuZ2luZVN5c3RlbSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TdGVlcmVkIFdoZWVsIFN5c3RlbTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+U3RlZXJlZCBXaGVlbCBTeXN0ZW08L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCVN0ZWVyZWRXaGVlbFN5c3RlbSBjcmVhdGVTdGVlcmVkV2hlZWxTeXN0ZW0oKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TG9jb21vdGlvbiBTeXN0ZW08L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkxvY29tb3Rpb24gU3lzdGVtPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlMb2NvbW90aW9uU3lzdGVtIGNyZWF0ZUxvY29tb3Rpb25TeXN0ZW0oKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+SW1hZ2UgU2Vuc29yIFN5c3RlbTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+SW1hZ2UgU2Vuc29yIFN5c3RlbTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJSW1hZ2VTZW5zb3JTeXN0ZW0gY3JlYXRlSW1hZ2VTZW5zb3JTeXN0ZW0oKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Q2FtZXJhIFN5c3RlbTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Q2FtZXJhIFN5c3RlbTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQ2FtZXJhU3lzdGVtIGNyZWF0ZUNhbWVyYVN5c3RlbSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5PYmplY3QgRGV0ZWN0aW9uIFNlbnNvciBTeXN0ZW08L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtIGNyZWF0ZU9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5PYmplY3QgVHJhY2tpbmcgU2Vuc29yIFN5c3RlbTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+T2JqZWN0IFRyYWNraW5nIFNlbnNvciBTeXN0ZW08L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtIGNyZWF0ZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkxpZGFyIFN5c3RlbTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TGlkYXIgU3lzdGVtPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlMaWRhclN5c3RlbSBjcmVhdGVMaWRhclN5c3RlbSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Mb2NhbGl6YXRpb24gU2Vuc29yIFN5c3RlbTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUxvY2FsaXphdGlvblNlbnNvclN5c3RlbSBjcmVhdGVMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0oKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+R1BTIFN5c3RlbTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+R1BTIFN5c3RlbTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJR1BTU3lzdGVtIGNyZWF0ZUdQU1N5c3RlbSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5BbGdvcml0aG0gTGlicmFyeTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+QWxnb3JpdGhtIExpYnJhcnk8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUFsZ29yaXRobUxpYnJhcnkgY3JlYXRlQWxnb3JpdGhtTGlicmFyeSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TZW5zb3IgRHJpdmVyPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TZW5zb3IgRHJpdmVyPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTZW5zb3JEcml2ZXIgY3JlYXRlU2Vuc29yRHJpdmVyKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkJ1aWxkaW5nPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5CdWlsZGluZzwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQnVpbGRpbmcgY3JlYXRlQnVpbGRpbmcoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UGxhbmV0PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5QbGFuZXQ8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCVBsYW5ldCBjcmVhdGVQbGFuZXQoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TGFuZCBTdXJmYWNlPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5MYW5kIFN1cmZhY2U8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUxhbmRTdXJmYWNlIGNyZWF0ZUxhbmRTdXJmYWNlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkZsb29yPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5GbG9vcjwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRmxvb3IgY3JlYXRlRmxvb3IoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+V2F0ZXIgU3VyZmFjZTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+V2F0ZXIgU3VyZmFjZTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJV2F0ZXJTdXJmYWNlIGNyZWF0ZVdhdGVyU3VyZmFjZSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5IdW1hbjwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+SHVtYW48L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUh1bWFuIGNyZWF0ZUh1bWFuKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlBlZGVzdHJpYW48L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlBlZGVzdHJpYW48L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCVBlZGVzdHJpYW4gY3JlYXRlUGVkZXN0cmlhbigpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TdGFpcnM8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlN0YWlyczwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJU3RhaXJzIGNyZWF0ZVN0YWlycygpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5QbGF0Zm9ybTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UGxhdGZvcm08L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCVBsYXRmb3JtIGNyZWF0ZVBsYXRmb3JtKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkV4dGVybmFsIExpYnJhcnk8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkV4dGVybmFsIExpYnJhcnk8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUV4dGVybmFsTGlicmFyeSBjcmVhdGVFeHRlcm5hbExpYnJhcnkoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Um9ib3RpYyBNaWRkbGV3YXJlPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Sb2JvdGljIE1pZGRsZXdhcmU8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCVJvYm90aWNNaWRkbGV3YXJlIGNyZWF0ZVJvYm90aWNNaWRkbGV3YXJlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlJvYm90aWMgU2ltdWxhdG9yPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Sb2JvdGljIFNpbXVsYXRvcjwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJUm9ib3RpY1NpbXVsYXRvciBjcmVhdGVSb2JvdGljU2ltdWxhdG9yKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkN5Y2FiIFRLPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5DeWNhYiBUSzwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQ3ljYWJUSyBjcmVhdGVDeWNhYlRLKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkJsZW5kZXIgTW9yc2U8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkJsZW5kZXIgTW9yc2U8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUJsZW5kZXJNb3JzZSBjcmVhdGVCbGVuZGVyTW9yc2UoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+T24gUG9ydDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+T24gUG9ydDwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT25Qb3J0IGNyZWF0ZU9uUG9ydCgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5BbGxvY2F0ZTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+QWxsb2NhdGU8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUFsbG9jYXRlIGNyZWF0ZUFsbG9jYXRlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkluZXJ0aWFsIE1lYXN1cmVtZW50IFVuaXQgU3lzdGVtPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5JbmVydGlhbCBNZWFzdXJlbWVudCBVbml0IFN5c3RlbTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0gY3JlYXRlSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0oKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+SW5lcnRpYWwgTmF2aWdhdGlvbiBTeXN0ZW08L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkluZXJ0aWFsIE5hdmlnYXRpb24gU3lzdGVtPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlJbmVydGlhbE5hdmlnYXRpb25TeXN0ZW0gY3JlYXRlSW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPk9kb21ldHJ5IFN5c3RlbTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+T2RvbWV0cnkgU3lzdGVtPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPZG9tZXRyeVN5c3RlbSBjcmVhdGVPZG9tZXRyeVN5c3RlbSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5JbmZyYSBSZWQgUHJveGltZXRyeSBTeXN0ZW08L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkluZnJhIFJlZCBQcm94aW1ldHJ5IFN5c3RlbTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtIGNyZWF0ZUluZnJhUmVkUHJveGltZXRyeVN5c3RlbSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5EZXBsb3ltZW50IFBsYW48L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkRlcGxveW1lbnQgUGxhbjwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRGVwbG95bWVudFBsYW4gY3JlYXRlRGVwbG95bWVudFBsYW4oKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+R3lyb3Njb3BlPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5HeXJvc2NvcGU8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUd5cm9zY29wZSBjcmVhdGVHeXJvc2NvcGUoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+T24gVmFyaWFibGU8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPk9uIFZhcmlhYmxlPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPblZhcmlhYmxlIGNyZWF0ZU9uVmFyaWFibGUoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Q2hhc3NpczwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Q2hhc3NpczwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQ2hhc3NpcyBjcmVhdGVDaGFzc2lzKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlN1cHBvcnRpbmcgU3RydWN0dXJlPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TdXBwb3J0aW5nIFN0cnVjdHVyZTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJU3VwcG9ydGluZ1N0cnVjdHVyZSBjcmVhdGVTdXBwb3J0aW5nU3RydWN0dXJlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPk1lY2hhbmljYWwgTGlua2FnZTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TWVjaGFuaWNhbCBMaW5rYWdlPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlNZWNoYW5pY2FsTGlua2FnZSBjcmVhdGVNZWNoYW5pY2FsTGlua2FnZSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5MZWc8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkxlZzwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJTGVnIGNyZWF0ZUxlZygpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Mb2NvbW90aW9uIEhhcmR3YXJlPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Mb2NvbW90aW9uIEhhcmR3YXJlPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlMb2NvbW90aW9uSGFyZHdhcmUgY3JlYXRlTG9jb21vdGlvbkhhcmR3YXJlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkFjdHVhdG9yIEhhcmR3YXJlPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5BY3R1YXRvciBIYXJkd2FyZTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQWN0dWF0b3JIYXJkd2FyZSBjcmVhdGVBY3R1YXRvckhhcmR3YXJlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPk1vYmlsZSBSb2JvdDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TW9iaWxlIFJvYm90PC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlNb2JpbGVSb2JvdCBjcmVhdGVNb2JpbGVSb2JvdCgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5NYW5pcHVsYXRvcjwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TWFuaXB1bGF0b3I8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCU1hbmlwdWxhdG9yIGNyZWF0ZU1hbmlwdWxhdG9yKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlBpbG90ZWQgU3lzdGVtPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5QaWxvdGVkIFN5c3RlbTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJUGlsb3RlZFN5c3RlbSBjcmVhdGVQaWxvdGVkU3lzdGVtKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlBvd2VyIEhhcmR3YXJlPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Qb3dlciBIYXJkd2FyZTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJUG93ZXJIYXJkd2FyZSBjcmVhdGVQb3dlckhhcmR3YXJlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlNlbnNvciBIYXJkd2FyZTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+U2Vuc29yIEhhcmR3YXJlPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTZW5zb3JIYXJkd2FyZSBjcmVhdGVTZW5zb3JIYXJkd2FyZSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5HcmFzcGluZyBIYXJkd2FyZTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+R3Jhc3BpbmcgSGFyZHdhcmU8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUdyYXNwaW5nSGFyZHdhcmUgY3JlYXRlR3Jhc3BpbmdIYXJkd2FyZSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TdGVlcmVkIFdoZWVsIEhhcmR3YXJlPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5TdGVlcmVkIFdoZWVsIEhhcmR3YXJlPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTdGVlcmVkV2hlZWxIYXJkd2FyZSBjcmVhdGVTdGVlcmVkV2hlZWxIYXJkd2FyZSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Bcm08L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkFybTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQXJtIGNyZWF0ZUFybSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5MZWcgU3lzdGVtPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5MZWcgU3lzdGVtPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlMZWdTeXN0ZW0gY3JlYXRlTGVnU3lzdGVtKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkdyYXNwaW5nIFN5c3RlbTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+R3Jhc3BpbmcgU3lzdGVtPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlHcmFzcGluZ1N5c3RlbSBjcmVhdGVHcmFzcGluZ1N5c3RlbSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5XZWFwb24gU3lzdGVtPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5XZWFwb24gU3lzdGVtPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlXZWFwb25TeXN0ZW0gY3JlYXRlV2VhcG9uU3lzdGVtKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPk1hbiBNYWNoaW5lIEludGVyZmFjZSBTeXN0ZW08L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPk1hbiBNYWNoaW5lIEludGVyZmFjZSBTeXN0ZW08L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCU1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0gY3JlYXRlTWFuTWFjaGluZUludGVyZmFjZVN5c3RlbSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5DbG9zZWQgTG9vcCBDb250cm9sIFN5c3RlbTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Q2xvc2VkIExvb3AgQ29udHJvbCBTeXN0ZW08L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUNsb3NlZExvb3BDb250cm9sU3lzdGVtIGNyZWF0ZUNsb3NlZExvb3BDb250cm9sU3lzdGVtKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPk9wZW4gTG9vcCBDb250cm9sIFN5c3RlbTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+T3BlbiBMb29wIENvbnRyb2wgU3lzdGVtPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPcGVuTG9vcENvbnRyb2xTeXN0ZW0gY3JlYXRlT3Blbkxvb3BDb250cm9sU3lzdGVtKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlJvYm90aWMgSGVhZDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Um9ib3RpYyBIZWFkPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlSb2JvdGljSGVhZCBjcmVhdGVSb2JvdGljSGVhZCgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5OYXZpZ2F0aW9uIENvbW1hbmQgU3lzdGVtPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5OYXZpZ2F0aW9uIENvbW1hbmQgU3lzdGVtPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlOYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbSBjcmVhdGVOYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Kb3lzdGljIE5hdmlnYXRpb24gU3lzdGVtPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Kb3lzdGljIE5hdmlnYXRpb24gU3lzdGVtPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlKb3lzdGljTmF2aWdhdGlvblN5c3RlbSBjcmVhdGVKb3lzdGljTmF2aWdhdGlvblN5c3RlbSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgcGFja2FnZSBzdXBwb3J0ZWQgYnkgdGhpcyBmYWN0b3J5LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgcGFja2FnZSBzdXBwb3J0ZWQgYnkgdGhpcyBmYWN0b3J5LgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlSb2JvdE1MUGFja2FnZSBnZXRSb2JvdE1MUGFja2FnZSgpOworCit9IC8vIFJvYm90TUxGYWN0b3J5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdE1MUGFja2FnZS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hZDM4OTY2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RNTFBhY2thZ2UuamF2YQpAQCAtMCwwICsxLDEwMzIyIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRW51bTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIFRoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhlIG1vZGVsLgorICogSXQgY29udGFpbnMgYWNjZXNzb3JzIGZvciB0aGUgbWV0YSBvYmplY3RzIHRvIHJlcHJlc2VudAorICogPHVsPgorICogPGxpPmVhY2ggY2xhc3MsPC9saT4KKyAqIDxsaT5lYWNoIGZlYXR1cmUgb2YgZWFjaCBjbGFzcyw8L2xpPgorICogPGxpPmVhY2ggb3BlcmF0aW9uIG9mIGVhY2ggY2xhc3MsPC9saT4KKyAqIDxsaT5lYWNoIGVudW0sPC9saT4KKyAqIDxsaT5hbmQgZWFjaCBkYXRhIHR5cGU8L2xpPgorICogPC91bD4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTEZhY3RvcnkKKyAqIEBtb2RlbCBraW5kPSJwYWNrYWdlIgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFJvYm90TUxQYWNrYWdlIGV4dGVuZHMgRVBhY2thZ2UgeworCS8qKgorCSAqIFRoZSBwYWNrYWdlIG5hbWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJU3RyaW5nIGVOQU1FID0gIlJvYm90TUwiOworCisJLyoqCisJICogVGhlIHBhY2thZ2UgbmFtZXNwYWNlIFVSSS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTdHJpbmcgZU5TX1VSSSA9ICJodHRwOi8vUGFweXJ1cy9Sb2JvdE1MLzEiOworCisJLyoqCisJICogVGhlIHBhY2thZ2UgbmFtZXNwYWNlIG5hbWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJU3RyaW5nIGVOU19QUkVGSVggPSAiUm9ib3RNTCI7CisKKwkvKioKKwkgKiBUaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBwYWNrYWdlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCVJvYm90TUxQYWNrYWdlIGVJTlNUQU5DRSA9IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbC5pbml0KCk7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlRyYW5zaXRpb25JbXBsIDxlbT5UcmFuc2l0aW9uPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuVHJhbnNpdGlvbkltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRUcmFuc2l0aW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFRSQU5TSVRJT04gPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgVHJhbnNpdGlvbjwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFRSQU5TSVRJT05fX0JBU0VfVFJBTlNJVElPTiA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+R3VhcmQ8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBUUkFOU0lUSU9OX19HVUFSRCA9IDE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RWZmZWN0PC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgVFJBTlNJVElPTl9fRUZGRUNUID0gMjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5UcmFuc2l0aW9uPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFRSQU5TSVRJT05fRkVBVFVSRV9DT1VOVCA9IDM7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+VHJhbnNpdGlvbjwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBUUkFOU0lUSU9OX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkFsZ29yaXRobUltcGwgPGVtPkFsZ29yaXRobTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkFsZ29yaXRobUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRBbGdvcml0aG0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgQUxHT1JJVEhNID0gMTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIE9wZXJhdGlvbjwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEFMR09SSVRITV9fQkFTRV9PUEVSQVRJT04gPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPklzIEV4dGVybmFsPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQUxHT1JJVEhNX19JU19FWFRFUk5BTCA9IDE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RXh0IEZ1bmN0aW9uIE5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBBTEdPUklUSE1fX0VYVF9GVU5DVElPTl9OQU1FID0gMjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWIgUGF0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEFMR09SSVRITV9fTElCX1BBVEggPSAzOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYiBGaWxlIEZvcm1hdDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEFMR09SSVRITV9fTElCX0ZJTEVfRk9STUFUID0gNDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5BbGdvcml0aG08L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQUxHT1JJVEhNX0ZFQVRVUkVfQ09VTlQgPSA1OworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkFsZ29yaXRobTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBBTEdPUklUSE1fT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3RhdGVJbXBsIDxlbT5TdGF0ZTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN0YXRlSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFN0YXRlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFNUQVRFID0gMjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIFN0YXRlPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1RBVEVfX0JBU0VfU1RBVEUgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJlaGF2aW9yPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1RBVEVfX0JFSEFWSU9SID0gMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5TdGF0ZTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTVEFURV9GRUFUVVJFX0NPVU5UID0gMjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5TdGF0ZTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTVEFURV9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Kb2ludEltcGwgPGVtPkpvaW50PC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuSm9pbnRJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0Sm9pbnQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgSk9JTlQgPSA0OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ29ubmVjdG9yPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSk9JTlRfX0JBU0VfQ09OTkVDVE9SID0gMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5Kb2ludDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBKT0lOVF9GRUFUVVJFX0NPVU5UID0gMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5Kb2ludDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBKT0lOVF9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BY3R1YXRlZEpvaW50SW1wbCA8ZW0+QWN0dWF0ZWQgSm9pbnQ8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BY3R1YXRlZEpvaW50SW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldEFjdHVhdGVkSm9pbnQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgQUNUVUFURURfSk9JTlQgPSAzOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ29ubmVjdG9yPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQUNUVUFURURfSk9JTlRfX0JBU0VfQ09OTkVDVE9SID0gSk9JTlRfX0JBU0VfQ09OTkVDVE9SOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkFjdHVhdGVkIEpvaW50PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEFDVFVBVEVEX0pPSU5UX0ZFQVRVUkVfQ09VTlQgPSBKT0lOVF9GRUFUVVJFX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5BY3R1YXRlZCBKb2ludDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBBQ1RVQVRFRF9KT0lOVF9PUEVSQVRJT05fQ09VTlQgPSBKT0lOVF9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Db21wbGV0ZUJvbmRpbmdJbXBsIDxlbT5Db21wbGV0ZSBCb25kaW5nPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQ29tcGxldGVCb25kaW5nSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldENvbXBsZXRlQm9uZGluZygpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBDT01QTEVURV9CT05ESU5HID0gNTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENvbm5lY3RvcjwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IENPTVBMRVRFX0JPTkRJTkdfX0JBU0VfQ09OTkVDVE9SID0gSk9JTlRfX0JBU0VfQ09OTkVDVE9SOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkNvbXBsZXRlIEJvbmRpbmc8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ09NUExFVEVfQk9ORElOR19GRUFUVVJFX0NPVU5UID0gSk9JTlRfRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+Q29tcGxldGUgQm9uZGluZzwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDT01QTEVURV9CT05ESU5HX09QRVJBVElPTl9DT1VOVCA9IEpPSU5UX09QRVJBVElPTl9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGwgPGVtPlN5c3RlbTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgU1lTVEVNID0gNzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1lTVEVNX19CQVNFX0NMQVNTID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYXRpdmU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTWVNURU1fX05BVElWRSA9IDE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBQYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1lTVEVNX19MSUJSQVJZX1BBVEggPSAyOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgQ29tcG9uZW50IE5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUUgPSAzOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkFsaWFzPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1lTVEVNX19BTElBUyA9IDQ7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+U3lzdGVtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNZU1RFTV9GRUFUVVJFX0NPVU5UID0gNTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5TeXN0ZW08L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1lTVEVNX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsT2JqZWN0SW1wbCA8ZW0+UGh5c2ljYWwgT2JqZWN0PC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGh5c2ljYWxPYmplY3RJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0UGh5c2ljYWxPYmplY3QoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgUEhZU0lDQUxfT0JKRUNUID0gOTsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWdlbnRJbXBsIDxlbT5BZ2VudDwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkFnZW50SW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldEFnZW50KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IEFHRU5UID0gODsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RJbXBsIDxlbT5Sb2JvdDwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90SW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFJvYm90KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFJPQk9UID0gNjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUk9CT1RfX0JBU0VfQ0xBU1MgPSBTWVNURU1fX0JBU0VfQ0xBU1M7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TmF0aXZlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUk9CT1RfX05BVElWRSA9IFNZU1RFTV9fTkFUSVZFOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgUGF0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFJPQk9UX19MSUJSQVJZX1BBVEggPSBTWVNURU1fX0xJQlJBUllfUEFUSDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUk9CT1RfX0xJQlJBUllfQ09NUE9ORU5UX05BTUUgPSBTWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QWxpYXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBST0JPVF9fQUxJQVMgPSBTWVNURU1fX0FMSUFTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPldpZHRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUk9CT1RfX1dJRFRIID0gU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlJvYm90PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFJPQk9UX0ZFQVRVUkVfQ09VTlQgPSBTWVNURU1fRkVBVFVSRV9DT1VOVCArIDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+Um9ib3Q8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUk9CT1RfT1BFUkFUSU9OX0NPVU5UID0gU1lTVEVNX09QRVJBVElPTl9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGVpZ2h0PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUEhZU0lDQUxfT0JKRUNUX19IRUlHSFQgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1hc3M8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQSFlTSUNBTF9PQkpFQ1RfX01BU1MgPSAxOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQSFlTSUNBTF9PQkpFQ1RfX0JBU0VfQ0xBU1MgPSAyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlBoeXNpY2FsIE9iamVjdDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQSFlTSUNBTF9PQkpFQ1RfRkVBVFVSRV9DT1VOVCA9IDM7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+UGh5c2ljYWwgT2JqZWN0PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBIWVNJQ0FMX09CSkVDVF9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkhlaWdodDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEFHRU5UX19IRUlHSFQgPSBQSFlTSUNBTF9PQkpFQ1RfX0hFSUdIVDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5NYXNzPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQUdFTlRfX01BU1MgPSBQSFlTSUNBTF9PQkpFQ1RfX01BU1M7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEFHRU5UX19CQVNFX0NMQVNTID0gUEhZU0lDQUxfT0JKRUNUX19CQVNFX0NMQVNTOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkFnZW50PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEFHRU5UX0ZFQVRVUkVfQ09VTlQgPSBQSFlTSUNBTF9PQkpFQ1RfRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+QWdlbnQ8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQUdFTlRfT1BFUkFUSU9OX0NPVU5UID0gUEhZU0lDQUxfT0JKRUNUX09QRVJBVElPTl9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkVudmlyb25tZW50SW1wbCA8ZW0+RW52aXJvbm1lbnQ8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5FbnZpcm9ubWVudEltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRFbnZpcm9ubWVudCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBFTlZJUk9OTUVOVCA9IDMxOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TdXJmYWNlSW1wbCA8ZW0+U3VyZmFjZTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN1cmZhY2VJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0U3VyZmFjZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBTVVJGQUNFID0gMzM7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBvcnRJbXBsIDxlbT5Qb3J0PC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUG9ydEltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRQb3J0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFBPUlQgPSAxMTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIFBvcnQ8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT1JUX19CQVNFX1BPUlQgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlN5bmNocm9uaXphdGlvbiBQb2xpY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT1JUX19TWU5DSFJPTklaQVRJT05fUE9MSUNZID0gMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5Qb3J0PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPUlRfRkVBVFVSRV9DT1VOVCA9IDI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+UG9ydDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT1JUX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkRhdGFGbG93UG9ydEltcGwgPGVtPkRhdGEgRmxvdyBQb3J0PC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuRGF0YUZsb3dQb3J0SW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldERhdGFGbG93UG9ydCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBEQVRBX0ZMT1dfUE9SVCA9IDEwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgUG9ydDwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IERBVEFfRkxPV19QT1JUX19CQVNFX1BPUlQgPSBQT1JUX19CQVNFX1BPUlQ7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+U3luY2hyb25pemF0aW9uIFBvbGljeTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IERBVEFfRkxPV19QT1JUX19TWU5DSFJPTklaQVRJT05fUE9MSUNZID0gUE9SVF9fU1lOQ0hST05JWkFUSU9OX1BPTElDWTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5EaXJlY3Rpb248L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBEQVRBX0ZMT1dfUE9SVF9fRElSRUNUSU9OID0gUE9SVF9GRUFUVVJFX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CdWZmZXIgU2l6ZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IERBVEFfRkxPV19QT1JUX19CVUZGRVJfU0laRSA9IFBPUlRfRkVBVFVSRV9DT1VOVCArIDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+RGF0YSBGbG93IFBvcnQ8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgREFUQV9GTE9XX1BPUlRfRkVBVFVSRV9DT1VOVCA9IFBPUlRfRkVBVFVSRV9DT1VOVCArIDI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+RGF0YSBGbG93IFBvcnQ8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgREFUQV9GTE9XX1BPUlRfT1BFUkFUSU9OX0NPVU5UID0gUE9SVF9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TZXJ2aWNlUG9ydEltcGwgPGVtPlNlcnZpY2UgUG9ydDwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNlcnZpY2VQb3J0SW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFNlcnZpY2VQb3J0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFNFUlZJQ0VfUE9SVCA9IDEyOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgUG9ydDwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNFUlZJQ0VfUE9SVF9fQkFTRV9QT1JUID0gUE9SVF9fQkFTRV9QT1JUOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlN5bmNocm9uaXphdGlvbiBQb2xpY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTRVJWSUNFX1BPUlRfX1NZTkNIUk9OSVpBVElPTl9QT0xJQ1kgPSBQT1JUX19TWU5DSFJPTklaQVRJT05fUE9MSUNZOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPktpbmQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTRVJWSUNFX1BPUlRfX0tJTkQgPSBQT1JUX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlNlcnZpY2UgUG9ydDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTRVJWSUNFX1BPUlRfRkVBVFVSRV9DT1VOVCA9IFBPUlRfRkVBVFVSRV9DT1VOVCArIDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+U2VydmljZSBQb3J0PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNFUlZJQ0VfUE9SVF9PUEVSQVRJT05fQ09VTlQgPSBQT1JUX09QRVJBVElPTl9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90aWNTeXN0ZW1JbXBsIDxlbT5Sb2JvdGljIFN5c3RlbTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90aWNTeXN0ZW1JbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0Um9ib3RpY1N5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBST0JPVElDX1NZU1RFTSA9IDE0OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBST0JPVElDX1NZU1RFTV9fQkFTRV9DTEFTUyA9IFNZU1RFTV9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYXRpdmU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBST0JPVElDX1NZU1RFTV9fTkFUSVZFID0gU1lTVEVNX19OQVRJVkU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBQYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUk9CT1RJQ19TWVNURU1fX0xJQlJBUllfUEFUSCA9IFNZU1RFTV9fTElCUkFSWV9QQVRIOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgQ29tcG9uZW50IE5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBST0JPVElDX1NZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRSA9IFNZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbGlhczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFJPQk9USUNfU1lTVEVNX19BTElBUyA9IFNZU1RFTV9fQUxJQVM7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgUG9zaXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBST0JPVElDX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04gPSBTWVNURU1fRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgT3JpZW50YXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBST0JPVElDX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04gPSBTWVNURU1fRkVBVFVSRV9DT1VOVCArIDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+Um9ib3RpYyBTeXN0ZW08L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUk9CT1RJQ19TWVNURU1fRkVBVFVSRV9DT1VOVCA9IFNZU1RFTV9GRUFUVVJFX0NPVU5UICsgMjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5Sb2JvdGljIFN5c3RlbTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBST0JPVElDX1NZU1RFTV9PUEVSQVRJT05fQ09VTlQgPSBTWVNURU1fT1BFUkFUSU9OX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWN0dWF0b3JTeXN0ZW1JbXBsIDxlbT5BY3R1YXRvciBTeXN0ZW08L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BY3R1YXRvclN5c3RlbUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRBY3R1YXRvclN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBBQ1RVQVRPUl9TWVNURU0gPSAxMzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQUNUVUFUT1JfU1lTVEVNX19CQVNFX0NMQVNTID0gUk9CT1RJQ19TWVNURU1fX0JBU0VfQ0xBU1M7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TmF0aXZlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQUNUVUFUT1JfU1lTVEVNX19OQVRJVkUgPSBST0JPVElDX1NZU1RFTV9fTkFUSVZFOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgUGF0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEFDVFVBVE9SX1NZU1RFTV9fTElCUkFSWV9QQVRIID0gUk9CT1RJQ19TWVNURU1fX0xJQlJBUllfUEFUSDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQUNUVUFUT1JfU1lTVEVNX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FID0gUk9CT1RJQ19TWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QWxpYXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBBQ1RVQVRPUl9TWVNURU1fX0FMSUFTID0gUk9CT1RJQ19TWVNURU1fX0FMSUFTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIFBvc2l0aW9uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQUNUVUFUT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTiA9IFJPQk9USUNfU1lTVEVNX19MT0NBTF9QT1NJVElPTjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEFDVFVBVE9SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04gPSBST0JPVElDX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT047CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+QWN0dWF0b3IgU3lzdGVtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEFDVFVBVE9SX1NZU1RFTV9GRUFUVVJFX0NPVU5UID0gUk9CT1RJQ19TWVNURU1fRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+QWN0dWF0b3IgU3lzdGVtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEFDVFVBVE9SX1NZU1RFTV9PUEVSQVRJT05fQ09VTlQgPSBST0JPVElDX1NZU1RFTV9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5DeWJlclBoeXNpY2FsU3lzdGVtSW1wbCA8ZW0+Q3liZXIgUGh5c2ljYWwgU3lzdGVtPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQ3liZXJQaHlzaWNhbFN5c3RlbUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRDeWJlclBoeXNpY2FsU3lzdGVtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IENZQkVSX1BIWVNJQ0FMX1NZU1RFTSA9IDE1OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDWUJFUl9QSFlTSUNBTF9TWVNURU1fX0JBU0VfQ0xBU1MgPSBTWVNURU1fX0JBU0VfQ0xBU1M7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TmF0aXZlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ1lCRVJfUEhZU0lDQUxfU1lTVEVNX19OQVRJVkUgPSBTWVNURU1fX05BVElWRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IFBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDWUJFUl9QSFlTSUNBTF9TWVNURU1fX0xJQlJBUllfUEFUSCA9IFNZU1RFTV9fTElCUkFSWV9QQVRIOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgQ29tcG9uZW50IE5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDWUJFUl9QSFlTSUNBTF9TWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUUgPSBTWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QWxpYXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDWUJFUl9QSFlTSUNBTF9TWVNURU1fX0FMSUFTID0gU1lTVEVNX19BTElBUzsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5DeWJlciBQaHlzaWNhbCBTeXN0ZW08L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ1lCRVJfUEhZU0lDQUxfU1lTVEVNX0ZFQVRVUkVfQ09VTlQgPSBTWVNURU1fRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+Q3liZXIgUGh5c2ljYWwgU3lzdGVtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IENZQkVSX1BIWVNJQ0FMX1NZU1RFTV9PUEVSQVRJT05fQ09VTlQgPSBTWVNURU1fT1BFUkFUSU9OX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU2Vuc29yU3lzdGVtSW1wbCA8ZW0+U2Vuc29yIFN5c3RlbTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNlbnNvclN5c3RlbUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRTZW5zb3JTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgU0VOU09SX1NZU1RFTSA9IDE2OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTID0gUk9CT1RJQ19TWVNURU1fX0JBU0VfQ0xBU1M7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TmF0aXZlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU0VOU09SX1NZU1RFTV9fTkFUSVZFID0gUk9CT1RJQ19TWVNURU1fX05BVElWRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IFBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTRU5TT1JfU1lTVEVNX19MSUJSQVJZX1BBVEggPSBST0JPVElDX1NZU1RFTV9fTElCUkFSWV9QQVRIOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgQ29tcG9uZW50IE5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTRU5TT1JfU1lTVEVNX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FID0gUk9CT1RJQ19TWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QWxpYXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTRU5TT1JfU1lTVEVNX19BTElBUyA9IFJPQk9USUNfU1lTVEVNX19BTElBUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBQb3NpdGlvbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OID0gUk9CT1RJQ19TWVNURU1fX0xPQ0FMX1BPU0lUSU9OOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIE9yaWVudGF0aW9uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04gPSBST0JPVElDX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT047CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RnJlcXVlbmN5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZID0gUk9CT1RJQ19TWVNURU1fRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SWRlbnRpZmllcjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNFTlNPUl9TWVNURU1fX0lERU5USUZJRVIgPSBST0JPVElDX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5TZW5zb3IgU3lzdGVtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCA9IFJPQk9USUNfU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyAyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPlNlbnNvciBTeXN0ZW08L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU0VOU09SX1NZU1RFTV9PUEVSQVRJT05fQ09VTlQgPSBST0JPVElDX1NZU1RFTV9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5IYXJkd2FyZUltcGwgPGVtPkhhcmR3YXJlPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuSGFyZHdhcmVJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0SGFyZHdhcmUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgSEFSRFdBUkUgPSAxNzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSEFSRFdBUkVfX0JBU0VfQ0xBU1MgPSBTWVNURU1fX0JBU0VfQ0xBU1M7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TmF0aXZlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSEFSRFdBUkVfX05BVElWRSA9IFNZU1RFTV9fTkFUSVZFOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgUGF0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEhBUkRXQVJFX19MSUJSQVJZX1BBVEggPSBTWVNURU1fX0xJQlJBUllfUEFUSDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSEFSRFdBUkVfX0xJQlJBUllfQ09NUE9ORU5UX05BTUUgPSBTWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QWxpYXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBIQVJEV0FSRV9fQUxJQVMgPSBTWVNURU1fX0FMSUFTOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkhhcmR3YXJlPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEhBUkRXQVJFX0ZFQVRVUkVfQ09VTlQgPSBTWVNURU1fRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+SGFyZHdhcmU8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSEFSRFdBUkVfT1BFUkFUSU9OX0NPVU5UID0gU1lTVEVNX09QRVJBVElPTl9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNvZnR3YXJlSW1wbCA8ZW0+U29mdHdhcmU8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Tb2Z0d2FyZUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRTb2Z0d2FyZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBTT0ZUV0FSRSA9IDE4OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTT0ZUV0FSRV9fQkFTRV9DTEFTUyA9IFNZU1RFTV9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYXRpdmU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTT0ZUV0FSRV9fTkFUSVZFID0gU1lTVEVNX19OQVRJVkU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBQYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU09GVFdBUkVfX0xJQlJBUllfUEFUSCA9IFNZU1RFTV9fTElCUkFSWV9QQVRIOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgQ29tcG9uZW50IE5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTT0ZUV0FSRV9fTElCUkFSWV9DT01QT05FTlRfTkFNRSA9IFNZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbGlhczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNPRlRXQVJFX19BTElBUyA9IFNZU1RFTV9fQUxJQVM7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SXMgUGVyaW9kaWM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTT0ZUV0FSRV9fSVNfUEVSSU9ESUMgPSBTWVNURU1fRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UGVyaW9kPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU09GVFdBUkVfX1BFUklPRCA9IFNZU1RFTV9GRUFUVVJFX0NPVU5UICsgMTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Qcmlvcml0eTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNPRlRXQVJFX19QUklPUklUWSA9IFNZU1RFTV9GRUFUVVJFX0NPVU5UICsgMjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5EZWFkbGluZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNPRlRXQVJFX19ERUFETElORSA9IFNZU1RFTV9GRUFUVVJFX0NPVU5UICsgMzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5XY2V0PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU09GVFdBUkVfX1dDRVQgPSBTWVNURU1fRkVBVFVSRV9DT1VOVCArIDQ7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+U29mdHdhcmU8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU09GVFdBUkVfRkVBVFVSRV9DT1VOVCA9IFNZU1RFTV9GRUFUVVJFX0NPVU5UICsgNTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5Tb2Z0d2FyZTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTT0ZUV0FSRV9PUEVSQVRJT05fQ09VTlQgPSBTWVNURU1fT1BFUkFUSU9OX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuRW5naW5lU3lzdGVtSW1wbCA8ZW0+RW5naW5lIFN5c3RlbTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkVuZ2luZVN5c3RlbUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRFbmdpbmVTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgRU5HSU5FX1NZU1RFTSA9IDE5OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBFTkdJTkVfU1lTVEVNX19CQVNFX0NMQVNTID0gQUNUVUFUT1JfU1lTVEVNX19CQVNFX0NMQVNTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk5hdGl2ZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEVOR0lORV9TWVNURU1fX05BVElWRSA9IEFDVFVBVE9SX1NZU1RFTV9fTkFUSVZFOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgUGF0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEVOR0lORV9TWVNURU1fX0xJQlJBUllfUEFUSCA9IEFDVFVBVE9SX1NZU1RFTV9fTElCUkFSWV9QQVRIOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgQ29tcG9uZW50IE5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBFTkdJTkVfU1lTVEVNX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FID0gQUNUVUFUT1JfU1lTVEVNX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkFsaWFzPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgRU5HSU5FX1NZU1RFTV9fQUxJQVMgPSBBQ1RVQVRPUl9TWVNURU1fX0FMSUFTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIFBvc2l0aW9uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgRU5HSU5FX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04gPSBBQ1RVQVRPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIE9yaWVudGF0aW9uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgRU5HSU5FX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04gPSBBQ1RVQVRPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlZlaGljbGUgVHJhY3Rpb248L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBFTkdJTkVfU1lTVEVNX19WRUhJQ0xFX1RSQUNUSU9OID0gQUNUVUFUT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1heCBFbmdpbmUgRm9yY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBFTkdJTkVfU1lTVEVNX19NQVhfRU5HSU5FX0ZPUkNFID0gQUNUVUFUT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyAxOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1heCBCcmVha2luZyBGb3JjZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEVOR0lORV9TWVNURU1fX01BWF9CUkVBS0lOR19GT1JDRSA9IEFDVFVBVE9SX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgMjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5NYXggQWxsb3dlZCBTdGVlcmluZzwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEVOR0lORV9TWVNURU1fX01BWF9BTExPV0VEX1NURUVSSU5HID0gQUNUVUFUT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyAzOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1heCBBbGxvd2VkIFZlbG9jaXR5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgRU5HSU5FX1NZU1RFTV9fTUFYX0FMTE9XRURfVkVMT0NJVFkgPSBBQ1RVQVRPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCArIDQ7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+R2VhciByYXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBFTkdJTkVfU1lTVEVNX19HRUFSX1JBVElPTiA9IEFDVFVBVE9SX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgNTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5FbmdpbmUgU3lzdGVtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEVOR0lORV9TWVNURU1fRkVBVFVSRV9DT1VOVCA9IEFDVFVBVE9SX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgNjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5FbmdpbmUgU3lzdGVtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEVOR0lORV9TWVNURU1fT1BFUkFUSU9OX0NPVU5UID0gQUNUVUFUT1JfU1lTVEVNX09QRVJBVElPTl9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkxvY29tb3Rpb25TeXN0ZW1JbXBsIDxlbT5Mb2NvbW90aW9uIFN5c3RlbTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkxvY29tb3Rpb25TeXN0ZW1JbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0TG9jb21vdGlvblN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBMT0NPTU9USU9OX1NZU1RFTSA9IDIxOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMT0NPTU9USU9OX1NZU1RFTV9fQkFTRV9DTEFTUyA9IEFDVFVBVE9SX1NZU1RFTV9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYXRpdmU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMT0NPTU9USU9OX1NZU1RFTV9fTkFUSVZFID0gQUNUVUFUT1JfU1lTVEVNX19OQVRJVkU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBQYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTE9DT01PVElPTl9TWVNURU1fX0xJQlJBUllfUEFUSCA9IEFDVFVBVE9SX1NZU1RFTV9fTElCUkFSWV9QQVRIOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgQ29tcG9uZW50IE5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMT0NPTU9USU9OX1NZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRSA9IEFDVFVBVE9SX1NZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbGlhczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExPQ09NT1RJT05fU1lTVEVNX19BTElBUyA9IEFDVFVBVE9SX1NZU1RFTV9fQUxJQVM7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgUG9zaXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMT0NPTU9USU9OX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04gPSBBQ1RVQVRPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIE9yaWVudGF0aW9uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTE9DT01PVElPTl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OID0gQUNUVUFUT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5Mb2NvbW90aW9uIFN5c3RlbTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMT0NPTU9USU9OX1NZU1RFTV9GRUFUVVJFX0NPVU5UID0gQUNUVUFUT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkxvY29tb3Rpb24gU3lzdGVtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExPQ09NT1RJT05fU1lTVEVNX09QRVJBVElPTl9DT1VOVCA9IEFDVFVBVE9SX1NZU1RFTV9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TdGVlcmVkV2hlZWxTeXN0ZW1JbXBsIDxlbT5TdGVlcmVkIFdoZWVsIFN5c3RlbTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN0ZWVyZWRXaGVlbFN5c3RlbUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRTdGVlcmVkV2hlZWxTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgU1RFRVJFRF9XSEVFTF9TWVNURU0gPSAyMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1RFRVJFRF9XSEVFTF9TWVNURU1fX0JBU0VfQ0xBU1MgPSBMT0NPTU9USU9OX1NZU1RFTV9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYXRpdmU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTVEVFUkVEX1dIRUVMX1NZU1RFTV9fTkFUSVZFID0gTE9DT01PVElPTl9TWVNURU1fX05BVElWRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IFBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTVEVFUkVEX1dIRUVMX1NZU1RFTV9fTElCUkFSWV9QQVRIID0gTE9DT01PVElPTl9TWVNURU1fX0xJQlJBUllfUEFUSDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1RFRVJFRF9XSEVFTF9TWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUUgPSBMT0NPTU9USU9OX1NZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbGlhczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNURUVSRURfV0hFRUxfU1lTVEVNX19BTElBUyA9IExPQ09NT1RJT05fU1lTVEVNX19BTElBUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBQb3NpdGlvbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNURUVSRURfV0hFRUxfU1lTVEVNX19MT0NBTF9QT1NJVElPTiA9IExPQ09NT1RJT05fU1lTVEVNX19MT0NBTF9QT1NJVElPTjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNURUVSRURfV0hFRUxfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiA9IExPQ09NT1RJT05fU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5XaGVlbCBSYWRpdXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfUkFESVVTID0gTE9DT01PVElPTl9TWVNURU1fRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgV2lkdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfV0lEVEggPSBMT0NPTU9USU9OX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgMTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TdXNwZW5zaW9uIFJlc3QgTGVuZ3RoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1RFRVJFRF9XSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fUkVTVF9MRU5HVEggPSBMT0NPTU9USU9OX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgMjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5XaGVlbCBDb25uZWN0aW9uIEhlaWdodDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9DT05ORUNUSU9OX0hFSUdIVCA9IExPQ09NT1RJT05fU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyAzOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlR5cGUgT2YgV2hlZWw8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTVEVFUkVEX1dIRUVMX1NZU1RFTV9fVFlQRV9PRl9XSEVFTCA9IExPQ09NT1RJT05fU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyA0OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPldoZWVsIFZlbG9jaXR5IFBJIERrcDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ES1AgPSBMT0NPTU9USU9OX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgNTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5XaGVlbCBWZWxvY2l0eSBQSSBEa2k8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtJID0gTE9DT01PVElPTl9TWVNURU1fRkVBVFVSRV9DT1VOVCArIDY7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRGtkPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLRCA9IExPQ09NT1RJT05fU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyA3OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPldoZWVsIFN0ZWVyaW5nIFBJIERrcDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9TVEVFUklOR19QSV9ES1AgPSBMT0NPTU9USU9OX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgODsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5XaGVlbCBTdGVlcmluZyBQSSBEa2Q8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfU1RFRVJJTkdfUElfREtEID0gTE9DT01PVElPTl9TWVNURU1fRkVBVFVSRV9DT1VOVCArIDk7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgRnJpY3Rpb248L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfRlJJQ1RJT04gPSBMT0NPTU9USU9OX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgMTA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+U3VzcGVuc2lvbiBTdGlmZm5lc3M8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTVEVFUkVEX1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9TVElGRk5FU1MgPSBMT0NPTU9USU9OX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgMTE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+U3VzcGVuc2lvbiBEYW1waW5nPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1RFRVJFRF9XSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fREFNUElORyA9IExPQ09NT1RJT05fU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyAxMjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TdXNwZW5zaW9uIENvbXByZXNzaW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1RFRVJFRF9XSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fQ09NUFJFU1NJT04gPSBMT0NPTU9USU9OX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgMTM7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRG1heCBTdW08L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9TVU0gPSBMT0NPTU9USU9OX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgMTQ7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRG1heCBWYWw8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9WQUwgPSBMT0NPTU9USU9OX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgMTU7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+U3RlZXJlZCBXaGVlbCBTeXN0ZW08L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1RFRVJFRF9XSEVFTF9TWVNURU1fRkVBVFVSRV9DT1VOVCA9IExPQ09NT1RJT05fU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyAxNjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5TdGVlcmVkIFdoZWVsIFN5c3RlbTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTVEVFUkVEX1dIRUVMX1NZU1RFTV9PUEVSQVRJT05fQ09VTlQgPSBMT0NPTU9USU9OX1NZU1RFTV9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5JbWFnZVNlbnNvclN5c3RlbUltcGwgPGVtPkltYWdlIFNlbnNvciBTeXN0ZW08L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5JbWFnZVNlbnNvclN5c3RlbUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRJbWFnZVNlbnNvclN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBJTUFHRV9TRU5TT1JfU1lTVEVNID0gMjI7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElNQUdFX1NFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1MgPSBTRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk5hdGl2ZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElNQUdFX1NFTlNPUl9TWVNURU1fX05BVElWRSA9IFNFTlNPUl9TWVNURU1fX05BVElWRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IFBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBJTUFHRV9TRU5TT1JfU1lTVEVNX19MSUJSQVJZX1BBVEggPSBTRU5TT1JfU1lTVEVNX19MSUJSQVJZX1BBVEg7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBDb21wb25lbnQgTmFtZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElNQUdFX1NFTlNPUl9TWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUUgPSBTRU5TT1JfU1lTVEVNX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkFsaWFzPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU1BR0VfU0VOU09SX1NZU1RFTV9fQUxJQVMgPSBTRU5TT1JfU1lTVEVNX19BTElBUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBQb3NpdGlvbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElNQUdFX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OID0gU0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT047CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgT3JpZW50YXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBJTUFHRV9TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiA9IFNFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkZyZXF1ZW5jeTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElNQUdFX1NFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWSA9IFNFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5JZGVudGlmaWVyPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU1BR0VfU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUiA9IFNFTlNPUl9TWVNURU1fX0lERU5USUZJRVI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+SW1hZ2UgU2Vuc29yIFN5c3RlbTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBJTUFHRV9TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQgPSBTRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkltYWdlIFNlbnNvciBTeXN0ZW08L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU1BR0VfU0VOU09SX1NZU1RFTV9PUEVSQVRJT05fQ09VTlQgPSBTRU5TT1JfU1lTVEVNX09QRVJBVElPTl9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkNhbWVyYVN5c3RlbUltcGwgPGVtPkNhbWVyYSBTeXN0ZW08L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5DYW1lcmFTeXN0ZW1JbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0Q2FtZXJhU3lzdGVtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IENBTUVSQV9TWVNURU0gPSAyMzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0FNRVJBX1NZU1RFTV9fQkFTRV9DTEFTUyA9IElNQUdFX1NFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1M7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TmF0aXZlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0FNRVJBX1NZU1RFTV9fTkFUSVZFID0gSU1BR0VfU0VOU09SX1NZU1RFTV9fTkFUSVZFOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgUGF0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IENBTUVSQV9TWVNURU1fX0xJQlJBUllfUEFUSCA9IElNQUdFX1NFTlNPUl9TWVNURU1fX0xJQlJBUllfUEFUSDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0FNRVJBX1NZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRSA9IElNQUdFX1NFTlNPUl9TWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QWxpYXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDQU1FUkFfU1lTVEVNX19BTElBUyA9IElNQUdFX1NFTlNPUl9TWVNURU1fX0FMSUFTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIFBvc2l0aW9uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0FNRVJBX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04gPSBJTUFHRV9TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IENBTUVSQV9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OID0gSU1BR0VfU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT047CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RnJlcXVlbmN5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0FNRVJBX1NZU1RFTV9fRlJFUVVFTkNZID0gSU1BR0VfU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPklkZW50aWZpZXI8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDQU1FUkFfU1lTVEVNX19JREVOVElGSUVSID0gSU1BR0VfU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5XaWR0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IENBTUVSQV9TWVNURU1fX1dJRFRIID0gSU1BR0VfU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDQU1FUkFfU1lTVEVNX19IRUlHSFQgPSBJTUFHRV9TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyAxOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkFscGhhIHU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDQU1FUkFfU1lTVEVNX19BTFBIQV9VID0gSU1BR0VfU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgMjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbHBoYSB2PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0FNRVJBX1NZU1RFTV9fQUxQSEFfViA9IElNQUdFX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCArIDM7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+VTA8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDQU1FUkFfU1lTVEVNX19VMCA9IElNQUdFX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCArIDQ7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+VjA8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDQU1FUkFfU1lTVEVNX19WMCA9IElNQUdFX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCArIDU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+Q29sb3IgZm9ybWF0PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0FNRVJBX1NZU1RFTV9fQ09MT1JfRk9STUFUID0gSU1BR0VfU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgNjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5UcmFuc2xhdGU8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDQU1FUkFfU1lTVEVNX19UUkFOU0xBVEUgPSBJTUFHRV9TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyA3OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlJvdGF0ZTwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IENBTUVSQV9TWVNURU1fX1JPVEFURSA9IElNQUdFX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCArIDg7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+Q2FtZXJhIFN5c3RlbTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDQU1FUkFfU1lTVEVNX0ZFQVRVUkVfQ09VTlQgPSBJTUFHRV9TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyA5OworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkNhbWVyYSBTeXN0ZW08L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0FNRVJBX1NZU1RFTV9PUEVSQVRJT05fQ09VTlQgPSBJTUFHRV9TRU5TT1JfU1lTVEVNX09QRVJBVElPTl9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwgPGVtPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNID0gMjQ7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fQkFTRV9DTEFTUyA9IFNFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1M7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TmF0aXZlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19OQVRJVkUgPSBTRU5TT1JfU1lTVEVNX19OQVRJVkU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBQYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19MSUJSQVJZX1BBVEggPSBTRU5TT1JfU1lTVEVNX19MSUJSQVJZX1BBVEg7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBDb21wb25lbnQgTmFtZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRSA9IFNFTlNPUl9TWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QWxpYXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0FMSUFTID0gU0VOU09SX1NZU1RFTV9fQUxJQVM7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgUG9zaXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OID0gU0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT047CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgT3JpZW50YXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OID0gU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT047CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RnJlcXVlbmN5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1kgPSBTRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1k7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SWRlbnRpZmllcjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUiA9IFNFTlNPUl9TWVNURU1fX0lERU5USUZJRVI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+T2JqZWN0IERldGVjdGlvbiBTZW5zb3IgU3lzdGVtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UID0gU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5PYmplY3QgRGV0ZWN0aW9uIFNlbnNvciBTeXN0ZW08L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX09QRVJBVElPTl9DT1VOVCA9IFNFTlNPUl9TWVNURU1fT1BFUkFUSU9OX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsIDxlbT5PYmplY3QgVHJhY2tpbmcgU2Vuc29yIFN5c3RlbTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldE9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IE9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNID0gMjU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTID0gU0VOU09SX1NZU1RFTV9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYXRpdmU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTV9fTkFUSVZFID0gU0VOU09SX1NZU1RFTV9fTkFUSVZFOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgUGF0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19MSUJSQVJZX1BBVEggPSBTRU5TT1JfU1lTVEVNX19MSUJSQVJZX1BBVEg7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBDb21wb25lbnQgTmFtZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FID0gU0VOU09SX1NZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbGlhczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNX19BTElBUyA9IFNFTlNPUl9TWVNURU1fX0FMSUFTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIFBvc2l0aW9uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OID0gU0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT047CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgT3JpZW50YXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04gPSBTRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5GcmVxdWVuY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZID0gU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPklkZW50aWZpZXI8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPQkpFQ1RfVFJBQ0tJTkdfU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUiA9IFNFTlNPUl9TWVNURU1fX0lERU5USUZJRVI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+T2JqZWN0IFRyYWNraW5nIFNlbnNvciBTeXN0ZW08L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCA9IFNFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+T2JqZWN0IFRyYWNraW5nIFNlbnNvciBTeXN0ZW08L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU1fT1BFUkFUSU9OX0NPVU5UID0gU0VOU09SX1NZU1RFTV9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5MaWRhclN5c3RlbUltcGwgPGVtPkxpZGFyIFN5c3RlbTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkxpZGFyU3lzdGVtSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldExpZGFyU3lzdGVtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IExJREFSX1NZU1RFTSA9IDI2OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMSURBUl9TWVNURU1fX0JBU0VfQ0xBU1MgPSBPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1M7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TmF0aXZlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTElEQVJfU1lTVEVNX19OQVRJVkUgPSBPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX05BVElWRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IFBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMSURBUl9TWVNURU1fX0xJQlJBUllfUEFUSCA9IE9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fTElCUkFSWV9QQVRIOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgQ29tcG9uZW50IE5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMSURBUl9TWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUUgPSBPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QWxpYXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMSURBUl9TWVNURU1fX0FMSUFTID0gT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19BTElBUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBQb3NpdGlvbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExJREFSX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04gPSBPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIE9yaWVudGF0aW9uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTElEQVJfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiA9IE9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT047CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RnJlcXVlbmN5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTElEQVJfU1lTVEVNX19GUkVRVUVOQ1kgPSBPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5JZGVudGlmaWVyPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTElEQVJfU1lTVEVNX19JREVOVElGSUVSID0gT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk5iIExheWVyczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExJREFSX1NZU1RFTV9fTkJfTEFZRVJTID0gT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxheWVyIEFuZ2xlIE1pbjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExJREFSX1NZU1RFTV9fTEFZRVJfQU5HTEVfTUlOID0gT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyAxOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxheWVyIEFuZ2xlIFN0ZXA8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMSURBUl9TWVNURU1fX0xBWUVSX0FOR0xFX1NURVAgPSBPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCArIDI7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+Tm9pc2U8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMSURBUl9TWVNURU1fX05PSVNFID0gT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyAzOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlNpZ21hIE5vaXNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTElEQVJfU1lTVEVNX19TSUdNQV9OT0lTRSA9IE9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgNDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbmdsZSBtaW48L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMSURBUl9TWVNURU1fX0FOR0xFX01JTiA9IE9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgNTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbmdsZSBtYXg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMSURBUl9TWVNURU1fX0FOR0xFX01BWCA9IE9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgNjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5UaW1lIGluY3JlbWVudDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExJREFSX1NZU1RFTV9fVElNRV9JTkNSRU1FTlQgPSBPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCArIDc7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+U2NhbiB0aW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTElEQVJfU1lTVEVNX19TQ0FOX1RJTUUgPSBPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCArIDg7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UmFuZ2UgbWluPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTElEQVJfU1lTVEVNX19SQU5HRV9NSU4gPSBPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCArIDk7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UmFuZ2UgbWF4PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTElEQVJfU1lTVEVNX19SQU5HRV9NQVggPSBPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCArIDEwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk5iIFJheXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMSURBUl9TWVNURU1fX05CX1JBWVMgPSBPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCArIDExOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkxpZGFyIFN5c3RlbTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMSURBUl9TWVNURU1fRkVBVFVSRV9DT1VOVCA9IE9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgMTI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+TGlkYXIgU3lzdGVtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExJREFSX1NZU1RFTV9PUEVSQVRJT05fQ09VTlQgPSBPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fT1BFUkFUSU9OX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbCA8ZW0+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IExPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNID0gMjc7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTID0gU0VOU09SX1NZU1RFTV9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYXRpdmU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fTkFUSVZFID0gU0VOU09SX1NZU1RFTV9fTkFUSVZFOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgUGF0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19MSUJSQVJZX1BBVEggPSBTRU5TT1JfU1lTVEVNX19MSUJSQVJZX1BBVEg7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBDb21wb25lbnQgTmFtZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FID0gU0VOU09SX1NZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbGlhczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19BTElBUyA9IFNFTlNPUl9TWVNURU1fX0FMSUFTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIFBvc2l0aW9uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OID0gU0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT047CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgT3JpZW50YXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04gPSBTRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5GcmVxdWVuY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZID0gU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPklkZW50aWZpZXI8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUiA9IFNFTlNPUl9TWVNURU1fX0lERU5USUZJRVI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCA9IFNFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fT1BFUkFUSU9OX0NPVU5UID0gU0VOU09SX1NZU1RFTV9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5HUFNTeXN0ZW1JbXBsIDxlbT5HUFMgU3lzdGVtPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuR1BTU3lzdGVtSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldEdQU1N5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBHUFNfU1lTVEVNID0gMjg7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEdQU19TWVNURU1fX0JBU0VfQ0xBU1MgPSBMT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYXRpdmU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHUFNfU1lTVEVNX19OQVRJVkUgPSBMT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fTkFUSVZFOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgUGF0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEdQU19TWVNURU1fX0xJQlJBUllfUEFUSCA9IExPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19MSUJSQVJZX1BBVEg7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBDb21wb25lbnQgTmFtZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEdQU19TWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUUgPSBMT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbGlhczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEdQU19TWVNURU1fX0FMSUFTID0gTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fX0FMSUFTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIFBvc2l0aW9uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR1BTX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04gPSBMT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT047CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgT3JpZW50YXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHUFNfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiA9IExPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5GcmVxdWVuY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHUFNfU1lTVEVNX19GUkVRVUVOQ1kgPSBMT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPklkZW50aWZpZXI8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHUFNfU1lTVEVNX19JREVOVElGSUVSID0gTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fX0lERU5USUZJRVI7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+T3JpZ2luIFBvc2l0aW9uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR1BTX1NZU1RFTV9fT1JJR0lOX1BPU0lUSU9OID0gTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+R1BTIFN5c3RlbTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHUFNfU1lTVEVNX0ZFQVRVUkVfQ09VTlQgPSBMT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5HUFMgU3lzdGVtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEdQU19TWVNURU1fT1BFUkFUSU9OX0NPVU5UID0gTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fT1BFUkFUSU9OX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWxnb3JpdGhtTGlicmFyeUltcGwgPGVtPkFsZ29yaXRobSBMaWJyYXJ5PC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWxnb3JpdGhtTGlicmFyeUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRBbGdvcml0aG1MaWJyYXJ5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IEFMR09SSVRITV9MSUJSQVJZID0gMjk7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEFMR09SSVRITV9MSUJSQVJZX19CQVNFX0NMQVNTID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5QYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQUxHT1JJVEhNX0xJQlJBUllfX1BBVEggPSAxOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkFsZ29yaXRobSBMaWJyYXJ5PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEFMR09SSVRITV9MSUJSQVJZX0ZFQVRVUkVfQ09VTlQgPSAyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkFsZ29yaXRobSBMaWJyYXJ5PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEFMR09SSVRITV9MSUJSQVJZX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNlbnNvckRyaXZlckltcGwgPGVtPlNlbnNvciBEcml2ZXI8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TZW5zb3JEcml2ZXJJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0U2Vuc29yRHJpdmVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFNFTlNPUl9EUklWRVIgPSAzMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU0VOU09SX0RSSVZFUl9fQkFTRV9DTEFTUyA9IFNPRlRXQVJFX19CQVNFX0NMQVNTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk5hdGl2ZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNFTlNPUl9EUklWRVJfX05BVElWRSA9IFNPRlRXQVJFX19OQVRJVkU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBQYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU0VOU09SX0RSSVZFUl9fTElCUkFSWV9QQVRIID0gU09GVFdBUkVfX0xJQlJBUllfUEFUSDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU0VOU09SX0RSSVZFUl9fTElCUkFSWV9DT01QT05FTlRfTkFNRSA9IFNPRlRXQVJFX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkFsaWFzPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU0VOU09SX0RSSVZFUl9fQUxJQVMgPSBTT0ZUV0FSRV9fQUxJQVM7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SXMgUGVyaW9kaWM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTRU5TT1JfRFJJVkVSX19JU19QRVJJT0RJQyA9IFNPRlRXQVJFX19JU19QRVJJT0RJQzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5QZXJpb2Q8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTRU5TT1JfRFJJVkVSX19QRVJJT0QgPSBTT0ZUV0FSRV9fUEVSSU9EOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlByaW9yaXR5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU0VOU09SX0RSSVZFUl9fUFJJT1JJVFkgPSBTT0ZUV0FSRV9fUFJJT1JJVFk7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RGVhZGxpbmU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTRU5TT1JfRFJJVkVSX19ERUFETElORSA9IFNPRlRXQVJFX19ERUFETElORTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5XY2V0PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU0VOU09SX0RSSVZFUl9fV0NFVCA9IFNPRlRXQVJFX19XQ0VUOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlNlbnNvciBEcml2ZXI8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU0VOU09SX0RSSVZFUl9GRUFUVVJFX0NPVU5UID0gU09GVFdBUkVfRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+U2Vuc29yIERyaXZlcjwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTRU5TT1JfRFJJVkVSX09QRVJBVElPTl9DT1VOVCA9IFNPRlRXQVJFX09QRVJBVElPTl9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEVOVklST05NRU5UX19CQVNFX0NMQVNTID0gMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5FbnZpcm9ubWVudDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBFTlZJUk9OTUVOVF9GRUFUVVJFX0NPVU5UID0gMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5FbnZpcm9ubWVudDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBFTlZJUk9OTUVOVF9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5CdWlsZGluZ0ltcGwgPGVtPkJ1aWxkaW5nPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQnVpbGRpbmdJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0QnVpbGRpbmcoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgQlVJTERJTkcgPSAzMjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBCVUlMRElOR19fSEVJR0hUID0gUEhZU0lDQUxfT0JKRUNUX19IRUlHSFQ7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TWFzczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEJVSUxESU5HX19NQVNTID0gUEhZU0lDQUxfT0JKRUNUX19NQVNTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBCVUlMRElOR19fQkFTRV9DTEFTUyA9IFBIWVNJQ0FMX09CSkVDVF9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5CdWlsZGluZzwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBCVUlMRElOR19GRUFUVVJFX0NPVU5UID0gUEhZU0lDQUxfT0JKRUNUX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkJ1aWxkaW5nPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEJVSUxESU5HX09QRVJBVElPTl9DT1VOVCA9IFBIWVNJQ0FMX09CSkVDVF9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkhlaWdodDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNVUkZBQ0VfX0hFSUdIVCA9IFBIWVNJQ0FMX09CSkVDVF9fSEVJR0hUOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1hc3M8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTVVJGQUNFX19NQVNTID0gUEhZU0lDQUxfT0JKRUNUX19NQVNTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTVVJGQUNFX19CQVNFX0NMQVNTID0gUEhZU0lDQUxfT0JKRUNUX19CQVNFX0NMQVNTOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlN1cmZhY2U8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1VSRkFDRV9GRUFUVVJFX0NPVU5UID0gUEhZU0lDQUxfT0JKRUNUX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPlN1cmZhY2U8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1VSRkFDRV9PUEVSQVRJT05fQ09VTlQgPSBQSFlTSUNBTF9PQkpFQ1RfT1BFUkFUSU9OX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGxhbmV0SW1wbCA8ZW0+UGxhbmV0PC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGxhbmV0SW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFBsYW5ldCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBQTEFORVQgPSAzNDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQTEFORVRfX0hFSUdIVCA9IFBIWVNJQ0FMX09CSkVDVF9fSEVJR0hUOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1hc3M8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQTEFORVRfX01BU1MgPSBQSFlTSUNBTF9PQkpFQ1RfX01BU1M7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBMQU5FVF9fQkFTRV9DTEFTUyA9IFBIWVNJQ0FMX09CSkVDVF9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5QbGFuZXQ8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUExBTkVUX0ZFQVRVUkVfQ09VTlQgPSBQSFlTSUNBTF9PQkpFQ1RfRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+UGxhbmV0PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBMQU5FVF9PUEVSQVRJT05fQ09VTlQgPSBQSFlTSUNBTF9PQkpFQ1RfT1BFUkFUSU9OX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuR3JvdW5kSW1wbCA8ZW0+R3JvdW5kPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuR3JvdW5kSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldEdyb3VuZCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBHUk9VTkQgPSAzNjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHUk9VTkRfX0hFSUdIVCA9IFNVUkZBQ0VfX0hFSUdIVDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5NYXNzPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR1JPVU5EX19NQVNTID0gU1VSRkFDRV9fTUFTUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR1JPVU5EX19CQVNFX0NMQVNTID0gU1VSRkFDRV9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5Hcm91bmQ8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR1JPVU5EX0ZFQVRVUkVfQ09VTlQgPSBTVVJGQUNFX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkdyb3VuZDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHUk9VTkRfT1BFUkFUSU9OX0NPVU5UID0gU1VSRkFDRV9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5MYW5kU3VyZmFjZUltcGwgPGVtPkxhbmQgU3VyZmFjZTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkxhbmRTdXJmYWNlSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldExhbmRTdXJmYWNlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IExBTkRfU1VSRkFDRSA9IDM1OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkhlaWdodDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExBTkRfU1VSRkFDRV9fSEVJR0hUID0gR1JPVU5EX19IRUlHSFQ7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TWFzczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExBTkRfU1VSRkFDRV9fTUFTUyA9IEdST1VORF9fTUFTUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTEFORF9TVVJGQUNFX19CQVNFX0NMQVNTID0gR1JPVU5EX19CQVNFX0NMQVNTOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkxhbmQgU3VyZmFjZTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMQU5EX1NVUkZBQ0VfRkVBVFVSRV9DT1VOVCA9IEdST1VORF9GRUFUVVJFX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5MYW5kIFN1cmZhY2U8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTEFORF9TVVJGQUNFX09QRVJBVElPTl9DT1VOVCA9IEdST1VORF9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5GbG9vckltcGwgPGVtPkZsb29yPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuRmxvb3JJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0Rmxvb3IoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgRkxPT1IgPSAzNzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBGTE9PUl9fSEVJR0hUID0gR1JPVU5EX19IRUlHSFQ7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TWFzczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEZMT09SX19NQVNTID0gR1JPVU5EX19NQVNTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBGTE9PUl9fQkFTRV9DTEFTUyA9IEdST1VORF9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5GbG9vcjwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBGTE9PUl9GRUFUVVJFX0NPVU5UID0gR1JPVU5EX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkZsb29yPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEZMT09SX09QRVJBVElPTl9DT1VOVCA9IEdST1VORF9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5XYXRlclN1cmZhY2VJbXBsIDxlbT5XYXRlciBTdXJmYWNlPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuV2F0ZXJTdXJmYWNlSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFdhdGVyU3VyZmFjZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBXQVRFUl9TVVJGQUNFID0gMzg7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGVpZ2h0PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgV0FURVJfU1VSRkFDRV9fSEVJR0hUID0gU1VSRkFDRV9fSEVJR0hUOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1hc3M8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBXQVRFUl9TVVJGQUNFX19NQVNTID0gU1VSRkFDRV9fTUFTUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgV0FURVJfU1VSRkFDRV9fQkFTRV9DTEFTUyA9IFNVUkZBQ0VfX0JBU0VfQ0xBU1M7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+V2F0ZXIgU3VyZmFjZTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBXQVRFUl9TVVJGQUNFX0ZFQVRVUkVfQ09VTlQgPSBTVVJGQUNFX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPldhdGVyIFN1cmZhY2U8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgV0FURVJfU1VSRkFDRV9PUEVSQVRJT05fQ09VTlQgPSBTVVJGQUNFX09QRVJBVElPTl9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkh1bWFuSW1wbCA8ZW0+SHVtYW48L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5IdW1hbkltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRIdW1hbigpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBIVU1BTiA9IDM5OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkhlaWdodDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEhVTUFOX19IRUlHSFQgPSBBR0VOVF9fSEVJR0hUOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1hc3M8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBIVU1BTl9fTUFTUyA9IEFHRU5UX19NQVNTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBIVU1BTl9fQkFTRV9DTEFTUyA9IEFHRU5UX19CQVNFX0NMQVNTOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkh1bWFuPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEhVTUFOX0ZFQVRVUkVfQ09VTlQgPSBBR0VOVF9GRUFUVVJFX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5IdW1hbjwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBIVU1BTl9PUEVSQVRJT05fQ09VTlQgPSBBR0VOVF9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QZWRlc3RyaWFuSW1wbCA8ZW0+UGVkZXN0cmlhbjwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBlZGVzdHJpYW5JbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0UGVkZXN0cmlhbigpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBQRURFU1RSSUFOID0gNDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGVpZ2h0PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUEVERVNUUklBTl9fSEVJR0hUID0gSFVNQU5fX0hFSUdIVDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5NYXNzPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUEVERVNUUklBTl9fTUFTUyA9IEhVTUFOX19NQVNTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQRURFU1RSSUFOX19CQVNFX0NMQVNTID0gSFVNQU5fX0JBU0VfQ0xBU1M7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+UGVkZXN0cmlhbjwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQRURFU1RSSUFOX0ZFQVRVUkVfQ09VTlQgPSBIVU1BTl9GRUFUVVJFX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5QZWRlc3RyaWFuPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBFREVTVFJJQU5fT1BFUkFUSU9OX0NPVU5UID0gSFVNQU5fT1BFUkFUSU9OX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3RhaXJzSW1wbCA8ZW0+U3RhaXJzPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3RhaXJzSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFN0YWlycygpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBTVEFJUlMgPSA0MTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTVEFJUlNfX0hFSUdIVCA9IEdST1VORF9fSEVJR0hUOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1hc3M8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTVEFJUlNfX01BU1MgPSBHUk9VTkRfX01BU1M7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNUQUlSU19fQkFTRV9DTEFTUyA9IEdST1VORF9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5TdGFpcnM8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1RBSVJTX0ZFQVRVUkVfQ09VTlQgPSBHUk9VTkRfRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+U3RhaXJzPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNUQUlSU19PUEVSQVRJT05fQ09VTlQgPSBHUk9VTkRfT1BFUkFUSU9OX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGxhdGZvcm1JbXBsIDxlbT5QbGF0Zm9ybTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBsYXRmb3JtSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFBsYXRmb3JtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFBMQVRGT1JNID0gNDI7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBMQVRGT1JNX19CQVNFX0NMQVNTID0gU1lTVEVNX19CQVNFX0NMQVNTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk5hdGl2ZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBMQVRGT1JNX19OQVRJVkUgPSBTWVNURU1fX05BVElWRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IFBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQTEFURk9STV9fTElCUkFSWV9QQVRIID0gU1lTVEVNX19MSUJSQVJZX1BBVEg7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBDb21wb25lbnQgTmFtZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBMQVRGT1JNX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FID0gU1lTVEVNX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkFsaWFzPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUExBVEZPUk1fX0FMSUFTID0gU1lTVEVNX19BTElBUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIE5vZGU8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQTEFURk9STV9fQkFTRV9OT0RFID0gU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnk8L2I+PC9lbT4nIHJlZmVyZW5jZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBMQVRGT1JNX19MSUJSQVJZID0gU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyAxOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlBsYXRmb3JtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBMQVRGT1JNX0ZFQVRVUkVfQ09VTlQgPSBTWVNURU1fRkVBVFVSRV9DT1VOVCArIDI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+UGxhdGZvcm08L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUExBVEZPUk1fT1BFUkFUSU9OX0NPVU5UID0gU1lTVEVNX09QRVJBVElPTl9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkV4dGVybmFsTGlicmFyeUltcGwgPGVtPkV4dGVybmFsIExpYnJhcnk8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5FeHRlcm5hbExpYnJhcnlJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0RXh0ZXJuYWxMaWJyYXJ5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IEVYVEVSTkFMX0xJQlJBUlkgPSA0MzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWIgUGF0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEVYVEVSTkFMX0xJQlJBUllfX0xJQl9QQVRIID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWIgRmlsZSBGb3JtYXQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBFWFRFUk5BTF9MSUJSQVJZX19MSUJfRklMRV9GT1JNQVQgPSAxOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgSW50ZXJmYWNlPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgRVhURVJOQUxfTElCUkFSWV9fQkFTRV9JTlRFUkZBQ0UgPSAyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkV4dGVybmFsIExpYnJhcnk8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgRVhURVJOQUxfTElCUkFSWV9GRUFUVVJFX0NPVU5UID0gMzsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5FeHRlcm5hbCBMaWJyYXJ5PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEVYVEVSTkFMX0xJQlJBUllfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RpY01pZGRsZXdhcmVJbXBsIDxlbT5Sb2JvdGljIE1pZGRsZXdhcmU8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdGljTWlkZGxld2FyZUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRSb2JvdGljTWlkZGxld2FyZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBST0JPVElDX01JRERMRVdBUkUgPSA0NDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUk9CT1RJQ19NSURETEVXQVJFX19CQVNFX0NMQVNTID0gUExBVEZPUk1fX0JBU0VfQ0xBU1M7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TmF0aXZlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUk9CT1RJQ19NSURETEVXQVJFX19OQVRJVkUgPSBQTEFURk9STV9fTkFUSVZFOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgUGF0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFJPQk9USUNfTUlERExFV0FSRV9fTElCUkFSWV9QQVRIID0gUExBVEZPUk1fX0xJQlJBUllfUEFUSDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUk9CT1RJQ19NSURETEVXQVJFX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FID0gUExBVEZPUk1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QWxpYXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBST0JPVElDX01JRERMRVdBUkVfX0FMSUFTID0gUExBVEZPUk1fX0FMSUFTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgTm9kZTwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFJPQk9USUNfTUlERExFV0FSRV9fQkFTRV9OT0RFID0gUExBVEZPUk1fX0JBU0VfTk9ERTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5PC9iPjwvZW0+JyByZWZlcmVuY2UgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBST0JPVElDX01JRERMRVdBUkVfX0xJQlJBUlkgPSBQTEFURk9STV9fTElCUkFSWTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5LaW5kPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUk9CT1RJQ19NSURETEVXQVJFX19LSU5EID0gUExBVEZPUk1fRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+Um9ib3RpYyBNaWRkbGV3YXJlPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFJPQk9USUNfTUlERExFV0FSRV9GRUFUVVJFX0NPVU5UID0gUExBVEZPUk1fRkVBVFVSRV9DT1VOVCArIDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+Um9ib3RpYyBNaWRkbGV3YXJlPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFJPQk9USUNfTUlERExFV0FSRV9PUEVSQVRJT05fQ09VTlQgPSBQTEFURk9STV9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdGljU2ltdWxhdG9ySW1wbCA8ZW0+Um9ib3RpYyBTaW11bGF0b3I8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdGljU2ltdWxhdG9ySW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFJvYm90aWNTaW11bGF0b3IoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgUk9CT1RJQ19TSU1VTEFUT1IgPSA0NTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUk9CT1RJQ19TSU1VTEFUT1JfX0JBU0VfQ0xBU1MgPSBQTEFURk9STV9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYXRpdmU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBST0JPVElDX1NJTVVMQVRPUl9fTkFUSVZFID0gUExBVEZPUk1fX05BVElWRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IFBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBST0JPVElDX1NJTVVMQVRPUl9fTElCUkFSWV9QQVRIID0gUExBVEZPUk1fX0xJQlJBUllfUEFUSDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUk9CT1RJQ19TSU1VTEFUT1JfX0xJQlJBUllfQ09NUE9ORU5UX05BTUUgPSBQTEFURk9STV9fTElCUkFSWV9DT01QT05FTlRfTkFNRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbGlhczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFJPQk9USUNfU0lNVUxBVE9SX19BTElBUyA9IFBMQVRGT1JNX19BTElBUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIE5vZGU8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBST0JPVElDX1NJTVVMQVRPUl9fQkFTRV9OT0RFID0gUExBVEZPUk1fX0JBU0VfTk9ERTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5PC9iPjwvZW0+JyByZWZlcmVuY2UgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBST0JPVElDX1NJTVVMQVRPUl9fTElCUkFSWSA9IFBMQVRGT1JNX19MSUJSQVJZOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlJvYm90aWMgU2ltdWxhdG9yPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFJPQk9USUNfU0lNVUxBVE9SX0ZFQVRVUkVfQ09VTlQgPSBQTEFURk9STV9GRUFUVVJFX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5Sb2JvdGljIFNpbXVsYXRvcjwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBST0JPVElDX1NJTVVMQVRPUl9PUEVSQVRJT05fQ09VTlQgPSBQTEFURk9STV9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5DeWNhYlRLSW1wbCA8ZW0+Q3ljYWIgVEs8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5DeWNhYlRLSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldEN5Y2FiVEsoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgQ1lDQUJfVEsgPSA0NjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ1lDQUJfVEtfX0JBU0VfQ0xBU1MgPSBST0JPVElDX1NJTVVMQVRPUl9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYXRpdmU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDWUNBQl9US19fTkFUSVZFID0gUk9CT1RJQ19TSU1VTEFUT1JfX05BVElWRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IFBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDWUNBQl9US19fTElCUkFSWV9QQVRIID0gUk9CT1RJQ19TSU1VTEFUT1JfX0xJQlJBUllfUEFUSDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ1lDQUJfVEtfX0xJQlJBUllfQ09NUE9ORU5UX05BTUUgPSBST0JPVElDX1NJTVVMQVRPUl9fTElCUkFSWV9DT01QT05FTlRfTkFNRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbGlhczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IENZQ0FCX1RLX19BTElBUyA9IFJPQk9USUNfU0lNVUxBVE9SX19BTElBUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIE5vZGU8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDWUNBQl9US19fQkFTRV9OT0RFID0gUk9CT1RJQ19TSU1VTEFUT1JfX0JBU0VfTk9ERTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5PC9iPjwvZW0+JyByZWZlcmVuY2UgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDWUNBQl9US19fTElCUkFSWSA9IFJPQk9USUNfU0lNVUxBVE9SX19MSUJSQVJZOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlVzZSBSZWFsIFRpbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDWUNBQl9US19fVVNFX1JFQUxfVElNRSA9IFJPQk9USUNfU0lNVUxBVE9SX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlRpbWUgU3RlcDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IENZQ0FCX1RLX19USU1FX1NURVAgPSBST0JPVElDX1NJTVVMQVRPUl9GRUFUVVJFX0NPVU5UICsgMTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5UaW1lIEZhY3RvcjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IENZQ0FCX1RLX19USU1FX0ZBQ1RPUiA9IFJPQk9USUNfU0lNVUxBVE9SX0ZFQVRVUkVfQ09VTlQgKyAyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkN5Y2FiIFRLPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IENZQ0FCX1RLX0ZFQVRVUkVfQ09VTlQgPSBST0JPVElDX1NJTVVMQVRPUl9GRUFUVVJFX0NPVU5UICsgMzsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5DeWNhYiBUSzwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDWUNBQl9US19PUEVSQVRJT05fQ09VTlQgPSBST0JPVElDX1NJTVVMQVRPUl9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5CbGVuZGVyTW9yc2VJbXBsIDxlbT5CbGVuZGVyIE1vcnNlPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQmxlbmRlck1vcnNlSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldEJsZW5kZXJNb3JzZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBCTEVOREVSX01PUlNFID0gNDc7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEJMRU5ERVJfTU9SU0VfX0JBU0VfQ0xBU1MgPSBST0JPVElDX1NJTVVMQVRPUl9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYXRpdmU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBCTEVOREVSX01PUlNFX19OQVRJVkUgPSBST0JPVElDX1NJTVVMQVRPUl9fTkFUSVZFOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgUGF0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEJMRU5ERVJfTU9SU0VfX0xJQlJBUllfUEFUSCA9IFJPQk9USUNfU0lNVUxBVE9SX19MSUJSQVJZX1BBVEg7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBDb21wb25lbnQgTmFtZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEJMRU5ERVJfTU9SU0VfX0xJQlJBUllfQ09NUE9ORU5UX05BTUUgPSBST0JPVElDX1NJTVVMQVRPUl9fTElCUkFSWV9DT01QT05FTlRfTkFNRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbGlhczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEJMRU5ERVJfTU9SU0VfX0FMSUFTID0gUk9CT1RJQ19TSU1VTEFUT1JfX0FMSUFTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgTm9kZTwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEJMRU5ERVJfTU9SU0VfX0JBU0VfTk9ERSA9IFJPQk9USUNfU0lNVUxBVE9SX19CQVNFX05PREU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeTwvYj48L2VtPicgcmVmZXJlbmNlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQkxFTkRFUl9NT1JTRV9fTElCUkFSWSA9IFJPQk9USUNfU0lNVUxBVE9SX19MSUJSQVJZOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkRlYnVnIE1vZGU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBCTEVOREVSX01PUlNFX19ERUJVR19NT0RFID0gUk9CT1RJQ19TSU1VTEFUT1JfRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RGVidWcgRGlzcGxheTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEJMRU5ERVJfTU9SU0VfX0RFQlVHX0RJU1BMQVkgPSBST0JPVElDX1NJTVVMQVRPUl9GRUFUVVJFX0NPVU5UICsgMTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5HcmF2aXR5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQkxFTkRFUl9NT1JTRV9fR1JBVklUWSA9IFJPQk9USUNfU0lNVUxBVE9SX0ZFQVRVUkVfQ09VTlQgKyAyOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPnZpZXdwb3J0IHNoYWRlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQkxFTkRFUl9NT1JTRV9fVklFV1BPUlRfU0hBREUgPSBST0JPVElDX1NJTVVMQVRPUl9GRUFUVVJFX0NPVU5UICsgMzsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5CbGVuZGVyIE1vcnNlPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEJMRU5ERVJfTU9SU0VfRkVBVFVSRV9DT1VOVCA9IFJPQk9USUNfU0lNVUxBVE9SX0ZFQVRVUkVfQ09VTlQgKyA0OworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkJsZW5kZXIgTW9yc2U8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQkxFTkRFUl9NT1JTRV9PUEVSQVRJT05fQ09VTlQgPSBST0JPVElDX1NJTVVMQVRPUl9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5PblBvcnRJbXBsIDxlbT5PbiBQb3J0PC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuT25Qb3J0SW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldE9uUG9ydCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBPTl9QT1JUID0gNDg7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UG9ydDwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE9OX1BPUlRfX1BPUlQgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgUGFyYW1ldGVyPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT05fUE9SVF9fQkFTRV9QQVJBTUVURVIgPSAxOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPk9uIFBvcnQ8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT05fUE9SVF9GRUFUVVJFX0NPVU5UID0gMjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5PbiBQb3J0PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE9OX1BPUlRfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWxsb2NhdGVJbXBsIDxlbT5BbGxvY2F0ZTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkFsbG9jYXRlSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldEFsbG9jYXRlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IEFMTE9DQVRFID0gNDk7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBBYnN0cmFjdGlvbjwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEFMTE9DQVRFX19CQVNFX0FCU1RSQUNUSU9OID0gMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5BbGxvY2F0ZTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBBTExPQ0FURV9GRUFUVVJFX0NPVU5UID0gMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5BbGxvY2F0ZTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBBTExPQ0FURV9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5JbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbUltcGwgPGVtPkluZXJ0aWFsIE1lYXN1cmVtZW50IFVuaXQgU3lzdGVtPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW1JbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0SW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgSU5FUlRJQUxfTUVBU1VSRU1FTlRfVU5JVF9TWVNURU0gPSA1MDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU5FUlRJQUxfTUVBU1VSRU1FTlRfVU5JVF9TWVNURU1fX0JBU0VfQ0xBU1MgPSBTRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk5hdGl2ZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElORVJUSUFMX01FQVNVUkVNRU5UX1VOSVRfU1lTVEVNX19OQVRJVkUgPSBTRU5TT1JfU1lTVEVNX19OQVRJVkU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBQYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU5FUlRJQUxfTUVBU1VSRU1FTlRfVU5JVF9TWVNURU1fX0xJQlJBUllfUEFUSCA9IFNFTlNPUl9TWVNURU1fX0xJQlJBUllfUEFUSDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU5FUlRJQUxfTUVBU1VSRU1FTlRfVU5JVF9TWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUUgPSBTRU5TT1JfU1lTVEVNX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkFsaWFzPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU5FUlRJQUxfTUVBU1VSRU1FTlRfVU5JVF9TWVNURU1fX0FMSUFTID0gU0VOU09SX1NZU1RFTV9fQUxJQVM7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgUG9zaXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBJTkVSVElBTF9NRUFTVVJFTUVOVF9VTklUX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04gPSBTRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElORVJUSUFMX01FQVNVUkVNRU5UX1VOSVRfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiA9IFNFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkZyZXF1ZW5jeTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElORVJUSUFMX01FQVNVUkVNRU5UX1VOSVRfU1lTVEVNX19GUkVRVUVOQ1kgPSBTRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1k7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SWRlbnRpZmllcjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElORVJUSUFMX01FQVNVUkVNRU5UX1VOSVRfU1lTVEVNX19JREVOVElGSUVSID0gU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5JbmVydGlhbCBNZWFzdXJlbWVudCBVbml0IFN5c3RlbTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBJTkVSVElBTF9NRUFTVVJFTUVOVF9VTklUX1NZU1RFTV9GRUFUVVJFX0NPVU5UID0gU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5JbmVydGlhbCBNZWFzdXJlbWVudCBVbml0IFN5c3RlbTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBJTkVSVElBTF9NRUFTVVJFTUVOVF9VTklUX1NZU1RFTV9PUEVSQVRJT05fQ09VTlQgPSBTRU5TT1JfU1lTVEVNX09QRVJBVElPTl9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbUltcGwgPGVtPkluZXJ0aWFsIE5hdmlnYXRpb24gU3lzdGVtPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuSW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldEluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBJTkVSVElBTF9OQVZJR0FUSU9OX1NZU1RFTSA9IDUxOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBJTkVSVElBTF9OQVZJR0FUSU9OX1NZU1RFTV9fQkFTRV9DTEFTUyA9IEdQU19TWVNURU1fX0JBU0VfQ0xBU1M7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TmF0aXZlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU5FUlRJQUxfTkFWSUdBVElPTl9TWVNURU1fX05BVElWRSA9IEdQU19TWVNURU1fX05BVElWRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IFBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBJTkVSVElBTF9OQVZJR0FUSU9OX1NZU1RFTV9fTElCUkFSWV9QQVRIID0gR1BTX1NZU1RFTV9fTElCUkFSWV9QQVRIOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgQ29tcG9uZW50IE5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBJTkVSVElBTF9OQVZJR0FUSU9OX1NZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRSA9IEdQU19TWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QWxpYXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBJTkVSVElBTF9OQVZJR0FUSU9OX1NZU1RFTV9fQUxJQVMgPSBHUFNfU1lTVEVNX19BTElBUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBQb3NpdGlvbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElORVJUSUFMX05BVklHQVRJT05fU1lTVEVNX19MT0NBTF9QT1NJVElPTiA9IEdQU19TWVNURU1fX0xPQ0FMX1BPU0lUSU9OOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIE9yaWVudGF0aW9uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU5FUlRJQUxfTkFWSUdBVElPTl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OID0gR1BTX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT047CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RnJlcXVlbmN5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU5FUlRJQUxfTkFWSUdBVElPTl9TWVNURU1fX0ZSRVFVRU5DWSA9IEdQU19TWVNURU1fX0ZSRVFVRU5DWTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5JZGVudGlmaWVyPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU5FUlRJQUxfTkFWSUdBVElPTl9TWVNURU1fX0lERU5USUZJRVIgPSBHUFNfU1lTVEVNX19JREVOVElGSUVSOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk9yaWdpbiBQb3NpdGlvbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElORVJUSUFMX05BVklHQVRJT05fU1lTVEVNX19PUklHSU5fUE9TSVRJT04gPSBHUFNfU1lTVEVNX19PUklHSU5fUE9TSVRJT047CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+SW5lcnRpYWwgTmF2aWdhdGlvbiBTeXN0ZW08L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU5FUlRJQUxfTkFWSUdBVElPTl9TWVNURU1fRkVBVFVSRV9DT1VOVCA9IEdQU19TWVNURU1fRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+SW5lcnRpYWwgTmF2aWdhdGlvbiBTeXN0ZW08L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU5FUlRJQUxfTkFWSUdBVElPTl9TWVNURU1fT1BFUkFUSU9OX0NPVU5UID0gR1BTX1NZU1RFTV9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5PZG9tZXRyeVN5c3RlbUltcGwgPGVtPk9kb21ldHJ5IFN5c3RlbTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk9kb21ldHJ5U3lzdGVtSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldE9kb21ldHJ5U3lzdGVtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IE9ET01FVFJZX1NZU1RFTSA9IDUyOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPRE9NRVRSWV9TWVNURU1fX0JBU0VfQ0xBU1MgPSBMT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYXRpdmU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPRE9NRVRSWV9TWVNURU1fX05BVElWRSA9IExPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19OQVRJVkU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBQYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT0RPTUVUUllfU1lTVEVNX19MSUJSQVJZX1BBVEggPSBMT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fTElCUkFSWV9QQVRIOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgQ29tcG9uZW50IE5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPRE9NRVRSWV9TWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUUgPSBMT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbGlhczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE9ET01FVFJZX1NZU1RFTV9fQUxJQVMgPSBMT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTV9fQUxJQVM7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgUG9zaXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPRE9NRVRSWV9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OID0gTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIE9yaWVudGF0aW9uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT0RPTUVUUllfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiA9IExPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5GcmVxdWVuY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPRE9NRVRSWV9TWVNURU1fX0ZSRVFVRU5DWSA9IExPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1k7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SWRlbnRpZmllcjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE9ET01FVFJZX1NZU1RFTV9fSURFTlRJRklFUiA9IExPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX19JREVOVElGSUVSOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPk9kb21ldHJ5IFN5c3RlbTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPRE9NRVRSWV9TWVNURU1fRkVBVFVSRV9DT1VOVCA9IExPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPk9kb21ldHJ5IFN5c3RlbTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPRE9NRVRSWV9TWVNURU1fT1BFUkFUSU9OX0NPVU5UID0gTE9DQUxJWkFUSU9OX1NFTlNPUl9TWVNURU1fT1BFUkFUSU9OX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtSW1wbCA8ZW0+SW5mcmEgUmVkIFByb3hpbWV0cnkgU3lzdGVtPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldEluZnJhUmVkUHJveGltZXRyeVN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBJTkZSQV9SRURfUFJPWElNRVRSWV9TWVNURU0gPSA1MzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU5GUkFfUkVEX1BST1hJTUVUUllfU1lTVEVNX19CQVNFX0NMQVNTID0gT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19CQVNFX0NMQVNTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk5hdGl2ZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElORlJBX1JFRF9QUk9YSU1FVFJZX1NZU1RFTV9fTkFUSVZFID0gT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19OQVRJVkU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBQYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU5GUkFfUkVEX1BST1hJTUVUUllfU1lTVEVNX19MSUJSQVJZX1BBVEggPSBPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0xJQlJBUllfUEFUSDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU5GUkFfUkVEX1BST1hJTUVUUllfU1lTVEVNX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FID0gT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkFsaWFzPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU5GUkFfUkVEX1BST1hJTUVUUllfU1lTVEVNX19BTElBUyA9IE9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fQUxJQVM7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgUG9zaXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBJTkZSQV9SRURfUFJPWElNRVRSWV9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OID0gT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElORlJBX1JFRF9QUk9YSU1FVFJZX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04gPSBPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkZyZXF1ZW5jeTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElORlJBX1JFRF9QUk9YSU1FVFJZX1NZU1RFTV9fRlJFUVVFTkNZID0gT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1k7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SWRlbnRpZmllcjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElORlJBX1JFRF9QUk9YSU1FVFJZX1NZU1RFTV9fSURFTlRJRklFUiA9IE9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5JbmZyYSBSZWQgUHJveGltZXRyeSBTeXN0ZW08L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU5GUkFfUkVEX1BST1hJTUVUUllfU1lTVEVNX0ZFQVRVUkVfQ09VTlQgPSBPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+SW5mcmEgUmVkIFByb3hpbWV0cnkgU3lzdGVtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElORlJBX1JFRF9QUk9YSU1FVFJZX1NZU1RFTV9PUEVSQVRJT05fQ09VTlQgPSBPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU1fT1BFUkFUSU9OX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuRGVwbG95bWVudFBsYW5JbXBsIDxlbT5EZXBsb3ltZW50IFBsYW48L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5EZXBsb3ltZW50UGxhbkltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXREZXBsb3ltZW50UGxhbigpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBERVBMT1lNRU5UX1BMQU4gPSA1NDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIFBhY2thZ2U8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBERVBMT1lNRU5UX1BMQU5fX0JBU0VfUEFDS0FHRSA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TWFpbiBJbnN0YW5jZTwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IERFUExPWU1FTlRfUExBTl9fTUFJTl9JTlNUQU5DRSA9IDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+RGVwbG95bWVudCBQbGFuPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IERFUExPWU1FTlRfUExBTl9GRUFUVVJFX0NPVU5UID0gMjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5EZXBsb3ltZW50IFBsYW48L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgREVQTE9ZTUVOVF9QTEFOX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkd5cm9zY29wZUltcGwgPGVtPkd5cm9zY29wZTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkd5cm9zY29wZUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRHeXJvc2NvcGUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgR1lST1NDT1BFID0gNTU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEdZUk9TQ09QRV9fQkFTRV9DTEFTUyA9IFNFTlNPUl9TWVNURU1fX0JBU0VfQ0xBU1M7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TmF0aXZlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR1lST1NDT1BFX19OQVRJVkUgPSBTRU5TT1JfU1lTVEVNX19OQVRJVkU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBQYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR1lST1NDT1BFX19MSUJSQVJZX1BBVEggPSBTRU5TT1JfU1lTVEVNX19MSUJSQVJZX1BBVEg7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBDb21wb25lbnQgTmFtZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEdZUk9TQ09QRV9fTElCUkFSWV9DT01QT05FTlRfTkFNRSA9IFNFTlNPUl9TWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QWxpYXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHWVJPU0NPUEVfX0FMSUFTID0gU0VOU09SX1NZU1RFTV9fQUxJQVM7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgUG9zaXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHWVJPU0NPUEVfX0xPQ0FMX1BPU0lUSU9OID0gU0VOU09SX1NZU1RFTV9fTE9DQUxfUE9TSVRJT047CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgT3JpZW50YXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHWVJPU0NPUEVfX0xPQ0FMX09SSUVOVEFUSU9OID0gU0VOU09SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT047CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RnJlcXVlbmN5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR1lST1NDT1BFX19GUkVRVUVOQ1kgPSBTRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1k7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SWRlbnRpZmllcjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEdZUk9TQ09QRV9fSURFTlRJRklFUiA9IFNFTlNPUl9TWVNURU1fX0lERU5USUZJRVI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+R3lyb3Njb3BlPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEdZUk9TQ09QRV9GRUFUVVJFX0NPVU5UID0gU0VOU09SX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5HeXJvc2NvcGU8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR1lST1NDT1BFX09QRVJBVElPTl9DT1VOVCA9IFNFTlNPUl9TWVNURU1fT1BFUkFUSU9OX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuT25WYXJpYWJsZUltcGwgPGVtPk9uIFZhcmlhYmxlPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuT25WYXJpYWJsZUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRPblZhcmlhYmxlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IE9OX1ZBUklBQkxFID0gNTY7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UHJvcGVydHk8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPTl9WQVJJQUJMRV9fUFJPUEVSVFkgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgUGFyYW1ldGVyPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT05fVkFSSUFCTEVfX0JBU0VfUEFSQU1FVEVSID0gMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5PbiBWYXJpYWJsZTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPTl9WQVJJQUJMRV9GRUFUVVJFX0NPVU5UID0gMjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5PbiBWYXJpYWJsZTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPTl9WQVJJQUJMRV9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TdXBwb3J0aW5nU3RydWN0dXJlSW1wbCA8ZW0+U3VwcG9ydGluZyBTdHJ1Y3R1cmU8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TdXBwb3J0aW5nU3RydWN0dXJlSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFN1cHBvcnRpbmdTdHJ1Y3R1cmUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgU1VQUE9SVElOR19TVFJVQ1RVUkUgPSA1ODsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1VQUE9SVElOR19TVFJVQ1RVUkVfX0JBU0VfQ0xBU1MgPSBIQVJEV0FSRV9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYXRpdmU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTVVBQT1JUSU5HX1NUUlVDVFVSRV9fTkFUSVZFID0gSEFSRFdBUkVfX05BVElWRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IFBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTVVBQT1JUSU5HX1NUUlVDVFVSRV9fTElCUkFSWV9QQVRIID0gSEFSRFdBUkVfX0xJQlJBUllfUEFUSDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1VQUE9SVElOR19TVFJVQ1RVUkVfX0xJQlJBUllfQ09NUE9ORU5UX05BTUUgPSBIQVJEV0FSRV9fTElCUkFSWV9DT01QT05FTlRfTkFNRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbGlhczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNVUFBPUlRJTkdfU1RSVUNUVVJFX19BTElBUyA9IEhBUkRXQVJFX19BTElBUzsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5TdXBwb3J0aW5nIFN0cnVjdHVyZTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTVVBQT1JUSU5HX1NUUlVDVFVSRV9GRUFUVVJFX0NPVU5UID0gSEFSRFdBUkVfRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+U3VwcG9ydGluZyBTdHJ1Y3R1cmU8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1VQUE9SVElOR19TVFJVQ1RVUkVfT1BFUkFUSU9OX0NPVU5UID0gSEFSRFdBUkVfT1BFUkFUSU9OX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQ2hhc3Npc0ltcGwgPGVtPkNoYXNzaXM8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5DaGFzc2lzSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldENoYXNzaXMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgQ0hBU1NJUyA9IDU3OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDSEFTU0lTX19CQVNFX0NMQVNTID0gU1VQUE9SVElOR19TVFJVQ1RVUkVfX0JBU0VfQ0xBU1M7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TmF0aXZlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0hBU1NJU19fTkFUSVZFID0gU1VQUE9SVElOR19TVFJVQ1RVUkVfX05BVElWRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IFBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDSEFTU0lTX19MSUJSQVJZX1BBVEggPSBTVVBQT1JUSU5HX1NUUlVDVFVSRV9fTElCUkFSWV9QQVRIOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgQ29tcG9uZW50IE5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDSEFTU0lTX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FID0gU1VQUE9SVElOR19TVFJVQ1RVUkVfX0xJQlJBUllfQ09NUE9ORU5UX05BTUU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QWxpYXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDSEFTU0lTX19BTElBUyA9IFNVUFBPUlRJTkdfU1RSVUNUVVJFX19BTElBUzsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5DaGFzc2lzPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IENIQVNTSVNfRkVBVFVSRV9DT1VOVCA9IFNVUFBPUlRJTkdfU1RSVUNUVVJFX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkNoYXNzaXM8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0hBU1NJU19PUEVSQVRJT05fQ09VTlQgPSBTVVBQT1JUSU5HX1NUUlVDVFVSRV9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5NZWNoYW5pY2FsTGlua2FnZUltcGwgPGVtPk1lY2hhbmljYWwgTGlua2FnZTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk1lY2hhbmljYWxMaW5rYWdlSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldE1lY2hhbmljYWxMaW5rYWdlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IE1FQ0hBTklDQUxfTElOS0FHRSA9IDU5OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBNRUNIQU5JQ0FMX0xJTktBR0VfX0JBU0VfQ0xBU1MgPSBIQVJEV0FSRV9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYXRpdmU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBNRUNIQU5JQ0FMX0xJTktBR0VfX05BVElWRSA9IEhBUkRXQVJFX19OQVRJVkU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBQYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTUVDSEFOSUNBTF9MSU5LQUdFX19MSUJSQVJZX1BBVEggPSBIQVJEV0FSRV9fTElCUkFSWV9QQVRIOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgQ29tcG9uZW50IE5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBNRUNIQU5JQ0FMX0xJTktBR0VfX0xJQlJBUllfQ09NUE9ORU5UX05BTUUgPSBIQVJEV0FSRV9fTElCUkFSWV9DT01QT05FTlRfTkFNRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbGlhczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE1FQ0hBTklDQUxfTElOS0FHRV9fQUxJQVMgPSBIQVJEV0FSRV9fQUxJQVM7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+TWVjaGFuaWNhbCBMaW5rYWdlPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE1FQ0hBTklDQUxfTElOS0FHRV9GRUFUVVJFX0NPVU5UID0gSEFSRFdBUkVfRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+TWVjaGFuaWNhbCBMaW5rYWdlPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE1FQ0hBTklDQUxfTElOS0FHRV9PUEVSQVRJT05fQ09VTlQgPSBIQVJEV0FSRV9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BY3R1YXRvckhhcmR3YXJlSW1wbCA8ZW0+QWN0dWF0b3IgSGFyZHdhcmU8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BY3R1YXRvckhhcmR3YXJlSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldEFjdHVhdG9ySGFyZHdhcmUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgQUNUVUFUT1JfSEFSRFdBUkUgPSA2MjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQUNUVUFUT1JfSEFSRFdBUkVfX0JBU0VfQ0xBU1MgPSBIQVJEV0FSRV9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYXRpdmU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBBQ1RVQVRPUl9IQVJEV0FSRV9fTkFUSVZFID0gSEFSRFdBUkVfX05BVElWRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IFBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBBQ1RVQVRPUl9IQVJEV0FSRV9fTElCUkFSWV9QQVRIID0gSEFSRFdBUkVfX0xJQlJBUllfUEFUSDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQUNUVUFUT1JfSEFSRFdBUkVfX0xJQlJBUllfQ09NUE9ORU5UX05BTUUgPSBIQVJEV0FSRV9fTElCUkFSWV9DT01QT05FTlRfTkFNRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbGlhczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEFDVFVBVE9SX0hBUkRXQVJFX19BTElBUyA9IEhBUkRXQVJFX19BTElBUzsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5BY3R1YXRvciBIYXJkd2FyZTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBBQ1RVQVRPUl9IQVJEV0FSRV9GRUFUVVJFX0NPVU5UID0gSEFSRFdBUkVfRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+QWN0dWF0b3IgSGFyZHdhcmU8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQUNUVUFUT1JfSEFSRFdBUkVfT1BFUkFUSU9OX0NPVU5UID0gSEFSRFdBUkVfT1BFUkFUSU9OX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTG9jb21vdGlvbkhhcmR3YXJlSW1wbCA8ZW0+TG9jb21vdGlvbiBIYXJkd2FyZTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkxvY29tb3Rpb25IYXJkd2FyZUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRMb2NvbW90aW9uSGFyZHdhcmUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgTE9DT01PVElPTl9IQVJEV0FSRSA9IDYxOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMT0NPTU9USU9OX0hBUkRXQVJFX19CQVNFX0NMQVNTID0gQUNUVUFUT1JfSEFSRFdBUkVfX0JBU0VfQ0xBU1M7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TmF0aXZlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTE9DT01PVElPTl9IQVJEV0FSRV9fTkFUSVZFID0gQUNUVUFUT1JfSEFSRFdBUkVfX05BVElWRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IFBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMT0NPTU9USU9OX0hBUkRXQVJFX19MSUJSQVJZX1BBVEggPSBBQ1RVQVRPUl9IQVJEV0FSRV9fTElCUkFSWV9QQVRIOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgQ29tcG9uZW50IE5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMT0NPTU9USU9OX0hBUkRXQVJFX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FID0gQUNUVUFUT1JfSEFSRFdBUkVfX0xJQlJBUllfQ09NUE9ORU5UX05BTUU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QWxpYXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMT0NPTU9USU9OX0hBUkRXQVJFX19BTElBUyA9IEFDVFVBVE9SX0hBUkRXQVJFX19BTElBUzsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5Mb2NvbW90aW9uIEhhcmR3YXJlPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExPQ09NT1RJT05fSEFSRFdBUkVfRkVBVFVSRV9DT1VOVCA9IEFDVFVBVE9SX0hBUkRXQVJFX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkxvY29tb3Rpb24gSGFyZHdhcmU8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTE9DT01PVElPTl9IQVJEV0FSRV9PUEVSQVRJT05fQ09VTlQgPSBBQ1RVQVRPUl9IQVJEV0FSRV9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5MZWdJbXBsIDxlbT5MZWc8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5MZWdJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0TGVnKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IExFRyA9IDYwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMRUdfX0JBU0VfQ0xBU1MgPSBMT0NPTU9USU9OX0hBUkRXQVJFX19CQVNFX0NMQVNTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk5hdGl2ZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExFR19fTkFUSVZFID0gTE9DT01PVElPTl9IQVJEV0FSRV9fTkFUSVZFOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgUGF0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExFR19fTElCUkFSWV9QQVRIID0gTE9DT01PVElPTl9IQVJEV0FSRV9fTElCUkFSWV9QQVRIOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgQ29tcG9uZW50IE5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMRUdfX0xJQlJBUllfQ09NUE9ORU5UX05BTUUgPSBMT0NPTU9USU9OX0hBUkRXQVJFX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkFsaWFzPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTEVHX19BTElBUyA9IExPQ09NT1RJT05fSEFSRFdBUkVfX0FMSUFTOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkxlZzwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMRUdfRkVBVFVSRV9DT1VOVCA9IExPQ09NT1RJT05fSEFSRFdBUkVfRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+TGVnPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExFR19PUEVSQVRJT05fQ09VTlQgPSBMT0NPTU9USU9OX0hBUkRXQVJFX09QRVJBVElPTl9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk1vYmlsZVJvYm90SW1wbCA8ZW0+TW9iaWxlIFJvYm90PC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTW9iaWxlUm9ib3RJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0TW9iaWxlUm9ib3QoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgTU9CSUxFX1JPQk9UID0gNjM7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE1PQklMRV9ST0JPVF9fQkFTRV9DTEFTUyA9IFJPQk9UX19CQVNFX0NMQVNTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk5hdGl2ZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE1PQklMRV9ST0JPVF9fTkFUSVZFID0gUk9CT1RfX05BVElWRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IFBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBNT0JJTEVfUk9CT1RfX0xJQlJBUllfUEFUSCA9IFJPQk9UX19MSUJSQVJZX1BBVEg7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBDb21wb25lbnQgTmFtZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE1PQklMRV9ST0JPVF9fTElCUkFSWV9DT01QT05FTlRfTkFNRSA9IFJPQk9UX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkFsaWFzPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTU9CSUxFX1JPQk9UX19BTElBUyA9IFJPQk9UX19BTElBUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5XaWR0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE1PQklMRV9ST0JPVF9fV0lEVEggPSBST0JPVF9fV0lEVEg7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+S2luZDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE1PQklMRV9ST0JPVF9fS0lORCA9IFJPQk9UX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPk1vYmlsZSBSb2JvdDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBNT0JJTEVfUk9CT1RfRkVBVFVSRV9DT1VOVCA9IFJPQk9UX0ZFQVRVUkVfQ09VTlQgKyAxOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPk1vYmlsZSBSb2JvdDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBNT0JJTEVfUk9CT1RfT1BFUkFUSU9OX0NPVU5UID0gUk9CT1RfT1BFUkFUSU9OX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTWFuaXB1bGF0b3JJbXBsIDxlbT5NYW5pcHVsYXRvcjwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk1hbmlwdWxhdG9ySW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldE1hbmlwdWxhdG9yKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IE1BTklQVUxBVE9SID0gNjQ7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE1BTklQVUxBVE9SX19CQVNFX0NMQVNTID0gUk9CT1RfX0JBU0VfQ0xBU1M7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TmF0aXZlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTUFOSVBVTEFUT1JfX05BVElWRSA9IFJPQk9UX19OQVRJVkU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBQYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTUFOSVBVTEFUT1JfX0xJQlJBUllfUEFUSCA9IFJPQk9UX19MSUJSQVJZX1BBVEg7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBDb21wb25lbnQgTmFtZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE1BTklQVUxBVE9SX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FID0gUk9CT1RfX0xJQlJBUllfQ09NUE9ORU5UX05BTUU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QWxpYXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBNQU5JUFVMQVRPUl9fQUxJQVMgPSBST0JPVF9fQUxJQVM7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2lkdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBNQU5JUFVMQVRPUl9fV0lEVEggPSBST0JPVF9fV0lEVEg7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+TWFuaXB1bGF0b3I8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTUFOSVBVTEFUT1JfRkVBVFVSRV9DT1VOVCA9IFJPQk9UX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPk1hbmlwdWxhdG9yPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE1BTklQVUxBVE9SX09QRVJBVElPTl9DT1VOVCA9IFJPQk9UX09QRVJBVElPTl9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBpbG90ZWRTeXN0ZW1JbXBsIDxlbT5QaWxvdGVkIFN5c3RlbTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBpbG90ZWRTeXN0ZW1JbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0UGlsb3RlZFN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBQSUxPVEVEX1NZU1RFTSA9IDY1OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQSUxPVEVEX1NZU1RFTV9fQkFTRV9DTEFTUyA9IFJPQk9UX19CQVNFX0NMQVNTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk5hdGl2ZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBJTE9URURfU1lTVEVNX19OQVRJVkUgPSBST0JPVF9fTkFUSVZFOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgUGF0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBJTE9URURfU1lTVEVNX19MSUJSQVJZX1BBVEggPSBST0JPVF9fTElCUkFSWV9QQVRIOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgQ29tcG9uZW50IE5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQSUxPVEVEX1NZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRSA9IFJPQk9UX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkFsaWFzPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUElMT1RFRF9TWVNURU1fX0FMSUFTID0gUk9CT1RfX0FMSUFTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPldpZHRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUElMT1RFRF9TWVNURU1fX1dJRFRIID0gUk9CT1RfX1dJRFRIOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlBpbG90ZWQgU3lzdGVtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBJTE9URURfU1lTVEVNX0ZFQVRVUkVfQ09VTlQgPSBST0JPVF9GRUFUVVJFX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5QaWxvdGVkIFN5c3RlbTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQSUxPVEVEX1NZU1RFTV9PUEVSQVRJT05fQ09VTlQgPSBST0JPVF9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Qb3dlckhhcmR3YXJlSW1wbCA8ZW0+UG93ZXIgSGFyZHdhcmU8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Qb3dlckhhcmR3YXJlSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFBvd2VySGFyZHdhcmUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgUE9XRVJfSEFSRFdBUkUgPSA2NjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUE9XRVJfSEFSRFdBUkVfX0JBU0VfQ0xBU1MgPSBIQVJEV0FSRV9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYXRpdmU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT1dFUl9IQVJEV0FSRV9fTkFUSVZFID0gSEFSRFdBUkVfX05BVElWRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IFBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT1dFUl9IQVJEV0FSRV9fTElCUkFSWV9QQVRIID0gSEFSRFdBUkVfX0xJQlJBUllfUEFUSDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUE9XRVJfSEFSRFdBUkVfX0xJQlJBUllfQ09NUE9ORU5UX05BTUUgPSBIQVJEV0FSRV9fTElCUkFSWV9DT01QT05FTlRfTkFNRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbGlhczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPV0VSX0hBUkRXQVJFX19BTElBUyA9IEhBUkRXQVJFX19BTElBUzsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5Qb3dlciBIYXJkd2FyZTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT1dFUl9IQVJEV0FSRV9GRUFUVVJFX0NPVU5UID0gSEFSRFdBUkVfRkVBVFVSRV9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+UG93ZXIgSGFyZHdhcmU8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUE9XRVJfSEFSRFdBUkVfT1BFUkFUSU9OX0NPVU5UID0gSEFSRFdBUkVfT1BFUkFUSU9OX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU2Vuc29ySGFyZHdhcmVJbXBsIDxlbT5TZW5zb3IgSGFyZHdhcmU8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TZW5zb3JIYXJkd2FyZUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRTZW5zb3JIYXJkd2FyZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBTRU5TT1JfSEFSRFdBUkUgPSA2NzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU0VOU09SX0hBUkRXQVJFX19CQVNFX0NMQVNTID0gSEFSRFdBUkVfX0JBU0VfQ0xBU1M7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TmF0aXZlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU0VOU09SX0hBUkRXQVJFX19OQVRJVkUgPSBIQVJEV0FSRV9fTkFUSVZFOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgUGF0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNFTlNPUl9IQVJEV0FSRV9fTElCUkFSWV9QQVRIID0gSEFSRFdBUkVfX0xJQlJBUllfUEFUSDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU0VOU09SX0hBUkRXQVJFX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FID0gSEFSRFdBUkVfX0xJQlJBUllfQ09NUE9ORU5UX05BTUU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QWxpYXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTRU5TT1JfSEFSRFdBUkVfX0FMSUFTID0gSEFSRFdBUkVfX0FMSUFTOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlNlbnNvciBIYXJkd2FyZTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTRU5TT1JfSEFSRFdBUkVfRkVBVFVSRV9DT1VOVCA9IEhBUkRXQVJFX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPlNlbnNvciBIYXJkd2FyZTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTRU5TT1JfSEFSRFdBUkVfT1BFUkFUSU9OX0NPVU5UID0gSEFSRFdBUkVfT1BFUkFUSU9OX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuR3Jhc3BpbmdIYXJkd2FyZUltcGwgPGVtPkdyYXNwaW5nIEhhcmR3YXJlPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuR3Jhc3BpbmdIYXJkd2FyZUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRHcmFzcGluZ0hhcmR3YXJlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IEdSQVNQSU5HX0hBUkRXQVJFID0gNjg7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEdSQVNQSU5HX0hBUkRXQVJFX19CQVNFX0NMQVNTID0gQUNUVUFUT1JfSEFSRFdBUkVfX0JBU0VfQ0xBU1M7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TmF0aXZlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR1JBU1BJTkdfSEFSRFdBUkVfX05BVElWRSA9IEFDVFVBVE9SX0hBUkRXQVJFX19OQVRJVkU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBQYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR1JBU1BJTkdfSEFSRFdBUkVfX0xJQlJBUllfUEFUSCA9IEFDVFVBVE9SX0hBUkRXQVJFX19MSUJSQVJZX1BBVEg7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBDb21wb25lbnQgTmFtZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEdSQVNQSU5HX0hBUkRXQVJFX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FID0gQUNUVUFUT1JfSEFSRFdBUkVfX0xJQlJBUllfQ09NUE9ORU5UX05BTUU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QWxpYXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHUkFTUElOR19IQVJEV0FSRV9fQUxJQVMgPSBBQ1RVQVRPUl9IQVJEV0FSRV9fQUxJQVM7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+R3Jhc3BpbmcgSGFyZHdhcmU8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR1JBU1BJTkdfSEFSRFdBUkVfRkVBVFVSRV9DT1VOVCA9IEFDVFVBVE9SX0hBUkRXQVJFX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkdyYXNwaW5nIEhhcmR3YXJlPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEdSQVNQSU5HX0hBUkRXQVJFX09QRVJBVElPTl9DT1VOVCA9IEFDVFVBVE9SX0hBUkRXQVJFX09QRVJBVElPTl9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN0ZWVyZWRXaGVlbEhhcmR3YXJlSW1wbCA8ZW0+U3RlZXJlZCBXaGVlbCBIYXJkd2FyZTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN0ZWVyZWRXaGVlbEhhcmR3YXJlSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFN0ZWVyZWRXaGVlbEhhcmR3YXJlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFNURUVSRURfV0hFRUxfSEFSRFdBUkUgPSA2OTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1RFRVJFRF9XSEVFTF9IQVJEV0FSRV9fQkFTRV9DTEFTUyA9IExPQ09NT1RJT05fSEFSRFdBUkVfX0JBU0VfQ0xBU1M7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TmF0aXZlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1RFRVJFRF9XSEVFTF9IQVJEV0FSRV9fTkFUSVZFID0gTE9DT01PVElPTl9IQVJEV0FSRV9fTkFUSVZFOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgUGF0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNURUVSRURfV0hFRUxfSEFSRFdBUkVfX0xJQlJBUllfUEFUSCA9IExPQ09NT1RJT05fSEFSRFdBUkVfX0xJQlJBUllfUEFUSDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1RFRVJFRF9XSEVFTF9IQVJEV0FSRV9fTElCUkFSWV9DT01QT05FTlRfTkFNRSA9IExPQ09NT1RJT05fSEFSRFdBUkVfX0xJQlJBUllfQ09NUE9ORU5UX05BTUU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QWxpYXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTVEVFUkVEX1dIRUVMX0hBUkRXQVJFX19BTElBUyA9IExPQ09NT1RJT05fSEFSRFdBUkVfX0FMSUFTOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlN0ZWVyZWQgV2hlZWwgSGFyZHdhcmU8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1RFRVJFRF9XSEVFTF9IQVJEV0FSRV9GRUFUVVJFX0NPVU5UID0gTE9DT01PVElPTl9IQVJEV0FSRV9GRUFUVVJFX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5TdGVlcmVkIFdoZWVsIEhhcmR3YXJlPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNURUVSRURfV0hFRUxfSEFSRFdBUkVfT1BFUkFUSU9OX0NPVU5UID0gTE9DT01PVElPTl9IQVJEV0FSRV9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Bcm1JbXBsIDxlbT5Bcm08L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Bcm1JbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0QXJtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IEFSTSA9IDcwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkFybTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBBUk1fRkVBVFVSRV9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+QXJtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEFSTV9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5MZWdTeXN0ZW1JbXBsIDxlbT5MZWcgU3lzdGVtPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTGVnU3lzdGVtSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldExlZ1N5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBMRUdfU1lTVEVNID0gNzE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExFR19TWVNURU1fX0JBU0VfQ0xBU1MgPSBMT0NPTU9USU9OX1NZU1RFTV9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYXRpdmU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMRUdfU1lTVEVNX19OQVRJVkUgPSBMT0NPTU9USU9OX1NZU1RFTV9fTkFUSVZFOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgUGF0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExFR19TWVNURU1fX0xJQlJBUllfUEFUSCA9IExPQ09NT1RJT05fU1lTVEVNX19MSUJSQVJZX1BBVEg7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBDb21wb25lbnQgTmFtZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExFR19TWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUUgPSBMT0NPTU9USU9OX1NZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbGlhczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExFR19TWVNURU1fX0FMSUFTID0gTE9DT01PVElPTl9TWVNURU1fX0FMSUFTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIFBvc2l0aW9uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTEVHX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04gPSBMT0NPTU9USU9OX1NZU1RFTV9fTE9DQUxfUE9TSVRJT047CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgT3JpZW50YXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMRUdfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiA9IExPQ09NT1RJT05fU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5MZWcgU3lzdGVtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExFR19TWVNURU1fRkVBVFVSRV9DT1VOVCA9IExPQ09NT1RJT05fU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkxlZyBTeXN0ZW08L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTEVHX1NZU1RFTV9PUEVSQVRJT05fQ09VTlQgPSBMT0NPTU9USU9OX1NZU1RFTV9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5HcmFzcGluZ1N5c3RlbUltcGwgPGVtPkdyYXNwaW5nIFN5c3RlbTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkdyYXNwaW5nU3lzdGVtSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldEdyYXNwaW5nU3lzdGVtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IEdSQVNQSU5HX1NZU1RFTSA9IDcyOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHUkFTUElOR19TWVNURU1fX0JBU0VfQ0xBU1MgPSBBQ1RVQVRPUl9TWVNURU1fX0JBU0VfQ0xBU1M7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TmF0aXZlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR1JBU1BJTkdfU1lTVEVNX19OQVRJVkUgPSBBQ1RVQVRPUl9TWVNURU1fX05BVElWRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IFBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHUkFTUElOR19TWVNURU1fX0xJQlJBUllfUEFUSCA9IEFDVFVBVE9SX1NZU1RFTV9fTElCUkFSWV9QQVRIOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgQ29tcG9uZW50IE5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHUkFTUElOR19TWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUUgPSBBQ1RVQVRPUl9TWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QWxpYXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHUkFTUElOR19TWVNURU1fX0FMSUFTID0gQUNUVUFUT1JfU1lTVEVNX19BTElBUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBQb3NpdGlvbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEdSQVNQSU5HX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04gPSBBQ1RVQVRPUl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIE9yaWVudGF0aW9uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR1JBU1BJTkdfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiA9IEFDVFVBVE9SX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT047CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+R3Jhc3BpbmcgU3lzdGVtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEdSQVNQSU5HX1NZU1RFTV9GRUFUVVJFX0NPVU5UID0gQUNUVUFUT1JfU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkdyYXNwaW5nIFN5c3RlbTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHUkFTUElOR19TWVNURU1fT1BFUkFUSU9OX0NPVU5UID0gQUNUVUFUT1JfU1lTVEVNX09QRVJBVElPTl9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLldlYXBvblN5c3RlbUltcGwgPGVtPldlYXBvbiBTeXN0ZW08L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5XZWFwb25TeXN0ZW1JbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0V2VhcG9uU3lzdGVtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFdFQVBPTl9TWVNURU0gPSA3MzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgV0VBUE9OX1NZU1RFTV9fQkFTRV9DTEFTUyA9IEFDVFVBVE9SX1NZU1RFTV9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYXRpdmU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBXRUFQT05fU1lTVEVNX19OQVRJVkUgPSBBQ1RVQVRPUl9TWVNURU1fX05BVElWRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IFBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBXRUFQT05fU1lTVEVNX19MSUJSQVJZX1BBVEggPSBBQ1RVQVRPUl9TWVNURU1fX0xJQlJBUllfUEFUSDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgV0VBUE9OX1NZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRSA9IEFDVFVBVE9SX1NZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbGlhczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFdFQVBPTl9TWVNURU1fX0FMSUFTID0gQUNUVUFUT1JfU1lTVEVNX19BTElBUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBQb3NpdGlvbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFdFQVBPTl9TWVNURU1fX0xPQ0FMX1BPU0lUSU9OID0gQUNUVUFUT1JfU1lTVEVNX19MT0NBTF9QT1NJVElPTjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb2NhbCBPcmllbnRhdGlvbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFdFQVBPTl9TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OID0gQUNUVUFUT1JfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5XZWFwb24gU3lzdGVtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFdFQVBPTl9TWVNURU1fRkVBVFVSRV9DT1VOVCA9IEFDVFVBVE9SX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5XZWFwb24gU3lzdGVtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFdFQVBPTl9TWVNURU1fT1BFUkFUSU9OX0NPVU5UID0gQUNUVUFUT1JfU1lTVEVNX09QRVJBVElPTl9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW1JbXBsIDxlbT5NYW4gTWFjaGluZSBJbnRlcmZhY2UgU3lzdGVtPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTWFuTWFjaGluZUludGVyZmFjZVN5c3RlbUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IE1BTl9NQUNISU5FX0lOVEVSRkFDRV9TWVNURU0gPSA3NDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTUFOX01BQ0hJTkVfSU5URVJGQUNFX1NZU1RFTV9fQkFTRV9DTEFTUyA9IENZQkVSX1BIWVNJQ0FMX1NZU1RFTV9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYXRpdmU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBNQU5fTUFDSElORV9JTlRFUkZBQ0VfU1lTVEVNX19OQVRJVkUgPSBDWUJFUl9QSFlTSUNBTF9TWVNURU1fX05BVElWRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IFBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBNQU5fTUFDSElORV9JTlRFUkZBQ0VfU1lTVEVNX19MSUJSQVJZX1BBVEggPSBDWUJFUl9QSFlTSUNBTF9TWVNURU1fX0xJQlJBUllfUEFUSDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTUFOX01BQ0hJTkVfSU5URVJGQUNFX1NZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRSA9IENZQkVSX1BIWVNJQ0FMX1NZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbGlhczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE1BTl9NQUNISU5FX0lOVEVSRkFDRV9TWVNURU1fX0FMSUFTID0gQ1lCRVJfUEhZU0lDQUxfU1lTVEVNX19BTElBUzsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5NYW4gTWFjaGluZSBJbnRlcmZhY2UgU3lzdGVtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE1BTl9NQUNISU5FX0lOVEVSRkFDRV9TWVNURU1fRkVBVFVSRV9DT1VOVCA9IENZQkVSX1BIWVNJQ0FMX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5NYW4gTWFjaGluZSBJbnRlcmZhY2UgU3lzdGVtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE1BTl9NQUNISU5FX0lOVEVSRkFDRV9TWVNURU1fT1BFUkFUSU9OX0NPVU5UID0gQ1lCRVJfUEhZU0lDQUxfU1lTVEVNX09QRVJBVElPTl9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkNsb3NlZExvb3BDb250cm9sU3lzdGVtSW1wbCA8ZW0+Q2xvc2VkIExvb3AgQ29udHJvbCBTeXN0ZW08L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5DbG9zZWRMb29wQ29udHJvbFN5c3RlbUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRDbG9zZWRMb29wQ29udHJvbFN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBDTE9TRURfTE9PUF9DT05UUk9MX1NZU1RFTSA9IDc1OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDTE9TRURfTE9PUF9DT05UUk9MX1NZU1RFTV9fQkFTRV9DTEFTUyA9IENZQkVSX1BIWVNJQ0FMX1NZU1RFTV9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYXRpdmU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDTE9TRURfTE9PUF9DT05UUk9MX1NZU1RFTV9fTkFUSVZFID0gQ1lCRVJfUEhZU0lDQUxfU1lTVEVNX19OQVRJVkU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBQYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0xPU0VEX0xPT1BfQ09OVFJPTF9TWVNURU1fX0xJQlJBUllfUEFUSCA9IENZQkVSX1BIWVNJQ0FMX1NZU1RFTV9fTElCUkFSWV9QQVRIOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgQ29tcG9uZW50IE5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDTE9TRURfTE9PUF9DT05UUk9MX1NZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRSA9IENZQkVSX1BIWVNJQ0FMX1NZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbGlhczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IENMT1NFRF9MT09QX0NPTlRST0xfU1lTVEVNX19BTElBUyA9IENZQkVSX1BIWVNJQ0FMX1NZU1RFTV9fQUxJQVM7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+Q2xvc2VkIExvb3AgQ29udHJvbCBTeXN0ZW08L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0xPU0VEX0xPT1BfQ09OVFJPTF9TWVNURU1fRkVBVFVSRV9DT1VOVCA9IENZQkVSX1BIWVNJQ0FMX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5DbG9zZWQgTG9vcCBDb250cm9sIFN5c3RlbTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDTE9TRURfTE9PUF9DT05UUk9MX1NZU1RFTV9PUEVSQVRJT05fQ09VTlQgPSBDWUJFUl9QSFlTSUNBTF9TWVNURU1fT1BFUkFUSU9OX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuT3Blbkxvb3BDb250cm9sU3lzdGVtSW1wbCA8ZW0+T3BlbiBMb29wIENvbnRyb2wgU3lzdGVtPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuT3Blbkxvb3BDb250cm9sU3lzdGVtSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldE9wZW5Mb29wQ29udHJvbFN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBPUEVOX0xPT1BfQ09OVFJPTF9TWVNURU0gPSA3NjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT1BFTl9MT09QX0NPTlRST0xfU1lTVEVNX19CQVNFX0NMQVNTID0gQ1lCRVJfUEhZU0lDQUxfU1lTVEVNX19CQVNFX0NMQVNTOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk5hdGl2ZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE9QRU5fTE9PUF9DT05UUk9MX1NZU1RFTV9fTkFUSVZFID0gQ1lCRVJfUEhZU0lDQUxfU1lTVEVNX19OQVRJVkU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBQYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT1BFTl9MT09QX0NPTlRST0xfU1lTVEVNX19MSUJSQVJZX1BBVEggPSBDWUJFUl9QSFlTSUNBTF9TWVNURU1fX0xJQlJBUllfUEFUSDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT1BFTl9MT09QX0NPTlRST0xfU1lTVEVNX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FID0gQ1lCRVJfUEhZU0lDQUxfU1lTVEVNX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkFsaWFzPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT1BFTl9MT09QX0NPTlRST0xfU1lTVEVNX19BTElBUyA9IENZQkVSX1BIWVNJQ0FMX1NZU1RFTV9fQUxJQVM7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+T3BlbiBMb29wIENvbnRyb2wgU3lzdGVtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE9QRU5fTE9PUF9DT05UUk9MX1NZU1RFTV9GRUFUVVJFX0NPVU5UID0gQ1lCRVJfUEhZU0lDQUxfU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPk9wZW4gTG9vcCBDb250cm9sIFN5c3RlbTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPUEVOX0xPT1BfQ09OVFJPTF9TWVNURU1fT1BFUkFUSU9OX0NPVU5UID0gQ1lCRVJfUEhZU0lDQUxfU1lTVEVNX09QRVJBVElPTl9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90aWNIZWFkSW1wbCA8ZW0+Um9ib3RpYyBIZWFkPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RpY0hlYWRJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0Um9ib3RpY0hlYWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgUk9CT1RJQ19IRUFEID0gNzc7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFJPQk9USUNfSEVBRF9fQkFTRV9DTEFTUyA9IE1BTl9NQUNISU5FX0lOVEVSRkFDRV9TWVNURU1fX0JBU0VfQ0xBU1M7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TmF0aXZlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUk9CT1RJQ19IRUFEX19OQVRJVkUgPSBNQU5fTUFDSElORV9JTlRFUkZBQ0VfU1lTVEVNX19OQVRJVkU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBQYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUk9CT1RJQ19IRUFEX19MSUJSQVJZX1BBVEggPSBNQU5fTUFDSElORV9JTlRFUkZBQ0VfU1lTVEVNX19MSUJSQVJZX1BBVEg7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBDb21wb25lbnQgTmFtZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFJPQk9USUNfSEVBRF9fTElCUkFSWV9DT01QT05FTlRfTkFNRSA9IE1BTl9NQUNISU5FX0lOVEVSRkFDRV9TWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QWxpYXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBST0JPVElDX0hFQURfX0FMSUFTID0gTUFOX01BQ0hJTkVfSU5URVJGQUNFX1NZU1RFTV9fQUxJQVM7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+Um9ib3RpYyBIZWFkPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFJPQk9USUNfSEVBRF9GRUFUVVJFX0NPVU5UID0gTUFOX01BQ0hJTkVfSU5URVJGQUNFX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5Sb2JvdGljIEhlYWQ8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUk9CT1RJQ19IRUFEX09QRVJBVElPTl9DT1VOVCA9IE1BTl9NQUNISU5FX0lOVEVSRkFDRV9TWVNURU1fT1BFUkFUSU9OX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW1JbXBsIDxlbT5OYXZpZ2F0aW9uIENvbW1hbmQgU3lzdGVtPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW1JbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0TmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgTkFWSUdBVElPTl9DT01NQU5EX1NZU1RFTSA9IDc4OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBOQVZJR0FUSU9OX0NPTU1BTkRfU1lTVEVNX19CQVNFX0NMQVNTID0gTUFOX01BQ0hJTkVfSU5URVJGQUNFX1NZU1RFTV9fQkFTRV9DTEFTUzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYXRpdmU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBOQVZJR0FUSU9OX0NPTU1BTkRfU1lTVEVNX19OQVRJVkUgPSBNQU5fTUFDSElORV9JTlRFUkZBQ0VfU1lTVEVNX19OQVRJVkU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBQYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTkFWSUdBVElPTl9DT01NQU5EX1NZU1RFTV9fTElCUkFSWV9QQVRIID0gTUFOX01BQ0hJTkVfSU5URVJGQUNFX1NZU1RFTV9fTElCUkFSWV9QQVRIOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgQ29tcG9uZW50IE5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBOQVZJR0FUSU9OX0NPTU1BTkRfU1lTVEVNX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FID0gTUFOX01BQ0hJTkVfSU5URVJGQUNFX1NZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbGlhczwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE5BVklHQVRJT05fQ09NTUFORF9TWVNURU1fX0FMSUFTID0gTUFOX01BQ0hJTkVfSU5URVJGQUNFX1NZU1RFTV9fQUxJQVM7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+TmF2aWdhdGlvbiBDb21tYW5kIFN5c3RlbTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBOQVZJR0FUSU9OX0NPTU1BTkRfU1lTVEVNX0ZFQVRVUkVfQ09VTlQgPSBNQU5fTUFDSElORV9JTlRFUkZBQ0VfU1lTVEVNX0ZFQVRVUkVfQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPk5hdmlnYXRpb24gQ29tbWFuZCBTeXN0ZW08L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTkFWSUdBVElPTl9DT01NQU5EX1NZU1RFTV9PUEVSQVRJT05fQ09VTlQgPSBNQU5fTUFDSElORV9JTlRFUkZBQ0VfU1lTVEVNX09QRVJBVElPTl9DT1VOVCArIDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtSW1wbCA8ZW0+Sm95c3RpYyBOYXZpZ2F0aW9uIFN5c3RlbTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldEpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IEpPWVNUSUNfTkFWSUdBVElPTl9TWVNURU0gPSA3OTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5CYXNlIENsYXNzPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSk9ZU1RJQ19OQVZJR0FUSU9OX1NZU1RFTV9fQkFTRV9DTEFTUyA9IE5BVklHQVRJT05fQ09NTUFORF9TWVNURU1fX0JBU0VfQ0xBU1M7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TmF0aXZlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSk9ZU1RJQ19OQVZJR0FUSU9OX1NZU1RFTV9fTkFUSVZFID0gTkFWSUdBVElPTl9DT01NQU5EX1NZU1RFTV9fTkFUSVZFOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgUGF0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEpPWVNUSUNfTkFWSUdBVElPTl9TWVNURU1fX0xJQlJBUllfUEFUSCA9IE5BVklHQVRJT05fQ09NTUFORF9TWVNURU1fX0xJQlJBUllfUEFUSDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSk9ZU1RJQ19OQVZJR0FUSU9OX1NZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRSA9IE5BVklHQVRJT05fQ09NTUFORF9TWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QWxpYXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBKT1lTVElDX05BVklHQVRJT05fU1lTVEVNX19BTElBUyA9IE5BVklHQVRJT05fQ09NTUFORF9TWVNURU1fX0FMSUFTOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkpveXN0aWMgTmF2aWdhdGlvbiBTeXN0ZW08L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSk9ZU1RJQ19OQVZJR0FUSU9OX1NZU1RFTV9GRUFUVVJFX0NPVU5UID0gTkFWSUdBVElPTl9DT01NQU5EX1NZU1RFTV9GRUFUVVJFX0NPVU5UICsgMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5Kb3lzdGljIE5hdmlnYXRpb24gU3lzdGVtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEpPWVNUSUNfTkFWSUdBVElPTl9TWVNURU1fT1BFUkFUSU9OX0NPVU5UID0gTkFWSUdBVElPTl9DT01NQU5EX1NZU1RFTV9PUEVSQVRJT05fQ09VTlQgKyAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3luY2hyb25pemF0aW9uS2luZCA8ZW0+U3luY2hyb25pemF0aW9uIEtpbmQ8L2VtPn0nIGVudW0uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeW5jaHJvbml6YXRpb25LaW5kCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0U3luY2hyb25pemF0aW9uS2luZCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBTWU5DSFJPTklaQVRJT05fS0lORCA9IDgwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGF0YUZsb3dEaXJlY3Rpb25LaW5kIDxlbT5EYXRhIEZsb3cgRGlyZWN0aW9uIEtpbmQ8L2VtPn0nIGVudW0uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EYXRhRmxvd0RpcmVjdGlvbktpbmQKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXREYXRhRmxvd0RpcmVjdGlvbktpbmQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgREFUQV9GTE9XX0RJUkVDVElPTl9LSU5EID0gODE7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlRmxvd0tpbmQgPGVtPlNlcnZpY2UgRmxvdyBLaW5kPC9lbT59JyBlbnVtLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2VydmljZUZsb3dLaW5kCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0U2VydmljZUZsb3dLaW5kKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFNFUlZJQ0VfRkxPV19LSU5EID0gODI7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5VR1ZLaW5kIDxlbT5VR1YgS2luZDwvZW0+fScgZW51bS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlVHVktpbmQKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRVR1ZLaW5kKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFVHVl9LSU5EID0gODM7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljTWlkZGxld2FyZUtpbmQgPGVtPlJvYm90aWMgTWlkZGxld2FyZSBLaW5kPC9lbT59JyBlbnVtLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmVLaW5kCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0Um9ib3RpY01pZGRsZXdhcmVLaW5kKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFJPQk9USUNfTUlERExFV0FSRV9LSU5EID0gODQ7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TaGFkZSA8ZW0+U2hhZGU8L2VtPn0nIGVudW0uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TaGFkZQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFNoYWRlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFNIQURFID0gODU7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Nb2JpbGVSb2JvdEtpbmQgPGVtPk1vYmlsZSBSb2JvdCBLaW5kPC9lbT59JyBlbnVtLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTW9iaWxlUm9ib3RLaW5kCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0TW9iaWxlUm9ib3RLaW5kKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IE1PQklMRV9ST0JPVF9LSU5EID0gODY7CisKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5UcmFuc2l0aW9uIDxlbT5UcmFuc2l0aW9uPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlRyYW5zaXRpb248L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVHJhbnNpdGlvbgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0VHJhbnNpdGlvbigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVHJhbnNpdGlvbiNnZXRCYXNlX1RyYW5zaXRpb24gPGVtPkJhc2UgVHJhbnNpdGlvbjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPGVtPkJhc2UgVHJhbnNpdGlvbjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5UcmFuc2l0aW9uI2dldEJhc2VfVHJhbnNpdGlvbigpCisJICogQHNlZSAjZ2V0VHJhbnNpdGlvbigpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0VHJhbnNpdGlvbl9CYXNlX1RyYW5zaXRpb24oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlRyYW5zaXRpb24jZ2V0R3VhcmQgPGVtPkd1YXJkPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8ZW0+R3VhcmQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVHJhbnNpdGlvbiNnZXRHdWFyZCgpCisJICogQHNlZSAjZ2V0VHJhbnNpdGlvbigpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0VHJhbnNpdGlvbl9HdWFyZCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVHJhbnNpdGlvbiNnZXRFZmZlY3QgPGVtPkVmZmVjdDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPGVtPkVmZmVjdDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5UcmFuc2l0aW9uI2dldEVmZmVjdCgpCisJICogQHNlZSAjZ2V0VHJhbnNpdGlvbigpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0VHJhbnNpdGlvbl9FZmZlY3QoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0gPGVtPkFsZ29yaXRobTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5BbGdvcml0aG08L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRBbGdvcml0aG0oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobSNnZXRCYXNlX09wZXJhdGlvbiA8ZW0+QmFzZSBPcGVyYXRpb248L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxlbT5CYXNlIE9wZXJhdGlvbjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0jZ2V0QmFzZV9PcGVyYXRpb24oKQorCSAqIEBzZWUgI2dldEFsZ29yaXRobSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0QWxnb3JpdGhtX0Jhc2VfT3BlcmF0aW9uKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0jaXNFeHRlcm5hbCA8ZW0+SXMgRXh0ZXJuYWw8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5JcyBFeHRlcm5hbDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0jaXNFeHRlcm5hbCgpCisJICogQHNlZSAjZ2V0QWxnb3JpdGhtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRBbGdvcml0aG1fSXNFeHRlcm5hbCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtI2dldEV4dEZ1bmN0aW9uTmFtZSA8ZW0+RXh0IEZ1bmN0aW9uIE5hbWU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5FeHQgRnVuY3Rpb24gTmFtZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0jZ2V0RXh0RnVuY3Rpb25OYW1lKCkKKwkgKiBAc2VlICNnZXRBbGdvcml0aG0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEFsZ29yaXRobV9FeHRGdW5jdGlvbk5hbWUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobSNnZXRMaWJQYXRoIDxlbT5MaWIgUGF0aDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkxpYiBQYXRoPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobSNnZXRMaWJQYXRoKCkKKwkgKiBAc2VlICNnZXRBbGdvcml0aG0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEFsZ29yaXRobV9MaWJQYXRoKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0jZ2V0TGliRmlsZUZvcm1hdCA8ZW0+TGliIEZpbGUgRm9ybWF0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+TGliIEZpbGUgRm9ybWF0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobSNnZXRMaWJGaWxlRm9ybWF0KCkKKwkgKiBAc2VlICNnZXRBbGdvcml0aG0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEFsZ29yaXRobV9MaWJGaWxlRm9ybWF0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RhdGUgPGVtPlN0YXRlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlN0YXRlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0YXRlCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRTdGF0ZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RhdGUjZ2V0QmFzZV9TdGF0ZSA8ZW0+QmFzZSBTdGF0ZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPGVtPkJhc2UgU3RhdGU8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RhdGUjZ2V0QmFzZV9TdGF0ZSgpCisJICogQHNlZSAjZ2V0U3RhdGUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFN0YXRlX0Jhc2VfU3RhdGUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0YXRlI2dldEJlaGF2aW9yIDxlbT5CZWhhdmlvcjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPGVtPkJlaGF2aW9yPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0YXRlI2dldEJlaGF2aW9yKCkKKwkgKiBAc2VlICNnZXRTdGF0ZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0U3RhdGVfQmVoYXZpb3IoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRlZEpvaW50IDxlbT5BY3R1YXRlZCBKb2ludDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5BY3R1YXRlZCBKb2ludDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRlZEpvaW50CisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRBY3R1YXRlZEpvaW50KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSm9pbnQgPGVtPkpvaW50PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkpvaW50PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkpvaW50CisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRKb2ludCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSm9pbnQjZ2V0QmFzZV9Db25uZWN0b3IgPGVtPkJhc2UgQ29ubmVjdG9yPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8ZW0+QmFzZSBDb25uZWN0b3I8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSm9pbnQjZ2V0QmFzZV9Db25uZWN0b3IoKQorCSAqIEBzZWUgI2dldEpvaW50KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRKb2ludF9CYXNlX0Nvbm5lY3RvcigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNvbXBsZXRlQm9uZGluZyA8ZW0+Q29tcGxldGUgQm9uZGluZzwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5Db21wbGV0ZSBCb25kaW5nPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNvbXBsZXRlQm9uZGluZworCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0Q29tcGxldGVCb25kaW5nKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3QgPGVtPlJvYm90PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlJvYm90PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90CisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRSb2JvdCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3QjZ2V0V2lkdGggPGVtPldpZHRoPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+V2lkdGg8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3QjZ2V0V2lkdGgoKQorCSAqIEBzZWUgI2dldFJvYm90KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRSb2JvdF9XaWR0aCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSA8ZW0+U3lzdGVtPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlN5c3RlbTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldFN5c3RlbSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtI2dldEJhc2VfQ2xhc3MgPGVtPkJhc2UgQ2xhc3M8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxlbT5CYXNlIENsYXNzPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSNnZXRCYXNlX0NsYXNzKCkKKwkgKiBAc2VlICNnZXRTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFN5c3RlbV9CYXNlX0NsYXNzKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0jaXNOYXRpdmUgPGVtPk5hdGl2ZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPk5hdGl2ZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0jaXNOYXRpdmUoKQorCSAqIEBzZWUgI2dldFN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0U3lzdGVtX05hdGl2ZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtI2dldExpYnJhcnlQYXRoIDxlbT5MaWJyYXJ5IFBhdGg8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5MaWJyYXJ5IFBhdGg8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtI2dldExpYnJhcnlQYXRoKCkKKwkgKiBAc2VlICNnZXRTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFN5c3RlbV9MaWJyYXJ5UGF0aCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtI2dldExpYnJhcnlDb21wb25lbnROYW1lIDxlbT5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+TGlicmFyeSBDb21wb25lbnQgTmFtZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0jZ2V0TGlicmFyeUNvbXBvbmVudE5hbWUoKQorCSAqIEBzZWUgI2dldFN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0U3lzdGVtX0xpYnJhcnlDb21wb25lbnROYW1lKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0jZ2V0QWxpYXMgPGVtPkFsaWFzPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+QWxpYXM8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtI2dldEFsaWFzKCkKKwkgKiBAc2VlICNnZXRTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFN5c3RlbV9BbGlhcygpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFnZW50IDxlbT5BZ2VudDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5BZ2VudDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BZ2VudAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0QWdlbnQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaHlzaWNhbE9iamVjdCA8ZW0+UGh5c2ljYWwgT2JqZWN0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlBoeXNpY2FsIE9iamVjdDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaHlzaWNhbE9iamVjdAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0UGh5c2ljYWxPYmplY3QoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBoeXNpY2FsT2JqZWN0I2dldEhlaWdodCA8ZW0+SGVpZ2h0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+SGVpZ2h0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBoeXNpY2FsT2JqZWN0I2dldEhlaWdodCgpCisJICogQHNlZSAjZ2V0UGh5c2ljYWxPYmplY3QoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFBoeXNpY2FsT2JqZWN0X0hlaWdodCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGh5c2ljYWxPYmplY3QjZ2V0TWFzcyA8ZW0+TWFzczwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPk1hc3M8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGh5c2ljYWxPYmplY3QjZ2V0TWFzcygpCisJICogQHNlZSAjZ2V0UGh5c2ljYWxPYmplY3QoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFBoeXNpY2FsT2JqZWN0X01hc3MoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBoeXNpY2FsT2JqZWN0I2dldEJhc2VfQ2xhc3MgPGVtPkJhc2UgQ2xhc3M8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxlbT5CYXNlIENsYXNzPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBoeXNpY2FsT2JqZWN0I2dldEJhc2VfQ2xhc3MoKQorCSAqIEBzZWUgI2dldFBoeXNpY2FsT2JqZWN0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRQaHlzaWNhbE9iamVjdF9CYXNlX0NsYXNzKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRW52aXJvbm1lbnQgPGVtPkVudmlyb25tZW50PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkVudmlyb25tZW50PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkVudmlyb25tZW50CisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRFbnZpcm9ubWVudCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRW52aXJvbm1lbnQjZ2V0QmFzZV9DbGFzcyA8ZW0+QmFzZSBDbGFzczwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPGVtPkJhc2UgQ2xhc3M8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRW52aXJvbm1lbnQjZ2V0QmFzZV9DbGFzcygpCisJICogQHNlZSAjZ2V0RW52aXJvbm1lbnQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldEVudmlyb25tZW50X0Jhc2VfQ2xhc3MoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlIDxlbT5TdXJmYWNlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlN1cmZhY2U8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0U3VyZmFjZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRhdGFGbG93UG9ydCA8ZW0+RGF0YSBGbG93IFBvcnQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+RGF0YSBGbG93IFBvcnQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGF0YUZsb3dQb3J0CisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXREYXRhRmxvd1BvcnQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRhdGFGbG93UG9ydCNnZXREaXJlY3Rpb24gPGVtPkRpcmVjdGlvbjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkRpcmVjdGlvbjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EYXRhRmxvd1BvcnQjZ2V0RGlyZWN0aW9uKCkKKwkgKiBAc2VlICNnZXREYXRhRmxvd1BvcnQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldERhdGFGbG93UG9ydF9EaXJlY3Rpb24oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRhdGFGbG93UG9ydCNnZXRCdWZmZXJTaXplIDxlbT5CdWZmZXIgU2l6ZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkJ1ZmZlciBTaXplPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRhdGFGbG93UG9ydCNnZXRCdWZmZXJTaXplKCkKKwkgKiBAc2VlICNnZXREYXRhRmxvd1BvcnQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldERhdGFGbG93UG9ydF9CdWZmZXJTaXplKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG9ydCA8ZW0+UG9ydDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5Qb3J0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBvcnQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldFBvcnQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBvcnQjZ2V0QmFzZV9Qb3J0IDxlbT5CYXNlIFBvcnQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxlbT5CYXNlIFBvcnQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG9ydCNnZXRCYXNlX1BvcnQoKQorCSAqIEBzZWUgI2dldFBvcnQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFBvcnRfQmFzZV9Qb3J0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Qb3J0I2dldFN5bmNocm9uaXphdGlvblBvbGljeSA8ZW0+U3luY2hyb25pemF0aW9uIFBvbGljeTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlN5bmNocm9uaXphdGlvbiBQb2xpY3k8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG9ydCNnZXRTeW5jaHJvbml6YXRpb25Qb2xpY3koKQorCSAqIEBzZWUgI2dldFBvcnQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFBvcnRfU3luY2hyb25pemF0aW9uUG9saWN5KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2VydmljZVBvcnQgPGVtPlNlcnZpY2UgUG9ydDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5TZXJ2aWNlIFBvcnQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2VydmljZVBvcnQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldFNlcnZpY2VQb3J0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlUG9ydCNnZXRLaW5kIDxlbT5LaW5kPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+S2luZDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlUG9ydCNnZXRLaW5kKCkKKwkgKiBAc2VlICNnZXRTZXJ2aWNlUG9ydCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0U2VydmljZVBvcnRfS2luZCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFjdHVhdG9yU3lzdGVtIDxlbT5BY3R1YXRvciBTeXN0ZW08L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+QWN0dWF0b3IgU3lzdGVtPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFjdHVhdG9yU3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRBY3R1YXRvclN5c3RlbSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTeXN0ZW0gPGVtPlJvYm90aWMgU3lzdGVtPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlJvYm90aWMgU3lzdGVtPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTeXN0ZW0KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldFJvYm90aWNTeXN0ZW0oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTeXN0ZW0jZ2V0TG9jYWxQb3NpdGlvbiA8ZW0+TG9jYWwgUG9zaXRpb248L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5Mb2NhbCBQb3NpdGlvbjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljU3lzdGVtI2dldExvY2FsUG9zaXRpb24oKQorCSAqIEBzZWUgI2dldFJvYm90aWNTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFJvYm90aWNTeXN0ZW1fTG9jYWxQb3NpdGlvbigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY1N5c3RlbSNnZXRMb2NhbE9yaWVudGF0aW9uIDxlbT5Mb2NhbCBPcmllbnRhdGlvbjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPkxvY2FsIE9yaWVudGF0aW9uPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTeXN0ZW0jZ2V0TG9jYWxPcmllbnRhdGlvbigpCisJICogQHNlZSAjZ2V0Um9ib3RpY1N5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0Um9ib3RpY1N5c3RlbV9Mb2NhbE9yaWVudGF0aW9uKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ3liZXJQaHlzaWNhbFN5c3RlbSA8ZW0+Q3liZXIgUGh5c2ljYWwgU3lzdGVtPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkN5YmVyIFBoeXNpY2FsIFN5c3RlbTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DeWJlclBoeXNpY2FsU3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRDeWJlclBoeXNpY2FsU3lzdGVtKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2Vuc29yU3lzdGVtIDxlbT5TZW5zb3IgU3lzdGVtPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlNlbnNvciBTeXN0ZW08L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2Vuc29yU3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRTZW5zb3JTeXN0ZW0oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvclN5c3RlbSNnZXRGcmVxdWVuY3kgPGVtPkZyZXF1ZW5jeTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkZyZXF1ZW5jeTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZW5zb3JTeXN0ZW0jZ2V0RnJlcXVlbmN5KCkKKwkgKiBAc2VlICNnZXRTZW5zb3JTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFNlbnNvclN5c3RlbV9GcmVxdWVuY3koKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvclN5c3RlbSNnZXRJZGVudGlmaWVyIDxlbT5JZGVudGlmaWVyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+SWRlbnRpZmllcjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZW5zb3JTeXN0ZW0jZ2V0SWRlbnRpZmllcigpCisJICogQHNlZSAjZ2V0U2Vuc29yU3lzdGVtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRTZW5zb3JTeXN0ZW1fSWRlbnRpZmllcigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkhhcmR3YXJlIDxlbT5IYXJkd2FyZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5IYXJkd2FyZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5IYXJkd2FyZQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0SGFyZHdhcmUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Tb2Z0d2FyZSA8ZW0+U29mdHdhcmU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+U29mdHdhcmU8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU29mdHdhcmUKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldFNvZnR3YXJlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Tb2Z0d2FyZSNpc1BlcmlvZGljIDxlbT5JcyBQZXJpb2RpYzwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPklzIFBlcmlvZGljPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNvZnR3YXJlI2lzUGVyaW9kaWMoKQorCSAqIEBzZWUgI2dldFNvZnR3YXJlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRTb2Z0d2FyZV9Jc1BlcmlvZGljKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Tb2Z0d2FyZSNnZXRQZXJpb2QgPGVtPlBlcmlvZDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlBlcmlvZDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Tb2Z0d2FyZSNnZXRQZXJpb2QoKQorCSAqIEBzZWUgI2dldFNvZnR3YXJlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRTb2Z0d2FyZV9QZXJpb2QoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNvZnR3YXJlI2dldFByaW9yaXR5IDxlbT5Qcmlvcml0eTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlByaW9yaXR5PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNvZnR3YXJlI2dldFByaW9yaXR5KCkKKwkgKiBAc2VlICNnZXRTb2Z0d2FyZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0U29mdHdhcmVfUHJpb3JpdHkoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNvZnR3YXJlI2dldERlYWRsaW5lIDxlbT5EZWFkbGluZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkRlYWRsaW5lPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNvZnR3YXJlI2dldERlYWRsaW5lKCkKKwkgKiBAc2VlICNnZXRTb2Z0d2FyZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0U29mdHdhcmVfRGVhZGxpbmUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNvZnR3YXJlI2dldFdjZXQgPGVtPldjZXQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5XY2V0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNvZnR3YXJlI2dldFdjZXQoKQorCSAqIEBzZWUgI2dldFNvZnR3YXJlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRTb2Z0d2FyZV9XY2V0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRW5naW5lU3lzdGVtIDxlbT5FbmdpbmUgU3lzdGVtPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkVuZ2luZSBTeXN0ZW08L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRW5naW5lU3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRFbmdpbmVTeXN0ZW0oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkVuZ2luZVN5c3RlbSNnZXRWZWhpY2xlVHJhY3Rpb24gPGVtPlZlaGljbGUgVHJhY3Rpb248L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5WZWhpY2xlIFRyYWN0aW9uPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkVuZ2luZVN5c3RlbSNnZXRWZWhpY2xlVHJhY3Rpb24oKQorCSAqIEBzZWUgI2dldEVuZ2luZVN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0RW5naW5lU3lzdGVtX1ZlaGljbGVUcmFjdGlvbigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRW5naW5lU3lzdGVtI2dldE1heEVuZ2luZUZvcmNlIDxlbT5NYXggRW5naW5lIEZvcmNlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+TWF4IEVuZ2luZSBGb3JjZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FbmdpbmVTeXN0ZW0jZ2V0TWF4RW5naW5lRm9yY2UoKQorCSAqIEBzZWUgI2dldEVuZ2luZVN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0RW5naW5lU3lzdGVtX01heEVuZ2luZUZvcmNlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FbmdpbmVTeXN0ZW0jZ2V0TWF4QnJlYWtpbmdGb3JjZSA8ZW0+TWF4IEJyZWFraW5nIEZvcmNlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+TWF4IEJyZWFraW5nIEZvcmNlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkVuZ2luZVN5c3RlbSNnZXRNYXhCcmVha2luZ0ZvcmNlKCkKKwkgKiBAc2VlICNnZXRFbmdpbmVTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEVuZ2luZVN5c3RlbV9NYXhCcmVha2luZ0ZvcmNlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FbmdpbmVTeXN0ZW0jZ2V0TWF4QWxsb3dlZFN0ZWVyaW5nIDxlbT5NYXggQWxsb3dlZCBTdGVlcmluZzwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPk1heCBBbGxvd2VkIFN0ZWVyaW5nPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkVuZ2luZVN5c3RlbSNnZXRNYXhBbGxvd2VkU3RlZXJpbmcoKQorCSAqIEBzZWUgI2dldEVuZ2luZVN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0RW5naW5lU3lzdGVtX01heEFsbG93ZWRTdGVlcmluZygpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRW5naW5lU3lzdGVtI2dldE1heEFsbG93ZWRWZWxvY2l0eSA8ZW0+TWF4IEFsbG93ZWQgVmVsb2NpdHk8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5NYXggQWxsb3dlZCBWZWxvY2l0eTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FbmdpbmVTeXN0ZW0jZ2V0TWF4QWxsb3dlZFZlbG9jaXR5KCkKKwkgKiBAc2VlICNnZXRFbmdpbmVTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEVuZ2luZVN5c3RlbV9NYXhBbGxvd2VkVmVsb2NpdHkoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkVuZ2luZVN5c3RlbSNnZXRHZWFyX3JhdGlvbiA8ZW0+R2VhciByYXRpb248L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5HZWFyIHJhdGlvbjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FbmdpbmVTeXN0ZW0jZ2V0R2Vhcl9yYXRpb24oKQorCSAqIEBzZWUgI2dldEVuZ2luZVN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0RW5naW5lU3lzdGVtX0dlYXJfcmF0aW9uKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtIDxlbT5TdGVlcmVkIFdoZWVsIFN5c3RlbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5TdGVlcmVkIFdoZWVsIFN5c3RlbTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldFN0ZWVyZWRXaGVlbFN5c3RlbSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtI2dldFdoZWVsUmFkaXVzIDxlbT5XaGVlbCBSYWRpdXM8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5XaGVlbCBSYWRpdXM8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtI2dldFdoZWVsUmFkaXVzKCkKKwkgKiBAc2VlICNnZXRTdGVlcmVkV2hlZWxTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFN0ZWVyZWRXaGVlbFN5c3RlbV9XaGVlbFJhZGl1cygpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtI2dldFdoZWVsV2lkdGggPGVtPldoZWVsIFdpZHRoPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+V2hlZWwgV2lkdGg8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtI2dldFdoZWVsV2lkdGgoKQorCSAqIEBzZWUgI2dldFN0ZWVyZWRXaGVlbFN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1doZWVsV2lkdGgoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0ZWVyZWRXaGVlbFN5c3RlbSNnZXRTdXNwZW5zaW9uUmVzdExlbmd0aCA8ZW0+U3VzcGVuc2lvbiBSZXN0IExlbmd0aDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlN1c3BlbnNpb24gUmVzdCBMZW5ndGg8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtI2dldFN1c3BlbnNpb25SZXN0TGVuZ3RoKCkKKwkgKiBAc2VlICNnZXRTdGVlcmVkV2hlZWxTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFN0ZWVyZWRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uUmVzdExlbmd0aCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtI2dldFdoZWVsQ29ubmVjdGlvbkhlaWdodCA8ZW0+V2hlZWwgQ29ubmVjdGlvbiBIZWlnaHQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5XaGVlbCBDb25uZWN0aW9uIEhlaWdodDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0KCkKKwkgKiBAc2VlICNnZXRTdGVlcmVkV2hlZWxTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFN0ZWVyZWRXaGVlbFN5c3RlbV9XaGVlbENvbm5lY3Rpb25IZWlnaHQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0ZWVyZWRXaGVlbFN5c3RlbSNnZXRUeXBlT2ZXaGVlbCA8ZW0+VHlwZSBPZiBXaGVlbDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlR5cGUgT2YgV2hlZWw8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtI2dldFR5cGVPZldoZWVsKCkKKwkgKiBAc2VlICNnZXRTdGVlcmVkV2hlZWxTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFN0ZWVyZWRXaGVlbFN5c3RlbV9UeXBlT2ZXaGVlbCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtI2dldFdoZWVsVmVsb2NpdHlQSURrcCA8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtwPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtwPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0ZWVyZWRXaGVlbFN5c3RlbSNnZXRXaGVlbFZlbG9jaXR5UElEa3AoKQorCSAqIEBzZWUgI2dldFN0ZWVyZWRXaGVlbFN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURrcCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtI2dldFdoZWVsVmVsb2NpdHlQSURraSA8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtpPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtpPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0ZWVyZWRXaGVlbFN5c3RlbSNnZXRXaGVlbFZlbG9jaXR5UElEa2koKQorCSAqIEBzZWUgI2dldFN0ZWVyZWRXaGVlbFN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURraSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtI2dldFdoZWVsVmVsb2NpdHlQSURrZCA8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtkPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtkPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0ZWVyZWRXaGVlbFN5c3RlbSNnZXRXaGVlbFZlbG9jaXR5UElEa2QoKQorCSAqIEBzZWUgI2dldFN0ZWVyZWRXaGVlbFN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURrZCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtI2dldFdoZWVsU3RlZXJpbmdQSURrcCA8ZW0+V2hlZWwgU3RlZXJpbmcgUEkgRGtwPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+V2hlZWwgU3RlZXJpbmcgUEkgRGtwPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0ZWVyZWRXaGVlbFN5c3RlbSNnZXRXaGVlbFN0ZWVyaW5nUElEa3AoKQorCSAqIEBzZWUgI2dldFN0ZWVyZWRXaGVlbFN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1doZWVsU3RlZXJpbmdQSURrcCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtI2dldFdoZWVsU3RlZXJpbmdQSURrZCA8ZW0+V2hlZWwgU3RlZXJpbmcgUEkgRGtkPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+V2hlZWwgU3RlZXJpbmcgUEkgRGtkPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0ZWVyZWRXaGVlbFN5c3RlbSNnZXRXaGVlbFN0ZWVyaW5nUElEa2QoKQorCSAqIEBzZWUgI2dldFN0ZWVyZWRXaGVlbFN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1doZWVsU3RlZXJpbmdQSURrZCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtI2dldFdoZWVsRnJpY3Rpb24gPGVtPldoZWVsIEZyaWN0aW9uPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+V2hlZWwgRnJpY3Rpb248L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtI2dldFdoZWVsRnJpY3Rpb24oKQorCSAqIEBzZWUgI2dldFN0ZWVyZWRXaGVlbFN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1doZWVsRnJpY3Rpb24oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0ZWVyZWRXaGVlbFN5c3RlbSNnZXRTdXNwZW5zaW9uU3RpZmZuZXNzIDxlbT5TdXNwZW5zaW9uIFN0aWZmbmVzczwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlN1c3BlbnNpb24gU3RpZmZuZXNzPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0ZWVyZWRXaGVlbFN5c3RlbSNnZXRTdXNwZW5zaW9uU3RpZmZuZXNzKCkKKwkgKiBAc2VlICNnZXRTdGVlcmVkV2hlZWxTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFN0ZWVyZWRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uU3RpZmZuZXNzKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0U3VzcGVuc2lvbkRhbXBpbmcgPGVtPlN1c3BlbnNpb24gRGFtcGluZzwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlN1c3BlbnNpb24gRGFtcGluZzwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0U3VzcGVuc2lvbkRhbXBpbmcoKQorCSAqIEBzZWUgI2dldFN0ZWVyZWRXaGVlbFN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1N1c3BlbnNpb25EYW1waW5nKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uIDxlbT5TdXNwZW5zaW9uIENvbXByZXNzaW9uPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+U3VzcGVuc2lvbiBDb21wcmVzc2lvbjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uKCkKKwkgKiBAc2VlICNnZXRTdGVlcmVkV2hlZWxTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFN0ZWVyZWRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uQ29tcHJlc3Npb24oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0ZWVyZWRXaGVlbFN5c3RlbSNnZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtIDxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEbWF4IFN1bTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPldoZWVsIFZlbG9jaXR5IFBJIERtYXggU3VtPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0ZWVyZWRXaGVlbFN5c3RlbSNnZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtKCkKKwkgKiBAc2VlICNnZXRTdGVlcmVkV2hlZWxTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFN0ZWVyZWRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4U3VtKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbCA8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRG1heCBWYWw8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEbWF4IFZhbDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbCgpCisJICogQHNlZSAjZ2V0U3RlZXJlZFdoZWVsU3lzdGVtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRTdGVlcmVkV2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRG1heFZhbCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxvY29tb3Rpb25TeXN0ZW0gPGVtPkxvY29tb3Rpb24gU3lzdGVtPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkxvY29tb3Rpb24gU3lzdGVtPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxvY29tb3Rpb25TeXN0ZW0KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldExvY29tb3Rpb25TeXN0ZW0oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5JbWFnZVNlbnNvclN5c3RlbSA8ZW0+SW1hZ2UgU2Vuc29yIFN5c3RlbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5JbWFnZSBTZW5zb3IgU3lzdGVtPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkltYWdlU2Vuc29yU3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRJbWFnZVNlbnNvclN5c3RlbSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNhbWVyYVN5c3RlbSA8ZW0+Q2FtZXJhIFN5c3RlbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5DYW1lcmEgU3lzdGVtPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNhbWVyYVN5c3RlbQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0Q2FtZXJhU3lzdGVtKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DYW1lcmFTeXN0ZW0jZ2V0V2lkdGggPGVtPldpZHRoPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+V2lkdGg8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2FtZXJhU3lzdGVtI2dldFdpZHRoKCkKKwkgKiBAc2VlICNnZXRDYW1lcmFTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldENhbWVyYVN5c3RlbV9XaWR0aCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2FtZXJhU3lzdGVtI2dldEhlaWdodCA8ZW0+SGVpZ2h0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+SGVpZ2h0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNhbWVyYVN5c3RlbSNnZXRIZWlnaHQoKQorCSAqIEBzZWUgI2dldENhbWVyYVN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0Q2FtZXJhU3lzdGVtX0hlaWdodCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2FtZXJhU3lzdGVtI2dldEFscGhhX3UgPGVtPkFscGhhIHU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5BbHBoYSB1PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNhbWVyYVN5c3RlbSNnZXRBbHBoYV91KCkKKwkgKiBAc2VlICNnZXRDYW1lcmFTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldENhbWVyYVN5c3RlbV9BbHBoYV91KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DYW1lcmFTeXN0ZW0jZ2V0QWxwaGFfdiA8ZW0+QWxwaGEgdjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkFscGhhIHY8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2FtZXJhU3lzdGVtI2dldEFscGhhX3YoKQorCSAqIEBzZWUgI2dldENhbWVyYVN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0Q2FtZXJhU3lzdGVtX0FscGhhX3YoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNhbWVyYVN5c3RlbSNnZXRVMCA8ZW0+VTA8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5VMDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DYW1lcmFTeXN0ZW0jZ2V0VTAoKQorCSAqIEBzZWUgI2dldENhbWVyYVN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0Q2FtZXJhU3lzdGVtX1UwKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DYW1lcmFTeXN0ZW0jZ2V0VjAgPGVtPlYwPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+VjA8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2FtZXJhU3lzdGVtI2dldFYwKCkKKwkgKiBAc2VlICNnZXRDYW1lcmFTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldENhbWVyYVN5c3RlbV9WMCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2FtZXJhU3lzdGVtI2dldENvbG9yX2Zvcm1hdCA8ZW0+Q29sb3IgZm9ybWF0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+Q29sb3IgZm9ybWF0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNhbWVyYVN5c3RlbSNnZXRDb2xvcl9mb3JtYXQoKQorCSAqIEBzZWUgI2dldENhbWVyYVN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0Q2FtZXJhU3lzdGVtX0NvbG9yX2Zvcm1hdCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2FtZXJhU3lzdGVtI2dldFRyYW5zbGF0ZSA8ZW0+VHJhbnNsYXRlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+VHJhbnNsYXRlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNhbWVyYVN5c3RlbSNnZXRUcmFuc2xhdGUoKQorCSAqIEBzZWUgI2dldENhbWVyYVN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0Q2FtZXJhU3lzdGVtX1RyYW5zbGF0ZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2FtZXJhU3lzdGVtI2dldFJvdGF0ZSA8ZW0+Um90YXRlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+Um90YXRlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNhbWVyYVN5c3RlbSNnZXRSb3RhdGUoKQorCSAqIEBzZWUgI2dldENhbWVyYVN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0Q2FtZXJhU3lzdGVtX1JvdGF0ZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbSA8ZW0+T2JqZWN0IERldGVjdGlvbiBTZW5zb3IgU3lzdGVtPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldE9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtIDxlbT5PYmplY3QgVHJhY2tpbmcgU2Vuc29yIFN5c3RlbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5PYmplY3QgVHJhY2tpbmcgU2Vuc29yIFN5c3RlbTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MaWRhclN5c3RlbSA8ZW0+TGlkYXIgU3lzdGVtPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkxpZGFyIFN5c3RlbTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MaWRhclN5c3RlbQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0TGlkYXJTeXN0ZW0oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxpZGFyU3lzdGVtI2dldE5iTGF5ZXJzIDxlbT5OYiBMYXllcnM8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5OYiBMYXllcnM8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW0jZ2V0TmJMYXllcnMoKQorCSAqIEBzZWUgI2dldExpZGFyU3lzdGVtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRMaWRhclN5c3RlbV9OYkxheWVycygpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW0jZ2V0TGF5ZXJBbmdsZU1pbiA8ZW0+TGF5ZXIgQW5nbGUgTWluPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+TGF5ZXIgQW5nbGUgTWluPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxpZGFyU3lzdGVtI2dldExheWVyQW5nbGVNaW4oKQorCSAqIEBzZWUgI2dldExpZGFyU3lzdGVtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRMaWRhclN5c3RlbV9MYXllckFuZ2xlTWluKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MaWRhclN5c3RlbSNnZXRMYXllckFuZ2xlU3RlcCA8ZW0+TGF5ZXIgQW5nbGUgU3RlcDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkxheWVyIEFuZ2xlIFN0ZXA8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW0jZ2V0TGF5ZXJBbmdsZVN0ZXAoKQorCSAqIEBzZWUgI2dldExpZGFyU3lzdGVtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRMaWRhclN5c3RlbV9MYXllckFuZ2xlU3RlcCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW0jZ2V0Tm9pc2UgPGVtPk5vaXNlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+Tm9pc2U8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW0jZ2V0Tm9pc2UoKQorCSAqIEBzZWUgI2dldExpZGFyU3lzdGVtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRMaWRhclN5c3RlbV9Ob2lzZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW0jZ2V0U2lnbWFOb2lzZSA8ZW0+U2lnbWEgTm9pc2U8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5TaWdtYSBOb2lzZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MaWRhclN5c3RlbSNnZXRTaWdtYU5vaXNlKCkKKwkgKiBAc2VlICNnZXRMaWRhclN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0TGlkYXJTeXN0ZW1fU2lnbWFOb2lzZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW0jZ2V0QW5nbGVfbWluIDxlbT5BbmdsZSBtaW48L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5BbmdsZSBtaW48L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW0jZ2V0QW5nbGVfbWluKCkKKwkgKiBAc2VlICNnZXRMaWRhclN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0TGlkYXJTeXN0ZW1fQW5nbGVfbWluKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MaWRhclN5c3RlbSNnZXRBbmdsZV9tYXggPGVtPkFuZ2xlIG1heDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkFuZ2xlIG1heDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MaWRhclN5c3RlbSNnZXRBbmdsZV9tYXgoKQorCSAqIEBzZWUgI2dldExpZGFyU3lzdGVtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRMaWRhclN5c3RlbV9BbmdsZV9tYXgoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxpZGFyU3lzdGVtI2dldFRpbWVfaW5jcmVtZW50IDxlbT5UaW1lIGluY3JlbWVudDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlRpbWUgaW5jcmVtZW50PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxpZGFyU3lzdGVtI2dldFRpbWVfaW5jcmVtZW50KCkKKwkgKiBAc2VlICNnZXRMaWRhclN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0TGlkYXJTeXN0ZW1fVGltZV9pbmNyZW1lbnQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxpZGFyU3lzdGVtI2dldFNjYW5fdGltZSA8ZW0+U2NhbiB0aW1lPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+U2NhbiB0aW1lPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxpZGFyU3lzdGVtI2dldFNjYW5fdGltZSgpCisJICogQHNlZSAjZ2V0TGlkYXJTeXN0ZW0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldExpZGFyU3lzdGVtX1NjYW5fdGltZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW0jZ2V0UmFuZ2VfbWluIDxlbT5SYW5nZSBtaW48L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5SYW5nZSBtaW48L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW0jZ2V0UmFuZ2VfbWluKCkKKwkgKiBAc2VlICNnZXRMaWRhclN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0TGlkYXJTeXN0ZW1fUmFuZ2VfbWluKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MaWRhclN5c3RlbSNnZXRSYW5nZV9tYXggPGVtPlJhbmdlIG1heDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlJhbmdlIG1heDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MaWRhclN5c3RlbSNnZXRSYW5nZV9tYXgoKQorCSAqIEBzZWUgI2dldExpZGFyU3lzdGVtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRMaWRhclN5c3RlbV9SYW5nZV9tYXgoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxpZGFyU3lzdGVtI2dldE5iUmF5cyA8ZW0+TmIgUmF5czwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPk5iIFJheXM8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW0jZ2V0TmJSYXlzKCkKKwkgKiBAc2VlICNnZXRMaWRhclN5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0TGlkYXJTeXN0ZW1fTmJSYXlzKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtIDxlbT5Mb2NhbGl6YXRpb24gU2Vuc29yIFN5c3RlbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5Mb2NhbGl6YXRpb24gU2Vuc29yIFN5c3RlbTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldExvY2FsaXphdGlvblNlbnNvclN5c3RlbSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkdQU1N5c3RlbSA8ZW0+R1BTIFN5c3RlbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5HUFMgU3lzdGVtPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkdQU1N5c3RlbQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0R1BTU3lzdGVtKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5HUFNTeXN0ZW0jZ2V0T3JpZ2luUG9zaXRpb24gPGVtPk9yaWdpbiBQb3NpdGlvbjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPk9yaWdpbiBQb3NpdGlvbjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5HUFNTeXN0ZW0jZ2V0T3JpZ2luUG9zaXRpb24oKQorCSAqIEBzZWUgI2dldEdQU1N5c3RlbSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0R1BTU3lzdGVtX09yaWdpblBvc2l0aW9uKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtTGlicmFyeSA8ZW0+QWxnb3JpdGhtIExpYnJhcnk8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+QWxnb3JpdGhtIExpYnJhcnk8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtTGlicmFyeQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0QWxnb3JpdGhtTGlicmFyeSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtTGlicmFyeSNnZXRCYXNlX0NsYXNzIDxlbT5CYXNlIENsYXNzPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8ZW0+QmFzZSBDbGFzczwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG1MaWJyYXJ5I2dldEJhc2VfQ2xhc3MoKQorCSAqIEBzZWUgI2dldEFsZ29yaXRobUxpYnJhcnkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldEFsZ29yaXRobUxpYnJhcnlfQmFzZV9DbGFzcygpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtTGlicmFyeSNnZXRQYXRoIDxlbT5QYXRoPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+UGF0aDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG1MaWJyYXJ5I2dldFBhdGgoKQorCSAqIEBzZWUgI2dldEFsZ29yaXRobUxpYnJhcnkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEFsZ29yaXRobUxpYnJhcnlfUGF0aCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvckRyaXZlciA8ZW0+U2Vuc29yIERyaXZlcjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5TZW5zb3IgRHJpdmVyPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvckRyaXZlcgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0U2Vuc29yRHJpdmVyKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQnVpbGRpbmcgPGVtPkJ1aWxkaW5nPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkJ1aWxkaW5nPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkJ1aWxkaW5nCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRCdWlsZGluZygpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBsYW5ldCA8ZW0+UGxhbmV0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlBsYW5ldDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QbGFuZXQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldFBsYW5ldCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxhbmRTdXJmYWNlIDxlbT5MYW5kIFN1cmZhY2U8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+TGFuZCBTdXJmYWNlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxhbmRTdXJmYWNlCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRMYW5kU3VyZmFjZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkdyb3VuZCA8ZW0+R3JvdW5kPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkdyb3VuZDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Hcm91bmQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldEdyb3VuZCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkZsb29yIDxlbT5GbG9vcjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5GbG9vcjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5GbG9vcgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0Rmxvb3IoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5XYXRlclN1cmZhY2UgPGVtPldhdGVyIFN1cmZhY2U8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+V2F0ZXIgU3VyZmFjZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5XYXRlclN1cmZhY2UKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldFdhdGVyU3VyZmFjZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkh1bWFuIDxlbT5IdW1hbjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5IdW1hbjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5IdW1hbgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0SHVtYW4oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QZWRlc3RyaWFuIDxlbT5QZWRlc3RyaWFuPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlBlZGVzdHJpYW48L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGVkZXN0cmlhbgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0UGVkZXN0cmlhbigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0YWlycyA8ZW0+U3RhaXJzPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlN0YWlyczwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGFpcnMKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldFN0YWlycygpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBsYXRmb3JtIDxlbT5QbGF0Zm9ybTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5QbGF0Zm9ybTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QbGF0Zm9ybQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0UGxhdGZvcm0oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBsYXRmb3JtI2dldEJhc2VfTm9kZSA8ZW0+QmFzZSBOb2RlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8ZW0+QmFzZSBOb2RlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBsYXRmb3JtI2dldEJhc2VfTm9kZSgpCisJICogQHNlZSAjZ2V0UGxhdGZvcm0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFBsYXRmb3JtX0Jhc2VfTm9kZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgbGlzdCAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QbGF0Zm9ybSNnZXRMaWJyYXJ5IDxlbT5MaWJyYXJ5PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlIGxpc3QgJzxlbT5MaWJyYXJ5PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBsYXRmb3JtI2dldExpYnJhcnkoKQorCSAqIEBzZWUgI2dldFBsYXRmb3JtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRQbGF0Zm9ybV9MaWJyYXJ5KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRXh0ZXJuYWxMaWJyYXJ5IDxlbT5FeHRlcm5hbCBMaWJyYXJ5PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkV4dGVybmFsIExpYnJhcnk8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRXh0ZXJuYWxMaWJyYXJ5CisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRFeHRlcm5hbExpYnJhcnkoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkV4dGVybmFsTGlicmFyeSNnZXRMaWJQYXRoIDxlbT5MaWIgUGF0aDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkxpYiBQYXRoPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkV4dGVybmFsTGlicmFyeSNnZXRMaWJQYXRoKCkKKwkgKiBAc2VlICNnZXRFeHRlcm5hbExpYnJhcnkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEV4dGVybmFsTGlicmFyeV9MaWJQYXRoKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FeHRlcm5hbExpYnJhcnkjZ2V0TGliRmlsZUZvcm1hdCA8ZW0+TGliIEZpbGUgRm9ybWF0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+TGliIEZpbGUgRm9ybWF0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkV4dGVybmFsTGlicmFyeSNnZXRMaWJGaWxlRm9ybWF0KCkKKwkgKiBAc2VlICNnZXRFeHRlcm5hbExpYnJhcnkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEV4dGVybmFsTGlicmFyeV9MaWJGaWxlRm9ybWF0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FeHRlcm5hbExpYnJhcnkjZ2V0QmFzZV9JbnRlcmZhY2UgPGVtPkJhc2UgSW50ZXJmYWNlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8ZW0+QmFzZSBJbnRlcmZhY2U8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRXh0ZXJuYWxMaWJyYXJ5I2dldEJhc2VfSW50ZXJmYWNlKCkKKwkgKiBAc2VlICNnZXRFeHRlcm5hbExpYnJhcnkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldEV4dGVybmFsTGlicmFyeV9CYXNlX0ludGVyZmFjZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNNaWRkbGV3YXJlIDxlbT5Sb2JvdGljIE1pZGRsZXdhcmU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+Um9ib3RpYyBNaWRkbGV3YXJlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNNaWRkbGV3YXJlCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRSb2JvdGljTWlkZGxld2FyZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmUjZ2V0S2luZCA8ZW0+S2luZDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPktpbmQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmUjZ2V0S2luZCgpCisJICogQHNlZSAjZ2V0Um9ib3RpY01pZGRsZXdhcmUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFJvYm90aWNNaWRkbGV3YXJlX0tpbmQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljU2ltdWxhdG9yIDxlbT5Sb2JvdGljIFNpbXVsYXRvcjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5Sb2JvdGljIFNpbXVsYXRvcjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljU2ltdWxhdG9yCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRSb2JvdGljU2ltdWxhdG9yKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ3ljYWJUSyA8ZW0+Q3ljYWIgVEs8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+Q3ljYWIgVEs8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ3ljYWJUSworCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0Q3ljYWJUSygpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ3ljYWJUSyNpc1VzZVJlYWxUaW1lIDxlbT5Vc2UgUmVhbCBUaW1lPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+VXNlIFJlYWwgVGltZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DeWNhYlRLI2lzVXNlUmVhbFRpbWUoKQorCSAqIEBzZWUgI2dldEN5Y2FiVEsoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEN5Y2FiVEtfVXNlUmVhbFRpbWUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkN5Y2FiVEsjZ2V0VGltZVN0ZXAgPGVtPlRpbWUgU3RlcDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlRpbWUgU3RlcDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DeWNhYlRLI2dldFRpbWVTdGVwKCkKKwkgKiBAc2VlICNnZXRDeWNhYlRLKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRDeWNhYlRLX1RpbWVTdGVwKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DeWNhYlRLI2dldFRpbWVGYWN0b3IgPGVtPlRpbWUgRmFjdG9yPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+VGltZSBGYWN0b3I8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ3ljYWJUSyNnZXRUaW1lRmFjdG9yKCkKKwkgKiBAc2VlICNnZXRDeWNhYlRLKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRDeWNhYlRLX1RpbWVGYWN0b3IoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5CbGVuZGVyTW9yc2UgPGVtPkJsZW5kZXIgTW9yc2U8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+QmxlbmRlciBNb3JzZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5CbGVuZGVyTW9yc2UKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldEJsZW5kZXJNb3JzZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQmxlbmRlck1vcnNlI2lzRGVidWdNb2RlIDxlbT5EZWJ1ZyBNb2RlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+RGVidWcgTW9kZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5CbGVuZGVyTW9yc2UjaXNEZWJ1Z01vZGUoKQorCSAqIEBzZWUgI2dldEJsZW5kZXJNb3JzZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0QmxlbmRlck1vcnNlX0RlYnVnTW9kZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQmxlbmRlck1vcnNlI2lzRGVidWdEaXNwbGF5IDxlbT5EZWJ1ZyBEaXNwbGF5PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+RGVidWcgRGlzcGxheTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5CbGVuZGVyTW9yc2UjaXNEZWJ1Z0Rpc3BsYXkoKQorCSAqIEBzZWUgI2dldEJsZW5kZXJNb3JzZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0QmxlbmRlck1vcnNlX0RlYnVnRGlzcGxheSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQmxlbmRlck1vcnNlI2dldEdyYXZpdHkgPGVtPkdyYXZpdHk8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5HcmF2aXR5PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkJsZW5kZXJNb3JzZSNnZXRHcmF2aXR5KCkKKwkgKiBAc2VlICNnZXRCbGVuZGVyTW9yc2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEJsZW5kZXJNb3JzZV9HcmF2aXR5KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5CbGVuZGVyTW9yc2UjZ2V0X3ZpZXdwb3J0X3NoYWRlIDxlbT52aWV3cG9ydCBzaGFkZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPnZpZXdwb3J0IHNoYWRlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkJsZW5kZXJNb3JzZSNnZXRfdmlld3BvcnRfc2hhZGUoKQorCSAqIEBzZWUgI2dldEJsZW5kZXJNb3JzZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0QmxlbmRlck1vcnNlX192aWV3cG9ydF9zaGFkZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9uUG9ydCA8ZW0+T24gUG9ydDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5PbiBQb3J0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9uUG9ydAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0T25Qb3J0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PblBvcnQjZ2V0UG9ydCA8ZW0+UG9ydDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPGVtPlBvcnQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT25Qb3J0I2dldFBvcnQoKQorCSAqIEBzZWUgI2dldE9uUG9ydCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0T25Qb3J0X1BvcnQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9uUG9ydCNnZXRCYXNlX1BhcmFtZXRlciA8ZW0+QmFzZSBQYXJhbWV0ZXI8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxlbT5CYXNlIFBhcmFtZXRlcjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PblBvcnQjZ2V0QmFzZV9QYXJhbWV0ZXIoKQorCSAqIEBzZWUgI2dldE9uUG9ydCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0T25Qb3J0X0Jhc2VfUGFyYW1ldGVyKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxsb2NhdGUgPGVtPkFsbG9jYXRlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkFsbG9jYXRlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsbG9jYXRlCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRBbGxvY2F0ZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxsb2NhdGUjZ2V0QmFzZV9BYnN0cmFjdGlvbiA8ZW0+QmFzZSBBYnN0cmFjdGlvbjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAnPGVtPkJhc2UgQWJzdHJhY3Rpb248L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxsb2NhdGUjZ2V0QmFzZV9BYnN0cmFjdGlvbigpCisJICogQHNlZSAjZ2V0QWxsb2NhdGUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldEFsbG9jYXRlX0Jhc2VfQWJzdHJhY3Rpb24oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5JbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbSA8ZW0+SW5lcnRpYWwgTWVhc3VyZW1lbnQgVW5pdCBTeXN0ZW08L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+SW5lcnRpYWwgTWVhc3VyZW1lbnQgVW5pdCBTeXN0ZW08L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldEluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtIDxlbT5JbmVydGlhbCBOYXZpZ2F0aW9uIFN5c3RlbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5JbmVydGlhbCBOYXZpZ2F0aW9uIFN5c3RlbTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5JbmVydGlhbE5hdmlnYXRpb25TeXN0ZW0KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldEluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9kb21ldHJ5U3lzdGVtIDxlbT5PZG9tZXRyeSBTeXN0ZW08L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+T2RvbWV0cnkgU3lzdGVtPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9kb21ldHJ5U3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRPZG9tZXRyeVN5c3RlbSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkluZnJhUmVkUHJveGltZXRyeVN5c3RlbSA8ZW0+SW5mcmEgUmVkIFByb3hpbWV0cnkgU3lzdGVtPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkluZnJhIFJlZCBQcm94aW1ldHJ5IFN5c3RlbTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5JbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW0KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldEluZnJhUmVkUHJveGltZXRyeVN5c3RlbSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRlcGxveW1lbnRQbGFuIDxlbT5EZXBsb3ltZW50IFBsYW48L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+RGVwbG95bWVudCBQbGFuPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRlcGxveW1lbnRQbGFuCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXREZXBsb3ltZW50UGxhbigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGVwbG95bWVudFBsYW4jZ2V0QmFzZV9QYWNrYWdlIDxlbT5CYXNlIFBhY2thZ2U8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxlbT5CYXNlIFBhY2thZ2U8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGVwbG95bWVudFBsYW4jZ2V0QmFzZV9QYWNrYWdlKCkKKwkgKiBAc2VlICNnZXREZXBsb3ltZW50UGxhbigpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0RGVwbG95bWVudFBsYW5fQmFzZV9QYWNrYWdlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EZXBsb3ltZW50UGxhbiNnZXRNYWluSW5zdGFuY2UgPGVtPk1haW4gSW5zdGFuY2U8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxlbT5NYWluIEluc3RhbmNlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRlcGxveW1lbnRQbGFuI2dldE1haW5JbnN0YW5jZSgpCisJICogQHNlZSAjZ2V0RGVwbG95bWVudFBsYW4oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldERlcGxveW1lbnRQbGFuX01haW5JbnN0YW5jZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkd5cm9zY29wZSA8ZW0+R3lyb3Njb3BlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkd5cm9zY29wZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5HeXJvc2NvcGUKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldEd5cm9zY29wZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9uVmFyaWFibGUgPGVtPk9uIFZhcmlhYmxlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPk9uIFZhcmlhYmxlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9uVmFyaWFibGUKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldE9uVmFyaWFibGUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9uVmFyaWFibGUjZ2V0UHJvcGVydHkgPGVtPlByb3BlcnR5PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgcmVmZXJlbmNlICc8ZW0+UHJvcGVydHk8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT25WYXJpYWJsZSNnZXRQcm9wZXJ0eSgpCisJICogQHNlZSAjZ2V0T25WYXJpYWJsZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0T25WYXJpYWJsZV9Qcm9wZXJ0eSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT25WYXJpYWJsZSNnZXRCYXNlX1BhcmFtZXRlciA8ZW0+QmFzZSBQYXJhbWV0ZXI8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSByZWZlcmVuY2UgJzxlbT5CYXNlIFBhcmFtZXRlcjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PblZhcmlhYmxlI2dldEJhc2VfUGFyYW1ldGVyKCkKKwkgKiBAc2VlICNnZXRPblZhcmlhYmxlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRPblZhcmlhYmxlX0Jhc2VfUGFyYW1ldGVyKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2hhc3NpcyA8ZW0+Q2hhc3NpczwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5DaGFzc2lzPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNoYXNzaXMKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldENoYXNzaXMoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXBwb3J0aW5nU3RydWN0dXJlIDxlbT5TdXBwb3J0aW5nIFN0cnVjdHVyZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5TdXBwb3J0aW5nIFN0cnVjdHVyZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXBwb3J0aW5nU3RydWN0dXJlCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRTdXBwb3J0aW5nU3RydWN0dXJlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTWVjaGFuaWNhbExpbmthZ2UgPGVtPk1lY2hhbmljYWwgTGlua2FnZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5NZWNoYW5pY2FsIExpbmthZ2U8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTWVjaGFuaWNhbExpbmthZ2UKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldE1lY2hhbmljYWxMaW5rYWdlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGVnIDxlbT5MZWc8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+TGVnPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxlZworCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0TGVnKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTG9jb21vdGlvbkhhcmR3YXJlIDxlbT5Mb2NvbW90aW9uIEhhcmR3YXJlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkxvY29tb3Rpb24gSGFyZHdhcmU8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTG9jb21vdGlvbkhhcmR3YXJlCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRMb2NvbW90aW9uSGFyZHdhcmUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRvckhhcmR3YXJlIDxlbT5BY3R1YXRvciBIYXJkd2FyZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5BY3R1YXRvciBIYXJkd2FyZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRvckhhcmR3YXJlCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRBY3R1YXRvckhhcmR3YXJlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTW9iaWxlUm9ib3QgPGVtPk1vYmlsZSBSb2JvdDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5Nb2JpbGUgUm9ib3Q8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTW9iaWxlUm9ib3QKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldE1vYmlsZVJvYm90KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Nb2JpbGVSb2JvdCNnZXRLaW5kIDxlbT5LaW5kPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+S2luZDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Nb2JpbGVSb2JvdCNnZXRLaW5kKCkKKwkgKiBAc2VlICNnZXRNb2JpbGVSb2JvdCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0TW9iaWxlUm9ib3RfS2luZCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk1hbmlwdWxhdG9yIDxlbT5NYW5pcHVsYXRvcjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5NYW5pcHVsYXRvcjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5NYW5pcHVsYXRvcgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0TWFuaXB1bGF0b3IoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaWxvdGVkU3lzdGVtIDxlbT5QaWxvdGVkIFN5c3RlbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5QaWxvdGVkIFN5c3RlbTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaWxvdGVkU3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRQaWxvdGVkU3lzdGVtKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG93ZXJIYXJkd2FyZSA8ZW0+UG93ZXIgSGFyZHdhcmU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+UG93ZXIgSGFyZHdhcmU8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG93ZXJIYXJkd2FyZQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0UG93ZXJIYXJkd2FyZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvckhhcmR3YXJlIDxlbT5TZW5zb3IgSGFyZHdhcmU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+U2Vuc29yIEhhcmR3YXJlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvckhhcmR3YXJlCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRTZW5zb3JIYXJkd2FyZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkdyYXNwaW5nSGFyZHdhcmUgPGVtPkdyYXNwaW5nIEhhcmR3YXJlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkdyYXNwaW5nIEhhcmR3YXJlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkdyYXNwaW5nSGFyZHdhcmUKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldEdyYXNwaW5nSGFyZHdhcmUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxIYXJkd2FyZSA8ZW0+U3RlZXJlZCBXaGVlbCBIYXJkd2FyZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5TdGVlcmVkIFdoZWVsIEhhcmR3YXJlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0ZWVyZWRXaGVlbEhhcmR3YXJlCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRTdGVlcmVkV2hlZWxIYXJkd2FyZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFybSA8ZW0+QXJtPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkFybTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Bcm0KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldEFybSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxlZ1N5c3RlbSA8ZW0+TGVnIFN5c3RlbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5MZWcgU3lzdGVtPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxlZ1N5c3RlbQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0TGVnU3lzdGVtKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuR3Jhc3BpbmdTeXN0ZW0gPGVtPkdyYXNwaW5nIFN5c3RlbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5HcmFzcGluZyBTeXN0ZW08L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuR3Jhc3BpbmdTeXN0ZW0KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldEdyYXNwaW5nU3lzdGVtKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuV2VhcG9uU3lzdGVtIDxlbT5XZWFwb24gU3lzdGVtPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPldlYXBvbiBTeXN0ZW08L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuV2VhcG9uU3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRXZWFwb25TeXN0ZW0oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5NYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtIDxlbT5NYW4gTWFjaGluZSBJbnRlcmZhY2UgU3lzdGVtPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPk1hbiBNYWNoaW5lIEludGVyZmFjZSBTeXN0ZW08L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTWFuTWFjaGluZUludGVyZmFjZVN5c3RlbQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0TWFuTWFjaGluZUludGVyZmFjZVN5c3RlbSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNsb3NlZExvb3BDb250cm9sU3lzdGVtIDxlbT5DbG9zZWQgTG9vcCBDb250cm9sIFN5c3RlbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5DbG9zZWQgTG9vcCBDb250cm9sIFN5c3RlbTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DbG9zZWRMb29wQ29udHJvbFN5c3RlbQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0Q2xvc2VkTG9vcENvbnRyb2xTeXN0ZW0oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PcGVuTG9vcENvbnRyb2xTeXN0ZW0gPGVtPk9wZW4gTG9vcCBDb250cm9sIFN5c3RlbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5PcGVuIExvb3AgQ29udHJvbCBTeXN0ZW08L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT3Blbkxvb3BDb250cm9sU3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRPcGVuTG9vcENvbnRyb2xTeXN0ZW0oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljSGVhZCA8ZW0+Um9ib3RpYyBIZWFkPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlJvYm90aWMgSGVhZDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljSGVhZAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0Um9ib3RpY0hlYWQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5OYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbSA8ZW0+TmF2aWdhdGlvbiBDb21tYW5kIFN5c3RlbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5OYXZpZ2F0aW9uIENvbW1hbmQgU3lzdGVtPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk5hdmlnYXRpb25Db21tYW5kU3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXROYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtIDxlbT5Kb3lzdGljIE5hdmlnYXRpb24gU3lzdGVtPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkpveXN0aWMgTmF2aWdhdGlvbiBTeXN0ZW08L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSm95c3RpY05hdmlnYXRpb25TeXN0ZW0KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldEpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZW51bSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeW5jaHJvbml6YXRpb25LaW5kIDxlbT5TeW5jaHJvbml6YXRpb24gS2luZDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgZW51bSAnPGVtPlN5bmNocm9uaXphdGlvbiBLaW5kPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5bmNocm9uaXphdGlvbktpbmQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUVudW0gZ2V0U3luY2hyb25pemF0aW9uS2luZCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGVudW0gJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGF0YUZsb3dEaXJlY3Rpb25LaW5kIDxlbT5EYXRhIEZsb3cgRGlyZWN0aW9uIEtpbmQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGVudW0gJzxlbT5EYXRhIEZsb3cgRGlyZWN0aW9uIEtpbmQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGF0YUZsb3dEaXJlY3Rpb25LaW5kCisJICogQGdlbmVyYXRlZAorCSAqLworCUVFbnVtIGdldERhdGFGbG93RGlyZWN0aW9uS2luZCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGVudW0gJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2VydmljZUZsb3dLaW5kIDxlbT5TZXJ2aWNlIEZsb3cgS2luZDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgZW51bSAnPGVtPlNlcnZpY2UgRmxvdyBLaW5kPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlcnZpY2VGbG93S2luZAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFRW51bSBnZXRTZXJ2aWNlRmxvd0tpbmQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBlbnVtICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlVHVktpbmQgPGVtPlVHViBLaW5kPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBlbnVtICc8ZW0+VUdWIEtpbmQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVUdWS2luZAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFRW51bSBnZXRVR1ZLaW5kKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZW51bSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljTWlkZGxld2FyZUtpbmQgPGVtPlJvYm90aWMgTWlkZGxld2FyZSBLaW5kPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBlbnVtICc8ZW0+Um9ib3RpYyBNaWRkbGV3YXJlIEtpbmQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmVLaW5kCisJICogQGdlbmVyYXRlZAorCSAqLworCUVFbnVtIGdldFJvYm90aWNNaWRkbGV3YXJlS2luZCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGVudW0gJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2hhZGUgPGVtPlNoYWRlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBlbnVtICc8ZW0+U2hhZGU8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2hhZGUKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUVudW0gZ2V0U2hhZGUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBlbnVtICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk1vYmlsZVJvYm90S2luZCA8ZW0+TW9iaWxlIFJvYm90IEtpbmQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGVudW0gJzxlbT5Nb2JpbGUgUm9ib3QgS2luZDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Nb2JpbGVSb2JvdEtpbmQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUVudW0gZ2V0TW9iaWxlUm9ib3RLaW5kKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBmYWN0b3J5IHRoYXQgY3JlYXRlcyB0aGUgaW5zdGFuY2VzIG9mIHRoZSBtb2RlbC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIGZhY3RvcnkgdGhhdCBjcmVhdGVzIHRoZSBpbnN0YW5jZXMgb2YgdGhlIG1vZGVsLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlSb2JvdE1MRmFjdG9yeSBnZXRSb2JvdE1MRmFjdG9yeSgpOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBEZWZpbmVzIGxpdGVyYWxzIGZvciB0aGUgbWV0YSBvYmplY3RzIHRoYXQgcmVwcmVzZW50CisJICogPHVsPgorCSAqIDxsaT5lYWNoIGNsYXNzLDwvbGk+CisJICogPGxpPmVhY2ggZmVhdHVyZSBvZiBlYWNoIGNsYXNzLDwvbGk+CisJICogPGxpPmVhY2ggb3BlcmF0aW9uIG9mIGVhY2ggY2xhc3MsPC9saT4KKwkgKiA8bGk+ZWFjaCBlbnVtLDwvbGk+CisJICogPGxpPmFuZCBlYWNoIGRhdGEgdHlwZTwvbGk+CisJICogPC91bD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50ZXJmYWNlIExpdGVyYWxzIHsKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5UcmFuc2l0aW9uSW1wbCA8ZW0+VHJhbnNpdGlvbjwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlRyYW5zaXRpb25JbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFRyYW5zaXRpb24oKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgVFJBTlNJVElPTiA9IGVJTlNUQU5DRS5nZXRUcmFuc2l0aW9uKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5CYXNlIFRyYW5zaXRpb248L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBUUkFOU0lUSU9OX19CQVNFX1RSQU5TSVRJT04gPSBlSU5TVEFOQ0UuZ2V0VHJhbnNpdGlvbl9CYXNlX1RyYW5zaXRpb24oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkd1YXJkPC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgVFJBTlNJVElPTl9fR1VBUkQgPSBlSU5TVEFOQ0UuZ2V0VHJhbnNpdGlvbl9HdWFyZCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+RWZmZWN0PC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgVFJBTlNJVElPTl9fRUZGRUNUID0gZUlOU1RBTkNFLmdldFRyYW5zaXRpb25fRWZmZWN0KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BbGdvcml0aG1JbXBsIDxlbT5BbGdvcml0aG08L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BbGdvcml0aG1JbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldEFsZ29yaXRobSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBBTEdPUklUSE0gPSBlSU5TVEFOQ0UuZ2V0QWxnb3JpdGhtKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5CYXNlIE9wZXJhdGlvbjwvYj48L2VtPicgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIEFMR09SSVRITV9fQkFTRV9PUEVSQVRJT04gPSBlSU5TVEFOQ0UuZ2V0QWxnb3JpdGhtX0Jhc2VfT3BlcmF0aW9uKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5JcyBFeHRlcm5hbDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIEFMR09SSVRITV9fSVNfRVhURVJOQUwgPSBlSU5TVEFOQ0UuZ2V0QWxnb3JpdGhtX0lzRXh0ZXJuYWwoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkV4dCBGdW5jdGlvbiBOYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgQUxHT1JJVEhNX19FWFRfRlVOQ1RJT05fTkFNRSA9IGVJTlNUQU5DRS5nZXRBbGdvcml0aG1fRXh0RnVuY3Rpb25OYW1lKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5MaWIgUGF0aDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIEFMR09SSVRITV9fTElCX1BBVEggPSBlSU5TVEFOQ0UuZ2V0QWxnb3JpdGhtX0xpYlBhdGgoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkxpYiBGaWxlIEZvcm1hdDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIEFMR09SSVRITV9fTElCX0ZJTEVfRk9STUFUID0gZUlOU1RBTkNFLmdldEFsZ29yaXRobV9MaWJGaWxlRm9ybWF0KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TdGF0ZUltcGwgPGVtPlN0YXRlPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3RhdGVJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFN0YXRlKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFNUQVRFID0gZUlOU1RBTkNFLmdldFN0YXRlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5CYXNlIFN0YXRlPC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgU1RBVEVfX0JBU0VfU1RBVEUgPSBlSU5TVEFOQ0UuZ2V0U3RhdGVfQmFzZV9TdGF0ZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QmVoYXZpb3I8L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBTVEFURV9fQkVIQVZJT1IgPSBlSU5TVEFOQ0UuZ2V0U3RhdGVfQmVoYXZpb3IoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkFjdHVhdGVkSm9pbnRJbXBsIDxlbT5BY3R1YXRlZCBKb2ludDwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkFjdHVhdGVkSm9pbnRJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldEFjdHVhdGVkSm9pbnQoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgQUNUVUFURURfSk9JTlQgPSBlSU5TVEFOQ0UuZ2V0QWN0dWF0ZWRKb2ludCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuSm9pbnRJbXBsIDxlbT5Kb2ludDwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkpvaW50SW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRKb2ludCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBKT0lOVCA9IGVJTlNUQU5DRS5nZXRKb2ludCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDb25uZWN0b3I8L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBKT0lOVF9fQkFTRV9DT05ORUNUT1IgPSBlSU5TVEFOQ0UuZ2V0Sm9pbnRfQmFzZV9Db25uZWN0b3IoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkNvbXBsZXRlQm9uZGluZ0ltcGwgPGVtPkNvbXBsZXRlIEJvbmRpbmc8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Db21wbGV0ZUJvbmRpbmdJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldENvbXBsZXRlQm9uZGluZygpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBDT01QTEVURV9CT05ESU5HID0gZUlOU1RBTkNFLmdldENvbXBsZXRlQm9uZGluZygpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RJbXBsIDxlbT5Sb2JvdDwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90SW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRSb2JvdCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBST0JPVCA9IGVJTlNUQU5DRS5nZXRSb2JvdCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+V2lkdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBST0JPVF9fV0lEVEggPSBlSU5TVEFOQ0UuZ2V0Um9ib3RfV2lkdGgoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGwgPGVtPlN5c3RlbTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0U3lzdGVtKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFNZU1RFTSA9IGVJTlNUQU5DRS5nZXRTeXN0ZW0oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBTWVNURU1fX0JBU0VfQ0xBU1MgPSBlSU5TVEFOQ0UuZ2V0U3lzdGVtX0Jhc2VfQ2xhc3MoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPk5hdGl2ZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIFNZU1RFTV9fTkFUSVZFID0gZUlOU1RBTkNFLmdldFN5c3RlbV9OYXRpdmUoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkxpYnJhcnkgUGF0aDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIFNZU1RFTV9fTElCUkFSWV9QQVRIID0gZUlOU1RBTkNFLmdldFN5c3RlbV9MaWJyYXJ5UGF0aCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TGlicmFyeSBDb21wb25lbnQgTmFtZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIFNZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRSA9IGVJTlNUQU5DRS5nZXRTeXN0ZW1fTGlicmFyeUNvbXBvbmVudE5hbWUoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkFsaWFzPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgU1lTVEVNX19BTElBUyA9IGVJTlNUQU5DRS5nZXRTeXN0ZW1fQWxpYXMoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkFnZW50SW1wbCA8ZW0+QWdlbnQ8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BZ2VudEltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0QWdlbnQoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgQUdFTlQgPSBlSU5TVEFOQ0UuZ2V0QWdlbnQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsT2JqZWN0SW1wbCA8ZW0+UGh5c2ljYWwgT2JqZWN0PC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGh5c2ljYWxPYmplY3RJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFBoeXNpY2FsT2JqZWN0KCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFBIWVNJQ0FMX09CSkVDVCA9IGVJTlNUQU5DRS5nZXRQaHlzaWNhbE9iamVjdCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+SGVpZ2h0PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgUEhZU0lDQUxfT0JKRUNUX19IRUlHSFQgPSBlSU5TVEFOQ0UuZ2V0UGh5c2ljYWxPYmplY3RfSGVpZ2h0KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5NYXNzPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgUEhZU0lDQUxfT0JKRUNUX19NQVNTID0gZUlOU1RBTkNFLmdldFBoeXNpY2FsT2JqZWN0X01hc3MoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBQSFlTSUNBTF9PQkpFQ1RfX0JBU0VfQ0xBU1MgPSBlSU5TVEFOQ0UuZ2V0UGh5c2ljYWxPYmplY3RfQmFzZV9DbGFzcygpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuRW52aXJvbm1lbnRJbXBsIDxlbT5FbnZpcm9ubWVudDwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkVudmlyb25tZW50SW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRFbnZpcm9ubWVudCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBFTlZJUk9OTUVOVCA9IGVJTlNUQU5DRS5nZXRFbnZpcm9ubWVudCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIEVOVklST05NRU5UX19CQVNFX0NMQVNTID0gZUlOU1RBTkNFLmdldEVudmlyb25tZW50X0Jhc2VfQ2xhc3MoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN1cmZhY2VJbXBsIDxlbT5TdXJmYWNlPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3VyZmFjZUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0U3VyZmFjZSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBTVVJGQUNFID0gZUlOU1RBTkNFLmdldFN1cmZhY2UoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkRhdGFGbG93UG9ydEltcGwgPGVtPkRhdGEgRmxvdyBQb3J0PC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuRGF0YUZsb3dQb3J0SW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXREYXRhRmxvd1BvcnQoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgREFUQV9GTE9XX1BPUlQgPSBlSU5TVEFOQ0UuZ2V0RGF0YUZsb3dQb3J0KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5EaXJlY3Rpb248L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBEQVRBX0ZMT1dfUE9SVF9fRElSRUNUSU9OID0gZUlOU1RBTkNFLmdldERhdGFGbG93UG9ydF9EaXJlY3Rpb24oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkJ1ZmZlciBTaXplPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgREFUQV9GTE9XX1BPUlRfX0JVRkZFUl9TSVpFID0gZUlOU1RBTkNFLmdldERhdGFGbG93UG9ydF9CdWZmZXJTaXplKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Qb3J0SW1wbCA8ZW0+UG9ydDwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBvcnRJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFBvcnQoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgUE9SVCA9IGVJTlNUQU5DRS5nZXRQb3J0KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5CYXNlIFBvcnQ8L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBQT1JUX19CQVNFX1BPUlQgPSBlSU5TVEFOQ0UuZ2V0UG9ydF9CYXNlX1BvcnQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlN5bmNocm9uaXphdGlvbiBQb2xpY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBQT1JUX19TWU5DSFJPTklaQVRJT05fUE9MSUNZID0gZUlOU1RBTkNFLmdldFBvcnRfU3luY2hyb25pemF0aW9uUG9saWN5KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TZXJ2aWNlUG9ydEltcGwgPGVtPlNlcnZpY2UgUG9ydDwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNlcnZpY2VQb3J0SW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRTZXJ2aWNlUG9ydCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBTRVJWSUNFX1BPUlQgPSBlSU5TVEFOQ0UuZ2V0U2VydmljZVBvcnQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPktpbmQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBTRVJWSUNFX1BPUlRfX0tJTkQgPSBlSU5TVEFOQ0UuZ2V0U2VydmljZVBvcnRfS2luZCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWN0dWF0b3JTeXN0ZW1JbXBsIDxlbT5BY3R1YXRvciBTeXN0ZW08L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BY3R1YXRvclN5c3RlbUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0QWN0dWF0b3JTeXN0ZW0oKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgQUNUVUFUT1JfU1lTVEVNID0gZUlOU1RBTkNFLmdldEFjdHVhdG9yU3lzdGVtKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdGljU3lzdGVtSW1wbCA8ZW0+Um9ib3RpYyBTeXN0ZW08L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdGljU3lzdGVtSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRSb2JvdGljU3lzdGVtKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFJPQk9USUNfU1lTVEVNID0gZUlOU1RBTkNFLmdldFJvYm90aWNTeXN0ZW0oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkxvY2FsIFBvc2l0aW9uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgUk9CT1RJQ19TWVNURU1fX0xPQ0FMX1BPU0lUSU9OID0gZUlOU1RBTkNFLmdldFJvYm90aWNTeXN0ZW1fTG9jYWxQb3NpdGlvbigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TG9jYWwgT3JpZW50YXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBST0JPVElDX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04gPSBlSU5TVEFOQ0UuZ2V0Um9ib3RpY1N5c3RlbV9Mb2NhbE9yaWVudGF0aW9uKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5DeWJlclBoeXNpY2FsU3lzdGVtSW1wbCA8ZW0+Q3liZXIgUGh5c2ljYWwgU3lzdGVtPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQ3liZXJQaHlzaWNhbFN5c3RlbUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0Q3liZXJQaHlzaWNhbFN5c3RlbSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBDWUJFUl9QSFlTSUNBTF9TWVNURU0gPSBlSU5TVEFOQ0UuZ2V0Q3liZXJQaHlzaWNhbFN5c3RlbSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU2Vuc29yU3lzdGVtSW1wbCA8ZW0+U2Vuc29yIFN5c3RlbTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNlbnNvclN5c3RlbUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0U2Vuc29yU3lzdGVtKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFNFTlNPUl9TWVNURU0gPSBlSU5TVEFOQ0UuZ2V0U2Vuc29yU3lzdGVtKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5GcmVxdWVuY3k8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBTRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1kgPSBlSU5TVEFOQ0UuZ2V0U2Vuc29yU3lzdGVtX0ZyZXF1ZW5jeSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+SWRlbnRpZmllcjwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIFNFTlNPUl9TWVNURU1fX0lERU5USUZJRVIgPSBlSU5TVEFOQ0UuZ2V0U2Vuc29yU3lzdGVtX0lkZW50aWZpZXIoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkhhcmR3YXJlSW1wbCA8ZW0+SGFyZHdhcmU8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5IYXJkd2FyZUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0SGFyZHdhcmUoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgSEFSRFdBUkUgPSBlSU5TVEFOQ0UuZ2V0SGFyZHdhcmUoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNvZnR3YXJlSW1wbCA8ZW0+U29mdHdhcmU8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Tb2Z0d2FyZUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0U29mdHdhcmUoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgU09GVFdBUkUgPSBlSU5TVEFOQ0UuZ2V0U29mdHdhcmUoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPklzIFBlcmlvZGljPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgU09GVFdBUkVfX0lTX1BFUklPRElDID0gZUlOU1RBTkNFLmdldFNvZnR3YXJlX0lzUGVyaW9kaWMoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlBlcmlvZDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIFNPRlRXQVJFX19QRVJJT0QgPSBlSU5TVEFOQ0UuZ2V0U29mdHdhcmVfUGVyaW9kKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5Qcmlvcml0eTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIFNPRlRXQVJFX19QUklPUklUWSA9IGVJTlNUQU5DRS5nZXRTb2Z0d2FyZV9Qcmlvcml0eSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+RGVhZGxpbmU8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBTT0ZUV0FSRV9fREVBRExJTkUgPSBlSU5TVEFOQ0UuZ2V0U29mdHdhcmVfRGVhZGxpbmUoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPldjZXQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBTT0ZUV0FSRV9fV0NFVCA9IGVJTlNUQU5DRS5nZXRTb2Z0d2FyZV9XY2V0KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5FbmdpbmVTeXN0ZW1JbXBsIDxlbT5FbmdpbmUgU3lzdGVtPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuRW5naW5lU3lzdGVtSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRFbmdpbmVTeXN0ZW0oKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgRU5HSU5FX1NZU1RFTSA9IGVJTlNUQU5DRS5nZXRFbmdpbmVTeXN0ZW0oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlZlaGljbGUgVHJhY3Rpb248L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBFTkdJTkVfU1lTVEVNX19WRUhJQ0xFX1RSQUNUSU9OID0gZUlOU1RBTkNFLmdldEVuZ2luZVN5c3RlbV9WZWhpY2xlVHJhY3Rpb24oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPk1heCBFbmdpbmUgRm9yY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBFTkdJTkVfU1lTVEVNX19NQVhfRU5HSU5FX0ZPUkNFID0gZUlOU1RBTkNFLmdldEVuZ2luZVN5c3RlbV9NYXhFbmdpbmVGb3JjZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TWF4IEJyZWFraW5nIEZvcmNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgRU5HSU5FX1NZU1RFTV9fTUFYX0JSRUFLSU5HX0ZPUkNFID0gZUlOU1RBTkNFLmdldEVuZ2luZVN5c3RlbV9NYXhCcmVha2luZ0ZvcmNlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5NYXggQWxsb3dlZCBTdGVlcmluZzwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIEVOR0lORV9TWVNURU1fX01BWF9BTExPV0VEX1NURUVSSU5HID0gZUlOU1RBTkNFLmdldEVuZ2luZVN5c3RlbV9NYXhBbGxvd2VkU3RlZXJpbmcoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPk1heCBBbGxvd2VkIFZlbG9jaXR5PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgRU5HSU5FX1NZU1RFTV9fTUFYX0FMTE9XRURfVkVMT0NJVFkgPSBlSU5TVEFOQ0UuZ2V0RW5naW5lU3lzdGVtX01heEFsbG93ZWRWZWxvY2l0eSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+R2VhciByYXRpb248L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBFTkdJTkVfU1lTVEVNX19HRUFSX1JBVElPTiA9IGVJTlNUQU5DRS5nZXRFbmdpbmVTeXN0ZW1fR2Vhcl9yYXRpb24oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN0ZWVyZWRXaGVlbFN5c3RlbUltcGwgPGVtPlN0ZWVyZWQgV2hlZWwgU3lzdGVtPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3RlZXJlZFdoZWVsU3lzdGVtSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRTdGVlcmVkV2hlZWxTeXN0ZW0oKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgU1RFRVJFRF9XSEVFTF9TWVNURU0gPSBlSU5TVEFOQ0UuZ2V0U3RlZXJlZFdoZWVsU3lzdGVtKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5XaGVlbCBSYWRpdXM8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBTVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfUkFESVVTID0gZUlOU1RBTkNFLmdldFN0ZWVyZWRXaGVlbFN5c3RlbV9XaGVlbFJhZGl1cygpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgV2lkdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBTVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfV0lEVEggPSBlSU5TVEFOQ0UuZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1doZWVsV2lkdGgoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlN1c3BlbnNpb24gUmVzdCBMZW5ndGg8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBTVEVFUkVEX1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9SRVNUX0xFTkdUSCA9IGVJTlNUQU5DRS5nZXRTdGVlcmVkV2hlZWxTeXN0ZW1fU3VzcGVuc2lvblJlc3RMZW5ndGgoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPldoZWVsIENvbm5lY3Rpb24gSGVpZ2h0PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX0NPTk5FQ1RJT05fSEVJR0hUID0gZUlOU1RBTkNFLmdldFN0ZWVyZWRXaGVlbFN5c3RlbV9XaGVlbENvbm5lY3Rpb25IZWlnaHQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlR5cGUgT2YgV2hlZWw8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBTVEVFUkVEX1dIRUVMX1NZU1RFTV9fVFlQRV9PRl9XSEVFTCA9IGVJTlNUQU5DRS5nZXRTdGVlcmVkV2hlZWxTeXN0ZW1fVHlwZU9mV2hlZWwoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPldoZWVsIFZlbG9jaXR5IFBJIERrcDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIFNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ES1AgPSBlSU5TVEFOQ0UuZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURrcCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRGtpPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLSSA9IGVJTlNUQU5DRS5nZXRTdGVlcmVkV2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtpKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5XaGVlbCBWZWxvY2l0eSBQSSBEa2Q8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBTVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtEID0gZUlOU1RBTkNFLmdldFN0ZWVyZWRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEa2QoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPldoZWVsIFN0ZWVyaW5nIFBJIERrcDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIFNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9TVEVFUklOR19QSV9ES1AgPSBlSU5TVEFOQ0UuZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1doZWVsU3RlZXJpbmdQSURrcCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgU3RlZXJpbmcgUEkgRGtkPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX1NURUVSSU5HX1BJX0RLRCA9IGVJTlNUQU5DRS5nZXRTdGVlcmVkV2hlZWxTeXN0ZW1fV2hlZWxTdGVlcmluZ1BJRGtkKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5XaGVlbCBGcmljdGlvbjwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIFNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9GUklDVElPTiA9IGVJTlNUQU5DRS5nZXRTdGVlcmVkV2hlZWxTeXN0ZW1fV2hlZWxGcmljdGlvbigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+U3VzcGVuc2lvbiBTdGlmZm5lc3M8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBTVEVFUkVEX1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9TVElGRk5FU1MgPSBlSU5TVEFOQ0UuZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1N1c3BlbnNpb25TdGlmZm5lc3MoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlN1c3BlbnNpb24gRGFtcGluZzwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIFNURUVSRURfV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0RBTVBJTkcgPSBlSU5TVEFOQ0UuZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1N1c3BlbnNpb25EYW1waW5nKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5TdXNwZW5zaW9uIENvbXByZXNzaW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgU1RFRVJFRF9XSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fQ09NUFJFU1NJT04gPSBlSU5TVEFOQ0UuZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1N1c3BlbnNpb25Db21wcmVzc2lvbigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRG1heCBTdW08L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBTVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9TVU0gPSBlSU5TVEFOQ0UuZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURtYXhTdW0oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPldoZWVsIFZlbG9jaXR5IFBJIERtYXggVmFsPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RNQVhfVkFMID0gZUlOU1RBTkNFLmdldFN0ZWVyZWRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4VmFsKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Mb2NvbW90aW9uU3lzdGVtSW1wbCA8ZW0+TG9jb21vdGlvbiBTeXN0ZW08L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Mb2NvbW90aW9uU3lzdGVtSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRMb2NvbW90aW9uU3lzdGVtKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIExPQ09NT1RJT05fU1lTVEVNID0gZUlOU1RBTkNFLmdldExvY29tb3Rpb25TeXN0ZW0oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkltYWdlU2Vuc29yU3lzdGVtSW1wbCA8ZW0+SW1hZ2UgU2Vuc29yIFN5c3RlbTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkltYWdlU2Vuc29yU3lzdGVtSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRJbWFnZVNlbnNvclN5c3RlbSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBJTUFHRV9TRU5TT1JfU1lTVEVNID0gZUlOU1RBTkNFLmdldEltYWdlU2Vuc29yU3lzdGVtKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5DYW1lcmFTeXN0ZW1JbXBsIDxlbT5DYW1lcmEgU3lzdGVtPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQ2FtZXJhU3lzdGVtSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRDYW1lcmFTeXN0ZW0oKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgQ0FNRVJBX1NZU1RFTSA9IGVJTlNUQU5DRS5nZXRDYW1lcmFTeXN0ZW0oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPldpZHRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgQ0FNRVJBX1NZU1RFTV9fV0lEVEggPSBlSU5TVEFOQ0UuZ2V0Q2FtZXJhU3lzdGVtX1dpZHRoKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5IZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBDQU1FUkFfU1lTVEVNX19IRUlHSFQgPSBlSU5TVEFOQ0UuZ2V0Q2FtZXJhU3lzdGVtX0hlaWdodCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QWxwaGEgdTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIENBTUVSQV9TWVNURU1fX0FMUEhBX1UgPSBlSU5TVEFOQ0UuZ2V0Q2FtZXJhU3lzdGVtX0FscGhhX3UoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkFscGhhIHY8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBDQU1FUkFfU1lTVEVNX19BTFBIQV9WID0gZUlOU1RBTkNFLmdldENhbWVyYVN5c3RlbV9BbHBoYV92KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5VMDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIENBTUVSQV9TWVNURU1fX1UwID0gZUlOU1RBTkNFLmdldENhbWVyYVN5c3RlbV9VMCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VjA8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBDQU1FUkFfU1lTVEVNX19WMCA9IGVJTlNUQU5DRS5nZXRDYW1lcmFTeXN0ZW1fVjAoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkNvbG9yIGZvcm1hdDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIENBTUVSQV9TWVNURU1fX0NPTE9SX0ZPUk1BVCA9IGVJTlNUQU5DRS5nZXRDYW1lcmFTeXN0ZW1fQ29sb3JfZm9ybWF0KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5UcmFuc2xhdGU8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBDQU1FUkFfU1lTVEVNX19UUkFOU0xBVEUgPSBlSU5TVEFOQ0UuZ2V0Q2FtZXJhU3lzdGVtX1RyYW5zbGF0ZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+Um90YXRlPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgQ0FNRVJBX1NZU1RFTV9fUk9UQVRFID0gZUlOU1RBTkNFLmdldENhbWVyYVN5c3RlbV9Sb3RhdGUoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwgPGVtPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0T2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIE9CSkVDVF9ERVRFQ1RJT05fU0VOU09SX1NZU1RFTSA9IGVJTlNUQU5DRS5nZXRPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbCA8ZW0+T2JqZWN0IFRyYWNraW5nIFNlbnNvciBTeXN0ZW08L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0oKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU0gPSBlSU5TVEFOQ0UuZ2V0T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkxpZGFyU3lzdGVtSW1wbCA8ZW0+TGlkYXIgU3lzdGVtPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTGlkYXJTeXN0ZW1JbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldExpZGFyU3lzdGVtKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIExJREFSX1NZU1RFTSA9IGVJTlNUQU5DRS5nZXRMaWRhclN5c3RlbSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TmIgTGF5ZXJzPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgTElEQVJfU1lTVEVNX19OQl9MQVlFUlMgPSBlSU5TVEFOQ0UuZ2V0TGlkYXJTeXN0ZW1fTmJMYXllcnMoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkxheWVyIEFuZ2xlIE1pbjwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIExJREFSX1NZU1RFTV9fTEFZRVJfQU5HTEVfTUlOID0gZUlOU1RBTkNFLmdldExpZGFyU3lzdGVtX0xheWVyQW5nbGVNaW4oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkxheWVyIEFuZ2xlIFN0ZXA8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBMSURBUl9TWVNURU1fX0xBWUVSX0FOR0xFX1NURVAgPSBlSU5TVEFOQ0UuZ2V0TGlkYXJTeXN0ZW1fTGF5ZXJBbmdsZVN0ZXAoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPk5vaXNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgTElEQVJfU1lTVEVNX19OT0lTRSA9IGVJTlNUQU5DRS5nZXRMaWRhclN5c3RlbV9Ob2lzZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+U2lnbWEgTm9pc2U8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBMSURBUl9TWVNURU1fX1NJR01BX05PSVNFID0gZUlOU1RBTkNFLmdldExpZGFyU3lzdGVtX1NpZ21hTm9pc2UoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkFuZ2xlIG1pbjwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIExJREFSX1NZU1RFTV9fQU5HTEVfTUlOID0gZUlOU1RBTkNFLmdldExpZGFyU3lzdGVtX0FuZ2xlX21pbigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QW5nbGUgbWF4PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgTElEQVJfU1lTVEVNX19BTkdMRV9NQVggPSBlSU5TVEFOQ0UuZ2V0TGlkYXJTeXN0ZW1fQW5nbGVfbWF4KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5UaW1lIGluY3JlbWVudDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIExJREFSX1NZU1RFTV9fVElNRV9JTkNSRU1FTlQgPSBlSU5TVEFOQ0UuZ2V0TGlkYXJTeXN0ZW1fVGltZV9pbmNyZW1lbnQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlNjYW4gdGltZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIExJREFSX1NZU1RFTV9fU0NBTl9USU1FID0gZUlOU1RBTkNFLmdldExpZGFyU3lzdGVtX1NjYW5fdGltZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UmFuZ2UgbWluPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgTElEQVJfU1lTVEVNX19SQU5HRV9NSU4gPSBlSU5TVEFOQ0UuZ2V0TGlkYXJTeXN0ZW1fUmFuZ2VfbWluKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5SYW5nZSBtYXg8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBMSURBUl9TWVNURU1fX1JBTkdFX01BWCA9IGVJTlNUQU5DRS5nZXRMaWRhclN5c3RlbV9SYW5nZV9tYXgoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPk5iIFJheXM8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBMSURBUl9TWVNURU1fX05CX1JBWVMgPSBlSU5TVEFOQ0UuZ2V0TGlkYXJTeXN0ZW1fTmJSYXlzKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsIDxlbT5Mb2NhbGl6YXRpb24gU2Vuc29yIFN5c3RlbTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkxvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIExPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNID0gZUlOU1RBTkNFLmdldExvY2FsaXphdGlvblNlbnNvclN5c3RlbSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuR1BTU3lzdGVtSW1wbCA8ZW0+R1BTIFN5c3RlbTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkdQU1N5c3RlbUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0R1BTU3lzdGVtKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIEdQU19TWVNURU0gPSBlSU5TVEFOQ0UuZ2V0R1BTU3lzdGVtKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5PcmlnaW4gUG9zaXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBHUFNfU1lTVEVNX19PUklHSU5fUE9TSVRJT04gPSBlSU5TVEFOQ0UuZ2V0R1BTU3lzdGVtX09yaWdpblBvc2l0aW9uKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BbGdvcml0aG1MaWJyYXJ5SW1wbCA8ZW0+QWxnb3JpdGhtIExpYnJhcnk8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BbGdvcml0aG1MaWJyYXJ5SW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRBbGdvcml0aG1MaWJyYXJ5KCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIEFMR09SSVRITV9MSUJSQVJZID0gZUlOU1RBTkNFLmdldEFsZ29yaXRobUxpYnJhcnkoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkJhc2UgQ2xhc3M8L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBBTEdPUklUSE1fTElCUkFSWV9fQkFTRV9DTEFTUyA9IGVJTlNUQU5DRS5nZXRBbGdvcml0aG1MaWJyYXJ5X0Jhc2VfQ2xhc3MoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlBhdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBBTEdPUklUSE1fTElCUkFSWV9fUEFUSCA9IGVJTlNUQU5DRS5nZXRBbGdvcml0aG1MaWJyYXJ5X1BhdGgoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNlbnNvckRyaXZlckltcGwgPGVtPlNlbnNvciBEcml2ZXI8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TZW5zb3JEcml2ZXJJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFNlbnNvckRyaXZlcigpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBTRU5TT1JfRFJJVkVSID0gZUlOU1RBTkNFLmdldFNlbnNvckRyaXZlcigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQnVpbGRpbmdJbXBsIDxlbT5CdWlsZGluZzwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkJ1aWxkaW5nSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRCdWlsZGluZygpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBCVUlMRElORyA9IGVJTlNUQU5DRS5nZXRCdWlsZGluZygpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGxhbmV0SW1wbCA8ZW0+UGxhbmV0PC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGxhbmV0SW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRQbGFuZXQoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgUExBTkVUID0gZUlOU1RBTkNFLmdldFBsYW5ldCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTGFuZFN1cmZhY2VJbXBsIDxlbT5MYW5kIFN1cmZhY2U8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5MYW5kU3VyZmFjZUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0TGFuZFN1cmZhY2UoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgTEFORF9TVVJGQUNFID0gZUlOU1RBTkNFLmdldExhbmRTdXJmYWNlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Hcm91bmRJbXBsIDxlbT5Hcm91bmQ8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Hcm91bmRJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldEdyb3VuZCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBHUk9VTkQgPSBlSU5TVEFOQ0UuZ2V0R3JvdW5kKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5GbG9vckltcGwgPGVtPkZsb29yPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuRmxvb3JJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldEZsb29yKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIEZMT09SID0gZUlOU1RBTkNFLmdldEZsb29yKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5XYXRlclN1cmZhY2VJbXBsIDxlbT5XYXRlciBTdXJmYWNlPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuV2F0ZXJTdXJmYWNlSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRXYXRlclN1cmZhY2UoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgV0FURVJfU1VSRkFDRSA9IGVJTlNUQU5DRS5nZXRXYXRlclN1cmZhY2UoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkh1bWFuSW1wbCA8ZW0+SHVtYW48L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5IdW1hbkltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0SHVtYW4oKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgSFVNQU4gPSBlSU5TVEFOQ0UuZ2V0SHVtYW4oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBlZGVzdHJpYW5JbXBsIDxlbT5QZWRlc3RyaWFuPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGVkZXN0cmlhbkltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0UGVkZXN0cmlhbigpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBQRURFU1RSSUFOID0gZUlOU1RBTkNFLmdldFBlZGVzdHJpYW4oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN0YWlyc0ltcGwgPGVtPlN0YWlyczwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN0YWlyc0ltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0U3RhaXJzKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFNUQUlSUyA9IGVJTlNUQU5DRS5nZXRTdGFpcnMoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBsYXRmb3JtSW1wbCA8ZW0+UGxhdGZvcm08L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5QbGF0Zm9ybUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0UGxhdGZvcm0oKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgUExBVEZPUk0gPSBlSU5TVEFOQ0UuZ2V0UGxhdGZvcm0oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkJhc2UgTm9kZTwvYj48L2VtPicgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIFBMQVRGT1JNX19CQVNFX05PREUgPSBlSU5TVEFOQ0UuZ2V0UGxhdGZvcm1fQmFzZV9Ob2RlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5MaWJyYXJ5PC9iPjwvZW0+JyByZWZlcmVuY2UgbGlzdCBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBQTEFURk9STV9fTElCUkFSWSA9IGVJTlNUQU5DRS5nZXRQbGF0Zm9ybV9MaWJyYXJ5KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5FeHRlcm5hbExpYnJhcnlJbXBsIDxlbT5FeHRlcm5hbCBMaWJyYXJ5PC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuRXh0ZXJuYWxMaWJyYXJ5SW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRFeHRlcm5hbExpYnJhcnkoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgRVhURVJOQUxfTElCUkFSWSA9IGVJTlNUQU5DRS5nZXRFeHRlcm5hbExpYnJhcnkoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkxpYiBQYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgRVhURVJOQUxfTElCUkFSWV9fTElCX1BBVEggPSBlSU5TVEFOQ0UuZ2V0RXh0ZXJuYWxMaWJyYXJ5X0xpYlBhdGgoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkxpYiBGaWxlIEZvcm1hdDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIEVYVEVSTkFMX0xJQlJBUllfX0xJQl9GSUxFX0ZPUk1BVCA9IGVJTlNUQU5DRS5nZXRFeHRlcm5hbExpYnJhcnlfTGliRmlsZUZvcm1hdCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QmFzZSBJbnRlcmZhY2U8L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBFWFRFUk5BTF9MSUJSQVJZX19CQVNFX0lOVEVSRkFDRSA9IGVJTlNUQU5DRS5nZXRFeHRlcm5hbExpYnJhcnlfQmFzZV9JbnRlcmZhY2UoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90aWNNaWRkbGV3YXJlSW1wbCA8ZW0+Um9ib3RpYyBNaWRkbGV3YXJlPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RpY01pZGRsZXdhcmVJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFJvYm90aWNNaWRkbGV3YXJlKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFJPQk9USUNfTUlERExFV0FSRSA9IGVJTlNUQU5DRS5nZXRSb2JvdGljTWlkZGxld2FyZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+S2luZDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIFJPQk9USUNfTUlERExFV0FSRV9fS0lORCA9IGVJTlNUQU5DRS5nZXRSb2JvdGljTWlkZGxld2FyZV9LaW5kKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdGljU2ltdWxhdG9ySW1wbCA8ZW0+Um9ib3RpYyBTaW11bGF0b3I8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdGljU2ltdWxhdG9ySW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRSb2JvdGljU2ltdWxhdG9yKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFJPQk9USUNfU0lNVUxBVE9SID0gZUlOU1RBTkNFLmdldFJvYm90aWNTaW11bGF0b3IoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkN5Y2FiVEtJbXBsIDxlbT5DeWNhYiBUSzwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkN5Y2FiVEtJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldEN5Y2FiVEsoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgQ1lDQUJfVEsgPSBlSU5TVEFOQ0UuZ2V0Q3ljYWJUSygpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VXNlIFJlYWwgVGltZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIENZQ0FCX1RLX19VU0VfUkVBTF9USU1FID0gZUlOU1RBTkNFLmdldEN5Y2FiVEtfVXNlUmVhbFRpbWUoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlRpbWUgU3RlcDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIENZQ0FCX1RLX19USU1FX1NURVAgPSBlSU5TVEFOQ0UuZ2V0Q3ljYWJUS19UaW1lU3RlcCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VGltZSBGYWN0b3I8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBDWUNBQl9US19fVElNRV9GQUNUT1IgPSBlSU5TVEFOQ0UuZ2V0Q3ljYWJUS19UaW1lRmFjdG9yKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5CbGVuZGVyTW9yc2VJbXBsIDxlbT5CbGVuZGVyIE1vcnNlPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQmxlbmRlck1vcnNlSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRCbGVuZGVyTW9yc2UoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgQkxFTkRFUl9NT1JTRSA9IGVJTlNUQU5DRS5nZXRCbGVuZGVyTW9yc2UoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkRlYnVnIE1vZGU8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBCTEVOREVSX01PUlNFX19ERUJVR19NT0RFID0gZUlOU1RBTkNFLmdldEJsZW5kZXJNb3JzZV9EZWJ1Z01vZGUoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkRlYnVnIERpc3BsYXk8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBCTEVOREVSX01PUlNFX19ERUJVR19ESVNQTEFZID0gZUlOU1RBTkNFLmdldEJsZW5kZXJNb3JzZV9EZWJ1Z0Rpc3BsYXkoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkdyYXZpdHk8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBCTEVOREVSX01PUlNFX19HUkFWSVRZID0gZUlOU1RBTkNFLmdldEJsZW5kZXJNb3JzZV9HcmF2aXR5KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj52aWV3cG9ydCBzaGFkZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIEJMRU5ERVJfTU9SU0VfX1ZJRVdQT1JUX1NIQURFID0gZUlOU1RBTkNFLmdldEJsZW5kZXJNb3JzZV9fdmlld3BvcnRfc2hhZGUoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk9uUG9ydEltcGwgPGVtPk9uIFBvcnQ8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5PblBvcnRJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldE9uUG9ydCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBPTl9QT1JUID0gZUlOU1RBTkNFLmdldE9uUG9ydCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UG9ydDwvYj48L2VtPicgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIE9OX1BPUlRfX1BPUlQgPSBlSU5TVEFOQ0UuZ2V0T25Qb3J0X1BvcnQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkJhc2UgUGFyYW1ldGVyPC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgT05fUE9SVF9fQkFTRV9QQVJBTUVURVIgPSBlSU5TVEFOQ0UuZ2V0T25Qb3J0X0Jhc2VfUGFyYW1ldGVyKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BbGxvY2F0ZUltcGwgPGVtPkFsbG9jYXRlPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWxsb2NhdGVJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldEFsbG9jYXRlKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIEFMTE9DQVRFID0gZUlOU1RBTkNFLmdldEFsbG9jYXRlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5CYXNlIEFic3RyYWN0aW9uPC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgQUxMT0NBVEVfX0JBU0VfQUJTVFJBQ1RJT04gPSBlSU5TVEFOQ0UuZ2V0QWxsb2NhdGVfQmFzZV9BYnN0cmFjdGlvbigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW1JbXBsIDxlbT5JbmVydGlhbCBNZWFzdXJlbWVudCBVbml0IFN5c3RlbTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRJbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBJTkVSVElBTF9NRUFTVVJFTUVOVF9VTklUX1NZU1RFTSA9IGVJTlNUQU5DRS5nZXRJbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuSW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtSW1wbCA8ZW0+SW5lcnRpYWwgTmF2aWdhdGlvbiBTeXN0ZW08L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5JbmVydGlhbE5hdmlnYXRpb25TeXN0ZW1JbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldEluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBJTkVSVElBTF9OQVZJR0FUSU9OX1NZU1RFTSA9IGVJTlNUQU5DRS5nZXRJbmVydGlhbE5hdmlnYXRpb25TeXN0ZW0oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk9kb21ldHJ5U3lzdGVtSW1wbCA8ZW0+T2RvbWV0cnkgU3lzdGVtPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuT2RvbWV0cnlTeXN0ZW1JbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldE9kb21ldHJ5U3lzdGVtKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIE9ET01FVFJZX1NZU1RFTSA9IGVJTlNUQU5DRS5nZXRPZG9tZXRyeVN5c3RlbSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtSW1wbCA8ZW0+SW5mcmEgUmVkIFByb3hpbWV0cnkgU3lzdGVtPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRJbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW0oKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgSU5GUkFfUkVEX1BST1hJTUVUUllfU1lTVEVNID0gZUlOU1RBTkNFLmdldEluZnJhUmVkUHJveGltZXRyeVN5c3RlbSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuRGVwbG95bWVudFBsYW5JbXBsIDxlbT5EZXBsb3ltZW50IFBsYW48L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5EZXBsb3ltZW50UGxhbkltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0RGVwbG95bWVudFBsYW4oKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgREVQTE9ZTUVOVF9QTEFOID0gZUlOU1RBTkNFLmdldERlcGxveW1lbnRQbGFuKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5CYXNlIFBhY2thZ2U8L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBERVBMT1lNRU5UX1BMQU5fX0JBU0VfUEFDS0FHRSA9IGVJTlNUQU5DRS5nZXREZXBsb3ltZW50UGxhbl9CYXNlX1BhY2thZ2UoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPk1haW4gSW5zdGFuY2U8L2I+PC9lbT4nIHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBERVBMT1lNRU5UX1BMQU5fX01BSU5fSU5TVEFOQ0UgPSBlSU5TVEFOQ0UuZ2V0RGVwbG95bWVudFBsYW5fTWFpbkluc3RhbmNlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5HeXJvc2NvcGVJbXBsIDxlbT5HeXJvc2NvcGU8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5HeXJvc2NvcGVJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldEd5cm9zY29wZSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBHWVJPU0NPUEUgPSBlSU5TVEFOQ0UuZ2V0R3lyb3Njb3BlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5PblZhcmlhYmxlSW1wbCA8ZW0+T24gVmFyaWFibGU8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5PblZhcmlhYmxlSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRPblZhcmlhYmxlKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIE9OX1ZBUklBQkxFID0gZUlOU1RBTkNFLmdldE9uVmFyaWFibGUoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlByb3BlcnR5PC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgT05fVkFSSUFCTEVfX1BST1BFUlRZID0gZUlOU1RBTkNFLmdldE9uVmFyaWFibGVfUHJvcGVydHkoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkJhc2UgUGFyYW1ldGVyPC9iPjwvZW0+JyByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgT05fVkFSSUFCTEVfX0JBU0VfUEFSQU1FVEVSID0gZUlOU1RBTkNFLmdldE9uVmFyaWFibGVfQmFzZV9QYXJhbWV0ZXIoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkNoYXNzaXNJbXBsIDxlbT5DaGFzc2lzPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQ2hhc3Npc0ltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0Q2hhc3NpcygpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBDSEFTU0lTID0gZUlOU1RBTkNFLmdldENoYXNzaXMoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN1cHBvcnRpbmdTdHJ1Y3R1cmVJbXBsIDxlbT5TdXBwb3J0aW5nIFN0cnVjdHVyZTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN1cHBvcnRpbmdTdHJ1Y3R1cmVJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFN1cHBvcnRpbmdTdHJ1Y3R1cmUoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgU1VQUE9SVElOR19TVFJVQ1RVUkUgPSBlSU5TVEFOQ0UuZ2V0U3VwcG9ydGluZ1N0cnVjdHVyZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTWVjaGFuaWNhbExpbmthZ2VJbXBsIDxlbT5NZWNoYW5pY2FsIExpbmthZ2U8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5NZWNoYW5pY2FsTGlua2FnZUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0TWVjaGFuaWNhbExpbmthZ2UoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgTUVDSEFOSUNBTF9MSU5LQUdFID0gZUlOU1RBTkNFLmdldE1lY2hhbmljYWxMaW5rYWdlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5MZWdJbXBsIDxlbT5MZWc8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5MZWdJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldExlZygpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBMRUcgPSBlSU5TVEFOQ0UuZ2V0TGVnKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Mb2NvbW90aW9uSGFyZHdhcmVJbXBsIDxlbT5Mb2NvbW90aW9uIEhhcmR3YXJlPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTG9jb21vdGlvbkhhcmR3YXJlSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRMb2NvbW90aW9uSGFyZHdhcmUoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgTE9DT01PVElPTl9IQVJEV0FSRSA9IGVJTlNUQU5DRS5nZXRMb2NvbW90aW9uSGFyZHdhcmUoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkFjdHVhdG9ySGFyZHdhcmVJbXBsIDxlbT5BY3R1YXRvciBIYXJkd2FyZTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkFjdHVhdG9ySGFyZHdhcmVJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldEFjdHVhdG9ySGFyZHdhcmUoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgQUNUVUFUT1JfSEFSRFdBUkUgPSBlSU5TVEFOQ0UuZ2V0QWN0dWF0b3JIYXJkd2FyZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTW9iaWxlUm9ib3RJbXBsIDxlbT5Nb2JpbGUgUm9ib3Q8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Nb2JpbGVSb2JvdEltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0TW9iaWxlUm9ib3QoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgTU9CSUxFX1JPQk9UID0gZUlOU1RBTkNFLmdldE1vYmlsZVJvYm90KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5LaW5kPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgTU9CSUxFX1JPQk9UX19LSU5EID0gZUlOU1RBTkNFLmdldE1vYmlsZVJvYm90X0tpbmQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk1hbmlwdWxhdG9ySW1wbCA8ZW0+TWFuaXB1bGF0b3I8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5NYW5pcHVsYXRvckltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0TWFuaXB1bGF0b3IoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgTUFOSVBVTEFUT1IgPSBlSU5TVEFOQ0UuZ2V0TWFuaXB1bGF0b3IoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBpbG90ZWRTeXN0ZW1JbXBsIDxlbT5QaWxvdGVkIFN5c3RlbTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBpbG90ZWRTeXN0ZW1JbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFBpbG90ZWRTeXN0ZW0oKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgUElMT1RFRF9TWVNURU0gPSBlSU5TVEFOQ0UuZ2V0UGlsb3RlZFN5c3RlbSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUG93ZXJIYXJkd2FyZUltcGwgPGVtPlBvd2VyIEhhcmR3YXJlPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUG93ZXJIYXJkd2FyZUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0UG93ZXJIYXJkd2FyZSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBQT1dFUl9IQVJEV0FSRSA9IGVJTlNUQU5DRS5nZXRQb3dlckhhcmR3YXJlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TZW5zb3JIYXJkd2FyZUltcGwgPGVtPlNlbnNvciBIYXJkd2FyZTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNlbnNvckhhcmR3YXJlSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRTZW5zb3JIYXJkd2FyZSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBTRU5TT1JfSEFSRFdBUkUgPSBlSU5TVEFOQ0UuZ2V0U2Vuc29ySGFyZHdhcmUoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkdyYXNwaW5nSGFyZHdhcmVJbXBsIDxlbT5HcmFzcGluZyBIYXJkd2FyZTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkdyYXNwaW5nSGFyZHdhcmVJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldEdyYXNwaW5nSGFyZHdhcmUoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgR1JBU1BJTkdfSEFSRFdBUkUgPSBlSU5TVEFOQ0UuZ2V0R3Jhc3BpbmdIYXJkd2FyZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3RlZXJlZFdoZWVsSGFyZHdhcmVJbXBsIDxlbT5TdGVlcmVkIFdoZWVsIEhhcmR3YXJlPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3RlZXJlZFdoZWVsSGFyZHdhcmVJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFN0ZWVyZWRXaGVlbEhhcmR3YXJlKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFNURUVSRURfV0hFRUxfSEFSRFdBUkUgPSBlSU5TVEFOQ0UuZ2V0U3RlZXJlZFdoZWVsSGFyZHdhcmUoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkFybUltcGwgPGVtPkFybTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkFybUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0QXJtKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIEFSTSA9IGVJTlNUQU5DRS5nZXRBcm0oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkxlZ1N5c3RlbUltcGwgPGVtPkxlZyBTeXN0ZW08L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5MZWdTeXN0ZW1JbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldExlZ1N5c3RlbSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBMRUdfU1lTVEVNID0gZUlOU1RBTkNFLmdldExlZ1N5c3RlbSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuR3Jhc3BpbmdTeXN0ZW1JbXBsIDxlbT5HcmFzcGluZyBTeXN0ZW08L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5HcmFzcGluZ1N5c3RlbUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0R3Jhc3BpbmdTeXN0ZW0oKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgR1JBU1BJTkdfU1lTVEVNID0gZUlOU1RBTkNFLmdldEdyYXNwaW5nU3lzdGVtKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5XZWFwb25TeXN0ZW1JbXBsIDxlbT5XZWFwb24gU3lzdGVtPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuV2VhcG9uU3lzdGVtSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRXZWFwb25TeXN0ZW0oKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgV0VBUE9OX1NZU1RFTSA9IGVJTlNUQU5DRS5nZXRXZWFwb25TeXN0ZW0oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW1JbXBsIDxlbT5NYW4gTWFjaGluZSBJbnRlcmZhY2UgU3lzdGVtPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTWFuTWFjaGluZUludGVyZmFjZVN5c3RlbUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0TWFuTWFjaGluZUludGVyZmFjZVN5c3RlbSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBNQU5fTUFDSElORV9JTlRFUkZBQ0VfU1lTVEVNID0gZUlOU1RBTkNFLmdldE1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkNsb3NlZExvb3BDb250cm9sU3lzdGVtSW1wbCA8ZW0+Q2xvc2VkIExvb3AgQ29udHJvbCBTeXN0ZW08L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5DbG9zZWRMb29wQ29udHJvbFN5c3RlbUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0Q2xvc2VkTG9vcENvbnRyb2xTeXN0ZW0oKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgQ0xPU0VEX0xPT1BfQ09OVFJPTF9TWVNURU0gPSBlSU5TVEFOQ0UuZ2V0Q2xvc2VkTG9vcENvbnRyb2xTeXN0ZW0oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk9wZW5Mb29wQ29udHJvbFN5c3RlbUltcGwgPGVtPk9wZW4gTG9vcCBDb250cm9sIFN5c3RlbTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk9wZW5Mb29wQ29udHJvbFN5c3RlbUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0T3Blbkxvb3BDb250cm9sU3lzdGVtKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIE9QRU5fTE9PUF9DT05UUk9MX1NZU1RFTSA9IGVJTlNUQU5DRS5nZXRPcGVuTG9vcENvbnRyb2xTeXN0ZW0oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90aWNIZWFkSW1wbCA8ZW0+Um9ib3RpYyBIZWFkPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RpY0hlYWRJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFJvYm90aWNIZWFkKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFJPQk9USUNfSEVBRCA9IGVJTlNUQU5DRS5nZXRSb2JvdGljSGVhZCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW1JbXBsIDxlbT5OYXZpZ2F0aW9uIENvbW1hbmQgU3lzdGVtPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW1JbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldE5hdmlnYXRpb25Db21tYW5kU3lzdGVtKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIE5BVklHQVRJT05fQ09NTUFORF9TWVNURU0gPSBlSU5TVEFOQ0UuZ2V0TmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtSW1wbCA8ZW0+Sm95c3RpYyBOYXZpZ2F0aW9uIFN5c3RlbTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRKb3lzdGljTmF2aWdhdGlvblN5c3RlbSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBKT1lTVElDX05BVklHQVRJT05fU1lTVEVNID0gZUlOU1RBTkNFLmdldEpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3luY2hyb25pemF0aW9uS2luZCA8ZW0+U3luY2hyb25pemF0aW9uIEtpbmQ8L2VtPn0nIGVudW0uCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeW5jaHJvbml6YXRpb25LaW5kCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFN5bmNocm9uaXphdGlvbktpbmQoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFRW51bSBTWU5DSFJPTklaQVRJT05fS0lORCA9IGVJTlNUQU5DRS5nZXRTeW5jaHJvbml6YXRpb25LaW5kKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGF0YUZsb3dEaXJlY3Rpb25LaW5kIDxlbT5EYXRhIEZsb3cgRGlyZWN0aW9uIEtpbmQ8L2VtPn0nIGVudW0uCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EYXRhRmxvd0RpcmVjdGlvbktpbmQKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0RGF0YUZsb3dEaXJlY3Rpb25LaW5kKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUVudW0gREFUQV9GTE9XX0RJUkVDVElPTl9LSU5EID0gZUlOU1RBTkNFLmdldERhdGFGbG93RGlyZWN0aW9uS2luZCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlcnZpY2VGbG93S2luZCA8ZW0+U2VydmljZSBGbG93IEtpbmQ8L2VtPn0nIGVudW0uCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlRmxvd0tpbmQKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGwjZ2V0U2VydmljZUZsb3dLaW5kKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUVudW0gU0VSVklDRV9GTE9XX0tJTkQgPSBlSU5TVEFOQ0UuZ2V0U2VydmljZUZsb3dLaW5kKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVUdWS2luZCA8ZW0+VUdWIEtpbmQ8L2VtPn0nIGVudW0uCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5VR1ZLaW5kCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsI2dldFVHVktpbmQoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFRW51bSBVR1ZfS0lORCA9IGVJTlNUQU5DRS5nZXRVR1ZLaW5kKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmVLaW5kIDxlbT5Sb2JvdGljIE1pZGRsZXdhcmUgS2luZDwvZW0+fScgZW51bS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNNaWRkbGV3YXJlS2luZAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRSb2JvdGljTWlkZGxld2FyZUtpbmQoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFRW51bSBST0JPVElDX01JRERMRVdBUkVfS0lORCA9IGVJTlNUQU5DRS5nZXRSb2JvdGljTWlkZGxld2FyZUtpbmQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TaGFkZSA8ZW0+U2hhZGU8L2VtPn0nIGVudW0uCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TaGFkZQorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRTaGFkZSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVFbnVtIFNIQURFID0gZUlOU1RBTkNFLmdldFNoYWRlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTW9iaWxlUm9ib3RLaW5kIDxlbT5Nb2JpbGUgUm9ib3QgS2luZDwvZW0+fScgZW51bS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk1vYmlsZVJvYm90S2luZAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbCNnZXRNb2JpbGVSb2JvdEtpbmQoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFRW51bSBNT0JJTEVfUk9CT1RfS0lORCA9IGVJTlNUQU5DRS5nZXRNb2JpbGVSb2JvdEtpbmQoKTsKKworCX0KKworfSAvLyBSb2JvdE1MUGFja2FnZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY0hlYWQuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNIZWFkLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjU1ZmRjMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNIZWFkLmphdmEKQEAgLTAsMCArMSwxNyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90aWMgSGVhZDwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0Um9ib3RpY0hlYWQoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgUm9ib3RpY0hlYWQgZXh0ZW5kcyBNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtIHsKK30gLy8gUm9ib3RpY0hlYWQKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNNaWRkbGV3YXJlLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUyZjIzNWIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZS5qYXZhCkBAIC0wLDAgKzEsNTEgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Sb2JvdGljIE1pZGRsZXdhcmU8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNNaWRkbGV3YXJlI2dldEtpbmQgPGVtPktpbmQ8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRSb2JvdGljTWlkZGxld2FyZSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBSb2JvdGljTWlkZGxld2FyZSBleHRlbmRzIFBsYXRmb3JtIHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5LaW5kPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogVGhlIGxpdGVyYWxzIGFyZSBmcm9tIHRoZSBlbnVtZXJhdGlvbiB7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNNaWRkbGV3YXJlS2luZH0uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5LaW5kPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5LaW5kPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljTWlkZGxld2FyZUtpbmQKKwkgKiBAc2VlICNzZXRLaW5kKFJvYm90aWNNaWRkbGV3YXJlS2luZCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRSb2JvdGljTWlkZGxld2FyZV9LaW5kKCkKKwkgKiBAbW9kZWwgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlSb2JvdGljTWlkZGxld2FyZUtpbmQgZ2V0S2luZCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNNaWRkbGV3YXJlI2dldEtpbmQgPGVtPktpbmQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPktpbmQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNNaWRkbGV3YXJlS2luZAorCSAqIEBzZWUgI2dldEtpbmQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEtpbmQoUm9ib3RpY01pZGRsZXdhcmVLaW5kIHZhbHVlKTsKKworfSAvLyBSb2JvdGljTWlkZGxld2FyZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljTWlkZGxld2FyZUtpbmQuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xY2QxNDJjCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY01pZGRsZXdhcmVLaW5kLmphdmEKQEAgLTAsMCArMSwyODQgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworaW1wb3J0IGphdmEudXRpbC5BcnJheXM7CitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb25zOworaW1wb3J0IGphdmEudXRpbC5MaXN0OworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3I7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIGxpdGVyYWxzIG9mIHRoZSBlbnVtZXJhdGlvbiAnPGVtPjxiPlJvYm90aWMgTWlkZGxld2FyZSBLaW5kPC9iPjwvZW0+JywKKyAqIGFuZCB1dGlsaXR5IG1ldGhvZHMgZm9yIHdvcmtpbmcgd2l0aCB0aGVtLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRSb2JvdGljTWlkZGxld2FyZUtpbmQoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBlbnVtIFJvYm90aWNNaWRkbGV3YXJlS2luZCBpbXBsZW1lbnRzIEVudW1lcmF0b3IgeworCS8qKgorCSAqIFRoZSAnPGVtPjxiPlJUIE1hcHM8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjUlRfTUFQU19WQUxVRQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCVJUX01BUFMoMCwgIlJUTWFwcyIsICJSVE1hcHMiKSwKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPkFST0NBTTwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNBUk9DQU1fVkFMVUUKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlBUk9DQU0oMSwgIkFST0NBTSIsICJBUk9DQU0iKSwKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPlJPUzwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNST1NfVkFMVUUKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlST1MoMiwgIlJPUyIsICJST1MiKSwKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPk9ST0NPUzwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNPUk9DT1NfVkFMVUUKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlPUk9DT1MoMywgIk9ST0NPUyIsICJPUk9DT1MiKSwKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPlVSQkk8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjVVJCSV9WQUxVRQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCVVSQkkoNCwgIlVSQkkiLCAiVVJCSSIpOworCisJLyoqCisJICogVGhlICc8ZW0+PGI+UlQgTWFwczwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mICc8ZW0+PGI+UlQgTWFwczwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjUlRfTUFQUworCSAqIEBtb2RlbCBuYW1lPSJSVE1hcHMiCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgUlRfTUFQU19WQUxVRSA9IDA7CisKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5BUk9DQU08L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiAnPGVtPjxiPkFST0NBTTwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjQVJPQ0FNCisJICogQG1vZGVsCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgQVJPQ0FNX1ZBTFVFID0gMTsKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPlJPUzwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mICc8ZW0+PGI+Uk9TPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdCBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNST1MKKwkgKiBAbW9kZWwKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBST1NfVkFMVUUgPSAyOworCisJLyoqCisJICogVGhlICc8ZW0+PGI+T1JPQ09TPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgJzxlbT48Yj5PUk9DT1M8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0IGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI09ST0NPUworCSAqIEBtb2RlbAorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgZmluYWwgaW50IE9ST0NPU19WQUxVRSA9IDM7CisKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5VUkJJPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgJzxlbT48Yj5VUkJJPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdCBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNVUkJJCisJICogQG1vZGVsCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgVVJCSV9WQUxVRSA9IDQ7CisKKwkvKioKKwkgKiBBbiBhcnJheSBvZiBhbGwgdGhlICc8ZW0+PGI+Um9ib3RpYyBNaWRkbGV3YXJlIEtpbmQ8L2I+PC9lbT4nIGVudW1lcmF0b3JzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgc3RhdGljIGZpbmFsIFJvYm90aWNNaWRkbGV3YXJlS2luZFtdIFZBTFVFU19BUlJBWSA9CisJCQluZXcgUm9ib3RpY01pZGRsZXdhcmVLaW5kW10geworCQkJUlRfTUFQUywKKwkJCUFST0NBTSwKKwkJCVJPUywKKwkJCU9ST0NPUywKKwkJCVVSQkksCisJCX07CisKKwkvKioKKwkgKiBBIHB1YmxpYyByZWFkLW9ubHkgbGlzdCBvZiBhbGwgdGhlICc8ZW0+PGI+Um9ib3RpYyBNaWRkbGV3YXJlIEtpbmQ8L2I+PC9lbT4nIGVudW1lcmF0b3JzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgZmluYWwgTGlzdDxSb2JvdGljTWlkZGxld2FyZUtpbmQ+IFZBTFVFUyA9IENvbGxlY3Rpb25zLnVubW9kaWZpYWJsZUxpc3QoQXJyYXlzLmFzTGlzdChWQUxVRVNfQVJSQVkpKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlICc8ZW0+PGI+Um9ib3RpYyBNaWRkbGV3YXJlIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGxpdGVyYWwgdmFsdWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHN0YXRpYyBSb2JvdGljTWlkZGxld2FyZUtpbmQgZ2V0KFN0cmluZyBsaXRlcmFsKSB7CisJCWZvciAoaW50IGkgPSAwOyBpIDwgVkFMVUVTX0FSUkFZLmxlbmd0aDsgKytpKSB7CisJCQlSb2JvdGljTWlkZGxld2FyZUtpbmQgcmVzdWx0ID0gVkFMVUVTX0FSUkFZW2ldOworCQkJaWYgKHJlc3VsdC50b1N0cmluZygpLmVxdWFscyhsaXRlcmFsKSkgeworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgJzxlbT48Yj5Sb2JvdGljIE1pZGRsZXdhcmUgS2luZDwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIFJvYm90aWNNaWRkbGV3YXJlS2luZCBnZXRCeU5hbWUoU3RyaW5nIG5hbWUpIHsKKwkJZm9yIChpbnQgaSA9IDA7IGkgPCBWQUxVRVNfQVJSQVkubGVuZ3RoOyArK2kpIHsKKwkJCVJvYm90aWNNaWRkbGV3YXJlS2luZCByZXN1bHQgPSBWQUxVRVNfQVJSQVlbaV07CisJCQlpZiAocmVzdWx0LmdldE5hbWUoKS5lcXVhbHMobmFtZSkpIHsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQl9CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlICc8ZW0+PGI+Um9ib3RpYyBNaWRkbGV3YXJlIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGludGVnZXIgdmFsdWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHN0YXRpYyBSb2JvdGljTWlkZGxld2FyZUtpbmQgZ2V0KGludCB2YWx1ZSkgeworCQlzd2l0Y2ggKHZhbHVlKSB7CisJCQljYXNlIFJUX01BUFNfVkFMVUU6IHJldHVybiBSVF9NQVBTOworCQkJY2FzZSBBUk9DQU1fVkFMVUU6IHJldHVybiBBUk9DQU07CisJCQljYXNlIFJPU19WQUxVRTogcmV0dXJuIFJPUzsKKwkJCWNhc2UgT1JPQ09TX1ZBTFVFOiByZXR1cm4gT1JPQ09TOworCQkJY2FzZSBVUkJJX1ZBTFVFOiByZXR1cm4gVVJCSTsKKwkJfQorCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIGZpbmFsIGludCB2YWx1ZTsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgZmluYWwgU3RyaW5nIG5hbWU7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIGZpbmFsIFN0cmluZyBsaXRlcmFsOworCisJLyoqCisJICogT25seSB0aGlzIGNsYXNzIGNhbiBjb25zdHJ1Y3QgaW5zdGFuY2VzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgUm9ib3RpY01pZGRsZXdhcmVLaW5kKGludCB2YWx1ZSwgU3RyaW5nIG5hbWUsIFN0cmluZyBsaXRlcmFsKSB7CisJCXRoaXMudmFsdWUgPSB2YWx1ZTsKKwkJdGhpcy5uYW1lID0gbmFtZTsKKwkJdGhpcy5saXRlcmFsID0gbGl0ZXJhbDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgaW50IGdldFZhbHVlKCkgeworCSAgcmV0dXJuIHZhbHVlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTdHJpbmcgZ2V0TmFtZSgpIHsKKwkgIHJldHVybiBuYW1lOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTdHJpbmcgZ2V0TGl0ZXJhbCgpIHsKKwkgIHJldHVybiBsaXRlcmFsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIGxpdGVyYWwgdmFsdWUgb2YgdGhlIGVudW1lcmF0b3IsIHdoaWNoIGlzIGl0cyBzdHJpbmcgcmVwcmVzZW50YXRpb24uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJcmV0dXJuIGxpdGVyYWw7CisJfQorCit9IC8vIFJvYm90aWNNaWRkbGV3YXJlS2luZApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1NpbXVsYXRvci5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1NpbXVsYXRvci5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUwZTZkMzIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Sb2JvdGljU2ltdWxhdG9yLmphdmEKQEAgLTAsMCArMSwxNyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90aWMgU2ltdWxhdG9yPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRSb2JvdGljU2ltdWxhdG9yKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFJvYm90aWNTaW11bGF0b3IgZXh0ZW5kcyBQbGF0Zm9ybSB7Cit9IC8vIFJvYm90aWNTaW11bGF0b3IKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1JvYm90aWNTeXN0ZW0uamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43YjQ5NWZkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvUm9ib3RpY1N5c3RlbS5qYXZhCkBAIC0wLDAgKzEsNzUgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9pbnQzMjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Um9ib3RpYyBTeXN0ZW08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTeXN0ZW0jZ2V0TG9jYWxQb3NpdGlvbiA8ZW0+TG9jYWwgUG9zaXRpb248L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljU3lzdGVtI2dldExvY2FsT3JpZW50YXRpb24gPGVtPkxvY2FsIE9yaWVudGF0aW9uPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0Um9ib3RpY1N5c3RlbSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBSb2JvdGljU3lzdGVtIGV4dGVuZHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TG9jYWwgUG9zaXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkxvY2FsIFBvc2l0aW9uPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5Mb2NhbCBQb3NpdGlvbjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0TG9jYWxQb3NpdGlvbihQb2ludDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFJvYm90aWNTeXN0ZW1fTG9jYWxQb3NpdGlvbigpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCVBvaW50MzIgZ2V0TG9jYWxQb3NpdGlvbigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTeXN0ZW0jZ2V0TG9jYWxQb3NpdGlvbiA8ZW0+TG9jYWwgUG9zaXRpb248L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkxvY2FsIFBvc2l0aW9uPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRMb2NhbFBvc2l0aW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRMb2NhbFBvc2l0aW9uKFBvaW50MzIgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TG9jYWwgT3JpZW50YXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkxvY2FsIE9yaWVudGF0aW9uPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5Mb2NhbCBPcmllbnRhdGlvbjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0TG9jYWxPcmllbnRhdGlvbihQb2ludDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFJvYm90aWNTeXN0ZW1fTG9jYWxPcmllbnRhdGlvbigpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCVBvaW50MzIgZ2V0TG9jYWxPcmllbnRhdGlvbigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTeXN0ZW0jZ2V0TG9jYWxPcmllbnRhdGlvbiA8ZW0+TG9jYWwgT3JpZW50YXRpb248L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkxvY2FsIE9yaWVudGF0aW9uPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRMb2NhbE9yaWVudGF0aW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRMb2NhbE9yaWVudGF0aW9uKFBvaW50MzIgdmFsdWUpOworCit9IC8vIFJvYm90aWNTeXN0ZW0KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yRHJpdmVyLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2U1MDJiZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckRyaXZlci5qYXZhCkBAIC0wLDAgKzEsMTcgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TZW5zb3IgRHJpdmVyPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRTZW5zb3JEcml2ZXIoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgU2Vuc29yRHJpdmVyIGV4dGVuZHMgU29mdHdhcmUgeworfSAvLyBTZW5zb3JEcml2ZXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NlbnNvckhhcmR3YXJlLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JIYXJkd2FyZS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZmY2ZmMjMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JIYXJkd2FyZS5qYXZhCkBAIC0wLDAgKzEsMTcgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TZW5zb3IgSGFyZHdhcmU8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFNlbnNvckhhcmR3YXJlKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFNlbnNvckhhcmR3YXJlIGV4dGVuZHMgSGFyZHdhcmUgeworfSAvLyBTZW5zb3JIYXJkd2FyZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZW5zb3JTeXN0ZW0uamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41NmQ0MmFiCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2Vuc29yU3lzdGVtLmphdmEKQEAgLTAsMCArMSw3NCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNlbnNvciBTeXN0ZW08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvclN5c3RlbSNnZXRGcmVxdWVuY3kgPGVtPkZyZXF1ZW5jeTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvclN5c3RlbSNnZXRJZGVudGlmaWVyIDxlbT5JZGVudGlmaWVyPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0U2Vuc29yU3lzdGVtKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFNlbnNvclN5c3RlbSBleHRlbmRzIFJvYm90aWNTeXN0ZW0sIEN5YmVyUGh5c2ljYWxTeXN0ZW0geworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkZyZXF1ZW5jeTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+RnJlcXVlbmN5PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5GcmVxdWVuY3k8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldEZyZXF1ZW5jeShGbG9hdDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFNlbnNvclN5c3RlbV9GcmVxdWVuY3koKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0RnJlcXVlbmN5KCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2Vuc29yU3lzdGVtI2dldEZyZXF1ZW5jeSA8ZW0+RnJlcXVlbmN5PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5GcmVxdWVuY3k8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldEZyZXF1ZW5jeSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0RnJlcXVlbmN5KE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5JZGVudGlmaWVyPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5JZGVudGlmaWVyPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5JZGVudGlmaWVyPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRJZGVudGlmaWVyKFN0cmluZykKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRTZW5zb3JTeXN0ZW1fSWRlbnRpZmllcigpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdHJpbmciIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldElkZW50aWZpZXIoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZW5zb3JTeXN0ZW0jZ2V0SWRlbnRpZmllciA8ZW0+SWRlbnRpZmllcjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+SWRlbnRpZmllcjwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0SWRlbnRpZmllcigpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0SWRlbnRpZmllcihPYmplY3QgdmFsdWUpOworCit9IC8vIFNlbnNvclN5c3RlbQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlRmxvd0tpbmQuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMGI3MDJjCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZUZsb3dLaW5kLmphdmEKQEAgLTAsMCArMSwyMDYgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworaW1wb3J0IGphdmEudXRpbC5BcnJheXM7CitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb25zOworaW1wb3J0IGphdmEudXRpbC5MaXN0OworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3I7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIGxpdGVyYWxzIG9mIHRoZSBlbnVtZXJhdGlvbiAnPGVtPjxiPlNlcnZpY2UgRmxvdyBLaW5kPC9iPjwvZW0+JywKKyAqIGFuZCB1dGlsaXR5IG1ldGhvZHMgZm9yIHdvcmtpbmcgd2l0aCB0aGVtLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRTZXJ2aWNlRmxvd0tpbmQoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBlbnVtIFNlcnZpY2VGbG93S2luZCBpbXBsZW1lbnRzIEVudW1lcmF0b3IgeworCS8qKgorCSAqIFRoZSAnPGVtPjxiPlByb3ZpZGVkPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI1BST1ZJREVEX1ZBTFVFCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJUFJPVklERUQoMCwgInByb3ZpZGVkIiwgInByb3ZpZGVkIiksCisKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5SZXF1aXJlZDwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNSRVFVSVJFRF9WQUxVRQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCVJFUVVJUkVEKDEsICJyZXF1aXJlZCIsICJyZXF1aXJlZCIpOworCisJLyoqCisJICogVGhlICc8ZW0+PGI+UHJvdmlkZWQ8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiAnPGVtPjxiPlByb3ZpZGVkPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdCBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNQUk9WSURFRAorCSAqIEBtb2RlbCBuYW1lPSJwcm92aWRlZCIKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBQUk9WSURFRF9WQUxVRSA9IDA7CisKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5SZXF1aXJlZDwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mICc8ZW0+PGI+UmVxdWlyZWQ8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0IGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI1JFUVVJUkVECisJICogQG1vZGVsIG5hbWU9InJlcXVpcmVkIgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgZmluYWwgaW50IFJFUVVJUkVEX1ZBTFVFID0gMTsKKworCS8qKgorCSAqIEFuIGFycmF5IG9mIGFsbCB0aGUgJzxlbT48Yj5TZXJ2aWNlIEZsb3cgS2luZDwvYj48L2VtPicgZW51bWVyYXRvcnMuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBzdGF0aWMgZmluYWwgU2VydmljZUZsb3dLaW5kW10gVkFMVUVTX0FSUkFZID0KKwkJCW5ldyBTZXJ2aWNlRmxvd0tpbmRbXSB7CisJCQlQUk9WSURFRCwKKwkJCVJFUVVJUkVELAorCQl9OworCisJLyoqCisJICogQSBwdWJsaWMgcmVhZC1vbmx5IGxpc3Qgb2YgYWxsIHRoZSAnPGVtPjxiPlNlcnZpY2UgRmxvdyBLaW5kPC9iPjwvZW0+JyBlbnVtZXJhdG9ycy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIExpc3Q8U2VydmljZUZsb3dLaW5kPiBWQUxVRVMgPSBDb2xsZWN0aW9ucy51bm1vZGlmaWFibGVMaXN0KEFycmF5cy5hc0xpc3QoVkFMVUVTX0FSUkFZKSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSAnPGVtPjxiPlNlcnZpY2UgRmxvdyBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBsaXRlcmFsIHZhbHVlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgU2VydmljZUZsb3dLaW5kIGdldChTdHJpbmcgbGl0ZXJhbCkgeworCQlmb3IgKGludCBpID0gMDsgaSA8IFZBTFVFU19BUlJBWS5sZW5ndGg7ICsraSkgeworCQkJU2VydmljZUZsb3dLaW5kIHJlc3VsdCA9IFZBTFVFU19BUlJBWVtpXTsKKwkJCWlmIChyZXN1bHQudG9TdHJpbmcoKS5lcXVhbHMobGl0ZXJhbCkpIHsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQl9CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlICc8ZW0+PGI+U2VydmljZSBGbG93IEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHN0YXRpYyBTZXJ2aWNlRmxvd0tpbmQgZ2V0QnlOYW1lKFN0cmluZyBuYW1lKSB7CisJCWZvciAoaW50IGkgPSAwOyBpIDwgVkFMVUVTX0FSUkFZLmxlbmd0aDsgKytpKSB7CisJCQlTZXJ2aWNlRmxvd0tpbmQgcmVzdWx0ID0gVkFMVUVTX0FSUkFZW2ldOworCQkJaWYgKHJlc3VsdC5nZXROYW1lKCkuZXF1YWxzKG5hbWUpKSB7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJfQorCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSAnPGVtPjxiPlNlcnZpY2UgRmxvdyBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBpbnRlZ2VyIHZhbHVlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgU2VydmljZUZsb3dLaW5kIGdldChpbnQgdmFsdWUpIHsKKwkJc3dpdGNoICh2YWx1ZSkgeworCQkJY2FzZSBQUk9WSURFRF9WQUxVRTogcmV0dXJuIFBST1ZJREVEOworCQkJY2FzZSBSRVFVSVJFRF9WQUxVRTogcmV0dXJuIFJFUVVJUkVEOworCQl9CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgZmluYWwgaW50IHZhbHVlOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBmaW5hbCBTdHJpbmcgbmFtZTsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgZmluYWwgU3RyaW5nIGxpdGVyYWw7CisKKwkvKioKKwkgKiBPbmx5IHRoaXMgY2xhc3MgY2FuIGNvbnN0cnVjdCBpbnN0YW5jZXMuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBTZXJ2aWNlRmxvd0tpbmQoaW50IHZhbHVlLCBTdHJpbmcgbmFtZSwgU3RyaW5nIGxpdGVyYWwpIHsKKwkJdGhpcy52YWx1ZSA9IHZhbHVlOworCQl0aGlzLm5hbWUgPSBuYW1lOworCQl0aGlzLmxpdGVyYWwgPSBsaXRlcmFsOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBpbnQgZ2V0VmFsdWUoKSB7CisJICByZXR1cm4gdmFsdWU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0cmluZyBnZXROYW1lKCkgeworCSAgcmV0dXJuIG5hbWU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0cmluZyBnZXRMaXRlcmFsKCkgeworCSAgcmV0dXJuIGxpdGVyYWw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgbGl0ZXJhbCB2YWx1ZSBvZiB0aGUgZW51bWVyYXRvciwgd2hpY2ggaXMgaXRzIHN0cmluZyByZXByZXNlbnRhdGlvbi4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlyZXR1cm4gbGl0ZXJhbDsKKwl9CisKK30gLy8gU2VydmljZUZsb3dLaW5kCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TZXJ2aWNlUG9ydC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41Y2E4MDcyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2VydmljZVBvcnQuamF2YQpAQCAtMCwwICsxLDUxIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U2VydmljZSBQb3J0PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlUG9ydCNnZXRLaW5kIDxlbT5LaW5kPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0U2VydmljZVBvcnQoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgU2VydmljZVBvcnQgZXh0ZW5kcyBQb3J0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5LaW5kPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogVGhlIGxpdGVyYWxzIGFyZSBmcm9tIHRoZSBlbnVtZXJhdGlvbiB7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlcnZpY2VGbG93S2luZH0uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5LaW5kPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5LaW5kPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlRmxvd0tpbmQKKwkgKiBAc2VlICNzZXRLaW5kKFNlcnZpY2VGbG93S2luZCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRTZXJ2aWNlUG9ydF9LaW5kKCkKKwkgKiBAbW9kZWwgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTZXJ2aWNlRmxvd0tpbmQgZ2V0S2luZCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlcnZpY2VQb3J0I2dldEtpbmQgPGVtPktpbmQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPktpbmQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlcnZpY2VGbG93S2luZAorCSAqIEBzZWUgI2dldEtpbmQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEtpbmQoU2VydmljZUZsb3dLaW5kIHZhbHVlKTsKKworfSAvLyBTZXJ2aWNlUG9ydApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU2hhZGUuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWYxNjRlNQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1NoYWRlLmphdmEKQEAgLTAsMCArMSwyNTggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworaW1wb3J0IGphdmEudXRpbC5BcnJheXM7CitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb25zOworaW1wb3J0IGphdmEudXRpbC5MaXN0OworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3I7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIGxpdGVyYWxzIG9mIHRoZSBlbnVtZXJhdGlvbiAnPGVtPjxiPlNoYWRlPC9iPjwvZW0+JywKKyAqIGFuZCB1dGlsaXR5IG1ldGhvZHMgZm9yIHdvcmtpbmcgd2l0aCB0aGVtLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRTaGFkZSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGVudW0gU2hhZGUgaW1wbGVtZW50cyBFbnVtZXJhdG9yIHsKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5XSVJFRlJBTUU8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjV0lSRUZSQU1FX1ZBTFVFCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJV0lSRUZSQU1FKDAsICJXSVJFRlJBTUUiLCAiV0lSRUZSQU1FIiksCisKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5CT1VOREJPWDwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNCT1VOREJPWF9WQUxVRQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCUJPVU5EQk9YKDEsICJCT1VOREJPWCIsICJCT1VOREJPWCIpLAorCisJLyoqCisJICogVGhlICc8ZW0+PGI+U09MSUQ8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjU09MSURfVkFMVUUKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlTT0xJRCgyLCAiU09MSUQiLCAiU09MSUQiKSwKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPlRFWFRVUkVEPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI1RFWFRVUkVEX1ZBTFVFCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJVEVYVFVSRUQoMywgIlRFWFRVUkVEIiwgIlRFWFRVUkVEIik7CisKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5XSVJFRlJBTUU8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiAnPGVtPjxiPldJUkVGUkFNRTwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjV0lSRUZSQU1FCisJICogQG1vZGVsCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgV0lSRUZSQU1FX1ZBTFVFID0gMDsKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPkJPVU5EQk9YPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgJzxlbT48Yj5CT1VOREJPWDwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjQk9VTkRCT1gKKwkgKiBAbW9kZWwKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBCT1VOREJPWF9WQUxVRSA9IDE7CisKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5TT0xJRDwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mICc8ZW0+PGI+U09MSUQ8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0IGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI1NPTElECisJICogQG1vZGVsCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgU09MSURfVkFMVUUgPSAyOworCisJLyoqCisJICogVGhlICc8ZW0+PGI+VEVYVFVSRUQ8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiAnPGVtPjxiPlRFWFRVUkVEPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdCBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNURVhUVVJFRAorCSAqIEBtb2RlbAorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgZmluYWwgaW50IFRFWFRVUkVEX1ZBTFVFID0gMzsKKworCS8qKgorCSAqIEFuIGFycmF5IG9mIGFsbCB0aGUgJzxlbT48Yj5TaGFkZTwvYj48L2VtPicgZW51bWVyYXRvcnMuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBzdGF0aWMgZmluYWwgU2hhZGVbXSBWQUxVRVNfQVJSQVkgPQorCQkJbmV3IFNoYWRlW10geworCQkJV0lSRUZSQU1FLAorCQkJQk9VTkRCT1gsCisJCQlTT0xJRCwKKwkJCVRFWFRVUkVELAorCQl9OworCisJLyoqCisJICogQSBwdWJsaWMgcmVhZC1vbmx5IGxpc3Qgb2YgYWxsIHRoZSAnPGVtPjxiPlNoYWRlPC9iPjwvZW0+JyBlbnVtZXJhdG9ycy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIExpc3Q8U2hhZGU+IFZBTFVFUyA9IENvbGxlY3Rpb25zLnVubW9kaWZpYWJsZUxpc3QoQXJyYXlzLmFzTGlzdChWQUxVRVNfQVJSQVkpKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlICc8ZW0+PGI+U2hhZGU8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGxpdGVyYWwgdmFsdWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHN0YXRpYyBTaGFkZSBnZXQoU3RyaW5nIGxpdGVyYWwpIHsKKwkJZm9yIChpbnQgaSA9IDA7IGkgPCBWQUxVRVNfQVJSQVkubGVuZ3RoOyArK2kpIHsKKwkJCVNoYWRlIHJlc3VsdCA9IFZBTFVFU19BUlJBWVtpXTsKKwkJCWlmIChyZXN1bHQudG9TdHJpbmcoKS5lcXVhbHMobGl0ZXJhbCkpIHsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQl9CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlICc8ZW0+PGI+U2hhZGU8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHN0YXRpYyBTaGFkZSBnZXRCeU5hbWUoU3RyaW5nIG5hbWUpIHsKKwkJZm9yIChpbnQgaSA9IDA7IGkgPCBWQUxVRVNfQVJSQVkubGVuZ3RoOyArK2kpIHsKKwkJCVNoYWRlIHJlc3VsdCA9IFZBTFVFU19BUlJBWVtpXTsKKwkJCWlmIChyZXN1bHQuZ2V0TmFtZSgpLmVxdWFscyhuYW1lKSkgeworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgJzxlbT48Yj5TaGFkZTwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgaW50ZWdlciB2YWx1ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIFNoYWRlIGdldChpbnQgdmFsdWUpIHsKKwkJc3dpdGNoICh2YWx1ZSkgeworCQkJY2FzZSBXSVJFRlJBTUVfVkFMVUU6IHJldHVybiBXSVJFRlJBTUU7CisJCQljYXNlIEJPVU5EQk9YX1ZBTFVFOiByZXR1cm4gQk9VTkRCT1g7CisJCQljYXNlIFNPTElEX1ZBTFVFOiByZXR1cm4gU09MSUQ7CisJCQljYXNlIFRFWFRVUkVEX1ZBTFVFOiByZXR1cm4gVEVYVFVSRUQ7CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBmaW5hbCBpbnQgdmFsdWU7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIGZpbmFsIFN0cmluZyBuYW1lOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBmaW5hbCBTdHJpbmcgbGl0ZXJhbDsKKworCS8qKgorCSAqIE9ubHkgdGhpcyBjbGFzcyBjYW4gY29uc3RydWN0IGluc3RhbmNlcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIFNoYWRlKGludCB2YWx1ZSwgU3RyaW5nIG5hbWUsIFN0cmluZyBsaXRlcmFsKSB7CisJCXRoaXMudmFsdWUgPSB2YWx1ZTsKKwkJdGhpcy5uYW1lID0gbmFtZTsKKwkJdGhpcy5saXRlcmFsID0gbGl0ZXJhbDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgaW50IGdldFZhbHVlKCkgeworCSAgcmV0dXJuIHZhbHVlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTdHJpbmcgZ2V0TmFtZSgpIHsKKwkgIHJldHVybiBuYW1lOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTdHJpbmcgZ2V0TGl0ZXJhbCgpIHsKKwkgIHJldHVybiBsaXRlcmFsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIGxpdGVyYWwgdmFsdWUgb2YgdGhlIGVudW1lcmF0b3IsIHdoaWNoIGlzIGl0cyBzdHJpbmcgcmVwcmVzZW50YXRpb24uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJcmV0dXJuIGxpdGVyYWw7CisJfQorCit9IC8vIFNoYWRlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9Tb2Z0d2FyZS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jOTI1YjUwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU29mdHdhcmUuamF2YQpAQCAtMCwwICsxLDE1MyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNvZnR3YXJlPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Tb2Z0d2FyZSNpc1BlcmlvZGljIDxlbT5JcyBQZXJpb2RpYzwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNvZnR3YXJlI2dldFBlcmlvZCA8ZW0+UGVyaW9kPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU29mdHdhcmUjZ2V0UHJpb3JpdHkgPGVtPlByaW9yaXR5PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU29mdHdhcmUjZ2V0RGVhZGxpbmUgPGVtPkRlYWRsaW5lPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU29mdHdhcmUjZ2V0V2NldCA8ZW0+V2NldDwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFNvZnR3YXJlKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFNvZnR3YXJlIGV4dGVuZHMgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+SXMgUGVyaW9kaWM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPklzIFBlcmlvZGljPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwKKwkgKiB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPklzIFBlcmlvZGljPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRJc1BlcmlvZGljKGJvb2xlYW4pCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0U29mdHdhcmVfSXNQZXJpb2RpYygpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS51bWwyLnR5cGVzLkJvb2xlYW4iIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJYm9vbGVhbiBpc1BlcmlvZGljKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU29mdHdhcmUjaXNQZXJpb2RpYyA8ZW0+SXMgUGVyaW9kaWM8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPklzIFBlcmlvZGljPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNpc1BlcmlvZGljKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRJc1BlcmlvZGljKGJvb2xlYW4gdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+UGVyaW9kPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5QZXJpb2Q8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlBlcmlvZDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0UGVyaW9kKEZsb2F0MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0U29mdHdhcmVfUGVyaW9kKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFBlcmlvZCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNvZnR3YXJlI2dldFBlcmlvZCA8ZW0+UGVyaW9kPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5QZXJpb2Q8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFBlcmlvZCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0UGVyaW9kKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Qcmlvcml0eTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+UHJpb3JpdHk8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlByaW9yaXR5PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRQcmlvcml0eShVSW50OCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRTb2Z0d2FyZV9Qcmlvcml0eSgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50OCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0UHJpb3JpdHkoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Tb2Z0d2FyZSNnZXRQcmlvcml0eSA8ZW0+UHJpb3JpdHk8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlByaW9yaXR5PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRQcmlvcml0eSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0UHJpb3JpdHkoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkRlYWRsaW5lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5EZWFkbGluZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+RGVhZGxpbmU8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldERlYWRsaW5lKEZsb2F0MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0U29mdHdhcmVfRGVhZGxpbmUoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0RGVhZGxpbmUoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Tb2Z0d2FyZSNnZXREZWFkbGluZSA8ZW0+RGVhZGxpbmU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkRlYWRsaW5lPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXREZWFkbGluZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0RGVhZGxpbmUoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPldjZXQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPldjZXQ8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPldjZXQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFdjZXQoRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRTb2Z0d2FyZV9XY2V0KCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFdjZXQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Tb2Z0d2FyZSNnZXRXY2V0IDxlbT5XY2V0PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5XY2V0PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRXY2V0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRXY2V0KE9iamVjdCB2YWx1ZSk7CisKK30gLy8gU29mdHdhcmUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RhaXJzLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWQxNmZlNAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YWlycy5qYXZhCkBAIC0wLDAgKzEsMTcgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TdGFpcnM8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFN0YWlycygpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBTdGFpcnMgZXh0ZW5kcyBHcm91bmQgeworfSAvLyBTdGFpcnMKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0YXRlLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZkMzFmNjkKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdGF0ZS5qYXZhCkBAIC0wLDAgKzEsODEgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkJlaGF2aW9yOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TdGF0ZTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8IS0tIGJlZ2luLW1vZGVsLWRvYyAtLT4KKyAqIFdoZW4gYSBzdGF0ZSBpcyBhY3RpdmF0ZWQsIGEgYmVoYXZpb3IgaXMgYWN0aXZhdGVkIGFuZCBleGVjdXRlZC4KKyAqIEl0IGlzIHBvc3NpYmxlIHRvIGFzc29jaWF0ZSBtb3JlIG9uZSBiZWhhdmlvciB0byB0aGUgc3RhdGUuIEJ1dCB0aGUgcXVlc3Rpb24gaXMgaG93IHRvIGRlZmluZSB0aGUgb3JkZXIgb2YgZXhlY3V0aW9uIG9mIHRoZSBiZWhhdmlvcnM/CisgKiA8IS0tIGVuZC1tb2RlbC1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0YXRlI2dldEJhc2VfU3RhdGUgPGVtPkJhc2UgU3RhdGU8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGF0ZSNnZXRCZWhhdmlvciA8ZW0+QmVoYXZpb3I8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRTdGF0ZSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBTdGF0ZSBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkJhc2UgU3RhdGU8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkJhc2UgU3RhdGU8L2VtPicgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgU3RhdGU8L2VtPicgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldEJhc2VfU3RhdGUob3JnLmVjbGlwc2UudW1sMi51bWwuU3RhdGUpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0U3RhdGVfQmFzZV9TdGF0ZSgpCisJICogQG1vZGVsIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJb3JnLmVjbGlwc2UudW1sMi51bWwuU3RhdGUgZ2V0QmFzZV9TdGF0ZSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0YXRlI2dldEJhc2VfU3RhdGUgPGVtPkJhc2UgU3RhdGU8L2VtPn0nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgU3RhdGU8L2VtPicgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldEJhc2VfU3RhdGUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEJhc2VfU3RhdGUob3JnLmVjbGlwc2UudW1sMi51bWwuU3RhdGUgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QmVoYXZpb3I8L2I+PC9lbT4nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkJlaGF2aW9yPC9lbT4nIHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5CZWhhdmlvcjwvZW0+JyByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0QmVoYXZpb3IoQmVoYXZpb3IpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0U3RhdGVfQmVoYXZpb3IoKQorCSAqIEBtb2RlbCByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUJlaGF2aW9yIGdldEJlaGF2aW9yKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RhdGUjZ2V0QmVoYXZpb3IgPGVtPkJlaGF2aW9yPC9lbT59JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5CZWhhdmlvcjwvZW0+JyByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0QmVoYXZpb3IoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEJlaGF2aW9yKEJlaGF2aW9yIHZhbHVlKTsKKworfSAvLyBTdGF0ZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RlZXJlZFdoZWVsSGFyZHdhcmUuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0ZWVyZWRXaGVlbEhhcmR3YXJlLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjU1NGNiOAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0ZWVyZWRXaGVlbEhhcmR3YXJlLmphdmEKQEAgLTAsMCArMSwxNyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlN0ZWVyZWQgV2hlZWwgSGFyZHdhcmU8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFN0ZWVyZWRXaGVlbEhhcmR3YXJlKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFN0ZWVyZWRXaGVlbEhhcmR3YXJlIGV4dGVuZHMgTG9jb21vdGlvbkhhcmR3YXJlIHsKK30gLy8gU3RlZXJlZFdoZWVsSGFyZHdhcmUKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0ZWVyZWRXaGVlbFN5c3RlbS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3RlZXJlZFdoZWVsU3lzdGVtLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDA1ZGI0NAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N0ZWVyZWRXaGVlbFN5c3RlbS5qYXZhCkBAIC0wLDAgKzEsNDM4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3RlZXJlZCBXaGVlbCBTeXN0ZW08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0ZWVyZWRXaGVlbFN5c3RlbSNnZXRXaGVlbFJhZGl1cyA8ZW0+V2hlZWwgUmFkaXVzPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtI2dldFdoZWVsV2lkdGggPGVtPldoZWVsIFdpZHRoPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtI2dldFN1c3BlbnNpb25SZXN0TGVuZ3RoIDxlbT5TdXNwZW5zaW9uIFJlc3QgTGVuZ3RoPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtI2dldFdoZWVsQ29ubmVjdGlvbkhlaWdodCA8ZW0+V2hlZWwgQ29ubmVjdGlvbiBIZWlnaHQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0VHlwZU9mV2hlZWwgPGVtPlR5cGUgT2YgV2hlZWw8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0V2hlZWxWZWxvY2l0eVBJRGtwIDxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEa3A8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0V2hlZWxWZWxvY2l0eVBJRGtpIDxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEa2k8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0V2hlZWxWZWxvY2l0eVBJRGtkIDxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEa2Q8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0V2hlZWxTdGVlcmluZ1BJRGtwIDxlbT5XaGVlbCBTdGVlcmluZyBQSSBEa3A8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0V2hlZWxTdGVlcmluZ1BJRGtkIDxlbT5XaGVlbCBTdGVlcmluZyBQSSBEa2Q8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0V2hlZWxGcmljdGlvbiA8ZW0+V2hlZWwgRnJpY3Rpb248L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0U3VzcGVuc2lvblN0aWZmbmVzcyA8ZW0+U3VzcGVuc2lvbiBTdGlmZm5lc3M8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0U3VzcGVuc2lvbkRhbXBpbmcgPGVtPlN1c3BlbnNpb24gRGFtcGluZzwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0ZWVyZWRXaGVlbFN5c3RlbSNnZXRTdXNwZW5zaW9uQ29tcHJlc3Npb24gPGVtPlN1c3BlbnNpb24gQ29tcHJlc3Npb248L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bSA8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRG1heCBTdW08L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbCA8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRG1heCBWYWw8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRTdGVlcmVkV2hlZWxTeXN0ZW0oKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgU3RlZXJlZFdoZWVsU3lzdGVtIGV4dGVuZHMgTG9jb21vdGlvblN5c3RlbSB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2hlZWwgUmFkaXVzPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5XaGVlbCBSYWRpdXM8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPldoZWVsIFJhZGl1czwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0V2hlZWxSYWRpdXMoRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRTdGVlcmVkV2hlZWxTeXN0ZW1fV2hlZWxSYWRpdXMoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0V2hlZWxSYWRpdXMoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0V2hlZWxSYWRpdXMgPGVtPldoZWVsIFJhZGl1czwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+V2hlZWwgUmFkaXVzPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRXaGVlbFJhZGl1cygpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0V2hlZWxSYWRpdXMoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPldoZWVsIFdpZHRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5XaGVlbCBXaWR0aDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+V2hlZWwgV2lkdGg8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFdoZWVsV2lkdGgoRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRTdGVlcmVkV2hlZWxTeXN0ZW1fV2hlZWxXaWR0aCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRXaGVlbFdpZHRoKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtI2dldFdoZWVsV2lkdGggPGVtPldoZWVsIFdpZHRoPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5XaGVlbCBXaWR0aDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0V2hlZWxXaWR0aCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0V2hlZWxXaWR0aChPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+U3VzcGVuc2lvbiBSZXN0IExlbmd0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+U3VzcGVuc2lvbiBSZXN0IExlbmd0aDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+U3VzcGVuc2lvbiBSZXN0IExlbmd0aDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0U3VzcGVuc2lvblJlc3RMZW5ndGgoRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRTdGVlcmVkV2hlZWxTeXN0ZW1fU3VzcGVuc2lvblJlc3RMZW5ndGgoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0U3VzcGVuc2lvblJlc3RMZW5ndGgoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0U3VzcGVuc2lvblJlc3RMZW5ndGggPGVtPlN1c3BlbnNpb24gUmVzdCBMZW5ndGg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlN1c3BlbnNpb24gUmVzdCBMZW5ndGg8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFN1c3BlbnNpb25SZXN0TGVuZ3RoKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRTdXNwZW5zaW9uUmVzdExlbmd0aChPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2hlZWwgQ29ubmVjdGlvbiBIZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPldoZWVsIENvbm5lY3Rpb24gSGVpZ2h0PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5XaGVlbCBDb25uZWN0aW9uIEhlaWdodDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0KEZsb2F0MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1doZWVsQ29ubmVjdGlvbkhlaWdodCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0IDxlbT5XaGVlbCBDb25uZWN0aW9uIEhlaWdodDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+V2hlZWwgQ29ubmVjdGlvbiBIZWlnaHQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFdoZWVsQ29ubmVjdGlvbkhlaWdodCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0KE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5UeXBlIE9mIFdoZWVsPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5UeXBlIE9mIFdoZWVsPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5UeXBlIE9mIFdoZWVsPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRUeXBlT2ZXaGVlbChTdHJpbmcpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1R5cGVPZldoZWVsKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0cmluZyIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0VHlwZU9mV2hlZWwoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0VHlwZU9mV2hlZWwgPGVtPlR5cGUgT2YgV2hlZWw8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlR5cGUgT2YgV2hlZWw8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFR5cGVPZldoZWVsKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRUeXBlT2ZXaGVlbChPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRGtwPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEa3A8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPldoZWVsIFZlbG9jaXR5IFBJIERrcDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0V2hlZWxWZWxvY2l0eVBJRGtwKEZsb2F0MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURrcCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRXaGVlbFZlbG9jaXR5UElEa3AoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0V2hlZWxWZWxvY2l0eVBJRGtwIDxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEa3A8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPldoZWVsIFZlbG9jaXR5IFBJIERrcDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0V2hlZWxWZWxvY2l0eVBJRGtwKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRXaGVlbFZlbG9jaXR5UElEa3AoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPldoZWVsIFZlbG9jaXR5IFBJIERraTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtpPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEa2k8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFdoZWVsVmVsb2NpdHlQSURraShGbG9hdDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFN0ZWVyZWRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEa2koKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0V2hlZWxWZWxvY2l0eVBJRGtpKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtI2dldFdoZWVsVmVsb2NpdHlQSURraSA8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtpPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEa2k8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFdoZWVsVmVsb2NpdHlQSURraSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0V2hlZWxWZWxvY2l0eVBJRGtpKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5XaGVlbCBWZWxvY2l0eSBQSSBEa2Q8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPldoZWVsIFZlbG9jaXR5IFBJIERrZDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtkPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRXaGVlbFZlbG9jaXR5UElEa2QoRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRTdGVlcmVkV2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtkKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFdoZWVsVmVsb2NpdHlQSURrZCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0ZWVyZWRXaGVlbFN5c3RlbSNnZXRXaGVlbFZlbG9jaXR5UElEa2QgPGVtPldoZWVsIFZlbG9jaXR5IFBJIERrZDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtkPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRXaGVlbFZlbG9jaXR5UElEa2QoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFdoZWVsVmVsb2NpdHlQSURrZChPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2hlZWwgU3RlZXJpbmcgUEkgRGtwPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5XaGVlbCBTdGVlcmluZyBQSSBEa3A8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPldoZWVsIFN0ZWVyaW5nIFBJIERrcDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0V2hlZWxTdGVlcmluZ1BJRGtwKEZsb2F0MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1doZWVsU3RlZXJpbmdQSURrcCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRXaGVlbFN0ZWVyaW5nUElEa3AoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0V2hlZWxTdGVlcmluZ1BJRGtwIDxlbT5XaGVlbCBTdGVlcmluZyBQSSBEa3A8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPldoZWVsIFN0ZWVyaW5nIFBJIERrcDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0V2hlZWxTdGVlcmluZ1BJRGtwKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRXaGVlbFN0ZWVyaW5nUElEa3AoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPldoZWVsIFN0ZWVyaW5nIFBJIERrZDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+V2hlZWwgU3RlZXJpbmcgUEkgRGtkPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5XaGVlbCBTdGVlcmluZyBQSSBEa2Q8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFdoZWVsU3RlZXJpbmdQSURrZChGbG9hdDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFN0ZWVyZWRXaGVlbFN5c3RlbV9XaGVlbFN0ZWVyaW5nUElEa2QoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0V2hlZWxTdGVlcmluZ1BJRGtkKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtI2dldFdoZWVsU3RlZXJpbmdQSURrZCA8ZW0+V2hlZWwgU3RlZXJpbmcgUEkgRGtkPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5XaGVlbCBTdGVlcmluZyBQSSBEa2Q8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFdoZWVsU3RlZXJpbmdQSURrZCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0V2hlZWxTdGVlcmluZ1BJRGtkKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5XaGVlbCBGcmljdGlvbjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+V2hlZWwgRnJpY3Rpb248L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPldoZWVsIEZyaWN0aW9uPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRXaGVlbEZyaWN0aW9uKEZsb2F0MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1doZWVsRnJpY3Rpb24oKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0V2hlZWxGcmljdGlvbigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0ZWVyZWRXaGVlbFN5c3RlbSNnZXRXaGVlbEZyaWN0aW9uIDxlbT5XaGVlbCBGcmljdGlvbjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+V2hlZWwgRnJpY3Rpb248L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFdoZWVsRnJpY3Rpb24oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFdoZWVsRnJpY3Rpb24oT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlN1c3BlbnNpb24gU3RpZmZuZXNzPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5TdXNwZW5zaW9uIFN0aWZmbmVzczwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+U3VzcGVuc2lvbiBTdGlmZm5lc3M8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFN1c3BlbnNpb25TdGlmZm5lc3MoRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRTdGVlcmVkV2hlZWxTeXN0ZW1fU3VzcGVuc2lvblN0aWZmbmVzcygpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRTdXNwZW5zaW9uU3RpZmZuZXNzKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtI2dldFN1c3BlbnNpb25TdGlmZm5lc3MgPGVtPlN1c3BlbnNpb24gU3RpZmZuZXNzPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5TdXNwZW5zaW9uIFN0aWZmbmVzczwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0U3VzcGVuc2lvblN0aWZmbmVzcygpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0U3VzcGVuc2lvblN0aWZmbmVzcyhPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+U3VzcGVuc2lvbiBEYW1waW5nPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5TdXNwZW5zaW9uIERhbXBpbmc8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlN1c3BlbnNpb24gRGFtcGluZzwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0U3VzcGVuc2lvbkRhbXBpbmcoRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRTdGVlcmVkV2hlZWxTeXN0ZW1fU3VzcGVuc2lvbkRhbXBpbmcoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0U3VzcGVuc2lvbkRhbXBpbmcoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0U3VzcGVuc2lvbkRhbXBpbmcgPGVtPlN1c3BlbnNpb24gRGFtcGluZzwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+U3VzcGVuc2lvbiBEYW1waW5nPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRTdXNwZW5zaW9uRGFtcGluZygpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0U3VzcGVuc2lvbkRhbXBpbmcoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlN1c3BlbnNpb24gQ29tcHJlc3Npb248L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlN1c3BlbnNpb24gQ29tcHJlc3Npb248L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlN1c3BlbnNpb24gQ29tcHJlc3Npb248L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFN1c3BlbnNpb25Db21wcmVzc2lvbihGbG9hdDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFN0ZWVyZWRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uQ29tcHJlc3Npb24oKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtI2dldFN1c3BlbnNpb25Db21wcmVzc2lvbiA8ZW0+U3VzcGVuc2lvbiBDb21wcmVzc2lvbjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+U3VzcGVuc2lvbiBDb21wcmVzc2lvbjwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRTdXNwZW5zaW9uQ29tcHJlc3Npb24oT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPldoZWVsIFZlbG9jaXR5IFBJIERtYXggU3VtPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEbWF4IFN1bTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRG1heCBTdW08L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFdoZWVsVmVsb2NpdHlQSURtYXhTdW0oRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRTdGVlcmVkV2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRG1heFN1bSgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtI2dldFdoZWVsVmVsb2NpdHlQSURtYXhTdW0gPGVtPldoZWVsIFZlbG9jaXR5IFBJIERtYXggU3VtPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEbWF4IFN1bTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bShPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V2hlZWwgVmVsb2NpdHkgUEkgRG1heCBWYWw8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPldoZWVsIFZlbG9jaXR5IFBJIERtYXggVmFsPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEbWF4IFZhbDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbChGbG9hdDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFN0ZWVyZWRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4VmFsKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFdoZWVsVmVsb2NpdHlQSURtYXhWYWwoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxTeXN0ZW0jZ2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbCA8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRG1heCBWYWw8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPldoZWVsIFZlbG9jaXR5IFBJIERtYXggVmFsPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRXaGVlbFZlbG9jaXR5UElEbWF4VmFsKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRXaGVlbFZlbG9jaXR5UElEbWF4VmFsKE9iamVjdCB2YWx1ZSk7CisKK30gLy8gU3RlZXJlZFdoZWVsU3lzdGVtCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXBwb3J0aW5nU3RydWN0dXJlLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXBwb3J0aW5nU3RydWN0dXJlLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODNhYjE4NgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1N1cHBvcnRpbmdTdHJ1Y3R1cmUuamF2YQpAQCAtMCwwICsxLDE3IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3VwcG9ydGluZyBTdHJ1Y3R1cmU8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFN1cHBvcnRpbmdTdHJ1Y3R1cmUoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgU3VwcG9ydGluZ1N0cnVjdHVyZSBleHRlbmRzIEhhcmR3YXJlIHsKK30gLy8gU3VwcG9ydGluZ1N0cnVjdHVyZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3VyZmFjZS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjcwN2MwYWIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TdXJmYWNlLmphdmEKQEAgLTAsMCArMSwxNyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlN1cmZhY2U8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFN1cmZhY2UoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgU3VyZmFjZSBleHRlbmRzIFBoeXNpY2FsT2JqZWN0IHsKK30gLy8gU3VyZmFjZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3luY2hyb25pemF0aW9uS2luZC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFmNzVhMmMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeW5jaHJvbml6YXRpb25LaW5kLmphdmEKQEAgLTAsMCArMSwyMzIgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworaW1wb3J0IGphdmEudXRpbC5BcnJheXM7CitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb25zOworaW1wb3J0IGphdmEudXRpbC5MaXN0OworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3I7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIGxpdGVyYWxzIG9mIHRoZSBlbnVtZXJhdGlvbiAnPGVtPjxiPlN5bmNocm9uaXphdGlvbiBLaW5kPC9iPjwvZW0+JywKKyAqIGFuZCB1dGlsaXR5IG1ldGhvZHMgZm9yIHdvcmtpbmcgd2l0aCB0aGVtLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRTeW5jaHJvbml6YXRpb25LaW5kKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgZW51bSBTeW5jaHJvbml6YXRpb25LaW5kIGltcGxlbWVudHMgRW51bWVyYXRvciB7CisJLyoqCisJICogVGhlICc8ZW0+PGI+U1lOQ0g8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjU1lOQ0hfVkFMVUUKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlTWU5DSCgwLCAiU1lOQ0giLCAiU1lOQ0giKSwKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPkFTWU5DSDwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNBU1lOQ0hfVkFMVUUKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlBU1lOQ0goMSwgIkFTWU5DSCIsICJBU1lOQ0giKSwKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPlVuZGVmaW5lZDwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNVTkRFRklORURfVkFMVUUKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlVTkRFRklORUQoMiwgInVuZGVmaW5lZCIsICJ1bmRlZmluZWQiKTsKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPlNZTkNIPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgJzxlbT48Yj5TWU5DSDwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjU1lOQ0gKKwkgKiBAbW9kZWwKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBTWU5DSF9WQUxVRSA9IDA7CisKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5BU1lOQ0g8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiAnPGVtPjxiPkFTWU5DSDwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjQVNZTkNICisJICogQG1vZGVsCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgQVNZTkNIX1ZBTFVFID0gMTsKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPlVuZGVmaW5lZDwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mICc8ZW0+PGI+VW5kZWZpbmVkPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdCBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNVTkRFRklORUQKKwkgKiBAbW9kZWwgbmFtZT0idW5kZWZpbmVkIgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgZmluYWwgaW50IFVOREVGSU5FRF9WQUxVRSA9IDI7CisKKwkvKioKKwkgKiBBbiBhcnJheSBvZiBhbGwgdGhlICc8ZW0+PGI+U3luY2hyb25pemF0aW9uIEtpbmQ8L2I+PC9lbT4nIGVudW1lcmF0b3JzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgc3RhdGljIGZpbmFsIFN5bmNocm9uaXphdGlvbktpbmRbXSBWQUxVRVNfQVJSQVkgPQorCQkJbmV3IFN5bmNocm9uaXphdGlvbktpbmRbXSB7CisJCQlTWU5DSCwKKwkJCUFTWU5DSCwKKwkJCVVOREVGSU5FRCwKKwkJfTsKKworCS8qKgorCSAqIEEgcHVibGljIHJlYWQtb25seSBsaXN0IG9mIGFsbCB0aGUgJzxlbT48Yj5TeW5jaHJvbml6YXRpb24gS2luZDwvYj48L2VtPicgZW51bWVyYXRvcnMuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHN0YXRpYyBmaW5hbCBMaXN0PFN5bmNocm9uaXphdGlvbktpbmQ+IFZBTFVFUyA9IENvbGxlY3Rpb25zLnVubW9kaWZpYWJsZUxpc3QoQXJyYXlzLmFzTGlzdChWQUxVRVNfQVJSQVkpKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlICc8ZW0+PGI+U3luY2hyb25pemF0aW9uIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGxpdGVyYWwgdmFsdWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHN0YXRpYyBTeW5jaHJvbml6YXRpb25LaW5kIGdldChTdHJpbmcgbGl0ZXJhbCkgeworCQlmb3IgKGludCBpID0gMDsgaSA8IFZBTFVFU19BUlJBWS5sZW5ndGg7ICsraSkgeworCQkJU3luY2hyb25pemF0aW9uS2luZCByZXN1bHQgPSBWQUxVRVNfQVJSQVlbaV07CisJCQlpZiAocmVzdWx0LnRvU3RyaW5nKCkuZXF1YWxzKGxpdGVyYWwpKSB7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJfQorCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSAnPGVtPjxiPlN5bmNocm9uaXphdGlvbiBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgU3luY2hyb25pemF0aW9uS2luZCBnZXRCeU5hbWUoU3RyaW5nIG5hbWUpIHsKKwkJZm9yIChpbnQgaSA9IDA7IGkgPCBWQUxVRVNfQVJSQVkubGVuZ3RoOyArK2kpIHsKKwkJCVN5bmNocm9uaXphdGlvbktpbmQgcmVzdWx0ID0gVkFMVUVTX0FSUkFZW2ldOworCQkJaWYgKHJlc3VsdC5nZXROYW1lKCkuZXF1YWxzKG5hbWUpKSB7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJfQorCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSAnPGVtPjxiPlN5bmNocm9uaXphdGlvbiBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBpbnRlZ2VyIHZhbHVlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgU3luY2hyb25pemF0aW9uS2luZCBnZXQoaW50IHZhbHVlKSB7CisJCXN3aXRjaCAodmFsdWUpIHsKKwkJCWNhc2UgU1lOQ0hfVkFMVUU6IHJldHVybiBTWU5DSDsKKwkJCWNhc2UgQVNZTkNIX1ZBTFVFOiByZXR1cm4gQVNZTkNIOworCQkJY2FzZSBVTkRFRklORURfVkFMVUU6IHJldHVybiBVTkRFRklORUQ7CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBmaW5hbCBpbnQgdmFsdWU7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIGZpbmFsIFN0cmluZyBuYW1lOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBmaW5hbCBTdHJpbmcgbGl0ZXJhbDsKKworCS8qKgorCSAqIE9ubHkgdGhpcyBjbGFzcyBjYW4gY29uc3RydWN0IGluc3RhbmNlcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIFN5bmNocm9uaXphdGlvbktpbmQoaW50IHZhbHVlLCBTdHJpbmcgbmFtZSwgU3RyaW5nIGxpdGVyYWwpIHsKKwkJdGhpcy52YWx1ZSA9IHZhbHVlOworCQl0aGlzLm5hbWUgPSBuYW1lOworCQl0aGlzLmxpdGVyYWwgPSBsaXRlcmFsOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBpbnQgZ2V0VmFsdWUoKSB7CisJICByZXR1cm4gdmFsdWU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0cmluZyBnZXROYW1lKCkgeworCSAgcmV0dXJuIG5hbWU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0cmluZyBnZXRMaXRlcmFsKCkgeworCSAgcmV0dXJuIGxpdGVyYWw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgbGl0ZXJhbCB2YWx1ZSBvZiB0aGUgZW51bWVyYXRvciwgd2hpY2ggaXMgaXRzIHN0cmluZyByZXByZXNlbnRhdGlvbi4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlyZXR1cm4gbGl0ZXJhbDsKKwl9CisKK30gLy8gU3luY2hyb25pemF0aW9uS2luZApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9TeXN0ZW0uamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZGIyZDU4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvU3lzdGVtLmphdmEKQEAgLTAsMCArMSwxNTQgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TeXN0ZW08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSNnZXRCYXNlX0NsYXNzIDxlbT5CYXNlIENsYXNzPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtI2lzTmF0aXZlIDxlbT5OYXRpdmU8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0jZ2V0TGlicmFyeVBhdGggPGVtPkxpYnJhcnkgUGF0aDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSNnZXRMaWJyYXJ5Q29tcG9uZW50TmFtZSA8ZW0+TGlicmFyeSBDb21wb25lbnQgTmFtZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSNnZXRBbGlhcyA8ZW0+QWxpYXM8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRTeXN0ZW0oKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgU3lzdGVtIGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QmFzZSBDbGFzczwvYj48L2VtPicgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+QmFzZSBDbGFzczwvZW0+JyByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+QmFzZSBDbGFzczwvZW0+JyByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcykKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRTeXN0ZW1fQmFzZV9DbGFzcygpCisJICogQG1vZGVsIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgZ2V0QmFzZV9DbGFzcygpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSNnZXRCYXNlX0NsYXNzIDxlbT5CYXNlIENsYXNzPC9lbT59JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5CYXNlIENsYXNzPC9lbT4nIHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRCYXNlX0NsYXNzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzIHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPk5hdGl2ZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+TmF0aXZlPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5OYXRpdmU8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldE5hdGl2ZShib29sZWFuKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFN5c3RlbV9OYXRpdmUoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UudW1sMi50eXBlcy5Cb29sZWFuIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCWJvb2xlYW4gaXNOYXRpdmUoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0jaXNOYXRpdmUgPGVtPk5hdGl2ZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TmF0aXZlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNpc05hdGl2ZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0TmF0aXZlKGJvb2xlYW4gdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TGlicmFyeSBQYXRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5MaWJyYXJ5IFBhdGg8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkxpYnJhcnkgUGF0aDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0TGlicmFyeVBhdGgoU3RyaW5nKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFN5c3RlbV9MaWJyYXJ5UGF0aCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS51bWwyLnR5cGVzLlN0cmluZyIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTdHJpbmcgZ2V0TGlicmFyeVBhdGgoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0jZ2V0TGlicmFyeVBhdGggPGVtPkxpYnJhcnkgUGF0aDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TGlicmFyeSBQYXRoPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRMaWJyYXJ5UGF0aCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0TGlicmFyeVBhdGgoU3RyaW5nIHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkxpYnJhcnkgQ29tcG9uZW50IE5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkxpYnJhcnkgQ29tcG9uZW50IE5hbWU8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkxpYnJhcnkgQ29tcG9uZW50IE5hbWU8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldExpYnJhcnlDb21wb25lbnROYW1lKFN0cmluZykKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZSNnZXRTeXN0ZW1fTGlicmFyeUNvbXBvbmVudE5hbWUoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UudW1sMi50eXBlcy5TdHJpbmciIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJU3RyaW5nIGdldExpYnJhcnlDb21wb25lbnROYW1lKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtI2dldExpYnJhcnlDb21wb25lbnROYW1lIDxlbT5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRMaWJyYXJ5Q29tcG9uZW50TmFtZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0TGlicmFyeUNvbXBvbmVudE5hbWUoU3RyaW5nIHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkFsaWFzPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5BbGlhczwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisJICogdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5BbGlhczwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0QWxpYXMoU3RyaW5nKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFN5c3RlbV9BbGlhcygpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS51bWwyLnR5cGVzLlN0cmluZyIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTdHJpbmcgZ2V0QWxpYXMoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0jZ2V0QWxpYXMgPGVtPkFsaWFzPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5BbGlhczwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0QWxpYXMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEFsaWFzKFN0cmluZyB2YWx1ZSk7CisKK30gLy8gU3lzdGVtCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9UcmFuc2l0aW9uLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzQzNDVjYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1RyYW5zaXRpb24uamF2YQpAQCAtMCwwICsxLDEwOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuQmVoYXZpb3I7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlRyYW5zaXRpb248L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPCEtLSBiZWdpbi1tb2RlbC1kb2MgLS0+CisgKiBndWFyZCBpcyB0eXBlZCB3aXRoIGEgYm9vbGVhbiBvcGVyYXRpb24gdGhhdCBoYXZlIHRvIGJlIGRlZmluZWQgaW4gdGhlIG1vZGVsIGJlZm9yZSB1c2luZyBpdAorICogZWZmZWN0IGlzIHR5cGVkIGJ5IGFuIG9wZXJhdGlvbiB0aGF0IGlzIG93bmVkIGJ5IHRoZSBjb21wb25lbnQgdGhhdCBpcyBiZWhhdmlvcmVkIGJ5IHRoZSBGU00KKyAqIAorICogPCEtLSBlbmQtbW9kZWwtZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5UcmFuc2l0aW9uI2dldEJhc2VfVHJhbnNpdGlvbiA8ZW0+QmFzZSBUcmFuc2l0aW9uPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVHJhbnNpdGlvbiNnZXRHdWFyZCA8ZW0+R3VhcmQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5UcmFuc2l0aW9uI2dldEVmZmVjdCA8ZW0+RWZmZWN0PC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0VHJhbnNpdGlvbigpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBUcmFuc2l0aW9uIGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QmFzZSBUcmFuc2l0aW9uPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5CYXNlIFRyYW5zaXRpb248L2VtPicgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkJhc2UgVHJhbnNpdGlvbjwvZW0+JyByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0QmFzZV9UcmFuc2l0aW9uKG9yZy5lY2xpcHNlLnVtbDIudW1sLlRyYW5zaXRpb24pCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2UjZ2V0VHJhbnNpdGlvbl9CYXNlX1RyYW5zaXRpb24oKQorCSAqIEBtb2RlbCByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCW9yZy5lY2xpcHNlLnVtbDIudW1sLlRyYW5zaXRpb24gZ2V0QmFzZV9UcmFuc2l0aW9uKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVHJhbnNpdGlvbiNnZXRCYXNlX1RyYW5zaXRpb24gPGVtPkJhc2UgVHJhbnNpdGlvbjwvZW0+fScgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+QmFzZSBUcmFuc2l0aW9uPC9lbT4nIHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRCYXNlX1RyYW5zaXRpb24oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEJhc2VfVHJhbnNpdGlvbihvcmcuZWNsaXBzZS51bWwyLnVtbC5UcmFuc2l0aW9uIHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkd1YXJkPC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5HdWFyZDwvZW0+JyByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+R3VhcmQ8L2VtPicgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldEd1YXJkKEJlaGF2aW9yKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFRyYW5zaXRpb25fR3VhcmQoKQorCSAqIEBtb2RlbCByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUJlaGF2aW9yIGdldEd1YXJkKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVHJhbnNpdGlvbiNnZXRHdWFyZCA8ZW0+R3VhcmQ8L2VtPn0nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkd1YXJkPC9lbT4nIHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRHdWFyZCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0R3VhcmQoQmVoYXZpb3IgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+RWZmZWN0PC9iPjwvZW0+JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5FZmZlY3Q8L2VtPicgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkVmZmVjdDwvZW0+JyByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0RWZmZWN0KEJlaGF2aW9yKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFRyYW5zaXRpb25fRWZmZWN0KCkKKwkgKiBAbW9kZWwgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlCZWhhdmlvciBnZXRFZmZlY3QoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5UcmFuc2l0aW9uI2dldEVmZmVjdCA8ZW0+RWZmZWN0PC9lbT59JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5FZmZlY3Q8L2VtPicgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldEVmZmVjdCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0RWZmZWN0KEJlaGF2aW9yIHZhbHVlKTsKKworfSAvLyBUcmFuc2l0aW9uCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9VR1ZLaW5kLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTIzZjM4YQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1VHVktpbmQuamF2YQpAQCAtMCwwICsxLDIwNiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCitpbXBvcnQgamF2YS51dGlsLkFycmF5czsKK2ltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbnM7CitpbXBvcnQgamF2YS51dGlsLkxpc3Q7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbGl0ZXJhbHMgb2YgdGhlIGVudW1lcmF0aW9uICc8ZW0+PGI+VUdWIEtpbmQ8L2I+PC9lbT4nLAorICogYW5kIHV0aWxpdHkgbWV0aG9kcyBmb3Igd29ya2luZyB3aXRoIHRoZW0uCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFVHVktpbmQoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBlbnVtIFVHVktpbmQgaW1wbGVtZW50cyBFbnVtZXJhdG9yIHsKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5EaWZmZXJlbnRpYWw8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjRElGRkVSRU5USUFMX1ZBTFVFCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJRElGRkVSRU5USUFMKDAsICJkaWZmZXJlbnRpYWwiLCAiZGlmZmVyZW50aWFsIiksCisKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5DYXI8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjQ0FSX1ZBTFVFCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJQ0FSKDEsICJjYXIiLCAiY2FyIik7CisKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5EaWZmZXJlbnRpYWw8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiAnPGVtPjxiPkRpZmZlcmVudGlhbDwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjRElGRkVSRU5USUFMCisJICogQG1vZGVsIG5hbWU9ImRpZmZlcmVudGlhbCIKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBESUZGRVJFTlRJQUxfVkFMVUUgPSAwOworCisJLyoqCisJICogVGhlICc8ZW0+PGI+Q2FyPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgJzxlbT48Yj5DYXI8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0IGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI0NBUgorCSAqIEBtb2RlbCBuYW1lPSJjYXIiCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgQ0FSX1ZBTFVFID0gMTsKKworCS8qKgorCSAqIEFuIGFycmF5IG9mIGFsbCB0aGUgJzxlbT48Yj5VR1YgS2luZDwvYj48L2VtPicgZW51bWVyYXRvcnMuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBzdGF0aWMgZmluYWwgVUdWS2luZFtdIFZBTFVFU19BUlJBWSA9CisJCQluZXcgVUdWS2luZFtdIHsKKwkJCURJRkZFUkVOVElBTCwKKwkJCUNBUiwKKwkJfTsKKworCS8qKgorCSAqIEEgcHVibGljIHJlYWQtb25seSBsaXN0IG9mIGFsbCB0aGUgJzxlbT48Yj5VR1YgS2luZDwvYj48L2VtPicgZW51bWVyYXRvcnMuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHN0YXRpYyBmaW5hbCBMaXN0PFVHVktpbmQ+IFZBTFVFUyA9IENvbGxlY3Rpb25zLnVubW9kaWZpYWJsZUxpc3QoQXJyYXlzLmFzTGlzdChWQUxVRVNfQVJSQVkpKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlICc8ZW0+PGI+VUdWIEtpbmQ8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGxpdGVyYWwgdmFsdWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHN0YXRpYyBVR1ZLaW5kIGdldChTdHJpbmcgbGl0ZXJhbCkgeworCQlmb3IgKGludCBpID0gMDsgaSA8IFZBTFVFU19BUlJBWS5sZW5ndGg7ICsraSkgeworCQkJVUdWS2luZCByZXN1bHQgPSBWQUxVRVNfQVJSQVlbaV07CisJCQlpZiAocmVzdWx0LnRvU3RyaW5nKCkuZXF1YWxzKGxpdGVyYWwpKSB7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJfQorCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSAnPGVtPjxiPlVHViBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgVUdWS2luZCBnZXRCeU5hbWUoU3RyaW5nIG5hbWUpIHsKKwkJZm9yIChpbnQgaSA9IDA7IGkgPCBWQUxVRVNfQVJSQVkubGVuZ3RoOyArK2kpIHsKKwkJCVVHVktpbmQgcmVzdWx0ID0gVkFMVUVTX0FSUkFZW2ldOworCQkJaWYgKHJlc3VsdC5nZXROYW1lKCkuZXF1YWxzKG5hbWUpKSB7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJfQorCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSAnPGVtPjxiPlVHViBLaW5kPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBpbnRlZ2VyIHZhbHVlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgVUdWS2luZCBnZXQoaW50IHZhbHVlKSB7CisJCXN3aXRjaCAodmFsdWUpIHsKKwkJCWNhc2UgRElGRkVSRU5USUFMX1ZBTFVFOiByZXR1cm4gRElGRkVSRU5USUFMOworCQkJY2FzZSBDQVJfVkFMVUU6IHJldHVybiBDQVI7CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBmaW5hbCBpbnQgdmFsdWU7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIGZpbmFsIFN0cmluZyBuYW1lOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBmaW5hbCBTdHJpbmcgbGl0ZXJhbDsKKworCS8qKgorCSAqIE9ubHkgdGhpcyBjbGFzcyBjYW4gY29uc3RydWN0IGluc3RhbmNlcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIFVHVktpbmQoaW50IHZhbHVlLCBTdHJpbmcgbmFtZSwgU3RyaW5nIGxpdGVyYWwpIHsKKwkJdGhpcy52YWx1ZSA9IHZhbHVlOworCQl0aGlzLm5hbWUgPSBuYW1lOworCQl0aGlzLmxpdGVyYWwgPSBsaXRlcmFsOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBpbnQgZ2V0VmFsdWUoKSB7CisJICByZXR1cm4gdmFsdWU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0cmluZyBnZXROYW1lKCkgeworCSAgcmV0dXJuIG5hbWU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0cmluZyBnZXRMaXRlcmFsKCkgeworCSAgcmV0dXJuIGxpdGVyYWw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgbGl0ZXJhbCB2YWx1ZSBvZiB0aGUgZW51bWVyYXRvciwgd2hpY2ggaXMgaXRzIHN0cmluZyByZXByZXNlbnRhdGlvbi4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlyZXR1cm4gbGl0ZXJhbDsKKwl9CisKK30gLy8gVUdWS2luZApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XYXRlclN1cmZhY2UuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wMmZkNGQwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvV2F0ZXJTdXJmYWNlLmphdmEKQEAgLTAsMCArMSwxNyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MOworCisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPldhdGVyIFN1cmZhY2U8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFdhdGVyU3VyZmFjZSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBXYXRlclN1cmZhY2UgZXh0ZW5kcyBTdXJmYWNlIHsKK30gLy8gV2F0ZXJTdXJmYWNlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XZWFwb25TeXN0ZW0uamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML1dlYXBvblN5c3RlbS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJhMTIzZjcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9XZWFwb25TeXN0ZW0uamF2YQpAQCAtMCwwICsxLDIxIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUw7CisKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+V2VhcG9uIFN5c3RlbTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8IS0tIGJlZ2luLW1vZGVsLWRvYyAtLT4KKyAqIFN5c3RlbSBvZiBhIHJvYm90aWMgcGxhdGZvcm0gd2hpY2ggY29ycmVzcG9uZCB3aXRoIHRoZSBzb2Z0d2FyZSBhbmQgaGFyZHdhcmUgb2YgdGhlIHdlYXBvbiBjb21wb25lbnRzIChhdHRhY2stZGVmZW5zZSkgb2YgIGEgcm9ib3QuCisgKiA8IS0tIGVuZC1tb2RlbC1kb2MgLS0+CisgKgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2dldFdlYXBvblN5c3RlbSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBXZWFwb25TeXN0ZW0gZXh0ZW5kcyBBY3R1YXRvclN5c3RlbSB7Cit9IC8vIFdlYXBvblN5c3RlbQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BY3R1YXRlZEpvaW50SW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BY3R1YXRlZEpvaW50SW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc2M2U4NWEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FjdHVhdGVkSm9pbnRJbXBsLmphdmEKQEAgLTAsMCArMSwzOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRlZEpvaW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFjdHVhdGVkIEpvaW50PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgQWN0dWF0ZWRKb2ludEltcGwgZXh0ZW5kcyBKb2ludEltcGwgaW1wbGVtZW50cyBBY3R1YXRlZEpvaW50IHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgQWN0dWF0ZWRKb2ludEltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBSb2JvdE1MUGFja2FnZS5MaXRlcmFscy5BQ1RVQVRFRF9KT0lOVDsKKwl9CisKK30gLy8gQWN0dWF0ZWRKb2ludEltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWN0dWF0b3JIYXJkd2FyZUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWN0dWF0b3JIYXJkd2FyZUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jN2EzYzg0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BY3R1YXRvckhhcmR3YXJlSW1wbC5qYXZhCkBAIC0wLDAgKzEsMzggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWN0dWF0b3JIYXJkd2FyZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BY3R1YXRvciBIYXJkd2FyZTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEFjdHVhdG9ySGFyZHdhcmVJbXBsIGV4dGVuZHMgSGFyZHdhcmVJbXBsIGltcGxlbWVudHMgQWN0dWF0b3JIYXJkd2FyZSB7CisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIEFjdHVhdG9ySGFyZHdhcmVJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuQUNUVUFUT1JfSEFSRFdBUkU7CisJfQorCit9IC8vIEFjdHVhdG9ySGFyZHdhcmVJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FjdHVhdG9yU3lzdGVtSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BY3R1YXRvclN5c3RlbUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44YTZhNGI5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BY3R1YXRvclN5c3RlbUltcGwuamF2YQpAQCAtMCwwICsxLDM4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFjdHVhdG9yU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFjdHVhdG9yIFN5c3RlbTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEFjdHVhdG9yU3lzdGVtSW1wbCBleHRlbmRzIFJvYm90aWNTeXN0ZW1JbXBsIGltcGxlbWVudHMgQWN0dWF0b3JTeXN0ZW0geworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBBY3R1YXRvclN5c3RlbUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBSb2JvdE1MUGFja2FnZS5MaXRlcmFscy5BQ1RVQVRPUl9TWVNURU07CisJfQorCit9IC8vIEFjdHVhdG9yU3lzdGVtSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BZ2VudEltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmQ3MzNjMgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWdlbnRJbXBsLmphdmEKQEAgLTAsMCArMSwzOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BZ2VudDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BZ2VudDwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEFnZW50SW1wbCBleHRlbmRzIFBoeXNpY2FsT2JqZWN0SW1wbCBpbXBsZW1lbnRzIEFnZW50IHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgQWdlbnRJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuQUdFTlQ7CisJfQorCit9IC8vIEFnZW50SW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1JbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lYmNkM2I2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGdvcml0aG1JbXBsLmphdmEKQEAgLTAsMCArMSwzODQgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuT3BlcmF0aW9uOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QWxnb3JpdGhtPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BbGdvcml0aG1JbXBsI2dldEJhc2VfT3BlcmF0aW9uIDxlbT5CYXNlIE9wZXJhdGlvbjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWxnb3JpdGhtSW1wbCNpc0V4dGVybmFsIDxlbT5JcyBFeHRlcm5hbDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWxnb3JpdGhtSW1wbCNnZXRFeHRGdW5jdGlvbk5hbWUgPGVtPkV4dCBGdW5jdGlvbiBOYW1lPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BbGdvcml0aG1JbXBsI2dldExpYlBhdGggPGVtPkxpYiBQYXRoPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BbGdvcml0aG1JbXBsI2dldExpYkZpbGVGb3JtYXQgPGVtPkxpYiBGaWxlIEZvcm1hdDwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEFsZ29yaXRobUltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgQWxnb3JpdGhtIHsKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRCYXNlX09wZXJhdGlvbigpIDxlbT5CYXNlIE9wZXJhdGlvbjwvZW0+fScgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0QmFzZV9PcGVyYXRpb24oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPcGVyYXRpb24gYmFzZV9PcGVyYXRpb247CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjaXNFeHRlcm5hbCgpIDxlbT5JcyBFeHRlcm5hbDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjaXNFeHRlcm5hbCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBib29sZWFuIElTX0VYVEVSTkFMX0VERUZBVUxUID0gZmFsc2U7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNpc0V4dGVybmFsKCkgPGVtPklzIEV4dGVybmFsPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNpc0V4dGVybmFsKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgYm9vbGVhbiBpc0V4dGVybmFsID0gSVNfRVhURVJOQUxfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0RXh0RnVuY3Rpb25OYW1lKCkgPGVtPkV4dCBGdW5jdGlvbiBOYW1lPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRFeHRGdW5jdGlvbk5hbWUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgU3RyaW5nIEVYVF9GVU5DVElPTl9OQU1FX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEV4dEZ1bmN0aW9uTmFtZSgpIDxlbT5FeHQgRnVuY3Rpb24gTmFtZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0RXh0RnVuY3Rpb25OYW1lKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgU3RyaW5nIGV4dEZ1bmN0aW9uTmFtZSA9IEVYVF9GVU5DVElPTl9OQU1FX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExpYlBhdGgoKSA8ZW0+TGliIFBhdGg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExpYlBhdGgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgU3RyaW5nIExJQl9QQVRIX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExpYlBhdGgoKSA8ZW0+TGliIFBhdGg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExpYlBhdGgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBTdHJpbmcgbGliUGF0aCA9IExJQl9QQVRIX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExpYkZpbGVGb3JtYXQoKSA8ZW0+TGliIEZpbGUgRm9ybWF0PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRMaWJGaWxlRm9ybWF0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIFN0cmluZyBMSUJfRklMRV9GT1JNQVRfRURFRkFVTFQgPSAiZWxmIjsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExpYkZpbGVGb3JtYXQoKSA8ZW0+TGliIEZpbGUgRm9ybWF0PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRMaWJGaWxlRm9ybWF0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgU3RyaW5nIGxpYkZpbGVGb3JtYXQgPSBMSUJfRklMRV9GT1JNQVRfRURFRkFVTFQ7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgQWxnb3JpdGhtSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLkFMR09SSVRITTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT3BlcmF0aW9uIGdldEJhc2VfT3BlcmF0aW9uKCkgeworCQlpZiAoYmFzZV9PcGVyYXRpb24gIT0gbnVsbCAmJiBiYXNlX09wZXJhdGlvbi5lSXNQcm94eSgpKSB7CisJCQlJbnRlcm5hbEVPYmplY3Qgb2xkQmFzZV9PcGVyYXRpb24gPSAoSW50ZXJuYWxFT2JqZWN0KWJhc2VfT3BlcmF0aW9uOworCQkJYmFzZV9PcGVyYXRpb24gPSAoT3BlcmF0aW9uKWVSZXNvbHZlUHJveHkob2xkQmFzZV9PcGVyYXRpb24pOworCQkJaWYgKGJhc2VfT3BlcmF0aW9uICE9IG9sZEJhc2VfT3BlcmF0aW9uKSB7CisJCQkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uUkVTT0xWRSwgUm9ib3RNTFBhY2thZ2UuQUxHT1JJVEhNX19CQVNFX09QRVJBVElPTiwgb2xkQmFzZV9PcGVyYXRpb24sIGJhc2VfT3BlcmF0aW9uKSk7CisJCQl9CisJCX0KKwkJcmV0dXJuIGJhc2VfT3BlcmF0aW9uOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPcGVyYXRpb24gYmFzaWNHZXRCYXNlX09wZXJhdGlvbigpIHsKKwkJcmV0dXJuIGJhc2VfT3BlcmF0aW9uOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEJhc2VfT3BlcmF0aW9uKE9wZXJhdGlvbiBuZXdCYXNlX09wZXJhdGlvbikgeworCQlPcGVyYXRpb24gb2xkQmFzZV9PcGVyYXRpb24gPSBiYXNlX09wZXJhdGlvbjsKKwkJYmFzZV9PcGVyYXRpb24gPSBuZXdCYXNlX09wZXJhdGlvbjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuQUxHT1JJVEhNX19CQVNFX09QRVJBVElPTiwgb2xkQmFzZV9PcGVyYXRpb24sIGJhc2VfT3BlcmF0aW9uKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIGJvb2xlYW4gaXNFeHRlcm5hbCgpIHsKKwkJcmV0dXJuIGlzRXh0ZXJuYWw7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0SXNFeHRlcm5hbChib29sZWFuIG5ld0lzRXh0ZXJuYWwpIHsKKwkJYm9vbGVhbiBvbGRJc0V4dGVybmFsID0gaXNFeHRlcm5hbDsKKwkJaXNFeHRlcm5hbCA9IG5ld0lzRXh0ZXJuYWw7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLkFMR09SSVRITV9fSVNfRVhURVJOQUwsIG9sZElzRXh0ZXJuYWwsIGlzRXh0ZXJuYWwpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3RyaW5nIGdldEV4dEZ1bmN0aW9uTmFtZSgpIHsKKwkJcmV0dXJuIGV4dEZ1bmN0aW9uTmFtZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRFeHRGdW5jdGlvbk5hbWUoU3RyaW5nIG5ld0V4dEZ1bmN0aW9uTmFtZSkgeworCQlTdHJpbmcgb2xkRXh0RnVuY3Rpb25OYW1lID0gZXh0RnVuY3Rpb25OYW1lOworCQlleHRGdW5jdGlvbk5hbWUgPSBuZXdFeHRGdW5jdGlvbk5hbWU7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLkFMR09SSVRITV9fRVhUX0ZVTkNUSU9OX05BTUUsIG9sZEV4dEZ1bmN0aW9uTmFtZSwgZXh0RnVuY3Rpb25OYW1lKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0cmluZyBnZXRMaWJQYXRoKCkgeworCQlyZXR1cm4gbGliUGF0aDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRMaWJQYXRoKFN0cmluZyBuZXdMaWJQYXRoKSB7CisJCVN0cmluZyBvbGRMaWJQYXRoID0gbGliUGF0aDsKKwkJbGliUGF0aCA9IG5ld0xpYlBhdGg7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLkFMR09SSVRITV9fTElCX1BBVEgsIG9sZExpYlBhdGgsIGxpYlBhdGgpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3RyaW5nIGdldExpYkZpbGVGb3JtYXQoKSB7CisJCXJldHVybiBsaWJGaWxlRm9ybWF0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldExpYkZpbGVGb3JtYXQoU3RyaW5nIG5ld0xpYkZpbGVGb3JtYXQpIHsKKwkJU3RyaW5nIG9sZExpYkZpbGVGb3JtYXQgPSBsaWJGaWxlRm9ybWF0OworCQlsaWJGaWxlRm9ybWF0ID0gbmV3TGliRmlsZUZvcm1hdDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuQUxHT1JJVEhNX19MSUJfRklMRV9GT1JNQVQsIG9sZExpYkZpbGVGb3JtYXQsIGxpYkZpbGVGb3JtYXQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkFMR09SSVRITV9fQkFTRV9PUEVSQVRJT046CisJCQkJaWYgKHJlc29sdmUpIHJldHVybiBnZXRCYXNlX09wZXJhdGlvbigpOworCQkJCXJldHVybiBiYXNpY0dldEJhc2VfT3BlcmF0aW9uKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkFMR09SSVRITV9fSVNfRVhURVJOQUw6CisJCQkJcmV0dXJuIGlzRXh0ZXJuYWwoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQUxHT1JJVEhNX19FWFRfRlVOQ1RJT05fTkFNRToKKwkJCQlyZXR1cm4gZ2V0RXh0RnVuY3Rpb25OYW1lKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkFMR09SSVRITV9fTElCX1BBVEg6CisJCQkJcmV0dXJuIGdldExpYlBhdGgoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQUxHT1JJVEhNX19MSUJfRklMRV9GT1JNQVQ6CisJCQkJcmV0dXJuIGdldExpYkZpbGVGb3JtYXQoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5BTEdPUklUSE1fX0JBU0VfT1BFUkFUSU9OOgorCQkJCXNldEJhc2VfT3BlcmF0aW9uKChPcGVyYXRpb24pbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQUxHT1JJVEhNX19JU19FWFRFUk5BTDoKKwkJCQlzZXRJc0V4dGVybmFsKChCb29sZWFuKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkFMR09SSVRITV9fRVhUX0ZVTkNUSU9OX05BTUU6CisJCQkJc2V0RXh0RnVuY3Rpb25OYW1lKChTdHJpbmcpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQUxHT1JJVEhNX19MSUJfUEFUSDoKKwkJCQlzZXRMaWJQYXRoKChTdHJpbmcpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQUxHT1JJVEhNX19MSUJfRklMRV9GT1JNQVQ6CisJCQkJc2V0TGliRmlsZUZvcm1hdCgoU3RyaW5nKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5BTEdPUklUSE1fX0JBU0VfT1BFUkFUSU9OOgorCQkJCXNldEJhc2VfT3BlcmF0aW9uKChPcGVyYXRpb24pbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5BTEdPUklUSE1fX0lTX0VYVEVSTkFMOgorCQkJCXNldElzRXh0ZXJuYWwoSVNfRVhURVJOQUxfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQUxHT1JJVEhNX19FWFRfRlVOQ1RJT05fTkFNRToKKwkJCQlzZXRFeHRGdW5jdGlvbk5hbWUoRVhUX0ZVTkNUSU9OX05BTUVfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQUxHT1JJVEhNX19MSUJfUEFUSDoKKwkJCQlzZXRMaWJQYXRoKExJQl9QQVRIX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkFMR09SSVRITV9fTElCX0ZJTEVfRk9STUFUOgorCQkJCXNldExpYkZpbGVGb3JtYXQoTElCX0ZJTEVfRk9STUFUX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQUxHT1JJVEhNX19CQVNFX09QRVJBVElPTjoKKwkJCQlyZXR1cm4gYmFzZV9PcGVyYXRpb24gIT0gbnVsbDsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQUxHT1JJVEhNX19JU19FWFRFUk5BTDoKKwkJCQlyZXR1cm4gaXNFeHRlcm5hbCAhPSBJU19FWFRFUk5BTF9FREVGQVVMVDsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQUxHT1JJVEhNX19FWFRfRlVOQ1RJT05fTkFNRToKKwkJCQlyZXR1cm4gRVhUX0ZVTkNUSU9OX05BTUVfRURFRkFVTFQgPT0gbnVsbCA/IGV4dEZ1bmN0aW9uTmFtZSAhPSBudWxsIDogIUVYVF9GVU5DVElPTl9OQU1FX0VERUZBVUxULmVxdWFscyhleHRGdW5jdGlvbk5hbWUpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5BTEdPUklUSE1fX0xJQl9QQVRIOgorCQkJCXJldHVybiBMSUJfUEFUSF9FREVGQVVMVCA9PSBudWxsID8gbGliUGF0aCAhPSBudWxsIDogIUxJQl9QQVRIX0VERUZBVUxULmVxdWFscyhsaWJQYXRoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQUxHT1JJVEhNX19MSUJfRklMRV9GT1JNQVQ6CisJCQkJcmV0dXJuIExJQl9GSUxFX0ZPUk1BVF9FREVGQVVMVCA9PSBudWxsID8gbGliRmlsZUZvcm1hdCAhPSBudWxsIDogIUxJQl9GSUxFX0ZPUk1BVF9FREVGQVVMVC5lcXVhbHMobGliRmlsZUZvcm1hdCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CisJCWlmIChlSXNQcm94eSgpKSByZXR1cm4gc3VwZXIudG9TdHJpbmcoKTsKKworCQlTdHJpbmdCdWZmZXIgcmVzdWx0ID0gbmV3IFN0cmluZ0J1ZmZlcihzdXBlci50b1N0cmluZygpKTsKKwkJcmVzdWx0LmFwcGVuZCgiIChpc0V4dGVybmFsOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChpc0V4dGVybmFsKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBleHRGdW5jdGlvbk5hbWU6ICIpOworCQlyZXN1bHQuYXBwZW5kKGV4dEZ1bmN0aW9uTmFtZSk7CisJCXJlc3VsdC5hcHBlbmQoIiwgbGliUGF0aDogIik7CisJCXJlc3VsdC5hcHBlbmQobGliUGF0aCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgbGliRmlsZUZvcm1hdDogIik7CisJCXJlc3VsdC5hcHBlbmQobGliRmlsZUZvcm1hdCk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBBbGdvcml0aG1JbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0FsZ29yaXRobUxpYnJhcnlJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGE4NzRhNgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxnb3JpdGhtTGlicmFyeUltcGwuamF2YQpAQCAtMCwwICsxLDIyMSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtTGlicmFyeTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5BbGdvcml0aG0gTGlicmFyeTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWxnb3JpdGhtTGlicmFyeUltcGwjZ2V0QmFzZV9DbGFzcyA8ZW0+QmFzZSBDbGFzczwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQWxnb3JpdGhtTGlicmFyeUltcGwjZ2V0UGF0aCA8ZW0+UGF0aDwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEFsZ29yaXRobUxpYnJhcnlJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIEFsZ29yaXRobUxpYnJhcnkgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEJhc2VfQ2xhc3MoKSA8ZW0+QmFzZSBDbGFzczwvZW0+fScgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0QmFzZV9DbGFzcygpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzIGJhc2VfQ2xhc3M7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0UGF0aCgpIDxlbT5QYXRoPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRQYXRoKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIFN0cmluZyBQQVRIX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFBhdGgoKSA8ZW0+UGF0aDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UGF0aCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFN0cmluZyBwYXRoID0gUEFUSF9FREVGQVVMVDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBBbGdvcml0aG1MaWJyYXJ5SW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLkFMR09SSVRITV9MSUJSQVJZOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyBnZXRCYXNlX0NsYXNzKCkgeworCQlpZiAoYmFzZV9DbGFzcyAhPSBudWxsICYmIGJhc2VfQ2xhc3MuZUlzUHJveHkoKSkgeworCQkJSW50ZXJuYWxFT2JqZWN0IG9sZEJhc2VfQ2xhc3MgPSAoSW50ZXJuYWxFT2JqZWN0KWJhc2VfQ2xhc3M7CisJCQliYXNlX0NsYXNzID0gKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKWVSZXNvbHZlUHJveHkob2xkQmFzZV9DbGFzcyk7CisJCQlpZiAoYmFzZV9DbGFzcyAhPSBvbGRCYXNlX0NsYXNzKSB7CisJCQkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uUkVTT0xWRSwgUm9ib3RNTFBhY2thZ2UuQUxHT1JJVEhNX0xJQlJBUllfX0JBU0VfQ0xBU1MsIG9sZEJhc2VfQ2xhc3MsIGJhc2VfQ2xhc3MpKTsKKwkJCX0KKwkJfQorCQlyZXR1cm4gYmFzZV9DbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgYmFzaWNHZXRCYXNlX0NsYXNzKCkgeworCQlyZXR1cm4gYmFzZV9DbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzIG5ld0Jhc2VfQ2xhc3MpIHsKKwkJb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3Mgb2xkQmFzZV9DbGFzcyA9IGJhc2VfQ2xhc3M7CisJCWJhc2VfQ2xhc3MgPSBuZXdCYXNlX0NsYXNzOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5BTEdPUklUSE1fTElCUkFSWV9fQkFTRV9DTEFTUywgb2xkQmFzZV9DbGFzcywgYmFzZV9DbGFzcykpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTdHJpbmcgZ2V0UGF0aCgpIHsKKwkJcmV0dXJuIHBhdGg7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0UGF0aChTdHJpbmcgbmV3UGF0aCkgeworCQlTdHJpbmcgb2xkUGF0aCA9IHBhdGg7CisJCXBhdGggPSBuZXdQYXRoOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5BTEdPUklUSE1fTElCUkFSWV9fUEFUSCwgb2xkUGF0aCwgcGF0aCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQUxHT1JJVEhNX0xJQlJBUllfX0JBU0VfQ0xBU1M6CisJCQkJaWYgKHJlc29sdmUpIHJldHVybiBnZXRCYXNlX0NsYXNzKCk7CisJCQkJcmV0dXJuIGJhc2ljR2V0QmFzZV9DbGFzcygpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5BTEdPUklUSE1fTElCUkFSWV9fUEFUSDoKKwkJCQlyZXR1cm4gZ2V0UGF0aCgpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkFMR09SSVRITV9MSUJSQVJZX19CQVNFX0NMQVNTOgorCQkJCXNldEJhc2VfQ2xhc3MoKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkFMR09SSVRITV9MSUJSQVJZX19QQVRIOgorCQkJCXNldFBhdGgoKFN0cmluZyluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQUxHT1JJVEhNX0xJQlJBUllfX0JBU0VfQ0xBU1M6CisJCQkJc2V0QmFzZV9DbGFzcygob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5BTEdPUklUSE1fTElCUkFSWV9fUEFUSDoKKwkJCQlzZXRQYXRoKFBBVEhfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5BTEdPUklUSE1fTElCUkFSWV9fQkFTRV9DTEFTUzoKKwkJCQlyZXR1cm4gYmFzZV9DbGFzcyAhPSBudWxsOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5BTEdPUklUSE1fTElCUkFSWV9fUEFUSDoKKwkJCQlyZXR1cm4gUEFUSF9FREVGQVVMVCA9PSBudWxsID8gcGF0aCAhPSBudWxsIDogIVBBVEhfRURFRkFVTFQuZXF1YWxzKHBhdGgpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAocGF0aDogIik7CisJCXJlc3VsdC5hcHBlbmQocGF0aCk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBBbGdvcml0aG1MaWJyYXJ5SW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9BbGxvY2F0ZUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxsb2NhdGVJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTM4NWRlNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQWxsb2NhdGVJbXBsLmphdmEKQEAgLTAsMCArMSwxNTQgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsbG9jYXRlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5BYnN0cmFjdGlvbjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFsbG9jYXRlPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5BbGxvY2F0ZUltcGwjZ2V0QmFzZV9BYnN0cmFjdGlvbiA8ZW0+QmFzZSBBYnN0cmFjdGlvbjwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEFsbG9jYXRlSW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBBbGxvY2F0ZSB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0QmFzZV9BYnN0cmFjdGlvbigpIDxlbT5CYXNlIEFic3RyYWN0aW9uPC9lbT59JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRCYXNlX0Fic3RyYWN0aW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgQWJzdHJhY3Rpb24gYmFzZV9BYnN0cmFjdGlvbjsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBBbGxvY2F0ZUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBSb2JvdE1MUGFja2FnZS5MaXRlcmFscy5BTExPQ0FURTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWJzdHJhY3Rpb24gZ2V0QmFzZV9BYnN0cmFjdGlvbigpIHsKKwkJaWYgKGJhc2VfQWJzdHJhY3Rpb24gIT0gbnVsbCAmJiBiYXNlX0Fic3RyYWN0aW9uLmVJc1Byb3h5KCkpIHsKKwkJCUludGVybmFsRU9iamVjdCBvbGRCYXNlX0Fic3RyYWN0aW9uID0gKEludGVybmFsRU9iamVjdCliYXNlX0Fic3RyYWN0aW9uOworCQkJYmFzZV9BYnN0cmFjdGlvbiA9IChBYnN0cmFjdGlvbillUmVzb2x2ZVByb3h5KG9sZEJhc2VfQWJzdHJhY3Rpb24pOworCQkJaWYgKGJhc2VfQWJzdHJhY3Rpb24gIT0gb2xkQmFzZV9BYnN0cmFjdGlvbikgeworCQkJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlJFU09MVkUsIFJvYm90TUxQYWNrYWdlLkFMTE9DQVRFX19CQVNFX0FCU1RSQUNUSU9OLCBvbGRCYXNlX0Fic3RyYWN0aW9uLCBiYXNlX0Fic3RyYWN0aW9uKSk7CisJCQl9CisJCX0KKwkJcmV0dXJuIGJhc2VfQWJzdHJhY3Rpb247CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFic3RyYWN0aW9uIGJhc2ljR2V0QmFzZV9BYnN0cmFjdGlvbigpIHsKKwkJcmV0dXJuIGJhc2VfQWJzdHJhY3Rpb247CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0QmFzZV9BYnN0cmFjdGlvbihBYnN0cmFjdGlvbiBuZXdCYXNlX0Fic3RyYWN0aW9uKSB7CisJCUFic3RyYWN0aW9uIG9sZEJhc2VfQWJzdHJhY3Rpb24gPSBiYXNlX0Fic3RyYWN0aW9uOworCQliYXNlX0Fic3RyYWN0aW9uID0gbmV3QmFzZV9BYnN0cmFjdGlvbjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuQUxMT0NBVEVfX0JBU0VfQUJTVFJBQ1RJT04sIG9sZEJhc2VfQWJzdHJhY3Rpb24sIGJhc2VfQWJzdHJhY3Rpb24pKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkFMTE9DQVRFX19CQVNFX0FCU1RSQUNUSU9OOgorCQkJCWlmIChyZXNvbHZlKSByZXR1cm4gZ2V0QmFzZV9BYnN0cmFjdGlvbigpOworCQkJCXJldHVybiBiYXNpY0dldEJhc2VfQWJzdHJhY3Rpb24oKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5BTExPQ0FURV9fQkFTRV9BQlNUUkFDVElPTjoKKwkJCQlzZXRCYXNlX0Fic3RyYWN0aW9uKChBYnN0cmFjdGlvbiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQUxMT0NBVEVfX0JBU0VfQUJTVFJBQ1RJT046CisJCQkJc2V0QmFzZV9BYnN0cmFjdGlvbigoQWJzdHJhY3Rpb24pbnVsbCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkFMTE9DQVRFX19CQVNFX0FCU1RSQUNUSU9OOgorCQkJCXJldHVybiBiYXNlX0Fic3RyYWN0aW9uICE9IG51bGw7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworfSAvLyBBbGxvY2F0ZUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQXJtSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Bcm1JbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzY5ZWU0YQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQXJtSW1wbC5qYXZhCkBAIC0wLDAgKzEsMzkgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFybTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Bcm08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBBcm1JbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIEFybSB7CisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIEFybUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBSb2JvdE1MUGFja2FnZS5MaXRlcmFscy5BUk07CisJfQorCit9IC8vIEFybUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CbGVuZGVyTW9yc2VJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjlhNmVjNQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQmxlbmRlck1vcnNlSW1wbC5qYXZhCkBAIC0wLDAgKzEsMzIyIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5CbGVuZGVyTW9yc2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TaGFkZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkJsZW5kZXIgTW9yc2U8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkJsZW5kZXJNb3JzZUltcGwjaXNEZWJ1Z01vZGUgPGVtPkRlYnVnIE1vZGU8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkJsZW5kZXJNb3JzZUltcGwjaXNEZWJ1Z0Rpc3BsYXkgPGVtPkRlYnVnIERpc3BsYXk8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkJsZW5kZXJNb3JzZUltcGwjZ2V0R3Jhdml0eSA8ZW0+R3Jhdml0eTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQmxlbmRlck1vcnNlSW1wbCNnZXRfdmlld3BvcnRfc2hhZGUgPGVtPnZpZXdwb3J0IHNoYWRlPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgQmxlbmRlck1vcnNlSW1wbCBleHRlbmRzIFJvYm90aWNTaW11bGF0b3JJbXBsIGltcGxlbWVudHMgQmxlbmRlck1vcnNlIHsKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjaXNEZWJ1Z01vZGUoKSA8ZW0+RGVidWcgTW9kZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjaXNEZWJ1Z01vZGUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgYm9vbGVhbiBERUJVR19NT0RFX0VERUZBVUxUID0gZmFsc2U7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNpc0RlYnVnTW9kZSgpIDxlbT5EZWJ1ZyBNb2RlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNpc0RlYnVnTW9kZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIGJvb2xlYW4gZGVidWdNb2RlID0gREVCVUdfTU9ERV9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNpc0RlYnVnRGlzcGxheSgpIDxlbT5EZWJ1ZyBEaXNwbGF5PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNpc0RlYnVnRGlzcGxheSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBib29sZWFuIERFQlVHX0RJU1BMQVlfRURFRkFVTFQgPSBmYWxzZTsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2lzRGVidWdEaXNwbGF5KCkgPGVtPkRlYnVnIERpc3BsYXk8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2lzRGVidWdEaXNwbGF5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgYm9vbGVhbiBkZWJ1Z0Rpc3BsYXkgPSBERUJVR19ESVNQTEFZX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEdyYXZpdHkoKSA8ZW0+R3Jhdml0eTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0R3Jhdml0eSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgR1JBVklUWV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRHcmF2aXR5KCkgPGVtPkdyYXZpdHk8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEdyYXZpdHkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgZ3Jhdml0eSA9IEdSQVZJVFlfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0X3ZpZXdwb3J0X3NoYWRlKCkgPGVtPnZpZXdwb3J0IHNoYWRlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRfdmlld3BvcnRfc2hhZGUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgU2hhZGUgX1ZJRVdQT1JUX1NIQURFX0VERUZBVUxUID0gU2hhZGUuV0lSRUZSQU1FOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0X3ZpZXdwb3J0X3NoYWRlKCkgPGVtPnZpZXdwb3J0IHNoYWRlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRfdmlld3BvcnRfc2hhZGUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBTaGFkZSBfdmlld3BvcnRfc2hhZGUgPSBfVklFV1BPUlRfU0hBREVfRURFRkFVTFQ7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgQmxlbmRlck1vcnNlSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLkJMRU5ERVJfTU9SU0U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIGJvb2xlYW4gaXNEZWJ1Z01vZGUoKSB7CisJCXJldHVybiBkZWJ1Z01vZGU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0RGVidWdNb2RlKGJvb2xlYW4gbmV3RGVidWdNb2RlKSB7CisJCWJvb2xlYW4gb2xkRGVidWdNb2RlID0gZGVidWdNb2RlOworCQlkZWJ1Z01vZGUgPSBuZXdEZWJ1Z01vZGU7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLkJMRU5ERVJfTU9SU0VfX0RFQlVHX01PREUsIG9sZERlYnVnTW9kZSwgZGVidWdNb2RlKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIGJvb2xlYW4gaXNEZWJ1Z0Rpc3BsYXkoKSB7CisJCXJldHVybiBkZWJ1Z0Rpc3BsYXk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0RGVidWdEaXNwbGF5KGJvb2xlYW4gbmV3RGVidWdEaXNwbGF5KSB7CisJCWJvb2xlYW4gb2xkRGVidWdEaXNwbGF5ID0gZGVidWdEaXNwbGF5OworCQlkZWJ1Z0Rpc3BsYXkgPSBuZXdEZWJ1Z0Rpc3BsYXk7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLkJMRU5ERVJfTU9SU0VfX0RFQlVHX0RJU1BMQVksIG9sZERlYnVnRGlzcGxheSwgZGVidWdEaXNwbGF5KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRHcmF2aXR5KCkgeworCQlyZXR1cm4gZ3Jhdml0eTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRHcmF2aXR5KE9iamVjdCBuZXdHcmF2aXR5KSB7CisJCU9iamVjdCBvbGRHcmF2aXR5ID0gZ3Jhdml0eTsKKwkJZ3Jhdml0eSA9IG5ld0dyYXZpdHk7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLkJMRU5ERVJfTU9SU0VfX0dSQVZJVFksIG9sZEdyYXZpdHksIGdyYXZpdHkpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU2hhZGUgZ2V0X3ZpZXdwb3J0X3NoYWRlKCkgeworCQlyZXR1cm4gX3ZpZXdwb3J0X3NoYWRlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldF92aWV3cG9ydF9zaGFkZShTaGFkZSBuZXdfdmlld3BvcnRfc2hhZGUpIHsKKwkJU2hhZGUgb2xkX3ZpZXdwb3J0X3NoYWRlID0gX3ZpZXdwb3J0X3NoYWRlOworCQlfdmlld3BvcnRfc2hhZGUgPSBuZXdfdmlld3BvcnRfc2hhZGUgPT0gbnVsbCA/IF9WSUVXUE9SVF9TSEFERV9FREVGQVVMVCA6IG5ld192aWV3cG9ydF9zaGFkZTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuQkxFTkRFUl9NT1JTRV9fVklFV1BPUlRfU0hBREUsIG9sZF92aWV3cG9ydF9zaGFkZSwgX3ZpZXdwb3J0X3NoYWRlKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5CTEVOREVSX01PUlNFX19ERUJVR19NT0RFOgorCQkJCXJldHVybiBpc0RlYnVnTW9kZSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5CTEVOREVSX01PUlNFX19ERUJVR19ESVNQTEFZOgorCQkJCXJldHVybiBpc0RlYnVnRGlzcGxheSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5CTEVOREVSX01PUlNFX19HUkFWSVRZOgorCQkJCXJldHVybiBnZXRHcmF2aXR5KCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkJMRU5ERVJfTU9SU0VfX1ZJRVdQT1JUX1NIQURFOgorCQkJCXJldHVybiBnZXRfdmlld3BvcnRfc2hhZGUoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5CTEVOREVSX01PUlNFX19ERUJVR19NT0RFOgorCQkJCXNldERlYnVnTW9kZSgoQm9vbGVhbiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5CTEVOREVSX01PUlNFX19ERUJVR19ESVNQTEFZOgorCQkJCXNldERlYnVnRGlzcGxheSgoQm9vbGVhbiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5CTEVOREVSX01PUlNFX19HUkFWSVRZOgorCQkJCXNldEdyYXZpdHkoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5CTEVOREVSX01PUlNFX19WSUVXUE9SVF9TSEFERToKKwkJCQlzZXRfdmlld3BvcnRfc2hhZGUoKFNoYWRlKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5CTEVOREVSX01PUlNFX19ERUJVR19NT0RFOgorCQkJCXNldERlYnVnTW9kZShERUJVR19NT0RFX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkJMRU5ERVJfTU9SU0VfX0RFQlVHX0RJU1BMQVk6CisJCQkJc2V0RGVidWdEaXNwbGF5KERFQlVHX0RJU1BMQVlfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQkxFTkRFUl9NT1JTRV9fR1JBVklUWToKKwkJCQlzZXRHcmF2aXR5KEdSQVZJVFlfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQkxFTkRFUl9NT1JTRV9fVklFV1BPUlRfU0hBREU6CisJCQkJc2V0X3ZpZXdwb3J0X3NoYWRlKF9WSUVXUE9SVF9TSEFERV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkJMRU5ERVJfTU9SU0VfX0RFQlVHX01PREU6CisJCQkJcmV0dXJuIGRlYnVnTW9kZSAhPSBERUJVR19NT0RFX0VERUZBVUxUOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5CTEVOREVSX01PUlNFX19ERUJVR19ESVNQTEFZOgorCQkJCXJldHVybiBkZWJ1Z0Rpc3BsYXkgIT0gREVCVUdfRElTUExBWV9FREVGQVVMVDsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQkxFTkRFUl9NT1JTRV9fR1JBVklUWToKKwkJCQlyZXR1cm4gR1JBVklUWV9FREVGQVVMVCA9PSBudWxsID8gZ3Jhdml0eSAhPSBudWxsIDogIUdSQVZJVFlfRURFRkFVTFQuZXF1YWxzKGdyYXZpdHkpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5CTEVOREVSX01PUlNFX19WSUVXUE9SVF9TSEFERToKKwkJCQlyZXR1cm4gX3ZpZXdwb3J0X3NoYWRlICE9IF9WSUVXUE9SVF9TSEFERV9FREVGQVVMVDsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJaWYgKGVJc1Byb3h5KCkpIHJldHVybiBzdXBlci50b1N0cmluZygpOworCisJCVN0cmluZ0J1ZmZlciByZXN1bHQgPSBuZXcgU3RyaW5nQnVmZmVyKHN1cGVyLnRvU3RyaW5nKCkpOworCQlyZXN1bHQuYXBwZW5kKCIgKGRlYnVnTW9kZTogIik7CisJCXJlc3VsdC5hcHBlbmQoZGVidWdNb2RlKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBkZWJ1Z0Rpc3BsYXk6ICIpOworCQlyZXN1bHQuYXBwZW5kKGRlYnVnRGlzcGxheSk7CisJCXJlc3VsdC5hcHBlbmQoIiwgZ3Jhdml0eTogIik7CisJCXJlc3VsdC5hcHBlbmQoZ3Jhdml0eSk7CisJCXJlc3VsdC5hcHBlbmQoIiwgX3ZpZXdwb3J0X3NoYWRlOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChfdmlld3BvcnRfc2hhZGUpOworCQlyZXN1bHQuYXBwZW5kKCcpJyk7CisJCXJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKKwl9CisKK30gLy8gQmxlbmRlck1vcnNlSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9CdWlsZGluZ0ltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQnVpbGRpbmdJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGYwZjVmZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQnVpbGRpbmdJbXBsLmphdmEKQEAgLTAsMCArMSwzOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5CdWlsZGluZzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5CdWlsZGluZzwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEJ1aWxkaW5nSW1wbCBleHRlbmRzIFBoeXNpY2FsT2JqZWN0SW1wbCBpbXBsZW1lbnRzIEJ1aWxkaW5nIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgQnVpbGRpbmdJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuQlVJTERJTkc7CisJfQorCit9IC8vIEJ1aWxkaW5nSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0NhbWVyYVN5c3RlbUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNmQ4YTcwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DYW1lcmFTeXN0ZW1JbXBsLmphdmEKQEAgLTAsMCArMSw2MzIgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbkNoYWluOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2FtZXJhU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50MzI7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc0ZhY3Rvcnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5DYW1lcmEgU3lzdGVtPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5DYW1lcmFTeXN0ZW1JbXBsI2dldFdpZHRoIDxlbT5XaWR0aDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQ2FtZXJhU3lzdGVtSW1wbCNnZXRIZWlnaHQgPGVtPkhlaWdodDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQ2FtZXJhU3lzdGVtSW1wbCNnZXRBbHBoYV91IDxlbT5BbHBoYSB1PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5DYW1lcmFTeXN0ZW1JbXBsI2dldEFscGhhX3YgPGVtPkFscGhhIHY8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkNhbWVyYVN5c3RlbUltcGwjZ2V0VTAgPGVtPlUwPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5DYW1lcmFTeXN0ZW1JbXBsI2dldFYwIDxlbT5WMDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQ2FtZXJhU3lzdGVtSW1wbCNnZXRDb2xvcl9mb3JtYXQgPGVtPkNvbG9yIGZvcm1hdDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQ2FtZXJhU3lzdGVtSW1wbCNnZXRUcmFuc2xhdGUgPGVtPlRyYW5zbGF0ZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQ2FtZXJhU3lzdGVtSW1wbCNnZXRSb3RhdGUgPGVtPlJvdGF0ZTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIENhbWVyYVN5c3RlbUltcGwgZXh0ZW5kcyBJbWFnZVNlbnNvclN5c3RlbUltcGwgaW1wbGVtZW50cyBDYW1lcmFTeXN0ZW0geworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRXaWR0aCgpIDxlbT5XaWR0aDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0V2lkdGgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFdJRFRIX0VERUZBVUxUID0gKE9iamVjdClTdGRfZGF0YXR5cGVzRmFjdG9yeS5lSU5TVEFOQ0UuY3JlYXRlRnJvbVN0cmluZyhTdGRfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UuZ2V0VUludDMyKCksICIwIik7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRXaWR0aCgpIDxlbT5XaWR0aDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0V2lkdGgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3Qgd2lkdGggPSBXSURUSF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRIZWlnaHQoKSA8ZW0+SGVpZ2h0PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRIZWlnaHQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IEhFSUdIVF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRIZWlnaHQoKSA8ZW0+SGVpZ2h0PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRIZWlnaHQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgaGVpZ2h0ID0gSEVJR0hUX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEFscGhhX3UoKSA8ZW0+QWxwaGEgdTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0QWxwaGFfdSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgQUxQSEFfVV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRBbHBoYV91KCkgPGVtPkFscGhhIHU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEFscGhhX3UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgYWxwaGFfdSA9IEFMUEhBX1VfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0QWxwaGFfdigpIDxlbT5BbHBoYSB2PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRBbHBoYV92KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBBTFBIQV9WX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEFscGhhX3YoKSA8ZW0+QWxwaGEgdjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0QWxwaGFfdigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBhbHBoYV92ID0gQUxQSEFfVl9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRVMCgpIDxlbT5VMDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VTAoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFUwX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFUwKCkgPGVtPlUwPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRVMCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCB1MCA9IFUwX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFYwKCkgPGVtPlYwPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRWMCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgVjBfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0VjAoKSA8ZW0+VjA8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFYwKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHYwID0gVjBfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0Q29sb3JfZm9ybWF0KCkgPGVtPkNvbG9yIGZvcm1hdDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0Q29sb3JfZm9ybWF0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBDT0xPUl9GT1JNQVRfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0Q29sb3JfZm9ybWF0KCkgPGVtPkNvbG9yIGZvcm1hdDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0Q29sb3JfZm9ybWF0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IGNvbG9yX2Zvcm1hdCA9IENPTE9SX0ZPUk1BVF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFRyYW5zbGF0ZSgpIDxlbT5UcmFuc2xhdGU8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFRyYW5zbGF0ZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFBvaW50MzIgdHJhbnNsYXRlOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0Um90YXRlKCkgPGVtPlJvdGF0ZTwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0Um90YXRlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgUG9pbnQzMiByb3RhdGU7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgQ2FtZXJhU3lzdGVtSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLkNBTUVSQV9TWVNURU07CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRXaWR0aCgpIHsKKwkJcmV0dXJuIHdpZHRoOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFdpZHRoKE9iamVjdCBuZXdXaWR0aCkgeworCQlPYmplY3Qgb2xkV2lkdGggPSB3aWR0aDsKKwkJd2lkdGggPSBuZXdXaWR0aDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fV0lEVEgsIG9sZFdpZHRoLCB3aWR0aCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0SGVpZ2h0KCkgeworCQlyZXR1cm4gaGVpZ2h0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEhlaWdodChPYmplY3QgbmV3SGVpZ2h0KSB7CisJCU9iamVjdCBvbGRIZWlnaHQgPSBoZWlnaHQ7CisJCWhlaWdodCA9IG5ld0hlaWdodDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fSEVJR0hULCBvbGRIZWlnaHQsIGhlaWdodCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0QWxwaGFfdSgpIHsKKwkJcmV0dXJuIGFscGhhX3U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0QWxwaGFfdShPYmplY3QgbmV3QWxwaGFfdSkgeworCQlPYmplY3Qgb2xkQWxwaGFfdSA9IGFscGhhX3U7CisJCWFscGhhX3UgPSBuZXdBbHBoYV91OworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5DQU1FUkFfU1lTVEVNX19BTFBIQV9VLCBvbGRBbHBoYV91LCBhbHBoYV91KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRBbHBoYV92KCkgeworCQlyZXR1cm4gYWxwaGFfdjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRBbHBoYV92KE9iamVjdCBuZXdBbHBoYV92KSB7CisJCU9iamVjdCBvbGRBbHBoYV92ID0gYWxwaGFfdjsKKwkJYWxwaGFfdiA9IG5ld0FscGhhX3Y7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLkNBTUVSQV9TWVNURU1fX0FMUEhBX1YsIG9sZEFscGhhX3YsIGFscGhhX3YpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFUwKCkgeworCQlyZXR1cm4gdTA7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0VTAoT2JqZWN0IG5ld1UwKSB7CisJCU9iamVjdCBvbGRVMCA9IHUwOworCQl1MCA9IG5ld1UwOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5DQU1FUkFfU1lTVEVNX19VMCwgb2xkVTAsIHUwKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRWMCgpIHsKKwkJcmV0dXJuIHYwOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFYwKE9iamVjdCBuZXdWMCkgeworCQlPYmplY3Qgb2xkVjAgPSB2MDsKKwkJdjAgPSBuZXdWMDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fVjAsIG9sZFYwLCB2MCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0Q29sb3JfZm9ybWF0KCkgeworCQlyZXR1cm4gY29sb3JfZm9ybWF0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldENvbG9yX2Zvcm1hdChPYmplY3QgbmV3Q29sb3JfZm9ybWF0KSB7CisJCU9iamVjdCBvbGRDb2xvcl9mb3JtYXQgPSBjb2xvcl9mb3JtYXQ7CisJCWNvbG9yX2Zvcm1hdCA9IG5ld0NvbG9yX2Zvcm1hdDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fQ09MT1JfRk9STUFULCBvbGRDb2xvcl9mb3JtYXQsIGNvbG9yX2Zvcm1hdCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBQb2ludDMyIGdldFRyYW5zbGF0ZSgpIHsKKwkJcmV0dXJuIHRyYW5zbGF0ZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRUcmFuc2xhdGUoUG9pbnQzMiBuZXdUcmFuc2xhdGUsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJUG9pbnQzMiBvbGRUcmFuc2xhdGUgPSB0cmFuc2xhdGU7CisJCXRyYW5zbGF0ZSA9IG5ld1RyYW5zbGF0ZTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fVFJBTlNMQVRFLCBvbGRUcmFuc2xhdGUsIG5ld1RyYW5zbGF0ZSk7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0VHJhbnNsYXRlKFBvaW50MzIgbmV3VHJhbnNsYXRlKSB7CisJCWlmIChuZXdUcmFuc2xhdGUgIT0gdHJhbnNsYXRlKSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmICh0cmFuc2xhdGUgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpdHJhbnNsYXRlKS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fVFJBTlNMQVRFLCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdUcmFuc2xhdGUgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3VHJhbnNsYXRlKS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fVFJBTlNMQVRFLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldFRyYW5zbGF0ZShuZXdUcmFuc2xhdGUsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fVFJBTlNMQVRFLCBuZXdUcmFuc2xhdGUsIG5ld1RyYW5zbGF0ZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBQb2ludDMyIGdldFJvdGF0ZSgpIHsKKwkJcmV0dXJuIHJvdGF0ZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRSb3RhdGUoUG9pbnQzMiBuZXdSb3RhdGUsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJUG9pbnQzMiBvbGRSb3RhdGUgPSByb3RhdGU7CisJCXJvdGF0ZSA9IG5ld1JvdGF0ZTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fUk9UQVRFLCBvbGRSb3RhdGUsIG5ld1JvdGF0ZSk7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0Um90YXRlKFBvaW50MzIgbmV3Um90YXRlKSB7CisJCWlmIChuZXdSb3RhdGUgIT0gcm90YXRlKSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChyb3RhdGUgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3Qpcm90YXRlKS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fUk9UQVRFLCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdSb3RhdGUgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3Um90YXRlKS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fUk9UQVRFLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldFJvdGF0ZShuZXdSb3RhdGUsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fUk9UQVRFLCBuZXdSb3RhdGUsIG5ld1JvdGF0ZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBlSW52ZXJzZVJlbW92ZShJbnRlcm5hbEVPYmplY3Qgb3RoZXJFbmQsIGludCBmZWF0dXJlSUQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fVFJBTlNMQVRFOgorCQkJCXJldHVybiBiYXNpY1NldFRyYW5zbGF0ZShudWxsLCBtc2dzKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fUk9UQVRFOgorCQkJCXJldHVybiBiYXNpY1NldFJvdGF0ZShudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5DQU1FUkFfU1lTVEVNX19XSURUSDoKKwkJCQlyZXR1cm4gZ2V0V2lkdGgoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fSEVJR0hUOgorCQkJCXJldHVybiBnZXRIZWlnaHQoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fQUxQSEFfVToKKwkJCQlyZXR1cm4gZ2V0QWxwaGFfdSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5DQU1FUkFfU1lTVEVNX19BTFBIQV9WOgorCQkJCXJldHVybiBnZXRBbHBoYV92KCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkNBTUVSQV9TWVNURU1fX1UwOgorCQkJCXJldHVybiBnZXRVMCgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5DQU1FUkFfU1lTVEVNX19WMDoKKwkJCQlyZXR1cm4gZ2V0VjAoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fQ09MT1JfRk9STUFUOgorCQkJCXJldHVybiBnZXRDb2xvcl9mb3JtYXQoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fVFJBTlNMQVRFOgorCQkJCXJldHVybiBnZXRUcmFuc2xhdGUoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fUk9UQVRFOgorCQkJCXJldHVybiBnZXRSb3RhdGUoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5DQU1FUkFfU1lTVEVNX19XSURUSDoKKwkJCQlzZXRXaWR0aCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkNBTUVSQV9TWVNURU1fX0hFSUdIVDoKKwkJCQlzZXRIZWlnaHQoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5DQU1FUkFfU1lTVEVNX19BTFBIQV9VOgorCQkJCXNldEFscGhhX3UoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5DQU1FUkFfU1lTVEVNX19BTFBIQV9WOgorCQkJCXNldEFscGhhX3YoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5DQU1FUkFfU1lTVEVNX19VMDoKKwkJCQlzZXRVMCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkNBTUVSQV9TWVNURU1fX1YwOgorCQkJCXNldFYwKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fQ09MT1JfRk9STUFUOgorCQkJCXNldENvbG9yX2Zvcm1hdCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkNBTUVSQV9TWVNURU1fX1RSQU5TTEFURToKKwkJCQlzZXRUcmFuc2xhdGUoKFBvaW50MzIpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fUk9UQVRFOgorCQkJCXNldFJvdGF0ZSgoUG9pbnQzMiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fV0lEVEg6CisJCQkJc2V0V2lkdGgoV0lEVEhfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fSEVJR0hUOgorCQkJCXNldEhlaWdodChIRUlHSFRfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fQUxQSEFfVToKKwkJCQlzZXRBbHBoYV91KEFMUEhBX1VfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fQUxQSEFfVjoKKwkJCQlzZXRBbHBoYV92KEFMUEhBX1ZfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fVTA6CisJCQkJc2V0VTAoVTBfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fVjA6CisJCQkJc2V0VjAoVjBfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fQ09MT1JfRk9STUFUOgorCQkJCXNldENvbG9yX2Zvcm1hdChDT0xPUl9GT1JNQVRfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fVFJBTlNMQVRFOgorCQkJCXNldFRyYW5zbGF0ZSgoUG9pbnQzMiludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkNBTUVSQV9TWVNURU1fX1JPVEFURToKKwkJCQlzZXRSb3RhdGUoKFBvaW50MzIpbnVsbCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkNBTUVSQV9TWVNURU1fX1dJRFRIOgorCQkJCXJldHVybiBXSURUSF9FREVGQVVMVCA9PSBudWxsID8gd2lkdGggIT0gbnVsbCA6ICFXSURUSF9FREVGQVVMVC5lcXVhbHMod2lkdGgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5DQU1FUkFfU1lTVEVNX19IRUlHSFQ6CisJCQkJcmV0dXJuIEhFSUdIVF9FREVGQVVMVCA9PSBudWxsID8gaGVpZ2h0ICE9IG51bGwgOiAhSEVJR0hUX0VERUZBVUxULmVxdWFscyhoZWlnaHQpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5DQU1FUkFfU1lTVEVNX19BTFBIQV9VOgorCQkJCXJldHVybiBBTFBIQV9VX0VERUZBVUxUID09IG51bGwgPyBhbHBoYV91ICE9IG51bGwgOiAhQUxQSEFfVV9FREVGQVVMVC5lcXVhbHMoYWxwaGFfdSk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkNBTUVSQV9TWVNURU1fX0FMUEhBX1Y6CisJCQkJcmV0dXJuIEFMUEhBX1ZfRURFRkFVTFQgPT0gbnVsbCA/IGFscGhhX3YgIT0gbnVsbCA6ICFBTFBIQV9WX0VERUZBVUxULmVxdWFscyhhbHBoYV92KTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTV9fVTA6CisJCQkJcmV0dXJuIFUwX0VERUZBVUxUID09IG51bGwgPyB1MCAhPSBudWxsIDogIVUwX0VERUZBVUxULmVxdWFscyh1MCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkNBTUVSQV9TWVNURU1fX1YwOgorCQkJCXJldHVybiBWMF9FREVGQVVMVCA9PSBudWxsID8gdjAgIT0gbnVsbCA6ICFWMF9FREVGQVVMVC5lcXVhbHModjApOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5DQU1FUkFfU1lTVEVNX19DT0xPUl9GT1JNQVQ6CisJCQkJcmV0dXJuIENPTE9SX0ZPUk1BVF9FREVGQVVMVCA9PSBudWxsID8gY29sb3JfZm9ybWF0ICE9IG51bGwgOiAhQ09MT1JfRk9STUFUX0VERUZBVUxULmVxdWFscyhjb2xvcl9mb3JtYXQpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5DQU1FUkFfU1lTVEVNX19UUkFOU0xBVEU6CisJCQkJcmV0dXJuIHRyYW5zbGF0ZSAhPSBudWxsOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5DQU1FUkFfU1lTVEVNX19ST1RBVEU6CisJCQkJcmV0dXJuIHJvdGF0ZSAhPSBudWxsOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAod2lkdGg6ICIpOworCQlyZXN1bHQuYXBwZW5kKHdpZHRoKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBoZWlnaHQ6ICIpOworCQlyZXN1bHQuYXBwZW5kKGhlaWdodCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgYWxwaGFfdTogIik7CisJCXJlc3VsdC5hcHBlbmQoYWxwaGFfdSk7CisJCXJlc3VsdC5hcHBlbmQoIiwgYWxwaGFfdjogIik7CisJCXJlc3VsdC5hcHBlbmQoYWxwaGFfdik7CisJCXJlc3VsdC5hcHBlbmQoIiwgdTA6ICIpOworCQlyZXN1bHQuYXBwZW5kKHUwKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCB2MDogIik7CisJCXJlc3VsdC5hcHBlbmQodjApOworCQlyZXN1bHQuYXBwZW5kKCIsIGNvbG9yX2Zvcm1hdDogIik7CisJCXJlc3VsdC5hcHBlbmQoY29sb3JfZm9ybWF0KTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIENhbWVyYVN5c3RlbUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2hhc3Npc0ltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ2hhc3Npc0ltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mN2M5NzllCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DaGFzc2lzSW1wbC5qYXZhCkBAIC0wLDAgKzEsMzggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2hhc3NpczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5DaGFzc2lzPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgQ2hhc3Npc0ltcGwgZXh0ZW5kcyBTdXBwb3J0aW5nU3RydWN0dXJlSW1wbCBpbXBsZW1lbnRzIENoYXNzaXMgeworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBDaGFzc2lzSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLkNIQVNTSVM7CisJfQorCit9IC8vIENoYXNzaXNJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Nsb3NlZExvb3BDb250cm9sU3lzdGVtSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DbG9zZWRMb29wQ29udHJvbFN5c3RlbUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMmEwZGFkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DbG9zZWRMb29wQ29udHJvbFN5c3RlbUltcGwuamF2YQpAQCAtMCwwICsxLDM4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNsb3NlZExvb3BDb250cm9sU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNsb3NlZCBMb29wIENvbnRyb2wgU3lzdGVtPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgQ2xvc2VkTG9vcENvbnRyb2xTeXN0ZW1JbXBsIGV4dGVuZHMgQ3liZXJQaHlzaWNhbFN5c3RlbUltcGwgaW1wbGVtZW50cyBDbG9zZWRMb29wQ29udHJvbFN5c3RlbSB7CisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIENsb3NlZExvb3BDb250cm9sU3lzdGVtSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLkNMT1NFRF9MT09QX0NPTlRST0xfU1lTVEVNOworCX0KKworfSAvLyBDbG9zZWRMb29wQ29udHJvbFN5c3RlbUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29tcGxldGVCb25kaW5nSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Db21wbGV0ZUJvbmRpbmdJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZThmYWFmYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ29tcGxldGVCb25kaW5nSW1wbC5qYXZhCkBAIC0wLDAgKzEsMzggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ29tcGxldGVCb25kaW5nOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNvbXBsZXRlIEJvbmRpbmc8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBDb21wbGV0ZUJvbmRpbmdJbXBsIGV4dGVuZHMgSm9pbnRJbXBsIGltcGxlbWVudHMgQ29tcGxldGVCb25kaW5nIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgQ29tcGxldGVCb25kaW5nSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLkNPTVBMRVRFX0JPTkRJTkc7CisJfQorCit9IC8vIENvbXBsZXRlQm9uZGluZ0ltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ3liZXJQaHlzaWNhbFN5c3RlbUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ3liZXJQaHlzaWNhbFN5c3RlbUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41ZDEwMjA3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9DeWJlclBoeXNpY2FsU3lzdGVtSW1wbC5qYXZhCkBAIC0wLDAgKzEsMzggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ3liZXJQaHlzaWNhbFN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5DeWJlciBQaHlzaWNhbCBTeXN0ZW08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBDeWJlclBoeXNpY2FsU3lzdGVtSW1wbCBleHRlbmRzIFN5c3RlbUltcGwgaW1wbGVtZW50cyBDeWJlclBoeXNpY2FsU3lzdGVtIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgQ3liZXJQaHlzaWNhbFN5c3RlbUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBSb2JvdE1MUGFja2FnZS5MaXRlcmFscy5DWUJFUl9QSFlTSUNBTF9TWVNURU07CisJfQorCit9IC8vIEN5YmVyUGh5c2ljYWxTeXN0ZW1JbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0N5Y2FiVEtJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGE5ZGNkOQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvQ3ljYWJUS0ltcGwuamF2YQpAQCAtMCwwICsxLDI2NyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ3ljYWJUSzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5DeWNhYiBUSzwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQ3ljYWJUS0ltcGwjaXNVc2VSZWFsVGltZSA8ZW0+VXNlIFJlYWwgVGltZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQ3ljYWJUS0ltcGwjZ2V0VGltZVN0ZXAgPGVtPlRpbWUgU3RlcDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuQ3ljYWJUS0ltcGwjZ2V0VGltZUZhY3RvciA8ZW0+VGltZSBGYWN0b3I8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBDeWNhYlRLSW1wbCBleHRlbmRzIFJvYm90aWNTaW11bGF0b3JJbXBsIGltcGxlbWVudHMgQ3ljYWJUSyB7CisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2lzVXNlUmVhbFRpbWUoKSA8ZW0+VXNlIFJlYWwgVGltZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjaXNVc2VSZWFsVGltZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBib29sZWFuIFVTRV9SRUFMX1RJTUVfRURFRkFVTFQgPSBmYWxzZTsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2lzVXNlUmVhbFRpbWUoKSA8ZW0+VXNlIFJlYWwgVGltZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjaXNVc2VSZWFsVGltZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIGJvb2xlYW4gdXNlUmVhbFRpbWUgPSBVU0VfUkVBTF9USU1FX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFRpbWVTdGVwKCkgPGVtPlRpbWUgU3RlcDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VGltZVN0ZXAoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFRJTUVfU1RFUF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRUaW1lU3RlcCgpIDxlbT5UaW1lIFN0ZXA8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFRpbWVTdGVwKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHRpbWVTdGVwID0gVElNRV9TVEVQX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFRpbWVGYWN0b3IoKSA8ZW0+VGltZSBGYWN0b3I8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFRpbWVGYWN0b3IoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFRJTUVfRkFDVE9SX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFRpbWVGYWN0b3IoKSA8ZW0+VGltZSBGYWN0b3I8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFRpbWVGYWN0b3IoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgdGltZUZhY3RvciA9IFRJTUVfRkFDVE9SX0VERUZBVUxUOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIEN5Y2FiVEtJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuQ1lDQUJfVEs7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIGJvb2xlYW4gaXNVc2VSZWFsVGltZSgpIHsKKwkJcmV0dXJuIHVzZVJlYWxUaW1lOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFVzZVJlYWxUaW1lKGJvb2xlYW4gbmV3VXNlUmVhbFRpbWUpIHsKKwkJYm9vbGVhbiBvbGRVc2VSZWFsVGltZSA9IHVzZVJlYWxUaW1lOworCQl1c2VSZWFsVGltZSA9IG5ld1VzZVJlYWxUaW1lOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5DWUNBQl9US19fVVNFX1JFQUxfVElNRSwgb2xkVXNlUmVhbFRpbWUsIHVzZVJlYWxUaW1lKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRUaW1lU3RlcCgpIHsKKwkJcmV0dXJuIHRpbWVTdGVwOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFRpbWVTdGVwKE9iamVjdCBuZXdUaW1lU3RlcCkgeworCQlPYmplY3Qgb2xkVGltZVN0ZXAgPSB0aW1lU3RlcDsKKwkJdGltZVN0ZXAgPSBuZXdUaW1lU3RlcDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuQ1lDQUJfVEtfX1RJTUVfU1RFUCwgb2xkVGltZVN0ZXAsIHRpbWVTdGVwKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRUaW1lRmFjdG9yKCkgeworCQlyZXR1cm4gdGltZUZhY3RvcjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRUaW1lRmFjdG9yKE9iamVjdCBuZXdUaW1lRmFjdG9yKSB7CisJCU9iamVjdCBvbGRUaW1lRmFjdG9yID0gdGltZUZhY3RvcjsKKwkJdGltZUZhY3RvciA9IG5ld1RpbWVGYWN0b3I7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLkNZQ0FCX1RLX19USU1FX0ZBQ1RPUiwgb2xkVGltZUZhY3RvciwgdGltZUZhY3RvcikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ1lDQUJfVEtfX1VTRV9SRUFMX1RJTUU6CisJCQkJcmV0dXJuIGlzVXNlUmVhbFRpbWUoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ1lDQUJfVEtfX1RJTUVfU1RFUDoKKwkJCQlyZXR1cm4gZ2V0VGltZVN0ZXAoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ1lDQUJfVEtfX1RJTUVfRkFDVE9SOgorCQkJCXJldHVybiBnZXRUaW1lRmFjdG9yKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ1lDQUJfVEtfX1VTRV9SRUFMX1RJTUU6CisJCQkJc2V0VXNlUmVhbFRpbWUoKEJvb2xlYW4pbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ1lDQUJfVEtfX1RJTUVfU1RFUDoKKwkJCQlzZXRUaW1lU3RlcCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkNZQ0FCX1RLX19USU1FX0ZBQ1RPUjoKKwkJCQlzZXRUaW1lRmFjdG9yKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkNZQ0FCX1RLX19VU0VfUkVBTF9USU1FOgorCQkJCXNldFVzZVJlYWxUaW1lKFVTRV9SRUFMX1RJTUVfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ1lDQUJfVEtfX1RJTUVfU1RFUDoKKwkJCQlzZXRUaW1lU3RlcChUSU1FX1NURVBfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ1lDQUJfVEtfX1RJTUVfRkFDVE9SOgorCQkJCXNldFRpbWVGYWN0b3IoVElNRV9GQUNUT1JfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5DWUNBQl9US19fVVNFX1JFQUxfVElNRToKKwkJCQlyZXR1cm4gdXNlUmVhbFRpbWUgIT0gVVNFX1JFQUxfVElNRV9FREVGQVVMVDsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ1lDQUJfVEtfX1RJTUVfU1RFUDoKKwkJCQlyZXR1cm4gVElNRV9TVEVQX0VERUZBVUxUID09IG51bGwgPyB0aW1lU3RlcCAhPSBudWxsIDogIVRJTUVfU1RFUF9FREVGQVVMVC5lcXVhbHModGltZVN0ZXApOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5DWUNBQl9US19fVElNRV9GQUNUT1I6CisJCQkJcmV0dXJuIFRJTUVfRkFDVE9SX0VERUZBVUxUID09IG51bGwgPyB0aW1lRmFjdG9yICE9IG51bGwgOiAhVElNRV9GQUNUT1JfRURFRkFVTFQuZXF1YWxzKHRpbWVGYWN0b3IpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAodXNlUmVhbFRpbWU6ICIpOworCQlyZXN1bHQuYXBwZW5kKHVzZVJlYWxUaW1lKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCB0aW1lU3RlcDogIik7CisJCXJlc3VsdC5hcHBlbmQodGltZVN0ZXApOworCQlyZXN1bHQuYXBwZW5kKCIsIHRpbWVGYWN0b3I6ICIpOworCQlyZXN1bHQuYXBwZW5kKHRpbWVGYWN0b3IpOworCQlyZXN1bHQuYXBwZW5kKCcpJyk7CisJCXJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKKwl9CisKK30gLy8gQ3ljYWJUS0ltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRGF0YUZsb3dQb3J0SW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9EYXRhRmxvd1BvcnRJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWQ5YjA1MwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRGF0YUZsb3dQb3J0SW1wbC5qYXZhCkBAIC0wLDAgKzEsMjQ2IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EYXRhRmxvd0RpcmVjdGlvbktpbmQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRhdGFGbG93UG9ydDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuSW1hZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuU3RlcmVvdHlwZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkRhdGEgRmxvdyBQb3J0PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5EYXRhRmxvd1BvcnRJbXBsI2dldERpcmVjdGlvbiA8ZW0+RGlyZWN0aW9uPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5EYXRhRmxvd1BvcnRJbXBsI2dldEJ1ZmZlclNpemUgPGVtPkJ1ZmZlciBTaXplPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgRGF0YUZsb3dQb3J0SW1wbCBleHRlbmRzIFBvcnRJbXBsIGltcGxlbWVudHMgRGF0YUZsb3dQb3J0IHsKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0RGlyZWN0aW9uKCkgPGVtPkRpcmVjdGlvbjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0RGlyZWN0aW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIERhdGFGbG93RGlyZWN0aW9uS2luZCBESVJFQ1RJT05fRURFRkFVTFQgPSBEYXRhRmxvd0RpcmVjdGlvbktpbmQuSU47CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXREaXJlY3Rpb24oKSA8ZW0+RGlyZWN0aW9uPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXREaXJlY3Rpb24oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBEYXRhRmxvd0RpcmVjdGlvbktpbmQgZGlyZWN0aW9uID0gRElSRUNUSU9OX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEJ1ZmZlclNpemUoKSA8ZW0+QnVmZmVyIFNpemU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEJ1ZmZlclNpemUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgaW50IEJVRkZFUl9TSVpFX0VERUZBVUxUID0gMDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEJ1ZmZlclNpemUoKSA8ZW0+QnVmZmVyIFNpemU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEJ1ZmZlclNpemUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBpbnQgYnVmZmVyU2l6ZSA9IEJVRkZFUl9TSVpFX0VERUZBVUxUOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIERhdGFGbG93UG9ydEltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBSb2JvdE1MUGFja2FnZS5MaXRlcmFscy5EQVRBX0ZMT1dfUE9SVDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRGF0YUZsb3dEaXJlY3Rpb25LaW5kIGdldERpcmVjdGlvbigpIHsKKwkJcmV0dXJuIGRpcmVjdGlvbjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXREaXJlY3Rpb24oRGF0YUZsb3dEaXJlY3Rpb25LaW5kIG5ld0RpcmVjdGlvbikgeworCQlEYXRhRmxvd0RpcmVjdGlvbktpbmQgb2xkRGlyZWN0aW9uID0gZGlyZWN0aW9uOworCQlkaXJlY3Rpb24gPSBuZXdEaXJlY3Rpb24gPT0gbnVsbCA/IERJUkVDVElPTl9FREVGQVVMVCA6IG5ld0RpcmVjdGlvbjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuREFUQV9GTE9XX1BPUlRfX0RJUkVDVElPTiwgb2xkRGlyZWN0aW9uLCBkaXJlY3Rpb24pKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgaW50IGdldEJ1ZmZlclNpemUoKSB7CisJCXJldHVybiBidWZmZXJTaXplOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEJ1ZmZlclNpemUoaW50IG5ld0J1ZmZlclNpemUpIHsKKwkJaW50IG9sZEJ1ZmZlclNpemUgPSBidWZmZXJTaXplOworCQlidWZmZXJTaXplID0gbmV3QnVmZmVyU2l6ZTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuREFUQV9GTE9XX1BPUlRfX0JVRkZFUl9TSVpFLCBvbGRCdWZmZXJTaXplLCBidWZmZXJTaXplKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5EQVRBX0ZMT1dfUE9SVF9fRElSRUNUSU9OOgorCQkJCXJldHVybiBnZXREaXJlY3Rpb24oKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuREFUQV9GTE9XX1BPUlRfX0JVRkZFUl9TSVpFOgorCQkJCXJldHVybiBnZXRCdWZmZXJTaXplKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuREFUQV9GTE9XX1BPUlRfX0RJUkVDVElPTjoKKwkJCQlzZXREaXJlY3Rpb24oKERhdGFGbG93RGlyZWN0aW9uS2luZCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5EQVRBX0ZMT1dfUE9SVF9fQlVGRkVSX1NJWkU6CisJCQkJc2V0QnVmZmVyU2l6ZSgoSW50ZWdlciluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuREFUQV9GTE9XX1BPUlRfX0RJUkVDVElPTjoKKwkJCQlzZXREaXJlY3Rpb24oRElSRUNUSU9OX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkRBVEFfRkxPV19QT1JUX19CVUZGRVJfU0laRToKKwkJCQlzZXRCdWZmZXJTaXplKEJVRkZFUl9TSVpFX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuREFUQV9GTE9XX1BPUlRfX0RJUkVDVElPTjoKKwkJCQlyZXR1cm4gZGlyZWN0aW9uICE9IERJUkVDVElPTl9FREVGQVVMVDsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuREFUQV9GTE9XX1BPUlRfX0JVRkZFUl9TSVpFOgorCQkJCXJldHVybiBidWZmZXJTaXplICE9IEJVRkZFUl9TSVpFX0VERUZBVUxUOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAoZGlyZWN0aW9uOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChkaXJlY3Rpb24pOworCQlyZXN1bHQuYXBwZW5kKCIsIGJ1ZmZlclNpemU6ICIpOworCQlyZXN1bHQuYXBwZW5kKGJ1ZmZlclNpemUpOworCQlyZXN1bHQuYXBwZW5kKCcpJyk7CisJCXJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIEltYWdlcyByZWdpc3RlcmVkIGluIFByb2ZpbGUgYXJlIDoKKwkgKgorCSAqIDAgLSBGbG93UG9ydCBJTgorCSAqIDEgLSBGbG93UG9ydCBPVVQKKwkgKgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPi4KKwkgKgorCSAqIEByZXR1cm4gdGhlIGljb24KKwkgKiBAZ2VuZXJhdGVkIE5PVAorCSAqLworCXB1YmxpYyBJbWFnZSBnZXRJY29uKCkgeworCQlJbWFnZSBJbWFnZU5vdEZvdW5kID0gbnVsbDsKKwkJaWYgKGdldEJhc2VfUG9ydCgpICE9IG51bGwpIHsKKwkJCVN0ZXJlb3R5cGUgc3QgPSBnZXRCYXNlX1BvcnQoKS5nZXRBcHBsaWVkU3RlcmVvdHlwZSgiUm9ib3RNTDo6RGF0YUZsb3dQb3J0Iik7CisJCQlJbWFnZSBpbWFnZSA9IHN0LmdldEljb25zKCkuZ2V0KDApOworCisJCQlpZiAoZ2V0RGlyZWN0aW9uKCkgPT0gRGF0YUZsb3dEaXJlY3Rpb25LaW5kLk9VVCkgeworCQkJCWltYWdlID0gc3QuZ2V0SWNvbnMoKS5nZXQoMSk7CisJCQl9IGVsc2UgaWYgKGdldERpcmVjdGlvbigpID09IERhdGFGbG93RGlyZWN0aW9uS2luZC5JTk9VVCkgeworCQkJCWltYWdlID0gc3QuZ2V0SWNvbnMoKS5nZXQoMik7CisJCQl9CisKKwkJCXJldHVybiBpbWFnZTsKKwkJfSBlbHNlIHsKKwkJCXJldHVybiBJbWFnZU5vdEZvdW5kOworCQl9CisJfQorCit9IC8vIERhdGFGbG93UG9ydEltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRGVwbG95bWVudFBsYW5JbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RlcGxveW1lbnRQbGFuSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA5NWM2Y2UKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0RlcGxveW1lbnRQbGFuSW1wbC5qYXZhCkBAIC0wLDAgKzEsMjE0IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EZXBsb3ltZW50UGxhbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuSW5zdGFuY2VTcGVjaWZpY2F0aW9uOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+RGVwbG95bWVudCBQbGFuPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5EZXBsb3ltZW50UGxhbkltcGwjZ2V0QmFzZV9QYWNrYWdlIDxlbT5CYXNlIFBhY2thZ2U8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkRlcGxveW1lbnRQbGFuSW1wbCNnZXRNYWluSW5zdGFuY2UgPGVtPk1haW4gSW5zdGFuY2U8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBEZXBsb3ltZW50UGxhbkltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgRGVwbG95bWVudFBsYW4geworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEJhc2VfUGFja2FnZSgpIDxlbT5CYXNlIFBhY2thZ2U8L2VtPn0nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEJhc2VfUGFja2FnZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhY2thZ2UgYmFzZV9QYWNrYWdlOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TWFpbkluc3RhbmNlKCkgPGVtPk1haW4gSW5zdGFuY2U8L2VtPn0nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldE1haW5JbnN0YW5jZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEluc3RhbmNlU3BlY2lmaWNhdGlvbiBtYWluSW5zdGFuY2U7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRGVwbG95bWVudFBsYW5JbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuREVQTE9ZTUVOVF9QTEFOOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlIGdldEJhc2VfUGFja2FnZSgpIHsKKwkJaWYgKGJhc2VfUGFja2FnZSAhPSBudWxsICYmIGJhc2VfUGFja2FnZS5lSXNQcm94eSgpKSB7CisJCQlJbnRlcm5hbEVPYmplY3Qgb2xkQmFzZV9QYWNrYWdlID0gKEludGVybmFsRU9iamVjdCliYXNlX1BhY2thZ2U7CisJCQliYXNlX1BhY2thZ2UgPSAob3JnLmVjbGlwc2UudW1sMi51bWwuUGFja2FnZSllUmVzb2x2ZVByb3h5KG9sZEJhc2VfUGFja2FnZSk7CisJCQlpZiAoYmFzZV9QYWNrYWdlICE9IG9sZEJhc2VfUGFja2FnZSkgeworCQkJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlJFU09MVkUsIFJvYm90TUxQYWNrYWdlLkRFUExPWU1FTlRfUExBTl9fQkFTRV9QQUNLQUdFLCBvbGRCYXNlX1BhY2thZ2UsIGJhc2VfUGFja2FnZSkpOworCQkJfQorCQl9CisJCXJldHVybiBiYXNlX1BhY2thZ2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhY2thZ2UgYmFzaWNHZXRCYXNlX1BhY2thZ2UoKSB7CisJCXJldHVybiBiYXNlX1BhY2thZ2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0QmFzZV9QYWNrYWdlKG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhY2thZ2UgbmV3QmFzZV9QYWNrYWdlKSB7CisJCW9yZy5lY2xpcHNlLnVtbDIudW1sLlBhY2thZ2Ugb2xkQmFzZV9QYWNrYWdlID0gYmFzZV9QYWNrYWdlOworCQliYXNlX1BhY2thZ2UgPSBuZXdCYXNlX1BhY2thZ2U7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLkRFUExPWU1FTlRfUExBTl9fQkFTRV9QQUNLQUdFLCBvbGRCYXNlX1BhY2thZ2UsIGJhc2VfUGFja2FnZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBJbnN0YW5jZVNwZWNpZmljYXRpb24gZ2V0TWFpbkluc3RhbmNlKCkgeworCQlpZiAobWFpbkluc3RhbmNlICE9IG51bGwgJiYgbWFpbkluc3RhbmNlLmVJc1Byb3h5KCkpIHsKKwkJCUludGVybmFsRU9iamVjdCBvbGRNYWluSW5zdGFuY2UgPSAoSW50ZXJuYWxFT2JqZWN0KW1haW5JbnN0YW5jZTsKKwkJCW1haW5JbnN0YW5jZSA9IChJbnN0YW5jZVNwZWNpZmljYXRpb24pZVJlc29sdmVQcm94eShvbGRNYWluSW5zdGFuY2UpOworCQkJaWYgKG1haW5JbnN0YW5jZSAhPSBvbGRNYWluSW5zdGFuY2UpIHsKKwkJCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5SRVNPTFZFLCBSb2JvdE1MUGFja2FnZS5ERVBMT1lNRU5UX1BMQU5fX01BSU5fSU5TVEFOQ0UsIG9sZE1haW5JbnN0YW5jZSwgbWFpbkluc3RhbmNlKSk7CisJCQl9CisJCX0KKwkJcmV0dXJuIG1haW5JbnN0YW5jZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgSW5zdGFuY2VTcGVjaWZpY2F0aW9uIGJhc2ljR2V0TWFpbkluc3RhbmNlKCkgeworCQlyZXR1cm4gbWFpbkluc3RhbmNlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldE1haW5JbnN0YW5jZShJbnN0YW5jZVNwZWNpZmljYXRpb24gbmV3TWFpbkluc3RhbmNlKSB7CisJCUluc3RhbmNlU3BlY2lmaWNhdGlvbiBvbGRNYWluSW5zdGFuY2UgPSBtYWluSW5zdGFuY2U7CisJCW1haW5JbnN0YW5jZSA9IG5ld01haW5JbnN0YW5jZTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuREVQTE9ZTUVOVF9QTEFOX19NQUlOX0lOU1RBTkNFLCBvbGRNYWluSW5zdGFuY2UsIG1haW5JbnN0YW5jZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuREVQTE9ZTUVOVF9QTEFOX19CQVNFX1BBQ0tBR0U6CisJCQkJaWYgKHJlc29sdmUpIHJldHVybiBnZXRCYXNlX1BhY2thZ2UoKTsKKwkJCQlyZXR1cm4gYmFzaWNHZXRCYXNlX1BhY2thZ2UoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuREVQTE9ZTUVOVF9QTEFOX19NQUlOX0lOU1RBTkNFOgorCQkJCWlmIChyZXNvbHZlKSByZXR1cm4gZ2V0TWFpbkluc3RhbmNlKCk7CisJCQkJcmV0dXJuIGJhc2ljR2V0TWFpbkluc3RhbmNlKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuREVQTE9ZTUVOVF9QTEFOX19CQVNFX1BBQ0tBR0U6CisJCQkJc2V0QmFzZV9QYWNrYWdlKChvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkRFUExPWU1FTlRfUExBTl9fTUFJTl9JTlNUQU5DRToKKwkJCQlzZXRNYWluSW5zdGFuY2UoKEluc3RhbmNlU3BlY2lmaWNhdGlvbiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuREVQTE9ZTUVOVF9QTEFOX19CQVNFX1BBQ0tBR0U6CisJCQkJc2V0QmFzZV9QYWNrYWdlKChvcmcuZWNsaXBzZS51bWwyLnVtbC5QYWNrYWdlKW51bGwpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuREVQTE9ZTUVOVF9QTEFOX19NQUlOX0lOU1RBTkNFOgorCQkJCXNldE1haW5JbnN0YW5jZSgoSW5zdGFuY2VTcGVjaWZpY2F0aW9uKW51bGwpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5ERVBMT1lNRU5UX1BMQU5fX0JBU0VfUEFDS0FHRToKKwkJCQlyZXR1cm4gYmFzZV9QYWNrYWdlICE9IG51bGw7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkRFUExPWU1FTlRfUExBTl9fTUFJTl9JTlNUQU5DRToKKwkJCQlyZXR1cm4gbWFpbkluc3RhbmNlICE9IG51bGw7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworfSAvLyBEZXBsb3ltZW50UGxhbkltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbmdpbmVTeXN0ZW1JbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGYxNDdjZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW5naW5lU3lzdGVtSW1wbC5qYXZhCkBAIC0wLDAgKzEsNDI5IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FbmdpbmVTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+RW5naW5lIFN5c3RlbTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuRW5naW5lU3lzdGVtSW1wbCNnZXRWZWhpY2xlVHJhY3Rpb24gPGVtPlZlaGljbGUgVHJhY3Rpb248L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkVuZ2luZVN5c3RlbUltcGwjZ2V0TWF4RW5naW5lRm9yY2UgPGVtPk1heCBFbmdpbmUgRm9yY2U8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkVuZ2luZVN5c3RlbUltcGwjZ2V0TWF4QnJlYWtpbmdGb3JjZSA8ZW0+TWF4IEJyZWFraW5nIEZvcmNlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5FbmdpbmVTeXN0ZW1JbXBsI2dldE1heEFsbG93ZWRTdGVlcmluZyA8ZW0+TWF4IEFsbG93ZWQgU3RlZXJpbmc8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkVuZ2luZVN5c3RlbUltcGwjZ2V0TWF4QWxsb3dlZFZlbG9jaXR5IDxlbT5NYXggQWxsb3dlZCBWZWxvY2l0eTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuRW5naW5lU3lzdGVtSW1wbCNnZXRHZWFyX3JhdGlvbiA8ZW0+R2VhciByYXRpb248L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBFbmdpbmVTeXN0ZW1JbXBsIGV4dGVuZHMgQWN0dWF0b3JTeXN0ZW1JbXBsIGltcGxlbWVudHMgRW5naW5lU3lzdGVtIHsKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0VmVoaWNsZVRyYWN0aW9uKCkgPGVtPlZlaGljbGUgVHJhY3Rpb248L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFZlaGljbGVUcmFjdGlvbigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBTdHJpbmcgVkVISUNMRV9UUkFDVElPTl9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRWZWhpY2xlVHJhY3Rpb24oKSA8ZW0+VmVoaWNsZSBUcmFjdGlvbjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VmVoaWNsZVRyYWN0aW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgU3RyaW5nIHZlaGljbGVUcmFjdGlvbiA9IFZFSElDTEVfVFJBQ1RJT05fRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TWF4RW5naW5lRm9yY2UoKSA8ZW0+TWF4IEVuZ2luZSBGb3JjZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0TWF4RW5naW5lRm9yY2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IE1BWF9FTkdJTkVfRk9SQ0VfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TWF4RW5naW5lRm9yY2UoKSA8ZW0+TWF4IEVuZ2luZSBGb3JjZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0TWF4RW5naW5lRm9yY2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgbWF4RW5naW5lRm9yY2UgPSBNQVhfRU5HSU5FX0ZPUkNFX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldE1heEJyZWFraW5nRm9yY2UoKSA8ZW0+TWF4IEJyZWFraW5nIEZvcmNlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRNYXhCcmVha2luZ0ZvcmNlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBNQVhfQlJFQUtJTkdfRk9SQ0VfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TWF4QnJlYWtpbmdGb3JjZSgpIDxlbT5NYXggQnJlYWtpbmcgRm9yY2U8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldE1heEJyZWFraW5nRm9yY2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgbWF4QnJlYWtpbmdGb3JjZSA9IE1BWF9CUkVBS0lOR19GT1JDRV9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRNYXhBbGxvd2VkU3RlZXJpbmcoKSA8ZW0+TWF4IEFsbG93ZWQgU3RlZXJpbmc8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldE1heEFsbG93ZWRTdGVlcmluZygpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgTUFYX0FMTE9XRURfU1RFRVJJTkdfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TWF4QWxsb3dlZFN0ZWVyaW5nKCkgPGVtPk1heCBBbGxvd2VkIFN0ZWVyaW5nPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRNYXhBbGxvd2VkU3RlZXJpbmcoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgbWF4QWxsb3dlZFN0ZWVyaW5nID0gTUFYX0FMTE9XRURfU1RFRVJJTkdfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TWF4QWxsb3dlZFZlbG9jaXR5KCkgPGVtPk1heCBBbGxvd2VkIFZlbG9jaXR5PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRNYXhBbGxvd2VkVmVsb2NpdHkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IE1BWF9BTExPV0VEX1ZFTE9DSVRZX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldE1heEFsbG93ZWRWZWxvY2l0eSgpIDxlbT5NYXggQWxsb3dlZCBWZWxvY2l0eTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0TWF4QWxsb3dlZFZlbG9jaXR5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IG1heEFsbG93ZWRWZWxvY2l0eSA9IE1BWF9BTExPV0VEX1ZFTE9DSVRZX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEdlYXJfcmF0aW9uKCkgPGVtPkdlYXIgcmF0aW9uPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRHZWFyX3JhdGlvbigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgR0VBUl9SQVRJT05fRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0R2Vhcl9yYXRpb24oKSA8ZW0+R2VhciByYXRpb248L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEdlYXJfcmF0aW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IGdlYXJfcmF0aW9uID0gR0VBUl9SQVRJT05fRURFRkFVTFQ7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRW5naW5lU3lzdGVtSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLkVOR0lORV9TWVNURU07CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0cmluZyBnZXRWZWhpY2xlVHJhY3Rpb24oKSB7CisJCXJldHVybiB2ZWhpY2xlVHJhY3Rpb247CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0VmVoaWNsZVRyYWN0aW9uKFN0cmluZyBuZXdWZWhpY2xlVHJhY3Rpb24pIHsKKwkJU3RyaW5nIG9sZFZlaGljbGVUcmFjdGlvbiA9IHZlaGljbGVUcmFjdGlvbjsKKwkJdmVoaWNsZVRyYWN0aW9uID0gbmV3VmVoaWNsZVRyYWN0aW9uOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19WRUhJQ0xFX1RSQUNUSU9OLCBvbGRWZWhpY2xlVHJhY3Rpb24sIHZlaGljbGVUcmFjdGlvbikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0TWF4RW5naW5lRm9yY2UoKSB7CisJCXJldHVybiBtYXhFbmdpbmVGb3JjZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRNYXhFbmdpbmVGb3JjZShPYmplY3QgbmV3TWF4RW5naW5lRm9yY2UpIHsKKwkJT2JqZWN0IG9sZE1heEVuZ2luZUZvcmNlID0gbWF4RW5naW5lRm9yY2U7CisJCW1heEVuZ2luZUZvcmNlID0gbmV3TWF4RW5naW5lRm9yY2U7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLkVOR0lORV9TWVNURU1fX01BWF9FTkdJTkVfRk9SQ0UsIG9sZE1heEVuZ2luZUZvcmNlLCBtYXhFbmdpbmVGb3JjZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0TWF4QnJlYWtpbmdGb3JjZSgpIHsKKwkJcmV0dXJuIG1heEJyZWFraW5nRm9yY2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0TWF4QnJlYWtpbmdGb3JjZShPYmplY3QgbmV3TWF4QnJlYWtpbmdGb3JjZSkgeworCQlPYmplY3Qgb2xkTWF4QnJlYWtpbmdGb3JjZSA9IG1heEJyZWFraW5nRm9yY2U7CisJCW1heEJyZWFraW5nRm9yY2UgPSBuZXdNYXhCcmVha2luZ0ZvcmNlOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19NQVhfQlJFQUtJTkdfRk9SQ0UsIG9sZE1heEJyZWFraW5nRm9yY2UsIG1heEJyZWFraW5nRm9yY2UpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldE1heEFsbG93ZWRTdGVlcmluZygpIHsKKwkJcmV0dXJuIG1heEFsbG93ZWRTdGVlcmluZzsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRNYXhBbGxvd2VkU3RlZXJpbmcoT2JqZWN0IG5ld01heEFsbG93ZWRTdGVlcmluZykgeworCQlPYmplY3Qgb2xkTWF4QWxsb3dlZFN0ZWVyaW5nID0gbWF4QWxsb3dlZFN0ZWVyaW5nOworCQltYXhBbGxvd2VkU3RlZXJpbmcgPSBuZXdNYXhBbGxvd2VkU3RlZXJpbmc7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLkVOR0lORV9TWVNURU1fX01BWF9BTExPV0VEX1NURUVSSU5HLCBvbGRNYXhBbGxvd2VkU3RlZXJpbmcsIG1heEFsbG93ZWRTdGVlcmluZykpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0TWF4QWxsb3dlZFZlbG9jaXR5KCkgeworCQlyZXR1cm4gbWF4QWxsb3dlZFZlbG9jaXR5OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldE1heEFsbG93ZWRWZWxvY2l0eShPYmplY3QgbmV3TWF4QWxsb3dlZFZlbG9jaXR5KSB7CisJCU9iamVjdCBvbGRNYXhBbGxvd2VkVmVsb2NpdHkgPSBtYXhBbGxvd2VkVmVsb2NpdHk7CisJCW1heEFsbG93ZWRWZWxvY2l0eSA9IG5ld01heEFsbG93ZWRWZWxvY2l0eTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuRU5HSU5FX1NZU1RFTV9fTUFYX0FMTE9XRURfVkVMT0NJVFksIG9sZE1heEFsbG93ZWRWZWxvY2l0eSwgbWF4QWxsb3dlZFZlbG9jaXR5KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRHZWFyX3JhdGlvbigpIHsKKwkJcmV0dXJuIGdlYXJfcmF0aW9uOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEdlYXJfcmF0aW9uKE9iamVjdCBuZXdHZWFyX3JhdGlvbikgeworCQlPYmplY3Qgb2xkR2Vhcl9yYXRpb24gPSBnZWFyX3JhdGlvbjsKKwkJZ2Vhcl9yYXRpb24gPSBuZXdHZWFyX3JhdGlvbjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuRU5HSU5FX1NZU1RFTV9fR0VBUl9SQVRJT04sIG9sZEdlYXJfcmF0aW9uLCBnZWFyX3JhdGlvbikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuRU5HSU5FX1NZU1RFTV9fVkVISUNMRV9UUkFDVElPTjoKKwkJCQlyZXR1cm4gZ2V0VmVoaWNsZVRyYWN0aW9uKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkVOR0lORV9TWVNURU1fX01BWF9FTkdJTkVfRk9SQ0U6CisJCQkJcmV0dXJuIGdldE1heEVuZ2luZUZvcmNlKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkVOR0lORV9TWVNURU1fX01BWF9CUkVBS0lOR19GT1JDRToKKwkJCQlyZXR1cm4gZ2V0TWF4QnJlYWtpbmdGb3JjZSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19NQVhfQUxMT1dFRF9TVEVFUklORzoKKwkJCQlyZXR1cm4gZ2V0TWF4QWxsb3dlZFN0ZWVyaW5nKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkVOR0lORV9TWVNURU1fX01BWF9BTExPV0VEX1ZFTE9DSVRZOgorCQkJCXJldHVybiBnZXRNYXhBbGxvd2VkVmVsb2NpdHkoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuRU5HSU5FX1NZU1RFTV9fR0VBUl9SQVRJT046CisJCQkJcmV0dXJuIGdldEdlYXJfcmF0aW9uKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuRU5HSU5FX1NZU1RFTV9fVkVISUNMRV9UUkFDVElPTjoKKwkJCQlzZXRWZWhpY2xlVHJhY3Rpb24oKFN0cmluZyluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19NQVhfRU5HSU5FX0ZPUkNFOgorCQkJCXNldE1heEVuZ2luZUZvcmNlKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuRU5HSU5FX1NZU1RFTV9fTUFYX0JSRUFLSU5HX0ZPUkNFOgorCQkJCXNldE1heEJyZWFraW5nRm9yY2UoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19NQVhfQUxMT1dFRF9TVEVFUklORzoKKwkJCQlzZXRNYXhBbGxvd2VkU3RlZXJpbmcoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19NQVhfQUxMT1dFRF9WRUxPQ0lUWToKKwkJCQlzZXRNYXhBbGxvd2VkVmVsb2NpdHkoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19HRUFSX1JBVElPTjoKKwkJCQlzZXRHZWFyX3JhdGlvbigoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19WRUhJQ0xFX1RSQUNUSU9OOgorCQkJCXNldFZlaGljbGVUcmFjdGlvbihWRUhJQ0xFX1RSQUNUSU9OX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkVOR0lORV9TWVNURU1fX01BWF9FTkdJTkVfRk9SQ0U6CisJCQkJc2V0TWF4RW5naW5lRm9yY2UoTUFYX0VOR0lORV9GT1JDRV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19NQVhfQlJFQUtJTkdfRk9SQ0U6CisJCQkJc2V0TWF4QnJlYWtpbmdGb3JjZShNQVhfQlJFQUtJTkdfRk9SQ0VfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuRU5HSU5FX1NZU1RFTV9fTUFYX0FMTE9XRURfU1RFRVJJTkc6CisJCQkJc2V0TWF4QWxsb3dlZFN0ZWVyaW5nKE1BWF9BTExPV0VEX1NURUVSSU5HX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkVOR0lORV9TWVNURU1fX01BWF9BTExPV0VEX1ZFTE9DSVRZOgorCQkJCXNldE1heEFsbG93ZWRWZWxvY2l0eShNQVhfQUxMT1dFRF9WRUxPQ0lUWV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19HRUFSX1JBVElPTjoKKwkJCQlzZXRHZWFyX3JhdGlvbihHRUFSX1JBVElPTl9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkVOR0lORV9TWVNURU1fX1ZFSElDTEVfVFJBQ1RJT046CisJCQkJcmV0dXJuIFZFSElDTEVfVFJBQ1RJT05fRURFRkFVTFQgPT0gbnVsbCA/IHZlaGljbGVUcmFjdGlvbiAhPSBudWxsIDogIVZFSElDTEVfVFJBQ1RJT05fRURFRkFVTFQuZXF1YWxzKHZlaGljbGVUcmFjdGlvbik7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkVOR0lORV9TWVNURU1fX01BWF9FTkdJTkVfRk9SQ0U6CisJCQkJcmV0dXJuIE1BWF9FTkdJTkVfRk9SQ0VfRURFRkFVTFQgPT0gbnVsbCA/IG1heEVuZ2luZUZvcmNlICE9IG51bGwgOiAhTUFYX0VOR0lORV9GT1JDRV9FREVGQVVMVC5lcXVhbHMobWF4RW5naW5lRm9yY2UpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNX19NQVhfQlJFQUtJTkdfRk9SQ0U6CisJCQkJcmV0dXJuIE1BWF9CUkVBS0lOR19GT1JDRV9FREVGQVVMVCA9PSBudWxsID8gbWF4QnJlYWtpbmdGb3JjZSAhPSBudWxsIDogIU1BWF9CUkVBS0lOR19GT1JDRV9FREVGQVVMVC5lcXVhbHMobWF4QnJlYWtpbmdGb3JjZSk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkVOR0lORV9TWVNURU1fX01BWF9BTExPV0VEX1NURUVSSU5HOgorCQkJCXJldHVybiBNQVhfQUxMT1dFRF9TVEVFUklOR19FREVGQVVMVCA9PSBudWxsID8gbWF4QWxsb3dlZFN0ZWVyaW5nICE9IG51bGwgOiAhTUFYX0FMTE9XRURfU1RFRVJJTkdfRURFRkFVTFQuZXF1YWxzKG1heEFsbG93ZWRTdGVlcmluZyk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkVOR0lORV9TWVNURU1fX01BWF9BTExPV0VEX1ZFTE9DSVRZOgorCQkJCXJldHVybiBNQVhfQUxMT1dFRF9WRUxPQ0lUWV9FREVGQVVMVCA9PSBudWxsID8gbWF4QWxsb3dlZFZlbG9jaXR5ICE9IG51bGwgOiAhTUFYX0FMTE9XRURfVkVMT0NJVFlfRURFRkFVTFQuZXF1YWxzKG1heEFsbG93ZWRWZWxvY2l0eSk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkVOR0lORV9TWVNURU1fX0dFQVJfUkFUSU9OOgorCQkJCXJldHVybiBHRUFSX1JBVElPTl9FREVGQVVMVCA9PSBudWxsID8gZ2Vhcl9yYXRpb24gIT0gbnVsbCA6ICFHRUFSX1JBVElPTl9FREVGQVVMVC5lcXVhbHMoZ2Vhcl9yYXRpb24pOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAodmVoaWNsZVRyYWN0aW9uOiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh2ZWhpY2xlVHJhY3Rpb24pOworCQlyZXN1bHQuYXBwZW5kKCIsIG1heEVuZ2luZUZvcmNlOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChtYXhFbmdpbmVGb3JjZSk7CisJCXJlc3VsdC5hcHBlbmQoIiwgbWF4QnJlYWtpbmdGb3JjZTogIik7CisJCXJlc3VsdC5hcHBlbmQobWF4QnJlYWtpbmdGb3JjZSk7CisJCXJlc3VsdC5hcHBlbmQoIiwgbWF4QWxsb3dlZFN0ZWVyaW5nOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChtYXhBbGxvd2VkU3RlZXJpbmcpOworCQlyZXN1bHQuYXBwZW5kKCIsIG1heEFsbG93ZWRWZWxvY2l0eTogIik7CisJCXJlc3VsdC5hcHBlbmQobWF4QWxsb3dlZFZlbG9jaXR5KTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBnZWFyX3JhdGlvbjogIik7CisJCXJlc3VsdC5hcHBlbmQoZ2Vhcl9yYXRpb24pOworCQlyZXN1bHQuYXBwZW5kKCcpJyk7CisJCXJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKKwl9CisKK30gLy8gRW5naW5lU3lzdGVtSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FbnZpcm9ubWVudEltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW52aXJvbm1lbnRJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTNiZWY1NwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRW52aXJvbm1lbnRJbXBsLmphdmEKQEAgLTAsMCArMSwxNTMgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkVudmlyb25tZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkVudmlyb25tZW50PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5FbnZpcm9ubWVudEltcGwjZ2V0QmFzZV9DbGFzcyA8ZW0+QmFzZSBDbGFzczwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEVudmlyb25tZW50SW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBFbnZpcm9ubWVudCB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0QmFzZV9DbGFzcygpIDxlbT5CYXNlIENsYXNzPC9lbT59JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRCYXNlX0NsYXNzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgYmFzZV9DbGFzczsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBFbnZpcm9ubWVudEltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBSb2JvdE1MUGFja2FnZS5MaXRlcmFscy5FTlZJUk9OTUVOVDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgZ2V0QmFzZV9DbGFzcygpIHsKKwkJaWYgKGJhc2VfQ2xhc3MgIT0gbnVsbCAmJiBiYXNlX0NsYXNzLmVJc1Byb3h5KCkpIHsKKwkJCUludGVybmFsRU9iamVjdCBvbGRCYXNlX0NsYXNzID0gKEludGVybmFsRU9iamVjdCliYXNlX0NsYXNzOworCQkJYmFzZV9DbGFzcyA9IChvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyllUmVzb2x2ZVByb3h5KG9sZEJhc2VfQ2xhc3MpOworCQkJaWYgKGJhc2VfQ2xhc3MgIT0gb2xkQmFzZV9DbGFzcykgeworCQkJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlJFU09MVkUsIFJvYm90TUxQYWNrYWdlLkVOVklST05NRU5UX19CQVNFX0NMQVNTLCBvbGRCYXNlX0NsYXNzLCBiYXNlX0NsYXNzKSk7CisJCQl9CisJCX0KKwkJcmV0dXJuIGJhc2VfQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzIGJhc2ljR2V0QmFzZV9DbGFzcygpIHsKKwkJcmV0dXJuIGJhc2VfQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyBuZXdCYXNlX0NsYXNzKSB7CisJCW9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzIG9sZEJhc2VfQ2xhc3MgPSBiYXNlX0NsYXNzOworCQliYXNlX0NsYXNzID0gbmV3QmFzZV9DbGFzczsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuRU5WSVJPTk1FTlRfX0JBU0VfQ0xBU1MsIG9sZEJhc2VfQ2xhc3MsIGJhc2VfQ2xhc3MpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkVOVklST05NRU5UX19CQVNFX0NMQVNTOgorCQkJCWlmIChyZXNvbHZlKSByZXR1cm4gZ2V0QmFzZV9DbGFzcygpOworCQkJCXJldHVybiBiYXNpY0dldEJhc2VfQ2xhc3MoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5FTlZJUk9OTUVOVF9fQkFTRV9DTEFTUzoKKwkJCQlzZXRCYXNlX0NsYXNzKChvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuRU5WSVJPTk1FTlRfX0JBU0VfQ0xBU1M6CisJCQkJc2V0QmFzZV9DbGFzcygob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpbnVsbCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkVOVklST05NRU5UX19CQVNFX0NMQVNTOgorCQkJCXJldHVybiBiYXNlX0NsYXNzICE9IG51bGw7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworfSAvLyBFbnZpcm9ubWVudEltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRXh0ZXJuYWxMaWJyYXJ5SW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9FeHRlcm5hbExpYnJhcnlJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjEyOWQ1MAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvRXh0ZXJuYWxMaWJyYXJ5SW1wbC5qYXZhCkBAIC0wLDAgKzEsMjc2IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FeHRlcm5hbExpYnJhcnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkludGVyZmFjZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkV4dGVybmFsIExpYnJhcnk8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkV4dGVybmFsTGlicmFyeUltcGwjZ2V0TGliUGF0aCA8ZW0+TGliIFBhdGg8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkV4dGVybmFsTGlicmFyeUltcGwjZ2V0TGliRmlsZUZvcm1hdCA8ZW0+TGliIEZpbGUgRm9ybWF0PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5FeHRlcm5hbExpYnJhcnlJbXBsI2dldEJhc2VfSW50ZXJmYWNlIDxlbT5CYXNlIEludGVyZmFjZTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEV4dGVybmFsTGlicmFyeUltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgRXh0ZXJuYWxMaWJyYXJ5IHsKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TGliUGF0aCgpIDxlbT5MaWIgUGF0aDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0TGliUGF0aCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBTdHJpbmcgTElCX1BBVEhfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TGliUGF0aCgpIDxlbT5MaWIgUGF0aDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0TGliUGF0aCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFN0cmluZyBsaWJQYXRoID0gTElCX1BBVEhfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TGliRmlsZUZvcm1hdCgpIDxlbT5MaWIgRmlsZSBGb3JtYXQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExpYkZpbGVGb3JtYXQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgU3RyaW5nIExJQl9GSUxFX0ZPUk1BVF9FREVGQVVMVCA9ICJlbGYiOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TGliRmlsZUZvcm1hdCgpIDxlbT5MaWIgRmlsZSBGb3JtYXQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExpYkZpbGVGb3JtYXQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBTdHJpbmcgbGliRmlsZUZvcm1hdCA9IExJQl9GSUxFX0ZPUk1BVF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEJhc2VfSW50ZXJmYWNlKCkgPGVtPkJhc2UgSW50ZXJmYWNlPC9lbT59JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRCYXNlX0ludGVyZmFjZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEludGVyZmFjZSBiYXNlX0ludGVyZmFjZTsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBFeHRlcm5hbExpYnJhcnlJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuRVhURVJOQUxfTElCUkFSWTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3RyaW5nIGdldExpYlBhdGgoKSB7CisJCXJldHVybiBsaWJQYXRoOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldExpYlBhdGgoU3RyaW5nIG5ld0xpYlBhdGgpIHsKKwkJU3RyaW5nIG9sZExpYlBhdGggPSBsaWJQYXRoOworCQlsaWJQYXRoID0gbmV3TGliUGF0aDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuRVhURVJOQUxfTElCUkFSWV9fTElCX1BBVEgsIG9sZExpYlBhdGgsIGxpYlBhdGgpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3RyaW5nIGdldExpYkZpbGVGb3JtYXQoKSB7CisJCXJldHVybiBsaWJGaWxlRm9ybWF0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldExpYkZpbGVGb3JtYXQoU3RyaW5nIG5ld0xpYkZpbGVGb3JtYXQpIHsKKwkJU3RyaW5nIG9sZExpYkZpbGVGb3JtYXQgPSBsaWJGaWxlRm9ybWF0OworCQlsaWJGaWxlRm9ybWF0ID0gbmV3TGliRmlsZUZvcm1hdDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuRVhURVJOQUxfTElCUkFSWV9fTElCX0ZJTEVfRk9STUFULCBvbGRMaWJGaWxlRm9ybWF0LCBsaWJGaWxlRm9ybWF0KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEludGVyZmFjZSBnZXRCYXNlX0ludGVyZmFjZSgpIHsKKwkJaWYgKGJhc2VfSW50ZXJmYWNlICE9IG51bGwgJiYgYmFzZV9JbnRlcmZhY2UuZUlzUHJveHkoKSkgeworCQkJSW50ZXJuYWxFT2JqZWN0IG9sZEJhc2VfSW50ZXJmYWNlID0gKEludGVybmFsRU9iamVjdCliYXNlX0ludGVyZmFjZTsKKwkJCWJhc2VfSW50ZXJmYWNlID0gKEludGVyZmFjZSllUmVzb2x2ZVByb3h5KG9sZEJhc2VfSW50ZXJmYWNlKTsKKwkJCWlmIChiYXNlX0ludGVyZmFjZSAhPSBvbGRCYXNlX0ludGVyZmFjZSkgeworCQkJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlJFU09MVkUsIFJvYm90TUxQYWNrYWdlLkVYVEVSTkFMX0xJQlJBUllfX0JBU0VfSU5URVJGQUNFLCBvbGRCYXNlX0ludGVyZmFjZSwgYmFzZV9JbnRlcmZhY2UpKTsKKwkJCX0KKwkJfQorCQlyZXR1cm4gYmFzZV9JbnRlcmZhY2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEludGVyZmFjZSBiYXNpY0dldEJhc2VfSW50ZXJmYWNlKCkgeworCQlyZXR1cm4gYmFzZV9JbnRlcmZhY2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0QmFzZV9JbnRlcmZhY2UoSW50ZXJmYWNlIG5ld0Jhc2VfSW50ZXJmYWNlKSB7CisJCUludGVyZmFjZSBvbGRCYXNlX0ludGVyZmFjZSA9IGJhc2VfSW50ZXJmYWNlOworCQliYXNlX0ludGVyZmFjZSA9IG5ld0Jhc2VfSW50ZXJmYWNlOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5FWFRFUk5BTF9MSUJSQVJZX19CQVNFX0lOVEVSRkFDRSwgb2xkQmFzZV9JbnRlcmZhY2UsIGJhc2VfSW50ZXJmYWNlKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5FWFRFUk5BTF9MSUJSQVJZX19MSUJfUEFUSDoKKwkJCQlyZXR1cm4gZ2V0TGliUGF0aCgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5FWFRFUk5BTF9MSUJSQVJZX19MSUJfRklMRV9GT1JNQVQ6CisJCQkJcmV0dXJuIGdldExpYkZpbGVGb3JtYXQoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuRVhURVJOQUxfTElCUkFSWV9fQkFTRV9JTlRFUkZBQ0U6CisJCQkJaWYgKHJlc29sdmUpIHJldHVybiBnZXRCYXNlX0ludGVyZmFjZSgpOworCQkJCXJldHVybiBiYXNpY0dldEJhc2VfSW50ZXJmYWNlKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuRVhURVJOQUxfTElCUkFSWV9fTElCX1BBVEg6CisJCQkJc2V0TGliUGF0aCgoU3RyaW5nKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkVYVEVSTkFMX0xJQlJBUllfX0xJQl9GSUxFX0ZPUk1BVDoKKwkJCQlzZXRMaWJGaWxlRm9ybWF0KChTdHJpbmcpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuRVhURVJOQUxfTElCUkFSWV9fQkFTRV9JTlRFUkZBQ0U6CisJCQkJc2V0QmFzZV9JbnRlcmZhY2UoKEludGVyZmFjZSluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuRVhURVJOQUxfTElCUkFSWV9fTElCX1BBVEg6CisJCQkJc2V0TGliUGF0aChMSUJfUEFUSF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5FWFRFUk5BTF9MSUJSQVJZX19MSUJfRklMRV9GT1JNQVQ6CisJCQkJc2V0TGliRmlsZUZvcm1hdChMSUJfRklMRV9GT1JNQVRfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuRVhURVJOQUxfTElCUkFSWV9fQkFTRV9JTlRFUkZBQ0U6CisJCQkJc2V0QmFzZV9JbnRlcmZhY2UoKEludGVyZmFjZSludWxsKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuRVhURVJOQUxfTElCUkFSWV9fTElCX1BBVEg6CisJCQkJcmV0dXJuIExJQl9QQVRIX0VERUZBVUxUID09IG51bGwgPyBsaWJQYXRoICE9IG51bGwgOiAhTElCX1BBVEhfRURFRkFVTFQuZXF1YWxzKGxpYlBhdGgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5FWFRFUk5BTF9MSUJSQVJZX19MSUJfRklMRV9GT1JNQVQ6CisJCQkJcmV0dXJuIExJQl9GSUxFX0ZPUk1BVF9FREVGQVVMVCA9PSBudWxsID8gbGliRmlsZUZvcm1hdCAhPSBudWxsIDogIUxJQl9GSUxFX0ZPUk1BVF9FREVGQVVMVC5lcXVhbHMobGliRmlsZUZvcm1hdCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkVYVEVSTkFMX0xJQlJBUllfX0JBU0VfSU5URVJGQUNFOgorCQkJCXJldHVybiBiYXNlX0ludGVyZmFjZSAhPSBudWxsOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAobGliUGF0aDogIik7CisJCXJlc3VsdC5hcHBlbmQobGliUGF0aCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgbGliRmlsZUZvcm1hdDogIik7CisJCXJlc3VsdC5hcHBlbmQobGliRmlsZUZvcm1hdCk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBFeHRlcm5hbExpYnJhcnlJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0Zsb29ySW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9GbG9vckltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMGE4NDdkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9GbG9vckltcGwuamF2YQpAQCAtMCwwICsxLDM4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkZsb29yOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkZsb29yPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgRmxvb3JJbXBsIGV4dGVuZHMgR3JvdW5kSW1wbCBpbXBsZW1lbnRzIEZsb29yIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRmxvb3JJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuRkxPT1I7CisJfQorCit9IC8vIEZsb29ySW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HUFNTeXN0ZW1JbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dQU1N5c3RlbUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xZDdhMzhmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HUFNTeXN0ZW1JbXBsLmphdmEKQEAgLTAsMCArMSwxNzIgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbkNoYWluOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuR1BTU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50MzI7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5HUFMgU3lzdGVtPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5HUFNTeXN0ZW1JbXBsI2dldE9yaWdpblBvc2l0aW9uIDxlbT5PcmlnaW4gUG9zaXRpb248L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBHUFNTeXN0ZW1JbXBsIGV4dGVuZHMgTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbCBpbXBsZW1lbnRzIEdQU1N5c3RlbSB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0T3JpZ2luUG9zaXRpb24oKSA8ZW0+T3JpZ2luIFBvc2l0aW9uPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRPcmlnaW5Qb3NpdGlvbigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFBvaW50MzIgb3JpZ2luUG9zaXRpb247CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgR1BTU3lzdGVtSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLkdQU19TWVNURU07CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFBvaW50MzIgZ2V0T3JpZ2luUG9zaXRpb24oKSB7CisJCXJldHVybiBvcmlnaW5Qb3NpdGlvbjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRPcmlnaW5Qb3NpdGlvbihQb2ludDMyIG5ld09yaWdpblBvc2l0aW9uLCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCVBvaW50MzIgb2xkT3JpZ2luUG9zaXRpb24gPSBvcmlnaW5Qb3NpdGlvbjsKKwkJb3JpZ2luUG9zaXRpb24gPSBuZXdPcmlnaW5Qb3NpdGlvbjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuR1BTX1NZU1RFTV9fT1JJR0lOX1BPU0lUSU9OLCBvbGRPcmlnaW5Qb3NpdGlvbiwgbmV3T3JpZ2luUG9zaXRpb24pOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldE9yaWdpblBvc2l0aW9uKFBvaW50MzIgbmV3T3JpZ2luUG9zaXRpb24pIHsKKwkJaWYgKG5ld09yaWdpblBvc2l0aW9uICE9IG9yaWdpblBvc2l0aW9uKSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChvcmlnaW5Qb3NpdGlvbiAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdClvcmlnaW5Qb3NpdGlvbikuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIFJvYm90TUxQYWNrYWdlLkdQU19TWVNURU1fX09SSUdJTl9QT1NJVElPTiwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3T3JpZ2luUG9zaXRpb24gIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3T3JpZ2luUG9zaXRpb24pLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBSb2JvdE1MUGFja2FnZS5HUFNfU1lTVEVNX19PUklHSU5fUE9TSVRJT04sIG51bGwsIG1zZ3MpOworCQkJbXNncyA9IGJhc2ljU2V0T3JpZ2luUG9zaXRpb24obmV3T3JpZ2luUG9zaXRpb24sIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuR1BTX1NZU1RFTV9fT1JJR0lOX1BPU0lUSU9OLCBuZXdPcmlnaW5Qb3NpdGlvbiwgbmV3T3JpZ2luUG9zaXRpb24pKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gZUludmVyc2VSZW1vdmUoSW50ZXJuYWxFT2JqZWN0IG90aGVyRW5kLCBpbnQgZmVhdHVyZUlELCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkdQU19TWVNURU1fX09SSUdJTl9QT1NJVElPTjoKKwkJCQlyZXR1cm4gYmFzaWNTZXRPcmlnaW5Qb3NpdGlvbihudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5HUFNfU1lTVEVNX19PUklHSU5fUE9TSVRJT046CisJCQkJcmV0dXJuIGdldE9yaWdpblBvc2l0aW9uKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuR1BTX1NZU1RFTV9fT1JJR0lOX1BPU0lUSU9OOgorCQkJCXNldE9yaWdpblBvc2l0aW9uKChQb2ludDMyKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5HUFNfU1lTVEVNX19PUklHSU5fUE9TSVRJT046CisJCQkJc2V0T3JpZ2luUG9zaXRpb24oKFBvaW50MzIpbnVsbCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkdQU19TWVNURU1fX09SSUdJTl9QT1NJVElPTjoKKwkJCQlyZXR1cm4gb3JpZ2luUG9zaXRpb24gIT0gbnVsbDsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCit9IC8vIEdQU1N5c3RlbUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR3Jhc3BpbmdIYXJkd2FyZUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR3Jhc3BpbmdIYXJkd2FyZUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lYWM2NTY1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HcmFzcGluZ0hhcmR3YXJlSW1wbC5qYXZhCkBAIC0wLDAgKzEsMzggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuR3Jhc3BpbmdIYXJkd2FyZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5HcmFzcGluZyBIYXJkd2FyZTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEdyYXNwaW5nSGFyZHdhcmVJbXBsIGV4dGVuZHMgQWN0dWF0b3JIYXJkd2FyZUltcGwgaW1wbGVtZW50cyBHcmFzcGluZ0hhcmR3YXJlIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgR3Jhc3BpbmdIYXJkd2FyZUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBSb2JvdE1MUGFja2FnZS5MaXRlcmFscy5HUkFTUElOR19IQVJEV0FSRTsKKwl9CisKK30gLy8gR3Jhc3BpbmdIYXJkd2FyZUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvR3Jhc3BpbmdTeXN0ZW1JbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dyYXNwaW5nU3lzdGVtSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg5NDg0YzQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dyYXNwaW5nU3lzdGVtSW1wbC5qYXZhCkBAIC0wLDAgKzEsMzggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuR3Jhc3BpbmdTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+R3Jhc3BpbmcgU3lzdGVtPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgR3Jhc3BpbmdTeXN0ZW1JbXBsIGV4dGVuZHMgQWN0dWF0b3JTeXN0ZW1JbXBsIGltcGxlbWVudHMgR3Jhc3BpbmdTeXN0ZW0geworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBHcmFzcGluZ1N5c3RlbUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBSb2JvdE1MUGFja2FnZS5MaXRlcmFscy5HUkFTUElOR19TWVNURU07CisJfQorCit9IC8vIEdyYXNwaW5nU3lzdGVtSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Hcm91bmRJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0dyb3VuZEltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wMmNjODY2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Hcm91bmRJbXBsLmphdmEKQEAgLTAsMCArMSwzOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Hcm91bmQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+R3JvdW5kPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgYWJzdHJhY3QgY2xhc3MgR3JvdW5kSW1wbCBleHRlbmRzIFN1cmZhY2VJbXBsIGltcGxlbWVudHMgR3JvdW5kIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgR3JvdW5kSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLkdST1VORDsKKwl9CisKK30gLy8gR3JvdW5kSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HeXJvc2NvcGVJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0d5cm9zY29wZUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mNmNmMjRkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9HeXJvc2NvcGVJbXBsLmphdmEKQEAgLTAsMCArMSwzOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5HeXJvc2NvcGU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+R3lyb3Njb3BlPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgR3lyb3Njb3BlSW1wbCBleHRlbmRzIFNlbnNvclN5c3RlbUltcGwgaW1wbGVtZW50cyBHeXJvc2NvcGUgeworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBHeXJvc2NvcGVJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuR1lST1NDT1BFOworCX0KKworfSAvLyBHeXJvc2NvcGVJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0hhcmR3YXJlSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IYXJkd2FyZUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42OTg5MThmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IYXJkd2FyZUltcGwuamF2YQpAQCAtMCwwICsxLDM4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkhhcmR3YXJlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkhhcmR3YXJlPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgSGFyZHdhcmVJbXBsIGV4dGVuZHMgU3lzdGVtSW1wbCBpbXBsZW1lbnRzIEhhcmR3YXJlIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgSGFyZHdhcmVJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuSEFSRFdBUkU7CisJfQorCit9IC8vIEhhcmR3YXJlSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9IdW1hbkltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSHVtYW5JbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODg4ZjdmOAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSHVtYW5JbXBsLmphdmEKQEAgLTAsMCArMSwzOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5IdW1hbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5IdW1hbjwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEh1bWFuSW1wbCBleHRlbmRzIEFnZW50SW1wbCBpbXBsZW1lbnRzIEh1bWFuIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgSHVtYW5JbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuSFVNQU47CisJfQorCit9IC8vIEh1bWFuSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9JbWFnZVNlbnNvclN5c3RlbUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTI1NTY0YwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsLmphdmEKQEAgLTAsMCArMSwzOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5JbWFnZVNlbnNvclN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5JbWFnZSBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsIGV4dGVuZHMgU2Vuc29yU3lzdGVtSW1wbCBpbXBsZW1lbnRzIEltYWdlU2Vuc29yU3lzdGVtIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuSU1BR0VfU0VOU09SX1NZU1RFTTsKKwl9CisKK30gLy8gSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0luZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9JbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40N2QyY2FkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9JbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbUltcGwuamF2YQpAQCAtMCwwICsxLDM4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkluZXJ0aWFsIE1lYXN1cmVtZW50IFVuaXQgU3lzdGVtPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW1JbXBsIGV4dGVuZHMgU2Vuc29yU3lzdGVtSW1wbCBpbXBsZW1lbnRzIEluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW1JbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuSU5FUlRJQUxfTUVBU1VSRU1FTlRfVU5JVF9TWVNURU07CisJfQorCit9IC8vIEluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9JbmVydGlhbE5hdmlnYXRpb25TeXN0ZW1JbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0luZXJ0aWFsTmF2aWdhdGlvblN5c3RlbUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMDQwYmIxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9JbmVydGlhbE5hdmlnYXRpb25TeXN0ZW1JbXBsLmphdmEKQEAgLTAsMCArMSwzOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5JbmVydGlhbE5hdmlnYXRpb25TeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SW5lcnRpYWwgTmF2aWdhdGlvbiBTeXN0ZW08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBJbmVydGlhbE5hdmlnYXRpb25TeXN0ZW1JbXBsIGV4dGVuZHMgR1BTU3lzdGVtSW1wbCBpbXBsZW1lbnRzIEluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbSB7CisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIEluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBSb2JvdE1MUGFja2FnZS5MaXRlcmFscy5JTkVSVElBTF9OQVZJR0FUSU9OX1NZU1RFTTsKKwl9CisKK30gLy8gSW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9JbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW1JbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0luZnJhUmVkUHJveGltZXRyeVN5c3RlbUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41NTJmMThhCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9JbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW1JbXBsLmphdmEKQEAgLTAsMCArMSwzOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5JbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SW5mcmEgUmVkIFByb3hpbWV0cnkgU3lzdGVtPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtSW1wbCBleHRlbmRzIE9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwgaW1wbGVtZW50cyBJbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW0geworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBJbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW1JbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuSU5GUkFfUkVEX1BST1hJTUVUUllfU1lTVEVNOworCX0KKworfSAvLyBJbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW1JbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0pvaW50SW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Kb2ludEltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41N2I1ZjA4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Kb2ludEltcGwuamF2YQpAQCAtMCwwICsxLDE1NCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSm9pbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkNvbm5lY3RvcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkpvaW50PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Kb2ludEltcGwjZ2V0QmFzZV9Db25uZWN0b3IgPGVtPkJhc2UgQ29ubmVjdG9yPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgSm9pbnRJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIEpvaW50IHsKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRCYXNlX0Nvbm5lY3RvcigpIDxlbT5CYXNlIENvbm5lY3RvcjwvZW0+fScgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0QmFzZV9Db25uZWN0b3IoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBDb25uZWN0b3IgYmFzZV9Db25uZWN0b3I7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgSm9pbnRJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuSk9JTlQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIENvbm5lY3RvciBnZXRCYXNlX0Nvbm5lY3RvcigpIHsKKwkJaWYgKGJhc2VfQ29ubmVjdG9yICE9IG51bGwgJiYgYmFzZV9Db25uZWN0b3IuZUlzUHJveHkoKSkgeworCQkJSW50ZXJuYWxFT2JqZWN0IG9sZEJhc2VfQ29ubmVjdG9yID0gKEludGVybmFsRU9iamVjdCliYXNlX0Nvbm5lY3RvcjsKKwkJCWJhc2VfQ29ubmVjdG9yID0gKENvbm5lY3RvcillUmVzb2x2ZVByb3h5KG9sZEJhc2VfQ29ubmVjdG9yKTsKKwkJCWlmIChiYXNlX0Nvbm5lY3RvciAhPSBvbGRCYXNlX0Nvbm5lY3RvcikgeworCQkJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlJFU09MVkUsIFJvYm90TUxQYWNrYWdlLkpPSU5UX19CQVNFX0NPTk5FQ1RPUiwgb2xkQmFzZV9Db25uZWN0b3IsIGJhc2VfQ29ubmVjdG9yKSk7CisJCQl9CisJCX0KKwkJcmV0dXJuIGJhc2VfQ29ubmVjdG9yOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBDb25uZWN0b3IgYmFzaWNHZXRCYXNlX0Nvbm5lY3RvcigpIHsKKwkJcmV0dXJuIGJhc2VfQ29ubmVjdG9yOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEJhc2VfQ29ubmVjdG9yKENvbm5lY3RvciBuZXdCYXNlX0Nvbm5lY3RvcikgeworCQlDb25uZWN0b3Igb2xkQmFzZV9Db25uZWN0b3IgPSBiYXNlX0Nvbm5lY3RvcjsKKwkJYmFzZV9Db25uZWN0b3IgPSBuZXdCYXNlX0Nvbm5lY3RvcjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuSk9JTlRfX0JBU0VfQ09OTkVDVE9SLCBvbGRCYXNlX0Nvbm5lY3RvciwgYmFzZV9Db25uZWN0b3IpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkpPSU5UX19CQVNFX0NPTk5FQ1RPUjoKKwkJCQlpZiAocmVzb2x2ZSkgcmV0dXJuIGdldEJhc2VfQ29ubmVjdG9yKCk7CisJCQkJcmV0dXJuIGJhc2ljR2V0QmFzZV9Db25uZWN0b3IoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5KT0lOVF9fQkFTRV9DT05ORUNUT1I6CisJCQkJc2V0QmFzZV9Db25uZWN0b3IoKENvbm5lY3RvciluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuSk9JTlRfX0JBU0VfQ09OTkVDVE9SOgorCQkJCXNldEJhc2VfQ29ubmVjdG9yKChDb25uZWN0b3IpbnVsbCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkpPSU5UX19CQVNFX0NPTk5FQ1RPUjoKKwkJCQlyZXR1cm4gYmFzZV9Db25uZWN0b3IgIT0gbnVsbDsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCit9IC8vIEpvaW50SW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Kb3lzdGljTmF2aWdhdGlvblN5c3RlbUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSm95c3RpY05hdmlnYXRpb25TeXN0ZW1JbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDhlMmEyYQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvSm95c3RpY05hdmlnYXRpb25TeXN0ZW1JbXBsLmphdmEKQEAgLTAsMCArMSwzOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Kb3lzdGljTmF2aWdhdGlvblN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Kb3lzdGljIE5hdmlnYXRpb24gU3lzdGVtPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgSm95c3RpY05hdmlnYXRpb25TeXN0ZW1JbXBsIGV4dGVuZHMgTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW1JbXBsIGltcGxlbWVudHMgSm95c3RpY05hdmlnYXRpb25TeXN0ZW0geworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBKb3lzdGljTmF2aWdhdGlvblN5c3RlbUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBSb2JvdE1MUGFja2FnZS5MaXRlcmFscy5KT1lTVElDX05BVklHQVRJT05fU1lTVEVNOworCX0KKworfSAvLyBKb3lzdGljTmF2aWdhdGlvblN5c3RlbUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGFuZFN1cmZhY2VJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xhbmRTdXJmYWNlSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjMwNDE2MDgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xhbmRTdXJmYWNlSW1wbC5qYXZhCkBAIC0wLDAgKzEsMzggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGFuZFN1cmZhY2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TGFuZCBTdXJmYWNlPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgTGFuZFN1cmZhY2VJbXBsIGV4dGVuZHMgR3JvdW5kSW1wbCBpbXBsZW1lbnRzIExhbmRTdXJmYWNlIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgTGFuZFN1cmZhY2VJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuTEFORF9TVVJGQUNFOworCX0KKworfSAvLyBMYW5kU3VyZmFjZUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGVnSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MZWdJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTYzZTBjZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTGVnSW1wbC5qYXZhCkBAIC0wLDAgKzEsMzggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGVnOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkxlZzwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIExlZ0ltcGwgZXh0ZW5kcyBMb2NvbW90aW9uSGFyZHdhcmVJbXBsIGltcGxlbWVudHMgTGVnIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgTGVnSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLkxFRzsKKwl9CisKK30gLy8gTGVnSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MZWdTeXN0ZW1JbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xlZ1N5c3RlbUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hYWM1NzQ0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MZWdTeXN0ZW1JbXBsLmphdmEKQEAgLTAsMCArMSwzOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MZWdTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TGVnIFN5c3RlbTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIExlZ1N5c3RlbUltcGwgZXh0ZW5kcyBMb2NvbW90aW9uU3lzdGVtSW1wbCBpbXBsZW1lbnRzIExlZ1N5c3RlbSB7CisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIExlZ1N5c3RlbUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBSb2JvdE1MUGFja2FnZS5MaXRlcmFscy5MRUdfU1lTVEVNOworCX0KKworfSAvLyBMZWdTeXN0ZW1JbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xpZGFyU3lzdGVtSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kMDZkODZlCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9MaWRhclN5c3RlbUltcGwuamF2YQpAQCAtMCwwICsxLDc1MyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TGlkYXIgU3lzdGVtPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5MaWRhclN5c3RlbUltcGwjZ2V0TmJMYXllcnMgPGVtPk5iIExheWVyczwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTGlkYXJTeXN0ZW1JbXBsI2dldExheWVyQW5nbGVNaW4gPGVtPkxheWVyIEFuZ2xlIE1pbjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTGlkYXJTeXN0ZW1JbXBsI2dldExheWVyQW5nbGVTdGVwIDxlbT5MYXllciBBbmdsZSBTdGVwPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5MaWRhclN5c3RlbUltcGwjZ2V0Tm9pc2UgPGVtPk5vaXNlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5MaWRhclN5c3RlbUltcGwjZ2V0U2lnbWFOb2lzZSA8ZW0+U2lnbWEgTm9pc2U8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkxpZGFyU3lzdGVtSW1wbCNnZXRBbmdsZV9taW4gPGVtPkFuZ2xlIG1pbjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTGlkYXJTeXN0ZW1JbXBsI2dldEFuZ2xlX21heCA8ZW0+QW5nbGUgbWF4PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5MaWRhclN5c3RlbUltcGwjZ2V0VGltZV9pbmNyZW1lbnQgPGVtPlRpbWUgaW5jcmVtZW50PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5MaWRhclN5c3RlbUltcGwjZ2V0U2Nhbl90aW1lIDxlbT5TY2FuIHRpbWU8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLkxpZGFyU3lzdGVtSW1wbCNnZXRSYW5nZV9taW4gPGVtPlJhbmdlIG1pbjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuTGlkYXJTeXN0ZW1JbXBsI2dldFJhbmdlX21heCA8ZW0+UmFuZ2UgbWF4PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5MaWRhclN5c3RlbUltcGwjZ2V0TmJSYXlzIDxlbT5OYiBSYXlzPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgTGlkYXJTeXN0ZW1JbXBsIGV4dGVuZHMgT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbCBpbXBsZW1lbnRzIExpZGFyU3lzdGVtIHsKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TmJMYXllcnMoKSA8ZW0+TmIgTGF5ZXJzPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXROYkxheWVycygpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgTkJfTEFZRVJTX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldE5iTGF5ZXJzKCkgPGVtPk5iIExheWVyczwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0TmJMYXllcnMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgbmJMYXllcnMgPSBOQl9MQVlFUlNfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TGF5ZXJBbmdsZU1pbigpIDxlbT5MYXllciBBbmdsZSBNaW48L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExheWVyQW5nbGVNaW4oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IExBWUVSX0FOR0xFX01JTl9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRMYXllckFuZ2xlTWluKCkgPGVtPkxheWVyIEFuZ2xlIE1pbjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0TGF5ZXJBbmdsZU1pbigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBsYXllckFuZ2xlTWluID0gTEFZRVJfQU5HTEVfTUlOX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExheWVyQW5nbGVTdGVwKCkgPGVtPkxheWVyIEFuZ2xlIFN0ZXA8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExheWVyQW5nbGVTdGVwKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBMQVlFUl9BTkdMRV9TVEVQX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExheWVyQW5nbGVTdGVwKCkgPGVtPkxheWVyIEFuZ2xlIFN0ZXA8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExheWVyQW5nbGVTdGVwKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IGxheWVyQW5nbGVTdGVwID0gTEFZRVJfQU5HTEVfU1RFUF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXROb2lzZSgpIDxlbT5Ob2lzZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0Tm9pc2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IE5PSVNFX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldE5vaXNlKCkgPGVtPk5vaXNlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXROb2lzZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBub2lzZSA9IE5PSVNFX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFNpZ21hTm9pc2UoKSA8ZW0+U2lnbWEgTm9pc2U8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFNpZ21hTm9pc2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFNJR01BX05PSVNFX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFNpZ21hTm9pc2UoKSA8ZW0+U2lnbWEgTm9pc2U8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFNpZ21hTm9pc2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3Qgc2lnbWFOb2lzZSA9IFNJR01BX05PSVNFX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEFuZ2xlX21pbigpIDxlbT5BbmdsZSBtaW48L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEFuZ2xlX21pbigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgQU5HTEVfTUlOX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEFuZ2xlX21pbigpIDxlbT5BbmdsZSBtaW48L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEFuZ2xlX21pbigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBhbmdsZV9taW4gPSBBTkdMRV9NSU5fRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0QW5nbGVfbWF4KCkgPGVtPkFuZ2xlIG1heDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0QW5nbGVfbWF4KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBBTkdMRV9NQVhfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0QW5nbGVfbWF4KCkgPGVtPkFuZ2xlIG1heDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0QW5nbGVfbWF4KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IGFuZ2xlX21heCA9IEFOR0xFX01BWF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRUaW1lX2luY3JlbWVudCgpIDxlbT5UaW1lIGluY3JlbWVudDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VGltZV9pbmNyZW1lbnQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFRJTUVfSU5DUkVNRU5UX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFRpbWVfaW5jcmVtZW50KCkgPGVtPlRpbWUgaW5jcmVtZW50PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRUaW1lX2luY3JlbWVudCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCB0aW1lX2luY3JlbWVudCA9IFRJTUVfSU5DUkVNRU5UX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFNjYW5fdGltZSgpIDxlbT5TY2FuIHRpbWU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFNjYW5fdGltZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgU0NBTl9USU1FX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFNjYW5fdGltZSgpIDxlbT5TY2FuIHRpbWU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFNjYW5fdGltZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBzY2FuX3RpbWUgPSBTQ0FOX1RJTUVfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0UmFuZ2VfbWluKCkgPGVtPlJhbmdlIG1pbjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UmFuZ2VfbWluKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBSQU5HRV9NSU5fRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0UmFuZ2VfbWluKCkgPGVtPlJhbmdlIG1pbjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UmFuZ2VfbWluKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHJhbmdlX21pbiA9IFJBTkdFX01JTl9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRSYW5nZV9tYXgoKSA8ZW0+UmFuZ2UgbWF4PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRSYW5nZV9tYXgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFJBTkdFX01BWF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRSYW5nZV9tYXgoKSA8ZW0+UmFuZ2UgbWF4PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRSYW5nZV9tYXgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgcmFuZ2VfbWF4ID0gUkFOR0VfTUFYX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldE5iUmF5cygpIDxlbT5OYiBSYXlzPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXROYlJheXMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IE5CX1JBWVNfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TmJSYXlzKCkgPGVtPk5iIFJheXM8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldE5iUmF5cygpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBuYlJheXMgPSBOQl9SQVlTX0VERUZBVUxUOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIExpZGFyU3lzdGVtSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLkxJREFSX1NZU1RFTTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldE5iTGF5ZXJzKCkgeworCQlyZXR1cm4gbmJMYXllcnM7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0TmJMYXllcnMoT2JqZWN0IG5ld05iTGF5ZXJzKSB7CisJCU9iamVjdCBvbGROYkxheWVycyA9IG5iTGF5ZXJzOworCQluYkxheWVycyA9IG5ld05iTGF5ZXJzOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX05CX0xBWUVSUywgb2xkTmJMYXllcnMsIG5iTGF5ZXJzKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRMYXllckFuZ2xlTWluKCkgeworCQlyZXR1cm4gbGF5ZXJBbmdsZU1pbjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRMYXllckFuZ2xlTWluKE9iamVjdCBuZXdMYXllckFuZ2xlTWluKSB7CisJCU9iamVjdCBvbGRMYXllckFuZ2xlTWluID0gbGF5ZXJBbmdsZU1pbjsKKwkJbGF5ZXJBbmdsZU1pbiA9IG5ld0xheWVyQW5nbGVNaW47CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fTEFZRVJfQU5HTEVfTUlOLCBvbGRMYXllckFuZ2xlTWluLCBsYXllckFuZ2xlTWluKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRMYXllckFuZ2xlU3RlcCgpIHsKKwkJcmV0dXJuIGxheWVyQW5nbGVTdGVwOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldExheWVyQW5nbGVTdGVwKE9iamVjdCBuZXdMYXllckFuZ2xlU3RlcCkgeworCQlPYmplY3Qgb2xkTGF5ZXJBbmdsZVN0ZXAgPSBsYXllckFuZ2xlU3RlcDsKKwkJbGF5ZXJBbmdsZVN0ZXAgPSBuZXdMYXllckFuZ2xlU3RlcDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuTElEQVJfU1lTVEVNX19MQVlFUl9BTkdMRV9TVEVQLCBvbGRMYXllckFuZ2xlU3RlcCwgbGF5ZXJBbmdsZVN0ZXApKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldE5vaXNlKCkgeworCQlyZXR1cm4gbm9pc2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0Tm9pc2UoT2JqZWN0IG5ld05vaXNlKSB7CisJCU9iamVjdCBvbGROb2lzZSA9IG5vaXNlOworCQlub2lzZSA9IG5ld05vaXNlOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX05PSVNFLCBvbGROb2lzZSwgbm9pc2UpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFNpZ21hTm9pc2UoKSB7CisJCXJldHVybiBzaWdtYU5vaXNlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFNpZ21hTm9pc2UoT2JqZWN0IG5ld1NpZ21hTm9pc2UpIHsKKwkJT2JqZWN0IG9sZFNpZ21hTm9pc2UgPSBzaWdtYU5vaXNlOworCQlzaWdtYU5vaXNlID0gbmV3U2lnbWFOb2lzZTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuTElEQVJfU1lTVEVNX19TSUdNQV9OT0lTRSwgb2xkU2lnbWFOb2lzZSwgc2lnbWFOb2lzZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0QW5nbGVfbWluKCkgeworCQlyZXR1cm4gYW5nbGVfbWluOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEFuZ2xlX21pbihPYmplY3QgbmV3QW5nbGVfbWluKSB7CisJCU9iamVjdCBvbGRBbmdsZV9taW4gPSBhbmdsZV9taW47CisJCWFuZ2xlX21pbiA9IG5ld0FuZ2xlX21pbjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuTElEQVJfU1lTVEVNX19BTkdMRV9NSU4sIG9sZEFuZ2xlX21pbiwgYW5nbGVfbWluKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRBbmdsZV9tYXgoKSB7CisJCXJldHVybiBhbmdsZV9tYXg7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0QW5nbGVfbWF4KE9iamVjdCBuZXdBbmdsZV9tYXgpIHsKKwkJT2JqZWN0IG9sZEFuZ2xlX21heCA9IGFuZ2xlX21heDsKKwkJYW5nbGVfbWF4ID0gbmV3QW5nbGVfbWF4OworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX0FOR0xFX01BWCwgb2xkQW5nbGVfbWF4LCBhbmdsZV9tYXgpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFRpbWVfaW5jcmVtZW50KCkgeworCQlyZXR1cm4gdGltZV9pbmNyZW1lbnQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0VGltZV9pbmNyZW1lbnQoT2JqZWN0IG5ld1RpbWVfaW5jcmVtZW50KSB7CisJCU9iamVjdCBvbGRUaW1lX2luY3JlbWVudCA9IHRpbWVfaW5jcmVtZW50OworCQl0aW1lX2luY3JlbWVudCA9IG5ld1RpbWVfaW5jcmVtZW50OworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX1RJTUVfSU5DUkVNRU5ULCBvbGRUaW1lX2luY3JlbWVudCwgdGltZV9pbmNyZW1lbnQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFNjYW5fdGltZSgpIHsKKwkJcmV0dXJuIHNjYW5fdGltZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRTY2FuX3RpbWUoT2JqZWN0IG5ld1NjYW5fdGltZSkgeworCQlPYmplY3Qgb2xkU2Nhbl90aW1lID0gc2Nhbl90aW1lOworCQlzY2FuX3RpbWUgPSBuZXdTY2FuX3RpbWU7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fU0NBTl9USU1FLCBvbGRTY2FuX3RpbWUsIHNjYW5fdGltZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0UmFuZ2VfbWluKCkgeworCQlyZXR1cm4gcmFuZ2VfbWluOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFJhbmdlX21pbihPYmplY3QgbmV3UmFuZ2VfbWluKSB7CisJCU9iamVjdCBvbGRSYW5nZV9taW4gPSByYW5nZV9taW47CisJCXJhbmdlX21pbiA9IG5ld1JhbmdlX21pbjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuTElEQVJfU1lTVEVNX19SQU5HRV9NSU4sIG9sZFJhbmdlX21pbiwgcmFuZ2VfbWluKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRSYW5nZV9tYXgoKSB7CisJCXJldHVybiByYW5nZV9tYXg7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0UmFuZ2VfbWF4KE9iamVjdCBuZXdSYW5nZV9tYXgpIHsKKwkJT2JqZWN0IG9sZFJhbmdlX21heCA9IHJhbmdlX21heDsKKwkJcmFuZ2VfbWF4ID0gbmV3UmFuZ2VfbWF4OworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX1JBTkdFX01BWCwgb2xkUmFuZ2VfbWF4LCByYW5nZV9tYXgpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldE5iUmF5cygpIHsKKwkJcmV0dXJuIG5iUmF5czsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXROYlJheXMoT2JqZWN0IG5ld05iUmF5cykgeworCQlPYmplY3Qgb2xkTmJSYXlzID0gbmJSYXlzOworCQluYlJheXMgPSBuZXdOYlJheXM7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fTkJfUkFZUywgb2xkTmJSYXlzLCBuYlJheXMpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fTkJfTEFZRVJTOgorCQkJCXJldHVybiBnZXROYkxheWVycygpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX0xBWUVSX0FOR0xFX01JTjoKKwkJCQlyZXR1cm4gZ2V0TGF5ZXJBbmdsZU1pbigpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX0xBWUVSX0FOR0xFX1NURVA6CisJCQkJcmV0dXJuIGdldExheWVyQW5nbGVTdGVwKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fTk9JU0U6CisJCQkJcmV0dXJuIGdldE5vaXNlKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fU0lHTUFfTk9JU0U6CisJCQkJcmV0dXJuIGdldFNpZ21hTm9pc2UoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuTElEQVJfU1lTVEVNX19BTkdMRV9NSU46CisJCQkJcmV0dXJuIGdldEFuZ2xlX21pbigpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX0FOR0xFX01BWDoKKwkJCQlyZXR1cm4gZ2V0QW5nbGVfbWF4KCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fVElNRV9JTkNSRU1FTlQ6CisJCQkJcmV0dXJuIGdldFRpbWVfaW5jcmVtZW50KCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fU0NBTl9USU1FOgorCQkJCXJldHVybiBnZXRTY2FuX3RpbWUoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuTElEQVJfU1lTVEVNX19SQU5HRV9NSU46CisJCQkJcmV0dXJuIGdldFJhbmdlX21pbigpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX1JBTkdFX01BWDoKKwkJCQlyZXR1cm4gZ2V0UmFuZ2VfbWF4KCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fTkJfUkFZUzoKKwkJCQlyZXR1cm4gZ2V0TmJSYXlzKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuTElEQVJfU1lTVEVNX19OQl9MQVlFUlM6CisJCQkJc2V0TmJMYXllcnMoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX0xBWUVSX0FOR0xFX01JTjoKKwkJCQlzZXRMYXllckFuZ2xlTWluKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuTElEQVJfU1lTVEVNX19MQVlFUl9BTkdMRV9TVEVQOgorCQkJCXNldExheWVyQW5nbGVTdGVwKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuTElEQVJfU1lTVEVNX19OT0lTRToKKwkJCQlzZXROb2lzZSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fU0lHTUFfTk9JU0U6CisJCQkJc2V0U2lnbWFOb2lzZSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fQU5HTEVfTUlOOgorCQkJCXNldEFuZ2xlX21pbigoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fQU5HTEVfTUFYOgorCQkJCXNldEFuZ2xlX21heCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fVElNRV9JTkNSRU1FTlQ6CisJCQkJc2V0VGltZV9pbmNyZW1lbnQoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX1NDQU5fVElNRToKKwkJCQlzZXRTY2FuX3RpbWUoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX1JBTkdFX01JTjoKKwkJCQlzZXRSYW5nZV9taW4oKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX1JBTkdFX01BWDoKKwkJCQlzZXRSYW5nZV9tYXgoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX05CX1JBWVM6CisJCQkJc2V0TmJSYXlzKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fTkJfTEFZRVJTOgorCQkJCXNldE5iTGF5ZXJzKE5CX0xBWUVSU19FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX0xBWUVSX0FOR0xFX01JTjoKKwkJCQlzZXRMYXllckFuZ2xlTWluKExBWUVSX0FOR0xFX01JTl9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX0xBWUVSX0FOR0xFX1NURVA6CisJCQkJc2V0TGF5ZXJBbmdsZVN0ZXAoTEFZRVJfQU5HTEVfU1RFUF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX05PSVNFOgorCQkJCXNldE5vaXNlKE5PSVNFX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fU0lHTUFfTk9JU0U6CisJCQkJc2V0U2lnbWFOb2lzZShTSUdNQV9OT0lTRV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX0FOR0xFX01JTjoKKwkJCQlzZXRBbmdsZV9taW4oQU5HTEVfTUlOX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fQU5HTEVfTUFYOgorCQkJCXNldEFuZ2xlX21heChBTkdMRV9NQVhfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuTElEQVJfU1lTVEVNX19USU1FX0lOQ1JFTUVOVDoKKwkJCQlzZXRUaW1lX2luY3JlbWVudChUSU1FX0lOQ1JFTUVOVF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX1NDQU5fVElNRToKKwkJCQlzZXRTY2FuX3RpbWUoU0NBTl9USU1FX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fUkFOR0VfTUlOOgorCQkJCXNldFJhbmdlX21pbihSQU5HRV9NSU5fRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuTElEQVJfU1lTVEVNX19SQU5HRV9NQVg6CisJCQkJc2V0UmFuZ2VfbWF4KFJBTkdFX01BWF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX05CX1JBWVM6CisJCQkJc2V0TmJSYXlzKE5CX1JBWVNfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX05CX0xBWUVSUzoKKwkJCQlyZXR1cm4gTkJfTEFZRVJTX0VERUZBVUxUID09IG51bGwgPyBuYkxheWVycyAhPSBudWxsIDogIU5CX0xBWUVSU19FREVGQVVMVC5lcXVhbHMobmJMYXllcnMpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX0xBWUVSX0FOR0xFX01JTjoKKwkJCQlyZXR1cm4gTEFZRVJfQU5HTEVfTUlOX0VERUZBVUxUID09IG51bGwgPyBsYXllckFuZ2xlTWluICE9IG51bGwgOiAhTEFZRVJfQU5HTEVfTUlOX0VERUZBVUxULmVxdWFscyhsYXllckFuZ2xlTWluKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuTElEQVJfU1lTVEVNX19MQVlFUl9BTkdMRV9TVEVQOgorCQkJCXJldHVybiBMQVlFUl9BTkdMRV9TVEVQX0VERUZBVUxUID09IG51bGwgPyBsYXllckFuZ2xlU3RlcCAhPSBudWxsIDogIUxBWUVSX0FOR0xFX1NURVBfRURFRkFVTFQuZXF1YWxzKGxheWVyQW5nbGVTdGVwKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuTElEQVJfU1lTVEVNX19OT0lTRToKKwkJCQlyZXR1cm4gTk9JU0VfRURFRkFVTFQgPT0gbnVsbCA/IG5vaXNlICE9IG51bGwgOiAhTk9JU0VfRURFRkFVTFQuZXF1YWxzKG5vaXNlKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuTElEQVJfU1lTVEVNX19TSUdNQV9OT0lTRToKKwkJCQlyZXR1cm4gU0lHTUFfTk9JU0VfRURFRkFVTFQgPT0gbnVsbCA/IHNpZ21hTm9pc2UgIT0gbnVsbCA6ICFTSUdNQV9OT0lTRV9FREVGQVVMVC5lcXVhbHMoc2lnbWFOb2lzZSk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fQU5HTEVfTUlOOgorCQkJCXJldHVybiBBTkdMRV9NSU5fRURFRkFVTFQgPT0gbnVsbCA/IGFuZ2xlX21pbiAhPSBudWxsIDogIUFOR0xFX01JTl9FREVGQVVMVC5lcXVhbHMoYW5nbGVfbWluKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuTElEQVJfU1lTVEVNX19BTkdMRV9NQVg6CisJCQkJcmV0dXJuIEFOR0xFX01BWF9FREVGQVVMVCA9PSBudWxsID8gYW5nbGVfbWF4ICE9IG51bGwgOiAhQU5HTEVfTUFYX0VERUZBVUxULmVxdWFscyhhbmdsZV9tYXgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX1RJTUVfSU5DUkVNRU5UOgorCQkJCXJldHVybiBUSU1FX0lOQ1JFTUVOVF9FREVGQVVMVCA9PSBudWxsID8gdGltZV9pbmNyZW1lbnQgIT0gbnVsbCA6ICFUSU1FX0lOQ1JFTUVOVF9FREVGQVVMVC5lcXVhbHModGltZV9pbmNyZW1lbnQpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX1NDQU5fVElNRToKKwkJCQlyZXR1cm4gU0NBTl9USU1FX0VERUZBVUxUID09IG51bGwgPyBzY2FuX3RpbWUgIT0gbnVsbCA6ICFTQ0FOX1RJTUVfRURFRkFVTFQuZXF1YWxzKHNjYW5fdGltZSk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkxJREFSX1NZU1RFTV9fUkFOR0VfTUlOOgorCQkJCXJldHVybiBSQU5HRV9NSU5fRURFRkFVTFQgPT0gbnVsbCA/IHJhbmdlX21pbiAhPSBudWxsIDogIVJBTkdFX01JTl9FREVGQVVMVC5lcXVhbHMocmFuZ2VfbWluKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuTElEQVJfU1lTVEVNX19SQU5HRV9NQVg6CisJCQkJcmV0dXJuIFJBTkdFX01BWF9FREVGQVVMVCA9PSBudWxsID8gcmFuZ2VfbWF4ICE9IG51bGwgOiAhUkFOR0VfTUFYX0VERUZBVUxULmVxdWFscyhyYW5nZV9tYXgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU1fX05CX1JBWVM6CisJCQkJcmV0dXJuIE5CX1JBWVNfRURFRkFVTFQgPT0gbnVsbCA/IG5iUmF5cyAhPSBudWxsIDogIU5CX1JBWVNfRURFRkFVTFQuZXF1YWxzKG5iUmF5cyk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CisJCWlmIChlSXNQcm94eSgpKSByZXR1cm4gc3VwZXIudG9TdHJpbmcoKTsKKworCQlTdHJpbmdCdWZmZXIgcmVzdWx0ID0gbmV3IFN0cmluZ0J1ZmZlcihzdXBlci50b1N0cmluZygpKTsKKwkJcmVzdWx0LmFwcGVuZCgiIChuYkxheWVyczogIik7CisJCXJlc3VsdC5hcHBlbmQobmJMYXllcnMpOworCQlyZXN1bHQuYXBwZW5kKCIsIGxheWVyQW5nbGVNaW46ICIpOworCQlyZXN1bHQuYXBwZW5kKGxheWVyQW5nbGVNaW4pOworCQlyZXN1bHQuYXBwZW5kKCIsIGxheWVyQW5nbGVTdGVwOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChsYXllckFuZ2xlU3RlcCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgbm9pc2U6ICIpOworCQlyZXN1bHQuYXBwZW5kKG5vaXNlKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBzaWdtYU5vaXNlOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChzaWdtYU5vaXNlKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBhbmdsZV9taW46ICIpOworCQlyZXN1bHQuYXBwZW5kKGFuZ2xlX21pbik7CisJCXJlc3VsdC5hcHBlbmQoIiwgYW5nbGVfbWF4OiAiKTsKKwkJcmVzdWx0LmFwcGVuZChhbmdsZV9tYXgpOworCQlyZXN1bHQuYXBwZW5kKCIsIHRpbWVfaW5jcmVtZW50OiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh0aW1lX2luY3JlbWVudCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgc2Nhbl90aW1lOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChzY2FuX3RpbWUpOworCQlyZXN1bHQuYXBwZW5kKCIsIHJhbmdlX21pbjogIik7CisJCXJlc3VsdC5hcHBlbmQocmFuZ2VfbWluKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCByYW5nZV9tYXg6ICIpOworCQlyZXN1bHQuYXBwZW5kKHJhbmdlX21heCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgbmJSYXlzOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChuYlJheXMpOworCQlyZXN1bHQuYXBwZW5kKCcpJyk7CisJCXJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKKwl9CisKK30gLy8gTGlkYXJTeXN0ZW1JbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZlMzllMjgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGwuamF2YQpAQCAtMCwwICsxLDM4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Mb2NhbGl6YXRpb24gU2Vuc29yIFN5c3RlbTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIExvY2FsaXphdGlvblNlbnNvclN5c3RlbUltcGwgZXh0ZW5kcyBTZW5zb3JTeXN0ZW1JbXBsIGltcGxlbWVudHMgTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLkxPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNOworCX0KKworfSAvLyBMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xvY29tb3Rpb25IYXJkd2FyZUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTG9jb21vdGlvbkhhcmR3YXJlSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJkYjQwYzkKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL0xvY29tb3Rpb25IYXJkd2FyZUltcGwuamF2YQpAQCAtMCwwICsxLDM4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxvY29tb3Rpb25IYXJkd2FyZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Mb2NvbW90aW9uIEhhcmR3YXJlPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgTG9jb21vdGlvbkhhcmR3YXJlSW1wbCBleHRlbmRzIEFjdHVhdG9ySGFyZHdhcmVJbXBsIGltcGxlbWVudHMgTG9jb21vdGlvbkhhcmR3YXJlIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgTG9jb21vdGlvbkhhcmR3YXJlSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLkxPQ09NT1RJT05fSEFSRFdBUkU7CisJfQorCit9IC8vIExvY29tb3Rpb25IYXJkd2FyZUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTG9jb21vdGlvblN5c3RlbUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTG9jb21vdGlvblN5c3RlbUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45ZGMwOTY0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Mb2NvbW90aW9uU3lzdGVtSW1wbC5qYXZhCkBAIC0wLDAgKzEsMzggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTG9jb21vdGlvblN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Mb2NvbW90aW9uIFN5c3RlbTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIExvY29tb3Rpb25TeXN0ZW1JbXBsIGV4dGVuZHMgQWN0dWF0b3JTeXN0ZW1JbXBsIGltcGxlbWVudHMgTG9jb21vdGlvblN5c3RlbSB7CisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIExvY29tb3Rpb25TeXN0ZW1JbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuTE9DT01PVElPTl9TWVNURU07CisJfQorCit9IC8vIExvY29tb3Rpb25TeXN0ZW1JbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL01hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW1JbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL01hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW1JbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWMxMjRjZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTWFuTWFjaGluZUludGVyZmFjZVN5c3RlbUltcGwuamF2YQpAQCAtMCwwICsxLDM4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TWFuIE1hY2hpbmUgSW50ZXJmYWNlIFN5c3RlbTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIE1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW1JbXBsIGV4dGVuZHMgQ3liZXJQaHlzaWNhbFN5c3RlbUltcGwgaW1wbGVtZW50cyBNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgTWFuTWFjaGluZUludGVyZmFjZVN5c3RlbUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBSb2JvdE1MUGFja2FnZS5MaXRlcmFscy5NQU5fTUFDSElORV9JTlRFUkZBQ0VfU1lTVEVNOworCX0KKworfSAvLyBNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9NYW5pcHVsYXRvckltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTWFuaXB1bGF0b3JJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTA4NmRiOAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTWFuaXB1bGF0b3JJbXBsLmphdmEKQEAgLTAsMCArMSwzOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5NYW5pcHVsYXRvcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5NYW5pcHVsYXRvcjwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIE1hbmlwdWxhdG9ySW1wbCBleHRlbmRzIFJvYm90SW1wbCBpbXBsZW1lbnRzIE1hbmlwdWxhdG9yIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgTWFuaXB1bGF0b3JJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuTUFOSVBVTEFUT1I7CisJfQorCit9IC8vIE1hbmlwdWxhdG9ySW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9NZWNoYW5pY2FsTGlua2FnZUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTWVjaGFuaWNhbExpbmthZ2VJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjg0OTNlNQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTWVjaGFuaWNhbExpbmthZ2VJbXBsLmphdmEKQEAgLTAsMCArMSwzOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5NZWNoYW5pY2FsTGlua2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5NZWNoYW5pY2FsIExpbmthZ2U8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBNZWNoYW5pY2FsTGlua2FnZUltcGwgZXh0ZW5kcyBIYXJkd2FyZUltcGwgaW1wbGVtZW50cyBNZWNoYW5pY2FsTGlua2FnZSB7CisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIE1lY2hhbmljYWxMaW5rYWdlSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLk1FQ0hBTklDQUxfTElOS0FHRTsKKwl9CisKK30gLy8gTWVjaGFuaWNhbExpbmthZ2VJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL01vYmlsZVJvYm90SW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Nb2JpbGVSb2JvdEltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MmExZDBmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Nb2JpbGVSb2JvdEltcGwuamF2YQpAQCAtMCwwICsxLDE2MCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTW9iaWxlUm9ib3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk1vYmlsZVJvYm90S2luZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Nb2JpbGUgUm9ib3Q8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk1vYmlsZVJvYm90SW1wbCNnZXRLaW5kIDxlbT5LaW5kPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgTW9iaWxlUm9ib3RJbXBsIGV4dGVuZHMgUm9ib3RJbXBsIGltcGxlbWVudHMgTW9iaWxlUm9ib3QgeworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRLaW5kKCkgPGVtPktpbmQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEtpbmQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgTW9iaWxlUm9ib3RLaW5kIEtJTkRfRURFRkFVTFQgPSBNb2JpbGVSb2JvdEtpbmQuQUlSX1ZFSElDTEU7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRLaW5kKCkgPGVtPktpbmQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEtpbmQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBNb2JpbGVSb2JvdEtpbmQga2luZCA9IEtJTkRfRURFRkFVTFQ7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgTW9iaWxlUm9ib3RJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuTU9CSUxFX1JPQk9UOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBNb2JpbGVSb2JvdEtpbmQgZ2V0S2luZCgpIHsKKwkJcmV0dXJuIGtpbmQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0S2luZChNb2JpbGVSb2JvdEtpbmQgbmV3S2luZCkgeworCQlNb2JpbGVSb2JvdEtpbmQgb2xkS2luZCA9IGtpbmQ7CisJCWtpbmQgPSBuZXdLaW5kID09IG51bGwgPyBLSU5EX0VERUZBVUxUIDogbmV3S2luZDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuTU9CSUxFX1JPQk9UX19LSU5ELCBvbGRLaW5kLCBraW5kKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5NT0JJTEVfUk9CT1RfX0tJTkQ6CisJCQkJcmV0dXJuIGdldEtpbmQoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5NT0JJTEVfUk9CT1RfX0tJTkQ6CisJCQkJc2V0S2luZCgoTW9iaWxlUm9ib3RLaW5kKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5NT0JJTEVfUk9CT1RfX0tJTkQ6CisJCQkJc2V0S2luZChLSU5EX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuTU9CSUxFX1JPQk9UX19LSU5EOgorCQkJCXJldHVybiBraW5kICE9IEtJTkRfRURFRkFVTFQ7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CisJCWlmIChlSXNQcm94eSgpKSByZXR1cm4gc3VwZXIudG9TdHJpbmcoKTsKKworCQlTdHJpbmdCdWZmZXIgcmVzdWx0ID0gbmV3IFN0cmluZ0J1ZmZlcihzdXBlci50b1N0cmluZygpKTsKKwkJcmVzdWx0LmFwcGVuZCgiIChraW5kOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChraW5kKTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIE1vYmlsZVJvYm90SW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9OYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW1JbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTk3ODNjYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW1JbXBsLmphdmEKQEAgLTAsMCArMSwzOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5OYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5OYXZpZ2F0aW9uIENvbW1hbmQgU3lzdGVtPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW1JbXBsIGV4dGVuZHMgTWFuTWFjaGluZUludGVyZmFjZVN5c3RlbUltcGwgaW1wbGVtZW50cyBOYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbSB7CisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIE5hdmlnYXRpb25Db21tYW5kU3lzdGVtSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLk5BVklHQVRJT05fQ09NTUFORF9TWVNURU07CisJfQorCit9IC8vIE5hdmlnYXRpb25Db21tYW5kU3lzdGVtSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NTViYWRjCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsLmphdmEKQEAgLTAsMCArMSwzOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T2JqZWN0IERldGVjdGlvbiBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbCBleHRlbmRzIFNlbnNvclN5c3RlbUltcGwgaW1wbGVtZW50cyBPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0geworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNOworCX0KKworfSAvLyBPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1JbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iZTc3ZDg4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUltcGwuamF2YQpAQCAtMCwwICsxLDM4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9iamVjdCBUcmFja2luZyBTZW5zb3IgU3lzdGVtPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsIGV4dGVuZHMgU2Vuc29yU3lzdGVtSW1wbCBpbXBsZW1lbnRzIE9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU07CisJfQorCit9IC8vIE9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PZG9tZXRyeVN5c3RlbUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2RvbWV0cnlTeXN0ZW1JbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGUwZWE0ZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT2RvbWV0cnlTeXN0ZW1JbXBsLmphdmEKQEAgLTAsMCArMSwzOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PZG9tZXRyeVN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5PZG9tZXRyeSBTeXN0ZW08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBPZG9tZXRyeVN5c3RlbUltcGwgZXh0ZW5kcyBMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1JbXBsIGltcGxlbWVudHMgT2RvbWV0cnlTeXN0ZW0geworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBPZG9tZXRyeVN5c3RlbUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBSb2JvdE1MUGFja2FnZS5MaXRlcmFscy5PRE9NRVRSWV9TWVNURU07CisJfQorCit9IC8vIE9kb21ldHJ5U3lzdGVtSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PblBvcnRJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09uUG9ydEltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ZTllNDBlCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PblBvcnRJbXBsLmphdmEKQEAgLTAsMCArMSwyMTUgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9uUG9ydDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG9ydDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuUGFyYW1ldGVyOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T24gUG9ydDwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuT25Qb3J0SW1wbCNnZXRQb3J0IDxlbT5Qb3J0PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5PblBvcnRJbXBsI2dldEJhc2VfUGFyYW1ldGVyIDxlbT5CYXNlIFBhcmFtZXRlcjwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIE9uUG9ydEltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgT25Qb3J0IHsKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRQb3J0KCkgPGVtPlBvcnQ8L2VtPn0nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFBvcnQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBQb3J0IHBvcnQ7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRCYXNlX1BhcmFtZXRlcigpIDxlbT5CYXNlIFBhcmFtZXRlcjwvZW0+fScgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0QmFzZV9QYXJhbWV0ZXIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBQYXJhbWV0ZXIgYmFzZV9QYXJhbWV0ZXI7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT25Qb3J0SW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLk9OX1BPUlQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFBvcnQgZ2V0UG9ydCgpIHsKKwkJaWYgKHBvcnQgIT0gbnVsbCAmJiBwb3J0LmVJc1Byb3h5KCkpIHsKKwkJCUludGVybmFsRU9iamVjdCBvbGRQb3J0ID0gKEludGVybmFsRU9iamVjdClwb3J0OworCQkJcG9ydCA9IChQb3J0KWVSZXNvbHZlUHJveHkob2xkUG9ydCk7CisJCQlpZiAocG9ydCAhPSBvbGRQb3J0KSB7CisJCQkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uUkVTT0xWRSwgUm9ib3RNTFBhY2thZ2UuT05fUE9SVF9fUE9SVCwgb2xkUG9ydCwgcG9ydCkpOworCQkJfQorCQl9CisJCXJldHVybiBwb3J0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBQb3J0IGJhc2ljR2V0UG9ydCgpIHsKKwkJcmV0dXJuIHBvcnQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0UG9ydChQb3J0IG5ld1BvcnQpIHsKKwkJUG9ydCBvbGRQb3J0ID0gcG9ydDsKKwkJcG9ydCA9IG5ld1BvcnQ7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLk9OX1BPUlRfX1BPUlQsIG9sZFBvcnQsIHBvcnQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUGFyYW1ldGVyIGdldEJhc2VfUGFyYW1ldGVyKCkgeworCQlpZiAoYmFzZV9QYXJhbWV0ZXIgIT0gbnVsbCAmJiBiYXNlX1BhcmFtZXRlci5lSXNQcm94eSgpKSB7CisJCQlJbnRlcm5hbEVPYmplY3Qgb2xkQmFzZV9QYXJhbWV0ZXIgPSAoSW50ZXJuYWxFT2JqZWN0KWJhc2VfUGFyYW1ldGVyOworCQkJYmFzZV9QYXJhbWV0ZXIgPSAoUGFyYW1ldGVyKWVSZXNvbHZlUHJveHkob2xkQmFzZV9QYXJhbWV0ZXIpOworCQkJaWYgKGJhc2VfUGFyYW1ldGVyICE9IG9sZEJhc2VfUGFyYW1ldGVyKSB7CisJCQkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uUkVTT0xWRSwgUm9ib3RNTFBhY2thZ2UuT05fUE9SVF9fQkFTRV9QQVJBTUVURVIsIG9sZEJhc2VfUGFyYW1ldGVyLCBiYXNlX1BhcmFtZXRlcikpOworCQkJfQorCQl9CisJCXJldHVybiBiYXNlX1BhcmFtZXRlcjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUGFyYW1ldGVyIGJhc2ljR2V0QmFzZV9QYXJhbWV0ZXIoKSB7CisJCXJldHVybiBiYXNlX1BhcmFtZXRlcjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRCYXNlX1BhcmFtZXRlcihQYXJhbWV0ZXIgbmV3QmFzZV9QYXJhbWV0ZXIpIHsKKwkJUGFyYW1ldGVyIG9sZEJhc2VfUGFyYW1ldGVyID0gYmFzZV9QYXJhbWV0ZXI7CisJCWJhc2VfUGFyYW1ldGVyID0gbmV3QmFzZV9QYXJhbWV0ZXI7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLk9OX1BPUlRfX0JBU0VfUEFSQU1FVEVSLCBvbGRCYXNlX1BhcmFtZXRlciwgYmFzZV9QYXJhbWV0ZXIpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLk9OX1BPUlRfX1BPUlQ6CisJCQkJaWYgKHJlc29sdmUpIHJldHVybiBnZXRQb3J0KCk7CisJCQkJcmV0dXJuIGJhc2ljR2V0UG9ydCgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5PTl9QT1JUX19CQVNFX1BBUkFNRVRFUjoKKwkJCQlpZiAocmVzb2x2ZSkgcmV0dXJuIGdldEJhc2VfUGFyYW1ldGVyKCk7CisJCQkJcmV0dXJuIGJhc2ljR2V0QmFzZV9QYXJhbWV0ZXIoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5PTl9QT1JUX19QT1JUOgorCQkJCXNldFBvcnQoKFBvcnQpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuT05fUE9SVF9fQkFTRV9QQVJBTUVURVI6CisJCQkJc2V0QmFzZV9QYXJhbWV0ZXIoKFBhcmFtZXRlciluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuT05fUE9SVF9fUE9SVDoKKwkJCQlzZXRQb3J0KChQb3J0KW51bGwpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuT05fUE9SVF9fQkFTRV9QQVJBTUVURVI6CisJCQkJc2V0QmFzZV9QYXJhbWV0ZXIoKFBhcmFtZXRlciludWxsKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuT05fUE9SVF9fUE9SVDoKKwkJCQlyZXR1cm4gcG9ydCAhPSBudWxsOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5PTl9QT1JUX19CQVNFX1BBUkFNRVRFUjoKKwkJCQlyZXR1cm4gYmFzZV9QYXJhbWV0ZXIgIT0gbnVsbDsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCit9IC8vIE9uUG9ydEltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT25WYXJpYWJsZUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT25WYXJpYWJsZUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMmIyMDRiCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9PblZhcmlhYmxlSW1wbC5qYXZhCkBAIC0wLDAgKzEsMjE5IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PblZhcmlhYmxlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKKworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlBhcmFtZXRlcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5Qcm9wZXJ0eTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9uIFZhcmlhYmxlPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5PblZhcmlhYmxlSW1wbCNnZXRQcm9wZXJ0eSA8ZW0+UHJvcGVydHk8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLk9uVmFyaWFibGVJbXBsI2dldEJhc2VfUGFyYW1ldGVyIDxlbT5CYXNlIFBhcmFtZXRlcjwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIE9uVmFyaWFibGVJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIE9uVmFyaWFibGUgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFByb3BlcnR5KCkgPGVtPlByb3BlcnR5PC9lbT59JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRQcm9wZXJ0eSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFByb3BlcnR5IHByb3BlcnR5OworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0QmFzZV9QYXJhbWV0ZXIoKSA8ZW0+QmFzZSBQYXJhbWV0ZXI8L2VtPn0nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEJhc2VfUGFyYW1ldGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgUGFyYW1ldGVyIGJhc2VfUGFyYW1ldGVyOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIE9uVmFyaWFibGVJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuT05fVkFSSUFCTEU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFByb3BlcnR5IGdldFByb3BlcnR5KCkgeworCQlpZiAocHJvcGVydHkgIT0gbnVsbCAmJiBwcm9wZXJ0eS5lSXNQcm94eSgpKSB7CisJCQlJbnRlcm5hbEVPYmplY3Qgb2xkUHJvcGVydHkgPSAoSW50ZXJuYWxFT2JqZWN0KXByb3BlcnR5OworCQkJcHJvcGVydHkgPSAoUHJvcGVydHkpZVJlc29sdmVQcm94eShvbGRQcm9wZXJ0eSk7CisJCQlpZiAocHJvcGVydHkgIT0gb2xkUHJvcGVydHkpIHsKKwkJCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5SRVNPTFZFLCBSb2JvdE1MUGFja2FnZS5PTl9WQVJJQUJMRV9fUFJPUEVSVFksIG9sZFByb3BlcnR5LCBwcm9wZXJ0eSkpOworCQkJfQorCQl9CisJCXJldHVybiBwcm9wZXJ0eTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUHJvcGVydHkgYmFzaWNHZXRQcm9wZXJ0eSgpIHsKKwkJcmV0dXJuIHByb3BlcnR5OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFByb3BlcnR5KFByb3BlcnR5IG5ld1Byb3BlcnR5KSB7CisJCVByb3BlcnR5IG9sZFByb3BlcnR5ID0gcHJvcGVydHk7CisJCXByb3BlcnR5ID0gbmV3UHJvcGVydHk7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLk9OX1ZBUklBQkxFX19QUk9QRVJUWSwgb2xkUHJvcGVydHksIHByb3BlcnR5KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFBhcmFtZXRlciBnZXRCYXNlX1BhcmFtZXRlcigpIHsKKwkJaWYgKGJhc2VfUGFyYW1ldGVyICE9IG51bGwgJiYgYmFzZV9QYXJhbWV0ZXIuZUlzUHJveHkoKSkgeworCQkJSW50ZXJuYWxFT2JqZWN0IG9sZEJhc2VfUGFyYW1ldGVyID0gKEludGVybmFsRU9iamVjdCliYXNlX1BhcmFtZXRlcjsKKwkJCWJhc2VfUGFyYW1ldGVyID0gKFBhcmFtZXRlcillUmVzb2x2ZVByb3h5KG9sZEJhc2VfUGFyYW1ldGVyKTsKKwkJCWlmIChiYXNlX1BhcmFtZXRlciAhPSBvbGRCYXNlX1BhcmFtZXRlcikgeworCQkJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlJFU09MVkUsIFJvYm90TUxQYWNrYWdlLk9OX1ZBUklBQkxFX19CQVNFX1BBUkFNRVRFUiwgb2xkQmFzZV9QYXJhbWV0ZXIsIGJhc2VfUGFyYW1ldGVyKSk7CisJCQl9CisJCX0KKwkJcmV0dXJuIGJhc2VfUGFyYW1ldGVyOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBQYXJhbWV0ZXIgYmFzaWNHZXRCYXNlX1BhcmFtZXRlcigpIHsKKwkJcmV0dXJuIGJhc2VfUGFyYW1ldGVyOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEJhc2VfUGFyYW1ldGVyKFBhcmFtZXRlciBuZXdCYXNlX1BhcmFtZXRlcikgeworCQlQYXJhbWV0ZXIgb2xkQmFzZV9QYXJhbWV0ZXIgPSBiYXNlX1BhcmFtZXRlcjsKKwkJYmFzZV9QYXJhbWV0ZXIgPSBuZXdCYXNlX1BhcmFtZXRlcjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuT05fVkFSSUFCTEVfX0JBU0VfUEFSQU1FVEVSLCBvbGRCYXNlX1BhcmFtZXRlciwgYmFzZV9QYXJhbWV0ZXIpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLk9OX1ZBUklBQkxFX19QUk9QRVJUWToKKwkJCQlpZiAocmVzb2x2ZSkgcmV0dXJuIGdldFByb3BlcnR5KCk7CisJCQkJcmV0dXJuIGJhc2ljR2V0UHJvcGVydHkoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuT05fVkFSSUFCTEVfX0JBU0VfUEFSQU1FVEVSOgorCQkJCWlmIChyZXNvbHZlKSByZXR1cm4gZ2V0QmFzZV9QYXJhbWV0ZXIoKTsKKwkJCQlyZXR1cm4gYmFzaWNHZXRCYXNlX1BhcmFtZXRlcigpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLk9OX1ZBUklBQkxFX19QUk9QRVJUWToKKwkJCQlzZXRQcm9wZXJ0eSgoUHJvcGVydHkpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuT05fVkFSSUFCTEVfX0JBU0VfUEFSQU1FVEVSOgorCQkJCXNldEJhc2VfUGFyYW1ldGVyKChQYXJhbWV0ZXIpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLk9OX1ZBUklBQkxFX19QUk9QRVJUWToKKwkJCQlzZXRQcm9wZXJ0eSgoUHJvcGVydHkpbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5PTl9WQVJJQUJMRV9fQkFTRV9QQVJBTUVURVI6CisJCQkJc2V0QmFzZV9QYXJhbWV0ZXIoKFBhcmFtZXRlciludWxsKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuT05fVkFSSUFCTEVfX1BST1BFUlRZOgorCQkJCXJldHVybiBwcm9wZXJ0eSAhPSBudWxsOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5PTl9WQVJJQUJMRV9fQkFTRV9QQVJBTUVURVI6CisJCQkJcmV0dXJuIGJhc2VfUGFyYW1ldGVyICE9IG51bGw7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworfSAvL09uVmFyaWFibGVJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09wZW5Mb29wQ29udHJvbFN5c3RlbUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvT3Blbkxvb3BDb250cm9sU3lzdGVtSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRlMDExNDcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL09wZW5Mb29wQ29udHJvbFN5c3RlbUltcGwuamF2YQpAQCAtMCwwICsxLDM4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9wZW5Mb29wQ29udHJvbFN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5PcGVuIExvb3AgQ29udHJvbCBTeXN0ZW08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBPcGVuTG9vcENvbnRyb2xTeXN0ZW1JbXBsIGV4dGVuZHMgQ3liZXJQaHlzaWNhbFN5c3RlbUltcGwgaW1wbGVtZW50cyBPcGVuTG9vcENvbnRyb2xTeXN0ZW0geworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBPcGVuTG9vcENvbnRyb2xTeXN0ZW1JbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuT1BFTl9MT09QX0NPTlRST0xfU1lTVEVNOworCX0KKworfSAvLyBPcGVuTG9vcENvbnRyb2xTeXN0ZW1JbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BlZGVzdHJpYW5JbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BlZGVzdHJpYW5JbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTdiYTk1OAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGVkZXN0cmlhbkltcGwuamF2YQpAQCAtMCwwICsxLDM4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBlZGVzdHJpYW47CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGVkZXN0cmlhbjwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIFBlZGVzdHJpYW5JbXBsIGV4dGVuZHMgSHVtYW5JbXBsIGltcGxlbWVudHMgUGVkZXN0cmlhbiB7CisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFBlZGVzdHJpYW5JbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuUEVERVNUUklBTjsKKwl9CisKK30gLy8gUGVkZXN0cmlhbkltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGh5c2ljYWxPYmplY3RJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI1YzE5ZDIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BoeXNpY2FsT2JqZWN0SW1wbC5qYXZhCkBAIC0wLDAgKzEsMjc2IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaHlzaWNhbE9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5QaHlzaWNhbCBPYmplY3Q8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsT2JqZWN0SW1wbCNnZXRIZWlnaHQgPGVtPkhlaWdodDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGh5c2ljYWxPYmplY3RJbXBsI2dldE1hc3MgPGVtPk1hc3M8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBoeXNpY2FsT2JqZWN0SW1wbCNnZXRCYXNlX0NsYXNzIDxlbT5CYXNlIENsYXNzPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgUGh5c2ljYWxPYmplY3RJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIFBoeXNpY2FsT2JqZWN0IHsKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0SGVpZ2h0KCkgPGVtPkhlaWdodDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SGVpZ2h0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBIRUlHSFRfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0SGVpZ2h0KCkgPGVtPkhlaWdodDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SGVpZ2h0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IGhlaWdodCA9IEhFSUdIVF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRNYXNzKCkgPGVtPk1hc3M8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldE1hc3MoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IE1BU1NfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TWFzcygpIDxlbT5NYXNzPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRNYXNzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IG1hc3MgPSBNQVNTX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0QmFzZV9DbGFzcygpIDxlbT5CYXNlIENsYXNzPC9lbT59JyByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRCYXNlX0NsYXNzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgYmFzZV9DbGFzczsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBQaHlzaWNhbE9iamVjdEltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBSb2JvdE1MUGFja2FnZS5MaXRlcmFscy5QSFlTSUNBTF9PQkpFQ1Q7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRIZWlnaHQoKSB7CisJCXJldHVybiBoZWlnaHQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0SGVpZ2h0KE9iamVjdCBuZXdIZWlnaHQpIHsKKwkJT2JqZWN0IG9sZEhlaWdodCA9IGhlaWdodDsKKwkJaGVpZ2h0ID0gbmV3SGVpZ2h0OworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5QSFlTSUNBTF9PQkpFQ1RfX0hFSUdIVCwgb2xkSGVpZ2h0LCBoZWlnaHQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldE1hc3MoKSB7CisJCXJldHVybiBtYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldE1hc3MoT2JqZWN0IG5ld01hc3MpIHsKKwkJT2JqZWN0IG9sZE1hc3MgPSBtYXNzOworCQltYXNzID0gbmV3TWFzczsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuUEhZU0lDQUxfT0JKRUNUX19NQVNTLCBvbGRNYXNzLCBtYXNzKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzIGdldEJhc2VfQ2xhc3MoKSB7CisJCWlmIChiYXNlX0NsYXNzICE9IG51bGwgJiYgYmFzZV9DbGFzcy5lSXNQcm94eSgpKSB7CisJCQlJbnRlcm5hbEVPYmplY3Qgb2xkQmFzZV9DbGFzcyA9IChJbnRlcm5hbEVPYmplY3QpYmFzZV9DbGFzczsKKwkJCWJhc2VfQ2xhc3MgPSAob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpZVJlc29sdmVQcm94eShvbGRCYXNlX0NsYXNzKTsKKwkJCWlmIChiYXNlX0NsYXNzICE9IG9sZEJhc2VfQ2xhc3MpIHsKKwkJCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5SRVNPTFZFLCBSb2JvdE1MUGFja2FnZS5QSFlTSUNBTF9PQkpFQ1RfX0JBU0VfQ0xBU1MsIG9sZEJhc2VfQ2xhc3MsIGJhc2VfQ2xhc3MpKTsKKwkJCX0KKwkJfQorCQlyZXR1cm4gYmFzZV9DbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MgYmFzaWNHZXRCYXNlX0NsYXNzKCkgeworCQlyZXR1cm4gYmFzZV9DbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRCYXNlX0NsYXNzKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzIG5ld0Jhc2VfQ2xhc3MpIHsKKwkJb3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3Mgb2xkQmFzZV9DbGFzcyA9IGJhc2VfQ2xhc3M7CisJCWJhc2VfQ2xhc3MgPSBuZXdCYXNlX0NsYXNzOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5QSFlTSUNBTF9PQkpFQ1RfX0JBU0VfQ0xBU1MsIG9sZEJhc2VfQ2xhc3MsIGJhc2VfQ2xhc3MpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlBIWVNJQ0FMX09CSkVDVF9fSEVJR0hUOgorCQkJCXJldHVybiBnZXRIZWlnaHQoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUEhZU0lDQUxfT0JKRUNUX19NQVNTOgorCQkJCXJldHVybiBnZXRNYXNzKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlBIWVNJQ0FMX09CSkVDVF9fQkFTRV9DTEFTUzoKKwkJCQlpZiAocmVzb2x2ZSkgcmV0dXJuIGdldEJhc2VfQ2xhc3MoKTsKKwkJCQlyZXR1cm4gYmFzaWNHZXRCYXNlX0NsYXNzKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQFN1cHByZXNzV2FybmluZ3MoInVuY2hlY2tlZCIpCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUEhZU0lDQUxfT0JKRUNUX19IRUlHSFQ6CisJCQkJc2V0SGVpZ2h0KChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUEhZU0lDQUxfT0JKRUNUX19NQVNTOgorCQkJCXNldE1hc3MoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5QSFlTSUNBTF9PQkpFQ1RfX0JBU0VfQ0xBU1M6CisJCQkJc2V0QmFzZV9DbGFzcygob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlBIWVNJQ0FMX09CSkVDVF9fSEVJR0hUOgorCQkJCXNldEhlaWdodChIRUlHSFRfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUEhZU0lDQUxfT0JKRUNUX19NQVNTOgorCQkJCXNldE1hc3MoTUFTU19FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5QSFlTSUNBTF9PQkpFQ1RfX0JBU0VfQ0xBU1M6CisJCQkJc2V0QmFzZV9DbGFzcygob3JnLmVjbGlwc2UudW1sMi51bWwuQ2xhc3MpbnVsbCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlBIWVNJQ0FMX09CSkVDVF9fSEVJR0hUOgorCQkJCXJldHVybiBIRUlHSFRfRURFRkFVTFQgPT0gbnVsbCA/IGhlaWdodCAhPSBudWxsIDogIUhFSUdIVF9FREVGQVVMVC5lcXVhbHMoaGVpZ2h0KTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUEhZU0lDQUxfT0JKRUNUX19NQVNTOgorCQkJCXJldHVybiBNQVNTX0VERUZBVUxUID09IG51bGwgPyBtYXNzICE9IG51bGwgOiAhTUFTU19FREVGQVVMVC5lcXVhbHMobWFzcyk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlBIWVNJQ0FMX09CSkVDVF9fQkFTRV9DTEFTUzoKKwkJCQlyZXR1cm4gYmFzZV9DbGFzcyAhPSBudWxsOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAoaGVpZ2h0OiAiKTsKKwkJcmVzdWx0LmFwcGVuZChoZWlnaHQpOworCQlyZXN1bHQuYXBwZW5kKCIsIG1hc3M6ICIpOworCQlyZXN1bHQuYXBwZW5kKG1hc3MpOworCQlyZXN1bHQuYXBwZW5kKCcpJyk7CisJCXJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKKwl9CisKK30gLy8gUGh5c2ljYWxPYmplY3RJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BpbG90ZWRTeXN0ZW1JbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BpbG90ZWRTeXN0ZW1JbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWYwNWY3MwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGlsb3RlZFN5c3RlbUltcGwuamF2YQpAQCAtMCwwICsxLDM4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBpbG90ZWRTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGlsb3RlZCBTeXN0ZW08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBQaWxvdGVkU3lzdGVtSW1wbCBleHRlbmRzIFJvYm90SW1wbCBpbXBsZW1lbnRzIFBpbG90ZWRTeXN0ZW0geworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBQaWxvdGVkU3lzdGVtSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLlBJTE9URURfU1lTVEVNOworCX0KKworfSAvLyBQaWxvdGVkU3lzdGVtSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGFuZXRJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYW5ldEltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mODMyMTU3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9QbGFuZXRJbXBsLmphdmEKQEAgLTAsMCArMSwzOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QbGFuZXQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGxhbmV0PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgUGxhbmV0SW1wbCBleHRlbmRzIFBoeXNpY2FsT2JqZWN0SW1wbCBpbXBsZW1lbnRzIFBsYW5ldCB7CisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFBsYW5ldEltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBSb2JvdE1MUGFja2FnZS5MaXRlcmFscy5QTEFORVQ7CisJfQorCit9IC8vIFBsYW5ldEltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUGxhdGZvcm1JbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmEwNDUzMDIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BsYXRmb3JtSW1wbC5qYXZhCkBAIC0wLDAgKzEsMTkzIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IGphdmEudXRpbC5Db2xsZWN0aW9uOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuRU9iamVjdFJlc29sdmluZ0VMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FeHRlcm5hbExpYnJhcnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBsYXRmb3JtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5Ob2RlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGxhdGZvcm08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlBsYXRmb3JtSW1wbCNnZXRCYXNlX05vZGUgPGVtPkJhc2UgTm9kZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUGxhdGZvcm1JbXBsI2dldExpYnJhcnkgPGVtPkxpYnJhcnk8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBQbGF0Zm9ybUltcGwgZXh0ZW5kcyBTeXN0ZW1JbXBsIGltcGxlbWVudHMgUGxhdGZvcm0geworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEJhc2VfTm9kZSgpIDxlbT5CYXNlIE5vZGU8L2VtPn0nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEJhc2VfTm9kZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE5vZGUgYmFzZV9Ob2RlOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TGlicmFyeSgpIDxlbT5MaWJyYXJ5PC9lbT59JyByZWZlcmVuY2UgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExpYnJhcnkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBFTGlzdDxFeHRlcm5hbExpYnJhcnk+IGxpYnJhcnk7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgUGxhdGZvcm1JbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuUExBVEZPUk07CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vZGUgZ2V0QmFzZV9Ob2RlKCkgeworCQlpZiAoYmFzZV9Ob2RlICE9IG51bGwgJiYgYmFzZV9Ob2RlLmVJc1Byb3h5KCkpIHsKKwkJCUludGVybmFsRU9iamVjdCBvbGRCYXNlX05vZGUgPSAoSW50ZXJuYWxFT2JqZWN0KWJhc2VfTm9kZTsKKwkJCWJhc2VfTm9kZSA9IChOb2RlKWVSZXNvbHZlUHJveHkob2xkQmFzZV9Ob2RlKTsKKwkJCWlmIChiYXNlX05vZGUgIT0gb2xkQmFzZV9Ob2RlKSB7CisJCQkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uUkVTT0xWRSwgUm9ib3RNTFBhY2thZ2UuUExBVEZPUk1fX0JBU0VfTk9ERSwgb2xkQmFzZV9Ob2RlLCBiYXNlX05vZGUpKTsKKwkJCX0KKwkJfQorCQlyZXR1cm4gYmFzZV9Ob2RlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOb2RlIGJhc2ljR2V0QmFzZV9Ob2RlKCkgeworCQlyZXR1cm4gYmFzZV9Ob2RlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEJhc2VfTm9kZShOb2RlIG5ld0Jhc2VfTm9kZSkgeworCQlOb2RlIG9sZEJhc2VfTm9kZSA9IGJhc2VfTm9kZTsKKwkJYmFzZV9Ob2RlID0gbmV3QmFzZV9Ob2RlOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5QTEFURk9STV9fQkFTRV9OT0RFLCBvbGRCYXNlX05vZGUsIGJhc2VfTm9kZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFTGlzdDxFeHRlcm5hbExpYnJhcnk+IGdldExpYnJhcnkoKSB7CisJCWlmIChsaWJyYXJ5ID09IG51bGwpIHsKKwkJCWxpYnJhcnkgPSBuZXcgRU9iamVjdFJlc29sdmluZ0VMaXN0PEV4dGVybmFsTGlicmFyeT4oRXh0ZXJuYWxMaWJyYXJ5LmNsYXNzLCB0aGlzLCBSb2JvdE1MUGFja2FnZS5QTEFURk9STV9fTElCUkFSWSk7CisJCX0KKwkJcmV0dXJuIGxpYnJhcnk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5QTEFURk9STV9fQkFTRV9OT0RFOgorCQkJCWlmIChyZXNvbHZlKSByZXR1cm4gZ2V0QmFzZV9Ob2RlKCk7CisJCQkJcmV0dXJuIGJhc2ljR2V0QmFzZV9Ob2RlKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlBMQVRGT1JNX19MSUJSQVJZOgorCQkJCXJldHVybiBnZXRMaWJyYXJ5KCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQFN1cHByZXNzV2FybmluZ3MoInVuY2hlY2tlZCIpCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUExBVEZPUk1fX0JBU0VfTk9ERToKKwkJCQlzZXRCYXNlX05vZGUoKE5vZGUpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUExBVEZPUk1fX0xJQlJBUlk6CisJCQkJZ2V0TGlicmFyeSgpLmNsZWFyKCk7CisJCQkJZ2V0TGlicmFyeSgpLmFkZEFsbCgoQ29sbGVjdGlvbjw/IGV4dGVuZHMgRXh0ZXJuYWxMaWJyYXJ5PiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUExBVEZPUk1fX0JBU0VfTk9ERToKKwkJCQlzZXRCYXNlX05vZGUoKE5vZGUpbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5QTEFURk9STV9fTElCUkFSWToKKwkJCQlnZXRMaWJyYXJ5KCkuY2xlYXIoKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUExBVEZPUk1fX0JBU0VfTk9ERToKKwkJCQlyZXR1cm4gYmFzZV9Ob2RlICE9IG51bGw7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlBMQVRGT1JNX19MSUJSQVJZOgorCQkJCXJldHVybiBsaWJyYXJ5ICE9IG51bGwgJiYgIWxpYnJhcnkuaXNFbXB0eSgpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKK30gLy8gUGxhdGZvcm1JbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1BvcnRJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTE5MTE4ZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG9ydEltcGwuamF2YQpAQCAtMCwwICsxLDIyMiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG9ydDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5bmNocm9uaXphdGlvbktpbmQ7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Qb3J0PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Qb3J0SW1wbCNnZXRCYXNlX1BvcnQgPGVtPkJhc2UgUG9ydDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUG9ydEltcGwjZ2V0U3luY2hyb25pemF0aW9uUG9saWN5IDxlbT5TeW5jaHJvbml6YXRpb24gUG9saWN5PC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgYWJzdHJhY3QgY2xhc3MgUG9ydEltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgUG9ydCB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0QmFzZV9Qb3J0KCkgPGVtPkJhc2UgUG9ydDwvZW0+fScgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0QmFzZV9Qb3J0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgb3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCBiYXNlX1BvcnQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0U3luY2hyb25pemF0aW9uUG9saWN5KCkgPGVtPlN5bmNocm9uaXphdGlvbiBQb2xpY3k8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFN5bmNocm9uaXphdGlvblBvbGljeSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBTeW5jaHJvbml6YXRpb25LaW5kIFNZTkNIUk9OSVpBVElPTl9QT0xJQ1lfRURFRkFVTFQgPSBTeW5jaHJvbml6YXRpb25LaW5kLlNZTkNIOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0U3luY2hyb25pemF0aW9uUG9saWN5KCkgPGVtPlN5bmNocm9uaXphdGlvbiBQb2xpY3k8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFN5bmNocm9uaXphdGlvblBvbGljeSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFN5bmNocm9uaXphdGlvbktpbmQgc3luY2hyb25pemF0aW9uUG9saWN5ID0gU1lOQ0hST05JWkFUSU9OX1BPTElDWV9FREVGQVVMVDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBQb3J0SW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLlBPUlQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQgZ2V0QmFzZV9Qb3J0KCkgeworCQlpZiAoYmFzZV9Qb3J0ICE9IG51bGwgJiYgYmFzZV9Qb3J0LmVJc1Byb3h5KCkpIHsKKwkJCUludGVybmFsRU9iamVjdCBvbGRCYXNlX1BvcnQgPSAoSW50ZXJuYWxFT2JqZWN0KWJhc2VfUG9ydDsKKwkJCWJhc2VfUG9ydCA9IChvcmcuZWNsaXBzZS51bWwyLnVtbC5Qb3J0KWVSZXNvbHZlUHJveHkob2xkQmFzZV9Qb3J0KTsKKwkJCWlmIChiYXNlX1BvcnQgIT0gb2xkQmFzZV9Qb3J0KSB7CisJCQkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uUkVTT0xWRSwgUm9ib3RNTFBhY2thZ2UuUE9SVF9fQkFTRV9QT1JULCBvbGRCYXNlX1BvcnQsIGJhc2VfUG9ydCkpOworCQkJfQorCQl9CisJCXJldHVybiBiYXNlX1BvcnQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQgYmFzaWNHZXRCYXNlX1BvcnQoKSB7CisJCXJldHVybiBiYXNlX1BvcnQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0QmFzZV9Qb3J0KG9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQgbmV3QmFzZV9Qb3J0KSB7CisJCW9yZy5lY2xpcHNlLnVtbDIudW1sLlBvcnQgb2xkQmFzZV9Qb3J0ID0gYmFzZV9Qb3J0OworCQliYXNlX1BvcnQgPSBuZXdCYXNlX1BvcnQ7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLlBPUlRfX0JBU0VfUE9SVCwgb2xkQmFzZV9Qb3J0LCBiYXNlX1BvcnQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3luY2hyb25pemF0aW9uS2luZCBnZXRTeW5jaHJvbml6YXRpb25Qb2xpY3koKSB7CisJCXJldHVybiBzeW5jaHJvbml6YXRpb25Qb2xpY3k7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0U3luY2hyb25pemF0aW9uUG9saWN5KFN5bmNocm9uaXphdGlvbktpbmQgbmV3U3luY2hyb25pemF0aW9uUG9saWN5KSB7CisJCVN5bmNocm9uaXphdGlvbktpbmQgb2xkU3luY2hyb25pemF0aW9uUG9saWN5ID0gc3luY2hyb25pemF0aW9uUG9saWN5OworCQlzeW5jaHJvbml6YXRpb25Qb2xpY3kgPSBuZXdTeW5jaHJvbml6YXRpb25Qb2xpY3kgPT0gbnVsbCA/IFNZTkNIUk9OSVpBVElPTl9QT0xJQ1lfRURFRkFVTFQgOiBuZXdTeW5jaHJvbml6YXRpb25Qb2xpY3k7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLlBPUlRfX1NZTkNIUk9OSVpBVElPTl9QT0xJQ1ksIG9sZFN5bmNocm9uaXphdGlvblBvbGljeSwgc3luY2hyb25pemF0aW9uUG9saWN5KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5QT1JUX19CQVNFX1BPUlQ6CisJCQkJaWYgKHJlc29sdmUpIHJldHVybiBnZXRCYXNlX1BvcnQoKTsKKwkJCQlyZXR1cm4gYmFzaWNHZXRCYXNlX1BvcnQoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUE9SVF9fU1lOQ0hST05JWkFUSU9OX1BPTElDWToKKwkJCQlyZXR1cm4gZ2V0U3luY2hyb25pemF0aW9uUG9saWN5KCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUE9SVF9fQkFTRV9QT1JUOgorCQkJCXNldEJhc2VfUG9ydCgob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5QT1JUX19TWU5DSFJPTklaQVRJT05fUE9MSUNZOgorCQkJCXNldFN5bmNocm9uaXphdGlvblBvbGljeSgoU3luY2hyb25pemF0aW9uS2luZCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUE9SVF9fQkFTRV9QT1JUOgorCQkJCXNldEJhc2VfUG9ydCgob3JnLmVjbGlwc2UudW1sMi51bWwuUG9ydCludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlBPUlRfX1NZTkNIUk9OSVpBVElPTl9QT0xJQ1k6CisJCQkJc2V0U3luY2hyb25pemF0aW9uUG9saWN5KFNZTkNIUk9OSVpBVElPTl9QT0xJQ1lfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5QT1JUX19CQVNFX1BPUlQ6CisJCQkJcmV0dXJuIGJhc2VfUG9ydCAhPSBudWxsOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5QT1JUX19TWU5DSFJPTklaQVRJT05fUE9MSUNZOgorCQkJCXJldHVybiBzeW5jaHJvbml6YXRpb25Qb2xpY3kgIT0gU1lOQ0hST05JWkFUSU9OX1BPTElDWV9FREVGQVVMVDsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJaWYgKGVJc1Byb3h5KCkpIHJldHVybiBzdXBlci50b1N0cmluZygpOworCisJCVN0cmluZ0J1ZmZlciByZXN1bHQgPSBuZXcgU3RyaW5nQnVmZmVyKHN1cGVyLnRvU3RyaW5nKCkpOworCQlyZXN1bHQuYXBwZW5kKCIgKHN5bmNocm9uaXphdGlvblBvbGljeTogIik7CisJCXJlc3VsdC5hcHBlbmQoc3luY2hyb25pemF0aW9uUG9saWN5KTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIFBvcnRJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1Bvd2VySGFyZHdhcmVJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1Bvd2VySGFyZHdhcmVJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjUwMTc1NQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUG93ZXJIYXJkd2FyZUltcGwuamF2YQpAQCAtMCwwICsxLDM4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBvd2VySGFyZHdhcmU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UG93ZXIgSGFyZHdhcmU8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBQb3dlckhhcmR3YXJlSW1wbCBleHRlbmRzIEhhcmR3YXJlSW1wbCBpbXBsZW1lbnRzIFBvd2VySGFyZHdhcmUgeworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBQb3dlckhhcmR3YXJlSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLlBPV0VSX0hBUkRXQVJFOworCX0KKworfSAvLyBQb3dlckhhcmR3YXJlSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdEltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGExZjU4MQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RJbXBsLmphdmEKQEAgLTAsMCArMSwxNTkgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdEltcGwjZ2V0V2lkdGggPGVtPldpZHRoPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgUm9ib3RJbXBsIGV4dGVuZHMgU3lzdGVtSW1wbCBpbXBsZW1lbnRzIFJvYm90IHsKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0V2lkdGgoKSA8ZW0+V2lkdGg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFdpZHRoKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBXSURUSF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRXaWR0aCgpIDxlbT5XaWR0aDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0V2lkdGgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3Qgd2lkdGggPSBXSURUSF9FREVGQVVMVDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBSb2JvdEltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBSb2JvdE1MUGFja2FnZS5MaXRlcmFscy5ST0JPVDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFdpZHRoKCkgeworCQlyZXR1cm4gd2lkdGg7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0V2lkdGgoT2JqZWN0IG5ld1dpZHRoKSB7CisJCU9iamVjdCBvbGRXaWR0aCA9IHdpZHRoOworCQl3aWR0aCA9IG5ld1dpZHRoOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5ST0JPVF9fV0lEVEgsIG9sZFdpZHRoLCB3aWR0aCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUk9CT1RfX1dJRFRIOgorCQkJCXJldHVybiBnZXRXaWR0aCgpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlJPQk9UX19XSURUSDoKKwkJCQlzZXRXaWR0aCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5ST0JPVF9fV0lEVEg6CisJCQkJc2V0V2lkdGgoV0lEVEhfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5ST0JPVF9fV0lEVEg6CisJCQkJcmV0dXJuIFdJRFRIX0VERUZBVUxUID09IG51bGwgPyB3aWR0aCAhPSBudWxsIDogIVdJRFRIX0VERUZBVUxULmVxdWFscyh3aWR0aCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CisJCWlmIChlSXNQcm94eSgpKSByZXR1cm4gc3VwZXIudG9TdHJpbmcoKTsKKworCQlTdHJpbmdCdWZmZXIgcmVzdWx0ID0gbmV3IFN0cmluZ0J1ZmZlcihzdXBlci50b1N0cmluZygpKTsKKwkJcmVzdWx0LmFwcGVuZCgiICh3aWR0aDogIik7CisJCXJlc3VsdC5hcHBlbmQod2lkdGgpOworCQlyZXN1bHQuYXBwZW5kKCcpJyk7CisJCXJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKKwl9CisKK30gLy8gUm9ib3RJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxGYWN0b3J5SW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iY2IwZmI0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdE1MRmFjdG9yeUltcGwuamF2YQpAQCAtMCwwICsxLDEyMTkgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FRmFjdG9yeUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnBsdWdpbi5FY29yZVBsdWdpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWN0dWF0ZWRKb2ludDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWN0dWF0b3JIYXJkd2FyZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWN0dWF0b3JTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFnZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobUxpYnJhcnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsbG9jYXRlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Bcm07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkJsZW5kZXJNb3JzZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQnVpbGRpbmc7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNhbWVyYVN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2hhc3NpczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2xvc2VkTG9vcENvbnRyb2xTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNvbXBsZXRlQm9uZGluZzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ3liZXJQaHlzaWNhbFN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ3ljYWJUSzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGF0YUZsb3dEaXJlY3Rpb25LaW5kOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EYXRhRmxvd1BvcnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRlcGxveW1lbnRQbGFuOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FbmdpbmVTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkVudmlyb25tZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FeHRlcm5hbExpYnJhcnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkZsb29yOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5HUFNTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkdyYXNwaW5nSGFyZHdhcmU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkdyYXNwaW5nU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5HeXJvc2NvcGU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkhhcmR3YXJlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5IdW1hbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSW1hZ2VTZW5zb3JTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5JbmVydGlhbE5hdmlnYXRpb25TeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkluZnJhUmVkUHJveGltZXRyeVN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSm9pbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MYW5kU3VyZmFjZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGVnOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MZWdTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxpZGFyU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Mb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxvY29tb3Rpb25IYXJkd2FyZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTG9jb21vdGlvblN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTWFuTWFjaGluZUludGVyZmFjZVN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTWFuaXB1bGF0b3I7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk1lY2hhbmljYWxMaW5rYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Nb2JpbGVSb2JvdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTW9iaWxlUm9ib3RLaW5kOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5OYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT2RvbWV0cnlTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9uUG9ydDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT25WYXJpYWJsZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT3Blbkxvb3BDb250cm9sU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QZWRlc3RyaWFuOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaHlzaWNhbE9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGlsb3RlZFN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGxhbmV0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QbGF0Zm9ybTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG93ZXJIYXJkd2FyZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxGYWN0b3J5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY0hlYWQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNNaWRkbGV3YXJlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljTWlkZGxld2FyZUtpbmQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTaW11bGF0b3I7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvckRyaXZlcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2Vuc29ySGFyZHdhcmU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvclN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2VydmljZUZsb3dLaW5kOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlUG9ydDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2hhZGU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNvZnR3YXJlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGFpcnM7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0YXRlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxIYXJkd2FyZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXBwb3J0aW5nU3RydWN0dXJlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeW5jaHJvbml6YXRpb25LaW5kOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5UcmFuc2l0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5VR1ZLaW5kOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5XYXRlclN1cmZhY2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLldlYXBvblN5c3RlbTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPkZhY3Rvcnk8L2I+LgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBSb2JvdE1MRmFjdG9yeUltcGwgZXh0ZW5kcyBFRmFjdG9yeUltcGwgaW1wbGVtZW50cyBSb2JvdE1MRmFjdG9yeSB7CisJLyoqCisJICogQ3JlYXRlcyB0aGUgZGVmYXVsdCBmYWN0b3J5IGltcGxlbWVudGF0aW9uLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgUm9ib3RNTEZhY3RvcnkgaW5pdCgpIHsKKwkJdHJ5IHsKKwkJCVJvYm90TUxGYWN0b3J5IHRoZVJvYm90TUxGYWN0b3J5ID0gKFJvYm90TUxGYWN0b3J5KUVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVGYWN0b3J5KFJvYm90TUxQYWNrYWdlLmVOU19VUkkpOworCQkJaWYgKHRoZVJvYm90TUxGYWN0b3J5ICE9IG51bGwpIHsKKwkJCQlyZXR1cm4gdGhlUm9ib3RNTEZhY3Rvcnk7CisJCQl9CisJCX0KKwkJY2F0Y2ggKEV4Y2VwdGlvbiBleGNlcHRpb24pIHsKKwkJCUVjb3JlUGx1Z2luLklOU1RBTkNFLmxvZyhleGNlcHRpb24pOworCQl9CisJCXJldHVybiBuZXcgUm9ib3RNTEZhY3RvcnlJbXBsKCk7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgZmFjdG9yeS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUm9ib3RNTEZhY3RvcnlJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBFT2JqZWN0IGNyZWF0ZShFQ2xhc3MgZUNsYXNzKSB7CisJCXN3aXRjaCAoZUNsYXNzLmdldENsYXNzaWZpZXJJRCgpKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlRSQU5TSVRJT046IHJldHVybiBjcmVhdGVUcmFuc2l0aW9uKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkFMR09SSVRITTogcmV0dXJuIGNyZWF0ZUFsZ29yaXRobSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEFURTogcmV0dXJuIGNyZWF0ZVN0YXRlKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkFDVFVBVEVEX0pPSU5UOiByZXR1cm4gY3JlYXRlQWN0dWF0ZWRKb2ludCgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5KT0lOVDogcmV0dXJuIGNyZWF0ZUpvaW50KCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkNPTVBMRVRFX0JPTkRJTkc6IHJldHVybiBjcmVhdGVDb21wbGV0ZUJvbmRpbmcoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUk9CT1Q6IHJldHVybiBjcmVhdGVSb2JvdCgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TWVNURU06IHJldHVybiBjcmVhdGVTeXN0ZW0oKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQUdFTlQ6IHJldHVybiBjcmVhdGVBZ2VudCgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5QSFlTSUNBTF9PQkpFQ1Q6IHJldHVybiBjcmVhdGVQaHlzaWNhbE9iamVjdCgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5EQVRBX0ZMT1dfUE9SVDogcmV0dXJuIGNyZWF0ZURhdGFGbG93UG9ydCgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TRVJWSUNFX1BPUlQ6IHJldHVybiBjcmVhdGVTZXJ2aWNlUG9ydCgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5BQ1RVQVRPUl9TWVNURU06IHJldHVybiBjcmVhdGVBY3R1YXRvclN5c3RlbSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5ST0JPVElDX1NZU1RFTTogcmV0dXJuIGNyZWF0ZVJvYm90aWNTeXN0ZW0oKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ1lCRVJfUEhZU0lDQUxfU1lTVEVNOiByZXR1cm4gY3JlYXRlQ3liZXJQaHlzaWNhbFN5c3RlbSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TRU5TT1JfU1lTVEVNOiByZXR1cm4gY3JlYXRlU2Vuc29yU3lzdGVtKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkhBUkRXQVJFOiByZXR1cm4gY3JlYXRlSGFyZHdhcmUoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU09GVFdBUkU6IHJldHVybiBjcmVhdGVTb2Z0d2FyZSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNOiByZXR1cm4gY3JlYXRlRW5naW5lU3lzdGVtKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNOiByZXR1cm4gY3JlYXRlU3RlZXJlZFdoZWVsU3lzdGVtKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkxPQ09NT1RJT05fU1lTVEVNOiByZXR1cm4gY3JlYXRlTG9jb21vdGlvblN5c3RlbSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5JTUFHRV9TRU5TT1JfU1lTVEVNOiByZXR1cm4gY3JlYXRlSW1hZ2VTZW5zb3JTeXN0ZW0oKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTTogcmV0dXJuIGNyZWF0ZUNhbWVyYVN5c3RlbSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5PQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU06IHJldHVybiBjcmVhdGVPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0oKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU06IHJldHVybiBjcmVhdGVPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU06IHJldHVybiBjcmVhdGVMaWRhclN5c3RlbSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTTogcmV0dXJuIGNyZWF0ZUxvY2FsaXphdGlvblNlbnNvclN5c3RlbSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5HUFNfU1lTVEVNOiByZXR1cm4gY3JlYXRlR1BTU3lzdGVtKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkFMR09SSVRITV9MSUJSQVJZOiByZXR1cm4gY3JlYXRlQWxnb3JpdGhtTGlicmFyeSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TRU5TT1JfRFJJVkVSOiByZXR1cm4gY3JlYXRlU2Vuc29yRHJpdmVyKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkVOVklST05NRU5UOiByZXR1cm4gY3JlYXRlRW52aXJvbm1lbnQoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQlVJTERJTkc6IHJldHVybiBjcmVhdGVCdWlsZGluZygpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVVJGQUNFOiByZXR1cm4gY3JlYXRlU3VyZmFjZSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5QTEFORVQ6IHJldHVybiBjcmVhdGVQbGFuZXQoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuTEFORF9TVVJGQUNFOiByZXR1cm4gY3JlYXRlTGFuZFN1cmZhY2UoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuRkxPT1I6IHJldHVybiBjcmVhdGVGbG9vcigpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5XQVRFUl9TVVJGQUNFOiByZXR1cm4gY3JlYXRlV2F0ZXJTdXJmYWNlKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkhVTUFOOiByZXR1cm4gY3JlYXRlSHVtYW4oKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUEVERVNUUklBTjogcmV0dXJuIGNyZWF0ZVBlZGVzdHJpYW4oKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1RBSVJTOiByZXR1cm4gY3JlYXRlU3RhaXJzKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlBMQVRGT1JNOiByZXR1cm4gY3JlYXRlUGxhdGZvcm0oKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuRVhURVJOQUxfTElCUkFSWTogcmV0dXJuIGNyZWF0ZUV4dGVybmFsTGlicmFyeSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5ST0JPVElDX01JRERMRVdBUkU6IHJldHVybiBjcmVhdGVSb2JvdGljTWlkZGxld2FyZSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5ST0JPVElDX1NJTVVMQVRPUjogcmV0dXJuIGNyZWF0ZVJvYm90aWNTaW11bGF0b3IoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ1lDQUJfVEs6IHJldHVybiBjcmVhdGVDeWNhYlRLKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkJMRU5ERVJfTU9SU0U6IHJldHVybiBjcmVhdGVCbGVuZGVyTW9yc2UoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuT05fUE9SVDogcmV0dXJuIGNyZWF0ZU9uUG9ydCgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5BTExPQ0FURTogcmV0dXJuIGNyZWF0ZUFsbG9jYXRlKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLklORVJUSUFMX01FQVNVUkVNRU5UX1VOSVRfU1lTVEVNOiByZXR1cm4gY3JlYXRlSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0oKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuSU5FUlRJQUxfTkFWSUdBVElPTl9TWVNURU06IHJldHVybiBjcmVhdGVJbmVydGlhbE5hdmlnYXRpb25TeXN0ZW0oKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuT0RPTUVUUllfU1lTVEVNOiByZXR1cm4gY3JlYXRlT2RvbWV0cnlTeXN0ZW0oKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuSU5GUkFfUkVEX1BST1hJTUVUUllfU1lTVEVNOiByZXR1cm4gY3JlYXRlSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkRFUExPWU1FTlRfUExBTjogcmV0dXJuIGNyZWF0ZURlcGxveW1lbnRQbGFuKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkdZUk9TQ09QRTogcmV0dXJuIGNyZWF0ZUd5cm9zY29wZSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5PTl9WQVJJQUJMRTogcmV0dXJuIGNyZWF0ZU9uVmFyaWFibGUoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ0hBU1NJUzogcmV0dXJuIGNyZWF0ZUNoYXNzaXMoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1VQUE9SVElOR19TVFJVQ1RVUkU6IHJldHVybiBjcmVhdGVTdXBwb3J0aW5nU3RydWN0dXJlKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLk1FQ0hBTklDQUxfTElOS0FHRTogcmV0dXJuIGNyZWF0ZU1lY2hhbmljYWxMaW5rYWdlKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkxFRzogcmV0dXJuIGNyZWF0ZUxlZygpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MT0NPTU9USU9OX0hBUkRXQVJFOiByZXR1cm4gY3JlYXRlTG9jb21vdGlvbkhhcmR3YXJlKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkFDVFVBVE9SX0hBUkRXQVJFOiByZXR1cm4gY3JlYXRlQWN0dWF0b3JIYXJkd2FyZSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5NT0JJTEVfUk9CT1Q6IHJldHVybiBjcmVhdGVNb2JpbGVSb2JvdCgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5NQU5JUFVMQVRPUjogcmV0dXJuIGNyZWF0ZU1hbmlwdWxhdG9yKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlBJTE9URURfU1lTVEVNOiByZXR1cm4gY3JlYXRlUGlsb3RlZFN5c3RlbSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5QT1dFUl9IQVJEV0FSRTogcmV0dXJuIGNyZWF0ZVBvd2VySGFyZHdhcmUoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU0VOU09SX0hBUkRXQVJFOiByZXR1cm4gY3JlYXRlU2Vuc29ySGFyZHdhcmUoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuR1JBU1BJTkdfSEFSRFdBUkU6IHJldHVybiBjcmVhdGVHcmFzcGluZ0hhcmR3YXJlKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfSEFSRFdBUkU6IHJldHVybiBjcmVhdGVTdGVlcmVkV2hlZWxIYXJkd2FyZSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5BUk06IHJldHVybiBjcmVhdGVBcm0oKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuTEVHX1NZU1RFTTogcmV0dXJuIGNyZWF0ZUxlZ1N5c3RlbSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5HUkFTUElOR19TWVNURU06IHJldHVybiBjcmVhdGVHcmFzcGluZ1N5c3RlbSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5XRUFQT05fU1lTVEVNOiByZXR1cm4gY3JlYXRlV2VhcG9uU3lzdGVtKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLk1BTl9NQUNISU5FX0lOVEVSRkFDRV9TWVNURU06IHJldHVybiBjcmVhdGVNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkNMT1NFRF9MT09QX0NPTlRST0xfU1lTVEVNOiByZXR1cm4gY3JlYXRlQ2xvc2VkTG9vcENvbnRyb2xTeXN0ZW0oKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuT1BFTl9MT09QX0NPTlRST0xfU1lTVEVNOiByZXR1cm4gY3JlYXRlT3Blbkxvb3BDb250cm9sU3lzdGVtKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlJPQk9USUNfSEVBRDogcmV0dXJuIGNyZWF0ZVJvYm90aWNIZWFkKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLk5BVklHQVRJT05fQ09NTUFORF9TWVNURU06IHJldHVybiBjcmVhdGVOYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5KT1lTVElDX05BVklHQVRJT05fU1lTVEVNOiByZXR1cm4gY3JlYXRlSm95c3RpY05hdmlnYXRpb25TeXN0ZW0oKTsKKwkJCWRlZmF1bHQ6CisJCQkJdGhyb3cgbmV3IElsbGVnYWxBcmd1bWVudEV4Y2VwdGlvbigiVGhlIGNsYXNzICciICsgZUNsYXNzLmdldE5hbWUoKSArICInIGlzIG5vdCBhIHZhbGlkIGNsYXNzaWZpZXIiKTsKKwkJfQorCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgY3JlYXRlRnJvbVN0cmluZyhFRGF0YVR5cGUgZURhdGFUeXBlLCBTdHJpbmcgaW5pdGlhbFZhbHVlKSB7CisJCXN3aXRjaCAoZURhdGFUeXBlLmdldENsYXNzaWZpZXJJRCgpKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNZTkNIUk9OSVpBVElPTl9LSU5EOgorCQkJCXJldHVybiBjcmVhdGVTeW5jaHJvbml6YXRpb25LaW5kRnJvbVN0cmluZyhlRGF0YVR5cGUsIGluaXRpYWxWYWx1ZSk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkRBVEFfRkxPV19ESVJFQ1RJT05fS0lORDoKKwkJCQlyZXR1cm4gY3JlYXRlRGF0YUZsb3dEaXJlY3Rpb25LaW5kRnJvbVN0cmluZyhlRGF0YVR5cGUsIGluaXRpYWxWYWx1ZSk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNFUlZJQ0VfRkxPV19LSU5EOgorCQkJCXJldHVybiBjcmVhdGVTZXJ2aWNlRmxvd0tpbmRGcm9tU3RyaW5nKGVEYXRhVHlwZSwgaW5pdGlhbFZhbHVlKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuVUdWX0tJTkQ6CisJCQkJcmV0dXJuIGNyZWF0ZVVHVktpbmRGcm9tU3RyaW5nKGVEYXRhVHlwZSwgaW5pdGlhbFZhbHVlKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19NSURETEVXQVJFX0tJTkQ6CisJCQkJcmV0dXJuIGNyZWF0ZVJvYm90aWNNaWRkbGV3YXJlS2luZEZyb21TdHJpbmcoZURhdGFUeXBlLCBpbml0aWFsVmFsdWUpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TSEFERToKKwkJCQlyZXR1cm4gY3JlYXRlU2hhZGVGcm9tU3RyaW5nKGVEYXRhVHlwZSwgaW5pdGlhbFZhbHVlKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuTU9CSUxFX1JPQk9UX0tJTkQ6CisJCQkJcmV0dXJuIGNyZWF0ZU1vYmlsZVJvYm90S2luZEZyb21TdHJpbmcoZURhdGFUeXBlLCBpbml0aWFsVmFsdWUpOworCQkJZGVmYXVsdDoKKwkJCQl0aHJvdyBuZXcgSWxsZWdhbEFyZ3VtZW50RXhjZXB0aW9uKCJUaGUgZGF0YXR5cGUgJyIgKyBlRGF0YVR5cGUuZ2V0TmFtZSgpICsgIicgaXMgbm90IGEgdmFsaWQgY2xhc3NpZmllciIpOworCQl9CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyBjb252ZXJ0VG9TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgT2JqZWN0IGluc3RhbmNlVmFsdWUpIHsKKwkJc3dpdGNoIChlRGF0YVR5cGUuZ2V0Q2xhc3NpZmllcklEKCkpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1lOQ0hST05JWkFUSU9OX0tJTkQ6CisJCQkJcmV0dXJuIGNvbnZlcnRTeW5jaHJvbml6YXRpb25LaW5kVG9TdHJpbmcoZURhdGFUeXBlLCBpbnN0YW5jZVZhbHVlKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuREFUQV9GTE9XX0RJUkVDVElPTl9LSU5EOgorCQkJCXJldHVybiBjb252ZXJ0RGF0YUZsb3dEaXJlY3Rpb25LaW5kVG9TdHJpbmcoZURhdGFUeXBlLCBpbnN0YW5jZVZhbHVlKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU0VSVklDRV9GTE9XX0tJTkQ6CisJCQkJcmV0dXJuIGNvbnZlcnRTZXJ2aWNlRmxvd0tpbmRUb1N0cmluZyhlRGF0YVR5cGUsIGluc3RhbmNlVmFsdWUpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5VR1ZfS0lORDoKKwkJCQlyZXR1cm4gY29udmVydFVHVktpbmRUb1N0cmluZyhlRGF0YVR5cGUsIGluc3RhbmNlVmFsdWUpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5ST0JPVElDX01JRERMRVdBUkVfS0lORDoKKwkJCQlyZXR1cm4gY29udmVydFJvYm90aWNNaWRkbGV3YXJlS2luZFRvU3RyaW5nKGVEYXRhVHlwZSwgaW5zdGFuY2VWYWx1ZSk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNIQURFOgorCQkJCXJldHVybiBjb252ZXJ0U2hhZGVUb1N0cmluZyhlRGF0YVR5cGUsIGluc3RhbmNlVmFsdWUpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5NT0JJTEVfUk9CT1RfS0lORDoKKwkJCQlyZXR1cm4gY29udmVydE1vYmlsZVJvYm90S2luZFRvU3RyaW5nKGVEYXRhVHlwZSwgaW5zdGFuY2VWYWx1ZSk7CisJCQlkZWZhdWx0OgorCQkJCXRocm93IG5ldyBJbGxlZ2FsQXJndW1lbnRFeGNlcHRpb24oIlRoZSBkYXRhdHlwZSAnIiArIGVEYXRhVHlwZS5nZXROYW1lKCkgKyAiJyBpcyBub3QgYSB2YWxpZCBjbGFzc2lmaWVyIik7CisJCX0KKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVHJhbnNpdGlvbiBjcmVhdGVUcmFuc2l0aW9uKCkgeworCQlUcmFuc2l0aW9uSW1wbCB0cmFuc2l0aW9uID0gbmV3IFRyYW5zaXRpb25JbXBsKCk7CisJCXJldHVybiB0cmFuc2l0aW9uOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBbGdvcml0aG0gY3JlYXRlQWxnb3JpdGhtKCkgeworCQlBbGdvcml0aG1JbXBsIGFsZ29yaXRobSA9IG5ldyBBbGdvcml0aG1JbXBsKCk7CisJCXJldHVybiBhbGdvcml0aG07CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0YXRlIGNyZWF0ZVN0YXRlKCkgeworCQlTdGF0ZUltcGwgc3RhdGUgPSBuZXcgU3RhdGVJbXBsKCk7CisJCXJldHVybiBzdGF0ZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWN0dWF0ZWRKb2ludCBjcmVhdGVBY3R1YXRlZEpvaW50KCkgeworCQlBY3R1YXRlZEpvaW50SW1wbCBhY3R1YXRlZEpvaW50ID0gbmV3IEFjdHVhdGVkSm9pbnRJbXBsKCk7CisJCXJldHVybiBhY3R1YXRlZEpvaW50OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBKb2ludCBjcmVhdGVKb2ludCgpIHsKKwkJSm9pbnRJbXBsIGpvaW50ID0gbmV3IEpvaW50SW1wbCgpOworCQlyZXR1cm4gam9pbnQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIENvbXBsZXRlQm9uZGluZyBjcmVhdGVDb21wbGV0ZUJvbmRpbmcoKSB7CisJCUNvbXBsZXRlQm9uZGluZ0ltcGwgY29tcGxldGVCb25kaW5nID0gbmV3IENvbXBsZXRlQm9uZGluZ0ltcGwoKTsKKwkJcmV0dXJuIGNvbXBsZXRlQm9uZGluZzsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUm9ib3QgY3JlYXRlUm9ib3QoKSB7CisJCVJvYm90SW1wbCByb2JvdCA9IG5ldyBSb2JvdEltcGwoKTsKKwkJcmV0dXJuIHJvYm90OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtIGNyZWF0ZVN5c3RlbSgpIHsKKwkJU3lzdGVtSW1wbCBzeXN0ZW0gPSBuZXcgU3lzdGVtSW1wbCgpOworCQlyZXR1cm4gc3lzdGVtOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZ2VudCBjcmVhdGVBZ2VudCgpIHsKKwkJQWdlbnRJbXBsIGFnZW50ID0gbmV3IEFnZW50SW1wbCgpOworCQlyZXR1cm4gYWdlbnQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFBoeXNpY2FsT2JqZWN0IGNyZWF0ZVBoeXNpY2FsT2JqZWN0KCkgeworCQlQaHlzaWNhbE9iamVjdEltcGwgcGh5c2ljYWxPYmplY3QgPSBuZXcgUGh5c2ljYWxPYmplY3RJbXBsKCk7CisJCXJldHVybiBwaHlzaWNhbE9iamVjdDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRW52aXJvbm1lbnQgY3JlYXRlRW52aXJvbm1lbnQoKSB7CisJCUVudmlyb25tZW50SW1wbCBlbnZpcm9ubWVudCA9IG5ldyBFbnZpcm9ubWVudEltcGwoKTsKKwkJcmV0dXJuIGVudmlyb25tZW50OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTdXJmYWNlIGNyZWF0ZVN1cmZhY2UoKSB7CisJCVN1cmZhY2VJbXBsIHN1cmZhY2UgPSBuZXcgU3VyZmFjZUltcGwoKTsKKwkJcmV0dXJuIHN1cmZhY2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIERhdGFGbG93UG9ydCBjcmVhdGVEYXRhRmxvd1BvcnQoKSB7CisJCURhdGFGbG93UG9ydEltcGwgZGF0YUZsb3dQb3J0ID0gbmV3IERhdGFGbG93UG9ydEltcGwoKTsKKwkJcmV0dXJuIGRhdGFGbG93UG9ydDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU2VydmljZVBvcnQgY3JlYXRlU2VydmljZVBvcnQoKSB7CisJCVNlcnZpY2VQb3J0SW1wbCBzZXJ2aWNlUG9ydCA9IG5ldyBTZXJ2aWNlUG9ydEltcGwoKTsKKwkJcmV0dXJuIHNlcnZpY2VQb3J0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBY3R1YXRvclN5c3RlbSBjcmVhdGVBY3R1YXRvclN5c3RlbSgpIHsKKwkJQWN0dWF0b3JTeXN0ZW1JbXBsIGFjdHVhdG9yU3lzdGVtID0gbmV3IEFjdHVhdG9yU3lzdGVtSW1wbCgpOworCQlyZXR1cm4gYWN0dWF0b3JTeXN0ZW07CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFJvYm90aWNTeXN0ZW0gY3JlYXRlUm9ib3RpY1N5c3RlbSgpIHsKKwkJUm9ib3RpY1N5c3RlbUltcGwgcm9ib3RpY1N5c3RlbSA9IG5ldyBSb2JvdGljU3lzdGVtSW1wbCgpOworCQlyZXR1cm4gcm9ib3RpY1N5c3RlbTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQ3liZXJQaHlzaWNhbFN5c3RlbSBjcmVhdGVDeWJlclBoeXNpY2FsU3lzdGVtKCkgeworCQlDeWJlclBoeXNpY2FsU3lzdGVtSW1wbCBjeWJlclBoeXNpY2FsU3lzdGVtID0gbmV3IEN5YmVyUGh5c2ljYWxTeXN0ZW1JbXBsKCk7CisJCXJldHVybiBjeWJlclBoeXNpY2FsU3lzdGVtOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTZW5zb3JTeXN0ZW0gY3JlYXRlU2Vuc29yU3lzdGVtKCkgeworCQlTZW5zb3JTeXN0ZW1JbXBsIHNlbnNvclN5c3RlbSA9IG5ldyBTZW5zb3JTeXN0ZW1JbXBsKCk7CisJCXJldHVybiBzZW5zb3JTeXN0ZW07CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEhhcmR3YXJlIGNyZWF0ZUhhcmR3YXJlKCkgeworCQlIYXJkd2FyZUltcGwgaGFyZHdhcmUgPSBuZXcgSGFyZHdhcmVJbXBsKCk7CisJCXJldHVybiBoYXJkd2FyZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU29mdHdhcmUgY3JlYXRlU29mdHdhcmUoKSB7CisJCVNvZnR3YXJlSW1wbCBzb2Z0d2FyZSA9IG5ldyBTb2Z0d2FyZUltcGwoKTsKKwkJcmV0dXJuIHNvZnR3YXJlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFbmdpbmVTeXN0ZW0gY3JlYXRlRW5naW5lU3lzdGVtKCkgeworCQlFbmdpbmVTeXN0ZW1JbXBsIGVuZ2luZVN5c3RlbSA9IG5ldyBFbmdpbmVTeXN0ZW1JbXBsKCk7CisJCXJldHVybiBlbmdpbmVTeXN0ZW07CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0ZWVyZWRXaGVlbFN5c3RlbSBjcmVhdGVTdGVlcmVkV2hlZWxTeXN0ZW0oKSB7CisJCVN0ZWVyZWRXaGVlbFN5c3RlbUltcGwgc3RlZXJlZFdoZWVsU3lzdGVtID0gbmV3IFN0ZWVyZWRXaGVlbFN5c3RlbUltcGwoKTsKKwkJcmV0dXJuIHN0ZWVyZWRXaGVlbFN5c3RlbTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTG9jb21vdGlvblN5c3RlbSBjcmVhdGVMb2NvbW90aW9uU3lzdGVtKCkgeworCQlMb2NvbW90aW9uU3lzdGVtSW1wbCBsb2NvbW90aW9uU3lzdGVtID0gbmV3IExvY29tb3Rpb25TeXN0ZW1JbXBsKCk7CisJCXJldHVybiBsb2NvbW90aW9uU3lzdGVtOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBJbWFnZVNlbnNvclN5c3RlbSBjcmVhdGVJbWFnZVNlbnNvclN5c3RlbSgpIHsKKwkJSW1hZ2VTZW5zb3JTeXN0ZW1JbXBsIGltYWdlU2Vuc29yU3lzdGVtID0gbmV3IEltYWdlU2Vuc29yU3lzdGVtSW1wbCgpOworCQlyZXR1cm4gaW1hZ2VTZW5zb3JTeXN0ZW07CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIENhbWVyYVN5c3RlbSBjcmVhdGVDYW1lcmFTeXN0ZW0oKSB7CisJCUNhbWVyYVN5c3RlbUltcGwgY2FtZXJhU3lzdGVtID0gbmV3IENhbWVyYVN5c3RlbUltcGwoKTsKKwkJcmV0dXJuIGNhbWVyYVN5c3RlbTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtIGNyZWF0ZU9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbSgpIHsKKwkJT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbCBvYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0gPSBuZXcgT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtSW1wbCgpOworCQlyZXR1cm4gb2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSBjcmVhdGVPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSgpIHsKKwkJT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1JbXBsIG9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtID0gbmV3IE9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtSW1wbCgpOworCQlyZXR1cm4gb2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW07CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIExpZGFyU3lzdGVtIGNyZWF0ZUxpZGFyU3lzdGVtKCkgeworCQlMaWRhclN5c3RlbUltcGwgbGlkYXJTeXN0ZW0gPSBuZXcgTGlkYXJTeXN0ZW1JbXBsKCk7CisJCXJldHVybiBsaWRhclN5c3RlbTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtIGNyZWF0ZUxvY2FsaXphdGlvblNlbnNvclN5c3RlbSgpIHsKKwkJTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbCBsb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0gPSBuZXcgTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtSW1wbCgpOworCQlyZXR1cm4gbG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBHUFNTeXN0ZW0gY3JlYXRlR1BTU3lzdGVtKCkgeworCQlHUFNTeXN0ZW1JbXBsIGdwc1N5c3RlbSA9IG5ldyBHUFNTeXN0ZW1JbXBsKCk7CisJCXJldHVybiBncHNTeXN0ZW07CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFsZ29yaXRobUxpYnJhcnkgY3JlYXRlQWxnb3JpdGhtTGlicmFyeSgpIHsKKwkJQWxnb3JpdGhtTGlicmFyeUltcGwgYWxnb3JpdGhtTGlicmFyeSA9IG5ldyBBbGdvcml0aG1MaWJyYXJ5SW1wbCgpOworCQlyZXR1cm4gYWxnb3JpdGhtTGlicmFyeTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU2Vuc29yRHJpdmVyIGNyZWF0ZVNlbnNvckRyaXZlcigpIHsKKwkJU2Vuc29yRHJpdmVySW1wbCBzZW5zb3JEcml2ZXIgPSBuZXcgU2Vuc29yRHJpdmVySW1wbCgpOworCQlyZXR1cm4gc2Vuc29yRHJpdmVyOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBCdWlsZGluZyBjcmVhdGVCdWlsZGluZygpIHsKKwkJQnVpbGRpbmdJbXBsIGJ1aWxkaW5nID0gbmV3IEJ1aWxkaW5nSW1wbCgpOworCQlyZXR1cm4gYnVpbGRpbmc7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFBsYW5ldCBjcmVhdGVQbGFuZXQoKSB7CisJCVBsYW5ldEltcGwgcGxhbmV0ID0gbmV3IFBsYW5ldEltcGwoKTsKKwkJcmV0dXJuIHBsYW5ldDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTGFuZFN1cmZhY2UgY3JlYXRlTGFuZFN1cmZhY2UoKSB7CisJCUxhbmRTdXJmYWNlSW1wbCBsYW5kU3VyZmFjZSA9IG5ldyBMYW5kU3VyZmFjZUltcGwoKTsKKwkJcmV0dXJuIGxhbmRTdXJmYWNlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBGbG9vciBjcmVhdGVGbG9vcigpIHsKKwkJRmxvb3JJbXBsIGZsb29yID0gbmV3IEZsb29ySW1wbCgpOworCQlyZXR1cm4gZmxvb3I7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFdhdGVyU3VyZmFjZSBjcmVhdGVXYXRlclN1cmZhY2UoKSB7CisJCVdhdGVyU3VyZmFjZUltcGwgd2F0ZXJTdXJmYWNlID0gbmV3IFdhdGVyU3VyZmFjZUltcGwoKTsKKwkJcmV0dXJuIHdhdGVyU3VyZmFjZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgSHVtYW4gY3JlYXRlSHVtYW4oKSB7CisJCUh1bWFuSW1wbCBodW1hbiA9IG5ldyBIdW1hbkltcGwoKTsKKwkJcmV0dXJuIGh1bWFuOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBQZWRlc3RyaWFuIGNyZWF0ZVBlZGVzdHJpYW4oKSB7CisJCVBlZGVzdHJpYW5JbXBsIHBlZGVzdHJpYW4gPSBuZXcgUGVkZXN0cmlhbkltcGwoKTsKKwkJcmV0dXJuIHBlZGVzdHJpYW47CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0YWlycyBjcmVhdGVTdGFpcnMoKSB7CisJCVN0YWlyc0ltcGwgc3RhaXJzID0gbmV3IFN0YWlyc0ltcGwoKTsKKwkJcmV0dXJuIHN0YWlyczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUGxhdGZvcm0gY3JlYXRlUGxhdGZvcm0oKSB7CisJCVBsYXRmb3JtSW1wbCBwbGF0Zm9ybSA9IG5ldyBQbGF0Zm9ybUltcGwoKTsKKwkJcmV0dXJuIHBsYXRmb3JtOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFeHRlcm5hbExpYnJhcnkgY3JlYXRlRXh0ZXJuYWxMaWJyYXJ5KCkgeworCQlFeHRlcm5hbExpYnJhcnlJbXBsIGV4dGVybmFsTGlicmFyeSA9IG5ldyBFeHRlcm5hbExpYnJhcnlJbXBsKCk7CisJCXJldHVybiBleHRlcm5hbExpYnJhcnk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFJvYm90aWNNaWRkbGV3YXJlIGNyZWF0ZVJvYm90aWNNaWRkbGV3YXJlKCkgeworCQlSb2JvdGljTWlkZGxld2FyZUltcGwgcm9ib3RpY01pZGRsZXdhcmUgPSBuZXcgUm9ib3RpY01pZGRsZXdhcmVJbXBsKCk7CisJCXJldHVybiByb2JvdGljTWlkZGxld2FyZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUm9ib3RpY1NpbXVsYXRvciBjcmVhdGVSb2JvdGljU2ltdWxhdG9yKCkgeworCQlSb2JvdGljU2ltdWxhdG9ySW1wbCByb2JvdGljU2ltdWxhdG9yID0gbmV3IFJvYm90aWNTaW11bGF0b3JJbXBsKCk7CisJCXJldHVybiByb2JvdGljU2ltdWxhdG9yOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBDeWNhYlRLIGNyZWF0ZUN5Y2FiVEsoKSB7CisJCUN5Y2FiVEtJbXBsIGN5Y2FiVEsgPSBuZXcgQ3ljYWJUS0ltcGwoKTsKKwkJcmV0dXJuIGN5Y2FiVEs7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEJsZW5kZXJNb3JzZSBjcmVhdGVCbGVuZGVyTW9yc2UoKSB7CisJCUJsZW5kZXJNb3JzZUltcGwgYmxlbmRlck1vcnNlID0gbmV3IEJsZW5kZXJNb3JzZUltcGwoKTsKKwkJcmV0dXJuIGJsZW5kZXJNb3JzZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT25Qb3J0IGNyZWF0ZU9uUG9ydCgpIHsKKwkJT25Qb3J0SW1wbCBvblBvcnQgPSBuZXcgT25Qb3J0SW1wbCgpOworCQlyZXR1cm4gb25Qb3J0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBbGxvY2F0ZSBjcmVhdGVBbGxvY2F0ZSgpIHsKKwkJQWxsb2NhdGVJbXBsIGFsbG9jYXRlID0gbmV3IEFsbG9jYXRlSW1wbCgpOworCQlyZXR1cm4gYWxsb2NhdGU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtIGNyZWF0ZUluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtKCkgeworCQlJbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbUltcGwgaW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0gPSBuZXcgSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW1JbXBsKCk7CisJCXJldHVybiBpbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgSW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtIGNyZWF0ZUluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbSgpIHsKKwkJSW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtSW1wbCBpbmVydGlhbE5hdmlnYXRpb25TeXN0ZW0gPSBuZXcgSW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtSW1wbCgpOworCQlyZXR1cm4gaW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPZG9tZXRyeVN5c3RlbSBjcmVhdGVPZG9tZXRyeVN5c3RlbSgpIHsKKwkJT2RvbWV0cnlTeXN0ZW1JbXBsIG9kb21ldHJ5U3lzdGVtID0gbmV3IE9kb21ldHJ5U3lzdGVtSW1wbCgpOworCQlyZXR1cm4gb2RvbWV0cnlTeXN0ZW07CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEluZnJhUmVkUHJveGltZXRyeVN5c3RlbSBjcmVhdGVJbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW0oKSB7CisJCUluZnJhUmVkUHJveGltZXRyeVN5c3RlbUltcGwgaW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtID0gbmV3IEluZnJhUmVkUHJveGltZXRyeVN5c3RlbUltcGwoKTsKKwkJcmV0dXJuIGluZnJhUmVkUHJveGltZXRyeVN5c3RlbTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRGVwbG95bWVudFBsYW4gY3JlYXRlRGVwbG95bWVudFBsYW4oKSB7CisJCURlcGxveW1lbnRQbGFuSW1wbCBkZXBsb3ltZW50UGxhbiA9IG5ldyBEZXBsb3ltZW50UGxhbkltcGwoKTsKKwkJcmV0dXJuIGRlcGxveW1lbnRQbGFuOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBHeXJvc2NvcGUgY3JlYXRlR3lyb3Njb3BlKCkgeworCQlHeXJvc2NvcGVJbXBsIGd5cm9zY29wZSA9IG5ldyBHeXJvc2NvcGVJbXBsKCk7CisJCXJldHVybiBneXJvc2NvcGU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9uVmFyaWFibGUgY3JlYXRlT25WYXJpYWJsZSgpIHsKKwkJT25WYXJpYWJsZUltcGwgb25WYXJpYWJsZSA9IG5ldyBPblZhcmlhYmxlSW1wbCgpOworCQlyZXR1cm4gb25WYXJpYWJsZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQ2hhc3NpcyBjcmVhdGVDaGFzc2lzKCkgeworCQlDaGFzc2lzSW1wbCBjaGFzc2lzID0gbmV3IENoYXNzaXNJbXBsKCk7CisJCXJldHVybiBjaGFzc2lzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTdXBwb3J0aW5nU3RydWN0dXJlIGNyZWF0ZVN1cHBvcnRpbmdTdHJ1Y3R1cmUoKSB7CisJCVN1cHBvcnRpbmdTdHJ1Y3R1cmVJbXBsIHN1cHBvcnRpbmdTdHJ1Y3R1cmUgPSBuZXcgU3VwcG9ydGluZ1N0cnVjdHVyZUltcGwoKTsKKwkJcmV0dXJuIHN1cHBvcnRpbmdTdHJ1Y3R1cmU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE1lY2hhbmljYWxMaW5rYWdlIGNyZWF0ZU1lY2hhbmljYWxMaW5rYWdlKCkgeworCQlNZWNoYW5pY2FsTGlua2FnZUltcGwgbWVjaGFuaWNhbExpbmthZ2UgPSBuZXcgTWVjaGFuaWNhbExpbmthZ2VJbXBsKCk7CisJCXJldHVybiBtZWNoYW5pY2FsTGlua2FnZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTGVnIGNyZWF0ZUxlZygpIHsKKwkJTGVnSW1wbCBsZWcgPSBuZXcgTGVnSW1wbCgpOworCQlyZXR1cm4gbGVnOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBMb2NvbW90aW9uSGFyZHdhcmUgY3JlYXRlTG9jb21vdGlvbkhhcmR3YXJlKCkgeworCQlMb2NvbW90aW9uSGFyZHdhcmVJbXBsIGxvY29tb3Rpb25IYXJkd2FyZSA9IG5ldyBMb2NvbW90aW9uSGFyZHdhcmVJbXBsKCk7CisJCXJldHVybiBsb2NvbW90aW9uSGFyZHdhcmU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFjdHVhdG9ySGFyZHdhcmUgY3JlYXRlQWN0dWF0b3JIYXJkd2FyZSgpIHsKKwkJQWN0dWF0b3JIYXJkd2FyZUltcGwgYWN0dWF0b3JIYXJkd2FyZSA9IG5ldyBBY3R1YXRvckhhcmR3YXJlSW1wbCgpOworCQlyZXR1cm4gYWN0dWF0b3JIYXJkd2FyZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTW9iaWxlUm9ib3QgY3JlYXRlTW9iaWxlUm9ib3QoKSB7CisJCU1vYmlsZVJvYm90SW1wbCBtb2JpbGVSb2JvdCA9IG5ldyBNb2JpbGVSb2JvdEltcGwoKTsKKwkJcmV0dXJuIG1vYmlsZVJvYm90OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBNYW5pcHVsYXRvciBjcmVhdGVNYW5pcHVsYXRvcigpIHsKKwkJTWFuaXB1bGF0b3JJbXBsIG1hbmlwdWxhdG9yID0gbmV3IE1hbmlwdWxhdG9ySW1wbCgpOworCQlyZXR1cm4gbWFuaXB1bGF0b3I7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFBpbG90ZWRTeXN0ZW0gY3JlYXRlUGlsb3RlZFN5c3RlbSgpIHsKKwkJUGlsb3RlZFN5c3RlbUltcGwgcGlsb3RlZFN5c3RlbSA9IG5ldyBQaWxvdGVkU3lzdGVtSW1wbCgpOworCQlyZXR1cm4gcGlsb3RlZFN5c3RlbTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUG93ZXJIYXJkd2FyZSBjcmVhdGVQb3dlckhhcmR3YXJlKCkgeworCQlQb3dlckhhcmR3YXJlSW1wbCBwb3dlckhhcmR3YXJlID0gbmV3IFBvd2VySGFyZHdhcmVJbXBsKCk7CisJCXJldHVybiBwb3dlckhhcmR3YXJlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTZW5zb3JIYXJkd2FyZSBjcmVhdGVTZW5zb3JIYXJkd2FyZSgpIHsKKwkJU2Vuc29ySGFyZHdhcmVJbXBsIHNlbnNvckhhcmR3YXJlID0gbmV3IFNlbnNvckhhcmR3YXJlSW1wbCgpOworCQlyZXR1cm4gc2Vuc29ySGFyZHdhcmU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEdyYXNwaW5nSGFyZHdhcmUgY3JlYXRlR3Jhc3BpbmdIYXJkd2FyZSgpIHsKKwkJR3Jhc3BpbmdIYXJkd2FyZUltcGwgZ3Jhc3BpbmdIYXJkd2FyZSA9IG5ldyBHcmFzcGluZ0hhcmR3YXJlSW1wbCgpOworCQlyZXR1cm4gZ3Jhc3BpbmdIYXJkd2FyZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3RlZXJlZFdoZWVsSGFyZHdhcmUgY3JlYXRlU3RlZXJlZFdoZWVsSGFyZHdhcmUoKSB7CisJCVN0ZWVyZWRXaGVlbEhhcmR3YXJlSW1wbCBzdGVlcmVkV2hlZWxIYXJkd2FyZSA9IG5ldyBTdGVlcmVkV2hlZWxIYXJkd2FyZUltcGwoKTsKKwkJcmV0dXJuIHN0ZWVyZWRXaGVlbEhhcmR3YXJlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBcm0gY3JlYXRlQXJtKCkgeworCQlBcm1JbXBsIGFybSA9IG5ldyBBcm1JbXBsKCk7CisJCXJldHVybiBhcm07CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIExlZ1N5c3RlbSBjcmVhdGVMZWdTeXN0ZW0oKSB7CisJCUxlZ1N5c3RlbUltcGwgbGVnU3lzdGVtID0gbmV3IExlZ1N5c3RlbUltcGwoKTsKKwkJcmV0dXJuIGxlZ1N5c3RlbTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgR3Jhc3BpbmdTeXN0ZW0gY3JlYXRlR3Jhc3BpbmdTeXN0ZW0oKSB7CisJCUdyYXNwaW5nU3lzdGVtSW1wbCBncmFzcGluZ1N5c3RlbSA9IG5ldyBHcmFzcGluZ1N5c3RlbUltcGwoKTsKKwkJcmV0dXJuIGdyYXNwaW5nU3lzdGVtOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBXZWFwb25TeXN0ZW0gY3JlYXRlV2VhcG9uU3lzdGVtKCkgeworCQlXZWFwb25TeXN0ZW1JbXBsIHdlYXBvblN5c3RlbSA9IG5ldyBXZWFwb25TeXN0ZW1JbXBsKCk7CisJCXJldHVybiB3ZWFwb25TeXN0ZW07CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0gY3JlYXRlTWFuTWFjaGluZUludGVyZmFjZVN5c3RlbSgpIHsKKwkJTWFuTWFjaGluZUludGVyZmFjZVN5c3RlbUltcGwgbWFuTWFjaGluZUludGVyZmFjZVN5c3RlbSA9IG5ldyBNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtSW1wbCgpOworCQlyZXR1cm4gbWFuTWFjaGluZUludGVyZmFjZVN5c3RlbTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQ2xvc2VkTG9vcENvbnRyb2xTeXN0ZW0gY3JlYXRlQ2xvc2VkTG9vcENvbnRyb2xTeXN0ZW0oKSB7CisJCUNsb3NlZExvb3BDb250cm9sU3lzdGVtSW1wbCBjbG9zZWRMb29wQ29udHJvbFN5c3RlbSA9IG5ldyBDbG9zZWRMb29wQ29udHJvbFN5c3RlbUltcGwoKTsKKwkJcmV0dXJuIGNsb3NlZExvb3BDb250cm9sU3lzdGVtOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPcGVuTG9vcENvbnRyb2xTeXN0ZW0gY3JlYXRlT3Blbkxvb3BDb250cm9sU3lzdGVtKCkgeworCQlPcGVuTG9vcENvbnRyb2xTeXN0ZW1JbXBsIG9wZW5Mb29wQ29udHJvbFN5c3RlbSA9IG5ldyBPcGVuTG9vcENvbnRyb2xTeXN0ZW1JbXBsKCk7CisJCXJldHVybiBvcGVuTG9vcENvbnRyb2xTeXN0ZW07CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFJvYm90aWNIZWFkIGNyZWF0ZVJvYm90aWNIZWFkKCkgeworCQlSb2JvdGljSGVhZEltcGwgcm9ib3RpY0hlYWQgPSBuZXcgUm9ib3RpY0hlYWRJbXBsKCk7CisJCXJldHVybiByb2JvdGljSGVhZDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0gY3JlYXRlTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0oKSB7CisJCU5hdmlnYXRpb25Db21tYW5kU3lzdGVtSW1wbCBuYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbSA9IG5ldyBOYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbUltcGwoKTsKKwkJcmV0dXJuIG5hdmlnYXRpb25Db21tYW5kU3lzdGVtOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBKb3lzdGljTmF2aWdhdGlvblN5c3RlbSBjcmVhdGVKb3lzdGljTmF2aWdhdGlvblN5c3RlbSgpIHsKKwkJSm95c3RpY05hdmlnYXRpb25TeXN0ZW1JbXBsIGpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtID0gbmV3IEpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtSW1wbCgpOworCQlyZXR1cm4gam95c3RpY05hdmlnYXRpb25TeXN0ZW07CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN5bmNocm9uaXphdGlvbktpbmQgY3JlYXRlU3luY2hyb25pemF0aW9uS2luZEZyb21TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgU3RyaW5nIGluaXRpYWxWYWx1ZSkgeworCQlTeW5jaHJvbml6YXRpb25LaW5kIHJlc3VsdCA9IFN5bmNocm9uaXphdGlvbktpbmQuZ2V0KGluaXRpYWxWYWx1ZSk7CisJCWlmIChyZXN1bHQgPT0gbnVsbCkgdGhyb3cgbmV3IElsbGVnYWxBcmd1bWVudEV4Y2VwdGlvbigiVGhlIHZhbHVlICciICsgaW5pdGlhbFZhbHVlICsgIicgaXMgbm90IGEgdmFsaWQgZW51bWVyYXRvciBvZiAnIiArIGVEYXRhVHlwZS5nZXROYW1lKCkgKyAiJyIpOworCQlyZXR1cm4gcmVzdWx0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTdHJpbmcgY29udmVydFN5bmNocm9uaXphdGlvbktpbmRUb1N0cmluZyhFRGF0YVR5cGUgZURhdGFUeXBlLCBPYmplY3QgaW5zdGFuY2VWYWx1ZSkgeworCQlyZXR1cm4gaW5zdGFuY2VWYWx1ZSA9PSBudWxsID8gbnVsbCA6IGluc3RhbmNlVmFsdWUudG9TdHJpbmcoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRGF0YUZsb3dEaXJlY3Rpb25LaW5kIGNyZWF0ZURhdGFGbG93RGlyZWN0aW9uS2luZEZyb21TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgU3RyaW5nIGluaXRpYWxWYWx1ZSkgeworCQlEYXRhRmxvd0RpcmVjdGlvbktpbmQgcmVzdWx0ID0gRGF0YUZsb3dEaXJlY3Rpb25LaW5kLmdldChpbml0aWFsVmFsdWUpOworCQlpZiAocmVzdWx0ID09IG51bGwpIHRocm93IG5ldyBJbGxlZ2FsQXJndW1lbnRFeGNlcHRpb24oIlRoZSB2YWx1ZSAnIiArIGluaXRpYWxWYWx1ZSArICInIGlzIG5vdCBhIHZhbGlkIGVudW1lcmF0b3Igb2YgJyIgKyBlRGF0YVR5cGUuZ2V0TmFtZSgpICsgIiciKTsKKwkJcmV0dXJuIHJlc3VsdDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3RyaW5nIGNvbnZlcnREYXRhRmxvd0RpcmVjdGlvbktpbmRUb1N0cmluZyhFRGF0YVR5cGUgZURhdGFUeXBlLCBPYmplY3QgaW5zdGFuY2VWYWx1ZSkgeworCQlyZXR1cm4gaW5zdGFuY2VWYWx1ZSA9PSBudWxsID8gbnVsbCA6IGluc3RhbmNlVmFsdWUudG9TdHJpbmcoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU2VydmljZUZsb3dLaW5kIGNyZWF0ZVNlcnZpY2VGbG93S2luZEZyb21TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgU3RyaW5nIGluaXRpYWxWYWx1ZSkgeworCQlTZXJ2aWNlRmxvd0tpbmQgcmVzdWx0ID0gU2VydmljZUZsb3dLaW5kLmdldChpbml0aWFsVmFsdWUpOworCQlpZiAocmVzdWx0ID09IG51bGwpIHRocm93IG5ldyBJbGxlZ2FsQXJndW1lbnRFeGNlcHRpb24oIlRoZSB2YWx1ZSAnIiArIGluaXRpYWxWYWx1ZSArICInIGlzIG5vdCBhIHZhbGlkIGVudW1lcmF0b3Igb2YgJyIgKyBlRGF0YVR5cGUuZ2V0TmFtZSgpICsgIiciKTsKKwkJcmV0dXJuIHJlc3VsdDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3RyaW5nIGNvbnZlcnRTZXJ2aWNlRmxvd0tpbmRUb1N0cmluZyhFRGF0YVR5cGUgZURhdGFUeXBlLCBPYmplY3QgaW5zdGFuY2VWYWx1ZSkgeworCQlyZXR1cm4gaW5zdGFuY2VWYWx1ZSA9PSBudWxsID8gbnVsbCA6IGluc3RhbmNlVmFsdWUudG9TdHJpbmcoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVUdWS2luZCBjcmVhdGVVR1ZLaW5kRnJvbVN0cmluZyhFRGF0YVR5cGUgZURhdGFUeXBlLCBTdHJpbmcgaW5pdGlhbFZhbHVlKSB7CisJCVVHVktpbmQgcmVzdWx0ID0gVUdWS2luZC5nZXQoaW5pdGlhbFZhbHVlKTsKKwkJaWYgKHJlc3VsdCA9PSBudWxsKSB0aHJvdyBuZXcgSWxsZWdhbEFyZ3VtZW50RXhjZXB0aW9uKCJUaGUgdmFsdWUgJyIgKyBpbml0aWFsVmFsdWUgKyAiJyBpcyBub3QgYSB2YWxpZCBlbnVtZXJhdG9yIG9mICciICsgZURhdGFUeXBlLmdldE5hbWUoKSArICInIik7CisJCXJldHVybiByZXN1bHQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0cmluZyBjb252ZXJ0VUdWS2luZFRvU3RyaW5nKEVEYXRhVHlwZSBlRGF0YVR5cGUsIE9iamVjdCBpbnN0YW5jZVZhbHVlKSB7CisJCXJldHVybiBpbnN0YW5jZVZhbHVlID09IG51bGwgPyBudWxsIDogaW5zdGFuY2VWYWx1ZS50b1N0cmluZygpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBSb2JvdGljTWlkZGxld2FyZUtpbmQgY3JlYXRlUm9ib3RpY01pZGRsZXdhcmVLaW5kRnJvbVN0cmluZyhFRGF0YVR5cGUgZURhdGFUeXBlLCBTdHJpbmcgaW5pdGlhbFZhbHVlKSB7CisJCVJvYm90aWNNaWRkbGV3YXJlS2luZCByZXN1bHQgPSBSb2JvdGljTWlkZGxld2FyZUtpbmQuZ2V0KGluaXRpYWxWYWx1ZSk7CisJCWlmIChyZXN1bHQgPT0gbnVsbCkgdGhyb3cgbmV3IElsbGVnYWxBcmd1bWVudEV4Y2VwdGlvbigiVGhlIHZhbHVlICciICsgaW5pdGlhbFZhbHVlICsgIicgaXMgbm90IGEgdmFsaWQgZW51bWVyYXRvciBvZiAnIiArIGVEYXRhVHlwZS5nZXROYW1lKCkgKyAiJyIpOworCQlyZXR1cm4gcmVzdWx0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTdHJpbmcgY29udmVydFJvYm90aWNNaWRkbGV3YXJlS2luZFRvU3RyaW5nKEVEYXRhVHlwZSBlRGF0YVR5cGUsIE9iamVjdCBpbnN0YW5jZVZhbHVlKSB7CisJCXJldHVybiBpbnN0YW5jZVZhbHVlID09IG51bGwgPyBudWxsIDogaW5zdGFuY2VWYWx1ZS50b1N0cmluZygpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTaGFkZSBjcmVhdGVTaGFkZUZyb21TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgU3RyaW5nIGluaXRpYWxWYWx1ZSkgeworCQlTaGFkZSByZXN1bHQgPSBTaGFkZS5nZXQoaW5pdGlhbFZhbHVlKTsKKwkJaWYgKHJlc3VsdCA9PSBudWxsKSB0aHJvdyBuZXcgSWxsZWdhbEFyZ3VtZW50RXhjZXB0aW9uKCJUaGUgdmFsdWUgJyIgKyBpbml0aWFsVmFsdWUgKyAiJyBpcyBub3QgYSB2YWxpZCBlbnVtZXJhdG9yIG9mICciICsgZURhdGFUeXBlLmdldE5hbWUoKSArICInIik7CisJCXJldHVybiByZXN1bHQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0cmluZyBjb252ZXJ0U2hhZGVUb1N0cmluZyhFRGF0YVR5cGUgZURhdGFUeXBlLCBPYmplY3QgaW5zdGFuY2VWYWx1ZSkgeworCQlyZXR1cm4gaW5zdGFuY2VWYWx1ZSA9PSBudWxsID8gbnVsbCA6IGluc3RhbmNlVmFsdWUudG9TdHJpbmcoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTW9iaWxlUm9ib3RLaW5kIGNyZWF0ZU1vYmlsZVJvYm90S2luZEZyb21TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgU3RyaW5nIGluaXRpYWxWYWx1ZSkgeworCQlNb2JpbGVSb2JvdEtpbmQgcmVzdWx0ID0gTW9iaWxlUm9ib3RLaW5kLmdldChpbml0aWFsVmFsdWUpOworCQlpZiAocmVzdWx0ID09IG51bGwpIHRocm93IG5ldyBJbGxlZ2FsQXJndW1lbnRFeGNlcHRpb24oIlRoZSB2YWx1ZSAnIiArIGluaXRpYWxWYWx1ZSArICInIGlzIG5vdCBhIHZhbGlkIGVudW1lcmF0b3Igb2YgJyIgKyBlRGF0YVR5cGUuZ2V0TmFtZSgpICsgIiciKTsKKwkJcmV0dXJuIHJlc3VsdDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3RyaW5nIGNvbnZlcnRNb2JpbGVSb2JvdEtpbmRUb1N0cmluZyhFRGF0YVR5cGUgZURhdGFUeXBlLCBPYmplY3QgaW5zdGFuY2VWYWx1ZSkgeworCQlyZXR1cm4gaW5zdGFuY2VWYWx1ZSA9PSBudWxsID8gbnVsbCA6IGluc3RhbmNlVmFsdWUudG9TdHJpbmcoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUm9ib3RNTFBhY2thZ2UgZ2V0Um9ib3RNTFBhY2thZ2UoKSB7CisJCXJldHVybiAoUm9ib3RNTFBhY2thZ2UpZ2V0RVBhY2thZ2UoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBkZXByZWNhdGVkCisJICogQGdlbmVyYXRlZAorCSAqLworCUBEZXByZWNhdGVkCisJcHVibGljIHN0YXRpYyBSb2JvdE1MUGFja2FnZSBnZXRQYWNrYWdlKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuZUlOU1RBTkNFOworCX0KKworfSAvLyBSb2JvdE1MRmFjdG9yeUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RNTFBhY2thZ2VJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY0ZGUyMmUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90TUxQYWNrYWdlSW1wbC5qYXZhCkBAIC0wLDAgKzEsMzI3OSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRW51bTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRVBhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRlZEpvaW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRvckhhcmR3YXJlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRvclN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWdlbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtTGlicmFyeTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxsb2NhdGU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFybTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQmxlbmRlck1vcnNlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5CdWlsZGluZzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2FtZXJhU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DaGFzc2lzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DbG9zZWRMb29wQ29udHJvbFN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ29tcGxldGVCb25kaW5nOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DeWJlclBoeXNpY2FsU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DeWNhYlRLOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EYXRhRmxvd0RpcmVjdGlvbktpbmQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRhdGFGbG93UG9ydDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRGVwbG95bWVudFBsYW47CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkVuZ2luZVN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRW52aXJvbm1lbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkV4dGVybmFsTGlicmFyeTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRmxvb3I7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkdQU1N5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuR3Jhc3BpbmdIYXJkd2FyZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuR3Jhc3BpbmdTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkdyb3VuZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuR3lyb3Njb3BlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5IYXJkd2FyZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSHVtYW47CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkltYWdlU2Vuc29yU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5JbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5JbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkpvaW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Kb3lzdGljTmF2aWdhdGlvblN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGFuZFN1cmZhY2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxlZzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGVnU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MaWRhclN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Mb2NvbW90aW9uSGFyZHdhcmU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxvY29tb3Rpb25TeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk1hbmlwdWxhdG9yOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5NZWNoYW5pY2FsTGlua2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTW9iaWxlUm9ib3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk1vYmlsZVJvYm90S2luZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9kb21ldHJ5U3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PblBvcnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9uVmFyaWFibGU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9wZW5Mb29wQ29udHJvbFN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGVkZXN0cmlhbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGh5c2ljYWxPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBpbG90ZWRTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBsYW5ldDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGxhdGZvcm07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBvcnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBvd2VySGFyZHdhcmU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MRmFjdG9yeTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNIZWFkOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljTWlkZGxld2FyZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmVLaW5kOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljU2ltdWxhdG9yOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZW5zb3JEcml2ZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvckhhcmR3YXJlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZW5zb3JTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlcnZpY2VGbG93S2luZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2VydmljZVBvcnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNoYWRlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Tb2Z0d2FyZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RhaXJzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGF0ZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsSGFyZHdhcmU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0ZWVyZWRXaGVlbFN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VwcG9ydGluZ1N0cnVjdHVyZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3VyZmFjZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3luY2hyb25pemF0aW9uS2luZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVHJhbnNpdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVUdWS2luZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuV2F0ZXJTdXJmYWNlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5XZWFwb25TeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5OYXZfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuT2FycDFfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5pbXBsLk9hcnAxX2RhdGF0eXBlc1BhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnR5cGVzLlR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5VTUxQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgPGI+UGFja2FnZTwvYj4uCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIFJvYm90TUxQYWNrYWdlSW1wbCBleHRlbmRzIEVQYWNrYWdlSW1wbCBpbXBsZW1lbnRzIFJvYm90TUxQYWNrYWdlIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyB0cmFuc2l0aW9uRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGFsZ29yaXRobUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBzdGF0ZUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBhY3R1YXRlZEpvaW50RUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGpvaW50RUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGNvbXBsZXRlQm9uZGluZ0VDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyByb2JvdEVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBzeXN0ZW1FQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgYWdlbnRFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgcGh5c2ljYWxPYmplY3RFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgZW52aXJvbm1lbnRFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3Mgc3VyZmFjZUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBkYXRhRmxvd1BvcnRFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgcG9ydEVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBzZXJ2aWNlUG9ydEVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBhY3R1YXRvclN5c3RlbUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyByb2JvdGljU3lzdGVtRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGN5YmVyUGh5c2ljYWxTeXN0ZW1FQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3Mgc2Vuc29yU3lzdGVtRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGhhcmR3YXJlRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIHNvZnR3YXJlRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGVuZ2luZVN5c3RlbUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBzdGVlcmVkV2hlZWxTeXN0ZW1FQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgbG9jb21vdGlvblN5c3RlbUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBpbWFnZVNlbnNvclN5c3RlbUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBjYW1lcmFTeXN0ZW1FQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3Mgb2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIG9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGxpZGFyU3lzdGVtRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGxvY2FsaXphdGlvblNlbnNvclN5c3RlbUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBncHNTeXN0ZW1FQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgYWxnb3JpdGhtTGlicmFyeUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBzZW5zb3JEcml2ZXJFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgYnVpbGRpbmdFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgcGxhbmV0RUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGxhbmRTdXJmYWNlRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGdyb3VuZEVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBmbG9vckVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyB3YXRlclN1cmZhY2VFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgaHVtYW5FQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgcGVkZXN0cmlhbkVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBzdGFpcnNFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgcGxhdGZvcm1FQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgZXh0ZXJuYWxMaWJyYXJ5RUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIHJvYm90aWNNaWRkbGV3YXJlRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIHJvYm90aWNTaW11bGF0b3JFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgY3ljYWJUS0VDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBibGVuZGVyTW9yc2VFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3Mgb25Qb3J0RUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGFsbG9jYXRlRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBvZG9tZXRyeVN5c3RlbUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBpbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW1FQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgZGVwbG95bWVudFBsYW5FQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgZ3lyb3Njb3BlRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIG9uVmFyaWFibGVFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgY2hhc3Npc0VDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBzdXBwb3J0aW5nU3RydWN0dXJlRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIG1lY2hhbmljYWxMaW5rYWdlRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGxlZ0VDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBsb2NvbW90aW9uSGFyZHdhcmVFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgYWN0dWF0b3JIYXJkd2FyZUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBtb2JpbGVSb2JvdEVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBtYW5pcHVsYXRvckVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBwaWxvdGVkU3lzdGVtRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIHBvd2VySGFyZHdhcmVFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3Mgc2Vuc29ySGFyZHdhcmVFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgZ3Jhc3BpbmdIYXJkd2FyZUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBzdGVlcmVkV2hlZWxIYXJkd2FyZUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBhcm1FQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgbGVnU3lzdGVtRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGdyYXNwaW5nU3lzdGVtRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIHdlYXBvblN5c3RlbUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBtYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGNsb3NlZExvb3BDb250cm9sU3lzdGVtRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIG9wZW5Mb29wQ29udHJvbFN5c3RlbUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyByb2JvdGljSGVhZEVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBuYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBqb3lzdGljTmF2aWdhdGlvblN5c3RlbUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVFbnVtIHN5bmNocm9uaXphdGlvbktpbmRFRW51bSA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVFbnVtIGRhdGFGbG93RGlyZWN0aW9uS2luZEVFbnVtID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUVudW0gc2VydmljZUZsb3dLaW5kRUVudW0gPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFRW51bSB1Z3ZLaW5kRUVudW0gPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFRW51bSByb2JvdGljTWlkZGxld2FyZUtpbmRFRW51bSA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVFbnVtIHNoYWRlRUVudW0gPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFRW51bSBtb2JpbGVSb2JvdEtpbmRFRW51bSA9IG51bGw7CisKKwkvKioKKwkgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSBtb2RlbCA8Yj5QYWNrYWdlPC9iPiwgcmVnaXN0ZXJlZCB3aXRoCisJICoge0BsaW5rIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZS5SZWdpc3RyeSBFUGFja2FnZS5SZWdpc3RyeX0gYnkgdGhlIHBhY2thZ2UKKwkgKiBwYWNrYWdlIFVSSSB2YWx1ZS4KKwkgKiA8cD5Ob3RlOiB0aGUgY29ycmVjdCB3YXkgdG8gY3JlYXRlIHRoZSBwYWNrYWdlIGlzIHZpYSB0aGUgc3RhdGljCisJICogZmFjdG9yeSBtZXRob2Qge0BsaW5rICNpbml0IGluaXQoKX0sIHdoaWNoIGFsc28gcGVyZm9ybXMKKwkgKiBpbml0aWFsaXphdGlvbiBvZiB0aGUgcGFja2FnZSwgb3IgcmV0dXJucyB0aGUgcmVnaXN0ZXJlZCBwYWNrYWdlLAorCSAqIGlmIG9uZSBhbHJlYWR5IGV4aXN0cy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZS5SZWdpc3RyeQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlI2VOU19VUkkKKwkgKiBAc2VlICNpbml0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBSb2JvdE1MUGFja2FnZUltcGwoKSB7CisJCXN1cGVyKGVOU19VUkksIFJvYm90TUxGYWN0b3J5LmVJTlNUQU5DRSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBzdGF0aWMgYm9vbGVhbiBpc0luaXRlZCA9IGZhbHNlOworCisJLyoqCisJICogQ3JlYXRlcywgcmVnaXN0ZXJzLCBhbmQgaW5pdGlhbGl6ZXMgdGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGlzIG1vZGVsLCBhbmQgZm9yIGFueSBvdGhlcnMgdXBvbiB3aGljaCBpdCBkZXBlbmRzLgorCSAqIAorCSAqIDxwPlRoaXMgbWV0aG9kIGlzIHVzZWQgdG8gaW5pdGlhbGl6ZSB7QGxpbmsgUm9ib3RNTFBhY2thZ2UjZUlOU1RBTkNFfSB3aGVuIHRoYXQgZmllbGQgaXMgYWNjZXNzZWQuCisJICogQ2xpZW50cyBzaG91bGQgbm90IGludm9rZSBpdCBkaXJlY3RseS4gSW5zdGVhZCwgdGhleSBzaG91bGQgc2ltcGx5IGFjY2VzcyB0aGF0IGZpZWxkIHRvIG9idGFpbiB0aGUgcGFja2FnZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNlTlNfVVJJCisJICogQHNlZSAjY3JlYXRlUGFja2FnZUNvbnRlbnRzKCkKKwkgKiBAc2VlICNpbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHN0YXRpYyBSb2JvdE1MUGFja2FnZSBpbml0KCkgeworCQlpZiAoaXNJbml0ZWQpIHJldHVybiAoUm9ib3RNTFBhY2thZ2UpRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoUm9ib3RNTFBhY2thZ2UuZU5TX1VSSSk7CisKKwkJLy8gT2J0YWluIG9yIGNyZWF0ZSBhbmQgcmVnaXN0ZXIgcGFja2FnZQorCQlSb2JvdE1MUGFja2FnZUltcGwgdGhlUm9ib3RNTFBhY2thZ2UgPSAoUm9ib3RNTFBhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXQoZU5TX1VSSSkgaW5zdGFuY2VvZiBSb2JvdE1MUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXQoZU5TX1VSSSkgOiBuZXcgUm9ib3RNTFBhY2thZ2VJbXBsKCkpOworCisJCWlzSW5pdGVkID0gdHJ1ZTsKKworCQkvLyBJbml0aWFsaXplIHNpbXBsZSBkZXBlbmRlbmNpZXMKKwkJVU1MUGFja2FnZS5lSU5TVEFOQ0UuZUNsYXNzKCk7CisKKwkJLy8gT2J0YWluIG9yIGNyZWF0ZSBhbmQgcmVnaXN0ZXIgaW50ZXJkZXBlbmRlbmNpZXMKKwkJRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbCB0aGVEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UgPSAoRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSA6IERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UpOworCQlHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbCB0aGVHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlID0gKEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIDogR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UpOworCQlOYXZfZGF0YXR5cGVzUGFja2FnZUltcGwgdGhlTmF2X2RhdGF0eXBlc1BhY2thZ2UgPSAoTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShOYXZfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIE5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKE5hdl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIDogTmF2X2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFKTsKKwkJU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZVNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlID0gKFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSA6IFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRSk7CisJCUFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbCB0aGVBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZSA9IChBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgOiBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UpOworCQlPYXJwMV9kYXRhdHlwZXNQYWNrYWdlSW1wbCB0aGVPYXJwMV9kYXRhdHlwZXNQYWNrYWdlID0gKE9hcnAxX2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgT2FycDFfZGF0YXR5cGVzUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIDogT2FycDFfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UpOworCQlPYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbCB0aGVPYXJwNF9kYXRhdHlwZXNQYWNrYWdlID0gKE9hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIDogT2FycDRfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UpOworCQlTdGRfZGF0YXR5cGVzUGFja2FnZUltcGwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UgPSAoU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShTdGRfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIFN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKFN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIDogU3RkX2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFKTsKKworCQkvLyBDcmVhdGUgcGFja2FnZSBtZXRhLWRhdGEgb2JqZWN0cworCQl0aGVSb2JvdE1MUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVOYXZfZGF0YXR5cGVzUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZUFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKworCQkvLyBJbml0aWFsaXplIGNyZWF0ZWQgbWV0YS1kYXRhCisJCXRoZVJvYm90TUxQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZU5hdl9kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZU9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCisJCS8vIE1hcmsgbWV0YS1kYXRhIHRvIGluZGljYXRlIGl0IGNhbid0IGJlIGNoYW5nZWQKKwkJdGhlUm9ib3RNTFBhY2thZ2UuZnJlZXplKCk7CisKKyAgCisJCS8vIFVwZGF0ZSB0aGUgcmVnaXN0cnkgYW5kIHJldHVybiB0aGUgcGFja2FnZQorCQlFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5wdXQoUm9ib3RNTFBhY2thZ2UuZU5TX1VSSSwgdGhlUm9ib3RNTFBhY2thZ2UpOworCQlyZXR1cm4gdGhlUm9ib3RNTFBhY2thZ2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRUcmFuc2l0aW9uKCkgeworCQlyZXR1cm4gdHJhbnNpdGlvbkVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRUcmFuc2l0aW9uX0Jhc2VfVHJhbnNpdGlvbigpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKXRyYW5zaXRpb25FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRUcmFuc2l0aW9uX0d1YXJkKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpdHJhbnNpdGlvbkVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldFRyYW5zaXRpb25fRWZmZWN0KCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpdHJhbnNpdGlvbkVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDIpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0QWxnb3JpdGhtKCkgeworCQlyZXR1cm4gYWxnb3JpdGhtRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldEFsZ29yaXRobV9CYXNlX09wZXJhdGlvbigpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKWFsZ29yaXRobUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldEFsZ29yaXRobV9Jc0V4dGVybmFsKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpYWxnb3JpdGhtRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0QWxnb3JpdGhtX0V4dEZ1bmN0aW9uTmFtZSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWFsZ29yaXRobUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDIpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldEFsZ29yaXRobV9MaWJQYXRoKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpYWxnb3JpdGhtRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0QWxnb3JpdGhtX0xpYkZpbGVGb3JtYXQoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlhbGdvcml0aG1FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg0KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldFN0YXRlKCkgeworCQlyZXR1cm4gc3RhdGVFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0U3RhdGVfQmFzZV9TdGF0ZSgpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKXN0YXRlRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0U3RhdGVfQmVoYXZpb3IoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlzdGF0ZUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0QWN0dWF0ZWRKb2ludCgpIHsKKwkJcmV0dXJuIGFjdHVhdGVkSm9pbnRFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRKb2ludCgpIHsKKwkJcmV0dXJuIGpvaW50RUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldEpvaW50X0Jhc2VfQ29ubmVjdG9yKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2Upam9pbnRFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldENvbXBsZXRlQm9uZGluZygpIHsKKwkJcmV0dXJuIGNvbXBsZXRlQm9uZGluZ0VDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldFJvYm90KCkgeworCQlyZXR1cm4gcm9ib3RFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0Um9ib3RfV2lkdGgoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlyb2JvdEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0U3lzdGVtKCkgeworCQlyZXR1cm4gc3lzdGVtRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldFN5c3RlbV9CYXNlX0NsYXNzKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2Upc3lzdGVtRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0U3lzdGVtX05hdGl2ZSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXN5c3RlbUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFN5c3RlbV9MaWJyYXJ5UGF0aCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXN5c3RlbUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDIpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFN5c3RlbV9MaWJyYXJ5Q29tcG9uZW50TmFtZSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXN5c3RlbUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDMpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFN5c3RlbV9BbGlhcygpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXN5c3RlbUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0QWdlbnQoKSB7CisJCXJldHVybiBhZ2VudEVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldFBoeXNpY2FsT2JqZWN0KCkgeworCQlyZXR1cm4gcGh5c2ljYWxPYmplY3RFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0UGh5c2ljYWxPYmplY3RfSGVpZ2h0KCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpcGh5c2ljYWxPYmplY3RFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRQaHlzaWNhbE9iamVjdF9NYXNzKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpcGh5c2ljYWxPYmplY3RFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRQaHlzaWNhbE9iamVjdF9CYXNlX0NsYXNzKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpcGh5c2ljYWxPYmplY3RFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgyKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldEVudmlyb25tZW50KCkgeworCQlyZXR1cm4gZW52aXJvbm1lbnRFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0RW52aXJvbm1lbnRfQmFzZV9DbGFzcygpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKWVudmlyb25tZW50RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRTdXJmYWNlKCkgeworCQlyZXR1cm4gc3VyZmFjZUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldERhdGFGbG93UG9ydCgpIHsKKwkJcmV0dXJuIGRhdGFGbG93UG9ydEVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXREYXRhRmxvd1BvcnRfRGlyZWN0aW9uKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpZGF0YUZsb3dQb3J0RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0RGF0YUZsb3dQb3J0X0J1ZmZlclNpemUoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlkYXRhRmxvd1BvcnRFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldFBvcnQoKSB7CisJCXJldHVybiBwb3J0RUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldFBvcnRfQmFzZV9Qb3J0KCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpcG9ydEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFBvcnRfU3luY2hyb25pemF0aW9uUG9saWN5KCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpcG9ydEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0U2VydmljZVBvcnQoKSB7CisJCXJldHVybiBzZXJ2aWNlUG9ydEVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRTZXJ2aWNlUG9ydF9LaW5kKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpc2VydmljZVBvcnRFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldEFjdHVhdG9yU3lzdGVtKCkgeworCQlyZXR1cm4gYWN0dWF0b3JTeXN0ZW1FQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRSb2JvdGljU3lzdGVtKCkgeworCQlyZXR1cm4gcm9ib3RpY1N5c3RlbUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRSb2JvdGljU3lzdGVtX0xvY2FsUG9zaXRpb24oKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlyb2JvdGljU3lzdGVtRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0Um9ib3RpY1N5c3RlbV9Mb2NhbE9yaWVudGF0aW9uKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2Upcm9ib3RpY1N5c3RlbUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0Q3liZXJQaHlzaWNhbFN5c3RlbSgpIHsKKwkJcmV0dXJuIGN5YmVyUGh5c2ljYWxTeXN0ZW1FQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRTZW5zb3JTeXN0ZW0oKSB7CisJCXJldHVybiBzZW5zb3JTeXN0ZW1FQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0U2Vuc29yU3lzdGVtX0ZyZXF1ZW5jeSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXNlbnNvclN5c3RlbUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFNlbnNvclN5c3RlbV9JZGVudGlmaWVyKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpc2Vuc29yU3lzdGVtRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRIYXJkd2FyZSgpIHsKKwkJcmV0dXJuIGhhcmR3YXJlRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0U29mdHdhcmUoKSB7CisJCXJldHVybiBzb2Z0d2FyZUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRTb2Z0d2FyZV9Jc1BlcmlvZGljKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpc29mdHdhcmVFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRTb2Z0d2FyZV9QZXJpb2QoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlzb2Z0d2FyZUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFNvZnR3YXJlX1ByaW9yaXR5KCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpc29mdHdhcmVFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgyKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRTb2Z0d2FyZV9EZWFkbGluZSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXNvZnR3YXJlRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0U29mdHdhcmVfV2NldCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXNvZnR3YXJlRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoNCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRFbmdpbmVTeXN0ZW0oKSB7CisJCXJldHVybiBlbmdpbmVTeXN0ZW1FQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0RW5naW5lU3lzdGVtX1ZlaGljbGVUcmFjdGlvbigpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWVuZ2luZVN5c3RlbUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldEVuZ2luZVN5c3RlbV9NYXhFbmdpbmVGb3JjZSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWVuZ2luZVN5c3RlbUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldEVuZ2luZVN5c3RlbV9NYXhCcmVha2luZ0ZvcmNlKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpZW5naW5lU3lzdGVtRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMik7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0RW5naW5lU3lzdGVtX01heEFsbG93ZWRTdGVlcmluZygpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWVuZ2luZVN5c3RlbUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDMpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldEVuZ2luZVN5c3RlbV9NYXhBbGxvd2VkVmVsb2NpdHkoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSllbmdpbmVTeXN0ZW1FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg0KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRFbmdpbmVTeXN0ZW1fR2Vhcl9yYXRpb24oKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSllbmdpbmVTeXN0ZW1FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg1KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldFN0ZWVyZWRXaGVlbFN5c3RlbSgpIHsKKwkJcmV0dXJuIHN0ZWVyZWRXaGVlbFN5c3RlbUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRTdGVlcmVkV2hlZWxTeXN0ZW1fV2hlZWxSYWRpdXMoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlzdGVlcmVkV2hlZWxTeXN0ZW1FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRTdGVlcmVkV2hlZWxTeXN0ZW1fV2hlZWxXaWR0aCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXN0ZWVyZWRXaGVlbFN5c3RlbUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFN0ZWVyZWRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uUmVzdExlbmd0aCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXN0ZWVyZWRXaGVlbFN5c3RlbUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDIpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFN0ZWVyZWRXaGVlbFN5c3RlbV9XaGVlbENvbm5lY3Rpb25IZWlnaHQoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlzdGVlcmVkV2hlZWxTeXN0ZW1FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRTdGVlcmVkV2hlZWxTeXN0ZW1fVHlwZU9mV2hlZWwoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlzdGVlcmVkV2hlZWxTeXN0ZW1FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg0KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRTdGVlcmVkV2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtwKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpc3RlZXJlZFdoZWVsU3lzdGVtRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoNSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURraSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXN0ZWVyZWRXaGVlbFN5c3RlbUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDYpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFN0ZWVyZWRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEa2QoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlzdGVlcmVkV2hlZWxTeXN0ZW1FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg3KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRTdGVlcmVkV2hlZWxTeXN0ZW1fV2hlZWxTdGVlcmluZ1BJRGtwKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpc3RlZXJlZFdoZWVsU3lzdGVtRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoOCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1doZWVsU3RlZXJpbmdQSURrZCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXN0ZWVyZWRXaGVlbFN5c3RlbUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFN0ZWVyZWRXaGVlbFN5c3RlbV9XaGVlbEZyaWN0aW9uKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpc3RlZXJlZFdoZWVsU3lzdGVtRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMTApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFN0ZWVyZWRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uU3RpZmZuZXNzKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpc3RlZXJlZFdoZWVsU3lzdGVtRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMTEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFN0ZWVyZWRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uRGFtcGluZygpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXN0ZWVyZWRXaGVlbFN5c3RlbUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEyKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRTdGVlcmVkV2hlZWxTeXN0ZW1fU3VzcGVuc2lvbkNvbXByZXNzaW9uKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpc3RlZXJlZFdoZWVsU3lzdGVtRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMTMpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFN0ZWVyZWRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4U3VtKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpc3RlZXJlZFdoZWVsU3lzdGVtRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMTQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFN0ZWVyZWRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4VmFsKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpc3RlZXJlZFdoZWVsU3lzdGVtRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMTUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0TG9jb21vdGlvblN5c3RlbSgpIHsKKwkJcmV0dXJuIGxvY29tb3Rpb25TeXN0ZW1FQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRJbWFnZVNlbnNvclN5c3RlbSgpIHsKKwkJcmV0dXJuIGltYWdlU2Vuc29yU3lzdGVtRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0Q2FtZXJhU3lzdGVtKCkgeworCQlyZXR1cm4gY2FtZXJhU3lzdGVtRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldENhbWVyYVN5c3RlbV9XaWR0aCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWNhbWVyYVN5c3RlbUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldENhbWVyYVN5c3RlbV9IZWlnaHQoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSljYW1lcmFTeXN0ZW1FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRDYW1lcmFTeXN0ZW1fQWxwaGFfdSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWNhbWVyYVN5c3RlbUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDIpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldENhbWVyYVN5c3RlbV9BbHBoYV92KCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpY2FtZXJhU3lzdGVtRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0Q2FtZXJhU3lzdGVtX1UwKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpY2FtZXJhU3lzdGVtRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoNCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0Q2FtZXJhU3lzdGVtX1YwKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpY2FtZXJhU3lzdGVtRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoNSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0Q2FtZXJhU3lzdGVtX0NvbG9yX2Zvcm1hdCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWNhbWVyYVN5c3RlbUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDYpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldENhbWVyYVN5c3RlbV9UcmFuc2xhdGUoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSljYW1lcmFTeXN0ZW1FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg3KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRDYW1lcmFTeXN0ZW1fUm90YXRlKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpY2FtZXJhU3lzdGVtRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoOCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0oKSB7CisJCXJldHVybiBvYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW1FQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSgpIHsKKwkJcmV0dXJuIG9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0TGlkYXJTeXN0ZW0oKSB7CisJCXJldHVybiBsaWRhclN5c3RlbUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRMaWRhclN5c3RlbV9OYkxheWVycygpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWxpZGFyU3lzdGVtRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0TGlkYXJTeXN0ZW1fTGF5ZXJBbmdsZU1pbigpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWxpZGFyU3lzdGVtRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0TGlkYXJTeXN0ZW1fTGF5ZXJBbmdsZVN0ZXAoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlsaWRhclN5c3RlbUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDIpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldExpZGFyU3lzdGVtX05vaXNlKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpbGlkYXJTeXN0ZW1FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRMaWRhclN5c3RlbV9TaWdtYU5vaXNlKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpbGlkYXJTeXN0ZW1FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg0KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRMaWRhclN5c3RlbV9BbmdsZV9taW4oKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlsaWRhclN5c3RlbUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldExpZGFyU3lzdGVtX0FuZ2xlX21heCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWxpZGFyU3lzdGVtRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoNik7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0TGlkYXJTeXN0ZW1fVGltZV9pbmNyZW1lbnQoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlsaWRhclN5c3RlbUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDcpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldExpZGFyU3lzdGVtX1NjYW5fdGltZSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWxpZGFyU3lzdGVtRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoOCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0TGlkYXJTeXN0ZW1fUmFuZ2VfbWluKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpbGlkYXJTeXN0ZW1FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg5KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRMaWRhclN5c3RlbV9SYW5nZV9tYXgoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlsaWRhclN5c3RlbUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRMaWRhclN5c3RlbV9OYlJheXMoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlsaWRhclN5c3RlbUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDExKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldExvY2FsaXphdGlvblNlbnNvclN5c3RlbSgpIHsKKwkJcmV0dXJuIGxvY2FsaXphdGlvblNlbnNvclN5c3RlbUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldEdQU1N5c3RlbSgpIHsKKwkJcmV0dXJuIGdwc1N5c3RlbUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRHUFNTeXN0ZW1fT3JpZ2luUG9zaXRpb24oKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlncHNTeXN0ZW1FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldEFsZ29yaXRobUxpYnJhcnkoKSB7CisJCXJldHVybiBhbGdvcml0aG1MaWJyYXJ5RUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldEFsZ29yaXRobUxpYnJhcnlfQmFzZV9DbGFzcygpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKWFsZ29yaXRobUxpYnJhcnlFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRBbGdvcml0aG1MaWJyYXJ5X1BhdGgoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlhbGdvcml0aG1MaWJyYXJ5RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRTZW5zb3JEcml2ZXIoKSB7CisJCXJldHVybiBzZW5zb3JEcml2ZXJFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRCdWlsZGluZygpIHsKKwkJcmV0dXJuIGJ1aWxkaW5nRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0UGxhbmV0KCkgeworCQlyZXR1cm4gcGxhbmV0RUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0TGFuZFN1cmZhY2UoKSB7CisJCXJldHVybiBsYW5kU3VyZmFjZUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldEdyb3VuZCgpIHsKKwkJcmV0dXJuIGdyb3VuZEVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldEZsb29yKCkgeworCQlyZXR1cm4gZmxvb3JFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRXYXRlclN1cmZhY2UoKSB7CisJCXJldHVybiB3YXRlclN1cmZhY2VFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRIdW1hbigpIHsKKwkJcmV0dXJuIGh1bWFuRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0UGVkZXN0cmlhbigpIHsKKwkJcmV0dXJuIHBlZGVzdHJpYW5FQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRTdGFpcnMoKSB7CisJCXJldHVybiBzdGFpcnNFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRQbGF0Zm9ybSgpIHsKKwkJcmV0dXJuIHBsYXRmb3JtRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldFBsYXRmb3JtX0Jhc2VfTm9kZSgpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKXBsYXRmb3JtRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0UGxhdGZvcm1fTGlicmFyeSgpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKXBsYXRmb3JtRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRFeHRlcm5hbExpYnJhcnkoKSB7CisJCXJldHVybiBleHRlcm5hbExpYnJhcnlFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0RXh0ZXJuYWxMaWJyYXJ5X0xpYlBhdGgoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlleHRlcm5hbExpYnJhcnlFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRFeHRlcm5hbExpYnJhcnlfTGliRmlsZUZvcm1hdCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWV4dGVybmFsTGlicmFyeUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldEV4dGVybmFsTGlicmFyeV9CYXNlX0ludGVyZmFjZSgpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKWV4dGVybmFsTGlicmFyeUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDIpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0Um9ib3RpY01pZGRsZXdhcmUoKSB7CisJCXJldHVybiByb2JvdGljTWlkZGxld2FyZUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRSb2JvdGljTWlkZGxld2FyZV9LaW5kKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpcm9ib3RpY01pZGRsZXdhcmVFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldFJvYm90aWNTaW11bGF0b3IoKSB7CisJCXJldHVybiByb2JvdGljU2ltdWxhdG9yRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0Q3ljYWJUSygpIHsKKwkJcmV0dXJuIGN5Y2FiVEtFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0Q3ljYWJUS19Vc2VSZWFsVGltZSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWN5Y2FiVEtFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRDeWNhYlRLX1RpbWVTdGVwKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpY3ljYWJUS0VDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldEN5Y2FiVEtfVGltZUZhY3RvcigpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWN5Y2FiVEtFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgyKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldEJsZW5kZXJNb3JzZSgpIHsKKwkJcmV0dXJuIGJsZW5kZXJNb3JzZUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRCbGVuZGVyTW9yc2VfRGVidWdNb2RlKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpYmxlbmRlck1vcnNlRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0QmxlbmRlck1vcnNlX0RlYnVnRGlzcGxheSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWJsZW5kZXJNb3JzZUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldEJsZW5kZXJNb3JzZV9HcmF2aXR5KCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpYmxlbmRlck1vcnNlRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMik7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0QmxlbmRlck1vcnNlX192aWV3cG9ydF9zaGFkZSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWJsZW5kZXJNb3JzZUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDMpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0T25Qb3J0KCkgeworCQlyZXR1cm4gb25Qb3J0RUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldE9uUG9ydF9Qb3J0KCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2Upb25Qb3J0RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0T25Qb3J0X0Jhc2VfUGFyYW1ldGVyKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2Upb25Qb3J0RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRBbGxvY2F0ZSgpIHsKKwkJcmV0dXJuIGFsbG9jYXRlRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldEFsbG9jYXRlX0Jhc2VfQWJzdHJhY3Rpb24oKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlhbGxvY2F0ZUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0SW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0oKSB7CisJCXJldHVybiBpbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldEluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbSgpIHsKKwkJcmV0dXJuIGluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldE9kb21ldHJ5U3lzdGVtKCkgeworCQlyZXR1cm4gb2RvbWV0cnlTeXN0ZW1FQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRJbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW0oKSB7CisJCXJldHVybiBpbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW1FQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXREZXBsb3ltZW50UGxhbigpIHsKKwkJcmV0dXJuIGRlcGxveW1lbnRQbGFuRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldERlcGxveW1lbnRQbGFuX0Jhc2VfUGFja2FnZSgpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKWRlcGxveW1lbnRQbGFuRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0RGVwbG95bWVudFBsYW5fTWFpbkluc3RhbmNlKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpZGVwbG95bWVudFBsYW5FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldEd5cm9zY29wZSgpIHsKKwkJcmV0dXJuIGd5cm9zY29wZUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldE9uVmFyaWFibGUoKSB7CisJCXJldHVybiBvblZhcmlhYmxlRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldE9uVmFyaWFibGVfUHJvcGVydHkoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlvblZhcmlhYmxlRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0T25WYXJpYWJsZV9CYXNlX1BhcmFtZXRlcigpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKW9uVmFyaWFibGVFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldENoYXNzaXMoKSB7CisJCXJldHVybiBjaGFzc2lzRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0U3VwcG9ydGluZ1N0cnVjdHVyZSgpIHsKKwkJcmV0dXJuIHN1cHBvcnRpbmdTdHJ1Y3R1cmVFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRNZWNoYW5pY2FsTGlua2FnZSgpIHsKKwkJcmV0dXJuIG1lY2hhbmljYWxMaW5rYWdlRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0TGVnKCkgeworCQlyZXR1cm4gbGVnRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0TG9jb21vdGlvbkhhcmR3YXJlKCkgeworCQlyZXR1cm4gbG9jb21vdGlvbkhhcmR3YXJlRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0QWN0dWF0b3JIYXJkd2FyZSgpIHsKKwkJcmV0dXJuIGFjdHVhdG9ySGFyZHdhcmVFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRNb2JpbGVSb2JvdCgpIHsKKwkJcmV0dXJuIG1vYmlsZVJvYm90RUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldE1vYmlsZVJvYm90X0tpbmQoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSltb2JpbGVSb2JvdEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0TWFuaXB1bGF0b3IoKSB7CisJCXJldHVybiBtYW5pcHVsYXRvckVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldFBpbG90ZWRTeXN0ZW0oKSB7CisJCXJldHVybiBwaWxvdGVkU3lzdGVtRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0UG93ZXJIYXJkd2FyZSgpIHsKKwkJcmV0dXJuIHBvd2VySGFyZHdhcmVFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRTZW5zb3JIYXJkd2FyZSgpIHsKKwkJcmV0dXJuIHNlbnNvckhhcmR3YXJlRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0R3Jhc3BpbmdIYXJkd2FyZSgpIHsKKwkJcmV0dXJuIGdyYXNwaW5nSGFyZHdhcmVFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRTdGVlcmVkV2hlZWxIYXJkd2FyZSgpIHsKKwkJcmV0dXJuIHN0ZWVyZWRXaGVlbEhhcmR3YXJlRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0QXJtKCkgeworCQlyZXR1cm4gYXJtRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0TGVnU3lzdGVtKCkgeworCQlyZXR1cm4gbGVnU3lzdGVtRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0R3Jhc3BpbmdTeXN0ZW0oKSB7CisJCXJldHVybiBncmFzcGluZ1N5c3RlbUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldFdlYXBvblN5c3RlbSgpIHsKKwkJcmV0dXJuIHdlYXBvblN5c3RlbUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldE1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0oKSB7CisJCXJldHVybiBtYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0Q2xvc2VkTG9vcENvbnRyb2xTeXN0ZW0oKSB7CisJCXJldHVybiBjbG9zZWRMb29wQ29udHJvbFN5c3RlbUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldE9wZW5Mb29wQ29udHJvbFN5c3RlbSgpIHsKKwkJcmV0dXJuIG9wZW5Mb29wQ29udHJvbFN5c3RlbUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldFJvYm90aWNIZWFkKCkgeworCQlyZXR1cm4gcm9ib3RpY0hlYWRFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXROYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbSgpIHsKKwkJcmV0dXJuIG5hdmlnYXRpb25Db21tYW5kU3lzdGVtRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0Sm95c3RpY05hdmlnYXRpb25TeXN0ZW0oKSB7CisJCXJldHVybiBqb3lzdGljTmF2aWdhdGlvblN5c3RlbUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUVudW0gZ2V0U3luY2hyb25pemF0aW9uS2luZCgpIHsKKwkJcmV0dXJuIHN5bmNocm9uaXphdGlvbktpbmRFRW51bTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUVudW0gZ2V0RGF0YUZsb3dEaXJlY3Rpb25LaW5kKCkgeworCQlyZXR1cm4gZGF0YUZsb3dEaXJlY3Rpb25LaW5kRUVudW07CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVFbnVtIGdldFNlcnZpY2VGbG93S2luZCgpIHsKKwkJcmV0dXJuIHNlcnZpY2VGbG93S2luZEVFbnVtOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFRW51bSBnZXRVR1ZLaW5kKCkgeworCQlyZXR1cm4gdWd2S2luZEVFbnVtOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFRW51bSBnZXRSb2JvdGljTWlkZGxld2FyZUtpbmQoKSB7CisJCXJldHVybiByb2JvdGljTWlkZGxld2FyZUtpbmRFRW51bTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUVudW0gZ2V0U2hhZGUoKSB7CisJCXJldHVybiBzaGFkZUVFbnVtOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFRW51bSBnZXRNb2JpbGVSb2JvdEtpbmQoKSB7CisJCXJldHVybiBtb2JpbGVSb2JvdEtpbmRFRW51bTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUm9ib3RNTEZhY3RvcnkgZ2V0Um9ib3RNTEZhY3RvcnkoKSB7CisJCXJldHVybiAoUm9ib3RNTEZhY3RvcnkpZ2V0RUZhY3RvcnlJbnN0YW5jZSgpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgYm9vbGVhbiBpc0NyZWF0ZWQgPSBmYWxzZTsKKworCS8qKgorCSAqIENyZWF0ZXMgdGhlIG1ldGEtbW9kZWwgb2JqZWN0cyBmb3IgdGhlIHBhY2thZ2UuICBUaGlzIG1ldGhvZCBpcworCSAqIGd1YXJkZWQgdG8gaGF2ZSBubyBhZmZlY3Qgb24gYW55IGludm9jYXRpb24gYnV0IGl0cyBmaXJzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBjcmVhdGVQYWNrYWdlQ29udGVudHMoKSB7CisJCWlmIChpc0NyZWF0ZWQpIHJldHVybjsKKwkJaXNDcmVhdGVkID0gdHJ1ZTsKKworCQkvLyBDcmVhdGUgY2xhc3NlcyBhbmQgdGhlaXIgZmVhdHVyZXMKKwkJdHJhbnNpdGlvbkVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhUUkFOU0lUSU9OKTsKKwkJY3JlYXRlRVJlZmVyZW5jZSh0cmFuc2l0aW9uRUNsYXNzLCBUUkFOU0lUSU9OX19CQVNFX1RSQU5TSVRJT04pOworCQljcmVhdGVFUmVmZXJlbmNlKHRyYW5zaXRpb25FQ2xhc3MsIFRSQU5TSVRJT05fX0dVQVJEKTsKKwkJY3JlYXRlRVJlZmVyZW5jZSh0cmFuc2l0aW9uRUNsYXNzLCBUUkFOU0lUSU9OX19FRkZFQ1QpOworCisJCWFsZ29yaXRobUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhBTEdPUklUSE0pOworCQljcmVhdGVFUmVmZXJlbmNlKGFsZ29yaXRobUVDbGFzcywgQUxHT1JJVEhNX19CQVNFX09QRVJBVElPTik7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoYWxnb3JpdGhtRUNsYXNzLCBBTEdPUklUSE1fX0lTX0VYVEVSTkFMKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShhbGdvcml0aG1FQ2xhc3MsIEFMR09SSVRITV9fRVhUX0ZVTkNUSU9OX05BTUUpOworCQljcmVhdGVFQXR0cmlidXRlKGFsZ29yaXRobUVDbGFzcywgQUxHT1JJVEhNX19MSUJfUEFUSCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoYWxnb3JpdGhtRUNsYXNzLCBBTEdPUklUSE1fX0xJQl9GSUxFX0ZPUk1BVCk7CisKKwkJc3RhdGVFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoU1RBVEUpOworCQljcmVhdGVFUmVmZXJlbmNlKHN0YXRlRUNsYXNzLCBTVEFURV9fQkFTRV9TVEFURSk7CisJCWNyZWF0ZUVSZWZlcmVuY2Uoc3RhdGVFQ2xhc3MsIFNUQVRFX19CRUhBVklPUik7CisKKwkJYWN0dWF0ZWRKb2ludEVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhBQ1RVQVRFRF9KT0lOVCk7CisKKwkJam9pbnRFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoSk9JTlQpOworCQljcmVhdGVFUmVmZXJlbmNlKGpvaW50RUNsYXNzLCBKT0lOVF9fQkFTRV9DT05ORUNUT1IpOworCisJCWNvbXBsZXRlQm9uZGluZ0VDbGFzcyA9IGNyZWF0ZUVDbGFzcyhDT01QTEVURV9CT05ESU5HKTsKKworCQlyb2JvdEVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhST0JPVCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUocm9ib3RFQ2xhc3MsIFJPQk9UX19XSURUSCk7CisKKwkJc3lzdGVtRUNsYXNzID0gY3JlYXRlRUNsYXNzKFNZU1RFTSk7CisJCWNyZWF0ZUVSZWZlcmVuY2Uoc3lzdGVtRUNsYXNzLCBTWVNURU1fX0JBU0VfQ0xBU1MpOworCQljcmVhdGVFQXR0cmlidXRlKHN5c3RlbUVDbGFzcywgU1lTVEVNX19OQVRJVkUpOworCQljcmVhdGVFQXR0cmlidXRlKHN5c3RlbUVDbGFzcywgU1lTVEVNX19MSUJSQVJZX1BBVEgpOworCQljcmVhdGVFQXR0cmlidXRlKHN5c3RlbUVDbGFzcywgU1lTVEVNX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShzeXN0ZW1FQ2xhc3MsIFNZU1RFTV9fQUxJQVMpOworCisJCWFnZW50RUNsYXNzID0gY3JlYXRlRUNsYXNzKEFHRU5UKTsKKworCQlwaHlzaWNhbE9iamVjdEVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhQSFlTSUNBTF9PQkpFQ1QpOworCQljcmVhdGVFQXR0cmlidXRlKHBoeXNpY2FsT2JqZWN0RUNsYXNzLCBQSFlTSUNBTF9PQkpFQ1RfX0hFSUdIVCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUocGh5c2ljYWxPYmplY3RFQ2xhc3MsIFBIWVNJQ0FMX09CSkVDVF9fTUFTUyk7CisJCWNyZWF0ZUVSZWZlcmVuY2UocGh5c2ljYWxPYmplY3RFQ2xhc3MsIFBIWVNJQ0FMX09CSkVDVF9fQkFTRV9DTEFTUyk7CisKKwkJZGF0YUZsb3dQb3J0RUNsYXNzID0gY3JlYXRlRUNsYXNzKERBVEFfRkxPV19QT1JUKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShkYXRhRmxvd1BvcnRFQ2xhc3MsIERBVEFfRkxPV19QT1JUX19ESVJFQ1RJT04pOworCQljcmVhdGVFQXR0cmlidXRlKGRhdGFGbG93UG9ydEVDbGFzcywgREFUQV9GTE9XX1BPUlRfX0JVRkZFUl9TSVpFKTsKKworCQlwb3J0RUNsYXNzID0gY3JlYXRlRUNsYXNzKFBPUlQpOworCQljcmVhdGVFUmVmZXJlbmNlKHBvcnRFQ2xhc3MsIFBPUlRfX0JBU0VfUE9SVCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUocG9ydEVDbGFzcywgUE9SVF9fU1lOQ0hST05JWkFUSU9OX1BPTElDWSk7CisKKwkJc2VydmljZVBvcnRFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoU0VSVklDRV9QT1JUKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShzZXJ2aWNlUG9ydEVDbGFzcywgU0VSVklDRV9QT1JUX19LSU5EKTsKKworCQlhY3R1YXRvclN5c3RlbUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhBQ1RVQVRPUl9TWVNURU0pOworCisJCXJvYm90aWNTeXN0ZW1FQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoUk9CT1RJQ19TWVNURU0pOworCQljcmVhdGVFUmVmZXJlbmNlKHJvYm90aWNTeXN0ZW1FQ2xhc3MsIFJPQk9USUNfU1lTVEVNX19MT0NBTF9QT1NJVElPTik7CisJCWNyZWF0ZUVSZWZlcmVuY2Uocm9ib3RpY1N5c3RlbUVDbGFzcywgUk9CT1RJQ19TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OKTsKKworCQljeWJlclBoeXNpY2FsU3lzdGVtRUNsYXNzID0gY3JlYXRlRUNsYXNzKENZQkVSX1BIWVNJQ0FMX1NZU1RFTSk7CisKKwkJc2Vuc29yU3lzdGVtRUNsYXNzID0gY3JlYXRlRUNsYXNzKFNFTlNPUl9TWVNURU0pOworCQljcmVhdGVFQXR0cmlidXRlKHNlbnNvclN5c3RlbUVDbGFzcywgU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShzZW5zb3JTeXN0ZW1FQ2xhc3MsIFNFTlNPUl9TWVNURU1fX0lERU5USUZJRVIpOworCisJCWhhcmR3YXJlRUNsYXNzID0gY3JlYXRlRUNsYXNzKEhBUkRXQVJFKTsKKworCQlzb2Z0d2FyZUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhTT0ZUV0FSRSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoc29mdHdhcmVFQ2xhc3MsIFNPRlRXQVJFX19JU19QRVJJT0RJQyk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoc29mdHdhcmVFQ2xhc3MsIFNPRlRXQVJFX19QRVJJT0QpOworCQljcmVhdGVFQXR0cmlidXRlKHNvZnR3YXJlRUNsYXNzLCBTT0ZUV0FSRV9fUFJJT1JJVFkpOworCQljcmVhdGVFQXR0cmlidXRlKHNvZnR3YXJlRUNsYXNzLCBTT0ZUV0FSRV9fREVBRExJTkUpOworCQljcmVhdGVFQXR0cmlidXRlKHNvZnR3YXJlRUNsYXNzLCBTT0ZUV0FSRV9fV0NFVCk7CisKKwkJZW5naW5lU3lzdGVtRUNsYXNzID0gY3JlYXRlRUNsYXNzKEVOR0lORV9TWVNURU0pOworCQljcmVhdGVFQXR0cmlidXRlKGVuZ2luZVN5c3RlbUVDbGFzcywgRU5HSU5FX1NZU1RFTV9fVkVISUNMRV9UUkFDVElPTik7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoZW5naW5lU3lzdGVtRUNsYXNzLCBFTkdJTkVfU1lTVEVNX19NQVhfRU5HSU5FX0ZPUkNFKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShlbmdpbmVTeXN0ZW1FQ2xhc3MsIEVOR0lORV9TWVNURU1fX01BWF9CUkVBS0lOR19GT1JDRSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoZW5naW5lU3lzdGVtRUNsYXNzLCBFTkdJTkVfU1lTVEVNX19NQVhfQUxMT1dFRF9TVEVFUklORyk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoZW5naW5lU3lzdGVtRUNsYXNzLCBFTkdJTkVfU1lTVEVNX19NQVhfQUxMT1dFRF9WRUxPQ0lUWSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoZW5naW5lU3lzdGVtRUNsYXNzLCBFTkdJTkVfU1lTVEVNX19HRUFSX1JBVElPTik7CisKKwkJc3RlZXJlZFdoZWVsU3lzdGVtRUNsYXNzID0gY3JlYXRlRUNsYXNzKFNURUVSRURfV0hFRUxfU1lTVEVNKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShzdGVlcmVkV2hlZWxTeXN0ZW1FQ2xhc3MsIFNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9SQURJVVMpOworCQljcmVhdGVFQXR0cmlidXRlKHN0ZWVyZWRXaGVlbFN5c3RlbUVDbGFzcywgU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX1dJRFRIKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShzdGVlcmVkV2hlZWxTeXN0ZW1FQ2xhc3MsIFNURUVSRURfV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX1JFU1RfTEVOR1RIKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShzdGVlcmVkV2hlZWxTeXN0ZW1FQ2xhc3MsIFNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9DT05ORUNUSU9OX0hFSUdIVCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoc3RlZXJlZFdoZWVsU3lzdGVtRUNsYXNzLCBTVEVFUkVEX1dIRUVMX1NZU1RFTV9fVFlQRV9PRl9XSEVFTCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoc3RlZXJlZFdoZWVsU3lzdGVtRUNsYXNzLCBTVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtQKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShzdGVlcmVkV2hlZWxTeXN0ZW1FQ2xhc3MsIFNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ES0kpOworCQljcmVhdGVFQXR0cmlidXRlKHN0ZWVyZWRXaGVlbFN5c3RlbUVDbGFzcywgU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLRCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoc3RlZXJlZFdoZWVsU3lzdGVtRUNsYXNzLCBTVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfU1RFRVJJTkdfUElfREtQKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShzdGVlcmVkV2hlZWxTeXN0ZW1FQ2xhc3MsIFNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9TVEVFUklOR19QSV9ES0QpOworCQljcmVhdGVFQXR0cmlidXRlKHN0ZWVyZWRXaGVlbFN5c3RlbUVDbGFzcywgU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX0ZSSUNUSU9OKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShzdGVlcmVkV2hlZWxTeXN0ZW1FQ2xhc3MsIFNURUVSRURfV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX1NUSUZGTkVTUyk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoc3RlZXJlZFdoZWVsU3lzdGVtRUNsYXNzLCBTVEVFUkVEX1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9EQU1QSU5HKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShzdGVlcmVkV2hlZWxTeXN0ZW1FQ2xhc3MsIFNURUVSRURfV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0NPTVBSRVNTSU9OKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShzdGVlcmVkV2hlZWxTeXN0ZW1FQ2xhc3MsIFNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1NVTSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoc3RlZXJlZFdoZWVsU3lzdGVtRUNsYXNzLCBTVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9WQUwpOworCisJCWxvY29tb3Rpb25TeXN0ZW1FQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoTE9DT01PVElPTl9TWVNURU0pOworCisJCWltYWdlU2Vuc29yU3lzdGVtRUNsYXNzID0gY3JlYXRlRUNsYXNzKElNQUdFX1NFTlNPUl9TWVNURU0pOworCisJCWNhbWVyYVN5c3RlbUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhDQU1FUkFfU1lTVEVNKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShjYW1lcmFTeXN0ZW1FQ2xhc3MsIENBTUVSQV9TWVNURU1fX1dJRFRIKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShjYW1lcmFTeXN0ZW1FQ2xhc3MsIENBTUVSQV9TWVNURU1fX0hFSUdIVCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoY2FtZXJhU3lzdGVtRUNsYXNzLCBDQU1FUkFfU1lTVEVNX19BTFBIQV9VKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShjYW1lcmFTeXN0ZW1FQ2xhc3MsIENBTUVSQV9TWVNURU1fX0FMUEhBX1YpOworCQljcmVhdGVFQXR0cmlidXRlKGNhbWVyYVN5c3RlbUVDbGFzcywgQ0FNRVJBX1NZU1RFTV9fVTApOworCQljcmVhdGVFQXR0cmlidXRlKGNhbWVyYVN5c3RlbUVDbGFzcywgQ0FNRVJBX1NZU1RFTV9fVjApOworCQljcmVhdGVFQXR0cmlidXRlKGNhbWVyYVN5c3RlbUVDbGFzcywgQ0FNRVJBX1NZU1RFTV9fQ09MT1JfRk9STUFUKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShjYW1lcmFTeXN0ZW1FQ2xhc3MsIENBTUVSQV9TWVNURU1fX1RSQU5TTEFURSk7CisJCWNyZWF0ZUVSZWZlcmVuY2UoY2FtZXJhU3lzdGVtRUNsYXNzLCBDQU1FUkFfU1lTVEVNX19ST1RBVEUpOworCisJCW9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhPQkpFQ1RfREVURUNUSU9OX1NFTlNPUl9TWVNURU0pOworCisJCW9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtRUNsYXNzID0gY3JlYXRlRUNsYXNzKE9CSkVDVF9UUkFDS0lOR19TRU5TT1JfU1lTVEVNKTsKKworCQlsaWRhclN5c3RlbUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhMSURBUl9TWVNURU0pOworCQljcmVhdGVFQXR0cmlidXRlKGxpZGFyU3lzdGVtRUNsYXNzLCBMSURBUl9TWVNURU1fX05CX0xBWUVSUyk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUobGlkYXJTeXN0ZW1FQ2xhc3MsIExJREFSX1NZU1RFTV9fTEFZRVJfQU5HTEVfTUlOKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShsaWRhclN5c3RlbUVDbGFzcywgTElEQVJfU1lTVEVNX19MQVlFUl9BTkdMRV9TVEVQKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShsaWRhclN5c3RlbUVDbGFzcywgTElEQVJfU1lTVEVNX19OT0lTRSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUobGlkYXJTeXN0ZW1FQ2xhc3MsIExJREFSX1NZU1RFTV9fU0lHTUFfTk9JU0UpOworCQljcmVhdGVFQXR0cmlidXRlKGxpZGFyU3lzdGVtRUNsYXNzLCBMSURBUl9TWVNURU1fX0FOR0xFX01JTik7CisJCWNyZWF0ZUVBdHRyaWJ1dGUobGlkYXJTeXN0ZW1FQ2xhc3MsIExJREFSX1NZU1RFTV9fQU5HTEVfTUFYKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShsaWRhclN5c3RlbUVDbGFzcywgTElEQVJfU1lTVEVNX19USU1FX0lOQ1JFTUVOVCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUobGlkYXJTeXN0ZW1FQ2xhc3MsIExJREFSX1NZU1RFTV9fU0NBTl9USU1FKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShsaWRhclN5c3RlbUVDbGFzcywgTElEQVJfU1lTVEVNX19SQU5HRV9NSU4pOworCQljcmVhdGVFQXR0cmlidXRlKGxpZGFyU3lzdGVtRUNsYXNzLCBMSURBUl9TWVNURU1fX1JBTkdFX01BWCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUobGlkYXJTeXN0ZW1FQ2xhc3MsIExJREFSX1NZU1RFTV9fTkJfUkFZUyk7CisKKwkJbG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtRUNsYXNzID0gY3JlYXRlRUNsYXNzKExPQ0FMSVpBVElPTl9TRU5TT1JfU1lTVEVNKTsKKworCQlncHNTeXN0ZW1FQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoR1BTX1NZU1RFTSk7CisJCWNyZWF0ZUVSZWZlcmVuY2UoZ3BzU3lzdGVtRUNsYXNzLCBHUFNfU1lTVEVNX19PUklHSU5fUE9TSVRJT04pOworCisJCWFsZ29yaXRobUxpYnJhcnlFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoQUxHT1JJVEhNX0xJQlJBUlkpOworCQljcmVhdGVFUmVmZXJlbmNlKGFsZ29yaXRobUxpYnJhcnlFQ2xhc3MsIEFMR09SSVRITV9MSUJSQVJZX19CQVNFX0NMQVNTKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShhbGdvcml0aG1MaWJyYXJ5RUNsYXNzLCBBTEdPUklUSE1fTElCUkFSWV9fUEFUSCk7CisKKwkJc2Vuc29yRHJpdmVyRUNsYXNzID0gY3JlYXRlRUNsYXNzKFNFTlNPUl9EUklWRVIpOworCisJCWVudmlyb25tZW50RUNsYXNzID0gY3JlYXRlRUNsYXNzKEVOVklST05NRU5UKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShlbnZpcm9ubWVudEVDbGFzcywgRU5WSVJPTk1FTlRfX0JBU0VfQ0xBU1MpOworCisJCWJ1aWxkaW5nRUNsYXNzID0gY3JlYXRlRUNsYXNzKEJVSUxESU5HKTsKKworCQlzdXJmYWNlRUNsYXNzID0gY3JlYXRlRUNsYXNzKFNVUkZBQ0UpOworCisJCXBsYW5ldEVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhQTEFORVQpOworCisJCWxhbmRTdXJmYWNlRUNsYXNzID0gY3JlYXRlRUNsYXNzKExBTkRfU1VSRkFDRSk7CisKKwkJZ3JvdW5kRUNsYXNzID0gY3JlYXRlRUNsYXNzKEdST1VORCk7CisKKwkJZmxvb3JFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoRkxPT1IpOworCisJCXdhdGVyU3VyZmFjZUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhXQVRFUl9TVVJGQUNFKTsKKworCQlodW1hbkVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhIVU1BTik7CisKKwkJcGVkZXN0cmlhbkVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhQRURFU1RSSUFOKTsKKworCQlzdGFpcnNFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoU1RBSVJTKTsKKworCQlwbGF0Zm9ybUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhQTEFURk9STSk7CisJCWNyZWF0ZUVSZWZlcmVuY2UocGxhdGZvcm1FQ2xhc3MsIFBMQVRGT1JNX19CQVNFX05PREUpOworCQljcmVhdGVFUmVmZXJlbmNlKHBsYXRmb3JtRUNsYXNzLCBQTEFURk9STV9fTElCUkFSWSk7CisKKwkJZXh0ZXJuYWxMaWJyYXJ5RUNsYXNzID0gY3JlYXRlRUNsYXNzKEVYVEVSTkFMX0xJQlJBUlkpOworCQljcmVhdGVFQXR0cmlidXRlKGV4dGVybmFsTGlicmFyeUVDbGFzcywgRVhURVJOQUxfTElCUkFSWV9fTElCX1BBVEgpOworCQljcmVhdGVFQXR0cmlidXRlKGV4dGVybmFsTGlicmFyeUVDbGFzcywgRVhURVJOQUxfTElCUkFSWV9fTElCX0ZJTEVfRk9STUFUKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShleHRlcm5hbExpYnJhcnlFQ2xhc3MsIEVYVEVSTkFMX0xJQlJBUllfX0JBU0VfSU5URVJGQUNFKTsKKworCQlyb2JvdGljTWlkZGxld2FyZUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhST0JPVElDX01JRERMRVdBUkUpOworCQljcmVhdGVFQXR0cmlidXRlKHJvYm90aWNNaWRkbGV3YXJlRUNsYXNzLCBST0JPVElDX01JRERMRVdBUkVfX0tJTkQpOworCisJCXJvYm90aWNTaW11bGF0b3JFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoUk9CT1RJQ19TSU1VTEFUT1IpOworCisJCWN5Y2FiVEtFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoQ1lDQUJfVEspOworCQljcmVhdGVFQXR0cmlidXRlKGN5Y2FiVEtFQ2xhc3MsIENZQ0FCX1RLX19VU0VfUkVBTF9USU1FKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShjeWNhYlRLRUNsYXNzLCBDWUNBQl9US19fVElNRV9TVEVQKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShjeWNhYlRLRUNsYXNzLCBDWUNBQl9US19fVElNRV9GQUNUT1IpOworCisJCWJsZW5kZXJNb3JzZUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhCTEVOREVSX01PUlNFKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShibGVuZGVyTW9yc2VFQ2xhc3MsIEJMRU5ERVJfTU9SU0VfX0RFQlVHX01PREUpOworCQljcmVhdGVFQXR0cmlidXRlKGJsZW5kZXJNb3JzZUVDbGFzcywgQkxFTkRFUl9NT1JTRV9fREVCVUdfRElTUExBWSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoYmxlbmRlck1vcnNlRUNsYXNzLCBCTEVOREVSX01PUlNFX19HUkFWSVRZKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShibGVuZGVyTW9yc2VFQ2xhc3MsIEJMRU5ERVJfTU9SU0VfX1ZJRVdQT1JUX1NIQURFKTsKKworCQlvblBvcnRFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoT05fUE9SVCk7CisJCWNyZWF0ZUVSZWZlcmVuY2Uob25Qb3J0RUNsYXNzLCBPTl9QT1JUX19QT1JUKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShvblBvcnRFQ2xhc3MsIE9OX1BPUlRfX0JBU0VfUEFSQU1FVEVSKTsKKworCQlhbGxvY2F0ZUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhBTExPQ0FURSk7CisJCWNyZWF0ZUVSZWZlcmVuY2UoYWxsb2NhdGVFQ2xhc3MsIEFMTE9DQVRFX19CQVNFX0FCU1RSQUNUSU9OKTsKKworCQlpbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhJTkVSVElBTF9NRUFTVVJFTUVOVF9VTklUX1NZU1RFTSk7CisKKwkJaW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtRUNsYXNzID0gY3JlYXRlRUNsYXNzKElORVJUSUFMX05BVklHQVRJT05fU1lTVEVNKTsKKworCQlvZG9tZXRyeVN5c3RlbUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhPRE9NRVRSWV9TWVNURU0pOworCisJCWluZnJhUmVkUHJveGltZXRyeVN5c3RlbUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhJTkZSQV9SRURfUFJPWElNRVRSWV9TWVNURU0pOworCisJCWRlcGxveW1lbnRQbGFuRUNsYXNzID0gY3JlYXRlRUNsYXNzKERFUExPWU1FTlRfUExBTik7CisJCWNyZWF0ZUVSZWZlcmVuY2UoZGVwbG95bWVudFBsYW5FQ2xhc3MsIERFUExPWU1FTlRfUExBTl9fQkFTRV9QQUNLQUdFKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShkZXBsb3ltZW50UGxhbkVDbGFzcywgREVQTE9ZTUVOVF9QTEFOX19NQUlOX0lOU1RBTkNFKTsKKworCQlneXJvc2NvcGVFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoR1lST1NDT1BFKTsKKworCQlvblZhcmlhYmxlRUNsYXNzID0gY3JlYXRlRUNsYXNzKE9OX1ZBUklBQkxFKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShvblZhcmlhYmxlRUNsYXNzLCBPTl9WQVJJQUJMRV9fUFJPUEVSVFkpOworCQljcmVhdGVFUmVmZXJlbmNlKG9uVmFyaWFibGVFQ2xhc3MsIE9OX1ZBUklBQkxFX19CQVNFX1BBUkFNRVRFUik7CisKKwkJY2hhc3Npc0VDbGFzcyA9IGNyZWF0ZUVDbGFzcyhDSEFTU0lTKTsKKworCQlzdXBwb3J0aW5nU3RydWN0dXJlRUNsYXNzID0gY3JlYXRlRUNsYXNzKFNVUFBPUlRJTkdfU1RSVUNUVVJFKTsKKworCQltZWNoYW5pY2FsTGlua2FnZUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhNRUNIQU5JQ0FMX0xJTktBR0UpOworCisJCWxlZ0VDbGFzcyA9IGNyZWF0ZUVDbGFzcyhMRUcpOworCisJCWxvY29tb3Rpb25IYXJkd2FyZUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhMT0NPTU9USU9OX0hBUkRXQVJFKTsKKworCQlhY3R1YXRvckhhcmR3YXJlRUNsYXNzID0gY3JlYXRlRUNsYXNzKEFDVFVBVE9SX0hBUkRXQVJFKTsKKworCQltb2JpbGVSb2JvdEVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhNT0JJTEVfUk9CT1QpOworCQljcmVhdGVFQXR0cmlidXRlKG1vYmlsZVJvYm90RUNsYXNzLCBNT0JJTEVfUk9CT1RfX0tJTkQpOworCisJCW1hbmlwdWxhdG9yRUNsYXNzID0gY3JlYXRlRUNsYXNzKE1BTklQVUxBVE9SKTsKKworCQlwaWxvdGVkU3lzdGVtRUNsYXNzID0gY3JlYXRlRUNsYXNzKFBJTE9URURfU1lTVEVNKTsKKworCQlwb3dlckhhcmR3YXJlRUNsYXNzID0gY3JlYXRlRUNsYXNzKFBPV0VSX0hBUkRXQVJFKTsKKworCQlzZW5zb3JIYXJkd2FyZUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhTRU5TT1JfSEFSRFdBUkUpOworCisJCWdyYXNwaW5nSGFyZHdhcmVFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoR1JBU1BJTkdfSEFSRFdBUkUpOworCisJCXN0ZWVyZWRXaGVlbEhhcmR3YXJlRUNsYXNzID0gY3JlYXRlRUNsYXNzKFNURUVSRURfV0hFRUxfSEFSRFdBUkUpOworCisJCWFybUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhBUk0pOworCisJCWxlZ1N5c3RlbUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhMRUdfU1lTVEVNKTsKKworCQlncmFzcGluZ1N5c3RlbUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhHUkFTUElOR19TWVNURU0pOworCisJCXdlYXBvblN5c3RlbUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhXRUFQT05fU1lTVEVNKTsKKworCQltYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtRUNsYXNzID0gY3JlYXRlRUNsYXNzKE1BTl9NQUNISU5FX0lOVEVSRkFDRV9TWVNURU0pOworCisJCWNsb3NlZExvb3BDb250cm9sU3lzdGVtRUNsYXNzID0gY3JlYXRlRUNsYXNzKENMT1NFRF9MT09QX0NPTlRST0xfU1lTVEVNKTsKKworCQlvcGVuTG9vcENvbnRyb2xTeXN0ZW1FQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoT1BFTl9MT09QX0NPTlRST0xfU1lTVEVNKTsKKworCQlyb2JvdGljSGVhZEVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhST0JPVElDX0hFQUQpOworCisJCW5hdmlnYXRpb25Db21tYW5kU3lzdGVtRUNsYXNzID0gY3JlYXRlRUNsYXNzKE5BVklHQVRJT05fQ09NTUFORF9TWVNURU0pOworCisJCWpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtRUNsYXNzID0gY3JlYXRlRUNsYXNzKEpPWVNUSUNfTkFWSUdBVElPTl9TWVNURU0pOworCisJCS8vIENyZWF0ZSBlbnVtcworCQlzeW5jaHJvbml6YXRpb25LaW5kRUVudW0gPSBjcmVhdGVFRW51bShTWU5DSFJPTklaQVRJT05fS0lORCk7CisJCWRhdGFGbG93RGlyZWN0aW9uS2luZEVFbnVtID0gY3JlYXRlRUVudW0oREFUQV9GTE9XX0RJUkVDVElPTl9LSU5EKTsKKwkJc2VydmljZUZsb3dLaW5kRUVudW0gPSBjcmVhdGVFRW51bShTRVJWSUNFX0ZMT1dfS0lORCk7CisJCXVndktpbmRFRW51bSA9IGNyZWF0ZUVFbnVtKFVHVl9LSU5EKTsKKwkJcm9ib3RpY01pZGRsZXdhcmVLaW5kRUVudW0gPSBjcmVhdGVFRW51bShST0JPVElDX01JRERMRVdBUkVfS0lORCk7CisJCXNoYWRlRUVudW0gPSBjcmVhdGVFRW51bShTSEFERSk7CisJCW1vYmlsZVJvYm90S2luZEVFbnVtID0gY3JlYXRlRUVudW0oTU9CSUxFX1JPQk9UX0tJTkQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgYm9vbGVhbiBpc0luaXRpYWxpemVkID0gZmFsc2U7CisKKwkvKioKKwkgKiBDb21wbGV0ZSB0aGUgaW5pdGlhbGl6YXRpb24gb2YgdGhlIHBhY2thZ2UgYW5kIGl0cyBtZXRhLW1vZGVsLiAgVGhpcworCSAqIG1ldGhvZCBpcyBndWFyZGVkIHRvIGhhdmUgbm8gYWZmZWN0IG9uIGFueSBpbnZvY2F0aW9uIGJ1dCBpdHMgZmlyc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpIHsKKwkJaWYgKGlzSW5pdGlhbGl6ZWQpIHJldHVybjsKKwkJaXNJbml0aWFsaXplZCA9IHRydWU7CisKKwkJLy8gSW5pdGlhbGl6ZSBwYWNrYWdlCisJCXNldE5hbWUoZU5BTUUpOworCQlzZXROc1ByZWZpeChlTlNfUFJFRklYKTsKKwkJc2V0TnNVUkkoZU5TX1VSSSk7CisKKwkJLy8gT2J0YWluIG90aGVyIGRlcGVuZGVudCBwYWNrYWdlcworCQlVTUxQYWNrYWdlIHRoZVVNTFBhY2thZ2UgPSAoVU1MUGFja2FnZSlFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShVTUxQYWNrYWdlLmVOU19VUkkpOworCQlUeXBlc1BhY2thZ2UgdGhlVHlwZXNQYWNrYWdlID0gKFR5cGVzUGFja2FnZSlFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShUeXBlc1BhY2thZ2UuZU5TX1VSSSk7CisJCVN0ZF9kYXRhdHlwZXNQYWNrYWdlIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlID0gKFN0ZF9kYXRhdHlwZXNQYWNrYWdlKUVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKFN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpOworCQlHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlIHRoZUdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UgPSAoR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSlFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpOworCisJCS8vIENyZWF0ZSB0eXBlIHBhcmFtZXRlcnMKKworCQkvLyBTZXQgYm91bmRzIGZvciB0eXBlIHBhcmFtZXRlcnMKKworCQkvLyBBZGQgc3VwZXJ0eXBlcyB0byBjbGFzc2VzCisJCWFjdHVhdGVkSm9pbnRFQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRKb2ludCgpKTsKKwkJY29tcGxldGVCb25kaW5nRUNsYXNzLmdldEVTdXBlclR5cGVzKCkuYWRkKHRoaXMuZ2V0Sm9pbnQoKSk7CisJCXJvYm90RUNsYXNzLmdldEVTdXBlclR5cGVzKCkuYWRkKHRoaXMuZ2V0U3lzdGVtKCkpOworCQlhZ2VudEVDbGFzcy5nZXRFU3VwZXJUeXBlcygpLmFkZCh0aGlzLmdldFBoeXNpY2FsT2JqZWN0KCkpOworCQlkYXRhRmxvd1BvcnRFQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRQb3J0KCkpOworCQlzZXJ2aWNlUG9ydEVDbGFzcy5nZXRFU3VwZXJUeXBlcygpLmFkZCh0aGlzLmdldFBvcnQoKSk7CisJCWFjdHVhdG9yU3lzdGVtRUNsYXNzLmdldEVTdXBlclR5cGVzKCkuYWRkKHRoaXMuZ2V0Um9ib3RpY1N5c3RlbSgpKTsKKwkJYWN0dWF0b3JTeXN0ZW1FQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRDeWJlclBoeXNpY2FsU3lzdGVtKCkpOworCQlyb2JvdGljU3lzdGVtRUNsYXNzLmdldEVTdXBlclR5cGVzKCkuYWRkKHRoaXMuZ2V0U3lzdGVtKCkpOworCQljeWJlclBoeXNpY2FsU3lzdGVtRUNsYXNzLmdldEVTdXBlclR5cGVzKCkuYWRkKHRoaXMuZ2V0U3lzdGVtKCkpOworCQlzZW5zb3JTeXN0ZW1FQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRSb2JvdGljU3lzdGVtKCkpOworCQlzZW5zb3JTeXN0ZW1FQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRDeWJlclBoeXNpY2FsU3lzdGVtKCkpOworCQloYXJkd2FyZUVDbGFzcy5nZXRFU3VwZXJUeXBlcygpLmFkZCh0aGlzLmdldFN5c3RlbSgpKTsKKwkJc29mdHdhcmVFQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRTeXN0ZW0oKSk7CisJCWVuZ2luZVN5c3RlbUVDbGFzcy5nZXRFU3VwZXJUeXBlcygpLmFkZCh0aGlzLmdldEFjdHVhdG9yU3lzdGVtKCkpOworCQlzdGVlcmVkV2hlZWxTeXN0ZW1FQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRMb2NvbW90aW9uU3lzdGVtKCkpOworCQlsb2NvbW90aW9uU3lzdGVtRUNsYXNzLmdldEVTdXBlclR5cGVzKCkuYWRkKHRoaXMuZ2V0QWN0dWF0b3JTeXN0ZW0oKSk7CisJCWltYWdlU2Vuc29yU3lzdGVtRUNsYXNzLmdldEVTdXBlclR5cGVzKCkuYWRkKHRoaXMuZ2V0U2Vuc29yU3lzdGVtKCkpOworCQljYW1lcmFTeXN0ZW1FQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRJbWFnZVNlbnNvclN5c3RlbSgpKTsKKwkJb2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtRUNsYXNzLmdldEVTdXBlclR5cGVzKCkuYWRkKHRoaXMuZ2V0U2Vuc29yU3lzdGVtKCkpOworCQlvYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbUVDbGFzcy5nZXRFU3VwZXJUeXBlcygpLmFkZCh0aGlzLmdldFNlbnNvclN5c3RlbSgpKTsKKwkJbGlkYXJTeXN0ZW1FQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0oKSk7CisJCWxpZGFyU3lzdGVtRUNsYXNzLmdldEVTdXBlclR5cGVzKCkuYWRkKHRoaXMuZ2V0T2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0oKSk7CisJCWxvY2FsaXphdGlvblNlbnNvclN5c3RlbUVDbGFzcy5nZXRFU3VwZXJUeXBlcygpLmFkZCh0aGlzLmdldFNlbnNvclN5c3RlbSgpKTsKKwkJZ3BzU3lzdGVtRUNsYXNzLmdldEVTdXBlclR5cGVzKCkuYWRkKHRoaXMuZ2V0TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtKCkpOworCQlzZW5zb3JEcml2ZXJFQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRTb2Z0d2FyZSgpKTsKKwkJYnVpbGRpbmdFQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRQaHlzaWNhbE9iamVjdCgpKTsKKwkJc3VyZmFjZUVDbGFzcy5nZXRFU3VwZXJUeXBlcygpLmFkZCh0aGlzLmdldFBoeXNpY2FsT2JqZWN0KCkpOworCQlwbGFuZXRFQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRQaHlzaWNhbE9iamVjdCgpKTsKKwkJbGFuZFN1cmZhY2VFQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRHcm91bmQoKSk7CisJCWdyb3VuZEVDbGFzcy5nZXRFU3VwZXJUeXBlcygpLmFkZCh0aGlzLmdldFN1cmZhY2UoKSk7CisJCWZsb29yRUNsYXNzLmdldEVTdXBlclR5cGVzKCkuYWRkKHRoaXMuZ2V0R3JvdW5kKCkpOworCQl3YXRlclN1cmZhY2VFQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRTdXJmYWNlKCkpOworCQlodW1hbkVDbGFzcy5nZXRFU3VwZXJUeXBlcygpLmFkZCh0aGlzLmdldEFnZW50KCkpOworCQlwZWRlc3RyaWFuRUNsYXNzLmdldEVTdXBlclR5cGVzKCkuYWRkKHRoaXMuZ2V0SHVtYW4oKSk7CisJCXN0YWlyc0VDbGFzcy5nZXRFU3VwZXJUeXBlcygpLmFkZCh0aGlzLmdldEdyb3VuZCgpKTsKKwkJcGxhdGZvcm1FQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRTeXN0ZW0oKSk7CisJCXJvYm90aWNNaWRkbGV3YXJlRUNsYXNzLmdldEVTdXBlclR5cGVzKCkuYWRkKHRoaXMuZ2V0UGxhdGZvcm0oKSk7CisJCXJvYm90aWNTaW11bGF0b3JFQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRQbGF0Zm9ybSgpKTsKKwkJY3ljYWJUS0VDbGFzcy5nZXRFU3VwZXJUeXBlcygpLmFkZCh0aGlzLmdldFJvYm90aWNTaW11bGF0b3IoKSk7CisJCWJsZW5kZXJNb3JzZUVDbGFzcy5nZXRFU3VwZXJUeXBlcygpLmFkZCh0aGlzLmdldFJvYm90aWNTaW11bGF0b3IoKSk7CisJCWluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtRUNsYXNzLmdldEVTdXBlclR5cGVzKCkuYWRkKHRoaXMuZ2V0U2Vuc29yU3lzdGVtKCkpOworCQlpbmVydGlhbE5hdmlnYXRpb25TeXN0ZW1FQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRHUFNTeXN0ZW0oKSk7CisJCW9kb21ldHJ5U3lzdGVtRUNsYXNzLmdldEVTdXBlclR5cGVzKCkuYWRkKHRoaXMuZ2V0TG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtKCkpOworCQlpbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW1FQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0oKSk7CisJCWd5cm9zY29wZUVDbGFzcy5nZXRFU3VwZXJUeXBlcygpLmFkZCh0aGlzLmdldFNlbnNvclN5c3RlbSgpKTsKKwkJY2hhc3Npc0VDbGFzcy5nZXRFU3VwZXJUeXBlcygpLmFkZCh0aGlzLmdldFN1cHBvcnRpbmdTdHJ1Y3R1cmUoKSk7CisJCXN1cHBvcnRpbmdTdHJ1Y3R1cmVFQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRIYXJkd2FyZSgpKTsKKwkJbWVjaGFuaWNhbExpbmthZ2VFQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRIYXJkd2FyZSgpKTsKKwkJbGVnRUNsYXNzLmdldEVTdXBlclR5cGVzKCkuYWRkKHRoaXMuZ2V0TG9jb21vdGlvbkhhcmR3YXJlKCkpOworCQlsZWdFQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRNZWNoYW5pY2FsTGlua2FnZSgpKTsKKwkJbG9jb21vdGlvbkhhcmR3YXJlRUNsYXNzLmdldEVTdXBlclR5cGVzKCkuYWRkKHRoaXMuZ2V0QWN0dWF0b3JIYXJkd2FyZSgpKTsKKwkJYWN0dWF0b3JIYXJkd2FyZUVDbGFzcy5nZXRFU3VwZXJUeXBlcygpLmFkZCh0aGlzLmdldEhhcmR3YXJlKCkpOworCQltb2JpbGVSb2JvdEVDbGFzcy5nZXRFU3VwZXJUeXBlcygpLmFkZCh0aGlzLmdldFJvYm90KCkpOworCQltYW5pcHVsYXRvckVDbGFzcy5nZXRFU3VwZXJUeXBlcygpLmFkZCh0aGlzLmdldFJvYm90KCkpOworCQlwaWxvdGVkU3lzdGVtRUNsYXNzLmdldEVTdXBlclR5cGVzKCkuYWRkKHRoaXMuZ2V0Um9ib3QoKSk7CisJCXBvd2VySGFyZHdhcmVFQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRIYXJkd2FyZSgpKTsKKwkJc2Vuc29ySGFyZHdhcmVFQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRIYXJkd2FyZSgpKTsKKwkJZ3Jhc3BpbmdIYXJkd2FyZUVDbGFzcy5nZXRFU3VwZXJUeXBlcygpLmFkZCh0aGlzLmdldEFjdHVhdG9ySGFyZHdhcmUoKSk7CisJCXN0ZWVyZWRXaGVlbEhhcmR3YXJlRUNsYXNzLmdldEVTdXBlclR5cGVzKCkuYWRkKHRoaXMuZ2V0TG9jb21vdGlvbkhhcmR3YXJlKCkpOworCQlsZWdTeXN0ZW1FQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRMb2NvbW90aW9uU3lzdGVtKCkpOworCQlncmFzcGluZ1N5c3RlbUVDbGFzcy5nZXRFU3VwZXJUeXBlcygpLmFkZCh0aGlzLmdldEFjdHVhdG9yU3lzdGVtKCkpOworCQl3ZWFwb25TeXN0ZW1FQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRBY3R1YXRvclN5c3RlbSgpKTsKKwkJbWFuTWFjaGluZUludGVyZmFjZVN5c3RlbUVDbGFzcy5nZXRFU3VwZXJUeXBlcygpLmFkZCh0aGlzLmdldEN5YmVyUGh5c2ljYWxTeXN0ZW0oKSk7CisJCWNsb3NlZExvb3BDb250cm9sU3lzdGVtRUNsYXNzLmdldEVTdXBlclR5cGVzKCkuYWRkKHRoaXMuZ2V0Q3liZXJQaHlzaWNhbFN5c3RlbSgpKTsKKwkJb3Blbkxvb3BDb250cm9sU3lzdGVtRUNsYXNzLmdldEVTdXBlclR5cGVzKCkuYWRkKHRoaXMuZ2V0Q3liZXJQaHlzaWNhbFN5c3RlbSgpKTsKKwkJcm9ib3RpY0hlYWRFQ2xhc3MuZ2V0RVN1cGVyVHlwZXMoKS5hZGQodGhpcy5nZXRNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtKCkpOworCQluYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbUVDbGFzcy5nZXRFU3VwZXJUeXBlcygpLmFkZCh0aGlzLmdldE1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0oKSk7CisJCWpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtRUNsYXNzLmdldEVTdXBlclR5cGVzKCkuYWRkKHRoaXMuZ2V0TmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0oKSk7CisKKwkJLy8gSW5pdGlhbGl6ZSBjbGFzc2VzLCBmZWF0dXJlcywgYW5kIG9wZXJhdGlvbnM7IGFkZCBwYXJhbWV0ZXJzCisJCWluaXRFQ2xhc3ModHJhbnNpdGlvbkVDbGFzcywgVHJhbnNpdGlvbi5jbGFzcywgIlRyYW5zaXRpb24iLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFUmVmZXJlbmNlKGdldFRyYW5zaXRpb25fQmFzZV9UcmFuc2l0aW9uKCksIHRoZVVNTFBhY2thZ2UuZ2V0VHJhbnNpdGlvbigpLCBudWxsLCAiYmFzZV9UcmFuc2l0aW9uIiwgbnVsbCwgMSwgMSwgVHJhbnNpdGlvbi5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfQ09NUE9TSVRFLCBJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFUmVmZXJlbmNlKGdldFRyYW5zaXRpb25fR3VhcmQoKSwgdGhlVU1MUGFja2FnZS5nZXRCZWhhdmlvcigpLCBudWxsLCAiZ3VhcmQiLCBudWxsLCAxLCAxLCBUcmFuc2l0aW9uLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19DT01QT1NJVEUsIElTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0VHJhbnNpdGlvbl9FZmZlY3QoKSwgdGhlVU1MUGFja2FnZS5nZXRCZWhhdmlvcigpLCBudWxsLCAiZWZmZWN0IiwgbnVsbCwgMSwgMSwgVHJhbnNpdGlvbi5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfQ09NUE9TSVRFLCBJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhhbGdvcml0aG1FQ2xhc3MsIEFsZ29yaXRobS5jbGFzcywgIkFsZ29yaXRobSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0QWxnb3JpdGhtX0Jhc2VfT3BlcmF0aW9uKCksIHRoZVVNTFBhY2thZ2UuZ2V0T3BlcmF0aW9uKCksIG51bGwsICJiYXNlX09wZXJhdGlvbiIsIG51bGwsIDEsIDEsIEFsZ29yaXRobS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfQ09NUE9TSVRFLCBJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEFsZ29yaXRobV9Jc0V4dGVybmFsKCksIHRoZVR5cGVzUGFja2FnZS5nZXRCb29sZWFuKCksICJpc0V4dGVybmFsIiwgbnVsbCwgMSwgMSwgQWxnb3JpdGhtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0QWxnb3JpdGhtX0V4dEZ1bmN0aW9uTmFtZSgpLCB0aGVUeXBlc1BhY2thZ2UuZ2V0U3RyaW5nKCksICJleHRGdW5jdGlvbk5hbWUiLCBudWxsLCAxLCAxLCBBbGdvcml0aG0uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRBbGdvcml0aG1fTGliUGF0aCgpLCB0aGVUeXBlc1BhY2thZ2UuZ2V0U3RyaW5nKCksICJsaWJQYXRoIiwgbnVsbCwgMSwgMSwgQWxnb3JpdGhtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0QWxnb3JpdGhtX0xpYkZpbGVGb3JtYXQoKSwgdGhlVHlwZXNQYWNrYWdlLmdldFN0cmluZygpLCAibGliRmlsZUZvcm1hdCIsICJlbGYiLCAxLCAxLCBBbGdvcml0aG0uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3Moc3RhdGVFQ2xhc3MsIFN0YXRlLmNsYXNzLCAiU3RhdGUiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFUmVmZXJlbmNlKGdldFN0YXRlX0Jhc2VfU3RhdGUoKSwgdGhlVU1MUGFja2FnZS5nZXRTdGF0ZSgpLCBudWxsLCAiYmFzZV9TdGF0ZSIsIG51bGwsIDEsIDEsIFN0YXRlLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19DT01QT1NJVEUsIElTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0U3RhdGVfQmVoYXZpb3IoKSwgdGhlVU1MUGFja2FnZS5nZXRCZWhhdmlvcigpLCBudWxsLCAiYmVoYXZpb3IiLCBudWxsLCAxLCAxLCBTdGF0ZS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfQ09NUE9TSVRFLCBJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhhY3R1YXRlZEpvaW50RUNsYXNzLCBBY3R1YXRlZEpvaW50LmNsYXNzLCAiQWN0dWF0ZWRKb2ludCIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKworCQlpbml0RUNsYXNzKGpvaW50RUNsYXNzLCBKb2ludC5jbGFzcywgIkpvaW50IiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXRKb2ludF9CYXNlX0Nvbm5lY3RvcigpLCB0aGVVTUxQYWNrYWdlLmdldENvbm5lY3RvcigpLCBudWxsLCAiYmFzZV9Db25uZWN0b3IiLCBudWxsLCAxLCAxLCBKb2ludC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfQ09NUE9TSVRFLCBJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhjb21wbGV0ZUJvbmRpbmdFQ2xhc3MsIENvbXBsZXRlQm9uZGluZy5jbGFzcywgIkNvbXBsZXRlQm9uZGluZyIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKworCQlpbml0RUNsYXNzKHJvYm90RUNsYXNzLCBSb2JvdC5jbGFzcywgIlJvYm90IiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RUF0dHJpYnV0ZShnZXRSb2JvdF9XaWR0aCgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDMyKCksICJ3aWR0aCIsIG51bGwsIDEsIDEsIFJvYm90LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKHN5c3RlbUVDbGFzcywgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbS5jbGFzcywgIlN5c3RlbSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0U3lzdGVtX0Jhc2VfQ2xhc3MoKSwgdGhlVU1MUGFja2FnZS5nZXRDbGFzc18oKSwgbnVsbCwgImJhc2VfQ2xhc3MiLCBudWxsLCAxLCAxLCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19DT01QT1NJVEUsIElTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0U3lzdGVtX05hdGl2ZSgpLCB0aGVUeXBlc1BhY2thZ2UuZ2V0Qm9vbGVhbigpLCAibmF0aXZlIiwgbnVsbCwgMSwgMSwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldFN5c3RlbV9MaWJyYXJ5UGF0aCgpLCB0aGVUeXBlc1BhY2thZ2UuZ2V0U3RyaW5nKCksICJsaWJyYXJ5UGF0aCIsIG51bGwsIDEsIDEsIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRTeXN0ZW1fTGlicmFyeUNvbXBvbmVudE5hbWUoKSwgdGhlVHlwZXNQYWNrYWdlLmdldFN0cmluZygpLCAibGlicmFyeUNvbXBvbmVudE5hbWUiLCBudWxsLCAxLCAxLCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0U3lzdGVtX0FsaWFzKCksIHRoZVR5cGVzUGFja2FnZS5nZXRTdHJpbmcoKSwgImFsaWFzIiwgbnVsbCwgMSwgMSwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhhZ2VudEVDbGFzcywgQWdlbnQuY2xhc3MsICJBZ2VudCIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKworCQlpbml0RUNsYXNzKHBoeXNpY2FsT2JqZWN0RUNsYXNzLCBQaHlzaWNhbE9iamVjdC5jbGFzcywgIlBoeXNpY2FsT2JqZWN0IiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RUF0dHJpYnV0ZShnZXRQaHlzaWNhbE9iamVjdF9IZWlnaHQoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAiaGVpZ2h0IiwgbnVsbCwgMSwgMSwgUGh5c2ljYWxPYmplY3QuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRQaHlzaWNhbE9iamVjdF9NYXNzKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0MzIoKSwgIm1hc3MiLCBudWxsLCAxLCAxLCBQaHlzaWNhbE9iamVjdC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFUmVmZXJlbmNlKGdldFBoeXNpY2FsT2JqZWN0X0Jhc2VfQ2xhc3MoKSwgdGhlVU1MUGFja2FnZS5nZXRDbGFzc18oKSwgbnVsbCwgImJhc2VfQ2xhc3MiLCBudWxsLCAxLCAxLCBQaHlzaWNhbE9iamVjdC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfQ09NUE9TSVRFLCBJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhkYXRhRmxvd1BvcnRFQ2xhc3MsIERhdGFGbG93UG9ydC5jbGFzcywgIkRhdGFGbG93UG9ydCIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0RGF0YUZsb3dQb3J0X0RpcmVjdGlvbigpLCB0aGlzLmdldERhdGFGbG93RGlyZWN0aW9uS2luZCgpLCAiZGlyZWN0aW9uIiwgbnVsbCwgMSwgMSwgRGF0YUZsb3dQb3J0LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0RGF0YUZsb3dQb3J0X0J1ZmZlclNpemUoKSwgdGhlVHlwZXNQYWNrYWdlLmdldEludGVnZXIoKSwgImJ1ZmZlclNpemUiLCAiMCIsIDEsIDEsIERhdGFGbG93UG9ydC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhwb3J0RUNsYXNzLCBQb3J0LmNsYXNzLCAiUG9ydCIsIElTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXRQb3J0X0Jhc2VfUG9ydCgpLCB0aGVVTUxQYWNrYWdlLmdldFBvcnQoKSwgbnVsbCwgImJhc2VfUG9ydCIsIG51bGwsIDEsIDEsIFBvcnQuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX0NPTVBPU0lURSwgSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRQb3J0X1N5bmNocm9uaXphdGlvblBvbGljeSgpLCB0aGlzLmdldFN5bmNocm9uaXphdGlvbktpbmQoKSwgInN5bmNocm9uaXphdGlvblBvbGljeSIsIG51bGwsIDEsIDEsIFBvcnQuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3Moc2VydmljZVBvcnRFQ2xhc3MsIFNlcnZpY2VQb3J0LmNsYXNzLCAiU2VydmljZVBvcnQiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFQXR0cmlidXRlKGdldFNlcnZpY2VQb3J0X0tpbmQoKSwgdGhpcy5nZXRTZXJ2aWNlRmxvd0tpbmQoKSwgImtpbmQiLCBudWxsLCAxLCAxLCBTZXJ2aWNlUG9ydC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhhY3R1YXRvclN5c3RlbUVDbGFzcywgQWN0dWF0b3JTeXN0ZW0uY2xhc3MsICJBY3R1YXRvclN5c3RlbSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKworCQlpbml0RUNsYXNzKHJvYm90aWNTeXN0ZW1FQ2xhc3MsIFJvYm90aWNTeXN0ZW0uY2xhc3MsICJSb2JvdGljU3lzdGVtIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXRSb2JvdGljU3lzdGVtX0xvY2FsUG9zaXRpb24oKSwgdGhlR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5nZXRQb2ludDMyKCksIG51bGwsICJsb2NhbFBvc2l0aW9uIiwgbnVsbCwgMSwgMSwgUm9ib3RpY1N5c3RlbS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFUmVmZXJlbmNlKGdldFJvYm90aWNTeXN0ZW1fTG9jYWxPcmllbnRhdGlvbigpLCB0aGVHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmdldFBvaW50MzIoKSwgbnVsbCwgImxvY2FsT3JpZW50YXRpb24iLCBudWxsLCAxLCAxLCBSb2JvdGljU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKGN5YmVyUGh5c2ljYWxTeXN0ZW1FQ2xhc3MsIEN5YmVyUGh5c2ljYWxTeXN0ZW0uY2xhc3MsICJDeWJlclBoeXNpY2FsU3lzdGVtIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCisJCWluaXRFQ2xhc3Moc2Vuc29yU3lzdGVtRUNsYXNzLCBTZW5zb3JTeXN0ZW0uY2xhc3MsICJTZW5zb3JTeXN0ZW0iLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFQXR0cmlidXRlKGdldFNlbnNvclN5c3RlbV9GcmVxdWVuY3koKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAiZnJlcXVlbmN5IiwgbnVsbCwgMSwgMSwgU2Vuc29yU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0U2Vuc29yU3lzdGVtX0lkZW50aWZpZXIoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0U3RyaW5nKCksICJpZGVudGlmaWVyIiwgbnVsbCwgMSwgMSwgU2Vuc29yU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKGhhcmR3YXJlRUNsYXNzLCBIYXJkd2FyZS5jbGFzcywgIkhhcmR3YXJlIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCisJCWluaXRFQ2xhc3Moc29mdHdhcmVFQ2xhc3MsIFNvZnR3YXJlLmNsYXNzLCAiU29mdHdhcmUiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFQXR0cmlidXRlKGdldFNvZnR3YXJlX0lzUGVyaW9kaWMoKSwgdGhlVHlwZXNQYWNrYWdlLmdldEJvb2xlYW4oKSwgImlzUGVyaW9kaWMiLCBudWxsLCAxLCAxLCBTb2Z0d2FyZS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldFNvZnR3YXJlX1BlcmlvZCgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDMyKCksICJwZXJpb2QiLCBudWxsLCAxLCAxLCBTb2Z0d2FyZS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldFNvZnR3YXJlX1ByaW9yaXR5KCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFVJbnQ4KCksICJwcmlvcml0eSIsIG51bGwsIDEsIDEsIFNvZnR3YXJlLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0U29mdHdhcmVfRGVhZGxpbmUoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAiZGVhZGxpbmUiLCBudWxsLCAxLCAxLCBTb2Z0d2FyZS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldFNvZnR3YXJlX1djZXQoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAid2NldCIsIG51bGwsIDEsIDEsIFNvZnR3YXJlLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKGVuZ2luZVN5c3RlbUVDbGFzcywgRW5naW5lU3lzdGVtLmNsYXNzLCAiRW5naW5lU3lzdGVtIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RUF0dHJpYnV0ZShnZXRFbmdpbmVTeXN0ZW1fVmVoaWNsZVRyYWN0aW9uKCksIHRoZVR5cGVzUGFja2FnZS5nZXRTdHJpbmcoKSwgInZlaGljbGVUcmFjdGlvbiIsIG51bGwsIDEsIDEsIEVuZ2luZVN5c3RlbS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEVuZ2luZVN5c3RlbV9NYXhFbmdpbmVGb3JjZSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDMyKCksICJtYXhFbmdpbmVGb3JjZSIsIG51bGwsIDEsIDEsIEVuZ2luZVN5c3RlbS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEVuZ2luZVN5c3RlbV9NYXhCcmVha2luZ0ZvcmNlKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0MzIoKSwgIm1heEJyZWFraW5nRm9yY2UiLCBudWxsLCAxLCAxLCBFbmdpbmVTeXN0ZW0uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRFbmdpbmVTeXN0ZW1fTWF4QWxsb3dlZFN0ZWVyaW5nKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0MzIoKSwgIm1heEFsbG93ZWRTdGVlcmluZyIsIG51bGwsIDEsIDEsIEVuZ2luZVN5c3RlbS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEVuZ2luZVN5c3RlbV9NYXhBbGxvd2VkVmVsb2NpdHkoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAibWF4QWxsb3dlZFZlbG9jaXR5IiwgbnVsbCwgMSwgMSwgRW5naW5lU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0RW5naW5lU3lzdGVtX0dlYXJfcmF0aW9uKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0MzIoKSwgImdlYXJfcmF0aW9uIiwgbnVsbCwgMSwgMSwgRW5naW5lU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKHN0ZWVyZWRXaGVlbFN5c3RlbUVDbGFzcywgU3RlZXJlZFdoZWVsU3lzdGVtLmNsYXNzLCAiU3RlZXJlZFdoZWVsU3lzdGVtIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RUF0dHJpYnV0ZShnZXRTdGVlcmVkV2hlZWxTeXN0ZW1fV2hlZWxSYWRpdXMoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAid2hlZWxSYWRpdXMiLCBudWxsLCAxLCAxLCBTdGVlcmVkV2hlZWxTeXN0ZW0uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRTdGVlcmVkV2hlZWxTeXN0ZW1fV2hlZWxXaWR0aCgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDMyKCksICJ3aGVlbFdpZHRoIiwgbnVsbCwgMSwgMSwgU3RlZXJlZFdoZWVsU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1N1c3BlbnNpb25SZXN0TGVuZ3RoKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0MzIoKSwgInN1c3BlbnNpb25SZXN0TGVuZ3RoIiwgbnVsbCwgMSwgMSwgU3RlZXJlZFdoZWVsU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1doZWVsQ29ubmVjdGlvbkhlaWdodCgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDMyKCksICJ3aGVlbENvbm5lY3Rpb25IZWlnaHQiLCBudWxsLCAxLCAxLCBTdGVlcmVkV2hlZWxTeXN0ZW0uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRTdGVlcmVkV2hlZWxTeXN0ZW1fVHlwZU9mV2hlZWwoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0U3RyaW5nKCksICJ0eXBlT2ZXaGVlbCIsIG51bGwsIDEsIDEsIFN0ZWVyZWRXaGVlbFN5c3RlbS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldFN0ZWVyZWRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEa3AoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAid2hlZWxWZWxvY2l0eVBJRGtwIiwgbnVsbCwgMSwgMSwgU3RlZXJlZFdoZWVsU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURraSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDMyKCksICJ3aGVlbFZlbG9jaXR5UElEa2kiLCBudWxsLCAxLCAxLCBTdGVlcmVkV2hlZWxTeXN0ZW0uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRTdGVlcmVkV2hlZWxTeXN0ZW1fV2hlZWxWZWxvY2l0eVBJRGtkKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0MzIoKSwgIndoZWVsVmVsb2NpdHlQSURrZCIsIG51bGwsIDEsIDEsIFN0ZWVyZWRXaGVlbFN5c3RlbS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldFN0ZWVyZWRXaGVlbFN5c3RlbV9XaGVlbFN0ZWVyaW5nUElEa3AoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAid2hlZWxTdGVlcmluZ1BJRGtwIiwgbnVsbCwgMSwgMSwgU3RlZXJlZFdoZWVsU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1doZWVsU3RlZXJpbmdQSURrZCgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDMyKCksICJ3aGVlbFN0ZWVyaW5nUElEa2QiLCBudWxsLCAxLCAxLCBTdGVlcmVkV2hlZWxTeXN0ZW0uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRTdGVlcmVkV2hlZWxTeXN0ZW1fV2hlZWxGcmljdGlvbigpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDMyKCksICJ3aGVlbEZyaWN0aW9uIiwgbnVsbCwgMSwgMSwgU3RlZXJlZFdoZWVsU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1N1c3BlbnNpb25TdGlmZm5lc3MoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAic3VzcGVuc2lvblN0aWZmbmVzcyIsIG51bGwsIDEsIDEsIFN0ZWVyZWRXaGVlbFN5c3RlbS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldFN0ZWVyZWRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uRGFtcGluZygpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDMyKCksICJzdXNwZW5zaW9uRGFtcGluZyIsIG51bGwsIDEsIDEsIFN0ZWVyZWRXaGVlbFN5c3RlbS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldFN0ZWVyZWRXaGVlbFN5c3RlbV9TdXNwZW5zaW9uQ29tcHJlc3Npb24oKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAic3VzcGVuc2lvbkNvbXByZXNzaW9uIiwgbnVsbCwgMSwgMSwgU3RlZXJlZFdoZWVsU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0U3RlZXJlZFdoZWVsU3lzdGVtX1doZWVsVmVsb2NpdHlQSURtYXhTdW0oKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAid2hlZWxWZWxvY2l0eVBJRG1heFN1bSIsIG51bGwsIDEsIDEsIFN0ZWVyZWRXaGVlbFN5c3RlbS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldFN0ZWVyZWRXaGVlbFN5c3RlbV9XaGVlbFZlbG9jaXR5UElEbWF4VmFsKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0MzIoKSwgIndoZWVsVmVsb2NpdHlQSURtYXhWYWwiLCBudWxsLCAxLCAxLCBTdGVlcmVkV2hlZWxTeXN0ZW0uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3MobG9jb21vdGlvblN5c3RlbUVDbGFzcywgTG9jb21vdGlvblN5c3RlbS5jbGFzcywgIkxvY29tb3Rpb25TeXN0ZW0iLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisKKwkJaW5pdEVDbGFzcyhpbWFnZVNlbnNvclN5c3RlbUVDbGFzcywgSW1hZ2VTZW5zb3JTeXN0ZW0uY2xhc3MsICJJbWFnZVNlbnNvclN5c3RlbSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKworCQlpbml0RUNsYXNzKGNhbWVyYVN5c3RlbUVDbGFzcywgQ2FtZXJhU3lzdGVtLmNsYXNzLCAiQ2FtZXJhU3lzdGVtIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RUF0dHJpYnV0ZShnZXRDYW1lcmFTeXN0ZW1fV2lkdGgoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0VUludDMyKCksICJ3aWR0aCIsICIwIiwgMSwgMSwgQ2FtZXJhU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0Q2FtZXJhU3lzdGVtX0hlaWdodCgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRVSW50MzIoKSwgImhlaWdodCIsIG51bGwsIDEsIDEsIENhbWVyYVN5c3RlbS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldENhbWVyYVN5c3RlbV9BbHBoYV91KCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0MzIoKSwgImFscGhhX3UiLCBudWxsLCAxLCAxLCBDYW1lcmFTeXN0ZW0uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRDYW1lcmFTeXN0ZW1fQWxwaGFfdigpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDMyKCksICJhbHBoYV92IiwgbnVsbCwgMSwgMSwgQ2FtZXJhU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0Q2FtZXJhU3lzdGVtX1UwKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0MzIoKSwgInUwIiwgbnVsbCwgMSwgMSwgQ2FtZXJhU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0Q2FtZXJhU3lzdGVtX1YwKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0MzIoKSwgInYwIiwgbnVsbCwgMSwgMSwgQ2FtZXJhU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0Q2FtZXJhU3lzdGVtX0NvbG9yX2Zvcm1hdCgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRTdHJpbmcoKSwgImNvbG9yX2Zvcm1hdCIsIG51bGwsIDEsIDEsIENhbWVyYVN5c3RlbS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFUmVmZXJlbmNlKGdldENhbWVyYVN5c3RlbV9UcmFuc2xhdGUoKSwgdGhlR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5nZXRQb2ludDMyKCksIG51bGwsICJ0cmFuc2xhdGUiLCBudWxsLCAxLCAxLCBDYW1lcmFTeXN0ZW0uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RVJlZmVyZW5jZShnZXRDYW1lcmFTeXN0ZW1fUm90YXRlKCksIHRoZUdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuZ2V0UG9pbnQzMigpLCBudWxsLCAicm90YXRlIiwgbnVsbCwgMSwgMSwgQ2FtZXJhU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKG9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUVDbGFzcywgT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtLmNsYXNzLCAiT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCisJCWluaXRFQ2xhc3Mob2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1FQ2xhc3MsIE9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtLmNsYXNzLCAiT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0iLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisKKwkJaW5pdEVDbGFzcyhsaWRhclN5c3RlbUVDbGFzcywgTGlkYXJTeXN0ZW0uY2xhc3MsICJMaWRhclN5c3RlbSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0TGlkYXJTeXN0ZW1fTmJMYXllcnMoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0VUludDMyKCksICJuYkxheWVycyIsIG51bGwsIDEsIDEsIExpZGFyU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0TGlkYXJTeXN0ZW1fTGF5ZXJBbmdsZU1pbigpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDMyKCksICJsYXllckFuZ2xlTWluIiwgbnVsbCwgMSwgMSwgTGlkYXJTeXN0ZW0uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRMaWRhclN5c3RlbV9MYXllckFuZ2xlU3RlcCgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDMyKCksICJsYXllckFuZ2xlU3RlcCIsIG51bGwsIDEsIDEsIExpZGFyU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0TGlkYXJTeXN0ZW1fTm9pc2UoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0Qm9vbCgpLCAibm9pc2UiLCBudWxsLCAxLCAxLCBMaWRhclN5c3RlbS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldExpZGFyU3lzdGVtX1NpZ21hTm9pc2UoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAic2lnbWFOb2lzZSIsIG51bGwsIDEsIDEsIExpZGFyU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0TGlkYXJTeXN0ZW1fQW5nbGVfbWluKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0MzIoKSwgImFuZ2xlX21pbiIsIG51bGwsIDEsIDEsIExpZGFyU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0TGlkYXJTeXN0ZW1fQW5nbGVfbWF4KCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0MzIoKSwgImFuZ2xlX21heCIsIG51bGwsIDEsIDEsIExpZGFyU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0TGlkYXJTeXN0ZW1fVGltZV9pbmNyZW1lbnQoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAidGltZV9pbmNyZW1lbnQiLCBudWxsLCAxLCAxLCBMaWRhclN5c3RlbS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldExpZGFyU3lzdGVtX1NjYW5fdGltZSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDMyKCksICJzY2FuX3RpbWUiLCBudWxsLCAxLCAxLCBMaWRhclN5c3RlbS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldExpZGFyU3lzdGVtX1JhbmdlX21pbigpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDMyKCksICJyYW5nZV9taW4iLCBudWxsLCAxLCAxLCBMaWRhclN5c3RlbS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldExpZGFyU3lzdGVtX1JhbmdlX21heCgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDMyKCksICJyYW5nZV9tYXgiLCBudWxsLCAxLCAxLCBMaWRhclN5c3RlbS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldExpZGFyU3lzdGVtX05iUmF5cygpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRVSW50MzIoKSwgIm5iUmF5cyIsIG51bGwsIDEsIDEsIExpZGFyU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKGxvY2FsaXphdGlvblNlbnNvclN5c3RlbUVDbGFzcywgTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtLmNsYXNzLCAiTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCisJCWluaXRFQ2xhc3MoZ3BzU3lzdGVtRUNsYXNzLCBHUFNTeXN0ZW0uY2xhc3MsICJHUFNTeXN0ZW0iLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFUmVmZXJlbmNlKGdldEdQU1N5c3RlbV9PcmlnaW5Qb3NpdGlvbigpLCB0aGVHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmdldFBvaW50MzIoKSwgbnVsbCwgIm9yaWdpblBvc2l0aW9uIiwgbnVsbCwgMCwgMSwgR1BTU3lzdGVtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKGFsZ29yaXRobUxpYnJhcnlFQ2xhc3MsIEFsZ29yaXRobUxpYnJhcnkuY2xhc3MsICJBbGdvcml0aG1MaWJyYXJ5IiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXRBbGdvcml0aG1MaWJyYXJ5X0Jhc2VfQ2xhc3MoKSwgdGhlVU1MUGFja2FnZS5nZXRDbGFzc18oKSwgbnVsbCwgImJhc2VfQ2xhc3MiLCBudWxsLCAxLCAxLCBBbGdvcml0aG1MaWJyYXJ5LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19DT01QT1NJVEUsIElTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0QWxnb3JpdGhtTGlicmFyeV9QYXRoKCksIHRoZVR5cGVzUGFja2FnZS5nZXRTdHJpbmcoKSwgInBhdGgiLCBudWxsLCAxLCAxLCBBbGdvcml0aG1MaWJyYXJ5LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKHNlbnNvckRyaXZlckVDbGFzcywgU2Vuc29yRHJpdmVyLmNsYXNzLCAiU2Vuc29yRHJpdmVyIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCisJCWluaXRFQ2xhc3MoZW52aXJvbm1lbnRFQ2xhc3MsIEVudmlyb25tZW50LmNsYXNzLCAiRW52aXJvbm1lbnQiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFUmVmZXJlbmNlKGdldEVudmlyb25tZW50X0Jhc2VfQ2xhc3MoKSwgdGhlVU1MUGFja2FnZS5nZXRDbGFzc18oKSwgbnVsbCwgImJhc2VfQ2xhc3MiLCBudWxsLCAxLCAxLCBFbnZpcm9ubWVudC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfQ09NUE9TSVRFLCBJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhidWlsZGluZ0VDbGFzcywgQnVpbGRpbmcuY2xhc3MsICJCdWlsZGluZyIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKworCQlpbml0RUNsYXNzKHN1cmZhY2VFQ2xhc3MsIFN1cmZhY2UuY2xhc3MsICJTdXJmYWNlIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCisJCWluaXRFQ2xhc3MocGxhbmV0RUNsYXNzLCBQbGFuZXQuY2xhc3MsICJQbGFuZXQiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisKKwkJaW5pdEVDbGFzcyhsYW5kU3VyZmFjZUVDbGFzcywgTGFuZFN1cmZhY2UuY2xhc3MsICJMYW5kU3VyZmFjZSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKworCQlpbml0RUNsYXNzKGdyb3VuZEVDbGFzcywgR3JvdW5kLmNsYXNzLCAiR3JvdW5kIiwgSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisKKwkJaW5pdEVDbGFzcyhmbG9vckVDbGFzcywgRmxvb3IuY2xhc3MsICJGbG9vciIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKworCQlpbml0RUNsYXNzKHdhdGVyU3VyZmFjZUVDbGFzcywgV2F0ZXJTdXJmYWNlLmNsYXNzLCAiV2F0ZXJTdXJmYWNlIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCisJCWluaXRFQ2xhc3MoaHVtYW5FQ2xhc3MsIEh1bWFuLmNsYXNzLCAiSHVtYW4iLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisKKwkJaW5pdEVDbGFzcyhwZWRlc3RyaWFuRUNsYXNzLCBQZWRlc3RyaWFuLmNsYXNzLCAiUGVkZXN0cmlhbiIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKworCQlpbml0RUNsYXNzKHN0YWlyc0VDbGFzcywgU3RhaXJzLmNsYXNzLCAiU3RhaXJzIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCisJCWluaXRFQ2xhc3MocGxhdGZvcm1FQ2xhc3MsIFBsYXRmb3JtLmNsYXNzLCAiUGxhdGZvcm0iLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFUmVmZXJlbmNlKGdldFBsYXRmb3JtX0Jhc2VfTm9kZSgpLCB0aGVVTUxQYWNrYWdlLmdldE5vZGUoKSwgbnVsbCwgImJhc2VfTm9kZSIsIG51bGwsIDEsIDEsIFBsYXRmb3JtLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19DT01QT1NJVEUsIElTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0UGxhdGZvcm1fTGlicmFyeSgpLCB0aGlzLmdldEV4dGVybmFsTGlicmFyeSgpLCBudWxsLCAibGlicmFyeSIsIG51bGwsIDAsIC0xLCBQbGF0Zm9ybS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfQ09NUE9TSVRFLCBJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhleHRlcm5hbExpYnJhcnlFQ2xhc3MsIEV4dGVybmFsTGlicmFyeS5jbGFzcywgIkV4dGVybmFsTGlicmFyeSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0RXh0ZXJuYWxMaWJyYXJ5X0xpYlBhdGgoKSwgdGhlVHlwZXNQYWNrYWdlLmdldFN0cmluZygpLCAibGliUGF0aCIsIG51bGwsIDEsIDEsIEV4dGVybmFsTGlicmFyeS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEV4dGVybmFsTGlicmFyeV9MaWJGaWxlRm9ybWF0KCksIHRoZVR5cGVzUGFja2FnZS5nZXRTdHJpbmcoKSwgImxpYkZpbGVGb3JtYXQiLCAiZWxmIiwgMSwgMSwgRXh0ZXJuYWxMaWJyYXJ5LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0RXh0ZXJuYWxMaWJyYXJ5X0Jhc2VfSW50ZXJmYWNlKCksIHRoZVVNTFBhY2thZ2UuZ2V0SW50ZXJmYWNlKCksIG51bGwsICJiYXNlX0ludGVyZmFjZSIsIG51bGwsIDEsIDEsIEV4dGVybmFsTGlicmFyeS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfQ09NUE9TSVRFLCBJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhyb2JvdGljTWlkZGxld2FyZUVDbGFzcywgUm9ib3RpY01pZGRsZXdhcmUuY2xhc3MsICJSb2JvdGljTWlkZGxld2FyZSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0Um9ib3RpY01pZGRsZXdhcmVfS2luZCgpLCB0aGlzLmdldFJvYm90aWNNaWRkbGV3YXJlS2luZCgpLCAia2luZCIsIG51bGwsIDEsIDEsIFJvYm90aWNNaWRkbGV3YXJlLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKHJvYm90aWNTaW11bGF0b3JFQ2xhc3MsIFJvYm90aWNTaW11bGF0b3IuY2xhc3MsICJSb2JvdGljU2ltdWxhdG9yIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCisJCWluaXRFQ2xhc3MoY3ljYWJUS0VDbGFzcywgQ3ljYWJUSy5jbGFzcywgIkN5Y2FiVEsiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFQXR0cmlidXRlKGdldEN5Y2FiVEtfVXNlUmVhbFRpbWUoKSwgdGhlVHlwZXNQYWNrYWdlLmdldEJvb2xlYW4oKSwgInVzZVJlYWxUaW1lIiwgbnVsbCwgMCwgMSwgQ3ljYWJUSy5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEN5Y2FiVEtfVGltZVN0ZXAoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAidGltZVN0ZXAiLCBudWxsLCAwLCAxLCBDeWNhYlRLLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0Q3ljYWJUS19UaW1lRmFjdG9yKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0MzIoKSwgInRpbWVGYWN0b3IiLCBudWxsLCAwLCAxLCBDeWNhYlRLLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKGJsZW5kZXJNb3JzZUVDbGFzcywgQmxlbmRlck1vcnNlLmNsYXNzLCAiQmxlbmRlck1vcnNlIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RUF0dHJpYnV0ZShnZXRCbGVuZGVyTW9yc2VfRGVidWdNb2RlKCksIHRoZVR5cGVzUGFja2FnZS5nZXRCb29sZWFuKCksICJkZWJ1Z01vZGUiLCBudWxsLCAwLCAxLCBCbGVuZGVyTW9yc2UuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRCbGVuZGVyTW9yc2VfRGVidWdEaXNwbGF5KCksIHRoZVR5cGVzUGFja2FnZS5nZXRCb29sZWFuKCksICJkZWJ1Z0Rpc3BsYXkiLCBudWxsLCAwLCAxLCBCbGVuZGVyTW9yc2UuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRCbGVuZGVyTW9yc2VfR3Jhdml0eSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDMyKCksICJncmF2aXR5IiwgbnVsbCwgMCwgMSwgQmxlbmRlck1vcnNlLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0QmxlbmRlck1vcnNlX192aWV3cG9ydF9zaGFkZSgpLCB0aGlzLmdldFNoYWRlKCksICJfdmlld3BvcnRfc2hhZGUiLCAiV0lSRUZSQU1FIiwgMCwgMSwgQmxlbmRlck1vcnNlLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKG9uUG9ydEVDbGFzcywgT25Qb3J0LmNsYXNzLCAiT25Qb3J0IiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXRPblBvcnRfUG9ydCgpLCB0aGlzLmdldFBvcnQoKSwgbnVsbCwgInBvcnQiLCBudWxsLCAxLCAxLCBPblBvcnQuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX0NPTVBPU0lURSwgSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RVJlZmVyZW5jZShnZXRPblBvcnRfQmFzZV9QYXJhbWV0ZXIoKSwgdGhlVU1MUGFja2FnZS5nZXRQYXJhbWV0ZXIoKSwgbnVsbCwgImJhc2VfUGFyYW1ldGVyIiwgbnVsbCwgMSwgMSwgT25Qb3J0LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19DT01QT1NJVEUsIElTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKGFsbG9jYXRlRUNsYXNzLCBBbGxvY2F0ZS5jbGFzcywgIkFsbG9jYXRlIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXRBbGxvY2F0ZV9CYXNlX0Fic3RyYWN0aW9uKCksIHRoZVVNTFBhY2thZ2UuZ2V0QWJzdHJhY3Rpb24oKSwgbnVsbCwgImJhc2VfQWJzdHJhY3Rpb24iLCBudWxsLCAxLCAxLCBBbGxvY2F0ZS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfQ09NUE9TSVRFLCBJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhpbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbUVDbGFzcywgSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0uY2xhc3MsICJJbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKworCQlpbml0RUNsYXNzKGluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbUVDbGFzcywgSW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtLmNsYXNzLCAiSW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCisJCWluaXRFQ2xhc3Mob2RvbWV0cnlTeXN0ZW1FQ2xhc3MsIE9kb21ldHJ5U3lzdGVtLmNsYXNzLCAiT2RvbWV0cnlTeXN0ZW0iLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisKKwkJaW5pdEVDbGFzcyhpbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW1FQ2xhc3MsIEluZnJhUmVkUHJveGltZXRyeVN5c3RlbS5jbGFzcywgIkluZnJhUmVkUHJveGltZXRyeVN5c3RlbSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKworCQlpbml0RUNsYXNzKGRlcGxveW1lbnRQbGFuRUNsYXNzLCBEZXBsb3ltZW50UGxhbi5jbGFzcywgIkRlcGxveW1lbnRQbGFuIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXREZXBsb3ltZW50UGxhbl9CYXNlX1BhY2thZ2UoKSwgdGhlVU1MUGFja2FnZS5nZXRQYWNrYWdlKCksIG51bGwsICJiYXNlX1BhY2thZ2UiLCBudWxsLCAxLCAxLCBEZXBsb3ltZW50UGxhbi5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfQ09NUE9TSVRFLCBJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFUmVmZXJlbmNlKGdldERlcGxveW1lbnRQbGFuX01haW5JbnN0YW5jZSgpLCB0aGVVTUxQYWNrYWdlLmdldEluc3RhbmNlU3BlY2lmaWNhdGlvbigpLCBudWxsLCAibWFpbkluc3RhbmNlIiwgbnVsbCwgMSwgMSwgRGVwbG95bWVudFBsYW4uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX0NPTVBPU0lURSwgSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3MoZ3lyb3Njb3BlRUNsYXNzLCBHeXJvc2NvcGUuY2xhc3MsICJHeXJvc2NvcGUiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisKKwkJaW5pdEVDbGFzcyhvblZhcmlhYmxlRUNsYXNzLCBPblZhcmlhYmxlLmNsYXNzLCAiT25WYXJpYWJsZSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0T25WYXJpYWJsZV9Qcm9wZXJ0eSgpLCB0aGVVTUxQYWNrYWdlLmdldFByb3BlcnR5KCksIG51bGwsICJwcm9wZXJ0eSIsIG51bGwsIDEsIDEsIE9uVmFyaWFibGUuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX0NPTVBPU0lURSwgSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RVJlZmVyZW5jZShnZXRPblZhcmlhYmxlX0Jhc2VfUGFyYW1ldGVyKCksIHRoZVVNTFBhY2thZ2UuZ2V0UGFyYW1ldGVyKCksIG51bGwsICJiYXNlX1BhcmFtZXRlciIsIG51bGwsIDEsIDEsIE9uVmFyaWFibGUuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX0NPTVBPU0lURSwgSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3MoY2hhc3Npc0VDbGFzcywgQ2hhc3Npcy5jbGFzcywgIkNoYXNzaXMiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisKKwkJaW5pdEVDbGFzcyhzdXBwb3J0aW5nU3RydWN0dXJlRUNsYXNzLCBTdXBwb3J0aW5nU3RydWN0dXJlLmNsYXNzLCAiU3VwcG9ydGluZ1N0cnVjdHVyZSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKworCQlpbml0RUNsYXNzKG1lY2hhbmljYWxMaW5rYWdlRUNsYXNzLCBNZWNoYW5pY2FsTGlua2FnZS5jbGFzcywgIk1lY2hhbmljYWxMaW5rYWdlIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCisJCWluaXRFQ2xhc3MobGVnRUNsYXNzLCBMZWcuY2xhc3MsICJMZWciLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisKKwkJaW5pdEVDbGFzcyhsb2NvbW90aW9uSGFyZHdhcmVFQ2xhc3MsIExvY29tb3Rpb25IYXJkd2FyZS5jbGFzcywgIkxvY29tb3Rpb25IYXJkd2FyZSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKworCQlpbml0RUNsYXNzKGFjdHVhdG9ySGFyZHdhcmVFQ2xhc3MsIEFjdHVhdG9ySGFyZHdhcmUuY2xhc3MsICJBY3R1YXRvckhhcmR3YXJlIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCisJCWluaXRFQ2xhc3MobW9iaWxlUm9ib3RFQ2xhc3MsIE1vYmlsZVJvYm90LmNsYXNzLCAiTW9iaWxlUm9ib3QiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFQXR0cmlidXRlKGdldE1vYmlsZVJvYm90X0tpbmQoKSwgdGhpcy5nZXRNb2JpbGVSb2JvdEtpbmQoKSwgImtpbmQiLCBudWxsLCAxLCAxLCBNb2JpbGVSb2JvdC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhtYW5pcHVsYXRvckVDbGFzcywgTWFuaXB1bGF0b3IuY2xhc3MsICJNYW5pcHVsYXRvciIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKworCQlpbml0RUNsYXNzKHBpbG90ZWRTeXN0ZW1FQ2xhc3MsIFBpbG90ZWRTeXN0ZW0uY2xhc3MsICJQaWxvdGVkU3lzdGVtIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCisJCWluaXRFQ2xhc3MocG93ZXJIYXJkd2FyZUVDbGFzcywgUG93ZXJIYXJkd2FyZS5jbGFzcywgIlBvd2VySGFyZHdhcmUiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisKKwkJaW5pdEVDbGFzcyhzZW5zb3JIYXJkd2FyZUVDbGFzcywgU2Vuc29ySGFyZHdhcmUuY2xhc3MsICJTZW5zb3JIYXJkd2FyZSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKworCQlpbml0RUNsYXNzKGdyYXNwaW5nSGFyZHdhcmVFQ2xhc3MsIEdyYXNwaW5nSGFyZHdhcmUuY2xhc3MsICJHcmFzcGluZ0hhcmR3YXJlIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCisJCWluaXRFQ2xhc3Moc3RlZXJlZFdoZWVsSGFyZHdhcmVFQ2xhc3MsIFN0ZWVyZWRXaGVlbEhhcmR3YXJlLmNsYXNzLCAiU3RlZXJlZFdoZWVsSGFyZHdhcmUiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisKKwkJaW5pdEVDbGFzcyhhcm1FQ2xhc3MsIEFybS5jbGFzcywgIkFybSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKworCQlpbml0RUNsYXNzKGxlZ1N5c3RlbUVDbGFzcywgTGVnU3lzdGVtLmNsYXNzLCAiTGVnU3lzdGVtIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCisJCWluaXRFQ2xhc3MoZ3Jhc3BpbmdTeXN0ZW1FQ2xhc3MsIEdyYXNwaW5nU3lzdGVtLmNsYXNzLCAiR3Jhc3BpbmdTeXN0ZW0iLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisKKwkJaW5pdEVDbGFzcyh3ZWFwb25TeXN0ZW1FQ2xhc3MsIFdlYXBvblN5c3RlbS5jbGFzcywgIldlYXBvblN5c3RlbSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKworCQlpbml0RUNsYXNzKG1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW1FQ2xhc3MsIE1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0uY2xhc3MsICJNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCisJCWluaXRFQ2xhc3MoY2xvc2VkTG9vcENvbnRyb2xTeXN0ZW1FQ2xhc3MsIENsb3NlZExvb3BDb250cm9sU3lzdGVtLmNsYXNzLCAiQ2xvc2VkTG9vcENvbnRyb2xTeXN0ZW0iLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisKKwkJaW5pdEVDbGFzcyhvcGVuTG9vcENvbnRyb2xTeXN0ZW1FQ2xhc3MsIE9wZW5Mb29wQ29udHJvbFN5c3RlbS5jbGFzcywgIk9wZW5Mb29wQ29udHJvbFN5c3RlbSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKworCQlpbml0RUNsYXNzKHJvYm90aWNIZWFkRUNsYXNzLCBSb2JvdGljSGVhZC5jbGFzcywgIlJvYm90aWNIZWFkIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCisJCWluaXRFQ2xhc3MobmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW1FQ2xhc3MsIE5hdmlnYXRpb25Db21tYW5kU3lzdGVtLmNsYXNzLCAiTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0iLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisKKwkJaW5pdEVDbGFzcyhqb3lzdGljTmF2aWdhdGlvblN5c3RlbUVDbGFzcywgSm95c3RpY05hdmlnYXRpb25TeXN0ZW0uY2xhc3MsICJKb3lzdGljTmF2aWdhdGlvblN5c3RlbSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKworCQkvLyBJbml0aWFsaXplIGVudW1zIGFuZCBhZGQgZW51bSBsaXRlcmFscworCQlpbml0RUVudW0oc3luY2hyb25pemF0aW9uS2luZEVFbnVtLCBTeW5jaHJvbml6YXRpb25LaW5kLmNsYXNzLCAiU3luY2hyb25pemF0aW9uS2luZCIpOworCQlhZGRFRW51bUxpdGVyYWwoc3luY2hyb25pemF0aW9uS2luZEVFbnVtLCBTeW5jaHJvbml6YXRpb25LaW5kLlNZTkNIKTsKKwkJYWRkRUVudW1MaXRlcmFsKHN5bmNocm9uaXphdGlvbktpbmRFRW51bSwgU3luY2hyb25pemF0aW9uS2luZC5BU1lOQ0gpOworCQlhZGRFRW51bUxpdGVyYWwoc3luY2hyb25pemF0aW9uS2luZEVFbnVtLCBTeW5jaHJvbml6YXRpb25LaW5kLlVOREVGSU5FRCk7CisKKwkJaW5pdEVFbnVtKGRhdGFGbG93RGlyZWN0aW9uS2luZEVFbnVtLCBEYXRhRmxvd0RpcmVjdGlvbktpbmQuY2xhc3MsICJEYXRhRmxvd0RpcmVjdGlvbktpbmQiKTsKKwkJYWRkRUVudW1MaXRlcmFsKGRhdGFGbG93RGlyZWN0aW9uS2luZEVFbnVtLCBEYXRhRmxvd0RpcmVjdGlvbktpbmQuSU4pOworCQlhZGRFRW51bUxpdGVyYWwoZGF0YUZsb3dEaXJlY3Rpb25LaW5kRUVudW0sIERhdGFGbG93RGlyZWN0aW9uS2luZC5PVVQpOworCQlhZGRFRW51bUxpdGVyYWwoZGF0YUZsb3dEaXJlY3Rpb25LaW5kRUVudW0sIERhdGFGbG93RGlyZWN0aW9uS2luZC5JTk9VVCk7CisKKwkJaW5pdEVFbnVtKHNlcnZpY2VGbG93S2luZEVFbnVtLCBTZXJ2aWNlRmxvd0tpbmQuY2xhc3MsICJTZXJ2aWNlRmxvd0tpbmQiKTsKKwkJYWRkRUVudW1MaXRlcmFsKHNlcnZpY2VGbG93S2luZEVFbnVtLCBTZXJ2aWNlRmxvd0tpbmQuUFJPVklERUQpOworCQlhZGRFRW51bUxpdGVyYWwoc2VydmljZUZsb3dLaW5kRUVudW0sIFNlcnZpY2VGbG93S2luZC5SRVFVSVJFRCk7CisKKwkJaW5pdEVFbnVtKHVndktpbmRFRW51bSwgVUdWS2luZC5jbGFzcywgIlVHVktpbmQiKTsKKwkJYWRkRUVudW1MaXRlcmFsKHVndktpbmRFRW51bSwgVUdWS2luZC5ESUZGRVJFTlRJQUwpOworCQlhZGRFRW51bUxpdGVyYWwodWd2S2luZEVFbnVtLCBVR1ZLaW5kLkNBUik7CisKKwkJaW5pdEVFbnVtKHJvYm90aWNNaWRkbGV3YXJlS2luZEVFbnVtLCBSb2JvdGljTWlkZGxld2FyZUtpbmQuY2xhc3MsICJSb2JvdGljTWlkZGxld2FyZUtpbmQiKTsKKwkJYWRkRUVudW1MaXRlcmFsKHJvYm90aWNNaWRkbGV3YXJlS2luZEVFbnVtLCBSb2JvdGljTWlkZGxld2FyZUtpbmQuUlRfTUFQUyk7CisJCWFkZEVFbnVtTGl0ZXJhbChyb2JvdGljTWlkZGxld2FyZUtpbmRFRW51bSwgUm9ib3RpY01pZGRsZXdhcmVLaW5kLkFST0NBTSk7CisJCWFkZEVFbnVtTGl0ZXJhbChyb2JvdGljTWlkZGxld2FyZUtpbmRFRW51bSwgUm9ib3RpY01pZGRsZXdhcmVLaW5kLlJPUyk7CisJCWFkZEVFbnVtTGl0ZXJhbChyb2JvdGljTWlkZGxld2FyZUtpbmRFRW51bSwgUm9ib3RpY01pZGRsZXdhcmVLaW5kLk9ST0NPUyk7CisJCWFkZEVFbnVtTGl0ZXJhbChyb2JvdGljTWlkZGxld2FyZUtpbmRFRW51bSwgUm9ib3RpY01pZGRsZXdhcmVLaW5kLlVSQkkpOworCisJCWluaXRFRW51bShzaGFkZUVFbnVtLCBTaGFkZS5jbGFzcywgIlNoYWRlIik7CisJCWFkZEVFbnVtTGl0ZXJhbChzaGFkZUVFbnVtLCBTaGFkZS5XSVJFRlJBTUUpOworCQlhZGRFRW51bUxpdGVyYWwoc2hhZGVFRW51bSwgU2hhZGUuQk9VTkRCT1gpOworCQlhZGRFRW51bUxpdGVyYWwoc2hhZGVFRW51bSwgU2hhZGUuU09MSUQpOworCQlhZGRFRW51bUxpdGVyYWwoc2hhZGVFRW51bSwgU2hhZGUuVEVYVFVSRUQpOworCisJCWluaXRFRW51bShtb2JpbGVSb2JvdEtpbmRFRW51bSwgTW9iaWxlUm9ib3RLaW5kLmNsYXNzLCAiTW9iaWxlUm9ib3RLaW5kIik7CisJCWFkZEVFbnVtTGl0ZXJhbChtb2JpbGVSb2JvdEtpbmRFRW51bSwgTW9iaWxlUm9ib3RLaW5kLkFJUl9WRUhJQ0xFKTsKKwkJYWRkRUVudW1MaXRlcmFsKG1vYmlsZVJvYm90S2luZEVFbnVtLCBNb2JpbGVSb2JvdEtpbmQuSFlCUklEX1ZFSElDTEUpOworCQlhZGRFRW51bUxpdGVyYWwobW9iaWxlUm9ib3RLaW5kRUVudW0sIE1vYmlsZVJvYm90S2luZC5TVVJGQUNFX1ZFSElDTEUpOworCQlhZGRFRW51bUxpdGVyYWwobW9iaWxlUm9ib3RLaW5kRUVudW0sIE1vYmlsZVJvYm90S2luZC5VTkRFUldBVEVSX1ZFSElDTEUpOworCQlhZGRFRW51bUxpdGVyYWwobW9iaWxlUm9ib3RLaW5kRUVudW0sIE1vYmlsZVJvYm90S2luZC5DQVJfTElLRV9WRUhJQ0xFKTsKKwkJYWRkRUVudW1MaXRlcmFsKG1vYmlsZVJvYm90S2luZEVFbnVtLCBNb2JpbGVSb2JvdEtpbmQuRElGRkVSRU5USUFMX1ZFSElDTEUpOworCQlhZGRFRW51bUxpdGVyYWwobW9iaWxlUm9ib3RLaW5kRUVudW0sIE1vYmlsZVJvYm90S2luZC5MRUdHRURfVkVISUNMRSk7CisKKwkJLy8gQ3JlYXRlIHJlc291cmNlCisJCWNyZWF0ZVJlc291cmNlKGVOU19VUkkpOworCisJCS8vIENyZWF0ZSBhbm5vdGF0aW9ucworCQkvLyBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MCisJCWNyZWF0ZVVNTEFubm90YXRpb25zKCk7CisJfQorCisJLyoqCisJICogSW5pdGlhbGl6ZXMgdGhlIGFubm90YXRpb25zIGZvciA8Yj5odHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MPC9iPi4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgdm9pZCBjcmVhdGVVTUxBbm5vdGF0aW9ucygpIHsKKwkJU3RyaW5nIHNvdXJjZSA9ICJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3VtbDIvMi4wLjAvVU1MIjsJCisJCWFkZEFubm90YXRpb24KKwkJICAoZ2V0TGlkYXJTeXN0ZW1fVGltZV9pbmNyZW1lbnQoKSwgCisJCSAgIHNvdXJjZSwgCisJCSAgIG5ldyBTdHJpbmdbXSB7CisJCQkgIm9yaWdpbmFsTmFtZSIsICJ0aW1lX2luY3JlbWVudCAiCisJCSAgIH0pOwkKKwkJYWRkQW5ub3RhdGlvbgorCQkgIChnZXRMaWRhclN5c3RlbV9TY2FuX3RpbWUoKSwgCisJCSAgIHNvdXJjZSwgCisJCSAgIG5ldyBTdHJpbmdbXSB7CisJCQkgIm9yaWdpbmFsTmFtZSIsICJzY2FuX3RpbWUgICIKKwkJICAgfSk7CQorCQlhZGRBbm5vdGF0aW9uCisJCSAgKGdldEJsZW5kZXJNb3JzZV9fdmlld3BvcnRfc2hhZGUoKSwgCisJCSAgIHNvdXJjZSwgCisJCSAgIG5ldyBTdHJpbmdbXSB7CisJCQkgIm9yaWdpbmFsTmFtZSIsICIgdmlld3BvcnRfc2hhZGUiCisJCSAgIH0pOwkKKwkJYWRkQW5ub3RhdGlvbgorCQkgIChjbG9zZWRMb29wQ29udHJvbFN5c3RlbUVDbGFzcywgCisJCSAgIHNvdXJjZSwgCisJCSAgIG5ldyBTdHJpbmdbXSB7CisJCQkgIm9yaWdpbmFsTmFtZSIsICJDbG9zZWQtTG9vcENvbnRyb2xTeXN0ZW0iCisJCSAgIH0pOwkKKwkJYWRkQW5ub3RhdGlvbgorCQkgIChvcGVuTG9vcENvbnRyb2xTeXN0ZW1FQ2xhc3MsIAorCQkgICBzb3VyY2UsIAorCQkgICBuZXcgU3RyaW5nW10geworCQkJICJvcmlnaW5hbE5hbWUiLCAiT3Blbi1Mb29wQ29udHJvbFN5c3RlbSIKKwkJICAgfSk7CisJfQorCit9IC8vIFJvYm90TUxQYWNrYWdlSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljSGVhZEltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY0hlYWRJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjZiZWNlMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY0hlYWRJbXBsLmphdmEKQEAgLTAsMCArMSwzOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY0hlYWQ7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Sb2JvdGljIEhlYWQ8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBSb2JvdGljSGVhZEltcGwgZXh0ZW5kcyBNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtSW1wbCBpbXBsZW1lbnRzIFJvYm90aWNIZWFkIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgUm9ib3RpY0hlYWRJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuUk9CT1RJQ19IRUFEOworCX0KKworfSAvLyBSb2JvdGljSGVhZEltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY01pZGRsZXdhcmVJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNNaWRkbGV3YXJlSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNhYmE0ZjYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNNaWRkbGV3YXJlSW1wbC5qYXZhCkBAIC0wLDAgKzEsMTYwIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNNaWRkbGV3YXJlS2luZDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJvYm90aWMgTWlkZGxld2FyZTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RpY01pZGRsZXdhcmVJbXBsI2dldEtpbmQgPGVtPktpbmQ8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBSb2JvdGljTWlkZGxld2FyZUltcGwgZXh0ZW5kcyBQbGF0Zm9ybUltcGwgaW1wbGVtZW50cyBSb2JvdGljTWlkZGxld2FyZSB7CisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEtpbmQoKSA8ZW0+S2luZDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0S2luZCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBSb2JvdGljTWlkZGxld2FyZUtpbmQgS0lORF9FREVGQVVMVCA9IFJvYm90aWNNaWRkbGV3YXJlS2luZC5SVF9NQVBTOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0S2luZCgpIDxlbT5LaW5kPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRLaW5kKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgUm9ib3RpY01pZGRsZXdhcmVLaW5kIGtpbmQgPSBLSU5EX0VERUZBVUxUOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFJvYm90aWNNaWRkbGV3YXJlSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLlJPQk9USUNfTUlERExFV0FSRTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUm9ib3RpY01pZGRsZXdhcmVLaW5kIGdldEtpbmQoKSB7CisJCXJldHVybiBraW5kOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEtpbmQoUm9ib3RpY01pZGRsZXdhcmVLaW5kIG5ld0tpbmQpIHsKKwkJUm9ib3RpY01pZGRsZXdhcmVLaW5kIG9sZEtpbmQgPSBraW5kOworCQlraW5kID0gbmV3S2luZCA9PSBudWxsID8gS0lORF9FREVGQVVMVCA6IG5ld0tpbmQ7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLlJPQk9USUNfTUlERExFV0FSRV9fS0lORCwgb2xkS2luZCwga2luZCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19NSURETEVXQVJFX19LSU5EOgorCQkJCXJldHVybiBnZXRLaW5kKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19NSURETEVXQVJFX19LSU5EOgorCQkJCXNldEtpbmQoKFJvYm90aWNNaWRkbGV3YXJlS2luZCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19NSURETEVXQVJFX19LSU5EOgorCQkJCXNldEtpbmQoS0lORF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlJPQk9USUNfTUlERExFV0FSRV9fS0lORDoKKwkJCQlyZXR1cm4ga2luZCAhPSBLSU5EX0VERUZBVUxUOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAoa2luZDogIik7CisJCXJlc3VsdC5hcHBlbmQoa2luZCk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBSb2JvdGljTWlkZGxld2FyZUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1NpbXVsYXRvckltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1NpbXVsYXRvckltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jYjY4MGEwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9Sb2JvdGljU2ltdWxhdG9ySW1wbC5qYXZhCkBAIC0wLDAgKzEsMzggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTaW11bGF0b3I7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Sb2JvdGljIFNpbXVsYXRvcjwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIFJvYm90aWNTaW11bGF0b3JJbXBsIGV4dGVuZHMgUGxhdGZvcm1JbXBsIGltcGxlbWVudHMgUm9ib3RpY1NpbXVsYXRvciB7CisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFJvYm90aWNTaW11bGF0b3JJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuUk9CT1RJQ19TSU1VTEFUT1I7CisJfQorCit9IC8vIFJvYm90aWNTaW11bGF0b3JJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1JvYm90aWNTeXN0ZW1JbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjA1ZDQ1ZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvUm9ib3RpY1N5c3RlbUltcGwuamF2YQpAQCAtMCwwICsxLDIzOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uQ2hhaW47CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY1N5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50MzI7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Sb2JvdGljIFN5c3RlbTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RpY1N5c3RlbUltcGwjZ2V0TG9jYWxQb3NpdGlvbiA8ZW0+TG9jYWwgUG9zaXRpb248L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90aWNTeXN0ZW1JbXBsI2dldExvY2FsT3JpZW50YXRpb24gPGVtPkxvY2FsIE9yaWVudGF0aW9uPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgUm9ib3RpY1N5c3RlbUltcGwgZXh0ZW5kcyBTeXN0ZW1JbXBsIGltcGxlbWVudHMgUm9ib3RpY1N5c3RlbSB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TG9jYWxQb3NpdGlvbigpIDxlbT5Mb2NhbCBQb3NpdGlvbjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0TG9jYWxQb3NpdGlvbigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFBvaW50MzIgbG9jYWxQb3NpdGlvbjsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExvY2FsT3JpZW50YXRpb24oKSA8ZW0+TG9jYWwgT3JpZW50YXRpb248L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExvY2FsT3JpZW50YXRpb24oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBQb2ludDMyIGxvY2FsT3JpZW50YXRpb247CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgUm9ib3RpY1N5c3RlbUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBSb2JvdE1MUGFja2FnZS5MaXRlcmFscy5ST0JPVElDX1NZU1RFTTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUG9pbnQzMiBnZXRMb2NhbFBvc2l0aW9uKCkgeworCQlyZXR1cm4gbG9jYWxQb3NpdGlvbjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRMb2NhbFBvc2l0aW9uKFBvaW50MzIgbmV3TG9jYWxQb3NpdGlvbiwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlQb2ludDMyIG9sZExvY2FsUG9zaXRpb24gPSBsb2NhbFBvc2l0aW9uOworCQlsb2NhbFBvc2l0aW9uID0gbmV3TG9jYWxQb3NpdGlvbjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19TWVNURU1fX0xPQ0FMX1BPU0lUSU9OLCBvbGRMb2NhbFBvc2l0aW9uLCBuZXdMb2NhbFBvc2l0aW9uKTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRMb2NhbFBvc2l0aW9uKFBvaW50MzIgbmV3TG9jYWxQb3NpdGlvbikgeworCQlpZiAobmV3TG9jYWxQb3NpdGlvbiAhPSBsb2NhbFBvc2l0aW9uKSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChsb2NhbFBvc2l0aW9uICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KWxvY2FsUG9zaXRpb24pLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBSb2JvdE1MUGFja2FnZS5ST0JPVElDX1NZU1RFTV9fTE9DQUxfUE9TSVRJT04sIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld0xvY2FsUG9zaXRpb24gIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3TG9jYWxQb3NpdGlvbikuZUludmVyc2VBZGQodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIFJvYm90TUxQYWNrYWdlLlJPQk9USUNfU1lTVEVNX19MT0NBTF9QT1NJVElPTiwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRMb2NhbFBvc2l0aW9uKG5ld0xvY2FsUG9zaXRpb24sIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19TWVNURU1fX0xPQ0FMX1BPU0lUSU9OLCBuZXdMb2NhbFBvc2l0aW9uLCBuZXdMb2NhbFBvc2l0aW9uKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFBvaW50MzIgZ2V0TG9jYWxPcmllbnRhdGlvbigpIHsKKwkJcmV0dXJuIGxvY2FsT3JpZW50YXRpb247CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0TG9jYWxPcmllbnRhdGlvbihQb2ludDMyIG5ld0xvY2FsT3JpZW50YXRpb24sIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJUG9pbnQzMiBvbGRMb2NhbE9yaWVudGF0aW9uID0gbG9jYWxPcmllbnRhdGlvbjsKKwkJbG9jYWxPcmllbnRhdGlvbiA9IG5ld0xvY2FsT3JpZW50YXRpb247CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLlJPQk9USUNfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiwgb2xkTG9jYWxPcmllbnRhdGlvbiwgbmV3TG9jYWxPcmllbnRhdGlvbik7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0TG9jYWxPcmllbnRhdGlvbihQb2ludDMyIG5ld0xvY2FsT3JpZW50YXRpb24pIHsKKwkJaWYgKG5ld0xvY2FsT3JpZW50YXRpb24gIT0gbG9jYWxPcmllbnRhdGlvbikgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAobG9jYWxPcmllbnRhdGlvbiAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdClsb2NhbE9yaWVudGF0aW9uKS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19TWVNURU1fX0xPQ0FMX09SSUVOVEFUSU9OLCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdMb2NhbE9yaWVudGF0aW9uICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld0xvY2FsT3JpZW50YXRpb24pLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBSb2JvdE1MUGFja2FnZS5ST0JPVElDX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT04sIG51bGwsIG1zZ3MpOworCQkJbXNncyA9IGJhc2ljU2V0TG9jYWxPcmllbnRhdGlvbihuZXdMb2NhbE9yaWVudGF0aW9uLCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLlJPQk9USUNfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTiwgbmV3TG9jYWxPcmllbnRhdGlvbiwgbmV3TG9jYWxPcmllbnRhdGlvbikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBlSW52ZXJzZVJlbW92ZShJbnRlcm5hbEVPYmplY3Qgb3RoZXJFbmQsIGludCBmZWF0dXJlSUQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19TWVNURU1fX0xPQ0FMX1BPU0lUSU9OOgorCQkJCXJldHVybiBiYXNpY1NldExvY2FsUG9zaXRpb24obnVsbCwgbXNncyk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlJPQk9USUNfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjoKKwkJCQlyZXR1cm4gYmFzaWNTZXRMb2NhbE9yaWVudGF0aW9uKG51bGwsIG1zZ3MpOworCQl9CisJCXJldHVybiBzdXBlci5lSW52ZXJzZVJlbW92ZShvdGhlckVuZCwgZmVhdHVyZUlELCBtc2dzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlJPQk9USUNfU1lTVEVNX19MT0NBTF9QT1NJVElPTjoKKwkJCQlyZXR1cm4gZ2V0TG9jYWxQb3NpdGlvbigpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5ST0JPVElDX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT046CisJCQkJcmV0dXJuIGdldExvY2FsT3JpZW50YXRpb24oKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5ST0JPVElDX1NZU1RFTV9fTE9DQUxfUE9TSVRJT046CisJCQkJc2V0TG9jYWxQb3NpdGlvbigoUG9pbnQzMiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5ST0JPVElDX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT046CisJCQkJc2V0TG9jYWxPcmllbnRhdGlvbigoUG9pbnQzMiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19TWVNURU1fX0xPQ0FMX1BPU0lUSU9OOgorCQkJCXNldExvY2FsUG9zaXRpb24oKFBvaW50MzIpbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5ST0JPVElDX1NZU1RFTV9fTE9DQUxfT1JJRU5UQVRJT046CisJCQkJc2V0TG9jYWxPcmllbnRhdGlvbigoUG9pbnQzMiludWxsKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19TWVNURU1fX0xPQ0FMX1BPU0lUSU9OOgorCQkJCXJldHVybiBsb2NhbFBvc2l0aW9uICE9IG51bGw7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlJPQk9USUNfU1lTVEVNX19MT0NBTF9PUklFTlRBVElPTjoKKwkJCQlyZXR1cm4gbG9jYWxPcmllbnRhdGlvbiAhPSBudWxsOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKK30gLy8gUm9ib3RpY1N5c3RlbUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yRHJpdmVySW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JEcml2ZXJJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjNlZDdkZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29yRHJpdmVySW1wbC5qYXZhCkBAIC0wLDAgKzEsMzggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvckRyaXZlcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlNlbnNvciBEcml2ZXI8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBTZW5zb3JEcml2ZXJJbXBsIGV4dGVuZHMgU29mdHdhcmVJbXBsIGltcGxlbWVudHMgU2Vuc29yRHJpdmVyIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgU2Vuc29yRHJpdmVySW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLlNFTlNPUl9EUklWRVI7CisJfQorCit9IC8vIFNlbnNvckRyaXZlckltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2Vuc29ySGFyZHdhcmVJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvckhhcmR3YXJlSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE0YzFiYmEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvckhhcmR3YXJlSW1wbC5qYXZhCkBAIC0wLDAgKzEsMzggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvckhhcmR3YXJlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U2Vuc29yIEhhcmR3YXJlPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgU2Vuc29ySGFyZHdhcmVJbXBsIGV4dGVuZHMgSGFyZHdhcmVJbXBsIGltcGxlbWVudHMgU2Vuc29ySGFyZHdhcmUgeworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBTZW5zb3JIYXJkd2FyZUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBSb2JvdE1MUGFja2FnZS5MaXRlcmFscy5TRU5TT1JfSEFSRFdBUkU7CisJfQorCit9IC8vIFNlbnNvckhhcmR3YXJlSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NlbnNvclN5c3RlbUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45ZDNlY2Y1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZW5zb3JTeXN0ZW1JbXBsLmphdmEKQEAgLTAsMCArMSwyMTMgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZW5zb3JTeXN0ZW07CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TZW5zb3IgU3lzdGVtPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TZW5zb3JTeXN0ZW1JbXBsI2dldEZyZXF1ZW5jeSA8ZW0+RnJlcXVlbmN5PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TZW5zb3JTeXN0ZW1JbXBsI2dldElkZW50aWZpZXIgPGVtPklkZW50aWZpZXI8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBTZW5zb3JTeXN0ZW1JbXBsIGV4dGVuZHMgUm9ib3RpY1N5c3RlbUltcGwgaW1wbGVtZW50cyBTZW5zb3JTeXN0ZW0geworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRGcmVxdWVuY3koKSA8ZW0+RnJlcXVlbmN5PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRGcmVxdWVuY3koKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IEZSRVFVRU5DWV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRGcmVxdWVuY3koKSA8ZW0+RnJlcXVlbmN5PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRGcmVxdWVuY3koKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgZnJlcXVlbmN5ID0gRlJFUVVFTkNZX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldElkZW50aWZpZXIoKSA8ZW0+SWRlbnRpZmllcjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SWRlbnRpZmllcigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgSURFTlRJRklFUl9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRJZGVudGlmaWVyKCkgPGVtPklkZW50aWZpZXI8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldElkZW50aWZpZXIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgaWRlbnRpZmllciA9IElERU5USUZJRVJfRURFRkFVTFQ7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgU2Vuc29yU3lzdGVtSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLlNFTlNPUl9TWVNURU07CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRGcmVxdWVuY3koKSB7CisJCXJldHVybiBmcmVxdWVuY3k7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0RnJlcXVlbmN5KE9iamVjdCBuZXdGcmVxdWVuY3kpIHsKKwkJT2JqZWN0IG9sZEZyZXF1ZW5jeSA9IGZyZXF1ZW5jeTsKKwkJZnJlcXVlbmN5ID0gbmV3RnJlcXVlbmN5OworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1ksIG9sZEZyZXF1ZW5jeSwgZnJlcXVlbmN5KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRJZGVudGlmaWVyKCkgeworCQlyZXR1cm4gaWRlbnRpZmllcjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRJZGVudGlmaWVyKE9iamVjdCBuZXdJZGVudGlmaWVyKSB7CisJCU9iamVjdCBvbGRJZGVudGlmaWVyID0gaWRlbnRpZmllcjsKKwkJaWRlbnRpZmllciA9IG5ld0lkZW50aWZpZXI7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLlNFTlNPUl9TWVNURU1fX0lERU5USUZJRVIsIG9sZElkZW50aWZpZXIsIGlkZW50aWZpZXIpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWToKKwkJCQlyZXR1cm4gZ2V0RnJlcXVlbmN5KCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNFTlNPUl9TWVNURU1fX0lERU5USUZJRVI6CisJCQkJcmV0dXJuIGdldElkZW50aWZpZXIoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TRU5TT1JfU1lTVEVNX19GUkVRVUVOQ1k6CisJCQkJc2V0RnJlcXVlbmN5KChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUjoKKwkJCQlzZXRJZGVudGlmaWVyKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNFTlNPUl9TWVNURU1fX0ZSRVFVRU5DWToKKwkJCQlzZXRGcmVxdWVuY3koRlJFUVVFTkNZX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNFTlNPUl9TWVNURU1fX0lERU5USUZJRVI6CisJCQkJc2V0SWRlbnRpZmllcihJREVOVElGSUVSX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU0VOU09SX1NZU1RFTV9fRlJFUVVFTkNZOgorCQkJCXJldHVybiBGUkVRVUVOQ1lfRURFRkFVTFQgPT0gbnVsbCA/IGZyZXF1ZW5jeSAhPSBudWxsIDogIUZSRVFVRU5DWV9FREVGQVVMVC5lcXVhbHMoZnJlcXVlbmN5KTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU0VOU09SX1NZU1RFTV9fSURFTlRJRklFUjoKKwkJCQlyZXR1cm4gSURFTlRJRklFUl9FREVGQVVMVCA9PSBudWxsID8gaWRlbnRpZmllciAhPSBudWxsIDogIUlERU5USUZJRVJfRURFRkFVTFQuZXF1YWxzKGlkZW50aWZpZXIpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAoZnJlcXVlbmN5OiAiKTsKKwkJcmVzdWx0LmFwcGVuZChmcmVxdWVuY3kpOworCQlyZXN1bHQuYXBwZW5kKCIsIGlkZW50aWZpZXI6ICIpOworCQlyZXN1bHQuYXBwZW5kKGlkZW50aWZpZXIpOworCQlyZXN1bHQuYXBwZW5kKCcpJyk7CisJCXJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKKwl9CisKK30gLy8gU2Vuc29yU3lzdGVtSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TZXJ2aWNlUG9ydEltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDNiMzIwMgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU2VydmljZVBvcnRJbXBsLmphdmEKQEAgLTAsMCArMSwxOTAgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZXJ2aWNlRmxvd0tpbmQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlcnZpY2VQb3J0OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkltYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlN0ZXJlb3R5cGU7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TZXJ2aWNlIFBvcnQ8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNlcnZpY2VQb3J0SW1wbCNnZXRLaW5kIDxlbT5LaW5kPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgU2VydmljZVBvcnRJbXBsIGV4dGVuZHMgUG9ydEltcGwgaW1wbGVtZW50cyBTZXJ2aWNlUG9ydCB7CisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEtpbmQoKSA8ZW0+S2luZDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0S2luZCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBTZXJ2aWNlRmxvd0tpbmQgS0lORF9FREVGQVVMVCA9IFNlcnZpY2VGbG93S2luZC5QUk9WSURFRDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEtpbmQoKSA8ZW0+S2luZDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0S2luZCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFNlcnZpY2VGbG93S2luZCBraW5kID0gS0lORF9FREVGQVVMVDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBTZXJ2aWNlUG9ydEltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBSb2JvdE1MUGFja2FnZS5MaXRlcmFscy5TRVJWSUNFX1BPUlQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFNlcnZpY2VGbG93S2luZCBnZXRLaW5kKCkgeworCQlyZXR1cm4ga2luZDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRLaW5kKFNlcnZpY2VGbG93S2luZCBuZXdLaW5kKSB7CisJCVNlcnZpY2VGbG93S2luZCBvbGRLaW5kID0ga2luZDsKKwkJa2luZCA9IG5ld0tpbmQgPT0gbnVsbCA/IEtJTkRfRURFRkFVTFQgOiBuZXdLaW5kOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5TRVJWSUNFX1BPUlRfX0tJTkQsIG9sZEtpbmQsIGtpbmQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNFUlZJQ0VfUE9SVF9fS0lORDoKKwkJCQlyZXR1cm4gZ2V0S2luZCgpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNFUlZJQ0VfUE9SVF9fS0lORDoKKwkJCQlzZXRLaW5kKChTZXJ2aWNlRmxvd0tpbmQpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNFUlZJQ0VfUE9SVF9fS0lORDoKKwkJCQlzZXRLaW5kKEtJTkRfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TRVJWSUNFX1BPUlRfX0tJTkQ6CisJCQkJcmV0dXJuIGtpbmQgIT0gS0lORF9FREVGQVVMVDsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJaWYgKGVJc1Byb3h5KCkpIHJldHVybiBzdXBlci50b1N0cmluZygpOworCisJCVN0cmluZ0J1ZmZlciByZXN1bHQgPSBuZXcgU3RyaW5nQnVmZmVyKHN1cGVyLnRvU3RyaW5nKCkpOworCQlyZXN1bHQuYXBwZW5kKCIgKGtpbmQ6ICIpOworCQlyZXN1bHQuYXBwZW5kKGtpbmQpOworCQlyZXN1bHQuYXBwZW5kKCcpJyk7CisJCXJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIEltYWdlcyByZWdpc3RlcmVkIGluIFByb2ZpbGUgYXJlIDoKKwkgKgorCSAqIDAgLSBTZXJ2aWNlUG9ydCBQcm92aWRlZAorCSAqIDEgLSBTZXJ2aWNlUG9ydCBSZXF1aXJlZAorCSAqCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+LgorCSAqCisJICogQHJldHVybiB0aGUgaWNvbiBvZiB0aGUgcG9ydAorCSAqIEBnZW5lcmF0ZWQgTk9UCisJICovCisJcHVibGljIEltYWdlIGdldEljb24oKSB7CisJCUltYWdlIEltYWdlTm90Rm91bmQgPSBudWxsOworCQlpZiAoZ2V0QmFzZV9Qb3J0KCkgIT0gbnVsbCkgeworCQkJU3RlcmVvdHlwZSBzdCA9IGdldEJhc2VfUG9ydCgpLmdldEFwcGxpZWRTdGVyZW90eXBlKCJSb2JvdE1MOjpTZXJ2aWNlUG9ydCIpOworCQkJSW1hZ2UgaW1hZ2UgPSBzdC5nZXRJY29ucygpLmdldCgwKTsKKworCQkJaWYgKGdldEtpbmQoKSA9PSBTZXJ2aWNlRmxvd0tpbmQuUkVRVUlSRUQpIHsKKwkJCQlpbWFnZSA9IHN0LmdldEljb25zKCkuZ2V0KDEpOworCQkJfQorCisJCQlyZXR1cm4gaW1hZ2U7CisJCX0gZWxzZSB7CisJCQlyZXR1cm4gSW1hZ2VOb3RGb3VuZDsKKwkJfQorCX0KKworfSAvLyBTZXJ2aWNlUG9ydEltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU29mdHdhcmVJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgzM2NjODYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1NvZnR3YXJlSW1wbC5qYXZhCkBAIC0wLDAgKzEsMzc1IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU29mdHdhcmU7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Tb2Z0d2FyZTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU29mdHdhcmVJbXBsI2lzUGVyaW9kaWMgPGVtPklzIFBlcmlvZGljPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Tb2Z0d2FyZUltcGwjZ2V0UGVyaW9kIDxlbT5QZXJpb2Q8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNvZnR3YXJlSW1wbCNnZXRQcmlvcml0eSA8ZW0+UHJpb3JpdHk8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNvZnR3YXJlSW1wbCNnZXREZWFkbGluZSA8ZW0+RGVhZGxpbmU8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlNvZnR3YXJlSW1wbCNnZXRXY2V0IDxlbT5XY2V0PC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgU29mdHdhcmVJbXBsIGV4dGVuZHMgU3lzdGVtSW1wbCBpbXBsZW1lbnRzIFNvZnR3YXJlIHsKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjaXNQZXJpb2RpYygpIDxlbT5JcyBQZXJpb2RpYzwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjaXNQZXJpb2RpYygpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBib29sZWFuIElTX1BFUklPRElDX0VERUZBVUxUID0gZmFsc2U7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNpc1BlcmlvZGljKCkgPGVtPklzIFBlcmlvZGljPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNpc1BlcmlvZGljKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgYm9vbGVhbiBpc1BlcmlvZGljID0gSVNfUEVSSU9ESUNfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0UGVyaW9kKCkgPGVtPlBlcmlvZDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UGVyaW9kKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBQRVJJT0RfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0UGVyaW9kKCkgPGVtPlBlcmlvZDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UGVyaW9kKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHBlcmlvZCA9IFBFUklPRF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRQcmlvcml0eSgpIDxlbT5Qcmlvcml0eTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UHJpb3JpdHkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFBSSU9SSVRZX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFByaW9yaXR5KCkgPGVtPlByaW9yaXR5PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRQcmlvcml0eSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBwcmlvcml0eSA9IFBSSU9SSVRZX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldERlYWRsaW5lKCkgPGVtPkRlYWRsaW5lPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXREZWFkbGluZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgREVBRExJTkVfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0RGVhZGxpbmUoKSA8ZW0+RGVhZGxpbmU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldERlYWRsaW5lKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IGRlYWRsaW5lID0gREVBRExJTkVfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0V2NldCgpIDxlbT5XY2V0PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRXY2V0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBXQ0VUX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFdjZXQoKSA8ZW0+V2NldDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0V2NldCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCB3Y2V0ID0gV0NFVF9FREVGQVVMVDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBTb2Z0d2FyZUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBSb2JvdE1MUGFja2FnZS5MaXRlcmFscy5TT0ZUV0FSRTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgYm9vbGVhbiBpc1BlcmlvZGljKCkgeworCQlyZXR1cm4gaXNQZXJpb2RpYzsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRJc1BlcmlvZGljKGJvb2xlYW4gbmV3SXNQZXJpb2RpYykgeworCQlib29sZWFuIG9sZElzUGVyaW9kaWMgPSBpc1BlcmlvZGljOworCQlpc1BlcmlvZGljID0gbmV3SXNQZXJpb2RpYzsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuU09GVFdBUkVfX0lTX1BFUklPRElDLCBvbGRJc1BlcmlvZGljLCBpc1BlcmlvZGljKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRQZXJpb2QoKSB7CisJCXJldHVybiBwZXJpb2Q7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0UGVyaW9kKE9iamVjdCBuZXdQZXJpb2QpIHsKKwkJT2JqZWN0IG9sZFBlcmlvZCA9IHBlcmlvZDsKKwkJcGVyaW9kID0gbmV3UGVyaW9kOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5TT0ZUV0FSRV9fUEVSSU9ELCBvbGRQZXJpb2QsIHBlcmlvZCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0UHJpb3JpdHkoKSB7CisJCXJldHVybiBwcmlvcml0eTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRQcmlvcml0eShPYmplY3QgbmV3UHJpb3JpdHkpIHsKKwkJT2JqZWN0IG9sZFByaW9yaXR5ID0gcHJpb3JpdHk7CisJCXByaW9yaXR5ID0gbmV3UHJpb3JpdHk7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLlNPRlRXQVJFX19QUklPUklUWSwgb2xkUHJpb3JpdHksIHByaW9yaXR5KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXREZWFkbGluZSgpIHsKKwkJcmV0dXJuIGRlYWRsaW5lOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldERlYWRsaW5lKE9iamVjdCBuZXdEZWFkbGluZSkgeworCQlPYmplY3Qgb2xkRGVhZGxpbmUgPSBkZWFkbGluZTsKKwkJZGVhZGxpbmUgPSBuZXdEZWFkbGluZTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuU09GVFdBUkVfX0RFQURMSU5FLCBvbGREZWFkbGluZSwgZGVhZGxpbmUpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFdjZXQoKSB7CisJCXJldHVybiB3Y2V0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFdjZXQoT2JqZWN0IG5ld1djZXQpIHsKKwkJT2JqZWN0IG9sZFdjZXQgPSB3Y2V0OworCQl3Y2V0ID0gbmV3V2NldDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuU09GVFdBUkVfX1dDRVQsIG9sZFdjZXQsIHdjZXQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNPRlRXQVJFX19JU19QRVJJT0RJQzoKKwkJCQlyZXR1cm4gaXNQZXJpb2RpYygpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TT0ZUV0FSRV9fUEVSSU9EOgorCQkJCXJldHVybiBnZXRQZXJpb2QoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU09GVFdBUkVfX1BSSU9SSVRZOgorCQkJCXJldHVybiBnZXRQcmlvcml0eSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TT0ZUV0FSRV9fREVBRExJTkU6CisJCQkJcmV0dXJuIGdldERlYWRsaW5lKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNPRlRXQVJFX19XQ0VUOgorCQkJCXJldHVybiBnZXRXY2V0KCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU09GVFdBUkVfX0lTX1BFUklPRElDOgorCQkJCXNldElzUGVyaW9kaWMoKEJvb2xlYW4pbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU09GVFdBUkVfX1BFUklPRDoKKwkJCQlzZXRQZXJpb2QoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TT0ZUV0FSRV9fUFJJT1JJVFk6CisJCQkJc2V0UHJpb3JpdHkoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TT0ZUV0FSRV9fREVBRExJTkU6CisJCQkJc2V0RGVhZGxpbmUoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TT0ZUV0FSRV9fV0NFVDoKKwkJCQlzZXRXY2V0KChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNPRlRXQVJFX19JU19QRVJJT0RJQzoKKwkJCQlzZXRJc1BlcmlvZGljKElTX1BFUklPRElDX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNPRlRXQVJFX19QRVJJT0Q6CisJCQkJc2V0UGVyaW9kKFBFUklPRF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TT0ZUV0FSRV9fUFJJT1JJVFk6CisJCQkJc2V0UHJpb3JpdHkoUFJJT1JJVFlfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU09GVFdBUkVfX0RFQURMSU5FOgorCQkJCXNldERlYWRsaW5lKERFQURMSU5FX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNPRlRXQVJFX19XQ0VUOgorCQkJCXNldFdjZXQoV0NFVF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNPRlRXQVJFX19JU19QRVJJT0RJQzoKKwkJCQlyZXR1cm4gaXNQZXJpb2RpYyAhPSBJU19QRVJJT0RJQ19FREVGQVVMVDsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU09GVFdBUkVfX1BFUklPRDoKKwkJCQlyZXR1cm4gUEVSSU9EX0VERUZBVUxUID09IG51bGwgPyBwZXJpb2QgIT0gbnVsbCA6ICFQRVJJT0RfRURFRkFVTFQuZXF1YWxzKHBlcmlvZCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNPRlRXQVJFX19QUklPUklUWToKKwkJCQlyZXR1cm4gUFJJT1JJVFlfRURFRkFVTFQgPT0gbnVsbCA/IHByaW9yaXR5ICE9IG51bGwgOiAhUFJJT1JJVFlfRURFRkFVTFQuZXF1YWxzKHByaW9yaXR5KTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU09GVFdBUkVfX0RFQURMSU5FOgorCQkJCXJldHVybiBERUFETElORV9FREVGQVVMVCA9PSBudWxsID8gZGVhZGxpbmUgIT0gbnVsbCA6ICFERUFETElORV9FREVGQVVMVC5lcXVhbHMoZGVhZGxpbmUpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TT0ZUV0FSRV9fV0NFVDoKKwkJCQlyZXR1cm4gV0NFVF9FREVGQVVMVCA9PSBudWxsID8gd2NldCAhPSBudWxsIDogIVdDRVRfRURFRkFVTFQuZXF1YWxzKHdjZXQpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAoaXNQZXJpb2RpYzogIik7CisJCXJlc3VsdC5hcHBlbmQoaXNQZXJpb2RpYyk7CisJCXJlc3VsdC5hcHBlbmQoIiwgcGVyaW9kOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChwZXJpb2QpOworCQlyZXN1bHQuYXBwZW5kKCIsIHByaW9yaXR5OiAiKTsKKwkJcmVzdWx0LmFwcGVuZChwcmlvcml0eSk7CisJCXJlc3VsdC5hcHBlbmQoIiwgZGVhZGxpbmU6ICIpOworCQlyZXN1bHQuYXBwZW5kKGRlYWRsaW5lKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCB3Y2V0OiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh3Y2V0KTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIFNvZnR3YXJlSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGFpcnNJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YWlyc0ltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hN2NkZTNkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGFpcnNJbXBsLmphdmEKQEAgLTAsMCArMSwzOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RhaXJzOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3RhaXJzPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgU3RhaXJzSW1wbCBleHRlbmRzIEdyb3VuZEltcGwgaW1wbGVtZW50cyBTdGFpcnMgeworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBTdGFpcnNJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuU1RBSVJTOworCX0KKworfSAvLyBTdGFpcnNJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0YXRlSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NTMwNDQwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGF0ZUltcGwuamF2YQpAQCAtMCwwICsxLDIxNCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0YXRlOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLkJlaGF2aW9yOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3RhdGU8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN0YXRlSW1wbCNnZXRCYXNlX1N0YXRlIDxlbT5CYXNlIFN0YXRlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TdGF0ZUltcGwjZ2V0QmVoYXZpb3IgPGVtPkJlaGF2aW9yPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgU3RhdGVJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIFN0YXRlIHsKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRCYXNlX1N0YXRlKCkgPGVtPkJhc2UgU3RhdGU8L2VtPn0nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEJhc2VfU3RhdGUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBvcmcuZWNsaXBzZS51bWwyLnVtbC5TdGF0ZSBiYXNlX1N0YXRlOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0QmVoYXZpb3IoKSA8ZW0+QmVoYXZpb3I8L2VtPn0nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEJlaGF2aW9yKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgQmVoYXZpb3IgYmVoYXZpb3I7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgU3RhdGVJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuU1RBVEU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIG9yZy5lY2xpcHNlLnVtbDIudW1sLlN0YXRlIGdldEJhc2VfU3RhdGUoKSB7CisJCWlmIChiYXNlX1N0YXRlICE9IG51bGwgJiYgYmFzZV9TdGF0ZS5lSXNQcm94eSgpKSB7CisJCQlJbnRlcm5hbEVPYmplY3Qgb2xkQmFzZV9TdGF0ZSA9IChJbnRlcm5hbEVPYmplY3QpYmFzZV9TdGF0ZTsKKwkJCWJhc2VfU3RhdGUgPSAob3JnLmVjbGlwc2UudW1sMi51bWwuU3RhdGUpZVJlc29sdmVQcm94eShvbGRCYXNlX1N0YXRlKTsKKwkJCWlmIChiYXNlX1N0YXRlICE9IG9sZEJhc2VfU3RhdGUpIHsKKwkJCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5SRVNPTFZFLCBSb2JvdE1MUGFja2FnZS5TVEFURV9fQkFTRV9TVEFURSwgb2xkQmFzZV9TdGF0ZSwgYmFzZV9TdGF0ZSkpOworCQkJfQorCQl9CisJCXJldHVybiBiYXNlX1N0YXRlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBvcmcuZWNsaXBzZS51bWwyLnVtbC5TdGF0ZSBiYXNpY0dldEJhc2VfU3RhdGUoKSB7CisJCXJldHVybiBiYXNlX1N0YXRlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEJhc2VfU3RhdGUob3JnLmVjbGlwc2UudW1sMi51bWwuU3RhdGUgbmV3QmFzZV9TdGF0ZSkgeworCQlvcmcuZWNsaXBzZS51bWwyLnVtbC5TdGF0ZSBvbGRCYXNlX1N0YXRlID0gYmFzZV9TdGF0ZTsKKwkJYmFzZV9TdGF0ZSA9IG5ld0Jhc2VfU3RhdGU7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLlNUQVRFX19CQVNFX1NUQVRFLCBvbGRCYXNlX1N0YXRlLCBiYXNlX1N0YXRlKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEJlaGF2aW9yIGdldEJlaGF2aW9yKCkgeworCQlpZiAoYmVoYXZpb3IgIT0gbnVsbCAmJiBiZWhhdmlvci5lSXNQcm94eSgpKSB7CisJCQlJbnRlcm5hbEVPYmplY3Qgb2xkQmVoYXZpb3IgPSAoSW50ZXJuYWxFT2JqZWN0KWJlaGF2aW9yOworCQkJYmVoYXZpb3IgPSAoQmVoYXZpb3IpZVJlc29sdmVQcm94eShvbGRCZWhhdmlvcik7CisJCQlpZiAoYmVoYXZpb3IgIT0gb2xkQmVoYXZpb3IpIHsKKwkJCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5SRVNPTFZFLCBSb2JvdE1MUGFja2FnZS5TVEFURV9fQkVIQVZJT1IsIG9sZEJlaGF2aW9yLCBiZWhhdmlvcikpOworCQkJfQorCQl9CisJCXJldHVybiBiZWhhdmlvcjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQmVoYXZpb3IgYmFzaWNHZXRCZWhhdmlvcigpIHsKKwkJcmV0dXJuIGJlaGF2aW9yOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEJlaGF2aW9yKEJlaGF2aW9yIG5ld0JlaGF2aW9yKSB7CisJCUJlaGF2aW9yIG9sZEJlaGF2aW9yID0gYmVoYXZpb3I7CisJCWJlaGF2aW9yID0gbmV3QmVoYXZpb3I7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLlNUQVRFX19CRUhBVklPUiwgb2xkQmVoYXZpb3IsIGJlaGF2aW9yKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEFURV9fQkFTRV9TVEFURToKKwkJCQlpZiAocmVzb2x2ZSkgcmV0dXJuIGdldEJhc2VfU3RhdGUoKTsKKwkJCQlyZXR1cm4gYmFzaWNHZXRCYXNlX1N0YXRlKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNUQVRFX19CRUhBVklPUjoKKwkJCQlpZiAocmVzb2x2ZSkgcmV0dXJuIGdldEJlaGF2aW9yKCk7CisJCQkJcmV0dXJuIGJhc2ljR2V0QmVoYXZpb3IoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEFURV9fQkFTRV9TVEFURToKKwkJCQlzZXRCYXNlX1N0YXRlKChvcmcuZWNsaXBzZS51bWwyLnVtbC5TdGF0ZSluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEFURV9fQkVIQVZJT1I6CisJCQkJc2V0QmVoYXZpb3IoKEJlaGF2aW9yKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEFURV9fQkFTRV9TVEFURToKKwkJCQlzZXRCYXNlX1N0YXRlKChvcmcuZWNsaXBzZS51bWwyLnVtbC5TdGF0ZSludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNUQVRFX19CRUhBVklPUjoKKwkJCQlzZXRCZWhhdmlvcigoQmVoYXZpb3IpbnVsbCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNUQVRFX19CQVNFX1NUQVRFOgorCQkJCXJldHVybiBiYXNlX1N0YXRlICE9IG51bGw7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNUQVRFX19CRUhBVklPUjoKKwkJCQlyZXR1cm4gYmVoYXZpb3IgIT0gbnVsbDsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCit9IC8vIFN0YXRlSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdGVlcmVkV2hlZWxIYXJkd2FyZUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RlZXJlZFdoZWVsSGFyZHdhcmVJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDVlODlmMAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RlZXJlZFdoZWVsSGFyZHdhcmVJbXBsLmphdmEKQEAgLTAsMCArMSwzOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsSGFyZHdhcmU7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TdGVlcmVkIFdoZWVsIEhhcmR3YXJlPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgU3RlZXJlZFdoZWVsSGFyZHdhcmVJbXBsIGV4dGVuZHMgTG9jb21vdGlvbkhhcmR3YXJlSW1wbCBpbXBsZW1lbnRzIFN0ZWVyZWRXaGVlbEhhcmR3YXJlIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgU3RlZXJlZFdoZWVsSGFyZHdhcmVJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuU1RFRVJFRF9XSEVFTF9IQVJEV0FSRTsKKwl9CisKK30gLy8gU3RlZXJlZFdoZWVsSGFyZHdhcmVJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0ZWVyZWRXaGVlbFN5c3RlbUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3RlZXJlZFdoZWVsU3lzdGVtSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjViYjZlMjQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N0ZWVyZWRXaGVlbFN5c3RlbUltcGwuamF2YQpAQCAtMCwwICsxLDk2OSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0ZWVyZWRXaGVlbFN5c3RlbTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlN0ZWVyZWQgV2hlZWwgU3lzdGVtPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TdGVlcmVkV2hlZWxTeXN0ZW1JbXBsI2dldFdoZWVsUmFkaXVzIDxlbT5XaGVlbCBSYWRpdXM8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN0ZWVyZWRXaGVlbFN5c3RlbUltcGwjZ2V0V2hlZWxXaWR0aCA8ZW0+V2hlZWwgV2lkdGg8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN0ZWVyZWRXaGVlbFN5c3RlbUltcGwjZ2V0U3VzcGVuc2lvblJlc3RMZW5ndGggPGVtPlN1c3BlbnNpb24gUmVzdCBMZW5ndGg8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN0ZWVyZWRXaGVlbFN5c3RlbUltcGwjZ2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0IDxlbT5XaGVlbCBDb25uZWN0aW9uIEhlaWdodDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3RlZXJlZFdoZWVsU3lzdGVtSW1wbCNnZXRUeXBlT2ZXaGVlbCA8ZW0+VHlwZSBPZiBXaGVlbDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3RlZXJlZFdoZWVsU3lzdGVtSW1wbCNnZXRXaGVlbFZlbG9jaXR5UElEa3AgPGVtPldoZWVsIFZlbG9jaXR5IFBJIERrcDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3RlZXJlZFdoZWVsU3lzdGVtSW1wbCNnZXRXaGVlbFZlbG9jaXR5UElEa2kgPGVtPldoZWVsIFZlbG9jaXR5IFBJIERraTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3RlZXJlZFdoZWVsU3lzdGVtSW1wbCNnZXRXaGVlbFZlbG9jaXR5UElEa2QgPGVtPldoZWVsIFZlbG9jaXR5IFBJIERrZDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3RlZXJlZFdoZWVsU3lzdGVtSW1wbCNnZXRXaGVlbFN0ZWVyaW5nUElEa3AgPGVtPldoZWVsIFN0ZWVyaW5nIFBJIERrcDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3RlZXJlZFdoZWVsU3lzdGVtSW1wbCNnZXRXaGVlbFN0ZWVyaW5nUElEa2QgPGVtPldoZWVsIFN0ZWVyaW5nIFBJIERrZDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3RlZXJlZFdoZWVsU3lzdGVtSW1wbCNnZXRXaGVlbEZyaWN0aW9uIDxlbT5XaGVlbCBGcmljdGlvbjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3RlZXJlZFdoZWVsU3lzdGVtSW1wbCNnZXRTdXNwZW5zaW9uU3RpZmZuZXNzIDxlbT5TdXNwZW5zaW9uIFN0aWZmbmVzczwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3RlZXJlZFdoZWVsU3lzdGVtSW1wbCNnZXRTdXNwZW5zaW9uRGFtcGluZyA8ZW0+U3VzcGVuc2lvbiBEYW1waW5nPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TdGVlcmVkV2hlZWxTeXN0ZW1JbXBsI2dldFN1c3BlbnNpb25Db21wcmVzc2lvbiA8ZW0+U3VzcGVuc2lvbiBDb21wcmVzc2lvbjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3RlZXJlZFdoZWVsU3lzdGVtSW1wbCNnZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtIDxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEbWF4IFN1bTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3RlZXJlZFdoZWVsU3lzdGVtSW1wbCNnZXRXaGVlbFZlbG9jaXR5UElEbWF4VmFsIDxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEbWF4IFZhbDwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIFN0ZWVyZWRXaGVlbFN5c3RlbUltcGwgZXh0ZW5kcyBMb2NvbW90aW9uU3lzdGVtSW1wbCBpbXBsZW1lbnRzIFN0ZWVyZWRXaGVlbFN5c3RlbSB7CisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFdoZWVsUmFkaXVzKCkgPGVtPldoZWVsIFJhZGl1czwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0V2hlZWxSYWRpdXMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFdIRUVMX1JBRElVU19FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRXaGVlbFJhZGl1cygpIDxlbT5XaGVlbCBSYWRpdXM8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFdoZWVsUmFkaXVzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHdoZWVsUmFkaXVzID0gV0hFRUxfUkFESVVTX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFdoZWVsV2lkdGgoKSA8ZW0+V2hlZWwgV2lkdGg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFdoZWVsV2lkdGgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFdIRUVMX1dJRFRIX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFdoZWVsV2lkdGgoKSA8ZW0+V2hlZWwgV2lkdGg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFdoZWVsV2lkdGgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3Qgd2hlZWxXaWR0aCA9IFdIRUVMX1dJRFRIX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFN1c3BlbnNpb25SZXN0TGVuZ3RoKCkgPGVtPlN1c3BlbnNpb24gUmVzdCBMZW5ndGg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFN1c3BlbnNpb25SZXN0TGVuZ3RoKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBTVVNQRU5TSU9OX1JFU1RfTEVOR1RIX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFN1c3BlbnNpb25SZXN0TGVuZ3RoKCkgPGVtPlN1c3BlbnNpb24gUmVzdCBMZW5ndGg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFN1c3BlbnNpb25SZXN0TGVuZ3RoKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHN1c3BlbnNpb25SZXN0TGVuZ3RoID0gU1VTUEVOU0lPTl9SRVNUX0xFTkdUSF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQoKSA8ZW0+V2hlZWwgQ29ubmVjdGlvbiBIZWlnaHQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFdoZWVsQ29ubmVjdGlvbkhlaWdodCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgV0hFRUxfQ09OTkVDVElPTl9IRUlHSFRfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0KCkgPGVtPldoZWVsIENvbm5lY3Rpb24gSGVpZ2h0PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3Qgd2hlZWxDb25uZWN0aW9uSGVpZ2h0ID0gV0hFRUxfQ09OTkVDVElPTl9IRUlHSFRfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0VHlwZU9mV2hlZWwoKSA8ZW0+VHlwZSBPZiBXaGVlbDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VHlwZU9mV2hlZWwoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFRZUEVfT0ZfV0hFRUxfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0VHlwZU9mV2hlZWwoKSA8ZW0+VHlwZSBPZiBXaGVlbDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VHlwZU9mV2hlZWwoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgdHlwZU9mV2hlZWwgPSBUWVBFX09GX1dIRUVMX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFdoZWVsVmVsb2NpdHlQSURrcCgpIDxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEa3A8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFdoZWVsVmVsb2NpdHlQSURrcCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgV0hFRUxfVkVMT0NJVFlfUElfREtQX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFdoZWVsVmVsb2NpdHlQSURrcCgpIDxlbT5XaGVlbCBWZWxvY2l0eSBQSSBEa3A8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFdoZWVsVmVsb2NpdHlQSURrcCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCB3aGVlbFZlbG9jaXR5UElEa3AgPSBXSEVFTF9WRUxPQ0lUWV9QSV9ES1BfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0V2hlZWxWZWxvY2l0eVBJRGtpKCkgPGVtPldoZWVsIFZlbG9jaXR5IFBJIERraTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0V2hlZWxWZWxvY2l0eVBJRGtpKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBXSEVFTF9WRUxPQ0lUWV9QSV9ES0lfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0V2hlZWxWZWxvY2l0eVBJRGtpKCkgPGVtPldoZWVsIFZlbG9jaXR5IFBJIERraTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0V2hlZWxWZWxvY2l0eVBJRGtpKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHdoZWVsVmVsb2NpdHlQSURraSA9IFdIRUVMX1ZFTE9DSVRZX1BJX0RLSV9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRXaGVlbFZlbG9jaXR5UElEa2QoKSA8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtkPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRXaGVlbFZlbG9jaXR5UElEa2QoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFdIRUVMX1ZFTE9DSVRZX1BJX0RLRF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRXaGVlbFZlbG9jaXR5UElEa2QoKSA8ZW0+V2hlZWwgVmVsb2NpdHkgUEkgRGtkPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRXaGVlbFZlbG9jaXR5UElEa2QoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3Qgd2hlZWxWZWxvY2l0eVBJRGtkID0gV0hFRUxfVkVMT0NJVFlfUElfREtEX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFdoZWVsU3RlZXJpbmdQSURrcCgpIDxlbT5XaGVlbCBTdGVlcmluZyBQSSBEa3A8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFdoZWVsU3RlZXJpbmdQSURrcCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgV0hFRUxfU1RFRVJJTkdfUElfREtQX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFdoZWVsU3RlZXJpbmdQSURrcCgpIDxlbT5XaGVlbCBTdGVlcmluZyBQSSBEa3A8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFdoZWVsU3RlZXJpbmdQSURrcCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCB3aGVlbFN0ZWVyaW5nUElEa3AgPSBXSEVFTF9TVEVFUklOR19QSV9ES1BfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0V2hlZWxTdGVlcmluZ1BJRGtkKCkgPGVtPldoZWVsIFN0ZWVyaW5nIFBJIERrZDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0V2hlZWxTdGVlcmluZ1BJRGtkKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBXSEVFTF9TVEVFUklOR19QSV9ES0RfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0V2hlZWxTdGVlcmluZ1BJRGtkKCkgPGVtPldoZWVsIFN0ZWVyaW5nIFBJIERrZDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0V2hlZWxTdGVlcmluZ1BJRGtkKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHdoZWVsU3RlZXJpbmdQSURrZCA9IFdIRUVMX1NURUVSSU5HX1BJX0RLRF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRXaGVlbEZyaWN0aW9uKCkgPGVtPldoZWVsIEZyaWN0aW9uPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRXaGVlbEZyaWN0aW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBXSEVFTF9GUklDVElPTl9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRXaGVlbEZyaWN0aW9uKCkgPGVtPldoZWVsIEZyaWN0aW9uPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRXaGVlbEZyaWN0aW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHdoZWVsRnJpY3Rpb24gPSBXSEVFTF9GUklDVElPTl9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTdXNwZW5zaW9uU3RpZmZuZXNzKCkgPGVtPlN1c3BlbnNpb24gU3RpZmZuZXNzPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRTdXNwZW5zaW9uU3RpZmZuZXNzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBTVVNQRU5TSU9OX1NUSUZGTkVTU19FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTdXNwZW5zaW9uU3RpZmZuZXNzKCkgPGVtPlN1c3BlbnNpb24gU3RpZmZuZXNzPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRTdXNwZW5zaW9uU3RpZmZuZXNzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHN1c3BlbnNpb25TdGlmZm5lc3MgPSBTVVNQRU5TSU9OX1NUSUZGTkVTU19FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTdXNwZW5zaW9uRGFtcGluZygpIDxlbT5TdXNwZW5zaW9uIERhbXBpbmc8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFN1c3BlbnNpb25EYW1waW5nKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBTVVNQRU5TSU9OX0RBTVBJTkdfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0U3VzcGVuc2lvbkRhbXBpbmcoKSA8ZW0+U3VzcGVuc2lvbiBEYW1waW5nPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRTdXNwZW5zaW9uRGFtcGluZygpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBzdXNwZW5zaW9uRGFtcGluZyA9IFNVU1BFTlNJT05fREFNUElOR19FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTdXNwZW5zaW9uQ29tcHJlc3Npb24oKSA8ZW0+U3VzcGVuc2lvbiBDb21wcmVzc2lvbjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBTVVNQRU5TSU9OX0NPTVBSRVNTSU9OX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFN1c3BlbnNpb25Db21wcmVzc2lvbigpIDxlbT5TdXNwZW5zaW9uIENvbXByZXNzaW9uPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRTdXNwZW5zaW9uQ29tcHJlc3Npb24oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3Qgc3VzcGVuc2lvbkNvbXByZXNzaW9uID0gU1VTUEVOU0lPTl9DT01QUkVTU0lPTl9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtKCkgPGVtPldoZWVsIFZlbG9jaXR5IFBJIERtYXggU3VtPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBXSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1NVTV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtKCkgPGVtPldoZWVsIFZlbG9jaXR5IFBJIERtYXggU3VtPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHdoZWVsVmVsb2NpdHlQSURtYXhTdW0gPSBXSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1NVTV9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRXaGVlbFZlbG9jaXR5UElEbWF4VmFsKCkgPGVtPldoZWVsIFZlbG9jaXR5IFBJIERtYXggVmFsPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRXaGVlbFZlbG9jaXR5UElEbWF4VmFsKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBXSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1ZBTF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRXaGVlbFZlbG9jaXR5UElEbWF4VmFsKCkgPGVtPldoZWVsIFZlbG9jaXR5IFBJIERtYXggVmFsPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRXaGVlbFZlbG9jaXR5UElEbWF4VmFsKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHdoZWVsVmVsb2NpdHlQSURtYXhWYWwgPSBXSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1ZBTF9FREVGQVVMVDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBTdGVlcmVkV2hlZWxTeXN0ZW1JbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuU1RFRVJFRF9XSEVFTF9TWVNURU07CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRXaGVlbFJhZGl1cygpIHsKKwkJcmV0dXJuIHdoZWVsUmFkaXVzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFdoZWVsUmFkaXVzKE9iamVjdCBuZXdXaGVlbFJhZGl1cykgeworCQlPYmplY3Qgb2xkV2hlZWxSYWRpdXMgPSB3aGVlbFJhZGl1czsKKwkJd2hlZWxSYWRpdXMgPSBuZXdXaGVlbFJhZGl1czsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX1JBRElVUywgb2xkV2hlZWxSYWRpdXMsIHdoZWVsUmFkaXVzKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRXaGVlbFdpZHRoKCkgeworCQlyZXR1cm4gd2hlZWxXaWR0aDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRXaGVlbFdpZHRoKE9iamVjdCBuZXdXaGVlbFdpZHRoKSB7CisJCU9iamVjdCBvbGRXaGVlbFdpZHRoID0gd2hlZWxXaWR0aDsKKwkJd2hlZWxXaWR0aCA9IG5ld1doZWVsV2lkdGg7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9XSURUSCwgb2xkV2hlZWxXaWR0aCwgd2hlZWxXaWR0aCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0U3VzcGVuc2lvblJlc3RMZW5ndGgoKSB7CisJCXJldHVybiBzdXNwZW5zaW9uUmVzdExlbmd0aDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRTdXNwZW5zaW9uUmVzdExlbmd0aChPYmplY3QgbmV3U3VzcGVuc2lvblJlc3RMZW5ndGgpIHsKKwkJT2JqZWN0IG9sZFN1c3BlbnNpb25SZXN0TGVuZ3RoID0gc3VzcGVuc2lvblJlc3RMZW5ndGg7CisJCXN1c3BlbnNpb25SZXN0TGVuZ3RoID0gbmV3U3VzcGVuc2lvblJlc3RMZW5ndGg7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX1JFU1RfTEVOR1RILCBvbGRTdXNwZW5zaW9uUmVzdExlbmd0aCwgc3VzcGVuc2lvblJlc3RMZW5ndGgpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFdoZWVsQ29ubmVjdGlvbkhlaWdodCgpIHsKKwkJcmV0dXJuIHdoZWVsQ29ubmVjdGlvbkhlaWdodDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQoT2JqZWN0IG5ld1doZWVsQ29ubmVjdGlvbkhlaWdodCkgeworCQlPYmplY3Qgb2xkV2hlZWxDb25uZWN0aW9uSGVpZ2h0ID0gd2hlZWxDb25uZWN0aW9uSGVpZ2h0OworCQl3aGVlbENvbm5lY3Rpb25IZWlnaHQgPSBuZXdXaGVlbENvbm5lY3Rpb25IZWlnaHQ7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9DT05ORUNUSU9OX0hFSUdIVCwgb2xkV2hlZWxDb25uZWN0aW9uSGVpZ2h0LCB3aGVlbENvbm5lY3Rpb25IZWlnaHQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFR5cGVPZldoZWVsKCkgeworCQlyZXR1cm4gdHlwZU9mV2hlZWw7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0VHlwZU9mV2hlZWwoT2JqZWN0IG5ld1R5cGVPZldoZWVsKSB7CisJCU9iamVjdCBvbGRUeXBlT2ZXaGVlbCA9IHR5cGVPZldoZWVsOworCQl0eXBlT2ZXaGVlbCA9IG5ld1R5cGVPZldoZWVsOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fVFlQRV9PRl9XSEVFTCwgb2xkVHlwZU9mV2hlZWwsIHR5cGVPZldoZWVsKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRXaGVlbFZlbG9jaXR5UElEa3AoKSB7CisJCXJldHVybiB3aGVlbFZlbG9jaXR5UElEa3A7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0V2hlZWxWZWxvY2l0eVBJRGtwKE9iamVjdCBuZXdXaGVlbFZlbG9jaXR5UElEa3ApIHsKKwkJT2JqZWN0IG9sZFdoZWVsVmVsb2NpdHlQSURrcCA9IHdoZWVsVmVsb2NpdHlQSURrcDsKKwkJd2hlZWxWZWxvY2l0eVBJRGtwID0gbmV3V2hlZWxWZWxvY2l0eVBJRGtwOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtQLCBvbGRXaGVlbFZlbG9jaXR5UElEa3AsIHdoZWVsVmVsb2NpdHlQSURrcCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0V2hlZWxWZWxvY2l0eVBJRGtpKCkgeworCQlyZXR1cm4gd2hlZWxWZWxvY2l0eVBJRGtpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFdoZWVsVmVsb2NpdHlQSURraShPYmplY3QgbmV3V2hlZWxWZWxvY2l0eVBJRGtpKSB7CisJCU9iamVjdCBvbGRXaGVlbFZlbG9jaXR5UElEa2kgPSB3aGVlbFZlbG9jaXR5UElEa2k7CisJCXdoZWVsVmVsb2NpdHlQSURraSA9IG5ld1doZWVsVmVsb2NpdHlQSURraTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLSSwgb2xkV2hlZWxWZWxvY2l0eVBJRGtpLCB3aGVlbFZlbG9jaXR5UElEa2kpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFdoZWVsVmVsb2NpdHlQSURrZCgpIHsKKwkJcmV0dXJuIHdoZWVsVmVsb2NpdHlQSURrZDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRXaGVlbFZlbG9jaXR5UElEa2QoT2JqZWN0IG5ld1doZWVsVmVsb2NpdHlQSURrZCkgeworCQlPYmplY3Qgb2xkV2hlZWxWZWxvY2l0eVBJRGtkID0gd2hlZWxWZWxvY2l0eVBJRGtkOworCQl3aGVlbFZlbG9jaXR5UElEa2QgPSBuZXdXaGVlbFZlbG9jaXR5UElEa2Q7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ES0QsIG9sZFdoZWVsVmVsb2NpdHlQSURrZCwgd2hlZWxWZWxvY2l0eVBJRGtkKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRXaGVlbFN0ZWVyaW5nUElEa3AoKSB7CisJCXJldHVybiB3aGVlbFN0ZWVyaW5nUElEa3A7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0V2hlZWxTdGVlcmluZ1BJRGtwKE9iamVjdCBuZXdXaGVlbFN0ZWVyaW5nUElEa3ApIHsKKwkJT2JqZWN0IG9sZFdoZWVsU3RlZXJpbmdQSURrcCA9IHdoZWVsU3RlZXJpbmdQSURrcDsKKwkJd2hlZWxTdGVlcmluZ1BJRGtwID0gbmV3V2hlZWxTdGVlcmluZ1BJRGtwOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfU1RFRVJJTkdfUElfREtQLCBvbGRXaGVlbFN0ZWVyaW5nUElEa3AsIHdoZWVsU3RlZXJpbmdQSURrcCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0V2hlZWxTdGVlcmluZ1BJRGtkKCkgeworCQlyZXR1cm4gd2hlZWxTdGVlcmluZ1BJRGtkOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFdoZWVsU3RlZXJpbmdQSURrZChPYmplY3QgbmV3V2hlZWxTdGVlcmluZ1BJRGtkKSB7CisJCU9iamVjdCBvbGRXaGVlbFN0ZWVyaW5nUElEa2QgPSB3aGVlbFN0ZWVyaW5nUElEa2Q7CisJCXdoZWVsU3RlZXJpbmdQSURrZCA9IG5ld1doZWVsU3RlZXJpbmdQSURrZDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX1NURUVSSU5HX1BJX0RLRCwgb2xkV2hlZWxTdGVlcmluZ1BJRGtkLCB3aGVlbFN0ZWVyaW5nUElEa2QpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFdoZWVsRnJpY3Rpb24oKSB7CisJCXJldHVybiB3aGVlbEZyaWN0aW9uOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFdoZWVsRnJpY3Rpb24oT2JqZWN0IG5ld1doZWVsRnJpY3Rpb24pIHsKKwkJT2JqZWN0IG9sZFdoZWVsRnJpY3Rpb24gPSB3aGVlbEZyaWN0aW9uOworCQl3aGVlbEZyaWN0aW9uID0gbmV3V2hlZWxGcmljdGlvbjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX0ZSSUNUSU9OLCBvbGRXaGVlbEZyaWN0aW9uLCB3aGVlbEZyaWN0aW9uKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRTdXNwZW5zaW9uU3RpZmZuZXNzKCkgeworCQlyZXR1cm4gc3VzcGVuc2lvblN0aWZmbmVzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRTdXNwZW5zaW9uU3RpZmZuZXNzKE9iamVjdCBuZXdTdXNwZW5zaW9uU3RpZmZuZXNzKSB7CisJCU9iamVjdCBvbGRTdXNwZW5zaW9uU3RpZmZuZXNzID0gc3VzcGVuc2lvblN0aWZmbmVzczsKKwkJc3VzcGVuc2lvblN0aWZmbmVzcyA9IG5ld1N1c3BlbnNpb25TdGlmZm5lc3M7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX1NUSUZGTkVTUywgb2xkU3VzcGVuc2lvblN0aWZmbmVzcywgc3VzcGVuc2lvblN0aWZmbmVzcykpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0U3VzcGVuc2lvbkRhbXBpbmcoKSB7CisJCXJldHVybiBzdXNwZW5zaW9uRGFtcGluZzsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRTdXNwZW5zaW9uRGFtcGluZyhPYmplY3QgbmV3U3VzcGVuc2lvbkRhbXBpbmcpIHsKKwkJT2JqZWN0IG9sZFN1c3BlbnNpb25EYW1waW5nID0gc3VzcGVuc2lvbkRhbXBpbmc7CisJCXN1c3BlbnNpb25EYW1waW5nID0gbmV3U3VzcGVuc2lvbkRhbXBpbmc7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0RBTVBJTkcsIG9sZFN1c3BlbnNpb25EYW1waW5nLCBzdXNwZW5zaW9uRGFtcGluZykpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uKCkgeworCQlyZXR1cm4gc3VzcGVuc2lvbkNvbXByZXNzaW9uOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFN1c3BlbnNpb25Db21wcmVzc2lvbihPYmplY3QgbmV3U3VzcGVuc2lvbkNvbXByZXNzaW9uKSB7CisJCU9iamVjdCBvbGRTdXNwZW5zaW9uQ29tcHJlc3Npb24gPSBzdXNwZW5zaW9uQ29tcHJlc3Npb247CisJCXN1c3BlbnNpb25Db21wcmVzc2lvbiA9IG5ld1N1c3BlbnNpb25Db21wcmVzc2lvbjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fQ09NUFJFU1NJT04sIG9sZFN1c3BlbnNpb25Db21wcmVzc2lvbiwgc3VzcGVuc2lvbkNvbXByZXNzaW9uKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtKCkgeworCQlyZXR1cm4gd2hlZWxWZWxvY2l0eVBJRG1heFN1bTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtKE9iamVjdCBuZXdXaGVlbFZlbG9jaXR5UElEbWF4U3VtKSB7CisJCU9iamVjdCBvbGRXaGVlbFZlbG9jaXR5UElEbWF4U3VtID0gd2hlZWxWZWxvY2l0eVBJRG1heFN1bTsKKwkJd2hlZWxWZWxvY2l0eVBJRG1heFN1bSA9IG5ld1doZWVsVmVsb2NpdHlQSURtYXhTdW07CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1NVTSwgb2xkV2hlZWxWZWxvY2l0eVBJRG1heFN1bSwgd2hlZWxWZWxvY2l0eVBJRG1heFN1bSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbCgpIHsKKwkJcmV0dXJuIHdoZWVsVmVsb2NpdHlQSURtYXhWYWw7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbChPYmplY3QgbmV3V2hlZWxWZWxvY2l0eVBJRG1heFZhbCkgeworCQlPYmplY3Qgb2xkV2hlZWxWZWxvY2l0eVBJRG1heFZhbCA9IHdoZWVsVmVsb2NpdHlQSURtYXhWYWw7CisJCXdoZWVsVmVsb2NpdHlQSURtYXhWYWwgPSBuZXdXaGVlbFZlbG9jaXR5UElEbWF4VmFsOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9WQUwsIG9sZFdoZWVsVmVsb2NpdHlQSURtYXhWYWwsIHdoZWVsVmVsb2NpdHlQSURtYXhWYWwpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9SQURJVVM6CisJCQkJcmV0dXJuIGdldFdoZWVsUmFkaXVzKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9XSURUSDoKKwkJCQlyZXR1cm4gZ2V0V2hlZWxXaWR0aCgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9SRVNUX0xFTkdUSDoKKwkJCQlyZXR1cm4gZ2V0U3VzcGVuc2lvblJlc3RMZW5ndGgoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX0NPTk5FQ1RJT05fSEVJR0hUOgorCQkJCXJldHVybiBnZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1RZUEVfT0ZfV0hFRUw6CisJCQkJcmV0dXJuIGdldFR5cGVPZldoZWVsKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ES1A6CisJCQkJcmV0dXJuIGdldFdoZWVsVmVsb2NpdHlQSURrcCgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtJOgorCQkJCXJldHVybiBnZXRXaGVlbFZlbG9jaXR5UElEa2koKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLRDoKKwkJCQlyZXR1cm4gZ2V0V2hlZWxWZWxvY2l0eVBJRGtkKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9TVEVFUklOR19QSV9ES1A6CisJCQkJcmV0dXJuIGdldFdoZWVsU3RlZXJpbmdQSURrcCgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfU1RFRVJJTkdfUElfREtEOgorCQkJCXJldHVybiBnZXRXaGVlbFN0ZWVyaW5nUElEa2QoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX0ZSSUNUSU9OOgorCQkJCXJldHVybiBnZXRXaGVlbEZyaWN0aW9uKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX1NUSUZGTkVTUzoKKwkJCQlyZXR1cm4gZ2V0U3VzcGVuc2lvblN0aWZmbmVzcygpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9EQU1QSU5HOgorCQkJCXJldHVybiBnZXRTdXNwZW5zaW9uRGFtcGluZygpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9DT01QUkVTU0lPTjoKKwkJCQlyZXR1cm4gZ2V0U3VzcGVuc2lvbkNvbXByZXNzaW9uKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1NVTToKKwkJCQlyZXR1cm4gZ2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9WQUw6CisJCQkJcmV0dXJuIGdldFdoZWVsVmVsb2NpdHlQSURtYXhWYWwoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfUkFESVVTOgorCQkJCXNldFdoZWVsUmFkaXVzKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX1dJRFRIOgorCQkJCXNldFdoZWVsV2lkdGgoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9SRVNUX0xFTkdUSDoKKwkJCQlzZXRTdXNwZW5zaW9uUmVzdExlbmd0aCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9DT05ORUNUSU9OX0hFSUdIVDoKKwkJCQlzZXRXaGVlbENvbm5lY3Rpb25IZWlnaHQoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fVFlQRV9PRl9XSEVFTDoKKwkJCQlzZXRUeXBlT2ZXaGVlbCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ES1A6CisJCQkJc2V0V2hlZWxWZWxvY2l0eVBJRGtwKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLSToKKwkJCQlzZXRXaGVlbFZlbG9jaXR5UElEa2koKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtEOgorCQkJCXNldFdoZWVsVmVsb2NpdHlQSURrZCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9TVEVFUklOR19QSV9ES1A6CisJCQkJc2V0V2hlZWxTdGVlcmluZ1BJRGtwKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX1NURUVSSU5HX1BJX0RLRDoKKwkJCQlzZXRXaGVlbFN0ZWVyaW5nUElEa2QoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfRlJJQ1RJT046CisJCQkJc2V0V2hlZWxGcmljdGlvbigoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX1NUSUZGTkVTUzoKKwkJCQlzZXRTdXNwZW5zaW9uU3RpZmZuZXNzKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fREFNUElORzoKKwkJCQlzZXRTdXNwZW5zaW9uRGFtcGluZygoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0NPTVBSRVNTSU9OOgorCQkJCXNldFN1c3BlbnNpb25Db21wcmVzc2lvbigoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1NVTToKKwkJCQlzZXRXaGVlbFZlbG9jaXR5UElEbWF4U3VtKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RNQVhfVkFMOgorCQkJCXNldFdoZWVsVmVsb2NpdHlQSURtYXhWYWwoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX1JBRElVUzoKKwkJCQlzZXRXaGVlbFJhZGl1cyhXSEVFTF9SQURJVVNfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX1dJRFRIOgorCQkJCXNldFdoZWVsV2lkdGgoV0hFRUxfV0lEVEhfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fUkVTVF9MRU5HVEg6CisJCQkJc2V0U3VzcGVuc2lvblJlc3RMZW5ndGgoU1VTUEVOU0lPTl9SRVNUX0xFTkdUSF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfQ09OTkVDVElPTl9IRUlHSFQ6CisJCQkJc2V0V2hlZWxDb25uZWN0aW9uSGVpZ2h0KFdIRUVMX0NPTk5FQ1RJT05fSEVJR0hUX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19UWVBFX09GX1dIRUVMOgorCQkJCXNldFR5cGVPZldoZWVsKFRZUEVfT0ZfV0hFRUxfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLUDoKKwkJCQlzZXRXaGVlbFZlbG9jaXR5UElEa3AoV0hFRUxfVkVMT0NJVFlfUElfREtQX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ES0k6CisJCQkJc2V0V2hlZWxWZWxvY2l0eVBJRGtpKFdIRUVMX1ZFTE9DSVRZX1BJX0RLSV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtEOgorCQkJCXNldFdoZWVsVmVsb2NpdHlQSURrZChXSEVFTF9WRUxPQ0lUWV9QSV9ES0RfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX1NURUVSSU5HX1BJX0RLUDoKKwkJCQlzZXRXaGVlbFN0ZWVyaW5nUElEa3AoV0hFRUxfU1RFRVJJTkdfUElfREtQX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9TVEVFUklOR19QSV9ES0Q6CisJCQkJc2V0V2hlZWxTdGVlcmluZ1BJRGtkKFdIRUVMX1NURUVSSU5HX1BJX0RLRF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfRlJJQ1RJT046CisJCQkJc2V0V2hlZWxGcmljdGlvbihXSEVFTF9GUklDVElPTl9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9TVElGRk5FU1M6CisJCQkJc2V0U3VzcGVuc2lvblN0aWZmbmVzcyhTVVNQRU5TSU9OX1NUSUZGTkVTU19FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9EQU1QSU5HOgorCQkJCXNldFN1c3BlbnNpb25EYW1waW5nKFNVU1BFTlNJT05fREFNUElOR19FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fU1VTUEVOU0lPTl9DT01QUkVTU0lPTjoKKwkJCQlzZXRTdXNwZW5zaW9uQ29tcHJlc3Npb24oU1VTUEVOU0lPTl9DT01QUkVTU0lPTl9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9TVU06CisJCQkJc2V0V2hlZWxWZWxvY2l0eVBJRG1heFN1bShXSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1NVTV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9WQUw6CisJCQkJc2V0V2hlZWxWZWxvY2l0eVBJRG1heFZhbChXSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1ZBTF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9SQURJVVM6CisJCQkJcmV0dXJuIFdIRUVMX1JBRElVU19FREVGQVVMVCA9PSBudWxsID8gd2hlZWxSYWRpdXMgIT0gbnVsbCA6ICFXSEVFTF9SQURJVVNfRURFRkFVTFQuZXF1YWxzKHdoZWVsUmFkaXVzKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX1dJRFRIOgorCQkJCXJldHVybiBXSEVFTF9XSURUSF9FREVGQVVMVCA9PSBudWxsID8gd2hlZWxXaWR0aCAhPSBudWxsIDogIVdIRUVMX1dJRFRIX0VERUZBVUxULmVxdWFscyh3aGVlbFdpZHRoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fUkVTVF9MRU5HVEg6CisJCQkJcmV0dXJuIFNVU1BFTlNJT05fUkVTVF9MRU5HVEhfRURFRkFVTFQgPT0gbnVsbCA/IHN1c3BlbnNpb25SZXN0TGVuZ3RoICE9IG51bGwgOiAhU1VTUEVOU0lPTl9SRVNUX0xFTkdUSF9FREVGQVVMVC5lcXVhbHMoc3VzcGVuc2lvblJlc3RMZW5ndGgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfQ09OTkVDVElPTl9IRUlHSFQ6CisJCQkJcmV0dXJuIFdIRUVMX0NPTk5FQ1RJT05fSEVJR0hUX0VERUZBVUxUID09IG51bGwgPyB3aGVlbENvbm5lY3Rpb25IZWlnaHQgIT0gbnVsbCA6ICFXSEVFTF9DT05ORUNUSU9OX0hFSUdIVF9FREVGQVVMVC5lcXVhbHMod2hlZWxDb25uZWN0aW9uSGVpZ2h0KTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1RZUEVfT0ZfV0hFRUw6CisJCQkJcmV0dXJuIFRZUEVfT0ZfV0hFRUxfRURFRkFVTFQgPT0gbnVsbCA/IHR5cGVPZldoZWVsICE9IG51bGwgOiAhVFlQRV9PRl9XSEVFTF9FREVGQVVMVC5lcXVhbHModHlwZU9mV2hlZWwpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfVkVMT0NJVFlfUElfREtQOgorCQkJCXJldHVybiBXSEVFTF9WRUxPQ0lUWV9QSV9ES1BfRURFRkFVTFQgPT0gbnVsbCA/IHdoZWVsVmVsb2NpdHlQSURrcCAhPSBudWxsIDogIVdIRUVMX1ZFTE9DSVRZX1BJX0RLUF9FREVGQVVMVC5lcXVhbHMod2hlZWxWZWxvY2l0eVBJRGtwKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX1ZFTE9DSVRZX1BJX0RLSToKKwkJCQlyZXR1cm4gV0hFRUxfVkVMT0NJVFlfUElfREtJX0VERUZBVUxUID09IG51bGwgPyB3aGVlbFZlbG9jaXR5UElEa2kgIT0gbnVsbCA6ICFXSEVFTF9WRUxPQ0lUWV9QSV9ES0lfRURFRkFVTFQuZXF1YWxzKHdoZWVsVmVsb2NpdHlQSURraSk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ES0Q6CisJCQkJcmV0dXJuIFdIRUVMX1ZFTE9DSVRZX1BJX0RLRF9FREVGQVVMVCA9PSBudWxsID8gd2hlZWxWZWxvY2l0eVBJRGtkICE9IG51bGwgOiAhV0hFRUxfVkVMT0NJVFlfUElfREtEX0VERUZBVUxULmVxdWFscyh3aGVlbFZlbG9jaXR5UElEa2QpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTV9fV0hFRUxfU1RFRVJJTkdfUElfREtQOgorCQkJCXJldHVybiBXSEVFTF9TVEVFUklOR19QSV9ES1BfRURFRkFVTFQgPT0gbnVsbCA/IHdoZWVsU3RlZXJpbmdQSURrcCAhPSBudWxsIDogIVdIRUVMX1NURUVSSU5HX1BJX0RLUF9FREVGQVVMVC5lcXVhbHMod2hlZWxTdGVlcmluZ1BJRGtwKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1dIRUVMX1NURUVSSU5HX1BJX0RLRDoKKwkJCQlyZXR1cm4gV0hFRUxfU1RFRVJJTkdfUElfREtEX0VERUZBVUxUID09IG51bGwgPyB3aGVlbFN0ZWVyaW5nUElEa2QgIT0gbnVsbCA6ICFXSEVFTF9TVEVFUklOR19QSV9ES0RfRURFRkFVTFQuZXF1YWxzKHdoZWVsU3RlZXJpbmdQSURrZCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9GUklDVElPTjoKKwkJCQlyZXR1cm4gV0hFRUxfRlJJQ1RJT05fRURFRkFVTFQgPT0gbnVsbCA/IHdoZWVsRnJpY3Rpb24gIT0gbnVsbCA6ICFXSEVFTF9GUklDVElPTl9FREVGQVVMVC5lcXVhbHMod2hlZWxGcmljdGlvbik7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX1NUSUZGTkVTUzoKKwkJCQlyZXR1cm4gU1VTUEVOU0lPTl9TVElGRk5FU1NfRURFRkFVTFQgPT0gbnVsbCA/IHN1c3BlbnNpb25TdGlmZm5lc3MgIT0gbnVsbCA6ICFTVVNQRU5TSU9OX1NUSUZGTkVTU19FREVGQVVMVC5lcXVhbHMoc3VzcGVuc2lvblN0aWZmbmVzcyk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19TVVNQRU5TSU9OX0RBTVBJTkc6CisJCQkJcmV0dXJuIFNVU1BFTlNJT05fREFNUElOR19FREVGQVVMVCA9PSBudWxsID8gc3VzcGVuc2lvbkRhbXBpbmcgIT0gbnVsbCA6ICFTVVNQRU5TSU9OX0RBTVBJTkdfRURFRkFVTFQuZXF1YWxzKHN1c3BlbnNpb25EYW1waW5nKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1RFRVJFRF9XSEVFTF9TWVNURU1fX1NVU1BFTlNJT05fQ09NUFJFU1NJT046CisJCQkJcmV0dXJuIFNVU1BFTlNJT05fQ09NUFJFU1NJT05fRURFRkFVTFQgPT0gbnVsbCA/IHN1c3BlbnNpb25Db21wcmVzc2lvbiAhPSBudWxsIDogIVNVU1BFTlNJT05fQ09NUFJFU1NJT05fRURFRkFVTFQuZXF1YWxzKHN1c3BlbnNpb25Db21wcmVzc2lvbik7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1NVTToKKwkJCQlyZXR1cm4gV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9TVU1fRURFRkFVTFQgPT0gbnVsbCA/IHdoZWVsVmVsb2NpdHlQSURtYXhTdW0gIT0gbnVsbCA6ICFXSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1NVTV9FREVGQVVMVC5lcXVhbHMod2hlZWxWZWxvY2l0eVBJRG1heFN1bSk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNURUVSRURfV0hFRUxfU1lTVEVNX19XSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1ZBTDoKKwkJCQlyZXR1cm4gV0hFRUxfVkVMT0NJVFlfUElfRE1BWF9WQUxfRURFRkFVTFQgPT0gbnVsbCA/IHdoZWVsVmVsb2NpdHlQSURtYXhWYWwgIT0gbnVsbCA6ICFXSEVFTF9WRUxPQ0lUWV9QSV9ETUFYX1ZBTF9FREVGQVVMVC5lcXVhbHMod2hlZWxWZWxvY2l0eVBJRG1heFZhbCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CisJCWlmIChlSXNQcm94eSgpKSByZXR1cm4gc3VwZXIudG9TdHJpbmcoKTsKKworCQlTdHJpbmdCdWZmZXIgcmVzdWx0ID0gbmV3IFN0cmluZ0J1ZmZlcihzdXBlci50b1N0cmluZygpKTsKKwkJcmVzdWx0LmFwcGVuZCgiICh3aGVlbFJhZGl1czogIik7CisJCXJlc3VsdC5hcHBlbmQod2hlZWxSYWRpdXMpOworCQlyZXN1bHQuYXBwZW5kKCIsIHdoZWVsV2lkdGg6ICIpOworCQlyZXN1bHQuYXBwZW5kKHdoZWVsV2lkdGgpOworCQlyZXN1bHQuYXBwZW5kKCIsIHN1c3BlbnNpb25SZXN0TGVuZ3RoOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChzdXNwZW5zaW9uUmVzdExlbmd0aCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgd2hlZWxDb25uZWN0aW9uSGVpZ2h0OiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh3aGVlbENvbm5lY3Rpb25IZWlnaHQpOworCQlyZXN1bHQuYXBwZW5kKCIsIHR5cGVPZldoZWVsOiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh0eXBlT2ZXaGVlbCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgd2hlZWxWZWxvY2l0eVBJRGtwOiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh3aGVlbFZlbG9jaXR5UElEa3ApOworCQlyZXN1bHQuYXBwZW5kKCIsIHdoZWVsVmVsb2NpdHlQSURraTogIik7CisJCXJlc3VsdC5hcHBlbmQod2hlZWxWZWxvY2l0eVBJRGtpKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCB3aGVlbFZlbG9jaXR5UElEa2Q6ICIpOworCQlyZXN1bHQuYXBwZW5kKHdoZWVsVmVsb2NpdHlQSURrZCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgd2hlZWxTdGVlcmluZ1BJRGtwOiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh3aGVlbFN0ZWVyaW5nUElEa3ApOworCQlyZXN1bHQuYXBwZW5kKCIsIHdoZWVsU3RlZXJpbmdQSURrZDogIik7CisJCXJlc3VsdC5hcHBlbmQod2hlZWxTdGVlcmluZ1BJRGtkKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCB3aGVlbEZyaWN0aW9uOiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh3aGVlbEZyaWN0aW9uKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBzdXNwZW5zaW9uU3RpZmZuZXNzOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChzdXNwZW5zaW9uU3RpZmZuZXNzKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBzdXNwZW5zaW9uRGFtcGluZzogIik7CisJCXJlc3VsdC5hcHBlbmQoc3VzcGVuc2lvbkRhbXBpbmcpOworCQlyZXN1bHQuYXBwZW5kKCIsIHN1c3BlbnNpb25Db21wcmVzc2lvbjogIik7CisJCXJlc3VsdC5hcHBlbmQoc3VzcGVuc2lvbkNvbXByZXNzaW9uKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCB3aGVlbFZlbG9jaXR5UElEbWF4U3VtOiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh3aGVlbFZlbG9jaXR5UElEbWF4U3VtKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCB3aGVlbFZlbG9jaXR5UElEbWF4VmFsOiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh3aGVlbFZlbG9jaXR5UElEbWF4VmFsKTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIFN0ZWVyZWRXaGVlbFN5c3RlbUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3VwcG9ydGluZ1N0cnVjdHVyZUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3VwcG9ydGluZ1N0cnVjdHVyZUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jMDAyMzljCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TdXBwb3J0aW5nU3RydWN0dXJlSW1wbC5qYXZhCkBAIC0wLDAgKzEsMzggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN1cHBvcnRpbmdTdHJ1Y3R1cmU7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5TdXBwb3J0aW5nIFN0cnVjdHVyZTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIFN1cHBvcnRpbmdTdHJ1Y3R1cmVJbXBsIGV4dGVuZHMgSGFyZHdhcmVJbXBsIGltcGxlbWVudHMgU3VwcG9ydGluZ1N0cnVjdHVyZSB7CisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFN1cHBvcnRpbmdTdHJ1Y3R1cmVJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuU1VQUE9SVElOR19TVFJVQ1RVUkU7CisJfQorCit9IC8vIFN1cHBvcnRpbmdTdHJ1Y3R1cmVJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N1cmZhY2VJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1N1cmZhY2VJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODVlZTlkOQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3VyZmFjZUltcGwuamF2YQpAQCAtMCwwICsxLDM4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3VyZmFjZTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIFN1cmZhY2VJbXBsIGV4dGVuZHMgUGh5c2ljYWxPYmplY3RJbXBsIGltcGxlbWVudHMgU3VyZmFjZSB7CisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFN1cmZhY2VJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuU1VSRkFDRTsKKwl9CisKK30gLy8gU3VyZmFjZUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9TeXN0ZW1JbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTk5ZWM3OQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvU3lzdGVtSW1wbC5qYXZhCkBAIC0wLDAgKzEsMzgyIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlN5c3RlbTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbCNnZXRCYXNlX0NsYXNzIDxlbT5CYXNlIENsYXNzPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5TeXN0ZW1JbXBsI2lzTmF0aXZlIDxlbT5OYXRpdmU8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlN5c3RlbUltcGwjZ2V0TGlicmFyeVBhdGggPGVtPkxpYnJhcnkgUGF0aDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbCNnZXRMaWJyYXJ5Q29tcG9uZW50TmFtZSA8ZW0+TGlicmFyeSBDb21wb25lbnQgTmFtZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuU3lzdGVtSW1wbCNnZXRBbGlhcyA8ZW0+QWxpYXM8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBTeXN0ZW1JbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0geworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEJhc2VfQ2xhc3MoKSA8ZW0+QmFzZSBDbGFzczwvZW0+fScgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0QmFzZV9DbGFzcygpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzIGJhc2VfQ2xhc3M7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjaXNOYXRpdmUoKSA8ZW0+TmF0aXZlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNpc05hdGl2ZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBib29sZWFuIE5BVElWRV9FREVGQVVMVCA9IGZhbHNlOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjaXNOYXRpdmUoKSA8ZW0+TmF0aXZlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNpc05hdGl2ZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIGJvb2xlYW4gbmF0aXZlXyA9IE5BVElWRV9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRMaWJyYXJ5UGF0aCgpIDxlbT5MaWJyYXJ5IFBhdGg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExpYnJhcnlQYXRoKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIFN0cmluZyBMSUJSQVJZX1BBVEhfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TGlicmFyeVBhdGgoKSA8ZW0+TGlicmFyeSBQYXRoPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRMaWJyYXJ5UGF0aCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFN0cmluZyBsaWJyYXJ5UGF0aCA9IExJQlJBUllfUEFUSF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRMaWJyYXJ5Q29tcG9uZW50TmFtZSgpIDxlbT5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRMaWJyYXJ5Q29tcG9uZW50TmFtZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBTdHJpbmcgTElCUkFSWV9DT01QT05FTlRfTkFNRV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRMaWJyYXJ5Q29tcG9uZW50TmFtZSgpIDxlbT5MaWJyYXJ5IENvbXBvbmVudCBOYW1lPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRMaWJyYXJ5Q29tcG9uZW50TmFtZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFN0cmluZyBsaWJyYXJ5Q29tcG9uZW50TmFtZSA9IExJQlJBUllfQ09NUE9ORU5UX05BTUVfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0QWxpYXMoKSA8ZW0+QWxpYXM8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEFsaWFzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIFN0cmluZyBBTElBU19FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRBbGlhcygpIDxlbT5BbGlhczwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0QWxpYXMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBTdHJpbmcgYWxpYXMgPSBBTElBU19FREVGQVVMVDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBTeXN0ZW1JbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gUm9ib3RNTFBhY2thZ2UuTGl0ZXJhbHMuU1lTVEVNOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyBnZXRCYXNlX0NsYXNzKCkgeworCQlpZiAoYmFzZV9DbGFzcyAhPSBudWxsICYmIGJhc2VfQ2xhc3MuZUlzUHJveHkoKSkgeworCQkJSW50ZXJuYWxFT2JqZWN0IG9sZEJhc2VfQ2xhc3MgPSAoSW50ZXJuYWxFT2JqZWN0KWJhc2VfQ2xhc3M7CisJCQliYXNlX0NsYXNzID0gKG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzKWVSZXNvbHZlUHJveHkob2xkQmFzZV9DbGFzcyk7CisJCQlpZiAoYmFzZV9DbGFzcyAhPSBvbGRCYXNlX0NsYXNzKSB7CisJCQkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uUkVTT0xWRSwgUm9ib3RNTFBhY2thZ2UuU1lTVEVNX19CQVNFX0NMQVNTLCBvbGRCYXNlX0NsYXNzLCBiYXNlX0NsYXNzKSk7CisJCQl9CisJCX0KKwkJcmV0dXJuIGJhc2VfQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIG9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzIGJhc2ljR2V0QmFzZV9DbGFzcygpIHsKKwkJcmV0dXJuIGJhc2VfQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0QmFzZV9DbGFzcyhvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyBuZXdCYXNlX0NsYXNzKSB7CisJCW9yZy5lY2xpcHNlLnVtbDIudW1sLkNsYXNzIG9sZEJhc2VfQ2xhc3MgPSBiYXNlX0NsYXNzOworCQliYXNlX0NsYXNzID0gbmV3QmFzZV9DbGFzczsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuU1lTVEVNX19CQVNFX0NMQVNTLCBvbGRCYXNlX0NsYXNzLCBiYXNlX0NsYXNzKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIGJvb2xlYW4gaXNOYXRpdmUoKSB7CisJCXJldHVybiBuYXRpdmVfOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldE5hdGl2ZShib29sZWFuIG5ld05hdGl2ZSkgeworCQlib29sZWFuIG9sZE5hdGl2ZSA9IG5hdGl2ZV87CisJCW5hdGl2ZV8gPSBuZXdOYXRpdmU7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLlNZU1RFTV9fTkFUSVZFLCBvbGROYXRpdmUsIG5hdGl2ZV8pKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3RyaW5nIGdldExpYnJhcnlQYXRoKCkgeworCQlyZXR1cm4gbGlicmFyeVBhdGg7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0TGlicmFyeVBhdGgoU3RyaW5nIG5ld0xpYnJhcnlQYXRoKSB7CisJCVN0cmluZyBvbGRMaWJyYXJ5UGF0aCA9IGxpYnJhcnlQYXRoOworCQlsaWJyYXJ5UGF0aCA9IG5ld0xpYnJhcnlQYXRoOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5TWVNURU1fX0xJQlJBUllfUEFUSCwgb2xkTGlicmFyeVBhdGgsIGxpYnJhcnlQYXRoKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0cmluZyBnZXRMaWJyYXJ5Q29tcG9uZW50TmFtZSgpIHsKKwkJcmV0dXJuIGxpYnJhcnlDb21wb25lbnROYW1lOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldExpYnJhcnlDb21wb25lbnROYW1lKFN0cmluZyBuZXdMaWJyYXJ5Q29tcG9uZW50TmFtZSkgeworCQlTdHJpbmcgb2xkTGlicmFyeUNvbXBvbmVudE5hbWUgPSBsaWJyYXJ5Q29tcG9uZW50TmFtZTsKKwkJbGlicmFyeUNvbXBvbmVudE5hbWUgPSBuZXdMaWJyYXJ5Q29tcG9uZW50TmFtZTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuU1lTVEVNX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FLCBvbGRMaWJyYXJ5Q29tcG9uZW50TmFtZSwgbGlicmFyeUNvbXBvbmVudE5hbWUpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3RyaW5nIGdldEFsaWFzKCkgeworCQlyZXR1cm4gYWxpYXM7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0QWxpYXMoU3RyaW5nIG5ld0FsaWFzKSB7CisJCVN0cmluZyBvbGRBbGlhcyA9IGFsaWFzOworCQlhbGlhcyA9IG5ld0FsaWFzOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5TWVNURU1fX0FMSUFTLCBvbGRBbGlhcywgYWxpYXMpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNZU1RFTV9fQkFTRV9DTEFTUzoKKwkJCQlpZiAocmVzb2x2ZSkgcmV0dXJuIGdldEJhc2VfQ2xhc3MoKTsKKwkJCQlyZXR1cm4gYmFzaWNHZXRCYXNlX0NsYXNzKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNZU1RFTV9fTkFUSVZFOgorCQkJCXJldHVybiBpc05hdGl2ZSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TWVNURU1fX0xJQlJBUllfUEFUSDoKKwkJCQlyZXR1cm4gZ2V0TGlicmFyeVBhdGgoKTsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1lTVEVNX19MSUJSQVJZX0NPTVBPTkVOVF9OQU1FOgorCQkJCXJldHVybiBnZXRMaWJyYXJ5Q29tcG9uZW50TmFtZSgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TWVNURU1fX0FMSUFTOgorCQkJCXJldHVybiBnZXRBbGlhcygpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNZU1RFTV9fQkFTRV9DTEFTUzoKKwkJCQlzZXRCYXNlX0NsYXNzKChvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TWVNURU1fX05BVElWRToKKwkJCQlzZXROYXRpdmUoKEJvb2xlYW4pbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1lTVEVNX19MSUJSQVJZX1BBVEg6CisJCQkJc2V0TGlicmFyeVBhdGgoKFN0cmluZyluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUU6CisJCQkJc2V0TGlicmFyeUNvbXBvbmVudE5hbWUoKFN0cmluZyluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TWVNURU1fX0FMSUFTOgorCQkJCXNldEFsaWFzKChTdHJpbmcpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNZU1RFTV9fQkFTRV9DTEFTUzoKKwkJCQlzZXRCYXNlX0NsYXNzKChvcmcuZWNsaXBzZS51bWwyLnVtbC5DbGFzcyludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNZU1RFTV9fTkFUSVZFOgorCQkJCXNldE5hdGl2ZShOQVRJVkVfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1lTVEVNX19MSUJSQVJZX1BBVEg6CisJCQkJc2V0TGlicmFyeVBhdGgoTElCUkFSWV9QQVRIX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNZU1RFTV9fTElCUkFSWV9DT01QT05FTlRfTkFNRToKKwkJCQlzZXRMaWJyYXJ5Q29tcG9uZW50TmFtZShMSUJSQVJZX0NPTVBPTkVOVF9OQU1FX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNZU1RFTV9fQUxJQVM6CisJCQkJc2V0QWxpYXMoQUxJQVNfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TWVNURU1fX0JBU0VfQ0xBU1M6CisJCQkJcmV0dXJuIGJhc2VfQ2xhc3MgIT0gbnVsbDsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1lTVEVNX19OQVRJVkU6CisJCQkJcmV0dXJuIG5hdGl2ZV8gIT0gTkFUSVZFX0VERUZBVUxUOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TWVNURU1fX0xJQlJBUllfUEFUSDoKKwkJCQlyZXR1cm4gTElCUkFSWV9QQVRIX0VERUZBVUxUID09IG51bGwgPyBsaWJyYXJ5UGF0aCAhPSBudWxsIDogIUxJQlJBUllfUEFUSF9FREVGQVVMVC5lcXVhbHMobGlicmFyeVBhdGgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TWVNURU1fX0xJQlJBUllfQ09NUE9ORU5UX05BTUU6CisJCQkJcmV0dXJuIExJQlJBUllfQ09NUE9ORU5UX05BTUVfRURFRkFVTFQgPT0gbnVsbCA/IGxpYnJhcnlDb21wb25lbnROYW1lICE9IG51bGwgOiAhTElCUkFSWV9DT01QT05FTlRfTkFNRV9FREVGQVVMVC5lcXVhbHMobGlicmFyeUNvbXBvbmVudE5hbWUpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TWVNURU1fX0FMSUFTOgorCQkJCXJldHVybiBBTElBU19FREVGQVVMVCA9PSBudWxsID8gYWxpYXMgIT0gbnVsbCA6ICFBTElBU19FREVGQVVMVC5lcXVhbHMoYWxpYXMpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAobmF0aXZlOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChuYXRpdmVfKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBsaWJyYXJ5UGF0aDogIik7CisJCXJlc3VsdC5hcHBlbmQobGlicmFyeVBhdGgpOworCQlyZXN1bHQuYXBwZW5kKCIsIGxpYnJhcnlDb21wb25lbnROYW1lOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChsaWJyYXJ5Q29tcG9uZW50TmFtZSk7CisJCXJlc3VsdC5hcHBlbmQoIiwgYWxpYXM6ICIpOworCQlyZXN1bHQuYXBwZW5kKGFsaWFzKTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIFN5c3RlbUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvVHJhbnNpdGlvbkltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lMWRhYjc1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9UcmFuc2l0aW9uSW1wbC5qYXZhCkBAIC0wLDAgKzEsMjc0IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuVHJhbnNpdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS51bWwyLnVtbC5CZWhhdmlvcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlRyYW5zaXRpb248L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlRyYW5zaXRpb25JbXBsI2dldEJhc2VfVHJhbnNpdGlvbiA8ZW0+QmFzZSBUcmFuc2l0aW9uPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5UcmFuc2l0aW9uSW1wbCNnZXRHdWFyZCA8ZW0+R3VhcmQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlRyYW5zaXRpb25JbXBsI2dldEVmZmVjdCA8ZW0+RWZmZWN0PC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgVHJhbnNpdGlvbkltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgVHJhbnNpdGlvbiB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0QmFzZV9UcmFuc2l0aW9uKCkgPGVtPkJhc2UgVHJhbnNpdGlvbjwvZW0+fScgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0QmFzZV9UcmFuc2l0aW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgb3JnLmVjbGlwc2UudW1sMi51bWwuVHJhbnNpdGlvbiBiYXNlX1RyYW5zaXRpb247CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRHdWFyZCgpIDxlbT5HdWFyZDwvZW0+fScgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0R3VhcmQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBCZWhhdmlvciBndWFyZDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEVmZmVjdCgpIDxlbT5FZmZlY3Q8L2VtPn0nIHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEVmZmVjdCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEJlaGF2aW9yIGVmZmVjdDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBUcmFuc2l0aW9uSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLlRSQU5TSVRJT047CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIG9yZy5lY2xpcHNlLnVtbDIudW1sLlRyYW5zaXRpb24gZ2V0QmFzZV9UcmFuc2l0aW9uKCkgeworCQlpZiAoYmFzZV9UcmFuc2l0aW9uICE9IG51bGwgJiYgYmFzZV9UcmFuc2l0aW9uLmVJc1Byb3h5KCkpIHsKKwkJCUludGVybmFsRU9iamVjdCBvbGRCYXNlX1RyYW5zaXRpb24gPSAoSW50ZXJuYWxFT2JqZWN0KWJhc2VfVHJhbnNpdGlvbjsKKwkJCWJhc2VfVHJhbnNpdGlvbiA9IChvcmcuZWNsaXBzZS51bWwyLnVtbC5UcmFuc2l0aW9uKWVSZXNvbHZlUHJveHkob2xkQmFzZV9UcmFuc2l0aW9uKTsKKwkJCWlmIChiYXNlX1RyYW5zaXRpb24gIT0gb2xkQmFzZV9UcmFuc2l0aW9uKSB7CisJCQkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uUkVTT0xWRSwgUm9ib3RNTFBhY2thZ2UuVFJBTlNJVElPTl9fQkFTRV9UUkFOU0lUSU9OLCBvbGRCYXNlX1RyYW5zaXRpb24sIGJhc2VfVHJhbnNpdGlvbikpOworCQkJfQorCQl9CisJCXJldHVybiBiYXNlX1RyYW5zaXRpb247CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIG9yZy5lY2xpcHNlLnVtbDIudW1sLlRyYW5zaXRpb24gYmFzaWNHZXRCYXNlX1RyYW5zaXRpb24oKSB7CisJCXJldHVybiBiYXNlX1RyYW5zaXRpb247CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0QmFzZV9UcmFuc2l0aW9uKG9yZy5lY2xpcHNlLnVtbDIudW1sLlRyYW5zaXRpb24gbmV3QmFzZV9UcmFuc2l0aW9uKSB7CisJCW9yZy5lY2xpcHNlLnVtbDIudW1sLlRyYW5zaXRpb24gb2xkQmFzZV9UcmFuc2l0aW9uID0gYmFzZV9UcmFuc2l0aW9uOworCQliYXNlX1RyYW5zaXRpb24gPSBuZXdCYXNlX1RyYW5zaXRpb247CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFJvYm90TUxQYWNrYWdlLlRSQU5TSVRJT05fX0JBU0VfVFJBTlNJVElPTiwgb2xkQmFzZV9UcmFuc2l0aW9uLCBiYXNlX1RyYW5zaXRpb24pKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQmVoYXZpb3IgZ2V0R3VhcmQoKSB7CisJCWlmIChndWFyZCAhPSBudWxsICYmIGd1YXJkLmVJc1Byb3h5KCkpIHsKKwkJCUludGVybmFsRU9iamVjdCBvbGRHdWFyZCA9IChJbnRlcm5hbEVPYmplY3QpZ3VhcmQ7CisJCQlndWFyZCA9IChCZWhhdmlvcillUmVzb2x2ZVByb3h5KG9sZEd1YXJkKTsKKwkJCWlmIChndWFyZCAhPSBvbGRHdWFyZCkgeworCQkJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlJFU09MVkUsIFJvYm90TUxQYWNrYWdlLlRSQU5TSVRJT05fX0dVQVJELCBvbGRHdWFyZCwgZ3VhcmQpKTsKKwkJCX0KKwkJfQorCQlyZXR1cm4gZ3VhcmQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEJlaGF2aW9yIGJhc2ljR2V0R3VhcmQoKSB7CisJCXJldHVybiBndWFyZDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRHdWFyZChCZWhhdmlvciBuZXdHdWFyZCkgeworCQlCZWhhdmlvciBvbGRHdWFyZCA9IGd1YXJkOworCQlndWFyZCA9IG5ld0d1YXJkOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBSb2JvdE1MUGFja2FnZS5UUkFOU0lUSU9OX19HVUFSRCwgb2xkR3VhcmQsIGd1YXJkKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEJlaGF2aW9yIGdldEVmZmVjdCgpIHsKKwkJaWYgKGVmZmVjdCAhPSBudWxsICYmIGVmZmVjdC5lSXNQcm94eSgpKSB7CisJCQlJbnRlcm5hbEVPYmplY3Qgb2xkRWZmZWN0ID0gKEludGVybmFsRU9iamVjdCllZmZlY3Q7CisJCQllZmZlY3QgPSAoQmVoYXZpb3IpZVJlc29sdmVQcm94eShvbGRFZmZlY3QpOworCQkJaWYgKGVmZmVjdCAhPSBvbGRFZmZlY3QpIHsKKwkJCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5SRVNPTFZFLCBSb2JvdE1MUGFja2FnZS5UUkFOU0lUSU9OX19FRkZFQ1QsIG9sZEVmZmVjdCwgZWZmZWN0KSk7CisJCQl9CisJCX0KKwkJcmV0dXJuIGVmZmVjdDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQmVoYXZpb3IgYmFzaWNHZXRFZmZlY3QoKSB7CisJCXJldHVybiBlZmZlY3Q7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0RWZmZWN0KEJlaGF2aW9yIG5ld0VmZmVjdCkgeworCQlCZWhhdmlvciBvbGRFZmZlY3QgPSBlZmZlY3Q7CisJCWVmZmVjdCA9IG5ld0VmZmVjdDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgUm9ib3RNTFBhY2thZ2UuVFJBTlNJVElPTl9fRUZGRUNULCBvbGRFZmZlY3QsIGVmZmVjdCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuVFJBTlNJVElPTl9fQkFTRV9UUkFOU0lUSU9OOgorCQkJCWlmIChyZXNvbHZlKSByZXR1cm4gZ2V0QmFzZV9UcmFuc2l0aW9uKCk7CisJCQkJcmV0dXJuIGJhc2ljR2V0QmFzZV9UcmFuc2l0aW9uKCk7CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlRSQU5TSVRJT05fX0dVQVJEOgorCQkJCWlmIChyZXNvbHZlKSByZXR1cm4gZ2V0R3VhcmQoKTsKKwkJCQlyZXR1cm4gYmFzaWNHZXRHdWFyZCgpOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5UUkFOU0lUSU9OX19FRkZFQ1Q6CisJCQkJaWYgKHJlc29sdmUpIHJldHVybiBnZXRFZmZlY3QoKTsKKwkJCQlyZXR1cm4gYmFzaWNHZXRFZmZlY3QoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5UUkFOU0lUSU9OX19CQVNFX1RSQU5TSVRJT046CisJCQkJc2V0QmFzZV9UcmFuc2l0aW9uKChvcmcuZWNsaXBzZS51bWwyLnVtbC5UcmFuc2l0aW9uKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlRSQU5TSVRJT05fX0dVQVJEOgorCQkJCXNldEd1YXJkKChCZWhhdmlvciluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5UUkFOU0lUSU9OX19FRkZFQ1Q6CisJCQkJc2V0RWZmZWN0KChCZWhhdmlvciluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuVFJBTlNJVElPTl9fQkFTRV9UUkFOU0lUSU9OOgorCQkJCXNldEJhc2VfVHJhbnNpdGlvbigob3JnLmVjbGlwc2UudW1sMi51bWwuVHJhbnNpdGlvbiludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlRSQU5TSVRJT05fX0dVQVJEOgorCQkJCXNldEd1YXJkKChCZWhhdmlvciludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlRSQU5TSVRJT05fX0VGRkVDVDoKKwkJCQlzZXRFZmZlY3QoKEJlaGF2aW9yKW51bGwpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5UUkFOU0lUSU9OX19CQVNFX1RSQU5TSVRJT046CisJCQkJcmV0dXJuIGJhc2VfVHJhbnNpdGlvbiAhPSBudWxsOworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5UUkFOU0lUSU9OX19HVUFSRDoKKwkJCQlyZXR1cm4gZ3VhcmQgIT0gbnVsbDsKKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuVFJBTlNJVElPTl9fRUZGRUNUOgorCQkJCXJldHVybiBlZmZlY3QgIT0gbnVsbDsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCit9IC8vIFRyYW5zaXRpb25JbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1dhdGVyU3VyZmFjZUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2F0ZXJTdXJmYWNlSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU1NjkyZWMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC9pbXBsL1dhdGVyU3VyZmFjZUltcGwuamF2YQpAQCAtMCwwICsxLDM4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5XYXRlclN1cmZhY2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5XYXRlciBTdXJmYWNlPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgV2F0ZXJTdXJmYWNlSW1wbCBleHRlbmRzIFN1cmZhY2VJbXBsIGltcGxlbWVudHMgV2F0ZXJTdXJmYWNlIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgV2F0ZXJTdXJmYWNlSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLldBVEVSX1NVUkZBQ0U7CisJfQorCit9IC8vIFdhdGVyU3VyZmFjZUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2VhcG9uU3lzdGVtSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvaW1wbC9XZWFwb25TeXN0ZW1JbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTk5ZDZjNQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML2ltcGwvV2VhcG9uU3lzdGVtSW1wbC5qYXZhCkBAIC0wLDAgKzEsMzggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLldlYXBvblN5c3RlbTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPldlYXBvbiBTeXN0ZW08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBXZWFwb25TeXN0ZW1JbXBsIGV4dGVuZHMgQWN0dWF0b3JTeXN0ZW1JbXBsIGltcGxlbWVudHMgV2VhcG9uU3lzdGVtIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgV2VhcG9uU3lzdGVtSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFJvYm90TUxQYWNrYWdlLkxpdGVyYWxzLldFQVBPTl9TWVNURU07CisJfQorCit9IC8vIFdlYXBvblN5c3RlbUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTEFkYXB0ZXJGYWN0b3J5LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ2MTI4NDAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxBZGFwdGVyRmFjdG9yeS5qYXZhCkBAIC0wLDAgKzEsMTYxOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5BZGFwdGVyOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWVyOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LmltcGwuQWRhcHRlckZhY3RvcnlJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRlZEpvaW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRvckhhcmR3YXJlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRvclN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWdlbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtTGlicmFyeTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxsb2NhdGU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFybTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQmxlbmRlck1vcnNlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5CdWlsZGluZzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2FtZXJhU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DaGFzc2lzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DbG9zZWRMb29wQ29udHJvbFN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ29tcGxldGVCb25kaW5nOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DeWJlclBoeXNpY2FsU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DeWNhYlRLOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EYXRhRmxvd1BvcnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRlcGxveW1lbnRQbGFuOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FbmdpbmVTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkVudmlyb25tZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FeHRlcm5hbExpYnJhcnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkZsb29yOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5HUFNTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkdyYXNwaW5nSGFyZHdhcmU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkdyYXNwaW5nU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Hcm91bmQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkd5cm9zY29wZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSGFyZHdhcmU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkh1bWFuOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5JbWFnZVNlbnNvclN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Kb2ludDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSm95c3RpY05hdmlnYXRpb25TeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxhbmRTdXJmYWNlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MZWc7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxlZ1N5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTG9jb21vdGlvbkhhcmR3YXJlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Mb2NvbW90aW9uU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5NYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5NYW5pcHVsYXRvcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTWVjaGFuaWNhbExpbmthZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk1vYmlsZVJvYm90OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5OYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT2RvbWV0cnlTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9uUG9ydDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT25WYXJpYWJsZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT3Blbkxvb3BDb250cm9sU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QZWRlc3RyaWFuOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaHlzaWNhbE9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGlsb3RlZFN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGxhbmV0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QbGF0Zm9ybTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG9ydDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG93ZXJIYXJkd2FyZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljSGVhZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTaW11bGF0b3I7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvckRyaXZlcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2Vuc29ySGFyZHdhcmU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvclN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2VydmljZVBvcnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNvZnR3YXJlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGFpcnM7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0YXRlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxIYXJkd2FyZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXBwb3J0aW5nU3RydWN0dXJlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5UcmFuc2l0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5XYXRlclN1cmZhY2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLldlYXBvblN5c3RlbTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogVGhlIDxiPkFkYXB0ZXIgRmFjdG9yeTwvYj4gZm9yIHRoZSBtb2RlbC4KKyAqIEl0IHByb3ZpZGVzIGFuIGFkYXB0ZXIgPGNvZGU+Y3JlYXRlWFhYPC9jb2RlPiBtZXRob2QgZm9yIGVhY2ggY2xhc3Mgb2YgdGhlIG1vZGVsLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZQorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgUm9ib3RNTEFkYXB0ZXJGYWN0b3J5IGV4dGVuZHMgQWRhcHRlckZhY3RvcnlJbXBsIHsKKwkvKioKKwkgKiBUaGUgY2FjaGVkIG1vZGVsIHBhY2thZ2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBSb2JvdE1MUGFja2FnZSBtb2RlbFBhY2thZ2U7CisKKwkvKioKKwkgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSBhZGFwdGVyIGZhY3RvcnkuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFJvYm90TUxBZGFwdGVyRmFjdG9yeSgpIHsKKwkJaWYgKG1vZGVsUGFja2FnZSA9PSBudWxsKSB7CisJCQltb2RlbFBhY2thZ2UgPSBSb2JvdE1MUGFja2FnZS5lSU5TVEFOQ0U7CisJCX0KKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHdoZXRoZXIgdGhpcyBmYWN0b3J5IGlzIGFwcGxpY2FibGUgZm9yIHRoZSB0eXBlIG9mIHRoZSBvYmplY3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgPGNvZGU+dHJ1ZTwvY29kZT4gaWYgdGhlIG9iamVjdCBpcyBlaXRoZXIgdGhlIG1vZGVsJ3MgcGFja2FnZSBvciBpcyBhbiBpbnN0YW5jZSBvYmplY3Qgb2YgdGhlIG1vZGVsLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gd2hldGhlciB0aGlzIGZhY3RvcnkgaXMgYXBwbGljYWJsZSBmb3IgdGhlIHR5cGUgb2YgdGhlIG9iamVjdC4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gaXNGYWN0b3J5Rm9yVHlwZShPYmplY3Qgb2JqZWN0KSB7CisJCWlmIChvYmplY3QgPT0gbW9kZWxQYWNrYWdlKSB7CisJCQlyZXR1cm4gdHJ1ZTsKKwkJfQorCQlpZiAob2JqZWN0IGluc3RhbmNlb2YgRU9iamVjdCkgeworCQkJcmV0dXJuICgoRU9iamVjdClvYmplY3QpLmVDbGFzcygpLmdldEVQYWNrYWdlKCkgPT0gbW9kZWxQYWNrYWdlOworCQl9CisJCXJldHVybiBmYWxzZTsKKwl9CisKKwkvKioKKwkgKiBUaGUgc3dpdGNoIHRoYXQgZGVsZWdhdGVzIHRvIHRoZSA8Y29kZT5jcmVhdGVYWFg8L2NvZGU+IG1ldGhvZHMuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFJvYm90TUxTd2l0Y2g8QWRhcHRlcj4gbW9kZWxTd2l0Y2ggPQorCQkJbmV3IFJvYm90TUxTd2l0Y2g8QWRhcHRlcj4oKSB7CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VUcmFuc2l0aW9uKFRyYW5zaXRpb24gb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZVRyYW5zaXRpb25BZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VBbGdvcml0aG0oQWxnb3JpdGhtIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVBbGdvcml0aG1BZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VTdGF0ZShTdGF0ZSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlU3RhdGVBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VBY3R1YXRlZEpvaW50KEFjdHVhdGVkSm9pbnQgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUFjdHVhdGVkSm9pbnRBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VKb2ludChKb2ludCBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlSm9pbnRBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VDb21wbGV0ZUJvbmRpbmcoQ29tcGxldGVCb25kaW5nIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVDb21wbGV0ZUJvbmRpbmdBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VSb2JvdChSb2JvdCBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlUm9ib3RBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VTeXN0ZW0ob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlQWdlbnQoQWdlbnQgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUFnZW50QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlUGh5c2ljYWxPYmplY3QoUGh5c2ljYWxPYmplY3Qgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZVBoeXNpY2FsT2JqZWN0QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlRGF0YUZsb3dQb3J0KERhdGFGbG93UG9ydCBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlRGF0YUZsb3dQb3J0QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlUG9ydChQb3J0IG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVQb3J0QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlU2VydmljZVBvcnQoU2VydmljZVBvcnQgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZVNlcnZpY2VQb3J0QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlQWN0dWF0b3JTeXN0ZW0oQWN0dWF0b3JTeXN0ZW0gb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUFjdHVhdG9yU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlUm9ib3RpY1N5c3RlbShSb2JvdGljU3lzdGVtIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVSb2JvdGljU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlQ3liZXJQaHlzaWNhbFN5c3RlbShDeWJlclBoeXNpY2FsU3lzdGVtIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVDeWJlclBoeXNpY2FsU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlU2Vuc29yU3lzdGVtKFNlbnNvclN5c3RlbSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlU2Vuc29yU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlSGFyZHdhcmUoSGFyZHdhcmUgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUhhcmR3YXJlQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlU29mdHdhcmUoU29mdHdhcmUgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZVNvZnR3YXJlQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlRW5naW5lU3lzdGVtKEVuZ2luZVN5c3RlbSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlRW5naW5lU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlU3RlZXJlZFdoZWVsU3lzdGVtKFN0ZWVyZWRXaGVlbFN5c3RlbSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlU3RlZXJlZFdoZWVsU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlTG9jb21vdGlvblN5c3RlbShMb2NvbW90aW9uU3lzdGVtIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVMb2NvbW90aW9uU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlSW1hZ2VTZW5zb3JTeXN0ZW0oSW1hZ2VTZW5zb3JTeXN0ZW0gb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUltYWdlU2Vuc29yU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlQ2FtZXJhU3lzdGVtKENhbWVyYVN5c3RlbSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlQ2FtZXJhU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtKE9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0oT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0gb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlTGlkYXJTeXN0ZW0oTGlkYXJTeXN0ZW0gb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUxpZGFyU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtKExvY2FsaXphdGlvblNlbnNvclN5c3RlbSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlR1BTU3lzdGVtKEdQU1N5c3RlbSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlR1BTU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlQWxnb3JpdGhtTGlicmFyeShBbGdvcml0aG1MaWJyYXJ5IG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVBbGdvcml0aG1MaWJyYXJ5QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlU2Vuc29yRHJpdmVyKFNlbnNvckRyaXZlciBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlU2Vuc29yRHJpdmVyQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlRW52aXJvbm1lbnQoRW52aXJvbm1lbnQgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUVudmlyb25tZW50QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlQnVpbGRpbmcoQnVpbGRpbmcgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUJ1aWxkaW5nQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlU3VyZmFjZShTdXJmYWNlIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVTdXJmYWNlQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlUGxhbmV0KFBsYW5ldCBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlUGxhbmV0QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlTGFuZFN1cmZhY2UoTGFuZFN1cmZhY2Ugb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUxhbmRTdXJmYWNlQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlR3JvdW5kKEdyb3VuZCBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlR3JvdW5kQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlRmxvb3IoRmxvb3Igb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUZsb29yQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlV2F0ZXJTdXJmYWNlKFdhdGVyU3VyZmFjZSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlV2F0ZXJTdXJmYWNlQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlSHVtYW4oSHVtYW4gb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUh1bWFuQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlUGVkZXN0cmlhbihQZWRlc3RyaWFuIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVQZWRlc3RyaWFuQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlU3RhaXJzKFN0YWlycyBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlU3RhaXJzQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlUGxhdGZvcm0oUGxhdGZvcm0gb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZVBsYXRmb3JtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlRXh0ZXJuYWxMaWJyYXJ5KEV4dGVybmFsTGlicmFyeSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlRXh0ZXJuYWxMaWJyYXJ5QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlUm9ib3RpY01pZGRsZXdhcmUoUm9ib3RpY01pZGRsZXdhcmUgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZVJvYm90aWNNaWRkbGV3YXJlQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlUm9ib3RpY1NpbXVsYXRvcihSb2JvdGljU2ltdWxhdG9yIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVSb2JvdGljU2ltdWxhdG9yQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlQ3ljYWJUSyhDeWNhYlRLIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVDeWNhYlRLQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlQmxlbmRlck1vcnNlKEJsZW5kZXJNb3JzZSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlQmxlbmRlck1vcnNlQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlT25Qb3J0KE9uUG9ydCBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlT25Qb3J0QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlQWxsb2NhdGUoQWxsb2NhdGUgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUFsbG9jYXRlQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0oSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0gb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlSW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtKEluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlSW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlT2RvbWV0cnlTeXN0ZW0oT2RvbWV0cnlTeXN0ZW0gb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZU9kb21ldHJ5U3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtKEluZnJhUmVkUHJveGltZXRyeVN5c3RlbSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlRGVwbG95bWVudFBsYW4oRGVwbG95bWVudFBsYW4gb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZURlcGxveW1lbnRQbGFuQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlR3lyb3Njb3BlKEd5cm9zY29wZSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlR3lyb3Njb3BlQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlT25WYXJpYWJsZShPblZhcmlhYmxlIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVPblZhcmlhYmxlQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlQ2hhc3NpcyhDaGFzc2lzIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVDaGFzc2lzQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlU3VwcG9ydGluZ1N0cnVjdHVyZShTdXBwb3J0aW5nU3RydWN0dXJlIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVTdXBwb3J0aW5nU3RydWN0dXJlQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlTWVjaGFuaWNhbExpbmthZ2UoTWVjaGFuaWNhbExpbmthZ2Ugb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZU1lY2hhbmljYWxMaW5rYWdlQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlTGVnKExlZyBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlTGVnQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlTG9jb21vdGlvbkhhcmR3YXJlKExvY29tb3Rpb25IYXJkd2FyZSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlTG9jb21vdGlvbkhhcmR3YXJlQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlQWN0dWF0b3JIYXJkd2FyZShBY3R1YXRvckhhcmR3YXJlIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVBY3R1YXRvckhhcmR3YXJlQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlTW9iaWxlUm9ib3QoTW9iaWxlUm9ib3Qgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZU1vYmlsZVJvYm90QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlTWFuaXB1bGF0b3IoTWFuaXB1bGF0b3Igb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZU1hbmlwdWxhdG9yQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlUGlsb3RlZFN5c3RlbShQaWxvdGVkU3lzdGVtIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVQaWxvdGVkU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlUG93ZXJIYXJkd2FyZShQb3dlckhhcmR3YXJlIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVQb3dlckhhcmR3YXJlQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlU2Vuc29ySGFyZHdhcmUoU2Vuc29ySGFyZHdhcmUgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZVNlbnNvckhhcmR3YXJlQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlR3Jhc3BpbmdIYXJkd2FyZShHcmFzcGluZ0hhcmR3YXJlIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVHcmFzcGluZ0hhcmR3YXJlQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlU3RlZXJlZFdoZWVsSGFyZHdhcmUoU3RlZXJlZFdoZWVsSGFyZHdhcmUgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZVN0ZWVyZWRXaGVlbEhhcmR3YXJlQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlQXJtKEFybSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlQXJtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlTGVnU3lzdGVtKExlZ1N5c3RlbSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlTGVnU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlR3Jhc3BpbmdTeXN0ZW0oR3Jhc3BpbmdTeXN0ZW0gb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUdyYXNwaW5nU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlV2VhcG9uU3lzdGVtKFdlYXBvblN5c3RlbSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlV2VhcG9uU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlTWFuTWFjaGluZUludGVyZmFjZVN5c3RlbShNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlQ2xvc2VkTG9vcENvbnRyb2xTeXN0ZW0oQ2xvc2VkTG9vcENvbnRyb2xTeXN0ZW0gb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUNsb3NlZExvb3BDb250cm9sU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlT3Blbkxvb3BDb250cm9sU3lzdGVtKE9wZW5Mb29wQ29udHJvbFN5c3RlbSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlT3Blbkxvb3BDb250cm9sU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlUm9ib3RpY0hlYWQoUm9ib3RpY0hlYWQgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZVJvYm90aWNIZWFkQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0oTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0gb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZU5hdmlnYXRpb25Db21tYW5kU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlSm95c3RpY05hdmlnYXRpb25TeXN0ZW0oSm95c3RpY05hdmlnYXRpb25TeXN0ZW0gb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBkZWZhdWx0Q2FzZShFT2JqZWN0IG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVFT2JqZWN0QWRhcHRlcigpOworCQkJfQorCQl9OworCisJLyoqCisJICogQ3JlYXRlcyBhbiBhZGFwdGVyIGZvciB0aGUgPGNvZGU+dGFyZ2V0PC9jb2RlPi4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB0YXJnZXQgdGhlIG9iamVjdCB0byBhZGFwdC4KKwkgKiBAcmV0dXJuIHRoZSBhZGFwdGVyIGZvciB0aGUgPGNvZGU+dGFyZ2V0PC9jb2RlPi4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlQWRhcHRlcihOb3RpZmllciB0YXJnZXQpIHsKKwkJcmV0dXJuIG1vZGVsU3dpdGNoLmRvU3dpdGNoKChFT2JqZWN0KXRhcmdldCk7CisJfQorCisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5UcmFuc2l0aW9uIDxlbT5UcmFuc2l0aW9uPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5UcmFuc2l0aW9uCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVRyYW5zaXRpb25BZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG0gPGVtPkFsZ29yaXRobTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUFsZ29yaXRobUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0YXRlIDxlbT5TdGF0ZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RhdGUKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlU3RhdGVBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRlZEpvaW50IDxlbT5BY3R1YXRlZCBKb2ludDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWN0dWF0ZWRKb2ludAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVBY3R1YXRlZEpvaW50QWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSm9pbnQgPGVtPkpvaW50PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Kb2ludAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVKb2ludEFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNvbXBsZXRlQm9uZGluZyA8ZW0+Q29tcGxldGUgQm9uZGluZzwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ29tcGxldGVCb25kaW5nCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUNvbXBsZXRlQm9uZGluZ0FkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90IDxlbT5Sb2JvdDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3QKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlUm9ib3RBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0gPGVtPlN5c3RlbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVN5c3RlbUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFnZW50IDxlbT5BZ2VudDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWdlbnQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlQWdlbnRBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaHlzaWNhbE9iamVjdCA8ZW0+UGh5c2ljYWwgT2JqZWN0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaHlzaWNhbE9iamVjdAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVQaHlzaWNhbE9iamVjdEFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkVudmlyb25tZW50IDxlbT5FbnZpcm9ubWVudDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRW52aXJvbm1lbnQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlRW52aXJvbm1lbnRBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlIDxlbT5TdXJmYWNlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVN1cmZhY2VBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EYXRhRmxvd1BvcnQgPGVtPkRhdGEgRmxvdyBQb3J0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EYXRhRmxvd1BvcnQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlRGF0YUZsb3dQb3J0QWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG9ydCA8ZW0+UG9ydDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG9ydAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVQb3J0QWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2VydmljZVBvcnQgPGVtPlNlcnZpY2UgUG9ydDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2VydmljZVBvcnQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlU2VydmljZVBvcnRBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRvclN5c3RlbSA8ZW0+QWN0dWF0b3IgU3lzdGVtPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRvclN5c3RlbQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVBY3R1YXRvclN5c3RlbUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTeXN0ZW0gPGVtPlJvYm90aWMgU3lzdGVtPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljU3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVJvYm90aWNTeXN0ZW1BZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DeWJlclBoeXNpY2FsU3lzdGVtIDxlbT5DeWJlciBQaHlzaWNhbCBTeXN0ZW08L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkN5YmVyUGh5c2ljYWxTeXN0ZW0KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlQ3liZXJQaHlzaWNhbFN5c3RlbUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvclN5c3RlbSA8ZW0+U2Vuc29yIFN5c3RlbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2Vuc29yU3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVNlbnNvclN5c3RlbUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkhhcmR3YXJlIDxlbT5IYXJkd2FyZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSGFyZHdhcmUKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlSGFyZHdhcmVBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Tb2Z0d2FyZSA8ZW0+U29mdHdhcmU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNvZnR3YXJlCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVNvZnR3YXJlQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRW5naW5lU3lzdGVtIDxlbT5FbmdpbmUgU3lzdGVtPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FbmdpbmVTeXN0ZW0KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlRW5naW5lU3lzdGVtQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtIDxlbT5TdGVlcmVkIFdoZWVsIFN5c3RlbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVN0ZWVyZWRXaGVlbFN5c3RlbUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxvY29tb3Rpb25TeXN0ZW0gPGVtPkxvY29tb3Rpb24gU3lzdGVtPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Mb2NvbW90aW9uU3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUxvY29tb3Rpb25TeXN0ZW1BZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5JbWFnZVNlbnNvclN5c3RlbSA8ZW0+SW1hZ2UgU2Vuc29yIFN5c3RlbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSW1hZ2VTZW5zb3JTeXN0ZW0KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlSW1hZ2VTZW5zb3JTeXN0ZW1BZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DYW1lcmFTeXN0ZW0gPGVtPkNhbWVyYSBTeXN0ZW08L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNhbWVyYVN5c3RlbQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVDYW1lcmFTeXN0ZW1BZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0gPGVtPk9iamVjdCBEZXRlY3Rpb24gU2Vuc29yIFN5c3RlbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZU9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtIDxlbT5PYmplY3QgVHJhY2tpbmcgU2Vuc29yIFN5c3RlbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlT2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW1BZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MaWRhclN5c3RlbSA8ZW0+TGlkYXIgU3lzdGVtPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MaWRhclN5c3RlbQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVMaWRhclN5c3RlbUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxvY2FsaXphdGlvblNlbnNvclN5c3RlbSA8ZW0+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxvY2FsaXphdGlvblNlbnNvclN5c3RlbQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW1BZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5HUFNTeXN0ZW0gPGVtPkdQUyBTeXN0ZW08L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkdQU1N5c3RlbQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVHUFNTeXN0ZW1BZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BbGdvcml0aG1MaWJyYXJ5IDxlbT5BbGdvcml0aG0gTGlicmFyeTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtTGlicmFyeQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVBbGdvcml0aG1MaWJyYXJ5QWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2Vuc29yRHJpdmVyIDxlbT5TZW5zb3IgRHJpdmVyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TZW5zb3JEcml2ZXIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlU2Vuc29yRHJpdmVyQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQnVpbGRpbmcgPGVtPkJ1aWxkaW5nPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5CdWlsZGluZworCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVCdWlsZGluZ0FkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBsYW5ldCA8ZW0+UGxhbmV0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QbGFuZXQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlUGxhbmV0QWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGFuZFN1cmZhY2UgPGVtPkxhbmQgU3VyZmFjZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGFuZFN1cmZhY2UKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlTGFuZFN1cmZhY2VBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Hcm91bmQgPGVtPkdyb3VuZDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuR3JvdW5kCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUdyb3VuZEFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkZsb29yIDxlbT5GbG9vcjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRmxvb3IKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlRmxvb3JBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5XYXRlclN1cmZhY2UgPGVtPldhdGVyIFN1cmZhY2U8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLldhdGVyU3VyZmFjZQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVXYXRlclN1cmZhY2VBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5IdW1hbiA8ZW0+SHVtYW48L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkh1bWFuCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUh1bWFuQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGVkZXN0cmlhbiA8ZW0+UGVkZXN0cmlhbjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGVkZXN0cmlhbgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVQZWRlc3RyaWFuQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RhaXJzIDxlbT5TdGFpcnM8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0YWlycworCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVTdGFpcnNBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QbGF0Zm9ybSA8ZW0+UGxhdGZvcm08L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBsYXRmb3JtCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVBsYXRmb3JtQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuRXh0ZXJuYWxMaWJyYXJ5IDxlbT5FeHRlcm5hbCBMaWJyYXJ5PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FeHRlcm5hbExpYnJhcnkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlRXh0ZXJuYWxMaWJyYXJ5QWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmUgPGVtPlJvYm90aWMgTWlkZGxld2FyZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmUKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlUm9ib3RpY01pZGRsZXdhcmVBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljU2ltdWxhdG9yIDxlbT5Sb2JvdGljIFNpbXVsYXRvcjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY1NpbXVsYXRvcgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVSb2JvdGljU2ltdWxhdG9yQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ3ljYWJUSyA8ZW0+Q3ljYWIgVEs8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkN5Y2FiVEsKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlQ3ljYWJUS0FkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkJsZW5kZXJNb3JzZSA8ZW0+QmxlbmRlciBNb3JzZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQmxlbmRlck1vcnNlCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUJsZW5kZXJNb3JzZUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9uUG9ydCA8ZW0+T24gUG9ydDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT25Qb3J0CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZU9uUG9ydEFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsbG9jYXRlIDxlbT5BbGxvY2F0ZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxsb2NhdGUKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlQWxsb2NhdGVBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5JbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbSA8ZW0+SW5lcnRpYWwgTWVhc3VyZW1lbnQgVW5pdCBTeXN0ZW08L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtIDxlbT5JbmVydGlhbCBOYXZpZ2F0aW9uIFN5c3RlbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9kb21ldHJ5U3lzdGVtIDxlbT5PZG9tZXRyeSBTeXN0ZW08L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9kb21ldHJ5U3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZU9kb21ldHJ5U3lzdGVtQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtIDxlbT5JbmZyYSBSZWQgUHJveGltZXRyeSBTeXN0ZW08L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkluZnJhUmVkUHJveGltZXRyeVN5c3RlbQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVJbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW1BZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EZXBsb3ltZW50UGxhbiA8ZW0+RGVwbG95bWVudCBQbGFuPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EZXBsb3ltZW50UGxhbgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVEZXBsb3ltZW50UGxhbkFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkd5cm9zY29wZSA8ZW0+R3lyb3Njb3BlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5HeXJvc2NvcGUKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlR3lyb3Njb3BlQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT25WYXJpYWJsZSA8ZW0+T24gVmFyaWFibGU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9uVmFyaWFibGUKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlT25WYXJpYWJsZUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNoYXNzaXMgPGVtPkNoYXNzaXM8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNoYXNzaXMKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlQ2hhc3Npc0FkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN1cHBvcnRpbmdTdHJ1Y3R1cmUgPGVtPlN1cHBvcnRpbmcgU3RydWN0dXJlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXBwb3J0aW5nU3RydWN0dXJlCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVN1cHBvcnRpbmdTdHJ1Y3R1cmVBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5NZWNoYW5pY2FsTGlua2FnZSA8ZW0+TWVjaGFuaWNhbCBMaW5rYWdlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5NZWNoYW5pY2FsTGlua2FnZQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVNZWNoYW5pY2FsTGlua2FnZUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxlZyA8ZW0+TGVnPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MZWcKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlTGVnQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTG9jb21vdGlvbkhhcmR3YXJlIDxlbT5Mb2NvbW90aW9uIEhhcmR3YXJlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Mb2NvbW90aW9uSGFyZHdhcmUKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlTG9jb21vdGlvbkhhcmR3YXJlQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWN0dWF0b3JIYXJkd2FyZSA8ZW0+QWN0dWF0b3IgSGFyZHdhcmU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFjdHVhdG9ySGFyZHdhcmUKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlQWN0dWF0b3JIYXJkd2FyZUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk1vYmlsZVJvYm90IDxlbT5Nb2JpbGUgUm9ib3Q8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk1vYmlsZVJvYm90CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZU1vYmlsZVJvYm90QWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTWFuaXB1bGF0b3IgPGVtPk1hbmlwdWxhdG9yPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5NYW5pcHVsYXRvcgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVNYW5pcHVsYXRvckFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlBpbG90ZWRTeXN0ZW0gPGVtPlBpbG90ZWQgU3lzdGVtPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaWxvdGVkU3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVBpbG90ZWRTeXN0ZW1BZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Qb3dlckhhcmR3YXJlIDxlbT5Qb3dlciBIYXJkd2FyZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG93ZXJIYXJkd2FyZQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVQb3dlckhhcmR3YXJlQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2Vuc29ySGFyZHdhcmUgPGVtPlNlbnNvciBIYXJkd2FyZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2Vuc29ySGFyZHdhcmUKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlU2Vuc29ySGFyZHdhcmVBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5HcmFzcGluZ0hhcmR3YXJlIDxlbT5HcmFzcGluZyBIYXJkd2FyZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuR3Jhc3BpbmdIYXJkd2FyZQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVHcmFzcGluZ0hhcmR3YXJlQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsSGFyZHdhcmUgPGVtPlN0ZWVyZWQgV2hlZWwgSGFyZHdhcmU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0ZWVyZWRXaGVlbEhhcmR3YXJlCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVN0ZWVyZWRXaGVlbEhhcmR3YXJlQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQXJtIDxlbT5Bcm08L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFybQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVBcm1BZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MZWdTeXN0ZW0gPGVtPkxlZyBTeXN0ZW08L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxlZ1N5c3RlbQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVMZWdTeXN0ZW1BZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5HcmFzcGluZ1N5c3RlbSA8ZW0+R3Jhc3BpbmcgU3lzdGVtPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5HcmFzcGluZ1N5c3RlbQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVHcmFzcGluZ1N5c3RlbUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLldlYXBvblN5c3RlbSA8ZW0+V2VhcG9uIFN5c3RlbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuV2VhcG9uU3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVdlYXBvblN5c3RlbUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0gPGVtPk1hbiBNYWNoaW5lIEludGVyZmFjZSBTeXN0ZW08L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlTWFuTWFjaGluZUludGVyZmFjZVN5c3RlbUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkNsb3NlZExvb3BDb250cm9sU3lzdGVtIDxlbT5DbG9zZWQgTG9vcCBDb250cm9sIFN5c3RlbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2xvc2VkTG9vcENvbnRyb2xTeXN0ZW0KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlQ2xvc2VkTG9vcENvbnRyb2xTeXN0ZW1BZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PcGVuTG9vcENvbnRyb2xTeXN0ZW0gPGVtPk9wZW4gTG9vcCBDb250cm9sIFN5c3RlbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT3Blbkxvb3BDb250cm9sU3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZU9wZW5Mb29wQ29udHJvbFN5c3RlbUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNIZWFkIDxlbT5Sb2JvdGljIEhlYWQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNIZWFkCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVJvYm90aWNIZWFkQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0gPGVtPk5hdmlnYXRpb24gQ29tbWFuZCBTeXN0ZW08L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk5hdmlnYXRpb25Db21tYW5kU3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZU5hdmlnYXRpb25Db21tYW5kU3lzdGVtQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSm95c3RpY05hdmlnYXRpb25TeXN0ZW0gPGVtPkpveXN0aWMgTmF2aWdhdGlvbiBTeXN0ZW08L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUpveXN0aWNOYXZpZ2F0aW9uU3lzdGVtQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciB0aGUgZGVmYXVsdCBjYXNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlRU9iamVjdEFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworfSAvLyBSb2JvdE1MQWRhcHRlckZhY3RvcnkKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFJlc291cmNlRmFjdG9yeUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFJlc291cmNlRmFjdG9yeUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yN2E1MTJjCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MUmVzb3VyY2VGYWN0b3J5SW1wbC5qYXZhCkBAIC0wLDAgKzEsNTIgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLlVSSTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUucmVzb3VyY2UuUmVzb3VyY2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnJlc291cmNlLmltcGwuUmVzb3VyY2VGYWN0b3J5SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUueG1pLlhNTFJlc291cmNlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBUaGUgPGI+UmVzb3VyY2UgRmFjdG9yeTwvYj4gYXNzb2NpYXRlZCB3aXRoIHRoZSBwYWNrYWdlLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwudXRpbC5Sb2JvdE1MUmVzb3VyY2VJbXBsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBSb2JvdE1MUmVzb3VyY2VGYWN0b3J5SW1wbCBleHRlbmRzIFJlc291cmNlRmFjdG9yeUltcGwgeworCS8qKgorCSAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIHJlc291cmNlIGZhY3RvcnkuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUm9ib3RNTFJlc291cmNlRmFjdG9yeUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgcmVzb3VyY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgUmVzb3VyY2UgY3JlYXRlUmVzb3VyY2UoVVJJIHVyaSkgeworCQlYTUxSZXNvdXJjZSByZXN1bHQgPSBuZXcgUm9ib3RNTFJlc291cmNlSW1wbCh1cmkpOworCQlyZXN1bHQuZ2V0RGVmYXVsdFNhdmVPcHRpb25zKCkucHV0KFhNTFJlc291cmNlLk9QVElPTl9FWFRFTkRFRF9NRVRBX0RBVEEsIEJvb2xlYW4uVFJVRSk7CisJCXJlc3VsdC5nZXREZWZhdWx0TG9hZE9wdGlvbnMoKS5wdXQoWE1MUmVzb3VyY2UuT1BUSU9OX0VYVEVOREVEX01FVEFfREFUQSwgQm9vbGVhbi5UUlVFKTsKKworCQlyZXN1bHQuZ2V0RGVmYXVsdFNhdmVPcHRpb25zKCkucHV0KFhNTFJlc291cmNlLk9QVElPTl9TQ0hFTUFfTE9DQVRJT04sIEJvb2xlYW4uVFJVRSk7CisKKwkJcmVzdWx0LmdldERlZmF1bHRMb2FkT3B0aW9ucygpLnB1dChYTUxSZXNvdXJjZS5PUFRJT05fVVNFX0VOQ09ERURfQVRUUklCVVRFX1NUWUxFLCBCb29sZWFuLlRSVUUpOworCQlyZXN1bHQuZ2V0RGVmYXVsdFNhdmVPcHRpb25zKCkucHV0KFhNTFJlc291cmNlLk9QVElPTl9VU0VfRU5DT0RFRF9BVFRSSUJVVEVfU1RZTEUsIEJvb2xlYW4uVFJVRSk7CisKKwkJcmVzdWx0LmdldERlZmF1bHRMb2FkT3B0aW9ucygpLnB1dChYTUxSZXNvdXJjZS5PUFRJT05fVVNFX0xFWElDQUxfSEFORExFUiwgQm9vbGVhbi5UUlVFKTsKKwkJcmV0dXJuIHJlc3VsdDsKKwl9CisKK30gLy8gUm9ib3RNTFJlc291cmNlRmFjdG9yeUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFJlc291cmNlSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MUmVzb3VyY2VJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTQ0OTg3MQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFJlc291cmNlSW1wbC5qYXZhCkBAIC0wLDAgKzEsMzAgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLlVSSTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUueG1pLmltcGwuWE1MUmVzb3VyY2VJbXBsOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBUaGUgPGI+UmVzb3VyY2UgPC9iPiBhc3NvY2lhdGVkIHdpdGggdGhlIHBhY2thZ2UuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC51dGlsLlJvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBSb2JvdE1MUmVzb3VyY2VJbXBsIGV4dGVuZHMgWE1MUmVzb3VyY2VJbXBsIHsKKwkvKioKKwkgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSByZXNvdXJjZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqCisJICogQHBhcmFtIHVyaQorCSAqICAgICAgICAgICAgdGhlIFVSSSBvZiB0aGUgbmV3IHJlc291cmNlLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUm9ib3RNTFJlc291cmNlSW1wbChVUkkgdXJpKSB7CisJCXN1cGVyKHVyaSk7CisJfQorCit9IC8vIFJvYm90TUxSZXNvdXJjZUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MU3dpdGNoLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmM3YjEyYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1ML3V0aWwvUm9ib3RNTFN3aXRjaC5qYXZhCkBAIC0wLDAgKzEsMjAyNyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuU3dpdGNoOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRlZEpvaW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRvckhhcmR3YXJlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5BY3R1YXRvclN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWdlbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFsZ29yaXRobTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxnb3JpdGhtTGlicmFyeTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQWxsb2NhdGU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkFybTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQmxlbmRlck1vcnNlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5CdWlsZGluZzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ2FtZXJhU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DaGFzc2lzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DbG9zZWRMb29wQ29udHJvbFN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuQ29tcGxldGVCb25kaW5nOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DeWJlclBoeXNpY2FsU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5DeWNhYlRLOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5EYXRhRmxvd1BvcnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkRlcGxveW1lbnRQbGFuOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FbmdpbmVTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkVudmlyb25tZW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5FeHRlcm5hbExpYnJhcnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkZsb29yOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5HUFNTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkdyYXNwaW5nSGFyZHdhcmU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkdyYXNwaW5nU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Hcm91bmQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkd5cm9zY29wZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSGFyZHdhcmU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkh1bWFuOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5JbWFnZVNlbnNvclN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Kb2ludDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuSm95c3RpY05hdmlnYXRpb25TeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxhbmRTdXJmYWNlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5MZWc7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxlZ1N5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTGlkYXJTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLkxvY2FsaXphdGlvblNlbnNvclN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTG9jb21vdGlvbkhhcmR3YXJlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Mb2NvbW90aW9uU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5NYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5NYW5pcHVsYXRvcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuTWVjaGFuaWNhbExpbmthZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk1vYmlsZVJvYm90OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5OYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5PYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT2RvbWV0cnlTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLk9uUG9ydDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT25WYXJpYWJsZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuT3Blbkxvb3BDb250cm9sU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QZWRlc3RyaWFuOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QaHlzaWNhbE9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGlsb3RlZFN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUGxhbmV0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5QbGF0Zm9ybTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG9ydDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUG93ZXJIYXJkd2FyZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdGljSGVhZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RpY01pZGRsZXdhcmU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTaW11bGF0b3I7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90aWNTeXN0ZW07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvckRyaXZlcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2Vuc29ySGFyZHdhcmU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNlbnNvclN5c3RlbTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU2VydmljZVBvcnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlNvZnR3YXJlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGFpcnM7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN0YXRlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdGVlcmVkV2hlZWxIYXJkd2FyZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuU3RlZXJlZFdoZWVsU3lzdGVtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXBwb3J0aW5nU3RydWN0dXJlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TdXJmYWNlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5UcmFuc2l0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5XYXRlclN1cmZhY2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLldlYXBvblN5c3RlbTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogVGhlIDxiPlN3aXRjaDwvYj4gZm9yIHRoZSBtb2RlbCdzIGluaGVyaXRhbmNlIGhpZXJhcmNoeS4KKyAqIEl0IHN1cHBvcnRzIHRoZSBjYWxsIHtAbGluayAjZG9Td2l0Y2goRU9iamVjdCkgZG9Td2l0Y2gob2JqZWN0KX0gdG8gaW52b2tlIHRoZSA8Y29kZT5jYXNlWFhYPC9jb2RlPiBtZXRob2QgZm9yIGVhY2ggY2xhc3Mgb2YgdGhlIG1vZGVsLAorICogc3RhcnRpbmcgd2l0aCB0aGUgYWN0dWFsIGNsYXNzIG9mIHRoZSBvYmplY3QKKyAqIGFuZCBwcm9jZWVkaW5nIHVwIHRoZSBpbmhlcml0YW5jZSBoaWVyYXJjaHkKKyAqIHVudGlsIGEgbm9uLW51bGwgcmVzdWx0IGlzIHJldHVybmVkLAorICogd2hpY2ggaXMgdGhlIHJlc3VsdCBvZiB0aGUgc3dpdGNoLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZQorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgUm9ib3RNTFN3aXRjaDxUPiBleHRlbmRzIFN3aXRjaDxUPiB7CisJLyoqCisJICogVGhlIGNhY2hlZCBtb2RlbCBwYWNrYWdlCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBSb2JvdE1MUGFja2FnZSBtb2RlbFBhY2thZ2U7CisKKwkvKioKKwkgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSBzd2l0Y2guCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFJvYm90TUxTd2l0Y2goKSB7CisJCWlmIChtb2RlbFBhY2thZ2UgPT0gbnVsbCkgeworCQkJbW9kZWxQYWNrYWdlID0gUm9ib3RNTFBhY2thZ2UuZUlOU1RBTkNFOworCQl9CisJfQorCisJLyoqCisJICogQ2hlY2tzIHdoZXRoZXIgdGhpcyBpcyBhIHN3aXRjaCBmb3IgdGhlIGdpdmVuIHBhY2thZ2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW1ldGVyIGVQYWNrYWdlIHRoZSBwYWNrYWdlIGluIHF1ZXN0aW9uLgorCSAqIEByZXR1cm4gd2hldGhlciB0aGlzIGlzIGEgc3dpdGNoIGZvciB0aGUgZ2l2ZW4gcGFja2FnZS4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIGJvb2xlYW4gaXNTd2l0Y2hGb3IoRVBhY2thZ2UgZVBhY2thZ2UpIHsKKwkJcmV0dXJuIGVQYWNrYWdlID09IG1vZGVsUGFja2FnZTsKKwl9CisKKwkvKioKKwkgKiBDYWxscyA8Y29kZT5jYXNlWFhYPC9jb2RlPiBmb3IgZWFjaCBjbGFzcyBvZiB0aGUgbW9kZWwgdW50aWwgb25lIHJldHVybnMgYSBub24gbnVsbCByZXN1bHQ7IGl0IHlpZWxkcyB0aGF0IHJlc3VsdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIGZpcnN0IG5vbi1udWxsIHJlc3VsdCByZXR1cm5lZCBieSBhIDxjb2RlPmNhc2VYWFg8L2NvZGU+IGNhbGwuCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBUIGRvU3dpdGNoKGludCBjbGFzc2lmaWVySUQsIEVPYmplY3QgdGhlRU9iamVjdCkgeworCQlzd2l0Y2ggKGNsYXNzaWZpZXJJRCkgeworCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5UUkFOU0lUSU9OOiB7CisJCQkJVHJhbnNpdGlvbiB0cmFuc2l0aW9uID0gKFRyYW5zaXRpb24pdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VUcmFuc2l0aW9uKHRyYW5zaXRpb24pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQUxHT1JJVEhNOiB7CisJCQkJQWxnb3JpdGhtIGFsZ29yaXRobSA9IChBbGdvcml0aG0pdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VBbGdvcml0aG0oYWxnb3JpdGhtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNUQVRFOiB7CisJCQkJU3RhdGUgc3RhdGUgPSAoU3RhdGUpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VTdGF0ZShzdGF0ZSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5BQ1RVQVRFRF9KT0lOVDogeworCQkJCUFjdHVhdGVkSm9pbnQgYWN0dWF0ZWRKb2ludCA9IChBY3R1YXRlZEpvaW50KXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlQWN0dWF0ZWRKb2ludChhY3R1YXRlZEpvaW50KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VKb2ludChhY3R1YXRlZEpvaW50KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkpPSU5UOiB7CisJCQkJSm9pbnQgam9pbnQgPSAoSm9pbnQpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VKb2ludChqb2ludCk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5DT01QTEVURV9CT05ESU5HOiB7CisJCQkJQ29tcGxldGVCb25kaW5nIGNvbXBsZXRlQm9uZGluZyA9IChDb21wbGV0ZUJvbmRpbmcpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VDb21wbGV0ZUJvbmRpbmcoY29tcGxldGVCb25kaW5nKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VKb2ludChjb21wbGV0ZUJvbmRpbmcpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUk9CT1Q6IHsKKwkJCQlSb2JvdCByb2JvdCA9IChSb2JvdCl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZVJvYm90KHJvYm90KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VTeXN0ZW0ocm9ib3QpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1lTVEVNOiB7CisJCQkJb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSBzeXN0ZW0gPSAob3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlN5c3RlbSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZVN5c3RlbShzeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQUdFTlQ6IHsKKwkJCQlBZ2VudCBhZ2VudCA9IChBZ2VudCl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZUFnZW50KGFnZW50KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VQaHlzaWNhbE9iamVjdChhZ2VudCk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5QSFlTSUNBTF9PQkpFQ1Q6IHsKKwkJCQlQaHlzaWNhbE9iamVjdCBwaHlzaWNhbE9iamVjdCA9IChQaHlzaWNhbE9iamVjdCl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZVBoeXNpY2FsT2JqZWN0KHBoeXNpY2FsT2JqZWN0KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkRBVEFfRkxPV19QT1JUOiB7CisJCQkJRGF0YUZsb3dQb3J0IGRhdGFGbG93UG9ydCA9IChEYXRhRmxvd1BvcnQpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VEYXRhRmxvd1BvcnQoZGF0YUZsb3dQb3J0KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VQb3J0KGRhdGFGbG93UG9ydCk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5QT1JUOiB7CisJCQkJUG9ydCBwb3J0ID0gKFBvcnQpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VQb3J0KHBvcnQpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU0VSVklDRV9QT1JUOiB7CisJCQkJU2VydmljZVBvcnQgc2VydmljZVBvcnQgPSAoU2VydmljZVBvcnQpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VTZXJ2aWNlUG9ydChzZXJ2aWNlUG9ydCk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlUG9ydChzZXJ2aWNlUG9ydCk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5BQ1RVQVRPUl9TWVNURU06IHsKKwkJCQlBY3R1YXRvclN5c3RlbSBhY3R1YXRvclN5c3RlbSA9IChBY3R1YXRvclN5c3RlbSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZUFjdHVhdG9yU3lzdGVtKGFjdHVhdG9yU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VSb2JvdGljU3lzdGVtKGFjdHVhdG9yU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VDeWJlclBoeXNpY2FsU3lzdGVtKGFjdHVhdG9yU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VTeXN0ZW0oYWN0dWF0b3JTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19TWVNURU06IHsKKwkJCQlSb2JvdGljU3lzdGVtIHJvYm90aWNTeXN0ZW0gPSAoUm9ib3RpY1N5c3RlbSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZVJvYm90aWNTeXN0ZW0ocm9ib3RpY1N5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlU3lzdGVtKHJvYm90aWNTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ1lCRVJfUEhZU0lDQUxfU1lTVEVNOiB7CisJCQkJQ3liZXJQaHlzaWNhbFN5c3RlbSBjeWJlclBoeXNpY2FsU3lzdGVtID0gKEN5YmVyUGh5c2ljYWxTeXN0ZW0pdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VDeWJlclBoeXNpY2FsU3lzdGVtKGN5YmVyUGh5c2ljYWxTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVN5c3RlbShjeWJlclBoeXNpY2FsU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNFTlNPUl9TWVNURU06IHsKKwkJCQlTZW5zb3JTeXN0ZW0gc2Vuc29yU3lzdGVtID0gKFNlbnNvclN5c3RlbSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZVNlbnNvclN5c3RlbShzZW5zb3JTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVJvYm90aWNTeXN0ZW0oc2Vuc29yU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VDeWJlclBoeXNpY2FsU3lzdGVtKHNlbnNvclN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlU3lzdGVtKHNlbnNvclN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5IQVJEV0FSRTogeworCQkJCUhhcmR3YXJlIGhhcmR3YXJlID0gKEhhcmR3YXJlKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlSGFyZHdhcmUoaGFyZHdhcmUpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVN5c3RlbShoYXJkd2FyZSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TT0ZUV0FSRTogeworCQkJCVNvZnR3YXJlIHNvZnR3YXJlID0gKFNvZnR3YXJlKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlU29mdHdhcmUoc29mdHdhcmUpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVN5c3RlbShzb2Z0d2FyZSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5FTkdJTkVfU1lTVEVNOiB7CisJCQkJRW5naW5lU3lzdGVtIGVuZ2luZVN5c3RlbSA9IChFbmdpbmVTeXN0ZW0pdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VFbmdpbmVTeXN0ZW0oZW5naW5lU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VBY3R1YXRvclN5c3RlbShlbmdpbmVTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVJvYm90aWNTeXN0ZW0oZW5naW5lU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VDeWJlclBoeXNpY2FsU3lzdGVtKGVuZ2luZVN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlU3lzdGVtKGVuZ2luZVN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX1NZU1RFTTogeworCQkJCVN0ZWVyZWRXaGVlbFN5c3RlbSBzdGVlcmVkV2hlZWxTeXN0ZW0gPSAoU3RlZXJlZFdoZWVsU3lzdGVtKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlU3RlZXJlZFdoZWVsU3lzdGVtKHN0ZWVyZWRXaGVlbFN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlTG9jb21vdGlvblN5c3RlbShzdGVlcmVkV2hlZWxTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZUFjdHVhdG9yU3lzdGVtKHN0ZWVyZWRXaGVlbFN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlUm9ib3RpY1N5c3RlbShzdGVlcmVkV2hlZWxTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZUN5YmVyUGh5c2ljYWxTeXN0ZW0oc3RlZXJlZFdoZWVsU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VTeXN0ZW0oc3RlZXJlZFdoZWVsU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkxPQ09NT1RJT05fU1lTVEVNOiB7CisJCQkJTG9jb21vdGlvblN5c3RlbSBsb2NvbW90aW9uU3lzdGVtID0gKExvY29tb3Rpb25TeXN0ZW0pdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VMb2NvbW90aW9uU3lzdGVtKGxvY29tb3Rpb25TeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZUFjdHVhdG9yU3lzdGVtKGxvY29tb3Rpb25TeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVJvYm90aWNTeXN0ZW0obG9jb21vdGlvblN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlQ3liZXJQaHlzaWNhbFN5c3RlbShsb2NvbW90aW9uU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VTeXN0ZW0obG9jb21vdGlvblN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5JTUFHRV9TRU5TT1JfU1lTVEVNOiB7CisJCQkJSW1hZ2VTZW5zb3JTeXN0ZW0gaW1hZ2VTZW5zb3JTeXN0ZW0gPSAoSW1hZ2VTZW5zb3JTeXN0ZW0pdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VJbWFnZVNlbnNvclN5c3RlbShpbWFnZVNlbnNvclN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlU2Vuc29yU3lzdGVtKGltYWdlU2Vuc29yU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VSb2JvdGljU3lzdGVtKGltYWdlU2Vuc29yU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VDeWJlclBoeXNpY2FsU3lzdGVtKGltYWdlU2Vuc29yU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VTeXN0ZW0oaW1hZ2VTZW5zb3JTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ0FNRVJBX1NZU1RFTTogeworCQkJCUNhbWVyYVN5c3RlbSBjYW1lcmFTeXN0ZW0gPSAoQ2FtZXJhU3lzdGVtKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlQ2FtZXJhU3lzdGVtKGNhbWVyYVN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlSW1hZ2VTZW5zb3JTeXN0ZW0oY2FtZXJhU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VTZW5zb3JTeXN0ZW0oY2FtZXJhU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VSb2JvdGljU3lzdGVtKGNhbWVyYVN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlQ3liZXJQaHlzaWNhbFN5c3RlbShjYW1lcmFTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVN5c3RlbShjYW1lcmFTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuT0JKRUNUX0RFVEVDVElPTl9TRU5TT1JfU1lTVEVNOiB7CisJCQkJT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtIG9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbSA9IChPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0pdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0ob2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VTZW5zb3JTeXN0ZW0ob2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VSb2JvdGljU3lzdGVtKG9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlQ3liZXJQaHlzaWNhbFN5c3RlbShvYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVN5c3RlbShvYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuT0JKRUNUX1RSQUNLSU5HX1NFTlNPUl9TWVNURU06IHsKKwkJCQlPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSBvYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSA9IChPYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtKG9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VTZW5zb3JTeXN0ZW0ob2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVJvYm90aWNTeXN0ZW0ob2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZUN5YmVyUGh5c2ljYWxTeXN0ZW0ob2JqZWN0VHJhY2tpbmdTZW5zb3JTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVN5c3RlbShvYmplY3RUcmFja2luZ1NlbnNvclN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MSURBUl9TWVNURU06IHsKKwkJCQlMaWRhclN5c3RlbSBsaWRhclN5c3RlbSA9IChMaWRhclN5c3RlbSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZUxpZGFyU3lzdGVtKGxpZGFyU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VPYmplY3REZXRlY3Rpb25TZW5zb3JTeXN0ZW0obGlkYXJTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtKGxpZGFyU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VTZW5zb3JTeXN0ZW0obGlkYXJTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVJvYm90aWNTeXN0ZW0obGlkYXJTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZUN5YmVyUGh5c2ljYWxTeXN0ZW0obGlkYXJTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVN5c3RlbShsaWRhclN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MT0NBTElaQVRJT05fU0VOU09SX1NZU1RFTTogeworCQkJCUxvY2FsaXphdGlvblNlbnNvclN5c3RlbSBsb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0gPSAoTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlTG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtKGxvY2FsaXphdGlvblNlbnNvclN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlU2Vuc29yU3lzdGVtKGxvY2FsaXphdGlvblNlbnNvclN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlUm9ib3RpY1N5c3RlbShsb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZUN5YmVyUGh5c2ljYWxTeXN0ZW0obG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VTeXN0ZW0obG9jYWxpemF0aW9uU2Vuc29yU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkdQU19TWVNURU06IHsKKwkJCQlHUFNTeXN0ZW0gZ3BzU3lzdGVtID0gKEdQU1N5c3RlbSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZUdQU1N5c3RlbShncHNTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZUxvY2FsaXphdGlvblNlbnNvclN5c3RlbShncHNTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVNlbnNvclN5c3RlbShncHNTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVJvYm90aWNTeXN0ZW0oZ3BzU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VDeWJlclBoeXNpY2FsU3lzdGVtKGdwc1N5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlU3lzdGVtKGdwc1N5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5BTEdPUklUSE1fTElCUkFSWTogeworCQkJCUFsZ29yaXRobUxpYnJhcnkgYWxnb3JpdGhtTGlicmFyeSA9IChBbGdvcml0aG1MaWJyYXJ5KXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlQWxnb3JpdGhtTGlicmFyeShhbGdvcml0aG1MaWJyYXJ5KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNFTlNPUl9EUklWRVI6IHsKKwkJCQlTZW5zb3JEcml2ZXIgc2Vuc29yRHJpdmVyID0gKFNlbnNvckRyaXZlcil0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZVNlbnNvckRyaXZlcihzZW5zb3JEcml2ZXIpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVNvZnR3YXJlKHNlbnNvckRyaXZlcik7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlU3lzdGVtKHNlbnNvckRyaXZlcik7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5FTlZJUk9OTUVOVDogeworCQkJCUVudmlyb25tZW50IGVudmlyb25tZW50ID0gKEVudmlyb25tZW50KXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlRW52aXJvbm1lbnQoZW52aXJvbm1lbnQpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQlVJTERJTkc6IHsKKwkJCQlCdWlsZGluZyBidWlsZGluZyA9IChCdWlsZGluZyl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZUJ1aWxkaW5nKGJ1aWxkaW5nKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VQaHlzaWNhbE9iamVjdChidWlsZGluZyk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVVJGQUNFOiB7CisJCQkJU3VyZmFjZSBzdXJmYWNlID0gKFN1cmZhY2UpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VTdXJmYWNlKHN1cmZhY2UpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVBoeXNpY2FsT2JqZWN0KHN1cmZhY2UpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUExBTkVUOiB7CisJCQkJUGxhbmV0IHBsYW5ldCA9IChQbGFuZXQpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VQbGFuZXQocGxhbmV0KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VQaHlzaWNhbE9iamVjdChwbGFuZXQpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuTEFORF9TVVJGQUNFOiB7CisJCQkJTGFuZFN1cmZhY2UgbGFuZFN1cmZhY2UgPSAoTGFuZFN1cmZhY2UpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VMYW5kU3VyZmFjZShsYW5kU3VyZmFjZSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlR3JvdW5kKGxhbmRTdXJmYWNlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VTdXJmYWNlKGxhbmRTdXJmYWNlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VQaHlzaWNhbE9iamVjdChsYW5kU3VyZmFjZSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5HUk9VTkQ6IHsKKwkJCQlHcm91bmQgZ3JvdW5kID0gKEdyb3VuZCl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZUdyb3VuZChncm91bmQpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVN1cmZhY2UoZ3JvdW5kKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VQaHlzaWNhbE9iamVjdChncm91bmQpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuRkxPT1I6IHsKKwkJCQlGbG9vciBmbG9vciA9IChGbG9vcil0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZUZsb29yKGZsb29yKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VHcm91bmQoZmxvb3IpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVN1cmZhY2UoZmxvb3IpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVBoeXNpY2FsT2JqZWN0KGZsb29yKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLldBVEVSX1NVUkZBQ0U6IHsKKwkJCQlXYXRlclN1cmZhY2Ugd2F0ZXJTdXJmYWNlID0gKFdhdGVyU3VyZmFjZSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZVdhdGVyU3VyZmFjZSh3YXRlclN1cmZhY2UpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVN1cmZhY2Uod2F0ZXJTdXJmYWNlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VQaHlzaWNhbE9iamVjdCh3YXRlclN1cmZhY2UpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuSFVNQU46IHsKKwkJCQlIdW1hbiBodW1hbiA9IChIdW1hbil0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZUh1bWFuKGh1bWFuKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VBZ2VudChodW1hbik7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlUGh5c2ljYWxPYmplY3QoaHVtYW4pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUEVERVNUUklBTjogeworCQkJCVBlZGVzdHJpYW4gcGVkZXN0cmlhbiA9IChQZWRlc3RyaWFuKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlUGVkZXN0cmlhbihwZWRlc3RyaWFuKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VIdW1hbihwZWRlc3RyaWFuKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VBZ2VudChwZWRlc3RyaWFuKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VQaHlzaWNhbE9iamVjdChwZWRlc3RyaWFuKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNUQUlSUzogeworCQkJCVN0YWlycyBzdGFpcnMgPSAoU3RhaXJzKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlU3RhaXJzKHN0YWlycyk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlR3JvdW5kKHN0YWlycyk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlU3VyZmFjZShzdGFpcnMpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVBoeXNpY2FsT2JqZWN0KHN0YWlycyk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5QTEFURk9STTogeworCQkJCVBsYXRmb3JtIHBsYXRmb3JtID0gKFBsYXRmb3JtKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlUGxhdGZvcm0ocGxhdGZvcm0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVN5c3RlbShwbGF0Zm9ybSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5FWFRFUk5BTF9MSUJSQVJZOiB7CisJCQkJRXh0ZXJuYWxMaWJyYXJ5IGV4dGVybmFsTGlicmFyeSA9IChFeHRlcm5hbExpYnJhcnkpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VFeHRlcm5hbExpYnJhcnkoZXh0ZXJuYWxMaWJyYXJ5KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlJPQk9USUNfTUlERExFV0FSRTogeworCQkJCVJvYm90aWNNaWRkbGV3YXJlIHJvYm90aWNNaWRkbGV3YXJlID0gKFJvYm90aWNNaWRkbGV3YXJlKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlUm9ib3RpY01pZGRsZXdhcmUocm9ib3RpY01pZGRsZXdhcmUpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVBsYXRmb3JtKHJvYm90aWNNaWRkbGV3YXJlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VTeXN0ZW0ocm9ib3RpY01pZGRsZXdhcmUpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuUk9CT1RJQ19TSU1VTEFUT1I6IHsKKwkJCQlSb2JvdGljU2ltdWxhdG9yIHJvYm90aWNTaW11bGF0b3IgPSAoUm9ib3RpY1NpbXVsYXRvcil0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZVJvYm90aWNTaW11bGF0b3Iocm9ib3RpY1NpbXVsYXRvcik7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlUGxhdGZvcm0ocm9ib3RpY1NpbXVsYXRvcik7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlU3lzdGVtKHJvYm90aWNTaW11bGF0b3IpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ1lDQUJfVEs6IHsKKwkJCQlDeWNhYlRLIGN5Y2FiVEsgPSAoQ3ljYWJUSyl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZUN5Y2FiVEsoY3ljYWJUSyk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlUm9ib3RpY1NpbXVsYXRvcihjeWNhYlRLKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VQbGF0Zm9ybShjeWNhYlRLKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VTeXN0ZW0oY3ljYWJUSyk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5CTEVOREVSX01PUlNFOiB7CisJCQkJQmxlbmRlck1vcnNlIGJsZW5kZXJNb3JzZSA9IChCbGVuZGVyTW9yc2UpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VCbGVuZGVyTW9yc2UoYmxlbmRlck1vcnNlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VSb2JvdGljU2ltdWxhdG9yKGJsZW5kZXJNb3JzZSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlUGxhdGZvcm0oYmxlbmRlck1vcnNlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VTeXN0ZW0oYmxlbmRlck1vcnNlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLk9OX1BPUlQ6IHsKKwkJCQlPblBvcnQgb25Qb3J0ID0gKE9uUG9ydCl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZU9uUG9ydChvblBvcnQpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQUxMT0NBVEU6IHsKKwkJCQlBbGxvY2F0ZSBhbGxvY2F0ZSA9IChBbGxvY2F0ZSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZUFsbG9jYXRlKGFsbG9jYXRlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLklORVJUSUFMX01FQVNVUkVNRU5UX1VOSVRfU1lTVEVNOiB7CisJCQkJSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0gaW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0gPSAoSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0pdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VJbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbShpbmVydGlhbE1lYXN1cmVtZW50VW5pdFN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlU2Vuc29yU3lzdGVtKGluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VSb2JvdGljU3lzdGVtKGluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VDeWJlclBoeXNpY2FsU3lzdGVtKGluZXJ0aWFsTWVhc3VyZW1lbnRVbml0U3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VTeXN0ZW0oaW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuSU5FUlRJQUxfTkFWSUdBVElPTl9TWVNURU06IHsKKwkJCQlJbmVydGlhbE5hdmlnYXRpb25TeXN0ZW0gaW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtID0gKEluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZUluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbShpbmVydGlhbE5hdmlnYXRpb25TeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZUdQU1N5c3RlbShpbmVydGlhbE5hdmlnYXRpb25TeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZUxvY2FsaXphdGlvblNlbnNvclN5c3RlbShpbmVydGlhbE5hdmlnYXRpb25TeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVNlbnNvclN5c3RlbShpbmVydGlhbE5hdmlnYXRpb25TeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVJvYm90aWNTeXN0ZW0oaW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VDeWJlclBoeXNpY2FsU3lzdGVtKGluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlU3lzdGVtKGluZXJ0aWFsTmF2aWdhdGlvblN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5PRE9NRVRSWV9TWVNURU06IHsKKwkJCQlPZG9tZXRyeVN5c3RlbSBvZG9tZXRyeVN5c3RlbSA9IChPZG9tZXRyeVN5c3RlbSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZU9kb21ldHJ5U3lzdGVtKG9kb21ldHJ5U3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0ob2RvbWV0cnlTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVNlbnNvclN5c3RlbShvZG9tZXRyeVN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlUm9ib3RpY1N5c3RlbShvZG9tZXRyeVN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlQ3liZXJQaHlzaWNhbFN5c3RlbShvZG9tZXRyeVN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlU3lzdGVtKG9kb21ldHJ5U3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLklORlJBX1JFRF9QUk9YSU1FVFJZX1NZU1RFTTogeworCQkJCUluZnJhUmVkUHJveGltZXRyeVN5c3RlbSBpbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW0gPSAoSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtKGluZnJhUmVkUHJveGltZXRyeVN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtKGluZnJhUmVkUHJveGltZXRyeVN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlU2Vuc29yU3lzdGVtKGluZnJhUmVkUHJveGltZXRyeVN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlUm9ib3RpY1N5c3RlbShpbmZyYVJlZFByb3hpbWV0cnlTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZUN5YmVyUGh5c2ljYWxTeXN0ZW0oaW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VTeXN0ZW0oaW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkRFUExPWU1FTlRfUExBTjogeworCQkJCURlcGxveW1lbnRQbGFuIGRlcGxveW1lbnRQbGFuID0gKERlcGxveW1lbnRQbGFuKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlRGVwbG95bWVudFBsYW4oZGVwbG95bWVudFBsYW4pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuR1lST1NDT1BFOiB7CisJCQkJR3lyb3Njb3BlIGd5cm9zY29wZSA9IChHeXJvc2NvcGUpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VHeXJvc2NvcGUoZ3lyb3Njb3BlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VTZW5zb3JTeXN0ZW0oZ3lyb3Njb3BlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VSb2JvdGljU3lzdGVtKGd5cm9zY29wZSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlQ3liZXJQaHlzaWNhbFN5c3RlbShneXJvc2NvcGUpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVN5c3RlbShneXJvc2NvcGUpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuT05fVkFSSUFCTEU6IHsKKwkJCQlPblZhcmlhYmxlIG9uVmFyaWFibGUgPSAoT25WYXJpYWJsZSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZU9uVmFyaWFibGUob25WYXJpYWJsZSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5DSEFTU0lTOiB7CisJCQkJQ2hhc3NpcyBjaGFzc2lzID0gKENoYXNzaXMpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VDaGFzc2lzKGNoYXNzaXMpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVN1cHBvcnRpbmdTdHJ1Y3R1cmUoY2hhc3Npcyk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlSGFyZHdhcmUoY2hhc3Npcyk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlU3lzdGVtKGNoYXNzaXMpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuU1VQUE9SVElOR19TVFJVQ1RVUkU6IHsKKwkJCQlTdXBwb3J0aW5nU3RydWN0dXJlIHN1cHBvcnRpbmdTdHJ1Y3R1cmUgPSAoU3VwcG9ydGluZ1N0cnVjdHVyZSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZVN1cHBvcnRpbmdTdHJ1Y3R1cmUoc3VwcG9ydGluZ1N0cnVjdHVyZSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlSGFyZHdhcmUoc3VwcG9ydGluZ1N0cnVjdHVyZSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlU3lzdGVtKHN1cHBvcnRpbmdTdHJ1Y3R1cmUpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuTUVDSEFOSUNBTF9MSU5LQUdFOiB7CisJCQkJTWVjaGFuaWNhbExpbmthZ2UgbWVjaGFuaWNhbExpbmthZ2UgPSAoTWVjaGFuaWNhbExpbmthZ2UpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VNZWNoYW5pY2FsTGlua2FnZShtZWNoYW5pY2FsTGlua2FnZSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlSGFyZHdhcmUobWVjaGFuaWNhbExpbmthZ2UpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVN5c3RlbShtZWNoYW5pY2FsTGlua2FnZSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MRUc6IHsKKwkJCQlMZWcgbGVnID0gKExlZyl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZUxlZyhsZWcpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZUxvY29tb3Rpb25IYXJkd2FyZShsZWcpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZU1lY2hhbmljYWxMaW5rYWdlKGxlZyk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlQWN0dWF0b3JIYXJkd2FyZShsZWcpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZUhhcmR3YXJlKGxlZyk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlU3lzdGVtKGxlZyk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MT0NPTU9USU9OX0hBUkRXQVJFOiB7CisJCQkJTG9jb21vdGlvbkhhcmR3YXJlIGxvY29tb3Rpb25IYXJkd2FyZSA9IChMb2NvbW90aW9uSGFyZHdhcmUpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VMb2NvbW90aW9uSGFyZHdhcmUobG9jb21vdGlvbkhhcmR3YXJlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VBY3R1YXRvckhhcmR3YXJlKGxvY29tb3Rpb25IYXJkd2FyZSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlSGFyZHdhcmUobG9jb21vdGlvbkhhcmR3YXJlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VTeXN0ZW0obG9jb21vdGlvbkhhcmR3YXJlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkFDVFVBVE9SX0hBUkRXQVJFOiB7CisJCQkJQWN0dWF0b3JIYXJkd2FyZSBhY3R1YXRvckhhcmR3YXJlID0gKEFjdHVhdG9ySGFyZHdhcmUpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VBY3R1YXRvckhhcmR3YXJlKGFjdHVhdG9ySGFyZHdhcmUpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZUhhcmR3YXJlKGFjdHVhdG9ySGFyZHdhcmUpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVN5c3RlbShhY3R1YXRvckhhcmR3YXJlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLk1PQklMRV9ST0JPVDogeworCQkJCU1vYmlsZVJvYm90IG1vYmlsZVJvYm90ID0gKE1vYmlsZVJvYm90KXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlTW9iaWxlUm9ib3QobW9iaWxlUm9ib3QpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVJvYm90KG1vYmlsZVJvYm90KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VTeXN0ZW0obW9iaWxlUm9ib3QpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuTUFOSVBVTEFUT1I6IHsKKwkJCQlNYW5pcHVsYXRvciBtYW5pcHVsYXRvciA9IChNYW5pcHVsYXRvcil0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZU1hbmlwdWxhdG9yKG1hbmlwdWxhdG9yKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VSb2JvdChtYW5pcHVsYXRvcik7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlU3lzdGVtKG1hbmlwdWxhdG9yKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlBJTE9URURfU1lTVEVNOiB7CisJCQkJUGlsb3RlZFN5c3RlbSBwaWxvdGVkU3lzdGVtID0gKFBpbG90ZWRTeXN0ZW0pdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VQaWxvdGVkU3lzdGVtKHBpbG90ZWRTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVJvYm90KHBpbG90ZWRTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVN5c3RlbShwaWxvdGVkU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlBPV0VSX0hBUkRXQVJFOiB7CisJCQkJUG93ZXJIYXJkd2FyZSBwb3dlckhhcmR3YXJlID0gKFBvd2VySGFyZHdhcmUpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VQb3dlckhhcmR3YXJlKHBvd2VySGFyZHdhcmUpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZUhhcmR3YXJlKHBvd2VySGFyZHdhcmUpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVN5c3RlbShwb3dlckhhcmR3YXJlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLlNFTlNPUl9IQVJEV0FSRTogeworCQkJCVNlbnNvckhhcmR3YXJlIHNlbnNvckhhcmR3YXJlID0gKFNlbnNvckhhcmR3YXJlKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlU2Vuc29ySGFyZHdhcmUoc2Vuc29ySGFyZHdhcmUpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZUhhcmR3YXJlKHNlbnNvckhhcmR3YXJlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VTeXN0ZW0oc2Vuc29ySGFyZHdhcmUpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuR1JBU1BJTkdfSEFSRFdBUkU6IHsKKwkJCQlHcmFzcGluZ0hhcmR3YXJlIGdyYXNwaW5nSGFyZHdhcmUgPSAoR3Jhc3BpbmdIYXJkd2FyZSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZUdyYXNwaW5nSGFyZHdhcmUoZ3Jhc3BpbmdIYXJkd2FyZSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlQWN0dWF0b3JIYXJkd2FyZShncmFzcGluZ0hhcmR3YXJlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VIYXJkd2FyZShncmFzcGluZ0hhcmR3YXJlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VTeXN0ZW0oZ3Jhc3BpbmdIYXJkd2FyZSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5TVEVFUkVEX1dIRUVMX0hBUkRXQVJFOiB7CisJCQkJU3RlZXJlZFdoZWVsSGFyZHdhcmUgc3RlZXJlZFdoZWVsSGFyZHdhcmUgPSAoU3RlZXJlZFdoZWVsSGFyZHdhcmUpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VTdGVlcmVkV2hlZWxIYXJkd2FyZShzdGVlcmVkV2hlZWxIYXJkd2FyZSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlTG9jb21vdGlvbkhhcmR3YXJlKHN0ZWVyZWRXaGVlbEhhcmR3YXJlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VBY3R1YXRvckhhcmR3YXJlKHN0ZWVyZWRXaGVlbEhhcmR3YXJlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VIYXJkd2FyZShzdGVlcmVkV2hlZWxIYXJkd2FyZSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlU3lzdGVtKHN0ZWVyZWRXaGVlbEhhcmR3YXJlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFJvYm90TUxQYWNrYWdlLkFSTTogeworCQkJCUFybSBhcm0gPSAoQXJtKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlQXJtKGFybSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5MRUdfU1lTVEVNOiB7CisJCQkJTGVnU3lzdGVtIGxlZ1N5c3RlbSA9IChMZWdTeXN0ZW0pdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VMZWdTeXN0ZW0obGVnU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VMb2NvbW90aW9uU3lzdGVtKGxlZ1N5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlQWN0dWF0b3JTeXN0ZW0obGVnU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VSb2JvdGljU3lzdGVtKGxlZ1N5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlQ3liZXJQaHlzaWNhbFN5c3RlbShsZWdTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVN5c3RlbShsZWdTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuR1JBU1BJTkdfU1lTVEVNOiB7CisJCQkJR3Jhc3BpbmdTeXN0ZW0gZ3Jhc3BpbmdTeXN0ZW0gPSAoR3Jhc3BpbmdTeXN0ZW0pdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VHcmFzcGluZ1N5c3RlbShncmFzcGluZ1N5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlQWN0dWF0b3JTeXN0ZW0oZ3Jhc3BpbmdTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVJvYm90aWNTeXN0ZW0oZ3Jhc3BpbmdTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZUN5YmVyUGh5c2ljYWxTeXN0ZW0oZ3Jhc3BpbmdTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVN5c3RlbShncmFzcGluZ1N5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5XRUFQT05fU1lTVEVNOiB7CisJCQkJV2VhcG9uU3lzdGVtIHdlYXBvblN5c3RlbSA9IChXZWFwb25TeXN0ZW0pdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VXZWFwb25TeXN0ZW0od2VhcG9uU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VBY3R1YXRvclN5c3RlbSh3ZWFwb25TeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVJvYm90aWNTeXN0ZW0od2VhcG9uU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VDeWJlclBoeXNpY2FsU3lzdGVtKHdlYXBvblN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlU3lzdGVtKHdlYXBvblN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5NQU5fTUFDSElORV9JTlRFUkZBQ0VfU1lTVEVNOiB7CisJCQkJTWFuTWFjaGluZUludGVyZmFjZVN5c3RlbSBtYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtID0gKE1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0pdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtKG1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZUN5YmVyUGh5c2ljYWxTeXN0ZW0obWFuTWFjaGluZUludGVyZmFjZVN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlU3lzdGVtKG1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuQ0xPU0VEX0xPT1BfQ09OVFJPTF9TWVNURU06IHsKKwkJCQlDbG9zZWRMb29wQ29udHJvbFN5c3RlbSBjbG9zZWRMb29wQ29udHJvbFN5c3RlbSA9IChDbG9zZWRMb29wQ29udHJvbFN5c3RlbSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZUNsb3NlZExvb3BDb250cm9sU3lzdGVtKGNsb3NlZExvb3BDb250cm9sU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VDeWJlclBoeXNpY2FsU3lzdGVtKGNsb3NlZExvb3BDb250cm9sU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VTeXN0ZW0oY2xvc2VkTG9vcENvbnRyb2xTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuT1BFTl9MT09QX0NPTlRST0xfU1lTVEVNOiB7CisJCQkJT3Blbkxvb3BDb250cm9sU3lzdGVtIG9wZW5Mb29wQ29udHJvbFN5c3RlbSA9IChPcGVuTG9vcENvbnRyb2xTeXN0ZW0pdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VPcGVuTG9vcENvbnRyb2xTeXN0ZW0ob3Blbkxvb3BDb250cm9sU3lzdGVtKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VDeWJlclBoeXNpY2FsU3lzdGVtKG9wZW5Mb29wQ29udHJvbFN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlU3lzdGVtKG9wZW5Mb29wQ29udHJvbFN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5ST0JPVElDX0hFQUQ6IHsKKwkJCQlSb2JvdGljSGVhZCByb2JvdGljSGVhZCA9IChSb2JvdGljSGVhZCl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZVJvYm90aWNIZWFkKHJvYm90aWNIZWFkKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VNYW5NYWNoaW5lSW50ZXJmYWNlU3lzdGVtKHJvYm90aWNIZWFkKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VDeWJlclBoeXNpY2FsU3lzdGVtKHJvYm90aWNIZWFkKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGNhc2VTeXN0ZW0ocm9ib3RpY0hlYWQpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgUm9ib3RNTFBhY2thZ2UuTkFWSUdBVElPTl9DT01NQU5EX1NZU1RFTTogeworCQkJCU5hdmlnYXRpb25Db21tYW5kU3lzdGVtIG5hdmlnYXRpb25Db21tYW5kU3lzdGVtID0gKE5hdmlnYXRpb25Db21tYW5kU3lzdGVtKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0obmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZU1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0obmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZUN5YmVyUGh5c2ljYWxTeXN0ZW0obmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVN5c3RlbShuYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBSb2JvdE1MUGFja2FnZS5KT1lTVElDX05BVklHQVRJT05fU1lTVEVNOiB7CisJCQkJSm95c3RpY05hdmlnYXRpb25TeXN0ZW0gam95c3RpY05hdmlnYXRpb25TeXN0ZW0gPSAoSm95c3RpY05hdmlnYXRpb25TeXN0ZW0pdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VKb3lzdGljTmF2aWdhdGlvblN5c3RlbShqb3lzdGljTmF2aWdhdGlvblN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBjYXNlTmF2aWdhdGlvbkNvbW1hbmRTeXN0ZW0oam95c3RpY05hdmlnYXRpb25TeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZU1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0oam95c3RpY05hdmlnYXRpb25TeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZUN5YmVyUGh5c2ljYWxTeXN0ZW0oam95c3RpY05hdmlnYXRpb25TeXN0ZW0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gY2FzZVN5c3RlbShqb3lzdGljTmF2aWdhdGlvblN5c3RlbSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJZGVmYXVsdDogcmV0dXJuIGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQl9CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+VHJhbnNpdGlvbjwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlRyYW5zaXRpb248L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VUcmFuc2l0aW9uKFRyYW5zaXRpb24gb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkFsZ29yaXRobTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkFsZ29yaXRobTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUFsZ29yaXRobShBbGdvcml0aG0gb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlN0YXRlPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U3RhdGU8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VTdGF0ZShTdGF0ZSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+QWN0dWF0ZWQgSm9pbnQ8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5BY3R1YXRlZCBKb2ludDwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUFjdHVhdGVkSm9pbnQoQWN0dWF0ZWRKb2ludCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Sm9pbnQ8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Kb2ludDwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUpvaW50KEpvaW50IG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Db21wbGV0ZSBCb25kaW5nPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Q29tcGxldGUgQm9uZGluZzwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUNvbXBsZXRlQm9uZGluZyhDb21wbGV0ZUJvbmRpbmcgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlJvYm90PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Um9ib3Q8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VSb2JvdChSb2JvdCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U3lzdGVtPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U3lzdGVtPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlU3lzdGVtKG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5TeXN0ZW0gb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkFnZW50PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+QWdlbnQ8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VBZ2VudChBZ2VudCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UGh5c2ljYWwgT2JqZWN0PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UGh5c2ljYWwgT2JqZWN0PC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlUGh5c2ljYWxPYmplY3QoUGh5c2ljYWxPYmplY3Qgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkVudmlyb25tZW50PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+RW52aXJvbm1lbnQ8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VFbnZpcm9ubWVudChFbnZpcm9ubWVudCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U3VyZmFjZTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlN1cmZhY2U8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VTdXJmYWNlKFN1cmZhY2Ugb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkRhdGEgRmxvdyBQb3J0PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+RGF0YSBGbG93IFBvcnQ8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VEYXRhRmxvd1BvcnQoRGF0YUZsb3dQb3J0IG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Qb3J0PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UG9ydDwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZVBvcnQoUG9ydCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U2VydmljZSBQb3J0PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U2VydmljZSBQb3J0PC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlU2VydmljZVBvcnQoU2VydmljZVBvcnQgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkFjdHVhdG9yIFN5c3RlbTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkFjdHVhdG9yIFN5c3RlbTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUFjdHVhdG9yU3lzdGVtKEFjdHVhdG9yU3lzdGVtIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Sb2JvdGljIFN5c3RlbTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlJvYm90aWMgU3lzdGVtPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlUm9ib3RpY1N5c3RlbShSb2JvdGljU3lzdGVtIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5DeWJlciBQaHlzaWNhbCBTeXN0ZW08L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5DeWJlciBQaHlzaWNhbCBTeXN0ZW08L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VDeWJlclBoeXNpY2FsU3lzdGVtKEN5YmVyUGh5c2ljYWxTeXN0ZW0gb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlNlbnNvciBTeXN0ZW08L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5TZW5zb3IgU3lzdGVtPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlU2Vuc29yU3lzdGVtKFNlbnNvclN5c3RlbSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+SGFyZHdhcmU8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5IYXJkd2FyZTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUhhcmR3YXJlKEhhcmR3YXJlIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Tb2Z0d2FyZTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlNvZnR3YXJlPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlU29mdHdhcmUoU29mdHdhcmUgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkVuZ2luZSBTeXN0ZW08L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5FbmdpbmUgU3lzdGVtPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlRW5naW5lU3lzdGVtKEVuZ2luZVN5c3RlbSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U3RlZXJlZCBXaGVlbCBTeXN0ZW08L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5TdGVlcmVkIFdoZWVsIFN5c3RlbTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZVN0ZWVyZWRXaGVlbFN5c3RlbShTdGVlcmVkV2hlZWxTeXN0ZW0gb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkxvY29tb3Rpb24gU3lzdGVtPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TG9jb21vdGlvbiBTeXN0ZW08L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VMb2NvbW90aW9uU3lzdGVtKExvY29tb3Rpb25TeXN0ZW0gb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkltYWdlIFNlbnNvciBTeXN0ZW08L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5JbWFnZSBTZW5zb3IgU3lzdGVtPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlSW1hZ2VTZW5zb3JTeXN0ZW0oSW1hZ2VTZW5zb3JTeXN0ZW0gb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkNhbWVyYSBTeXN0ZW08L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5DYW1lcmEgU3lzdGVtPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlQ2FtZXJhU3lzdGVtKENhbWVyYVN5c3RlbSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+T2JqZWN0IERldGVjdGlvbiBTZW5zb3IgU3lzdGVtPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+T2JqZWN0IERldGVjdGlvbiBTZW5zb3IgU3lzdGVtPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlT2JqZWN0RGV0ZWN0aW9uU2Vuc29yU3lzdGVtKE9iamVjdERldGVjdGlvblNlbnNvclN5c3RlbSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+T2JqZWN0IFRyYWNraW5nIFNlbnNvciBTeXN0ZW08L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5PYmplY3QgVHJhY2tpbmcgU2Vuc29yIFN5c3RlbTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZU9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtKE9iamVjdFRyYWNraW5nU2Vuc29yU3lzdGVtIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5MaWRhciBTeXN0ZW08L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5MaWRhciBTeXN0ZW08L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VMaWRhclN5c3RlbShMaWRhclN5c3RlbSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TG9jYWxpemF0aW9uIFNlbnNvciBTeXN0ZW08L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Mb2NhbGl6YXRpb24gU2Vuc29yIFN5c3RlbTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUxvY2FsaXphdGlvblNlbnNvclN5c3RlbShMb2NhbGl6YXRpb25TZW5zb3JTeXN0ZW0gb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkdQUyBTeXN0ZW08L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5HUFMgU3lzdGVtPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlR1BTU3lzdGVtKEdQU1N5c3RlbSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+QWxnb3JpdGhtIExpYnJhcnk8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5BbGdvcml0aG0gTGlicmFyeTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUFsZ29yaXRobUxpYnJhcnkoQWxnb3JpdGhtTGlicmFyeSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U2Vuc29yIERyaXZlcjwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlNlbnNvciBEcml2ZXI8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VTZW5zb3JEcml2ZXIoU2Vuc29yRHJpdmVyIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5CdWlsZGluZzwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkJ1aWxkaW5nPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlQnVpbGRpbmcoQnVpbGRpbmcgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlBsYW5ldDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlBsYW5ldDwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZVBsYW5ldChQbGFuZXQgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkxhbmQgU3VyZmFjZTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkxhbmQgU3VyZmFjZTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUxhbmRTdXJmYWNlKExhbmRTdXJmYWNlIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Hcm91bmQ8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Hcm91bmQ8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VHcm91bmQoR3JvdW5kIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5GbG9vcjwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkZsb29yPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlRmxvb3IoRmxvb3Igb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPldhdGVyIFN1cmZhY2U8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5XYXRlciBTdXJmYWNlPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlV2F0ZXJTdXJmYWNlKFdhdGVyU3VyZmFjZSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+SHVtYW48L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5IdW1hbjwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUh1bWFuKEh1bWFuIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5QZWRlc3RyaWFuPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UGVkZXN0cmlhbjwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZVBlZGVzdHJpYW4oUGVkZXN0cmlhbiBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U3RhaXJzPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U3RhaXJzPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlU3RhaXJzKFN0YWlycyBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UGxhdGZvcm08L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5QbGF0Zm9ybTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZVBsYXRmb3JtKFBsYXRmb3JtIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5FeHRlcm5hbCBMaWJyYXJ5PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+RXh0ZXJuYWwgTGlicmFyeTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUV4dGVybmFsTGlicmFyeShFeHRlcm5hbExpYnJhcnkgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlJvYm90aWMgTWlkZGxld2FyZTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlJvYm90aWMgTWlkZGxld2FyZTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZVJvYm90aWNNaWRkbGV3YXJlKFJvYm90aWNNaWRkbGV3YXJlIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Sb2JvdGljIFNpbXVsYXRvcjwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlJvYm90aWMgU2ltdWxhdG9yPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlUm9ib3RpY1NpbXVsYXRvcihSb2JvdGljU2ltdWxhdG9yIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5DeWNhYiBUSzwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkN5Y2FiIFRLPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlQ3ljYWJUSyhDeWNhYlRLIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5CbGVuZGVyIE1vcnNlPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+QmxlbmRlciBNb3JzZTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUJsZW5kZXJNb3JzZShCbGVuZGVyTW9yc2Ugb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPk9uIFBvcnQ8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5PbiBQb3J0PC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlT25Qb3J0KE9uUG9ydCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+QWxsb2NhdGU8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5BbGxvY2F0ZTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUFsbG9jYXRlKEFsbG9jYXRlIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5JbmVydGlhbCBNZWFzdXJlbWVudCBVbml0IFN5c3RlbTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkluZXJ0aWFsIE1lYXN1cmVtZW50IFVuaXQgU3lzdGVtPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0oSW5lcnRpYWxNZWFzdXJlbWVudFVuaXRTeXN0ZW0gb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkluZXJ0aWFsIE5hdmlnYXRpb24gU3lzdGVtPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+SW5lcnRpYWwgTmF2aWdhdGlvbiBTeXN0ZW08L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VJbmVydGlhbE5hdmlnYXRpb25TeXN0ZW0oSW5lcnRpYWxOYXZpZ2F0aW9uU3lzdGVtIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5PZG9tZXRyeSBTeXN0ZW08L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5PZG9tZXRyeSBTeXN0ZW08L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VPZG9tZXRyeVN5c3RlbShPZG9tZXRyeVN5c3RlbSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+SW5mcmEgUmVkIFByb3hpbWV0cnkgU3lzdGVtPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+SW5mcmEgUmVkIFByb3hpbWV0cnkgU3lzdGVtPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlSW5mcmFSZWRQcm94aW1ldHJ5U3lzdGVtKEluZnJhUmVkUHJveGltZXRyeVN5c3RlbSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+RGVwbG95bWVudCBQbGFuPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+RGVwbG95bWVudCBQbGFuPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlRGVwbG95bWVudFBsYW4oRGVwbG95bWVudFBsYW4gb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkd5cm9zY29wZTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkd5cm9zY29wZTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUd5cm9zY29wZShHeXJvc2NvcGUgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPk9uIFZhcmlhYmxlPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+T24gVmFyaWFibGU8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VPblZhcmlhYmxlKE9uVmFyaWFibGUgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkNoYXNzaXM8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5DaGFzc2lzPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlQ2hhc3NpcyhDaGFzc2lzIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5TdXBwb3J0aW5nIFN0cnVjdHVyZTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlN1cHBvcnRpbmcgU3RydWN0dXJlPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlU3VwcG9ydGluZ1N0cnVjdHVyZShTdXBwb3J0aW5nU3RydWN0dXJlIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5NZWNoYW5pY2FsIExpbmthZ2U8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5NZWNoYW5pY2FsIExpbmthZ2U8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VNZWNoYW5pY2FsTGlua2FnZShNZWNoYW5pY2FsTGlua2FnZSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TGVnPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TGVnPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlTGVnKExlZyBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TG9jb21vdGlvbiBIYXJkd2FyZTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkxvY29tb3Rpb24gSGFyZHdhcmU8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VMb2NvbW90aW9uSGFyZHdhcmUoTG9jb21vdGlvbkhhcmR3YXJlIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5BY3R1YXRvciBIYXJkd2FyZTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkFjdHVhdG9yIEhhcmR3YXJlPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlQWN0dWF0b3JIYXJkd2FyZShBY3R1YXRvckhhcmR3YXJlIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Nb2JpbGUgUm9ib3Q8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Nb2JpbGUgUm9ib3Q8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VNb2JpbGVSb2JvdChNb2JpbGVSb2JvdCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TWFuaXB1bGF0b3I8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5NYW5pcHVsYXRvcjwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZU1hbmlwdWxhdG9yKE1hbmlwdWxhdG9yIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5QaWxvdGVkIFN5c3RlbTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlBpbG90ZWQgU3lzdGVtPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlUGlsb3RlZFN5c3RlbShQaWxvdGVkU3lzdGVtIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Qb3dlciBIYXJkd2FyZTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlBvd2VyIEhhcmR3YXJlPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlUG93ZXJIYXJkd2FyZShQb3dlckhhcmR3YXJlIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5TZW5zb3IgSGFyZHdhcmU8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5TZW5zb3IgSGFyZHdhcmU8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VTZW5zb3JIYXJkd2FyZShTZW5zb3JIYXJkd2FyZSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+R3Jhc3BpbmcgSGFyZHdhcmU8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5HcmFzcGluZyBIYXJkd2FyZTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUdyYXNwaW5nSGFyZHdhcmUoR3Jhc3BpbmdIYXJkd2FyZSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+U3RlZXJlZCBXaGVlbCBIYXJkd2FyZTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlN0ZWVyZWQgV2hlZWwgSGFyZHdhcmU8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VTdGVlcmVkV2hlZWxIYXJkd2FyZShTdGVlcmVkV2hlZWxIYXJkd2FyZSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+QXJtPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+QXJtPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlQXJtKEFybSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TGVnIFN5c3RlbTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkxlZyBTeXN0ZW08L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VMZWdTeXN0ZW0oTGVnU3lzdGVtIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5HcmFzcGluZyBTeXN0ZW08L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5HcmFzcGluZyBTeXN0ZW08L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VHcmFzcGluZ1N5c3RlbShHcmFzcGluZ1N5c3RlbSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+V2VhcG9uIFN5c3RlbTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPldlYXBvbiBTeXN0ZW08L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VXZWFwb25TeXN0ZW0oV2VhcG9uU3lzdGVtIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5NYW4gTWFjaGluZSBJbnRlcmZhY2UgU3lzdGVtPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TWFuIE1hY2hpbmUgSW50ZXJmYWNlIFN5c3RlbTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZU1hbk1hY2hpbmVJbnRlcmZhY2VTeXN0ZW0oTWFuTWFjaGluZUludGVyZmFjZVN5c3RlbSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Q2xvc2VkIExvb3AgQ29udHJvbCBTeXN0ZW08L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5DbG9zZWQgTG9vcCBDb250cm9sIFN5c3RlbTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUNsb3NlZExvb3BDb250cm9sU3lzdGVtKENsb3NlZExvb3BDb250cm9sU3lzdGVtIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5PcGVuIExvb3AgQ29udHJvbCBTeXN0ZW08L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5PcGVuIExvb3AgQ29udHJvbCBTeXN0ZW08L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VPcGVuTG9vcENvbnRyb2xTeXN0ZW0oT3Blbkxvb3BDb250cm9sU3lzdGVtIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Sb2JvdGljIEhlYWQ8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Sb2JvdGljIEhlYWQ8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VSb2JvdGljSGVhZChSb2JvdGljSGVhZCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TmF2aWdhdGlvbiBDb21tYW5kIFN5c3RlbTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPk5hdmlnYXRpb24gQ29tbWFuZCBTeXN0ZW08L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VOYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbShOYXZpZ2F0aW9uQ29tbWFuZFN5c3RlbSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Sm95c3RpYyBOYXZpZ2F0aW9uIFN5c3RlbTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkpveXN0aWMgTmF2aWdhdGlvbiBTeXN0ZW08L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VKb3lzdGljTmF2aWdhdGlvblN5c3RlbShKb3lzdGljTmF2aWdhdGlvblN5c3RlbSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+RU9iamVjdDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLCBidXQgdGhpcyBpcyB0aGUgbGFzdCBjYXNlIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5FT2JqZWN0PC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgVCBkZWZhdWx0Q2FzZShFT2JqZWN0IG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKK30gLy8gUm9ib3RNTFN3aXRjaApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MWE1MUHJvY2Vzc29yLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTC91dGlsL1JvYm90TUxYTUxQcm9jZXNzb3IuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMGU3NTRmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUwvdXRpbC9Sb2JvdE1MWE1MUHJvY2Vzc29yLmphdmEKQEAgLTAsMCArMSw1MCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLnV0aWw7CisKK2ltcG9ydCBqYXZhLnV0aWwuTWFwOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5yZXNvdXJjZS5SZXNvdXJjZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUueG1pLnV0aWwuWE1MUHJvY2Vzc29yOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKKworLyoqCisgKiBUaGlzIGNsYXNzIGNvbnRhaW5zIGhlbHBlciBtZXRob2RzIHRvIHNlcmlhbGl6ZSBhbmQgZGVzZXJpYWxpemUgWE1MIGRvY3VtZW50cworICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIFJvYm90TUxYTUxQcm9jZXNzb3IgZXh0ZW5kcyBYTUxQcm9jZXNzb3IgeworCisJLyoqCisJICogUHVibGljIGNvbnN0cnVjdG9yIHRvIGluc3RhbnRpYXRlIHRoZSBoZWxwZXIuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUm9ib3RNTFhNTFByb2Nlc3NvcigpIHsKKwkJc3VwZXIoKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFKSk7CisJCVJvYm90TUxQYWNrYWdlLmVJTlNUQU5DRS5lQ2xhc3MoKTsKKwl9CisKKwkvKioKKwkgKiBSZWdpc3RlciBmb3IgIioiIGFuZCAieG1sIiBmaWxlIGV4dGVuc2lvbnMgdGhlIFJvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsIGZhY3RvcnkuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgTWFwPFN0cmluZywgUmVzb3VyY2UuRmFjdG9yeT4gZ2V0UmVnaXN0cmF0aW9ucygpIHsKKwkJaWYgKHJlZ2lzdHJhdGlvbnMgPT0gbnVsbCkgeworCQkJc3VwZXIuZ2V0UmVnaXN0cmF0aW9ucygpOworCQkJcmVnaXN0cmF0aW9ucy5wdXQoWE1MX0VYVEVOU0lPTiwgbmV3IFJvYm90TUxSZXNvdXJjZUZhY3RvcnlJbXBsKCkpOworCQkJcmVnaXN0cmF0aW9ucy5wdXQoU1RBUl9FWFRFTlNJT04sIG5ldyBSb2JvdE1MUmVzb3VyY2VGYWN0b3J5SW1wbCgpKTsKKwkJfQorCQlyZXR1cm4gcmVnaXN0cmF0aW9uczsKKwl9CisKK30gLy8gUm9ib3RNTFhNTFByb2Nlc3NvcgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNmMmMwYjYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5LmphdmEKQEAgLTAsMCArMSw2MCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3Rvcnk7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIFRoZSA8Yj5GYWN0b3J5PC9iPiBmb3IgdGhlIG1vZGVsLgorICogSXQgcHJvdmlkZXMgYSBjcmVhdGUgbWV0aG9kIGZvciBlYWNoIG5vbi1hYnN0cmFjdCBjbGFzcyBvZiB0aGUgbW9kZWwuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBBY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeSBleHRlbmRzIEVGYWN0b3J5IHsKKwkvKioKKwkgKiBUaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBmYWN0b3J5LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5IGVJTlNUQU5DRSA9IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmluaXQoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+R29hbCBJRDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+R29hbCBJRDwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJR29hbElEIGNyZWF0ZUdvYWxJRCgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Hb2FsIFN0YXR1czwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+R29hbCBTdGF0dXM8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUdvYWxTdGF0dXMgY3JlYXRlR29hbFN0YXR1cygpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Hb2FsIFN0YXR1cyBBcnJheTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+R29hbCBTdGF0dXMgQXJyYXk8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUdvYWxTdGF0dXNBcnJheSBjcmVhdGVHb2FsU3RhdHVzQXJyYXkoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHBhY2thZ2Ugc3VwcG9ydGVkIGJ5IHRoaXMgZmFjdG9yeS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHBhY2thZ2Ugc3VwcG9ydGVkIGJ5IHRoaXMgZmFjdG9yeS4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UgZ2V0QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UoKTsKKworfSAvLyBBY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJjNjM1NGYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmphdmEKQEAgLTAsMCArMSw2NzcgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIFRoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhlIG1vZGVsLgorICogSXQgY29udGFpbnMgYWNjZXNzb3JzIGZvciB0aGUgbWV0YSBvYmplY3RzIHRvIHJlcHJlc2VudAorICogPHVsPgorICogPGxpPmVhY2ggY2xhc3MsPC9saT4KKyAqIDxsaT5lYWNoIGZlYXR1cmUgb2YgZWFjaCBjbGFzcyw8L2xpPgorICogPGxpPmVhY2ggb3BlcmF0aW9uIG9mIGVhY2ggY2xhc3MsPC9saT4KKyAqIDxsaT5lYWNoIGVudW0sPC9saT4KKyAqIDxsaT5hbmQgZWFjaCBkYXRhIHR5cGU8L2xpPgorICogPC91bD4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeQorICogQG1vZGVsIGtpbmQ9InBhY2thZ2UiCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UgZXh0ZW5kcyBFUGFja2FnZSB7CisJLyoqCisJICogVGhlIHBhY2thZ2UgbmFtZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTdHJpbmcgZU5BTUUgPSAiYWN0aW9ubGliX2RhdGF0eXBlcyI7CisKKwkvKioKKwkgKiBUaGUgcGFja2FnZSBuYW1lc3BhY2UgVVJJLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCVN0cmluZyBlTlNfVVJJID0gImh0dHA6Ly8vUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzLmVjb3JlIjsKKworCS8qKgorCSAqIFRoZSBwYWNrYWdlIG5hbWVzcGFjZSBuYW1lLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCVN0cmluZyBlTlNfUFJFRklYID0gIlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcyI7CisKKwkvKioKKwkgKiBUaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBwYWNrYWdlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlIGVJTlNUQU5DRSA9IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmluaXQoKTsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC5Hb2FsSURJbXBsIDxlbT5Hb2FsIElEPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC5Hb2FsSURJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsLkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRHb2FsSUQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgR09BTF9JRCA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+U3RhbXA8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHT0FMX0lEX19TVEFNUCA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SWQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHT0FMX0lEX19JRCA9IDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+R29hbCBJRDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHT0FMX0lEX0ZFQVRVUkVfQ09VTlQgPSAyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkdvYWwgSUQ8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR09BTF9JRF9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsLkdvYWxTdGF0dXNJbXBsIDxlbT5Hb2FsIFN0YXR1czwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuR29hbFN0YXR1c0ltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldEdvYWxTdGF0dXMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgR09BTF9TVEFUVVMgPSAxOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlBFTkRJTkc8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHT0FMX1NUQVRVU19fUEVORElORyA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QUNUSVZFPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR09BTF9TVEFUVVNfX0FDVElWRSA9IDE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UFJFRU1QVEVEPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR09BTF9TVEFUVVNfX1BSRUVNUFRFRCA9IDI7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+U1VDQ0VFREVEPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR09BTF9TVEFUVVNfX1NVQ0NFRURFRCA9IDM7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QUJPUlRFRDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEdPQUxfU1RBVFVTX19BQk9SVEVEID0gNDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5SRUpFQ1RFRDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEdPQUxfU1RBVFVTX19SRUpFQ1RFRCA9IDU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UFJFRU1QVElORzwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEdPQUxfU1RBVFVTX19QUkVFTVBUSU5HID0gNjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5SRUNBTExJTkc8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHT0FMX1NUQVRVU19fUkVDQUxMSU5HID0gNzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5SRUNBTExFRDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEdPQUxfU1RBVFVTX19SRUNBTExFRCA9IDg7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TE9TVDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEdPQUxfU1RBVFVTX19MT1NUID0gOTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5UZXh0PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR09BTF9TVEFUVVNfX1RFWFQgPSAxMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TdGF0dXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHT0FMX1NUQVRVU19fU1RBVFVTID0gMTE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+R29hbCBTdGF0dXM8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR09BTF9TVEFUVVNfRkVBVFVSRV9DT1VOVCA9IDEyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkdvYWwgU3RhdHVzPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEdPQUxfU1RBVFVTX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuR29hbFN0YXR1c0FycmF5SW1wbCA8ZW0+R29hbCBTdGF0dXMgQXJyYXk8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsLkdvYWxTdGF0dXNBcnJheUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldEdvYWxTdGF0dXNBcnJheSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBHT0FMX1NUQVRVU19BUlJBWSA9IDI7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR09BTF9TVEFUVVNfQVJSQVlfX0hFQURFUiA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+U3RhdHVzIGxpc3Q8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEdPQUxfU1RBVFVTX0FSUkFZX19TVEFUVVNfTElTVCA9IDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+R29hbCBTdGF0dXMgQXJyYXk8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR09BTF9TVEFUVVNfQVJSQVlfRkVBVFVSRV9DT1VOVCA9IDI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+R29hbCBTdGF0dXMgQXJyYXk8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR09BTF9TVEFUVVNfQVJSQVlfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbElEIDxlbT5Hb2FsIElEPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkdvYWwgSUQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5Hb2FsSUQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldEdvYWxJRCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5Hb2FsSUQjZ2V0U3RhbXAgPGVtPlN0YW1wPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+U3RhbXA8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5Hb2FsSUQjZ2V0U3RhbXAoKQorCSAqIEBzZWUgI2dldEdvYWxJRCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0R29hbElEX1N0YW1wKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxJRCNnZXRJZCA8ZW0+SWQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5JZDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxJRCNnZXRJZCgpCisJICogQHNlZSAjZ2V0R29hbElEKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRHb2FsSURfSWQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXMgPGVtPkdvYWwgU3RhdHVzPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkdvYWwgU3RhdHVzPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1cworCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0R29hbFN0YXR1cygpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5Hb2FsU3RhdHVzI2dldFBFTkRJTkcgPGVtPlBFTkRJTkc8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5QRU5ESU5HPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1cyNnZXRQRU5ESU5HKCkKKwkgKiBAc2VlICNnZXRHb2FsU3RhdHVzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRHb2FsU3RhdHVzX1BFTkRJTkcoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1cyNnZXRBQ1RJVkUgPGVtPkFDVElWRTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkFDVElWRTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXMjZ2V0QUNUSVZFKCkKKwkgKiBAc2VlICNnZXRHb2FsU3RhdHVzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRHb2FsU3RhdHVzX0FDVElWRSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5Hb2FsU3RhdHVzI2dldFBSRUVNUFRFRCA8ZW0+UFJFRU1QVEVEPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+UFJFRU1QVEVEPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1cyNnZXRQUkVFTVBURUQoKQorCSAqIEBzZWUgI2dldEdvYWxTdGF0dXMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEdvYWxTdGF0dXNfUFJFRU1QVEVEKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXMjZ2V0U1VDQ0VFREVEIDxlbT5TVUNDRUVERUQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5TVUNDRUVERUQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5Hb2FsU3RhdHVzI2dldFNVQ0NFRURFRCgpCisJICogQHNlZSAjZ2V0R29hbFN0YXR1cygpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0R29hbFN0YXR1c19TVUNDRUVERUQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1cyNnZXRBQk9SVEVEIDxlbT5BQk9SVEVEPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+QUJPUlRFRDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXMjZ2V0QUJPUlRFRCgpCisJICogQHNlZSAjZ2V0R29hbFN0YXR1cygpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0R29hbFN0YXR1c19BQk9SVEVEKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXMjZ2V0UkVKRUNURUQgPGVtPlJFSkVDVEVEPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+UkVKRUNURUQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5Hb2FsU3RhdHVzI2dldFJFSkVDVEVEKCkKKwkgKiBAc2VlICNnZXRHb2FsU3RhdHVzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRHb2FsU3RhdHVzX1JFSkVDVEVEKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXMjZ2V0UFJFRU1QVElORyA8ZW0+UFJFRU1QVElORzwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlBSRUVNUFRJTkc8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5Hb2FsU3RhdHVzI2dldFBSRUVNUFRJTkcoKQorCSAqIEBzZWUgI2dldEdvYWxTdGF0dXMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEdvYWxTdGF0dXNfUFJFRU1QVElORygpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5Hb2FsU3RhdHVzI2dldFJFQ0FMTElORyA8ZW0+UkVDQUxMSU5HPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+UkVDQUxMSU5HPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1cyNnZXRSRUNBTExJTkcoKQorCSAqIEBzZWUgI2dldEdvYWxTdGF0dXMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEdvYWxTdGF0dXNfUkVDQUxMSU5HKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXMjZ2V0UkVDQUxMRUQgPGVtPlJFQ0FMTEVEPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+UkVDQUxMRUQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5Hb2FsU3RhdHVzI2dldFJFQ0FMTEVEKCkKKwkgKiBAc2VlICNnZXRHb2FsU3RhdHVzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRHb2FsU3RhdHVzX1JFQ0FMTEVEKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXMjZ2V0TE9TVCA8ZW0+TE9TVDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkxPU1Q8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5Hb2FsU3RhdHVzI2dldExPU1QoKQorCSAqIEBzZWUgI2dldEdvYWxTdGF0dXMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEdvYWxTdGF0dXNfTE9TVCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5Hb2FsU3RhdHVzI2dldFRleHQgPGVtPlRleHQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5UZXh0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1cyNnZXRUZXh0KCkKKwkgKiBAc2VlICNnZXRHb2FsU3RhdHVzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRHb2FsU3RhdHVzX1RleHQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1cyNnZXRTdGF0dXMgPGVtPlN0YXR1czwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlN0YXR1czwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXMjZ2V0U3RhdHVzKCkKKwkgKiBAc2VlICNnZXRHb2FsU3RhdHVzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRHb2FsU3RhdHVzX1N0YXR1cygpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1c0FycmF5IDxlbT5Hb2FsIFN0YXR1cyBBcnJheTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5Hb2FsIFN0YXR1cyBBcnJheTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXNBcnJheQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0R29hbFN0YXR1c0FycmF5KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXNBcnJheSNnZXRIZWFkZXIgPGVtPkhlYWRlcjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPkhlYWRlcjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXNBcnJheSNnZXRIZWFkZXIoKQorCSAqIEBzZWUgI2dldEdvYWxTdGF0dXNBcnJheSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0R29hbFN0YXR1c0FycmF5X0hlYWRlcigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdCAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXNBcnJheSNnZXRTdGF0dXNfbGlzdCA8ZW0+U3RhdHVzIGxpc3Q8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdCAnPGVtPlN0YXR1cyBsaXN0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1c0FycmF5I2dldFN0YXR1c19saXN0KCkKKwkgKiBAc2VlICNnZXRHb2FsU3RhdHVzQXJyYXkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldEdvYWxTdGF0dXNBcnJheV9TdGF0dXNfbGlzdCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgZmFjdG9yeSB0aGF0IGNyZWF0ZXMgdGhlIGluc3RhbmNlcyBvZiB0aGUgbW9kZWwuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBmYWN0b3J5IHRoYXQgY3JlYXRlcyB0aGUgaW5zdGFuY2VzIG9mIHRoZSBtb2RlbC4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkgZ2V0QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkoKTsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogRGVmaW5lcyBsaXRlcmFscyBmb3IgdGhlIG1ldGEgb2JqZWN0cyB0aGF0IHJlcHJlc2VudAorCSAqIDx1bD4KKwkgKiA8bGk+ZWFjaCBjbGFzcyw8L2xpPgorCSAqIDxsaT5lYWNoIGZlYXR1cmUgb2YgZWFjaCBjbGFzcyw8L2xpPgorCSAqIDxsaT5lYWNoIG9wZXJhdGlvbiBvZiBlYWNoIGNsYXNzLDwvbGk+CisJICogPGxpPmVhY2ggZW51bSw8L2xpPgorCSAqIDxsaT5hbmQgZWFjaCBkYXRhIHR5cGU8L2xpPgorCSAqIDwvdWw+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCWludGVyZmFjZSBMaXRlcmFscyB7CisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC5Hb2FsSURJbXBsIDxlbT5Hb2FsIElEPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC5Hb2FsSURJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0R29hbElEKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIEdPQUxfSUQgPSBlSU5TVEFOQ0UuZ2V0R29hbElEKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5TdGFtcDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIEdPQUxfSURfX1NUQU1QID0gZUlOU1RBTkNFLmdldEdvYWxJRF9TdGFtcCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+SWQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBHT0FMX0lEX19JRCA9IGVJTlNUQU5DRS5nZXRHb2FsSURfSWQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuR29hbFN0YXR1c0ltcGwgPGVtPkdvYWwgU3RhdHVzPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC5Hb2FsU3RhdHVzSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldEdvYWxTdGF0dXMoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgR09BTF9TVEFUVVMgPSBlSU5TVEFOQ0UuZ2V0R29hbFN0YXR1cygpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UEVORElORzwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIEdPQUxfU1RBVFVTX19QRU5ESU5HID0gZUlOU1RBTkNFLmdldEdvYWxTdGF0dXNfUEVORElORygpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QUNUSVZFPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgR09BTF9TVEFUVVNfX0FDVElWRSA9IGVJTlNUQU5DRS5nZXRHb2FsU3RhdHVzX0FDVElWRSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UFJFRU1QVEVEPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgR09BTF9TVEFUVVNfX1BSRUVNUFRFRCA9IGVJTlNUQU5DRS5nZXRHb2FsU3RhdHVzX1BSRUVNUFRFRCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+U1VDQ0VFREVEPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgR09BTF9TVEFUVVNfX1NVQ0NFRURFRCA9IGVJTlNUQU5DRS5nZXRHb2FsU3RhdHVzX1NVQ0NFRURFRCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QUJPUlRFRDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIEdPQUxfU1RBVFVTX19BQk9SVEVEID0gZUlOU1RBTkNFLmdldEdvYWxTdGF0dXNfQUJPUlRFRCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UkVKRUNURUQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBHT0FMX1NUQVRVU19fUkVKRUNURUQgPSBlSU5TVEFOQ0UuZ2V0R29hbFN0YXR1c19SRUpFQ1RFRCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UFJFRU1QVElORzwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIEdPQUxfU1RBVFVTX19QUkVFTVBUSU5HID0gZUlOU1RBTkNFLmdldEdvYWxTdGF0dXNfUFJFRU1QVElORygpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UkVDQUxMSU5HPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgR09BTF9TVEFUVVNfX1JFQ0FMTElORyA9IGVJTlNUQU5DRS5nZXRHb2FsU3RhdHVzX1JFQ0FMTElORygpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UkVDQUxMRUQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBHT0FMX1NUQVRVU19fUkVDQUxMRUQgPSBlSU5TVEFOQ0UuZ2V0R29hbFN0YXR1c19SRUNBTExFRCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TE9TVDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIEdPQUxfU1RBVFVTX19MT1NUID0gZUlOU1RBTkNFLmdldEdvYWxTdGF0dXNfTE9TVCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VGV4dDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIEdPQUxfU1RBVFVTX19URVhUID0gZUlOU1RBTkNFLmdldEdvYWxTdGF0dXNfVGV4dCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+U3RhdHVzPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgR09BTF9TVEFUVVNfX1NUQVRVUyA9IGVJTlNUQU5DRS5nZXRHb2FsU3RhdHVzX1N0YXR1cygpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC5Hb2FsU3RhdHVzQXJyYXlJbXBsIDxlbT5Hb2FsIFN0YXR1cyBBcnJheTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuR29hbFN0YXR1c0FycmF5SW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldEdvYWxTdGF0dXNBcnJheSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBHT0FMX1NUQVRVU19BUlJBWSA9IGVJTlNUQU5DRS5nZXRHb2FsU3RhdHVzQXJyYXkoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIEdPQUxfU1RBVFVTX0FSUkFZX19IRUFERVIgPSBlSU5TVEFOQ0UuZ2V0R29hbFN0YXR1c0FycmF5X0hlYWRlcigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+U3RhdHVzIGxpc3Q8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0IGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIEdPQUxfU1RBVFVTX0FSUkFZX19TVEFUVVNfTElTVCA9IGVJTlNUQU5DRS5nZXRHb2FsU3RhdHVzQXJyYXlfU3RhdHVzX2xpc3QoKTsKKworCX0KKworfSAvLyBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9Hb2FsSUQuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvR29hbElELmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWMyNDk1YgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvR29hbElELmphdmEKQEAgLTAsMCArMSw3NSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+R29hbCBJRDwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5Hb2FsSUQjZ2V0U3RhbXAgPGVtPlN0YW1wPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5Hb2FsSUQjZ2V0SWQgPGVtPklkPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZSNnZXRHb2FsSUQoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgR29hbElEIGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+U3RhbXA8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlN0YW1wPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5TdGFtcDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0U3RhbXAoVGltZSkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlI2dldEdvYWxJRF9TdGFtcCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5UaW1lIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRTdGFtcCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbElEI2dldFN0YW1wIDxlbT5TdGFtcDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+U3RhbXA8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFN0YW1wKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRTdGFtcChPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+SWQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPklkPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5JZDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0SWQoU3RyaW5nKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UjZ2V0R29hbElEX0lkKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0cmluZyIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0SWQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxJRCNnZXRJZCA8ZW0+SWQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPklkPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRJZCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0SWQoT2JqZWN0IHZhbHVlKTsKKworfSAvLyBHb2FsSUQKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvR29hbFN0YXR1cy5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9Hb2FsU3RhdHVzLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWZjYmFmZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvR29hbFN0YXR1cy5qYXZhCkBAIC0wLDAgKzEsMzM4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Hb2FsIFN0YXR1czwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5Hb2FsU3RhdHVzI2dldFBFTkRJTkcgPGVtPlBFTkRJTkc8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXMjZ2V0QUNUSVZFIDxlbT5BQ1RJVkU8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXMjZ2V0UFJFRU1QVEVEIDxlbT5QUkVFTVBURUQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXMjZ2V0U1VDQ0VFREVEIDxlbT5TVUNDRUVERUQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXMjZ2V0QUJPUlRFRCA8ZW0+QUJPUlRFRDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1cyNnZXRSRUpFQ1RFRCA8ZW0+UkVKRUNURUQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXMjZ2V0UFJFRU1QVElORyA8ZW0+UFJFRU1QVElORzwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1cyNnZXRSRUNBTExJTkcgPGVtPlJFQ0FMTElORzwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1cyNnZXRSRUNBTExFRCA8ZW0+UkVDQUxMRUQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXMjZ2V0TE9TVCA8ZW0+TE9TVDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1cyNnZXRUZXh0IDxlbT5UZXh0PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5Hb2FsU3RhdHVzI2dldFN0YXR1cyA8ZW0+U3RhdHVzPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZSNnZXRHb2FsU3RhdHVzKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIEdvYWxTdGF0dXMgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5QRU5ESU5HPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogVGhlIGRlZmF1bHQgdmFsdWUgaXMgPGNvZGU+IjAiPC9jb2RlPi4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlBFTkRJTkc8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlBFTkRJTkc8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFBFTkRJTkcoVUludDgpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZSNnZXRHb2FsU3RhdHVzX1BFTkRJTkcoKQorCSAqIEBtb2RlbCBkZWZhdWx0PSIwIiBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDgiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFBFTkRJTkcoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXMjZ2V0UEVORElORyA8ZW0+UEVORElORzwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+UEVORElORzwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0UEVORElORygpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0UEVORElORyhPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QUNUSVZFPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogVGhlIGRlZmF1bHQgdmFsdWUgaXMgPGNvZGU+IjEiPC9jb2RlPi4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkFDVElWRTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+QUNUSVZFPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRBQ1RJVkUoVUludDgpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZSNnZXRHb2FsU3RhdHVzX0FDVElWRSgpCisJICogQG1vZGVsIGRlZmF1bHQ9IjEiIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50OCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0QUNUSVZFKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5Hb2FsU3RhdHVzI2dldEFDVElWRSA8ZW0+QUNUSVZFPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5BQ1RJVkU8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldEFDVElWRSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0QUNUSVZFKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5QUkVFTVBURUQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyA8Y29kZT4iMiI8L2NvZGU+LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+UFJFRU1QVEVEPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5QUkVFTVBURUQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFBSRUVNUFRFRChVSW50OCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlI2dldEdvYWxTdGF0dXNfUFJFRU1QVEVEKCkKKwkgKiBAbW9kZWwgZGVmYXVsdD0iMiIgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQ4IiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRQUkVFTVBURUQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXMjZ2V0UFJFRU1QVEVEIDxlbT5QUkVFTVBURUQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlBSRUVNUFRFRDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0UFJFRU1QVEVEKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRQUkVFTVBURUQoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlNVQ0NFRURFRDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+U1VDQ0VFREVEPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5TVUNDRUVERUQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFNVQ0NFRURFRChVSW50OCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlI2dldEdvYWxTdGF0dXNfU1VDQ0VFREVEKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQ4IiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRTVUNDRUVERUQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXMjZ2V0U1VDQ0VFREVEIDxlbT5TVUNDRUVERUQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlNVQ0NFRURFRDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0U1VDQ0VFREVEKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRTVUNDRUVERUQoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkFCT1JURUQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkFCT1JURUQ8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkFCT1JURUQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldEFCT1JURUQoVUludDgpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZSNnZXRHb2FsU3RhdHVzX0FCT1JURUQoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDgiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldEFCT1JURUQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXMjZ2V0QUJPUlRFRCA8ZW0+QUJPUlRFRDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+QUJPUlRFRDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0QUJPUlRFRCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0QUJPUlRFRChPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+UkVKRUNURUQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlJFSkVDVEVEPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5SRUpFQ1RFRDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0UkVKRUNURUQoVUludDgpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZSNnZXRHb2FsU3RhdHVzX1JFSkVDVEVEKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQ4IiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRSRUpFQ1RFRCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1cyNnZXRSRUpFQ1RFRCA8ZW0+UkVKRUNURUQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlJFSkVDVEVEPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRSRUpFQ1RFRCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0UkVKRUNURUQoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlBSRUVNUFRJTkc8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlBSRUVNUFRJTkc8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlBSRUVNUFRJTkc8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFBSRUVNUFRJTkcoVUludDgpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZSNnZXRHb2FsU3RhdHVzX1BSRUVNUFRJTkcoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDgiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFBSRUVNUFRJTkcoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXMjZ2V0UFJFRU1QVElORyA8ZW0+UFJFRU1QVElORzwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+UFJFRU1QVElORzwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0UFJFRU1QVElORygpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0UFJFRU1QVElORyhPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+UkVDQUxMSU5HPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5SRUNBTExJTkc8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlJFQ0FMTElORzwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0UkVDQUxMSU5HKFVJbnQ4KQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UjZ2V0R29hbFN0YXR1c19SRUNBTExJTkcoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDgiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFJFQ0FMTElORygpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1cyNnZXRSRUNBTExJTkcgPGVtPlJFQ0FMTElORzwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+UkVDQUxMSU5HPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRSRUNBTExJTkcoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFJFQ0FMTElORyhPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+UkVDQUxMRUQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlJFQ0FMTEVEPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5SRUNBTExFRDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0UkVDQUxMRUQoVUludDgpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZSNnZXRHb2FsU3RhdHVzX1JFQ0FMTEVEKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQ4IiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRSRUNBTExFRCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1cyNnZXRSRUNBTExFRCA8ZW0+UkVDQUxMRUQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlJFQ0FMTEVEPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRSRUNBTExFRCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0UkVDQUxMRUQoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkxPU1Q8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkxPU1Q8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkxPU1Q8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldExPU1QoVUludDgpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZSNnZXRHb2FsU3RhdHVzX0xPU1QoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDgiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldExPU1QoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXMjZ2V0TE9TVCA8ZW0+TE9TVDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TE9TVDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0TE9TVCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0TE9TVChPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VGV4dDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+VGV4dDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+VGV4dDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0VGV4dChTdHJpbmcpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZSNnZXRHb2FsU3RhdHVzX1RleHQoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RyaW5nIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRUZXh0KCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5Hb2FsU3RhdHVzI2dldFRleHQgPGVtPlRleHQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlRleHQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFRleHQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFRleHQoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlN0YXR1czwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+U3RhdHVzPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5TdGF0dXM8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFN0YXR1cyhVSW50OCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlI2dldEdvYWxTdGF0dXNfU3RhdHVzKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQ4IiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRTdGF0dXMoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXMjZ2V0U3RhdHVzIDxlbT5TdGF0dXM8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlN0YXR1czwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0U3RhdHVzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRTdGF0dXMoT2JqZWN0IHZhbHVlKTsKKworfSAvLyBHb2FsU3RhdHVzCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL0dvYWxTdGF0dXNBcnJheS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9Hb2FsU3RhdHVzQXJyYXkuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ZTcxYjJjCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9Hb2FsU3RhdHVzQXJyYXkuamF2YQpAQCAtMCwwICsxLDY3IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5IZWFkZXI7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkdvYWwgU3RhdHVzIEFycmF5PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXNBcnJheSNnZXRIZWFkZXIgPGVtPkhlYWRlcjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1c0FycmF5I2dldFN0YXR1c19saXN0IDxlbT5TdGF0dXMgbGlzdDwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UjZ2V0R29hbFN0YXR1c0FycmF5KCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIEdvYWxTdGF0dXNBcnJheSBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldEhlYWRlcihIZWFkZXIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZSNnZXRHb2FsU3RhdHVzQXJyYXlfSGVhZGVyKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJSGVhZGVyIGdldEhlYWRlcigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1c0FycmF5I2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldEhlYWRlcigpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0SGVhZGVyKEhlYWRlciB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5TdGF0dXMgbGlzdDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QuCisJICogVGhlIGxpc3QgY29udGVudHMgYXJlIG9mIHR5cGUge0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXN9LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+U3RhdHVzIGxpc3Q8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+U3RhdHVzIGxpc3Q8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZSNnZXRHb2FsU3RhdHVzQXJyYXlfU3RhdHVzX2xpc3QoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUVMaXN0PEdvYWxTdGF0dXM+IGdldFN0YXR1c19saXN0KCk7CisKK30gLy8gR29hbFN0YXR1c0FycmF5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWYzZWY2YQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwuamF2YQpAQCAtMCwwICsxLDExOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVGYWN0b3J5SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUucGx1Z2luLkVjb3JlUGx1Z2luOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxJRDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5Hb2FsU3RhdHVzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXNBcnJheTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPkZhY3Rvcnk8L2I+LgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBBY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwgZXh0ZW5kcyBFRmFjdG9yeUltcGwgaW1wbGVtZW50cyBBY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeSB7CisJLyoqCisJICogQ3JlYXRlcyB0aGUgZGVmYXVsdCBmYWN0b3J5IGltcGxlbWVudGF0aW9uLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkgaW5pdCgpIHsKKwkJdHJ5IHsKKwkJCUFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5IHRoZUFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5ID0gKEFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5KUVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVGYWN0b3J5KEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpOworCQkJaWYgKHRoZUFjdGlvbmxpYl9kYXRhdHlwZXNGYWN0b3J5ICE9IG51bGwpIHsKKwkJCQlyZXR1cm4gdGhlQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3Rvcnk7CisJCQl9CisJCX0KKwkJY2F0Y2ggKEV4Y2VwdGlvbiBleGNlcHRpb24pIHsKKwkJCUVjb3JlUGx1Z2luLklOU1RBTkNFLmxvZyhleGNlcHRpb24pOworCQl9CisJCXJldHVybiBuZXcgQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsKCk7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgZmFjdG9yeS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnlJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBFT2JqZWN0IGNyZWF0ZShFQ2xhc3MgZUNsYXNzKSB7CisJCXN3aXRjaCAoZUNsYXNzLmdldENsYXNzaWZpZXJJRCgpKSB7CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfSUQ6IHJldHVybiBjcmVhdGVHb2FsSUQoKTsKKwkJCWNhc2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVM6IHJldHVybiBjcmVhdGVHb2FsU3RhdHVzKCk7CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX0FSUkFZOiByZXR1cm4gY3JlYXRlR29hbFN0YXR1c0FycmF5KCk7CisJCQlkZWZhdWx0OgorCQkJCXRocm93IG5ldyBJbGxlZ2FsQXJndW1lbnRFeGNlcHRpb24oIlRoZSBjbGFzcyAnIiArIGVDbGFzcy5nZXROYW1lKCkgKyAiJyBpcyBub3QgYSB2YWxpZCBjbGFzc2lmaWVyIik7CisJCX0KKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgR29hbElEIGNyZWF0ZUdvYWxJRCgpIHsKKwkJR29hbElESW1wbCBnb2FsSUQgPSBuZXcgR29hbElESW1wbCgpOworCQlyZXR1cm4gZ29hbElEOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBHb2FsU3RhdHVzIGNyZWF0ZUdvYWxTdGF0dXMoKSB7CisJCUdvYWxTdGF0dXNJbXBsIGdvYWxTdGF0dXMgPSBuZXcgR29hbFN0YXR1c0ltcGwoKTsKKwkJcmV0dXJuIGdvYWxTdGF0dXM7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEdvYWxTdGF0dXNBcnJheSBjcmVhdGVHb2FsU3RhdHVzQXJyYXkoKSB7CisJCUdvYWxTdGF0dXNBcnJheUltcGwgZ29hbFN0YXR1c0FycmF5ID0gbmV3IEdvYWxTdGF0dXNBcnJheUltcGwoKTsKKwkJcmV0dXJuIGdvYWxTdGF0dXNBcnJheTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UgZ2V0QWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UoKSB7CisJCXJldHVybiAoQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UpZ2V0RVBhY2thZ2UoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBkZXByZWNhdGVkCisJICogQGdlbmVyYXRlZAorCSAqLworCUBEZXByZWNhdGVkCisJcHVibGljIHN0YXRpYyBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZSBnZXRQYWNrYWdlKCkgeworCQlyZXR1cm4gQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFOworCX0KKworfSAvLyBBY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yOWIzZDM2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0FjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5qYXZhCkBAIC0wLDAgKzEsNDMxIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRVBhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3Rvcnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbElEOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXM7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1c0FycmF5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLk9hcnAxX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuaW1wbC5PYXJwMV9kYXRhdHlwZXNQYWNrYWdlSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuVU1MUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPlBhY2thZ2U8L2I+LgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwgZXh0ZW5kcyBFUGFja2FnZUltcGwgaW1wbGVtZW50cyBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZSB7CisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgZ29hbElERUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGdvYWxTdGF0dXNFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgZ29hbFN0YXR1c0FycmF5RUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIG1vZGVsIDxiPlBhY2thZ2U8L2I+LCByZWdpc3RlcmVkIHdpdGgKKwkgKiB7QGxpbmsgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlLlJlZ2lzdHJ5IEVQYWNrYWdlLlJlZ2lzdHJ5fSBieSB0aGUgcGFja2FnZQorCSAqIHBhY2thZ2UgVVJJIHZhbHVlLgorCSAqIDxwPk5vdGU6IHRoZSBjb3JyZWN0IHdheSB0byBjcmVhdGUgdGhlIHBhY2thZ2UgaXMgdmlhIHRoZSBzdGF0aWMKKwkgKiBmYWN0b3J5IG1ldGhvZCB7QGxpbmsgI2luaXQgaW5pdCgpfSwgd2hpY2ggYWxzbyBwZXJmb3JtcworCSAqIGluaXRpYWxpemF0aW9uIG9mIHRoZSBwYWNrYWdlLCBvciByZXR1cm5zIHRoZSByZWdpc3RlcmVkIHBhY2thZ2UsCisJICogaWYgb25lIGFscmVhZHkgZXhpc3RzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+IDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlLlJlZ2lzdHJ5CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZSNlTlNfVVJJCisJICogQHNlZSAjaW5pdCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsKCkgeworCQlzdXBlcihlTlNfVVJJLCBBY3Rpb25saWJfZGF0YXR5cGVzRmFjdG9yeS5lSU5TVEFOQ0UpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgc3RhdGljIGJvb2xlYW4gaXNJbml0ZWQgPSBmYWxzZTsKKworCS8qKgorCSAqIENyZWF0ZXMsIHJlZ2lzdGVycywgYW5kIGluaXRpYWxpemVzIHRoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhpcyBtb2RlbCwgYW5kIGZvciBhbnkgb3RoZXJzIHVwb24gd2hpY2ggaXQgZGVwZW5kcy4KKwkgKiAKKwkgKiA8cD5UaGlzIG1ldGhvZCBpcyB1c2VkIHRvIGluaXRpYWxpemUge0BsaW5rIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlI2VJTlNUQU5DRX0gd2hlbiB0aGF0IGZpZWxkIGlzIGFjY2Vzc2VkLgorCSAqIENsaWVudHMgc2hvdWxkIG5vdCBpbnZva2UgaXQgZGlyZWN0bHkuIEluc3RlYWQsIHRoZXkgc2hvdWxkIHNpbXBseSBhY2Nlc3MgdGhhdCBmaWVsZCB0byBvYnRhaW4gdGhlIHBhY2thZ2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4gPCEtLQorCSAqIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNlTlNfVVJJCisJICogQHNlZSAjY3JlYXRlUGFja2FnZUNvbnRlbnRzKCkKKwkgKiBAc2VlICNpbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHN0YXRpYyBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZSBpbml0KCkgeworCQlpZiAoaXNJbml0ZWQpIHJldHVybiAoQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UpRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSk7CisKKwkJLy8gT2J0YWluIG9yIGNyZWF0ZSBhbmQgcmVnaXN0ZXIgcGFja2FnZQorCQlBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwgdGhlQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UgPSAoQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXQoZU5TX1VSSSkgaW5zdGFuY2VvZiBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXQoZU5TX1VSSSkgOiBuZXcgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsKCkpOworCisJCWlzSW5pdGVkID0gdHJ1ZTsKKworCQkvLyBJbml0aWFsaXplIHNpbXBsZSBkZXBlbmRlbmNpZXMKKwkJVU1MUGFja2FnZS5lSU5TVEFOQ0UuZUNsYXNzKCk7CisKKwkJLy8gT2J0YWluIG9yIGNyZWF0ZSBhbmQgcmVnaXN0ZXIgaW50ZXJkZXBlbmRlbmNpZXMKKwkJUm9ib3RNTFBhY2thZ2VJbXBsIHRoZVJvYm90TUxQYWNrYWdlID0gKFJvYm90TUxQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoUm9ib3RNTFBhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBSb2JvdE1MUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShSb2JvdE1MUGFja2FnZS5lTlNfVVJJKSA6IFJvYm90TUxQYWNrYWdlLmVJTlNUQU5DRSk7CisJCURpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwgdGhlRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlID0gKERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgOiBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFKTsKKwkJR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwgdGhlR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSA9IChHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSA6IEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFKTsKKwkJTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZU5hdl9kYXRhdHlwZXNQYWNrYWdlID0gKE5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoTmF2X2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBOYXZfZGF0YXR5cGVzUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShOYXZfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSA6IE5hdl9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRSk7CisJCVNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCB0aGVTZW5zb3JfZGF0YXR5cGVzUGFja2FnZSA9IChTZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgOiBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UpOworCQlPYXJwMV9kYXRhdHlwZXNQYWNrYWdlSW1wbCB0aGVPYXJwMV9kYXRhdHlwZXNQYWNrYWdlID0gKE9hcnAxX2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgT2FycDFfZGF0YXR5cGVzUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIDogT2FycDFfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UpOworCQlPYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbCB0aGVPYXJwNF9kYXRhdHlwZXNQYWNrYWdlID0gKE9hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIDogT2FycDRfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UpOworCQlTdGRfZGF0YXR5cGVzUGFja2FnZUltcGwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UgPSAoU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShTdGRfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIFN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKFN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIDogU3RkX2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFKTsKKworCQkvLyBDcmVhdGUgcGFja2FnZSBtZXRhLWRhdGEgb2JqZWN0cworCQl0aGVBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlUm9ib3RNTFBhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZURpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlTmF2X2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZVNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKworCQkvLyBJbml0aWFsaXplIGNyZWF0ZWQgbWV0YS1kYXRhCisJCXRoZUFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlUm9ib3RNTFBhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlTmF2X2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZU9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCisJCS8vIE1hcmsgbWV0YS1kYXRhIHRvIGluZGljYXRlIGl0IGNhbid0IGJlIGNoYW5nZWQKKwkJdGhlQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuZnJlZXplKCk7CisKKyAgCisJCS8vIFVwZGF0ZSB0aGUgcmVnaXN0cnkgYW5kIHJldHVybiB0aGUgcGFja2FnZQorCQlFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5wdXQoQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSwgdGhlQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UpOworCQlyZXR1cm4gdGhlQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRHb2FsSUQoKSB7CisJCXJldHVybiBnb2FsSURFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0R29hbElEX1N0YW1wKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpZ29hbElERUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0R29hbElEX0lkKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpZ29hbElERUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRHb2FsU3RhdHVzKCkgeworCQlyZXR1cm4gZ29hbFN0YXR1c0VDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRHb2FsU3RhdHVzX1BFTkRJTkcoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlnb2FsU3RhdHVzRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0R29hbFN0YXR1c19BQ1RJVkUoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlnb2FsU3RhdHVzRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0R29hbFN0YXR1c19QUkVFTVBURUQoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlnb2FsU3RhdHVzRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMik7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0R29hbFN0YXR1c19TVUNDRUVERUQoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlnb2FsU3RhdHVzRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0R29hbFN0YXR1c19BQk9SVEVEKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpZ29hbFN0YXR1c0VDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldEdvYWxTdGF0dXNfUkVKRUNURUQoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlnb2FsU3RhdHVzRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoNSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0R29hbFN0YXR1c19QUkVFTVBUSU5HKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpZ29hbFN0YXR1c0VDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDYpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldEdvYWxTdGF0dXNfUkVDQUxMSU5HKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpZ29hbFN0YXR1c0VDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDcpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldEdvYWxTdGF0dXNfUkVDQUxMRUQoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlnb2FsU3RhdHVzRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoOCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0R29hbFN0YXR1c19MT1NUKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpZ29hbFN0YXR1c0VDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldEdvYWxTdGF0dXNfVGV4dCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWdvYWxTdGF0dXNFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0R29hbFN0YXR1c19TdGF0dXMoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlnb2FsU3RhdHVzRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMTEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0R29hbFN0YXR1c0FycmF5KCkgeworCQlyZXR1cm4gZ29hbFN0YXR1c0FycmF5RUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldEdvYWxTdGF0dXNBcnJheV9IZWFkZXIoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlnb2FsU3RhdHVzQXJyYXlFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRHb2FsU3RhdHVzQXJyYXlfU3RhdHVzX2xpc3QoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlnb2FsU3RhdHVzQXJyYXlFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkgZ2V0QWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkoKSB7CisJCXJldHVybiAoQWN0aW9ubGliX2RhdGF0eXBlc0ZhY3RvcnkpZ2V0RUZhY3RvcnlJbnN0YW5jZSgpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgYm9vbGVhbiBpc0NyZWF0ZWQgPSBmYWxzZTsKKworCS8qKgorCSAqIENyZWF0ZXMgdGhlIG1ldGEtbW9kZWwgb2JqZWN0cyBmb3IgdGhlIHBhY2thZ2UuICBUaGlzIG1ldGhvZCBpcworCSAqIGd1YXJkZWQgdG8gaGF2ZSBubyBhZmZlY3Qgb24gYW55IGludm9jYXRpb24gYnV0IGl0cyBmaXJzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBjcmVhdGVQYWNrYWdlQ29udGVudHMoKSB7CisJCWlmIChpc0NyZWF0ZWQpIHJldHVybjsKKwkJaXNDcmVhdGVkID0gdHJ1ZTsKKworCQkvLyBDcmVhdGUgY2xhc3NlcyBhbmQgdGhlaXIgZmVhdHVyZXMKKwkJZ29hbElERUNsYXNzID0gY3JlYXRlRUNsYXNzKEdPQUxfSUQpOworCQljcmVhdGVFQXR0cmlidXRlKGdvYWxJREVDbGFzcywgR09BTF9JRF9fU1RBTVApOworCQljcmVhdGVFQXR0cmlidXRlKGdvYWxJREVDbGFzcywgR09BTF9JRF9fSUQpOworCisJCWdvYWxTdGF0dXNFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoR09BTF9TVEFUVVMpOworCQljcmVhdGVFQXR0cmlidXRlKGdvYWxTdGF0dXNFQ2xhc3MsIEdPQUxfU1RBVFVTX19QRU5ESU5HKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShnb2FsU3RhdHVzRUNsYXNzLCBHT0FMX1NUQVRVU19fQUNUSVZFKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShnb2FsU3RhdHVzRUNsYXNzLCBHT0FMX1NUQVRVU19fUFJFRU1QVEVEKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShnb2FsU3RhdHVzRUNsYXNzLCBHT0FMX1NUQVRVU19fU1VDQ0VFREVEKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShnb2FsU3RhdHVzRUNsYXNzLCBHT0FMX1NUQVRVU19fQUJPUlRFRCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoZ29hbFN0YXR1c0VDbGFzcywgR09BTF9TVEFUVVNfX1JFSkVDVEVEKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShnb2FsU3RhdHVzRUNsYXNzLCBHT0FMX1NUQVRVU19fUFJFRU1QVElORyk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoZ29hbFN0YXR1c0VDbGFzcywgR09BTF9TVEFUVVNfX1JFQ0FMTElORyk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoZ29hbFN0YXR1c0VDbGFzcywgR09BTF9TVEFUVVNfX1JFQ0FMTEVEKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShnb2FsU3RhdHVzRUNsYXNzLCBHT0FMX1NUQVRVU19fTE9TVCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoZ29hbFN0YXR1c0VDbGFzcywgR09BTF9TVEFUVVNfX1RFWFQpOworCQljcmVhdGVFQXR0cmlidXRlKGdvYWxTdGF0dXNFQ2xhc3MsIEdPQUxfU1RBVFVTX19TVEFUVVMpOworCisJCWdvYWxTdGF0dXNBcnJheUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhHT0FMX1NUQVRVU19BUlJBWSk7CisJCWNyZWF0ZUVSZWZlcmVuY2UoZ29hbFN0YXR1c0FycmF5RUNsYXNzLCBHT0FMX1NUQVRVU19BUlJBWV9fSEVBREVSKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShnb2FsU3RhdHVzQXJyYXlFQ2xhc3MsIEdPQUxfU1RBVFVTX0FSUkFZX19TVEFUVVNfTElTVCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBib29sZWFuIGlzSW5pdGlhbGl6ZWQgPSBmYWxzZTsKKworCS8qKgorCSAqIENvbXBsZXRlIHRoZSBpbml0aWFsaXphdGlvbiBvZiB0aGUgcGFja2FnZSBhbmQgaXRzIG1ldGEtbW9kZWwuICBUaGlzCisJICogbWV0aG9kIGlzIGd1YXJkZWQgdG8gaGF2ZSBubyBhZmZlY3Qgb24gYW55IGludm9jYXRpb24gYnV0IGl0cyBmaXJzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBpbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCkgeworCQlpZiAoaXNJbml0aWFsaXplZCkgcmV0dXJuOworCQlpc0luaXRpYWxpemVkID0gdHJ1ZTsKKworCQkvLyBJbml0aWFsaXplIHBhY2thZ2UKKwkJc2V0TmFtZShlTkFNRSk7CisJCXNldE5zUHJlZml4KGVOU19QUkVGSVgpOworCQlzZXROc1VSSShlTlNfVVJJKTsKKworCQkvLyBPYnRhaW4gb3RoZXIgZGVwZW5kZW50IHBhY2thZ2VzCisJCVN0ZF9kYXRhdHlwZXNQYWNrYWdlIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlID0gKFN0ZF9kYXRhdHlwZXNQYWNrYWdlKUVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKFN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpOworCisJCS8vIENyZWF0ZSB0eXBlIHBhcmFtZXRlcnMKKworCQkvLyBTZXQgYm91bmRzIGZvciB0eXBlIHBhcmFtZXRlcnMKKworCQkvLyBBZGQgc3VwZXJ0eXBlcyB0byBjbGFzc2VzCisKKwkJLy8gSW5pdGlhbGl6ZSBjbGFzc2VzLCBmZWF0dXJlcywgYW5kIG9wZXJhdGlvbnM7IGFkZCBwYXJhbWV0ZXJzCisJCWluaXRFQ2xhc3MoZ29hbElERUNsYXNzLCBHb2FsSUQuY2xhc3MsICJHb2FsSUQiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFQXR0cmlidXRlKGdldEdvYWxJRF9TdGFtcCgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRUaW1lKCksICJzdGFtcCIsIG51bGwsIDEsIDEsIEdvYWxJRC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEdvYWxJRF9JZCgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRTdHJpbmcoKSwgImlkIiwgbnVsbCwgMSwgMSwgR29hbElELmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKGdvYWxTdGF0dXNFQ2xhc3MsIEdvYWxTdGF0dXMuY2xhc3MsICJHb2FsU3RhdHVzIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RUF0dHJpYnV0ZShnZXRHb2FsU3RhdHVzX1BFTkRJTkcoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0VUludDgoKSwgIlBFTkRJTkciLCAiMCIsIDEsIDEsIEdvYWxTdGF0dXMuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRHb2FsU3RhdHVzX0FDVElWRSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRVSW50OCgpLCAiQUNUSVZFIiwgIjEiLCAxLCAxLCBHb2FsU3RhdHVzLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0R29hbFN0YXR1c19QUkVFTVBURUQoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0VUludDgoKSwgIlBSRUVNUFRFRCIsICIyIiwgMSwgMSwgR29hbFN0YXR1cy5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEdvYWxTdGF0dXNfU1VDQ0VFREVEKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFVJbnQ4KCksICJTVUNDRUVERUQiLCBudWxsLCAxLCAxLCBHb2FsU3RhdHVzLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0R29hbFN0YXR1c19BQk9SVEVEKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFVJbnQ4KCksICJBQk9SVEVEIiwgbnVsbCwgMSwgMSwgR29hbFN0YXR1cy5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEdvYWxTdGF0dXNfUkVKRUNURUQoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0VUludDgoKSwgIlJFSkVDVEVEIiwgbnVsbCwgMSwgMSwgR29hbFN0YXR1cy5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEdvYWxTdGF0dXNfUFJFRU1QVElORygpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRVSW50OCgpLCAiUFJFRU1QVElORyIsIG51bGwsIDEsIDEsIEdvYWxTdGF0dXMuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRHb2FsU3RhdHVzX1JFQ0FMTElORygpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRVSW50OCgpLCAiUkVDQUxMSU5HIiwgbnVsbCwgMSwgMSwgR29hbFN0YXR1cy5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEdvYWxTdGF0dXNfUkVDQUxMRUQoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0VUludDgoKSwgIlJFQ0FMTEVEIiwgbnVsbCwgMSwgMSwgR29hbFN0YXR1cy5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEdvYWxTdGF0dXNfTE9TVCgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRVSW50OCgpLCAiTE9TVCIsIG51bGwsIDEsIDEsIEdvYWxTdGF0dXMuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRHb2FsU3RhdHVzX1RleHQoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0U3RyaW5nKCksICJ0ZXh0IiwgbnVsbCwgMSwgMSwgR29hbFN0YXR1cy5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEdvYWxTdGF0dXNfU3RhdHVzKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFVJbnQ4KCksICJzdGF0dXMiLCBudWxsLCAxLCAxLCBHb2FsU3RhdHVzLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKGdvYWxTdGF0dXNBcnJheUVDbGFzcywgR29hbFN0YXR1c0FycmF5LmNsYXNzLCAiR29hbFN0YXR1c0FycmF5IiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXRHb2FsU3RhdHVzQXJyYXlfSGVhZGVyKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEhlYWRlcigpLCBudWxsLCAiaGVhZGVyIiwgbnVsbCwgMSwgMSwgR29hbFN0YXR1c0FycmF5LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0R29hbFN0YXR1c0FycmF5X1N0YXR1c19saXN0KCksIHRoaXMuZ2V0R29hbFN0YXR1cygpLCBudWxsLCAic3RhdHVzX2xpc3QiLCBudWxsLCAwLCAtMSwgR29hbFN0YXR1c0FycmF5LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQkvLyBDcmVhdGUgcmVzb3VyY2UKKwkJY3JlYXRlUmVzb3VyY2UoZU5TX1VSSSk7CisJfQorCit9IC8vIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0dvYWxJREltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9Hb2FsSURJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWFlYTlkZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9Hb2FsSURJbXBsLmphdmEKQEAgLTAsMCArMSwyMTQgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbElEOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+R29hbCBJRDwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC5Hb2FsSURJbXBsI2dldFN0YW1wIDxlbT5TdGFtcDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC5Hb2FsSURJbXBsI2dldElkIDxlbT5JZDwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEdvYWxJREltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgR29hbElEIHsKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0U3RhbXAoKSA8ZW0+U3RhbXA8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFN0YW1wKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBTVEFNUF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTdGFtcCgpIDxlbT5TdGFtcDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0U3RhbXAoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3Qgc3RhbXAgPSBTVEFNUF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRJZCgpIDxlbT5JZDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IElEX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldElkKCkgPGVtPklkPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRJZCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBpZCA9IElEX0VERUZBVUxUOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIEdvYWxJREltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5HT0FMX0lEOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0U3RhbXAoKSB7CisJCXJldHVybiBzdGFtcDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRTdGFtcChPYmplY3QgbmV3U3RhbXApIHsKKwkJT2JqZWN0IG9sZFN0YW1wID0gc3RhbXA7CisJCXN0YW1wID0gbmV3U3RhbXA7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfSURfX1NUQU1QLCBvbGRTdGFtcCwgc3RhbXApKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldElkKCkgeworCQlyZXR1cm4gaWQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0SWQoT2JqZWN0IG5ld0lkKSB7CisJCU9iamVjdCBvbGRJZCA9IGlkOworCQlpZCA9IG5ld0lkOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX0lEX19JRCwgb2xkSWQsIGlkKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX0lEX19TVEFNUDoKKwkJCQlyZXR1cm4gZ2V0U3RhbXAoKTsKKwkJCWNhc2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9JRF9fSUQ6CisJCQkJcmV0dXJuIGdldElkKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9JRF9fU1RBTVA6CisJCQkJc2V0U3RhbXAoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX0lEX19JRDoKKwkJCQlzZXRJZCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX0lEX19TVEFNUDoKKwkJCQlzZXRTdGFtcChTVEFNUF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX0lEX19JRDoKKwkJCQlzZXRJZChJRF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfSURfX1NUQU1QOgorCQkJCXJldHVybiBTVEFNUF9FREVGQVVMVCA9PSBudWxsID8gc3RhbXAgIT0gbnVsbCA6ICFTVEFNUF9FREVGQVVMVC5lcXVhbHMoc3RhbXApOworCQkJY2FzZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX0lEX19JRDoKKwkJCQlyZXR1cm4gSURfRURFRkFVTFQgPT0gbnVsbCA/IGlkICE9IG51bGwgOiAhSURfRURFRkFVTFQuZXF1YWxzKGlkKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJaWYgKGVJc1Byb3h5KCkpIHJldHVybiBzdXBlci50b1N0cmluZygpOworCisJCVN0cmluZ0J1ZmZlciByZXN1bHQgPSBuZXcgU3RyaW5nQnVmZmVyKHN1cGVyLnRvU3RyaW5nKCkpOworCQlyZXN1bHQuYXBwZW5kKCIgKHN0YW1wOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChzdGFtcCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgaWQ6ICIpOworCQlyZXN1bHQuYXBwZW5kKGlkKTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIEdvYWxJREltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvaW1wbC9Hb2FsU3RhdHVzQXJyYXlJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvR29hbFN0YXR1c0FycmF5SW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY2NGIxNDgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvR29hbFN0YXR1c0FycmF5SW1wbC5qYXZhCkBAIC0wLDAgKzEsMjE2IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb247CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uQ2hhaW47CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuRU9iamVjdENvbnRhaW5tZW50RUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuSW50ZXJuYWxFTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5Hb2FsU3RhdHVzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXNBcnJheTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5IZWFkZXI7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Hb2FsIFN0YXR1cyBBcnJheTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC5Hb2FsU3RhdHVzQXJyYXlJbXBsI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsLkdvYWxTdGF0dXNBcnJheUltcGwjZ2V0U3RhdHVzX2xpc3QgPGVtPlN0YXR1cyBsaXN0PC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgR29hbFN0YXR1c0FycmF5SW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBHb2FsU3RhdHVzQXJyYXkgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEhlYWRlcigpIDxlbT5IZWFkZXI8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEhlYWRlcigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEhlYWRlciBoZWFkZXI7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTdGF0dXNfbGlzdCgpIDxlbT5TdGF0dXMgbGlzdDwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRTdGF0dXNfbGlzdCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEVMaXN0PEdvYWxTdGF0dXM+IHN0YXR1c19saXN0OworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIEdvYWxTdGF0dXNBcnJheUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5HT0FMX1NUQVRVU19BUlJBWTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgSGVhZGVyIGdldEhlYWRlcigpIHsKKwkJcmV0dXJuIGhlYWRlcjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRIZWFkZXIoSGVhZGVyIG5ld0hlYWRlciwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlIZWFkZXIgb2xkSGVhZGVyID0gaGVhZGVyOworCQloZWFkZXIgPSBuZXdIZWFkZXI7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX0FSUkFZX19IRUFERVIsIG9sZEhlYWRlciwgbmV3SGVhZGVyKTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRIZWFkZXIoSGVhZGVyIG5ld0hlYWRlcikgeworCQlpZiAobmV3SGVhZGVyICE9IGhlYWRlcikgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAoaGVhZGVyICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KWhlYWRlcikuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX0FSUkFZX19IRUFERVIsIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld0hlYWRlciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdIZWFkZXIpLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX1NUQVRVU19BUlJBWV9fSEVBREVSLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldEhlYWRlcihuZXdIZWFkZXIsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfQVJSQVlfX0hFQURFUiwgbmV3SGVhZGVyLCBuZXdIZWFkZXIpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUxpc3Q8R29hbFN0YXR1cz4gZ2V0U3RhdHVzX2xpc3QoKSB7CisJCWlmIChzdGF0dXNfbGlzdCA9PSBudWxsKSB7CisJCQlzdGF0dXNfbGlzdCA9IG5ldyBFT2JqZWN0Q29udGFpbm1lbnRFTGlzdDxHb2FsU3RhdHVzPihHb2FsU3RhdHVzLmNsYXNzLCB0aGlzLCBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX1NUQVRVU19BUlJBWV9fU1RBVFVTX0xJU1QpOworCQl9CisJCXJldHVybiBzdGF0dXNfbGlzdDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gZUludmVyc2VSZW1vdmUoSW50ZXJuYWxFT2JqZWN0IG90aGVyRW5kLCBpbnQgZmVhdHVyZUlELCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX0FSUkFZX19IRUFERVI6CisJCQkJcmV0dXJuIGJhc2ljU2V0SGVhZGVyKG51bGwsIG1zZ3MpOworCQkJY2FzZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX1NUQVRVU19BUlJBWV9fU1RBVFVTX0xJU1Q6CisJCQkJcmV0dXJuICgoSW50ZXJuYWxFTGlzdDw/PilnZXRTdGF0dXNfbGlzdCgpKS5iYXNpY1JlbW92ZShvdGhlckVuZCwgbXNncyk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJbnZlcnNlUmVtb3ZlKG90aGVyRW5kLCBmZWF0dXJlSUQsIG1zZ3MpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfQVJSQVlfX0hFQURFUjoKKwkJCQlyZXR1cm4gZ2V0SGVhZGVyKCk7CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX0FSUkFZX19TVEFUVVNfTElTVDoKKwkJCQlyZXR1cm4gZ2V0U3RhdHVzX2xpc3QoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAU3VwcHJlc3NXYXJuaW5ncygidW5jaGVja2VkIikKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX1NUQVRVU19BUlJBWV9fSEVBREVSOgorCQkJCXNldEhlYWRlcigoSGVhZGVyKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX0FSUkFZX19TVEFUVVNfTElTVDoKKwkJCQlnZXRTdGF0dXNfbGlzdCgpLmNsZWFyKCk7CisJCQkJZ2V0U3RhdHVzX2xpc3QoKS5hZGRBbGwoKENvbGxlY3Rpb248PyBleHRlbmRzIEdvYWxTdGF0dXM+KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX1NUQVRVU19BUlJBWV9fSEVBREVSOgorCQkJCXNldEhlYWRlcigoSGVhZGVyKW51bGwpOworCQkJCXJldHVybjsKKwkJCWNhc2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfQVJSQVlfX1NUQVRVU19MSVNUOgorCQkJCWdldFN0YXR1c19saXN0KCkuY2xlYXIoKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfQVJSQVlfX0hFQURFUjoKKwkJCQlyZXR1cm4gaGVhZGVyICE9IG51bGw7CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX0FSUkFZX19TVEFUVVNfTElTVDoKKwkJCQlyZXR1cm4gc3RhdHVzX2xpc3QgIT0gbnVsbCAmJiAhc3RhdHVzX2xpc3QuaXNFbXB0eSgpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKK30gLy8gR29hbFN0YXR1c0FycmF5SW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0dvYWxTdGF0dXNJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL2ltcGwvR29hbFN0YXR1c0ltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNGU5MzQyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy9pbXBsL0dvYWxTdGF0dXNJbXBsLmphdmEKQEAgLTAsMCArMSw3NTYgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1czsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzRmFjdG9yeTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkdvYWwgU3RhdHVzPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsLkdvYWxTdGF0dXNJbXBsI2dldFBFTkRJTkcgPGVtPlBFTkRJTkc8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuR29hbFN0YXR1c0ltcGwjZ2V0QUNUSVZFIDxlbT5BQ1RJVkU8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuR29hbFN0YXR1c0ltcGwjZ2V0UFJFRU1QVEVEIDxlbT5QUkVFTVBURUQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuR29hbFN0YXR1c0ltcGwjZ2V0U1VDQ0VFREVEIDxlbT5TVUNDRUVERUQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuR29hbFN0YXR1c0ltcGwjZ2V0QUJPUlRFRCA8ZW0+QUJPUlRFRDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC5Hb2FsU3RhdHVzSW1wbCNnZXRSRUpFQ1RFRCA8ZW0+UkVKRUNURUQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuR29hbFN0YXR1c0ltcGwjZ2V0UFJFRU1QVElORyA8ZW0+UFJFRU1QVElORzwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC5Hb2FsU3RhdHVzSW1wbCNnZXRSRUNBTExJTkcgPGVtPlJFQ0FMTElORzwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC5Hb2FsU3RhdHVzSW1wbCNnZXRSRUNBTExFRCA8ZW0+UkVDQUxMRUQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuR29hbFN0YXR1c0ltcGwjZ2V0TE9TVCA8ZW0+TE9TVDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC5Hb2FsU3RhdHVzSW1wbCNnZXRUZXh0IDxlbT5UZXh0PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsLkdvYWxTdGF0dXNJbXBsI2dldFN0YXR1cyA8ZW0+U3RhdHVzPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgR29hbFN0YXR1c0ltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgR29hbFN0YXR1cyB7CisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFBFTkRJTkcoKSA8ZW0+UEVORElORzwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UEVORElORygpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgUEVORElOR19FREVGQVVMVCA9IChPYmplY3QpU3RkX2RhdGF0eXBlc0ZhY3RvcnkuZUlOU1RBTkNFLmNyZWF0ZUZyb21TdHJpbmcoU3RkX2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFLmdldFVJbnQ4KCksICIwIik7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRQRU5ESU5HKCkgPGVtPlBFTkRJTkc8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFBFTkRJTkcoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgcGVuZGluZyA9IFBFTkRJTkdfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0QUNUSVZFKCkgPGVtPkFDVElWRTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0QUNUSVZFKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBBQ1RJVkVfRURFRkFVTFQgPSAoT2JqZWN0KVN0ZF9kYXRhdHlwZXNGYWN0b3J5LmVJTlNUQU5DRS5jcmVhdGVGcm9tU3RyaW5nKFN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRS5nZXRVSW50OCgpLCAiMSIpOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0QUNUSVZFKCkgPGVtPkFDVElWRTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0QUNUSVZFKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IGFjdGl2ZSA9IEFDVElWRV9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRQUkVFTVBURUQoKSA8ZW0+UFJFRU1QVEVEPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRQUkVFTVBURUQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFBSRUVNUFRFRF9FREVGQVVMVCA9IChPYmplY3QpU3RkX2RhdGF0eXBlc0ZhY3RvcnkuZUlOU1RBTkNFLmNyZWF0ZUZyb21TdHJpbmcoU3RkX2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFLmdldFVJbnQ4KCksICIyIik7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRQUkVFTVBURUQoKSA8ZW0+UFJFRU1QVEVEPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRQUkVFTVBURUQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgcHJlZW1wdGVkID0gUFJFRU1QVEVEX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFNVQ0NFRURFRCgpIDxlbT5TVUNDRUVERUQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFNVQ0NFRURFRCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgU1VDQ0VFREVEX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFNVQ0NFRURFRCgpIDxlbT5TVUNDRUVERUQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFNVQ0NFRURFRCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBzdWNjZWVkZWQgPSBTVUNDRUVERURfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0QUJPUlRFRCgpIDxlbT5BQk9SVEVEPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRBQk9SVEVEKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBBQk9SVEVEX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEFCT1JURUQoKSA8ZW0+QUJPUlRFRDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0QUJPUlRFRCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBhYm9ydGVkID0gQUJPUlRFRF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRSRUpFQ1RFRCgpIDxlbT5SRUpFQ1RFRDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UkVKRUNURUQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFJFSkVDVEVEX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFJFSkVDVEVEKCkgPGVtPlJFSkVDVEVEPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRSRUpFQ1RFRCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCByZWplY3RlZCA9IFJFSkVDVEVEX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFBSRUVNUFRJTkcoKSA8ZW0+UFJFRU1QVElORzwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UFJFRU1QVElORygpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgUFJFRU1QVElOR19FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRQUkVFTVBUSU5HKCkgPGVtPlBSRUVNUFRJTkc8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFBSRUVNUFRJTkcoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgcHJlZW1wdGluZyA9IFBSRUVNUFRJTkdfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0UkVDQUxMSU5HKCkgPGVtPlJFQ0FMTElORzwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UkVDQUxMSU5HKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBSRUNBTExJTkdfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0UkVDQUxMSU5HKCkgPGVtPlJFQ0FMTElORzwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UkVDQUxMSU5HKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHJlY2FsbGluZyA9IFJFQ0FMTElOR19FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRSRUNBTExFRCgpIDxlbT5SRUNBTExFRDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UkVDQUxMRUQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFJFQ0FMTEVEX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFJFQ0FMTEVEKCkgPGVtPlJFQ0FMTEVEPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRSRUNBTExFRCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCByZWNhbGxlZCA9IFJFQ0FMTEVEX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExPU1QoKSA8ZW0+TE9TVDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0TE9TVCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgTE9TVF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRMT1NUKCkgPGVtPkxPU1Q8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExPU1QoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgbG9zdCA9IExPU1RfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0VGV4dCgpIDxlbT5UZXh0PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRUZXh0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBURVhUX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFRleHQoKSA8ZW0+VGV4dDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VGV4dCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCB0ZXh0ID0gVEVYVF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTdGF0dXMoKSA8ZW0+U3RhdHVzPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRTdGF0dXMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFNUQVRVU19FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTdGF0dXMoKSA8ZW0+U3RhdHVzPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRTdGF0dXMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3Qgc3RhdHVzID0gU1RBVFVTX0VERUZBVUxUOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIEdvYWxTdGF0dXNJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuR09BTF9TVEFUVVM7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRQRU5ESU5HKCkgeworCQlyZXR1cm4gcGVuZGluZzsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRQRU5ESU5HKE9iamVjdCBuZXdQRU5ESU5HKSB7CisJCU9iamVjdCBvbGRQRU5ESU5HID0gcGVuZGluZzsKKwkJcGVuZGluZyA9IG5ld1BFTkRJTkc7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19QRU5ESU5HLCBvbGRQRU5ESU5HLCBwZW5kaW5nKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRBQ1RJVkUoKSB7CisJCXJldHVybiBhY3RpdmU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0QUNUSVZFKE9iamVjdCBuZXdBQ1RJVkUpIHsKKwkJT2JqZWN0IG9sZEFDVElWRSA9IGFjdGl2ZTsKKwkJYWN0aXZlID0gbmV3QUNUSVZFOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX1NUQVRVU19fQUNUSVZFLCBvbGRBQ1RJVkUsIGFjdGl2ZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0UFJFRU1QVEVEKCkgeworCQlyZXR1cm4gcHJlZW1wdGVkOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFBSRUVNUFRFRChPYmplY3QgbmV3UFJFRU1QVEVEKSB7CisJCU9iamVjdCBvbGRQUkVFTVBURUQgPSBwcmVlbXB0ZWQ7CisJCXByZWVtcHRlZCA9IG5ld1BSRUVNUFRFRDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfX1BSRUVNUFRFRCwgb2xkUFJFRU1QVEVELCBwcmVlbXB0ZWQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFNVQ0NFRURFRCgpIHsKKwkJcmV0dXJuIHN1Y2NlZWRlZDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRTVUNDRUVERUQoT2JqZWN0IG5ld1NVQ0NFRURFRCkgeworCQlPYmplY3Qgb2xkU1VDQ0VFREVEID0gc3VjY2VlZGVkOworCQlzdWNjZWVkZWQgPSBuZXdTVUNDRUVERUQ7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19TVUNDRUVERUQsIG9sZFNVQ0NFRURFRCwgc3VjY2VlZGVkKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRBQk9SVEVEKCkgeworCQlyZXR1cm4gYWJvcnRlZDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRBQk9SVEVEKE9iamVjdCBuZXdBQk9SVEVEKSB7CisJCU9iamVjdCBvbGRBQk9SVEVEID0gYWJvcnRlZDsKKwkJYWJvcnRlZCA9IG5ld0FCT1JURUQ7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19BQk9SVEVELCBvbGRBQk9SVEVELCBhYm9ydGVkKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRSRUpFQ1RFRCgpIHsKKwkJcmV0dXJuIHJlamVjdGVkOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFJFSkVDVEVEKE9iamVjdCBuZXdSRUpFQ1RFRCkgeworCQlPYmplY3Qgb2xkUkVKRUNURUQgPSByZWplY3RlZDsKKwkJcmVqZWN0ZWQgPSBuZXdSRUpFQ1RFRDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfX1JFSkVDVEVELCBvbGRSRUpFQ1RFRCwgcmVqZWN0ZWQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFBSRUVNUFRJTkcoKSB7CisJCXJldHVybiBwcmVlbXB0aW5nOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFBSRUVNUFRJTkcoT2JqZWN0IG5ld1BSRUVNUFRJTkcpIHsKKwkJT2JqZWN0IG9sZFBSRUVNUFRJTkcgPSBwcmVlbXB0aW5nOworCQlwcmVlbXB0aW5nID0gbmV3UFJFRU1QVElORzsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfX1BSRUVNUFRJTkcsIG9sZFBSRUVNUFRJTkcsIHByZWVtcHRpbmcpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFJFQ0FMTElORygpIHsKKwkJcmV0dXJuIHJlY2FsbGluZzsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRSRUNBTExJTkcoT2JqZWN0IG5ld1JFQ0FMTElORykgeworCQlPYmplY3Qgb2xkUkVDQUxMSU5HID0gcmVjYWxsaW5nOworCQlyZWNhbGxpbmcgPSBuZXdSRUNBTExJTkc7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19SRUNBTExJTkcsIG9sZFJFQ0FMTElORywgcmVjYWxsaW5nKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRSRUNBTExFRCgpIHsKKwkJcmV0dXJuIHJlY2FsbGVkOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFJFQ0FMTEVEKE9iamVjdCBuZXdSRUNBTExFRCkgeworCQlPYmplY3Qgb2xkUkVDQUxMRUQgPSByZWNhbGxlZDsKKwkJcmVjYWxsZWQgPSBuZXdSRUNBTExFRDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfX1JFQ0FMTEVELCBvbGRSRUNBTExFRCwgcmVjYWxsZWQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldExPU1QoKSB7CisJCXJldHVybiBsb3N0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldExPU1QoT2JqZWN0IG5ld0xPU1QpIHsKKwkJT2JqZWN0IG9sZExPU1QgPSBsb3N0OworCQlsb3N0ID0gbmV3TE9TVDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfX0xPU1QsIG9sZExPU1QsIGxvc3QpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFRleHQoKSB7CisJCXJldHVybiB0ZXh0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFRleHQoT2JqZWN0IG5ld1RleHQpIHsKKwkJT2JqZWN0IG9sZFRleHQgPSB0ZXh0OworCQl0ZXh0ID0gbmV3VGV4dDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfX1RFWFQsIG9sZFRleHQsIHRleHQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFN0YXR1cygpIHsKKwkJcmV0dXJuIHN0YXR1czsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRTdGF0dXMoT2JqZWN0IG5ld1N0YXR1cykgeworCQlPYmplY3Qgb2xkU3RhdHVzID0gc3RhdHVzOworCQlzdGF0dXMgPSBuZXdTdGF0dXM7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19TVEFUVVMsIG9sZFN0YXR1cywgc3RhdHVzKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX1NUQVRVU19fUEVORElORzoKKwkJCQlyZXR1cm4gZ2V0UEVORElORygpOworCQkJY2FzZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX1NUQVRVU19fQUNUSVZFOgorCQkJCXJldHVybiBnZXRBQ1RJVkUoKTsKKwkJCWNhc2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfX1BSRUVNUFRFRDoKKwkJCQlyZXR1cm4gZ2V0UFJFRU1QVEVEKCk7CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19TVUNDRUVERUQ6CisJCQkJcmV0dXJuIGdldFNVQ0NFRURFRCgpOworCQkJY2FzZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX1NUQVRVU19fQUJPUlRFRDoKKwkJCQlyZXR1cm4gZ2V0QUJPUlRFRCgpOworCQkJY2FzZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX1NUQVRVU19fUkVKRUNURUQ6CisJCQkJcmV0dXJuIGdldFJFSkVDVEVEKCk7CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19QUkVFTVBUSU5HOgorCQkJCXJldHVybiBnZXRQUkVFTVBUSU5HKCk7CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19SRUNBTExJTkc6CisJCQkJcmV0dXJuIGdldFJFQ0FMTElORygpOworCQkJY2FzZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX1NUQVRVU19fUkVDQUxMRUQ6CisJCQkJcmV0dXJuIGdldFJFQ0FMTEVEKCk7CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19MT1NUOgorCQkJCXJldHVybiBnZXRMT1NUKCk7CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19URVhUOgorCQkJCXJldHVybiBnZXRUZXh0KCk7CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19TVEFUVVM6CisJCQkJcmV0dXJuIGdldFN0YXR1cygpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19QRU5ESU5HOgorCQkJCXNldFBFTkRJTkcoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX1NUQVRVU19fQUNUSVZFOgorCQkJCXNldEFDVElWRSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19QUkVFTVBURUQ6CisJCQkJc2V0UFJFRU1QVEVEKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfX1NVQ0NFRURFRDoKKwkJCQlzZXRTVUNDRUVERUQoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX1NUQVRVU19fQUJPUlRFRDoKKwkJCQlzZXRBQk9SVEVEKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfX1JFSkVDVEVEOgorCQkJCXNldFJFSkVDVEVEKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfX1BSRUVNUFRJTkc6CisJCQkJc2V0UFJFRU1QVElORygoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19SRUNBTExJTkc6CisJCQkJc2V0UkVDQUxMSU5HKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfX1JFQ0FMTEVEOgorCQkJCXNldFJFQ0FMTEVEKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfX0xPU1Q6CisJCQkJc2V0TE9TVCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19URVhUOgorCQkJCXNldFRleHQoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX1NUQVRVU19fU1RBVFVTOgorCQkJCXNldFN0YXR1cygoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX1NUQVRVU19fUEVORElORzoKKwkJCQlzZXRQRU5ESU5HKFBFTkRJTkdfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfX0FDVElWRToKKwkJCQlzZXRBQ1RJVkUoQUNUSVZFX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19QUkVFTVBURUQ6CisJCQkJc2V0UFJFRU1QVEVEKFBSRUVNUFRFRF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX1NUQVRVU19fU1VDQ0VFREVEOgorCQkJCXNldFNVQ0NFRURFRChTVUNDRUVERURfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfX0FCT1JURUQ6CisJCQkJc2V0QUJPUlRFRChBQk9SVEVEX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19SRUpFQ1RFRDoKKwkJCQlzZXRSRUpFQ1RFRChSRUpFQ1RFRF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX1NUQVRVU19fUFJFRU1QVElORzoKKwkJCQlzZXRQUkVFTVBUSU5HKFBSRUVNUFRJTkdfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfX1JFQ0FMTElORzoKKwkJCQlzZXRSRUNBTExJTkcoUkVDQUxMSU5HX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19SRUNBTExFRDoKKwkJCQlzZXRSRUNBTExFRChSRUNBTExFRF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX1NUQVRVU19fTE9TVDoKKwkJCQlzZXRMT1NUKExPU1RfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfX1RFWFQ6CisJCQkJc2V0VGV4dChURVhUX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19TVEFUVVM6CisJCQkJc2V0U3RhdHVzKFNUQVRVU19FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19QRU5ESU5HOgorCQkJCXJldHVybiBQRU5ESU5HX0VERUZBVUxUID09IG51bGwgPyBwZW5kaW5nICE9IG51bGwgOiAhUEVORElOR19FREVGQVVMVC5lcXVhbHMocGVuZGluZyk7CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19BQ1RJVkU6CisJCQkJcmV0dXJuIEFDVElWRV9FREVGQVVMVCA9PSBudWxsID8gYWN0aXZlICE9IG51bGwgOiAhQUNUSVZFX0VERUZBVUxULmVxdWFscyhhY3RpdmUpOworCQkJY2FzZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX1NUQVRVU19fUFJFRU1QVEVEOgorCQkJCXJldHVybiBQUkVFTVBURURfRURFRkFVTFQgPT0gbnVsbCA/IHByZWVtcHRlZCAhPSBudWxsIDogIVBSRUVNUFRFRF9FREVGQVVMVC5lcXVhbHMocHJlZW1wdGVkKTsKKwkJCWNhc2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfX1NVQ0NFRURFRDoKKwkJCQlyZXR1cm4gU1VDQ0VFREVEX0VERUZBVUxUID09IG51bGwgPyBzdWNjZWVkZWQgIT0gbnVsbCA6ICFTVUNDRUVERURfRURFRkFVTFQuZXF1YWxzKHN1Y2NlZWRlZCk7CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19BQk9SVEVEOgorCQkJCXJldHVybiBBQk9SVEVEX0VERUZBVUxUID09IG51bGwgPyBhYm9ydGVkICE9IG51bGwgOiAhQUJPUlRFRF9FREVGQVVMVC5lcXVhbHMoYWJvcnRlZCk7CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19SRUpFQ1RFRDoKKwkJCQlyZXR1cm4gUkVKRUNURURfRURFRkFVTFQgPT0gbnVsbCA/IHJlamVjdGVkICE9IG51bGwgOiAhUkVKRUNURURfRURFRkFVTFQuZXF1YWxzKHJlamVjdGVkKTsKKwkJCWNhc2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfX1BSRUVNUFRJTkc6CisJCQkJcmV0dXJuIFBSRUVNUFRJTkdfRURFRkFVTFQgPT0gbnVsbCA/IHByZWVtcHRpbmcgIT0gbnVsbCA6ICFQUkVFTVBUSU5HX0VERUZBVUxULmVxdWFscyhwcmVlbXB0aW5nKTsKKwkJCWNhc2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfX1JFQ0FMTElORzoKKwkJCQlyZXR1cm4gUkVDQUxMSU5HX0VERUZBVUxUID09IG51bGwgPyByZWNhbGxpbmcgIT0gbnVsbCA6ICFSRUNBTExJTkdfRURFRkFVTFQuZXF1YWxzKHJlY2FsbGluZyk7CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX19SRUNBTExFRDoKKwkJCQlyZXR1cm4gUkVDQUxMRURfRURFRkFVTFQgPT0gbnVsbCA/IHJlY2FsbGVkICE9IG51bGwgOiAhUkVDQUxMRURfRURFRkFVTFQuZXF1YWxzKHJlY2FsbGVkKTsKKwkJCWNhc2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfX0xPU1Q6CisJCQkJcmV0dXJuIExPU1RfRURFRkFVTFQgPT0gbnVsbCA/IGxvc3QgIT0gbnVsbCA6ICFMT1NUX0VERUZBVUxULmVxdWFscyhsb3N0KTsKKwkJCWNhc2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfX1RFWFQ6CisJCQkJcmV0dXJuIFRFWFRfRURFRkFVTFQgPT0gbnVsbCA/IHRleHQgIT0gbnVsbCA6ICFURVhUX0VERUZBVUxULmVxdWFscyh0ZXh0KTsKKwkJCWNhc2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9TVEFUVVNfX1NUQVRVUzoKKwkJCQlyZXR1cm4gU1RBVFVTX0VERUZBVUxUID09IG51bGwgPyBzdGF0dXMgIT0gbnVsbCA6ICFTVEFUVVNfRURFRkFVTFQuZXF1YWxzKHN0YXR1cyk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CisJCWlmIChlSXNQcm94eSgpKSByZXR1cm4gc3VwZXIudG9TdHJpbmcoKTsKKworCQlTdHJpbmdCdWZmZXIgcmVzdWx0ID0gbmV3IFN0cmluZ0J1ZmZlcihzdXBlci50b1N0cmluZygpKTsKKwkJcmVzdWx0LmFwcGVuZCgiIChQRU5ESU5HOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChwZW5kaW5nKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBBQ1RJVkU6ICIpOworCQlyZXN1bHQuYXBwZW5kKGFjdGl2ZSk7CisJCXJlc3VsdC5hcHBlbmQoIiwgUFJFRU1QVEVEOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChwcmVlbXB0ZWQpOworCQlyZXN1bHQuYXBwZW5kKCIsIFNVQ0NFRURFRDogIik7CisJCXJlc3VsdC5hcHBlbmQoc3VjY2VlZGVkKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBBQk9SVEVEOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChhYm9ydGVkKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBSRUpFQ1RFRDogIik7CisJCXJlc3VsdC5hcHBlbmQocmVqZWN0ZWQpOworCQlyZXN1bHQuYXBwZW5kKCIsIFBSRUVNUFRJTkc6ICIpOworCQlyZXN1bHQuYXBwZW5kKHByZWVtcHRpbmcpOworCQlyZXN1bHQuYXBwZW5kKCIsIFJFQ0FMTElORzogIik7CisJCXJlc3VsdC5hcHBlbmQocmVjYWxsaW5nKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBSRUNBTExFRDogIik7CisJCXJlc3VsdC5hcHBlbmQocmVjYWxsZWQpOworCQlyZXN1bHQuYXBwZW5kKCIsIExPU1Q6ICIpOworCQlyZXN1bHQuYXBwZW5kKGxvc3QpOworCQlyZXN1bHQuYXBwZW5kKCIsIHRleHQ6ICIpOworCQlyZXN1bHQuYXBwZW5kKHRleHQpOworCQlyZXN1bHQuYXBwZW5kKCIsIHN0YXR1czogIik7CisJCXJlc3VsdC5hcHBlbmQoc3RhdHVzKTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIEdvYWxTdGF0dXNJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL3V0aWwvQWN0aW9ubGliX2RhdGF0eXBlc0FkYXB0ZXJGYWN0b3J5LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL3V0aWwvQWN0aW9ubGliX2RhdGF0eXBlc0FkYXB0ZXJGYWN0b3J5LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODg5MTc2MwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2FjdGlvbmxpYl9kYXRhdHlwZXMvdXRpbC9BY3Rpb25saWJfZGF0YXR5cGVzQWRhcHRlckZhY3RvcnkuamF2YQpAQCAtMCwwICsxLDE1NiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMudXRpbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5BZGFwdGVyRmFjdG9yeUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbElEOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXM7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1c0FycmF5OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBUaGUgPGI+QWRhcHRlciBGYWN0b3J5PC9iPiBmb3IgdGhlIG1vZGVsLgorICogSXQgcHJvdmlkZXMgYW4gYWRhcHRlciA8Y29kZT5jcmVhdGVYWFg8L2NvZGU+IG1ldGhvZCBmb3IgZWFjaCBjbGFzcyBvZiB0aGUgbW9kZWwuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEFjdGlvbmxpYl9kYXRhdHlwZXNBZGFwdGVyRmFjdG9yeSBleHRlbmRzIEFkYXB0ZXJGYWN0b3J5SW1wbCB7CisJLyoqCisJICogVGhlIGNhY2hlZCBtb2RlbCBwYWNrYWdlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UgbW9kZWxQYWNrYWdlOworCisJLyoqCisJICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgYWRhcHRlciBmYWN0b3J5LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBY3Rpb25saWJfZGF0YXR5cGVzQWRhcHRlckZhY3RvcnkoKSB7CisJCWlmIChtb2RlbFBhY2thZ2UgPT0gbnVsbCkgeworCQkJbW9kZWxQYWNrYWdlID0gQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFOworCQl9CisJfQorCisJLyoqCisJICogUmV0dXJucyB3aGV0aGVyIHRoaXMgZmFjdG9yeSBpcyBhcHBsaWNhYmxlIGZvciB0aGUgdHlwZSBvZiB0aGUgb2JqZWN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIDxjb2RlPnRydWU8L2NvZGU+IGlmIHRoZSBvYmplY3QgaXMgZWl0aGVyIHRoZSBtb2RlbCdzIHBhY2thZ2Ugb3IgaXMgYW4gaW5zdGFuY2Ugb2JqZWN0IG9mIHRoZSBtb2RlbC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHdoZXRoZXIgdGhpcyBmYWN0b3J5IGlzIGFwcGxpY2FibGUgZm9yIHRoZSB0eXBlIG9mIHRoZSBvYmplY3QuCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGlzRmFjdG9yeUZvclR5cGUoT2JqZWN0IG9iamVjdCkgeworCQlpZiAob2JqZWN0ID09IG1vZGVsUGFja2FnZSkgeworCQkJcmV0dXJuIHRydWU7CisJCX0KKwkJaWYgKG9iamVjdCBpbnN0YW5jZW9mIEVPYmplY3QpIHsKKwkJCXJldHVybiAoKEVPYmplY3Qpb2JqZWN0KS5lQ2xhc3MoKS5nZXRFUGFja2FnZSgpID09IG1vZGVsUGFja2FnZTsKKwkJfQorCQlyZXR1cm4gZmFsc2U7CisJfQorCisJLyoqCisJICogVGhlIHN3aXRjaCB0aGF0IGRlbGVnYXRlcyB0byB0aGUgPGNvZGU+Y3JlYXRlWFhYPC9jb2RlPiBtZXRob2RzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBBY3Rpb25saWJfZGF0YXR5cGVzU3dpdGNoPEFkYXB0ZXI+IG1vZGVsU3dpdGNoID0KKwkJCW5ldyBBY3Rpb25saWJfZGF0YXR5cGVzU3dpdGNoPEFkYXB0ZXI+KCkgeworCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlR29hbElEKEdvYWxJRCBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlR29hbElEQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlR29hbFN0YXR1cyhHb2FsU3RhdHVzIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVHb2FsU3RhdHVzQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlR29hbFN0YXR1c0FycmF5KEdvYWxTdGF0dXNBcnJheSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlR29hbFN0YXR1c0FycmF5QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBkZWZhdWx0Q2FzZShFT2JqZWN0IG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVFT2JqZWN0QWRhcHRlcigpOworCQkJfQorCQl9OworCisJLyoqCisJICogQ3JlYXRlcyBhbiBhZGFwdGVyIGZvciB0aGUgPGNvZGU+dGFyZ2V0PC9jb2RlPi4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB0YXJnZXQgdGhlIG9iamVjdCB0byBhZGFwdC4KKwkgKiBAcmV0dXJuIHRoZSBhZGFwdGVyIGZvciB0aGUgPGNvZGU+dGFyZ2V0PC9jb2RlPi4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlQWRhcHRlcihOb3RpZmllciB0YXJnZXQpIHsKKwkJcmV0dXJuIG1vZGVsU3dpdGNoLmRvU3dpdGNoKChFT2JqZWN0KXRhcmdldCk7CisJfQorCisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxJRCA8ZW0+R29hbCBJRDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5Hb2FsSUQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlR29hbElEQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5Hb2FsU3RhdHVzIDxlbT5Hb2FsIFN0YXR1czwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5Hb2FsU3RhdHVzCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUdvYWxTdGF0dXNBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXNBcnJheSA8ZW0+R29hbCBTdGF0dXMgQXJyYXk8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1c0FycmF5CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUdvYWxTdGF0dXNBcnJheUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgdGhlIGRlZmF1bHQgY2FzZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUVPYmplY3RBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKK30gLy8gQWN0aW9ubGliX2RhdGF0eXBlc0FkYXB0ZXJGYWN0b3J5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9hY3Rpb25saWJfZGF0YXR5cGVzL3V0aWwvQWN0aW9ubGliX2RhdGF0eXBlc1N3aXRjaC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy91dGlsL0FjdGlvbmxpYl9kYXRhdHlwZXNTd2l0Y2guamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iOGRiY2YyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvYWN0aW9ubGliX2RhdGF0eXBlcy91dGlsL0FjdGlvbmxpYl9kYXRhdHlwZXNTd2l0Y2guamF2YQpAQCAtMCwwICsxLDE1MiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMudXRpbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5Td2l0Y2g7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbElEOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkdvYWxTdGF0dXM7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuR29hbFN0YXR1c0FycmF5OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBUaGUgPGI+U3dpdGNoPC9iPiBmb3IgdGhlIG1vZGVsJ3MgaW5oZXJpdGFuY2UgaGllcmFyY2h5LgorICogSXQgc3VwcG9ydHMgdGhlIGNhbGwge0BsaW5rICNkb1N3aXRjaChFT2JqZWN0KSBkb1N3aXRjaChvYmplY3QpfSB0byBpbnZva2UgdGhlIDxjb2RlPmNhc2VYWFg8L2NvZGU+IG1ldGhvZCBmb3IgZWFjaCBjbGFzcyBvZiB0aGUgbW9kZWwsCisgKiBzdGFydGluZyB3aXRoIHRoZSBhY3R1YWwgY2xhc3Mgb2YgdGhlIG9iamVjdAorICogYW5kIHByb2NlZWRpbmcgdXAgdGhlIGluaGVyaXRhbmNlIGhpZXJhcmNoeQorICogdW50aWwgYSBub24tbnVsbCByZXN1bHQgaXMgcmV0dXJuZWQsCisgKiB3aGljaCBpcyB0aGUgcmVzdWx0IG9mIHRoZSBzd2l0Y2guCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEFjdGlvbmxpYl9kYXRhdHlwZXNTd2l0Y2g8VD4gZXh0ZW5kcyBTd2l0Y2g8VD4geworCS8qKgorCSAqIFRoZSBjYWNoZWQgbW9kZWwgcGFja2FnZQorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UgbW9kZWxQYWNrYWdlOworCisJLyoqCisJICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgc3dpdGNoLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBY3Rpb25saWJfZGF0YXR5cGVzU3dpdGNoKCkgeworCQlpZiAobW9kZWxQYWNrYWdlID09IG51bGwpIHsKKwkJCW1vZGVsUGFja2FnZSA9IEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRTsKKwkJfQorCX0KKworCS8qKgorCSAqIENoZWNrcyB3aGV0aGVyIHRoaXMgaXMgYSBzd2l0Y2ggZm9yIHRoZSBnaXZlbiBwYWNrYWdlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtZXRlciBlUGFja2FnZSB0aGUgcGFja2FnZSBpbiBxdWVzdGlvbi4KKwkgKiBAcmV0dXJuIHdoZXRoZXIgdGhpcyBpcyBhIHN3aXRjaCBmb3IgdGhlIGdpdmVuIHBhY2thZ2UuCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBib29sZWFuIGlzU3dpdGNoRm9yKEVQYWNrYWdlIGVQYWNrYWdlKSB7CisJCXJldHVybiBlUGFja2FnZSA9PSBtb2RlbFBhY2thZ2U7CisJfQorCisJLyoqCisJICogQ2FsbHMgPGNvZGU+Y2FzZVhYWDwvY29kZT4gZm9yIGVhY2ggY2xhc3Mgb2YgdGhlIG1vZGVsIHVudGlsIG9uZSByZXR1cm5zIGEgbm9uIG51bGwgcmVzdWx0OyBpdCB5aWVsZHMgdGhhdCByZXN1bHQuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBmaXJzdCBub24tbnVsbCByZXN1bHQgcmV0dXJuZWQgYnkgYSA8Y29kZT5jYXNlWFhYPC9jb2RlPiBjYWxsLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgVCBkb1N3aXRjaChpbnQgY2xhc3NpZmllcklELCBFT2JqZWN0IHRoZUVPYmplY3QpIHsKKwkJc3dpdGNoIChjbGFzc2lmaWVySUQpIHsKKwkJCWNhc2UgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuR09BTF9JRDogeworCQkJCUdvYWxJRCBnb2FsSUQgPSAoR29hbElEKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlR29hbElEKGdvYWxJRCk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5HT0FMX1NUQVRVUzogeworCQkJCUdvYWxTdGF0dXMgZ29hbFN0YXR1cyA9IChHb2FsU3RhdHVzKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlR29hbFN0YXR1cyhnb2FsU3RhdHVzKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLkdPQUxfU1RBVFVTX0FSUkFZOiB7CisJCQkJR29hbFN0YXR1c0FycmF5IGdvYWxTdGF0dXNBcnJheSA9IChHb2FsU3RhdHVzQXJyYXkpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VHb2FsU3RhdHVzQXJyYXkoZ29hbFN0YXR1c0FycmF5KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQlkZWZhdWx0OiByZXR1cm4gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCX0KKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Hb2FsIElEPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+R29hbCBJRDwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUdvYWxJRChHb2FsSUQgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkdvYWwgU3RhdHVzPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+R29hbCBTdGF0dXM8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VHb2FsU3RhdHVzKEdvYWxTdGF0dXMgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkdvYWwgU3RhdHVzIEFycmF5PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+R29hbCBTdGF0dXMgQXJyYXk8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VHb2FsU3RhdHVzQXJyYXkoR29hbFN0YXR1c0FycmF5IG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5FT2JqZWN0PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2gsIGJ1dCB0aGlzIGlzIHRoZSBsYXN0IGNhc2UgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkVPYmplY3Q8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBUIGRlZmF1bHRDYXNlKEVPYmplY3Qgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworfSAvLyBBY3Rpb25saWJfZGF0YXR5cGVzU3dpdGNoCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljQXJyYXkuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNBcnJheS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBkNWMzZWUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljQXJyYXkuamF2YQpAQCAtMCwwICsxLDgzIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSGVhZGVyOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5EaWFnbm9zdGljIEFycmF5PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljQXJyYXkjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljQXJyYXkjZ2V0U3RhdHVzIDxlbT5TdGF0dXM8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljQXJyYXkjZ2V0VmFsdWVzIDxlbT5WYWx1ZXM8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UjZ2V0RGlhZ25vc3RpY0FycmF5KCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIERpYWdub3N0aWNBcnJheSBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldEhlYWRlcihIZWFkZXIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlI2dldERpYWdub3N0aWNBcnJheV9IZWFkZXIoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlIZWFkZXIgZ2V0SGVhZGVyKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY0FycmF5I2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldEhlYWRlcigpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0SGVhZGVyKEhlYWRlciB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5TdGF0dXM8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0LgorCSAqIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIHtAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY1N0YXR1c30uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5TdGF0dXM8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+U3RhdHVzPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0LgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZSNnZXREaWFnbm9zdGljQXJyYXlfU3RhdHVzKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFTGlzdDxEaWFnbm9zdGljU3RhdHVzPiBnZXRTdGF0dXMoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlZhbHVlczwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QuCisJICogVGhlIGxpc3QgY29udGVudHMgYXJlIG9mIHR5cGUge0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5LZXlWYWx1ZX0uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5WYWx1ZXM8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+VmFsdWVzPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0LgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZSNnZXREaWFnbm9zdGljQXJyYXlfVmFsdWVzKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFTGlzdDxLZXlWYWx1ZT4gZ2V0VmFsdWVzKCk7CisKK30gLy8gRGlhZ25vc3RpY0FycmF5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljU3RhdHVzLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljU3RhdHVzLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTJmMzU3YQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNTdGF0dXMuamF2YQpAQCAtMCwwICsxLDIyMiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5EaWFnbm9zdGljIFN0YXR1czwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY1N0YXR1cyNnZXRPSyA8ZW0+T0s8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljU3RhdHVzI2dldFdBUk4gPGVtPldBUk48L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljU3RhdHVzI2dldEVSUk9SIDxlbT5FUlJPUjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNTdGF0dXMjZ2V0TGV2ZWwgPGVtPkxldmVsPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY1N0YXR1cyNnZXROYW1lIDxlbT5OYW1lPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY1N0YXR1cyNnZXRNZXNzYWdlIDxlbT5NZXNzYWdlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY1N0YXR1cyNnZXRIYXJkd2FyZV9pZCA8ZW0+SGFyZHdhcmUgaWQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljU3RhdHVzI2dldFZhbHVlcyA8ZW0+VmFsdWVzPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlI2dldERpYWdub3N0aWNTdGF0dXMoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgRGlhZ25vc3RpY1N0YXR1cyBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPk9LPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5PSzwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+T0s8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldE9LKEJ5dGUpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlI2dldERpYWdub3N0aWNTdGF0dXNfT0soKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuQnl0ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0T0soKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljU3RhdHVzI2dldE9LIDxlbT5PSzwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+T0s8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldE9LKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRPSyhPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+V0FSTjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+V0FSTjwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+V0FSTjwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0V0FSTihCeXRlKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZSNnZXREaWFnbm9zdGljU3RhdHVzX1dBUk4oKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuQnl0ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0V0FSTigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNTdGF0dXMjZ2V0V0FSTiA8ZW0+V0FSTjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+V0FSTjwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0V0FSTigpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0V0FSTihPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+RVJST1I8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkVSUk9SPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5FUlJPUjwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0RVJST1IoQnl0ZSkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UjZ2V0RGlhZ25vc3RpY1N0YXR1c19FUlJPUigpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5CeXRlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRFUlJPUigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNTdGF0dXMjZ2V0RVJST1IgPGVtPkVSUk9SPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5FUlJPUjwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0RVJST1IoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEVSUk9SKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5MZXZlbDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+TGV2ZWw8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkxldmVsPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRMZXZlbChCeXRlKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZSNnZXREaWFnbm9zdGljU3RhdHVzX0xldmVsKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkJ5dGUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldExldmVsKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY1N0YXR1cyNnZXRMZXZlbCA8ZW0+TGV2ZWw8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkxldmVsPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRMZXZlbCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0TGV2ZWwoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPk5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPk5hbWU8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPk5hbWU8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldE5hbWUoU3RyaW5nKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZSNnZXREaWFnbm9zdGljU3RhdHVzX05hbWUoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RyaW5nIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXROYW1lKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY1N0YXR1cyNnZXROYW1lIDxlbT5OYW1lPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5OYW1lPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXROYW1lKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXROYW1lKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5NZXNzYWdlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5NZXNzYWdlPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5NZXNzYWdlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRNZXNzYWdlKFN0cmluZykKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UjZ2V0RGlhZ25vc3RpY1N0YXR1c19NZXNzYWdlKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0cmluZyIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0TWVzc2FnZSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNTdGF0dXMjZ2V0TWVzc2FnZSA8ZW0+TWVzc2FnZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TWVzc2FnZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0TWVzc2FnZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0TWVzc2FnZShPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+SGFyZHdhcmUgaWQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkhhcmR3YXJlIGlkPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5IYXJkd2FyZSBpZDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0SGFyZHdhcmVfaWQoU3RyaW5nKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZSNnZXREaWFnbm9zdGljU3RhdHVzX0hhcmR3YXJlX2lkKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0cmluZyIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0SGFyZHdhcmVfaWQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljU3RhdHVzI2dldEhhcmR3YXJlX2lkIDxlbT5IYXJkd2FyZSBpZDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+SGFyZHdhcmUgaWQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldEhhcmR3YXJlX2lkKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRIYXJkd2FyZV9pZChPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VmFsdWVzPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdC4KKwkgKiBUaGUgbGlzdCBjb250ZW50cyBhcmUgb2YgdHlwZSB7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLktleVZhbHVlfS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlZhbHVlczwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdCBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5WYWx1ZXM8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlI2dldERpYWdub3N0aWNTdGF0dXNfVmFsdWVzKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFTGlzdDxLZXlWYWx1ZT4gZ2V0VmFsdWVzKCk7CisKK30gLy8gRGlhZ25vc3RpY1N0YXR1cwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hYjk5OTNhCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5LmphdmEKQEAgLTAsMCArMSw2MCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBUaGUgPGI+RmFjdG9yeTwvYj4gZm9yIHRoZSBtb2RlbC4KKyAqIEl0IHByb3ZpZGVzIGEgY3JlYXRlIG1ldGhvZCBmb3IgZWFjaCBub24tYWJzdHJhY3QgY2xhc3Mgb2YgdGhlIG1vZGVsLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBEaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkgZXh0ZW5kcyBFRmFjdG9yeSB7CisJLyoqCisJICogVGhlIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiB0aGUgZmFjdG9yeS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlEaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkgZUlOU1RBTkNFID0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC5pbml0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkRpYWdub3N0aWMgQXJyYXk8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkRpYWdub3N0aWMgQXJyYXk8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCURpYWdub3N0aWNBcnJheSBjcmVhdGVEaWFnbm9zdGljQXJyYXkoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+RGlhZ25vc3RpYyBTdGF0dXM8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkRpYWdub3N0aWMgU3RhdHVzPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlEaWFnbm9zdGljU3RhdHVzIGNyZWF0ZURpYWdub3N0aWNTdGF0dXMoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+S2V5IFZhbHVlPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5LZXkgVmFsdWU8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUtleVZhbHVlIGNyZWF0ZUtleVZhbHVlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBwYWNrYWdlIHN1cHBvcnRlZCBieSB0aGlzIGZhY3RvcnkuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBwYWNrYWdlIHN1cHBvcnRlZCBieSB0aGlzIGZhY3RvcnkuCisJICogQGdlbmVyYXRlZAorCSAqLworCURpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZSBnZXREaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UoKTsKKworfSAvLyBEaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjhiZThlZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL0RpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5qYXZhCkBAIC0wLDAgKzEsNTkzIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogVGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGUgbW9kZWwuCisgKiBJdCBjb250YWlucyBhY2Nlc3NvcnMgZm9yIHRoZSBtZXRhIG9iamVjdHMgdG8gcmVwcmVzZW50CisgKiA8dWw+CisgKiA8bGk+ZWFjaCBjbGFzcyw8L2xpPgorICogPGxpPmVhY2ggZmVhdHVyZSBvZiBlYWNoIGNsYXNzLDwvbGk+CisgKiA8bGk+ZWFjaCBvcGVyYXRpb24gb2YgZWFjaCBjbGFzcyw8L2xpPgorICogPGxpPmVhY2ggZW51bSw8L2xpPgorICogPGxpPmFuZCBlYWNoIGRhdGEgdHlwZTwvbGk+CisgKiA8L3VsPgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkKKyAqIEBtb2RlbCBraW5kPSJwYWNrYWdlIgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZSBleHRlbmRzIEVQYWNrYWdlIHsKKwkvKioKKwkgKiBUaGUgcGFja2FnZSBuYW1lLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCVN0cmluZyBlTkFNRSA9ICJkaWFnbm9zdGljX2RhdGF0eXBlcyI7CisKKwkvKioKKwkgKiBUaGUgcGFja2FnZSBuYW1lc3BhY2UgVVJJLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCVN0cmluZyBlTlNfVVJJID0gImh0dHA6Ly8vUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy5lY29yZSI7CisKKwkvKioKKwkgKiBUaGUgcGFja2FnZSBuYW1lc3BhY2UgbmFtZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTdHJpbmcgZU5TX1BSRUZJWCA9ICJSb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzIjsKKworCS8qKgorCSAqIFRoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIHBhY2thZ2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlIGVJTlNUQU5DRSA9IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwuaW5pdCgpOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC5EaWFnbm9zdGljQXJyYXlJbXBsIDxlbT5EaWFnbm9zdGljIEFycmF5PC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuRGlhZ25vc3RpY0FycmF5SW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXREaWFnbm9zdGljQXJyYXkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgRElBR05PU1RJQ19BUlJBWSA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgRElBR05PU1RJQ19BUlJBWV9fSEVBREVSID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TdGF0dXM8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IERJQUdOT1NUSUNfQVJSQVlfX1NUQVRVUyA9IDE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+VmFsdWVzPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBESUFHTk9TVElDX0FSUkFZX19WQUxVRVMgPSAyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkRpYWdub3N0aWMgQXJyYXk8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgRElBR05PU1RJQ19BUlJBWV9GRUFUVVJFX0NPVU5UID0gMzsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5EaWFnbm9zdGljIEFycmF5PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IERJQUdOT1NUSUNfQVJSQVlfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuRGlhZ25vc3RpY1N0YXR1c0ltcGwgPGVtPkRpYWdub3N0aWMgU3RhdHVzPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuRGlhZ25vc3RpY1N0YXR1c0ltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0RGlhZ25vc3RpY1N0YXR1cygpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBESUFHTk9TVElDX1NUQVRVUyA9IDE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+T0s8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBESUFHTk9TVElDX1NUQVRVU19fT0sgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPldBUk48L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBESUFHTk9TVElDX1NUQVRVU19fV0FSTiA9IDE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RVJST1I8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBESUFHTk9TVElDX1NUQVRVU19fRVJST1IgPSAyOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxldmVsPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgRElBR05PU1RJQ19TVEFUVVNfX0xFVkVMID0gMzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgRElBR05PU1RJQ19TVEFUVVNfX05BTUUgPSA0OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1lc3NhZ2U8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBESUFHTk9TVElDX1NUQVRVU19fTUVTU0FHRSA9IDU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGFyZHdhcmUgaWQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBESUFHTk9TVElDX1NUQVRVU19fSEFSRFdBUkVfSUQgPSA2OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlZhbHVlczwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgRElBR05PU1RJQ19TVEFUVVNfX1ZBTFVFUyA9IDc7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+RGlhZ25vc3RpYyBTdGF0dXM8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgRElBR05PU1RJQ19TVEFUVVNfRkVBVFVSRV9DT1VOVCA9IDg7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+RGlhZ25vc3RpYyBTdGF0dXM8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgRElBR05PU1RJQ19TVEFUVVNfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuS2V5VmFsdWVJbXBsIDxlbT5LZXkgVmFsdWU8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC5LZXlWYWx1ZUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0S2V5VmFsdWUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgS0VZX1ZBTFVFID0gMjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5LZXk8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBLRVlfVkFMVUVfX0tFWSA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+VmFsdWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBLRVlfVkFMVUVfX1ZBTFVFID0gMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5LZXkgVmFsdWU8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgS0VZX1ZBTFVFX0ZFQVRVUkVfQ09VTlQgPSAyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPktleSBWYWx1ZTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBLRVlfVkFMVUVfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNBcnJheSA8ZW0+RGlhZ25vc3RpYyBBcnJheTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5EaWFnbm9zdGljIEFycmF5PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNBcnJheQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0RGlhZ25vc3RpY0FycmF5KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljQXJyYXkjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5IZWFkZXI8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY0FycmF5I2dldEhlYWRlcigpCisJICogQHNlZSAjZ2V0RGlhZ25vc3RpY0FycmF5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXREaWFnbm9zdGljQXJyYXlfSGVhZGVyKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0ICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNBcnJheSNnZXRTdGF0dXMgPGVtPlN0YXR1czwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0ICc8ZW0+U3RhdHVzPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNBcnJheSNnZXRTdGF0dXMoKQorCSAqIEBzZWUgI2dldERpYWdub3N0aWNBcnJheSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0RGlhZ25vc3RpY0FycmF5X1N0YXR1cygpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdCAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljQXJyYXkjZ2V0VmFsdWVzIDxlbT5WYWx1ZXM8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdCAnPGVtPlZhbHVlczwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljQXJyYXkjZ2V0VmFsdWVzKCkKKwkgKiBAc2VlICNnZXREaWFnbm9zdGljQXJyYXkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldERpYWdub3N0aWNBcnJheV9WYWx1ZXMoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljU3RhdHVzIDxlbT5EaWFnbm9zdGljIFN0YXR1czwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5EaWFnbm9zdGljIFN0YXR1czwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljU3RhdHVzCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXREaWFnbm9zdGljU3RhdHVzKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljU3RhdHVzI2dldE9LIDxlbT5PSzwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPk9LPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNTdGF0dXMjZ2V0T0soKQorCSAqIEBzZWUgI2dldERpYWdub3N0aWNTdGF0dXMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldERpYWdub3N0aWNTdGF0dXNfT0soKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNTdGF0dXMjZ2V0V0FSTiA8ZW0+V0FSTjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPldBUk48L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY1N0YXR1cyNnZXRXQVJOKCkKKwkgKiBAc2VlICNnZXREaWFnbm9zdGljU3RhdHVzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXREaWFnbm9zdGljU3RhdHVzX1dBUk4oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNTdGF0dXMjZ2V0RVJST1IgPGVtPkVSUk9SPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+RVJST1I8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY1N0YXR1cyNnZXRFUlJPUigpCisJICogQHNlZSAjZ2V0RGlhZ25vc3RpY1N0YXR1cygpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0RGlhZ25vc3RpY1N0YXR1c19FUlJPUigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY1N0YXR1cyNnZXRMZXZlbCA8ZW0+TGV2ZWw8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5MZXZlbDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljU3RhdHVzI2dldExldmVsKCkKKwkgKiBAc2VlICNnZXREaWFnbm9zdGljU3RhdHVzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXREaWFnbm9zdGljU3RhdHVzX0xldmVsKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljU3RhdHVzI2dldE5hbWUgPGVtPk5hbWU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5OYW1lPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNTdGF0dXMjZ2V0TmFtZSgpCisJICogQHNlZSAjZ2V0RGlhZ25vc3RpY1N0YXR1cygpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0RGlhZ25vc3RpY1N0YXR1c19OYW1lKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljU3RhdHVzI2dldE1lc3NhZ2UgPGVtPk1lc3NhZ2U8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5NZXNzYWdlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNTdGF0dXMjZ2V0TWVzc2FnZSgpCisJICogQHNlZSAjZ2V0RGlhZ25vc3RpY1N0YXR1cygpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0RGlhZ25vc3RpY1N0YXR1c19NZXNzYWdlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljU3RhdHVzI2dldEhhcmR3YXJlX2lkIDxlbT5IYXJkd2FyZSBpZDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkhhcmR3YXJlIGlkPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNTdGF0dXMjZ2V0SGFyZHdhcmVfaWQoKQorCSAqIEBzZWUgI2dldERpYWdub3N0aWNTdGF0dXMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldERpYWdub3N0aWNTdGF0dXNfSGFyZHdhcmVfaWQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY1N0YXR1cyNnZXRWYWx1ZXMgPGVtPlZhbHVlczwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0ICc8ZW0+VmFsdWVzPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNTdGF0dXMjZ2V0VmFsdWVzKCkKKwkgKiBAc2VlICNnZXREaWFnbm9zdGljU3RhdHVzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXREaWFnbm9zdGljU3RhdHVzX1ZhbHVlcygpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLktleVZhbHVlIDxlbT5LZXkgVmFsdWU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+S2V5IFZhbHVlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLktleVZhbHVlCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRLZXlWYWx1ZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuS2V5VmFsdWUjZ2V0S2V5IDxlbT5LZXk8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5LZXk8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuS2V5VmFsdWUjZ2V0S2V5KCkKKwkgKiBAc2VlICNnZXRLZXlWYWx1ZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0S2V5VmFsdWVfS2V5KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5LZXlWYWx1ZSNnZXRWYWx1ZSA8ZW0+VmFsdWU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5WYWx1ZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5LZXlWYWx1ZSNnZXRWYWx1ZSgpCisJICogQHNlZSAjZ2V0S2V5VmFsdWUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEtleVZhbHVlX1ZhbHVlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBmYWN0b3J5IHRoYXQgY3JlYXRlcyB0aGUgaW5zdGFuY2VzIG9mIHRoZSBtb2RlbC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIGZhY3RvcnkgdGhhdCBjcmVhdGVzIHRoZSBpbnN0YW5jZXMgb2YgdGhlIG1vZGVsLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlEaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkgZ2V0RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5KCk7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIERlZmluZXMgbGl0ZXJhbHMgZm9yIHRoZSBtZXRhIG9iamVjdHMgdGhhdCByZXByZXNlbnQKKwkgKiA8dWw+CisJICogPGxpPmVhY2ggY2xhc3MsPC9saT4KKwkgKiA8bGk+ZWFjaCBmZWF0dXJlIG9mIGVhY2ggY2xhc3MsPC9saT4KKwkgKiA8bGk+ZWFjaCBvcGVyYXRpb24gb2YgZWFjaCBjbGFzcyw8L2xpPgorCSAqIDxsaT5lYWNoIGVudW0sPC9saT4KKwkgKiA8bGk+YW5kIGVhY2ggZGF0YSB0eXBlPC9saT4KKwkgKiA8L3VsPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnRlcmZhY2UgTGl0ZXJhbHMgeworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLkRpYWdub3N0aWNBcnJheUltcGwgPGVtPkRpYWdub3N0aWMgQXJyYXk8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC5EaWFnbm9zdGljQXJyYXlJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXREaWFnbm9zdGljQXJyYXkoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgRElBR05PU1RJQ19BUlJBWSA9IGVJTlNUQU5DRS5nZXREaWFnbm9zdGljQXJyYXkoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIERJQUdOT1NUSUNfQVJSQVlfX0hFQURFUiA9IGVJTlNUQU5DRS5nZXREaWFnbm9zdGljQXJyYXlfSGVhZGVyKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5TdGF0dXM8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0IGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIERJQUdOT1NUSUNfQVJSQVlfX1NUQVRVUyA9IGVJTlNUQU5DRS5nZXREaWFnbm9zdGljQXJyYXlfU3RhdHVzKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5WYWx1ZXM8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0IGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIERJQUdOT1NUSUNfQVJSQVlfX1ZBTFVFUyA9IGVJTlNUQU5DRS5nZXREaWFnbm9zdGljQXJyYXlfVmFsdWVzKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC5EaWFnbm9zdGljU3RhdHVzSW1wbCA8ZW0+RGlhZ25vc3RpYyBTdGF0dXM8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC5EaWFnbm9zdGljU3RhdHVzSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0RGlhZ25vc3RpY1N0YXR1cygpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBESUFHTk9TVElDX1NUQVRVUyA9IGVJTlNUQU5DRS5nZXREaWFnbm9zdGljU3RhdHVzKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5PSzwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIERJQUdOT1NUSUNfU1RBVFVTX19PSyA9IGVJTlNUQU5DRS5nZXREaWFnbm9zdGljU3RhdHVzX09LKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5XQVJOPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgRElBR05PU1RJQ19TVEFUVVNfX1dBUk4gPSBlSU5TVEFOQ0UuZ2V0RGlhZ25vc3RpY1N0YXR1c19XQVJOKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5FUlJPUjwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIERJQUdOT1NUSUNfU1RBVFVTX19FUlJPUiA9IGVJTlNUQU5DRS5nZXREaWFnbm9zdGljU3RhdHVzX0VSUk9SKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5MZXZlbDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIERJQUdOT1NUSUNfU1RBVFVTX19MRVZFTCA9IGVJTlNUQU5DRS5nZXREaWFnbm9zdGljU3RhdHVzX0xldmVsKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5OYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgRElBR05PU1RJQ19TVEFUVVNfX05BTUUgPSBlSU5TVEFOQ0UuZ2V0RGlhZ25vc3RpY1N0YXR1c19OYW1lKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5NZXNzYWdlPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgRElBR05PU1RJQ19TVEFUVVNfX01FU1NBR0UgPSBlSU5TVEFOQ0UuZ2V0RGlhZ25vc3RpY1N0YXR1c19NZXNzYWdlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5IYXJkd2FyZSBpZDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIERJQUdOT1NUSUNfU1RBVFVTX19IQVJEV0FSRV9JRCA9IGVJTlNUQU5DRS5nZXREaWFnbm9zdGljU3RhdHVzX0hhcmR3YXJlX2lkKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5WYWx1ZXM8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0IGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIERJQUdOT1NUSUNfU1RBVFVTX19WQUxVRVMgPSBlSU5TVEFOQ0UuZ2V0RGlhZ25vc3RpY1N0YXR1c19WYWx1ZXMoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLktleVZhbHVlSW1wbCA8ZW0+S2V5IFZhbHVlPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuS2V5VmFsdWVJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRLZXlWYWx1ZSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBLRVlfVkFMVUUgPSBlSU5TVEFOQ0UuZ2V0S2V5VmFsdWUoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPktleTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIEtFWV9WQUxVRV9fS0VZID0gZUlOU1RBTkNFLmdldEtleVZhbHVlX0tleSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VmFsdWU8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBLRVlfVkFMVUVfX1ZBTFVFID0gZUlOU1RBTkNFLmdldEtleVZhbHVlX1ZhbHVlKCk7CisKKwl9CisKK30gLy8gRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9LZXlWYWx1ZS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvS2V5VmFsdWUuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lODA0YWExCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvS2V5VmFsdWUuamF2YQpAQCAtMCwwICsxLDc1IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+S2V5IFZhbHVlPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5LZXlWYWx1ZSNnZXRLZXkgPGVtPktleTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLktleVZhbHVlI2dldFZhbHVlIDxlbT5WYWx1ZTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZSNnZXRLZXlWYWx1ZSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBLZXlWYWx1ZSBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPktleTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+S2V5PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5LZXk8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldEtleShTdHJpbmcpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlI2dldEtleVZhbHVlX0tleSgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdHJpbmciIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldEtleSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLktleVZhbHVlI2dldEtleSA8ZW0+S2V5PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5LZXk8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldEtleSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0S2V5KE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5WYWx1ZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+VmFsdWU8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlZhbHVlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRWYWx1ZShTdHJpbmcpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlI2dldEtleVZhbHVlX1ZhbHVlKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0cmluZyIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0VmFsdWUoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5LZXlWYWx1ZSNnZXRWYWx1ZSA8ZW0+VmFsdWU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlZhbHVlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRWYWx1ZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0VmFsdWUoT2JqZWN0IHZhbHVlKTsKKworfSAvLyBLZXlWYWx1ZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljQXJyYXlJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNBcnJheUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NWFhZmZjCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljQXJyYXlJbXBsLmphdmEKQEAgLTAsMCArMSwyNTMgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb247CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uQ2hhaW47CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuRU9iamVjdENvbnRhaW5tZW50RUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuSW50ZXJuYWxFTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY0FycmF5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljU3RhdHVzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLktleVZhbHVlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkRpYWdub3N0aWMgQXJyYXk8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLkRpYWdub3N0aWNBcnJheUltcGwjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLkRpYWdub3N0aWNBcnJheUltcGwjZ2V0U3RhdHVzIDxlbT5TdGF0dXM8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLkRpYWdub3N0aWNBcnJheUltcGwjZ2V0VmFsdWVzIDxlbT5WYWx1ZXM8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBEaWFnbm9zdGljQXJyYXlJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIERpYWdub3N0aWNBcnJheSB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0SGVhZGVyKCkgPGVtPkhlYWRlcjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SGVhZGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgSGVhZGVyIGhlYWRlcjsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFN0YXR1cygpIDxlbT5TdGF0dXM8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0U3RhdHVzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRUxpc3Q8RGlhZ25vc3RpY1N0YXR1cz4gc3RhdHVzOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0VmFsdWVzKCkgPGVtPlZhbHVlczwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRWYWx1ZXMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBFTGlzdDxLZXlWYWx1ZT4gdmFsdWVzOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIERpYWdub3N0aWNBcnJheUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuRElBR05PU1RJQ19BUlJBWTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgSGVhZGVyIGdldEhlYWRlcigpIHsKKwkJcmV0dXJuIGhlYWRlcjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRIZWFkZXIoSGVhZGVyIG5ld0hlYWRlciwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlIZWFkZXIgb2xkSGVhZGVyID0gaGVhZGVyOworCQloZWFkZXIgPSBuZXdIZWFkZXI7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5ESUFHTk9TVElDX0FSUkFZX19IRUFERVIsIG9sZEhlYWRlciwgbmV3SGVhZGVyKTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRIZWFkZXIoSGVhZGVyIG5ld0hlYWRlcikgeworCQlpZiAobmV3SGVhZGVyICE9IGhlYWRlcikgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAoaGVhZGVyICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KWhlYWRlcikuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5ESUFHTk9TVElDX0FSUkFZX19IRUFERVIsIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld0hlYWRlciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdIZWFkZXIpLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuRElBR05PU1RJQ19BUlJBWV9fSEVBREVSLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldEhlYWRlcihuZXdIZWFkZXIsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfQVJSQVlfX0hFQURFUiwgbmV3SGVhZGVyLCBuZXdIZWFkZXIpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUxpc3Q8RGlhZ25vc3RpY1N0YXR1cz4gZ2V0U3RhdHVzKCkgeworCQlpZiAoc3RhdHVzID09IG51bGwpIHsKKwkJCXN0YXR1cyA9IG5ldyBFT2JqZWN0Q29udGFpbm1lbnRFTGlzdDxEaWFnbm9zdGljU3RhdHVzPihEaWFnbm9zdGljU3RhdHVzLmNsYXNzLCB0aGlzLCBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuRElBR05PU1RJQ19BUlJBWV9fU1RBVFVTKTsKKwkJfQorCQlyZXR1cm4gc3RhdHVzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFTGlzdDxLZXlWYWx1ZT4gZ2V0VmFsdWVzKCkgeworCQlpZiAodmFsdWVzID09IG51bGwpIHsKKwkJCXZhbHVlcyA9IG5ldyBFT2JqZWN0Q29udGFpbm1lbnRFTGlzdDxLZXlWYWx1ZT4oS2V5VmFsdWUuY2xhc3MsIHRoaXMsIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5ESUFHTk9TVElDX0FSUkFZX19WQUxVRVMpOworCQl9CisJCXJldHVybiB2YWx1ZXM7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGVJbnZlcnNlUmVtb3ZlKEludGVybmFsRU9iamVjdCBvdGhlckVuZCwgaW50IGZlYXR1cmVJRCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuRElBR05PU1RJQ19BUlJBWV9fSEVBREVSOgorCQkJCXJldHVybiBiYXNpY1NldEhlYWRlcihudWxsLCBtc2dzKTsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfQVJSQVlfX1NUQVRVUzoKKwkJCQlyZXR1cm4gKChJbnRlcm5hbEVMaXN0PD8+KWdldFN0YXR1cygpKS5iYXNpY1JlbW92ZShvdGhlckVuZCwgbXNncyk7CisJCQljYXNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5ESUFHTk9TVElDX0FSUkFZX19WQUxVRVM6CisJCQkJcmV0dXJuICgoSW50ZXJuYWxFTGlzdDw/PilnZXRWYWx1ZXMoKSkuYmFzaWNSZW1vdmUob3RoZXJFbmQsIG1zZ3MpOworCQl9CisJCXJldHVybiBzdXBlci5lSW52ZXJzZVJlbW92ZShvdGhlckVuZCwgZmVhdHVyZUlELCBtc2dzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5ESUFHTk9TVElDX0FSUkFZX19IRUFERVI6CisJCQkJcmV0dXJuIGdldEhlYWRlcigpOworCQkJY2FzZSBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuRElBR05PU1RJQ19BUlJBWV9fU1RBVFVTOgorCQkJCXJldHVybiBnZXRTdGF0dXMoKTsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfQVJSQVlfX1ZBTFVFUzoKKwkJCQlyZXR1cm4gZ2V0VmFsdWVzKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQFN1cHByZXNzV2FybmluZ3MoInVuY2hlY2tlZCIpCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfQVJSQVlfX0hFQURFUjoKKwkJCQlzZXRIZWFkZXIoKEhlYWRlciluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuRElBR05PU1RJQ19BUlJBWV9fU1RBVFVTOgorCQkJCWdldFN0YXR1cygpLmNsZWFyKCk7CisJCQkJZ2V0U3RhdHVzKCkuYWRkQWxsKChDb2xsZWN0aW9uPD8gZXh0ZW5kcyBEaWFnbm9zdGljU3RhdHVzPiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuRElBR05PU1RJQ19BUlJBWV9fVkFMVUVTOgorCQkJCWdldFZhbHVlcygpLmNsZWFyKCk7CisJCQkJZ2V0VmFsdWVzKCkuYWRkQWxsKChDb2xsZWN0aW9uPD8gZXh0ZW5kcyBLZXlWYWx1ZT4pbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5ESUFHTk9TVElDX0FSUkFZX19IRUFERVI6CisJCQkJc2V0SGVhZGVyKChIZWFkZXIpbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuRElBR05PU1RJQ19BUlJBWV9fU1RBVFVTOgorCQkJCWdldFN0YXR1cygpLmNsZWFyKCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuRElBR05PU1RJQ19BUlJBWV9fVkFMVUVTOgorCQkJCWdldFZhbHVlcygpLmNsZWFyKCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5ESUFHTk9TVElDX0FSUkFZX19IRUFERVI6CisJCQkJcmV0dXJuIGhlYWRlciAhPSBudWxsOworCQkJY2FzZSBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuRElBR05PU1RJQ19BUlJBWV9fU1RBVFVTOgorCQkJCXJldHVybiBzdGF0dXMgIT0gbnVsbCAmJiAhc3RhdHVzLmlzRW1wdHkoKTsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfQVJSQVlfX1ZBTFVFUzoKKwkJCQlyZXR1cm4gdmFsdWVzICE9IG51bGwgJiYgIXZhbHVlcy5pc0VtcHR5KCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworfSAvLyBEaWFnbm9zdGljQXJyYXlJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNTdGF0dXNJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNTdGF0dXNJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjg0NWMzMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY1N0YXR1c0ltcGwuamF2YQpAQCAtMCwwICsxLDU0MSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb25DaGFpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5FT2JqZWN0Q29udGFpbm1lbnRFTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5JbnRlcm5hbEVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljU3RhdHVzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLktleVZhbHVlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+RGlhZ25vc3RpYyBTdGF0dXM8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLkRpYWdub3N0aWNTdGF0dXNJbXBsI2dldE9LIDxlbT5PSzwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuRGlhZ25vc3RpY1N0YXR1c0ltcGwjZ2V0V0FSTiA8ZW0+V0FSTjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuRGlhZ25vc3RpY1N0YXR1c0ltcGwjZ2V0RVJST1IgPGVtPkVSUk9SPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC5EaWFnbm9zdGljU3RhdHVzSW1wbCNnZXRMZXZlbCA8ZW0+TGV2ZWw8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLkRpYWdub3N0aWNTdGF0dXNJbXBsI2dldE5hbWUgPGVtPk5hbWU8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLkRpYWdub3N0aWNTdGF0dXNJbXBsI2dldE1lc3NhZ2UgPGVtPk1lc3NhZ2U8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLkRpYWdub3N0aWNTdGF0dXNJbXBsI2dldEhhcmR3YXJlX2lkIDxlbT5IYXJkd2FyZSBpZDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuRGlhZ25vc3RpY1N0YXR1c0ltcGwjZ2V0VmFsdWVzIDxlbT5WYWx1ZXM8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBEaWFnbm9zdGljU3RhdHVzSW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBEaWFnbm9zdGljU3RhdHVzIHsKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0T0soKSA8ZW0+T0s8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldE9LKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBPS19FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRPSygpIDxlbT5PSzwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0T0soKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3Qgb2sgPSBPS19FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRXQVJOKCkgPGVtPldBUk48L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFdBUk4oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFdBUk5fRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0V0FSTigpIDxlbT5XQVJOPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRXQVJOKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHdhcm4gPSBXQVJOX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEVSUk9SKCkgPGVtPkVSUk9SPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRFUlJPUigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgRVJST1JfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0RVJST1IoKSA8ZW0+RVJST1I8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEVSUk9SKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IGVycm9yID0gRVJST1JfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TGV2ZWwoKSA8ZW0+TGV2ZWw8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExldmVsKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBMRVZFTF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRMZXZlbCgpIDxlbT5MZXZlbDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0TGV2ZWwoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgbGV2ZWwgPSBMRVZFTF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXROYW1lKCkgPGVtPk5hbWU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldE5hbWUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IE5BTUVfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TmFtZSgpIDxlbT5OYW1lPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXROYW1lKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IG5hbWUgPSBOQU1FX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldE1lc3NhZ2UoKSA8ZW0+TWVzc2FnZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0TWVzc2FnZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgTUVTU0FHRV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRNZXNzYWdlKCkgPGVtPk1lc3NhZ2U8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldE1lc3NhZ2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgbWVzc2FnZSA9IE1FU1NBR0VfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0SGFyZHdhcmVfaWQoKSA8ZW0+SGFyZHdhcmUgaWQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEhhcmR3YXJlX2lkKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBIQVJEV0FSRV9JRF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRIYXJkd2FyZV9pZCgpIDxlbT5IYXJkd2FyZSBpZDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SGFyZHdhcmVfaWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgaGFyZHdhcmVfaWQgPSBIQVJEV0FSRV9JRF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFZhbHVlcygpIDxlbT5WYWx1ZXM8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VmFsdWVzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRUxpc3Q8S2V5VmFsdWU+IHZhbHVlczsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBEaWFnbm9zdGljU3RhdHVzSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5ESUFHTk9TVElDX1NUQVRVUzsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldE9LKCkgeworCQlyZXR1cm4gb2s7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0T0soT2JqZWN0IG5ld09LKSB7CisJCU9iamVjdCBvbGRPSyA9IG9rOworCQlvayA9IG5ld09LOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuRElBR05PU1RJQ19TVEFUVVNfX09LLCBvbGRPSywgb2spKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFdBUk4oKSB7CisJCXJldHVybiB3YXJuOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFdBUk4oT2JqZWN0IG5ld1dBUk4pIHsKKwkJT2JqZWN0IG9sZFdBUk4gPSB3YXJuOworCQl3YXJuID0gbmV3V0FSTjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfU1RBVFVTX19XQVJOLCBvbGRXQVJOLCB3YXJuKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRFUlJPUigpIHsKKwkJcmV0dXJuIGVycm9yOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEVSUk9SKE9iamVjdCBuZXdFUlJPUikgeworCQlPYmplY3Qgb2xkRVJST1IgPSBlcnJvcjsKKwkJZXJyb3IgPSBuZXdFUlJPUjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfU1RBVFVTX19FUlJPUiwgb2xkRVJST1IsIGVycm9yKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRMZXZlbCgpIHsKKwkJcmV0dXJuIGxldmVsOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldExldmVsKE9iamVjdCBuZXdMZXZlbCkgeworCQlPYmplY3Qgb2xkTGV2ZWwgPSBsZXZlbDsKKwkJbGV2ZWwgPSBuZXdMZXZlbDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfU1RBVFVTX19MRVZFTCwgb2xkTGV2ZWwsIGxldmVsKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXROYW1lKCkgeworCQlyZXR1cm4gbmFtZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXROYW1lKE9iamVjdCBuZXdOYW1lKSB7CisJCU9iamVjdCBvbGROYW1lID0gbmFtZTsKKwkJbmFtZSA9IG5ld05hbWU7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5ESUFHTk9TVElDX1NUQVRVU19fTkFNRSwgb2xkTmFtZSwgbmFtZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0TWVzc2FnZSgpIHsKKwkJcmV0dXJuIG1lc3NhZ2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0TWVzc2FnZShPYmplY3QgbmV3TWVzc2FnZSkgeworCQlPYmplY3Qgb2xkTWVzc2FnZSA9IG1lc3NhZ2U7CisJCW1lc3NhZ2UgPSBuZXdNZXNzYWdlOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuRElBR05PU1RJQ19TVEFUVVNfX01FU1NBR0UsIG9sZE1lc3NhZ2UsIG1lc3NhZ2UpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldEhhcmR3YXJlX2lkKCkgeworCQlyZXR1cm4gaGFyZHdhcmVfaWQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0SGFyZHdhcmVfaWQoT2JqZWN0IG5ld0hhcmR3YXJlX2lkKSB7CisJCU9iamVjdCBvbGRIYXJkd2FyZV9pZCA9IGhhcmR3YXJlX2lkOworCQloYXJkd2FyZV9pZCA9IG5ld0hhcmR3YXJlX2lkOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuRElBR05PU1RJQ19TVEFUVVNfX0hBUkRXQVJFX0lELCBvbGRIYXJkd2FyZV9pZCwgaGFyZHdhcmVfaWQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUxpc3Q8S2V5VmFsdWU+IGdldFZhbHVlcygpIHsKKwkJaWYgKHZhbHVlcyA9PSBudWxsKSB7CisJCQl2YWx1ZXMgPSBuZXcgRU9iamVjdENvbnRhaW5tZW50RUxpc3Q8S2V5VmFsdWU+KEtleVZhbHVlLmNsYXNzLCB0aGlzLCBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuRElBR05PU1RJQ19TVEFUVVNfX1ZBTFVFUyk7CisJCX0KKwkJcmV0dXJuIHZhbHVlczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gZUludmVyc2VSZW1vdmUoSW50ZXJuYWxFT2JqZWN0IG90aGVyRW5kLCBpbnQgZmVhdHVyZUlELCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5ESUFHTk9TVElDX1NUQVRVU19fVkFMVUVTOgorCQkJCXJldHVybiAoKEludGVybmFsRUxpc3Q8Pz4pZ2V0VmFsdWVzKCkpLmJhc2ljUmVtb3ZlKG90aGVyRW5kLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuRElBR05PU1RJQ19TVEFUVVNfX09LOgorCQkJCXJldHVybiBnZXRPSygpOworCQkJY2FzZSBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuRElBR05PU1RJQ19TVEFUVVNfX1dBUk46CisJCQkJcmV0dXJuIGdldFdBUk4oKTsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfU1RBVFVTX19FUlJPUjoKKwkJCQlyZXR1cm4gZ2V0RVJST1IoKTsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfU1RBVFVTX19MRVZFTDoKKwkJCQlyZXR1cm4gZ2V0TGV2ZWwoKTsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfU1RBVFVTX19OQU1FOgorCQkJCXJldHVybiBnZXROYW1lKCk7CisJCQljYXNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5ESUFHTk9TVElDX1NUQVRVU19fTUVTU0FHRToKKwkJCQlyZXR1cm4gZ2V0TWVzc2FnZSgpOworCQkJY2FzZSBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuRElBR05PU1RJQ19TVEFUVVNfX0hBUkRXQVJFX0lEOgorCQkJCXJldHVybiBnZXRIYXJkd2FyZV9pZCgpOworCQkJY2FzZSBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuRElBR05PU1RJQ19TVEFUVVNfX1ZBTFVFUzoKKwkJCQlyZXR1cm4gZ2V0VmFsdWVzKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQFN1cHByZXNzV2FybmluZ3MoInVuY2hlY2tlZCIpCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfU1RBVFVTX19PSzoKKwkJCQlzZXRPSygoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5ESUFHTk9TVElDX1NUQVRVU19fV0FSTjoKKwkJCQlzZXRXQVJOKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfU1RBVFVTX19FUlJPUjoKKwkJCQlzZXRFUlJPUigoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5ESUFHTk9TVElDX1NUQVRVU19fTEVWRUw6CisJCQkJc2V0TGV2ZWwoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuRElBR05PU1RJQ19TVEFUVVNfX05BTUU6CisJCQkJc2V0TmFtZSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5ESUFHTk9TVElDX1NUQVRVU19fTUVTU0FHRToKKwkJCQlzZXRNZXNzYWdlKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfU1RBVFVTX19IQVJEV0FSRV9JRDoKKwkJCQlzZXRIYXJkd2FyZV9pZCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5ESUFHTk9TVElDX1NUQVRVU19fVkFMVUVTOgorCQkJCWdldFZhbHVlcygpLmNsZWFyKCk7CisJCQkJZ2V0VmFsdWVzKCkuYWRkQWxsKChDb2xsZWN0aW9uPD8gZXh0ZW5kcyBLZXlWYWx1ZT4pbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5ESUFHTk9TVElDX1NUQVRVU19fT0s6CisJCQkJc2V0T0soT0tfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfU1RBVFVTX19XQVJOOgorCQkJCXNldFdBUk4oV0FSTl9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuRElBR05PU1RJQ19TVEFUVVNfX0VSUk9SOgorCQkJCXNldEVSUk9SKEVSUk9SX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5ESUFHTk9TVElDX1NUQVRVU19fTEVWRUw6CisJCQkJc2V0TGV2ZWwoTEVWRUxfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfU1RBVFVTX19OQU1FOgorCQkJCXNldE5hbWUoTkFNRV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuRElBR05PU1RJQ19TVEFUVVNfX01FU1NBR0U6CisJCQkJc2V0TWVzc2FnZShNRVNTQUdFX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5ESUFHTk9TVElDX1NUQVRVU19fSEFSRFdBUkVfSUQ6CisJCQkJc2V0SGFyZHdhcmVfaWQoSEFSRFdBUkVfSURfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfU1RBVFVTX19WQUxVRVM6CisJCQkJZ2V0VmFsdWVzKCkuY2xlYXIoKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfU1RBVFVTX19PSzoKKwkJCQlyZXR1cm4gT0tfRURFRkFVTFQgPT0gbnVsbCA/IG9rICE9IG51bGwgOiAhT0tfRURFRkFVTFQuZXF1YWxzKG9rKTsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfU1RBVFVTX19XQVJOOgorCQkJCXJldHVybiBXQVJOX0VERUZBVUxUID09IG51bGwgPyB3YXJuICE9IG51bGwgOiAhV0FSTl9FREVGQVVMVC5lcXVhbHMod2Fybik7CisJCQljYXNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5ESUFHTk9TVElDX1NUQVRVU19fRVJST1I6CisJCQkJcmV0dXJuIEVSUk9SX0VERUZBVUxUID09IG51bGwgPyBlcnJvciAhPSBudWxsIDogIUVSUk9SX0VERUZBVUxULmVxdWFscyhlcnJvcik7CisJCQljYXNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5ESUFHTk9TVElDX1NUQVRVU19fTEVWRUw6CisJCQkJcmV0dXJuIExFVkVMX0VERUZBVUxUID09IG51bGwgPyBsZXZlbCAhPSBudWxsIDogIUxFVkVMX0VERUZBVUxULmVxdWFscyhsZXZlbCk7CisJCQljYXNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5ESUFHTk9TVElDX1NUQVRVU19fTkFNRToKKwkJCQlyZXR1cm4gTkFNRV9FREVGQVVMVCA9PSBudWxsID8gbmFtZSAhPSBudWxsIDogIU5BTUVfRURFRkFVTFQuZXF1YWxzKG5hbWUpOworCQkJY2FzZSBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuRElBR05PU1RJQ19TVEFUVVNfX01FU1NBR0U6CisJCQkJcmV0dXJuIE1FU1NBR0VfRURFRkFVTFQgPT0gbnVsbCA/IG1lc3NhZ2UgIT0gbnVsbCA6ICFNRVNTQUdFX0VERUZBVUxULmVxdWFscyhtZXNzYWdlKTsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfU1RBVFVTX19IQVJEV0FSRV9JRDoKKwkJCQlyZXR1cm4gSEFSRFdBUkVfSURfRURFRkFVTFQgPT0gbnVsbCA/IGhhcmR3YXJlX2lkICE9IG51bGwgOiAhSEFSRFdBUkVfSURfRURFRkFVTFQuZXF1YWxzKGhhcmR3YXJlX2lkKTsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfU1RBVFVTX19WQUxVRVM6CisJCQkJcmV0dXJuIHZhbHVlcyAhPSBudWxsICYmICF2YWx1ZXMuaXNFbXB0eSgpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAoT0s6ICIpOworCQlyZXN1bHQuYXBwZW5kKG9rKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBXQVJOOiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh3YXJuKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBFUlJPUjogIik7CisJCXJlc3VsdC5hcHBlbmQoZXJyb3IpOworCQlyZXN1bHQuYXBwZW5kKCIsIGxldmVsOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChsZXZlbCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgbmFtZTogIik7CisJCXJlc3VsdC5hcHBlbmQobmFtZSk7CisJCXJlc3VsdC5hcHBlbmQoIiwgbWVzc2FnZTogIik7CisJCXJlc3VsdC5hcHBlbmQobWVzc2FnZSk7CisJCXJlc3VsdC5hcHBlbmQoIiwgaGFyZHdhcmVfaWQ6ICIpOworCQlyZXN1bHQuYXBwZW5kKGhhcmR3YXJlX2lkKTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIERpYWdub3N0aWNTdGF0dXNJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI1ZWJjOTgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0RpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwuamF2YQpAQCAtMCwwICsxLDExOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FRmFjdG9yeUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnBsdWdpbi5FY29yZVBsdWdpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY0FycmF5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljU3RhdHVzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3Rvcnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuS2V5VmFsdWU7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCA8Yj5GYWN0b3J5PC9iPi4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5SW1wbCBleHRlbmRzIEVGYWN0b3J5SW1wbCBpbXBsZW1lbnRzIERpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeSB7CisJLyoqCisJICogQ3JlYXRlcyB0aGUgZGVmYXVsdCBmYWN0b3J5IGltcGxlbWVudGF0aW9uLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5IGluaXQoKSB7CisJCXRyeSB7CisJCQlEaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkgdGhlRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5ID0gKERpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeSlFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFRmFjdG9yeShEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSk7CisJCQlpZiAodGhlRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5ICE9IG51bGwpIHsKKwkJCQlyZXR1cm4gdGhlRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5OworCQkJfQorCQl9CisJCWNhdGNoIChFeGNlcHRpb24gZXhjZXB0aW9uKSB7CisJCQlFY29yZVBsdWdpbi5JTlNUQU5DRS5sb2coZXhjZXB0aW9uKTsKKwkJfQorCQlyZXR1cm4gbmV3IERpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwoKTsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSBmYWN0b3J5LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBEaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnlJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBFT2JqZWN0IGNyZWF0ZShFQ2xhc3MgZUNsYXNzKSB7CisJCXN3aXRjaCAoZUNsYXNzLmdldENsYXNzaWZpZXJJRCgpKSB7CisJCQljYXNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5ESUFHTk9TVElDX0FSUkFZOiByZXR1cm4gY3JlYXRlRGlhZ25vc3RpY0FycmF5KCk7CisJCQljYXNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5ESUFHTk9TVElDX1NUQVRVUzogcmV0dXJuIGNyZWF0ZURpYWdub3N0aWNTdGF0dXMoKTsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLktFWV9WQUxVRTogcmV0dXJuIGNyZWF0ZUtleVZhbHVlKCk7CisJCQlkZWZhdWx0OgorCQkJCXRocm93IG5ldyBJbGxlZ2FsQXJndW1lbnRFeGNlcHRpb24oIlRoZSBjbGFzcyAnIiArIGVDbGFzcy5nZXROYW1lKCkgKyAiJyBpcyBub3QgYSB2YWxpZCBjbGFzc2lmaWVyIik7CisJCX0KKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRGlhZ25vc3RpY0FycmF5IGNyZWF0ZURpYWdub3N0aWNBcnJheSgpIHsKKwkJRGlhZ25vc3RpY0FycmF5SW1wbCBkaWFnbm9zdGljQXJyYXkgPSBuZXcgRGlhZ25vc3RpY0FycmF5SW1wbCgpOworCQlyZXR1cm4gZGlhZ25vc3RpY0FycmF5OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBEaWFnbm9zdGljU3RhdHVzIGNyZWF0ZURpYWdub3N0aWNTdGF0dXMoKSB7CisJCURpYWdub3N0aWNTdGF0dXNJbXBsIGRpYWdub3N0aWNTdGF0dXMgPSBuZXcgRGlhZ25vc3RpY1N0YXR1c0ltcGwoKTsKKwkJcmV0dXJuIGRpYWdub3N0aWNTdGF0dXM7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEtleVZhbHVlIGNyZWF0ZUtleVZhbHVlKCkgeworCQlLZXlWYWx1ZUltcGwga2V5VmFsdWUgPSBuZXcgS2V5VmFsdWVJbXBsKCk7CisJCXJldHVybiBrZXlWYWx1ZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlIGdldERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZSgpIHsKKwkJcmV0dXJuIChEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UpZ2V0RVBhY2thZ2UoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBkZXByZWNhdGVkCisJICogQGdlbmVyYXRlZAorCSAqLworCUBEZXByZWNhdGVkCisJcHVibGljIHN0YXRpYyBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UgZ2V0UGFja2FnZSgpIHsKKwkJcmV0dXJuIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0U7CisJfQorCit9IC8vIERpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvaW1wbC9EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTBmODc2ZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbC5qYXZhCkBAIC0wLDAgKzEsMzk4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVQYWNrYWdlSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljQXJyYXk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNTdGF0dXM7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5LZXlWYWx1ZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLk9hcnAxX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuaW1wbC5PYXJwMV9kYXRhdHlwZXNQYWNrYWdlSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuVU1MUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPlBhY2thZ2U8L2I+LgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsIGV4dGVuZHMgRVBhY2thZ2VJbXBsIGltcGxlbWVudHMgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBkaWFnbm9zdGljQXJyYXlFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgZGlhZ25vc3RpY1N0YXR1c0VDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBrZXlWYWx1ZUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSBtb2RlbCA8Yj5QYWNrYWdlPC9iPiwgcmVnaXN0ZXJlZCB3aXRoCisJICoge0BsaW5rIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZS5SZWdpc3RyeSBFUGFja2FnZS5SZWdpc3RyeX0gYnkgdGhlIHBhY2thZ2UKKwkgKiBwYWNrYWdlIFVSSSB2YWx1ZS4KKwkgKiA8cD5Ob3RlOiB0aGUgY29ycmVjdCB3YXkgdG8gY3JlYXRlIHRoZSBwYWNrYWdlIGlzIHZpYSB0aGUgc3RhdGljCisJICogZmFjdG9yeSBtZXRob2Qge0BsaW5rICNpbml0IGluaXQoKX0sIHdoaWNoIGFsc28gcGVyZm9ybXMKKwkgKiBpbml0aWFsaXphdGlvbiBvZiB0aGUgcGFja2FnZSwgb3IgcmV0dXJucyB0aGUgcmVnaXN0ZXJlZCBwYWNrYWdlLAorCSAqIGlmIG9uZSBhbHJlYWR5IGV4aXN0cy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZS5SZWdpc3RyeQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZSNlTlNfVVJJCisJICogQHNlZSAjaW5pdCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbCgpIHsKKwkJc3VwZXIoZU5TX1VSSSwgRGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5LmVJTlNUQU5DRSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBzdGF0aWMgYm9vbGVhbiBpc0luaXRlZCA9IGZhbHNlOworCisJLyoqCisJICogQ3JlYXRlcywgcmVnaXN0ZXJzLCBhbmQgaW5pdGlhbGl6ZXMgdGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGlzIG1vZGVsLCBhbmQgZm9yIGFueSBvdGhlcnMgdXBvbiB3aGljaCBpdCBkZXBlbmRzLgorCSAqIAorCSAqIDxwPlRoaXMgbWV0aG9kIGlzIHVzZWQgdG8gaW5pdGlhbGl6ZSB7QGxpbmsgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlI2VJTlNUQU5DRX0gd2hlbiB0aGF0IGZpZWxkIGlzIGFjY2Vzc2VkLgorCSAqIENsaWVudHMgc2hvdWxkIG5vdCBpbnZva2UgaXQgZGlyZWN0bHkuIEluc3RlYWQsIHRoZXkgc2hvdWxkIHNpbXBseSBhY2Nlc3MgdGhhdCBmaWVsZCB0byBvYnRhaW4gdGhlIHBhY2thZ2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4gPCEtLQorCSAqIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNlTlNfVVJJCisJICogQHNlZSAjY3JlYXRlUGFja2FnZUNvbnRlbnRzKCkKKwkgKiBAc2VlICNpbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHN0YXRpYyBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UgaW5pdCgpIHsKKwkJaWYgKGlzSW5pdGVkKSByZXR1cm4gKERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZSlFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSk7CisKKwkJLy8gT2J0YWluIG9yIGNyZWF0ZSBhbmQgcmVnaXN0ZXIgcGFja2FnZQorCQlEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZURpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZSA9IChEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXQoZU5TX1VSSSkgaW5zdGFuY2VvZiBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0KGVOU19VUkkpIDogbmV3IERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwoKSk7CisKKwkJaXNJbml0ZWQgPSB0cnVlOworCisJCS8vIEluaXRpYWxpemUgc2ltcGxlIGRlcGVuZGVuY2llcworCQlVTUxQYWNrYWdlLmVJTlNUQU5DRS5lQ2xhc3MoKTsKKworCQkvLyBPYnRhaW4gb3IgY3JlYXRlIGFuZCByZWdpc3RlciBpbnRlcmRlcGVuZGVuY2llcworCQlSb2JvdE1MUGFja2FnZUltcGwgdGhlUm9ib3RNTFBhY2thZ2UgPSAoUm9ib3RNTFBhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShSb2JvdE1MUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIFJvYm90TUxQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKFJvYm90TUxQYWNrYWdlLmVOU19VUkkpIDogUm9ib3RNTFBhY2thZ2UuZUlOU1RBTkNFKTsKKwkJR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwgdGhlR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSA9IChHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSA6IEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFKTsKKwkJTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZU5hdl9kYXRhdHlwZXNQYWNrYWdlID0gKE5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoTmF2X2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBOYXZfZGF0YXR5cGVzUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShOYXZfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSA6IE5hdl9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRSk7CisJCVNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCB0aGVTZW5zb3JfZGF0YXR5cGVzUGFja2FnZSA9IChTZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgOiBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UpOworCQlBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwgdGhlQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UgPSAoQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIDogQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFKTsKKwkJT2FycDFfZGF0YXR5cGVzUGFja2FnZUltcGwgdGhlT2FycDFfZGF0YXR5cGVzUGFja2FnZSA9IChPYXJwMV9kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoT2FycDFfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIE9hcnAxX2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoT2FycDFfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSA6IE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFKTsKKwkJT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGwgdGhlT2FycDRfZGF0YXR5cGVzUGFja2FnZSA9IChPYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoT2FycDRfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoT2FycDRfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSA6IE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFKTsKKwkJU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlID0gKFN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoU3RkX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBTdGRfZGF0YXR5cGVzUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShTdGRfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSA6IFN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRSk7CisKKwkJLy8gQ3JlYXRlIHBhY2thZ2UgbWV0YS1kYXRhIG9iamVjdHMKKwkJdGhlRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVSb2JvdE1MUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlTmF2X2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZVNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlT2FycDFfZGF0YXR5cGVzUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlT2FycDRfZGF0YXR5cGVzUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisKKwkJLy8gSW5pdGlhbGl6ZSBjcmVhdGVkIG1ldGEtZGF0YQorCQl0aGVEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVSb2JvdE1MUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZUdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVOYXZfZGF0YXR5cGVzUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZVNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlT2FycDRfZGF0YXR5cGVzUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKworCQkvLyBNYXJrIG1ldGEtZGF0YSB0byBpbmRpY2F0ZSBpdCBjYW4ndCBiZSBjaGFuZ2VkCisJCXRoZURpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5mcmVlemUoKTsKKworICAKKwkJLy8gVXBkYXRlIHRoZSByZWdpc3RyeSBhbmQgcmV0dXJuIHRoZSBwYWNrYWdlCisJCUVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLnB1dChEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSwgdGhlRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlKTsKKwkJcmV0dXJuIHRoZURpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldERpYWdub3N0aWNBcnJheSgpIHsKKwkJcmV0dXJuIGRpYWdub3N0aWNBcnJheUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXREaWFnbm9zdGljQXJyYXlfSGVhZGVyKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpZGlhZ25vc3RpY0FycmF5RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0RGlhZ25vc3RpY0FycmF5X1N0YXR1cygpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKWRpYWdub3N0aWNBcnJheUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldERpYWdub3N0aWNBcnJheV9WYWx1ZXMoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlkaWFnbm9zdGljQXJyYXlFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgyKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldERpYWdub3N0aWNTdGF0dXMoKSB7CisJCXJldHVybiBkaWFnbm9zdGljU3RhdHVzRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldERpYWdub3N0aWNTdGF0dXNfT0soKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlkaWFnbm9zdGljU3RhdHVzRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0RGlhZ25vc3RpY1N0YXR1c19XQVJOKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpZGlhZ25vc3RpY1N0YXR1c0VDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldERpYWdub3N0aWNTdGF0dXNfRVJST1IoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlkaWFnbm9zdGljU3RhdHVzRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMik7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0RGlhZ25vc3RpY1N0YXR1c19MZXZlbCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWRpYWdub3N0aWNTdGF0dXNFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXREaWFnbm9zdGljU3RhdHVzX05hbWUoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlkaWFnbm9zdGljU3RhdHVzRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoNCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0RGlhZ25vc3RpY1N0YXR1c19NZXNzYWdlKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpZGlhZ25vc3RpY1N0YXR1c0VDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldERpYWdub3N0aWNTdGF0dXNfSGFyZHdhcmVfaWQoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlkaWFnbm9zdGljU3RhdHVzRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoNik7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0RGlhZ25vc3RpY1N0YXR1c19WYWx1ZXMoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlkaWFnbm9zdGljU3RhdHVzRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoNyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRLZXlWYWx1ZSgpIHsKKwkJcmV0dXJuIGtleVZhbHVlRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldEtleVZhbHVlX0tleSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWtleVZhbHVlRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0S2V5VmFsdWVfVmFsdWUoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlrZXlWYWx1ZUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBEaWFnbm9zdGljX2RhdGF0eXBlc0ZhY3RvcnkgZ2V0RGlhZ25vc3RpY19kYXRhdHlwZXNGYWN0b3J5KCkgeworCQlyZXR1cm4gKERpYWdub3N0aWNfZGF0YXR5cGVzRmFjdG9yeSlnZXRFRmFjdG9yeUluc3RhbmNlKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBib29sZWFuIGlzQ3JlYXRlZCA9IGZhbHNlOworCisJLyoqCisJICogQ3JlYXRlcyB0aGUgbWV0YS1tb2RlbCBvYmplY3RzIGZvciB0aGUgcGFja2FnZS4gIFRoaXMgbWV0aG9kIGlzCisJICogZ3VhcmRlZCB0byBoYXZlIG5vIGFmZmVjdCBvbiBhbnkgaW52b2NhdGlvbiBidXQgaXRzIGZpcnN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIGNyZWF0ZVBhY2thZ2VDb250ZW50cygpIHsKKwkJaWYgKGlzQ3JlYXRlZCkgcmV0dXJuOworCQlpc0NyZWF0ZWQgPSB0cnVlOworCisJCS8vIENyZWF0ZSBjbGFzc2VzIGFuZCB0aGVpciBmZWF0dXJlcworCQlkaWFnbm9zdGljQXJyYXlFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoRElBR05PU1RJQ19BUlJBWSk7CisJCWNyZWF0ZUVSZWZlcmVuY2UoZGlhZ25vc3RpY0FycmF5RUNsYXNzLCBESUFHTk9TVElDX0FSUkFZX19IRUFERVIpOworCQljcmVhdGVFUmVmZXJlbmNlKGRpYWdub3N0aWNBcnJheUVDbGFzcywgRElBR05PU1RJQ19BUlJBWV9fU1RBVFVTKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShkaWFnbm9zdGljQXJyYXlFQ2xhc3MsIERJQUdOT1NUSUNfQVJSQVlfX1ZBTFVFUyk7CisKKwkJZGlhZ25vc3RpY1N0YXR1c0VDbGFzcyA9IGNyZWF0ZUVDbGFzcyhESUFHTk9TVElDX1NUQVRVUyk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoZGlhZ25vc3RpY1N0YXR1c0VDbGFzcywgRElBR05PU1RJQ19TVEFUVVNfX09LKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShkaWFnbm9zdGljU3RhdHVzRUNsYXNzLCBESUFHTk9TVElDX1NUQVRVU19fV0FSTik7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoZGlhZ25vc3RpY1N0YXR1c0VDbGFzcywgRElBR05PU1RJQ19TVEFUVVNfX0VSUk9SKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShkaWFnbm9zdGljU3RhdHVzRUNsYXNzLCBESUFHTk9TVElDX1NUQVRVU19fTEVWRUwpOworCQljcmVhdGVFQXR0cmlidXRlKGRpYWdub3N0aWNTdGF0dXNFQ2xhc3MsIERJQUdOT1NUSUNfU1RBVFVTX19OQU1FKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShkaWFnbm9zdGljU3RhdHVzRUNsYXNzLCBESUFHTk9TVElDX1NUQVRVU19fTUVTU0FHRSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoZGlhZ25vc3RpY1N0YXR1c0VDbGFzcywgRElBR05PU1RJQ19TVEFUVVNfX0hBUkRXQVJFX0lEKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShkaWFnbm9zdGljU3RhdHVzRUNsYXNzLCBESUFHTk9TVElDX1NUQVRVU19fVkFMVUVTKTsKKworCQlrZXlWYWx1ZUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhLRVlfVkFMVUUpOworCQljcmVhdGVFQXR0cmlidXRlKGtleVZhbHVlRUNsYXNzLCBLRVlfVkFMVUVfX0tFWSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoa2V5VmFsdWVFQ2xhc3MsIEtFWV9WQUxVRV9fVkFMVUUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgYm9vbGVhbiBpc0luaXRpYWxpemVkID0gZmFsc2U7CisKKwkvKioKKwkgKiBDb21wbGV0ZSB0aGUgaW5pdGlhbGl6YXRpb24gb2YgdGhlIHBhY2thZ2UgYW5kIGl0cyBtZXRhLW1vZGVsLiAgVGhpcworCSAqIG1ldGhvZCBpcyBndWFyZGVkIHRvIGhhdmUgbm8gYWZmZWN0IG9uIGFueSBpbnZvY2F0aW9uIGJ1dCBpdHMgZmlyc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpIHsKKwkJaWYgKGlzSW5pdGlhbGl6ZWQpIHJldHVybjsKKwkJaXNJbml0aWFsaXplZCA9IHRydWU7CisKKwkJLy8gSW5pdGlhbGl6ZSBwYWNrYWdlCisJCXNldE5hbWUoZU5BTUUpOworCQlzZXROc1ByZWZpeChlTlNfUFJFRklYKTsKKwkJc2V0TnNVUkkoZU5TX1VSSSk7CisKKwkJLy8gT2J0YWluIG90aGVyIGRlcGVuZGVudCBwYWNrYWdlcworCQlTdGRfZGF0YXR5cGVzUGFja2FnZSB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZSA9IChTdGRfZGF0YXR5cGVzUGFja2FnZSlFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShTdGRfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKTsKKworCQkvLyBDcmVhdGUgdHlwZSBwYXJhbWV0ZXJzCisKKwkJLy8gU2V0IGJvdW5kcyBmb3IgdHlwZSBwYXJhbWV0ZXJzCisKKwkJLy8gQWRkIHN1cGVydHlwZXMgdG8gY2xhc3NlcworCisJCS8vIEluaXRpYWxpemUgY2xhc3NlcywgZmVhdHVyZXMsIGFuZCBvcGVyYXRpb25zOyBhZGQgcGFyYW1ldGVycworCQlpbml0RUNsYXNzKGRpYWdub3N0aWNBcnJheUVDbGFzcywgRGlhZ25vc3RpY0FycmF5LmNsYXNzLCAiRGlhZ25vc3RpY0FycmF5IiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXREaWFnbm9zdGljQXJyYXlfSGVhZGVyKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEhlYWRlcigpLCBudWxsLCAiaGVhZGVyIiwgbnVsbCwgMSwgMSwgRGlhZ25vc3RpY0FycmF5LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0RGlhZ25vc3RpY0FycmF5X1N0YXR1cygpLCB0aGlzLmdldERpYWdub3N0aWNTdGF0dXMoKSwgbnVsbCwgInN0YXR1cyIsIG51bGwsIDAsIC0xLCBEaWFnbm9zdGljQXJyYXkuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RVJlZmVyZW5jZShnZXREaWFnbm9zdGljQXJyYXlfVmFsdWVzKCksIHRoaXMuZ2V0S2V5VmFsdWUoKSwgbnVsbCwgInZhbHVlcyIsIG51bGwsIDAsIC0xLCBEaWFnbm9zdGljQXJyYXkuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3MoZGlhZ25vc3RpY1N0YXR1c0VDbGFzcywgRGlhZ25vc3RpY1N0YXR1cy5jbGFzcywgIkRpYWdub3N0aWNTdGF0dXMiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFQXR0cmlidXRlKGdldERpYWdub3N0aWNTdGF0dXNfT0soKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0Qnl0ZSgpLCAiT0siLCBudWxsLCAxLCAxLCBEaWFnbm9zdGljU3RhdHVzLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0RGlhZ25vc3RpY1N0YXR1c19XQVJOKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEJ5dGUoKSwgIldBUk4iLCBudWxsLCAxLCAxLCBEaWFnbm9zdGljU3RhdHVzLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0RGlhZ25vc3RpY1N0YXR1c19FUlJPUigpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRCeXRlKCksICJFUlJPUiIsIG51bGwsIDEsIDEsIERpYWdub3N0aWNTdGF0dXMuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXREaWFnbm9zdGljU3RhdHVzX0xldmVsKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEJ5dGUoKSwgImxldmVsIiwgbnVsbCwgMSwgMSwgRGlhZ25vc3RpY1N0YXR1cy5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldERpYWdub3N0aWNTdGF0dXNfTmFtZSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRTdHJpbmcoKSwgIm5hbWUiLCBudWxsLCAxLCAxLCBEaWFnbm9zdGljU3RhdHVzLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0RGlhZ25vc3RpY1N0YXR1c19NZXNzYWdlKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFN0cmluZygpLCAibWVzc2FnZSIsIG51bGwsIDEsIDEsIERpYWdub3N0aWNTdGF0dXMuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXREaWFnbm9zdGljU3RhdHVzX0hhcmR3YXJlX2lkKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFN0cmluZygpLCAiaGFyZHdhcmVfaWQiLCBudWxsLCAxLCAxLCBEaWFnbm9zdGljU3RhdHVzLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0RGlhZ25vc3RpY1N0YXR1c19WYWx1ZXMoKSwgdGhpcy5nZXRLZXlWYWx1ZSgpLCBudWxsLCAidmFsdWVzIiwgbnVsbCwgMCwgLTEsIERpYWdub3N0aWNTdGF0dXMuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3Moa2V5VmFsdWVFQ2xhc3MsIEtleVZhbHVlLmNsYXNzLCAiS2V5VmFsdWUiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFQXR0cmlidXRlKGdldEtleVZhbHVlX0tleSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRTdHJpbmcoKSwgImtleSIsIG51bGwsIDEsIDEsIEtleVZhbHVlLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0S2V5VmFsdWVfVmFsdWUoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0U3RyaW5nKCksICJ2YWx1ZSIsIG51bGwsIDEsIDEsIEtleVZhbHVlLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQkvLyBDcmVhdGUgcmVzb3VyY2UKKwkJY3JlYXRlUmVzb3VyY2UoZU5TX1VSSSk7CisJfQorCit9IC8vIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2RpYWdub3N0aWNfZGF0YXR5cGVzL2ltcGwvS2V5VmFsdWVJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0tleVZhbHVlSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE1MzU5ODUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy9pbXBsL0tleVZhbHVlSW1wbC5qYXZhCkBAIC0wLDAgKzEsMjE0IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5LZXlWYWx1ZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPktleSBWYWx1ZTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuS2V5VmFsdWVJbXBsI2dldEtleSA8ZW0+S2V5PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC5LZXlWYWx1ZUltcGwjZ2V0VmFsdWUgPGVtPlZhbHVlPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgS2V5VmFsdWVJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIEtleVZhbHVlIHsKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0S2V5KCkgPGVtPktleTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0S2V5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBLRVlfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0S2V5KCkgPGVtPktleTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0S2V5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IGtleSA9IEtFWV9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRWYWx1ZSgpIDxlbT5WYWx1ZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VmFsdWUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFZBTFVFX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFZhbHVlKCkgPGVtPlZhbHVlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRWYWx1ZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCB2YWx1ZSA9IFZBTFVFX0VERUZBVUxUOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIEtleVZhbHVlSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5LRVlfVkFMVUU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRLZXkoKSB7CisJCXJldHVybiBrZXk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0S2V5KE9iamVjdCBuZXdLZXkpIHsKKwkJT2JqZWN0IG9sZEtleSA9IGtleTsKKwkJa2V5ID0gbmV3S2V5OworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuS0VZX1ZBTFVFX19LRVksIG9sZEtleSwga2V5KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRWYWx1ZSgpIHsKKwkJcmV0dXJuIHZhbHVlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFZhbHVlKE9iamVjdCBuZXdWYWx1ZSkgeworCQlPYmplY3Qgb2xkVmFsdWUgPSB2YWx1ZTsKKwkJdmFsdWUgPSBuZXdWYWx1ZTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLktFWV9WQUxVRV9fVkFMVUUsIG9sZFZhbHVlLCB2YWx1ZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLktFWV9WQUxVRV9fS0VZOgorCQkJCXJldHVybiBnZXRLZXkoKTsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLktFWV9WQUxVRV9fVkFMVUU6CisJCQkJcmV0dXJuIGdldFZhbHVlKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLktFWV9WQUxVRV9fS0VZOgorCQkJCXNldEtleSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5LRVlfVkFMVUVfX1ZBTFVFOgorCQkJCXNldFZhbHVlKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5LRVlfVkFMVUVfX0tFWToKKwkJCQlzZXRLZXkoS0VZX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5LRVlfVkFMVUVfX1ZBTFVFOgorCQkJCXNldFZhbHVlKFZBTFVFX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLktFWV9WQUxVRV9fS0VZOgorCQkJCXJldHVybiBLRVlfRURFRkFVTFQgPT0gbnVsbCA/IGtleSAhPSBudWxsIDogIUtFWV9FREVGQVVMVC5lcXVhbHMoa2V5KTsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLktFWV9WQUxVRV9fVkFMVUU6CisJCQkJcmV0dXJuIFZBTFVFX0VERUZBVUxUID09IG51bGwgPyB2YWx1ZSAhPSBudWxsIDogIVZBTFVFX0VERUZBVUxULmVxdWFscyh2YWx1ZSk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CisJCWlmIChlSXNQcm94eSgpKSByZXR1cm4gc3VwZXIudG9TdHJpbmcoKTsKKworCQlTdHJpbmdCdWZmZXIgcmVzdWx0ID0gbmV3IFN0cmluZ0J1ZmZlcihzdXBlci50b1N0cmluZygpKTsKKwkJcmVzdWx0LmFwcGVuZCgiIChrZXk6ICIpOworCQlyZXN1bHQuYXBwZW5kKGtleSk7CisJCXJlc3VsdC5hcHBlbmQoIiwgdmFsdWU6ICIpOworCQlyZXN1bHQuYXBwZW5kKHZhbHVlKTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIEtleVZhbHVlSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvdXRpbC9EaWFnbm9zdGljX2RhdGF0eXBlc0FkYXB0ZXJGYWN0b3J5LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy91dGlsL0RpYWdub3N0aWNfZGF0YXR5cGVzQWRhcHRlckZhY3RvcnkuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MjJiNTg1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvdXRpbC9EaWFnbm9zdGljX2RhdGF0eXBlc0FkYXB0ZXJGYWN0b3J5LmphdmEKQEAgLTAsMCArMSwxNTYgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy51dGlsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkFkYXB0ZXJGYWN0b3J5SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY0FycmF5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljU3RhdHVzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLktleVZhbHVlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBUaGUgPGI+QWRhcHRlciBGYWN0b3J5PC9iPiBmb3IgdGhlIG1vZGVsLgorICogSXQgcHJvdmlkZXMgYW4gYWRhcHRlciA8Y29kZT5jcmVhdGVYWFg8L2NvZGU+IG1ldGhvZCBmb3IgZWFjaCBjbGFzcyBvZiB0aGUgbW9kZWwuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZQorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgRGlhZ25vc3RpY19kYXRhdHlwZXNBZGFwdGVyRmFjdG9yeSBleHRlbmRzIEFkYXB0ZXJGYWN0b3J5SW1wbCB7CisJLyoqCisJICogVGhlIGNhY2hlZCBtb2RlbCBwYWNrYWdlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlIG1vZGVsUGFja2FnZTsKKworCS8qKgorCSAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIGFkYXB0ZXIgZmFjdG9yeS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRGlhZ25vc3RpY19kYXRhdHlwZXNBZGFwdGVyRmFjdG9yeSgpIHsKKwkJaWYgKG1vZGVsUGFja2FnZSA9PSBudWxsKSB7CisJCQltb2RlbFBhY2thZ2UgPSBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFOworCQl9CisJfQorCisJLyoqCisJICogUmV0dXJucyB3aGV0aGVyIHRoaXMgZmFjdG9yeSBpcyBhcHBsaWNhYmxlIGZvciB0aGUgdHlwZSBvZiB0aGUgb2JqZWN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIDxjb2RlPnRydWU8L2NvZGU+IGlmIHRoZSBvYmplY3QgaXMgZWl0aGVyIHRoZSBtb2RlbCdzIHBhY2thZ2Ugb3IgaXMgYW4gaW5zdGFuY2Ugb2JqZWN0IG9mIHRoZSBtb2RlbC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHdoZXRoZXIgdGhpcyBmYWN0b3J5IGlzIGFwcGxpY2FibGUgZm9yIHRoZSB0eXBlIG9mIHRoZSBvYmplY3QuCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGlzRmFjdG9yeUZvclR5cGUoT2JqZWN0IG9iamVjdCkgeworCQlpZiAob2JqZWN0ID09IG1vZGVsUGFja2FnZSkgeworCQkJcmV0dXJuIHRydWU7CisJCX0KKwkJaWYgKG9iamVjdCBpbnN0YW5jZW9mIEVPYmplY3QpIHsKKwkJCXJldHVybiAoKEVPYmplY3Qpb2JqZWN0KS5lQ2xhc3MoKS5nZXRFUGFja2FnZSgpID09IG1vZGVsUGFja2FnZTsKKwkJfQorCQlyZXR1cm4gZmFsc2U7CisJfQorCisJLyoqCisJICogVGhlIHN3aXRjaCB0aGF0IGRlbGVnYXRlcyB0byB0aGUgPGNvZGU+Y3JlYXRlWFhYPC9jb2RlPiBtZXRob2RzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBEaWFnbm9zdGljX2RhdGF0eXBlc1N3aXRjaDxBZGFwdGVyPiBtb2RlbFN3aXRjaCA9CisJCQluZXcgRGlhZ25vc3RpY19kYXRhdHlwZXNTd2l0Y2g8QWRhcHRlcj4oKSB7CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VEaWFnbm9zdGljQXJyYXkoRGlhZ25vc3RpY0FycmF5IG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVEaWFnbm9zdGljQXJyYXlBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VEaWFnbm9zdGljU3RhdHVzKERpYWdub3N0aWNTdGF0dXMgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZURpYWdub3N0aWNTdGF0dXNBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VLZXlWYWx1ZShLZXlWYWx1ZSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlS2V5VmFsdWVBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGRlZmF1bHRDYXNlKEVPYmplY3Qgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUVPYmplY3RBZGFwdGVyKCk7CisJCQl9CisJCX07CisKKwkvKioKKwkgKiBDcmVhdGVzIGFuIGFkYXB0ZXIgZm9yIHRoZSA8Y29kZT50YXJnZXQ8L2NvZGU+LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHRhcmdldCB0aGUgb2JqZWN0IHRvIGFkYXB0LgorCSAqIEByZXR1cm4gdGhlIGFkYXB0ZXIgZm9yIHRoZSA8Y29kZT50YXJnZXQ8L2NvZGU+LgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVBZGFwdGVyKE5vdGlmaWVyIHRhcmdldCkgeworCQlyZXR1cm4gbW9kZWxTd2l0Y2guZG9Td2l0Y2goKEVPYmplY3QpdGFyZ2V0KTsKKwl9CisKKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNBcnJheSA8ZW0+RGlhZ25vc3RpYyBBcnJheTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY0FycmF5CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZURpYWdub3N0aWNBcnJheUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNTdGF0dXMgPGVtPkRpYWdub3N0aWMgU3RhdHVzPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljU3RhdHVzCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZURpYWdub3N0aWNTdGF0dXNBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5LZXlWYWx1ZSA8ZW0+S2V5IFZhbHVlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5LZXlWYWx1ZQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVLZXlWYWx1ZUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgdGhlIGRlZmF1bHQgY2FzZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUVPYmplY3RBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKK30gLy8gRGlhZ25vc3RpY19kYXRhdHlwZXNBZGFwdGVyRmFjdG9yeQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvdXRpbC9EaWFnbm9zdGljX2RhdGF0eXBlc1N3aXRjaC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZGlhZ25vc3RpY19kYXRhdHlwZXMvdXRpbC9EaWFnbm9zdGljX2RhdGF0eXBlc1N3aXRjaC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNiOTE5ZTEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9kaWFnbm9zdGljX2RhdGF0eXBlcy91dGlsL0RpYWdub3N0aWNfZGF0YXR5cGVzU3dpdGNoLmphdmEKQEAgLTAsMCArMSwxNTIgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy51dGlsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLlN3aXRjaDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY0FycmF5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljU3RhdHVzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLktleVZhbHVlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBUaGUgPGI+U3dpdGNoPC9iPiBmb3IgdGhlIG1vZGVsJ3MgaW5oZXJpdGFuY2UgaGllcmFyY2h5LgorICogSXQgc3VwcG9ydHMgdGhlIGNhbGwge0BsaW5rICNkb1N3aXRjaChFT2JqZWN0KSBkb1N3aXRjaChvYmplY3QpfSB0byBpbnZva2UgdGhlIDxjb2RlPmNhc2VYWFg8L2NvZGU+IG1ldGhvZCBmb3IgZWFjaCBjbGFzcyBvZiB0aGUgbW9kZWwsCisgKiBzdGFydGluZyB3aXRoIHRoZSBhY3R1YWwgY2xhc3Mgb2YgdGhlIG9iamVjdAorICogYW5kIHByb2NlZWRpbmcgdXAgdGhlIGluaGVyaXRhbmNlIGhpZXJhcmNoeQorICogdW50aWwgYSBub24tbnVsbCByZXN1bHQgaXMgcmV0dXJuZWQsCisgKiB3aGljaCBpcyB0aGUgcmVzdWx0IG9mIHRoZSBzd2l0Y2guCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZQorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgRGlhZ25vc3RpY19kYXRhdHlwZXNTd2l0Y2g8VD4gZXh0ZW5kcyBTd2l0Y2g8VD4geworCS8qKgorCSAqIFRoZSBjYWNoZWQgbW9kZWwgcGFja2FnZQorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlIG1vZGVsUGFja2FnZTsKKworCS8qKgorCSAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRGlhZ25vc3RpY19kYXRhdHlwZXNTd2l0Y2goKSB7CisJCWlmIChtb2RlbFBhY2thZ2UgPT0gbnVsbCkgeworCQkJbW9kZWxQYWNrYWdlID0gRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRTsKKwkJfQorCX0KKworCS8qKgorCSAqIENoZWNrcyB3aGV0aGVyIHRoaXMgaXMgYSBzd2l0Y2ggZm9yIHRoZSBnaXZlbiBwYWNrYWdlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtZXRlciBlUGFja2FnZSB0aGUgcGFja2FnZSBpbiBxdWVzdGlvbi4KKwkgKiBAcmV0dXJuIHdoZXRoZXIgdGhpcyBpcyBhIHN3aXRjaCBmb3IgdGhlIGdpdmVuIHBhY2thZ2UuCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBib29sZWFuIGlzU3dpdGNoRm9yKEVQYWNrYWdlIGVQYWNrYWdlKSB7CisJCXJldHVybiBlUGFja2FnZSA9PSBtb2RlbFBhY2thZ2U7CisJfQorCisJLyoqCisJICogQ2FsbHMgPGNvZGU+Y2FzZVhYWDwvY29kZT4gZm9yIGVhY2ggY2xhc3Mgb2YgdGhlIG1vZGVsIHVudGlsIG9uZSByZXR1cm5zIGEgbm9uIG51bGwgcmVzdWx0OyBpdCB5aWVsZHMgdGhhdCByZXN1bHQuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBmaXJzdCBub24tbnVsbCByZXN1bHQgcmV0dXJuZWQgYnkgYSA8Y29kZT5jYXNlWFhYPC9jb2RlPiBjYWxsLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgVCBkb1N3aXRjaChpbnQgY2xhc3NpZmllcklELCBFT2JqZWN0IHRoZUVPYmplY3QpIHsKKwkJc3dpdGNoIChjbGFzc2lmaWVySUQpIHsKKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfQVJSQVk6IHsKKwkJCQlEaWFnbm9zdGljQXJyYXkgZGlhZ25vc3RpY0FycmF5ID0gKERpYWdub3N0aWNBcnJheSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZURpYWdub3N0aWNBcnJheShkaWFnbm9zdGljQXJyYXkpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLkRJQUdOT1NUSUNfU1RBVFVTOiB7CisJCQkJRGlhZ25vc3RpY1N0YXR1cyBkaWFnbm9zdGljU3RhdHVzID0gKERpYWdub3N0aWNTdGF0dXMpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VEaWFnbm9zdGljU3RhdHVzKGRpYWdub3N0aWNTdGF0dXMpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLktFWV9WQUxVRTogeworCQkJCUtleVZhbHVlIGtleVZhbHVlID0gKEtleVZhbHVlKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlS2V5VmFsdWUoa2V5VmFsdWUpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWRlZmF1bHQ6IHJldHVybiBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJfQorCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkRpYWdub3N0aWMgQXJyYXk8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5EaWFnbm9zdGljIEFycmF5PC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlRGlhZ25vc3RpY0FycmF5KERpYWdub3N0aWNBcnJheSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+RGlhZ25vc3RpYyBTdGF0dXM8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5EaWFnbm9zdGljIFN0YXR1czwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZURpYWdub3N0aWNTdGF0dXMoRGlhZ25vc3RpY1N0YXR1cyBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+S2V5IFZhbHVlPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+S2V5IFZhbHVlPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlS2V5VmFsdWUoS2V5VmFsdWUgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkVPYmplY3Q8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaCwgYnV0IHRoaXMgaXMgdGhlIGxhc3QgY2FzZSBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+RU9iamVjdDwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFQgZGVmYXVsdENhc2UoRU9iamVjdCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCit9IC8vIERpYWdub3N0aWNfZGF0YXR5cGVzU3dpdGNoCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wMDI0Zjk5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkuamF2YQpAQCAtMCwwICsxLDIyMiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogVGhlIDxiPkZhY3Rvcnk8L2I+IGZvciB0aGUgbW9kZWwuCisgKiBJdCBwcm92aWRlcyBhIGNyZWF0ZSBtZXRob2QgZm9yIGVhY2ggbm9uLWFic3RyYWN0IGNsYXNzIG9mIHRoZSBtb2RlbC4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5IGV4dGVuZHMgRUZhY3RvcnkgeworCS8qKgorCSAqIFRoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIGZhY3RvcnkuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeSBlSU5TVEFOQ0UgPSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuaW5pdCgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Qb2ludDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UG9pbnQ8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCVBvaW50IGNyZWF0ZVBvaW50KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlBvaW50MzI8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlBvaW50MzI8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCVBvaW50MzIgY3JlYXRlUG9pbnQzMigpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Qb2ludCBTdGFtcGVkPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Qb2ludCBTdGFtcGVkPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlQb2ludFN0YW1wZWQgY3JlYXRlUG9pbnRTdGFtcGVkKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlBvbHlnb248L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlBvbHlnb248L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCVBvbHlnb24gY3JlYXRlUG9seWdvbigpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Qb2x5Z29uIFN0YW1wZWQ8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlBvbHlnb24gU3RhbXBlZDwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJUG9seWdvblN0YW1wZWQgY3JlYXRlUG9seWdvblN0YW1wZWQoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+VmVjdG9yMzwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+VmVjdG9yMzwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJVmVjdG9yMyBjcmVhdGVWZWN0b3IzKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlZlY3RvcjMgU3RhbXBlZDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+VmVjdG9yMyBTdGFtcGVkPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlWZWN0b3IzU3RhbXBlZCBjcmVhdGVWZWN0b3IzU3RhbXBlZCgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5RdWF0ZXJuaW9uPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5RdWF0ZXJuaW9uPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlRdWF0ZXJuaW9uIGNyZWF0ZVF1YXRlcm5pb24oKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UG9zZTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UG9zZTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJUG9zZSBjcmVhdGVQb3NlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlBvc2UgU3RhbXBlZDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UG9zZSBTdGFtcGVkPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlQb3NlU3RhbXBlZCBjcmVhdGVQb3NlU3RhbXBlZCgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Ud2lzdCBXaXRoIENvdmFyaWFuY2U8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlR3aXN0IFdpdGggQ292YXJpYW5jZTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJVHdpc3RXaXRoQ292YXJpYW5jZSBjcmVhdGVUd2lzdFdpdGhDb3ZhcmlhbmNlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlR3aXN0PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Ud2lzdDwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJVHdpc3QgY3JlYXRlVHdpc3QoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+VHdpc3QgU3RhbXBlZDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+VHdpc3QgU3RhbXBlZDwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJVHdpc3RTdGFtcGVkIGNyZWF0ZVR3aXN0U3RhbXBlZCgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Qb3NlIFdpdGggQ292YXJpYW5jZTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UG9zZSBXaXRoIENvdmFyaWFuY2U8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCVBvc2VXaXRoQ292YXJpYW5jZSBjcmVhdGVQb3NlV2l0aENvdmFyaWFuY2UoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UG9zZTIgRDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UG9zZTIgRDwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJUG9zZTJEIGNyZWF0ZVBvc2UyRCgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Qb3NlIFdpdGggQ292YXJpYW5jZSBTdGFtcGVkPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Qb3NlIFdpdGggQ292YXJpYW5jZSBTdGFtcGVkPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkIGNyZWF0ZVBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWQoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UG9zZSBBcnJheTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UG9zZSBBcnJheTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJUG9zZUFycmF5IGNyZWF0ZVBvc2VBcnJheSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5RdWF0ZXJuaW9uIFN0YW1wZWQ8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlF1YXRlcm5pb24gU3RhbXBlZDwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJUXVhdGVybmlvblN0YW1wZWQgY3JlYXRlUXVhdGVybmlvblN0YW1wZWQoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+VHJhbnNmb3JtPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5UcmFuc2Zvcm08L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCVRyYW5zZm9ybSBjcmVhdGVUcmFuc2Zvcm0oKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+V3JlbmNoIFN0YW1wZWQ8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPldyZW5jaCBTdGFtcGVkPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlXcmVuY2hTdGFtcGVkIGNyZWF0ZVdyZW5jaFN0YW1wZWQoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+V3JlbmNoPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5XcmVuY2g8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCVdyZW5jaCBjcmVhdGVXcmVuY2goKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHBhY2thZ2Ugc3VwcG9ydGVkIGJ5IHRoaXMgZmFjdG9yeS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHBhY2thZ2Ugc3VwcG9ydGVkIGJ5IHRoaXMgZmFjdG9yeS4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSBnZXRHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlKCk7CisKK30gLy8gR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGFlZDAxOAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmphdmEKQEAgLTAsMCArMSwyMzUzIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIFRoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhlIG1vZGVsLgorICogSXQgY29udGFpbnMgYWNjZXNzb3JzIGZvciB0aGUgbWV0YSBvYmplY3RzIHRvIHJlcHJlc2VudAorICogPHVsPgorICogPGxpPmVhY2ggY2xhc3MsPC9saT4KKyAqIDxsaT5lYWNoIGZlYXR1cmUgb2YgZWFjaCBjbGFzcyw8L2xpPgorICogPGxpPmVhY2ggb3BlcmF0aW9uIG9mIGVhY2ggY2xhc3MsPC9saT4KKyAqIDxsaT5lYWNoIGVudW0sPC9saT4KKyAqIDxsaT5hbmQgZWFjaCBkYXRhIHR5cGU8L2xpPgorICogPC91bD4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkKKyAqIEBtb2RlbCBraW5kPSJwYWNrYWdlIgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UgZXh0ZW5kcyBFUGFja2FnZSB7CisJLyoqCisJICogVGhlIHBhY2thZ2UgbmFtZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTdHJpbmcgZU5BTUUgPSAiZ2VvbWV0cnlfZGF0YXR5cGVzIjsKKworCS8qKgorCSAqIFRoZSBwYWNrYWdlIG5hbWVzcGFjZSBVUkkuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJU3RyaW5nIGVOU19VUkkgPSAiaHR0cDovLy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy5lY29yZSI7CisKKwkvKioKKwkgKiBUaGUgcGFja2FnZSBuYW1lc3BhY2UgbmFtZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTdHJpbmcgZU5TX1BSRUZJWCA9ICJSb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcyI7CisKKwkvKioKKwkgKiBUaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBwYWNrYWdlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UgZUlOU1RBTkNFID0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmluaXQoKTsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlBvaW50SW1wbCA8ZW0+UG9pbnQ8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9pbnRJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0UG9pbnQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgUE9JTlQgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT0lOVF9fWCA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+WTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPSU5UX19ZID0gMTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5aPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUE9JTlRfX1ogPSAyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlBvaW50PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPSU5UX0ZFQVRVUkVfQ09VTlQgPSAzOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPlBvaW50PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPSU5UX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Qb2ludDMySW1wbCA8ZW0+UG9pbnQzMjwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Qb2ludDMySW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldFBvaW50MzIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgUE9JTlQzMiA9IDE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+WDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPSU5UMzJfX1ggPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlk8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT0lOVDMyX19ZID0gMTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5aPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUE9JTlQzMl9fWiA9IDI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+UG9pbnQzMjwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT0lOVDMyX0ZFQVRVUkVfQ09VTlQgPSAzOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPlBvaW50MzI8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUE9JTlQzMl9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9pbnRTdGFtcGVkSW1wbCA8ZW0+UG9pbnQgU3RhbXBlZDwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Qb2ludFN0YW1wZWRJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0UG9pbnRTdGFtcGVkKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFBPSU5UX1NUQU1QRUQgPSAyOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPSU5UX1NUQU1QRURfX0hFQURFUiA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UG9pbnQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT0lOVF9TVEFNUEVEX19QT0lOVCA9IDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+UG9pbnQgU3RhbXBlZDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT0lOVF9TVEFNUEVEX0ZFQVRVUkVfQ09VTlQgPSAyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPlBvaW50IFN0YW1wZWQ8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUE9JTlRfU1RBTVBFRF9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9seWdvbkltcGwgPGVtPlBvbHlnb248L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9seWdvbkltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRQb2x5Z29uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFBPTFlHT04gPSAzOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlBvaW50PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT0xZR09OX19QT0lOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+UG9seWdvbjwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT0xZR09OX0ZFQVRVUkVfQ09VTlQgPSAxOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPlBvbHlnb248L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUE9MWUdPTl9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9seWdvblN0YW1wZWRJbXBsIDxlbT5Qb2x5Z29uIFN0YW1wZWQ8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9seWdvblN0YW1wZWRJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0UG9seWdvblN0YW1wZWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgUE9MWUdPTl9TVEFNUEVEID0gNDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT0xZR09OX1NUQU1QRURfX0hFQURFUiA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UG9seWdvbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPTFlHT05fU1RBTVBFRF9fUE9MWUdPTiA9IDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+UG9seWdvbiBTdGFtcGVkPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPTFlHT05fU1RBTVBFRF9GRUFUVVJFX0NPVU5UID0gMjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5Qb2x5Z29uIFN0YW1wZWQ8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUE9MWUdPTl9TVEFNUEVEX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5WZWN0b3IzSW1wbCA8ZW0+VmVjdG9yMzwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5WZWN0b3IzSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldFZlY3RvcjMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgVkVDVE9SMyA9IDU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+WDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFZFQ1RPUjNfX1ggPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlk8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBWRUNUT1IzX19ZID0gMTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5aPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgVkVDVE9SM19fWiA9IDI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+VmVjdG9yMzwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBWRUNUT1IzX0ZFQVRVUkVfQ09VTlQgPSAzOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPlZlY3RvcjM8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgVkVDVE9SM19PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuVmVjdG9yM1N0YW1wZWRJbXBsIDxlbT5WZWN0b3IzIFN0YW1wZWQ8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuVmVjdG9yM1N0YW1wZWRJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0VmVjdG9yM1N0YW1wZWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgVkVDVE9SM19TVEFNUEVEID0gNjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBWRUNUT1IzX1NUQU1QRURfX0hFQURFUiA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+VmVjdG9yPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgVkVDVE9SM19TVEFNUEVEX19WRUNUT1IgPSAxOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlZlY3RvcjMgU3RhbXBlZDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBWRUNUT1IzX1NUQU1QRURfRkVBVFVSRV9DT1VOVCA9IDI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+VmVjdG9yMyBTdGFtcGVkPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFZFQ1RPUjNfU1RBTVBFRF9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUXVhdGVybmlvbkltcGwgPGVtPlF1YXRlcm5pb248L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUXVhdGVybmlvbkltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRRdWF0ZXJuaW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFFVQVRFUk5JT04gPSA3OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBRVUFURVJOSU9OX19YID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5ZPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUVVBVEVSTklPTl9fWSA9IDE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+WjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFFVQVRFUk5JT05fX1ogPSAyOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlc8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBRVUFURVJOSU9OX19XID0gMzsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5RdWF0ZXJuaW9uPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFFVQVRFUk5JT05fRkVBVFVSRV9DT1VOVCA9IDQ7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+UXVhdGVybmlvbjwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBRVUFURVJOSU9OX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Qb3NlSW1wbCA8ZW0+UG9zZTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Qb3NlSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldFBvc2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgUE9TRSA9IDg7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UG9zaXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT1NFX19QT1NJVElPTiA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+T3JpZW50YXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT1NFX19PUklFTlRBVElPTiA9IDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+UG9zZTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT1NFX0ZFQVRVUkVfQ09VTlQgPSAyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPlBvc2U8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUE9TRV9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9zZVN0YW1wZWRJbXBsIDxlbT5Qb3NlIFN0YW1wZWQ8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9zZVN0YW1wZWRJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0UG9zZVN0YW1wZWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgUE9TRV9TVEFNUEVEID0gOTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT1NFX1NUQU1QRURfX0hFQURFUiA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UG9zZTwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPU0VfU1RBTVBFRF9fUE9TRSA9IDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+UG9zZSBTdGFtcGVkPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPU0VfU1RBTVBFRF9GRUFUVVJFX0NPVU5UID0gMjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5Qb3NlIFN0YW1wZWQ8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUE9TRV9TVEFNUEVEX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Ud2lzdFdpdGhDb3ZhcmlhbmNlSW1wbCA8ZW0+VHdpc3QgV2l0aCBDb3ZhcmlhbmNlPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlR3aXN0V2l0aENvdmFyaWFuY2VJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0VHdpc3RXaXRoQ292YXJpYW5jZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBUV0lTVF9XSVRIX0NPVkFSSUFOQ0UgPSAxMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Ud2lzdDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFRXSVNUX1dJVEhfQ09WQVJJQU5DRV9fVFdJU1QgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkNvdmFyaWFuY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFRXSVNUX1dJVEhfQ09WQVJJQU5DRV9fQ09WQVJJQU5DRSA9IDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+VHdpc3QgV2l0aCBDb3ZhcmlhbmNlPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFRXSVNUX1dJVEhfQ09WQVJJQU5DRV9GRUFUVVJFX0NPVU5UID0gMjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5Ud2lzdCBXaXRoIENvdmFyaWFuY2U8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgVFdJU1RfV0lUSF9DT1ZBUklBTkNFX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Ud2lzdEltcGwgPGVtPlR3aXN0PC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlR3aXN0SW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldFR3aXN0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFRXSVNUID0gMTE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGluZWFyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgVFdJU1RfX0xJTkVBUiA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QW5ndWxhcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFRXSVNUX19BTkdVTEFSID0gMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5Ud2lzdDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBUV0lTVF9GRUFUVVJFX0NPVU5UID0gMjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5Ud2lzdDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBUV0lTVF9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuVHdpc3RTdGFtcGVkSW1wbCA8ZW0+VHdpc3QgU3RhbXBlZDwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Ud2lzdFN0YW1wZWRJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0VHdpc3RTdGFtcGVkKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFRXSVNUX1NUQU1QRUQgPSAxMjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBUV0lTVF9TVEFNUEVEX19IRUFERVIgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlR3aXN0PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgVFdJU1RfU1RBTVBFRF9fVFdJU1QgPSAxOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlR3aXN0IFN0YW1wZWQ8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgVFdJU1RfU1RBTVBFRF9GRUFUVVJFX0NPVU5UID0gMjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5Ud2lzdCBTdGFtcGVkPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFRXSVNUX1NUQU1QRURfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlBvc2VXaXRoQ292YXJpYW5jZUltcGwgPGVtPlBvc2UgV2l0aCBDb3ZhcmlhbmNlPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlBvc2VXaXRoQ292YXJpYW5jZUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRQb3NlV2l0aENvdmFyaWFuY2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgUE9TRV9XSVRIX0NPVkFSSUFOQ0UgPSAxMzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Qb3NlPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUE9TRV9XSVRIX0NPVkFSSUFOQ0VfX1BPU0UgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkNvdmFyaWFuY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPU0VfV0lUSF9DT1ZBUklBTkNFX19DT1ZBUklBTkNFID0gMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5Qb3NlIFdpdGggQ292YXJpYW5jZTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT1NFX1dJVEhfQ09WQVJJQU5DRV9GRUFUVVJFX0NPVU5UID0gMjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5Qb3NlIFdpdGggQ292YXJpYW5jZTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT1NFX1dJVEhfQ09WQVJJQU5DRV9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9zZTJESW1wbCA8ZW0+UG9zZTIgRDwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Qb3NlMkRJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0UG9zZTJEKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFBPU0UyX0QgPSAxNDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5YPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUE9TRTJfRF9fWCA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+WTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPU0UyX0RfX1kgPSAxOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlRoZXRhPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUE9TRTJfRF9fVEhFVEEgPSAyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlBvc2UyIEQ8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUE9TRTJfRF9GRUFUVVJFX0NPVU5UID0gMzsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5Qb3NlMiBEPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPU0UyX0RfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWRJbXBsIDxlbT5Qb3NlIFdpdGggQ292YXJpYW5jZSBTdGFtcGVkPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWRJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0UG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBQT1NFX1dJVEhfQ09WQVJJQU5DRV9TVEFNUEVEID0gMTU7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+UG9zZSBXaXRoIENvdmFyaWFuY2UgU3RhbXBlZDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT1NFX1dJVEhfQ09WQVJJQU5DRV9TVEFNUEVEX0ZFQVRVUkVfQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPlBvc2UgV2l0aCBDb3ZhcmlhbmNlIFN0YW1wZWQ8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUE9TRV9XSVRIX0NPVkFSSUFOQ0VfU1RBTVBFRF9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9zZUFycmF5SW1wbCA8ZW0+UG9zZSBBcnJheTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Qb3NlQXJyYXlJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0UG9zZUFycmF5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFBPU0VfQVJSQVkgPSAxNjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT1NFX0FSUkFZX19IRUFERVIgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlBvc2VzPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT1NFX0FSUkFZX19QT1NFUyA9IDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+UG9zZSBBcnJheTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT1NFX0FSUkFZX0ZFQVRVUkVfQ09VTlQgPSAyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPlBvc2UgQXJyYXk8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUE9TRV9BUlJBWV9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUXVhdGVybmlvblN0YW1wZWRJbXBsIDxlbT5RdWF0ZXJuaW9uIFN0YW1wZWQ8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUXVhdGVybmlvblN0YW1wZWRJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0UXVhdGVybmlvblN0YW1wZWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgUVVBVEVSTklPTl9TVEFNUEVEID0gMTc7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUVVBVEVSTklPTl9TVEFNUEVEX19IRUFERVIgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlF1YXRlcm5pb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBRVUFURVJOSU9OX1NUQU1QRURfX1FVQVRFUk5JT04gPSAxOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlF1YXRlcm5pb24gU3RhbXBlZDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBRVUFURVJOSU9OX1NUQU1QRURfRkVBVFVSRV9DT1VOVCA9IDI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+UXVhdGVybmlvbiBTdGFtcGVkPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFFVQVRFUk5JT05fU1RBTVBFRF9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuVHJhbnNmb3JtSW1wbCA8ZW0+VHJhbnNmb3JtPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlRyYW5zZm9ybUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRUcmFuc2Zvcm0oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgVFJBTlNGT1JNID0gMTg7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+VHJhbnNsYXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBUUkFOU0ZPUk1fX1RSQU5TTEFUSU9OID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Sb3RhdGlvbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFRSQU5TRk9STV9fUk9UQVRJT04gPSAxOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlRyYW5zZm9ybTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBUUkFOU0ZPUk1fRkVBVFVSRV9DT1VOVCA9IDI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+VHJhbnNmb3JtPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFRSQU5TRk9STV9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuV3JlbmNoU3RhbXBlZEltcGwgPGVtPldyZW5jaCBTdGFtcGVkPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLldyZW5jaFN0YW1wZWRJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0V3JlbmNoU3RhbXBlZCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBXUkVOQ0hfU1RBTVBFRCA9IDE5OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFdSRU5DSF9TVEFNUEVEX19IRUFERVIgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPldyZW5jaDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFdSRU5DSF9TVEFNUEVEX19XUkVOQ0ggPSAxOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPldyZW5jaCBTdGFtcGVkPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFdSRU5DSF9TVEFNUEVEX0ZFQVRVUkVfQ09VTlQgPSAyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPldyZW5jaCBTdGFtcGVkPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFdSRU5DSF9TVEFNUEVEX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5XcmVuY2hJbXBsIDxlbT5XcmVuY2g8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuV3JlbmNoSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldFdyZW5jaCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBXUkVOQ0ggPSAyMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Gb3JjZTwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFdSRU5DSF9fRk9SQ0UgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlRvcnF1ZTwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFdSRU5DSF9fVE9SUVVFID0gMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5XcmVuY2g8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgV1JFTkNIX0ZFQVRVUkVfQ09VTlQgPSAyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPldyZW5jaDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBXUkVOQ0hfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludCA8ZW0+UG9pbnQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+UG9pbnQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50CisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRQb2ludCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50I2dldFggPGVtPlg8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5YPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludCNnZXRYKCkKKwkgKiBAc2VlICNnZXRQb2ludCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0UG9pbnRfWCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50I2dldFkgPGVtPlk8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5ZPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludCNnZXRZKCkKKwkgKiBAc2VlICNnZXRQb2ludCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0UG9pbnRfWSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50I2dldFogPGVtPlo8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5aPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludCNnZXRaKCkKKwkgKiBAc2VlICNnZXRQb2ludCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0UG9pbnRfWigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludDMyIDxlbT5Qb2ludDMyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlBvaW50MzI8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50MzIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldFBvaW50MzIoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludDMyI2dldFggPGVtPlg8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5YPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludDMyI2dldFgoKQorCSAqIEBzZWUgI2dldFBvaW50MzIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFBvaW50MzJfWCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50MzIjZ2V0WSA8ZW0+WTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlk8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50MzIjZ2V0WSgpCisJICogQHNlZSAjZ2V0UG9pbnQzMigpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0UG9pbnQzMl9ZKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9pbnQzMiNnZXRaIDxlbT5aPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+WjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9pbnQzMiNnZXRaKCkKKwkgKiBAc2VlICNnZXRQb2ludDMyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRQb2ludDMyX1ooKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9pbnRTdGFtcGVkIDxlbT5Qb2ludCBTdGFtcGVkPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlBvaW50IFN0YW1wZWQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50U3RhbXBlZAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0UG9pbnRTdGFtcGVkKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9pbnRTdGFtcGVkI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+SGVhZGVyPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludFN0YW1wZWQjZ2V0SGVhZGVyKCkKKwkgKiBAc2VlICNnZXRQb2ludFN0YW1wZWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFBvaW50U3RhbXBlZF9IZWFkZXIoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludFN0YW1wZWQjZ2V0UG9pbnQgPGVtPlBvaW50PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+UG9pbnQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50U3RhbXBlZCNnZXRQb2ludCgpCisJICogQHNlZSAjZ2V0UG9pbnRTdGFtcGVkKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRQb2ludFN0YW1wZWRfUG9pbnQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9seWdvbiA8ZW0+UG9seWdvbjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5Qb2x5Z29uPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2x5Z29uCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRQb2x5Z29uKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0ICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2x5Z29uI2dldFBvaW50IDxlbT5Qb2ludDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0ICc8ZW0+UG9pbnQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvbHlnb24jZ2V0UG9pbnQoKQorCSAqIEBzZWUgI2dldFBvbHlnb24oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFBvbHlnb25fUG9pbnQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9seWdvblN0YW1wZWQgPGVtPlBvbHlnb24gU3RhbXBlZDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5Qb2x5Z29uIFN0YW1wZWQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvbHlnb25TdGFtcGVkCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRQb2x5Z29uU3RhbXBlZCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvbHlnb25TdGFtcGVkI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+SGVhZGVyPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2x5Z29uU3RhbXBlZCNnZXRIZWFkZXIoKQorCSAqIEBzZWUgI2dldFBvbHlnb25TdGFtcGVkKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRQb2x5Z29uU3RhbXBlZF9IZWFkZXIoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2x5Z29uU3RhbXBlZCNnZXRQb2x5Z29uIDxlbT5Qb2x5Z29uPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+UG9seWdvbjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9seWdvblN0YW1wZWQjZ2V0UG9seWdvbigpCisJICogQHNlZSAjZ2V0UG9seWdvblN0YW1wZWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFBvbHlnb25TdGFtcGVkX1BvbHlnb24oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVmVjdG9yMyA8ZW0+VmVjdG9yMzwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5WZWN0b3IzPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5WZWN0b3IzCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRWZWN0b3IzKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVmVjdG9yMyNnZXRYIDxlbT5YPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+WDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVmVjdG9yMyNnZXRYKCkKKwkgKiBAc2VlICNnZXRWZWN0b3IzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRWZWN0b3IzX1goKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5WZWN0b3IzI2dldFkgPGVtPlk8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5ZPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5WZWN0b3IzI2dldFkoKQorCSAqIEBzZWUgI2dldFZlY3RvcjMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFZlY3RvcjNfWSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlZlY3RvcjMjZ2V0WiA8ZW0+WjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlo8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlZlY3RvcjMjZ2V0WigpCisJICogQHNlZSAjZ2V0VmVjdG9yMygpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0VmVjdG9yM19aKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlZlY3RvcjNTdGFtcGVkIDxlbT5WZWN0b3IzIFN0YW1wZWQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+VmVjdG9yMyBTdGFtcGVkPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5WZWN0b3IzU3RhbXBlZAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0VmVjdG9yM1N0YW1wZWQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5WZWN0b3IzU3RhbXBlZCNnZXRIZWFkZXIgPGVtPkhlYWRlcjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPkhlYWRlcjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVmVjdG9yM1N0YW1wZWQjZ2V0SGVhZGVyKCkKKwkgKiBAc2VlICNnZXRWZWN0b3IzU3RhbXBlZCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0VmVjdG9yM1N0YW1wZWRfSGVhZGVyKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVmVjdG9yM1N0YW1wZWQjZ2V0VmVjdG9yIDxlbT5WZWN0b3I8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5WZWN0b3I8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlZlY3RvcjNTdGFtcGVkI2dldFZlY3RvcigpCisJICogQHNlZSAjZ2V0VmVjdG9yM1N0YW1wZWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFZlY3RvcjNTdGFtcGVkX1ZlY3RvcigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5RdWF0ZXJuaW9uIDxlbT5RdWF0ZXJuaW9uPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlF1YXRlcm5pb248L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlF1YXRlcm5pb24KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldFF1YXRlcm5pb24oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5RdWF0ZXJuaW9uI2dldFggPGVtPlg8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5YPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5RdWF0ZXJuaW9uI2dldFgoKQorCSAqIEBzZWUgI2dldFF1YXRlcm5pb24oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFF1YXRlcm5pb25fWCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlF1YXRlcm5pb24jZ2V0WSA8ZW0+WTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlk8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlF1YXRlcm5pb24jZ2V0WSgpCisJICogQHNlZSAjZ2V0UXVhdGVybmlvbigpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0UXVhdGVybmlvbl9ZKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUXVhdGVybmlvbiNnZXRaIDxlbT5aPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+WjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUXVhdGVybmlvbiNnZXRaKCkKKwkgKiBAc2VlICNnZXRRdWF0ZXJuaW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRRdWF0ZXJuaW9uX1ooKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5RdWF0ZXJuaW9uI2dldFcgPGVtPlc8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5XPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5RdWF0ZXJuaW9uI2dldFcoKQorCSAqIEBzZWUgI2dldFF1YXRlcm5pb24oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFF1YXRlcm5pb25fVygpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlIDxlbT5Qb3NlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlBvc2U8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2UKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldFBvc2UoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlI2dldFBvc2l0aW9uIDxlbT5Qb3NpdGlvbjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPlBvc2l0aW9uPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlI2dldFBvc2l0aW9uKCkKKwkgKiBAc2VlICNnZXRQb3NlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRQb3NlX1Bvc2l0aW9uKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZSNnZXRPcmllbnRhdGlvbiA8ZW0+T3JpZW50YXRpb248L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5PcmllbnRhdGlvbjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZSNnZXRPcmllbnRhdGlvbigpCisJICogQHNlZSAjZ2V0UG9zZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0UG9zZV9PcmllbnRhdGlvbigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlU3RhbXBlZCA8ZW0+UG9zZSBTdGFtcGVkPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlBvc2UgU3RhbXBlZDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZVN0YW1wZWQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldFBvc2VTdGFtcGVkKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZVN0YW1wZWQjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5IZWFkZXI8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2VTdGFtcGVkI2dldEhlYWRlcigpCisJICogQHNlZSAjZ2V0UG9zZVN0YW1wZWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFBvc2VTdGFtcGVkX0hlYWRlcigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2VTdGFtcGVkI2dldFBvc2UgPGVtPlBvc2U8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5Qb3NlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlU3RhbXBlZCNnZXRQb3NlKCkKKwkgKiBAc2VlICNnZXRQb3NlU3RhbXBlZCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0UG9zZVN0YW1wZWRfUG9zZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Ud2lzdFdpdGhDb3ZhcmlhbmNlIDxlbT5Ud2lzdCBXaXRoIENvdmFyaWFuY2U8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+VHdpc3QgV2l0aCBDb3ZhcmlhbmNlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Ud2lzdFdpdGhDb3ZhcmlhbmNlCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRUd2lzdFdpdGhDb3ZhcmlhbmNlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHdpc3RXaXRoQ292YXJpYW5jZSNnZXRUd2lzdCA8ZW0+VHdpc3Q8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5Ud2lzdDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHdpc3RXaXRoQ292YXJpYW5jZSNnZXRUd2lzdCgpCisJICogQHNlZSAjZ2V0VHdpc3RXaXRoQ292YXJpYW5jZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0VHdpc3RXaXRoQ292YXJpYW5jZV9Ud2lzdCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHdpc3RXaXRoQ292YXJpYW5jZSNnZXRDb3ZhcmlhbmNlIDxlbT5Db3ZhcmlhbmNlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlIGxpc3QgJzxlbT5Db3ZhcmlhbmNlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Ud2lzdFdpdGhDb3ZhcmlhbmNlI2dldENvdmFyaWFuY2UoKQorCSAqIEBzZWUgI2dldFR3aXN0V2l0aENvdmFyaWFuY2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFR3aXN0V2l0aENvdmFyaWFuY2VfQ292YXJpYW5jZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Ud2lzdCA8ZW0+VHdpc3Q8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+VHdpc3Q8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlR3aXN0CisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRUd2lzdCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlR3aXN0I2dldExpbmVhciA8ZW0+TGluZWFyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+TGluZWFyPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Ud2lzdCNnZXRMaW5lYXIoKQorCSAqIEBzZWUgI2dldFR3aXN0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRUd2lzdF9MaW5lYXIoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Ud2lzdCNnZXRBbmd1bGFyIDxlbT5Bbmd1bGFyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+QW5ndWxhcjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHdpc3QjZ2V0QW5ndWxhcigpCisJICogQHNlZSAjZ2V0VHdpc3QoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFR3aXN0X0FuZ3VsYXIoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHdpc3RTdGFtcGVkIDxlbT5Ud2lzdCBTdGFtcGVkPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlR3aXN0IFN0YW1wZWQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlR3aXN0U3RhbXBlZAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0VHdpc3RTdGFtcGVkKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHdpc3RTdGFtcGVkI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+SGVhZGVyPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Ud2lzdFN0YW1wZWQjZ2V0SGVhZGVyKCkKKwkgKiBAc2VlICNnZXRUd2lzdFN0YW1wZWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFR3aXN0U3RhbXBlZF9IZWFkZXIoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Ud2lzdFN0YW1wZWQjZ2V0VHdpc3QgPGVtPlR3aXN0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+VHdpc3Q8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlR3aXN0U3RhbXBlZCNnZXRUd2lzdCgpCisJICogQHNlZSAjZ2V0VHdpc3RTdGFtcGVkKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRUd2lzdFN0YW1wZWRfVHdpc3QoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZVdpdGhDb3ZhcmlhbmNlIDxlbT5Qb3NlIFdpdGggQ292YXJpYW5jZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5Qb3NlIFdpdGggQ292YXJpYW5jZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZVdpdGhDb3ZhcmlhbmNlCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRQb3NlV2l0aENvdmFyaWFuY2UoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlV2l0aENvdmFyaWFuY2UjZ2V0UG9zZSA8ZW0+UG9zZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPlBvc2U8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2VXaXRoQ292YXJpYW5jZSNnZXRQb3NlKCkKKwkgKiBAc2VlICNnZXRQb3NlV2l0aENvdmFyaWFuY2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFBvc2VXaXRoQ292YXJpYW5jZV9Qb3NlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlV2l0aENvdmFyaWFuY2UjZ2V0Q292YXJpYW5jZSA8ZW0+Q292YXJpYW5jZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICc8ZW0+Q292YXJpYW5jZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZVdpdGhDb3ZhcmlhbmNlI2dldENvdmFyaWFuY2UoKQorCSAqIEBzZWUgI2dldFBvc2VXaXRoQ292YXJpYW5jZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0UG9zZVdpdGhDb3ZhcmlhbmNlX0NvdmFyaWFuY2UoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZTJEIDxlbT5Qb3NlMiBEPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlBvc2UyIEQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2UyRAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0UG9zZTJEKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZTJEI2dldFggPGVtPlg8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5YPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlMkQjZ2V0WCgpCisJICogQHNlZSAjZ2V0UG9zZTJEKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRQb3NlMkRfWCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2UyRCNnZXRZIDxlbT5ZPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+WTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZTJEI2dldFkoKQorCSAqIEBzZWUgI2dldFBvc2UyRCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0UG9zZTJEX1koKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlMkQjZ2V0VGhldGEgPGVtPlRoZXRhPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+VGhldGE8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2UyRCNnZXRUaGV0YSgpCisJICogQHNlZSAjZ2V0UG9zZTJEKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRQb3NlMkRfVGhldGEoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZCA8ZW0+UG9zZSBXaXRoIENvdmFyaWFuY2UgU3RhbXBlZDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5Qb3NlIFdpdGggQ292YXJpYW5jZSBTdGFtcGVkPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2VBcnJheSA8ZW0+UG9zZSBBcnJheTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5Qb3NlIEFycmF5PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlQXJyYXkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldFBvc2VBcnJheSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2VBcnJheSNnZXRIZWFkZXIgPGVtPkhlYWRlcjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPkhlYWRlcjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZUFycmF5I2dldEhlYWRlcigpCisJICogQHNlZSAjZ2V0UG9zZUFycmF5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRQb3NlQXJyYXlfSGVhZGVyKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0ICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlQXJyYXkjZ2V0UG9zZXMgPGVtPlBvc2VzPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QgJzxlbT5Qb3NlczwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZUFycmF5I2dldFBvc2VzKCkKKwkgKiBAc2VlICNnZXRQb3NlQXJyYXkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFBvc2VBcnJheV9Qb3NlcygpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5RdWF0ZXJuaW9uU3RhbXBlZCA8ZW0+UXVhdGVybmlvbiBTdGFtcGVkPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlF1YXRlcm5pb24gU3RhbXBlZDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUXVhdGVybmlvblN0YW1wZWQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldFF1YXRlcm5pb25TdGFtcGVkKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUXVhdGVybmlvblN0YW1wZWQjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5IZWFkZXI8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlF1YXRlcm5pb25TdGFtcGVkI2dldEhlYWRlcigpCisJICogQHNlZSAjZ2V0UXVhdGVybmlvblN0YW1wZWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFF1YXRlcm5pb25TdGFtcGVkX0hlYWRlcigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlF1YXRlcm5pb25TdGFtcGVkI2dldFF1YXRlcm5pb24gPGVtPlF1YXRlcm5pb248L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5RdWF0ZXJuaW9uPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5RdWF0ZXJuaW9uU3RhbXBlZCNnZXRRdWF0ZXJuaW9uKCkKKwkgKiBAc2VlICNnZXRRdWF0ZXJuaW9uU3RhbXBlZCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0UXVhdGVybmlvblN0YW1wZWRfUXVhdGVybmlvbigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5UcmFuc2Zvcm0gPGVtPlRyYW5zZm9ybTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5UcmFuc2Zvcm08L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlRyYW5zZm9ybQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0VHJhbnNmb3JtKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHJhbnNmb3JtI2dldFRyYW5zbGF0aW9uIDxlbT5UcmFuc2xhdGlvbjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPlRyYW5zbGF0aW9uPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5UcmFuc2Zvcm0jZ2V0VHJhbnNsYXRpb24oKQorCSAqIEBzZWUgI2dldFRyYW5zZm9ybSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0VHJhbnNmb3JtX1RyYW5zbGF0aW9uKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHJhbnNmb3JtI2dldFJvdGF0aW9uIDxlbT5Sb3RhdGlvbjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPlJvdGF0aW9uPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5UcmFuc2Zvcm0jZ2V0Um90YXRpb24oKQorCSAqIEBzZWUgI2dldFRyYW5zZm9ybSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0VHJhbnNmb3JtX1JvdGF0aW9uKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLldyZW5jaFN0YW1wZWQgPGVtPldyZW5jaCBTdGFtcGVkPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPldyZW5jaCBTdGFtcGVkPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5XcmVuY2hTdGFtcGVkCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRXcmVuY2hTdGFtcGVkKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuV3JlbmNoU3RhbXBlZCNnZXRIZWFkZXIgPGVtPkhlYWRlcjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPkhlYWRlcjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuV3JlbmNoU3RhbXBlZCNnZXRIZWFkZXIoKQorCSAqIEBzZWUgI2dldFdyZW5jaFN0YW1wZWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFdyZW5jaFN0YW1wZWRfSGVhZGVyKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuV3JlbmNoU3RhbXBlZCNnZXRXcmVuY2ggPGVtPldyZW5jaDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPldyZW5jaDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuV3JlbmNoU3RhbXBlZCNnZXRXcmVuY2goKQorCSAqIEBzZWUgI2dldFdyZW5jaFN0YW1wZWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFdyZW5jaFN0YW1wZWRfV3JlbmNoKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLldyZW5jaCA8ZW0+V3JlbmNoPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPldyZW5jaDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuV3JlbmNoCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRXcmVuY2goKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5XcmVuY2gjZ2V0Rm9yY2UgPGVtPkZvcmNlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+Rm9yY2U8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLldyZW5jaCNnZXRGb3JjZSgpCisJICogQHNlZSAjZ2V0V3JlbmNoKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRXcmVuY2hfRm9yY2UoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5XcmVuY2gjZ2V0VG9ycXVlIDxlbT5Ub3JxdWU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5Ub3JxdWU8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLldyZW5jaCNnZXRUb3JxdWUoKQorCSAqIEBzZWUgI2dldFdyZW5jaCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0V3JlbmNoX1RvcnF1ZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgZmFjdG9yeSB0aGF0IGNyZWF0ZXMgdGhlIGluc3RhbmNlcyBvZiB0aGUgbW9kZWwuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBmYWN0b3J5IHRoYXQgY3JlYXRlcyB0aGUgaW5zdGFuY2VzIG9mIHRoZSBtb2RlbC4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeSBnZXRHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5KCk7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIERlZmluZXMgbGl0ZXJhbHMgZm9yIHRoZSBtZXRhIG9iamVjdHMgdGhhdCByZXByZXNlbnQKKwkgKiA8dWw+CisJICogPGxpPmVhY2ggY2xhc3MsPC9saT4KKwkgKiA8bGk+ZWFjaCBmZWF0dXJlIG9mIGVhY2ggY2xhc3MsPC9saT4KKwkgKiA8bGk+ZWFjaCBvcGVyYXRpb24gb2YgZWFjaCBjbGFzcyw8L2xpPgorCSAqIDxsaT5lYWNoIGVudW0sPC9saT4KKwkgKiA8bGk+YW5kIGVhY2ggZGF0YSB0eXBlPC9saT4KKwkgKiA8L3VsPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnRlcmZhY2UgTGl0ZXJhbHMgeworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Qb2ludEltcGwgPGVtPlBvaW50PC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlBvaW50SW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRQb2ludCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBQT0lOVCA9IGVJTlNUQU5DRS5nZXRQb2ludCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+WDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIFBPSU5UX19YID0gZUlOU1RBTkNFLmdldFBvaW50X1goKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlk8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBQT0lOVF9fWSA9IGVJTlNUQU5DRS5nZXRQb2ludF9ZKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5aPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgUE9JTlRfX1ogPSBlSU5TVEFOQ0UuZ2V0UG9pbnRfWigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlBvaW50MzJJbXBsIDxlbT5Qb2ludDMyPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlBvaW50MzJJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldFBvaW50MzIoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgUE9JTlQzMiA9IGVJTlNUQU5DRS5nZXRQb2ludDMyKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5YPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgUE9JTlQzMl9fWCA9IGVJTlNUQU5DRS5nZXRQb2ludDMyX1goKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlk8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBQT0lOVDMyX19ZID0gZUlOU1RBTkNFLmdldFBvaW50MzJfWSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+WjwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIFBPSU5UMzJfX1ogPSBlSU5TVEFOQ0UuZ2V0UG9pbnQzMl9aKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9pbnRTdGFtcGVkSW1wbCA8ZW0+UG9pbnQgU3RhbXBlZDwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Qb2ludFN0YW1wZWRJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldFBvaW50U3RhbXBlZCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBQT0lOVF9TVEFNUEVEID0gZUlOU1RBTkNFLmdldFBvaW50U3RhbXBlZCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgUE9JTlRfU1RBTVBFRF9fSEVBREVSID0gZUlOU1RBTkNFLmdldFBvaW50U3RhbXBlZF9IZWFkZXIoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlBvaW50PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgUE9JTlRfU1RBTVBFRF9fUE9JTlQgPSBlSU5TVEFOQ0UuZ2V0UG9pbnRTdGFtcGVkX1BvaW50KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9seWdvbkltcGwgPGVtPlBvbHlnb248L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9seWdvbkltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0UG9seWdvbigpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBQT0xZR09OID0gZUlOU1RBTkNFLmdldFBvbHlnb24oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlBvaW50PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdCBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBQT0xZR09OX19QT0lOVCA9IGVJTlNUQU5DRS5nZXRQb2x5Z29uX1BvaW50KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9seWdvblN0YW1wZWRJbXBsIDxlbT5Qb2x5Z29uIFN0YW1wZWQ8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9seWdvblN0YW1wZWRJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldFBvbHlnb25TdGFtcGVkKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFBPTFlHT05fU1RBTVBFRCA9IGVJTlNUQU5DRS5nZXRQb2x5Z29uU3RhbXBlZCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgUE9MWUdPTl9TVEFNUEVEX19IRUFERVIgPSBlSU5TVEFOQ0UuZ2V0UG9seWdvblN0YW1wZWRfSGVhZGVyKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5Qb2x5Z29uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgUE9MWUdPTl9TVEFNUEVEX19QT0xZR09OID0gZUlOU1RBTkNFLmdldFBvbHlnb25TdGFtcGVkX1BvbHlnb24oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5WZWN0b3IzSW1wbCA8ZW0+VmVjdG9yMzwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5WZWN0b3IzSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRWZWN0b3IzKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFZFQ1RPUjMgPSBlSU5TVEFOQ0UuZ2V0VmVjdG9yMygpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+WDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIFZFQ1RPUjNfX1ggPSBlSU5TVEFOQ0UuZ2V0VmVjdG9yM19YKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5ZPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgVkVDVE9SM19fWSA9IGVJTlNUQU5DRS5nZXRWZWN0b3IzX1koKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlo8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBWRUNUT1IzX19aID0gZUlOU1RBTkNFLmdldFZlY3RvcjNfWigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlZlY3RvcjNTdGFtcGVkSW1wbCA8ZW0+VmVjdG9yMyBTdGFtcGVkPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlZlY3RvcjNTdGFtcGVkSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRWZWN0b3IzU3RhbXBlZCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBWRUNUT1IzX1NUQU1QRUQgPSBlSU5TVEFOQ0UuZ2V0VmVjdG9yM1N0YW1wZWQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIFZFQ1RPUjNfU1RBTVBFRF9fSEVBREVSID0gZUlOU1RBTkNFLmdldFZlY3RvcjNTdGFtcGVkX0hlYWRlcigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VmVjdG9yPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgVkVDVE9SM19TVEFNUEVEX19WRUNUT1IgPSBlSU5TVEFOQ0UuZ2V0VmVjdG9yM1N0YW1wZWRfVmVjdG9yKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUXVhdGVybmlvbkltcGwgPGVtPlF1YXRlcm5pb248L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUXVhdGVybmlvbkltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0UXVhdGVybmlvbigpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBRVUFURVJOSU9OID0gZUlOU1RBTkNFLmdldFF1YXRlcm5pb24oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlg8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBRVUFURVJOSU9OX19YID0gZUlOU1RBTkNFLmdldFF1YXRlcm5pb25fWCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+WTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIFFVQVRFUk5JT05fX1kgPSBlSU5TVEFOQ0UuZ2V0UXVhdGVybmlvbl9ZKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5aPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgUVVBVEVSTklPTl9fWiA9IGVJTlNUQU5DRS5nZXRRdWF0ZXJuaW9uX1ooKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlc8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBRVUFURVJOSU9OX19XID0gZUlOU1RBTkNFLmdldFF1YXRlcm5pb25fVygpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlBvc2VJbXBsIDxlbT5Qb3NlPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlBvc2VJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldFBvc2UoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgUE9TRSA9IGVJTlNUQU5DRS5nZXRQb3NlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5Qb3NpdGlvbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIFBPU0VfX1BPU0lUSU9OID0gZUlOU1RBTkNFLmdldFBvc2VfUG9zaXRpb24oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPk9yaWVudGF0aW9uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgUE9TRV9fT1JJRU5UQVRJT04gPSBlSU5TVEFOQ0UuZ2V0UG9zZV9PcmllbnRhdGlvbigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlBvc2VTdGFtcGVkSW1wbCA8ZW0+UG9zZSBTdGFtcGVkPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlBvc2VTdGFtcGVkSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRQb3NlU3RhbXBlZCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBQT1NFX1NUQU1QRUQgPSBlSU5TVEFOQ0UuZ2V0UG9zZVN0YW1wZWQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIFBPU0VfU1RBTVBFRF9fSEVBREVSID0gZUlOU1RBTkNFLmdldFBvc2VTdGFtcGVkX0hlYWRlcigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UG9zZTwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIFBPU0VfU1RBTVBFRF9fUE9TRSA9IGVJTlNUQU5DRS5nZXRQb3NlU3RhbXBlZF9Qb3NlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuVHdpc3RXaXRoQ292YXJpYW5jZUltcGwgPGVtPlR3aXN0IFdpdGggQ292YXJpYW5jZTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Ud2lzdFdpdGhDb3ZhcmlhbmNlSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRUd2lzdFdpdGhDb3ZhcmlhbmNlKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFRXSVNUX1dJVEhfQ09WQVJJQU5DRSA9IGVJTlNUQU5DRS5nZXRUd2lzdFdpdGhDb3ZhcmlhbmNlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5Ud2lzdDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIFRXSVNUX1dJVEhfQ09WQVJJQU5DRV9fVFdJU1QgPSBlSU5TVEFOQ0UuZ2V0VHdpc3RXaXRoQ292YXJpYW5jZV9Ud2lzdCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+Q292YXJpYW5jZTwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgVFdJU1RfV0lUSF9DT1ZBUklBTkNFX19DT1ZBUklBTkNFID0gZUlOU1RBTkNFLmdldFR3aXN0V2l0aENvdmFyaWFuY2VfQ292YXJpYW5jZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlR3aXN0SW1wbCA8ZW0+VHdpc3Q8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuVHdpc3RJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldFR3aXN0KCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFRXSVNUID0gZUlOU1RBTkNFLmdldFR3aXN0KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5MaW5lYXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBUV0lTVF9fTElORUFSID0gZUlOU1RBTkNFLmdldFR3aXN0X0xpbmVhcigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QW5ndWxhcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIFRXSVNUX19BTkdVTEFSID0gZUlOU1RBTkNFLmdldFR3aXN0X0FuZ3VsYXIoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Ud2lzdFN0YW1wZWRJbXBsIDxlbT5Ud2lzdCBTdGFtcGVkPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlR3aXN0U3RhbXBlZEltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0VHdpc3RTdGFtcGVkKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFRXSVNUX1NUQU1QRUQgPSBlSU5TVEFOQ0UuZ2V0VHdpc3RTdGFtcGVkKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBUV0lTVF9TVEFNUEVEX19IRUFERVIgPSBlSU5TVEFOQ0UuZ2V0VHdpc3RTdGFtcGVkX0hlYWRlcigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VHdpc3Q8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBUV0lTVF9TVEFNUEVEX19UV0lTVCA9IGVJTlNUQU5DRS5nZXRUd2lzdFN0YW1wZWRfVHdpc3QoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Qb3NlV2l0aENvdmFyaWFuY2VJbXBsIDxlbT5Qb3NlIFdpdGggQ292YXJpYW5jZTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Qb3NlV2l0aENvdmFyaWFuY2VJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldFBvc2VXaXRoQ292YXJpYW5jZSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBQT1NFX1dJVEhfQ09WQVJJQU5DRSA9IGVJTlNUQU5DRS5nZXRQb3NlV2l0aENvdmFyaWFuY2UoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlBvc2U8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBQT1NFX1dJVEhfQ09WQVJJQU5DRV9fUE9TRSA9IGVJTlNUQU5DRS5nZXRQb3NlV2l0aENvdmFyaWFuY2VfUG9zZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+Q292YXJpYW5jZTwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgUE9TRV9XSVRIX0NPVkFSSUFOQ0VfX0NPVkFSSUFOQ0UgPSBlSU5TVEFOQ0UuZ2V0UG9zZVdpdGhDb3ZhcmlhbmNlX0NvdmFyaWFuY2UoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Qb3NlMkRJbXBsIDxlbT5Qb3NlMiBEPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlBvc2UyREltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0UG9zZTJEKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFBPU0UyX0QgPSBlSU5TVEFOQ0UuZ2V0UG9zZTJEKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5YPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgUE9TRTJfRF9fWCA9IGVJTlNUQU5DRS5nZXRQb3NlMkRfWCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+WTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIFBPU0UyX0RfX1kgPSBlSU5TVEFOQ0UuZ2V0UG9zZTJEX1koKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlRoZXRhPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgUE9TRTJfRF9fVEhFVEEgPSBlSU5TVEFOQ0UuZ2V0UG9zZTJEX1RoZXRhKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZEltcGwgPGVtPlBvc2UgV2l0aCBDb3ZhcmlhbmNlIFN0YW1wZWQ8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZEltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0UG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBQT1NFX1dJVEhfQ09WQVJJQU5DRV9TVEFNUEVEID0gZUlOU1RBTkNFLmdldFBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Qb3NlQXJyYXlJbXBsIDxlbT5Qb3NlIEFycmF5PC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlBvc2VBcnJheUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0UG9zZUFycmF5KCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFBPU0VfQVJSQVkgPSBlSU5TVEFOQ0UuZ2V0UG9zZUFycmF5KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBQT1NFX0FSUkFZX19IRUFERVIgPSBlSU5TVEFOQ0UuZ2V0UG9zZUFycmF5X0hlYWRlcigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UG9zZXM8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0IGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIFBPU0VfQVJSQVlfX1BPU0VTID0gZUlOU1RBTkNFLmdldFBvc2VBcnJheV9Qb3NlcygpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlF1YXRlcm5pb25TdGFtcGVkSW1wbCA8ZW0+UXVhdGVybmlvbiBTdGFtcGVkPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlF1YXRlcm5pb25TdGFtcGVkSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRRdWF0ZXJuaW9uU3RhbXBlZCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBRVUFURVJOSU9OX1NUQU1QRUQgPSBlSU5TVEFOQ0UuZ2V0UXVhdGVybmlvblN0YW1wZWQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIFFVQVRFUk5JT05fU1RBTVBFRF9fSEVBREVSID0gZUlOU1RBTkNFLmdldFF1YXRlcm5pb25TdGFtcGVkX0hlYWRlcigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UXVhdGVybmlvbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIFFVQVRFUk5JT05fU1RBTVBFRF9fUVVBVEVSTklPTiA9IGVJTlNUQU5DRS5nZXRRdWF0ZXJuaW9uU3RhbXBlZF9RdWF0ZXJuaW9uKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuVHJhbnNmb3JtSW1wbCA8ZW0+VHJhbnNmb3JtPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlRyYW5zZm9ybUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0VHJhbnNmb3JtKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFRSQU5TRk9STSA9IGVJTlNUQU5DRS5nZXRUcmFuc2Zvcm0oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlRyYW5zbGF0aW9uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgVFJBTlNGT1JNX19UUkFOU0xBVElPTiA9IGVJTlNUQU5DRS5nZXRUcmFuc2Zvcm1fVHJhbnNsYXRpb24oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlJvdGF0aW9uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgVFJBTlNGT1JNX19ST1RBVElPTiA9IGVJTlNUQU5DRS5nZXRUcmFuc2Zvcm1fUm90YXRpb24oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5XcmVuY2hTdGFtcGVkSW1wbCA8ZW0+V3JlbmNoIFN0YW1wZWQ8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuV3JlbmNoU3RhbXBlZEltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0V3JlbmNoU3RhbXBlZCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBXUkVOQ0hfU1RBTVBFRCA9IGVJTlNUQU5DRS5nZXRXcmVuY2hTdGFtcGVkKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBXUkVOQ0hfU1RBTVBFRF9fSEVBREVSID0gZUlOU1RBTkNFLmdldFdyZW5jaFN0YW1wZWRfSGVhZGVyKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5XcmVuY2g8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBXUkVOQ0hfU1RBTVBFRF9fV1JFTkNIID0gZUlOU1RBTkNFLmdldFdyZW5jaFN0YW1wZWRfV3JlbmNoKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuV3JlbmNoSW1wbCA8ZW0+V3JlbmNoPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLldyZW5jaEltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0V3JlbmNoKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFdSRU5DSCA9IGVJTlNUQU5DRS5nZXRXcmVuY2goKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkZvcmNlPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgV1JFTkNIX19GT1JDRSA9IGVJTlNUQU5DRS5nZXRXcmVuY2hfRm9yY2UoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlRvcnF1ZTwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIFdSRU5DSF9fVE9SUVVFID0gZUlOU1RBTkNFLmdldFdyZW5jaF9Ub3JxdWUoKTsKKworCX0KKworfSAvLyBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9pbnQuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb2ludC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU1NzY2YTcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9pbnQuamF2YQpAQCAtMCwwICsxLDEwMSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Qb2ludDwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50I2dldFggPGVtPlg8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9pbnQjZ2V0WSA8ZW0+WTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludCNnZXRaIDxlbT5aPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UjZ2V0UG9pbnQoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgUG9pbnQgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5YPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5YPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5YPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRYKEZsb2F0NjQpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UjZ2V0UG9pbnRfWCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDY0IiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRYKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50I2dldFggPGVtPlg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlg8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFgoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlk8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlk8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlk8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFkoRmxvYXQ2NCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRQb2ludF9ZKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0NjQiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFkoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9pbnQjZ2V0WSA8ZW0+WTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+WTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0WSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0WShPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+WjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+WjwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+WjwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0WihGbG9hdDY0KQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlI2dldFBvaW50X1ooKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0WigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludCNnZXRaIDxlbT5aPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5aPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRaKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRaKE9iamVjdCB2YWx1ZSk7CisKK30gLy8gUG9pbnQKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb2ludDMyLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9pbnQzMi5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFkMWJkMDAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9pbnQzMi5qYXZhCkBAIC0wLDAgKzEsMTAxIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBvaW50MzI8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludDMyI2dldFggPGVtPlg8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9pbnQzMiNnZXRZIDxlbT5ZPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50MzIjZ2V0WiA8ZW0+WjwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlI2dldFBvaW50MzIoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgUG9pbnQzMiBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlg8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlg8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFgoRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRQb2ludDMyX1goKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0WCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludDMyI2dldFggPGVtPlg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlg8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFgoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlk8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlk8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlk8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFkoRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRQb2ludDMyX1koKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0WSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludDMyI2dldFkgPGVtPlk8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlk8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFkoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlo8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlo8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlo8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFooRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRQb2ludDMyX1ooKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0WigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludDMyI2dldFogPGVtPlo8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlo8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFooKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFooT2JqZWN0IHZhbHVlKTsKKworfSAvLyBQb2ludDMyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9pbnRTdGFtcGVkLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9pbnRTdGFtcGVkLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTUzMDVlMAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb2ludFN0YW1wZWQuamF2YQpAQCAtMCwwICsxLDc2IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSGVhZGVyOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Qb2ludCBTdGFtcGVkPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9pbnRTdGFtcGVkI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50U3RhbXBlZCNnZXRQb2ludCA8ZW0+UG9pbnQ8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRQb2ludFN0YW1wZWQoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgUG9pbnRTdGFtcGVkIGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0SGVhZGVyKEhlYWRlcikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRQb2ludFN0YW1wZWRfSGVhZGVyKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJSGVhZGVyIGdldEhlYWRlcigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludFN0YW1wZWQjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0SGVhZGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRIZWFkZXIoSGVhZGVyIHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlBvaW50PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5Qb2ludDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+UG9pbnQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldFBvaW50KFBvaW50KQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlI2dldFBvaW50U3RhbXBlZF9Qb2ludCgpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCVBvaW50IGdldFBvaW50KCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50U3RhbXBlZCNnZXRQb2ludCA8ZW0+UG9pbnQ8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlBvaW50PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRQb2ludCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0UG9pbnQoUG9pbnQgdmFsdWUpOworCit9IC8vIFBvaW50U3RhbXBlZApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1BvbHlnb24uamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb2x5Z29uLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmJlZmU3OQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb2x5Z29uLmphdmEKQEAgLTAsMCArMSw0MCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UG9seWdvbjwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvbHlnb24jZ2V0UG9pbnQgPGVtPlBvaW50PC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UjZ2V0UG9seWdvbigpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBQb2x5Z29uIGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+UG9pbnQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0LgorCSAqIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIHtAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50MzJ9LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+UG9pbnQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+UG9pbnQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UjZ2V0UG9seWdvbl9Qb2ludCgpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiBsb3dlcj0iMyIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUVMaXN0PFBvaW50MzI+IGdldFBvaW50KCk7CisKK30gLy8gUG9seWdvbgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1BvbHlnb25TdGFtcGVkLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9seWdvblN0YW1wZWQuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMmUzNmFmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1BvbHlnb25TdGFtcGVkLmphdmEKQEAgLTAsMCArMSw3NiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UG9seWdvbiBTdGFtcGVkPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9seWdvblN0YW1wZWQjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9seWdvblN0YW1wZWQjZ2V0UG9seWdvbiA8ZW0+UG9seWdvbjwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlI2dldFBvbHlnb25TdGFtcGVkKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFBvbHlnb25TdGFtcGVkIGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0SGVhZGVyKEhlYWRlcikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRQb2x5Z29uU3RhbXBlZF9IZWFkZXIoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlIZWFkZXIgZ2V0SGVhZGVyKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvbHlnb25TdGFtcGVkI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldEhlYWRlcigpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0SGVhZGVyKEhlYWRlciB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Qb2x5Z29uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5Qb2x5Z29uPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5Qb2x5Z29uPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRQb2x5Z29uKFBvbHlnb24pCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UjZ2V0UG9seWdvblN0YW1wZWRfUG9seWdvbigpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCVBvbHlnb24gZ2V0UG9seWdvbigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2x5Z29uU3RhbXBlZCNnZXRQb2x5Z29uIDxlbT5Qb2x5Z29uPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5Qb2x5Z29uPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRQb2x5Z29uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRQb2x5Z29uKFBvbHlnb24gdmFsdWUpOworCit9IC8vIFBvbHlnb25TdGFtcGVkCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9zZS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1Bvc2UuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZTlmMjEyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1Bvc2UuamF2YQpAQCAtMCwwICsxLDc1IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBvc2U8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlI2dldFBvc2l0aW9uIDxlbT5Qb3NpdGlvbjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlI2dldE9yaWVudGF0aW9uIDxlbT5PcmllbnRhdGlvbjwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlI2dldFBvc2UoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgUG9zZSBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlBvc2l0aW9uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5Qb3NpdGlvbjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+UG9zaXRpb248L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldFBvc2l0aW9uKFBvaW50KQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlI2dldFBvc2VfUG9zaXRpb24oKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlQb2ludCBnZXRQb3NpdGlvbigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlI2dldFBvc2l0aW9uIDxlbT5Qb3NpdGlvbjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+UG9zaXRpb248L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldFBvc2l0aW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRQb3NpdGlvbihQb2ludCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5PcmllbnRhdGlvbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+T3JpZW50YXRpb248L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPk9yaWVudGF0aW9uPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRPcmllbnRhdGlvbihRdWF0ZXJuaW9uKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlI2dldFBvc2VfT3JpZW50YXRpb24oKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlRdWF0ZXJuaW9uIGdldE9yaWVudGF0aW9uKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2UjZ2V0T3JpZW50YXRpb24gPGVtPk9yaWVudGF0aW9uPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5PcmllbnRhdGlvbjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0T3JpZW50YXRpb24oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldE9yaWVudGF0aW9uKFF1YXRlcm5pb24gdmFsdWUpOworCit9IC8vIFBvc2UKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb3NlMkQuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb3NlMkQuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43MDk0NjU1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1Bvc2UyRC5qYXZhCkBAIC0wLDAgKzEsMTAxIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBvc2UyIEQ8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlMkQjZ2V0WCA8ZW0+WDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlMkQjZ2V0WSA8ZW0+WTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlMkQjZ2V0VGhldGEgPGVtPlRoZXRhPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UjZ2V0UG9zZTJEKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFBvc2UyRCBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlg8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlg8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFgoRmxvYXQ2NCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRQb3NlMkRfWCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDY0IiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRYKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2UyRCNnZXRYIDxlbT5YPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5YPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRYKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRYKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5ZPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5ZPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5ZPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRZKEZsb2F0NjQpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UjZ2V0UG9zZTJEX1koKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0WSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlMkQjZ2V0WSA8ZW0+WTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+WTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0WSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0WShPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VGhldGE8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlRoZXRhPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5UaGV0YTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0VGhldGEoRmxvYXQ2NCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRQb3NlMkRfVGhldGEoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0VGhldGEoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZTJEI2dldFRoZXRhIDxlbT5UaGV0YTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+VGhldGE8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFRoZXRhKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRUaGV0YShPYmplY3QgdmFsdWUpOworCit9IC8vIFBvc2UyRApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1Bvc2VBcnJheS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1Bvc2VBcnJheS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA3MGU0YjgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9zZUFycmF5LmphdmEKQEAgLTAsMCArMSw2NyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5IZWFkZXI7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBvc2UgQXJyYXk8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlQXJyYXkjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZUFycmF5I2dldFBvc2VzIDxlbT5Qb3NlczwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlI2dldFBvc2VBcnJheSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBQb3NlQXJyYXkgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRIZWFkZXIoSGVhZGVyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlI2dldFBvc2VBcnJheV9IZWFkZXIoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlIZWFkZXIgZ2V0SGVhZGVyKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2VBcnJheSNnZXRIZWFkZXIgPGVtPkhlYWRlcjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRIZWFkZXIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEhlYWRlcihIZWFkZXIgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+UG9zZXM8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0LgorCSAqIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIHtAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2V9LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+UG9zZXM8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+UG9zZXM8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UjZ2V0UG9zZUFycmF5X1Bvc2VzKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFTGlzdDxQb3NlPiBnZXRQb3NlcygpOworCit9IC8vIFBvc2VBcnJheQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1Bvc2VTdGFtcGVkLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9zZVN0YW1wZWQuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNTcwMWMyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1Bvc2VTdGFtcGVkLmphdmEKQEAgLTAsMCArMSw3NiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UG9zZSBTdGFtcGVkPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZVN0YW1wZWQjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZVN0YW1wZWQjZ2V0UG9zZSA8ZW0+UG9zZTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlI2dldFBvc2VTdGFtcGVkKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFBvc2VTdGFtcGVkIGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0SGVhZGVyKEhlYWRlcikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRQb3NlU3RhbXBlZF9IZWFkZXIoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlIZWFkZXIgZ2V0SGVhZGVyKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2VTdGFtcGVkI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldEhlYWRlcigpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0SGVhZGVyKEhlYWRlciB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Qb3NlPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5Qb3NlPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5Qb3NlPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRQb3NlKFBvc2UpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UjZ2V0UG9zZVN0YW1wZWRfUG9zZSgpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCVBvc2UgZ2V0UG9zZSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlU3RhbXBlZCNnZXRQb3NlIDxlbT5Qb3NlPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5Qb3NlPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRQb3NlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRQb3NlKFBvc2UgdmFsdWUpOworCit9IC8vIFBvc2VTdGFtcGVkCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9zZVdpdGhDb3ZhcmlhbmNlLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUG9zZVdpdGhDb3ZhcmlhbmNlLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWEzZGY0OQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb3NlV2l0aENvdmFyaWFuY2UuamF2YQpAQCAtMCwwICsxLDY2IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Qb3NlIFdpdGggQ292YXJpYW5jZTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2VXaXRoQ292YXJpYW5jZSNnZXRQb3NlIDxlbT5Qb3NlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2VXaXRoQ292YXJpYW5jZSNnZXRDb3ZhcmlhbmNlIDxlbT5Db3ZhcmlhbmNlPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UjZ2V0UG9zZVdpdGhDb3ZhcmlhbmNlKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFBvc2VXaXRoQ292YXJpYW5jZSBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlBvc2U8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlBvc2U8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlBvc2U8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldFBvc2UoUG9zZSkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRQb3NlV2l0aENvdmFyaWFuY2VfUG9zZSgpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCVBvc2UgZ2V0UG9zZSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlV2l0aENvdmFyaWFuY2UjZ2V0UG9zZSA8ZW0+UG9zZTwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+UG9zZTwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0UG9zZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0UG9zZShQb3NlIHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkNvdmFyaWFuY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIHtAbGluayBqYXZhLmxhbmcuT2JqZWN0fS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkNvdmFyaWFuY2U8L2VtPicgYXR0cmlidXRlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+Q292YXJpYW5jZTwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRQb3NlV2l0aENvdmFyaWFuY2VfQ292YXJpYW5jZSgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDY0IiBsb3dlcj0iMzYiIHVwcGVyPSIzNiIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUVMaXN0PE9iamVjdD4gZ2V0Q292YXJpYW5jZSgpOworCit9IC8vIFBvc2VXaXRoQ292YXJpYW5jZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1Bvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWQuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDA5Njc3ZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Qb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkLmphdmEKQEAgLTAsMCArMSwxOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Qb3NlIFdpdGggQ292YXJpYW5jZSBTdGFtcGVkPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWQgZXh0ZW5kcyBFT2JqZWN0IHsKK30gLy8gUG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1F1YXRlcm5pb24uamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9RdWF0ZXJuaW9uLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTRjZjEzNQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9RdWF0ZXJuaW9uLmphdmEKQEAgLTAsMCArMSwxMjcgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UXVhdGVybmlvbjwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlF1YXRlcm5pb24jZ2V0WCA8ZW0+WDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5RdWF0ZXJuaW9uI2dldFkgPGVtPlk8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUXVhdGVybmlvbiNnZXRaIDxlbT5aPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlF1YXRlcm5pb24jZ2V0VyA8ZW0+VzwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlI2dldFF1YXRlcm5pb24oKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgUXVhdGVybmlvbiBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlg8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlg8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFgoRmxvYXQ2NCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRRdWF0ZXJuaW9uX1goKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0WCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5RdWF0ZXJuaW9uI2dldFggPGVtPlg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlg8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFgoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlk8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlk8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlk8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFkoRmxvYXQ2NCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRRdWF0ZXJuaW9uX1koKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0WSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5RdWF0ZXJuaW9uI2dldFkgPGVtPlk8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlk8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFkoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlo8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlo8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlo8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFooRmxvYXQ2NCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRRdWF0ZXJuaW9uX1ooKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0WigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5RdWF0ZXJuaW9uI2dldFogPGVtPlo8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlo8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFooKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFooT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlc8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlc8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlc8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFcoRmxvYXQ2NCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRRdWF0ZXJuaW9uX1coKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0VygpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5RdWF0ZXJuaW9uI2dldFcgPGVtPlc8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlc8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFcoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFcoT2JqZWN0IHZhbHVlKTsKKworfSAvLyBRdWF0ZXJuaW9uCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUXVhdGVybmlvblN0YW1wZWQuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9RdWF0ZXJuaW9uU3RhbXBlZC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIzMzgxMjgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvUXVhdGVybmlvblN0YW1wZWQuamF2YQpAQCAtMCwwICsxLDc2IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSGVhZGVyOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5RdWF0ZXJuaW9uIFN0YW1wZWQ8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5RdWF0ZXJuaW9uU3RhbXBlZCNnZXRIZWFkZXIgPGVtPkhlYWRlcjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5RdWF0ZXJuaW9uU3RhbXBlZCNnZXRRdWF0ZXJuaW9uIDxlbT5RdWF0ZXJuaW9uPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UjZ2V0UXVhdGVybmlvblN0YW1wZWQoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgUXVhdGVybmlvblN0YW1wZWQgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRIZWFkZXIoSGVhZGVyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlI2dldFF1YXRlcm5pb25TdGFtcGVkX0hlYWRlcigpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUhlYWRlciBnZXRIZWFkZXIoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUXVhdGVybmlvblN0YW1wZWQjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0SGVhZGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRIZWFkZXIoSGVhZGVyIHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlF1YXRlcm5pb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlF1YXRlcm5pb248L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlF1YXRlcm5pb248L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldFF1YXRlcm5pb24oUXVhdGVybmlvbikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRRdWF0ZXJuaW9uU3RhbXBlZF9RdWF0ZXJuaW9uKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJUXVhdGVybmlvbiBnZXRRdWF0ZXJuaW9uKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlF1YXRlcm5pb25TdGFtcGVkI2dldFF1YXRlcm5pb24gPGVtPlF1YXRlcm5pb248L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlF1YXRlcm5pb248L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldFF1YXRlcm5pb24oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFF1YXRlcm5pb24oUXVhdGVybmlvbiB2YWx1ZSk7CisKK30gLy8gUXVhdGVybmlvblN0YW1wZWQKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9UcmFuc2Zvcm0uamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9UcmFuc2Zvcm0uamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xY2QzMzM1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1RyYW5zZm9ybS5qYXZhCkBAIC0wLDAgKzEsNzUgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+VHJhbnNmb3JtPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHJhbnNmb3JtI2dldFRyYW5zbGF0aW9uIDxlbT5UcmFuc2xhdGlvbjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5UcmFuc2Zvcm0jZ2V0Um90YXRpb24gPGVtPlJvdGF0aW9uPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UjZ2V0VHJhbnNmb3JtKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFRyYW5zZm9ybSBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlRyYW5zbGF0aW9uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5UcmFuc2xhdGlvbjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+VHJhbnNsYXRpb248L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldFRyYW5zbGF0aW9uKFZlY3RvcjMpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UjZ2V0VHJhbnNmb3JtX1RyYW5zbGF0aW9uKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJVmVjdG9yMyBnZXRUcmFuc2xhdGlvbigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5UcmFuc2Zvcm0jZ2V0VHJhbnNsYXRpb24gPGVtPlRyYW5zbGF0aW9uPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5UcmFuc2xhdGlvbjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0VHJhbnNsYXRpb24oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFRyYW5zbGF0aW9uKFZlY3RvcjMgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+Um90YXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlJvdGF0aW9uPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5Sb3RhdGlvbjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0Um90YXRpb24oUXVhdGVybmlvbikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRUcmFuc2Zvcm1fUm90YXRpb24oKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlRdWF0ZXJuaW9uIGdldFJvdGF0aW9uKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlRyYW5zZm9ybSNnZXRSb3RhdGlvbiA8ZW0+Um90YXRpb248L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlJvdGF0aW9uPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRSb3RhdGlvbigpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0Um90YXRpb24oUXVhdGVybmlvbiB2YWx1ZSk7CisKK30gLy8gVHJhbnNmb3JtCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvVHdpc3QuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Ud2lzdC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmMwYTgxNTYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvVHdpc3QuamF2YQpAQCAtMCwwICsxLDc1IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlR3aXN0PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHdpc3QjZ2V0TGluZWFyIDxlbT5MaW5lYXI8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHdpc3QjZ2V0QW5ndWxhciA8ZW0+QW5ndWxhcjwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlI2dldFR3aXN0KCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFR3aXN0IGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TGluZWFyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5MaW5lYXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkxpbmVhcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0TGluZWFyKFZlY3RvcjMpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UjZ2V0VHdpc3RfTGluZWFyKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJVmVjdG9yMyBnZXRMaW5lYXIoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHdpc3QjZ2V0TGluZWFyIDxlbT5MaW5lYXI8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkxpbmVhcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0TGluZWFyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRMaW5lYXIoVmVjdG9yMyB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Bbmd1bGFyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5Bbmd1bGFyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5Bbmd1bGFyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRBbmd1bGFyKFZlY3RvcjMpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UjZ2V0VHdpc3RfQW5ndWxhcigpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCVZlY3RvcjMgZ2V0QW5ndWxhcigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Ud2lzdCNnZXRBbmd1bGFyIDxlbT5Bbmd1bGFyPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5Bbmd1bGFyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRBbmd1bGFyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRBbmd1bGFyKFZlY3RvcjMgdmFsdWUpOworCit9IC8vIFR3aXN0CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvVHdpc3RTdGFtcGVkLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvVHdpc3RTdGFtcGVkLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2I4MDZmZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Ud2lzdFN0YW1wZWQuamF2YQpAQCAtMCwwICsxLDc2IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSGVhZGVyOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Ud2lzdCBTdGFtcGVkPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHdpc3RTdGFtcGVkI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlR3aXN0U3RhbXBlZCNnZXRUd2lzdCA8ZW0+VHdpc3Q8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRUd2lzdFN0YW1wZWQoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgVHdpc3RTdGFtcGVkIGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0SGVhZGVyKEhlYWRlcikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRUd2lzdFN0YW1wZWRfSGVhZGVyKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJSGVhZGVyIGdldEhlYWRlcigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Ud2lzdFN0YW1wZWQjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0SGVhZGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRIZWFkZXIoSGVhZGVyIHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlR3aXN0PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5Ud2lzdDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+VHdpc3Q8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldFR3aXN0KFR3aXN0KQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlI2dldFR3aXN0U3RhbXBlZF9Ud2lzdCgpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCVR3aXN0IGdldFR3aXN0KCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlR3aXN0U3RhbXBlZCNnZXRUd2lzdCA8ZW0+VHdpc3Q8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlR3aXN0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRUd2lzdCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0VHdpc3QoVHdpc3QgdmFsdWUpOworCit9IC8vIFR3aXN0U3RhbXBlZApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1R3aXN0V2l0aENvdmFyaWFuY2UuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Ud2lzdFdpdGhDb3ZhcmlhbmNlLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGE5ZjQ0ZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9Ud2lzdFdpdGhDb3ZhcmlhbmNlLmphdmEKQEAgLTAsMCArMSw2NiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+VHdpc3QgV2l0aCBDb3ZhcmlhbmNlPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHdpc3RXaXRoQ292YXJpYW5jZSNnZXRUd2lzdCA8ZW0+VHdpc3Q8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHdpc3RXaXRoQ292YXJpYW5jZSNnZXRDb3ZhcmlhbmNlIDxlbT5Db3ZhcmlhbmNlPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UjZ2V0VHdpc3RXaXRoQ292YXJpYW5jZSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBUd2lzdFdpdGhDb3ZhcmlhbmNlIGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VHdpc3Q8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlR3aXN0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5Ud2lzdDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0VHdpc3QoVHdpc3QpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UjZ2V0VHdpc3RXaXRoQ292YXJpYW5jZV9Ud2lzdCgpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCVR3aXN0IGdldFR3aXN0KCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlR3aXN0V2l0aENvdmFyaWFuY2UjZ2V0VHdpc3QgPGVtPlR3aXN0PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5Ud2lzdDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0VHdpc3QoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFR3aXN0KFR3aXN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkNvdmFyaWFuY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIHtAbGluayBqYXZhLmxhbmcuT2JqZWN0fS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkNvdmFyaWFuY2U8L2VtPicgYXR0cmlidXRlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+Q292YXJpYW5jZTwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRUd2lzdFdpdGhDb3ZhcmlhbmNlX0NvdmFyaWFuY2UoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NCIgbG93ZXI9IjM2IiB1cHBlcj0iMzYiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFTGlzdDxPYmplY3Q+IGdldENvdmFyaWFuY2UoKTsKKworfSAvLyBUd2lzdFdpdGhDb3ZhcmlhbmNlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvVmVjdG9yMy5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1ZlY3RvcjMuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NDcwNWI5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1ZlY3RvcjMuamF2YQpAQCAtMCwwICsxLDEwMSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5WZWN0b3IzPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVmVjdG9yMyNnZXRYIDxlbT5YPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlZlY3RvcjMjZ2V0WSA8ZW0+WTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5WZWN0b3IzI2dldFogPGVtPlo8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRWZWN0b3IzKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFZlY3RvcjMgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5YPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5YPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5YPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRYKEZsb2F0NjQpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UjZ2V0VmVjdG9yM19YKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0NjQiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFgoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVmVjdG9yMyNnZXRYIDxlbT5YPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5YPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRYKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRYKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5ZPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5ZPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5ZPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRZKEZsb2F0NjQpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UjZ2V0VmVjdG9yM19ZKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0NjQiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFkoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVmVjdG9yMyNnZXRZIDxlbT5ZPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5ZPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRZKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRZKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5aPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5aPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5aPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRaKEZsb2F0NjQpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UjZ2V0VmVjdG9yM19aKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0NjQiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFooKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVmVjdG9yMyNnZXRaIDxlbT5aPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5aPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRaKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRaKE9iamVjdCB2YWx1ZSk7CisKK30gLy8gVmVjdG9yMwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1ZlY3RvcjNTdGFtcGVkLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvVmVjdG9yM1N0YW1wZWQuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45ZDQ1NTNiCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1ZlY3RvcjNTdGFtcGVkLmphdmEKQEAgLTAsMCArMSw3NiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+VmVjdG9yMyBTdGFtcGVkPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVmVjdG9yM1N0YW1wZWQjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVmVjdG9yM1N0YW1wZWQjZ2V0VmVjdG9yIDxlbT5WZWN0b3I8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRWZWN0b3IzU3RhbXBlZCgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBWZWN0b3IzU3RhbXBlZCBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldEhlYWRlcihIZWFkZXIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UjZ2V0VmVjdG9yM1N0YW1wZWRfSGVhZGVyKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJSGVhZGVyIGdldEhlYWRlcigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5WZWN0b3IzU3RhbXBlZCNnZXRIZWFkZXIgPGVtPkhlYWRlcjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRIZWFkZXIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEhlYWRlcihIZWFkZXIgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VmVjdG9yPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5WZWN0b3I8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlZlY3RvcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0VmVjdG9yKFZlY3RvcjMpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UjZ2V0VmVjdG9yM1N0YW1wZWRfVmVjdG9yKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJVmVjdG9yMyBnZXRWZWN0b3IoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVmVjdG9yM1N0YW1wZWQjZ2V0VmVjdG9yIDxlbT5WZWN0b3I8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlZlY3RvcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0VmVjdG9yKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRWZWN0b3IoVmVjdG9yMyB2YWx1ZSk7CisKK30gLy8gVmVjdG9yM1N0YW1wZWQKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9XcmVuY2guamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9XcmVuY2guamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45ZWU2N2MwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1dyZW5jaC5qYXZhCkBAIC0wLDAgKzEsNzUgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+V3JlbmNoPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuV3JlbmNoI2dldEZvcmNlIDxlbT5Gb3JjZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5XcmVuY2gjZ2V0VG9ycXVlIDxlbT5Ub3JxdWU8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRXcmVuY2goKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgV3JlbmNoIGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+Rm9yY2U8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkZvcmNlPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5Gb3JjZTwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0Rm9yY2UoVmVjdG9yMykKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRXcmVuY2hfRm9yY2UoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlWZWN0b3IzIGdldEZvcmNlKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLldyZW5jaCNnZXRGb3JjZSA8ZW0+Rm9yY2U8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkZvcmNlPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRGb3JjZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0Rm9yY2UoVmVjdG9yMyB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Ub3JxdWU8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlRvcnF1ZTwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+VG9ycXVlPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRUb3JxdWUoVmVjdG9yMykKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRXcmVuY2hfVG9ycXVlKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJVmVjdG9yMyBnZXRUb3JxdWUoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuV3JlbmNoI2dldFRvcnF1ZSA8ZW0+VG9ycXVlPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5Ub3JxdWU8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldFRvcnF1ZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0VG9ycXVlKFZlY3RvcjMgdmFsdWUpOworCit9IC8vIFdyZW5jaApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL1dyZW5jaFN0YW1wZWQuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9XcmVuY2hTdGFtcGVkLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTUyNGVmYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9XcmVuY2hTdGFtcGVkLmphdmEKQEAgLTAsMCArMSw3NiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+V3JlbmNoIFN0YW1wZWQ8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5XcmVuY2hTdGFtcGVkI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLldyZW5jaFN0YW1wZWQjZ2V0V3JlbmNoIDxlbT5XcmVuY2g8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNnZXRXcmVuY2hTdGFtcGVkKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFdyZW5jaFN0YW1wZWQgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRIZWFkZXIoSGVhZGVyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlI2dldFdyZW5jaFN0YW1wZWRfSGVhZGVyKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJSGVhZGVyIGdldEhlYWRlcigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5XcmVuY2hTdGFtcGVkI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldEhlYWRlcigpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0SGVhZGVyKEhlYWRlciB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5XcmVuY2g8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPldyZW5jaDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+V3JlbmNoPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRXcmVuY2goV3JlbmNoKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlI2dldFdyZW5jaFN0YW1wZWRfV3JlbmNoKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJV3JlbmNoIGdldFdyZW5jaCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5XcmVuY2hTdGFtcGVkI2dldFdyZW5jaCA8ZW0+V3JlbmNoPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5XcmVuY2g8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldFdyZW5jaCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0V3JlbmNoKFdyZW5jaCB2YWx1ZSk7CisKK30gLy8gV3JlbmNoU3RhbXBlZApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTE5NTk5YwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmphdmEKQEAgLTAsMCArMSwzMzQgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVGYWN0b3J5SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUucGx1Z2luLkVjb3JlUGx1Z2luOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50MzI7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludFN0YW1wZWQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2x5Z29uOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9seWdvblN0YW1wZWQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZTJEOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZUFycmF5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZVN0YW1wZWQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlV2l0aENvdmFyaWFuY2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUXVhdGVybmlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlF1YXRlcm5pb25TdGFtcGVkOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHJhbnNmb3JtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHdpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Ud2lzdFN0YW1wZWQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Ud2lzdFdpdGhDb3ZhcmlhbmNlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVmVjdG9yMzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlZlY3RvcjNTdGFtcGVkOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuV3JlbmNoOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuV3JlbmNoU3RhbXBlZDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPkZhY3Rvcnk8L2I+LgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbCBleHRlbmRzIEVGYWN0b3J5SW1wbCBpbXBsZW1lbnRzIEdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkgeworCS8qKgorCSAqIENyZWF0ZXMgdGhlIGRlZmF1bHQgZmFjdG9yeSBpbXBsZW1lbnRhdGlvbi4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIEdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkgaW5pdCgpIHsKKwkJdHJ5IHsKKwkJCUdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkgdGhlR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeSA9IChHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5KUVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVGYWN0b3J5KEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSk7CisJCQlpZiAodGhlR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeSAhPSBudWxsKSB7CisJCQkJcmV0dXJuIHRoZUdlb21ldHJ5X2RhdGF0eXBlc0ZhY3Rvcnk7CisJCQl9CisJCX0KKwkJY2F0Y2ggKEV4Y2VwdGlvbiBleGNlcHRpb24pIHsKKwkJCUVjb3JlUGx1Z2luLklOU1RBTkNFLmxvZyhleGNlcHRpb24pOworCQl9CisJCXJldHVybiBuZXcgR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwoKTsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSBmYWN0b3J5LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5SW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgRU9iamVjdCBjcmVhdGUoRUNsYXNzIGVDbGFzcykgeworCQlzd2l0Y2ggKGVDbGFzcy5nZXRDbGFzc2lmaWVySUQoKSkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UOiByZXR1cm4gY3JlYXRlUG9pbnQoKTsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0lOVDMyOiByZXR1cm4gY3JlYXRlUG9pbnQzMigpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX1NUQU1QRUQ6IHJldHVybiBjcmVhdGVQb2ludFN0YW1wZWQoKTsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0xZR09OOiByZXR1cm4gY3JlYXRlUG9seWdvbigpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPTFlHT05fU1RBTVBFRDogcmV0dXJuIGNyZWF0ZVBvbHlnb25TdGFtcGVkKCk7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVkVDVE9SMzogcmV0dXJuIGNyZWF0ZVZlY3RvcjMoKTsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5WRUNUT1IzX1NUQU1QRUQ6IHJldHVybiBjcmVhdGVWZWN0b3IzU3RhbXBlZCgpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlFVQVRFUk5JT046IHJldHVybiBjcmVhdGVRdWF0ZXJuaW9uKCk7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRTogcmV0dXJuIGNyZWF0ZVBvc2UoKTsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX1NUQU1QRUQ6IHJldHVybiBjcmVhdGVQb3NlU3RhbXBlZCgpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRXSVNUX1dJVEhfQ09WQVJJQU5DRTogcmV0dXJuIGNyZWF0ZVR3aXN0V2l0aENvdmFyaWFuY2UoKTsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5UV0lTVDogcmV0dXJuIGNyZWF0ZVR3aXN0KCk7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfU1RBTVBFRDogcmV0dXJuIGNyZWF0ZVR3aXN0U3RhbXBlZCgpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfV0lUSF9DT1ZBUklBTkNFOiByZXR1cm4gY3JlYXRlUG9zZVdpdGhDb3ZhcmlhbmNlKCk7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRTJfRDogcmV0dXJuIGNyZWF0ZVBvc2UyRCgpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfV0lUSF9DT1ZBUklBTkNFX1NUQU1QRUQ6IHJldHVybiBjcmVhdGVQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkKCk7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9BUlJBWTogcmV0dXJuIGNyZWF0ZVBvc2VBcnJheSgpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlFVQVRFUk5JT05fU1RBTVBFRDogcmV0dXJuIGNyZWF0ZVF1YXRlcm5pb25TdGFtcGVkKCk7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFJBTlNGT1JNOiByZXR1cm4gY3JlYXRlVHJhbnNmb3JtKCk7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuV1JFTkNIX1NUQU1QRUQ6IHJldHVybiBjcmVhdGVXcmVuY2hTdGFtcGVkKCk7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuV1JFTkNIOiByZXR1cm4gY3JlYXRlV3JlbmNoKCk7CisJCQlkZWZhdWx0OgorCQkJCXRocm93IG5ldyBJbGxlZ2FsQXJndW1lbnRFeGNlcHRpb24oIlRoZSBjbGFzcyAnIiArIGVDbGFzcy5nZXROYW1lKCkgKyAiJyBpcyBub3QgYSB2YWxpZCBjbGFzc2lmaWVyIik7CisJCX0KKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUG9pbnQgY3JlYXRlUG9pbnQoKSB7CisJCVBvaW50SW1wbCBwb2ludCA9IG5ldyBQb2ludEltcGwoKTsKKwkJcmV0dXJuIHBvaW50OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBQb2ludDMyIGNyZWF0ZVBvaW50MzIoKSB7CisJCVBvaW50MzJJbXBsIHBvaW50MzIgPSBuZXcgUG9pbnQzMkltcGwoKTsKKwkJcmV0dXJuIHBvaW50MzI7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFBvaW50U3RhbXBlZCBjcmVhdGVQb2ludFN0YW1wZWQoKSB7CisJCVBvaW50U3RhbXBlZEltcGwgcG9pbnRTdGFtcGVkID0gbmV3IFBvaW50U3RhbXBlZEltcGwoKTsKKwkJcmV0dXJuIHBvaW50U3RhbXBlZDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUG9seWdvbiBjcmVhdGVQb2x5Z29uKCkgeworCQlQb2x5Z29uSW1wbCBwb2x5Z29uID0gbmV3IFBvbHlnb25JbXBsKCk7CisJCXJldHVybiBwb2x5Z29uOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBQb2x5Z29uU3RhbXBlZCBjcmVhdGVQb2x5Z29uU3RhbXBlZCgpIHsKKwkJUG9seWdvblN0YW1wZWRJbXBsIHBvbHlnb25TdGFtcGVkID0gbmV3IFBvbHlnb25TdGFtcGVkSW1wbCgpOworCQlyZXR1cm4gcG9seWdvblN0YW1wZWQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFZlY3RvcjMgY3JlYXRlVmVjdG9yMygpIHsKKwkJVmVjdG9yM0ltcGwgdmVjdG9yMyA9IG5ldyBWZWN0b3IzSW1wbCgpOworCQlyZXR1cm4gdmVjdG9yMzsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVmVjdG9yM1N0YW1wZWQgY3JlYXRlVmVjdG9yM1N0YW1wZWQoKSB7CisJCVZlY3RvcjNTdGFtcGVkSW1wbCB2ZWN0b3IzU3RhbXBlZCA9IG5ldyBWZWN0b3IzU3RhbXBlZEltcGwoKTsKKwkJcmV0dXJuIHZlY3RvcjNTdGFtcGVkOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBRdWF0ZXJuaW9uIGNyZWF0ZVF1YXRlcm5pb24oKSB7CisJCVF1YXRlcm5pb25JbXBsIHF1YXRlcm5pb24gPSBuZXcgUXVhdGVybmlvbkltcGwoKTsKKwkJcmV0dXJuIHF1YXRlcm5pb247CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFBvc2UgY3JlYXRlUG9zZSgpIHsKKwkJUG9zZUltcGwgcG9zZSA9IG5ldyBQb3NlSW1wbCgpOworCQlyZXR1cm4gcG9zZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUG9zZVN0YW1wZWQgY3JlYXRlUG9zZVN0YW1wZWQoKSB7CisJCVBvc2VTdGFtcGVkSW1wbCBwb3NlU3RhbXBlZCA9IG5ldyBQb3NlU3RhbXBlZEltcGwoKTsKKwkJcmV0dXJuIHBvc2VTdGFtcGVkOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUd2lzdFdpdGhDb3ZhcmlhbmNlIGNyZWF0ZVR3aXN0V2l0aENvdmFyaWFuY2UoKSB7CisJCVR3aXN0V2l0aENvdmFyaWFuY2VJbXBsIHR3aXN0V2l0aENvdmFyaWFuY2UgPSBuZXcgVHdpc3RXaXRoQ292YXJpYW5jZUltcGwoKTsKKwkJcmV0dXJuIHR3aXN0V2l0aENvdmFyaWFuY2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFR3aXN0IGNyZWF0ZVR3aXN0KCkgeworCQlUd2lzdEltcGwgdHdpc3QgPSBuZXcgVHdpc3RJbXBsKCk7CisJCXJldHVybiB0d2lzdDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVHdpc3RTdGFtcGVkIGNyZWF0ZVR3aXN0U3RhbXBlZCgpIHsKKwkJVHdpc3RTdGFtcGVkSW1wbCB0d2lzdFN0YW1wZWQgPSBuZXcgVHdpc3RTdGFtcGVkSW1wbCgpOworCQlyZXR1cm4gdHdpc3RTdGFtcGVkOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBQb3NlV2l0aENvdmFyaWFuY2UgY3JlYXRlUG9zZVdpdGhDb3ZhcmlhbmNlKCkgeworCQlQb3NlV2l0aENvdmFyaWFuY2VJbXBsIHBvc2VXaXRoQ292YXJpYW5jZSA9IG5ldyBQb3NlV2l0aENvdmFyaWFuY2VJbXBsKCk7CisJCXJldHVybiBwb3NlV2l0aENvdmFyaWFuY2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFBvc2UyRCBjcmVhdGVQb3NlMkQoKSB7CisJCVBvc2UyREltcGwgcG9zZTJEID0gbmV3IFBvc2UyREltcGwoKTsKKwkJcmV0dXJuIHBvc2UyRDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZCBjcmVhdGVQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkKCkgeworCQlQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkSW1wbCBwb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkID0gbmV3IFBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWRJbXBsKCk7CisJCXJldHVybiBwb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBQb3NlQXJyYXkgY3JlYXRlUG9zZUFycmF5KCkgeworCQlQb3NlQXJyYXlJbXBsIHBvc2VBcnJheSA9IG5ldyBQb3NlQXJyYXlJbXBsKCk7CisJCXJldHVybiBwb3NlQXJyYXk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFF1YXRlcm5pb25TdGFtcGVkIGNyZWF0ZVF1YXRlcm5pb25TdGFtcGVkKCkgeworCQlRdWF0ZXJuaW9uU3RhbXBlZEltcGwgcXVhdGVybmlvblN0YW1wZWQgPSBuZXcgUXVhdGVybmlvblN0YW1wZWRJbXBsKCk7CisJCXJldHVybiBxdWF0ZXJuaW9uU3RhbXBlZDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVHJhbnNmb3JtIGNyZWF0ZVRyYW5zZm9ybSgpIHsKKwkJVHJhbnNmb3JtSW1wbCB0cmFuc2Zvcm0gPSBuZXcgVHJhbnNmb3JtSW1wbCgpOworCQlyZXR1cm4gdHJhbnNmb3JtOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBXcmVuY2hTdGFtcGVkIGNyZWF0ZVdyZW5jaFN0YW1wZWQoKSB7CisJCVdyZW5jaFN0YW1wZWRJbXBsIHdyZW5jaFN0YW1wZWQgPSBuZXcgV3JlbmNoU3RhbXBlZEltcGwoKTsKKwkJcmV0dXJuIHdyZW5jaFN0YW1wZWQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFdyZW5jaCBjcmVhdGVXcmVuY2goKSB7CisJCVdyZW5jaEltcGwgd3JlbmNoID0gbmV3IFdyZW5jaEltcGwoKTsKKwkJcmV0dXJuIHdyZW5jaDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSBnZXRHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlKCkgeworCQlyZXR1cm4gKEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UpZ2V0RVBhY2thZ2UoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBkZXByZWNhdGVkCisJICogQGdlbmVyYXRlZAorCSAqLworCUBEZXByZWNhdGVkCisJcHVibGljIHN0YXRpYyBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlIGdldFBhY2thZ2UoKSB7CisJCXJldHVybiBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRTsKKwl9CisKK30gLy8gR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL0dlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNmMTRjZTAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5qYXZhCkBAIC0wLDAgKzEsMTEyOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRVBhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50MzI7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludFN0YW1wZWQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2x5Z29uOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9seWdvblN0YW1wZWQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZTJEOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZUFycmF5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZVN0YW1wZWQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlV2l0aENvdmFyaWFuY2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUXVhdGVybmlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlF1YXRlcm5pb25TdGFtcGVkOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHJhbnNmb3JtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHdpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Ud2lzdFN0YW1wZWQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Ud2lzdFdpdGhDb3ZhcmlhbmNlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVmVjdG9yMzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlZlY3RvcjNTdGFtcGVkOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuV3JlbmNoOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuV3JlbmNoU3RhbXBlZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5OYXZfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsLk5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5PYXJwMV9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLmltcGwuT2FycDFfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlVNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCA8Yj5QYWNrYWdlPC9iPi4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwgZXh0ZW5kcyBFUGFja2FnZUltcGwgaW1wbGVtZW50cyBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBwb2ludEVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBwb2ludDMyRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIHBvaW50U3RhbXBlZEVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBwb2x5Z29uRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIHBvbHlnb25TdGFtcGVkRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIHZlY3RvcjNFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgdmVjdG9yM1N0YW1wZWRFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgcXVhdGVybmlvbkVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBwb3NlRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIHBvc2VTdGFtcGVkRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIHR3aXN0V2l0aENvdmFyaWFuY2VFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgdHdpc3RFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgdHdpc3RTdGFtcGVkRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIHBvc2VXaXRoQ292YXJpYW5jZUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBwb3NlMkRFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgcG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZEVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBwb3NlQXJyYXlFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgcXVhdGVybmlvblN0YW1wZWRFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgdHJhbnNmb3JtRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIHdyZW5jaFN0YW1wZWRFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3Mgd3JlbmNoRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIG1vZGVsIDxiPlBhY2thZ2U8L2I+LCByZWdpc3RlcmVkIHdpdGgKKwkgKiB7QGxpbmsgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlLlJlZ2lzdHJ5IEVQYWNrYWdlLlJlZ2lzdHJ5fSBieSB0aGUgcGFja2FnZQorCSAqIHBhY2thZ2UgVVJJIHZhbHVlLgorCSAqIDxwPk5vdGU6IHRoZSBjb3JyZWN0IHdheSB0byBjcmVhdGUgdGhlIHBhY2thZ2UgaXMgdmlhIHRoZSBzdGF0aWMKKwkgKiBmYWN0b3J5IG1ldGhvZCB7QGxpbmsgI2luaXQgaW5pdCgpfSwgd2hpY2ggYWxzbyBwZXJmb3JtcworCSAqIGluaXRpYWxpemF0aW9uIG9mIHRoZSBwYWNrYWdlLCBvciByZXR1cm5zIHRoZSByZWdpc3RlcmVkIHBhY2thZ2UsCisJICogaWYgb25lIGFscmVhZHkgZXhpc3RzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+IDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlLlJlZ2lzdHJ5CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UjZU5TX1VSSQorCSAqIEBzZWUgI2luaXQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsKCkgeworCQlzdXBlcihlTlNfVVJJLCBHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5LmVJTlNUQU5DRSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBzdGF0aWMgYm9vbGVhbiBpc0luaXRlZCA9IGZhbHNlOworCisJLyoqCisJICogQ3JlYXRlcywgcmVnaXN0ZXJzLCBhbmQgaW5pdGlhbGl6ZXMgdGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGlzIG1vZGVsLCBhbmQgZm9yIGFueSBvdGhlcnMgdXBvbiB3aGljaCBpdCBkZXBlbmRzLgorCSAqIAorCSAqIDxwPlRoaXMgbWV0aG9kIGlzIHVzZWQgdG8gaW5pdGlhbGl6ZSB7QGxpbmsgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSNlSU5TVEFOQ0V9IHdoZW4gdGhhdCBmaWVsZCBpcyBhY2Nlc3NlZC4KKwkgKiBDbGllbnRzIHNob3VsZCBub3QgaW52b2tlIGl0IGRpcmVjdGx5LiBJbnN0ZWFkLCB0aGV5IHNob3VsZCBzaW1wbHkgYWNjZXNzIHRoYXQgZmllbGQgdG8gb2J0YWluIHRoZSBwYWNrYWdlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+IDwhLS0KKwkgKiBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZU5TX1VSSQorCSAqIEBzZWUgI2NyZWF0ZVBhY2thZ2VDb250ZW50cygpCisJICogQHNlZSAjaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSBpbml0KCkgeworCQlpZiAoaXNJbml0ZWQpIHJldHVybiAoR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSlFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpOworCisJCS8vIE9idGFpbiBvciBjcmVhdGUgYW5kIHJlZ2lzdGVyIHBhY2thZ2UKKwkJR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwgdGhlR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSA9IChHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0KGVOU19VUkkpIGluc3RhbmNlb2YgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXQoZU5TX1VSSSkgOiBuZXcgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwoKSk7CisKKwkJaXNJbml0ZWQgPSB0cnVlOworCisJCS8vIEluaXRpYWxpemUgc2ltcGxlIGRlcGVuZGVuY2llcworCQlVTUxQYWNrYWdlLmVJTlNUQU5DRS5lQ2xhc3MoKTsKKworCQkvLyBPYnRhaW4gb3IgY3JlYXRlIGFuZCByZWdpc3RlciBpbnRlcmRlcGVuZGVuY2llcworCQlSb2JvdE1MUGFja2FnZUltcGwgdGhlUm9ib3RNTFBhY2thZ2UgPSAoUm9ib3RNTFBhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShSb2JvdE1MUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIFJvYm90TUxQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKFJvYm90TUxQYWNrYWdlLmVOU19VUkkpIDogUm9ib3RNTFBhY2thZ2UuZUlOU1RBTkNFKTsKKwkJRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbCB0aGVEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UgPSAoRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSA6IERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UpOworCQlOYXZfZGF0YXR5cGVzUGFja2FnZUltcGwgdGhlTmF2X2RhdGF0eXBlc1BhY2thZ2UgPSAoTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShOYXZfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIE5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKE5hdl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIDogTmF2X2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFKTsKKwkJU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZVNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlID0gKFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSA6IFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRSk7CisJCUFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbCB0aGVBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZSA9IChBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgOiBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UpOworCQlPYXJwMV9kYXRhdHlwZXNQYWNrYWdlSW1wbCB0aGVPYXJwMV9kYXRhdHlwZXNQYWNrYWdlID0gKE9hcnAxX2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgT2FycDFfZGF0YXR5cGVzUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIDogT2FycDFfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UpOworCQlPYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbCB0aGVPYXJwNF9kYXRhdHlwZXNQYWNrYWdlID0gKE9hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIDogT2FycDRfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UpOworCQlTdGRfZGF0YXR5cGVzUGFja2FnZUltcGwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UgPSAoU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShTdGRfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIFN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKFN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIDogU3RkX2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFKTsKKworCQkvLyBDcmVhdGUgcGFja2FnZSBtZXRhLWRhdGEgb2JqZWN0cworCQl0aGVHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVSb2JvdE1MUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVOYXZfZGF0YXR5cGVzUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZUFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKworCQkvLyBJbml0aWFsaXplIGNyZWF0ZWQgbWV0YS1kYXRhCisJCXRoZUdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVSb2JvdE1MUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZURpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZU5hdl9kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZU9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCisJCS8vIE1hcmsgbWV0YS1kYXRhIHRvIGluZGljYXRlIGl0IGNhbid0IGJlIGNoYW5nZWQKKwkJdGhlR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5mcmVlemUoKTsKKworICAKKwkJLy8gVXBkYXRlIHRoZSByZWdpc3RyeSBhbmQgcmV0dXJuIHRoZSBwYWNrYWdlCisJCUVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLnB1dChHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkksIHRoZUdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UpOworCQlyZXR1cm4gdGhlR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldFBvaW50KCkgeworCQlyZXR1cm4gcG9pbnRFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0UG9pbnRfWCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXBvaW50RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0UG9pbnRfWSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXBvaW50RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0UG9pbnRfWigpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXBvaW50RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMik7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRQb2ludDMyKCkgeworCQlyZXR1cm4gcG9pbnQzMkVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRQb2ludDMyX1goKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlwb2ludDMyRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0UG9pbnQzMl9ZKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpcG9pbnQzMkVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFBvaW50MzJfWigpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXBvaW50MzJFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgyKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldFBvaW50U3RhbXBlZCgpIHsKKwkJcmV0dXJuIHBvaW50U3RhbXBlZEVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRQb2ludFN0YW1wZWRfSGVhZGVyKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpcG9pbnRTdGFtcGVkRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0UG9pbnRTdGFtcGVkX1BvaW50KCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpcG9pbnRTdGFtcGVkRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRQb2x5Z29uKCkgeworCQlyZXR1cm4gcG9seWdvbkVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRQb2x5Z29uX1BvaW50KCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpcG9seWdvbkVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0UG9seWdvblN0YW1wZWQoKSB7CisJCXJldHVybiBwb2x5Z29uU3RhbXBlZEVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRQb2x5Z29uU3RhbXBlZF9IZWFkZXIoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlwb2x5Z29uU3RhbXBlZEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldFBvbHlnb25TdGFtcGVkX1BvbHlnb24oKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlwb2x5Z29uU3RhbXBlZEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0VmVjdG9yMygpIHsKKwkJcmV0dXJuIHZlY3RvcjNFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0VmVjdG9yM19YKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpdmVjdG9yM0VDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFZlY3RvcjNfWSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXZlY3RvcjNFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRWZWN0b3IzX1ooKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSl2ZWN0b3IzRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMik7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRWZWN0b3IzU3RhbXBlZCgpIHsKKwkJcmV0dXJuIHZlY3RvcjNTdGFtcGVkRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldFZlY3RvcjNTdGFtcGVkX0hlYWRlcigpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKXZlY3RvcjNTdGFtcGVkRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0VmVjdG9yM1N0YW1wZWRfVmVjdG9yKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpdmVjdG9yM1N0YW1wZWRFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldFF1YXRlcm5pb24oKSB7CisJCXJldHVybiBxdWF0ZXJuaW9uRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFF1YXRlcm5pb25fWCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXF1YXRlcm5pb25FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRRdWF0ZXJuaW9uX1koKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlxdWF0ZXJuaW9uRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0UXVhdGVybmlvbl9aKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpcXVhdGVybmlvbkVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDIpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFF1YXRlcm5pb25fVygpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXF1YXRlcm5pb25FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldFBvc2UoKSB7CisJCXJldHVybiBwb3NlRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldFBvc2VfUG9zaXRpb24oKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlwb3NlRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0UG9zZV9PcmllbnRhdGlvbigpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKXBvc2VFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldFBvc2VTdGFtcGVkKCkgeworCQlyZXR1cm4gcG9zZVN0YW1wZWRFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0UG9zZVN0YW1wZWRfSGVhZGVyKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpcG9zZVN0YW1wZWRFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRQb3NlU3RhbXBlZF9Qb3NlKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpcG9zZVN0YW1wZWRFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldFR3aXN0V2l0aENvdmFyaWFuY2UoKSB7CisJCXJldHVybiB0d2lzdFdpdGhDb3ZhcmlhbmNlRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldFR3aXN0V2l0aENvdmFyaWFuY2VfVHdpc3QoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSl0d2lzdFdpdGhDb3ZhcmlhbmNlRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0VHdpc3RXaXRoQ292YXJpYW5jZV9Db3ZhcmlhbmNlKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpdHdpc3RXaXRoQ292YXJpYW5jZUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0VHdpc3QoKSB7CisJCXJldHVybiB0d2lzdEVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRUd2lzdF9MaW5lYXIoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSl0d2lzdEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldFR3aXN0X0FuZ3VsYXIoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSl0d2lzdEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0VHdpc3RTdGFtcGVkKCkgeworCQlyZXR1cm4gdHdpc3RTdGFtcGVkRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldFR3aXN0U3RhbXBlZF9IZWFkZXIoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSl0d2lzdFN0YW1wZWRFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRUd2lzdFN0YW1wZWRfVHdpc3QoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSl0d2lzdFN0YW1wZWRFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldFBvc2VXaXRoQ292YXJpYW5jZSgpIHsKKwkJcmV0dXJuIHBvc2VXaXRoQ292YXJpYW5jZUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRQb3NlV2l0aENvdmFyaWFuY2VfUG9zZSgpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKXBvc2VXaXRoQ292YXJpYW5jZUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFBvc2VXaXRoQ292YXJpYW5jZV9Db3ZhcmlhbmNlKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpcG9zZVdpdGhDb3ZhcmlhbmNlRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRQb3NlMkQoKSB7CisJCXJldHVybiBwb3NlMkRFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0UG9zZTJEX1goKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlwb3NlMkRFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRQb3NlMkRfWSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXBvc2UyREVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFBvc2UyRF9UaGV0YSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXBvc2UyREVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDIpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0UG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZCgpIHsKKwkJcmV0dXJuIHBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWRFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRQb3NlQXJyYXkoKSB7CisJCXJldHVybiBwb3NlQXJyYXlFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0UG9zZUFycmF5X0hlYWRlcigpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKXBvc2VBcnJheUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldFBvc2VBcnJheV9Qb3NlcygpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKXBvc2VBcnJheUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0UXVhdGVybmlvblN0YW1wZWQoKSB7CisJCXJldHVybiBxdWF0ZXJuaW9uU3RhbXBlZEVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRRdWF0ZXJuaW9uU3RhbXBlZF9IZWFkZXIoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlxdWF0ZXJuaW9uU3RhbXBlZEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldFF1YXRlcm5pb25TdGFtcGVkX1F1YXRlcm5pb24oKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlxdWF0ZXJuaW9uU3RhbXBlZEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0VHJhbnNmb3JtKCkgeworCQlyZXR1cm4gdHJhbnNmb3JtRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldFRyYW5zZm9ybV9UcmFuc2xhdGlvbigpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKXRyYW5zZm9ybUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldFRyYW5zZm9ybV9Sb3RhdGlvbigpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKXRyYW5zZm9ybUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0V3JlbmNoU3RhbXBlZCgpIHsKKwkJcmV0dXJuIHdyZW5jaFN0YW1wZWRFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0V3JlbmNoU3RhbXBlZF9IZWFkZXIoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSl3cmVuY2hTdGFtcGVkRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0V3JlbmNoU3RhbXBlZF9XcmVuY2goKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSl3cmVuY2hTdGFtcGVkRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRXcmVuY2goKSB7CisJCXJldHVybiB3cmVuY2hFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0V3JlbmNoX0ZvcmNlKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2Upd3JlbmNoRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0V3JlbmNoX1RvcnF1ZSgpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKXdyZW5jaEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBHZW9tZXRyeV9kYXRhdHlwZXNGYWN0b3J5IGdldEdlb21ldHJ5X2RhdGF0eXBlc0ZhY3RvcnkoKSB7CisJCXJldHVybiAoR2VvbWV0cnlfZGF0YXR5cGVzRmFjdG9yeSlnZXRFRmFjdG9yeUluc3RhbmNlKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBib29sZWFuIGlzQ3JlYXRlZCA9IGZhbHNlOworCisJLyoqCisJICogQ3JlYXRlcyB0aGUgbWV0YS1tb2RlbCBvYmplY3RzIGZvciB0aGUgcGFja2FnZS4gIFRoaXMgbWV0aG9kIGlzCisJICogZ3VhcmRlZCB0byBoYXZlIG5vIGFmZmVjdCBvbiBhbnkgaW52b2NhdGlvbiBidXQgaXRzIGZpcnN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIGNyZWF0ZVBhY2thZ2VDb250ZW50cygpIHsKKwkJaWYgKGlzQ3JlYXRlZCkgcmV0dXJuOworCQlpc0NyZWF0ZWQgPSB0cnVlOworCisJCS8vIENyZWF0ZSBjbGFzc2VzIGFuZCB0aGVpciBmZWF0dXJlcworCQlwb2ludEVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhQT0lOVCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUocG9pbnRFQ2xhc3MsIFBPSU5UX19YKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShwb2ludEVDbGFzcywgUE9JTlRfX1kpOworCQljcmVhdGVFQXR0cmlidXRlKHBvaW50RUNsYXNzLCBQT0lOVF9fWik7CisKKwkJcG9pbnQzMkVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhQT0lOVDMyKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShwb2ludDMyRUNsYXNzLCBQT0lOVDMyX19YKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShwb2ludDMyRUNsYXNzLCBQT0lOVDMyX19ZKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShwb2ludDMyRUNsYXNzLCBQT0lOVDMyX19aKTsKKworCQlwb2ludFN0YW1wZWRFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoUE9JTlRfU1RBTVBFRCk7CisJCWNyZWF0ZUVSZWZlcmVuY2UocG9pbnRTdGFtcGVkRUNsYXNzLCBQT0lOVF9TVEFNUEVEX19IRUFERVIpOworCQljcmVhdGVFUmVmZXJlbmNlKHBvaW50U3RhbXBlZEVDbGFzcywgUE9JTlRfU1RBTVBFRF9fUE9JTlQpOworCisJCXBvbHlnb25FQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoUE9MWUdPTik7CisJCWNyZWF0ZUVSZWZlcmVuY2UocG9seWdvbkVDbGFzcywgUE9MWUdPTl9fUE9JTlQpOworCisJCXBvbHlnb25TdGFtcGVkRUNsYXNzID0gY3JlYXRlRUNsYXNzKFBPTFlHT05fU1RBTVBFRCk7CisJCWNyZWF0ZUVSZWZlcmVuY2UocG9seWdvblN0YW1wZWRFQ2xhc3MsIFBPTFlHT05fU1RBTVBFRF9fSEVBREVSKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShwb2x5Z29uU3RhbXBlZEVDbGFzcywgUE9MWUdPTl9TVEFNUEVEX19QT0xZR09OKTsKKworCQl2ZWN0b3IzRUNsYXNzID0gY3JlYXRlRUNsYXNzKFZFQ1RPUjMpOworCQljcmVhdGVFQXR0cmlidXRlKHZlY3RvcjNFQ2xhc3MsIFZFQ1RPUjNfX1gpOworCQljcmVhdGVFQXR0cmlidXRlKHZlY3RvcjNFQ2xhc3MsIFZFQ1RPUjNfX1kpOworCQljcmVhdGVFQXR0cmlidXRlKHZlY3RvcjNFQ2xhc3MsIFZFQ1RPUjNfX1opOworCisJCXZlY3RvcjNTdGFtcGVkRUNsYXNzID0gY3JlYXRlRUNsYXNzKFZFQ1RPUjNfU1RBTVBFRCk7CisJCWNyZWF0ZUVSZWZlcmVuY2UodmVjdG9yM1N0YW1wZWRFQ2xhc3MsIFZFQ1RPUjNfU1RBTVBFRF9fSEVBREVSKTsKKwkJY3JlYXRlRVJlZmVyZW5jZSh2ZWN0b3IzU3RhbXBlZEVDbGFzcywgVkVDVE9SM19TVEFNUEVEX19WRUNUT1IpOworCisJCXF1YXRlcm5pb25FQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoUVVBVEVSTklPTik7CisJCWNyZWF0ZUVBdHRyaWJ1dGUocXVhdGVybmlvbkVDbGFzcywgUVVBVEVSTklPTl9fWCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUocXVhdGVybmlvbkVDbGFzcywgUVVBVEVSTklPTl9fWSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUocXVhdGVybmlvbkVDbGFzcywgUVVBVEVSTklPTl9fWik7CisJCWNyZWF0ZUVBdHRyaWJ1dGUocXVhdGVybmlvbkVDbGFzcywgUVVBVEVSTklPTl9fVyk7CisKKwkJcG9zZUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhQT1NFKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShwb3NlRUNsYXNzLCBQT1NFX19QT1NJVElPTik7CisJCWNyZWF0ZUVSZWZlcmVuY2UocG9zZUVDbGFzcywgUE9TRV9fT1JJRU5UQVRJT04pOworCisJCXBvc2VTdGFtcGVkRUNsYXNzID0gY3JlYXRlRUNsYXNzKFBPU0VfU1RBTVBFRCk7CisJCWNyZWF0ZUVSZWZlcmVuY2UocG9zZVN0YW1wZWRFQ2xhc3MsIFBPU0VfU1RBTVBFRF9fSEVBREVSKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShwb3NlU3RhbXBlZEVDbGFzcywgUE9TRV9TVEFNUEVEX19QT1NFKTsKKworCQl0d2lzdFdpdGhDb3ZhcmlhbmNlRUNsYXNzID0gY3JlYXRlRUNsYXNzKFRXSVNUX1dJVEhfQ09WQVJJQU5DRSk7CisJCWNyZWF0ZUVSZWZlcmVuY2UodHdpc3RXaXRoQ292YXJpYW5jZUVDbGFzcywgVFdJU1RfV0lUSF9DT1ZBUklBTkNFX19UV0lTVCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUodHdpc3RXaXRoQ292YXJpYW5jZUVDbGFzcywgVFdJU1RfV0lUSF9DT1ZBUklBTkNFX19DT1ZBUklBTkNFKTsKKworCQl0d2lzdEVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhUV0lTVCk7CisJCWNyZWF0ZUVSZWZlcmVuY2UodHdpc3RFQ2xhc3MsIFRXSVNUX19MSU5FQVIpOworCQljcmVhdGVFUmVmZXJlbmNlKHR3aXN0RUNsYXNzLCBUV0lTVF9fQU5HVUxBUik7CisKKwkJdHdpc3RTdGFtcGVkRUNsYXNzID0gY3JlYXRlRUNsYXNzKFRXSVNUX1NUQU1QRUQpOworCQljcmVhdGVFUmVmZXJlbmNlKHR3aXN0U3RhbXBlZEVDbGFzcywgVFdJU1RfU1RBTVBFRF9fSEVBREVSKTsKKwkJY3JlYXRlRVJlZmVyZW5jZSh0d2lzdFN0YW1wZWRFQ2xhc3MsIFRXSVNUX1NUQU1QRURfX1RXSVNUKTsKKworCQlwb3NlV2l0aENvdmFyaWFuY2VFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoUE9TRV9XSVRIX0NPVkFSSUFOQ0UpOworCQljcmVhdGVFUmVmZXJlbmNlKHBvc2VXaXRoQ292YXJpYW5jZUVDbGFzcywgUE9TRV9XSVRIX0NPVkFSSUFOQ0VfX1BPU0UpOworCQljcmVhdGVFQXR0cmlidXRlKHBvc2VXaXRoQ292YXJpYW5jZUVDbGFzcywgUE9TRV9XSVRIX0NPVkFSSUFOQ0VfX0NPVkFSSUFOQ0UpOworCisJCXBvc2UyREVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhQT1NFMl9EKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShwb3NlMkRFQ2xhc3MsIFBPU0UyX0RfX1gpOworCQljcmVhdGVFQXR0cmlidXRlKHBvc2UyREVDbGFzcywgUE9TRTJfRF9fWSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUocG9zZTJERUNsYXNzLCBQT1NFMl9EX19USEVUQSk7CisKKwkJcG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZEVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhQT1NFX1dJVEhfQ09WQVJJQU5DRV9TVEFNUEVEKTsKKworCQlwb3NlQXJyYXlFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoUE9TRV9BUlJBWSk7CisJCWNyZWF0ZUVSZWZlcmVuY2UocG9zZUFycmF5RUNsYXNzLCBQT1NFX0FSUkFZX19IRUFERVIpOworCQljcmVhdGVFUmVmZXJlbmNlKHBvc2VBcnJheUVDbGFzcywgUE9TRV9BUlJBWV9fUE9TRVMpOworCisJCXF1YXRlcm5pb25TdGFtcGVkRUNsYXNzID0gY3JlYXRlRUNsYXNzKFFVQVRFUk5JT05fU1RBTVBFRCk7CisJCWNyZWF0ZUVSZWZlcmVuY2UocXVhdGVybmlvblN0YW1wZWRFQ2xhc3MsIFFVQVRFUk5JT05fU1RBTVBFRF9fSEVBREVSKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShxdWF0ZXJuaW9uU3RhbXBlZEVDbGFzcywgUVVBVEVSTklPTl9TVEFNUEVEX19RVUFURVJOSU9OKTsKKworCQl0cmFuc2Zvcm1FQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoVFJBTlNGT1JNKTsKKwkJY3JlYXRlRVJlZmVyZW5jZSh0cmFuc2Zvcm1FQ2xhc3MsIFRSQU5TRk9STV9fVFJBTlNMQVRJT04pOworCQljcmVhdGVFUmVmZXJlbmNlKHRyYW5zZm9ybUVDbGFzcywgVFJBTlNGT1JNX19ST1RBVElPTik7CisKKwkJd3JlbmNoU3RhbXBlZEVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhXUkVOQ0hfU1RBTVBFRCk7CisJCWNyZWF0ZUVSZWZlcmVuY2Uod3JlbmNoU3RhbXBlZEVDbGFzcywgV1JFTkNIX1NUQU1QRURfX0hFQURFUik7CisJCWNyZWF0ZUVSZWZlcmVuY2Uod3JlbmNoU3RhbXBlZEVDbGFzcywgV1JFTkNIX1NUQU1QRURfX1dSRU5DSCk7CisKKwkJd3JlbmNoRUNsYXNzID0gY3JlYXRlRUNsYXNzKFdSRU5DSCk7CisJCWNyZWF0ZUVSZWZlcmVuY2Uod3JlbmNoRUNsYXNzLCBXUkVOQ0hfX0ZPUkNFKTsKKwkJY3JlYXRlRVJlZmVyZW5jZSh3cmVuY2hFQ2xhc3MsIFdSRU5DSF9fVE9SUVVFKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIGJvb2xlYW4gaXNJbml0aWFsaXplZCA9IGZhbHNlOworCisJLyoqCisJICogQ29tcGxldGUgdGhlIGluaXRpYWxpemF0aW9uIG9mIHRoZSBwYWNrYWdlIGFuZCBpdHMgbWV0YS1tb2RlbC4gIFRoaXMKKwkgKiBtZXRob2QgaXMgZ3VhcmRlZCB0byBoYXZlIG5vIGFmZmVjdCBvbiBhbnkgaW52b2NhdGlvbiBidXQgaXRzIGZpcnN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIGluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKSB7CisJCWlmIChpc0luaXRpYWxpemVkKSByZXR1cm47CisJCWlzSW5pdGlhbGl6ZWQgPSB0cnVlOworCisJCS8vIEluaXRpYWxpemUgcGFja2FnZQorCQlzZXROYW1lKGVOQU1FKTsKKwkJc2V0TnNQcmVmaXgoZU5TX1BSRUZJWCk7CisJCXNldE5zVVJJKGVOU19VUkkpOworCisJCS8vIE9idGFpbiBvdGhlciBkZXBlbmRlbnQgcGFja2FnZXMKKwkJU3RkX2RhdGF0eXBlc1BhY2thZ2UgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UgPSAoU3RkX2RhdGF0eXBlc1BhY2thZ2UpRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoU3RkX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSk7CisKKwkJLy8gQ3JlYXRlIHR5cGUgcGFyYW1ldGVycworCisJCS8vIFNldCBib3VuZHMgZm9yIHR5cGUgcGFyYW1ldGVycworCisJCS8vIEFkZCBzdXBlcnR5cGVzIHRvIGNsYXNzZXMKKworCQkvLyBJbml0aWFsaXplIGNsYXNzZXMsIGZlYXR1cmVzLCBhbmQgb3BlcmF0aW9uczsgYWRkIHBhcmFtZXRlcnMKKwkJaW5pdEVDbGFzcyhwb2ludEVDbGFzcywgUG9pbnQuY2xhc3MsICJQb2ludCIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0UG9pbnRfWCgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDY0KCksICJ4IiwgbnVsbCwgMSwgMSwgUG9pbnQuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRQb2ludF9ZKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0NjQoKSwgInkiLCBudWxsLCAxLCAxLCBQb2ludC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldFBvaW50X1ooKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQ2NCgpLCAieiIsIG51bGwsIDEsIDEsIFBvaW50LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKHBvaW50MzJFQ2xhc3MsIFBvaW50MzIuY2xhc3MsICJQb2ludDMyIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RUF0dHJpYnV0ZShnZXRQb2ludDMyX1goKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAieCIsIG51bGwsIDEsIDEsIFBvaW50MzIuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRQb2ludDMyX1koKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAieSIsIG51bGwsIDEsIDEsIFBvaW50MzIuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRQb2ludDMyX1ooKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAieiIsIG51bGwsIDEsIDEsIFBvaW50MzIuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3MocG9pbnRTdGFtcGVkRUNsYXNzLCBQb2ludFN0YW1wZWQuY2xhc3MsICJQb2ludFN0YW1wZWQiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFUmVmZXJlbmNlKGdldFBvaW50U3RhbXBlZF9IZWFkZXIoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0SGVhZGVyKCksIG51bGwsICJoZWFkZXIiLCBudWxsLCAxLCAxLCBQb2ludFN0YW1wZWQuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RVJlZmVyZW5jZShnZXRQb2ludFN0YW1wZWRfUG9pbnQoKSwgdGhpcy5nZXRQb2ludCgpLCBudWxsLCAicG9pbnQiLCBudWxsLCAxLCAxLCBQb2ludFN0YW1wZWQuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3MocG9seWdvbkVDbGFzcywgUG9seWdvbi5jbGFzcywgIlBvbHlnb24iLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFUmVmZXJlbmNlKGdldFBvbHlnb25fUG9pbnQoKSwgdGhpcy5nZXRQb2ludDMyKCksIG51bGwsICJwb2ludCIsIG51bGwsIDMsIC0xLCBQb2x5Z29uLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKHBvbHlnb25TdGFtcGVkRUNsYXNzLCBQb2x5Z29uU3RhbXBlZC5jbGFzcywgIlBvbHlnb25TdGFtcGVkIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXRQb2x5Z29uU3RhbXBlZF9IZWFkZXIoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0SGVhZGVyKCksIG51bGwsICJoZWFkZXIiLCBudWxsLCAxLCAxLCBQb2x5Z29uU3RhbXBlZC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFUmVmZXJlbmNlKGdldFBvbHlnb25TdGFtcGVkX1BvbHlnb24oKSwgdGhpcy5nZXRQb2x5Z29uKCksIG51bGwsICJwb2x5Z29uIiwgbnVsbCwgMSwgMSwgUG9seWdvblN0YW1wZWQuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3ModmVjdG9yM0VDbGFzcywgVmVjdG9yMy5jbGFzcywgIlZlY3RvcjMiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFQXR0cmlidXRlKGdldFZlY3RvcjNfWCgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDY0KCksICJ4IiwgbnVsbCwgMSwgMSwgVmVjdG9yMy5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldFZlY3RvcjNfWSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDY0KCksICJ5IiwgbnVsbCwgMSwgMSwgVmVjdG9yMy5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldFZlY3RvcjNfWigpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDY0KCksICJ6IiwgbnVsbCwgMSwgMSwgVmVjdG9yMy5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyh2ZWN0b3IzU3RhbXBlZEVDbGFzcywgVmVjdG9yM1N0YW1wZWQuY2xhc3MsICJWZWN0b3IzU3RhbXBlZCIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0VmVjdG9yM1N0YW1wZWRfSGVhZGVyKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEhlYWRlcigpLCBudWxsLCAiaGVhZGVyIiwgbnVsbCwgMSwgMSwgVmVjdG9yM1N0YW1wZWQuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RVJlZmVyZW5jZShnZXRWZWN0b3IzU3RhbXBlZF9WZWN0b3IoKSwgdGhpcy5nZXRWZWN0b3IzKCksIG51bGwsICJ2ZWN0b3IiLCBudWxsLCAxLCAxLCBWZWN0b3IzU3RhbXBlZC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhxdWF0ZXJuaW9uRUNsYXNzLCBRdWF0ZXJuaW9uLmNsYXNzLCAiUXVhdGVybmlvbiIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0UXVhdGVybmlvbl9YKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0NjQoKSwgIngiLCBudWxsLCAxLCAxLCBRdWF0ZXJuaW9uLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0UXVhdGVybmlvbl9ZKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0NjQoKSwgInkiLCBudWxsLCAxLCAxLCBRdWF0ZXJuaW9uLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0UXVhdGVybmlvbl9aKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0NjQoKSwgInoiLCBudWxsLCAxLCAxLCBRdWF0ZXJuaW9uLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0UXVhdGVybmlvbl9XKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0NjQoKSwgInciLCBudWxsLCAxLCAxLCBRdWF0ZXJuaW9uLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKHBvc2VFQ2xhc3MsIFBvc2UuY2xhc3MsICJQb3NlIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXRQb3NlX1Bvc2l0aW9uKCksIHRoaXMuZ2V0UG9pbnQoKSwgbnVsbCwgInBvc2l0aW9uIiwgbnVsbCwgMSwgMSwgUG9zZS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFUmVmZXJlbmNlKGdldFBvc2VfT3JpZW50YXRpb24oKSwgdGhpcy5nZXRRdWF0ZXJuaW9uKCksIG51bGwsICJvcmllbnRhdGlvbiIsIG51bGwsIDEsIDEsIFBvc2UuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3MocG9zZVN0YW1wZWRFQ2xhc3MsIFBvc2VTdGFtcGVkLmNsYXNzLCAiUG9zZVN0YW1wZWQiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFUmVmZXJlbmNlKGdldFBvc2VTdGFtcGVkX0hlYWRlcigpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRIZWFkZXIoKSwgbnVsbCwgImhlYWRlciIsIG51bGwsIDEsIDEsIFBvc2VTdGFtcGVkLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0UG9zZVN0YW1wZWRfUG9zZSgpLCB0aGlzLmdldFBvc2UoKSwgbnVsbCwgInBvc2UiLCBudWxsLCAxLCAxLCBQb3NlU3RhbXBlZC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyh0d2lzdFdpdGhDb3ZhcmlhbmNlRUNsYXNzLCBUd2lzdFdpdGhDb3ZhcmlhbmNlLmNsYXNzLCAiVHdpc3RXaXRoQ292YXJpYW5jZSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0VHdpc3RXaXRoQ292YXJpYW5jZV9Ud2lzdCgpLCB0aGlzLmdldFR3aXN0KCksIG51bGwsICJ0d2lzdCIsIG51bGwsIDEsIDEsIFR3aXN0V2l0aENvdmFyaWFuY2UuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRUd2lzdFdpdGhDb3ZhcmlhbmNlX0NvdmFyaWFuY2UoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQ2NCgpLCAiY292YXJpYW5jZSIsIG51bGwsIDM2LCAzNiwgVHdpc3RXaXRoQ292YXJpYW5jZS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyh0d2lzdEVDbGFzcywgVHdpc3QuY2xhc3MsICJUd2lzdCIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0VHdpc3RfTGluZWFyKCksIHRoaXMuZ2V0VmVjdG9yMygpLCBudWxsLCAibGluZWFyIiwgbnVsbCwgMSwgMSwgVHdpc3QuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RVJlZmVyZW5jZShnZXRUd2lzdF9Bbmd1bGFyKCksIHRoaXMuZ2V0VmVjdG9yMygpLCBudWxsLCAiYW5ndWxhciIsIG51bGwsIDEsIDEsIFR3aXN0LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKHR3aXN0U3RhbXBlZEVDbGFzcywgVHdpc3RTdGFtcGVkLmNsYXNzLCAiVHdpc3RTdGFtcGVkIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXRUd2lzdFN0YW1wZWRfSGVhZGVyKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEhlYWRlcigpLCBudWxsLCAiaGVhZGVyIiwgbnVsbCwgMSwgMSwgVHdpc3RTdGFtcGVkLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0VHdpc3RTdGFtcGVkX1R3aXN0KCksIHRoaXMuZ2V0VHdpc3QoKSwgbnVsbCwgInR3aXN0IiwgbnVsbCwgMSwgMSwgVHdpc3RTdGFtcGVkLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKHBvc2VXaXRoQ292YXJpYW5jZUVDbGFzcywgUG9zZVdpdGhDb3ZhcmlhbmNlLmNsYXNzLCAiUG9zZVdpdGhDb3ZhcmlhbmNlIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXRQb3NlV2l0aENvdmFyaWFuY2VfUG9zZSgpLCB0aGlzLmdldFBvc2UoKSwgbnVsbCwgInBvc2UiLCBudWxsLCAxLCAxLCBQb3NlV2l0aENvdmFyaWFuY2UuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRQb3NlV2l0aENvdmFyaWFuY2VfQ292YXJpYW5jZSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDY0KCksICJjb3ZhcmlhbmNlIiwgbnVsbCwgMzYsIDM2LCBQb3NlV2l0aENvdmFyaWFuY2UuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3MocG9zZTJERUNsYXNzLCBQb3NlMkQuY2xhc3MsICJQb3NlMkQiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFQXR0cmlidXRlKGdldFBvc2UyRF9YKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0NjQoKSwgIngiLCBudWxsLCAxLCAxLCBQb3NlMkQuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRQb3NlMkRfWSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDY0KCksICJ5IiwgbnVsbCwgMSwgMSwgUG9zZTJELmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0UG9zZTJEX1RoZXRhKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0NjQoKSwgInRoZXRhIiwgbnVsbCwgMSwgMSwgUG9zZTJELmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKHBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWRFQ2xhc3MsIFBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWQuY2xhc3MsICJQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCisJCWluaXRFQ2xhc3MocG9zZUFycmF5RUNsYXNzLCBQb3NlQXJyYXkuY2xhc3MsICJQb3NlQXJyYXkiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFUmVmZXJlbmNlKGdldFBvc2VBcnJheV9IZWFkZXIoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0SGVhZGVyKCksIG51bGwsICJoZWFkZXIiLCBudWxsLCAxLCAxLCBQb3NlQXJyYXkuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RVJlZmVyZW5jZShnZXRQb3NlQXJyYXlfUG9zZXMoKSwgdGhpcy5nZXRQb3NlKCksIG51bGwsICJwb3NlcyIsIG51bGwsIDAsIC0xLCBQb3NlQXJyYXkuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3MocXVhdGVybmlvblN0YW1wZWRFQ2xhc3MsIFF1YXRlcm5pb25TdGFtcGVkLmNsYXNzLCAiUXVhdGVybmlvblN0YW1wZWQiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFUmVmZXJlbmNlKGdldFF1YXRlcm5pb25TdGFtcGVkX0hlYWRlcigpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRIZWFkZXIoKSwgbnVsbCwgImhlYWRlciIsIG51bGwsIDEsIDEsIFF1YXRlcm5pb25TdGFtcGVkLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0UXVhdGVybmlvblN0YW1wZWRfUXVhdGVybmlvbigpLCB0aGlzLmdldFF1YXRlcm5pb24oKSwgbnVsbCwgInF1YXRlcm5pb24iLCBudWxsLCAxLCAxLCBRdWF0ZXJuaW9uU3RhbXBlZC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyh0cmFuc2Zvcm1FQ2xhc3MsIFRyYW5zZm9ybS5jbGFzcywgIlRyYW5zZm9ybSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0VHJhbnNmb3JtX1RyYW5zbGF0aW9uKCksIHRoaXMuZ2V0VmVjdG9yMygpLCBudWxsLCAidHJhbnNsYXRpb24iLCBudWxsLCAxLCAxLCBUcmFuc2Zvcm0uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RVJlZmVyZW5jZShnZXRUcmFuc2Zvcm1fUm90YXRpb24oKSwgdGhpcy5nZXRRdWF0ZXJuaW9uKCksIG51bGwsICJyb3RhdGlvbiIsIG51bGwsIDEsIDEsIFRyYW5zZm9ybS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyh3cmVuY2hTdGFtcGVkRUNsYXNzLCBXcmVuY2hTdGFtcGVkLmNsYXNzLCAiV3JlbmNoU3RhbXBlZCIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0V3JlbmNoU3RhbXBlZF9IZWFkZXIoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0SGVhZGVyKCksIG51bGwsICJoZWFkZXIiLCBudWxsLCAxLCAxLCBXcmVuY2hTdGFtcGVkLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0V3JlbmNoU3RhbXBlZF9XcmVuY2goKSwgdGhpcy5nZXRXcmVuY2goKSwgbnVsbCwgIndyZW5jaCIsIG51bGwsIDEsIDEsIFdyZW5jaFN0YW1wZWQuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3Mod3JlbmNoRUNsYXNzLCBXcmVuY2guY2xhc3MsICJXcmVuY2giLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFUmVmZXJlbmNlKGdldFdyZW5jaF9Gb3JjZSgpLCB0aGlzLmdldFZlY3RvcjMoKSwgbnVsbCwgImZvcmNlIiwgbnVsbCwgMSwgMSwgV3JlbmNoLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0V3JlbmNoX1RvcnF1ZSgpLCB0aGlzLmdldFZlY3RvcjMoKSwgbnVsbCwgInRvcnF1ZSIsIG51bGwsIDEsIDEsIFdyZW5jaC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJLy8gQ3JlYXRlIHJlc291cmNlCisJCWNyZWF0ZVJlc291cmNlKGVOU19VUkkpOworCX0KKworfSAvLyBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvUG9pbnQzMkltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL1BvaW50MzJJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDg3MWYyNAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL1BvaW50MzJJbXBsLmphdmEKQEAgLTAsMCArMSwyNjggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludDMyOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UG9pbnQzMjwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlBvaW50MzJJbXBsI2dldFggPGVtPlg8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Qb2ludDMySW1wbCNnZXRZIDxlbT5ZPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9pbnQzMkltcGwjZ2V0WiA8ZW0+WjwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIFBvaW50MzJJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIFBvaW50MzIgeworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRYKCkgPGVtPlg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFhfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0WCgpIDxlbT5YPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRYKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHggPSBYX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFkoKSA8ZW0+WTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0WSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgWV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRZKCkgPGVtPlk8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgeSA9IFlfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0WigpIDxlbT5aPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRaKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBaX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFooKSA8ZW0+WjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0WigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCB6ID0gWl9FREVGQVVMVDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBQb2ludDMySW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuUE9JTlQzMjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFgoKSB7CisJCXJldHVybiB4OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFgoT2JqZWN0IG5ld1gpIHsKKwkJT2JqZWN0IG9sZFggPSB4OworCQl4ID0gbmV3WDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0lOVDMyX19YLCBvbGRYLCB4KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRZKCkgeworCQlyZXR1cm4geTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRZKE9iamVjdCBuZXdZKSB7CisJCU9iamVjdCBvbGRZID0geTsKKwkJeSA9IG5ld1k7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9JTlQzMl9fWSwgb2xkWSwgeSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0WigpIHsKKwkJcmV0dXJuIHo7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0WihPYmplY3QgbmV3WikgeworCQlPYmplY3Qgb2xkWiA9IHo7CisJCXogPSBuZXdaOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UMzJfX1osIG9sZFosIHopKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9JTlQzMl9fWDoKKwkJCQlyZXR1cm4gZ2V0WCgpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UMzJfX1k6CisJCQkJcmV0dXJuIGdldFkoKTsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0lOVDMyX19aOgorCQkJCXJldHVybiBnZXRaKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0lOVDMyX19YOgorCQkJCXNldFgoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UMzJfX1k6CisJCQkJc2V0WSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9JTlQzMl9fWjoKKwkJCQlzZXRaKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9JTlQzMl9fWDoKKwkJCQlzZXRYKFhfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0lOVDMyX19ZOgorCQkJCXNldFkoWV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UMzJfX1o6CisJCQkJc2V0WihaX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0lOVDMyX19YOgorCQkJCXJldHVybiBYX0VERUZBVUxUID09IG51bGwgPyB4ICE9IG51bGwgOiAhWF9FREVGQVVMVC5lcXVhbHMoeCk7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9JTlQzMl9fWToKKwkJCQlyZXR1cm4gWV9FREVGQVVMVCA9PSBudWxsID8geSAhPSBudWxsIDogIVlfRURFRkFVTFQuZXF1YWxzKHkpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UMzJfX1o6CisJCQkJcmV0dXJuIFpfRURFRkFVTFQgPT0gbnVsbCA/IHogIT0gbnVsbCA6ICFaX0VERUZBVUxULmVxdWFscyh6KTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJaWYgKGVJc1Byb3h5KCkpIHJldHVybiBzdXBlci50b1N0cmluZygpOworCisJCVN0cmluZ0J1ZmZlciByZXN1bHQgPSBuZXcgU3RyaW5nQnVmZmVyKHN1cGVyLnRvU3RyaW5nKCkpOworCQlyZXN1bHQuYXBwZW5kKCIgKHg6ICIpOworCQlyZXN1bHQuYXBwZW5kKHgpOworCQlyZXN1bHQuYXBwZW5kKCIsIHk6ICIpOworCQlyZXN1bHQuYXBwZW5kKHkpOworCQlyZXN1bHQuYXBwZW5kKCIsIHo6ICIpOworCQlyZXN1bHQuYXBwZW5kKHopOworCQlyZXN1bHQuYXBwZW5kKCcpJyk7CisJCXJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKKwl9CisKK30gLy8gUG9pbnQzMkltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL1BvaW50SW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvUG9pbnRJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDhmMzllOQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL1BvaW50SW1wbC5qYXZhCkBAIC0wLDAgKzEsMjY4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9pbnQ7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Qb2ludDwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlBvaW50SW1wbCNnZXRYIDxlbT5YPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9pbnRJbXBsI2dldFkgPGVtPlk8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Qb2ludEltcGwjZ2V0WiA8ZW0+WjwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIFBvaW50SW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBQb2ludCB7CisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFgoKSA8ZW0+WDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0WCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgWF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRYKCkgPGVtPlg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgeCA9IFhfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0WSgpIDxlbT5ZPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRZKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBZX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFkoKSA8ZW0+WTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0WSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCB5ID0gWV9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRaKCkgPGVtPlo8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFooKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFpfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0WigpIDxlbT5aPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRaKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHogPSBaX0VERUZBVUxUOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFBvaW50SW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuUE9JTlQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRYKCkgeworCQlyZXR1cm4geDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRYKE9iamVjdCBuZXdYKSB7CisJCU9iamVjdCBvbGRYID0geDsKKwkJeCA9IG5ld1g7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfX1gsIG9sZFgsIHgpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFkoKSB7CisJCXJldHVybiB5OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFkoT2JqZWN0IG5ld1kpIHsKKwkJT2JqZWN0IG9sZFkgPSB5OworCQl5ID0gbmV3WTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9fWSwgb2xkWSwgeSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0WigpIHsKKwkJcmV0dXJuIHo7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0WihPYmplY3QgbmV3WikgeworCQlPYmplY3Qgb2xkWiA9IHo7CisJCXogPSBuZXdaOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX19aLCBvbGRaLCB6KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX19YOgorCQkJCXJldHVybiBnZXRYKCk7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfX1k6CisJCQkJcmV0dXJuIGdldFkoKTsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9fWjoKKwkJCQlyZXR1cm4gZ2V0WigpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfX1g6CisJCQkJc2V0WCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfX1k6CisJCQkJc2V0WSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfX1o6CisJCQkJc2V0WigoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX19YOgorCQkJCXNldFgoWF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX19ZOgorCQkJCXNldFkoWV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX19aOgorCQkJCXNldFooWl9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfX1g6CisJCQkJcmV0dXJuIFhfRURFRkFVTFQgPT0gbnVsbCA/IHggIT0gbnVsbCA6ICFYX0VERUZBVUxULmVxdWFscyh4KTsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9fWToKKwkJCQlyZXR1cm4gWV9FREVGQVVMVCA9PSBudWxsID8geSAhPSBudWxsIDogIVlfRURFRkFVTFQuZXF1YWxzKHkpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX19aOgorCQkJCXJldHVybiBaX0VERUZBVUxUID09IG51bGwgPyB6ICE9IG51bGwgOiAhWl9FREVGQVVMVC5lcXVhbHMoeik7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CisJCWlmIChlSXNQcm94eSgpKSByZXR1cm4gc3VwZXIudG9TdHJpbmcoKTsKKworCQlTdHJpbmdCdWZmZXIgcmVzdWx0ID0gbmV3IFN0cmluZ0J1ZmZlcihzdXBlci50b1N0cmluZygpKTsKKwkJcmVzdWx0LmFwcGVuZCgiICh4OiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh4KTsKKwkJcmVzdWx0LmFwcGVuZCgiLCB5OiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh5KTsKKwkJcmVzdWx0LmFwcGVuZCgiLCB6OiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh6KTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIFBvaW50SW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvUG9pbnRTdGFtcGVkSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvUG9pbnRTdGFtcGVkSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdhMWYzMTIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9Qb2ludFN0YW1wZWRJbXBsLmphdmEKQEAgLTAsMCArMSwyNDAgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb25DaGFpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9pbnRTdGFtcGVkOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBvaW50IFN0YW1wZWQ8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Qb2ludFN0YW1wZWRJbXBsI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9pbnRTdGFtcGVkSW1wbCNnZXRQb2ludCA8ZW0+UG9pbnQ8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBQb2ludFN0YW1wZWRJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIFBvaW50U3RhbXBlZCB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0SGVhZGVyKCkgPGVtPkhlYWRlcjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SGVhZGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgSGVhZGVyIGhlYWRlcjsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFBvaW50KCkgPGVtPlBvaW50PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRQb2ludCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFBvaW50IHBvaW50OworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFBvaW50U3RhbXBlZEltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLlBPSU5UX1NUQU1QRUQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEhlYWRlciBnZXRIZWFkZXIoKSB7CisJCXJldHVybiBoZWFkZXI7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0SGVhZGVyKEhlYWRlciBuZXdIZWFkZXIsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJSGVhZGVyIG9sZEhlYWRlciA9IGhlYWRlcjsKKwkJaGVhZGVyID0gbmV3SGVhZGVyOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpIHsKKwkJCUVOb3RpZmljYXRpb25JbXBsIG5vdGlmaWNhdGlvbiA9IG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX1NUQU1QRURfX0hFQURFUiwgb2xkSGVhZGVyLCBuZXdIZWFkZXIpOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEhlYWRlcihIZWFkZXIgbmV3SGVhZGVyKSB7CisJCWlmIChuZXdIZWFkZXIgIT0gaGVhZGVyKSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChoZWFkZXIgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpaGVhZGVyKS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9TVEFNUEVEX19IRUFERVIsIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld0hlYWRlciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdIZWFkZXIpLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX1NUQU1QRURfX0hFQURFUiwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRIZWFkZXIobmV3SGVhZGVyLCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfU1RBTVBFRF9fSEVBREVSLCBuZXdIZWFkZXIsIG5ld0hlYWRlcikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBQb2ludCBnZXRQb2ludCgpIHsKKwkJcmV0dXJuIHBvaW50OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBiYXNpY1NldFBvaW50KFBvaW50IG5ld1BvaW50LCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCVBvaW50IG9sZFBvaW50ID0gcG9pbnQ7CisJCXBvaW50ID0gbmV3UG9pbnQ7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfU1RBTVBFRF9fUE9JTlQsIG9sZFBvaW50LCBuZXdQb2ludCk7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0UG9pbnQoUG9pbnQgbmV3UG9pbnQpIHsKKwkJaWYgKG5ld1BvaW50ICE9IHBvaW50KSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChwb2ludCAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdClwb2ludCkuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfU1RBTVBFRF9fUE9JTlQsIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld1BvaW50ICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld1BvaW50KS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9TVEFNUEVEX19QT0lOVCwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRQb2ludChuZXdQb2ludCwgbXNncyk7CisJCQlpZiAobXNncyAhPSBudWxsKSBtc2dzLmRpc3BhdGNoKCk7CisJCX0KKwkJZWxzZSBpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX1NUQU1QRURfX1BPSU5ULCBuZXdQb2ludCwgbmV3UG9pbnQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gZUludmVyc2VSZW1vdmUoSW50ZXJuYWxFT2JqZWN0IG90aGVyRW5kLCBpbnQgZmVhdHVyZUlELCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfU1RBTVBFRF9fSEVBREVSOgorCQkJCXJldHVybiBiYXNpY1NldEhlYWRlcihudWxsLCBtc2dzKTsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9TVEFNUEVEX19QT0lOVDoKKwkJCQlyZXR1cm4gYmFzaWNTZXRQb2ludChudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX1NUQU1QRURfX0hFQURFUjoKKwkJCQlyZXR1cm4gZ2V0SGVhZGVyKCk7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfU1RBTVBFRF9fUE9JTlQ6CisJCQkJcmV0dXJuIGdldFBvaW50KCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9TVEFNUEVEX19IRUFERVI6CisJCQkJc2V0SGVhZGVyKChIZWFkZXIpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9TVEFNUEVEX19QT0lOVDoKKwkJCQlzZXRQb2ludCgoUG9pbnQpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfU1RBTVBFRF9fSEVBREVSOgorCQkJCXNldEhlYWRlcigoSGVhZGVyKW51bGwpOworCQkJCXJldHVybjsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9TVEFNUEVEX19QT0lOVDoKKwkJCQlzZXRQb2ludCgoUG9pbnQpbnVsbCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfU1RBTVBFRF9fSEVBREVSOgorCQkJCXJldHVybiBoZWFkZXIgIT0gbnVsbDsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9TVEFNUEVEX19QT0lOVDoKKwkJCQlyZXR1cm4gcG9pbnQgIT0gbnVsbDsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCit9IC8vIFBvaW50U3RhbXBlZEltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL1BvbHlnb25JbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9Qb2x5Z29uSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjYzNDljM2IKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9Qb2x5Z29uSW1wbC5qYXZhCkBAIC0wLDAgKzEsMTQ3IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbkNoYWluOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLkVPYmplY3RDb250YWlubWVudEVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLkludGVybmFsRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9pbnQzMjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvbHlnb247CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Qb2x5Z29uPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9seWdvbkltcGwjZ2V0UG9pbnQgPGVtPlBvaW50PC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgUG9seWdvbkltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgUG9seWdvbiB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0UG9pbnQoKSA8ZW0+UG9pbnQ8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UG9pbnQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBFTGlzdDxQb2ludDMyPiBwb2ludDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBQb2x5Z29uSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuUE9MWUdPTjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUxpc3Q8UG9pbnQzMj4gZ2V0UG9pbnQoKSB7CisJCWlmIChwb2ludCA9PSBudWxsKSB7CisJCQlwb2ludCA9IG5ldyBFT2JqZWN0Q29udGFpbm1lbnRFTGlzdDxQb2ludDMyPihQb2ludDMyLmNsYXNzLCB0aGlzLCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPTFlHT05fX1BPSU5UKTsKKwkJfQorCQlyZXR1cm4gcG9pbnQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGVJbnZlcnNlUmVtb3ZlKEludGVybmFsRU9iamVjdCBvdGhlckVuZCwgaW50IGZlYXR1cmVJRCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPTFlHT05fX1BPSU5UOgorCQkJCXJldHVybiAoKEludGVybmFsRUxpc3Q8Pz4pZ2V0UG9pbnQoKSkuYmFzaWNSZW1vdmUob3RoZXJFbmQsIG1zZ3MpOworCQl9CisJCXJldHVybiBzdXBlci5lSW52ZXJzZVJlbW92ZShvdGhlckVuZCwgZmVhdHVyZUlELCBtc2dzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9MWUdPTl9fUE9JTlQ6CisJCQkJcmV0dXJuIGdldFBvaW50KCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQFN1cHByZXNzV2FybmluZ3MoInVuY2hlY2tlZCIpCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0xZR09OX19QT0lOVDoKKwkJCQlnZXRQb2ludCgpLmNsZWFyKCk7CisJCQkJZ2V0UG9pbnQoKS5hZGRBbGwoKENvbGxlY3Rpb248PyBleHRlbmRzIFBvaW50MzI+KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPTFlHT05fX1BPSU5UOgorCQkJCWdldFBvaW50KCkuY2xlYXIoKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0xZR09OX19QT0lOVDoKKwkJCQlyZXR1cm4gcG9pbnQgIT0gbnVsbCAmJiAhcG9pbnQuaXNFbXB0eSgpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKK30gLy8gUG9seWdvbkltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL1BvbHlnb25TdGFtcGVkSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvUG9seWdvblN0YW1wZWRJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTQzMWVhMgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL1BvbHlnb25TdGFtcGVkSW1wbC5qYXZhCkBAIC0wLDAgKzEsMjQwIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uQ2hhaW47CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2x5Z29uOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9seWdvblN0YW1wZWQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSGVhZGVyOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UG9seWdvbiBTdGFtcGVkPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9seWdvblN0YW1wZWRJbXBsI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9seWdvblN0YW1wZWRJbXBsI2dldFBvbHlnb24gPGVtPlBvbHlnb248L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBQb2x5Z29uU3RhbXBlZEltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgUG9seWdvblN0YW1wZWQgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEhlYWRlcigpIDxlbT5IZWFkZXI8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEhlYWRlcigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEhlYWRlciBoZWFkZXI7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRQb2x5Z29uKCkgPGVtPlBvbHlnb248L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFBvbHlnb24oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBQb2x5Z29uIHBvbHlnb247CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgUG9seWdvblN0YW1wZWRJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5QT0xZR09OX1NUQU1QRUQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEhlYWRlciBnZXRIZWFkZXIoKSB7CisJCXJldHVybiBoZWFkZXI7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0SGVhZGVyKEhlYWRlciBuZXdIZWFkZXIsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJSGVhZGVyIG9sZEhlYWRlciA9IGhlYWRlcjsKKwkJaGVhZGVyID0gbmV3SGVhZGVyOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpIHsKKwkJCUVOb3RpZmljYXRpb25JbXBsIG5vdGlmaWNhdGlvbiA9IG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPTFlHT05fU1RBTVBFRF9fSEVBREVSLCBvbGRIZWFkZXIsIG5ld0hlYWRlcik7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0SGVhZGVyKEhlYWRlciBuZXdIZWFkZXIpIHsKKwkJaWYgKG5ld0hlYWRlciAhPSBoZWFkZXIpIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKGhlYWRlciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCloZWFkZXIpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPTFlHT05fU1RBTVBFRF9fSEVBREVSLCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdIZWFkZXIgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3SGVhZGVyKS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0xZR09OX1NUQU1QRURfX0hFQURFUiwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRIZWFkZXIobmV3SGVhZGVyLCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9MWUdPTl9TVEFNUEVEX19IRUFERVIsIG5ld0hlYWRlciwgbmV3SGVhZGVyKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFBvbHlnb24gZ2V0UG9seWdvbigpIHsKKwkJcmV0dXJuIHBvbHlnb247CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0UG9seWdvbihQb2x5Z29uIG5ld1BvbHlnb24sIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJUG9seWdvbiBvbGRQb2x5Z29uID0gcG9seWdvbjsKKwkJcG9seWdvbiA9IG5ld1BvbHlnb247CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9MWUdPTl9TVEFNUEVEX19QT0xZR09OLCBvbGRQb2x5Z29uLCBuZXdQb2x5Z29uKTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRQb2x5Z29uKFBvbHlnb24gbmV3UG9seWdvbikgeworCQlpZiAobmV3UG9seWdvbiAhPSBwb2x5Z29uKSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChwb2x5Z29uICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KXBvbHlnb24pLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPTFlHT05fU1RBTVBFRF9fUE9MWUdPTiwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3UG9seWdvbiAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdQb2x5Z29uKS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0xZR09OX1NUQU1QRURfX1BPTFlHT04sIG51bGwsIG1zZ3MpOworCQkJbXNncyA9IGJhc2ljU2V0UG9seWdvbihuZXdQb2x5Z29uLCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9MWUdPTl9TVEFNUEVEX19QT0xZR09OLCBuZXdQb2x5Z29uLCBuZXdQb2x5Z29uKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGVJbnZlcnNlUmVtb3ZlKEludGVybmFsRU9iamVjdCBvdGhlckVuZCwgaW50IGZlYXR1cmVJRCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPTFlHT05fU1RBTVBFRF9fSEVBREVSOgorCQkJCXJldHVybiBiYXNpY1NldEhlYWRlcihudWxsLCBtc2dzKTsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0xZR09OX1NUQU1QRURfX1BPTFlHT046CisJCQkJcmV0dXJuIGJhc2ljU2V0UG9seWdvbihudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPTFlHT05fU1RBTVBFRF9fSEVBREVSOgorCQkJCXJldHVybiBnZXRIZWFkZXIoKTsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0xZR09OX1NUQU1QRURfX1BPTFlHT046CisJCQkJcmV0dXJuIGdldFBvbHlnb24oKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPTFlHT05fU1RBTVBFRF9fSEVBREVSOgorCQkJCXNldEhlYWRlcigoSGVhZGVyKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9MWUdPTl9TVEFNUEVEX19QT0xZR09OOgorCQkJCXNldFBvbHlnb24oKFBvbHlnb24pbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9MWUdPTl9TVEFNUEVEX19IRUFERVI6CisJCQkJc2V0SGVhZGVyKChIZWFkZXIpbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPTFlHT05fU1RBTVBFRF9fUE9MWUdPTjoKKwkJCQlzZXRQb2x5Z29uKChQb2x5Z29uKW51bGwpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPTFlHT05fU1RBTVBFRF9fSEVBREVSOgorCQkJCXJldHVybiBoZWFkZXIgIT0gbnVsbDsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0xZR09OX1NUQU1QRURfX1BPTFlHT046CisJCQkJcmV0dXJuIHBvbHlnb24gIT0gbnVsbDsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCit9IC8vIFBvbHlnb25TdGFtcGVkSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvUG9zZTJESW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvUG9zZTJESW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAyZTExNGIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9Qb3NlMkRJbXBsLmphdmEKQEAgLTAsMCArMSwyNjggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlMkQ7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Qb3NlMiBEPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9zZTJESW1wbCNnZXRYIDxlbT5YPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9zZTJESW1wbCNnZXRZIDxlbT5ZPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9zZTJESW1wbCNnZXRUaGV0YSA8ZW0+VGhldGE8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBQb3NlMkRJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIFBvc2UyRCB7CisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFgoKSA8ZW0+WDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0WCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgWF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRYKCkgPGVtPlg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgeCA9IFhfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0WSgpIDxlbT5ZPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRZKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBZX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFkoKSA8ZW0+WTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0WSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCB5ID0gWV9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRUaGV0YSgpIDxlbT5UaGV0YTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VGhldGEoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFRIRVRBX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFRoZXRhKCkgPGVtPlRoZXRhPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRUaGV0YSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCB0aGV0YSA9IFRIRVRBX0VERUZBVUxUOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFBvc2UyREltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLlBPU0UyX0Q7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRYKCkgeworCQlyZXR1cm4geDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRYKE9iamVjdCBuZXdYKSB7CisJCU9iamVjdCBvbGRYID0geDsKKwkJeCA9IG5ld1g7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRTJfRF9fWCwgb2xkWCwgeCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0WSgpIHsKKwkJcmV0dXJuIHk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0WShPYmplY3QgbmV3WSkgeworCQlPYmplY3Qgb2xkWSA9IHk7CisJCXkgPSBuZXdZOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0UyX0RfX1ksIG9sZFksIHkpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFRoZXRhKCkgeworCQlyZXR1cm4gdGhldGE7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0VGhldGEoT2JqZWN0IG5ld1RoZXRhKSB7CisJCU9iamVjdCBvbGRUaGV0YSA9IHRoZXRhOworCQl0aGV0YSA9IG5ld1RoZXRhOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0UyX0RfX1RIRVRBLCBvbGRUaGV0YSwgdGhldGEpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRTJfRF9fWDoKKwkJCQlyZXR1cm4gZ2V0WCgpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0UyX0RfX1k6CisJCQkJcmV0dXJuIGdldFkoKTsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFMl9EX19USEVUQToKKwkJCQlyZXR1cm4gZ2V0VGhldGEoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0UyX0RfX1g6CisJCQkJc2V0WCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRTJfRF9fWToKKwkJCQlzZXRZKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFMl9EX19USEVUQToKKwkJCQlzZXRUaGV0YSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0UyX0RfX1g6CisJCQkJc2V0WChYX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRTJfRF9fWToKKwkJCQlzZXRZKFlfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFMl9EX19USEVUQToKKwkJCQlzZXRUaGV0YShUSEVUQV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRTJfRF9fWDoKKwkJCQlyZXR1cm4gWF9FREVGQVVMVCA9PSBudWxsID8geCAhPSBudWxsIDogIVhfRURFRkFVTFQuZXF1YWxzKHgpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0UyX0RfX1k6CisJCQkJcmV0dXJuIFlfRURFRkFVTFQgPT0gbnVsbCA/IHkgIT0gbnVsbCA6ICFZX0VERUZBVUxULmVxdWFscyh5KTsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFMl9EX19USEVUQToKKwkJCQlyZXR1cm4gVEhFVEFfRURFRkFVTFQgPT0gbnVsbCA/IHRoZXRhICE9IG51bGwgOiAhVEhFVEFfRURFRkFVTFQuZXF1YWxzKHRoZXRhKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJaWYgKGVJc1Byb3h5KCkpIHJldHVybiBzdXBlci50b1N0cmluZygpOworCisJCVN0cmluZ0J1ZmZlciByZXN1bHQgPSBuZXcgU3RyaW5nQnVmZmVyKHN1cGVyLnRvU3RyaW5nKCkpOworCQlyZXN1bHQuYXBwZW5kKCIgKHg6ICIpOworCQlyZXN1bHQuYXBwZW5kKHgpOworCQlyZXN1bHQuYXBwZW5kKCIsIHk6ICIpOworCQlyZXN1bHQuYXBwZW5kKHkpOworCQlyZXN1bHQuYXBwZW5kKCIsIHRoZXRhOiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh0aGV0YSk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBQb3NlMkRJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9Qb3NlQXJyYXlJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9Qb3NlQXJyYXlJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGZhMDIyYgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL1Bvc2VBcnJheUltcGwuamF2YQpAQCAtMCwwICsxLDIxNiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb247CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uQ2hhaW47CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuRU9iamVjdENvbnRhaW5tZW50RUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuSW50ZXJuYWxFTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZUFycmF5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBvc2UgQXJyYXk8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Qb3NlQXJyYXlJbXBsI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9zZUFycmF5SW1wbCNnZXRQb3NlcyA8ZW0+UG9zZXM8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBQb3NlQXJyYXlJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIFBvc2VBcnJheSB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0SGVhZGVyKCkgPGVtPkhlYWRlcjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SGVhZGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgSGVhZGVyIGhlYWRlcjsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFBvc2VzKCkgPGVtPlBvc2VzPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFBvc2VzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRUxpc3Q8UG9zZT4gcG9zZXM7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgUG9zZUFycmF5SW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuUE9TRV9BUlJBWTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgSGVhZGVyIGdldEhlYWRlcigpIHsKKwkJcmV0dXJuIGhlYWRlcjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRIZWFkZXIoSGVhZGVyIG5ld0hlYWRlciwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlIZWFkZXIgb2xkSGVhZGVyID0gaGVhZGVyOworCQloZWFkZXIgPSBuZXdIZWFkZXI7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9BUlJBWV9fSEVBREVSLCBvbGRIZWFkZXIsIG5ld0hlYWRlcik7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0SGVhZGVyKEhlYWRlciBuZXdIZWFkZXIpIHsKKwkJaWYgKG5ld0hlYWRlciAhPSBoZWFkZXIpIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKGhlYWRlciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCloZWFkZXIpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfQVJSQVlfX0hFQURFUiwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3SGVhZGVyICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld0hlYWRlcikuZUludmVyc2VBZGQodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9BUlJBWV9fSEVBREVSLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldEhlYWRlcihuZXdIZWFkZXIsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX0FSUkFZX19IRUFERVIsIG5ld0hlYWRlciwgbmV3SGVhZGVyKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVMaXN0PFBvc2U+IGdldFBvc2VzKCkgeworCQlpZiAocG9zZXMgPT0gbnVsbCkgeworCQkJcG9zZXMgPSBuZXcgRU9iamVjdENvbnRhaW5tZW50RUxpc3Q8UG9zZT4oUG9zZS5jbGFzcywgdGhpcywgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX0FSUkFZX19QT1NFUyk7CisJCX0KKwkJcmV0dXJuIHBvc2VzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBlSW52ZXJzZVJlbW92ZShJbnRlcm5hbEVPYmplY3Qgb3RoZXJFbmQsIGludCBmZWF0dXJlSUQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX0FSUkFZX19IRUFERVI6CisJCQkJcmV0dXJuIGJhc2ljU2V0SGVhZGVyKG51bGwsIG1zZ3MpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfQVJSQVlfX1BPU0VTOgorCQkJCXJldHVybiAoKEludGVybmFsRUxpc3Q8Pz4pZ2V0UG9zZXMoKSkuYmFzaWNSZW1vdmUob3RoZXJFbmQsIG1zZ3MpOworCQl9CisJCXJldHVybiBzdXBlci5lSW52ZXJzZVJlbW92ZShvdGhlckVuZCwgZmVhdHVyZUlELCBtc2dzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9BUlJBWV9fSEVBREVSOgorCQkJCXJldHVybiBnZXRIZWFkZXIoKTsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX0FSUkFZX19QT1NFUzoKKwkJCQlyZXR1cm4gZ2V0UG9zZXMoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAU3VwcHJlc3NXYXJuaW5ncygidW5jaGVja2VkIikKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfQVJSQVlfX0hFQURFUjoKKwkJCQlzZXRIZWFkZXIoKEhlYWRlciluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfQVJSQVlfX1BPU0VTOgorCQkJCWdldFBvc2VzKCkuY2xlYXIoKTsKKwkJCQlnZXRQb3NlcygpLmFkZEFsbCgoQ29sbGVjdGlvbjw/IGV4dGVuZHMgUG9zZT4pbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9BUlJBWV9fSEVBREVSOgorCQkJCXNldEhlYWRlcigoSGVhZGVyKW51bGwpOworCQkJCXJldHVybjsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX0FSUkFZX19QT1NFUzoKKwkJCQlnZXRQb3NlcygpLmNsZWFyKCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9BUlJBWV9fSEVBREVSOgorCQkJCXJldHVybiBoZWFkZXIgIT0gbnVsbDsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX0FSUkFZX19QT1NFUzoKKwkJCQlyZXR1cm4gcG9zZXMgIT0gbnVsbCAmJiAhcG9zZXMuaXNFbXB0eSgpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKK30gLy8gUG9zZUFycmF5SW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvUG9zZUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL1Bvc2VJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTZiY2FmYQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL1Bvc2VJbXBsLmphdmEKQEAgLTAsMCArMSwyNDAgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb25DaGFpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlF1YXRlcm5pb247CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Qb3NlPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9zZUltcGwjZ2V0UG9zaXRpb24gPGVtPlBvc2l0aW9uPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9zZUltcGwjZ2V0T3JpZW50YXRpb24gPGVtPk9yaWVudGF0aW9uPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgUG9zZUltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgUG9zZSB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0UG9zaXRpb24oKSA8ZW0+UG9zaXRpb248L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFBvc2l0aW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgUG9pbnQgcG9zaXRpb247CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRPcmllbnRhdGlvbigpIDxlbT5PcmllbnRhdGlvbjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0T3JpZW50YXRpb24oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBRdWF0ZXJuaW9uIG9yaWVudGF0aW9uOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFBvc2VJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5QT1NFOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBQb2ludCBnZXRQb3NpdGlvbigpIHsKKwkJcmV0dXJuIHBvc2l0aW9uOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBiYXNpY1NldFBvc2l0aW9uKFBvaW50IG5ld1Bvc2l0aW9uLCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCVBvaW50IG9sZFBvc2l0aW9uID0gcG9zaXRpb247CisJCXBvc2l0aW9uID0gbmV3UG9zaXRpb247CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9fUE9TSVRJT04sIG9sZFBvc2l0aW9uLCBuZXdQb3NpdGlvbik7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0UG9zaXRpb24oUG9pbnQgbmV3UG9zaXRpb24pIHsKKwkJaWYgKG5ld1Bvc2l0aW9uICE9IHBvc2l0aW9uKSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChwb3NpdGlvbiAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdClwb3NpdGlvbikuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9fUE9TSVRJT04sIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld1Bvc2l0aW9uICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld1Bvc2l0aW9uKS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX19QT1NJVElPTiwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRQb3NpdGlvbihuZXdQb3NpdGlvbiwgbXNncyk7CisJCQlpZiAobXNncyAhPSBudWxsKSBtc2dzLmRpc3BhdGNoKCk7CisJCX0KKwkJZWxzZSBpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfX1BPU0lUSU9OLCBuZXdQb3NpdGlvbiwgbmV3UG9zaXRpb24pKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUXVhdGVybmlvbiBnZXRPcmllbnRhdGlvbigpIHsKKwkJcmV0dXJuIG9yaWVudGF0aW9uOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBiYXNpY1NldE9yaWVudGF0aW9uKFF1YXRlcm5pb24gbmV3T3JpZW50YXRpb24sIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJUXVhdGVybmlvbiBvbGRPcmllbnRhdGlvbiA9IG9yaWVudGF0aW9uOworCQlvcmllbnRhdGlvbiA9IG5ld09yaWVudGF0aW9uOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpIHsKKwkJCUVOb3RpZmljYXRpb25JbXBsIG5vdGlmaWNhdGlvbiA9IG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfX09SSUVOVEFUSU9OLCBvbGRPcmllbnRhdGlvbiwgbmV3T3JpZW50YXRpb24pOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldE9yaWVudGF0aW9uKFF1YXRlcm5pb24gbmV3T3JpZW50YXRpb24pIHsKKwkJaWYgKG5ld09yaWVudGF0aW9uICE9IG9yaWVudGF0aW9uKSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChvcmllbnRhdGlvbiAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdClvcmllbnRhdGlvbikuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9fT1JJRU5UQVRJT04sIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld09yaWVudGF0aW9uICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld09yaWVudGF0aW9uKS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX19PUklFTlRBVElPTiwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRPcmllbnRhdGlvbihuZXdPcmllbnRhdGlvbiwgbXNncyk7CisJCQlpZiAobXNncyAhPSBudWxsKSBtc2dzLmRpc3BhdGNoKCk7CisJCX0KKwkJZWxzZSBpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfX09SSUVOVEFUSU9OLCBuZXdPcmllbnRhdGlvbiwgbmV3T3JpZW50YXRpb24pKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gZUludmVyc2VSZW1vdmUoSW50ZXJuYWxFT2JqZWN0IG90aGVyRW5kLCBpbnQgZmVhdHVyZUlELCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9fUE9TSVRJT046CisJCQkJcmV0dXJuIGJhc2ljU2V0UG9zaXRpb24obnVsbCwgbXNncyk7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9fT1JJRU5UQVRJT046CisJCQkJcmV0dXJuIGJhc2ljU2V0T3JpZW50YXRpb24obnVsbCwgbXNncyk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJbnZlcnNlUmVtb3ZlKG90aGVyRW5kLCBmZWF0dXJlSUQsIG1zZ3MpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX19QT1NJVElPTjoKKwkJCQlyZXR1cm4gZ2V0UG9zaXRpb24oKTsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX19PUklFTlRBVElPTjoKKwkJCQlyZXR1cm4gZ2V0T3JpZW50YXRpb24oKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfX1BPU0lUSU9OOgorCQkJCXNldFBvc2l0aW9uKChQb2ludCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfX09SSUVOVEFUSU9OOgorCQkJCXNldE9yaWVudGF0aW9uKChRdWF0ZXJuaW9uKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfX1BPU0lUSU9OOgorCQkJCXNldFBvc2l0aW9uKChQb2ludCludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9fT1JJRU5UQVRJT046CisJCQkJc2V0T3JpZW50YXRpb24oKFF1YXRlcm5pb24pbnVsbCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9fUE9TSVRJT046CisJCQkJcmV0dXJuIHBvc2l0aW9uICE9IG51bGw7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9fT1JJRU5UQVRJT046CisJCQkJcmV0dXJuIG9yaWVudGF0aW9uICE9IG51bGw7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworfSAvLyBQb3NlSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvUG9zZVN0YW1wZWRJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9Qb3NlU3RhbXBlZEltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzFkMTg3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvUG9zZVN0YW1wZWRJbXBsLmphdmEKQEAgLTAsMCArMSwyNDAgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb25DaGFpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlU3RhbXBlZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5IZWFkZXI7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Qb3NlIFN0YW1wZWQ8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Qb3NlU3RhbXBlZEltcGwjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Qb3NlU3RhbXBlZEltcGwjZ2V0UG9zZSA8ZW0+UG9zZTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIFBvc2VTdGFtcGVkSW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBQb3NlU3RhbXBlZCB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0SGVhZGVyKCkgPGVtPkhlYWRlcjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SGVhZGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgSGVhZGVyIGhlYWRlcjsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFBvc2UoKSA8ZW0+UG9zZTwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UG9zZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFBvc2UgcG9zZTsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBQb3NlU3RhbXBlZEltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLlBPU0VfU1RBTVBFRDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgSGVhZGVyIGdldEhlYWRlcigpIHsKKwkJcmV0dXJuIGhlYWRlcjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRIZWFkZXIoSGVhZGVyIG5ld0hlYWRlciwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlIZWFkZXIgb2xkSGVhZGVyID0gaGVhZGVyOworCQloZWFkZXIgPSBuZXdIZWFkZXI7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9TVEFNUEVEX19IRUFERVIsIG9sZEhlYWRlciwgbmV3SGVhZGVyKTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRIZWFkZXIoSGVhZGVyIG5ld0hlYWRlcikgeworCQlpZiAobmV3SGVhZGVyICE9IGhlYWRlcikgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAoaGVhZGVyICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KWhlYWRlcikuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9TVEFNUEVEX19IRUFERVIsIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld0hlYWRlciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdIZWFkZXIpLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfU1RBTVBFRF9fSEVBREVSLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldEhlYWRlcihuZXdIZWFkZXIsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX1NUQU1QRURfX0hFQURFUiwgbmV3SGVhZGVyLCBuZXdIZWFkZXIpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUG9zZSBnZXRQb3NlKCkgeworCQlyZXR1cm4gcG9zZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRQb3NlKFBvc2UgbmV3UG9zZSwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlQb3NlIG9sZFBvc2UgPSBwb3NlOworCQlwb3NlID0gbmV3UG9zZTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX1NUQU1QRURfX1BPU0UsIG9sZFBvc2UsIG5ld1Bvc2UpOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFBvc2UoUG9zZSBuZXdQb3NlKSB7CisJCWlmIChuZXdQb3NlICE9IHBvc2UpIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKHBvc2UgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpcG9zZSkuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9TVEFNUEVEX19QT1NFLCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdQb3NlICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld1Bvc2UpLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfU1RBTVBFRF9fUE9TRSwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRQb3NlKG5ld1Bvc2UsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX1NUQU1QRURfX1BPU0UsIG5ld1Bvc2UsIG5ld1Bvc2UpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gZUludmVyc2VSZW1vdmUoSW50ZXJuYWxFT2JqZWN0IG90aGVyRW5kLCBpbnQgZmVhdHVyZUlELCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9TVEFNUEVEX19IRUFERVI6CisJCQkJcmV0dXJuIGJhc2ljU2V0SGVhZGVyKG51bGwsIG1zZ3MpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfU1RBTVBFRF9fUE9TRToKKwkJCQlyZXR1cm4gYmFzaWNTZXRQb3NlKG51bGwsIG1zZ3MpOworCQl9CisJCXJldHVybiBzdXBlci5lSW52ZXJzZVJlbW92ZShvdGhlckVuZCwgZmVhdHVyZUlELCBtc2dzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9TVEFNUEVEX19IRUFERVI6CisJCQkJcmV0dXJuIGdldEhlYWRlcigpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfU1RBTVBFRF9fUE9TRToKKwkJCQlyZXR1cm4gZ2V0UG9zZSgpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9TVEFNUEVEX19IRUFERVI6CisJCQkJc2V0SGVhZGVyKChIZWFkZXIpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX1NUQU1QRURfX1BPU0U6CisJCQkJc2V0UG9zZSgoUG9zZSluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX1NUQU1QRURfX0hFQURFUjoKKwkJCQlzZXRIZWFkZXIoKEhlYWRlciludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9TVEFNUEVEX19QT1NFOgorCQkJCXNldFBvc2UoKFBvc2UpbnVsbCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9TVEFNUEVEX19IRUFERVI6CisJCQkJcmV0dXJuIGhlYWRlciAhPSBudWxsOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfU1RBTVBFRF9fUE9TRToKKwkJCQlyZXR1cm4gcG9zZSAhPSBudWxsOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKK30gLy8gUG9zZVN0YW1wZWRJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9Qb3NlV2l0aENvdmFyaWFuY2VJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9Qb3NlV2l0aENvdmFyaWFuY2VJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTkxZGFhOAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL1Bvc2VXaXRoQ292YXJpYW5jZUltcGwuamF2YQpAQCAtMCwwICsxLDIyOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb247CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uQ2hhaW47CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuRURhdGFUeXBlVW5pcXVlRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2VXaXRoQ292YXJpYW5jZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBvc2UgV2l0aCBDb3ZhcmlhbmNlPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9zZVdpdGhDb3ZhcmlhbmNlSW1wbCNnZXRQb3NlIDxlbT5Qb3NlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUG9zZVdpdGhDb3ZhcmlhbmNlSW1wbCNnZXRDb3ZhcmlhbmNlIDxlbT5Db3ZhcmlhbmNlPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgUG9zZVdpdGhDb3ZhcmlhbmNlSW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBQb3NlV2l0aENvdmFyaWFuY2UgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFBvc2UoKSA8ZW0+UG9zZTwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UG9zZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFBvc2UgcG9zZTsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldENvdmFyaWFuY2UoKSA8ZW0+Q292YXJpYW5jZTwvZW0+fScgYXR0cmlidXRlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRDb3ZhcmlhbmNlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRUxpc3Q8T2JqZWN0PiBjb3ZhcmlhbmNlOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFBvc2VXaXRoQ292YXJpYW5jZUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLlBPU0VfV0lUSF9DT1ZBUklBTkNFOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBQb3NlIGdldFBvc2UoKSB7CisJCXJldHVybiBwb3NlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBiYXNpY1NldFBvc2UoUG9zZSBuZXdQb3NlLCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCVBvc2Ugb2xkUG9zZSA9IHBvc2U7CisJCXBvc2UgPSBuZXdQb3NlOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpIHsKKwkJCUVOb3RpZmljYXRpb25JbXBsIG5vdGlmaWNhdGlvbiA9IG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfV0lUSF9DT1ZBUklBTkNFX19QT1NFLCBvbGRQb3NlLCBuZXdQb3NlKTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRQb3NlKFBvc2UgbmV3UG9zZSkgeworCQlpZiAobmV3UG9zZSAhPSBwb3NlKSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChwb3NlICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KXBvc2UpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfV0lUSF9DT1ZBUklBTkNFX19QT1NFLCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdQb3NlICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld1Bvc2UpLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfV0lUSF9DT1ZBUklBTkNFX19QT1NFLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldFBvc2UobmV3UG9zZSwgbXNncyk7CisJCQlpZiAobXNncyAhPSBudWxsKSBtc2dzLmRpc3BhdGNoKCk7CisJCX0KKwkJZWxzZSBpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfV0lUSF9DT1ZBUklBTkNFX19QT1NFLCBuZXdQb3NlLCBuZXdQb3NlKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVMaXN0PE9iamVjdD4gZ2V0Q292YXJpYW5jZSgpIHsKKwkJaWYgKGNvdmFyaWFuY2UgPT0gbnVsbCkgeworCQkJY292YXJpYW5jZSA9IG5ldyBFRGF0YVR5cGVVbmlxdWVFTGlzdDxPYmplY3Q+KE9iamVjdC5jbGFzcywgdGhpcywgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX1dJVEhfQ09WQVJJQU5DRV9fQ09WQVJJQU5DRSk7CisJCX0KKwkJcmV0dXJuIGNvdmFyaWFuY2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGVJbnZlcnNlUmVtb3ZlKEludGVybmFsRU9iamVjdCBvdGhlckVuZCwgaW50IGZlYXR1cmVJRCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfV0lUSF9DT1ZBUklBTkNFX19QT1NFOgorCQkJCXJldHVybiBiYXNpY1NldFBvc2UobnVsbCwgbXNncyk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJbnZlcnNlUmVtb3ZlKG90aGVyRW5kLCBmZWF0dXJlSUQsIG1zZ3MpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX1dJVEhfQ09WQVJJQU5DRV9fUE9TRToKKwkJCQlyZXR1cm4gZ2V0UG9zZSgpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfV0lUSF9DT1ZBUklBTkNFX19DT1ZBUklBTkNFOgorCQkJCXJldHVybiBnZXRDb3ZhcmlhbmNlKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQFN1cHByZXNzV2FybmluZ3MoInVuY2hlY2tlZCIpCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX1dJVEhfQ09WQVJJQU5DRV9fUE9TRToKKwkJCQlzZXRQb3NlKChQb3NlKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9XSVRIX0NPVkFSSUFOQ0VfX0NPVkFSSUFOQ0U6CisJCQkJZ2V0Q292YXJpYW5jZSgpLmNsZWFyKCk7CisJCQkJZ2V0Q292YXJpYW5jZSgpLmFkZEFsbCgoQ29sbGVjdGlvbjw/IGV4dGVuZHMgT2JqZWN0PiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX1dJVEhfQ09WQVJJQU5DRV9fUE9TRToKKwkJCQlzZXRQb3NlKChQb3NlKW51bGwpOworCQkJCXJldHVybjsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX1dJVEhfQ09WQVJJQU5DRV9fQ09WQVJJQU5DRToKKwkJCQlnZXRDb3ZhcmlhbmNlKCkuY2xlYXIoKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX1dJVEhfQ09WQVJJQU5DRV9fUE9TRToKKwkJCQlyZXR1cm4gcG9zZSAhPSBudWxsOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlBPU0VfV0lUSF9DT1ZBUklBTkNFX19DT1ZBUklBTkNFOgorCQkJCXJldHVybiBjb3ZhcmlhbmNlICE9IG51bGwgJiYgIWNvdmFyaWFuY2UuaXNFbXB0eSgpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAoY292YXJpYW5jZTogIik7CisJCXJlc3VsdC5hcHBlbmQoY292YXJpYW5jZSk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBQb3NlV2l0aENvdmFyaWFuY2VJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9Qb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvUG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZEltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jZWE1NjQyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvUG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZEltcGwuamF2YQpAQCAtMCwwICsxLDM5IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UG9zZSBXaXRoIENvdmFyaWFuY2UgU3RhbXBlZDwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIFBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWRJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIFBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWQgeworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuUE9TRV9XSVRIX0NPVkFSSUFOQ0VfU1RBTVBFRDsKKwl9CisKK30gLy8gUG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZEltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL1F1YXRlcm5pb25JbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9RdWF0ZXJuaW9uSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE4ZWI2MzQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9RdWF0ZXJuaW9uSW1wbC5qYXZhCkBAIC0wLDAgKzEsMzIyIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUXVhdGVybmlvbjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlF1YXRlcm5pb248L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5RdWF0ZXJuaW9uSW1wbCNnZXRYIDxlbT5YPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuUXVhdGVybmlvbkltcGwjZ2V0WSA8ZW0+WTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlF1YXRlcm5pb25JbXBsI2dldFogPGVtPlo8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5RdWF0ZXJuaW9uSW1wbCNnZXRXIDxlbT5XPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgUXVhdGVybmlvbkltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgUXVhdGVybmlvbiB7CisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFgoKSA8ZW0+WDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0WCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgWF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRYKCkgPGVtPlg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgeCA9IFhfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0WSgpIDxlbT5ZPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRZKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBZX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFkoKSA8ZW0+WTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0WSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCB5ID0gWV9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRaKCkgPGVtPlo8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFooKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFpfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0WigpIDxlbT5aPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRaKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHogPSBaX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFcoKSA8ZW0+VzwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VygpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgV19FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRXKCkgPGVtPlc8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFcoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgdyA9IFdfRURFRkFVTFQ7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgUXVhdGVybmlvbkltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLlFVQVRFUk5JT047CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRYKCkgeworCQlyZXR1cm4geDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRYKE9iamVjdCBuZXdYKSB7CisJCU9iamVjdCBvbGRYID0geDsKKwkJeCA9IG5ld1g7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUVVBVEVSTklPTl9fWCwgb2xkWCwgeCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0WSgpIHsKKwkJcmV0dXJuIHk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0WShPYmplY3QgbmV3WSkgeworCQlPYmplY3Qgb2xkWSA9IHk7CisJCXkgPSBuZXdZOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlFVQVRFUk5JT05fX1ksIG9sZFksIHkpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFooKSB7CisJCXJldHVybiB6OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFooT2JqZWN0IG5ld1opIHsKKwkJT2JqZWN0IG9sZFogPSB6OworCQl6ID0gbmV3WjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5RVUFURVJOSU9OX19aLCBvbGRaLCB6KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRXKCkgeworCQlyZXR1cm4gdzsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRXKE9iamVjdCBuZXdXKSB7CisJCU9iamVjdCBvbGRXID0gdzsKKwkJdyA9IG5ld1c7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUVVBVEVSTklPTl9fVywgb2xkVywgdykpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5RVUFURVJOSU9OX19YOgorCQkJCXJldHVybiBnZXRYKCk7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUVVBVEVSTklPTl9fWToKKwkJCQlyZXR1cm4gZ2V0WSgpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlFVQVRFUk5JT05fX1o6CisJCQkJcmV0dXJuIGdldFooKTsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5RVUFURVJOSU9OX19XOgorCQkJCXJldHVybiBnZXRXKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5RVUFURVJOSU9OX19YOgorCQkJCXNldFgoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlFVQVRFUk5JT05fX1k6CisJCQkJc2V0WSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUVVBVEVSTklPTl9fWjoKKwkJCQlzZXRaKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5RVUFURVJOSU9OX19XOgorCQkJCXNldFcoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5RVUFURVJOSU9OX19YOgorCQkJCXNldFgoWF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlFVQVRFUk5JT05fX1k6CisJCQkJc2V0WShZX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUVVBVEVSTklPTl9fWjoKKwkJCQlzZXRaKFpfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5RVUFURVJOSU9OX19XOgorCQkJCXNldFcoV19FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUVVBVEVSTklPTl9fWDoKKwkJCQlyZXR1cm4gWF9FREVGQVVMVCA9PSBudWxsID8geCAhPSBudWxsIDogIVhfRURFRkFVTFQuZXF1YWxzKHgpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlFVQVRFUk5JT05fX1k6CisJCQkJcmV0dXJuIFlfRURFRkFVTFQgPT0gbnVsbCA/IHkgIT0gbnVsbCA6ICFZX0VERUZBVUxULmVxdWFscyh5KTsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5RVUFURVJOSU9OX19aOgorCQkJCXJldHVybiBaX0VERUZBVUxUID09IG51bGwgPyB6ICE9IG51bGwgOiAhWl9FREVGQVVMVC5lcXVhbHMoeik7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUVVBVEVSTklPTl9fVzoKKwkJCQlyZXR1cm4gV19FREVGQVVMVCA9PSBudWxsID8gdyAhPSBudWxsIDogIVdfRURFRkFVTFQuZXF1YWxzKHcpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAoeDogIik7CisJCXJlc3VsdC5hcHBlbmQoeCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgeTogIik7CisJCXJlc3VsdC5hcHBlbmQoeSk7CisJCXJlc3VsdC5hcHBlbmQoIiwgejogIik7CisJCXJlc3VsdC5hcHBlbmQoeik7CisJCXJlc3VsdC5hcHBlbmQoIiwgdzogIik7CisJCXJlc3VsdC5hcHBlbmQodyk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBRdWF0ZXJuaW9uSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvUXVhdGVybmlvblN0YW1wZWRJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9RdWF0ZXJuaW9uU3RhbXBlZEltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43N2RiNWNiCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvUXVhdGVybmlvblN0YW1wZWRJbXBsLmphdmEKQEAgLTAsMCArMSwyNDAgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb25DaGFpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlF1YXRlcm5pb247CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5RdWF0ZXJuaW9uU3RhbXBlZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5IZWFkZXI7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5RdWF0ZXJuaW9uIFN0YW1wZWQ8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5RdWF0ZXJuaW9uU3RhbXBlZEltcGwjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5RdWF0ZXJuaW9uU3RhbXBlZEltcGwjZ2V0UXVhdGVybmlvbiA8ZW0+UXVhdGVybmlvbjwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIFF1YXRlcm5pb25TdGFtcGVkSW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBRdWF0ZXJuaW9uU3RhbXBlZCB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0SGVhZGVyKCkgPGVtPkhlYWRlcjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SGVhZGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgSGVhZGVyIGhlYWRlcjsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFF1YXRlcm5pb24oKSA8ZW0+UXVhdGVybmlvbjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UXVhdGVybmlvbigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFF1YXRlcm5pb24gcXVhdGVybmlvbjsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBRdWF0ZXJuaW9uU3RhbXBlZEltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLlFVQVRFUk5JT05fU1RBTVBFRDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgSGVhZGVyIGdldEhlYWRlcigpIHsKKwkJcmV0dXJuIGhlYWRlcjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRIZWFkZXIoSGVhZGVyIG5ld0hlYWRlciwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlIZWFkZXIgb2xkSGVhZGVyID0gaGVhZGVyOworCQloZWFkZXIgPSBuZXdIZWFkZXI7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUVVBVEVSTklPTl9TVEFNUEVEX19IRUFERVIsIG9sZEhlYWRlciwgbmV3SGVhZGVyKTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRIZWFkZXIoSGVhZGVyIG5ld0hlYWRlcikgeworCQlpZiAobmV3SGVhZGVyICE9IGhlYWRlcikgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAoaGVhZGVyICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KWhlYWRlcikuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUVVBVEVSTklPTl9TVEFNUEVEX19IRUFERVIsIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld0hlYWRlciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdIZWFkZXIpLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlFVQVRFUk5JT05fU1RBTVBFRF9fSEVBREVSLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldEhlYWRlcihuZXdIZWFkZXIsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5RVUFURVJOSU9OX1NUQU1QRURfX0hFQURFUiwgbmV3SGVhZGVyLCBuZXdIZWFkZXIpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUXVhdGVybmlvbiBnZXRRdWF0ZXJuaW9uKCkgeworCQlyZXR1cm4gcXVhdGVybmlvbjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRRdWF0ZXJuaW9uKFF1YXRlcm5pb24gbmV3UXVhdGVybmlvbiwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlRdWF0ZXJuaW9uIG9sZFF1YXRlcm5pb24gPSBxdWF0ZXJuaW9uOworCQlxdWF0ZXJuaW9uID0gbmV3UXVhdGVybmlvbjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5RVUFURVJOSU9OX1NUQU1QRURfX1FVQVRFUk5JT04sIG9sZFF1YXRlcm5pb24sIG5ld1F1YXRlcm5pb24pOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFF1YXRlcm5pb24oUXVhdGVybmlvbiBuZXdRdWF0ZXJuaW9uKSB7CisJCWlmIChuZXdRdWF0ZXJuaW9uICE9IHF1YXRlcm5pb24pIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKHF1YXRlcm5pb24gIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpcXVhdGVybmlvbikuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUVVBVEVSTklPTl9TVEFNUEVEX19RVUFURVJOSU9OLCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdRdWF0ZXJuaW9uICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld1F1YXRlcm5pb24pLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlFVQVRFUk5JT05fU1RBTVBFRF9fUVVBVEVSTklPTiwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRRdWF0ZXJuaW9uKG5ld1F1YXRlcm5pb24sIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5RVUFURVJOSU9OX1NUQU1QRURfX1FVQVRFUk5JT04sIG5ld1F1YXRlcm5pb24sIG5ld1F1YXRlcm5pb24pKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gZUludmVyc2VSZW1vdmUoSW50ZXJuYWxFT2JqZWN0IG90aGVyRW5kLCBpbnQgZmVhdHVyZUlELCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUVVBVEVSTklPTl9TVEFNUEVEX19IRUFERVI6CisJCQkJcmV0dXJuIGJhc2ljU2V0SGVhZGVyKG51bGwsIG1zZ3MpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlFVQVRFUk5JT05fU1RBTVBFRF9fUVVBVEVSTklPTjoKKwkJCQlyZXR1cm4gYmFzaWNTZXRRdWF0ZXJuaW9uKG51bGwsIG1zZ3MpOworCQl9CisJCXJldHVybiBzdXBlci5lSW52ZXJzZVJlbW92ZShvdGhlckVuZCwgZmVhdHVyZUlELCBtc2dzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUVVBVEVSTklPTl9TVEFNUEVEX19IRUFERVI6CisJCQkJcmV0dXJuIGdldEhlYWRlcigpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlFVQVRFUk5JT05fU1RBTVBFRF9fUVVBVEVSTklPTjoKKwkJCQlyZXR1cm4gZ2V0UXVhdGVybmlvbigpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUVVBVEVSTklPTl9TVEFNUEVEX19IRUFERVI6CisJCQkJc2V0SGVhZGVyKChIZWFkZXIpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5RVUFURVJOSU9OX1NUQU1QRURfX1FVQVRFUk5JT046CisJCQkJc2V0UXVhdGVybmlvbigoUXVhdGVybmlvbiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5RVUFURVJOSU9OX1NUQU1QRURfX0hFQURFUjoKKwkJCQlzZXRIZWFkZXIoKEhlYWRlciludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUVVBVEVSTklPTl9TVEFNUEVEX19RVUFURVJOSU9OOgorCQkJCXNldFF1YXRlcm5pb24oKFF1YXRlcm5pb24pbnVsbCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUVVBVEVSTklPTl9TVEFNUEVEX19IRUFERVI6CisJCQkJcmV0dXJuIGhlYWRlciAhPSBudWxsOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlFVQVRFUk5JT05fU1RBTVBFRF9fUVVBVEVSTklPTjoKKwkJCQlyZXR1cm4gcXVhdGVybmlvbiAhPSBudWxsOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKK30gLy8gUXVhdGVybmlvblN0YW1wZWRJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9UcmFuc2Zvcm1JbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9UcmFuc2Zvcm1JbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWY5MjIzNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL1RyYW5zZm9ybUltcGwuamF2YQpAQCAtMCwwICsxLDI0MCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbkNoYWluOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUXVhdGVybmlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlRyYW5zZm9ybTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlZlY3RvcjM7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5UcmFuc2Zvcm08L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5UcmFuc2Zvcm1JbXBsI2dldFRyYW5zbGF0aW9uIDxlbT5UcmFuc2xhdGlvbjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlRyYW5zZm9ybUltcGwjZ2V0Um90YXRpb24gPGVtPlJvdGF0aW9uPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgVHJhbnNmb3JtSW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBUcmFuc2Zvcm0geworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFRyYW5zbGF0aW9uKCkgPGVtPlRyYW5zbGF0aW9uPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRUcmFuc2xhdGlvbigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFZlY3RvcjMgdHJhbnNsYXRpb247CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRSb3RhdGlvbigpIDxlbT5Sb3RhdGlvbjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0Um90YXRpb24oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBRdWF0ZXJuaW9uIHJvdGF0aW9uOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFRyYW5zZm9ybUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLlRSQU5TRk9STTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVmVjdG9yMyBnZXRUcmFuc2xhdGlvbigpIHsKKwkJcmV0dXJuIHRyYW5zbGF0aW9uOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBiYXNpY1NldFRyYW5zbGF0aW9uKFZlY3RvcjMgbmV3VHJhbnNsYXRpb24sIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJVmVjdG9yMyBvbGRUcmFuc2xhdGlvbiA9IHRyYW5zbGF0aW9uOworCQl0cmFuc2xhdGlvbiA9IG5ld1RyYW5zbGF0aW9uOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpIHsKKwkJCUVOb3RpZmljYXRpb25JbXBsIG5vdGlmaWNhdGlvbiA9IG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRSQU5TRk9STV9fVFJBTlNMQVRJT04sIG9sZFRyYW5zbGF0aW9uLCBuZXdUcmFuc2xhdGlvbik7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0VHJhbnNsYXRpb24oVmVjdG9yMyBuZXdUcmFuc2xhdGlvbikgeworCQlpZiAobmV3VHJhbnNsYXRpb24gIT0gdHJhbnNsYXRpb24pIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKHRyYW5zbGF0aW9uICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KXRyYW5zbGF0aW9uKS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5UUkFOU0ZPUk1fX1RSQU5TTEFUSU9OLCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdUcmFuc2xhdGlvbiAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdUcmFuc2xhdGlvbikuZUludmVyc2VBZGQodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFJBTlNGT1JNX19UUkFOU0xBVElPTiwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRUcmFuc2xhdGlvbihuZXdUcmFuc2xhdGlvbiwgbXNncyk7CisJCQlpZiAobXNncyAhPSBudWxsKSBtc2dzLmRpc3BhdGNoKCk7CisJCX0KKwkJZWxzZSBpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRSQU5TRk9STV9fVFJBTlNMQVRJT04sIG5ld1RyYW5zbGF0aW9uLCBuZXdUcmFuc2xhdGlvbikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBRdWF0ZXJuaW9uIGdldFJvdGF0aW9uKCkgeworCQlyZXR1cm4gcm90YXRpb247CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0Um90YXRpb24oUXVhdGVybmlvbiBuZXdSb3RhdGlvbiwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlRdWF0ZXJuaW9uIG9sZFJvdGF0aW9uID0gcm90YXRpb247CisJCXJvdGF0aW9uID0gbmV3Um90YXRpb247CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFJBTlNGT1JNX19ST1RBVElPTiwgb2xkUm90YXRpb24sIG5ld1JvdGF0aW9uKTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRSb3RhdGlvbihRdWF0ZXJuaW9uIG5ld1JvdGF0aW9uKSB7CisJCWlmIChuZXdSb3RhdGlvbiAhPSByb3RhdGlvbikgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAocm90YXRpb24gIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3Qpcm90YXRpb24pLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRSQU5TRk9STV9fUk9UQVRJT04sIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld1JvdGF0aW9uICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld1JvdGF0aW9uKS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5UUkFOU0ZPUk1fX1JPVEFUSU9OLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldFJvdGF0aW9uKG5ld1JvdGF0aW9uLCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFJBTlNGT1JNX19ST1RBVElPTiwgbmV3Um90YXRpb24sIG5ld1JvdGF0aW9uKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGVJbnZlcnNlUmVtb3ZlKEludGVybmFsRU9iamVjdCBvdGhlckVuZCwgaW50IGZlYXR1cmVJRCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRSQU5TRk9STV9fVFJBTlNMQVRJT046CisJCQkJcmV0dXJuIGJhc2ljU2V0VHJhbnNsYXRpb24obnVsbCwgbXNncyk7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFJBTlNGT1JNX19ST1RBVElPTjoKKwkJCQlyZXR1cm4gYmFzaWNTZXRSb3RhdGlvbihudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRSQU5TRk9STV9fVFJBTlNMQVRJT046CisJCQkJcmV0dXJuIGdldFRyYW5zbGF0aW9uKCk7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFJBTlNGT1JNX19ST1RBVElPTjoKKwkJCQlyZXR1cm4gZ2V0Um90YXRpb24oKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRSQU5TRk9STV9fVFJBTlNMQVRJT046CisJCQkJc2V0VHJhbnNsYXRpb24oKFZlY3RvcjMpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5UUkFOU0ZPUk1fX1JPVEFUSU9OOgorCQkJCXNldFJvdGF0aW9uKChRdWF0ZXJuaW9uKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRSQU5TRk9STV9fVFJBTlNMQVRJT046CisJCQkJc2V0VHJhbnNsYXRpb24oKFZlY3RvcjMpbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRSQU5TRk9STV9fUk9UQVRJT046CisJCQkJc2V0Um90YXRpb24oKFF1YXRlcm5pb24pbnVsbCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFJBTlNGT1JNX19UUkFOU0xBVElPTjoKKwkJCQlyZXR1cm4gdHJhbnNsYXRpb24gIT0gbnVsbDsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5UUkFOU0ZPUk1fX1JPVEFUSU9OOgorCQkJCXJldHVybiByb3RhdGlvbiAhPSBudWxsOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKK30gLy8gVHJhbnNmb3JtSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvVHdpc3RJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9Ud2lzdEltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iNGIwMDcxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvVHdpc3RJbXBsLmphdmEKQEAgLTAsMCArMSwyMzkgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb25DaGFpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlR3aXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVmVjdG9yMzsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlR3aXN0PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuVHdpc3RJbXBsI2dldExpbmVhciA8ZW0+TGluZWFyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuVHdpc3RJbXBsI2dldEFuZ3VsYXIgPGVtPkFuZ3VsYXI8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBUd2lzdEltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgVHdpc3QgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExpbmVhcigpIDxlbT5MaW5lYXI8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExpbmVhcigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFZlY3RvcjMgbGluZWFyOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0QW5ndWxhcigpIDxlbT5Bbmd1bGFyPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRBbmd1bGFyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgVmVjdG9yMyBhbmd1bGFyOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFR3aXN0SW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuVFdJU1Q7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFZlY3RvcjMgZ2V0TGluZWFyKCkgeworCQlyZXR1cm4gbGluZWFyOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBiYXNpY1NldExpbmVhcihWZWN0b3IzIG5ld0xpbmVhciwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlWZWN0b3IzIG9sZExpbmVhciA9IGxpbmVhcjsKKwkJbGluZWFyID0gbmV3TGluZWFyOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpIHsKKwkJCUVOb3RpZmljYXRpb25JbXBsIG5vdGlmaWNhdGlvbiA9IG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRXSVNUX19MSU5FQVIsIG9sZExpbmVhciwgbmV3TGluZWFyKTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRMaW5lYXIoVmVjdG9yMyBuZXdMaW5lYXIpIHsKKwkJaWYgKG5ld0xpbmVhciAhPSBsaW5lYXIpIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKGxpbmVhciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdClsaW5lYXIpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRXSVNUX19MSU5FQVIsIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld0xpbmVhciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdMaW5lYXIpLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRXSVNUX19MSU5FQVIsIG51bGwsIG1zZ3MpOworCQkJbXNncyA9IGJhc2ljU2V0TGluZWFyKG5ld0xpbmVhciwgbXNncyk7CisJCQlpZiAobXNncyAhPSBudWxsKSBtc2dzLmRpc3BhdGNoKCk7CisJCX0KKwkJZWxzZSBpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRXSVNUX19MSU5FQVIsIG5ld0xpbmVhciwgbmV3TGluZWFyKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFZlY3RvcjMgZ2V0QW5ndWxhcigpIHsKKwkJcmV0dXJuIGFuZ3VsYXI7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0QW5ndWxhcihWZWN0b3IzIG5ld0FuZ3VsYXIsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJVmVjdG9yMyBvbGRBbmd1bGFyID0gYW5ndWxhcjsKKwkJYW5ndWxhciA9IG5ld0FuZ3VsYXI7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfX0FOR1VMQVIsIG9sZEFuZ3VsYXIsIG5ld0FuZ3VsYXIpOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEFuZ3VsYXIoVmVjdG9yMyBuZXdBbmd1bGFyKSB7CisJCWlmIChuZXdBbmd1bGFyICE9IGFuZ3VsYXIpIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKGFuZ3VsYXIgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpYW5ndWxhcikuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfX0FOR1VMQVIsIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld0FuZ3VsYXIgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3QW5ndWxhcikuZUludmVyc2VBZGQodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfX0FOR1VMQVIsIG51bGwsIG1zZ3MpOworCQkJbXNncyA9IGJhc2ljU2V0QW5ndWxhcihuZXdBbmd1bGFyLCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfX0FOR1VMQVIsIG5ld0FuZ3VsYXIsIG5ld0FuZ3VsYXIpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gZUludmVyc2VSZW1vdmUoSW50ZXJuYWxFT2JqZWN0IG90aGVyRW5kLCBpbnQgZmVhdHVyZUlELCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfX0xJTkVBUjoKKwkJCQlyZXR1cm4gYmFzaWNTZXRMaW5lYXIobnVsbCwgbXNncyk7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfX0FOR1VMQVI6CisJCQkJcmV0dXJuIGJhc2ljU2V0QW5ndWxhcihudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRXSVNUX19MSU5FQVI6CisJCQkJcmV0dXJuIGdldExpbmVhcigpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRXSVNUX19BTkdVTEFSOgorCQkJCXJldHVybiBnZXRBbmd1bGFyKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5UV0lTVF9fTElORUFSOgorCQkJCXNldExpbmVhcigoVmVjdG9yMyluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRXSVNUX19BTkdVTEFSOgorCQkJCXNldEFuZ3VsYXIoKFZlY3RvcjMpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfX0xJTkVBUjoKKwkJCQlzZXRMaW5lYXIoKFZlY3RvcjMpbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRXSVNUX19BTkdVTEFSOgorCQkJCXNldEFuZ3VsYXIoKFZlY3RvcjMpbnVsbCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfX0xJTkVBUjoKKwkJCQlyZXR1cm4gbGluZWFyICE9IG51bGw7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfX0FOR1VMQVI6CisJCQkJcmV0dXJuIGFuZ3VsYXIgIT0gbnVsbDsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCit9IC8vIFR3aXN0SW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvVHdpc3RTdGFtcGVkSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvVHdpc3RTdGFtcGVkSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRjNmE0ODYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9Ud2lzdFN0YW1wZWRJbXBsLmphdmEKQEAgLTAsMCArMSwyNDAgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb25DaGFpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlR3aXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHdpc3RTdGFtcGVkOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlR3aXN0IFN0YW1wZWQ8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Ud2lzdFN0YW1wZWRJbXBsI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuVHdpc3RTdGFtcGVkSW1wbCNnZXRUd2lzdCA8ZW0+VHdpc3Q8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBUd2lzdFN0YW1wZWRJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIFR3aXN0U3RhbXBlZCB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0SGVhZGVyKCkgPGVtPkhlYWRlcjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SGVhZGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgSGVhZGVyIGhlYWRlcjsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFR3aXN0KCkgPGVtPlR3aXN0PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRUd2lzdCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFR3aXN0IHR3aXN0OworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFR3aXN0U3RhbXBlZEltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLlRXSVNUX1NUQU1QRUQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEhlYWRlciBnZXRIZWFkZXIoKSB7CisJCXJldHVybiBoZWFkZXI7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0SGVhZGVyKEhlYWRlciBuZXdIZWFkZXIsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJSGVhZGVyIG9sZEhlYWRlciA9IGhlYWRlcjsKKwkJaGVhZGVyID0gbmV3SGVhZGVyOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpIHsKKwkJCUVOb3RpZmljYXRpb25JbXBsIG5vdGlmaWNhdGlvbiA9IG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRXSVNUX1NUQU1QRURfX0hFQURFUiwgb2xkSGVhZGVyLCBuZXdIZWFkZXIpOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEhlYWRlcihIZWFkZXIgbmV3SGVhZGVyKSB7CisJCWlmIChuZXdIZWFkZXIgIT0gaGVhZGVyKSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChoZWFkZXIgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpaGVhZGVyKS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5UV0lTVF9TVEFNUEVEX19IRUFERVIsIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld0hlYWRlciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdIZWFkZXIpLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRXSVNUX1NUQU1QRURfX0hFQURFUiwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRIZWFkZXIobmV3SGVhZGVyLCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfU1RBTVBFRF9fSEVBREVSLCBuZXdIZWFkZXIsIG5ld0hlYWRlcikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUd2lzdCBnZXRUd2lzdCgpIHsKKwkJcmV0dXJuIHR3aXN0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBiYXNpY1NldFR3aXN0KFR3aXN0IG5ld1R3aXN0LCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCVR3aXN0IG9sZFR3aXN0ID0gdHdpc3Q7CisJCXR3aXN0ID0gbmV3VHdpc3Q7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfU1RBTVBFRF9fVFdJU1QsIG9sZFR3aXN0LCBuZXdUd2lzdCk7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0VHdpc3QoVHdpc3QgbmV3VHdpc3QpIHsKKwkJaWYgKG5ld1R3aXN0ICE9IHR3aXN0KSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmICh0d2lzdCAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCl0d2lzdCkuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfU1RBTVBFRF9fVFdJU1QsIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld1R3aXN0ICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld1R3aXN0KS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5UV0lTVF9TVEFNUEVEX19UV0lTVCwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRUd2lzdChuZXdUd2lzdCwgbXNncyk7CisJCQlpZiAobXNncyAhPSBudWxsKSBtc2dzLmRpc3BhdGNoKCk7CisJCX0KKwkJZWxzZSBpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRXSVNUX1NUQU1QRURfX1RXSVNULCBuZXdUd2lzdCwgbmV3VHdpc3QpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gZUludmVyc2VSZW1vdmUoSW50ZXJuYWxFT2JqZWN0IG90aGVyRW5kLCBpbnQgZmVhdHVyZUlELCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfU1RBTVBFRF9fSEVBREVSOgorCQkJCXJldHVybiBiYXNpY1NldEhlYWRlcihudWxsLCBtc2dzKTsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5UV0lTVF9TVEFNUEVEX19UV0lTVDoKKwkJCQlyZXR1cm4gYmFzaWNTZXRUd2lzdChudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRXSVNUX1NUQU1QRURfX0hFQURFUjoKKwkJCQlyZXR1cm4gZ2V0SGVhZGVyKCk7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfU1RBTVBFRF9fVFdJU1Q6CisJCQkJcmV0dXJuIGdldFR3aXN0KCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5UV0lTVF9TVEFNUEVEX19IRUFERVI6CisJCQkJc2V0SGVhZGVyKChIZWFkZXIpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5UV0lTVF9TVEFNUEVEX19UV0lTVDoKKwkJCQlzZXRUd2lzdCgoVHdpc3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfU1RBTVBFRF9fSEVBREVSOgorCQkJCXNldEhlYWRlcigoSGVhZGVyKW51bGwpOworCQkJCXJldHVybjsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5UV0lTVF9TVEFNUEVEX19UV0lTVDoKKwkJCQlzZXRUd2lzdCgoVHdpc3QpbnVsbCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfU1RBTVBFRF9fSEVBREVSOgorCQkJCXJldHVybiBoZWFkZXIgIT0gbnVsbDsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5UV0lTVF9TVEFNUEVEX19UV0lTVDoKKwkJCQlyZXR1cm4gdHdpc3QgIT0gbnVsbDsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCit9IC8vIFR3aXN0U3RhbXBlZEltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL1R3aXN0V2l0aENvdmFyaWFuY2VJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9Ud2lzdFdpdGhDb3ZhcmlhbmNlSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNmYWYwMDMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9Ud2lzdFdpdGhDb3ZhcmlhbmNlSW1wbC5qYXZhCkBAIC0wLDAgKzEsMjI4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb25DaGFpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5FRGF0YVR5cGVVbmlxdWVFTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Ud2lzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlR3aXN0V2l0aENvdmFyaWFuY2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Ud2lzdCBXaXRoIENvdmFyaWFuY2U8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Ud2lzdFdpdGhDb3ZhcmlhbmNlSW1wbCNnZXRUd2lzdCA8ZW0+VHdpc3Q8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5Ud2lzdFdpdGhDb3ZhcmlhbmNlSW1wbCNnZXRDb3ZhcmlhbmNlIDxlbT5Db3ZhcmlhbmNlPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgVHdpc3RXaXRoQ292YXJpYW5jZUltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgVHdpc3RXaXRoQ292YXJpYW5jZSB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0VHdpc3QoKSA8ZW0+VHdpc3Q8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFR3aXN0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgVHdpc3QgdHdpc3Q7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRDb3ZhcmlhbmNlKCkgPGVtPkNvdmFyaWFuY2U8L2VtPn0nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0Q292YXJpYW5jZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEVMaXN0PE9iamVjdD4gY292YXJpYW5jZTsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBUd2lzdFdpdGhDb3ZhcmlhbmNlSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuVFdJU1RfV0lUSF9DT1ZBUklBTkNFOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUd2lzdCBnZXRUd2lzdCgpIHsKKwkJcmV0dXJuIHR3aXN0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBiYXNpY1NldFR3aXN0KFR3aXN0IG5ld1R3aXN0LCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCVR3aXN0IG9sZFR3aXN0ID0gdHdpc3Q7CisJCXR3aXN0ID0gbmV3VHdpc3Q7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfV0lUSF9DT1ZBUklBTkNFX19UV0lTVCwgb2xkVHdpc3QsIG5ld1R3aXN0KTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRUd2lzdChUd2lzdCBuZXdUd2lzdCkgeworCQlpZiAobmV3VHdpc3QgIT0gdHdpc3QpIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKHR3aXN0ICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KXR3aXN0KS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5UV0lTVF9XSVRIX0NPVkFSSUFOQ0VfX1RXSVNULCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdUd2lzdCAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdUd2lzdCkuZUludmVyc2VBZGQodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfV0lUSF9DT1ZBUklBTkNFX19UV0lTVCwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRUd2lzdChuZXdUd2lzdCwgbXNncyk7CisJCQlpZiAobXNncyAhPSBudWxsKSBtc2dzLmRpc3BhdGNoKCk7CisJCX0KKwkJZWxzZSBpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRXSVNUX1dJVEhfQ09WQVJJQU5DRV9fVFdJU1QsIG5ld1R3aXN0LCBuZXdUd2lzdCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFTGlzdDxPYmplY3Q+IGdldENvdmFyaWFuY2UoKSB7CisJCWlmIChjb3ZhcmlhbmNlID09IG51bGwpIHsKKwkJCWNvdmFyaWFuY2UgPSBuZXcgRURhdGFUeXBlVW5pcXVlRUxpc3Q8T2JqZWN0PihPYmplY3QuY2xhc3MsIHRoaXMsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfV0lUSF9DT1ZBUklBTkNFX19DT1ZBUklBTkNFKTsKKwkJfQorCQlyZXR1cm4gY292YXJpYW5jZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gZUludmVyc2VSZW1vdmUoSW50ZXJuYWxFT2JqZWN0IG90aGVyRW5kLCBpbnQgZmVhdHVyZUlELCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfV0lUSF9DT1ZBUklBTkNFX19UV0lTVDoKKwkJCQlyZXR1cm4gYmFzaWNTZXRUd2lzdChudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRXSVNUX1dJVEhfQ09WQVJJQU5DRV9fVFdJU1Q6CisJCQkJcmV0dXJuIGdldFR3aXN0KCk7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfV0lUSF9DT1ZBUklBTkNFX19DT1ZBUklBTkNFOgorCQkJCXJldHVybiBnZXRDb3ZhcmlhbmNlKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQFN1cHByZXNzV2FybmluZ3MoInVuY2hlY2tlZCIpCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5UV0lTVF9XSVRIX0NPVkFSSUFOQ0VfX1RXSVNUOgorCQkJCXNldFR3aXN0KChUd2lzdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRXSVNUX1dJVEhfQ09WQVJJQU5DRV9fQ09WQVJJQU5DRToKKwkJCQlnZXRDb3ZhcmlhbmNlKCkuY2xlYXIoKTsKKwkJCQlnZXRDb3ZhcmlhbmNlKCkuYWRkQWxsKChDb2xsZWN0aW9uPD8gZXh0ZW5kcyBPYmplY3Q+KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlRXSVNUX1dJVEhfQ09WQVJJQU5DRV9fVFdJU1Q6CisJCQkJc2V0VHdpc3QoKFR3aXN0KW51bGwpOworCQkJCXJldHVybjsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5UV0lTVF9XSVRIX0NPVkFSSUFOQ0VfX0NPVkFSSUFOQ0U6CisJCQkJZ2V0Q292YXJpYW5jZSgpLmNsZWFyKCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfV0lUSF9DT1ZBUklBTkNFX19UV0lTVDoKKwkJCQlyZXR1cm4gdHdpc3QgIT0gbnVsbDsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5UV0lTVF9XSVRIX0NPVkFSSUFOQ0VfX0NPVkFSSUFOQ0U6CisJCQkJcmV0dXJuIGNvdmFyaWFuY2UgIT0gbnVsbCAmJiAhY292YXJpYW5jZS5pc0VtcHR5KCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CisJCWlmIChlSXNQcm94eSgpKSByZXR1cm4gc3VwZXIudG9TdHJpbmcoKTsKKworCQlTdHJpbmdCdWZmZXIgcmVzdWx0ID0gbmV3IFN0cmluZ0J1ZmZlcihzdXBlci50b1N0cmluZygpKTsKKwkJcmVzdWx0LmFwcGVuZCgiIChjb3ZhcmlhbmNlOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChjb3ZhcmlhbmNlKTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIFR3aXN0V2l0aENvdmFyaWFuY2VJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9WZWN0b3IzSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvVmVjdG9yM0ltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hYTQ1MmMzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvVmVjdG9yM0ltcGwuamF2YQpAQCAtMCwwICsxLDI2OCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlZlY3RvcjM7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5WZWN0b3IzPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuVmVjdG9yM0ltcGwjZ2V0WCA8ZW0+WDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLlZlY3RvcjNJbXBsI2dldFkgPGVtPlk8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5WZWN0b3IzSW1wbCNnZXRaIDxlbT5aPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgVmVjdG9yM0ltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgVmVjdG9yMyB7CisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFgoKSA8ZW0+WDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0WCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgWF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRYKCkgPGVtPlg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgeCA9IFhfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0WSgpIDxlbT5ZPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRZKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBZX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFkoKSA8ZW0+WTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0WSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCB5ID0gWV9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRaKCkgPGVtPlo8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFooKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFpfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0WigpIDxlbT5aPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRaKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHogPSBaX0VERUZBVUxUOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFZlY3RvcjNJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5WRUNUT1IzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0WCgpIHsKKwkJcmV0dXJuIHg7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0WChPYmplY3QgbmV3WCkgeworCQlPYmplY3Qgb2xkWCA9IHg7CisJCXggPSBuZXdYOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlZFQ1RPUjNfX1gsIG9sZFgsIHgpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFkoKSB7CisJCXJldHVybiB5OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFkoT2JqZWN0IG5ld1kpIHsKKwkJT2JqZWN0IG9sZFkgPSB5OworCQl5ID0gbmV3WTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5WRUNUT1IzX19ZLCBvbGRZLCB5KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRaKCkgeworCQlyZXR1cm4gejsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRaKE9iamVjdCBuZXdaKSB7CisJCU9iamVjdCBvbGRaID0gejsKKwkJeiA9IG5ld1o7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVkVDVE9SM19fWiwgb2xkWiwgeikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5WRUNUT1IzX19YOgorCQkJCXJldHVybiBnZXRYKCk7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVkVDVE9SM19fWToKKwkJCQlyZXR1cm4gZ2V0WSgpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlZFQ1RPUjNfX1o6CisJCQkJcmV0dXJuIGdldFooKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlZFQ1RPUjNfX1g6CisJCQkJc2V0WCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVkVDVE9SM19fWToKKwkJCQlzZXRZKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5WRUNUT1IzX19aOgorCQkJCXNldFooKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5WRUNUT1IzX19YOgorCQkJCXNldFgoWF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlZFQ1RPUjNfX1k6CisJCQkJc2V0WShZX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVkVDVE9SM19fWjoKKwkJCQlzZXRaKFpfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlZFQ1RPUjNfX1g6CisJCQkJcmV0dXJuIFhfRURFRkFVTFQgPT0gbnVsbCA/IHggIT0gbnVsbCA6ICFYX0VERUZBVUxULmVxdWFscyh4KTsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5WRUNUT1IzX19ZOgorCQkJCXJldHVybiBZX0VERUZBVUxUID09IG51bGwgPyB5ICE9IG51bGwgOiAhWV9FREVGQVVMVC5lcXVhbHMoeSk7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVkVDVE9SM19fWjoKKwkJCQlyZXR1cm4gWl9FREVGQVVMVCA9PSBudWxsID8geiAhPSBudWxsIDogIVpfRURFRkFVTFQuZXF1YWxzKHopOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAoeDogIik7CisJCXJlc3VsdC5hcHBlbmQoeCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgeTogIik7CisJCXJlc3VsdC5hcHBlbmQoeSk7CisJCXJlc3VsdC5hcHBlbmQoIiwgejogIik7CisJCXJlc3VsdC5hcHBlbmQoeik7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBWZWN0b3IzSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvVmVjdG9yM1N0YW1wZWRJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9WZWN0b3IzU3RhbXBlZEltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MDcxMDM3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvVmVjdG9yM1N0YW1wZWRJbXBsLmphdmEKQEAgLTAsMCArMSwyNDAgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb25DaGFpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlZlY3RvcjM7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5WZWN0b3IzU3RhbXBlZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5IZWFkZXI7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5WZWN0b3IzIFN0YW1wZWQ8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5WZWN0b3IzU3RhbXBlZEltcGwjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5WZWN0b3IzU3RhbXBlZEltcGwjZ2V0VmVjdG9yIDxlbT5WZWN0b3I8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBWZWN0b3IzU3RhbXBlZEltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgVmVjdG9yM1N0YW1wZWQgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEhlYWRlcigpIDxlbT5IZWFkZXI8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEhlYWRlcigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEhlYWRlciBoZWFkZXI7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRWZWN0b3IoKSA8ZW0+VmVjdG9yPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRWZWN0b3IoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBWZWN0b3IzIHZlY3RvcjsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBWZWN0b3IzU3RhbXBlZEltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLlZFQ1RPUjNfU1RBTVBFRDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgSGVhZGVyIGdldEhlYWRlcigpIHsKKwkJcmV0dXJuIGhlYWRlcjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRIZWFkZXIoSGVhZGVyIG5ld0hlYWRlciwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlIZWFkZXIgb2xkSGVhZGVyID0gaGVhZGVyOworCQloZWFkZXIgPSBuZXdIZWFkZXI7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVkVDVE9SM19TVEFNUEVEX19IRUFERVIsIG9sZEhlYWRlciwgbmV3SGVhZGVyKTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRIZWFkZXIoSGVhZGVyIG5ld0hlYWRlcikgeworCQlpZiAobmV3SGVhZGVyICE9IGhlYWRlcikgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAoaGVhZGVyICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KWhlYWRlcikuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVkVDVE9SM19TVEFNUEVEX19IRUFERVIsIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld0hlYWRlciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdIZWFkZXIpLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlZFQ1RPUjNfU1RBTVBFRF9fSEVBREVSLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldEhlYWRlcihuZXdIZWFkZXIsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5WRUNUT1IzX1NUQU1QRURfX0hFQURFUiwgbmV3SGVhZGVyLCBuZXdIZWFkZXIpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVmVjdG9yMyBnZXRWZWN0b3IoKSB7CisJCXJldHVybiB2ZWN0b3I7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0VmVjdG9yKFZlY3RvcjMgbmV3VmVjdG9yLCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCVZlY3RvcjMgb2xkVmVjdG9yID0gdmVjdG9yOworCQl2ZWN0b3IgPSBuZXdWZWN0b3I7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVkVDVE9SM19TVEFNUEVEX19WRUNUT1IsIG9sZFZlY3RvciwgbmV3VmVjdG9yKTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRWZWN0b3IoVmVjdG9yMyBuZXdWZWN0b3IpIHsKKwkJaWYgKG5ld1ZlY3RvciAhPSB2ZWN0b3IpIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKHZlY3RvciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCl2ZWN0b3IpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlZFQ1RPUjNfU1RBTVBFRF9fVkVDVE9SLCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdWZWN0b3IgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3VmVjdG9yKS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5WRUNUT1IzX1NUQU1QRURfX1ZFQ1RPUiwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRWZWN0b3IobmV3VmVjdG9yLCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVkVDVE9SM19TVEFNUEVEX19WRUNUT1IsIG5ld1ZlY3RvciwgbmV3VmVjdG9yKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGVJbnZlcnNlUmVtb3ZlKEludGVybmFsRU9iamVjdCBvdGhlckVuZCwgaW50IGZlYXR1cmVJRCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlZFQ1RPUjNfU1RBTVBFRF9fSEVBREVSOgorCQkJCXJldHVybiBiYXNpY1NldEhlYWRlcihudWxsLCBtc2dzKTsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5WRUNUT1IzX1NUQU1QRURfX1ZFQ1RPUjoKKwkJCQlyZXR1cm4gYmFzaWNTZXRWZWN0b3IobnVsbCwgbXNncyk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJbnZlcnNlUmVtb3ZlKG90aGVyRW5kLCBmZWF0dXJlSUQsIG1zZ3MpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5WRUNUT1IzX1NUQU1QRURfX0hFQURFUjoKKwkJCQlyZXR1cm4gZ2V0SGVhZGVyKCk7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVkVDVE9SM19TVEFNUEVEX19WRUNUT1I6CisJCQkJcmV0dXJuIGdldFZlY3RvcigpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVkVDVE9SM19TVEFNUEVEX19IRUFERVI6CisJCQkJc2V0SGVhZGVyKChIZWFkZXIpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5WRUNUT1IzX1NUQU1QRURfX1ZFQ1RPUjoKKwkJCQlzZXRWZWN0b3IoKFZlY3RvcjMpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVkVDVE9SM19TVEFNUEVEX19IRUFERVI6CisJCQkJc2V0SGVhZGVyKChIZWFkZXIpbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlZFQ1RPUjNfU1RBTVBFRF9fVkVDVE9SOgorCQkJCXNldFZlY3RvcigoVmVjdG9yMyludWxsKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5WRUNUT1IzX1NUQU1QRURfX0hFQURFUjoKKwkJCQlyZXR1cm4gaGVhZGVyICE9IG51bGw7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVkVDVE9SM19TVEFNUEVEX19WRUNUT1I6CisJCQkJcmV0dXJuIHZlY3RvciAhPSBudWxsOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKK30gLy8gVmVjdG9yM1N0YW1wZWRJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9XcmVuY2hJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9XcmVuY2hJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzIzN2MwOAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy9pbXBsL1dyZW5jaEltcGwuamF2YQpAQCAtMCwwICsxLDIzOSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbkNoYWluOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVmVjdG9yMzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLldyZW5jaDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPldyZW5jaDwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLldyZW5jaEltcGwjZ2V0Rm9yY2UgPGVtPkZvcmNlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuV3JlbmNoSW1wbCNnZXRUb3JxdWUgPGVtPlRvcnF1ZTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIFdyZW5jaEltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgV3JlbmNoIHsKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRGb3JjZSgpIDxlbT5Gb3JjZTwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0Rm9yY2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBWZWN0b3IzIGZvcmNlOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0VG9ycXVlKCkgPGVtPlRvcnF1ZTwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VG9ycXVlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgVmVjdG9yMyB0b3JxdWU7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgV3JlbmNoSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuV1JFTkNIOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBWZWN0b3IzIGdldEZvcmNlKCkgeworCQlyZXR1cm4gZm9yY2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0Rm9yY2UoVmVjdG9yMyBuZXdGb3JjZSwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlWZWN0b3IzIG9sZEZvcmNlID0gZm9yY2U7CisJCWZvcmNlID0gbmV3Rm9yY2U7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuV1JFTkNIX19GT1JDRSwgb2xkRm9yY2UsIG5ld0ZvcmNlKTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRGb3JjZShWZWN0b3IzIG5ld0ZvcmNlKSB7CisJCWlmIChuZXdGb3JjZSAhPSBmb3JjZSkgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAoZm9yY2UgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpZm9yY2UpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLldSRU5DSF9fRk9SQ0UsIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld0ZvcmNlICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld0ZvcmNlKS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5XUkVOQ0hfX0ZPUkNFLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldEZvcmNlKG5ld0ZvcmNlLCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuV1JFTkNIX19GT1JDRSwgbmV3Rm9yY2UsIG5ld0ZvcmNlKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFZlY3RvcjMgZ2V0VG9ycXVlKCkgeworCQlyZXR1cm4gdG9ycXVlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBiYXNpY1NldFRvcnF1ZShWZWN0b3IzIG5ld1RvcnF1ZSwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlWZWN0b3IzIG9sZFRvcnF1ZSA9IHRvcnF1ZTsKKwkJdG9ycXVlID0gbmV3VG9ycXVlOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpIHsKKwkJCUVOb3RpZmljYXRpb25JbXBsIG5vdGlmaWNhdGlvbiA9IG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLldSRU5DSF9fVE9SUVVFLCBvbGRUb3JxdWUsIG5ld1RvcnF1ZSk7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0VG9ycXVlKFZlY3RvcjMgbmV3VG9ycXVlKSB7CisJCWlmIChuZXdUb3JxdWUgIT0gdG9ycXVlKSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmICh0b3JxdWUgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpdG9ycXVlKS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5XUkVOQ0hfX1RPUlFVRSwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3VG9ycXVlICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld1RvcnF1ZSkuZUludmVyc2VBZGQodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuV1JFTkNIX19UT1JRVUUsIG51bGwsIG1zZ3MpOworCQkJbXNncyA9IGJhc2ljU2V0VG9ycXVlKG5ld1RvcnF1ZSwgbXNncyk7CisJCQlpZiAobXNncyAhPSBudWxsKSBtc2dzLmRpc3BhdGNoKCk7CisJCX0KKwkJZWxzZSBpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLldSRU5DSF9fVE9SUVVFLCBuZXdUb3JxdWUsIG5ld1RvcnF1ZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBlSW52ZXJzZVJlbW92ZShJbnRlcm5hbEVPYmplY3Qgb3RoZXJFbmQsIGludCBmZWF0dXJlSUQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5XUkVOQ0hfX0ZPUkNFOgorCQkJCXJldHVybiBiYXNpY1NldEZvcmNlKG51bGwsIG1zZ3MpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLldSRU5DSF9fVE9SUVVFOgorCQkJCXJldHVybiBiYXNpY1NldFRvcnF1ZShudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLldSRU5DSF9fRk9SQ0U6CisJCQkJcmV0dXJuIGdldEZvcmNlKCk7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuV1JFTkNIX19UT1JRVUU6CisJCQkJcmV0dXJuIGdldFRvcnF1ZSgpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuV1JFTkNIX19GT1JDRToKKwkJCQlzZXRGb3JjZSgoVmVjdG9yMyluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLldSRU5DSF9fVE9SUVVFOgorCQkJCXNldFRvcnF1ZSgoVmVjdG9yMyluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5XUkVOQ0hfX0ZPUkNFOgorCQkJCXNldEZvcmNlKChWZWN0b3IzKW51bGwpOworCQkJCXJldHVybjsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5XUkVOQ0hfX1RPUlFVRToKKwkJCQlzZXRUb3JxdWUoKFZlY3RvcjMpbnVsbCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuV1JFTkNIX19GT1JDRToKKwkJCQlyZXR1cm4gZm9yY2UgIT0gbnVsbDsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5XUkVOQ0hfX1RPUlFVRToKKwkJCQlyZXR1cm4gdG9ycXVlICE9IG51bGw7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworfSAvLyBXcmVuY2hJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvaW1wbC9XcmVuY2hTdGFtcGVkSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvV3JlbmNoU3RhbXBlZEltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZmRmMDUxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL2ltcGwvV3JlbmNoU3RhbXBlZEltcGwuamF2YQpAQCAtMCwwICsxLDI0MCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbkNoYWluOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuV3JlbmNoOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuV3JlbmNoU3RhbXBlZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5IZWFkZXI7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5XcmVuY2ggU3RhbXBlZDwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLldyZW5jaFN0YW1wZWRJbXBsI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuV3JlbmNoU3RhbXBlZEltcGwjZ2V0V3JlbmNoIDxlbT5XcmVuY2g8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBXcmVuY2hTdGFtcGVkSW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBXcmVuY2hTdGFtcGVkIHsKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRIZWFkZXIoKSA8ZW0+SGVhZGVyPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRIZWFkZXIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBIZWFkZXIgaGVhZGVyOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0V3JlbmNoKCkgPGVtPldyZW5jaDwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0V3JlbmNoKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgV3JlbmNoIHdyZW5jaDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBXcmVuY2hTdGFtcGVkSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuV1JFTkNIX1NUQU1QRUQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEhlYWRlciBnZXRIZWFkZXIoKSB7CisJCXJldHVybiBoZWFkZXI7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0SGVhZGVyKEhlYWRlciBuZXdIZWFkZXIsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJSGVhZGVyIG9sZEhlYWRlciA9IGhlYWRlcjsKKwkJaGVhZGVyID0gbmV3SGVhZGVyOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpIHsKKwkJCUVOb3RpZmljYXRpb25JbXBsIG5vdGlmaWNhdGlvbiA9IG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLldSRU5DSF9TVEFNUEVEX19IRUFERVIsIG9sZEhlYWRlciwgbmV3SGVhZGVyKTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRIZWFkZXIoSGVhZGVyIG5ld0hlYWRlcikgeworCQlpZiAobmV3SGVhZGVyICE9IGhlYWRlcikgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAoaGVhZGVyICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KWhlYWRlcikuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuV1JFTkNIX1NUQU1QRURfX0hFQURFUiwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3SGVhZGVyICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld0hlYWRlcikuZUludmVyc2VBZGQodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuV1JFTkNIX1NUQU1QRURfX0hFQURFUiwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRIZWFkZXIobmV3SGVhZGVyLCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuV1JFTkNIX1NUQU1QRURfX0hFQURFUiwgbmV3SGVhZGVyLCBuZXdIZWFkZXIpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgV3JlbmNoIGdldFdyZW5jaCgpIHsKKwkJcmV0dXJuIHdyZW5jaDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRXcmVuY2goV3JlbmNoIG5ld1dyZW5jaCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlXcmVuY2ggb2xkV3JlbmNoID0gd3JlbmNoOworCQl3cmVuY2ggPSBuZXdXcmVuY2g7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuV1JFTkNIX1NUQU1QRURfX1dSRU5DSCwgb2xkV3JlbmNoLCBuZXdXcmVuY2gpOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFdyZW5jaChXcmVuY2ggbmV3V3JlbmNoKSB7CisJCWlmIChuZXdXcmVuY2ggIT0gd3JlbmNoKSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmICh3cmVuY2ggIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3Qpd3JlbmNoKS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5XUkVOQ0hfU1RBTVBFRF9fV1JFTkNILCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdXcmVuY2ggIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3V3JlbmNoKS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5XUkVOQ0hfU1RBTVBFRF9fV1JFTkNILCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldFdyZW5jaChuZXdXcmVuY2gsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5XUkVOQ0hfU1RBTVBFRF9fV1JFTkNILCBuZXdXcmVuY2gsIG5ld1dyZW5jaCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBlSW52ZXJzZVJlbW92ZShJbnRlcm5hbEVPYmplY3Qgb3RoZXJFbmQsIGludCBmZWF0dXJlSUQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5XUkVOQ0hfU1RBTVBFRF9fSEVBREVSOgorCQkJCXJldHVybiBiYXNpY1NldEhlYWRlcihudWxsLCBtc2dzKTsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5XUkVOQ0hfU1RBTVBFRF9fV1JFTkNIOgorCQkJCXJldHVybiBiYXNpY1NldFdyZW5jaChudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLldSRU5DSF9TVEFNUEVEX19IRUFERVI6CisJCQkJcmV0dXJuIGdldEhlYWRlcigpOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLldSRU5DSF9TVEFNUEVEX19XUkVOQ0g6CisJCQkJcmV0dXJuIGdldFdyZW5jaCgpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuV1JFTkNIX1NUQU1QRURfX0hFQURFUjoKKwkJCQlzZXRIZWFkZXIoKEhlYWRlciluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLldSRU5DSF9TVEFNUEVEX19XUkVOQ0g6CisJCQkJc2V0V3JlbmNoKChXcmVuY2gpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuV1JFTkNIX1NUQU1QRURfX0hFQURFUjoKKwkJCQlzZXRIZWFkZXIoKEhlYWRlciludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuV1JFTkNIX1NUQU1QRURfX1dSRU5DSDoKKwkJCQlzZXRXcmVuY2goKFdyZW5jaCludWxsKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5XUkVOQ0hfU1RBTVBFRF9fSEVBREVSOgorCQkJCXJldHVybiBoZWFkZXIgIT0gbnVsbDsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5XUkVOQ0hfU1RBTVBFRF9fV1JFTkNIOgorCQkJCXJldHVybiB3cmVuY2ggIT0gbnVsbDsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCit9IC8vIFdyZW5jaFN0YW1wZWRJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9nZW9tZXRyeV9kYXRhdHlwZXMvdXRpbC9HZW9tZXRyeV9kYXRhdHlwZXNBZGFwdGVyRmFjdG9yeS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL3V0aWwvR2VvbWV0cnlfZGF0YXR5cGVzQWRhcHRlckZhY3RvcnkuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MmM4ZDA1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL3V0aWwvR2VvbWV0cnlfZGF0YXR5cGVzQWRhcHRlckZhY3RvcnkuamF2YQpAQCAtMCwwICsxLDQ5OCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy51dGlsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkFkYXB0ZXJGYWN0b3J5SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50MzI7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludFN0YW1wZWQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2x5Z29uOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9seWdvblN0YW1wZWQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZTJEOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZUFycmF5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZVN0YW1wZWQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlV2l0aENvdmFyaWFuY2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUXVhdGVybmlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlF1YXRlcm5pb25TdGFtcGVkOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHJhbnNmb3JtOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHdpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Ud2lzdFN0YW1wZWQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Ud2lzdFdpdGhDb3ZhcmlhbmNlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVmVjdG9yMzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlZlY3RvcjNTdGFtcGVkOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuV3JlbmNoOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuV3JlbmNoU3RhbXBlZDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogVGhlIDxiPkFkYXB0ZXIgRmFjdG9yeTwvYj4gZm9yIHRoZSBtb2RlbC4KKyAqIEl0IHByb3ZpZGVzIGFuIGFkYXB0ZXIgPGNvZGU+Y3JlYXRlWFhYPC9jb2RlPiBtZXRob2QgZm9yIGVhY2ggY2xhc3Mgb2YgdGhlIG1vZGVsLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZQorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgR2VvbWV0cnlfZGF0YXR5cGVzQWRhcHRlckZhY3RvcnkgZXh0ZW5kcyBBZGFwdGVyRmFjdG9yeUltcGwgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgbW9kZWwgcGFja2FnZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UgbW9kZWxQYWNrYWdlOworCisJLyoqCisJICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgYWRhcHRlciBmYWN0b3J5LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBHZW9tZXRyeV9kYXRhdHlwZXNBZGFwdGVyRmFjdG9yeSgpIHsKKwkJaWYgKG1vZGVsUGFja2FnZSA9PSBudWxsKSB7CisJCQltb2RlbFBhY2thZ2UgPSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRTsKKwkJfQorCX0KKworCS8qKgorCSAqIFJldHVybnMgd2hldGhlciB0aGlzIGZhY3RvcnkgaXMgYXBwbGljYWJsZSBmb3IgdGhlIHR5cGUgb2YgdGhlIG9iamVjdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyA8Y29kZT50cnVlPC9jb2RlPiBpZiB0aGUgb2JqZWN0IGlzIGVpdGhlciB0aGUgbW9kZWwncyBwYWNrYWdlIG9yIGlzIGFuIGluc3RhbmNlIG9iamVjdCBvZiB0aGUgbW9kZWwuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB3aGV0aGVyIHRoaXMgZmFjdG9yeSBpcyBhcHBsaWNhYmxlIGZvciB0aGUgdHlwZSBvZiB0aGUgb2JqZWN0LgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBpc0ZhY3RvcnlGb3JUeXBlKE9iamVjdCBvYmplY3QpIHsKKwkJaWYgKG9iamVjdCA9PSBtb2RlbFBhY2thZ2UpIHsKKwkJCXJldHVybiB0cnVlOworCQl9CisJCWlmIChvYmplY3QgaW5zdGFuY2VvZiBFT2JqZWN0KSB7CisJCQlyZXR1cm4gKChFT2JqZWN0KW9iamVjdCkuZUNsYXNzKCkuZ2V0RVBhY2thZ2UoKSA9PSBtb2RlbFBhY2thZ2U7CisJCX0KKwkJcmV0dXJuIGZhbHNlOworCX0KKworCS8qKgorCSAqIFRoZSBzd2l0Y2ggdGhhdCBkZWxlZ2F0ZXMgdG8gdGhlIDxjb2RlPmNyZWF0ZVhYWDwvY29kZT4gbWV0aG9kcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgR2VvbWV0cnlfZGF0YXR5cGVzU3dpdGNoPEFkYXB0ZXI+IG1vZGVsU3dpdGNoID0KKwkJCW5ldyBHZW9tZXRyeV9kYXRhdHlwZXNTd2l0Y2g8QWRhcHRlcj4oKSB7CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VQb2ludChQb2ludCBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlUG9pbnRBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VQb2ludDMyKFBvaW50MzIgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZVBvaW50MzJBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VQb2ludFN0YW1wZWQoUG9pbnRTdGFtcGVkIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVQb2ludFN0YW1wZWRBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VQb2x5Z29uKFBvbHlnb24gb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZVBvbHlnb25BZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VQb2x5Z29uU3RhbXBlZChQb2x5Z29uU3RhbXBlZCBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlUG9seWdvblN0YW1wZWRBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VWZWN0b3IzKFZlY3RvcjMgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZVZlY3RvcjNBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VWZWN0b3IzU3RhbXBlZChWZWN0b3IzU3RhbXBlZCBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlVmVjdG9yM1N0YW1wZWRBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VRdWF0ZXJuaW9uKFF1YXRlcm5pb24gb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZVF1YXRlcm5pb25BZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VQb3NlKFBvc2Ugb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZVBvc2VBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VQb3NlU3RhbXBlZChQb3NlU3RhbXBlZCBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlUG9zZVN0YW1wZWRBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VUd2lzdFdpdGhDb3ZhcmlhbmNlKFR3aXN0V2l0aENvdmFyaWFuY2Ugb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZVR3aXN0V2l0aENvdmFyaWFuY2VBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VUd2lzdChUd2lzdCBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlVHdpc3RBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VUd2lzdFN0YW1wZWQoVHdpc3RTdGFtcGVkIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVUd2lzdFN0YW1wZWRBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VQb3NlV2l0aENvdmFyaWFuY2UoUG9zZVdpdGhDb3ZhcmlhbmNlIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVQb3NlV2l0aENvdmFyaWFuY2VBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VQb3NlMkQoUG9zZTJEIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVQb3NlMkRBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkKFBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWQgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZVBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWRBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VQb3NlQXJyYXkoUG9zZUFycmF5IG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVQb3NlQXJyYXlBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VRdWF0ZXJuaW9uU3RhbXBlZChRdWF0ZXJuaW9uU3RhbXBlZCBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlUXVhdGVybmlvblN0YW1wZWRBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VUcmFuc2Zvcm0oVHJhbnNmb3JtIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVUcmFuc2Zvcm1BZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VXcmVuY2hTdGFtcGVkKFdyZW5jaFN0YW1wZWQgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZVdyZW5jaFN0YW1wZWRBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VXcmVuY2goV3JlbmNoIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVXcmVuY2hBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGRlZmF1bHRDYXNlKEVPYmplY3Qgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUVPYmplY3RBZGFwdGVyKCk7CisJCQl9CisJCX07CisKKwkvKioKKwkgKiBDcmVhdGVzIGFuIGFkYXB0ZXIgZm9yIHRoZSA8Y29kZT50YXJnZXQ8L2NvZGU+LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHRhcmdldCB0aGUgb2JqZWN0IHRvIGFkYXB0LgorCSAqIEByZXR1cm4gdGhlIGFkYXB0ZXIgZm9yIHRoZSA8Y29kZT50YXJnZXQ8L2NvZGU+LgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVBZGFwdGVyKE5vdGlmaWVyIHRhcmdldCkgeworCQlyZXR1cm4gbW9kZWxTd2l0Y2guZG9Td2l0Y2goKEVPYmplY3QpdGFyZ2V0KTsKKwl9CisKKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludCA8ZW0+UG9pbnQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVQb2ludEFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludDMyIDxlbT5Qb2ludDMyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9pbnQzMgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVQb2ludDMyQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50U3RhbXBlZCA8ZW0+UG9pbnQgU3RhbXBlZDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50U3RhbXBlZAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVQb2ludFN0YW1wZWRBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9seWdvbiA8ZW0+UG9seWdvbjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvbHlnb24KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlUG9seWdvbkFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2x5Z29uU3RhbXBlZCA8ZW0+UG9seWdvbiBTdGFtcGVkPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9seWdvblN0YW1wZWQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlUG9seWdvblN0YW1wZWRBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVmVjdG9yMyA8ZW0+VmVjdG9yMzwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlZlY3RvcjMKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlVmVjdG9yM0FkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5WZWN0b3IzU3RhbXBlZCA8ZW0+VmVjdG9yMyBTdGFtcGVkPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVmVjdG9yM1N0YW1wZWQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlVmVjdG9yM1N0YW1wZWRBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUXVhdGVybmlvbiA8ZW0+UXVhdGVybmlvbjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlF1YXRlcm5pb24KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlUXVhdGVybmlvbkFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlIDxlbT5Qb3NlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVQb3NlQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2VTdGFtcGVkIDxlbT5Qb3NlIFN0YW1wZWQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlU3RhbXBlZAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVQb3NlU3RhbXBlZEFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Ud2lzdFdpdGhDb3ZhcmlhbmNlIDxlbT5Ud2lzdCBXaXRoIENvdmFyaWFuY2U8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Ud2lzdFdpdGhDb3ZhcmlhbmNlCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVR3aXN0V2l0aENvdmFyaWFuY2VBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHdpc3QgPGVtPlR3aXN0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHdpc3QKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlVHdpc3RBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHdpc3RTdGFtcGVkIDxlbT5Ud2lzdCBTdGFtcGVkPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHdpc3RTdGFtcGVkCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVR3aXN0U3RhbXBlZEFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlV2l0aENvdmFyaWFuY2UgPGVtPlBvc2UgV2l0aCBDb3ZhcmlhbmNlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZVdpdGhDb3ZhcmlhbmNlCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVBvc2VXaXRoQ292YXJpYW5jZUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlMkQgPGVtPlBvc2UyIEQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlMkQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlUG9zZTJEQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWQgPGVtPlBvc2UgV2l0aCBDb3ZhcmlhbmNlIFN0YW1wZWQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWRBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZUFycmF5IDxlbT5Qb3NlIEFycmF5PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZUFycmF5CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVBvc2VBcnJheUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5RdWF0ZXJuaW9uU3RhbXBlZCA8ZW0+UXVhdGVybmlvbiBTdGFtcGVkPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUXVhdGVybmlvblN0YW1wZWQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlUXVhdGVybmlvblN0YW1wZWRBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHJhbnNmb3JtIDxlbT5UcmFuc2Zvcm08L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5UcmFuc2Zvcm0KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlVHJhbnNmb3JtQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLldyZW5jaFN0YW1wZWQgPGVtPldyZW5jaCBTdGFtcGVkPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuV3JlbmNoU3RhbXBlZAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVXcmVuY2hTdGFtcGVkQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLldyZW5jaCA8ZW0+V3JlbmNoPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuV3JlbmNoCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVdyZW5jaEFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgdGhlIGRlZmF1bHQgY2FzZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUVPYmplY3RBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKK30gLy8gR2VvbWV0cnlfZGF0YXR5cGVzQWRhcHRlckZhY3RvcnkKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy91dGlsL0dlb21ldHJ5X2RhdGF0eXBlc1N3aXRjaC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvZ2VvbWV0cnlfZGF0YXR5cGVzL3V0aWwvR2VvbWV0cnlfZGF0YXR5cGVzU3dpdGNoLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmE0ZjA1ZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL2dlb21ldHJ5X2RhdGF0eXBlcy91dGlsL0dlb21ldHJ5X2RhdGF0eXBlc1N3aXRjaC5qYXZhCkBAIC0wLDAgKzEsNTQ4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLnV0aWw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuU3dpdGNoOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9pbnQzMjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50U3RhbXBlZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvbHlnb247CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2x5Z29uU3RhbXBlZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlMkQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlQXJyYXk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlU3RhbXBlZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2VXaXRoQ292YXJpYW5jZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5RdWF0ZXJuaW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUXVhdGVybmlvblN0YW1wZWQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5UcmFuc2Zvcm07CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Ud2lzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlR3aXN0U3RhbXBlZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlR3aXN0V2l0aENvdmFyaWFuY2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5WZWN0b3IzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVmVjdG9yM1N0YW1wZWQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5XcmVuY2g7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5XcmVuY2hTdGFtcGVkOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBUaGUgPGI+U3dpdGNoPC9iPiBmb3IgdGhlIG1vZGVsJ3MgaW5oZXJpdGFuY2UgaGllcmFyY2h5LgorICogSXQgc3VwcG9ydHMgdGhlIGNhbGwge0BsaW5rICNkb1N3aXRjaChFT2JqZWN0KSBkb1N3aXRjaChvYmplY3QpfSB0byBpbnZva2UgdGhlIDxjb2RlPmNhc2VYWFg8L2NvZGU+IG1ldGhvZCBmb3IgZWFjaCBjbGFzcyBvZiB0aGUgbW9kZWwsCisgKiBzdGFydGluZyB3aXRoIHRoZSBhY3R1YWwgY2xhc3Mgb2YgdGhlIG9iamVjdAorICogYW5kIHByb2NlZWRpbmcgdXAgdGhlIGluaGVyaXRhbmNlIGhpZXJhcmNoeQorICogdW50aWwgYSBub24tbnVsbCByZXN1bHQgaXMgcmV0dXJuZWQsCisgKiB3aGljaCBpcyB0aGUgcmVzdWx0IG9mIHRoZSBzd2l0Y2guCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBHZW9tZXRyeV9kYXRhdHlwZXNTd2l0Y2g8VD4gZXh0ZW5kcyBTd2l0Y2g8VD4geworCS8qKgorCSAqIFRoZSBjYWNoZWQgbW9kZWwgcGFja2FnZQorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSBtb2RlbFBhY2thZ2U7CisKKwkvKioKKwkgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSBzd2l0Y2guCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEdlb21ldHJ5X2RhdGF0eXBlc1N3aXRjaCgpIHsKKwkJaWYgKG1vZGVsUGFja2FnZSA9PSBudWxsKSB7CisJCQltb2RlbFBhY2thZ2UgPSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRTsKKwkJfQorCX0KKworCS8qKgorCSAqIENoZWNrcyB3aGV0aGVyIHRoaXMgaXMgYSBzd2l0Y2ggZm9yIHRoZSBnaXZlbiBwYWNrYWdlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtZXRlciBlUGFja2FnZSB0aGUgcGFja2FnZSBpbiBxdWVzdGlvbi4KKwkgKiBAcmV0dXJuIHdoZXRoZXIgdGhpcyBpcyBhIHN3aXRjaCBmb3IgdGhlIGdpdmVuIHBhY2thZ2UuCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBib29sZWFuIGlzU3dpdGNoRm9yKEVQYWNrYWdlIGVQYWNrYWdlKSB7CisJCXJldHVybiBlUGFja2FnZSA9PSBtb2RlbFBhY2thZ2U7CisJfQorCisJLyoqCisJICogQ2FsbHMgPGNvZGU+Y2FzZVhYWDwvY29kZT4gZm9yIGVhY2ggY2xhc3Mgb2YgdGhlIG1vZGVsIHVudGlsIG9uZSByZXR1cm5zIGEgbm9uIG51bGwgcmVzdWx0OyBpdCB5aWVsZHMgdGhhdCByZXN1bHQuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBmaXJzdCBub24tbnVsbCByZXN1bHQgcmV0dXJuZWQgYnkgYSA8Y29kZT5jYXNlWFhYPC9jb2RlPiBjYWxsLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgVCBkb1N3aXRjaChpbnQgY2xhc3NpZmllcklELCBFT2JqZWN0IHRoZUVPYmplY3QpIHsKKwkJc3dpdGNoIChjbGFzc2lmaWVySUQpIHsKKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0lOVDogeworCQkJCVBvaW50IHBvaW50ID0gKFBvaW50KXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlUG9pbnQocG9pbnQpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0lOVDMyOiB7CisJCQkJUG9pbnQzMiBwb2ludDMyID0gKFBvaW50MzIpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VQb2ludDMyKHBvaW50MzIpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9TVEFNUEVEOiB7CisJCQkJUG9pbnRTdGFtcGVkIHBvaW50U3RhbXBlZCA9IChQb2ludFN0YW1wZWQpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VQb2ludFN0YW1wZWQocG9pbnRTdGFtcGVkKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9MWUdPTjogeworCQkJCVBvbHlnb24gcG9seWdvbiA9IChQb2x5Z29uKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlUG9seWdvbihwb2x5Z29uKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9MWUdPTl9TVEFNUEVEOiB7CisJCQkJUG9seWdvblN0YW1wZWQgcG9seWdvblN0YW1wZWQgPSAoUG9seWdvblN0YW1wZWQpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VQb2x5Z29uU3RhbXBlZChwb2x5Z29uU3RhbXBlZCk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlZFQ1RPUjM6IHsKKwkJCQlWZWN0b3IzIHZlY3RvcjMgPSAoVmVjdG9yMyl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZVZlY3RvcjModmVjdG9yMyk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlZFQ1RPUjNfU1RBTVBFRDogeworCQkJCVZlY3RvcjNTdGFtcGVkIHZlY3RvcjNTdGFtcGVkID0gKFZlY3RvcjNTdGFtcGVkKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlVmVjdG9yM1N0YW1wZWQodmVjdG9yM1N0YW1wZWQpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5RVUFURVJOSU9OOiB7CisJCQkJUXVhdGVybmlvbiBxdWF0ZXJuaW9uID0gKFF1YXRlcm5pb24pdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VRdWF0ZXJuaW9uKHF1YXRlcm5pb24pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFOiB7CisJCQkJUG9zZSBwb3NlID0gKFBvc2UpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VQb3NlKHBvc2UpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFX1NUQU1QRUQ6IHsKKwkJCQlQb3NlU3RhbXBlZCBwb3NlU3RhbXBlZCA9IChQb3NlU3RhbXBlZCl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZVBvc2VTdGFtcGVkKHBvc2VTdGFtcGVkKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuVFdJU1RfV0lUSF9DT1ZBUklBTkNFOiB7CisJCQkJVHdpc3RXaXRoQ292YXJpYW5jZSB0d2lzdFdpdGhDb3ZhcmlhbmNlID0gKFR3aXN0V2l0aENvdmFyaWFuY2UpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VUd2lzdFdpdGhDb3ZhcmlhbmNlKHR3aXN0V2l0aENvdmFyaWFuY2UpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5UV0lTVDogeworCQkJCVR3aXN0IHR3aXN0ID0gKFR3aXN0KXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlVHdpc3QodHdpc3QpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5UV0lTVF9TVEFNUEVEOiB7CisJCQkJVHdpc3RTdGFtcGVkIHR3aXN0U3RhbXBlZCA9IChUd2lzdFN0YW1wZWQpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VUd2lzdFN0YW1wZWQodHdpc3RTdGFtcGVkKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9XSVRIX0NPVkFSSUFOQ0U6IHsKKwkJCQlQb3NlV2l0aENvdmFyaWFuY2UgcG9zZVdpdGhDb3ZhcmlhbmNlID0gKFBvc2VXaXRoQ292YXJpYW5jZSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZVBvc2VXaXRoQ292YXJpYW5jZShwb3NlV2l0aENvdmFyaWFuY2UpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5QT1NFMl9EOiB7CisJCQkJUG9zZTJEIHBvc2UyRCA9IChQb3NlMkQpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VQb3NlMkQocG9zZTJEKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9XSVRIX0NPVkFSSUFOQ0VfU1RBTVBFRDogeworCQkJCVBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWQgcG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZCA9IChQb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlUG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZChwb3NlV2l0aENvdmFyaWFuY2VTdGFtcGVkKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuUE9TRV9BUlJBWTogeworCQkJCVBvc2VBcnJheSBwb3NlQXJyYXkgPSAoUG9zZUFycmF5KXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlUG9zZUFycmF5KHBvc2VBcnJheSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLlFVQVRFUk5JT05fU1RBTVBFRDogeworCQkJCVF1YXRlcm5pb25TdGFtcGVkIHF1YXRlcm5pb25TdGFtcGVkID0gKFF1YXRlcm5pb25TdGFtcGVkKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlUXVhdGVybmlvblN0YW1wZWQocXVhdGVybmlvblN0YW1wZWQpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5UUkFOU0ZPUk06IHsKKwkJCQlUcmFuc2Zvcm0gdHJhbnNmb3JtID0gKFRyYW5zZm9ybSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZVRyYW5zZm9ybSh0cmFuc2Zvcm0pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5XUkVOQ0hfU1RBTVBFRDogeworCQkJCVdyZW5jaFN0YW1wZWQgd3JlbmNoU3RhbXBlZCA9IChXcmVuY2hTdGFtcGVkKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlV3JlbmNoU3RhbXBlZCh3cmVuY2hTdGFtcGVkKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuV1JFTkNIOiB7CisJCQkJV3JlbmNoIHdyZW5jaCA9IChXcmVuY2gpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VXcmVuY2god3JlbmNoKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQlkZWZhdWx0OiByZXR1cm4gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCX0KKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Qb2ludDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlBvaW50PC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlUG9pbnQoUG9pbnQgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlBvaW50MzI8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Qb2ludDMyPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlUG9pbnQzMihQb2ludDMyIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Qb2ludCBTdGFtcGVkPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UG9pbnQgU3RhbXBlZDwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZVBvaW50U3RhbXBlZChQb2ludFN0YW1wZWQgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlBvbHlnb248L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Qb2x5Z29uPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlUG9seWdvbihQb2x5Z29uIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Qb2x5Z29uIFN0YW1wZWQ8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Qb2x5Z29uIFN0YW1wZWQ8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VQb2x5Z29uU3RhbXBlZChQb2x5Z29uU3RhbXBlZCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+VmVjdG9yMzwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlZlY3RvcjM8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VWZWN0b3IzKFZlY3RvcjMgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlZlY3RvcjMgU3RhbXBlZDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlZlY3RvcjMgU3RhbXBlZDwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZVZlY3RvcjNTdGFtcGVkKFZlY3RvcjNTdGFtcGVkIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5RdWF0ZXJuaW9uPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UXVhdGVybmlvbjwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZVF1YXRlcm5pb24oUXVhdGVybmlvbiBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UG9zZTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlBvc2U8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VQb3NlKFBvc2Ugb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlBvc2UgU3RhbXBlZDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlBvc2UgU3RhbXBlZDwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZVBvc2VTdGFtcGVkKFBvc2VTdGFtcGVkIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Ud2lzdCBXaXRoIENvdmFyaWFuY2U8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Ud2lzdCBXaXRoIENvdmFyaWFuY2U8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VUd2lzdFdpdGhDb3ZhcmlhbmNlKFR3aXN0V2l0aENvdmFyaWFuY2Ugb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlR3aXN0PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+VHdpc3Q8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VUd2lzdChUd2lzdCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+VHdpc3QgU3RhbXBlZDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlR3aXN0IFN0YW1wZWQ8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VUd2lzdFN0YW1wZWQoVHdpc3RTdGFtcGVkIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Qb3NlIFdpdGggQ292YXJpYW5jZTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlBvc2UgV2l0aCBDb3ZhcmlhbmNlPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlUG9zZVdpdGhDb3ZhcmlhbmNlKFBvc2VXaXRoQ292YXJpYW5jZSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UG9zZTIgRDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlBvc2UyIEQ8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VQb3NlMkQoUG9zZTJEIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Qb3NlIFdpdGggQ292YXJpYW5jZSBTdGFtcGVkPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UG9zZSBXaXRoIENvdmFyaWFuY2UgU3RhbXBlZDwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZVBvc2VXaXRoQ292YXJpYW5jZVN0YW1wZWQoUG9zZVdpdGhDb3ZhcmlhbmNlU3RhbXBlZCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UG9zZSBBcnJheTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlBvc2UgQXJyYXk8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VQb3NlQXJyYXkoUG9zZUFycmF5IG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5RdWF0ZXJuaW9uIFN0YW1wZWQ8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5RdWF0ZXJuaW9uIFN0YW1wZWQ8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VRdWF0ZXJuaW9uU3RhbXBlZChRdWF0ZXJuaW9uU3RhbXBlZCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+VHJhbnNmb3JtPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+VHJhbnNmb3JtPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlVHJhbnNmb3JtKFRyYW5zZm9ybSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+V3JlbmNoIFN0YW1wZWQ8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5XcmVuY2ggU3RhbXBlZDwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZVdyZW5jaFN0YW1wZWQoV3JlbmNoU3RhbXBlZCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+V3JlbmNoPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+V3JlbmNoPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlV3JlbmNoKFdyZW5jaCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+RU9iamVjdDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLCBidXQgdGhpcyBpcyB0aGUgbGFzdCBjYXNlIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5FT2JqZWN0PC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgVCBkZWZhdWx0Q2FzZShFT2JqZWN0IG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKK30gLy8gR2VvbWV0cnlfZGF0YXR5cGVzU3dpdGNoCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL0dyaWRDZWxscy5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9HcmlkQ2VsbHMuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kN2QyZTVjCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9HcmlkQ2VsbHMuamF2YQpAQCAtMCwwICsxLDEyMCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5IZWFkZXI7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkdyaWQgQ2VsbHM8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuR3JpZENlbGxzI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5HcmlkQ2VsbHMjZ2V0Q2VsbF93aWR0aCA8ZW0+Q2VsbCB3aWR0aDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuR3JpZENlbGxzI2dldENlbGxfaGVpZ2h0IDxlbT5DZWxsIGhlaWdodDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuR3JpZENlbGxzI2dldENlbGxzIDxlbT5DZWxsczwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2UjZ2V0R3JpZENlbGxzKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIEdyaWRDZWxscyBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldEhlYWRlcihIZWFkZXIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5OYXZfZGF0YXR5cGVzUGFja2FnZSNnZXRHcmlkQ2VsbHNfSGVhZGVyKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJSGVhZGVyIGdldEhlYWRlcigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuR3JpZENlbGxzI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldEhlYWRlcigpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0SGVhZGVyKEhlYWRlciB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5DZWxsIHdpZHRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5DZWxsIHdpZHRoPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5DZWxsIHdpZHRoPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRDZWxsX3dpZHRoKEZsb2F0MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5OYXZfZGF0YXR5cGVzUGFja2FnZSNnZXRHcmlkQ2VsbHNfQ2VsbF93aWR0aCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRDZWxsX3dpZHRoKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5HcmlkQ2VsbHMjZ2V0Q2VsbF93aWR0aCA8ZW0+Q2VsbCB3aWR0aDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+Q2VsbCB3aWR0aDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0Q2VsbF93aWR0aCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0Q2VsbF93aWR0aChPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+Q2VsbCBoZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkNlbGwgaGVpZ2h0PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5DZWxsIGhlaWdodDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0Q2VsbF9oZWlnaHQoRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlI2dldEdyaWRDZWxsc19DZWxsX2hlaWdodCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRDZWxsX2hlaWdodCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuR3JpZENlbGxzI2dldENlbGxfaGVpZ2h0IDxlbT5DZWxsIGhlaWdodDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+Q2VsbCBoZWlnaHQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldENlbGxfaGVpZ2h0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRDZWxsX2hlaWdodChPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+Q2VsbHM8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0LgorCSAqIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIHtAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvaW50fS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkNlbGxzPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0IGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkNlbGxzPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0LgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2UjZ2V0R3JpZENlbGxzX0NlbGxzKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFTGlzdDxQb2ludD4gZ2V0Q2VsbHMoKTsKKworfSAvLyBHcmlkQ2VsbHMKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTWFwTWV0YURhdGEuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTWFwTWV0YURhdGEuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMWY2MjYzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9NYXBNZXRhRGF0YS5qYXZhCkBAIC0wLDAgKzEsMTI4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TWFwIE1ldGEgRGF0YTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5NYXBNZXRhRGF0YSNnZXRNYXBfbG9hZF90aW1lIDxlbT5NYXAgbG9hZCB0aW1lPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5NYXBNZXRhRGF0YSNnZXRSZXNvbHV0aW9uIDxlbT5SZXNvbHV0aW9uPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5NYXBNZXRhRGF0YSNnZXRXaWR0aCA8ZW0+V2lkdGg8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk1hcE1ldGFEYXRhI2dldE9yaWdpbiA8ZW0+T3JpZ2luPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5OYXZfZGF0YXR5cGVzUGFja2FnZSNnZXRNYXBNZXRhRGF0YSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBNYXBNZXRhRGF0YSBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPk1hcCBsb2FkIHRpbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPk1hcCBsb2FkIHRpbWU8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPk1hcCBsb2FkIHRpbWU8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldE1hcF9sb2FkX3RpbWUoVGltZSkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlI2dldE1hcE1ldGFEYXRhX01hcF9sb2FkX3RpbWUoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVGltZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0TWFwX2xvYWRfdGltZSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTWFwTWV0YURhdGEjZ2V0TWFwX2xvYWRfdGltZSA8ZW0+TWFwIGxvYWQgdGltZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TWFwIGxvYWQgdGltZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0TWFwX2xvYWRfdGltZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0TWFwX2xvYWRfdGltZShPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+UmVzb2x1dGlvbjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+UmVzb2x1dGlvbjwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+UmVzb2x1dGlvbjwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0UmVzb2x1dGlvbihGbG9hdDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2UjZ2V0TWFwTWV0YURhdGFfUmVzb2x1dGlvbigpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRSZXNvbHV0aW9uKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5NYXBNZXRhRGF0YSNnZXRSZXNvbHV0aW9uIDxlbT5SZXNvbHV0aW9uPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5SZXNvbHV0aW9uPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRSZXNvbHV0aW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRSZXNvbHV0aW9uKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5XaWR0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+V2lkdGg8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPldpZHRoPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRXaWR0aChVSW50MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5OYXZfZGF0YXR5cGVzUGFja2FnZSNnZXRNYXBNZXRhRGF0YV9XaWR0aCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFdpZHRoKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5NYXBNZXRhRGF0YSNnZXRXaWR0aCA8ZW0+V2lkdGg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPldpZHRoPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRXaWR0aCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0V2lkdGgoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPk9yaWdpbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+T3JpZ2luPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5PcmlnaW48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldE9yaWdpbihQb3NlKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2UjZ2V0TWFwTWV0YURhdGFfT3JpZ2luKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJUG9zZSBnZXRPcmlnaW4oKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk1hcE1ldGFEYXRhI2dldE9yaWdpbiA8ZW0+T3JpZ2luPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5PcmlnaW48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldE9yaWdpbigpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0T3JpZ2luKFBvc2UgdmFsdWUpOworCit9IC8vIE1hcE1ldGFEYXRhCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNGYWN0b3J5LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL05hdl9kYXRhdHlwZXNGYWN0b3J5LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzQwNGFhNgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc0ZhY3RvcnkuamF2YQpAQCAtMCwwICsxLDc4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRmFjdG9yeTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogVGhlIDxiPkZhY3Rvcnk8L2I+IGZvciB0aGUgbW9kZWwuCisgKiBJdCBwcm92aWRlcyBhIGNyZWF0ZSBtZXRob2QgZm9yIGVhY2ggbm9uLWFic3RyYWN0IGNsYXNzIG9mIHRoZSBtb2RlbC4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5OYXZfZGF0YXR5cGVzUGFja2FnZQorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIE5hdl9kYXRhdHlwZXNGYWN0b3J5IGV4dGVuZHMgRUZhY3RvcnkgeworCS8qKgorCSAqIFRoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIGZhY3RvcnkuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJTmF2X2RhdGF0eXBlc0ZhY3RvcnkgZUlOU1RBTkNFID0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuaW5pdCgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5QYXRoPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5QYXRoPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlQYXRoIGNyZWF0ZVBhdGgoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+T2RvbWV0cnk8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPk9kb21ldHJ5PC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPZG9tZXRyeSBjcmVhdGVPZG9tZXRyeSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5NYXAgTWV0YSBEYXRhPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5NYXAgTWV0YSBEYXRhPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlNYXBNZXRhRGF0YSBjcmVhdGVNYXBNZXRhRGF0YSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5PY2N1cGFuY3kgR3JpZDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+T2NjdXBhbmN5IEdyaWQ8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCU9jY3VwYW5jeUdyaWQgY3JlYXRlT2NjdXBhbmN5R3JpZCgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5HcmlkIENlbGxzPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5HcmlkIENlbGxzPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlHcmlkQ2VsbHMgY3JlYXRlR3JpZENlbGxzKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBwYWNrYWdlIHN1cHBvcnRlZCBieSB0aGlzIGZhY3RvcnkuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBwYWNrYWdlIHN1cHBvcnRlZCBieSB0aGlzIGZhY3RvcnkuCisJICogQGdlbmVyYXRlZAorCSAqLworCU5hdl9kYXRhdHlwZXNQYWNrYWdlIGdldE5hdl9kYXRhdHlwZXNQYWNrYWdlKCk7CisKK30gLy8gTmF2X2RhdGF0eXBlc0ZhY3RvcnkKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvTmF2X2RhdGF0eXBlc1BhY2thZ2UuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xYmJkNzQyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9OYXZfZGF0YXR5cGVzUGFja2FnZS5qYXZhCkBAIC0wLDAgKzEsODAxIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBUaGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoZSBtb2RlbC4KKyAqIEl0IGNvbnRhaW5zIGFjY2Vzc29ycyBmb3IgdGhlIG1ldGEgb2JqZWN0cyB0byByZXByZXNlbnQKKyAqIDx1bD4KKyAqIDxsaT5lYWNoIGNsYXNzLDwvbGk+CisgKiA8bGk+ZWFjaCBmZWF0dXJlIG9mIGVhY2ggY2xhc3MsPC9saT4KKyAqIDxsaT5lYWNoIG9wZXJhdGlvbiBvZiBlYWNoIGNsYXNzLDwvbGk+CisgKiA8bGk+ZWFjaCBlbnVtLDwvbGk+CisgKiA8bGk+YW5kIGVhY2ggZGF0YSB0eXBlPC9saT4KKyAqIDwvdWw+CisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc0ZhY3RvcnkKKyAqIEBtb2RlbCBraW5kPSJwYWNrYWdlIgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIE5hdl9kYXRhdHlwZXNQYWNrYWdlIGV4dGVuZHMgRVBhY2thZ2UgeworCS8qKgorCSAqIFRoZSBwYWNrYWdlIG5hbWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJU3RyaW5nIGVOQU1FID0gIm5hdl9kYXRhdHlwZXMiOworCisJLyoqCisJICogVGhlIHBhY2thZ2UgbmFtZXNwYWNlIFVSSS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTdHJpbmcgZU5TX1VSSSA9ICJodHRwOi8vL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy5lY29yZSI7CisKKwkvKioKKwkgKiBUaGUgcGFja2FnZSBuYW1lc3BhY2UgbmFtZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTdHJpbmcgZU5TX1BSRUZJWCA9ICJSb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMiOworCisJLyoqCisJICogVGhlIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiB0aGUgcGFja2FnZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlOYXZfZGF0YXR5cGVzUGFja2FnZSBlSU5TVEFOQ0UgPSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsLk5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5pbml0KCk7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuUGF0aEltcGwgPGVtPlBhdGg8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsLlBhdGhJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsLk5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRQYXRoKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFBBVEggPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBBVEhfX0hFQURFUiA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UG9zZXM8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBBVEhfX1BPU0VTID0gMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5QYXRoPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBBVEhfRkVBVFVSRV9DT1VOVCA9IDI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+UGF0aDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQQVRIX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuT2RvbWV0cnlJbXBsIDxlbT5PZG9tZXRyeTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuT2RvbWV0cnlJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsLk5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRPZG9tZXRyeSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBPRE9NRVRSWSA9IDE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT0RPTUVUUllfX0hFQURFUiA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+Q2hpbGQgZnJhbWUgaWQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPRE9NRVRSWV9fQ0hJTERfRlJBTUVfSUQgPSAxOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlBvc2U8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPRE9NRVRSWV9fUE9TRSA9IDI7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+VHdpc3Q8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPRE9NRVRSWV9fVFdJU1QgPSAzOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPk9kb21ldHJ5PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE9ET01FVFJZX0ZFQVRVUkVfQ09VTlQgPSA0OworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPk9kb21ldHJ5PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE9ET01FVFJZX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuTWFwTWV0YURhdGFJbXBsIDxlbT5NYXAgTWV0YSBEYXRhPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5NYXBNZXRhRGF0YUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldE1hcE1ldGFEYXRhKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IE1BUF9NRVRBX0RBVEEgPSAyOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk1hcCBsb2FkIHRpbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBNQVBfTUVUQV9EQVRBX19NQVBfTE9BRF9USU1FID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5SZXNvbHV0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTUFQX01FVEFfREFUQV9fUkVTT0xVVElPTiA9IDE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2lkdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBNQVBfTUVUQV9EQVRBX19XSURUSCA9IDI7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+T3JpZ2luPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTUFQX01FVEFfREFUQV9fT1JJR0lOID0gMzsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5NYXAgTWV0YSBEYXRhPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE1BUF9NRVRBX0RBVEFfRkVBVFVSRV9DT1VOVCA9IDQ7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+TWFwIE1ldGEgRGF0YTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBNQVBfTUVUQV9EQVRBX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuT2NjdXBhbmN5R3JpZEltcGwgPGVtPk9jY3VwYW5jeSBHcmlkPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5PY2N1cGFuY3lHcmlkSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0T2NjdXBhbmN5R3JpZCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBPQ0NVUEFOQ1lfR1JJRCA9IDM7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT0NDVVBBTkNZX0dSSURfX0hFQURFUiA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SW5mbzwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE9DQ1VQQU5DWV9HUklEX19JTkZPID0gMTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5EYXRhPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPQ0NVUEFOQ1lfR1JJRF9fREFUQSA9IDI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+T2NjdXBhbmN5IEdyaWQ8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT0NDVVBBTkNZX0dSSURfRkVBVFVSRV9DT1VOVCA9IDM7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+T2NjdXBhbmN5IEdyaWQ8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT0NDVVBBTkNZX0dSSURfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5HcmlkQ2VsbHNJbXBsIDxlbT5HcmlkIENlbGxzPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5HcmlkQ2VsbHNJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsLk5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRHcmlkQ2VsbHMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgR1JJRF9DRUxMUyA9IDQ7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR1JJRF9DRUxMU19fSEVBREVSID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5DZWxsIHdpZHRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgR1JJRF9DRUxMU19fQ0VMTF9XSURUSCA9IDE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+Q2VsbCBoZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHUklEX0NFTExTX19DRUxMX0hFSUdIVCA9IDI7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+Q2VsbHM8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEdSSURfQ0VMTFNfX0NFTExTID0gMzsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5HcmlkIENlbGxzPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEdSSURfQ0VMTFNfRkVBVFVSRV9DT1VOVCA9IDQ7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+R3JpZCBDZWxsczwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBHUklEX0NFTExTX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLlBhdGggPGVtPlBhdGg8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+UGF0aDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLlBhdGgKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldFBhdGgoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuUGF0aCNnZXRIZWFkZXIgPGVtPkhlYWRlcjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPkhlYWRlcjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLlBhdGgjZ2V0SGVhZGVyKCkKKwkgKiBAc2VlICNnZXRQYXRoKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRQYXRoX0hlYWRlcigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdCAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLlBhdGgjZ2V0UG9zZXMgPGVtPlBvc2VzPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QgJzxlbT5Qb3NlczwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLlBhdGgjZ2V0UG9zZXMoKQorCSAqIEBzZWUgI2dldFBhdGgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFBhdGhfUG9zZXMoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk9kb21ldHJ5IDxlbT5PZG9tZXRyeTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5PZG9tZXRyeTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk9kb21ldHJ5CisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRPZG9tZXRyeSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5PZG9tZXRyeSNnZXRIZWFkZXIgPGVtPkhlYWRlcjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPkhlYWRlcjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk9kb21ldHJ5I2dldEhlYWRlcigpCisJICogQHNlZSAjZ2V0T2RvbWV0cnkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldE9kb21ldHJ5X0hlYWRlcigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5PZG9tZXRyeSNnZXRDaGlsZF9mcmFtZV9pZCA8ZW0+Q2hpbGQgZnJhbWUgaWQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5DaGlsZCBmcmFtZSBpZDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk9kb21ldHJ5I2dldENoaWxkX2ZyYW1lX2lkKCkKKwkgKiBAc2VlICNnZXRPZG9tZXRyeSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0T2RvbWV0cnlfQ2hpbGRfZnJhbWVfaWQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuT2RvbWV0cnkjZ2V0UG9zZSA8ZW0+UG9zZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPlBvc2U8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5PZG9tZXRyeSNnZXRQb3NlKCkKKwkgKiBAc2VlICNnZXRPZG9tZXRyeSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0T2RvbWV0cnlfUG9zZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5PZG9tZXRyeSNnZXRUd2lzdCA8ZW0+VHdpc3Q8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5Ud2lzdDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk9kb21ldHJ5I2dldFR3aXN0KCkKKwkgKiBAc2VlICNnZXRPZG9tZXRyeSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0T2RvbWV0cnlfVHdpc3QoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk1hcE1ldGFEYXRhIDxlbT5NYXAgTWV0YSBEYXRhPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPk1hcCBNZXRhIERhdGE8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5NYXBNZXRhRGF0YQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0TWFwTWV0YURhdGEoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTWFwTWV0YURhdGEjZ2V0TWFwX2xvYWRfdGltZSA8ZW0+TWFwIGxvYWQgdGltZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPk1hcCBsb2FkIHRpbWU8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5NYXBNZXRhRGF0YSNnZXRNYXBfbG9hZF90aW1lKCkKKwkgKiBAc2VlICNnZXRNYXBNZXRhRGF0YSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0TWFwTWV0YURhdGFfTWFwX2xvYWRfdGltZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5NYXBNZXRhRGF0YSNnZXRSZXNvbHV0aW9uIDxlbT5SZXNvbHV0aW9uPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+UmVzb2x1dGlvbjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk1hcE1ldGFEYXRhI2dldFJlc29sdXRpb24oKQorCSAqIEBzZWUgI2dldE1hcE1ldGFEYXRhKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRNYXBNZXRhRGF0YV9SZXNvbHV0aW9uKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk1hcE1ldGFEYXRhI2dldFdpZHRoIDxlbT5XaWR0aDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPldpZHRoPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTWFwTWV0YURhdGEjZ2V0V2lkdGgoKQorCSAqIEBzZWUgI2dldE1hcE1ldGFEYXRhKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRNYXBNZXRhRGF0YV9XaWR0aCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5NYXBNZXRhRGF0YSNnZXRPcmlnaW4gPGVtPk9yaWdpbjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPk9yaWdpbjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk1hcE1ldGFEYXRhI2dldE9yaWdpbigpCisJICogQHNlZSAjZ2V0TWFwTWV0YURhdGEoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldE1hcE1ldGFEYXRhX09yaWdpbigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuT2NjdXBhbmN5R3JpZCA8ZW0+T2NjdXBhbmN5IEdyaWQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+T2NjdXBhbmN5IEdyaWQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5PY2N1cGFuY3lHcmlkCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRPY2N1cGFuY3lHcmlkKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk9jY3VwYW5jeUdyaWQjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5IZWFkZXI8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5PY2N1cGFuY3lHcmlkI2dldEhlYWRlcigpCisJICogQHNlZSAjZ2V0T2NjdXBhbmN5R3JpZCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0T2NjdXBhbmN5R3JpZF9IZWFkZXIoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuT2NjdXBhbmN5R3JpZCNnZXRJbmZvIDxlbT5JbmZvPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+SW5mbzwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk9jY3VwYW5jeUdyaWQjZ2V0SW5mbygpCisJICogQHNlZSAjZ2V0T2NjdXBhbmN5R3JpZCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0T2NjdXBhbmN5R3JpZF9JbmZvKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuT2NjdXBhbmN5R3JpZCNnZXREYXRhIDxlbT5EYXRhPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlIGxpc3QgJzxlbT5EYXRhPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuT2NjdXBhbmN5R3JpZCNnZXREYXRhKCkKKwkgKiBAc2VlICNnZXRPY2N1cGFuY3lHcmlkKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRPY2N1cGFuY3lHcmlkX0RhdGEoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLkdyaWRDZWxscyA8ZW0+R3JpZCBDZWxsczwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5HcmlkIENlbGxzPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuR3JpZENlbGxzCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRHcmlkQ2VsbHMoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuR3JpZENlbGxzI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+SGVhZGVyPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuR3JpZENlbGxzI2dldEhlYWRlcigpCisJICogQHNlZSAjZ2V0R3JpZENlbGxzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRHcmlkQ2VsbHNfSGVhZGVyKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLkdyaWRDZWxscyNnZXRDZWxsX3dpZHRoIDxlbT5DZWxsIHdpZHRoPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+Q2VsbCB3aWR0aDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLkdyaWRDZWxscyNnZXRDZWxsX3dpZHRoKCkKKwkgKiBAc2VlICNnZXRHcmlkQ2VsbHMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEdyaWRDZWxsc19DZWxsX3dpZHRoKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLkdyaWRDZWxscyNnZXRDZWxsX2hlaWdodCA8ZW0+Q2VsbCBoZWlnaHQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5DZWxsIGhlaWdodDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLkdyaWRDZWxscyNnZXRDZWxsX2hlaWdodCgpCisJICogQHNlZSAjZ2V0R3JpZENlbGxzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRHcmlkQ2VsbHNfQ2VsbF9oZWlnaHQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5HcmlkQ2VsbHMjZ2V0Q2VsbHMgPGVtPkNlbGxzPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QgJzxlbT5DZWxsczwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLkdyaWRDZWxscyNnZXRDZWxscygpCisJICogQHNlZSAjZ2V0R3JpZENlbGxzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRHcmlkQ2VsbHNfQ2VsbHMoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIGZhY3RvcnkgdGhhdCBjcmVhdGVzIHRoZSBpbnN0YW5jZXMgb2YgdGhlIG1vZGVsLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgZmFjdG9yeSB0aGF0IGNyZWF0ZXMgdGhlIGluc3RhbmNlcyBvZiB0aGUgbW9kZWwuCisJICogQGdlbmVyYXRlZAorCSAqLworCU5hdl9kYXRhdHlwZXNGYWN0b3J5IGdldE5hdl9kYXRhdHlwZXNGYWN0b3J5KCk7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIERlZmluZXMgbGl0ZXJhbHMgZm9yIHRoZSBtZXRhIG9iamVjdHMgdGhhdCByZXByZXNlbnQKKwkgKiA8dWw+CisJICogPGxpPmVhY2ggY2xhc3MsPC9saT4KKwkgKiA8bGk+ZWFjaCBmZWF0dXJlIG9mIGVhY2ggY2xhc3MsPC9saT4KKwkgKiA8bGk+ZWFjaCBvcGVyYXRpb24gb2YgZWFjaCBjbGFzcyw8L2xpPgorCSAqIDxsaT5lYWNoIGVudW0sPC9saT4KKwkgKiA8bGk+YW5kIGVhY2ggZGF0YSB0eXBlPC9saT4KKwkgKiA8L3VsPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnRlcmZhY2UgTGl0ZXJhbHMgeworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuUGF0aEltcGwgPGVtPlBhdGg8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsLlBhdGhJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0UGF0aCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBQQVRIID0gZUlOU1RBTkNFLmdldFBhdGgoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIFBBVEhfX0hFQURFUiA9IGVJTlNUQU5DRS5nZXRQYXRoX0hlYWRlcigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UG9zZXM8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0IGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIFBBVEhfX1BPU0VTID0gZUlOU1RBTkNFLmdldFBhdGhfUG9zZXMoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuT2RvbWV0cnlJbXBsIDxlbT5PZG9tZXRyeTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuT2RvbWV0cnlJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0T2RvbWV0cnkoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgT0RPTUVUUlkgPSBlSU5TVEFOQ0UuZ2V0T2RvbWV0cnkoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIE9ET01FVFJZX19IRUFERVIgPSBlSU5TVEFOQ0UuZ2V0T2RvbWV0cnlfSGVhZGVyKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5DaGlsZCBmcmFtZSBpZDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIE9ET01FVFJZX19DSElMRF9GUkFNRV9JRCA9IGVJTlNUQU5DRS5nZXRPZG9tZXRyeV9DaGlsZF9mcmFtZV9pZCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UG9zZTwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIE9ET01FVFJZX19QT1NFID0gZUlOU1RBTkNFLmdldE9kb21ldHJ5X1Bvc2UoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlR3aXN0PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgT0RPTUVUUllfX1RXSVNUID0gZUlOU1RBTkNFLmdldE9kb21ldHJ5X1R3aXN0KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsLk1hcE1ldGFEYXRhSW1wbCA8ZW0+TWFwIE1ldGEgRGF0YTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuTWFwTWV0YURhdGFJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0TWFwTWV0YURhdGEoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgTUFQX01FVEFfREFUQSA9IGVJTlNUQU5DRS5nZXRNYXBNZXRhRGF0YSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TWFwIGxvYWQgdGltZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIE1BUF9NRVRBX0RBVEFfX01BUF9MT0FEX1RJTUUgPSBlSU5TVEFOQ0UuZ2V0TWFwTWV0YURhdGFfTWFwX2xvYWRfdGltZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UmVzb2x1dGlvbjwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIE1BUF9NRVRBX0RBVEFfX1JFU09MVVRJT04gPSBlSU5TVEFOQ0UuZ2V0TWFwTWV0YURhdGFfUmVzb2x1dGlvbigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+V2lkdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBNQVBfTUVUQV9EQVRBX19XSURUSCA9IGVJTlNUQU5DRS5nZXRNYXBNZXRhRGF0YV9XaWR0aCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+T3JpZ2luPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgTUFQX01FVEFfREFUQV9fT1JJR0lOID0gZUlOU1RBTkNFLmdldE1hcE1ldGFEYXRhX09yaWdpbigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5PY2N1cGFuY3lHcmlkSW1wbCA8ZW0+T2NjdXBhbmN5IEdyaWQ8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsLk9jY3VwYW5jeUdyaWRJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5OYXZfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0T2NjdXBhbmN5R3JpZCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBPQ0NVUEFOQ1lfR1JJRCA9IGVJTlNUQU5DRS5nZXRPY2N1cGFuY3lHcmlkKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBPQ0NVUEFOQ1lfR1JJRF9fSEVBREVSID0gZUlOU1RBTkNFLmdldE9jY3VwYW5jeUdyaWRfSGVhZGVyKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5JbmZvPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgT0NDVVBBTkNZX0dSSURfX0lORk8gPSBlSU5TVEFOQ0UuZ2V0T2NjdXBhbmN5R3JpZF9JbmZvKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5EYXRhPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBPQ0NVUEFOQ1lfR1JJRF9fREFUQSA9IGVJTlNUQU5DRS5nZXRPY2N1cGFuY3lHcmlkX0RhdGEoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuR3JpZENlbGxzSW1wbCA8ZW0+R3JpZCBDZWxsczwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuR3JpZENlbGxzSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldEdyaWRDZWxscygpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBHUklEX0NFTExTID0gZUlOU1RBTkNFLmdldEdyaWRDZWxscygpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgR1JJRF9DRUxMU19fSEVBREVSID0gZUlOU1RBTkNFLmdldEdyaWRDZWxsc19IZWFkZXIoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkNlbGwgd2lkdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBHUklEX0NFTExTX19DRUxMX1dJRFRIID0gZUlOU1RBTkNFLmdldEdyaWRDZWxsc19DZWxsX3dpZHRoKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5DZWxsIGhlaWdodDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIEdSSURfQ0VMTFNfX0NFTExfSEVJR0hUID0gZUlOU1RBTkNFLmdldEdyaWRDZWxsc19DZWxsX2hlaWdodCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+Q2VsbHM8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0IGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIEdSSURfQ0VMTFNfX0NFTExTID0gZUlOU1RBTkNFLmdldEdyaWRDZWxsc19DZWxscygpOworCisJfQorCit9IC8vIE5hdl9kYXRhdHlwZXNQYWNrYWdlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL09jY3VwYW5jeUdyaWQuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvT2NjdXBhbmN5R3JpZC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQxOGNlNTAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL09jY3VwYW5jeUdyaWQuamF2YQpAQCAtMCwwICsxLDkzIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5IZWFkZXI7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9jY3VwYW5jeSBHcmlkPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk9jY3VwYW5jeUdyaWQjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk9jY3VwYW5jeUdyaWQjZ2V0SW5mbyA8ZW0+SW5mbzwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuT2NjdXBhbmN5R3JpZCNnZXREYXRhIDxlbT5EYXRhPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5OYXZfZGF0YXR5cGVzUGFja2FnZSNnZXRPY2N1cGFuY3lHcmlkKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIE9jY3VwYW5jeUdyaWQgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRIZWFkZXIoSGVhZGVyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2UjZ2V0T2NjdXBhbmN5R3JpZF9IZWFkZXIoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlIZWFkZXIgZ2V0SGVhZGVyKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5PY2N1cGFuY3lHcmlkI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldEhlYWRlcigpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0SGVhZGVyKEhlYWRlciB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5JbmZvPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5JbmZvPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5JbmZvPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRJbmZvKE1hcE1ldGFEYXRhKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2UjZ2V0T2NjdXBhbmN5R3JpZF9JbmZvKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJTWFwTWV0YURhdGEgZ2V0SW5mbygpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuT2NjdXBhbmN5R3JpZCNnZXRJbmZvIDxlbT5JbmZvPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5JbmZvPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRJbmZvKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRJbmZvKE1hcE1ldGFEYXRhIHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkRhdGE8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIHtAbGluayBqYXZhLmxhbmcuT2JqZWN0fS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkRhdGE8L2VtPicgYXR0cmlidXRlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+RGF0YTwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlI2dldE9jY3VwYW5jeUdyaWRfRGF0YSgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQ4IiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUxpc3Q8T2JqZWN0PiBnZXREYXRhKCk7CisKK30gLy8gT2NjdXBhbmN5R3JpZApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9PZG9tZXRyeS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9PZG9tZXRyeS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmMxY2ZmNGEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL09kb21ldHJ5LmphdmEKQEAgLTAsMCArMSwxMzAgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlV2l0aENvdmFyaWFuY2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Ud2lzdFdpdGhDb3ZhcmlhbmNlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T2RvbWV0cnk8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuT2RvbWV0cnkjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk9kb21ldHJ5I2dldENoaWxkX2ZyYW1lX2lkIDxlbT5DaGlsZCBmcmFtZSBpZDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuT2RvbWV0cnkjZ2V0UG9zZSA8ZW0+UG9zZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuT2RvbWV0cnkjZ2V0VHdpc3QgPGVtPlR3aXN0PC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5OYXZfZGF0YXR5cGVzUGFja2FnZSNnZXRPZG9tZXRyeSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBPZG9tZXRyeSBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldEhlYWRlcihIZWFkZXIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5OYXZfZGF0YXR5cGVzUGFja2FnZSNnZXRPZG9tZXRyeV9IZWFkZXIoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlIZWFkZXIgZ2V0SGVhZGVyKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5PZG9tZXRyeSNnZXRIZWFkZXIgPGVtPkhlYWRlcjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRIZWFkZXIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEhlYWRlcihIZWFkZXIgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+Q2hpbGQgZnJhbWUgaWQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkNoaWxkIGZyYW1lIGlkPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5DaGlsZCBmcmFtZSBpZDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0Q2hpbGRfZnJhbWVfaWQoU3RyaW5nKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2UjZ2V0T2RvbWV0cnlfQ2hpbGRfZnJhbWVfaWQoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RyaW5nIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRDaGlsZF9mcmFtZV9pZCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuT2RvbWV0cnkjZ2V0Q2hpbGRfZnJhbWVfaWQgPGVtPkNoaWxkIGZyYW1lIGlkPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5DaGlsZCBmcmFtZSBpZDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0Q2hpbGRfZnJhbWVfaWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldENoaWxkX2ZyYW1lX2lkKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Qb3NlPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5Qb3NlPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5Qb3NlPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRQb3NlKFBvc2VXaXRoQ292YXJpYW5jZSkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlI2dldE9kb21ldHJ5X1Bvc2UoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlQb3NlV2l0aENvdmFyaWFuY2UgZ2V0UG9zZSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuT2RvbWV0cnkjZ2V0UG9zZSA8ZW0+UG9zZTwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+UG9zZTwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0UG9zZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0UG9zZShQb3NlV2l0aENvdmFyaWFuY2UgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VHdpc3Q8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlR3aXN0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5Ud2lzdDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0VHdpc3QoVHdpc3RXaXRoQ292YXJpYW5jZSkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlI2dldE9kb21ldHJ5X1R3aXN0KCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJVHdpc3RXaXRoQ292YXJpYW5jZSBnZXRUd2lzdCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuT2RvbWV0cnkjZ2V0VHdpc3QgPGVtPlR3aXN0PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5Ud2lzdDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0VHdpc3QoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFR3aXN0KFR3aXN0V2l0aENvdmFyaWFuY2UgdmFsdWUpOworCit9IC8vIE9kb21ldHJ5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL1BhdGguamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvUGF0aC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIxYzc5MjYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL1BhdGguamF2YQpAQCAtMCwwICsxLDY4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2VTdGFtcGVkOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UGF0aDwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5QYXRoI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5QYXRoI2dldFBvc2VzIDxlbT5Qb3NlczwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2UjZ2V0UGF0aCgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBQYXRoIGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0SGVhZGVyKEhlYWRlcikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlI2dldFBhdGhfSGVhZGVyKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJSGVhZGVyIGdldEhlYWRlcigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuUGF0aCNnZXRIZWFkZXIgPGVtPkhlYWRlcjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRIZWFkZXIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEhlYWRlcihIZWFkZXIgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+UG9zZXM8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0LgorCSAqIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIHtAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlBvc2VTdGFtcGVkfS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlBvc2VzPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0IGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlBvc2VzPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0LgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2UjZ2V0UGF0aF9Qb3NlcygpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUxpc3Q8UG9zZVN0YW1wZWQ+IGdldFBvc2VzKCk7CisKK30gLy8gUGF0aApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL0dyaWRDZWxsc0ltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9HcmlkQ2VsbHNJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzAxNWY0NgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9HcmlkQ2VsbHNJbXBsLmphdmEKQEAgLTAsMCArMSwzMzggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb25DaGFpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5FT2JqZWN0Q29udGFpbm1lbnRFTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5JbnRlcm5hbEVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9pbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuR3JpZENlbGxzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkdyaWQgQ2VsbHM8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuR3JpZENlbGxzSW1wbCNnZXRIZWFkZXIgPGVtPkhlYWRlcjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5HcmlkQ2VsbHNJbXBsI2dldENlbGxfd2lkdGggPGVtPkNlbGwgd2lkdGg8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuR3JpZENlbGxzSW1wbCNnZXRDZWxsX2hlaWdodCA8ZW0+Q2VsbCBoZWlnaHQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuR3JpZENlbGxzSW1wbCNnZXRDZWxscyA8ZW0+Q2VsbHM8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBHcmlkQ2VsbHNJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIEdyaWRDZWxscyB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0SGVhZGVyKCkgPGVtPkhlYWRlcjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SGVhZGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgSGVhZGVyIGhlYWRlcjsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRDZWxsX3dpZHRoKCkgPGVtPkNlbGwgd2lkdGg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldENlbGxfd2lkdGgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IENFTExfV0lEVEhfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0Q2VsbF93aWR0aCgpIDxlbT5DZWxsIHdpZHRoPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRDZWxsX3dpZHRoKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IGNlbGxfd2lkdGggPSBDRUxMX1dJRFRIX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldENlbGxfaGVpZ2h0KCkgPGVtPkNlbGwgaGVpZ2h0PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRDZWxsX2hlaWdodCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgQ0VMTF9IRUlHSFRfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0Q2VsbF9oZWlnaHQoKSA8ZW0+Q2VsbCBoZWlnaHQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldENlbGxfaGVpZ2h0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IGNlbGxfaGVpZ2h0ID0gQ0VMTF9IRUlHSFRfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRDZWxscygpIDxlbT5DZWxsczwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRDZWxscygpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEVMaXN0PFBvaW50PiBjZWxsczsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBHcmlkQ2VsbHNJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gTmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuR1JJRF9DRUxMUzsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgSGVhZGVyIGdldEhlYWRlcigpIHsKKwkJcmV0dXJuIGhlYWRlcjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRIZWFkZXIoSGVhZGVyIG5ld0hlYWRlciwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlIZWFkZXIgb2xkSGVhZGVyID0gaGVhZGVyOworCQloZWFkZXIgPSBuZXdIZWFkZXI7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE5hdl9kYXRhdHlwZXNQYWNrYWdlLkdSSURfQ0VMTFNfX0hFQURFUiwgb2xkSGVhZGVyLCBuZXdIZWFkZXIpOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEhlYWRlcihIZWFkZXIgbmV3SGVhZGVyKSB7CisJCWlmIChuZXdIZWFkZXIgIT0gaGVhZGVyKSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChoZWFkZXIgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpaGVhZGVyKS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gTmF2X2RhdGF0eXBlc1BhY2thZ2UuR1JJRF9DRUxMU19fSEVBREVSLCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdIZWFkZXIgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3SGVhZGVyKS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gTmF2X2RhdGF0eXBlc1BhY2thZ2UuR1JJRF9DRUxMU19fSEVBREVSLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldEhlYWRlcihuZXdIZWFkZXIsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgTmF2X2RhdGF0eXBlc1BhY2thZ2UuR1JJRF9DRUxMU19fSEVBREVSLCBuZXdIZWFkZXIsIG5ld0hlYWRlcikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0Q2VsbF93aWR0aCgpIHsKKwkJcmV0dXJuIGNlbGxfd2lkdGg7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0Q2VsbF93aWR0aChPYmplY3QgbmV3Q2VsbF93aWR0aCkgeworCQlPYmplY3Qgb2xkQ2VsbF93aWR0aCA9IGNlbGxfd2lkdGg7CisJCWNlbGxfd2lkdGggPSBuZXdDZWxsX3dpZHRoOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBOYXZfZGF0YXR5cGVzUGFja2FnZS5HUklEX0NFTExTX19DRUxMX1dJRFRILCBvbGRDZWxsX3dpZHRoLCBjZWxsX3dpZHRoKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRDZWxsX2hlaWdodCgpIHsKKwkJcmV0dXJuIGNlbGxfaGVpZ2h0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldENlbGxfaGVpZ2h0KE9iamVjdCBuZXdDZWxsX2hlaWdodCkgeworCQlPYmplY3Qgb2xkQ2VsbF9oZWlnaHQgPSBjZWxsX2hlaWdodDsKKwkJY2VsbF9oZWlnaHQgPSBuZXdDZWxsX2hlaWdodDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgTmF2X2RhdGF0eXBlc1BhY2thZ2UuR1JJRF9DRUxMU19fQ0VMTF9IRUlHSFQsIG9sZENlbGxfaGVpZ2h0LCBjZWxsX2hlaWdodCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFTGlzdDxQb2ludD4gZ2V0Q2VsbHMoKSB7CisJCWlmIChjZWxscyA9PSBudWxsKSB7CisJCQljZWxscyA9IG5ldyBFT2JqZWN0Q29udGFpbm1lbnRFTGlzdDxQb2ludD4oUG9pbnQuY2xhc3MsIHRoaXMsIE5hdl9kYXRhdHlwZXNQYWNrYWdlLkdSSURfQ0VMTFNfX0NFTExTKTsKKwkJfQorCQlyZXR1cm4gY2VsbHM7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGVJbnZlcnNlUmVtb3ZlKEludGVybmFsRU9iamVjdCBvdGhlckVuZCwgaW50IGZlYXR1cmVJRCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5HUklEX0NFTExTX19IRUFERVI6CisJCQkJcmV0dXJuIGJhc2ljU2V0SGVhZGVyKG51bGwsIG1zZ3MpOworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5HUklEX0NFTExTX19DRUxMUzoKKwkJCQlyZXR1cm4gKChJbnRlcm5hbEVMaXN0PD8+KWdldENlbGxzKCkpLmJhc2ljUmVtb3ZlKG90aGVyRW5kLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5HUklEX0NFTExTX19IRUFERVI6CisJCQkJcmV0dXJuIGdldEhlYWRlcigpOworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5HUklEX0NFTExTX19DRUxMX1dJRFRIOgorCQkJCXJldHVybiBnZXRDZWxsX3dpZHRoKCk7CisJCQljYXNlIE5hdl9kYXRhdHlwZXNQYWNrYWdlLkdSSURfQ0VMTFNfX0NFTExfSEVJR0hUOgorCQkJCXJldHVybiBnZXRDZWxsX2hlaWdodCgpOworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5HUklEX0NFTExTX19DRUxMUzoKKwkJCQlyZXR1cm4gZ2V0Q2VsbHMoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAU3VwcHJlc3NXYXJuaW5ncygidW5jaGVja2VkIikKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5HUklEX0NFTExTX19IRUFERVI6CisJCQkJc2V0SGVhZGVyKChIZWFkZXIpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuR1JJRF9DRUxMU19fQ0VMTF9XSURUSDoKKwkJCQlzZXRDZWxsX3dpZHRoKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuR1JJRF9DRUxMU19fQ0VMTF9IRUlHSFQ6CisJCQkJc2V0Q2VsbF9oZWlnaHQoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5HUklEX0NFTExTX19DRUxMUzoKKwkJCQlnZXRDZWxscygpLmNsZWFyKCk7CisJCQkJZ2V0Q2VsbHMoKS5hZGRBbGwoKENvbGxlY3Rpb248PyBleHRlbmRzIFBvaW50PiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuR1JJRF9DRUxMU19fSEVBREVSOgorCQkJCXNldEhlYWRlcigoSGVhZGVyKW51bGwpOworCQkJCXJldHVybjsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuR1JJRF9DRUxMU19fQ0VMTF9XSURUSDoKKwkJCQlzZXRDZWxsX3dpZHRoKENFTExfV0lEVEhfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuR1JJRF9DRUxMU19fQ0VMTF9IRUlHSFQ6CisJCQkJc2V0Q2VsbF9oZWlnaHQoQ0VMTF9IRUlHSFRfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuR1JJRF9DRUxMU19fQ0VMTFM6CisJCQkJZ2V0Q2VsbHMoKS5jbGVhcigpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5HUklEX0NFTExTX19IRUFERVI6CisJCQkJcmV0dXJuIGhlYWRlciAhPSBudWxsOworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5HUklEX0NFTExTX19DRUxMX1dJRFRIOgorCQkJCXJldHVybiBDRUxMX1dJRFRIX0VERUZBVUxUID09IG51bGwgPyBjZWxsX3dpZHRoICE9IG51bGwgOiAhQ0VMTF9XSURUSF9FREVGQVVMVC5lcXVhbHMoY2VsbF93aWR0aCk7CisJCQljYXNlIE5hdl9kYXRhdHlwZXNQYWNrYWdlLkdSSURfQ0VMTFNfX0NFTExfSEVJR0hUOgorCQkJCXJldHVybiBDRUxMX0hFSUdIVF9FREVGQVVMVCA9PSBudWxsID8gY2VsbF9oZWlnaHQgIT0gbnVsbCA6ICFDRUxMX0hFSUdIVF9FREVGQVVMVC5lcXVhbHMoY2VsbF9oZWlnaHQpOworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5HUklEX0NFTExTX19DRUxMUzoKKwkJCQlyZXR1cm4gY2VsbHMgIT0gbnVsbCAmJiAhY2VsbHMuaXNFbXB0eSgpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAoY2VsbF93aWR0aDogIik7CisJCXJlc3VsdC5hcHBlbmQoY2VsbF93aWR0aCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgY2VsbF9oZWlnaHQ6ICIpOworCQlyZXN1bHQuYXBwZW5kKGNlbGxfaGVpZ2h0KTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIEdyaWRDZWxsc0ltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9NYXBNZXRhRGF0YUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9NYXBNZXRhRGF0YUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45ZGRmOGMxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL01hcE1ldGFEYXRhSW1wbC5qYXZhCkBAIC0wLDAgKzEsMzQ5IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbkNoYWluOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk1hcE1ldGFEYXRhOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TWFwIE1ldGEgRGF0YTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5NYXBNZXRhRGF0YUltcGwjZ2V0TWFwX2xvYWRfdGltZSA8ZW0+TWFwIGxvYWQgdGltZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5NYXBNZXRhRGF0YUltcGwjZ2V0UmVzb2x1dGlvbiA8ZW0+UmVzb2x1dGlvbjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5NYXBNZXRhRGF0YUltcGwjZ2V0V2lkdGggPGVtPldpZHRoPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5pbXBsLk1hcE1ldGFEYXRhSW1wbCNnZXRPcmlnaW4gPGVtPk9yaWdpbjwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIE1hcE1ldGFEYXRhSW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBNYXBNZXRhRGF0YSB7CisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldE1hcF9sb2FkX3RpbWUoKSA8ZW0+TWFwIGxvYWQgdGltZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0TWFwX2xvYWRfdGltZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgTUFQX0xPQURfVElNRV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRNYXBfbG9hZF90aW1lKCkgPGVtPk1hcCBsb2FkIHRpbWU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldE1hcF9sb2FkX3RpbWUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgbWFwX2xvYWRfdGltZSA9IE1BUF9MT0FEX1RJTUVfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0UmVzb2x1dGlvbigpIDxlbT5SZXNvbHV0aW9uPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRSZXNvbHV0aW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBSRVNPTFVUSU9OX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFJlc29sdXRpb24oKSA8ZW0+UmVzb2x1dGlvbjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UmVzb2x1dGlvbigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCByZXNvbHV0aW9uID0gUkVTT0xVVElPTl9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRXaWR0aCgpIDxlbT5XaWR0aDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0V2lkdGgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFdJRFRIX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFdpZHRoKCkgPGVtPldpZHRoPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRXaWR0aCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCB3aWR0aCA9IFdJRFRIX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0T3JpZ2luKCkgPGVtPk9yaWdpbjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0T3JpZ2luKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgUG9zZSBvcmlnaW47CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgTWFwTWV0YURhdGFJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gTmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuTUFQX01FVEFfREFUQTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldE1hcF9sb2FkX3RpbWUoKSB7CisJCXJldHVybiBtYXBfbG9hZF90aW1lOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldE1hcF9sb2FkX3RpbWUoT2JqZWN0IG5ld01hcF9sb2FkX3RpbWUpIHsKKwkJT2JqZWN0IG9sZE1hcF9sb2FkX3RpbWUgPSBtYXBfbG9hZF90aW1lOworCQltYXBfbG9hZF90aW1lID0gbmV3TWFwX2xvYWRfdGltZTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgTmF2X2RhdGF0eXBlc1BhY2thZ2UuTUFQX01FVEFfREFUQV9fTUFQX0xPQURfVElNRSwgb2xkTWFwX2xvYWRfdGltZSwgbWFwX2xvYWRfdGltZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0UmVzb2x1dGlvbigpIHsKKwkJcmV0dXJuIHJlc29sdXRpb247CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0UmVzb2x1dGlvbihPYmplY3QgbmV3UmVzb2x1dGlvbikgeworCQlPYmplY3Qgb2xkUmVzb2x1dGlvbiA9IHJlc29sdXRpb247CisJCXJlc29sdXRpb24gPSBuZXdSZXNvbHV0aW9uOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBOYXZfZGF0YXR5cGVzUGFja2FnZS5NQVBfTUVUQV9EQVRBX19SRVNPTFVUSU9OLCBvbGRSZXNvbHV0aW9uLCByZXNvbHV0aW9uKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRXaWR0aCgpIHsKKwkJcmV0dXJuIHdpZHRoOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFdpZHRoKE9iamVjdCBuZXdXaWR0aCkgeworCQlPYmplY3Qgb2xkV2lkdGggPSB3aWR0aDsKKwkJd2lkdGggPSBuZXdXaWR0aDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgTmF2X2RhdGF0eXBlc1BhY2thZ2UuTUFQX01FVEFfREFUQV9fV0lEVEgsIG9sZFdpZHRoLCB3aWR0aCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBQb3NlIGdldE9yaWdpbigpIHsKKwkJcmV0dXJuIG9yaWdpbjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRPcmlnaW4oUG9zZSBuZXdPcmlnaW4sIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJUG9zZSBvbGRPcmlnaW4gPSBvcmlnaW47CisJCW9yaWdpbiA9IG5ld09yaWdpbjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgTmF2X2RhdGF0eXBlc1BhY2thZ2UuTUFQX01FVEFfREFUQV9fT1JJR0lOLCBvbGRPcmlnaW4sIG5ld09yaWdpbik7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0T3JpZ2luKFBvc2UgbmV3T3JpZ2luKSB7CisJCWlmIChuZXdPcmlnaW4gIT0gb3JpZ2luKSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChvcmlnaW4gIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3Qpb3JpZ2luKS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gTmF2X2RhdGF0eXBlc1BhY2thZ2UuTUFQX01FVEFfREFUQV9fT1JJR0lOLCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdPcmlnaW4gIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3T3JpZ2luKS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gTmF2X2RhdGF0eXBlc1BhY2thZ2UuTUFQX01FVEFfREFUQV9fT1JJR0lOLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldE9yaWdpbihuZXdPcmlnaW4sIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgTmF2X2RhdGF0eXBlc1BhY2thZ2UuTUFQX01FVEFfREFUQV9fT1JJR0lOLCBuZXdPcmlnaW4sIG5ld09yaWdpbikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBlSW52ZXJzZVJlbW92ZShJbnRlcm5hbEVPYmplY3Qgb3RoZXJFbmQsIGludCBmZWF0dXJlSUQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuTUFQX01FVEFfREFUQV9fT1JJR0lOOgorCQkJCXJldHVybiBiYXNpY1NldE9yaWdpbihudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5NQVBfTUVUQV9EQVRBX19NQVBfTE9BRF9USU1FOgorCQkJCXJldHVybiBnZXRNYXBfbG9hZF90aW1lKCk7CisJCQljYXNlIE5hdl9kYXRhdHlwZXNQYWNrYWdlLk1BUF9NRVRBX0RBVEFfX1JFU09MVVRJT046CisJCQkJcmV0dXJuIGdldFJlc29sdXRpb24oKTsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuTUFQX01FVEFfREFUQV9fV0lEVEg6CisJCQkJcmV0dXJuIGdldFdpZHRoKCk7CisJCQljYXNlIE5hdl9kYXRhdHlwZXNQYWNrYWdlLk1BUF9NRVRBX0RBVEFfX09SSUdJTjoKKwkJCQlyZXR1cm4gZ2V0T3JpZ2luKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuTUFQX01FVEFfREFUQV9fTUFQX0xPQURfVElNRToKKwkJCQlzZXRNYXBfbG9hZF90aW1lKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuTUFQX01FVEFfREFUQV9fUkVTT0xVVElPTjoKKwkJCQlzZXRSZXNvbHV0aW9uKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuTUFQX01FVEFfREFUQV9fV0lEVEg6CisJCQkJc2V0V2lkdGgoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5NQVBfTUVUQV9EQVRBX19PUklHSU46CisJCQkJc2V0T3JpZ2luKChQb3NlKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5NQVBfTUVUQV9EQVRBX19NQVBfTE9BRF9USU1FOgorCQkJCXNldE1hcF9sb2FkX3RpbWUoTUFQX0xPQURfVElNRV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5NQVBfTUVUQV9EQVRBX19SRVNPTFVUSU9OOgorCQkJCXNldFJlc29sdXRpb24oUkVTT0xVVElPTl9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5NQVBfTUVUQV9EQVRBX19XSURUSDoKKwkJCQlzZXRXaWR0aChXSURUSF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5NQVBfTUVUQV9EQVRBX19PUklHSU46CisJCQkJc2V0T3JpZ2luKChQb3NlKW51bGwpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5NQVBfTUVUQV9EQVRBX19NQVBfTE9BRF9USU1FOgorCQkJCXJldHVybiBNQVBfTE9BRF9USU1FX0VERUZBVUxUID09IG51bGwgPyBtYXBfbG9hZF90aW1lICE9IG51bGwgOiAhTUFQX0xPQURfVElNRV9FREVGQVVMVC5lcXVhbHMobWFwX2xvYWRfdGltZSk7CisJCQljYXNlIE5hdl9kYXRhdHlwZXNQYWNrYWdlLk1BUF9NRVRBX0RBVEFfX1JFU09MVVRJT046CisJCQkJcmV0dXJuIFJFU09MVVRJT05fRURFRkFVTFQgPT0gbnVsbCA/IHJlc29sdXRpb24gIT0gbnVsbCA6ICFSRVNPTFVUSU9OX0VERUZBVUxULmVxdWFscyhyZXNvbHV0aW9uKTsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuTUFQX01FVEFfREFUQV9fV0lEVEg6CisJCQkJcmV0dXJuIFdJRFRIX0VERUZBVUxUID09IG51bGwgPyB3aWR0aCAhPSBudWxsIDogIVdJRFRIX0VERUZBVUxULmVxdWFscyh3aWR0aCk7CisJCQljYXNlIE5hdl9kYXRhdHlwZXNQYWNrYWdlLk1BUF9NRVRBX0RBVEFfX09SSUdJTjoKKwkJCQlyZXR1cm4gb3JpZ2luICE9IG51bGw7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CisJCWlmIChlSXNQcm94eSgpKSByZXR1cm4gc3VwZXIudG9TdHJpbmcoKTsKKworCQlTdHJpbmdCdWZmZXIgcmVzdWx0ID0gbmV3IFN0cmluZ0J1ZmZlcihzdXBlci50b1N0cmluZygpKTsKKwkJcmVzdWx0LmFwcGVuZCgiIChtYXBfbG9hZF90aW1lOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChtYXBfbG9hZF90aW1lKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCByZXNvbHV0aW9uOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChyZXNvbHV0aW9uKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCB3aWR0aDogIik7CisJCXJlc3VsdC5hcHBlbmQod2lkdGgpOworCQlyZXN1bHQuYXBwZW5kKCcpJyk7CisJCXJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKKwl9CisKK30gLy8gTWFwTWV0YURhdGFJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWUwOWZjMgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9OYXZfZGF0YXR5cGVzRmFjdG9yeUltcGwuamF2YQpAQCAtMCwwICsxLDE0MiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVGYWN0b3J5SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUucGx1Z2luLkVjb3JlUGx1Z2luOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLkdyaWRDZWxsczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5NYXBNZXRhRGF0YTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5OYXZfZGF0YXR5cGVzRmFjdG9yeTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5OYXZfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5PY2N1cGFuY3lHcmlkOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk9kb21ldHJ5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLlBhdGg7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCA8Yj5GYWN0b3J5PC9iPi4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgTmF2X2RhdGF0eXBlc0ZhY3RvcnlJbXBsIGV4dGVuZHMgRUZhY3RvcnlJbXBsIGltcGxlbWVudHMgTmF2X2RhdGF0eXBlc0ZhY3RvcnkgeworCS8qKgorCSAqIENyZWF0ZXMgdGhlIGRlZmF1bHQgZmFjdG9yeSBpbXBsZW1lbnRhdGlvbi4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIE5hdl9kYXRhdHlwZXNGYWN0b3J5IGluaXQoKSB7CisJCXRyeSB7CisJCQlOYXZfZGF0YXR5cGVzRmFjdG9yeSB0aGVOYXZfZGF0YXR5cGVzRmFjdG9yeSA9IChOYXZfZGF0YXR5cGVzRmFjdG9yeSlFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFRmFjdG9yeShOYXZfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKTsKKwkJCWlmICh0aGVOYXZfZGF0YXR5cGVzRmFjdG9yeSAhPSBudWxsKSB7CisJCQkJcmV0dXJuIHRoZU5hdl9kYXRhdHlwZXNGYWN0b3J5OworCQkJfQorCQl9CisJCWNhdGNoIChFeGNlcHRpb24gZXhjZXB0aW9uKSB7CisJCQlFY29yZVBsdWdpbi5JTlNUQU5DRS5sb2coZXhjZXB0aW9uKTsKKwkJfQorCQlyZXR1cm4gbmV3IE5hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbCgpOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIGZhY3RvcnkuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgRU9iamVjdCBjcmVhdGUoRUNsYXNzIGVDbGFzcykgeworCQlzd2l0Y2ggKGVDbGFzcy5nZXRDbGFzc2lmaWVySUQoKSkgeworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5QQVRIOiByZXR1cm4gY3JlYXRlUGF0aCgpOworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRSWTogcmV0dXJuIGNyZWF0ZU9kb21ldHJ5KCk7CisJCQljYXNlIE5hdl9kYXRhdHlwZXNQYWNrYWdlLk1BUF9NRVRBX0RBVEE6IHJldHVybiBjcmVhdGVNYXBNZXRhRGF0YSgpOworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5PQ0NVUEFOQ1lfR1JJRDogcmV0dXJuIGNyZWF0ZU9jY3VwYW5jeUdyaWQoKTsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuR1JJRF9DRUxMUzogcmV0dXJuIGNyZWF0ZUdyaWRDZWxscygpOworCQkJZGVmYXVsdDoKKwkJCQl0aHJvdyBuZXcgSWxsZWdhbEFyZ3VtZW50RXhjZXB0aW9uKCJUaGUgY2xhc3MgJyIgKyBlQ2xhc3MuZ2V0TmFtZSgpICsgIicgaXMgbm90IGEgdmFsaWQgY2xhc3NpZmllciIpOworCQl9CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFBhdGggY3JlYXRlUGF0aCgpIHsKKwkJUGF0aEltcGwgcGF0aCA9IG5ldyBQYXRoSW1wbCgpOworCQlyZXR1cm4gcGF0aDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2RvbWV0cnkgY3JlYXRlT2RvbWV0cnkoKSB7CisJCU9kb21ldHJ5SW1wbCBvZG9tZXRyeSA9IG5ldyBPZG9tZXRyeUltcGwoKTsKKwkJcmV0dXJuIG9kb21ldHJ5OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBNYXBNZXRhRGF0YSBjcmVhdGVNYXBNZXRhRGF0YSgpIHsKKwkJTWFwTWV0YURhdGFJbXBsIG1hcE1ldGFEYXRhID0gbmV3IE1hcE1ldGFEYXRhSW1wbCgpOworCQlyZXR1cm4gbWFwTWV0YURhdGE7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9jY3VwYW5jeUdyaWQgY3JlYXRlT2NjdXBhbmN5R3JpZCgpIHsKKwkJT2NjdXBhbmN5R3JpZEltcGwgb2NjdXBhbmN5R3JpZCA9IG5ldyBPY2N1cGFuY3lHcmlkSW1wbCgpOworCQlyZXR1cm4gb2NjdXBhbmN5R3JpZDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgR3JpZENlbGxzIGNyZWF0ZUdyaWRDZWxscygpIHsKKwkJR3JpZENlbGxzSW1wbCBncmlkQ2VsbHMgPSBuZXcgR3JpZENlbGxzSW1wbCgpOworCQlyZXR1cm4gZ3JpZENlbGxzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOYXZfZGF0YXR5cGVzUGFja2FnZSBnZXROYXZfZGF0YXR5cGVzUGFja2FnZSgpIHsKKwkJcmV0dXJuIChOYXZfZGF0YXR5cGVzUGFja2FnZSlnZXRFUGFja2FnZSgpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGRlcHJlY2F0ZWQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQERlcHJlY2F0ZWQKKwlwdWJsaWMgc3RhdGljIE5hdl9kYXRhdHlwZXNQYWNrYWdlIGdldFBhY2thZ2UoKSB7CisJCXJldHVybiBOYXZfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0U7CisJfQorCit9IC8vIE5hdl9kYXRhdHlwZXNGYWN0b3J5SW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy9pbXBsL05hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM5ODNjM2IKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmphdmEKQEAgLTAsMCArMSw0ODUgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLlJvYm90TUxQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5pbXBsLlJvYm90TUxQYWNrYWdlSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuYWN0aW9ubGliX2RhdGF0eXBlcy5pbXBsLkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5pbXBsLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuaW1wbC5HZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5HcmlkQ2VsbHM7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTWFwTWV0YURhdGE7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc0ZhY3Rvcnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuT2NjdXBhbmN5R3JpZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5PZG9tZXRyeTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5QYXRoOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLk9hcnAxX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuaW1wbC5PYXJwMV9kYXRhdHlwZXNQYWNrYWdlSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuVU1MUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPlBhY2thZ2U8L2I+LgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBOYXZfZGF0YXR5cGVzUGFja2FnZUltcGwgZXh0ZW5kcyBFUGFja2FnZUltcGwgaW1wbGVtZW50cyBOYXZfZGF0YXR5cGVzUGFja2FnZSB7CisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgcGF0aEVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBvZG9tZXRyeUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBtYXBNZXRhRGF0YUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBvY2N1cGFuY3lHcmlkRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGdyaWRDZWxsc0VDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSBtb2RlbCA8Yj5QYWNrYWdlPC9iPiwgcmVnaXN0ZXJlZCB3aXRoCisJICoge0BsaW5rIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZS5SZWdpc3RyeSBFUGFja2FnZS5SZWdpc3RyeX0gYnkgdGhlIHBhY2thZ2UKKwkgKiBwYWNrYWdlIFVSSSB2YWx1ZS4KKwkgKiA8cD5Ob3RlOiB0aGUgY29ycmVjdCB3YXkgdG8gY3JlYXRlIHRoZSBwYWNrYWdlIGlzIHZpYSB0aGUgc3RhdGljCisJICogZmFjdG9yeSBtZXRob2Qge0BsaW5rICNpbml0IGluaXQoKX0sIHdoaWNoIGFsc28gcGVyZm9ybXMKKwkgKiBpbml0aWFsaXphdGlvbiBvZiB0aGUgcGFja2FnZSwgb3IgcmV0dXJucyB0aGUgcmVnaXN0ZXJlZCBwYWNrYWdlLAorCSAqIGlmIG9uZSBhbHJlYWR5IGV4aXN0cy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZS5SZWdpc3RyeQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2UjZU5TX1VSSQorCSAqIEBzZWUgI2luaXQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIE5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbCgpIHsKKwkJc3VwZXIoZU5TX1VSSSwgTmF2X2RhdGF0eXBlc0ZhY3RvcnkuZUlOU1RBTkNFKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIHN0YXRpYyBib29sZWFuIGlzSW5pdGVkID0gZmFsc2U7CisKKwkvKioKKwkgKiBDcmVhdGVzLCByZWdpc3RlcnMsIGFuZCBpbml0aWFsaXplcyB0aGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoaXMgbW9kZWwsIGFuZCBmb3IgYW55IG90aGVycyB1cG9uIHdoaWNoIGl0IGRlcGVuZHMuCisJICoKKwkgKiA8cD4KKwkgKiBUaGlzIG1ldGhvZCBpcyB1c2VkIHRvIGluaXRpYWxpemUge0BsaW5rIE5hdl9kYXRhdHlwZXNQYWNrYWdlI2VJTlNUQU5DRX0gd2hlbiB0aGF0IGZpZWxkIGlzIGFjY2Vzc2VkLiBDbGllbnRzIHNob3VsZCBub3QgaW52b2tlIGl0IGRpcmVjdGx5LiBJbnN0ZWFkLCB0aGV5IHNob3VsZCBzaW1wbHkgYWNjZXNzIHRoYXQgZmllbGQgdG8gb2J0YWluIHRoZSBwYWNrYWdlLiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPiA8IS0tIGVuZC11c2VyLWRvYworCSAqIC0tPgorCSAqCisJICogQHNlZSAjZU5TX1VSSQorCSAqIEBzZWUgI2NyZWF0ZVBhY2thZ2VDb250ZW50cygpCisJICogQHNlZSAjaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgTmF2X2RhdGF0eXBlc1BhY2thZ2UgaW5pdCgpIHsKKwkJaWYgKGlzSW5pdGVkKSByZXR1cm4gKE5hdl9kYXRhdHlwZXNQYWNrYWdlKUVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKE5hdl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpOworCisJCS8vIE9idGFpbiBvciBjcmVhdGUgYW5kIHJlZ2lzdGVyIHBhY2thZ2UKKwkJTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZU5hdl9kYXRhdHlwZXNQYWNrYWdlID0gKE5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0KGVOU19VUkkpIGluc3RhbmNlb2YgTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0KGVOU19VUkkpIDogbmV3IE5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbCgpKTsKKworCQlpc0luaXRlZCA9IHRydWU7CisKKwkJLy8gSW5pdGlhbGl6ZSBzaW1wbGUgZGVwZW5kZW5jaWVzCisJCVVNTFBhY2thZ2UuZUlOU1RBTkNFLmVDbGFzcygpOworCisJCS8vIE9idGFpbiBvciBjcmVhdGUgYW5kIHJlZ2lzdGVyIGludGVyZGVwZW5kZW5jaWVzCisJCVJvYm90TUxQYWNrYWdlSW1wbCB0aGVSb2JvdE1MUGFja2FnZSA9IChSb2JvdE1MUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKFJvYm90TUxQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgUm9ib3RNTFBhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoUm9ib3RNTFBhY2thZ2UuZU5TX1VSSSkgOiBSb2JvdE1MUGFja2FnZS5lSU5TVEFOQ0UpOworCQlEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZURpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZSA9IChEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIDogRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRSk7CisJCUdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZUdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UgPSAoR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgOiBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRSk7CisJCVNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCB0aGVTZW5zb3JfZGF0YXR5cGVzUGFja2FnZSA9IChTZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgOiBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UpOworCQlBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwgdGhlQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UgPSAoQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIDogQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFKTsKKwkJT2FycDFfZGF0YXR5cGVzUGFja2FnZUltcGwgdGhlT2FycDFfZGF0YXR5cGVzUGFja2FnZSA9IChPYXJwMV9kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoT2FycDFfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIE9hcnAxX2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoT2FycDFfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSA6IE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFKTsKKwkJT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGwgdGhlT2FycDRfZGF0YXR5cGVzUGFja2FnZSA9IChPYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoT2FycDRfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoT2FycDRfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSA6IE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFKTsKKwkJU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlID0gKFN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoU3RkX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBTdGRfZGF0YXR5cGVzUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShTdGRfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSA6IFN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRSk7CisKKwkJLy8gQ3JlYXRlIHBhY2thZ2UgbWV0YS1kYXRhIG9iamVjdHMKKwkJdGhlTmF2X2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZVJvYm90TUxQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZUdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZVNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlT2FycDFfZGF0YXR5cGVzUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlT2FycDRfZGF0YXR5cGVzUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisKKwkJLy8gSW5pdGlhbGl6ZSBjcmVhdGVkIG1ldGEtZGF0YQorCQl0aGVOYXZfZGF0YXR5cGVzUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZVJvYm90TUxQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZVNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlT2FycDRfZGF0YXR5cGVzUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKworCQkvLyBNYXJrIG1ldGEtZGF0YSB0byBpbmRpY2F0ZSBpdCBjYW4ndCBiZSBjaGFuZ2VkCisJCXRoZU5hdl9kYXRhdHlwZXNQYWNrYWdlLmZyZWV6ZSgpOworCisgIAorCQkvLyBVcGRhdGUgdGhlIHJlZ2lzdHJ5IGFuZCByZXR1cm4gdGhlIHBhY2thZ2UKKwkJRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UucHV0KE5hdl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkksIHRoZU5hdl9kYXRhdHlwZXNQYWNrYWdlKTsKKwkJcmV0dXJuIHRoZU5hdl9kYXRhdHlwZXNQYWNrYWdlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0UGF0aCgpIHsKKwkJcmV0dXJuIHBhdGhFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0UGF0aF9IZWFkZXIoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlwYXRoRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0UGF0aF9Qb3NlcygpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKXBhdGhFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldE9kb21ldHJ5KCkgeworCQlyZXR1cm4gb2RvbWV0cnlFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0T2RvbWV0cnlfSGVhZGVyKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2Upb2RvbWV0cnlFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRPZG9tZXRyeV9DaGlsZF9mcmFtZV9pZCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKW9kb21ldHJ5RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0T2RvbWV0cnlfUG9zZSgpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKW9kb21ldHJ5RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMik7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0T2RvbWV0cnlfVHdpc3QoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlvZG9tZXRyeUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDMpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0TWFwTWV0YURhdGEoKSB7CisJCXJldHVybiBtYXBNZXRhRGF0YUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRNYXBNZXRhRGF0YV9NYXBfbG9hZF90aW1lKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpbWFwTWV0YURhdGFFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRNYXBNZXRhRGF0YV9SZXNvbHV0aW9uKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpbWFwTWV0YURhdGFFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRNYXBNZXRhRGF0YV9XaWR0aCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKW1hcE1ldGFEYXRhRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMik7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0TWFwTWV0YURhdGFfT3JpZ2luKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpbWFwTWV0YURhdGFFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldE9jY3VwYW5jeUdyaWQoKSB7CisJCXJldHVybiBvY2N1cGFuY3lHcmlkRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldE9jY3VwYW5jeUdyaWRfSGVhZGVyKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2Upb2NjdXBhbmN5R3JpZEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldE9jY3VwYW5jeUdyaWRfSW5mbygpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKW9jY3VwYW5jeUdyaWRFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRPY2N1cGFuY3lHcmlkX0RhdGEoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlvY2N1cGFuY3lHcmlkRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMik7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRHcmlkQ2VsbHMoKSB7CisJCXJldHVybiBncmlkQ2VsbHNFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0R3JpZENlbGxzX0hlYWRlcigpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKWdyaWRDZWxsc0VDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldEdyaWRDZWxsc19DZWxsX3dpZHRoKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpZ3JpZENlbGxzRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0R3JpZENlbGxzX0NlbGxfaGVpZ2h0KCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpZ3JpZENlbGxzRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMik7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0R3JpZENlbGxzX0NlbGxzKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpZ3JpZENlbGxzRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5hdl9kYXRhdHlwZXNGYWN0b3J5IGdldE5hdl9kYXRhdHlwZXNGYWN0b3J5KCkgeworCQlyZXR1cm4gKE5hdl9kYXRhdHlwZXNGYWN0b3J5KWdldEVGYWN0b3J5SW5zdGFuY2UoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIGJvb2xlYW4gaXNDcmVhdGVkID0gZmFsc2U7CisKKwkvKioKKwkgKiBDcmVhdGVzIHRoZSBtZXRhLW1vZGVsIG9iamVjdHMgZm9yIHRoZSBwYWNrYWdlLiAgVGhpcyBtZXRob2QgaXMKKwkgKiBndWFyZGVkIHRvIGhhdmUgbm8gYWZmZWN0IG9uIGFueSBpbnZvY2F0aW9uIGJ1dCBpdHMgZmlyc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgY3JlYXRlUGFja2FnZUNvbnRlbnRzKCkgeworCQlpZiAoaXNDcmVhdGVkKSByZXR1cm47CisJCWlzQ3JlYXRlZCA9IHRydWU7CisKKwkJLy8gQ3JlYXRlIGNsYXNzZXMgYW5kIHRoZWlyIGZlYXR1cmVzCisJCXBhdGhFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoUEFUSCk7CisJCWNyZWF0ZUVSZWZlcmVuY2UocGF0aEVDbGFzcywgUEFUSF9fSEVBREVSKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShwYXRoRUNsYXNzLCBQQVRIX19QT1NFUyk7CisKKwkJb2RvbWV0cnlFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoT0RPTUVUUlkpOworCQljcmVhdGVFUmVmZXJlbmNlKG9kb21ldHJ5RUNsYXNzLCBPRE9NRVRSWV9fSEVBREVSKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShvZG9tZXRyeUVDbGFzcywgT0RPTUVUUllfX0NISUxEX0ZSQU1FX0lEKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShvZG9tZXRyeUVDbGFzcywgT0RPTUVUUllfX1BPU0UpOworCQljcmVhdGVFUmVmZXJlbmNlKG9kb21ldHJ5RUNsYXNzLCBPRE9NRVRSWV9fVFdJU1QpOworCisJCW1hcE1ldGFEYXRhRUNsYXNzID0gY3JlYXRlRUNsYXNzKE1BUF9NRVRBX0RBVEEpOworCQljcmVhdGVFQXR0cmlidXRlKG1hcE1ldGFEYXRhRUNsYXNzLCBNQVBfTUVUQV9EQVRBX19NQVBfTE9BRF9USU1FKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShtYXBNZXRhRGF0YUVDbGFzcywgTUFQX01FVEFfREFUQV9fUkVTT0xVVElPTik7CisJCWNyZWF0ZUVBdHRyaWJ1dGUobWFwTWV0YURhdGFFQ2xhc3MsIE1BUF9NRVRBX0RBVEFfX1dJRFRIKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShtYXBNZXRhRGF0YUVDbGFzcywgTUFQX01FVEFfREFUQV9fT1JJR0lOKTsKKworCQlvY2N1cGFuY3lHcmlkRUNsYXNzID0gY3JlYXRlRUNsYXNzKE9DQ1VQQU5DWV9HUklEKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShvY2N1cGFuY3lHcmlkRUNsYXNzLCBPQ0NVUEFOQ1lfR1JJRF9fSEVBREVSKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShvY2N1cGFuY3lHcmlkRUNsYXNzLCBPQ0NVUEFOQ1lfR1JJRF9fSU5GTyk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUob2NjdXBhbmN5R3JpZEVDbGFzcywgT0NDVVBBTkNZX0dSSURfX0RBVEEpOworCisJCWdyaWRDZWxsc0VDbGFzcyA9IGNyZWF0ZUVDbGFzcyhHUklEX0NFTExTKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShncmlkQ2VsbHNFQ2xhc3MsIEdSSURfQ0VMTFNfX0hFQURFUik7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoZ3JpZENlbGxzRUNsYXNzLCBHUklEX0NFTExTX19DRUxMX1dJRFRIKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShncmlkQ2VsbHNFQ2xhc3MsIEdSSURfQ0VMTFNfX0NFTExfSEVJR0hUKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShncmlkQ2VsbHNFQ2xhc3MsIEdSSURfQ0VMTFNfX0NFTExTKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIGJvb2xlYW4gaXNJbml0aWFsaXplZCA9IGZhbHNlOworCisJLyoqCisJICogQ29tcGxldGUgdGhlIGluaXRpYWxpemF0aW9uIG9mIHRoZSBwYWNrYWdlIGFuZCBpdHMgbWV0YS1tb2RlbC4gIFRoaXMKKwkgKiBtZXRob2QgaXMgZ3VhcmRlZCB0byBoYXZlIG5vIGFmZmVjdCBvbiBhbnkgaW52b2NhdGlvbiBidXQgaXRzIGZpcnN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIGluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKSB7CisJCWlmIChpc0luaXRpYWxpemVkKSByZXR1cm47CisJCWlzSW5pdGlhbGl6ZWQgPSB0cnVlOworCisJCS8vIEluaXRpYWxpemUgcGFja2FnZQorCQlzZXROYW1lKGVOQU1FKTsKKwkJc2V0TnNQcmVmaXgoZU5TX1BSRUZJWCk7CisJCXNldE5zVVJJKGVOU19VUkkpOworCisJCS8vIE9idGFpbiBvdGhlciBkZXBlbmRlbnQgcGFja2FnZXMKKwkJU3RkX2RhdGF0eXBlc1BhY2thZ2UgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UgPSAoU3RkX2RhdGF0eXBlc1BhY2thZ2UpRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoU3RkX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSk7CisJCUdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UgdGhlR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSA9IChHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlKUVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSk7CisKKwkJLy8gQ3JlYXRlIHR5cGUgcGFyYW1ldGVycworCisJCS8vIFNldCBib3VuZHMgZm9yIHR5cGUgcGFyYW1ldGVycworCisJCS8vIEFkZCBzdXBlcnR5cGVzIHRvIGNsYXNzZXMKKworCQkvLyBJbml0aWFsaXplIGNsYXNzZXMsIGZlYXR1cmVzLCBhbmQgb3BlcmF0aW9uczsgYWRkIHBhcmFtZXRlcnMKKwkJaW5pdEVDbGFzcyhwYXRoRUNsYXNzLCBQYXRoLmNsYXNzLCAiUGF0aCIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0UGF0aF9IZWFkZXIoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0SGVhZGVyKCksIG51bGwsICJoZWFkZXIiLCBudWxsLCAxLCAxLCBQYXRoLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0UGF0aF9Qb3NlcygpLCB0aGVHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmdldFBvc2VTdGFtcGVkKCksIG51bGwsICJwb3NlcyIsIG51bGwsIDAsIC0xLCBQYXRoLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKG9kb21ldHJ5RUNsYXNzLCBPZG9tZXRyeS5jbGFzcywgIk9kb21ldHJ5IiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXRPZG9tZXRyeV9IZWFkZXIoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0SGVhZGVyKCksIG51bGwsICJoZWFkZXIiLCBudWxsLCAxLCAxLCBPZG9tZXRyeS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldE9kb21ldHJ5X0NoaWxkX2ZyYW1lX2lkKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFN0cmluZygpLCAiY2hpbGRfZnJhbWVfaWQiLCBudWxsLCAxLCAxLCBPZG9tZXRyeS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFUmVmZXJlbmNlKGdldE9kb21ldHJ5X1Bvc2UoKSwgdGhlR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5nZXRQb3NlV2l0aENvdmFyaWFuY2UoKSwgbnVsbCwgInBvc2UiLCBudWxsLCAxLCAxLCBPZG9tZXRyeS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFUmVmZXJlbmNlKGdldE9kb21ldHJ5X1R3aXN0KCksIHRoZUdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuZ2V0VHdpc3RXaXRoQ292YXJpYW5jZSgpLCBudWxsLCAidHdpc3QiLCBudWxsLCAxLCAxLCBPZG9tZXRyeS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhtYXBNZXRhRGF0YUVDbGFzcywgTWFwTWV0YURhdGEuY2xhc3MsICJNYXBNZXRhRGF0YSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0TWFwTWV0YURhdGFfTWFwX2xvYWRfdGltZSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRUaW1lKCksICJtYXBfbG9hZF90aW1lIiwgbnVsbCwgMSwgMSwgTWFwTWV0YURhdGEuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRNYXBNZXRhRGF0YV9SZXNvbHV0aW9uKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0MzIoKSwgInJlc29sdXRpb24iLCBudWxsLCAxLCAxLCBNYXBNZXRhRGF0YS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldE1hcE1ldGFEYXRhX1dpZHRoKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFVJbnQzMigpLCAid2lkdGgiLCBudWxsLCAxLCAxLCBNYXBNZXRhRGF0YS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFUmVmZXJlbmNlKGdldE1hcE1ldGFEYXRhX09yaWdpbigpLCB0aGVHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmdldFBvc2UoKSwgbnVsbCwgIm9yaWdpbiIsIG51bGwsIDEsIDEsIE1hcE1ldGFEYXRhLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKG9jY3VwYW5jeUdyaWRFQ2xhc3MsIE9jY3VwYW5jeUdyaWQuY2xhc3MsICJPY2N1cGFuY3lHcmlkIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXRPY2N1cGFuY3lHcmlkX0hlYWRlcigpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRIZWFkZXIoKSwgbnVsbCwgImhlYWRlciIsIG51bGwsIDEsIDEsIE9jY3VwYW5jeUdyaWQuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RVJlZmVyZW5jZShnZXRPY2N1cGFuY3lHcmlkX0luZm8oKSwgdGhpcy5nZXRNYXBNZXRhRGF0YSgpLCBudWxsLCAiaW5mbyIsIG51bGwsIDEsIDEsIE9jY3VwYW5jeUdyaWQuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRPY2N1cGFuY3lHcmlkX0RhdGEoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0SW50OCgpLCAiZGF0YSIsIG51bGwsIDAsIC0xLCBPY2N1cGFuY3lHcmlkLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKGdyaWRDZWxsc0VDbGFzcywgR3JpZENlbGxzLmNsYXNzLCAiR3JpZENlbGxzIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXRHcmlkQ2VsbHNfSGVhZGVyKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEhlYWRlcigpLCBudWxsLCAiaGVhZGVyIiwgbnVsbCwgMSwgMSwgR3JpZENlbGxzLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0R3JpZENlbGxzX0NlbGxfd2lkdGgoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAiY2VsbF93aWR0aCIsIG51bGwsIDEsIDEsIEdyaWRDZWxscy5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEdyaWRDZWxsc19DZWxsX2hlaWdodCgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDMyKCksICJjZWxsX2hlaWdodCIsIG51bGwsIDEsIDEsIEdyaWRDZWxscy5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFUmVmZXJlbmNlKGdldEdyaWRDZWxsc19DZWxscygpLCB0aGVHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmdldFBvaW50KCksIG51bGwsICJjZWxscyIsIG51bGwsIDAsIC0xLCBHcmlkQ2VsbHMuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCS8vIENyZWF0ZSByZXNvdXJjZQorCQljcmVhdGVSZXNvdXJjZShlTlNfVVJJKTsKKwl9CisKK30gLy8gTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvT2NjdXBhbmN5R3JpZEltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9PY2N1cGFuY3lHcmlkSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjMwZjk2NDgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvT2NjdXBhbmN5R3JpZEltcGwuamF2YQpAQCAtMCwwICsxLDI5NSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IGphdmEudXRpbC5Db2xsZWN0aW9uOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbkNoYWluOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLkVEYXRhVHlwZVVuaXF1ZUVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk1hcE1ldGFEYXRhOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk9jY3VwYW5jeUdyaWQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSGVhZGVyOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T2NjdXBhbmN5IEdyaWQ8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuT2NjdXBhbmN5R3JpZEltcGwjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuT2NjdXBhbmN5R3JpZEltcGwjZ2V0SW5mbyA8ZW0+SW5mbzwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5PY2N1cGFuY3lHcmlkSW1wbCNnZXREYXRhIDxlbT5EYXRhPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgT2NjdXBhbmN5R3JpZEltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgT2NjdXBhbmN5R3JpZCB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0SGVhZGVyKCkgPGVtPkhlYWRlcjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SGVhZGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgSGVhZGVyIGhlYWRlcjsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEluZm8oKSA8ZW0+SW5mbzwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SW5mbygpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE1hcE1ldGFEYXRhIGluZm87CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXREYXRhKCkgPGVtPkRhdGE8L2VtPn0nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0RGF0YSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEVMaXN0PE9iamVjdD4gZGF0YTsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBPY2N1cGFuY3lHcmlkSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIE5hdl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLk9DQ1VQQU5DWV9HUklEOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBIZWFkZXIgZ2V0SGVhZGVyKCkgeworCQlyZXR1cm4gaGVhZGVyOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBiYXNpY1NldEhlYWRlcihIZWFkZXIgbmV3SGVhZGVyLCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCUhlYWRlciBvbGRIZWFkZXIgPSBoZWFkZXI7CisJCWhlYWRlciA9IG5ld0hlYWRlcjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgTmF2X2RhdGF0eXBlc1BhY2thZ2UuT0NDVVBBTkNZX0dSSURfX0hFQURFUiwgb2xkSGVhZGVyLCBuZXdIZWFkZXIpOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEhlYWRlcihIZWFkZXIgbmV3SGVhZGVyKSB7CisJCWlmIChuZXdIZWFkZXIgIT0gaGVhZGVyKSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChoZWFkZXIgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpaGVhZGVyKS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gTmF2X2RhdGF0eXBlc1BhY2thZ2UuT0NDVVBBTkNZX0dSSURfX0hFQURFUiwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3SGVhZGVyICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld0hlYWRlcikuZUludmVyc2VBZGQodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIE5hdl9kYXRhdHlwZXNQYWNrYWdlLk9DQ1VQQU5DWV9HUklEX19IRUFERVIsIG51bGwsIG1zZ3MpOworCQkJbXNncyA9IGJhc2ljU2V0SGVhZGVyKG5ld0hlYWRlciwgbXNncyk7CisJCQlpZiAobXNncyAhPSBudWxsKSBtc2dzLmRpc3BhdGNoKCk7CisJCX0KKwkJZWxzZSBpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBOYXZfZGF0YXR5cGVzUGFja2FnZS5PQ0NVUEFOQ1lfR1JJRF9fSEVBREVSLCBuZXdIZWFkZXIsIG5ld0hlYWRlcikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBNYXBNZXRhRGF0YSBnZXRJbmZvKCkgeworCQlyZXR1cm4gaW5mbzsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRJbmZvKE1hcE1ldGFEYXRhIG5ld0luZm8sIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJTWFwTWV0YURhdGEgb2xkSW5mbyA9IGluZm87CisJCWluZm8gPSBuZXdJbmZvOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpIHsKKwkJCUVOb3RpZmljYXRpb25JbXBsIG5vdGlmaWNhdGlvbiA9IG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBOYXZfZGF0YXR5cGVzUGFja2FnZS5PQ0NVUEFOQ1lfR1JJRF9fSU5GTywgb2xkSW5mbywgbmV3SW5mbyk7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0SW5mbyhNYXBNZXRhRGF0YSBuZXdJbmZvKSB7CisJCWlmIChuZXdJbmZvICE9IGluZm8pIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKGluZm8gIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpaW5mbykuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIE5hdl9kYXRhdHlwZXNQYWNrYWdlLk9DQ1VQQU5DWV9HUklEX19JTkZPLCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdJbmZvICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld0luZm8pLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBOYXZfZGF0YXR5cGVzUGFja2FnZS5PQ0NVUEFOQ1lfR1JJRF9fSU5GTywgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRJbmZvKG5ld0luZm8sIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgTmF2X2RhdGF0eXBlc1BhY2thZ2UuT0NDVVBBTkNZX0dSSURfX0lORk8sIG5ld0luZm8sIG5ld0luZm8pKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUxpc3Q8T2JqZWN0PiBnZXREYXRhKCkgeworCQlpZiAoZGF0YSA9PSBudWxsKSB7CisJCQlkYXRhID0gbmV3IEVEYXRhVHlwZVVuaXF1ZUVMaXN0PE9iamVjdD4oT2JqZWN0LmNsYXNzLCB0aGlzLCBOYXZfZGF0YXR5cGVzUGFja2FnZS5PQ0NVUEFOQ1lfR1JJRF9fREFUQSk7CisJCX0KKwkJcmV0dXJuIGRhdGE7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGVJbnZlcnNlUmVtb3ZlKEludGVybmFsRU9iamVjdCBvdGhlckVuZCwgaW50IGZlYXR1cmVJRCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5PQ0NVUEFOQ1lfR1JJRF9fSEVBREVSOgorCQkJCXJldHVybiBiYXNpY1NldEhlYWRlcihudWxsLCBtc2dzKTsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuT0NDVVBBTkNZX0dSSURfX0lORk86CisJCQkJcmV0dXJuIGJhc2ljU2V0SW5mbyhudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5PQ0NVUEFOQ1lfR1JJRF9fSEVBREVSOgorCQkJCXJldHVybiBnZXRIZWFkZXIoKTsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuT0NDVVBBTkNZX0dSSURfX0lORk86CisJCQkJcmV0dXJuIGdldEluZm8oKTsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuT0NDVVBBTkNZX0dSSURfX0RBVEE6CisJCQkJcmV0dXJuIGdldERhdGEoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAU3VwcHJlc3NXYXJuaW5ncygidW5jaGVja2VkIikKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5PQ0NVUEFOQ1lfR1JJRF9fSEVBREVSOgorCQkJCXNldEhlYWRlcigoSGVhZGVyKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIE5hdl9kYXRhdHlwZXNQYWNrYWdlLk9DQ1VQQU5DWV9HUklEX19JTkZPOgorCQkJCXNldEluZm8oKE1hcE1ldGFEYXRhKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIE5hdl9kYXRhdHlwZXNQYWNrYWdlLk9DQ1VQQU5DWV9HUklEX19EQVRBOgorCQkJCWdldERhdGEoKS5jbGVhcigpOworCQkJCWdldERhdGEoKS5hZGRBbGwoKENvbGxlY3Rpb248PyBleHRlbmRzIE9iamVjdD4pbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE5hdl9kYXRhdHlwZXNQYWNrYWdlLk9DQ1VQQU5DWV9HUklEX19IRUFERVI6CisJCQkJc2V0SGVhZGVyKChIZWFkZXIpbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5PQ0NVUEFOQ1lfR1JJRF9fSU5GTzoKKwkJCQlzZXRJbmZvKChNYXBNZXRhRGF0YSludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIE5hdl9kYXRhdHlwZXNQYWNrYWdlLk9DQ1VQQU5DWV9HUklEX19EQVRBOgorCQkJCWdldERhdGEoKS5jbGVhcigpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5PQ0NVUEFOQ1lfR1JJRF9fSEVBREVSOgorCQkJCXJldHVybiBoZWFkZXIgIT0gbnVsbDsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuT0NDVVBBTkNZX0dSSURfX0lORk86CisJCQkJcmV0dXJuIGluZm8gIT0gbnVsbDsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuT0NDVVBBTkNZX0dSSURfX0RBVEE6CisJCQkJcmV0dXJuIGRhdGEgIT0gbnVsbCAmJiAhZGF0YS5pc0VtcHR5KCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CisJCWlmIChlSXNQcm94eSgpKSByZXR1cm4gc3VwZXIudG9TdHJpbmcoKTsKKworCQlTdHJpbmdCdWZmZXIgcmVzdWx0ID0gbmV3IFN0cmluZ0J1ZmZlcihzdXBlci50b1N0cmluZygpKTsKKwkJcmVzdWx0LmFwcGVuZCgiIChkYXRhOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChkYXRhKTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIE9jY3VwYW5jeUdyaWRJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvT2RvbWV0cnlJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvT2RvbWV0cnlJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2UxN2JjZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9PZG9tZXRyeUltcGwuamF2YQpAQCAtMCwwICsxLDM3NSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb25DaGFpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9zZVdpdGhDb3ZhcmlhbmNlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuVHdpc3RXaXRoQ292YXJpYW5jZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5OYXZfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5PZG9tZXRyeTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5IZWFkZXI7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5PZG9tZXRyeTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5PZG9tZXRyeUltcGwjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuT2RvbWV0cnlJbXBsI2dldENoaWxkX2ZyYW1lX2lkIDxlbT5DaGlsZCBmcmFtZSBpZDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5PZG9tZXRyeUltcGwjZ2V0UG9zZSA8ZW0+UG9zZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5PZG9tZXRyeUltcGwjZ2V0VHdpc3QgPGVtPlR3aXN0PC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgT2RvbWV0cnlJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIE9kb21ldHJ5IHsKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRIZWFkZXIoKSA8ZW0+SGVhZGVyPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRIZWFkZXIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBIZWFkZXIgaGVhZGVyOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldENoaWxkX2ZyYW1lX2lkKCkgPGVtPkNoaWxkIGZyYW1lIGlkPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRDaGlsZF9mcmFtZV9pZCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgQ0hJTERfRlJBTUVfSURfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0Q2hpbGRfZnJhbWVfaWQoKSA8ZW0+Q2hpbGQgZnJhbWUgaWQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldENoaWxkX2ZyYW1lX2lkKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IGNoaWxkX2ZyYW1lX2lkID0gQ0hJTERfRlJBTUVfSURfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRQb3NlKCkgPGVtPlBvc2U8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFBvc2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBQb3NlV2l0aENvdmFyaWFuY2UgcG9zZTsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFR3aXN0KCkgPGVtPlR3aXN0PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRUd2lzdCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFR3aXN0V2l0aENvdmFyaWFuY2UgdHdpc3Q7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2RvbWV0cnlJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gTmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuT0RPTUVUUlk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEhlYWRlciBnZXRIZWFkZXIoKSB7CisJCXJldHVybiBoZWFkZXI7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0SGVhZGVyKEhlYWRlciBuZXdIZWFkZXIsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJSGVhZGVyIG9sZEhlYWRlciA9IGhlYWRlcjsKKwkJaGVhZGVyID0gbmV3SGVhZGVyOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpIHsKKwkJCUVOb3RpZmljYXRpb25JbXBsIG5vdGlmaWNhdGlvbiA9IG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBOYXZfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRSWV9fSEVBREVSLCBvbGRIZWFkZXIsIG5ld0hlYWRlcik7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0SGVhZGVyKEhlYWRlciBuZXdIZWFkZXIpIHsKKwkJaWYgKG5ld0hlYWRlciAhPSBoZWFkZXIpIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKGhlYWRlciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCloZWFkZXIpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBOYXZfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRSWV9fSEVBREVSLCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdIZWFkZXIgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3SGVhZGVyKS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gTmF2X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVUUllfX0hFQURFUiwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRIZWFkZXIobmV3SGVhZGVyLCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE5hdl9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVFJZX19IRUFERVIsIG5ld0hlYWRlciwgbmV3SGVhZGVyKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRDaGlsZF9mcmFtZV9pZCgpIHsKKwkJcmV0dXJuIGNoaWxkX2ZyYW1lX2lkOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldENoaWxkX2ZyYW1lX2lkKE9iamVjdCBuZXdDaGlsZF9mcmFtZV9pZCkgeworCQlPYmplY3Qgb2xkQ2hpbGRfZnJhbWVfaWQgPSBjaGlsZF9mcmFtZV9pZDsKKwkJY2hpbGRfZnJhbWVfaWQgPSBuZXdDaGlsZF9mcmFtZV9pZDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgTmF2X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVUUllfX0NISUxEX0ZSQU1FX0lELCBvbGRDaGlsZF9mcmFtZV9pZCwgY2hpbGRfZnJhbWVfaWQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUG9zZVdpdGhDb3ZhcmlhbmNlIGdldFBvc2UoKSB7CisJCXJldHVybiBwb3NlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBiYXNpY1NldFBvc2UoUG9zZVdpdGhDb3ZhcmlhbmNlIG5ld1Bvc2UsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJUG9zZVdpdGhDb3ZhcmlhbmNlIG9sZFBvc2UgPSBwb3NlOworCQlwb3NlID0gbmV3UG9zZTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgTmF2X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVUUllfX1BPU0UsIG9sZFBvc2UsIG5ld1Bvc2UpOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFBvc2UoUG9zZVdpdGhDb3ZhcmlhbmNlIG5ld1Bvc2UpIHsKKwkJaWYgKG5ld1Bvc2UgIT0gcG9zZSkgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAocG9zZSAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdClwb3NlKS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gTmF2X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVUUllfX1BPU0UsIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld1Bvc2UgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3UG9zZSkuZUludmVyc2VBZGQodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIE5hdl9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVFJZX19QT1NFLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldFBvc2UobmV3UG9zZSwgbXNncyk7CisJCQlpZiAobXNncyAhPSBudWxsKSBtc2dzLmRpc3BhdGNoKCk7CisJCX0KKwkJZWxzZSBpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBOYXZfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRSWV9fUE9TRSwgbmV3UG9zZSwgbmV3UG9zZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUd2lzdFdpdGhDb3ZhcmlhbmNlIGdldFR3aXN0KCkgeworCQlyZXR1cm4gdHdpc3Q7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0VHdpc3QoVHdpc3RXaXRoQ292YXJpYW5jZSBuZXdUd2lzdCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlUd2lzdFdpdGhDb3ZhcmlhbmNlIG9sZFR3aXN0ID0gdHdpc3Q7CisJCXR3aXN0ID0gbmV3VHdpc3Q7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE5hdl9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVFJZX19UV0lTVCwgb2xkVHdpc3QsIG5ld1R3aXN0KTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRUd2lzdChUd2lzdFdpdGhDb3ZhcmlhbmNlIG5ld1R3aXN0KSB7CisJCWlmIChuZXdUd2lzdCAhPSB0d2lzdCkgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAodHdpc3QgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpdHdpc3QpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBOYXZfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRSWV9fVFdJU1QsIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld1R3aXN0ICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld1R3aXN0KS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gTmF2X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVUUllfX1RXSVNULCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldFR3aXN0KG5ld1R3aXN0LCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE5hdl9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVFJZX19UV0lTVCwgbmV3VHdpc3QsIG5ld1R3aXN0KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGVJbnZlcnNlUmVtb3ZlKEludGVybmFsRU9iamVjdCBvdGhlckVuZCwgaW50IGZlYXR1cmVJRCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRSWV9fSEVBREVSOgorCQkJCXJldHVybiBiYXNpY1NldEhlYWRlcihudWxsLCBtc2dzKTsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVUUllfX1BPU0U6CisJCQkJcmV0dXJuIGJhc2ljU2V0UG9zZShudWxsLCBtc2dzKTsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVUUllfX1RXSVNUOgorCQkJCXJldHVybiBiYXNpY1NldFR3aXN0KG51bGwsIG1zZ3MpOworCQl9CisJCXJldHVybiBzdXBlci5lSW52ZXJzZVJlbW92ZShvdGhlckVuZCwgZmVhdHVyZUlELCBtc2dzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE5hdl9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVFJZX19IRUFERVI6CisJCQkJcmV0dXJuIGdldEhlYWRlcigpOworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRSWV9fQ0hJTERfRlJBTUVfSUQ6CisJCQkJcmV0dXJuIGdldENoaWxkX2ZyYW1lX2lkKCk7CisJCQljYXNlIE5hdl9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVFJZX19QT1NFOgorCQkJCXJldHVybiBnZXRQb3NlKCk7CisJCQljYXNlIE5hdl9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVFJZX19UV0lTVDoKKwkJCQlyZXR1cm4gZ2V0VHdpc3QoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRSWV9fSEVBREVSOgorCQkJCXNldEhlYWRlcigoSGVhZGVyKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIE5hdl9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVFJZX19DSElMRF9GUkFNRV9JRDoKKwkJCQlzZXRDaGlsZF9mcmFtZV9pZCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIE5hdl9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVFJZX19QT1NFOgorCQkJCXNldFBvc2UoKFBvc2VXaXRoQ292YXJpYW5jZSluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRSWV9fVFdJU1Q6CisJCQkJc2V0VHdpc3QoKFR3aXN0V2l0aENvdmFyaWFuY2UpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE5hdl9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVFJZX19IRUFERVI6CisJCQkJc2V0SGVhZGVyKChIZWFkZXIpbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRSWV9fQ0hJTERfRlJBTUVfSUQ6CisJCQkJc2V0Q2hpbGRfZnJhbWVfaWQoQ0hJTERfRlJBTUVfSURfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVUUllfX1BPU0U6CisJCQkJc2V0UG9zZSgoUG9zZVdpdGhDb3ZhcmlhbmNlKW51bGwpOworCQkJCXJldHVybjsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVUUllfX1RXSVNUOgorCQkJCXNldFR3aXN0KChUd2lzdFdpdGhDb3ZhcmlhbmNlKW51bGwpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRSWV9fSEVBREVSOgorCQkJCXJldHVybiBoZWFkZXIgIT0gbnVsbDsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVUUllfX0NISUxEX0ZSQU1FX0lEOgorCQkJCXJldHVybiBDSElMRF9GUkFNRV9JRF9FREVGQVVMVCA9PSBudWxsID8gY2hpbGRfZnJhbWVfaWQgIT0gbnVsbCA6ICFDSElMRF9GUkFNRV9JRF9FREVGQVVMVC5lcXVhbHMoY2hpbGRfZnJhbWVfaWQpOworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRSWV9fUE9TRToKKwkJCQlyZXR1cm4gcG9zZSAhPSBudWxsOworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRSWV9fVFdJU1Q6CisJCQkJcmV0dXJuIHR3aXN0ICE9IG51bGw7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CisJCWlmIChlSXNQcm94eSgpKSByZXR1cm4gc3VwZXIudG9TdHJpbmcoKTsKKworCQlTdHJpbmdCdWZmZXIgcmVzdWx0ID0gbmV3IFN0cmluZ0J1ZmZlcihzdXBlci50b1N0cmluZygpKTsKKwkJcmVzdWx0LmFwcGVuZCgiIChjaGlsZF9mcmFtZV9pZDogIik7CisJCXJlc3VsdC5hcHBlbmQoY2hpbGRfZnJhbWVfaWQpOworCQlyZXN1bHQuYXBwZW5kKCcpJyk7CisJCXJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKKwl9CisKK30gLy8gT2RvbWV0cnlJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvUGF0aEltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvaW1wbC9QYXRoSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU4OTgxNTkKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL2ltcGwvUGF0aEltcGwuamF2YQpAQCAtMCwwICsxLDIxNiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IGphdmEudXRpbC5Db2xsZWN0aW9uOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbkNoYWluOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLkVPYmplY3RDb250YWlubWVudEVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLkludGVybmFsRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb3NlU3RhbXBlZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5OYXZfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5QYXRoOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBhdGg8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuUGF0aEltcGwjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuUGF0aEltcGwjZ2V0UG9zZXMgPGVtPlBvc2VzPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgUGF0aEltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgUGF0aCB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0SGVhZGVyKCkgPGVtPkhlYWRlcjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SGVhZGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgSGVhZGVyIGhlYWRlcjsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFBvc2VzKCkgPGVtPlBvc2VzPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFBvc2VzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRUxpc3Q8UG9zZVN0YW1wZWQ+IHBvc2VzOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFBhdGhJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gTmF2X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuUEFUSDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgSGVhZGVyIGdldEhlYWRlcigpIHsKKwkJcmV0dXJuIGhlYWRlcjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRIZWFkZXIoSGVhZGVyIG5ld0hlYWRlciwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlIZWFkZXIgb2xkSGVhZGVyID0gaGVhZGVyOworCQloZWFkZXIgPSBuZXdIZWFkZXI7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE5hdl9kYXRhdHlwZXNQYWNrYWdlLlBBVEhfX0hFQURFUiwgb2xkSGVhZGVyLCBuZXdIZWFkZXIpOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEhlYWRlcihIZWFkZXIgbmV3SGVhZGVyKSB7CisJCWlmIChuZXdIZWFkZXIgIT0gaGVhZGVyKSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChoZWFkZXIgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpaGVhZGVyKS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gTmF2X2RhdGF0eXBlc1BhY2thZ2UuUEFUSF9fSEVBREVSLCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdIZWFkZXIgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3SGVhZGVyKS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gTmF2X2RhdGF0eXBlc1BhY2thZ2UuUEFUSF9fSEVBREVSLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldEhlYWRlcihuZXdIZWFkZXIsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgTmF2X2RhdGF0eXBlc1BhY2thZ2UuUEFUSF9fSEVBREVSLCBuZXdIZWFkZXIsIG5ld0hlYWRlcikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFTGlzdDxQb3NlU3RhbXBlZD4gZ2V0UG9zZXMoKSB7CisJCWlmIChwb3NlcyA9PSBudWxsKSB7CisJCQlwb3NlcyA9IG5ldyBFT2JqZWN0Q29udGFpbm1lbnRFTGlzdDxQb3NlU3RhbXBlZD4oUG9zZVN0YW1wZWQuY2xhc3MsIHRoaXMsIE5hdl9kYXRhdHlwZXNQYWNrYWdlLlBBVEhfX1BPU0VTKTsKKwkJfQorCQlyZXR1cm4gcG9zZXM7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGVJbnZlcnNlUmVtb3ZlKEludGVybmFsRU9iamVjdCBvdGhlckVuZCwgaW50IGZlYXR1cmVJRCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5QQVRIX19IRUFERVI6CisJCQkJcmV0dXJuIGJhc2ljU2V0SGVhZGVyKG51bGwsIG1zZ3MpOworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5QQVRIX19QT1NFUzoKKwkJCQlyZXR1cm4gKChJbnRlcm5hbEVMaXN0PD8+KWdldFBvc2VzKCkpLmJhc2ljUmVtb3ZlKG90aGVyRW5kLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5QQVRIX19IRUFERVI6CisJCQkJcmV0dXJuIGdldEhlYWRlcigpOworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5QQVRIX19QT1NFUzoKKwkJCQlyZXR1cm4gZ2V0UG9zZXMoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAU3VwcHJlc3NXYXJuaW5ncygidW5jaGVja2VkIikKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5QQVRIX19IRUFERVI6CisJCQkJc2V0SGVhZGVyKChIZWFkZXIpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuUEFUSF9fUE9TRVM6CisJCQkJZ2V0UG9zZXMoKS5jbGVhcigpOworCQkJCWdldFBvc2VzKCkuYWRkQWxsKChDb2xsZWN0aW9uPD8gZXh0ZW5kcyBQb3NlU3RhbXBlZD4pbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE5hdl9kYXRhdHlwZXNQYWNrYWdlLlBBVEhfX0hFQURFUjoKKwkJCQlzZXRIZWFkZXIoKEhlYWRlciludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIE5hdl9kYXRhdHlwZXNQYWNrYWdlLlBBVEhfX1BPU0VTOgorCQkJCWdldFBvc2VzKCkuY2xlYXIoKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuUEFUSF9fSEVBREVSOgorCQkJCXJldHVybiBoZWFkZXIgIT0gbnVsbDsKKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuUEFUSF9fUE9TRVM6CisJCQkJcmV0dXJuIHBvc2VzICE9IG51bGwgJiYgIXBvc2VzLmlzRW1wdHkoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCit9IC8vIFBhdGhJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL3V0aWwvTmF2X2RhdGF0eXBlc0FkYXB0ZXJGYWN0b3J5LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL3V0aWwvTmF2X2RhdGF0eXBlc0FkYXB0ZXJGYWN0b3J5LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGI5N2JmMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL25hdl9kYXRhdHlwZXMvdXRpbC9OYXZfZGF0YXR5cGVzQWRhcHRlckZhY3RvcnkuamF2YQpAQCAtMCwwICsxLDE5NCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMudXRpbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5BZGFwdGVyRmFjdG9yeUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuR3JpZENlbGxzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk1hcE1ldGFEYXRhOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk9jY3VwYW5jeUdyaWQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuT2RvbWV0cnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuUGF0aDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogVGhlIDxiPkFkYXB0ZXIgRmFjdG9yeTwvYj4gZm9yIHRoZSBtb2RlbC4KKyAqIEl0IHByb3ZpZGVzIGFuIGFkYXB0ZXIgPGNvZGU+Y3JlYXRlWFhYPC9jb2RlPiBtZXRob2QgZm9yIGVhY2ggY2xhc3Mgb2YgdGhlIG1vZGVsLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBOYXZfZGF0YXR5cGVzQWRhcHRlckZhY3RvcnkgZXh0ZW5kcyBBZGFwdGVyRmFjdG9yeUltcGwgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgbW9kZWwgcGFja2FnZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIE5hdl9kYXRhdHlwZXNQYWNrYWdlIG1vZGVsUGFja2FnZTsKKworCS8qKgorCSAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIGFkYXB0ZXIgZmFjdG9yeS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTmF2X2RhdGF0eXBlc0FkYXB0ZXJGYWN0b3J5KCkgeworCQlpZiAobW9kZWxQYWNrYWdlID09IG51bGwpIHsKKwkJCW1vZGVsUGFja2FnZSA9IE5hdl9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRTsKKwkJfQorCX0KKworCS8qKgorCSAqIFJldHVybnMgd2hldGhlciB0aGlzIGZhY3RvcnkgaXMgYXBwbGljYWJsZSBmb3IgdGhlIHR5cGUgb2YgdGhlIG9iamVjdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyA8Y29kZT50cnVlPC9jb2RlPiBpZiB0aGUgb2JqZWN0IGlzIGVpdGhlciB0aGUgbW9kZWwncyBwYWNrYWdlIG9yIGlzIGFuIGluc3RhbmNlIG9iamVjdCBvZiB0aGUgbW9kZWwuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB3aGV0aGVyIHRoaXMgZmFjdG9yeSBpcyBhcHBsaWNhYmxlIGZvciB0aGUgdHlwZSBvZiB0aGUgb2JqZWN0LgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBpc0ZhY3RvcnlGb3JUeXBlKE9iamVjdCBvYmplY3QpIHsKKwkJaWYgKG9iamVjdCA9PSBtb2RlbFBhY2thZ2UpIHsKKwkJCXJldHVybiB0cnVlOworCQl9CisJCWlmIChvYmplY3QgaW5zdGFuY2VvZiBFT2JqZWN0KSB7CisJCQlyZXR1cm4gKChFT2JqZWN0KW9iamVjdCkuZUNsYXNzKCkuZ2V0RVBhY2thZ2UoKSA9PSBtb2RlbFBhY2thZ2U7CisJCX0KKwkJcmV0dXJuIGZhbHNlOworCX0KKworCS8qKgorCSAqIFRoZSBzd2l0Y2ggdGhhdCBkZWxlZ2F0ZXMgdG8gdGhlIDxjb2RlPmNyZWF0ZVhYWDwvY29kZT4gbWV0aG9kcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgTmF2X2RhdGF0eXBlc1N3aXRjaDxBZGFwdGVyPiBtb2RlbFN3aXRjaCA9CisJCQluZXcgTmF2X2RhdGF0eXBlc1N3aXRjaDxBZGFwdGVyPigpIHsKKwkJCUBPdmVycmlkZQorCQkJcHVibGljIEFkYXB0ZXIgY2FzZVBhdGgoUGF0aCBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlUGF0aEFkYXB0ZXIoKTsKKwkJCX0KKwkJCUBPdmVycmlkZQorCQkJcHVibGljIEFkYXB0ZXIgY2FzZU9kb21ldHJ5KE9kb21ldHJ5IG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVPZG9tZXRyeUFkYXB0ZXIoKTsKKwkJCX0KKwkJCUBPdmVycmlkZQorCQkJcHVibGljIEFkYXB0ZXIgY2FzZU1hcE1ldGFEYXRhKE1hcE1ldGFEYXRhIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVNYXBNZXRhRGF0YUFkYXB0ZXIoKTsKKwkJCX0KKwkJCUBPdmVycmlkZQorCQkJcHVibGljIEFkYXB0ZXIgY2FzZU9jY3VwYW5jeUdyaWQoT2NjdXBhbmN5R3JpZCBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlT2NjdXBhbmN5R3JpZEFkYXB0ZXIoKTsKKwkJCX0KKwkJCUBPdmVycmlkZQorCQkJcHVibGljIEFkYXB0ZXIgY2FzZUdyaWRDZWxscyhHcmlkQ2VsbHMgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUdyaWRDZWxsc0FkYXB0ZXIoKTsKKwkJCX0KKwkJCUBPdmVycmlkZQorCQkJcHVibGljIEFkYXB0ZXIgZGVmYXVsdENhc2UoRU9iamVjdCBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlRU9iamVjdEFkYXB0ZXIoKTsKKwkJCX0KKwkJfTsKKworCS8qKgorCSAqIENyZWF0ZXMgYW4gYWRhcHRlciBmb3IgdGhlIDxjb2RlPnRhcmdldDwvY29kZT4uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdGFyZ2V0IHRoZSBvYmplY3QgdG8gYWRhcHQuCisJICogQHJldHVybiB0aGUgYWRhcHRlciBmb3IgdGhlIDxjb2RlPnRhcmdldDwvY29kZT4uCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUFkYXB0ZXIoTm90aWZpZXIgdGFyZ2V0KSB7CisJCXJldHVybiBtb2RlbFN3aXRjaC5kb1N3aXRjaCgoRU9iamVjdCl0YXJnZXQpOworCX0KKworCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5QYXRoIDxlbT5QYXRoPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLlBhdGgKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlUGF0aEFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuT2RvbWV0cnkgPGVtPk9kb21ldHJ5PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk9kb21ldHJ5CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZU9kb21ldHJ5QWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5NYXBNZXRhRGF0YSA8ZW0+TWFwIE1ldGEgRGF0YTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5NYXBNZXRhRGF0YQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVNYXBNZXRhRGF0YUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuT2NjdXBhbmN5R3JpZCA8ZW0+T2NjdXBhbmN5IEdyaWQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuT2NjdXBhbmN5R3JpZAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVPY2N1cGFuY3lHcmlkQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMubmF2X2RhdGF0eXBlcy5HcmlkQ2VsbHMgPGVtPkdyaWQgQ2VsbHM8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuR3JpZENlbGxzCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUdyaWRDZWxsc0FkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgdGhlIGRlZmF1bHQgY2FzZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUVPYmplY3RBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKK30gLy8gTmF2X2RhdGF0eXBlc0FkYXB0ZXJGYWN0b3J5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9uYXZfZGF0YXR5cGVzL3V0aWwvTmF2X2RhdGF0eXBlc1N3aXRjaC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy91dGlsL05hdl9kYXRhdHlwZXNTd2l0Y2guamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lNGM5NjAzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvbmF2X2RhdGF0eXBlcy91dGlsL05hdl9kYXRhdHlwZXNTd2l0Y2guamF2YQpAQCAtMCwwICsxLDE5NiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMudXRpbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5Td2l0Y2g7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuR3JpZENlbGxzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk1hcE1ldGFEYXRhOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk9jY3VwYW5jeUdyaWQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuT2RvbWV0cnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuUGF0aDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogVGhlIDxiPlN3aXRjaDwvYj4gZm9yIHRoZSBtb2RlbCdzIGluaGVyaXRhbmNlIGhpZXJhcmNoeS4KKyAqIEl0IHN1cHBvcnRzIHRoZSBjYWxsIHtAbGluayAjZG9Td2l0Y2goRU9iamVjdCkgZG9Td2l0Y2gob2JqZWN0KX0gdG8gaW52b2tlIHRoZSA8Y29kZT5jYXNlWFhYPC9jb2RlPiBtZXRob2QgZm9yIGVhY2ggY2xhc3Mgb2YgdGhlIG1vZGVsLAorICogc3RhcnRpbmcgd2l0aCB0aGUgYWN0dWFsIGNsYXNzIG9mIHRoZSBvYmplY3QKKyAqIGFuZCBwcm9jZWVkaW5nIHVwIHRoZSBpbmhlcml0YW5jZSBoaWVyYXJjaHkKKyAqIHVudGlsIGEgbm9uLW51bGwgcmVzdWx0IGlzIHJldHVybmVkLAorICogd2hpY2ggaXMgdGhlIHJlc3VsdCBvZiB0aGUgc3dpdGNoLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBOYXZfZGF0YXR5cGVzU3dpdGNoPFQ+IGV4dGVuZHMgU3dpdGNoPFQ+IHsKKwkvKioKKwkgKiBUaGUgY2FjaGVkIG1vZGVsIHBhY2thZ2UKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIE5hdl9kYXRhdHlwZXNQYWNrYWdlIG1vZGVsUGFja2FnZTsKKworCS8qKgorCSAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTmF2X2RhdGF0eXBlc1N3aXRjaCgpIHsKKwkJaWYgKG1vZGVsUGFja2FnZSA9PSBudWxsKSB7CisJCQltb2RlbFBhY2thZ2UgPSBOYXZfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0U7CisJCX0KKwl9CisKKwkvKioKKwkgKiBDaGVja3Mgd2hldGhlciB0aGlzIGlzIGEgc3dpdGNoIGZvciB0aGUgZ2l2ZW4gcGFja2FnZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbWV0ZXIgZVBhY2thZ2UgdGhlIHBhY2thZ2UgaW4gcXVlc3Rpb24uCisJICogQHJldHVybiB3aGV0aGVyIHRoaXMgaXMgYSBzd2l0Y2ggZm9yIHRoZSBnaXZlbiBwYWNrYWdlLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgYm9vbGVhbiBpc1N3aXRjaEZvcihFUGFja2FnZSBlUGFja2FnZSkgeworCQlyZXR1cm4gZVBhY2thZ2UgPT0gbW9kZWxQYWNrYWdlOworCX0KKworCS8qKgorCSAqIENhbGxzIDxjb2RlPmNhc2VYWFg8L2NvZGU+IGZvciBlYWNoIGNsYXNzIG9mIHRoZSBtb2RlbCB1bnRpbCBvbmUgcmV0dXJucyBhIG5vbiBudWxsIHJlc3VsdDsgaXQgeWllbGRzIHRoYXQgcmVzdWx0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgZmlyc3Qgbm9uLW51bGwgcmVzdWx0IHJldHVybmVkIGJ5IGEgPGNvZGU+Y2FzZVhYWDwvY29kZT4gY2FsbC4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIFQgZG9Td2l0Y2goaW50IGNsYXNzaWZpZXJJRCwgRU9iamVjdCB0aGVFT2JqZWN0KSB7CisJCXN3aXRjaCAoY2xhc3NpZmllcklEKSB7CisJCQljYXNlIE5hdl9kYXRhdHlwZXNQYWNrYWdlLlBBVEg6IHsKKwkJCQlQYXRoIHBhdGggPSAoUGF0aCl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZVBhdGgocGF0aCk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRSWTogeworCQkJCU9kb21ldHJ5IG9kb21ldHJ5ID0gKE9kb21ldHJ5KXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlT2RvbWV0cnkob2RvbWV0cnkpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuTUFQX01FVEFfREFUQTogeworCQkJCU1hcE1ldGFEYXRhIG1hcE1ldGFEYXRhID0gKE1hcE1ldGFEYXRhKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlTWFwTWV0YURhdGEobWFwTWV0YURhdGEpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgTmF2X2RhdGF0eXBlc1BhY2thZ2UuT0NDVVBBTkNZX0dSSUQ6IHsKKwkJCQlPY2N1cGFuY3lHcmlkIG9jY3VwYW5jeUdyaWQgPSAoT2NjdXBhbmN5R3JpZCl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZU9jY3VwYW5jeUdyaWQob2NjdXBhbmN5R3JpZCk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBOYXZfZGF0YXR5cGVzUGFja2FnZS5HUklEX0NFTExTOiB7CisJCQkJR3JpZENlbGxzIGdyaWRDZWxscyA9IChHcmlkQ2VsbHMpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VHcmlkQ2VsbHMoZ3JpZENlbGxzKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQlkZWZhdWx0OiByZXR1cm4gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCX0KKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5QYXRoPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UGF0aDwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZVBhdGgoUGF0aCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+T2RvbWV0cnk8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5PZG9tZXRyeTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZU9kb21ldHJ5KE9kb21ldHJ5IG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5NYXAgTWV0YSBEYXRhPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TWFwIE1ldGEgRGF0YTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZU1hcE1ldGFEYXRhKE1hcE1ldGFEYXRhIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5PY2N1cGFuY3kgR3JpZDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPk9jY3VwYW5jeSBHcmlkPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlT2NjdXBhbmN5R3JpZChPY2N1cGFuY3lHcmlkIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5HcmlkIENlbGxzPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+R3JpZCBDZWxsczwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUdyaWRDZWxscyhHcmlkQ2VsbHMgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkVPYmplY3Q8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaCwgYnV0IHRoaXMgaXMgdGhlIGxhc3QgY2FzZSBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+RU9iamVjdDwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFQgZGVmYXVsdENhc2UoRU9iamVjdCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCit9IC8vIE5hdl9kYXRhdHlwZXNTd2l0Y2gKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwMV9kYXRhdHlwZXMvQ2FyTGlrZUNvbW1hbmQuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwMV9kYXRhdHlwZXMvQ2FyTGlrZUNvbW1hbmQuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41NGQzMmQwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnAxX2RhdGF0eXBlcy9DYXJMaWtlQ29tbWFuZC5qYXZhCkBAIC0wLDAgKzEsNzcgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNhciBMaWtlIENvbW1hbmQ8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuQ2FyTGlrZUNvbW1hbmQjZ2V0VmVsb2NpdHkgPGVtPlZlbG9jaXR5PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5DYXJMaWtlQ29tbWFuZCNnZXRTdGVlcmluZ0FuZ2xlIDxlbT5TdGVlcmluZyBBbmdsZTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuT2FycDFfZGF0YXR5cGVzUGFja2FnZSNnZXRDYXJMaWtlQ29tbWFuZCgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBDYXJMaWtlQ29tbWFuZCBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlZlbG9jaXR5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogVGhlIGRlZmF1bHQgdmFsdWUgaXMgPGNvZGU+IjAiPC9jb2RlPi4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlZlbG9jaXR5PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5WZWxvY2l0eTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0VmVsb2NpdHkoRmxvYXQ2NCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLk9hcnAxX2RhdGF0eXBlc1BhY2thZ2UjZ2V0Q2FyTGlrZUNvbW1hbmRfVmVsb2NpdHkoKQorCSAqIEBtb2RlbCBkZWZhdWx0PSIwIiBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0VmVsb2NpdHkoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLkNhckxpa2VDb21tYW5kI2dldFZlbG9jaXR5IDxlbT5WZWxvY2l0eTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+VmVsb2NpdHk8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFZlbG9jaXR5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRWZWxvY2l0eShPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+U3RlZXJpbmcgQW5nbGU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyA8Y29kZT4iMCI8L2NvZGU+LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+U3RlZXJpbmcgQW5nbGU8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlN0ZWVyaW5nIEFuZ2xlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRTdGVlcmluZ0FuZ2xlKEZsb2F0NjQpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5PYXJwMV9kYXRhdHlwZXNQYWNrYWdlI2dldENhckxpa2VDb21tYW5kX1N0ZWVyaW5nQW5nbGUoKQorCSAqIEBtb2RlbCBkZWZhdWx0PSIwIiBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0U3RlZXJpbmdBbmdsZSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuQ2FyTGlrZUNvbW1hbmQjZ2V0U3RlZXJpbmdBbmdsZSA8ZW0+U3RlZXJpbmcgQW5nbGU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlN0ZWVyaW5nIEFuZ2xlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRTdGVlcmluZ0FuZ2xlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRTdGVlcmluZ0FuZ2xlKE9iamVjdCB2YWx1ZSk7CisKK30gLy8gQ2FyTGlrZUNvbW1hbmQKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwMV9kYXRhdHlwZXMvRXh0ZW50ZWRMaWRhclNjYW4uamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwMV9kYXRhdHlwZXMvRXh0ZW50ZWRMaWRhclNjYW4uamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40YmM1YjU0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnAxX2RhdGF0eXBlcy9FeHRlbnRlZExpZGFyU2Nhbi5qYXZhCkBAIC0wLDAgKzEsMTAyIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkxhc2VyU2NhbjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+RXh0ZW50ZWQgTGlkYXIgU2NhbjwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5FeHRlbnRlZExpZGFyU2NhbiNnZXRTY2FuIDxlbT5TY2FuPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5FeHRlbnRlZExpZGFyU2NhbiNnZXRMYXllcklkIDxlbT5MYXllciBJZDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuRXh0ZW50ZWRMaWRhclNjYW4jZ2V0TGF5ZXJBbmdsZSA8ZW0+TGF5ZXIgQW5nbGU8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLk9hcnAxX2RhdGF0eXBlc1BhY2thZ2UjZ2V0RXh0ZW50ZWRMaWRhclNjYW4oKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgRXh0ZW50ZWRMaWRhclNjYW4gZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5TY2FuPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5TY2FuPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5TY2FuPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRTY2FuKExhc2VyU2NhbikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLk9hcnAxX2RhdGF0eXBlc1BhY2thZ2UjZ2V0RXh0ZW50ZWRMaWRhclNjYW5fU2NhbigpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUxhc2VyU2NhbiBnZXRTY2FuKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5FeHRlbnRlZExpZGFyU2NhbiNnZXRTY2FuIDxlbT5TY2FuPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5TY2FuPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRTY2FuKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRTY2FuKExhc2VyU2NhbiB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5MYXllciBJZDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+TGF5ZXIgSWQ8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkxheWVyIElkPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRMYXllcklkKFVJbnQ4KQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuT2FycDFfZGF0YXR5cGVzUGFja2FnZSNnZXRFeHRlbnRlZExpZGFyU2Nhbl9MYXllcklkKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQ4IiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRMYXllcklkKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5FeHRlbnRlZExpZGFyU2NhbiNnZXRMYXllcklkIDxlbT5MYXllciBJZDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TGF5ZXIgSWQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldExheWVySWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldExheWVySWQoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkxheWVyIEFuZ2xlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5MYXllciBBbmdsZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+TGF5ZXIgQW5nbGU8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldExheWVyQW5nbGUoRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLk9hcnAxX2RhdGF0eXBlc1BhY2thZ2UjZ2V0RXh0ZW50ZWRMaWRhclNjYW5fTGF5ZXJBbmdsZSgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRMYXllckFuZ2xlKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5FeHRlbnRlZExpZGFyU2NhbiNnZXRMYXllckFuZ2xlIDxlbT5MYXllciBBbmdsZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TGF5ZXIgQW5nbGU8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldExheWVyQW5nbGUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldExheWVyQW5nbGUoT2JqZWN0IHZhbHVlKTsKKworfSAvLyBFeHRlbnRlZExpZGFyU2NhbgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnAxX2RhdGF0eXBlcy9NdWx0aUxheWVyTGlkYXJTY2FuLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDFfZGF0YXR5cGVzL011bHRpTGF5ZXJMaWRhclNjYW4uamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zYzdkOWU5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnAxX2RhdGF0eXBlcy9NdWx0aUxheWVyTGlkYXJTY2FuLmphdmEKQEAgLTAsMCArMSw3NSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TXVsdGkgTGF5ZXIgTGlkYXIgU2NhbjwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5NdWx0aUxheWVyTGlkYXJTY2FuI2dldExheWVycyA8ZW0+TGF5ZXJzPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5NdWx0aUxheWVyTGlkYXJTY2FuI2dldE5iTGF5ZXIgPGVtPk5iIExheWVyPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5PYXJwMV9kYXRhdHlwZXNQYWNrYWdlI2dldE11bHRpTGF5ZXJMaWRhclNjYW4oKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgTXVsdGlMYXllckxpZGFyU2NhbiBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkxheWVyczwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+TGF5ZXJzPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5MYXllcnM8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldExheWVycyhFeHRlbnRlZExpZGFyU2NhbikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLk9hcnAxX2RhdGF0eXBlc1BhY2thZ2UjZ2V0TXVsdGlMYXllckxpZGFyU2Nhbl9MYXllcnMoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFeHRlbnRlZExpZGFyU2NhbiBnZXRMYXllcnMoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLk11bHRpTGF5ZXJMaWRhclNjYW4jZ2V0TGF5ZXJzIDxlbT5MYXllcnM8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkxheWVyczwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0TGF5ZXJzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRMYXllcnMoRXh0ZW50ZWRMaWRhclNjYW4gdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TmIgTGF5ZXI8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPk5iIExheWVyPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5OYiBMYXllcjwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0TmJMYXllcihVSW50OCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLk9hcnAxX2RhdGF0eXBlc1BhY2thZ2UjZ2V0TXVsdGlMYXllckxpZGFyU2Nhbl9OYkxheWVyKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQ4IiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXROYkxheWVyKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5NdWx0aUxheWVyTGlkYXJTY2FuI2dldE5iTGF5ZXIgPGVtPk5iIExheWVyPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5OYiBMYXllcjwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0TmJMYXllcigpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0TmJMYXllcihPYmplY3QgdmFsdWUpOworCit9IC8vIE11bHRpTGF5ZXJMaWRhclNjYW4KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwMV9kYXRhdHlwZXMvT2FycDFfZGF0YXR5cGVzRmFjdG9yeS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnAxX2RhdGF0eXBlcy9PYXJwMV9kYXRhdHlwZXNGYWN0b3J5LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjc4MzAyYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwMV9kYXRhdHlwZXMvT2FycDFfZGF0YXR5cGVzRmFjdG9yeS5qYXZhCkBAIC0wLDAgKzEsNjAgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBUaGUgPGI+RmFjdG9yeTwvYj4gZm9yIHRoZSBtb2RlbC4KKyAqIEl0IHByb3ZpZGVzIGEgY3JlYXRlIG1ldGhvZCBmb3IgZWFjaCBub24tYWJzdHJhY3QgY2xhc3Mgb2YgdGhlIG1vZGVsLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLk9hcnAxX2RhdGF0eXBlc1BhY2thZ2UKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBPYXJwMV9kYXRhdHlwZXNGYWN0b3J5IGV4dGVuZHMgRUZhY3RvcnkgeworCS8qKgorCSAqIFRoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIGZhY3RvcnkuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2FycDFfZGF0YXR5cGVzRmFjdG9yeSBlSU5TVEFOQ0UgPSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5pbXBsLk9hcnAxX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmluaXQoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Q2FyIExpa2UgQ29tbWFuZDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Q2FyIExpa2UgQ29tbWFuZDwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQ2FyTGlrZUNvbW1hbmQgY3JlYXRlQ2FyTGlrZUNvbW1hbmQoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TXVsdGkgTGF5ZXIgTGlkYXIgU2NhbjwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TXVsdGkgTGF5ZXIgTGlkYXIgU2NhbjwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJTXVsdGlMYXllckxpZGFyU2NhbiBjcmVhdGVNdWx0aUxheWVyTGlkYXJTY2FuKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkV4dGVudGVkIExpZGFyIFNjYW48L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkV4dGVudGVkIExpZGFyIFNjYW48L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUV4dGVudGVkTGlkYXJTY2FuIGNyZWF0ZUV4dGVudGVkTGlkYXJTY2FuKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBwYWNrYWdlIHN1cHBvcnRlZCBieSB0aGlzIGZhY3RvcnkuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBwYWNrYWdlIHN1cHBvcnRlZCBieSB0aGlzIGZhY3RvcnkuCisJICogQGdlbmVyYXRlZAorCSAqLworCU9hcnAxX2RhdGF0eXBlc1BhY2thZ2UgZ2V0T2FycDFfZGF0YXR5cGVzUGFja2FnZSgpOworCit9IC8vIE9hcnAxX2RhdGF0eXBlc0ZhY3RvcnkKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwMV9kYXRhdHlwZXMvT2FycDFfZGF0YXR5cGVzUGFja2FnZS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnAxX2RhdGF0eXBlcy9PYXJwMV9kYXRhdHlwZXNQYWNrYWdlLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDE1OGExZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwMV9kYXRhdHlwZXMvT2FycDFfZGF0YXR5cGVzUGFja2FnZS5qYXZhCkBAIC0wLDAgKzEsNDI1IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQXR0cmlidXRlOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBUaGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoZSBtb2RlbC4KKyAqIEl0IGNvbnRhaW5zIGFjY2Vzc29ycyBmb3IgdGhlIG1ldGEgb2JqZWN0cyB0byByZXByZXNlbnQKKyAqIDx1bD4KKyAqIDxsaT5lYWNoIGNsYXNzLDwvbGk+CisgKiA8bGk+ZWFjaCBmZWF0dXJlIG9mIGVhY2ggY2xhc3MsPC9saT4KKyAqIDxsaT5lYWNoIG9wZXJhdGlvbiBvZiBlYWNoIGNsYXNzLDwvbGk+CisgKiA8bGk+ZWFjaCBlbnVtLDwvbGk+CisgKiA8bGk+YW5kIGVhY2ggZGF0YSB0eXBlPC9saT4KKyAqIDwvdWw+CisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuT2FycDFfZGF0YXR5cGVzRmFjdG9yeQorICogQG1vZGVsIGtpbmQ9InBhY2thZ2UiCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgT2FycDFfZGF0YXR5cGVzUGFja2FnZSBleHRlbmRzIEVQYWNrYWdlIHsKKwkvKioKKwkgKiBUaGUgcGFja2FnZSBuYW1lLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCVN0cmluZyBlTkFNRSA9ICJvYXJwMV9kYXRhdHlwZXMiOworCisJLyoqCisJICogVGhlIHBhY2thZ2UgbmFtZXNwYWNlIFVSSS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTdHJpbmcgZU5TX1VSSSA9ICJodHRwOi8vL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnAxX2RhdGF0eXBlcy5lY29yZSI7CisKKwkvKioKKwkgKiBUaGUgcGFja2FnZSBuYW1lc3BhY2UgbmFtZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTdHJpbmcgZU5TX1BSRUZJWCA9ICJSb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMiOworCisJLyoqCisJICogVGhlIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiB0aGUgcGFja2FnZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYXJwMV9kYXRhdHlwZXNQYWNrYWdlIGVJTlNUQU5DRSA9IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLmltcGwuT2FycDFfZGF0YXR5cGVzUGFja2FnZUltcGwuaW5pdCgpOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5pbXBsLkNhckxpa2VDb21tYW5kSW1wbCA8ZW0+Q2FyIExpa2UgQ29tbWFuZDwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLmltcGwuQ2FyTGlrZUNvbW1hbmRJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5pbXBsLk9hcnAxX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldENhckxpa2VDb21tYW5kKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IENBUl9MSUtFX0NPTU1BTkQgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlZlbG9jaXR5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0FSX0xJS0VfQ09NTUFORF9fVkVMT0NJVFkgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlN0ZWVyaW5nIEFuZ2xlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0FSX0xJS0VfQ09NTUFORF9fU1RFRVJJTkdfQU5HTEUgPSAxOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkNhciBMaWtlIENvbW1hbmQ8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0FSX0xJS0VfQ09NTUFORF9GRUFUVVJFX0NPVU5UID0gMjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5DYXIgTGlrZSBDb21tYW5kPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IENBUl9MSUtFX0NPTU1BTkRfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuaW1wbC5NdWx0aUxheWVyTGlkYXJTY2FuSW1wbCA8ZW0+TXVsdGkgTGF5ZXIgTGlkYXIgU2NhbjwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLmltcGwuTXVsdGlMYXllckxpZGFyU2NhbkltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLmltcGwuT2FycDFfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0TXVsdGlMYXllckxpZGFyU2NhbigpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBNVUxUSV9MQVlFUl9MSURBUl9TQ0FOID0gMTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MYXllcnM8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBNVUxUSV9MQVlFUl9MSURBUl9TQ0FOX19MQVlFUlMgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk5iIExheWVyPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTVVMVElfTEFZRVJfTElEQVJfU0NBTl9fTkJfTEFZRVIgPSAxOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPk11bHRpIExheWVyIExpZGFyIFNjYW48L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTVVMVElfTEFZRVJfTElEQVJfU0NBTl9GRUFUVVJFX0NPVU5UID0gMjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5NdWx0aSBMYXllciBMaWRhciBTY2FuPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE1VTFRJX0xBWUVSX0xJREFSX1NDQU5fT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuaW1wbC5FeHRlbnRlZExpZGFyU2NhbkltcGwgPGVtPkV4dGVudGVkIExpZGFyIFNjYW48L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5pbXBsLkV4dGVudGVkTGlkYXJTY2FuSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuaW1wbC5PYXJwMV9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRFeHRlbnRlZExpZGFyU2NhbigpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBFWFRFTlRFRF9MSURBUl9TQ0FOID0gMjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TY2FuPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgRVhURU5URURfTElEQVJfU0NBTl9fU0NBTiA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGF5ZXIgSWQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBFWFRFTlRFRF9MSURBUl9TQ0FOX19MQVlFUl9JRCA9IDE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGF5ZXIgQW5nbGU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBFWFRFTlRFRF9MSURBUl9TQ0FOX19MQVlFUl9BTkdMRSA9IDI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+RXh0ZW50ZWQgTGlkYXIgU2NhbjwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBFWFRFTlRFRF9MSURBUl9TQ0FOX0ZFQVRVUkVfQ09VTlQgPSAzOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkV4dGVudGVkIExpZGFyIFNjYW48L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgRVhURU5URURfTElEQVJfU0NBTl9PUEVSQVRJT05fQ09VTlQgPSAwOworCisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5DYXJMaWtlQ29tbWFuZCA8ZW0+Q2FyIExpa2UgQ29tbWFuZDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5DYXIgTGlrZSBDb21tYW5kPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuQ2FyTGlrZUNvbW1hbmQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldENhckxpa2VDb21tYW5kKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLkNhckxpa2VDb21tYW5kI2dldFZlbG9jaXR5IDxlbT5WZWxvY2l0eTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlZlbG9jaXR5PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuQ2FyTGlrZUNvbW1hbmQjZ2V0VmVsb2NpdHkoKQorCSAqIEBzZWUgI2dldENhckxpa2VDb21tYW5kKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRDYXJMaWtlQ29tbWFuZF9WZWxvY2l0eSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5DYXJMaWtlQ29tbWFuZCNnZXRTdGVlcmluZ0FuZ2xlIDxlbT5TdGVlcmluZyBBbmdsZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlN0ZWVyaW5nIEFuZ2xlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuQ2FyTGlrZUNvbW1hbmQjZ2V0U3RlZXJpbmdBbmdsZSgpCisJICogQHNlZSAjZ2V0Q2FyTGlrZUNvbW1hbmQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldENhckxpa2VDb21tYW5kX1N0ZWVyaW5nQW5nbGUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLk11bHRpTGF5ZXJMaWRhclNjYW4gPGVtPk11bHRpIExheWVyIExpZGFyIFNjYW48L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+TXVsdGkgTGF5ZXIgTGlkYXIgU2NhbjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLk11bHRpTGF5ZXJMaWRhclNjYW4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldE11bHRpTGF5ZXJMaWRhclNjYW4oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuTXVsdGlMYXllckxpZGFyU2NhbiNnZXRMYXllcnMgPGVtPkxheWVyczwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPkxheWVyczwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLk11bHRpTGF5ZXJMaWRhclNjYW4jZ2V0TGF5ZXJzKCkKKwkgKiBAc2VlICNnZXRNdWx0aUxheWVyTGlkYXJTY2FuKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRNdWx0aUxheWVyTGlkYXJTY2FuX0xheWVycygpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5NdWx0aUxheWVyTGlkYXJTY2FuI2dldE5iTGF5ZXIgPGVtPk5iIExheWVyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+TmIgTGF5ZXI8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5NdWx0aUxheWVyTGlkYXJTY2FuI2dldE5iTGF5ZXIoKQorCSAqIEBzZWUgI2dldE11bHRpTGF5ZXJMaWRhclNjYW4oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldE11bHRpTGF5ZXJMaWRhclNjYW5fTmJMYXllcigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuRXh0ZW50ZWRMaWRhclNjYW4gPGVtPkV4dGVudGVkIExpZGFyIFNjYW48L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+RXh0ZW50ZWQgTGlkYXIgU2NhbjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLkV4dGVudGVkTGlkYXJTY2FuCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRFeHRlbnRlZExpZGFyU2NhbigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5FeHRlbnRlZExpZGFyU2NhbiNnZXRTY2FuIDxlbT5TY2FuPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+U2NhbjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLkV4dGVudGVkTGlkYXJTY2FuI2dldFNjYW4oKQorCSAqIEBzZWUgI2dldEV4dGVudGVkTGlkYXJTY2FuKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRFeHRlbnRlZExpZGFyU2Nhbl9TY2FuKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLkV4dGVudGVkTGlkYXJTY2FuI2dldExheWVySWQgPGVtPkxheWVyIElkPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+TGF5ZXIgSWQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5FeHRlbnRlZExpZGFyU2NhbiNnZXRMYXllcklkKCkKKwkgKiBAc2VlICNnZXRFeHRlbnRlZExpZGFyU2NhbigpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0RXh0ZW50ZWRMaWRhclNjYW5fTGF5ZXJJZCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5FeHRlbnRlZExpZGFyU2NhbiNnZXRMYXllckFuZ2xlIDxlbT5MYXllciBBbmdsZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkxheWVyIEFuZ2xlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuRXh0ZW50ZWRMaWRhclNjYW4jZ2V0TGF5ZXJBbmdsZSgpCisJICogQHNlZSAjZ2V0RXh0ZW50ZWRMaWRhclNjYW4oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEV4dGVudGVkTGlkYXJTY2FuX0xheWVyQW5nbGUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIGZhY3RvcnkgdGhhdCBjcmVhdGVzIHRoZSBpbnN0YW5jZXMgb2YgdGhlIG1vZGVsLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgZmFjdG9yeSB0aGF0IGNyZWF0ZXMgdGhlIGluc3RhbmNlcyBvZiB0aGUgbW9kZWwuCisJICogQGdlbmVyYXRlZAorCSAqLworCU9hcnAxX2RhdGF0eXBlc0ZhY3RvcnkgZ2V0T2FycDFfZGF0YXR5cGVzRmFjdG9yeSgpOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBEZWZpbmVzIGxpdGVyYWxzIGZvciB0aGUgbWV0YSBvYmplY3RzIHRoYXQgcmVwcmVzZW50CisJICogPHVsPgorCSAqIDxsaT5lYWNoIGNsYXNzLDwvbGk+CisJICogPGxpPmVhY2ggZmVhdHVyZSBvZiBlYWNoIGNsYXNzLDwvbGk+CisJICogPGxpPmVhY2ggb3BlcmF0aW9uIG9mIGVhY2ggY2xhc3MsPC9saT4KKwkgKiA8bGk+ZWFjaCBlbnVtLDwvbGk+CisJICogPGxpPmFuZCBlYWNoIGRhdGEgdHlwZTwvbGk+CisJICogPC91bD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50ZXJmYWNlIExpdGVyYWxzIHsKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5pbXBsLkNhckxpa2VDb21tYW5kSW1wbCA8ZW0+Q2FyIExpa2UgQ29tbWFuZDwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLmltcGwuQ2FyTGlrZUNvbW1hbmRJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuaW1wbC5PYXJwMV9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRDYXJMaWtlQ29tbWFuZCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBDQVJfTElLRV9DT01NQU5EID0gZUlOU1RBTkNFLmdldENhckxpa2VDb21tYW5kKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5WZWxvY2l0eTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIENBUl9MSUtFX0NPTU1BTkRfX1ZFTE9DSVRZID0gZUlOU1RBTkNFLmdldENhckxpa2VDb21tYW5kX1ZlbG9jaXR5KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5TdGVlcmluZyBBbmdsZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIENBUl9MSUtFX0NPTU1BTkRfX1NURUVSSU5HX0FOR0xFID0gZUlOU1RBTkNFLmdldENhckxpa2VDb21tYW5kX1N0ZWVyaW5nQW5nbGUoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLmltcGwuTXVsdGlMYXllckxpZGFyU2NhbkltcGwgPGVtPk11bHRpIExheWVyIExpZGFyIFNjYW48L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5pbXBsLk11bHRpTGF5ZXJMaWRhclNjYW5JbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuaW1wbC5PYXJwMV9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRNdWx0aUxheWVyTGlkYXJTY2FuKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIE1VTFRJX0xBWUVSX0xJREFSX1NDQU4gPSBlSU5TVEFOQ0UuZ2V0TXVsdGlMYXllckxpZGFyU2NhbigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TGF5ZXJzPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgTVVMVElfTEFZRVJfTElEQVJfU0NBTl9fTEFZRVJTID0gZUlOU1RBTkNFLmdldE11bHRpTGF5ZXJMaWRhclNjYW5fTGF5ZXJzKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5OYiBMYXllcjwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIE1VTFRJX0xBWUVSX0xJREFSX1NDQU5fX05CX0xBWUVSID0gZUlOU1RBTkNFLmdldE11bHRpTGF5ZXJMaWRhclNjYW5fTmJMYXllcigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuaW1wbC5FeHRlbnRlZExpZGFyU2NhbkltcGwgPGVtPkV4dGVudGVkIExpZGFyIFNjYW48L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5pbXBsLkV4dGVudGVkTGlkYXJTY2FuSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLmltcGwuT2FycDFfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0RXh0ZW50ZWRMaWRhclNjYW4oKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgRVhURU5URURfTElEQVJfU0NBTiA9IGVJTlNUQU5DRS5nZXRFeHRlbnRlZExpZGFyU2NhbigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+U2NhbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIEVYVEVOVEVEX0xJREFSX1NDQU5fX1NDQU4gPSBlSU5TVEFOQ0UuZ2V0RXh0ZW50ZWRMaWRhclNjYW5fU2NhbigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TGF5ZXIgSWQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBFWFRFTlRFRF9MSURBUl9TQ0FOX19MQVlFUl9JRCA9IGVJTlNUQU5DRS5nZXRFeHRlbnRlZExpZGFyU2Nhbl9MYXllcklkKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5MYXllciBBbmdsZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIEVYVEVOVEVEX0xJREFSX1NDQU5fX0xBWUVSX0FOR0xFID0gZUlOU1RBTkNFLmdldEV4dGVudGVkTGlkYXJTY2FuX0xheWVyQW5nbGUoKTsKKworCX0KKworfSAvLyBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDFfZGF0YXR5cGVzL2ltcGwvQ2FyTGlrZUNvbW1hbmRJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDFfZGF0YXR5cGVzL2ltcGwvQ2FyTGlrZUNvbW1hbmRJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTUxZjRkMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwMV9kYXRhdHlwZXMvaW1wbC9DYXJMaWtlQ29tbWFuZEltcGwuamF2YQpAQCAtMCwwICsxLDIxNiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5DYXJMaWtlQ29tbWFuZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5PYXJwMV9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNGYWN0b3J5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q2FyIExpa2UgQ29tbWFuZDwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuaW1wbC5DYXJMaWtlQ29tbWFuZEltcGwjZ2V0VmVsb2NpdHkgPGVtPlZlbG9jaXR5PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5pbXBsLkNhckxpa2VDb21tYW5kSW1wbCNnZXRTdGVlcmluZ0FuZ2xlIDxlbT5TdGVlcmluZyBBbmdsZTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIENhckxpa2VDb21tYW5kSW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBDYXJMaWtlQ29tbWFuZCB7CisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFZlbG9jaXR5KCkgPGVtPlZlbG9jaXR5PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRWZWxvY2l0eSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgVkVMT0NJVFlfRURFRkFVTFQgPSAoT2JqZWN0KVN0ZF9kYXRhdHlwZXNGYWN0b3J5LmVJTlNUQU5DRS5jcmVhdGVGcm9tU3RyaW5nKFN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRS5nZXRGbG9hdDY0KCksICIwIik7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRWZWxvY2l0eSgpIDxlbT5WZWxvY2l0eTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VmVsb2NpdHkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgdmVsb2NpdHkgPSBWRUxPQ0lUWV9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTdGVlcmluZ0FuZ2xlKCkgPGVtPlN0ZWVyaW5nIEFuZ2xlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRTdGVlcmluZ0FuZ2xlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBTVEVFUklOR19BTkdMRV9FREVGQVVMVCA9IChPYmplY3QpU3RkX2RhdGF0eXBlc0ZhY3RvcnkuZUlOU1RBTkNFLmNyZWF0ZUZyb21TdHJpbmcoU3RkX2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFLmdldEZsb2F0NjQoKSwgIjAiKTsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFN0ZWVyaW5nQW5nbGUoKSA8ZW0+U3RlZXJpbmcgQW5nbGU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFN0ZWVyaW5nQW5nbGUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3Qgc3RlZXJpbmdBbmdsZSA9IFNURUVSSU5HX0FOR0xFX0VERUZBVUxUOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIENhckxpa2VDb21tYW5kSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuQ0FSX0xJS0VfQ09NTUFORDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFZlbG9jaXR5KCkgeworCQlyZXR1cm4gdmVsb2NpdHk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0VmVsb2NpdHkoT2JqZWN0IG5ld1ZlbG9jaXR5KSB7CisJCU9iamVjdCBvbGRWZWxvY2l0eSA9IHZlbG9jaXR5OworCQl2ZWxvY2l0eSA9IG5ld1ZlbG9jaXR5OworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLkNBUl9MSUtFX0NPTU1BTkRfX1ZFTE9DSVRZLCBvbGRWZWxvY2l0eSwgdmVsb2NpdHkpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFN0ZWVyaW5nQW5nbGUoKSB7CisJCXJldHVybiBzdGVlcmluZ0FuZ2xlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFN0ZWVyaW5nQW5nbGUoT2JqZWN0IG5ld1N0ZWVyaW5nQW5nbGUpIHsKKwkJT2JqZWN0IG9sZFN0ZWVyaW5nQW5nbGUgPSBzdGVlcmluZ0FuZ2xlOworCQlzdGVlcmluZ0FuZ2xlID0gbmV3U3RlZXJpbmdBbmdsZTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgT2FycDFfZGF0YXR5cGVzUGFja2FnZS5DQVJfTElLRV9DT01NQU5EX19TVEVFUklOR19BTkdMRSwgb2xkU3RlZXJpbmdBbmdsZSwgc3RlZXJpbmdBbmdsZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDFfZGF0YXR5cGVzUGFja2FnZS5DQVJfTElLRV9DT01NQU5EX19WRUxPQ0lUWToKKwkJCQlyZXR1cm4gZ2V0VmVsb2NpdHkoKTsKKwkJCWNhc2UgT2FycDFfZGF0YXR5cGVzUGFja2FnZS5DQVJfTElLRV9DT01NQU5EX19TVEVFUklOR19BTkdMRToKKwkJCQlyZXR1cm4gZ2V0U3RlZXJpbmdBbmdsZSgpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuQ0FSX0xJS0VfQ09NTUFORF9fVkVMT0NJVFk6CisJCQkJc2V0VmVsb2NpdHkoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLkNBUl9MSUtFX0NPTU1BTkRfX1NURUVSSU5HX0FOR0xFOgorCQkJCXNldFN0ZWVyaW5nQW5nbGUoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDFfZGF0YXR5cGVzUGFja2FnZS5DQVJfTElLRV9DT01NQU5EX19WRUxPQ0lUWToKKwkJCQlzZXRWZWxvY2l0eShWRUxPQ0lUWV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLkNBUl9MSUtFX0NPTU1BTkRfX1NURUVSSU5HX0FOR0xFOgorCQkJCXNldFN0ZWVyaW5nQW5nbGUoU1RFRVJJTkdfQU5HTEVfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLkNBUl9MSUtFX0NPTU1BTkRfX1ZFTE9DSVRZOgorCQkJCXJldHVybiBWRUxPQ0lUWV9FREVGQVVMVCA9PSBudWxsID8gdmVsb2NpdHkgIT0gbnVsbCA6ICFWRUxPQ0lUWV9FREVGQVVMVC5lcXVhbHModmVsb2NpdHkpOworCQkJY2FzZSBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLkNBUl9MSUtFX0NPTU1BTkRfX1NURUVSSU5HX0FOR0xFOgorCQkJCXJldHVybiBTVEVFUklOR19BTkdMRV9FREVGQVVMVCA9PSBudWxsID8gc3RlZXJpbmdBbmdsZSAhPSBudWxsIDogIVNURUVSSU5HX0FOR0xFX0VERUZBVUxULmVxdWFscyhzdGVlcmluZ0FuZ2xlKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJaWYgKGVJc1Byb3h5KCkpIHJldHVybiBzdXBlci50b1N0cmluZygpOworCisJCVN0cmluZ0J1ZmZlciByZXN1bHQgPSBuZXcgU3RyaW5nQnVmZmVyKHN1cGVyLnRvU3RyaW5nKCkpOworCQlyZXN1bHQuYXBwZW5kKCIgKHZlbG9jaXR5OiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh2ZWxvY2l0eSk7CisJCXJlc3VsdC5hcHBlbmQoIiwgc3RlZXJpbmdBbmdsZTogIik7CisJCXJlc3VsdC5hcHBlbmQoc3RlZXJpbmdBbmdsZSk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBDYXJMaWtlQ29tbWFuZEltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwMV9kYXRhdHlwZXMvaW1wbC9FeHRlbnRlZExpZGFyU2NhbkltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwMV9kYXRhdHlwZXMvaW1wbC9FeHRlbnRlZExpZGFyU2NhbkltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMGQ5NGQ4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnAxX2RhdGF0eXBlcy9pbXBsL0V4dGVudGVkTGlkYXJTY2FuSW1wbC5qYXZhCkBAIC0wLDAgKzEsMjk1IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbkNoYWluOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuRXh0ZW50ZWRMaWRhclNjYW47CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuT2FycDFfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5MYXNlclNjYW47CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5FeHRlbnRlZCBMaWRhciBTY2FuPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5pbXBsLkV4dGVudGVkTGlkYXJTY2FuSW1wbCNnZXRTY2FuIDxlbT5TY2FuPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5pbXBsLkV4dGVudGVkTGlkYXJTY2FuSW1wbCNnZXRMYXllcklkIDxlbT5MYXllciBJZDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuaW1wbC5FeHRlbnRlZExpZGFyU2NhbkltcGwjZ2V0TGF5ZXJBbmdsZSA8ZW0+TGF5ZXIgQW5nbGU8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBFeHRlbnRlZExpZGFyU2NhbkltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgRXh0ZW50ZWRMaWRhclNjYW4geworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFNjYW4oKSA8ZW0+U2NhbjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0U2NhbigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIExhc2VyU2NhbiBzY2FuOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExheWVySWQoKSA8ZW0+TGF5ZXIgSWQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExheWVySWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IExBWUVSX0lEX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExheWVySWQoKSA8ZW0+TGF5ZXIgSWQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExheWVySWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgbGF5ZXJJZCA9IExBWUVSX0lEX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExheWVyQW5nbGUoKSA8ZW0+TGF5ZXIgQW5nbGU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExheWVyQW5nbGUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IExBWUVSX0FOR0xFX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExheWVyQW5nbGUoKSA8ZW0+TGF5ZXIgQW5nbGU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExheWVyQW5nbGUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgbGF5ZXJBbmdsZSA9IExBWUVSX0FOR0xFX0VERUZBVUxUOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIEV4dGVudGVkTGlkYXJTY2FuSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuRVhURU5URURfTElEQVJfU0NBTjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTGFzZXJTY2FuIGdldFNjYW4oKSB7CisJCXJldHVybiBzY2FuOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBiYXNpY1NldFNjYW4oTGFzZXJTY2FuIG5ld1NjYW4sIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJTGFzZXJTY2FuIG9sZFNjYW4gPSBzY2FuOworCQlzY2FuID0gbmV3U2NhbjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgT2FycDFfZGF0YXR5cGVzUGFja2FnZS5FWFRFTlRFRF9MSURBUl9TQ0FOX19TQ0FOLCBvbGRTY2FuLCBuZXdTY2FuKTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRTY2FuKExhc2VyU2NhbiBuZXdTY2FuKSB7CisJCWlmIChuZXdTY2FuICE9IHNjYW4pIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKHNjYW4gIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3Qpc2NhbikuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuRVhURU5URURfTElEQVJfU0NBTl9fU0NBTiwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3U2NhbiAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdTY2FuKS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gT2FycDFfZGF0YXR5cGVzUGFja2FnZS5FWFRFTlRFRF9MSURBUl9TQ0FOX19TQ0FOLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldFNjYW4obmV3U2NhbiwgbXNncyk7CisJCQlpZiAobXNncyAhPSBudWxsKSBtc2dzLmRpc3BhdGNoKCk7CisJCX0KKwkJZWxzZSBpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLkVYVEVOVEVEX0xJREFSX1NDQU5fX1NDQU4sIG5ld1NjYW4sIG5ld1NjYW4pKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldExheWVySWQoKSB7CisJCXJldHVybiBsYXllcklkOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldExheWVySWQoT2JqZWN0IG5ld0xheWVySWQpIHsKKwkJT2JqZWN0IG9sZExheWVySWQgPSBsYXllcklkOworCQlsYXllcklkID0gbmV3TGF5ZXJJZDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgT2FycDFfZGF0YXR5cGVzUGFja2FnZS5FWFRFTlRFRF9MSURBUl9TQ0FOX19MQVlFUl9JRCwgb2xkTGF5ZXJJZCwgbGF5ZXJJZCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0TGF5ZXJBbmdsZSgpIHsKKwkJcmV0dXJuIGxheWVyQW5nbGU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0TGF5ZXJBbmdsZShPYmplY3QgbmV3TGF5ZXJBbmdsZSkgeworCQlPYmplY3Qgb2xkTGF5ZXJBbmdsZSA9IGxheWVyQW5nbGU7CisJCWxheWVyQW5nbGUgPSBuZXdMYXllckFuZ2xlOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLkVYVEVOVEVEX0xJREFSX1NDQU5fX0xBWUVSX0FOR0xFLCBvbGRMYXllckFuZ2xlLCBsYXllckFuZ2xlKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGVJbnZlcnNlUmVtb3ZlKEludGVybmFsRU9iamVjdCBvdGhlckVuZCwgaW50IGZlYXR1cmVJRCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLkVYVEVOVEVEX0xJREFSX1NDQU5fX1NDQU46CisJCQkJcmV0dXJuIGJhc2ljU2V0U2NhbihudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLkVYVEVOVEVEX0xJREFSX1NDQU5fX1NDQU46CisJCQkJcmV0dXJuIGdldFNjYW4oKTsKKwkJCWNhc2UgT2FycDFfZGF0YXR5cGVzUGFja2FnZS5FWFRFTlRFRF9MSURBUl9TQ0FOX19MQVlFUl9JRDoKKwkJCQlyZXR1cm4gZ2V0TGF5ZXJJZCgpOworCQkJY2FzZSBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLkVYVEVOVEVEX0xJREFSX1NDQU5fX0xBWUVSX0FOR0xFOgorCQkJCXJldHVybiBnZXRMYXllckFuZ2xlKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDFfZGF0YXR5cGVzUGFja2FnZS5FWFRFTlRFRF9MSURBUl9TQ0FOX19TQ0FOOgorCQkJCXNldFNjYW4oKExhc2VyU2NhbiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLkVYVEVOVEVEX0xJREFSX1NDQU5fX0xBWUVSX0lEOgorCQkJCXNldExheWVySWQoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLkVYVEVOVEVEX0xJREFSX1NDQU5fX0xBWUVSX0FOR0xFOgorCQkJCXNldExheWVyQW5nbGUoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDFfZGF0YXR5cGVzUGFja2FnZS5FWFRFTlRFRF9MSURBUl9TQ0FOX19TQ0FOOgorCQkJCXNldFNjYW4oKExhc2VyU2NhbiludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuRVhURU5URURfTElEQVJfU0NBTl9fTEFZRVJfSUQ6CisJCQkJc2V0TGF5ZXJJZChMQVlFUl9JRF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLkVYVEVOVEVEX0xJREFSX1NDQU5fX0xBWUVSX0FOR0xFOgorCQkJCXNldExheWVyQW5nbGUoTEFZRVJfQU5HTEVfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLkVYVEVOVEVEX0xJREFSX1NDQU5fX1NDQU46CisJCQkJcmV0dXJuIHNjYW4gIT0gbnVsbDsKKwkJCWNhc2UgT2FycDFfZGF0YXR5cGVzUGFja2FnZS5FWFRFTlRFRF9MSURBUl9TQ0FOX19MQVlFUl9JRDoKKwkJCQlyZXR1cm4gTEFZRVJfSURfRURFRkFVTFQgPT0gbnVsbCA/IGxheWVySWQgIT0gbnVsbCA6ICFMQVlFUl9JRF9FREVGQVVMVC5lcXVhbHMobGF5ZXJJZCk7CisJCQljYXNlIE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuRVhURU5URURfTElEQVJfU0NBTl9fTEFZRVJfQU5HTEU6CisJCQkJcmV0dXJuIExBWUVSX0FOR0xFX0VERUZBVUxUID09IG51bGwgPyBsYXllckFuZ2xlICE9IG51bGwgOiAhTEFZRVJfQU5HTEVfRURFRkFVTFQuZXF1YWxzKGxheWVyQW5nbGUpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAobGF5ZXJJZDogIik7CisJCXJlc3VsdC5hcHBlbmQobGF5ZXJJZCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgbGF5ZXJBbmdsZTogIik7CisJCXJlc3VsdC5hcHBlbmQobGF5ZXJBbmdsZSk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBFeHRlbnRlZExpZGFyU2NhbkltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwMV9kYXRhdHlwZXMvaW1wbC9NdWx0aUxheWVyTGlkYXJTY2FuSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnAxX2RhdGF0eXBlcy9pbXBsL011bHRpTGF5ZXJMaWRhclNjYW5JbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDA1YTRjZAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwMV9kYXRhdHlwZXMvaW1wbC9NdWx0aUxheWVyTGlkYXJTY2FuSW1wbC5qYXZhCkBAIC0wLDAgKzEsMjQxIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbkNoYWluOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuRXh0ZW50ZWRMaWRhclNjYW47CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuTXVsdGlMYXllckxpZGFyU2NhbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5PYXJwMV9kYXRhdHlwZXNQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TXVsdGkgTGF5ZXIgTGlkYXIgU2NhbjwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuaW1wbC5NdWx0aUxheWVyTGlkYXJTY2FuSW1wbCNnZXRMYXllcnMgPGVtPkxheWVyczwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuaW1wbC5NdWx0aUxheWVyTGlkYXJTY2FuSW1wbCNnZXROYkxheWVyIDxlbT5OYiBMYXllcjwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIE11bHRpTGF5ZXJMaWRhclNjYW5JbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIE11bHRpTGF5ZXJMaWRhclNjYW4geworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExheWVycygpIDxlbT5MYXllcnM8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExheWVycygpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEV4dGVudGVkTGlkYXJTY2FuIGxheWVyczsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXROYkxheWVyKCkgPGVtPk5iIExheWVyPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXROYkxheWVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBOQl9MQVlFUl9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXROYkxheWVyKCkgPGVtPk5iIExheWVyPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXROYkxheWVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IG5iTGF5ZXIgPSBOQl9MQVlFUl9FREVGQVVMVDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBNdWx0aUxheWVyTGlkYXJTY2FuSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuTVVMVElfTEFZRVJfTElEQVJfU0NBTjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRXh0ZW50ZWRMaWRhclNjYW4gZ2V0TGF5ZXJzKCkgeworCQlyZXR1cm4gbGF5ZXJzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBiYXNpY1NldExheWVycyhFeHRlbnRlZExpZGFyU2NhbiBuZXdMYXllcnMsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJRXh0ZW50ZWRMaWRhclNjYW4gb2xkTGF5ZXJzID0gbGF5ZXJzOworCQlsYXllcnMgPSBuZXdMYXllcnM7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuTVVMVElfTEFZRVJfTElEQVJfU0NBTl9fTEFZRVJTLCBvbGRMYXllcnMsIG5ld0xheWVycyk7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0TGF5ZXJzKEV4dGVudGVkTGlkYXJTY2FuIG5ld0xheWVycykgeworCQlpZiAobmV3TGF5ZXJzICE9IGxheWVycykgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAobGF5ZXJzICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KWxheWVycykuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuTVVMVElfTEFZRVJfTElEQVJfU0NBTl9fTEFZRVJTLCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdMYXllcnMgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3TGF5ZXJzKS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gT2FycDFfZGF0YXR5cGVzUGFja2FnZS5NVUxUSV9MQVlFUl9MSURBUl9TQ0FOX19MQVlFUlMsIG51bGwsIG1zZ3MpOworCQkJbXNncyA9IGJhc2ljU2V0TGF5ZXJzKG5ld0xheWVycywgbXNncyk7CisJCQlpZiAobXNncyAhPSBudWxsKSBtc2dzLmRpc3BhdGNoKCk7CisJCX0KKwkJZWxzZSBpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLk1VTFRJX0xBWUVSX0xJREFSX1NDQU5fX0xBWUVSUywgbmV3TGF5ZXJzLCBuZXdMYXllcnMpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldE5iTGF5ZXIoKSB7CisJCXJldHVybiBuYkxheWVyOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldE5iTGF5ZXIoT2JqZWN0IG5ld05iTGF5ZXIpIHsKKwkJT2JqZWN0IG9sZE5iTGF5ZXIgPSBuYkxheWVyOworCQluYkxheWVyID0gbmV3TmJMYXllcjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgT2FycDFfZGF0YXR5cGVzUGFja2FnZS5NVUxUSV9MQVlFUl9MSURBUl9TQ0FOX19OQl9MQVlFUiwgb2xkTmJMYXllciwgbmJMYXllcikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBlSW52ZXJzZVJlbW92ZShJbnRlcm5hbEVPYmplY3Qgb3RoZXJFbmQsIGludCBmZWF0dXJlSUQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDFfZGF0YXR5cGVzUGFja2FnZS5NVUxUSV9MQVlFUl9MSURBUl9TQ0FOX19MQVlFUlM6CisJCQkJcmV0dXJuIGJhc2ljU2V0TGF5ZXJzKG51bGwsIG1zZ3MpOworCQl9CisJCXJldHVybiBzdXBlci5lSW52ZXJzZVJlbW92ZShvdGhlckVuZCwgZmVhdHVyZUlELCBtc2dzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuTVVMVElfTEFZRVJfTElEQVJfU0NBTl9fTEFZRVJTOgorCQkJCXJldHVybiBnZXRMYXllcnMoKTsKKwkJCWNhc2UgT2FycDFfZGF0YXR5cGVzUGFja2FnZS5NVUxUSV9MQVlFUl9MSURBUl9TQ0FOX19OQl9MQVlFUjoKKwkJCQlyZXR1cm4gZ2V0TmJMYXllcigpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuTVVMVElfTEFZRVJfTElEQVJfU0NBTl9fTEFZRVJTOgorCQkJCXNldExheWVycygoRXh0ZW50ZWRMaWRhclNjYW4pbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgT2FycDFfZGF0YXR5cGVzUGFja2FnZS5NVUxUSV9MQVlFUl9MSURBUl9TQ0FOX19OQl9MQVlFUjoKKwkJCQlzZXROYkxheWVyKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuTVVMVElfTEFZRVJfTElEQVJfU0NBTl9fTEFZRVJTOgorCQkJCXNldExheWVycygoRXh0ZW50ZWRMaWRhclNjYW4pbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLk1VTFRJX0xBWUVSX0xJREFSX1NDQU5fX05CX0xBWUVSOgorCQkJCXNldE5iTGF5ZXIoTkJfTEFZRVJfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLk1VTFRJX0xBWUVSX0xJREFSX1NDQU5fX0xBWUVSUzoKKwkJCQlyZXR1cm4gbGF5ZXJzICE9IG51bGw7CisJCQljYXNlIE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuTVVMVElfTEFZRVJfTElEQVJfU0NBTl9fTkJfTEFZRVI6CisJCQkJcmV0dXJuIE5CX0xBWUVSX0VERUZBVUxUID09IG51bGwgPyBuYkxheWVyICE9IG51bGwgOiAhTkJfTEFZRVJfRURFRkFVTFQuZXF1YWxzKG5iTGF5ZXIpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAobmJMYXllcjogIik7CisJCXJlc3VsdC5hcHBlbmQobmJMYXllcik7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBNdWx0aUxheWVyTGlkYXJTY2FuSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnAxX2RhdGF0eXBlcy9pbXBsL09hcnAxX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDFfZGF0YXR5cGVzL2ltcGwvT2FycDFfZGF0YXR5cGVzRmFjdG9yeUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wYTVmMjI4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnAxX2RhdGF0eXBlcy9pbXBsL09hcnAxX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmphdmEKQEAgLTAsMCArMSwxMTggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FRmFjdG9yeUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnBsdWdpbi5FY29yZVBsdWdpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5DYXJMaWtlQ29tbWFuZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5FeHRlbnRlZExpZGFyU2NhbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5NdWx0aUxheWVyTGlkYXJTY2FuOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLk9hcnAxX2RhdGF0eXBlc0ZhY3Rvcnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuT2FycDFfZGF0YXR5cGVzUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPkZhY3Rvcnk8L2I+LgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBPYXJwMV9kYXRhdHlwZXNGYWN0b3J5SW1wbCBleHRlbmRzIEVGYWN0b3J5SW1wbCBpbXBsZW1lbnRzIE9hcnAxX2RhdGF0eXBlc0ZhY3RvcnkgeworCS8qKgorCSAqIENyZWF0ZXMgdGhlIGRlZmF1bHQgZmFjdG9yeSBpbXBsZW1lbnRhdGlvbi4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIE9hcnAxX2RhdGF0eXBlc0ZhY3RvcnkgaW5pdCgpIHsKKwkJdHJ5IHsKKwkJCU9hcnAxX2RhdGF0eXBlc0ZhY3RvcnkgdGhlT2FycDFfZGF0YXR5cGVzRmFjdG9yeSA9IChPYXJwMV9kYXRhdHlwZXNGYWN0b3J5KUVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVGYWN0b3J5KE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSk7CisJCQlpZiAodGhlT2FycDFfZGF0YXR5cGVzRmFjdG9yeSAhPSBudWxsKSB7CisJCQkJcmV0dXJuIHRoZU9hcnAxX2RhdGF0eXBlc0ZhY3Rvcnk7CisJCQl9CisJCX0KKwkJY2F0Y2ggKEV4Y2VwdGlvbiBleGNlcHRpb24pIHsKKwkJCUVjb3JlUGx1Z2luLklOU1RBTkNFLmxvZyhleGNlcHRpb24pOworCQl9CisJCXJldHVybiBuZXcgT2FycDFfZGF0YXR5cGVzRmFjdG9yeUltcGwoKTsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSBmYWN0b3J5LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYXJwMV9kYXRhdHlwZXNGYWN0b3J5SW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgRU9iamVjdCBjcmVhdGUoRUNsYXNzIGVDbGFzcykgeworCQlzd2l0Y2ggKGVDbGFzcy5nZXRDbGFzc2lmaWVySUQoKSkgeworCQkJY2FzZSBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLkNBUl9MSUtFX0NPTU1BTkQ6IHJldHVybiBjcmVhdGVDYXJMaWtlQ29tbWFuZCgpOworCQkJY2FzZSBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLk1VTFRJX0xBWUVSX0xJREFSX1NDQU46IHJldHVybiBjcmVhdGVNdWx0aUxheWVyTGlkYXJTY2FuKCk7CisJCQljYXNlIE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuRVhURU5URURfTElEQVJfU0NBTjogcmV0dXJuIGNyZWF0ZUV4dGVudGVkTGlkYXJTY2FuKCk7CisJCQlkZWZhdWx0OgorCQkJCXRocm93IG5ldyBJbGxlZ2FsQXJndW1lbnRFeGNlcHRpb24oIlRoZSBjbGFzcyAnIiArIGVDbGFzcy5nZXROYW1lKCkgKyAiJyBpcyBub3QgYSB2YWxpZCBjbGFzc2lmaWVyIik7CisJCX0KKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQ2FyTGlrZUNvbW1hbmQgY3JlYXRlQ2FyTGlrZUNvbW1hbmQoKSB7CisJCUNhckxpa2VDb21tYW5kSW1wbCBjYXJMaWtlQ29tbWFuZCA9IG5ldyBDYXJMaWtlQ29tbWFuZEltcGwoKTsKKwkJcmV0dXJuIGNhckxpa2VDb21tYW5kOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBNdWx0aUxheWVyTGlkYXJTY2FuIGNyZWF0ZU11bHRpTGF5ZXJMaWRhclNjYW4oKSB7CisJCU11bHRpTGF5ZXJMaWRhclNjYW5JbXBsIG11bHRpTGF5ZXJMaWRhclNjYW4gPSBuZXcgTXVsdGlMYXllckxpZGFyU2NhbkltcGwoKTsKKwkJcmV0dXJuIG11bHRpTGF5ZXJMaWRhclNjYW47CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEV4dGVudGVkTGlkYXJTY2FuIGNyZWF0ZUV4dGVudGVkTGlkYXJTY2FuKCkgeworCQlFeHRlbnRlZExpZGFyU2NhbkltcGwgZXh0ZW50ZWRMaWRhclNjYW4gPSBuZXcgRXh0ZW50ZWRMaWRhclNjYW5JbXBsKCk7CisJCXJldHVybiBleHRlbnRlZExpZGFyU2NhbjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2FycDFfZGF0YXR5cGVzUGFja2FnZSBnZXRPYXJwMV9kYXRhdHlwZXNQYWNrYWdlKCkgeworCQlyZXR1cm4gKE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UpZ2V0RVBhY2thZ2UoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBkZXByZWNhdGVkCisJICogQGdlbmVyYXRlZAorCSAqLworCUBEZXByZWNhdGVkCisJcHVibGljIHN0YXRpYyBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlIGdldFBhY2thZ2UoKSB7CisJCXJldHVybiBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRTsKKwl9CisKK30gLy8gT2FycDFfZGF0YXR5cGVzRmFjdG9yeUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwMV9kYXRhdHlwZXMvaW1wbC9PYXJwMV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnAxX2RhdGF0eXBlcy9pbXBsL09hcnAxX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGJkNWQ2MAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwMV9kYXRhdHlwZXMvaW1wbC9PYXJwMV9kYXRhdHlwZXNQYWNrYWdlSW1wbC5qYXZhCkBAIC0wLDAgKzEsMzMzIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRVBhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5OYXZfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuQ2FyTGlrZUNvbW1hbmQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuRXh0ZW50ZWRMaWRhclNjYW47CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuTXVsdGlMYXllckxpZGFyU2NhbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5PYXJwMV9kYXRhdHlwZXNGYWN0b3J5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLk9hcnAxX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlVNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCA8Yj5QYWNrYWdlPC9iPi4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgT2FycDFfZGF0YXR5cGVzUGFja2FnZUltcGwgZXh0ZW5kcyBFUGFja2FnZUltcGwgaW1wbGVtZW50cyBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlIHsKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBjYXJMaWtlQ29tbWFuZEVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBtdWx0aUxheWVyTGlkYXJTY2FuRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGV4dGVudGVkTGlkYXJTY2FuRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIG1vZGVsIDxiPlBhY2thZ2U8L2I+LCByZWdpc3RlcmVkIHdpdGgKKwkgKiB7QGxpbmsgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlLlJlZ2lzdHJ5IEVQYWNrYWdlLlJlZ2lzdHJ5fSBieSB0aGUgcGFja2FnZQorCSAqIHBhY2thZ2UgVVJJIHZhbHVlLgorCSAqIDxwPk5vdGU6IHRoZSBjb3JyZWN0IHdheSB0byBjcmVhdGUgdGhlIHBhY2thZ2UgaXMgdmlhIHRoZSBzdGF0aWMKKwkgKiBmYWN0b3J5IG1ldGhvZCB7QGxpbmsgI2luaXQgaW5pdCgpfSwgd2hpY2ggYWxzbyBwZXJmb3JtcworCSAqIGluaXRpYWxpemF0aW9uIG9mIHRoZSBwYWNrYWdlLCBvciByZXR1cm5zIHRoZSByZWdpc3RlcmVkIHBhY2thZ2UsCisJICogaWYgb25lIGFscmVhZHkgZXhpc3RzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+IDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlLlJlZ2lzdHJ5CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5PYXJwMV9kYXRhdHlwZXNQYWNrYWdlI2VOU19VUkkKKwkgKiBAc2VlICNpbml0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlSW1wbCgpIHsKKwkJc3VwZXIoZU5TX1VSSSwgT2FycDFfZGF0YXR5cGVzRmFjdG9yeS5lSU5TVEFOQ0UpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgc3RhdGljIGJvb2xlYW4gaXNJbml0ZWQgPSBmYWxzZTsKKworCS8qKgorCSAqIENyZWF0ZXMsIHJlZ2lzdGVycywgYW5kIGluaXRpYWxpemVzIHRoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhpcyBtb2RlbCwgYW5kIGZvciBhbnkgb3RoZXJzIHVwb24gd2hpY2ggaXQgZGVwZW5kcy4KKwkgKgorCSAqIDxwPgorCSAqIFRoaXMgbWV0aG9kIGlzIHVzZWQgdG8gaW5pdGlhbGl6ZSB7QGxpbmsgT2FycDFfZGF0YXR5cGVzUGFja2FnZSNlSU5TVEFOQ0V9IHdoZW4gdGhhdCBmaWVsZCBpcyBhY2Nlc3NlZC4gQ2xpZW50cyBzaG91bGQgbm90IGludm9rZSBpdCBkaXJlY3RseS4gSW5zdGVhZCwgdGhleSBzaG91bGQgc2ltcGx5IGFjY2VzcyB0aGF0IGZpZWxkIHRvIG9idGFpbiB0aGUgcGFja2FnZS4gPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4gPCEtLSBlbmQtdXNlci1kb2MKKwkgKiAtLT4KKwkgKgorCSAqIEBzZWUgI2VOU19VUkkKKwkgKiBAc2VlICNjcmVhdGVQYWNrYWdlQ29udGVudHMoKQorCSAqIEBzZWUgI2luaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UgaW5pdCgpIHsKKwkJaWYgKGlzSW5pdGVkKSByZXR1cm4gKE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UpRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoT2FycDFfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKTsKKworCQkvLyBPYnRhaW4gb3IgY3JlYXRlIGFuZCByZWdpc3RlciBwYWNrYWdlCisJCU9hcnAxX2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZU9hcnAxX2RhdGF0eXBlc1BhY2thZ2UgPSAoT2FycDFfZGF0YXR5cGVzUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldChlTlNfVVJJKSBpbnN0YW5jZW9mIE9hcnAxX2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0KGVOU19VUkkpIDogbmV3IE9hcnAxX2RhdGF0eXBlc1BhY2thZ2VJbXBsKCkpOworCisJCWlzSW5pdGVkID0gdHJ1ZTsKKworCQkvLyBJbml0aWFsaXplIHNpbXBsZSBkZXBlbmRlbmNpZXMKKwkJVU1MUGFja2FnZS5lSU5TVEFOQ0UuZUNsYXNzKCk7CisKKwkJLy8gT2J0YWluIG9yIGNyZWF0ZSBhbmQgcmVnaXN0ZXIgaW50ZXJkZXBlbmRlbmNpZXMKKwkJUm9ib3RNTFBhY2thZ2VJbXBsIHRoZVJvYm90TUxQYWNrYWdlID0gKFJvYm90TUxQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoUm9ib3RNTFBhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBSb2JvdE1MUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShSb2JvdE1MUGFja2FnZS5lTlNfVVJJKSA6IFJvYm90TUxQYWNrYWdlLmVJTlNUQU5DRSk7CisJCURpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwgdGhlRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlID0gKERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgOiBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFKTsKKwkJR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwgdGhlR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSA9IChHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSA6IEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFKTsKKwkJTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZU5hdl9kYXRhdHlwZXNQYWNrYWdlID0gKE5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoTmF2X2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBOYXZfZGF0YXR5cGVzUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShOYXZfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSA6IE5hdl9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRSk7CisJCVNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCB0aGVTZW5zb3JfZGF0YXR5cGVzUGFja2FnZSA9IChTZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgOiBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UpOworCQlBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwgdGhlQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UgPSAoQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIDogQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFKTsKKwkJT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGwgdGhlT2FycDRfZGF0YXR5cGVzUGFja2FnZSA9IChPYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoT2FycDRfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoT2FycDRfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSA6IE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFKTsKKwkJU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlID0gKFN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoU3RkX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBTdGRfZGF0YXR5cGVzUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShTdGRfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSA6IFN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRSk7CisKKwkJLy8gQ3JlYXRlIHBhY2thZ2UgbWV0YS1kYXRhIG9iamVjdHMKKwkJdGhlT2FycDFfZGF0YXR5cGVzUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlUm9ib3RNTFBhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZURpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlTmF2X2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZVNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlT2FycDRfZGF0YXR5cGVzUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisKKwkJLy8gSW5pdGlhbGl6ZSBjcmVhdGVkIG1ldGEtZGF0YQorCQl0aGVPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlUm9ib3RNTFBhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlTmF2X2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZUFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlT2FycDRfZGF0YXR5cGVzUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKworCQkvLyBNYXJrIG1ldGEtZGF0YSB0byBpbmRpY2F0ZSBpdCBjYW4ndCBiZSBjaGFuZ2VkCisJCXRoZU9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuZnJlZXplKCk7CisKKyAgCisJCS8vIFVwZGF0ZSB0aGUgcmVnaXN0cnkgYW5kIHJldHVybiB0aGUgcGFja2FnZQorCQlFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5wdXQoT2FycDFfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJLCB0aGVPYXJwMV9kYXRhdHlwZXNQYWNrYWdlKTsKKwkJcmV0dXJuIHRoZU9hcnAxX2RhdGF0eXBlc1BhY2thZ2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRDYXJMaWtlQ29tbWFuZCgpIHsKKwkJcmV0dXJuIGNhckxpa2VDb21tYW5kRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldENhckxpa2VDb21tYW5kX1ZlbG9jaXR5KCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpY2FyTGlrZUNvbW1hbmRFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRDYXJMaWtlQ29tbWFuZF9TdGVlcmluZ0FuZ2xlKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpY2FyTGlrZUNvbW1hbmRFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldE11bHRpTGF5ZXJMaWRhclNjYW4oKSB7CisJCXJldHVybiBtdWx0aUxheWVyTGlkYXJTY2FuRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldE11bHRpTGF5ZXJMaWRhclNjYW5fTGF5ZXJzKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpbXVsdGlMYXllckxpZGFyU2NhbkVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldE11bHRpTGF5ZXJMaWRhclNjYW5fTmJMYXllcigpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKW11bHRpTGF5ZXJMaWRhclNjYW5FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldEV4dGVudGVkTGlkYXJTY2FuKCkgeworCQlyZXR1cm4gZXh0ZW50ZWRMaWRhclNjYW5FQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0RXh0ZW50ZWRMaWRhclNjYW5fU2NhbigpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKWV4dGVudGVkTGlkYXJTY2FuRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0RXh0ZW50ZWRMaWRhclNjYW5fTGF5ZXJJZCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWV4dGVudGVkTGlkYXJTY2FuRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0RXh0ZW50ZWRMaWRhclNjYW5fTGF5ZXJBbmdsZSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWV4dGVudGVkTGlkYXJTY2FuRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMik7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9hcnAxX2RhdGF0eXBlc0ZhY3RvcnkgZ2V0T2FycDFfZGF0YXR5cGVzRmFjdG9yeSgpIHsKKwkJcmV0dXJuIChPYXJwMV9kYXRhdHlwZXNGYWN0b3J5KWdldEVGYWN0b3J5SW5zdGFuY2UoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIGJvb2xlYW4gaXNDcmVhdGVkID0gZmFsc2U7CisKKwkvKioKKwkgKiBDcmVhdGVzIHRoZSBtZXRhLW1vZGVsIG9iamVjdHMgZm9yIHRoZSBwYWNrYWdlLiAgVGhpcyBtZXRob2QgaXMKKwkgKiBndWFyZGVkIHRvIGhhdmUgbm8gYWZmZWN0IG9uIGFueSBpbnZvY2F0aW9uIGJ1dCBpdHMgZmlyc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgY3JlYXRlUGFja2FnZUNvbnRlbnRzKCkgeworCQlpZiAoaXNDcmVhdGVkKSByZXR1cm47CisJCWlzQ3JlYXRlZCA9IHRydWU7CisKKwkJLy8gQ3JlYXRlIGNsYXNzZXMgYW5kIHRoZWlyIGZlYXR1cmVzCisJCWNhckxpa2VDb21tYW5kRUNsYXNzID0gY3JlYXRlRUNsYXNzKENBUl9MSUtFX0NPTU1BTkQpOworCQljcmVhdGVFQXR0cmlidXRlKGNhckxpa2VDb21tYW5kRUNsYXNzLCBDQVJfTElLRV9DT01NQU5EX19WRUxPQ0lUWSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoY2FyTGlrZUNvbW1hbmRFQ2xhc3MsIENBUl9MSUtFX0NPTU1BTkRfX1NURUVSSU5HX0FOR0xFKTsKKworCQltdWx0aUxheWVyTGlkYXJTY2FuRUNsYXNzID0gY3JlYXRlRUNsYXNzKE1VTFRJX0xBWUVSX0xJREFSX1NDQU4pOworCQljcmVhdGVFUmVmZXJlbmNlKG11bHRpTGF5ZXJMaWRhclNjYW5FQ2xhc3MsIE1VTFRJX0xBWUVSX0xJREFSX1NDQU5fX0xBWUVSUyk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUobXVsdGlMYXllckxpZGFyU2NhbkVDbGFzcywgTVVMVElfTEFZRVJfTElEQVJfU0NBTl9fTkJfTEFZRVIpOworCisJCWV4dGVudGVkTGlkYXJTY2FuRUNsYXNzID0gY3JlYXRlRUNsYXNzKEVYVEVOVEVEX0xJREFSX1NDQU4pOworCQljcmVhdGVFUmVmZXJlbmNlKGV4dGVudGVkTGlkYXJTY2FuRUNsYXNzLCBFWFRFTlRFRF9MSURBUl9TQ0FOX19TQ0FOKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShleHRlbnRlZExpZGFyU2NhbkVDbGFzcywgRVhURU5URURfTElEQVJfU0NBTl9fTEFZRVJfSUQpOworCQljcmVhdGVFQXR0cmlidXRlKGV4dGVudGVkTGlkYXJTY2FuRUNsYXNzLCBFWFRFTlRFRF9MSURBUl9TQ0FOX19MQVlFUl9BTkdMRSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBib29sZWFuIGlzSW5pdGlhbGl6ZWQgPSBmYWxzZTsKKworCS8qKgorCSAqIENvbXBsZXRlIHRoZSBpbml0aWFsaXphdGlvbiBvZiB0aGUgcGFja2FnZSBhbmQgaXRzIG1ldGEtbW9kZWwuICBUaGlzCisJICogbWV0aG9kIGlzIGd1YXJkZWQgdG8gaGF2ZSBubyBhZmZlY3Qgb24gYW55IGludm9jYXRpb24gYnV0IGl0cyBmaXJzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBpbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCkgeworCQlpZiAoaXNJbml0aWFsaXplZCkgcmV0dXJuOworCQlpc0luaXRpYWxpemVkID0gdHJ1ZTsKKworCQkvLyBJbml0aWFsaXplIHBhY2thZ2UKKwkJc2V0TmFtZShlTkFNRSk7CisJCXNldE5zUHJlZml4KGVOU19QUkVGSVgpOworCQlzZXROc1VSSShlTlNfVVJJKTsKKworCQkvLyBPYnRhaW4gb3RoZXIgZGVwZW5kZW50IHBhY2thZ2VzCisJCVN0ZF9kYXRhdHlwZXNQYWNrYWdlIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlID0gKFN0ZF9kYXRhdHlwZXNQYWNrYWdlKUVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKFN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpOworCQlTZW5zb3JfZGF0YXR5cGVzUGFja2FnZSB0aGVTZW5zb3JfZGF0YXR5cGVzUGFja2FnZSA9IChTZW5zb3JfZGF0YXR5cGVzUGFja2FnZSlFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKTsKKworCQkvLyBDcmVhdGUgdHlwZSBwYXJhbWV0ZXJzCisKKwkJLy8gU2V0IGJvdW5kcyBmb3IgdHlwZSBwYXJhbWV0ZXJzCisKKwkJLy8gQWRkIHN1cGVydHlwZXMgdG8gY2xhc3NlcworCisJCS8vIEluaXRpYWxpemUgY2xhc3NlcywgZmVhdHVyZXMsIGFuZCBvcGVyYXRpb25zOyBhZGQgcGFyYW1ldGVycworCQlpbml0RUNsYXNzKGNhckxpa2VDb21tYW5kRUNsYXNzLCBDYXJMaWtlQ29tbWFuZC5jbGFzcywgIkNhckxpa2VDb21tYW5kIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RUF0dHJpYnV0ZShnZXRDYXJMaWtlQ29tbWFuZF9WZWxvY2l0eSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDY0KCksICJ2ZWxvY2l0eSIsICIwIiwgMSwgMSwgQ2FyTGlrZUNvbW1hbmQuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRDYXJMaWtlQ29tbWFuZF9TdGVlcmluZ0FuZ2xlKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0NjQoKSwgInN0ZWVyaW5nQW5nbGUiLCAiMCIsIDEsIDEsIENhckxpa2VDb21tYW5kLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKG11bHRpTGF5ZXJMaWRhclNjYW5FQ2xhc3MsIE11bHRpTGF5ZXJMaWRhclNjYW4uY2xhc3MsICJNdWx0aUxheWVyTGlkYXJTY2FuIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXRNdWx0aUxheWVyTGlkYXJTY2FuX0xheWVycygpLCB0aGlzLmdldEV4dGVudGVkTGlkYXJTY2FuKCksIG51bGwsICJsYXllcnMiLCBudWxsLCAxLCAxLCBNdWx0aUxheWVyTGlkYXJTY2FuLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0TXVsdGlMYXllckxpZGFyU2Nhbl9OYkxheWVyKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFVJbnQ4KCksICJuYkxheWVyIiwgbnVsbCwgMSwgMSwgTXVsdGlMYXllckxpZGFyU2Nhbi5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhleHRlbnRlZExpZGFyU2NhbkVDbGFzcywgRXh0ZW50ZWRMaWRhclNjYW4uY2xhc3MsICJFeHRlbnRlZExpZGFyU2NhbiIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0RXh0ZW50ZWRMaWRhclNjYW5fU2NhbigpLCB0aGVTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5nZXRMYXNlclNjYW4oKSwgbnVsbCwgInNjYW4iLCBudWxsLCAxLCAxLCBFeHRlbnRlZExpZGFyU2Nhbi5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEV4dGVudGVkTGlkYXJTY2FuX0xheWVySWQoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0VUludDgoKSwgImxheWVySWQiLCBudWxsLCAxLCAxLCBFeHRlbnRlZExpZGFyU2Nhbi5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEV4dGVudGVkTGlkYXJTY2FuX0xheWVyQW5nbGUoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAibGF5ZXJBbmdsZSIsIG51bGwsIDEsIDEsIEV4dGVudGVkTGlkYXJTY2FuLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQkvLyBDcmVhdGUgcmVzb3VyY2UKKwkJY3JlYXRlUmVzb3VyY2UoZU5TX1VSSSk7CisJfQorCit9IC8vIE9hcnAxX2RhdGF0eXBlc1BhY2thZ2VJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDFfZGF0YXR5cGVzL3V0aWwvT2FycDFfZGF0YXR5cGVzQWRhcHRlckZhY3RvcnkuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwMV9kYXRhdHlwZXMvdXRpbC9PYXJwMV9kYXRhdHlwZXNBZGFwdGVyRmFjdG9yeS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAzYzg3ODMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDFfZGF0YXR5cGVzL3V0aWwvT2FycDFfZGF0YXR5cGVzQWRhcHRlckZhY3RvcnkuamF2YQpAQCAtMCwwICsxLDE1NiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMudXRpbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5BZGFwdGVyRmFjdG9yeUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuQ2FyTGlrZUNvbW1hbmQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuRXh0ZW50ZWRMaWRhclNjYW47CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuTXVsdGlMYXllckxpZGFyU2NhbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5PYXJwMV9kYXRhdHlwZXNQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBUaGUgPGI+QWRhcHRlciBGYWN0b3J5PC9iPiBmb3IgdGhlIG1vZGVsLgorICogSXQgcHJvdmlkZXMgYW4gYWRhcHRlciA8Y29kZT5jcmVhdGVYWFg8L2NvZGU+IG1ldGhvZCBmb3IgZWFjaCBjbGFzcyBvZiB0aGUgbW9kZWwuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuT2FycDFfZGF0YXR5cGVzUGFja2FnZQorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgT2FycDFfZGF0YXR5cGVzQWRhcHRlckZhY3RvcnkgZXh0ZW5kcyBBZGFwdGVyRmFjdG9yeUltcGwgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgbW9kZWwgcGFja2FnZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UgbW9kZWxQYWNrYWdlOworCisJLyoqCisJICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgYWRhcHRlciBmYWN0b3J5LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYXJwMV9kYXRhdHlwZXNBZGFwdGVyRmFjdG9yeSgpIHsKKwkJaWYgKG1vZGVsUGFja2FnZSA9PSBudWxsKSB7CisJCQltb2RlbFBhY2thZ2UgPSBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRTsKKwkJfQorCX0KKworCS8qKgorCSAqIFJldHVybnMgd2hldGhlciB0aGlzIGZhY3RvcnkgaXMgYXBwbGljYWJsZSBmb3IgdGhlIHR5cGUgb2YgdGhlIG9iamVjdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyA8Y29kZT50cnVlPC9jb2RlPiBpZiB0aGUgb2JqZWN0IGlzIGVpdGhlciB0aGUgbW9kZWwncyBwYWNrYWdlIG9yIGlzIGFuIGluc3RhbmNlIG9iamVjdCBvZiB0aGUgbW9kZWwuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB3aGV0aGVyIHRoaXMgZmFjdG9yeSBpcyBhcHBsaWNhYmxlIGZvciB0aGUgdHlwZSBvZiB0aGUgb2JqZWN0LgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBpc0ZhY3RvcnlGb3JUeXBlKE9iamVjdCBvYmplY3QpIHsKKwkJaWYgKG9iamVjdCA9PSBtb2RlbFBhY2thZ2UpIHsKKwkJCXJldHVybiB0cnVlOworCQl9CisJCWlmIChvYmplY3QgaW5zdGFuY2VvZiBFT2JqZWN0KSB7CisJCQlyZXR1cm4gKChFT2JqZWN0KW9iamVjdCkuZUNsYXNzKCkuZ2V0RVBhY2thZ2UoKSA9PSBtb2RlbFBhY2thZ2U7CisJCX0KKwkJcmV0dXJuIGZhbHNlOworCX0KKworCS8qKgorCSAqIFRoZSBzd2l0Y2ggdGhhdCBkZWxlZ2F0ZXMgdG8gdGhlIDxjb2RlPmNyZWF0ZVhYWDwvY29kZT4gbWV0aG9kcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2FycDFfZGF0YXR5cGVzU3dpdGNoPEFkYXB0ZXI+IG1vZGVsU3dpdGNoID0KKwkJCW5ldyBPYXJwMV9kYXRhdHlwZXNTd2l0Y2g8QWRhcHRlcj4oKSB7CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VDYXJMaWtlQ29tbWFuZChDYXJMaWtlQ29tbWFuZCBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlQ2FyTGlrZUNvbW1hbmRBZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VNdWx0aUxheWVyTGlkYXJTY2FuKE11bHRpTGF5ZXJMaWRhclNjYW4gb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZU11bHRpTGF5ZXJMaWRhclNjYW5BZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGNhc2VFeHRlbnRlZExpZGFyU2NhbihFeHRlbnRlZExpZGFyU2NhbiBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlRXh0ZW50ZWRMaWRhclNjYW5BZGFwdGVyKCk7CisJCQl9CisJCQlAT3ZlcnJpZGUKKwkJCXB1YmxpYyBBZGFwdGVyIGRlZmF1bHRDYXNlKEVPYmplY3Qgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUVPYmplY3RBZGFwdGVyKCk7CisJCQl9CisJCX07CisKKwkvKioKKwkgKiBDcmVhdGVzIGFuIGFkYXB0ZXIgZm9yIHRoZSA8Y29kZT50YXJnZXQ8L2NvZGU+LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHRhcmdldCB0aGUgb2JqZWN0IHRvIGFkYXB0LgorCSAqIEByZXR1cm4gdGhlIGFkYXB0ZXIgZm9yIHRoZSA8Y29kZT50YXJnZXQ8L2NvZGU+LgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVBZGFwdGVyKE5vdGlmaWVyIHRhcmdldCkgeworCQlyZXR1cm4gbW9kZWxTd2l0Y2guZG9Td2l0Y2goKEVPYmplY3QpdGFyZ2V0KTsKKwl9CisKKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuQ2FyTGlrZUNvbW1hbmQgPGVtPkNhciBMaWtlIENvbW1hbmQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuQ2FyTGlrZUNvbW1hbmQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlQ2FyTGlrZUNvbW1hbmRBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLk11bHRpTGF5ZXJMaWRhclNjYW4gPGVtPk11bHRpIExheWVyIExpZGFyIFNjYW48L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuTXVsdGlMYXllckxpZGFyU2NhbgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVNdWx0aUxheWVyTGlkYXJTY2FuQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5FeHRlbnRlZExpZGFyU2NhbiA8ZW0+RXh0ZW50ZWQgTGlkYXIgU2NhbjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5FeHRlbnRlZExpZGFyU2NhbgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVFeHRlbnRlZExpZGFyU2NhbkFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgdGhlIGRlZmF1bHQgY2FzZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUVPYmplY3RBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKK30gLy8gT2FycDFfZGF0YXR5cGVzQWRhcHRlckZhY3RvcnkKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwMV9kYXRhdHlwZXMvdXRpbC9PYXJwMV9kYXRhdHlwZXNTd2l0Y2guamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwMV9kYXRhdHlwZXMvdXRpbC9PYXJwMV9kYXRhdHlwZXNTd2l0Y2guamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43YTNhYzdkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnAxX2RhdGF0eXBlcy91dGlsL09hcnAxX2RhdGF0eXBlc1N3aXRjaC5qYXZhCkBAIC0wLDAgKzEsMTUyIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy51dGlsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLlN3aXRjaDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5DYXJMaWtlQ29tbWFuZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5FeHRlbnRlZExpZGFyU2NhbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5NdWx0aUxheWVyTGlkYXJTY2FuOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLk9hcnAxX2RhdGF0eXBlc1BhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIFRoZSA8Yj5Td2l0Y2g8L2I+IGZvciB0aGUgbW9kZWwncyBpbmhlcml0YW5jZSBoaWVyYXJjaHkuCisgKiBJdCBzdXBwb3J0cyB0aGUgY2FsbCB7QGxpbmsgI2RvU3dpdGNoKEVPYmplY3QpIGRvU3dpdGNoKG9iamVjdCl9IHRvIGludm9rZSB0aGUgPGNvZGU+Y2FzZVhYWDwvY29kZT4gbWV0aG9kIGZvciBlYWNoIGNsYXNzIG9mIHRoZSBtb2RlbCwKKyAqIHN0YXJ0aW5nIHdpdGggdGhlIGFjdHVhbCBjbGFzcyBvZiB0aGUgb2JqZWN0CisgKiBhbmQgcHJvY2VlZGluZyB1cCB0aGUgaW5oZXJpdGFuY2UgaGllcmFyY2h5CisgKiB1bnRpbCBhIG5vbi1udWxsIHJlc3VsdCBpcyByZXR1cm5lZCwKKyAqIHdoaWNoIGlzIHRoZSByZXN1bHQgb2YgdGhlIHN3aXRjaC4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5PYXJwMV9kYXRhdHlwZXNQYWNrYWdlCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBPYXJwMV9kYXRhdHlwZXNTd2l0Y2g8VD4gZXh0ZW5kcyBTd2l0Y2g8VD4geworCS8qKgorCSAqIFRoZSBjYWNoZWQgbW9kZWwgcGFja2FnZQorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgT2FycDFfZGF0YXR5cGVzUGFja2FnZSBtb2RlbFBhY2thZ2U7CisKKwkvKioKKwkgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSBzd2l0Y2guCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9hcnAxX2RhdGF0eXBlc1N3aXRjaCgpIHsKKwkJaWYgKG1vZGVsUGFja2FnZSA9PSBudWxsKSB7CisJCQltb2RlbFBhY2thZ2UgPSBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRTsKKwkJfQorCX0KKworCS8qKgorCSAqIENoZWNrcyB3aGV0aGVyIHRoaXMgaXMgYSBzd2l0Y2ggZm9yIHRoZSBnaXZlbiBwYWNrYWdlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtZXRlciBlUGFja2FnZSB0aGUgcGFja2FnZSBpbiBxdWVzdGlvbi4KKwkgKiBAcmV0dXJuIHdoZXRoZXIgdGhpcyBpcyBhIHN3aXRjaCBmb3IgdGhlIGdpdmVuIHBhY2thZ2UuCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBib29sZWFuIGlzU3dpdGNoRm9yKEVQYWNrYWdlIGVQYWNrYWdlKSB7CisJCXJldHVybiBlUGFja2FnZSA9PSBtb2RlbFBhY2thZ2U7CisJfQorCisJLyoqCisJICogQ2FsbHMgPGNvZGU+Y2FzZVhYWDwvY29kZT4gZm9yIGVhY2ggY2xhc3Mgb2YgdGhlIG1vZGVsIHVudGlsIG9uZSByZXR1cm5zIGEgbm9uIG51bGwgcmVzdWx0OyBpdCB5aWVsZHMgdGhhdCByZXN1bHQuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBmaXJzdCBub24tbnVsbCByZXN1bHQgcmV0dXJuZWQgYnkgYSA8Y29kZT5jYXNlWFhYPC9jb2RlPiBjYWxsLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgVCBkb1N3aXRjaChpbnQgY2xhc3NpZmllcklELCBFT2JqZWN0IHRoZUVPYmplY3QpIHsKKwkJc3dpdGNoIChjbGFzc2lmaWVySUQpIHsKKwkJCWNhc2UgT2FycDFfZGF0YXR5cGVzUGFja2FnZS5DQVJfTElLRV9DT01NQU5EOiB7CisJCQkJQ2FyTGlrZUNvbW1hbmQgY2FyTGlrZUNvbW1hbmQgPSAoQ2FyTGlrZUNvbW1hbmQpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VDYXJMaWtlQ29tbWFuZChjYXJMaWtlQ29tbWFuZCk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLk1VTFRJX0xBWUVSX0xJREFSX1NDQU46IHsKKwkJCQlNdWx0aUxheWVyTGlkYXJTY2FuIG11bHRpTGF5ZXJMaWRhclNjYW4gPSAoTXVsdGlMYXllckxpZGFyU2Nhbil0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZU11bHRpTGF5ZXJMaWRhclNjYW4obXVsdGlMYXllckxpZGFyU2Nhbik7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLkVYVEVOVEVEX0xJREFSX1NDQU46IHsKKwkJCQlFeHRlbnRlZExpZGFyU2NhbiBleHRlbnRlZExpZGFyU2NhbiA9IChFeHRlbnRlZExpZGFyU2Nhbil0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZUV4dGVudGVkTGlkYXJTY2FuKGV4dGVudGVkTGlkYXJTY2FuKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQlkZWZhdWx0OiByZXR1cm4gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCX0KKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5DYXIgTGlrZSBDb21tYW5kPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Q2FyIExpa2UgQ29tbWFuZDwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUNhckxpa2VDb21tYW5kKENhckxpa2VDb21tYW5kIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5NdWx0aSBMYXllciBMaWRhciBTY2FuPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TXVsdGkgTGF5ZXIgTGlkYXIgU2NhbjwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZU11bHRpTGF5ZXJMaWRhclNjYW4oTXVsdGlMYXllckxpZGFyU2NhbiBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+RXh0ZW50ZWQgTGlkYXIgU2NhbjwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkV4dGVudGVkIExpZGFyIFNjYW48L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VFeHRlbnRlZExpZGFyU2NhbihFeHRlbnRlZExpZGFyU2NhbiBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+RU9iamVjdDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLCBidXQgdGhpcyBpcyB0aGUgbGFzdCBjYXNlIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5FT2JqZWN0PC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgVCBkZWZhdWx0Q2FzZShFT2JqZWN0IG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKK30gLy8gT2FycDFfZGF0YXR5cGVzU3dpdGNoCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL0FuZ3VsYXIuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvQW5ndWxhci5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJhOWY5YjgKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL0FuZ3VsYXIuamF2YQpAQCAtMCwwICsxLDQ5IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Bbmd1bGFyPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLkFuZ3VsYXIjZ2V0VmFsdWUgPGVtPlZhbHVlPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlI2dldEFuZ3VsYXIoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgQW5ndWxhciBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlZhbHVlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5WYWx1ZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+VmFsdWU8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFZhbHVlKFVJbnQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2UjZ2V0QW5ndWxhcl9WYWx1ZSgpCisJICogQG1vZGVsIHVuaXF1ZT0iZmFsc2UiIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFZhbHVlKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5Bbmd1bGFyI2dldFZhbHVlIDxlbT5WYWx1ZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+VmFsdWU8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFZhbHVlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRWYWx1ZShPYmplY3QgdmFsdWUpOworCit9IC8vIEFuZ3VsYXIKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvQXJ0X1NldF9Qb2ludC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9BcnRfU2V0X1BvaW50LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODIxNGQ0MQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvQXJ0X1NldF9Qb2ludC5qYXZhCkBAIC0wLDAgKzEsNzUgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkFydCBTZXQgUG9pbnQ8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuQXJ0X1NldF9Qb2ludCNnZXRPbWVnYV9sZWZ0IDxlbT5PbWVnYSBsZWZ0PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5BcnRfU2V0X1BvaW50I2dldE9tZWdhX3JpZ2h0IDxlbT5PbWVnYSByaWdodDwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZSNnZXRBcnRfU2V0X1BvaW50KCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIEFydF9TZXRfUG9pbnQgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5PbWVnYSBsZWZ0PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5PbWVnYSBsZWZ0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5PbWVnYSBsZWZ0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRPbWVnYV9sZWZ0KFZlbG9jaXR5X0FuZ3VsYXIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlI2dldEFydF9TZXRfUG9pbnRfT21lZ2FfbGVmdCgpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCVZlbG9jaXR5X0FuZ3VsYXIgZ2V0T21lZ2FfbGVmdCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuQXJ0X1NldF9Qb2ludCNnZXRPbWVnYV9sZWZ0IDxlbT5PbWVnYSBsZWZ0PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5PbWVnYSBsZWZ0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRPbWVnYV9sZWZ0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRPbWVnYV9sZWZ0KFZlbG9jaXR5X0FuZ3VsYXIgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+T21lZ2EgcmlnaHQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPk9tZWdhIHJpZ2h0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5PbWVnYSByaWdodDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0T21lZ2FfcmlnaHQoVmVsb2NpdHlfQW5ndWxhcikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2UjZ2V0QXJ0X1NldF9Qb2ludF9PbWVnYV9yaWdodCgpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCVZlbG9jaXR5X0FuZ3VsYXIgZ2V0T21lZ2FfcmlnaHQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLkFydF9TZXRfUG9pbnQjZ2V0T21lZ2FfcmlnaHQgPGVtPk9tZWdhIHJpZ2h0PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5PbWVnYSByaWdodDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0T21lZ2FfcmlnaHQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldE9tZWdhX3JpZ2h0KFZlbG9jaXR5X0FuZ3VsYXIgdmFsdWUpOworCit9IC8vIEFydF9TZXRfUG9pbnQKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvRGlzdGFuY2UuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvRGlzdGFuY2UuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NmM4ZjQ4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9EaXN0YW5jZS5qYXZhCkBAIC0wLDAgKzEsNDkgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkRpc3RhbmNlPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLkRpc3RhbmNlI2dldFZhbHVlIDxlbT5WYWx1ZTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZSNnZXREaXN0YW5jZSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBEaXN0YW5jZSBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlZhbHVlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5WYWx1ZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+VmFsdWU8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFZhbHVlKFVJbnQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2UjZ2V0RGlzdGFuY2VfVmFsdWUoKQorCSAqIEBtb2RlbCB1bmlxdWU9ImZhbHNlIiBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRWYWx1ZSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuRGlzdGFuY2UjZ2V0VmFsdWUgPGVtPlZhbHVlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5WYWx1ZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0VmFsdWUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFZhbHVlKE9iamVjdCB2YWx1ZSk7CisKK30gLy8gRGlzdGFuY2UKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvTWV0cmljLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL01ldHJpYy5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUxZmRlOWQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL01ldHJpYy5qYXZhCkBAIC0wLDAgKzEsNDkgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk1ldHJpYzwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5NZXRyaWMjZ2V0VmFsdWUgPGVtPlZhbHVlPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlI2dldE1ldHJpYygpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBNZXRyaWMgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5WYWx1ZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+VmFsdWU8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlZhbHVlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRWYWx1ZShGbG9hdDY0KQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZSNnZXRNZXRyaWNfVmFsdWUoKQorCSAqIEBtb2RlbCB1bmlxdWU9ImZhbHNlIiBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0VmFsdWUoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk1ldHJpYyNnZXRWYWx1ZSA8ZW0+VmFsdWU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlZhbHVlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRWYWx1ZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0VmFsdWUoT2JqZWN0IHZhbHVlKTsKKworfSAvLyBNZXRyaWMKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvTWlsbGlfQW1wLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL01pbGxpX0FtcC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY0OWM3M2UKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL01pbGxpX0FtcC5qYXZhCkBAIC0wLDAgKzEsNDkgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk1pbGxpIEFtcDwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5NaWxsaV9BbXAjZ2V0VmFsdWUgPGVtPlZhbHVlPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlI2dldE1pbGxpX0FtcCgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBNaWxsaV9BbXAgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5WYWx1ZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+VmFsdWU8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlZhbHVlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRWYWx1ZShVSW50MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlI2dldE1pbGxpX0FtcF9WYWx1ZSgpCisJICogQG1vZGVsIHVuaXF1ZT0iZmFsc2UiIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFZhbHVlKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5NaWxsaV9BbXAjZ2V0VmFsdWUgPGVtPlZhbHVlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5WYWx1ZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0VmFsdWUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFZhbHVlKE9iamVjdCB2YWx1ZSk7CisKK30gLy8gTWlsbGlfQW1wCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL09hcnA0X2RhdGF0eXBlc0ZhY3RvcnkuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvT2FycDRfZGF0YXR5cGVzRmFjdG9yeS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZkMmY5YzYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL09hcnA0X2RhdGF0eXBlc0ZhY3RvcnkuamF2YQpAQCAtMCwwICsxLDE3NyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUZhY3Rvcnk7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIFRoZSA8Yj5GYWN0b3J5PC9iPiBmb3IgdGhlIG1vZGVsLgorICogSXQgcHJvdmlkZXMgYSBjcmVhdGUgbWV0aG9kIGZvciBlYWNoIG5vbi1hYnN0cmFjdCBjbGFzcyBvZiB0aGUgbW9kZWwuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZQorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIE9hcnA0X2RhdGF0eXBlc0ZhY3RvcnkgZXh0ZW5kcyBFRmFjdG9yeSB7CisJLyoqCisJICogVGhlIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiB0aGUgZmFjdG9yeS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYXJwNF9kYXRhdHlwZXNGYWN0b3J5IGVJTlNUQU5DRSA9IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2FycDRfZGF0YXR5cGVzRmFjdG9yeUltcGwuaW5pdCgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5WZWxvY2l0eSBMaW5lYXI8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlZlbG9jaXR5IExpbmVhcjwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJVmVsb2NpdHlfTGluZWFyIGNyZWF0ZVZlbG9jaXR5X0xpbmVhcigpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5BcnQgU2V0IFBvaW50PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5BcnQgU2V0IFBvaW50PC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlBcnRfU2V0X1BvaW50IGNyZWF0ZUFydF9TZXRfUG9pbnQoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+VmVsb2NpdHkgQW5ndWxhcjwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+VmVsb2NpdHkgQW5ndWxhcjwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJVmVsb2NpdHlfQW5ndWxhciBjcmVhdGVWZWxvY2l0eV9Bbmd1bGFyKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkRpc3RhbmNlPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5EaXN0YW5jZTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRGlzdGFuY2UgY3JlYXRlRGlzdGFuY2UoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TWV0cmljPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5NZXRyaWM8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCU1ldHJpYyBjcmVhdGVNZXRyaWMoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+QW5ndWxhcjwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+QW5ndWxhcjwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQW5ndWxhciBjcmVhdGVBbmd1bGFyKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPk9wIFNldCBQb2ludDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+T3AgU2V0IFBvaW50PC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPcF9TZXRfUG9pbnQgY3JlYXRlT3BfU2V0X1BvaW50KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlNwZWVkIFRpY3MgTGVmdCBSaWdodDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+U3BlZWQgVGljcyBMZWZ0IFJpZ2h0PC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTcGVlZF9UaWNzX0xlZnRfUmlnaHQgY3JlYXRlU3BlZWRfVGljc19MZWZ0X1JpZ2h0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlNwZWVkIFRpY3M8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlNwZWVkIFRpY3M8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCVNwZWVkX1RpY3MgY3JlYXRlU3BlZWRfVGljcygpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5PZG9tZXRlciBUaWNzPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5PZG9tZXRlciBUaWNzPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPZG9tZXRlcl9UaWNzIGNyZWF0ZU9kb21ldGVyX1RpY3MoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+T2RvbWV0ZXIgVGljcyBMZWZ0IFJpZ2h0PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5PZG9tZXRlciBUaWNzIExlZnQgUmlnaHQ8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCU9kb21ldGVyX1RpY3NfTGVmdF9SaWdodCBjcmVhdGVPZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHQoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UHJveGkgTGVmdCBSaWdodDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UHJveGkgTGVmdCBSaWdodDwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJUHJveGlfTGVmdF9SaWdodCBjcmVhdGVQcm94aV9MZWZ0X1JpZ2h0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPk1pbGxpIEFtcDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TWlsbGkgQW1wPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlNaWxsaV9BbXAgY3JlYXRlTWlsbGlfQW1wKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPk9kb21ldGVyIExpbmVhciBMZWZ0IFJpZ2h0PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5PZG9tZXRlciBMaW5lYXIgTGVmdCBSaWdodDwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHQgY3JlYXRlT2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHQoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+VmVsb2NpdHkgQW5ndWxhciBMZWZ0IFJpZ2h0PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5WZWxvY2l0eSBBbmd1bGFyIExlZnQgUmlnaHQ8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCVZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodCBjcmVhdGVWZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHQoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+VmVsb2NpdHk8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlZlbG9jaXR5PC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlWZWxvY2l0eSBjcmVhdGVWZWxvY2l0eSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgcGFja2FnZSBzdXBwb3J0ZWQgYnkgdGhpcyBmYWN0b3J5LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgcGFja2FnZSBzdXBwb3J0ZWQgYnkgdGhpcyBmYWN0b3J5LgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYXJwNF9kYXRhdHlwZXNQYWNrYWdlIGdldE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UoKTsKKworfSAvLyBPYXJwNF9kYXRhdHlwZXNGYWN0b3J5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL09hcnA0X2RhdGF0eXBlc1BhY2thZ2UuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvT2FycDRfZGF0YXR5cGVzUGFja2FnZS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdkZmZkYTYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL09hcnA0X2RhdGF0eXBlc1BhY2thZ2UuamF2YQpAQCAtMCwwICsxLDE1MjUgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIFRoZSA8Yj5QYWNrYWdlPC9iPiBmb3IgdGhlIG1vZGVsLgorICogSXQgY29udGFpbnMgYWNjZXNzb3JzIGZvciB0aGUgbWV0YSBvYmplY3RzIHRvIHJlcHJlc2VudAorICogPHVsPgorICogPGxpPmVhY2ggY2xhc3MsPC9saT4KKyAqIDxsaT5lYWNoIGZlYXR1cmUgb2YgZWFjaCBjbGFzcyw8L2xpPgorICogPGxpPmVhY2ggb3BlcmF0aW9uIG9mIGVhY2ggY2xhc3MsPC9saT4KKyAqIDxsaT5lYWNoIGVudW0sPC9saT4KKyAqIDxsaT5hbmQgZWFjaCBkYXRhIHR5cGU8L2xpPgorICogPC91bD4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PYXJwNF9kYXRhdHlwZXNGYWN0b3J5CisgKiBAbW9kZWwga2luZD0icGFja2FnZSIKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlIGV4dGVuZHMgRVBhY2thZ2UgeworCS8qKgorCSAqIFRoZSBwYWNrYWdlIG5hbWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJU3RyaW5nIGVOQU1FID0gIm9hcnA0X2RhdGF0eXBlcyI7CisKKwkvKioKKwkgKiBUaGUgcGFja2FnZSBuYW1lc3BhY2UgVVJJLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCVN0cmluZyBlTlNfVVJJID0gImh0dHA6Ly8vUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzLmVjb3JlIjsKKworCS8qKgorCSAqIFRoZSBwYWNrYWdlIG5hbWVzcGFjZSBuYW1lLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCVN0cmluZyBlTlNfUFJFRklYID0gIlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcyI7CisKKwkvKioKKwkgKiBUaGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBwYWNrYWdlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCU9hcnA0X2RhdGF0eXBlc1BhY2thZ2UgZUlOU1RBTkNFID0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5pbml0KCk7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuVmVsb2NpdHlfTGluZWFySW1wbCA8ZW0+VmVsb2NpdHkgTGluZWFyPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5WZWxvY2l0eV9MaW5lYXJJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldFZlbG9jaXR5X0xpbmVhcigpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBWRUxPQ0lUWV9MSU5FQVIgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlZhbHVlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgVkVMT0NJVFlfTElORUFSX19WQUxVRSA9IDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+VmVsb2NpdHkgTGluZWFyPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFZFTE9DSVRZX0xJTkVBUl9GRUFUVVJFX0NPVU5UID0gMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5WZWxvY2l0eSBMaW5lYXI8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgVkVMT0NJVFlfTElORUFSX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuQXJ0X1NldF9Qb2ludEltcGwgPGVtPkFydCBTZXQgUG9pbnQ8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLkFydF9TZXRfUG9pbnRJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldEFydF9TZXRfUG9pbnQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgQVJUX1NFVF9QT0lOVCA9IDE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+T21lZ2EgbGVmdDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEFSVF9TRVRfUE9JTlRfX09NRUdBX0xFRlQgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk9tZWdhIHJpZ2h0PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQVJUX1NFVF9QT0lOVF9fT01FR0FfUklHSFQgPSAxOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkFydCBTZXQgUG9pbnQ8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQVJUX1NFVF9QT0lOVF9GRUFUVVJFX0NPVU5UID0gMjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5BcnQgU2V0IFBvaW50PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEFSVF9TRVRfUE9JTlRfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5WZWxvY2l0eV9Bbmd1bGFySW1wbCA8ZW0+VmVsb2NpdHkgQW5ndWxhcjwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuVmVsb2NpdHlfQW5ndWxhckltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0VmVsb2NpdHlfQW5ndWxhcigpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBWRUxPQ0lUWV9BTkdVTEFSID0gMjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5WYWx1ZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFZFTE9DSVRZX0FOR1VMQVJfX1ZBTFVFID0gMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5WZWxvY2l0eSBBbmd1bGFyPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFZFTE9DSVRZX0FOR1VMQVJfRkVBVFVSRV9DT1VOVCA9IDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+VmVsb2NpdHkgQW5ndWxhcjwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBWRUxPQ0lUWV9BTkdVTEFSX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuRGlzdGFuY2VJbXBsIDxlbT5EaXN0YW5jZTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuRGlzdGFuY2VJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldERpc3RhbmNlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IERJU1RBTkNFID0gMzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5WYWx1ZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IERJU1RBTkNFX19WQUxVRSA9IDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+RGlzdGFuY2U8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgRElTVEFOQ0VfRkVBVFVSRV9DT1VOVCA9IDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+RGlzdGFuY2U8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgRElTVEFOQ0VfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5NZXRyaWNJbXBsIDxlbT5NZXRyaWM8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk1ldHJpY0ltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0TWV0cmljKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IE1FVFJJQyA9IDQ7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+VmFsdWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBNRVRSSUNfX1ZBTFVFID0gMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5NZXRyaWM8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTUVUUklDX0ZFQVRVUkVfQ09VTlQgPSAxOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPk1ldHJpYzwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBNRVRSSUNfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5Bbmd1bGFySW1wbCA8ZW0+QW5ndWxhcjwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuQW5ndWxhckltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0QW5ndWxhcigpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBBTkdVTEFSID0gNTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5WYWx1ZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEFOR1VMQVJfX1ZBTFVFID0gMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5Bbmd1bGFyPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEFOR1VMQVJfRkVBVFVSRV9DT1VOVCA9IDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+QW5ndWxhcjwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBBTkdVTEFSX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT3BfU2V0X1BvaW50SW1wbCA8ZW0+T3AgU2V0IFBvaW50PC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5PcF9TZXRfUG9pbnRJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldE9wX1NldF9Qb2ludCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBPUF9TRVRfUE9JTlQgPSA2OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlZlbG9jaXR5PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT1BfU0VUX1BPSU5UX19WRUxPQ0lUWSA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+T3JpZW50YXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPUF9TRVRfUE9JTlRfX09SSUVOVEFUSU9OID0gMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5PcCBTZXQgUG9pbnQ8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT1BfU0VUX1BPSU5UX0ZFQVRVUkVfQ09VTlQgPSAyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPk9wIFNldCBQb2ludDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPUF9TRVRfUE9JTlRfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5TcGVlZF9UaWNzX0xlZnRfUmlnaHRJbXBsIDxlbT5TcGVlZCBUaWNzIExlZnQgUmlnaHQ8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLlNwZWVkX1RpY3NfTGVmdF9SaWdodEltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0U3BlZWRfVGljc19MZWZ0X1JpZ2h0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFNQRUVEX1RJQ1NfTEVGVF9SSUdIVCA9IDc7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+U3BlZWQgdGljcyBsZWZ0PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1BFRURfVElDU19MRUZUX1JJR0hUX19TUEVFRF9USUNTX0xFRlQgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlNwZWVkIHRpY3MgcmlnaHQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTUEVFRF9USUNTX0xFRlRfUklHSFRfX1NQRUVEX1RJQ1NfUklHSFQgPSAxOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlNwZWVkIFRpY3MgTGVmdCBSaWdodDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBTUEVFRF9USUNTX0xFRlRfUklHSFRfRkVBVFVSRV9DT1VOVCA9IDI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+U3BlZWQgVGljcyBMZWZ0IFJpZ2h0PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNQRUVEX1RJQ1NfTEVGVF9SSUdIVF9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLlNwZWVkX1RpY3NJbXBsIDxlbT5TcGVlZCBUaWNzPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5TcGVlZF9UaWNzSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRTcGVlZF9UaWNzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFNQRUVEX1RJQ1MgPSA4OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlZhbHVlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1BFRURfVElDU19fVkFMVUUgPSAwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlNwZWVkIFRpY3M8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgU1BFRURfVElDU19GRUFUVVJFX0NPVU5UID0gMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5TcGVlZCBUaWNzPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFNQRUVEX1RJQ1NfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5PZG9tZXRlcl9UaWNzSW1wbCA8ZW0+T2RvbWV0ZXIgVGljczwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2RvbWV0ZXJfVGljc0ltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0T2RvbWV0ZXJfVGljcygpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBPRE9NRVRFUl9USUNTID0gOTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5WYWx1ZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE9ET01FVEVSX1RJQ1NfX1ZBTFVFID0gMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5PZG9tZXRlciBUaWNzPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE9ET01FVEVSX1RJQ1NfRkVBVFVSRV9DT1VOVCA9IDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+T2RvbWV0ZXIgVGljczwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPRE9NRVRFUl9USUNTX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0SW1wbCA8ZW0+T2RvbWV0ZXIgVGljcyBMZWZ0IFJpZ2h0PC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5PZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHRJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldE9kb21ldGVyX1RpY3NfTGVmdF9SaWdodCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBPRE9NRVRFUl9USUNTX0xFRlRfUklHSFQgPSAxMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5PZG9tZXRlciB0aWNzIGxlZnQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPRE9NRVRFUl9USUNTX0xFRlRfUklHSFRfX09ET01FVEVSX1RJQ1NfTEVGVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+T2RvbWV0ZXIgdGljcyByaWdodDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE9ET01FVEVSX1RJQ1NfTEVGVF9SSUdIVF9fT0RPTUVURVJfVElDU19SSUdIVCA9IDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+T2RvbWV0ZXIgVGljcyBMZWZ0IFJpZ2h0PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE9ET01FVEVSX1RJQ1NfTEVGVF9SSUdIVF9GRUFUVVJFX0NPVU5UID0gMjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5PZG9tZXRlciBUaWNzIExlZnQgUmlnaHQ8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT0RPTUVURVJfVElDU19MRUZUX1JJR0hUX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuUHJveGlfTGVmdF9SaWdodEltcGwgPGVtPlByb3hpIExlZnQgUmlnaHQ8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLlByb3hpX0xlZnRfUmlnaHRJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldFByb3hpX0xlZnRfUmlnaHQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgUFJPWElfTEVGVF9SSUdIVCA9IDExOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlByb3hpIGxlZnQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQUk9YSV9MRUZUX1JJR0hUX19QUk9YSV9MRUZUID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Qcm94aSByaWdodDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBST1hJX0xFRlRfUklHSFRfX1BST1hJX1JJR0hUID0gMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5Qcm94aSBMZWZ0IFJpZ2h0PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBST1hJX0xFRlRfUklHSFRfRkVBVFVSRV9DT1VOVCA9IDI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+UHJveGkgTGVmdCBSaWdodDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQUk9YSV9MRUZUX1JJR0hUX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuTWlsbGlfQW1wSW1wbCA8ZW0+TWlsbGkgQW1wPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5NaWxsaV9BbXBJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldE1pbGxpX0FtcCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBNSUxMSV9BTVAgPSAxMjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5WYWx1ZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE1JTExJX0FNUF9fVkFMVUUgPSAwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPk1pbGxpIEFtcDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBNSUxMSV9BTVBfRkVBVFVSRV9DT1VOVCA9IDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+TWlsbGkgQW1wPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE1JTExJX0FNUF9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk9kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0SW1wbCA8ZW0+T2RvbWV0ZXIgTGluZWFyIExlZnQgUmlnaHQ8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk9kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0SW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRPZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBPRE9NRVRFUl9MSU5FQVJfTEVGVF9SSUdIVCA9IDEzOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk9kb21ldGVyIGxpbmVhciBsZWZ0PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgT0RPTUVURVJfTElORUFSX0xFRlRfUklHSFRfX09ET01FVEVSX0xJTkVBUl9MRUZUID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5PZG9tZXRlciBsaW5lYXIgcmlnaHQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPRE9NRVRFUl9MSU5FQVJfTEVGVF9SSUdIVF9fT0RPTUVURVJfTElORUFSX1JJR0hUID0gMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5PZG9tZXRlciBMaW5lYXIgTGVmdCBSaWdodDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPRE9NRVRFUl9MSU5FQVJfTEVGVF9SSUdIVF9GRUFUVVJFX0NPVU5UID0gMjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5PZG9tZXRlciBMaW5lYXIgTGVmdCBSaWdodDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBPRE9NRVRFUl9MSU5FQVJfTEVGVF9SSUdIVF9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLlZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodEltcGwgPGVtPlZlbG9jaXR5IEFuZ3VsYXIgTGVmdCBSaWdodDwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuVmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0SW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRWZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgVkVMT0NJVFlfQU5HVUxBUl9MRUZUX1JJR0hUID0gMTQ7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+VmVsb2NpdHkgYW5ndWxhciBsZWZ0PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgVkVMT0NJVFlfQU5HVUxBUl9MRUZUX1JJR0hUX19WRUxPQ0lUWV9BTkdVTEFSX0xFRlQgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlZlbG9jaXR5IGFuZ3VsYXIgcmlnaHQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBWRUxPQ0lUWV9BTkdVTEFSX0xFRlRfUklHSFRfX1ZFTE9DSVRZX0FOR1VMQVJfUklHSFQgPSAxOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlZlbG9jaXR5IEFuZ3VsYXIgTGVmdCBSaWdodDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBWRUxPQ0lUWV9BTkdVTEFSX0xFRlRfUklHSFRfRkVBVFVSRV9DT1VOVCA9IDI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+VmVsb2NpdHkgQW5ndWxhciBMZWZ0IFJpZ2h0PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFZFTE9DSVRZX0FOR1VMQVJfTEVGVF9SSUdIVF9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLlZlbG9jaXR5SW1wbCA8ZW0+VmVsb2NpdHk8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLlZlbG9jaXR5SW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRWZWxvY2l0eSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBWRUxPQ0lUWSA9IDE1OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlZlbG9jaXR5IGxpbmVhcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFZFTE9DSVRZX19WRUxPQ0lUWV9MSU5FQVIgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlZlbG9jaXR5IGFuZ3VsYXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBWRUxPQ0lUWV9fVkVMT0NJVFlfQU5HVUxBUiA9IDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+VmVsb2NpdHk8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgVkVMT0NJVFlfRkVBVFVSRV9DT1VOVCA9IDI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+VmVsb2NpdHk8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgVkVMT0NJVFlfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuVmVsb2NpdHlfTGluZWFyIDxlbT5WZWxvY2l0eSBMaW5lYXI8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+VmVsb2NpdHkgTGluZWFyPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuVmVsb2NpdHlfTGluZWFyCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRWZWxvY2l0eV9MaW5lYXIoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuVmVsb2NpdHlfTGluZWFyI2dldFZhbHVlIDxlbT5WYWx1ZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlZhbHVlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuVmVsb2NpdHlfTGluZWFyI2dldFZhbHVlKCkKKwkgKiBAc2VlICNnZXRWZWxvY2l0eV9MaW5lYXIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFZlbG9jaXR5X0xpbmVhcl9WYWx1ZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuQXJ0X1NldF9Qb2ludCA8ZW0+QXJ0IFNldCBQb2ludDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5BcnQgU2V0IFBvaW50PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuQXJ0X1NldF9Qb2ludAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0QXJ0X1NldF9Qb2ludCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5BcnRfU2V0X1BvaW50I2dldE9tZWdhX2xlZnQgPGVtPk9tZWdhIGxlZnQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5PbWVnYSBsZWZ0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuQXJ0X1NldF9Qb2ludCNnZXRPbWVnYV9sZWZ0KCkKKwkgKiBAc2VlICNnZXRBcnRfU2V0X1BvaW50KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRBcnRfU2V0X1BvaW50X09tZWdhX2xlZnQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuQXJ0X1NldF9Qb2ludCNnZXRPbWVnYV9yaWdodCA8ZW0+T21lZ2EgcmlnaHQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5PbWVnYSByaWdodDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLkFydF9TZXRfUG9pbnQjZ2V0T21lZ2FfcmlnaHQoKQorCSAqIEBzZWUgI2dldEFydF9TZXRfUG9pbnQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldEFydF9TZXRfUG9pbnRfT21lZ2FfcmlnaHQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5X0FuZ3VsYXIgPGVtPlZlbG9jaXR5IEFuZ3VsYXI8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+VmVsb2NpdHkgQW5ndWxhcjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5X0FuZ3VsYXIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldFZlbG9jaXR5X0FuZ3VsYXIoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuVmVsb2NpdHlfQW5ndWxhciNnZXRWYWx1ZSA8ZW0+VmFsdWU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5WYWx1ZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5X0FuZ3VsYXIjZ2V0VmFsdWUoKQorCSAqIEBzZWUgI2dldFZlbG9jaXR5X0FuZ3VsYXIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFZlbG9jaXR5X0FuZ3VsYXJfVmFsdWUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLkRpc3RhbmNlIDxlbT5EaXN0YW5jZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5EaXN0YW5jZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLkRpc3RhbmNlCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXREaXN0YW5jZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5EaXN0YW5jZSNnZXRWYWx1ZSA8ZW0+VmFsdWU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5WYWx1ZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLkRpc3RhbmNlI2dldFZhbHVlKCkKKwkgKiBAc2VlICNnZXREaXN0YW5jZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0RGlzdGFuY2VfVmFsdWUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk1ldHJpYyA8ZW0+TWV0cmljPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPk1ldHJpYzwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk1ldHJpYworCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0TWV0cmljKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk1ldHJpYyNnZXRWYWx1ZSA8ZW0+VmFsdWU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5WYWx1ZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk1ldHJpYyNnZXRWYWx1ZSgpCisJICogQHNlZSAjZ2V0TWV0cmljKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRNZXRyaWNfVmFsdWUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLkFuZ3VsYXIgPGVtPkFuZ3VsYXI8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+QW5ndWxhcjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLkFuZ3VsYXIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldEFuZ3VsYXIoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuQW5ndWxhciNnZXRWYWx1ZSA8ZW0+VmFsdWU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5WYWx1ZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLkFuZ3VsYXIjZ2V0VmFsdWUoKQorCSAqIEBzZWUgI2dldEFuZ3VsYXIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEFuZ3VsYXJfVmFsdWUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9wX1NldF9Qb2ludCA8ZW0+T3AgU2V0IFBvaW50PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPk9wIFNldCBQb2ludDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9wX1NldF9Qb2ludAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0T3BfU2V0X1BvaW50KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9wX1NldF9Qb2ludCNnZXRWZWxvY2l0eSA8ZW0+VmVsb2NpdHk8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5WZWxvY2l0eTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9wX1NldF9Qb2ludCNnZXRWZWxvY2l0eSgpCisJICogQHNlZSAjZ2V0T3BfU2V0X1BvaW50KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRPcF9TZXRfUG9pbnRfVmVsb2NpdHkoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT3BfU2V0X1BvaW50I2dldE9yaWVudGF0aW9uIDxlbT5PcmllbnRhdGlvbjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPk9yaWVudGF0aW9uPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT3BfU2V0X1BvaW50I2dldE9yaWVudGF0aW9uKCkKKwkgKiBAc2VlICNnZXRPcF9TZXRfUG9pbnQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldE9wX1NldF9Qb2ludF9PcmllbnRhdGlvbigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuU3BlZWRfVGljc19MZWZ0X1JpZ2h0IDxlbT5TcGVlZCBUaWNzIExlZnQgUmlnaHQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+U3BlZWQgVGljcyBMZWZ0IFJpZ2h0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuU3BlZWRfVGljc19MZWZ0X1JpZ2h0CisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRTcGVlZF9UaWNzX0xlZnRfUmlnaHQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuU3BlZWRfVGljc19MZWZ0X1JpZ2h0I2dldFNwZWVkX3RpY3NfbGVmdCA8ZW0+U3BlZWQgdGljcyBsZWZ0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+U3BlZWQgdGljcyBsZWZ0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuU3BlZWRfVGljc19MZWZ0X1JpZ2h0I2dldFNwZWVkX3RpY3NfbGVmdCgpCisJICogQHNlZSAjZ2V0U3BlZWRfVGljc19MZWZ0X1JpZ2h0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRTcGVlZF9UaWNzX0xlZnRfUmlnaHRfU3BlZWRfdGljc19sZWZ0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlNwZWVkX1RpY3NfTGVmdF9SaWdodCNnZXRTcGVlZF90aWNzX3JpZ2h0IDxlbT5TcGVlZCB0aWNzIHJpZ2h0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+U3BlZWQgdGljcyByaWdodDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlNwZWVkX1RpY3NfTGVmdF9SaWdodCNnZXRTcGVlZF90aWNzX3JpZ2h0KCkKKwkgKiBAc2VlICNnZXRTcGVlZF9UaWNzX0xlZnRfUmlnaHQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFNwZWVkX1RpY3NfTGVmdF9SaWdodF9TcGVlZF90aWNzX3JpZ2h0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5TcGVlZF9UaWNzIDxlbT5TcGVlZCBUaWNzPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlNwZWVkIFRpY3M8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5TcGVlZF9UaWNzCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRTcGVlZF9UaWNzKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlNwZWVkX1RpY3MjZ2V0VmFsdWUgPGVtPlZhbHVlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+VmFsdWU8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5TcGVlZF9UaWNzI2dldFZhbHVlKCkKKwkgKiBAc2VlICNnZXRTcGVlZF9UaWNzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRTcGVlZF9UaWNzX1ZhbHVlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PZG9tZXRlcl9UaWNzIDxlbT5PZG9tZXRlciBUaWNzPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPk9kb21ldGVyIFRpY3M8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PZG9tZXRlcl9UaWNzCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRPZG9tZXRlcl9UaWNzKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9kb21ldGVyX1RpY3MjZ2V0VmFsdWUgPGVtPlZhbHVlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+VmFsdWU8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PZG9tZXRlcl9UaWNzI2dldFZhbHVlKCkKKwkgKiBAc2VlICNnZXRPZG9tZXRlcl9UaWNzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRPZG9tZXRlcl9UaWNzX1ZhbHVlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHQgPGVtPk9kb21ldGVyIFRpY3MgTGVmdCBSaWdodDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5PZG9tZXRlciBUaWNzIExlZnQgUmlnaHQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldE9kb21ldGVyX1RpY3NfTGVmdF9SaWdodCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHQjZ2V0T2RvbWV0ZXJfdGljc19sZWZ0IDxlbT5PZG9tZXRlciB0aWNzIGxlZnQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5PZG9tZXRlciB0aWNzIGxlZnQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHQjZ2V0T2RvbWV0ZXJfdGljc19sZWZ0KCkKKwkgKiBAc2VlICNnZXRPZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldE9kb21ldGVyX1RpY3NfTGVmdF9SaWdodF9PZG9tZXRlcl90aWNzX2xlZnQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0I2dldE9kb21ldGVyX3RpY3NfcmlnaHQgPGVtPk9kb21ldGVyIHRpY3MgcmlnaHQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5PZG9tZXRlciB0aWNzIHJpZ2h0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0I2dldE9kb21ldGVyX3RpY3NfcmlnaHQoKQorCSAqIEBzZWUgI2dldE9kb21ldGVyX1RpY3NfTGVmdF9SaWdodCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0T2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0X09kb21ldGVyX3RpY3NfcmlnaHQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlByb3hpX0xlZnRfUmlnaHQgPGVtPlByb3hpIExlZnQgUmlnaHQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+UHJveGkgTGVmdCBSaWdodDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlByb3hpX0xlZnRfUmlnaHQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldFByb3hpX0xlZnRfUmlnaHQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuUHJveGlfTGVmdF9SaWdodCNnZXRQcm94aV9sZWZ0IDxlbT5Qcm94aSBsZWZ0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+UHJveGkgbGVmdDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlByb3hpX0xlZnRfUmlnaHQjZ2V0UHJveGlfbGVmdCgpCisJICogQHNlZSAjZ2V0UHJveGlfTGVmdF9SaWdodCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0UHJveGlfTGVmdF9SaWdodF9Qcm94aV9sZWZ0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlByb3hpX0xlZnRfUmlnaHQjZ2V0UHJveGlfcmlnaHQgPGVtPlByb3hpIHJpZ2h0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+UHJveGkgcmlnaHQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5Qcm94aV9MZWZ0X1JpZ2h0I2dldFByb3hpX3JpZ2h0KCkKKwkgKiBAc2VlICNnZXRQcm94aV9MZWZ0X1JpZ2h0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRQcm94aV9MZWZ0X1JpZ2h0X1Byb3hpX3JpZ2h0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5NaWxsaV9BbXAgPGVtPk1pbGxpIEFtcDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5NaWxsaSBBbXA8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5NaWxsaV9BbXAKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldE1pbGxpX0FtcCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5NaWxsaV9BbXAjZ2V0VmFsdWUgPGVtPlZhbHVlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+VmFsdWU8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5NaWxsaV9BbXAjZ2V0VmFsdWUoKQorCSAqIEBzZWUgI2dldE1pbGxpX0FtcCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0TWlsbGlfQW1wX1ZhbHVlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodCA8ZW0+T2RvbWV0ZXIgTGluZWFyIExlZnQgUmlnaHQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+T2RvbWV0ZXIgTGluZWFyIExlZnQgUmlnaHQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0T2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHQjZ2V0T2RvbWV0ZXJfbGluZWFyX2xlZnQgPGVtPk9kb21ldGVyIGxpbmVhciBsZWZ0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+T2RvbWV0ZXIgbGluZWFyIGxlZnQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodCNnZXRPZG9tZXRlcl9saW5lYXJfbGVmdCgpCisJICogQHNlZSAjZ2V0T2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldE9kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0X09kb21ldGVyX2xpbmVhcl9sZWZ0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0I2dldE9kb21ldGVyX2xpbmVhcl9yaWdodCA8ZW0+T2RvbWV0ZXIgbGluZWFyIHJpZ2h0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+T2RvbWV0ZXIgbGluZWFyIHJpZ2h0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHQjZ2V0T2RvbWV0ZXJfbGluZWFyX3JpZ2h0KCkKKwkgKiBAc2VlICNnZXRPZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0T2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHRfT2RvbWV0ZXJfbGluZWFyX3JpZ2h0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5WZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHQgPGVtPlZlbG9jaXR5IEFuZ3VsYXIgTGVmdCBSaWdodDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5WZWxvY2l0eSBBbmd1bGFyIExlZnQgUmlnaHQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5WZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldFZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5WZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHQjZ2V0VmVsb2NpdHlfYW5ndWxhcl9sZWZ0IDxlbT5WZWxvY2l0eSBhbmd1bGFyIGxlZnQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5WZWxvY2l0eSBhbmd1bGFyIGxlZnQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5WZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHQjZ2V0VmVsb2NpdHlfYW5ndWxhcl9sZWZ0KCkKKwkgKiBAc2VlICNnZXRWZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodF9WZWxvY2l0eV9hbmd1bGFyX2xlZnQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuVmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0I2dldFZlbG9jaXR5X2FuZ3VsYXJfcmlnaHQgPGVtPlZlbG9jaXR5IGFuZ3VsYXIgcmlnaHQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5WZWxvY2l0eSBhbmd1bGFyIHJpZ2h0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuVmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0I2dldFZlbG9jaXR5X2FuZ3VsYXJfcmlnaHQoKQorCSAqIEBzZWUgI2dldFZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0VmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0X1ZlbG9jaXR5X2FuZ3VsYXJfcmlnaHQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5IDxlbT5WZWxvY2l0eTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5WZWxvY2l0eTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5CisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRWZWxvY2l0eSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5WZWxvY2l0eSNnZXRWZWxvY2l0eV9saW5lYXIgPGVtPlZlbG9jaXR5IGxpbmVhcjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPlZlbG9jaXR5IGxpbmVhcjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5I2dldFZlbG9jaXR5X2xpbmVhcigpCisJICogQHNlZSAjZ2V0VmVsb2NpdHkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFZlbG9jaXR5X1ZlbG9jaXR5X2xpbmVhcigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5WZWxvY2l0eSNnZXRWZWxvY2l0eV9hbmd1bGFyIDxlbT5WZWxvY2l0eSBhbmd1bGFyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+VmVsb2NpdHkgYW5ndWxhcjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5I2dldFZlbG9jaXR5X2FuZ3VsYXIoKQorCSAqIEBzZWUgI2dldFZlbG9jaXR5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRWZWxvY2l0eV9WZWxvY2l0eV9hbmd1bGFyKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBmYWN0b3J5IHRoYXQgY3JlYXRlcyB0aGUgaW5zdGFuY2VzIG9mIHRoZSBtb2RlbC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIGZhY3RvcnkgdGhhdCBjcmVhdGVzIHRoZSBpbnN0YW5jZXMgb2YgdGhlIG1vZGVsLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYXJwNF9kYXRhdHlwZXNGYWN0b3J5IGdldE9hcnA0X2RhdGF0eXBlc0ZhY3RvcnkoKTsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogRGVmaW5lcyBsaXRlcmFscyBmb3IgdGhlIG1ldGEgb2JqZWN0cyB0aGF0IHJlcHJlc2VudAorCSAqIDx1bD4KKwkgKiA8bGk+ZWFjaCBjbGFzcyw8L2xpPgorCSAqIDxsaT5lYWNoIGZlYXR1cmUgb2YgZWFjaCBjbGFzcyw8L2xpPgorCSAqIDxsaT5lYWNoIG9wZXJhdGlvbiBvZiBlYWNoIGNsYXNzLDwvbGk+CisJICogPGxpPmVhY2ggZW51bSw8L2xpPgorCSAqIDxsaT5hbmQgZWFjaCBkYXRhIHR5cGU8L2xpPgorCSAqIDwvdWw+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCWludGVyZmFjZSBMaXRlcmFscyB7CisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5WZWxvY2l0eV9MaW5lYXJJbXBsIDxlbT5WZWxvY2l0eSBMaW5lYXI8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLlZlbG9jaXR5X0xpbmVhckltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldFZlbG9jaXR5X0xpbmVhcigpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBWRUxPQ0lUWV9MSU5FQVIgPSBlSU5TVEFOQ0UuZ2V0VmVsb2NpdHlfTGluZWFyKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5WYWx1ZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIFZFTE9DSVRZX0xJTkVBUl9fVkFMVUUgPSBlSU5TVEFOQ0UuZ2V0VmVsb2NpdHlfTGluZWFyX1ZhbHVlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLkFydF9TZXRfUG9pbnRJbXBsIDxlbT5BcnQgU2V0IFBvaW50PC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5BcnRfU2V0X1BvaW50SW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0QXJ0X1NldF9Qb2ludCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBBUlRfU0VUX1BPSU5UID0gZUlOU1RBTkNFLmdldEFydF9TZXRfUG9pbnQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPk9tZWdhIGxlZnQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBBUlRfU0VUX1BPSU5UX19PTUVHQV9MRUZUID0gZUlOU1RBTkNFLmdldEFydF9TZXRfUG9pbnRfT21lZ2FfbGVmdCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+T21lZ2EgcmlnaHQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBBUlRfU0VUX1BPSU5UX19PTUVHQV9SSUdIVCA9IGVJTlNUQU5DRS5nZXRBcnRfU2V0X1BvaW50X09tZWdhX3JpZ2h0KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLlZlbG9jaXR5X0FuZ3VsYXJJbXBsIDxlbT5WZWxvY2l0eSBBbmd1bGFyPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5WZWxvY2l0eV9Bbmd1bGFySW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0VmVsb2NpdHlfQW5ndWxhcigpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBWRUxPQ0lUWV9BTkdVTEFSID0gZUlOU1RBTkNFLmdldFZlbG9jaXR5X0FuZ3VsYXIoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlZhbHVlPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgVkVMT0NJVFlfQU5HVUxBUl9fVkFMVUUgPSBlSU5TVEFOQ0UuZ2V0VmVsb2NpdHlfQW5ndWxhcl9WYWx1ZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5EaXN0YW5jZUltcGwgPGVtPkRpc3RhbmNlPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5EaXN0YW5jZUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldERpc3RhbmNlKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIERJU1RBTkNFID0gZUlOU1RBTkNFLmdldERpc3RhbmNlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5WYWx1ZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIERJU1RBTkNFX19WQUxVRSA9IGVJTlNUQU5DRS5nZXREaXN0YW5jZV9WYWx1ZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5NZXRyaWNJbXBsIDxlbT5NZXRyaWM8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk1ldHJpY0ltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldE1ldHJpYygpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBNRVRSSUMgPSBlSU5TVEFOQ0UuZ2V0TWV0cmljKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5WYWx1ZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIE1FVFJJQ19fVkFMVUUgPSBlSU5TVEFOQ0UuZ2V0TWV0cmljX1ZhbHVlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLkFuZ3VsYXJJbXBsIDxlbT5Bbmd1bGFyPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5Bbmd1bGFySW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0QW5ndWxhcigpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBBTkdVTEFSID0gZUlOU1RBTkNFLmdldEFuZ3VsYXIoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlZhbHVlPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgQU5HVUxBUl9fVkFMVUUgPSBlSU5TVEFOQ0UuZ2V0QW5ndWxhcl9WYWx1ZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5PcF9TZXRfUG9pbnRJbXBsIDxlbT5PcCBTZXQgUG9pbnQ8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk9wX1NldF9Qb2ludEltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldE9wX1NldF9Qb2ludCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBPUF9TRVRfUE9JTlQgPSBlSU5TVEFOQ0UuZ2V0T3BfU2V0X1BvaW50KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5WZWxvY2l0eTwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIE9QX1NFVF9QT0lOVF9fVkVMT0NJVFkgPSBlSU5TVEFOQ0UuZ2V0T3BfU2V0X1BvaW50X1ZlbG9jaXR5KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5PcmllbnRhdGlvbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIE9QX1NFVF9QT0lOVF9fT1JJRU5UQVRJT04gPSBlSU5TVEFOQ0UuZ2V0T3BfU2V0X1BvaW50X09yaWVudGF0aW9uKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLlNwZWVkX1RpY3NfTGVmdF9SaWdodEltcGwgPGVtPlNwZWVkIFRpY3MgTGVmdCBSaWdodDwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuU3BlZWRfVGljc19MZWZ0X1JpZ2h0SW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0U3BlZWRfVGljc19MZWZ0X1JpZ2h0KCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFNQRUVEX1RJQ1NfTEVGVF9SSUdIVCA9IGVJTlNUQU5DRS5nZXRTcGVlZF9UaWNzX0xlZnRfUmlnaHQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlNwZWVkIHRpY3MgbGVmdDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIFNQRUVEX1RJQ1NfTEVGVF9SSUdIVF9fU1BFRURfVElDU19MRUZUID0gZUlOU1RBTkNFLmdldFNwZWVkX1RpY3NfTGVmdF9SaWdodF9TcGVlZF90aWNzX2xlZnQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlNwZWVkIHRpY3MgcmlnaHQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBTUEVFRF9USUNTX0xFRlRfUklHSFRfX1NQRUVEX1RJQ1NfUklHSFQgPSBlSU5TVEFOQ0UuZ2V0U3BlZWRfVGljc19MZWZ0X1JpZ2h0X1NwZWVkX3RpY3NfcmlnaHQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuU3BlZWRfVGljc0ltcGwgPGVtPlNwZWVkIFRpY3M8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLlNwZWVkX1RpY3NJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRTcGVlZF9UaWNzKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFNQRUVEX1RJQ1MgPSBlSU5TVEFOQ0UuZ2V0U3BlZWRfVGljcygpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VmFsdWU8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBTUEVFRF9USUNTX19WQUxVRSA9IGVJTlNUQU5DRS5nZXRTcGVlZF9UaWNzX1ZhbHVlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk9kb21ldGVyX1RpY3NJbXBsIDxlbT5PZG9tZXRlciBUaWNzPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5PZG9tZXRlcl9UaWNzSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0T2RvbWV0ZXJfVGljcygpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBPRE9NRVRFUl9USUNTID0gZUlOU1RBTkNFLmdldE9kb21ldGVyX1RpY3MoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlZhbHVlPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgT0RPTUVURVJfVElDU19fVkFMVUUgPSBlSU5TVEFOQ0UuZ2V0T2RvbWV0ZXJfVGljc19WYWx1ZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5PZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHRJbXBsIDxlbT5PZG9tZXRlciBUaWNzIExlZnQgUmlnaHQ8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk9kb21ldGVyX1RpY3NfTGVmdF9SaWdodEltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldE9kb21ldGVyX1RpY3NfTGVmdF9SaWdodCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBPRE9NRVRFUl9USUNTX0xFRlRfUklHSFQgPSBlSU5TVEFOQ0UuZ2V0T2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5PZG9tZXRlciB0aWNzIGxlZnQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBPRE9NRVRFUl9USUNTX0xFRlRfUklHSFRfX09ET01FVEVSX1RJQ1NfTEVGVCA9IGVJTlNUQU5DRS5nZXRPZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHRfT2RvbWV0ZXJfdGljc19sZWZ0KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5PZG9tZXRlciB0aWNzIHJpZ2h0PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgT0RPTUVURVJfVElDU19MRUZUX1JJR0hUX19PRE9NRVRFUl9USUNTX1JJR0hUID0gZUlOU1RBTkNFLmdldE9kb21ldGVyX1RpY3NfTGVmdF9SaWdodF9PZG9tZXRlcl90aWNzX3JpZ2h0KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLlByb3hpX0xlZnRfUmlnaHRJbXBsIDxlbT5Qcm94aSBMZWZ0IFJpZ2h0PC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5Qcm94aV9MZWZ0X1JpZ2h0SW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0UHJveGlfTGVmdF9SaWdodCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBQUk9YSV9MRUZUX1JJR0hUID0gZUlOU1RBTkNFLmdldFByb3hpX0xlZnRfUmlnaHQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlByb3hpIGxlZnQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBQUk9YSV9MRUZUX1JJR0hUX19QUk9YSV9MRUZUID0gZUlOU1RBTkNFLmdldFByb3hpX0xlZnRfUmlnaHRfUHJveGlfbGVmdCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UHJveGkgcmlnaHQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBQUk9YSV9MRUZUX1JJR0hUX19QUk9YSV9SSUdIVCA9IGVJTlNUQU5DRS5nZXRQcm94aV9MZWZ0X1JpZ2h0X1Byb3hpX3JpZ2h0KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk1pbGxpX0FtcEltcGwgPGVtPk1pbGxpIEFtcDwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuTWlsbGlfQW1wSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0TWlsbGlfQW1wKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIE1JTExJX0FNUCA9IGVJTlNUQU5DRS5nZXRNaWxsaV9BbXAoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlZhbHVlPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgTUlMTElfQU1QX19WQUxVRSA9IGVJTlNUQU5DRS5nZXRNaWxsaV9BbXBfVmFsdWUoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHRJbXBsIDxlbT5PZG9tZXRlciBMaW5lYXIgTGVmdCBSaWdodDwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHRJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRPZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBPRE9NRVRFUl9MSU5FQVJfTEVGVF9SSUdIVCA9IGVJTlNUQU5DRS5nZXRPZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+T2RvbWV0ZXIgbGluZWFyIGxlZnQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBPRE9NRVRFUl9MSU5FQVJfTEVGVF9SSUdIVF9fT0RPTUVURVJfTElORUFSX0xFRlQgPSBlSU5TVEFOQ0UuZ2V0T2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHRfT2RvbWV0ZXJfbGluZWFyX2xlZnQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPk9kb21ldGVyIGxpbmVhciByaWdodDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIE9ET01FVEVSX0xJTkVBUl9MRUZUX1JJR0hUX19PRE9NRVRFUl9MSU5FQVJfUklHSFQgPSBlSU5TVEFOQ0UuZ2V0T2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHRfT2RvbWV0ZXJfbGluZWFyX3JpZ2h0KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLlZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodEltcGwgPGVtPlZlbG9jaXR5IEFuZ3VsYXIgTGVmdCBSaWdodDwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuVmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0SW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0VmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0KCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFZFTE9DSVRZX0FOR1VMQVJfTEVGVF9SSUdIVCA9IGVJTlNUQU5DRS5nZXRWZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlZlbG9jaXR5IGFuZ3VsYXIgbGVmdDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIFZFTE9DSVRZX0FOR1VMQVJfTEVGVF9SSUdIVF9fVkVMT0NJVFlfQU5HVUxBUl9MRUZUID0gZUlOU1RBTkNFLmdldFZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodF9WZWxvY2l0eV9hbmd1bGFyX2xlZnQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlZlbG9jaXR5IGFuZ3VsYXIgcmlnaHQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBWRUxPQ0lUWV9BTkdVTEFSX0xFRlRfUklHSFRfX1ZFTE9DSVRZX0FOR1VMQVJfUklHSFQgPSBlSU5TVEFOQ0UuZ2V0VmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0X1ZlbG9jaXR5X2FuZ3VsYXJfcmlnaHQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuVmVsb2NpdHlJbXBsIDxlbT5WZWxvY2l0eTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuVmVsb2NpdHlJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRWZWxvY2l0eSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBWRUxPQ0lUWSA9IGVJTlNUQU5DRS5nZXRWZWxvY2l0eSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VmVsb2NpdHkgbGluZWFyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgVkVMT0NJVFlfX1ZFTE9DSVRZX0xJTkVBUiA9IGVJTlNUQU5DRS5nZXRWZWxvY2l0eV9WZWxvY2l0eV9saW5lYXIoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlZlbG9jaXR5IGFuZ3VsYXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBWRUxPQ0lUWV9fVkVMT0NJVFlfQU5HVUxBUiA9IGVJTlNUQU5DRS5nZXRWZWxvY2l0eV9WZWxvY2l0eV9hbmd1bGFyKCk7CisKKwl9CisKK30gLy8gT2FycDRfZGF0YXR5cGVzUGFja2FnZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9PZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9PZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQxYWJmZTMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL09kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0LmphdmEKQEAgLTAsMCArMSw3NSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T2RvbWV0ZXIgTGluZWFyIExlZnQgUmlnaHQ8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHQjZ2V0T2RvbWV0ZXJfbGluZWFyX2xlZnQgPGVtPk9kb21ldGVyIGxpbmVhciBsZWZ0PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodCNnZXRPZG9tZXRlcl9saW5lYXJfcmlnaHQgPGVtPk9kb21ldGVyIGxpbmVhciByaWdodDwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZSNnZXRPZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodCgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBPZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodCBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPk9kb21ldGVyIGxpbmVhciBsZWZ0PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5PZG9tZXRlciBsaW5lYXIgbGVmdDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+T2RvbWV0ZXIgbGluZWFyIGxlZnQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldE9kb21ldGVyX2xpbmVhcl9sZWZ0KE1ldHJpYykKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2UjZ2V0T2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHRfT2RvbWV0ZXJfbGluZWFyX2xlZnQoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlNZXRyaWMgZ2V0T2RvbWV0ZXJfbGluZWFyX2xlZnQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0I2dldE9kb21ldGVyX2xpbmVhcl9sZWZ0IDxlbT5PZG9tZXRlciBsaW5lYXIgbGVmdDwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+T2RvbWV0ZXIgbGluZWFyIGxlZnQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldE9kb21ldGVyX2xpbmVhcl9sZWZ0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRPZG9tZXRlcl9saW5lYXJfbGVmdChNZXRyaWMgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+T2RvbWV0ZXIgbGluZWFyIHJpZ2h0PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5PZG9tZXRlciBsaW5lYXIgcmlnaHQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPk9kb21ldGVyIGxpbmVhciByaWdodDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0T2RvbWV0ZXJfbGluZWFyX3JpZ2h0KE1ldHJpYykKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2UjZ2V0T2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHRfT2RvbWV0ZXJfbGluZWFyX3JpZ2h0KCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJTWV0cmljIGdldE9kb21ldGVyX2xpbmVhcl9yaWdodCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHQjZ2V0T2RvbWV0ZXJfbGluZWFyX3JpZ2h0IDxlbT5PZG9tZXRlciBsaW5lYXIgcmlnaHQ8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPk9kb21ldGVyIGxpbmVhciByaWdodDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0T2RvbWV0ZXJfbGluZWFyX3JpZ2h0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRPZG9tZXRlcl9saW5lYXJfcmlnaHQoTWV0cmljIHZhbHVlKTsKKworfSAvLyBPZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9PZG9tZXRlcl9UaWNzLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL09kb21ldGVyX1RpY3MuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lMzI4MzMxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9PZG9tZXRlcl9UaWNzLmphdmEKQEAgLTAsMCArMSw0OSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T2RvbWV0ZXIgVGljczwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PZG9tZXRlcl9UaWNzI2dldFZhbHVlIDxlbT5WYWx1ZTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZSNnZXRPZG9tZXRlcl9UaWNzKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIE9kb21ldGVyX1RpY3MgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5WYWx1ZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+VmFsdWU8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlZhbHVlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRWYWx1ZShJbnQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2UjZ2V0T2RvbWV0ZXJfVGljc19WYWx1ZSgpCisJICogQG1vZGVsIHVuaXF1ZT0iZmFsc2UiIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0VmFsdWUoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9kb21ldGVyX1RpY3MjZ2V0VmFsdWUgPGVtPlZhbHVlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5WYWx1ZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0VmFsdWUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFZhbHVlKE9iamVjdCB2YWx1ZSk7CisKK30gLy8gT2RvbWV0ZXJfVGljcwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9PZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHQuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvT2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDVjZThlNQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvT2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0LmphdmEKQEAgLTAsMCArMSw3NSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T2RvbWV0ZXIgVGljcyBMZWZ0IFJpZ2h0PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9kb21ldGVyX1RpY3NfTGVmdF9SaWdodCNnZXRPZG9tZXRlcl90aWNzX2xlZnQgPGVtPk9kb21ldGVyIHRpY3MgbGVmdDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0I2dldE9kb21ldGVyX3RpY3NfcmlnaHQgPGVtPk9kb21ldGVyIHRpY3MgcmlnaHQ8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2UjZ2V0T2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0KCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIE9kb21ldGVyX1RpY3NfTGVmdF9SaWdodCBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPk9kb21ldGVyIHRpY3MgbGVmdDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+T2RvbWV0ZXIgdGljcyBsZWZ0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5PZG9tZXRlciB0aWNzIGxlZnQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldE9kb21ldGVyX3RpY3NfbGVmdChPZG9tZXRlcl9UaWNzKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZSNnZXRPZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHRfT2RvbWV0ZXJfdGljc19sZWZ0KCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2RvbWV0ZXJfVGljcyBnZXRPZG9tZXRlcl90aWNzX2xlZnQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9kb21ldGVyX1RpY3NfTGVmdF9SaWdodCNnZXRPZG9tZXRlcl90aWNzX2xlZnQgPGVtPk9kb21ldGVyIHRpY3MgbGVmdDwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+T2RvbWV0ZXIgdGljcyBsZWZ0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRPZG9tZXRlcl90aWNzX2xlZnQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldE9kb21ldGVyX3RpY3NfbGVmdChPZG9tZXRlcl9UaWNzIHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPk9kb21ldGVyIHRpY3MgcmlnaHQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPk9kb21ldGVyIHRpY3MgcmlnaHQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPk9kb21ldGVyIHRpY3MgcmlnaHQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldE9kb21ldGVyX3RpY3NfcmlnaHQoT2RvbWV0ZXJfVGljcykKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2UjZ2V0T2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0X09kb21ldGVyX3RpY3NfcmlnaHQoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPZG9tZXRlcl9UaWNzIGdldE9kb21ldGVyX3RpY3NfcmlnaHQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9kb21ldGVyX1RpY3NfTGVmdF9SaWdodCNnZXRPZG9tZXRlcl90aWNzX3JpZ2h0IDxlbT5PZG9tZXRlciB0aWNzIHJpZ2h0PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5PZG9tZXRlciB0aWNzIHJpZ2h0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRPZG9tZXRlcl90aWNzX3JpZ2h0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRPZG9tZXRlcl90aWNzX3JpZ2h0KE9kb21ldGVyX1RpY3MgdmFsdWUpOworCit9IC8vIE9kb21ldGVyX1RpY3NfTGVmdF9SaWdodApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9PcF9TZXRfUG9pbnQuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvT3BfU2V0X1BvaW50LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmUxOTFlMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvT3BfU2V0X1BvaW50LmphdmEKQEAgLTAsMCArMSw3NSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T3AgU2V0IFBvaW50PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9wX1NldF9Qb2ludCNnZXRWZWxvY2l0eSA8ZW0+VmVsb2NpdHk8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9wX1NldF9Qb2ludCNnZXRPcmllbnRhdGlvbiA8ZW0+T3JpZW50YXRpb248L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2UjZ2V0T3BfU2V0X1BvaW50KCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIE9wX1NldF9Qb2ludCBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlZlbG9jaXR5PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5WZWxvY2l0eTwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+VmVsb2NpdHk8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldFZlbG9jaXR5KFZlbG9jaXR5X0xpbmVhcikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2UjZ2V0T3BfU2V0X1BvaW50X1ZlbG9jaXR5KCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJVmVsb2NpdHlfTGluZWFyIGdldFZlbG9jaXR5KCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PcF9TZXRfUG9pbnQjZ2V0VmVsb2NpdHkgPGVtPlZlbG9jaXR5PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5WZWxvY2l0eTwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0VmVsb2NpdHkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFZlbG9jaXR5KFZlbG9jaXR5X0xpbmVhciB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5PcmllbnRhdGlvbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+T3JpZW50YXRpb248L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPk9yaWVudGF0aW9uPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRPcmllbnRhdGlvbihBbmd1bGFyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZSNnZXRPcF9TZXRfUG9pbnRfT3JpZW50YXRpb24oKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlBbmd1bGFyIGdldE9yaWVudGF0aW9uKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PcF9TZXRfUG9pbnQjZ2V0T3JpZW50YXRpb24gPGVtPk9yaWVudGF0aW9uPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5PcmllbnRhdGlvbjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0T3JpZW50YXRpb24oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldE9yaWVudGF0aW9uKEFuZ3VsYXIgdmFsdWUpOworCit9IC8vIE9wX1NldF9Qb2ludApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9Qcm94aV9MZWZ0X1JpZ2h0LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL1Byb3hpX0xlZnRfUmlnaHQuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43MTc2NTEwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9Qcm94aV9MZWZ0X1JpZ2h0LmphdmEKQEAgLTAsMCArMSw3NSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UHJveGkgTGVmdCBSaWdodDwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5Qcm94aV9MZWZ0X1JpZ2h0I2dldFByb3hpX2xlZnQgPGVtPlByb3hpIGxlZnQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlByb3hpX0xlZnRfUmlnaHQjZ2V0UHJveGlfcmlnaHQgPGVtPlByb3hpIHJpZ2h0PC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlI2dldFByb3hpX0xlZnRfUmlnaHQoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgUHJveGlfTGVmdF9SaWdodCBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlByb3hpIGxlZnQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlByb3hpIGxlZnQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlByb3hpIGxlZnQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldFByb3hpX2xlZnQoRGlzdGFuY2UpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlI2dldFByb3hpX0xlZnRfUmlnaHRfUHJveGlfbGVmdCgpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCURpc3RhbmNlIGdldFByb3hpX2xlZnQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlByb3hpX0xlZnRfUmlnaHQjZ2V0UHJveGlfbGVmdCA8ZW0+UHJveGkgbGVmdDwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+UHJveGkgbGVmdDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0UHJveGlfbGVmdCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0UHJveGlfbGVmdChEaXN0YW5jZSB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Qcm94aSByaWdodDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+UHJveGkgcmlnaHQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlByb3hpIHJpZ2h0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRQcm94aV9yaWdodChEaXN0YW5jZSkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2UjZ2V0UHJveGlfTGVmdF9SaWdodF9Qcm94aV9yaWdodCgpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCURpc3RhbmNlIGdldFByb3hpX3JpZ2h0KCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5Qcm94aV9MZWZ0X1JpZ2h0I2dldFByb3hpX3JpZ2h0IDxlbT5Qcm94aSByaWdodDwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+UHJveGkgcmlnaHQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldFByb3hpX3JpZ2h0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRQcm94aV9yaWdodChEaXN0YW5jZSB2YWx1ZSk7CisKK30gLy8gUHJveGlfTGVmdF9SaWdodApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9TcGVlZF9UaWNzLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL1NwZWVkX1RpY3MuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ODg3ZmY4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9TcGVlZF9UaWNzLmphdmEKQEAgLTAsMCArMSw0OSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3BlZWQgVGljczwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5TcGVlZF9UaWNzI2dldFZhbHVlIDxlbT5WYWx1ZTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZSNnZXRTcGVlZF9UaWNzKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFNwZWVkX1RpY3MgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5WYWx1ZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+VmFsdWU8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlZhbHVlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRWYWx1ZShJbnQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2UjZ2V0U3BlZWRfVGljc19WYWx1ZSgpCisJICogQG1vZGVsIHVuaXF1ZT0iZmFsc2UiIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0VmFsdWUoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlNwZWVkX1RpY3MjZ2V0VmFsdWUgPGVtPlZhbHVlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5WYWx1ZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0VmFsdWUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFZhbHVlKE9iamVjdCB2YWx1ZSk7CisKK30gLy8gU3BlZWRfVGljcwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9TcGVlZF9UaWNzX0xlZnRfUmlnaHQuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvU3BlZWRfVGljc19MZWZ0X1JpZ2h0LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTQ0NWQ0YgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvU3BlZWRfVGljc19MZWZ0X1JpZ2h0LmphdmEKQEAgLTAsMCArMSw3NSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3BlZWQgVGljcyBMZWZ0IFJpZ2h0PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlNwZWVkX1RpY3NfTGVmdF9SaWdodCNnZXRTcGVlZF90aWNzX2xlZnQgPGVtPlNwZWVkIHRpY3MgbGVmdDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuU3BlZWRfVGljc19MZWZ0X1JpZ2h0I2dldFNwZWVkX3RpY3NfcmlnaHQgPGVtPlNwZWVkIHRpY3MgcmlnaHQ8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2UjZ2V0U3BlZWRfVGljc19MZWZ0X1JpZ2h0KCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFNwZWVkX1RpY3NfTGVmdF9SaWdodCBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlNwZWVkIHRpY3MgbGVmdDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+U3BlZWQgdGljcyBsZWZ0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5TcGVlZCB0aWNzIGxlZnQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldFNwZWVkX3RpY3NfbGVmdChTcGVlZF9UaWNzKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZSNnZXRTcGVlZF9UaWNzX0xlZnRfUmlnaHRfU3BlZWRfdGljc19sZWZ0KCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJU3BlZWRfVGljcyBnZXRTcGVlZF90aWNzX2xlZnQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlNwZWVkX1RpY3NfTGVmdF9SaWdodCNnZXRTcGVlZF90aWNzX2xlZnQgPGVtPlNwZWVkIHRpY3MgbGVmdDwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+U3BlZWQgdGljcyBsZWZ0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRTcGVlZF90aWNzX2xlZnQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFNwZWVkX3RpY3NfbGVmdChTcGVlZF9UaWNzIHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlNwZWVkIHRpY3MgcmlnaHQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlNwZWVkIHRpY3MgcmlnaHQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlNwZWVkIHRpY3MgcmlnaHQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldFNwZWVkX3RpY3NfcmlnaHQoU3BlZWRfVGljcykKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2UjZ2V0U3BlZWRfVGljc19MZWZ0X1JpZ2h0X1NwZWVkX3RpY3NfcmlnaHQoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTcGVlZF9UaWNzIGdldFNwZWVkX3RpY3NfcmlnaHQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlNwZWVkX1RpY3NfTGVmdF9SaWdodCNnZXRTcGVlZF90aWNzX3JpZ2h0IDxlbT5TcGVlZCB0aWNzIHJpZ2h0PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5TcGVlZCB0aWNzIHJpZ2h0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRTcGVlZF90aWNzX3JpZ2h0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRTcGVlZF90aWNzX3JpZ2h0KFNwZWVkX1RpY3MgdmFsdWUpOworCit9IC8vIFNwZWVkX1RpY3NfTGVmdF9SaWdodApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9WZWxvY2l0eS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9WZWxvY2l0eS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE1OTk4YjEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL1ZlbG9jaXR5LmphdmEKQEAgLTAsMCArMSw3NSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+VmVsb2NpdHk8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuVmVsb2NpdHkjZ2V0VmVsb2NpdHlfbGluZWFyIDxlbT5WZWxvY2l0eSBsaW5lYXI8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5I2dldFZlbG9jaXR5X2FuZ3VsYXIgPGVtPlZlbG9jaXR5IGFuZ3VsYXI8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2UjZ2V0VmVsb2NpdHkoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgVmVsb2NpdHkgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5WZWxvY2l0eSBsaW5lYXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlZlbG9jaXR5IGxpbmVhcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+VmVsb2NpdHkgbGluZWFyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRWZWxvY2l0eV9saW5lYXIoVmVsb2NpdHlfTGluZWFyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZSNnZXRWZWxvY2l0eV9WZWxvY2l0eV9saW5lYXIoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlWZWxvY2l0eV9MaW5lYXIgZ2V0VmVsb2NpdHlfbGluZWFyKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5WZWxvY2l0eSNnZXRWZWxvY2l0eV9saW5lYXIgPGVtPlZlbG9jaXR5IGxpbmVhcjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+VmVsb2NpdHkgbGluZWFyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRWZWxvY2l0eV9saW5lYXIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFZlbG9jaXR5X2xpbmVhcihWZWxvY2l0eV9MaW5lYXIgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VmVsb2NpdHkgYW5ndWxhcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+VmVsb2NpdHkgYW5ndWxhcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+VmVsb2NpdHkgYW5ndWxhcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0VmVsb2NpdHlfYW5ndWxhcihWZWxvY2l0eV9Bbmd1bGFyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZSNnZXRWZWxvY2l0eV9WZWxvY2l0eV9hbmd1bGFyKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJVmVsb2NpdHlfQW5ndWxhciBnZXRWZWxvY2l0eV9hbmd1bGFyKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5WZWxvY2l0eSNnZXRWZWxvY2l0eV9hbmd1bGFyIDxlbT5WZWxvY2l0eSBhbmd1bGFyPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5WZWxvY2l0eSBhbmd1bGFyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRWZWxvY2l0eV9hbmd1bGFyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRWZWxvY2l0eV9hbmd1bGFyKFZlbG9jaXR5X0FuZ3VsYXIgdmFsdWUpOworCit9IC8vIFZlbG9jaXR5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL1ZlbG9jaXR5X0FuZ3VsYXIuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvVmVsb2NpdHlfQW5ndWxhci5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM3MWUzNTkKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL1ZlbG9jaXR5X0FuZ3VsYXIuamF2YQpAQCAtMCwwICsxLDQ5IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5WZWxvY2l0eSBBbmd1bGFyPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5X0FuZ3VsYXIjZ2V0VmFsdWUgPGVtPlZhbHVlPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlI2dldFZlbG9jaXR5X0FuZ3VsYXIoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgVmVsb2NpdHlfQW5ndWxhciBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlZhbHVlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5WYWx1ZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+VmFsdWU8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFZhbHVlKEZsb2F0NjQpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlI2dldFZlbG9jaXR5X0FuZ3VsYXJfVmFsdWUoKQorCSAqIEBtb2RlbCB1bmlxdWU9ImZhbHNlIiBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0VmFsdWUoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5X0FuZ3VsYXIjZ2V0VmFsdWUgPGVtPlZhbHVlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5WYWx1ZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0VmFsdWUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFZhbHVlKE9iamVjdCB2YWx1ZSk7CisKK30gLy8gVmVsb2NpdHlfQW5ndWxhcgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9WZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHQuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvVmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjBjMmZkNAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvVmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0LmphdmEKQEAgLTAsMCArMSw3NSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+VmVsb2NpdHkgQW5ndWxhciBMZWZ0IFJpZ2h0PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodCNnZXRWZWxvY2l0eV9hbmd1bGFyX2xlZnQgPGVtPlZlbG9jaXR5IGFuZ3VsYXIgbGVmdDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuVmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0I2dldFZlbG9jaXR5X2FuZ3VsYXJfcmlnaHQgPGVtPlZlbG9jaXR5IGFuZ3VsYXIgcmlnaHQ8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2UjZ2V0VmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0KCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodCBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlZlbG9jaXR5IGFuZ3VsYXIgbGVmdDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+VmVsb2NpdHkgYW5ndWxhciBsZWZ0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5WZWxvY2l0eSBhbmd1bGFyIGxlZnQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldFZlbG9jaXR5X2FuZ3VsYXJfbGVmdChWZWxvY2l0eV9Bbmd1bGFyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZSNnZXRWZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHRfVmVsb2NpdHlfYW5ndWxhcl9sZWZ0KCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJVmVsb2NpdHlfQW5ndWxhciBnZXRWZWxvY2l0eV9hbmd1bGFyX2xlZnQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodCNnZXRWZWxvY2l0eV9hbmd1bGFyX2xlZnQgPGVtPlZlbG9jaXR5IGFuZ3VsYXIgbGVmdDwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+VmVsb2NpdHkgYW5ndWxhciBsZWZ0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRWZWxvY2l0eV9hbmd1bGFyX2xlZnQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFZlbG9jaXR5X2FuZ3VsYXJfbGVmdChWZWxvY2l0eV9Bbmd1bGFyIHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlZlbG9jaXR5IGFuZ3VsYXIgcmlnaHQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlZlbG9jaXR5IGFuZ3VsYXIgcmlnaHQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlZlbG9jaXR5IGFuZ3VsYXIgcmlnaHQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldFZlbG9jaXR5X2FuZ3VsYXJfcmlnaHQoVmVsb2NpdHlfQW5ndWxhcikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2UjZ2V0VmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0X1ZlbG9jaXR5X2FuZ3VsYXJfcmlnaHQoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlWZWxvY2l0eV9Bbmd1bGFyIGdldFZlbG9jaXR5X2FuZ3VsYXJfcmlnaHQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodCNnZXRWZWxvY2l0eV9hbmd1bGFyX3JpZ2h0IDxlbT5WZWxvY2l0eSBhbmd1bGFyIHJpZ2h0PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5WZWxvY2l0eSBhbmd1bGFyIHJpZ2h0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRWZWxvY2l0eV9hbmd1bGFyX3JpZ2h0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRWZWxvY2l0eV9hbmd1bGFyX3JpZ2h0KFZlbG9jaXR5X0FuZ3VsYXIgdmFsdWUpOworCit9IC8vIFZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9WZWxvY2l0eV9MaW5lYXIuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvVmVsb2NpdHlfTGluZWFyLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTNmMDM2OAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvVmVsb2NpdHlfTGluZWFyLmphdmEKQEAgLTAsMCArMSw0OSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+VmVsb2NpdHkgTGluZWFyPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5X0xpbmVhciNnZXRWYWx1ZSA8ZW0+VmFsdWU8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2UjZ2V0VmVsb2NpdHlfTGluZWFyKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFZlbG9jaXR5X0xpbmVhciBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlZhbHVlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5WYWx1ZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+VmFsdWU8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFZhbHVlKEludDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZSNnZXRWZWxvY2l0eV9MaW5lYXJfVmFsdWUoKQorCSAqIEBtb2RlbCB1bmlxdWU9ImZhbHNlIiBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSW50MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFZhbHVlKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5WZWxvY2l0eV9MaW5lYXIjZ2V0VmFsdWUgPGVtPlZhbHVlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5WYWx1ZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0VmFsdWUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFZhbHVlKE9iamVjdCB2YWx1ZSk7CisKK30gLy8gVmVsb2NpdHlfTGluZWFyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL2ltcGwvQW5ndWxhckltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvaW1wbC9Bbmd1bGFySW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjEyZDg3MTAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL2ltcGwvQW5ndWxhckltcGwuamF2YQpAQCAtMCwwICsxLDE2MCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5Bbmd1bGFyOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Bbmd1bGFyPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLkFuZ3VsYXJJbXBsI2dldFZhbHVlIDxlbT5WYWx1ZTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEFuZ3VsYXJJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIEFuZ3VsYXIgeworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRWYWx1ZSgpIDxlbT5WYWx1ZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VmFsdWUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFZBTFVFX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFZhbHVlKCkgPGVtPlZhbHVlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRWYWx1ZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCB2YWx1ZSA9IFZBTFVFX0VERUZBVUxUOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIEFuZ3VsYXJJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gT2FycDRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5BTkdVTEFSOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0VmFsdWUoKSB7CisJCXJldHVybiB2YWx1ZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRWYWx1ZShPYmplY3QgbmV3VmFsdWUpIHsKKwkJT2JqZWN0IG9sZFZhbHVlID0gdmFsdWU7CisJCXZhbHVlID0gbmV3VmFsdWU7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuQU5HVUxBUl9fVkFMVUUsIG9sZFZhbHVlLCB2YWx1ZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5BTkdVTEFSX19WQUxVRToKKwkJCQlyZXR1cm4gZ2V0VmFsdWUoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLkFOR1VMQVJfX1ZBTFVFOgorCQkJCXNldFZhbHVlKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuQU5HVUxBUl9fVkFMVUU6CisJCQkJc2V0VmFsdWUoVkFMVUVfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLkFOR1VMQVJfX1ZBTFVFOgorCQkJCXJldHVybiBWQUxVRV9FREVGQVVMVCA9PSBudWxsID8gdmFsdWUgIT0gbnVsbCA6ICFWQUxVRV9FREVGQVVMVC5lcXVhbHModmFsdWUpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAodmFsdWU6ICIpOworCQlyZXN1bHQuYXBwZW5kKHZhbHVlKTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIEFuZ3VsYXJJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL2ltcGwvQXJ0X1NldF9Qb2ludEltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvaW1wbC9BcnRfU2V0X1BvaW50SW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhjMDk0Y2IKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL2ltcGwvQXJ0X1NldF9Qb2ludEltcGwuamF2YQpAQCAtMCwwICsxLDIzOSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb25DaGFpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLkFydF9TZXRfUG9pbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5WZWxvY2l0eV9Bbmd1bGFyOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+QXJ0IFNldCBQb2ludDwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5BcnRfU2V0X1BvaW50SW1wbCNnZXRPbWVnYV9sZWZ0IDxlbT5PbWVnYSBsZWZ0PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLkFydF9TZXRfUG9pbnRJbXBsI2dldE9tZWdhX3JpZ2h0IDxlbT5PbWVnYSByaWdodDwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEFydF9TZXRfUG9pbnRJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIEFydF9TZXRfUG9pbnQgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldE9tZWdhX2xlZnQoKSA8ZW0+T21lZ2EgbGVmdDwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0T21lZ2FfbGVmdCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFZlbG9jaXR5X0FuZ3VsYXIgb21lZ2FfbGVmdDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldE9tZWdhX3JpZ2h0KCkgPGVtPk9tZWdhIHJpZ2h0PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRPbWVnYV9yaWdodCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFZlbG9jaXR5X0FuZ3VsYXIgb21lZ2FfcmlnaHQ7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgQXJ0X1NldF9Qb2ludEltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLkFSVF9TRVRfUE9JTlQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFZlbG9jaXR5X0FuZ3VsYXIgZ2V0T21lZ2FfbGVmdCgpIHsKKwkJcmV0dXJuIG9tZWdhX2xlZnQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0T21lZ2FfbGVmdChWZWxvY2l0eV9Bbmd1bGFyIG5ld09tZWdhX2xlZnQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJVmVsb2NpdHlfQW5ndWxhciBvbGRPbWVnYV9sZWZ0ID0gb21lZ2FfbGVmdDsKKwkJb21lZ2FfbGVmdCA9IG5ld09tZWdhX2xlZnQ7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuQVJUX1NFVF9QT0lOVF9fT01FR0FfTEVGVCwgb2xkT21lZ2FfbGVmdCwgbmV3T21lZ2FfbGVmdCk7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0T21lZ2FfbGVmdChWZWxvY2l0eV9Bbmd1bGFyIG5ld09tZWdhX2xlZnQpIHsKKwkJaWYgKG5ld09tZWdhX2xlZnQgIT0gb21lZ2FfbGVmdCkgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAob21lZ2FfbGVmdCAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdClvbWVnYV9sZWZ0KS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gT2FycDRfZGF0YXR5cGVzUGFja2FnZS5BUlRfU0VUX1BPSU5UX19PTUVHQV9MRUZULCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdPbWVnYV9sZWZ0ICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld09tZWdhX2xlZnQpLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLkFSVF9TRVRfUE9JTlRfX09NRUdBX0xFRlQsIG51bGwsIG1zZ3MpOworCQkJbXNncyA9IGJhc2ljU2V0T21lZ2FfbGVmdChuZXdPbWVnYV9sZWZ0LCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuQVJUX1NFVF9QT0lOVF9fT01FR0FfTEVGVCwgbmV3T21lZ2FfbGVmdCwgbmV3T21lZ2FfbGVmdCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBWZWxvY2l0eV9Bbmd1bGFyIGdldE9tZWdhX3JpZ2h0KCkgeworCQlyZXR1cm4gb21lZ2FfcmlnaHQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0T21lZ2FfcmlnaHQoVmVsb2NpdHlfQW5ndWxhciBuZXdPbWVnYV9yaWdodCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlWZWxvY2l0eV9Bbmd1bGFyIG9sZE9tZWdhX3JpZ2h0ID0gb21lZ2FfcmlnaHQ7CisJCW9tZWdhX3JpZ2h0ID0gbmV3T21lZ2FfcmlnaHQ7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuQVJUX1NFVF9QT0lOVF9fT01FR0FfUklHSFQsIG9sZE9tZWdhX3JpZ2h0LCBuZXdPbWVnYV9yaWdodCk7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0T21lZ2FfcmlnaHQoVmVsb2NpdHlfQW5ndWxhciBuZXdPbWVnYV9yaWdodCkgeworCQlpZiAobmV3T21lZ2FfcmlnaHQgIT0gb21lZ2FfcmlnaHQpIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKG9tZWdhX3JpZ2h0ICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW9tZWdhX3JpZ2h0KS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gT2FycDRfZGF0YXR5cGVzUGFja2FnZS5BUlRfU0VUX1BPSU5UX19PTUVHQV9SSUdIVCwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3T21lZ2FfcmlnaHQgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3T21lZ2FfcmlnaHQpLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLkFSVF9TRVRfUE9JTlRfX09NRUdBX1JJR0hULCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldE9tZWdhX3JpZ2h0KG5ld09tZWdhX3JpZ2h0LCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuQVJUX1NFVF9QT0lOVF9fT01FR0FfUklHSFQsIG5ld09tZWdhX3JpZ2h0LCBuZXdPbWVnYV9yaWdodCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBlSW52ZXJzZVJlbW92ZShJbnRlcm5hbEVPYmplY3Qgb3RoZXJFbmQsIGludCBmZWF0dXJlSUQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5BUlRfU0VUX1BPSU5UX19PTUVHQV9MRUZUOgorCQkJCXJldHVybiBiYXNpY1NldE9tZWdhX2xlZnQobnVsbCwgbXNncyk7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuQVJUX1NFVF9QT0lOVF9fT01FR0FfUklHSFQ6CisJCQkJcmV0dXJuIGJhc2ljU2V0T21lZ2FfcmlnaHQobnVsbCwgbXNncyk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJbnZlcnNlUmVtb3ZlKG90aGVyRW5kLCBmZWF0dXJlSUQsIG1zZ3MpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5BUlRfU0VUX1BPSU5UX19PTUVHQV9MRUZUOgorCQkJCXJldHVybiBnZXRPbWVnYV9sZWZ0KCk7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuQVJUX1NFVF9QT0lOVF9fT01FR0FfUklHSFQ6CisJCQkJcmV0dXJuIGdldE9tZWdhX3JpZ2h0KCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5BUlRfU0VUX1BPSU5UX19PTUVHQV9MRUZUOgorCQkJCXNldE9tZWdhX2xlZnQoKFZlbG9jaXR5X0FuZ3VsYXIpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5BUlRfU0VUX1BPSU5UX19PTUVHQV9SSUdIVDoKKwkJCQlzZXRPbWVnYV9yaWdodCgoVmVsb2NpdHlfQW5ndWxhciluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5BUlRfU0VUX1BPSU5UX19PTUVHQV9MRUZUOgorCQkJCXNldE9tZWdhX2xlZnQoKFZlbG9jaXR5X0FuZ3VsYXIpbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLkFSVF9TRVRfUE9JTlRfX09NRUdBX1JJR0hUOgorCQkJCXNldE9tZWdhX3JpZ2h0KChWZWxvY2l0eV9Bbmd1bGFyKW51bGwpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLkFSVF9TRVRfUE9JTlRfX09NRUdBX0xFRlQ6CisJCQkJcmV0dXJuIG9tZWdhX2xlZnQgIT0gbnVsbDsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5BUlRfU0VUX1BPSU5UX19PTUVHQV9SSUdIVDoKKwkJCQlyZXR1cm4gb21lZ2FfcmlnaHQgIT0gbnVsbDsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCit9IC8vIEFydF9TZXRfUG9pbnRJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL2ltcGwvRGlzdGFuY2VJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL2ltcGwvRGlzdGFuY2VJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDU4NzI1YwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvaW1wbC9EaXN0YW5jZUltcGwuamF2YQpAQCAtMCwwICsxLDE2MCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5EaXN0YW5jZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+RGlzdGFuY2U8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuRGlzdGFuY2VJbXBsI2dldFZhbHVlIDxlbT5WYWx1ZTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIERpc3RhbmNlSW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBEaXN0YW5jZSB7CisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFZhbHVlKCkgPGVtPlZhbHVlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRWYWx1ZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgVkFMVUVfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0VmFsdWUoKSA8ZW0+VmFsdWU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFZhbHVlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHZhbHVlID0gVkFMVUVfRURFRkFVTFQ7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRGlzdGFuY2VJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gT2FycDRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5ESVNUQU5DRTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFZhbHVlKCkgeworCQlyZXR1cm4gdmFsdWU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0VmFsdWUoT2JqZWN0IG5ld1ZhbHVlKSB7CisJCU9iamVjdCBvbGRWYWx1ZSA9IHZhbHVlOworCQl2YWx1ZSA9IG5ld1ZhbHVlOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLkRJU1RBTkNFX19WQUxVRSwgb2xkVmFsdWUsIHZhbHVlKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLkRJU1RBTkNFX19WQUxVRToKKwkJCQlyZXR1cm4gZ2V0VmFsdWUoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLkRJU1RBTkNFX19WQUxVRToKKwkJCQlzZXRWYWx1ZSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLkRJU1RBTkNFX19WQUxVRToKKwkJCQlzZXRWYWx1ZShWQUxVRV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuRElTVEFOQ0VfX1ZBTFVFOgorCQkJCXJldHVybiBWQUxVRV9FREVGQVVMVCA9PSBudWxsID8gdmFsdWUgIT0gbnVsbCA6ICFWQUxVRV9FREVGQVVMVC5lcXVhbHModmFsdWUpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAodmFsdWU6ICIpOworCQlyZXN1bHQuYXBwZW5kKHZhbHVlKTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIERpc3RhbmNlSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9pbXBsL01ldHJpY0ltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvaW1wbC9NZXRyaWNJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGY0MDRmMgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvaW1wbC9NZXRyaWNJbXBsLmphdmEKQEAgLTAsMCArMSwxNjAgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuTWV0cmljOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5NZXRyaWM8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuTWV0cmljSW1wbCNnZXRWYWx1ZSA8ZW0+VmFsdWU8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBNZXRyaWNJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIE1ldHJpYyB7CisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFZhbHVlKCkgPGVtPlZhbHVlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRWYWx1ZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgVkFMVUVfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0VmFsdWUoKSA8ZW0+VmFsdWU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFZhbHVlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHZhbHVlID0gVkFMVUVfRURFRkFVTFQ7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgTWV0cmljSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuTUVUUklDOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0VmFsdWUoKSB7CisJCXJldHVybiB2YWx1ZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRWYWx1ZShPYmplY3QgbmV3VmFsdWUpIHsKKwkJT2JqZWN0IG9sZFZhbHVlID0gdmFsdWU7CisJCXZhbHVlID0gbmV3VmFsdWU7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuTUVUUklDX19WQUxVRSwgb2xkVmFsdWUsIHZhbHVlKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk1FVFJJQ19fVkFMVUU6CisJCQkJcmV0dXJuIGdldFZhbHVlKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5NRVRSSUNfX1ZBTFVFOgorCQkJCXNldFZhbHVlKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuTUVUUklDX19WQUxVRToKKwkJCQlzZXRWYWx1ZShWQUxVRV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuTUVUUklDX19WQUxVRToKKwkJCQlyZXR1cm4gVkFMVUVfRURFRkFVTFQgPT0gbnVsbCA/IHZhbHVlICE9IG51bGwgOiAhVkFMVUVfRURFRkFVTFQuZXF1YWxzKHZhbHVlKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJaWYgKGVJc1Byb3h5KCkpIHJldHVybiBzdXBlci50b1N0cmluZygpOworCisJCVN0cmluZ0J1ZmZlciByZXN1bHQgPSBuZXcgU3RyaW5nQnVmZmVyKHN1cGVyLnRvU3RyaW5nKCkpOworCQlyZXN1bHQuYXBwZW5kKCIgKHZhbHVlOiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh2YWx1ZSk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBNZXRyaWNJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL2ltcGwvTWlsbGlfQW1wSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9pbXBsL01pbGxpX0FtcEltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wZWQ0ZTY5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9pbXBsL01pbGxpX0FtcEltcGwuamF2YQpAQCAtMCwwICsxLDE2MCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5NaWxsaV9BbXA7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk1pbGxpIEFtcDwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5NaWxsaV9BbXBJbXBsI2dldFZhbHVlIDxlbT5WYWx1ZTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIE1pbGxpX0FtcEltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgTWlsbGlfQW1wIHsKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0VmFsdWUoKSA8ZW0+VmFsdWU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFZhbHVlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBWQUxVRV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRWYWx1ZSgpIDxlbT5WYWx1ZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VmFsdWUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgdmFsdWUgPSBWQUxVRV9FREVGQVVMVDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBNaWxsaV9BbXBJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gT2FycDRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5NSUxMSV9BTVA7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRWYWx1ZSgpIHsKKwkJcmV0dXJuIHZhbHVlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFZhbHVlKE9iamVjdCBuZXdWYWx1ZSkgeworCQlPYmplY3Qgb2xkVmFsdWUgPSB2YWx1ZTsKKwkJdmFsdWUgPSBuZXdWYWx1ZTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5NSUxMSV9BTVBfX1ZBTFVFLCBvbGRWYWx1ZSwgdmFsdWUpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuTUlMTElfQU1QX19WQUxVRToKKwkJCQlyZXR1cm4gZ2V0VmFsdWUoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk1JTExJX0FNUF9fVkFMVUU6CisJCQkJc2V0VmFsdWUoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5NSUxMSV9BTVBfX1ZBTFVFOgorCQkJCXNldFZhbHVlKFZBTFVFX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5NSUxMSV9BTVBfX1ZBTFVFOgorCQkJCXJldHVybiBWQUxVRV9FREVGQVVMVCA9PSBudWxsID8gdmFsdWUgIT0gbnVsbCA6ICFWQUxVRV9FREVGQVVMVC5lcXVhbHModmFsdWUpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAodmFsdWU6ICIpOworCQlyZXN1bHQuYXBwZW5kKHZhbHVlKTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIE1pbGxpX0FtcEltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvaW1wbC9PYXJwNF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9pbXBsL09hcnA0X2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDUwNjgxMAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvaW1wbC9PYXJwNF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5qYXZhCkBAIC0wLDAgKzEsMjc0IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5wbHVnaW4uRWNvcmVQbHVnaW47CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuQW5ndWxhcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5BcnRfU2V0X1BvaW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLkRpc3RhbmNlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk1ldHJpYzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5NaWxsaV9BbXA7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzRmFjdG9yeTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9kb21ldGVyX1RpY3M7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9wX1NldF9Qb2ludDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5Qcm94aV9MZWZ0X1JpZ2h0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlNwZWVkX1RpY3M7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuU3BlZWRfVGljc19MZWZ0X1JpZ2h0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5X0FuZ3VsYXI7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuVmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5X0xpbmVhcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPkZhY3Rvcnk8L2I+LgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBPYXJwNF9kYXRhdHlwZXNGYWN0b3J5SW1wbCBleHRlbmRzIEVGYWN0b3J5SW1wbCBpbXBsZW1lbnRzIE9hcnA0X2RhdGF0eXBlc0ZhY3RvcnkgeworCS8qKgorCSAqIENyZWF0ZXMgdGhlIGRlZmF1bHQgZmFjdG9yeSBpbXBsZW1lbnRhdGlvbi4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIE9hcnA0X2RhdGF0eXBlc0ZhY3RvcnkgaW5pdCgpIHsKKwkJdHJ5IHsKKwkJCU9hcnA0X2RhdGF0eXBlc0ZhY3RvcnkgdGhlT2FycDRfZGF0YXR5cGVzRmFjdG9yeSA9IChPYXJwNF9kYXRhdHlwZXNGYWN0b3J5KUVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVGYWN0b3J5KE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSk7CisJCQlpZiAodGhlT2FycDRfZGF0YXR5cGVzRmFjdG9yeSAhPSBudWxsKSB7CisJCQkJcmV0dXJuIHRoZU9hcnA0X2RhdGF0eXBlc0ZhY3Rvcnk7CisJCQl9CisJCX0KKwkJY2F0Y2ggKEV4Y2VwdGlvbiBleGNlcHRpb24pIHsKKwkJCUVjb3JlUGx1Z2luLklOU1RBTkNFLmxvZyhleGNlcHRpb24pOworCQl9CisJCXJldHVybiBuZXcgT2FycDRfZGF0YXR5cGVzRmFjdG9yeUltcGwoKTsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSBmYWN0b3J5LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYXJwNF9kYXRhdHlwZXNGYWN0b3J5SW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgRU9iamVjdCBjcmVhdGUoRUNsYXNzIGVDbGFzcykgeworCQlzd2l0Y2ggKGVDbGFzcy5nZXRDbGFzc2lmaWVySUQoKSkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlZFTE9DSVRZX0xJTkVBUjogcmV0dXJuIGNyZWF0ZVZlbG9jaXR5X0xpbmVhcigpOworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLkFSVF9TRVRfUE9JTlQ6IHJldHVybiBjcmVhdGVBcnRfU2V0X1BvaW50KCk7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFlfQU5HVUxBUjogcmV0dXJuIGNyZWF0ZVZlbG9jaXR5X0FuZ3VsYXIoKTsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5ESVNUQU5DRTogcmV0dXJuIGNyZWF0ZURpc3RhbmNlKCk7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuTUVUUklDOiByZXR1cm4gY3JlYXRlTWV0cmljKCk7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuQU5HVUxBUjogcmV0dXJuIGNyZWF0ZUFuZ3VsYXIoKTsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5PUF9TRVRfUE9JTlQ6IHJldHVybiBjcmVhdGVPcF9TZXRfUG9pbnQoKTsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5TUEVFRF9USUNTX0xFRlRfUklHSFQ6IHJldHVybiBjcmVhdGVTcGVlZF9UaWNzX0xlZnRfUmlnaHQoKTsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5TUEVFRF9USUNTOiByZXR1cm4gY3JlYXRlU3BlZWRfVGljcygpOworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVEVSX1RJQ1M6IHJldHVybiBjcmVhdGVPZG9tZXRlcl9UaWNzKCk7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVURVJfVElDU19MRUZUX1JJR0hUOiByZXR1cm4gY3JlYXRlT2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0KCk7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuUFJPWElfTEVGVF9SSUdIVDogcmV0dXJuIGNyZWF0ZVByb3hpX0xlZnRfUmlnaHQoKTsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5NSUxMSV9BTVA6IHJldHVybiBjcmVhdGVNaWxsaV9BbXAoKTsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRFUl9MSU5FQVJfTEVGVF9SSUdIVDogcmV0dXJuIGNyZWF0ZU9kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0KCk7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFlfQU5HVUxBUl9MRUZUX1JJR0hUOiByZXR1cm4gY3JlYXRlVmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0KCk7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFk6IHJldHVybiBjcmVhdGVWZWxvY2l0eSgpOworCQkJZGVmYXVsdDoKKwkJCQl0aHJvdyBuZXcgSWxsZWdhbEFyZ3VtZW50RXhjZXB0aW9uKCJUaGUgY2xhc3MgJyIgKyBlQ2xhc3MuZ2V0TmFtZSgpICsgIicgaXMgbm90IGEgdmFsaWQgY2xhc3NpZmllciIpOworCQl9CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFZlbG9jaXR5X0xpbmVhciBjcmVhdGVWZWxvY2l0eV9MaW5lYXIoKSB7CisJCVZlbG9jaXR5X0xpbmVhckltcGwgdmVsb2NpdHlfTGluZWFyID0gbmV3IFZlbG9jaXR5X0xpbmVhckltcGwoKTsKKwkJcmV0dXJuIHZlbG9jaXR5X0xpbmVhcjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQXJ0X1NldF9Qb2ludCBjcmVhdGVBcnRfU2V0X1BvaW50KCkgeworCQlBcnRfU2V0X1BvaW50SW1wbCBhcnRfU2V0X1BvaW50ID0gbmV3IEFydF9TZXRfUG9pbnRJbXBsKCk7CisJCXJldHVybiBhcnRfU2V0X1BvaW50OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBWZWxvY2l0eV9Bbmd1bGFyIGNyZWF0ZVZlbG9jaXR5X0FuZ3VsYXIoKSB7CisJCVZlbG9jaXR5X0FuZ3VsYXJJbXBsIHZlbG9jaXR5X0FuZ3VsYXIgPSBuZXcgVmVsb2NpdHlfQW5ndWxhckltcGwoKTsKKwkJcmV0dXJuIHZlbG9jaXR5X0FuZ3VsYXI7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIERpc3RhbmNlIGNyZWF0ZURpc3RhbmNlKCkgeworCQlEaXN0YW5jZUltcGwgZGlzdGFuY2UgPSBuZXcgRGlzdGFuY2VJbXBsKCk7CisJCXJldHVybiBkaXN0YW5jZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTWV0cmljIGNyZWF0ZU1ldHJpYygpIHsKKwkJTWV0cmljSW1wbCBtZXRyaWMgPSBuZXcgTWV0cmljSW1wbCgpOworCQlyZXR1cm4gbWV0cmljOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBbmd1bGFyIGNyZWF0ZUFuZ3VsYXIoKSB7CisJCUFuZ3VsYXJJbXBsIGFuZ3VsYXIgPSBuZXcgQW5ndWxhckltcGwoKTsKKwkJcmV0dXJuIGFuZ3VsYXI7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9wX1NldF9Qb2ludCBjcmVhdGVPcF9TZXRfUG9pbnQoKSB7CisJCU9wX1NldF9Qb2ludEltcGwgb3BfU2V0X1BvaW50ID0gbmV3IE9wX1NldF9Qb2ludEltcGwoKTsKKwkJcmV0dXJuIG9wX1NldF9Qb2ludDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3BlZWRfVGljc19MZWZ0X1JpZ2h0IGNyZWF0ZVNwZWVkX1RpY3NfTGVmdF9SaWdodCgpIHsKKwkJU3BlZWRfVGljc19MZWZ0X1JpZ2h0SW1wbCBzcGVlZF9UaWNzX0xlZnRfUmlnaHQgPSBuZXcgU3BlZWRfVGljc19MZWZ0X1JpZ2h0SW1wbCgpOworCQlyZXR1cm4gc3BlZWRfVGljc19MZWZ0X1JpZ2h0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTcGVlZF9UaWNzIGNyZWF0ZVNwZWVkX1RpY3MoKSB7CisJCVNwZWVkX1RpY3NJbXBsIHNwZWVkX1RpY3MgPSBuZXcgU3BlZWRfVGljc0ltcGwoKTsKKwkJcmV0dXJuIHNwZWVkX1RpY3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9kb21ldGVyX1RpY3MgY3JlYXRlT2RvbWV0ZXJfVGljcygpIHsKKwkJT2RvbWV0ZXJfVGljc0ltcGwgb2RvbWV0ZXJfVGljcyA9IG5ldyBPZG9tZXRlcl9UaWNzSW1wbCgpOworCQlyZXR1cm4gb2RvbWV0ZXJfVGljczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0IGNyZWF0ZU9kb21ldGVyX1RpY3NfTGVmdF9SaWdodCgpIHsKKwkJT2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0SW1wbCBvZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHQgPSBuZXcgT2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0SW1wbCgpOworCQlyZXR1cm4gb2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBQcm94aV9MZWZ0X1JpZ2h0IGNyZWF0ZVByb3hpX0xlZnRfUmlnaHQoKSB7CisJCVByb3hpX0xlZnRfUmlnaHRJbXBsIHByb3hpX0xlZnRfUmlnaHQgPSBuZXcgUHJveGlfTGVmdF9SaWdodEltcGwoKTsKKwkJcmV0dXJuIHByb3hpX0xlZnRfUmlnaHQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE1pbGxpX0FtcCBjcmVhdGVNaWxsaV9BbXAoKSB7CisJCU1pbGxpX0FtcEltcGwgbWlsbGlfQW1wID0gbmV3IE1pbGxpX0FtcEltcGwoKTsKKwkJcmV0dXJuIG1pbGxpX0FtcDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHQgY3JlYXRlT2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHQoKSB7CisJCU9kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0SW1wbCBvZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodCA9IG5ldyBPZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodEltcGwoKTsKKwkJcmV0dXJuIG9kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBWZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHQgY3JlYXRlVmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0KCkgeworCQlWZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHRJbXBsIHZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodCA9IG5ldyBWZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHRJbXBsKCk7CisJCXJldHVybiB2ZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFZlbG9jaXR5IGNyZWF0ZVZlbG9jaXR5KCkgeworCQlWZWxvY2l0eUltcGwgdmVsb2NpdHkgPSBuZXcgVmVsb2NpdHlJbXBsKCk7CisJCXJldHVybiB2ZWxvY2l0eTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2FycDRfZGF0YXR5cGVzUGFja2FnZSBnZXRPYXJwNF9kYXRhdHlwZXNQYWNrYWdlKCkgeworCQlyZXR1cm4gKE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UpZ2V0RVBhY2thZ2UoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBkZXByZWNhdGVkCisJICogQGdlbmVyYXRlZAorCSAqLworCUBEZXByZWNhdGVkCisJcHVibGljIHN0YXRpYyBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlIGdldFBhY2thZ2UoKSB7CisJCXJldHVybiBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRTsKKwl9CisKK30gLy8gT2FycDRfZGF0YXR5cGVzRmFjdG9yeUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvaW1wbC9PYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9pbXBsL09hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWY2N2YyOQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvaW1wbC9PYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5qYXZhCkBAIC0wLDAgKzEsNzkyIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRVBhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5OYXZfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuT2FycDFfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5pbXBsLk9hcnAxX2RhdGF0eXBlc1BhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLkFuZ3VsYXI7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuQXJ0X1NldF9Qb2ludDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5EaXN0YW5jZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5NZXRyaWM7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuTWlsbGlfQW1wOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc0ZhY3Rvcnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PZG9tZXRlcl9UaWNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9kb21ldGVyX1RpY3NfTGVmdF9SaWdodDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PcF9TZXRfUG9pbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuUHJveGlfTGVmdF9SaWdodDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5TcGVlZF9UaWNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlNwZWVkX1RpY3NfTGVmdF9SaWdodDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5WZWxvY2l0eTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5WZWxvY2l0eV9Bbmd1bGFyOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5WZWxvY2l0eV9MaW5lYXI7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuVU1MUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPlBhY2thZ2U8L2I+LgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbCBleHRlbmRzIEVQYWNrYWdlSW1wbCBpbXBsZW1lbnRzIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UgeworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIHZlbG9jaXR5X0xpbmVhckVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBhcnRfU2V0X1BvaW50RUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIHZlbG9jaXR5X0FuZ3VsYXJFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgZGlzdGFuY2VFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgbWV0cmljRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGFuZ3VsYXJFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3Mgb3BfU2V0X1BvaW50RUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIHNwZWVkX1RpY3NfTGVmdF9SaWdodEVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBzcGVlZF9UaWNzRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIG9kb21ldGVyX1RpY3NFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3Mgb2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0RUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIHByb3hpX0xlZnRfUmlnaHRFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgbWlsbGlfQW1wRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIG9kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0RUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIHZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodEVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyB2ZWxvY2l0eUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSBtb2RlbCA8Yj5QYWNrYWdlPC9iPiwgcmVnaXN0ZXJlZCB3aXRoCisJICoge0BsaW5rIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZS5SZWdpc3RyeSBFUGFja2FnZS5SZWdpc3RyeX0gYnkgdGhlIHBhY2thZ2UKKwkgKiBwYWNrYWdlIFVSSSB2YWx1ZS4KKwkgKiA8cD5Ob3RlOiB0aGUgY29ycmVjdCB3YXkgdG8gY3JlYXRlIHRoZSBwYWNrYWdlIGlzIHZpYSB0aGUgc3RhdGljCisJICogZmFjdG9yeSBtZXRob2Qge0BsaW5rICNpbml0IGluaXQoKX0sIHdoaWNoIGFsc28gcGVyZm9ybXMKKwkgKiBpbml0aWFsaXphdGlvbiBvZiB0aGUgcGFja2FnZSwgb3IgcmV0dXJucyB0aGUgcmVnaXN0ZXJlZCBwYWNrYWdlLAorCSAqIGlmIG9uZSBhbHJlYWR5IGV4aXN0cy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZS5SZWdpc3RyeQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZSNlTlNfVVJJCisJICogQHNlZSAjaW5pdCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGwoKSB7CisJCXN1cGVyKGVOU19VUkksIE9hcnA0X2RhdGF0eXBlc0ZhY3RvcnkuZUlOU1RBTkNFKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIHN0YXRpYyBib29sZWFuIGlzSW5pdGVkID0gZmFsc2U7CisKKwkvKioKKwkgKiBDcmVhdGVzLCByZWdpc3RlcnMsIGFuZCBpbml0aWFsaXplcyB0aGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoaXMgbW9kZWwsIGFuZCBmb3IgYW55IG90aGVycyB1cG9uIHdoaWNoIGl0IGRlcGVuZHMuCisJICoKKwkgKiA8cD4KKwkgKiBUaGlzIG1ldGhvZCBpcyB1c2VkIHRvIGluaXRpYWxpemUge0BsaW5rIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UjZUlOU1RBTkNFfSB3aGVuIHRoYXQgZmllbGQgaXMgYWNjZXNzZWQuIENsaWVudHMgc2hvdWxkIG5vdCBpbnZva2UgaXQgZGlyZWN0bHkuIEluc3RlYWQsIHRoZXkgc2hvdWxkIHNpbXBseSBhY2Nlc3MgdGhhdCBmaWVsZCB0byBvYnRhaW4gdGhlIHBhY2thZ2UuIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+IDwhLS0gZW5kLXVzZXItZG9jCisJICogLS0+CisJICoKKwkgKiBAc2VlICNlTlNfVVJJCisJICogQHNlZSAjY3JlYXRlUGFja2FnZUNvbnRlbnRzKCkKKwkgKiBAc2VlICNpbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHN0YXRpYyBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlIGluaXQoKSB7CisJCWlmIChpc0luaXRlZCkgcmV0dXJuIChPYXJwNF9kYXRhdHlwZXNQYWNrYWdlKUVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSk7CisKKwkJLy8gT2J0YWluIG9yIGNyZWF0ZSBhbmQgcmVnaXN0ZXIgcGFja2FnZQorCQlPYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbCB0aGVPYXJwNF9kYXRhdHlwZXNQYWNrYWdlID0gKE9hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXQoZU5TX1VSSSkgaW5zdGFuY2VvZiBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldChlTlNfVVJJKSA6IG5ldyBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbCgpKTsKKworCQlpc0luaXRlZCA9IHRydWU7CisKKwkJLy8gSW5pdGlhbGl6ZSBzaW1wbGUgZGVwZW5kZW5jaWVzCisJCVVNTFBhY2thZ2UuZUlOU1RBTkNFLmVDbGFzcygpOworCisJCS8vIE9idGFpbiBvciBjcmVhdGUgYW5kIHJlZ2lzdGVyIGludGVyZGVwZW5kZW5jaWVzCisJCVJvYm90TUxQYWNrYWdlSW1wbCB0aGVSb2JvdE1MUGFja2FnZSA9IChSb2JvdE1MUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKFJvYm90TUxQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgUm9ib3RNTFBhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoUm9ib3RNTFBhY2thZ2UuZU5TX1VSSSkgOiBSb2JvdE1MUGFja2FnZS5lSU5TVEFOQ0UpOworCQlEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZURpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZSA9IChEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIDogRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRSk7CisJCUdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZUdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UgPSAoR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgOiBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRSk7CisJCU5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbCB0aGVOYXZfZGF0YXR5cGVzUGFja2FnZSA9IChOYXZfZGF0YXR5cGVzUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKE5hdl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoTmF2X2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgOiBOYXZfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UpOworCQlTZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwgdGhlU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UgPSAoU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIDogU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFKTsKKwkJQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZUFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlID0gKEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSA6IEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRSk7CisJCU9hcnAxX2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZU9hcnAxX2RhdGF0eXBlc1BhY2thZ2UgPSAoT2FycDFfZGF0YXR5cGVzUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgOiBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRSk7CisJCVN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZSA9IChTdGRfZGF0YXR5cGVzUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKFN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoU3RkX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgOiBTdGRfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UpOworCisJCS8vIENyZWF0ZSBwYWNrYWdlIG1ldGEtZGF0YSBvYmplY3RzCisJCXRoZU9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZVJvYm90TUxQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZUdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZU5hdl9kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZU9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCisJCS8vIEluaXRpYWxpemUgY3JlYXRlZCBtZXRhLWRhdGEKKwkJdGhlT2FycDRfZGF0YXR5cGVzUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZVJvYm90TUxQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZU5hdl9kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZU9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisKKwkJLy8gTWFyayBtZXRhLWRhdGEgdG8gaW5kaWNhdGUgaXQgY2FuJ3QgYmUgY2hhbmdlZAorCQl0aGVPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLmZyZWV6ZSgpOworCisgIAorCQkvLyBVcGRhdGUgdGhlIHJlZ2lzdHJ5IGFuZCByZXR1cm4gdGhlIHBhY2thZ2UKKwkJRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UucHV0KE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSwgdGhlT2FycDRfZGF0YXR5cGVzUGFja2FnZSk7CisJCXJldHVybiB0aGVPYXJwNF9kYXRhdHlwZXNQYWNrYWdlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0VmVsb2NpdHlfTGluZWFyKCkgeworCQlyZXR1cm4gdmVsb2NpdHlfTGluZWFyRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFZlbG9jaXR5X0xpbmVhcl9WYWx1ZSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXZlbG9jaXR5X0xpbmVhckVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0QXJ0X1NldF9Qb2ludCgpIHsKKwkJcmV0dXJuIGFydF9TZXRfUG9pbnRFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0QXJ0X1NldF9Qb2ludF9PbWVnYV9sZWZ0KCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpYXJ0X1NldF9Qb2ludEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldEFydF9TZXRfUG9pbnRfT21lZ2FfcmlnaHQoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlhcnRfU2V0X1BvaW50RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRWZWxvY2l0eV9Bbmd1bGFyKCkgeworCQlyZXR1cm4gdmVsb2NpdHlfQW5ndWxhckVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRWZWxvY2l0eV9Bbmd1bGFyX1ZhbHVlKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpdmVsb2NpdHlfQW5ndWxhckVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0RGlzdGFuY2UoKSB7CisJCXJldHVybiBkaXN0YW5jZUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXREaXN0YW5jZV9WYWx1ZSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWRpc3RhbmNlRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRNZXRyaWMoKSB7CisJCXJldHVybiBtZXRyaWNFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0TWV0cmljX1ZhbHVlKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpbWV0cmljRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRBbmd1bGFyKCkgeworCQlyZXR1cm4gYW5ndWxhckVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRBbmd1bGFyX1ZhbHVlKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpYW5ndWxhckVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0T3BfU2V0X1BvaW50KCkgeworCQlyZXR1cm4gb3BfU2V0X1BvaW50RUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldE9wX1NldF9Qb2ludF9WZWxvY2l0eSgpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKW9wX1NldF9Qb2ludEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldE9wX1NldF9Qb2ludF9PcmllbnRhdGlvbigpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKW9wX1NldF9Qb2ludEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0U3BlZWRfVGljc19MZWZ0X1JpZ2h0KCkgeworCQlyZXR1cm4gc3BlZWRfVGljc19MZWZ0X1JpZ2h0RUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldFNwZWVkX1RpY3NfTGVmdF9SaWdodF9TcGVlZF90aWNzX2xlZnQoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlzcGVlZF9UaWNzX0xlZnRfUmlnaHRFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRTcGVlZF9UaWNzX0xlZnRfUmlnaHRfU3BlZWRfdGljc19yaWdodCgpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKXNwZWVkX1RpY3NfTGVmdF9SaWdodEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0U3BlZWRfVGljcygpIHsKKwkJcmV0dXJuIHNwZWVkX1RpY3NFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0U3BlZWRfVGljc19WYWx1ZSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXNwZWVkX1RpY3NFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldE9kb21ldGVyX1RpY3MoKSB7CisJCXJldHVybiBvZG9tZXRlcl9UaWNzRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldE9kb21ldGVyX1RpY3NfVmFsdWUoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlvZG9tZXRlcl9UaWNzRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRPZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHQoKSB7CisJCXJldHVybiBvZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHRFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0T2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0X09kb21ldGVyX3RpY3NfbGVmdCgpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKW9kb21ldGVyX1RpY3NfTGVmdF9SaWdodEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldE9kb21ldGVyX1RpY3NfTGVmdF9SaWdodF9PZG9tZXRlcl90aWNzX3JpZ2h0KCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2Upb2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRQcm94aV9MZWZ0X1JpZ2h0KCkgeworCQlyZXR1cm4gcHJveGlfTGVmdF9SaWdodEVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRQcm94aV9MZWZ0X1JpZ2h0X1Byb3hpX2xlZnQoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlwcm94aV9MZWZ0X1JpZ2h0RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0UHJveGlfTGVmdF9SaWdodF9Qcm94aV9yaWdodCgpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKXByb3hpX0xlZnRfUmlnaHRFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldE1pbGxpX0FtcCgpIHsKKwkJcmV0dXJuIG1pbGxpX0FtcEVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRNaWxsaV9BbXBfVmFsdWUoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSltaWxsaV9BbXBFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldE9kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0KCkgeworCQlyZXR1cm4gb2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHRFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0T2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHRfT2RvbWV0ZXJfbGluZWFyX2xlZnQoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlvZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldE9kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0X09kb21ldGVyX2xpbmVhcl9yaWdodCgpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKW9kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRWZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHQoKSB7CisJCXJldHVybiB2ZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHRFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0VmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0X1ZlbG9jaXR5X2FuZ3VsYXJfbGVmdCgpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKXZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldFZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodF9WZWxvY2l0eV9hbmd1bGFyX3JpZ2h0KCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpdmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRWZWxvY2l0eSgpIHsKKwkJcmV0dXJuIHZlbG9jaXR5RUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldFZlbG9jaXR5X1ZlbG9jaXR5X2xpbmVhcigpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKXZlbG9jaXR5RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0VmVsb2NpdHlfVmVsb2NpdHlfYW5ndWxhcigpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKXZlbG9jaXR5RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9hcnA0X2RhdGF0eXBlc0ZhY3RvcnkgZ2V0T2FycDRfZGF0YXR5cGVzRmFjdG9yeSgpIHsKKwkJcmV0dXJuIChPYXJwNF9kYXRhdHlwZXNGYWN0b3J5KWdldEVGYWN0b3J5SW5zdGFuY2UoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIGJvb2xlYW4gaXNDcmVhdGVkID0gZmFsc2U7CisKKwkvKioKKwkgKiBDcmVhdGVzIHRoZSBtZXRhLW1vZGVsIG9iamVjdHMgZm9yIHRoZSBwYWNrYWdlLiAgVGhpcyBtZXRob2QgaXMKKwkgKiBndWFyZGVkIHRvIGhhdmUgbm8gYWZmZWN0IG9uIGFueSBpbnZvY2F0aW9uIGJ1dCBpdHMgZmlyc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgY3JlYXRlUGFja2FnZUNvbnRlbnRzKCkgeworCQlpZiAoaXNDcmVhdGVkKSByZXR1cm47CisJCWlzQ3JlYXRlZCA9IHRydWU7CisKKwkJLy8gQ3JlYXRlIGNsYXNzZXMgYW5kIHRoZWlyIGZlYXR1cmVzCisJCXZlbG9jaXR5X0xpbmVhckVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhWRUxPQ0lUWV9MSU5FQVIpOworCQljcmVhdGVFQXR0cmlidXRlKHZlbG9jaXR5X0xpbmVhckVDbGFzcywgVkVMT0NJVFlfTElORUFSX19WQUxVRSk7CisKKwkJYXJ0X1NldF9Qb2ludEVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhBUlRfU0VUX1BPSU5UKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShhcnRfU2V0X1BvaW50RUNsYXNzLCBBUlRfU0VUX1BPSU5UX19PTUVHQV9MRUZUKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShhcnRfU2V0X1BvaW50RUNsYXNzLCBBUlRfU0VUX1BPSU5UX19PTUVHQV9SSUdIVCk7CisKKwkJdmVsb2NpdHlfQW5ndWxhckVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhWRUxPQ0lUWV9BTkdVTEFSKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZSh2ZWxvY2l0eV9Bbmd1bGFyRUNsYXNzLCBWRUxPQ0lUWV9BTkdVTEFSX19WQUxVRSk7CisKKwkJZGlzdGFuY2VFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoRElTVEFOQ0UpOworCQljcmVhdGVFQXR0cmlidXRlKGRpc3RhbmNlRUNsYXNzLCBESVNUQU5DRV9fVkFMVUUpOworCisJCW1ldHJpY0VDbGFzcyA9IGNyZWF0ZUVDbGFzcyhNRVRSSUMpOworCQljcmVhdGVFQXR0cmlidXRlKG1ldHJpY0VDbGFzcywgTUVUUklDX19WQUxVRSk7CisKKwkJYW5ndWxhckVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhBTkdVTEFSKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShhbmd1bGFyRUNsYXNzLCBBTkdVTEFSX19WQUxVRSk7CisKKwkJb3BfU2V0X1BvaW50RUNsYXNzID0gY3JlYXRlRUNsYXNzKE9QX1NFVF9QT0lOVCk7CisJCWNyZWF0ZUVSZWZlcmVuY2Uob3BfU2V0X1BvaW50RUNsYXNzLCBPUF9TRVRfUE9JTlRfX1ZFTE9DSVRZKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShvcF9TZXRfUG9pbnRFQ2xhc3MsIE9QX1NFVF9QT0lOVF9fT1JJRU5UQVRJT04pOworCisJCXNwZWVkX1RpY3NfTGVmdF9SaWdodEVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhTUEVFRF9USUNTX0xFRlRfUklHSFQpOworCQljcmVhdGVFUmVmZXJlbmNlKHNwZWVkX1RpY3NfTGVmdF9SaWdodEVDbGFzcywgU1BFRURfVElDU19MRUZUX1JJR0hUX19TUEVFRF9USUNTX0xFRlQpOworCQljcmVhdGVFUmVmZXJlbmNlKHNwZWVkX1RpY3NfTGVmdF9SaWdodEVDbGFzcywgU1BFRURfVElDU19MRUZUX1JJR0hUX19TUEVFRF9USUNTX1JJR0hUKTsKKworCQlzcGVlZF9UaWNzRUNsYXNzID0gY3JlYXRlRUNsYXNzKFNQRUVEX1RJQ1MpOworCQljcmVhdGVFQXR0cmlidXRlKHNwZWVkX1RpY3NFQ2xhc3MsIFNQRUVEX1RJQ1NfX1ZBTFVFKTsKKworCQlvZG9tZXRlcl9UaWNzRUNsYXNzID0gY3JlYXRlRUNsYXNzKE9ET01FVEVSX1RJQ1MpOworCQljcmVhdGVFQXR0cmlidXRlKG9kb21ldGVyX1RpY3NFQ2xhc3MsIE9ET01FVEVSX1RJQ1NfX1ZBTFVFKTsKKworCQlvZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHRFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoT0RPTUVURVJfVElDU19MRUZUX1JJR0hUKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShvZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHRFQ2xhc3MsIE9ET01FVEVSX1RJQ1NfTEVGVF9SSUdIVF9fT0RPTUVURVJfVElDU19MRUZUKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShvZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHRFQ2xhc3MsIE9ET01FVEVSX1RJQ1NfTEVGVF9SSUdIVF9fT0RPTUVURVJfVElDU19SSUdIVCk7CisKKwkJcHJveGlfTGVmdF9SaWdodEVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhQUk9YSV9MRUZUX1JJR0hUKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShwcm94aV9MZWZ0X1JpZ2h0RUNsYXNzLCBQUk9YSV9MRUZUX1JJR0hUX19QUk9YSV9MRUZUKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShwcm94aV9MZWZ0X1JpZ2h0RUNsYXNzLCBQUk9YSV9MRUZUX1JJR0hUX19QUk9YSV9SSUdIVCk7CisKKwkJbWlsbGlfQW1wRUNsYXNzID0gY3JlYXRlRUNsYXNzKE1JTExJX0FNUCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUobWlsbGlfQW1wRUNsYXNzLCBNSUxMSV9BTVBfX1ZBTFVFKTsKKworCQlvZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodEVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhPRE9NRVRFUl9MSU5FQVJfTEVGVF9SSUdIVCk7CisJCWNyZWF0ZUVSZWZlcmVuY2Uob2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHRFQ2xhc3MsIE9ET01FVEVSX0xJTkVBUl9MRUZUX1JJR0hUX19PRE9NRVRFUl9MSU5FQVJfTEVGVCk7CisJCWNyZWF0ZUVSZWZlcmVuY2Uob2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHRFQ2xhc3MsIE9ET01FVEVSX0xJTkVBUl9MRUZUX1JJR0hUX19PRE9NRVRFUl9MSU5FQVJfUklHSFQpOworCisJCXZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodEVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhWRUxPQ0lUWV9BTkdVTEFSX0xFRlRfUklHSFQpOworCQljcmVhdGVFUmVmZXJlbmNlKHZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodEVDbGFzcywgVkVMT0NJVFlfQU5HVUxBUl9MRUZUX1JJR0hUX19WRUxPQ0lUWV9BTkdVTEFSX0xFRlQpOworCQljcmVhdGVFUmVmZXJlbmNlKHZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodEVDbGFzcywgVkVMT0NJVFlfQU5HVUxBUl9MRUZUX1JJR0hUX19WRUxPQ0lUWV9BTkdVTEFSX1JJR0hUKTsKKworCQl2ZWxvY2l0eUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhWRUxPQ0lUWSk7CisJCWNyZWF0ZUVSZWZlcmVuY2UodmVsb2NpdHlFQ2xhc3MsIFZFTE9DSVRZX19WRUxPQ0lUWV9MSU5FQVIpOworCQljcmVhdGVFUmVmZXJlbmNlKHZlbG9jaXR5RUNsYXNzLCBWRUxPQ0lUWV9fVkVMT0NJVFlfQU5HVUxBUik7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBib29sZWFuIGlzSW5pdGlhbGl6ZWQgPSBmYWxzZTsKKworCS8qKgorCSAqIENvbXBsZXRlIHRoZSBpbml0aWFsaXphdGlvbiBvZiB0aGUgcGFja2FnZSBhbmQgaXRzIG1ldGEtbW9kZWwuICBUaGlzCisJICogbWV0aG9kIGlzIGd1YXJkZWQgdG8gaGF2ZSBubyBhZmZlY3Qgb24gYW55IGludm9jYXRpb24gYnV0IGl0cyBmaXJzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBpbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCkgeworCQlpZiAoaXNJbml0aWFsaXplZCkgcmV0dXJuOworCQlpc0luaXRpYWxpemVkID0gdHJ1ZTsKKworCQkvLyBJbml0aWFsaXplIHBhY2thZ2UKKwkJc2V0TmFtZShlTkFNRSk7CisJCXNldE5zUHJlZml4KGVOU19QUkVGSVgpOworCQlzZXROc1VSSShlTlNfVVJJKTsKKworCQkvLyBPYnRhaW4gb3RoZXIgZGVwZW5kZW50IHBhY2thZ2VzCisJCVN0ZF9kYXRhdHlwZXNQYWNrYWdlIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlID0gKFN0ZF9kYXRhdHlwZXNQYWNrYWdlKUVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKFN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpOworCisJCS8vIENyZWF0ZSB0eXBlIHBhcmFtZXRlcnMKKworCQkvLyBTZXQgYm91bmRzIGZvciB0eXBlIHBhcmFtZXRlcnMKKworCQkvLyBBZGQgc3VwZXJ0eXBlcyB0byBjbGFzc2VzCisKKwkJLy8gSW5pdGlhbGl6ZSBjbGFzc2VzLCBmZWF0dXJlcywgYW5kIG9wZXJhdGlvbnM7IGFkZCBwYXJhbWV0ZXJzCisJCWluaXRFQ2xhc3ModmVsb2NpdHlfTGluZWFyRUNsYXNzLCBWZWxvY2l0eV9MaW5lYXIuY2xhc3MsICJWZWxvY2l0eV9MaW5lYXIiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFQXR0cmlidXRlKGdldFZlbG9jaXR5X0xpbmVhcl9WYWx1ZSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRJbnQzMigpLCAidmFsdWUiLCBudWxsLCAxLCAxLCBWZWxvY2l0eV9MaW5lYXIuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgIUlTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKGFydF9TZXRfUG9pbnRFQ2xhc3MsIEFydF9TZXRfUG9pbnQuY2xhc3MsICJBcnRfU2V0X1BvaW50IiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXRBcnRfU2V0X1BvaW50X09tZWdhX2xlZnQoKSwgdGhpcy5nZXRWZWxvY2l0eV9Bbmd1bGFyKCksIG51bGwsICJvbWVnYV9sZWZ0IiwgbnVsbCwgMSwgMSwgQXJ0X1NldF9Qb2ludC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCAhSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RVJlZmVyZW5jZShnZXRBcnRfU2V0X1BvaW50X09tZWdhX3JpZ2h0KCksIHRoaXMuZ2V0VmVsb2NpdHlfQW5ndWxhcigpLCBudWxsLCAib21lZ2FfcmlnaHQiLCBudWxsLCAxLCAxLCBBcnRfU2V0X1BvaW50LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKHZlbG9jaXR5X0FuZ3VsYXJFQ2xhc3MsIFZlbG9jaXR5X0FuZ3VsYXIuY2xhc3MsICJWZWxvY2l0eV9Bbmd1bGFyIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RUF0dHJpYnV0ZShnZXRWZWxvY2l0eV9Bbmd1bGFyX1ZhbHVlKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0NjQoKSwgInZhbHVlIiwgbnVsbCwgMSwgMSwgVmVsb2NpdHlfQW5ndWxhci5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCAhSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3MoZGlzdGFuY2VFQ2xhc3MsIERpc3RhbmNlLmNsYXNzLCAiRGlzdGFuY2UiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFQXR0cmlidXRlKGdldERpc3RhbmNlX1ZhbHVlKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFVJbnQzMigpLCAidmFsdWUiLCBudWxsLCAxLCAxLCBEaXN0YW5jZS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCAhSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3MobWV0cmljRUNsYXNzLCBNZXRyaWMuY2xhc3MsICJNZXRyaWMiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFQXR0cmlidXRlKGdldE1ldHJpY19WYWx1ZSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDY0KCksICJ2YWx1ZSIsIG51bGwsIDEsIDEsIE1ldHJpYy5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCAhSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3MoYW5ndWxhckVDbGFzcywgQW5ndWxhci5jbGFzcywgIkFuZ3VsYXIiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFQXR0cmlidXRlKGdldEFuZ3VsYXJfVmFsdWUoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0VUludDMyKCksICJ2YWx1ZSIsIG51bGwsIDEsIDEsIEFuZ3VsYXIuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgIUlTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKG9wX1NldF9Qb2ludEVDbGFzcywgT3BfU2V0X1BvaW50LmNsYXNzLCAiT3BfU2V0X1BvaW50IiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXRPcF9TZXRfUG9pbnRfVmVsb2NpdHkoKSwgdGhpcy5nZXRWZWxvY2l0eV9MaW5lYXIoKSwgbnVsbCwgInZlbG9jaXR5IiwgbnVsbCwgMSwgMSwgT3BfU2V0X1BvaW50LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsICFJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFUmVmZXJlbmNlKGdldE9wX1NldF9Qb2ludF9PcmllbnRhdGlvbigpLCB0aGlzLmdldEFuZ3VsYXIoKSwgbnVsbCwgIm9yaWVudGF0aW9uIiwgbnVsbCwgMSwgMSwgT3BfU2V0X1BvaW50LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsICFJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhzcGVlZF9UaWNzX0xlZnRfUmlnaHRFQ2xhc3MsIFNwZWVkX1RpY3NfTGVmdF9SaWdodC5jbGFzcywgIlNwZWVkX1RpY3NfTGVmdF9SaWdodCIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0U3BlZWRfVGljc19MZWZ0X1JpZ2h0X1NwZWVkX3RpY3NfbGVmdCgpLCB0aGlzLmdldFNwZWVkX1RpY3MoKSwgbnVsbCwgInNwZWVkX3RpY3NfbGVmdCIsIG51bGwsIDEsIDEsIFNwZWVkX1RpY3NfTGVmdF9SaWdodC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCAhSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RVJlZmVyZW5jZShnZXRTcGVlZF9UaWNzX0xlZnRfUmlnaHRfU3BlZWRfdGljc19yaWdodCgpLCB0aGlzLmdldFNwZWVkX1RpY3MoKSwgbnVsbCwgInNwZWVkX3RpY3NfcmlnaHQiLCBudWxsLCAxLCAxLCBTcGVlZF9UaWNzX0xlZnRfUmlnaHQuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgIUlTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKHNwZWVkX1RpY3NFQ2xhc3MsIFNwZWVkX1RpY3MuY2xhc3MsICJTcGVlZF9UaWNzIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RUF0dHJpYnV0ZShnZXRTcGVlZF9UaWNzX1ZhbHVlKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEludDMyKCksICJ2YWx1ZSIsIG51bGwsIDEsIDEsIFNwZWVkX1RpY3MuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgIUlTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKG9kb21ldGVyX1RpY3NFQ2xhc3MsIE9kb21ldGVyX1RpY3MuY2xhc3MsICJPZG9tZXRlcl9UaWNzIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RUF0dHJpYnV0ZShnZXRPZG9tZXRlcl9UaWNzX1ZhbHVlKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEludDMyKCksICJ2YWx1ZSIsIG51bGwsIDEsIDEsIE9kb21ldGVyX1RpY3MuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgIUlTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKG9kb21ldGVyX1RpY3NfTGVmdF9SaWdodEVDbGFzcywgT2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0LmNsYXNzLCAiT2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0IiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXRPZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHRfT2RvbWV0ZXJfdGljc19sZWZ0KCksIHRoaXMuZ2V0T2RvbWV0ZXJfVGljcygpLCBudWxsLCAib2RvbWV0ZXJfdGljc19sZWZ0IiwgbnVsbCwgMSwgMSwgT2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsICFJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFUmVmZXJlbmNlKGdldE9kb21ldGVyX1RpY3NfTGVmdF9SaWdodF9PZG9tZXRlcl90aWNzX3JpZ2h0KCksIHRoaXMuZ2V0T2RvbWV0ZXJfVGljcygpLCBudWxsLCAib2RvbWV0ZXJfdGljc19yaWdodCIsIG51bGwsIDEsIDEsIE9kb21ldGVyX1RpY3NfTGVmdF9SaWdodC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCAhSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3MocHJveGlfTGVmdF9SaWdodEVDbGFzcywgUHJveGlfTGVmdF9SaWdodC5jbGFzcywgIlByb3hpX0xlZnRfUmlnaHQiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFUmVmZXJlbmNlKGdldFByb3hpX0xlZnRfUmlnaHRfUHJveGlfbGVmdCgpLCB0aGlzLmdldERpc3RhbmNlKCksIG51bGwsICJwcm94aV9sZWZ0IiwgbnVsbCwgMSwgMSwgUHJveGlfTGVmdF9SaWdodC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCAhSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RVJlZmVyZW5jZShnZXRQcm94aV9MZWZ0X1JpZ2h0X1Byb3hpX3JpZ2h0KCksIHRoaXMuZ2V0RGlzdGFuY2UoKSwgbnVsbCwgInByb3hpX3JpZ2h0IiwgbnVsbCwgMSwgMSwgUHJveGlfTGVmdF9SaWdodC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCAhSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3MobWlsbGlfQW1wRUNsYXNzLCBNaWxsaV9BbXAuY2xhc3MsICJNaWxsaV9BbXAiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFQXR0cmlidXRlKGdldE1pbGxpX0FtcF9WYWx1ZSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRVSW50MzIoKSwgInZhbHVlIiwgbnVsbCwgMSwgMSwgTWlsbGlfQW1wLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsICFJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhvZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodEVDbGFzcywgT2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHQuY2xhc3MsICJPZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodCIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0T2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHRfT2RvbWV0ZXJfbGluZWFyX2xlZnQoKSwgdGhpcy5nZXRNZXRyaWMoKSwgbnVsbCwgIm9kb21ldGVyX2xpbmVhcl9sZWZ0IiwgbnVsbCwgMSwgMSwgT2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHQuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgIUlTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0T2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHRfT2RvbWV0ZXJfbGluZWFyX3JpZ2h0KCksIHRoaXMuZ2V0TWV0cmljKCksIG51bGwsICJvZG9tZXRlcl9saW5lYXJfcmlnaHQiLCBudWxsLCAxLCAxLCBPZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCAhSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3ModmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0RUNsYXNzLCBWZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHQuY2xhc3MsICJWZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHQiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFUmVmZXJlbmNlKGdldFZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodF9WZWxvY2l0eV9hbmd1bGFyX2xlZnQoKSwgdGhpcy5nZXRWZWxvY2l0eV9Bbmd1bGFyKCksIG51bGwsICJ2ZWxvY2l0eV9hbmd1bGFyX2xlZnQiLCBudWxsLCAxLCAxLCBWZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHQuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgIUlTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0VmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0X1ZlbG9jaXR5X2FuZ3VsYXJfcmlnaHQoKSwgdGhpcy5nZXRWZWxvY2l0eV9Bbmd1bGFyKCksIG51bGwsICJ2ZWxvY2l0eV9hbmd1bGFyX3JpZ2h0IiwgbnVsbCwgMSwgMSwgVmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsICFJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyh2ZWxvY2l0eUVDbGFzcywgVmVsb2NpdHkuY2xhc3MsICJWZWxvY2l0eSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0VmVsb2NpdHlfVmVsb2NpdHlfbGluZWFyKCksIHRoaXMuZ2V0VmVsb2NpdHlfTGluZWFyKCksIG51bGwsICJ2ZWxvY2l0eV9saW5lYXIiLCBudWxsLCAxLCAxLCBWZWxvY2l0eS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCAhSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RVJlZmVyZW5jZShnZXRWZWxvY2l0eV9WZWxvY2l0eV9hbmd1bGFyKCksIHRoaXMuZ2V0VmVsb2NpdHlfQW5ndWxhcigpLCBudWxsLCAidmVsb2NpdHlfYW5ndWxhciIsIG51bGwsIDEsIDEsIFZlbG9jaXR5LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsICFJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJLy8gQ3JlYXRlIHJlc291cmNlCisJCWNyZWF0ZVJlc291cmNlKGVOU19VUkkpOworCX0KKworfSAvLyBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9pbXBsL09kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0SW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9pbXBsL09kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0SW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBlNjdmY2MKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL2ltcGwvT2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHRJbXBsLmphdmEKQEAgLTAsMCArMSwyMzkgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uQ2hhaW47CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5NZXRyaWM7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9kb21ldGVyIExpbmVhciBMZWZ0IFJpZ2h0PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk9kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0SW1wbCNnZXRPZG9tZXRlcl9saW5lYXJfbGVmdCA8ZW0+T2RvbWV0ZXIgbGluZWFyIGxlZnQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHRJbXBsI2dldE9kb21ldGVyX2xpbmVhcl9yaWdodCA8ZW0+T2RvbWV0ZXIgbGluZWFyIHJpZ2h0PC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgT2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHRJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIE9kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0IHsKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRPZG9tZXRlcl9saW5lYXJfbGVmdCgpIDxlbT5PZG9tZXRlciBsaW5lYXIgbGVmdDwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0T2RvbWV0ZXJfbGluZWFyX2xlZnQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBNZXRyaWMgb2RvbWV0ZXJfbGluZWFyX2xlZnQ7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRPZG9tZXRlcl9saW5lYXJfcmlnaHQoKSA8ZW0+T2RvbWV0ZXIgbGluZWFyIHJpZ2h0PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRPZG9tZXRlcl9saW5lYXJfcmlnaHQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBNZXRyaWMgb2RvbWV0ZXJfbGluZWFyX3JpZ2h0OworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIE9kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0SW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuT0RPTUVURVJfTElORUFSX0xFRlRfUklHSFQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE1ldHJpYyBnZXRPZG9tZXRlcl9saW5lYXJfbGVmdCgpIHsKKwkJcmV0dXJuIG9kb21ldGVyX2xpbmVhcl9sZWZ0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBiYXNpY1NldE9kb21ldGVyX2xpbmVhcl9sZWZ0KE1ldHJpYyBuZXdPZG9tZXRlcl9saW5lYXJfbGVmdCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlNZXRyaWMgb2xkT2RvbWV0ZXJfbGluZWFyX2xlZnQgPSBvZG9tZXRlcl9saW5lYXJfbGVmdDsKKwkJb2RvbWV0ZXJfbGluZWFyX2xlZnQgPSBuZXdPZG9tZXRlcl9saW5lYXJfbGVmdDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRFUl9MSU5FQVJfTEVGVF9SSUdIVF9fT0RPTUVURVJfTElORUFSX0xFRlQsIG9sZE9kb21ldGVyX2xpbmVhcl9sZWZ0LCBuZXdPZG9tZXRlcl9saW5lYXJfbGVmdCk7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0T2RvbWV0ZXJfbGluZWFyX2xlZnQoTWV0cmljIG5ld09kb21ldGVyX2xpbmVhcl9sZWZ0KSB7CisJCWlmIChuZXdPZG9tZXRlcl9saW5lYXJfbGVmdCAhPSBvZG9tZXRlcl9saW5lYXJfbGVmdCkgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAob2RvbWV0ZXJfbGluZWFyX2xlZnQgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3Qpb2RvbWV0ZXJfbGluZWFyX2xlZnQpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVEVSX0xJTkVBUl9MRUZUX1JJR0hUX19PRE9NRVRFUl9MSU5FQVJfTEVGVCwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3T2RvbWV0ZXJfbGluZWFyX2xlZnQgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3T2RvbWV0ZXJfbGluZWFyX2xlZnQpLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVEVSX0xJTkVBUl9MRUZUX1JJR0hUX19PRE9NRVRFUl9MSU5FQVJfTEVGVCwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRPZG9tZXRlcl9saW5lYXJfbGVmdChuZXdPZG9tZXRlcl9saW5lYXJfbGVmdCwgbXNncyk7CisJCQlpZiAobXNncyAhPSBudWxsKSBtc2dzLmRpc3BhdGNoKCk7CisJCX0KKwkJZWxzZSBpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVEVSX0xJTkVBUl9MRUZUX1JJR0hUX19PRE9NRVRFUl9MSU5FQVJfTEVGVCwgbmV3T2RvbWV0ZXJfbGluZWFyX2xlZnQsIG5ld09kb21ldGVyX2xpbmVhcl9sZWZ0KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE1ldHJpYyBnZXRPZG9tZXRlcl9saW5lYXJfcmlnaHQoKSB7CisJCXJldHVybiBvZG9tZXRlcl9saW5lYXJfcmlnaHQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0T2RvbWV0ZXJfbGluZWFyX3JpZ2h0KE1ldHJpYyBuZXdPZG9tZXRlcl9saW5lYXJfcmlnaHQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJTWV0cmljIG9sZE9kb21ldGVyX2xpbmVhcl9yaWdodCA9IG9kb21ldGVyX2xpbmVhcl9yaWdodDsKKwkJb2RvbWV0ZXJfbGluZWFyX3JpZ2h0ID0gbmV3T2RvbWV0ZXJfbGluZWFyX3JpZ2h0OworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpIHsKKwkJCUVOb3RpZmljYXRpb25JbXBsIG5vdGlmaWNhdGlvbiA9IG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVEVSX0xJTkVBUl9MRUZUX1JJR0hUX19PRE9NRVRFUl9MSU5FQVJfUklHSFQsIG9sZE9kb21ldGVyX2xpbmVhcl9yaWdodCwgbmV3T2RvbWV0ZXJfbGluZWFyX3JpZ2h0KTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRPZG9tZXRlcl9saW5lYXJfcmlnaHQoTWV0cmljIG5ld09kb21ldGVyX2xpbmVhcl9yaWdodCkgeworCQlpZiAobmV3T2RvbWV0ZXJfbGluZWFyX3JpZ2h0ICE9IG9kb21ldGVyX2xpbmVhcl9yaWdodCkgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAob2RvbWV0ZXJfbGluZWFyX3JpZ2h0ICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW9kb21ldGVyX2xpbmVhcl9yaWdodCkuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVURVJfTElORUFSX0xFRlRfUklHSFRfX09ET01FVEVSX0xJTkVBUl9SSUdIVCwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3T2RvbWV0ZXJfbGluZWFyX3JpZ2h0ICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld09kb21ldGVyX2xpbmVhcl9yaWdodCkuZUludmVyc2VBZGQodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVURVJfTElORUFSX0xFRlRfUklHSFRfX09ET01FVEVSX0xJTkVBUl9SSUdIVCwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRPZG9tZXRlcl9saW5lYXJfcmlnaHQobmV3T2RvbWV0ZXJfbGluZWFyX3JpZ2h0LCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVURVJfTElORUFSX0xFRlRfUklHSFRfX09ET01FVEVSX0xJTkVBUl9SSUdIVCwgbmV3T2RvbWV0ZXJfbGluZWFyX3JpZ2h0LCBuZXdPZG9tZXRlcl9saW5lYXJfcmlnaHQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gZUludmVyc2VSZW1vdmUoSW50ZXJuYWxFT2JqZWN0IG90aGVyRW5kLCBpbnQgZmVhdHVyZUlELCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVURVJfTElORUFSX0xFRlRfUklHSFRfX09ET01FVEVSX0xJTkVBUl9MRUZUOgorCQkJCXJldHVybiBiYXNpY1NldE9kb21ldGVyX2xpbmVhcl9sZWZ0KG51bGwsIG1zZ3MpOworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVEVSX0xJTkVBUl9MRUZUX1JJR0hUX19PRE9NRVRFUl9MSU5FQVJfUklHSFQ6CisJCQkJcmV0dXJuIGJhc2ljU2V0T2RvbWV0ZXJfbGluZWFyX3JpZ2h0KG51bGwsIG1zZ3MpOworCQl9CisJCXJldHVybiBzdXBlci5lSW52ZXJzZVJlbW92ZShvdGhlckVuZCwgZmVhdHVyZUlELCBtc2dzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVURVJfTElORUFSX0xFRlRfUklHSFRfX09ET01FVEVSX0xJTkVBUl9MRUZUOgorCQkJCXJldHVybiBnZXRPZG9tZXRlcl9saW5lYXJfbGVmdCgpOworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVEVSX0xJTkVBUl9MRUZUX1JJR0hUX19PRE9NRVRFUl9MSU5FQVJfUklHSFQ6CisJCQkJcmV0dXJuIGdldE9kb21ldGVyX2xpbmVhcl9yaWdodCgpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVURVJfTElORUFSX0xFRlRfUklHSFRfX09ET01FVEVSX0xJTkVBUl9MRUZUOgorCQkJCXNldE9kb21ldGVyX2xpbmVhcl9sZWZ0KChNZXRyaWMpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRFUl9MSU5FQVJfTEVGVF9SSUdIVF9fT0RPTUVURVJfTElORUFSX1JJR0hUOgorCQkJCXNldE9kb21ldGVyX2xpbmVhcl9yaWdodCgoTWV0cmljKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVEVSX0xJTkVBUl9MRUZUX1JJR0hUX19PRE9NRVRFUl9MSU5FQVJfTEVGVDoKKwkJCQlzZXRPZG9tZXRlcl9saW5lYXJfbGVmdCgoTWV0cmljKW51bGwpOworCQkJCXJldHVybjsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRFUl9MSU5FQVJfTEVGVF9SSUdIVF9fT0RPTUVURVJfTElORUFSX1JJR0hUOgorCQkJCXNldE9kb21ldGVyX2xpbmVhcl9yaWdodCgoTWV0cmljKW51bGwpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVEVSX0xJTkVBUl9MRUZUX1JJR0hUX19PRE9NRVRFUl9MSU5FQVJfTEVGVDoKKwkJCQlyZXR1cm4gb2RvbWV0ZXJfbGluZWFyX2xlZnQgIT0gbnVsbDsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRFUl9MSU5FQVJfTEVGVF9SSUdIVF9fT0RPTUVURVJfTElORUFSX1JJR0hUOgorCQkJCXJldHVybiBvZG9tZXRlcl9saW5lYXJfcmlnaHQgIT0gbnVsbDsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCit9IC8vIE9kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0SW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9pbXBsL09kb21ldGVyX1RpY3NJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL2ltcGwvT2RvbWV0ZXJfVGljc0ltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41ZGM5MTYwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9pbXBsL09kb21ldGVyX1RpY3NJbXBsLmphdmEKQEAgLTAsMCArMSwxNjAgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PZG9tZXRlcl9UaWNzOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T2RvbWV0ZXIgVGljczwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5PZG9tZXRlcl9UaWNzSW1wbCNnZXRWYWx1ZSA8ZW0+VmFsdWU8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBPZG9tZXRlcl9UaWNzSW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBPZG9tZXRlcl9UaWNzIHsKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0VmFsdWUoKSA8ZW0+VmFsdWU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFZhbHVlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBWQUxVRV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRWYWx1ZSgpIDxlbT5WYWx1ZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VmFsdWUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgdmFsdWUgPSBWQUxVRV9FREVGQVVMVDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBPZG9tZXRlcl9UaWNzSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuT0RPTUVURVJfVElDUzsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFZhbHVlKCkgeworCQlyZXR1cm4gdmFsdWU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0VmFsdWUoT2JqZWN0IG5ld1ZhbHVlKSB7CisJCU9iamVjdCBvbGRWYWx1ZSA9IHZhbHVlOworCQl2YWx1ZSA9IG5ld1ZhbHVlOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVEVSX1RJQ1NfX1ZBTFVFLCBvbGRWYWx1ZSwgdmFsdWUpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVURVJfVElDU19fVkFMVUU6CisJCQkJcmV0dXJuIGdldFZhbHVlKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRFUl9USUNTX19WQUxVRToKKwkJCQlzZXRWYWx1ZSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVEVSX1RJQ1NfX1ZBTFVFOgorCQkJCXNldFZhbHVlKFZBTFVFX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRFUl9USUNTX19WQUxVRToKKwkJCQlyZXR1cm4gVkFMVUVfRURFRkFVTFQgPT0gbnVsbCA/IHZhbHVlICE9IG51bGwgOiAhVkFMVUVfRURFRkFVTFQuZXF1YWxzKHZhbHVlKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJaWYgKGVJc1Byb3h5KCkpIHJldHVybiBzdXBlci50b1N0cmluZygpOworCisJCVN0cmluZ0J1ZmZlciByZXN1bHQgPSBuZXcgU3RyaW5nQnVmZmVyKHN1cGVyLnRvU3RyaW5nKCkpOworCQlyZXN1bHQuYXBwZW5kKCIgKHZhbHVlOiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh2YWx1ZSk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBPZG9tZXRlcl9UaWNzSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9pbXBsL09kb21ldGVyX1RpY3NfTGVmdF9SaWdodEltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvaW1wbC9PZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHRJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjgyMGM3MQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvaW1wbC9PZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHRJbXBsLmphdmEKQEAgLTAsMCArMSwyMzkgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uQ2hhaW47CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9kb21ldGVyX1RpY3M7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+T2RvbWV0ZXIgVGljcyBMZWZ0IFJpZ2h0PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLk9kb21ldGVyX1RpY3NfTGVmdF9SaWdodEltcGwjZ2V0T2RvbWV0ZXJfdGljc19sZWZ0IDxlbT5PZG9tZXRlciB0aWNzIGxlZnQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0SW1wbCNnZXRPZG9tZXRlcl90aWNzX3JpZ2h0IDxlbT5PZG9tZXRlciB0aWNzIHJpZ2h0PC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgT2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0SW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBPZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHQgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldE9kb21ldGVyX3RpY3NfbGVmdCgpIDxlbT5PZG9tZXRlciB0aWNzIGxlZnQ8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldE9kb21ldGVyX3RpY3NfbGVmdCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9kb21ldGVyX1RpY3Mgb2RvbWV0ZXJfdGljc19sZWZ0OworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0T2RvbWV0ZXJfdGljc19yaWdodCgpIDxlbT5PZG9tZXRlciB0aWNzIHJpZ2h0PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRPZG9tZXRlcl90aWNzX3JpZ2h0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2RvbWV0ZXJfVGljcyBvZG9tZXRlcl90aWNzX3JpZ2h0OworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIE9kb21ldGVyX1RpY3NfTGVmdF9SaWdodEltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLk9ET01FVEVSX1RJQ1NfTEVGVF9SSUdIVDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2RvbWV0ZXJfVGljcyBnZXRPZG9tZXRlcl90aWNzX2xlZnQoKSB7CisJCXJldHVybiBvZG9tZXRlcl90aWNzX2xlZnQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0T2RvbWV0ZXJfdGljc19sZWZ0KE9kb21ldGVyX1RpY3MgbmV3T2RvbWV0ZXJfdGljc19sZWZ0LCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCU9kb21ldGVyX1RpY3Mgb2xkT2RvbWV0ZXJfdGljc19sZWZ0ID0gb2RvbWV0ZXJfdGljc19sZWZ0OworCQlvZG9tZXRlcl90aWNzX2xlZnQgPSBuZXdPZG9tZXRlcl90aWNzX2xlZnQ7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVURVJfVElDU19MRUZUX1JJR0hUX19PRE9NRVRFUl9USUNTX0xFRlQsIG9sZE9kb21ldGVyX3RpY3NfbGVmdCwgbmV3T2RvbWV0ZXJfdGljc19sZWZ0KTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRPZG9tZXRlcl90aWNzX2xlZnQoT2RvbWV0ZXJfVGljcyBuZXdPZG9tZXRlcl90aWNzX2xlZnQpIHsKKwkJaWYgKG5ld09kb21ldGVyX3RpY3NfbGVmdCAhPSBvZG9tZXRlcl90aWNzX2xlZnQpIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKG9kb21ldGVyX3RpY3NfbGVmdCAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdClvZG9tZXRlcl90aWNzX2xlZnQpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVEVSX1RJQ1NfTEVGVF9SSUdIVF9fT0RPTUVURVJfVElDU19MRUZULCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdPZG9tZXRlcl90aWNzX2xlZnQgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3T2RvbWV0ZXJfdGljc19sZWZ0KS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gT2FycDRfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRFUl9USUNTX0xFRlRfUklHSFRfX09ET01FVEVSX1RJQ1NfTEVGVCwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRPZG9tZXRlcl90aWNzX2xlZnQobmV3T2RvbWV0ZXJfdGljc19sZWZ0LCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVURVJfVElDU19MRUZUX1JJR0hUX19PRE9NRVRFUl9USUNTX0xFRlQsIG5ld09kb21ldGVyX3RpY3NfbGVmdCwgbmV3T2RvbWV0ZXJfdGljc19sZWZ0KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9kb21ldGVyX1RpY3MgZ2V0T2RvbWV0ZXJfdGljc19yaWdodCgpIHsKKwkJcmV0dXJuIG9kb21ldGVyX3RpY3NfcmlnaHQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0T2RvbWV0ZXJfdGljc19yaWdodChPZG9tZXRlcl9UaWNzIG5ld09kb21ldGVyX3RpY3NfcmlnaHQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJT2RvbWV0ZXJfVGljcyBvbGRPZG9tZXRlcl90aWNzX3JpZ2h0ID0gb2RvbWV0ZXJfdGljc19yaWdodDsKKwkJb2RvbWV0ZXJfdGljc19yaWdodCA9IG5ld09kb21ldGVyX3RpY3NfcmlnaHQ7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVURVJfVElDU19MRUZUX1JJR0hUX19PRE9NRVRFUl9USUNTX1JJR0hULCBvbGRPZG9tZXRlcl90aWNzX3JpZ2h0LCBuZXdPZG9tZXRlcl90aWNzX3JpZ2h0KTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRPZG9tZXRlcl90aWNzX3JpZ2h0KE9kb21ldGVyX1RpY3MgbmV3T2RvbWV0ZXJfdGljc19yaWdodCkgeworCQlpZiAobmV3T2RvbWV0ZXJfdGljc19yaWdodCAhPSBvZG9tZXRlcl90aWNzX3JpZ2h0KSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChvZG9tZXRlcl90aWNzX3JpZ2h0ICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW9kb21ldGVyX3RpY3NfcmlnaHQpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVEVSX1RJQ1NfTEVGVF9SSUdIVF9fT0RPTUVURVJfVElDU19SSUdIVCwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3T2RvbWV0ZXJfdGljc19yaWdodCAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdPZG9tZXRlcl90aWNzX3JpZ2h0KS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gT2FycDRfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRFUl9USUNTX0xFRlRfUklHSFRfX09ET01FVEVSX1RJQ1NfUklHSFQsIG51bGwsIG1zZ3MpOworCQkJbXNncyA9IGJhc2ljU2V0T2RvbWV0ZXJfdGljc19yaWdodChuZXdPZG9tZXRlcl90aWNzX3JpZ2h0LCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVURVJfVElDU19MRUZUX1JJR0hUX19PRE9NRVRFUl9USUNTX1JJR0hULCBuZXdPZG9tZXRlcl90aWNzX3JpZ2h0LCBuZXdPZG9tZXRlcl90aWNzX3JpZ2h0KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGVJbnZlcnNlUmVtb3ZlKEludGVybmFsRU9iamVjdCBvdGhlckVuZCwgaW50IGZlYXR1cmVJRCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVEVSX1RJQ1NfTEVGVF9SSUdIVF9fT0RPTUVURVJfVElDU19MRUZUOgorCQkJCXJldHVybiBiYXNpY1NldE9kb21ldGVyX3RpY3NfbGVmdChudWxsLCBtc2dzKTsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRFUl9USUNTX0xFRlRfUklHSFRfX09ET01FVEVSX1RJQ1NfUklHSFQ6CisJCQkJcmV0dXJuIGJhc2ljU2V0T2RvbWV0ZXJfdGljc19yaWdodChudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVEVSX1RJQ1NfTEVGVF9SSUdIVF9fT0RPTUVURVJfVElDU19MRUZUOgorCQkJCXJldHVybiBnZXRPZG9tZXRlcl90aWNzX2xlZnQoKTsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5PRE9NRVRFUl9USUNTX0xFRlRfUklHSFRfX09ET01FVEVSX1RJQ1NfUklHSFQ6CisJCQkJcmV0dXJuIGdldE9kb21ldGVyX3RpY3NfcmlnaHQoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVEVSX1RJQ1NfTEVGVF9SSUdIVF9fT0RPTUVURVJfVElDU19MRUZUOgorCQkJCXNldE9kb21ldGVyX3RpY3NfbGVmdCgoT2RvbWV0ZXJfVGljcyluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVEVSX1RJQ1NfTEVGVF9SSUdIVF9fT0RPTUVURVJfVElDU19SSUdIVDoKKwkJCQlzZXRPZG9tZXRlcl90aWNzX3JpZ2h0KChPZG9tZXRlcl9UaWNzKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVEVSX1RJQ1NfTEVGVF9SSUdIVF9fT0RPTUVURVJfVElDU19MRUZUOgorCQkJCXNldE9kb21ldGVyX3RpY3NfbGVmdCgoT2RvbWV0ZXJfVGljcyludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVURVJfVElDU19MRUZUX1JJR0hUX19PRE9NRVRFUl9USUNTX1JJR0hUOgorCQkJCXNldE9kb21ldGVyX3RpY3NfcmlnaHQoKE9kb21ldGVyX1RpY3MpbnVsbCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVURVJfVElDU19MRUZUX1JJR0hUX19PRE9NRVRFUl9USUNTX0xFRlQ6CisJCQkJcmV0dXJuIG9kb21ldGVyX3RpY3NfbGVmdCAhPSBudWxsOworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk9ET01FVEVSX1RJQ1NfTEVGVF9SSUdIVF9fT0RPTUVURVJfVElDU19SSUdIVDoKKwkJCQlyZXR1cm4gb2RvbWV0ZXJfdGljc19yaWdodCAhPSBudWxsOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKK30gLy8gT2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0SW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9pbXBsL09wX1NldF9Qb2ludEltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvaW1wbC9PcF9TZXRfUG9pbnRJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzhmNTIxMQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvaW1wbC9PcF9TZXRfUG9pbnRJbXBsLmphdmEKQEAgLTAsMCArMSwyNDAgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uQ2hhaW47CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5Bbmd1bGFyOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT3BfU2V0X1BvaW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5X0xpbmVhcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk9wIFNldCBQb2ludDwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5PcF9TZXRfUG9pbnRJbXBsI2dldFZlbG9jaXR5IDxlbT5WZWxvY2l0eTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5PcF9TZXRfUG9pbnRJbXBsI2dldE9yaWVudGF0aW9uIDxlbT5PcmllbnRhdGlvbjwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIE9wX1NldF9Qb2ludEltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgT3BfU2V0X1BvaW50IHsKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRWZWxvY2l0eSgpIDxlbT5WZWxvY2l0eTwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VmVsb2NpdHkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBWZWxvY2l0eV9MaW5lYXIgdmVsb2NpdHk7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRPcmllbnRhdGlvbigpIDxlbT5PcmllbnRhdGlvbjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0T3JpZW50YXRpb24oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBBbmd1bGFyIG9yaWVudGF0aW9uOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIE9wX1NldF9Qb2ludEltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLk9QX1NFVF9QT0lOVDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVmVsb2NpdHlfTGluZWFyIGdldFZlbG9jaXR5KCkgeworCQlyZXR1cm4gdmVsb2NpdHk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0VmVsb2NpdHkoVmVsb2NpdHlfTGluZWFyIG5ld1ZlbG9jaXR5LCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCVZlbG9jaXR5X0xpbmVhciBvbGRWZWxvY2l0eSA9IHZlbG9jaXR5OworCQl2ZWxvY2l0eSA9IG5ld1ZlbG9jaXR5OworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpIHsKKwkJCUVOb3RpZmljYXRpb25JbXBsIG5vdGlmaWNhdGlvbiA9IG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk9QX1NFVF9QT0lOVF9fVkVMT0NJVFksIG9sZFZlbG9jaXR5LCBuZXdWZWxvY2l0eSk7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0VmVsb2NpdHkoVmVsb2NpdHlfTGluZWFyIG5ld1ZlbG9jaXR5KSB7CisJCWlmIChuZXdWZWxvY2l0eSAhPSB2ZWxvY2l0eSkgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAodmVsb2NpdHkgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpdmVsb2NpdHkpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk9QX1NFVF9QT0lOVF9fVkVMT0NJVFksIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld1ZlbG9jaXR5ICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld1ZlbG9jaXR5KS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gT2FycDRfZGF0YXR5cGVzUGFja2FnZS5PUF9TRVRfUE9JTlRfX1ZFTE9DSVRZLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldFZlbG9jaXR5KG5ld1ZlbG9jaXR5LCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT1BfU0VUX1BPSU5UX19WRUxPQ0lUWSwgbmV3VmVsb2NpdHksIG5ld1ZlbG9jaXR5KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFuZ3VsYXIgZ2V0T3JpZW50YXRpb24oKSB7CisJCXJldHVybiBvcmllbnRhdGlvbjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRPcmllbnRhdGlvbihBbmd1bGFyIG5ld09yaWVudGF0aW9uLCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCUFuZ3VsYXIgb2xkT3JpZW50YXRpb24gPSBvcmllbnRhdGlvbjsKKwkJb3JpZW50YXRpb24gPSBuZXdPcmllbnRhdGlvbjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5PUF9TRVRfUE9JTlRfX09SSUVOVEFUSU9OLCBvbGRPcmllbnRhdGlvbiwgbmV3T3JpZW50YXRpb24pOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldE9yaWVudGF0aW9uKEFuZ3VsYXIgbmV3T3JpZW50YXRpb24pIHsKKwkJaWYgKG5ld09yaWVudGF0aW9uICE9IG9yaWVudGF0aW9uKSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChvcmllbnRhdGlvbiAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdClvcmllbnRhdGlvbikuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT1BfU0VUX1BPSU5UX19PUklFTlRBVElPTiwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3T3JpZW50YXRpb24gIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3T3JpZW50YXRpb24pLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk9QX1NFVF9QT0lOVF9fT1JJRU5UQVRJT04sIG51bGwsIG1zZ3MpOworCQkJbXNncyA9IGJhc2ljU2V0T3JpZW50YXRpb24obmV3T3JpZW50YXRpb24sIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5PUF9TRVRfUE9JTlRfX09SSUVOVEFUSU9OLCBuZXdPcmllbnRhdGlvbiwgbmV3T3JpZW50YXRpb24pKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gZUludmVyc2VSZW1vdmUoSW50ZXJuYWxFT2JqZWN0IG90aGVyRW5kLCBpbnQgZmVhdHVyZUlELCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT1BfU0VUX1BPSU5UX19WRUxPQ0lUWToKKwkJCQlyZXR1cm4gYmFzaWNTZXRWZWxvY2l0eShudWxsLCBtc2dzKTsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5PUF9TRVRfUE9JTlRfX09SSUVOVEFUSU9OOgorCQkJCXJldHVybiBiYXNpY1NldE9yaWVudGF0aW9uKG51bGwsIG1zZ3MpOworCQl9CisJCXJldHVybiBzdXBlci5lSW52ZXJzZVJlbW92ZShvdGhlckVuZCwgZmVhdHVyZUlELCBtc2dzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT1BfU0VUX1BPSU5UX19WRUxPQ0lUWToKKwkJCQlyZXR1cm4gZ2V0VmVsb2NpdHkoKTsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5PUF9TRVRfUE9JTlRfX09SSUVOVEFUSU9OOgorCQkJCXJldHVybiBnZXRPcmllbnRhdGlvbigpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT1BfU0VUX1BPSU5UX19WRUxPQ0lUWToKKwkJCQlzZXRWZWxvY2l0eSgoVmVsb2NpdHlfTGluZWFyKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT1BfU0VUX1BPSU5UX19PUklFTlRBVElPTjoKKwkJCQlzZXRPcmllbnRhdGlvbigoQW5ndWxhciluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5PUF9TRVRfUE9JTlRfX1ZFTE9DSVRZOgorCQkJCXNldFZlbG9jaXR5KChWZWxvY2l0eV9MaW5lYXIpbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLk9QX1NFVF9QT0lOVF9fT1JJRU5UQVRJT046CisJCQkJc2V0T3JpZW50YXRpb24oKEFuZ3VsYXIpbnVsbCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT1BfU0VUX1BPSU5UX19WRUxPQ0lUWToKKwkJCQlyZXR1cm4gdmVsb2NpdHkgIT0gbnVsbDsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5PUF9TRVRfUE9JTlRfX09SSUVOVEFUSU9OOgorCQkJCXJldHVybiBvcmllbnRhdGlvbiAhPSBudWxsOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKK30gLy8gT3BfU2V0X1BvaW50SW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9pbXBsL1Byb3hpX0xlZnRfUmlnaHRJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL2ltcGwvUHJveGlfTGVmdF9SaWdodEltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wYjA1ZTI4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9pbXBsL1Byb3hpX0xlZnRfUmlnaHRJbXBsLmphdmEKQEAgLTAsMCArMSwyMzkgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uQ2hhaW47CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5EaXN0YW5jZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlByb3hpX0xlZnRfUmlnaHQ7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Qcm94aSBMZWZ0IFJpZ2h0PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLlByb3hpX0xlZnRfUmlnaHRJbXBsI2dldFByb3hpX2xlZnQgPGVtPlByb3hpIGxlZnQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuUHJveGlfTGVmdF9SaWdodEltcGwjZ2V0UHJveGlfcmlnaHQgPGVtPlByb3hpIHJpZ2h0PC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgUHJveGlfTGVmdF9SaWdodEltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgUHJveGlfTGVmdF9SaWdodCB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0UHJveGlfbGVmdCgpIDxlbT5Qcm94aSBsZWZ0PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRQcm94aV9sZWZ0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRGlzdGFuY2UgcHJveGlfbGVmdDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFByb3hpX3JpZ2h0KCkgPGVtPlByb3hpIHJpZ2h0PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRQcm94aV9yaWdodCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIERpc3RhbmNlIHByb3hpX3JpZ2h0OworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFByb3hpX0xlZnRfUmlnaHRJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gT2FycDRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5QUk9YSV9MRUZUX1JJR0hUOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBEaXN0YW5jZSBnZXRQcm94aV9sZWZ0KCkgeworCQlyZXR1cm4gcHJveGlfbGVmdDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRQcm94aV9sZWZ0KERpc3RhbmNlIG5ld1Byb3hpX2xlZnQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJRGlzdGFuY2Ugb2xkUHJveGlfbGVmdCA9IHByb3hpX2xlZnQ7CisJCXByb3hpX2xlZnQgPSBuZXdQcm94aV9sZWZ0OworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpIHsKKwkJCUVOb3RpZmljYXRpb25JbXBsIG5vdGlmaWNhdGlvbiA9IG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlBST1hJX0xFRlRfUklHSFRfX1BST1hJX0xFRlQsIG9sZFByb3hpX2xlZnQsIG5ld1Byb3hpX2xlZnQpOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFByb3hpX2xlZnQoRGlzdGFuY2UgbmV3UHJveGlfbGVmdCkgeworCQlpZiAobmV3UHJveGlfbGVmdCAhPSBwcm94aV9sZWZ0KSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChwcm94aV9sZWZ0ICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KXByb3hpX2xlZnQpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlBST1hJX0xFRlRfUklHSFRfX1BST1hJX0xFRlQsIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld1Byb3hpX2xlZnQgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3UHJveGlfbGVmdCkuZUludmVyc2VBZGQodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuUFJPWElfTEVGVF9SSUdIVF9fUFJPWElfTEVGVCwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRQcm94aV9sZWZ0KG5ld1Byb3hpX2xlZnQsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5QUk9YSV9MRUZUX1JJR0hUX19QUk9YSV9MRUZULCBuZXdQcm94aV9sZWZ0LCBuZXdQcm94aV9sZWZ0KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIERpc3RhbmNlIGdldFByb3hpX3JpZ2h0KCkgeworCQlyZXR1cm4gcHJveGlfcmlnaHQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0UHJveGlfcmlnaHQoRGlzdGFuY2UgbmV3UHJveGlfcmlnaHQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJRGlzdGFuY2Ugb2xkUHJveGlfcmlnaHQgPSBwcm94aV9yaWdodDsKKwkJcHJveGlfcmlnaHQgPSBuZXdQcm94aV9yaWdodDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5QUk9YSV9MRUZUX1JJR0hUX19QUk9YSV9SSUdIVCwgb2xkUHJveGlfcmlnaHQsIG5ld1Byb3hpX3JpZ2h0KTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRQcm94aV9yaWdodChEaXN0YW5jZSBuZXdQcm94aV9yaWdodCkgeworCQlpZiAobmV3UHJveGlfcmlnaHQgIT0gcHJveGlfcmlnaHQpIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKHByb3hpX3JpZ2h0ICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KXByb3hpX3JpZ2h0KS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gT2FycDRfZGF0YXR5cGVzUGFja2FnZS5QUk9YSV9MRUZUX1JJR0hUX19QUk9YSV9SSUdIVCwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3UHJveGlfcmlnaHQgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3UHJveGlfcmlnaHQpLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlBST1hJX0xFRlRfUklHSFRfX1BST1hJX1JJR0hULCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldFByb3hpX3JpZ2h0KG5ld1Byb3hpX3JpZ2h0LCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuUFJPWElfTEVGVF9SSUdIVF9fUFJPWElfUklHSFQsIG5ld1Byb3hpX3JpZ2h0LCBuZXdQcm94aV9yaWdodCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBlSW52ZXJzZVJlbW92ZShJbnRlcm5hbEVPYmplY3Qgb3RoZXJFbmQsIGludCBmZWF0dXJlSUQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5QUk9YSV9MRUZUX1JJR0hUX19QUk9YSV9MRUZUOgorCQkJCXJldHVybiBiYXNpY1NldFByb3hpX2xlZnQobnVsbCwgbXNncyk7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuUFJPWElfTEVGVF9SSUdIVF9fUFJPWElfUklHSFQ6CisJCQkJcmV0dXJuIGJhc2ljU2V0UHJveGlfcmlnaHQobnVsbCwgbXNncyk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJbnZlcnNlUmVtb3ZlKG90aGVyRW5kLCBmZWF0dXJlSUQsIG1zZ3MpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5QUk9YSV9MRUZUX1JJR0hUX19QUk9YSV9MRUZUOgorCQkJCXJldHVybiBnZXRQcm94aV9sZWZ0KCk7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuUFJPWElfTEVGVF9SSUdIVF9fUFJPWElfUklHSFQ6CisJCQkJcmV0dXJuIGdldFByb3hpX3JpZ2h0KCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5QUk9YSV9MRUZUX1JJR0hUX19QUk9YSV9MRUZUOgorCQkJCXNldFByb3hpX2xlZnQoKERpc3RhbmNlKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuUFJPWElfTEVGVF9SSUdIVF9fUFJPWElfUklHSFQ6CisJCQkJc2V0UHJveGlfcmlnaHQoKERpc3RhbmNlKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlBST1hJX0xFRlRfUklHSFRfX1BST1hJX0xFRlQ6CisJCQkJc2V0UHJveGlfbGVmdCgoRGlzdGFuY2UpbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlBST1hJX0xFRlRfUklHSFRfX1BST1hJX1JJR0hUOgorCQkJCXNldFByb3hpX3JpZ2h0KChEaXN0YW5jZSludWxsKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5QUk9YSV9MRUZUX1JJR0hUX19QUk9YSV9MRUZUOgorCQkJCXJldHVybiBwcm94aV9sZWZ0ICE9IG51bGw7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuUFJPWElfTEVGVF9SSUdIVF9fUFJPWElfUklHSFQ6CisJCQkJcmV0dXJuIHByb3hpX3JpZ2h0ICE9IG51bGw7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworfSAvLyBQcm94aV9MZWZ0X1JpZ2h0SW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9pbXBsL1NwZWVkX1RpY3NJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL2ltcGwvU3BlZWRfVGljc0ltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40ZGZkMmU1Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9pbXBsL1NwZWVkX1RpY3NJbXBsLmphdmEKQEAgLTAsMCArMSwxNjAgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5TcGVlZF9UaWNzOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3BlZWQgVGljczwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5TcGVlZF9UaWNzSW1wbCNnZXRWYWx1ZSA8ZW0+VmFsdWU8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBTcGVlZF9UaWNzSW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBTcGVlZF9UaWNzIHsKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0VmFsdWUoKSA8ZW0+VmFsdWU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFZhbHVlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBWQUxVRV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRWYWx1ZSgpIDxlbT5WYWx1ZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VmFsdWUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgdmFsdWUgPSBWQUxVRV9FREVGQVVMVDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBTcGVlZF9UaWNzSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuU1BFRURfVElDUzsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFZhbHVlKCkgeworCQlyZXR1cm4gdmFsdWU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0VmFsdWUoT2JqZWN0IG5ld1ZhbHVlKSB7CisJCU9iamVjdCBvbGRWYWx1ZSA9IHZhbHVlOworCQl2YWx1ZSA9IG5ld1ZhbHVlOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlNQRUVEX1RJQ1NfX1ZBTFVFLCBvbGRWYWx1ZSwgdmFsdWUpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuU1BFRURfVElDU19fVkFMVUU6CisJCQkJcmV0dXJuIGdldFZhbHVlKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5TUEVFRF9USUNTX19WQUxVRToKKwkJCQlzZXRWYWx1ZSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlNQRUVEX1RJQ1NfX1ZBTFVFOgorCQkJCXNldFZhbHVlKFZBTFVFX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5TUEVFRF9USUNTX19WQUxVRToKKwkJCQlyZXR1cm4gVkFMVUVfRURFRkFVTFQgPT0gbnVsbCA/IHZhbHVlICE9IG51bGwgOiAhVkFMVUVfRURFRkFVTFQuZXF1YWxzKHZhbHVlKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJaWYgKGVJc1Byb3h5KCkpIHJldHVybiBzdXBlci50b1N0cmluZygpOworCisJCVN0cmluZ0J1ZmZlciByZXN1bHQgPSBuZXcgU3RyaW5nQnVmZmVyKHN1cGVyLnRvU3RyaW5nKCkpOworCQlyZXN1bHQuYXBwZW5kKCIgKHZhbHVlOiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh2YWx1ZSk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBTcGVlZF9UaWNzSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9pbXBsL1NwZWVkX1RpY3NfTGVmdF9SaWdodEltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvaW1wbC9TcGVlZF9UaWNzX0xlZnRfUmlnaHRJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWMwNWU1MwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvaW1wbC9TcGVlZF9UaWNzX0xlZnRfUmlnaHRJbXBsLmphdmEKQEAgLTAsMCArMSwyMzkgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uQ2hhaW47CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlNwZWVkX1RpY3M7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuU3BlZWRfVGljc19MZWZ0X1JpZ2h0OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+U3BlZWQgVGljcyBMZWZ0IFJpZ2h0PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLlNwZWVkX1RpY3NfTGVmdF9SaWdodEltcGwjZ2V0U3BlZWRfdGljc19sZWZ0IDxlbT5TcGVlZCB0aWNzIGxlZnQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuU3BlZWRfVGljc19MZWZ0X1JpZ2h0SW1wbCNnZXRTcGVlZF90aWNzX3JpZ2h0IDxlbT5TcGVlZCB0aWNzIHJpZ2h0PC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgU3BlZWRfVGljc19MZWZ0X1JpZ2h0SW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBTcGVlZF9UaWNzX0xlZnRfUmlnaHQgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFNwZWVkX3RpY3NfbGVmdCgpIDxlbT5TcGVlZCB0aWNzIGxlZnQ8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFNwZWVkX3RpY3NfbGVmdCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFNwZWVkX1RpY3Mgc3BlZWRfdGljc19sZWZ0OworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0U3BlZWRfdGljc19yaWdodCgpIDxlbT5TcGVlZCB0aWNzIHJpZ2h0PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRTcGVlZF90aWNzX3JpZ2h0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgU3BlZWRfVGljcyBzcGVlZF90aWNzX3JpZ2h0OworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFNwZWVkX1RpY3NfTGVmdF9SaWdodEltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLlNQRUVEX1RJQ1NfTEVGVF9SSUdIVDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3BlZWRfVGljcyBnZXRTcGVlZF90aWNzX2xlZnQoKSB7CisJCXJldHVybiBzcGVlZF90aWNzX2xlZnQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0U3BlZWRfdGljc19sZWZ0KFNwZWVkX1RpY3MgbmV3U3BlZWRfdGljc19sZWZ0LCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCVNwZWVkX1RpY3Mgb2xkU3BlZWRfdGljc19sZWZ0ID0gc3BlZWRfdGljc19sZWZ0OworCQlzcGVlZF90aWNzX2xlZnQgPSBuZXdTcGVlZF90aWNzX2xlZnQ7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuU1BFRURfVElDU19MRUZUX1JJR0hUX19TUEVFRF9USUNTX0xFRlQsIG9sZFNwZWVkX3RpY3NfbGVmdCwgbmV3U3BlZWRfdGljc19sZWZ0KTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRTcGVlZF90aWNzX2xlZnQoU3BlZWRfVGljcyBuZXdTcGVlZF90aWNzX2xlZnQpIHsKKwkJaWYgKG5ld1NwZWVkX3RpY3NfbGVmdCAhPSBzcGVlZF90aWNzX2xlZnQpIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKHNwZWVkX3RpY3NfbGVmdCAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdClzcGVlZF90aWNzX2xlZnQpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlNQRUVEX1RJQ1NfTEVGVF9SSUdIVF9fU1BFRURfVElDU19MRUZULCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdTcGVlZF90aWNzX2xlZnQgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3U3BlZWRfdGljc19sZWZ0KS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gT2FycDRfZGF0YXR5cGVzUGFja2FnZS5TUEVFRF9USUNTX0xFRlRfUklHSFRfX1NQRUVEX1RJQ1NfTEVGVCwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRTcGVlZF90aWNzX2xlZnQobmV3U3BlZWRfdGljc19sZWZ0LCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuU1BFRURfVElDU19MRUZUX1JJR0hUX19TUEVFRF9USUNTX0xFRlQsIG5ld1NwZWVkX3RpY3NfbGVmdCwgbmV3U3BlZWRfdGljc19sZWZ0KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFNwZWVkX1RpY3MgZ2V0U3BlZWRfdGljc19yaWdodCgpIHsKKwkJcmV0dXJuIHNwZWVkX3RpY3NfcmlnaHQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0U3BlZWRfdGljc19yaWdodChTcGVlZF9UaWNzIG5ld1NwZWVkX3RpY3NfcmlnaHQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJU3BlZWRfVGljcyBvbGRTcGVlZF90aWNzX3JpZ2h0ID0gc3BlZWRfdGljc19yaWdodDsKKwkJc3BlZWRfdGljc19yaWdodCA9IG5ld1NwZWVkX3RpY3NfcmlnaHQ7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuU1BFRURfVElDU19MRUZUX1JJR0hUX19TUEVFRF9USUNTX1JJR0hULCBvbGRTcGVlZF90aWNzX3JpZ2h0LCBuZXdTcGVlZF90aWNzX3JpZ2h0KTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRTcGVlZF90aWNzX3JpZ2h0KFNwZWVkX1RpY3MgbmV3U3BlZWRfdGljc19yaWdodCkgeworCQlpZiAobmV3U3BlZWRfdGljc19yaWdodCAhPSBzcGVlZF90aWNzX3JpZ2h0KSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChzcGVlZF90aWNzX3JpZ2h0ICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KXNwZWVkX3RpY3NfcmlnaHQpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlNQRUVEX1RJQ1NfTEVGVF9SSUdIVF9fU1BFRURfVElDU19SSUdIVCwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3U3BlZWRfdGljc19yaWdodCAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdTcGVlZF90aWNzX3JpZ2h0KS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gT2FycDRfZGF0YXR5cGVzUGFja2FnZS5TUEVFRF9USUNTX0xFRlRfUklHSFRfX1NQRUVEX1RJQ1NfUklHSFQsIG51bGwsIG1zZ3MpOworCQkJbXNncyA9IGJhc2ljU2V0U3BlZWRfdGljc19yaWdodChuZXdTcGVlZF90aWNzX3JpZ2h0LCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuU1BFRURfVElDU19MRUZUX1JJR0hUX19TUEVFRF9USUNTX1JJR0hULCBuZXdTcGVlZF90aWNzX3JpZ2h0LCBuZXdTcGVlZF90aWNzX3JpZ2h0KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGVJbnZlcnNlUmVtb3ZlKEludGVybmFsRU9iamVjdCBvdGhlckVuZCwgaW50IGZlYXR1cmVJRCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlNQRUVEX1RJQ1NfTEVGVF9SSUdIVF9fU1BFRURfVElDU19MRUZUOgorCQkJCXJldHVybiBiYXNpY1NldFNwZWVkX3RpY3NfbGVmdChudWxsLCBtc2dzKTsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5TUEVFRF9USUNTX0xFRlRfUklHSFRfX1NQRUVEX1RJQ1NfUklHSFQ6CisJCQkJcmV0dXJuIGJhc2ljU2V0U3BlZWRfdGljc19yaWdodChudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlNQRUVEX1RJQ1NfTEVGVF9SSUdIVF9fU1BFRURfVElDU19MRUZUOgorCQkJCXJldHVybiBnZXRTcGVlZF90aWNzX2xlZnQoKTsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5TUEVFRF9USUNTX0xFRlRfUklHSFRfX1NQRUVEX1RJQ1NfUklHSFQ6CisJCQkJcmV0dXJuIGdldFNwZWVkX3RpY3NfcmlnaHQoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlNQRUVEX1RJQ1NfTEVGVF9SSUdIVF9fU1BFRURfVElDU19MRUZUOgorCQkJCXNldFNwZWVkX3RpY3NfbGVmdCgoU3BlZWRfVGljcyluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlNQRUVEX1RJQ1NfTEVGVF9SSUdIVF9fU1BFRURfVElDU19SSUdIVDoKKwkJCQlzZXRTcGVlZF90aWNzX3JpZ2h0KChTcGVlZF9UaWNzKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlNQRUVEX1RJQ1NfTEVGVF9SSUdIVF9fU1BFRURfVElDU19MRUZUOgorCQkJCXNldFNwZWVkX3RpY3NfbGVmdCgoU3BlZWRfVGljcyludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuU1BFRURfVElDU19MRUZUX1JJR0hUX19TUEVFRF9USUNTX1JJR0hUOgorCQkJCXNldFNwZWVkX3RpY3NfcmlnaHQoKFNwZWVkX1RpY3MpbnVsbCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuU1BFRURfVElDU19MRUZUX1JJR0hUX19TUEVFRF9USUNTX0xFRlQ6CisJCQkJcmV0dXJuIHNwZWVkX3RpY3NfbGVmdCAhPSBudWxsOworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlNQRUVEX1RJQ1NfTEVGVF9SSUdIVF9fU1BFRURfVElDU19SSUdIVDoKKwkJCQlyZXR1cm4gc3BlZWRfdGljc19yaWdodCAhPSBudWxsOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKK30gLy8gU3BlZWRfVGljc19MZWZ0X1JpZ2h0SW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9pbXBsL1ZlbG9jaXR5SW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9pbXBsL1ZlbG9jaXR5SW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdlMTkzNzYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL2ltcGwvVmVsb2NpdHlJbXBsLmphdmEKQEAgLTAsMCArMSwyNDAgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uQ2hhaW47CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5X0FuZ3VsYXI7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuVmVsb2NpdHlfTGluZWFyOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+VmVsb2NpdHk8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuVmVsb2NpdHlJbXBsI2dldFZlbG9jaXR5X2xpbmVhciA8ZW0+VmVsb2NpdHkgbGluZWFyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLlZlbG9jaXR5SW1wbCNnZXRWZWxvY2l0eV9hbmd1bGFyIDxlbT5WZWxvY2l0eSBhbmd1bGFyPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgVmVsb2NpdHlJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIFZlbG9jaXR5IHsKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRWZWxvY2l0eV9saW5lYXIoKSA8ZW0+VmVsb2NpdHkgbGluZWFyPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRWZWxvY2l0eV9saW5lYXIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBWZWxvY2l0eV9MaW5lYXIgdmVsb2NpdHlfbGluZWFyOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0VmVsb2NpdHlfYW5ndWxhcigpIDxlbT5WZWxvY2l0eSBhbmd1bGFyPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRWZWxvY2l0eV9hbmd1bGFyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgVmVsb2NpdHlfQW5ndWxhciB2ZWxvY2l0eV9hbmd1bGFyOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFZlbG9jaXR5SW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuVkVMT0NJVFk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFZlbG9jaXR5X0xpbmVhciBnZXRWZWxvY2l0eV9saW5lYXIoKSB7CisJCXJldHVybiB2ZWxvY2l0eV9saW5lYXI7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0VmVsb2NpdHlfbGluZWFyKFZlbG9jaXR5X0xpbmVhciBuZXdWZWxvY2l0eV9saW5lYXIsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJVmVsb2NpdHlfTGluZWFyIG9sZFZlbG9jaXR5X2xpbmVhciA9IHZlbG9jaXR5X2xpbmVhcjsKKwkJdmVsb2NpdHlfbGluZWFyID0gbmV3VmVsb2NpdHlfbGluZWFyOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpIHsKKwkJCUVOb3RpZmljYXRpb25JbXBsIG5vdGlmaWNhdGlvbiA9IG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlZFTE9DSVRZX19WRUxPQ0lUWV9MSU5FQVIsIG9sZFZlbG9jaXR5X2xpbmVhciwgbmV3VmVsb2NpdHlfbGluZWFyKTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRWZWxvY2l0eV9saW5lYXIoVmVsb2NpdHlfTGluZWFyIG5ld1ZlbG9jaXR5X2xpbmVhcikgeworCQlpZiAobmV3VmVsb2NpdHlfbGluZWFyICE9IHZlbG9jaXR5X2xpbmVhcikgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAodmVsb2NpdHlfbGluZWFyICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KXZlbG9jaXR5X2xpbmVhcikuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFlfX1ZFTE9DSVRZX0xJTkVBUiwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3VmVsb2NpdHlfbGluZWFyICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld1ZlbG9jaXR5X2xpbmVhcikuZUludmVyc2VBZGQodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFlfX1ZFTE9DSVRZX0xJTkVBUiwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRWZWxvY2l0eV9saW5lYXIobmV3VmVsb2NpdHlfbGluZWFyLCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFlfX1ZFTE9DSVRZX0xJTkVBUiwgbmV3VmVsb2NpdHlfbGluZWFyLCBuZXdWZWxvY2l0eV9saW5lYXIpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVmVsb2NpdHlfQW5ndWxhciBnZXRWZWxvY2l0eV9hbmd1bGFyKCkgeworCQlyZXR1cm4gdmVsb2NpdHlfYW5ndWxhcjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRWZWxvY2l0eV9hbmd1bGFyKFZlbG9jaXR5X0FuZ3VsYXIgbmV3VmVsb2NpdHlfYW5ndWxhciwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlWZWxvY2l0eV9Bbmd1bGFyIG9sZFZlbG9jaXR5X2FuZ3VsYXIgPSB2ZWxvY2l0eV9hbmd1bGFyOworCQl2ZWxvY2l0eV9hbmd1bGFyID0gbmV3VmVsb2NpdHlfYW5ndWxhcjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5WRUxPQ0lUWV9fVkVMT0NJVFlfQU5HVUxBUiwgb2xkVmVsb2NpdHlfYW5ndWxhciwgbmV3VmVsb2NpdHlfYW5ndWxhcik7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0VmVsb2NpdHlfYW5ndWxhcihWZWxvY2l0eV9Bbmd1bGFyIG5ld1ZlbG9jaXR5X2FuZ3VsYXIpIHsKKwkJaWYgKG5ld1ZlbG9jaXR5X2FuZ3VsYXIgIT0gdmVsb2NpdHlfYW5ndWxhcikgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAodmVsb2NpdHlfYW5ndWxhciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCl2ZWxvY2l0eV9hbmd1bGFyKS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gT2FycDRfZGF0YXR5cGVzUGFja2FnZS5WRUxPQ0lUWV9fVkVMT0NJVFlfQU5HVUxBUiwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3VmVsb2NpdHlfYW5ndWxhciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdWZWxvY2l0eV9hbmd1bGFyKS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gT2FycDRfZGF0YXR5cGVzUGFja2FnZS5WRUxPQ0lUWV9fVkVMT0NJVFlfQU5HVUxBUiwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRWZWxvY2l0eV9hbmd1bGFyKG5ld1ZlbG9jaXR5X2FuZ3VsYXIsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5WRUxPQ0lUWV9fVkVMT0NJVFlfQU5HVUxBUiwgbmV3VmVsb2NpdHlfYW5ndWxhciwgbmV3VmVsb2NpdHlfYW5ndWxhcikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBlSW52ZXJzZVJlbW92ZShJbnRlcm5hbEVPYmplY3Qgb3RoZXJFbmQsIGludCBmZWF0dXJlSUQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5WRUxPQ0lUWV9fVkVMT0NJVFlfTElORUFSOgorCQkJCXJldHVybiBiYXNpY1NldFZlbG9jaXR5X2xpbmVhcihudWxsLCBtc2dzKTsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5WRUxPQ0lUWV9fVkVMT0NJVFlfQU5HVUxBUjoKKwkJCQlyZXR1cm4gYmFzaWNTZXRWZWxvY2l0eV9hbmd1bGFyKG51bGwsIG1zZ3MpOworCQl9CisJCXJldHVybiBzdXBlci5lSW52ZXJzZVJlbW92ZShvdGhlckVuZCwgZmVhdHVyZUlELCBtc2dzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFlfX1ZFTE9DSVRZX0xJTkVBUjoKKwkJCQlyZXR1cm4gZ2V0VmVsb2NpdHlfbGluZWFyKCk7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFlfX1ZFTE9DSVRZX0FOR1VMQVI6CisJCQkJcmV0dXJuIGdldFZlbG9jaXR5X2FuZ3VsYXIoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlZFTE9DSVRZX19WRUxPQ0lUWV9MSU5FQVI6CisJCQkJc2V0VmVsb2NpdHlfbGluZWFyKChWZWxvY2l0eV9MaW5lYXIpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5WRUxPQ0lUWV9fVkVMT0NJVFlfQU5HVUxBUjoKKwkJCQlzZXRWZWxvY2l0eV9hbmd1bGFyKChWZWxvY2l0eV9Bbmd1bGFyKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlZFTE9DSVRZX19WRUxPQ0lUWV9MSU5FQVI6CisJCQkJc2V0VmVsb2NpdHlfbGluZWFyKChWZWxvY2l0eV9MaW5lYXIpbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlZFTE9DSVRZX19WRUxPQ0lUWV9BTkdVTEFSOgorCQkJCXNldFZlbG9jaXR5X2FuZ3VsYXIoKFZlbG9jaXR5X0FuZ3VsYXIpbnVsbCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFlfX1ZFTE9DSVRZX0xJTkVBUjoKKwkJCQlyZXR1cm4gdmVsb2NpdHlfbGluZWFyICE9IG51bGw7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFlfX1ZFTE9DSVRZX0FOR1VMQVI6CisJCQkJcmV0dXJuIHZlbG9jaXR5X2FuZ3VsYXIgIT0gbnVsbDsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCit9IC8vIFZlbG9jaXR5SW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9pbXBsL1ZlbG9jaXR5X0FuZ3VsYXJJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL2ltcGwvVmVsb2NpdHlfQW5ndWxhckltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yODgzYzA5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9pbXBsL1ZlbG9jaXR5X0FuZ3VsYXJJbXBsLmphdmEKQEAgLTAsMCArMSwxNjAgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5WZWxvY2l0eV9Bbmd1bGFyOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+VmVsb2NpdHkgQW5ndWxhcjwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5WZWxvY2l0eV9Bbmd1bGFySW1wbCNnZXRWYWx1ZSA8ZW0+VmFsdWU8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBWZWxvY2l0eV9Bbmd1bGFySW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBWZWxvY2l0eV9Bbmd1bGFyIHsKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0VmFsdWUoKSA8ZW0+VmFsdWU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFZhbHVlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBWQUxVRV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRWYWx1ZSgpIDxlbT5WYWx1ZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VmFsdWUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgdmFsdWUgPSBWQUxVRV9FREVGQVVMVDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBWZWxvY2l0eV9Bbmd1bGFySW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuVkVMT0NJVFlfQU5HVUxBUjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFZhbHVlKCkgeworCQlyZXR1cm4gdmFsdWU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0VmFsdWUoT2JqZWN0IG5ld1ZhbHVlKSB7CisJCU9iamVjdCBvbGRWYWx1ZSA9IHZhbHVlOworCQl2YWx1ZSA9IG5ld1ZhbHVlOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlZFTE9DSVRZX0FOR1VMQVJfX1ZBTFVFLCBvbGRWYWx1ZSwgdmFsdWUpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFlfQU5HVUxBUl9fVkFMVUU6CisJCQkJcmV0dXJuIGdldFZhbHVlKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5WRUxPQ0lUWV9BTkdVTEFSX19WQUxVRToKKwkJCQlzZXRWYWx1ZSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlZFTE9DSVRZX0FOR1VMQVJfX1ZBTFVFOgorCQkJCXNldFZhbHVlKFZBTFVFX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5WRUxPQ0lUWV9BTkdVTEFSX19WQUxVRToKKwkJCQlyZXR1cm4gVkFMVUVfRURFRkFVTFQgPT0gbnVsbCA/IHZhbHVlICE9IG51bGwgOiAhVkFMVUVfRURFRkFVTFQuZXF1YWxzKHZhbHVlKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJaWYgKGVJc1Byb3h5KCkpIHJldHVybiBzdXBlci50b1N0cmluZygpOworCisJCVN0cmluZ0J1ZmZlciByZXN1bHQgPSBuZXcgU3RyaW5nQnVmZmVyKHN1cGVyLnRvU3RyaW5nKCkpOworCQlyZXN1bHQuYXBwZW5kKCIgKHZhbHVlOiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh2YWx1ZSk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBWZWxvY2l0eV9Bbmd1bGFySW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9pbXBsL1ZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodEltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvaW1wbC9WZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHRJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTU1YjYxMAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvaW1wbC9WZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHRJbXBsLmphdmEKQEAgLTAsMCArMSwyMzkgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uQ2hhaW47CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5X0FuZ3VsYXI7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuVmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+VmVsb2NpdHkgQW5ndWxhciBMZWZ0IFJpZ2h0PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5pbXBsLlZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodEltcGwjZ2V0VmVsb2NpdHlfYW5ndWxhcl9sZWZ0IDxlbT5WZWxvY2l0eSBhbmd1bGFyIGxlZnQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuVmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0SW1wbCNnZXRWZWxvY2l0eV9hbmd1bGFyX3JpZ2h0IDxlbT5WZWxvY2l0eSBhbmd1bGFyIHJpZ2h0PC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgVmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0SW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBWZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHQgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFZlbG9jaXR5X2FuZ3VsYXJfbGVmdCgpIDxlbT5WZWxvY2l0eSBhbmd1bGFyIGxlZnQ8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFZlbG9jaXR5X2FuZ3VsYXJfbGVmdCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFZlbG9jaXR5X0FuZ3VsYXIgdmVsb2NpdHlfYW5ndWxhcl9sZWZ0OworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0VmVsb2NpdHlfYW5ndWxhcl9yaWdodCgpIDxlbT5WZWxvY2l0eSBhbmd1bGFyIHJpZ2h0PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRWZWxvY2l0eV9hbmd1bGFyX3JpZ2h0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgVmVsb2NpdHlfQW5ndWxhciB2ZWxvY2l0eV9hbmd1bGFyX3JpZ2h0OworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodEltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLlZFTE9DSVRZX0FOR1VMQVJfTEVGVF9SSUdIVDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVmVsb2NpdHlfQW5ndWxhciBnZXRWZWxvY2l0eV9hbmd1bGFyX2xlZnQoKSB7CisJCXJldHVybiB2ZWxvY2l0eV9hbmd1bGFyX2xlZnQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0VmVsb2NpdHlfYW5ndWxhcl9sZWZ0KFZlbG9jaXR5X0FuZ3VsYXIgbmV3VmVsb2NpdHlfYW5ndWxhcl9sZWZ0LCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCVZlbG9jaXR5X0FuZ3VsYXIgb2xkVmVsb2NpdHlfYW5ndWxhcl9sZWZ0ID0gdmVsb2NpdHlfYW5ndWxhcl9sZWZ0OworCQl2ZWxvY2l0eV9hbmd1bGFyX2xlZnQgPSBuZXdWZWxvY2l0eV9hbmd1bGFyX2xlZnQ7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFlfQU5HVUxBUl9MRUZUX1JJR0hUX19WRUxPQ0lUWV9BTkdVTEFSX0xFRlQsIG9sZFZlbG9jaXR5X2FuZ3VsYXJfbGVmdCwgbmV3VmVsb2NpdHlfYW5ndWxhcl9sZWZ0KTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRWZWxvY2l0eV9hbmd1bGFyX2xlZnQoVmVsb2NpdHlfQW5ndWxhciBuZXdWZWxvY2l0eV9hbmd1bGFyX2xlZnQpIHsKKwkJaWYgKG5ld1ZlbG9jaXR5X2FuZ3VsYXJfbGVmdCAhPSB2ZWxvY2l0eV9hbmd1bGFyX2xlZnQpIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKHZlbG9jaXR5X2FuZ3VsYXJfbGVmdCAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCl2ZWxvY2l0eV9hbmd1bGFyX2xlZnQpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlZFTE9DSVRZX0FOR1VMQVJfTEVGVF9SSUdIVF9fVkVMT0NJVFlfQU5HVUxBUl9MRUZULCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdWZWxvY2l0eV9hbmd1bGFyX2xlZnQgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3VmVsb2NpdHlfYW5ndWxhcl9sZWZ0KS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gT2FycDRfZGF0YXR5cGVzUGFja2FnZS5WRUxPQ0lUWV9BTkdVTEFSX0xFRlRfUklHSFRfX1ZFTE9DSVRZX0FOR1VMQVJfTEVGVCwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRWZWxvY2l0eV9hbmd1bGFyX2xlZnQobmV3VmVsb2NpdHlfYW5ndWxhcl9sZWZ0LCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFlfQU5HVUxBUl9MRUZUX1JJR0hUX19WRUxPQ0lUWV9BTkdVTEFSX0xFRlQsIG5ld1ZlbG9jaXR5X2FuZ3VsYXJfbGVmdCwgbmV3VmVsb2NpdHlfYW5ndWxhcl9sZWZ0KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFZlbG9jaXR5X0FuZ3VsYXIgZ2V0VmVsb2NpdHlfYW5ndWxhcl9yaWdodCgpIHsKKwkJcmV0dXJuIHZlbG9jaXR5X2FuZ3VsYXJfcmlnaHQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0VmVsb2NpdHlfYW5ndWxhcl9yaWdodChWZWxvY2l0eV9Bbmd1bGFyIG5ld1ZlbG9jaXR5X2FuZ3VsYXJfcmlnaHQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJVmVsb2NpdHlfQW5ndWxhciBvbGRWZWxvY2l0eV9hbmd1bGFyX3JpZ2h0ID0gdmVsb2NpdHlfYW5ndWxhcl9yaWdodDsKKwkJdmVsb2NpdHlfYW5ndWxhcl9yaWdodCA9IG5ld1ZlbG9jaXR5X2FuZ3VsYXJfcmlnaHQ7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFlfQU5HVUxBUl9MRUZUX1JJR0hUX19WRUxPQ0lUWV9BTkdVTEFSX1JJR0hULCBvbGRWZWxvY2l0eV9hbmd1bGFyX3JpZ2h0LCBuZXdWZWxvY2l0eV9hbmd1bGFyX3JpZ2h0KTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRWZWxvY2l0eV9hbmd1bGFyX3JpZ2h0KFZlbG9jaXR5X0FuZ3VsYXIgbmV3VmVsb2NpdHlfYW5ndWxhcl9yaWdodCkgeworCQlpZiAobmV3VmVsb2NpdHlfYW5ndWxhcl9yaWdodCAhPSB2ZWxvY2l0eV9hbmd1bGFyX3JpZ2h0KSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmICh2ZWxvY2l0eV9hbmd1bGFyX3JpZ2h0ICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KXZlbG9jaXR5X2FuZ3VsYXJfcmlnaHQpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlZFTE9DSVRZX0FOR1VMQVJfTEVGVF9SSUdIVF9fVkVMT0NJVFlfQU5HVUxBUl9SSUdIVCwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3VmVsb2NpdHlfYW5ndWxhcl9yaWdodCAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdWZWxvY2l0eV9hbmd1bGFyX3JpZ2h0KS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gT2FycDRfZGF0YXR5cGVzUGFja2FnZS5WRUxPQ0lUWV9BTkdVTEFSX0xFRlRfUklHSFRfX1ZFTE9DSVRZX0FOR1VMQVJfUklHSFQsIG51bGwsIG1zZ3MpOworCQkJbXNncyA9IGJhc2ljU2V0VmVsb2NpdHlfYW5ndWxhcl9yaWdodChuZXdWZWxvY2l0eV9hbmd1bGFyX3JpZ2h0LCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFlfQU5HVUxBUl9MRUZUX1JJR0hUX19WRUxPQ0lUWV9BTkdVTEFSX1JJR0hULCBuZXdWZWxvY2l0eV9hbmd1bGFyX3JpZ2h0LCBuZXdWZWxvY2l0eV9hbmd1bGFyX3JpZ2h0KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGVJbnZlcnNlUmVtb3ZlKEludGVybmFsRU9iamVjdCBvdGhlckVuZCwgaW50IGZlYXR1cmVJRCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlZFTE9DSVRZX0FOR1VMQVJfTEVGVF9SSUdIVF9fVkVMT0NJVFlfQU5HVUxBUl9MRUZUOgorCQkJCXJldHVybiBiYXNpY1NldFZlbG9jaXR5X2FuZ3VsYXJfbGVmdChudWxsLCBtc2dzKTsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5WRUxPQ0lUWV9BTkdVTEFSX0xFRlRfUklHSFRfX1ZFTE9DSVRZX0FOR1VMQVJfUklHSFQ6CisJCQkJcmV0dXJuIGJhc2ljU2V0VmVsb2NpdHlfYW5ndWxhcl9yaWdodChudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlZFTE9DSVRZX0FOR1VMQVJfTEVGVF9SSUdIVF9fVkVMT0NJVFlfQU5HVUxBUl9MRUZUOgorCQkJCXJldHVybiBnZXRWZWxvY2l0eV9hbmd1bGFyX2xlZnQoKTsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5WRUxPQ0lUWV9BTkdVTEFSX0xFRlRfUklHSFRfX1ZFTE9DSVRZX0FOR1VMQVJfUklHSFQ6CisJCQkJcmV0dXJuIGdldFZlbG9jaXR5X2FuZ3VsYXJfcmlnaHQoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlZFTE9DSVRZX0FOR1VMQVJfTEVGVF9SSUdIVF9fVkVMT0NJVFlfQU5HVUxBUl9MRUZUOgorCQkJCXNldFZlbG9jaXR5X2FuZ3VsYXJfbGVmdCgoVmVsb2NpdHlfQW5ndWxhciluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlZFTE9DSVRZX0FOR1VMQVJfTEVGVF9SSUdIVF9fVkVMT0NJVFlfQU5HVUxBUl9SSUdIVDoKKwkJCQlzZXRWZWxvY2l0eV9hbmd1bGFyX3JpZ2h0KChWZWxvY2l0eV9Bbmd1bGFyKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlZFTE9DSVRZX0FOR1VMQVJfTEVGVF9SSUdIVF9fVkVMT0NJVFlfQU5HVUxBUl9MRUZUOgorCQkJCXNldFZlbG9jaXR5X2FuZ3VsYXJfbGVmdCgoVmVsb2NpdHlfQW5ndWxhciludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFlfQU5HVUxBUl9MRUZUX1JJR0hUX19WRUxPQ0lUWV9BTkdVTEFSX1JJR0hUOgorCQkJCXNldFZlbG9jaXR5X2FuZ3VsYXJfcmlnaHQoKFZlbG9jaXR5X0FuZ3VsYXIpbnVsbCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFlfQU5HVUxBUl9MRUZUX1JJR0hUX19WRUxPQ0lUWV9BTkdVTEFSX0xFRlQ6CisJCQkJcmV0dXJuIHZlbG9jaXR5X2FuZ3VsYXJfbGVmdCAhPSBudWxsOworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlZFTE9DSVRZX0FOR1VMQVJfTEVGVF9SSUdIVF9fVkVMT0NJVFlfQU5HVUxBUl9SSUdIVDoKKwkJCQlyZXR1cm4gdmVsb2NpdHlfYW5ndWxhcl9yaWdodCAhPSBudWxsOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKK30gLy8gVmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0SW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy9pbXBsL1ZlbG9jaXR5X0xpbmVhckltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvaW1wbC9WZWxvY2l0eV9MaW5lYXJJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2U3ODA3NQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvaW1wbC9WZWxvY2l0eV9MaW5lYXJJbXBsLmphdmEKQEAgLTAsMCArMSwxNjAgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5WZWxvY2l0eV9MaW5lYXI7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5WZWxvY2l0eSBMaW5lYXI8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuVmVsb2NpdHlfTGluZWFySW1wbCNnZXRWYWx1ZSA8ZW0+VmFsdWU8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBWZWxvY2l0eV9MaW5lYXJJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIFZlbG9jaXR5X0xpbmVhciB7CisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFZhbHVlKCkgPGVtPlZhbHVlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRWYWx1ZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgVkFMVUVfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0VmFsdWUoKSA8ZW0+VmFsdWU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFZhbHVlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHZhbHVlID0gVkFMVUVfRURFRkFVTFQ7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgVmVsb2NpdHlfTGluZWFySW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuVkVMT0NJVFlfTElORUFSOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0VmFsdWUoKSB7CisJCXJldHVybiB2YWx1ZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRWYWx1ZShPYmplY3QgbmV3VmFsdWUpIHsKKwkJT2JqZWN0IG9sZFZhbHVlID0gdmFsdWU7CisJCXZhbHVlID0gbmV3VmFsdWU7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFlfTElORUFSX19WQUxVRSwgb2xkVmFsdWUsIHZhbHVlKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLlZFTE9DSVRZX0xJTkVBUl9fVkFMVUU6CisJCQkJcmV0dXJuIGdldFZhbHVlKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgT2FycDRfZGF0YXR5cGVzUGFja2FnZS5WRUxPQ0lUWV9MSU5FQVJfX1ZBTFVFOgorCQkJCXNldFZhbHVlKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFlfTElORUFSX19WQUxVRToKKwkJCQlzZXRWYWx1ZShWQUxVRV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFlfTElORUFSX19WQUxVRToKKwkJCQlyZXR1cm4gVkFMVUVfRURFRkFVTFQgPT0gbnVsbCA/IHZhbHVlICE9IG51bGwgOiAhVkFMVUVfRURFRkFVTFQuZXF1YWxzKHZhbHVlKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJaWYgKGVJc1Byb3h5KCkpIHJldHVybiBzdXBlci50b1N0cmluZygpOworCisJCVN0cmluZ0J1ZmZlciByZXN1bHQgPSBuZXcgU3RyaW5nQnVmZmVyKHN1cGVyLnRvU3RyaW5nKCkpOworCQlyZXN1bHQuYXBwZW5kKCIgKHZhbHVlOiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh2YWx1ZSk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBWZWxvY2l0eV9MaW5lYXJJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL3V0aWwvT2FycDRfZGF0YXR5cGVzQWRhcHRlckZhY3RvcnkuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL29hcnBzX2RhdGF0eXBlcy9vYXJwNF9kYXRhdHlwZXMvdXRpbC9PYXJwNF9kYXRhdHlwZXNBZGFwdGVyRmFjdG9yeS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRiYjJkNDMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL3V0aWwvT2FycDRfZGF0YXR5cGVzQWRhcHRlckZhY3RvcnkuamF2YQpAQCAtMCwwICsxLDQwMyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMudXRpbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5BZGFwdGVyRmFjdG9yeUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuQW5ndWxhcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5BcnRfU2V0X1BvaW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLkRpc3RhbmNlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk1ldHJpYzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5NaWxsaV9BbXA7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PZG9tZXRlcl9UaWNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9kb21ldGVyX1RpY3NfTGVmdF9SaWdodDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PcF9TZXRfUG9pbnQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuUHJveGlfTGVmdF9SaWdodDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5TcGVlZF9UaWNzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlNwZWVkX1RpY3NfTGVmdF9SaWdodDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5WZWxvY2l0eTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5WZWxvY2l0eV9Bbmd1bGFyOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5WZWxvY2l0eV9MaW5lYXI7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIFRoZSA8Yj5BZGFwdGVyIEZhY3Rvcnk8L2I+IGZvciB0aGUgbW9kZWwuCisgKiBJdCBwcm92aWRlcyBhbiBhZGFwdGVyIDxjb2RlPmNyZWF0ZVhYWDwvY29kZT4gbWV0aG9kIGZvciBlYWNoIGNsYXNzIG9mIHRoZSBtb2RlbC4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBPYXJwNF9kYXRhdHlwZXNBZGFwdGVyRmFjdG9yeSBleHRlbmRzIEFkYXB0ZXJGYWN0b3J5SW1wbCB7CisJLyoqCisJICogVGhlIGNhY2hlZCBtb2RlbCBwYWNrYWdlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgT2FycDRfZGF0YXR5cGVzUGFja2FnZSBtb2RlbFBhY2thZ2U7CisKKwkvKioKKwkgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSBhZGFwdGVyIGZhY3RvcnkuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9hcnA0X2RhdGF0eXBlc0FkYXB0ZXJGYWN0b3J5KCkgeworCQlpZiAobW9kZWxQYWNrYWdlID09IG51bGwpIHsKKwkJCW1vZGVsUGFja2FnZSA9IE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFOworCQl9CisJfQorCisJLyoqCisJICogUmV0dXJucyB3aGV0aGVyIHRoaXMgZmFjdG9yeSBpcyBhcHBsaWNhYmxlIGZvciB0aGUgdHlwZSBvZiB0aGUgb2JqZWN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIDxjb2RlPnRydWU8L2NvZGU+IGlmIHRoZSBvYmplY3QgaXMgZWl0aGVyIHRoZSBtb2RlbCdzIHBhY2thZ2Ugb3IgaXMgYW4gaW5zdGFuY2Ugb2JqZWN0IG9mIHRoZSBtb2RlbC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHdoZXRoZXIgdGhpcyBmYWN0b3J5IGlzIGFwcGxpY2FibGUgZm9yIHRoZSB0eXBlIG9mIHRoZSBvYmplY3QuCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGlzRmFjdG9yeUZvclR5cGUoT2JqZWN0IG9iamVjdCkgeworCQlpZiAob2JqZWN0ID09IG1vZGVsUGFja2FnZSkgeworCQkJcmV0dXJuIHRydWU7CisJCX0KKwkJaWYgKG9iamVjdCBpbnN0YW5jZW9mIEVPYmplY3QpIHsKKwkJCXJldHVybiAoKEVPYmplY3Qpb2JqZWN0KS5lQ2xhc3MoKS5nZXRFUGFja2FnZSgpID09IG1vZGVsUGFja2FnZTsKKwkJfQorCQlyZXR1cm4gZmFsc2U7CisJfQorCisJLyoqCisJICogVGhlIHN3aXRjaCB0aGF0IGRlbGVnYXRlcyB0byB0aGUgPGNvZGU+Y3JlYXRlWFhYPC9jb2RlPiBtZXRob2RzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBPYXJwNF9kYXRhdHlwZXNTd2l0Y2g8QWRhcHRlcj4gbW9kZWxTd2l0Y2ggPQorCQkJbmV3IE9hcnA0X2RhdGF0eXBlc1N3aXRjaDxBZGFwdGVyPigpIHsKKwkJCUBPdmVycmlkZQorCQkJcHVibGljIEFkYXB0ZXIgY2FzZVZlbG9jaXR5X0xpbmVhcihWZWxvY2l0eV9MaW5lYXIgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZVZlbG9jaXR5X0xpbmVhckFkYXB0ZXIoKTsKKwkJCX0KKwkJCUBPdmVycmlkZQorCQkJcHVibGljIEFkYXB0ZXIgY2FzZUFydF9TZXRfUG9pbnQoQXJ0X1NldF9Qb2ludCBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlQXJ0X1NldF9Qb2ludEFkYXB0ZXIoKTsKKwkJCX0KKwkJCUBPdmVycmlkZQorCQkJcHVibGljIEFkYXB0ZXIgY2FzZVZlbG9jaXR5X0FuZ3VsYXIoVmVsb2NpdHlfQW5ndWxhciBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlVmVsb2NpdHlfQW5ndWxhckFkYXB0ZXIoKTsKKwkJCX0KKwkJCUBPdmVycmlkZQorCQkJcHVibGljIEFkYXB0ZXIgY2FzZURpc3RhbmNlKERpc3RhbmNlIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVEaXN0YW5jZUFkYXB0ZXIoKTsKKwkJCX0KKwkJCUBPdmVycmlkZQorCQkJcHVibGljIEFkYXB0ZXIgY2FzZU1ldHJpYyhNZXRyaWMgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZU1ldHJpY0FkYXB0ZXIoKTsKKwkJCX0KKwkJCUBPdmVycmlkZQorCQkJcHVibGljIEFkYXB0ZXIgY2FzZUFuZ3VsYXIoQW5ndWxhciBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlQW5ndWxhckFkYXB0ZXIoKTsKKwkJCX0KKwkJCUBPdmVycmlkZQorCQkJcHVibGljIEFkYXB0ZXIgY2FzZU9wX1NldF9Qb2ludChPcF9TZXRfUG9pbnQgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZU9wX1NldF9Qb2ludEFkYXB0ZXIoKTsKKwkJCX0KKwkJCUBPdmVycmlkZQorCQkJcHVibGljIEFkYXB0ZXIgY2FzZVNwZWVkX1RpY3NfTGVmdF9SaWdodChTcGVlZF9UaWNzX0xlZnRfUmlnaHQgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZVNwZWVkX1RpY3NfTGVmdF9SaWdodEFkYXB0ZXIoKTsKKwkJCX0KKwkJCUBPdmVycmlkZQorCQkJcHVibGljIEFkYXB0ZXIgY2FzZVNwZWVkX1RpY3MoU3BlZWRfVGljcyBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlU3BlZWRfVGljc0FkYXB0ZXIoKTsKKwkJCX0KKwkJCUBPdmVycmlkZQorCQkJcHVibGljIEFkYXB0ZXIgY2FzZU9kb21ldGVyX1RpY3MoT2RvbWV0ZXJfVGljcyBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlT2RvbWV0ZXJfVGljc0FkYXB0ZXIoKTsKKwkJCX0KKwkJCUBPdmVycmlkZQorCQkJcHVibGljIEFkYXB0ZXIgY2FzZU9kb21ldGVyX1RpY3NfTGVmdF9SaWdodChPZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHQgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZU9kb21ldGVyX1RpY3NfTGVmdF9SaWdodEFkYXB0ZXIoKTsKKwkJCX0KKwkJCUBPdmVycmlkZQorCQkJcHVibGljIEFkYXB0ZXIgY2FzZVByb3hpX0xlZnRfUmlnaHQoUHJveGlfTGVmdF9SaWdodCBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlUHJveGlfTGVmdF9SaWdodEFkYXB0ZXIoKTsKKwkJCX0KKwkJCUBPdmVycmlkZQorCQkJcHVibGljIEFkYXB0ZXIgY2FzZU1pbGxpX0FtcChNaWxsaV9BbXAgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZU1pbGxpX0FtcEFkYXB0ZXIoKTsKKwkJCX0KKwkJCUBPdmVycmlkZQorCQkJcHVibGljIEFkYXB0ZXIgY2FzZU9kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0KE9kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0IG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVPZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodEFkYXB0ZXIoKTsKKwkJCX0KKwkJCUBPdmVycmlkZQorCQkJcHVibGljIEFkYXB0ZXIgY2FzZVZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodChWZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHQgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZVZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodEFkYXB0ZXIoKTsKKwkJCX0KKwkJCUBPdmVycmlkZQorCQkJcHVibGljIEFkYXB0ZXIgY2FzZVZlbG9jaXR5KFZlbG9jaXR5IG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVWZWxvY2l0eUFkYXB0ZXIoKTsKKwkJCX0KKwkJCUBPdmVycmlkZQorCQkJcHVibGljIEFkYXB0ZXIgZGVmYXVsdENhc2UoRU9iamVjdCBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlRU9iamVjdEFkYXB0ZXIoKTsKKwkJCX0KKwkJfTsKKworCS8qKgorCSAqIENyZWF0ZXMgYW4gYWRhcHRlciBmb3IgdGhlIDxjb2RlPnRhcmdldDwvY29kZT4uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdGFyZ2V0IHRoZSBvYmplY3QgdG8gYWRhcHQuCisJICogQHJldHVybiB0aGUgYWRhcHRlciBmb3IgdGhlIDxjb2RlPnRhcmdldDwvY29kZT4uCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUFkYXB0ZXIoTm90aWZpZXIgdGFyZ2V0KSB7CisJCXJldHVybiBtb2RlbFN3aXRjaC5kb1N3aXRjaCgoRU9iamVjdCl0YXJnZXQpOworCX0KKworCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5WZWxvY2l0eV9MaW5lYXIgPGVtPlZlbG9jaXR5IExpbmVhcjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5WZWxvY2l0eV9MaW5lYXIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlVmVsb2NpdHlfTGluZWFyQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5BcnRfU2V0X1BvaW50IDxlbT5BcnQgU2V0IFBvaW50PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLkFydF9TZXRfUG9pbnQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlQXJ0X1NldF9Qb2ludEFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuVmVsb2NpdHlfQW5ndWxhciA8ZW0+VmVsb2NpdHkgQW5ndWxhcjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5WZWxvY2l0eV9Bbmd1bGFyCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVZlbG9jaXR5X0FuZ3VsYXJBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLkRpc3RhbmNlIDxlbT5EaXN0YW5jZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5EaXN0YW5jZQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVEaXN0YW5jZUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuTWV0cmljIDxlbT5NZXRyaWM8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuTWV0cmljCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZU1ldHJpY0FkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuQW5ndWxhciA8ZW0+QW5ndWxhcjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5Bbmd1bGFyCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUFuZ3VsYXJBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9wX1NldF9Qb2ludCA8ZW0+T3AgU2V0IFBvaW50PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9wX1NldF9Qb2ludAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVPcF9TZXRfUG9pbnRBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlNwZWVkX1RpY3NfTGVmdF9SaWdodCA8ZW0+U3BlZWQgVGljcyBMZWZ0IFJpZ2h0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlNwZWVkX1RpY3NfTGVmdF9SaWdodAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVTcGVlZF9UaWNzX0xlZnRfUmlnaHRBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlNwZWVkX1RpY3MgPGVtPlNwZWVkIFRpY3M8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuU3BlZWRfVGljcworCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVTcGVlZF9UaWNzQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PZG9tZXRlcl9UaWNzIDxlbT5PZG9tZXRlciBUaWNzPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9kb21ldGVyX1RpY3MKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlT2RvbWV0ZXJfVGljc0FkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0IDxlbT5PZG9tZXRlciBUaWNzIExlZnQgUmlnaHQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZU9kb21ldGVyX1RpY3NfTGVmdF9SaWdodEFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuUHJveGlfTGVmdF9SaWdodCA8ZW0+UHJveGkgTGVmdCBSaWdodDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5Qcm94aV9MZWZ0X1JpZ2h0CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVByb3hpX0xlZnRfUmlnaHRBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk1pbGxpX0FtcCA8ZW0+TWlsbGkgQW1wPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk1pbGxpX0FtcAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVNaWxsaV9BbXBBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0IDxlbT5PZG9tZXRlciBMaW5lYXIgTGVmdCBSaWdodDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVPZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodEFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuVmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0IDxlbT5WZWxvY2l0eSBBbmd1bGFyIExlZnQgUmlnaHQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuVmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodEFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuVmVsb2NpdHkgPGVtPlZlbG9jaXR5PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlZlbG9jaXR5CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVZlbG9jaXR5QWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciB0aGUgZGVmYXVsdCBjYXNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlRU9iamVjdEFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworfSAvLyBPYXJwNF9kYXRhdHlwZXNBZGFwdGVyRmFjdG9yeQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy91dGlsL09hcnA0X2RhdGF0eXBlc1N3aXRjaC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvb2FycHNfZGF0YXR5cGVzL29hcnA0X2RhdGF0eXBlcy91dGlsL09hcnA0X2RhdGF0eXBlc1N3aXRjaC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhkMWYzNmUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9vYXJwc19kYXRhdHlwZXMvb2FycDRfZGF0YXR5cGVzL3V0aWwvT2FycDRfZGF0YXR5cGVzU3dpdGNoLmphdmEKQEAgLTAsMCArMSw0MzggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLnV0aWw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuU3dpdGNoOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLkFuZ3VsYXI7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuQXJ0X1NldF9Qb2ludDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5EaXN0YW5jZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5NZXRyaWM7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuTWlsbGlfQW1wOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2RvbWV0ZXJfTGluZWFyX0xlZnRfUmlnaHQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2RvbWV0ZXJfVGljczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT3BfU2V0X1BvaW50OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLlByb3hpX0xlZnRfUmlnaHQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuU3BlZWRfVGljczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5TcGVlZF9UaWNzX0xlZnRfUmlnaHQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuVmVsb2NpdHk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuVmVsb2NpdHlfQW5ndWxhcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5WZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuVmVsb2NpdHlfTGluZWFyOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBUaGUgPGI+U3dpdGNoPC9iPiBmb3IgdGhlIG1vZGVsJ3MgaW5oZXJpdGFuY2UgaGllcmFyY2h5LgorICogSXQgc3VwcG9ydHMgdGhlIGNhbGwge0BsaW5rICNkb1N3aXRjaChFT2JqZWN0KSBkb1N3aXRjaChvYmplY3QpfSB0byBpbnZva2UgdGhlIDxjb2RlPmNhc2VYWFg8L2NvZGU+IG1ldGhvZCBmb3IgZWFjaCBjbGFzcyBvZiB0aGUgbW9kZWwsCisgKiBzdGFydGluZyB3aXRoIHRoZSBhY3R1YWwgY2xhc3Mgb2YgdGhlIG9iamVjdAorICogYW5kIHByb2NlZWRpbmcgdXAgdGhlIGluaGVyaXRhbmNlIGhpZXJhcmNoeQorICogdW50aWwgYSBub24tbnVsbCByZXN1bHQgaXMgcmV0dXJuZWQsCisgKiB3aGljaCBpcyB0aGUgcmVzdWx0IG9mIHRoZSBzd2l0Y2guCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuT2FycDRfZGF0YXR5cGVzUGFja2FnZQorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgT2FycDRfZGF0YXR5cGVzU3dpdGNoPFQ+IGV4dGVuZHMgU3dpdGNoPFQ+IHsKKwkvKioKKwkgKiBUaGUgY2FjaGVkIG1vZGVsIHBhY2thZ2UKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UgbW9kZWxQYWNrYWdlOworCisJLyoqCisJICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgc3dpdGNoLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYXJwNF9kYXRhdHlwZXNTd2l0Y2goKSB7CisJCWlmIChtb2RlbFBhY2thZ2UgPT0gbnVsbCkgeworCQkJbW9kZWxQYWNrYWdlID0gT2FycDRfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0U7CisJCX0KKwl9CisKKwkvKioKKwkgKiBDaGVja3Mgd2hldGhlciB0aGlzIGlzIGEgc3dpdGNoIGZvciB0aGUgZ2l2ZW4gcGFja2FnZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbWV0ZXIgZVBhY2thZ2UgdGhlIHBhY2thZ2UgaW4gcXVlc3Rpb24uCisJICogQHJldHVybiB3aGV0aGVyIHRoaXMgaXMgYSBzd2l0Y2ggZm9yIHRoZSBnaXZlbiBwYWNrYWdlLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgYm9vbGVhbiBpc1N3aXRjaEZvcihFUGFja2FnZSBlUGFja2FnZSkgeworCQlyZXR1cm4gZVBhY2thZ2UgPT0gbW9kZWxQYWNrYWdlOworCX0KKworCS8qKgorCSAqIENhbGxzIDxjb2RlPmNhc2VYWFg8L2NvZGU+IGZvciBlYWNoIGNsYXNzIG9mIHRoZSBtb2RlbCB1bnRpbCBvbmUgcmV0dXJucyBhIG5vbiBudWxsIHJlc3VsdDsgaXQgeWllbGRzIHRoYXQgcmVzdWx0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgZmlyc3Qgbm9uLW51bGwgcmVzdWx0IHJldHVybmVkIGJ5IGEgPGNvZGU+Y2FzZVhYWDwvY29kZT4gY2FsbC4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIFQgZG9Td2l0Y2goaW50IGNsYXNzaWZpZXJJRCwgRU9iamVjdCB0aGVFT2JqZWN0KSB7CisJCXN3aXRjaCAoY2xhc3NpZmllcklEKSB7CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFlfTElORUFSOiB7CisJCQkJVmVsb2NpdHlfTGluZWFyIHZlbG9jaXR5X0xpbmVhciA9IChWZWxvY2l0eV9MaW5lYXIpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VWZWxvY2l0eV9MaW5lYXIodmVsb2NpdHlfTGluZWFyKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuQVJUX1NFVF9QT0lOVDogeworCQkJCUFydF9TZXRfUG9pbnQgYXJ0X1NldF9Qb2ludCA9IChBcnRfU2V0X1BvaW50KXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlQXJ0X1NldF9Qb2ludChhcnRfU2V0X1BvaW50KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFlfQU5HVUxBUjogeworCQkJCVZlbG9jaXR5X0FuZ3VsYXIgdmVsb2NpdHlfQW5ndWxhciA9IChWZWxvY2l0eV9Bbmd1bGFyKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlVmVsb2NpdHlfQW5ndWxhcih2ZWxvY2l0eV9Bbmd1bGFyKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuRElTVEFOQ0U6IHsKKwkJCQlEaXN0YW5jZSBkaXN0YW5jZSA9IChEaXN0YW5jZSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZURpc3RhbmNlKGRpc3RhbmNlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuTUVUUklDOiB7CisJCQkJTWV0cmljIG1ldHJpYyA9IChNZXRyaWMpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VNZXRyaWMobWV0cmljKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuQU5HVUxBUjogeworCQkJCUFuZ3VsYXIgYW5ndWxhciA9IChBbmd1bGFyKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlQW5ndWxhcihhbmd1bGFyKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT1BfU0VUX1BPSU5UOiB7CisJCQkJT3BfU2V0X1BvaW50IG9wX1NldF9Qb2ludCA9IChPcF9TZXRfUG9pbnQpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VPcF9TZXRfUG9pbnQob3BfU2V0X1BvaW50KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuU1BFRURfVElDU19MRUZUX1JJR0hUOiB7CisJCQkJU3BlZWRfVGljc19MZWZ0X1JpZ2h0IHNwZWVkX1RpY3NfTGVmdF9SaWdodCA9IChTcGVlZF9UaWNzX0xlZnRfUmlnaHQpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VTcGVlZF9UaWNzX0xlZnRfUmlnaHQoc3BlZWRfVGljc19MZWZ0X1JpZ2h0KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuU1BFRURfVElDUzogeworCQkJCVNwZWVkX1RpY3Mgc3BlZWRfVGljcyA9IChTcGVlZF9UaWNzKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlU3BlZWRfVGljcyhzcGVlZF9UaWNzKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVURVJfVElDUzogeworCQkJCU9kb21ldGVyX1RpY3Mgb2RvbWV0ZXJfVGljcyA9IChPZG9tZXRlcl9UaWNzKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlT2RvbWV0ZXJfVGljcyhvZG9tZXRlcl9UaWNzKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVURVJfVElDU19MRUZUX1JJR0hUOiB7CisJCQkJT2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0IG9kb21ldGVyX1RpY3NfTGVmdF9SaWdodCA9IChPZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHQpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VPZG9tZXRlcl9UaWNzX0xlZnRfUmlnaHQob2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuUFJPWElfTEVGVF9SSUdIVDogeworCQkJCVByb3hpX0xlZnRfUmlnaHQgcHJveGlfTGVmdF9SaWdodCA9IChQcm94aV9MZWZ0X1JpZ2h0KXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlUHJveGlfTGVmdF9SaWdodChwcm94aV9MZWZ0X1JpZ2h0KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuTUlMTElfQU1QOiB7CisJCQkJTWlsbGlfQW1wIG1pbGxpX0FtcCA9IChNaWxsaV9BbXApdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VNaWxsaV9BbXAobWlsbGlfQW1wKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuT0RPTUVURVJfTElORUFSX0xFRlRfUklHSFQ6IHsKKwkJCQlPZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodCBvZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodCA9IChPZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodCl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZU9kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0KG9kb21ldGVyX0xpbmVhcl9MZWZ0X1JpZ2h0KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFlfQU5HVUxBUl9MRUZUX1JJR0hUOiB7CisJCQkJVmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0IHZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodCA9IChWZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHQpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VWZWxvY2l0eV9Bbmd1bGFyX0xlZnRfUmlnaHQodmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuVkVMT0NJVFk6IHsKKwkJCQlWZWxvY2l0eSB2ZWxvY2l0eSA9IChWZWxvY2l0eSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZVZlbG9jaXR5KHZlbG9jaXR5KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQlkZWZhdWx0OiByZXR1cm4gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCX0KKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5WZWxvY2l0eSBMaW5lYXI8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5WZWxvY2l0eSBMaW5lYXI8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VWZWxvY2l0eV9MaW5lYXIoVmVsb2NpdHlfTGluZWFyIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5BcnQgU2V0IFBvaW50PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+QXJ0IFNldCBQb2ludDwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUFydF9TZXRfUG9pbnQoQXJ0X1NldF9Qb2ludCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+VmVsb2NpdHkgQW5ndWxhcjwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlZlbG9jaXR5IEFuZ3VsYXI8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VWZWxvY2l0eV9Bbmd1bGFyKFZlbG9jaXR5X0FuZ3VsYXIgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkRpc3RhbmNlPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+RGlzdGFuY2U8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VEaXN0YW5jZShEaXN0YW5jZSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TWV0cmljPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TWV0cmljPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlTWV0cmljKE1ldHJpYyBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+QW5ndWxhcjwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkFuZ3VsYXI8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VBbmd1bGFyKEFuZ3VsYXIgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPk9wIFNldCBQb2ludDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPk9wIFNldCBQb2ludDwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZU9wX1NldF9Qb2ludChPcF9TZXRfUG9pbnQgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlNwZWVkIFRpY3MgTGVmdCBSaWdodDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlNwZWVkIFRpY3MgTGVmdCBSaWdodDwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZVNwZWVkX1RpY3NfTGVmdF9SaWdodChTcGVlZF9UaWNzX0xlZnRfUmlnaHQgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlNwZWVkIFRpY3M8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5TcGVlZCBUaWNzPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlU3BlZWRfVGljcyhTcGVlZF9UaWNzIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5PZG9tZXRlciBUaWNzPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+T2RvbWV0ZXIgVGljczwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZU9kb21ldGVyX1RpY3MoT2RvbWV0ZXJfVGljcyBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+T2RvbWV0ZXIgVGljcyBMZWZ0IFJpZ2h0PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+T2RvbWV0ZXIgVGljcyBMZWZ0IFJpZ2h0PC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlT2RvbWV0ZXJfVGljc19MZWZ0X1JpZ2h0KE9kb21ldGVyX1RpY3NfTGVmdF9SaWdodCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UHJveGkgTGVmdCBSaWdodDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlByb3hpIExlZnQgUmlnaHQ8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VQcm94aV9MZWZ0X1JpZ2h0KFByb3hpX0xlZnRfUmlnaHQgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPk1pbGxpIEFtcDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPk1pbGxpIEFtcDwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZU1pbGxpX0FtcChNaWxsaV9BbXAgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPk9kb21ldGVyIExpbmVhciBMZWZ0IFJpZ2h0PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+T2RvbWV0ZXIgTGluZWFyIExlZnQgUmlnaHQ8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VPZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodChPZG9tZXRlcl9MaW5lYXJfTGVmdF9SaWdodCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+VmVsb2NpdHkgQW5ndWxhciBMZWZ0IFJpZ2h0PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+VmVsb2NpdHkgQW5ndWxhciBMZWZ0IFJpZ2h0PC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlVmVsb2NpdHlfQW5ndWxhcl9MZWZ0X1JpZ2h0KFZlbG9jaXR5X0FuZ3VsYXJfTGVmdF9SaWdodCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+VmVsb2NpdHk8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5WZWxvY2l0eTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZVZlbG9jaXR5KFZlbG9jaXR5IG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5FT2JqZWN0PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2gsIGJ1dCB0aGlzIGlzIHRoZSBsYXN0IGNhc2UgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkVPYmplY3Q8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBUIGRlZmF1bHRDYXNlKEVPYmplY3Qgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworfSAvLyBPYXJwNF9kYXRhdHlwZXNTd2l0Y2gKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvQ09WQVJJQU5DRV9UWVBFLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0NPVkFSSUFOQ0VfVFlQRS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBiZDUyMGEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0NPVkFSSUFOQ0VfVFlQRS5qYXZhCkBAIC0wLDAgKzEsMjU4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlczsKKworaW1wb3J0IGphdmEudXRpbC5BcnJheXM7CitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb25zOworaW1wb3J0IGphdmEudXRpbC5MaXN0OworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVudW1lcmF0b3I7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIGxpdGVyYWxzIG9mIHRoZSBlbnVtZXJhdGlvbiAnPGVtPjxiPkNPVkFSSUFOQ0UgVFlQRTwvYj48L2VtPicsCisgKiBhbmQgdXRpbGl0eSBtZXRob2RzIGZvciB3b3JraW5nIHdpdGggdGhlbS4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRDT1ZBUklBTkNFX1RZUEUoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBlbnVtIENPVkFSSUFOQ0VfVFlQRSBpbXBsZW1lbnRzIEVudW1lcmF0b3IgeworCS8qKgorCSAqIFRoZSAnPGVtPjxiPkNPVkFSSUFOQ0UgVFlQRSBVTktOT1dOPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI0NPVkFSSUFOQ0VfVFlQRV9VTktOT1dOX1ZBTFVFCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJQ09WQVJJQU5DRV9UWVBFX1VOS05PV04oMCwgIkNPVkFSSUFOQ0VfVFlQRV9VTktOT1dOIiwgIkNPVkFSSUFOQ0VfVFlQRV9VTktOT1dOIiksCisKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5DT1ZBUklBTkNFIFRZUEUgQVBQUk9YSU1BVEVEPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI0NPVkFSSUFOQ0VfVFlQRV9BUFBST1hJTUFURURfVkFMVUUKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlDT1ZBUklBTkNFX1RZUEVfQVBQUk9YSU1BVEVEKDEsICJDT1ZBUklBTkNFX1RZUEVfQVBQUk9YSU1BVEVEIiwgIkNPVkFSSUFOQ0VfVFlQRV9BUFBST1hJTUFURUQiKSwKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPkNPVkFSSUFOQ0UgVFlQRSBESUFHT05BTCBLTk9XTjwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNfQ09WQVJJQU5DRV9UWVBFX0RJQUdPTkFMX0tOT1dOX1ZBTFVFCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJX0NPVkFSSUFOQ0VfVFlQRV9ESUFHT05BTF9LTk9XTigyLCAiX0NPVkFSSUFOQ0VfVFlQRV9ESUFHT05BTF9LTk9XTiIsICJfQ09WQVJJQU5DRV9UWVBFX0RJQUdPTkFMX0tOT1dOIiksCisKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5DT1ZBUklBTkNFIFRZUEUgS05PV048L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjQ09WQVJJQU5DRV9UWVBFX0tOT1dOX1ZBTFVFCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJQ09WQVJJQU5DRV9UWVBFX0tOT1dOKDMsICJDT1ZBUklBTkNFX1RZUEVfS05PV04iLCAiQ09WQVJJQU5DRV9UWVBFX0tOT1dOIik7CisKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5DT1ZBUklBTkNFIFRZUEUgVU5LTk9XTjwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mICc8ZW0+PGI+Q09WQVJJQU5DRSBUWVBFIFVOS05PV048L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0IGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI0NPVkFSSUFOQ0VfVFlQRV9VTktOT1dOCisJICogQG1vZGVsCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgQ09WQVJJQU5DRV9UWVBFX1VOS05PV05fVkFMVUUgPSAwOworCisJLyoqCisJICogVGhlICc8ZW0+PGI+Q09WQVJJQU5DRSBUWVBFIEFQUFJPWElNQVRFRDwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mICc8ZW0+PGI+Q09WQVJJQU5DRSBUWVBFIEFQUFJPWElNQVRFRDwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjQ09WQVJJQU5DRV9UWVBFX0FQUFJPWElNQVRFRAorCSAqIEBtb2RlbAorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgZmluYWwgaW50IENPVkFSSUFOQ0VfVFlQRV9BUFBST1hJTUFURURfVkFMVUUgPSAxOworCisJLyoqCisJICogVGhlICc8ZW0+PGI+Q09WQVJJQU5DRSBUWVBFIERJQUdPTkFMIEtOT1dOPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgJzxlbT48Yj5DT1ZBUklBTkNFIFRZUEUgRElBR09OQUwgS05PV048L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0IGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI19DT1ZBUklBTkNFX1RZUEVfRElBR09OQUxfS05PV04KKwkgKiBAbW9kZWwgYW5ub3RhdGlvbj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCBvcmlnaW5hbE5hbWU9JyBDT1ZBUklBTkNFX1RZUEVfRElBR09OQUxfS05PV04nIgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgZmluYWwgaW50IF9DT1ZBUklBTkNFX1RZUEVfRElBR09OQUxfS05PV05fVkFMVUUgPSAyOworCisJLyoqCisJICogVGhlICc8ZW0+PGI+Q09WQVJJQU5DRSBUWVBFIEtOT1dOPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgJzxlbT48Yj5DT1ZBUklBTkNFIFRZUEUgS05PV048L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0IGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI0NPVkFSSUFOQ0VfVFlQRV9LTk9XTgorCSAqIEBtb2RlbAorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgZmluYWwgaW50IENPVkFSSUFOQ0VfVFlQRV9LTk9XTl9WQUxVRSA9IDM7CisKKwkvKioKKwkgKiBBbiBhcnJheSBvZiBhbGwgdGhlICc8ZW0+PGI+Q09WQVJJQU5DRSBUWVBFPC9iPjwvZW0+JyBlbnVtZXJhdG9ycy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIHN0YXRpYyBmaW5hbCBDT1ZBUklBTkNFX1RZUEVbXSBWQUxVRVNfQVJSQVkgPQorCQkJbmV3IENPVkFSSUFOQ0VfVFlQRVtdIHsKKwkJCUNPVkFSSUFOQ0VfVFlQRV9VTktOT1dOLAorCQkJQ09WQVJJQU5DRV9UWVBFX0FQUFJPWElNQVRFRCwKKwkJCV9DT1ZBUklBTkNFX1RZUEVfRElBR09OQUxfS05PV04sCisJCQlDT1ZBUklBTkNFX1RZUEVfS05PV04sCisJCX07CisKKwkvKioKKwkgKiBBIHB1YmxpYyByZWFkLW9ubHkgbGlzdCBvZiBhbGwgdGhlICc8ZW0+PGI+Q09WQVJJQU5DRSBUWVBFPC9iPjwvZW0+JyBlbnVtZXJhdG9ycy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIExpc3Q8Q09WQVJJQU5DRV9UWVBFPiBWQUxVRVMgPSBDb2xsZWN0aW9ucy51bm1vZGlmaWFibGVMaXN0KEFycmF5cy5hc0xpc3QoVkFMVUVTX0FSUkFZKSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSAnPGVtPjxiPkNPVkFSSUFOQ0UgVFlQRTwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbGl0ZXJhbCB2YWx1ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIENPVkFSSUFOQ0VfVFlQRSBnZXQoU3RyaW5nIGxpdGVyYWwpIHsKKwkJZm9yIChpbnQgaSA9IDA7IGkgPCBWQUxVRVNfQVJSQVkubGVuZ3RoOyArK2kpIHsKKwkJCUNPVkFSSUFOQ0VfVFlQRSByZXN1bHQgPSBWQUxVRVNfQVJSQVlbaV07CisJCQlpZiAocmVzdWx0LnRvU3RyaW5nKCkuZXF1YWxzKGxpdGVyYWwpKSB7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJfQorCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSAnPGVtPjxiPkNPVkFSSUFOQ0UgVFlQRTwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIENPVkFSSUFOQ0VfVFlQRSBnZXRCeU5hbWUoU3RyaW5nIG5hbWUpIHsKKwkJZm9yIChpbnQgaSA9IDA7IGkgPCBWQUxVRVNfQVJSQVkubGVuZ3RoOyArK2kpIHsKKwkJCUNPVkFSSUFOQ0VfVFlQRSByZXN1bHQgPSBWQUxVRVNfQVJSQVlbaV07CisJCQlpZiAocmVzdWx0LmdldE5hbWUoKS5lcXVhbHMobmFtZSkpIHsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQl9CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlICc8ZW0+PGI+Q09WQVJJQU5DRSBUWVBFPC9iPjwvZW0+JyBsaXRlcmFsIHdpdGggdGhlIHNwZWNpZmllZCBpbnRlZ2VyIHZhbHVlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgQ09WQVJJQU5DRV9UWVBFIGdldChpbnQgdmFsdWUpIHsKKwkJc3dpdGNoICh2YWx1ZSkgeworCQkJY2FzZSBDT1ZBUklBTkNFX1RZUEVfVU5LTk9XTl9WQUxVRTogcmV0dXJuIENPVkFSSUFOQ0VfVFlQRV9VTktOT1dOOworCQkJY2FzZSBDT1ZBUklBTkNFX1RZUEVfQVBQUk9YSU1BVEVEX1ZBTFVFOiByZXR1cm4gQ09WQVJJQU5DRV9UWVBFX0FQUFJPWElNQVRFRDsKKwkJCWNhc2UgX0NPVkFSSUFOQ0VfVFlQRV9ESUFHT05BTF9LTk9XTl9WQUxVRTogcmV0dXJuIF9DT1ZBUklBTkNFX1RZUEVfRElBR09OQUxfS05PV047CisJCQljYXNlIENPVkFSSUFOQ0VfVFlQRV9LTk9XTl9WQUxVRTogcmV0dXJuIENPVkFSSUFOQ0VfVFlQRV9LTk9XTjsKKwkJfQorCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIGZpbmFsIGludCB2YWx1ZTsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgZmluYWwgU3RyaW5nIG5hbWU7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIGZpbmFsIFN0cmluZyBsaXRlcmFsOworCisJLyoqCisJICogT25seSB0aGlzIGNsYXNzIGNhbiBjb25zdHJ1Y3QgaW5zdGFuY2VzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgQ09WQVJJQU5DRV9UWVBFKGludCB2YWx1ZSwgU3RyaW5nIG5hbWUsIFN0cmluZyBsaXRlcmFsKSB7CisJCXRoaXMudmFsdWUgPSB2YWx1ZTsKKwkJdGhpcy5uYW1lID0gbmFtZTsKKwkJdGhpcy5saXRlcmFsID0gbGl0ZXJhbDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgaW50IGdldFZhbHVlKCkgeworCSAgcmV0dXJuIHZhbHVlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTdHJpbmcgZ2V0TmFtZSgpIHsKKwkgIHJldHVybiBuYW1lOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTdHJpbmcgZ2V0TGl0ZXJhbCgpIHsKKwkgIHJldHVybiBsaXRlcmFsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIGxpdGVyYWwgdmFsdWUgb2YgdGhlIGVudW1lcmF0b3IsIHdoaWNoIGlzIGl0cyBzdHJpbmcgcmVwcmVzZW50YXRpb24uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJcmV0dXJuIGxpdGVyYWw7CisJfQorCit9IC8vIENPVkFSSUFOQ0VfVFlQRQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9DYW1lcmFJbmZvLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0NhbWVyYUluZm8uamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNTc3YTQ2Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9DYW1lcmFJbmZvLmphdmEKQEAgLTAsMCArMSwyNzEgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q2FtZXJhIEluZm88L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FtZXJhSW5mbyNnZXRIZWFkZXIgPGVtPkhlYWRlcjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FtZXJhSW5mbyNnZXRIZWlnaHQgPGVtPkhlaWdodDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FtZXJhSW5mbyNnZXRXaWR0aCA8ZW0+V2lkdGg8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNhbWVyYUluZm8jZ2V0RGlzdG9yc2lvbl9tb2RlbCA8ZW0+RGlzdG9yc2lvbiBtb2RlbDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FtZXJhSW5mbyNnZXREIDxlbT5EPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYW1lcmFJbmZvI2dldEsgPGVtPks8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNhbWVyYUluZm8jZ2V0UiA8ZW0+UjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FtZXJhSW5mbyNnZXRQIDxlbT5QPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYW1lcmFJbmZvI2dldEJpbm5pbmdfeCA8ZW0+QmlubmluZyB4PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYW1lcmFJbmZvI2dldEJpbm5pbmdfeSA8ZW0+QmlubmluZyB5PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYW1lcmFJbmZvI2dldFJvaSA8ZW0+Um9pPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRDYW1lcmFJbmZvKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIENhbWVyYUluZm8gZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRIZWFkZXIoSGVhZGVyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0Q2FtZXJhSW5mb19IZWFkZXIoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlIZWFkZXIgZ2V0SGVhZGVyKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYW1lcmFJbmZvI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldEhlYWRlcigpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0SGVhZGVyKEhlYWRlciB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5IZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkhlaWdodDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+SGVpZ2h0PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRIZWlnaHQoVUludDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0Q2FtZXJhSW5mb19IZWlnaHQoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRIZWlnaHQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNhbWVyYUluZm8jZ2V0SGVpZ2h0IDxlbT5IZWlnaHQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkhlaWdodDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0SGVpZ2h0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRIZWlnaHQoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPldpZHRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5XaWR0aDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+V2lkdGg8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFdpZHRoKFVJbnQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldENhbWVyYUluZm9fV2lkdGgoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRXaWR0aCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FtZXJhSW5mbyNnZXRXaWR0aCA8ZW0+V2lkdGg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPldpZHRoPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRXaWR0aCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0V2lkdGgoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkRpc3RvcnNpb24gbW9kZWw8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkRpc3RvcnNpb24gbW9kZWw8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkRpc3RvcnNpb24gbW9kZWw8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldERpc3RvcnNpb25fbW9kZWwoU3RyaW5nKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0Q2FtZXJhSW5mb19EaXN0b3JzaW9uX21vZGVsKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0cmluZyIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0RGlzdG9yc2lvbl9tb2RlbCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FtZXJhSW5mbyNnZXREaXN0b3JzaW9uX21vZGVsIDxlbT5EaXN0b3JzaW9uIG1vZGVsPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5EaXN0b3JzaW9uIG1vZGVsPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXREaXN0b3JzaW9uX21vZGVsKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXREaXN0b3JzaW9uX21vZGVsKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5EPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBUaGUgbGlzdCBjb250ZW50cyBhcmUgb2YgdHlwZSB7QGxpbmsgamF2YS5sYW5nLk9iamVjdH0uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5EPC9lbT4nIGF0dHJpYnV0ZSBsaXN0IGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkQ8L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRDYW1lcmFJbmZvX0QoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NCIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUVMaXN0PE9iamVjdD4gZ2V0RCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+SzwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogVGhlIGxpc3QgY29udGVudHMgYXJlIG9mIHR5cGUge0BsaW5rIGphdmEubGFuZy5PYmplY3R9LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+SzwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5LPC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0Q2FtZXJhSW5mb19LKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0NjQiIGxvd2VyPSI5IiB1cHBlcj0iOSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUVMaXN0PE9iamVjdD4gZ2V0SygpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+UjwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogVGhlIGxpc3QgY29udGVudHMgYXJlIG9mIHR5cGUge0BsaW5rIGphdmEubGFuZy5PYmplY3R9LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+UjwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5SPC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0Q2FtZXJhSW5mb19SKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0NjQiIGxvd2VyPSI5IiB1cHBlcj0iOSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUVMaXN0PE9iamVjdD4gZ2V0UigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+UDwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogVGhlIGxpc3QgY29udGVudHMgYXJlIG9mIHR5cGUge0BsaW5rIGphdmEubGFuZy5PYmplY3R9LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+UDwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5QPC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0Q2FtZXJhSW5mb19QKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0NjQiIGxvd2VyPSIxMiIgdXBwZXI9IjEyIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUxpc3Q8T2JqZWN0PiBnZXRQKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CaW5uaW5nIHg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkJpbm5pbmcgeDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+QmlubmluZyB4PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRCaW5uaW5nX3goVUludDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0Q2FtZXJhSW5mb19CaW5uaW5nX3goKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRCaW5uaW5nX3goKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNhbWVyYUluZm8jZ2V0QmlubmluZ194IDxlbT5CaW5uaW5nIHg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkJpbm5pbmcgeDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0QmlubmluZ194KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRCaW5uaW5nX3goT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkJpbm5pbmcgeTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+QmlubmluZyB5PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5CaW5uaW5nIHk8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldEJpbm5pbmdfeShVSW50MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRDYW1lcmFJbmZvX0Jpbm5pbmdfeSgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldEJpbm5pbmdfeSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FtZXJhSW5mbyNnZXRCaW5uaW5nX3kgPGVtPkJpbm5pbmcgeTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+QmlubmluZyB5PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRCaW5uaW5nX3koKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEJpbm5pbmdfeShPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+Um9pPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5Sb2k8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlJvaTwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0Um9pKFJlZ2lvbk9mSW50ZXJlc3QpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRDYW1lcmFJbmZvX1JvaSgpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCVJlZ2lvbk9mSW50ZXJlc3QgZ2V0Um9pKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYW1lcmFJbmZvI2dldFJvaSA8ZW0+Um9pPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5Sb2k8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldFJvaSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0Um9pKFJlZ2lvbk9mSW50ZXJlc3QgdmFsdWUpOworCit9IC8vIENhbWVyYUluZm8KZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvQ2FyTGlrZU9kb21ldHJ5LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0Nhckxpa2VPZG9tZXRyeS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI0ZWQ4OWYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0Nhckxpa2VPZG9tZXRyeS5qYXZhCkBAIC0wLDAgKzEsMTgwIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q2FyIExpa2UgT2RvbWV0cnk8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FyTGlrZU9kb21ldHJ5I2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYXJMaWtlT2RvbWV0cnkjZ2V0U3RlZXJpbmdfYW5nbGUgPGVtPlN0ZWVyaW5nIGFuZ2xlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYXJMaWtlT2RvbWV0cnkjZ2V0TGVmdF9yZWFyX3doZWVsX2Rpc3RhbmNlIDxlbT5MZWZ0IHJlYXIgd2hlZWwgZGlzdGFuY2U8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNhckxpa2VPZG9tZXRyeSNnZXRSaWdodF9yZWFyX3doZWVsX2Rpc3RhbmNlIDxlbT5SaWdodCByZWFyIHdoZWVsIGRpc3RhbmNlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYXJMaWtlT2RvbWV0cnkjZ2V0UmlnaHRfcmVhcl93aGVlbF92ZWxvY2l0eSA8ZW0+UmlnaHQgcmVhciB3aGVlbCB2ZWxvY2l0eTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FyTGlrZU9kb21ldHJ5I2dldExlZnRfcmVhcl93aGVlbF92ZWxvY2l0eSA8ZW0+TGVmdCByZWFyIHdoZWVsIHZlbG9jaXR5PC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRDYXJMaWtlT2RvbWV0cnkoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgQ2FyTGlrZU9kb21ldHJ5IGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0SGVhZGVyKEhlYWRlcikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldENhckxpa2VPZG9tZXRyeV9IZWFkZXIoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlIZWFkZXIgZ2V0SGVhZGVyKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYXJMaWtlT2RvbWV0cnkjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0SGVhZGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRIZWFkZXIoSGVhZGVyIHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlN0ZWVyaW5nIGFuZ2xlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5TdGVlcmluZyBhbmdsZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+U3RlZXJpbmcgYW5nbGU8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFN0ZWVyaW5nX2FuZ2xlKEZsb2F0NjQpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRDYXJMaWtlT2RvbWV0cnlfU3RlZXJpbmdfYW5nbGUoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0U3RlZXJpbmdfYW5nbGUoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNhckxpa2VPZG9tZXRyeSNnZXRTdGVlcmluZ19hbmdsZSA8ZW0+U3RlZXJpbmcgYW5nbGU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlN0ZWVyaW5nIGFuZ2xlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRTdGVlcmluZ19hbmdsZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0U3RlZXJpbmdfYW5nbGUoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkxlZnQgcmVhciB3aGVlbCBkaXN0YW5jZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+TGVmdCByZWFyIHdoZWVsIGRpc3RhbmNlPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5MZWZ0IHJlYXIgd2hlZWwgZGlzdGFuY2U8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldExlZnRfcmVhcl93aGVlbF9kaXN0YW5jZShGbG9hdDY0KQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0Q2FyTGlrZU9kb21ldHJ5X0xlZnRfcmVhcl93aGVlbF9kaXN0YW5jZSgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDY0IiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRMZWZ0X3JlYXJfd2hlZWxfZGlzdGFuY2UoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNhckxpa2VPZG9tZXRyeSNnZXRMZWZ0X3JlYXJfd2hlZWxfZGlzdGFuY2UgPGVtPkxlZnQgcmVhciB3aGVlbCBkaXN0YW5jZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TGVmdCByZWFyIHdoZWVsIGRpc3RhbmNlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRMZWZ0X3JlYXJfd2hlZWxfZGlzdGFuY2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldExlZnRfcmVhcl93aGVlbF9kaXN0YW5jZShPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+UmlnaHQgcmVhciB3aGVlbCBkaXN0YW5jZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+UmlnaHQgcmVhciB3aGVlbCBkaXN0YW5jZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+UmlnaHQgcmVhciB3aGVlbCBkaXN0YW5jZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0UmlnaHRfcmVhcl93aGVlbF9kaXN0YW5jZShGbG9hdDY0KQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0Q2FyTGlrZU9kb21ldHJ5X1JpZ2h0X3JlYXJfd2hlZWxfZGlzdGFuY2UoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0UmlnaHRfcmVhcl93aGVlbF9kaXN0YW5jZSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FyTGlrZU9kb21ldHJ5I2dldFJpZ2h0X3JlYXJfd2hlZWxfZGlzdGFuY2UgPGVtPlJpZ2h0IHJlYXIgd2hlZWwgZGlzdGFuY2U8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlJpZ2h0IHJlYXIgd2hlZWwgZGlzdGFuY2U8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFJpZ2h0X3JlYXJfd2hlZWxfZGlzdGFuY2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFJpZ2h0X3JlYXJfd2hlZWxfZGlzdGFuY2UoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlJpZ2h0IHJlYXIgd2hlZWwgdmVsb2NpdHk8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlJpZ2h0IHJlYXIgd2hlZWwgdmVsb2NpdHk8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlJpZ2h0IHJlYXIgd2hlZWwgdmVsb2NpdHk8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFJpZ2h0X3JlYXJfd2hlZWxfdmVsb2NpdHkoRmxvYXQ2NCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldENhckxpa2VPZG9tZXRyeV9SaWdodF9yZWFyX3doZWVsX3ZlbG9jaXR5KCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0NjQiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFJpZ2h0X3JlYXJfd2hlZWxfdmVsb2NpdHkoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNhckxpa2VPZG9tZXRyeSNnZXRSaWdodF9yZWFyX3doZWVsX3ZlbG9jaXR5IDxlbT5SaWdodCByZWFyIHdoZWVsIHZlbG9jaXR5PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5SaWdodCByZWFyIHdoZWVsIHZlbG9jaXR5PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRSaWdodF9yZWFyX3doZWVsX3ZlbG9jaXR5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRSaWdodF9yZWFyX3doZWVsX3ZlbG9jaXR5KE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5MZWZ0IHJlYXIgd2hlZWwgdmVsb2NpdHk8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkxlZnQgcmVhciB3aGVlbCB2ZWxvY2l0eTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+TGVmdCByZWFyIHdoZWVsIHZlbG9jaXR5PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRMZWZ0X3JlYXJfd2hlZWxfdmVsb2NpdHkoRmxvYXQ2NCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldENhckxpa2VPZG9tZXRyeV9MZWZ0X3JlYXJfd2hlZWxfdmVsb2NpdHkoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0TGVmdF9yZWFyX3doZWVsX3ZlbG9jaXR5KCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYXJMaWtlT2RvbWV0cnkjZ2V0TGVmdF9yZWFyX3doZWVsX3ZlbG9jaXR5IDxlbT5MZWZ0IHJlYXIgd2hlZWwgdmVsb2NpdHk8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkxlZnQgcmVhciB3aGVlbCB2ZWxvY2l0eTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0TGVmdF9yZWFyX3doZWVsX3ZlbG9jaXR5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRMZWZ0X3JlYXJfd2hlZWxfdmVsb2NpdHkoT2JqZWN0IHZhbHVlKTsKKworfSAvLyBDYXJMaWtlT2RvbWV0cnkKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvQ2hhbm5lbEZsb2F0MzIuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvQ2hhbm5lbEZsb2F0MzIuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNTVlMDUxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9DaGFubmVsRmxvYXQzMi5qYXZhCkBAIC0wLDAgKzEsNjYgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5DaGFubmVsIEZsb2F0MzI8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2hhbm5lbEZsb2F0MzIjZ2V0TmFtZSA8ZW0+TmFtZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2hhbm5lbEZsb2F0MzIjZ2V0VmFsdWVzIDxlbT5WYWx1ZXM8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldENoYW5uZWxGbG9hdDMyKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIENoYW5uZWxGbG9hdDMyIGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TmFtZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+TmFtZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+TmFtZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0TmFtZShTdHJpbmcpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRDaGFubmVsRmxvYXQzMl9OYW1lKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0cmluZyIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0TmFtZSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2hhbm5lbEZsb2F0MzIjZ2V0TmFtZSA8ZW0+TmFtZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TmFtZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0TmFtZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0TmFtZShPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VmFsdWVzPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBUaGUgbGlzdCBjb250ZW50cyBhcmUgb2YgdHlwZSB7QGxpbmsgamF2YS5sYW5nLk9iamVjdH0uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5WYWx1ZXM8L2VtPicgYXR0cmlidXRlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+VmFsdWVzPC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0Q2hhbm5lbEZsb2F0MzJfVmFsdWVzKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0MzIiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFTGlzdDxPYmplY3Q+IGdldFZhbHVlcygpOworCit9IC8vIENoYW5uZWxGbG9hdDMyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0NvbXByZXNzZWRJbWFnZS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Db21wcmVzc2VkSW1hZ2UuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lOWY2MzVjCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Db21wcmVzc2VkSW1hZ2UuamF2YQpAQCAtMCwwICsxLDkzIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5IZWFkZXI7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNvbXByZXNzZWQgSW1hZ2U8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ29tcHJlc3NlZEltYWdlI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Db21wcmVzc2VkSW1hZ2UjZ2V0Rm9ybWF0IDxlbT5Gb3JtYXQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNvbXByZXNzZWRJbWFnZSNnZXREYXRhIDxlbT5EYXRhPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRDb21wcmVzc2VkSW1hZ2UoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgQ29tcHJlc3NlZEltYWdlIGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0SGVhZGVyKEhlYWRlcikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldENvbXByZXNzZWRJbWFnZV9IZWFkZXIoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlIZWFkZXIgZ2V0SGVhZGVyKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Db21wcmVzc2VkSW1hZ2UjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0SGVhZGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRIZWFkZXIoSGVhZGVyIHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkZvcm1hdDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+Rm9ybWF0PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5Gb3JtYXQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldEZvcm1hdChTdHJpbmcpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRDb21wcmVzc2VkSW1hZ2VfRm9ybWF0KCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0cmluZyIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0Rm9ybWF0KCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Db21wcmVzc2VkSW1hZ2UjZ2V0Rm9ybWF0IDxlbT5Gb3JtYXQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkZvcm1hdDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0Rm9ybWF0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRGb3JtYXQoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkRhdGE8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIHtAbGluayBqYXZhLmxhbmcuT2JqZWN0fS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkRhdGE8L2VtPicgYXR0cmlidXRlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+RGF0YTwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldENvbXByZXNzZWRJbWFnZV9EYXRhKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQ4IiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUxpc3Q8T2JqZWN0PiBnZXREYXRhKCk7CisKK30gLy8gQ29tcHJlc3NlZEltYWdlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0RpZmZlcmVudGlhbE9kb21ldHJ5LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0RpZmZlcmVudGlhbE9kb21ldHJ5LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmVjZDNmMAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvRGlmZmVyZW50aWFsT2RvbWV0cnkuamF2YQpAQCAtMCwwICsxLDE1NCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5IZWFkZXI7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkRpZmZlcmVudGlhbCBPZG9tZXRyeTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5EaWZmZXJlbnRpYWxPZG9tZXRyeSNnZXRIZWFkZXIgPGVtPkhlYWRlcjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuRGlmZmVyZW50aWFsT2RvbWV0cnkjZ2V0UmlnaHRfZGlzdGFuY2UgPGVtPlJpZ2h0IGRpc3RhbmNlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5EaWZmZXJlbnRpYWxPZG9tZXRyeSNnZXRMZWZ0X2Rpc3RhbmNlIDxlbT5MZWZ0IGRpc3RhbmNlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5EaWZmZXJlbnRpYWxPZG9tZXRyeSNnZXRMZWZ0X3ZlbG9jaXR5IDxlbT5MZWZ0IHZlbG9jaXR5PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5EaWZmZXJlbnRpYWxPZG9tZXRyeSNnZXRSaWdodF92ZWxvY2l0eSA8ZW0+UmlnaHQgdmVsb2NpdHk8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldERpZmZlcmVudGlhbE9kb21ldHJ5KCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIERpZmZlcmVudGlhbE9kb21ldHJ5IGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0SGVhZGVyKEhlYWRlcikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldERpZmZlcmVudGlhbE9kb21ldHJ5X0hlYWRlcigpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUhlYWRlciBnZXRIZWFkZXIoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkRpZmZlcmVudGlhbE9kb21ldHJ5I2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldEhlYWRlcigpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0SGVhZGVyKEhlYWRlciB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5SaWdodCBkaXN0YW5jZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+UmlnaHQgZGlzdGFuY2U8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlJpZ2h0IGRpc3RhbmNlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRSaWdodF9kaXN0YW5jZShGbG9hdDY0KQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0RGlmZmVyZW50aWFsT2RvbWV0cnlfUmlnaHRfZGlzdGFuY2UoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0UmlnaHRfZGlzdGFuY2UoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkRpZmZlcmVudGlhbE9kb21ldHJ5I2dldFJpZ2h0X2Rpc3RhbmNlIDxlbT5SaWdodCBkaXN0YW5jZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+UmlnaHQgZGlzdGFuY2U8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFJpZ2h0X2Rpc3RhbmNlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRSaWdodF9kaXN0YW5jZShPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TGVmdCBkaXN0YW5jZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+TGVmdCBkaXN0YW5jZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+TGVmdCBkaXN0YW5jZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0TGVmdF9kaXN0YW5jZShGbG9hdDY0KQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0RGlmZmVyZW50aWFsT2RvbWV0cnlfTGVmdF9kaXN0YW5jZSgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDY0IiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRMZWZ0X2Rpc3RhbmNlKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5EaWZmZXJlbnRpYWxPZG9tZXRyeSNnZXRMZWZ0X2Rpc3RhbmNlIDxlbT5MZWZ0IGRpc3RhbmNlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5MZWZ0IGRpc3RhbmNlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRMZWZ0X2Rpc3RhbmNlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRMZWZ0X2Rpc3RhbmNlKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5MZWZ0IHZlbG9jaXR5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5MZWZ0IHZlbG9jaXR5PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5MZWZ0IHZlbG9jaXR5PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRMZWZ0X3ZlbG9jaXR5KEZsb2F0NjQpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXREaWZmZXJlbnRpYWxPZG9tZXRyeV9MZWZ0X3ZlbG9jaXR5KCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0NjQiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldExlZnRfdmVsb2NpdHkoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkRpZmZlcmVudGlhbE9kb21ldHJ5I2dldExlZnRfdmVsb2NpdHkgPGVtPkxlZnQgdmVsb2NpdHk8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkxlZnQgdmVsb2NpdHk8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldExlZnRfdmVsb2NpdHkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldExlZnRfdmVsb2NpdHkoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlJpZ2h0IHZlbG9jaXR5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5SaWdodCB2ZWxvY2l0eTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+UmlnaHQgdmVsb2NpdHk8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFJpZ2h0X3ZlbG9jaXR5KEZsb2F0NjQpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXREaWZmZXJlbnRpYWxPZG9tZXRyeV9SaWdodF92ZWxvY2l0eSgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDY0IiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRSaWdodF92ZWxvY2l0eSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuRGlmZmVyZW50aWFsT2RvbWV0cnkjZ2V0UmlnaHRfdmVsb2NpdHkgPGVtPlJpZ2h0IHZlbG9jaXR5PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5SaWdodCB2ZWxvY2l0eTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0UmlnaHRfdmVsb2NpdHkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFJpZ2h0X3ZlbG9jaXR5KE9iamVjdCB2YWx1ZSk7CisKK30gLy8gRGlmZmVyZW50aWFsT2RvbWV0cnkKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvSW1hZ2UuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvSW1hZ2UuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45ZDdiYmE5Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9JbWFnZS5qYXZhCkBAIC0wLDAgKzEsMTk3IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5IZWFkZXI7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkltYWdlPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltYWdlI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5JbWFnZSNnZXRIZWlnaHQgPGVtPkhlaWdodDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW1hZ2UjZ2V0V2lkdGggPGVtPldpZHRoPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5JbWFnZSNnZXRFbmNvZGluZyA8ZW0+RW5jb2Rpbmc8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltYWdlI2dldElzX2JpZ2VuZGlhbiA8ZW0+SXMgYmlnZW5kaWFuPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5JbWFnZSNnZXRTdGVwIDxlbT5TdGVwPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5JbWFnZSNnZXREYXRhIDxlbT5EYXRhPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRJbWFnZSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBJbWFnZSBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldEhlYWRlcihIZWFkZXIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRJbWFnZV9IZWFkZXIoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlIZWFkZXIgZ2V0SGVhZGVyKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5JbWFnZSNnZXRIZWFkZXIgPGVtPkhlYWRlcjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRIZWFkZXIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEhlYWRlcihIZWFkZXIgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+SGVpZ2h0PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5IZWlnaHQ8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkhlaWdodDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0SGVpZ2h0KFVJbnQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldEltYWdlX0hlaWdodCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldEhlaWdodCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW1hZ2UjZ2V0SGVpZ2h0IDxlbT5IZWlnaHQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkhlaWdodDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0SGVpZ2h0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRIZWlnaHQoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPldpZHRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5XaWR0aDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+V2lkdGg8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFdpZHRoKFVJbnQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldEltYWdlX1dpZHRoKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0V2lkdGgoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltYWdlI2dldFdpZHRoIDxlbT5XaWR0aDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+V2lkdGg8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFdpZHRoKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRXaWR0aChPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+RW5jb2Rpbmc8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkVuY29kaW5nPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5FbmNvZGluZzwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0RW5jb2RpbmcoU3RyaW5nKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0SW1hZ2VfRW5jb2RpbmcoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RyaW5nIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRFbmNvZGluZygpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW1hZ2UjZ2V0RW5jb2RpbmcgPGVtPkVuY29kaW5nPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5FbmNvZGluZzwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0RW5jb2RpbmcoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEVuY29kaW5nKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5JcyBiaWdlbmRpYW48L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPklzIGJpZ2VuZGlhbjwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+SXMgYmlnZW5kaWFuPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRJc19iaWdlbmRpYW4oVUludDgpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRJbWFnZV9Jc19iaWdlbmRpYW4oKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDgiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldElzX2JpZ2VuZGlhbigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW1hZ2UjZ2V0SXNfYmlnZW5kaWFuIDxlbT5JcyBiaWdlbmRpYW48L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPklzIGJpZ2VuZGlhbjwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0SXNfYmlnZW5kaWFuKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRJc19iaWdlbmRpYW4oT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlN0ZXA8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlN0ZXA8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlN0ZXA8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFN0ZXAoVUludDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0SW1hZ2VfU3RlcCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFN0ZXAoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltYWdlI2dldFN0ZXAgPGVtPlN0ZXA8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlN0ZXA8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFN0ZXAoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFN0ZXAoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkRhdGE8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIHtAbGluayBqYXZhLmxhbmcuT2JqZWN0fS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkRhdGE8L2VtPicgYXR0cmlidXRlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+RGF0YTwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldEltYWdlX0RhdGEoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDgiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFTGlzdDxPYmplY3Q+IGdldERhdGEoKTsKKworfSAvLyBJbWFnZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9JbXUuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvSW11LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmExYWMxOQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvSW11LmphdmEKQEAgLTAsMCArMSwxNzkgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUXVhdGVybmlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlZlY3RvcjM7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSGVhZGVyOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5JbXU8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW11I2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5JbXUjZ2V0T3JpZW50YXRpb24gPGVtPk9yaWVudGF0aW9uPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5JbXUjZ2V0T3JpZW50YXRpb25fY292YXJpYW5jZSA8ZW0+T3JpZW50YXRpb24gY292YXJpYW5jZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW11I2dldEFuZ3VsYXJfdmVsb2NpdHkgPGVtPkFuZ3VsYXIgdmVsb2NpdHk8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltdSNnZXRBbmd1bGFyX3ZlbG9jaXR5X2NvdmFyaWFuY2UgPGVtPkFuZ3VsYXIgdmVsb2NpdHkgY292YXJpYW5jZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW11I2dldExpbmVhcl9hY2NlbGVyYXRpb24gPGVtPkxpbmVhciBhY2NlbGVyYXRpb248L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltdSNnZXRMaW5lYXJfYWNjZWxlcmF0aW9uX2NvdmFyaWFuY2UgPGVtPkxpbmVhciBhY2NlbGVyYXRpb24gY292YXJpYW5jZTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0SW11KCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIEltdSBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldEhlYWRlcihIZWFkZXIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRJbXVfSGVhZGVyKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJSGVhZGVyIGdldEhlYWRlcigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW11I2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldEhlYWRlcigpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0SGVhZGVyKEhlYWRlciB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5PcmllbnRhdGlvbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+T3JpZW50YXRpb248L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPk9yaWVudGF0aW9uPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRPcmllbnRhdGlvbihRdWF0ZXJuaW9uKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0SW11X09yaWVudGF0aW9uKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJUXVhdGVybmlvbiBnZXRPcmllbnRhdGlvbigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW11I2dldE9yaWVudGF0aW9uIDxlbT5PcmllbnRhdGlvbjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+T3JpZW50YXRpb248L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldE9yaWVudGF0aW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRPcmllbnRhdGlvbihRdWF0ZXJuaW9uIHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPk9yaWVudGF0aW9uIGNvdmFyaWFuY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIHtAbGluayBqYXZhLmxhbmcuT2JqZWN0fS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPk9yaWVudGF0aW9uIGNvdmFyaWFuY2U8L2VtPicgYXR0cmlidXRlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+T3JpZW50YXRpb24gY292YXJpYW5jZTwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldEltdV9PcmllbnRhdGlvbl9jb3ZhcmlhbmNlKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0NjQiIGxvd2VyPSI5IiB1cHBlcj0iOSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUVMaXN0PE9iamVjdD4gZ2V0T3JpZW50YXRpb25fY292YXJpYW5jZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QW5ndWxhciB2ZWxvY2l0eTwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+QW5ndWxhciB2ZWxvY2l0eTwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+QW5ndWxhciB2ZWxvY2l0eTwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0QW5ndWxhcl92ZWxvY2l0eShWZWN0b3IzKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0SW11X0FuZ3VsYXJfdmVsb2NpdHkoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlWZWN0b3IzIGdldEFuZ3VsYXJfdmVsb2NpdHkoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltdSNnZXRBbmd1bGFyX3ZlbG9jaXR5IDxlbT5Bbmd1bGFyIHZlbG9jaXR5PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5Bbmd1bGFyIHZlbG9jaXR5PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRBbmd1bGFyX3ZlbG9jaXR5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRBbmd1bGFyX3ZlbG9jaXR5KFZlY3RvcjMgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QW5ndWxhciB2ZWxvY2l0eSBjb3ZhcmlhbmNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBUaGUgbGlzdCBjb250ZW50cyBhcmUgb2YgdHlwZSB7QGxpbmsgamF2YS5sYW5nLk9iamVjdH0uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5Bbmd1bGFyIHZlbG9jaXR5IGNvdmFyaWFuY2U8L2VtPicgYXR0cmlidXRlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+QW5ndWxhciB2ZWxvY2l0eSBjb3ZhcmlhbmNlPC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0SW11X0FuZ3VsYXJfdmVsb2NpdHlfY292YXJpYW5jZSgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDY0IiBsb3dlcj0iOSIgdXBwZXI9IjkiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFTGlzdDxPYmplY3Q+IGdldEFuZ3VsYXJfdmVsb2NpdHlfY292YXJpYW5jZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TGluZWFyIGFjY2VsZXJhdGlvbjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+TGluZWFyIGFjY2VsZXJhdGlvbjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+TGluZWFyIGFjY2VsZXJhdGlvbjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0TGluZWFyX2FjY2VsZXJhdGlvbihWZWN0b3IzKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0SW11X0xpbmVhcl9hY2NlbGVyYXRpb24oKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlWZWN0b3IzIGdldExpbmVhcl9hY2NlbGVyYXRpb24oKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltdSNnZXRMaW5lYXJfYWNjZWxlcmF0aW9uIDxlbT5MaW5lYXIgYWNjZWxlcmF0aW9uPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5MaW5lYXIgYWNjZWxlcmF0aW9uPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRMaW5lYXJfYWNjZWxlcmF0aW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRMaW5lYXJfYWNjZWxlcmF0aW9uKFZlY3RvcjMgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TGluZWFyIGFjY2VsZXJhdGlvbiBjb3ZhcmlhbmNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBUaGUgbGlzdCBjb250ZW50cyBhcmUgb2YgdHlwZSB7QGxpbmsgamF2YS5sYW5nLk9iamVjdH0uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5MaW5lYXIgYWNjZWxlcmF0aW9uIGNvdmFyaWFuY2U8L2VtPicgYXR0cmlidXRlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+TGluZWFyIGFjY2VsZXJhdGlvbiBjb3ZhcmlhbmNlPC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0SW11X0xpbmVhcl9hY2NlbGVyYXRpb25fY292YXJpYW5jZSgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDY0IiBsb3dlcj0iOSIgdXBwZXI9IjkiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFTGlzdDxPYmplY3Q+IGdldExpbmVhcl9hY2NlbGVyYXRpb25fY292YXJpYW5jZSgpOworCit9IC8vIEltdQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Kb2ludFN0YXRlLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0pvaW50U3RhdGUuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wZTE2NDY3Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Kb2ludFN0YXRlLmphdmEKQEAgLTAsMCArMSw4OCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkpvaW50IFN0YXRlPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpvaW50U3RhdGUjZ2V0TmFtZSA8ZW0+TmFtZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm9pbnRTdGF0ZSNnZXRQb3NpdGlvbiA8ZW0+UG9zaXRpb248L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpvaW50U3RhdGUjZ2V0VmVsb2NpdHkgPGVtPlZlbG9jaXR5PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb2ludFN0YXRlI2dldEVmZm9ydCA8ZW0+RWZmb3J0PC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRKb2ludFN0YXRlKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIEpvaW50U3RhdGUgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5OYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBUaGUgbGlzdCBjb250ZW50cyBhcmUgb2YgdHlwZSB7QGxpbmsgamF2YS5sYW5nLk9iamVjdH0uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5OYW1lPC9lbT4nIGF0dHJpYnV0ZSBsaXN0IGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPk5hbWU8L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRKb2ludFN0YXRlX05hbWUoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RyaW5nIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUxpc3Q8T2JqZWN0PiBnZXROYW1lKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Qb3NpdGlvbjwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogVGhlIGxpc3QgY29udGVudHMgYXJlIG9mIHR5cGUge0BsaW5rIGphdmEubGFuZy5PYmplY3R9LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+UG9zaXRpb248L2VtPicgYXR0cmlidXRlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+UG9zaXRpb248L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRKb2ludFN0YXRlX1Bvc2l0aW9uKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0NjQiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFTGlzdDxPYmplY3Q+IGdldFBvc2l0aW9uKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5WZWxvY2l0eTwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogVGhlIGxpc3QgY29udGVudHMgYXJlIG9mIHR5cGUge0BsaW5rIGphdmEubGFuZy5PYmplY3R9LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+VmVsb2NpdHk8L2VtPicgYXR0cmlidXRlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+VmVsb2NpdHk8L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRKb2ludFN0YXRlX1ZlbG9jaXR5KCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0NjQiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFTGlzdDxPYmplY3Q+IGdldFZlbG9jaXR5KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5FZmZvcnQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIHtAbGluayBqYXZhLmxhbmcuT2JqZWN0fS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkVmZm9ydDwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5FZmZvcnQ8L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRKb2ludFN0YXRlX0VmZm9ydCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDY0IiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUxpc3Q8T2JqZWN0PiBnZXRFZmZvcnQoKTsKKworfSAvLyBKb2ludFN0YXRlCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0pveS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Kb3kuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xZjJmMjQxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Kb3kuamF2YQpAQCAtMCwwICsxLDgzIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5IZWFkZXI7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkpveTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb3kjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpveSNnZXRBeGVzIDxlbT5BeGVzPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb3kjZ2V0QnV0dG9ucyA8ZW0+QnV0dG9uczwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0Sm95KCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIEpveSBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldEhlYWRlcihIZWFkZXIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRKb3lfSGVhZGVyKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJSGVhZGVyIGdldEhlYWRlcigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm95I2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldEhlYWRlcigpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0SGVhZGVyKEhlYWRlciB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5BeGVzPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBUaGUgbGlzdCBjb250ZW50cyBhcmUgb2YgdHlwZSB7QGxpbmsgamF2YS5sYW5nLk9iamVjdH0uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5BeGVzPC9lbT4nIGF0dHJpYnV0ZSBsaXN0IGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkF4ZXM8L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRKb3lfQXhlcygpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUxpc3Q8T2JqZWN0PiBnZXRBeGVzKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5CdXR0b25zPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBUaGUgbGlzdCBjb250ZW50cyBhcmUgb2YgdHlwZSB7QGxpbmsgamF2YS5sYW5nLk9iamVjdH0uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5CdXR0b25zPC9lbT4nIGF0dHJpYnV0ZSBsaXN0IGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkJ1dHRvbnM8L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRKb3lfQnV0dG9ucygpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQzMiIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUVMaXN0PE9iamVjdD4gZ2V0QnV0dG9ucygpOworCit9IC8vIEpveQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Kb3lGZWVkYmFjay5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Kb3lGZWVkYmFjay5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ2Y2NjODQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0pveUZlZWRiYWNrLmphdmEKQEAgLTAsMCArMSwxODIgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkpveSBGZWVkYmFjazwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb3lGZWVkYmFjayNnZXRUWVBFX0xFRCA8ZW0+VFlQRSBMRUQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpveUZlZWRiYWNrI2dldFRZUEVfUlVNQkxFIDxlbT5UWVBFIFJVTUJMRTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm95RmVlZGJhY2sjZ2V0VFlQRV9CVVpaRVIgPGVtPlRZUEUgQlVaWkVSPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb3lGZWVkYmFjayNnZXRUeXBlIDxlbT5UeXBlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb3lGZWVkYmFjayNnZXRJZCA8ZW0+SWQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpveUZlZWRiYWNrI2dldEludGVuc2l0eSA8ZW0+SW50ZW5zaXR5PC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRKb3lGZWVkYmFjaygpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBKb3lGZWVkYmFjayBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlRZUEUgTEVEPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogVGhlIGRlZmF1bHQgdmFsdWUgaXMgPGNvZGU+IjAiPC9jb2RlPi4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlRZUEUgTEVEPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5UWVBFIExFRDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0VFlQRV9MRUQoVUludDgpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRKb3lGZWVkYmFja19UWVBFX0xFRCgpCisJICogQG1vZGVsIGRlZmF1bHQ9IjAiIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50OCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0VFlQRV9MRUQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpveUZlZWRiYWNrI2dldFRZUEVfTEVEIDxlbT5UWVBFIExFRDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+VFlQRSBMRUQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFRZUEVfTEVEKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRUWVBFX0xFRChPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+VFlQRSBSVU1CTEU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyA8Y29kZT4iMSI8L2NvZGU+LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+VFlQRSBSVU1CTEU8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlRZUEUgUlVNQkxFPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRUWVBFX1JVTUJMRShVSW50OCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldEpveUZlZWRiYWNrX1RZUEVfUlVNQkxFKCkKKwkgKiBAbW9kZWwgZGVmYXVsdD0iMSIgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQ4IiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRUWVBFX1JVTUJMRSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm95RmVlZGJhY2sjZ2V0VFlQRV9SVU1CTEUgPGVtPlRZUEUgUlVNQkxFPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5UWVBFIFJVTUJMRTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0VFlQRV9SVU1CTEUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFRZUEVfUlVNQkxFKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5UWVBFIEJVWlpFUjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIGlzIDxjb2RlPiIyIjwvY29kZT4uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5UWVBFIEJVWlpFUjwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+VFlQRSBCVVpaRVI8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFRZUEVfQlVaWkVSKFVJbnQ4KQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0Sm95RmVlZGJhY2tfVFlQRV9CVVpaRVIoKQorCSAqIEBtb2RlbCBkZWZhdWx0PSIyIiBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDgiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFRZUEVfQlVaWkVSKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb3lGZWVkYmFjayNnZXRUWVBFX0JVWlpFUiA8ZW0+VFlQRSBCVVpaRVI8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlRZUEUgQlVaWkVSPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRUWVBFX0JVWlpFUigpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0VFlQRV9CVVpaRVIoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlR5cGU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlR5cGU8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlR5cGU8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFR5cGUoVUludDgpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRKb3lGZWVkYmFja19UeXBlKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQ4IiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRUeXBlKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb3lGZWVkYmFjayNnZXRUeXBlIDxlbT5UeXBlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5UeXBlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRUeXBlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRUeXBlKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5JZDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+SWQ8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPklkPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRJZChVSW50OCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldEpveUZlZWRiYWNrX0lkKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQ4IiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRJZCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm95RmVlZGJhY2sjZ2V0SWQgPGVtPklkPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5JZDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0SWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldElkKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5JbnRlbnNpdHk8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkludGVuc2l0eTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+SW50ZW5zaXR5PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRJbnRlbnNpdHkoRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldEpveUZlZWRiYWNrX0ludGVuc2l0eSgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRJbnRlbnNpdHkoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpveUZlZWRiYWNrI2dldEludGVuc2l0eSA8ZW0+SW50ZW5zaXR5PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5JbnRlbnNpdHk8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldEludGVuc2l0eSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0SW50ZW5zaXR5KE9iamVjdCB2YWx1ZSk7CisKK30gLy8gSm95RmVlZGJhY2sKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvSm95RmVlZGJhY2tBcnJheS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Kb3lGZWVkYmFja0FycmF5LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmUzODM0MQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvSm95RmVlZGJhY2tBcnJheS5qYXZhCkBAIC0wLDAgKzEsNDAgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5Kb3kgRmVlZGJhY2sgQXJyYXk8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm95RmVlZGJhY2tBcnJheSNnZXRBcnJheSA8ZW0+QXJyYXk8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldEpveUZlZWRiYWNrQXJyYXkoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgSm95RmVlZGJhY2tBcnJheSBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkFycmF5PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdC4KKwkgKiBUaGUgbGlzdCBjb250ZW50cyBhcmUgb2YgdHlwZSB7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm95RmVlZGJhY2t9LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+QXJyYXk8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+QXJyYXk8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRKb3lGZWVkYmFja0FycmF5X0FycmF5KCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFTGlzdDxKb3lGZWVkYmFjaz4gZ2V0QXJyYXkoKTsKKworfSAvLyBKb3lGZWVkYmFja0FycmF5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL0xhc2VyU2Nhbi5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9MYXNlclNjYW4uamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NDIwM2NmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9MYXNlclNjYW4uamF2YQpAQCAtMCwwICsxLDI2NSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSGVhZGVyOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5MYXNlciBTY2FuPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkxhc2VyU2NhbiNnZXRIZWFkZXIgPGVtPkhlYWRlcjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTGFzZXJTY2FuI2dldEFuZ2xlX21pbiA8ZW0+QW5nbGUgbWluPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5MYXNlclNjYW4jZ2V0QW5nbGVfbWF4IDxlbT5BbmdsZSBtYXg8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkxhc2VyU2NhbiNnZXRBbmdsZV9pbmNyZW1lbnQgPGVtPkFuZ2xlIGluY3JlbWVudDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTGFzZXJTY2FuI2dldFRpbWVfaW5jcmVtZW50IDxlbT5UaW1lIGluY3JlbWVudDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTGFzZXJTY2FuI2dldFNjYW5fdGltZSA8ZW0+U2NhbiB0aW1lPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5MYXNlclNjYW4jZ2V0UmFuZ2VfbWluIDxlbT5SYW5nZSBtaW48L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkxhc2VyU2NhbiNnZXRSYW5nZV9tYXggPGVtPlJhbmdlIG1heDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTGFzZXJTY2FuI2dldFJhbmdlIDxlbT5SYW5nZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTGFzZXJTY2FuI2dldEludGVuc2l0aWVzIDxlbT5JbnRlbnNpdGllczwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0TGFzZXJTY2FuKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIExhc2VyU2NhbiBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldEhlYWRlcihIZWFkZXIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRMYXNlclNjYW5fSGVhZGVyKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJSGVhZGVyIGdldEhlYWRlcigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTGFzZXJTY2FuI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldEhlYWRlcigpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0SGVhZGVyKEhlYWRlciB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5BbmdsZSBtaW48L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkFuZ2xlIG1pbjwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+QW5nbGUgbWluPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRBbmdsZV9taW4oRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldExhc2VyU2Nhbl9BbmdsZV9taW4oKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0QW5nbGVfbWluKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5MYXNlclNjYW4jZ2V0QW5nbGVfbWluIDxlbT5BbmdsZSBtaW48L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkFuZ2xlIG1pbjwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0QW5nbGVfbWluKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRBbmdsZV9taW4oT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkFuZ2xlIG1heDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+QW5nbGUgbWF4PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5BbmdsZSBtYXg8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldEFuZ2xlX21heChGbG9hdDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0TGFzZXJTY2FuX0FuZ2xlX21heCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRBbmdsZV9tYXgoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkxhc2VyU2NhbiNnZXRBbmdsZV9tYXggPGVtPkFuZ2xlIG1heDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+QW5nbGUgbWF4PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRBbmdsZV9tYXgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEFuZ2xlX21heChPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QW5nbGUgaW5jcmVtZW50PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5BbmdsZSBpbmNyZW1lbnQ8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkFuZ2xlIGluY3JlbWVudDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0QW5nbGVfaW5jcmVtZW50KEZsb2F0MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRMYXNlclNjYW5fQW5nbGVfaW5jcmVtZW50KCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldEFuZ2xlX2luY3JlbWVudCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTGFzZXJTY2FuI2dldEFuZ2xlX2luY3JlbWVudCA8ZW0+QW5nbGUgaW5jcmVtZW50PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5BbmdsZSBpbmNyZW1lbnQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldEFuZ2xlX2luY3JlbWVudCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0QW5nbGVfaW5jcmVtZW50KE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5UaW1lIGluY3JlbWVudDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+VGltZSBpbmNyZW1lbnQ8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlRpbWUgaW5jcmVtZW50PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRUaW1lX2luY3JlbWVudChGbG9hdDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0TGFzZXJTY2FuX1RpbWVfaW5jcmVtZW50KCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFRpbWVfaW5jcmVtZW50KCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5MYXNlclNjYW4jZ2V0VGltZV9pbmNyZW1lbnQgPGVtPlRpbWUgaW5jcmVtZW50PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5UaW1lIGluY3JlbWVudDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0VGltZV9pbmNyZW1lbnQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFRpbWVfaW5jcmVtZW50KE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5TY2FuIHRpbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlNjYW4gdGltZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+U2NhbiB0aW1lPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRTY2FuX3RpbWUoRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldExhc2VyU2Nhbl9TY2FuX3RpbWUoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0U2Nhbl90aW1lKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5MYXNlclNjYW4jZ2V0U2Nhbl90aW1lIDxlbT5TY2FuIHRpbWU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlNjYW4gdGltZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0U2Nhbl90aW1lKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRTY2FuX3RpbWUoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlJhbmdlIG1pbjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+UmFuZ2UgbWluPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5SYW5nZSBtaW48L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFJhbmdlX21pbihGbG9hdDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0TGFzZXJTY2FuX1JhbmdlX21pbigpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRSYW5nZV9taW4oKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkxhc2VyU2NhbiNnZXRSYW5nZV9taW4gPGVtPlJhbmdlIG1pbjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+UmFuZ2UgbWluPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRSYW5nZV9taW4oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFJhbmdlX21pbihPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+UmFuZ2UgbWF4PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5SYW5nZSBtYXg8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlJhbmdlIG1heDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0UmFuZ2VfbWF4KEZsb2F0MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRMYXNlclNjYW5fUmFuZ2VfbWF4KCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFJhbmdlX21heCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTGFzZXJTY2FuI2dldFJhbmdlX21heCA8ZW0+UmFuZ2UgbWF4PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5SYW5nZSBtYXg8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFJhbmdlX21heCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0UmFuZ2VfbWF4KE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5SYW5nZTwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogVGhlIGxpc3QgY29udGVudHMgYXJlIG9mIHR5cGUge0BsaW5rIGphdmEubGFuZy5PYmplY3R9LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+UmFuZ2U8L2VtPicgYXR0cmlidXRlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+UmFuZ2U8L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRMYXNlclNjYW5fUmFuZ2UoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUVMaXN0PE9iamVjdD4gZ2V0UmFuZ2UoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkludGVuc2l0aWVzPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBUaGUgbGlzdCBjb250ZW50cyBhcmUgb2YgdHlwZSB7QGxpbmsgamF2YS5sYW5nLk9iamVjdH0uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5JbnRlbnNpdGllczwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5JbnRlbnNpdGllczwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldExhc2VyU2Nhbl9JbnRlbnNpdGllcygpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUxpc3Q8T2JqZWN0PiBnZXRJbnRlbnNpdGllcygpOworCit9IC8vIExhc2VyU2NhbgpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9OYXZTYXRGaXguamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvTmF2U2F0Rml4LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDYyZWE4NgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvTmF2U2F0Rml4LmphdmEKQEAgLTAsMCArMSwyMzIgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TmF2IFNhdCBGaXg8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0Rml4I2dldFN0YXR1cyA8ZW0+U3RhdHVzPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRGaXgjZ2V0U2VydmljZSA8ZW0+U2VydmljZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0Rml4I2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRGaXgjZ2V0TGF0aXR1ZGUgPGVtPkxhdGl0dWRlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRGaXgjZ2V0TG9uZ2l0dWRlIDxlbT5Mb25naXR1ZGU8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdEZpeCNnZXRBbHRpdHVkZSA8ZW0+QWx0aXR1ZGU8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdEZpeCNnZXRQb3NpdGlvbl9jb3ZhcmlhbmNlIDxlbT5Qb3NpdGlvbiBjb3ZhcmlhbmNlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRGaXgjZ2V0UG9zaXRpb25fY292YXJpYW5jZV90eXBlIDxlbT5Qb3NpdGlvbiBjb3ZhcmlhbmNlIHR5cGU8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldE5hdlNhdEZpeCgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBOYXZTYXRGaXggZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5TdGF0dXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBUaGUgbGl0ZXJhbHMgYXJlIGZyb20gdGhlIGVudW1lcmF0aW9uIHtAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TVEFUVVNfVFlQRX0uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5TdGF0dXM8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlN0YXR1czwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TVEFUVVNfVFlQRQorCSAqIEBzZWUgI3NldFN0YXR1cyhTVEFUVVNfVFlQRSkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldE5hdlNhdEZpeF9TdGF0dXMoKQorCSAqIEBtb2RlbCByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCVNUQVRVU19UWVBFIGdldFN0YXR1cygpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0Rml4I2dldFN0YXR1cyA8ZW0+U3RhdHVzPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5TdGF0dXM8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU1RBVFVTX1RZUEUKKwkgKiBAc2VlICNnZXRTdGF0dXMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFN0YXR1cyhTVEFUVVNfVFlQRSB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5TZXJ2aWNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogVGhlIGxpdGVyYWxzIGFyZSBmcm9tIHRoZSBlbnVtZXJhdGlvbiB7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU0VSVklDRV9UWVBFfS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlNlcnZpY2U8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlNlcnZpY2U8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU0VSVklDRV9UWVBFCisJICogQHNlZSAjc2V0U2VydmljZShTRVJWSUNFX1RZUEUpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXROYXZTYXRGaXhfU2VydmljZSgpCisJICogQG1vZGVsIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJU0VSVklDRV9UWVBFIGdldFNlcnZpY2UoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdEZpeCNnZXRTZXJ2aWNlIDxlbT5TZXJ2aWNlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5TZXJ2aWNlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNFUlZJQ0VfVFlQRQorCSAqIEBzZWUgI2dldFNlcnZpY2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFNlcnZpY2UoU0VSVklDRV9UWVBFIHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldEhlYWRlcihIZWFkZXIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXROYXZTYXRGaXhfSGVhZGVyKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJSGVhZGVyIGdldEhlYWRlcigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0Rml4I2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldEhlYWRlcigpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0SGVhZGVyKEhlYWRlciB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5MYXRpdHVkZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+TGF0aXR1ZGU8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkxhdGl0dWRlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRMYXRpdHVkZShGbG9hdDY0KQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0TmF2U2F0Rml4X0xhdGl0dWRlKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0NjQiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldExhdGl0dWRlKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRGaXgjZ2V0TGF0aXR1ZGUgPGVtPkxhdGl0dWRlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5MYXRpdHVkZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0TGF0aXR1ZGUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldExhdGl0dWRlKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Mb25naXR1ZGU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkxvbmdpdHVkZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+TG9uZ2l0dWRlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRMb25naXR1ZGUoRmxvYXQ2NCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldE5hdlNhdEZpeF9Mb25naXR1ZGUoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0TG9uZ2l0dWRlKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRGaXgjZ2V0TG9uZ2l0dWRlIDxlbT5Mb25naXR1ZGU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkxvbmdpdHVkZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0TG9uZ2l0dWRlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRMb25naXR1ZGUoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkFsdGl0dWRlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5BbHRpdHVkZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+QWx0aXR1ZGU8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldEFsdGl0dWRlKEZsb2F0NjQpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXROYXZTYXRGaXhfQWx0aXR1ZGUoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0QWx0aXR1ZGUoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdEZpeCNnZXRBbHRpdHVkZSA8ZW0+QWx0aXR1ZGU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkFsdGl0dWRlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRBbHRpdHVkZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0QWx0aXR1ZGUoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlBvc2l0aW9uIGNvdmFyaWFuY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIHtAbGluayBqYXZhLmxhbmcuT2JqZWN0fS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlBvc2l0aW9uIGNvdmFyaWFuY2U8L2VtPicgYXR0cmlidXRlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+UG9zaXRpb24gY292YXJpYW5jZTwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldE5hdlNhdEZpeF9Qb3NpdGlvbl9jb3ZhcmlhbmNlKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0NjQiIGxvd2VyPSI5IiB1cHBlcj0iOSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUVMaXN0PE9iamVjdD4gZ2V0UG9zaXRpb25fY292YXJpYW5jZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+UG9zaXRpb24gY292YXJpYW5jZSB0eXBlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogVGhlIGxpdGVyYWxzIGFyZSBmcm9tIHRoZSBlbnVtZXJhdGlvbiB7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ09WQVJJQU5DRV9UWVBFfS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlBvc2l0aW9uIGNvdmFyaWFuY2UgdHlwZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+UG9zaXRpb24gY292YXJpYW5jZSB0eXBlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNPVkFSSUFOQ0VfVFlQRQorCSAqIEBzZWUgI3NldFBvc2l0aW9uX2NvdmFyaWFuY2VfdHlwZShDT1ZBUklBTkNFX1RZUEUpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXROYXZTYXRGaXhfUG9zaXRpb25fY292YXJpYW5jZV90eXBlKCkKKwkgKiBAbW9kZWwgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlDT1ZBUklBTkNFX1RZUEUgZ2V0UG9zaXRpb25fY292YXJpYW5jZV90eXBlKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRGaXgjZ2V0UG9zaXRpb25fY292YXJpYW5jZV90eXBlIDxlbT5Qb3NpdGlvbiBjb3ZhcmlhbmNlIHR5cGU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlBvc2l0aW9uIGNvdmFyaWFuY2UgdHlwZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DT1ZBUklBTkNFX1RZUEUKKwkgKiBAc2VlICNnZXRQb3NpdGlvbl9jb3ZhcmlhbmNlX3R5cGUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFBvc2l0aW9uX2NvdmFyaWFuY2VfdHlwZShDT1ZBUklBTkNFX1RZUEUgdmFsdWUpOworCit9IC8vIE5hdlNhdEZpeApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9OYXZTYXRTdGF0dXMuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvTmF2U2F0U3RhdHVzLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2IwMmFhNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvTmF2U2F0U3RhdHVzLmphdmEKQEAgLTAsMCArMSwyMDMgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPk5hdiBTYXQgU3RhdHVzPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdFN0YXR1cyNnZXRTVEFUVVNfTk9fRklYIDxlbT5TVEFUVVMgTk8gRklYPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRTdGF0dXMjZ2V0U1RBVFVTX0ZJWCA8ZW0+U1RBVFVTIEZJWDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0U3RhdHVzI2dldFNUQVRVU19TQkFTX0ZJWCA8ZW0+U1RBVFVTIFNCQVMgRklYPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRTdGF0dXMjZ2V0U1RBVFVTX0dCQVNfRklYIDxlbT5TVEFUVVMgR0JBUyBGSVg8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdFN0YXR1cyNnZXRTdGF0dXMgPGVtPlN0YXR1czwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0U3RhdHVzI2dldFNFUlZJQ0VfR1BTIDxlbT5TRVJWSUNFIEdQUzwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0U3RhdHVzI2dldFNFUlZJQ0VfR0xPTkFTUyA8ZW0+U0VSVklDRSBHTE9OQVNTPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRTdGF0dXMjZ2V0U0VSVklDRV9DT01QQVNTIDxlbT5TRVJWSUNFIENPTVBBU1M8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdFN0YXR1cyNnZXRTRVJWSUNFX0dBTElMRU8gPGVtPlNFUlZJQ0UgR0FMSUxFTzwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0U3RhdHVzI2dldFNlcnZpY2UgPGVtPlNlcnZpY2U8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldE5hdlNhdFN0YXR1cygpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBOYXZTYXRTdGF0dXMgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5TVEFUVVMgTk8gRklYPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogVGhlIGRlZmF1bHQgdmFsdWUgaXMgPGNvZGU+Ii0xIjwvY29kZT4uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5TVEFUVVMgTk8gRklYPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5TVEFUVVMgTk8gRklYPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldE5hdlNhdFN0YXR1c19TVEFUVVNfTk9fRklYKCkKKwkgKiBAbW9kZWwgZGVmYXVsdD0iLTEiIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQ4IiByZXF1aXJlZD0idHJ1ZSIgY2hhbmdlYWJsZT0iZmFsc2UiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0U1RBVFVTX05PX0ZJWCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+U1RBVFVTIEZJWDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIGlzIDxjb2RlPiIwIjwvY29kZT4uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5TVEFUVVMgRklYPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5TVEFUVVMgRklYPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldE5hdlNhdFN0YXR1c19TVEFUVVNfRklYKCkKKwkgKiBAbW9kZWwgZGVmYXVsdD0iMCIgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkludDgiIHJlcXVpcmVkPSJ0cnVlIiBjaGFuZ2VhYmxlPSJmYWxzZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRTVEFUVVNfRklYKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5TVEFUVVMgU0JBUyBGSVg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyA8Y29kZT4iMSI8L2NvZGU+LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+U1RBVFVTIFNCQVMgRklYPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5TVEFUVVMgU0JBUyBGSVg8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0TmF2U2F0U3RhdHVzX1NUQVRVU19TQkFTX0ZJWCgpCisJICogQG1vZGVsIGRlZmF1bHQ9IjEiIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQ4IiByZXF1aXJlZD0idHJ1ZSIgY2hhbmdlYWJsZT0iZmFsc2UiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0U1RBVFVTX1NCQVNfRklYKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5TVEFUVVMgR0JBUyBGSVg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyA8Y29kZT4iMiI8L2NvZGU+LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+U1RBVFVTIEdCQVMgRklYPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5TVEFUVVMgR0JBUyBGSVg8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0TmF2U2F0U3RhdHVzX1NUQVRVU19HQkFTX0ZJWCgpCisJICogQG1vZGVsIGRlZmF1bHQ9IjIiIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQ4IiByZXF1aXJlZD0idHJ1ZSIgY2hhbmdlYWJsZT0iZmFsc2UiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0U1RBVFVTX0dCQVNfRklYKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5TdGF0dXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlN0YXR1czwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+U3RhdHVzPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRTdGF0dXMoSW50OCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldE5hdlNhdFN0YXR1c19TdGF0dXMoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSW50OCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0U3RhdHVzKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRTdGF0dXMjZ2V0U3RhdHVzIDxlbT5TdGF0dXM8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlN0YXR1czwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0U3RhdHVzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRTdGF0dXMoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlNFUlZJQ0UgR1BTPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogVGhlIGRlZmF1bHQgdmFsdWUgaXMgPGNvZGU+IjEiPC9jb2RlPi4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlNFUlZJQ0UgR1BTPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5TRVJWSUNFIEdQUzwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXROYXZTYXRTdGF0dXNfU0VSVklDRV9HUFMoKQorCSAqIEBtb2RlbCBkZWZhdWx0PSIxIiBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDE2IiByZXF1aXJlZD0idHJ1ZSIgY2hhbmdlYWJsZT0iZmFsc2UiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0U0VSVklDRV9HUFMoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlNFUlZJQ0UgR0xPTkFTUzwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIGlzIDxjb2RlPiIyIjwvY29kZT4uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5TRVJWSUNFIEdMT05BU1M8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlNFUlZJQ0UgR0xPTkFTUzwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXROYXZTYXRTdGF0dXNfU0VSVklDRV9HTE9OQVNTKCkKKwkgKiBAbW9kZWwgZGVmYXVsdD0iMiIgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQxNiIgcmVxdWlyZWQ9InRydWUiIGNoYW5nZWFibGU9ImZhbHNlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFNFUlZJQ0VfR0xPTkFTUygpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+U0VSVklDRSBDT01QQVNTPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogVGhlIGRlZmF1bHQgdmFsdWUgaXMgPGNvZGU+IjQiPC9jb2RlPi4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlNFUlZJQ0UgQ09NUEFTUzwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+U0VSVklDRSBDT01QQVNTPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldE5hdlNhdFN0YXR1c19TRVJWSUNFX0NPTVBBU1MoKQorCSAqIEBtb2RlbCBkZWZhdWx0PSI0IiBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDE2IiByZXF1aXJlZD0idHJ1ZSIgY2hhbmdlYWJsZT0iZmFsc2UiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0U0VSVklDRV9DT01QQVNTKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5TRVJWSUNFIEdBTElMRU88L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyA8Y29kZT4iOCI8L2NvZGU+LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+U0VSVklDRSBHQUxJTEVPPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5TRVJWSUNFIEdBTElMRU88L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0TmF2U2F0U3RhdHVzX1NFUlZJQ0VfR0FMSUxFTygpCisJICogQG1vZGVsIGRlZmF1bHQ9IjgiIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MTYiIHJlcXVpcmVkPSJ0cnVlIiBjaGFuZ2VhYmxlPSJmYWxzZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRTRVJWSUNFX0dBTElMRU8oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlNlcnZpY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlNlcnZpY2U8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlNlcnZpY2U8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFNlcnZpY2UoVUludDE2KQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0TmF2U2F0U3RhdHVzX1NlcnZpY2UoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDE2IiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRTZXJ2aWNlKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRTdGF0dXMjZ2V0U2VydmljZSA8ZW0+U2VydmljZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+U2VydmljZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0U2VydmljZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0U2VydmljZShPYmplY3QgdmFsdWUpOworCit9IC8vIE5hdlNhdFN0YXR1cwpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Qb2ludENsb3VkLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1BvaW50Q2xvdWQuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNWMyODRhCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Qb2ludENsb3VkLmphdmEKQEAgLTAsMCArMSw4NCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5Qb2ludDMyOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UG9pbnQgQ2xvdWQ8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZCNnZXRIZWFkZXIgPGVtPkhlYWRlcjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZCNnZXRQb2ludHMgPGVtPlBvaW50czwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZCNnZXRDaGFubmVscyA8ZW0+Q2hhbm5lbHM8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldFBvaW50Q2xvdWQoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgUG9pbnRDbG91ZCBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldEhlYWRlcihIZWFkZXIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRQb2ludENsb3VkX0hlYWRlcigpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUhlYWRlciBnZXRIZWFkZXIoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50Q2xvdWQjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0SGVhZGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRIZWFkZXIoSGVhZGVyIHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlBvaW50czwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QuCisJICogVGhlIGxpc3QgY29udGVudHMgYXJlIG9mIHR5cGUge0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9pbnQzMn0uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5Qb2ludHM8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+UG9pbnRzPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0LgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0UG9pbnRDbG91ZF9Qb2ludHMoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUVMaXN0PFBvaW50MzI+IGdldFBvaW50cygpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+Q2hhbm5lbHM8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0LgorCSAqIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIHtAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DaGFubmVsRmxvYXQzMn0uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5DaGFubmVsczwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdCBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5DaGFubmVsczwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdC4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldFBvaW50Q2xvdWRfQ2hhbm5lbHMoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUVMaXN0PENoYW5uZWxGbG9hdDMyPiBnZXRDaGFubmVscygpOworCit9IC8vIFBvaW50Q2xvdWQKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvUG9pbnRDbG91ZDIuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvUG9pbnRDbG91ZDIuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40NDFlMmUzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9Qb2ludENsb3VkMi5qYXZhCkBAIC0wLDAgKzEsMjQxIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5IZWFkZXI7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBvaW50IENsb3VkMjwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludENsb3VkMiNnZXRIZWFkZXIgPGVtPkhlYWRlcjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZDIjZ2V0SGVpZ2h0IDxlbT5IZWlnaHQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50Q2xvdWQyI2dldFdpZHRoIDxlbT5XaWR0aDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZDIjZ2V0RmllbGRzIDxlbT5GaWVsZHM8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50Q2xvdWQyI2dldElzX2JpZ2VuZGlhbiA8ZW0+SXMgYmlnZW5kaWFuPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludENsb3VkMiNnZXRQb2ludF9zdGVwIDxlbT5Qb2ludCBzdGVwPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludENsb3VkMiNnZXRSb3dfc3RlcCA8ZW0+Um93IHN0ZXA8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50Q2xvdWQyI2dldERhdGEgPGVtPkRhdGE8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50Q2xvdWQyI2dldElzX2RlbnNlIDxlbT5JcyBkZW5zZTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0UG9pbnRDbG91ZDIoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgUG9pbnRDbG91ZDIgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRIZWFkZXIoSGVhZGVyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0UG9pbnRDbG91ZDJfSGVhZGVyKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJSGVhZGVyIGdldEhlYWRlcigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZDIjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0SGVhZGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRIZWFkZXIoSGVhZGVyIHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkhlaWdodDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+SGVpZ2h0PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5IZWlnaHQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldEhlaWdodChVSW50MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRQb2ludENsb3VkMl9IZWlnaHQoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRIZWlnaHQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50Q2xvdWQyI2dldEhlaWdodCA8ZW0+SGVpZ2h0PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5IZWlnaHQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldEhlaWdodCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0SGVpZ2h0KE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5XaWR0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+V2lkdGg8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPldpZHRoPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRXaWR0aChVSW50MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRQb2ludENsb3VkMl9XaWR0aCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFdpZHRoKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludENsb3VkMiNnZXRXaWR0aCA8ZW0+V2lkdGg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPldpZHRoPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRXaWR0aCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0V2lkdGgoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkZpZWxkczwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QuCisJICogVGhlIGxpc3QgY29udGVudHMgYXJlIG9mIHR5cGUge0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50RmllbGR9LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+RmllbGRzPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0IGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkZpZWxkczwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdC4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldFBvaW50Q2xvdWQyX0ZpZWxkcygpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUxpc3Q8UG9pbnRGaWVsZD4gZ2V0RmllbGRzKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5JcyBiaWdlbmRpYW48L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPklzIGJpZ2VuZGlhbjwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisJICogdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5JcyBiaWdlbmRpYW48L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldElzX2JpZ2VuZGlhbihCb29sKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0UG9pbnRDbG91ZDJfSXNfYmlnZW5kaWFuKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkJvb2wiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldElzX2JpZ2VuZGlhbigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZDIjZ2V0SXNfYmlnZW5kaWFuIDxlbT5JcyBiaWdlbmRpYW48L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPklzIGJpZ2VuZGlhbjwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0SXNfYmlnZW5kaWFuKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRJc19iaWdlbmRpYW4oT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlBvaW50IHN0ZXA8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlBvaW50IHN0ZXA8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlBvaW50IHN0ZXA8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFBvaW50X3N0ZXAoVUludDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0UG9pbnRDbG91ZDJfUG9pbnRfc3RlcCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFBvaW50X3N0ZXAoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50Q2xvdWQyI2dldFBvaW50X3N0ZXAgPGVtPlBvaW50IHN0ZXA8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlBvaW50IHN0ZXA8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFBvaW50X3N0ZXAoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFBvaW50X3N0ZXAoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlJvdyBzdGVwPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5Sb3cgc3RlcDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+Um93IHN0ZXA8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFJvd19zdGVwKFVJbnQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldFBvaW50Q2xvdWQyX1Jvd19zdGVwKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0Um93X3N0ZXAoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50Q2xvdWQyI2dldFJvd19zdGVwIDxlbT5Sb3cgc3RlcDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+Um93IHN0ZXA8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFJvd19zdGVwKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRSb3dfc3RlcChPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+RGF0YTwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogVGhlIGxpc3QgY29udGVudHMgYXJlIG9mIHR5cGUge0BsaW5rIGphdmEubGFuZy5PYmplY3R9LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+RGF0YTwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5EYXRhPC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0UG9pbnRDbG91ZDJfRGF0YSgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50OCIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUVMaXN0PE9iamVjdD4gZ2V0RGF0YSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+SXMgZGVuc2U8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPklzIGRlbnNlPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwKKwkgKiB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPklzIGRlbnNlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRJc19kZW5zZShCb29sKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0UG9pbnRDbG91ZDJfSXNfZGVuc2UoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuQm9vbCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0SXNfZGVuc2UoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50Q2xvdWQyI2dldElzX2RlbnNlIDxlbT5JcyBkZW5zZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+SXMgZGVuc2U8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldElzX2RlbnNlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRJc19kZW5zZShPYmplY3QgdmFsdWUpOworCit9IC8vIFBvaW50Q2xvdWQyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1BvaW50RmllbGQuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvUG9pbnRGaWVsZC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjExMTE4NDAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1BvaW50RmllbGQuamF2YQpAQCAtMCwwICsxLDEyNyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UG9pbnQgRmllbGQ8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRGaWVsZCNnZXROYW1lIDxlbT5OYW1lPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludEZpZWxkI2dldE9mZnNldCA8ZW0+T2Zmc2V0PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludEZpZWxkI2dldERhdGF0eXBlIDxlbT5EYXRhdHlwZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRGaWVsZCNnZXRDb3VudCA8ZW0+Q291bnQ8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldFBvaW50RmllbGQoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgUG9pbnRGaWVsZCBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPk5hbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPk5hbWU8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPk5hbWU8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldE5hbWUoU3RyaW5nKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0UG9pbnRGaWVsZF9OYW1lKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0cmluZyIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0TmFtZSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRGaWVsZCNnZXROYW1lIDxlbT5OYW1lPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5OYW1lPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXROYW1lKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXROYW1lKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5PZmZzZXQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPk9mZnNldDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+T2Zmc2V0PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRPZmZzZXQoVUludDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0UG9pbnRGaWVsZF9PZmZzZXQoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRPZmZzZXQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50RmllbGQjZ2V0T2Zmc2V0IDxlbT5PZmZzZXQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPk9mZnNldDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0T2Zmc2V0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRPZmZzZXQoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkRhdGF0eXBlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5EYXRhdHlwZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+RGF0YXR5cGU8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldERhdGF0eXBlKFVJbnQ4KQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0UG9pbnRGaWVsZF9EYXRhdHlwZSgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50OCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0RGF0YXR5cGUoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50RmllbGQjZ2V0RGF0YXR5cGUgPGVtPkRhdGF0eXBlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5EYXRhdHlwZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0RGF0YXR5cGUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldERhdGF0eXBlKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Db3VudDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+Q291bnQ8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkNvdW50PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRDb3VudChVSW50MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRQb2ludEZpZWxkX0NvdW50KCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0Q291bnQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50RmllbGQjZ2V0Q291bnQgPGVtPkNvdW50PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5Db3VudDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0Q291bnQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldENvdW50KE9iamVjdCB2YWx1ZSk7CisKK30gLy8gUG9pbnRGaWVsZApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9SYW5nZS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9SYW5nZS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUzMDZiNmUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1JhbmdlLmphdmEKQEAgLTAsMCArMSwyMzIgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSGVhZGVyOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5SYW5nZTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SYW5nZSNnZXRVTFRSQVNPVU5EIDxlbT5VTFRSQVNPVU5EPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SYW5nZSNnZXRJTkZSQVJFRCA8ZW0+SU5GUkFSRUQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlJhbmdlI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SYW5nZSNnZXRSYWRpYXRpb25fdHlwZSA8ZW0+UmFkaWF0aW9uIHR5cGU8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlJhbmdlI2dldEZpZWxkX29mX3ZpZXcgPGVtPkZpZWxkIG9mIHZpZXc8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlJhbmdlI2dldE1pbl9yYW5nZSA8ZW0+TWluIHJhbmdlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SYW5nZSNnZXRNYXhfcmFuZ2UgPGVtPk1heCByYW5nZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUmFuZ2UjZ2V0UmFuZ2UgPGVtPlJhbmdlPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRSYW5nZSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBSYW5nZSBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlVMVFJBU09VTkQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlVMVFJBU09VTkQ8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlVMVFJBU09VTkQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFVMVFJBU09VTkQoVUludDgpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRSYW5nZV9VTFRSQVNPVU5EKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQ4IiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRVTFRSQVNPVU5EKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SYW5nZSNnZXRVTFRSQVNPVU5EIDxlbT5VTFRSQVNPVU5EPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5VTFRSQVNPVU5EPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRVTFRSQVNPVU5EKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRVTFRSQVNPVU5EKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5JTkZSQVJFRDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+SU5GUkFSRUQ8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPklORlJBUkVEPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRJTkZSQVJFRChVSW50OCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldFJhbmdlX0lORlJBUkVEKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQ4IiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRJTkZSQVJFRCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUmFuZ2UjZ2V0SU5GUkFSRUQgPGVtPklORlJBUkVEPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5JTkZSQVJFRDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0SU5GUkFSRUQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldElORlJBUkVEKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+SGVhZGVyPC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRIZWFkZXIoSGVhZGVyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0UmFuZ2VfSGVhZGVyKCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJSGVhZGVyIGdldEhlYWRlcigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUmFuZ2UjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0SGVhZGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRIZWFkZXIoSGVhZGVyIHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlJhZGlhdGlvbiB0eXBlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5SYWRpYXRpb24gdHlwZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+UmFkaWF0aW9uIHR5cGU8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFJhZGlhdGlvbl90eXBlKFVJbnQ4KQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0UmFuZ2VfUmFkaWF0aW9uX3R5cGUoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDgiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFJhZGlhdGlvbl90eXBlKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SYW5nZSNnZXRSYWRpYXRpb25fdHlwZSA8ZW0+UmFkaWF0aW9uIHR5cGU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlJhZGlhdGlvbiB0eXBlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRSYWRpYXRpb25fdHlwZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0UmFkaWF0aW9uX3R5cGUoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkZpZWxkIG9mIHZpZXc8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkZpZWxkIG9mIHZpZXc8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkZpZWxkIG9mIHZpZXc8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldEZpZWxkX29mX3ZpZXcoRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldFJhbmdlX0ZpZWxkX29mX3ZpZXcoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0RmllbGRfb2ZfdmlldygpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUmFuZ2UjZ2V0RmllbGRfb2ZfdmlldyA8ZW0+RmllbGQgb2YgdmlldzwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+RmllbGQgb2YgdmlldzwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0RmllbGRfb2ZfdmlldygpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0RmllbGRfb2ZfdmlldyhPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TWluIHJhbmdlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5NaW4gcmFuZ2U8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPk1pbiByYW5nZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0TWluX3JhbmdlKEZsb2F0MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRSYW5nZV9NaW5fcmFuZ2UoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0TWluX3JhbmdlKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SYW5nZSNnZXRNaW5fcmFuZ2UgPGVtPk1pbiByYW5nZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TWluIHJhbmdlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRNaW5fcmFuZ2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldE1pbl9yYW5nZShPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TWF4IHJhbmdlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5NYXggcmFuZ2U8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPk1heCByYW5nZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0TWF4X3JhbmdlKEZsb2F0MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRSYW5nZV9NYXhfcmFuZ2UoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0TWF4X3JhbmdlKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SYW5nZSNnZXRNYXhfcmFuZ2UgPGVtPk1heCByYW5nZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TWF4IHJhbmdlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRNYXhfcmFuZ2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldE1heF9yYW5nZShPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+UmFuZ2U8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlJhbmdlPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5SYW5nZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0UmFuZ2UoRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldFJhbmdlX1JhbmdlKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFJhbmdlKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SYW5nZSNnZXRSYW5nZSA8ZW0+UmFuZ2U8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlJhbmdlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRSYW5nZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0UmFuZ2UoT2JqZWN0IHZhbHVlKTsKKworfSAvLyBSYW5nZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9SZWdpb25PZkludGVyZXN0LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1JlZ2lvbk9mSW50ZXJlc3QuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41NjdlN2Y0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9SZWdpb25PZkludGVyZXN0LmphdmEKQEAgLTAsMCArMSwxNTQgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlJlZ2lvbiBPZiBJbnRlcmVzdDwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SZWdpb25PZkludGVyZXN0I2dldFhfb2Zmc2V0IDxlbT5Yb2Zmc2V0PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SZWdpb25PZkludGVyZXN0I2dldFlfb2Zmc2V0IDxlbT5Zb2Zmc2V0PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SZWdpb25PZkludGVyZXN0I2dldEhlaWdodCA8ZW0+SGVpZ2h0PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SZWdpb25PZkludGVyZXN0I2dldERvX3JlY3RpZnkgPGVtPkRvIHJlY3RpZnk8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlJlZ2lvbk9mSW50ZXJlc3QjZ2V0V2lkdGggPGVtPldpZHRoPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRSZWdpb25PZkludGVyZXN0KCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFJlZ2lvbk9mSW50ZXJlc3QgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5Yb2Zmc2V0PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5Yb2Zmc2V0PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5Yb2Zmc2V0PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRYX29mZnNldChVSW50MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRSZWdpb25PZkludGVyZXN0X1hfb2Zmc2V0KCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0WF9vZmZzZXQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlJlZ2lvbk9mSW50ZXJlc3QjZ2V0WF9vZmZzZXQgPGVtPlhvZmZzZXQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlhvZmZzZXQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldFhfb2Zmc2V0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRYX29mZnNldChPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+WW9mZnNldDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+WW9mZnNldDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+WW9mZnNldDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0WV9vZmZzZXQoVUludDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0UmVnaW9uT2ZJbnRlcmVzdF9ZX29mZnNldCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFlfb2Zmc2V0KCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SZWdpb25PZkludGVyZXN0I2dldFlfb2Zmc2V0IDxlbT5Zb2Zmc2V0PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5Zb2Zmc2V0PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRZX29mZnNldCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0WV9vZmZzZXQoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkhlaWdodDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+SGVpZ2h0PC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5IZWlnaHQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldEhlaWdodChVSW50MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRSZWdpb25PZkludGVyZXN0X0hlaWdodCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldEhlaWdodCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUmVnaW9uT2ZJbnRlcmVzdCNnZXRIZWlnaHQgPGVtPkhlaWdodDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+SGVpZ2h0PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRIZWlnaHQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEhlaWdodChPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+RG8gcmVjdGlmeTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+RG8gcmVjdGlmeTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsCisJICogdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5EbyByZWN0aWZ5PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXREb19yZWN0aWZ5KEJvb2wpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRSZWdpb25PZkludGVyZXN0X0RvX3JlY3RpZnkoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuQm9vbCIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0RG9fcmVjdGlmeSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUmVnaW9uT2ZJbnRlcmVzdCNnZXREb19yZWN0aWZ5IDxlbT5EbyByZWN0aWZ5PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5EbyByZWN0aWZ5PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXREb19yZWN0aWZ5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXREb19yZWN0aWZ5KE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5XaWR0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+V2lkdGg8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPldpZHRoPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRXaWR0aChVSW50MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZSNnZXRSZWdpb25PZkludGVyZXN0X1dpZHRoKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0V2lkdGgoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlJlZ2lvbk9mSW50ZXJlc3QjZ2V0V2lkdGggPGVtPldpZHRoPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5XaWR0aDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0V2lkdGgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldFdpZHRoKE9iamVjdCB2YWx1ZSk7CisKK30gLy8gUmVnaW9uT2ZJbnRlcmVzdApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TRVJWSUNFX1RZUEUuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU0VSVklDRV9UWVBFLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWVlODYxNQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU0VSVklDRV9UWVBFLmphdmEKQEAgLTAsMCArMSwyNTggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzOworCitpbXBvcnQgamF2YS51dGlsLkFycmF5czsKK2ltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbnM7CitpbXBvcnQgamF2YS51dGlsLkxpc3Q7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbGl0ZXJhbHMgb2YgdGhlIGVudW1lcmF0aW9uICc8ZW0+PGI+U0VSVklDRSBUWVBFPC9iPjwvZW0+JywKKyAqIGFuZCB1dGlsaXR5IG1ldGhvZHMgZm9yIHdvcmtpbmcgd2l0aCB0aGVtLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2dldFNFUlZJQ0VfVFlQRSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGVudW0gU0VSVklDRV9UWVBFIGltcGxlbWVudHMgRW51bWVyYXRvciB7CisJLyoqCisJICogVGhlICc8ZW0+PGI+U0VSVklDRSBHUFM8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjU0VSVklDRV9HUFNfVkFMVUUKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlTRVJWSUNFX0dQUygwLCAiU0VSVklDRV9HUFMiLCAiU0VSVklDRV9HUFMiKSwKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPlNFUlZJQ0UgR0xPTkFTUzwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNTRVJWSUNFX0dMT05BU1NfVkFMVUUKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlTRVJWSUNFX0dMT05BU1MoMSwgIlNFUlZJQ0VfR0xPTkFTUyIsICJTRVJWSUNFX0dMT05BU1MiKSwKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPlNFUlZJQ0UgQ09NUEFTUzwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNTRVJWSUNFX0NPTVBBU1NfVkFMVUUKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlTRVJWSUNFX0NPTVBBU1MoMiwgIlNFUlZJQ0VfQ09NUEFTUyIsICJTRVJWSUNFX0NPTVBBU1MiKSwKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPlNFUlZJQ0UgR0FMSUxFTzwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNTRVJWSUNFX0dBTElMRU9fVkFMVUUKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlTRVJWSUNFX0dBTElMRU8oMywgIlNFUlZJQ0VfR0FMSUxFTyIsICJTRVJWSUNFX0dBTElMRU8iKTsKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPlNFUlZJQ0UgR1BTPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgJzxlbT48Yj5TRVJWSUNFIEdQUzwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjU0VSVklDRV9HUFMKKwkgKiBAbW9kZWwKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBTRVJWSUNFX0dQU19WQUxVRSA9IDA7CisKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5TRVJWSUNFIEdMT05BU1M8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiAnPGVtPjxiPlNFUlZJQ0UgR0xPTkFTUzwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjU0VSVklDRV9HTE9OQVNTCisJICogQG1vZGVsCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgU0VSVklDRV9HTE9OQVNTX1ZBTFVFID0gMTsKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPlNFUlZJQ0UgQ09NUEFTUzwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mICc8ZW0+PGI+U0VSVklDRSBDT01QQVNTPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdCBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNTRVJWSUNFX0NPTVBBU1MKKwkgKiBAbW9kZWwKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBTRVJWSUNFX0NPTVBBU1NfVkFMVUUgPSAyOworCisJLyoqCisJICogVGhlICc8ZW0+PGI+U0VSVklDRSBHQUxJTEVPPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgJzxlbT48Yj5TRVJWSUNFIEdBTElMRU88L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0IGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI1NFUlZJQ0VfR0FMSUxFTworCSAqIEBtb2RlbAorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgZmluYWwgaW50IFNFUlZJQ0VfR0FMSUxFT19WQUxVRSA9IDM7CisKKwkvKioKKwkgKiBBbiBhcnJheSBvZiBhbGwgdGhlICc8ZW0+PGI+U0VSVklDRSBUWVBFPC9iPjwvZW0+JyBlbnVtZXJhdG9ycy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIHN0YXRpYyBmaW5hbCBTRVJWSUNFX1RZUEVbXSBWQUxVRVNfQVJSQVkgPQorCQkJbmV3IFNFUlZJQ0VfVFlQRVtdIHsKKwkJCVNFUlZJQ0VfR1BTLAorCQkJU0VSVklDRV9HTE9OQVNTLAorCQkJU0VSVklDRV9DT01QQVNTLAorCQkJU0VSVklDRV9HQUxJTEVPLAorCQl9OworCisJLyoqCisJICogQSBwdWJsaWMgcmVhZC1vbmx5IGxpc3Qgb2YgYWxsIHRoZSAnPGVtPjxiPlNFUlZJQ0UgVFlQRTwvYj48L2VtPicgZW51bWVyYXRvcnMuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHN0YXRpYyBmaW5hbCBMaXN0PFNFUlZJQ0VfVFlQRT4gVkFMVUVTID0gQ29sbGVjdGlvbnMudW5tb2RpZmlhYmxlTGlzdChBcnJheXMuYXNMaXN0KFZBTFVFU19BUlJBWSkpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgJzxlbT48Yj5TRVJWSUNFIFRZUEU8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGxpdGVyYWwgdmFsdWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHN0YXRpYyBTRVJWSUNFX1RZUEUgZ2V0KFN0cmluZyBsaXRlcmFsKSB7CisJCWZvciAoaW50IGkgPSAwOyBpIDwgVkFMVUVTX0FSUkFZLmxlbmd0aDsgKytpKSB7CisJCQlTRVJWSUNFX1RZUEUgcmVzdWx0ID0gVkFMVUVTX0FSUkFZW2ldOworCQkJaWYgKHJlc3VsdC50b1N0cmluZygpLmVxdWFscyhsaXRlcmFsKSkgeworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgJzxlbT48Yj5TRVJWSUNFIFRZUEU8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHN0YXRpYyBTRVJWSUNFX1RZUEUgZ2V0QnlOYW1lKFN0cmluZyBuYW1lKSB7CisJCWZvciAoaW50IGkgPSAwOyBpIDwgVkFMVUVTX0FSUkFZLmxlbmd0aDsgKytpKSB7CisJCQlTRVJWSUNFX1RZUEUgcmVzdWx0ID0gVkFMVUVTX0FSUkFZW2ldOworCQkJaWYgKHJlc3VsdC5nZXROYW1lKCkuZXF1YWxzKG5hbWUpKSB7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJfQorCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSAnPGVtPjxiPlNFUlZJQ0UgVFlQRTwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgaW50ZWdlciB2YWx1ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIFNFUlZJQ0VfVFlQRSBnZXQoaW50IHZhbHVlKSB7CisJCXN3aXRjaCAodmFsdWUpIHsKKwkJCWNhc2UgU0VSVklDRV9HUFNfVkFMVUU6IHJldHVybiBTRVJWSUNFX0dQUzsKKwkJCWNhc2UgU0VSVklDRV9HTE9OQVNTX1ZBTFVFOiByZXR1cm4gU0VSVklDRV9HTE9OQVNTOworCQkJY2FzZSBTRVJWSUNFX0NPTVBBU1NfVkFMVUU6IHJldHVybiBTRVJWSUNFX0NPTVBBU1M7CisJCQljYXNlIFNFUlZJQ0VfR0FMSUxFT19WQUxVRTogcmV0dXJuIFNFUlZJQ0VfR0FMSUxFTzsKKwkJfQorCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIGZpbmFsIGludCB2YWx1ZTsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgZmluYWwgU3RyaW5nIG5hbWU7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIGZpbmFsIFN0cmluZyBsaXRlcmFsOworCisJLyoqCisJICogT25seSB0aGlzIGNsYXNzIGNhbiBjb25zdHJ1Y3QgaW5zdGFuY2VzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgU0VSVklDRV9UWVBFKGludCB2YWx1ZSwgU3RyaW5nIG5hbWUsIFN0cmluZyBsaXRlcmFsKSB7CisJCXRoaXMudmFsdWUgPSB2YWx1ZTsKKwkJdGhpcy5uYW1lID0gbmFtZTsKKwkJdGhpcy5saXRlcmFsID0gbGl0ZXJhbDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgaW50IGdldFZhbHVlKCkgeworCSAgcmV0dXJuIHZhbHVlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTdHJpbmcgZ2V0TmFtZSgpIHsKKwkgIHJldHVybiBuYW1lOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTdHJpbmcgZ2V0TGl0ZXJhbCgpIHsKKwkgIHJldHVybiBsaXRlcmFsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIGxpdGVyYWwgdmFsdWUgb2YgdGhlIGVudW1lcmF0b3IsIHdoaWNoIGlzIGl0cyBzdHJpbmcgcmVwcmVzZW50YXRpb24uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJcmV0dXJuIGxpdGVyYWw7CisJfQorCit9IC8vIFNFUlZJQ0VfVFlQRQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TVEFUVVNfVFlQRS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TVEFUVVNfVFlQRS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgwZTUyMDAKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NUQVRVU19UWVBFLmphdmEKQEAgLTAsMCArMSwyNTggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzOworCitpbXBvcnQgamF2YS51dGlsLkFycmF5czsKK2ltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbnM7CitpbXBvcnQgamF2YS51dGlsLkxpc3Q7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRW51bWVyYXRvcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbGl0ZXJhbHMgb2YgdGhlIGVudW1lcmF0aW9uICc8ZW0+PGI+U1RBVFVTIFRZUEU8L2I+PC9lbT4nLAorICogYW5kIHV0aWxpdHkgbWV0aG9kcyBmb3Igd29ya2luZyB3aXRoIHRoZW0uCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZ2V0U1RBVFVTX1RZUEUoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBlbnVtIFNUQVRVU19UWVBFIGltcGxlbWVudHMgRW51bWVyYXRvciB7CisJLyoqCisJICogVGhlICc8ZW0+PGI+U1RBVFVTIE5PIEZJWDwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNTVEFUVVNfTk9fRklYX1ZBTFVFCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJU1RBVFVTX05PX0ZJWCgwLCAiU1RBVFVTX05PX0ZJWCIsICJTVEFUVVNfTk9fRklYIiksCisKKwkvKioKKwkgKiBUaGUgJzxlbT48Yj5TVEFUVVMgRklYPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI1NUQVRVU19GSVhfVkFMVUUKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlTVEFUVVNfRklYKDEsICJTVEFUVVNfRklYIiwgIlNUQVRVU19GSVgiKSwKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPlNUQVRVUyBTQkFTIEZJWDwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNTVEFUVVNfU0JBU19GSVhfVkFMVUUKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlTVEFUVVNfU0JBU19GSVgoMiwgIlNUQVRVU19TQkFTX0ZJWCIsICJTVEFUVVNfU0JBU19GSVgiKSwKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPlNUQVRVUyBHQkFTIEZJWDwvYj48L2VtPicgbGl0ZXJhbCBvYmplY3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNTVEFUVVNfR0JBU19GSVhfVkFMVUUKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlTVEFUVVNfR0JBU19GSVgoMywgIlNUQVRVU19HQkFTX0ZJWCIsICJTVEFUVVNfR0JBU19GSVgiKTsKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPlNUQVRVUyBOTyBGSVg8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiAnPGVtPjxiPlNUQVRVUyBOTyBGSVg8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0IGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI1NUQVRVU19OT19GSVgKKwkgKiBAbW9kZWwKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBTVEFUVVNfTk9fRklYX1ZBTFVFID0gMDsKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPlNUQVRVUyBGSVg8L2I+PC9lbT4nIGxpdGVyYWwgdmFsdWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiAnPGVtPjxiPlNUQVRVUyBGSVg8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0IGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI1NUQVRVU19GSVgKKwkgKiBAbW9kZWwKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBTVEFUVVNfRklYX1ZBTFVFID0gMTsKKworCS8qKgorCSAqIFRoZSAnPGVtPjxiPlNUQVRVUyBTQkFTIEZJWDwvYj48L2VtPicgbGl0ZXJhbCB2YWx1ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mICc8ZW0+PGI+U1RBVFVTIFNCQVMgRklYPC9iPjwvZW0+JyBsaXRlcmFsIG9iamVjdCBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNTVEFUVVNfU0JBU19GSVgKKwkgKiBAbW9kZWwKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIGludCBTVEFUVVNfU0JBU19GSVhfVkFMVUUgPSAyOworCisJLyoqCisJICogVGhlICc8ZW0+PGI+U1RBVFVTIEdCQVMgRklYPC9iPjwvZW0+JyBsaXRlcmFsIHZhbHVlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgJzxlbT48Yj5TVEFUVVMgR0JBUyBGSVg8L2I+PC9lbT4nIGxpdGVyYWwgb2JqZWN0IGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI1NUQVRVU19HQkFTX0ZJWAorCSAqIEBtb2RlbAorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgZmluYWwgaW50IFNUQVRVU19HQkFTX0ZJWF9WQUxVRSA9IDM7CisKKwkvKioKKwkgKiBBbiBhcnJheSBvZiBhbGwgdGhlICc8ZW0+PGI+U1RBVFVTIFRZUEU8L2I+PC9lbT4nIGVudW1lcmF0b3JzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgc3RhdGljIGZpbmFsIFNUQVRVU19UWVBFW10gVkFMVUVTX0FSUkFZID0KKwkJCW5ldyBTVEFUVVNfVFlQRVtdIHsKKwkJCVNUQVRVU19OT19GSVgsCisJCQlTVEFUVVNfRklYLAorCQkJU1RBVFVTX1NCQVNfRklYLAorCQkJU1RBVFVTX0dCQVNfRklYLAorCQl9OworCisJLyoqCisJICogQSBwdWJsaWMgcmVhZC1vbmx5IGxpc3Qgb2YgYWxsIHRoZSAnPGVtPjxiPlNUQVRVUyBUWVBFPC9iPjwvZW0+JyBlbnVtZXJhdG9ycy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIGZpbmFsIExpc3Q8U1RBVFVTX1RZUEU+IFZBTFVFUyA9IENvbGxlY3Rpb25zLnVubW9kaWZpYWJsZUxpc3QoQXJyYXlzLmFzTGlzdChWQUxVRVNfQVJSQVkpKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlICc8ZW0+PGI+U1RBVFVTIFRZUEU8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIGxpdGVyYWwgdmFsdWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHN0YXRpYyBTVEFUVVNfVFlQRSBnZXQoU3RyaW5nIGxpdGVyYWwpIHsKKwkJZm9yIChpbnQgaSA9IDA7IGkgPCBWQUxVRVNfQVJSQVkubGVuZ3RoOyArK2kpIHsKKwkJCVNUQVRVU19UWVBFIHJlc3VsdCA9IFZBTFVFU19BUlJBWVtpXTsKKwkJCWlmIChyZXN1bHQudG9TdHJpbmcoKS5lcXVhbHMobGl0ZXJhbCkpIHsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQl9CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlICc8ZW0+PGI+U1RBVFVTIFRZUEU8L2I+PC9lbT4nIGxpdGVyYWwgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHN0YXRpYyBTVEFUVVNfVFlQRSBnZXRCeU5hbWUoU3RyaW5nIG5hbWUpIHsKKwkJZm9yIChpbnQgaSA9IDA7IGkgPCBWQUxVRVNfQVJSQVkubGVuZ3RoOyArK2kpIHsKKwkJCVNUQVRVU19UWVBFIHJlc3VsdCA9IFZBTFVFU19BUlJBWVtpXTsKKwkJCWlmIChyZXN1bHQuZ2V0TmFtZSgpLmVxdWFscyhuYW1lKSkgeworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCX0KKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgJzxlbT48Yj5TVEFUVVMgVFlQRTwvYj48L2VtPicgbGl0ZXJhbCB3aXRoIHRoZSBzcGVjaWZpZWQgaW50ZWdlciB2YWx1ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIFNUQVRVU19UWVBFIGdldChpbnQgdmFsdWUpIHsKKwkJc3dpdGNoICh2YWx1ZSkgeworCQkJY2FzZSBTVEFUVVNfTk9fRklYX1ZBTFVFOiByZXR1cm4gU1RBVFVTX05PX0ZJWDsKKwkJCWNhc2UgU1RBVFVTX0ZJWF9WQUxVRTogcmV0dXJuIFNUQVRVU19GSVg7CisJCQljYXNlIFNUQVRVU19TQkFTX0ZJWF9WQUxVRTogcmV0dXJuIFNUQVRVU19TQkFTX0ZJWDsKKwkJCWNhc2UgU1RBVFVTX0dCQVNfRklYX1ZBTFVFOiByZXR1cm4gU1RBVFVTX0dCQVNfRklYOworCQl9CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgZmluYWwgaW50IHZhbHVlOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBmaW5hbCBTdHJpbmcgbmFtZTsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgZmluYWwgU3RyaW5nIGxpdGVyYWw7CisKKwkvKioKKwkgKiBPbmx5IHRoaXMgY2xhc3MgY2FuIGNvbnN0cnVjdCBpbnN0YW5jZXMuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBTVEFUVVNfVFlQRShpbnQgdmFsdWUsIFN0cmluZyBuYW1lLCBTdHJpbmcgbGl0ZXJhbCkgeworCQl0aGlzLnZhbHVlID0gdmFsdWU7CisJCXRoaXMubmFtZSA9IG5hbWU7CisJCXRoaXMubGl0ZXJhbCA9IGxpdGVyYWw7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIGludCBnZXRWYWx1ZSgpIHsKKwkgIHJldHVybiB2YWx1ZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3RyaW5nIGdldE5hbWUoKSB7CisJICByZXR1cm4gbmFtZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3RyaW5nIGdldExpdGVyYWwoKSB7CisJICByZXR1cm4gbGl0ZXJhbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBsaXRlcmFsIHZhbHVlIG9mIHRoZSBlbnVtZXJhdG9yLCB3aGljaCBpcyBpdHMgc3RyaW5nIHJlcHJlc2VudGF0aW9uLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CisJCXJldHVybiBsaXRlcmFsOworCX0KKworfSAvLyBTVEFUVVNfVFlQRQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFhZjMwNjMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5LmphdmEKQEAgLTAsMCArMSwyMDQgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBUaGUgPGI+RmFjdG9yeTwvYj4gZm9yIHRoZSBtb2RlbC4KKyAqIEl0IHByb3ZpZGVzIGEgY3JlYXRlIG1ldGhvZCBmb3IgZWFjaCBub24tYWJzdHJhY3QgY2xhc3Mgb2YgdGhlIG1vZGVsLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkgZXh0ZW5kcyBFRmFjdG9yeSB7CisJLyoqCisJICogVGhlIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiB0aGUgZmFjdG9yeS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTZW5zb3JfZGF0YXR5cGVzRmFjdG9yeSBlSU5TVEFOQ0UgPSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5pbml0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlJlZ2lvbiBPZiBJbnRlcmVzdDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UmVnaW9uIE9mIEludGVyZXN0PC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlSZWdpb25PZkludGVyZXN0IGNyZWF0ZVJlZ2lvbk9mSW50ZXJlc3QoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UmFuZ2U8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlJhbmdlPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlSYW5nZSBjcmVhdGVSYW5nZSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5DYW1lcmEgSW5mbzwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Q2FtZXJhIEluZm88L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUNhbWVyYUluZm8gY3JlYXRlQ2FtZXJhSW5mbygpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5JbXU8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkltdTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJSW11IGNyZWF0ZUltdSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5MYXNlciBTY2FuPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5MYXNlciBTY2FuPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlMYXNlclNjYW4gY3JlYXRlTGFzZXJTY2FuKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkltYWdlPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5JbWFnZTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJSW1hZ2UgY3JlYXRlSW1hZ2UoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Q2hhbm5lbCBGbG9hdDMyPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5DaGFubmVsIEZsb2F0MzI8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUNoYW5uZWxGbG9hdDMyIGNyZWF0ZUNoYW5uZWxGbG9hdDMyKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkNvbXByZXNzZWQgSW1hZ2U8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkNvbXByZXNzZWQgSW1hZ2U8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUNvbXByZXNzZWRJbWFnZSBjcmVhdGVDb21wcmVzc2VkSW1hZ2UoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UG9pbnQgQ2xvdWQ8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlBvaW50IENsb3VkPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlQb2ludENsb3VkIGNyZWF0ZVBvaW50Q2xvdWQoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UG9pbnQgRmllbGQ8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlBvaW50IEZpZWxkPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlQb2ludEZpZWxkIGNyZWF0ZVBvaW50RmllbGQoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+UG9pbnQgQ2xvdWQyPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Qb2ludCBDbG91ZDI8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCVBvaW50Q2xvdWQyIGNyZWF0ZVBvaW50Q2xvdWQyKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkpvaW50IFN0YXRlPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Kb2ludCBTdGF0ZTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJSm9pbnRTdGF0ZSBjcmVhdGVKb2ludFN0YXRlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPk5hdiBTYXQgU3RhdHVzPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5OYXYgU2F0IFN0YXR1czwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJTmF2U2F0U3RhdHVzIGNyZWF0ZU5hdlNhdFN0YXR1cygpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5OYXYgU2F0IEZpeDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TmF2IFNhdCBGaXg8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCU5hdlNhdEZpeCBjcmVhdGVOYXZTYXRGaXgoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Sm95PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Kb3k8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUpveSBjcmVhdGVKb3koKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Sm95IEZlZWRiYWNrPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Kb3kgRmVlZGJhY2s8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUpveUZlZWRiYWNrIGNyZWF0ZUpveUZlZWRiYWNrKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkpveSBGZWVkYmFjayBBcnJheTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Sm95IEZlZWRiYWNrIEFycmF5PC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlKb3lGZWVkYmFja0FycmF5IGNyZWF0ZUpveUZlZWRiYWNrQXJyYXkoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+Q2FyIExpa2UgT2RvbWV0cnk8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkNhciBMaWtlIE9kb21ldHJ5PC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlDYXJMaWtlT2RvbWV0cnkgY3JlYXRlQ2FyTGlrZU9kb21ldHJ5KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkRpZmZlcmVudGlhbCBPZG9tZXRyeTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+RGlmZmVyZW50aWFsIE9kb21ldHJ5PC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlEaWZmZXJlbnRpYWxPZG9tZXRyeSBjcmVhdGVEaWZmZXJlbnRpYWxPZG9tZXRyeSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgcGFja2FnZSBzdXBwb3J0ZWQgYnkgdGhpcyBmYWN0b3J5LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgcGFja2FnZSBzdXBwb3J0ZWQgYnkgdGhpcyBmYWN0b3J5LgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTZW5zb3JfZGF0YXR5cGVzUGFja2FnZSBnZXRTZW5zb3JfZGF0YXR5cGVzUGFja2FnZSgpOworCit9IC8vIFNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL1NlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzk5YzU3NQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuamF2YQpAQCAtMCwwICsxLDQyMjQgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUVudW07CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBUaGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoZSBtb2RlbC4KKyAqIEl0IGNvbnRhaW5zIGFjY2Vzc29ycyBmb3IgdGhlIG1ldGEgb2JqZWN0cyB0byByZXByZXNlbnQKKyAqIDx1bD4KKyAqIDxsaT5lYWNoIGNsYXNzLDwvbGk+CisgKiA8bGk+ZWFjaCBmZWF0dXJlIG9mIGVhY2ggY2xhc3MsPC9saT4KKyAqIDxsaT5lYWNoIG9wZXJhdGlvbiBvZiBlYWNoIGNsYXNzLDwvbGk+CisgKiA8bGk+ZWFjaCBlbnVtLDwvbGk+CisgKiA8bGk+YW5kIGVhY2ggZGF0YSB0eXBlPC9saT4KKyAqIDwvdWw+CisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkKKyAqIEBtb2RlbCBraW5kPSJwYWNrYWdlIgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlIGV4dGVuZHMgRVBhY2thZ2UgeworCS8qKgorCSAqIFRoZSBwYWNrYWdlIG5hbWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJU3RyaW5nIGVOQU1FID0gInNlbnNvcl9kYXRhdHlwZXMiOworCisJLyoqCisJICogVGhlIHBhY2thZ2UgbmFtZXNwYWNlIFVSSS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTdHJpbmcgZU5TX1VSSSA9ICJodHRwOi8vL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy5lY29yZSI7CisKKwkvKioKKwkgKiBUaGUgcGFja2FnZSBuYW1lc3BhY2UgbmFtZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTdHJpbmcgZU5TX1BSRUZJWCA9ICJSb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMiOworCisJLyoqCisJICogVGhlIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiB0aGUgcGFja2FnZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTZW5zb3JfZGF0YXR5cGVzUGFja2FnZSBlSU5TVEFOQ0UgPSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbC5pbml0KCk7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuUmVnaW9uT2ZJbnRlcmVzdEltcGwgPGVtPlJlZ2lvbiBPZiBJbnRlcmVzdDwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuUmVnaW9uT2ZJbnRlcmVzdEltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldFJlZ2lvbk9mSW50ZXJlc3QoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgUkVHSU9OX09GX0lOVEVSRVNUID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Yb2Zmc2V0PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUkVHSU9OX09GX0lOVEVSRVNUX19YT0ZGU0VUID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Zb2Zmc2V0PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUkVHSU9OX09GX0lOVEVSRVNUX19ZT0ZGU0VUID0gMTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBSRUdJT05fT0ZfSU5URVJFU1RfX0hFSUdIVCA9IDI7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RG8gcmVjdGlmeTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFJFR0lPTl9PRl9JTlRFUkVTVF9fRE9fUkVDVElGWSA9IDM7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+V2lkdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBSRUdJT05fT0ZfSU5URVJFU1RfX1dJRFRIID0gNDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5SZWdpb24gT2YgSW50ZXJlc3Q8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUkVHSU9OX09GX0lOVEVSRVNUX0ZFQVRVUkVfQ09VTlQgPSA1OworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPlJlZ2lvbiBPZiBJbnRlcmVzdDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBSRUdJT05fT0ZfSU5URVJFU1RfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5SYW5nZUltcGwgPGVtPlJhbmdlPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5SYW5nZUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldFJhbmdlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFJBTkdFID0gMTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5VTFRSQVNPVU5EPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUkFOR0VfX1VMVFJBU09VTkQgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPklORlJBUkVEPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUkFOR0VfX0lORlJBUkVEID0gMTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBSQU5HRV9fSEVBREVSID0gMjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5SYWRpYXRpb24gdHlwZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFJBTkdFX19SQURJQVRJT05fVFlQRSA9IDM7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RmllbGQgb2YgdmlldzwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFJBTkdFX19GSUVMRF9PRl9WSUVXID0gNDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5NaW4gcmFuZ2U8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBSQU5HRV9fTUlOX1JBTkdFID0gNTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5NYXggcmFuZ2U8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBSQU5HRV9fTUFYX1JBTkdFID0gNjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5SYW5nZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFJBTkdFX19SQU5HRSA9IDc7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+UmFuZ2U8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUkFOR0VfRkVBVFVSRV9DT1VOVCA9IDg7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+UmFuZ2U8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUkFOR0VfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5DYW1lcmFJbmZvSW1wbCA8ZW0+Q2FtZXJhIEluZm88L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkNhbWVyYUluZm9JbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRDYW1lcmFJbmZvKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IENBTUVSQV9JTkZPID0gMjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDQU1FUkFfSU5GT19fSEVBREVSID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDQU1FUkFfSU5GT19fSEVJR0hUID0gMTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5XaWR0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IENBTUVSQV9JTkZPX19XSURUSCA9IDI7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RGlzdG9yc2lvbiBtb2RlbDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IENBTUVSQV9JTkZPX19ESVNUT1JTSU9OX01PREVMID0gMzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5EPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDQU1FUkFfSU5GT19fRCA9IDQ7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SzwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0FNRVJBX0lORk9fX0sgPSA1OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlI8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IENBTUVSQV9JTkZPX19SID0gNjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5QPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDQU1FUkFfSU5GT19fUCA9IDc7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmlubmluZyB4PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0FNRVJBX0lORk9fX0JJTk5JTkdfWCA9IDg7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QmlubmluZyB5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0FNRVJBX0lORk9fX0JJTk5JTkdfWSA9IDk7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+Um9pPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0FNRVJBX0lORk9fX1JPSSA9IDEwOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkNhbWVyYSBJbmZvPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IENBTUVSQV9JTkZPX0ZFQVRVUkVfQ09VTlQgPSAxMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5DYW1lcmEgSW5mbzwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDQU1FUkFfSU5GT19PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkltdUltcGwgPGVtPkltdTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuSW11SW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0SW11KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IElNVSA9IDM7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU1VX19IRUFERVIgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPk9yaWVudGF0aW9uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU1VX19PUklFTlRBVElPTiA9IDE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+T3JpZW50YXRpb24gY292YXJpYW5jZTwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU1VX19PUklFTlRBVElPTl9DT1ZBUklBTkNFID0gMjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Bbmd1bGFyIHZlbG9jaXR5PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU1VX19BTkdVTEFSX1ZFTE9DSVRZID0gMzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Bbmd1bGFyIHZlbG9jaXR5IGNvdmFyaWFuY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElNVV9fQU5HVUxBUl9WRUxPQ0lUWV9DT1ZBUklBTkNFID0gNDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaW5lYXIgYWNjZWxlcmF0aW9uPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU1VX19MSU5FQVJfQUNDRUxFUkFUSU9OID0gNTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MaW5lYXIgYWNjZWxlcmF0aW9uIGNvdmFyaWFuY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElNVV9fTElORUFSX0FDQ0VMRVJBVElPTl9DT1ZBUklBTkNFID0gNjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5JbXU8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU1VX0ZFQVRVUkVfQ09VTlQgPSA3OworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkltdTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBJTVVfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5MYXNlclNjYW5JbXBsIDxlbT5MYXNlciBTY2FuPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5MYXNlclNjYW5JbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRMYXNlclNjYW4oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgTEFTRVJfU0NBTiA9IDQ7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTEFTRVJfU0NBTl9fSEVBREVSID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbmdsZSBtaW48L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMQVNFUl9TQ0FOX19BTkdMRV9NSU4gPSAxOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkFuZ2xlIG1heDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExBU0VSX1NDQU5fX0FOR0xFX01BWCA9IDI7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QW5nbGUgaW5jcmVtZW50PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTEFTRVJfU0NBTl9fQU5HTEVfSU5DUkVNRU5UID0gMzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5UaW1lIGluY3JlbWVudDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExBU0VSX1NDQU5fX1RJTUVfSU5DUkVNRU5UID0gNDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TY2FuIHRpbWU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMQVNFUl9TQ0FOX19TQ0FOX1RJTUUgPSA1OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlJhbmdlIG1pbjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExBU0VSX1NDQU5fX1JBTkdFX01JTiA9IDY7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UmFuZ2UgbWF4PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTEFTRVJfU0NBTl9fUkFOR0VfTUFYID0gNzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5SYW5nZTwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTEFTRVJfU0NBTl9fUkFOR0UgPSA4OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkludGVuc2l0aWVzPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMQVNFUl9TQ0FOX19JTlRFTlNJVElFUyA9IDk7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+TGFzZXIgU2NhbjwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBMQVNFUl9TQ0FOX0ZFQVRVUkVfQ09VTlQgPSAxMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5MYXNlciBTY2FuPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IExBU0VSX1NDQU5fT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5JbWFnZUltcGwgPGVtPkltYWdlPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5JbWFnZUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldEltYWdlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IElNQUdFID0gNTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBJTUFHRV9fSEVBREVSID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBJTUFHRV9fSEVJR0hUID0gMTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5XaWR0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElNQUdFX19XSURUSCA9IDI7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RW5jb2Rpbmc8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBJTUFHRV9fRU5DT0RJTkcgPSAzOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPklzIGJpZ2VuZGlhbjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElNQUdFX19JU19CSUdFTkRJQU4gPSA0OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlN0ZXA8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBJTUFHRV9fU1RFUCA9IDU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RGF0YTwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU1BR0VfX0RBVEEgPSA2OworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkltYWdlPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElNQUdFX0ZFQVRVUkVfQ09VTlQgPSA3OworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkltYWdlPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElNQUdFX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuQ2hhbm5lbEZsb2F0MzJJbXBsIDxlbT5DaGFubmVsIEZsb2F0MzI8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkNoYW5uZWxGbG9hdDMySW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0Q2hhbm5lbEZsb2F0MzIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgQ0hBTk5FTF9GTE9BVDMyID0gNjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5OYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0hBTk5FTF9GTE9BVDMyX19OQU1FID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5WYWx1ZXM8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IENIQU5ORUxfRkxPQVQzMl9fVkFMVUVTID0gMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5DaGFubmVsIEZsb2F0MzI8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0hBTk5FTF9GTE9BVDMyX0ZFQVRVUkVfQ09VTlQgPSAyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkNoYW5uZWwgRmxvYXQzMjwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDSEFOTkVMX0ZMT0FUMzJfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Db21wcmVzc2VkSW1hZ2VJbXBsIDxlbT5Db21wcmVzc2VkIEltYWdlPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Db21wcmVzc2VkSW1hZ2VJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRDb21wcmVzc2VkSW1hZ2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgQ09NUFJFU1NFRF9JTUFHRSA9IDc7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ09NUFJFU1NFRF9JTUFHRV9fSEVBREVSID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Gb3JtYXQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDT01QUkVTU0VEX0lNQUdFX19GT1JNQVQgPSAxOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkRhdGE8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IENPTVBSRVNTRURfSU1BR0VfX0RBVEEgPSAyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkNvbXByZXNzZWQgSW1hZ2U8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ09NUFJFU1NFRF9JTUFHRV9GRUFUVVJFX0NPVU5UID0gMzsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5Db21wcmVzc2VkIEltYWdlPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IENPTVBSRVNTRURfSU1BR0VfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Qb2ludENsb3VkSW1wbCA8ZW0+UG9pbnQgQ2xvdWQ8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlBvaW50Q2xvdWRJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRQb2ludENsb3VkKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFBPSU5UX0NMT1VEID0gODsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT0lOVF9DTE9VRF9fSEVBREVSID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Qb2ludHM8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPSU5UX0NMT1VEX19QT0lOVFMgPSAxOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkNoYW5uZWxzPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT0lOVF9DTE9VRF9fQ0hBTk5FTFMgPSAyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlBvaW50IENsb3VkPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPSU5UX0NMT1VEX0ZFQVRVUkVfQ09VTlQgPSAzOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPlBvaW50IENsb3VkPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPSU5UX0NMT1VEX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuUG9pbnRGaWVsZEltcGwgPGVtPlBvaW50IEZpZWxkPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Qb2ludEZpZWxkSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0UG9pbnRGaWVsZCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBQT0lOVF9GSUVMRCA9IDk7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TmFtZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPSU5UX0ZJRUxEX19OQU1FID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5PZmZzZXQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT0lOVF9GSUVMRF9fT0ZGU0VUID0gMTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5EYXRhdHlwZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPSU5UX0ZJRUxEX19EQVRBVFlQRSA9IDI7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+Q291bnQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT0lOVF9GSUVMRF9fQ09VTlQgPSAzOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlBvaW50IEZpZWxkPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPSU5UX0ZJRUxEX0ZFQVRVUkVfQ09VTlQgPSA0OworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPlBvaW50IEZpZWxkPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPSU5UX0ZJRUxEX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuUG9pbnRDbG91ZDJJbXBsIDxlbT5Qb2ludCBDbG91ZDI8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlBvaW50Q2xvdWQySW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0UG9pbnRDbG91ZDIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgUE9JTlRfQ0xPVUQyID0gMTA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUE9JTlRfQ0xPVUQyX19IRUFERVIgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkhlaWdodDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPSU5UX0NMT1VEMl9fSEVJR0hUID0gMTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5XaWR0aDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPSU5UX0NMT1VEMl9fV0lEVEggPSAyOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkZpZWxkczwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUE9JTlRfQ0xPVUQyX19GSUVMRFMgPSAzOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPklzIGJpZ2VuZGlhbjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPSU5UX0NMT1VEMl9fSVNfQklHRU5ESUFOID0gNDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Qb2ludCBzdGVwPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUE9JTlRfQ0xPVUQyX19QT0lOVF9TVEVQID0gNTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Sb3cgc3RlcDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPSU5UX0NMT1VEMl9fUk9XX1NURVAgPSA2OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkRhdGE8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFBPSU5UX0NMT1VEMl9fREFUQSA9IDc7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SXMgZGVuc2U8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT0lOVF9DTE9VRDJfX0lTX0RFTlNFID0gODsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5Qb2ludCBDbG91ZDI8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgUE9JTlRfQ0xPVUQyX0ZFQVRVUkVfQ09VTlQgPSA5OworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPlBvaW50IENsb3VkMjwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBQT0lOVF9DTE9VRDJfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Kb2ludFN0YXRlSW1wbCA8ZW0+Sm9pbnQgU3RhdGU8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkpvaW50U3RhdGVJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRKb2ludFN0YXRlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IEpPSU5UX1NUQVRFID0gMTE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TmFtZTwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSk9JTlRfU1RBVEVfX05BTUUgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlBvc2l0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBKT0lOVF9TVEFURV9fUE9TSVRJT04gPSAxOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlZlbG9jaXR5PC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBKT0lOVF9TVEFURV9fVkVMT0NJVFkgPSAyOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkVmZm9ydDwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSk9JTlRfU1RBVEVfX0VGRk9SVCA9IDM7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+Sm9pbnQgU3RhdGU8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSk9JTlRfU1RBVEVfRkVBVFVSRV9DT1VOVCA9IDQ7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+Sm9pbnQgU3RhdGU8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSk9JTlRfU1RBVEVfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5OYXZTYXRTdGF0dXNJbXBsIDxlbT5OYXYgU2F0IFN0YXR1czwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuTmF2U2F0U3RhdHVzSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0TmF2U2F0U3RhdHVzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IE5BVl9TQVRfU1RBVFVTID0gMTI7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+U1RBVFVTIE5PIEZJWDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE5BVl9TQVRfU1RBVFVTX19TVEFUVVNfTk9fRklYID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TVEFUVVMgRklYPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTkFWX1NBVF9TVEFUVVNfX1NUQVRVU19GSVggPSAxOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlNUQVRVUyBTQkFTIEZJWDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE5BVl9TQVRfU1RBVFVTX19TVEFUVVNfU0JBU19GSVggPSAyOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlNUQVRVUyBHQkFTIEZJWDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE5BVl9TQVRfU1RBVFVTX19TVEFUVVNfR0JBU19GSVggPSAzOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlN0YXR1czwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE5BVl9TQVRfU1RBVFVTX19TVEFUVVMgPSA0OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlNFUlZJQ0UgR1BTPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTkFWX1NBVF9TVEFUVVNfX1NFUlZJQ0VfR1BTID0gNTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TRVJWSUNFIEdMT05BU1M8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBOQVZfU0FUX1NUQVRVU19fU0VSVklDRV9HTE9OQVNTID0gNjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TRVJWSUNFIENPTVBBU1M8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBOQVZfU0FUX1NUQVRVU19fU0VSVklDRV9DT01QQVNTID0gNzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TRVJWSUNFIEdBTElMRU88L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBOQVZfU0FUX1NUQVRVU19fU0VSVklDRV9HQUxJTEVPID0gODsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TZXJ2aWNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTkFWX1NBVF9TVEFUVVNfX1NFUlZJQ0UgPSA5OworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPk5hdiBTYXQgU3RhdHVzPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE5BVl9TQVRfU1RBVFVTX0ZFQVRVUkVfQ09VTlQgPSAxMDsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5OYXYgU2F0IFN0YXR1czwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBOQVZfU0FUX1NUQVRVU19PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLk5hdlNhdEZpeEltcGwgPGVtPk5hdiBTYXQgRml4PC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5OYXZTYXRGaXhJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXROYXZTYXRGaXgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgTkFWX1NBVF9GSVggPSAxMzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TdGF0dXM8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBOQVZfU0FUX0ZJWF9fU1RBVFVTID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5TZXJ2aWNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTkFWX1NBVF9GSVhfX1NFUlZJQ0UgPSAxOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE5BVl9TQVRfRklYX19IRUFERVIgPSAyOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxhdGl0dWRlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTkFWX1NBVF9GSVhfX0xBVElUVURFID0gMzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5Mb25naXR1ZGU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBOQVZfU0FUX0ZJWF9fTE9OR0lUVURFID0gNDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BbHRpdHVkZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE5BVl9TQVRfRklYX19BTFRJVFVERSA9IDU7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UG9zaXRpb24gY292YXJpYW5jZTwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTkFWX1NBVF9GSVhfX1BPU0lUSU9OX0NPVkFSSUFOQ0UgPSA2OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlBvc2l0aW9uIGNvdmFyaWFuY2UgdHlwZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE5BVl9TQVRfRklYX19QT1NJVElPTl9DT1ZBUklBTkNFX1RZUEUgPSA3OworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPk5hdiBTYXQgRml4PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE5BVl9TQVRfRklYX0ZFQVRVUkVfQ09VTlQgPSA4OworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPk5hdiBTYXQgRml4PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE5BVl9TQVRfRklYX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuSm95SW1wbCA8ZW0+Sm95PC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Kb3lJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRKb3koKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgSk9ZID0gMTQ7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSk9ZX19IRUFERVIgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkF4ZXM8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEpPWV9fQVhFUyA9IDE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QnV0dG9uczwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSk9ZX19CVVRUT05TID0gMjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5Kb3k8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSk9ZX0ZFQVRVUkVfQ09VTlQgPSAzOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkpveTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBKT1lfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Kb3lGZWVkYmFja0ltcGwgPGVtPkpveSBGZWVkYmFjazwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuSm95RmVlZGJhY2tJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRKb3lGZWVkYmFjaygpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBKT1lfRkVFREJBQ0sgPSAxNTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5UWVBFIExFRDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEpPWV9GRUVEQkFDS19fVFlQRV9MRUQgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlRZUEUgUlVNQkxFPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSk9ZX0ZFRURCQUNLX19UWVBFX1JVTUJMRSA9IDE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+VFlQRSBCVVpaRVI8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBKT1lfRkVFREJBQ0tfX1RZUEVfQlVaWkVSID0gMjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5UeXBlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSk9ZX0ZFRURCQUNLX19UWVBFID0gMzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5JZDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEpPWV9GRUVEQkFDS19fSUQgPSA0OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkludGVuc2l0eTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEpPWV9GRUVEQkFDS19fSU5URU5TSVRZID0gNTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5Kb3kgRmVlZGJhY2s8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSk9ZX0ZFRURCQUNLX0ZFQVRVUkVfQ09VTlQgPSA2OworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkpveSBGZWVkYmFjazwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBKT1lfRkVFREJBQ0tfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Kb3lGZWVkYmFja0FycmF5SW1wbCA8ZW0+Sm95IEZlZWRiYWNrIEFycmF5PC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Kb3lGZWVkYmFja0FycmF5SW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0Sm95RmVlZGJhY2tBcnJheSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBKT1lfRkVFREJBQ0tfQVJSQVkgPSAxNjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5BcnJheTwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSk9ZX0ZFRURCQUNLX0FSUkFZX19BUlJBWSA9IDA7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+Sm95IEZlZWRiYWNrIEFycmF5PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEpPWV9GRUVEQkFDS19BUlJBWV9GRUFUVVJFX0NPVU5UID0gMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5Kb3kgRmVlZGJhY2sgQXJyYXk8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSk9ZX0ZFRURCQUNLX0FSUkFZX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuQ2FyTGlrZU9kb21ldHJ5SW1wbCA8ZW0+Q2FyIExpa2UgT2RvbWV0cnk8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkNhckxpa2VPZG9tZXRyeUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldENhckxpa2VPZG9tZXRyeSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBDQVJfTElLRV9PRE9NRVRSWSA9IDE3OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IENBUl9MSUtFX09ET01FVFJZX19IRUFERVIgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlN0ZWVyaW5nIGFuZ2xlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0FSX0xJS0VfT0RPTUVUUllfX1NURUVSSU5HX0FOR0xFID0gMTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MZWZ0IHJlYXIgd2hlZWwgZGlzdGFuY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDQVJfTElLRV9PRE9NRVRSWV9fTEVGVF9SRUFSX1dIRUVMX0RJU1RBTkNFID0gMjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5SaWdodCByZWFyIHdoZWVsIGRpc3RhbmNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0FSX0xJS0VfT0RPTUVUUllfX1JJR0hUX1JFQVJfV0hFRUxfRElTVEFOQ0UgPSAzOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlJpZ2h0IHJlYXIgd2hlZWwgdmVsb2NpdHk8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDQVJfTElLRV9PRE9NRVRSWV9fUklHSFRfUkVBUl9XSEVFTF9WRUxPQ0lUWSA9IDQ7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGVmdCByZWFyIHdoZWVsIHZlbG9jaXR5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0FSX0xJS0VfT0RPTUVUUllfX0xFRlRfUkVBUl9XSEVFTF9WRUxPQ0lUWSA9IDU7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+Q2FyIExpa2UgT2RvbWV0cnk8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0FSX0xJS0VfT0RPTUVUUllfRkVBVFVSRV9DT1VOVCA9IDY7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+Q2FyIExpa2UgT2RvbWV0cnk8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ0FSX0xJS0VfT0RPTUVUUllfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5EaWZmZXJlbnRpYWxPZG9tZXRyeUltcGwgPGVtPkRpZmZlcmVudGlhbCBPZG9tZXRyeTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuRGlmZmVyZW50aWFsT2RvbWV0cnlJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXREaWZmZXJlbnRpYWxPZG9tZXRyeSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBESUZGRVJFTlRJQUxfT0RPTUVUUlkgPSAxODsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBESUZGRVJFTlRJQUxfT0RPTUVUUllfX0hFQURFUiA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+UmlnaHQgZGlzdGFuY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBESUZGRVJFTlRJQUxfT0RPTUVUUllfX1JJR0hUX0RJU1RBTkNFID0gMTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MZWZ0IGRpc3RhbmNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgRElGRkVSRU5USUFMX09ET01FVFJZX19MRUZUX0RJU1RBTkNFID0gMjsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MZWZ0IHZlbG9jaXR5PC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgRElGRkVSRU5USUFMX09ET01FVFJZX19MRUZUX1ZFTE9DSVRZID0gMzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5SaWdodCB2ZWxvY2l0eTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IERJRkZFUkVOVElBTF9PRE9NRVRSWV9fUklHSFRfVkVMT0NJVFkgPSA0OworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkRpZmZlcmVudGlhbCBPZG9tZXRyeTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBESUZGRVJFTlRJQUxfT0RPTUVUUllfRkVBVFVSRV9DT1VOVCA9IDU7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+RGlmZmVyZW50aWFsIE9kb21ldHJ5PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IERJRkZFUkVOVElBTF9PRE9NRVRSWV9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TVEFUVVNfVFlQRSA8ZW0+U1RBVFVTIFRZUEU8L2VtPn0nIGVudW0uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNUQVRVU19UWVBFCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRTVEFUVVNfVFlQRSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBTVEFUVVNfVFlQRSA9IDE5OworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TRVJWSUNFX1RZUEUgPGVtPlNFUlZJQ0UgVFlQRTwvZW0+fScgZW51bS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU0VSVklDRV9UWVBFCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRTRVJWSUNFX1RZUEUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgU0VSVklDRV9UWVBFID0gMjA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNPVkFSSUFOQ0VfVFlQRSA8ZW0+Q09WQVJJQU5DRSBUWVBFPC9lbT59JyBlbnVtLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DT1ZBUklBTkNFX1RZUEUKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldENPVkFSSUFOQ0VfVFlQRSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBDT1ZBUklBTkNFX1RZUEUgPSAyMTsKKworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUmVnaW9uT2ZJbnRlcmVzdCA8ZW0+UmVnaW9uIE9mIEludGVyZXN0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlJlZ2lvbiBPZiBJbnRlcmVzdDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlJlZ2lvbk9mSW50ZXJlc3QKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldFJlZ2lvbk9mSW50ZXJlc3QoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUmVnaW9uT2ZJbnRlcmVzdCNnZXRYX29mZnNldCA8ZW0+WG9mZnNldDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlhvZmZzZXQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SZWdpb25PZkludGVyZXN0I2dldFhfb2Zmc2V0KCkKKwkgKiBAc2VlICNnZXRSZWdpb25PZkludGVyZXN0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRSZWdpb25PZkludGVyZXN0X1hfb2Zmc2V0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlJlZ2lvbk9mSW50ZXJlc3QjZ2V0WV9vZmZzZXQgPGVtPllvZmZzZXQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5Zb2Zmc2V0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUmVnaW9uT2ZJbnRlcmVzdCNnZXRZX29mZnNldCgpCisJICogQHNlZSAjZ2V0UmVnaW9uT2ZJbnRlcmVzdCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0UmVnaW9uT2ZJbnRlcmVzdF9ZX29mZnNldCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SZWdpb25PZkludGVyZXN0I2dldEhlaWdodCA8ZW0+SGVpZ2h0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+SGVpZ2h0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUmVnaW9uT2ZJbnRlcmVzdCNnZXRIZWlnaHQoKQorCSAqIEBzZWUgI2dldFJlZ2lvbk9mSW50ZXJlc3QoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFJlZ2lvbk9mSW50ZXJlc3RfSGVpZ2h0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlJlZ2lvbk9mSW50ZXJlc3QjZ2V0RG9fcmVjdGlmeSA8ZW0+RG8gcmVjdGlmeTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkRvIHJlY3RpZnk8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SZWdpb25PZkludGVyZXN0I2dldERvX3JlY3RpZnkoKQorCSAqIEBzZWUgI2dldFJlZ2lvbk9mSW50ZXJlc3QoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFJlZ2lvbk9mSW50ZXJlc3RfRG9fcmVjdGlmeSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SZWdpb25PZkludGVyZXN0I2dldFdpZHRoIDxlbT5XaWR0aDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPldpZHRoPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUmVnaW9uT2ZJbnRlcmVzdCNnZXRXaWR0aCgpCisJICogQHNlZSAjZ2V0UmVnaW9uT2ZJbnRlcmVzdCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0UmVnaW9uT2ZJbnRlcmVzdF9XaWR0aCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUmFuZ2UgPGVtPlJhbmdlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlJhbmdlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUmFuZ2UKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldFJhbmdlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlJhbmdlI2dldFVMVFJBU09VTkQgPGVtPlVMVFJBU09VTkQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5VTFRSQVNPVU5EPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUmFuZ2UjZ2V0VUxUUkFTT1VORCgpCisJICogQHNlZSAjZ2V0UmFuZ2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFJhbmdlX1VMVFJBU09VTkQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUmFuZ2UjZ2V0SU5GUkFSRUQgPGVtPklORlJBUkVEPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+SU5GUkFSRUQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SYW5nZSNnZXRJTkZSQVJFRCgpCisJICogQHNlZSAjZ2V0UmFuZ2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFJhbmdlX0lORlJBUkVEKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlJhbmdlI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+SGVhZGVyPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUmFuZ2UjZ2V0SGVhZGVyKCkKKwkgKiBAc2VlICNnZXRSYW5nZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0UmFuZ2VfSGVhZGVyKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlJhbmdlI2dldFJhZGlhdGlvbl90eXBlIDxlbT5SYWRpYXRpb24gdHlwZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlJhZGlhdGlvbiB0eXBlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUmFuZ2UjZ2V0UmFkaWF0aW9uX3R5cGUoKQorCSAqIEBzZWUgI2dldFJhbmdlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRSYW5nZV9SYWRpYXRpb25fdHlwZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SYW5nZSNnZXRGaWVsZF9vZl92aWV3IDxlbT5GaWVsZCBvZiB2aWV3PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+RmllbGQgb2YgdmlldzwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlJhbmdlI2dldEZpZWxkX29mX3ZpZXcoKQorCSAqIEBzZWUgI2dldFJhbmdlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRSYW5nZV9GaWVsZF9vZl92aWV3KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlJhbmdlI2dldE1pbl9yYW5nZSA8ZW0+TWluIHJhbmdlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+TWluIHJhbmdlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUmFuZ2UjZ2V0TWluX3JhbmdlKCkKKwkgKiBAc2VlICNnZXRSYW5nZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0UmFuZ2VfTWluX3JhbmdlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlJhbmdlI2dldE1heF9yYW5nZSA8ZW0+TWF4IHJhbmdlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+TWF4IHJhbmdlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUmFuZ2UjZ2V0TWF4X3JhbmdlKCkKKwkgKiBAc2VlICNnZXRSYW5nZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0UmFuZ2VfTWF4X3JhbmdlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlJhbmdlI2dldFJhbmdlIDxlbT5SYW5nZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlJhbmdlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUmFuZ2UjZ2V0UmFuZ2UoKQorCSAqIEBzZWUgI2dldFJhbmdlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRSYW5nZV9SYW5nZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FtZXJhSW5mbyA8ZW0+Q2FtZXJhIEluZm88L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+Q2FtZXJhIEluZm88L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYW1lcmFJbmZvCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRDYW1lcmFJbmZvKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNhbWVyYUluZm8jZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5IZWFkZXI8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYW1lcmFJbmZvI2dldEhlYWRlcigpCisJICogQHNlZSAjZ2V0Q2FtZXJhSW5mbygpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0Q2FtZXJhSW5mb19IZWFkZXIoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FtZXJhSW5mbyNnZXRIZWlnaHQgPGVtPkhlaWdodDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkhlaWdodDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNhbWVyYUluZm8jZ2V0SGVpZ2h0KCkKKwkgKiBAc2VlICNnZXRDYW1lcmFJbmZvKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRDYW1lcmFJbmZvX0hlaWdodCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYW1lcmFJbmZvI2dldFdpZHRoIDxlbT5XaWR0aDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPldpZHRoPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FtZXJhSW5mbyNnZXRXaWR0aCgpCisJICogQHNlZSAjZ2V0Q2FtZXJhSW5mbygpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0Q2FtZXJhSW5mb19XaWR0aCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYW1lcmFJbmZvI2dldERpc3RvcnNpb25fbW9kZWwgPGVtPkRpc3RvcnNpb24gbW9kZWw8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5EaXN0b3JzaW9uIG1vZGVsPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FtZXJhSW5mbyNnZXREaXN0b3JzaW9uX21vZGVsKCkKKwkgKiBAc2VlICNnZXRDYW1lcmFJbmZvKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRDYW1lcmFJbmZvX0Rpc3RvcnNpb25fbW9kZWwoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlIGxpc3QgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYW1lcmFJbmZvI2dldEQgPGVtPkQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAnPGVtPkQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYW1lcmFJbmZvI2dldEQoKQorCSAqIEBzZWUgI2dldENhbWVyYUluZm8oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldENhbWVyYUluZm9fRCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNhbWVyYUluZm8jZ2V0SyA8ZW0+SzwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICc8ZW0+SzwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNhbWVyYUluZm8jZ2V0SygpCisJICogQHNlZSAjZ2V0Q2FtZXJhSW5mbygpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0Q2FtZXJhSW5mb19LKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FtZXJhSW5mbyNnZXRSIDxlbT5SPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlIGxpc3QgJzxlbT5SPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FtZXJhSW5mbyNnZXRSKCkKKwkgKiBAc2VlICNnZXRDYW1lcmFJbmZvKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRDYW1lcmFJbmZvX1IoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlIGxpc3QgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYW1lcmFJbmZvI2dldFAgPGVtPlA8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAnPGVtPlA8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYW1lcmFJbmZvI2dldFAoKQorCSAqIEBzZWUgI2dldENhbWVyYUluZm8oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldENhbWVyYUluZm9fUCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYW1lcmFJbmZvI2dldEJpbm5pbmdfeCA8ZW0+QmlubmluZyB4PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+QmlubmluZyB4PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FtZXJhSW5mbyNnZXRCaW5uaW5nX3goKQorCSAqIEBzZWUgI2dldENhbWVyYUluZm8oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldENhbWVyYUluZm9fQmlubmluZ194KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNhbWVyYUluZm8jZ2V0QmlubmluZ195IDxlbT5CaW5uaW5nIHk8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5CaW5uaW5nIHk8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYW1lcmFJbmZvI2dldEJpbm5pbmdfeSgpCisJICogQHNlZSAjZ2V0Q2FtZXJhSW5mbygpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0Q2FtZXJhSW5mb19CaW5uaW5nX3koKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FtZXJhSW5mbyNnZXRSb2kgPGVtPlJvaTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPlJvaTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNhbWVyYUluZm8jZ2V0Um9pKCkKKwkgKiBAc2VlICNnZXRDYW1lcmFJbmZvKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRDYW1lcmFJbmZvX1JvaSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW11IDxlbT5JbXU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+SW11PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW11CisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRJbXUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW11I2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+SGVhZGVyPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW11I2dldEhlYWRlcigpCisJICogQHNlZSAjZ2V0SW11KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRJbXVfSGVhZGVyKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltdSNnZXRPcmllbnRhdGlvbiA8ZW0+T3JpZW50YXRpb248L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5PcmllbnRhdGlvbjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltdSNnZXRPcmllbnRhdGlvbigpCisJICogQHNlZSAjZ2V0SW11KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRJbXVfT3JpZW50YXRpb24oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlIGxpc3QgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5JbXUjZ2V0T3JpZW50YXRpb25fY292YXJpYW5jZSA8ZW0+T3JpZW50YXRpb24gY292YXJpYW5jZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICc8ZW0+T3JpZW50YXRpb24gY292YXJpYW5jZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltdSNnZXRPcmllbnRhdGlvbl9jb3ZhcmlhbmNlKCkKKwkgKiBAc2VlICNnZXRJbXUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEltdV9PcmllbnRhdGlvbl9jb3ZhcmlhbmNlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltdSNnZXRBbmd1bGFyX3ZlbG9jaXR5IDxlbT5Bbmd1bGFyIHZlbG9jaXR5PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+QW5ndWxhciB2ZWxvY2l0eTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltdSNnZXRBbmd1bGFyX3ZlbG9jaXR5KCkKKwkgKiBAc2VlICNnZXRJbXUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldEltdV9Bbmd1bGFyX3ZlbG9jaXR5KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW11I2dldEFuZ3VsYXJfdmVsb2NpdHlfY292YXJpYW5jZSA8ZW0+QW5ndWxhciB2ZWxvY2l0eSBjb3ZhcmlhbmNlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlIGxpc3QgJzxlbT5Bbmd1bGFyIHZlbG9jaXR5IGNvdmFyaWFuY2U8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5JbXUjZ2V0QW5ndWxhcl92ZWxvY2l0eV9jb3ZhcmlhbmNlKCkKKwkgKiBAc2VlICNnZXRJbXUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEltdV9Bbmd1bGFyX3ZlbG9jaXR5X2NvdmFyaWFuY2UoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW11I2dldExpbmVhcl9hY2NlbGVyYXRpb24gPGVtPkxpbmVhciBhY2NlbGVyYXRpb248L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5MaW5lYXIgYWNjZWxlcmF0aW9uPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW11I2dldExpbmVhcl9hY2NlbGVyYXRpb24oKQorCSAqIEBzZWUgI2dldEltdSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0SW11X0xpbmVhcl9hY2NlbGVyYXRpb24oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlIGxpc3QgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5JbXUjZ2V0TGluZWFyX2FjY2VsZXJhdGlvbl9jb3ZhcmlhbmNlIDxlbT5MaW5lYXIgYWNjZWxlcmF0aW9uIGNvdmFyaWFuY2U8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAnPGVtPkxpbmVhciBhY2NlbGVyYXRpb24gY292YXJpYW5jZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltdSNnZXRMaW5lYXJfYWNjZWxlcmF0aW9uX2NvdmFyaWFuY2UoKQorCSAqIEBzZWUgI2dldEltdSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0SW11X0xpbmVhcl9hY2NlbGVyYXRpb25fY292YXJpYW5jZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTGFzZXJTY2FuIDxlbT5MYXNlciBTY2FuPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkxhc2VyIFNjYW48L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5MYXNlclNjYW4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldExhc2VyU2NhbigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5MYXNlclNjYW4jZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5IZWFkZXI8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5MYXNlclNjYW4jZ2V0SGVhZGVyKCkKKwkgKiBAc2VlICNnZXRMYXNlclNjYW4oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldExhc2VyU2Nhbl9IZWFkZXIoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTGFzZXJTY2FuI2dldEFuZ2xlX21pbiA8ZW0+QW5nbGUgbWluPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+QW5nbGUgbWluPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTGFzZXJTY2FuI2dldEFuZ2xlX21pbigpCisJICogQHNlZSAjZ2V0TGFzZXJTY2FuKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRMYXNlclNjYW5fQW5nbGVfbWluKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkxhc2VyU2NhbiNnZXRBbmdsZV9tYXggPGVtPkFuZ2xlIG1heDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkFuZ2xlIG1heDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkxhc2VyU2NhbiNnZXRBbmdsZV9tYXgoKQorCSAqIEBzZWUgI2dldExhc2VyU2NhbigpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0TGFzZXJTY2FuX0FuZ2xlX21heCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5MYXNlclNjYW4jZ2V0QW5nbGVfaW5jcmVtZW50IDxlbT5BbmdsZSBpbmNyZW1lbnQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5BbmdsZSBpbmNyZW1lbnQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5MYXNlclNjYW4jZ2V0QW5nbGVfaW5jcmVtZW50KCkKKwkgKiBAc2VlICNnZXRMYXNlclNjYW4oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldExhc2VyU2Nhbl9BbmdsZV9pbmNyZW1lbnQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTGFzZXJTY2FuI2dldFRpbWVfaW5jcmVtZW50IDxlbT5UaW1lIGluY3JlbWVudDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlRpbWUgaW5jcmVtZW50PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTGFzZXJTY2FuI2dldFRpbWVfaW5jcmVtZW50KCkKKwkgKiBAc2VlICNnZXRMYXNlclNjYW4oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldExhc2VyU2Nhbl9UaW1lX2luY3JlbWVudCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5MYXNlclNjYW4jZ2V0U2Nhbl90aW1lIDxlbT5TY2FuIHRpbWU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5TY2FuIHRpbWU8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5MYXNlclNjYW4jZ2V0U2Nhbl90aW1lKCkKKwkgKiBAc2VlICNnZXRMYXNlclNjYW4oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldExhc2VyU2Nhbl9TY2FuX3RpbWUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTGFzZXJTY2FuI2dldFJhbmdlX21pbiA8ZW0+UmFuZ2UgbWluPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+UmFuZ2UgbWluPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTGFzZXJTY2FuI2dldFJhbmdlX21pbigpCisJICogQHNlZSAjZ2V0TGFzZXJTY2FuKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRMYXNlclNjYW5fUmFuZ2VfbWluKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkxhc2VyU2NhbiNnZXRSYW5nZV9tYXggPGVtPlJhbmdlIG1heDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlJhbmdlIG1heDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkxhc2VyU2NhbiNnZXRSYW5nZV9tYXgoKQorCSAqIEBzZWUgI2dldExhc2VyU2NhbigpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0TGFzZXJTY2FuX1JhbmdlX21heCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkxhc2VyU2NhbiNnZXRSYW5nZSA8ZW0+UmFuZ2U8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAnPGVtPlJhbmdlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTGFzZXJTY2FuI2dldFJhbmdlKCkKKwkgKiBAc2VlICNnZXRMYXNlclNjYW4oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldExhc2VyU2Nhbl9SYW5nZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkxhc2VyU2NhbiNnZXRJbnRlbnNpdGllcyA8ZW0+SW50ZW5zaXRpZXM8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAnPGVtPkludGVuc2l0aWVzPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTGFzZXJTY2FuI2dldEludGVuc2l0aWVzKCkKKwkgKiBAc2VlICNnZXRMYXNlclNjYW4oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldExhc2VyU2Nhbl9JbnRlbnNpdGllcygpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW1hZ2UgPGVtPkltYWdlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkltYWdlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW1hZ2UKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldEltYWdlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltYWdlI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+SGVhZGVyPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW1hZ2UjZ2V0SGVhZGVyKCkKKwkgKiBAc2VlICNnZXRJbWFnZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0SW1hZ2VfSGVhZGVyKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltYWdlI2dldEhlaWdodCA8ZW0+SGVpZ2h0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+SGVpZ2h0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW1hZ2UjZ2V0SGVpZ2h0KCkKKwkgKiBAc2VlICNnZXRJbWFnZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0SW1hZ2VfSGVpZ2h0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltYWdlI2dldFdpZHRoIDxlbT5XaWR0aDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPldpZHRoPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW1hZ2UjZ2V0V2lkdGgoKQorCSAqIEBzZWUgI2dldEltYWdlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRJbWFnZV9XaWR0aCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5JbWFnZSNnZXRFbmNvZGluZyA8ZW0+RW5jb2Rpbmc8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5FbmNvZGluZzwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltYWdlI2dldEVuY29kaW5nKCkKKwkgKiBAc2VlICNnZXRJbWFnZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0SW1hZ2VfRW5jb2RpbmcoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW1hZ2UjZ2V0SXNfYmlnZW5kaWFuIDxlbT5JcyBiaWdlbmRpYW48L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5JcyBiaWdlbmRpYW48L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5JbWFnZSNnZXRJc19iaWdlbmRpYW4oKQorCSAqIEBzZWUgI2dldEltYWdlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRJbWFnZV9Jc19iaWdlbmRpYW4oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW1hZ2UjZ2V0U3RlcCA8ZW0+U3RlcDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlN0ZXA8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5JbWFnZSNnZXRTdGVwKCkKKwkgKiBAc2VlICNnZXRJbWFnZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0SW1hZ2VfU3RlcCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltYWdlI2dldERhdGEgPGVtPkRhdGE8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAnPGVtPkRhdGE8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5JbWFnZSNnZXREYXRhKCkKKwkgKiBAc2VlICNnZXRJbWFnZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0SW1hZ2VfRGF0YSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2hhbm5lbEZsb2F0MzIgPGVtPkNoYW5uZWwgRmxvYXQzMjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5DaGFubmVsIEZsb2F0MzI8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DaGFubmVsRmxvYXQzMgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0Q2hhbm5lbEZsb2F0MzIoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2hhbm5lbEZsb2F0MzIjZ2V0TmFtZSA8ZW0+TmFtZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPk5hbWU8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DaGFubmVsRmxvYXQzMiNnZXROYW1lKCkKKwkgKiBAc2VlICNnZXRDaGFubmVsRmxvYXQzMigpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0Q2hhbm5lbEZsb2F0MzJfTmFtZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNoYW5uZWxGbG9hdDMyI2dldFZhbHVlcyA8ZW0+VmFsdWVzPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlIGxpc3QgJzxlbT5WYWx1ZXM8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DaGFubmVsRmxvYXQzMiNnZXRWYWx1ZXMoKQorCSAqIEBzZWUgI2dldENoYW5uZWxGbG9hdDMyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRDaGFubmVsRmxvYXQzMl9WYWx1ZXMoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNvbXByZXNzZWRJbWFnZSA8ZW0+Q29tcHJlc3NlZCBJbWFnZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5Db21wcmVzc2VkIEltYWdlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ29tcHJlc3NlZEltYWdlCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRDb21wcmVzc2VkSW1hZ2UoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ29tcHJlc3NlZEltYWdlI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+SGVhZGVyPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ29tcHJlc3NlZEltYWdlI2dldEhlYWRlcigpCisJICogQHNlZSAjZ2V0Q29tcHJlc3NlZEltYWdlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRDb21wcmVzc2VkSW1hZ2VfSGVhZGVyKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNvbXByZXNzZWRJbWFnZSNnZXRGb3JtYXQgPGVtPkZvcm1hdDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkZvcm1hdDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNvbXByZXNzZWRJbWFnZSNnZXRGb3JtYXQoKQorCSAqIEBzZWUgI2dldENvbXByZXNzZWRJbWFnZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0Q29tcHJlc3NlZEltYWdlX0Zvcm1hdCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNvbXByZXNzZWRJbWFnZSNnZXREYXRhIDxlbT5EYXRhPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlIGxpc3QgJzxlbT5EYXRhPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ29tcHJlc3NlZEltYWdlI2dldERhdGEoKQorCSAqIEBzZWUgI2dldENvbXByZXNzZWRJbWFnZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0Q29tcHJlc3NlZEltYWdlX0RhdGEoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50Q2xvdWQgPGVtPlBvaW50IENsb3VkPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlBvaW50IENsb3VkPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0UG9pbnRDbG91ZCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludENsb3VkI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+SGVhZGVyPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZCNnZXRIZWFkZXIoKQorCSAqIEBzZWUgI2dldFBvaW50Q2xvdWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFBvaW50Q2xvdWRfSGVhZGVyKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0ICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZCNnZXRQb2ludHMgPGVtPlBvaW50czwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0ICc8ZW0+UG9pbnRzPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZCNnZXRQb2ludHMoKQorCSAqIEBzZWUgI2dldFBvaW50Q2xvdWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFBvaW50Q2xvdWRfUG9pbnRzKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0ICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZCNnZXRDaGFubmVscyA8ZW0+Q2hhbm5lbHM8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdCAnPGVtPkNoYW5uZWxzPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZCNnZXRDaGFubmVscygpCisJICogQHNlZSAjZ2V0UG9pbnRDbG91ZCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0UG9pbnRDbG91ZF9DaGFubmVscygpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRGaWVsZCA8ZW0+UG9pbnQgRmllbGQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+UG9pbnQgRmllbGQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludEZpZWxkCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRQb2ludEZpZWxkKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50RmllbGQjZ2V0TmFtZSA8ZW0+TmFtZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPk5hbWU8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludEZpZWxkI2dldE5hbWUoKQorCSAqIEBzZWUgI2dldFBvaW50RmllbGQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFBvaW50RmllbGRfTmFtZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludEZpZWxkI2dldE9mZnNldCA8ZW0+T2Zmc2V0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+T2Zmc2V0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRGaWVsZCNnZXRPZmZzZXQoKQorCSAqIEBzZWUgI2dldFBvaW50RmllbGQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFBvaW50RmllbGRfT2Zmc2V0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50RmllbGQjZ2V0RGF0YXR5cGUgPGVtPkRhdGF0eXBlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+RGF0YXR5cGU8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludEZpZWxkI2dldERhdGF0eXBlKCkKKwkgKiBAc2VlICNnZXRQb2ludEZpZWxkKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRQb2ludEZpZWxkX0RhdGF0eXBlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50RmllbGQjZ2V0Q291bnQgPGVtPkNvdW50PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+Q291bnQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludEZpZWxkI2dldENvdW50KCkKKwkgKiBAc2VlICNnZXRQb2ludEZpZWxkKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRQb2ludEZpZWxkX0NvdW50KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludENsb3VkMiA8ZW0+UG9pbnQgQ2xvdWQyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlBvaW50IENsb3VkMjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50Q2xvdWQyCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRQb2ludENsb3VkMigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludENsb3VkMiNnZXRIZWFkZXIgPGVtPkhlYWRlcjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPkhlYWRlcjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50Q2xvdWQyI2dldEhlYWRlcigpCisJICogQHNlZSAjZ2V0UG9pbnRDbG91ZDIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFBvaW50Q2xvdWQyX0hlYWRlcigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludENsb3VkMiNnZXRIZWlnaHQgPGVtPkhlaWdodDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkhlaWdodDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50Q2xvdWQyI2dldEhlaWdodCgpCisJICogQHNlZSAjZ2V0UG9pbnRDbG91ZDIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFBvaW50Q2xvdWQyX0hlaWdodCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludENsb3VkMiNnZXRXaWR0aCA8ZW0+V2lkdGg8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5XaWR0aDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50Q2xvdWQyI2dldFdpZHRoKCkKKwkgKiBAc2VlICNnZXRQb2ludENsb3VkMigpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0UG9pbnRDbG91ZDJfV2lkdGgoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludENsb3VkMiNnZXRGaWVsZHMgPGVtPkZpZWxkczwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0ICc8ZW0+RmllbGRzPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZDIjZ2V0RmllbGRzKCkKKwkgKiBAc2VlICNnZXRQb2ludENsb3VkMigpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0UG9pbnRDbG91ZDJfRmllbGRzKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50Q2xvdWQyI2dldElzX2JpZ2VuZGlhbiA8ZW0+SXMgYmlnZW5kaWFuPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+SXMgYmlnZW5kaWFuPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZDIjZ2V0SXNfYmlnZW5kaWFuKCkKKwkgKiBAc2VlICNnZXRQb2ludENsb3VkMigpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0UG9pbnRDbG91ZDJfSXNfYmlnZW5kaWFuKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50Q2xvdWQyI2dldFBvaW50X3N0ZXAgPGVtPlBvaW50IHN0ZXA8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5Qb2ludCBzdGVwPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZDIjZ2V0UG9pbnRfc3RlcCgpCisJICogQHNlZSAjZ2V0UG9pbnRDbG91ZDIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFBvaW50Q2xvdWQyX1BvaW50X3N0ZXAoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZDIjZ2V0Um93X3N0ZXAgPGVtPlJvdyBzdGVwPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+Um93IHN0ZXA8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludENsb3VkMiNnZXRSb3dfc3RlcCgpCisJICogQHNlZSAjZ2V0UG9pbnRDbG91ZDIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFBvaW50Q2xvdWQyX1Jvd19zdGVwKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZDIjZ2V0RGF0YSA8ZW0+RGF0YTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICc8ZW0+RGF0YTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50Q2xvdWQyI2dldERhdGEoKQorCSAqIEBzZWUgI2dldFBvaW50Q2xvdWQyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRQb2ludENsb3VkMl9EYXRhKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50Q2xvdWQyI2dldElzX2RlbnNlIDxlbT5JcyBkZW5zZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPklzIGRlbnNlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZDIjZ2V0SXNfZGVuc2UoKQorCSAqIEBzZWUgI2dldFBvaW50Q2xvdWQyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRQb2ludENsb3VkMl9Jc19kZW5zZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm9pbnRTdGF0ZSA8ZW0+Sm9pbnQgU3RhdGU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+Sm9pbnQgU3RhdGU8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb2ludFN0YXRlCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRKb2ludFN0YXRlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm9pbnRTdGF0ZSNnZXROYW1lIDxlbT5OYW1lPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlIGxpc3QgJzxlbT5OYW1lPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm9pbnRTdGF0ZSNnZXROYW1lKCkKKwkgKiBAc2VlICNnZXRKb2ludFN0YXRlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRKb2ludFN0YXRlX05hbWUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlIGxpc3QgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb2ludFN0YXRlI2dldFBvc2l0aW9uIDxlbT5Qb3NpdGlvbjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICc8ZW0+UG9zaXRpb248L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb2ludFN0YXRlI2dldFBvc2l0aW9uKCkKKwkgKiBAc2VlICNnZXRKb2ludFN0YXRlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRKb2ludFN0YXRlX1Bvc2l0aW9uKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm9pbnRTdGF0ZSNnZXRWZWxvY2l0eSA8ZW0+VmVsb2NpdHk8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAnPGVtPlZlbG9jaXR5PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm9pbnRTdGF0ZSNnZXRWZWxvY2l0eSgpCisJICogQHNlZSAjZ2V0Sm9pbnRTdGF0ZSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0Sm9pbnRTdGF0ZV9WZWxvY2l0eSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpvaW50U3RhdGUjZ2V0RWZmb3J0IDxlbT5FZmZvcnQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAnPGVtPkVmZm9ydDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpvaW50U3RhdGUjZ2V0RWZmb3J0KCkKKwkgKiBAc2VlICNnZXRKb2ludFN0YXRlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRKb2ludFN0YXRlX0VmZm9ydCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0U3RhdHVzIDxlbT5OYXYgU2F0IFN0YXR1czwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5OYXYgU2F0IFN0YXR1czwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdFN0YXR1cworCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0TmF2U2F0U3RhdHVzKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdFN0YXR1cyNnZXRTVEFUVVNfTk9fRklYIDxlbT5TVEFUVVMgTk8gRklYPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+U1RBVFVTIE5PIEZJWDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdFN0YXR1cyNnZXRTVEFUVVNfTk9fRklYKCkKKwkgKiBAc2VlICNnZXROYXZTYXRTdGF0dXMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldE5hdlNhdFN0YXR1c19TVEFUVVNfTk9fRklYKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdFN0YXR1cyNnZXRTVEFUVVNfRklYIDxlbT5TVEFUVVMgRklYPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+U1RBVFVTIEZJWDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdFN0YXR1cyNnZXRTVEFUVVNfRklYKCkKKwkgKiBAc2VlICNnZXROYXZTYXRTdGF0dXMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldE5hdlNhdFN0YXR1c19TVEFUVVNfRklYKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdFN0YXR1cyNnZXRTVEFUVVNfU0JBU19GSVggPGVtPlNUQVRVUyBTQkFTIEZJWDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlNUQVRVUyBTQkFTIEZJWDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdFN0YXR1cyNnZXRTVEFUVVNfU0JBU19GSVgoKQorCSAqIEBzZWUgI2dldE5hdlNhdFN0YXR1cygpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0TmF2U2F0U3RhdHVzX1NUQVRVU19TQkFTX0ZJWCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRTdGF0dXMjZ2V0U1RBVFVTX0dCQVNfRklYIDxlbT5TVEFUVVMgR0JBUyBGSVg8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5TVEFUVVMgR0JBUyBGSVg8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRTdGF0dXMjZ2V0U1RBVFVTX0dCQVNfRklYKCkKKwkgKiBAc2VlICNnZXROYXZTYXRTdGF0dXMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldE5hdlNhdFN0YXR1c19TVEFUVVNfR0JBU19GSVgoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0U3RhdHVzI2dldFN0YXR1cyA8ZW0+U3RhdHVzPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+U3RhdHVzPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0U3RhdHVzI2dldFN0YXR1cygpCisJICogQHNlZSAjZ2V0TmF2U2F0U3RhdHVzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXROYXZTYXRTdGF0dXNfU3RhdHVzKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdFN0YXR1cyNnZXRTRVJWSUNFX0dQUyA8ZW0+U0VSVklDRSBHUFM8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5TRVJWSUNFIEdQUzwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdFN0YXR1cyNnZXRTRVJWSUNFX0dQUygpCisJICogQHNlZSAjZ2V0TmF2U2F0U3RhdHVzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXROYXZTYXRTdGF0dXNfU0VSVklDRV9HUFMoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0U3RhdHVzI2dldFNFUlZJQ0VfR0xPTkFTUyA8ZW0+U0VSVklDRSBHTE9OQVNTPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+U0VSVklDRSBHTE9OQVNTPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0U3RhdHVzI2dldFNFUlZJQ0VfR0xPTkFTUygpCisJICogQHNlZSAjZ2V0TmF2U2F0U3RhdHVzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXROYXZTYXRTdGF0dXNfU0VSVklDRV9HTE9OQVNTKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdFN0YXR1cyNnZXRTRVJWSUNFX0NPTVBBU1MgPGVtPlNFUlZJQ0UgQ09NUEFTUzwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlNFUlZJQ0UgQ09NUEFTUzwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdFN0YXR1cyNnZXRTRVJWSUNFX0NPTVBBU1MoKQorCSAqIEBzZWUgI2dldE5hdlNhdFN0YXR1cygpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0TmF2U2F0U3RhdHVzX1NFUlZJQ0VfQ09NUEFTUygpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRTdGF0dXMjZ2V0U0VSVklDRV9HQUxJTEVPIDxlbT5TRVJWSUNFIEdBTElMRU88L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5TRVJWSUNFIEdBTElMRU88L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRTdGF0dXMjZ2V0U0VSVklDRV9HQUxJTEVPKCkKKwkgKiBAc2VlICNnZXROYXZTYXRTdGF0dXMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldE5hdlNhdFN0YXR1c19TRVJWSUNFX0dBTElMRU8oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0U3RhdHVzI2dldFNlcnZpY2UgPGVtPlNlcnZpY2U8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5TZXJ2aWNlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0U3RhdHVzI2dldFNlcnZpY2UoKQorCSAqIEBzZWUgI2dldE5hdlNhdFN0YXR1cygpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0TmF2U2F0U3RhdHVzX1NlcnZpY2UoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdEZpeCA8ZW0+TmF2IFNhdCBGaXg8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+TmF2IFNhdCBGaXg8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRGaXgKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldE5hdlNhdEZpeCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRGaXgjZ2V0U3RhdHVzIDxlbT5TdGF0dXM8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5TdGF0dXM8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRGaXgjZ2V0U3RhdHVzKCkKKwkgKiBAc2VlICNnZXROYXZTYXRGaXgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldE5hdlNhdEZpeF9TdGF0dXMoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0Rml4I2dldFNlcnZpY2UgPGVtPlNlcnZpY2U8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5TZXJ2aWNlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0Rml4I2dldFNlcnZpY2UoKQorCSAqIEBzZWUgI2dldE5hdlNhdEZpeCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0TmF2U2F0Rml4X1NlcnZpY2UoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0Rml4I2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+SGVhZGVyPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0Rml4I2dldEhlYWRlcigpCisJICogQHNlZSAjZ2V0TmF2U2F0Rml4KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXROYXZTYXRGaXhfSGVhZGVyKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdEZpeCNnZXRMYXRpdHVkZSA8ZW0+TGF0aXR1ZGU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5MYXRpdHVkZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdEZpeCNnZXRMYXRpdHVkZSgpCisJICogQHNlZSAjZ2V0TmF2U2F0Rml4KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXROYXZTYXRGaXhfTGF0aXR1ZGUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0Rml4I2dldExvbmdpdHVkZSA8ZW0+TG9uZ2l0dWRlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+TG9uZ2l0dWRlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0Rml4I2dldExvbmdpdHVkZSgpCisJICogQHNlZSAjZ2V0TmF2U2F0Rml4KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXROYXZTYXRGaXhfTG9uZ2l0dWRlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdEZpeCNnZXRBbHRpdHVkZSA8ZW0+QWx0aXR1ZGU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5BbHRpdHVkZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdEZpeCNnZXRBbHRpdHVkZSgpCisJICogQHNlZSAjZ2V0TmF2U2F0Rml4KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXROYXZTYXRGaXhfQWx0aXR1ZGUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlIGxpc3QgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRGaXgjZ2V0UG9zaXRpb25fY292YXJpYW5jZSA8ZW0+UG9zaXRpb24gY292YXJpYW5jZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICc8ZW0+UG9zaXRpb24gY292YXJpYW5jZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdEZpeCNnZXRQb3NpdGlvbl9jb3ZhcmlhbmNlKCkKKwkgKiBAc2VlICNnZXROYXZTYXRGaXgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldE5hdlNhdEZpeF9Qb3NpdGlvbl9jb3ZhcmlhbmNlKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdEZpeCNnZXRQb3NpdGlvbl9jb3ZhcmlhbmNlX3R5cGUgPGVtPlBvc2l0aW9uIGNvdmFyaWFuY2UgdHlwZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlBvc2l0aW9uIGNvdmFyaWFuY2UgdHlwZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdEZpeCNnZXRQb3NpdGlvbl9jb3ZhcmlhbmNlX3R5cGUoKQorCSAqIEBzZWUgI2dldE5hdlNhdEZpeCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0TmF2U2F0Rml4X1Bvc2l0aW9uX2NvdmFyaWFuY2VfdHlwZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm95IDxlbT5Kb3k8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+Sm95PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm95CisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRKb3koKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm95I2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+SGVhZGVyPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm95I2dldEhlYWRlcigpCisJICogQHNlZSAjZ2V0Sm95KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRKb3lfSGVhZGVyKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm95I2dldEF4ZXMgPGVtPkF4ZXM8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAnPGVtPkF4ZXM8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb3kjZ2V0QXhlcygpCisJICogQHNlZSAjZ2V0Sm95KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRKb3lfQXhlcygpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpveSNnZXRCdXR0b25zIDxlbT5CdXR0b25zPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlIGxpc3QgJzxlbT5CdXR0b25zPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm95I2dldEJ1dHRvbnMoKQorCSAqIEBzZWUgI2dldEpveSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0Sm95X0J1dHRvbnMoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpveUZlZWRiYWNrIDxlbT5Kb3kgRmVlZGJhY2s8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+Sm95IEZlZWRiYWNrPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm95RmVlZGJhY2sKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldEpveUZlZWRiYWNrKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpveUZlZWRiYWNrI2dldFRZUEVfTEVEIDxlbT5UWVBFIExFRDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlRZUEUgTEVEPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm95RmVlZGJhY2sjZ2V0VFlQRV9MRUQoKQorCSAqIEBzZWUgI2dldEpveUZlZWRiYWNrKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRKb3lGZWVkYmFja19UWVBFX0xFRCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb3lGZWVkYmFjayNnZXRUWVBFX1JVTUJMRSA8ZW0+VFlQRSBSVU1CTEU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5UWVBFIFJVTUJMRTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpveUZlZWRiYWNrI2dldFRZUEVfUlVNQkxFKCkKKwkgKiBAc2VlICNnZXRKb3lGZWVkYmFjaygpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0Sm95RmVlZGJhY2tfVFlQRV9SVU1CTEUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm95RmVlZGJhY2sjZ2V0VFlQRV9CVVpaRVIgPGVtPlRZUEUgQlVaWkVSPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+VFlQRSBCVVpaRVI8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb3lGZWVkYmFjayNnZXRUWVBFX0JVWlpFUigpCisJICogQHNlZSAjZ2V0Sm95RmVlZGJhY2soKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEpveUZlZWRiYWNrX1RZUEVfQlVaWkVSKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpveUZlZWRiYWNrI2dldFR5cGUgPGVtPlR5cGU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5UeXBlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm95RmVlZGJhY2sjZ2V0VHlwZSgpCisJICogQHNlZSAjZ2V0Sm95RmVlZGJhY2soKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEpveUZlZWRiYWNrX1R5cGUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm95RmVlZGJhY2sjZ2V0SWQgPGVtPklkPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+SWQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb3lGZWVkYmFjayNnZXRJZCgpCisJICogQHNlZSAjZ2V0Sm95RmVlZGJhY2soKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEpveUZlZWRiYWNrX0lkKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpveUZlZWRiYWNrI2dldEludGVuc2l0eSA8ZW0+SW50ZW5zaXR5PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+SW50ZW5zaXR5PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm95RmVlZGJhY2sjZ2V0SW50ZW5zaXR5KCkKKwkgKiBAc2VlICNnZXRKb3lGZWVkYmFjaygpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0Sm95RmVlZGJhY2tfSW50ZW5zaXR5KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb3lGZWVkYmFja0FycmF5IDxlbT5Kb3kgRmVlZGJhY2sgQXJyYXk8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+Sm95IEZlZWRiYWNrIEFycmF5PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm95RmVlZGJhY2tBcnJheQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0Sm95RmVlZGJhY2tBcnJheSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdCAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpveUZlZWRiYWNrQXJyYXkjZ2V0QXJyYXkgPGVtPkFycmF5PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QgJzxlbT5BcnJheTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpveUZlZWRiYWNrQXJyYXkjZ2V0QXJyYXkoKQorCSAqIEBzZWUgI2dldEpveUZlZWRiYWNrQXJyYXkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldEpveUZlZWRiYWNrQXJyYXlfQXJyYXkoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNhckxpa2VPZG9tZXRyeSA8ZW0+Q2FyIExpa2UgT2RvbWV0cnk8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+Q2FyIExpa2UgT2RvbWV0cnk8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYXJMaWtlT2RvbWV0cnkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldENhckxpa2VPZG9tZXRyeSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYXJMaWtlT2RvbWV0cnkjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5IZWFkZXI8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYXJMaWtlT2RvbWV0cnkjZ2V0SGVhZGVyKCkKKwkgKiBAc2VlICNnZXRDYXJMaWtlT2RvbWV0cnkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldENhckxpa2VPZG9tZXRyeV9IZWFkZXIoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FyTGlrZU9kb21ldHJ5I2dldFN0ZWVyaW5nX2FuZ2xlIDxlbT5TdGVlcmluZyBhbmdsZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlN0ZWVyaW5nIGFuZ2xlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FyTGlrZU9kb21ldHJ5I2dldFN0ZWVyaW5nX2FuZ2xlKCkKKwkgKiBAc2VlICNnZXRDYXJMaWtlT2RvbWV0cnkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldENhckxpa2VPZG9tZXRyeV9TdGVlcmluZ19hbmdsZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYXJMaWtlT2RvbWV0cnkjZ2V0TGVmdF9yZWFyX3doZWVsX2Rpc3RhbmNlIDxlbT5MZWZ0IHJlYXIgd2hlZWwgZGlzdGFuY2U8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5MZWZ0IHJlYXIgd2hlZWwgZGlzdGFuY2U8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYXJMaWtlT2RvbWV0cnkjZ2V0TGVmdF9yZWFyX3doZWVsX2Rpc3RhbmNlKCkKKwkgKiBAc2VlICNnZXRDYXJMaWtlT2RvbWV0cnkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldENhckxpa2VPZG9tZXRyeV9MZWZ0X3JlYXJfd2hlZWxfZGlzdGFuY2UoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FyTGlrZU9kb21ldHJ5I2dldFJpZ2h0X3JlYXJfd2hlZWxfZGlzdGFuY2UgPGVtPlJpZ2h0IHJlYXIgd2hlZWwgZGlzdGFuY2U8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5SaWdodCByZWFyIHdoZWVsIGRpc3RhbmNlPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FyTGlrZU9kb21ldHJ5I2dldFJpZ2h0X3JlYXJfd2hlZWxfZGlzdGFuY2UoKQorCSAqIEBzZWUgI2dldENhckxpa2VPZG9tZXRyeSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0Q2FyTGlrZU9kb21ldHJ5X1JpZ2h0X3JlYXJfd2hlZWxfZGlzdGFuY2UoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FyTGlrZU9kb21ldHJ5I2dldFJpZ2h0X3JlYXJfd2hlZWxfdmVsb2NpdHkgPGVtPlJpZ2h0IHJlYXIgd2hlZWwgdmVsb2NpdHk8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5SaWdodCByZWFyIHdoZWVsIHZlbG9jaXR5PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FyTGlrZU9kb21ldHJ5I2dldFJpZ2h0X3JlYXJfd2hlZWxfdmVsb2NpdHkoKQorCSAqIEBzZWUgI2dldENhckxpa2VPZG9tZXRyeSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0Q2FyTGlrZU9kb21ldHJ5X1JpZ2h0X3JlYXJfd2hlZWxfdmVsb2NpdHkoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FyTGlrZU9kb21ldHJ5I2dldExlZnRfcmVhcl93aGVlbF92ZWxvY2l0eSA8ZW0+TGVmdCByZWFyIHdoZWVsIHZlbG9jaXR5PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+TGVmdCByZWFyIHdoZWVsIHZlbG9jaXR5PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FyTGlrZU9kb21ldHJ5I2dldExlZnRfcmVhcl93aGVlbF92ZWxvY2l0eSgpCisJICogQHNlZSAjZ2V0Q2FyTGlrZU9kb21ldHJ5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRDYXJMaWtlT2RvbWV0cnlfTGVmdF9yZWFyX3doZWVsX3ZlbG9jaXR5KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5EaWZmZXJlbnRpYWxPZG9tZXRyeSA8ZW0+RGlmZmVyZW50aWFsIE9kb21ldHJ5PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkRpZmZlcmVudGlhbCBPZG9tZXRyeTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkRpZmZlcmVudGlhbE9kb21ldHJ5CisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXREaWZmZXJlbnRpYWxPZG9tZXRyeSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5EaWZmZXJlbnRpYWxPZG9tZXRyeSNnZXRIZWFkZXIgPGVtPkhlYWRlcjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPkhlYWRlcjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkRpZmZlcmVudGlhbE9kb21ldHJ5I2dldEhlYWRlcigpCisJICogQHNlZSAjZ2V0RGlmZmVyZW50aWFsT2RvbWV0cnkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldERpZmZlcmVudGlhbE9kb21ldHJ5X0hlYWRlcigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5EaWZmZXJlbnRpYWxPZG9tZXRyeSNnZXRSaWdodF9kaXN0YW5jZSA8ZW0+UmlnaHQgZGlzdGFuY2U8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5SaWdodCBkaXN0YW5jZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkRpZmZlcmVudGlhbE9kb21ldHJ5I2dldFJpZ2h0X2Rpc3RhbmNlKCkKKwkgKiBAc2VlICNnZXREaWZmZXJlbnRpYWxPZG9tZXRyeSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0RGlmZmVyZW50aWFsT2RvbWV0cnlfUmlnaHRfZGlzdGFuY2UoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuRGlmZmVyZW50aWFsT2RvbWV0cnkjZ2V0TGVmdF9kaXN0YW5jZSA8ZW0+TGVmdCBkaXN0YW5jZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkxlZnQgZGlzdGFuY2U8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5EaWZmZXJlbnRpYWxPZG9tZXRyeSNnZXRMZWZ0X2Rpc3RhbmNlKCkKKwkgKiBAc2VlICNnZXREaWZmZXJlbnRpYWxPZG9tZXRyeSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0RGlmZmVyZW50aWFsT2RvbWV0cnlfTGVmdF9kaXN0YW5jZSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5EaWZmZXJlbnRpYWxPZG9tZXRyeSNnZXRMZWZ0X3ZlbG9jaXR5IDxlbT5MZWZ0IHZlbG9jaXR5PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+TGVmdCB2ZWxvY2l0eTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkRpZmZlcmVudGlhbE9kb21ldHJ5I2dldExlZnRfdmVsb2NpdHkoKQorCSAqIEBzZWUgI2dldERpZmZlcmVudGlhbE9kb21ldHJ5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXREaWZmZXJlbnRpYWxPZG9tZXRyeV9MZWZ0X3ZlbG9jaXR5KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkRpZmZlcmVudGlhbE9kb21ldHJ5I2dldFJpZ2h0X3ZlbG9jaXR5IDxlbT5SaWdodCB2ZWxvY2l0eTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPlJpZ2h0IHZlbG9jaXR5PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuRGlmZmVyZW50aWFsT2RvbWV0cnkjZ2V0UmlnaHRfdmVsb2NpdHkoKQorCSAqIEBzZWUgI2dldERpZmZlcmVudGlhbE9kb21ldHJ5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXREaWZmZXJlbnRpYWxPZG9tZXRyeV9SaWdodF92ZWxvY2l0eSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGVudW0gJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TVEFUVVNfVFlQRSA8ZW0+U1RBVFVTIFRZUEU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGVudW0gJzxlbT5TVEFUVVMgVFlQRTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNUQVRVU19UWVBFCisJICogQGdlbmVyYXRlZAorCSAqLworCUVFbnVtIGdldFNUQVRVU19UWVBFKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZW51bSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNFUlZJQ0VfVFlQRSA8ZW0+U0VSVklDRSBUWVBFPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBlbnVtICc8ZW0+U0VSVklDRSBUWVBFPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU0VSVklDRV9UWVBFCisJICogQGdlbmVyYXRlZAorCSAqLworCUVFbnVtIGdldFNFUlZJQ0VfVFlQRSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGVudW0gJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DT1ZBUklBTkNFX1RZUEUgPGVtPkNPVkFSSUFOQ0UgVFlQRTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgZW51bSAnPGVtPkNPVkFSSUFOQ0UgVFlQRTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNPVkFSSUFOQ0VfVFlQRQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFRW51bSBnZXRDT1ZBUklBTkNFX1RZUEUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIGZhY3RvcnkgdGhhdCBjcmVhdGVzIHRoZSBpbnN0YW5jZXMgb2YgdGhlIG1vZGVsLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgZmFjdG9yeSB0aGF0IGNyZWF0ZXMgdGhlIGluc3RhbmNlcyBvZiB0aGUgbW9kZWwuCisJICogQGdlbmVyYXRlZAorCSAqLworCVNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5IGdldFNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5KCk7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIERlZmluZXMgbGl0ZXJhbHMgZm9yIHRoZSBtZXRhIG9iamVjdHMgdGhhdCByZXByZXNlbnQKKwkgKiA8dWw+CisJICogPGxpPmVhY2ggY2xhc3MsPC9saT4KKwkgKiA8bGk+ZWFjaCBmZWF0dXJlIG9mIGVhY2ggY2xhc3MsPC9saT4KKwkgKiA8bGk+ZWFjaCBvcGVyYXRpb24gb2YgZWFjaCBjbGFzcyw8L2xpPgorCSAqIDxsaT5lYWNoIGVudW0sPC9saT4KKwkgKiA8bGk+YW5kIGVhY2ggZGF0YSB0eXBlPC9saT4KKwkgKiA8L3VsPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnRlcmZhY2UgTGl0ZXJhbHMgeworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuUmVnaW9uT2ZJbnRlcmVzdEltcGwgPGVtPlJlZ2lvbiBPZiBJbnRlcmVzdDwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuUmVnaW9uT2ZJbnRlcmVzdEltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRSZWdpb25PZkludGVyZXN0KCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFJFR0lPTl9PRl9JTlRFUkVTVCA9IGVJTlNUQU5DRS5nZXRSZWdpb25PZkludGVyZXN0KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5Yb2Zmc2V0PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgUkVHSU9OX09GX0lOVEVSRVNUX19YT0ZGU0VUID0gZUlOU1RBTkNFLmdldFJlZ2lvbk9mSW50ZXJlc3RfWF9vZmZzZXQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPllvZmZzZXQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBSRUdJT05fT0ZfSU5URVJFU1RfX1lPRkZTRVQgPSBlSU5TVEFOQ0UuZ2V0UmVnaW9uT2ZJbnRlcmVzdF9ZX29mZnNldCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+SGVpZ2h0PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgUkVHSU9OX09GX0lOVEVSRVNUX19IRUlHSFQgPSBlSU5TVEFOQ0UuZ2V0UmVnaW9uT2ZJbnRlcmVzdF9IZWlnaHQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkRvIHJlY3RpZnk8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBSRUdJT05fT0ZfSU5URVJFU1RfX0RPX1JFQ1RJRlkgPSBlSU5TVEFOQ0UuZ2V0UmVnaW9uT2ZJbnRlcmVzdF9Eb19yZWN0aWZ5KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5XaWR0aDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIFJFR0lPTl9PRl9JTlRFUkVTVF9fV0lEVEggPSBlSU5TVEFOQ0UuZ2V0UmVnaW9uT2ZJbnRlcmVzdF9XaWR0aCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5SYW5nZUltcGwgPGVtPlJhbmdlPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5SYW5nZUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRSYW5nZSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBSQU5HRSA9IGVJTlNUQU5DRS5nZXRSYW5nZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VUxUUkFTT1VORDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIFJBTkdFX19VTFRSQVNPVU5EID0gZUlOU1RBTkNFLmdldFJhbmdlX1VMVFJBU09VTkQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPklORlJBUkVEPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgUkFOR0VfX0lORlJBUkVEID0gZUlOU1RBTkNFLmdldFJhbmdlX0lORlJBUkVEKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBSQU5HRV9fSEVBREVSID0gZUlOU1RBTkNFLmdldFJhbmdlX0hlYWRlcigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UmFkaWF0aW9uIHR5cGU8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBSQU5HRV9fUkFESUFUSU9OX1RZUEUgPSBlSU5TVEFOQ0UuZ2V0UmFuZ2VfUmFkaWF0aW9uX3R5cGUoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkZpZWxkIG9mIHZpZXc8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBSQU5HRV9fRklFTERfT0ZfVklFVyA9IGVJTlNUQU5DRS5nZXRSYW5nZV9GaWVsZF9vZl92aWV3KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5NaW4gcmFuZ2U8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBSQU5HRV9fTUlOX1JBTkdFID0gZUlOU1RBTkNFLmdldFJhbmdlX01pbl9yYW5nZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TWF4IHJhbmdlPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgUkFOR0VfX01BWF9SQU5HRSA9IGVJTlNUQU5DRS5nZXRSYW5nZV9NYXhfcmFuZ2UoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlJhbmdlPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgUkFOR0VfX1JBTkdFID0gZUlOU1RBTkNFLmdldFJhbmdlX1JhbmdlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkNhbWVyYUluZm9JbXBsIDxlbT5DYW1lcmEgSW5mbzwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuQ2FtZXJhSW5mb0ltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRDYW1lcmFJbmZvKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIENBTUVSQV9JTkZPID0gZUlOU1RBTkNFLmdldENhbWVyYUluZm8oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIENBTUVSQV9JTkZPX19IRUFERVIgPSBlSU5TVEFOQ0UuZ2V0Q2FtZXJhSW5mb19IZWFkZXIoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkhlaWdodDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIENBTUVSQV9JTkZPX19IRUlHSFQgPSBlSU5TVEFOQ0UuZ2V0Q2FtZXJhSW5mb19IZWlnaHQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPldpZHRoPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgQ0FNRVJBX0lORk9fX1dJRFRIID0gZUlOU1RBTkNFLmdldENhbWVyYUluZm9fV2lkdGgoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkRpc3RvcnNpb24gbW9kZWw8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBDQU1FUkFfSU5GT19fRElTVE9SU0lPTl9NT0RFTCA9IGVJTlNUQU5DRS5nZXRDYW1lcmFJbmZvX0Rpc3RvcnNpb25fbW9kZWwoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0IGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIENBTUVSQV9JTkZPX19EID0gZUlOU1RBTkNFLmdldENhbWVyYUluZm9fRCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+SzwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgQ0FNRVJBX0lORk9fX0sgPSBlSU5TVEFOQ0UuZ2V0Q2FtZXJhSW5mb19LKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5SPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBDQU1FUkFfSU5GT19fUiA9IGVJTlNUQU5DRS5nZXRDYW1lcmFJbmZvX1IoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlA8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0IGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIENBTUVSQV9JTkZPX19QID0gZUlOU1RBTkNFLmdldENhbWVyYUluZm9fUCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QmlubmluZyB4PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgQ0FNRVJBX0lORk9fX0JJTk5JTkdfWCA9IGVJTlNUQU5DRS5nZXRDYW1lcmFJbmZvX0Jpbm5pbmdfeCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QmlubmluZyB5PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgQ0FNRVJBX0lORk9fX0JJTk5JTkdfWSA9IGVJTlNUQU5DRS5nZXRDYW1lcmFJbmZvX0Jpbm5pbmdfeSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+Um9pPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgQ0FNRVJBX0lORk9fX1JPSSA9IGVJTlNUQU5DRS5nZXRDYW1lcmFJbmZvX1JvaSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5JbXVJbXBsIDxlbT5JbXU8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkltdUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRJbXUoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgSU1VID0gZUlOU1RBTkNFLmdldEltdSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgSU1VX19IRUFERVIgPSBlSU5TVEFOQ0UuZ2V0SW11X0hlYWRlcigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+T3JpZW50YXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBJTVVfX09SSUVOVEFUSU9OID0gZUlOU1RBTkNFLmdldEltdV9PcmllbnRhdGlvbigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+T3JpZW50YXRpb24gY292YXJpYW5jZTwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgSU1VX19PUklFTlRBVElPTl9DT1ZBUklBTkNFID0gZUlOU1RBTkNFLmdldEltdV9PcmllbnRhdGlvbl9jb3ZhcmlhbmNlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5Bbmd1bGFyIHZlbG9jaXR5PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgSU1VX19BTkdVTEFSX1ZFTE9DSVRZID0gZUlOU1RBTkNFLmdldEltdV9Bbmd1bGFyX3ZlbG9jaXR5KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5Bbmd1bGFyIHZlbG9jaXR5IGNvdmFyaWFuY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0IGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIElNVV9fQU5HVUxBUl9WRUxPQ0lUWV9DT1ZBUklBTkNFID0gZUlOU1RBTkNFLmdldEltdV9Bbmd1bGFyX3ZlbG9jaXR5X2NvdmFyaWFuY2UoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkxpbmVhciBhY2NlbGVyYXRpb248L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBJTVVfX0xJTkVBUl9BQ0NFTEVSQVRJT04gPSBlSU5TVEFOQ0UuZ2V0SW11X0xpbmVhcl9hY2NlbGVyYXRpb24oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkxpbmVhciBhY2NlbGVyYXRpb24gY292YXJpYW5jZTwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgSU1VX19MSU5FQVJfQUNDRUxFUkFUSU9OX0NPVkFSSUFOQ0UgPSBlSU5TVEFOQ0UuZ2V0SW11X0xpbmVhcl9hY2NlbGVyYXRpb25fY292YXJpYW5jZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5MYXNlclNjYW5JbXBsIDxlbT5MYXNlciBTY2FuPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5MYXNlclNjYW5JbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0TGFzZXJTY2FuKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIExBU0VSX1NDQU4gPSBlSU5TVEFOQ0UuZ2V0TGFzZXJTY2FuKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBMQVNFUl9TQ0FOX19IRUFERVIgPSBlSU5TVEFOQ0UuZ2V0TGFzZXJTY2FuX0hlYWRlcigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QW5nbGUgbWluPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgTEFTRVJfU0NBTl9fQU5HTEVfTUlOID0gZUlOU1RBTkNFLmdldExhc2VyU2Nhbl9BbmdsZV9taW4oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkFuZ2xlIG1heDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIExBU0VSX1NDQU5fX0FOR0xFX01BWCA9IGVJTlNUQU5DRS5nZXRMYXNlclNjYW5fQW5nbGVfbWF4KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5BbmdsZSBpbmNyZW1lbnQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBMQVNFUl9TQ0FOX19BTkdMRV9JTkNSRU1FTlQgPSBlSU5TVEFOQ0UuZ2V0TGFzZXJTY2FuX0FuZ2xlX2luY3JlbWVudCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VGltZSBpbmNyZW1lbnQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBMQVNFUl9TQ0FOX19USU1FX0lOQ1JFTUVOVCA9IGVJTlNUQU5DRS5nZXRMYXNlclNjYW5fVGltZV9pbmNyZW1lbnQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlNjYW4gdGltZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIExBU0VSX1NDQU5fX1NDQU5fVElNRSA9IGVJTlNUQU5DRS5nZXRMYXNlclNjYW5fU2Nhbl90aW1lKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5SYW5nZSBtaW48L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBMQVNFUl9TQ0FOX19SQU5HRV9NSU4gPSBlSU5TVEFOQ0UuZ2V0TGFzZXJTY2FuX1JhbmdlX21pbigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UmFuZ2UgbWF4PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgTEFTRVJfU0NBTl9fUkFOR0VfTUFYID0gZUlOU1RBTkNFLmdldExhc2VyU2Nhbl9SYW5nZV9tYXgoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlJhbmdlPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBMQVNFUl9TQ0FOX19SQU5HRSA9IGVJTlNUQU5DRS5nZXRMYXNlclNjYW5fUmFuZ2UoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkludGVuc2l0aWVzPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBMQVNFUl9TQ0FOX19JTlRFTlNJVElFUyA9IGVJTlNUQU5DRS5nZXRMYXNlclNjYW5fSW50ZW5zaXRpZXMoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuSW1hZ2VJbXBsIDxlbT5JbWFnZTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuSW1hZ2VJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0SW1hZ2UoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgSU1BR0UgPSBlSU5TVEFOQ0UuZ2V0SW1hZ2UoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIElNQUdFX19IRUFERVIgPSBlSU5TVEFOQ0UuZ2V0SW1hZ2VfSGVhZGVyKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5IZWlnaHQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBJTUFHRV9fSEVJR0hUID0gZUlOU1RBTkNFLmdldEltYWdlX0hlaWdodCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+V2lkdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBJTUFHRV9fV0lEVEggPSBlSU5TVEFOQ0UuZ2V0SW1hZ2VfV2lkdGgoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkVuY29kaW5nPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgSU1BR0VfX0VOQ09ESU5HID0gZUlOU1RBTkNFLmdldEltYWdlX0VuY29kaW5nKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5JcyBiaWdlbmRpYW48L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBJTUFHRV9fSVNfQklHRU5ESUFOID0gZUlOU1RBTkNFLmdldEltYWdlX0lzX2JpZ2VuZGlhbigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+U3RlcDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIElNQUdFX19TVEVQID0gZUlOU1RBTkNFLmdldEltYWdlX1N0ZXAoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkRhdGE8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0IGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIElNQUdFX19EQVRBID0gZUlOU1RBTkNFLmdldEltYWdlX0RhdGEoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuQ2hhbm5lbEZsb2F0MzJJbXBsIDxlbT5DaGFubmVsIEZsb2F0MzI8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkNoYW5uZWxGbG9hdDMySW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldENoYW5uZWxGbG9hdDMyKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIENIQU5ORUxfRkxPQVQzMiA9IGVJTlNUQU5DRS5nZXRDaGFubmVsRmxvYXQzMigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TmFtZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIENIQU5ORUxfRkxPQVQzMl9fTkFNRSA9IGVJTlNUQU5DRS5nZXRDaGFubmVsRmxvYXQzMl9OYW1lKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5WYWx1ZXM8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0IGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIENIQU5ORUxfRkxPQVQzMl9fVkFMVUVTID0gZUlOU1RBTkNFLmdldENoYW5uZWxGbG9hdDMyX1ZhbHVlcygpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Db21wcmVzc2VkSW1hZ2VJbXBsIDxlbT5Db21wcmVzc2VkIEltYWdlPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Db21wcmVzc2VkSW1hZ2VJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0Q29tcHJlc3NlZEltYWdlKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIENPTVBSRVNTRURfSU1BR0UgPSBlSU5TVEFOQ0UuZ2V0Q29tcHJlc3NlZEltYWdlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBDT01QUkVTU0VEX0lNQUdFX19IRUFERVIgPSBlSU5TVEFOQ0UuZ2V0Q29tcHJlc3NlZEltYWdlX0hlYWRlcigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+Rm9ybWF0PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgQ09NUFJFU1NFRF9JTUFHRV9fRk9STUFUID0gZUlOU1RBTkNFLmdldENvbXByZXNzZWRJbWFnZV9Gb3JtYXQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkRhdGE8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0IGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIENPTVBSRVNTRURfSU1BR0VfX0RBVEEgPSBlSU5TVEFOQ0UuZ2V0Q29tcHJlc3NlZEltYWdlX0RhdGEoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuUG9pbnRDbG91ZEltcGwgPGVtPlBvaW50IENsb3VkPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Qb2ludENsb3VkSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldFBvaW50Q2xvdWQoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgUE9JTlRfQ0xPVUQgPSBlSU5TVEFOQ0UuZ2V0UG9pbnRDbG91ZCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgUE9JTlRfQ0xPVURfX0hFQURFUiA9IGVJTlNUQU5DRS5nZXRQb2ludENsb3VkX0hlYWRlcigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UG9pbnRzPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdCBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBQT0lOVF9DTE9VRF9fUE9JTlRTID0gZUlOU1RBTkNFLmdldFBvaW50Q2xvdWRfUG9pbnRzKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5DaGFubmVsczwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgUE9JTlRfQ0xPVURfX0NIQU5ORUxTID0gZUlOU1RBTkNFLmdldFBvaW50Q2xvdWRfQ2hhbm5lbHMoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuUG9pbnRGaWVsZEltcGwgPGVtPlBvaW50IEZpZWxkPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Qb2ludEZpZWxkSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldFBvaW50RmllbGQoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgUE9JTlRfRklFTEQgPSBlSU5TVEFOQ0UuZ2V0UG9pbnRGaWVsZCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TmFtZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIFBPSU5UX0ZJRUxEX19OQU1FID0gZUlOU1RBTkNFLmdldFBvaW50RmllbGRfTmFtZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+T2Zmc2V0PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgUE9JTlRfRklFTERfX09GRlNFVCA9IGVJTlNUQU5DRS5nZXRQb2ludEZpZWxkX09mZnNldCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+RGF0YXR5cGU8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBQT0lOVF9GSUVMRF9fREFUQVRZUEUgPSBlSU5TVEFOQ0UuZ2V0UG9pbnRGaWVsZF9EYXRhdHlwZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+Q291bnQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBQT0lOVF9GSUVMRF9fQ09VTlQgPSBlSU5TVEFOQ0UuZ2V0UG9pbnRGaWVsZF9Db3VudCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Qb2ludENsb3VkMkltcGwgPGVtPlBvaW50IENsb3VkMjwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuUG9pbnRDbG91ZDJJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0UG9pbnRDbG91ZDIoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgUE9JTlRfQ0xPVUQyID0gZUlOU1RBTkNFLmdldFBvaW50Q2xvdWQyKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBQT0lOVF9DTE9VRDJfX0hFQURFUiA9IGVJTlNUQU5DRS5nZXRQb2ludENsb3VkMl9IZWFkZXIoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkhlaWdodDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIFBPSU5UX0NMT1VEMl9fSEVJR0hUID0gZUlOU1RBTkNFLmdldFBvaW50Q2xvdWQyX0hlaWdodCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+V2lkdGg8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBQT0lOVF9DTE9VRDJfX1dJRFRIID0gZUlOU1RBTkNFLmdldFBvaW50Q2xvdWQyX1dpZHRoKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5GaWVsZHM8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0IGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIFBPSU5UX0NMT1VEMl9fRklFTERTID0gZUlOU1RBTkNFLmdldFBvaW50Q2xvdWQyX0ZpZWxkcygpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+SXMgYmlnZW5kaWFuPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgUE9JTlRfQ0xPVUQyX19JU19CSUdFTkRJQU4gPSBlSU5TVEFOQ0UuZ2V0UG9pbnRDbG91ZDJfSXNfYmlnZW5kaWFuKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5Qb2ludCBzdGVwPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgUE9JTlRfQ0xPVUQyX19QT0lOVF9TVEVQID0gZUlOU1RBTkNFLmdldFBvaW50Q2xvdWQyX1BvaW50X3N0ZXAoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlJvdyBzdGVwPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgUE9JTlRfQ0xPVUQyX19ST1dfU1RFUCA9IGVJTlNUQU5DRS5nZXRQb2ludENsb3VkMl9Sb3dfc3RlcCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+RGF0YTwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgUE9JTlRfQ0xPVUQyX19EQVRBID0gZUlOU1RBTkNFLmdldFBvaW50Q2xvdWQyX0RhdGEoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPklzIGRlbnNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgUE9JTlRfQ0xPVUQyX19JU19ERU5TRSA9IGVJTlNUQU5DRS5nZXRQb2ludENsb3VkMl9Jc19kZW5zZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Kb2ludFN0YXRlSW1wbCA8ZW0+Sm9pbnQgU3RhdGU8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkpvaW50U3RhdGVJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0Sm9pbnRTdGF0ZSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBKT0lOVF9TVEFURSA9IGVJTlNUQU5DRS5nZXRKb2ludFN0YXRlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5OYW1lPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBKT0lOVF9TVEFURV9fTkFNRSA9IGVJTlNUQU5DRS5nZXRKb2ludFN0YXRlX05hbWUoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlBvc2l0aW9uPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBKT0lOVF9TVEFURV9fUE9TSVRJT04gPSBlSU5TVEFOQ0UuZ2V0Sm9pbnRTdGF0ZV9Qb3NpdGlvbigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VmVsb2NpdHk8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0IGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIEpPSU5UX1NUQVRFX19WRUxPQ0lUWSA9IGVJTlNUQU5DRS5nZXRKb2ludFN0YXRlX1ZlbG9jaXR5KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5FZmZvcnQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0IGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIEpPSU5UX1NUQVRFX19FRkZPUlQgPSBlSU5TVEFOQ0UuZ2V0Sm9pbnRTdGF0ZV9FZmZvcnQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuTmF2U2F0U3RhdHVzSW1wbCA8ZW0+TmF2IFNhdCBTdGF0dXM8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLk5hdlNhdFN0YXR1c0ltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXROYXZTYXRTdGF0dXMoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgTkFWX1NBVF9TVEFUVVMgPSBlSU5TVEFOQ0UuZ2V0TmF2U2F0U3RhdHVzKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5TVEFUVVMgTk8gRklYPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgTkFWX1NBVF9TVEFUVVNfX1NUQVRVU19OT19GSVggPSBlSU5TVEFOQ0UuZ2V0TmF2U2F0U3RhdHVzX1NUQVRVU19OT19GSVgoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlNUQVRVUyBGSVg8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBOQVZfU0FUX1NUQVRVU19fU1RBVFVTX0ZJWCA9IGVJTlNUQU5DRS5nZXROYXZTYXRTdGF0dXNfU1RBVFVTX0ZJWCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+U1RBVFVTIFNCQVMgRklYPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgTkFWX1NBVF9TVEFUVVNfX1NUQVRVU19TQkFTX0ZJWCA9IGVJTlNUQU5DRS5nZXROYXZTYXRTdGF0dXNfU1RBVFVTX1NCQVNfRklYKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5TVEFUVVMgR0JBUyBGSVg8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBOQVZfU0FUX1NUQVRVU19fU1RBVFVTX0dCQVNfRklYID0gZUlOU1RBTkNFLmdldE5hdlNhdFN0YXR1c19TVEFUVVNfR0JBU19GSVgoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlN0YXR1czwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIE5BVl9TQVRfU1RBVFVTX19TVEFUVVMgPSBlSU5TVEFOQ0UuZ2V0TmF2U2F0U3RhdHVzX1N0YXR1cygpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+U0VSVklDRSBHUFM8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBOQVZfU0FUX1NUQVRVU19fU0VSVklDRV9HUFMgPSBlSU5TVEFOQ0UuZ2V0TmF2U2F0U3RhdHVzX1NFUlZJQ0VfR1BTKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5TRVJWSUNFIEdMT05BU1M8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBOQVZfU0FUX1NUQVRVU19fU0VSVklDRV9HTE9OQVNTID0gZUlOU1RBTkNFLmdldE5hdlNhdFN0YXR1c19TRVJWSUNFX0dMT05BU1MoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlNFUlZJQ0UgQ09NUEFTUzwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIE5BVl9TQVRfU1RBVFVTX19TRVJWSUNFX0NPTVBBU1MgPSBlSU5TVEFOQ0UuZ2V0TmF2U2F0U3RhdHVzX1NFUlZJQ0VfQ09NUEFTUygpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+U0VSVklDRSBHQUxJTEVPPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgTkFWX1NBVF9TVEFUVVNfX1NFUlZJQ0VfR0FMSUxFTyA9IGVJTlNUQU5DRS5nZXROYXZTYXRTdGF0dXNfU0VSVklDRV9HQUxJTEVPKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5TZXJ2aWNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgTkFWX1NBVF9TVEFUVVNfX1NFUlZJQ0UgPSBlSU5TVEFOQ0UuZ2V0TmF2U2F0U3RhdHVzX1NlcnZpY2UoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuTmF2U2F0Rml4SW1wbCA8ZW0+TmF2IFNhdCBGaXg8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLk5hdlNhdEZpeEltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXROYXZTYXRGaXgoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgTkFWX1NBVF9GSVggPSBlSU5TVEFOQ0UuZ2V0TmF2U2F0Rml4KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5TdGF0dXM8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBOQVZfU0FUX0ZJWF9fU1RBVFVTID0gZUlOU1RBTkNFLmdldE5hdlNhdEZpeF9TdGF0dXMoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlNlcnZpY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBOQVZfU0FUX0ZJWF9fU0VSVklDRSA9IGVJTlNUQU5DRS5nZXROYXZTYXRGaXhfU2VydmljZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgTkFWX1NBVF9GSVhfX0hFQURFUiA9IGVJTlNUQU5DRS5nZXROYXZTYXRGaXhfSGVhZGVyKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5MYXRpdHVkZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIE5BVl9TQVRfRklYX19MQVRJVFVERSA9IGVJTlNUQU5DRS5nZXROYXZTYXRGaXhfTGF0aXR1ZGUoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkxvbmdpdHVkZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIE5BVl9TQVRfRklYX19MT05HSVRVREUgPSBlSU5TVEFOQ0UuZ2V0TmF2U2F0Rml4X0xvbmdpdHVkZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QWx0aXR1ZGU8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBOQVZfU0FUX0ZJWF9fQUxUSVRVREUgPSBlSU5TVEFOQ0UuZ2V0TmF2U2F0Rml4X0FsdGl0dWRlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5Qb3NpdGlvbiBjb3ZhcmlhbmNlPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBOQVZfU0FUX0ZJWF9fUE9TSVRJT05fQ09WQVJJQU5DRSA9IGVJTlNUQU5DRS5nZXROYXZTYXRGaXhfUG9zaXRpb25fY292YXJpYW5jZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UG9zaXRpb24gY292YXJpYW5jZSB0eXBlPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgTkFWX1NBVF9GSVhfX1BPU0lUSU9OX0NPVkFSSUFOQ0VfVFlQRSA9IGVJTlNUQU5DRS5nZXROYXZTYXRGaXhfUG9zaXRpb25fY292YXJpYW5jZV90eXBlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkpveUltcGwgPGVtPkpveTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuSm95SW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldEpveSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBKT1kgPSBlSU5TVEFOQ0UuZ2V0Sm95KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5IZWFkZXI8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBKT1lfX0hFQURFUiA9IGVJTlNUQU5DRS5nZXRKb3lfSGVhZGVyKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5BeGVzPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBKT1lfX0FYRVMgPSBlSU5TVEFOQ0UuZ2V0Sm95X0F4ZXMoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkJ1dHRvbnM8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0IGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIEpPWV9fQlVUVE9OUyA9IGVJTlNUQU5DRS5nZXRKb3lfQnV0dG9ucygpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Kb3lGZWVkYmFja0ltcGwgPGVtPkpveSBGZWVkYmFjazwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuSm95RmVlZGJhY2tJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0Sm95RmVlZGJhY2soKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgSk9ZX0ZFRURCQUNLID0gZUlOU1RBTkNFLmdldEpveUZlZWRiYWNrKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5UWVBFIExFRDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIEpPWV9GRUVEQkFDS19fVFlQRV9MRUQgPSBlSU5TVEFOQ0UuZ2V0Sm95RmVlZGJhY2tfVFlQRV9MRUQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlRZUEUgUlVNQkxFPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgSk9ZX0ZFRURCQUNLX19UWVBFX1JVTUJMRSA9IGVJTlNUQU5DRS5nZXRKb3lGZWVkYmFja19UWVBFX1JVTUJMRSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+VFlQRSBCVVpaRVI8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBKT1lfRkVFREJBQ0tfX1RZUEVfQlVaWkVSID0gZUlOU1RBTkNFLmdldEpveUZlZWRiYWNrX1RZUEVfQlVaWkVSKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5UeXBlPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgSk9ZX0ZFRURCQUNLX19UWVBFID0gZUlOU1RBTkNFLmdldEpveUZlZWRiYWNrX1R5cGUoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPklkPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgSk9ZX0ZFRURCQUNLX19JRCA9IGVJTlNUQU5DRS5nZXRKb3lGZWVkYmFja19JZCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+SW50ZW5zaXR5PC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgSk9ZX0ZFRURCQUNLX19JTlRFTlNJVFkgPSBlSU5TVEFOQ0UuZ2V0Sm95RmVlZGJhY2tfSW50ZW5zaXR5KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkpveUZlZWRiYWNrQXJyYXlJbXBsIDxlbT5Kb3kgRmVlZGJhY2sgQXJyYXk8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkpveUZlZWRiYWNrQXJyYXlJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0Sm95RmVlZGJhY2tBcnJheSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBKT1lfRkVFREJBQ0tfQVJSQVkgPSBlSU5TVEFOQ0UuZ2V0Sm95RmVlZGJhY2tBcnJheSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QXJyYXk8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0IGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIEpPWV9GRUVEQkFDS19BUlJBWV9fQVJSQVkgPSBlSU5TVEFOQ0UuZ2V0Sm95RmVlZGJhY2tBcnJheV9BcnJheSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5DYXJMaWtlT2RvbWV0cnlJbXBsIDxlbT5DYXIgTGlrZSBPZG9tZXRyeTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuQ2FyTGlrZU9kb21ldHJ5SW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldENhckxpa2VPZG9tZXRyeSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBDQVJfTElLRV9PRE9NRVRSWSA9IGVJTlNUQU5DRS5nZXRDYXJMaWtlT2RvbWV0cnkoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkhlYWRlcjwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIENBUl9MSUtFX09ET01FVFJZX19IRUFERVIgPSBlSU5TVEFOQ0UuZ2V0Q2FyTGlrZU9kb21ldHJ5X0hlYWRlcigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+U3RlZXJpbmcgYW5nbGU8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBDQVJfTElLRV9PRE9NRVRSWV9fU1RFRVJJTkdfQU5HTEUgPSBlSU5TVEFOQ0UuZ2V0Q2FyTGlrZU9kb21ldHJ5X1N0ZWVyaW5nX2FuZ2xlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5MZWZ0IHJlYXIgd2hlZWwgZGlzdGFuY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBDQVJfTElLRV9PRE9NRVRSWV9fTEVGVF9SRUFSX1dIRUVMX0RJU1RBTkNFID0gZUlOU1RBTkNFLmdldENhckxpa2VPZG9tZXRyeV9MZWZ0X3JlYXJfd2hlZWxfZGlzdGFuY2UoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlJpZ2h0IHJlYXIgd2hlZWwgZGlzdGFuY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBDQVJfTElLRV9PRE9NRVRSWV9fUklHSFRfUkVBUl9XSEVFTF9ESVNUQU5DRSA9IGVJTlNUQU5DRS5nZXRDYXJMaWtlT2RvbWV0cnlfUmlnaHRfcmVhcl93aGVlbF9kaXN0YW5jZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UmlnaHQgcmVhciB3aGVlbCB2ZWxvY2l0eTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIENBUl9MSUtFX09ET01FVFJZX19SSUdIVF9SRUFSX1dIRUVMX1ZFTE9DSVRZID0gZUlOU1RBTkNFLmdldENhckxpa2VPZG9tZXRyeV9SaWdodF9yZWFyX3doZWVsX3ZlbG9jaXR5KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5MZWZ0IHJlYXIgd2hlZWwgdmVsb2NpdHk8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBDQVJfTElLRV9PRE9NRVRSWV9fTEVGVF9SRUFSX1dIRUVMX1ZFTE9DSVRZID0gZUlOU1RBTkNFLmdldENhckxpa2VPZG9tZXRyeV9MZWZ0X3JlYXJfd2hlZWxfdmVsb2NpdHkoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuRGlmZmVyZW50aWFsT2RvbWV0cnlJbXBsIDxlbT5EaWZmZXJlbnRpYWwgT2RvbWV0cnk8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkRpZmZlcmVudGlhbE9kb21ldHJ5SW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldERpZmZlcmVudGlhbE9kb21ldHJ5KCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIERJRkZFUkVOVElBTF9PRE9NRVRSWSA9IGVJTlNUQU5DRS5nZXREaWZmZXJlbnRpYWxPZG9tZXRyeSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgRElGRkVSRU5USUFMX09ET01FVFJZX19IRUFERVIgPSBlSU5TVEFOQ0UuZ2V0RGlmZmVyZW50aWFsT2RvbWV0cnlfSGVhZGVyKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5SaWdodCBkaXN0YW5jZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIERJRkZFUkVOVElBTF9PRE9NRVRSWV9fUklHSFRfRElTVEFOQ0UgPSBlSU5TVEFOQ0UuZ2V0RGlmZmVyZW50aWFsT2RvbWV0cnlfUmlnaHRfZGlzdGFuY2UoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkxlZnQgZGlzdGFuY2U8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBESUZGRVJFTlRJQUxfT0RPTUVUUllfX0xFRlRfRElTVEFOQ0UgPSBlSU5TVEFOQ0UuZ2V0RGlmZmVyZW50aWFsT2RvbWV0cnlfTGVmdF9kaXN0YW5jZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TGVmdCB2ZWxvY2l0eTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIERJRkZFUkVOVElBTF9PRE9NRVRSWV9fTEVGVF9WRUxPQ0lUWSA9IGVJTlNUQU5DRS5nZXREaWZmZXJlbnRpYWxPZG9tZXRyeV9MZWZ0X3ZlbG9jaXR5KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5SaWdodCB2ZWxvY2l0eTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIERJRkZFUkVOVElBTF9PRE9NRVRSWV9fUklHSFRfVkVMT0NJVFkgPSBlSU5TVEFOQ0UuZ2V0RGlmZmVyZW50aWFsT2RvbWV0cnlfUmlnaHRfdmVsb2NpdHkoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNUQVRVU19UWVBFIDxlbT5TVEFUVVMgVFlQRTwvZW0+fScgZW51bS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU1RBVFVTX1RZUEUKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRTVEFUVVNfVFlQRSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVFbnVtIFNUQVRVU19UWVBFID0gZUlOU1RBTkNFLmdldFNUQVRVU19UWVBFKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TRVJWSUNFX1RZUEUgPGVtPlNFUlZJQ0UgVFlQRTwvZW0+fScgZW51bS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU0VSVklDRV9UWVBFCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0U0VSVklDRV9UWVBFKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUVudW0gU0VSVklDRV9UWVBFID0gZUlOU1RBTkNFLmdldFNFUlZJQ0VfVFlQRSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ09WQVJJQU5DRV9UWVBFIDxlbT5DT1ZBUklBTkNFIFRZUEU8L2VtPn0nIGVudW0uCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNPVkFSSUFOQ0VfVFlQRQorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldENPVkFSSUFOQ0VfVFlQRSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVFbnVtIENPVkFSSUFOQ0VfVFlQRSA9IGVJTlNUQU5DRS5nZXRDT1ZBUklBTkNFX1RZUEUoKTsKKworCX0KKworfSAvLyBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL0NhbWVyYUluZm9JbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvQ2FtZXJhSW5mb0ltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMDA3NGJhCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL0NhbWVyYUluZm9JbXBsLmphdmEKQEAgLTAsMCArMSw2NzMgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb25DaGFpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5FRGF0YVR5cGVVbmlxdWVFTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYW1lcmFJbmZvOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlJlZ2lvbk9mSW50ZXJlc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSGVhZGVyOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q2FtZXJhIEluZm88L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuQ2FtZXJhSW5mb0ltcGwjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuQ2FtZXJhSW5mb0ltcGwjZ2V0SGVpZ2h0IDxlbT5IZWlnaHQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuQ2FtZXJhSW5mb0ltcGwjZ2V0V2lkdGggPGVtPldpZHRoPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkNhbWVyYUluZm9JbXBsI2dldERpc3RvcnNpb25fbW9kZWwgPGVtPkRpc3RvcnNpb24gbW9kZWw8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuQ2FtZXJhSW5mb0ltcGwjZ2V0RCA8ZW0+RDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5DYW1lcmFJbmZvSW1wbCNnZXRLIDxlbT5LPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkNhbWVyYUluZm9JbXBsI2dldFIgPGVtPlI8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuQ2FtZXJhSW5mb0ltcGwjZ2V0UCA8ZW0+UDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5DYW1lcmFJbmZvSW1wbCNnZXRCaW5uaW5nX3ggPGVtPkJpbm5pbmcgeDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5DYW1lcmFJbmZvSW1wbCNnZXRCaW5uaW5nX3kgPGVtPkJpbm5pbmcgeTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5DYW1lcmFJbmZvSW1wbCNnZXRSb2kgPGVtPlJvaTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIENhbWVyYUluZm9JbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIENhbWVyYUluZm8geworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEhlYWRlcigpIDxlbT5IZWFkZXI8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEhlYWRlcigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEhlYWRlciBoZWFkZXI7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0SGVpZ2h0KCkgPGVtPkhlaWdodDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SGVpZ2h0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBIRUlHSFRfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0SGVpZ2h0KCkgPGVtPkhlaWdodDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SGVpZ2h0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IGhlaWdodCA9IEhFSUdIVF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRXaWR0aCgpIDxlbT5XaWR0aDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0V2lkdGgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFdJRFRIX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFdpZHRoKCkgPGVtPldpZHRoPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRXaWR0aCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCB3aWR0aCA9IFdJRFRIX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldERpc3RvcnNpb25fbW9kZWwoKSA8ZW0+RGlzdG9yc2lvbiBtb2RlbDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0RGlzdG9yc2lvbl9tb2RlbCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgRElTVE9SU0lPTl9NT0RFTF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXREaXN0b3JzaW9uX21vZGVsKCkgPGVtPkRpc3RvcnNpb24gbW9kZWw8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldERpc3RvcnNpb25fbW9kZWwoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgZGlzdG9yc2lvbl9tb2RlbCA9IERJU1RPUlNJT05fTU9ERUxfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXREKCkgPGVtPkQ8L2VtPn0nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0RCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEVMaXN0PE9iamVjdD4gZDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEsoKSA8ZW0+SzwvZW0+fScgYXR0cmlidXRlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRLKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRUxpc3Q8T2JqZWN0PiBrOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0UigpIDxlbT5SPC9lbT59JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBFTGlzdDxPYmplY3Q+IHI7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRQKCkgPGVtPlA8L2VtPn0nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEVMaXN0PE9iamVjdD4gcDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRCaW5uaW5nX3goKSA8ZW0+QmlubmluZyB4PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRCaW5uaW5nX3goKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IEJJTk5JTkdfWF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRCaW5uaW5nX3goKSA8ZW0+QmlubmluZyB4PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRCaW5uaW5nX3goKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgYmlubmluZ194ID0gQklOTklOR19YX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEJpbm5pbmdfeSgpIDxlbT5CaW5uaW5nIHk8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEJpbm5pbmdfeSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgQklOTklOR19ZX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEJpbm5pbmdfeSgpIDxlbT5CaW5uaW5nIHk8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEJpbm5pbmdfeSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBiaW5uaW5nX3kgPSBCSU5OSU5HX1lfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRSb2koKSA8ZW0+Um9pPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRSb2koKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBSZWdpb25PZkludGVyZXN0IHJvaTsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBDYW1lcmFJbmZvSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLkNBTUVSQV9JTkZPOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBIZWFkZXIgZ2V0SGVhZGVyKCkgeworCQlyZXR1cm4gaGVhZGVyOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBiYXNpY1NldEhlYWRlcihIZWFkZXIgbmV3SGVhZGVyLCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCUhlYWRlciBvbGRIZWFkZXIgPSBoZWFkZXI7CisJCWhlYWRlciA9IG5ld0hlYWRlcjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX0hFQURFUiwgb2xkSGVhZGVyLCBuZXdIZWFkZXIpOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEhlYWRlcihIZWFkZXIgbmV3SGVhZGVyKSB7CisJCWlmIChuZXdIZWFkZXIgIT0gaGVhZGVyKSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChoZWFkZXIgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpaGVhZGVyKS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX0hFQURFUiwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3SGVhZGVyICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld0hlYWRlcikuZUludmVyc2VBZGQodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBTUVSQV9JTkZPX19IRUFERVIsIG51bGwsIG1zZ3MpOworCQkJbXNncyA9IGJhc2ljU2V0SGVhZGVyKG5ld0hlYWRlciwgbXNncyk7CisJCQlpZiAobXNncyAhPSBudWxsKSBtc2dzLmRpc3BhdGNoKCk7CisJCX0KKwkJZWxzZSBpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQU1FUkFfSU5GT19fSEVBREVSLCBuZXdIZWFkZXIsIG5ld0hlYWRlcikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0SGVpZ2h0KCkgeworCQlyZXR1cm4gaGVpZ2h0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEhlaWdodChPYmplY3QgbmV3SGVpZ2h0KSB7CisJCU9iamVjdCBvbGRIZWlnaHQgPSBoZWlnaHQ7CisJCWhlaWdodCA9IG5ld0hlaWdodDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX0hFSUdIVCwgb2xkSGVpZ2h0LCBoZWlnaHQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFdpZHRoKCkgeworCQlyZXR1cm4gd2lkdGg7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0V2lkdGgoT2JqZWN0IG5ld1dpZHRoKSB7CisJCU9iamVjdCBvbGRXaWR0aCA9IHdpZHRoOworCQl3aWR0aCA9IG5ld1dpZHRoOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQU1FUkFfSU5GT19fV0lEVEgsIG9sZFdpZHRoLCB3aWR0aCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0RGlzdG9yc2lvbl9tb2RlbCgpIHsKKwkJcmV0dXJuIGRpc3RvcnNpb25fbW9kZWw7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0RGlzdG9yc2lvbl9tb2RlbChPYmplY3QgbmV3RGlzdG9yc2lvbl9tb2RlbCkgeworCQlPYmplY3Qgb2xkRGlzdG9yc2lvbl9tb2RlbCA9IGRpc3RvcnNpb25fbW9kZWw7CisJCWRpc3RvcnNpb25fbW9kZWwgPSBuZXdEaXN0b3JzaW9uX21vZGVsOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQU1FUkFfSU5GT19fRElTVE9SU0lPTl9NT0RFTCwgb2xkRGlzdG9yc2lvbl9tb2RlbCwgZGlzdG9yc2lvbl9tb2RlbCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFTGlzdDxPYmplY3Q+IGdldEQoKSB7CisJCWlmIChkID09IG51bGwpIHsKKwkJCWQgPSBuZXcgRURhdGFUeXBlVW5pcXVlRUxpc3Q8T2JqZWN0PihPYmplY3QuY2xhc3MsIHRoaXMsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBTUVSQV9JTkZPX19EKTsKKwkJfQorCQlyZXR1cm4gZDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUxpc3Q8T2JqZWN0PiBnZXRLKCkgeworCQlpZiAoayA9PSBudWxsKSB7CisJCQlrID0gbmV3IEVEYXRhVHlwZVVuaXF1ZUVMaXN0PE9iamVjdD4oT2JqZWN0LmNsYXNzLCB0aGlzLCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQU1FUkFfSU5GT19fSyk7CisJCX0KKwkJcmV0dXJuIGs7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVMaXN0PE9iamVjdD4gZ2V0UigpIHsKKwkJaWYgKHIgPT0gbnVsbCkgeworCQkJciA9IG5ldyBFRGF0YVR5cGVVbmlxdWVFTGlzdDxPYmplY3Q+KE9iamVjdC5jbGFzcywgdGhpcywgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX1IpOworCQl9CisJCXJldHVybiByOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFTGlzdDxPYmplY3Q+IGdldFAoKSB7CisJCWlmIChwID09IG51bGwpIHsKKwkJCXAgPSBuZXcgRURhdGFUeXBlVW5pcXVlRUxpc3Q8T2JqZWN0PihPYmplY3QuY2xhc3MsIHRoaXMsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBTUVSQV9JTkZPX19QKTsKKwkJfQorCQlyZXR1cm4gcDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldEJpbm5pbmdfeCgpIHsKKwkJcmV0dXJuIGJpbm5pbmdfeDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRCaW5uaW5nX3goT2JqZWN0IG5ld0Jpbm5pbmdfeCkgeworCQlPYmplY3Qgb2xkQmlubmluZ194ID0gYmlubmluZ194OworCQliaW5uaW5nX3ggPSBuZXdCaW5uaW5nX3g7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBTUVSQV9JTkZPX19CSU5OSU5HX1gsIG9sZEJpbm5pbmdfeCwgYmlubmluZ194KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRCaW5uaW5nX3koKSB7CisJCXJldHVybiBiaW5uaW5nX3k7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0QmlubmluZ195KE9iamVjdCBuZXdCaW5uaW5nX3kpIHsKKwkJT2JqZWN0IG9sZEJpbm5pbmdfeSA9IGJpbm5pbmdfeTsKKwkJYmlubmluZ195ID0gbmV3QmlubmluZ195OworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQU1FUkFfSU5GT19fQklOTklOR19ZLCBvbGRCaW5uaW5nX3ksIGJpbm5pbmdfeSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBSZWdpb25PZkludGVyZXN0IGdldFJvaSgpIHsKKwkJcmV0dXJuIHJvaTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRSb2koUmVnaW9uT2ZJbnRlcmVzdCBuZXdSb2ksIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJUmVnaW9uT2ZJbnRlcmVzdCBvbGRSb2kgPSByb2k7CisJCXJvaSA9IG5ld1JvaTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX1JPSSwgb2xkUm9pLCBuZXdSb2kpOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFJvaShSZWdpb25PZkludGVyZXN0IG5ld1JvaSkgeworCQlpZiAobmV3Um9pICE9IHJvaSkgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAocm9pICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KXJvaSkuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBTUVSQV9JTkZPX19ST0ksIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld1JvaSAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdSb2kpLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQU1FUkFfSU5GT19fUk9JLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldFJvaShuZXdSb2ksIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX1JPSSwgbmV3Um9pLCBuZXdSb2kpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gZUludmVyc2VSZW1vdmUoSW50ZXJuYWxFT2JqZWN0IG90aGVyRW5kLCBpbnQgZmVhdHVyZUlELCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBTUVSQV9JTkZPX19IRUFERVI6CisJCQkJcmV0dXJuIGJhc2ljU2V0SGVhZGVyKG51bGwsIG1zZ3MpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQU1FUkFfSU5GT19fUk9JOgorCQkJCXJldHVybiBiYXNpY1NldFJvaShudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQU1FUkFfSU5GT19fSEVBREVSOgorCQkJCXJldHVybiBnZXRIZWFkZXIoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX0hFSUdIVDoKKwkJCQlyZXR1cm4gZ2V0SGVpZ2h0KCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBTUVSQV9JTkZPX19XSURUSDoKKwkJCQlyZXR1cm4gZ2V0V2lkdGgoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX0RJU1RPUlNJT05fTU9ERUw6CisJCQkJcmV0dXJuIGdldERpc3RvcnNpb25fbW9kZWwoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX0Q6CisJCQkJcmV0dXJuIGdldEQoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX0s6CisJCQkJcmV0dXJuIGdldEsoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX1I6CisJCQkJcmV0dXJuIGdldFIoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX1A6CisJCQkJcmV0dXJuIGdldFAoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX0JJTk5JTkdfWDoKKwkJCQlyZXR1cm4gZ2V0QmlubmluZ194KCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBTUVSQV9JTkZPX19CSU5OSU5HX1k6CisJCQkJcmV0dXJuIGdldEJpbm5pbmdfeSgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQU1FUkFfSU5GT19fUk9JOgorCQkJCXJldHVybiBnZXRSb2koKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAU3VwcHJlc3NXYXJuaW5ncygidW5jaGVja2VkIikKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQU1FUkFfSU5GT19fSEVBREVSOgorCQkJCXNldEhlYWRlcigoSGVhZGVyKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBTUVSQV9JTkZPX19IRUlHSFQ6CisJCQkJc2V0SGVpZ2h0KChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX1dJRFRIOgorCQkJCXNldFdpZHRoKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX0RJU1RPUlNJT05fTU9ERUw6CisJCQkJc2V0RGlzdG9yc2lvbl9tb2RlbCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBTUVSQV9JTkZPX19EOgorCQkJCWdldEQoKS5jbGVhcigpOworCQkJCWdldEQoKS5hZGRBbGwoKENvbGxlY3Rpb248PyBleHRlbmRzIE9iamVjdD4pbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX0s6CisJCQkJZ2V0SygpLmNsZWFyKCk7CisJCQkJZ2V0SygpLmFkZEFsbCgoQ29sbGVjdGlvbjw/IGV4dGVuZHMgT2JqZWN0PiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQU1FUkFfSU5GT19fUjoKKwkJCQlnZXRSKCkuY2xlYXIoKTsKKwkJCQlnZXRSKCkuYWRkQWxsKChDb2xsZWN0aW9uPD8gZXh0ZW5kcyBPYmplY3Q+KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBTUVSQV9JTkZPX19QOgorCQkJCWdldFAoKS5jbGVhcigpOworCQkJCWdldFAoKS5hZGRBbGwoKENvbGxlY3Rpb248PyBleHRlbmRzIE9iamVjdD4pbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX0JJTk5JTkdfWDoKKwkJCQlzZXRCaW5uaW5nX3goKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQU1FUkFfSU5GT19fQklOTklOR19ZOgorCQkJCXNldEJpbm5pbmdfeSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBTUVSQV9JTkZPX19ST0k6CisJCQkJc2V0Um9pKChSZWdpb25PZkludGVyZXN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQU1FUkFfSU5GT19fSEVBREVSOgorCQkJCXNldEhlYWRlcigoSGVhZGVyKW51bGwpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX0hFSUdIVDoKKwkJCQlzZXRIZWlnaHQoSEVJR0hUX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBTUVSQV9JTkZPX19XSURUSDoKKwkJCQlzZXRXaWR0aChXSURUSF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQU1FUkFfSU5GT19fRElTVE9SU0lPTl9NT0RFTDoKKwkJCQlzZXREaXN0b3JzaW9uX21vZGVsKERJU1RPUlNJT05fTU9ERUxfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX0Q6CisJCQkJZ2V0RCgpLmNsZWFyKCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQU1FUkFfSU5GT19fSzoKKwkJCQlnZXRLKCkuY2xlYXIoKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBTUVSQV9JTkZPX19SOgorCQkJCWdldFIoKS5jbGVhcigpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX1A6CisJCQkJZ2V0UCgpLmNsZWFyKCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQU1FUkFfSU5GT19fQklOTklOR19YOgorCQkJCXNldEJpbm5pbmdfeChCSU5OSU5HX1hfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX0JJTk5JTkdfWToKKwkJCQlzZXRCaW5uaW5nX3koQklOTklOR19ZX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBTUVSQV9JTkZPX19ST0k6CisJCQkJc2V0Um9pKChSZWdpb25PZkludGVyZXN0KW51bGwpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQU1FUkFfSU5GT19fSEVBREVSOgorCQkJCXJldHVybiBoZWFkZXIgIT0gbnVsbDsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX0hFSUdIVDoKKwkJCQlyZXR1cm4gSEVJR0hUX0VERUZBVUxUID09IG51bGwgPyBoZWlnaHQgIT0gbnVsbCA6ICFIRUlHSFRfRURFRkFVTFQuZXF1YWxzKGhlaWdodCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBTUVSQV9JTkZPX19XSURUSDoKKwkJCQlyZXR1cm4gV0lEVEhfRURFRkFVTFQgPT0gbnVsbCA/IHdpZHRoICE9IG51bGwgOiAhV0lEVEhfRURFRkFVTFQuZXF1YWxzKHdpZHRoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX0RJU1RPUlNJT05fTU9ERUw6CisJCQkJcmV0dXJuIERJU1RPUlNJT05fTU9ERUxfRURFRkFVTFQgPT0gbnVsbCA/IGRpc3RvcnNpb25fbW9kZWwgIT0gbnVsbCA6ICFESVNUT1JTSU9OX01PREVMX0VERUZBVUxULmVxdWFscyhkaXN0b3JzaW9uX21vZGVsKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX0Q6CisJCQkJcmV0dXJuIGQgIT0gbnVsbCAmJiAhZC5pc0VtcHR5KCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBTUVSQV9JTkZPX19LOgorCQkJCXJldHVybiBrICE9IG51bGwgJiYgIWsuaXNFbXB0eSgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQU1FUkFfSU5GT19fUjoKKwkJCQlyZXR1cm4gciAhPSBudWxsICYmICFyLmlzRW1wdHkoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX1A6CisJCQkJcmV0dXJuIHAgIT0gbnVsbCAmJiAhcC5pc0VtcHR5KCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBTUVSQV9JTkZPX19CSU5OSU5HX1g6CisJCQkJcmV0dXJuIEJJTk5JTkdfWF9FREVGQVVMVCA9PSBudWxsID8gYmlubmluZ194ICE9IG51bGwgOiAhQklOTklOR19YX0VERUZBVUxULmVxdWFscyhiaW5uaW5nX3gpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQU1FUkFfSU5GT19fQklOTklOR19ZOgorCQkJCXJldHVybiBCSU5OSU5HX1lfRURFRkFVTFQgPT0gbnVsbCA/IGJpbm5pbmdfeSAhPSBudWxsIDogIUJJTk5JTkdfWV9FREVGQVVMVC5lcXVhbHMoYmlubmluZ195KTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FNRVJBX0lORk9fX1JPSToKKwkJCQlyZXR1cm4gcm9pICE9IG51bGw7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CisJCWlmIChlSXNQcm94eSgpKSByZXR1cm4gc3VwZXIudG9TdHJpbmcoKTsKKworCQlTdHJpbmdCdWZmZXIgcmVzdWx0ID0gbmV3IFN0cmluZ0J1ZmZlcihzdXBlci50b1N0cmluZygpKTsKKwkJcmVzdWx0LmFwcGVuZCgiIChoZWlnaHQ6ICIpOworCQlyZXN1bHQuYXBwZW5kKGhlaWdodCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgd2lkdGg6ICIpOworCQlyZXN1bHQuYXBwZW5kKHdpZHRoKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBkaXN0b3JzaW9uX21vZGVsOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChkaXN0b3JzaW9uX21vZGVsKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBEOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChkKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBLOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChrKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBSOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChyKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBQOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChwKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBiaW5uaW5nX3g6ICIpOworCQlyZXN1bHQuYXBwZW5kKGJpbm5pbmdfeCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgYmlubmluZ195OiAiKTsKKwkJcmVzdWx0LmFwcGVuZChiaW5uaW5nX3kpOworCQlyZXN1bHQuYXBwZW5kKCcpJyk7CisJCXJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKKwl9CisKK30gLy8gQ2FtZXJhSW5mb0ltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9DYXJMaWtlT2RvbWV0cnlJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvQ2FyTGlrZU9kb21ldHJ5SW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI2NGU3MGMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvQ2FyTGlrZU9kb21ldHJ5SW1wbC5qYXZhCkBAIC0wLDAgKzEsNDU3IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbkNoYWluOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FyTGlrZU9kb21ldHJ5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNhciBMaWtlIE9kb21ldHJ5PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkNhckxpa2VPZG9tZXRyeUltcGwjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuQ2FyTGlrZU9kb21ldHJ5SW1wbCNnZXRTdGVlcmluZ19hbmdsZSA8ZW0+U3RlZXJpbmcgYW5nbGU8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuQ2FyTGlrZU9kb21ldHJ5SW1wbCNnZXRMZWZ0X3JlYXJfd2hlZWxfZGlzdGFuY2UgPGVtPkxlZnQgcmVhciB3aGVlbCBkaXN0YW5jZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5DYXJMaWtlT2RvbWV0cnlJbXBsI2dldFJpZ2h0X3JlYXJfd2hlZWxfZGlzdGFuY2UgPGVtPlJpZ2h0IHJlYXIgd2hlZWwgZGlzdGFuY2U8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuQ2FyTGlrZU9kb21ldHJ5SW1wbCNnZXRSaWdodF9yZWFyX3doZWVsX3ZlbG9jaXR5IDxlbT5SaWdodCByZWFyIHdoZWVsIHZlbG9jaXR5PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkNhckxpa2VPZG9tZXRyeUltcGwjZ2V0TGVmdF9yZWFyX3doZWVsX3ZlbG9jaXR5IDxlbT5MZWZ0IHJlYXIgd2hlZWwgdmVsb2NpdHk8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBDYXJMaWtlT2RvbWV0cnlJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIENhckxpa2VPZG9tZXRyeSB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0SGVhZGVyKCkgPGVtPkhlYWRlcjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SGVhZGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgSGVhZGVyIGhlYWRlcjsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTdGVlcmluZ19hbmdsZSgpIDxlbT5TdGVlcmluZyBhbmdsZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0U3RlZXJpbmdfYW5nbGUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFNURUVSSU5HX0FOR0xFX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFN0ZWVyaW5nX2FuZ2xlKCkgPGVtPlN0ZWVyaW5nIGFuZ2xlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRTdGVlcmluZ19hbmdsZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBzdGVlcmluZ19hbmdsZSA9IFNURUVSSU5HX0FOR0xFX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExlZnRfcmVhcl93aGVlbF9kaXN0YW5jZSgpIDxlbT5MZWZ0IHJlYXIgd2hlZWwgZGlzdGFuY2U8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExlZnRfcmVhcl93aGVlbF9kaXN0YW5jZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgTEVGVF9SRUFSX1dIRUVMX0RJU1RBTkNFX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExlZnRfcmVhcl93aGVlbF9kaXN0YW5jZSgpIDxlbT5MZWZ0IHJlYXIgd2hlZWwgZGlzdGFuY2U8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExlZnRfcmVhcl93aGVlbF9kaXN0YW5jZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBsZWZ0X3JlYXJfd2hlZWxfZGlzdGFuY2UgPSBMRUZUX1JFQVJfV0hFRUxfRElTVEFOQ0VfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0UmlnaHRfcmVhcl93aGVlbF9kaXN0YW5jZSgpIDxlbT5SaWdodCByZWFyIHdoZWVsIGRpc3RhbmNlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRSaWdodF9yZWFyX3doZWVsX2Rpc3RhbmNlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBSSUdIVF9SRUFSX1dIRUVMX0RJU1RBTkNFX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFJpZ2h0X3JlYXJfd2hlZWxfZGlzdGFuY2UoKSA8ZW0+UmlnaHQgcmVhciB3aGVlbCBkaXN0YW5jZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UmlnaHRfcmVhcl93aGVlbF9kaXN0YW5jZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCByaWdodF9yZWFyX3doZWVsX2Rpc3RhbmNlID0gUklHSFRfUkVBUl9XSEVFTF9ESVNUQU5DRV9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRSaWdodF9yZWFyX3doZWVsX3ZlbG9jaXR5KCkgPGVtPlJpZ2h0IHJlYXIgd2hlZWwgdmVsb2NpdHk8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFJpZ2h0X3JlYXJfd2hlZWxfdmVsb2NpdHkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFJJR0hUX1JFQVJfV0hFRUxfVkVMT0NJVFlfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0UmlnaHRfcmVhcl93aGVlbF92ZWxvY2l0eSgpIDxlbT5SaWdodCByZWFyIHdoZWVsIHZlbG9jaXR5PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRSaWdodF9yZWFyX3doZWVsX3ZlbG9jaXR5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHJpZ2h0X3JlYXJfd2hlZWxfdmVsb2NpdHkgPSBSSUdIVF9SRUFSX1dIRUVMX1ZFTE9DSVRZX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExlZnRfcmVhcl93aGVlbF92ZWxvY2l0eSgpIDxlbT5MZWZ0IHJlYXIgd2hlZWwgdmVsb2NpdHk8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExlZnRfcmVhcl93aGVlbF92ZWxvY2l0eSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgTEVGVF9SRUFSX1dIRUVMX1ZFTE9DSVRZX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExlZnRfcmVhcl93aGVlbF92ZWxvY2l0eSgpIDxlbT5MZWZ0IHJlYXIgd2hlZWwgdmVsb2NpdHk8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExlZnRfcmVhcl93aGVlbF92ZWxvY2l0eSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBsZWZ0X3JlYXJfd2hlZWxfdmVsb2NpdHkgPSBMRUZUX1JFQVJfV0hFRUxfVkVMT0NJVFlfRURFRkFVTFQ7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgQ2FyTGlrZU9kb21ldHJ5SW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLkNBUl9MSUtFX09ET01FVFJZOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBIZWFkZXIgZ2V0SGVhZGVyKCkgeworCQlyZXR1cm4gaGVhZGVyOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBiYXNpY1NldEhlYWRlcihIZWFkZXIgbmV3SGVhZGVyLCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCUhlYWRlciBvbGRIZWFkZXIgPSBoZWFkZXI7CisJCWhlYWRlciA9IG5ld0hlYWRlcjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FSX0xJS0VfT0RPTUVUUllfX0hFQURFUiwgb2xkSGVhZGVyLCBuZXdIZWFkZXIpOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEhlYWRlcihIZWFkZXIgbmV3SGVhZGVyKSB7CisJCWlmIChuZXdIZWFkZXIgIT0gaGVhZGVyKSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChoZWFkZXIgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpaGVhZGVyKS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FSX0xJS0VfT0RPTUVUUllfX0hFQURFUiwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3SGVhZGVyICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld0hlYWRlcikuZUludmVyc2VBZGQodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBUl9MSUtFX09ET01FVFJZX19IRUFERVIsIG51bGwsIG1zZ3MpOworCQkJbXNncyA9IGJhc2ljU2V0SGVhZGVyKG5ld0hlYWRlciwgbXNncyk7CisJCQlpZiAobXNncyAhPSBudWxsKSBtc2dzLmRpc3BhdGNoKCk7CisJCX0KKwkJZWxzZSBpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQVJfTElLRV9PRE9NRVRSWV9fSEVBREVSLCBuZXdIZWFkZXIsIG5ld0hlYWRlcikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0U3RlZXJpbmdfYW5nbGUoKSB7CisJCXJldHVybiBzdGVlcmluZ19hbmdsZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRTdGVlcmluZ19hbmdsZShPYmplY3QgbmV3U3RlZXJpbmdfYW5nbGUpIHsKKwkJT2JqZWN0IG9sZFN0ZWVyaW5nX2FuZ2xlID0gc3RlZXJpbmdfYW5nbGU7CisJCXN0ZWVyaW5nX2FuZ2xlID0gbmV3U3RlZXJpbmdfYW5nbGU7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBUl9MSUtFX09ET01FVFJZX19TVEVFUklOR19BTkdMRSwgb2xkU3RlZXJpbmdfYW5nbGUsIHN0ZWVyaW5nX2FuZ2xlKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRMZWZ0X3JlYXJfd2hlZWxfZGlzdGFuY2UoKSB7CisJCXJldHVybiBsZWZ0X3JlYXJfd2hlZWxfZGlzdGFuY2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0TGVmdF9yZWFyX3doZWVsX2Rpc3RhbmNlKE9iamVjdCBuZXdMZWZ0X3JlYXJfd2hlZWxfZGlzdGFuY2UpIHsKKwkJT2JqZWN0IG9sZExlZnRfcmVhcl93aGVlbF9kaXN0YW5jZSA9IGxlZnRfcmVhcl93aGVlbF9kaXN0YW5jZTsKKwkJbGVmdF9yZWFyX3doZWVsX2Rpc3RhbmNlID0gbmV3TGVmdF9yZWFyX3doZWVsX2Rpc3RhbmNlOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQVJfTElLRV9PRE9NRVRSWV9fTEVGVF9SRUFSX1dIRUVMX0RJU1RBTkNFLCBvbGRMZWZ0X3JlYXJfd2hlZWxfZGlzdGFuY2UsIGxlZnRfcmVhcl93aGVlbF9kaXN0YW5jZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0UmlnaHRfcmVhcl93aGVlbF9kaXN0YW5jZSgpIHsKKwkJcmV0dXJuIHJpZ2h0X3JlYXJfd2hlZWxfZGlzdGFuY2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0UmlnaHRfcmVhcl93aGVlbF9kaXN0YW5jZShPYmplY3QgbmV3UmlnaHRfcmVhcl93aGVlbF9kaXN0YW5jZSkgeworCQlPYmplY3Qgb2xkUmlnaHRfcmVhcl93aGVlbF9kaXN0YW5jZSA9IHJpZ2h0X3JlYXJfd2hlZWxfZGlzdGFuY2U7CisJCXJpZ2h0X3JlYXJfd2hlZWxfZGlzdGFuY2UgPSBuZXdSaWdodF9yZWFyX3doZWVsX2Rpc3RhbmNlOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQVJfTElLRV9PRE9NRVRSWV9fUklHSFRfUkVBUl9XSEVFTF9ESVNUQU5DRSwgb2xkUmlnaHRfcmVhcl93aGVlbF9kaXN0YW5jZSwgcmlnaHRfcmVhcl93aGVlbF9kaXN0YW5jZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0UmlnaHRfcmVhcl93aGVlbF92ZWxvY2l0eSgpIHsKKwkJcmV0dXJuIHJpZ2h0X3JlYXJfd2hlZWxfdmVsb2NpdHk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0UmlnaHRfcmVhcl93aGVlbF92ZWxvY2l0eShPYmplY3QgbmV3UmlnaHRfcmVhcl93aGVlbF92ZWxvY2l0eSkgeworCQlPYmplY3Qgb2xkUmlnaHRfcmVhcl93aGVlbF92ZWxvY2l0eSA9IHJpZ2h0X3JlYXJfd2hlZWxfdmVsb2NpdHk7CisJCXJpZ2h0X3JlYXJfd2hlZWxfdmVsb2NpdHkgPSBuZXdSaWdodF9yZWFyX3doZWVsX3ZlbG9jaXR5OworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQVJfTElLRV9PRE9NRVRSWV9fUklHSFRfUkVBUl9XSEVFTF9WRUxPQ0lUWSwgb2xkUmlnaHRfcmVhcl93aGVlbF92ZWxvY2l0eSwgcmlnaHRfcmVhcl93aGVlbF92ZWxvY2l0eSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0TGVmdF9yZWFyX3doZWVsX3ZlbG9jaXR5KCkgeworCQlyZXR1cm4gbGVmdF9yZWFyX3doZWVsX3ZlbG9jaXR5OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldExlZnRfcmVhcl93aGVlbF92ZWxvY2l0eShPYmplY3QgbmV3TGVmdF9yZWFyX3doZWVsX3ZlbG9jaXR5KSB7CisJCU9iamVjdCBvbGRMZWZ0X3JlYXJfd2hlZWxfdmVsb2NpdHkgPSBsZWZ0X3JlYXJfd2hlZWxfdmVsb2NpdHk7CisJCWxlZnRfcmVhcl93aGVlbF92ZWxvY2l0eSA9IG5ld0xlZnRfcmVhcl93aGVlbF92ZWxvY2l0eTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FSX0xJS0VfT0RPTUVUUllfX0xFRlRfUkVBUl9XSEVFTF9WRUxPQ0lUWSwgb2xkTGVmdF9yZWFyX3doZWVsX3ZlbG9jaXR5LCBsZWZ0X3JlYXJfd2hlZWxfdmVsb2NpdHkpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gZUludmVyc2VSZW1vdmUoSW50ZXJuYWxFT2JqZWN0IG90aGVyRW5kLCBpbnQgZmVhdHVyZUlELCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBUl9MSUtFX09ET01FVFJZX19IRUFERVI6CisJCQkJcmV0dXJuIGJhc2ljU2V0SGVhZGVyKG51bGwsIG1zZ3MpOworCQl9CisJCXJldHVybiBzdXBlci5lSW52ZXJzZVJlbW92ZShvdGhlckVuZCwgZmVhdHVyZUlELCBtc2dzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBUl9MSUtFX09ET01FVFJZX19IRUFERVI6CisJCQkJcmV0dXJuIGdldEhlYWRlcigpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQVJfTElLRV9PRE9NRVRSWV9fU1RFRVJJTkdfQU5HTEU6CisJCQkJcmV0dXJuIGdldFN0ZWVyaW5nX2FuZ2xlKCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBUl9MSUtFX09ET01FVFJZX19MRUZUX1JFQVJfV0hFRUxfRElTVEFOQ0U6CisJCQkJcmV0dXJuIGdldExlZnRfcmVhcl93aGVlbF9kaXN0YW5jZSgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQVJfTElLRV9PRE9NRVRSWV9fUklHSFRfUkVBUl9XSEVFTF9ESVNUQU5DRToKKwkJCQlyZXR1cm4gZ2V0UmlnaHRfcmVhcl93aGVlbF9kaXN0YW5jZSgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQVJfTElLRV9PRE9NRVRSWV9fUklHSFRfUkVBUl9XSEVFTF9WRUxPQ0lUWToKKwkJCQlyZXR1cm4gZ2V0UmlnaHRfcmVhcl93aGVlbF92ZWxvY2l0eSgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQVJfTElLRV9PRE9NRVRSWV9fTEVGVF9SRUFSX1dIRUVMX1ZFTE9DSVRZOgorCQkJCXJldHVybiBnZXRMZWZ0X3JlYXJfd2hlZWxfdmVsb2NpdHkoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQVJfTElLRV9PRE9NRVRSWV9fSEVBREVSOgorCQkJCXNldEhlYWRlcigoSGVhZGVyKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBUl9MSUtFX09ET01FVFJZX19TVEVFUklOR19BTkdMRToKKwkJCQlzZXRTdGVlcmluZ19hbmdsZSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBUl9MSUtFX09ET01FVFJZX19MRUZUX1JFQVJfV0hFRUxfRElTVEFOQ0U6CisJCQkJc2V0TGVmdF9yZWFyX3doZWVsX2Rpc3RhbmNlKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FSX0xJS0VfT0RPTUVUUllfX1JJR0hUX1JFQVJfV0hFRUxfRElTVEFOQ0U6CisJCQkJc2V0UmlnaHRfcmVhcl93aGVlbF9kaXN0YW5jZSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBUl9MSUtFX09ET01FVFJZX19SSUdIVF9SRUFSX1dIRUVMX1ZFTE9DSVRZOgorCQkJCXNldFJpZ2h0X3JlYXJfd2hlZWxfdmVsb2NpdHkoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQVJfTElLRV9PRE9NRVRSWV9fTEVGVF9SRUFSX1dIRUVMX1ZFTE9DSVRZOgorCQkJCXNldExlZnRfcmVhcl93aGVlbF92ZWxvY2l0eSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQVJfTElLRV9PRE9NRVRSWV9fSEVBREVSOgorCQkJCXNldEhlYWRlcigoSGVhZGVyKW51bGwpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FSX0xJS0VfT0RPTUVUUllfX1NURUVSSU5HX0FOR0xFOgorCQkJCXNldFN0ZWVyaW5nX2FuZ2xlKFNURUVSSU5HX0FOR0xFX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBUl9MSUtFX09ET01FVFJZX19MRUZUX1JFQVJfV0hFRUxfRElTVEFOQ0U6CisJCQkJc2V0TGVmdF9yZWFyX3doZWVsX2Rpc3RhbmNlKExFRlRfUkVBUl9XSEVFTF9ESVNUQU5DRV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQVJfTElLRV9PRE9NRVRSWV9fUklHSFRfUkVBUl9XSEVFTF9ESVNUQU5DRToKKwkJCQlzZXRSaWdodF9yZWFyX3doZWVsX2Rpc3RhbmNlKFJJR0hUX1JFQVJfV0hFRUxfRElTVEFOQ0VfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0FSX0xJS0VfT0RPTUVUUllfX1JJR0hUX1JFQVJfV0hFRUxfVkVMT0NJVFk6CisJCQkJc2V0UmlnaHRfcmVhcl93aGVlbF92ZWxvY2l0eShSSUdIVF9SRUFSX1dIRUVMX1ZFTE9DSVRZX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBUl9MSUtFX09ET01FVFJZX19MRUZUX1JFQVJfV0hFRUxfVkVMT0NJVFk6CisJCQkJc2V0TGVmdF9yZWFyX3doZWVsX3ZlbG9jaXR5KExFRlRfUkVBUl9XSEVFTF9WRUxPQ0lUWV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBUl9MSUtFX09ET01FVFJZX19IRUFERVI6CisJCQkJcmV0dXJuIGhlYWRlciAhPSBudWxsOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQVJfTElLRV9PRE9NRVRSWV9fU1RFRVJJTkdfQU5HTEU6CisJCQkJcmV0dXJuIFNURUVSSU5HX0FOR0xFX0VERUZBVUxUID09IG51bGwgPyBzdGVlcmluZ19hbmdsZSAhPSBudWxsIDogIVNURUVSSU5HX0FOR0xFX0VERUZBVUxULmVxdWFscyhzdGVlcmluZ19hbmdsZSk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBUl9MSUtFX09ET01FVFJZX19MRUZUX1JFQVJfV0hFRUxfRElTVEFOQ0U6CisJCQkJcmV0dXJuIExFRlRfUkVBUl9XSEVFTF9ESVNUQU5DRV9FREVGQVVMVCA9PSBudWxsID8gbGVmdF9yZWFyX3doZWVsX2Rpc3RhbmNlICE9IG51bGwgOiAhTEVGVF9SRUFSX1dIRUVMX0RJU1RBTkNFX0VERUZBVUxULmVxdWFscyhsZWZ0X3JlYXJfd2hlZWxfZGlzdGFuY2UpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQVJfTElLRV9PRE9NRVRSWV9fUklHSFRfUkVBUl9XSEVFTF9ESVNUQU5DRToKKwkJCQlyZXR1cm4gUklHSFRfUkVBUl9XSEVFTF9ESVNUQU5DRV9FREVGQVVMVCA9PSBudWxsID8gcmlnaHRfcmVhcl93aGVlbF9kaXN0YW5jZSAhPSBudWxsIDogIVJJR0hUX1JFQVJfV0hFRUxfRElTVEFOQ0VfRURFRkFVTFQuZXF1YWxzKHJpZ2h0X3JlYXJfd2hlZWxfZGlzdGFuY2UpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQVJfTElLRV9PRE9NRVRSWV9fUklHSFRfUkVBUl9XSEVFTF9WRUxPQ0lUWToKKwkJCQlyZXR1cm4gUklHSFRfUkVBUl9XSEVFTF9WRUxPQ0lUWV9FREVGQVVMVCA9PSBudWxsID8gcmlnaHRfcmVhcl93aGVlbF92ZWxvY2l0eSAhPSBudWxsIDogIVJJR0hUX1JFQVJfV0hFRUxfVkVMT0NJVFlfRURFRkFVTFQuZXF1YWxzKHJpZ2h0X3JlYXJfd2hlZWxfdmVsb2NpdHkpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQVJfTElLRV9PRE9NRVRSWV9fTEVGVF9SRUFSX1dIRUVMX1ZFTE9DSVRZOgorCQkJCXJldHVybiBMRUZUX1JFQVJfV0hFRUxfVkVMT0NJVFlfRURFRkFVTFQgPT0gbnVsbCA/IGxlZnRfcmVhcl93aGVlbF92ZWxvY2l0eSAhPSBudWxsIDogIUxFRlRfUkVBUl9XSEVFTF9WRUxPQ0lUWV9FREVGQVVMVC5lcXVhbHMobGVmdF9yZWFyX3doZWVsX3ZlbG9jaXR5KTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJaWYgKGVJc1Byb3h5KCkpIHJldHVybiBzdXBlci50b1N0cmluZygpOworCisJCVN0cmluZ0J1ZmZlciByZXN1bHQgPSBuZXcgU3RyaW5nQnVmZmVyKHN1cGVyLnRvU3RyaW5nKCkpOworCQlyZXN1bHQuYXBwZW5kKCIgKHN0ZWVyaW5nX2FuZ2xlOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChzdGVlcmluZ19hbmdsZSk7CisJCXJlc3VsdC5hcHBlbmQoIiwgbGVmdF9yZWFyX3doZWVsX2Rpc3RhbmNlOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChsZWZ0X3JlYXJfd2hlZWxfZGlzdGFuY2UpOworCQlyZXN1bHQuYXBwZW5kKCIsIHJpZ2h0X3JlYXJfd2hlZWxfZGlzdGFuY2U6ICIpOworCQlyZXN1bHQuYXBwZW5kKHJpZ2h0X3JlYXJfd2hlZWxfZGlzdGFuY2UpOworCQlyZXN1bHQuYXBwZW5kKCIsIHJpZ2h0X3JlYXJfd2hlZWxfdmVsb2NpdHk6ICIpOworCQlyZXN1bHQuYXBwZW5kKHJpZ2h0X3JlYXJfd2hlZWxfdmVsb2NpdHkpOworCQlyZXN1bHQuYXBwZW5kKCIsIGxlZnRfcmVhcl93aGVlbF92ZWxvY2l0eTogIik7CisJCXJlc3VsdC5hcHBlbmQobGVmdF9yZWFyX3doZWVsX3ZlbG9jaXR5KTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIENhckxpa2VPZG9tZXRyeUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9DaGFubmVsRmxvYXQzMkltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9DaGFubmVsRmxvYXQzMkltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iNmExNDUwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL0NoYW5uZWxGbG9hdDMySW1wbC5qYXZhCkBAIC0wLDAgKzEsMjAxIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb247CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLkVEYXRhVHlwZVVuaXF1ZUVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNoYW5uZWxGbG9hdDMyOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q2hhbm5lbCBGbG9hdDMyPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkNoYW5uZWxGbG9hdDMySW1wbCNnZXROYW1lIDxlbT5OYW1lPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkNoYW5uZWxGbG9hdDMySW1wbCNnZXRWYWx1ZXMgPGVtPlZhbHVlczwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIENoYW5uZWxGbG9hdDMySW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBDaGFubmVsRmxvYXQzMiB7CisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldE5hbWUoKSA8ZW0+TmFtZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0TmFtZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgTkFNRV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXROYW1lKCkgPGVtPk5hbWU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldE5hbWUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgbmFtZSA9IE5BTUVfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRWYWx1ZXMoKSA8ZW0+VmFsdWVzPC9lbT59JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFZhbHVlcygpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEVMaXN0PE9iamVjdD4gdmFsdWVzOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIENoYW5uZWxGbG9hdDMySW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLkNIQU5ORUxfRkxPQVQzMjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldE5hbWUoKSB7CisJCXJldHVybiBuYW1lOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldE5hbWUoT2JqZWN0IG5ld05hbWUpIHsKKwkJT2JqZWN0IG9sZE5hbWUgPSBuYW1lOworCQluYW1lID0gbmV3TmFtZTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0hBTk5FTF9GTE9BVDMyX19OQU1FLCBvbGROYW1lLCBuYW1lKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVMaXN0PE9iamVjdD4gZ2V0VmFsdWVzKCkgeworCQlpZiAodmFsdWVzID09IG51bGwpIHsKKwkJCXZhbHVlcyA9IG5ldyBFRGF0YVR5cGVVbmlxdWVFTGlzdDxPYmplY3Q+KE9iamVjdC5jbGFzcywgdGhpcywgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0hBTk5FTF9GTE9BVDMyX19WQUxVRVMpOworCQl9CisJCXJldHVybiB2YWx1ZXM7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DSEFOTkVMX0ZMT0FUMzJfX05BTUU6CisJCQkJcmV0dXJuIGdldE5hbWUoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0hBTk5FTF9GTE9BVDMyX19WQUxVRVM6CisJCQkJcmV0dXJuIGdldFZhbHVlcygpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBTdXBwcmVzc1dhcm5pbmdzKCJ1bmNoZWNrZWQiKQorCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNIQU5ORUxfRkxPQVQzMl9fTkFNRToKKwkJCQlzZXROYW1lKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0hBTk5FTF9GTE9BVDMyX19WQUxVRVM6CisJCQkJZ2V0VmFsdWVzKCkuY2xlYXIoKTsKKwkJCQlnZXRWYWx1ZXMoKS5hZGRBbGwoKENvbGxlY3Rpb248PyBleHRlbmRzIE9iamVjdD4pbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNIQU5ORUxfRkxPQVQzMl9fTkFNRToKKwkJCQlzZXROYW1lKE5BTUVfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0hBTk5FTF9GTE9BVDMyX19WQUxVRVM6CisJCQkJZ2V0VmFsdWVzKCkuY2xlYXIoKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ0hBTk5FTF9GTE9BVDMyX19OQU1FOgorCQkJCXJldHVybiBOQU1FX0VERUZBVUxUID09IG51bGwgPyBuYW1lICE9IG51bGwgOiAhTkFNRV9FREVGQVVMVC5lcXVhbHMobmFtZSk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNIQU5ORUxfRkxPQVQzMl9fVkFMVUVTOgorCQkJCXJldHVybiB2YWx1ZXMgIT0gbnVsbCAmJiAhdmFsdWVzLmlzRW1wdHkoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJaWYgKGVJc1Byb3h5KCkpIHJldHVybiBzdXBlci50b1N0cmluZygpOworCisJCVN0cmluZ0J1ZmZlciByZXN1bHQgPSBuZXcgU3RyaW5nQnVmZmVyKHN1cGVyLnRvU3RyaW5nKCkpOworCQlyZXN1bHQuYXBwZW5kKCIgKG5hbWU6ICIpOworCQlyZXN1bHQuYXBwZW5kKG5hbWUpOworCQlyZXN1bHQuYXBwZW5kKCIsIHZhbHVlczogIik7CisJCXJlc3VsdC5hcHBlbmQodmFsdWVzKTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIENoYW5uZWxGbG9hdDMySW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL0NvbXByZXNzZWRJbWFnZUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9Db21wcmVzc2VkSW1hZ2VJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTgyMzczMQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9Db21wcmVzc2VkSW1hZ2VJbXBsLmphdmEKQEAgLTAsMCArMSwyODIgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb25DaGFpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5FRGF0YVR5cGVVbmlxdWVFTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Db21wcmVzc2VkSW1hZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSGVhZGVyOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q29tcHJlc3NlZCBJbWFnZTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Db21wcmVzc2VkSW1hZ2VJbXBsI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkNvbXByZXNzZWRJbWFnZUltcGwjZ2V0Rm9ybWF0IDxlbT5Gb3JtYXQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuQ29tcHJlc3NlZEltYWdlSW1wbCNnZXREYXRhIDxlbT5EYXRhPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgQ29tcHJlc3NlZEltYWdlSW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBDb21wcmVzc2VkSW1hZ2UgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEhlYWRlcigpIDxlbT5IZWFkZXI8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEhlYWRlcigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEhlYWRlciBoZWFkZXI7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0Rm9ybWF0KCkgPGVtPkZvcm1hdDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0Rm9ybWF0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBGT1JNQVRfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0Rm9ybWF0KCkgPGVtPkZvcm1hdDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0Rm9ybWF0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IGZvcm1hdCA9IEZPUk1BVF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldERhdGEoKSA8ZW0+RGF0YTwvZW0+fScgYXR0cmlidXRlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXREYXRhKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRUxpc3Q8T2JqZWN0PiBkYXRhOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIENvbXByZXNzZWRJbWFnZUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5DT01QUkVTU0VEX0lNQUdFOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBIZWFkZXIgZ2V0SGVhZGVyKCkgeworCQlyZXR1cm4gaGVhZGVyOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBiYXNpY1NldEhlYWRlcihIZWFkZXIgbmV3SGVhZGVyLCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCUhlYWRlciBvbGRIZWFkZXIgPSBoZWFkZXI7CisJCWhlYWRlciA9IG5ld0hlYWRlcjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ09NUFJFU1NFRF9JTUFHRV9fSEVBREVSLCBvbGRIZWFkZXIsIG5ld0hlYWRlcik7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0SGVhZGVyKEhlYWRlciBuZXdIZWFkZXIpIHsKKwkJaWYgKG5ld0hlYWRlciAhPSBoZWFkZXIpIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKGhlYWRlciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCloZWFkZXIpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DT01QUkVTU0VEX0lNQUdFX19IRUFERVIsIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld0hlYWRlciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdIZWFkZXIpLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DT01QUkVTU0VEX0lNQUdFX19IRUFERVIsIG51bGwsIG1zZ3MpOworCQkJbXNncyA9IGJhc2ljU2V0SGVhZGVyKG5ld0hlYWRlciwgbXNncyk7CisJCQlpZiAobXNncyAhPSBudWxsKSBtc2dzLmRpc3BhdGNoKCk7CisJCX0KKwkJZWxzZSBpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DT01QUkVTU0VEX0lNQUdFX19IRUFERVIsIG5ld0hlYWRlciwgbmV3SGVhZGVyKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRGb3JtYXQoKSB7CisJCXJldHVybiBmb3JtYXQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0Rm9ybWF0KE9iamVjdCBuZXdGb3JtYXQpIHsKKwkJT2JqZWN0IG9sZEZvcm1hdCA9IGZvcm1hdDsKKwkJZm9ybWF0ID0gbmV3Rm9ybWF0OworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DT01QUkVTU0VEX0lNQUdFX19GT1JNQVQsIG9sZEZvcm1hdCwgZm9ybWF0KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVMaXN0PE9iamVjdD4gZ2V0RGF0YSgpIHsKKwkJaWYgKGRhdGEgPT0gbnVsbCkgeworCQkJZGF0YSA9IG5ldyBFRGF0YVR5cGVVbmlxdWVFTGlzdDxPYmplY3Q+KE9iamVjdC5jbGFzcywgdGhpcywgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ09NUFJFU1NFRF9JTUFHRV9fREFUQSk7CisJCX0KKwkJcmV0dXJuIGRhdGE7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGVJbnZlcnNlUmVtb3ZlKEludGVybmFsRU9iamVjdCBvdGhlckVuZCwgaW50IGZlYXR1cmVJRCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DT01QUkVTU0VEX0lNQUdFX19IRUFERVI6CisJCQkJcmV0dXJuIGJhc2ljU2V0SGVhZGVyKG51bGwsIG1zZ3MpOworCQl9CisJCXJldHVybiBzdXBlci5lSW52ZXJzZVJlbW92ZShvdGhlckVuZCwgZmVhdHVyZUlELCBtc2dzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNPTVBSRVNTRURfSU1BR0VfX0hFQURFUjoKKwkJCQlyZXR1cm4gZ2V0SGVhZGVyKCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNPTVBSRVNTRURfSU1BR0VfX0ZPUk1BVDoKKwkJCQlyZXR1cm4gZ2V0Rm9ybWF0KCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNPTVBSRVNTRURfSU1BR0VfX0RBVEE6CisJCQkJcmV0dXJuIGdldERhdGEoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAU3VwcHJlc3NXYXJuaW5ncygidW5jaGVja2VkIikKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DT01QUkVTU0VEX0lNQUdFX19IRUFERVI6CisJCQkJc2V0SGVhZGVyKChIZWFkZXIpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ09NUFJFU1NFRF9JTUFHRV9fRk9STUFUOgorCQkJCXNldEZvcm1hdCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNPTVBSRVNTRURfSU1BR0VfX0RBVEE6CisJCQkJZ2V0RGF0YSgpLmNsZWFyKCk7CisJCQkJZ2V0RGF0YSgpLmFkZEFsbCgoQ29sbGVjdGlvbjw/IGV4dGVuZHMgT2JqZWN0PiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ09NUFJFU1NFRF9JTUFHRV9fSEVBREVSOgorCQkJCXNldEhlYWRlcigoSGVhZGVyKW51bGwpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ09NUFJFU1NFRF9JTUFHRV9fRk9STUFUOgorCQkJCXNldEZvcm1hdChGT1JNQVRfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ09NUFJFU1NFRF9JTUFHRV9fREFUQToKKwkJCQlnZXREYXRhKCkuY2xlYXIoKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ09NUFJFU1NFRF9JTUFHRV9fSEVBREVSOgorCQkJCXJldHVybiBoZWFkZXIgIT0gbnVsbDsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ09NUFJFU1NFRF9JTUFHRV9fRk9STUFUOgorCQkJCXJldHVybiBGT1JNQVRfRURFRkFVTFQgPT0gbnVsbCA/IGZvcm1hdCAhPSBudWxsIDogIUZPUk1BVF9FREVGQVVMVC5lcXVhbHMoZm9ybWF0KTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ09NUFJFU1NFRF9JTUFHRV9fREFUQToKKwkJCQlyZXR1cm4gZGF0YSAhPSBudWxsICYmICFkYXRhLmlzRW1wdHkoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJaWYgKGVJc1Byb3h5KCkpIHJldHVybiBzdXBlci50b1N0cmluZygpOworCisJCVN0cmluZ0J1ZmZlciByZXN1bHQgPSBuZXcgU3RyaW5nQnVmZmVyKHN1cGVyLnRvU3RyaW5nKCkpOworCQlyZXN1bHQuYXBwZW5kKCIgKGZvcm1hdDogIik7CisJCXJlc3VsdC5hcHBlbmQoZm9ybWF0KTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBkYXRhOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChkYXRhKTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIENvbXByZXNzZWRJbWFnZUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9EaWZmZXJlbnRpYWxPZG9tZXRyeUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9EaWZmZXJlbnRpYWxPZG9tZXRyeUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44OThlNTcwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL0RpZmZlcmVudGlhbE9kb21ldHJ5SW1wbC5qYXZhCkBAIC0wLDAgKzEsNDAzIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbkNoYWluOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuRGlmZmVyZW50aWFsT2RvbWV0cnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSGVhZGVyOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+RGlmZmVyZW50aWFsIE9kb21ldHJ5PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkRpZmZlcmVudGlhbE9kb21ldHJ5SW1wbCNnZXRIZWFkZXIgPGVtPkhlYWRlcjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5EaWZmZXJlbnRpYWxPZG9tZXRyeUltcGwjZ2V0UmlnaHRfZGlzdGFuY2UgPGVtPlJpZ2h0IGRpc3RhbmNlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkRpZmZlcmVudGlhbE9kb21ldHJ5SW1wbCNnZXRMZWZ0X2Rpc3RhbmNlIDxlbT5MZWZ0IGRpc3RhbmNlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkRpZmZlcmVudGlhbE9kb21ldHJ5SW1wbCNnZXRMZWZ0X3ZlbG9jaXR5IDxlbT5MZWZ0IHZlbG9jaXR5PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkRpZmZlcmVudGlhbE9kb21ldHJ5SW1wbCNnZXRSaWdodF92ZWxvY2l0eSA8ZW0+UmlnaHQgdmVsb2NpdHk8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBEaWZmZXJlbnRpYWxPZG9tZXRyeUltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgRGlmZmVyZW50aWFsT2RvbWV0cnkgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEhlYWRlcigpIDxlbT5IZWFkZXI8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEhlYWRlcigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEhlYWRlciBoZWFkZXI7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0UmlnaHRfZGlzdGFuY2UoKSA8ZW0+UmlnaHQgZGlzdGFuY2U8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFJpZ2h0X2Rpc3RhbmNlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBSSUdIVF9ESVNUQU5DRV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRSaWdodF9kaXN0YW5jZSgpIDxlbT5SaWdodCBkaXN0YW5jZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UmlnaHRfZGlzdGFuY2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgcmlnaHRfZGlzdGFuY2UgPSBSSUdIVF9ESVNUQU5DRV9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRMZWZ0X2Rpc3RhbmNlKCkgPGVtPkxlZnQgZGlzdGFuY2U8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExlZnRfZGlzdGFuY2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IExFRlRfRElTVEFOQ0VfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TGVmdF9kaXN0YW5jZSgpIDxlbT5MZWZ0IGRpc3RhbmNlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRMZWZ0X2Rpc3RhbmNlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IGxlZnRfZGlzdGFuY2UgPSBMRUZUX0RJU1RBTkNFX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExlZnRfdmVsb2NpdHkoKSA8ZW0+TGVmdCB2ZWxvY2l0eTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0TGVmdF92ZWxvY2l0eSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgTEVGVF9WRUxPQ0lUWV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRMZWZ0X3ZlbG9jaXR5KCkgPGVtPkxlZnQgdmVsb2NpdHk8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExlZnRfdmVsb2NpdHkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgbGVmdF92ZWxvY2l0eSA9IExFRlRfVkVMT0NJVFlfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0UmlnaHRfdmVsb2NpdHkoKSA8ZW0+UmlnaHQgdmVsb2NpdHk8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFJpZ2h0X3ZlbG9jaXR5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBSSUdIVF9WRUxPQ0lUWV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRSaWdodF92ZWxvY2l0eSgpIDxlbT5SaWdodCB2ZWxvY2l0eTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UmlnaHRfdmVsb2NpdHkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgcmlnaHRfdmVsb2NpdHkgPSBSSUdIVF9WRUxPQ0lUWV9FREVGQVVMVDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBEaWZmZXJlbnRpYWxPZG9tZXRyeUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5ESUZGRVJFTlRJQUxfT0RPTUVUUlk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEhlYWRlciBnZXRIZWFkZXIoKSB7CisJCXJldHVybiBoZWFkZXI7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0SGVhZGVyKEhlYWRlciBuZXdIZWFkZXIsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJSGVhZGVyIG9sZEhlYWRlciA9IGhlYWRlcjsKKwkJaGVhZGVyID0gbmV3SGVhZGVyOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpIHsKKwkJCUVOb3RpZmljYXRpb25JbXBsIG5vdGlmaWNhdGlvbiA9IG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5ESUZGRVJFTlRJQUxfT0RPTUVUUllfX0hFQURFUiwgb2xkSGVhZGVyLCBuZXdIZWFkZXIpOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEhlYWRlcihIZWFkZXIgbmV3SGVhZGVyKSB7CisJCWlmIChuZXdIZWFkZXIgIT0gaGVhZGVyKSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChoZWFkZXIgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpaGVhZGVyKS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuRElGRkVSRU5USUFMX09ET01FVFJZX19IRUFERVIsIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld0hlYWRlciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdIZWFkZXIpLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5ESUZGRVJFTlRJQUxfT0RPTUVUUllfX0hFQURFUiwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRIZWFkZXIobmV3SGVhZGVyLCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkRJRkZFUkVOVElBTF9PRE9NRVRSWV9fSEVBREVSLCBuZXdIZWFkZXIsIG5ld0hlYWRlcikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0UmlnaHRfZGlzdGFuY2UoKSB7CisJCXJldHVybiByaWdodF9kaXN0YW5jZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRSaWdodF9kaXN0YW5jZShPYmplY3QgbmV3UmlnaHRfZGlzdGFuY2UpIHsKKwkJT2JqZWN0IG9sZFJpZ2h0X2Rpc3RhbmNlID0gcmlnaHRfZGlzdGFuY2U7CisJCXJpZ2h0X2Rpc3RhbmNlID0gbmV3UmlnaHRfZGlzdGFuY2U7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkRJRkZFUkVOVElBTF9PRE9NRVRSWV9fUklHSFRfRElTVEFOQ0UsIG9sZFJpZ2h0X2Rpc3RhbmNlLCByaWdodF9kaXN0YW5jZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0TGVmdF9kaXN0YW5jZSgpIHsKKwkJcmV0dXJuIGxlZnRfZGlzdGFuY2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0TGVmdF9kaXN0YW5jZShPYmplY3QgbmV3TGVmdF9kaXN0YW5jZSkgeworCQlPYmplY3Qgb2xkTGVmdF9kaXN0YW5jZSA9IGxlZnRfZGlzdGFuY2U7CisJCWxlZnRfZGlzdGFuY2UgPSBuZXdMZWZ0X2Rpc3RhbmNlOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5ESUZGRVJFTlRJQUxfT0RPTUVUUllfX0xFRlRfRElTVEFOQ0UsIG9sZExlZnRfZGlzdGFuY2UsIGxlZnRfZGlzdGFuY2UpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldExlZnRfdmVsb2NpdHkoKSB7CisJCXJldHVybiBsZWZ0X3ZlbG9jaXR5OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldExlZnRfdmVsb2NpdHkoT2JqZWN0IG5ld0xlZnRfdmVsb2NpdHkpIHsKKwkJT2JqZWN0IG9sZExlZnRfdmVsb2NpdHkgPSBsZWZ0X3ZlbG9jaXR5OworCQlsZWZ0X3ZlbG9jaXR5ID0gbmV3TGVmdF92ZWxvY2l0eTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuRElGRkVSRU5USUFMX09ET01FVFJZX19MRUZUX1ZFTE9DSVRZLCBvbGRMZWZ0X3ZlbG9jaXR5LCBsZWZ0X3ZlbG9jaXR5KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRSaWdodF92ZWxvY2l0eSgpIHsKKwkJcmV0dXJuIHJpZ2h0X3ZlbG9jaXR5OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFJpZ2h0X3ZlbG9jaXR5KE9iamVjdCBuZXdSaWdodF92ZWxvY2l0eSkgeworCQlPYmplY3Qgb2xkUmlnaHRfdmVsb2NpdHkgPSByaWdodF92ZWxvY2l0eTsKKwkJcmlnaHRfdmVsb2NpdHkgPSBuZXdSaWdodF92ZWxvY2l0eTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuRElGRkVSRU5USUFMX09ET01FVFJZX19SSUdIVF9WRUxPQ0lUWSwgb2xkUmlnaHRfdmVsb2NpdHksIHJpZ2h0X3ZlbG9jaXR5KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGVJbnZlcnNlUmVtb3ZlKEludGVybmFsRU9iamVjdCBvdGhlckVuZCwgaW50IGZlYXR1cmVJRCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5ESUZGRVJFTlRJQUxfT0RPTUVUUllfX0hFQURFUjoKKwkJCQlyZXR1cm4gYmFzaWNTZXRIZWFkZXIobnVsbCwgbXNncyk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJbnZlcnNlUmVtb3ZlKG90aGVyRW5kLCBmZWF0dXJlSUQsIG1zZ3MpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuRElGRkVSRU5USUFMX09ET01FVFJZX19IRUFERVI6CisJCQkJcmV0dXJuIGdldEhlYWRlcigpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5ESUZGRVJFTlRJQUxfT0RPTUVUUllfX1JJR0hUX0RJU1RBTkNFOgorCQkJCXJldHVybiBnZXRSaWdodF9kaXN0YW5jZSgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5ESUZGRVJFTlRJQUxfT0RPTUVUUllfX0xFRlRfRElTVEFOQ0U6CisJCQkJcmV0dXJuIGdldExlZnRfZGlzdGFuY2UoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuRElGRkVSRU5USUFMX09ET01FVFJZX19MRUZUX1ZFTE9DSVRZOgorCQkJCXJldHVybiBnZXRMZWZ0X3ZlbG9jaXR5KCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkRJRkZFUkVOVElBTF9PRE9NRVRSWV9fUklHSFRfVkVMT0NJVFk6CisJCQkJcmV0dXJuIGdldFJpZ2h0X3ZlbG9jaXR5KCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuRElGRkVSRU5USUFMX09ET01FVFJZX19IRUFERVI6CisJCQkJc2V0SGVhZGVyKChIZWFkZXIpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuRElGRkVSRU5USUFMX09ET01FVFJZX19SSUdIVF9ESVNUQU5DRToKKwkJCQlzZXRSaWdodF9kaXN0YW5jZSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkRJRkZFUkVOVElBTF9PRE9NRVRSWV9fTEVGVF9ESVNUQU5DRToKKwkJCQlzZXRMZWZ0X2Rpc3RhbmNlKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuRElGRkVSRU5USUFMX09ET01FVFJZX19MRUZUX1ZFTE9DSVRZOgorCQkJCXNldExlZnRfdmVsb2NpdHkoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5ESUZGRVJFTlRJQUxfT0RPTUVUUllfX1JJR0hUX1ZFTE9DSVRZOgorCQkJCXNldFJpZ2h0X3ZlbG9jaXR5KChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkRJRkZFUkVOVElBTF9PRE9NRVRSWV9fSEVBREVSOgorCQkJCXNldEhlYWRlcigoSGVhZGVyKW51bGwpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuRElGRkVSRU5USUFMX09ET01FVFJZX19SSUdIVF9ESVNUQU5DRToKKwkJCQlzZXRSaWdodF9kaXN0YW5jZShSSUdIVF9ESVNUQU5DRV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5ESUZGRVJFTlRJQUxfT0RPTUVUUllfX0xFRlRfRElTVEFOQ0U6CisJCQkJc2V0TGVmdF9kaXN0YW5jZShMRUZUX0RJU1RBTkNFX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkRJRkZFUkVOVElBTF9PRE9NRVRSWV9fTEVGVF9WRUxPQ0lUWToKKwkJCQlzZXRMZWZ0X3ZlbG9jaXR5KExFRlRfVkVMT0NJVFlfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuRElGRkVSRU5USUFMX09ET01FVFJZX19SSUdIVF9WRUxPQ0lUWToKKwkJCQlzZXRSaWdodF92ZWxvY2l0eShSSUdIVF9WRUxPQ0lUWV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkRJRkZFUkVOVElBTF9PRE9NRVRSWV9fSEVBREVSOgorCQkJCXJldHVybiBoZWFkZXIgIT0gbnVsbDsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuRElGRkVSRU5USUFMX09ET01FVFJZX19SSUdIVF9ESVNUQU5DRToKKwkJCQlyZXR1cm4gUklHSFRfRElTVEFOQ0VfRURFRkFVTFQgPT0gbnVsbCA/IHJpZ2h0X2Rpc3RhbmNlICE9IG51bGwgOiAhUklHSFRfRElTVEFOQ0VfRURFRkFVTFQuZXF1YWxzKHJpZ2h0X2Rpc3RhbmNlKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuRElGRkVSRU5USUFMX09ET01FVFJZX19MRUZUX0RJU1RBTkNFOgorCQkJCXJldHVybiBMRUZUX0RJU1RBTkNFX0VERUZBVUxUID09IG51bGwgPyBsZWZ0X2Rpc3RhbmNlICE9IG51bGwgOiAhTEVGVF9ESVNUQU5DRV9FREVGQVVMVC5lcXVhbHMobGVmdF9kaXN0YW5jZSk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkRJRkZFUkVOVElBTF9PRE9NRVRSWV9fTEVGVF9WRUxPQ0lUWToKKwkJCQlyZXR1cm4gTEVGVF9WRUxPQ0lUWV9FREVGQVVMVCA9PSBudWxsID8gbGVmdF92ZWxvY2l0eSAhPSBudWxsIDogIUxFRlRfVkVMT0NJVFlfRURFRkFVTFQuZXF1YWxzKGxlZnRfdmVsb2NpdHkpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5ESUZGRVJFTlRJQUxfT0RPTUVUUllfX1JJR0hUX1ZFTE9DSVRZOgorCQkJCXJldHVybiBSSUdIVF9WRUxPQ0lUWV9FREVGQVVMVCA9PSBudWxsID8gcmlnaHRfdmVsb2NpdHkgIT0gbnVsbCA6ICFSSUdIVF9WRUxPQ0lUWV9FREVGQVVMVC5lcXVhbHMocmlnaHRfdmVsb2NpdHkpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAocmlnaHRfZGlzdGFuY2U6ICIpOworCQlyZXN1bHQuYXBwZW5kKHJpZ2h0X2Rpc3RhbmNlKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBsZWZ0X2Rpc3RhbmNlOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChsZWZ0X2Rpc3RhbmNlKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBsZWZ0X3ZlbG9jaXR5OiAiKTsKKwkJcmVzdWx0LmFwcGVuZChsZWZ0X3ZlbG9jaXR5KTsKKwkJcmVzdWx0LmFwcGVuZCgiLCByaWdodF92ZWxvY2l0eTogIik7CisJCXJlc3VsdC5hcHBlbmQocmlnaHRfdmVsb2NpdHkpOworCQlyZXN1bHQuYXBwZW5kKCcpJyk7CisJCXJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKKwl9CisKK30gLy8gRGlmZmVyZW50aWFsT2RvbWV0cnlJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvSW1hZ2VJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvSW1hZ2VJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTU0YzUzZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9JbWFnZUltcGwuamF2YQpAQCAtMCwwICsxLDQ5OCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IGphdmEudXRpbC5Db2xsZWN0aW9uOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbkNoYWluOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLkVEYXRhVHlwZVVuaXF1ZUVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkltYWdlPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkltYWdlSW1wbCNnZXRIZWFkZXIgPGVtPkhlYWRlcjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5JbWFnZUltcGwjZ2V0SGVpZ2h0IDxlbT5IZWlnaHQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuSW1hZ2VJbXBsI2dldFdpZHRoIDxlbT5XaWR0aDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5JbWFnZUltcGwjZ2V0RW5jb2RpbmcgPGVtPkVuY29kaW5nPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkltYWdlSW1wbCNnZXRJc19iaWdlbmRpYW4gPGVtPklzIGJpZ2VuZGlhbjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5JbWFnZUltcGwjZ2V0U3RlcCA8ZW0+U3RlcDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5JbWFnZUltcGwjZ2V0RGF0YSA8ZW0+RGF0YTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEltYWdlSW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBJbWFnZSB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0SGVhZGVyKCkgPGVtPkhlYWRlcjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SGVhZGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgSGVhZGVyIGhlYWRlcjsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRIZWlnaHQoKSA8ZW0+SGVpZ2h0PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRIZWlnaHQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IEhFSUdIVF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRIZWlnaHQoKSA8ZW0+SGVpZ2h0PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRIZWlnaHQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgaGVpZ2h0ID0gSEVJR0hUX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFdpZHRoKCkgPGVtPldpZHRoPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRXaWR0aCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgV0lEVEhfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0V2lkdGgoKSA8ZW0+V2lkdGg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFdpZHRoKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHdpZHRoID0gV0lEVEhfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0RW5jb2RpbmcoKSA8ZW0+RW5jb2Rpbmc8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEVuY29kaW5nKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBFTkNPRElOR19FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRFbmNvZGluZygpIDxlbT5FbmNvZGluZzwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0RW5jb2RpbmcoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgZW5jb2RpbmcgPSBFTkNPRElOR19FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRJc19iaWdlbmRpYW4oKSA8ZW0+SXMgYmlnZW5kaWFuPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRJc19iaWdlbmRpYW4oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IElTX0JJR0VORElBTl9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRJc19iaWdlbmRpYW4oKSA8ZW0+SXMgYmlnZW5kaWFuPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRJc19iaWdlbmRpYW4oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgaXNfYmlnZW5kaWFuID0gSVNfQklHRU5ESUFOX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFN0ZXAoKSA8ZW0+U3RlcDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0U3RlcCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgU1RFUF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTdGVwKCkgPGVtPlN0ZXA8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFN0ZXAoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3Qgc3RlcCA9IFNURVBfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXREYXRhKCkgPGVtPkRhdGE8L2VtPn0nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0RGF0YSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEVMaXN0PE9iamVjdD4gZGF0YTsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBJbWFnZUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5JTUFHRTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgSGVhZGVyIGdldEhlYWRlcigpIHsKKwkJcmV0dXJuIGhlYWRlcjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRIZWFkZXIoSGVhZGVyIG5ld0hlYWRlciwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlIZWFkZXIgb2xkSGVhZGVyID0gaGVhZGVyOworCQloZWFkZXIgPSBuZXdIZWFkZXI7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNQUdFX19IRUFERVIsIG9sZEhlYWRlciwgbmV3SGVhZGVyKTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRIZWFkZXIoSGVhZGVyIG5ld0hlYWRlcikgeworCQlpZiAobmV3SGVhZGVyICE9IGhlYWRlcikgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAoaGVhZGVyICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KWhlYWRlcikuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNQUdFX19IRUFERVIsIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld0hlYWRlciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdIZWFkZXIpLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTUFHRV9fSEVBREVSLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldEhlYWRlcihuZXdIZWFkZXIsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1BR0VfX0hFQURFUiwgbmV3SGVhZGVyLCBuZXdIZWFkZXIpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldEhlaWdodCgpIHsKKwkJcmV0dXJuIGhlaWdodDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRIZWlnaHQoT2JqZWN0IG5ld0hlaWdodCkgeworCQlPYmplY3Qgb2xkSGVpZ2h0ID0gaGVpZ2h0OworCQloZWlnaHQgPSBuZXdIZWlnaHQ7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNQUdFX19IRUlHSFQsIG9sZEhlaWdodCwgaGVpZ2h0KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRXaWR0aCgpIHsKKwkJcmV0dXJuIHdpZHRoOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFdpZHRoKE9iamVjdCBuZXdXaWR0aCkgeworCQlPYmplY3Qgb2xkV2lkdGggPSB3aWR0aDsKKwkJd2lkdGggPSBuZXdXaWR0aDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1BR0VfX1dJRFRILCBvbGRXaWR0aCwgd2lkdGgpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldEVuY29kaW5nKCkgeworCQlyZXR1cm4gZW5jb2Rpbmc7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0RW5jb2RpbmcoT2JqZWN0IG5ld0VuY29kaW5nKSB7CisJCU9iamVjdCBvbGRFbmNvZGluZyA9IGVuY29kaW5nOworCQllbmNvZGluZyA9IG5ld0VuY29kaW5nOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTUFHRV9fRU5DT0RJTkcsIG9sZEVuY29kaW5nLCBlbmNvZGluZykpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0SXNfYmlnZW5kaWFuKCkgeworCQlyZXR1cm4gaXNfYmlnZW5kaWFuOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldElzX2JpZ2VuZGlhbihPYmplY3QgbmV3SXNfYmlnZW5kaWFuKSB7CisJCU9iamVjdCBvbGRJc19iaWdlbmRpYW4gPSBpc19iaWdlbmRpYW47CisJCWlzX2JpZ2VuZGlhbiA9IG5ld0lzX2JpZ2VuZGlhbjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1BR0VfX0lTX0JJR0VORElBTiwgb2xkSXNfYmlnZW5kaWFuLCBpc19iaWdlbmRpYW4pKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFN0ZXAoKSB7CisJCXJldHVybiBzdGVwOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFN0ZXAoT2JqZWN0IG5ld1N0ZXApIHsKKwkJT2JqZWN0IG9sZFN0ZXAgPSBzdGVwOworCQlzdGVwID0gbmV3U3RlcDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1BR0VfX1NURVAsIG9sZFN0ZXAsIHN0ZXApKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUxpc3Q8T2JqZWN0PiBnZXREYXRhKCkgeworCQlpZiAoZGF0YSA9PSBudWxsKSB7CisJCQlkYXRhID0gbmV3IEVEYXRhVHlwZVVuaXF1ZUVMaXN0PE9iamVjdD4oT2JqZWN0LmNsYXNzLCB0aGlzLCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTUFHRV9fREFUQSk7CisJCX0KKwkJcmV0dXJuIGRhdGE7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGVJbnZlcnNlUmVtb3ZlKEludGVybmFsRU9iamVjdCBvdGhlckVuZCwgaW50IGZlYXR1cmVJRCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTUFHRV9fSEVBREVSOgorCQkJCXJldHVybiBiYXNpY1NldEhlYWRlcihudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTUFHRV9fSEVBREVSOgorCQkJCXJldHVybiBnZXRIZWFkZXIoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1BR0VfX0hFSUdIVDoKKwkJCQlyZXR1cm4gZ2V0SGVpZ2h0KCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNQUdFX19XSURUSDoKKwkJCQlyZXR1cm4gZ2V0V2lkdGgoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1BR0VfX0VOQ09ESU5HOgorCQkJCXJldHVybiBnZXRFbmNvZGluZygpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTUFHRV9fSVNfQklHRU5ESUFOOgorCQkJCXJldHVybiBnZXRJc19iaWdlbmRpYW4oKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1BR0VfX1NURVA6CisJCQkJcmV0dXJuIGdldFN0ZXAoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1BR0VfX0RBVEE6CisJCQkJcmV0dXJuIGdldERhdGEoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAU3VwcHJlc3NXYXJuaW5ncygidW5jaGVja2VkIikKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTUFHRV9fSEVBREVSOgorCQkJCXNldEhlYWRlcigoSGVhZGVyKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNQUdFX19IRUlHSFQ6CisJCQkJc2V0SGVpZ2h0KChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1BR0VfX1dJRFRIOgorCQkJCXNldFdpZHRoKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1BR0VfX0VOQ09ESU5HOgorCQkJCXNldEVuY29kaW5nKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1BR0VfX0lTX0JJR0VORElBTjoKKwkJCQlzZXRJc19iaWdlbmRpYW4oKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTUFHRV9fU1RFUDoKKwkJCQlzZXRTdGVwKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1BR0VfX0RBVEE6CisJCQkJZ2V0RGF0YSgpLmNsZWFyKCk7CisJCQkJZ2V0RGF0YSgpLmFkZEFsbCgoQ29sbGVjdGlvbjw/IGV4dGVuZHMgT2JqZWN0PiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1BR0VfX0hFQURFUjoKKwkJCQlzZXRIZWFkZXIoKEhlYWRlciludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNQUdFX19IRUlHSFQ6CisJCQkJc2V0SGVpZ2h0KEhFSUdIVF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTUFHRV9fV0lEVEg6CisJCQkJc2V0V2lkdGgoV0lEVEhfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1BR0VfX0VOQ09ESU5HOgorCQkJCXNldEVuY29kaW5nKEVOQ09ESU5HX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNQUdFX19JU19CSUdFTkRJQU46CisJCQkJc2V0SXNfYmlnZW5kaWFuKElTX0JJR0VORElBTl9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTUFHRV9fU1RFUDoKKwkJCQlzZXRTdGVwKFNURVBfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1BR0VfX0RBVEE6CisJCQkJZ2V0RGF0YSgpLmNsZWFyKCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNQUdFX19IRUFERVI6CisJCQkJcmV0dXJuIGhlYWRlciAhPSBudWxsOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTUFHRV9fSEVJR0hUOgorCQkJCXJldHVybiBIRUlHSFRfRURFRkFVTFQgPT0gbnVsbCA/IGhlaWdodCAhPSBudWxsIDogIUhFSUdIVF9FREVGQVVMVC5lcXVhbHMoaGVpZ2h0KTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1BR0VfX1dJRFRIOgorCQkJCXJldHVybiBXSURUSF9FREVGQVVMVCA9PSBudWxsID8gd2lkdGggIT0gbnVsbCA6ICFXSURUSF9FREVGQVVMVC5lcXVhbHMod2lkdGgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTUFHRV9fRU5DT0RJTkc6CisJCQkJcmV0dXJuIEVOQ09ESU5HX0VERUZBVUxUID09IG51bGwgPyBlbmNvZGluZyAhPSBudWxsIDogIUVOQ09ESU5HX0VERUZBVUxULmVxdWFscyhlbmNvZGluZyk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNQUdFX19JU19CSUdFTkRJQU46CisJCQkJcmV0dXJuIElTX0JJR0VORElBTl9FREVGQVVMVCA9PSBudWxsID8gaXNfYmlnZW5kaWFuICE9IG51bGwgOiAhSVNfQklHRU5ESUFOX0VERUZBVUxULmVxdWFscyhpc19iaWdlbmRpYW4pOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTUFHRV9fU1RFUDoKKwkJCQlyZXR1cm4gU1RFUF9FREVGQVVMVCA9PSBudWxsID8gc3RlcCAhPSBudWxsIDogIVNURVBfRURFRkFVTFQuZXF1YWxzKHN0ZXApOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTUFHRV9fREFUQToKKwkJCQlyZXR1cm4gZGF0YSAhPSBudWxsICYmICFkYXRhLmlzRW1wdHkoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJaWYgKGVJc1Byb3h5KCkpIHJldHVybiBzdXBlci50b1N0cmluZygpOworCisJCVN0cmluZ0J1ZmZlciByZXN1bHQgPSBuZXcgU3RyaW5nQnVmZmVyKHN1cGVyLnRvU3RyaW5nKCkpOworCQlyZXN1bHQuYXBwZW5kKCIgKGhlaWdodDogIik7CisJCXJlc3VsdC5hcHBlbmQoaGVpZ2h0KTsKKwkJcmVzdWx0LmFwcGVuZCgiLCB3aWR0aDogIik7CisJCXJlc3VsdC5hcHBlbmQod2lkdGgpOworCQlyZXN1bHQuYXBwZW5kKCIsIGVuY29kaW5nOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChlbmNvZGluZyk7CisJCXJlc3VsdC5hcHBlbmQoIiwgaXNfYmlnZW5kaWFuOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChpc19iaWdlbmRpYW4pOworCQlyZXN1bHQuYXBwZW5kKCIsIHN0ZXA6ICIpOworCQlyZXN1bHQuYXBwZW5kKHN0ZXApOworCQlyZXN1bHQuYXBwZW5kKCIsIGRhdGE6ICIpOworCQlyZXN1bHQuYXBwZW5kKGRhdGEpOworCQlyZXN1bHQuYXBwZW5kKCcpJyk7CisJCXJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKKwl9CisKK30gLy8gSW1hZ2VJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvSW11SW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL0ltdUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yYmM1NzUxCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL0ltdUltcGwuamF2YQpAQCAtMCwwICsxLDUwMCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IGphdmEudXRpbC5Db2xsZWN0aW9uOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbkNoYWluOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLkVEYXRhVHlwZVVuaXF1ZUVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUXVhdGVybmlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLlZlY3RvcjM7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW11OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkltdTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5JbXVJbXBsI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkltdUltcGwjZ2V0T3JpZW50YXRpb24gPGVtPk9yaWVudGF0aW9uPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkltdUltcGwjZ2V0T3JpZW50YXRpb25fY292YXJpYW5jZSA8ZW0+T3JpZW50YXRpb24gY292YXJpYW5jZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5JbXVJbXBsI2dldEFuZ3VsYXJfdmVsb2NpdHkgPGVtPkFuZ3VsYXIgdmVsb2NpdHk8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuSW11SW1wbCNnZXRBbmd1bGFyX3ZlbG9jaXR5X2NvdmFyaWFuY2UgPGVtPkFuZ3VsYXIgdmVsb2NpdHkgY292YXJpYW5jZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5JbXVJbXBsI2dldExpbmVhcl9hY2NlbGVyYXRpb24gPGVtPkxpbmVhciBhY2NlbGVyYXRpb248L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuSW11SW1wbCNnZXRMaW5lYXJfYWNjZWxlcmF0aW9uX2NvdmFyaWFuY2UgPGVtPkxpbmVhciBhY2NlbGVyYXRpb24gY292YXJpYW5jZTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEltdUltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgSW11IHsKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRIZWFkZXIoKSA8ZW0+SGVhZGVyPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRIZWFkZXIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBIZWFkZXIgaGVhZGVyOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0T3JpZW50YXRpb24oKSA8ZW0+T3JpZW50YXRpb248L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldE9yaWVudGF0aW9uKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgUXVhdGVybmlvbiBvcmllbnRhdGlvbjsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldE9yaWVudGF0aW9uX2NvdmFyaWFuY2UoKSA8ZW0+T3JpZW50YXRpb24gY292YXJpYW5jZTwvZW0+fScgYXR0cmlidXRlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRPcmllbnRhdGlvbl9jb3ZhcmlhbmNlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRUxpc3Q8T2JqZWN0PiBvcmllbnRhdGlvbl9jb3ZhcmlhbmNlOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0QW5ndWxhcl92ZWxvY2l0eSgpIDxlbT5Bbmd1bGFyIHZlbG9jaXR5PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRBbmd1bGFyX3ZlbG9jaXR5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgVmVjdG9yMyBhbmd1bGFyX3ZlbG9jaXR5OworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0QW5ndWxhcl92ZWxvY2l0eV9jb3ZhcmlhbmNlKCkgPGVtPkFuZ3VsYXIgdmVsb2NpdHkgY292YXJpYW5jZTwvZW0+fScgYXR0cmlidXRlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRBbmd1bGFyX3ZlbG9jaXR5X2NvdmFyaWFuY2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBFTGlzdDxPYmplY3Q+IGFuZ3VsYXJfdmVsb2NpdHlfY292YXJpYW5jZTsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExpbmVhcl9hY2NlbGVyYXRpb24oKSA8ZW0+TGluZWFyIGFjY2VsZXJhdGlvbjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0TGluZWFyX2FjY2VsZXJhdGlvbigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFZlY3RvcjMgbGluZWFyX2FjY2VsZXJhdGlvbjsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExpbmVhcl9hY2NlbGVyYXRpb25fY292YXJpYW5jZSgpIDxlbT5MaW5lYXIgYWNjZWxlcmF0aW9uIGNvdmFyaWFuY2U8L2VtPn0nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0TGluZWFyX2FjY2VsZXJhdGlvbl9jb3ZhcmlhbmNlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRUxpc3Q8T2JqZWN0PiBsaW5lYXJfYWNjZWxlcmF0aW9uX2NvdmFyaWFuY2U7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgSW11SW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLklNVTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgSGVhZGVyIGdldEhlYWRlcigpIHsKKwkJcmV0dXJuIGhlYWRlcjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRIZWFkZXIoSGVhZGVyIG5ld0hlYWRlciwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlIZWFkZXIgb2xkSGVhZGVyID0gaGVhZGVyOworCQloZWFkZXIgPSBuZXdIZWFkZXI7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNVV9fSEVBREVSLCBvbGRIZWFkZXIsIG5ld0hlYWRlcik7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0SGVhZGVyKEhlYWRlciBuZXdIZWFkZXIpIHsKKwkJaWYgKG5ld0hlYWRlciAhPSBoZWFkZXIpIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKGhlYWRlciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCloZWFkZXIpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTVVfX0hFQURFUiwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3SGVhZGVyICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld0hlYWRlcikuZUludmVyc2VBZGQodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNVV9fSEVBREVSLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldEhlYWRlcihuZXdIZWFkZXIsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1VX19IRUFERVIsIG5ld0hlYWRlciwgbmV3SGVhZGVyKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFF1YXRlcm5pb24gZ2V0T3JpZW50YXRpb24oKSB7CisJCXJldHVybiBvcmllbnRhdGlvbjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRPcmllbnRhdGlvbihRdWF0ZXJuaW9uIG5ld09yaWVudGF0aW9uLCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCVF1YXRlcm5pb24gb2xkT3JpZW50YXRpb24gPSBvcmllbnRhdGlvbjsKKwkJb3JpZW50YXRpb24gPSBuZXdPcmllbnRhdGlvbjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1VX19PUklFTlRBVElPTiwgb2xkT3JpZW50YXRpb24sIG5ld09yaWVudGF0aW9uKTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRPcmllbnRhdGlvbihRdWF0ZXJuaW9uIG5ld09yaWVudGF0aW9uKSB7CisJCWlmIChuZXdPcmllbnRhdGlvbiAhPSBvcmllbnRhdGlvbikgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAob3JpZW50YXRpb24gIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3Qpb3JpZW50YXRpb24pLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTVVfX09SSUVOVEFUSU9OLCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdPcmllbnRhdGlvbiAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdPcmllbnRhdGlvbikuZUludmVyc2VBZGQodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNVV9fT1JJRU5UQVRJT04sIG51bGwsIG1zZ3MpOworCQkJbXNncyA9IGJhc2ljU2V0T3JpZW50YXRpb24obmV3T3JpZW50YXRpb24sIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1VX19PUklFTlRBVElPTiwgbmV3T3JpZW50YXRpb24sIG5ld09yaWVudGF0aW9uKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVMaXN0PE9iamVjdD4gZ2V0T3JpZW50YXRpb25fY292YXJpYW5jZSgpIHsKKwkJaWYgKG9yaWVudGF0aW9uX2NvdmFyaWFuY2UgPT0gbnVsbCkgeworCQkJb3JpZW50YXRpb25fY292YXJpYW5jZSA9IG5ldyBFRGF0YVR5cGVVbmlxdWVFTGlzdDxPYmplY3Q+KE9iamVjdC5jbGFzcywgdGhpcywgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1VX19PUklFTlRBVElPTl9DT1ZBUklBTkNFKTsKKwkJfQorCQlyZXR1cm4gb3JpZW50YXRpb25fY292YXJpYW5jZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVmVjdG9yMyBnZXRBbmd1bGFyX3ZlbG9jaXR5KCkgeworCQlyZXR1cm4gYW5ndWxhcl92ZWxvY2l0eTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRBbmd1bGFyX3ZlbG9jaXR5KFZlY3RvcjMgbmV3QW5ndWxhcl92ZWxvY2l0eSwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlWZWN0b3IzIG9sZEFuZ3VsYXJfdmVsb2NpdHkgPSBhbmd1bGFyX3ZlbG9jaXR5OworCQlhbmd1bGFyX3ZlbG9jaXR5ID0gbmV3QW5ndWxhcl92ZWxvY2l0eTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1VX19BTkdVTEFSX1ZFTE9DSVRZLCBvbGRBbmd1bGFyX3ZlbG9jaXR5LCBuZXdBbmd1bGFyX3ZlbG9jaXR5KTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRBbmd1bGFyX3ZlbG9jaXR5KFZlY3RvcjMgbmV3QW5ndWxhcl92ZWxvY2l0eSkgeworCQlpZiAobmV3QW5ndWxhcl92ZWxvY2l0eSAhPSBhbmd1bGFyX3ZlbG9jaXR5KSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChhbmd1bGFyX3ZlbG9jaXR5ICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KWFuZ3VsYXJfdmVsb2NpdHkpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTVVfX0FOR1VMQVJfVkVMT0NJVFksIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld0FuZ3VsYXJfdmVsb2NpdHkgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3QW5ndWxhcl92ZWxvY2l0eSkuZUludmVyc2VBZGQodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNVV9fQU5HVUxBUl9WRUxPQ0lUWSwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRBbmd1bGFyX3ZlbG9jaXR5KG5ld0FuZ3VsYXJfdmVsb2NpdHksIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1VX19BTkdVTEFSX1ZFTE9DSVRZLCBuZXdBbmd1bGFyX3ZlbG9jaXR5LCBuZXdBbmd1bGFyX3ZlbG9jaXR5KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVMaXN0PE9iamVjdD4gZ2V0QW5ndWxhcl92ZWxvY2l0eV9jb3ZhcmlhbmNlKCkgeworCQlpZiAoYW5ndWxhcl92ZWxvY2l0eV9jb3ZhcmlhbmNlID09IG51bGwpIHsKKwkJCWFuZ3VsYXJfdmVsb2NpdHlfY292YXJpYW5jZSA9IG5ldyBFRGF0YVR5cGVVbmlxdWVFTGlzdDxPYmplY3Q+KE9iamVjdC5jbGFzcywgdGhpcywgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1VX19BTkdVTEFSX1ZFTE9DSVRZX0NPVkFSSUFOQ0UpOworCQl9CisJCXJldHVybiBhbmd1bGFyX3ZlbG9jaXR5X2NvdmFyaWFuY2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFZlY3RvcjMgZ2V0TGluZWFyX2FjY2VsZXJhdGlvbigpIHsKKwkJcmV0dXJuIGxpbmVhcl9hY2NlbGVyYXRpb247CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0TGluZWFyX2FjY2VsZXJhdGlvbihWZWN0b3IzIG5ld0xpbmVhcl9hY2NlbGVyYXRpb24sIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJVmVjdG9yMyBvbGRMaW5lYXJfYWNjZWxlcmF0aW9uID0gbGluZWFyX2FjY2VsZXJhdGlvbjsKKwkJbGluZWFyX2FjY2VsZXJhdGlvbiA9IG5ld0xpbmVhcl9hY2NlbGVyYXRpb247CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNVV9fTElORUFSX0FDQ0VMRVJBVElPTiwgb2xkTGluZWFyX2FjY2VsZXJhdGlvbiwgbmV3TGluZWFyX2FjY2VsZXJhdGlvbik7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0TGluZWFyX2FjY2VsZXJhdGlvbihWZWN0b3IzIG5ld0xpbmVhcl9hY2NlbGVyYXRpb24pIHsKKwkJaWYgKG5ld0xpbmVhcl9hY2NlbGVyYXRpb24gIT0gbGluZWFyX2FjY2VsZXJhdGlvbikgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAobGluZWFyX2FjY2VsZXJhdGlvbiAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdClsaW5lYXJfYWNjZWxlcmF0aW9uKS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1VX19MSU5FQVJfQUNDRUxFUkFUSU9OLCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdMaW5lYXJfYWNjZWxlcmF0aW9uICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld0xpbmVhcl9hY2NlbGVyYXRpb24pLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTVVfX0xJTkVBUl9BQ0NFTEVSQVRJT04sIG51bGwsIG1zZ3MpOworCQkJbXNncyA9IGJhc2ljU2V0TGluZWFyX2FjY2VsZXJhdGlvbihuZXdMaW5lYXJfYWNjZWxlcmF0aW9uLCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNVV9fTElORUFSX0FDQ0VMRVJBVElPTiwgbmV3TGluZWFyX2FjY2VsZXJhdGlvbiwgbmV3TGluZWFyX2FjY2VsZXJhdGlvbikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFTGlzdDxPYmplY3Q+IGdldExpbmVhcl9hY2NlbGVyYXRpb25fY292YXJpYW5jZSgpIHsKKwkJaWYgKGxpbmVhcl9hY2NlbGVyYXRpb25fY292YXJpYW5jZSA9PSBudWxsKSB7CisJCQlsaW5lYXJfYWNjZWxlcmF0aW9uX2NvdmFyaWFuY2UgPSBuZXcgRURhdGFUeXBlVW5pcXVlRUxpc3Q8T2JqZWN0PihPYmplY3QuY2xhc3MsIHRoaXMsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNVV9fTElORUFSX0FDQ0VMRVJBVElPTl9DT1ZBUklBTkNFKTsKKwkJfQorCQlyZXR1cm4gbGluZWFyX2FjY2VsZXJhdGlvbl9jb3ZhcmlhbmNlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBlSW52ZXJzZVJlbW92ZShJbnRlcm5hbEVPYmplY3Qgb3RoZXJFbmQsIGludCBmZWF0dXJlSUQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1VX19IRUFERVI6CisJCQkJcmV0dXJuIGJhc2ljU2V0SGVhZGVyKG51bGwsIG1zZ3MpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTVVfX09SSUVOVEFUSU9OOgorCQkJCXJldHVybiBiYXNpY1NldE9yaWVudGF0aW9uKG51bGwsIG1zZ3MpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTVVfX0FOR1VMQVJfVkVMT0NJVFk6CisJCQkJcmV0dXJuIGJhc2ljU2V0QW5ndWxhcl92ZWxvY2l0eShudWxsLCBtc2dzKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1VX19MSU5FQVJfQUNDRUxFUkFUSU9OOgorCQkJCXJldHVybiBiYXNpY1NldExpbmVhcl9hY2NlbGVyYXRpb24obnVsbCwgbXNncyk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJbnZlcnNlUmVtb3ZlKG90aGVyRW5kLCBmZWF0dXJlSUQsIG1zZ3MpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1VX19IRUFERVI6CisJCQkJcmV0dXJuIGdldEhlYWRlcigpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTVVfX09SSUVOVEFUSU9OOgorCQkJCXJldHVybiBnZXRPcmllbnRhdGlvbigpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTVVfX09SSUVOVEFUSU9OX0NPVkFSSUFOQ0U6CisJCQkJcmV0dXJuIGdldE9yaWVudGF0aW9uX2NvdmFyaWFuY2UoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1VX19BTkdVTEFSX1ZFTE9DSVRZOgorCQkJCXJldHVybiBnZXRBbmd1bGFyX3ZlbG9jaXR5KCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNVV9fQU5HVUxBUl9WRUxPQ0lUWV9DT1ZBUklBTkNFOgorCQkJCXJldHVybiBnZXRBbmd1bGFyX3ZlbG9jaXR5X2NvdmFyaWFuY2UoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1VX19MSU5FQVJfQUNDRUxFUkFUSU9OOgorCQkJCXJldHVybiBnZXRMaW5lYXJfYWNjZWxlcmF0aW9uKCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNVV9fTElORUFSX0FDQ0VMRVJBVElPTl9DT1ZBUklBTkNFOgorCQkJCXJldHVybiBnZXRMaW5lYXJfYWNjZWxlcmF0aW9uX2NvdmFyaWFuY2UoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAU3VwcHJlc3NXYXJuaW5ncygidW5jaGVja2VkIikKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTVVfX0hFQURFUjoKKwkJCQlzZXRIZWFkZXIoKEhlYWRlciluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTVVfX09SSUVOVEFUSU9OOgorCQkJCXNldE9yaWVudGF0aW9uKChRdWF0ZXJuaW9uKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNVV9fT1JJRU5UQVRJT05fQ09WQVJJQU5DRToKKwkJCQlnZXRPcmllbnRhdGlvbl9jb3ZhcmlhbmNlKCkuY2xlYXIoKTsKKwkJCQlnZXRPcmllbnRhdGlvbl9jb3ZhcmlhbmNlKCkuYWRkQWxsKChDb2xsZWN0aW9uPD8gZXh0ZW5kcyBPYmplY3Q+KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNVV9fQU5HVUxBUl9WRUxPQ0lUWToKKwkJCQlzZXRBbmd1bGFyX3ZlbG9jaXR5KChWZWN0b3IzKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNVV9fQU5HVUxBUl9WRUxPQ0lUWV9DT1ZBUklBTkNFOgorCQkJCWdldEFuZ3VsYXJfdmVsb2NpdHlfY292YXJpYW5jZSgpLmNsZWFyKCk7CisJCQkJZ2V0QW5ndWxhcl92ZWxvY2l0eV9jb3ZhcmlhbmNlKCkuYWRkQWxsKChDb2xsZWN0aW9uPD8gZXh0ZW5kcyBPYmplY3Q+KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNVV9fTElORUFSX0FDQ0VMRVJBVElPTjoKKwkJCQlzZXRMaW5lYXJfYWNjZWxlcmF0aW9uKChWZWN0b3IzKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNVV9fTElORUFSX0FDQ0VMRVJBVElPTl9DT1ZBUklBTkNFOgorCQkJCWdldExpbmVhcl9hY2NlbGVyYXRpb25fY292YXJpYW5jZSgpLmNsZWFyKCk7CisJCQkJZ2V0TGluZWFyX2FjY2VsZXJhdGlvbl9jb3ZhcmlhbmNlKCkuYWRkQWxsKChDb2xsZWN0aW9uPD8gZXh0ZW5kcyBPYmplY3Q+KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTVVfX0hFQURFUjoKKwkJCQlzZXRIZWFkZXIoKEhlYWRlciludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNVV9fT1JJRU5UQVRJT046CisJCQkJc2V0T3JpZW50YXRpb24oKFF1YXRlcm5pb24pbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTVVfX09SSUVOVEFUSU9OX0NPVkFSSUFOQ0U6CisJCQkJZ2V0T3JpZW50YXRpb25fY292YXJpYW5jZSgpLmNsZWFyKCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTVVfX0FOR1VMQVJfVkVMT0NJVFk6CisJCQkJc2V0QW5ndWxhcl92ZWxvY2l0eSgoVmVjdG9yMyludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNVV9fQU5HVUxBUl9WRUxPQ0lUWV9DT1ZBUklBTkNFOgorCQkJCWdldEFuZ3VsYXJfdmVsb2NpdHlfY292YXJpYW5jZSgpLmNsZWFyKCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTVVfX0xJTkVBUl9BQ0NFTEVSQVRJT046CisJCQkJc2V0TGluZWFyX2FjY2VsZXJhdGlvbigoVmVjdG9yMyludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNVV9fTElORUFSX0FDQ0VMRVJBVElPTl9DT1ZBUklBTkNFOgorCQkJCWdldExpbmVhcl9hY2NlbGVyYXRpb25fY292YXJpYW5jZSgpLmNsZWFyKCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLklNVV9fSEVBREVSOgorCQkJCXJldHVybiBoZWFkZXIgIT0gbnVsbDsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1VX19PUklFTlRBVElPTjoKKwkJCQlyZXR1cm4gb3JpZW50YXRpb24gIT0gbnVsbDsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1VX19PUklFTlRBVElPTl9DT1ZBUklBTkNFOgorCQkJCXJldHVybiBvcmllbnRhdGlvbl9jb3ZhcmlhbmNlICE9IG51bGwgJiYgIW9yaWVudGF0aW9uX2NvdmFyaWFuY2UuaXNFbXB0eSgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTVVfX0FOR1VMQVJfVkVMT0NJVFk6CisJCQkJcmV0dXJuIGFuZ3VsYXJfdmVsb2NpdHkgIT0gbnVsbDsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1VX19BTkdVTEFSX1ZFTE9DSVRZX0NPVkFSSUFOQ0U6CisJCQkJcmV0dXJuIGFuZ3VsYXJfdmVsb2NpdHlfY292YXJpYW5jZSAhPSBudWxsICYmICFhbmd1bGFyX3ZlbG9jaXR5X2NvdmFyaWFuY2UuaXNFbXB0eSgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5JTVVfX0xJTkVBUl9BQ0NFTEVSQVRJT046CisJCQkJcmV0dXJuIGxpbmVhcl9hY2NlbGVyYXRpb24gIT0gbnVsbDsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1VX19MSU5FQVJfQUNDRUxFUkFUSU9OX0NPVkFSSUFOQ0U6CisJCQkJcmV0dXJuIGxpbmVhcl9hY2NlbGVyYXRpb25fY292YXJpYW5jZSAhPSBudWxsICYmICFsaW5lYXJfYWNjZWxlcmF0aW9uX2NvdmFyaWFuY2UuaXNFbXB0eSgpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAob3JpZW50YXRpb25fY292YXJpYW5jZTogIik7CisJCXJlc3VsdC5hcHBlbmQob3JpZW50YXRpb25fY292YXJpYW5jZSk7CisJCXJlc3VsdC5hcHBlbmQoIiwgYW5ndWxhcl92ZWxvY2l0eV9jb3ZhcmlhbmNlOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChhbmd1bGFyX3ZlbG9jaXR5X2NvdmFyaWFuY2UpOworCQlyZXN1bHQuYXBwZW5kKCIsIGxpbmVhcl9hY2NlbGVyYXRpb25fY292YXJpYW5jZTogIik7CisJCXJlc3VsdC5hcHBlbmQobGluZWFyX2FjY2VsZXJhdGlvbl9jb3ZhcmlhbmNlKTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIEltdUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9Kb2ludFN0YXRlSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL0pvaW50U3RhdGVJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWY5NThhYwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9Kb2ludFN0YXRlSW1wbC5qYXZhCkBAIC0wLDAgKzEsMjUzIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb247CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuRURhdGFUeXBlVW5pcXVlRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm9pbnRTdGF0ZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkpvaW50IFN0YXRlPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkpvaW50U3RhdGVJbXBsI2dldE5hbWUgPGVtPk5hbWU8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuSm9pbnRTdGF0ZUltcGwjZ2V0UG9zaXRpb24gPGVtPlBvc2l0aW9uPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkpvaW50U3RhdGVJbXBsI2dldFZlbG9jaXR5IDxlbT5WZWxvY2l0eTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Kb2ludFN0YXRlSW1wbCNnZXRFZmZvcnQgPGVtPkVmZm9ydDwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEpvaW50U3RhdGVJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIEpvaW50U3RhdGUgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldE5hbWUoKSA8ZW0+TmFtZTwvZW0+fScgYXR0cmlidXRlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXROYW1lKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRUxpc3Q8T2JqZWN0PiBuYW1lOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0UG9zaXRpb24oKSA8ZW0+UG9zaXRpb248L2VtPn0nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UG9zaXRpb24oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBFTGlzdDxPYmplY3Q+IHBvc2l0aW9uOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0VmVsb2NpdHkoKSA8ZW0+VmVsb2NpdHk8L2VtPn0nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VmVsb2NpdHkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBFTGlzdDxPYmplY3Q+IHZlbG9jaXR5OworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0RWZmb3J0KCkgPGVtPkVmZm9ydDwvZW0+fScgYXR0cmlidXRlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRFZmZvcnQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBFTGlzdDxPYmplY3Q+IGVmZm9ydDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBKb2ludFN0YXRlSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLkpPSU5UX1NUQVRFOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFTGlzdDxPYmplY3Q+IGdldE5hbWUoKSB7CisJCWlmIChuYW1lID09IG51bGwpIHsKKwkJCW5hbWUgPSBuZXcgRURhdGFUeXBlVW5pcXVlRUxpc3Q8T2JqZWN0PihPYmplY3QuY2xhc3MsIHRoaXMsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPSU5UX1NUQVRFX19OQU1FKTsKKwkJfQorCQlyZXR1cm4gbmFtZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUxpc3Q8T2JqZWN0PiBnZXRQb3NpdGlvbigpIHsKKwkJaWYgKHBvc2l0aW9uID09IG51bGwpIHsKKwkJCXBvc2l0aW9uID0gbmV3IEVEYXRhVHlwZVVuaXF1ZUVMaXN0PE9iamVjdD4oT2JqZWN0LmNsYXNzLCB0aGlzLCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT0lOVF9TVEFURV9fUE9TSVRJT04pOworCQl9CisJCXJldHVybiBwb3NpdGlvbjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUxpc3Q8T2JqZWN0PiBnZXRWZWxvY2l0eSgpIHsKKwkJaWYgKHZlbG9jaXR5ID09IG51bGwpIHsKKwkJCXZlbG9jaXR5ID0gbmV3IEVEYXRhVHlwZVVuaXF1ZUVMaXN0PE9iamVjdD4oT2JqZWN0LmNsYXNzLCB0aGlzLCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT0lOVF9TVEFURV9fVkVMT0NJVFkpOworCQl9CisJCXJldHVybiB2ZWxvY2l0eTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUxpc3Q8T2JqZWN0PiBnZXRFZmZvcnQoKSB7CisJCWlmIChlZmZvcnQgPT0gbnVsbCkgeworCQkJZWZmb3J0ID0gbmV3IEVEYXRhVHlwZVVuaXF1ZUVMaXN0PE9iamVjdD4oT2JqZWN0LmNsYXNzLCB0aGlzLCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT0lOVF9TVEFURV9fRUZGT1JUKTsKKwkJfQorCQlyZXR1cm4gZWZmb3J0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9JTlRfU1RBVEVfX05BTUU6CisJCQkJcmV0dXJuIGdldE5hbWUoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9JTlRfU1RBVEVfX1BPU0lUSU9OOgorCQkJCXJldHVybiBnZXRQb3NpdGlvbigpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT0lOVF9TVEFURV9fVkVMT0NJVFk6CisJCQkJcmV0dXJuIGdldFZlbG9jaXR5KCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPSU5UX1NUQVRFX19FRkZPUlQ6CisJCQkJcmV0dXJuIGdldEVmZm9ydCgpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBTdXBwcmVzc1dhcm5pbmdzKCJ1bmNoZWNrZWQiKQorCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPSU5UX1NUQVRFX19OQU1FOgorCQkJCWdldE5hbWUoKS5jbGVhcigpOworCQkJCWdldE5hbWUoKS5hZGRBbGwoKENvbGxlY3Rpb248PyBleHRlbmRzIE9iamVjdD4pbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9JTlRfU1RBVEVfX1BPU0lUSU9OOgorCQkJCWdldFBvc2l0aW9uKCkuY2xlYXIoKTsKKwkJCQlnZXRQb3NpdGlvbigpLmFkZEFsbCgoQ29sbGVjdGlvbjw/IGV4dGVuZHMgT2JqZWN0PiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT0lOVF9TVEFURV9fVkVMT0NJVFk6CisJCQkJZ2V0VmVsb2NpdHkoKS5jbGVhcigpOworCQkJCWdldFZlbG9jaXR5KCkuYWRkQWxsKChDb2xsZWN0aW9uPD8gZXh0ZW5kcyBPYmplY3Q+KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPSU5UX1NUQVRFX19FRkZPUlQ6CisJCQkJZ2V0RWZmb3J0KCkuY2xlYXIoKTsKKwkJCQlnZXRFZmZvcnQoKS5hZGRBbGwoKENvbGxlY3Rpb248PyBleHRlbmRzIE9iamVjdD4pbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPSU5UX1NUQVRFX19OQU1FOgorCQkJCWdldE5hbWUoKS5jbGVhcigpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9JTlRfU1RBVEVfX1BPU0lUSU9OOgorCQkJCWdldFBvc2l0aW9uKCkuY2xlYXIoKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPSU5UX1NUQVRFX19WRUxPQ0lUWToKKwkJCQlnZXRWZWxvY2l0eSgpLmNsZWFyKCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT0lOVF9TVEFURV9fRUZGT1JUOgorCQkJCWdldEVmZm9ydCgpLmNsZWFyKCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPSU5UX1NUQVRFX19OQU1FOgorCQkJCXJldHVybiBuYW1lICE9IG51bGwgJiYgIW5hbWUuaXNFbXB0eSgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT0lOVF9TVEFURV9fUE9TSVRJT046CisJCQkJcmV0dXJuIHBvc2l0aW9uICE9IG51bGwgJiYgIXBvc2l0aW9uLmlzRW1wdHkoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9JTlRfU1RBVEVfX1ZFTE9DSVRZOgorCQkJCXJldHVybiB2ZWxvY2l0eSAhPSBudWxsICYmICF2ZWxvY2l0eS5pc0VtcHR5KCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPSU5UX1NUQVRFX19FRkZPUlQ6CisJCQkJcmV0dXJuIGVmZm9ydCAhPSBudWxsICYmICFlZmZvcnQuaXNFbXB0eSgpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAobmFtZTogIik7CisJCXJlc3VsdC5hcHBlbmQobmFtZSk7CisJCXJlc3VsdC5hcHBlbmQoIiwgcG9zaXRpb246ICIpOworCQlyZXN1bHQuYXBwZW5kKHBvc2l0aW9uKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCB2ZWxvY2l0eTogIik7CisJCXJlc3VsdC5hcHBlbmQodmVsb2NpdHkpOworCQlyZXN1bHQuYXBwZW5kKCIsIGVmZm9ydDogIik7CisJCXJlc3VsdC5hcHBlbmQoZWZmb3J0KTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIEpvaW50U3RhdGVJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvSm95RmVlZGJhY2tBcnJheUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9Kb3lGZWVkYmFja0FycmF5SW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRiNTUxNjYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvSm95RmVlZGJhY2tBcnJheUltcGwuamF2YQpAQCAtMCwwICsxLDE0NyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IGphdmEudXRpbC5Db2xsZWN0aW9uOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uQ2hhaW47CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuRU9iamVjdENvbnRhaW5tZW50RUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuSW50ZXJuYWxFTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb3lGZWVkYmFjazsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb3lGZWVkYmFja0FycmF5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Sm95IEZlZWRiYWNrIEFycmF5PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkpveUZlZWRiYWNrQXJyYXlJbXBsI2dldEFycmF5IDxlbT5BcnJheTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEpveUZlZWRiYWNrQXJyYXlJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIEpveUZlZWRiYWNrQXJyYXkgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEFycmF5KCkgPGVtPkFycmF5PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEFycmF5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRUxpc3Q8Sm95RmVlZGJhY2s+IGFycmF5OworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIEpveUZlZWRiYWNrQXJyYXlJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuSk9ZX0ZFRURCQUNLX0FSUkFZOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFTGlzdDxKb3lGZWVkYmFjaz4gZ2V0QXJyYXkoKSB7CisJCWlmIChhcnJheSA9PSBudWxsKSB7CisJCQlhcnJheSA9IG5ldyBFT2JqZWN0Q29udGFpbm1lbnRFTGlzdDxKb3lGZWVkYmFjaz4oSm95RmVlZGJhY2suY2xhc3MsIHRoaXMsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9GRUVEQkFDS19BUlJBWV9fQVJSQVkpOworCQl9CisJCXJldHVybiBhcnJheTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gZUludmVyc2VSZW1vdmUoSW50ZXJuYWxFT2JqZWN0IG90aGVyRW5kLCBpbnQgZmVhdHVyZUlELCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9GRUVEQkFDS19BUlJBWV9fQVJSQVk6CisJCQkJcmV0dXJuICgoSW50ZXJuYWxFTGlzdDw/PilnZXRBcnJheSgpKS5iYXNpY1JlbW92ZShvdGhlckVuZCwgbXNncyk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJbnZlcnNlUmVtb3ZlKG90aGVyRW5kLCBmZWF0dXJlSUQsIG1zZ3MpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9ZX0ZFRURCQUNLX0FSUkFZX19BUlJBWToKKwkJCQlyZXR1cm4gZ2V0QXJyYXkoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAU3VwcHJlc3NXYXJuaW5ncygidW5jaGVja2VkIikKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT1lfRkVFREJBQ0tfQVJSQVlfX0FSUkFZOgorCQkJCWdldEFycmF5KCkuY2xlYXIoKTsKKwkJCQlnZXRBcnJheSgpLmFkZEFsbCgoQ29sbGVjdGlvbjw/IGV4dGVuZHMgSm95RmVlZGJhY2s+KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT1lfRkVFREJBQ0tfQVJSQVlfX0FSUkFZOgorCQkJCWdldEFycmF5KCkuY2xlYXIoKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9ZX0ZFRURCQUNLX0FSUkFZX19BUlJBWToKKwkJCQlyZXR1cm4gYXJyYXkgIT0gbnVsbCAmJiAhYXJyYXkuaXNFbXB0eSgpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKK30gLy8gSm95RmVlZGJhY2tBcnJheUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9Kb3lGZWVkYmFja0ltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9Kb3lGZWVkYmFja0ltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40NjljZTMzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL0pveUZlZWRiYWNrSW1wbC5qYXZhCkBAIC0wLDAgKzEsNDMyIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpveUZlZWRiYWNrOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNGYWN0b3J5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Sm95IEZlZWRiYWNrPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkpveUZlZWRiYWNrSW1wbCNnZXRUWVBFX0xFRCA8ZW0+VFlQRSBMRUQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuSm95RmVlZGJhY2tJbXBsI2dldFRZUEVfUlVNQkxFIDxlbT5UWVBFIFJVTUJMRTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Kb3lGZWVkYmFja0ltcGwjZ2V0VFlQRV9CVVpaRVIgPGVtPlRZUEUgQlVaWkVSPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkpveUZlZWRiYWNrSW1wbCNnZXRUeXBlIDxlbT5UeXBlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkpveUZlZWRiYWNrSW1wbCNnZXRJZCA8ZW0+SWQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuSm95RmVlZGJhY2tJbXBsI2dldEludGVuc2l0eSA8ZW0+SW50ZW5zaXR5PC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgSm95RmVlZGJhY2tJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIEpveUZlZWRiYWNrIHsKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0VFlQRV9MRUQoKSA8ZW0+VFlQRSBMRUQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFRZUEVfTEVEKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBUWVBFX0xFRF9FREVGQVVMVCA9IChPYmplY3QpU3RkX2RhdGF0eXBlc0ZhY3RvcnkuZUlOU1RBTkNFLmNyZWF0ZUZyb21TdHJpbmcoU3RkX2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFLmdldFVJbnQ4KCksICIwIik7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRUWVBFX0xFRCgpIDxlbT5UWVBFIExFRDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VFlQRV9MRUQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgdHlwRV9MRUQgPSBUWVBFX0xFRF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRUWVBFX1JVTUJMRSgpIDxlbT5UWVBFIFJVTUJMRTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VFlQRV9SVU1CTEUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFRZUEVfUlVNQkxFX0VERUZBVUxUID0gKE9iamVjdClTdGRfZGF0YXR5cGVzRmFjdG9yeS5lSU5TVEFOQ0UuY3JlYXRlRnJvbVN0cmluZyhTdGRfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UuZ2V0VUludDgoKSwgIjEiKTsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFRZUEVfUlVNQkxFKCkgPGVtPlRZUEUgUlVNQkxFPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRUWVBFX1JVTUJMRSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCB0eXBFX1JVTUJMRSA9IFRZUEVfUlVNQkxFX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFRZUEVfQlVaWkVSKCkgPGVtPlRZUEUgQlVaWkVSPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRUWVBFX0JVWlpFUigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgVFlQRV9CVVpaRVJfRURFRkFVTFQgPSAoT2JqZWN0KVN0ZF9kYXRhdHlwZXNGYWN0b3J5LmVJTlNUQU5DRS5jcmVhdGVGcm9tU3RyaW5nKFN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRS5nZXRVSW50OCgpLCAiMiIpOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0VFlQRV9CVVpaRVIoKSA8ZW0+VFlQRSBCVVpaRVI8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFRZUEVfQlVaWkVSKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHR5cEVfQlVaWkVSID0gVFlQRV9CVVpaRVJfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0VHlwZSgpIDxlbT5UeXBlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRUeXBlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBUWVBFX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFR5cGUoKSA8ZW0+VHlwZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VHlwZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCB0eXBlID0gVFlQRV9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRJZCgpIDxlbT5JZDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IElEX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldElkKCkgPGVtPklkPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRJZCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBpZCA9IElEX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEludGVuc2l0eSgpIDxlbT5JbnRlbnNpdHk8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEludGVuc2l0eSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgSU5URU5TSVRZX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEludGVuc2l0eSgpIDxlbT5JbnRlbnNpdHk8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEludGVuc2l0eSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBpbnRlbnNpdHkgPSBJTlRFTlNJVFlfRURFRkFVTFQ7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgSm95RmVlZGJhY2tJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuSk9ZX0ZFRURCQUNLOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0VFlQRV9MRUQoKSB7CisJCXJldHVybiB0eXBFX0xFRDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRUWVBFX0xFRChPYmplY3QgbmV3VFlQRV9MRUQpIHsKKwkJT2JqZWN0IG9sZFRZUEVfTEVEID0gdHlwRV9MRUQ7CisJCXR5cEVfTEVEID0gbmV3VFlQRV9MRUQ7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9GRUVEQkFDS19fVFlQRV9MRUQsIG9sZFRZUEVfTEVELCB0eXBFX0xFRCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0VFlQRV9SVU1CTEUoKSB7CisJCXJldHVybiB0eXBFX1JVTUJMRTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRUWVBFX1JVTUJMRShPYmplY3QgbmV3VFlQRV9SVU1CTEUpIHsKKwkJT2JqZWN0IG9sZFRZUEVfUlVNQkxFID0gdHlwRV9SVU1CTEU7CisJCXR5cEVfUlVNQkxFID0gbmV3VFlQRV9SVU1CTEU7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9GRUVEQkFDS19fVFlQRV9SVU1CTEUsIG9sZFRZUEVfUlVNQkxFLCB0eXBFX1JVTUJMRSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0VFlQRV9CVVpaRVIoKSB7CisJCXJldHVybiB0eXBFX0JVWlpFUjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRUWVBFX0JVWlpFUihPYmplY3QgbmV3VFlQRV9CVVpaRVIpIHsKKwkJT2JqZWN0IG9sZFRZUEVfQlVaWkVSID0gdHlwRV9CVVpaRVI7CisJCXR5cEVfQlVaWkVSID0gbmV3VFlQRV9CVVpaRVI7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9GRUVEQkFDS19fVFlQRV9CVVpaRVIsIG9sZFRZUEVfQlVaWkVSLCB0eXBFX0JVWlpFUikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0VHlwZSgpIHsKKwkJcmV0dXJuIHR5cGU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0VHlwZShPYmplY3QgbmV3VHlwZSkgeworCQlPYmplY3Qgb2xkVHlwZSA9IHR5cGU7CisJCXR5cGUgPSBuZXdUeXBlOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT1lfRkVFREJBQ0tfX1RZUEUsIG9sZFR5cGUsIHR5cGUpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldElkKCkgeworCQlyZXR1cm4gaWQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0SWQoT2JqZWN0IG5ld0lkKSB7CisJCU9iamVjdCBvbGRJZCA9IGlkOworCQlpZCA9IG5ld0lkOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT1lfRkVFREJBQ0tfX0lELCBvbGRJZCwgaWQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldEludGVuc2l0eSgpIHsKKwkJcmV0dXJuIGludGVuc2l0eTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRJbnRlbnNpdHkoT2JqZWN0IG5ld0ludGVuc2l0eSkgeworCQlPYmplY3Qgb2xkSW50ZW5zaXR5ID0gaW50ZW5zaXR5OworCQlpbnRlbnNpdHkgPSBuZXdJbnRlbnNpdHk7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9GRUVEQkFDS19fSU5URU5TSVRZLCBvbGRJbnRlbnNpdHksIGludGVuc2l0eSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9ZX0ZFRURCQUNLX19UWVBFX0xFRDoKKwkJCQlyZXR1cm4gZ2V0VFlQRV9MRUQoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9ZX0ZFRURCQUNLX19UWVBFX1JVTUJMRToKKwkJCQlyZXR1cm4gZ2V0VFlQRV9SVU1CTEUoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9ZX0ZFRURCQUNLX19UWVBFX0JVWlpFUjoKKwkJCQlyZXR1cm4gZ2V0VFlQRV9CVVpaRVIoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9ZX0ZFRURCQUNLX19UWVBFOgorCQkJCXJldHVybiBnZXRUeXBlKCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9GRUVEQkFDS19fSUQ6CisJCQkJcmV0dXJuIGdldElkKCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9GRUVEQkFDS19fSU5URU5TSVRZOgorCQkJCXJldHVybiBnZXRJbnRlbnNpdHkoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT1lfRkVFREJBQ0tfX1RZUEVfTEVEOgorCQkJCXNldFRZUEVfTEVEKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9ZX0ZFRURCQUNLX19UWVBFX1JVTUJMRToKKwkJCQlzZXRUWVBFX1JVTUJMRSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9GRUVEQkFDS19fVFlQRV9CVVpaRVI6CisJCQkJc2V0VFlQRV9CVVpaRVIoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT1lfRkVFREJBQ0tfX1RZUEU6CisJCQkJc2V0VHlwZSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9GRUVEQkFDS19fSUQ6CisJCQkJc2V0SWQoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT1lfRkVFREJBQ0tfX0lOVEVOU0lUWToKKwkJCQlzZXRJbnRlbnNpdHkoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9ZX0ZFRURCQUNLX19UWVBFX0xFRDoKKwkJCQlzZXRUWVBFX0xFRChUWVBFX0xFRF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT1lfRkVFREJBQ0tfX1RZUEVfUlVNQkxFOgorCQkJCXNldFRZUEVfUlVNQkxFKFRZUEVfUlVNQkxFX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9GRUVEQkFDS19fVFlQRV9CVVpaRVI6CisJCQkJc2V0VFlQRV9CVVpaRVIoVFlQRV9CVVpaRVJfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9ZX0ZFRURCQUNLX19UWVBFOgorCQkJCXNldFR5cGUoVFlQRV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT1lfRkVFREJBQ0tfX0lEOgorCQkJCXNldElkKElEX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9GRUVEQkFDS19fSU5URU5TSVRZOgorCQkJCXNldEludGVuc2l0eShJTlRFTlNJVFlfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT1lfRkVFREJBQ0tfX1RZUEVfTEVEOgorCQkJCXJldHVybiBUWVBFX0xFRF9FREVGQVVMVCA9PSBudWxsID8gdHlwRV9MRUQgIT0gbnVsbCA6ICFUWVBFX0xFRF9FREVGQVVMVC5lcXVhbHModHlwRV9MRUQpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT1lfRkVFREJBQ0tfX1RZUEVfUlVNQkxFOgorCQkJCXJldHVybiBUWVBFX1JVTUJMRV9FREVGQVVMVCA9PSBudWxsID8gdHlwRV9SVU1CTEUgIT0gbnVsbCA6ICFUWVBFX1JVTUJMRV9FREVGQVVMVC5lcXVhbHModHlwRV9SVU1CTEUpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT1lfRkVFREJBQ0tfX1RZUEVfQlVaWkVSOgorCQkJCXJldHVybiBUWVBFX0JVWlpFUl9FREVGQVVMVCA9PSBudWxsID8gdHlwRV9CVVpaRVIgIT0gbnVsbCA6ICFUWVBFX0JVWlpFUl9FREVGQVVMVC5lcXVhbHModHlwRV9CVVpaRVIpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT1lfRkVFREJBQ0tfX1RZUEU6CisJCQkJcmV0dXJuIFRZUEVfRURFRkFVTFQgPT0gbnVsbCA/IHR5cGUgIT0gbnVsbCA6ICFUWVBFX0VERUZBVUxULmVxdWFscyh0eXBlKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9ZX0ZFRURCQUNLX19JRDoKKwkJCQlyZXR1cm4gSURfRURFRkFVTFQgPT0gbnVsbCA/IGlkICE9IG51bGwgOiAhSURfRURFRkFVTFQuZXF1YWxzKGlkKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9ZX0ZFRURCQUNLX19JTlRFTlNJVFk6CisJCQkJcmV0dXJuIElOVEVOU0lUWV9FREVGQVVMVCA9PSBudWxsID8gaW50ZW5zaXR5ICE9IG51bGwgOiAhSU5URU5TSVRZX0VERUZBVUxULmVxdWFscyhpbnRlbnNpdHkpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAoVFlQRV9MRUQ6ICIpOworCQlyZXN1bHQuYXBwZW5kKHR5cEVfTEVEKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBUWVBFX1JVTUJMRTogIik7CisJCXJlc3VsdC5hcHBlbmQodHlwRV9SVU1CTEUpOworCQlyZXN1bHQuYXBwZW5kKCIsIFRZUEVfQlVaWkVSOiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh0eXBFX0JVWlpFUik7CisJCXJlc3VsdC5hcHBlbmQoIiwgdHlwZTogIik7CisJCXJlc3VsdC5hcHBlbmQodHlwZSk7CisJCXJlc3VsdC5hcHBlbmQoIiwgaWQ6ICIpOworCQlyZXN1bHQuYXBwZW5kKGlkKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBpbnRlbnNpdHk6ICIpOworCQlyZXN1bHQuYXBwZW5kKGludGVuc2l0eSk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBKb3lGZWVkYmFja0ltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9Kb3lJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvSm95SW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJjNDBhOTMKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvSm95SW1wbC5qYXZhCkBAIC0wLDAgKzEsMjY0IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb247CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uQ2hhaW47CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuRURhdGFUeXBlVW5pcXVlRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm95OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkpveTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Kb3lJbXBsI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkpveUltcGwjZ2V0QXhlcyA8ZW0+QXhlczwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Kb3lJbXBsI2dldEJ1dHRvbnMgPGVtPkJ1dHRvbnM8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBKb3lJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIEpveSB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0SGVhZGVyKCkgPGVtPkhlYWRlcjwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SGVhZGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgSGVhZGVyIGhlYWRlcjsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEF4ZXMoKSA8ZW0+QXhlczwvZW0+fScgYXR0cmlidXRlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRBeGVzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRUxpc3Q8T2JqZWN0PiBheGVzOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0QnV0dG9ucygpIDxlbT5CdXR0b25zPC9lbT59JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEJ1dHRvbnMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBFTGlzdDxPYmplY3Q+IGJ1dHRvbnM7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgSm95SW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLkpPWTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgSGVhZGVyIGdldEhlYWRlcigpIHsKKwkJcmV0dXJuIGhlYWRlcjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRIZWFkZXIoSGVhZGVyIG5ld0hlYWRlciwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlIZWFkZXIgb2xkSGVhZGVyID0gaGVhZGVyOworCQloZWFkZXIgPSBuZXdIZWFkZXI7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9fSEVBREVSLCBvbGRIZWFkZXIsIG5ld0hlYWRlcik7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0SGVhZGVyKEhlYWRlciBuZXdIZWFkZXIpIHsKKwkJaWYgKG5ld0hlYWRlciAhPSBoZWFkZXIpIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKGhlYWRlciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCloZWFkZXIpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT1lfX0hFQURFUiwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3SGVhZGVyICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld0hlYWRlcikuZUludmVyc2VBZGQodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9fSEVBREVSLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldEhlYWRlcihuZXdIZWFkZXIsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9ZX19IRUFERVIsIG5ld0hlYWRlciwgbmV3SGVhZGVyKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVMaXN0PE9iamVjdD4gZ2V0QXhlcygpIHsKKwkJaWYgKGF4ZXMgPT0gbnVsbCkgeworCQkJYXhlcyA9IG5ldyBFRGF0YVR5cGVVbmlxdWVFTGlzdDxPYmplY3Q+KE9iamVjdC5jbGFzcywgdGhpcywgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9ZX19BWEVTKTsKKwkJfQorCQlyZXR1cm4gYXhlczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUxpc3Q8T2JqZWN0PiBnZXRCdXR0b25zKCkgeworCQlpZiAoYnV0dG9ucyA9PSBudWxsKSB7CisJCQlidXR0b25zID0gbmV3IEVEYXRhVHlwZVVuaXF1ZUVMaXN0PE9iamVjdD4oT2JqZWN0LmNsYXNzLCB0aGlzLCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT1lfX0JVVFRPTlMpOworCQl9CisJCXJldHVybiBidXR0b25zOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBlSW52ZXJzZVJlbW92ZShJbnRlcm5hbEVPYmplY3Qgb3RoZXJFbmQsIGludCBmZWF0dXJlSUQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9ZX19IRUFERVI6CisJCQkJcmV0dXJuIGJhc2ljU2V0SGVhZGVyKG51bGwsIG1zZ3MpOworCQl9CisJCXJldHVybiBzdXBlci5lSW52ZXJzZVJlbW92ZShvdGhlckVuZCwgZmVhdHVyZUlELCBtc2dzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9fSEVBREVSOgorCQkJCXJldHVybiBnZXRIZWFkZXIoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9ZX19BWEVTOgorCQkJCXJldHVybiBnZXRBeGVzKCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9fQlVUVE9OUzoKKwkJCQlyZXR1cm4gZ2V0QnV0dG9ucygpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBTdXBwcmVzc1dhcm5pbmdzKCJ1bmNoZWNrZWQiKQorCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9fSEVBREVSOgorCQkJCXNldEhlYWRlcigoSGVhZGVyKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9fQVhFUzoKKwkJCQlnZXRBeGVzKCkuY2xlYXIoKTsKKwkJCQlnZXRBeGVzKCkuYWRkQWxsKChDb2xsZWN0aW9uPD8gZXh0ZW5kcyBPYmplY3Q+KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9fQlVUVE9OUzoKKwkJCQlnZXRCdXR0b25zKCkuY2xlYXIoKTsKKwkJCQlnZXRCdXR0b25zKCkuYWRkQWxsKChDb2xsZWN0aW9uPD8gZXh0ZW5kcyBPYmplY3Q+KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT1lfX0hFQURFUjoKKwkJCQlzZXRIZWFkZXIoKEhlYWRlciludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9fQVhFUzoKKwkJCQlnZXRBeGVzKCkuY2xlYXIoKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9fQlVUVE9OUzoKKwkJCQlnZXRCdXR0b25zKCkuY2xlYXIoKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9ZX19IRUFERVI6CisJCQkJcmV0dXJuIGhlYWRlciAhPSBudWxsOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT1lfX0FYRVM6CisJCQkJcmV0dXJuIGF4ZXMgIT0gbnVsbCAmJiAhYXhlcy5pc0VtcHR5KCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9fQlVUVE9OUzoKKwkJCQlyZXR1cm4gYnV0dG9ucyAhPSBudWxsICYmICFidXR0b25zLmlzRW1wdHkoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJaWYgKGVJc1Byb3h5KCkpIHJldHVybiBzdXBlci50b1N0cmluZygpOworCisJCVN0cmluZ0J1ZmZlciByZXN1bHQgPSBuZXcgU3RyaW5nQnVmZmVyKHN1cGVyLnRvU3RyaW5nKCkpOworCQlyZXN1bHQuYXBwZW5kKCIgKGF4ZXM6ICIpOworCQlyZXN1bHQuYXBwZW5kKGF4ZXMpOworCQlyZXN1bHQuYXBwZW5kKCIsIGJ1dHRvbnM6ICIpOworCQlyZXN1bHQuYXBwZW5kKGJ1dHRvbnMpOworCQlyZXN1bHQuYXBwZW5kKCcpJyk7CisJCXJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKKwl9CisKK30gLy8gSm95SW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL0xhc2VyU2NhbkltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9MYXNlclNjYW5JbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2YxMDkzNgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9MYXNlclNjYW5JbXBsLmphdmEKQEAgLTAsMCArMSw2NDIgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb25DaGFpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5FRGF0YVR5cGVVbmlxdWVFTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5MYXNlclNjYW47CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSGVhZGVyOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TGFzZXIgU2NhbjwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5MYXNlclNjYW5JbXBsI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkxhc2VyU2NhbkltcGwjZ2V0QW5nbGVfbWluIDxlbT5BbmdsZSBtaW48L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuTGFzZXJTY2FuSW1wbCNnZXRBbmdsZV9tYXggPGVtPkFuZ2xlIG1heDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5MYXNlclNjYW5JbXBsI2dldEFuZ2xlX2luY3JlbWVudCA8ZW0+QW5nbGUgaW5jcmVtZW50PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkxhc2VyU2NhbkltcGwjZ2V0VGltZV9pbmNyZW1lbnQgPGVtPlRpbWUgaW5jcmVtZW50PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkxhc2VyU2NhbkltcGwjZ2V0U2Nhbl90aW1lIDxlbT5TY2FuIHRpbWU8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuTGFzZXJTY2FuSW1wbCNnZXRSYW5nZV9taW4gPGVtPlJhbmdlIG1pbjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5MYXNlclNjYW5JbXBsI2dldFJhbmdlX21heCA8ZW0+UmFuZ2UgbWF4PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkxhc2VyU2NhbkltcGwjZ2V0UmFuZ2UgPGVtPlJhbmdlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLkxhc2VyU2NhbkltcGwjZ2V0SW50ZW5zaXRpZXMgPGVtPkludGVuc2l0aWVzPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgTGFzZXJTY2FuSW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBMYXNlclNjYW4geworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEhlYWRlcigpIDxlbT5IZWFkZXI8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEhlYWRlcigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEhlYWRlciBoZWFkZXI7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0QW5nbGVfbWluKCkgPGVtPkFuZ2xlIG1pbjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0QW5nbGVfbWluKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBBTkdMRV9NSU5fRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0QW5nbGVfbWluKCkgPGVtPkFuZ2xlIG1pbjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0QW5nbGVfbWluKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IGFuZ2xlX21pbiA9IEFOR0xFX01JTl9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRBbmdsZV9tYXgoKSA8ZW0+QW5nbGUgbWF4PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRBbmdsZV9tYXgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IEFOR0xFX01BWF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRBbmdsZV9tYXgoKSA8ZW0+QW5nbGUgbWF4PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRBbmdsZV9tYXgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgYW5nbGVfbWF4ID0gQU5HTEVfTUFYX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEFuZ2xlX2luY3JlbWVudCgpIDxlbT5BbmdsZSBpbmNyZW1lbnQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEFuZ2xlX2luY3JlbWVudCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgQU5HTEVfSU5DUkVNRU5UX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEFuZ2xlX2luY3JlbWVudCgpIDxlbT5BbmdsZSBpbmNyZW1lbnQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEFuZ2xlX2luY3JlbWVudCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBhbmdsZV9pbmNyZW1lbnQgPSBBTkdMRV9JTkNSRU1FTlRfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0VGltZV9pbmNyZW1lbnQoKSA8ZW0+VGltZSBpbmNyZW1lbnQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFRpbWVfaW5jcmVtZW50KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBUSU1FX0lOQ1JFTUVOVF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRUaW1lX2luY3JlbWVudCgpIDxlbT5UaW1lIGluY3JlbWVudDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0VGltZV9pbmNyZW1lbnQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgdGltZV9pbmNyZW1lbnQgPSBUSU1FX0lOQ1JFTUVOVF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTY2FuX3RpbWUoKSA8ZW0+U2NhbiB0aW1lPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRTY2FuX3RpbWUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFNDQU5fVElNRV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTY2FuX3RpbWUoKSA8ZW0+U2NhbiB0aW1lPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRTY2FuX3RpbWUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3Qgc2Nhbl90aW1lID0gU0NBTl9USU1FX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFJhbmdlX21pbigpIDxlbT5SYW5nZSBtaW48L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFJhbmdlX21pbigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgUkFOR0VfTUlOX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFJhbmdlX21pbigpIDxlbT5SYW5nZSBtaW48L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFJhbmdlX21pbigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCByYW5nZV9taW4gPSBSQU5HRV9NSU5fRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0UmFuZ2VfbWF4KCkgPGVtPlJhbmdlIG1heDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UmFuZ2VfbWF4KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBSQU5HRV9NQVhfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0UmFuZ2VfbWF4KCkgPGVtPlJhbmdlIG1heDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UmFuZ2VfbWF4KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHJhbmdlX21heCA9IFJBTkdFX01BWF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFJhbmdlKCkgPGVtPlJhbmdlPC9lbT59JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFJhbmdlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRUxpc3Q8T2JqZWN0PiByYW5nZTsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEludGVuc2l0aWVzKCkgPGVtPkludGVuc2l0aWVzPC9lbT59JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEludGVuc2l0aWVzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRUxpc3Q8T2JqZWN0PiBpbnRlbnNpdGllczsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBMYXNlclNjYW5JbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuTEFTRVJfU0NBTjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgSGVhZGVyIGdldEhlYWRlcigpIHsKKwkJcmV0dXJuIGhlYWRlcjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRIZWFkZXIoSGVhZGVyIG5ld0hlYWRlciwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlIZWFkZXIgb2xkSGVhZGVyID0gaGVhZGVyOworCQloZWFkZXIgPSBuZXdIZWFkZXI7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxBU0VSX1NDQU5fX0hFQURFUiwgb2xkSGVhZGVyLCBuZXdIZWFkZXIpOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEhlYWRlcihIZWFkZXIgbmV3SGVhZGVyKSB7CisJCWlmIChuZXdIZWFkZXIgIT0gaGVhZGVyKSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChoZWFkZXIgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpaGVhZGVyKS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fSEVBREVSLCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdIZWFkZXIgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3SGVhZGVyKS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fSEVBREVSLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldEhlYWRlcihuZXdIZWFkZXIsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fSEVBREVSLCBuZXdIZWFkZXIsIG5ld0hlYWRlcikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0QW5nbGVfbWluKCkgeworCQlyZXR1cm4gYW5nbGVfbWluOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEFuZ2xlX21pbihPYmplY3QgbmV3QW5nbGVfbWluKSB7CisJCU9iamVjdCBvbGRBbmdsZV9taW4gPSBhbmdsZV9taW47CisJCWFuZ2xlX21pbiA9IG5ld0FuZ2xlX21pbjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fQU5HTEVfTUlOLCBvbGRBbmdsZV9taW4sIGFuZ2xlX21pbikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0QW5nbGVfbWF4KCkgeworCQlyZXR1cm4gYW5nbGVfbWF4OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEFuZ2xlX21heChPYmplY3QgbmV3QW5nbGVfbWF4KSB7CisJCU9iamVjdCBvbGRBbmdsZV9tYXggPSBhbmdsZV9tYXg7CisJCWFuZ2xlX21heCA9IG5ld0FuZ2xlX21heDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fQU5HTEVfTUFYLCBvbGRBbmdsZV9tYXgsIGFuZ2xlX21heCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0QW5nbGVfaW5jcmVtZW50KCkgeworCQlyZXR1cm4gYW5nbGVfaW5jcmVtZW50OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEFuZ2xlX2luY3JlbWVudChPYmplY3QgbmV3QW5nbGVfaW5jcmVtZW50KSB7CisJCU9iamVjdCBvbGRBbmdsZV9pbmNyZW1lbnQgPSBhbmdsZV9pbmNyZW1lbnQ7CisJCWFuZ2xlX2luY3JlbWVudCA9IG5ld0FuZ2xlX2luY3JlbWVudDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fQU5HTEVfSU5DUkVNRU5ULCBvbGRBbmdsZV9pbmNyZW1lbnQsIGFuZ2xlX2luY3JlbWVudCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0VGltZV9pbmNyZW1lbnQoKSB7CisJCXJldHVybiB0aW1lX2luY3JlbWVudDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRUaW1lX2luY3JlbWVudChPYmplY3QgbmV3VGltZV9pbmNyZW1lbnQpIHsKKwkJT2JqZWN0IG9sZFRpbWVfaW5jcmVtZW50ID0gdGltZV9pbmNyZW1lbnQ7CisJCXRpbWVfaW5jcmVtZW50ID0gbmV3VGltZV9pbmNyZW1lbnQ7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxBU0VSX1NDQU5fX1RJTUVfSU5DUkVNRU5ULCBvbGRUaW1lX2luY3JlbWVudCwgdGltZV9pbmNyZW1lbnQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFNjYW5fdGltZSgpIHsKKwkJcmV0dXJuIHNjYW5fdGltZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRTY2FuX3RpbWUoT2JqZWN0IG5ld1NjYW5fdGltZSkgeworCQlPYmplY3Qgb2xkU2Nhbl90aW1lID0gc2Nhbl90aW1lOworCQlzY2FuX3RpbWUgPSBuZXdTY2FuX3RpbWU7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxBU0VSX1NDQU5fX1NDQU5fVElNRSwgb2xkU2Nhbl90aW1lLCBzY2FuX3RpbWUpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFJhbmdlX21pbigpIHsKKwkJcmV0dXJuIHJhbmdlX21pbjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRSYW5nZV9taW4oT2JqZWN0IG5ld1JhbmdlX21pbikgeworCQlPYmplY3Qgb2xkUmFuZ2VfbWluID0gcmFuZ2VfbWluOworCQlyYW5nZV9taW4gPSBuZXdSYW5nZV9taW47CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxBU0VSX1NDQU5fX1JBTkdFX01JTiwgb2xkUmFuZ2VfbWluLCByYW5nZV9taW4pKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFJhbmdlX21heCgpIHsKKwkJcmV0dXJuIHJhbmdlX21heDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRSYW5nZV9tYXgoT2JqZWN0IG5ld1JhbmdlX21heCkgeworCQlPYmplY3Qgb2xkUmFuZ2VfbWF4ID0gcmFuZ2VfbWF4OworCQlyYW5nZV9tYXggPSBuZXdSYW5nZV9tYXg7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxBU0VSX1NDQU5fX1JBTkdFX01BWCwgb2xkUmFuZ2VfbWF4LCByYW5nZV9tYXgpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUxpc3Q8T2JqZWN0PiBnZXRSYW5nZSgpIHsKKwkJaWYgKHJhbmdlID09IG51bGwpIHsKKwkJCXJhbmdlID0gbmV3IEVEYXRhVHlwZVVuaXF1ZUVMaXN0PE9iamVjdD4oT2JqZWN0LmNsYXNzLCB0aGlzLCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MQVNFUl9TQ0FOX19SQU5HRSk7CisJCX0KKwkJcmV0dXJuIHJhbmdlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFTGlzdDxPYmplY3Q+IGdldEludGVuc2l0aWVzKCkgeworCQlpZiAoaW50ZW5zaXRpZXMgPT0gbnVsbCkgeworCQkJaW50ZW5zaXRpZXMgPSBuZXcgRURhdGFUeXBlVW5pcXVlRUxpc3Q8T2JqZWN0PihPYmplY3QuY2xhc3MsIHRoaXMsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxBU0VSX1NDQU5fX0lOVEVOU0lUSUVTKTsKKwkJfQorCQlyZXR1cm4gaW50ZW5zaXRpZXM7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGVJbnZlcnNlUmVtb3ZlKEludGVybmFsRU9iamVjdCBvdGhlckVuZCwgaW50IGZlYXR1cmVJRCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MQVNFUl9TQ0FOX19IRUFERVI6CisJCQkJcmV0dXJuIGJhc2ljU2V0SGVhZGVyKG51bGwsIG1zZ3MpOworCQl9CisJCXJldHVybiBzdXBlci5lSW52ZXJzZVJlbW92ZShvdGhlckVuZCwgZmVhdHVyZUlELCBtc2dzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxBU0VSX1NDQU5fX0hFQURFUjoKKwkJCQlyZXR1cm4gZ2V0SGVhZGVyKCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxBU0VSX1NDQU5fX0FOR0xFX01JTjoKKwkJCQlyZXR1cm4gZ2V0QW5nbGVfbWluKCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxBU0VSX1NDQU5fX0FOR0xFX01BWDoKKwkJCQlyZXR1cm4gZ2V0QW5nbGVfbWF4KCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxBU0VSX1NDQU5fX0FOR0xFX0lOQ1JFTUVOVDoKKwkJCQlyZXR1cm4gZ2V0QW5nbGVfaW5jcmVtZW50KCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxBU0VSX1NDQU5fX1RJTUVfSU5DUkVNRU5UOgorCQkJCXJldHVybiBnZXRUaW1lX2luY3JlbWVudCgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MQVNFUl9TQ0FOX19TQ0FOX1RJTUU6CisJCQkJcmV0dXJuIGdldFNjYW5fdGltZSgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MQVNFUl9TQ0FOX19SQU5HRV9NSU46CisJCQkJcmV0dXJuIGdldFJhbmdlX21pbigpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MQVNFUl9TQ0FOX19SQU5HRV9NQVg6CisJCQkJcmV0dXJuIGdldFJhbmdlX21heCgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MQVNFUl9TQ0FOX19SQU5HRToKKwkJCQlyZXR1cm4gZ2V0UmFuZ2UoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fSU5URU5TSVRJRVM6CisJCQkJcmV0dXJuIGdldEludGVuc2l0aWVzKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQFN1cHByZXNzV2FybmluZ3MoInVuY2hlY2tlZCIpCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fSEVBREVSOgorCQkJCXNldEhlYWRlcigoSGVhZGVyKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxBU0VSX1NDQU5fX0FOR0xFX01JTjoKKwkJCQlzZXRBbmdsZV9taW4oKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MQVNFUl9TQ0FOX19BTkdMRV9NQVg6CisJCQkJc2V0QW5nbGVfbWF4KChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fQU5HTEVfSU5DUkVNRU5UOgorCQkJCXNldEFuZ2xlX2luY3JlbWVudCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxBU0VSX1NDQU5fX1RJTUVfSU5DUkVNRU5UOgorCQkJCXNldFRpbWVfaW5jcmVtZW50KChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fU0NBTl9USU1FOgorCQkJCXNldFNjYW5fdGltZSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxBU0VSX1NDQU5fX1JBTkdFX01JTjoKKwkJCQlzZXRSYW5nZV9taW4oKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MQVNFUl9TQ0FOX19SQU5HRV9NQVg6CisJCQkJc2V0UmFuZ2VfbWF4KChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fUkFOR0U6CisJCQkJZ2V0UmFuZ2UoKS5jbGVhcigpOworCQkJCWdldFJhbmdlKCkuYWRkQWxsKChDb2xsZWN0aW9uPD8gZXh0ZW5kcyBPYmplY3Q+KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxBU0VSX1NDQU5fX0lOVEVOU0lUSUVTOgorCQkJCWdldEludGVuc2l0aWVzKCkuY2xlYXIoKTsKKwkJCQlnZXRJbnRlbnNpdGllcygpLmFkZEFsbCgoQ29sbGVjdGlvbjw/IGV4dGVuZHMgT2JqZWN0PiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fSEVBREVSOgorCQkJCXNldEhlYWRlcigoSGVhZGVyKW51bGwpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fQU5HTEVfTUlOOgorCQkJCXNldEFuZ2xlX21pbihBTkdMRV9NSU5fRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fQU5HTEVfTUFYOgorCQkJCXNldEFuZ2xlX21heChBTkdMRV9NQVhfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fQU5HTEVfSU5DUkVNRU5UOgorCQkJCXNldEFuZ2xlX2luY3JlbWVudChBTkdMRV9JTkNSRU1FTlRfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fVElNRV9JTkNSRU1FTlQ6CisJCQkJc2V0VGltZV9pbmNyZW1lbnQoVElNRV9JTkNSRU1FTlRfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fU0NBTl9USU1FOgorCQkJCXNldFNjYW5fdGltZShTQ0FOX1RJTUVfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fUkFOR0VfTUlOOgorCQkJCXNldFJhbmdlX21pbihSQU5HRV9NSU5fRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fUkFOR0VfTUFYOgorCQkJCXNldFJhbmdlX21heChSQU5HRV9NQVhfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fUkFOR0U6CisJCQkJZ2V0UmFuZ2UoKS5jbGVhcigpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fSU5URU5TSVRJRVM6CisJCQkJZ2V0SW50ZW5zaXRpZXMoKS5jbGVhcigpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MQVNFUl9TQ0FOX19IRUFERVI6CisJCQkJcmV0dXJuIGhlYWRlciAhPSBudWxsOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MQVNFUl9TQ0FOX19BTkdMRV9NSU46CisJCQkJcmV0dXJuIEFOR0xFX01JTl9FREVGQVVMVCA9PSBudWxsID8gYW5nbGVfbWluICE9IG51bGwgOiAhQU5HTEVfTUlOX0VERUZBVUxULmVxdWFscyhhbmdsZV9taW4pOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MQVNFUl9TQ0FOX19BTkdMRV9NQVg6CisJCQkJcmV0dXJuIEFOR0xFX01BWF9FREVGQVVMVCA9PSBudWxsID8gYW5nbGVfbWF4ICE9IG51bGwgOiAhQU5HTEVfTUFYX0VERUZBVUxULmVxdWFscyhhbmdsZV9tYXgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MQVNFUl9TQ0FOX19BTkdMRV9JTkNSRU1FTlQ6CisJCQkJcmV0dXJuIEFOR0xFX0lOQ1JFTUVOVF9FREVGQVVMVCA9PSBudWxsID8gYW5nbGVfaW5jcmVtZW50ICE9IG51bGwgOiAhQU5HTEVfSU5DUkVNRU5UX0VERUZBVUxULmVxdWFscyhhbmdsZV9pbmNyZW1lbnQpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MQVNFUl9TQ0FOX19USU1FX0lOQ1JFTUVOVDoKKwkJCQlyZXR1cm4gVElNRV9JTkNSRU1FTlRfRURFRkFVTFQgPT0gbnVsbCA/IHRpbWVfaW5jcmVtZW50ICE9IG51bGwgOiAhVElNRV9JTkNSRU1FTlRfRURFRkFVTFQuZXF1YWxzKHRpbWVfaW5jcmVtZW50KTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fU0NBTl9USU1FOgorCQkJCXJldHVybiBTQ0FOX1RJTUVfRURFRkFVTFQgPT0gbnVsbCA/IHNjYW5fdGltZSAhPSBudWxsIDogIVNDQU5fVElNRV9FREVGQVVMVC5lcXVhbHMoc2Nhbl90aW1lKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fUkFOR0VfTUlOOgorCQkJCXJldHVybiBSQU5HRV9NSU5fRURFRkFVTFQgPT0gbnVsbCA/IHJhbmdlX21pbiAhPSBudWxsIDogIVJBTkdFX01JTl9FREVGQVVMVC5lcXVhbHMocmFuZ2VfbWluKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fUkFOR0VfTUFYOgorCQkJCXJldHVybiBSQU5HRV9NQVhfRURFRkFVTFQgPT0gbnVsbCA/IHJhbmdlX21heCAhPSBudWxsIDogIVJBTkdFX01BWF9FREVGQVVMVC5lcXVhbHMocmFuZ2VfbWF4KTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fUkFOR0U6CisJCQkJcmV0dXJuIHJhbmdlICE9IG51bGwgJiYgIXJhbmdlLmlzRW1wdHkoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTEFTRVJfU0NBTl9fSU5URU5TSVRJRVM6CisJCQkJcmV0dXJuIGludGVuc2l0aWVzICE9IG51bGwgJiYgIWludGVuc2l0aWVzLmlzRW1wdHkoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJaWYgKGVJc1Byb3h5KCkpIHJldHVybiBzdXBlci50b1N0cmluZygpOworCisJCVN0cmluZ0J1ZmZlciByZXN1bHQgPSBuZXcgU3RyaW5nQnVmZmVyKHN1cGVyLnRvU3RyaW5nKCkpOworCQlyZXN1bHQuYXBwZW5kKCIgKGFuZ2xlX21pbjogIik7CisJCXJlc3VsdC5hcHBlbmQoYW5nbGVfbWluKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBhbmdsZV9tYXg6ICIpOworCQlyZXN1bHQuYXBwZW5kKGFuZ2xlX21heCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgYW5nbGVfaW5jcmVtZW50OiAiKTsKKwkJcmVzdWx0LmFwcGVuZChhbmdsZV9pbmNyZW1lbnQpOworCQlyZXN1bHQuYXBwZW5kKCIsIHRpbWVfaW5jcmVtZW50OiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh0aW1lX2luY3JlbWVudCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgc2Nhbl90aW1lOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChzY2FuX3RpbWUpOworCQlyZXN1bHQuYXBwZW5kKCIsIHJhbmdlX21pbjogIik7CisJCXJlc3VsdC5hcHBlbmQocmFuZ2VfbWluKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCByYW5nZV9tYXg6ICIpOworCQlyZXN1bHQuYXBwZW5kKHJhbmdlX21heCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgcmFuZ2U6ICIpOworCQlyZXN1bHQuYXBwZW5kKHJhbmdlKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBpbnRlbnNpdGllczogIik7CisJCXJlc3VsdC5hcHBlbmQoaW50ZW5zaXRpZXMpOworCQlyZXN1bHQuYXBwZW5kKCcpJyk7CisJCXJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKKwl9CisKK30gLy8gTGFzZXJTY2FuSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL05hdlNhdEZpeEltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9OYXZTYXRGaXhJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzk3ZDRiZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9OYXZTYXRGaXhJbXBsLmphdmEKQEAgLTAsMCArMSw1NTUgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb25DaGFpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5FRGF0YVR5cGVVbmlxdWVFTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DT1ZBUklBTkNFX1RZUEU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0Rml4OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNFUlZJQ0VfVFlQRTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TVEFUVVNfVFlQRTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5IZWFkZXI7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5OYXYgU2F0IEZpeDwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5OYXZTYXRGaXhJbXBsI2dldFN0YXR1cyA8ZW0+U3RhdHVzPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLk5hdlNhdEZpeEltcGwjZ2V0U2VydmljZSA8ZW0+U2VydmljZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5OYXZTYXRGaXhJbXBsI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLk5hdlNhdEZpeEltcGwjZ2V0TGF0aXR1ZGUgPGVtPkxhdGl0dWRlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLk5hdlNhdEZpeEltcGwjZ2V0TG9uZ2l0dWRlIDxlbT5Mb25naXR1ZGU8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuTmF2U2F0Rml4SW1wbCNnZXRBbHRpdHVkZSA8ZW0+QWx0aXR1ZGU8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuTmF2U2F0Rml4SW1wbCNnZXRQb3NpdGlvbl9jb3ZhcmlhbmNlIDxlbT5Qb3NpdGlvbiBjb3ZhcmlhbmNlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLk5hdlNhdEZpeEltcGwjZ2V0UG9zaXRpb25fY292YXJpYW5jZV90eXBlIDxlbT5Qb3NpdGlvbiBjb3ZhcmlhbmNlIHR5cGU8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBOYXZTYXRGaXhJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIE5hdlNhdEZpeCB7CisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFN0YXR1cygpIDxlbT5TdGF0dXM8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFN0YXR1cygpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBTVEFUVVNfVFlQRSBTVEFUVVNfRURFRkFVTFQgPSBTVEFUVVNfVFlQRS5TVEFUVVNfTk9fRklYOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0U3RhdHVzKCkgPGVtPlN0YXR1czwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0U3RhdHVzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgU1RBVFVTX1RZUEUgc3RhdHVzID0gU1RBVFVTX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFNlcnZpY2UoKSA8ZW0+U2VydmljZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0U2VydmljZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBTRVJWSUNFX1RZUEUgU0VSVklDRV9FREVGQVVMVCA9IFNFUlZJQ0VfVFlQRS5TRVJWSUNFX0dQUzsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFNlcnZpY2UoKSA8ZW0+U2VydmljZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0U2VydmljZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIFNFUlZJQ0VfVFlQRSBzZXJ2aWNlID0gU0VSVklDRV9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEhlYWRlcigpIDxlbT5IZWFkZXI8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEhlYWRlcigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEhlYWRlciBoZWFkZXI7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TGF0aXR1ZGUoKSA8ZW0+TGF0aXR1ZGU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExhdGl0dWRlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBMQVRJVFVERV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRMYXRpdHVkZSgpIDxlbT5MYXRpdHVkZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0TGF0aXR1ZGUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgbGF0aXR1ZGUgPSBMQVRJVFVERV9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRMb25naXR1ZGUoKSA8ZW0+TG9uZ2l0dWRlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRMb25naXR1ZGUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IExPTkdJVFVERV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRMb25naXR1ZGUoKSA8ZW0+TG9uZ2l0dWRlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRMb25naXR1ZGUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgbG9uZ2l0dWRlID0gTE9OR0lUVURFX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEFsdGl0dWRlKCkgPGVtPkFsdGl0dWRlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRBbHRpdHVkZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgQUxUSVRVREVfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0QWx0aXR1ZGUoKSA8ZW0+QWx0aXR1ZGU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEFsdGl0dWRlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IGFsdGl0dWRlID0gQUxUSVRVREVfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRQb3NpdGlvbl9jb3ZhcmlhbmNlKCkgPGVtPlBvc2l0aW9uIGNvdmFyaWFuY2U8L2VtPn0nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UG9zaXRpb25fY292YXJpYW5jZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEVMaXN0PE9iamVjdD4gcG9zaXRpb25fY292YXJpYW5jZTsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRQb3NpdGlvbl9jb3ZhcmlhbmNlX3R5cGUoKSA8ZW0+UG9zaXRpb24gY292YXJpYW5jZSB0eXBlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRQb3NpdGlvbl9jb3ZhcmlhbmNlX3R5cGUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgQ09WQVJJQU5DRV9UWVBFIFBPU0lUSU9OX0NPVkFSSUFOQ0VfVFlQRV9FREVGQVVMVCA9IENPVkFSSUFOQ0VfVFlQRS5DT1ZBUklBTkNFX1RZUEVfVU5LTk9XTjsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFBvc2l0aW9uX2NvdmFyaWFuY2VfdHlwZSgpIDxlbT5Qb3NpdGlvbiBjb3ZhcmlhbmNlIHR5cGU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFBvc2l0aW9uX2NvdmFyaWFuY2VfdHlwZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIENPVkFSSUFOQ0VfVFlQRSBwb3NpdGlvbl9jb3ZhcmlhbmNlX3R5cGUgPSBQT1NJVElPTl9DT1ZBUklBTkNFX1RZUEVfRURFRkFVTFQ7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgTmF2U2F0Rml4SW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLk5BVl9TQVRfRklYOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTVEFUVVNfVFlQRSBnZXRTdGF0dXMoKSB7CisJCXJldHVybiBzdGF0dXM7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0U3RhdHVzKFNUQVRVU19UWVBFIG5ld1N0YXR1cykgeworCQlTVEFUVVNfVFlQRSBvbGRTdGF0dXMgPSBzdGF0dXM7CisJCXN0YXR1cyA9IG5ld1N0YXR1cyA9PSBudWxsID8gU1RBVFVTX0VERUZBVUxUIDogbmV3U3RhdHVzOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5OQVZfU0FUX0ZJWF9fU1RBVFVTLCBvbGRTdGF0dXMsIHN0YXR1cykpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTRVJWSUNFX1RZUEUgZ2V0U2VydmljZSgpIHsKKwkJcmV0dXJuIHNlcnZpY2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0U2VydmljZShTRVJWSUNFX1RZUEUgbmV3U2VydmljZSkgeworCQlTRVJWSUNFX1RZUEUgb2xkU2VydmljZSA9IHNlcnZpY2U7CisJCXNlcnZpY2UgPSBuZXdTZXJ2aWNlID09IG51bGwgPyBTRVJWSUNFX0VERUZBVUxUIDogbmV3U2VydmljZTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9GSVhfX1NFUlZJQ0UsIG9sZFNlcnZpY2UsIHNlcnZpY2UpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgSGVhZGVyIGdldEhlYWRlcigpIHsKKwkJcmV0dXJuIGhlYWRlcjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRIZWFkZXIoSGVhZGVyIG5ld0hlYWRlciwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlIZWFkZXIgb2xkSGVhZGVyID0gaGVhZGVyOworCQloZWFkZXIgPSBuZXdIZWFkZXI7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLk5BVl9TQVRfRklYX19IRUFERVIsIG9sZEhlYWRlciwgbmV3SGVhZGVyKTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRIZWFkZXIoSGVhZGVyIG5ld0hlYWRlcikgeworCQlpZiAobmV3SGVhZGVyICE9IGhlYWRlcikgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAoaGVhZGVyICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KWhlYWRlcikuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLk5BVl9TQVRfRklYX19IRUFERVIsIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld0hlYWRlciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdIZWFkZXIpLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5OQVZfU0FUX0ZJWF9fSEVBREVSLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldEhlYWRlcihuZXdIZWFkZXIsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9GSVhfX0hFQURFUiwgbmV3SGVhZGVyLCBuZXdIZWFkZXIpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldExhdGl0dWRlKCkgeworCQlyZXR1cm4gbGF0aXR1ZGU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0TGF0aXR1ZGUoT2JqZWN0IG5ld0xhdGl0dWRlKSB7CisJCU9iamVjdCBvbGRMYXRpdHVkZSA9IGxhdGl0dWRlOworCQlsYXRpdHVkZSA9IG5ld0xhdGl0dWRlOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5OQVZfU0FUX0ZJWF9fTEFUSVRVREUsIG9sZExhdGl0dWRlLCBsYXRpdHVkZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0TG9uZ2l0dWRlKCkgeworCQlyZXR1cm4gbG9uZ2l0dWRlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldExvbmdpdHVkZShPYmplY3QgbmV3TG9uZ2l0dWRlKSB7CisJCU9iamVjdCBvbGRMb25naXR1ZGUgPSBsb25naXR1ZGU7CisJCWxvbmdpdHVkZSA9IG5ld0xvbmdpdHVkZTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9GSVhfX0xPTkdJVFVERSwgb2xkTG9uZ2l0dWRlLCBsb25naXR1ZGUpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldEFsdGl0dWRlKCkgeworCQlyZXR1cm4gYWx0aXR1ZGU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0QWx0aXR1ZGUoT2JqZWN0IG5ld0FsdGl0dWRlKSB7CisJCU9iamVjdCBvbGRBbHRpdHVkZSA9IGFsdGl0dWRlOworCQlhbHRpdHVkZSA9IG5ld0FsdGl0dWRlOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5OQVZfU0FUX0ZJWF9fQUxUSVRVREUsIG9sZEFsdGl0dWRlLCBhbHRpdHVkZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFTGlzdDxPYmplY3Q+IGdldFBvc2l0aW9uX2NvdmFyaWFuY2UoKSB7CisJCWlmIChwb3NpdGlvbl9jb3ZhcmlhbmNlID09IG51bGwpIHsKKwkJCXBvc2l0aW9uX2NvdmFyaWFuY2UgPSBuZXcgRURhdGFUeXBlVW5pcXVlRUxpc3Q8T2JqZWN0PihPYmplY3QuY2xhc3MsIHRoaXMsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLk5BVl9TQVRfRklYX19QT1NJVElPTl9DT1ZBUklBTkNFKTsKKwkJfQorCQlyZXR1cm4gcG9zaXRpb25fY292YXJpYW5jZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQ09WQVJJQU5DRV9UWVBFIGdldFBvc2l0aW9uX2NvdmFyaWFuY2VfdHlwZSgpIHsKKwkJcmV0dXJuIHBvc2l0aW9uX2NvdmFyaWFuY2VfdHlwZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRQb3NpdGlvbl9jb3ZhcmlhbmNlX3R5cGUoQ09WQVJJQU5DRV9UWVBFIG5ld1Bvc2l0aW9uX2NvdmFyaWFuY2VfdHlwZSkgeworCQlDT1ZBUklBTkNFX1RZUEUgb2xkUG9zaXRpb25fY292YXJpYW5jZV90eXBlID0gcG9zaXRpb25fY292YXJpYW5jZV90eXBlOworCQlwb3NpdGlvbl9jb3ZhcmlhbmNlX3R5cGUgPSBuZXdQb3NpdGlvbl9jb3ZhcmlhbmNlX3R5cGUgPT0gbnVsbCA/IFBPU0lUSU9OX0NPVkFSSUFOQ0VfVFlQRV9FREVGQVVMVCA6IG5ld1Bvc2l0aW9uX2NvdmFyaWFuY2VfdHlwZTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9GSVhfX1BPU0lUSU9OX0NPVkFSSUFOQ0VfVFlQRSwgb2xkUG9zaXRpb25fY292YXJpYW5jZV90eXBlLCBwb3NpdGlvbl9jb3ZhcmlhbmNlX3R5cGUpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gZUludmVyc2VSZW1vdmUoSW50ZXJuYWxFT2JqZWN0IG90aGVyRW5kLCBpbnQgZmVhdHVyZUlELCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLk5BVl9TQVRfRklYX19IRUFERVI6CisJCQkJcmV0dXJuIGJhc2ljU2V0SGVhZGVyKG51bGwsIG1zZ3MpOworCQl9CisJCXJldHVybiBzdXBlci5lSW52ZXJzZVJlbW92ZShvdGhlckVuZCwgZmVhdHVyZUlELCBtc2dzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLk5BVl9TQVRfRklYX19TVEFUVVM6CisJCQkJcmV0dXJuIGdldFN0YXR1cygpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5OQVZfU0FUX0ZJWF9fU0VSVklDRToKKwkJCQlyZXR1cm4gZ2V0U2VydmljZSgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5OQVZfU0FUX0ZJWF9fSEVBREVSOgorCQkJCXJldHVybiBnZXRIZWFkZXIoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9GSVhfX0xBVElUVURFOgorCQkJCXJldHVybiBnZXRMYXRpdHVkZSgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5OQVZfU0FUX0ZJWF9fTE9OR0lUVURFOgorCQkJCXJldHVybiBnZXRMb25naXR1ZGUoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9GSVhfX0FMVElUVURFOgorCQkJCXJldHVybiBnZXRBbHRpdHVkZSgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5OQVZfU0FUX0ZJWF9fUE9TSVRJT05fQ09WQVJJQU5DRToKKwkJCQlyZXR1cm4gZ2V0UG9zaXRpb25fY292YXJpYW5jZSgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5OQVZfU0FUX0ZJWF9fUE9TSVRJT05fQ09WQVJJQU5DRV9UWVBFOgorCQkJCXJldHVybiBnZXRQb3NpdGlvbl9jb3ZhcmlhbmNlX3R5cGUoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAU3VwcHJlc3NXYXJuaW5ncygidW5jaGVja2VkIikKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5OQVZfU0FUX0ZJWF9fU1RBVFVTOgorCQkJCXNldFN0YXR1cygoU1RBVFVTX1RZUEUpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9GSVhfX1NFUlZJQ0U6CisJCQkJc2V0U2VydmljZSgoU0VSVklDRV9UWVBFKW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLk5BVl9TQVRfRklYX19IRUFERVI6CisJCQkJc2V0SGVhZGVyKChIZWFkZXIpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9GSVhfX0xBVElUVURFOgorCQkJCXNldExhdGl0dWRlKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9GSVhfX0xPTkdJVFVERToKKwkJCQlzZXRMb25naXR1ZGUoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5OQVZfU0FUX0ZJWF9fQUxUSVRVREU6CisJCQkJc2V0QWx0aXR1ZGUoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5OQVZfU0FUX0ZJWF9fUE9TSVRJT05fQ09WQVJJQU5DRToKKwkJCQlnZXRQb3NpdGlvbl9jb3ZhcmlhbmNlKCkuY2xlYXIoKTsKKwkJCQlnZXRQb3NpdGlvbl9jb3ZhcmlhbmNlKCkuYWRkQWxsKChDb2xsZWN0aW9uPD8gZXh0ZW5kcyBPYmplY3Q+KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLk5BVl9TQVRfRklYX19QT1NJVElPTl9DT1ZBUklBTkNFX1RZUEU6CisJCQkJc2V0UG9zaXRpb25fY292YXJpYW5jZV90eXBlKChDT1ZBUklBTkNFX1RZUEUpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLk5BVl9TQVRfRklYX19TVEFUVVM6CisJCQkJc2V0U3RhdHVzKFNUQVRVU19FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5OQVZfU0FUX0ZJWF9fU0VSVklDRToKKwkJCQlzZXRTZXJ2aWNlKFNFUlZJQ0VfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9GSVhfX0hFQURFUjoKKwkJCQlzZXRIZWFkZXIoKEhlYWRlciludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLk5BVl9TQVRfRklYX19MQVRJVFVERToKKwkJCQlzZXRMYXRpdHVkZShMQVRJVFVERV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5OQVZfU0FUX0ZJWF9fTE9OR0lUVURFOgorCQkJCXNldExvbmdpdHVkZShMT05HSVRVREVfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9GSVhfX0FMVElUVURFOgorCQkJCXNldEFsdGl0dWRlKEFMVElUVURFX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLk5BVl9TQVRfRklYX19QT1NJVElPTl9DT1ZBUklBTkNFOgorCQkJCWdldFBvc2l0aW9uX2NvdmFyaWFuY2UoKS5jbGVhcigpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9GSVhfX1BPU0lUSU9OX0NPVkFSSUFOQ0VfVFlQRToKKwkJCQlzZXRQb3NpdGlvbl9jb3ZhcmlhbmNlX3R5cGUoUE9TSVRJT05fQ09WQVJJQU5DRV9UWVBFX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9GSVhfX1NUQVRVUzoKKwkJCQlyZXR1cm4gc3RhdHVzICE9IFNUQVRVU19FREVGQVVMVDsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9GSVhfX1NFUlZJQ0U6CisJCQkJcmV0dXJuIHNlcnZpY2UgIT0gU0VSVklDRV9FREVGQVVMVDsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9GSVhfX0hFQURFUjoKKwkJCQlyZXR1cm4gaGVhZGVyICE9IG51bGw7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLk5BVl9TQVRfRklYX19MQVRJVFVERToKKwkJCQlyZXR1cm4gTEFUSVRVREVfRURFRkFVTFQgPT0gbnVsbCA/IGxhdGl0dWRlICE9IG51bGwgOiAhTEFUSVRVREVfRURFRkFVTFQuZXF1YWxzKGxhdGl0dWRlKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9GSVhfX0xPTkdJVFVERToKKwkJCQlyZXR1cm4gTE9OR0lUVURFX0VERUZBVUxUID09IG51bGwgPyBsb25naXR1ZGUgIT0gbnVsbCA6ICFMT05HSVRVREVfRURFRkFVTFQuZXF1YWxzKGxvbmdpdHVkZSk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLk5BVl9TQVRfRklYX19BTFRJVFVERToKKwkJCQlyZXR1cm4gQUxUSVRVREVfRURFRkFVTFQgPT0gbnVsbCA/IGFsdGl0dWRlICE9IG51bGwgOiAhQUxUSVRVREVfRURFRkFVTFQuZXF1YWxzKGFsdGl0dWRlKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9GSVhfX1BPU0lUSU9OX0NPVkFSSUFOQ0U6CisJCQkJcmV0dXJuIHBvc2l0aW9uX2NvdmFyaWFuY2UgIT0gbnVsbCAmJiAhcG9zaXRpb25fY292YXJpYW5jZS5pc0VtcHR5KCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLk5BVl9TQVRfRklYX19QT1NJVElPTl9DT1ZBUklBTkNFX1RZUEU6CisJCQkJcmV0dXJuIHBvc2l0aW9uX2NvdmFyaWFuY2VfdHlwZSAhPSBQT1NJVElPTl9DT1ZBUklBTkNFX1RZUEVfRURFRkFVTFQ7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CisJCWlmIChlSXNQcm94eSgpKSByZXR1cm4gc3VwZXIudG9TdHJpbmcoKTsKKworCQlTdHJpbmdCdWZmZXIgcmVzdWx0ID0gbmV3IFN0cmluZ0J1ZmZlcihzdXBlci50b1N0cmluZygpKTsKKwkJcmVzdWx0LmFwcGVuZCgiIChzdGF0dXM6ICIpOworCQlyZXN1bHQuYXBwZW5kKHN0YXR1cyk7CisJCXJlc3VsdC5hcHBlbmQoIiwgc2VydmljZTogIik7CisJCXJlc3VsdC5hcHBlbmQoc2VydmljZSk7CisJCXJlc3VsdC5hcHBlbmQoIiwgbGF0aXR1ZGU6ICIpOworCQlyZXN1bHQuYXBwZW5kKGxhdGl0dWRlKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBsb25naXR1ZGU6ICIpOworCQlyZXN1bHQuYXBwZW5kKGxvbmdpdHVkZSk7CisJCXJlc3VsdC5hcHBlbmQoIiwgYWx0aXR1ZGU6ICIpOworCQlyZXN1bHQuYXBwZW5kKGFsdGl0dWRlKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBwb3NpdGlvbl9jb3ZhcmlhbmNlOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChwb3NpdGlvbl9jb3ZhcmlhbmNlKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBwb3NpdGlvbl9jb3ZhcmlhbmNlX3R5cGU6ICIpOworCQlyZXN1bHQuYXBwZW5kKHBvc2l0aW9uX2NvdmFyaWFuY2VfdHlwZSk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBOYXZTYXRGaXhJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvTmF2U2F0U3RhdHVzSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL05hdlNhdFN0YXR1c0ltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNDI1YTM0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL05hdlNhdFN0YXR1c0ltcGwuamF2YQpAQCAtMCwwICsxLDUwNCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRTdGF0dXM7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc0ZhY3Rvcnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5OYXYgU2F0IFN0YXR1czwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5OYXZTYXRTdGF0dXNJbXBsI2dldFNUQVRVU19OT19GSVggPGVtPlNUQVRVUyBOTyBGSVg8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuTmF2U2F0U3RhdHVzSW1wbCNnZXRTVEFUVVNfRklYIDxlbT5TVEFUVVMgRklYPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLk5hdlNhdFN0YXR1c0ltcGwjZ2V0U1RBVFVTX1NCQVNfRklYIDxlbT5TVEFUVVMgU0JBUyBGSVg8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuTmF2U2F0U3RhdHVzSW1wbCNnZXRTVEFUVVNfR0JBU19GSVggPGVtPlNUQVRVUyBHQkFTIEZJWDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5OYXZTYXRTdGF0dXNJbXBsI2dldFN0YXR1cyA8ZW0+U3RhdHVzPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLk5hdlNhdFN0YXR1c0ltcGwjZ2V0U0VSVklDRV9HUFMgPGVtPlNFUlZJQ0UgR1BTPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLk5hdlNhdFN0YXR1c0ltcGwjZ2V0U0VSVklDRV9HTE9OQVNTIDxlbT5TRVJWSUNFIEdMT05BU1M8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuTmF2U2F0U3RhdHVzSW1wbCNnZXRTRVJWSUNFX0NPTVBBU1MgPGVtPlNFUlZJQ0UgQ09NUEFTUzwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5OYXZTYXRTdGF0dXNJbXBsI2dldFNFUlZJQ0VfR0FMSUxFTyA8ZW0+U0VSVklDRSBHQUxJTEVPPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLk5hdlNhdFN0YXR1c0ltcGwjZ2V0U2VydmljZSA8ZW0+U2VydmljZTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIE5hdlNhdFN0YXR1c0ltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgTmF2U2F0U3RhdHVzIHsKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0U1RBVFVTX05PX0ZJWCgpIDxlbT5TVEFUVVMgTk8gRklYPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRTVEFUVVNfTk9fRklYKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBTVEFUVVNfTk9fRklYX0VERUZBVUxUID0gKE9iamVjdClTdGRfZGF0YXR5cGVzRmFjdG9yeS5lSU5TVEFOQ0UuY3JlYXRlRnJvbVN0cmluZyhTdGRfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UuZ2V0SW50OCgpLCAiLTEiKTsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFNUQVRVU19OT19GSVgoKSA8ZW0+U1RBVFVTIE5PIEZJWDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0U1RBVFVTX05PX0ZJWCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBzdGF0dVNfTk9fRklYID0gU1RBVFVTX05PX0ZJWF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTVEFUVVNfRklYKCkgPGVtPlNUQVRVUyBGSVg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFNUQVRVU19GSVgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFNUQVRVU19GSVhfRURFRkFVTFQgPSAoT2JqZWN0KVN0ZF9kYXRhdHlwZXNGYWN0b3J5LmVJTlNUQU5DRS5jcmVhdGVGcm9tU3RyaW5nKFN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRS5nZXRJbnQ4KCksICIwIik7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTVEFUVVNfRklYKCkgPGVtPlNUQVRVUyBGSVg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFNUQVRVU19GSVgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3Qgc3RhdHVTX0ZJWCA9IFNUQVRVU19GSVhfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0U1RBVFVTX1NCQVNfRklYKCkgPGVtPlNUQVRVUyBTQkFTIEZJWDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0U1RBVFVTX1NCQVNfRklYKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBTVEFUVVNfU0JBU19GSVhfRURFRkFVTFQgPSAoT2JqZWN0KVN0ZF9kYXRhdHlwZXNGYWN0b3J5LmVJTlNUQU5DRS5jcmVhdGVGcm9tU3RyaW5nKFN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRS5nZXRJbnQ4KCksICIxIik7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTVEFUVVNfU0JBU19GSVgoKSA8ZW0+U1RBVFVTIFNCQVMgRklYPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRTVEFUVVNfU0JBU19GSVgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3Qgc3RhdHVTX1NCQVNfRklYID0gU1RBVFVTX1NCQVNfRklYX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFNUQVRVU19HQkFTX0ZJWCgpIDxlbT5TVEFUVVMgR0JBUyBGSVg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFNUQVRVU19HQkFTX0ZJWCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgU1RBVFVTX0dCQVNfRklYX0VERUZBVUxUID0gKE9iamVjdClTdGRfZGF0YXR5cGVzRmFjdG9yeS5lSU5TVEFOQ0UuY3JlYXRlRnJvbVN0cmluZyhTdGRfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UuZ2V0SW50OCgpLCAiMiIpOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0U1RBVFVTX0dCQVNfRklYKCkgPGVtPlNUQVRVUyBHQkFTIEZJWDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0U1RBVFVTX0dCQVNfRklYKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHN0YXR1U19HQkFTX0ZJWCA9IFNUQVRVU19HQkFTX0ZJWF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTdGF0dXMoKSA8ZW0+U3RhdHVzPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRTdGF0dXMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFNUQVRVU19FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTdGF0dXMoKSA8ZW0+U3RhdHVzPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRTdGF0dXMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3Qgc3RhdHVzID0gU1RBVFVTX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFNFUlZJQ0VfR1BTKCkgPGVtPlNFUlZJQ0UgR1BTPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRTRVJWSUNFX0dQUygpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgU0VSVklDRV9HUFNfRURFRkFVTFQgPSAoT2JqZWN0KVN0ZF9kYXRhdHlwZXNGYWN0b3J5LmVJTlNUQU5DRS5jcmVhdGVGcm9tU3RyaW5nKFN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRS5nZXRVSW50MTYoKSwgIjEiKTsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFNFUlZJQ0VfR1BTKCkgPGVtPlNFUlZJQ0UgR1BTPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRTRVJWSUNFX0dQUygpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBzZXJ2aWNFX0dQUyA9IFNFUlZJQ0VfR1BTX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFNFUlZJQ0VfR0xPTkFTUygpIDxlbT5TRVJWSUNFIEdMT05BU1M8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFNFUlZJQ0VfR0xPTkFTUygpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgU0VSVklDRV9HTE9OQVNTX0VERUZBVUxUID0gKE9iamVjdClTdGRfZGF0YXR5cGVzRmFjdG9yeS5lSU5TVEFOQ0UuY3JlYXRlRnJvbVN0cmluZyhTdGRfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UuZ2V0VUludDE2KCksICIyIik7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTRVJWSUNFX0dMT05BU1MoKSA8ZW0+U0VSVklDRSBHTE9OQVNTPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRTRVJWSUNFX0dMT05BU1MoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3Qgc2VydmljRV9HTE9OQVNTID0gU0VSVklDRV9HTE9OQVNTX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFNFUlZJQ0VfQ09NUEFTUygpIDxlbT5TRVJWSUNFIENPTVBBU1M8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFNFUlZJQ0VfQ09NUEFTUygpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgU0VSVklDRV9DT01QQVNTX0VERUZBVUxUID0gKE9iamVjdClTdGRfZGF0YXR5cGVzRmFjdG9yeS5lSU5TVEFOQ0UuY3JlYXRlRnJvbVN0cmluZyhTdGRfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UuZ2V0VUludDE2KCksICI0Iik7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTRVJWSUNFX0NPTVBBU1MoKSA8ZW0+U0VSVklDRSBDT01QQVNTPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRTRVJWSUNFX0NPTVBBU1MoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3Qgc2VydmljRV9DT01QQVNTID0gU0VSVklDRV9DT01QQVNTX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFNFUlZJQ0VfR0FMSUxFTygpIDxlbT5TRVJWSUNFIEdBTElMRU88L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFNFUlZJQ0VfR0FMSUxFTygpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgU0VSVklDRV9HQUxJTEVPX0VERUZBVUxUID0gKE9iamVjdClTdGRfZGF0YXR5cGVzRmFjdG9yeS5lSU5TVEFOQ0UuY3JlYXRlRnJvbVN0cmluZyhTdGRfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UuZ2V0VUludDE2KCksICI4Iik7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTRVJWSUNFX0dBTElMRU8oKSA8ZW0+U0VSVklDRSBHQUxJTEVPPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRTRVJWSUNFX0dBTElMRU8oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3Qgc2VydmljRV9HQUxJTEVPID0gU0VSVklDRV9HQUxJTEVPX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFNlcnZpY2UoKSA8ZW0+U2VydmljZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0U2VydmljZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgU0VSVklDRV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTZXJ2aWNlKCkgPGVtPlNlcnZpY2U8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFNlcnZpY2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3Qgc2VydmljZSA9IFNFUlZJQ0VfRURFRkFVTFQ7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgTmF2U2F0U3RhdHVzSW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLk5BVl9TQVRfU1RBVFVTOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0U1RBVFVTX05PX0ZJWCgpIHsKKwkJcmV0dXJuIHN0YXR1U19OT19GSVg7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRTVEFUVVNfRklYKCkgeworCQlyZXR1cm4gc3RhdHVTX0ZJWDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFNUQVRVU19TQkFTX0ZJWCgpIHsKKwkJcmV0dXJuIHN0YXR1U19TQkFTX0ZJWDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFNUQVRVU19HQkFTX0ZJWCgpIHsKKwkJcmV0dXJuIHN0YXR1U19HQkFTX0ZJWDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFN0YXR1cygpIHsKKwkJcmV0dXJuIHN0YXR1czsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRTdGF0dXMoT2JqZWN0IG5ld1N0YXR1cykgeworCQlPYmplY3Qgb2xkU3RhdHVzID0gc3RhdHVzOworCQlzdGF0dXMgPSBuZXdTdGF0dXM7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLk5BVl9TQVRfU1RBVFVTX19TVEFUVVMsIG9sZFN0YXR1cywgc3RhdHVzKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRTRVJWSUNFX0dQUygpIHsKKwkJcmV0dXJuIHNlcnZpY0VfR1BTOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0U0VSVklDRV9HTE9OQVNTKCkgeworCQlyZXR1cm4gc2VydmljRV9HTE9OQVNTOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0U0VSVklDRV9DT01QQVNTKCkgeworCQlyZXR1cm4gc2VydmljRV9DT01QQVNTOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0U0VSVklDRV9HQUxJTEVPKCkgeworCQlyZXR1cm4gc2VydmljRV9HQUxJTEVPOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0U2VydmljZSgpIHsKKwkJcmV0dXJuIHNlcnZpY2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0U2VydmljZShPYmplY3QgbmV3U2VydmljZSkgeworCQlPYmplY3Qgb2xkU2VydmljZSA9IHNlcnZpY2U7CisJCXNlcnZpY2UgPSBuZXdTZXJ2aWNlOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5OQVZfU0FUX1NUQVRVU19fU0VSVklDRSwgb2xkU2VydmljZSwgc2VydmljZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9TVEFUVVNfX1NUQVRVU19OT19GSVg6CisJCQkJcmV0dXJuIGdldFNUQVRVU19OT19GSVgoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9TVEFUVVNfX1NUQVRVU19GSVg6CisJCQkJcmV0dXJuIGdldFNUQVRVU19GSVgoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9TVEFUVVNfX1NUQVRVU19TQkFTX0ZJWDoKKwkJCQlyZXR1cm4gZ2V0U1RBVFVTX1NCQVNfRklYKCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLk5BVl9TQVRfU1RBVFVTX19TVEFUVVNfR0JBU19GSVg6CisJCQkJcmV0dXJuIGdldFNUQVRVU19HQkFTX0ZJWCgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5OQVZfU0FUX1NUQVRVU19fU1RBVFVTOgorCQkJCXJldHVybiBnZXRTdGF0dXMoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9TVEFUVVNfX1NFUlZJQ0VfR1BTOgorCQkJCXJldHVybiBnZXRTRVJWSUNFX0dQUygpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5OQVZfU0FUX1NUQVRVU19fU0VSVklDRV9HTE9OQVNTOgorCQkJCXJldHVybiBnZXRTRVJWSUNFX0dMT05BU1MoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9TVEFUVVNfX1NFUlZJQ0VfQ09NUEFTUzoKKwkJCQlyZXR1cm4gZ2V0U0VSVklDRV9DT01QQVNTKCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLk5BVl9TQVRfU1RBVFVTX19TRVJWSUNFX0dBTElMRU86CisJCQkJcmV0dXJuIGdldFNFUlZJQ0VfR0FMSUxFTygpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5OQVZfU0FUX1NUQVRVU19fU0VSVklDRToKKwkJCQlyZXR1cm4gZ2V0U2VydmljZSgpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLk5BVl9TQVRfU1RBVFVTX19TVEFUVVM6CisJCQkJc2V0U3RhdHVzKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9TVEFUVVNfX1NFUlZJQ0U6CisJCQkJc2V0U2VydmljZSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5OQVZfU0FUX1NUQVRVU19fU1RBVFVTOgorCQkJCXNldFN0YXR1cyhTVEFUVVNfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9TVEFUVVNfX1NFUlZJQ0U6CisJCQkJc2V0U2VydmljZShTRVJWSUNFX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9TVEFUVVNfX1NUQVRVU19OT19GSVg6CisJCQkJcmV0dXJuIFNUQVRVU19OT19GSVhfRURFRkFVTFQgPT0gbnVsbCA/IHN0YXR1U19OT19GSVggIT0gbnVsbCA6ICFTVEFUVVNfTk9fRklYX0VERUZBVUxULmVxdWFscyhzdGF0dVNfTk9fRklYKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9TVEFUVVNfX1NUQVRVU19GSVg6CisJCQkJcmV0dXJuIFNUQVRVU19GSVhfRURFRkFVTFQgPT0gbnVsbCA/IHN0YXR1U19GSVggIT0gbnVsbCA6ICFTVEFUVVNfRklYX0VERUZBVUxULmVxdWFscyhzdGF0dVNfRklYKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9TVEFUVVNfX1NUQVRVU19TQkFTX0ZJWDoKKwkJCQlyZXR1cm4gU1RBVFVTX1NCQVNfRklYX0VERUZBVUxUID09IG51bGwgPyBzdGF0dVNfU0JBU19GSVggIT0gbnVsbCA6ICFTVEFUVVNfU0JBU19GSVhfRURFRkFVTFQuZXF1YWxzKHN0YXR1U19TQkFTX0ZJWCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLk5BVl9TQVRfU1RBVFVTX19TVEFUVVNfR0JBU19GSVg6CisJCQkJcmV0dXJuIFNUQVRVU19HQkFTX0ZJWF9FREVGQVVMVCA9PSBudWxsID8gc3RhdHVTX0dCQVNfRklYICE9IG51bGwgOiAhU1RBVFVTX0dCQVNfRklYX0VERUZBVUxULmVxdWFscyhzdGF0dVNfR0JBU19GSVgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5OQVZfU0FUX1NUQVRVU19fU1RBVFVTOgorCQkJCXJldHVybiBTVEFUVVNfRURFRkFVTFQgPT0gbnVsbCA/IHN0YXR1cyAhPSBudWxsIDogIVNUQVRVU19FREVGQVVMVC5lcXVhbHMoc3RhdHVzKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9TVEFUVVNfX1NFUlZJQ0VfR1BTOgorCQkJCXJldHVybiBTRVJWSUNFX0dQU19FREVGQVVMVCA9PSBudWxsID8gc2VydmljRV9HUFMgIT0gbnVsbCA6ICFTRVJWSUNFX0dQU19FREVGQVVMVC5lcXVhbHMoc2VydmljRV9HUFMpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5OQVZfU0FUX1NUQVRVU19fU0VSVklDRV9HTE9OQVNTOgorCQkJCXJldHVybiBTRVJWSUNFX0dMT05BU1NfRURFRkFVTFQgPT0gbnVsbCA/IHNlcnZpY0VfR0xPTkFTUyAhPSBudWxsIDogIVNFUlZJQ0VfR0xPTkFTU19FREVGQVVMVC5lcXVhbHMoc2VydmljRV9HTE9OQVNTKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTkFWX1NBVF9TVEFUVVNfX1NFUlZJQ0VfQ09NUEFTUzoKKwkJCQlyZXR1cm4gU0VSVklDRV9DT01QQVNTX0VERUZBVUxUID09IG51bGwgPyBzZXJ2aWNFX0NPTVBBU1MgIT0gbnVsbCA6ICFTRVJWSUNFX0NPTVBBU1NfRURFRkFVTFQuZXF1YWxzKHNlcnZpY0VfQ09NUEFTUyk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLk5BVl9TQVRfU1RBVFVTX19TRVJWSUNFX0dBTElMRU86CisJCQkJcmV0dXJuIFNFUlZJQ0VfR0FMSUxFT19FREVGQVVMVCA9PSBudWxsID8gc2VydmljRV9HQUxJTEVPICE9IG51bGwgOiAhU0VSVklDRV9HQUxJTEVPX0VERUZBVUxULmVxdWFscyhzZXJ2aWNFX0dBTElMRU8pOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5OQVZfU0FUX1NUQVRVU19fU0VSVklDRToKKwkJCQlyZXR1cm4gU0VSVklDRV9FREVGQVVMVCA9PSBudWxsID8gc2VydmljZSAhPSBudWxsIDogIVNFUlZJQ0VfRURFRkFVTFQuZXF1YWxzKHNlcnZpY2UpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAoU1RBVFVTX05PX0ZJWDogIik7CisJCXJlc3VsdC5hcHBlbmQoc3RhdHVTX05PX0ZJWCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgU1RBVFVTX0ZJWDogIik7CisJCXJlc3VsdC5hcHBlbmQoc3RhdHVTX0ZJWCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgU1RBVFVTX1NCQVNfRklYOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChzdGF0dVNfU0JBU19GSVgpOworCQlyZXN1bHQuYXBwZW5kKCIsIFNUQVRVU19HQkFTX0ZJWDogIik7CisJCXJlc3VsdC5hcHBlbmQoc3RhdHVTX0dCQVNfRklYKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBzdGF0dXM6ICIpOworCQlyZXN1bHQuYXBwZW5kKHN0YXR1cyk7CisJCXJlc3VsdC5hcHBlbmQoIiwgU0VSVklDRV9HUFM6ICIpOworCQlyZXN1bHQuYXBwZW5kKHNlcnZpY0VfR1BTKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBTRVJWSUNFX0dMT05BU1M6ICIpOworCQlyZXN1bHQuYXBwZW5kKHNlcnZpY0VfR0xPTkFTUyk7CisJCXJlc3VsdC5hcHBlbmQoIiwgU0VSVklDRV9DT01QQVNTOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChzZXJ2aWNFX0NPTVBBU1MpOworCQlyZXN1bHQuYXBwZW5kKCIsIFNFUlZJQ0VfR0FMSUxFTzogIik7CisJCXJlc3VsdC5hcHBlbmQoc2VydmljRV9HQUxJTEVPKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBzZXJ2aWNlOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChzZXJ2aWNlKTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIE5hdlNhdFN0YXR1c0ltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9Qb2ludENsb3VkMkltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9Qb2ludENsb3VkMkltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lMDI5NDdkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1BvaW50Q2xvdWQySW1wbC5qYXZhCkBAIC0wLDAgKzEsNTkxIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb247CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uQ2hhaW47CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuRURhdGFUeXBlVW5pcXVlRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuRU9iamVjdENvbnRhaW5tZW50RUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuSW50ZXJuYWxFTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludENsb3VkMjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludEZpZWxkOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBvaW50IENsb3VkMjwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Qb2ludENsb3VkMkltcGwjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuUG9pbnRDbG91ZDJJbXBsI2dldEhlaWdodCA8ZW0+SGVpZ2h0PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlBvaW50Q2xvdWQySW1wbCNnZXRXaWR0aCA8ZW0+V2lkdGg8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuUG9pbnRDbG91ZDJJbXBsI2dldEZpZWxkcyA8ZW0+RmllbGRzPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlBvaW50Q2xvdWQySW1wbCNnZXRJc19iaWdlbmRpYW4gPGVtPklzIGJpZ2VuZGlhbjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Qb2ludENsb3VkMkltcGwjZ2V0UG9pbnRfc3RlcCA8ZW0+UG9pbnQgc3RlcDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Qb2ludENsb3VkMkltcGwjZ2V0Um93X3N0ZXAgPGVtPlJvdyBzdGVwPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlBvaW50Q2xvdWQySW1wbCNnZXREYXRhIDxlbT5EYXRhPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlBvaW50Q2xvdWQySW1wbCNnZXRJc19kZW5zZSA8ZW0+SXMgZGVuc2U8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBQb2ludENsb3VkMkltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgUG9pbnRDbG91ZDIgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEhlYWRlcigpIDxlbT5IZWFkZXI8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEhlYWRlcigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEhlYWRlciBoZWFkZXI7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0SGVpZ2h0KCkgPGVtPkhlaWdodDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SGVpZ2h0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBIRUlHSFRfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0SGVpZ2h0KCkgPGVtPkhlaWdodDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SGVpZ2h0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IGhlaWdodCA9IEhFSUdIVF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRXaWR0aCgpIDxlbT5XaWR0aDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0V2lkdGgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFdJRFRIX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFdpZHRoKCkgPGVtPldpZHRoPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRXaWR0aCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCB3aWR0aCA9IFdJRFRIX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0RmllbGRzKCkgPGVtPkZpZWxkczwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRGaWVsZHMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBFTGlzdDxQb2ludEZpZWxkPiBmaWVsZHM7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0SXNfYmlnZW5kaWFuKCkgPGVtPklzIGJpZ2VuZGlhbjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SXNfYmlnZW5kaWFuKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBJU19CSUdFTkRJQU5fRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0SXNfYmlnZW5kaWFuKCkgPGVtPklzIGJpZ2VuZGlhbjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SXNfYmlnZW5kaWFuKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IGlzX2JpZ2VuZGlhbiA9IElTX0JJR0VORElBTl9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRQb2ludF9zdGVwKCkgPGVtPlBvaW50IHN0ZXA8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFBvaW50X3N0ZXAoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFBPSU5UX1NURVBfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0UG9pbnRfc3RlcCgpIDxlbT5Qb2ludCBzdGVwPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRQb2ludF9zdGVwKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHBvaW50X3N0ZXAgPSBQT0lOVF9TVEVQX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFJvd19zdGVwKCkgPGVtPlJvdyBzdGVwPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRSb3dfc3RlcCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgUk9XX1NURVBfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0Um93X3N0ZXAoKSA8ZW0+Um93IHN0ZXA8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFJvd19zdGVwKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHJvd19zdGVwID0gUk9XX1NURVBfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXREYXRhKCkgPGVtPkRhdGE8L2VtPn0nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0RGF0YSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEVMaXN0PE9iamVjdD4gZGF0YTsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRJc19kZW5zZSgpIDxlbT5JcyBkZW5zZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0SXNfZGVuc2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IElTX0RFTlNFX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldElzX2RlbnNlKCkgPGVtPklzIGRlbnNlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRJc19kZW5zZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBpc19kZW5zZSA9IElTX0RFTlNFX0VERUZBVUxUOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFBvaW50Q2xvdWQySW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLlBPSU5UX0NMT1VEMjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgSGVhZGVyIGdldEhlYWRlcigpIHsKKwkJcmV0dXJuIGhlYWRlcjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRIZWFkZXIoSGVhZGVyIG5ld0hlYWRlciwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlIZWFkZXIgb2xkSGVhZGVyID0gaGVhZGVyOworCQloZWFkZXIgPSBuZXdIZWFkZXI7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0NMT1VEMl9fSEVBREVSLCBvbGRIZWFkZXIsIG5ld0hlYWRlcik7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0SGVhZGVyKEhlYWRlciBuZXdIZWFkZXIpIHsKKwkJaWYgKG5ld0hlYWRlciAhPSBoZWFkZXIpIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKGhlYWRlciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCloZWFkZXIpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRDJfX0hFQURFUiwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3SGVhZGVyICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld0hlYWRlcikuZUludmVyc2VBZGQodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0NMT1VEMl9fSEVBREVSLCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldEhlYWRlcihuZXdIZWFkZXIsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVUQyX19IRUFERVIsIG5ld0hlYWRlciwgbmV3SGVhZGVyKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRIZWlnaHQoKSB7CisJCXJldHVybiBoZWlnaHQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0SGVpZ2h0KE9iamVjdCBuZXdIZWlnaHQpIHsKKwkJT2JqZWN0IG9sZEhlaWdodCA9IGhlaWdodDsKKwkJaGVpZ2h0ID0gbmV3SGVpZ2h0OworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRDJfX0hFSUdIVCwgb2xkSGVpZ2h0LCBoZWlnaHQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFdpZHRoKCkgeworCQlyZXR1cm4gd2lkdGg7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0V2lkdGgoT2JqZWN0IG5ld1dpZHRoKSB7CisJCU9iamVjdCBvbGRXaWR0aCA9IHdpZHRoOworCQl3aWR0aCA9IG5ld1dpZHRoOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRDJfX1dJRFRILCBvbGRXaWR0aCwgd2lkdGgpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUxpc3Q8UG9pbnRGaWVsZD4gZ2V0RmllbGRzKCkgeworCQlpZiAoZmllbGRzID09IG51bGwpIHsKKwkJCWZpZWxkcyA9IG5ldyBFT2JqZWN0Q29udGFpbm1lbnRFTGlzdDxQb2ludEZpZWxkPihQb2ludEZpZWxkLmNsYXNzLCB0aGlzLCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRDJfX0ZJRUxEUyk7CisJCX0KKwkJcmV0dXJuIGZpZWxkczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldElzX2JpZ2VuZGlhbigpIHsKKwkJcmV0dXJuIGlzX2JpZ2VuZGlhbjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRJc19iaWdlbmRpYW4oT2JqZWN0IG5ld0lzX2JpZ2VuZGlhbikgeworCQlPYmplY3Qgb2xkSXNfYmlnZW5kaWFuID0gaXNfYmlnZW5kaWFuOworCQlpc19iaWdlbmRpYW4gPSBuZXdJc19iaWdlbmRpYW47CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0NMT1VEMl9fSVNfQklHRU5ESUFOLCBvbGRJc19iaWdlbmRpYW4sIGlzX2JpZ2VuZGlhbikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0UG9pbnRfc3RlcCgpIHsKKwkJcmV0dXJuIHBvaW50X3N0ZXA7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0UG9pbnRfc3RlcChPYmplY3QgbmV3UG9pbnRfc3RlcCkgeworCQlPYmplY3Qgb2xkUG9pbnRfc3RlcCA9IHBvaW50X3N0ZXA7CisJCXBvaW50X3N0ZXAgPSBuZXdQb2ludF9zdGVwOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRDJfX1BPSU5UX1NURVAsIG9sZFBvaW50X3N0ZXAsIHBvaW50X3N0ZXApKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFJvd19zdGVwKCkgeworCQlyZXR1cm4gcm93X3N0ZXA7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0Um93X3N0ZXAoT2JqZWN0IG5ld1Jvd19zdGVwKSB7CisJCU9iamVjdCBvbGRSb3dfc3RlcCA9IHJvd19zdGVwOworCQlyb3dfc3RlcCA9IG5ld1Jvd19zdGVwOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRDJfX1JPV19TVEVQLCBvbGRSb3dfc3RlcCwgcm93X3N0ZXApKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUxpc3Q8T2JqZWN0PiBnZXREYXRhKCkgeworCQlpZiAoZGF0YSA9PSBudWxsKSB7CisJCQlkYXRhID0gbmV3IEVEYXRhVHlwZVVuaXF1ZUVMaXN0PE9iamVjdD4oT2JqZWN0LmNsYXNzLCB0aGlzLCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRDJfX0RBVEEpOworCQl9CisJCXJldHVybiBkYXRhOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0SXNfZGVuc2UoKSB7CisJCXJldHVybiBpc19kZW5zZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRJc19kZW5zZShPYmplY3QgbmV3SXNfZGVuc2UpIHsKKwkJT2JqZWN0IG9sZElzX2RlbnNlID0gaXNfZGVuc2U7CisJCWlzX2RlbnNlID0gbmV3SXNfZGVuc2U7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0NMT1VEMl9fSVNfREVOU0UsIG9sZElzX2RlbnNlLCBpc19kZW5zZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBlSW52ZXJzZVJlbW92ZShJbnRlcm5hbEVPYmplY3Qgb3RoZXJFbmQsIGludCBmZWF0dXJlSUQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVUQyX19IRUFERVI6CisJCQkJcmV0dXJuIGJhc2ljU2V0SGVhZGVyKG51bGwsIG1zZ3MpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRDJfX0ZJRUxEUzoKKwkJCQlyZXR1cm4gKChJbnRlcm5hbEVMaXN0PD8+KWdldEZpZWxkcygpKS5iYXNpY1JlbW92ZShvdGhlckVuZCwgbXNncyk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJbnZlcnNlUmVtb3ZlKG90aGVyRW5kLCBmZWF0dXJlSUQsIG1zZ3MpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVUQyX19IRUFERVI6CisJCQkJcmV0dXJuIGdldEhlYWRlcigpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRDJfX0hFSUdIVDoKKwkJCQlyZXR1cm4gZ2V0SGVpZ2h0KCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0NMT1VEMl9fV0lEVEg6CisJCQkJcmV0dXJuIGdldFdpZHRoKCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0NMT1VEMl9fRklFTERTOgorCQkJCXJldHVybiBnZXRGaWVsZHMoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVUQyX19JU19CSUdFTkRJQU46CisJCQkJcmV0dXJuIGdldElzX2JpZ2VuZGlhbigpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRDJfX1BPSU5UX1NURVA6CisJCQkJcmV0dXJuIGdldFBvaW50X3N0ZXAoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVUQyX19ST1dfU1RFUDoKKwkJCQlyZXR1cm4gZ2V0Um93X3N0ZXAoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVUQyX19EQVRBOgorCQkJCXJldHVybiBnZXREYXRhKCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0NMT1VEMl9fSVNfREVOU0U6CisJCQkJcmV0dXJuIGdldElzX2RlbnNlKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQFN1cHByZXNzV2FybmluZ3MoInVuY2hlY2tlZCIpCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVUQyX19IRUFERVI6CisJCQkJc2V0SGVhZGVyKChIZWFkZXIpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVUQyX19IRUlHSFQ6CisJCQkJc2V0SGVpZ2h0KChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVUQyX19XSURUSDoKKwkJCQlzZXRXaWR0aCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0NMT1VEMl9fRklFTERTOgorCQkJCWdldEZpZWxkcygpLmNsZWFyKCk7CisJCQkJZ2V0RmllbGRzKCkuYWRkQWxsKChDb2xsZWN0aW9uPD8gZXh0ZW5kcyBQb2ludEZpZWxkPiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRDJfX0lTX0JJR0VORElBTjoKKwkJCQlzZXRJc19iaWdlbmRpYW4oKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRDJfX1BPSU5UX1NURVA6CisJCQkJc2V0UG9pbnRfc3RlcCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0NMT1VEMl9fUk9XX1NURVA6CisJCQkJc2V0Um93X3N0ZXAoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRDJfX0RBVEE6CisJCQkJZ2V0RGF0YSgpLmNsZWFyKCk7CisJCQkJZ2V0RGF0YSgpLmFkZEFsbCgoQ29sbGVjdGlvbjw/IGV4dGVuZHMgT2JqZWN0PiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRDJfX0lTX0RFTlNFOgorCQkJCXNldElzX2RlbnNlKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0NMT1VEMl9fSEVBREVSOgorCQkJCXNldEhlYWRlcigoSGVhZGVyKW51bGwpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVUQyX19IRUlHSFQ6CisJCQkJc2V0SGVpZ2h0KEhFSUdIVF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRDJfX1dJRFRIOgorCQkJCXNldFdpZHRoKFdJRFRIX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0NMT1VEMl9fRklFTERTOgorCQkJCWdldEZpZWxkcygpLmNsZWFyKCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRDJfX0lTX0JJR0VORElBTjoKKwkJCQlzZXRJc19iaWdlbmRpYW4oSVNfQklHRU5ESUFOX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0NMT1VEMl9fUE9JTlRfU1RFUDoKKwkJCQlzZXRQb2ludF9zdGVwKFBPSU5UX1NURVBfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVUQyX19ST1dfU1RFUDoKKwkJCQlzZXRSb3dfc3RlcChST1dfU1RFUF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRDJfX0RBVEE6CisJCQkJZ2V0RGF0YSgpLmNsZWFyKCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRDJfX0lTX0RFTlNFOgorCQkJCXNldElzX2RlbnNlKElTX0RFTlNFX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVUQyX19IRUFERVI6CisJCQkJcmV0dXJuIGhlYWRlciAhPSBudWxsOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRDJfX0hFSUdIVDoKKwkJCQlyZXR1cm4gSEVJR0hUX0VERUZBVUxUID09IG51bGwgPyBoZWlnaHQgIT0gbnVsbCA6ICFIRUlHSFRfRURFRkFVTFQuZXF1YWxzKGhlaWdodCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0NMT1VEMl9fV0lEVEg6CisJCQkJcmV0dXJuIFdJRFRIX0VERUZBVUxUID09IG51bGwgPyB3aWR0aCAhPSBudWxsIDogIVdJRFRIX0VERUZBVUxULmVxdWFscyh3aWR0aCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0NMT1VEMl9fRklFTERTOgorCQkJCXJldHVybiBmaWVsZHMgIT0gbnVsbCAmJiAhZmllbGRzLmlzRW1wdHkoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVUQyX19JU19CSUdFTkRJQU46CisJCQkJcmV0dXJuIElTX0JJR0VORElBTl9FREVGQVVMVCA9PSBudWxsID8gaXNfYmlnZW5kaWFuICE9IG51bGwgOiAhSVNfQklHRU5ESUFOX0VERUZBVUxULmVxdWFscyhpc19iaWdlbmRpYW4pOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRDJfX1BPSU5UX1NURVA6CisJCQkJcmV0dXJuIFBPSU5UX1NURVBfRURFRkFVTFQgPT0gbnVsbCA/IHBvaW50X3N0ZXAgIT0gbnVsbCA6ICFQT0lOVF9TVEVQX0VERUZBVUxULmVxdWFscyhwb2ludF9zdGVwKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVUQyX19ST1dfU1RFUDoKKwkJCQlyZXR1cm4gUk9XX1NURVBfRURFRkFVTFQgPT0gbnVsbCA/IHJvd19zdGVwICE9IG51bGwgOiAhUk9XX1NURVBfRURFRkFVTFQuZXF1YWxzKHJvd19zdGVwKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVUQyX19EQVRBOgorCQkJCXJldHVybiBkYXRhICE9IG51bGwgJiYgIWRhdGEuaXNFbXB0eSgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRDJfX0lTX0RFTlNFOgorCQkJCXJldHVybiBJU19ERU5TRV9FREVGQVVMVCA9PSBudWxsID8gaXNfZGVuc2UgIT0gbnVsbCA6ICFJU19ERU5TRV9FREVGQVVMVC5lcXVhbHMoaXNfZGVuc2UpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAoaGVpZ2h0OiAiKTsKKwkJcmVzdWx0LmFwcGVuZChoZWlnaHQpOworCQlyZXN1bHQuYXBwZW5kKCIsIHdpZHRoOiAiKTsKKwkJcmVzdWx0LmFwcGVuZCh3aWR0aCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgaXNfYmlnZW5kaWFuOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChpc19iaWdlbmRpYW4pOworCQlyZXN1bHQuYXBwZW5kKCIsIHBvaW50X3N0ZXA6ICIpOworCQlyZXN1bHQuYXBwZW5kKHBvaW50X3N0ZXApOworCQlyZXN1bHQuYXBwZW5kKCIsIHJvd19zdGVwOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChyb3dfc3RlcCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgZGF0YTogIik7CisJCXJlc3VsdC5hcHBlbmQoZGF0YSk7CisJCXJlc3VsdC5hcHBlbmQoIiwgaXNfZGVuc2U6ICIpOworCQlyZXN1bHQuYXBwZW5kKGlzX2RlbnNlKTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIFBvaW50Q2xvdWQySW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1BvaW50Q2xvdWRJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvUG9pbnRDbG91ZEltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jODcyODcyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1BvaW50Q2xvdWRJbXBsLmphdmEKQEAgLTAsMCArMSwyNTMgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb25DaGFpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5FT2JqZWN0Q29udGFpbm1lbnRFTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5JbnRlcm5hbEVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuUG9pbnQzMjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DaGFubmVsRmxvYXQzMjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludENsb3VkOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlBvaW50IENsb3VkPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlBvaW50Q2xvdWRJbXBsI2dldEhlYWRlciA8ZW0+SGVhZGVyPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlBvaW50Q2xvdWRJbXBsI2dldFBvaW50cyA8ZW0+UG9pbnRzPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlBvaW50Q2xvdWRJbXBsI2dldENoYW5uZWxzIDxlbT5DaGFubmVsczwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIFBvaW50Q2xvdWRJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIFBvaW50Q2xvdWQgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEhlYWRlcigpIDxlbT5IZWFkZXI8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEhlYWRlcigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEhlYWRlciBoZWFkZXI7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRQb2ludHMoKSA8ZW0+UG9pbnRzPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFBvaW50cygpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEVMaXN0PFBvaW50MzI+IHBvaW50czsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldENoYW5uZWxzKCkgPGVtPkNoYW5uZWxzPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldENoYW5uZWxzKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRUxpc3Q8Q2hhbm5lbEZsb2F0MzI+IGNoYW5uZWxzOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFBvaW50Q2xvdWRJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuUE9JTlRfQ0xPVUQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEhlYWRlciBnZXRIZWFkZXIoKSB7CisJCXJldHVybiBoZWFkZXI7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0SGVhZGVyKEhlYWRlciBuZXdIZWFkZXIsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJSGVhZGVyIG9sZEhlYWRlciA9IGhlYWRlcjsKKwkJaGVhZGVyID0gbmV3SGVhZGVyOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpIHsKKwkJCUVOb3RpZmljYXRpb25JbXBsIG5vdGlmaWNhdGlvbiA9IG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRF9fSEVBREVSLCBvbGRIZWFkZXIsIG5ld0hlYWRlcik7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0SGVhZGVyKEhlYWRlciBuZXdIZWFkZXIpIHsKKwkJaWYgKG5ld0hlYWRlciAhPSBoZWFkZXIpIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKGhlYWRlciAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCloZWFkZXIpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRF9fSEVBREVSLCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdIZWFkZXIgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3SGVhZGVyKS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVURfX0hFQURFUiwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRIZWFkZXIobmV3SGVhZGVyLCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0NMT1VEX19IRUFERVIsIG5ld0hlYWRlciwgbmV3SGVhZGVyKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVMaXN0PFBvaW50MzI+IGdldFBvaW50cygpIHsKKwkJaWYgKHBvaW50cyA9PSBudWxsKSB7CisJCQlwb2ludHMgPSBuZXcgRU9iamVjdENvbnRhaW5tZW50RUxpc3Q8UG9pbnQzMj4oUG9pbnQzMi5jbGFzcywgdGhpcywgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVURfX1BPSU5UUyk7CisJCX0KKwkJcmV0dXJuIHBvaW50czsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUxpc3Q8Q2hhbm5lbEZsb2F0MzI+IGdldENoYW5uZWxzKCkgeworCQlpZiAoY2hhbm5lbHMgPT0gbnVsbCkgeworCQkJY2hhbm5lbHMgPSBuZXcgRU9iamVjdENvbnRhaW5tZW50RUxpc3Q8Q2hhbm5lbEZsb2F0MzI+KENoYW5uZWxGbG9hdDMyLmNsYXNzLCB0aGlzLCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRF9fQ0hBTk5FTFMpOworCQl9CisJCXJldHVybiBjaGFubmVsczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gZUludmVyc2VSZW1vdmUoSW50ZXJuYWxFT2JqZWN0IG90aGVyRW5kLCBpbnQgZmVhdHVyZUlELCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0NMT1VEX19IRUFERVI6CisJCQkJcmV0dXJuIGJhc2ljU2V0SGVhZGVyKG51bGwsIG1zZ3MpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRF9fUE9JTlRTOgorCQkJCXJldHVybiAoKEludGVybmFsRUxpc3Q8Pz4pZ2V0UG9pbnRzKCkpLmJhc2ljUmVtb3ZlKG90aGVyRW5kLCBtc2dzKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVURfX0NIQU5ORUxTOgorCQkJCXJldHVybiAoKEludGVybmFsRUxpc3Q8Pz4pZ2V0Q2hhbm5lbHMoKSkuYmFzaWNSZW1vdmUob3RoZXJFbmQsIG1zZ3MpOworCQl9CisJCXJldHVybiBzdXBlci5lSW52ZXJzZVJlbW92ZShvdGhlckVuZCwgZmVhdHVyZUlELCBtc2dzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0NMT1VEX19IRUFERVI6CisJCQkJcmV0dXJuIGdldEhlYWRlcigpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRF9fUE9JTlRTOgorCQkJCXJldHVybiBnZXRQb2ludHMoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVURfX0NIQU5ORUxTOgorCQkJCXJldHVybiBnZXRDaGFubmVscygpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBTdXBwcmVzc1dhcm5pbmdzKCJ1bmNoZWNrZWQiKQorCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0NMT1VEX19IRUFERVI6CisJCQkJc2V0SGVhZGVyKChIZWFkZXIpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVURfX1BPSU5UUzoKKwkJCQlnZXRQb2ludHMoKS5jbGVhcigpOworCQkJCWdldFBvaW50cygpLmFkZEFsbCgoQ29sbGVjdGlvbjw/IGV4dGVuZHMgUG9pbnQzMj4pbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVURfX0NIQU5ORUxTOgorCQkJCWdldENoYW5uZWxzKCkuY2xlYXIoKTsKKwkJCQlnZXRDaGFubmVscygpLmFkZEFsbCgoQ29sbGVjdGlvbjw/IGV4dGVuZHMgQ2hhbm5lbEZsb2F0MzI+KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRF9fSEVBREVSOgorCQkJCXNldEhlYWRlcigoSGVhZGVyKW51bGwpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVURfX1BPSU5UUzoKKwkJCQlnZXRQb2ludHMoKS5jbGVhcigpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVURfX0NIQU5ORUxTOgorCQkJCWdldENoYW5uZWxzKCkuY2xlYXIoKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVURfX0hFQURFUjoKKwkJCQlyZXR1cm4gaGVhZGVyICE9IG51bGw7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0NMT1VEX19QT0lOVFM6CisJCQkJcmV0dXJuIHBvaW50cyAhPSBudWxsICYmICFwb2ludHMuaXNFbXB0eSgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRF9fQ0hBTk5FTFM6CisJCQkJcmV0dXJuIGNoYW5uZWxzICE9IG51bGwgJiYgIWNoYW5uZWxzLmlzRW1wdHkoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCit9IC8vIFBvaW50Q2xvdWRJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvUG9pbnRGaWVsZEltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9Qb2ludEZpZWxkSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBiYTg1MDcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvUG9pbnRGaWVsZEltcGwuamF2YQpAQCAtMCwwICsxLDMyMiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludEZpZWxkOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UG9pbnQgRmllbGQ8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuUG9pbnRGaWVsZEltcGwjZ2V0TmFtZSA8ZW0+TmFtZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Qb2ludEZpZWxkSW1wbCNnZXRPZmZzZXQgPGVtPk9mZnNldDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5Qb2ludEZpZWxkSW1wbCNnZXREYXRhdHlwZSA8ZW0+RGF0YXR5cGU8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuUG9pbnRGaWVsZEltcGwjZ2V0Q291bnQgPGVtPkNvdW50PC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgUG9pbnRGaWVsZEltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgUG9pbnRGaWVsZCB7CisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldE5hbWUoKSA8ZW0+TmFtZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0TmFtZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgTkFNRV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXROYW1lKCkgPGVtPk5hbWU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldE5hbWUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgbmFtZSA9IE5BTUVfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0T2Zmc2V0KCkgPGVtPk9mZnNldDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0T2Zmc2V0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBPRkZTRVRfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0T2Zmc2V0KCkgPGVtPk9mZnNldDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0T2Zmc2V0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IG9mZnNldCA9IE9GRlNFVF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXREYXRhdHlwZSgpIDxlbT5EYXRhdHlwZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0RGF0YXR5cGUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IERBVEFUWVBFX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldERhdGF0eXBlKCkgPGVtPkRhdGF0eXBlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXREYXRhdHlwZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBkYXRhdHlwZSA9IERBVEFUWVBFX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldENvdW50KCkgPGVtPkNvdW50PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRDb3VudCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgQ09VTlRfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0Q291bnQoKSA8ZW0+Q291bnQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldENvdW50KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IGNvdW50ID0gQ09VTlRfRURFRkFVTFQ7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgUG9pbnRGaWVsZEltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5QT0lOVF9GSUVMRDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldE5hbWUoKSB7CisJCXJldHVybiBuYW1lOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldE5hbWUoT2JqZWN0IG5ld05hbWUpIHsKKwkJT2JqZWN0IG9sZE5hbWUgPSBuYW1lOworCQluYW1lID0gbmV3TmFtZTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfRklFTERfX05BTUUsIG9sZE5hbWUsIG5hbWUpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldE9mZnNldCgpIHsKKwkJcmV0dXJuIG9mZnNldDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRPZmZzZXQoT2JqZWN0IG5ld09mZnNldCkgeworCQlPYmplY3Qgb2xkT2Zmc2V0ID0gb2Zmc2V0OworCQlvZmZzZXQgPSBuZXdPZmZzZXQ7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0ZJRUxEX19PRkZTRVQsIG9sZE9mZnNldCwgb2Zmc2V0KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXREYXRhdHlwZSgpIHsKKwkJcmV0dXJuIGRhdGF0eXBlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldERhdGF0eXBlKE9iamVjdCBuZXdEYXRhdHlwZSkgeworCQlPYmplY3Qgb2xkRGF0YXR5cGUgPSBkYXRhdHlwZTsKKwkJZGF0YXR5cGUgPSBuZXdEYXRhdHlwZTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfRklFTERfX0RBVEFUWVBFLCBvbGREYXRhdHlwZSwgZGF0YXR5cGUpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldENvdW50KCkgeworCQlyZXR1cm4gY291bnQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0Q291bnQoT2JqZWN0IG5ld0NvdW50KSB7CisJCU9iamVjdCBvbGRDb3VudCA9IGNvdW50OworCQljb3VudCA9IG5ld0NvdW50OworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9GSUVMRF9fQ09VTlQsIG9sZENvdW50LCBjb3VudCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfRklFTERfX05BTUU6CisJCQkJcmV0dXJuIGdldE5hbWUoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfRklFTERfX09GRlNFVDoKKwkJCQlyZXR1cm4gZ2V0T2Zmc2V0KCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0ZJRUxEX19EQVRBVFlQRToKKwkJCQlyZXR1cm4gZ2V0RGF0YXR5cGUoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfRklFTERfX0NPVU5UOgorCQkJCXJldHVybiBnZXRDb3VudCgpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0ZJRUxEX19OQU1FOgorCQkJCXNldE5hbWUoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9GSUVMRF9fT0ZGU0VUOgorCQkJCXNldE9mZnNldCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0ZJRUxEX19EQVRBVFlQRToKKwkJCQlzZXREYXRhdHlwZSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0ZJRUxEX19DT1VOVDoKKwkJCQlzZXRDb3VudCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9GSUVMRF9fTkFNRToKKwkJCQlzZXROYW1lKE5BTUVfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfRklFTERfX09GRlNFVDoKKwkJCQlzZXRPZmZzZXQoT0ZGU0VUX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0ZJRUxEX19EQVRBVFlQRToKKwkJCQlzZXREYXRhdHlwZShEQVRBVFlQRV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9GSUVMRF9fQ09VTlQ6CisJCQkJc2V0Q291bnQoQ09VTlRfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9GSUVMRF9fTkFNRToKKwkJCQlyZXR1cm4gTkFNRV9FREVGQVVMVCA9PSBudWxsID8gbmFtZSAhPSBudWxsIDogIU5BTUVfRURFRkFVTFQuZXF1YWxzKG5hbWUpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9GSUVMRF9fT0ZGU0VUOgorCQkJCXJldHVybiBPRkZTRVRfRURFRkFVTFQgPT0gbnVsbCA/IG9mZnNldCAhPSBudWxsIDogIU9GRlNFVF9FREVGQVVMVC5lcXVhbHMob2Zmc2V0KTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfRklFTERfX0RBVEFUWVBFOgorCQkJCXJldHVybiBEQVRBVFlQRV9FREVGQVVMVCA9PSBudWxsID8gZGF0YXR5cGUgIT0gbnVsbCA6ICFEQVRBVFlQRV9FREVGQVVMVC5lcXVhbHMoZGF0YXR5cGUpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9GSUVMRF9fQ09VTlQ6CisJCQkJcmV0dXJuIENPVU5UX0VERUZBVUxUID09IG51bGwgPyBjb3VudCAhPSBudWxsIDogIUNPVU5UX0VERUZBVUxULmVxdWFscyhjb3VudCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CisJCWlmIChlSXNQcm94eSgpKSByZXR1cm4gc3VwZXIudG9TdHJpbmcoKTsKKworCQlTdHJpbmdCdWZmZXIgcmVzdWx0ID0gbmV3IFN0cmluZ0J1ZmZlcihzdXBlci50b1N0cmluZygpKTsKKwkJcmVzdWx0LmFwcGVuZCgiIChuYW1lOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChuYW1lKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBvZmZzZXQ6ICIpOworCQlyZXN1bHQuYXBwZW5kKG9mZnNldCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgZGF0YXR5cGU6ICIpOworCQlyZXN1bHQuYXBwZW5kKGRhdGF0eXBlKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBjb3VudDogIik7CisJCXJlc3VsdC5hcHBlbmQoY291bnQpOworCQlyZXN1bHQuYXBwZW5kKCcpJyk7CisJCXJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKKwl9CisKK30gLy8gUG9pbnRGaWVsZEltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9SYW5nZUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9SYW5nZUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40ZjYyOGIzCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1JhbmdlSW1wbC5qYXZhCkBAIC0wLDAgKzEsNTY1IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbkNoYWluOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUmFuZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSGVhZGVyOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+UmFuZ2U8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuUmFuZ2VJbXBsI2dldFVMVFJBU09VTkQgPGVtPlVMVFJBU09VTkQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuUmFuZ2VJbXBsI2dldElORlJBUkVEIDxlbT5JTkZSQVJFRDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5SYW5nZUltcGwjZ2V0SGVhZGVyIDxlbT5IZWFkZXI8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuUmFuZ2VJbXBsI2dldFJhZGlhdGlvbl90eXBlIDxlbT5SYWRpYXRpb24gdHlwZTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5SYW5nZUltcGwjZ2V0RmllbGRfb2ZfdmlldyA8ZW0+RmllbGQgb2YgdmlldzwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5SYW5nZUltcGwjZ2V0TWluX3JhbmdlIDxlbT5NaW4gcmFuZ2U8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuUmFuZ2VJbXBsI2dldE1heF9yYW5nZSA8ZW0+TWF4IHJhbmdlPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsLlJhbmdlSW1wbCNnZXRSYW5nZSA8ZW0+UmFuZ2U8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBSYW5nZUltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgUmFuZ2UgeworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRVTFRSQVNPVU5EKCkgPGVtPlVMVFJBU09VTkQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFVMVFJBU09VTkQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFVMVFJBU09VTkRfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0VUxUUkFTT1VORCgpIDxlbT5VTFRSQVNPVU5EPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRVTFRSQVNPVU5EKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHVsdHJhc291bmQgPSBVTFRSQVNPVU5EX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldElORlJBUkVEKCkgPGVtPklORlJBUkVEPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRJTkZSQVJFRCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgSU5GUkFSRURfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0SU5GUkFSRUQoKSA8ZW0+SU5GUkFSRUQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldElORlJBUkVEKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IGluZnJhcmVkID0gSU5GUkFSRURfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRIZWFkZXIoKSA8ZW0+SGVhZGVyPC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRIZWFkZXIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBIZWFkZXIgaGVhZGVyOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFJhZGlhdGlvbl90eXBlKCkgPGVtPlJhZGlhdGlvbiB0eXBlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRSYWRpYXRpb25fdHlwZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgUkFESUFUSU9OX1RZUEVfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0UmFkaWF0aW9uX3R5cGUoKSA8ZW0+UmFkaWF0aW9uIHR5cGU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFJhZGlhdGlvbl90eXBlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHJhZGlhdGlvbl90eXBlID0gUkFESUFUSU9OX1RZUEVfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0RmllbGRfb2ZfdmlldygpIDxlbT5GaWVsZCBvZiB2aWV3PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRGaWVsZF9vZl92aWV3KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBGSUVMRF9PRl9WSUVXX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEZpZWxkX29mX3ZpZXcoKSA8ZW0+RmllbGQgb2YgdmlldzwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0RmllbGRfb2ZfdmlldygpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBmaWVsZF9vZl92aWV3ID0gRklFTERfT0ZfVklFV19FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRNaW5fcmFuZ2UoKSA8ZW0+TWluIHJhbmdlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRNaW5fcmFuZ2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IE1JTl9SQU5HRV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRNaW5fcmFuZ2UoKSA8ZW0+TWluIHJhbmdlPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRNaW5fcmFuZ2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgbWluX3JhbmdlID0gTUlOX1JBTkdFX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldE1heF9yYW5nZSgpIDxlbT5NYXggcmFuZ2U8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldE1heF9yYW5nZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgTUFYX1JBTkdFX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldE1heF9yYW5nZSgpIDxlbT5NYXggcmFuZ2U8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldE1heF9yYW5nZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBtYXhfcmFuZ2UgPSBNQVhfUkFOR0VfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0UmFuZ2UoKSA8ZW0+UmFuZ2U8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFJhbmdlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBSQU5HRV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRSYW5nZSgpIDxlbT5SYW5nZTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0UmFuZ2UoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgcmFuZ2UgPSBSQU5HRV9FREVGQVVMVDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBSYW5nZUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5SQU5HRTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFVMVFJBU09VTkQoKSB7CisJCXJldHVybiB1bHRyYXNvdW5kOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFVMVFJBU09VTkQoT2JqZWN0IG5ld1VMVFJBU09VTkQpIHsKKwkJT2JqZWN0IG9sZFVMVFJBU09VTkQgPSB1bHRyYXNvdW5kOworCQl1bHRyYXNvdW5kID0gbmV3VUxUUkFTT1VORDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkFOR0VfX1VMVFJBU09VTkQsIG9sZFVMVFJBU09VTkQsIHVsdHJhc291bmQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldElORlJBUkVEKCkgeworCQlyZXR1cm4gaW5mcmFyZWQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0SU5GUkFSRUQoT2JqZWN0IG5ld0lORlJBUkVEKSB7CisJCU9iamVjdCBvbGRJTkZSQVJFRCA9IGluZnJhcmVkOworCQlpbmZyYXJlZCA9IG5ld0lORlJBUkVEOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SQU5HRV9fSU5GUkFSRUQsIG9sZElORlJBUkVELCBpbmZyYXJlZCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBIZWFkZXIgZ2V0SGVhZGVyKCkgeworCQlyZXR1cm4gaGVhZGVyOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBiYXNpY1NldEhlYWRlcihIZWFkZXIgbmV3SGVhZGVyLCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCUhlYWRlciBvbGRIZWFkZXIgPSBoZWFkZXI7CisJCWhlYWRlciA9IG5ld0hlYWRlcjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkFOR0VfX0hFQURFUiwgb2xkSGVhZGVyLCBuZXdIZWFkZXIpOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEhlYWRlcihIZWFkZXIgbmV3SGVhZGVyKSB7CisJCWlmIChuZXdIZWFkZXIgIT0gaGVhZGVyKSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChoZWFkZXIgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpaGVhZGVyKS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkFOR0VfX0hFQURFUiwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3SGVhZGVyICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld0hlYWRlcikuZUludmVyc2VBZGQodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlJBTkdFX19IRUFERVIsIG51bGwsIG1zZ3MpOworCQkJbXNncyA9IGJhc2ljU2V0SGVhZGVyKG5ld0hlYWRlciwgbXNncyk7CisJCQlpZiAobXNncyAhPSBudWxsKSBtc2dzLmRpc3BhdGNoKCk7CisJCX0KKwkJZWxzZSBpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SQU5HRV9fSEVBREVSLCBuZXdIZWFkZXIsIG5ld0hlYWRlcikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0UmFkaWF0aW9uX3R5cGUoKSB7CisJCXJldHVybiByYWRpYXRpb25fdHlwZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRSYWRpYXRpb25fdHlwZShPYmplY3QgbmV3UmFkaWF0aW9uX3R5cGUpIHsKKwkJT2JqZWN0IG9sZFJhZGlhdGlvbl90eXBlID0gcmFkaWF0aW9uX3R5cGU7CisJCXJhZGlhdGlvbl90eXBlID0gbmV3UmFkaWF0aW9uX3R5cGU7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlJBTkdFX19SQURJQVRJT05fVFlQRSwgb2xkUmFkaWF0aW9uX3R5cGUsIHJhZGlhdGlvbl90eXBlKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRGaWVsZF9vZl92aWV3KCkgeworCQlyZXR1cm4gZmllbGRfb2ZfdmlldzsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRGaWVsZF9vZl92aWV3KE9iamVjdCBuZXdGaWVsZF9vZl92aWV3KSB7CisJCU9iamVjdCBvbGRGaWVsZF9vZl92aWV3ID0gZmllbGRfb2ZfdmlldzsKKwkJZmllbGRfb2ZfdmlldyA9IG5ld0ZpZWxkX29mX3ZpZXc7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlJBTkdFX19GSUVMRF9PRl9WSUVXLCBvbGRGaWVsZF9vZl92aWV3LCBmaWVsZF9vZl92aWV3KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRNaW5fcmFuZ2UoKSB7CisJCXJldHVybiBtaW5fcmFuZ2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0TWluX3JhbmdlKE9iamVjdCBuZXdNaW5fcmFuZ2UpIHsKKwkJT2JqZWN0IG9sZE1pbl9yYW5nZSA9IG1pbl9yYW5nZTsKKwkJbWluX3JhbmdlID0gbmV3TWluX3JhbmdlOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SQU5HRV9fTUlOX1JBTkdFLCBvbGRNaW5fcmFuZ2UsIG1pbl9yYW5nZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0TWF4X3JhbmdlKCkgeworCQlyZXR1cm4gbWF4X3JhbmdlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldE1heF9yYW5nZShPYmplY3QgbmV3TWF4X3JhbmdlKSB7CisJCU9iamVjdCBvbGRNYXhfcmFuZ2UgPSBtYXhfcmFuZ2U7CisJCW1heF9yYW5nZSA9IG5ld01heF9yYW5nZTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkFOR0VfX01BWF9SQU5HRSwgb2xkTWF4X3JhbmdlLCBtYXhfcmFuZ2UpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFJhbmdlKCkgeworCQlyZXR1cm4gcmFuZ2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0UmFuZ2UoT2JqZWN0IG5ld1JhbmdlKSB7CisJCU9iamVjdCBvbGRSYW5nZSA9IHJhbmdlOworCQlyYW5nZSA9IG5ld1JhbmdlOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SQU5HRV9fUkFOR0UsIG9sZFJhbmdlLCByYW5nZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBlSW52ZXJzZVJlbW92ZShJbnRlcm5hbEVPYmplY3Qgb3RoZXJFbmQsIGludCBmZWF0dXJlSUQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkFOR0VfX0hFQURFUjoKKwkJCQlyZXR1cm4gYmFzaWNTZXRIZWFkZXIobnVsbCwgbXNncyk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJbnZlcnNlUmVtb3ZlKG90aGVyRW5kLCBmZWF0dXJlSUQsIG1zZ3MpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkFOR0VfX1VMVFJBU09VTkQ6CisJCQkJcmV0dXJuIGdldFVMVFJBU09VTkQoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkFOR0VfX0lORlJBUkVEOgorCQkJCXJldHVybiBnZXRJTkZSQVJFRCgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SQU5HRV9fSEVBREVSOgorCQkJCXJldHVybiBnZXRIZWFkZXIoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkFOR0VfX1JBRElBVElPTl9UWVBFOgorCQkJCXJldHVybiBnZXRSYWRpYXRpb25fdHlwZSgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SQU5HRV9fRklFTERfT0ZfVklFVzoKKwkJCQlyZXR1cm4gZ2V0RmllbGRfb2ZfdmlldygpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SQU5HRV9fTUlOX1JBTkdFOgorCQkJCXJldHVybiBnZXRNaW5fcmFuZ2UoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkFOR0VfX01BWF9SQU5HRToKKwkJCQlyZXR1cm4gZ2V0TWF4X3JhbmdlKCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlJBTkdFX19SQU5HRToKKwkJCQlyZXR1cm4gZ2V0UmFuZ2UoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SQU5HRV9fVUxUUkFTT1VORDoKKwkJCQlzZXRVTFRSQVNPVU5EKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkFOR0VfX0lORlJBUkVEOgorCQkJCXNldElORlJBUkVEKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkFOR0VfX0hFQURFUjoKKwkJCQlzZXRIZWFkZXIoKEhlYWRlciluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SQU5HRV9fUkFESUFUSU9OX1RZUEU6CisJCQkJc2V0UmFkaWF0aW9uX3R5cGUoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SQU5HRV9fRklFTERfT0ZfVklFVzoKKwkJCQlzZXRGaWVsZF9vZl92aWV3KChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkFOR0VfX01JTl9SQU5HRToKKwkJCQlzZXRNaW5fcmFuZ2UoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SQU5HRV9fTUFYX1JBTkdFOgorCQkJCXNldE1heF9yYW5nZSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlJBTkdFX19SQU5HRToKKwkJCQlzZXRSYW5nZSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SQU5HRV9fVUxUUkFTT1VORDoKKwkJCQlzZXRVTFRSQVNPVU5EKFVMVFJBU09VTkRfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkFOR0VfX0lORlJBUkVEOgorCQkJCXNldElORlJBUkVEKElORlJBUkVEX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlJBTkdFX19IRUFERVI6CisJCQkJc2V0SGVhZGVyKChIZWFkZXIpbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SQU5HRV9fUkFESUFUSU9OX1RZUEU6CisJCQkJc2V0UmFkaWF0aW9uX3R5cGUoUkFESUFUSU9OX1RZUEVfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkFOR0VfX0ZJRUxEX09GX1ZJRVc6CisJCQkJc2V0RmllbGRfb2ZfdmlldyhGSUVMRF9PRl9WSUVXX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlJBTkdFX19NSU5fUkFOR0U6CisJCQkJc2V0TWluX3JhbmdlKE1JTl9SQU5HRV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SQU5HRV9fTUFYX1JBTkdFOgorCQkJCXNldE1heF9yYW5nZShNQVhfUkFOR0VfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkFOR0VfX1JBTkdFOgorCQkJCXNldFJhbmdlKFJBTkdFX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkFOR0VfX1VMVFJBU09VTkQ6CisJCQkJcmV0dXJuIFVMVFJBU09VTkRfRURFRkFVTFQgPT0gbnVsbCA/IHVsdHJhc291bmQgIT0gbnVsbCA6ICFVTFRSQVNPVU5EX0VERUZBVUxULmVxdWFscyh1bHRyYXNvdW5kKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkFOR0VfX0lORlJBUkVEOgorCQkJCXJldHVybiBJTkZSQVJFRF9FREVGQVVMVCA9PSBudWxsID8gaW5mcmFyZWQgIT0gbnVsbCA6ICFJTkZSQVJFRF9FREVGQVVMVC5lcXVhbHMoaW5mcmFyZWQpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SQU5HRV9fSEVBREVSOgorCQkJCXJldHVybiBoZWFkZXIgIT0gbnVsbDsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkFOR0VfX1JBRElBVElPTl9UWVBFOgorCQkJCXJldHVybiBSQURJQVRJT05fVFlQRV9FREVGQVVMVCA9PSBudWxsID8gcmFkaWF0aW9uX3R5cGUgIT0gbnVsbCA6ICFSQURJQVRJT05fVFlQRV9FREVGQVVMVC5lcXVhbHMocmFkaWF0aW9uX3R5cGUpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SQU5HRV9fRklFTERfT0ZfVklFVzoKKwkJCQlyZXR1cm4gRklFTERfT0ZfVklFV19FREVGQVVMVCA9PSBudWxsID8gZmllbGRfb2ZfdmlldyAhPSBudWxsIDogIUZJRUxEX09GX1ZJRVdfRURFRkFVTFQuZXF1YWxzKGZpZWxkX29mX3ZpZXcpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SQU5HRV9fTUlOX1JBTkdFOgorCQkJCXJldHVybiBNSU5fUkFOR0VfRURFRkFVTFQgPT0gbnVsbCA/IG1pbl9yYW5nZSAhPSBudWxsIDogIU1JTl9SQU5HRV9FREVGQVVMVC5lcXVhbHMobWluX3JhbmdlKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkFOR0VfX01BWF9SQU5HRToKKwkJCQlyZXR1cm4gTUFYX1JBTkdFX0VERUZBVUxUID09IG51bGwgPyBtYXhfcmFuZ2UgIT0gbnVsbCA6ICFNQVhfUkFOR0VfRURFRkFVTFQuZXF1YWxzKG1heF9yYW5nZSk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlJBTkdFX19SQU5HRToKKwkJCQlyZXR1cm4gUkFOR0VfRURFRkFVTFQgPT0gbnVsbCA/IHJhbmdlICE9IG51bGwgOiAhUkFOR0VfRURFRkFVTFQuZXF1YWxzKHJhbmdlKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJaWYgKGVJc1Byb3h5KCkpIHJldHVybiBzdXBlci50b1N0cmluZygpOworCisJCVN0cmluZ0J1ZmZlciByZXN1bHQgPSBuZXcgU3RyaW5nQnVmZmVyKHN1cGVyLnRvU3RyaW5nKCkpOworCQlyZXN1bHQuYXBwZW5kKCIgKFVMVFJBU09VTkQ6ICIpOworCQlyZXN1bHQuYXBwZW5kKHVsdHJhc291bmQpOworCQlyZXN1bHQuYXBwZW5kKCIsIElORlJBUkVEOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChpbmZyYXJlZCk7CisJCXJlc3VsdC5hcHBlbmQoIiwgcmFkaWF0aW9uX3R5cGU6ICIpOworCQlyZXN1bHQuYXBwZW5kKHJhZGlhdGlvbl90eXBlKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBmaWVsZF9vZl92aWV3OiAiKTsKKwkJcmVzdWx0LmFwcGVuZChmaWVsZF9vZl92aWV3KTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBtaW5fcmFuZ2U6ICIpOworCQlyZXN1bHQuYXBwZW5kKG1pbl9yYW5nZSk7CisJCXJlc3VsdC5hcHBlbmQoIiwgbWF4X3JhbmdlOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChtYXhfcmFuZ2UpOworCQlyZXN1bHQuYXBwZW5kKCIsIHJhbmdlOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChyYW5nZSk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBSYW5nZUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9SZWdpb25PZkludGVyZXN0SW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1JlZ2lvbk9mSW50ZXJlc3RJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDIzNDc2ZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9SZWdpb25PZkludGVyZXN0SW1wbC5qYXZhCkBAIC0wLDAgKzEsMzc2IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlJlZ2lvbk9mSW50ZXJlc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5SZWdpb24gT2YgSW50ZXJlc3Q8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuUmVnaW9uT2ZJbnRlcmVzdEltcGwjZ2V0WF9vZmZzZXQgPGVtPlhvZmZzZXQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuUmVnaW9uT2ZJbnRlcmVzdEltcGwjZ2V0WV9vZmZzZXQgPGVtPllvZmZzZXQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuUmVnaW9uT2ZJbnRlcmVzdEltcGwjZ2V0SGVpZ2h0IDxlbT5IZWlnaHQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGwuUmVnaW9uT2ZJbnRlcmVzdEltcGwjZ2V0RG9fcmVjdGlmeSA8ZW0+RG8gcmVjdGlmeTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5SZWdpb25PZkludGVyZXN0SW1wbCNnZXRXaWR0aCA8ZW0+V2lkdGg8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBSZWdpb25PZkludGVyZXN0SW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBSZWdpb25PZkludGVyZXN0IHsKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0WF9vZmZzZXQoKSA8ZW0+WG9mZnNldDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0WF9vZmZzZXQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFhPRkZTRVRfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0WF9vZmZzZXQoKSA8ZW0+WG9mZnNldDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0WF9vZmZzZXQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgeF9vZmZzZXQgPSBYT0ZGU0VUX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFlfb2Zmc2V0KCkgPGVtPllvZmZzZXQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFlfb2Zmc2V0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBZT0ZGU0VUX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFlfb2Zmc2V0KCkgPGVtPllvZmZzZXQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFlfb2Zmc2V0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHlfb2Zmc2V0ID0gWU9GRlNFVF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRIZWlnaHQoKSA8ZW0+SGVpZ2h0PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRIZWlnaHQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IEhFSUdIVF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRIZWlnaHQoKSA8ZW0+SGVpZ2h0PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRIZWlnaHQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgaGVpZ2h0ID0gSEVJR0hUX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldERvX3JlY3RpZnkoKSA8ZW0+RG8gcmVjdGlmeTwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0RG9fcmVjdGlmeSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgRE9fUkVDVElGWV9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXREb19yZWN0aWZ5KCkgPGVtPkRvIHJlY3RpZnk8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldERvX3JlY3RpZnkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgZG9fcmVjdGlmeSA9IERPX1JFQ1RJRllfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0V2lkdGgoKSA8ZW0+V2lkdGg8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFdpZHRoKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBXSURUSF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRXaWR0aCgpIDxlbT5XaWR0aDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0V2lkdGgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3Qgd2lkdGggPSBXSURUSF9FREVGQVVMVDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBSZWdpb25PZkludGVyZXN0SW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLlJFR0lPTl9PRl9JTlRFUkVTVDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFhfb2Zmc2V0KCkgeworCQlyZXR1cm4geF9vZmZzZXQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0WF9vZmZzZXQoT2JqZWN0IG5ld1hfb2Zmc2V0KSB7CisJCU9iamVjdCBvbGRYX29mZnNldCA9IHhfb2Zmc2V0OworCQl4X29mZnNldCA9IG5ld1hfb2Zmc2V0OworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SRUdJT05fT0ZfSU5URVJFU1RfX1hPRkZTRVQsIG9sZFhfb2Zmc2V0LCB4X29mZnNldCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0WV9vZmZzZXQoKSB7CisJCXJldHVybiB5X29mZnNldDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRZX29mZnNldChPYmplY3QgbmV3WV9vZmZzZXQpIHsKKwkJT2JqZWN0IG9sZFlfb2Zmc2V0ID0geV9vZmZzZXQ7CisJCXlfb2Zmc2V0ID0gbmV3WV9vZmZzZXQ7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlJFR0lPTl9PRl9JTlRFUkVTVF9fWU9GRlNFVCwgb2xkWV9vZmZzZXQsIHlfb2Zmc2V0KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRIZWlnaHQoKSB7CisJCXJldHVybiBoZWlnaHQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0SGVpZ2h0KE9iamVjdCBuZXdIZWlnaHQpIHsKKwkJT2JqZWN0IG9sZEhlaWdodCA9IGhlaWdodDsKKwkJaGVpZ2h0ID0gbmV3SGVpZ2h0OworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SRUdJT05fT0ZfSU5URVJFU1RfX0hFSUdIVCwgb2xkSGVpZ2h0LCBoZWlnaHQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldERvX3JlY3RpZnkoKSB7CisJCXJldHVybiBkb19yZWN0aWZ5OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldERvX3JlY3RpZnkoT2JqZWN0IG5ld0RvX3JlY3RpZnkpIHsKKwkJT2JqZWN0IG9sZERvX3JlY3RpZnkgPSBkb19yZWN0aWZ5OworCQlkb19yZWN0aWZ5ID0gbmV3RG9fcmVjdGlmeTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkVHSU9OX09GX0lOVEVSRVNUX19ET19SRUNUSUZZLCBvbGREb19yZWN0aWZ5LCBkb19yZWN0aWZ5KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRXaWR0aCgpIHsKKwkJcmV0dXJuIHdpZHRoOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFdpZHRoKE9iamVjdCBuZXdXaWR0aCkgeworCQlPYmplY3Qgb2xkV2lkdGggPSB3aWR0aDsKKwkJd2lkdGggPSBuZXdXaWR0aDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkVHSU9OX09GX0lOVEVSRVNUX19XSURUSCwgb2xkV2lkdGgsIHdpZHRoKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SRUdJT05fT0ZfSU5URVJFU1RfX1hPRkZTRVQ6CisJCQkJcmV0dXJuIGdldFhfb2Zmc2V0KCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlJFR0lPTl9PRl9JTlRFUkVTVF9fWU9GRlNFVDoKKwkJCQlyZXR1cm4gZ2V0WV9vZmZzZXQoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkVHSU9OX09GX0lOVEVSRVNUX19IRUlHSFQ6CisJCQkJcmV0dXJuIGdldEhlaWdodCgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SRUdJT05fT0ZfSU5URVJFU1RfX0RPX1JFQ1RJRlk6CisJCQkJcmV0dXJuIGdldERvX3JlY3RpZnkoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkVHSU9OX09GX0lOVEVSRVNUX19XSURUSDoKKwkJCQlyZXR1cm4gZ2V0V2lkdGgoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SRUdJT05fT0ZfSU5URVJFU1RfX1hPRkZTRVQ6CisJCQkJc2V0WF9vZmZzZXQoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SRUdJT05fT0ZfSU5URVJFU1RfX1lPRkZTRVQ6CisJCQkJc2V0WV9vZmZzZXQoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SRUdJT05fT0ZfSU5URVJFU1RfX0hFSUdIVDoKKwkJCQlzZXRIZWlnaHQoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SRUdJT05fT0ZfSU5URVJFU1RfX0RPX1JFQ1RJRlk6CisJCQkJc2V0RG9fcmVjdGlmeSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlJFR0lPTl9PRl9JTlRFUkVTVF9fV0lEVEg6CisJCQkJc2V0V2lkdGgoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkVHSU9OX09GX0lOVEVSRVNUX19YT0ZGU0VUOgorCQkJCXNldFhfb2Zmc2V0KFhPRkZTRVRfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkVHSU9OX09GX0lOVEVSRVNUX19ZT0ZGU0VUOgorCQkJCXNldFlfb2Zmc2V0KFlPRkZTRVRfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkVHSU9OX09GX0lOVEVSRVNUX19IRUlHSFQ6CisJCQkJc2V0SGVpZ2h0KEhFSUdIVF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SRUdJT05fT0ZfSU5URVJFU1RfX0RPX1JFQ1RJRlk6CisJCQkJc2V0RG9fcmVjdGlmeShET19SRUNUSUZZX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlJFR0lPTl9PRl9JTlRFUkVTVF9fV0lEVEg6CisJCQkJc2V0V2lkdGgoV0lEVEhfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SRUdJT05fT0ZfSU5URVJFU1RfX1hPRkZTRVQ6CisJCQkJcmV0dXJuIFhPRkZTRVRfRURFRkFVTFQgPT0gbnVsbCA/IHhfb2Zmc2V0ICE9IG51bGwgOiAhWE9GRlNFVF9FREVGQVVMVC5lcXVhbHMoeF9vZmZzZXQpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SRUdJT05fT0ZfSU5URVJFU1RfX1lPRkZTRVQ6CisJCQkJcmV0dXJuIFlPRkZTRVRfRURFRkFVTFQgPT0gbnVsbCA/IHlfb2Zmc2V0ICE9IG51bGwgOiAhWU9GRlNFVF9FREVGQVVMVC5lcXVhbHMoeV9vZmZzZXQpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SRUdJT05fT0ZfSU5URVJFU1RfX0hFSUdIVDoKKwkJCQlyZXR1cm4gSEVJR0hUX0VERUZBVUxUID09IG51bGwgPyBoZWlnaHQgIT0gbnVsbCA6ICFIRUlHSFRfRURFRkFVTFQuZXF1YWxzKGhlaWdodCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlJFR0lPTl9PRl9JTlRFUkVTVF9fRE9fUkVDVElGWToKKwkJCQlyZXR1cm4gRE9fUkVDVElGWV9FREVGQVVMVCA9PSBudWxsID8gZG9fcmVjdGlmeSAhPSBudWxsIDogIURPX1JFQ1RJRllfRURFRkFVTFQuZXF1YWxzKGRvX3JlY3RpZnkpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5SRUdJT05fT0ZfSU5URVJFU1RfX1dJRFRIOgorCQkJCXJldHVybiBXSURUSF9FREVGQVVMVCA9PSBudWxsID8gd2lkdGggIT0gbnVsbCA6ICFXSURUSF9FREVGQVVMVC5lcXVhbHMod2lkdGgpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAoeF9vZmZzZXQ6ICIpOworCQlyZXN1bHQuYXBwZW5kKHhfb2Zmc2V0KTsKKwkJcmVzdWx0LmFwcGVuZCgiLCB5X29mZnNldDogIik7CisJCXJlc3VsdC5hcHBlbmQoeV9vZmZzZXQpOworCQlyZXN1bHQuYXBwZW5kKCIsIGhlaWdodDogIik7CisJCXJlc3VsdC5hcHBlbmQoaGVpZ2h0KTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBkb19yZWN0aWZ5OiAiKTsKKwkJcmVzdWx0LmFwcGVuZChkb19yZWN0aWZ5KTsKKwkJcmVzdWx0LmFwcGVuZCgiLCB3aWR0aDogIik7CisJCXJlc3VsdC5hcHBlbmQod2lkdGgpOworCQlyZXN1bHQuYXBwZW5kKCcpJyk7CisJCXJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKKwl9CisKK30gLy8gUmVnaW9uT2ZJbnRlcmVzdEltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45YTU3YzA0Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy9pbXBsL1NlbnNvcl9kYXRhdHlwZXNGYWN0b3J5SW1wbC5qYXZhCkBAIC0wLDAgKzEsNDEyIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FRmFjdG9yeUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnBsdWdpbi5FY29yZVBsdWdpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DT1ZBUklBTkNFX1RZUEU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FtZXJhSW5mbzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYXJMaWtlT2RvbWV0cnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2hhbm5lbEZsb2F0MzI7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ29tcHJlc3NlZEltYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkRpZmZlcmVudGlhbE9kb21ldHJ5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltdTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb2ludFN0YXRlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpveTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb3lGZWVkYmFjazsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb3lGZWVkYmFja0FycmF5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkxhc2VyU2NhbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRGaXg7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0U3RhdHVzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50Q2xvdWQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZDI7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRGaWVsZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SYW5nZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SZWdpb25PZkludGVyZXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNFUlZJQ0VfVFlQRTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TVEFUVVNfVFlQRTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzRmFjdG9yeTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPkZhY3Rvcnk8L2I+LgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBTZW5zb3JfZGF0YXR5cGVzRmFjdG9yeUltcGwgZXh0ZW5kcyBFRmFjdG9yeUltcGwgaW1wbGVtZW50cyBTZW5zb3JfZGF0YXR5cGVzRmFjdG9yeSB7CisJLyoqCisJICogQ3JlYXRlcyB0aGUgZGVmYXVsdCBmYWN0b3J5IGltcGxlbWVudGF0aW9uLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnkgaW5pdCgpIHsKKwkJdHJ5IHsKKwkJCVNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5IHRoZVNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5ID0gKFNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5KUVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVGYWN0b3J5KFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpOworCQkJaWYgKHRoZVNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5ICE9IG51bGwpIHsKKwkJCQlyZXR1cm4gdGhlU2Vuc29yX2RhdGF0eXBlc0ZhY3Rvcnk7CisJCQl9CisJCX0KKwkJY2F0Y2ggKEV4Y2VwdGlvbiBleGNlcHRpb24pIHsKKwkJCUVjb3JlUGx1Z2luLklOU1RBTkNFLmxvZyhleGNlcHRpb24pOworCQl9CisJCXJldHVybiBuZXcgU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsKCk7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgZmFjdG9yeS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBFT2JqZWN0IGNyZWF0ZShFQ2xhc3MgZUNsYXNzKSB7CisJCXN3aXRjaCAoZUNsYXNzLmdldENsYXNzaWZpZXJJRCgpKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlJFR0lPTl9PRl9JTlRFUkVTVDogcmV0dXJuIGNyZWF0ZVJlZ2lvbk9mSW50ZXJlc3QoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkFOR0U6IHJldHVybiBjcmVhdGVSYW5nZSgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DQU1FUkFfSU5GTzogcmV0dXJuIGNyZWF0ZUNhbWVyYUluZm8oKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1VOiByZXR1cm4gY3JlYXRlSW11KCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxBU0VSX1NDQU46IHJldHVybiBjcmVhdGVMYXNlclNjYW4oKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1BR0U6IHJldHVybiBjcmVhdGVJbWFnZSgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DSEFOTkVMX0ZMT0FUMzI6IHJldHVybiBjcmVhdGVDaGFubmVsRmxvYXQzMigpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DT01QUkVTU0VEX0lNQUdFOiByZXR1cm4gY3JlYXRlQ29tcHJlc3NlZEltYWdlKCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0NMT1VEOiByZXR1cm4gY3JlYXRlUG9pbnRDbG91ZCgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9GSUVMRDogcmV0dXJuIGNyZWF0ZVBvaW50RmllbGQoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVUQyOiByZXR1cm4gY3JlYXRlUG9pbnRDbG91ZDIoKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSk9JTlRfU1RBVEU6IHJldHVybiBjcmVhdGVKb2ludFN0YXRlKCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLk5BVl9TQVRfU1RBVFVTOiByZXR1cm4gY3JlYXRlTmF2U2F0U3RhdHVzKCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLk5BVl9TQVRfRklYOiByZXR1cm4gY3JlYXRlTmF2U2F0Rml4KCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWTogcmV0dXJuIGNyZWF0ZUpveSgpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT1lfRkVFREJBQ0s6IHJldHVybiBjcmVhdGVKb3lGZWVkYmFjaygpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT1lfRkVFREJBQ0tfQVJSQVk6IHJldHVybiBjcmVhdGVKb3lGZWVkYmFja0FycmF5KCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBUl9MSUtFX09ET01FVFJZOiByZXR1cm4gY3JlYXRlQ2FyTGlrZU9kb21ldHJ5KCk7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkRJRkZFUkVOVElBTF9PRE9NRVRSWTogcmV0dXJuIGNyZWF0ZURpZmZlcmVudGlhbE9kb21ldHJ5KCk7CisJCQlkZWZhdWx0OgorCQkJCXRocm93IG5ldyBJbGxlZ2FsQXJndW1lbnRFeGNlcHRpb24oIlRoZSBjbGFzcyAnIiArIGVDbGFzcy5nZXROYW1lKCkgKyAiJyBpcyBub3QgYSB2YWxpZCBjbGFzc2lmaWVyIik7CisJCX0KKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGNyZWF0ZUZyb21TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgU3RyaW5nIGluaXRpYWxWYWx1ZSkgeworCQlzd2l0Y2ggKGVEYXRhVHlwZS5nZXRDbGFzc2lmaWVySUQoKSkgeworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5TVEFUVVNfVFlQRToKKwkJCQlyZXR1cm4gY3JlYXRlU1RBVFVTX1RZUEVGcm9tU3RyaW5nKGVEYXRhVHlwZSwgaW5pdGlhbFZhbHVlKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuU0VSVklDRV9UWVBFOgorCQkJCXJldHVybiBjcmVhdGVTRVJWSUNFX1RZUEVGcm9tU3RyaW5nKGVEYXRhVHlwZSwgaW5pdGlhbFZhbHVlKTsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ09WQVJJQU5DRV9UWVBFOgorCQkJCXJldHVybiBjcmVhdGVDT1ZBUklBTkNFX1RZUEVGcm9tU3RyaW5nKGVEYXRhVHlwZSwgaW5pdGlhbFZhbHVlKTsKKwkJCWRlZmF1bHQ6CisJCQkJdGhyb3cgbmV3IElsbGVnYWxBcmd1bWVudEV4Y2VwdGlvbigiVGhlIGRhdGF0eXBlICciICsgZURhdGFUeXBlLmdldE5hbWUoKSArICInIGlzIG5vdCBhIHZhbGlkIGNsYXNzaWZpZXIiKTsKKwkJfQorCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgY29udmVydFRvU3RyaW5nKEVEYXRhVHlwZSBlRGF0YVR5cGUsIE9iamVjdCBpbnN0YW5jZVZhbHVlKSB7CisJCXN3aXRjaCAoZURhdGFUeXBlLmdldENsYXNzaWZpZXJJRCgpKSB7CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlNUQVRVU19UWVBFOgorCQkJCXJldHVybiBjb252ZXJ0U1RBVFVTX1RZUEVUb1N0cmluZyhlRGF0YVR5cGUsIGluc3RhbmNlVmFsdWUpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5TRVJWSUNFX1RZUEU6CisJCQkJcmV0dXJuIGNvbnZlcnRTRVJWSUNFX1RZUEVUb1N0cmluZyhlRGF0YVR5cGUsIGluc3RhbmNlVmFsdWUpOworCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5DT1ZBUklBTkNFX1RZUEU6CisJCQkJcmV0dXJuIGNvbnZlcnRDT1ZBUklBTkNFX1RZUEVUb1N0cmluZyhlRGF0YVR5cGUsIGluc3RhbmNlVmFsdWUpOworCQkJZGVmYXVsdDoKKwkJCQl0aHJvdyBuZXcgSWxsZWdhbEFyZ3VtZW50RXhjZXB0aW9uKCJUaGUgZGF0YXR5cGUgJyIgKyBlRGF0YVR5cGUuZ2V0TmFtZSgpICsgIicgaXMgbm90IGEgdmFsaWQgY2xhc3NpZmllciIpOworCQl9CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFJlZ2lvbk9mSW50ZXJlc3QgY3JlYXRlUmVnaW9uT2ZJbnRlcmVzdCgpIHsKKwkJUmVnaW9uT2ZJbnRlcmVzdEltcGwgcmVnaW9uT2ZJbnRlcmVzdCA9IG5ldyBSZWdpb25PZkludGVyZXN0SW1wbCgpOworCQlyZXR1cm4gcmVnaW9uT2ZJbnRlcmVzdDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUmFuZ2UgY3JlYXRlUmFuZ2UoKSB7CisJCVJhbmdlSW1wbCByYW5nZSA9IG5ldyBSYW5nZUltcGwoKTsKKwkJcmV0dXJuIHJhbmdlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBDYW1lcmFJbmZvIGNyZWF0ZUNhbWVyYUluZm8oKSB7CisJCUNhbWVyYUluZm9JbXBsIGNhbWVyYUluZm8gPSBuZXcgQ2FtZXJhSW5mb0ltcGwoKTsKKwkJcmV0dXJuIGNhbWVyYUluZm87CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEltdSBjcmVhdGVJbXUoKSB7CisJCUltdUltcGwgaW11ID0gbmV3IEltdUltcGwoKTsKKwkJcmV0dXJuIGltdTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTGFzZXJTY2FuIGNyZWF0ZUxhc2VyU2NhbigpIHsKKwkJTGFzZXJTY2FuSW1wbCBsYXNlclNjYW4gPSBuZXcgTGFzZXJTY2FuSW1wbCgpOworCQlyZXR1cm4gbGFzZXJTY2FuOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBJbWFnZSBjcmVhdGVJbWFnZSgpIHsKKwkJSW1hZ2VJbXBsIGltYWdlID0gbmV3IEltYWdlSW1wbCgpOworCQlyZXR1cm4gaW1hZ2U7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIENoYW5uZWxGbG9hdDMyIGNyZWF0ZUNoYW5uZWxGbG9hdDMyKCkgeworCQlDaGFubmVsRmxvYXQzMkltcGwgY2hhbm5lbEZsb2F0MzIgPSBuZXcgQ2hhbm5lbEZsb2F0MzJJbXBsKCk7CisJCXJldHVybiBjaGFubmVsRmxvYXQzMjsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQ29tcHJlc3NlZEltYWdlIGNyZWF0ZUNvbXByZXNzZWRJbWFnZSgpIHsKKwkJQ29tcHJlc3NlZEltYWdlSW1wbCBjb21wcmVzc2VkSW1hZ2UgPSBuZXcgQ29tcHJlc3NlZEltYWdlSW1wbCgpOworCQlyZXR1cm4gY29tcHJlc3NlZEltYWdlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBQb2ludENsb3VkIGNyZWF0ZVBvaW50Q2xvdWQoKSB7CisJCVBvaW50Q2xvdWRJbXBsIHBvaW50Q2xvdWQgPSBuZXcgUG9pbnRDbG91ZEltcGwoKTsKKwkJcmV0dXJuIHBvaW50Q2xvdWQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFBvaW50RmllbGQgY3JlYXRlUG9pbnRGaWVsZCgpIHsKKwkJUG9pbnRGaWVsZEltcGwgcG9pbnRGaWVsZCA9IG5ldyBQb2ludEZpZWxkSW1wbCgpOworCQlyZXR1cm4gcG9pbnRGaWVsZDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgUG9pbnRDbG91ZDIgY3JlYXRlUG9pbnRDbG91ZDIoKSB7CisJCVBvaW50Q2xvdWQySW1wbCBwb2ludENsb3VkMiA9IG5ldyBQb2ludENsb3VkMkltcGwoKTsKKwkJcmV0dXJuIHBvaW50Q2xvdWQyOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBKb2ludFN0YXRlIGNyZWF0ZUpvaW50U3RhdGUoKSB7CisJCUpvaW50U3RhdGVJbXBsIGpvaW50U3RhdGUgPSBuZXcgSm9pbnRTdGF0ZUltcGwoKTsKKwkJcmV0dXJuIGpvaW50U3RhdGU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5hdlNhdFN0YXR1cyBjcmVhdGVOYXZTYXRTdGF0dXMoKSB7CisJCU5hdlNhdFN0YXR1c0ltcGwgbmF2U2F0U3RhdHVzID0gbmV3IE5hdlNhdFN0YXR1c0ltcGwoKTsKKwkJcmV0dXJuIG5hdlNhdFN0YXR1czsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTmF2U2F0Rml4IGNyZWF0ZU5hdlNhdEZpeCgpIHsKKwkJTmF2U2F0Rml4SW1wbCBuYXZTYXRGaXggPSBuZXcgTmF2U2F0Rml4SW1wbCgpOworCQlyZXR1cm4gbmF2U2F0Rml4OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBKb3kgY3JlYXRlSm95KCkgeworCQlKb3lJbXBsIGpveSA9IG5ldyBKb3lJbXBsKCk7CisJCXJldHVybiBqb3k7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEpveUZlZWRiYWNrIGNyZWF0ZUpveUZlZWRiYWNrKCkgeworCQlKb3lGZWVkYmFja0ltcGwgam95RmVlZGJhY2sgPSBuZXcgSm95RmVlZGJhY2tJbXBsKCk7CisJCXJldHVybiBqb3lGZWVkYmFjazsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgSm95RmVlZGJhY2tBcnJheSBjcmVhdGVKb3lGZWVkYmFja0FycmF5KCkgeworCQlKb3lGZWVkYmFja0FycmF5SW1wbCBqb3lGZWVkYmFja0FycmF5ID0gbmV3IEpveUZlZWRiYWNrQXJyYXlJbXBsKCk7CisJCXJldHVybiBqb3lGZWVkYmFja0FycmF5OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBDYXJMaWtlT2RvbWV0cnkgY3JlYXRlQ2FyTGlrZU9kb21ldHJ5KCkgeworCQlDYXJMaWtlT2RvbWV0cnlJbXBsIGNhckxpa2VPZG9tZXRyeSA9IG5ldyBDYXJMaWtlT2RvbWV0cnlJbXBsKCk7CisJCXJldHVybiBjYXJMaWtlT2RvbWV0cnk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIERpZmZlcmVudGlhbE9kb21ldHJ5IGNyZWF0ZURpZmZlcmVudGlhbE9kb21ldHJ5KCkgeworCQlEaWZmZXJlbnRpYWxPZG9tZXRyeUltcGwgZGlmZmVyZW50aWFsT2RvbWV0cnkgPSBuZXcgRGlmZmVyZW50aWFsT2RvbWV0cnlJbXBsKCk7CisJCXJldHVybiBkaWZmZXJlbnRpYWxPZG9tZXRyeTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU1RBVFVTX1RZUEUgY3JlYXRlU1RBVFVTX1RZUEVGcm9tU3RyaW5nKEVEYXRhVHlwZSBlRGF0YVR5cGUsIFN0cmluZyBpbml0aWFsVmFsdWUpIHsKKwkJU1RBVFVTX1RZUEUgcmVzdWx0ID0gU1RBVFVTX1RZUEUuZ2V0KGluaXRpYWxWYWx1ZSk7CisJCWlmIChyZXN1bHQgPT0gbnVsbCkgdGhyb3cgbmV3IElsbGVnYWxBcmd1bWVudEV4Y2VwdGlvbigiVGhlIHZhbHVlICciICsgaW5pdGlhbFZhbHVlICsgIicgaXMgbm90IGEgdmFsaWQgZW51bWVyYXRvciBvZiAnIiArIGVEYXRhVHlwZS5nZXROYW1lKCkgKyAiJyIpOworCQlyZXR1cm4gcmVzdWx0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTdHJpbmcgY29udmVydFNUQVRVU19UWVBFVG9TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgT2JqZWN0IGluc3RhbmNlVmFsdWUpIHsKKwkJcmV0dXJuIGluc3RhbmNlVmFsdWUgPT0gbnVsbCA/IG51bGwgOiBpbnN0YW5jZVZhbHVlLnRvU3RyaW5nKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFNFUlZJQ0VfVFlQRSBjcmVhdGVTRVJWSUNFX1RZUEVGcm9tU3RyaW5nKEVEYXRhVHlwZSBlRGF0YVR5cGUsIFN0cmluZyBpbml0aWFsVmFsdWUpIHsKKwkJU0VSVklDRV9UWVBFIHJlc3VsdCA9IFNFUlZJQ0VfVFlQRS5nZXQoaW5pdGlhbFZhbHVlKTsKKwkJaWYgKHJlc3VsdCA9PSBudWxsKSB0aHJvdyBuZXcgSWxsZWdhbEFyZ3VtZW50RXhjZXB0aW9uKCJUaGUgdmFsdWUgJyIgKyBpbml0aWFsVmFsdWUgKyAiJyBpcyBub3QgYSB2YWxpZCBlbnVtZXJhdG9yIG9mICciICsgZURhdGFUeXBlLmdldE5hbWUoKSArICInIik7CisJCXJldHVybiByZXN1bHQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0cmluZyBjb252ZXJ0U0VSVklDRV9UWVBFVG9TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgT2JqZWN0IGluc3RhbmNlVmFsdWUpIHsKKwkJcmV0dXJuIGluc3RhbmNlVmFsdWUgPT0gbnVsbCA/IG51bGwgOiBpbnN0YW5jZVZhbHVlLnRvU3RyaW5nKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIENPVkFSSUFOQ0VfVFlQRSBjcmVhdGVDT1ZBUklBTkNFX1RZUEVGcm9tU3RyaW5nKEVEYXRhVHlwZSBlRGF0YVR5cGUsIFN0cmluZyBpbml0aWFsVmFsdWUpIHsKKwkJQ09WQVJJQU5DRV9UWVBFIHJlc3VsdCA9IENPVkFSSUFOQ0VfVFlQRS5nZXQoaW5pdGlhbFZhbHVlKTsKKwkJaWYgKHJlc3VsdCA9PSBudWxsKSB0aHJvdyBuZXcgSWxsZWdhbEFyZ3VtZW50RXhjZXB0aW9uKCJUaGUgdmFsdWUgJyIgKyBpbml0aWFsVmFsdWUgKyAiJyBpcyBub3QgYSB2YWxpZCBlbnVtZXJhdG9yIG9mICciICsgZURhdGFUeXBlLmdldE5hbWUoKSArICInIik7CisJCXJldHVybiByZXN1bHQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0cmluZyBjb252ZXJ0Q09WQVJJQU5DRV9UWVBFVG9TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgT2JqZWN0IGluc3RhbmNlVmFsdWUpIHsKKwkJcmV0dXJuIGluc3RhbmNlVmFsdWUgPT0gbnVsbCA/IG51bGwgOiBpbnN0YW5jZVZhbHVlLnRvU3RyaW5nKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlIGdldFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlKCkgeworCQlyZXR1cm4gKFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlKWdldEVQYWNrYWdlKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZGVwcmVjYXRlZAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlARGVwcmVjYXRlZAorCXB1YmxpYyBzdGF0aWMgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UgZ2V0UGFja2FnZSgpIHsKKwkJcmV0dXJuIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRTsKKwl9CisKK30gLy8gU2Vuc29yX2RhdGF0eXBlc0ZhY3RvcnlJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL2ltcGwvU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWI4N2RkZQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvaW1wbC9TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwuamF2YQpAQCAtMCwwICsxLDE5MTcgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRW51bTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVSZWZlcmVuY2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRVBhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTC5Sb2JvdE1MUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuaW1wbC5Sb2JvdE1MUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmFjdGlvbmxpYl9kYXRhdHlwZXMuaW1wbC5BY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLkRpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZGlhZ25vc3RpY19kYXRhdHlwZXMuaW1wbC5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5nZW9tZXRyeV9kYXRhdHlwZXMuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLmltcGwuR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuTmF2X2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm5hdl9kYXRhdHlwZXMuaW1wbC5OYXZfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuT2FycDFfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnAxX2RhdGF0eXBlcy5pbXBsLk9hcnAxX2RhdGF0eXBlc1BhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLk9hcnA0X2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwNF9kYXRhdHlwZXMuaW1wbC5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYW1lcmFJbmZvOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNhckxpa2VPZG9tZXRyeTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DaGFubmVsRmxvYXQzMjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Db21wcmVzc2VkSW1hZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuRGlmZmVyZW50aWFsT2RvbWV0cnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW1hZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW11OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpvaW50U3RhdGU7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm95OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpveUZlZWRiYWNrOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpveUZlZWRiYWNrQXJyYXk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTGFzZXJTY2FuOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdEZpeDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRTdGF0dXM7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludENsb3VkMjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludEZpZWxkOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlJhbmdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlJlZ2lvbk9mSW50ZXJlc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc0ZhY3Rvcnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UudW1sMi51bWwuVU1MUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPlBhY2thZ2U8L2I+LgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwgZXh0ZW5kcyBFUGFja2FnZUltcGwgaW1wbGVtZW50cyBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZSB7CisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgcmVnaW9uT2ZJbnRlcmVzdEVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyByYW5nZUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBjYW1lcmFJbmZvRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGltdUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBsYXNlclNjYW5FQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgaW1hZ2VFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgY2hhbm5lbEZsb2F0MzJFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgY29tcHJlc3NlZEltYWdlRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIHBvaW50Q2xvdWRFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgcG9pbnRGaWVsZEVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBwb2ludENsb3VkMkVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBqb2ludFN0YXRlRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIG5hdlNhdFN0YXR1c0VDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBuYXZTYXRGaXhFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3Mgam95RUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGpveUZlZWRiYWNrRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGpveUZlZWRiYWNrQXJyYXlFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgY2FyTGlrZU9kb21ldHJ5RUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGRpZmZlcmVudGlhbE9kb21ldHJ5RUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUVudW0gc3RhdHVTX1RZUEVFRW51bSA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVFbnVtIHNlcnZpY0VfVFlQRUVFbnVtID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUVudW0gY292YXJpYW5jRV9UWVBFRUVudW0gPSBudWxsOworCisJLyoqCisJICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgbW9kZWwgPGI+UGFja2FnZTwvYj4sIHJlZ2lzdGVyZWQgd2l0aAorCSAqIHtAbGluayBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UuUmVnaXN0cnkgRVBhY2thZ2UuUmVnaXN0cnl9IGJ5IHRoZSBwYWNrYWdlCisJICogcGFja2FnZSBVUkkgdmFsdWUuCisJICogPHA+Tm90ZTogdGhlIGNvcnJlY3Qgd2F5IHRvIGNyZWF0ZSB0aGUgcGFja2FnZSBpcyB2aWEgdGhlIHN0YXRpYworCSAqIGZhY3RvcnkgbWV0aG9kIHtAbGluayAjaW5pdCBpbml0KCl9LCB3aGljaCBhbHNvIHBlcmZvcm1zCisJICogaW5pdGlhbGl6YXRpb24gb2YgdGhlIHBhY2thZ2UsIG9yIHJldHVybnMgdGhlIHJlZ2lzdGVyZWQgcGFja2FnZSwKKwkgKiBpZiBvbmUgYWxyZWFkeSBleGlzdHMuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4gPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2UuUmVnaXN0cnkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlI2VOU19VUkkKKwkgKiBAc2VlICNpbml0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwoKSB7CisJCXN1cGVyKGVOU19VUkksIFNlbnNvcl9kYXRhdHlwZXNGYWN0b3J5LmVJTlNUQU5DRSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBzdGF0aWMgYm9vbGVhbiBpc0luaXRlZCA9IGZhbHNlOworCisJLyoqCisJICogQ3JlYXRlcywgcmVnaXN0ZXJzLCBhbmQgaW5pdGlhbGl6ZXMgdGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGlzIG1vZGVsLCBhbmQgZm9yIGFueSBvdGhlcnMgdXBvbiB3aGljaCBpdCBkZXBlbmRzLgorCSAqIAorCSAqIDxwPlRoaXMgbWV0aG9kIGlzIHVzZWQgdG8gaW5pdGlhbGl6ZSB7QGxpbmsgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UjZUlOU1RBTkNFfSB3aGVuIHRoYXQgZmllbGQgaXMgYWNjZXNzZWQuCisJICogQ2xpZW50cyBzaG91bGQgbm90IGludm9rZSBpdCBkaXJlY3RseS4gSW5zdGVhZCwgdGhleSBzaG91bGQgc2ltcGx5IGFjY2VzcyB0aGF0IGZpZWxkIHRvIG9idGFpbiB0aGUgcGFja2FnZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPiA8IS0tCisJICogZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2VOU19VUkkKKwkgKiBAc2VlICNjcmVhdGVQYWNrYWdlQ29udGVudHMoKQorCSAqIEBzZWUgI2luaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgc3RhdGljIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlIGluaXQoKSB7CisJCWlmIChpc0luaXRlZCkgcmV0dXJuIChTZW5zb3JfZGF0YXR5cGVzUGFja2FnZSlFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKTsKKworCQkvLyBPYnRhaW4gb3IgY3JlYXRlIGFuZCByZWdpc3RlciBwYWNrYWdlCisJCVNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCB0aGVTZW5zb3JfZGF0YXR5cGVzUGFja2FnZSA9IChTZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldChlTlNfVVJJKSBpbnN0YW5jZW9mIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldChlTlNfVVJJKSA6IG5ldyBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwoKSk7CisKKwkJaXNJbml0ZWQgPSB0cnVlOworCisJCS8vIEluaXRpYWxpemUgc2ltcGxlIGRlcGVuZGVuY2llcworCQlVTUxQYWNrYWdlLmVJTlNUQU5DRS5lQ2xhc3MoKTsKKworCQkvLyBPYnRhaW4gb3IgY3JlYXRlIGFuZCByZWdpc3RlciBpbnRlcmRlcGVuZGVuY2llcworCQlSb2JvdE1MUGFja2FnZUltcGwgdGhlUm9ib3RNTFBhY2thZ2UgPSAoUm9ib3RNTFBhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShSb2JvdE1MUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIFJvYm90TUxQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKFJvYm90TUxQYWNrYWdlLmVOU19VUkkpIDogUm9ib3RNTFBhY2thZ2UuZUlOU1RBTkNFKTsKKwkJRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbCB0aGVEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UgPSAoRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSA6IERpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UpOworCQlHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbCB0aGVHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlID0gKEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIDogR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UpOworCQlOYXZfZGF0YXR5cGVzUGFja2FnZUltcGwgdGhlTmF2X2RhdGF0eXBlc1BhY2thZ2UgPSAoTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShOYXZfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIE5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKE5hdl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIDogTmF2X2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFKTsKKwkJQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZUFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlID0gKEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSA6IEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRSk7CisJCU9hcnAxX2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZU9hcnAxX2RhdGF0eXBlc1BhY2thZ2UgPSAoT2FycDFfZGF0YXR5cGVzUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgOiBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRSk7CisJCU9hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZU9hcnA0X2RhdGF0eXBlc1BhY2thZ2UgPSAoT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgOiBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRSk7CisJCVN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZSA9IChTdGRfZGF0YXR5cGVzUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKFN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoU3RkX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgOiBTdGRfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UpOworCisJCS8vIENyZWF0ZSBwYWNrYWdlIG1ldGEtZGF0YSBvYmplY3RzCisJCXRoZVNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVSb2JvdE1MUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVOYXZfZGF0YXR5cGVzUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZU9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZU9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCisJCS8vIEluaXRpYWxpemUgY3JlYXRlZCBtZXRhLWRhdGEKKwkJdGhlU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVSb2JvdE1MUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZURpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZUdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVOYXZfZGF0YXR5cGVzUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZUFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlT2FycDFfZGF0YXR5cGVzUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZU9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisKKwkJLy8gTWFyayBtZXRhLWRhdGEgdG8gaW5kaWNhdGUgaXQgY2FuJ3QgYmUgY2hhbmdlZAorCQl0aGVTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5mcmVlemUoKTsKKworICAKKwkJLy8gVXBkYXRlIHRoZSByZWdpc3RyeSBhbmQgcmV0dXJuIHRoZSBwYWNrYWdlCisJCUVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLnB1dChTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJLCB0aGVTZW5zb3JfZGF0YXR5cGVzUGFja2FnZSk7CisJCXJldHVybiB0aGVTZW5zb3JfZGF0YXR5cGVzUGFja2FnZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldFJlZ2lvbk9mSW50ZXJlc3QoKSB7CisJCXJldHVybiByZWdpb25PZkludGVyZXN0RUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFJlZ2lvbk9mSW50ZXJlc3RfWF9vZmZzZXQoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlyZWdpb25PZkludGVyZXN0RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0UmVnaW9uT2ZJbnRlcmVzdF9ZX29mZnNldCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXJlZ2lvbk9mSW50ZXJlc3RFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRSZWdpb25PZkludGVyZXN0X0hlaWdodCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXJlZ2lvbk9mSW50ZXJlc3RFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgyKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRSZWdpb25PZkludGVyZXN0X0RvX3JlY3RpZnkoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlyZWdpb25PZkludGVyZXN0RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0UmVnaW9uT2ZJbnRlcmVzdF9XaWR0aCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXJlZ2lvbk9mSW50ZXJlc3RFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg0KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldFJhbmdlKCkgeworCQlyZXR1cm4gcmFuZ2VFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0UmFuZ2VfVUxUUkFTT1VORCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXJhbmdlRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0UmFuZ2VfSU5GUkFSRUQoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlyYW5nZUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldFJhbmdlX0hlYWRlcigpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKXJhbmdlRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMik7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0UmFuZ2VfUmFkaWF0aW9uX3R5cGUoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlyYW5nZUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDMpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFJhbmdlX0ZpZWxkX29mX3ZpZXcoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlyYW5nZUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFJhbmdlX01pbl9yYW5nZSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXJhbmdlRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoNSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0UmFuZ2VfTWF4X3JhbmdlKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpcmFuZ2VFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg2KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRSYW5nZV9SYW5nZSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXJhbmdlRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoNyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRDYW1lcmFJbmZvKCkgeworCQlyZXR1cm4gY2FtZXJhSW5mb0VDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRDYW1lcmFJbmZvX0hlYWRlcigpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKWNhbWVyYUluZm9FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRDYW1lcmFJbmZvX0hlaWdodCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWNhbWVyYUluZm9FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRDYW1lcmFJbmZvX1dpZHRoKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpY2FtZXJhSW5mb0VDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDIpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldENhbWVyYUluZm9fRGlzdG9yc2lvbl9tb2RlbCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWNhbWVyYUluZm9FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRDYW1lcmFJbmZvX0QoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSljYW1lcmFJbmZvRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoNCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0Q2FtZXJhSW5mb19LKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpY2FtZXJhSW5mb0VDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldENhbWVyYUluZm9fUigpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWNhbWVyYUluZm9FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg2KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRDYW1lcmFJbmZvX1AoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSljYW1lcmFJbmZvRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoNyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0Q2FtZXJhSW5mb19CaW5uaW5nX3goKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSljYW1lcmFJbmZvRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoOCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0Q2FtZXJhSW5mb19CaW5uaW5nX3koKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSljYW1lcmFJbmZvRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoOSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0Q2FtZXJhSW5mb19Sb2koKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSljYW1lcmFJbmZvRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMTApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0SW11KCkgeworCQlyZXR1cm4gaW11RUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldEltdV9IZWFkZXIoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlpbXVFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRJbXVfT3JpZW50YXRpb24oKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlpbXVFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRJbXVfT3JpZW50YXRpb25fY292YXJpYW5jZSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWltdUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDIpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldEltdV9Bbmd1bGFyX3ZlbG9jaXR5KCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpaW11RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0SW11X0FuZ3VsYXJfdmVsb2NpdHlfY292YXJpYW5jZSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWltdUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldEltdV9MaW5lYXJfYWNjZWxlcmF0aW9uKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpaW11RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoNSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0SW11X0xpbmVhcl9hY2NlbGVyYXRpb25fY292YXJpYW5jZSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWltdUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDYpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0TGFzZXJTY2FuKCkgeworCQlyZXR1cm4gbGFzZXJTY2FuRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldExhc2VyU2Nhbl9IZWFkZXIoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlsYXNlclNjYW5FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRMYXNlclNjYW5fQW5nbGVfbWluKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpbGFzZXJTY2FuRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0TGFzZXJTY2FuX0FuZ2xlX21heCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWxhc2VyU2NhbkVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDIpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldExhc2VyU2Nhbl9BbmdsZV9pbmNyZW1lbnQoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlsYXNlclNjYW5FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRMYXNlclNjYW5fVGltZV9pbmNyZW1lbnQoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlsYXNlclNjYW5FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg0KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRMYXNlclNjYW5fU2Nhbl90aW1lKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpbGFzZXJTY2FuRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoNSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0TGFzZXJTY2FuX1JhbmdlX21pbigpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWxhc2VyU2NhbkVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDYpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldExhc2VyU2Nhbl9SYW5nZV9tYXgoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlsYXNlclNjYW5FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg3KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRMYXNlclNjYW5fUmFuZ2UoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlsYXNlclNjYW5FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg4KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRMYXNlclNjYW5fSW50ZW5zaXRpZXMoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlsYXNlclNjYW5FQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg5KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldEltYWdlKCkgeworCQlyZXR1cm4gaW1hZ2VFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0SW1hZ2VfSGVhZGVyKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpaW1hZ2VFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRJbWFnZV9IZWlnaHQoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlpbWFnZUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldEltYWdlX1dpZHRoKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpaW1hZ2VFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgyKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRJbWFnZV9FbmNvZGluZygpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWltYWdlRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0SW1hZ2VfSXNfYmlnZW5kaWFuKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpaW1hZ2VFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg0KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRJbWFnZV9TdGVwKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpaW1hZ2VFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg1KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRJbWFnZV9EYXRhKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpaW1hZ2VFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg2KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldENoYW5uZWxGbG9hdDMyKCkgeworCQlyZXR1cm4gY2hhbm5lbEZsb2F0MzJFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0Q2hhbm5lbEZsb2F0MzJfTmFtZSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWNoYW5uZWxGbG9hdDMyRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0Q2hhbm5lbEZsb2F0MzJfVmFsdWVzKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpY2hhbm5lbEZsb2F0MzJFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldENvbXByZXNzZWRJbWFnZSgpIHsKKwkJcmV0dXJuIGNvbXByZXNzZWRJbWFnZUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRDb21wcmVzc2VkSW1hZ2VfSGVhZGVyKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpY29tcHJlc3NlZEltYWdlRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0Q29tcHJlc3NlZEltYWdlX0Zvcm1hdCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWNvbXByZXNzZWRJbWFnZUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldENvbXByZXNzZWRJbWFnZV9EYXRhKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpY29tcHJlc3NlZEltYWdlRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMik7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRQb2ludENsb3VkKCkgeworCQlyZXR1cm4gcG9pbnRDbG91ZEVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRQb2ludENsb3VkX0hlYWRlcigpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKXBvaW50Q2xvdWRFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRQb2ludENsb3VkX1BvaW50cygpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKXBvaW50Q2xvdWRFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRQb2ludENsb3VkX0NoYW5uZWxzKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpcG9pbnRDbG91ZEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDIpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0UG9pbnRGaWVsZCgpIHsKKwkJcmV0dXJuIHBvaW50RmllbGRFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0UG9pbnRGaWVsZF9OYW1lKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpcG9pbnRGaWVsZEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFBvaW50RmllbGRfT2Zmc2V0KCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpcG9pbnRGaWVsZEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFBvaW50RmllbGRfRGF0YXR5cGUoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlwb2ludEZpZWxkRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMik7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0UG9pbnRGaWVsZF9Db3VudCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXBvaW50RmllbGRFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldFBvaW50Q2xvdWQyKCkgeworCQlyZXR1cm4gcG9pbnRDbG91ZDJFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0UG9pbnRDbG91ZDJfSGVhZGVyKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpcG9pbnRDbG91ZDJFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRQb2ludENsb3VkMl9IZWlnaHQoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlwb2ludENsb3VkMkVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFBvaW50Q2xvdWQyX1dpZHRoKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpcG9pbnRDbG91ZDJFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgyKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRQb2ludENsb3VkMl9GaWVsZHMoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlwb2ludENsb3VkMkVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDMpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFBvaW50Q2xvdWQyX0lzX2JpZ2VuZGlhbigpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXBvaW50Q2xvdWQyRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoNCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0UG9pbnRDbG91ZDJfUG9pbnRfc3RlcCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXBvaW50Q2xvdWQyRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoNSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0UG9pbnRDbG91ZDJfUm93X3N0ZXAoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlwb2ludENsb3VkMkVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDYpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFBvaW50Q2xvdWQyX0RhdGEoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlwb2ludENsb3VkMkVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDcpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldFBvaW50Q2xvdWQyX0lzX2RlbnNlKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpcG9pbnRDbG91ZDJFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg4KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldEpvaW50U3RhdGUoKSB7CisJCXJldHVybiBqb2ludFN0YXRlRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldEpvaW50U3RhdGVfTmFtZSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWpvaW50U3RhdGVFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRKb2ludFN0YXRlX1Bvc2l0aW9uKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpam9pbnRTdGF0ZUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldEpvaW50U3RhdGVfVmVsb2NpdHkoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlqb2ludFN0YXRlRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMik7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0Sm9pbnRTdGF0ZV9FZmZvcnQoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlqb2ludFN0YXRlRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXROYXZTYXRTdGF0dXMoKSB7CisJCXJldHVybiBuYXZTYXRTdGF0dXNFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0TmF2U2F0U3RhdHVzX1NUQVRVU19OT19GSVgoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSluYXZTYXRTdGF0dXNFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXROYXZTYXRTdGF0dXNfU1RBVFVTX0ZJWCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKW5hdlNhdFN0YXR1c0VDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldE5hdlNhdFN0YXR1c19TVEFUVVNfU0JBU19GSVgoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSluYXZTYXRTdGF0dXNFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgyKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXROYXZTYXRTdGF0dXNfU1RBVFVTX0dCQVNfRklYKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpbmF2U2F0U3RhdHVzRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0TmF2U2F0U3RhdHVzX1N0YXR1cygpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKW5hdlNhdFN0YXR1c0VDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldE5hdlNhdFN0YXR1c19TRVJWSUNFX0dQUygpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKW5hdlNhdFN0YXR1c0VDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldE5hdlNhdFN0YXR1c19TRVJWSUNFX0dMT05BU1MoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSluYXZTYXRTdGF0dXNFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg2KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXROYXZTYXRTdGF0dXNfU0VSVklDRV9DT01QQVNTKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpbmF2U2F0U3RhdHVzRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoNyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0TmF2U2F0U3RhdHVzX1NFUlZJQ0VfR0FMSUxFTygpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKW5hdlNhdFN0YXR1c0VDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDgpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldE5hdlNhdFN0YXR1c19TZXJ2aWNlKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpbmF2U2F0U3RhdHVzRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoOSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXROYXZTYXRGaXgoKSB7CisJCXJldHVybiBuYXZTYXRGaXhFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0TmF2U2F0Rml4X1N0YXR1cygpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKW5hdlNhdEZpeEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldE5hdlNhdEZpeF9TZXJ2aWNlKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpbmF2U2F0Rml4RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0TmF2U2F0Rml4X0hlYWRlcigpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKW5hdlNhdEZpeEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDIpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldE5hdlNhdEZpeF9MYXRpdHVkZSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKW5hdlNhdEZpeEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDMpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldE5hdlNhdEZpeF9Mb25naXR1ZGUoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSluYXZTYXRGaXhFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg0KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXROYXZTYXRGaXhfQWx0aXR1ZGUoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSluYXZTYXRGaXhFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg1KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXROYXZTYXRGaXhfUG9zaXRpb25fY292YXJpYW5jZSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKW5hdlNhdEZpeEVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDYpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldE5hdlNhdEZpeF9Qb3NpdGlvbl9jb3ZhcmlhbmNlX3R5cGUoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSluYXZTYXRGaXhFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg3KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldEpveSgpIHsKKwkJcmV0dXJuIGpveUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRKb3lfSGVhZGVyKCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2Upam95RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0Sm95X0F4ZXMoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlqb3lFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRKb3lfQnV0dG9ucygpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWpveUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDIpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0Sm95RmVlZGJhY2soKSB7CisJCXJldHVybiBqb3lGZWVkYmFja0VDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRKb3lGZWVkYmFja19UWVBFX0xFRCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWpveUZlZWRiYWNrRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0Sm95RmVlZGJhY2tfVFlQRV9SVU1CTEUoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlqb3lGZWVkYmFja0VDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldEpveUZlZWRiYWNrX1RZUEVfQlVaWkVSKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpam95RmVlZGJhY2tFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgyKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRKb3lGZWVkYmFja19UeXBlKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpam95RmVlZGJhY2tFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRKb3lGZWVkYmFja19JZCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWpveUZlZWRiYWNrRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoNCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0Sm95RmVlZGJhY2tfSW50ZW5zaXR5KCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpam95RmVlZGJhY2tFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCg1KTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldEpveUZlZWRiYWNrQXJyYXkoKSB7CisJCXJldHVybiBqb3lGZWVkYmFja0FycmF5RUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldEpveUZlZWRiYWNrQXJyYXlfQXJyYXkoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlqb3lGZWVkYmFja0FycmF5RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVDbGFzcyBnZXRDYXJMaWtlT2RvbWV0cnkoKSB7CisJCXJldHVybiBjYXJMaWtlT2RvbWV0cnlFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0Q2FyTGlrZU9kb21ldHJ5X0hlYWRlcigpIHsKKwkJcmV0dXJuIChFUmVmZXJlbmNlKWNhckxpa2VPZG9tZXRyeUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldENhckxpa2VPZG9tZXRyeV9TdGVlcmluZ19hbmdsZSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWNhckxpa2VPZG9tZXRyeUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldENhckxpa2VPZG9tZXRyeV9MZWZ0X3JlYXJfd2hlZWxfZGlzdGFuY2UoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSljYXJMaWtlT2RvbWV0cnlFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgyKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRDYXJMaWtlT2RvbWV0cnlfUmlnaHRfcmVhcl93aGVlbF9kaXN0YW5jZSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWNhckxpa2VPZG9tZXRyeUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDMpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldENhckxpa2VPZG9tZXRyeV9SaWdodF9yZWFyX3doZWVsX3ZlbG9jaXR5KCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpY2FyTGlrZU9kb21ldHJ5RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoNCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0Q2FyTGlrZU9kb21ldHJ5X0xlZnRfcmVhcl93aGVlbF92ZWxvY2l0eSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWNhckxpa2VPZG9tZXRyeUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0RGlmZmVyZW50aWFsT2RvbWV0cnkoKSB7CisJCXJldHVybiBkaWZmZXJlbnRpYWxPZG9tZXRyeUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXREaWZmZXJlbnRpYWxPZG9tZXRyeV9IZWFkZXIoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlkaWZmZXJlbnRpYWxPZG9tZXRyeUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldERpZmZlcmVudGlhbE9kb21ldHJ5X1JpZ2h0X2Rpc3RhbmNlKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpZGlmZmVyZW50aWFsT2RvbWV0cnlFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXREaWZmZXJlbnRpYWxPZG9tZXRyeV9MZWZ0X2Rpc3RhbmNlKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpZGlmZmVyZW50aWFsT2RvbWV0cnlFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgyKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXREaWZmZXJlbnRpYWxPZG9tZXRyeV9MZWZ0X3ZlbG9jaXR5KCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpZGlmZmVyZW50aWFsT2RvbWV0cnlFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXREaWZmZXJlbnRpYWxPZG9tZXRyeV9SaWdodF92ZWxvY2l0eSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWRpZmZlcmVudGlhbE9kb21ldHJ5RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoNCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVFbnVtIGdldFNUQVRVU19UWVBFKCkgeworCQlyZXR1cm4gc3RhdHVTX1RZUEVFRW51bTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUVudW0gZ2V0U0VSVklDRV9UWVBFKCkgeworCQlyZXR1cm4gc2VydmljRV9UWVBFRUVudW07CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVFbnVtIGdldENPVkFSSUFOQ0VfVFlQRSgpIHsKKwkJcmV0dXJuIGNvdmFyaWFuY0VfVFlQRUVFbnVtOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTZW5zb3JfZGF0YXR5cGVzRmFjdG9yeSBnZXRTZW5zb3JfZGF0YXR5cGVzRmFjdG9yeSgpIHsKKwkJcmV0dXJuIChTZW5zb3JfZGF0YXR5cGVzRmFjdG9yeSlnZXRFRmFjdG9yeUluc3RhbmNlKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBib29sZWFuIGlzQ3JlYXRlZCA9IGZhbHNlOworCisJLyoqCisJICogQ3JlYXRlcyB0aGUgbWV0YS1tb2RlbCBvYmplY3RzIGZvciB0aGUgcGFja2FnZS4gIFRoaXMgbWV0aG9kIGlzCisJICogZ3VhcmRlZCB0byBoYXZlIG5vIGFmZmVjdCBvbiBhbnkgaW52b2NhdGlvbiBidXQgaXRzIGZpcnN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIGNyZWF0ZVBhY2thZ2VDb250ZW50cygpIHsKKwkJaWYgKGlzQ3JlYXRlZCkgcmV0dXJuOworCQlpc0NyZWF0ZWQgPSB0cnVlOworCisJCS8vIENyZWF0ZSBjbGFzc2VzIGFuZCB0aGVpciBmZWF0dXJlcworCQlyZWdpb25PZkludGVyZXN0RUNsYXNzID0gY3JlYXRlRUNsYXNzKFJFR0lPTl9PRl9JTlRFUkVTVCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUocmVnaW9uT2ZJbnRlcmVzdEVDbGFzcywgUkVHSU9OX09GX0lOVEVSRVNUX19YT0ZGU0VUKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShyZWdpb25PZkludGVyZXN0RUNsYXNzLCBSRUdJT05fT0ZfSU5URVJFU1RfX1lPRkZTRVQpOworCQljcmVhdGVFQXR0cmlidXRlKHJlZ2lvbk9mSW50ZXJlc3RFQ2xhc3MsIFJFR0lPTl9PRl9JTlRFUkVTVF9fSEVJR0hUKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShyZWdpb25PZkludGVyZXN0RUNsYXNzLCBSRUdJT05fT0ZfSU5URVJFU1RfX0RPX1JFQ1RJRlkpOworCQljcmVhdGVFQXR0cmlidXRlKHJlZ2lvbk9mSW50ZXJlc3RFQ2xhc3MsIFJFR0lPTl9PRl9JTlRFUkVTVF9fV0lEVEgpOworCisJCXJhbmdlRUNsYXNzID0gY3JlYXRlRUNsYXNzKFJBTkdFKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShyYW5nZUVDbGFzcywgUkFOR0VfX1VMVFJBU09VTkQpOworCQljcmVhdGVFQXR0cmlidXRlKHJhbmdlRUNsYXNzLCBSQU5HRV9fSU5GUkFSRUQpOworCQljcmVhdGVFUmVmZXJlbmNlKHJhbmdlRUNsYXNzLCBSQU5HRV9fSEVBREVSKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShyYW5nZUVDbGFzcywgUkFOR0VfX1JBRElBVElPTl9UWVBFKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShyYW5nZUVDbGFzcywgUkFOR0VfX0ZJRUxEX09GX1ZJRVcpOworCQljcmVhdGVFQXR0cmlidXRlKHJhbmdlRUNsYXNzLCBSQU5HRV9fTUlOX1JBTkdFKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShyYW5nZUVDbGFzcywgUkFOR0VfX01BWF9SQU5HRSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUocmFuZ2VFQ2xhc3MsIFJBTkdFX19SQU5HRSk7CisKKwkJY2FtZXJhSW5mb0VDbGFzcyA9IGNyZWF0ZUVDbGFzcyhDQU1FUkFfSU5GTyk7CisJCWNyZWF0ZUVSZWZlcmVuY2UoY2FtZXJhSW5mb0VDbGFzcywgQ0FNRVJBX0lORk9fX0hFQURFUik7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoY2FtZXJhSW5mb0VDbGFzcywgQ0FNRVJBX0lORk9fX0hFSUdIVCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoY2FtZXJhSW5mb0VDbGFzcywgQ0FNRVJBX0lORk9fX1dJRFRIKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShjYW1lcmFJbmZvRUNsYXNzLCBDQU1FUkFfSU5GT19fRElTVE9SU0lPTl9NT0RFTCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoY2FtZXJhSW5mb0VDbGFzcywgQ0FNRVJBX0lORk9fX0QpOworCQljcmVhdGVFQXR0cmlidXRlKGNhbWVyYUluZm9FQ2xhc3MsIENBTUVSQV9JTkZPX19LKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShjYW1lcmFJbmZvRUNsYXNzLCBDQU1FUkFfSU5GT19fUik7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoY2FtZXJhSW5mb0VDbGFzcywgQ0FNRVJBX0lORk9fX1ApOworCQljcmVhdGVFQXR0cmlidXRlKGNhbWVyYUluZm9FQ2xhc3MsIENBTUVSQV9JTkZPX19CSU5OSU5HX1gpOworCQljcmVhdGVFQXR0cmlidXRlKGNhbWVyYUluZm9FQ2xhc3MsIENBTUVSQV9JTkZPX19CSU5OSU5HX1kpOworCQljcmVhdGVFUmVmZXJlbmNlKGNhbWVyYUluZm9FQ2xhc3MsIENBTUVSQV9JTkZPX19ST0kpOworCisJCWltdUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhJTVUpOworCQljcmVhdGVFUmVmZXJlbmNlKGltdUVDbGFzcywgSU1VX19IRUFERVIpOworCQljcmVhdGVFUmVmZXJlbmNlKGltdUVDbGFzcywgSU1VX19PUklFTlRBVElPTik7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoaW11RUNsYXNzLCBJTVVfX09SSUVOVEFUSU9OX0NPVkFSSUFOQ0UpOworCQljcmVhdGVFUmVmZXJlbmNlKGltdUVDbGFzcywgSU1VX19BTkdVTEFSX1ZFTE9DSVRZKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShpbXVFQ2xhc3MsIElNVV9fQU5HVUxBUl9WRUxPQ0lUWV9DT1ZBUklBTkNFKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShpbXVFQ2xhc3MsIElNVV9fTElORUFSX0FDQ0VMRVJBVElPTik7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoaW11RUNsYXNzLCBJTVVfX0xJTkVBUl9BQ0NFTEVSQVRJT05fQ09WQVJJQU5DRSk7CisKKwkJbGFzZXJTY2FuRUNsYXNzID0gY3JlYXRlRUNsYXNzKExBU0VSX1NDQU4pOworCQljcmVhdGVFUmVmZXJlbmNlKGxhc2VyU2NhbkVDbGFzcywgTEFTRVJfU0NBTl9fSEVBREVSKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShsYXNlclNjYW5FQ2xhc3MsIExBU0VSX1NDQU5fX0FOR0xFX01JTik7CisJCWNyZWF0ZUVBdHRyaWJ1dGUobGFzZXJTY2FuRUNsYXNzLCBMQVNFUl9TQ0FOX19BTkdMRV9NQVgpOworCQljcmVhdGVFQXR0cmlidXRlKGxhc2VyU2NhbkVDbGFzcywgTEFTRVJfU0NBTl9fQU5HTEVfSU5DUkVNRU5UKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShsYXNlclNjYW5FQ2xhc3MsIExBU0VSX1NDQU5fX1RJTUVfSU5DUkVNRU5UKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShsYXNlclNjYW5FQ2xhc3MsIExBU0VSX1NDQU5fX1NDQU5fVElNRSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUobGFzZXJTY2FuRUNsYXNzLCBMQVNFUl9TQ0FOX19SQU5HRV9NSU4pOworCQljcmVhdGVFQXR0cmlidXRlKGxhc2VyU2NhbkVDbGFzcywgTEFTRVJfU0NBTl9fUkFOR0VfTUFYKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShsYXNlclNjYW5FQ2xhc3MsIExBU0VSX1NDQU5fX1JBTkdFKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShsYXNlclNjYW5FQ2xhc3MsIExBU0VSX1NDQU5fX0lOVEVOU0lUSUVTKTsKKworCQlpbWFnZUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhJTUFHRSk7CisJCWNyZWF0ZUVSZWZlcmVuY2UoaW1hZ2VFQ2xhc3MsIElNQUdFX19IRUFERVIpOworCQljcmVhdGVFQXR0cmlidXRlKGltYWdlRUNsYXNzLCBJTUFHRV9fSEVJR0hUKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShpbWFnZUVDbGFzcywgSU1BR0VfX1dJRFRIKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShpbWFnZUVDbGFzcywgSU1BR0VfX0VOQ09ESU5HKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShpbWFnZUVDbGFzcywgSU1BR0VfX0lTX0JJR0VORElBTik7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoaW1hZ2VFQ2xhc3MsIElNQUdFX19TVEVQKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShpbWFnZUVDbGFzcywgSU1BR0VfX0RBVEEpOworCisJCWNoYW5uZWxGbG9hdDMyRUNsYXNzID0gY3JlYXRlRUNsYXNzKENIQU5ORUxfRkxPQVQzMik7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoY2hhbm5lbEZsb2F0MzJFQ2xhc3MsIENIQU5ORUxfRkxPQVQzMl9fTkFNRSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoY2hhbm5lbEZsb2F0MzJFQ2xhc3MsIENIQU5ORUxfRkxPQVQzMl9fVkFMVUVTKTsKKworCQljb21wcmVzc2VkSW1hZ2VFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoQ09NUFJFU1NFRF9JTUFHRSk7CisJCWNyZWF0ZUVSZWZlcmVuY2UoY29tcHJlc3NlZEltYWdlRUNsYXNzLCBDT01QUkVTU0VEX0lNQUdFX19IRUFERVIpOworCQljcmVhdGVFQXR0cmlidXRlKGNvbXByZXNzZWRJbWFnZUVDbGFzcywgQ09NUFJFU1NFRF9JTUFHRV9fRk9STUFUKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShjb21wcmVzc2VkSW1hZ2VFQ2xhc3MsIENPTVBSRVNTRURfSU1BR0VfX0RBVEEpOworCisJCXBvaW50Q2xvdWRFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoUE9JTlRfQ0xPVUQpOworCQljcmVhdGVFUmVmZXJlbmNlKHBvaW50Q2xvdWRFQ2xhc3MsIFBPSU5UX0NMT1VEX19IRUFERVIpOworCQljcmVhdGVFUmVmZXJlbmNlKHBvaW50Q2xvdWRFQ2xhc3MsIFBPSU5UX0NMT1VEX19QT0lOVFMpOworCQljcmVhdGVFUmVmZXJlbmNlKHBvaW50Q2xvdWRFQ2xhc3MsIFBPSU5UX0NMT1VEX19DSEFOTkVMUyk7CisKKwkJcG9pbnRGaWVsZEVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhQT0lOVF9GSUVMRCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUocG9pbnRGaWVsZEVDbGFzcywgUE9JTlRfRklFTERfX05BTUUpOworCQljcmVhdGVFQXR0cmlidXRlKHBvaW50RmllbGRFQ2xhc3MsIFBPSU5UX0ZJRUxEX19PRkZTRVQpOworCQljcmVhdGVFQXR0cmlidXRlKHBvaW50RmllbGRFQ2xhc3MsIFBPSU5UX0ZJRUxEX19EQVRBVFlQRSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUocG9pbnRGaWVsZEVDbGFzcywgUE9JTlRfRklFTERfX0NPVU5UKTsKKworCQlwb2ludENsb3VkMkVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhQT0lOVF9DTE9VRDIpOworCQljcmVhdGVFUmVmZXJlbmNlKHBvaW50Q2xvdWQyRUNsYXNzLCBQT0lOVF9DTE9VRDJfX0hFQURFUik7CisJCWNyZWF0ZUVBdHRyaWJ1dGUocG9pbnRDbG91ZDJFQ2xhc3MsIFBPSU5UX0NMT1VEMl9fSEVJR0hUKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShwb2ludENsb3VkMkVDbGFzcywgUE9JTlRfQ0xPVUQyX19XSURUSCk7CisJCWNyZWF0ZUVSZWZlcmVuY2UocG9pbnRDbG91ZDJFQ2xhc3MsIFBPSU5UX0NMT1VEMl9fRklFTERTKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShwb2ludENsb3VkMkVDbGFzcywgUE9JTlRfQ0xPVUQyX19JU19CSUdFTkRJQU4pOworCQljcmVhdGVFQXR0cmlidXRlKHBvaW50Q2xvdWQyRUNsYXNzLCBQT0lOVF9DTE9VRDJfX1BPSU5UX1NURVApOworCQljcmVhdGVFQXR0cmlidXRlKHBvaW50Q2xvdWQyRUNsYXNzLCBQT0lOVF9DTE9VRDJfX1JPV19TVEVQKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShwb2ludENsb3VkMkVDbGFzcywgUE9JTlRfQ0xPVUQyX19EQVRBKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShwb2ludENsb3VkMkVDbGFzcywgUE9JTlRfQ0xPVUQyX19JU19ERU5TRSk7CisKKwkJam9pbnRTdGF0ZUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhKT0lOVF9TVEFURSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoam9pbnRTdGF0ZUVDbGFzcywgSk9JTlRfU1RBVEVfX05BTUUpOworCQljcmVhdGVFQXR0cmlidXRlKGpvaW50U3RhdGVFQ2xhc3MsIEpPSU5UX1NUQVRFX19QT1NJVElPTik7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoam9pbnRTdGF0ZUVDbGFzcywgSk9JTlRfU1RBVEVfX1ZFTE9DSVRZKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShqb2ludFN0YXRlRUNsYXNzLCBKT0lOVF9TVEFURV9fRUZGT1JUKTsKKworCQluYXZTYXRTdGF0dXNFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoTkFWX1NBVF9TVEFUVVMpOworCQljcmVhdGVFQXR0cmlidXRlKG5hdlNhdFN0YXR1c0VDbGFzcywgTkFWX1NBVF9TVEFUVVNfX1NUQVRVU19OT19GSVgpOworCQljcmVhdGVFQXR0cmlidXRlKG5hdlNhdFN0YXR1c0VDbGFzcywgTkFWX1NBVF9TVEFUVVNfX1NUQVRVU19GSVgpOworCQljcmVhdGVFQXR0cmlidXRlKG5hdlNhdFN0YXR1c0VDbGFzcywgTkFWX1NBVF9TVEFUVVNfX1NUQVRVU19TQkFTX0ZJWCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUobmF2U2F0U3RhdHVzRUNsYXNzLCBOQVZfU0FUX1NUQVRVU19fU1RBVFVTX0dCQVNfRklYKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShuYXZTYXRTdGF0dXNFQ2xhc3MsIE5BVl9TQVRfU1RBVFVTX19TVEFUVVMpOworCQljcmVhdGVFQXR0cmlidXRlKG5hdlNhdFN0YXR1c0VDbGFzcywgTkFWX1NBVF9TVEFUVVNfX1NFUlZJQ0VfR1BTKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShuYXZTYXRTdGF0dXNFQ2xhc3MsIE5BVl9TQVRfU1RBVFVTX19TRVJWSUNFX0dMT05BU1MpOworCQljcmVhdGVFQXR0cmlidXRlKG5hdlNhdFN0YXR1c0VDbGFzcywgTkFWX1NBVF9TVEFUVVNfX1NFUlZJQ0VfQ09NUEFTUyk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUobmF2U2F0U3RhdHVzRUNsYXNzLCBOQVZfU0FUX1NUQVRVU19fU0VSVklDRV9HQUxJTEVPKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShuYXZTYXRTdGF0dXNFQ2xhc3MsIE5BVl9TQVRfU1RBVFVTX19TRVJWSUNFKTsKKworCQluYXZTYXRGaXhFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoTkFWX1NBVF9GSVgpOworCQljcmVhdGVFQXR0cmlidXRlKG5hdlNhdEZpeEVDbGFzcywgTkFWX1NBVF9GSVhfX1NUQVRVUyk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUobmF2U2F0Rml4RUNsYXNzLCBOQVZfU0FUX0ZJWF9fU0VSVklDRSk7CisJCWNyZWF0ZUVSZWZlcmVuY2UobmF2U2F0Rml4RUNsYXNzLCBOQVZfU0FUX0ZJWF9fSEVBREVSKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShuYXZTYXRGaXhFQ2xhc3MsIE5BVl9TQVRfRklYX19MQVRJVFVERSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUobmF2U2F0Rml4RUNsYXNzLCBOQVZfU0FUX0ZJWF9fTE9OR0lUVURFKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShuYXZTYXRGaXhFQ2xhc3MsIE5BVl9TQVRfRklYX19BTFRJVFVERSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUobmF2U2F0Rml4RUNsYXNzLCBOQVZfU0FUX0ZJWF9fUE9TSVRJT05fQ09WQVJJQU5DRSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUobmF2U2F0Rml4RUNsYXNzLCBOQVZfU0FUX0ZJWF9fUE9TSVRJT05fQ09WQVJJQU5DRV9UWVBFKTsKKworCQlqb3lFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoSk9ZKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShqb3lFQ2xhc3MsIEpPWV9fSEVBREVSKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShqb3lFQ2xhc3MsIEpPWV9fQVhFUyk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoam95RUNsYXNzLCBKT1lfX0JVVFRPTlMpOworCisJCWpveUZlZWRiYWNrRUNsYXNzID0gY3JlYXRlRUNsYXNzKEpPWV9GRUVEQkFDSyk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoam95RmVlZGJhY2tFQ2xhc3MsIEpPWV9GRUVEQkFDS19fVFlQRV9MRUQpOworCQljcmVhdGVFQXR0cmlidXRlKGpveUZlZWRiYWNrRUNsYXNzLCBKT1lfRkVFREJBQ0tfX1RZUEVfUlVNQkxFKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShqb3lGZWVkYmFja0VDbGFzcywgSk9ZX0ZFRURCQUNLX19UWVBFX0JVWlpFUik7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoam95RmVlZGJhY2tFQ2xhc3MsIEpPWV9GRUVEQkFDS19fVFlQRSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoam95RmVlZGJhY2tFQ2xhc3MsIEpPWV9GRUVEQkFDS19fSUQpOworCQljcmVhdGVFQXR0cmlidXRlKGpveUZlZWRiYWNrRUNsYXNzLCBKT1lfRkVFREJBQ0tfX0lOVEVOU0lUWSk7CisKKwkJam95RmVlZGJhY2tBcnJheUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhKT1lfRkVFREJBQ0tfQVJSQVkpOworCQljcmVhdGVFUmVmZXJlbmNlKGpveUZlZWRiYWNrQXJyYXlFQ2xhc3MsIEpPWV9GRUVEQkFDS19BUlJBWV9fQVJSQVkpOworCisJCWNhckxpa2VPZG9tZXRyeUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhDQVJfTElLRV9PRE9NRVRSWSk7CisJCWNyZWF0ZUVSZWZlcmVuY2UoY2FyTGlrZU9kb21ldHJ5RUNsYXNzLCBDQVJfTElLRV9PRE9NRVRSWV9fSEVBREVSKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShjYXJMaWtlT2RvbWV0cnlFQ2xhc3MsIENBUl9MSUtFX09ET01FVFJZX19TVEVFUklOR19BTkdMRSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoY2FyTGlrZU9kb21ldHJ5RUNsYXNzLCBDQVJfTElLRV9PRE9NRVRSWV9fTEVGVF9SRUFSX1dIRUVMX0RJU1RBTkNFKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShjYXJMaWtlT2RvbWV0cnlFQ2xhc3MsIENBUl9MSUtFX09ET01FVFJZX19SSUdIVF9SRUFSX1dIRUVMX0RJU1RBTkNFKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShjYXJMaWtlT2RvbWV0cnlFQ2xhc3MsIENBUl9MSUtFX09ET01FVFJZX19SSUdIVF9SRUFSX1dIRUVMX1ZFTE9DSVRZKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShjYXJMaWtlT2RvbWV0cnlFQ2xhc3MsIENBUl9MSUtFX09ET01FVFJZX19MRUZUX1JFQVJfV0hFRUxfVkVMT0NJVFkpOworCisJCWRpZmZlcmVudGlhbE9kb21ldHJ5RUNsYXNzID0gY3JlYXRlRUNsYXNzKERJRkZFUkVOVElBTF9PRE9NRVRSWSk7CisJCWNyZWF0ZUVSZWZlcmVuY2UoZGlmZmVyZW50aWFsT2RvbWV0cnlFQ2xhc3MsIERJRkZFUkVOVElBTF9PRE9NRVRSWV9fSEVBREVSKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShkaWZmZXJlbnRpYWxPZG9tZXRyeUVDbGFzcywgRElGRkVSRU5USUFMX09ET01FVFJZX19SSUdIVF9ESVNUQU5DRSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoZGlmZmVyZW50aWFsT2RvbWV0cnlFQ2xhc3MsIERJRkZFUkVOVElBTF9PRE9NRVRSWV9fTEVGVF9ESVNUQU5DRSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoZGlmZmVyZW50aWFsT2RvbWV0cnlFQ2xhc3MsIERJRkZFUkVOVElBTF9PRE9NRVRSWV9fTEVGVF9WRUxPQ0lUWSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoZGlmZmVyZW50aWFsT2RvbWV0cnlFQ2xhc3MsIERJRkZFUkVOVElBTF9PRE9NRVRSWV9fUklHSFRfVkVMT0NJVFkpOworCisJCS8vIENyZWF0ZSBlbnVtcworCQlzdGF0dVNfVFlQRUVFbnVtID0gY3JlYXRlRUVudW0oU1RBVFVTX1RZUEUpOworCQlzZXJ2aWNFX1RZUEVFRW51bSA9IGNyZWF0ZUVFbnVtKFNFUlZJQ0VfVFlQRSk7CisJCWNvdmFyaWFuY0VfVFlQRUVFbnVtID0gY3JlYXRlRUVudW0oQ09WQVJJQU5DRV9UWVBFKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIGJvb2xlYW4gaXNJbml0aWFsaXplZCA9IGZhbHNlOworCisJLyoqCisJICogQ29tcGxldGUgdGhlIGluaXRpYWxpemF0aW9uIG9mIHRoZSBwYWNrYWdlIGFuZCBpdHMgbWV0YS1tb2RlbC4gIFRoaXMKKwkgKiBtZXRob2QgaXMgZ3VhcmRlZCB0byBoYXZlIG5vIGFmZmVjdCBvbiBhbnkgaW52b2NhdGlvbiBidXQgaXRzIGZpcnN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIGluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKSB7CisJCWlmIChpc0luaXRpYWxpemVkKSByZXR1cm47CisJCWlzSW5pdGlhbGl6ZWQgPSB0cnVlOworCisJCS8vIEluaXRpYWxpemUgcGFja2FnZQorCQlzZXROYW1lKGVOQU1FKTsKKwkJc2V0TnNQcmVmaXgoZU5TX1BSRUZJWCk7CisJCXNldE5zVVJJKGVOU19VUkkpOworCisJCS8vIE9idGFpbiBvdGhlciBkZXBlbmRlbnQgcGFja2FnZXMKKwkJU3RkX2RhdGF0eXBlc1BhY2thZ2UgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UgPSAoU3RkX2RhdGF0eXBlc1BhY2thZ2UpRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoU3RkX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSk7CisJCUdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UgdGhlR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZSA9IChHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlKUVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSk7CisKKwkJLy8gQ3JlYXRlIHR5cGUgcGFyYW1ldGVycworCisJCS8vIFNldCBib3VuZHMgZm9yIHR5cGUgcGFyYW1ldGVycworCisJCS8vIEFkZCBzdXBlcnR5cGVzIHRvIGNsYXNzZXMKKworCQkvLyBJbml0aWFsaXplIGNsYXNzZXMsIGZlYXR1cmVzLCBhbmQgb3BlcmF0aW9uczsgYWRkIHBhcmFtZXRlcnMKKwkJaW5pdEVDbGFzcyhyZWdpb25PZkludGVyZXN0RUNsYXNzLCBSZWdpb25PZkludGVyZXN0LmNsYXNzLCAiUmVnaW9uT2ZJbnRlcmVzdCIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0UmVnaW9uT2ZJbnRlcmVzdF9YX29mZnNldCgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRVSW50MzIoKSwgInhfb2Zmc2V0IiwgbnVsbCwgMSwgMSwgUmVnaW9uT2ZJbnRlcmVzdC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldFJlZ2lvbk9mSW50ZXJlc3RfWV9vZmZzZXQoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0VUludDMyKCksICJ5X29mZnNldCIsIG51bGwsIDEsIDEsIFJlZ2lvbk9mSW50ZXJlc3QuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRSZWdpb25PZkludGVyZXN0X0hlaWdodCgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRVSW50MzIoKSwgImhlaWdodCIsIG51bGwsIDEsIDEsIFJlZ2lvbk9mSW50ZXJlc3QuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRSZWdpb25PZkludGVyZXN0X0RvX3JlY3RpZnkoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0Qm9vbCgpLCAiZG9fcmVjdGlmeSIsIG51bGwsIDEsIDEsIFJlZ2lvbk9mSW50ZXJlc3QuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRSZWdpb25PZkludGVyZXN0X1dpZHRoKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFVJbnQzMigpLCAid2lkdGgiLCBudWxsLCAxLCAxLCBSZWdpb25PZkludGVyZXN0LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKHJhbmdlRUNsYXNzLCBSYW5nZS5jbGFzcywgIlJhbmdlIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RUF0dHJpYnV0ZShnZXRSYW5nZV9VTFRSQVNPVU5EKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFVJbnQ4KCksICJVTFRSQVNPVU5EIiwgbnVsbCwgMSwgMSwgUmFuZ2UuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRSYW5nZV9JTkZSQVJFRCgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRVSW50OCgpLCAiSU5GUkFSRUQiLCBudWxsLCAxLCAxLCBSYW5nZS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFUmVmZXJlbmNlKGdldFJhbmdlX0hlYWRlcigpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRIZWFkZXIoKSwgbnVsbCwgImhlYWRlciIsIG51bGwsIDEsIDEsIFJhbmdlLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0UmFuZ2VfUmFkaWF0aW9uX3R5cGUoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0VUludDgoKSwgInJhZGlhdGlvbl90eXBlIiwgbnVsbCwgMSwgMSwgUmFuZ2UuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRSYW5nZV9GaWVsZF9vZl92aWV3KCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0MzIoKSwgImZpZWxkX29mX3ZpZXciLCBudWxsLCAxLCAxLCBSYW5nZS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldFJhbmdlX01pbl9yYW5nZSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDMyKCksICJtaW5fcmFuZ2UiLCBudWxsLCAxLCAxLCBSYW5nZS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldFJhbmdlX01heF9yYW5nZSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDMyKCksICJtYXhfcmFuZ2UiLCBudWxsLCAxLCAxLCBSYW5nZS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldFJhbmdlX1JhbmdlKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0MzIoKSwgInJhbmdlIiwgbnVsbCwgMSwgMSwgUmFuZ2UuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3MoY2FtZXJhSW5mb0VDbGFzcywgQ2FtZXJhSW5mby5jbGFzcywgIkNhbWVyYUluZm8iLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFUmVmZXJlbmNlKGdldENhbWVyYUluZm9fSGVhZGVyKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEhlYWRlcigpLCBudWxsLCAiaGVhZGVyIiwgbnVsbCwgMSwgMSwgQ2FtZXJhSW5mby5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldENhbWVyYUluZm9fSGVpZ2h0KCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFVJbnQzMigpLCAiaGVpZ2h0IiwgbnVsbCwgMSwgMSwgQ2FtZXJhSW5mby5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldENhbWVyYUluZm9fV2lkdGgoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0VUludDMyKCksICJ3aWR0aCIsIG51bGwsIDEsIDEsIENhbWVyYUluZm8uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRDYW1lcmFJbmZvX0Rpc3RvcnNpb25fbW9kZWwoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0U3RyaW5nKCksICJkaXN0b3JzaW9uX21vZGVsIiwgbnVsbCwgMSwgMSwgQ2FtZXJhSW5mby5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldENhbWVyYUluZm9fRCgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDY0KCksICJEIiwgbnVsbCwgMCwgLTEsIENhbWVyYUluZm8uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRDYW1lcmFJbmZvX0soKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQ2NCgpLCAiSyIsIG51bGwsIDksIDksIENhbWVyYUluZm8uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRDYW1lcmFJbmZvX1IoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQ2NCgpLCAiUiIsIG51bGwsIDksIDksIENhbWVyYUluZm8uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRDYW1lcmFJbmZvX1AoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQ2NCgpLCAiUCIsIG51bGwsIDEyLCAxMiwgQ2FtZXJhSW5mby5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldENhbWVyYUluZm9fQmlubmluZ194KCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFVJbnQzMigpLCAiYmlubmluZ194IiwgbnVsbCwgMSwgMSwgQ2FtZXJhSW5mby5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldENhbWVyYUluZm9fQmlubmluZ195KCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFVJbnQzMigpLCAiYmlubmluZ195IiwgbnVsbCwgMSwgMSwgQ2FtZXJhSW5mby5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFUmVmZXJlbmNlKGdldENhbWVyYUluZm9fUm9pKCksIHRoaXMuZ2V0UmVnaW9uT2ZJbnRlcmVzdCgpLCBudWxsLCAicm9pIiwgbnVsbCwgMSwgMSwgQ2FtZXJhSW5mby5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhpbXVFQ2xhc3MsIEltdS5jbGFzcywgIkltdSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0SW11X0hlYWRlcigpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRIZWFkZXIoKSwgbnVsbCwgImhlYWRlciIsIG51bGwsIDEsIDEsIEltdS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFUmVmZXJlbmNlKGdldEltdV9PcmllbnRhdGlvbigpLCB0aGVHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmdldFF1YXRlcm5pb24oKSwgbnVsbCwgIm9yaWVudGF0aW9uIiwgbnVsbCwgMSwgMSwgSW11LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0SW11X09yaWVudGF0aW9uX2NvdmFyaWFuY2UoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQ2NCgpLCAib3JpZW50YXRpb25fY292YXJpYW5jZSIsIG51bGwsIDksIDksIEltdS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFUmVmZXJlbmNlKGdldEltdV9Bbmd1bGFyX3ZlbG9jaXR5KCksIHRoZUdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuZ2V0VmVjdG9yMygpLCBudWxsLCAiYW5ndWxhcl92ZWxvY2l0eSIsIG51bGwsIDEsIDEsIEltdS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEltdV9Bbmd1bGFyX3ZlbG9jaXR5X2NvdmFyaWFuY2UoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQ2NCgpLCAiYW5ndWxhcl92ZWxvY2l0eV9jb3ZhcmlhbmNlIiwgbnVsbCwgOSwgOSwgSW11LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0SW11X0xpbmVhcl9hY2NlbGVyYXRpb24oKSwgdGhlR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5nZXRWZWN0b3IzKCksIG51bGwsICJsaW5lYXJfYWNjZWxlcmF0aW9uIiwgbnVsbCwgMSwgMSwgSW11LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0SW11X0xpbmVhcl9hY2NlbGVyYXRpb25fY292YXJpYW5jZSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDY0KCksICJsaW5lYXJfYWNjZWxlcmF0aW9uX2NvdmFyaWFuY2UiLCBudWxsLCA5LCA5LCBJbXUuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3MobGFzZXJTY2FuRUNsYXNzLCBMYXNlclNjYW4uY2xhc3MsICJMYXNlclNjYW4iLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFUmVmZXJlbmNlKGdldExhc2VyU2Nhbl9IZWFkZXIoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0SGVhZGVyKCksIG51bGwsICJoZWFkZXIiLCBudWxsLCAxLCAxLCBMYXNlclNjYW4uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRMYXNlclNjYW5fQW5nbGVfbWluKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0MzIoKSwgImFuZ2xlX21pbiIsIG51bGwsIDEsIDEsIExhc2VyU2Nhbi5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldExhc2VyU2Nhbl9BbmdsZV9tYXgoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAiYW5nbGVfbWF4IiwgbnVsbCwgMSwgMSwgTGFzZXJTY2FuLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0TGFzZXJTY2FuX0FuZ2xlX2luY3JlbWVudCgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDMyKCksICJhbmdsZV9pbmNyZW1lbnQiLCBudWxsLCAxLCAxLCBMYXNlclNjYW4uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRMYXNlclNjYW5fVGltZV9pbmNyZW1lbnQoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAidGltZV9pbmNyZW1lbnQiLCBudWxsLCAxLCAxLCBMYXNlclNjYW4uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRMYXNlclNjYW5fU2Nhbl90aW1lKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0MzIoKSwgInNjYW5fdGltZSIsIG51bGwsIDEsIDEsIExhc2VyU2Nhbi5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldExhc2VyU2Nhbl9SYW5nZV9taW4oKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAicmFuZ2VfbWluIiwgbnVsbCwgMSwgMSwgTGFzZXJTY2FuLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0TGFzZXJTY2FuX1JhbmdlX21heCgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDMyKCksICJyYW5nZV9tYXgiLCBudWxsLCAxLCAxLCBMYXNlclNjYW4uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRMYXNlclNjYW5fUmFuZ2UoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAicmFuZ2UiLCBudWxsLCAwLCAtMSwgTGFzZXJTY2FuLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0TGFzZXJTY2FuX0ludGVuc2l0aWVzKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0MzIoKSwgImludGVuc2l0aWVzIiwgbnVsbCwgMCwgLTEsIExhc2VyU2Nhbi5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhpbWFnZUVDbGFzcywgSW1hZ2UuY2xhc3MsICJJbWFnZSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0SW1hZ2VfSGVhZGVyKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEhlYWRlcigpLCBudWxsLCAiaGVhZGVyIiwgbnVsbCwgMSwgMSwgSW1hZ2UuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRJbWFnZV9IZWlnaHQoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0VUludDMyKCksICJoZWlnaHQiLCBudWxsLCAxLCAxLCBJbWFnZS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEltYWdlX1dpZHRoKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFVJbnQzMigpLCAid2lkdGgiLCBudWxsLCAxLCAxLCBJbWFnZS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEltYWdlX0VuY29kaW5nKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFN0cmluZygpLCAiZW5jb2RpbmciLCBudWxsLCAxLCAxLCBJbWFnZS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEltYWdlX0lzX2JpZ2VuZGlhbigpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRVSW50OCgpLCAiaXNfYmlnZW5kaWFuIiwgbnVsbCwgMSwgMSwgSW1hZ2UuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRJbWFnZV9TdGVwKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFVJbnQzMigpLCAic3RlcCIsIG51bGwsIDEsIDEsIEltYWdlLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0SW1hZ2VfRGF0YSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRVSW50OCgpLCAiZGF0YSIsIG51bGwsIDAsIC0xLCBJbWFnZS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhjaGFubmVsRmxvYXQzMkVDbGFzcywgQ2hhbm5lbEZsb2F0MzIuY2xhc3MsICJDaGFubmVsRmxvYXQzMiIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0Q2hhbm5lbEZsb2F0MzJfTmFtZSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRTdHJpbmcoKSwgIm5hbWUiLCBudWxsLCAxLCAxLCBDaGFubmVsRmxvYXQzMi5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldENoYW5uZWxGbG9hdDMyX1ZhbHVlcygpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDMyKCksICJ2YWx1ZXMiLCBudWxsLCAwLCAtMSwgQ2hhbm5lbEZsb2F0MzIuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3MoY29tcHJlc3NlZEltYWdlRUNsYXNzLCBDb21wcmVzc2VkSW1hZ2UuY2xhc3MsICJDb21wcmVzc2VkSW1hZ2UiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFUmVmZXJlbmNlKGdldENvbXByZXNzZWRJbWFnZV9IZWFkZXIoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0SGVhZGVyKCksIG51bGwsICJoZWFkZXIiLCBudWxsLCAxLCAxLCBDb21wcmVzc2VkSW1hZ2UuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRDb21wcmVzc2VkSW1hZ2VfRm9ybWF0KCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFN0cmluZygpLCAiZm9ybWF0IiwgbnVsbCwgMSwgMSwgQ29tcHJlc3NlZEltYWdlLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0Q29tcHJlc3NlZEltYWdlX0RhdGEoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0VUludDgoKSwgImRhdGEiLCBudWxsLCAwLCAtMSwgQ29tcHJlc3NlZEltYWdlLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKHBvaW50Q2xvdWRFQ2xhc3MsIFBvaW50Q2xvdWQuY2xhc3MsICJQb2ludENsb3VkIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXRQb2ludENsb3VkX0hlYWRlcigpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRIZWFkZXIoKSwgbnVsbCwgImhlYWRlciIsIG51bGwsIDEsIDEsIFBvaW50Q2xvdWQuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RVJlZmVyZW5jZShnZXRQb2ludENsb3VkX1BvaW50cygpLCB0aGVHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmdldFBvaW50MzIoKSwgbnVsbCwgInBvaW50cyIsIG51bGwsIDAsIC0xLCBQb2ludENsb3VkLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0UG9pbnRDbG91ZF9DaGFubmVscygpLCB0aGlzLmdldENoYW5uZWxGbG9hdDMyKCksIG51bGwsICJjaGFubmVscyIsIG51bGwsIDAsIC0xLCBQb2ludENsb3VkLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKHBvaW50RmllbGRFQ2xhc3MsIFBvaW50RmllbGQuY2xhc3MsICJQb2ludEZpZWxkIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RUF0dHJpYnV0ZShnZXRQb2ludEZpZWxkX05hbWUoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0U3RyaW5nKCksICJuYW1lIiwgbnVsbCwgMSwgMSwgUG9pbnRGaWVsZC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldFBvaW50RmllbGRfT2Zmc2V0KCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFVJbnQzMigpLCAib2Zmc2V0IiwgbnVsbCwgMSwgMSwgUG9pbnRGaWVsZC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldFBvaW50RmllbGRfRGF0YXR5cGUoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0VUludDgoKSwgImRhdGF0eXBlIiwgbnVsbCwgMSwgMSwgUG9pbnRGaWVsZC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldFBvaW50RmllbGRfQ291bnQoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0VUludDMyKCksICJjb3VudCIsIG51bGwsIDEsIDEsIFBvaW50RmllbGQuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3MocG9pbnRDbG91ZDJFQ2xhc3MsIFBvaW50Q2xvdWQyLmNsYXNzLCAiUG9pbnRDbG91ZDIiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFUmVmZXJlbmNlKGdldFBvaW50Q2xvdWQyX0hlYWRlcigpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRIZWFkZXIoKSwgbnVsbCwgImhlYWRlciIsIG51bGwsIDEsIDEsIFBvaW50Q2xvdWQyLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0UG9pbnRDbG91ZDJfSGVpZ2h0KCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFVJbnQzMigpLCAiaGVpZ2h0IiwgbnVsbCwgMSwgMSwgUG9pbnRDbG91ZDIuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRQb2ludENsb3VkMl9XaWR0aCgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRVSW50MzIoKSwgIndpZHRoIiwgbnVsbCwgMSwgMSwgUG9pbnRDbG91ZDIuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RVJlZmVyZW5jZShnZXRQb2ludENsb3VkMl9GaWVsZHMoKSwgdGhpcy5nZXRQb2ludEZpZWxkKCksIG51bGwsICJmaWVsZHMiLCBudWxsLCAwLCAtMSwgUG9pbnRDbG91ZDIuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRQb2ludENsb3VkMl9Jc19iaWdlbmRpYW4oKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0Qm9vbCgpLCAiaXNfYmlnZW5kaWFuIiwgbnVsbCwgMSwgMSwgUG9pbnRDbG91ZDIuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRQb2ludENsb3VkMl9Qb2ludF9zdGVwKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFVJbnQzMigpLCAicG9pbnRfc3RlcCIsIG51bGwsIDEsIDEsIFBvaW50Q2xvdWQyLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0UG9pbnRDbG91ZDJfUm93X3N0ZXAoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0VUludDMyKCksICJyb3dfc3RlcCIsIG51bGwsIDEsIDEsIFBvaW50Q2xvdWQyLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0UG9pbnRDbG91ZDJfRGF0YSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRVSW50OCgpLCAiZGF0YSIsIG51bGwsIDAsIC0xLCBQb2ludENsb3VkMi5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldFBvaW50Q2xvdWQyX0lzX2RlbnNlKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEJvb2woKSwgImlzX2RlbnNlIiwgbnVsbCwgMSwgMSwgUG9pbnRDbG91ZDIuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3Moam9pbnRTdGF0ZUVDbGFzcywgSm9pbnRTdGF0ZS5jbGFzcywgIkpvaW50U3RhdGUiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFQXR0cmlidXRlKGdldEpvaW50U3RhdGVfTmFtZSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRTdHJpbmcoKSwgIm5hbWUiLCBudWxsLCAwLCAtMSwgSm9pbnRTdGF0ZS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEpvaW50U3RhdGVfUG9zaXRpb24oKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQ2NCgpLCAicG9zaXRpb24iLCBudWxsLCAwLCAtMSwgSm9pbnRTdGF0ZS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEpvaW50U3RhdGVfVmVsb2NpdHkoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQ2NCgpLCAidmVsb2NpdHkiLCBudWxsLCAwLCAtMSwgSm9pbnRTdGF0ZS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEpvaW50U3RhdGVfRWZmb3J0KCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0NjQoKSwgImVmZm9ydCIsIG51bGwsIDAsIC0xLCBKb2ludFN0YXRlLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKG5hdlNhdFN0YXR1c0VDbGFzcywgTmF2U2F0U3RhdHVzLmNsYXNzLCAiTmF2U2F0U3RhdHVzIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RUF0dHJpYnV0ZShnZXROYXZTYXRTdGF0dXNfU1RBVFVTX05PX0ZJWCgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRJbnQ4KCksICJTVEFUVVNfTk9fRklYIiwgIi0xIiwgMSwgMSwgTmF2U2F0U3RhdHVzLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsICFJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldE5hdlNhdFN0YXR1c19TVEFUVVNfRklYKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEludDgoKSwgIlNUQVRVU19GSVgiLCAiMCIsIDEsIDEsIE5hdlNhdFN0YXR1cy5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCAhSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXROYXZTYXRTdGF0dXNfU1RBVFVTX1NCQVNfRklYKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEludDgoKSwgIlNUQVRVU19TQkFTX0ZJWCIsICIxIiwgMSwgMSwgTmF2U2F0U3RhdHVzLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsICFJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldE5hdlNhdFN0YXR1c19TVEFUVVNfR0JBU19GSVgoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0SW50OCgpLCAiU1RBVFVTX0dCQVNfRklYIiwgIjIiLCAxLCAxLCBOYXZTYXRTdGF0dXMuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgIUlTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0TmF2U2F0U3RhdHVzX1N0YXR1cygpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRJbnQ4KCksICJzdGF0dXMiLCBudWxsLCAxLCAxLCBOYXZTYXRTdGF0dXMuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXROYXZTYXRTdGF0dXNfU0VSVklDRV9HUFMoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0VUludDE2KCksICJTRVJWSUNFX0dQUyIsICIxIiwgMSwgMSwgTmF2U2F0U3RhdHVzLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsICFJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldE5hdlNhdFN0YXR1c19TRVJWSUNFX0dMT05BU1MoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0VUludDE2KCksICJTRVJWSUNFX0dMT05BU1MiLCAiMiIsIDEsIDEsIE5hdlNhdFN0YXR1cy5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCAhSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXROYXZTYXRTdGF0dXNfU0VSVklDRV9DT01QQVNTKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFVJbnQxNigpLCAiU0VSVklDRV9DT01QQVNTIiwgIjQiLCAxLCAxLCBOYXZTYXRTdGF0dXMuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgIUlTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0TmF2U2F0U3RhdHVzX1NFUlZJQ0VfR0FMSUxFTygpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRVSW50MTYoKSwgIlNFUlZJQ0VfR0FMSUxFTyIsICI4IiwgMSwgMSwgTmF2U2F0U3RhdHVzLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsICFJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldE5hdlNhdFN0YXR1c19TZXJ2aWNlKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFVJbnQxNigpLCAic2VydmljZSIsIG51bGwsIDEsIDEsIE5hdlNhdFN0YXR1cy5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhuYXZTYXRGaXhFQ2xhc3MsIE5hdlNhdEZpeC5jbGFzcywgIk5hdlNhdEZpeCIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0TmF2U2F0Rml4X1N0YXR1cygpLCB0aGlzLmdldFNUQVRVU19UWVBFKCksICJzdGF0dXMiLCBudWxsLCAxLCAxLCBOYXZTYXRGaXguY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXROYXZTYXRGaXhfU2VydmljZSgpLCB0aGlzLmdldFNFUlZJQ0VfVFlQRSgpLCAic2VydmljZSIsIG51bGwsIDEsIDEsIE5hdlNhdEZpeC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFUmVmZXJlbmNlKGdldE5hdlNhdEZpeF9IZWFkZXIoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0SGVhZGVyKCksIG51bGwsICJoZWFkZXIiLCBudWxsLCAxLCAxLCBOYXZTYXRGaXguY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXROYXZTYXRGaXhfTGF0aXR1ZGUoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQ2NCgpLCAibGF0aXR1ZGUiLCBudWxsLCAxLCAxLCBOYXZTYXRGaXguY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXROYXZTYXRGaXhfTG9uZ2l0dWRlKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0NjQoKSwgImxvbmdpdHVkZSIsIG51bGwsIDEsIDEsIE5hdlNhdEZpeC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldE5hdlNhdEZpeF9BbHRpdHVkZSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDY0KCksICJhbHRpdHVkZSIsIG51bGwsIDEsIDEsIE5hdlNhdEZpeC5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldE5hdlNhdEZpeF9Qb3NpdGlvbl9jb3ZhcmlhbmNlKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0NjQoKSwgInBvc2l0aW9uX2NvdmFyaWFuY2UiLCBudWxsLCA5LCA5LCBOYXZTYXRGaXguY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXROYXZTYXRGaXhfUG9zaXRpb25fY292YXJpYW5jZV90eXBlKCksIHRoaXMuZ2V0Q09WQVJJQU5DRV9UWVBFKCksICJwb3NpdGlvbl9jb3ZhcmlhbmNlX3R5cGUiLCBudWxsLCAxLCAxLCBOYXZTYXRGaXguY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3Moam95RUNsYXNzLCBKb3kuY2xhc3MsICJKb3kiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFUmVmZXJlbmNlKGdldEpveV9IZWFkZXIoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0SGVhZGVyKCksIG51bGwsICJoZWFkZXIiLCBudWxsLCAxLCAxLCBKb3kuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRKb3lfQXhlcygpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDMyKCksICJheGVzIiwgbnVsbCwgMCwgLTEsIEpveS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEpveV9CdXR0b25zKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEludDMyKCksICJidXR0b25zIiwgbnVsbCwgMCwgLTEsIEpveS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhqb3lGZWVkYmFja0VDbGFzcywgSm95RmVlZGJhY2suY2xhc3MsICJKb3lGZWVkYmFjayIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0Sm95RmVlZGJhY2tfVFlQRV9MRUQoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0VUludDgoKSwgIlRZUEVfTEVEIiwgIjAiLCAxLCAxLCBKb3lGZWVkYmFjay5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEpveUZlZWRiYWNrX1RZUEVfUlVNQkxFKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldFVJbnQ4KCksICJUWVBFX1JVTUJMRSIsICIxIiwgMSwgMSwgSm95RmVlZGJhY2suY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRKb3lGZWVkYmFja19UWVBFX0JVWlpFUigpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRVSW50OCgpLCAiVFlQRV9CVVpaRVIiLCAiMiIsIDEsIDEsIEpveUZlZWRiYWNrLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0Sm95RmVlZGJhY2tfVHlwZSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRVSW50OCgpLCAidHlwZSIsIG51bGwsIDEsIDEsIEpveUZlZWRiYWNrLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0Sm95RmVlZGJhY2tfSWQoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0VUludDgoKSwgImlkIiwgbnVsbCwgMSwgMSwgSm95RmVlZGJhY2suY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRKb3lGZWVkYmFja19JbnRlbnNpdHkoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQzMigpLCAiaW50ZW5zaXR5IiwgbnVsbCwgMSwgMSwgSm95RmVlZGJhY2suY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3Moam95RmVlZGJhY2tBcnJheUVDbGFzcywgSm95RmVlZGJhY2tBcnJheS5jbGFzcywgIkpveUZlZWRiYWNrQXJyYXkiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFUmVmZXJlbmNlKGdldEpveUZlZWRiYWNrQXJyYXlfQXJyYXkoKSwgdGhpcy5nZXRKb3lGZWVkYmFjaygpLCBudWxsLCAiYXJyYXkiLCBudWxsLCAwLCAtMSwgSm95RmVlZGJhY2tBcnJheS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhjYXJMaWtlT2RvbWV0cnlFQ2xhc3MsIENhckxpa2VPZG9tZXRyeS5jbGFzcywgIkNhckxpa2VPZG9tZXRyeSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0Q2FyTGlrZU9kb21ldHJ5X0hlYWRlcigpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRIZWFkZXIoKSwgbnVsbCwgImhlYWRlciIsIG51bGwsIDEsIDEsIENhckxpa2VPZG9tZXRyeS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldENhckxpa2VPZG9tZXRyeV9TdGVlcmluZ19hbmdsZSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDY0KCksICJzdGVlcmluZ19hbmdsZSIsIG51bGwsIDEsIDEsIENhckxpa2VPZG9tZXRyeS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldENhckxpa2VPZG9tZXRyeV9MZWZ0X3JlYXJfd2hlZWxfZGlzdGFuY2UoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQ2NCgpLCAibGVmdF9yZWFyX3doZWVsX2Rpc3RhbmNlIiwgbnVsbCwgMSwgMSwgQ2FyTGlrZU9kb21ldHJ5LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0Q2FyTGlrZU9kb21ldHJ5X1JpZ2h0X3JlYXJfd2hlZWxfZGlzdGFuY2UoKSwgdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuZ2V0RmxvYXQ2NCgpLCAicmlnaHRfcmVhcl93aGVlbF9kaXN0YW5jZSIsIG51bGwsIDEsIDEsIENhckxpa2VPZG9tZXRyeS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldENhckxpa2VPZG9tZXRyeV9SaWdodF9yZWFyX3doZWVsX3ZlbG9jaXR5KCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0NjQoKSwgInJpZ2h0X3JlYXJfd2hlZWxfdmVsb2NpdHkiLCBudWxsLCAxLCAxLCBDYXJMaWtlT2RvbWV0cnkuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRDYXJMaWtlT2RvbWV0cnlfTGVmdF9yZWFyX3doZWVsX3ZlbG9jaXR5KCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0NjQoKSwgImxlZnRfcmVhcl93aGVlbF92ZWxvY2l0eSIsIG51bGwsIDEsIDEsIENhckxpa2VPZG9tZXRyeS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhkaWZmZXJlbnRpYWxPZG9tZXRyeUVDbGFzcywgRGlmZmVyZW50aWFsT2RvbWV0cnkuY2xhc3MsICJEaWZmZXJlbnRpYWxPZG9tZXRyeSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0RGlmZmVyZW50aWFsT2RvbWV0cnlfSGVhZGVyKCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEhlYWRlcigpLCBudWxsLCAiaGVhZGVyIiwgbnVsbCwgMSwgMSwgRGlmZmVyZW50aWFsT2RvbWV0cnkuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXREaWZmZXJlbnRpYWxPZG9tZXRyeV9SaWdodF9kaXN0YW5jZSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDY0KCksICJyaWdodF9kaXN0YW5jZSIsIG51bGwsIDEsIDEsIERpZmZlcmVudGlhbE9kb21ldHJ5LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0RGlmZmVyZW50aWFsT2RvbWV0cnlfTGVmdF9kaXN0YW5jZSgpLCB0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5nZXRGbG9hdDY0KCksICJsZWZ0X2Rpc3RhbmNlIiwgbnVsbCwgMSwgMSwgRGlmZmVyZW50aWFsT2RvbWV0cnkuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXREaWZmZXJlbnRpYWxPZG9tZXRyeV9MZWZ0X3ZlbG9jaXR5KCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0NjQoKSwgImxlZnRfdmVsb2NpdHkiLCBudWxsLCAxLCAxLCBEaWZmZXJlbnRpYWxPZG9tZXRyeS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldERpZmZlcmVudGlhbE9kb21ldHJ5X1JpZ2h0X3ZlbG9jaXR5KCksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmdldEZsb2F0NjQoKSwgInJpZ2h0X3ZlbG9jaXR5IiwgbnVsbCwgMSwgMSwgRGlmZmVyZW50aWFsT2RvbWV0cnkuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCS8vIEluaXRpYWxpemUgZW51bXMgYW5kIGFkZCBlbnVtIGxpdGVyYWxzCisJCWluaXRFRW51bShzdGF0dVNfVFlQRUVFbnVtLCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TVEFUVVNfVFlQRS5jbGFzcywgIlNUQVRVU19UWVBFIik7CisJCWFkZEVFbnVtTGl0ZXJhbChzdGF0dVNfVFlQRUVFbnVtLCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TVEFUVVNfVFlQRS5TVEFUVVNfTk9fRklYKTsKKwkJYWRkRUVudW1MaXRlcmFsKHN0YXR1U19UWVBFRUVudW0sIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNUQVRVU19UWVBFLlNUQVRVU19GSVgpOworCQlhZGRFRW51bUxpdGVyYWwoc3RhdHVTX1RZUEVFRW51bSwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU1RBVFVTX1RZUEUuU1RBVFVTX1NCQVNfRklYKTsKKwkJYWRkRUVudW1MaXRlcmFsKHN0YXR1U19UWVBFRUVudW0sIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNUQVRVU19UWVBFLlNUQVRVU19HQkFTX0ZJWCk7CisKKwkJaW5pdEVFbnVtKHNlcnZpY0VfVFlQRUVFbnVtLCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TRVJWSUNFX1RZUEUuY2xhc3MsICJTRVJWSUNFX1RZUEUiKTsKKwkJYWRkRUVudW1MaXRlcmFsKHNlcnZpY0VfVFlQRUVFbnVtLCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5TRVJWSUNFX1RZUEUuU0VSVklDRV9HUFMpOworCQlhZGRFRW51bUxpdGVyYWwoc2VydmljRV9UWVBFRUVudW0sIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNFUlZJQ0VfVFlQRS5TRVJWSUNFX0dMT05BU1MpOworCQlhZGRFRW51bUxpdGVyYWwoc2VydmljRV9UWVBFRUVudW0sIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNFUlZJQ0VfVFlQRS5TRVJWSUNFX0NPTVBBU1MpOworCQlhZGRFRW51bUxpdGVyYWwoc2VydmljRV9UWVBFRUVudW0sIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNFUlZJQ0VfVFlQRS5TRVJWSUNFX0dBTElMRU8pOworCisJCWluaXRFRW51bShjb3ZhcmlhbmNFX1RZUEVFRW51bSwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ09WQVJJQU5DRV9UWVBFLmNsYXNzLCAiQ09WQVJJQU5DRV9UWVBFIik7CisJCWFkZEVFbnVtTGl0ZXJhbChjb3ZhcmlhbmNFX1RZUEVFRW51bSwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ09WQVJJQU5DRV9UWVBFLkNPVkFSSUFOQ0VfVFlQRV9VTktOT1dOKTsKKwkJYWRkRUVudW1MaXRlcmFsKGNvdmFyaWFuY0VfVFlQRUVFbnVtLCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DT1ZBUklBTkNFX1RZUEUuQ09WQVJJQU5DRV9UWVBFX0FQUFJPWElNQVRFRCk7CisJCWFkZEVFbnVtTGl0ZXJhbChjb3ZhcmlhbmNFX1RZUEVFRW51bSwgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ09WQVJJQU5DRV9UWVBFLl9DT1ZBUklBTkNFX1RZUEVfRElBR09OQUxfS05PV04pOworCQlhZGRFRW51bUxpdGVyYWwoY292YXJpYW5jRV9UWVBFRUVudW0sIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNPVkFSSUFOQ0VfVFlQRS5DT1ZBUklBTkNFX1RZUEVfS05PV04pOworCisJCS8vIENyZWF0ZSByZXNvdXJjZQorCQljcmVhdGVSZXNvdXJjZShlTlNfVVJJKTsKKworCQkvLyBDcmVhdGUgYW5ub3RhdGlvbnMKKwkJLy8gaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTAorCQljcmVhdGVVTUxBbm5vdGF0aW9ucygpOworCX0KKworCS8qKgorCSAqIEluaXRpYWxpemVzIHRoZSBhbm5vdGF0aW9ucyBmb3IgPGI+aHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTDwvYj4uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIHZvaWQgY3JlYXRlVU1MQW5ub3RhdGlvbnMoKSB7CisJCVN0cmluZyBzb3VyY2UgPSAiaHR0cDovL3d3dy5lY2xpcHNlLm9yZy91bWwyLzIuMC4wL1VNTCI7CQorCQlhZGRBbm5vdGF0aW9uCisJCSAgKGNvdmFyaWFuY0VfVFlQRUVFbnVtLmdldEVMaXRlcmFscygpLmdldCgyKSwgCisJCSAgIHNvdXJjZSwgCisJCSAgIG5ldyBTdHJpbmdbXSB7CisJCQkgIm9yaWdpbmFsTmFtZSIsICIgQ09WQVJJQU5DRV9UWVBFX0RJQUdPTkFMX0tOT1dOIgorCQkgICB9KTsKKwl9CisKK30gLy8gU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL3V0aWwvU2Vuc29yX2RhdGF0eXBlc0FkYXB0ZXJGYWN0b3J5LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL3V0aWwvU2Vuc29yX2RhdGF0eXBlc0FkYXB0ZXJGYWN0b3J5LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGYzN2MzMgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3NlbnNvcl9kYXRhdHlwZXMvdXRpbC9TZW5zb3JfZGF0YXR5cGVzQWRhcHRlckZhY3RvcnkuamF2YQpAQCAtMCwwICsxLDQ2MCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMudXRpbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5LkFkYXB0ZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpZXI7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuaW1wbC5BZGFwdGVyRmFjdG9yeUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FtZXJhSW5mbzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYXJMaWtlT2RvbWV0cnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2hhbm5lbEZsb2F0MzI7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ29tcHJlc3NlZEltYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkRpZmZlcmVudGlhbE9kb21ldHJ5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltdTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb2ludFN0YXRlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpveTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb3lGZWVkYmFjazsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb3lGZWVkYmFja0FycmF5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkxhc2VyU2NhbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRGaXg7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0U3RhdHVzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50Q2xvdWQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZDI7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRGaWVsZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SYW5nZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SZWdpb25PZkludGVyZXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBUaGUgPGI+QWRhcHRlciBGYWN0b3J5PC9iPiBmb3IgdGhlIG1vZGVsLgorICogSXQgcHJvdmlkZXMgYW4gYWRhcHRlciA8Y29kZT5jcmVhdGVYWFg8L2NvZGU+IG1ldGhvZCBmb3IgZWFjaCBjbGFzcyBvZiB0aGUgbW9kZWwuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIFNlbnNvcl9kYXRhdHlwZXNBZGFwdGVyRmFjdG9yeSBleHRlbmRzIEFkYXB0ZXJGYWN0b3J5SW1wbCB7CisJLyoqCisJICogVGhlIGNhY2hlZCBtb2RlbCBwYWNrYWdlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UgbW9kZWxQYWNrYWdlOworCisJLyoqCisJICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgYWRhcHRlciBmYWN0b3J5LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTZW5zb3JfZGF0YXR5cGVzQWRhcHRlckZhY3RvcnkoKSB7CisJCWlmIChtb2RlbFBhY2thZ2UgPT0gbnVsbCkgeworCQkJbW9kZWxQYWNrYWdlID0gU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFOworCQl9CisJfQorCisJLyoqCisJICogUmV0dXJucyB3aGV0aGVyIHRoaXMgZmFjdG9yeSBpcyBhcHBsaWNhYmxlIGZvciB0aGUgdHlwZSBvZiB0aGUgb2JqZWN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIDxjb2RlPnRydWU8L2NvZGU+IGlmIHRoZSBvYmplY3QgaXMgZWl0aGVyIHRoZSBtb2RlbCdzIHBhY2thZ2Ugb3IgaXMgYW4gaW5zdGFuY2Ugb2JqZWN0IG9mIHRoZSBtb2RlbC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHdoZXRoZXIgdGhpcyBmYWN0b3J5IGlzIGFwcGxpY2FibGUgZm9yIHRoZSB0eXBlIG9mIHRoZSBvYmplY3QuCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGlzRmFjdG9yeUZvclR5cGUoT2JqZWN0IG9iamVjdCkgeworCQlpZiAob2JqZWN0ID09IG1vZGVsUGFja2FnZSkgeworCQkJcmV0dXJuIHRydWU7CisJCX0KKwkJaWYgKG9iamVjdCBpbnN0YW5jZW9mIEVPYmplY3QpIHsKKwkJCXJldHVybiAoKEVPYmplY3Qpb2JqZWN0KS5lQ2xhc3MoKS5nZXRFUGFja2FnZSgpID09IG1vZGVsUGFja2FnZTsKKwkJfQorCQlyZXR1cm4gZmFsc2U7CisJfQorCisJLyoqCisJICogVGhlIHN3aXRjaCB0aGF0IGRlbGVnYXRlcyB0byB0aGUgPGNvZGU+Y3JlYXRlWFhYPC9jb2RlPiBtZXRob2RzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBTZW5zb3JfZGF0YXR5cGVzU3dpdGNoPEFkYXB0ZXI+IG1vZGVsU3dpdGNoID0KKwkJCW5ldyBTZW5zb3JfZGF0YXR5cGVzU3dpdGNoPEFkYXB0ZXI+KCkgeworCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlUmVnaW9uT2ZJbnRlcmVzdChSZWdpb25PZkludGVyZXN0IG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVSZWdpb25PZkludGVyZXN0QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlUmFuZ2UoUmFuZ2Ugb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZVJhbmdlQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlQ2FtZXJhSW5mbyhDYW1lcmFJbmZvIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVDYW1lcmFJbmZvQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlSW11KEltdSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlSW11QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlTGFzZXJTY2FuKExhc2VyU2NhbiBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlTGFzZXJTY2FuQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlSW1hZ2UoSW1hZ2Ugb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUltYWdlQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlQ2hhbm5lbEZsb2F0MzIoQ2hhbm5lbEZsb2F0MzIgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUNoYW5uZWxGbG9hdDMyQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlQ29tcHJlc3NlZEltYWdlKENvbXByZXNzZWRJbWFnZSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlQ29tcHJlc3NlZEltYWdlQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlUG9pbnRDbG91ZChQb2ludENsb3VkIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVQb2ludENsb3VkQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlUG9pbnRGaWVsZChQb2ludEZpZWxkIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVQb2ludEZpZWxkQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlUG9pbnRDbG91ZDIoUG9pbnRDbG91ZDIgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZVBvaW50Q2xvdWQyQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlSm9pbnRTdGF0ZShKb2ludFN0YXRlIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVKb2ludFN0YXRlQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlTmF2U2F0U3RhdHVzKE5hdlNhdFN0YXR1cyBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlTmF2U2F0U3RhdHVzQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlTmF2U2F0Rml4KE5hdlNhdEZpeCBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlTmF2U2F0Rml4QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlSm95KEpveSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlSm95QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlSm95RmVlZGJhY2soSm95RmVlZGJhY2sgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUpveUZlZWRiYWNrQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlSm95RmVlZGJhY2tBcnJheShKb3lGZWVkYmFja0FycmF5IG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVKb3lGZWVkYmFja0FycmF5QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlQ2FyTGlrZU9kb21ldHJ5KENhckxpa2VPZG9tZXRyeSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlQ2FyTGlrZU9kb21ldHJ5QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlRGlmZmVyZW50aWFsT2RvbWV0cnkoRGlmZmVyZW50aWFsT2RvbWV0cnkgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZURpZmZlcmVudGlhbE9kb21ldHJ5QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBkZWZhdWx0Q2FzZShFT2JqZWN0IG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVFT2JqZWN0QWRhcHRlcigpOworCQkJfQorCQl9OworCisJLyoqCisJICogQ3JlYXRlcyBhbiBhZGFwdGVyIGZvciB0aGUgPGNvZGU+dGFyZ2V0PC9jb2RlPi4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB0YXJnZXQgdGhlIG9iamVjdCB0byBhZGFwdC4KKwkgKiBAcmV0dXJuIHRoZSBhZGFwdGVyIGZvciB0aGUgPGNvZGU+dGFyZ2V0PC9jb2RlPi4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlQWRhcHRlcihOb3RpZmllciB0YXJnZXQpIHsKKwkJcmV0dXJuIG1vZGVsU3dpdGNoLmRvU3dpdGNoKChFT2JqZWN0KXRhcmdldCk7CisJfQorCisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlJlZ2lvbk9mSW50ZXJlc3QgPGVtPlJlZ2lvbiBPZiBJbnRlcmVzdDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SZWdpb25PZkludGVyZXN0CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVJlZ2lvbk9mSW50ZXJlc3RBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlJhbmdlIDxlbT5SYW5nZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SYW5nZQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVSYW5nZUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FtZXJhSW5mbyA8ZW0+Q2FtZXJhIEluZm88L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FtZXJhSW5mbworCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVDYW1lcmFJbmZvQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5JbXUgPGVtPkltdTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5JbXUKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlSW11QWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5MYXNlclNjYW4gPGVtPkxhc2VyIFNjYW48L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTGFzZXJTY2FuCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUxhc2VyU2NhbkFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSW1hZ2UgPGVtPkltYWdlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltYWdlCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUltYWdlQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DaGFubmVsRmxvYXQzMiA8ZW0+Q2hhbm5lbCBGbG9hdDMyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNoYW5uZWxGbG9hdDMyCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUNoYW5uZWxGbG9hdDMyQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Db21wcmVzc2VkSW1hZ2UgPGVtPkNvbXByZXNzZWQgSW1hZ2U8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ29tcHJlc3NlZEltYWdlCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUNvbXByZXNzZWRJbWFnZUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZCA8ZW0+UG9pbnQgQ2xvdWQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVQb2ludENsb3VkQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludEZpZWxkIDxlbT5Qb2ludCBGaWVsZDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Qb2ludEZpZWxkCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZVBvaW50RmllbGRBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50Q2xvdWQyIDxlbT5Qb2ludCBDbG91ZDI8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZDIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlUG9pbnRDbG91ZDJBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpvaW50U3RhdGUgPGVtPkpvaW50IFN0YXRlPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpvaW50U3RhdGUKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlSm9pbnRTdGF0ZUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0U3RhdHVzIDxlbT5OYXYgU2F0IFN0YXR1czwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRTdGF0dXMKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlTmF2U2F0U3RhdHVzQWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRGaXggPGVtPk5hdiBTYXQgRml4PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLk5hdlNhdEZpeAorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVOYXZTYXRGaXhBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpveSA8ZW0+Sm95PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpveQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVKb3lBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpveUZlZWRiYWNrIDxlbT5Kb3kgRmVlZGJhY2s8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuSm95RmVlZGJhY2sKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlSm95RmVlZGJhY2tBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpveUZlZWRiYWNrQXJyYXkgPGVtPkpveSBGZWVkYmFjayBBcnJheTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb3lGZWVkYmFja0FycmF5CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUpveUZlZWRiYWNrQXJyYXlBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkNhckxpa2VPZG9tZXRyeSA8ZW0+Q2FyIExpa2UgT2RvbWV0cnk8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FyTGlrZU9kb21ldHJ5CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUNhckxpa2VPZG9tZXRyeUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuRGlmZmVyZW50aWFsT2RvbWV0cnkgPGVtPkRpZmZlcmVudGlhbCBPZG9tZXRyeTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5EaWZmZXJlbnRpYWxPZG9tZXRyeQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVEaWZmZXJlbnRpYWxPZG9tZXRyeUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgdGhlIGRlZmF1bHQgY2FzZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUVPYmplY3RBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKK30gLy8gU2Vuc29yX2RhdGF0eXBlc0FkYXB0ZXJGYWN0b3J5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zZW5zb3JfZGF0YXR5cGVzL3V0aWwvU2Vuc29yX2RhdGF0eXBlc1N3aXRjaC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy91dGlsL1NlbnNvcl9kYXRhdHlwZXNTd2l0Y2guamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNGIwYTNjCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc2Vuc29yX2RhdGF0eXBlcy91dGlsL1NlbnNvcl9kYXRhdHlwZXNTd2l0Y2guamF2YQpAQCAtMCwwICsxLDUwNCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMudXRpbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5Td2l0Y2g7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2FtZXJhSW5mbzsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5DYXJMaWtlT2RvbWV0cnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ2hhbm5lbEZsb2F0MzI7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuQ29tcHJlc3NlZEltYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkRpZmZlcmVudGlhbE9kb21ldHJ5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkltdTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb2ludFN0YXRlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkpveTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb3lGZWVkYmFjazsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5Kb3lGZWVkYmFja0FycmF5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLkxhc2VyU2NhbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5OYXZTYXRGaXg7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuTmF2U2F0U3RhdHVzOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlBvaW50Q2xvdWQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRDbG91ZDI7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuUG9pbnRGaWVsZDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SYW5nZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc2Vuc29yX2RhdGF0eXBlcy5SZWdpb25PZkludGVyZXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zZW5zb3JfZGF0YXR5cGVzLlNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBUaGUgPGI+U3dpdGNoPC9iPiBmb3IgdGhlIG1vZGVsJ3MgaW5oZXJpdGFuY2UgaGllcmFyY2h5LgorICogSXQgc3VwcG9ydHMgdGhlIGNhbGwge0BsaW5rICNkb1N3aXRjaChFT2JqZWN0KSBkb1N3aXRjaChvYmplY3QpfSB0byBpbnZva2UgdGhlIDxjb2RlPmNhc2VYWFg8L2NvZGU+IG1ldGhvZCBmb3IgZWFjaCBjbGFzcyBvZiB0aGUgbW9kZWwsCisgKiBzdGFydGluZyB3aXRoIHRoZSBhY3R1YWwgY2xhc3Mgb2YgdGhlIG9iamVjdAorICogYW5kIHByb2NlZWRpbmcgdXAgdGhlIGluaGVyaXRhbmNlIGhpZXJhcmNoeQorICogdW50aWwgYSBub24tbnVsbCByZXN1bHQgaXMgcmV0dXJuZWQsCisgKiB3aGljaCBpcyB0aGUgcmVzdWx0IG9mIHRoZSBzd2l0Y2guCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIFNlbnNvcl9kYXRhdHlwZXNTd2l0Y2g8VD4gZXh0ZW5kcyBTd2l0Y2g8VD4geworCS8qKgorCSAqIFRoZSBjYWNoZWQgbW9kZWwgcGFja2FnZQorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UgbW9kZWxQYWNrYWdlOworCisJLyoqCisJICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgc3dpdGNoLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTZW5zb3JfZGF0YXR5cGVzU3dpdGNoKCkgeworCQlpZiAobW9kZWxQYWNrYWdlID09IG51bGwpIHsKKwkJCW1vZGVsUGFja2FnZSA9IFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRTsKKwkJfQorCX0KKworCS8qKgorCSAqIENoZWNrcyB3aGV0aGVyIHRoaXMgaXMgYSBzd2l0Y2ggZm9yIHRoZSBnaXZlbiBwYWNrYWdlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtZXRlciBlUGFja2FnZSB0aGUgcGFja2FnZSBpbiBxdWVzdGlvbi4KKwkgKiBAcmV0dXJuIHdoZXRoZXIgdGhpcyBpcyBhIHN3aXRjaCBmb3IgdGhlIGdpdmVuIHBhY2thZ2UuCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBib29sZWFuIGlzU3dpdGNoRm9yKEVQYWNrYWdlIGVQYWNrYWdlKSB7CisJCXJldHVybiBlUGFja2FnZSA9PSBtb2RlbFBhY2thZ2U7CisJfQorCisJLyoqCisJICogQ2FsbHMgPGNvZGU+Y2FzZVhYWDwvY29kZT4gZm9yIGVhY2ggY2xhc3Mgb2YgdGhlIG1vZGVsIHVudGlsIG9uZSByZXR1cm5zIGEgbm9uIG51bGwgcmVzdWx0OyBpdCB5aWVsZHMgdGhhdCByZXN1bHQuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBmaXJzdCBub24tbnVsbCByZXN1bHQgcmV0dXJuZWQgYnkgYSA8Y29kZT5jYXNlWFhYPC9jb2RlPiBjYWxsLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgVCBkb1N3aXRjaChpbnQgY2xhc3NpZmllcklELCBFT2JqZWN0IHRoZUVPYmplY3QpIHsKKwkJc3dpdGNoIChjbGFzc2lmaWVySUQpIHsKKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkVHSU9OX09GX0lOVEVSRVNUOiB7CisJCQkJUmVnaW9uT2ZJbnRlcmVzdCByZWdpb25PZkludGVyZXN0ID0gKFJlZ2lvbk9mSW50ZXJlc3QpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VSZWdpb25PZkludGVyZXN0KHJlZ2lvbk9mSW50ZXJlc3QpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUkFOR0U6IHsKKwkJCQlSYW5nZSByYW5nZSA9IChSYW5nZSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZVJhbmdlKHJhbmdlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBTUVSQV9JTkZPOiB7CisJCQkJQ2FtZXJhSW5mbyBjYW1lcmFJbmZvID0gKENhbWVyYUluZm8pdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VDYW1lcmFJbmZvKGNhbWVyYUluZm8pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1VOiB7CisJCQkJSW11IGltdSA9IChJbXUpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VJbXUoaW11KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkxBU0VSX1NDQU46IHsKKwkJCQlMYXNlclNjYW4gbGFzZXJTY2FuID0gKExhc2VyU2Nhbil0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZUxhc2VyU2NhbihsYXNlclNjYW4pOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuSU1BR0U6IHsKKwkJCQlJbWFnZSBpbWFnZSA9IChJbWFnZSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZUltYWdlKGltYWdlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNIQU5ORUxfRkxPQVQzMjogeworCQkJCUNoYW5uZWxGbG9hdDMyIGNoYW5uZWxGbG9hdDMyID0gKENoYW5uZWxGbG9hdDMyKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlQ2hhbm5lbEZsb2F0MzIoY2hhbm5lbEZsb2F0MzIpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuQ09NUFJFU1NFRF9JTUFHRTogeworCQkJCUNvbXByZXNzZWRJbWFnZSBjb21wcmVzc2VkSW1hZ2UgPSAoQ29tcHJlc3NlZEltYWdlKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlQ29tcHJlc3NlZEltYWdlKGNvbXByZXNzZWRJbWFnZSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5QT0lOVF9DTE9VRDogeworCQkJCVBvaW50Q2xvdWQgcG9pbnRDbG91ZCA9IChQb2ludENsb3VkKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlUG9pbnRDbG91ZChwb2ludENsb3VkKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLlBPSU5UX0ZJRUxEOiB7CisJCQkJUG9pbnRGaWVsZCBwb2ludEZpZWxkID0gKFBvaW50RmllbGQpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VQb2ludEZpZWxkKHBvaW50RmllbGQpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuUE9JTlRfQ0xPVUQyOiB7CisJCQkJUG9pbnRDbG91ZDIgcG9pbnRDbG91ZDIgPSAoUG9pbnRDbG91ZDIpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VQb2ludENsb3VkMihwb2ludENsb3VkMik7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT0lOVF9TVEFURTogeworCQkJCUpvaW50U3RhdGUgam9pbnRTdGF0ZSA9IChKb2ludFN0YXRlKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlSm9pbnRTdGF0ZShqb2ludFN0YXRlKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLk5BVl9TQVRfU1RBVFVTOiB7CisJCQkJTmF2U2F0U3RhdHVzIG5hdlNhdFN0YXR1cyA9IChOYXZTYXRTdGF0dXMpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VOYXZTYXRTdGF0dXMobmF2U2F0U3RhdHVzKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLk5BVl9TQVRfRklYOiB7CisJCQkJTmF2U2F0Rml4IG5hdlNhdEZpeCA9IChOYXZTYXRGaXgpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VOYXZTYXRGaXgobmF2U2F0Rml4KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWTogeworCQkJCUpveSBqb3kgPSAoSm95KXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlSm95KGpveSk7CisJCQkJaWYgKHJlc3VsdCA9PSBudWxsKSByZXN1bHQgPSBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJCQlyZXR1cm4gcmVzdWx0OworCQkJfQorCQkJY2FzZSBTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5KT1lfRkVFREJBQ0s6IHsKKwkJCQlKb3lGZWVkYmFjayBqb3lGZWVkYmFjayA9IChKb3lGZWVkYmFjayl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZUpveUZlZWRiYWNrKGpveUZlZWRiYWNrKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkpPWV9GRUVEQkFDS19BUlJBWTogeworCQkJCUpveUZlZWRiYWNrQXJyYXkgam95RmVlZGJhY2tBcnJheSA9IChKb3lGZWVkYmFja0FycmF5KXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlSm95RmVlZGJhY2tBcnJheShqb3lGZWVkYmFja0FycmF5KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkNBUl9MSUtFX09ET01FVFJZOiB7CisJCQkJQ2FyTGlrZU9kb21ldHJ5IGNhckxpa2VPZG9tZXRyeSA9IChDYXJMaWtlT2RvbWV0cnkpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VDYXJMaWtlT2RvbWV0cnkoY2FyTGlrZU9kb21ldHJ5KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLkRJRkZFUkVOVElBTF9PRE9NRVRSWTogeworCQkJCURpZmZlcmVudGlhbE9kb21ldHJ5IGRpZmZlcmVudGlhbE9kb21ldHJ5ID0gKERpZmZlcmVudGlhbE9kb21ldHJ5KXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlRGlmZmVyZW50aWFsT2RvbWV0cnkoZGlmZmVyZW50aWFsT2RvbWV0cnkpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWRlZmF1bHQ6IHJldHVybiBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJfQorCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlJlZ2lvbiBPZiBJbnRlcmVzdDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlJlZ2lvbiBPZiBJbnRlcmVzdDwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZVJlZ2lvbk9mSW50ZXJlc3QoUmVnaW9uT2ZJbnRlcmVzdCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UmFuZ2U8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5SYW5nZTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZVJhbmdlKFJhbmdlIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5DYW1lcmEgSW5mbzwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkNhbWVyYSBJbmZvPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlQ2FtZXJhSW5mbyhDYW1lcmFJbmZvIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5JbXU8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5JbXU8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VJbXUoSW11IG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5MYXNlciBTY2FuPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TGFzZXIgU2NhbjwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUxhc2VyU2NhbihMYXNlclNjYW4gb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkltYWdlPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+SW1hZ2U8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VJbWFnZShJbWFnZSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Q2hhbm5lbCBGbG9hdDMyPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Q2hhbm5lbCBGbG9hdDMyPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlQ2hhbm5lbEZsb2F0MzIoQ2hhbm5lbEZsb2F0MzIgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkNvbXByZXNzZWQgSW1hZ2U8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Db21wcmVzc2VkIEltYWdlPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlQ29tcHJlc3NlZEltYWdlKENvbXByZXNzZWRJbWFnZSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UG9pbnQgQ2xvdWQ8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Qb2ludCBDbG91ZDwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZVBvaW50Q2xvdWQoUG9pbnRDbG91ZCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UG9pbnQgRmllbGQ8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Qb2ludCBGaWVsZDwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZVBvaW50RmllbGQoUG9pbnRGaWVsZCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UG9pbnQgQ2xvdWQyPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+UG9pbnQgQ2xvdWQyPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlUG9pbnRDbG91ZDIoUG9pbnRDbG91ZDIgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkpvaW50IFN0YXRlPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Sm9pbnQgU3RhdGU8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VKb2ludFN0YXRlKEpvaW50U3RhdGUgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPk5hdiBTYXQgU3RhdHVzPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TmF2IFNhdCBTdGF0dXM8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VOYXZTYXRTdGF0dXMoTmF2U2F0U3RhdHVzIG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5OYXYgU2F0IEZpeDwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPk5hdiBTYXQgRml4PC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlTmF2U2F0Rml4KE5hdlNhdEZpeCBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Sm95PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Sm95PC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlSm95KEpveSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Sm95IEZlZWRiYWNrPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Sm95IEZlZWRiYWNrPC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlSm95RmVlZGJhY2soSm95RmVlZGJhY2sgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkpveSBGZWVkYmFjayBBcnJheTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkpveSBGZWVkYmFjayBBcnJheTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUpveUZlZWRiYWNrQXJyYXkoSm95RmVlZGJhY2tBcnJheSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Q2FyIExpa2UgT2RvbWV0cnk8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5DYXIgTGlrZSBPZG9tZXRyeTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUNhckxpa2VPZG9tZXRyeShDYXJMaWtlT2RvbWV0cnkgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkRpZmZlcmVudGlhbCBPZG9tZXRyeTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkRpZmZlcmVudGlhbCBPZG9tZXRyeTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZURpZmZlcmVudGlhbE9kb21ldHJ5KERpZmZlcmVudGlhbE9kb21ldHJ5IG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5FT2JqZWN0PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2gsIGJ1dCB0aGlzIGlzIHRoZSBsYXN0IGNhc2UgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkVPYmplY3Q8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBUIGRlZmF1bHRDYXNlKEVPYmplY3Qgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworfSAvLyBTZW5zb3JfZGF0YXR5cGVzU3dpdGNoCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0J5dGVNdWx0aUFycmF5LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0J5dGVNdWx0aUFycmF5LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjgxMDc2NwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvQnl0ZU11bHRpQXJyYXkuamF2YQpAQCAtMCwwICsxLDY2IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Qnl0ZSBNdWx0aSBBcnJheTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5CeXRlTXVsdGlBcnJheSNnZXRMYXlvdXQgPGVtPkxheW91dDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuQnl0ZU11bHRpQXJyYXkjZ2V0RGF0YSA8ZW0+RGF0YTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UjZ2V0Qnl0ZU11bHRpQXJyYXkoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgQnl0ZU11bHRpQXJyYXkgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5MYXlvdXQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkxheW91dDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+TGF5b3V0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRMYXlvdXQoTXVsdGlBcnJheUxheW91dCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlI2dldEJ5dGVNdWx0aUFycmF5X0xheW91dCgpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU11bHRpQXJyYXlMYXlvdXQgZ2V0TGF5b3V0KCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5CeXRlTXVsdGlBcnJheSNnZXRMYXlvdXQgPGVtPkxheW91dDwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TGF5b3V0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRMYXlvdXQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldExheW91dChNdWx0aUFycmF5TGF5b3V0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkRhdGE8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIHtAbGluayBqYXZhLmxhbmcuT2JqZWN0fS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkRhdGE8L2VtPicgYXR0cmlidXRlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+RGF0YTwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlI2dldEJ5dGVNdWx0aUFycmF5X0RhdGEoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuQnl0ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUVMaXN0PE9iamVjdD4gZ2V0RGF0YSgpOworCit9IC8vIEJ5dGVNdWx0aUFycmF5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0NvbG9yUkdCQS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9Db2xvclJHQkEuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43Y2EzNmFmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9Db2xvclJHQkEuamF2YQpAQCAtMCwwICsxLDEyNyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+Q29sb3IgUkdCQTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5Db2xvclJHQkEjZ2V0UiA8ZW0+UjwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuQ29sb3JSR0JBI2dldEcgPGVtPkc8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkNvbG9yUkdCQSNnZXRCIDxlbT5CPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5Db2xvclJHQkEjZ2V0QSA8ZW0+QTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UjZ2V0Q29sb3JSR0JBKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIENvbG9yUkdCQSBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlI8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlI8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlI8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFIoRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlI2dldENvbG9yUkdCQV9SKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldFIoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkNvbG9yUkdCQSNnZXRSIDxlbT5SPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5SPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRSKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRSKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5HPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5HPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5HPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRHKEZsb2F0MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZSNnZXRDb2xvclJHQkFfRygpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRHKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5Db2xvclJHQkEjZ2V0RyA8ZW0+RzwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+RzwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0RygpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0RyhPYmplY3QgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+QjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+QjwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+QjwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjc2V0QihGbG9hdDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UjZ2V0Q29sb3JSR0JBX0IoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0QigpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuQ29sb3JSR0JBI2dldEIgPGVtPkI8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkI8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI2dldEIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEIoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkE8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkE8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkE8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldEEoRmxvYXQzMikKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlI2dldENvbG9yUkdCQV9BKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0MzIiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldEEoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkNvbG9yUkdCQSNnZXRBIDxlbT5BPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5BPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRBKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRBKE9iamVjdCB2YWx1ZSk7CisKK30gLy8gQ29sb3JSR0JBCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzJNdWx0aUFycmF5LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0MzJNdWx0aUFycmF5LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzkxMGRhMgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQzMk11bHRpQXJyYXkuamF2YQpAQCAtMCwwICsxLDY2IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+RmxvYXQzMiBNdWx0aSBBcnJheTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyTXVsdGlBcnJheSNnZXRMYXlvdXQgPGVtPkxheW91dDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMk11bHRpQXJyYXkjZ2V0RGF0YSA8ZW0+RGF0YTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UjZ2V0RmxvYXQzMk11bHRpQXJyYXkoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgRmxvYXQzMk11bHRpQXJyYXkgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5MYXlvdXQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkxheW91dDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+TGF5b3V0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRMYXlvdXQoTXVsdGlBcnJheUxheW91dCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlI2dldEZsb2F0MzJNdWx0aUFycmF5X0xheW91dCgpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU11bHRpQXJyYXlMYXlvdXQgZ2V0TGF5b3V0KCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyTXVsdGlBcnJheSNnZXRMYXlvdXQgPGVtPkxheW91dDwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TGF5b3V0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRMYXlvdXQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldExheW91dChNdWx0aUFycmF5TGF5b3V0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkRhdGE8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIHtAbGluayBqYXZhLmxhbmcuT2JqZWN0fS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkRhdGE8L2VtPicgYXR0cmlidXRlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+RGF0YTwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlI2dldEZsb2F0MzJNdWx0aUFycmF5X0RhdGEoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMiIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUVMaXN0PE9iamVjdD4gZ2V0RGF0YSgpOworCit9IC8vIEZsb2F0MzJNdWx0aUFycmF5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0NjRNdWx0aUFycmF5LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0Zsb2F0NjRNdWx0aUFycmF5LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2E3Mjk5YwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvRmxvYXQ2NE11bHRpQXJyYXkuamF2YQpAQCAtMCwwICsxLDY2IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+RmxvYXQ2NCBNdWx0aSBBcnJheTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDY0TXVsdGlBcnJheSNnZXRMYXlvdXQgPGVtPkxheW91dDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NE11bHRpQXJyYXkjZ2V0RGF0YSA8ZW0+RGF0YTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UjZ2V0RmxvYXQ2NE11bHRpQXJyYXkoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgRmxvYXQ2NE11bHRpQXJyYXkgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5MYXlvdXQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkxheW91dDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+TGF5b3V0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRMYXlvdXQoTXVsdGlBcnJheUxheW91dCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlI2dldEZsb2F0NjRNdWx0aUFycmF5X0xheW91dCgpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU11bHRpQXJyYXlMYXlvdXQgZ2V0TGF5b3V0KCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDY0TXVsdGlBcnJheSNnZXRMYXlvdXQgPGVtPkxheW91dDwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TGF5b3V0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRMYXlvdXQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldExheW91dChNdWx0aUFycmF5TGF5b3V0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkRhdGE8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIHtAbGluayBqYXZhLmxhbmcuT2JqZWN0fS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkRhdGE8L2VtPicgYXR0cmlidXRlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+RGF0YTwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlI2dldEZsb2F0NjRNdWx0aUFycmF5X0RhdGEoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NCIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUVMaXN0PE9iamVjdD4gZ2V0RGF0YSgpOworCit9IC8vIEZsb2F0NjRNdWx0aUFycmF5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0hlYWRlci5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9IZWFkZXIuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45OTllNGRmCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9IZWFkZXIuamF2YQpAQCAtMCwwICsxLDEwMSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlciNnZXRTZXEgPGVtPlNlcTwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSGVhZGVyI2dldFN0YW1wIDxlbT5TdGFtcDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSGVhZGVyI2dldEZyYW1lX2lkIDxlbT5GcmFtZSBpZDwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UjZ2V0SGVhZGVyKCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIEhlYWRlciBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlNlcTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+U2VxPC9lbT4nIGF0dHJpYnV0ZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5TZXE8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFNlcShVSW50MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZSNnZXRIZWFkZXJfU2VxKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0U2VxKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5IZWFkZXIjZ2V0U2VxIDxlbT5TZXE8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlNlcTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0U2VxKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRTZXEoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlN0YW1wPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5TdGFtcDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+U3RhbXA8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFN0YW1wKFRpbWUpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZSNnZXRIZWFkZXJfU3RhbXAoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVGltZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0U3RhbXAoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlciNnZXRTdGFtcCA8ZW0+U3RhbXA8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlN0YW1wPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRTdGFtcCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0U3RhbXAoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkZyYW1lIGlkPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5GcmFtZSBpZDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+RnJhbWUgaWQ8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldEZyYW1lX2lkKFN0cmluZykKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlI2dldEhlYWRlcl9GcmFtZV9pZCgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdHJpbmciIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJT2JqZWN0IGdldEZyYW1lX2lkKCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5IZWFkZXIjZ2V0RnJhbWVfaWQgPGVtPkZyYW1lIGlkPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5GcmFtZSBpZDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0RnJhbWVfaWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldEZyYW1lX2lkKE9iamVjdCB2YWx1ZSk7CisKK30gLy8gSGVhZGVyCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0ludDE2TXVsdGlBcnJheS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9JbnQxNk11bHRpQXJyYXkuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lMDAxMDMyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9JbnQxNk11bHRpQXJyYXkuamF2YQpAQCAtMCwwICsxLDY2IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SW50MTYgTXVsdGkgQXJyYXk8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSW50MTZNdWx0aUFycmF5I2dldExheW91dCA8ZW0+TGF5b3V0PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQxNk11bHRpQXJyYXkjZ2V0RGF0YSA8ZW0+RGF0YTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UjZ2V0SW50MTZNdWx0aUFycmF5KCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIEludDE2TXVsdGlBcnJheSBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkxheW91dDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+TGF5b3V0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5MYXlvdXQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldExheW91dChNdWx0aUFycmF5TGF5b3V0KQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UjZ2V0SW50MTZNdWx0aUFycmF5X0xheW91dCgpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU11bHRpQXJyYXlMYXlvdXQgZ2V0TGF5b3V0KCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQxNk11bHRpQXJyYXkjZ2V0TGF5b3V0IDxlbT5MYXlvdXQ8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkxheW91dDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0TGF5b3V0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRMYXlvdXQoTXVsdGlBcnJheUxheW91dCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5EYXRhPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBUaGUgbGlzdCBjb250ZW50cyBhcmUgb2YgdHlwZSB7QGxpbmsgamF2YS5sYW5nLk9iamVjdH0uCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5EYXRhPC9lbT4nIGF0dHJpYnV0ZSBsaXN0IGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkRhdGE8L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZSNnZXRJbnQxNk11bHRpQXJyYXlfRGF0YSgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQxNiIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUVMaXN0PE9iamVjdD4gZ2V0RGF0YSgpOworCit9IC8vIEludDE2TXVsdGlBcnJheQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9JbnQzMk11bHRpQXJyYXkuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvSW50MzJNdWx0aUFycmF5LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZThiZDgxMAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvSW50MzJNdWx0aUFycmF5LmphdmEKQEAgLTAsMCArMSw2NiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkludDMyIE11bHRpIEFycmF5PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkludDMyTXVsdGlBcnJheSNnZXRMYXlvdXQgPGVtPkxheW91dDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSW50MzJNdWx0aUFycmF5I2dldERhdGEgPGVtPkRhdGE8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlI2dldEludDMyTXVsdGlBcnJheSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBJbnQzMk11bHRpQXJyYXkgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5MYXlvdXQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkxheW91dDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+TGF5b3V0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRMYXlvdXQoTXVsdGlBcnJheUxheW91dCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlI2dldEludDMyTXVsdGlBcnJheV9MYXlvdXQoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlNdWx0aUFycmF5TGF5b3V0IGdldExheW91dCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSW50MzJNdWx0aUFycmF5I2dldExheW91dCA8ZW0+TGF5b3V0PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5MYXlvdXQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldExheW91dCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0TGF5b3V0KE11bHRpQXJyYXlMYXlvdXQgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+RGF0YTwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogVGhlIGxpc3QgY29udGVudHMgYXJlIG9mIHR5cGUge0BsaW5rIGphdmEubGFuZy5PYmplY3R9LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+RGF0YTwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5EYXRhPC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UjZ2V0SW50MzJNdWx0aUFycmF5X0RhdGEoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSW50MzIiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFTGlzdDxPYmplY3Q+IGdldERhdGEoKTsKKworfSAvLyBJbnQzMk11bHRpQXJyYXkKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvSW50NjRNdWx0aUFycmF5LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0ludDY0TXVsdGlBcnJheS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA4ZjU5MmYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0ludDY0TXVsdGlBcnJheS5qYXZhCkBAIC0wLDAgKzEsNjYgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5JbnQ2NCBNdWx0aSBBcnJheTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQ2NE11bHRpQXJyYXkjZ2V0TGF5b3V0IDxlbT5MYXlvdXQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkludDY0TXVsdGlBcnJheSNnZXREYXRhIDxlbT5EYXRhPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZSNnZXRJbnQ2NE11bHRpQXJyYXkoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgSW50NjRNdWx0aUFycmF5IGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TGF5b3V0PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5MYXlvdXQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkxheW91dDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0TGF5b3V0KE11bHRpQXJyYXlMYXlvdXQpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZSNnZXRJbnQ2NE11bHRpQXJyYXlfTGF5b3V0KCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJTXVsdGlBcnJheUxheW91dCBnZXRMYXlvdXQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkludDY0TXVsdGlBcnJheSNnZXRMYXlvdXQgPGVtPkxheW91dDwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TGF5b3V0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRMYXlvdXQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldExheW91dChNdWx0aUFycmF5TGF5b3V0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkRhdGE8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIHtAbGluayBqYXZhLmxhbmcuT2JqZWN0fS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkRhdGE8L2VtPicgYXR0cmlidXRlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+RGF0YTwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlI2dldEludDY0TXVsdGlBcnJheV9EYXRhKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkludDY0IiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUxpc3Q8T2JqZWN0PiBnZXREYXRhKCk7CisKK30gLy8gSW50NjRNdWx0aUFycmF5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0ludDhNdWx0aUFycmF5LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL0ludDhNdWx0aUFycmF5LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjM0ZGRkNgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvSW50OE11bHRpQXJyYXkuamF2YQpAQCAtMCwwICsxLDY2IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SW50OCBNdWx0aSBBcnJheTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQ4TXVsdGlBcnJheSNnZXRMYXlvdXQgPGVtPkxheW91dDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSW50OE11bHRpQXJyYXkjZ2V0RGF0YSA8ZW0+RGF0YTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UjZ2V0SW50OE11bHRpQXJyYXkoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgSW50OE11bHRpQXJyYXkgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5MYXlvdXQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkxheW91dDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+TGF5b3V0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNzZXRMYXlvdXQoTXVsdGlBcnJheUxheW91dCkKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlI2dldEludDhNdWx0aUFycmF5X0xheW91dCgpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU11bHRpQXJyYXlMYXlvdXQgZ2V0TGF5b3V0KCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQ4TXVsdGlBcnJheSNnZXRMYXlvdXQgPGVtPkxheW91dDwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TGF5b3V0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRMYXlvdXQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldExheW91dChNdWx0aUFycmF5TGF5b3V0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkRhdGE8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIHtAbGluayBqYXZhLmxhbmcuT2JqZWN0fS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkRhdGE8L2VtPicgYXR0cmlidXRlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+RGF0YTwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlI2dldEludDhNdWx0aUFycmF5X0RhdGEoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSW50OCIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUVMaXN0PE9iamVjdD4gZ2V0RGF0YSgpOworCit9IC8vIEludDhNdWx0aUFycmF5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL011bHRpQXJyYXlEaW1lbnNpb24uamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvTXVsdGlBcnJheURpbWVuc2lvbi5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ2ZGY2ODIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL011bHRpQXJyYXlEaW1lbnNpb24uamF2YQpAQCAtMCwwICsxLDEwMSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TXVsdGkgQXJyYXkgRGltZW5zaW9uPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLk11bHRpQXJyYXlEaW1lbnNpb24jZ2V0TGFiZWwgPGVtPkxhYmVsPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5NdWx0aUFycmF5RGltZW5zaW9uI2dldFNpemUgPGVtPlNpemU8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLk11bHRpQXJyYXlEaW1lbnNpb24jZ2V0U3RyaWRlIDxlbT5TdHJpZGU8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlI2dldE11bHRpQXJyYXlEaW1lbnNpb24oKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgTXVsdGlBcnJheURpbWVuc2lvbiBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkxhYmVsPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5MYWJlbDwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+TGFiZWw8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldExhYmVsKFN0cmluZykKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlI2dldE11bHRpQXJyYXlEaW1lbnNpb25fTGFiZWwoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RyaW5nIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRMYWJlbCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuTXVsdGlBcnJheURpbWVuc2lvbiNnZXRMYWJlbCA8ZW0+TGFiZWw8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkxhYmVsPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRMYWJlbCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0TGFiZWwoT2JqZWN0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPlNpemU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlNpemU8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPlNpemU8L2VtPicgYXR0cmlidXRlLgorCSAqIEBzZWUgI3NldFNpemUoVUludDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UjZ2V0TXVsdGlBcnJheURpbWVuc2lvbl9TaXplKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0U2l6ZSgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuTXVsdGlBcnJheURpbWVuc2lvbiNnZXRTaXplIDxlbT5TaXplPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5TaXplPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNnZXRTaXplKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRTaXplKE9iamVjdCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5TdHJpZGU8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPlN0cmlkZTwvZW0+JyBhdHRyaWJ1dGUgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+U3RyaWRlPC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXRTdHJpZGUoVUludDMyKQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UjZ2V0TXVsdGlBcnJheURpbWVuc2lvbl9TdHJpZGUoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDMyIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU9iamVjdCBnZXRTdHJpZGUoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLk11bHRpQXJyYXlEaW1lbnNpb24jZ2V0U3RyaWRlIDxlbT5TdHJpZGU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPlN0cmlkZTwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0U3RyaWRlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRTdHJpZGUoT2JqZWN0IHZhbHVlKTsKKworfSAvLyBNdWx0aUFycmF5RGltZW5zaW9uCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL011bHRpQXJyYXlMYXlvdXQuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvTXVsdGlBcnJheUxheW91dC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM1NzhjN2YKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL011bHRpQXJyYXlMYXlvdXQuamF2YQpAQCAtMCwwICsxLDY2IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TXVsdGkgQXJyYXkgTGF5b3V0PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLk11bHRpQXJyYXlMYXlvdXQjZ2V0RGltIDxlbT5EaW08L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLk11bHRpQXJyYXlMYXlvdXQjZ2V0RGF0YV9vZmZzZXQgPGVtPkRhdGEgb2Zmc2V0PC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZSNnZXRNdWx0aUFycmF5TGF5b3V0KCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIE11bHRpQXJyYXlMYXlvdXQgZXh0ZW5kcyBFT2JqZWN0IHsKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5EaW08L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0LgorCSAqIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIHtAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5NdWx0aUFycmF5RGltZW5zaW9ufS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkRpbTwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdCBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5EaW08L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGxpc3QuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZSNnZXRNdWx0aUFycmF5TGF5b3V0X0RpbSgpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUxpc3Q8TXVsdGlBcnJheURpbWVuc2lvbj4gZ2V0RGltKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5EYXRhIG9mZnNldDwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+RGF0YSBvZmZzZXQ8L2VtPicgYXR0cmlidXRlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkRhdGEgb2Zmc2V0PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiBAc2VlICNzZXREYXRhX29mZnNldChVSW50MzIpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZSNnZXRNdWx0aUFycmF5TGF5b3V0X0RhdGFfb2Zmc2V0KCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQzMiIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlPYmplY3QgZ2V0RGF0YV9vZmZzZXQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLk11bHRpQXJyYXlMYXlvdXQjZ2V0RGF0YV9vZmZzZXQgPGVtPkRhdGEgb2Zmc2V0PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5EYXRhIG9mZnNldDwvZW0+JyBhdHRyaWJ1dGUuCisJICogQHNlZSAjZ2V0RGF0YV9vZmZzZXQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldERhdGFfb2Zmc2V0KE9iamVjdCB2YWx1ZSk7CisKK30gLy8gTXVsdGlBcnJheUxheW91dApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzRmFjdG9yeS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9TdGRfZGF0YXR5cGVzRmFjdG9yeS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIxYTAyMzUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNGYWN0b3J5LmphdmEKQEAgLTAsMCArMSwxNjggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVGYWN0b3J5OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBUaGUgPGI+RmFjdG9yeTwvYj4gZm9yIHRoZSBtb2RlbC4KKyAqIEl0IHByb3ZpZGVzIGEgY3JlYXRlIG1ldGhvZCBmb3IgZWFjaCBub24tYWJzdHJhY3QgY2xhc3Mgb2YgdGhlIG1vZGVsLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgU3RkX2RhdGF0eXBlc0ZhY3RvcnkgZXh0ZW5kcyBFRmFjdG9yeSB7CisJLyoqCisJICogVGhlIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiB0aGUgZmFjdG9yeS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTdGRfZGF0YXR5cGVzRmFjdG9yeSBlSU5TVEFOQ0UgPSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbC5pbml0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkhlYWRlcjwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+SGVhZGVyPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlIZWFkZXIgY3JlYXRlSGVhZGVyKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPk11bHRpIEFycmF5IERpbWVuc2lvbjwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TXVsdGkgQXJyYXkgRGltZW5zaW9uPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlNdWx0aUFycmF5RGltZW5zaW9uIGNyZWF0ZU11bHRpQXJyYXlEaW1lbnNpb24oKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+TXVsdGkgQXJyYXkgTGF5b3V0PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5NdWx0aSBBcnJheSBMYXlvdXQ8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCU11bHRpQXJyYXlMYXlvdXQgY3JlYXRlTXVsdGlBcnJheUxheW91dCgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5CeXRlIE11bHRpIEFycmF5PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5CeXRlIE11bHRpIEFycmF5PC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlCeXRlTXVsdGlBcnJheSBjcmVhdGVCeXRlTXVsdGlBcnJheSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Db2xvciBSR0JBPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5Db2xvciBSR0JBPC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlDb2xvclJHQkEgY3JlYXRlQ29sb3JSR0JBKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkZsb2F0MzIgTXVsdGkgQXJyYXk8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkZsb2F0MzIgTXVsdGkgQXJyYXk8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUZsb2F0MzJNdWx0aUFycmF5IGNyZWF0ZUZsb2F0MzJNdWx0aUFycmF5KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkludDMyIE11bHRpIEFycmF5PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5JbnQzMiBNdWx0aSBBcnJheTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJSW50MzJNdWx0aUFycmF5IGNyZWF0ZUludDMyTXVsdGlBcnJheSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5JbnQ4IE11bHRpIEFycmF5PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5JbnQ4IE11bHRpIEFycmF5PC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlJbnQ4TXVsdGlBcnJheSBjcmVhdGVJbnQ4TXVsdGlBcnJheSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5JbnQxNiBNdWx0aSBBcnJheTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+SW50MTYgTXVsdGkgQXJyYXk8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUludDE2TXVsdGlBcnJheSBjcmVhdGVJbnQxNk11bHRpQXJyYXkoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+SW50NjQgTXVsdGkgQXJyYXk8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkludDY0IE11bHRpIEFycmF5PC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlJbnQ2NE11bHRpQXJyYXkgY3JlYXRlSW50NjRNdWx0aUFycmF5KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkZsb2F0NjQgTXVsdGkgQXJyYXk8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPkZsb2F0NjQgTXVsdGkgQXJyYXk8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCUZsb2F0NjRNdWx0aUFycmF5IGNyZWF0ZUZsb2F0NjRNdWx0aUFycmF5KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlVJbnQ2NCBNdWx0aSBBcnJheTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+VUludDY0IE11bHRpIEFycmF5PC9lbT4nLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlVSW50NjRNdWx0aUFycmF5IGNyZWF0ZVVJbnQ2NE11bHRpQXJyYXkoKTsKKworCS8qKgorCSAqIFJldHVybnMgYSBuZXcgb2JqZWN0IG9mIGNsYXNzICc8ZW0+VUludDE2IE11bHRpIEFycmF5PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5VSW50MTYgTXVsdGkgQXJyYXk8L2VtPicuCisJICogQGdlbmVyYXRlZAorCSAqLworCVVJbnQxNk11bHRpQXJyYXkgY3JlYXRlVUludDE2TXVsdGlBcnJheSgpOworCisJLyoqCisJICogUmV0dXJucyBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5VSW50MzIgTXVsdGkgQXJyYXk8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlVJbnQzMiBNdWx0aSBBcnJheTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJVUludDMyTXVsdGlBcnJheSBjcmVhdGVVSW50MzJNdWx0aUFycmF5KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCBvZiBjbGFzcyAnPGVtPlVJbnQ4IE11bHRpIEFycmF5PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiBhIG5ldyBvYmplY3Qgb2YgY2xhc3MgJzxlbT5VSW50OCBNdWx0aSBBcnJheTwvZW0+Jy4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJVUludDhNdWx0aUFycmF5IGNyZWF0ZVVJbnQ4TXVsdGlBcnJheSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgcGFja2FnZSBzdXBwb3J0ZWQgYnkgdGhpcyBmYWN0b3J5LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgcGFja2FnZSBzdXBwb3J0ZWQgYnkgdGhpcyBmYWN0b3J5LgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlTdGRfZGF0YXR5cGVzUGFja2FnZSBnZXRTdGRfZGF0YXR5cGVzUGFja2FnZSgpOworCit9IC8vIFN0ZF9kYXRhdHlwZXNGYWN0b3J5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1N0ZF9kYXRhdHlwZXNQYWNrYWdlLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjY3MDg1OAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvU3RkX2RhdGF0eXBlc1BhY2thZ2UuamF2YQpAQCAtMCwwICsxLDIyNTQgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVBdHRyaWJ1dGU7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRURhdGFUeXBlOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVJlZmVyZW5jZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogVGhlIDxiPlBhY2thZ2U8L2I+IGZvciB0aGUgbW9kZWwuCisgKiBJdCBjb250YWlucyBhY2Nlc3NvcnMgZm9yIHRoZSBtZXRhIG9iamVjdHMgdG8gcmVwcmVzZW50CisgKiA8dWw+CisgKiA8bGk+ZWFjaCBjbGFzcyw8L2xpPgorICogPGxpPmVhY2ggZmVhdHVyZSBvZiBlYWNoIGNsYXNzLDwvbGk+CisgKiA8bGk+ZWFjaCBvcGVyYXRpb24gb2YgZWFjaCBjbGFzcyw8L2xpPgorICogPGxpPmVhY2ggZW51bSw8L2xpPgorICogPGxpPmFuZCBlYWNoIGRhdGEgdHlwZTwvbGk+CisgKiA8L3VsPgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNGYWN0b3J5CisgKiBAbW9kZWwga2luZD0icGFja2FnZSIKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBTdGRfZGF0YXR5cGVzUGFja2FnZSBleHRlbmRzIEVQYWNrYWdlIHsKKwkvKioKKwkgKiBUaGUgcGFja2FnZSBuYW1lLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCVN0cmluZyBlTkFNRSA9ICJzdGRfZGF0YXR5cGVzIjsKKworCS8qKgorCSAqIFRoZSBwYWNrYWdlIG5hbWVzcGFjZSBVUkkuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJU3RyaW5nIGVOU19VUkkgPSAiaHR0cDovLy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMuZWNvcmUiOworCisJLyoqCisJICogVGhlIHBhY2thZ2UgbmFtZXNwYWNlIG5hbWUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJU3RyaW5nIGVOU19QUkVGSVggPSAiUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzIjsKKworCS8qKgorCSAqIFRoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIHBhY2thZ2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJU3RkX2RhdGF0eXBlc1BhY2thZ2UgZUlOU1RBTkNFID0gb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwuaW5pdCgpOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLkhlYWRlckltcGwgPGVtPkhlYWRlcjwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuSGVhZGVySW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0SGVhZGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IEhFQURFUiA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+U2VxPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSEVBREVSX19TRVEgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlN0YW1wPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSEVBREVSX19TVEFNUCA9IDE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RnJhbWUgaWQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBIRUFERVJfX0ZSQU1FX0lEID0gMjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5IZWFkZXI8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSEVBREVSX0ZFQVRVUkVfQ09VTlQgPSAzOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkhlYWRlcjwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBIRUFERVJfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5NdWx0aUFycmF5RGltZW5zaW9uSW1wbCA8ZW0+TXVsdGkgQXJyYXkgRGltZW5zaW9uPC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5NdWx0aUFycmF5RGltZW5zaW9uSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0TXVsdGlBcnJheURpbWVuc2lvbigpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBNVUxUSV9BUlJBWV9ESU1FTlNJT04gPSAxOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxhYmVsPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTVVMVElfQVJSQVlfRElNRU5TSU9OX19MQUJFTCA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+U2l6ZTwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE1VTFRJX0FSUkFZX0RJTUVOU0lPTl9fU0laRSA9IDE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+U3RyaWRlPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTVVMVElfQVJSQVlfRElNRU5TSU9OX19TVFJJREUgPSAyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPk11bHRpIEFycmF5IERpbWVuc2lvbjwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBNVUxUSV9BUlJBWV9ESU1FTlNJT05fRkVBVFVSRV9DT1VOVCA9IDM7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+TXVsdGkgQXJyYXkgRGltZW5zaW9uPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IE1VTFRJX0FSUkFZX0RJTUVOU0lPTl9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLk11bHRpQXJyYXlMYXlvdXRJbXBsIDxlbT5NdWx0aSBBcnJheSBMYXlvdXQ8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLk11bHRpQXJyYXlMYXlvdXRJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRNdWx0aUFycmF5TGF5b3V0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IE1VTFRJX0FSUkFZX0xBWU9VVCA9IDI7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RGltPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBNVUxUSV9BUlJBWV9MQVlPVVRfX0RJTSA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RGF0YSBvZmZzZXQ8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBNVUxUSV9BUlJBWV9MQVlPVVRfX0RBVEFfT0ZGU0VUID0gMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5NdWx0aSBBcnJheSBMYXlvdXQ8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgTVVMVElfQVJSQVlfTEFZT1VUX0ZFQVRVUkVfQ09VTlQgPSAyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPk11bHRpIEFycmF5IExheW91dDwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBNVUxUSV9BUlJBWV9MQVlPVVRfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5CeXRlTXVsdGlBcnJheUltcGwgPGVtPkJ5dGUgTXVsdGkgQXJyYXk8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLkJ5dGVNdWx0aUFycmF5SW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0Qnl0ZU11bHRpQXJyYXkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgQllURV9NVUxUSV9BUlJBWSA9IDM7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+TGF5b3V0PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQllURV9NVUxUSV9BUlJBWV9fTEFZT1VUID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5EYXRhPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBCWVRFX01VTFRJX0FSUkFZX19EQVRBID0gMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5CeXRlIE11bHRpIEFycmF5PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEJZVEVfTVVMVElfQVJSQVlfRkVBVFVSRV9DT1VOVCA9IDI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+Qnl0ZSBNdWx0aSBBcnJheTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBCWVRFX01VTFRJX0FSUkFZX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuQ29sb3JSR0JBSW1wbCA8ZW0+Q29sb3IgUkdCQTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuQ29sb3JSR0JBSW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0Q29sb3JSR0JBKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IENPTE9SX1JHQkEgPSA0OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPlI8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDT0xPUl9SR0JBX19SID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5HPC9iPjwvZW0+JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgQ09MT1JfUkdCQV9fRyA9IDE7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+QjwvYj48L2VtPicgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IENPTE9SX1JHQkFfX0IgPSAyOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkE8L2I+PC9lbT4nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDT0xPUl9SR0JBX19BID0gMzsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5Db2xvciBSR0JBPC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IENPTE9SX1JHQkFfRkVBVFVSRV9DT1VOVCA9IDQ7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+Q29sb3IgUkdCQTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBDT0xPUl9SR0JBX09QRVJBVElPTl9DT1VOVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuRmxvYXQzMk11bHRpQXJyYXlJbXBsIDxlbT5GbG9hdDMyIE11bHRpIEFycmF5PC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5GbG9hdDMyTXVsdGlBcnJheUltcGwKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldEZsb2F0MzJNdWx0aUFycmF5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IEZMT0FUMzJfTVVMVElfQVJSQVkgPSA1OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxheW91dDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEZMT0FUMzJfTVVMVElfQVJSQVlfX0xBWU9VVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RGF0YTwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgRkxPQVQzMl9NVUxUSV9BUlJBWV9fREFUQSA9IDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+RmxvYXQzMiBNdWx0aSBBcnJheTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBGTE9BVDMyX01VTFRJX0FSUkFZX0ZFQVRVUkVfQ09VTlQgPSAyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkZsb2F0MzIgTXVsdGkgQXJyYXk8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgRkxPQVQzMl9NVUxUSV9BUlJBWV9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLkludDMyTXVsdGlBcnJheUltcGwgPGVtPkludDMyIE11bHRpIEFycmF5PC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5JbnQzMk11bHRpQXJyYXlJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRJbnQzMk11bHRpQXJyYXkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgSU5UMzJfTVVMVElfQVJSQVkgPSA2OworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxheW91dDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElOVDMyX01VTFRJX0FSUkFZX19MQVlPVVQgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkRhdGE8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElOVDMyX01VTFRJX0FSUkFZX19EQVRBID0gMTsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygc3RydWN0dXJhbCBmZWF0dXJlcyBvZiB0aGUgJzxlbT5JbnQzMiBNdWx0aSBBcnJheTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBJTlQzMl9NVUxUSV9BUlJBWV9GRUFUVVJFX0NPVU5UID0gMjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5JbnQzMiBNdWx0aSBBcnJheTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBJTlQzMl9NVUxUSV9BUlJBWV9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLkludDhNdWx0aUFycmF5SW1wbCA8ZW0+SW50OCBNdWx0aSBBcnJheTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuSW50OE11bHRpQXJyYXlJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRJbnQ4TXVsdGlBcnJheSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBJTlQ4X01VTFRJX0FSUkFZID0gNzsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MYXlvdXQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBJTlQ4X01VTFRJX0FSUkFZX19MQVlPVVQgPSAwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkRhdGE8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElOVDhfTVVMVElfQVJSQVlfX0RBVEEgPSAxOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPkludDggTXVsdGkgQXJyYXk8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU5UOF9NVUxUSV9BUlJBWV9GRUFUVVJFX0NPVU5UID0gMjsKKworCS8qKgorCSAqIFRoZSBudW1iZXIgb2Ygb3BlcmF0aW9ucyBvZiB0aGUgJzxlbT5JbnQ4IE11bHRpIEFycmF5PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IElOVDhfTVVMVElfQVJSQVlfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5JbnQxNk11bHRpQXJyYXlJbXBsIDxlbT5JbnQxNiBNdWx0aSBBcnJheTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuSW50MTZNdWx0aUFycmF5SW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0SW50MTZNdWx0aUFycmF5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IElOVDE2X01VTFRJX0FSUkFZID0gODsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MYXlvdXQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBJTlQxNl9NVUxUSV9BUlJBWV9fTEFZT1VUID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5EYXRhPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBJTlQxNl9NVUxUSV9BUlJBWV9fREFUQSA9IDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+SW50MTYgTXVsdGkgQXJyYXk8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU5UMTZfTVVMVElfQVJSQVlfRkVBVFVSRV9DT1VOVCA9IDI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+SW50MTYgTXVsdGkgQXJyYXk8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU5UMTZfTVVMVElfQVJSQVlfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5JbnQ2NE11bHRpQXJyYXlJbXBsIDxlbT5JbnQ2NCBNdWx0aSBBcnJheTwvZW0+fScgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuSW50NjRNdWx0aUFycmF5SW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0SW50NjRNdWx0aUFycmF5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IElOVDY0X01VTFRJX0FSUkFZID0gOTsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MYXlvdXQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBJTlQ2NF9NVUxUSV9BUlJBWV9fTEFZT1VUID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5EYXRhPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBJTlQ2NF9NVUxUSV9BUlJBWV9fREFUQSA9IDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+SW50NjQgTXVsdGkgQXJyYXk8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU5UNjRfTVVMVElfQVJSQVlfRkVBVFVSRV9DT1VOVCA9IDI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+SW50NjQgTXVsdGkgQXJyYXk8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgSU5UNjRfTVVMVElfQVJSQVlfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5GbG9hdDY0TXVsdGlBcnJheUltcGwgPGVtPkZsb2F0NjQgTXVsdGkgQXJyYXk8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLkZsb2F0NjRNdWx0aUFycmF5SW1wbAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0RmxvYXQ2NE11bHRpQXJyYXkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgRkxPQVQ2NF9NVUxUSV9BUlJBWSA9IDEwOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxheW91dDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IEZMT0FUNjRfTVVMVElfQVJSQVlfX0xBWU9VVCA9IDA7CisKKwkvKioKKwkgKiBUaGUgZmVhdHVyZSBpZCBmb3IgdGhlICc8ZW0+PGI+RGF0YTwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgRkxPQVQ2NF9NVUxUSV9BUlJBWV9fREFUQSA9IDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+RmxvYXQ2NCBNdWx0aSBBcnJheTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBGTE9BVDY0X01VTFRJX0FSUkFZX0ZFQVRVUkVfQ09VTlQgPSAyOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBvcGVyYXRpb25zIG9mIHRoZSAnPGVtPkZsb2F0NjQgTXVsdGkgQXJyYXk8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgRkxPQVQ2NF9NVUxUSV9BUlJBWV9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlVJbnQ2NE11bHRpQXJyYXlJbXBsIDxlbT5VSW50NjQgTXVsdGkgQXJyYXk8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlVJbnQ2NE11bHRpQXJyYXlJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRVSW50NjRNdWx0aUFycmF5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFVJTlQ2NF9NVUxUSV9BUlJBWSA9IDExOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxheW91dDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFVJTlQ2NF9NVUxUSV9BUlJBWV9fTEFZT1VUID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5EYXRhPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBVSU5UNjRfTVVMVElfQVJSQVlfX0RBVEEgPSAxOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlVJbnQ2NCBNdWx0aSBBcnJheTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBVSU5UNjRfTVVMVElfQVJSQVlfRkVBVFVSRV9DT1VOVCA9IDI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+VUludDY0IE11bHRpIEFycmF5PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFVJTlQ2NF9NVUxUSV9BUlJBWV9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlVJbnQxNk11bHRpQXJyYXlJbXBsIDxlbT5VSW50MTYgTXVsdGkgQXJyYXk8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlVJbnQxNk11bHRpQXJyYXlJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRVSW50MTZNdWx0aUFycmF5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFVJTlQxNl9NVUxUSV9BUlJBWSA9IDEyOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxheW91dDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFVJTlQxNl9NVUxUSV9BUlJBWV9fTEFZT1VUID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5EYXRhPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBVSU5UMTZfTVVMVElfQVJSQVlfX0RBVEEgPSAxOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlVJbnQxNiBNdWx0aSBBcnJheTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBVSU5UMTZfTVVMVElfQVJSQVlfRkVBVFVSRV9DT1VOVCA9IDI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+VUludDE2IE11bHRpIEFycmF5PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFVJTlQxNl9NVUxUSV9BUlJBWV9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlVJbnQzMk11bHRpQXJyYXlJbXBsIDxlbT5VSW50MzIgTXVsdGkgQXJyYXk8L2VtPn0nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlVJbnQzMk11bHRpQXJyYXlJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRVSW50MzJNdWx0aUFycmF5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFVJTlQzMl9NVUxUSV9BUlJBWSA9IDEzOworCisJLyoqCisJICogVGhlIGZlYXR1cmUgaWQgZm9yIHRoZSAnPGVtPjxiPkxheW91dDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFVJTlQzMl9NVUxUSV9BUlJBWV9fTEFZT1VUID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5EYXRhPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBVSU5UMzJfTVVMVElfQVJSQVlfX0RBVEEgPSAxOworCisJLyoqCisJICogVGhlIG51bWJlciBvZiBzdHJ1Y3R1cmFsIGZlYXR1cmVzIG9mIHRoZSAnPGVtPlVJbnQzMiBNdWx0aSBBcnJheTwvZW0+JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBVSU5UMzJfTVVMVElfQVJSQVlfRkVBVFVSRV9DT1VOVCA9IDI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+VUludDMyIE11bHRpIEFycmF5PC9lbT4nIGNsYXNzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJaW50IFVJTlQzMl9NVUxUSV9BUlJBWV9PUEVSQVRJT05fQ09VTlQgPSAwOworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlVJbnQ4TXVsdGlBcnJheUltcGwgPGVtPlVJbnQ4IE11bHRpIEFycmF5PC9lbT59JyBjbGFzcy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5VSW50OE11bHRpQXJyYXlJbXBsCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRVSW50OE11bHRpQXJyYXkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgVUlOVDhfTVVMVElfQVJSQVkgPSAxNDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5MYXlvdXQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBVSU5UOF9NVUxUSV9BUlJBWV9fTEFZT1VUID0gMDsKKworCS8qKgorCSAqIFRoZSBmZWF0dXJlIGlkIGZvciB0aGUgJzxlbT48Yj5EYXRhPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCWludCBVSU5UOF9NVUxUSV9BUlJBWV9fREFUQSA9IDE7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIHN0cnVjdHVyYWwgZmVhdHVyZXMgb2YgdGhlICc8ZW0+VUludDggTXVsdGkgQXJyYXk8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgVUlOVDhfTVVMVElfQVJSQVlfRkVBVFVSRV9DT1VOVCA9IDI7CisKKwkvKioKKwkgKiBUaGUgbnVtYmVyIG9mIG9wZXJhdGlvbnMgb2YgdGhlICc8ZW0+VUludDggTXVsdGkgQXJyYXk8L2VtPicgY2xhc3MuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlpbnQgVUlOVDhfTVVMVElfQVJSQVlfT1BFUkFUSU9OX0NPVU5UID0gMDsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+VUludDMyPC9lbT4nIGRhdGEgdHlwZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgVUludDMyCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRVSW50MzIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgVUlOVDMyID0gMTU7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPlRpbWU8L2VtPicgZGF0YSB0eXBlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBUaW1lCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRUaW1lKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IFRJTUUgPSAxNjsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+U3RyaW5nPC9lbT4nIGRhdGEgdHlwZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgU3RyaW5nCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRTdHJpbmcoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgU1RSSU5HID0gMTc7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkJ5dGU8L2VtPicgZGF0YSB0eXBlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBCeXRlCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRCeXRlKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IEJZVEUgPSAxODsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+RmxvYXQ2NDwvZW0+JyBkYXRhIHR5cGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIEZsb2F0NjQKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldEZsb2F0NjQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgRkxPQVQ2NCA9IDE5OworCisJLyoqCisJICogVGhlIG1ldGEgb2JqZWN0IGlkIGZvciB0aGUgJzxlbT5JbnQ4PC9lbT4nIGRhdGEgdHlwZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgSW50OAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0SW50OCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCWludCBJTlQ4ID0gMjA7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkJvb2w8L2VtPicgZGF0YSB0eXBlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBCb29sCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRCb29sKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IEJPT0wgPSAyMTsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+VUludDg8L2VtPicgZGF0YSB0eXBlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBVSW50OAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0VUludDgoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgVUlOVDggPSAyMjsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+VUludDE2PC9lbT4nIGRhdGEgdHlwZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgVUludDE2CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRVSW50MTYoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgVUlOVDE2ID0gMjM7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkludDMyPC9lbT4nIGRhdGEgdHlwZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgSW50MzIKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldEludDMyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IElOVDMyID0gMjQ7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkludDE2PC9lbT4nIGRhdGEgdHlwZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgSW50MTYKKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldEludDE2KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IElOVDE2ID0gMjU7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkNoYXI8L2VtPicgZGF0YSB0eXBlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBDaGFyCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRDaGFyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IENIQVIgPSAyNjsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+RHVyYXRpb248L2VtPicgZGF0YSB0eXBlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBEdXJhdGlvbgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0RHVyYXRpb24oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgRFVSQVRJT04gPSAyNzsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+SW50NjQ8L2VtPicgZGF0YSB0eXBlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBJbnQ2NAorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0SW50NjQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgSU5UNjQgPSAyODsKKworCS8qKgorCSAqIFRoZSBtZXRhIG9iamVjdCBpZCBmb3IgdGhlICc8ZW0+VUludDY0PC9lbT4nIGRhdGEgdHlwZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgVUludDY0CisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRVSW50NjQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnQgVUlOVDY0ID0gMjk7CisKKwkvKioKKwkgKiBUaGUgbWV0YSBvYmplY3QgaWQgZm9yIHRoZSAnPGVtPkZsb2F0MzI8L2VtPicgZGF0YSB0eXBlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSBGbG9hdDMyCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRGbG9hdDMyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJaW50IEZMT0FUMzIgPSAzMDsKKworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSGVhZGVyIDxlbT5IZWFkZXI8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+SGVhZGVyPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSGVhZGVyCisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRIZWFkZXIoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSGVhZGVyI2dldFNlcSA8ZW0+U2VxPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+U2VxPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSGVhZGVyI2dldFNlcSgpCisJICogQHNlZSAjZ2V0SGVhZGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRIZWFkZXJfU2VxKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlciNnZXRTdGFtcCA8ZW0+U3RhbXA8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5TdGFtcDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlciNnZXRTdGFtcCgpCisJICogQHNlZSAjZ2V0SGVhZGVyKCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRIZWFkZXJfU3RhbXAoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSGVhZGVyI2dldEZyYW1lX2lkIDxlbT5GcmFtZSBpZDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAnPGVtPkZyYW1lIGlkPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSGVhZGVyI2dldEZyYW1lX2lkKCkKKwkgKiBAc2VlICNnZXRIZWFkZXIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEhlYWRlcl9GcmFtZV9pZCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuTXVsdGlBcnJheURpbWVuc2lvbiA8ZW0+TXVsdGkgQXJyYXkgRGltZW5zaW9uPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPk11bHRpIEFycmF5IERpbWVuc2lvbjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLk11bHRpQXJyYXlEaW1lbnNpb24KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldE11bHRpQXJyYXlEaW1lbnNpb24oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuTXVsdGlBcnJheURpbWVuc2lvbiNnZXRMYWJlbCA8ZW0+TGFiZWw8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5MYWJlbDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLk11bHRpQXJyYXlEaW1lbnNpb24jZ2V0TGFiZWwoKQorCSAqIEBzZWUgI2dldE11bHRpQXJyYXlEaW1lbnNpb24oKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldE11bHRpQXJyYXlEaW1lbnNpb25fTGFiZWwoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuTXVsdGlBcnJheURpbWVuc2lvbiNnZXRTaXplIDxlbT5TaXplPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+U2l6ZTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLk11bHRpQXJyYXlEaW1lbnNpb24jZ2V0U2l6ZSgpCisJICogQHNlZSAjZ2V0TXVsdGlBcnJheURpbWVuc2lvbigpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0TXVsdGlBcnJheURpbWVuc2lvbl9TaXplKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLk11bHRpQXJyYXlEaW1lbnNpb24jZ2V0U3RyaWRlIDxlbT5TdHJpZGU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgJzxlbT5TdHJpZGU8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5NdWx0aUFycmF5RGltZW5zaW9uI2dldFN0cmlkZSgpCisJICogQHNlZSAjZ2V0TXVsdGlBcnJheURpbWVuc2lvbigpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0TXVsdGlBcnJheURpbWVuc2lvbl9TdHJpZGUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLk11bHRpQXJyYXlMYXlvdXQgPGVtPk11bHRpIEFycmF5IExheW91dDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5NdWx0aSBBcnJheSBMYXlvdXQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5NdWx0aUFycmF5TGF5b3V0CisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRNdWx0aUFycmF5TGF5b3V0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0ICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuTXVsdGlBcnJheUxheW91dCNnZXREaW0gPGVtPkRpbTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0ICc8ZW0+RGltPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuTXVsdGlBcnJheUxheW91dCNnZXREaW0oKQorCSAqIEBzZWUgI2dldE11bHRpQXJyYXlMYXlvdXQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldE11bHRpQXJyYXlMYXlvdXRfRGltKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLk11bHRpQXJyYXlMYXlvdXQjZ2V0RGF0YV9vZmZzZXQgPGVtPkRhdGEgb2Zmc2V0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+RGF0YSBvZmZzZXQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5NdWx0aUFycmF5TGF5b3V0I2dldERhdGFfb2Zmc2V0KCkKKwkgKiBAc2VlICNnZXRNdWx0aUFycmF5TGF5b3V0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRNdWx0aUFycmF5TGF5b3V0X0RhdGFfb2Zmc2V0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5CeXRlTXVsdGlBcnJheSA8ZW0+Qnl0ZSBNdWx0aSBBcnJheTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5CeXRlIE11bHRpIEFycmF5PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuQnl0ZU11bHRpQXJyYXkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldEJ5dGVNdWx0aUFycmF5KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkJ5dGVNdWx0aUFycmF5I2dldExheW91dCA8ZW0+TGF5b3V0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+TGF5b3V0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuQnl0ZU11bHRpQXJyYXkjZ2V0TGF5b3V0KCkKKwkgKiBAc2VlICNnZXRCeXRlTXVsdGlBcnJheSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0Qnl0ZU11bHRpQXJyYXlfTGF5b3V0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuQnl0ZU11bHRpQXJyYXkjZ2V0RGF0YSA8ZW0+RGF0YTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICc8ZW0+RGF0YTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkJ5dGVNdWx0aUFycmF5I2dldERhdGEoKQorCSAqIEBzZWUgI2dldEJ5dGVNdWx0aUFycmF5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRCeXRlTXVsdGlBcnJheV9EYXRhKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5Db2xvclJHQkEgPGVtPkNvbG9yIFJHQkE8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+Q29sb3IgUkdCQTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkNvbG9yUkdCQQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0Q29sb3JSR0JBKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkNvbG9yUkdCQSNnZXRSIDxlbT5SPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+UjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkNvbG9yUkdCQSNnZXRSKCkKKwkgKiBAc2VlICNnZXRDb2xvclJHQkEoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldENvbG9yUkdCQV9SKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkNvbG9yUkdCQSNnZXRHIDxlbT5HPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+RzwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkNvbG9yUkdCQSNnZXRHKCkKKwkgKiBAc2VlICNnZXRDb2xvclJHQkEoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldENvbG9yUkdCQV9HKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkNvbG9yUkdCQSNnZXRCIDxlbT5CPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+QjwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkNvbG9yUkdCQSNnZXRCKCkKKwkgKiBAc2VlICNnZXRDb2xvclJHQkEoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldENvbG9yUkdCQV9CKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkNvbG9yUkdCQSNnZXRBIDxlbT5BPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlICc8ZW0+QTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkNvbG9yUkdCQSNnZXRBKCkKKwkgKiBAc2VlICNnZXRDb2xvclJHQkEoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldENvbG9yUkdCQV9BKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDMyTXVsdGlBcnJheSA8ZW0+RmxvYXQzMiBNdWx0aSBBcnJheTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5GbG9hdDMyIE11bHRpIEFycmF5PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMk11bHRpQXJyYXkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldEZsb2F0MzJNdWx0aUFycmF5KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0MzJNdWx0aUFycmF5I2dldExheW91dCA8ZW0+TGF5b3V0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+TGF5b3V0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMk11bHRpQXJyYXkjZ2V0TGF5b3V0KCkKKwkgKiBAc2VlICNnZXRGbG9hdDMyTXVsdGlBcnJheSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0RmxvYXQzMk11bHRpQXJyYXlfTGF5b3V0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMk11bHRpQXJyYXkjZ2V0RGF0YSA8ZW0+RGF0YTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICc8ZW0+RGF0YTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0MzJNdWx0aUFycmF5I2dldERhdGEoKQorCSAqIEBzZWUgI2dldEZsb2F0MzJNdWx0aUFycmF5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRGbG9hdDMyTXVsdGlBcnJheV9EYXRhKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQzMk11bHRpQXJyYXkgPGVtPkludDMyIE11bHRpIEFycmF5PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPkludDMyIE11bHRpIEFycmF5PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSW50MzJNdWx0aUFycmF5CisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRJbnQzMk11bHRpQXJyYXkoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSW50MzJNdWx0aUFycmF5I2dldExheW91dCA8ZW0+TGF5b3V0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+TGF5b3V0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSW50MzJNdWx0aUFycmF5I2dldExheW91dCgpCisJICogQHNlZSAjZ2V0SW50MzJNdWx0aUFycmF5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRJbnQzMk11bHRpQXJyYXlfTGF5b3V0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSW50MzJNdWx0aUFycmF5I2dldERhdGEgPGVtPkRhdGE8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAnPGVtPkRhdGE8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQzMk11bHRpQXJyYXkjZ2V0RGF0YSgpCisJICogQHNlZSAjZ2V0SW50MzJNdWx0aUFycmF5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRJbnQzMk11bHRpQXJyYXlfRGF0YSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSW50OE11bHRpQXJyYXkgPGVtPkludDggTXVsdGkgQXJyYXk8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+SW50OCBNdWx0aSBBcnJheTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkludDhNdWx0aUFycmF5CisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRJbnQ4TXVsdGlBcnJheSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQ4TXVsdGlBcnJheSNnZXRMYXlvdXQgPGVtPkxheW91dDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPkxheW91dDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkludDhNdWx0aUFycmF5I2dldExheW91dCgpCisJICogQHNlZSAjZ2V0SW50OE11bHRpQXJyYXkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldEludDhNdWx0aUFycmF5X0xheW91dCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkludDhNdWx0aUFycmF5I2dldERhdGEgPGVtPkRhdGE8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAnPGVtPkRhdGE8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQ4TXVsdGlBcnJheSNnZXREYXRhKCkKKwkgKiBAc2VlICNnZXRJbnQ4TXVsdGlBcnJheSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0SW50OE11bHRpQXJyYXlfRGF0YSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSW50MTZNdWx0aUFycmF5IDxlbT5JbnQxNiBNdWx0aSBBcnJheTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5JbnQxNiBNdWx0aSBBcnJheTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkludDE2TXVsdGlBcnJheQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0SW50MTZNdWx0aUFycmF5KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkludDE2TXVsdGlBcnJheSNnZXRMYXlvdXQgPGVtPkxheW91dDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPkxheW91dDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkludDE2TXVsdGlBcnJheSNnZXRMYXlvdXQoKQorCSAqIEBzZWUgI2dldEludDE2TXVsdGlBcnJheSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0SW50MTZNdWx0aUFycmF5X0xheW91dCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkludDE2TXVsdGlBcnJheSNnZXREYXRhIDxlbT5EYXRhPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlIGxpc3QgJzxlbT5EYXRhPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSW50MTZNdWx0aUFycmF5I2dldERhdGEoKQorCSAqIEBzZWUgI2dldEludDE2TXVsdGlBcnJheSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0SW50MTZNdWx0aUFycmF5X0RhdGEoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkludDY0TXVsdGlBcnJheSA8ZW0+SW50NjQgTXVsdGkgQXJyYXk8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+SW50NjQgTXVsdGkgQXJyYXk8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQ2NE11bHRpQXJyYXkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldEludDY0TXVsdGlBcnJheSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQ2NE11bHRpQXJyYXkjZ2V0TGF5b3V0IDxlbT5MYXlvdXQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5MYXlvdXQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQ2NE11bHRpQXJyYXkjZ2V0TGF5b3V0KCkKKwkgKiBAc2VlICNnZXRJbnQ2NE11bHRpQXJyYXkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldEludDY0TXVsdGlBcnJheV9MYXlvdXQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlIGxpc3QgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQ2NE11bHRpQXJyYXkjZ2V0RGF0YSA8ZW0+RGF0YTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICc8ZW0+RGF0YTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkludDY0TXVsdGlBcnJheSNnZXREYXRhKCkKKwkgKiBAc2VlICNnZXRJbnQ2NE11bHRpQXJyYXkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldEludDY0TXVsdGlBcnJheV9EYXRhKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDY0TXVsdGlBcnJheSA8ZW0+RmxvYXQ2NCBNdWx0aSBBcnJheTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5GbG9hdDY0IE11bHRpIEFycmF5PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NE11bHRpQXJyYXkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldEZsb2F0NjRNdWx0aUFycmF5KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0NjRNdWx0aUFycmF5I2dldExheW91dCA8ZW0+TGF5b3V0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+TGF5b3V0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NE11bHRpQXJyYXkjZ2V0TGF5b3V0KCkKKwkgKiBAc2VlICNnZXRGbG9hdDY0TXVsdGlBcnJheSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0RmxvYXQ2NE11bHRpQXJyYXlfTGF5b3V0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NE11bHRpQXJyYXkjZ2V0RGF0YSA8ZW0+RGF0YTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICc8ZW0+RGF0YTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0NjRNdWx0aUFycmF5I2dldERhdGEoKQorCSAqIEBzZWUgI2dldEZsb2F0NjRNdWx0aUFycmF5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRGbG9hdDY0TXVsdGlBcnJheV9EYXRhKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50NjRNdWx0aUFycmF5IDxlbT5VSW50NjQgTXVsdGkgQXJyYXk8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICc8ZW0+VUludDY0IE11bHRpIEFycmF5PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDY0TXVsdGlBcnJheQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQ2xhc3MgZ2V0VUludDY0TXVsdGlBcnJheSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50NjRNdWx0aUFycmF5I2dldExheW91dCA8ZW0+TGF5b3V0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+TGF5b3V0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDY0TXVsdGlBcnJheSNnZXRMYXlvdXQoKQorCSAqIEBzZWUgI2dldFVJbnQ2NE11bHRpQXJyYXkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFUmVmZXJlbmNlIGdldFVJbnQ2NE11bHRpQXJyYXlfTGF5b3V0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDY0TXVsdGlBcnJheSNnZXREYXRhIDxlbT5EYXRhPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlIGxpc3QgJzxlbT5EYXRhPC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDY0TXVsdGlBcnJheSNnZXREYXRhKCkKKwkgKiBAc2VlICNnZXRVSW50NjRNdWx0aUFycmF5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRVSW50NjRNdWx0aUFycmF5X0RhdGEoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQxNk11bHRpQXJyYXkgPGVtPlVJbnQxNiBNdWx0aSBBcnJheTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJzxlbT5VSW50MTYgTXVsdGkgQXJyYXk8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MTZNdWx0aUFycmF5CisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRVSW50MTZNdWx0aUFycmF5KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQxNk11bHRpQXJyYXkjZ2V0TGF5b3V0IDxlbT5MYXlvdXQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBjb250YWlubWVudCByZWZlcmVuY2UgJzxlbT5MYXlvdXQ8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MTZNdWx0aUFycmF5I2dldExheW91dCgpCisJICogQHNlZSAjZ2V0VUludDE2TXVsdGlBcnJheSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVSZWZlcmVuY2UgZ2V0VUludDE2TXVsdGlBcnJheV9MYXlvdXQoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgYXR0cmlidXRlIGxpc3QgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MTZNdWx0aUFycmF5I2dldERhdGEgPGVtPkRhdGE8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAnPGVtPkRhdGE8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MTZNdWx0aUFycmF5I2dldERhdGEoKQorCSAqIEBzZWUgI2dldFVJbnQxNk11bHRpQXJyYXkoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFQXR0cmlidXRlIGdldFVJbnQxNk11bHRpQXJyYXlfRGF0YSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDMyTXVsdGlBcnJheSA8ZW0+VUludDMyIE11bHRpIEFycmF5PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlVJbnQzMiBNdWx0aSBBcnJheTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQzMk11bHRpQXJyYXkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUNsYXNzIGdldFVJbnQzMk11bHRpQXJyYXkoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDMyTXVsdGlBcnJheSNnZXRMYXlvdXQgPGVtPkxheW91dDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGNvbnRhaW5tZW50IHJlZmVyZW5jZSAnPGVtPkxheW91dDwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQzMk11bHRpQXJyYXkjZ2V0TGF5b3V0KCkKKwkgKiBAc2VlICNnZXRVSW50MzJNdWx0aUFycmF5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRVSW50MzJNdWx0aUFycmF5X0xheW91dCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQzMk11bHRpQXJyYXkjZ2V0RGF0YSA8ZW0+RGF0YTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICc8ZW0+RGF0YTwvZW0+Jy4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQzMk11bHRpQXJyYXkjZ2V0RGF0YSgpCisJICogQHNlZSAjZ2V0VUludDMyTXVsdGlBcnJheSgpCisJICogQGdlbmVyYXRlZAorCSAqLworCUVBdHRyaWJ1dGUgZ2V0VUludDMyTXVsdGlBcnJheV9EYXRhKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50OE11bHRpQXJyYXkgPGVtPlVJbnQ4IE11bHRpIEFycmF5PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBjbGFzcyAnPGVtPlVJbnQ4IE11bHRpIEFycmF5PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDhNdWx0aUFycmF5CisJICogQGdlbmVyYXRlZAorCSAqLworCUVDbGFzcyBnZXRVSW50OE11bHRpQXJyYXkoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDhNdWx0aUFycmF5I2dldExheW91dCA8ZW0+TGF5b3V0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciB0aGUgY29udGFpbm1lbnQgcmVmZXJlbmNlICc8ZW0+TGF5b3V0PC9lbT4nLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDhNdWx0aUFycmF5I2dldExheW91dCgpCisJICogQHNlZSAjZ2V0VUludDhNdWx0aUFycmF5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRVJlZmVyZW5jZSBnZXRVSW50OE11bHRpQXJyYXlfTGF5b3V0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgdGhlIGF0dHJpYnV0ZSBsaXN0ICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDhNdWx0aUFycmF5I2dldERhdGEgPGVtPkRhdGE8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIHRoZSBhdHRyaWJ1dGUgbGlzdCAnPGVtPkRhdGE8L2VtPicuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50OE11bHRpQXJyYXkjZ2V0RGF0YSgpCisJICogQHNlZSAjZ2V0VUludDhNdWx0aUFycmF5KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUF0dHJpYnV0ZSBnZXRVSW50OE11bHRpQXJyYXlfRGF0YSgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAne0BsaW5rIFVJbnQzMiA8ZW0+VUludDMyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5VSW50MzI8L2VtPicuCisJICogQHNlZSBVSW50MzIKKwkgKiBAbW9kZWwgaW5zdGFuY2VDbGFzcz0iamF2YS5sYW5nLk9iamVjdCIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRURhdGFUeXBlIGdldFVJbnQzMigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAne0BsaW5rIFRpbWUgPGVtPlRpbWU8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPlRpbWU8L2VtPicuCisJICogQHNlZSBUaW1lCisJICogQG1vZGVsIGluc3RhbmNlQ2xhc3M9ImphdmEubGFuZy5PYmplY3QiCisJICogQGdlbmVyYXRlZAorCSAqLworCUVEYXRhVHlwZSBnZXRUaW1lKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICd7QGxpbmsgU3RyaW5nIDxlbT5TdHJpbmc8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPlN0cmluZzwvZW0+Jy4KKwkgKiBAc2VlIFN0cmluZworCSAqIEBtb2RlbCBpbnN0YW5jZUNsYXNzPSJqYXZhLmxhbmcuT2JqZWN0IgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFRGF0YVR5cGUgZ2V0U3RyaW5nKCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICd7QGxpbmsgQnl0ZSA8ZW0+Qnl0ZTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+Qnl0ZTwvZW0+Jy4KKwkgKiBAc2VlIEJ5dGUKKwkgKiBAbW9kZWwgaW5zdGFuY2VDbGFzcz0iamF2YS5sYW5nLk9iamVjdCIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRURhdGFUeXBlIGdldEJ5dGUoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJ3tAbGluayBGbG9hdDY0IDxlbT5GbG9hdDY0PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5GbG9hdDY0PC9lbT4nLgorCSAqIEBzZWUgRmxvYXQ2NAorCSAqIEBtb2RlbCBpbnN0YW5jZUNsYXNzPSJqYXZhLmxhbmcuT2JqZWN0IgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFRGF0YVR5cGUgZ2V0RmxvYXQ2NCgpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAne0BsaW5rIEludDggPGVtPkludDg8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPkludDg8L2VtPicuCisJICogQHNlZSBJbnQ4CisJICogQG1vZGVsIGluc3RhbmNlQ2xhc3M9ImphdmEubGFuZy5PYmplY3QiCisJICogQGdlbmVyYXRlZAorCSAqLworCUVEYXRhVHlwZSBnZXRJbnQ4KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICd7QGxpbmsgQm9vbCA8ZW0+Qm9vbDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+Qm9vbDwvZW0+Jy4KKwkgKiBAc2VlIEJvb2wKKwkgKiBAbW9kZWwgaW5zdGFuY2VDbGFzcz0iamF2YS5sYW5nLk9iamVjdCIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRURhdGFUeXBlIGdldEJvb2woKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJ3tAbGluayBVSW50OCA8ZW0+VUludDg8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPlVJbnQ4PC9lbT4nLgorCSAqIEBzZWUgVUludDgKKwkgKiBAbW9kZWwgaW5zdGFuY2VDbGFzcz0iamF2YS5sYW5nLk9iamVjdCIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRURhdGFUeXBlIGdldFVJbnQ4KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICd7QGxpbmsgVUludDE2IDxlbT5VSW50MTY8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPlVJbnQxNjwvZW0+Jy4KKwkgKiBAc2VlIFVJbnQxNgorCSAqIEBtb2RlbCBpbnN0YW5jZUNsYXNzPSJqYXZhLmxhbmcuT2JqZWN0IgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFRGF0YVR5cGUgZ2V0VUludDE2KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICd7QGxpbmsgSW50MzIgPGVtPkludDMyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5JbnQzMjwvZW0+Jy4KKwkgKiBAc2VlIEludDMyCisJICogQG1vZGVsIGluc3RhbmNlQ2xhc3M9ImphdmEubGFuZy5PYmplY3QiCisJICogQGdlbmVyYXRlZAorCSAqLworCUVEYXRhVHlwZSBnZXRJbnQzMigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAne0BsaW5rIEludDE2IDxlbT5JbnQxNjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+SW50MTY8L2VtPicuCisJICogQHNlZSBJbnQxNgorCSAqIEBtb2RlbCBpbnN0YW5jZUNsYXNzPSJqYXZhLmxhbmcuT2JqZWN0IgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFRGF0YVR5cGUgZ2V0SW50MTYoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJ3tAbGluayBDaGFyIDxlbT5DaGFyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJzxlbT5DaGFyPC9lbT4nLgorCSAqIEBzZWUgQ2hhcgorCSAqIEBtb2RlbCBpbnN0YW5jZUNsYXNzPSJqYXZhLmxhbmcuT2JqZWN0IgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFRGF0YVR5cGUgZ2V0Q2hhcigpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAne0BsaW5rIER1cmF0aW9uIDxlbT5EdXJhdGlvbjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+RHVyYXRpb248L2VtPicuCisJICogQHNlZSBEdXJhdGlvbgorCSAqIEBtb2RlbCBpbnN0YW5jZUNsYXNzPSJqYXZhLmxhbmcuT2JqZWN0IgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFRGF0YVR5cGUgZ2V0RHVyYXRpb24oKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIG1ldGEgb2JqZWN0IGZvciBkYXRhIHR5cGUgJ3tAbGluayBJbnQ2NCA8ZW0+SW50NjQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPkludDY0PC9lbT4nLgorCSAqIEBzZWUgSW50NjQKKwkgKiBAbW9kZWwgaW5zdGFuY2VDbGFzcz0iamF2YS5sYW5nLk9iamVjdCIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRURhdGFUeXBlIGdldEludDY0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICd7QGxpbmsgVUludDY0IDxlbT5VSW50NjQ8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbWV0YSBvYmplY3QgZm9yIGRhdGEgdHlwZSAnPGVtPlVJbnQ2NDwvZW0+Jy4KKwkgKiBAc2VlIFVJbnQ2NAorCSAqIEBtb2RlbCBpbnN0YW5jZUNsYXNzPSJqYXZhLmxhbmcuT2JqZWN0IgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFRGF0YVR5cGUgZ2V0VUludDY0KCk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICd7QGxpbmsgRmxvYXQzMiA8ZW0+RmxvYXQzMjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBtZXRhIG9iamVjdCBmb3IgZGF0YSB0eXBlICc8ZW0+RmxvYXQzMjwvZW0+Jy4KKwkgKiBAc2VlIEZsb2F0MzIKKwkgKiBAbW9kZWwgaW5zdGFuY2VDbGFzcz0iamF2YS5sYW5nLk9iamVjdCIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRURhdGFUeXBlIGdldEZsb2F0MzIoKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIGZhY3RvcnkgdGhhdCBjcmVhdGVzIHRoZSBpbnN0YW5jZXMgb2YgdGhlIG1vZGVsLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgZmFjdG9yeSB0aGF0IGNyZWF0ZXMgdGhlIGluc3RhbmNlcyBvZiB0aGUgbW9kZWwuCisJICogQGdlbmVyYXRlZAorCSAqLworCVN0ZF9kYXRhdHlwZXNGYWN0b3J5IGdldFN0ZF9kYXRhdHlwZXNGYWN0b3J5KCk7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIERlZmluZXMgbGl0ZXJhbHMgZm9yIHRoZSBtZXRhIG9iamVjdHMgdGhhdCByZXByZXNlbnQKKwkgKiA8dWw+CisJICogPGxpPmVhY2ggY2xhc3MsPC9saT4KKwkgKiA8bGk+ZWFjaCBmZWF0dXJlIG9mIGVhY2ggY2xhc3MsPC9saT4KKwkgKiA8bGk+ZWFjaCBvcGVyYXRpb24gb2YgZWFjaCBjbGFzcyw8L2xpPgorCSAqIDxsaT5lYWNoIGVudW0sPC9saT4KKwkgKiA8bGk+YW5kIGVhY2ggZGF0YSB0eXBlPC9saT4KKwkgKiA8L3VsPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlpbnRlcmZhY2UgTGl0ZXJhbHMgeworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuSGVhZGVySW1wbCA8ZW0+SGVhZGVyPC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5IZWFkZXJJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0SGVhZGVyKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIEhFQURFUiA9IGVJTlNUQU5DRS5nZXRIZWFkZXIoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlNlcTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIEhFQURFUl9fU0VRID0gZUlOU1RBTkNFLmdldEhlYWRlcl9TZXEoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlN0YW1wPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgSEVBREVSX19TVEFNUCA9IGVJTlNUQU5DRS5nZXRIZWFkZXJfU3RhbXAoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkZyYW1lIGlkPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgSEVBREVSX19GUkFNRV9JRCA9IGVJTlNUQU5DRS5nZXRIZWFkZXJfRnJhbWVfaWQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuTXVsdGlBcnJheURpbWVuc2lvbkltcGwgPGVtPk11bHRpIEFycmF5IERpbWVuc2lvbjwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuTXVsdGlBcnJheURpbWVuc2lvbkltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRNdWx0aUFycmF5RGltZW5zaW9uKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIE1VTFRJX0FSUkFZX0RJTUVOU0lPTiA9IGVJTlNUQU5DRS5nZXRNdWx0aUFycmF5RGltZW5zaW9uKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5MYWJlbDwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIE1VTFRJX0FSUkFZX0RJTUVOU0lPTl9fTEFCRUwgPSBlSU5TVEFOQ0UuZ2V0TXVsdGlBcnJheURpbWVuc2lvbl9MYWJlbCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+U2l6ZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIE1VTFRJX0FSUkFZX0RJTUVOU0lPTl9fU0laRSA9IGVJTlNUQU5DRS5nZXRNdWx0aUFycmF5RGltZW5zaW9uX1NpemUoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPlN0cmlkZTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIE1VTFRJX0FSUkFZX0RJTUVOU0lPTl9fU1RSSURFID0gZUlOU1RBTkNFLmdldE11bHRpQXJyYXlEaW1lbnNpb25fU3RyaWRlKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLk11bHRpQXJyYXlMYXlvdXRJbXBsIDxlbT5NdWx0aSBBcnJheSBMYXlvdXQ8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLk11bHRpQXJyYXlMYXlvdXRJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0TXVsdGlBcnJheUxheW91dCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBNVUxUSV9BUlJBWV9MQVlPVVQgPSBlSU5TVEFOQ0UuZ2V0TXVsdGlBcnJheUxheW91dCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+RGltPC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgbGlzdCBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBNVUxUSV9BUlJBWV9MQVlPVVRfX0RJTSA9IGVJTlNUQU5DRS5nZXRNdWx0aUFycmF5TGF5b3V0X0RpbSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+RGF0YSBvZmZzZXQ8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBNVUxUSV9BUlJBWV9MQVlPVVRfX0RBVEFfT0ZGU0VUID0gZUlOU1RBTkNFLmdldE11bHRpQXJyYXlMYXlvdXRfRGF0YV9vZmZzZXQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuQnl0ZU11bHRpQXJyYXlJbXBsIDxlbT5CeXRlIE11bHRpIEFycmF5PC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5CeXRlTXVsdGlBcnJheUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRCeXRlTXVsdGlBcnJheSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBCWVRFX01VTFRJX0FSUkFZID0gZUlOU1RBTkNFLmdldEJ5dGVNdWx0aUFycmF5KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5MYXlvdXQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBCWVRFX01VTFRJX0FSUkFZX19MQVlPVVQgPSBlSU5TVEFOQ0UuZ2V0Qnl0ZU11bHRpQXJyYXlfTGF5b3V0KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5EYXRhPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBCWVRFX01VTFRJX0FSUkFZX19EQVRBID0gZUlOU1RBTkNFLmdldEJ5dGVNdWx0aUFycmF5X0RhdGEoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuQ29sb3JSR0JBSW1wbCA8ZW0+Q29sb3IgUkdCQTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuQ29sb3JSR0JBSW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldENvbG9yUkdCQSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBDT0xPUl9SR0JBID0gZUlOU1RBTkNFLmdldENvbG9yUkdCQSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+UjwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIENPTE9SX1JHQkFfX1IgPSBlSU5TVEFOQ0UuZ2V0Q29sb3JSR0JBX1IoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkc8L2I+PC9lbT4nIGF0dHJpYnV0ZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBDT0xPUl9SR0JBX19HID0gZUlOU1RBTkNFLmdldENvbG9yUkdCQV9HKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5CPC9iPjwvZW0+JyBhdHRyaWJ1dGUgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgQ09MT1JfUkdCQV9fQiA9IGVJTlNUQU5DRS5nZXRDb2xvclJHQkFfQigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+QTwvYj48L2VtPicgYXR0cmlidXRlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIENPTE9SX1JHQkFfX0EgPSBlSU5TVEFOQ0UuZ2V0Q29sb3JSR0JBX0EoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuRmxvYXQzMk11bHRpQXJyYXlJbXBsIDxlbT5GbG9hdDMyIE11bHRpIEFycmF5PC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5GbG9hdDMyTXVsdGlBcnJheUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRGbG9hdDMyTXVsdGlBcnJheSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBGTE9BVDMyX01VTFRJX0FSUkFZID0gZUlOU1RBTkNFLmdldEZsb2F0MzJNdWx0aUFycmF5KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5MYXlvdXQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBGTE9BVDMyX01VTFRJX0FSUkFZX19MQVlPVVQgPSBlSU5TVEFOQ0UuZ2V0RmxvYXQzMk11bHRpQXJyYXlfTGF5b3V0KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5EYXRhPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBGTE9BVDMyX01VTFRJX0FSUkFZX19EQVRBID0gZUlOU1RBTkNFLmdldEZsb2F0MzJNdWx0aUFycmF5X0RhdGEoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuSW50MzJNdWx0aUFycmF5SW1wbCA8ZW0+SW50MzIgTXVsdGkgQXJyYXk8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLkludDMyTXVsdGlBcnJheUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRJbnQzMk11bHRpQXJyYXkoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgSU5UMzJfTVVMVElfQVJSQVkgPSBlSU5TVEFOQ0UuZ2V0SW50MzJNdWx0aUFycmF5KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5MYXlvdXQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBJTlQzMl9NVUxUSV9BUlJBWV9fTEFZT1VUID0gZUlOU1RBTkNFLmdldEludDMyTXVsdGlBcnJheV9MYXlvdXQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkRhdGE8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0IGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIElOVDMyX01VTFRJX0FSUkFZX19EQVRBID0gZUlOU1RBTkNFLmdldEludDMyTXVsdGlBcnJheV9EYXRhKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLkludDhNdWx0aUFycmF5SW1wbCA8ZW0+SW50OCBNdWx0aSBBcnJheTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuSW50OE11bHRpQXJyYXlJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0SW50OE11bHRpQXJyYXkoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgSU5UOF9NVUxUSV9BUlJBWSA9IGVJTlNUQU5DRS5nZXRJbnQ4TXVsdGlBcnJheSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TGF5b3V0PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgSU5UOF9NVUxUSV9BUlJBWV9fTEFZT1VUID0gZUlOU1RBTkNFLmdldEludDhNdWx0aUFycmF5X0xheW91dCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+RGF0YTwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgSU5UOF9NVUxUSV9BUlJBWV9fREFUQSA9IGVJTlNUQU5DRS5nZXRJbnQ4TXVsdGlBcnJheV9EYXRhKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLkludDE2TXVsdGlBcnJheUltcGwgPGVtPkludDE2IE11bHRpIEFycmF5PC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5JbnQxNk11bHRpQXJyYXlJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0SW50MTZNdWx0aUFycmF5KCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIElOVDE2X01VTFRJX0FSUkFZID0gZUlOU1RBTkNFLmdldEludDE2TXVsdGlBcnJheSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TGF5b3V0PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgSU5UMTZfTVVMVElfQVJSQVlfX0xBWU9VVCA9IGVJTlNUQU5DRS5nZXRJbnQxNk11bHRpQXJyYXlfTGF5b3V0KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5EYXRhPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBJTlQxNl9NVUxUSV9BUlJBWV9fREFUQSA9IGVJTlNUQU5DRS5nZXRJbnQxNk11bHRpQXJyYXlfRGF0YSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5JbnQ2NE11bHRpQXJyYXlJbXBsIDxlbT5JbnQ2NCBNdWx0aSBBcnJheTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuSW50NjRNdWx0aUFycmF5SW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldEludDY0TXVsdGlBcnJheSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBJTlQ2NF9NVUxUSV9BUlJBWSA9IGVJTlNUQU5DRS5nZXRJbnQ2NE11bHRpQXJyYXkoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkxheW91dDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIElOVDY0X01VTFRJX0FSUkFZX19MQVlPVVQgPSBlSU5TVEFOQ0UuZ2V0SW50NjRNdWx0aUFycmF5X0xheW91dCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+RGF0YTwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgSU5UNjRfTVVMVElfQVJSQVlfX0RBVEEgPSBlSU5TVEFOQ0UuZ2V0SW50NjRNdWx0aUFycmF5X0RhdGEoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuRmxvYXQ2NE11bHRpQXJyYXlJbXBsIDxlbT5GbG9hdDY0IE11bHRpIEFycmF5PC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5GbG9hdDY0TXVsdGlBcnJheUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRGbG9hdDY0TXVsdGlBcnJheSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBGTE9BVDY0X01VTFRJX0FSUkFZID0gZUlOU1RBTkNFLmdldEZsb2F0NjRNdWx0aUFycmF5KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5MYXlvdXQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBGTE9BVDY0X01VTFRJX0FSUkFZX19MQVlPVVQgPSBlSU5TVEFOQ0UuZ2V0RmxvYXQ2NE11bHRpQXJyYXlfTGF5b3V0KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5EYXRhPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBGTE9BVDY0X01VTFRJX0FSUkFZX19EQVRBID0gZUlOU1RBTkNFLmdldEZsb2F0NjRNdWx0aUFycmF5X0RhdGEoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuVUludDY0TXVsdGlBcnJheUltcGwgPGVtPlVJbnQ2NCBNdWx0aSBBcnJheTwvZW0+fScgY2xhc3MuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuVUludDY0TXVsdGlBcnJheUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRVSW50NjRNdWx0aUFycmF5KCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUNsYXNzIFVJTlQ2NF9NVUxUSV9BUlJBWSA9IGVJTlNUQU5DRS5nZXRVSW50NjRNdWx0aUFycmF5KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5MYXlvdXQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBVSU5UNjRfTVVMVElfQVJSQVlfX0xBWU9VVCA9IGVJTlNUQU5DRS5nZXRVSW50NjRNdWx0aUFycmF5X0xheW91dCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+RGF0YTwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVBdHRyaWJ1dGUgVUlOVDY0X01VTFRJX0FSUkFZX19EQVRBID0gZUlOU1RBTkNFLmdldFVJbnQ2NE11bHRpQXJyYXlfRGF0YSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5VSW50MTZNdWx0aUFycmF5SW1wbCA8ZW0+VUludDE2IE11bHRpIEFycmF5PC9lbT59JyBjbGFzcy4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5VSW50MTZNdWx0aUFycmF5SW1wbAorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldFVJbnQxNk11bHRpQXJyYXkoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgVUlOVDE2X01VTFRJX0FSUkFZID0gZUlOU1RBTkNFLmdldFVJbnQxNk11bHRpQXJyYXkoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkxheW91dDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFUmVmZXJlbmNlIFVJTlQxNl9NVUxUSV9BUlJBWV9fTEFZT1VUID0gZUlOU1RBTkNFLmdldFVJbnQxNk11bHRpQXJyYXlfTGF5b3V0KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5EYXRhPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRUF0dHJpYnV0ZSBVSU5UMTZfTVVMVElfQVJSQVlfX0RBVEEgPSBlSU5TVEFOQ0UuZ2V0VUludDE2TXVsdGlBcnJheV9EYXRhKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlVJbnQzMk11bHRpQXJyYXlJbXBsIDxlbT5VSW50MzIgTXVsdGkgQXJyYXk8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlVJbnQzMk11bHRpQXJyYXlJbXBsCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0VUludDMyTXVsdGlBcnJheSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVDbGFzcyBVSU5UMzJfTVVMVElfQVJSQVkgPSBlSU5TVEFOQ0UuZ2V0VUludDMyTXVsdGlBcnJheSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+PGI+TGF5b3V0PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UgZmVhdHVyZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVSZWZlcmVuY2UgVUlOVDMyX01VTFRJX0FSUkFZX19MQVlPVVQgPSBlSU5TVEFOQ0UuZ2V0VUludDMyTXVsdGlBcnJheV9MYXlvdXQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkRhdGE8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0IGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIFVJTlQzMl9NVUxUSV9BUlJBWV9fREFUQSA9IGVJTlNUQU5DRS5nZXRVSW50MzJNdWx0aUFycmF5X0RhdGEoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuVUludDhNdWx0aUFycmF5SW1wbCA8ZW0+VUludDggTXVsdGkgQXJyYXk8L2VtPn0nIGNsYXNzLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlVJbnQ4TXVsdGlBcnJheUltcGwKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRVSW50OE11bHRpQXJyYXkoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQ2xhc3MgVUlOVDhfTVVMVElfQVJSQVkgPSBlSU5TVEFOQ0UuZ2V0VUludDhNdWx0aUFycmF5KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT48Yj5MYXlvdXQ8L2I+PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBmZWF0dXJlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRVJlZmVyZW5jZSBVSU5UOF9NVUxUSV9BUlJBWV9fTEFZT1VUID0gZUlOU1RBTkNFLmdldFVJbnQ4TXVsdGlBcnJheV9MYXlvdXQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPjxiPkRhdGE8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0IGZlYXR1cmUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFQXR0cmlidXRlIFVJTlQ4X01VTFRJX0FSUkFZX19EQVRBID0gZUlOU1RBTkNFLmdldFVJbnQ4TXVsdGlBcnJheV9EYXRhKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5VSW50MzI8L2VtPicgZGF0YSB0eXBlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBVSW50MzIKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRVSW50MzIoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFRGF0YVR5cGUgVUlOVDMyID0gZUlOU1RBTkNFLmdldFVJbnQzMigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VGltZTwvZW0+JyBkYXRhIHR5cGUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIFRpbWUKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRUaW1lKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRURhdGFUeXBlIFRJTUUgPSBlSU5TVEFOQ0UuZ2V0VGltZSgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+U3RyaW5nPC9lbT4nIGRhdGEgdHlwZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgU3RyaW5nCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0U3RyaW5nKCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRURhdGFUeXBlIFNUUklORyA9IGVJTlNUQU5DRS5nZXRTdHJpbmcoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkJ5dGU8L2VtPicgZGF0YSB0eXBlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBCeXRlCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0Qnl0ZSgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVEYXRhVHlwZSBCWVRFID0gZUlOU1RBTkNFLmdldEJ5dGUoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkZsb2F0NjQ8L2VtPicgZGF0YSB0eXBlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBGbG9hdDY0CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0RmxvYXQ2NCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVEYXRhVHlwZSBGTE9BVDY0ID0gZUlOU1RBTkNFLmdldEZsb2F0NjQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkludDg8L2VtPicgZGF0YSB0eXBlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBJbnQ4CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0SW50OCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVEYXRhVHlwZSBJTlQ4ID0gZUlOU1RBTkNFLmdldEludDgoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkJvb2w8L2VtPicgZGF0YSB0eXBlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBCb29sCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0Qm9vbCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVEYXRhVHlwZSBCT09MID0gZUlOU1RBTkNFLmdldEJvb2woKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPlVJbnQ4PC9lbT4nIGRhdGEgdHlwZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgVUludDgKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRVSW50OCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVEYXRhVHlwZSBVSU5UOCA9IGVJTlNUQU5DRS5nZXRVSW50OCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VUludDE2PC9lbT4nIGRhdGEgdHlwZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgVUludDE2CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0VUludDE2KCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRURhdGFUeXBlIFVJTlQxNiA9IGVJTlNUQU5DRS5nZXRVSW50MTYoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkludDMyPC9lbT4nIGRhdGEgdHlwZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgSW50MzIKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRJbnQzMigpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVEYXRhVHlwZSBJTlQzMiA9IGVJTlNUQU5DRS5nZXRJbnQzMigpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+SW50MTY8L2VtPicgZGF0YSB0eXBlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBJbnQxNgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldEludDE2KCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRURhdGFUeXBlIElOVDE2ID0gZUlOU1RBTkNFLmdldEludDE2KCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5DaGFyPC9lbT4nIGRhdGEgdHlwZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgQ2hhcgorCQkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsI2dldENoYXIoKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFRGF0YVR5cGUgQ0hBUiA9IGVJTlNUQU5DRS5nZXRDaGFyKCk7CisKKwkJLyoqCisJCSAqIFRoZSBtZXRhIG9iamVjdCBsaXRlcmFsIGZvciB0aGUgJzxlbT5EdXJhdGlvbjwvZW0+JyBkYXRhIHR5cGUuCisJCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCQkgKiBAc2VlIER1cmF0aW9uCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0RHVyYXRpb24oKQorCQkgKiBAZ2VuZXJhdGVkCisJCSAqLworCQlFRGF0YVR5cGUgRFVSQVRJT04gPSBlSU5TVEFOQ0UuZ2V0RHVyYXRpb24oKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkludDY0PC9lbT4nIGRhdGEgdHlwZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgSW50NjQKKwkJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCNnZXRJbnQ2NCgpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVEYXRhVHlwZSBJTlQ2NCA9IGVJTlNUQU5DRS5nZXRJbnQ2NCgpOworCisJCS8qKgorCQkgKiBUaGUgbWV0YSBvYmplY3QgbGl0ZXJhbCBmb3IgdGhlICc8ZW0+VUludDY0PC9lbT4nIGRhdGEgdHlwZS4KKwkJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJCSAqIEBzZWUgVUludDY0CisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0VUludDY0KCkKKwkJICogQGdlbmVyYXRlZAorCQkgKi8KKwkJRURhdGFUeXBlIFVJTlQ2NCA9IGVJTlNUQU5DRS5nZXRVSW50NjQoKTsKKworCQkvKioKKwkJICogVGhlIG1ldGEgb2JqZWN0IGxpdGVyYWwgZm9yIHRoZSAnPGVtPkZsb2F0MzI8L2VtPicgZGF0YSB0eXBlLgorCQkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCQkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkJICogQHNlZSBGbG9hdDMyCisJCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5TdGRfZGF0YXR5cGVzUGFja2FnZUltcGwjZ2V0RmxvYXQzMigpCisJCSAqIEBnZW5lcmF0ZWQKKwkJICovCisJCUVEYXRhVHlwZSBGTE9BVDMyID0gZUlOU1RBTkNFLmdldEZsb2F0MzIoKTsKKworCX0KKworfSAvLyBTdGRfZGF0YXR5cGVzUGFja2FnZQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSWludDE2TXVsdGlBcnJheS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSWludDE2TXVsdGlBcnJheS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM1ZjgzMTcKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJaW50MTZNdWx0aUFycmF5LmphdmEKQEAgLTAsMCArMSw2NiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlVJaW50MTYgTXVsdGkgQXJyYXk8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUlpbnQxNk11bHRpQXJyYXkjZ2V0TGF5b3V0IDxlbT5MYXlvdXQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJaW50MTZNdWx0aUFycmF5I2dldERhdGEgPGVtPkRhdGE8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlI2dldFVJaW50MTZNdWx0aUFycmF5KCkKKyAqIEBtb2RlbAorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgaW50ZXJmYWNlIFVJaW50MTZNdWx0aUFycmF5IGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TGF5b3V0PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5MYXlvdXQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkxheW91dDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0TGF5b3V0KE11bHRpQXJyYXlMYXlvdXQpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZSNnZXRVSWludDE2TXVsdGlBcnJheV9MYXlvdXQoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlNdWx0aUFycmF5TGF5b3V0IGdldExheW91dCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUlpbnQxNk11bHRpQXJyYXkjZ2V0TGF5b3V0IDxlbT5MYXlvdXQ8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB2YWx1ZSB0aGUgbmV3IHZhbHVlIG9mIHRoZSAnPGVtPkxheW91dDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjZ2V0TGF5b3V0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJdm9pZCBzZXRMYXlvdXQoTXVsdGlBcnJheUxheW91dCB2YWx1ZSk7CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT48Yj5EYXRhPC9iPjwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBUaGUgbGlzdCBjb250ZW50cyBhcmUgb2YgdHlwZSB7QGxpbmsgamF2YS5sYW5nLkludGVnZXJ9LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+RGF0YTwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5EYXRhPC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UjZ2V0VUlpbnQxNk11bHRpQXJyYXlfRGF0YSgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MTYiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFTGlzdDxJbnRlZ2VyPiBnZXREYXRhKCk7CisKK30gLy8gVUlpbnQxNk11bHRpQXJyYXkKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDE2TXVsdGlBcnJheS5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50MTZNdWx0aUFycmF5LmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWFkNDcxYQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDE2TXVsdGlBcnJheS5qYXZhCkBAIC0wLDAgKzEsNjkgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlVJbnQxNiBNdWx0aSBBcnJheTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MTZNdWx0aUFycmF5I2dldExheW91dCA8ZW0+TGF5b3V0PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MTZNdWx0aUFycmF5I2dldERhdGEgPGVtPkRhdGE8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlI2dldFVJbnQxNk11bHRpQXJyYXkoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgVUludDE2TXVsdGlBcnJheSBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkxheW91dDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+TGF5b3V0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwKKwkgKiB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkxheW91dDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0TGF5b3V0KE11bHRpQXJyYXlMYXlvdXQpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZSNnZXRVSW50MTZNdWx0aUFycmF5X0xheW91dCgpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU11bHRpQXJyYXlMYXlvdXQgZ2V0TGF5b3V0KCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MTZNdWx0aUFycmF5I2dldExheW91dCA8ZW0+TGF5b3V0PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5MYXlvdXQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldExheW91dCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0TGF5b3V0KE11bHRpQXJyYXlMYXlvdXQgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+RGF0YTwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogVGhlIGxpc3QgY29udGVudHMgYXJlIG9mIHR5cGUge0BsaW5rIGphdmEubGFuZy5PYmplY3R9LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+RGF0YTwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBpc24ndCBjbGVhciwKKwkgKiB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkRhdGE8L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZSNnZXRVSW50MTZNdWx0aUFycmF5X0RhdGEoKQorCSAqIEBtb2RlbCBkYXRhVHlwZT0ib3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDE2IiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUxpc3Q8T2JqZWN0PiBnZXREYXRhKCk7CisKK30gLy8gVUludDE2TXVsdGlBcnJheQpkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50MzJNdWx0aUFycmF5LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQzMk11bHRpQXJyYXkuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wNzU1YjFkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9VSW50MzJNdWx0aUFycmF5LmphdmEKQEAgLTAsMCArMSw2NiBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXM7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEEgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlVJbnQzMiBNdWx0aSBBcnJheTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MzJNdWx0aUFycmF5I2dldExheW91dCA8ZW0+TGF5b3V0PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MzJNdWx0aUFycmF5I2dldERhdGEgPGVtPkRhdGE8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlI2dldFVJbnQzMk11bHRpQXJyYXkoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgVUludDMyTXVsdGlBcnJheSBleHRlbmRzIEVPYmplY3QgeworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkxheW91dDwvYj48L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+TGF5b3V0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5MYXlvdXQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI3NldExheW91dChNdWx0aUFycmF5TGF5b3V0KQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UjZ2V0VUludDMyTXVsdGlBcnJheV9MYXlvdXQoKQorCSAqIEBtb2RlbCBjb250YWlubWVudD0idHJ1ZSIgcmVxdWlyZWQ9InRydWUiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlNdWx0aUFycmF5TGF5b3V0IGdldExheW91dCgpOworCisJLyoqCisJICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDMyTXVsdGlBcnJheSNnZXRMYXlvdXQgPGVtPkxheW91dDwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TGF5b3V0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRMYXlvdXQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldExheW91dChNdWx0aUFycmF5TGF5b3V0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkRhdGE8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIHtAbGluayBqYXZhLmxhbmcuT2JqZWN0fS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkRhdGE8L2VtPicgYXR0cmlidXRlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+RGF0YTwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlI2dldFVJbnQzMk11bHRpQXJyYXlfRGF0YSgpCisJICogQG1vZGVsIGRhdGFUeXBlPSJvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MzIiIG9yZGVyZWQ9ImZhbHNlIgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlFTGlzdDxPYmplY3Q+IGdldERhdGEoKTsKKworfSAvLyBVSW50MzJNdWx0aUFycmF5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQ2NE11bHRpQXJyYXkuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDY0TXVsdGlBcnJheS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU4YjI2ZjUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQ2NE11bHRpQXJyYXkuamF2YQpAQCAtMCwwICsxLDY2IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlczsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+VUludDY0IE11bHRpIEFycmF5PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICoKKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgc3VwcG9ydGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQ2NE11bHRpQXJyYXkjZ2V0TGF5b3V0IDxlbT5MYXlvdXQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQ2NE11bHRpQXJyYXkjZ2V0RGF0YSA8ZW0+RGF0YTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UjZ2V0VUludDY0TXVsdGlBcnJheSgpCisgKiBAbW9kZWwKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGludGVyZmFjZSBVSW50NjRNdWx0aUFycmF5IGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TGF5b3V0PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5MYXlvdXQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkxheW91dDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0TGF5b3V0KE11bHRpQXJyYXlMYXlvdXQpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZSNnZXRVSW50NjRNdWx0aUFycmF5X0xheW91dCgpCisJICogQG1vZGVsIGNvbnRhaW5tZW50PSJ0cnVlIiByZXF1aXJlZD0idHJ1ZSIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCU11bHRpQXJyYXlMYXlvdXQgZ2V0TGF5b3V0KCk7CisKKwkvKioKKwkgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50NjRNdWx0aUFycmF5I2dldExheW91dCA8ZW0+TGF5b3V0PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gdmFsdWUgdGhlIG5ldyB2YWx1ZSBvZiB0aGUgJzxlbT5MYXlvdXQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIEBzZWUgI2dldExheW91dCgpCisJICogQGdlbmVyYXRlZAorCSAqLworCXZvaWQgc2V0TGF5b3V0KE11bHRpQXJyYXlMYXlvdXQgdmFsdWUpOworCisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+RGF0YTwvYj48L2VtPicgYXR0cmlidXRlIGxpc3QuCisJICogVGhlIGxpc3QgY29udGVudHMgYXJlIG9mIHR5cGUge0BsaW5rIGphdmEubGFuZy5PYmplY3R9LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPHA+CisJICogSWYgdGhlIG1lYW5pbmcgb2YgdGhlICc8ZW0+RGF0YTwvZW0+JyBhdHRyaWJ1dGUgbGlzdCBpc24ndCBjbGVhciwgdGhlcmUgcmVhbGx5IHNob3VsZCBiZSBtb3JlIG9mIGEgZGVzY3JpcHRpb24gaGVyZS4uLgorCSAqIDwvcD4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgJzxlbT5EYXRhPC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UjZ2V0VUludDY0TXVsdGlBcnJheV9EYXRhKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQ2NCIgb3JkZXJlZD0iZmFsc2UiCisJICogQGdlbmVyYXRlZAorCSAqLworCUVMaXN0PE9iamVjdD4gZ2V0RGF0YSgpOworCit9IC8vIFVJbnQ2NE11bHRpQXJyYXkKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvVUludDhNdWx0aUFycmF5LmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQ4TXVsdGlBcnJheS5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjlmMzU1MmQKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL1VJbnQ4TXVsdGlBcnJheS5qYXZhCkBAIC0wLDAgKzEsNjYgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5VSW50OCBNdWx0aSBBcnJheTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqCisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIHN1cHBvcnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50OE11bHRpQXJyYXkjZ2V0TGF5b3V0IDxlbT5MYXlvdXQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQ4TXVsdGlBcnJheSNnZXREYXRhIDxlbT5EYXRhPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZSNnZXRVSW50OE11bHRpQXJyYXkoKQorICogQG1vZGVsCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBpbnRlcmZhY2UgVUludDhNdWx0aUFycmF5IGV4dGVuZHMgRU9iamVjdCB7CisJLyoqCisJICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+PGI+TGF5b3V0PC9iPjwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8cD4KKwkgKiBJZiB0aGUgbWVhbmluZyBvZiB0aGUgJzxlbT5MYXlvdXQ8L2VtPicgY29udGFpbm1lbnQgcmVmZXJlbmNlIGlzbid0IGNsZWFyLCB0aGVyZSByZWFsbHkgc2hvdWxkIGJlIG1vcmUgb2YgYSBkZXNjcmlwdGlvbiBoZXJlLi4uCisJICogPC9wPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSAnPGVtPkxheW91dDwvZW0+JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogQHNlZSAjc2V0TGF5b3V0KE11bHRpQXJyYXlMYXlvdXQpCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZSNnZXRVSW50OE11bHRpQXJyYXlfTGF5b3V0KCkKKwkgKiBAbW9kZWwgY29udGFpbm1lbnQ9InRydWUiIHJlcXVpcmVkPSJ0cnVlIiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJTXVsdGlBcnJheUxheW91dCBnZXRMYXlvdXQoKTsKKworCS8qKgorCSAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQ4TXVsdGlBcnJheSNnZXRMYXlvdXQgPGVtPkxheW91dDwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIHZhbHVlIHRoZSBuZXcgdmFsdWUgb2YgdGhlICc8ZW0+TGF5b3V0PC9lbT4nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiBAc2VlICNnZXRMYXlvdXQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwl2b2lkIHNldExheW91dChNdWx0aUFycmF5TGF5b3V0IHZhbHVlKTsKKworCS8qKgorCSAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSAnPGVtPjxiPkRhdGE8L2I+PC9lbT4nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIFRoZSBsaXN0IGNvbnRlbnRzIGFyZSBvZiB0eXBlIHtAbGluayBqYXZhLmxhbmcuT2JqZWN0fS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDxwPgorCSAqIElmIHRoZSBtZWFuaW5nIG9mIHRoZSAnPGVtPkRhdGE8L2VtPicgYXR0cmlidXRlIGxpc3QgaXNuJ3QgY2xlYXIsIHRoZXJlIHJlYWxseSBzaG91bGQgYmUgbW9yZSBvZiBhIGRlc2NyaXB0aW9uIGhlcmUuLi4KKwkgKiA8L3A+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgdmFsdWUgb2YgdGhlICc8ZW0+RGF0YTwvZW0+JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlI2dldFVJbnQ4TXVsdGlBcnJheV9EYXRhKCkKKwkgKiBAbW9kZWwgZGF0YVR5cGU9Im9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQ4IiBvcmRlcmVkPSJmYWxzZSIKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJRUxpc3Q8T2JqZWN0PiBnZXREYXRhKCk7CisKK30gLy8gVUludDhNdWx0aUFycmF5CmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvQnl0ZU11bHRpQXJyYXlJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvQnl0ZU11bHRpQXJyYXlJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzU3NjUxOQotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9CeXRlTXVsdGlBcnJheUltcGwuamF2YQpAQCAtMCwwICsxLDIyOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IGphdmEudXRpbC5Db2xsZWN0aW9uOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbkNoYWluOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLkVEYXRhVHlwZVVuaXF1ZUVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkJ5dGVNdWx0aUFycmF5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLk11bHRpQXJyYXlMYXlvdXQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5CeXRlIE11bHRpIEFycmF5PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLkJ5dGVNdWx0aUFycmF5SW1wbCNnZXRMYXlvdXQgPGVtPkxheW91dDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5CeXRlTXVsdGlBcnJheUltcGwjZ2V0RGF0YSA8ZW0+RGF0YTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEJ5dGVNdWx0aUFycmF5SW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBCeXRlTXVsdGlBcnJheSB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TGF5b3V0KCkgPGVtPkxheW91dDwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0TGF5b3V0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgTXVsdGlBcnJheUxheW91dCBsYXlvdXQ7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXREYXRhKCkgPGVtPkRhdGE8L2VtPn0nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0RGF0YSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEVMaXN0PE9iamVjdD4gZGF0YTsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBCeXRlTXVsdGlBcnJheUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBTdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5CWVRFX01VTFRJX0FSUkFZOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBNdWx0aUFycmF5TGF5b3V0IGdldExheW91dCgpIHsKKwkJcmV0dXJuIGxheW91dDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRMYXlvdXQoTXVsdGlBcnJheUxheW91dCBuZXdMYXlvdXQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJTXVsdGlBcnJheUxheW91dCBvbGRMYXlvdXQgPSBsYXlvdXQ7CisJCWxheW91dCA9IG5ld0xheW91dDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU3RkX2RhdGF0eXBlc1BhY2thZ2UuQllURV9NVUxUSV9BUlJBWV9fTEFZT1VULCBvbGRMYXlvdXQsIG5ld0xheW91dCk7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0TGF5b3V0KE11bHRpQXJyYXlMYXlvdXQgbmV3TGF5b3V0KSB7CisJCWlmIChuZXdMYXlvdXQgIT0gbGF5b3V0KSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChsYXlvdXQgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbGF5b3V0KS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gU3RkX2RhdGF0eXBlc1BhY2thZ2UuQllURV9NVUxUSV9BUlJBWV9fTEFZT1VULCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdMYXlvdXQgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3TGF5b3V0KS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gU3RkX2RhdGF0eXBlc1BhY2thZ2UuQllURV9NVUxUSV9BUlJBWV9fTEFZT1VULCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldExheW91dChuZXdMYXlvdXQsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU3RkX2RhdGF0eXBlc1BhY2thZ2UuQllURV9NVUxUSV9BUlJBWV9fTEFZT1VULCBuZXdMYXlvdXQsIG5ld0xheW91dCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFTGlzdDxPYmplY3Q+IGdldERhdGEoKSB7CisJCWlmIChkYXRhID09IG51bGwpIHsKKwkJCWRhdGEgPSBuZXcgRURhdGFUeXBlVW5pcXVlRUxpc3Q8T2JqZWN0PihPYmplY3QuY2xhc3MsIHRoaXMsIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkJZVEVfTVVMVElfQVJSQVlfX0RBVEEpOworCQl9CisJCXJldHVybiBkYXRhOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBlSW52ZXJzZVJlbW92ZShJbnRlcm5hbEVPYmplY3Qgb3RoZXJFbmQsIGludCBmZWF0dXJlSUQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuQllURV9NVUxUSV9BUlJBWV9fTEFZT1VUOgorCQkJCXJldHVybiBiYXNpY1NldExheW91dChudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5CWVRFX01VTFRJX0FSUkFZX19MQVlPVVQ6CisJCQkJcmV0dXJuIGdldExheW91dCgpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5CWVRFX01VTFRJX0FSUkFZX19EQVRBOgorCQkJCXJldHVybiBnZXREYXRhKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQFN1cHByZXNzV2FybmluZ3MoInVuY2hlY2tlZCIpCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuQllURV9NVUxUSV9BUlJBWV9fTEFZT1VUOgorCQkJCXNldExheW91dCgoTXVsdGlBcnJheUxheW91dCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5CWVRFX01VTFRJX0FSUkFZX19EQVRBOgorCQkJCWdldERhdGEoKS5jbGVhcigpOworCQkJCWdldERhdGEoKS5hZGRBbGwoKENvbGxlY3Rpb248PyBleHRlbmRzIE9iamVjdD4pbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkJZVEVfTVVMVElfQVJSQVlfX0xBWU9VVDoKKwkJCQlzZXRMYXlvdXQoKE11bHRpQXJyYXlMYXlvdXQpbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5CWVRFX01VTFRJX0FSUkFZX19EQVRBOgorCQkJCWdldERhdGEoKS5jbGVhcigpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5CWVRFX01VTFRJX0FSUkFZX19MQVlPVVQ6CisJCQkJcmV0dXJuIGxheW91dCAhPSBudWxsOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5CWVRFX01VTFRJX0FSUkFZX19EQVRBOgorCQkJCXJldHVybiBkYXRhICE9IG51bGwgJiYgIWRhdGEuaXNFbXB0eSgpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAoZGF0YTogIik7CisJCXJlc3VsdC5hcHBlbmQoZGF0YSk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBCeXRlTXVsdGlBcnJheUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9Db2xvclJHQkFJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvQ29sb3JSR0JBSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjYxYTc4MzYKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvQ29sb3JSR0JBSW1wbC5qYXZhCkBAIC0wLDAgKzEsMzIyIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkNvbG9yUkdCQTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkNvbG9yIFJHQkE8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuQ29sb3JSR0JBSW1wbCNnZXRSIDxlbT5SPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLkNvbG9yUkdCQUltcGwjZ2V0RyA8ZW0+RzwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5Db2xvclJHQkFJbXBsI2dldEIgPGVtPkI8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuQ29sb3JSR0JBSW1wbCNnZXRBIDxlbT5BPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgQ29sb3JSR0JBSW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBDb2xvclJHQkEgeworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRSKCkgPGVtPlI8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFIoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFJfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0UigpIDxlbT5SPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRSKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHIgPSBSX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEcoKSA8ZW0+RzwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0RygpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgR19FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRHKCkgPGVtPkc8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEcoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgZyA9IEdfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0QigpIDxlbT5CPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRCKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBCX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEIoKSA8ZW0+QjwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0QigpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBiID0gQl9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRBKCkgPGVtPkE8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldEEoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IEFfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0QSgpIDxlbT5BPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRBKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IGEgPSBBX0VERUZBVUxUOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIENvbG9yUkdCQUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBTdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5DT0xPUl9SR0JBOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0UigpIHsKKwkJcmV0dXJuIHI7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0UihPYmplY3QgbmV3UikgeworCQlPYmplY3Qgb2xkUiA9IHI7CisJCXIgPSBuZXdSOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTdGRfZGF0YXR5cGVzUGFja2FnZS5DT0xPUl9SR0JBX19SLCBvbGRSLCByKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRHKCkgeworCQlyZXR1cm4gZzsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRHKE9iamVjdCBuZXdHKSB7CisJCU9iamVjdCBvbGRHID0gZzsKKwkJZyA9IG5ld0c7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkNPTE9SX1JHQkFfX0csIG9sZEcsIGcpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldEIoKSB7CisJCXJldHVybiBiOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldEIoT2JqZWN0IG5ld0IpIHsKKwkJT2JqZWN0IG9sZEIgPSBiOworCQliID0gbmV3QjsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU3RkX2RhdGF0eXBlc1BhY2thZ2UuQ09MT1JfUkdCQV9fQiwgb2xkQiwgYikpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0QSgpIHsKKwkJcmV0dXJuIGE7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0QShPYmplY3QgbmV3QSkgeworCQlPYmplY3Qgb2xkQSA9IGE7CisJCWEgPSBuZXdBOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTdGRfZGF0YXR5cGVzUGFja2FnZS5DT0xPUl9SR0JBX19BLCBvbGRBLCBhKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5DT0xPUl9SR0JBX19SOgorCQkJCXJldHVybiBnZXRSKCk7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkNPTE9SX1JHQkFfX0c6CisJCQkJcmV0dXJuIGdldEcoKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuQ09MT1JfUkdCQV9fQjoKKwkJCQlyZXR1cm4gZ2V0QigpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5DT0xPUl9SR0JBX19BOgorCQkJCXJldHVybiBnZXRBKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuQ09MT1JfUkdCQV9fUjoKKwkJCQlzZXRSKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuQ09MT1JfUkdCQV9fRzoKKwkJCQlzZXRHKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuQ09MT1JfUkdCQV9fQjoKKwkJCQlzZXRCKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuQ09MT1JfUkdCQV9fQToKKwkJCQlzZXRBKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkNPTE9SX1JHQkFfX1I6CisJCQkJc2V0UihSX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkNPTE9SX1JHQkFfX0c6CisJCQkJc2V0RyhHX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkNPTE9SX1JHQkFfX0I6CisJCQkJc2V0QihCX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkNPTE9SX1JHQkFfX0E6CisJCQkJc2V0QShBX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuQ09MT1JfUkdCQV9fUjoKKwkJCQlyZXR1cm4gUl9FREVGQVVMVCA9PSBudWxsID8gciAhPSBudWxsIDogIVJfRURFRkFVTFQuZXF1YWxzKHIpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5DT0xPUl9SR0JBX19HOgorCQkJCXJldHVybiBHX0VERUZBVUxUID09IG51bGwgPyBnICE9IG51bGwgOiAhR19FREVGQVVMVC5lcXVhbHMoZyk7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkNPTE9SX1JHQkFfX0I6CisJCQkJcmV0dXJuIEJfRURFRkFVTFQgPT0gbnVsbCA/IGIgIT0gbnVsbCA6ICFCX0VERUZBVUxULmVxdWFscyhiKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuQ09MT1JfUkdCQV9fQToKKwkJCQlyZXR1cm4gQV9FREVGQVVMVCA9PSBudWxsID8gYSAhPSBudWxsIDogIUFfRURFRkFVTFQuZXF1YWxzKGEpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAocjogIik7CisJCXJlc3VsdC5hcHBlbmQocik7CisJCXJlc3VsdC5hcHBlbmQoIiwgZzogIik7CisJCXJlc3VsdC5hcHBlbmQoZyk7CisJCXJlc3VsdC5hcHBlbmQoIiwgYjogIik7CisJCXJlc3VsdC5hcHBlbmQoYik7CisJCXJlc3VsdC5hcHBlbmQoIiwgYTogIik7CisJCXJlc3VsdC5hcHBlbmQoYSk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBDb2xvclJHQkFJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvRmxvYXQzMk11bHRpQXJyYXlJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvRmxvYXQzMk11bHRpQXJyYXlJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjQyNTQwMAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9GbG9hdDMyTXVsdGlBcnJheUltcGwuamF2YQpAQCAtMCwwICsxLDIyOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IGphdmEudXRpbC5Db2xsZWN0aW9uOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbkNoYWluOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLkVEYXRhVHlwZVVuaXF1ZUVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0MzJNdWx0aUFycmF5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLk11bHRpQXJyYXlMYXlvdXQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5GbG9hdDMyIE11bHRpIEFycmF5PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLkZsb2F0MzJNdWx0aUFycmF5SW1wbCNnZXRMYXlvdXQgPGVtPkxheW91dDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5GbG9hdDMyTXVsdGlBcnJheUltcGwjZ2V0RGF0YSA8ZW0+RGF0YTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEZsb2F0MzJNdWx0aUFycmF5SW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBGbG9hdDMyTXVsdGlBcnJheSB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TGF5b3V0KCkgPGVtPkxheW91dDwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0TGF5b3V0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgTXVsdGlBcnJheUxheW91dCBsYXlvdXQ7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXREYXRhKCkgPGVtPkRhdGE8L2VtPn0nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0RGF0YSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEVMaXN0PE9iamVjdD4gZGF0YTsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBGbG9hdDMyTXVsdGlBcnJheUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBTdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5GTE9BVDMyX01VTFRJX0FSUkFZOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBNdWx0aUFycmF5TGF5b3V0IGdldExheW91dCgpIHsKKwkJcmV0dXJuIGxheW91dDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRMYXlvdXQoTXVsdGlBcnJheUxheW91dCBuZXdMYXlvdXQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJTXVsdGlBcnJheUxheW91dCBvbGRMYXlvdXQgPSBsYXlvdXQ7CisJCWxheW91dCA9IG5ld0xheW91dDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU3RkX2RhdGF0eXBlc1BhY2thZ2UuRkxPQVQzMl9NVUxUSV9BUlJBWV9fTEFZT1VULCBvbGRMYXlvdXQsIG5ld0xheW91dCk7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0TGF5b3V0KE11bHRpQXJyYXlMYXlvdXQgbmV3TGF5b3V0KSB7CisJCWlmIChuZXdMYXlvdXQgIT0gbGF5b3V0KSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChsYXlvdXQgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbGF5b3V0KS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gU3RkX2RhdGF0eXBlc1BhY2thZ2UuRkxPQVQzMl9NVUxUSV9BUlJBWV9fTEFZT1VULCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdMYXlvdXQgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3TGF5b3V0KS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gU3RkX2RhdGF0eXBlc1BhY2thZ2UuRkxPQVQzMl9NVUxUSV9BUlJBWV9fTEFZT1VULCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldExheW91dChuZXdMYXlvdXQsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU3RkX2RhdGF0eXBlc1BhY2thZ2UuRkxPQVQzMl9NVUxUSV9BUlJBWV9fTEFZT1VULCBuZXdMYXlvdXQsIG5ld0xheW91dCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFTGlzdDxPYmplY3Q+IGdldERhdGEoKSB7CisJCWlmIChkYXRhID09IG51bGwpIHsKKwkJCWRhdGEgPSBuZXcgRURhdGFUeXBlVW5pcXVlRUxpc3Q8T2JqZWN0PihPYmplY3QuY2xhc3MsIHRoaXMsIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkZMT0FUMzJfTVVMVElfQVJSQVlfX0RBVEEpOworCQl9CisJCXJldHVybiBkYXRhOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBlSW52ZXJzZVJlbW92ZShJbnRlcm5hbEVPYmplY3Qgb3RoZXJFbmQsIGludCBmZWF0dXJlSUQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuRkxPQVQzMl9NVUxUSV9BUlJBWV9fTEFZT1VUOgorCQkJCXJldHVybiBiYXNpY1NldExheW91dChudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5GTE9BVDMyX01VTFRJX0FSUkFZX19MQVlPVVQ6CisJCQkJcmV0dXJuIGdldExheW91dCgpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5GTE9BVDMyX01VTFRJX0FSUkFZX19EQVRBOgorCQkJCXJldHVybiBnZXREYXRhKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQFN1cHByZXNzV2FybmluZ3MoInVuY2hlY2tlZCIpCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuRkxPQVQzMl9NVUxUSV9BUlJBWV9fTEFZT1VUOgorCQkJCXNldExheW91dCgoTXVsdGlBcnJheUxheW91dCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5GTE9BVDMyX01VTFRJX0FSUkFZX19EQVRBOgorCQkJCWdldERhdGEoKS5jbGVhcigpOworCQkJCWdldERhdGEoKS5hZGRBbGwoKENvbGxlY3Rpb248PyBleHRlbmRzIE9iamVjdD4pbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkZMT0FUMzJfTVVMVElfQVJSQVlfX0xBWU9VVDoKKwkJCQlzZXRMYXlvdXQoKE11bHRpQXJyYXlMYXlvdXQpbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5GTE9BVDMyX01VTFRJX0FSUkFZX19EQVRBOgorCQkJCWdldERhdGEoKS5jbGVhcigpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5GTE9BVDMyX01VTFRJX0FSUkFZX19MQVlPVVQ6CisJCQkJcmV0dXJuIGxheW91dCAhPSBudWxsOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5GTE9BVDMyX01VTFRJX0FSUkFZX19EQVRBOgorCQkJCXJldHVybiBkYXRhICE9IG51bGwgJiYgIWRhdGEuaXNFbXB0eSgpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAoZGF0YTogIik7CisJCXJlc3VsdC5hcHBlbmQoZGF0YSk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBGbG9hdDMyTXVsdGlBcnJheUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9GbG9hdDY0TXVsdGlBcnJheUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9GbG9hdDY0TXVsdGlBcnJheUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MDIyOTkyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL0Zsb2F0NjRNdWx0aUFycmF5SW1wbC5qYXZhCkBAIC0wLDAgKzEsMjI4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb247CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uQ2hhaW47CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuRURhdGFUeXBlVW5pcXVlRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQ2NE11bHRpQXJyYXk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuTXVsdGlBcnJheUxheW91dDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkZsb2F0NjQgTXVsdGkgQXJyYXk8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuRmxvYXQ2NE11bHRpQXJyYXlJbXBsI2dldExheW91dCA8ZW0+TGF5b3V0PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLkZsb2F0NjRNdWx0aUFycmF5SW1wbCNnZXREYXRhIDxlbT5EYXRhPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgRmxvYXQ2NE11bHRpQXJyYXlJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIEZsb2F0NjRNdWx0aUFycmF5IHsKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRMYXlvdXQoKSA8ZW0+TGF5b3V0PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRMYXlvdXQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBNdWx0aUFycmF5TGF5b3V0IGxheW91dDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldERhdGEoKSA8ZW0+RGF0YTwvZW0+fScgYXR0cmlidXRlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXREYXRhKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRUxpc3Q8T2JqZWN0PiBkYXRhOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIEZsb2F0NjRNdWx0aUFycmF5SW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLkZMT0FUNjRfTVVMVElfQVJSQVk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE11bHRpQXJyYXlMYXlvdXQgZ2V0TGF5b3V0KCkgeworCQlyZXR1cm4gbGF5b3V0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBiYXNpY1NldExheW91dChNdWx0aUFycmF5TGF5b3V0IG5ld0xheW91dCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlNdWx0aUFycmF5TGF5b3V0IG9sZExheW91dCA9IGxheW91dDsKKwkJbGF5b3V0ID0gbmV3TGF5b3V0OworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpIHsKKwkJCUVOb3RpZmljYXRpb25JbXBsIG5vdGlmaWNhdGlvbiA9IG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTdGRfZGF0YXR5cGVzUGFja2FnZS5GTE9BVDY0X01VTFRJX0FSUkFZX19MQVlPVVQsIG9sZExheW91dCwgbmV3TGF5b3V0KTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRMYXlvdXQoTXVsdGlBcnJheUxheW91dCBuZXdMYXlvdXQpIHsKKwkJaWYgKG5ld0xheW91dCAhPSBsYXlvdXQpIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKGxheW91dCAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdClsYXlvdXQpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBTdGRfZGF0YXR5cGVzUGFja2FnZS5GTE9BVDY0X01VTFRJX0FSUkFZX19MQVlPVVQsIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld0xheW91dCAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdMYXlvdXQpLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBTdGRfZGF0YXR5cGVzUGFja2FnZS5GTE9BVDY0X01VTFRJX0FSUkFZX19MQVlPVVQsIG51bGwsIG1zZ3MpOworCQkJbXNncyA9IGJhc2ljU2V0TGF5b3V0KG5ld0xheW91dCwgbXNncyk7CisJCQlpZiAobXNncyAhPSBudWxsKSBtc2dzLmRpc3BhdGNoKCk7CisJCX0KKwkJZWxzZSBpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTdGRfZGF0YXR5cGVzUGFja2FnZS5GTE9BVDY0X01VTFRJX0FSUkFZX19MQVlPVVQsIG5ld0xheW91dCwgbmV3TGF5b3V0KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVMaXN0PE9iamVjdD4gZ2V0RGF0YSgpIHsKKwkJaWYgKGRhdGEgPT0gbnVsbCkgeworCQkJZGF0YSA9IG5ldyBFRGF0YVR5cGVVbmlxdWVFTGlzdDxPYmplY3Q+KE9iamVjdC5jbGFzcywgdGhpcywgU3RkX2RhdGF0eXBlc1BhY2thZ2UuRkxPQVQ2NF9NVUxUSV9BUlJBWV9fREFUQSk7CisJCX0KKwkJcmV0dXJuIGRhdGE7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGVJbnZlcnNlUmVtb3ZlKEludGVybmFsRU9iamVjdCBvdGhlckVuZCwgaW50IGZlYXR1cmVJRCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5GTE9BVDY0X01VTFRJX0FSUkFZX19MQVlPVVQ6CisJCQkJcmV0dXJuIGJhc2ljU2V0TGF5b3V0KG51bGwsIG1zZ3MpOworCQl9CisJCXJldHVybiBzdXBlci5lSW52ZXJzZVJlbW92ZShvdGhlckVuZCwgZmVhdHVyZUlELCBtc2dzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkZMT0FUNjRfTVVMVElfQVJSQVlfX0xBWU9VVDoKKwkJCQlyZXR1cm4gZ2V0TGF5b3V0KCk7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkZMT0FUNjRfTVVMVElfQVJSQVlfX0RBVEE6CisJCQkJcmV0dXJuIGdldERhdGEoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAU3VwcHJlc3NXYXJuaW5ncygidW5jaGVja2VkIikKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5GTE9BVDY0X01VTFRJX0FSUkFZX19MQVlPVVQ6CisJCQkJc2V0TGF5b3V0KChNdWx0aUFycmF5TGF5b3V0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkZMT0FUNjRfTVVMVElfQVJSQVlfX0RBVEE6CisJCQkJZ2V0RGF0YSgpLmNsZWFyKCk7CisJCQkJZ2V0RGF0YSgpLmFkZEFsbCgoQ29sbGVjdGlvbjw/IGV4dGVuZHMgT2JqZWN0PiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuRkxPQVQ2NF9NVUxUSV9BUlJBWV9fTEFZT1VUOgorCQkJCXNldExheW91dCgoTXVsdGlBcnJheUxheW91dCludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkZMT0FUNjRfTVVMVElfQVJSQVlfX0RBVEE6CisJCQkJZ2V0RGF0YSgpLmNsZWFyKCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkZMT0FUNjRfTVVMVElfQVJSQVlfX0xBWU9VVDoKKwkJCQlyZXR1cm4gbGF5b3V0ICE9IG51bGw7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkZMT0FUNjRfTVVMVElfQVJSQVlfX0RBVEE6CisJCQkJcmV0dXJuIGRhdGEgIT0gbnVsbCAmJiAhZGF0YS5pc0VtcHR5KCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CisJCWlmIChlSXNQcm94eSgpKSByZXR1cm4gc3VwZXIudG9TdHJpbmcoKTsKKworCQlTdHJpbmdCdWZmZXIgcmVzdWx0ID0gbmV3IFN0cmluZ0J1ZmZlcihzdXBlci50b1N0cmluZygpKTsKKwkJcmVzdWx0LmFwcGVuZCgiIChkYXRhOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChkYXRhKTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIEZsb2F0NjRNdWx0aUFycmF5SW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL0hlYWRlckltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9IZWFkZXJJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGI1OGUzMAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9IZWFkZXJJbXBsLmphdmEKQEAgLTAsMCArMSwyNjggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSGVhZGVyOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SGVhZGVyPC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLkhlYWRlckltcGwjZ2V0U2VxIDxlbT5TZXE8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuSGVhZGVySW1wbCNnZXRTdGFtcCA8ZW0+U3RhbXA8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuSGVhZGVySW1wbCNnZXRGcmFtZV9pZCA8ZW0+RnJhbWUgaWQ8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBIZWFkZXJJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIEhlYWRlciB7CisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFNlcSgpIDxlbT5TZXE8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFNlcSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgU0VRX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFNlcSgpIDxlbT5TZXE8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFNlcSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBzZXEgPSBTRVFfRURFRkFVTFQ7CisKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0U3RhbXAoKSA8ZW0+U3RhbXA8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFN0YW1wKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBTVEFNUF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTdGFtcCgpIDxlbT5TdGFtcDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0U3RhbXAoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3Qgc3RhbXAgPSBTVEFNUF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRGcmFtZV9pZCgpIDxlbT5GcmFtZSBpZDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0RnJhbWVfaWQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IEZSQU1FX0lEX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldEZyYW1lX2lkKCkgPGVtPkZyYW1lIGlkPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRGcmFtZV9pZCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBmcmFtZV9pZCA9IEZSQU1FX0lEX0VERUZBVUxUOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIEhlYWRlckltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBTdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5IRUFERVI7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRTZXEoKSB7CisJCXJldHVybiBzZXE7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0U2VxKE9iamVjdCBuZXdTZXEpIHsKKwkJT2JqZWN0IG9sZFNlcSA9IHNlcTsKKwkJc2VxID0gbmV3U2VxOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTdGRfZGF0YXR5cGVzUGFja2FnZS5IRUFERVJfX1NFUSwgb2xkU2VxLCBzZXEpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldFN0YW1wKCkgeworCQlyZXR1cm4gc3RhbXA7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0U3RhbXAoT2JqZWN0IG5ld1N0YW1wKSB7CisJCU9iamVjdCBvbGRTdGFtcCA9IHN0YW1wOworCQlzdGFtcCA9IG5ld1N0YW1wOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTdGRfZGF0YXR5cGVzUGFja2FnZS5IRUFERVJfX1NUQU1QLCBvbGRTdGFtcCwgc3RhbXApKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGdldEZyYW1lX2lkKCkgeworCQlyZXR1cm4gZnJhbWVfaWQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0RnJhbWVfaWQoT2JqZWN0IG5ld0ZyYW1lX2lkKSB7CisJCU9iamVjdCBvbGRGcmFtZV9pZCA9IGZyYW1lX2lkOworCQlmcmFtZV9pZCA9IG5ld0ZyYW1lX2lkOworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTdGRfZGF0YXR5cGVzUGFja2FnZS5IRUFERVJfX0ZSQU1FX0lELCBvbGRGcmFtZV9pZCwgZnJhbWVfaWQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkhFQURFUl9fU0VROgorCQkJCXJldHVybiBnZXRTZXEoKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSEVBREVSX19TVEFNUDoKKwkJCQlyZXR1cm4gZ2V0U3RhbXAoKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSEVBREVSX19GUkFNRV9JRDoKKwkJCQlyZXR1cm4gZ2V0RnJhbWVfaWQoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5IRUFERVJfX1NFUToKKwkJCQlzZXRTZXEoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5IRUFERVJfX1NUQU1QOgorCQkJCXNldFN0YW1wKChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSEVBREVSX19GUkFNRV9JRDoKKwkJCQlzZXRGcmFtZV9pZCgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5IRUFERVJfX1NFUToKKwkJCQlzZXRTZXEoU0VRX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkhFQURFUl9fU1RBTVA6CisJCQkJc2V0U3RhbXAoU1RBTVBfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSEVBREVSX19GUkFNRV9JRDoKKwkJCQlzZXRGcmFtZV9pZChGUkFNRV9JRF9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkhFQURFUl9fU0VROgorCQkJCXJldHVybiBTRVFfRURFRkFVTFQgPT0gbnVsbCA/IHNlcSAhPSBudWxsIDogIVNFUV9FREVGQVVMVC5lcXVhbHMoc2VxKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSEVBREVSX19TVEFNUDoKKwkJCQlyZXR1cm4gU1RBTVBfRURFRkFVTFQgPT0gbnVsbCA/IHN0YW1wICE9IG51bGwgOiAhU1RBTVBfRURFRkFVTFQuZXF1YWxzKHN0YW1wKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSEVBREVSX19GUkFNRV9JRDoKKwkJCQlyZXR1cm4gRlJBTUVfSURfRURFRkFVTFQgPT0gbnVsbCA/IGZyYW1lX2lkICE9IG51bGwgOiAhRlJBTUVfSURfRURFRkFVTFQuZXF1YWxzKGZyYW1lX2lkKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJaWYgKGVJc1Byb3h5KCkpIHJldHVybiBzdXBlci50b1N0cmluZygpOworCisJCVN0cmluZ0J1ZmZlciByZXN1bHQgPSBuZXcgU3RyaW5nQnVmZmVyKHN1cGVyLnRvU3RyaW5nKCkpOworCQlyZXN1bHQuYXBwZW5kKCIgKHNlcTogIik7CisJCXJlc3VsdC5hcHBlbmQoc2VxKTsKKwkJcmVzdWx0LmFwcGVuZCgiLCBzdGFtcDogIik7CisJCXJlc3VsdC5hcHBlbmQoc3RhbXApOworCQlyZXN1bHQuYXBwZW5kKCIsIGZyYW1lX2lkOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChmcmFtZV9pZCk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBIZWFkZXJJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvSW50MTZNdWx0aUFycmF5SW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL0ludDE2TXVsdGlBcnJheUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44OGU0NjExCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL0ludDE2TXVsdGlBcnJheUltcGwuamF2YQpAQCAtMCwwICsxLDIyOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IGphdmEudXRpbC5Db2xsZWN0aW9uOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbkNoYWluOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLkVEYXRhVHlwZVVuaXF1ZUVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkludDE2TXVsdGlBcnJheTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5NdWx0aUFycmF5TGF5b3V0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+SW50MTYgTXVsdGkgQXJyYXk8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuSW50MTZNdWx0aUFycmF5SW1wbCNnZXRMYXlvdXQgPGVtPkxheW91dDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5JbnQxNk11bHRpQXJyYXlJbXBsI2dldERhdGEgPGVtPkRhdGE8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBJbnQxNk11bHRpQXJyYXlJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIEludDE2TXVsdGlBcnJheSB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TGF5b3V0KCkgPGVtPkxheW91dDwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0TGF5b3V0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgTXVsdGlBcnJheUxheW91dCBsYXlvdXQ7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXREYXRhKCkgPGVtPkRhdGE8L2VtPn0nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0RGF0YSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEVMaXN0PE9iamVjdD4gZGF0YTsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBJbnQxNk11bHRpQXJyYXlJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuSU5UMTZfTVVMVElfQVJSQVk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE11bHRpQXJyYXlMYXlvdXQgZ2V0TGF5b3V0KCkgeworCQlyZXR1cm4gbGF5b3V0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBiYXNpY1NldExheW91dChNdWx0aUFycmF5TGF5b3V0IG5ld0xheW91dCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlNdWx0aUFycmF5TGF5b3V0IG9sZExheW91dCA9IGxheW91dDsKKwkJbGF5b3V0ID0gbmV3TGF5b3V0OworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpIHsKKwkJCUVOb3RpZmljYXRpb25JbXBsIG5vdGlmaWNhdGlvbiA9IG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQxNl9NVUxUSV9BUlJBWV9fTEFZT1VULCBvbGRMYXlvdXQsIG5ld0xheW91dCk7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0TGF5b3V0KE11bHRpQXJyYXlMYXlvdXQgbmV3TGF5b3V0KSB7CisJCWlmIChuZXdMYXlvdXQgIT0gbGF5b3V0KSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChsYXlvdXQgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbGF5b3V0KS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UMTZfTVVMVElfQVJSQVlfX0xBWU9VVCwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3TGF5b3V0ICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld0xheW91dCkuZUludmVyc2VBZGQodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDE2X01VTFRJX0FSUkFZX19MQVlPVVQsIG51bGwsIG1zZ3MpOworCQkJbXNncyA9IGJhc2ljU2V0TGF5b3V0KG5ld0xheW91dCwgbXNncyk7CisJCQlpZiAobXNncyAhPSBudWxsKSBtc2dzLmRpc3BhdGNoKCk7CisJCX0KKwkJZWxzZSBpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQxNl9NVUxUSV9BUlJBWV9fTEFZT1VULCBuZXdMYXlvdXQsIG5ld0xheW91dCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFTGlzdDxPYmplY3Q+IGdldERhdGEoKSB7CisJCWlmIChkYXRhID09IG51bGwpIHsKKwkJCWRhdGEgPSBuZXcgRURhdGFUeXBlVW5pcXVlRUxpc3Q8T2JqZWN0PihPYmplY3QuY2xhc3MsIHRoaXMsIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDE2X01VTFRJX0FSUkFZX19EQVRBKTsKKwkJfQorCQlyZXR1cm4gZGF0YTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gZUludmVyc2VSZW1vdmUoSW50ZXJuYWxFT2JqZWN0IG90aGVyRW5kLCBpbnQgZmVhdHVyZUlELCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDE2X01VTFRJX0FSUkFZX19MQVlPVVQ6CisJCQkJcmV0dXJuIGJhc2ljU2V0TGF5b3V0KG51bGwsIG1zZ3MpOworCQl9CisJCXJldHVybiBzdXBlci5lSW52ZXJzZVJlbW92ZShvdGhlckVuZCwgZmVhdHVyZUlELCBtc2dzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDE2X01VTFRJX0FSUkFZX19MQVlPVVQ6CisJCQkJcmV0dXJuIGdldExheW91dCgpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQxNl9NVUxUSV9BUlJBWV9fREFUQToKKwkJCQlyZXR1cm4gZ2V0RGF0YSgpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBTdXBwcmVzc1dhcm5pbmdzKCJ1bmNoZWNrZWQiKQorCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDE2X01VTFRJX0FSUkFZX19MQVlPVVQ6CisJCQkJc2V0TGF5b3V0KChNdWx0aUFycmF5TGF5b3V0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDE2X01VTFRJX0FSUkFZX19EQVRBOgorCQkJCWdldERhdGEoKS5jbGVhcigpOworCQkJCWdldERhdGEoKS5hZGRBbGwoKENvbGxlY3Rpb248PyBleHRlbmRzIE9iamVjdD4pbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDE2X01VTFRJX0FSUkFZX19MQVlPVVQ6CisJCQkJc2V0TGF5b3V0KChNdWx0aUFycmF5TGF5b3V0KW51bGwpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UMTZfTVVMVElfQVJSQVlfX0RBVEE6CisJCQkJZ2V0RGF0YSgpLmNsZWFyKCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDE2X01VTFRJX0FSUkFZX19MQVlPVVQ6CisJCQkJcmV0dXJuIGxheW91dCAhPSBudWxsOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQxNl9NVUxUSV9BUlJBWV9fREFUQToKKwkJCQlyZXR1cm4gZGF0YSAhPSBudWxsICYmICFkYXRhLmlzRW1wdHkoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJaWYgKGVJc1Byb3h5KCkpIHJldHVybiBzdXBlci50b1N0cmluZygpOworCisJCVN0cmluZ0J1ZmZlciByZXN1bHQgPSBuZXcgU3RyaW5nQnVmZmVyKHN1cGVyLnRvU3RyaW5nKCkpOworCQlyZXN1bHQuYXBwZW5kKCIgKGRhdGE6ICIpOworCQlyZXN1bHQuYXBwZW5kKGRhdGEpOworCQlyZXN1bHQuYXBwZW5kKCcpJyk7CisJCXJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKKwl9CisKK30gLy8gSW50MTZNdWx0aUFycmF5SW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL0ludDMyTXVsdGlBcnJheUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9JbnQzMk11bHRpQXJyYXlJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjBmYjgxMwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9JbnQzMk11bHRpQXJyYXlJbXBsLmphdmEKQEAgLTAsMCArMSwyMjggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb25DaGFpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5FRGF0YVR5cGVVbmlxdWVFTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQzMk11bHRpQXJyYXk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuTXVsdGlBcnJheUxheW91dDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPkludDMyIE11bHRpIEFycmF5PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLkludDMyTXVsdGlBcnJheUltcGwjZ2V0TGF5b3V0IDxlbT5MYXlvdXQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuSW50MzJNdWx0aUFycmF5SW1wbCNnZXREYXRhIDxlbT5EYXRhPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgSW50MzJNdWx0aUFycmF5SW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBJbnQzMk11bHRpQXJyYXkgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExheW91dCgpIDxlbT5MYXlvdXQ8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExheW91dCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE11bHRpQXJyYXlMYXlvdXQgbGF5b3V0OworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0RGF0YSgpIDxlbT5EYXRhPC9lbT59JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldERhdGEoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBFTGlzdDxPYmplY3Q+IGRhdGE7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgSW50MzJNdWx0aUFycmF5SW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLklOVDMyX01VTFRJX0FSUkFZOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBNdWx0aUFycmF5TGF5b3V0IGdldExheW91dCgpIHsKKwkJcmV0dXJuIGxheW91dDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRMYXlvdXQoTXVsdGlBcnJheUxheW91dCBuZXdMYXlvdXQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJTXVsdGlBcnJheUxheW91dCBvbGRMYXlvdXQgPSBsYXlvdXQ7CisJCWxheW91dCA9IG5ld0xheW91dDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UMzJfTVVMVElfQVJSQVlfX0xBWU9VVCwgb2xkTGF5b3V0LCBuZXdMYXlvdXQpOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldExheW91dChNdWx0aUFycmF5TGF5b3V0IG5ld0xheW91dCkgeworCQlpZiAobmV3TGF5b3V0ICE9IGxheW91dCkgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAobGF5b3V0ICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KWxheW91dCkuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDMyX01VTFRJX0FSUkFZX19MQVlPVVQsIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld0xheW91dCAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdMYXlvdXQpLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQzMl9NVUxUSV9BUlJBWV9fTEFZT1VULCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldExheW91dChuZXdMYXlvdXQsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UMzJfTVVMVElfQVJSQVlfX0xBWU9VVCwgbmV3TGF5b3V0LCBuZXdMYXlvdXQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUxpc3Q8T2JqZWN0PiBnZXREYXRhKCkgeworCQlpZiAoZGF0YSA9PSBudWxsKSB7CisJCQlkYXRhID0gbmV3IEVEYXRhVHlwZVVuaXF1ZUVMaXN0PE9iamVjdD4oT2JqZWN0LmNsYXNzLCB0aGlzLCBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQzMl9NVUxUSV9BUlJBWV9fREFUQSk7CisJCX0KKwkJcmV0dXJuIGRhdGE7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGVJbnZlcnNlUmVtb3ZlKEludGVybmFsRU9iamVjdCBvdGhlckVuZCwgaW50IGZlYXR1cmVJRCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQzMl9NVUxUSV9BUlJBWV9fTEFZT1VUOgorCQkJCXJldHVybiBiYXNpY1NldExheW91dChudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQzMl9NVUxUSV9BUlJBWV9fTEFZT1VUOgorCQkJCXJldHVybiBnZXRMYXlvdXQoKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UMzJfTVVMVElfQVJSQVlfX0RBVEE6CisJCQkJcmV0dXJuIGdldERhdGEoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAU3VwcHJlc3NXYXJuaW5ncygidW5jaGVja2VkIikKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQzMl9NVUxUSV9BUlJBWV9fTEFZT1VUOgorCQkJCXNldExheW91dCgoTXVsdGlBcnJheUxheW91dCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQzMl9NVUxUSV9BUlJBWV9fREFUQToKKwkJCQlnZXREYXRhKCkuY2xlYXIoKTsKKwkJCQlnZXREYXRhKCkuYWRkQWxsKChDb2xsZWN0aW9uPD8gZXh0ZW5kcyBPYmplY3Q+KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQzMl9NVUxUSV9BUlJBWV9fTEFZT1VUOgorCQkJCXNldExheW91dCgoTXVsdGlBcnJheUxheW91dCludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDMyX01VTFRJX0FSUkFZX19EQVRBOgorCQkJCWdldERhdGEoKS5jbGVhcigpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQzMl9NVUxUSV9BUlJBWV9fTEFZT1VUOgorCQkJCXJldHVybiBsYXlvdXQgIT0gbnVsbDsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UMzJfTVVMVElfQVJSQVlfX0RBVEE6CisJCQkJcmV0dXJuIGRhdGEgIT0gbnVsbCAmJiAhZGF0YS5pc0VtcHR5KCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CisJCWlmIChlSXNQcm94eSgpKSByZXR1cm4gc3VwZXIudG9TdHJpbmcoKTsKKworCQlTdHJpbmdCdWZmZXIgcmVzdWx0ID0gbmV3IFN0cmluZ0J1ZmZlcihzdXBlci50b1N0cmluZygpKTsKKwkJcmVzdWx0LmFwcGVuZCgiIChkYXRhOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChkYXRhKTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIEludDMyTXVsdGlBcnJheUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9JbnQ2NE11bHRpQXJyYXlJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvSW50NjRNdWx0aUFycmF5SW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE0MThkZTkKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvSW50NjRNdWx0aUFycmF5SW1wbC5qYXZhCkBAIC0wLDAgKzEsMjI4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb247CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb247CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uQ2hhaW47CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51dGlsLkVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5FTm90aWZpY2F0aW9uSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuaW1wbC5NaW5pbWFsRU9iamVjdEltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLnV0aWwuRURhdGFUeXBlVW5pcXVlRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSW50NjRNdWx0aUFycmF5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLk11bHRpQXJyYXlMYXlvdXQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5JbnQ2NCBNdWx0aSBBcnJheTwvYj48L2VtPicuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIDxwPgorICogVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcmUgaW1wbGVtZW50ZWQ6CisgKiA8dWw+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5JbnQ2NE11bHRpQXJyYXlJbXBsI2dldExheW91dCA8ZW0+TGF5b3V0PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLkludDY0TXVsdGlBcnJheUltcGwjZ2V0RGF0YSA8ZW0+RGF0YTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEludDY0TXVsdGlBcnJheUltcGwgZXh0ZW5kcyBNaW5pbWFsRU9iamVjdEltcGwuQ29udGFpbmVyIGltcGxlbWVudHMgSW50NjRNdWx0aUFycmF5IHsKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRMYXlvdXQoKSA8ZW0+TGF5b3V0PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRMYXlvdXQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBNdWx0aUFycmF5TGF5b3V0IGxheW91dDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldERhdGEoKSA8ZW0+RGF0YTwvZW0+fScgYXR0cmlidXRlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXREYXRhKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRUxpc3Q8T2JqZWN0PiBkYXRhOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIEludDY0TXVsdGlBcnJheUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBTdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5JTlQ2NF9NVUxUSV9BUlJBWTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTXVsdGlBcnJheUxheW91dCBnZXRMYXlvdXQoKSB7CisJCXJldHVybiBsYXlvdXQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGJhc2ljU2V0TGF5b3V0KE11bHRpQXJyYXlMYXlvdXQgbmV3TGF5b3V0LCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCU11bHRpQXJyYXlMYXlvdXQgb2xkTGF5b3V0ID0gbGF5b3V0OworCQlsYXlvdXQgPSBuZXdMYXlvdXQ7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkgeworCQkJRU5vdGlmaWNhdGlvbkltcGwgbm90aWZpY2F0aW9uID0gbmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDY0X01VTFRJX0FSUkFZX19MQVlPVVQsIG9sZExheW91dCwgbmV3TGF5b3V0KTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRMYXlvdXQoTXVsdGlBcnJheUxheW91dCBuZXdMYXlvdXQpIHsKKwkJaWYgKG5ld0xheW91dCAhPSBsYXlvdXQpIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKGxheW91dCAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdClsYXlvdXQpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQ2NF9NVUxUSV9BUlJBWV9fTEFZT1VULCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdMYXlvdXQgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3TGF5b3V0KS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UNjRfTVVMVElfQVJSQVlfX0xBWU9VVCwgbnVsbCwgbXNncyk7CisJCQltc2dzID0gYmFzaWNTZXRMYXlvdXQobmV3TGF5b3V0LCBtc2dzKTsKKwkJCWlmIChtc2dzICE9IG51bGwpIG1zZ3MuZGlzcGF0Y2goKTsKKwkJfQorCQllbHNlIGlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDY0X01VTFRJX0FSUkFZX19MQVlPVVQsIG5ld0xheW91dCwgbmV3TGF5b3V0KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVMaXN0PE9iamVjdD4gZ2V0RGF0YSgpIHsKKwkJaWYgKGRhdGEgPT0gbnVsbCkgeworCQkJZGF0YSA9IG5ldyBFRGF0YVR5cGVVbmlxdWVFTGlzdDxPYmplY3Q+KE9iamVjdC5jbGFzcywgdGhpcywgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UNjRfTVVMVElfQVJSQVlfX0RBVEEpOworCQl9CisJCXJldHVybiBkYXRhOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBlSW52ZXJzZVJlbW92ZShJbnRlcm5hbEVPYmplY3Qgb3RoZXJFbmQsIGludCBmZWF0dXJlSUQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UNjRfTVVMVElfQVJSQVlfX0xBWU9VVDoKKwkJCQlyZXR1cm4gYmFzaWNTZXRMYXlvdXQobnVsbCwgbXNncyk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJbnZlcnNlUmVtb3ZlKG90aGVyRW5kLCBmZWF0dXJlSUQsIG1zZ3MpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UNjRfTVVMVElfQVJSQVlfX0xBWU9VVDoKKwkJCQlyZXR1cm4gZ2V0TGF5b3V0KCk7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDY0X01VTFRJX0FSUkFZX19EQVRBOgorCQkJCXJldHVybiBnZXREYXRhKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQFN1cHByZXNzV2FybmluZ3MoInVuY2hlY2tlZCIpCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UNjRfTVVMVElfQVJSQVlfX0xBWU9VVDoKKwkJCQlzZXRMYXlvdXQoKE11bHRpQXJyYXlMYXlvdXQpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UNjRfTVVMVElfQVJSQVlfX0RBVEE6CisJCQkJZ2V0RGF0YSgpLmNsZWFyKCk7CisJCQkJZ2V0RGF0YSgpLmFkZEFsbCgoQ29sbGVjdGlvbjw/IGV4dGVuZHMgT2JqZWN0PiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UNjRfTVVMVElfQVJSQVlfX0xBWU9VVDoKKwkJCQlzZXRMYXlvdXQoKE11bHRpQXJyYXlMYXlvdXQpbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQ2NF9NVUxUSV9BUlJBWV9fREFUQToKKwkJCQlnZXREYXRhKCkuY2xlYXIoKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UNjRfTVVMVElfQVJSQVlfX0xBWU9VVDoKKwkJCQlyZXR1cm4gbGF5b3V0ICE9IG51bGw7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDY0X01VTFRJX0FSUkFZX19EQVRBOgorCQkJCXJldHVybiBkYXRhICE9IG51bGwgJiYgIWRhdGEuaXNFbXB0eSgpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAoZGF0YTogIik7CisJCXJlc3VsdC5hcHBlbmQoZGF0YSk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBJbnQ2NE11bHRpQXJyYXlJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvSW50OE11bHRpQXJyYXlJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvSW50OE11bHRpQXJyYXlJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTczZTdhNwotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9JbnQ4TXVsdGlBcnJheUltcGwuamF2YQpAQCAtMCwwICsxLDIyOCBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IGphdmEudXRpbC5Db2xsZWN0aW9uOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbkNoYWluOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLkVEYXRhVHlwZVVuaXF1ZUVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkludDhNdWx0aUFycmF5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLk11bHRpQXJyYXlMYXlvdXQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5JbnQ4IE11bHRpIEFycmF5PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLkludDhNdWx0aUFycmF5SW1wbCNnZXRMYXlvdXQgPGVtPkxheW91dDwvZW0+fTwvbGk+CisgKiAgIDxsaT57QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbC5JbnQ4TXVsdGlBcnJheUltcGwjZ2V0RGF0YSA8ZW0+RGF0YTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIEludDhNdWx0aUFycmF5SW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBJbnQ4TXVsdGlBcnJheSB7CisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TGF5b3V0KCkgPGVtPkxheW91dDwvZW0+fScgY29udGFpbm1lbnQgcmVmZXJlbmNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0TGF5b3V0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgTXVsdGlBcnJheUxheW91dCBsYXlvdXQ7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXREYXRhKCkgPGVtPkRhdGE8L2VtPn0nIGF0dHJpYnV0ZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0RGF0YSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIEVMaXN0PE9iamVjdD4gZGF0YTsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBJbnQ4TXVsdGlBcnJheUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBTdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5JTlQ4X01VTFRJX0FSUkFZOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBNdWx0aUFycmF5TGF5b3V0IGdldExheW91dCgpIHsKKwkJcmV0dXJuIGxheW91dDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRMYXlvdXQoTXVsdGlBcnJheUxheW91dCBuZXdMYXlvdXQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJTXVsdGlBcnJheUxheW91dCBvbGRMYXlvdXQgPSBsYXlvdXQ7CisJCWxheW91dCA9IG5ld0xheW91dDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UOF9NVUxUSV9BUlJBWV9fTEFZT1VULCBvbGRMYXlvdXQsIG5ld0xheW91dCk7CisJCQlpZiAobXNncyA9PSBudWxsKSBtc2dzID0gbm90aWZpY2F0aW9uOyBlbHNlIG1zZ3MuYWRkKG5vdGlmaWNhdGlvbik7CisJCX0KKwkJcmV0dXJuIG1zZ3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgc2V0TGF5b3V0KE11bHRpQXJyYXlMYXlvdXQgbmV3TGF5b3V0KSB7CisJCWlmIChuZXdMYXlvdXQgIT0gbGF5b3V0KSB7CisJCQlOb3RpZmljYXRpb25DaGFpbiBtc2dzID0gbnVsbDsKKwkJCWlmIChsYXlvdXQgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbGF5b3V0KS5lSW52ZXJzZVJlbW92ZSh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UOF9NVUxUSV9BUlJBWV9fTEFZT1VULCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdMYXlvdXQgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3TGF5b3V0KS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UOF9NVUxUSV9BUlJBWV9fTEFZT1VULCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldExheW91dChuZXdMYXlvdXQsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UOF9NVUxUSV9BUlJBWV9fTEFZT1VULCBuZXdMYXlvdXQsIG5ld0xheW91dCkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFTGlzdDxPYmplY3Q+IGdldERhdGEoKSB7CisJCWlmIChkYXRhID09IG51bGwpIHsKKwkJCWRhdGEgPSBuZXcgRURhdGFUeXBlVW5pcXVlRUxpc3Q8T2JqZWN0PihPYmplY3QuY2xhc3MsIHRoaXMsIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDhfTVVMVElfQVJSQVlfX0RBVEEpOworCQl9CisJCXJldHVybiBkYXRhOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBlSW52ZXJzZVJlbW92ZShJbnRlcm5hbEVPYmplY3Qgb3RoZXJFbmQsIGludCBmZWF0dXJlSUQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UOF9NVUxUSV9BUlJBWV9fTEFZT1VUOgorCQkJCXJldHVybiBiYXNpY1NldExheW91dChudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQ4X01VTFRJX0FSUkFZX19MQVlPVVQ6CisJCQkJcmV0dXJuIGdldExheW91dCgpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQ4X01VTFRJX0FSUkFZX19EQVRBOgorCQkJCXJldHVybiBnZXREYXRhKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQFN1cHByZXNzV2FybmluZ3MoInVuY2hlY2tlZCIpCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UOF9NVUxUSV9BUlJBWV9fTEFZT1VUOgorCQkJCXNldExheW91dCgoTXVsdGlBcnJheUxheW91dCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQ4X01VTFRJX0FSUkFZX19EQVRBOgorCQkJCWdldERhdGEoKS5jbGVhcigpOworCQkJCWdldERhdGEoKS5hZGRBbGwoKENvbGxlY3Rpb248PyBleHRlbmRzIE9iamVjdD4pbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDhfTVVMVElfQVJSQVlfX0xBWU9VVDoKKwkJCQlzZXRMYXlvdXQoKE11bHRpQXJyYXlMYXlvdXQpbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQ4X01VTFRJX0FSUkFZX19EQVRBOgorCQkJCWdldERhdGEoKS5jbGVhcigpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQ4X01VTFRJX0FSUkFZX19MQVlPVVQ6CisJCQkJcmV0dXJuIGxheW91dCAhPSBudWxsOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQ4X01VTFRJX0FSUkFZX19EQVRBOgorCQkJCXJldHVybiBkYXRhICE9IG51bGwgJiYgIWRhdGEuaXNFbXB0eSgpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAoZGF0YTogIik7CisJCXJlc3VsdC5hcHBlbmQoZGF0YSk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBJbnQ4TXVsdGlBcnJheUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9NdWx0aUFycmF5RGltZW5zaW9uSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL011bHRpQXJyYXlEaW1lbnNpb25JbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTM3YjRjOAotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9NdWx0aUFycmF5RGltZW5zaW9uSW1wbC5qYXZhCkBAIC0wLDAgKzEsMjY4IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLk11bHRpQXJyYXlEaW1lbnNpb247CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5NdWx0aSBBcnJheSBEaW1lbnNpb248L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuTXVsdGlBcnJheURpbWVuc2lvbkltcGwjZ2V0TGFiZWwgPGVtPkxhYmVsPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLk11bHRpQXJyYXlEaW1lbnNpb25JbXBsI2dldFNpemUgPGVtPlNpemU8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuTXVsdGlBcnJheURpbWVuc2lvbkltcGwjZ2V0U3RyaWRlIDxlbT5TdHJpZGU8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBNdWx0aUFycmF5RGltZW5zaW9uSW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBNdWx0aUFycmF5RGltZW5zaW9uIHsKKwkvKioKKwkgKiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0TGFiZWwoKSA8ZW0+TGFiZWw8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExhYmVsKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgc3RhdGljIGZpbmFsIE9iamVjdCBMQUJFTF9FREVGQVVMVCA9IG51bGw7CisKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRMYWJlbCgpIDxlbT5MYWJlbDwvZW0+fScgYXR0cmlidXRlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0TGFiZWwoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBPYmplY3QgbGFiZWwgPSBMQUJFTF9FREVGQVVMVDsKKworCS8qKgorCSAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRTaXplKCkgPGVtPlNpemU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFNpemUoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgZmluYWwgT2JqZWN0IFNJWkVfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0U2l6ZSgpIDxlbT5TaXplPC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRTaXplKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IHNpemUgPSBTSVpFX0VERUZBVUxUOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFN0cmlkZSgpIDxlbT5TdHJpZGU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFN0cmlkZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgU1RSSURFX0VERUZBVUxUID0gbnVsbDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldFN0cmlkZSgpIDxlbT5TdHJpZGU8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldFN0cmlkZSgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE9iamVjdCBzdHJpZGUgPSBTVFJJREVfRURFRkFVTFQ7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgTXVsdGlBcnJheURpbWVuc2lvbkltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBTdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5NVUxUSV9BUlJBWV9ESU1FTlNJT047CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRMYWJlbCgpIHsKKwkJcmV0dXJuIGxhYmVsOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldExhYmVsKE9iamVjdCBuZXdMYWJlbCkgeworCQlPYmplY3Qgb2xkTGFiZWwgPSBsYWJlbDsKKwkJbGFiZWwgPSBuZXdMYWJlbDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU3RkX2RhdGF0eXBlc1BhY2thZ2UuTVVMVElfQVJSQVlfRElNRU5TSU9OX19MQUJFTCwgb2xkTGFiZWwsIGxhYmVsKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXRTaXplKCkgeworCQlyZXR1cm4gc2l6ZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRTaXplKE9iamVjdCBuZXdTaXplKSB7CisJCU9iamVjdCBvbGRTaXplID0gc2l6ZTsKKwkJc2l6ZSA9IG5ld1NpemU7CisJCWlmIChlTm90aWZpY2F0aW9uUmVxdWlyZWQoKSkKKwkJCWVOb3RpZnkobmV3IEVOb3RpZmljYXRpb25JbXBsKHRoaXMsIE5vdGlmaWNhdGlvbi5TRVQsIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLk1VTFRJX0FSUkFZX0RJTUVOU0lPTl9fU0laRSwgb2xkU2l6ZSwgc2l6ZSkpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgZ2V0U3RyaWRlKCkgeworCQlyZXR1cm4gc3RyaWRlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldFN0cmlkZShPYmplY3QgbmV3U3RyaWRlKSB7CisJCU9iamVjdCBvbGRTdHJpZGUgPSBzdHJpZGU7CisJCXN0cmlkZSA9IG5ld1N0cmlkZTsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU3RkX2RhdGF0eXBlc1BhY2thZ2UuTVVMVElfQVJSQVlfRElNRU5TSU9OX19TVFJJREUsIG9sZFN0cmlkZSwgc3RyaWRlKSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5NVUxUSV9BUlJBWV9ESU1FTlNJT05fX0xBQkVMOgorCQkJCXJldHVybiBnZXRMYWJlbCgpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5NVUxUSV9BUlJBWV9ESU1FTlNJT05fX1NJWkU6CisJCQkJcmV0dXJuIGdldFNpemUoKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuTVVMVElfQVJSQVlfRElNRU5TSU9OX19TVFJJREU6CisJCQkJcmV0dXJuIGdldFN0cmlkZSgpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLk1VTFRJX0FSUkFZX0RJTUVOU0lPTl9fTEFCRUw6CisJCQkJc2V0TGFiZWwoKE9iamVjdCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5NVUxUSV9BUlJBWV9ESU1FTlNJT05fX1NJWkU6CisJCQkJc2V0U2l6ZSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLk1VTFRJX0FSUkFZX0RJTUVOU0lPTl9fU1RSSURFOgorCQkJCXNldFN0cmlkZSgoT2JqZWN0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5NVUxUSV9BUlJBWV9ESU1FTlNJT05fX0xBQkVMOgorCQkJCXNldExhYmVsKExBQkVMX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLk1VTFRJX0FSUkFZX0RJTUVOU0lPTl9fU0laRToKKwkJCQlzZXRTaXplKFNJWkVfRURFRkFVTFQpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuTVVMVElfQVJSQVlfRElNRU5TSU9OX19TVFJJREU6CisJCQkJc2V0U3RyaWRlKFNUUklERV9FREVGQVVMVCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLk1VTFRJX0FSUkFZX0RJTUVOU0lPTl9fTEFCRUw6CisJCQkJcmV0dXJuIExBQkVMX0VERUZBVUxUID09IG51bGwgPyBsYWJlbCAhPSBudWxsIDogIUxBQkVMX0VERUZBVUxULmVxdWFscyhsYWJlbCk7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLk1VTFRJX0FSUkFZX0RJTUVOU0lPTl9fU0laRToKKwkJCQlyZXR1cm4gU0laRV9FREVGQVVMVCA9PSBudWxsID8gc2l6ZSAhPSBudWxsIDogIVNJWkVfRURFRkFVTFQuZXF1YWxzKHNpemUpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5NVUxUSV9BUlJBWV9ESU1FTlNJT05fX1NUUklERToKKwkJCQlyZXR1cm4gU1RSSURFX0VERUZBVUxUID09IG51bGwgPyBzdHJpZGUgIT0gbnVsbCA6ICFTVFJJREVfRURFRkFVTFQuZXF1YWxzKHN0cmlkZSk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CisJCWlmIChlSXNQcm94eSgpKSByZXR1cm4gc3VwZXIudG9TdHJpbmcoKTsKKworCQlTdHJpbmdCdWZmZXIgcmVzdWx0ID0gbmV3IFN0cmluZ0J1ZmZlcihzdXBlci50b1N0cmluZygpKTsKKwkJcmVzdWx0LmFwcGVuZCgiIChsYWJlbDogIik7CisJCXJlc3VsdC5hcHBlbmQobGFiZWwpOworCQlyZXN1bHQuYXBwZW5kKCIsIHNpemU6ICIpOworCQlyZXN1bHQuYXBwZW5kKHNpemUpOworCQlyZXN1bHQuYXBwZW5kKCIsIHN0cmlkZTogIik7CisJCXJlc3VsdC5hcHBlbmQoc3RyaWRlKTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIE11bHRpQXJyYXlEaW1lbnNpb25JbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvTXVsdGlBcnJheUxheW91dEltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9NdWx0aUFycmF5TGF5b3V0SW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ2ZmFjNDUKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvTXVsdGlBcnJheUxheW91dEltcGwuamF2YQpAQCAtMCwwICsxLDIxNyBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IGphdmEudXRpbC5Db2xsZWN0aW9uOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuTm90aWZpY2F0aW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbkNoYWluOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5JbnRlcm5hbEVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRU5vdGlmaWNhdGlvbkltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuTWluaW1hbEVPYmplY3RJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLkVPYmplY3RDb250YWlubWVudEVMaXN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLkludGVybmFsRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuTXVsdGlBcnJheURpbWVuc2lvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5NdWx0aUFycmF5TGF5b3V0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+TXVsdGkgQXJyYXkgTGF5b3V0PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLk11bHRpQXJyYXlMYXlvdXRJbXBsI2dldERpbSA8ZW0+RGltPC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLk11bHRpQXJyYXlMYXlvdXRJbXBsI2dldERhdGFfb2Zmc2V0IDxlbT5EYXRhIG9mZnNldDwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIE11bHRpQXJyYXlMYXlvdXRJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIE11bHRpQXJyYXlMYXlvdXQgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldERpbSgpIDxlbT5EaW08L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZSBsaXN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHNlZSAjZ2V0RGltKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRUxpc3Q8TXVsdGlBcnJheURpbWVuc2lvbj4gZGltOworCisJLyoqCisJICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldERhdGFfb2Zmc2V0KCkgPGVtPkRhdGEgb2Zmc2V0PC9lbT59JyBhdHRyaWJ1dGUuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXREYXRhX29mZnNldCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIHN0YXRpYyBmaW5hbCBPYmplY3QgREFUQV9PRkZTRVRfRURFRkFVTFQgPSBudWxsOworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0RGF0YV9vZmZzZXQoKSA8ZW0+RGF0YSBvZmZzZXQ8L2VtPn0nIGF0dHJpYnV0ZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldERhdGFfb2Zmc2V0KCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgT2JqZWN0IGRhdGFfb2Zmc2V0ID0gREFUQV9PRkZTRVRfRURFRkFVTFQ7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgTXVsdGlBcnJheUxheW91dEltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBTdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5NVUxUSV9BUlJBWV9MQVlPVVQ7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVMaXN0PE11bHRpQXJyYXlEaW1lbnNpb24+IGdldERpbSgpIHsKKwkJaWYgKGRpbSA9PSBudWxsKSB7CisJCQlkaW0gPSBuZXcgRU9iamVjdENvbnRhaW5tZW50RUxpc3Q8TXVsdGlBcnJheURpbWVuc2lvbj4oTXVsdGlBcnJheURpbWVuc2lvbi5jbGFzcywgdGhpcywgU3RkX2RhdGF0eXBlc1BhY2thZ2UuTVVMVElfQVJSQVlfTEFZT1VUX19ESU0pOworCQl9CisJCXJldHVybiBkaW07CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBnZXREYXRhX29mZnNldCgpIHsKKwkJcmV0dXJuIGRhdGFfb2Zmc2V0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldERhdGFfb2Zmc2V0KE9iamVjdCBuZXdEYXRhX29mZnNldCkgeworCQlPYmplY3Qgb2xkRGF0YV9vZmZzZXQgPSBkYXRhX29mZnNldDsKKwkJZGF0YV9vZmZzZXQgPSBuZXdEYXRhX29mZnNldDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU3RkX2RhdGF0eXBlc1BhY2thZ2UuTVVMVElfQVJSQVlfTEFZT1VUX19EQVRBX09GRlNFVCwgb2xkRGF0YV9vZmZzZXQsIGRhdGFfb2Zmc2V0KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGVJbnZlcnNlUmVtb3ZlKEludGVybmFsRU9iamVjdCBvdGhlckVuZCwgaW50IGZlYXR1cmVJRCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5NVUxUSV9BUlJBWV9MQVlPVVRfX0RJTToKKwkJCQlyZXR1cm4gKChJbnRlcm5hbEVMaXN0PD8+KWdldERpbSgpKS5iYXNpY1JlbW92ZShvdGhlckVuZCwgbXNncyk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJbnZlcnNlUmVtb3ZlKG90aGVyRW5kLCBmZWF0dXJlSUQsIG1zZ3MpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgZUdldChpbnQgZmVhdHVyZUlELCBib29sZWFuIHJlc29sdmUsIGJvb2xlYW4gY29yZVR5cGUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuTVVMVElfQVJSQVlfTEFZT1VUX19ESU06CisJCQkJcmV0dXJuIGdldERpbSgpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5NVUxUSV9BUlJBWV9MQVlPVVRfX0RBVEFfT0ZGU0VUOgorCQkJCXJldHVybiBnZXREYXRhX29mZnNldCgpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBTdXBwcmVzc1dhcm5pbmdzKCJ1bmNoZWNrZWQiKQorCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLk1VTFRJX0FSUkFZX0xBWU9VVF9fRElNOgorCQkJCWdldERpbSgpLmNsZWFyKCk7CisJCQkJZ2V0RGltKCkuYWRkQWxsKChDb2xsZWN0aW9uPD8gZXh0ZW5kcyBNdWx0aUFycmF5RGltZW5zaW9uPiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5NVUxUSV9BUlJBWV9MQVlPVVRfX0RBVEFfT0ZGU0VUOgorCQkJCXNldERhdGFfb2Zmc2V0KChPYmplY3QpbmV3VmFsdWUpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lU2V0KGZlYXR1cmVJRCwgbmV3VmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVVbnNldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLk1VTFRJX0FSUkFZX0xBWU9VVF9fRElNOgorCQkJCWdldERpbSgpLmNsZWFyKCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5NVUxUSV9BUlJBWV9MQVlPVVRfX0RBVEFfT0ZGU0VUOgorCQkJCXNldERhdGFfb2Zmc2V0KERBVEFfT0ZGU0VUX0VERUZBVUxUKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVVuc2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIGJvb2xlYW4gZUlzU2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuTVVMVElfQVJSQVlfTEFZT1VUX19ESU06CisJCQkJcmV0dXJuIGRpbSAhPSBudWxsICYmICFkaW0uaXNFbXB0eSgpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5NVUxUSV9BUlJBWV9MQVlPVVRfX0RBVEFfT0ZGU0VUOgorCQkJCXJldHVybiBEQVRBX09GRlNFVF9FREVGQVVMVCA9PSBudWxsID8gZGF0YV9vZmZzZXQgIT0gbnVsbCA6ICFEQVRBX09GRlNFVF9FREVGQVVMVC5lcXVhbHMoZGF0YV9vZmZzZXQpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAoZGF0YV9vZmZzZXQ6ICIpOworCQlyZXN1bHQuYXBwZW5kKGRhdGFfb2Zmc2V0KTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIE11bHRpQXJyYXlMYXlvdXRJbXBsCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjZmMTYzZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9TdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwuamF2YQpAQCAtMCwwICsxLDYyNSBAQAorLyoqCisgKi8KK3BhY2thZ2Ugb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuaW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVEYXRhVHlwZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRVBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLmltcGwuRUZhY3RvcnlJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5wbHVnaW4uRWNvcmVQbHVnaW47CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuKjsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIDxiPkZhY3Rvcnk8L2I+LgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBTdGRfZGF0YXR5cGVzRmFjdG9yeUltcGwgZXh0ZW5kcyBFRmFjdG9yeUltcGwgaW1wbGVtZW50cyBTdGRfZGF0YXR5cGVzRmFjdG9yeSB7CisJLyoqCisJICogQ3JlYXRlcyB0aGUgZGVmYXVsdCBmYWN0b3J5IGltcGxlbWVudGF0aW9uLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgU3RkX2RhdGF0eXBlc0ZhY3RvcnkgaW5pdCgpIHsKKwkJdHJ5IHsKKwkJCVN0ZF9kYXRhdHlwZXNGYWN0b3J5IHRoZVN0ZF9kYXRhdHlwZXNGYWN0b3J5ID0gKFN0ZF9kYXRhdHlwZXNGYWN0b3J5KUVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVGYWN0b3J5KFN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpOworCQkJaWYgKHRoZVN0ZF9kYXRhdHlwZXNGYWN0b3J5ICE9IG51bGwpIHsKKwkJCQlyZXR1cm4gdGhlU3RkX2RhdGF0eXBlc0ZhY3Rvcnk7CisJCQl9CisJCX0KKwkJY2F0Y2ggKEV4Y2VwdGlvbiBleGNlcHRpb24pIHsKKwkJCUVjb3JlUGx1Z2luLklOU1RBTkNFLmxvZyhleGNlcHRpb24pOworCQl9CisJCXJldHVybiBuZXcgU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsKCk7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgZmFjdG9yeS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3RkX2RhdGF0eXBlc0ZhY3RvcnlJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBFT2JqZWN0IGNyZWF0ZShFQ2xhc3MgZUNsYXNzKSB7CisJCXN3aXRjaCAoZUNsYXNzLmdldENsYXNzaWZpZXJJRCgpKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkhFQURFUjogcmV0dXJuIGNyZWF0ZUhlYWRlcigpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5NVUxUSV9BUlJBWV9ESU1FTlNJT046IHJldHVybiBjcmVhdGVNdWx0aUFycmF5RGltZW5zaW9uKCk7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLk1VTFRJX0FSUkFZX0xBWU9VVDogcmV0dXJuIGNyZWF0ZU11bHRpQXJyYXlMYXlvdXQoKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuQllURV9NVUxUSV9BUlJBWTogcmV0dXJuIGNyZWF0ZUJ5dGVNdWx0aUFycmF5KCk7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkNPTE9SX1JHQkE6IHJldHVybiBjcmVhdGVDb2xvclJHQkEoKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuRkxPQVQzMl9NVUxUSV9BUlJBWTogcmV0dXJuIGNyZWF0ZUZsb2F0MzJNdWx0aUFycmF5KCk7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDMyX01VTFRJX0FSUkFZOiByZXR1cm4gY3JlYXRlSW50MzJNdWx0aUFycmF5KCk7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDhfTVVMVElfQVJSQVk6IHJldHVybiBjcmVhdGVJbnQ4TXVsdGlBcnJheSgpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQxNl9NVUxUSV9BUlJBWTogcmV0dXJuIGNyZWF0ZUludDE2TXVsdGlBcnJheSgpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQ2NF9NVUxUSV9BUlJBWTogcmV0dXJuIGNyZWF0ZUludDY0TXVsdGlBcnJheSgpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5GTE9BVDY0X01VTFRJX0FSUkFZOiByZXR1cm4gY3JlYXRlRmxvYXQ2NE11bHRpQXJyYXkoKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDY0X01VTFRJX0FSUkFZOiByZXR1cm4gY3JlYXRlVUludDY0TXVsdGlBcnJheSgpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UMTZfTVVMVElfQVJSQVk6IHJldHVybiBjcmVhdGVVSW50MTZNdWx0aUFycmF5KCk7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJTlQzMl9NVUxUSV9BUlJBWTogcmV0dXJuIGNyZWF0ZVVJbnQzMk11bHRpQXJyYXkoKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDhfTVVMVElfQVJSQVk6IHJldHVybiBjcmVhdGVVSW50OE11bHRpQXJyYXkoKTsKKwkJCWRlZmF1bHQ6CisJCQkJdGhyb3cgbmV3IElsbGVnYWxBcmd1bWVudEV4Y2VwdGlvbigiVGhlIGNsYXNzICciICsgZUNsYXNzLmdldE5hbWUoKSArICInIGlzIG5vdCBhIHZhbGlkIGNsYXNzaWZpZXIiKTsKKwkJfQorCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBPYmplY3QgY3JlYXRlRnJvbVN0cmluZyhFRGF0YVR5cGUgZURhdGFUeXBlLCBTdHJpbmcgaW5pdGlhbFZhbHVlKSB7CisJCXN3aXRjaCAoZURhdGFUeXBlLmdldENsYXNzaWZpZXJJRCgpKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJTlQzMjoKKwkJCQlyZXR1cm4gY3JlYXRlVUludDMyRnJvbVN0cmluZyhlRGF0YVR5cGUsIGluaXRpYWxWYWx1ZSk7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLlRJTUU6CisJCQkJcmV0dXJuIGNyZWF0ZVRpbWVGcm9tU3RyaW5nKGVEYXRhVHlwZSwgaW5pdGlhbFZhbHVlKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuU1RSSU5HOgorCQkJCXJldHVybiBjcmVhdGVTdHJpbmdGcm9tU3RyaW5nKGVEYXRhVHlwZSwgaW5pdGlhbFZhbHVlKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuQllURToKKwkJCQlyZXR1cm4gY3JlYXRlQnl0ZUZyb21TdHJpbmcoZURhdGFUeXBlLCBpbml0aWFsVmFsdWUpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5GTE9BVDY0OgorCQkJCXJldHVybiBjcmVhdGVGbG9hdDY0RnJvbVN0cmluZyhlRGF0YVR5cGUsIGluaXRpYWxWYWx1ZSk7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDg6CisJCQkJcmV0dXJuIGNyZWF0ZUludDhGcm9tU3RyaW5nKGVEYXRhVHlwZSwgaW5pdGlhbFZhbHVlKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuQk9PTDoKKwkJCQlyZXR1cm4gY3JlYXRlQm9vbEZyb21TdHJpbmcoZURhdGFUeXBlLCBpbml0aWFsVmFsdWUpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UODoKKwkJCQlyZXR1cm4gY3JlYXRlVUludDhGcm9tU3RyaW5nKGVEYXRhVHlwZSwgaW5pdGlhbFZhbHVlKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDE2OgorCQkJCXJldHVybiBjcmVhdGVVSW50MTZGcm9tU3RyaW5nKGVEYXRhVHlwZSwgaW5pdGlhbFZhbHVlKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UMzI6CisJCQkJcmV0dXJuIGNyZWF0ZUludDMyRnJvbVN0cmluZyhlRGF0YVR5cGUsIGluaXRpYWxWYWx1ZSk7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDE2OgorCQkJCXJldHVybiBjcmVhdGVJbnQxNkZyb21TdHJpbmcoZURhdGFUeXBlLCBpbml0aWFsVmFsdWUpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5DSEFSOgorCQkJCXJldHVybiBjcmVhdGVDaGFyRnJvbVN0cmluZyhlRGF0YVR5cGUsIGluaXRpYWxWYWx1ZSk7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkRVUkFUSU9OOgorCQkJCXJldHVybiBjcmVhdGVEdXJhdGlvbkZyb21TdHJpbmcoZURhdGFUeXBlLCBpbml0aWFsVmFsdWUpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQ2NDoKKwkJCQlyZXR1cm4gY3JlYXRlSW50NjRGcm9tU3RyaW5nKGVEYXRhVHlwZSwgaW5pdGlhbFZhbHVlKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDY0OgorCQkJCXJldHVybiBjcmVhdGVVSW50NjRGcm9tU3RyaW5nKGVEYXRhVHlwZSwgaW5pdGlhbFZhbHVlKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuRkxPQVQzMjoKKwkJCQlyZXR1cm4gY3JlYXRlRmxvYXQzMkZyb21TdHJpbmcoZURhdGFUeXBlLCBpbml0aWFsVmFsdWUpOworCQkJZGVmYXVsdDoKKwkJCQl0aHJvdyBuZXcgSWxsZWdhbEFyZ3VtZW50RXhjZXB0aW9uKCJUaGUgZGF0YXR5cGUgJyIgKyBlRGF0YVR5cGUuZ2V0TmFtZSgpICsgIicgaXMgbm90IGEgdmFsaWQgY2xhc3NpZmllciIpOworCQl9CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyBjb252ZXJ0VG9TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgT2JqZWN0IGluc3RhbmNlVmFsdWUpIHsKKwkJc3dpdGNoIChlRGF0YVR5cGUuZ2V0Q2xhc3NpZmllcklEKCkpIHsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDMyOgorCQkJCXJldHVybiBjb252ZXJ0VUludDMyVG9TdHJpbmcoZURhdGFUeXBlLCBpbnN0YW5jZVZhbHVlKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVElNRToKKwkJCQlyZXR1cm4gY29udmVydFRpbWVUb1N0cmluZyhlRGF0YVR5cGUsIGluc3RhbmNlVmFsdWUpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5TVFJJTkc6CisJCQkJcmV0dXJuIGNvbnZlcnRTdHJpbmdUb1N0cmluZyhlRGF0YVR5cGUsIGluc3RhbmNlVmFsdWUpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5CWVRFOgorCQkJCXJldHVybiBjb252ZXJ0Qnl0ZVRvU3RyaW5nKGVEYXRhVHlwZSwgaW5zdGFuY2VWYWx1ZSk7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkZMT0FUNjQ6CisJCQkJcmV0dXJuIGNvbnZlcnRGbG9hdDY0VG9TdHJpbmcoZURhdGFUeXBlLCBpbnN0YW5jZVZhbHVlKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UODoKKwkJCQlyZXR1cm4gY29udmVydEludDhUb1N0cmluZyhlRGF0YVR5cGUsIGluc3RhbmNlVmFsdWUpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5CT09MOgorCQkJCXJldHVybiBjb252ZXJ0Qm9vbFRvU3RyaW5nKGVEYXRhVHlwZSwgaW5zdGFuY2VWYWx1ZSk7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJTlQ4OgorCQkJCXJldHVybiBjb252ZXJ0VUludDhUb1N0cmluZyhlRGF0YVR5cGUsIGluc3RhbmNlVmFsdWUpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UMTY6CisJCQkJcmV0dXJuIGNvbnZlcnRVSW50MTZUb1N0cmluZyhlRGF0YVR5cGUsIGluc3RhbmNlVmFsdWUpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5JTlQzMjoKKwkJCQlyZXR1cm4gY29udmVydEludDMyVG9TdHJpbmcoZURhdGFUeXBlLCBpbnN0YW5jZVZhbHVlKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UMTY6CisJCQkJcmV0dXJuIGNvbnZlcnRJbnQxNlRvU3RyaW5nKGVEYXRhVHlwZSwgaW5zdGFuY2VWYWx1ZSk7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkNIQVI6CisJCQkJcmV0dXJuIGNvbnZlcnRDaGFyVG9TdHJpbmcoZURhdGFUeXBlLCBpbnN0YW5jZVZhbHVlKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuRFVSQVRJT046CisJCQkJcmV0dXJuIGNvbnZlcnREdXJhdGlvblRvU3RyaW5nKGVEYXRhVHlwZSwgaW5zdGFuY2VWYWx1ZSk7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLklOVDY0OgorCQkJCXJldHVybiBjb252ZXJ0SW50NjRUb1N0cmluZyhlRGF0YVR5cGUsIGluc3RhbmNlVmFsdWUpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UNjQ6CisJCQkJcmV0dXJuIGNvbnZlcnRVSW50NjRUb1N0cmluZyhlRGF0YVR5cGUsIGluc3RhbmNlVmFsdWUpOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5GTE9BVDMyOgorCQkJCXJldHVybiBjb252ZXJ0RmxvYXQzMlRvU3RyaW5nKGVEYXRhVHlwZSwgaW5zdGFuY2VWYWx1ZSk7CisJCQlkZWZhdWx0OgorCQkJCXRocm93IG5ldyBJbGxlZ2FsQXJndW1lbnRFeGNlcHRpb24oIlRoZSBkYXRhdHlwZSAnIiArIGVEYXRhVHlwZS5nZXROYW1lKCkgKyAiJyBpcyBub3QgYSB2YWxpZCBjbGFzc2lmaWVyIik7CisJCX0KKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgSGVhZGVyIGNyZWF0ZUhlYWRlcigpIHsKKwkJSGVhZGVySW1wbCBoZWFkZXIgPSBuZXcgSGVhZGVySW1wbCgpOworCQlyZXR1cm4gaGVhZGVyOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBNdWx0aUFycmF5RGltZW5zaW9uIGNyZWF0ZU11bHRpQXJyYXlEaW1lbnNpb24oKSB7CisJCU11bHRpQXJyYXlEaW1lbnNpb25JbXBsIG11bHRpQXJyYXlEaW1lbnNpb24gPSBuZXcgTXVsdGlBcnJheURpbWVuc2lvbkltcGwoKTsKKwkJcmV0dXJuIG11bHRpQXJyYXlEaW1lbnNpb247CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE11bHRpQXJyYXlMYXlvdXQgY3JlYXRlTXVsdGlBcnJheUxheW91dCgpIHsKKwkJTXVsdGlBcnJheUxheW91dEltcGwgbXVsdGlBcnJheUxheW91dCA9IG5ldyBNdWx0aUFycmF5TGF5b3V0SW1wbCgpOworCQlyZXR1cm4gbXVsdGlBcnJheUxheW91dDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQnl0ZU11bHRpQXJyYXkgY3JlYXRlQnl0ZU11bHRpQXJyYXkoKSB7CisJCUJ5dGVNdWx0aUFycmF5SW1wbCBieXRlTXVsdGlBcnJheSA9IG5ldyBCeXRlTXVsdGlBcnJheUltcGwoKTsKKwkJcmV0dXJuIGJ5dGVNdWx0aUFycmF5OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBDb2xvclJHQkEgY3JlYXRlQ29sb3JSR0JBKCkgeworCQlDb2xvclJHQkFJbXBsIGNvbG9yUkdCQSA9IG5ldyBDb2xvclJHQkFJbXBsKCk7CisJCXJldHVybiBjb2xvclJHQkE7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEZsb2F0MzJNdWx0aUFycmF5IGNyZWF0ZUZsb2F0MzJNdWx0aUFycmF5KCkgeworCQlGbG9hdDMyTXVsdGlBcnJheUltcGwgZmxvYXQzMk11bHRpQXJyYXkgPSBuZXcgRmxvYXQzMk11bHRpQXJyYXlJbXBsKCk7CisJCXJldHVybiBmbG9hdDMyTXVsdGlBcnJheTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgSW50MzJNdWx0aUFycmF5IGNyZWF0ZUludDMyTXVsdGlBcnJheSgpIHsKKwkJSW50MzJNdWx0aUFycmF5SW1wbCBpbnQzMk11bHRpQXJyYXkgPSBuZXcgSW50MzJNdWx0aUFycmF5SW1wbCgpOworCQlyZXR1cm4gaW50MzJNdWx0aUFycmF5OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBJbnQ4TXVsdGlBcnJheSBjcmVhdGVJbnQ4TXVsdGlBcnJheSgpIHsKKwkJSW50OE11bHRpQXJyYXlJbXBsIGludDhNdWx0aUFycmF5ID0gbmV3IEludDhNdWx0aUFycmF5SW1wbCgpOworCQlyZXR1cm4gaW50OE11bHRpQXJyYXk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEludDE2TXVsdGlBcnJheSBjcmVhdGVJbnQxNk11bHRpQXJyYXkoKSB7CisJCUludDE2TXVsdGlBcnJheUltcGwgaW50MTZNdWx0aUFycmF5ID0gbmV3IEludDE2TXVsdGlBcnJheUltcGwoKTsKKwkJcmV0dXJuIGludDE2TXVsdGlBcnJheTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgSW50NjRNdWx0aUFycmF5IGNyZWF0ZUludDY0TXVsdGlBcnJheSgpIHsKKwkJSW50NjRNdWx0aUFycmF5SW1wbCBpbnQ2NE11bHRpQXJyYXkgPSBuZXcgSW50NjRNdWx0aUFycmF5SW1wbCgpOworCQlyZXR1cm4gaW50NjRNdWx0aUFycmF5OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBGbG9hdDY0TXVsdGlBcnJheSBjcmVhdGVGbG9hdDY0TXVsdGlBcnJheSgpIHsKKwkJRmxvYXQ2NE11bHRpQXJyYXlJbXBsIGZsb2F0NjRNdWx0aUFycmF5ID0gbmV3IEZsb2F0NjRNdWx0aUFycmF5SW1wbCgpOworCQlyZXR1cm4gZmxvYXQ2NE11bHRpQXJyYXk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFVJbnQ2NE11bHRpQXJyYXkgY3JlYXRlVUludDY0TXVsdGlBcnJheSgpIHsKKwkJVUludDY0TXVsdGlBcnJheUltcGwgdUludDY0TXVsdGlBcnJheSA9IG5ldyBVSW50NjRNdWx0aUFycmF5SW1wbCgpOworCQlyZXR1cm4gdUludDY0TXVsdGlBcnJheTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVUludDE2TXVsdGlBcnJheSBjcmVhdGVVSW50MTZNdWx0aUFycmF5KCkgeworCQlVSW50MTZNdWx0aUFycmF5SW1wbCB1SW50MTZNdWx0aUFycmF5ID0gbmV3IFVJbnQxNk11bHRpQXJyYXlJbXBsKCk7CisJCXJldHVybiB1SW50MTZNdWx0aUFycmF5OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBVSW50MzJNdWx0aUFycmF5IGNyZWF0ZVVJbnQzMk11bHRpQXJyYXkoKSB7CisJCVVJbnQzMk11bHRpQXJyYXlJbXBsIHVJbnQzMk11bHRpQXJyYXkgPSBuZXcgVUludDMyTXVsdGlBcnJheUltcGwoKTsKKwkJcmV0dXJuIHVJbnQzMk11bHRpQXJyYXk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFVJbnQ4TXVsdGlBcnJheSBjcmVhdGVVSW50OE11bHRpQXJyYXkoKSB7CisJCVVJbnQ4TXVsdGlBcnJheUltcGwgdUludDhNdWx0aUFycmF5ID0gbmV3IFVJbnQ4TXVsdGlBcnJheUltcGwoKTsKKwkJcmV0dXJuIHVJbnQ4TXVsdGlBcnJheTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGNyZWF0ZVVJbnQzMkZyb21TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgU3RyaW5nIGluaXRpYWxWYWx1ZSkgeworCQlyZXR1cm4gKE9iamVjdClzdXBlci5jcmVhdGVGcm9tU3RyaW5nKGVEYXRhVHlwZSwgaW5pdGlhbFZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3RyaW5nIGNvbnZlcnRVSW50MzJUb1N0cmluZyhFRGF0YVR5cGUgZURhdGFUeXBlLCBPYmplY3QgaW5zdGFuY2VWYWx1ZSkgeworCQlyZXR1cm4gc3VwZXIuY29udmVydFRvU3RyaW5nKGVEYXRhVHlwZSwgaW5zdGFuY2VWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBjcmVhdGVUaW1lRnJvbVN0cmluZyhFRGF0YVR5cGUgZURhdGFUeXBlLCBTdHJpbmcgaW5pdGlhbFZhbHVlKSB7CisJCXJldHVybiAoT2JqZWN0KXN1cGVyLmNyZWF0ZUZyb21TdHJpbmcoZURhdGFUeXBlLCBpbml0aWFsVmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTdHJpbmcgY29udmVydFRpbWVUb1N0cmluZyhFRGF0YVR5cGUgZURhdGFUeXBlLCBPYmplY3QgaW5zdGFuY2VWYWx1ZSkgeworCQlyZXR1cm4gc3VwZXIuY29udmVydFRvU3RyaW5nKGVEYXRhVHlwZSwgaW5zdGFuY2VWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBjcmVhdGVTdHJpbmdGcm9tU3RyaW5nKEVEYXRhVHlwZSBlRGF0YVR5cGUsIFN0cmluZyBpbml0aWFsVmFsdWUpIHsKKwkJcmV0dXJuIChPYmplY3Qpc3VwZXIuY3JlYXRlRnJvbVN0cmluZyhlRGF0YVR5cGUsIGluaXRpYWxWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0cmluZyBjb252ZXJ0U3RyaW5nVG9TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgT2JqZWN0IGluc3RhbmNlVmFsdWUpIHsKKwkJcmV0dXJuIHN1cGVyLmNvbnZlcnRUb1N0cmluZyhlRGF0YVR5cGUsIGluc3RhbmNlVmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgY3JlYXRlQnl0ZUZyb21TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgU3RyaW5nIGluaXRpYWxWYWx1ZSkgeworCQlyZXR1cm4gKE9iamVjdClzdXBlci5jcmVhdGVGcm9tU3RyaW5nKGVEYXRhVHlwZSwgaW5pdGlhbFZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3RyaW5nIGNvbnZlcnRCeXRlVG9TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgT2JqZWN0IGluc3RhbmNlVmFsdWUpIHsKKwkJcmV0dXJuIHN1cGVyLmNvbnZlcnRUb1N0cmluZyhlRGF0YVR5cGUsIGluc3RhbmNlVmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgY3JlYXRlRmxvYXQ2NEZyb21TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgU3RyaW5nIGluaXRpYWxWYWx1ZSkgeworCQlyZXR1cm4gKE9iamVjdClzdXBlci5jcmVhdGVGcm9tU3RyaW5nKGVEYXRhVHlwZSwgaW5pdGlhbFZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3RyaW5nIGNvbnZlcnRGbG9hdDY0VG9TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgT2JqZWN0IGluc3RhbmNlVmFsdWUpIHsKKwkJcmV0dXJuIHN1cGVyLmNvbnZlcnRUb1N0cmluZyhlRGF0YVR5cGUsIGluc3RhbmNlVmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgY3JlYXRlSW50OEZyb21TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgU3RyaW5nIGluaXRpYWxWYWx1ZSkgeworCQlyZXR1cm4gKE9iamVjdClzdXBlci5jcmVhdGVGcm9tU3RyaW5nKGVEYXRhVHlwZSwgaW5pdGlhbFZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3RyaW5nIGNvbnZlcnRJbnQ4VG9TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgT2JqZWN0IGluc3RhbmNlVmFsdWUpIHsKKwkJcmV0dXJuIHN1cGVyLmNvbnZlcnRUb1N0cmluZyhlRGF0YVR5cGUsIGluc3RhbmNlVmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgY3JlYXRlQm9vbEZyb21TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgU3RyaW5nIGluaXRpYWxWYWx1ZSkgeworCQlyZXR1cm4gKE9iamVjdClzdXBlci5jcmVhdGVGcm9tU3RyaW5nKGVEYXRhVHlwZSwgaW5pdGlhbFZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3RyaW5nIGNvbnZlcnRCb29sVG9TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgT2JqZWN0IGluc3RhbmNlVmFsdWUpIHsKKwkJcmV0dXJuIHN1cGVyLmNvbnZlcnRUb1N0cmluZyhlRGF0YVR5cGUsIGluc3RhbmNlVmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgY3JlYXRlVUludDhGcm9tU3RyaW5nKEVEYXRhVHlwZSBlRGF0YVR5cGUsIFN0cmluZyBpbml0aWFsVmFsdWUpIHsKKwkJcmV0dXJuIChPYmplY3Qpc3VwZXIuY3JlYXRlRnJvbVN0cmluZyhlRGF0YVR5cGUsIGluaXRpYWxWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0cmluZyBjb252ZXJ0VUludDhUb1N0cmluZyhFRGF0YVR5cGUgZURhdGFUeXBlLCBPYmplY3QgaW5zdGFuY2VWYWx1ZSkgeworCQlyZXR1cm4gc3VwZXIuY29udmVydFRvU3RyaW5nKGVEYXRhVHlwZSwgaW5zdGFuY2VWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBjcmVhdGVVSW50MTZGcm9tU3RyaW5nKEVEYXRhVHlwZSBlRGF0YVR5cGUsIFN0cmluZyBpbml0aWFsVmFsdWUpIHsKKwkJcmV0dXJuIChPYmplY3Qpc3VwZXIuY3JlYXRlRnJvbVN0cmluZyhlRGF0YVR5cGUsIGluaXRpYWxWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0cmluZyBjb252ZXJ0VUludDE2VG9TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgT2JqZWN0IGluc3RhbmNlVmFsdWUpIHsKKwkJcmV0dXJuIHN1cGVyLmNvbnZlcnRUb1N0cmluZyhlRGF0YVR5cGUsIGluc3RhbmNlVmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgY3JlYXRlSW50MzJGcm9tU3RyaW5nKEVEYXRhVHlwZSBlRGF0YVR5cGUsIFN0cmluZyBpbml0aWFsVmFsdWUpIHsKKwkJcmV0dXJuIChPYmplY3Qpc3VwZXIuY3JlYXRlRnJvbVN0cmluZyhlRGF0YVR5cGUsIGluaXRpYWxWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0cmluZyBjb252ZXJ0SW50MzJUb1N0cmluZyhFRGF0YVR5cGUgZURhdGFUeXBlLCBPYmplY3QgaW5zdGFuY2VWYWx1ZSkgeworCQlyZXR1cm4gc3VwZXIuY29udmVydFRvU3RyaW5nKGVEYXRhVHlwZSwgaW5zdGFuY2VWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBjcmVhdGVJbnQxNkZyb21TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgU3RyaW5nIGluaXRpYWxWYWx1ZSkgeworCQlyZXR1cm4gKE9iamVjdClzdXBlci5jcmVhdGVGcm9tU3RyaW5nKGVEYXRhVHlwZSwgaW5pdGlhbFZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3RyaW5nIGNvbnZlcnRJbnQxNlRvU3RyaW5nKEVEYXRhVHlwZSBlRGF0YVR5cGUsIE9iamVjdCBpbnN0YW5jZVZhbHVlKSB7CisJCXJldHVybiBzdXBlci5jb252ZXJ0VG9TdHJpbmcoZURhdGFUeXBlLCBpbnN0YW5jZVZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGNyZWF0ZUNoYXJGcm9tU3RyaW5nKEVEYXRhVHlwZSBlRGF0YVR5cGUsIFN0cmluZyBpbml0aWFsVmFsdWUpIHsKKwkJcmV0dXJuIChPYmplY3Qpc3VwZXIuY3JlYXRlRnJvbVN0cmluZyhlRGF0YVR5cGUsIGluaXRpYWxWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0cmluZyBjb252ZXJ0Q2hhclRvU3RyaW5nKEVEYXRhVHlwZSBlRGF0YVR5cGUsIE9iamVjdCBpbnN0YW5jZVZhbHVlKSB7CisJCXJldHVybiBzdXBlci5jb252ZXJ0VG9TdHJpbmcoZURhdGFUeXBlLCBpbnN0YW5jZVZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgT2JqZWN0IGNyZWF0ZUR1cmF0aW9uRnJvbVN0cmluZyhFRGF0YVR5cGUgZURhdGFUeXBlLCBTdHJpbmcgaW5pdGlhbFZhbHVlKSB7CisJCXJldHVybiAoT2JqZWN0KXN1cGVyLmNyZWF0ZUZyb21TdHJpbmcoZURhdGFUeXBlLCBpbml0aWFsVmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTdHJpbmcgY29udmVydER1cmF0aW9uVG9TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgT2JqZWN0IGluc3RhbmNlVmFsdWUpIHsKKwkJcmV0dXJuIHN1cGVyLmNvbnZlcnRUb1N0cmluZyhlRGF0YVR5cGUsIGluc3RhbmNlVmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgY3JlYXRlSW50NjRGcm9tU3RyaW5nKEVEYXRhVHlwZSBlRGF0YVR5cGUsIFN0cmluZyBpbml0aWFsVmFsdWUpIHsKKwkJcmV0dXJuIChPYmplY3Qpc3VwZXIuY3JlYXRlRnJvbVN0cmluZyhlRGF0YVR5cGUsIGluaXRpYWxWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0cmluZyBjb252ZXJ0SW50NjRUb1N0cmluZyhFRGF0YVR5cGUgZURhdGFUeXBlLCBPYmplY3QgaW5zdGFuY2VWYWx1ZSkgeworCQlyZXR1cm4gc3VwZXIuY29udmVydFRvU3RyaW5nKGVEYXRhVHlwZSwgaW5zdGFuY2VWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE9iamVjdCBjcmVhdGVVSW50NjRGcm9tU3RyaW5nKEVEYXRhVHlwZSBlRGF0YVR5cGUsIFN0cmluZyBpbml0aWFsVmFsdWUpIHsKKwkJcmV0dXJuIChPYmplY3Qpc3VwZXIuY3JlYXRlRnJvbVN0cmluZyhlRGF0YVR5cGUsIGluaXRpYWxWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFN0cmluZyBjb252ZXJ0VUludDY0VG9TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgT2JqZWN0IGluc3RhbmNlVmFsdWUpIHsKKwkJcmV0dXJuIHN1cGVyLmNvbnZlcnRUb1N0cmluZyhlRGF0YVR5cGUsIGluc3RhbmNlVmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBPYmplY3QgY3JlYXRlRmxvYXQzMkZyb21TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgU3RyaW5nIGluaXRpYWxWYWx1ZSkgeworCQlyZXR1cm4gKE9iamVjdClzdXBlci5jcmVhdGVGcm9tU3RyaW5nKGVEYXRhVHlwZSwgaW5pdGlhbFZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3RyaW5nIGNvbnZlcnRGbG9hdDMyVG9TdHJpbmcoRURhdGFUeXBlIGVEYXRhVHlwZSwgT2JqZWN0IGluc3RhbmNlVmFsdWUpIHsKKwkJcmV0dXJuIHN1cGVyLmNvbnZlcnRUb1N0cmluZyhlRGF0YVR5cGUsIGluc3RhbmNlVmFsdWUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTdGRfZGF0YXR5cGVzUGFja2FnZSBnZXRTdGRfZGF0YXR5cGVzUGFja2FnZSgpIHsKKwkJcmV0dXJuIChTdGRfZGF0YXR5cGVzUGFja2FnZSlnZXRFUGFja2FnZSgpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGRlcHJlY2F0ZWQKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQERlcHJlY2F0ZWQKKwlwdWJsaWMgc3RhdGljIFN0ZF9kYXRhdHlwZXNQYWNrYWdlIGdldFBhY2thZ2UoKSB7CisJCXJldHVybiBTdGRfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0U7CisJfQorCit9IC8vIFN0ZF9kYXRhdHlwZXNGYWN0b3J5SW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5qYXZhIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1N0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE1NDVjZmEKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsLmphdmEKQEAgLTAsMCArMSwxMTczIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsOworCitpbXBvcnQgamF2YS51dGlsLkRhdGU7CisKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUF0dHJpYnV0ZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRUNsYXNzOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FRGF0YVR5cGU7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUmVmZXJlbmNlOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVQYWNrYWdlSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUwuUm9ib3RNTFBhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MLmltcGwuUm9ib3RNTFBhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLkFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5hY3Rpb25saWJfZGF0YXR5cGVzLmltcGwuQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5kaWFnbm9zdGljX2RhdGF0eXBlcy5EaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmRpYWdub3N0aWNfZGF0YXR5cGVzLmltcGwuRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuZ2VvbWV0cnlfZGF0YXR5cGVzLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLmdlb21ldHJ5X2RhdGF0eXBlcy5pbXBsLkdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLk5hdl9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5uYXZfZGF0YXR5cGVzLmltcGwuTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDFfZGF0YXR5cGVzLk9hcnAxX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLm9hcnBzX2RhdGF0eXBlcy5vYXJwMV9kYXRhdHlwZXMuaW1wbC5PYXJwMV9kYXRhdHlwZXNQYWNrYWdlSW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMub2FycHNfZGF0YXR5cGVzLm9hcnA0X2RhdGF0eXBlcy5PYXJwNF9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5vYXJwc19kYXRhdHlwZXMub2FycDRfZGF0YXR5cGVzLmltcGwuT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnNlbnNvcl9kYXRhdHlwZXMuaW1wbC5TZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGw7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuQnl0ZU11bHRpQXJyYXk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuQ29sb3JSR0JBOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0MzJNdWx0aUFycmF5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkZsb2F0NjRNdWx0aUFycmF5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQxNk11bHRpQXJyYXk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSW50MzJNdWx0aUFycmF5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkludDY0TXVsdGlBcnJheTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQ4TXVsdGlBcnJheTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5NdWx0aUFycmF5RGltZW5zaW9uOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLk11bHRpQXJyYXlMYXlvdXQ7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc0ZhY3Rvcnk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2U7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDE2TXVsdGlBcnJheTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MzJNdWx0aUFycmF5OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQ2NE11bHRpQXJyYXk7CitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDhNdWx0aUFycmF5OworaW1wb3J0IG9yZy5lY2xpcHNlLnVtbDIudW1sLlVNTFBhY2thZ2U7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCA8Yj5QYWNrYWdlPC9iPi4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsIGV4dGVuZHMgRVBhY2thZ2VJbXBsIGltcGxlbWVudHMgU3RkX2RhdGF0eXBlc1BhY2thZ2UgeworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGhlYWRlckVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBtdWx0aUFycmF5RGltZW5zaW9uRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIG11bHRpQXJyYXlMYXlvdXRFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgYnl0ZU11bHRpQXJyYXlFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgY29sb3JSR0JBRUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGZsb2F0MzJNdWx0aUFycmF5RUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGludDMyTXVsdGlBcnJheUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBpbnQ4TXVsdGlBcnJheUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyBpbnQxNk11bHRpQXJyYXlFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgaW50NjRNdWx0aUFycmF5RUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIGZsb2F0NjRNdWx0aUFycmF5RUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIHVJbnQ2NE11bHRpQXJyYXlFQ2xhc3MgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFQ2xhc3MgdUludDE2TXVsdGlBcnJheUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVDbGFzcyB1SW50MzJNdWx0aUFycmF5RUNsYXNzID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRUNsYXNzIHVJbnQ4TXVsdGlBcnJheUVDbGFzcyA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVEYXRhVHlwZSB1SW50MzJFRGF0YVR5cGUgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFRGF0YVR5cGUgdGltZUVEYXRhVHlwZSA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVEYXRhVHlwZSBzdHJpbmdFRGF0YVR5cGUgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFRGF0YVR5cGUgYnl0ZUVEYXRhVHlwZSA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVEYXRhVHlwZSBmbG9hdDY0RURhdGFUeXBlID0gbnVsbDsKKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgRURhdGFUeXBlIGludDhFRGF0YVR5cGUgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFRGF0YVR5cGUgYm9vbEVEYXRhVHlwZSA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVEYXRhVHlwZSB1SW50OEVEYXRhVHlwZSA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVEYXRhVHlwZSB1SW50MTZFRGF0YVR5cGUgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFRGF0YVR5cGUgaW50MzJFRGF0YVR5cGUgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFRGF0YVR5cGUgaW50MTZFRGF0YVR5cGUgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFRGF0YVR5cGUgY2hhckVEYXRhVHlwZSA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVEYXRhVHlwZSBkdXJhdGlvbkVEYXRhVHlwZSA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVEYXRhVHlwZSBpbnQ2NEVEYXRhVHlwZSA9IG51bGw7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIEVEYXRhVHlwZSB1SW50NjRFRGF0YVR5cGUgPSBudWxsOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJpdmF0ZSBFRGF0YVR5cGUgZmxvYXQzMkVEYXRhVHlwZSA9IG51bGw7CisKKwkvKioKKwkgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIHRoZSBtb2RlbCA8Yj5QYWNrYWdlPC9iPiwgcmVnaXN0ZXJlZCB3aXRoCisJICoge0BsaW5rIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZS5SZWdpc3RyeSBFUGFja2FnZS5SZWdpc3RyeX0gYnkgdGhlIHBhY2thZ2UKKwkgKiBwYWNrYWdlIFVSSSB2YWx1ZS4KKwkgKiA8cD5Ob3RlOiB0aGUgY29ycmVjdCB3YXkgdG8gY3JlYXRlIHRoZSBwYWNrYWdlIGlzIHZpYSB0aGUgc3RhdGljCisJICogZmFjdG9yeSBtZXRob2Qge0BsaW5rICNpbml0IGluaXQoKX0sIHdoaWNoIGFsc28gcGVyZm9ybXMKKwkgKiBpbml0aWFsaXphdGlvbiBvZiB0aGUgcGFja2FnZSwgb3IgcmV0dXJucyB0aGUgcmVnaXN0ZXJlZCBwYWNrYWdlLAorCSAqIGlmIG9uZSBhbHJlYWR5IGV4aXN0cy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FUGFja2FnZS5SZWdpc3RyeQorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UjZU5TX1VSSQorCSAqIEBzZWUgI2luaXQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCgpIHsKKwkJc3VwZXIoZU5TX1VSSSwgU3RkX2RhdGF0eXBlc0ZhY3RvcnkuZUlOU1RBTkNFKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcml2YXRlIHN0YXRpYyBib29sZWFuIGlzSW5pdGVkID0gZmFsc2U7CisKKwkvKioKKwkgKiBDcmVhdGVzLCByZWdpc3RlcnMsIGFuZCBpbml0aWFsaXplcyB0aGUgPGI+UGFja2FnZTwvYj4gZm9yIHRoaXMgbW9kZWwsIGFuZCBmb3IgYW55IG90aGVycyB1cG9uIHdoaWNoIGl0IGRlcGVuZHMuCisJICoKKwkgKiA8cD4KKwkgKiBUaGlzIG1ldGhvZCBpcyB1c2VkIHRvIGluaXRpYWxpemUge0BsaW5rIFN0ZF9kYXRhdHlwZXNQYWNrYWdlI2VJTlNUQU5DRX0gd2hlbiB0aGF0IGZpZWxkIGlzIGFjY2Vzc2VkLiBDbGllbnRzIHNob3VsZCBub3QgaW52b2tlIGl0IGRpcmVjdGx5LiBJbnN0ZWFkLCB0aGV5IHNob3VsZCBzaW1wbHkgYWNjZXNzIHRoYXQgZmllbGQgdG8gb2J0YWluIHRoZSBwYWNrYWdlLiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPiA8IS0tIGVuZC11c2VyLWRvYworCSAqIC0tPgorCSAqCisJICogQHNlZSAjZU5TX1VSSQorCSAqIEBzZWUgI2NyZWF0ZVBhY2thZ2VDb250ZW50cygpCisJICogQHNlZSAjaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBzdGF0aWMgU3RkX2RhdGF0eXBlc1BhY2thZ2UgaW5pdCgpIHsKKwkJaWYgKGlzSW5pdGVkKSByZXR1cm4gKFN0ZF9kYXRhdHlwZXNQYWNrYWdlKUVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKFN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpOworCisJCS8vIE9idGFpbiBvciBjcmVhdGUgYW5kIHJlZ2lzdGVyIHBhY2thZ2UKKwkJU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlID0gKFN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0KGVOU19VUkkpIGluc3RhbmNlb2YgU3RkX2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0KGVOU19VUkkpIDogbmV3IFN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbCgpKTsKKworCQlpc0luaXRlZCA9IHRydWU7CisKKwkJLy8gSW5pdGlhbGl6ZSBzaW1wbGUgZGVwZW5kZW5jaWVzCisJCVVNTFBhY2thZ2UuZUlOU1RBTkNFLmVDbGFzcygpOworCisJCS8vIE9idGFpbiBvciBjcmVhdGUgYW5kIHJlZ2lzdGVyIGludGVyZGVwZW5kZW5jaWVzCisJCVJvYm90TUxQYWNrYWdlSW1wbCB0aGVSb2JvdE1MUGFja2FnZSA9IChSb2JvdE1MUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKFJvYm90TUxQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgUm9ib3RNTFBhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoUm9ib3RNTFBhY2thZ2UuZU5TX1VSSSkgOiBSb2JvdE1MUGFja2FnZS5lSU5TVEFOQ0UpOworCQlEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZURpYWdub3N0aWNfZGF0YXR5cGVzUGFja2FnZSA9IChEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIDogRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRSk7CisJCUdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZUdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UgPSAoR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKEdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgOiBHZW9tZXRyeV9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRSk7CisJCU5hdl9kYXRhdHlwZXNQYWNrYWdlSW1wbCB0aGVOYXZfZGF0YXR5cGVzUGFja2FnZSA9IChOYXZfZGF0YXR5cGVzUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKE5hdl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIGluc3RhbmNlb2YgTmF2X2RhdGF0eXBlc1BhY2thZ2VJbXBsID8gRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoTmF2X2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgOiBOYXZfZGF0YXR5cGVzUGFja2FnZS5lSU5TVEFOQ0UpOworCQlTZW5zb3JfZGF0YXR5cGVzUGFja2FnZUltcGwgdGhlU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UgPSAoU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2VJbXBsKShFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSBpbnN0YW5jZW9mIFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKFNlbnNvcl9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkkpIDogU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFKTsKKwkJQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZUFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlID0gKEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlSW1wbCkoRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UuZ2V0RVBhY2thZ2UoQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZUltcGwgPyBFUGFja2FnZS5SZWdpc3RyeS5JTlNUQU5DRS5nZXRFUGFja2FnZShBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5lTlNfVVJJKSA6IEFjdGlvbmxpYl9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRSk7CisJCU9hcnAxX2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZU9hcnAxX2RhdGF0eXBlc1BhY2thZ2UgPSAoT2FycDFfZGF0YXR5cGVzUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKE9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgOiBPYXJwMV9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRSk7CisJCU9hcnA0X2RhdGF0eXBlc1BhY2thZ2VJbXBsIHRoZU9hcnA0X2RhdGF0eXBlc1BhY2thZ2UgPSAoT2FycDRfZGF0YXR5cGVzUGFja2FnZUltcGwpKEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgaW5zdGFuY2VvZiBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlSW1wbCA/IEVQYWNrYWdlLlJlZ2lzdHJ5LklOU1RBTkNFLmdldEVQYWNrYWdlKE9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuZU5TX1VSSSkgOiBPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRSk7CisKKwkJLy8gQ3JlYXRlIHBhY2thZ2UgbWV0YS1kYXRhIG9iamVjdHMKKwkJdGhlU3RkX2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZVJvYm90TUxQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVEaWFnbm9zdGljX2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZUdlb21ldHJ5X2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZU5hdl9kYXRhdHlwZXNQYWNrYWdlLmNyZWF0ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVTZW5zb3JfZGF0YXR5cGVzUGFja2FnZS5jcmVhdGVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlQWN0aW9ubGliX2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZU9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZU9hcnA0X2RhdGF0eXBlc1BhY2thZ2UuY3JlYXRlUGFja2FnZUNvbnRlbnRzKCk7CisKKwkJLy8gSW5pdGlhbGl6ZSBjcmVhdGVkIG1ldGEtZGF0YQorCQl0aGVTdGRfZGF0YXR5cGVzUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZVJvYm90TUxQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlRGlhZ25vc3RpY19kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlR2VvbWV0cnlfZGF0YXR5cGVzUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZU5hdl9kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKwkJdGhlU2Vuc29yX2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVBY3Rpb25saWJfZGF0YXR5cGVzUGFja2FnZS5pbml0aWFsaXplUGFja2FnZUNvbnRlbnRzKCk7CisJCXRoZU9hcnAxX2RhdGF0eXBlc1BhY2thZ2UuaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpOworCQl0aGVPYXJwNF9kYXRhdHlwZXNQYWNrYWdlLmluaXRpYWxpemVQYWNrYWdlQ29udGVudHMoKTsKKworCQkvLyBNYXJrIG1ldGEtZGF0YSB0byBpbmRpY2F0ZSBpdCBjYW4ndCBiZSBjaGFuZ2VkCisJCXRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlLmZyZWV6ZSgpOworCisgIAorCQkvLyBVcGRhdGUgdGhlIHJlZ2lzdHJ5IGFuZCByZXR1cm4gdGhlIHBhY2thZ2UKKwkJRVBhY2thZ2UuUmVnaXN0cnkuSU5TVEFOQ0UucHV0KFN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVOU19VUkksIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlKTsKKwkJcmV0dXJuIHRoZVN0ZF9kYXRhdHlwZXNQYWNrYWdlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0SGVhZGVyKCkgeworCQlyZXR1cm4gaGVhZGVyRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldEhlYWRlcl9TZXEoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSloZWFkZXJFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRIZWFkZXJfU3RhbXAoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSloZWFkZXJFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRIZWFkZXJfRnJhbWVfaWQoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSloZWFkZXJFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgyKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldE11bHRpQXJyYXlEaW1lbnNpb24oKSB7CisJCXJldHVybiBtdWx0aUFycmF5RGltZW5zaW9uRUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldE11bHRpQXJyYXlEaW1lbnNpb25fTGFiZWwoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSltdWx0aUFycmF5RGltZW5zaW9uRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0TXVsdGlBcnJheURpbWVuc2lvbl9TaXplKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpbXVsdGlBcnJheURpbWVuc2lvbkVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldE11bHRpQXJyYXlEaW1lbnNpb25fU3RyaWRlKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpbXVsdGlBcnJheURpbWVuc2lvbkVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDIpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0TXVsdGlBcnJheUxheW91dCgpIHsKKwkJcmV0dXJuIG11bHRpQXJyYXlMYXlvdXRFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0TXVsdGlBcnJheUxheW91dF9EaW0oKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSltdWx0aUFycmF5TGF5b3V0RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0TXVsdGlBcnJheUxheW91dF9EYXRhX29mZnNldCgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKW11bHRpQXJyYXlMYXlvdXRFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldEJ5dGVNdWx0aUFycmF5KCkgeworCQlyZXR1cm4gYnl0ZU11bHRpQXJyYXlFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0Qnl0ZU11bHRpQXJyYXlfTGF5b3V0KCkgeworCQlyZXR1cm4gKEVSZWZlcmVuY2UpYnl0ZU11bHRpQXJyYXlFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRCeXRlTXVsdGlBcnJheV9EYXRhKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpYnl0ZU11bHRpQXJyYXlFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgxKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUNsYXNzIGdldENvbG9yUkdCQSgpIHsKKwkJcmV0dXJuIGNvbG9yUkdCQUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRDb2xvclJHQkFfUigpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWNvbG9yUkdCQUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldENvbG9yUkdCQV9HKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpY29sb3JSR0JBRUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0Q29sb3JSR0JBX0IoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSljb2xvclJHQkFFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgyKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRDb2xvclJHQkFfQSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWNvbG9yUkdCQUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDMpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0RmxvYXQzMk11bHRpQXJyYXkoKSB7CisJCXJldHVybiBmbG9hdDMyTXVsdGlBcnJheUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRGbG9hdDMyTXVsdGlBcnJheV9MYXlvdXQoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlmbG9hdDMyTXVsdGlBcnJheUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldEZsb2F0MzJNdWx0aUFycmF5X0RhdGEoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlmbG9hdDMyTXVsdGlBcnJheUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0SW50MzJNdWx0aUFycmF5KCkgeworCQlyZXR1cm4gaW50MzJNdWx0aUFycmF5RUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldEludDMyTXVsdGlBcnJheV9MYXlvdXQoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlpbnQzMk11bHRpQXJyYXlFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRJbnQzMk11bHRpQXJyYXlfRGF0YSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWludDMyTXVsdGlBcnJheUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0SW50OE11bHRpQXJyYXkoKSB7CisJCXJldHVybiBpbnQ4TXVsdGlBcnJheUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRJbnQ4TXVsdGlBcnJheV9MYXlvdXQoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlpbnQ4TXVsdGlBcnJheUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldEludDhNdWx0aUFycmF5X0RhdGEoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlpbnQ4TXVsdGlBcnJheUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0SW50MTZNdWx0aUFycmF5KCkgeworCQlyZXR1cm4gaW50MTZNdWx0aUFycmF5RUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldEludDE2TXVsdGlBcnJheV9MYXlvdXQoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlpbnQxNk11bHRpQXJyYXlFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRJbnQxNk11bHRpQXJyYXlfRGF0YSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWludDE2TXVsdGlBcnJheUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0SW50NjRNdWx0aUFycmF5KCkgeworCQlyZXR1cm4gaW50NjRNdWx0aUFycmF5RUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldEludDY0TXVsdGlBcnJheV9MYXlvdXQoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlpbnQ2NE11bHRpQXJyYXlFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRJbnQ2NE11bHRpQXJyYXlfRGF0YSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKWludDY0TXVsdGlBcnJheUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0RmxvYXQ2NE11bHRpQXJyYXkoKSB7CisJCXJldHVybiBmbG9hdDY0TXVsdGlBcnJheUVDbGFzczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRVJlZmVyZW5jZSBnZXRGbG9hdDY0TXVsdGlBcnJheV9MYXlvdXQoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSlmbG9hdDY0TXVsdGlBcnJheUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDApOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQXR0cmlidXRlIGdldEZsb2F0NjRNdWx0aUFycmF5X0RhdGEoKSB7CisJCXJldHVybiAoRUF0dHJpYnV0ZSlmbG9hdDY0TXVsdGlBcnJheUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0VUludDY0TXVsdGlBcnJheSgpIHsKKwkJcmV0dXJuIHVJbnQ2NE11bHRpQXJyYXlFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0VUludDY0TXVsdGlBcnJheV9MYXlvdXQoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSl1SW50NjRNdWx0aUFycmF5RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0VUludDY0TXVsdGlBcnJheV9EYXRhKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpdUludDY0TXVsdGlBcnJheUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0VUludDE2TXVsdGlBcnJheSgpIHsKKwkJcmV0dXJuIHVJbnQxNk11bHRpQXJyYXlFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0VUludDE2TXVsdGlBcnJheV9MYXlvdXQoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSl1SW50MTZNdWx0aUFycmF5RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0VUludDE2TXVsdGlBcnJheV9EYXRhKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpdUludDE2TXVsdGlBcnJheUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0VUludDMyTXVsdGlBcnJheSgpIHsKKwkJcmV0dXJuIHVJbnQzMk11bHRpQXJyYXlFQ2xhc3M7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVSZWZlcmVuY2UgZ2V0VUludDMyTXVsdGlBcnJheV9MYXlvdXQoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSl1SW50MzJNdWx0aUFycmF5RUNsYXNzLmdldEVTdHJ1Y3R1cmFsRmVhdHVyZXMoKS5nZXQoMCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVBdHRyaWJ1dGUgZ2V0VUludDMyTXVsdGlBcnJheV9EYXRhKCkgeworCQlyZXR1cm4gKEVBdHRyaWJ1dGUpdUludDMyTXVsdGlBcnJheUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFQ2xhc3MgZ2V0VUludDhNdWx0aUFycmF5KCkgeworCQlyZXR1cm4gdUludDhNdWx0aUFycmF5RUNsYXNzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFUmVmZXJlbmNlIGdldFVJbnQ4TXVsdGlBcnJheV9MYXlvdXQoKSB7CisJCXJldHVybiAoRVJlZmVyZW5jZSl1SW50OE11bHRpQXJyYXlFQ2xhc3MuZ2V0RVN0cnVjdHVyYWxGZWF0dXJlcygpLmdldCgwKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUF0dHJpYnV0ZSBnZXRVSW50OE11bHRpQXJyYXlfRGF0YSgpIHsKKwkJcmV0dXJuIChFQXR0cmlidXRlKXVJbnQ4TXVsdGlBcnJheUVDbGFzcy5nZXRFU3RydWN0dXJhbEZlYXR1cmVzKCkuZ2V0KDEpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFRGF0YVR5cGUgZ2V0VUludDMyKCkgeworCQlyZXR1cm4gdUludDMyRURhdGFUeXBlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFRGF0YVR5cGUgZ2V0VGltZSgpIHsKKwkJcmV0dXJuIHRpbWVFRGF0YVR5cGU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVEYXRhVHlwZSBnZXRTdHJpbmcoKSB7CisJCXJldHVybiBzdHJpbmdFRGF0YVR5cGU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVEYXRhVHlwZSBnZXRCeXRlKCkgeworCQlyZXR1cm4gYnl0ZUVEYXRhVHlwZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRURhdGFUeXBlIGdldEZsb2F0NjQoKSB7CisJCXJldHVybiBmbG9hdDY0RURhdGFUeXBlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFRGF0YVR5cGUgZ2V0SW50OCgpIHsKKwkJcmV0dXJuIGludDhFRGF0YVR5cGU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVEYXRhVHlwZSBnZXRCb29sKCkgeworCQlyZXR1cm4gYm9vbEVEYXRhVHlwZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRURhdGFUeXBlIGdldFVJbnQ4KCkgeworCQlyZXR1cm4gdUludDhFRGF0YVR5cGU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVEYXRhVHlwZSBnZXRVSW50MTYoKSB7CisJCXJldHVybiB1SW50MTZFRGF0YVR5cGU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVEYXRhVHlwZSBnZXRJbnQzMigpIHsKKwkJcmV0dXJuIGludDMyRURhdGFUeXBlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFRGF0YVR5cGUgZ2V0SW50MTYoKSB7CisJCXJldHVybiBpbnQxNkVEYXRhVHlwZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRURhdGFUeXBlIGdldENoYXIoKSB7CisJCXJldHVybiBjaGFyRURhdGFUeXBlOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBFRGF0YVR5cGUgZ2V0RHVyYXRpb24oKSB7CisJCXJldHVybiBkdXJhdGlvbkVEYXRhVHlwZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRURhdGFUeXBlIGdldEludDY0KCkgeworCQlyZXR1cm4gaW50NjRFRGF0YVR5cGU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVEYXRhVHlwZSBnZXRVSW50NjQoKSB7CisJCXJldHVybiB1SW50NjRFRGF0YVR5cGU7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVEYXRhVHlwZSBnZXRGbG9hdDMyKCkgeworCQlyZXR1cm4gZmxvYXQzMkVEYXRhVHlwZTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgU3RkX2RhdGF0eXBlc0ZhY3RvcnkgZ2V0U3RkX2RhdGF0eXBlc0ZhY3RvcnkoKSB7CisJCXJldHVybiAoU3RkX2RhdGF0eXBlc0ZhY3RvcnkpZ2V0RUZhY3RvcnlJbnN0YW5jZSgpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgYm9vbGVhbiBpc0NyZWF0ZWQgPSBmYWxzZTsKKworCS8qKgorCSAqIENyZWF0ZXMgdGhlIG1ldGEtbW9kZWwgb2JqZWN0cyBmb3IgdGhlIHBhY2thZ2UuICBUaGlzIG1ldGhvZCBpcworCSAqIGd1YXJkZWQgdG8gaGF2ZSBubyBhZmZlY3Qgb24gYW55IGludm9jYXRpb24gYnV0IGl0cyBmaXJzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBjcmVhdGVQYWNrYWdlQ29udGVudHMoKSB7CisJCWlmIChpc0NyZWF0ZWQpIHJldHVybjsKKwkJaXNDcmVhdGVkID0gdHJ1ZTsKKworCQkvLyBDcmVhdGUgY2xhc3NlcyBhbmQgdGhlaXIgZmVhdHVyZXMKKwkJaGVhZGVyRUNsYXNzID0gY3JlYXRlRUNsYXNzKEhFQURFUik7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoaGVhZGVyRUNsYXNzLCBIRUFERVJfX1NFUSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoaGVhZGVyRUNsYXNzLCBIRUFERVJfX1NUQU1QKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShoZWFkZXJFQ2xhc3MsIEhFQURFUl9fRlJBTUVfSUQpOworCisJCW11bHRpQXJyYXlEaW1lbnNpb25FQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoTVVMVElfQVJSQVlfRElNRU5TSU9OKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShtdWx0aUFycmF5RGltZW5zaW9uRUNsYXNzLCBNVUxUSV9BUlJBWV9ESU1FTlNJT05fX0xBQkVMKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShtdWx0aUFycmF5RGltZW5zaW9uRUNsYXNzLCBNVUxUSV9BUlJBWV9ESU1FTlNJT05fX1NJWkUpOworCQljcmVhdGVFQXR0cmlidXRlKG11bHRpQXJyYXlEaW1lbnNpb25FQ2xhc3MsIE1VTFRJX0FSUkFZX0RJTUVOU0lPTl9fU1RSSURFKTsKKworCQltdWx0aUFycmF5TGF5b3V0RUNsYXNzID0gY3JlYXRlRUNsYXNzKE1VTFRJX0FSUkFZX0xBWU9VVCk7CisJCWNyZWF0ZUVSZWZlcmVuY2UobXVsdGlBcnJheUxheW91dEVDbGFzcywgTVVMVElfQVJSQVlfTEFZT1VUX19ESU0pOworCQljcmVhdGVFQXR0cmlidXRlKG11bHRpQXJyYXlMYXlvdXRFQ2xhc3MsIE1VTFRJX0FSUkFZX0xBWU9VVF9fREFUQV9PRkZTRVQpOworCisJCWJ5dGVNdWx0aUFycmF5RUNsYXNzID0gY3JlYXRlRUNsYXNzKEJZVEVfTVVMVElfQVJSQVkpOworCQljcmVhdGVFUmVmZXJlbmNlKGJ5dGVNdWx0aUFycmF5RUNsYXNzLCBCWVRFX01VTFRJX0FSUkFZX19MQVlPVVQpOworCQljcmVhdGVFQXR0cmlidXRlKGJ5dGVNdWx0aUFycmF5RUNsYXNzLCBCWVRFX01VTFRJX0FSUkFZX19EQVRBKTsKKworCQljb2xvclJHQkFFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoQ09MT1JfUkdCQSk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoY29sb3JSR0JBRUNsYXNzLCBDT0xPUl9SR0JBX19SKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShjb2xvclJHQkFFQ2xhc3MsIENPTE9SX1JHQkFfX0cpOworCQljcmVhdGVFQXR0cmlidXRlKGNvbG9yUkdCQUVDbGFzcywgQ09MT1JfUkdCQV9fQik7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoY29sb3JSR0JBRUNsYXNzLCBDT0xPUl9SR0JBX19BKTsKKworCQlmbG9hdDMyTXVsdGlBcnJheUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhGTE9BVDMyX01VTFRJX0FSUkFZKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShmbG9hdDMyTXVsdGlBcnJheUVDbGFzcywgRkxPQVQzMl9NVUxUSV9BUlJBWV9fTEFZT1VUKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZShmbG9hdDMyTXVsdGlBcnJheUVDbGFzcywgRkxPQVQzMl9NVUxUSV9BUlJBWV9fREFUQSk7CisKKwkJaW50MzJNdWx0aUFycmF5RUNsYXNzID0gY3JlYXRlRUNsYXNzKElOVDMyX01VTFRJX0FSUkFZKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShpbnQzMk11bHRpQXJyYXlFQ2xhc3MsIElOVDMyX01VTFRJX0FSUkFZX19MQVlPVVQpOworCQljcmVhdGVFQXR0cmlidXRlKGludDMyTXVsdGlBcnJheUVDbGFzcywgSU5UMzJfTVVMVElfQVJSQVlfX0RBVEEpOworCisJCWludDhNdWx0aUFycmF5RUNsYXNzID0gY3JlYXRlRUNsYXNzKElOVDhfTVVMVElfQVJSQVkpOworCQljcmVhdGVFUmVmZXJlbmNlKGludDhNdWx0aUFycmF5RUNsYXNzLCBJTlQ4X01VTFRJX0FSUkFZX19MQVlPVVQpOworCQljcmVhdGVFQXR0cmlidXRlKGludDhNdWx0aUFycmF5RUNsYXNzLCBJTlQ4X01VTFRJX0FSUkFZX19EQVRBKTsKKworCQlpbnQxNk11bHRpQXJyYXlFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoSU5UMTZfTVVMVElfQVJSQVkpOworCQljcmVhdGVFUmVmZXJlbmNlKGludDE2TXVsdGlBcnJheUVDbGFzcywgSU5UMTZfTVVMVElfQVJSQVlfX0xBWU9VVCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUoaW50MTZNdWx0aUFycmF5RUNsYXNzLCBJTlQxNl9NVUxUSV9BUlJBWV9fREFUQSk7CisKKwkJaW50NjRNdWx0aUFycmF5RUNsYXNzID0gY3JlYXRlRUNsYXNzKElOVDY0X01VTFRJX0FSUkFZKTsKKwkJY3JlYXRlRVJlZmVyZW5jZShpbnQ2NE11bHRpQXJyYXlFQ2xhc3MsIElOVDY0X01VTFRJX0FSUkFZX19MQVlPVVQpOworCQljcmVhdGVFQXR0cmlidXRlKGludDY0TXVsdGlBcnJheUVDbGFzcywgSU5UNjRfTVVMVElfQVJSQVlfX0RBVEEpOworCisJCWZsb2F0NjRNdWx0aUFycmF5RUNsYXNzID0gY3JlYXRlRUNsYXNzKEZMT0FUNjRfTVVMVElfQVJSQVkpOworCQljcmVhdGVFUmVmZXJlbmNlKGZsb2F0NjRNdWx0aUFycmF5RUNsYXNzLCBGTE9BVDY0X01VTFRJX0FSUkFZX19MQVlPVVQpOworCQljcmVhdGVFQXR0cmlidXRlKGZsb2F0NjRNdWx0aUFycmF5RUNsYXNzLCBGTE9BVDY0X01VTFRJX0FSUkFZX19EQVRBKTsKKworCQl1SW50NjRNdWx0aUFycmF5RUNsYXNzID0gY3JlYXRlRUNsYXNzKFVJTlQ2NF9NVUxUSV9BUlJBWSk7CisJCWNyZWF0ZUVSZWZlcmVuY2UodUludDY0TXVsdGlBcnJheUVDbGFzcywgVUlOVDY0X01VTFRJX0FSUkFZX19MQVlPVVQpOworCQljcmVhdGVFQXR0cmlidXRlKHVJbnQ2NE11bHRpQXJyYXlFQ2xhc3MsIFVJTlQ2NF9NVUxUSV9BUlJBWV9fREFUQSk7CisKKwkJdUludDE2TXVsdGlBcnJheUVDbGFzcyA9IGNyZWF0ZUVDbGFzcyhVSU5UMTZfTVVMVElfQVJSQVkpOworCQljcmVhdGVFUmVmZXJlbmNlKHVJbnQxNk11bHRpQXJyYXlFQ2xhc3MsIFVJTlQxNl9NVUxUSV9BUlJBWV9fTEFZT1VUKTsKKwkJY3JlYXRlRUF0dHJpYnV0ZSh1SW50MTZNdWx0aUFycmF5RUNsYXNzLCBVSU5UMTZfTVVMVElfQVJSQVlfX0RBVEEpOworCisJCXVJbnQzMk11bHRpQXJyYXlFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoVUlOVDMyX01VTFRJX0FSUkFZKTsKKwkJY3JlYXRlRVJlZmVyZW5jZSh1SW50MzJNdWx0aUFycmF5RUNsYXNzLCBVSU5UMzJfTVVMVElfQVJSQVlfX0xBWU9VVCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUodUludDMyTXVsdGlBcnJheUVDbGFzcywgVUlOVDMyX01VTFRJX0FSUkFZX19EQVRBKTsKKworCQl1SW50OE11bHRpQXJyYXlFQ2xhc3MgPSBjcmVhdGVFQ2xhc3MoVUlOVDhfTVVMVElfQVJSQVkpOworCQljcmVhdGVFUmVmZXJlbmNlKHVJbnQ4TXVsdGlBcnJheUVDbGFzcywgVUlOVDhfTVVMVElfQVJSQVlfX0xBWU9VVCk7CisJCWNyZWF0ZUVBdHRyaWJ1dGUodUludDhNdWx0aUFycmF5RUNsYXNzLCBVSU5UOF9NVUxUSV9BUlJBWV9fREFUQSk7CisKKwkJLy8gQ3JlYXRlIGRhdGEgdHlwZXMKKwkJdUludDMyRURhdGFUeXBlID0gY3JlYXRlRURhdGFUeXBlKFVJTlQzMik7CisJCXRpbWVFRGF0YVR5cGUgPSBjcmVhdGVFRGF0YVR5cGUoVElNRSk7CisJCXN0cmluZ0VEYXRhVHlwZSA9IGNyZWF0ZUVEYXRhVHlwZShTVFJJTkcpOworCQlieXRlRURhdGFUeXBlID0gY3JlYXRlRURhdGFUeXBlKEJZVEUpOworCQlmbG9hdDY0RURhdGFUeXBlID0gY3JlYXRlRURhdGFUeXBlKEZMT0FUNjQpOworCQlpbnQ4RURhdGFUeXBlID0gY3JlYXRlRURhdGFUeXBlKElOVDgpOworCQlib29sRURhdGFUeXBlID0gY3JlYXRlRURhdGFUeXBlKEJPT0wpOworCQl1SW50OEVEYXRhVHlwZSA9IGNyZWF0ZUVEYXRhVHlwZShVSU5UOCk7CisJCXVJbnQxNkVEYXRhVHlwZSA9IGNyZWF0ZUVEYXRhVHlwZShVSU5UMTYpOworCQlpbnQzMkVEYXRhVHlwZSA9IGNyZWF0ZUVEYXRhVHlwZShJTlQzMik7CisJCWludDE2RURhdGFUeXBlID0gY3JlYXRlRURhdGFUeXBlKElOVDE2KTsKKwkJY2hhckVEYXRhVHlwZSA9IGNyZWF0ZUVEYXRhVHlwZShDSEFSKTsKKwkJZHVyYXRpb25FRGF0YVR5cGUgPSBjcmVhdGVFRGF0YVR5cGUoRFVSQVRJT04pOworCQlpbnQ2NEVEYXRhVHlwZSA9IGNyZWF0ZUVEYXRhVHlwZShJTlQ2NCk7CisJCXVJbnQ2NEVEYXRhVHlwZSA9IGNyZWF0ZUVEYXRhVHlwZShVSU5UNjQpOworCQlmbG9hdDMyRURhdGFUeXBlID0gY3JlYXRlRURhdGFUeXBlKEZMT0FUMzIpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByaXZhdGUgYm9vbGVhbiBpc0luaXRpYWxpemVkID0gZmFsc2U7CisKKwkvKioKKwkgKiBDb21wbGV0ZSB0aGUgaW5pdGlhbGl6YXRpb24gb2YgdGhlIHBhY2thZ2UgYW5kIGl0cyBtZXRhLW1vZGVsLiAgVGhpcworCSAqIG1ldGhvZCBpcyBndWFyZGVkIHRvIGhhdmUgbm8gYWZmZWN0IG9uIGFueSBpbnZvY2F0aW9uIGJ1dCBpdHMgZmlyc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIHZvaWQgaW5pdGlhbGl6ZVBhY2thZ2VDb250ZW50cygpIHsKKwkJaWYgKGlzSW5pdGlhbGl6ZWQpIHJldHVybjsKKwkJaXNJbml0aWFsaXplZCA9IHRydWU7CisKKwkJLy8gSW5pdGlhbGl6ZSBwYWNrYWdlCisJCXNldE5hbWUoZU5BTUUpOworCQlzZXROc1ByZWZpeChlTlNfUFJFRklYKTsKKwkJc2V0TnNVUkkoZU5TX1VSSSk7CisKKwkJLy8gQ3JlYXRlIHR5cGUgcGFyYW1ldGVycworCisJCS8vIFNldCBib3VuZHMgZm9yIHR5cGUgcGFyYW1ldGVycworCisJCS8vIEFkZCBzdXBlcnR5cGVzIHRvIGNsYXNzZXMKKworCQkvLyBJbml0aWFsaXplIGNsYXNzZXMsIGZlYXR1cmVzLCBhbmQgb3BlcmF0aW9uczsgYWRkIHBhcmFtZXRlcnMKKwkJaW5pdEVDbGFzcyhoZWFkZXJFQ2xhc3MsIEhlYWRlci5jbGFzcywgIkhlYWRlciIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0SGVhZGVyX1NlcSgpLCB0aGlzLmdldFVJbnQzMigpLCAic2VxIiwgbnVsbCwgMSwgMSwgSGVhZGVyLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0SGVhZGVyX1N0YW1wKCksIHRoaXMuZ2V0VGltZSgpLCAic3RhbXAiLCBudWxsLCAxLCAxLCBIZWFkZXIuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRIZWFkZXJfRnJhbWVfaWQoKSwgdGhpcy5nZXRTdHJpbmcoKSwgImZyYW1lX2lkIiwgbnVsbCwgMSwgMSwgSGVhZGVyLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKG11bHRpQXJyYXlEaW1lbnNpb25FQ2xhc3MsIE11bHRpQXJyYXlEaW1lbnNpb24uY2xhc3MsICJNdWx0aUFycmF5RGltZW5zaW9uIiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RUF0dHJpYnV0ZShnZXRNdWx0aUFycmF5RGltZW5zaW9uX0xhYmVsKCksIHRoaXMuZ2V0U3RyaW5nKCksICJsYWJlbCIsIG51bGwsIDEsIDEsIE11bHRpQXJyYXlEaW1lbnNpb24uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRNdWx0aUFycmF5RGltZW5zaW9uX1NpemUoKSwgdGhpcy5nZXRVSW50MzIoKSwgInNpemUiLCBudWxsLCAxLCAxLCBNdWx0aUFycmF5RGltZW5zaW9uLmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0TXVsdGlBcnJheURpbWVuc2lvbl9TdHJpZGUoKSwgdGhpcy5nZXRVSW50MzIoKSwgInN0cmlkZSIsIG51bGwsIDEsIDEsIE11bHRpQXJyYXlEaW1lbnNpb24uY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3MobXVsdGlBcnJheUxheW91dEVDbGFzcywgTXVsdGlBcnJheUxheW91dC5jbGFzcywgIk11bHRpQXJyYXlMYXlvdXQiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFUmVmZXJlbmNlKGdldE11bHRpQXJyYXlMYXlvdXRfRGltKCksIHRoaXMuZ2V0TXVsdGlBcnJheURpbWVuc2lvbigpLCBudWxsLCAiZGltIiwgbnVsbCwgMCwgLTEsIE11bHRpQXJyYXlMYXlvdXQuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRNdWx0aUFycmF5TGF5b3V0X0RhdGFfb2Zmc2V0KCksIHRoaXMuZ2V0VUludDMyKCksICJkYXRhX29mZnNldCIsIG51bGwsIDEsIDEsIE11bHRpQXJyYXlMYXlvdXQuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3MoYnl0ZU11bHRpQXJyYXlFQ2xhc3MsIEJ5dGVNdWx0aUFycmF5LmNsYXNzLCAiQnl0ZU11bHRpQXJyYXkiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFUmVmZXJlbmNlKGdldEJ5dGVNdWx0aUFycmF5X0xheW91dCgpLCB0aGlzLmdldE11bHRpQXJyYXlMYXlvdXQoKSwgbnVsbCwgImxheW91dCIsIG51bGwsIDEsIDEsIEJ5dGVNdWx0aUFycmF5LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0Qnl0ZU11bHRpQXJyYXlfRGF0YSgpLCB0aGlzLmdldEJ5dGUoKSwgImRhdGEiLCBudWxsLCAwLCAtMSwgQnl0ZU11bHRpQXJyYXkuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3MoY29sb3JSR0JBRUNsYXNzLCBDb2xvclJHQkEuY2xhc3MsICJDb2xvclJHQkEiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFQXR0cmlidXRlKGdldENvbG9yUkdCQV9SKCksIHRoaXMuZ2V0RmxvYXQzMigpLCAiciIsIG51bGwsIDEsIDEsIENvbG9yUkdCQS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldENvbG9yUkdCQV9HKCksIHRoaXMuZ2V0RmxvYXQzMigpLCAiZyIsIG51bGwsIDEsIDEsIENvbG9yUkdCQS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldENvbG9yUkdCQV9CKCksIHRoaXMuZ2V0RmxvYXQzMigpLCAiYiIsIG51bGwsIDEsIDEsIENvbG9yUkdCQS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldENvbG9yUkdCQV9BKCksIHRoaXMuZ2V0RmxvYXQzMigpLCAiYSIsIG51bGwsIDEsIDEsIENvbG9yUkdCQS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhmbG9hdDMyTXVsdGlBcnJheUVDbGFzcywgRmxvYXQzMk11bHRpQXJyYXkuY2xhc3MsICJGbG9hdDMyTXVsdGlBcnJheSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0RmxvYXQzMk11bHRpQXJyYXlfTGF5b3V0KCksIHRoaXMuZ2V0TXVsdGlBcnJheUxheW91dCgpLCBudWxsLCAibGF5b3V0IiwgbnVsbCwgMSwgMSwgRmxvYXQzMk11bHRpQXJyYXkuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRGbG9hdDMyTXVsdGlBcnJheV9EYXRhKCksIHRoaXMuZ2V0RmxvYXQzMigpLCAiZGF0YSIsIG51bGwsIDAsIC0xLCBGbG9hdDMyTXVsdGlBcnJheS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhpbnQzMk11bHRpQXJyYXlFQ2xhc3MsIEludDMyTXVsdGlBcnJheS5jbGFzcywgIkludDMyTXVsdGlBcnJheSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0SW50MzJNdWx0aUFycmF5X0xheW91dCgpLCB0aGlzLmdldE11bHRpQXJyYXlMYXlvdXQoKSwgbnVsbCwgImxheW91dCIsIG51bGwsIDEsIDEsIEludDMyTXVsdGlBcnJheS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEludDMyTXVsdGlBcnJheV9EYXRhKCksIHRoaXMuZ2V0SW50MzIoKSwgImRhdGEiLCBudWxsLCAwLCAtMSwgSW50MzJNdWx0aUFycmF5LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKGludDhNdWx0aUFycmF5RUNsYXNzLCBJbnQ4TXVsdGlBcnJheS5jbGFzcywgIkludDhNdWx0aUFycmF5IiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXRJbnQ4TXVsdGlBcnJheV9MYXlvdXQoKSwgdGhpcy5nZXRNdWx0aUFycmF5TGF5b3V0KCksIG51bGwsICJsYXlvdXQiLCBudWxsLCAxLCAxLCBJbnQ4TXVsdGlBcnJheS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldEludDhNdWx0aUFycmF5X0RhdGEoKSwgdGhpcy5nZXRJbnQ4KCksICJkYXRhIiwgbnVsbCwgMCwgLTEsIEludDhNdWx0aUFycmF5LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKGludDE2TXVsdGlBcnJheUVDbGFzcywgSW50MTZNdWx0aUFycmF5LmNsYXNzLCAiSW50MTZNdWx0aUFycmF5IiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXRJbnQxNk11bHRpQXJyYXlfTGF5b3V0KCksIHRoaXMuZ2V0TXVsdGlBcnJheUxheW91dCgpLCBudWxsLCAibGF5b3V0IiwgbnVsbCwgMSwgMSwgSW50MTZNdWx0aUFycmF5LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0SW50MTZNdWx0aUFycmF5X0RhdGEoKSwgdGhpcy5nZXRJbnQxNigpLCAiZGF0YSIsIG51bGwsIDAsIC0xLCBJbnQxNk11bHRpQXJyYXkuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3MoaW50NjRNdWx0aUFycmF5RUNsYXNzLCBJbnQ2NE11bHRpQXJyYXkuY2xhc3MsICJJbnQ2NE11bHRpQXJyYXkiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFUmVmZXJlbmNlKGdldEludDY0TXVsdGlBcnJheV9MYXlvdXQoKSwgdGhpcy5nZXRNdWx0aUFycmF5TGF5b3V0KCksIG51bGwsICJsYXlvdXQiLCBudWxsLCAxLCAxLCBJbnQ2NE11bHRpQXJyYXkuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRJbnQ2NE11bHRpQXJyYXlfRGF0YSgpLCB0aGlzLmdldEludDY0KCksICJkYXRhIiwgbnVsbCwgMCwgLTEsIEludDY0TXVsdGlBcnJheS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyhmbG9hdDY0TXVsdGlBcnJheUVDbGFzcywgRmxvYXQ2NE11bHRpQXJyYXkuY2xhc3MsICJGbG9hdDY0TXVsdGlBcnJheSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0RmxvYXQ2NE11bHRpQXJyYXlfTGF5b3V0KCksIHRoaXMuZ2V0TXVsdGlBcnJheUxheW91dCgpLCBudWxsLCAibGF5b3V0IiwgbnVsbCwgMSwgMSwgRmxvYXQ2NE11bHRpQXJyYXkuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRGbG9hdDY0TXVsdGlBcnJheV9EYXRhKCksIHRoaXMuZ2V0RmxvYXQ2NCgpLCAiZGF0YSIsIG51bGwsIDAsIC0xLCBGbG9hdDY0TXVsdGlBcnJheS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyh1SW50NjRNdWx0aUFycmF5RUNsYXNzLCBVSW50NjRNdWx0aUFycmF5LmNsYXNzLCAiVUludDY0TXVsdGlBcnJheSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0VUludDY0TXVsdGlBcnJheV9MYXlvdXQoKSwgdGhpcy5nZXRNdWx0aUFycmF5TGF5b3V0KCksIG51bGwsICJsYXlvdXQiLCBudWxsLCAxLCAxLCBVSW50NjRNdWx0aUFycmF5LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsIElTX0NPTVBPU0lURSwgIUlTX1JFU09MVkVfUFJPWElFUywgIUlTX1VOU0VUVEFCTEUsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKwkJaW5pdEVBdHRyaWJ1dGUoZ2V0VUludDY0TXVsdGlBcnJheV9EYXRhKCksIHRoaXMuZ2V0VUludDY0KCksICJkYXRhIiwgbnVsbCwgMCwgLTEsIFVJbnQ2NE11bHRpQXJyYXkuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgIUlTX1VOU0VUVEFCTEUsICFJU19JRCwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCisJCWluaXRFQ2xhc3ModUludDE2TXVsdGlBcnJheUVDbGFzcywgVUludDE2TXVsdGlBcnJheS5jbGFzcywgIlVJbnQxNk11bHRpQXJyYXkiLCAhSVNfQUJTVFJBQ1QsICFJU19JTlRFUkZBQ0UsIElTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFUmVmZXJlbmNlKGdldFVJbnQxNk11bHRpQXJyYXlfTGF5b3V0KCksIHRoaXMuZ2V0TXVsdGlBcnJheUxheW91dCgpLCBudWxsLCAibGF5b3V0IiwgbnVsbCwgMSwgMSwgVUludDE2TXVsdGlBcnJheS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldFVJbnQxNk11bHRpQXJyYXlfRGF0YSgpLCB0aGlzLmdldFVJbnQxNigpLCAiZGF0YSIsIG51bGwsIDAsIC0xLCBVSW50MTZNdWx0aUFycmF5LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQlpbml0RUNsYXNzKHVJbnQzMk11bHRpQXJyYXlFQ2xhc3MsIFVJbnQzMk11bHRpQXJyYXkuY2xhc3MsICJVSW50MzJNdWx0aUFycmF5IiwgIUlTX0FCU1RSQUNULCAhSVNfSU5URVJGQUNFLCBJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RVJlZmVyZW5jZShnZXRVSW50MzJNdWx0aUFycmF5X0xheW91dCgpLCB0aGlzLmdldE11bHRpQXJyYXlMYXlvdXQoKSwgbnVsbCwgImxheW91dCIsIG51bGwsIDEsIDEsIFVJbnQzMk11bHRpQXJyYXkuY2xhc3MsICFJU19UUkFOU0lFTlQsICFJU19WT0xBVElMRSwgSVNfQ0hBTkdFQUJMRSwgSVNfQ09NUE9TSVRFLCAhSVNfUkVTT0xWRV9QUk9YSUVTLCAhSVNfVU5TRVRUQUJMRSwgSVNfVU5JUVVFLCAhSVNfREVSSVZFRCwgIUlTX09SREVSRUQpOworCQlpbml0RUF0dHJpYnV0ZShnZXRVSW50MzJNdWx0aUFycmF5X0RhdGEoKSwgdGhpcy5nZXRVSW50MzIoKSwgImRhdGEiLCBudWxsLCAwLCAtMSwgVUludDMyTXVsdGlBcnJheS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCAhSVNfVU5TRVRUQUJMRSwgIUlTX0lELCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisKKwkJaW5pdEVDbGFzcyh1SW50OE11bHRpQXJyYXlFQ2xhc3MsIFVJbnQ4TXVsdGlBcnJheS5jbGFzcywgIlVJbnQ4TXVsdGlBcnJheSIsICFJU19BQlNUUkFDVCwgIUlTX0lOVEVSRkFDRSwgSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVSZWZlcmVuY2UoZ2V0VUludDhNdWx0aUFycmF5X0xheW91dCgpLCB0aGlzLmdldE11bHRpQXJyYXlMYXlvdXQoKSwgbnVsbCwgImxheW91dCIsIG51bGwsIDEsIDEsIFVJbnQ4TXVsdGlBcnJheS5jbGFzcywgIUlTX1RSQU5TSUVOVCwgIUlTX1ZPTEFUSUxFLCBJU19DSEFOR0VBQkxFLCBJU19DT01QT1NJVEUsICFJU19SRVNPTFZFX1BST1hJRVMsICFJU19VTlNFVFRBQkxFLCBJU19VTklRVUUsICFJU19ERVJJVkVELCAhSVNfT1JERVJFRCk7CisJCWluaXRFQXR0cmlidXRlKGdldFVJbnQ4TXVsdGlBcnJheV9EYXRhKCksIHRoaXMuZ2V0VUludDgoKSwgImRhdGEiLCBudWxsLCAwLCAtMSwgVUludDhNdWx0aUFycmF5LmNsYXNzLCAhSVNfVFJBTlNJRU5ULCAhSVNfVk9MQVRJTEUsIElTX0NIQU5HRUFCTEUsICFJU19VTlNFVFRBQkxFLCAhSVNfSUQsIElTX1VOSVFVRSwgIUlTX0RFUklWRUQsICFJU19PUkRFUkVEKTsKKworCQkvLyBJbml0aWFsaXplIGRhdGEgdHlwZXMKKwkJaW5pdEVEYXRhVHlwZSh1SW50MzJFRGF0YVR5cGUsIGxvbmcuY2xhc3MsICJVSW50MzIiLCBJU19TRVJJQUxJWkFCTEUsICFJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RURhdGFUeXBlKHRpbWVFRGF0YVR5cGUsIERhdGUuY2xhc3MsICJUaW1lIiwgSVNfU0VSSUFMSVpBQkxFLCAhSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVEYXRhVHlwZShzdHJpbmdFRGF0YVR5cGUsIFN0cmluZy5jbGFzcywgIlN0cmluZyIsIElTX1NFUklBTElaQUJMRSwgIUlTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFRGF0YVR5cGUoYnl0ZUVEYXRhVHlwZSwgYnl0ZS5jbGFzcywgIkJ5dGUiLCBJU19TRVJJQUxJWkFCTEUsICFJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RURhdGFUeXBlKGZsb2F0NjRFRGF0YVR5cGUsIGRvdWJsZS5jbGFzcywgIkZsb2F0NjQiLCBJU19TRVJJQUxJWkFCTEUsICFJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RURhdGFUeXBlKGludDhFRGF0YVR5cGUsIGNoYXIuY2xhc3MsICJJbnQ4IiwgSVNfU0VSSUFMSVpBQkxFLCAhSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVEYXRhVHlwZShib29sRURhdGFUeXBlLCBib29sZWFuLmNsYXNzLCAiQm9vbCIsIElTX1NFUklBTElaQUJMRSwgIUlTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFRGF0YVR5cGUodUludDhFRGF0YVR5cGUsIGNoYXIuY2xhc3MsICJVSW50OCIsIElTX1NFUklBTElaQUJMRSwgIUlTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFRGF0YVR5cGUodUludDE2RURhdGFUeXBlLCBpbnQuY2xhc3MsICJVSW50MTYiLCBJU19TRVJJQUxJWkFCTEUsICFJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RURhdGFUeXBlKGludDMyRURhdGFUeXBlLCBpbnQuY2xhc3MsICJJbnQzMiIsIElTX1NFUklBTElaQUJMRSwgIUlTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFRGF0YVR5cGUoaW50MTZFRGF0YVR5cGUsIGludC5jbGFzcywgIkludDE2IiwgSVNfU0VSSUFMSVpBQkxFLCAhSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVEYXRhVHlwZShjaGFyRURhdGFUeXBlLCBjaGFyLmNsYXNzLCAiQ2hhciIsIElTX1NFUklBTElaQUJMRSwgIUlTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFRGF0YVR5cGUoZHVyYXRpb25FRGF0YVR5cGUsIGRvdWJsZS5jbGFzcywgIkR1cmF0aW9uIiwgSVNfU0VSSUFMSVpBQkxFLCAhSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKwkJaW5pdEVEYXRhVHlwZShpbnQ2NEVEYXRhVHlwZSwgZG91YmxlLmNsYXNzLCAiSW50NjQiLCBJU19TRVJJQUxJWkFCTEUsICFJU19HRU5FUkFURURfSU5TVEFOQ0VfQ0xBU1MpOworCQlpbml0RURhdGFUeXBlKHVJbnQ2NEVEYXRhVHlwZSwgbG9uZy5jbGFzcywgIlVJbnQ2NCIsIElTX1NFUklBTElaQUJMRSwgIUlTX0dFTkVSQVRFRF9JTlNUQU5DRV9DTEFTUyk7CisJCWluaXRFRGF0YVR5cGUoZmxvYXQzMkVEYXRhVHlwZSwgZmxvYXQuY2xhc3MsICJGbG9hdDMyIiwgSVNfU0VSSUFMSVpBQkxFLCAhSVNfR0VORVJBVEVEX0lOU1RBTkNFX0NMQVNTKTsKKworCQkvLyBDcmVhdGUgcmVzb3VyY2UKKwkJY3JlYXRlUmVzb3VyY2UoZU5TX1VSSSk7CisJfQorCit9IC8vIFN0ZF9kYXRhdHlwZXNQYWNrYWdlSW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1VJbnQxNk11bHRpQXJyYXlJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvVUludDE2TXVsdGlBcnJheUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iY2NmNWIyCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1VJbnQxNk11bHRpQXJyYXlJbXBsLmphdmEKQEAgLTAsMCArMSwyMzMgQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb25DaGFpbjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5FTGlzdDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FQ2xhc3M7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkludGVybmFsRU9iamVjdDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLkVEYXRhVHlwZVVuaXF1ZUVMaXN0OworCitpbXBvcnQgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuTXVsdGlBcnJheUxheW91dDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5TdGRfZGF0YXR5cGVzUGFja2FnZTsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50MTZNdWx0aUFycmF5OworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbW9kZWwgb2JqZWN0ICc8ZW0+PGI+VUludDE2IE11bHRpIEFycmF5PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlVJbnQxNk11bHRpQXJyYXlJbXBsI2dldExheW91dCA8ZW0+TGF5b3V0PC9lbT59PC9saT4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlVJbnQxNk11bHRpQXJyYXlJbXBsI2dldERhdGEgPGVtPkRhdGE8L2VtPn08L2xpPgorICogPC91bD4KKyAqIDwvcD4KKyAqCisgKiBAZ2VuZXJhdGVkCisgKi8KK3B1YmxpYyBjbGFzcyBVSW50MTZNdWx0aUFycmF5SW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBVSW50MTZNdWx0aUFycmF5IHsKKwkvKioKKwkgKiBUaGUgY2FjaGVkIHZhbHVlIG9mIHRoZSAne0BsaW5rICNnZXRMYXlvdXQoKSA8ZW0+TGF5b3V0PC9lbT59JyBjb250YWlubWVudCByZWZlcmVuY2UuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXRMYXlvdXQoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBNdWx0aUFycmF5TGF5b3V0IGxheW91dDsKKworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldERhdGEoKSA8ZW0+RGF0YTwvZW0+fScgYXR0cmlidXRlIGxpc3QuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAc2VlICNnZXREYXRhKCkKKwkgKiBAZ2VuZXJhdGVkCisJICogQG9yZGVyZWQKKwkgKi8KKwlwcm90ZWN0ZWQgRUxpc3Q8T2JqZWN0PiBkYXRhOworCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHJvdGVjdGVkIFVJbnQxNk11bHRpQXJyYXlJbXBsKCkgeworCQlzdXBlcigpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBFQ2xhc3MgZVN0YXRpY0NsYXNzKCkgeworCQlyZXR1cm4gU3RkX2RhdGF0eXBlc1BhY2thZ2UuTGl0ZXJhbHMuVUlOVDE2X01VTFRJX0FSUkFZOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBNdWx0aUFycmF5TGF5b3V0IGdldExheW91dCgpIHsKKwkJcmV0dXJuIGxheW91dDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRMYXlvdXQoTXVsdGlBcnJheUxheW91dCBuZXdMYXlvdXQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJTXVsdGlBcnJheUxheW91dCBvbGRMYXlvdXQgPSBsYXlvdXQ7CisJCWxheW91dCA9IG5ld0xheW91dDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDE2X01VTFRJX0FSUkFZX19MQVlPVVQsIG9sZExheW91dCwgbmV3TGF5b3V0KTsKKwkJCWlmIChtc2dzID09IG51bGwpIG1zZ3MgPSBub3RpZmljYXRpb247IGVsc2UgbXNncy5hZGQobm90aWZpY2F0aW9uKTsKKwkJfQorCQlyZXR1cm4gbXNnczsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgdm9pZCBzZXRMYXlvdXQoTXVsdGlBcnJheUxheW91dCBuZXdMYXlvdXQpIHsKKwkJaWYgKG5ld0xheW91dCAhPSBsYXlvdXQpIHsKKwkJCU5vdGlmaWNhdGlvbkNoYWluIG1zZ3MgPSBudWxsOworCQkJaWYgKGxheW91dCAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdClsYXlvdXQpLmVJbnZlcnNlUmVtb3ZlKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UMTZfTVVMVElfQVJSQVlfX0xBWU9VVCwgbnVsbCwgbXNncyk7CisJCQlpZiAobmV3TGF5b3V0ICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KW5ld0xheW91dCkuZUludmVyc2VBZGQodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJTlQxNl9NVUxUSV9BUlJBWV9fTEFZT1VULCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldExheW91dChuZXdMYXlvdXQsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDE2X01VTFRJX0FSUkFZX19MQVlPVVQsIG5ld0xheW91dCwgbmV3TGF5b3V0KSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEVMaXN0PE9iamVjdD4gZ2V0RGF0YSgpIHsKKwkJaWYgKGRhdGEgPT0gbnVsbCkgeworCQkJZGF0YSA9IG5ldyBFRGF0YVR5cGVVbmlxdWVFTGlzdDxPYmplY3Q+KE9iamVjdC5jbGFzcywgdGhpcywgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDE2X01VTFRJX0FSUkFZX19EQVRBKTsKKwkJfQorCQlyZXR1cm4gZGF0YTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gZUludmVyc2VSZW1vdmUoSW50ZXJuYWxFT2JqZWN0IG90aGVyRW5kLCBpbnQgZmVhdHVyZUlELCBOb3RpZmljYXRpb25DaGFpbiBtc2dzKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJTlQxNl9NVUxUSV9BUlJBWV9fTEFZT1VUOgorCQkJCXJldHVybiBiYXNpY1NldExheW91dChudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UMTZfTVVMVElfQVJSQVlfX0xBWU9VVDoKKwkJCQlyZXR1cm4gZ2V0TGF5b3V0KCk7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJTlQxNl9NVUxUSV9BUlJBWV9fREFUQToKKwkJCQlyZXR1cm4gZ2V0RGF0YSgpOworCQl9CisJCXJldHVybiBzdXBlci5lR2V0KGZlYXR1cmVJRCwgcmVzb2x2ZSwgY29yZVR5cGUpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBTdXBwcmVzc1dhcm5pbmdzKCJ1bmNoZWNrZWQiKQorCUBPdmVycmlkZQorCXB1YmxpYyB2b2lkIGVTZXQoaW50IGZlYXR1cmVJRCwgT2JqZWN0IG5ld1ZhbHVlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJTlQxNl9NVUxUSV9BUlJBWV9fTEFZT1VUOgorCQkJCXNldExheW91dCgoTXVsdGlBcnJheUxheW91dCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UMTZfTVVMVElfQVJSQVlfX0RBVEE6CisJCQkJZ2V0RGF0YSgpLmNsZWFyKCk7CisJCQkJZ2V0RGF0YSgpLmFkZEFsbCgoQ29sbGVjdGlvbjw/IGV4dGVuZHMgT2JqZWN0PiluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVTZXQoZmVhdHVyZUlELCBuZXdWYWx1ZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVVuc2V0KGludCBmZWF0dXJlSUQpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDE2X01VTFRJX0FSUkFZX19MQVlPVVQ6CisJCQkJc2V0TGF5b3V0KChNdWx0aUFycmF5TGF5b3V0KW51bGwpOworCQkJCXJldHVybjsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDE2X01VTFRJX0FSUkFZX19EQVRBOgorCQkJCWdldERhdGEoKS5jbGVhcigpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UMTZfTVVMVElfQVJSQVlfX0xBWU9VVDoKKwkJCQlyZXR1cm4gbGF5b3V0ICE9IG51bGw7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJTlQxNl9NVUxUSV9BUlJBWV9fREFUQToKKwkJCQlyZXR1cm4gZGF0YSAhPSBudWxsICYmICFkYXRhLmlzRW1wdHkoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUlzU2V0KGZlYXR1cmVJRCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKKwkJaWYgKGVJc1Byb3h5KCkpIHJldHVybiBzdXBlci50b1N0cmluZygpOworCisJCVN0cmluZ0J1ZmZlciByZXN1bHQgPSBuZXcgU3RyaW5nQnVmZmVyKHN1cGVyLnRvU3RyaW5nKCkpOworCQlyZXN1bHQuYXBwZW5kKCIgKGRhdGE6ICIpOworCQlyZXN1bHQuYXBwZW5kKGRhdGEpOworCQlyZXN1bHQuYXBwZW5kKCcpJyk7CisJCXJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKKwl9CisKK30gLy9VSW50MTZNdWx0aUFycmF5SW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1VJbnQzMk11bHRpQXJyYXlJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvVUludDMyTXVsdGlBcnJheUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMDg0NjIwCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1VJbnQzMk11bHRpQXJyYXlJbXBsLmphdmEKQEAgLTAsMCArMSwyMjggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb25DaGFpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5FRGF0YVR5cGVVbmlxdWVFTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5NdWx0aUFycmF5TGF5b3V0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQzMk11bHRpQXJyYXk7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5VSW50MzIgTXVsdGkgQXJyYXk8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuVUludDMyTXVsdGlBcnJheUltcGwjZ2V0TGF5b3V0IDxlbT5MYXlvdXQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuVUludDMyTXVsdGlBcnJheUltcGwjZ2V0RGF0YSA8ZW0+RGF0YTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIFVJbnQzMk11bHRpQXJyYXlJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIFVJbnQzMk11bHRpQXJyYXkgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExheW91dCgpIDxlbT5MYXlvdXQ8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExheW91dCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE11bHRpQXJyYXlMYXlvdXQgbGF5b3V0OworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0RGF0YSgpIDxlbT5EYXRhPC9lbT59JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldERhdGEoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBFTGlzdDxPYmplY3Q+IGRhdGE7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgVUludDMyTXVsdGlBcnJheUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBTdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5VSU5UMzJfTVVMVElfQVJSQVk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE11bHRpQXJyYXlMYXlvdXQgZ2V0TGF5b3V0KCkgeworCQlyZXR1cm4gbGF5b3V0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBiYXNpY1NldExheW91dChNdWx0aUFycmF5TGF5b3V0IG5ld0xheW91dCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlNdWx0aUFycmF5TGF5b3V0IG9sZExheW91dCA9IGxheW91dDsKKwkJbGF5b3V0ID0gbmV3TGF5b3V0OworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpIHsKKwkJCUVOb3RpZmljYXRpb25JbXBsIG5vdGlmaWNhdGlvbiA9IG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UMzJfTVVMVElfQVJSQVlfX0xBWU9VVCwgb2xkTGF5b3V0LCBuZXdMYXlvdXQpOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldExheW91dChNdWx0aUFycmF5TGF5b3V0IG5ld0xheW91dCkgeworCQlpZiAobmV3TGF5b3V0ICE9IGxheW91dCkgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAobGF5b3V0ICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KWxheW91dCkuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJTlQzMl9NVUxUSV9BUlJBWV9fTEFZT1VULCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdMYXlvdXQgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3TGF5b3V0KS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDMyX01VTFRJX0FSUkFZX19MQVlPVVQsIG51bGwsIG1zZ3MpOworCQkJbXNncyA9IGJhc2ljU2V0TGF5b3V0KG5ld0xheW91dCwgbXNncyk7CisJCQlpZiAobXNncyAhPSBudWxsKSBtc2dzLmRpc3BhdGNoKCk7CisJCX0KKwkJZWxzZSBpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UMzJfTVVMVElfQVJSQVlfX0xBWU9VVCwgbmV3TGF5b3V0LCBuZXdMYXlvdXQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUxpc3Q8T2JqZWN0PiBnZXREYXRhKCkgeworCQlpZiAoZGF0YSA9PSBudWxsKSB7CisJCQlkYXRhID0gbmV3IEVEYXRhVHlwZVVuaXF1ZUVMaXN0PE9iamVjdD4oT2JqZWN0LmNsYXNzLCB0aGlzLCBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UMzJfTVVMVElfQVJSQVlfX0RBVEEpOworCQl9CisJCXJldHVybiBkYXRhOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBlSW52ZXJzZVJlbW92ZShJbnRlcm5hbEVPYmplY3Qgb3RoZXJFbmQsIGludCBmZWF0dXJlSUQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDMyX01VTFRJX0FSUkFZX19MQVlPVVQ6CisJCQkJcmV0dXJuIGJhc2ljU2V0TGF5b3V0KG51bGwsIG1zZ3MpOworCQl9CisJCXJldHVybiBzdXBlci5lSW52ZXJzZVJlbW92ZShvdGhlckVuZCwgZmVhdHVyZUlELCBtc2dzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJTlQzMl9NVUxUSV9BUlJBWV9fTEFZT1VUOgorCQkJCXJldHVybiBnZXRMYXlvdXQoKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDMyX01VTFRJX0FSUkFZX19EQVRBOgorCQkJCXJldHVybiBnZXREYXRhKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQFN1cHByZXNzV2FybmluZ3MoInVuY2hlY2tlZCIpCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDMyX01VTFRJX0FSUkFZX19MQVlPVVQ6CisJCQkJc2V0TGF5b3V0KChNdWx0aUFycmF5TGF5b3V0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJTlQzMl9NVUxUSV9BUlJBWV9fREFUQToKKwkJCQlnZXREYXRhKCkuY2xlYXIoKTsKKwkJCQlnZXREYXRhKCkuYWRkQWxsKChDb2xsZWN0aW9uPD8gZXh0ZW5kcyBPYmplY3Q+KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UMzJfTVVMVElfQVJSQVlfX0xBWU9VVDoKKwkJCQlzZXRMYXlvdXQoKE11bHRpQXJyYXlMYXlvdXQpbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UMzJfTVVMVElfQVJSQVlfX0RBVEE6CisJCQkJZ2V0RGF0YSgpLmNsZWFyKCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJTlQzMl9NVUxUSV9BUlJBWV9fTEFZT1VUOgorCQkJCXJldHVybiBsYXlvdXQgIT0gbnVsbDsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDMyX01VTFRJX0FSUkFZX19EQVRBOgorCQkJCXJldHVybiBkYXRhICE9IG51bGwgJiYgIWRhdGEuaXNFbXB0eSgpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAoZGF0YTogIik7CisJCXJlc3VsdC5hcHBlbmQoZGF0YSk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBVSW50MzJNdWx0aUFycmF5SW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1VJbnQ2NE11bHRpQXJyYXlJbXBsLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL2ltcGwvVUludDY0TXVsdGlBcnJheUltcGwuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kYjNkYjJlCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1VJbnQ2NE11bHRpQXJyYXlJbXBsLmphdmEKQEAgLTAsMCArMSwyMjggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb25DaGFpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5FRGF0YVR5cGVVbmlxdWVFTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5NdWx0aUFycmF5TGF5b3V0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQ2NE11bHRpQXJyYXk7CisKKy8qKgorICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKyAqIEFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCBvYmplY3QgJzxlbT48Yj5VSW50NjQgTXVsdGkgQXJyYXk8L2I+PC9lbT4nLgorICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisgKiA8cD4KKyAqIFRoZSBmb2xsb3dpbmcgZmVhdHVyZXMgYXJlIGltcGxlbWVudGVkOgorICogPHVsPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuVUludDY0TXVsdGlBcnJheUltcGwjZ2V0TGF5b3V0IDxlbT5MYXlvdXQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuVUludDY0TXVsdGlBcnJheUltcGwjZ2V0RGF0YSA8ZW0+RGF0YTwvZW0+fTwvbGk+CisgKiA8L3VsPgorICogPC9wPgorICoKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIFVJbnQ2NE11bHRpQXJyYXlJbXBsIGV4dGVuZHMgTWluaW1hbEVPYmplY3RJbXBsLkNvbnRhaW5lciBpbXBsZW1lbnRzIFVJbnQ2NE11bHRpQXJyYXkgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExheW91dCgpIDxlbT5MYXlvdXQ8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExheW91dCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE11bHRpQXJyYXlMYXlvdXQgbGF5b3V0OworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0RGF0YSgpIDxlbT5EYXRhPC9lbT59JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldERhdGEoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBFTGlzdDxPYmplY3Q+IGRhdGE7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgVUludDY0TXVsdGlBcnJheUltcGwoKSB7CisJCXN1cGVyKCk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHJvdGVjdGVkIEVDbGFzcyBlU3RhdGljQ2xhc3MoKSB7CisJCXJldHVybiBTdGRfZGF0YXR5cGVzUGFja2FnZS5MaXRlcmFscy5VSU5UNjRfTVVMVElfQVJSQVk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIE11bHRpQXJyYXlMYXlvdXQgZ2V0TGF5b3V0KCkgeworCQlyZXR1cm4gbGF5b3V0OworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBiYXNpY1NldExheW91dChNdWx0aUFycmF5TGF5b3V0IG5ld0xheW91dCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlNdWx0aUFycmF5TGF5b3V0IG9sZExheW91dCA9IGxheW91dDsKKwkJbGF5b3V0ID0gbmV3TGF5b3V0OworCQlpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpIHsKKwkJCUVOb3RpZmljYXRpb25JbXBsIG5vdGlmaWNhdGlvbiA9IG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UNjRfTVVMVElfQVJSQVlfX0xBWU9VVCwgb2xkTGF5b3V0LCBuZXdMYXlvdXQpOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldExheW91dChNdWx0aUFycmF5TGF5b3V0IG5ld0xheW91dCkgeworCQlpZiAobmV3TGF5b3V0ICE9IGxheW91dCkgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAobGF5b3V0ICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KWxheW91dCkuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJTlQ2NF9NVUxUSV9BUlJBWV9fTEFZT1VULCBudWxsLCBtc2dzKTsKKwkJCWlmIChuZXdMYXlvdXQgIT0gbnVsbCkKKwkJCQltc2dzID0gKChJbnRlcm5hbEVPYmplY3QpbmV3TGF5b3V0KS5lSW52ZXJzZUFkZCh0aGlzLCBFT1BQT1NJVEVfRkVBVFVSRV9CQVNFIC0gU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDY0X01VTFRJX0FSUkFZX19MQVlPVVQsIG51bGwsIG1zZ3MpOworCQkJbXNncyA9IGJhc2ljU2V0TGF5b3V0KG5ld0xheW91dCwgbXNncyk7CisJCQlpZiAobXNncyAhPSBudWxsKSBtc2dzLmRpc3BhdGNoKCk7CisJCX0KKwkJZWxzZSBpZiAoZU5vdGlmaWNhdGlvblJlcXVpcmVkKCkpCisJCQllTm90aWZ5KG5ldyBFTm90aWZpY2F0aW9uSW1wbCh0aGlzLCBOb3RpZmljYXRpb24uU0VULCBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UNjRfTVVMVElfQVJSQVlfX0xBWU9VVCwgbmV3TGF5b3V0LCBuZXdMYXlvdXQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUxpc3Q8T2JqZWN0PiBnZXREYXRhKCkgeworCQlpZiAoZGF0YSA9PSBudWxsKSB7CisJCQlkYXRhID0gbmV3IEVEYXRhVHlwZVVuaXF1ZUVMaXN0PE9iamVjdD4oT2JqZWN0LmNsYXNzLCB0aGlzLCBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UNjRfTVVMVElfQVJSQVlfX0RBVEEpOworCQl9CisJCXJldHVybiBkYXRhOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBOb3RpZmljYXRpb25DaGFpbiBlSW52ZXJzZVJlbW92ZShJbnRlcm5hbEVPYmplY3Qgb3RoZXJFbmQsIGludCBmZWF0dXJlSUQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDY0X01VTFRJX0FSUkFZX19MQVlPVVQ6CisJCQkJcmV0dXJuIGJhc2ljU2V0TGF5b3V0KG51bGwsIG1zZ3MpOworCQl9CisJCXJldHVybiBzdXBlci5lSW52ZXJzZVJlbW92ZShvdGhlckVuZCwgZmVhdHVyZUlELCBtc2dzKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgT2JqZWN0IGVHZXQoaW50IGZlYXR1cmVJRCwgYm9vbGVhbiByZXNvbHZlLCBib29sZWFuIGNvcmVUeXBlKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJTlQ2NF9NVUxUSV9BUlJBWV9fTEFZT1VUOgorCQkJCXJldHVybiBnZXRMYXlvdXQoKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDY0X01VTFRJX0FSUkFZX19EQVRBOgorCQkJCXJldHVybiBnZXREYXRhKCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVHZXQoZmVhdHVyZUlELCByZXNvbHZlLCBjb3JlVHlwZSk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQFN1cHByZXNzV2FybmluZ3MoInVuY2hlY2tlZCIpCisJQE92ZXJyaWRlCisJcHVibGljIHZvaWQgZVNldChpbnQgZmVhdHVyZUlELCBPYmplY3QgbmV3VmFsdWUpIHsKKwkJc3dpdGNoIChmZWF0dXJlSUQpIHsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDY0X01VTFRJX0FSUkFZX19MQVlPVVQ6CisJCQkJc2V0TGF5b3V0KChNdWx0aUFycmF5TGF5b3V0KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJTlQ2NF9NVUxUSV9BUlJBWV9fREFUQToKKwkJCQlnZXREYXRhKCkuY2xlYXIoKTsKKwkJCQlnZXREYXRhKCkuYWRkQWxsKChDb2xsZWN0aW9uPD8gZXh0ZW5kcyBPYmplY3Q+KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UNjRfTVVMVElfQVJSQVlfX0xBWU9VVDoKKwkJCQlzZXRMYXlvdXQoKE11bHRpQXJyYXlMYXlvdXQpbnVsbCk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UNjRfTVVMVElfQVJSQVlfX0RBVEE6CisJCQkJZ2V0RGF0YSgpLmNsZWFyKCk7CisJCQkJcmV0dXJuOworCQl9CisJCXN1cGVyLmVVbnNldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGVJc1NldChpbnQgZmVhdHVyZUlEKSB7CisJCXN3aXRjaCAoZmVhdHVyZUlEKSB7CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJTlQ2NF9NVUxUSV9BUlJBWV9fTEFZT1VUOgorCQkJCXJldHVybiBsYXlvdXQgIT0gbnVsbDsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDY0X01VTFRJX0FSUkFZX19EQVRBOgorCQkJCXJldHVybiBkYXRhICE9IG51bGwgJiYgIWRhdGEuaXNFbXB0eSgpOworCQl9CisJCXJldHVybiBzdXBlci5lSXNTZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgeworCQlpZiAoZUlzUHJveHkoKSkgcmV0dXJuIHN1cGVyLnRvU3RyaW5nKCk7CisKKwkJU3RyaW5nQnVmZmVyIHJlc3VsdCA9IG5ldyBTdHJpbmdCdWZmZXIoc3VwZXIudG9TdHJpbmcoKSk7CisJCXJlc3VsdC5hcHBlbmQoIiAoZGF0YTogIik7CisJCXJlc3VsdC5hcHBlbmQoZGF0YSk7CisJCXJlc3VsdC5hcHBlbmQoJyknKTsKKwkJcmV0dXJuIHJlc3VsdC50b1N0cmluZygpOworCX0KKworfSAvLyBVSW50NjRNdWx0aUFycmF5SW1wbApkaWZmIC0tZ2l0IGEvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy9pbXBsL1VJbnQ4TXVsdGlBcnJheUltcGwuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9VSW50OE11bHRpQXJyYXlJbXBsLmphdmEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjA5NjgwZgotLS0gL2Rldi9udWxsCisrKyBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvaW1wbC9VSW50OE11bHRpQXJyYXlJbXBsLmphdmEKQEAgLTAsMCArMSwyMjggQEAKKy8qKgorICovCitwYWNrYWdlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGw7CisKK2ltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbjsKKworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24ubm90aWZ5Lk5vdGlmaWNhdGlvbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmljYXRpb25DaGFpbjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLnV0aWwuRUxpc3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVDbGFzczsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuSW50ZXJuYWxFT2JqZWN0OworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLkVOb3RpZmljYXRpb25JbXBsOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS5pbXBsLk1pbmltYWxFT2JqZWN0SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUudXRpbC5FRGF0YVR5cGVVbmlxdWVFTGlzdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5NdWx0aUFycmF5TGF5b3V0OworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlN0ZF9kYXRhdHlwZXNQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQ4TXVsdGlBcnJheTsKKworLyoqCisgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorICogQW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIG9iamVjdCAnPGVtPjxiPlVJbnQ4IE11bHRpIEFycmF5PC9iPjwvZW0+Jy4KKyAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorICogPHA+CisgKiBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGFyZSBpbXBsZW1lbnRlZDoKKyAqIDx1bD4KKyAqICAgPGxpPntAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5pbXBsLlVJbnQ4TXVsdGlBcnJheUltcGwjZ2V0TGF5b3V0IDxlbT5MYXlvdXQ8L2VtPn08L2xpPgorICogICA8bGk+e0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLmltcGwuVUludDhNdWx0aUFycmF5SW1wbCNnZXREYXRhIDxlbT5EYXRhPC9lbT59PC9saT4KKyAqIDwvdWw+CisgKiA8L3A+CisgKgorICogQGdlbmVyYXRlZAorICovCitwdWJsaWMgY2xhc3MgVUludDhNdWx0aUFycmF5SW1wbCBleHRlbmRzIE1pbmltYWxFT2JqZWN0SW1wbC5Db250YWluZXIgaW1wbGVtZW50cyBVSW50OE11bHRpQXJyYXkgeworCS8qKgorCSAqIFRoZSBjYWNoZWQgdmFsdWUgb2YgdGhlICd7QGxpbmsgI2dldExheW91dCgpIDxlbT5MYXlvdXQ8L2VtPn0nIGNvbnRhaW5tZW50IHJlZmVyZW5jZS4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldExheW91dCgpCisJICogQGdlbmVyYXRlZAorCSAqIEBvcmRlcmVkCisJICovCisJcHJvdGVjdGVkIE11bHRpQXJyYXlMYXlvdXQgbGF5b3V0OworCisJLyoqCisJICogVGhlIGNhY2hlZCB2YWx1ZSBvZiB0aGUgJ3tAbGluayAjZ2V0RGF0YSgpIDxlbT5EYXRhPC9lbT59JyBhdHRyaWJ1dGUgbGlzdC4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBzZWUgI2dldERhdGEoKQorCSAqIEBnZW5lcmF0ZWQKKwkgKiBAb3JkZXJlZAorCSAqLworCXByb3RlY3RlZCBFTGlzdDxPYmplY3Q+IGRhdGE7CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwcm90ZWN0ZWQgVUludDhNdWx0aUFycmF5SW1wbCgpIHsKKwkJc3VwZXIoKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgRUNsYXNzIGVTdGF0aWNDbGFzcygpIHsKKwkJcmV0dXJuIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkxpdGVyYWxzLlVJTlQ4X01VTFRJX0FSUkFZOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBNdWx0aUFycmF5TGF5b3V0IGdldExheW91dCgpIHsKKwkJcmV0dXJuIGxheW91dDsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgTm90aWZpY2F0aW9uQ2hhaW4gYmFzaWNTZXRMYXlvdXQoTXVsdGlBcnJheUxheW91dCBuZXdMYXlvdXQsIE5vdGlmaWNhdGlvbkNoYWluIG1zZ3MpIHsKKwkJTXVsdGlBcnJheUxheW91dCBvbGRMYXlvdXQgPSBsYXlvdXQ7CisJCWxheW91dCA9IG5ld0xheW91dDsKKwkJaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKSB7CisJCQlFTm90aWZpY2F0aW9uSW1wbCBub3RpZmljYXRpb24gPSBuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDhfTVVMVElfQVJSQVlfX0xBWU9VVCwgb2xkTGF5b3V0LCBuZXdMYXlvdXQpOworCQkJaWYgKG1zZ3MgPT0gbnVsbCkgbXNncyA9IG5vdGlmaWNhdGlvbjsgZWxzZSBtc2dzLmFkZChub3RpZmljYXRpb24pOworCQl9CisJCXJldHVybiBtc2dzOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyB2b2lkIHNldExheW91dChNdWx0aUFycmF5TGF5b3V0IG5ld0xheW91dCkgeworCQlpZiAobmV3TGF5b3V0ICE9IGxheW91dCkgeworCQkJTm90aWZpY2F0aW9uQ2hhaW4gbXNncyA9IG51bGw7CisJCQlpZiAobGF5b3V0ICE9IG51bGwpCisJCQkJbXNncyA9ICgoSW50ZXJuYWxFT2JqZWN0KWxheW91dCkuZUludmVyc2VSZW1vdmUodGhpcywgRU9QUE9TSVRFX0ZFQVRVUkVfQkFTRSAtIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJTlQ4X01VTFRJX0FSUkFZX19MQVlPVVQsIG51bGwsIG1zZ3MpOworCQkJaWYgKG5ld0xheW91dCAhPSBudWxsKQorCQkJCW1zZ3MgPSAoKEludGVybmFsRU9iamVjdCluZXdMYXlvdXQpLmVJbnZlcnNlQWRkKHRoaXMsIEVPUFBPU0lURV9GRUFUVVJFX0JBU0UgLSBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UOF9NVUxUSV9BUlJBWV9fTEFZT1VULCBudWxsLCBtc2dzKTsKKwkJCW1zZ3MgPSBiYXNpY1NldExheW91dChuZXdMYXlvdXQsIG1zZ3MpOworCQkJaWYgKG1zZ3MgIT0gbnVsbCkgbXNncy5kaXNwYXRjaCgpOworCQl9CisJCWVsc2UgaWYgKGVOb3RpZmljYXRpb25SZXF1aXJlZCgpKQorCQkJZU5vdGlmeShuZXcgRU5vdGlmaWNhdGlvbkltcGwodGhpcywgTm90aWZpY2F0aW9uLlNFVCwgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDhfTVVMVElfQVJSQVlfX0xBWU9VVCwgbmV3TGF5b3V0LCBuZXdMYXlvdXQpKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgRUxpc3Q8T2JqZWN0PiBnZXREYXRhKCkgeworCQlpZiAoZGF0YSA9PSBudWxsKSB7CisJCQlkYXRhID0gbmV3IEVEYXRhVHlwZVVuaXF1ZUVMaXN0PE9iamVjdD4oT2JqZWN0LmNsYXNzLCB0aGlzLCBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UOF9NVUxUSV9BUlJBWV9fREFUQSk7CisJCX0KKwkJcmV0dXJuIGRhdGE7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE5vdGlmaWNhdGlvbkNoYWluIGVJbnZlcnNlUmVtb3ZlKEludGVybmFsRU9iamVjdCBvdGhlckVuZCwgaW50IGZlYXR1cmVJRCwgTm90aWZpY2F0aW9uQ2hhaW4gbXNncykgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UOF9NVUxUSV9BUlJBWV9fTEFZT1VUOgorCQkJCXJldHVybiBiYXNpY1NldExheW91dChudWxsLCBtc2dzKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUludmVyc2VSZW1vdmUob3RoZXJFbmQsIGZlYXR1cmVJRCwgbXNncyk7CisJfQorCisJLyoqCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIE9iamVjdCBlR2V0KGludCBmZWF0dXJlSUQsIGJvb2xlYW4gcmVzb2x2ZSwgYm9vbGVhbiBjb3JlVHlwZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UOF9NVUxUSV9BUlJBWV9fTEFZT1VUOgorCQkJCXJldHVybiBnZXRMYXlvdXQoKTsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDhfTVVMVElfQVJSQVlfX0RBVEE6CisJCQkJcmV0dXJuIGdldERhdGEoKTsKKwkJfQorCQlyZXR1cm4gc3VwZXIuZUdldChmZWF0dXJlSUQsIHJlc29sdmUsIGNvcmVUeXBlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAU3VwcHJlc3NXYXJuaW5ncygidW5jaGVja2VkIikKKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlU2V0KGludCBmZWF0dXJlSUQsIE9iamVjdCBuZXdWYWx1ZSkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UOF9NVUxUSV9BUlJBWV9fTEFZT1VUOgorCQkJCXNldExheW91dCgoTXVsdGlBcnJheUxheW91dCluZXdWYWx1ZSk7CisJCQkJcmV0dXJuOworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UOF9NVUxUSV9BUlJBWV9fREFUQToKKwkJCQlnZXREYXRhKCkuY2xlYXIoKTsKKwkJCQlnZXREYXRhKCkuYWRkQWxsKChDb2xsZWN0aW9uPD8gZXh0ZW5kcyBPYmplY3Q+KW5ld1ZhbHVlKTsKKwkJCQlyZXR1cm47CisJCX0KKwkJc3VwZXIuZVNldChmZWF0dXJlSUQsIG5ld1ZhbHVlKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgdm9pZCBlVW5zZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UOF9NVUxUSV9BUlJBWV9fTEFZT1VUOgorCQkJCXNldExheW91dCgoTXVsdGlBcnJheUxheW91dCludWxsKTsKKwkJCQlyZXR1cm47CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLlVJTlQ4X01VTFRJX0FSUkFZX19EQVRBOgorCQkJCWdldERhdGEoKS5jbGVhcigpOworCQkJCXJldHVybjsKKwkJfQorCQlzdXBlci5lVW5zZXQoZmVhdHVyZUlEKTsKKwl9CisKKwkvKioKKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwdWJsaWMgYm9vbGVhbiBlSXNTZXQoaW50IGZlYXR1cmVJRCkgeworCQlzd2l0Y2ggKGZlYXR1cmVJRCkgeworCQkJY2FzZSBTdGRfZGF0YXR5cGVzUGFja2FnZS5VSU5UOF9NVUxUSV9BUlJBWV9fTEFZT1VUOgorCQkJCXJldHVybiBsYXlvdXQgIT0gbnVsbDsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDhfTVVMVElfQVJSQVlfX0RBVEE6CisJCQkJcmV0dXJuIGRhdGEgIT0gbnVsbCAmJiAhZGF0YS5pc0VtcHR5KCk7CisJCX0KKwkJcmV0dXJuIHN1cGVyLmVJc1NldChmZWF0dXJlSUQpOworCX0KKworCS8qKgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CisJCWlmIChlSXNQcm94eSgpKSByZXR1cm4gc3VwZXIudG9TdHJpbmcoKTsKKworCQlTdHJpbmdCdWZmZXIgcmVzdWx0ID0gbmV3IFN0cmluZ0J1ZmZlcihzdXBlci50b1N0cmluZygpKTsKKwkJcmVzdWx0LmFwcGVuZCgiIChkYXRhOiAiKTsKKwkJcmVzdWx0LmFwcGVuZChkYXRhKTsKKwkJcmVzdWx0LmFwcGVuZCgnKScpOworCQlyZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CisJfQorCit9IC8vIFVJbnQ4TXVsdGlBcnJheUltcGwKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvdXRpbC9TdGRfZGF0YXR5cGVzQWRhcHRlckZhY3RvcnkuamF2YSBiL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvdXRpbC9TdGRfZGF0YXR5cGVzQWRhcHRlckZhY3RvcnkuamF2YQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kZGUzMmQ4Ci0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3NyYy9vcmcvZWNsaXBzZS9wYXB5cnVzL1JvYm90TUxMaWJyYXJpZXMvUm9ib3RNTF9Nb2RlbExpYnJhcnkvUm9ib3RNTF9EYXRhVHlwZXMvc3RkX2RhdGF0eXBlcy91dGlsL1N0ZF9kYXRhdHlwZXNBZGFwdGVyRmFjdG9yeS5qYXZhCkBAIC0wLDAgKzEsMzY5IEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy51dGlsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi5ub3RpZnkuQWRhcHRlcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5Ob3RpZmllcjsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuY29tbW9uLm5vdGlmeS5pbXBsLkFkYXB0ZXJGYWN0b3J5SW1wbDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy4qOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBUaGUgPGI+QWRhcHRlciBGYWN0b3J5PC9iPiBmb3IgdGhlIG1vZGVsLgorICogSXQgcHJvdmlkZXMgYW4gYWRhcHRlciA8Y29kZT5jcmVhdGVYWFg8L2NvZGU+IG1ldGhvZCBmb3IgZWFjaCBjbGFzcyBvZiB0aGUgbW9kZWwuCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIFN0ZF9kYXRhdHlwZXNBZGFwdGVyRmFjdG9yeSBleHRlbmRzIEFkYXB0ZXJGYWN0b3J5SW1wbCB7CisJLyoqCisJICogVGhlIGNhY2hlZCBtb2RlbCBwYWNrYWdlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgU3RkX2RhdGF0eXBlc1BhY2thZ2UgbW9kZWxQYWNrYWdlOworCisJLyoqCisJICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgYWRhcHRlciBmYWN0b3J5LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTdGRfZGF0YXR5cGVzQWRhcHRlckZhY3RvcnkoKSB7CisJCWlmIChtb2RlbFBhY2thZ2UgPT0gbnVsbCkgeworCQkJbW9kZWxQYWNrYWdlID0gU3RkX2RhdGF0eXBlc1BhY2thZ2UuZUlOU1RBTkNFOworCQl9CisJfQorCisJLyoqCisJICogUmV0dXJucyB3aGV0aGVyIHRoaXMgZmFjdG9yeSBpcyBhcHBsaWNhYmxlIGZvciB0aGUgdHlwZSBvZiB0aGUgb2JqZWN0LgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIDxjb2RlPnRydWU8L2NvZGU+IGlmIHRoZSBvYmplY3QgaXMgZWl0aGVyIHRoZSBtb2RlbCdzIHBhY2thZ2Ugb3IgaXMgYW4gaW5zdGFuY2Ugb2JqZWN0IG9mIHRoZSBtb2RlbC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHdoZXRoZXIgdGhpcyBmYWN0b3J5IGlzIGFwcGxpY2FibGUgZm9yIHRoZSB0eXBlIG9mIHRoZSBvYmplY3QuCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBib29sZWFuIGlzRmFjdG9yeUZvclR5cGUoT2JqZWN0IG9iamVjdCkgeworCQlpZiAob2JqZWN0ID09IG1vZGVsUGFja2FnZSkgeworCQkJcmV0dXJuIHRydWU7CisJCX0KKwkJaWYgKG9iamVjdCBpbnN0YW5jZW9mIEVPYmplY3QpIHsKKwkJCXJldHVybiAoKEVPYmplY3Qpb2JqZWN0KS5lQ2xhc3MoKS5nZXRFUGFja2FnZSgpID09IG1vZGVsUGFja2FnZTsKKwkJfQorCQlyZXR1cm4gZmFsc2U7CisJfQorCisJLyoqCisJICogVGhlIHN3aXRjaCB0aGF0IGRlbGVnYXRlcyB0byB0aGUgPGNvZGU+Y3JlYXRlWFhYPC9jb2RlPiBtZXRob2RzLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBTdGRfZGF0YXR5cGVzU3dpdGNoPEFkYXB0ZXI+IG1vZGVsU3dpdGNoID0KKwkJCW5ldyBTdGRfZGF0YXR5cGVzU3dpdGNoPEFkYXB0ZXI+KCkgeworCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlSGVhZGVyKEhlYWRlciBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlSGVhZGVyQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlTXVsdGlBcnJheURpbWVuc2lvbihNdWx0aUFycmF5RGltZW5zaW9uIG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVNdWx0aUFycmF5RGltZW5zaW9uQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlTXVsdGlBcnJheUxheW91dChNdWx0aUFycmF5TGF5b3V0IG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVNdWx0aUFycmF5TGF5b3V0QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlQnl0ZU11bHRpQXJyYXkoQnl0ZU11bHRpQXJyYXkgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUJ5dGVNdWx0aUFycmF5QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlQ29sb3JSR0JBKENvbG9yUkdCQSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlQ29sb3JSR0JBQWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlRmxvYXQzMk11bHRpQXJyYXkoRmxvYXQzMk11bHRpQXJyYXkgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUZsb2F0MzJNdWx0aUFycmF5QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlSW50MzJNdWx0aUFycmF5KEludDMyTXVsdGlBcnJheSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlSW50MzJNdWx0aUFycmF5QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlSW50OE11bHRpQXJyYXkoSW50OE11bHRpQXJyYXkgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUludDhNdWx0aUFycmF5QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlSW50MTZNdWx0aUFycmF5KEludDE2TXVsdGlBcnJheSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlSW50MTZNdWx0aUFycmF5QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlSW50NjRNdWx0aUFycmF5KEludDY0TXVsdGlBcnJheSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlSW50NjRNdWx0aUFycmF5QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlRmxvYXQ2NE11bHRpQXJyYXkoRmxvYXQ2NE11bHRpQXJyYXkgb2JqZWN0KSB7CisJCQkJcmV0dXJuIGNyZWF0ZUZsb2F0NjRNdWx0aUFycmF5QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlVUludDY0TXVsdGlBcnJheShVSW50NjRNdWx0aUFycmF5IG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVVSW50NjRNdWx0aUFycmF5QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlVUludDE2TXVsdGlBcnJheShVSW50MTZNdWx0aUFycmF5IG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVVSW50MTZNdWx0aUFycmF5QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlVUludDMyTXVsdGlBcnJheShVSW50MzJNdWx0aUFycmF5IG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVVSW50MzJNdWx0aUFycmF5QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBjYXNlVUludDhNdWx0aUFycmF5KFVJbnQ4TXVsdGlBcnJheSBvYmplY3QpIHsKKwkJCQlyZXR1cm4gY3JlYXRlVUludDhNdWx0aUFycmF5QWRhcHRlcigpOworCQkJfQorCQkJQE92ZXJyaWRlCisJCQlwdWJsaWMgQWRhcHRlciBkZWZhdWx0Q2FzZShFT2JqZWN0IG9iamVjdCkgeworCQkJCXJldHVybiBjcmVhdGVFT2JqZWN0QWRhcHRlcigpOworCQkJfQorCQl9OworCisJLyoqCisJICogQ3JlYXRlcyBhbiBhZGFwdGVyIGZvciB0aGUgPGNvZGU+dGFyZ2V0PC9jb2RlPi4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSB0YXJnZXQgdGhlIG9iamVjdCB0byBhZGFwdC4KKwkgKiBAcmV0dXJuIHRoZSBhZGFwdGVyIGZvciB0aGUgPGNvZGU+dGFyZ2V0PC9jb2RlPi4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJQE92ZXJyaWRlCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlQWRhcHRlcihOb3RpZmllciB0YXJnZXQpIHsKKwkJcmV0dXJuIG1vZGVsU3dpdGNoLmRvU3dpdGNoKChFT2JqZWN0KXRhcmdldCk7CisJfQorCisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlciA8ZW0+SGVhZGVyPC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkhlYWRlcgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVIZWFkZXJBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLk11bHRpQXJyYXlEaW1lbnNpb24gPGVtPk11bHRpIEFycmF5IERpbWVuc2lvbjwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5NdWx0aUFycmF5RGltZW5zaW9uCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZU11bHRpQXJyYXlEaW1lbnNpb25BZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLk11bHRpQXJyYXlMYXlvdXQgPGVtPk11bHRpIEFycmF5IExheW91dDwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5NdWx0aUFycmF5TGF5b3V0CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZU11bHRpQXJyYXlMYXlvdXRBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkJ5dGVNdWx0aUFycmF5IDxlbT5CeXRlIE11bHRpIEFycmF5PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkJ5dGVNdWx0aUFycmF5CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUJ5dGVNdWx0aUFycmF5QWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5Db2xvclJHQkEgPGVtPkNvbG9yIFJHQkE8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuQ29sb3JSR0JBCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUNvbG9yUkdCQUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMk11bHRpQXJyYXkgPGVtPkZsb2F0MzIgTXVsdGkgQXJyYXk8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuRmxvYXQzMk11bHRpQXJyYXkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlRmxvYXQzMk11bHRpQXJyYXlBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkludDMyTXVsdGlBcnJheSA8ZW0+SW50MzIgTXVsdGkgQXJyYXk8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSW50MzJNdWx0aUFycmF5CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUludDMyTXVsdGlBcnJheUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSW50OE11bHRpQXJyYXkgPGVtPkludDggTXVsdGkgQXJyYXk8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSW50OE11bHRpQXJyYXkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlSW50OE11bHRpQXJyYXlBZGFwdGVyKCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBDcmVhdGVzIGEgbmV3IGFkYXB0ZXIgZm9yIGFuIG9iamVjdCBvZiBjbGFzcyAne0BsaW5rIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLkludDE2TXVsdGlBcnJheSA8ZW0+SW50MTYgTXVsdGkgQXJyYXk8L2VtPn0nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbCBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgaWdub3JlIGNhc2VzOworCSAqIGl0J3MgdXNlZnVsIHRvIGlnbm9yZSBhIGNhc2Ugd2hlbiBpbmhlcml0YW5jZSB3aWxsIGNhdGNoIGFsbCB0aGUgY2FzZXMgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEByZXR1cm4gdGhlIG5ldyBhZGFwdGVyLgorCSAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSW50MTZNdWx0aUFycmF5CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBBZGFwdGVyIGNyZWF0ZUludDE2TXVsdGlBcnJheUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuSW50NjRNdWx0aUFycmF5IDxlbT5JbnQ2NCBNdWx0aSBBcnJheTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5JbnQ2NE11bHRpQXJyYXkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlSW50NjRNdWx0aUFycmF5QWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciBhbiBvYmplY3Qgb2YgY2xhc3MgJ3tAbGluayBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDY0TXVsdGlBcnJheSA8ZW0+RmxvYXQ2NCBNdWx0aSBBcnJheTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5GbG9hdDY0TXVsdGlBcnJheQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgQWRhcHRlciBjcmVhdGVGbG9hdDY0TXVsdGlBcnJheUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDY0TXVsdGlBcnJheSA8ZW0+VUludDY0IE11bHRpIEFycmF5PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQ2NE11bHRpQXJyYXkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlVUludDY0TXVsdGlBcnJheUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDE2TXVsdGlBcnJheSA8ZW0+VUludDE2IE11bHRpIEFycmF5PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQxNk11bHRpQXJyYXkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlVUludDE2TXVsdGlBcnJheUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDMyTXVsdGlBcnJheSA8ZW0+VUludDMyIE11bHRpIEFycmF5PC9lbT59Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGlnbm9yZSBjYXNlczsKKwkgKiBpdCdzIHVzZWZ1bCB0byBpZ25vcmUgYSBjYXNlIHdoZW4gaW5oZXJpdGFuY2Ugd2lsbCBjYXRjaCBhbGwgdGhlIGNhc2VzIGFueXdheS4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAc2VlIG9yZy5lY2xpcHNlLnBhcHlydXMuUm9ib3RNTExpYnJhcmllcy5Sb2JvdE1MX01vZGVsTGlicmFyeS5Sb2JvdE1MX0RhdGFUeXBlcy5zdGRfZGF0YXR5cGVzLlVJbnQzMk11bHRpQXJyYXkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlVUludDMyTXVsdGlBcnJheUFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIENyZWF0ZXMgYSBuZXcgYWRhcHRlciBmb3IgYW4gb2JqZWN0IG9mIGNsYXNzICd7QGxpbmsgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuVUludDhNdWx0aUFycmF5IDxlbT5VSW50OCBNdWx0aSBBcnJheTwvZW0+fScuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsIHNvIHRoYXQgd2UgY2FuIGVhc2lseSBpZ25vcmUgY2FzZXM7CisJICogaXQncyB1c2VmdWwgdG8gaWdub3JlIGEgY2FzZSB3aGVuIGluaGVyaXRhbmNlIHdpbGwgY2F0Y2ggYWxsIHRoZSBjYXNlcyBhbnl3YXkuCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHJldHVybiB0aGUgbmV3IGFkYXB0ZXIuCisJICogQHNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy5VSW50OE11bHRpQXJyYXkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlVUludDhNdWx0aUFycmF5QWRhcHRlcigpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogQ3JlYXRlcyBhIG5ldyBhZGFwdGVyIGZvciB0aGUgZGVmYXVsdCBjYXNlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBuZXcgYWRhcHRlci4KKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIEFkYXB0ZXIgY3JlYXRlRU9iamVjdEFkYXB0ZXIoKSB7CisJCXJldHVybiBudWxsOworCX0KKworfSAvLyBTdGRfZGF0YXR5cGVzQWRhcHRlckZhY3RvcnkKZGlmZiAtLWdpdCBhL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC9zcmMvb3JnL2VjbGlwc2UvcGFweXJ1cy9Sb2JvdE1MTGlicmFyaWVzL1JvYm90TUxfTW9kZWxMaWJyYXJ5L1JvYm90TUxfRGF0YVR5cGVzL3N0ZF9kYXRhdHlwZXMvdXRpbC9TdGRfZGF0YXR5cGVzU3dpdGNoLmphdmEgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL3V0aWwvU3RkX2RhdGF0eXBlc1N3aXRjaC5qYXZhCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVjNTA0ZjIKLS0tIC9kZXYvbnVsbAorKysgYi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3JjL29yZy9lY2xpcHNlL3BhcHlydXMvUm9ib3RNTExpYnJhcmllcy9Sb2JvdE1MX01vZGVsTGlicmFyeS9Sb2JvdE1MX0RhdGFUeXBlcy9zdGRfZGF0YXR5cGVzL3V0aWwvU3RkX2RhdGF0eXBlc1N3aXRjaC5qYXZhCkBAIC0wLDAgKzEsNDAxIEBACisvKioKKyAqLworcGFja2FnZSBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy51dGlsOworCitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3Q7CitpbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVQYWNrYWdlOworaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5lY29yZS51dGlsLlN3aXRjaDsKK2ltcG9ydCBvcmcuZWNsaXBzZS5wYXB5cnVzLlJvYm90TUxMaWJyYXJpZXMuUm9ib3RNTF9Nb2RlbExpYnJhcnkuUm9ib3RNTF9EYXRhVHlwZXMuc3RkX2RhdGF0eXBlcy4qOworCisvKioKKyAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisgKiBUaGUgPGI+U3dpdGNoPC9iPiBmb3IgdGhlIG1vZGVsJ3MgaW5oZXJpdGFuY2UgaGllcmFyY2h5LgorICogSXQgc3VwcG9ydHMgdGhlIGNhbGwge0BsaW5rICNkb1N3aXRjaChFT2JqZWN0KSBkb1N3aXRjaChvYmplY3QpfSB0byBpbnZva2UgdGhlIDxjb2RlPmNhc2VYWFg8L2NvZGU+IG1ldGhvZCBmb3IgZWFjaCBjbGFzcyBvZiB0aGUgbW9kZWwsCisgKiBzdGFydGluZyB3aXRoIHRoZSBhY3R1YWwgY2xhc3Mgb2YgdGhlIG9iamVjdAorICogYW5kIHByb2NlZWRpbmcgdXAgdGhlIGluaGVyaXRhbmNlIGhpZXJhcmNoeQorICogdW50aWwgYSBub24tbnVsbCByZXN1bHQgaXMgcmV0dXJuZWQsCisgKiB3aGljaCBpcyB0aGUgcmVzdWx0IG9mIHRoZSBzd2l0Y2guCisgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKyAqIEBzZWUgb3JnLmVjbGlwc2UucGFweXJ1cy5Sb2JvdE1MTGlicmFyaWVzLlJvYm90TUxfTW9kZWxMaWJyYXJ5LlJvYm90TUxfRGF0YVR5cGVzLnN0ZF9kYXRhdHlwZXMuU3RkX2RhdGF0eXBlc1BhY2thZ2UKKyAqIEBnZW5lcmF0ZWQKKyAqLworcHVibGljIGNsYXNzIFN0ZF9kYXRhdHlwZXNTd2l0Y2g8VD4gZXh0ZW5kcyBTd2l0Y2g8VD4geworCS8qKgorCSAqIFRoZSBjYWNoZWQgbW9kZWwgcGFja2FnZQorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXByb3RlY3RlZCBzdGF0aWMgU3RkX2RhdGF0eXBlc1BhY2thZ2UgbW9kZWxQYWNrYWdlOworCisJLyoqCisJICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgc3dpdGNoLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBTdGRfZGF0YXR5cGVzU3dpdGNoKCkgeworCQlpZiAobW9kZWxQYWNrYWdlID09IG51bGwpIHsKKwkJCW1vZGVsUGFja2FnZSA9IFN0ZF9kYXRhdHlwZXNQYWNrYWdlLmVJTlNUQU5DRTsKKwkJfQorCX0KKworCS8qKgorCSAqIENoZWNrcyB3aGV0aGVyIHRoaXMgaXMgYSBzd2l0Y2ggZm9yIHRoZSBnaXZlbiBwYWNrYWdlLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtZXRlciBlUGFja2FnZSB0aGUgcGFja2FnZSBpbiBxdWVzdGlvbi4KKwkgKiBAcmV0dXJuIHdoZXRoZXIgdGhpcyBpcyBhIHN3aXRjaCBmb3IgdGhlIGdpdmVuIHBhY2thZ2UuCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXByb3RlY3RlZCBib29sZWFuIGlzU3dpdGNoRm9yKEVQYWNrYWdlIGVQYWNrYWdlKSB7CisJCXJldHVybiBlUGFja2FnZSA9PSBtb2RlbFBhY2thZ2U7CisJfQorCisJLyoqCisJICogQ2FsbHMgPGNvZGU+Y2FzZVhYWDwvY29kZT4gZm9yIGVhY2ggY2xhc3Mgb2YgdGhlIG1vZGVsIHVudGlsIG9uZSByZXR1cm5zIGEgbm9uIG51bGwgcmVzdWx0OyBpdCB5aWVsZHMgdGhhdCByZXN1bHQuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcmV0dXJuIHRoZSBmaXJzdCBub24tbnVsbCByZXN1bHQgcmV0dXJuZWQgYnkgYSA8Y29kZT5jYXNlWFhYPC9jb2RlPiBjYWxsLgorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlAT3ZlcnJpZGUKKwlwcm90ZWN0ZWQgVCBkb1N3aXRjaChpbnQgY2xhc3NpZmllcklELCBFT2JqZWN0IHRoZUVPYmplY3QpIHsKKwkJc3dpdGNoIChjbGFzc2lmaWVySUQpIHsKKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSEVBREVSOiB7CisJCQkJSGVhZGVyIGhlYWRlciA9IChIZWFkZXIpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VIZWFkZXIoaGVhZGVyKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLk1VTFRJX0FSUkFZX0RJTUVOU0lPTjogeworCQkJCU11bHRpQXJyYXlEaW1lbnNpb24gbXVsdGlBcnJheURpbWVuc2lvbiA9IChNdWx0aUFycmF5RGltZW5zaW9uKXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlTXVsdGlBcnJheURpbWVuc2lvbihtdWx0aUFycmF5RGltZW5zaW9uKTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLk1VTFRJX0FSUkFZX0xBWU9VVDogeworCQkJCU11bHRpQXJyYXlMYXlvdXQgbXVsdGlBcnJheUxheW91dCA9IChNdWx0aUFycmF5TGF5b3V0KXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlTXVsdGlBcnJheUxheW91dChtdWx0aUFycmF5TGF5b3V0KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkJZVEVfTVVMVElfQVJSQVk6IHsKKwkJCQlCeXRlTXVsdGlBcnJheSBieXRlTXVsdGlBcnJheSA9IChCeXRlTXVsdGlBcnJheSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZUJ5dGVNdWx0aUFycmF5KGJ5dGVNdWx0aUFycmF5KTsKKwkJCQlpZiAocmVzdWx0ID09IG51bGwpIHJlc3VsdCA9IGRlZmF1bHRDYXNlKHRoZUVPYmplY3QpOworCQkJCXJldHVybiByZXN1bHQ7CisJCQl9CisJCQljYXNlIFN0ZF9kYXRhdHlwZXNQYWNrYWdlLkNPTE9SX1JHQkE6IHsKKwkJCQlDb2xvclJHQkEgY29sb3JSR0JBID0gKENvbG9yUkdCQSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZUNvbG9yUkdCQShjb2xvclJHQkEpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuRkxPQVQzMl9NVUxUSV9BUlJBWTogeworCQkJCUZsb2F0MzJNdWx0aUFycmF5IGZsb2F0MzJNdWx0aUFycmF5ID0gKEZsb2F0MzJNdWx0aUFycmF5KXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlRmxvYXQzMk11bHRpQXJyYXkoZmxvYXQzMk11bHRpQXJyYXkpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UMzJfTVVMVElfQVJSQVk6IHsKKwkJCQlJbnQzMk11bHRpQXJyYXkgaW50MzJNdWx0aUFycmF5ID0gKEludDMyTXVsdGlBcnJheSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZUludDMyTXVsdGlBcnJheShpbnQzMk11bHRpQXJyYXkpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UOF9NVUxUSV9BUlJBWTogeworCQkJCUludDhNdWx0aUFycmF5IGludDhNdWx0aUFycmF5ID0gKEludDhNdWx0aUFycmF5KXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlSW50OE11bHRpQXJyYXkoaW50OE11bHRpQXJyYXkpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UMTZfTVVMVElfQVJSQVk6IHsKKwkJCQlJbnQxNk11bHRpQXJyYXkgaW50MTZNdWx0aUFycmF5ID0gKEludDE2TXVsdGlBcnJheSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZUludDE2TXVsdGlBcnJheShpbnQxNk11bHRpQXJyYXkpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuSU5UNjRfTVVMVElfQVJSQVk6IHsKKwkJCQlJbnQ2NE11bHRpQXJyYXkgaW50NjRNdWx0aUFycmF5ID0gKEludDY0TXVsdGlBcnJheSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZUludDY0TXVsdGlBcnJheShpbnQ2NE11bHRpQXJyYXkpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuRkxPQVQ2NF9NVUxUSV9BUlJBWTogeworCQkJCUZsb2F0NjRNdWx0aUFycmF5IGZsb2F0NjRNdWx0aUFycmF5ID0gKEZsb2F0NjRNdWx0aUFycmF5KXRoZUVPYmplY3Q7CisJCQkJVCByZXN1bHQgPSBjYXNlRmxvYXQ2NE11bHRpQXJyYXkoZmxvYXQ2NE11bHRpQXJyYXkpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDY0X01VTFRJX0FSUkFZOiB7CisJCQkJVUludDY0TXVsdGlBcnJheSB1SW50NjRNdWx0aUFycmF5ID0gKFVJbnQ2NE11bHRpQXJyYXkpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VVSW50NjRNdWx0aUFycmF5KHVJbnQ2NE11bHRpQXJyYXkpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDE2X01VTFRJX0FSUkFZOiB7CisJCQkJVUludDE2TXVsdGlBcnJheSB1SW50MTZNdWx0aUFycmF5ID0gKFVJbnQxNk11bHRpQXJyYXkpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VVSW50MTZNdWx0aUFycmF5KHVJbnQxNk11bHRpQXJyYXkpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDMyX01VTFRJX0FSUkFZOiB7CisJCQkJVUludDMyTXVsdGlBcnJheSB1SW50MzJNdWx0aUFycmF5ID0gKFVJbnQzMk11bHRpQXJyYXkpdGhlRU9iamVjdDsKKwkJCQlUIHJlc3VsdCA9IGNhc2VVSW50MzJNdWx0aUFycmF5KHVJbnQzMk11bHRpQXJyYXkpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWNhc2UgU3RkX2RhdGF0eXBlc1BhY2thZ2UuVUlOVDhfTVVMVElfQVJSQVk6IHsKKwkJCQlVSW50OE11bHRpQXJyYXkgdUludDhNdWx0aUFycmF5ID0gKFVJbnQ4TXVsdGlBcnJheSl0aGVFT2JqZWN0OworCQkJCVQgcmVzdWx0ID0gY2FzZVVJbnQ4TXVsdGlBcnJheSh1SW50OE11bHRpQXJyYXkpOworCQkJCWlmIChyZXN1bHQgPT0gbnVsbCkgcmVzdWx0ID0gZGVmYXVsdENhc2UodGhlRU9iamVjdCk7CisJCQkJcmV0dXJuIHJlc3VsdDsKKwkJCX0KKwkJCWRlZmF1bHQ6IHJldHVybiBkZWZhdWx0Q2FzZSh0aGVFT2JqZWN0KTsKKwkJfQorCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkhlYWRlcjwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkhlYWRlcjwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUhlYWRlcihIZWFkZXIgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPk11bHRpIEFycmF5IERpbWVuc2lvbjwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPk11bHRpIEFycmF5IERpbWVuc2lvbjwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZU11bHRpQXJyYXlEaW1lbnNpb24oTXVsdGlBcnJheURpbWVuc2lvbiBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TXVsdGkgQXJyYXkgTGF5b3V0PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+TXVsdGkgQXJyYXkgTGF5b3V0PC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlTXVsdGlBcnJheUxheW91dChNdWx0aUFycmF5TGF5b3V0IG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5CeXRlIE11bHRpIEFycmF5PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Qnl0ZSBNdWx0aSBBcnJheTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUJ5dGVNdWx0aUFycmF5KEJ5dGVNdWx0aUFycmF5IG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5Db2xvciBSR0JBPC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+Q29sb3IgUkdCQTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUNvbG9yUkdCQShDb2xvclJHQkEgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkZsb2F0MzIgTXVsdGkgQXJyYXk8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5GbG9hdDMyIE11bHRpIEFycmF5PC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlRmxvYXQzMk11bHRpQXJyYXkoRmxvYXQzMk11bHRpQXJyYXkgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkludDMyIE11bHRpIEFycmF5PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+SW50MzIgTXVsdGkgQXJyYXk8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VJbnQzMk11bHRpQXJyYXkoSW50MzJNdWx0aUFycmF5IG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5JbnQ4IE11bHRpIEFycmF5PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+SW50OCBNdWx0aSBBcnJheTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUludDhNdWx0aUFycmF5KEludDhNdWx0aUFycmF5IG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5JbnQxNiBNdWx0aSBBcnJheTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkludDE2IE11bHRpIEFycmF5PC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlSW50MTZNdWx0aUFycmF5KEludDE2TXVsdGlBcnJheSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+SW50NjQgTXVsdGkgQXJyYXk8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5JbnQ2NCBNdWx0aSBBcnJheTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZUludDY0TXVsdGlBcnJheShJbnQ2NE11bHRpQXJyYXkgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkZsb2F0NjQgTXVsdGkgQXJyYXk8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5GbG9hdDY0IE11bHRpIEFycmF5PC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlRmxvYXQ2NE11bHRpQXJyYXkoRmxvYXQ2NE11bHRpQXJyYXkgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlVJbnQ2NCBNdWx0aSBBcnJheTwvZW0+Jy4KKwkgKiA8IS0tIGJlZ2luLXVzZXItZG9jIC0tPgorCSAqIFRoaXMgaW1wbGVtZW50YXRpb24gcmV0dXJucyBudWxsOworCSAqIHJldHVybmluZyBhIG5vbi1udWxsIHJlc3VsdCB3aWxsIHRlcm1pbmF0ZSB0aGUgc3dpdGNoLgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlVJbnQ2NCBNdWx0aSBBcnJheTwvZW0+Jy4KKwkgKiBAc2VlICNkb1N3aXRjaChvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdCkgZG9Td2l0Y2goRU9iamVjdCkKKwkgKiBAZ2VuZXJhdGVkCisJICovCisJcHVibGljIFQgY2FzZVVJbnQ2NE11bHRpQXJyYXkoVUludDY0TXVsdGlBcnJheSBvYmplY3QpIHsKKwkJcmV0dXJuIG51bGw7CisJfQorCisJLyoqCisJICogUmV0dXJucyB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+VUludDE2IE11bHRpIEFycmF5PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+VUludDE2IE11bHRpIEFycmF5PC9lbT4nLgorCSAqIEBzZWUgI2RvU3dpdGNoKG9yZy5lY2xpcHNlLmVtZi5lY29yZS5FT2JqZWN0KSBkb1N3aXRjaChFT2JqZWN0KQorCSAqIEBnZW5lcmF0ZWQKKwkgKi8KKwlwdWJsaWMgVCBjYXNlVUludDE2TXVsdGlBcnJheShVSW50MTZNdWx0aUFycmF5IG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5VSW50MzIgTXVsdGkgQXJyYXk8L2VtPicuCisJICogPCEtLSBiZWdpbi11c2VyLWRvYyAtLT4KKwkgKiBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVsbDsKKwkgKiByZXR1cm5pbmcgYSBub24tbnVsbCByZXN1bHQgd2lsbCB0ZXJtaW5hdGUgdGhlIHN3aXRjaC4KKwkgKiA8IS0tIGVuZC11c2VyLWRvYyAtLT4KKwkgKiBAcGFyYW0gb2JqZWN0IHRoZSB0YXJnZXQgb2YgdGhlIHN3aXRjaC4KKwkgKiBAcmV0dXJuIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5VSW50MzIgTXVsdGkgQXJyYXk8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VVSW50MzJNdWx0aUFycmF5KFVJbnQzMk11bHRpQXJyYXkgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworCS8qKgorCSAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPlVJbnQ4IE11bHRpIEFycmF5PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2guCisJICogPCEtLSBlbmQtdXNlci1kb2MgLS0+CisJICogQHBhcmFtIG9iamVjdCB0aGUgdGFyZ2V0IG9mIHRoZSBzd2l0Y2guCisJICogQHJldHVybiB0aGUgcmVzdWx0IG9mIGludGVycHJldGluZyB0aGUgb2JqZWN0IGFzIGFuIGluc3RhbmNlIG9mICc8ZW0+VUludDggTXVsdGkgQXJyYXk8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpIGRvU3dpdGNoKEVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCXB1YmxpYyBUIGNhc2VVSW50OE11bHRpQXJyYXkoVUludDhNdWx0aUFycmF5IG9iamVjdCkgeworCQlyZXR1cm4gbnVsbDsKKwl9CisKKwkvKioKKwkgKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgaW50ZXJwcmV0aW5nIHRoZSBvYmplY3QgYXMgYW4gaW5zdGFuY2Ugb2YgJzxlbT5FT2JqZWN0PC9lbT4nLgorCSAqIDwhLS0gYmVnaW4tdXNlci1kb2MgLS0+CisJICogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGw7CisJICogcmV0dXJuaW5nIGEgbm9uLW51bGwgcmVzdWx0IHdpbGwgdGVybWluYXRlIHRoZSBzd2l0Y2gsIGJ1dCB0aGlzIGlzIHRoZSBsYXN0IGNhc2UgYW55d2F5LgorCSAqIDwhLS0gZW5kLXVzZXItZG9jIC0tPgorCSAqIEBwYXJhbSBvYmplY3QgdGhlIHRhcmdldCBvZiB0aGUgc3dpdGNoLgorCSAqIEByZXR1cm4gdGhlIHJlc3VsdCBvZiBpbnRlcnByZXRpbmcgdGhlIG9iamVjdCBhcyBhbiBpbnN0YW5jZSBvZiAnPGVtPkVPYmplY3Q8L2VtPicuCisJICogQHNlZSAjZG9Td2l0Y2gob3JnLmVjbGlwc2UuZW1mLmVjb3JlLkVPYmplY3QpCisJICogQGdlbmVyYXRlZAorCSAqLworCUBPdmVycmlkZQorCXB1YmxpYyBUIGRlZmF1bHRDYXNlKEVPYmplY3Qgb2JqZWN0KSB7CisJCXJldHVybiBudWxsOworCX0KKworfSAvLyBTdGRfZGF0YXR5cGVzU3dpdGNoCmRpZmYgLS1naXQgYS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwvc3R5bGUuY3NzIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3N0eWxlLmNzcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNDI4MTRkCi0tLSAvZGV2L251bGwKKysrIGIvb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sL3N0eWxlLmNzcwpAQCAtMCwwICsxLDE0IEBACisqIHsKKwllbGVtZW50SWNvbjpmYWxzZTsKKwkKK30KKworU3RlcmVvdHlwZSA+IENvbXBhcnRtZW50W2tpbmQ9Im9wZXJhdGlvbiJdIHsKKwl2aXNpYmxlOmZhbHNlOworfQorQ2xhc3N7CisJZm9udEhlaWdodDoxMjsKK30KK0F0dHJpYnV0ZXsKKwlmb250SGVpZ2h0OjEwOworfQpkaWZmIC0tZ2l0IGEvcG9tLnhtbCBiL3BvbS54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDY1YzgxOAotLS0gL2Rldi9udWxsCisrKyBiL3BvbS54bWwKQEAgLTAsMCArMSwzNTUgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8cHJvamVjdCB4bWxucz0iaHR0cDovL21hdmVuLmFwYWNoZS5vcmcvUE9NLzQuMC4wIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIgorCXhzaTpzY2hlbWFMb2NhdGlvbj0iaHR0cDovL21hdmVuLmFwYWNoZS5vcmcvUE9NLzQuMC4wIGh0dHA6Ly9tYXZlbi5hcGFjaGUub3JnL3hzZC9tYXZlbi00LjAuMC54c2QiPgorCTxtb2RlbFZlcnNpb24+NC4wLjA8L21vZGVsVmVyc2lvbj4KKwk8Z3JvdXBJZD5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWw8L2dyb3VwSWQ+CisJPGFydGlmYWN0SWQ+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnBhcmVudDwvYXJ0aWZhY3RJZD4KKwk8dmVyc2lvbj4xLjIuMC1TTkFQU0hPVDwvdmVyc2lvbj4KKwk8cGFja2FnaW5nPnBvbTwvcGFja2FnaW5nPgorCTxuYW1lPnJvYm90bWw8L25hbWU+CisJPGRlc2NyaXB0aW9uPlBhcHlydXMgUm9ib3RNTCBwbGF0Zm9ybTwvZGVzY3JpcHRpb24+CisKKwk8bW9kdWxlcz4KKwkJPG1vZHVsZT5nZW5lcmF0b3JzPC9tb2R1bGU+CisJCTxtb2R1bGU+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sPC9tb2R1bGU+CisJCTxtb2R1bGU+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLmRlcGxveW1lbnQ8L21vZHVsZT4KKwkJPG1vZHVsZT5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS5jb21tb248L21vZHVsZT4KKwkJPG1vZHVsZT5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuZGlhZ3JhbS51aTwvbW9kdWxlPgorCQk8bW9kdWxlPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5kb2M8L21vZHVsZT4KKwkJPCEtLW1vZHVsZT5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwuaGVscDwvbW9kdWxlLS0+CisJCTwhLS0gbW9kdWxlPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5tb2RlbGV4cGxvcmVyPC9tb2R1bGUtLT4KKwkJPG1vZHVsZT5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwucGVyc3BlY3RpdmU8L21vZHVsZT4KKwkJPG1vZHVsZT5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGVtcGxhdGVyZXBvc2l0b3J5PC9tb2R1bGU+CisJCTxtb2R1bGU+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnZhbGlkYXRpb248L21vZHVsZT4KKwkJPG1vZHVsZT50YXJnZXRwbGF0Zm9ybTwvbW9kdWxlPgorCTwvbW9kdWxlcz4KKwk8cmVwb3NpdG9yaWVzPgorCisJCTxyZXBvc2l0b3J5PgorCQkJPGlkPmVjbGlwc2UtbmVvbjwvaWQ+CisJCQk8bGF5b3V0PnAyPC9sYXlvdXQ+CisJCQk8dXJsPmh0dHA6Ly9kb3dubG9hZC5lY2xpcHNlLm9yZy9yZWxlYXNlcy9uZW9uPC91cmw+CisJCTwvcmVwb3NpdG9yeT4KKwkJPHJlcG9zaXRvcnk+CisJCQk8aWQ+cGFweXJ1cy1uZW9uLW5pZ2h0bHktZGV2ZWxvcGVyPC9pZD4KKwkJCTxsYXlvdXQ+cDI8L2xheW91dD4KKwkJCTx1cmw+aHR0cHM6Ly9odWRzb24uZWNsaXBzZS5vcmcvcGFweXJ1cy9qb2IvUGFweXJ1cy1NYXN0ZXItRGV2ZWxvcGVyL2xhc3RTdWNjZXNzZnVsQnVpbGQvYXJ0aWZhY3QvcmVwb3NpdG9yeS88L3VybD4KKwkJPC9yZXBvc2l0b3J5PgorCTwvcmVwb3NpdG9yaWVzPgorCTxwcm9wZXJ0aWVzPgorCQk8IS0tIHBsdWdpbnMgdmVyc2lvbnMgLS0+CisJCTwhLS0gdXNlICdtdm4gdmVyc2lvbnM6ZGlzcGxheS1wbHVnaW4tdXBkYXRlcycgdG8gY2hlY2sgZm9yIHRoZSBsYXRlc3QgLS0+CisJCTx0eWNoby12ZXJzaW9uPjAuMjQuMDwvdHljaG8tdmVyc2lvbj4KKwkJPHR5Y2hvRXh0cmFzVmVyc2lvbj4wLjI0LjA8L3R5Y2hvRXh0cmFzVmVyc2lvbj4KKwkJPG1hdmVuLWNoZWNrc3R5bGUtdmVyc2lvbj4yLjEyLjE8L21hdmVuLWNoZWNrc3R5bGUtdmVyc2lvbj4KKwkJPG1hdmVuLWZpbmRidWdzLXZlcnNpb24+My4wLjA8L21hdmVuLWZpbmRidWdzLXZlcnNpb24+CisJCTxtYXZlbi1wbWQtdmVyc2lvbj4zLjE8L21hdmVuLXBtZC12ZXJzaW9uPgorCQk8bWF2ZW4tanhyLXZlcnNpb24+Mi4zPC9tYXZlbi1qeHItdmVyc2lvbj4KKwkJPHByb2plY3QuYnVpbGQuc291cmNlRW5jb2Rpbmc+VVRGLTg8L3Byb2plY3QuYnVpbGQuc291cmNlRW5jb2Rpbmc+CisKKwkJPCEtLSBFY2xpcHNlIHByb3BlcnRpZXMgLS0+CisJCTxlY2xpcHNlLnJlbGVhc2U+bmVvbjwvZWNsaXBzZS5yZWxlYXNlPgorCisJCTwhLS0gUGxhdGZvcm0gcHJvcGVydGllcyAtLT4KKwkJPGVudi51aS50ZXN0Pi1YbXM1MTJtIC1YbXgyMDQ4bSAtWFg6TWF4UGVybVNpemU9NTEyTTwvZW52LnVpLnRlc3Q+CisKKwkJPHRlc3RDb25maWc+Q0lfVEVTVFNfQ09ORklHPC90ZXN0Q29uZmlnPiA8IS0tIFNlZSBvcmcuZWNsaXBzZS5wYXB5cnVzLmp1bml0LmZyYW1ld29yay5jbGFzc2lmaWNhdGlvbi5DbGFzc2lmaWNhdGlvbkNvbmZpZyAtLT4KKworCTwvcHJvcGVydGllcz4KKworCTxwbHVnaW5SZXBvc2l0b3JpZXM+CisJCTxwbHVnaW5SZXBvc2l0b3J5PgorCQkJPGlkPmVjbGlwc2UtbWF2ZW4tcmVsZWFzZXM8L2lkPgorCQkJPHVybD5odHRwczovL3JlcG8uZWNsaXBzZS5vcmcvY29udGVudC9yZXBvc2l0b3JpZXMvcmVsZWFzZXMvPC91cmw+CisJCQk8c25hcHNob3RzPgorCQkJCTxlbmFibGVkPmZhbHNlPC9lbmFibGVkPgorCQkJPC9zbmFwc2hvdHM+CisJCTwvcGx1Z2luUmVwb3NpdG9yeT4KKwk8L3BsdWdpblJlcG9zaXRvcmllcz4KKwk8YnVpbGQ+CisJCTxwbHVnaW5NYW5hZ2VtZW50PgorCQkJPHBsdWdpbnM+CisJCQkJPHBsdWdpbj4KKwkJCQkJPGdyb3VwSWQ+b3JnLmFwYWNoZS5tYXZlbi5wbHVnaW5zPC9ncm91cElkPgorCQkJCQk8YXJ0aWZhY3RJZD5tYXZlbi1qYXZhZG9jLXBsdWdpbjwvYXJ0aWZhY3RJZD4KKwkJCQkJPHZlcnNpb24+Mi4xMC4yPC92ZXJzaW9uPgorCQkJCTwvcGx1Z2luPgorCQkJCTxwbHVnaW4+CisJCQkJCTxncm91cElkPm9yZy5hcGFjaGUubWF2ZW4ucGx1Z2luczwvZ3JvdXBJZD4KKwkJCQkJPGFydGlmYWN0SWQ+bWF2ZW4tc2l0ZS1wbHVnaW48L2FydGlmYWN0SWQ+CisJCQkJCTx2ZXJzaW9uPjMuMzwvdmVyc2lvbj4KKwkJCQk8L3BsdWdpbj4KKwkJCQk8cGx1Z2luPgorCQkJCQk8Z3JvdXBJZD5vcmcuYXBhY2hlLm1hdmVuLnBsdWdpbnM8L2dyb3VwSWQ+CisJCQkJCTxhcnRpZmFjdElkPm1hdmVuLXN1cmVmaXJlLXJlcG9ydC1wbHVnaW48L2FydGlmYWN0SWQ+CisJCQkJCTx2ZXJzaW9uPjIuMTguMTwvdmVyc2lvbj4KKwkJCQk8L3BsdWdpbj4KKwkJCQk8cGx1Z2luPgorCQkJCQk8Z3JvdXBJZD5vcmcuYXBhY2hlLm1hdmVuLnBsdWdpbnM8L2dyb3VwSWQ+CisJCQkJCTxhcnRpZmFjdElkPm1hdmVuLXJlc291cmNlcy1wbHVnaW48L2FydGlmYWN0SWQ+CisJCQkJCTx2ZXJzaW9uPjIuNjwvdmVyc2lvbj4KKwkJCQk8L3BsdWdpbj4KKwkJCQk8cGx1Z2luPgorCQkJCQk8Z3JvdXBJZD5vcmcuZWNsaXBzZS50eWNobzwvZ3JvdXBJZD4KKwkJCQkJPGFydGlmYWN0SWQ+dHljaG8tY29tcGlsZXItcGx1Z2luPC9hcnRpZmFjdElkPgorCQkJCQk8dmVyc2lvbj4ke3R5Y2hvLXZlcnNpb259PC92ZXJzaW9uPgorCQkJCTwvcGx1Z2luPgorCQkJCTwhLS0gZW5hYmxlIHR5Y2hvIGJ1aWxkIGV4dGVuc2lvbiAtLT4KKwkJCQk8cGx1Z2luPgorCQkJCQk8Z3JvdXBJZD5vcmcuZWNsaXBzZS50eWNobzwvZ3JvdXBJZD4KKwkJCQkJPGFydGlmYWN0SWQ+dHljaG8tbWF2ZW4tcGx1Z2luPC9hcnRpZmFjdElkPgorCQkJCQk8dmVyc2lvbj4ke3R5Y2hvLXZlcnNpb259PC92ZXJzaW9uPgorCQkJCQk8ZXh0ZW5zaW9ucz50cnVlPC9leHRlbnNpb25zPgorCQkJCTwvcGx1Z2luPgorCQkJCTxwbHVnaW4+CisJCQkJCTxncm91cElkPm9yZy5lY2xpcHNlLnR5Y2hvPC9ncm91cElkPgorCQkJCQk8YXJ0aWZhY3RJZD50eWNoby1wMi1yZXBvc2l0b3J5LXBsdWdpbjwvYXJ0aWZhY3RJZD4KKwkJCQkJPHZlcnNpb24+JHt0eWNoby12ZXJzaW9ufTwvdmVyc2lvbj4KKwkJCQk8L3BsdWdpbj4KKwkJCQk8cGx1Z2luPjwhLS0gZW5hYmxlIHNvdXJjZSBidW5kbGUgZ2VuZXJhdGlvbiAtLT4KKwkJCQkJPGdyb3VwSWQ+b3JnLmVjbGlwc2UudHljaG88L2dyb3VwSWQ+CisJCQkJCTxhcnRpZmFjdElkPnR5Y2hvLXNvdXJjZS1wbHVnaW48L2FydGlmYWN0SWQ+CisJCQkJCTx2ZXJzaW9uPiR7dHljaG8tdmVyc2lvbn08L3ZlcnNpb24+CisJCQkJPC9wbHVnaW4+CisJCQkJPHBsdWdpbj4KKwkJCQkJPGdyb3VwSWQ+b3JnLmVjbGlwc2UudHljaG8uZXh0cmFzPC9ncm91cElkPgorCQkJCQk8YXJ0aWZhY3RJZD50eWNoby1zb3VyY2UtZmVhdHVyZS1wbHVnaW48L2FydGlmYWN0SWQ+CisJCQkJCTx2ZXJzaW9uPiR7dHljaG9FeHRyYXNWZXJzaW9ufTwvdmVyc2lvbj4KKwkJCQk8L3BsdWdpbj4KKwkJCQk8cGx1Z2luPgorCQkJCQk8Z3JvdXBJZD5vcmcuZWNsaXBzZS50eWNobzwvZ3JvdXBJZD4KKwkJCQkJPGFydGlmYWN0SWQ+dHljaG8tcDItcGx1Z2luPC9hcnRpZmFjdElkPgorCQkJCQk8dmVyc2lvbj4ke3R5Y2hvLXZlcnNpb259PC92ZXJzaW9uPgorCQkJCTwvcGx1Z2luPgorCQkJCTxwbHVnaW4+CisJCQkJCTxncm91cElkPm9yZy5lY2xpcHNlLnR5Y2hvPC9ncm91cElkPgorCQkJCQk8YXJ0aWZhY3RJZD50eWNoby12ZXJzaW9ucy1wbHVnaW48L2FydGlmYWN0SWQ+CisJCQkJCTx2ZXJzaW9uPiR7dHljaG8tdmVyc2lvbn08L3ZlcnNpb24+CisJCQkJPC9wbHVnaW4+CisJCQkJPHBsdWdpbj4KKwkJCQkJPGdyb3VwSWQ+b3JnLmVjbGlwc2UudHljaG88L2dyb3VwSWQ+CisJCQkJCTxhcnRpZmFjdElkPnR5Y2hvLXAyLWRpcmVjdG9yLXBsdWdpbjwvYXJ0aWZhY3RJZD4KKwkJCQkJPHZlcnNpb24+JHt0eWNoby12ZXJzaW9ufTwvdmVyc2lvbj4KKwkJCQk8L3BsdWdpbj4KKwkJCQk8cGx1Z2luPgorCQkJCQk8Z3JvdXBJZD5vcmcuamFjb2NvPC9ncm91cElkPgorCQkJCQk8YXJ0aWZhY3RJZD5qYWNvY28tbWF2ZW4tcGx1Z2luPC9hcnRpZmFjdElkPgorCQkJCQk8dmVyc2lvbj4ke2phY29jby12ZXJzaW9ufTwvdmVyc2lvbj4KKwkJCQk8L3BsdWdpbj4KKwkJCQk8cGx1Z2luPgorCQkJCQk8Z3JvdXBJZD5vcmcuZWNsaXBzZS50eWNobzwvZ3JvdXBJZD4KKwkJCQkJPGFydGlmYWN0SWQ+dHljaG8tc3VyZWZpcmUtcGx1Z2luPC9hcnRpZmFjdElkPgorCQkJCQk8dmVyc2lvbj4ke3R5Y2hvLXZlcnNpb259PC92ZXJzaW9uPgorCQkJCTwvcGx1Z2luPgorCQkJCTxwbHVnaW4+CisJCQkJCTxncm91cElkPm9yZy5lY2xpcHNlLnR5Y2hvPC9ncm91cElkPgorCQkJCQk8YXJ0aWZhY3RJZD50YXJnZXQtcGxhdGZvcm0tY29uZmlndXJhdGlvbjwvYXJ0aWZhY3RJZD4KKwkJCQkJPHZlcnNpb24+JHt0eWNoby12ZXJzaW9ufTwvdmVyc2lvbj4KKwkJCQk8L3BsdWdpbj4KKwkJCQk8cGx1Z2luPgorCQkJCQk8Z3JvdXBJZD5vcmcuZWNsaXBzZS50eWNoby5leHRyYXM8L2dyb3VwSWQ+CisJCQkJCTxhcnRpZmFjdElkPnR5Y2hvLXBhY2syMDBhLXBsdWdpbjwvYXJ0aWZhY3RJZD4KKwkJCQkJPHZlcnNpb24+JHt0eWNob0V4dHJhc1ZlcnNpb259PC92ZXJzaW9uPgorCQkJCTwvcGx1Z2luPgorCQkJCTxwbHVnaW4+CisJCQkJCTxncm91cElkPm9yZy5lY2xpcHNlLnR5Y2hvLmV4dHJhczwvZ3JvdXBJZD4KKwkJCQkJPGFydGlmYWN0SWQ+dHljaG8tcGFjazIwMGItcGx1Z2luPC9hcnRpZmFjdElkPgorCQkJCQk8dmVyc2lvbj4ke3R5Y2hvRXh0cmFzVmVyc2lvbn08L3ZlcnNpb24+CisJCQkJPC9wbHVnaW4+CisJCQkJPHBsdWdpbj4KKwkJCQkJPGdyb3VwSWQ+b3JnLmVjbGlwc2UuY2JpLm1hdmVuLnBsdWdpbnM8L2dyb3VwSWQ+CisJCQkJCTxhcnRpZmFjdElkPmVjbGlwc2UtamFyc2lnbmVyLXBsdWdpbjwvYXJ0aWZhY3RJZD4KKwkJCQkJPHZlcnNpb24+MS4xLjI8L3ZlcnNpb24+CisJCQkJPC9wbHVnaW4+CisJCQk8L3BsdWdpbnM+CisJCTwvcGx1Z2luTWFuYWdlbWVudD4KKworCQk8cGx1Z2lucz4KKwkJCTxwbHVnaW4+CisJCQkJPGdyb3VwSWQ+b3JnLmFwYWNoZS5tYXZlbi5wbHVnaW5zPC9ncm91cElkPgorCQkJCTxhcnRpZmFjdElkPm1hdmVuLXJlc291cmNlcy1wbHVnaW48L2FydGlmYWN0SWQ+CisJCQkJPGNvbmZpZ3VyYXRpb24+CisJCQkJCTxlbmNvZGluZz5VVEYtODwvZW5jb2Rpbmc+CisJCQkJPC9jb25maWd1cmF0aW9uPgorCQkJPC9wbHVnaW4+CisJCQk8cGx1Z2luPgorCQkJCTxncm91cElkPm9yZy5lY2xpcHNlLnR5Y2hvPC9ncm91cElkPgorCQkJCTxhcnRpZmFjdElkPnR5Y2hvLWNvbXBpbGVyLXBsdWdpbjwvYXJ0aWZhY3RJZD4KKwkJCQk8Y29uZmlndXJhdGlvbj4KKwkJCQkJPHNvdXJjZT4xLjg8L3NvdXJjZT4KKwkJCQkJPHRhcmdldD4xLjg8L3RhcmdldD4KKwkJCQkJPG9wdGltaXplPnRydWU8L29wdGltaXplPgorCQkJCQk8c2hvd1dhcm5pbmdzPnRydWU8L3Nob3dXYXJuaW5ncz4KKwkJCQk8L2NvbmZpZ3VyYXRpb24+CisJCQk8L3BsdWdpbj4KKwkJCTwhLS0gZW5hYmxlIHR5Y2hvIGJ1aWxkIGV4dGVuc2lvbiAtLT4KKwkJCTxwbHVnaW4+CisJCQkJPGdyb3VwSWQ+b3JnLmVjbGlwc2UudHljaG88L2dyb3VwSWQ+CisJCQkJPGFydGlmYWN0SWQ+dHljaG8tbWF2ZW4tcGx1Z2luPC9hcnRpZmFjdElkPgorCQkJCTxleHRlbnNpb25zPnRydWU8L2V4dGVuc2lvbnM+CisJCQk8L3BsdWdpbj4KKwkJCTxwbHVnaW4+CisJCQkJPGdyb3VwSWQ+b3JnLmVjbGlwc2UudHljaG88L2dyb3VwSWQ+CisJCQkJPGFydGlmYWN0SWQ+dHljaG8tcDItcmVwb3NpdG9yeS1wbHVnaW48L2FydGlmYWN0SWQ+CisJCQk8L3BsdWdpbj4KKwkJCTxwbHVnaW4+PCEtLSBlbmFibGUgc291cmNlIGJ1bmRsZSBnZW5lcmF0aW9uIC0tPgorCQkJCTxncm91cElkPm9yZy5lY2xpcHNlLnR5Y2hvPC9ncm91cElkPgorCQkJCTxhcnRpZmFjdElkPnR5Y2hvLXNvdXJjZS1wbHVnaW48L2FydGlmYWN0SWQ+CisJCQkJPGV4ZWN1dGlvbnM+CisJCQkJCTxleGVjdXRpb24+CisJCQkJCQk8aWQ+cGx1Z2luLXNvdXJjZTwvaWQ+CisJCQkJCQk8Z29hbHM+CisJCQkJCQkJPGdvYWw+cGx1Z2luLXNvdXJjZTwvZ29hbD4KKwkJCQkJCTwvZ29hbHM+CisJCQkJCTwvZXhlY3V0aW9uPgorCQkJCTwvZXhlY3V0aW9ucz4KKwkJCTwvcGx1Z2luPgorCQkJPHBsdWdpbj4KKwkJCQk8Z3JvdXBJZD5vcmcuZWNsaXBzZS50eWNoby5leHRyYXM8L2dyb3VwSWQ+CisJCQkJPGFydGlmYWN0SWQ+dHljaG8tc291cmNlLWZlYXR1cmUtcGx1Z2luPC9hcnRpZmFjdElkPgorCQkJCTxleGVjdXRpb25zPgorCQkJCQk8ZXhlY3V0aW9uPgorCQkJCQkJPGlkPnNvdXJjZS1mZWF0dXJlPC9pZD4KKwkJCQkJCTxwaGFzZT5wYWNrYWdlPC9waGFzZT4KKwkJCQkJCTxnb2Fscz4KKwkJCQkJCQk8Z29hbD5zb3VyY2UtZmVhdHVyZTwvZ29hbD4KKwkJCQkJCTwvZ29hbHM+CisJCQkJCQk8IS0tIDxjb25maWd1cmF0aW9uPiA8ZXhjbHVkZXM+IDxwbHVnaW4gaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuc3lzbWwxNC5yY3AiIAorCQkJCQkJCS8+IDwvZXhjbHVkZXM+IDwvY29uZmlndXJhdGlvbj4gLS0+CisJCQkJCTwvZXhlY3V0aW9uPgorCQkJCTwvZXhlY3V0aW9ucz4KKwkJCTwvcGx1Z2luPgorCQkJPHBsdWdpbj4KKwkJCQk8Z3JvdXBJZD5vcmcuZWNsaXBzZS50eWNobzwvZ3JvdXBJZD4KKwkJCQk8YXJ0aWZhY3RJZD50eWNoby1wMi1wbHVnaW48L2FydGlmYWN0SWQ+CisJCQkJPGV4ZWN1dGlvbnM+CisJCQkJCTxleGVjdXRpb24+CisJCQkJCQk8aWQ+YXR0YWNoLXAyLW1ldGFkYXRhPC9pZD4KKwkJCQkJCTxwaGFzZT5wYWNrYWdlPC9waGFzZT4KKwkJCQkJCTxnb2Fscz4KKwkJCQkJCQk8Z29hbD5wMi1tZXRhZGF0YTwvZ29hbD4KKwkJCQkJCTwvZ29hbHM+CisJCQkJCTwvZXhlY3V0aW9uPgorCQkJCTwvZXhlY3V0aW9ucz4KKwkJCTwvcGx1Z2luPgorCQkJPHBsdWdpbj4KKwkJCQk8Z3JvdXBJZD5vcmcuZWNsaXBzZS50eWNobzwvZ3JvdXBJZD4KKwkJCQk8YXJ0aWZhY3RJZD50eWNoby12ZXJzaW9ucy1wbHVnaW48L2FydGlmYWN0SWQ+CisJCQk8L3BsdWdpbj4KKwkJCTxwbHVnaW4+CisJCQkJPGdyb3VwSWQ+b3JnLmVjbGlwc2UudHljaG88L2dyb3VwSWQ+CisJCQkJPGFydGlmYWN0SWQ+dHljaG8tc3VyZWZpcmUtcGx1Z2luPC9hcnRpZmFjdElkPgorCQkJCTxjb25maWd1cmF0aW9uPgorCQkJCQk8dGVzdENsYXNzPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50ZXN0cy5BbGxUZXN0czwvdGVzdENsYXNzPgorCQkJCQk8ZmFpbElmTm9UZXN0cz5mYWxzZTwvZmFpbElmTm9UZXN0cz4KKwkJCQkJPHVzZVVJSGFybmVzcz50cnVlPC91c2VVSUhhcm5lc3M+CisJCQkJCTx1c2VVSVRocmVhZD50cnVlPC91c2VVSVRocmVhZD4KKwkJCQkJPGFyZ0xpbmU+LVhtczUxMm0gLVhteDIwNDhtPC9hcmdMaW5lPgorCQkJCQk8YXBwQXJnTGluZT4tdGVzdENvbmZpZz0ke3Rlc3RDb25maWd9PC9hcHBBcmdMaW5lPgorCQkJCQk8cHJvZHVjdD5vcmcuZWNsaXBzZS5zZGsuaWRlPC9wcm9kdWN0PgorCQkJCQk8YXBwbGljYXRpb24+b3JnLmVjbGlwc2UudWkuaWRlLndvcmtiZW5jaDwvYXBwbGljYXRpb24+CisJCQkJPC9jb25maWd1cmF0aW9uPgorCQkJPC9wbHVnaW4+CisJCQk8cGx1Z2luPgorCQkJCTxncm91cElkPm9yZy5lY2xpcHNlLnR5Y2hvPC9ncm91cElkPgorCQkJCTxhcnRpZmFjdElkPnRhcmdldC1wbGF0Zm9ybS1jb25maWd1cmF0aW9uPC9hcnRpZmFjdElkPgorCQkJCTxjb25maWd1cmF0aW9uPgorCQkJCQk8aW5jbHVkZVBhY2tlZEFydGlmYWN0cz50cnVlPC9pbmNsdWRlUGFja2VkQXJ0aWZhY3RzPgorCQkJCQk8dGFyZ2V0RGVmaW5pdGlvbkluY2x1ZGVTb3VyY2U+aG9ub3I8L3RhcmdldERlZmluaXRpb25JbmNsdWRlU291cmNlPgorCQkJCQk8ZW52aXJvbm1lbnRzPgorCQkJCQkJPGVudmlyb25tZW50PgorCQkJCQkJCTxvcz53aW4zMjwvb3M+CisJCQkJCQkJPHdzPndpbjMyPC93cz4KKwkJCQkJCQk8YXJjaD54ODZfNjQ8L2FyY2g+CisJCQkJCQk8L2Vudmlyb25tZW50PgorCQkJCQkJPGVudmlyb25tZW50PgorCQkJCQkJCTxvcz5saW51eDwvb3M+CisJCQkJCQkJPHdzPmd0azwvd3M+CisJCQkJCQkJPGFyY2g+eDg2XzY0PC9hcmNoPgorCQkJCQkJPC9lbnZpcm9ubWVudD4KKwkJCQkJCTxlbnZpcm9ubWVudD4KKwkJCQkJCQk8b3M+bWFjb3N4PC9vcz4KKwkJCQkJCQk8d3M+Y29jb2E8L3dzPgorCQkJCQkJCTxhcmNoPng4Nl82NDwvYXJjaD4KKwkJCQkJCTwvZW52aXJvbm1lbnQ+CisJCQkJCTwvZW52aXJvbm1lbnRzPgorCQkJCQk8dGFyZ2V0PgorCQkJCQkJPGFydGlmYWN0PgorCQkJCQkJCTxncm91cElkPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbDwvZ3JvdXBJZD4KKwkJCQkJCQk8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGFyZ2V0cGxhdGZvcm0uJHtlY2xpcHNlLnJlbGVhc2V9PC9hcnRpZmFjdElkPgorCQkJCQkJCTx2ZXJzaW9uPiR7cHJvamVjdC52ZXJzaW9ufTwvdmVyc2lvbj4KKwkJCQkJCTwvYXJ0aWZhY3Q+CisJCQkJCTwvdGFyZ2V0PgorCQkJCTwvY29uZmlndXJhdGlvbj4KKwkJCTwvcGx1Z2luPgorCQk8L3BsdWdpbnM+CisJPC9idWlsZD4KKwk8cHJvZmlsZXM+CisJCTwhLS0gVGhpcyBwcm9maWxlIGlzIHVzZWQgYmVjYXVzZSBqYXZhZG9jIGdlbmVyYXRvciB3aXRoIGpkayAxLjggaXMgbW9yZSAKKwkJCXN0cmluZ2VhbnQuIFdlIGNvdWxkIGRlYWN0aXZhdGUgaXQgd2hlbiB0aGUgamF2YWRvYyBoYXMgYmVlbiB1cGRhdGVkIHdpdGggCisJCQl0aGUgbmV3IHN0YW5kYXJkIG9mIGphdmEgMS44IC0tPgorCQk8cHJvZmlsZT4KKwkJCTxpZD5kb2NsaW50LWphdmE4LWRpc2FibGU8L2lkPgorCQkJPGFjdGl2YXRpb24+CisJCQkJPGpkaz5bMS44LCk8L2pkaz4KKwkJCTwvYWN0aXZhdGlvbj4KKworCQkJPGJ1aWxkPgorCQkJCTxwbHVnaW5zPgorCQkJCQk8cGx1Z2luPgorCQkJCQkJPGdyb3VwSWQ+b3JnLmFwYWNoZS5tYXZlbi5wbHVnaW5zPC9ncm91cElkPgorCQkJCQkJPGFydGlmYWN0SWQ+bWF2ZW4tamF2YWRvYy1wbHVnaW48L2FydGlmYWN0SWQ+CisJCQkJCQk8Y29uZmlndXJhdGlvbj4KKwkJCQkJCQk8YWRkaXRpb25hbHBhcmFtPi1YZG9jbGludDpub25lPC9hZGRpdGlvbmFscGFyYW0+CisJCQkJCQk8L2NvbmZpZ3VyYXRpb24+CisJCQkJCTwvcGx1Z2luPgorCQkJCQk8cGx1Z2luPgorCQkJCQkJPGdyb3VwSWQ+b3JnLmFwYWNoZS5tYXZlbi5wbHVnaW5zPC9ncm91cElkPgorCQkJCQkJPGFydGlmYWN0SWQ+bWF2ZW4tc3VyZWZpcmUtcmVwb3J0LXBsdWdpbjwvYXJ0aWZhY3RJZD4KKwkJCQkJPC9wbHVnaW4+CisJCQkJCTxwbHVnaW4+CisJCQkJCQk8Z3JvdXBJZD5vcmcuYXBhY2hlLm1hdmVuLnBsdWdpbnM8L2dyb3VwSWQ+CisJCQkJCQk8YXJ0aWZhY3RJZD5tYXZlbi1zaXRlLXBsdWdpbjwvYXJ0aWZhY3RJZD4KKwkJCQkJCTxjb25maWd1cmF0aW9uPgorCQkJCQkJCTxyZXBvcnRQbHVnaW5zPgorCQkJCQkJCQk8cGx1Z2luPgorCQkJCQkJCQkJPGdyb3VwSWQ+b3JnLmFwYWNoZS5tYXZlbi5wbHVnaW5zPC9ncm91cElkPgorCQkJCQkJCQkJPGFydGlmYWN0SWQ+bWF2ZW4tamF2YWRvYy1wbHVnaW48L2FydGlmYWN0SWQ+CisJCQkJCQkJCQk8Y29uZmlndXJhdGlvbj4KKwkJCQkJCQkJCQk8YWRkaXRpb25hbHBhcmFtPi1YZG9jbGludDpub25lPC9hZGRpdGlvbmFscGFyYW0+CisJCQkJCQkJCQk8L2NvbmZpZ3VyYXRpb24+CisJCQkJCQkJCTwvcGx1Z2luPgorCQkJCQkJCQk8cGx1Z2luPgorCQkJCQkJCQkJPGdyb3VwSWQ+b3JnLmFwYWNoZS5tYXZlbi5wbHVnaW5zPC9ncm91cElkPgorCQkJCQkJCQkJPGFydGlmYWN0SWQ+bWF2ZW4tc3VyZWZpcmUtcmVwb3J0LXBsdWdpbjwvYXJ0aWZhY3RJZD4KKwkJCQkJCQkJPC9wbHVnaW4+CisJCQkJCQkJPC9yZXBvcnRQbHVnaW5zPgorCQkJCQkJPC9jb25maWd1cmF0aW9uPgorCQkJCQk8L3BsdWdpbj4KKwkJCQk8L3BsdWdpbnM+CisJCQk8L2J1aWxkPgorCQk8L3Byb2ZpbGU+CisJCTxwcm9maWxlPgorCQkJPGlkPm1hY29zeDwvaWQ+CisJCQk8YWN0aXZhdGlvbj4KKwkJCQk8b3M+CisJCQkJCTxmYW1pbHk+bWFjPC9mYW1pbHk+CisJCQkJPC9vcz4KKwkJCTwvYWN0aXZhdGlvbj4KKwkJCTxwcm9wZXJ0aWVzPgorCQkJCTx1aS50ZXN0LnZtYXJncz4tWHN0YXJ0T25GaXJzdFRocmVhZCAke2Vudi51aS50ZXN0fTwvdWkudGVzdC52bWFyZ3M+CisJCQk8L3Byb3BlcnRpZXM+CisJCTwvcHJvZmlsZT4KKwkJPHByb2ZpbGU+CisJCQk8aWQ+b3RoZXItb3M8L2lkPgorCQkJPGFjdGl2YXRpb24+CisJCQkJPG9zPgorCQkJCQk8ZmFtaWx5PiFtYWM8L2ZhbWlseT4KKwkJCQk8L29zPgorCQkJPC9hY3RpdmF0aW9uPgorCQkJPHByb3BlcnRpZXM+CisJCQkJPHVpLnRlc3Qudm1hcmdzPiR7ZW52LnVpLnRlc3R9PC91aS50ZXN0LnZtYXJncz4KKwkJCTwvcHJvcGVydGllcz4KKwkJPC9wcm9maWxlPgorCTwvcHJvZmlsZXM+Cis8L3Byb2plY3Q+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvcmVhZG1lLm1kIGIvcmVhZG1lLm1kCmluZGV4IDhkODg4YTguLjZkOWVlMjEgMTAwNjQ0Ci0tLSBhL3JlYWRtZS5tZAorKysgYi9yZWFkbWUubWQKQEAgLTEsMyArMSwzIEBACi0jI1JvYm90TUwNCi0NCisjI1JvYm90TUwKKwogVGhpcyBwcm9qZWN0cyBhaW1zIGF0IHByb3ZpZGluZyBhIG1vZGVsaW5nIGVudmlyb25tZW50IGZvciByb2JvdGljIGFwcGxpY2F0aW9ucyB3aXRoIFBhcHlydXMuClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvdGFyZ2V0cGxhdGZvcm0vLnByb2plY3QgYi90YXJnZXRwbGF0Zm9ybS8ucHJvamVjdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jOTYwMTg0Ci0tLSAvZGV2L251bGwKKysrIGIvdGFyZ2V0cGxhdGZvcm0vLnByb2plY3QKQEAgLTAsMCArMSwxNyBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxwcm9qZWN0RGVzY3JpcHRpb24+CisJPG5hbWU+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRhcmdldHBsYXRmb3JtPC9uYW1lPgorCTxjb21tZW50PjwvY29tbWVudD4KKwk8cHJvamVjdHM+CisJPC9wcm9qZWN0cz4KKwk8YnVpbGRTcGVjPgorCQk8YnVpbGRDb21tYW5kPgorCQkJPG5hbWU+b3JnLmVjbGlwc2UubTJlLmNvcmUubWF2ZW4yQnVpbGRlcjwvbmFtZT4KKwkJCTxhcmd1bWVudHM+CisJCQk8L2FyZ3VtZW50cz4KKwkJPC9idWlsZENvbW1hbmQ+CisJPC9idWlsZFNwZWM+CisJPG5hdHVyZXM+CisJCTxuYXR1cmU+b3JnLmVjbGlwc2UubTJlLmNvcmUubWF2ZW4yTmF0dXJlPC9uYXR1cmU+CisJPC9uYXR1cmVzPgorPC9wcm9qZWN0RGVzY3JpcHRpb24+CmRpZmYgLS1naXQgYS90YXJnZXRwbGF0Zm9ybS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuY29yZS5yZXNvdXJjZXMucHJlZnMgYi90YXJnZXRwbGF0Zm9ybS8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UuY29yZS5yZXNvdXJjZXMucHJlZnMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTlmMjZjMAotLS0gL2Rldi9udWxsCisrKyBiL3RhcmdldHBsYXRmb3JtLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5wcmVmcwpAQCAtMCwwICsxLDIgQEAKK2VjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCitlbmNvZGluZy88cHJvamVjdD49VVRGLTgKZGlmZiAtLWdpdCBhL3RhcmdldHBsYXRmb3JtLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5tMmUuY29yZS5wcmVmcyBiL3RhcmdldHBsYXRmb3JtLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5tMmUuY29yZS5wcmVmcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mODk3YTdmCi0tLSAvZGV2L251bGwKKysrIGIvdGFyZ2V0cGxhdGZvcm0vLnNldHRpbmdzL29yZy5lY2xpcHNlLm0yZS5jb3JlLnByZWZzCkBAIC0wLDAgKzEsNCBAQAorYWN0aXZlUHJvZmlsZXM9CitlY2xpcHNlLnByZWZlcmVuY2VzLnZlcnNpb249MQorcmVzb2x2ZVdvcmtzcGFjZVByb2plY3RzPXRydWUKK3ZlcnNpb249MQpkaWZmIC0tZ2l0IGEvdGFyZ2V0cGxhdGZvcm0vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRhcmdldHBsYXRmb3JtLm5lb24vLnByb2plY3QgYi90YXJnZXRwbGF0Zm9ybS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGFyZ2V0cGxhdGZvcm0ubmVvbi8ucHJvamVjdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lMzM2ODFjCi0tLSAvZGV2L251bGwKKysrIGIvdGFyZ2V0cGxhdGZvcm0vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRhcmdldHBsYXRmb3JtLm5lb24vLnByb2plY3QKQEAgLTAsMCArMSwxNyBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxwcm9qZWN0RGVzY3JpcHRpb24+CisJPG5hbWU+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRhcmdldHBsYXRmb3JtLm5lb248L25hbWU+CisJPGNvbW1lbnQ+PC9jb21tZW50PgorCTxwcm9qZWN0cz4KKwk8L3Byb2plY3RzPgorCTxidWlsZFNwZWM+CisJCTxidWlsZENvbW1hbmQ+CisJCQk8bmFtZT5vcmcuZWNsaXBzZS5tMmUuY29yZS5tYXZlbjJCdWlsZGVyPC9uYW1lPgorCQkJPGFyZ3VtZW50cz4KKwkJCTwvYXJndW1lbnRzPgorCQk8L2J1aWxkQ29tbWFuZD4KKwk8L2J1aWxkU3BlYz4KKwk8bmF0dXJlcz4KKwkJPG5hdHVyZT5vcmcuZWNsaXBzZS5tMmUuY29yZS5tYXZlbjJOYXR1cmU8L25hdHVyZT4KKwk8L25hdHVyZXM+Cis8L3Byb2plY3REZXNjcmlwdGlvbj4KZGlmZiAtLWdpdCBhL3RhcmdldHBsYXRmb3JtL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50YXJnZXRwbGF0Zm9ybS5uZW9uLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5wcmVmcyBiL3RhcmdldHBsYXRmb3JtL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50YXJnZXRwbGF0Zm9ybS5uZW9uLy5zZXR0aW5ncy9vcmcuZWNsaXBzZS5jb3JlLnJlc291cmNlcy5wcmVmcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45OWYyNmMwCi0tLSAvZGV2L251bGwKKysrIGIvdGFyZ2V0cGxhdGZvcm0vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRhcmdldHBsYXRmb3JtLm5lb24vLnNldHRpbmdzL29yZy5lY2xpcHNlLmNvcmUucmVzb3VyY2VzLnByZWZzCkBAIC0wLDAgKzEsMiBAQAorZWNsaXBzZS5wcmVmZXJlbmNlcy52ZXJzaW9uPTEKK2VuY29kaW5nLzxwcm9qZWN0Pj1VVEYtOApkaWZmIC0tZ2l0IGEvdGFyZ2V0cGxhdGZvcm0vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRhcmdldHBsYXRmb3JtLm5lb24vLnNldHRpbmdzL29yZy5lY2xpcHNlLm0yZS5jb3JlLnByZWZzIGIvdGFyZ2V0cGxhdGZvcm0vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRhcmdldHBsYXRmb3JtLm5lb24vLnNldHRpbmdzL29yZy5lY2xpcHNlLm0yZS5jb3JlLnByZWZzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY4OTdhN2YKLS0tIC9kZXYvbnVsbAorKysgYi90YXJnZXRwbGF0Zm9ybS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGFyZ2V0cGxhdGZvcm0ubmVvbi8uc2V0dGluZ3Mvb3JnLmVjbGlwc2UubTJlLmNvcmUucHJlZnMKQEAgLTAsMCArMSw0IEBACithY3RpdmVQcm9maWxlcz0KK2VjbGlwc2UucHJlZmVyZW5jZXMudmVyc2lvbj0xCityZXNvbHZlV29ya3NwYWNlUHJvamVjdHM9dHJ1ZQordmVyc2lvbj0xCmRpZmYgLS1naXQgYS90YXJnZXRwbGF0Zm9ybS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGFyZ2V0cGxhdGZvcm0ubmVvbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGFyZ2V0cGxhdGZvcm0ubmVvbi50YXJnZXQgYi90YXJnZXRwbGF0Zm9ybS9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGFyZ2V0cGxhdGZvcm0ubmVvbi9vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGFyZ2V0cGxhdGZvcm0ubmVvbi50YXJnZXQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTJkMzZhMwotLS0gL2Rldi9udWxsCisrKyBiL3RhcmdldHBsYXRmb3JtL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50YXJnZXRwbGF0Zm9ybS5uZW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50YXJnZXRwbGF0Zm9ybS5uZW9uLnRhcmdldApAQCAtMCwwICsxLDIwIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCIgc3RhbmRhbG9uZT0ibm8iPz4KKzw/cGRlIHZlcnNpb249IjMuOCI/Pjx0YXJnZXQgbmFtZT0iVHljaG8gVHV0b3JpYWwiIHNlcXVlbmNlTnVtYmVyPSIxNDQ0OTg3ODY3Ij4KKzxsb2NhdGlvbnM+Cis8bG9jYXRpb24gaW5jbHVkZUFsbFBsYXRmb3Jtcz0iZmFsc2UiIGluY2x1ZGVDb25maWd1cmVQaGFzZT0iZmFsc2UiIGluY2x1ZGVNb2RlPSJwbGFubmVyIiBpbmNsdWRlU291cmNlPSJ0cnVlIiB0eXBlPSJJbnN0YWxsYWJsZVVuaXQiPgorPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLnBsYXRmb3JtLmZlYXR1cmUuZ3JvdXAiIHZlcnNpb249IjQuNi4wLnYyMDE1MDkxNi0yMDAwIi8+Cis8dW5pdCBpZD0ib3JnLmVjbGlwc2UucmNwLmZlYXR1cmUuZ3JvdXAiIHZlcnNpb249IjQuNi4wLnYyMDE1MDkxNi0yMDAwIi8+Cis8dW5pdCBpZD0ib3JnLmVjbGlwc2UuamR0LmZlYXR1cmUuZ3JvdXAiIHZlcnNpb249IjMuMTIuMC52MjAxNTA5MTYtMjAwMCIvPgorPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLnBhcHlydXMuc2RrLmZlYXR1cmUuZmVhdHVyZS5ncm91cCIgdmVyc2lvbj0iMS4yLjAuMjAxNTA5MzAxMDAyIi8+Cis8dW5pdCBpZD0ib3JnLmVjbGlwc2UuZXF1aW5veC5wMi5kaXNjb3ZlcnkuZmVhdHVyZS5mZWF0dXJlLmdyb3VwIiB2ZXJzaW9uPSIxLjAuMzAwLnYyMDE1MDkwNy0yMTQ5Ii8+Cis8dW5pdCBpZD0ib3JnLmVjbGlwc2UuZXF1aW5veC5leGVjdXRhYmxlLmZlYXR1cmUuZ3JvdXAiIHZlcnNpb249IjMuNi4yMDAudjIwMTUwODMxLTE1NTkiLz4KKzx1bml0IGlkPSJvcmcuZWNsaXBzZS5hY2NlbGVvLmZlYXR1cmUuZ3JvdXAiIHZlcnNpb249IjMuNi4xLjIwMTUwOTMwMDYxOCIvPgorPCEtLXVuaXQgaWQ9Im9yZy5lY2xpcHNlLmVtZi5lZGl0LmZlYXR1cmUuZ3JvdXAiIHZlcnNpb249IjIuMTIuMC52MjAxNTA5MjgtMDk1MiIvLS0+Cis8dW5pdCBpZD0ib3JnLmVjbGlwc2UuZW1mLmZhY2V0LmNvbW1vbi5mZWF0dXJlLmZlYXR1cmUuZ3JvdXAiIHZlcnNpb249IjEuMS4wLjIwMTUwOTI5MTg0NyIvPgorPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmVtZi5mYWNldC5zZGsuZmVhdHVyZS5mZWF0dXJlLmdyb3VwIiB2ZXJzaW9uPSIxLjEuMC4yMDE1MDkyOTE4NDciLz4KKzx1bml0IGlkPSJvcmcuZWNsaXBzZS5lbWYuZmFjZXQudXRpbC5mZWF0dXJlLmZlYXR1cmUuZ3JvdXAiIHZlcnNpb249IjEuMS4wLjIwMTUwOTI5MTg0NyIvPgorPHVuaXQgaWQ9Im9yZy5lY2xpcHNlLmVtZi5mYWNldC53aWRnZXRzLmZlYXR1cmUuZmVhdHVyZS5ncm91cCIgdmVyc2lvbj0iMS4xLjAuMjAxNTA5MjkxODQ3Ii8+Cis8cmVwb3NpdG9yeSBsb2NhdGlvbj0iaHR0cDovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL3JlbGVhc2VzL25lb24vIi8+Cis8L2xvY2F0aW9uPgorPC9sb2NhdGlvbnM+Cis8L3RhcmdldD4KZGlmZiAtLWdpdCBhL3RhcmdldHBsYXRmb3JtL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50YXJnZXRwbGF0Zm9ybS5uZW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50YXJnZXRwbGF0Zm9ybS5uZW9uLnRwZCBiL3RhcmdldHBsYXRmb3JtL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50YXJnZXRwbGF0Zm9ybS5uZW9uL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50YXJnZXRwbGF0Zm9ybS5uZW9uLnRwZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hZWM0YmU0Ci0tLSAvZGV2L251bGwKKysrIGIvdGFyZ2V0cGxhdGZvcm0vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRhcmdldHBsYXRmb3JtLm5lb24vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRhcmdldHBsYXRmb3JtLm5lb24udHBkCkBAIC0wLDAgKzEsMTIgQEAKK3RhcmdldCAiVHljaG8gVHV0b3JpYWwiIHdpdGggc291cmNlIHJlcXVpcmVtZW50cworCitsb2NhdGlvbiAiaHR0cDovL2Rvd25sb2FkLmVjbGlwc2Uub3JnL3JlbGVhc2VzL25lb24vIiBlY2xpcHNlLW5lb24geworIG9yZy5lY2xpcHNlLnBsYXRmb3JtLmZlYXR1cmUuZ3JvdXAKKyBvcmcuZWNsaXBzZS5yY3AuZmVhdHVyZS5ncm91cAorIG9yZy5lY2xpcHNlLmpkdC5mZWF0dXJlLmdyb3VwCisgb3JnLmVjbGlwc2UucGFweXJ1cy5zZGsuZmVhdHVyZS5mZWF0dXJlLmdyb3VwCisgb3JnLmVjbGlwc2UuZXF1aW5veC5wMi5kaXNjb3ZlcnkuZmVhdHVyZS5mZWF0dXJlLmdyb3VwCisgb3JnLmVjbGlwc2UuZXF1aW5veC5leGVjdXRhYmxlLmZlYXR1cmUuZ3JvdXAKKyByZy5lY2xpcHNlLmFjY2VsZW8uZmVhdHVyZS5ncm91cAorIG9yZy5lY2xpcHNlLmVtZi5mZWF0dXJlLmdyb3VwCit9ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvdGFyZ2V0cGxhdGZvcm0vb3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRhcmdldHBsYXRmb3JtLm5lb24vcG9tLnhtbCBiL3RhcmdldHBsYXRmb3JtL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50YXJnZXRwbGF0Zm9ybS5uZW9uL3BvbS54bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzAyNTY3OQotLS0gL2Rldi9udWxsCisrKyBiL3RhcmdldHBsYXRmb3JtL29yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50YXJnZXRwbGF0Zm9ybS5uZW9uL3BvbS54bWwKQEAgLTAsMCArMSwxMyBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzxwcm9qZWN0IHhtbG5zPSJodHRwOi8vbWF2ZW4uYXBhY2hlLm9yZy9QT00vNC4wLjAiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhzaTpzY2hlbWFMb2NhdGlvbj0iaHR0cDovL21hdmVuLmFwYWNoZS5vcmcvUE9NLzQuMC4wIGh0dHA6Ly9tYXZlbi5hcGFjaGUub3JnL3hzZC9tYXZlbi00LjAuMC54c2QiPgorCTxtb2RlbFZlcnNpb24+NC4wLjA8L21vZGVsVmVyc2lvbj4KKwk8cGFyZW50PgorCQk8YXJ0aWZhY3RJZD5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWwudGFyZ2V0cGxhdGZvcm08L2FydGlmYWN0SWQ+CisJCTxncm91cElkPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbDwvZ3JvdXBJZD4KKwkJPHZlcnNpb24+MS4yLjAtU05BUFNIT1Q8L3ZlcnNpb24+CisJPC9wYXJlbnQ+CQorCTxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50YXJnZXRwbGF0Zm9ybS5uZW9uPC9hcnRpZmFjdElkPgorCTxwYWNrYWdpbmc+ZWNsaXBzZS10YXJnZXQtZGVmaW5pdGlvbjwvcGFja2FnaW5nPgorCTxuYW1lPlJvYm90bWwgTmVvbiBUYXJnZXQgRGVmaW5pdGlvbjwvbmFtZT4KKwk8ZGVzY3JpcHRpb24+VGhpcyBwbHVnLWluIGNvbnRhaW5zIHRoZSB0YXJnZXQgZGVmaW5pdGlvbiBmb3IgUGFweXJ1cyByb2JvdG1sIGluIE5lb248L2Rlc2NyaXB0aW9uPgorPC9wcm9qZWN0PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3RhcmdldHBsYXRmb3JtL3BvbS54bWwgYi90YXJnZXRwbGF0Zm9ybS9wb20ueG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQwN2QyN2QKLS0tIC9kZXYvbnVsbAorKysgYi90YXJnZXRwbGF0Zm9ybS9wb20ueG1sCkBAIC0wLDAgKzEsMzAgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8cHJvamVjdCB4bWxucz0iaHR0cDovL21hdmVuLmFwYWNoZS5vcmcvUE9NLzQuMC4wIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIgorCXhzaTpzY2hlbWFMb2NhdGlvbj0iaHR0cDovL21hdmVuLmFwYWNoZS5vcmcvUE9NLzQuMC4wIGh0dHA6Ly9tYXZlbi5hcGFjaGUub3JnL3hzZC9tYXZlbi00LjAuMC54c2QiPgorCTxtb2RlbFZlcnNpb24+NC4wLjA8L21vZGVsVmVyc2lvbj4KKwk8cGFyZW50PgorCQk8Z3JvdXBJZD5vcmcuZWNsaXBzZS5wYXB5cnVzLnJvYm90bWw8L2dyb3VwSWQ+CisJCTxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC5wYXJlbnQ8L2FydGlmYWN0SWQ+CisJCTx2ZXJzaW9uPjEuMi4wLVNOQVBTSE9UPC92ZXJzaW9uPgorCTwvcGFyZW50PgorCTxhcnRpZmFjdElkPm9yZy5lY2xpcHNlLnBhcHlydXMucm9ib3RtbC50YXJnZXRwbGF0Zm9ybTwvYXJ0aWZhY3RJZD4KKwk8cGFja2FnaW5nPnBvbTwvcGFja2FnaW5nPgorCTxuYW1lPlJvYm90TUwgVGFyZ2V0IFBsYXRmb3JtPC9uYW1lPgorCTxkZXNjcmlwdGlvbj5UaGlzIG1vZHVsZSBjb250YWlucyB0aGUgZGlmZmVyZW50IHRhcmdldCBwbGF0Zm9ybSBkZWZpbml0aW9uczwvZGVzY3JpcHRpb24+CisJPHByb2ZpbGVzPgorCQk8cHJvZmlsZT4KKwkJCTxpZD5tYXJzPC9pZD4KKwkJCTxhY3RpdmF0aW9uPgorCQkJCTxhY3RpdmVCeURlZmF1bHQ+dHJ1ZTwvYWN0aXZlQnlEZWZhdWx0PgorCQkJCTxwcm9wZXJ0eT4KKwkJCQkJPG5hbWU+ZWNsaXBzZS5yZWxlYXNlPC9uYW1lPgorCQkJCQk8dmFsdWU+bmVvbjwvdmFsdWU+CisJCQkJPC9wcm9wZXJ0eT4KKwkJCTwvYWN0aXZhdGlvbj4KKwkJCTxtb2R1bGVzPgorCQkJCTxtb2R1bGU+b3JnLmVjbGlwc2UucGFweXJ1cy5yb2JvdG1sLnRhcmdldHBsYXRmb3JtLm5lb248L21vZHVsZT4KKwkJCTwvbW9kdWxlcz4KKwkJPC9wcm9maWxlPgorCTwvcHJvZmlsZXM+CisKKzwvcHJvamVjdD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS90YXJnZXRwbGF0Zm9ybS9zcmMvc2l0ZS94ZG9jL2hvbWUueG1sIGIvdGFyZ2V0cGxhdGZvcm0vc3JjL3NpdGUveGRvYy9ob21lLnhtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jZGZlMzgxCi0tLSAvZGV2L251bGwKKysrIGIvdGFyZ2V0cGxhdGZvcm0vc3JjL3NpdGUveGRvYy9ob21lLnhtbApAQCAtMCwwICsxLDE2IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPGRvY3VtZW50IHhtbG5zPSJodHRwOi8vbWF2ZW4uYXBhY2hlLm9yZy9YRE9DLzIuMCIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIKKwl4c2k6c2NoZW1hTG9jYXRpb249Imh0dHA6Ly9tYXZlbi5hcGFjaGUub3JnL1hET0MvMi4wIGh0dHA6Ly9tYXZlbi5hcGFjaGUub3JnL3hzZC94ZG9jLTIuMC54c2QiPgorCisJPHByb3BlcnRpZXM+CisJCTx0aXRsZT5TeXNNTCBUYXJnZXQ8L3RpdGxlPgorCTwvcHJvcGVydGllcz4KKworCTxib2R5PgorCQk8c2VjdGlvbiBuYW1lPSJHZW5lcmF0ZSB0aGUgbGFzdCB0YXJnZXQgcGxhdGZvcm0gY29uZmlndXJhdGlvbiI+CisJCQk8cD5Gb2xsb3cgdGhlIHR1dG9yaWFsIDogPGEgaHJlZj0iaHR0cDovL2NvZGVhbmRtZS5ibG9nc3BvdC5mci8yMDEyLzEyL3R5Y2hvLWJ1aWxkLTgtdXNpbmctdGFyZ2V0LXBsYXRmb3JtLmh0bWw/bT0xIj5odHRwOi8vY29kZWFuZG1lLmJsb2dzcG90LmZyLzIwMTIvMTIvdHljaG8tYnVpbGQtOC11c2luZy10YXJnZXQtcGxhdGZvcm0uaHRtbD9tPTE8L2E+PC9wPgorCQk8L3NlY3Rpb24+CisKKwk8L2JvZHk+CisKKzwvZG9jdW1lbnQ+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQo=